From ef253190c7d65fa606cf6e5d50e423207a164251 Mon Sep 17 00:00:00 2001 From: Hakase Date: Wed, 23 May 2018 23:52:41 +0900 Subject: [PATCH] Update - OpenSSL 1.1.1-pre7-dev --- CHANGES | 172 +- CONTRIBUTING | 68 +- Configurations/00-base-templates.conf | 9 +- Configurations/10-main.conf | 123 +- Configurations/15-android.conf | 82 +- Configurations/50-win-onecore.conf | 22 +- .../{90-team.conf => 90-team.norelease.conf} | 6 - Configurations/README | 8 +- Configurations/common0.tmpl | 31 + Configurations/descrip.mms.tmpl | 28 +- Configurations/dist.conf | 12 + Configurations/unix-Makefile.tmpl | 76 +- Configurations/windows-makefile.tmpl | 77 +- Configure | 198 +- INSTALL | 102 +- NEWS | 5 +- NOTES.ANDROID | 68 + NOTES.WIN | 135 +- README | 2 +- README.ECC | 61 - apps/CA.pl.in | 2 +- apps/apps.c | 121 +- apps/apps.h | 16 +- apps/asn1pars.c | 20 +- apps/build.info | 5 + apps/ca.c | 288 +- apps/ciphers.c | 14 +- apps/dgst.c | 15 +- apps/dhparam.c | 9 +- apps/dsaparam.c | 3 + apps/ecparam.c | 6 + apps/ocsp.c | 29 +- apps/openssl.c | 9 +- apps/opt.c | 47 +- apps/pkeyutl.c | 35 +- apps/progs.pl | 11 +- apps/rehash.c | 18 +- apps/req.c | 108 +- apps/s_apps.h | 10 +- apps/s_client.c | 59 +- apps/s_server.c | 57 +- apps/s_socket.c | 73 +- apps/s_time.c | 106 +- apps/speed.c | 404 +- apps/spkac.c | 2 +- apps/tsget.in | 2 +- apps/verify.c | 1 + apps/x509.c | 12 +- appveyor.yml | 5 +- config | 40 +- crypto/aes/asm/aes-armv4.pl | 2 +- crypto/aes/asm/aes-mips.pl | 4 +- crypto/aes/asm/aesp8-ppc.pl | 1 + crypto/aes/asm/bsaes-armv7.pl | 2 +- crypto/arm_arch.h | 2 +- crypto/armv4cpuid.pl | 4 +- crypto/asn1/a_object.c | 7 +- crypto/asn1/a_strex.c | 54 +- crypto/asn1/a_strnid.c | 7 +- crypto/asn1/ameth_lib.c | 17 + crypto/asn1/asn1_err.c | 18 +- crypto/asn1/asn_mime.c | 8 +- crypto/asn1/asn_moid.c | 7 +- crypto/asn1/bio_asn1.c | 7 +- crypto/asn1/bio_ndef.c | 12 +- crypto/asn1/p5_scrypt.c | 4 +- crypto/asn1/standard_methods.h | 2 +- crypto/asn1/tasn_dec.c | 50 +- crypto/asn1/tasn_enc.c | 10 +- crypto/asn1/tasn_new.c | 7 +- crypto/asn1/tasn_utl.c | 7 +- crypto/asn1/x_int64.c | 12 +- crypto/async/async.c | 80 +- crypto/async/async_err.c | 4 +- crypto/async/async_wait.c | 7 +- crypto/bio/b_addr.c | 14 +- crypto/bio/b_print.c | 7 +- crypto/bio/b_sock.c | 4 +- crypto/bio/bf_lbuf.c | 6 +- crypto/bio/bf_nbio.c | 10 +- crypto/bio/bio_err.c | 8 + crypto/bio/bio_lib.c | 22 +- crypto/bio/bio_meth.c | 22 +- crypto/bio/bss_acpt.c | 5 +- crypto/bio/bss_conn.c | 7 +- crypto/bio/bss_dgram.c | 5 +- crypto/bio/bss_log.c | 3 + crypto/bio/bss_mem.c | 2 + crypto/bn/asm/alpha-mont.pl | 9 +- crypto/bn/asm/armv4-mont.pl | 15 +- crypto/bn/asm/ia64-mont.pl | 18 +- crypto/bn/asm/mips-mont.pl | 12 +- crypto/bn/asm/parisc-mont.pl | 26 +- crypto/bn/asm/ppc-mont.pl | 13 +- crypto/bn/asm/ppc.pl | 4 +- crypto/bn/asm/ppc64-mont.pl | 41 +- crypto/bn/asm/s390x-mont.pl | 14 +- crypto/bn/asm/sparct4-mont.pl | 24 +- crypto/bn/asm/sparcv9-mont.pl | 10 +- crypto/bn/asm/via-mont.pl | 13 +- crypto/bn/asm/vis3-mont.pl | 16 +- crypto/bn/asm/x86-mont.pl | 18 +- crypto/bn/asm/x86_64-mont.pl | 77 +- crypto/bn/asm/x86_64-mont5.pl | 19 +- crypto/bn/bn_add.c | 138 +- crypto/bn/bn_blind.c | 5 +- crypto/bn/bn_ctx.c | 16 +- crypto/bn/bn_err.c | 6 +- crypto/bn/bn_gcd.c | 9 +- crypto/bn/bn_gf2m.c | 164 +- crypto/bn/bn_lib.c | 39 +- crypto/bn/bn_mont.c | 27 +- crypto/bn/bn_prime.c | 7 +- crypto/bn/bn_rand.c | 4 +- crypto/bn/bn_recp.c | 11 +- crypto/bn/bn_sqrt.c | 4 +- crypto/bn/rsaz_exp.h | 2 +- crypto/buffer/buffer.c | 3 +- crypto/build.info | 1 - crypto/chacha/asm/chacha-ppc.pl | 1 + crypto/cmac/cmac.c | 8 +- crypto/cms/cms_enc.c | 7 +- crypto/cms/cms_env.c | 1 + crypto/cms/cms_err.c | 5 +- crypto/cms/cms_pwri.c | 7 +- crypto/cms/cms_smime.c | 1 + crypto/comp/comp_err.c | 3 +- crypto/comp/comp_lib.c | 8 +- crypto/conf/build.info | 2 +- crypto/conf/conf_api.c | 4 +- crypto/conf/conf_def.c | 35 +- crypto/conf/conf_def.h | 107 +- crypto/conf/conf_err.c | 9 + crypto/conf/conf_lcl.h | 11 + crypto/conf/conf_mall.c | 4 +- crypto/conf/conf_mod.c | 15 +- crypto/conf/conf_ssl.c | 178 + crypto/conf/keysets.pl | 189 +- crypto/cpt_err.c | 19 +- crypto/cryptlib.c | 45 +- crypto/ct/ct_log.c | 2 +- crypto/des/rand_key.c | 4 +- crypto/dh/dh_err.c | 3 +- crypto/dh/dh_lib.c | 25 + crypto/dh/dh_meth.c | 4 +- crypto/dh/dh_pmeth.c | 7 +- crypto/dsa/dsa_err.c | 3 +- crypto/dsa/dsa_gen.c | 15 +- crypto/dsa/dsa_meth.c | 4 +- crypto/dsa/dsa_pmeth.c | 10 +- crypto/dso/dso_dlfcn.c | 83 +- crypto/ec/asm/ecp_nistz256-armv4.pl | 4 +- crypto/ec/build.info | 2 +- crypto/ec/curve448/field.h | 2 +- crypto/ec/ec2_mult.c | 404 - crypto/ec/ec2_smpl.c | 11 +- crypto/ec/ec_curve.c | 45 +- crypto/ec/ec_err.c | 8 + crypto/ec/ec_key.c | 8 +- crypto/ec/ec_lcl.h | 25 +- crypto/ec/ec_lib.c | 11 +- crypto/ec/ec_mult.c | 245 +- crypto/ec/ec_oct.c | 8 +- crypto/ec/ec_pmeth.c | 132 +- crypto/ec/ec_print.c | 8 +- crypto/ec/ecdh_ossl.c | 11 +- crypto/ec/ecdsa_ossl.c | 17 - crypto/ec/ecp_nistp224.c | 32 +- crypto/ec/ecp_nistp256.c | 2 +- crypto/ec/ecp_nistp521.c | 2 +- crypto/ec/ecx_meth.c | 140 +- crypto/engine/eng_err.c | 5 +- crypto/engine/eng_lib.c | 17 +- crypto/engine/eng_list.c | 3 +- crypto/engine/eng_openssl.c | 7 +- crypto/engine/eng_table.c | 2 +- crypto/engine/tb_cipher.c | 2 +- crypto/engine/tb_dh.c | 2 +- crypto/engine/tb_digest.c | 2 +- crypto/engine/tb_dsa.c | 2 +- crypto/engine/tb_eckey.c | 2 +- crypto/engine/tb_pkmeth.c | 2 +- crypto/engine/tb_rand.c | 2 +- crypto/engine/tb_rsa.c | 2 +- crypto/err/err.c | 104 +- crypto/err/openssl.ec | 1 + crypto/err/openssl.txt | 201 +- crypto/evp/bio_b64.c | 7 +- crypto/evp/bio_enc.c | 7 +- crypto/evp/bio_ok.c | 7 +- crypto/evp/e_aes.c | 358 +- crypto/evp/e_aes_cbc_hmac_sha1.c | 15 +- crypto/evp/e_aes_cbc_hmac_sha256.c | 15 +- crypto/evp/e_aria.c | 25 +- crypto/evp/e_des.c | 10 +- crypto/evp/e_des3.c | 15 +- crypto/evp/encode.c | 152 +- crypto/evp/evp_enc.c | 18 +- crypto/evp/evp_err.c | 16 + crypto/evp/evp_locl.h | 5 +- crypto/evp/p_lib.c | 112 +- crypto/evp/p_seal.c | 13 +- crypto/evp/pbe_scrypt.c | 25 +- crypto/evp/pmeth_lib.c | 53 +- crypto/ex_data.c | 3 +- crypto/hmac/hm_ameth.c | 39 +- crypto/hmac/hm_pmeth.c | 8 +- crypto/include/internal/asn1_int.h | 5 +- crypto/include/internal/async.h | 3 +- crypto/include/internal/cryptlib_int.h | 5 +- crypto/include/internal/dso_conf.h.in | 19 +- crypto/include/internal/err_int.h | 4 +- crypto/include/internal/evp_int.h | 9 + crypto/include/internal/rand_int.h | 96 +- crypto/init.c | 108 +- crypto/kdf/hkdf.c | 7 +- crypto/kdf/kdf_err.c | 8 +- crypto/kdf/scrypt.c | 10 +- crypto/kdf/tls1_prf.c | 14 +- crypto/lhash/lhash.c | 11 +- crypto/mem_sec.c | 8 +- crypto/modes/asm/ghashp8-ppc.pl | 1 + crypto/modes/asm/ghashv8-armx.pl | 4 +- crypto/modes/ocb128.c | 13 +- crypto/o_fopen.c | 15 +- crypto/o_time.c | 6 +- crypto/objects/obj_dat.c | 8 +- crypto/objects/obj_dat.h | 809 +- crypto/objects/obj_err.c | 4 +- crypto/objects/obj_mac.num | 3 + crypto/objects/obj_xref.c | 8 +- crypto/objects/objects.txt | 22 +- crypto/pariscid.pl | 4 +- crypto/pem/pem_err.c | 3 +- crypto/pem/pem_lib.c | 62 +- crypto/pem/pem_pk8.c | 2 +- crypto/pem/pem_pkey.c | 6 +- crypto/pem/pvkfmt.c | 29 +- crypto/pkcs12/p12_utl.c | 23 +- crypto/pkcs12/pk12err.c | 8 +- crypto/pkcs7/pk7_doit.c | 2 +- crypto/poly1305/asm/poly1305-armv4.pl | 5 +- crypto/poly1305/asm/poly1305-ppc.pl | 1 + crypto/poly1305/asm/poly1305-ppcfp.pl | 1 + crypto/poly1305/poly1305.c | 2 +- crypto/poly1305/poly1305_ameth.c | 38 +- crypto/poly1305/poly1305_ieee754.c | 75 +- crypto/poly1305/poly1305_pmeth.c | 8 +- crypto/ppccap.c | 14 +- crypto/rand/drbg_ctr.c | 199 +- crypto/rand/drbg_lib.c | 362 +- crypto/rand/rand_egd.c | 1 - crypto/rand/rand_err.c | 26 +- crypto/rand/rand_lcl.h | 64 +- crypto/rand/rand_lib.c | 400 +- crypto/rand/rand_unix.c | 321 +- crypto/rand/rand_vms.c | 539 +- crypto/rand/rand_win.c | 66 +- crypto/rand/randfile.c | 67 +- crypto/rc4/asm/rc4-c64xplus.pl | 2 +- crypto/rsa/rsa_ameth.c | 2 +- crypto/rsa/rsa_err.c | 5 +- crypto/rsa/rsa_gen.c | 1 + crypto/rsa/rsa_meth.c | 4 +- crypto/rsa/rsa_mp.c | 6 +- crypto/rsa/rsa_pmeth.c | 7 +- crypto/s390x_arch.h | 4 + crypto/s390xcpuid.pl | 42 + crypto/sha/asm/keccak1600-armv4.pl | 25 +- crypto/sha/asm/keccak1600-armv8.pl | 36 +- crypto/sha/asm/keccak1600-avx2.pl | 2 +- crypto/sha/asm/keccak1600-avx512.pl | 2 +- crypto/sha/asm/keccak1600-avx512vl.pl | 2 +- crypto/sha/asm/keccak1600-c64x.pl | 2 +- crypto/sha/asm/keccak1600-ppc64.pl | 1 + crypto/sha/asm/keccak1600-x86_64.pl | 10 +- crypto/sha/asm/keccak1600p8-ppc.pl | 2 +- crypto/sha/asm/sha1-mips.pl | 4 +- crypto/sha/asm/sha512-mips.pl | 4 +- crypto/sha/asm/sha512p8-ppc.pl | 6 +- crypto/sha/build.info | 8 +- crypto/siphash/siphash_ameth.c | 38 +- crypto/siphash/siphash_pmeth.c | 8 +- crypto/sm2/build.info | 6 + crypto/sm2/sm2_crypt.c | 335 + crypto/sm2/sm2_err.c | 129 + crypto/sm2/sm2_sign.c | 322 + crypto/sm2/sm2_za.c | 132 + crypto/srp/srp_vfy.c | 147 +- crypto/stack/stack.c | 15 +- crypto/store/store_init.c | 2 +- crypto/threads_none.c | 9 +- crypto/threads_pthread.c | 16 +- crypto/threads_win.c | 9 +- crypto/ts/ts_rsp_sign.c | 12 +- crypto/txt_db/txt_db.c | 3 +- crypto/ui/ui_err.c | 3 +- crypto/ui/ui_lib.c | 7 +- crypto/ui/ui_openssl.c | 7 +- crypto/x509/by_dir.c | 50 +- crypto/x509/by_file.c | 4 +- crypto/x509/x509_cmp.c | 2 +- crypto/x509/x509_err.c | 14 +- crypto/x509/x509_lu.c | 75 +- crypto/x509/x509_vfy.c | 5 +- crypto/x509/x509_vpm.c | 16 +- crypto/x509/x509name.c | 10 +- crypto/x509/x509type.c | 2 +- crypto/x509/x_crl.c | 11 +- crypto/x509/x_name.c | 32 +- crypto/x509/x_pubkey.c | 4 +- crypto/x509/x_x509.c | 8 +- crypto/x509v3/pcy_cache.c | 28 +- crypto/x509v3/pcy_data.c | 8 +- crypto/x509v3/pcy_node.c | 23 +- crypto/x509v3/pcy_tree.c | 7 +- crypto/x509v3/v3_cpols.c | 4 +- crypto/x509v3/v3_purp.c | 24 +- crypto/x509v3/v3err.c | 9 +- doc/fingerprints.txt | 5 +- doc/man1/ca.pod | 9 +- doc/man1/ciphers.pod | 58 +- doc/man1/cms.pod | 16 +- doc/man1/dgst.pod | 6 +- doc/man1/ecparam.pod | 6 +- doc/man1/genpkey.pod | 189 +- doc/man1/openssl.pod | 57 +- doc/man1/pkeyutl.pod | 2 +- doc/man1/rehash.pod | 8 +- doc/man1/s_client.pod | 35 +- doc/man1/s_server.pod | 28 +- doc/man1/s_time.pod | 21 +- doc/man1/speed.pod | 6 +- doc/man1/x509.pod | 6 +- doc/man3/ASN1_TIME_set.pod | 2 +- doc/man3/BIO_meth_new.pod | 20 +- doc/man3/BIO_s_accept.pod | 20 +- doc/man3/BIO_s_connect.pod | 53 +- doc/man3/BIO_set_callback.pod | 18 +- doc/man3/BN_add.pod | 4 +- doc/man3/CMS_encrypt.pod | 5 +- doc/man3/CMS_get0_SignerInfos.pod | 2 +- doc/man3/CMS_get1_ReceiptRequest.pod | 2 +- doc/man3/CRYPTO_get_ex_new_index.pod | 20 +- doc/man3/DH_generate_parameters.pod | 2 +- doc/man3/DH_get0_pqg.pod | 20 +- doc/man3/DH_meth_new.pod | 4 +- doc/man3/DSA_meth_new.pod | 4 +- doc/man3/EC_POINT_add.pod | 8 +- doc/man3/EC_POINT_new.pod | 5 +- doc/man3/ENGINE_add.pod | 1 + doc/man3/EVP_CIPHER_meth_new.pod | 2 +- doc/man3/EVP_DigestSignInit.pod | 53 +- doc/man3/EVP_DigestVerifyInit.pod | 4 +- doc/man3/EVP_EncryptInit.pod | 15 - doc/man3/EVP_PKEY_ASN1_METHOD.pod | 28 +- doc/man3/EVP_PKEY_CTX_ctrl.pod | 43 +- doc/man3/EVP_PKEY_CTX_set1_pbe_pass.pod | 70 + doc/man3/EVP_PKEY_CTX_set_hkdf_md.pod | 2 +- .../EVP_PKEY_CTX_set_rsa_pss_keygen_md.pod | 94 + doc/man3/EVP_PKEY_CTX_set_scrypt_N.pod | 86 + doc/man3/EVP_PKEY_meth_new.pod | 36 +- doc/man3/EVP_PKEY_new.pod | 51 +- doc/man3/EVP_SignInit.pod | 9 +- doc/man3/EVP_VerifyInit.pod | 9 +- doc/man3/EVP_md5.pod | 2 +- doc/man3/OBJ_nid2obj.pod | 2 +- doc/man3/OPENSSL_VERSION_NUMBER.pod | 5 - doc/man3/OPENSSL_config.pod | 13 +- doc/man3/OPENSSL_fork_prepare.pod | 2 +- doc/man3/OPENSSL_ia32cap.pod | 4 +- doc/man3/OPENSSL_init_crypto.pod | 22 +- doc/man3/OPENSSL_malloc.pod | 14 +- doc/man3/OSSL_STORE_open.pod | 13 +- doc/man3/PEM_bytes_read_bio.pod | 7 +- doc/man3/PEM_read.pod | 7 +- doc/man3/PEM_read_CMS.pod | 9 +- doc/man3/PEM_read_bio_PrivateKey.pod | 7 +- doc/man3/PKCS12_create.pod | 7 +- doc/man3/PKCS12_newpass.pod | 3 +- doc/man3/PKCS12_parse.pod | 3 +- doc/man3/PKCS5_PBKDF2_HMAC.pod | 6 +- doc/man3/RAND_DRBG_generate.pod | 88 + doc/man3/RAND_DRBG_get0_master.pod | 80 + doc/man3/RAND_DRBG_new.pod | 127 + doc/man3/RAND_DRBG_reseed.pod | 111 + doc/man3/RAND_DRBG_set_callbacks.pod | 147 + doc/man3/RAND_DRBG_set_ex_data.pod | 68 + doc/man3/RAND_add.pod | 119 +- doc/man3/RAND_bytes.pod | 12 +- doc/man3/RAND_cleanup.pod | 4 + doc/man3/RAND_egd.pod | 4 +- doc/man3/RAND_load_file.pod | 16 +- doc/man3/RAND_set_rand_method.pod | 9 +- doc/man3/RSA_meth_new.pod | 4 +- doc/man3/SMIME_read_PKCS7.pod | 2 +- doc/man3/SSL_CONF_cmd.pod | 29 +- doc/man3/SSL_CTX_set_cipher_list.pod | 52 +- doc/man3/SSL_CTX_set_info_callback.pod | 30 +- doc/man3/SSL_CTX_set_num_tickets.pod | 68 + doc/man3/SSL_CTX_set_options.pod | 2 + doc/man3/SSL_CTX_set_psk_client_callback.pod | 2 +- doc/man3/SSL_CTX_set_session_ticket_cb.pod | 149 +- doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod | 4 +- doc/man3/SSL_CTX_set_tlsext_use_srtp.pod | 2 +- doc/man3/SSL_CTX_use_certificate.pod | 11 +- doc/man3/SSL_CTX_use_psk_identity_hint.pod | 2 +- doc/man3/SSL_connect.pod | 15 + doc/man3/SSL_get_ciphers.pod | 24 +- doc/man3/SSL_get_error.pod | 11 +- doc/man3/SSL_get_session.pod | 7 +- doc/man3/SSL_get_version.pod | 15 +- doc/man3/SSL_read_early_data.pod | 59 +- doc/man3/SSL_shutdown.pod | 65 +- doc/man3/UI_STRING.pod | 2 +- doc/man3/X509_NAME_get_index_by_NID.pod | 2 +- doc/man3/X509_STORE_add_cert.pod | 2 +- doc/man3/X509_VERIFY_PARAM_set_flags.pod | 12 +- doc/man3/X509_cmp_time.pod | 2 +- doc/man3/d2i_PKCS8PrivateKey_bio.pod | 7 +- doc/man3/d2i_PrivateKey.pod | 4 +- doc/man5/config.pod | 40 +- doc/man7/Ed25519.pod | 10 + doc/man7/RAND.pod | 78 + doc/man7/RAND_DRBG.pod | 301 + doc/man7/RSA-PSS.pod | 68 +- doc/man7/X25519.pod | 10 + doc/man7/passphrase-encoding.pod | 182 + doc/man7/scrypt.pod | 61 +- doc/man7/ssl.pod | 8 +- engines/asm/e_padlock-x86.pl | 13 +- engines/asm/e_padlock-x86_64.pl | 13 +- engines/e_capi.c | 18 +- engines/e_ossltest.c | 2 +- .../eba5151118ff75ce6a86438a3a6f819c41d8be40 | Bin 0 -> 73846 bytes fuzz/oids.txt | 5 + fuzz/test-corpus.c | 85 +- include/internal/sockets.h | 4 - include/internal/sslconf.h | 20 + include/openssl/asn1err.h | 14 + include/openssl/asyncerr.h | 1 + include/openssl/bio.h | 42 +- include/openssl/bioerr.h | 8 + include/openssl/bnerr.h | 4 + include/openssl/cmserr.h | 2 + include/openssl/comperr.h | 1 + include/openssl/conferr.h | 6 + include/openssl/crypto.h | 3 +- include/openssl/cryptoerr.h | 12 + include/openssl/dh.h | 7 +- include/openssl/dherr.h | 1 + include/openssl/dsa.h | 3 +- include/openssl/dsaerr.h | 1 + include/openssl/ecerr.h | 8 + include/openssl/engineerr.h | 2 + include/openssl/err.h | 5 +- include/openssl/evp.h | 55 +- include/openssl/evperr.h | 13 + include/openssl/kdferr.h | 5 + include/openssl/obj_mac.h | 62 +- include/openssl/objectserr.h | 2 + include/openssl/opensslv.h | 9 +- include/openssl/ossl_typ.h | 1 - include/openssl/pem.h | 3 +- include/openssl/pemerr.h | 1 + include/openssl/pkcs12err.h | 4 + include/openssl/rand.h | 3 - .../{internal/rand.h => openssl/rand_drbg.h} | 79 +- include/openssl/randerr.h | 8 + include/openssl/rsa.h | 2 +- include/openssl/rsaerr.h | 2 + include/openssl/sm2.h | 86 + include/openssl/sm2err.h | 95 + include/openssl/ssl.h | 373 +- include/openssl/sslerr.h | 18 +- include/openssl/tls1.h | 22 +- include/openssl/uierr.h | 1 + include/openssl/x509_vfy.h | 1 + include/openssl/x509err.h | 9 + include/openssl/x509v3err.h | 5 + ms/uplink-x86.pl | 4 +- ssl/packet.c | 13 +- ssl/pqueue.c | 14 +- ssl/record/rec_layer_d1.c | 60 +- ssl/record/rec_layer_s3.c | 4 +- ssl/record/record_locl.h | 3 +- ssl/record/ssl3_record.c | 45 +- ssl/record/ssl3_record_tls13.c | 33 +- ssl/s3_enc.c | 5 +- ssl/s3_lib.c | 386 +- ssl/ssl_asn1.c | 2 +- ssl/ssl_cert.c | 1 - ssl/ssl_cert_table.h | 2 +- ssl/ssl_ciph.c | 350 +- ssl/ssl_conf.c | 36 +- ssl/ssl_err.c | 28 +- ssl/ssl_init.c | 14 +- ssl/ssl_lib.c | 289 +- ssl/ssl_locl.h | 105 +- ssl/ssl_mcnf.c | 164 +- ssl/ssl_rsa.c | 2 +- ssl/ssl_sess.c | 26 +- ssl/ssl_txt.c | 14 +- ssl/statem/extensions.c | 8 +- ssl/statem/extensions_clnt.c | 48 +- ssl/statem/extensions_srvr.c | 68 +- ssl/statem/statem.c | 6 +- ssl/statem/statem.h | 1 + ssl/statem/statem_clnt.c | 39 +- ssl/statem/statem_dtls.c | 32 +- ssl/statem/statem_lib.c | 214 +- ssl/statem/statem_srvr.c | 220 +- ssl/t1_enc.c | 9 +- ssl/t1_lib.c | 327 +- ssl/t1_trce.c | 49 +- ssl/tls13_enc.c | 40 +- ssl/tls_srp.c | 4 +- test/asn1_time_test.c | 2 + test/asynciotest.c | 7 +- test/asynctest.c | 10 +- test/bio_callback_test.c | 117 + test/bntest.c | 91 +- test/build.info | 43 +- test/certs/mkcert.sh | 2 +- test/cipherlist_test.c | 16 +- test/clienthellotest.c | 9 +- test/cmsapitest.c | 93 + test/conf_include_test.c | 2 +- test/ctype_internal_test.c | 2 +- test/dhtest.c | 85 + test/drbg_cavs_data.c | 170320 +++++++++++++++ test/drbg_cavs_data.h | 82 + test/drbg_cavs_test.c | 287 + test/drbgtest.c | 201 +- test/dtls_mtu_test.c | 2 +- test/dtlstest.c | 137 +- test/dtlsv1listentest.c | 2 +- test/ecdsatest.c | 2 +- test/ectest.c | 11 +- test/evp_test.c | 104 +- test/exdatatest.c | 2 +- test/fatalerrtest.c | 11 +- test/generate_buildtest.pl | 2 +- test/handshake_helper.c | 42 +- test/handshake_helper.h | 2 +- test/mdc2_internal_test.c | 2 +- test/modes_internal_test.c | 4 +- test/ossl_shim/ossl_shim.cc | 4 + test/packettest.c | 2 +- test/pkey_meth_kdf_test.c | 2 +- test/pkey_meth_test.c | 2 +- test/rdrand_sanitytest.c | 13 +- test/recipes/04-test_bio_callback.t | 12 + test/recipes/05-test_rand.t | 5 +- test/recipes/06-test-rdrand.t | 2 +- test/recipes/15-test_genrsa.t | 42 +- test/recipes/15-test_out_option.t | 87 +- test/recipes/30-test_evp_data/evppkey.txt | 110 +- test/recipes/70-test_renegotiation.t | 30 +- test/recipes/70-test_sslcbcpadding.t | 31 +- test/recipes/70-test_sslextension.t | 49 +- test/recipes/70-test_sslrecords.t | 132 +- test/recipes/70-test_sslsigalgs.t | 18 +- test/recipes/70-test_sslversions.t | 7 +- test/recipes/70-test_tls13hrr.t | 5 +- test/recipes/70-test_tls13psk.t | 8 +- test/recipes/80-test_cipherlist.t | 9 +- test/recipes/80-test_cmsapi.t | 21 + test/recipes/80-test_ssl_new.t | 1 + test/recipes/80-test_ssl_old.t | 21 +- test/recipes/90-test_shlibload.t | 6 +- test/recipes/90-test_sslapi.t | 12 +- test/recipes/90-test_sslapi_data/passwd.txt | 1 + test/recipes/90-test_store.t | 71 +- test/recipes/90-test_sysdefault.t | 23 + test/recipes/99-test_fuzz.t | 12 +- test/recordlentest.c | 9 +- test/run_tests.pl | 4 +- test/shlibloadtest.c | 67 +- test/sm2crypttest.c | 254 + test/sm2sigtest.c | 238 + test/ssl-tests/02-protocol-version.conf | 2 + test/ssl-tests/20-cert-select.conf | 1183 +- test/ssl-tests/20-cert-select.conf.in | 50 +- test/ssl-tests/protocol_version.pm | 4 +- test/ssl_cert_table_internal_test.c | 4 +- test/ssl_test.c | 34 +- test/ssl_test_ctx.c | 2 +- test/ssl_test_ctx_test.c | 2 +- test/sslapitest.c | 1785 +- test/sslbuffertest.c | 3 +- test/sslcorrupttest.c | 28 +- test/ssltest_old.c | 51 +- test/ssltestlib.c | 130 +- test/ssltestlib.h | 11 +- test/sysdefault.cnf | 15 + test/sysdefaulttest.c | 50 + test/test_test.c | 7 +- test/time_offset_test.c | 2 +- test/tls13ccstest.c | 5 +- test/tls13encryptiontest.c | 26 +- test/tls13secretstest.c | 2 +- test/v3nametest.c | 2 +- test/verify_extra_test.c | 40 +- test/versions.c | 20 + test/x509_internal_test.c | 2 +- test/x509_time_test.c | 2 +- tools/c_rehash.in | 2 +- util/add-depends.pl | 262 +- util/check-malloc-errs | 16 + util/copy.pl | 10 +- util/dofile.pl | 6 +- util/indent.pro | 1 + util/libcrypto.num | 251 +- util/libssl.num | 6 + util/mkdef.pl | 2 +- util/mkrc.pl | 21 +- util/perl/OpenSSL/Test.pm | 52 +- util/perl/TLSProxy/Message.pm | 7 +- util/perl/TLSProxy/Proxy.pm | 516 +- util/perl/TLSProxy/Record.pm | 132 +- util/private.num | 22 + util/process_docs.pl | 28 +- util/shlib_wrap.sh.in | 22 +- 624 files changed, 189420 insertions(+), 8064 deletions(-) rename Configurations/{90-team.conf => 90-team.norelease.conf} (96%) create mode 100644 Configurations/common0.tmpl create mode 100644 Configurations/dist.conf create mode 100644 NOTES.ANDROID delete mode 100644 README.ECC create mode 100644 crypto/conf/conf_lcl.h create mode 100644 crypto/conf/conf_ssl.c delete mode 100644 crypto/ec/ec2_mult.c create mode 100644 crypto/sm2/build.info create mode 100644 crypto/sm2/sm2_crypt.c create mode 100644 crypto/sm2/sm2_err.c create mode 100644 crypto/sm2/sm2_sign.c create mode 100644 crypto/sm2/sm2_za.c create mode 100644 doc/man3/EVP_PKEY_CTX_set1_pbe_pass.pod create mode 100644 doc/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.pod create mode 100644 doc/man3/EVP_PKEY_CTX_set_scrypt_N.pod create mode 100644 doc/man3/RAND_DRBG_generate.pod create mode 100644 doc/man3/RAND_DRBG_get0_master.pod create mode 100644 doc/man3/RAND_DRBG_new.pod create mode 100644 doc/man3/RAND_DRBG_reseed.pod create mode 100644 doc/man3/RAND_DRBG_set_callbacks.pod create mode 100644 doc/man3/RAND_DRBG_set_ex_data.pod create mode 100644 doc/man3/SSL_CTX_set_num_tickets.pod create mode 100644 doc/man7/RAND.pod create mode 100644 doc/man7/RAND_DRBG.pod create mode 100644 doc/man7/passphrase-encoding.pod create mode 100644 fuzz/corpora/asn1/eba5151118ff75ce6a86438a3a6f819c41d8be40 create mode 100644 include/internal/sslconf.h rename include/{internal/rand.h => openssl/rand_drbg.h} (61%) create mode 100644 include/openssl/sm2.h create mode 100644 include/openssl/sm2err.h create mode 100644 test/bio_callback_test.c create mode 100644 test/cmsapitest.c create mode 100644 test/drbg_cavs_data.c create mode 100644 test/drbg_cavs_data.h create mode 100644 test/drbg_cavs_test.c create mode 100644 test/recipes/04-test_bio_callback.t create mode 100644 test/recipes/80-test_cmsapi.t create mode 100644 test/recipes/90-test_sslapi_data/passwd.txt create mode 100644 test/recipes/90-test_sysdefault.t create mode 100644 test/sm2crypttest.c create mode 100644 test/sm2sigtest.c create mode 100644 test/sysdefault.cnf create mode 100644 test/sysdefaulttest.c create mode 100644 test/versions.c create mode 100755 util/check-malloc-errs diff --git a/CHANGES b/CHANGES index dcbe2916..612da599 100644 --- a/CHANGES +++ b/CHANGES @@ -7,7 +7,102 @@ https://github.com/openssl/openssl/commits/ and pick the appropriate release branch. - Changes between 1.1.0g and 1.1.1 [xx XXX xxxx] + Changes between 1.1.0h and 1.1.1 [xx XXX xxxx] + + *) SSL_MODE_AUTO_RETRY is enabled by default. Applications that use blocking + I/O in combination with something like select() or poll() will hang. This + can be turned off again using SSL_CTX_clear_mode(). + Many applications do not properly handle non-application data records, and + TLS 1.3 sends more of such records. Setting SSL_MODE_AUTO_RETRY works + around the problems in those applications, but can also break some. + It's recommended to read the manpages about SSL_read(), SSL_write(), + SSL_get_error(), SSL_shutdown(), SSL_CTX_set_mode() and + SSL_CTX_set_read_ahead() again. + [Kurt Roeckx] + + *) When unlocking a pass phrase protected PEM file or PKCS#8 container, we + now allow empty (zero character) pass phrases. + [Richard Levitte] + + *) Apply blinding to binary field modular inversion and remove patent + pending (OPENSSL_SUN_GF2M_DIV) BN_GF2m_mod_div implementation. + [Billy Bob Brumley] + + *) Deprecate ec2_mult.c and unify scalar multiplication code paths for + binary and prime elliptic curves. + [Billy Bob Brumley] + + *) Remove ECDSA nonce padding: EC_POINT_mul is now responsible for + constant time fixed point multiplication. + [Billy Bob Brumley] + + *) Revise elliptic curve scalar multiplication with timing attack + defenses: ec_wNAF_mul redirects to a constant time implementation + when computing fixed point and variable point multiplication (which + in OpenSSL are mostly used with secret scalars in keygen, sign, + ECDH derive operations). + [Billy Bob Brumley, Nicola Tuveri, Cesar Pereida GarcĂ­a, + Sohaib ul Hassan] + + *) Updated CONTRIBUTING + [Rich Salz] + + *) Updated DRBG / RAND to request nonce and additional low entropy + randomness from the system. + [Matthias St. Pierre] + + *) Updated 'openssl rehash' to use OpenSSL consistent default. + [Richard Levitte] + + *) Moved the load of the ssl_conf module to libcrypto, which helps + loading engines that libssl uses before libssl is initialised. + [Matt Caswell] + + *) Added EVP_PKEY_sign() and EVP_PKEY_verify() for EdDSA + [Matt Caswell] + + *) Fixed X509_NAME_ENTRY_set to get multi-valued RDNs right in all cases. + [Ingo Schwarze, Rich Salz] + + *) Added output of accepting IP address and port for 'openssl s_server' + [Richard Levitte] + + *) Added a new API for TLSv1.3 ciphersuites: + SSL_CTX_set_ciphersuites() + SSL_set_ciphersuites() + [Matt Caswell] + + *) Memory allocation failures consistenly add an error to the error + stack. + [Rich Salz] + + *) Don't use OPENSSL_ENGINES and OPENSSL_CONF environment values + in libcrypto when run as setuid/setgid. + [Bernd Edlinger] + + *) Load any config file by default when libssl is used. + [Matt Caswell] + + *) Added new public header file and documentation + for the RAND_DRBG API. See manual page RAND_DRBG(7) for an overview. + [Matthias St. Pierre] + + *) QNX support removed (cannot find contributors to get their approval + for the license change). + [Rich Salz] + + *) TLSv1.3 replay protection for early data has been implemented. See the + SSL_read_early_data() man page for further details. + [Matt Caswell] + + *) Separated TLSv1.3 ciphersuite configuration out from TLSv1.2 ciphersuite + configuration. TLSv1.3 ciphersuites are not compatible with TLSv1.2 and + below. Similarly TLSv1.2 ciphersuites are not compatible with TLSv1.3. + In order to avoid issues where legacy TLSv1.2 ciphersuite configuration + would otherwise inadvertently disable all TLSv1.3 ciphersuites the + configuration has been separated out. See the ciphers man page or the + SSL_CTX_set_ciphersuites() man page for more information. + [Matt Caswell] *) On POSIX (BSD, Linux, ...) systems the ocsp(1) command running in responder mode now supports the new "-multi" option, which @@ -35,12 +130,7 @@ *) Support for TLSv1.3 added. Note that users upgrading from an earlier version of OpenSSL should review their configuration settings to ensure - that they are still appropriate for TLSv1.3. In particular if no TLSv1.3 - ciphersuites are enabled then OpenSSL will refuse to make a connection - unless (1) TLSv1.3 is explicitly disabled or (2) the ciphersuite - configuration is updated to include suitable ciphersuites. The DEFAULT - ciphersuite configuration does include TLSv1.3 ciphersuites. For further - information on this and other related issues please see: + that they are still appropriate for TLSv1.3. For further information see: https://www.openssl.org/blog/blog/2018/02/08/tlsv1.3/ NOTE: In this pre-release of OpenSSL a draft version of the @@ -278,7 +368,73 @@ issues, has been replaced to always returns NULL. [Rich Salz] - Changes between 1.1.0g and 1.1.0h [xx XXX xxxx] + + Changes between 1.1.0h and 1.1.0i [xx XXX xxxx] + + *) Fixed a text canonicalisation bug in CMS + + Where a CMS detached signature is used with text content the text goes + through a canonicalisation process first prior to signing or verifying a + signature. This process strips trailing space at the end of lines, converts + line terminators to CRLF and removes additional trailing line terminators + at the end of a file. A bug in the canonicalisation process meant that + some characters, such as form-feed, were incorrectly treated as whitespace + and removed. This is contrary to the specification (RFC5485). This fix + could mean that detached text data signed with an earlier version of + OpenSSL 1.1.0 may fail to verify using the fixed version, or text data + signed with a fixed OpenSSL may fail to verify with an earlier version of + OpenSSL 1.1.0. A workaround is to only verify the canonicalised text data + and use the "-binary" flag (for the "cms" command line application) or set + the SMIME_BINARY/PKCS7_BINARY/CMS_BINARY flags (if using CMS_verify()). + [Matt Caswell] + + Changes between 1.1.0g and 1.1.0h [27 Mar 2018] + + *) Constructed ASN.1 types with a recursive definition could exceed the stack + + Constructed ASN.1 types with a recursive definition (such as can be found + in PKCS7) could eventually exceed the stack given malicious input with + excessive recursion. This could result in a Denial Of Service attack. There + are no such structures used within SSL/TLS that come from untrusted sources + so this is considered safe. + + This issue was reported to OpenSSL on 4th January 2018 by the OSS-fuzz + project. + (CVE-2018-0739) + [Matt Caswell] + + *) Incorrect CRYPTO_memcmp on HP-UX PA-RISC + + Because of an implementation bug the PA-RISC CRYPTO_memcmp function is + effectively reduced to only comparing the least significant bit of each + byte. This allows an attacker to forge messages that would be considered as + authenticated in an amount of tries lower than that guaranteed by the + security claims of the scheme. The module can only be compiled by the + HP-UX assembler, so that only HP-UX PA-RISC targets are affected. + + This issue was reported to OpenSSL on 2nd March 2018 by Peter Waltenberg + (IBM). + (CVE-2018-0733) + [Andy Polyakov] + + *) Add a build target 'build_all_generated', to build all generated files + and only that. This can be used to prepare everything that requires + things like perl for a system that lacks perl and then move everything + to that system and do the rest of the build there. + [Richard Levitte] + + *) Backport SSL_OP_NO_RENGOTIATION + + OpenSSL 1.0.2 and below had the ability to disable renegotiation using the + (undocumented) SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS flag. Due to the opacity + changes this is no longer possible in 1.1.0. Therefore the new + SSL_OP_NO_RENEGOTIATION option from 1.1.1-dev has been backported to + 1.1.0 to provide equivalent functionality. + + Note that if an application built against 1.1.0h headers (or above) is run + using an older version of 1.1.0 (prior to 1.1.0h) then the option will be + accepted but nothing will happen, i.e. renegotiation will not be prevented. + [Matt Caswell] *) Removed the OS390-Unix config target. It relied on a script that doesn't exist. diff --git a/CONTRIBUTING b/CONTRIBUTING index 08c607aa..c0eed39e 100644 --- a/CONTRIBUTING +++ b/CONTRIBUTING @@ -1,26 +1,26 @@ -HOW TO CONTRIBUTE PATCHES TO OpenSSL ------------------------------------- +HOW TO CONTRIBUTE TO OpenSSL +---------------------------- (Please visit https://www.openssl.org/community/getting-started.html for other ideas about how to contribute.) -Development is coordinated on the openssl-dev mailing list (see the -above link or https://mta.openssl.org for information on subscribing). -If you are unsure as to whether a feature will be useful for the general -OpenSSL community you might want to discuss it on the openssl-dev mailing -list first. Someone may be already working on the same thing or there -may be a good reason as to why that feature isn't implemented. +Development is done on GitHub, https://github.com/openssl/openssl. -To submit a patch, make a pull request on GitHub. If you think the patch -could use feedback from the community, please start a thread on openssl-dev -to discuss it. +To request new features or report bugs, please open an issue on GitHub -Having addressed the following items before the PR will help make the -acceptance and review process faster: +To submit a patch, please open a pull request on GitHub. If you are thinking +of making a large contribution, open an issue for it before starting work, +to get comments from the community. Someone may be already working on +the same thing or there may be reasons why that feature isn't implemented. - 1. Anything other than trivial contributions will require a contributor - licensing agreement, giving us permission to use your code. See - https://www.openssl.org/policies/cla.html for details. +To make it easier to review and accept your pull request, please follow these +guidelines: + + 1. Anything other than a trivial contribution requires a Contributor + License Agreement (CLA), giving us permission to use your code. See + https://www.openssl.org/policies/cla.html for details. If your + contribution is too small to require a CLA, put "CLA: trivial" on a + line by itself in your commit message body. 2. All source files should start with the following text (with appropriate comment characters at the start of each line and the @@ -34,21 +34,39 @@ acceptance and review process faster: https://www.openssl.org/source/license.html 3. Patches should be as current as possible; expect to have to rebase - often. We do not accept merge commits; You will be asked to remove - them before a patch is considered acceptable. + often. We do not accept merge commits, you will have to remove them + (usually by rebasing) before it will be acceptable. 4. Patches should follow our coding style (see - https://www.openssl.org/policies/codingstyle.html) and compile without - warnings. Where gcc or clang is available you should use the + https://www.openssl.org/policies/codingstyle.html) and compile + without warnings. Where gcc or clang is available you should use the --strict-warnings Configure option. OpenSSL compiles on many varied - platforms: try to ensure you only use portable features. - Clean builds via Travis and AppVeyor are expected, and done whenever - a PR is created or updated. + platforms: try to ensure you only use portable features. Clean builds + via Travis and AppVeyor are required, and they are started automatically + whenever a PR is created or updated. 5. When at all possible, patches should include tests. These can either be added to an existing test, or completely new. Please see test/README for information on the test framework. 6. New features or changed functionality must include - documentation. Please look at the "pod" files in doc/man[1357] - for examples of our style. + documentation. Please look at the "pod" files in doc/man[1357] for + examples of our style. Run "make doc-nits" to make sure that your + documentation changes are clean. + + 7. For user visible changes (API changes, behaviour changes, ...), + consider adding a note in CHANGES. This could be a summarising + description of the change, and could explain the grander details. + Have a look through existing entries for inspiration. + Please note that this is NOT simply a copy of git-log oneliners. + Also note that security fixes get an entry in CHANGES. + This file helps users get more in depth information of what comes + with a specific release without having to sift through the higher + noise ratio in git-log. + + 8. For larger or more important user visible changes, as well as + security fixes, please add a line in NEWS. On exception, it might be + worth adding a multi-line entry (such as the entry that announces all + the types that became opaque with OpenSSL 1.1.0). + This file helps users get a very quick summary of what comes with a + specific release, to see if an upgrade is worth the effort. diff --git a/Configurations/00-base-templates.conf b/Configurations/00-base-templates.conf index c074bd6e..4a1645fd 100644 --- a/Configurations/00-base-templates.conf +++ b/Configurations/00-base-templates.conf @@ -34,6 +34,7 @@ my %targets=( padlock_asm_src => "", chacha_asm_src => "chacha_enc.c", poly1305_asm_src => "", + keccak1600_asm_src => "keccak1600.c", unistd => "", shared_target => "", @@ -114,7 +115,7 @@ my %targets=( my @defs = (); unless ($disabled{"zlib-dynamic"}) { my $zlib = $withargs{zlib_lib} // "ZLIB1"; - push @defs, quotify("perl", 'LIBZ="' . $zlib . '"'); + push @defs, 'LIBZ=' . (quotify("perl", $zlib))[0]; } return [ @defs ]; }, @@ -226,6 +227,7 @@ my %targets=( padlock_asm_src => "e_padlock-x86_64.s", chacha_asm_src => "chacha-x86_64.s", poly1305_asm_src=> "poly1305-x86_64.s", + keccak1600_asm_src => "keccak1600-x86_64.s", }, ia64_asm => { template => 1, @@ -287,6 +289,7 @@ my %targets=( modes_asm_src => "ghash-s390x.S", chacha_asm_src => "chacha-s390x.S", poly1305_asm_src=> "poly1305-s390x.S", + keccak1600_asm_src => "keccak1600-s390x.S", }, armv4_asm => { template => 1, @@ -298,6 +301,7 @@ my %targets=( modes_asm_src => "ghash-armv4.S ghashv8-armx.S", chacha_asm_src => "chacha-armv4.S", poly1305_asm_src=> "poly1305-armv4.S", + keccak1600_asm_src => "keccak1600-armv4.S", perlasm_scheme => "void" }, aarch64_asm => { @@ -310,6 +314,7 @@ my %targets=( modes_asm_src => "ghashv8-armx.S", chacha_asm_src => "chacha-armv8.S", poly1305_asm_src=> "poly1305-armv8.S", + keccak1600_asm_src => "keccak1600-armv8.S", }, parisc11_asm => { template => 1, @@ -340,6 +345,6 @@ my %targets=( inherit_from => [ "ppc32_asm" ], template => 1, ec_asm_src => "ecp_nistz256.c ecp_nistz256-ppc64.s", - + keccak1600_asm_src => "keccak1600-ppc64.s", }, ); diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf index 6c73d9f4..8d55ad84 100644 --- a/Configurations/10-main.conf +++ b/Configurations/10-main.conf @@ -452,18 +452,26 @@ my %targets = ( # targets; b) performance-critical 32-bit assembly modules implement # even PA-RISC 2.0-specific code paths, which are chosen at run-time, # thus adequate performance is provided even with PA-RISC 1.1 build. - "hpux-parisc-gcc" => { + "hpux-common" => { inherit_from => [ "BASE_unix" ], + template => 1, + defines => add("_XOPEN_SOURCE", "_XOPEN_SOURCE_EXTENDED", + "_HPUX_ALT_XOPEN_SOCKET_API"), + lib_cppflags => "-DB_ENDIAN", + thread_scheme => "pthreads", + dso_scheme => "dlfcn", # overridden in 32-bit PA-RISC builds + shared_target => "hpux-shared", + }, + "hpux-parisc-gcc" => { + inherit_from => [ "hpux-common" ], CC => "gcc", CFLAGS => picker(debug => "-O0 -g", release => "-O3"), cflags => add(threads("-pthread")), - lib_cppflags => "-DB_ENDIAN -DBN_DIV2W", - ex_libs => add("-Wl,+s -ldld", threads("-pthread")), - bn_ops => "BN_LLONG", - thread_scheme => "pthreads", + lib_cppflags => add("-DBN_DIV2W"), + ex_libs => add("-ldld", threads("-pthread")), + bn_ops => "BN_LLONG RC4_CHAR", dso_scheme => "dl", - shared_target => "hpux-shared", shared_cflag => "-fPIC", shared_ldflag => "-shared", shared_extension => ".sl.\$(SHLIB_VERSION_NUMBER)", @@ -473,17 +481,13 @@ my %targets = ( multilib => "/pa1.1", }, "hpux64-parisc2-gcc" => { - inherit_from => [ "BASE_unix", asm("parisc20_64_asm") ], + inherit_from => [ "hpux-common", asm("parisc20_64_asm") ], CC => "gcc", CFLAGS => combine(picker(debug => "-O0 -g", release => "-O3")), - cppflags => threads("-D_REENTRANT"), - lib_cppflags => "-DB_ENDIAN", - ex_libs => add("-ldl"), + cflags => add(threads("-pthread")), + ex_libs => add("-ldl", threads("-pthread")), bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "-fpic", shared_ldflag => "-shared", shared_extension => ".sl.\$(SHLIB_VERSION_NUMBER)", @@ -492,18 +496,16 @@ my %targets = ( # More attempts at unified 10.X and 11.X targets for HP C compiler. "hpux-parisc-cc" => { - inherit_from => [ "BASE_unix" ], + inherit_from => [ "hpux-common" ], CC => "cc", CFLAGS => picker(debug => "+O0 +d -g", release => "+O3"), cflags => "+Optrs_strongly_typed -Ae +ESlit", cppflags => threads("-D_REENTRANT"), - lib_cppflags => "-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY", - ex_libs => add("-Wl,+s -ldld",threads("-lpthread")), + lib_cppflags => add("-DBN_DIV2W -DMD32_XARRAY"), + ex_libs => add("-ldld", threads("-lpthread")), bn_ops => "RC4_CHAR", - thread_scheme => "pthreads", dso_scheme => "dl", - shared_target => "hpux-shared", shared_cflag => "+Z", shared_ldflag => "-b", shared_extension => ".sl.\$(SHLIB_VERSION_NUMBER)", @@ -514,18 +516,15 @@ my %targets = ( multilib => "/pa1.1", }, "hpux64-parisc2-cc" => { - inherit_from => [ "BASE_unix", asm("parisc20_64_asm") ], + inherit_from => [ "hpux-common", asm("parisc20_64_asm") ], CC => "cc", CFLAGS => picker(debug => "+O0 +d -g", release => "+O3") , cflags => "+DD64 +Optrs_strongly_typed -Ae +ESlit", cppflags => threads("-D_REENTRANT") , - lib_cppflags => "-DB_ENDIAN -DMD32_XARRAY", - ex_libs => add("-ldl",threads("-lpthread")), + lib_cppflags => add("-DMD32_XARRAY"), + ex_libs => add("-ldl", threads("-lpthread")), bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "+Z", shared_ldflag => "-b", shared_extension => ".sl.\$(SHLIB_VERSION_NUMBER)", @@ -534,36 +533,28 @@ my %targets = ( # HP/UX IA-64 targets "hpux-ia64-cc" => { - inherit_from => [ "BASE_unix", asm("ia64_asm") ], + inherit_from => [ "hpux-common", asm("ia64_asm") ], CC => "cc", CFLAGS => picker(debug => "+O0 +d -g", release => "+O2"), cflags => "-Ae +DD32 +Olit=all -z", cppflags => add(threads("-D_REENTRANT")), - lib_cppflags => "-DB_ENDIAN", - ex_libs => add("-ldl",threads("-lpthread")), + ex_libs => add("-ldl", threads("-lpthread")), bn_ops => "SIXTY_FOUR_BIT", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "+Z", shared_ldflag => "-b", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", multilib => "/hpux32", }, "hpux64-ia64-cc" => { - inherit_from => [ "BASE_unix", asm("ia64_asm") ], + inherit_from => [ "hpux-common", asm("ia64_asm") ], CC => "cc", CFLAGS => picker(debug => "+O0 +d -g", release => "+O3"), cflags => "-Ae +DD64 +Olit=all -z", cppflags => threads("-D_REENTRANT"), - lib_cppflags => "-DB_ENDIAN", ex_libs => add("-ldl", threads("-lpthread")), bn_ops => "SIXTY_FOUR_BIT_LONG", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "+Z", shared_ldflag => "-b", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", @@ -571,34 +562,26 @@ my %targets = ( }, # GCC builds... "hpux-ia64-gcc" => { - inherit_from => [ "BASE_unix", asm("ia64_asm") ], + inherit_from => [ "hpux-common", asm("ia64_asm") ], CC => "gcc", CFLAGS => picker(debug => "-O0 -g", release => "-O3"), cflags => add(threads("-pthread")), - lib_cppflags => "-DB_ENDIAN", ex_libs => add("-ldl", threads("-pthread")), bn_ops => "SIXTY_FOUR_BIT", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "-fpic", shared_ldflag => "-shared", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", multilib => "/hpux32", }, "hpux64-ia64-gcc" => { - inherit_from => [ "BASE_unix", asm("ia64_asm") ], + inherit_from => [ "hpux-common", asm("ia64_asm") ], CC => "gcc", CFLAGS => picker(debug => "-O0 -g", release => "-O3"), cflags => combine("-mlp64", threads("-pthread")), - lib_cppflags => "-DB_ENDIAN", ex_libs => add("-ldl", threads("-pthread")), bn_ops => "SIXTY_FOUR_BIT_LONG", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "-fpic", shared_ldflag => "-shared", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", @@ -679,6 +662,7 @@ my %targets = ( shared_cflag => "-fPIC", shared_ldflag => "-Wl,-znodelete", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", + enable => [ "afalgeng" ], }, "linux-generic64" => { inherit_from => [ "linux-generic32" ], @@ -1039,35 +1023,6 @@ my %targets = ( thread_scheme => "(unknown)", }, -# QNX - "qnx4" => { - inherit_from => [ "BASE_unix" ], - CC => "cc", - CFLAGS => "", - lib_cppflags => "-DL_ENDIAN -DTERMIO", - thread_scheme => "(unknown)", - }, - "QNX6" => { - inherit_from => [ "BASE_unix" ], - CC => "gcc", - ex_libs => add("-lsocket"), - dso_scheme => "dlfcn", - shared_target => "bsd-gcc-shared", - shared_cflag => "-fPIC", - shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", - }, - "QNX6-i386" => { - inherit_from => [ "BASE_unix", asm("x86_elf_asm") ], - CC => "gcc", - CFLAGS => "-O2 -Wall", - lib_cppflags => "-DL_ENDIAN", - ex_libs => add("-lsocket"), - dso_scheme => "dlfcn", - shared_target => "bsd-gcc-shared", - shared_cflag => "-fPIC", - shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", - }, - #### SCO/Caldera targets. # # Originally we had like unixware-*, unixware-*-pentium, unixware-*-p6, etc. @@ -1175,7 +1130,8 @@ my %targets = ( shared_target => "aix-shared", shared_ldflag => "-shared -static-libgcc -Wl,-G", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", - arflags => "-X32 r", + AR => add("-X32"), + RANLIB => add("-X32"), }, "aix64-gcc" => { inherit_from => [ "BASE_unix", asm("ppc64_asm") ], @@ -1193,7 +1149,8 @@ my %targets = ( shared_target => "aix-shared", shared_ldflag => "-shared -static-libgcc -Wl,-G", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", - arflags => "-X64 r", + AR => add("-X64"), + RANLIB => add("-X64"), }, "aix-cc" => { inherit_from => [ "BASE_unix", asm("ppc32_asm") ], @@ -1211,9 +1168,11 @@ my %targets = ( perlasm_scheme => "aix32", dso_scheme => "dlfcn", shared_target => "aix-shared", + shared_cflag => "-qpic", shared_ldflag => "-G", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", - arflags => "-X32 r", + AR => add("-X32"), + RANLIB => add("-X32"), }, "aix64-cc" => { inherit_from => [ "BASE_unix", asm("ppc64_asm") ], @@ -1231,9 +1190,11 @@ my %targets = ( perlasm_scheme => "aix64", dso_scheme => "dlfcn", shared_target => "aix-shared", + shared_cflag => "-qpic", shared_ldflag => "-G", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", - arflags => "-X64 r", + AR => add("-X64"), + RANLIB => add("-X64"), }, # SIEMENS BS2000/OSD: an EBCDIC-based mainframe @@ -1307,7 +1268,8 @@ my %targets = ( sub { ($disabled{shared} ? "" : "/MD"); })), - defines => add(picker(debug => [ "DEBUG", "_DEBUG" ])), + defines => add(picker(default => [], # works as type cast + debug => [ "DEBUG", "_DEBUG" ])), lib_cflags => add(sub { $disabled{shared} ? "/MT /Zl" : () }), # Following might/should appears controversial, i.e. defining # /MDd without evaluating $disabled{shared}. It works in @@ -1630,6 +1592,7 @@ my %targets = ( inherit_from => [ "darwin-common" ], cflags => add("-isysroot \$(CROSS_TOP)/SDKs/\$(CROSS_SDK) -fno-common"), sys_id => "iOS", + disable => [ "engine" ], }, "ios-cross" => { inherit_from => [ "darwin-common", asm("armv4_asm") ], @@ -1639,6 +1602,7 @@ my %targets = ( cflags => add("-arch armv7 -mios-version-min=6.0.0 -isysroot \$(CROSS_TOP)/SDKs/\$(CROSS_SDK) -fno-common"), sys_id => "iOS", perlasm_scheme => "ios32", + disable => [ "engine" ], }, "ios64-cross" => { inherit_from => [ "darwin-common", asm("aarch64_asm") ], @@ -1646,6 +1610,7 @@ my %targets = ( sys_id => "iOS", bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR", perlasm_scheme => "ios64", + disable => [ "engine" ], }, ##### GNU Hurd diff --git a/Configurations/15-android.conf b/Configurations/15-android.conf index b5248580..ddd642a1 100644 --- a/Configurations/15-android.conf +++ b/Configurations/15-android.conf @@ -1,27 +1,7 @@ #### Android... # -# It takes *one* prior-set environment variable to make it work: -# -# ANDROID_NDK=/some/where/android-ndk- -# -# As well as PATH *adjusted* to cover ${CROSS_COMPILE}gcc and company. -# -# Note that it's different from original instructions that required to -# set CROSS_SYSROOT [to $ANDROID_NDK/platforms/android-/arch-] -# and CROSS_COMPILE. CROSS_SYSROOT is still recognized [and even required -# for some legacy targets], but if not set, it's detected and set to the -# latest Android platform available with appointed NDK automatically. If -# you need to target older platform, pass additional -D__ANDROID_API__=N -# to Configure. For example, to compile for ICS on ARM with NDK 10d: -# -# ANDROID_NDK=/some/where/android-ndk-10d -# PATH=$ANDROID_NDK/toolchains/arm-linux-androideabi-4.8/prebuild/linux-x86_64/bin:$PATH -# [..]./Configure android-arm -D__ANDROID_API__=14 -# -# One can engage clang by passing CC=clang to Configure. In such case -# PATH needs even more adjustments to cover NDK's clang itself, as well -# as unprefixed, yet target-specific ar and ranlib [or not, if you use -# binutils-multiarch]. +# See NOTES.ANDROID for details, and don't miss platform-specific +# comments below... { my $android_ndk = {}; @@ -36,24 +16,41 @@ sub android_ndk { unless (%$android_ndk) { + if ($now_printing =~ m|^android|) { + return $android_ndk = { bn_ops => "BN_AUTO" }; + } + my $ndk = $ENV{ANDROID_NDK}; die "\$ANDROID_NDK is not defined" if (!$ndk); die "\$ANDROID_NDK=$ndk is invalid" if (!-d "$ndk/platforms"); + my $ndkver = undef; + + if (open my $fh, "<$ndk/source.properties") { + local $_; + while(<$fh>) { + if (m|Pkg\.Revision\s*=\s*([0-9]+)|) { + $ndkver = $1; + last; + } + } + close $fh; + } + my $sysroot; if (!($sysroot = $ENV{CROSS_SYSROOT})) { my $api = "*"; # see if user passed -D__ANDROID_API__=N - foreach (@{$useradd{CPPDEFINES}}) { + foreach (@{$useradd{CPPDEFINES}}, @{$user{CPPFLAGS}}) { if (m|__ANDROID_API__=([0-9]+)|) { $api = $1; last; } } - # list available platforms [numerically] + # list available platforms (numerically) my @platforms = sort { $a =~ m/-([0-9]+)$/; my $aa = $1; $b =~ m/-([0-9]+)$/; $aa <=> $1; } glob("$ndk/platforms/android-$api"); @@ -68,20 +65,27 @@ my ($api, $arch) = ($1, $2); my $triarch = $triplet{$arch}; - my $cflags = "-Wa,--noexecstack"; + my $cflags; my $cppflags; - # see if user passed CC=clang - if ($user{CC} eq "clang") { - if (which("clang") !~ m|^$ndk/.*/prebuilt/([^/]+)/|) { - die "no NDK clang on \$PATH"; - } + # see if there is NDK clang on $PATH + if (which("clang") =~ m|^$ndk/.*/prebuilt/([^/]+)/|) { + my $host=$1; # harmonize with gcc default - (my $tridefault = $triarch) =~ s|^arm-|armv5te-|; - $cflags .= " -target $tridefault -gcc-toolchain " - . "\$(ANDROID_NDK)/toolchains/$triarch-4.9/prebuilt/$1"; + my $arm = $ndkver > 16 ? "armv7a" : "armv5te"; + (my $tridefault = $triarch) =~ s/^arm-/$arm-/; + (my $tritools = $triarch) =~ s/(?:x|i6)86(_64)?-.*/x86$1/; + $cflags .= " -target $tridefault " + . "-gcc-toolchain \$(ANDROID_NDK)/toolchains" + . "/$tritools-4.9/prebuilt/$host"; + $user{CC} = "clang" if ($user{CC} !~ m|clang|); $user{CROSS_COMPILE} = undef; + } elsif ($user{CC} eq "clang") { + die "no NDK clang on \$PATH"; } else { + if (which("$triarch-gcc") !~ m|^$ndk/.*/prebuilt/([^/]+)/|) { + die "no NDK $triarch-gcc on \$PATH"; + } $cflags .= " -mandroid"; $user{CROSS_COMPILE} = "$triarch-"; } @@ -128,6 +132,7 @@ my %targets = ( cxxflags => add(sub { android_ndk()->{cflags} }), bn_ops => sub { android_ndk()->{bn_ops} }, bin_cflags => "-pie", + enable => [ ], }, "android-arm" => { ################################################################ @@ -138,7 +143,7 @@ my %targets = ( # ability to engage NEON is not constrained by ABI choice, nor # is your ability to call OpenSSL from your application code # compiled with floating-point ABI other than default 'soft'. - # [Latter thanks to __attribute__((pcs("aapcs"))) declaration.] + # (Latter thanks to __attribute__((pcs("aapcs"))) declaration.) # This means that choice of ARM libraries you provide in .apk # is driven by application needs. For example if application # itself benefits from NEON or is floating-point intensive, then @@ -151,20 +156,24 @@ my %targets = ( # in order to build "universal" binary and allow OpenSSL take # advantage of NEON when it's available. # - # Keep in mind that [just like with linux-armv4] we rely on + # Keep in mind that (just like with linux-armv4) we rely on # compiler defaults, which is not necessarily what you had # in mind, in which case you would have to pass additional # -march and/or -mfloat-abi flags. NDK defaults to armv5te. + # Newer NDK versions reportedly require additional -latomic. # inherit_from => [ "android", asm("armv4_asm") ], + bn_ops => add("RC4_CHAR"), }, "android-arm64" => { inherit_from => [ "android", asm("aarch64_asm") ], + bn_ops => add("RC4_CHAR"), perlasm_scheme => "linux64", }, "android-mips" => { inherit_from => [ "android", asm("mips32_asm") ], + bn_ops => add("RC4_CHAR"), perlasm_scheme => "o32", }, "android-mips64" => { @@ -178,6 +187,7 @@ my %targets = ( # prior versions original MIPS binary code will fail. # inherit_from => [ "android", asm("mips64_asm") ], + bn_ops => add("RC4_CHAR"), perlasm_scheme => "64", }, @@ -194,7 +204,7 @@ my %targets = ( }, #################################################################### - # Backward compatible targets, [might] requre $CROSS_SYSROOT + # Backward compatible targets, (might) requre $CROSS_SYSROOT # "android-armeabi" => { inherit_from => [ "android-arm" ], diff --git a/Configurations/50-win-onecore.conf b/Configurations/50-win-onecore.conf index 1207621e..c71d3646 100644 --- a/Configurations/50-win-onecore.conf +++ b/Configurations/50-win-onecore.conf @@ -4,7 +4,11 @@ # Mobile[?] Windows editions. It's a set up "umbrella" libraries that # export subset of Win32 API that are common to all Windows 10 devices. # -# TODO: drop onecore_downlevel.lib. +# OneCore Configuration temporarly dedicated for console applications +# due to disabled event logging, which is incompatible with one core. +# Error messages are provided via standard error only. +# TODO: extend error handling to use ETW based eventing +# (Or rework whole error messaging) my %targets = ( "VC-WIN32-ONECORE" => { @@ -13,12 +17,14 @@ my %targets = ( # hidden reference to kernel32.lib, but we don't actually want # it in "onecore" build. lflags => add("/NODEFAULTLIB:kernel32.lib"), - ex_libs => "onecore.lib onecore_downlevel.lib", + defines => add("OPENSSL_SYS_WIN_CORE"), + ex_libs => "onecore.lib", }, "VC-WIN64A-ONECORE" => { inherit_from => [ "VC-WIN64A" ], lflags => add("/NODEFAULTLIB:kernel32.lib"), - ex_libs => "onecore.lib onecore_downlevel.lib", + defines => add("OPENSSL_SYS_WIN_CORE"), + ex_libs => "onecore.lib", }, # Windows on ARM targets. ARM compilers are additional components in @@ -39,18 +45,20 @@ my %targets = ( "VC-WIN32-ARM" => { inherit_from => [ "VC-noCE-common" ], - defines => add("_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE"), + defines => add("_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE", + "OPENSSL_SYS_WIN_CORE"), bn_ops => "BN_LLONG RC4_CHAR EXPORT_VAR_AS_FN", lflags => add("/NODEFAULTLIB:kernel32.lib"), - ex_libs => "onecore.lib onecore_downlevel.lib", + ex_libs => "onecore.lib", multilib => "-arm", }, "VC-WIN64-ARM" => { inherit_from => [ "VC-noCE-common" ], - defines => add("_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE"), + defines => add("_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE", + "OPENSSL_SYS_WIN_CORE"), bn_ops => "SIXTY_FOUR_BIT RC4_CHAR EXPORT_VAR_AS_FN", lflags => add("/NODEFAULTLIB:kernel32.lib"), - ex_libs => "onecore.lib onecore_downlevel.lib", + ex_libs => "onecore.lib", multilib => "-arm64", }, ); diff --git a/Configurations/90-team.conf b/Configurations/90-team.norelease.conf similarity index 96% rename from Configurations/90-team.conf rename to Configurations/90-team.norelease.conf index a5cc6da4..a9ab98d0 100644 --- a/Configurations/90-team.conf +++ b/Configurations/90-team.norelease.conf @@ -79,12 +79,6 @@ my %targets = ( shared_cflag => "-fPIC", shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)", }, - "dist" => { - inherit_from => [ 'BASE_unix' ], - CC => "cc", - CFLAGS => "-O", - thread_scheme => "(unknown)", - }, "debug-test-64-clang" => { inherit_from => [ 'BASE_unix', "x86_64_asm" ], cc => "clang", diff --git a/Configurations/README b/Configurations/README index d809824b..4457b947 100644 --- a/Configurations/README +++ b/Configurations/README @@ -86,6 +86,8 @@ In each table entry, the following keys are significant: shared libraries or DSOs [4]. ex_libs => Extra libraries that are needed when linking shared libraries, DSOs or programs. + The value is also assigned to Libs.private + in $(libdir)/pkgconfig/libcrypto.pc. shared_cppflags => Extra C preprocessor flags used when processing C files for shared libraries. @@ -163,7 +165,7 @@ In each table entry, the following keys are significant: that use dlopen() et al but do not have fcntl.h), "DL" (shl_load() et al), "WIN32" and "VMS". - perlasm_scheme => The perlasm method used to created the + perlasm_scheme => The perlasm method used to create the assembler files used when compiling with assembler implementations. shared_target => The shared library building method used. @@ -427,7 +429,7 @@ It's also possible to depend on static libraries explicitly: This should be rarely used, and care should be taken to make sure it's only used when supported. For example, native Windows build doesn't -support build static libraries and DLLs at the same time, so using +support building static libraries and DLLs at the same time, so using static libraries on Windows can only be done when configured 'no-shared'. @@ -443,7 +445,7 @@ library: RENAME[libfoo]=libbar -That lines has "libfoo" get renamed to "libbar". While it makes no +That line has "libfoo" renamed to "libbar". While it makes no sense at all to just have a rename like that (why not just use "libbar" everywhere?), it does make sense when it can be used conditionally. See a little further below for an example. diff --git a/Configurations/common0.tmpl b/Configurations/common0.tmpl new file mode 100644 index 00000000..c0060095 --- /dev/null +++ b/Configurations/common0.tmpl @@ -0,0 +1,31 @@ +{- # -*- Mode: perl -*- + + # Commonly used list of generated files + # The reason for the complexity is that the build.info files provide + # GENERATE rules for *all* platforms without discrimination, while the + # build files only want those for a particular build. Therefore, we + # need to extrapolate exactly what we need to generate. The way to do + # that is to extract all possible source files from diverse tables and + # filter out all that are not generated + my %generatables = + map { $_ => 1 } + ( # The sources of stuff may be generated + ( map { @{$unified_info{sources}->{$_}} } + keys %{$unified_info{sources}} ), + $disabled{shared} + ? () + : ( map { @{$unified_info{shared_sources}->{$_}} } + keys %{$unified_info{shared_sources}} ), + # Things we explicitely depend on are usually generated + ( map { $_ eq "" ? () : @{$unified_info{depends}->{$_}} } + keys %{$unified_info{depends}} )); + our @generated = + sort ( ( grep { defined $unified_info{generate}->{$_} } + sort keys %generatables ), + # Scripts are assumed to be generated, so add thhem too + ( grep { defined $unified_info{sources}->{$_} } + @{$unified_info{scripts}} ) ); + + # Avoid strange output + ""; +-} diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl index 7e7bf71e..70e566ef 100644 --- a/Configurations/descrip.mms.tmpl +++ b/Configurations/descrip.mms.tmpl @@ -3,6 +3,7 @@ ## {- join("\n## ", @autowarntext) -} {- use File::Spec::Functions qw/:DEFAULT abs2rel rel2abs/; + use File::Basename; # Our prefix, claimed when speaking with the VSI folks Tuesday # January 26th 2016 @@ -54,11 +55,6 @@ our @install_shlibs = map { $unified_info{sharednames}->{$_} || () } grep(!/\.a$/, @{$unified_info{install}->{libraries}}); - our @generated = ( ( map { (my $x = $_) =~ s|\.[sS]$|\.asm|; $x } - grep { defined $unified_info{generate}->{$_} } - map { @{$unified_info{sources}->{$_}} } - grep { /\.o$/ } keys %{$unified_info{sources}} ), - ( grep { /\.h$/ } keys %{$unified_info{generate}} ) ); # This is a horrible hack, but is needed because recursive inclusion of files # in different directories does not work well with HP C. @@ -135,7 +131,9 @@ DEPS={- our @deps = map { (my $x = $_) =~ s|\.o$|\$(DEP_EXT)|; $x; } join(", ", map { "-\n\t".$_ } @deps); -} {- output_on() if $disabled{makedepend}; "" -} GENERATED_MANDATORY={- join(", ", map { "-\n\t".$_ } @{$unified_info{depends}->{""}} ) -} -GENERATED={- join(", ", map { "-\n\t".$_ } @generated) -} +GENERATED={- # common0.tmpl provides @generated + join(", ", map { (my $x = $_) =~ s|\.[sS]$|.asm|; "-\n\t".$x } + @generated) -} INSTALL_LIBS={- join(", ", map { "-\n\t".$_.".OLB" } @install_libs) -} INSTALL_SHLIBS={- join(", ", map { "-\n\t".$_.".EXE" } @install_shlibs) -} @@ -417,6 +415,11 @@ build_apps build_tests : build_programs # Convenience target to prebuild all generated files, not just the mandatory # ones build_all_generated : $(GENERATED_MANDATORY) $(GENERATED) + @ ! {- output_off() if $disabled{makedepend}; "" -} + @ WRITE SYS$OUTPUT "Warning: consider configuring with no-makedepend, because if" + @ WRITE SYS$OUTPUT " target system doesn't have $(PERL)," + @ WRITE SYS$OUTPUT " then make will fail..." + @ ! {- output_on() if $disabled{makedepend}; "" -} test : tests {- dependmagic('tests'); -} : build_programs_nodep, build_engines_nodep @@ -488,6 +491,7 @@ clean : libclean {- join("\n\t", map { "- DELETE $_.EXE;*,$_.OPT;*" } @{$unified_info{programs}}) || "@ !" -} {- join("\n\t", map { "- DELETE $_.EXE;*,$_.OPT;*" } @{$unified_info{engines}}) || "@ !" -} {- join("\n\t", map { "- DELETE $_;*" } @{$unified_info{scripts}}) || "@ !" -} + {- join("\n\t", map { "- DELETE $_;*" } @{$unified_info{depends}->{""}}) || "@ !" -} {- join("\n\t", map { "- DELETE $_;*" } @generated) || "@ !" -} - DELETE [...]*.MAP;* - DELETE [...]*.D;* @@ -504,7 +508,7 @@ distclean : clean depend : descrip.mms descrip.mms : FORCE @ ! {- output_off() if $disabled{makedepend}; "" -} - @ $(PERL) {- sourcefile("util", "add-depends.pl") -} + @ $(PERL) {- sourcefile("util", "add-depends.pl") -} "VMS C" @ ! {- output_on() if $disabled{makedepend}; "" -} # Install helper targets ############################################# @@ -877,9 +881,9 @@ EOF my $incs_on = join("\n\t\@ ", @{$incs_cmds[0]}) || '!'; my $incs_off = join("\n\t\@ ", @{$incs_cmds[1]}) || '!'; my $depbuild = $disabled{makedepend} ? "" - : " /MMS=(FILE=${objd}${objn}.tmp-D,TARGET=$obj.OBJ)"; + : " /MMS=(FILE=${objd}${objn}.D,TARGET=$obj.OBJ)"; - return <<"EOF" + return <<"EOF"; $obj.OBJ : $deps ${before} SET DEFAULT $forward @@ -890,12 +894,6 @@ $obj.OBJ : $deps ${after} - PURGE $obj.OBJ EOF - . ($disabled{makedepend} ? "" : <<"EOF" - \@ PIPE ( \$(PERL) -e "use File::Compare qw/compare_text/; my \$x = compare_text(""$obj.D"",""$obj.tmp-D""); exit(0x10000000 + (\$x == 0));" || - - RENAME $obj.tmp-D $obj.d ) - \@ IF F\$SEARCH("$obj.tmp-D") .NES. "" THEN DELETE $obj.tmp-D;* -EOF - ); } sub libobj2shlib { my %args = @_; diff --git a/Configurations/dist.conf b/Configurations/dist.conf new file mode 100644 index 00000000..2a458bcd --- /dev/null +++ b/Configurations/dist.conf @@ -0,0 +1,12 @@ +## -*- mode: perl; -*- +## Build configuration targets for openssl-team members + +# This is to support 'make dist' +my %targets = ( + "dist" => { + inherit_from => [ 'BASE_unix' ], + CC => "cc", + CFLAGS => "-O", + thread_scheme => "(unknown)", + }, +); diff --git a/Configurations/unix-Makefile.tmpl b/Configurations/unix-Makefile.tmpl index 0be8cb15..44512320 100644 --- a/Configurations/unix-Makefile.tmpl +++ b/Configurations/unix-Makefile.tmpl @@ -12,6 +12,7 @@ our $shlibextsimple = $target{shared_extension_simple} || ".so"; our $shlibextimport = $target{shared_import_extension} || ""; our $dsoext = $target{dso_extension} || ".so"; + our $makedepprog = $disabled{makedepend} ? undef : $config{makedepprog}; sub windowsdll { $config{target} =~ /^(?:Cygwin|mingw)/ } @@ -105,12 +106,9 @@ DEPS={- join(" ", map { (my $x = $_) =~ s|\.o$|$depext|; $x; } grep { $unified_info{sources}->{$_}->[0] =~ /\.c$/ } keys %{$unified_info{sources}}); -} {- output_on() if $disabled{makedepend}; "" -} -GENERATED_MANDATORY={- join(" ", @{$unified_info{depends}->{""}} ) -} -GENERATED={- join(" ", - ( grep { defined $unified_info{generate}->{$_} } - map { @{$unified_info{sources}->{$_}} } - grep { /\.o$/ } keys %{$unified_info{sources}} ), - ( grep { /\.h$/ } keys %{$unified_info{generate}} )) -} +GENERATED_MANDATORY={- join(" ", @{$unified_info{depends}->{""}}) -} +GENERATED={- # common0.tmpl provides @generated + join(" ", @generated ) -} INSTALL_LIBS={- join(" ", map { lib($_) } @{$unified_info{install}->{libraries}}) -} INSTALL_SHLIBS={- join(" ", map { shlib($_) } @{$unified_info{install}->{libraries}}) -} @@ -355,6 +353,11 @@ build_apps build_tests: build_programs # Convenience target to prebuild all generated files, not just the mandatory # ones build_all_generated: $(GENERATED_MANDATORY) $(GENERATED) + @ : {- output_off() if $disabled{makedepend}; "" -} + @echo "Warning: consider configuring with no-makedepend, because if" + @echo " target system doesn't have $(PERL)," + @echo " then make will fail..." + @ : {- output_on() if $disabled{makedepend}; "" -} test: tests {- dependmagic('tests'); -}: build_programs_nodep build_engines_nodep link-utils @@ -366,7 +369,7 @@ test: tests RESULT_D=test-runs \ PERL="$(PERL)" \ EXE_EXT={- $exeext -} \ - OPENSSL_ENGINES=`cd ../$(BLDDIR)/engines; pwd` \ + OPENSSL_ENGINES=`cd ../$(BLDDIR)/engines 2>/dev/null && pwd` \ OPENSSL_DEBUG_MEMORY=on \ $(PERL) ../$(SRCDIR)/test/run_tests.pl $(TESTS) ) @ : {- if ($disabled{tests}) { output_on(); } else { output_off(); } "" -} @@ -387,9 +390,13 @@ uninstall: uninstall_docs uninstall_sw libclean: @set -e; for s in $(SHLIB_INFO); do \ + if [ "$$s" = ";" ]; then continue; fi; \ s1=`echo "$$s" | cut -f1 -d";"`; \ s2=`echo "$$s" | cut -f2 -d";"`; \ - $(ECHO) $(RM) $$s1; \ + $(ECHO) $(RM) $$s1; {- output_off() unless windowsdll(); "" -}\ + $(RM) apps/$$s1; \ + $(RM) test/$$s1; \ + $(RM) fuzz/$$s1; {- output_on() unless windowsdll(); "" -}\ $(RM) $$s1; \ if [ "$$s1" != "$$s2" ]; then \ $(ECHO) $(RM) $$s2; \ @@ -401,7 +408,7 @@ libclean: clean: libclean $(RM) $(PROGRAMS) $(TESTPROGS) $(ENGINES) $(SCRIPTS) - $(RM) $(GENERATED) + $(RM) $(GENERATED_MANDATORY) $(GENERATED) -$(RM) `find . -name '*{- $depext -}' -a \! -path "./.git/*"` -$(RM) `find . -name '*{- $objext -}' -a \! -path "./.git/*"` $(RM) core @@ -419,7 +426,9 @@ distclean: clean # concatenate only if that is true. depend: @: {- output_off() if $disabled{makedepend}; "" -} - @$(PERL) $(SRCDIR)/util/add-depends.pl + @$(PERL) $(SRCDIR)/util/add-depends.pl {- + defined $makedepprog && $makedepprog =~ /\/makedepend/ + ? 'makedepend' : 'gcc' -} @: {- output_on() if $disabled{makedepend}; "" -} # Install helper targets ############################################# @@ -788,7 +797,7 @@ tar: mkdir -p $$TMPDIR/$$DISTDIR; \ (cd $(SRCDIR); \ excl_re=`git submodule status | sed -e 's/^.//' | cut -d' ' -f2`; \ - excl_re="^(fuzz/corpora|`echo $$excl_re | sed -e 's/ /$$|/g'`\$$)"; \ + excl_re="^(fuzz/corpora|Configurations/.*\.norelease\.conf|`echo $$excl_re | sed -e 's/ /$$|/g'`\$$)"; \ echo "$$excl_re"; \ git ls-tree -r --name-only --full-tree HEAD \ | egrep -v "$$excl_re" \ @@ -951,7 +960,7 @@ EOF } return <<"EOF"; $args{src}: $args{generator}->[0] $deps - \$(CPP) $incs $cppflags $args{generator}->[0] | \\ + \$(CC) $incs $cppflags -E $args{generator}->[0] | \\ \$(PERL) -ne '/^#(line)?\\s*[0-9]+/ or print' > \$@ EOF } @@ -970,12 +979,10 @@ EOF my $cmd; my $cmdflags; my $cmdcompile; - my $makedepprog = $disabled{makedepend} ? undef : $config{makedepprog}; if (grep /\.rc$/, @srcs) { $cmd = '$(RC)'; $cmdflags = '$(RCFLAGS)'; $cmdcompile = ''; - $makedepprog = undef; } elsif (grep /\.(cc|cpp)$/, @srcs) { $cmd = '$(CXX)'; $cmdcompile = ' -c'; @@ -1001,20 +1008,17 @@ $obj$objext: $deps $cmd $cmdflags -c -o \$\@ $srcs EOF } elsif (grep /\.S$/, @srcs) { - # In case one wonders why not just $(CC) -c file.S. While it - # does work with contemporary compilers, there are some legacy - # ones that get it wrong. Hence the elaborate scheme... We - # don't care to maintain dependecy lists, because dependency - # is rather weak, at most one header file that lists constants - # which are assigned in ascending order. + # Originally there was mutli-step rule with $(CC) -E file.S + # followed by $(CC) -c file.s. It compensated for one of + # legacy platform compiler's inability to handle .S files. + # The platform is long discontinued by vendor so there is + # hardly a point to drag it along... $recipe .= <<"EOF"; $obj$objext: $deps - ( trap "rm -f \$@.*" INT 0; \\ - \$(CPP) $incs $cmdflags $srcs | \\ - \$(PERL) -ne '/^#(line)?\\s*[0-9]+/ or print' > \$@.s && \\ - $cmd $cmdflags -c -o \$\@ \$@.s ) + $cmd $incs $cmdflags -c -o \$\@ $srcs EOF - } elsif (defined $makedepprog && $makedepprog !~ /\/makedepend/) { + } elsif (defined $makedepprog && $makedepprog !~ /\/makedepend/ + && !grep /\.rc$/, @srcs) { $recipe .= <<"EOF"; $obj$objext: $deps $cmd $incs $cmdflags -MMD -MF $obj$depext.tmp -MT \$\@ -c -o \$\@ $srcs @@ -1032,14 +1036,8 @@ $obj$objext: $deps EOF if (defined $makedepprog && $makedepprog =~ /\/makedepend/) { $recipe .= <<"EOF"; - -\$(MAKEDEPEND) -f- -o"|\$\@" -- $incs $cmdflags -- $srcs \\ - >$obj$depext.tmp 2>/dev/null - -\$(PERL) -i -pe 's/^.*\\|//; s/ \\/(\\\\.|[^ ])*//; \$\$_ = undef if (/: *\$\$/ || /^(#.*| *)\$\$/); \$\$_.="\\n" unless !defined(\$\$_) or /\\R\$\$/g;' $obj$depext.tmp - \@if cmp $obj$depext.tmp $obj$depext > /dev/null 2> /dev/null; then \\ - rm -f $obj$depext.tmp; \\ - else \\ - mv $obj$depext.tmp $obj$depext; \\ - fi + \$(MAKEDEPEND) -f- -Y -- $incs $cmdflags -- $srcs 2>/dev/null \\ + > $obj$depext EOF } } @@ -1064,10 +1062,10 @@ EOF my $linklibs = join("", map { my $f = basename($_); (my $l = $f) =~ s/^lib//; " -l$l" } @{$args{deps}}); - my @objs = map { (my $x = $_) =~ s|\.o$|$objext|; $x } - grep { $_ =~ m|\.o$| } + my @objs = map { (my $x = $_) =~ s|\.o$||; "$x$objext" } + grep { $_ !~ m/\.(?:def|map)$/ } @{$args{objs}}; - my @defs = grep { $_ =~ /\.(def|map)$/ } @{$args{objs}}; + my @defs = grep { $_ =~ /\.(?:def|map)$/ } @{$args{objs}}; my @deps = compute_lib_depends(@{$args{deps}}); die "More than one exported symbol map" if scalar @defs > 1; my $objs = join(" ", @objs); @@ -1126,7 +1124,9 @@ EOF my $linklibs = join("", map { my $f = basename($_); (my $l = $f) =~ s/^lib//; " -l$l" } @{$args{deps}}); - my @objs = map { (my $x = $_) =~ s|\.o$|$objext|; $x } @{$args{objs}}; + my @objs = map { (my $x = $_) =~ s|\.o$||; "$x$objext" } + grep { $_ !~ m/\.(?:def|map)$/ } + @{$args{objs}}; my @deps = compute_lib_depends(@{$args{deps}}); my $objs = join(" ", @objs); my $deps = join(" ", @deps); @@ -1154,7 +1154,7 @@ EOF my $bin = $args{bin}; my $bind = dirname($bin); my $binn = basename($bin); - my $objs = join(" ", map { (my $x = $_) =~ s|\.o$|$objext|; $x } + my $objs = join(" ", map { (my $x = $_) =~ s|\.o$||; "$x$objext" } @{$args{objs}}); my $deps = join(" ",compute_lib_depends(@{$args{deps}})); my @linkdirs = (); diff --git a/Configurations/windows-makefile.tmpl b/Configurations/windows-makefile.tmpl index b2742e01..11acdf00 100644 --- a/Configurations/windows-makefile.tmpl +++ b/Configurations/windows-makefile.tmpl @@ -88,12 +88,9 @@ DEPS={- join(" ", map { (my $x = $_) =~ s|\.o$|$depext|; $x; } keys %{$unified_info{sources}}); -} {- output_on() if $disabled{makedepend}; "" -} GENERATED_MANDATORY={- join(" ", @{$unified_info{depends}->{""}} ) -} -GENERATED={- join(" ", - ( map { (my $x = $_) =~ s|\.[sS]$|\.asm|; $x } - grep { defined $unified_info{generate}->{$_} } - map { @{$unified_info{sources}->{$_}} } - grep { /\.o$/ } keys %{$unified_info{sources}} ), - ( grep { /\.h$/ } keys %{$unified_info{generate}} )) -} +GENERATED={- # common0.tmpl provides @generated + join(" ", map { (my $x = $_) =~ s|\.[sS]$|.asm|; $x } + @generated) -} INSTALL_LIBS={- join(" ", map { lib($_) } @{$unified_info{install}->{libraries}}) -} INSTALL_SHLIBS={- join(" ", map { shlib($_) } @{$unified_info{install}->{libraries}}) -} @@ -207,10 +204,10 @@ CNF_ASFLAGS={- join(' ', $target{asflags} || (), @{$config{asflags}}) -} CNF_CPPFLAGS={- our $cppfags2 = join(' ', $target{cppflags} || (), - (map { quotify_l("-D".$_) } @{$target{defines}}, - @{$config{defines}}), - (map { quotify_l("-I".$_) } @{$target{includes}}, - @{$config{includes}}), + (map { '-D'.quotify1($_) } @{$target{defines}}, + @{$config{defines}}), + (map { '-I'.quotify1($_) } @{$target{includes}}, + @{$config{includes}}), @{$config{cppflags}}) -} CNF_CFLAGS={- join(' ', $target{cflags} || (), @{$config{cflags}}) -} @@ -233,12 +230,12 @@ LIB_ASFLAGS={- join(' ', $target{lib_asflags} || (), LIB_CPPFLAGS={- our $lib_cppflags = join(' ', $target{lib_cppflags} || (), $target{shared_cppflag} || (), - (map { quotify_l("-D".$_) } + (map { '-D'.quotify1($_) } @{$target{lib_defines}}, @{$target{shared_defines}}, @{$config{lib_defines}}, @{$config{shared_defines}}), - (map { quotify_l("-I".$_) } + (map { '-I'.quotify1($_) } @{$target{lib_includes}}, @{$target{shared_includes}}, @{$config{lib_includes}}, @@ -246,7 +243,7 @@ LIB_CPPFLAGS={- our $lib_cppflags = @{$config{lib_cppflags}}, @{$config{shared_cppflag}}); join(' ', $lib_cppflags, - (map { quotify_l("-D".$_) } + (map { '-D'.quotify1($_) } "OPENSSLDIR=\"$openssldir\"", "ENGINESDIR=\"$enginesdir\""), '$(CNF_CPPFLAGS)', '$(CPPFLAGS)') -} @@ -322,6 +319,11 @@ build_apps build_tests: build_programs # Convenience target to prebuild all generated files, not just the mandatory # ones build_all_generated: $(GENERATED_MANDATORY) $(GENERATED) + @rem {- output_off() if $disabled{makedepend}; "" -} + @echo "Warning: consider configuring with no-makedepend, because if" + @echo " target system doesn't have $(PERL)," + @echo " then make will fail..." + @rem {- output_on() if $disabled{makedepend}; "" -} test: tests {- dependmagic('tests'); -}: build_programs_nodep build_engines_nodep @@ -351,30 +353,20 @@ install: install_sw install_ssldirs install_docs uninstall: uninstall_docs uninstall_sw libclean: - "$(PERL)" -e "map { m/(.*)\.dll$$/; unlink glob """$$1.*"""; } @ARGV" $(SHLIBS) - "$(PERL)" -e "map { m/(.*)\.dll$$/; unlink glob """apps/$$1.*"""; } @ARGV" $(SHLIBS) - "$(PERL)" -e "map { m/(.*)\.dll$$/; unlink glob """test/$$1.*"""; } @ARGV" $(SHLIBS) - "$(PERL)" -e "map { m/(.*)\.dll$$/; unlink glob """fuzz/$$1.*"""; } @ARGV" $(SHLIBS) - -del /Q /F $(LIBS) - -del /Q ossl_static.pdb + "$(PERL)" -e "map { m/(.*)\.dll$$/; unlink glob """{.,apps,test,fuzz}/$$1.*"""; } @ARGV" $(SHLIBS) + -del /Q /F $(LIBS) libcrypto.* libssl.* ossl_static.pdb clean: libclean {- join("\n\t", map { "-del /Q /F $_" } @PROGRAMS) -} -del /Q /F $(ENGINES) -del /Q /F $(SCRIPTS) + -del /Q /F $(GENERATED_MANDATORY) -del /Q /F $(GENERATED) - -del /Q /S /F *.d - -del /Q /S /F *.obj - -del /Q /S /F *.pdb - -del /Q /F *.exp - -del /Q /F apps\*.exp - -del /Q /F engines\*.exp - -del /Q /S /F engines\*.ilk - -del /Q /S /F engines\*.lib - -del /Q /S /F apps\*.lib - -del /Q /S /F engines\*.manifest - -del /Q /S /F apps\*.manifest - -del /Q /S /F test\*.manifest + -del /Q /S /F *.d *.obj *.pdb *.ilk *.manifest + -del /Q /S /F engines\*.lib engines\*.exp + -del /Q /S /F apps\*.lib apps\*.rc apps\*.res apps\*.exp + -del /Q /S /F test\*.exp + -rmdir /Q /S test\test-runs distclean: clean -del /Q /F configdata.pm @@ -382,7 +374,7 @@ distclean: clean depend: @ rem {- output_off() if $disabled{makedepend}; "" -} - @ "$(PERL)" "$(SRCDIR)\util\add-depends.pl" + @ "$(PERL)" "$(SRCDIR)\util\add-depends.pl" "VC" @ rem {- output_on() if $disabled{makedepend}; "" -} # Install helper targets ############################################# @@ -420,7 +412,8 @@ install_dev: @"$(PERL)" "$(SRCDIR)\util\copy.pl" "$(SRCDIR)\ms\applink.c" \ "$(INSTALLTOP)\include\openssl" @rem {- output_on() unless grep { $_ eq "OPENSSL_USE_APPLINK" } @{$config{defines}}; "" -} - @"$(PERL)" "$(SRCDIR)\util\copy.pl" "$(SRCDIR)\include\openssl\*.h" \ + @"$(PERL)" "$(SRCDIR)\util\copy.pl" "-exclude_re=/__DECC_" \ + "$(SRCDIR)\include\openssl\*.h" \ "$(INSTALLTOP)\include\openssl" @"$(PERL)" "$(SRCDIR)\util\copy.pl" $(BLDDIR)\include\openssl\*.h \ "$(INSTALLTOP)\include\openssl" @@ -595,21 +588,18 @@ EOF return <<"EOF"; $obj$objext: $deps \$(AS) $asflags \$(ASOUTFLAG)\$\@ $srcs +EOF + } elsif ($srcs[0] =~ /.S$/) { + return <<"EOF"; +$obj$objext: $deps + \$(CC) /EP /D__ASSEMBLER__ $cflags $srcs > \$@.asm && \$(AS) $asflags \$(ASOUTFLAG)\$\@ \$@.asm EOF } return <<"EOF" if (!$disabled{makedepend}); $obj$depext: $deps - \$(CC) $cflags /Zs /showIncludes $srcs 2>&1 | \\ - "\$(PERL)" -n << > $obj$depext -chomp; -s/^Note: including file: *//; -\$\$collect{\$\$_} = 1; -END { print '$obj$objext: ',join(" ", sort keys \%collect),"\\n" } -<< + \$(CC) $cflags /Zs /showIncludes $srcs 2>&1 > $obj$depext $obj$objext: $obj$depext - \$(CC) $cflags -c \$(COUTFLAG)\$\@ @<< -$srcs -<< + \$(CC) $cflags -c \$(COUTFLAG)\$\@ $srcs EOF return <<"EOF" if ($disabled{makedepend}); $obj$objext: $deps @@ -638,6 +628,7 @@ EOF return <<"EOF" $target: $deps IF EXIST $shlib$shlibext.manifest DEL /F /Q $shlib$shlibext.manifest + IF EXIST \$@ DEL /F /Q \$@ \$(LD) \$(LDFLAGS) \$(LIB_LDFLAGS) \\ /implib:\$@ \$(LDOUTFLAG)$shlib$shlibext$shared_def @<< || (DEL /Q \$(\@B).* $shlib.* && EXIT 1) $objs diff --git a/Configure b/Configure index adb098e7..62c354ab 100755 --- a/Configure +++ b/Configure @@ -179,6 +179,10 @@ my $apitable = { our %table = (); our %config = (); our %withargs = (); +our $now_printing; # set to current entry's name in print_table_entry + # (todo: right thing would be to encapsulate name + # into %target [class] and make print_table_entry + # a method) # Forward declarations ############################################### @@ -297,7 +301,7 @@ $config{sdirs} = [ "objects", "md2", "md4", "md5", "sha", "mdc2", "hmac", "ripemd", "whrlpool", "poly1305", "blake2", "siphash", "sm3", "des", "aes", "rc2", "rc4", "rc5", "idea", "aria", "bf", "cast", "camellia", "seed", "sm4", "chacha", "modes", - "bn", "ec", "rsa", "dsa", "dh", "dso", "engine", + "bn", "ec", "rsa", "dsa", "dh", "sm2", "dso", "engine", "buffer", "bio", "stack", "lhash", "rand", "err", "evp", "asn1", "pem", "x509", "x509v3", "conf", "txt_db", "pkcs7", "pkcs12", "comp", "ocsp", "ui", "cms", "ts", "srp", "cmac", "ct", "async", "kdf", "store" @@ -321,6 +325,7 @@ my @disablables = ( "async", "autoalginit", "autoerrinit", + "autoload-config", "bf", "blake2", "camellia", @@ -382,6 +387,7 @@ my @disablables = ( "seed", "shared", "siphash", + "sm2", "sm3", "sm4", "sock", @@ -418,10 +424,10 @@ my %deprecated_disablables = ( "ui" => "ui-console", ); -# All of the following is disabled by default (RC5 was enabled before 0.9.8): +# All of the following are disabled by default: our %disabled = ( # "what" => "comment" - "asan" => "default", + "asan" => "default", "crypto-mdebug" => "default", "crypto-mdebug-backtrace" => "default", "devcryptoeng" => "default", @@ -484,7 +490,8 @@ my @disable_cascades = ( "apps" => [ "tests" ], "tests" => [ "external-tests" ], "comp" => [ "zlib" ], - "ec" => [ "tls1_3" ], + "ec" => [ "tls1_3", "sm2" ], + "sm3" => [ "sm2" ], sub { !$disabled{"unit-test"} } => [ "heartbeats" ], sub { !$disabled{"msan"} } => [ "asm" ], @@ -523,28 +530,30 @@ my $list_separator_re = { VMS => qr/(? qr/(? {$^O} // qr/(? undef, + AR => env('AR'), ARFLAGS => [], AS => undef, ASFLAGS => [], - CC => undef, + CC => env('CC'), CFLAGS => [], - CXX => undef, + CXX => env('CXX'), CXXFLAGS => [], CPP => undef, CPPFLAGS => [], # -D, -I, -Wp, CPPDEFINES => [], # Alternative for -D CPPINCLUDES => [], # Alternative for -I - CROSS_COMPILE => undef, - HASHBANGPERL=> undef, + CROSS_COMPILE => env('CROSS_COMPILE'), + HASHBANGPERL=> env('HASHBANGPERL') || env('PERL'), LD => undef, LDFLAGS => [], # -L, -Wl, LDLIBS => [], # -l MT => undef, MTFLAGS => [], - RANLIB => undef, - RC => undef, + RANLIB => env('RANLIB'), + RC => env('RC') || env('WINDRES'), RCFLAGS => [], RM => undef, ); @@ -585,13 +594,13 @@ my %target_attr_translate =( ); # Initialisers coming from 'config' scripts -$config{defines} = [ split(/$list_separator_re/, env('__CNF_CPPDEFINES')) ], -$config{includes} = [ split(/$list_separator_re/, env('__CNF_CPPINCLUDES')) ], -$config{cppflags} = [ env('__CNF_CPPFLAGS') || () ], -$config{cflags} = [ env('__CNF_CFLAGS') || () ], -$config{cxxflags} = [ env('__CNF_CXXFLAGS') || () ], -$config{lflags} = [ env('__CNF_LDFLAGS') || () ], -$config{ex_libs} = [ env('__CNF_LDLIBS') || () ], +$config{defines} = [ split(/$list_separator_re/, env('__CNF_CPPDEFINES')) ]; +$config{includes} = [ split(/$list_separator_re/, env('__CNF_CPPINCLUDES')) ]; +$config{cppflags} = [ env('__CNF_CPPFLAGS') || () ]; +$config{cflags} = [ env('__CNF_CFLAGS') || () ]; +$config{cxxflags} = [ env('__CNF_CXXFLAGS') || () ]; +$config{lflags} = [ env('__CNF_LDFLAGS') || () ]; +$config{ex_libs} = [ env('__CNF_LDLIBS') || () ]; $config{openssl_api_defines}=[]; $config{openssl_algorithm_defines}=[]; @@ -602,6 +611,7 @@ $config{options}=""; $config{build_type} = "release"; my $target=""; +my %cmdvars = (); # Stores FOO='blah' type arguments my %unsupported_options = (); my %deprecated_options = (); # If you change this, update apps/version.c @@ -614,7 +624,7 @@ while (@argvcopy) # Support env variable assignments among the options if (m|^(\w+)=(.+)?$|) { - $config{perlenv}->{$1} = $2; + $cmdvars{$1} = $2; # Every time a variable is given as a configuration argument, # it acts as a reset if the variable. if (exists $user{$1}) @@ -635,7 +645,9 @@ while (@argvcopy) { s/^([^=]*)/lc($1)/e; } - s /^-no-/no-/; # some people just can't read the instructions + + # some people just can't read the instructions, clang people have to... + s/^-no-(?!integrated-as)/no-/; # rewrite some options in "enable-..." form s /^-?-?shared$/enable-shared/; @@ -891,36 +903,46 @@ while (@argvcopy) } } -# If any %useradd entry has been set, we must check that the environment -# variables haven't been set. We start by checking of any %useradd entry +# If any %useradd entry has been set, we must check that the "make +# variables" haven't been set. We start by checking of any %useradd entry # is set. if (grep { scalar @$_ > 0 } values %useradd) { # Hash of env / make variables names. The possible values are: - # 1 - environment set + # 1 - "make vars" # 2 - %useradd entry set # 3 - both set - my %detected_env = + my %detected_vars = map { my $v = 0; - $v += 1 if env($_); + $v += 1 if $cmdvars{$_}; $v += 2 if @{$useradd{$_}}; $_ => $v } keys %useradd; - # If any of the corresponding environment variables is set, we error - if (grep { $_ & 1 } values %detected_env) { - my $names = join(', ', grep { $detected_env{$_} > 0 } - sort keys %detected_env); + # If any of the corresponding "make variables" is set, we error + if (grep { $_ & 1 } values %detected_vars) { + my $names = join(', ', grep { $detected_vars{$_} > 0 } + sort keys %detected_vars); die <<"_____"; -***** Mixing env / make variables and additional compiler/linker flags as +***** Mixing make variables and additional compiler/linker flags as ***** configure command line option is not permitted. -***** Affected env / make variables: $names +***** Affected make variables: $names _____ } } +# Check through all supported command line variables to see if any of them +# were set, and canonicalise the values we got. If no compiler or linker +# flag or anything else that affects %useradd was set, we also check the +# environment for values. +my $anyuseradd = + grep { defined $_ && (ref $_ ne 'ARRAY' || @$_) } values %useradd; foreach (keys %user) { - my $value = env($_); - $value //= defined $user_synonyms{$_} ? env($user_synonyms{$_}) : undef; + my $value = $cmdvars{$_}; + $value //= env($_) unless $anyuseradd; + $value //= + defined $user_synonyms{$_} ? $cmdvars{$user_synonyms{$_}} : undef; + $value //= defined $user_synonyms{$_} ? env($user_synonyms{$_}) : undef + unless $anyuseradd; if (defined $value) { if (ref $user{$_} eq 'ARRAY') { @@ -1215,29 +1237,6 @@ if ($target =~ /linux.*-mips/ && !$disabled{asm} unshift @{$config{cxxflags}}, $value if $config{CXX}; } -# The DSO code currently always implements all functions so that no -# applications will have to worry about that from a compilation point -# of view. However, the "method"s may return zero unless that platform -# has support compiled in for them. Currently each method is enabled -# by a define "DSO_" ... we translate the "dso_scheme" config -# string entry into using the following logic; -if (!$disabled{dso} && $target{dso_scheme} ne "") - { - $target{dso_scheme} =~ tr/[a-z]/[A-Z]/; - if ($target{dso_scheme} eq "DLFCN") - { - unshift @{$config{lib_defines}}, "DSO_DLFCN", "HAVE_DLFCN_H"; - } - elsif ($target{dso_scheme} eq "DLFCN_NO_H") - { - unshift @{$config{lib_defines}}, "DSO_DLFCN"; - } - else - { - unshift @{$config{lib_defines}}, "DSO_$target{dso_scheme}"; - } - } - # If threads aren't disabled, check how possible they are unless ($disabled{threads}) { if ($auto_threads) { @@ -1360,6 +1359,9 @@ unless ($disabled{asm}) { push @{$config{lib_defines}}, "SHA256_ASM" if ($target{sha1_asm_src} =~ /sha256/); push @{$config{lib_defines}}, "SHA512_ASM" if ($target{sha1_asm_src} =~ /sha512/); } + if ($target{keccak1600_asm_src} ne $table{DEFAULTS}->{keccak1600_asm_src}) { + push @{$config{lib_defines}}, "KECCAK1600_ASM"; + } if ($target{rc4_asm_src} ne $table{DEFAULTS}->{rc4_asm_src}) { push @{$config{lib_defines}}, "RC4_ASM"; } @@ -1405,7 +1407,7 @@ unless ($disabled{asm}) { } } -my %predefined = compiler_predefined($config{CC}); +my %predefined = compiler_predefined($config{CROSS_COMPILE}.$config{CC}); # Check for makedepend capabilities. if (!$disabled{makedepend}) { @@ -1413,9 +1415,11 @@ if (!$disabled{makedepend}) { # For VC- and vms- targets, there's nothing more to do here. The # functionality is hard coded in the corresponding build files for # cl (Windows) and CC/DECC (VMS). - } elsif ($predefined{__GNUC__} >= 3) { + } elsif (($predefined{__GNUC__} // -1) >= 3 + && !($predefined{__APPLE_CC__} && !$predefined{__clang__})) { # We know that GNU C version 3 and up as well as all clang - # versions support dependency generation + # versions support dependency generation, but Xcode did not + # handle $cc -M before clang support (but claims __GNUC__ = 3) $config{makedepprog} = "\$(CROSS_COMPILE)$config{CC}"; } else { # In all other cases, we look for 'makedepend', and disable the @@ -1425,6 +1429,27 @@ if (!$disabled{makedepend}) { } } +if (!$disabled{asm}) { + # probe for -Wa,--noexecstack option... + if ($predefined{__clang__}) { + # clang has builtin assembler, which doesn't recognize --help, + # but it apparently recognizes the option in question on all + # supported platforms even when it's meaningless. In other words + # probe would fail, but probed option always accepted... + push @{$config{cflags}}, "-Wa,--noexecstack", "-Qunused-arguments"; + } elsif ($^O ne 'VMS') { + my $cc = $config{CROSS_COMPILE}.$config{CC}; + open(PIPE, "$cc -Wa,--help -c -o null.$$.o -x assembler /dev/null 2>&1 |"); + while() { + if (m/--noexecstack/) { + push @{$config{cflags}}, "-Wa,--noexecstack"; + last; + } + } + close(PIPE); + unlink("null.$$.o"); + } +} # Deal with bn_ops ################################################### @@ -1466,11 +1491,6 @@ if (defined($config{api})) { push @{$config{defines}}, $apiflag; } -if (defined($predefined{__clang__}) && !$disabled{asm}) { - push @{$config{cflags}}, "-Qunused-arguments"; - push @{$config{cxxflags}}, "-Qunused-arguments" if $config{CXX}; -} - if ($strict_warnings) { my $wopt; @@ -1478,7 +1498,6 @@ if ($strict_warnings) die "ERROR --strict-warnings requires gcc[>=4] or gcc-alike" unless $gccver >= 4; - $gcc_devteam_warn .= " -Wmisleading-indentation" if $gccver >= 6; foreach $wopt (split /\s+/, $gcc_devteam_warn) { push @{$config{cflags}}, $wopt @@ -1518,7 +1537,7 @@ unless ($disabled{"crypto-mdebug-backtrace"}) unless ($disabled{afalgeng}) { $config{afalgeng}=""; - if ($target =~ m/^linux/) { + if (grep { $_ eq 'afalgeng' } @{$target{enable}}) { my $minver = 4*10000 + 1*100 + 0; if ($config{CROSS_COMPILE} eq "") { my $verstr = `uname -r`; @@ -1633,7 +1652,9 @@ if ($builder eq "unified") { die "*** Couldn't find any of:\n", join("\n", @build_file_templates), "\n"; } $config{build_file_templates} - = [ $build_file_template, + = [ cleanfile($srcdir, catfile("Configurations", "common0.tmpl"), + $blddir), + $build_file_template, cleanfile($srcdir, catfile("Configurations", "common.tmpl"), $blddir) ]; @@ -1998,6 +2019,13 @@ EOF $o = cleanfile($buildd, $o, $blddir); $unified_info{sources}->{$ddest}->{$o} = 1; $unified_info{sources}->{$o}->{$s} = 1; + } elsif ($s =~ /\.rc$/) { + # We also recognise resource files + my $o = $_; + $o =~ s/\.rc$/.res/; # Resource configuration + my $o = cleanfile($buildd, $o, $blddir); + $unified_info{sources}->{$ddest}->{$o} = 1; + $unified_info{sources}->{$o}->{$s} = 1; } else { $unified_info{sources}->{$ddest}->{$s} = 1; } @@ -3042,28 +3070,27 @@ sub run_dofile sub compiler_predefined { state %predefined; - my $default_compiler = shift; + my $cc = shift; return () if $^O eq 'VMS'; - die 'compiler_predefined called without a default compiler' - unless $default_compiler; + die 'compiler_predefined called without a compiler command' + unless $cc; - if (! $predefined{$default_compiler}) { - my $cc = "$config{CROSS_COMPILE}$default_compiler"; + if (! $predefined{$cc}) { - $predefined{$default_compiler} = {}; + $predefined{$cc} = {}; # collect compiler pre-defines from gcc or gcc-alike... open(PIPE, "$cc -dM -E -x c /dev/null 2>&1 |"); while (my $l = ) { $l =~ m/^#define\s+(\w+(?:\(\w+\))?)(?:\s+(.+))?/ or last; - $predefined{$default_compiler}->{$1} = $2 // ''; + $predefined{$cc}->{$1} = $2 // ''; } close(PIPE); } - return %{$predefined{$default_compiler}}; + return %{$predefined{$cc}}; } sub which @@ -3090,13 +3117,16 @@ sub which sub env { my $name = shift; + my %opts = @_; - # Note that if $ENV{$name} doesn't exist or is undefined, - # $config{perlenv}->{$name} will be created with the value - # undef. This is intentional. + unless ($opts{cacheonly}) { + # Note that if $ENV{$name} doesn't exist or is undefined, + # $config{perlenv}->{$name} will be created with the value + # undef. This is intentional. - $config{perlenv}->{$name} = $ENV{$name} - if ! exists $config{perlenv}->{$name}; + $config{perlenv}->{$name} = $ENV{$name} + if ! exists $config{perlenv}->{$name}; + } return $config{perlenv}->{$name}; } @@ -3104,8 +3134,8 @@ sub env sub print_table_entry { - my $target = shift; - my %target = resolve_config($target); + local $now_printing = shift; + my %target = resolve_config($now_printing); my $type = shift; # Don't print the templates @@ -3174,7 +3204,7 @@ sub print_table_entry if ($type eq "TABLE") { print "\n"; - print "*** $target\n"; + print "*** $now_printing\n"; foreach (@sequence) { if (ref($target{$_}) eq "ARRAY") { printf "\$%-12s = %s\n", $_, join(" ", @{$target{$_}}); @@ -3185,7 +3215,7 @@ sub print_table_entry } elsif ($type eq "HASH") { my $largest = length((sort { length($a) <=> length($b) } @sequence)[-1]); - print " '$target' => {\n"; + print " '$now_printing' => {\n"; foreach (@sequence) { if ($target{$_}) { if (ref($target{$_}) eq "ARRAY") { diff --git a/INSTALL b/INSTALL index 08758339..52e3f2ae 100644 --- a/INSTALL +++ b/INSTALL @@ -1,4 +1,3 @@ - OPENSSL INSTALLATION -------------------- @@ -22,6 +21,7 @@ * NOTES.VMS (OpenVMS) * NOTES.WIN (any supported Windows) * NOTES.DJGPP (DOS platform with DJGPP) + * NOTES.ANDROID (obviously Android [NDK]) Notational conventions in this document --------------------------------------- @@ -208,12 +208,41 @@ without a path). This flag must be provided if the zlib-dynamic option is not also used. If zlib-dynamic is used then this flag is optional and a default value ("ZLIB1") is - used if not provided. + used if not provided. On VMS: this is the filename of the zlib library (with or without a path). This flag is optional and if not provided then "GNV$LIBZSHR", "GNV$LIBZSHR32" or "GNV$LIBZSHR64" is used by default depending on the pointer size chosen. + + --with-rand-seed=seed1[,seed2,...] + A comma separated list of seeding methods which will be tried + by OpenSSL in order to obtain random input (a.k.a "entropy") + for seeding its cryptographically secure random number + generator (CSPRNG). The current seeding methods are: + + os: Use a trusted operating system entropy source. + This is the default method if such an entropy + source exists. + getrandom: Use the L or equivalent system + call. + devrandom: Use the the first device from the DEVRANDOM list + which can be opened to read random bytes. The + DEVRANDOM preprocessor constant expands to + "/dev/urandom","/dev/random","/dev/srandom" on + most unix-ish operating systems. + egd: Check for an entropy generating daemon. + rdcpu: Use the RDSEED or RDRAND command if provided by + the CPU. + librandom: Use librandom (not implemented yet). + none: Disable automatic seeding. This is the default + on some operating systems where no suitable + entropy source exists, or no support for it is + implemented yet. + + For more information, see the section 'Note on random number + generation' at the end of this document. + no-afalgeng Don't build the AFALG engine. This option will be forced if on a platform that does not support AFALG. @@ -248,6 +277,10 @@ error strings. For a statically linked application this may be undesirable if small executable size is an objective. + no-autoload-config + Don't automatically load the default openssl.cnf file. + Typically OpenSSL will automatically load a system config + file which configures default ssl options. no-capieng Don't build the CAPI engine. This option will be forced if @@ -303,8 +336,13 @@ enable-ec_nistp_64_gcc_128 Enable support for optimised implementations of some commonly - used NIST elliptic curves. This is only supported on some - platforms. + used NIST elliptic curves. + This is only supported on platforms: + - with little-endian storage of non-byte types + - that tolerate misaligned memory references + - where the compiler: + - supports the non-standard type __uint128_t + - defines the built-in macro __SIZEOF_INT128__ enable-egd Build support for gathering entropy from EGD (Entropy @@ -536,7 +574,7 @@ these flags interact with those variables. VAR=value - Assignment if environment variable for Configure. These + Assignment of environment variable for Configure. These work just like normal environment variable assignments, but are supported on all platforms and are confined to the configuration scripts only. These assignments override @@ -561,12 +599,16 @@ CPPDEFINES List of CPP macro definitions, separated by a platform specific character (':' or space for Unix, ';' for Windows, ',' for - VMS). This can be used in place of -D. + VMS). This can be used instead of using + -D (or what corresponds to that on your + compiler) in CPPFLAGS. CPPINCLUDES List of CPP inclusion directories, separated the same way as for CPPDEFINES. This can - be used in place of -I. + be used instead of -I (or what corresponds + to that on your compiler) in CPPFLAGS. HASHBANGPERL Perl invocation to be inserted after '#!' - in public perl scripts. + in public perl scripts (only relevant on + Unix). LD The program linker (not used on Unix, $(CC) is used there). LDFLAGS Flags for the shared library, DSO and @@ -587,6 +629,24 @@ ./config -DFOO CPPFLAGS=-DBAR -DCOOKIE + Backward compatibility note: + + To be compatible with older configuration scripts, the + environment variables are ignored if compiling / linking + flags are given on the command line, except for these: + + AR, CC, CXX, CROSS_COMPILE, HASHBANGPERL, PERL, RANLIB, RC + and WINDRES + + For example, the following command will not see -DBAR: + + CPPFLAGS=-DBAR ./config -DCOOKIE + + However, the following will see both set variables: + + CC=gcc CROSS_COMPILE=x86_64-w64-mingw32- \ + ./config -DCOOKIE + reconf reconfigure Reconfigure from earlier data. This fetches the previous @@ -787,7 +847,7 @@ $ nmake TESTS='test_rsa test_dsa' test # Windows And of course, you can combine (Unix example shown): - + $ make VERBOSE=1 TESTS='test_rsa test_dsa' test You can find the list of available tests like this: @@ -860,7 +920,7 @@ command symbols. [.SYSTEST] Contains the installation verification procedure. [.HTML] Contains the HTML rendition of the manual pages. - + Additionally, install will add the following directories under OPENSSLDIR (the directory given with --openssldir or its default) @@ -1141,10 +1201,22 @@ Availability of cryptographically secure random numbers is required for secret key generation. OpenSSL provides several options to seed the - internal PRNG. If not properly seeded, the internal PRNG will refuse + internal CSPRNG. If not properly seeded, the internal CSPRNG will refuse to deliver random bytes and a "PRNG not seeded error" will occur. - On systems without /dev/urandom (or similar) device, it may be necessary - to install additional support software to obtain a random seed. - Please check out the manual pages for RAND_add(), RAND_bytes(), RAND_egd(), - and the FAQ for more information. + The seeding method can be configured using the --with-rand-seed option, + which can be used to specify a comma separated list of seed methods. + However in most cases OpenSSL will choose a suitable default method, + so it is not necessary to explicitely provide this option. Note also + that not all methods are available on all platforms. + + I) On operating systems which provide a suitable randomness source (in + form of a system call or system device), OpenSSL will use the optimal + available method to seed the CSPRNG from the operating system's + randomness sources. This corresponds to the option --with-rand-seed=os. + + II) On systems without such a suitable randomness source, automatic seeding + and reseeding is disabled (--with-rand-seed=none) and it may be necessary + to install additional support software to obtain a random seed and reseed + the CSPRNG manually. Please check out the manual pages for RAND_add(), + RAND_bytes(), RAND_egd(), and the FAQ for more information. diff --git a/NEWS b/NEWS index c60da874..60c841f3 100644 --- a/NEWS +++ b/NEWS @@ -5,7 +5,7 @@ This file gives a brief overview of the major changes between each OpenSSL release. For more details please read the CHANGES file. - Major changes between OpenSSL 1.1.0g and OpenSSL 1.1.1 [in pre-release] + Major changes between OpenSSL 1.1.0h and OpenSSL 1.1.1 [in pre-release] o Support for TLSv1.3 added o Move the display of configuration data to configdata.pm. @@ -24,6 +24,9 @@ Major changes between OpenSSL 1.1.0g and OpenSSL 1.1.0h [under development] + o Constructed ASN.1 types with a recursive definition could exceed the + stack (CVE-2018-0739) + o Incorrect CRYPTO_memcmp on HP-UX PA-RISC (CVE-2018-0733) o rsaz_1024_mul_avx2 overflow bug on x86_64 (CVE-2017-3738) Major changes between OpenSSL 1.1.0f and OpenSSL 1.1.0g [2 Nov 2017] diff --git a/NOTES.ANDROID b/NOTES.ANDROID new file mode 100644 index 00000000..103ed87f --- /dev/null +++ b/NOTES.ANDROID @@ -0,0 +1,68 @@ + + NOTES FOR ANDROID PLATFORMS + =========================== + + Requirement details + ------------------- + + Beside basic tools like perl and make you'll need to download the Android + NDK. It's available for Linux, Mac OS X and Windows, but only Linux + version was actually tested. There is no reason to believe that Mac OS X + wouldn't work. And as for Windows, it's unclear which "shell" would be + suitable, MSYS2 might have best chances. NDK version should play lesser + role, the goal is to support a range of most recent versions. + + Configuration + ------------- + + Android is naturally cross-compiled target and you can't use ./config. + You have to use ./Configure and name your target explicitly; there are + android-arm, android-arm64, android-mips, android-mip64, android-x86 + and android-x86_64. Do not pass --cross-compile-prefix (as you might + be tempted), as it will be "calculated" automatically based on chosen + platform. Though you still need to know the prefix to extend your PATH, + in order to invoke $(CROSS_COMPILE)gcc and company. (Configure will fail + and give you a hint if you get it wrong.) Apart from PATH adjustment + you need to set ANDROID_NDK environment to point at NDK directory + as /some/where/android-ndk-. NDK customarily supports multiple + Android API levels, e.g. android-14, android-21, etc. By default latest + one available is chosen. If you need to target older platform, pass + additional -D__ANDROID_API__=N to Configure. N is numeric value of the + target platform version. For example, to compile for ICS on ARM with + NDK 10d: + + ANDROID_NDK=/some/where/android-ndk-10d + PATH=$ANDROID_NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin:$PATH + ./Configure android-arm -D__ANDROID_API__=14 + + Caveat lector! Earlier OpenSSL versions relied on additional CROSS_SYSROOT + variable set to $ANDROID_NDK/platforms/android-/arch- to + appoint headers-n-libraries' location. It's still recognized in order + to facilitate migration from older projects. However, since API level + appears in CROSS_SYSROOT value, passing -D__ANDROID_API__=N can be in + conflict, and mixing the two is therefore not supported. Migration to + CROSS_SYSROOT-less setup is recommended. + + One can engage clang by adjusting PATH to cover NDK's clang. Just keep + in mind that if you miss it, Configure will try to use gcc... Also, + PATH would need even further adjustment to cover unprefixed, yet + target-specific, ar and ranlib (or not, if you use binutils-multiarch + on your Linux). + + Running tests (on Linux) + ------------------------ + + This is not actually supported. Notes are meant rather as inspiration. + + Even though build output targets alien system, it's possible to execute + test suite on Linux system by employing qemu-user. The trick is static + linking. Pass -static to Configure, then edit generated Makefile and + remove occurrences of -ldl and -pie flags. You would also need to pick + API version that comes with usable static libraries, 42/2=21 used to + work. Once built, you should be able to + + env EXE_SHELL=qemu- make test + + If you need to pass additional flag to qemu, quotes are your friend, e.g. + + env EXE_SHELL="qemu-mips64el -cpu MIPS64R6-generic" make test diff --git a/NOTES.WIN b/NOTES.WIN index ac215c36..014036c7 100644 --- a/NOTES.WIN +++ b/NOTES.WIN @@ -2,21 +2,50 @@ NOTES FOR THE WINDOWS PLATFORMS =============================== - Requirement details for native (Visual C++) builds - -------------------------------------------------- + Windows targets can be classified as "native", ones that use Windows API + directly, and "hosted" which rely on POSIX-compatible layer. "Native" + targets are VC-* (where "VC" stems from abbreviating Microsoft Visual C + compiler) and mingw[64]. "Hosted" platforms are Cygwin and MSYS[2]. Even + though the latter is not directly supported by OpenSSL Team, it's #1 + popular choice for building MinGW targets. In the nutshell MinGW builds + are always cross-compiled. On Linux and Cygwin they look exactly as such + and require --cross-compile-prefix option. While on MSYS[2] it's solved + rather by placing gcc that produces "MinGW binary" code 1st on $PATH. + This is customarily source of confusion. "Hosted" applications "live" in + emulated file system name space with POSIX-y root, mount points, /dev + and even /proc. Confusion is intensified by the fact that MSYS2 shell + (or rather emulated execve(2) call) examines the binary it's about to + start, and if it's found *not* to be linked with MSYS2 POSIX-y thing, + command line arguments that look like file names get translated from + emulated name space to "native". For example '/c/some/where' becomes + 'c:\some\where', '/dev/null' - 'nul'. This creates an illusion that + there is no difference between MSYS2 shell and "MinGW binary", but + there is. Just keep in mind that "MinGW binary" "experiences" Windows + system in exactly same way as one produced by VC, and in its essence + is indistinguishable from the latter. (Which by the way is why + it's referred to in quotes here, as "MinGW binary", it's just as + "native" as it can get.) + + Visual C++ builds, a.k.a. VC-* + ============================== + + Requirement details + ------------------- In addition to the requirements and instructions listed in INSTALL, these are required as well: - - You need Perl. We recommend ActiveState Perl, available from + - Perl. We recommend ActiveState Perl, available from https://www.activestate.com/ActivePerl. Another viable alternative appears to be Strawberry Perl, http://strawberryperl.com. You also need the perl module Text::Template, available on CPAN. Please read NOTES.PERL for more information. - - You need a C compiler. OpenSSL has been tested to build with these: - - * Visual C++ + - Microsoft Visual C compiler. Since we can't test them all, there is + unavoidable uncertainty about which versions are supported. Latest + version along with couple of previous are certainly supported. On + the other hand oldest one is known not to work. Everything between + falls into best-effort category. - Netwide Assembler, a.k.a. NASM, available from http://www.nasm.us, is required if you intend to utilize assembler modules. Note that NASM @@ -24,10 +53,8 @@ supported. - Visual C++ (native Windows) - --------------------------- - Installation directories + ------------------------ The default installation directories are derived from environment variables. @@ -55,62 +82,36 @@ is, of course, to choose a different set of directories by using --prefix and --openssldir when configuring. - GNU C (Cygwin) - -------------- + mingw and mingw64 + ================= - Cygwin implements a Posix/Unix runtime system (cygwin1.dll) on top of the - Windows subsystem and provides a bash shell and GNU tools environment. - Consequently, a make of OpenSSL with Cygwin is virtually identical to the - Unix procedure. + * MSYS2 shell and development environment installation: - To build OpenSSL using Cygwin, you need to: + Download MSYS2 from https://msys2.github.io/ and follow installation + instructions. Once up and running install even make, perl, (git if + needed,) mingw-w64-i686-gcc and/or mingw-w64-x86_64-gcc. You should + have corresponding MinGW items on your start menu, use *them*, not + generic MSYS2. As implied in opening note, difference between them + is which compiler is found 1st on $PATH. At this point ./config + should recognize correct target, roll as if it was Unix... - * Install Cygwin (see https://cygwin.com/) + * It is also possible to build mingw[64] on Linux or Cygwin by + configuring with corresponding --cross-compile-prefix= option. For + example - * Install Cygwin Perl and ensure it is in the path. Recall that - as least 5.10.0 is required. + ./Configure mingw --cross-compile-prefix=i686-w64-mingw32- ... - * Run the Cygwin bash shell + or - Apart from that, follow the Unix instructions in INSTALL. - - NOTE: "make test" and normal file operations may fail in directories - mounted as text (i.e. mount -t c:\somewhere /home) due to Cygwin - stripping of carriage returns. To avoid this ensure that a binary - mount is used, e.g. mount -b c:\somewhere /home. - - It is also possible to create "conventional" Windows binaries that use - the Microsoft C runtime system (msvcrt.dll or crtdll.dll) using MinGW - development add-on for Cygwin. MinGW is supported even as a standalone - setup as described in the following section. In the context you should - recognize that binaries targeting Cygwin itself are not interchangeable - with "conventional" Windows binaries you generate with/for MinGW. - - - GNU C (MinGW/MSYS) - ------------------ - - * Compiler and shell environment installation: - - MinGW and MSYS are available from http://www.mingw.org/, both are - required. Run the installers and do whatever magic they say it takes - to start MSYS bash shell with GNU tools and matching Perl on its PATH. - "Matching Perl" refers to chosen "shell environment", i.e. if built - under MSYS, then Perl compiled for MSYS must be used. - - Alternatively, one can use MSYS2 from https://msys2.github.io/, - which includes MingW (32-bit and 64-bit). - - * It is also possible to cross-compile it on Linux by configuring - with './Configure --cross-compile-prefix=i386-mingw32- mingw ...'. - Other possible cross compile prefixes include x86_64-w64-mingw32- - and i686-w64-mingw32-. + ./Configure mingw64 --cross-compile-prefix=x86_64-w64-mingw32- ... + This naturally implies that you've installed corresponding add-on + packages. Linking your application - ------------------------ + ======================== - This section applies to non-Cygwin builds. + This section applies to all "native" builds. If you link with static OpenSSL libraries then you're expected to additionally link your application with WS2_32.LIB, GDI32.LIB, @@ -137,3 +138,27 @@ your application code small "shim" snippet, which provides glue between OpenSSL BIO layer and your compiler run-time. See the OPENSSL_Applink manual page for further details. + + Cygwin, "hosted" environment + ============================ + + Cygwin implements a Posix/Unix runtime system (cygwin1.dll) on top of the + Windows subsystem and provides a bash shell and GNU tools environment. + Consequently, a make of OpenSSL with Cygwin is virtually identical to the + Unix procedure. + + To build OpenSSL using Cygwin, you need to: + + * Install Cygwin (see https://cygwin.com/) + + * Install Cygwin Perl and ensure it is in the path. Recall that + as least 5.10.0 is required. + + * Run the Cygwin bash shell + + Apart from that, follow the Unix instructions in INSTALL. + + NOTE: "make test" and normal file operations may fail in directories + mounted as text (i.e. mount -t c:\somewhere /home) due to Cygwin + stripping of carriage returns. To avoid this ensure that a binary + mount is used, e.g. mount -b c:\somewhere /home. diff --git a/README b/README index 84913bce..1942f7bc 100644 --- a/README +++ b/README @@ -1,5 +1,5 @@ - OpenSSL 1.1.1-pre3-dev + OpenSSL 1.1.1-pre7-dev Copyright (c) 1998-2018 The OpenSSL Project Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson diff --git a/README.ECC b/README.ECC deleted file mode 100644 index fa3cad7a..00000000 --- a/README.ECC +++ /dev/null @@ -1,61 +0,0 @@ -NOTE: The OpenSSL Software Foundation has executed a sublicense agreement -entitled "Elliptic Curve Cryptography Patent License Agreement" with the -National Security Agency/ Central Security Service Commercial Solutions -Center (NCSC) dated 2010-11-04. That agreement permits implementation and -distribution of software containing features covered by any or all of the -following patents: - -1.) U.S. Pat. No. 5,761,305 entitled "Key Agreement and Transport Protocol - with Implicit Signatures" issued on June 2, 1998; -2.) Can. Pat. Appl. Ser. No. 2176972 entitled "Key Agreement and Transport - Protocol with Implicit Signature and Reduced Bandwidth" filed on May - 16, 1996; -3.) U.S. Pat. No. 5,889,865 entitled "Key Agreement and Transport Protocol - with Implicit Signatures" issued on March 30, 1999; -4.) U.S. Pat. No. 5,896,455 entitled "Key Agreement and Transport Protocol - with Implicit Signatures" issued on April 20, 1999; -5.) U.S. Pat. No. 5,933,504 entitled "Strengthened Public Key Protocol" - issued on August 3, 1999; -6.) Can. Pat. Appl. Ser. No. 2176866 entitled "Strengthened Public Key - Protocol" filed on May 17, 1996; -7.) E.P. Pat. Appl. Ser. No. 96201322.3 entitled "Strengthened Public Key - Protocol" filed on May 17, 1996; -8.) U.S. Pat. No. 5,999,626 entitled "Digital Signatures on a Smartcard" - issued on December 7, 1999; -9.) Can. Pat. Appl. Ser. No. 2202566 entitled "Digital Signatures on a - Smartcard" filed on April 14, 1997; -10.) E.P. Pat. Appl. No. 97106114.8 entitled "Digital Signatures on a - Smartcard" filed on April 15, 1997; -11.) U.S Pat. No. 6,122,736 entitled "Key Agreement and Transport Protocol - with Implicit Signatures" issued on September 19, 2000; -12.) Can. Pat. Appl. Ser. No. 2174261 entitled "Key Agreement and Transport - Protocol with Implicit Signatures" filed on April 16, 1996; -13.) E.P. Pat. Appl. Ser. No. 96105920.1 entitled "Key Agreement and - Transport Protocol with Implicit Signatures" filed on April 16, 1996; -14.) U.S. Pat. No. 6,141,420 entitled "Elliptic Curve Encryption Systems" - issued on October 31, 2000; -15.) Can. Pat. Appl. Ser. No. 2155038 entitled "Elliptic Curve Encryption - Systems" filed on July 31, 1995; -16.) E.P. Pat. Appl. Ser. No. 95926348.4 entitled "Elliptic Curve Encryption - Systems" filed on July 31, 1995; -17.) U.S. Pat. No. 6,336,188 entitled "Authenticated Key Agreement" issued - on January 1, 2002; -18.) U.S. Pat. No. 6,487,661 entitled "Key Agreement and Transport Protocol" - issued on November 26, 2002; -19.) Can. Pat. Appl. Ser. No. 2174260 entitled "Key Agreement and Transport - Protocol" filed on April 16, 1996; -20.) E.P. Pat. Appl. Ser. No. 96105921.9 entitled "Key Agreement and - Transport Protocol" filed on April 21, 1996; -21.) U.S. Pat. No. 6,563,928 entitled "Strengthened Public Key Protocol" - issued on May 13, 2003; -22.) U.S. Pat. No. 6,618,483 entitled "Elliptic Curve Encryption Systems" - issued September 9, 2003; -23.) U.S. Pat. Appl. Ser. No. 09/434,247 entitled "Digital Signatures on a - Smartcard" filed on November 5, 1999; -24.) U.S. Pat. Appl. Ser. No. 09/558,256 entitled "Key Agreement and - Transport Protocol with Implicit Signatures" filed on April 25, 2000; -25.) U.S. Pat. Appl. Ser. No. 09/942,492 entitled "Digital Signatures on a - Smartcard" filed on August 29, 2001 and published on July 18, 2002; and, -26.) U.S. Pat. Appl. Ser. No. 10/185,735 entitled "Strengthened Public Key - Protocol" filed on July 1, 2000. - diff --git a/apps/CA.pl.in b/apps/CA.pl.in index bbaf6a9a..db3cc383 100644 --- a/apps/CA.pl.in +++ b/apps/CA.pl.in @@ -1,5 +1,5 @@ #!{- $config{HASHBANGPERL} -} -# Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/apps/apps.c b/apps/apps.c index 5a32dc0a..d5a6aea2 100644 --- a/apps/apps.c +++ b/apps/apps.c @@ -25,12 +25,6 @@ #endif #include #include -#ifdef __VMS -# include -# include -# include -# include -#endif #include #include #include @@ -1597,6 +1591,9 @@ CA_DB *load_index(const char *dbfile, DB_ATTR *db_attr) return retdb; } +/* + * Returns > 0 on success, <= 0 on error + */ int index_index(CA_DB *db) { if (!TXT_DB_create_index(db->db, DB_serial, NULL, @@ -2367,116 +2364,6 @@ int app_isdir(const char *name) } #endif -/* app_dirname section */ - -/* - * This exactly follows what POSIX's - * dirname does, but is implemented - * in a more platform independent way. - * - * path dirname - * /usr/lib /usr - * /usr/ / - * usr . - * / / - * . . - * .. . - * "" . - * - * Note: this function also keeps the - * possibility of modifying the 'path' - * string same as POSIX dirname. - */ -static char *posix_dirname(char *path) -{ - size_t l; - char *ret = "."; - - l = strlen(path); - if (l == 0) - goto out; - if (strcmp(path, ".") == 0) - goto out; - if (strcmp(path, "..") == 0) - goto out; - if (strcmp(path, "/") == 0) { - ret = "/"; - goto out; - } - if (path[l - 1] == '/') { - /* /usr/ */ - path[l - 1] = '\0'; - } - if ((ret = strrchr(path, '/')) == NULL) { - /* usr */ - ret = "."; - } else if (ret == path) { - /* /usr */ - *++ret = '\0'; - ret = path; - } else { - /* /usr/lib */ - *ret = '\0'; - ret = path; - } - out: - return ret; -} - -/* - * TODO: implement app_dirname for Windows. - */ -#if !defined(_WIN32) -char *app_dirname(char *path) -{ - return posix_dirname(path); -} -#elif defined(__VMS) -/* - * sys$filescan fills the given item list with pointers into the original - * path string, so all we need to do is to find the file name and simply - * put a NUL byte wherever the FSCN$_NAME pointer points. If there is no - * file name part and the path string isn't the empty string, we know for - * a fact that the whole string is a directory spec and return it as is. - * Otherwise or if that pointer is the starting address of the original - * path string, we know to return "sys$disk:[]", which corresponds to the - * Unixly ".". - * - * If sys$filescan returns an error status, we know that this is not - * parsable as a VMS file spec, and then use the fallback, in case we - * have a Unix type path. - */ -char *app_dirname(char *path) -{ - char *ret = "sys$disk:[]"; - struct dsc$descriptor_s dsc_path = { 0 }; - ile2 itemlist[] = { - {0, FSCN$_NAME, 0}, - {0, 0, 0} - }; - int fields; - int status; - - dsc_path.dsc$a_pointer = path; - dsc_path.dsc$w_length = strlen(path); - status = sys$filescan(&dsc_path, itemlist, &fields, 0, 0); - - if (!(status & 1)) - return posix_dirname(path); - - if ((fields & (1 << FSCN$_NAME)) == 0) { - if (dsc_path.dsc$w_length != 0) - ret = path; - } else if (itemlist[0].ile2$ps_bufaddr != path) { - if (itemlist[0].ile2$ps_bufaddr != path) { - *itemlist[0].ile2$ps_bufaddr = '\0'; - ret = path; - } - } - return ret; -} -#endif - /* raw_read|write section */ #if defined(__VMS) # include "vms_term_sock.h" @@ -2599,7 +2486,7 @@ BIO *dup_bio_err(int format) return b; } -void destroy_prefix_method() +void destroy_prefix_method(void) { BIO_meth_free(prefix_method); prefix_method = NULL; diff --git a/apps/apps.h b/apps/apps.h index aa635276..5b98d275 100644 --- a/apps/apps.h +++ b/apps/apps.h @@ -229,8 +229,9 @@ int set_cert_times(X509 *x, const char *startdate, const char *enddate, OPT_S_ONRESUMP, OPT_S_NOLEGACYCONN, OPT_S_ALLOW_NO_DHE_KEX, \ OPT_S_PRIORITIZE_CHACHA, \ OPT_S_STRICT, OPT_S_SIGALGS, OPT_S_CLIENTSIGALGS, OPT_S_GROUPS, \ - OPT_S_CURVES, OPT_S_NAMEDCURVE, OPT_S_CIPHER, \ + OPT_S_CURVES, OPT_S_NAMEDCURVE, OPT_S_CIPHER, OPT_S_CIPHERSUITES, \ OPT_S_RECORD_PADDING, OPT_S_DEBUGBROKE, OPT_S_COMP, \ + OPT_S_MINPROTO, OPT_S_MAXPROTO, \ OPT_S_NO_RENEGOTIATION, OPT_S_NO_MIDDLEBOX, OPT_S__LAST # define OPT_S_OPTIONS \ @@ -272,13 +273,16 @@ int set_cert_times(X509 *x, const char *startdate, const char *enddate, "Groups to advertise (colon-separated list)" }, \ {"named_curve", OPT_S_NAMEDCURVE, 's', \ "Elliptic curve used for ECDHE (server-side only)" }, \ - {"cipher", OPT_S_CIPHER, 's', "Specify cipher list to be used"}, \ + {"cipher", OPT_S_CIPHER, 's', "Specify TLSv1.2 and below cipher list to be used"}, \ + {"ciphersuites", OPT_S_CIPHERSUITES, 's', "Specify TLSv1.3 ciphersuites to be used"}, \ + {"min_protocol", OPT_S_MINPROTO, 's', "Specify the minimum protocol version to be used"}, \ + {"max_protocol", OPT_S_MAXPROTO, 's', "Specify the maximum protocol version to be used"}, \ {"record_padding", OPT_S_RECORD_PADDING, 's', \ "Block size to pad TLS 1.3 records to."}, \ {"debug_broken_protocol", OPT_S_DEBUGBROKE, '-', \ "Perform all sorts of protocol violations for testing purposes"}, \ - {"no_middlebox", OPT_S_NO_MIDDLEBOX, '-', "Disable TLSv1.3 middlebox compat mode" } - + {"no_middlebox", OPT_S_NO_MIDDLEBOX, '-', \ + "Disable TLSv1.3 middlebox compat mode" } # define OPT_S_CASES \ OPT_S__FIRST: case OPT_S__LAST: break; \ @@ -305,8 +309,11 @@ int set_cert_times(X509 *x, const char *startdate, const char *enddate, case OPT_S_CURVES: \ case OPT_S_NAMEDCURVE: \ case OPT_S_CIPHER: \ + case OPT_S_CIPHERSUITES: \ case OPT_S_RECORD_PADDING: \ case OPT_S_NO_RENEGOTIATION: \ + case OPT_S_MINPROTO: \ + case OPT_S_MAXPROTO: \ case OPT_S_DEBUGBROKE: \ case OPT_S_NO_MIDDLEBOX @@ -604,7 +611,6 @@ void store_setup_crl_download(X509_STORE *st); int app_isdir(const char *); int app_access(const char *, int flag); -char *app_dirname(char *path); int fileno_stdin(void); int fileno_stdout(void); int raw_read_stdin(void *, int); diff --git a/apps/asn1pars.c b/apps/asn1pars.c index a391e0a6..62c70b9c 100644 --- a/apps/asn1pars.c +++ b/apps/asn1pars.c @@ -39,7 +39,7 @@ const OPTIONS asn1parse_options[] = { {"dump", OPT_DUMP, 0, "unknown data in hex form"}, {"dlimit", OPT_DLIMIT, 'p', "dump the first arg bytes of unknown data in hex form"}, - {"strparse", OPT_STRPARSE, 's', + {"strparse", OPT_STRPARSE, 'p', "offset; a series of these can be used to 'dig'"}, {OPT_MORE_STR, 0, 0, "into multiple ASN1 blob wrappings"}, {"genstr", OPT_GENSTR, 's', "string to generate ASN1 structure from"}, @@ -113,13 +113,13 @@ int asn1parse_main(int argc, char **argv) offset = strtol(opt_arg(), NULL, 0); break; case OPT_LENGTH: - length = atoi(opt_arg()); + length = strtol(opt_arg(), NULL, 0); break; case OPT_DUMP: dump = -1; break; case OPT_DLIMIT: - dump = atoi(opt_arg()); + dump = strtol(opt_arg(), NULL, 0); break; case OPT_STRPARSE: sk_OPENSSL_STRING_push(osk, opt_arg()); @@ -205,7 +205,7 @@ int asn1parse_main(int argc, char **argv) num = 0; for (;;) { - if (!BUF_MEM_grow(buf, (int)num + BUFSIZ)) + if (!BUF_MEM_grow(buf, num + BUFSIZ)) goto end; i = BIO_read(in, &(buf->data[num]), BUFSIZ); if (i <= 0) @@ -225,9 +225,9 @@ int asn1parse_main(int argc, char **argv) for (i = 0; i < sk_OPENSSL_STRING_num(osk); i++) { ASN1_TYPE *atmp; int typ; - j = atoi(sk_OPENSSL_STRING_value(osk, i)); - if (j == 0) { - BIO_printf(bio_err, "'%s' is an invalid number\n", + j = strtol(sk_OPENSSL_STRING_value(osk, i), NULL, 0); + if (j <= 0 || j >= tmplen) { + BIO_printf(bio_err, "'%s' is out of range\n", sk_OPENSSL_STRING_value(osk, i)); continue; } @@ -258,14 +258,14 @@ int asn1parse_main(int argc, char **argv) num = tmplen; } - if (offset >= num) { - BIO_printf(bio_err, "Error: offset too large\n"); + if (offset < 0 || offset >= num) { + BIO_printf(bio_err, "Error: offset out of range\n"); goto end; } num -= offset; - if ((length == 0) || ((long)length > num)) + if (length == 0 || length > (unsigned int)num) length = (unsigned int)num; if (derout != NULL) { if (BIO_write(derout, str + offset, length) != (int)length) { diff --git a/apps/build.info b/apps/build.info index e7243733..4a11a18f 100644 --- a/apps/build.info +++ b/apps/build.info @@ -23,6 +23,11 @@ IF[{- !$disabled{apps} -}] INCLUDE[openssl]=.. ../include DEPEND[openssl]=libapps.a ../libssl +IF[{- $config{target} =~ /^(?:Cygwin|mingw|VC-)/ -}] + GENERATE[openssl.rc]=../util/mkrc.pl openssl + SOURCE[openssl]=openssl.rc +ENDIF + {- join("\n ", map { (my $x = $_) =~ s|\.c$|.o|; "DEPEND[$x]=progs.h" } @apps_openssl_src) -} GENERATE[progs.h]=progs.pl $(APPS_OPENSSL) diff --git a/apps/ca.c b/apps/ca.c index 2819fead..60c8f6c3 100644 --- a/apps/ca.c +++ b/apps/ca.c @@ -498,7 +498,7 @@ end_of_options: if (db == NULL) goto end; - if (!index_index(db)) + if (index_index(db) <= 0) goto end; if (get_certificate_status(ser_status, db) != 1) @@ -664,10 +664,6 @@ end_of_options: goto end; } } - if (pp[DB_name][0] == '\0') { - BIO_printf(bio_err, "entry %d: bad Subject\n", i + 1); - goto end; - } } if (verbose) { TXT_DB_write(bio_out, db->db); @@ -676,7 +672,7 @@ end_of_options: BIO_printf(bio_err, "generating index\n"); } - if (!index_index(db)) + if (index_index(db) <= 0) goto end; /*****************************************************************/ @@ -726,8 +722,12 @@ end_of_options: /*****************************************************************/ if (req || gencrl) { - /* FIXME: Is it really always text? */ - Sout = bio_open_default(outfile, 'w', FORMAT_TEXT); + if (spkac_file != NULL) { + output_der = 1; + batch = 1; + } + Sout = bio_open_default(outfile, 'w', + output_der ? FORMAT_ASN1 : FORMAT_TEXT); if (Sout == NULL) goto end; } @@ -735,17 +735,21 @@ end_of_options: if (md == NULL && (md = lookup_conf(conf, section, ENV_DEFAULT_MD)) == NULL) goto end; - if (strcmp(md, "default") == 0) { - int def_nid; - if (EVP_PKEY_get_default_digest_nid(pkey, &def_nid) <= 0) { - BIO_puts(bio_err, "no default digest\n"); + if (strcmp(md, "null") == 0) { + dgst = EVP_md_null(); + } else { + if (strcmp(md, "default") == 0) { + int def_nid; + if (EVP_PKEY_get_default_digest_nid(pkey, &def_nid) <= 0) { + BIO_puts(bio_err, "no default digest\n"); + goto end; + } + md = (char *)OBJ_nid2sn(def_nid); + } + + if (!opt_md(md, &dgst)) { goto end; } - md = (char *)OBJ_nid2sn(def_nid); - } - - if (!opt_md(md, &dgst)) { - goto end; } if (req) { @@ -881,10 +885,6 @@ end_of_options: BIO_printf(bio_err, "Memory allocation failure\n"); goto end; } - if (outfile) { - output_der = 1; - batch = 1; - } } } if (ss_cert_file != NULL) { @@ -938,10 +938,13 @@ end_of_options: if (j > 0) { total_done++; BIO_printf(bio_err, "\n"); - if (!BN_add_word(serial, 1)) + if (!BN_add_word(serial, 1)) { + X509_free(x); goto end; + } if (!sk_X509_push(cert_sk, x)) { BIO_printf(bio_err, "Memory allocation failure\n"); + X509_free(x); goto end; } } @@ -1375,7 +1378,7 @@ static int do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, CONF *lconf, unsigned long certopt, unsigned long nameopt, int default_op, int ext_copy, int selfsign) { - X509_NAME *name = NULL, *CAname = NULL, *subject = NULL, *dn_subject = NULL; + X509_NAME *name = NULL, *CAname = NULL, *subject = NULL; const ASN1_TIME *tm; ASN1_STRING *str, *str2; ASN1_OBJECT *obj; @@ -1408,10 +1411,6 @@ static int do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, BIO_printf(bio_err, "The Subject's Distinguished Name is as follows\n"); name = X509_REQ_get_subject_name(req); - if (X509_NAME_entry_count(name) == 0) { - BIO_printf(bio_err, "Error: The supplied Subject is empty\n"); - goto end; - } for (i = 0; i < X509_NAME_entry_count(name); i++) { ne = X509_NAME_get_entry(name, i); str = X509_NAME_ENTRY_get_data(ne); @@ -1573,109 +1572,6 @@ static int do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, goto end; } - if (X509_NAME_entry_count(subject) == 0) { - BIO_printf(bio_err, - "Error: After applying policy the Subject is empty\n"); - goto end; - } - - if (verbose) - BIO_printf(bio_err, - "The subject name appears to be ok, checking data base for clashes\n"); - - /* - * Build the correct Subject if no e-mail is wanted in the subject. - * And add it later on because of the method extensions are added (altName) - */ - - if (email_dn) { - dn_subject = subject; - } else { - X509_NAME_ENTRY *tmpne; - /* - * Its best to dup the subject DN and then delete any email addresses - * because this retains its structure. - */ - if ((dn_subject = X509_NAME_dup(subject)) == NULL) { - BIO_printf(bio_err, "Memory allocation failure\n"); - goto end; - } - while ((i = X509_NAME_get_index_by_NID(dn_subject, - NID_pkcs9_emailAddress, - -1)) >= 0) { - tmpne = X509_NAME_get_entry(dn_subject, i); - X509_NAME_delete_entry(dn_subject, i); - X509_NAME_ENTRY_free(tmpne); - } - } - - if (BN_is_zero(serial)) - row[DB_serial] = OPENSSL_strdup("00"); - else - row[DB_serial] = BN_bn2hex(serial); - if (row[DB_serial] == NULL) { - BIO_printf(bio_err, "Memory allocation failure\n"); - goto end; - } - - if (db->attributes.unique_subject) { - OPENSSL_STRING *crow = row; - - rrow = TXT_DB_get_by_index(db->db, DB_name, crow); - if (rrow != NULL) { - BIO_printf(bio_err, - "ERROR:There is already a certificate for %s\n", - row[DB_name]); - } - } - if (rrow == NULL) { - rrow = TXT_DB_get_by_index(db->db, DB_serial, row); - if (rrow != NULL) { - BIO_printf(bio_err, - "ERROR:Serial number %s has already been issued,\n", - row[DB_serial]); - BIO_printf(bio_err, - " check the database/serial_file for corruption\n"); - } - } - - if (rrow != NULL) { - BIO_printf(bio_err, "The matching entry has the following details\n"); - if (rrow[DB_type][0] == DB_TYPE_EXP) - p = "Expired"; - else if (rrow[DB_type][0] == DB_TYPE_REV) - p = "Revoked"; - else if (rrow[DB_type][0] == DB_TYPE_VAL) - p = "Valid"; - else - p = "\ninvalid type, Data base error\n"; - BIO_printf(bio_err, "Type :%s\n", p);; - if (rrow[DB_type][0] == DB_TYPE_REV) { - p = rrow[DB_exp_date]; - if (p == NULL) - p = "undef"; - BIO_printf(bio_err, "Was revoked on:%s\n", p); - } - p = rrow[DB_exp_date]; - if (p == NULL) - p = "undef"; - BIO_printf(bio_err, "Expires on :%s\n", p); - p = rrow[DB_serial]; - if (p == NULL) - p = "undef"; - BIO_printf(bio_err, "Serial Number :%s\n", p); - p = rrow[DB_file]; - if (p == NULL) - p = "undef"; - BIO_printf(bio_err, "File name :%s\n", p); - p = rrow[DB_name]; - if (p == NULL) - p = "undef"; - BIO_printf(bio_err, "Subject Name :%s\n", p); - ok = -1; /* This is now a 'bad' error. */ - goto end; - } - /* We are now totally happy, lets make and sign the certificate */ if (verbose) BIO_printf(bio_err, @@ -1785,10 +1681,123 @@ static int do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, goto end; } - /* Set the right value for the noemailDN option */ - if (email_dn == 0) { - if (!X509_set_subject_name(ret, dn_subject)) + if (verbose) + BIO_printf(bio_err, + "The subject name appears to be ok, checking data base for clashes\n"); + + /* Build the correct Subject if no e-mail is wanted in the subject. */ + if (!email_dn) { + X509_NAME_ENTRY *tmpne; + X509_NAME *dn_subject; + + /* + * Its best to dup the subject DN and then delete any email addresses + * because this retains its structure. + */ + if ((dn_subject = X509_NAME_dup(subject)) == NULL) { + BIO_printf(bio_err, "Memory allocation failure\n"); goto end; + } + while ((i = X509_NAME_get_index_by_NID(dn_subject, + NID_pkcs9_emailAddress, + -1)) >= 0) { + tmpne = X509_NAME_get_entry(dn_subject, i); + X509_NAME_delete_entry(dn_subject, i); + X509_NAME_ENTRY_free(tmpne); + } + + if (!X509_set_subject_name(ret, dn_subject)) { + X509_NAME_free(dn_subject); + goto end; + } + X509_NAME_free(dn_subject); + } + + row[DB_name] = X509_NAME_oneline(X509_get_subject_name(ret), NULL, 0); + if (row[DB_name] == NULL) { + BIO_printf(bio_err, "Memory allocation failure\n"); + goto end; + } + + if (BN_is_zero(serial)) + row[DB_serial] = OPENSSL_strdup("00"); + else + row[DB_serial] = BN_bn2hex(serial); + if (row[DB_serial] == NULL) { + BIO_printf(bio_err, "Memory allocation failure\n"); + goto end; + } + + if (row[DB_name][0] == '\0') { + /* + * An empty subject! We'll use the serial number instead. If + * unique_subject is in use then we don't want different entries with + * empty subjects matching each other. + */ + OPENSSL_free(row[DB_name]); + row[DB_name] = OPENSSL_strdup(row[DB_serial]); + if (row[DB_name] == NULL) { + BIO_printf(bio_err, "Memory allocation failure\n"); + goto end; + } + } + + if (db->attributes.unique_subject) { + OPENSSL_STRING *crow = row; + + rrow = TXT_DB_get_by_index(db->db, DB_name, crow); + if (rrow != NULL) { + BIO_printf(bio_err, + "ERROR:There is already a certificate for %s\n", + row[DB_name]); + } + } + if (rrow == NULL) { + rrow = TXT_DB_get_by_index(db->db, DB_serial, row); + if (rrow != NULL) { + BIO_printf(bio_err, + "ERROR:Serial number %s has already been issued,\n", + row[DB_serial]); + BIO_printf(bio_err, + " check the database/serial_file for corruption\n"); + } + } + + if (rrow != NULL) { + BIO_printf(bio_err, "The matching entry has the following details\n"); + if (rrow[DB_type][0] == DB_TYPE_EXP) + p = "Expired"; + else if (rrow[DB_type][0] == DB_TYPE_REV) + p = "Revoked"; + else if (rrow[DB_type][0] == DB_TYPE_VAL) + p = "Valid"; + else + p = "\ninvalid type, Data base error\n"; + BIO_printf(bio_err, "Type :%s\n", p);; + if (rrow[DB_type][0] == DB_TYPE_REV) { + p = rrow[DB_exp_date]; + if (p == NULL) + p = "undef"; + BIO_printf(bio_err, "Was revoked on:%s\n", p); + } + p = rrow[DB_exp_date]; + if (p == NULL) + p = "undef"; + BIO_printf(bio_err, "Expires on :%s\n", p); + p = rrow[DB_serial]; + if (p == NULL) + p = "undef"; + BIO_printf(bio_err, "Serial Number :%s\n", p); + p = rrow[DB_file]; + if (p == NULL) + p = "undef"; + BIO_printf(bio_err, "File name :%s\n", p); + p = rrow[DB_name]; + if (p == NULL) + p = "undef"; + BIO_printf(bio_err, "Subject Name :%s\n", p); + ok = -1; /* This is now a 'bad' error. */ + goto end; } if (!default_op) { @@ -1840,8 +1849,6 @@ static int do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, row[DB_exp_date][tm->length] = '\0'; row[DB_rev_date] = NULL; row[DB_file] = OPENSSL_strdup("unknown"); - row[DB_name] = X509_NAME_oneline(X509_get_subject_name(ret), NULL, 0); - if ((row[DB_type] == NULL) || (row[DB_exp_date] == NULL) || (row[DB_file] == NULL) || (row[DB_name] == NULL)) { BIO_printf(bio_err, "Memory allocation failure\n"); @@ -1861,16 +1868,14 @@ static int do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509, irow = NULL; ok = 1; end: - if (irow != NULL) { + if (ok != 1) { for (i = 0; i < DB_NUMBER; i++) OPENSSL_free(row[i]); - OPENSSL_free(irow); } + OPENSSL_free(irow); X509_NAME_free(CAname); X509_NAME_free(subject); - if (dn_subject != subject) - X509_NAME_free(dn_subject); if (ok <= 0) X509_free(ret); else @@ -2050,6 +2055,11 @@ static int do_revoke(X509 *x509, CA_DB *db, REVINFO_TYPE rev_type, else row[DB_serial] = BN_bn2hex(bn); BN_free(bn); + if (row[DB_name] != NULL && row[DB_name][0] == '\0') { + /* Entries with empty Subjects actually use the serial number instead */ + OPENSSL_free(row[DB_name]); + row[DB_name] = OPENSSL_strdup(row[DB_serial]); + } if ((row[DB_name] == NULL) || (row[DB_serial] == NULL)) { BIO_printf(bio_err, "Memory allocation failure\n"); goto end; diff --git a/apps/ciphers.c b/apps/ciphers.c index 4e8ffd13..0bb33a4a 100644 --- a/apps/ciphers.c +++ b/apps/ciphers.c @@ -26,6 +26,7 @@ typedef enum OPTION_choice { OPT_TLS1_3, OPT_PSK, OPT_SRP, + OPT_CIPHERSUITES, OPT_V, OPT_UPPER_V, OPT_S } OPTION_CHOICE; @@ -57,6 +58,8 @@ const OPTIONS ciphers_options[] = { {"srp", OPT_SRP, '-', "include ciphersuites requiring SRP"}, #endif {"convert", OPT_CONVERT, 's', "Convert standard name into OpenSSL name"}, + {"ciphersuites", OPT_CIPHERSUITES, 's', + "Configure the TLSv1.3 ciphersuites to use"}, {NULL} }; @@ -91,7 +94,7 @@ int ciphers_main(int argc, char **argv) int srp = 0; #endif const char *p; - char *ciphers = NULL, *prog, *convert = NULL; + char *ciphers = NULL, *prog, *convert = NULL, *ciphersuites = NULL; char buf[512]; OPTION_CHOICE o; int min_version = 0, max_version = 0; @@ -153,6 +156,9 @@ int ciphers_main(int argc, char **argv) srp = 1; #endif break; + case OPT_CIPHERSUITES: + ciphersuites = opt_arg(); + break; } } argv = opt_rest(); @@ -185,6 +191,12 @@ int ciphers_main(int argc, char **argv) if (srp) SSL_CTX_set_srp_client_pwd_callback(ctx, dummy_srp); #endif + + if (ciphersuites != NULL && !SSL_CTX_set_ciphersuites(ctx, ciphersuites)) { + BIO_printf(bio_err, "Error setting TLSv1.3 ciphersuites\n"); + goto err; + } + if (ciphers != NULL) { if (!SSL_CTX_set_cipher_list(ctx, ciphers)) { BIO_printf(bio_err, "Error in cipher list\n"); diff --git a/apps/dgst.c b/apps/dgst.c index 45745507..d158a0cc 100644 --- a/apps/dgst.c +++ b/apps/dgst.c @@ -235,6 +235,8 @@ int dgst_main(int argc, char **argv) } if (keyfile != NULL) { + int type; + if (want_pub) sigkey = load_pubkey(keyfile, keyform, 0, NULL, e, "key file"); else @@ -245,6 +247,15 @@ int dgst_main(int argc, char **argv) */ goto end; } + type = EVP_PKEY_id(sigkey); + if (type == EVP_PKEY_ED25519 || type == EVP_PKEY_ED448) { + /* + * We implement PureEdDSA for these which doesn't have a separate + * digest, and only supports one shot. + */ + BIO_printf(bio_err, "Key type not supported for this operation\n"); + goto end; + } } if (mac_name != NULL) { @@ -277,8 +288,8 @@ int dgst_main(int argc, char **argv) } if (hmac_key != NULL) { - sigkey = EVP_PKEY_new_mac_key(EVP_PKEY_HMAC, impl, - (unsigned char *)hmac_key, -1); + sigkey = EVP_PKEY_new_raw_private_key(EVP_PKEY_HMAC, impl, + (unsigned char *)hmac_key, -1); if (sigkey == NULL) goto end; } diff --git a/apps/dhparam.c b/apps/dhparam.c index 8a3a3891..44160fde 100644 --- a/apps/dhparam.c +++ b/apps/dhparam.c @@ -153,6 +153,11 @@ int dhparam_main(int argc, char **argv) goto end; } # endif + + out = bio_open_default(outfile, 'w', outformat); + if (out == NULL) + goto end; + /* DH parameters */ if (num && !g) g = 2; @@ -260,10 +265,6 @@ int dhparam_main(int argc, char **argv) /* dh != NULL */ } - out = bio_open_default(outfile, 'w', outformat); - if (out == NULL) - goto end; - if (text) { DHparams_print(out, dh); } diff --git a/apps/dsaparam.c b/apps/dsaparam.c index 2c1cc610..341480b8 100644 --- a/apps/dsaparam.c +++ b/apps/dsaparam.c @@ -195,6 +195,9 @@ int dsaparam_main(int argc, char **argv) OPENSSL_free(data); } + if (outformat == FORMAT_ASN1 && genkey) + noout = 1; + if (!noout) { if (outformat == FORMAT_ASN1) i = i2d_DSAparams_bio(out, dsa); diff --git a/apps/ecparam.c b/apps/ecparam.c index 51877f59..22902423 100644 --- a/apps/ecparam.c +++ b/apps/ecparam.c @@ -384,6 +384,9 @@ int ecparam_main(int argc, char **argv) "}\n"); } + if (outformat == FORMAT_ASN1 && genkey) + noout = 1; + if (!noout) { if (outformat == FORMAT_ASN1) i = i2d_ECPKParameters_bio(out, group); @@ -410,6 +413,9 @@ int ecparam_main(int argc, char **argv) goto end; } + if (new_form) + EC_KEY_set_conv_form(eckey, form); + if (!EC_KEY_generate_key(eckey)) { BIO_printf(bio_err, "unable to generate key\n"); EC_KEY_free(eckey); diff --git a/apps/ocsp.c b/apps/ocsp.c index 82c11e8b..eb822c26 100644 --- a/apps/ocsp.c +++ b/apps/ocsp.c @@ -36,7 +36,8 @@ NON_EMPTY_TRANSLATION_UNIT # include # include -# if defined(OPENSSL_SYS_UNIX) && !defined(OPENSSL_NO_SOCK) +# if defined(OPENSSL_SYS_UNIX) && !defined(OPENSSL_NO_SOCK) \ + && !defined(OPENSSL_NO_POSIX_IO) # define OCSP_DAEMON # include # include @@ -550,7 +551,7 @@ int ocsp_main(int argc, char **argv) } if (ridx_filename != NULL - && (rkey != NULL || rsigner != NULL || rca_cert != NULL)) { + && (rkey == NULL || rsigner == NULL || rca_cert == NULL)) { BIO_printf(bio_err, "Responder mode requires certificate, key, and CA.\n"); goto end; @@ -558,7 +559,7 @@ int ocsp_main(int argc, char **argv) if (ridx_filename != NULL) { rdb = load_index(ridx_filename, NULL); - if (rdb == NULL || !index_index(rdb)) { + if (rdb == NULL || index_index(rdb) <= 0) { ret = 1; goto end; } @@ -581,10 +582,11 @@ redo_accept: if (index_changed(rdb)) { CA_DB *newrdb = load_index(ridx_filename, NULL); - if (newrdb != NULL) { + if (newrdb != NULL && index_index(newrdb) > 0) { free_index(rdb); rdb = newrdb; } else { + free_index(newrdb); log_message(LOG_ERR, "error reloading updated index: %s", ridx_filename); } @@ -695,10 +697,8 @@ redo_accept: if (i != OCSP_RESPONSE_STATUS_SUCCESSFUL) { BIO_printf(out, "Responder Error: %s (%d)\n", OCSP_response_status_str(i), i); - if (!ignore_err) { - ret = 0; + if (!ignore_err) goto end; - } } if (resp_text) @@ -812,7 +812,10 @@ log_message(int level, const char *fmt, ...) va_start(ap, fmt); # ifdef OCSP_DAEMON if (multi) { - vsyslog(level, fmt, ap); + char buf[1024]; + if (vsnprintf(buf, sizeof(buf), fmt, ap) > 0) { + syslog(level, "%s", buf); + } if (level >= LOG_ERR) ERR_print_errors_cb(print_syslog, &level); } @@ -878,7 +881,6 @@ static void noteterm (int sig) */ static void spawn_loop(void) { - const char *signame; pid_t *kidpids = NULL; int status; int procs = 0; @@ -927,7 +929,10 @@ static void spawn_loop(void) else if (WIFSIGNALED(status)) syslog(LOG_WARNING, "child process: %ld, term signal %d%s", (long)fpid, WTERMSIG(status), - WCOREDUMP(status) ? " (core dumped)" : ""); +#ifdef WCOREDUMP + WCOREDUMP(status) ? " (core dumped)" : +#endif + ""); sleep(1); } break; @@ -971,9 +976,7 @@ static void spawn_loop(void) } /* The loop above can only break on termsig */ - signame = strsignal(termsig); - syslog(LOG_INFO, "terminating on signal: %s(%d)", - signame ? signame : "", termsig); + syslog(LOG_INFO, "terminating on signal: %d", termsig); killall(0, kidpids); } # endif diff --git a/apps/openssl.c b/apps/openssl.c index 39b4f2ce..a872e2c5 100644 --- a/apps/openssl.c +++ b/apps/openssl.c @@ -74,7 +74,7 @@ static void calculate_columns(DISPLAY_COLUMNS *dc) dc->columns = (80 - 1) / dc->width; } -static int apps_startup() +static int apps_startup(void) { #ifdef SIGPIPE signal(SIGPIPE, SIG_IGN); @@ -90,13 +90,13 @@ static int apps_startup() return 1; } -static void apps_shutdown() +static void apps_shutdown(void) { destroy_ui_method(); destroy_prefix_method(); } -static char *make_config_name() +static char *make_config_name(void) { const char *t; size_t len; @@ -762,6 +762,9 @@ static void list_disabled(void) #ifdef OPENSSL_NO_SEED BIO_puts(bio_out, "SEED\n"); #endif +#ifdef OPENSSL_NO_SM2 + BIO_puts(bio_out, "SM2\n"); +#endif #ifdef OPENSSL_NO_SM3 BIO_puts(bio_out, "SM3\n"); #endif diff --git a/apps/opt.c b/apps/opt.c index 90256363..cc141844 100644 --- a/apps/opt.c +++ b/apps/opt.c @@ -613,17 +613,13 @@ int opt_verify(int opt, X509_VERIFY_PARAM *vpm) */ int opt_next(void) { - char *p, *estr; + char *p; const OPTIONS *o; int ival; long lval; unsigned long ulval; ossl_intmax_t imval; ossl_uintmax_t umval; -#if !defined(_WIN32) - char *c; - int oerrno; -#endif /* Look at current arg; at end of the list? */ arg = NULL; @@ -686,47 +682,10 @@ int opt_next(void) return -1; case '<': /* Input file. */ - if (strcmp(arg, "-") == 0 || app_access(arg, R_OK) == 0) - break; - BIO_printf(bio_err, - "%s: Cannot open input file %s, %s\n", - prog, arg, strerror(errno)); - return -1; + break; case '>': /* Output file. */ -#if !defined(_WIN32) - c = OPENSSL_strdup(arg); - if (c == NULL) { - BIO_printf(bio_err, - "%s: Memory allocation failure\n", prog); - return -1; - } - oerrno = errno; - errno = 0; - if (strcmp(arg, "-") == 0 - || (app_access(app_dirname(c), W_OK) == 0 - && app_isdir(arg) <= 0 - && (app_access(arg, W_OK) == 0 || errno == ENOENT))) { - OPENSSL_free(c); - break; - } - OPENSSL_free(c); - if (errno == 0) - /* only possible if 'arg' is a directory */ - estr = "is a directory"; - else - estr = strerror(errno); - errno = oerrno; -#else - if (strcmp(arg, "-") == 0 || app_access(arg, W_OK) == 0 - || errno == ENOENT) - break; - estr = strerror(errno); -#endif - BIO_printf(bio_err, - "%s: Cannot open output file %s, %s\n", - prog, arg, estr); - return -1; + break; case 'p': case 'n': if (!opt_int(arg, &ival) diff --git a/apps/pkeyutl.c b/apps/pkeyutl.c index 77926de1..911cc576 100644 --- a/apps/pkeyutl.c +++ b/apps/pkeyutl.c @@ -84,8 +84,7 @@ int pkeyutl_main(int argc, char **argv) char hexdump = 0, asn1parse = 0, rev = 0, *prog; unsigned char *buf_in = NULL, *buf_out = NULL, *sig = NULL; OPTION_CHOICE o; - int buf_inlen = 0, siglen = -1, keyform = FORMAT_PEM, peerform = - FORMAT_PEM; + int buf_inlen = 0, siglen = -1, keyform = FORMAT_PEM, peerform = FORMAT_PEM; int keysize = -1, pkey_op = EVP_PKEY_OP_SIGN, key_type = KEY_PRIVKEY; int engine_impl = 0; int ret = 1, rv = -1; @@ -200,10 +199,18 @@ int pkeyutl_main(int argc, char **argv) goto opthelp; if (kdfalg != NULL) { - if (kdflen == 0) + if (kdflen == 0) { + BIO_printf(bio_err, + "%s: no KDF length given (-kdflen parameter).\n", prog); goto opthelp; - } else if ((inkey == NULL) - || (peerkey != NULL && pkey_op != EVP_PKEY_OP_DERIVE)) { + } + } else if (inkey == NULL) { + BIO_printf(bio_err, + "%s: no private key given (-inkey parameter).\n", prog); + goto opthelp; + } else if (peerkey != NULL && pkey_op != EVP_PKEY_OP_DERIVE) { + BIO_printf(bio_err, + "%s: no peer key given (-peerkey parameter).\n", prog); goto opthelp; } ctx = init_ctx(kdfalg, &keysize, inkey, keyform, key_type, @@ -226,7 +233,8 @@ int pkeyutl_main(int argc, char **argv) const char *opt = sk_OPENSSL_STRING_value(pkeyopts, i); if (pkey_ctrl_string(ctx, opt) <= 0) { - BIO_printf(bio_err, "%s: Can't set parameter:\n", prog); + BIO_printf(bio_err, "%s: Can't set parameter \"%s\":\n", + prog, opt); ERR_print_errors(bio_err); goto end; } @@ -313,7 +321,11 @@ int pkeyutl_main(int argc, char **argv) buf_in, (size_t)buf_inlen); } if (rv <= 0) { - BIO_puts(bio_err, "Public Key operation error\n"); + if (pkey_op != EVP_PKEY_OP_DERIVE) { + BIO_puts(bio_err, "Public Key operation error\n"); + } else { + BIO_puts(bio_err, "Key derivation failed\n"); + } ERR_print_errors(bio_err); goto end; } @@ -393,8 +405,11 @@ static EVP_PKEY_CTX *init_ctx(const char *kdfalg, int *pkeysize, if (kdfnid == NID_undef) { kdfnid = OBJ_ln2nid(kdfalg); - if (kdfnid == NID_undef) + if (kdfnid == NID_undef) { + BIO_printf(bio_err, "The given KDF \"%s\" is unknown.\n", + kdfalg); goto end; + } } ctx = EVP_PKEY_CTX_new_id(kdfnid, impl); } else { @@ -446,10 +461,10 @@ static EVP_PKEY_CTX *init_ctx(const char *kdfalg, int *pkeysize, } static int setup_peer(EVP_PKEY_CTX *ctx, int peerform, const char *file, - ENGINE* e) + ENGINE *e) { EVP_PKEY *peer = NULL; - ENGINE* engine = NULL; + ENGINE *engine = NULL; int ret; if (peerform == FORMAT_ENGINE) diff --git a/apps/progs.pl b/apps/progs.pl index f832467b..57671405 100644 --- a/apps/progs.pl +++ b/apps/progs.pl @@ -17,12 +17,14 @@ use configdata qw/@disablables %unified_info/; my %commands = (); my $cmdre = qr/^\s*int\s+([a-z_][a-z0-9_]*)_main\(\s*int\s+argc\s*,/; my $apps_openssl = shift @ARGV; +my $YEAR = [localtime()]->[5] + 1900; # because the program apps/openssl has object files as sources, and # they then have the corresponding C files as source, we need to chain # the lookups in %unified_info my @openssl_source = map { @{$unified_info{sources}->{$_}} } + grep { /\.o$/ } @{$unified_info{sources}->{$apps_openssl}}; foreach my $filename (@openssl_source) { @@ -36,12 +38,12 @@ foreach my $filename (@openssl_source) { @ARGV = sort keys %commands; -print <<'EOF'; +print <<"EOF"; /* * WARNING: do not edit! * Generated by apps/progs.pl * - * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-$YEAR The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -109,7 +111,10 @@ my %md_disabler = ( foreach my $cmd ( "md2", "md4", "md5", "gost", - "sha1", "sha224", "sha256", "sha384", "sha512", + "sha1", "sha224", "sha256", "sha384", + "sha512", "sha512-224", "sha512-256", + "sha3-224", "sha3-256", "sha3-384", "sha3-512", + "shake128", "shake256", "mdc2", "rmd160", "blake2b512", "blake2s256", "sm3" ) { diff --git a/apps/rehash.c b/apps/rehash.c index 6f2b5da4..521bf617 100644 --- a/apps/rehash.c +++ b/apps/rehash.c @@ -126,9 +126,10 @@ static int add_entry(enum Type type, unsigned int hash, const char *filename, for (ep = bp->first_entry; ep; ep = ep->next) { if (digest && memcmp(digest, ep->digest, evpmdsize) == 0) { BIO_printf(bio_err, - "%s: skipping duplicate %s in %s\n", opt_getprog(), + "%s: warning: skipping duplicate %s in %s\n", + opt_getprog(), type == TYPE_CERT ? "certificate" : "CRL", filename); - return 1; + return 0; } if (strcmp(filename, ep->filename) == 0) { found = ep; @@ -140,7 +141,7 @@ static int add_entry(enum Type type, unsigned int hash, const char *filename, if (ep == NULL) { if (bp->num_needed >= MAX_COLLISIONS) { BIO_printf(bio_err, - "%s: hash table overflow for %s\n", + "%s: error: hash table overflow for %s\n", opt_getprog(), filename); return 1; } @@ -231,7 +232,7 @@ static int do_file(const char *filename, const char *fullpath, enum Hash h) /* Does it have X.509 data in it? */ if ((b = BIO_new_file(fullpath, "r")) == NULL) { - BIO_printf(bio_err, "%s: skipping %s, cannot open file\n", + BIO_printf(bio_err, "%s: error: skipping %s, cannot open file\n", opt_getprog(), filename); errs++; goto end; @@ -243,7 +244,7 @@ static int do_file(const char *filename, const char *fullpath, enum Hash h) if (sk_X509_INFO_num(inf) != 1) { BIO_printf(bio_err, - "%s: skipping %s," + "%s: warning: skipping %s," "it does not contain exactly one certificate or CRL\n", opt_getprog(), filename); /* This is not an error. */ @@ -479,13 +480,14 @@ int rehash_main(int argc, char **argv) if (*argv != NULL) { while (*argv != NULL) errs += do_dir(*argv++, h); - } else if ((env = getenv("SSL_CERT_DIR")) != NULL) { + } else if ((env = getenv(X509_get_default_cert_dir_env())) != NULL) { + char lsc[2] = { LIST_SEPARATOR_CHAR, '\0' }; m = OPENSSL_strdup(env); - for (e = strtok(m, ":"); e != NULL; e = strtok(NULL, ":")) + for (e = strtok(m, lsc); e != NULL; e = strtok(NULL, lsc)) errs += do_dir(e, h); OPENSSL_free(m); } else { - errs += do_dir("/etc/ssl/certs", h); + errs += do_dir(X509_get_default_cert_dir(), h); } end: diff --git a/apps/req.c b/apps/req.c index ac14fdb8..ca4b7ec8 100644 --- a/apps/req.c +++ b/apps/req.c @@ -63,6 +63,11 @@ static int add_DN_object(X509_NAME *n, char *text, const char *def, char *value, int nid, int n_min, int n_max, unsigned long chtype, int mval); static int genpkey_cb(EVP_PKEY_CTX *ctx); +static int build_data(char *text, const char *def, + char *value, int n_min, int n_max, + char *buf, const int buf_size, + const char *desc1, const char *desc2 + ); static int req_check_len(int len, int n_min, int n_max); static int check_end(const char *str, const char *end); static int join(char buf[], size_t buf_size, const char *name, @@ -365,7 +370,7 @@ int req_main(int argc, char **argv) if (addext_bio) { if (verbose) BIO_printf(bio_err, - "Using additional configuraton from command line\n"); + "Using additional configuration from command line\n"); addext_conf = app_load_config_bio(addext_bio, NULL); } if (template != default_config_file && !app_load_modules(req_conf)) @@ -1202,58 +1207,19 @@ static int add_DN_object(X509_NAME *n, char *text, const char *def, char *value, int nid, int n_min, int n_max, unsigned long chtype, int mval) { - int i, ret = 0; + int ret = 0; char buf[1024]; - start: - if (!batch) - BIO_printf(bio_err, "%s [%s]:", text, def); - (void)BIO_flush(bio_err); - if (value != NULL) { - if (!join(buf, sizeof(buf), value, "\n", "DN value")) - return 0; - BIO_printf(bio_err, "%s\n", value); - } else { - buf[0] = '\0'; - if (!batch) { - if (!fgets(buf, sizeof(buf), stdin)) - return 0; - } else { - buf[0] = '\n'; - buf[1] = '\0'; - } - } - if (buf[0] == '\0') - return 0; - if (buf[0] == '\n') { - if ((def == NULL) || (def[0] == '\0')) - return 1; - if (!join(buf, sizeof(buf), def, "\n", "DN default")) - return 0; - } else if ((buf[0] == '.') && (buf[1] == '\n')) { - return 1; - } - - i = strlen(buf); - if (buf[i - 1] != '\n') { - BIO_printf(bio_err, "weird input :-(\n"); - return 0; - } - buf[--i] = '\0'; -#ifdef CHARSET_EBCDIC - ebcdic2ascii(buf, buf, i); -#endif - if (!req_check_len(i, n_min, n_max)) { - if (batch || value) - return 0; - goto start; - } + ret = build_data(text, def, value, n_min, n_max, buf, sizeof(buf), + "DN value", "DN default"); + if ((ret == 0) || (ret == 1)) + return ret; + ret = 1; if (!X509_NAME_add_entry_by_NID(n, nid, chtype, (unsigned char *)buf, -1, -1, mval)) - goto err; - ret = 1; - err: + ret = 0; + return ret; } @@ -1261,21 +1227,45 @@ static int add_attribute_object(X509_REQ *req, char *text, const char *def, char *value, int nid, int n_min, int n_max, unsigned long chtype) { - int i; - static char buf[1024]; + int ret = 0; + char buf[1024]; + ret = build_data(text, def, value, n_min, n_max, buf, sizeof(buf), + "Attribute value", "Attribute default"); + if ((ret == 0) || (ret == 1)) + return ret; + ret = 1; + + if (!X509_REQ_add1_attr_by_NID(req, nid, chtype, + (unsigned char *)buf, -1)) { + BIO_printf(bio_err, "Error adding attribute\n"); + ERR_print_errors(bio_err); + ret = 0; + } + + return ret; +} + + +static int build_data(char *text, const char *def, + char *value, int n_min, int n_max, + char *buf, const int buf_size, + const char *desc1, const char *desc2 + ) +{ + int i; start: if (!batch) BIO_printf(bio_err, "%s [%s]:", text, def); (void)BIO_flush(bio_err); if (value != NULL) { - if (!join(buf, sizeof(buf), value, "\n", "Attribute value")) + if (!join(buf, buf_size, value, "\n", desc1)) return 0; BIO_printf(bio_err, "%s\n", value); } else { buf[0] = '\0'; if (!batch) { - if (!fgets(buf, sizeof(buf), stdin)) + if (!fgets(buf, buf_size, stdin)) return 0; } else { buf[0] = '\n'; @@ -1288,7 +1278,7 @@ static int add_attribute_object(X509_REQ *req, char *text, const char *def, if (buf[0] == '\n') { if ((def == NULL) || (def[0] == '\0')) return 1; - if (!join(buf, sizeof(buf), def, "\n", "Attribute default")) + if (!join(buf, buf_size, def, "\n", desc2)) return 0; } else if ((buf[0] == '.') && (buf[1] == '\n')) { return 1; @@ -1308,17 +1298,7 @@ static int add_attribute_object(X509_REQ *req, char *text, const char *def, return 0; goto start; } - - if (!X509_REQ_add1_attr_by_NID(req, nid, chtype, - (unsigned char *)buf, -1)) { - BIO_printf(bio_err, "Error adding attribute\n"); - ERR_print_errors(bio_err); - goto err; - } - - return 1; - err: - return 0; + return 2; } static int req_check_len(int len, int n_min, int n_max) diff --git a/apps/s_apps.h b/apps/s_apps.h index 1ca8ff95..0a3bc962 100644 --- a/apps/s_apps.h +++ b/apps/s_apps.h @@ -22,9 +22,8 @@ typedef int (*do_server_cb)(int s, int stype, int prot, unsigned char *context); int do_server(int *accept_sock, const char *host, const char *port, - int family, int type, int protocol, - do_server_cb cb, - unsigned char *context, int naccept); + int family, int type, int protocol, do_server_cb cb, + unsigned char *context, int naccept, BIO *bio_s_out); #ifdef HEADER_X509_H int verify_callback(int ok, X509_STORE_CTX *ctx); #endif @@ -58,6 +57,11 @@ int generate_cookie_callback(SSL *ssl, unsigned char *cookie, int verify_cookie_callback(SSL *ssl, const unsigned char *cookie, unsigned int cookie_len); +#ifdef __VMS /* 31 char symbol name limit */ +# define generate_stateless_cookie_callback generate_stateless_cookie_cb +# define verify_stateless_cookie_callback verify_stateless_cookie_cb +#endif + int generate_stateless_cookie_callback(SSL *ssl, unsigned char *cookie, size_t *cookie_len); int verify_stateless_cookie_callback(SSL *ssl, const unsigned char *cookie, diff --git a/apps/s_client.c b/apps/s_client.c index 1ed853d1..9122d489 100644 --- a/apps/s_client.c +++ b/apps/s_client.c @@ -367,8 +367,6 @@ static char *ssl_give_srp_client_pwd_cb(SSL *s, void *arg) #endif -static char *srtp_profiles = NULL; - #ifndef OPENSSL_NO_NEXTPROTONEG /* This the context that we pass to next_proto_cb */ typedef struct tlsextnextprotoctx_st { @@ -639,7 +637,8 @@ const OPTIONS s_client_options[] = { "Disable name checks when matching DANE-EE(3) TLSA records"}, {"reconnect", OPT_RECONNECT, '-', "Drop and re-make the connection with the same Session-ID"}, - {"showcerts", OPT_SHOWCERTS, '-', "Show all certificates in the chain"}, + {"showcerts", OPT_SHOWCERTS, '-', + "Show all certificates sent by the server"}, {"debug", OPT_DEBUG, '-', "Extra output"}, {"msg", OPT_MSG, '-', "Show protocol messages"}, {"msgfile", OPT_MSGFILE, '>', @@ -657,8 +656,10 @@ const OPTIONS s_client_options[] = { OPT_R_OPTIONS, {"sess_out", OPT_SESS_OUT, '>', "File to write SSL session to"}, {"sess_in", OPT_SESS_IN, '<', "File to read SSL session from"}, +#ifndef OPENSSL_NO_SRTP {"use_srtp", OPT_USE_SRTP, 's', "Offer SRTP key management with a colon-separated profile list"}, +#endif {"keymatexport", OPT_KEYMATEXPORT, 's', "Export keying material using label"}, {"keymatexportlen", OPT_KEYMATEXPORTLEN, 'p', @@ -934,6 +935,9 @@ int s_client_main(int argc, char **argv) int srp_lateuser = 0; SRP_ARG srp_arg = { NULL, NULL, 0, 0, 0, 1024 }; #endif +#ifndef OPENSSL_NO_SRTP + char *srtp_profiles = NULL; +#endif #ifndef OPENSSL_NO_CT char *ctlog_file = NULL; int ct_validation = 0; @@ -1420,7 +1424,9 @@ int s_client_main(int argc, char **argv) noservername = 1; break; case OPT_USE_SRTP: +#ifndef OPENSSL_NO_SRTP srtp_profiles = opt_arg(); +#endif break; case OPT_KEYMATEXPORT: keymatexportlabel = opt_arg(); @@ -1669,9 +1675,14 @@ int s_client_main(int argc, char **argv) goto end; } + SSL_CTX_clear_mode(ctx, SSL_MODE_AUTO_RETRY); + if (sdebug) ssl_ctx_security_debug(ctx, sdebug); + if (!config_ctx(cctx, ssl_args, ctx)) + goto end; + if (ssl_config != NULL) { if (SSL_CTX_config(ctx, ssl_config) == 0) { BIO_printf(bio_err, "Error using configuration \"%s\"\n", @@ -1681,9 +1692,11 @@ int s_client_main(int argc, char **argv) } } - if (SSL_CTX_set_min_proto_version(ctx, min_version) == 0) + if (min_version != 0 + && SSL_CTX_set_min_proto_version(ctx, min_version) == 0) goto end; - if (SSL_CTX_set_max_proto_version(ctx, max_version) == 0) + if (max_version != 0 + && SSL_CTX_set_max_proto_version(ctx, max_version) == 0) goto end; if (vpmtouched && !SSL_CTX_set1_param(ctx, vpm)) { @@ -1729,9 +1742,6 @@ int s_client_main(int argc, char **argv) goto end; } - if (!config_ctx(cctx, ssl_args, ctx)) - goto end; - if (!ssl_load_stores(ctx, vfyCApath, vfyCAfile, chCApath, chCAfile, crls, crl_download)) { BIO_printf(bio_err, "Error loading store locations\n"); @@ -2699,8 +2709,7 @@ int s_client_main(int argc, char **argv) FD_ZERO(&readfds); FD_ZERO(&writefds); - if ((SSL_version(con) == DTLS1_VERSION) && - DTLSv1_get_timeout(con, &timeout)) + if (SSL_is_dtls(con) && DTLSv1_get_timeout(con, &timeout)) timeoutp = &timeout; else timeoutp = NULL; @@ -2811,10 +2820,8 @@ int s_client_main(int argc, char **argv) } } - if ((SSL_version(con) == DTLS1_VERSION) - && DTLSv1_handle_timeout(con) > 0) { + if (SSL_is_dtls(con) && DTLSv1_handle_timeout(con) > 0) BIO_printf(bio_err, "TIMEOUT occurred\n"); - } if (!ssl_pending && FD_ISSET(SSL_get_fd(con), &writefds)) { k = SSL_write(con, &(cbuf[cbuf_off]), (unsigned int)cbuf_len); @@ -3047,19 +3054,6 @@ int s_client_main(int argc, char **argv) print_stuff(bio_c_out, con, full_log); do_ssl_shutdown(con); - /* - * Give the socket time to send its last data before we close it. - * No amount of setting SO_LINGER etc on the socket seems to persuade - * Windows to send the data before closing the socket...but sleeping - * for a short time seems to do it (units in ms) - * TODO: Find a better way to do this - */ -#if defined(OPENSSL_SYS_WINDOWS) - Sleep(50); -#elif defined(OPENSSL_SYS_CYGWIN) - usleep(50000); -#endif - /* * If we ended with an alert being sent, but still with data in the * network buffer to be read, then calling BIO_closesocket() will @@ -3071,6 +3065,19 @@ int s_client_main(int argc, char **argv) * TCP-RST. This seems to allow the peer to read the alert data. */ shutdown(SSL_get_fd(con), 1); /* SHUT_WR */ + /* + * We just said we have nothing else to say, but it doesn't mean that + * the other side has nothing. It's even recommended to consume incoming + * data. [In testing context this ensures that alerts are passed on...] + */ + timeout.tv_sec = 0; + timeout.tv_usec = 500000; /* some extreme round-trip */ + do { + FD_ZERO(&readfds); + openssl_fdset(s, &readfds); + } while (select(s + 1, &readfds, NULL, NULL, &timeout) > 0 + && BIO_read(sbio, sbuf, BUFSIZZ) > 0); + BIO_closesocket(SSL_get_fd(con)); end: if (con != NULL) { diff --git a/apps/s_server.c b/apps/s_server.c index d21631e8..b0d38e48 100644 --- a/apps/s_server.c +++ b/apps/s_server.c @@ -236,6 +236,7 @@ typedef struct srpsrvparm_st { SRP_VBASE *vb; SRP_user_pwd *user; } srpsrvparm; +static srpsrvparm srp_callback_parm; /* * This callback pretends to require some asynchronous logic in order to @@ -722,13 +723,6 @@ static int not_resumable_sess_cb(SSL *s, int is_forward_secure) return is_forward_secure; } -#ifndef OPENSSL_NO_SRP -static srpsrvparm srp_callback_parm; -#endif -#ifndef OPENSSL_NO_SRTP -static char *srtp_profiles = NULL; -#endif - typedef enum OPTION_choice { OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, OPT_ENGINE, OPT_4, OPT_6, OPT_ACCEPT, OPT_PORT, OPT_UNIX, OPT_UNLINK, OPT_NACCEPT, @@ -753,7 +747,7 @@ typedef enum OPTION_choice { OPT_ID_PREFIX, OPT_SERVERNAME, OPT_SERVERNAME_FATAL, OPT_CERT2, OPT_KEY2, OPT_NEXTPROTONEG, OPT_ALPN, OPT_SRTP_PROFILES, OPT_KEYMATEXPORT, OPT_KEYMATEXPORTLEN, - OPT_KEYLOG_FILE, OPT_MAX_EARLY, OPT_EARLY_DATA, + OPT_KEYLOG_FILE, OPT_MAX_EARLY, OPT_EARLY_DATA, OPT_S_NUM_TICKETS, OPT_R_ENUM, OPT_S_ENUM, OPT_V_ENUM, @@ -961,6 +955,8 @@ const OPTIONS s_server_options[] = { {"max_early_data", OPT_MAX_EARLY, 'n', "The maximum number of bytes of early data"}, {"early_data", OPT_EARLY_DATA, '-', "Attempt to read early data"}, + {"num_tickets", OPT_S_NUM_TICKETS, 'n', + "The number of TLSv1.3 session tickets that a server will automatically issue" }, {NULL, OPT_EOF, 0, NULL} }; @@ -1023,6 +1019,9 @@ int s_server_main(int argc, char *argv[]) #ifndef OPENSSL_NO_SRP char *srpuserseed = NULL; char *srp_verifier_file = NULL; +#endif +#ifndef OPENSSL_NO_SRTP + char *srtp_profiles = NULL; #endif int min_version = 0, max_version = 0, prot_opt = 0, no_prot_opt = 0; int s_server_verify = SSL_VERIFY_NONE; @@ -1257,6 +1256,7 @@ int s_server_main(int argc, char *argv[]) goto opthelp; break; case OPT_S_CASES: + case OPT_S_NUM_TICKETS: if (ssl_args == NULL) ssl_args = sk_OPENSSL_STRING_new_null(); if (ssl_args == NULL @@ -1753,8 +1753,15 @@ int s_server_main(int argc, char *argv[]) ERR_print_errors(bio_err); goto end; } + + SSL_CTX_clear_mode(ctx, SSL_MODE_AUTO_RETRY); + if (sdebug) ssl_ctx_security_debug(ctx, sdebug); + + if (!config_ctx(cctx, ssl_args, ctx)) + goto end; + if (ssl_config) { if (SSL_CTX_config(ctx, ssl_config) == 0) { BIO_printf(bio_err, "Error using configuration \"%s\"\n", @@ -1763,9 +1770,11 @@ int s_server_main(int argc, char *argv[]) goto end; } } - if (SSL_CTX_set_min_proto_version(ctx, min_version) == 0) + if (min_version != 0 + && SSL_CTX_set_min_proto_version(ctx, min_version) == 0) goto end; - if (SSL_CTX_set_max_proto_version(ctx, max_version) == 0) + if (max_version != 0 + && SSL_CTX_set_max_proto_version(ctx, max_version) == 0) goto end; if (session_id_prefix) { @@ -1841,8 +1850,6 @@ int s_server_main(int argc, char *argv[]) } ssl_ctx_add_crls(ctx, crls, 0); - if (!config_ctx(cctx, ssl_args, ctx)) - goto end; if (!ssl_load_stores(ctx, vfyCApath, vfyCAfile, chCApath, chCAfile, crls, crl_download)) { @@ -2098,8 +2105,6 @@ int s_server_main(int argc, char *argv[]) if (max_early_data >= 0) SSL_CTX_set_max_early_data(ctx, max_early_data); - BIO_printf(bio_s_out, "ACCEPT\n"); - (void)BIO_flush(bio_s_out); if (rev) server_cb = rev_body; else if (www) @@ -2112,7 +2117,7 @@ int s_server_main(int argc, char *argv[]) unlink(host); #endif do_server(&accept_socket, host, port, socket_family, socket_type, protocol, - server_cb, context, naccept); + server_cb, context, naccept, bio_s_out); print_stats(bio_s_out, ctx); ret = 0; end: @@ -2194,9 +2199,7 @@ static int sv_body(int s, int stype, int prot, unsigned char *context) SSL *con = NULL; BIO *sbio; struct timeval timeout; -#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_MSDOS) - struct timeval tv; -#else +#if !(defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_MSDOS)) struct timeval *timeoutp; #endif #ifndef OPENSSL_NO_DTLS @@ -2397,26 +2400,23 @@ static int sv_body(int s, int stype, int prot, unsigned char *context) * second and check for any keypress. In a proper Windows * application we wouldn't do this because it is inefficient. */ - tv.tv_sec = 1; - tv.tv_usec = 0; - i = select(width, (void *)&readfds, NULL, NULL, &tv); + timeout.tv_sec = 1; + timeout.tv_usec = 0; + i = select(width, (void *)&readfds, NULL, NULL, &timeout); if (has_stdin_waiting()) read_from_terminal = 1; if ((i < 0) || (!i && !read_from_terminal)) continue; #else - if ((SSL_version(con) == DTLS1_VERSION) && - DTLSv1_get_timeout(con, &timeout)) + if (SSL_is_dtls(con) && DTLSv1_get_timeout(con, &timeout)) timeoutp = &timeout; else timeoutp = NULL; i = select(width, (void *)&readfds, NULL, NULL, timeoutp); - if ((SSL_version(con) == DTLS1_VERSION) - && DTLSv1_handle_timeout(con) > 0) { + if ((SSL_is_dtls(con)) && DTLSv1_handle_timeout(con) > 0) BIO_printf(bio_err, "TIMEOUT occurred\n"); - } if (i <= 0) continue; @@ -2676,9 +2676,6 @@ static int sv_body(int s, int stype, int prot, unsigned char *context) } BIO_printf(bio_s_out, "CONNECTION CLOSED\n"); OPENSSL_clear_free(buf, bufsize); - if (ret >= 0) - BIO_printf(bio_s_out, "ACCEPT\n"); - (void)BIO_flush(bio_s_out); return ret; } @@ -3287,8 +3284,6 @@ static int www_body(int s, int stype, int prot, unsigned char *context) SSL_set_shutdown(con, SSL_SENT_SHUTDOWN | SSL_RECEIVED_SHUTDOWN); err: - if (ret >= 0) - BIO_printf(bio_s_out, "ACCEPT\n"); OPENSSL_free(buf); BIO_free_all(io); return ret; diff --git a/apps/s_socket.c b/apps/s_socket.c index 4b82011a..f4264cd9 100644 --- a/apps/s_socket.c +++ b/apps/s_socket.c @@ -146,7 +146,8 @@ int init_client(int *sock, const char *host, const char *port, } #endif - if (!BIO_connect(*sock, BIO_ADDRINFO_address(ai), 0)) { + if (!BIO_connect(*sock, BIO_ADDRINFO_address(ai), + type == SOCK_STREAM ? BIO_SOCK_NODELAY : 0)) { BIO_closesocket(*sock); *sock = INVALID_SOCKET; continue; @@ -204,14 +205,14 @@ out: */ int do_server(int *accept_sock, const char *host, const char *port, int family, int type, int protocol, do_server_cb cb, - unsigned char *context, int naccept) + unsigned char *context, int naccept, BIO *bio_s_out) { int asock = 0; int sock; int i; BIO_ADDRINFO *res = NULL; const BIO_ADDRINFO *next; - int sock_family, sock_type, sock_protocol; + int sock_family, sock_type, sock_protocol, sock_port; const BIO_ADDR *sock_address; int sock_options = BIO_SOCK_REUSEADDR; int ret = 0; @@ -280,12 +281,50 @@ int do_server(int *accept_sock, const char *host, const char *port, } #endif + sock_port = BIO_ADDR_rawport(sock_address); + BIO_ADDRINFO_free(res); res = NULL; + if (sock_port == 0) { + /* dynamically allocated port, report which one */ + union BIO_sock_info_u info; + char *hostname = NULL; + char *service = NULL; + int success = 0; + + if ((info.addr = BIO_ADDR_new()) != NULL + && BIO_sock_info(asock, BIO_SOCK_INFO_ADDRESS, &info) + && (hostname = BIO_ADDR_hostname_string(info.addr, 1)) != NULL + && (service = BIO_ADDR_service_string(info.addr, 1)) != NULL + && BIO_printf(bio_s_out, + strchr(hostname, ':') == NULL + ? /* IPv4 */ "ACCEPT %s:%s\n" + : /* IPv6 */ "ACCEPT [%s]:%s\n", + hostname, service) > 0) + success = 1; + + (void)BIO_flush(bio_s_out); + OPENSSL_free(hostname); + OPENSSL_free(service); + BIO_ADDR_free(info.addr); + if (!success) { + BIO_closesocket(asock); + ERR_print_errors(bio_err); + goto end; + } + } else { + (void)BIO_printf(bio_s_out, "ACCEPT\n"); + (void)BIO_flush(bio_s_out); + } + if (accept_sock != NULL) *accept_sock = asock; for (;;) { + char sink[64]; + struct timeval timeout; + fd_set readfds; + if (type == SOCK_STREAM) { BIO_ADDR_free(ourpeer); ourpeer = BIO_ADDR_new(); @@ -302,21 +341,9 @@ int do_server(int *accept_sock, const char *host, const char *port, BIO_closesocket(asock); break; } + BIO_set_tcp_ndelay(sock, 1); i = (*cb)(sock, type, protocol, context); - /* - * Give the socket time to send its last data before we close it. - * No amount of setting SO_LINGER etc on the socket seems to - * persuade Windows to send the data before closing the socket... - * but sleeping for a short time seems to do it (units in ms) - * TODO: Find a better way to do this - */ -#if defined(OPENSSL_SYS_WINDOWS) - Sleep(50); -#elif defined(OPENSSL_SYS_CYGWIN) - usleep(50000); -#endif - /* * If we ended with an alert being sent, but still with data in the * network buffer to be read, then calling BIO_closesocket() will @@ -328,6 +355,20 @@ int do_server(int *accept_sock, const char *host, const char *port, * TCP-RST. This seems to allow the peer to read the alert data. */ shutdown(sock, 1); /* SHUT_WR */ + /* + * We just said we have nothing else to say, but it doesn't mean + * that the other side has nothing. It's even recommended to + * consume incoming data. [In testing context this ensures that + * alerts are passed on...] + */ + timeout.tv_sec = 0; + timeout.tv_usec = 500000; /* some extreme round-trip */ + do { + FD_ZERO(&readfds); + openssl_fdset(sock, &readfds); + } while (select(sock + 1, &readfds, NULL, NULL, &timeout) > 0 + && readsocket(sock, sink, sizeof(sink)) > 0); + BIO_closesocket(sock); } else { i = (*cb)(asock, type, protocol, context); diff --git a/apps/s_time.c b/apps/s_time.c index 149107c5..5688f4f5 100644 --- a/apps/s_time.c +++ b/apps/s_time.c @@ -7,8 +7,6 @@ * https://www.openssl.org/source/license.html */ -#define NO_SHUTDOWN - #include #include #include @@ -24,26 +22,13 @@ #include #include "s_apps.h" #include +#include #if !defined(OPENSSL_SYS_MSDOS) # include OPENSSL_UNISTD #endif -#undef ioctl -#define ioctl ioctlsocket - #define SSL_CONNECT_NAME "localhost:4433" -/* no default cert. */ -/* - * #define TEST_CERT "client.pem" - */ - -#undef min -#undef max -#define min(a,b) (((a) < (b)) ? (a) : (b)) -#define max(a,b) (((a) > (b)) ? (a) : (b)) - -#undef SECONDS #define SECONDS 30 #define SECONDSSTR "30" @@ -59,9 +44,9 @@ static const size_t fmt_http_get_cmd_size = sizeof(fmt_http_get_cmd) - 2; typedef enum OPTION_choice { OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, - OPT_CONNECT, OPT_CIPHER, OPT_CERT, OPT_NAMEOPT, OPT_KEY, OPT_CAPATH, - OPT_CAFILE, OPT_NOCAPATH, OPT_NOCAFILE, OPT_NEW, OPT_REUSE, OPT_BUGS, - OPT_VERIFY, OPT_TIME, OPT_SSL3, + OPT_CONNECT, OPT_CIPHER, OPT_CIPHERSUITES, OPT_CERT, OPT_NAMEOPT, OPT_KEY, + OPT_CAPATH, OPT_CAFILE, OPT_NOCAPATH, OPT_NOCAFILE, OPT_NEW, OPT_REUSE, + OPT_BUGS, OPT_VERIFY, OPT_TIME, OPT_SSL3, OPT_WWW } OPTION_CHOICE; @@ -69,7 +54,9 @@ const OPTIONS s_time_options[] = { {"help", OPT_HELP, '-', "Display this summary"}, {"connect", OPT_CONNECT, 's', "Where to connect as post:port (default is " SSL_CONNECT_NAME ")"}, - {"cipher", OPT_CIPHER, 's', "Cipher to use, see 'openssl ciphers'"}, + {"cipher", OPT_CIPHER, 's', "TLSv1.2 and below cipher list to be used"}, + {"ciphersuites", OPT_CIPHERSUITES, 's', + "Specify TLSv1.3 ciphersuites to be used"}, {"cert", OPT_CERT, '<', "Cert file to use, PEM format assumed"}, {"nameopt", OPT_NAMEOPT, 's', "Various certificate name options"}, {"key", OPT_KEY, '<', "File with key, PEM; default is -cert file"}, @@ -106,7 +93,8 @@ int s_time_main(int argc, char **argv) SSL *scon = NULL; SSL_CTX *ctx = NULL; const SSL_METHOD *meth = NULL; - char *CApath = NULL, *CAfile = NULL, *cipher = NULL, *www_path = NULL; + char *CApath = NULL, *CAfile = NULL, *cipher = NULL, *ciphersuites = NULL; + char *www_path = NULL; char *host = SSL_CONNECT_NAME, *certfile = NULL, *keyfile = NULL, *prog; double totalTime = 0.0; int noCApath = 0, noCAfile = 0; @@ -170,6 +158,9 @@ int s_time_main(int argc, char **argv) case OPT_CIPHER: cipher = opt_arg(); break; + case OPT_CIPHERSUITES: + ciphersuites = opt_arg(); + break; case OPT_BUGS: st_bugs = 1; break; @@ -196,21 +187,20 @@ int s_time_main(int argc, char **argv) if (cipher == NULL) cipher = getenv("SSL_CIPHER"); - if (cipher == NULL) { - BIO_printf(bio_err, "No CIPHER specified\n"); - goto end; - } if ((ctx = SSL_CTX_new(meth)) == NULL) goto end; + SSL_CTX_set_mode(ctx, SSL_MODE_AUTO_RETRY); SSL_CTX_set_quiet_shutdown(ctx, 1); if (SSL_CTX_set_max_proto_version(ctx, max_version) == 0) goto end; if (st_bugs) SSL_CTX_set_options(ctx, SSL_OP_ALL); - if (!SSL_CTX_set_cipher_list(ctx, cipher)) + if (cipher != NULL && !SSL_CTX_set_cipher_list(ctx, cipher)) + goto end; + if (ciphersuites != NULL && !SSL_CTX_set_ciphersuites(ctx, ciphersuites)) goto end; if (!set_cert_stuff(ctx, certfile, keyfile)) goto end; @@ -240,16 +230,10 @@ int s_time_main(int argc, char **argv) www_path); if (buf_len <= 0 || SSL_write(scon, buf, buf_len) <= 0) goto end; - while ((i = SSL_read(scon, buf, sizeof(buf))) > 0 || - SSL_get_error(scon, i) == SSL_ERROR_WANT_READ || - SSL_get_error(scon, i) == SSL_ERROR_WANT_WRITE) - if (i > 0) bytes_read += i; + while ((i = SSL_read(scon, buf, sizeof(buf))) > 0) + bytes_read += i; } -#ifdef NO_SHUTDOWN SSL_set_shutdown(scon, SSL_SENT_SHUTDOWN | SSL_RECEIVED_SHUTDOWN); -#else - SSL_shutdown(scon); -#endif BIO_closesocket(SSL_get_fd(scon)); nConn += 1; @@ -299,16 +283,10 @@ int s_time_main(int argc, char **argv) buf_len = BIO_snprintf(buf, sizeof(buf), fmt_http_get_cmd, www_path); if (buf_len <= 0 || SSL_write(scon, buf, buf_len) <= 0) goto end; - while ((i = SSL_read(scon, buf, sizeof(buf))) > 0 || - SSL_get_error(scon, i) == SSL_ERROR_WANT_READ || - SSL_get_error(scon, i) == SSL_ERROR_WANT_WRITE) + while ((i = SSL_read(scon, buf, sizeof(buf))) > 0) continue; } -#ifdef NO_SHUTDOWN SSL_set_shutdown(scon, SSL_SENT_SHUTDOWN | SSL_RECEIVED_SHUTDOWN); -#else - SSL_shutdown(scon); -#endif BIO_closesocket(SSL_get_fd(scon)); nConn = 0; @@ -332,16 +310,10 @@ int s_time_main(int argc, char **argv) www_path); if (buf_len <= 0 || SSL_write(scon, buf, buf_len) <= 0) goto end; - while ((i = SSL_read(scon, buf, sizeof(buf))) > 0 || - SSL_get_error(scon, i) == SSL_ERROR_WANT_READ || - SSL_get_error(scon, i) == SSL_ERROR_WANT_WRITE) - if (i > 0) bytes_read += i; + while ((i = SSL_read(scon, buf, sizeof(buf))) > 0) + bytes_read += i; } -#ifdef NO_SHUTDOWN SSL_set_shutdown(scon, SSL_SENT_SHUTDOWN | SSL_RECEIVED_SHUTDOWN); -#else - SSL_shutdown(scon); -#endif BIO_closesocket(SSL_get_fd(scon)); nConn += 1; @@ -383,13 +355,13 @@ static SSL *doConnection(SSL *scon, const char *host, SSL_CTX *ctx) { BIO *conn; SSL *serverCon; - int width, i; - fd_set readfds; + int i; if ((conn = BIO_new(BIO_s_connect())) == NULL) return NULL; BIO_set_conn_hostname(conn, host); + BIO_set_conn_mode(conn, BIO_SOCK_NODELAY); if (scon == NULL) serverCon = SSL_new(ctx); @@ -401,26 +373,7 @@ static SSL *doConnection(SSL *scon, const char *host, SSL_CTX *ctx) SSL_set_bio(serverCon, conn, conn); /* ok, lets connect */ - for (;;) { - i = SSL_connect(serverCon); - if (BIO_sock_should_retry(i)) { - BIO_printf(bio_err, "DELAY\n"); - - i = SSL_get_fd(serverCon); - width = i + 1; - FD_ZERO(&readfds); - openssl_fdset(i, &readfds); - /* - * Note: under VMS with SOCKETSHR the 2nd parameter is currently - * of type (int *) whereas under other systems it is (void *) if - * you don't have a cast it will choke the compiler: if you do - * have a cast then you can either go for (int *) or (void *). - */ - select(width, (void *)&readfds, NULL, NULL, NULL); - continue; - } - break; - } + i = SSL_connect(serverCon); if (i <= 0) { BIO_printf(bio_err, "ERROR\n"); if (verify_args.error != X509_V_OK) @@ -433,6 +386,17 @@ static SSL *doConnection(SSL *scon, const char *host, SSL_CTX *ctx) return NULL; } +#if defined(SOL_SOCKET) && defined(SO_LINGER) + { + struct linger no_linger; + + no_linger.l_onoff = 1; + no_linger.l_linger = 0; + (void) setsockopt(SSL_get_fd(serverCon), SOL_SOCKET, SO_LINGER, + (char*)&no_linger, sizeof(no_linger)); + } +#endif + return serverCon; } #endif /* OPENSSL_NO_SOCK */ diff --git a/apps/speed.c b/apps/speed.c index 66271fdd..e5132631 100644 --- a/apps/speed.c +++ b/apps/speed.c @@ -113,12 +113,6 @@ #endif #define MAX_MISALIGNMENT 63 - -#define ALGOR_NUM 31 -#define RSA_NUM 7 -#define DSA_NUM 3 - -#define EC_NUM 18 #define MAX_ECDH_SIZE 256 #define MISALIGN 64 @@ -135,33 +129,6 @@ static volatile int run = 0; static int mr = 0; static int usertime = 1; -typedef struct loopargs_st { - ASYNC_JOB *inprogress_job; - ASYNC_WAIT_CTX *wait_ctx; - unsigned char *buf; - unsigned char *buf2; - unsigned char *buf_malloc; - unsigned char *buf2_malloc; - unsigned char *key; - unsigned int siglen; -#ifndef OPENSSL_NO_RSA - RSA *rsa_key[RSA_NUM]; -#endif -#ifndef OPENSSL_NO_DSA - DSA *dsa_key[DSA_NUM]; -#endif -#ifndef OPENSSL_NO_EC - EC_KEY *ecdsa[EC_NUM]; - EVP_PKEY_CTX *ecdh_ctx[EC_NUM]; - unsigned char *secret_a; - unsigned char *secret_b; - size_t outlen[EC_NUM]; -#endif - EVP_CIPHER_CTX *ctx; - HMAC_CTX *hctx; - GCM128_CONTEXT *gcm_ctx; -} loopargs_t; - #ifndef OPENSSL_NO_MD2 static int EVP_Digest_MD2_loop(void *args); #endif @@ -215,13 +182,11 @@ static int DSA_verify_loop(void *args); static int ECDSA_sign_loop(void *args); static int ECDSA_verify_loop(void *args); #endif -static int run_benchmark(int async_jobs, int (*loop_function) (void *), - loopargs_t * loopargs); static double Time_F(int s); static void print_message(const char *s, long num, int length, int tm); static void pkey_print_message(const char *str, const char *str2, - long num, int bits, int sec); + long num, unsigned int bits, int sec); static void print_result(int alg, int run_no, int count, double time_used); #ifndef NO_FORK static int do_multi(int multi, int size_num); @@ -230,34 +195,8 @@ static int do_multi(int multi, int size_num); static const int lengths_list[] = { 16, 64, 256, 1024, 8 * 1024, 16 * 1024 }; -static int lengths_single = 0; - static const int *lengths = lengths_list; -static const char *names[ALGOR_NUM] = { - "md2", "mdc2", "md4", "md5", "hmac(md5)", "sha1", "rmd160", "rc4", - "des cbc", "des ede3", "idea cbc", "seed cbc", - "rc2 cbc", "rc5-32/12 cbc", "blowfish cbc", "cast cbc", - "aes-128 cbc", "aes-192 cbc", "aes-256 cbc", - "camellia-128 cbc", "camellia-192 cbc", "camellia-256 cbc", - "evp", "sha256", "sha512", "whirlpool", - "aes-128 ige", "aes-192 ige", "aes-256 ige", "ghash", - "rand" -}; - -static double results[ALGOR_NUM][OSSL_NELEM(lengths_list)]; - -#ifndef OPENSSL_NO_RSA -static double rsa_results[RSA_NUM][2]; -#endif -#ifndef OPENSSL_NO_DSA -static double dsa_results[DSA_NUM][2]; -#endif -#ifndef OPENSSL_NO_EC -static double ecdsa_results[EC_NUM][2]; -static double ecdh_results[EC_NUM][1]; -#endif - #ifdef SIGALRM # if defined(__STDC__) || defined(sgi) || defined(_AIX) # define SIGRETTYPE void @@ -334,12 +273,17 @@ static double Time_F(int s) } #endif -static void multiblock_speed(const EVP_CIPHER *evp_cipher, +static void multiblock_speed(const EVP_CIPHER *evp_cipher, int lengths_single, const openssl_speed_sec_t *seconds); -static int found(const char *name, const OPT_PAIR *pairs, int *result) +#define found(value, pairs, result)\ + opt_found(value, result, pairs, OSSL_NELEM(pairs)) +static int opt_found(const char *name, unsigned int *result, + const OPT_PAIR pairs[], unsigned int nbelem) { - for (; pairs->name; pairs++) + unsigned int idx; + + for (idx = 0; idx < nbelem; ++idx, pairs++) if (strcmp(name, pairs->name) == 0) { *result = pairs->retval; return 1; @@ -383,7 +327,7 @@ const OPTIONS speed_options[] = { "Run benchmarks for pnum seconds"}, {"bytes", OPT_BYTES, 'p', "Run cipher, digest and rand benchmarks on pnum bytes"}, - {NULL}, + {NULL} }; #define D_MD2 0 @@ -417,7 +361,21 @@ const OPTIONS speed_options[] = { #define D_IGE_256_AES 28 #define D_GHASH 29 #define D_RAND 30 -static OPT_PAIR doit_choices[] = { +/* name of algorithms to test */ +static const char *names[] = { + "md2", "mdc2", "md4", "md5", "hmac(md5)", "sha1", "rmd160", "rc4", + "des cbc", "des ede3", "idea cbc", "seed cbc", + "rc2 cbc", "rc5-32/12 cbc", "blowfish cbc", "cast cbc", + "aes-128 cbc", "aes-192 cbc", "aes-256 cbc", + "camellia-128 cbc", "camellia-192 cbc", "camellia-256 cbc", + "evp", "sha256", "sha512", "whirlpool", + "aes-128 ige", "aes-192 ige", "aes-256 ige", "ghash", + "rand" +}; +#define ALGOR_NUM OSSL_NELEM(names) + +/* list of configured algorithm (remaining) */ +static const OPT_PAIR doit_choices[] = { #ifndef OPENSSL_NO_MD2 {"md2", D_MD2}, #endif @@ -482,21 +440,24 @@ static OPT_PAIR doit_choices[] = { {"cast5", D_CBC_CAST}, #endif {"ghash", D_GHASH}, - {"rand", D_RAND}, - {NULL} + {"rand", D_RAND} }; +static double results[ALGOR_NUM][OSSL_NELEM(lengths_list)]; + #ifndef OPENSSL_NO_DSA # define R_DSA_512 0 # define R_DSA_1024 1 # define R_DSA_2048 2 -static OPT_PAIR dsa_choices[] = { +static const OPT_PAIR dsa_choices[] = { {"dsa512", R_DSA_512}, {"dsa1024", R_DSA_1024}, - {"dsa2048", R_DSA_2048}, - {NULL}, + {"dsa2048", R_DSA_2048} }; -#endif +# define DSA_NUM OSSL_NELEM(dsa_choices) + +static double dsa_results[DSA_NUM][2]; /* 2 ops: sign then verify */ +#endif /* OPENSSL_NO_DSA */ #define R_RSA_512 0 #define R_RSA_1024 1 @@ -505,16 +466,20 @@ static OPT_PAIR dsa_choices[] = { #define R_RSA_4096 4 #define R_RSA_7680 5 #define R_RSA_15360 6 -static OPT_PAIR rsa_choices[] = { +#ifndef OPENSSL_NO_RSA +static const OPT_PAIR rsa_choices[] = { {"rsa512", R_RSA_512}, {"rsa1024", R_RSA_1024}, {"rsa2048", R_RSA_2048}, {"rsa3072", R_RSA_3072}, {"rsa4096", R_RSA_4096}, {"rsa7680", R_RSA_7680}, - {"rsa15360", R_RSA_15360}, - {NULL} + {"rsa15360", R_RSA_15360} }; +# define RSA_NUM OSSL_NELEM(rsa_choices) + +static double rsa_results[RSA_NUM][2]; /* 2 ops: sign then verify */ +#endif /* OPENSSL_NO_RSA */ #define R_EC_P160 0 #define R_EC_P192 1 @@ -532,8 +497,14 @@ static OPT_PAIR rsa_choices[] = { #define R_EC_B283 13 #define R_EC_B409 14 #define R_EC_B571 15 -#define R_EC_X25519 16 -#define R_EC_X448 17 +#define R_EC_BRP256R1 16 +#define R_EC_BRP256T1 17 +#define R_EC_BRP384R1 18 +#define R_EC_BRP384T1 19 +#define R_EC_BRP512R1 20 +#define R_EC_BRP512T1 21 +#define R_EC_X25519 22 +#define R_EC_X448 23 #ifndef OPENSSL_NO_EC static OPT_PAIR ecdsa_choices[] = { {"ecdsap160", R_EC_P160}, @@ -552,10 +523,18 @@ static OPT_PAIR ecdsa_choices[] = { {"ecdsab283", R_EC_B283}, {"ecdsab409", R_EC_B409}, {"ecdsab571", R_EC_B571}, - {NULL} + {"ecdsabrp256r1", R_EC_BRP256R1}, + {"ecdsabrp256t1", R_EC_BRP256T1}, + {"ecdsabrp384r1", R_EC_BRP384R1}, + {"ecdsabrp384t1", R_EC_BRP384T1}, + {"ecdsabrp512r1", R_EC_BRP512R1}, + {"ecdsabrp512t1", R_EC_BRP512T1} }; +# define ECDSA_NUM OSSL_NELEM(ecdsa_choices) -static OPT_PAIR ecdh_choices[] = { +static double ecdsa_results[ECDSA_NUM][2]; /* 2 ops: sign then verify */ + +static const OPT_PAIR ecdh_choices[] = { {"ecdhp160", R_EC_P160}, {"ecdhp192", R_EC_P192}, {"ecdhp224", R_EC_P224}, @@ -572,11 +551,19 @@ static OPT_PAIR ecdh_choices[] = { {"ecdhb283", R_EC_B283}, {"ecdhb409", R_EC_B409}, {"ecdhb571", R_EC_B571}, + {"ecdhbrp256r1", R_EC_BRP256R1}, + {"ecdhbrp256t1", R_EC_BRP256T1}, + {"ecdhbrp384r1", R_EC_BRP384R1}, + {"ecdhbrp384t1", R_EC_BRP384T1}, + {"ecdhbrp512r1", R_EC_BRP512R1}, + {"ecdhbrp512t1", R_EC_BRP512T1}, {"ecdhx25519", R_EC_X25519}, - {"ecdhx448", R_EC_X448}, - {NULL} + {"ecdhx448", R_EC_X448} }; -#endif +# define EC_NUM OSSL_NELEM(ecdh_choices) + +static double ecdh_results[EC_NUM][1]; /* 1 op: derivation */ +#endif /* OPENSSL_NO_EC */ #ifndef SIGALRM # define COND(d) (count < (d)) @@ -586,7 +573,36 @@ static OPT_PAIR ecdh_choices[] = { # define COUNT(d) (count) #endif /* SIGALRM */ -static int testnum; +typedef struct loopargs_st { + ASYNC_JOB *inprogress_job; + ASYNC_WAIT_CTX *wait_ctx; + unsigned char *buf; + unsigned char *buf2; + unsigned char *buf_malloc; + unsigned char *buf2_malloc; + unsigned char *key; + unsigned int siglen; +#ifndef OPENSSL_NO_RSA + RSA *rsa_key[RSA_NUM]; +#endif +#ifndef OPENSSL_NO_DSA + DSA *dsa_key[DSA_NUM]; +#endif +#ifndef OPENSSL_NO_EC + EC_KEY *ecdsa[ECDSA_NUM]; + EVP_PKEY_CTX *ecdh_ctx[EC_NUM]; + unsigned char *secret_a; + unsigned char *secret_b; + size_t outlen[EC_NUM]; +#endif + EVP_CIPHER_CTX *ctx; + HMAC_CTX *hctx; + GCM128_CONTEXT *gcm_ctx; +} loopargs_t; +static int run_benchmark(int async_jobs, int (*loop_function) (void *), + loopargs_t * loopargs); + +static unsigned int testnum; /* Nb of iterations to do per algorithm and key-size */ static long c[ALGOR_NUM][OSSL_NELEM(lengths_list)]; @@ -1040,7 +1056,7 @@ static int DSA_verify_loop(void *args) #endif #ifndef OPENSSL_NO_EC -static long ecdsa_c[EC_NUM][2]; +static long ecdsa_c[ECDSA_NUM][2]; static int ECDSA_sign_loop(void *args) { loopargs_t *tempargs = *(loopargs_t **) args; @@ -1258,31 +1274,28 @@ int speed_main(int argc, char **argv) ENGINE *e = NULL; int (*loopfunc)(void *args); loopargs_t *loopargs = NULL; - int async_init = 0; - int loopargs_len = 0; - char *prog; + const char *prog; const char *engine_id = NULL; const EVP_CIPHER *evp_cipher = NULL; double d = 0.0; OPTION_CHOICE o; - int multiblock = 0, pr_header = 0; + int async_init = 0, multiblock = 0, pr_header = 0; int doit[ALGOR_NUM] = { 0 }; - int ret = 1, i, k, misalign = 0; + int ret = 1, misalign = 0, lengths_single = 0; long count = 0; - int size_num = OSSL_NELEM(lengths_list); + unsigned int size_num = OSSL_NELEM(lengths_list); + unsigned int i, k, loop, loopargs_len = 0, async_jobs = 0; int keylen; int buflen; #ifndef NO_FORK int multi = 0; #endif - unsigned int async_jobs = 0; #if !defined(OPENSSL_NO_RSA) || !defined(OPENSSL_NO_DSA) \ || !defined(OPENSSL_NO_EC) long rsa_count = 1; #endif -#ifndef OPENSSL_NO_EC - size_t loop; -#endif + openssl_speed_sec_t seconds = { SECONDS, RSA_SECONDS, DSA_SECONDS, + ECDSA_SECONDS, ECDH_SECONDS }; /* What follows are the buffers and key material. */ #ifndef OPENSSL_NO_RC5 @@ -1367,48 +1380,46 @@ int speed_main(int argc, char **argv) /* * We only test over the following curves as they are representative, To * add tests over more curves, simply add the curve NID and curve name to - * the following arrays and increase the EC_NUM value accordingly. + * the following arrays and increase the |ecdh_choices| list accordingly. */ - static const unsigned int test_curves[EC_NUM] = { + static const struct { + const char *name; + unsigned int nid; + unsigned int bits; + } test_curves[] = { /* Prime Curves */ - NID_secp160r1, NID_X9_62_prime192v1, NID_secp224r1, - NID_X9_62_prime256v1, NID_secp384r1, NID_secp521r1, + {"secp160r1", NID_secp160r1, 160}, + {"nistp192", NID_X9_62_prime192v1, 192}, + {"nistp224", NID_secp224r1, 224}, + {"nistp256", NID_X9_62_prime256v1, 256}, + {"nistp384", NID_secp384r1, 384}, + {"nistp521", NID_secp521r1, 521}, /* Binary Curves */ - NID_sect163k1, NID_sect233k1, NID_sect283k1, - NID_sect409k1, NID_sect571k1, NID_sect163r2, - NID_sect233r1, NID_sect283r1, NID_sect409r1, - NID_sect571r1, - /* Other */ - NID_X25519, NID_X448 + {"nistk163", NID_sect163k1, 163}, + {"nistk233", NID_sect233k1, 233}, + {"nistk283", NID_sect283k1, 283}, + {"nistk409", NID_sect409k1, 409}, + {"nistk571", NID_sect571k1, 571}, + {"nistb163", NID_sect163r2, 163}, + {"nistb233", NID_sect233r1, 233}, + {"nistb283", NID_sect283r1, 283}, + {"nistb409", NID_sect409r1, 409}, + {"nistb571", NID_sect571r1, 571}, + {"brainpoolP256r1", NID_brainpoolP256r1, 256}, + {"brainpoolP256t1", NID_brainpoolP256t1, 256}, + {"brainpoolP384r1", NID_brainpoolP384r1, 384}, + {"brainpoolP384t1", NID_brainpoolP384t1, 384}, + {"brainpoolP512r1", NID_brainpoolP512r1, 512}, + {"brainpoolP512t1", NID_brainpoolP512t1, 512}, + /* Other and ECDH only ones */ + {"X25519", NID_X25519, 253}, + {"X448", NID_X448, 448} }; - static const char *test_curves_names[EC_NUM] = { - /* Prime Curves */ - "secp160r1", "nistp192", "nistp224", - "nistp256", "nistp384", "nistp521", - /* Binary Curves */ - "nistk163", "nistk233", "nistk283", - "nistk409", "nistk571", "nistb163", - "nistb233", "nistb283", "nistb409", - "nistb571", - /* Other */ - "X25519", "X448" - }; - static const int test_curves_bits[EC_NUM] = { - 160, 192, 224, - 256, 384, 521, - 163, 233, 283, - 409, 571, 163, - 233, 283, 409, - 571, 253, 448 - }; - - int ecdsa_doit[EC_NUM] = { 0 }; + int ecdsa_doit[ECDSA_NUM] = { 0 }; int ecdh_doit[EC_NUM] = { 0 }; + OPENSSL_assert(OSSL_NELEM(test_curves) >= EC_NUM); #endif /* ndef OPENSSL_NO_EC */ - openssl_speed_sec_t seconds = { SECONDS, RSA_SECONDS, DSA_SECONDS, - ECDSA_SECONDS, ECDH_SECONDS }; - prog = opt_init(argc, argv, speed_options); while ((o = opt_next()) != OPT_EOF) { switch (o) { @@ -1463,9 +1474,7 @@ int speed_main(int argc, char **argv) goto opterr; } if (async_jobs > 99999) { - BIO_printf(bio_err, - "%s: too many async_jobs\n", - prog); + BIO_printf(bio_err, "%s: too many async_jobs\n", prog); goto opterr; } #endif @@ -1533,10 +1542,8 @@ int speed_main(int argc, char **argv) if (strcmp(*argv, "openssl") == 0) continue; if (strcmp(*argv, "rsa") == 0) { - rsa_doit[R_RSA_512] = rsa_doit[R_RSA_1024] = - rsa_doit[R_RSA_2048] = rsa_doit[R_RSA_3072] = - rsa_doit[R_RSA_4096] = rsa_doit[R_RSA_7680] = - rsa_doit[R_RSA_15360] = 1; + for (loop = 0; loop < OSSL_NELEM(rsa_doit); loop++) + rsa_doit[loop] = 1; continue; } if (found(*argv, rsa_choices, &i)) { @@ -1567,8 +1574,8 @@ int speed_main(int argc, char **argv) #endif #ifndef OPENSSL_NO_EC if (strcmp(*argv, "ecdsa") == 0) { - for (loop = 0; loop < OSSL_NELEM(ecdsa_choices); loop++) - ecdsa_doit[ecdsa_choices[loop].retval] = 1; + for (loop = 0; loop < OSSL_NELEM(ecdsa_doit); loop++) + ecdsa_doit[loop] = 1; continue; } if (found(*argv, ecdsa_choices, &i)) { @@ -1576,8 +1583,8 @@ int speed_main(int argc, char **argv) continue; } if (strcmp(*argv, "ecdh") == 0) { - for (loop = 0; loop < OSSL_NELEM(ecdh_choices); loop++) - ecdh_doit[ecdh_choices[loop].retval] = 1; + for (loop = 0; loop < OSSL_NELEM(ecdh_doit); loop++) + ecdh_doit[loop] = 1; continue; } if (found(*argv, ecdh_choices, &i)) { @@ -1649,10 +1656,10 @@ int speed_main(int argc, char **argv) dsa_doit[i] = 1; #endif #ifndef OPENSSL_NO_EC - for (loop = 0; loop < OSSL_NELEM(ecdsa_choices); loop++) - ecdsa_doit[ecdsa_choices[loop].retval] = 1; - for (loop = 0; loop < OSSL_NELEM(ecdh_choices); loop++) - ecdh_doit[ecdh_choices[loop].retval] = 1; + for (loop = 0; loop < OSSL_NELEM(ecdsa_doit); loop++) + ecdsa_doit[loop] = 1; + for (loop = 0; loop < OSSL_NELEM(ecdh_doit); loop++) + ecdh_doit[loop] = 1; #endif } for (i = 0; i < ALGOR_NUM; i++) @@ -1922,6 +1929,32 @@ int speed_main(int argc, char **argv) } } } + /* repeated code good to factorize */ + ecdh_c[R_EC_BRP256R1][0] = count / 1000; + for (i = R_EC_BRP384R1; i <= R_EC_BRP512R1; i += 2) { + ecdh_c[i][0] = ecdh_c[i - 2][0] / 2; + if (ecdh_doit[i] <= 1 && ecdh_c[i][0] == 0) + ecdh_doit[i] = 0; + else { + if (ecdh_c[i][0] == 0) { + ecdh_c[i][0] = 1; + } + } + } + ecdh_c[R_EC_BRP256T1][0] = count / 1000; + for (i = R_EC_BRP384T1; i <= R_EC_BRP512T1; i += 2) { + ecdh_c[i][0] = ecdh_c[i - 2][0] / 2; + if (ecdh_doit[i] <= 1 && ecdh_c[i][0] == 0) + ecdh_doit[i] = 0; + else { + if (ecdh_c[i][0] == 0) { + ecdh_c[i][0] = 1; + } + } + } + /* default iteration count for the last two EC Curves */ + ecdh_c[R_EC_X25519][0] = count / 1800; + ecdh_c[R_EC_X448][0] = count / 7200; # endif # else @@ -2399,7 +2432,7 @@ int speed_main(int argc, char **argv) BIO_printf(bio_err, "Async mode is not supported, exiting..."); exit(1); } - multiblock_speed(evp_cipher, &seconds); + multiblock_speed(evp_cipher, lengths_single, &seconds); ret = 0; goto end; } @@ -2512,7 +2545,7 @@ int speed_main(int argc, char **argv) d = Time_F(STOP); BIO_printf(bio_err, mr ? "+R1:%ld:%d:%.2f\n" - : "%ld %d bit private RSA's in %.2fs\n", + : "%ld %u bits private RSA's in %.2fs\n", count, rsa_bits[testnum], d); rsa_results[testnum][0] = (double)count / d; rsa_count = count; @@ -2538,7 +2571,7 @@ int speed_main(int argc, char **argv) d = Time_F(STOP); BIO_printf(bio_err, mr ? "+R2:%ld:%d:%.2f\n" - : "%ld %d bit public RSA's in %.2fs\n", + : "%ld %u bits public RSA's in %.2fs\n", count, rsa_bits[testnum], d); rsa_results[testnum][1] = (double)count / d; } @@ -2581,8 +2614,8 @@ int speed_main(int argc, char **argv) count = run_benchmark(async_jobs, DSA_sign_loop, loopargs); d = Time_F(STOP); BIO_printf(bio_err, - mr ? "+R3:%ld:%d:%.2f\n" - : "%ld %d bit DSA signs in %.2fs\n", + mr ? "+R3:%ld:%u:%.2f\n" + : "%ld %u bits DSA signs in %.2fs\n", count, dsa_bits[testnum], d); dsa_results[testnum][0] = (double)count / d; rsa_count = count; @@ -2607,8 +2640,8 @@ int speed_main(int argc, char **argv) count = run_benchmark(async_jobs, DSA_verify_loop, loopargs); d = Time_F(STOP); BIO_printf(bio_err, - mr ? "+R4:%ld:%d:%.2f\n" - : "%ld %d bit DSA verify in %.2fs\n", + mr ? "+R4:%ld:%u:%.2f\n" + : "%ld %u bits DSA verify in %.2fs\n", count, dsa_bits[testnum], d); dsa_results[testnum][1] = (double)count / d; } @@ -2622,14 +2655,14 @@ int speed_main(int argc, char **argv) #endif /* OPENSSL_NO_DSA */ #ifndef OPENSSL_NO_EC - for (testnum = 0; testnum < EC_NUM; testnum++) { + for (testnum = 0; testnum < ECDSA_NUM; testnum++) { int st = 1; if (!ecdsa_doit[testnum]) continue; /* Ignore Curve */ for (i = 0; i < loopargs_len; i++) { loopargs[i].ecdsa[testnum] = - EC_KEY_new_by_curve_name(test_curves[testnum]); + EC_KEY_new_by_curve_name(test_curves[testnum].nid); if (loopargs[i].ecdsa[testnum] == NULL) { st = 0; break; @@ -2658,16 +2691,15 @@ int speed_main(int argc, char **argv) } else { pkey_print_message("sign", "ecdsa", ecdsa_c[testnum][0], - test_curves_bits[testnum], - seconds.ecdsa); + test_curves[testnum].bits, seconds.ecdsa); Time_F(START); count = run_benchmark(async_jobs, ECDSA_sign_loop, loopargs); d = Time_F(STOP); BIO_printf(bio_err, - mr ? "+R5:%ld:%d:%.2f\n" : - "%ld %d bit ECDSA signs in %.2fs \n", - count, test_curves_bits[testnum], d); + mr ? "+R5:%ld:%u:%.2f\n" : + "%ld %u bits ECDSA signs in %.2fs \n", + count, test_curves[testnum].bits, d); ecdsa_results[testnum][0] = (double)count / d; rsa_count = count; } @@ -2688,15 +2720,14 @@ int speed_main(int argc, char **argv) } else { pkey_print_message("verify", "ecdsa", ecdsa_c[testnum][1], - test_curves_bits[testnum], - seconds.ecdsa); + test_curves[testnum].bits, seconds.ecdsa); Time_F(START); count = run_benchmark(async_jobs, ECDSA_verify_loop, loopargs); d = Time_F(STOP); BIO_printf(bio_err, - mr ? "+R6:%ld:%d:%.2f\n" - : "%ld %d bit ECDSA verify in %.2fs\n", - count, test_curves_bits[testnum], d); + mr ? "+R6:%ld:%u:%.2f\n" + : "%ld %u bits ECDSA verify in %.2fs\n", + count, test_curves[testnum].bits, d); ecdsa_results[testnum][1] = (double)count / d; } @@ -2736,7 +2767,7 @@ int speed_main(int argc, char **argv) * If this fails we try creating a EVP_PKEY_EC generic param ctx, * then we set the curve by NID before deriving the actual keygen * ctx for that specific curve. */ - kctx = EVP_PKEY_CTX_new_id(test_curves[testnum], NULL); /* keygen ctx from NID */ + kctx = EVP_PKEY_CTX_new_id(test_curves[testnum].nid, NULL); /* keygen ctx from NID */ if (!kctx) { EVP_PKEY_CTX *pctx = NULL; EVP_PKEY *params = NULL; @@ -2767,7 +2798,7 @@ int speed_main(int argc, char **argv) /* Set the curve by NID */ !EVP_PKEY_CTX_set_ec_paramgen_curve_nid(pctx, test_curves - [testnum]) || + [testnum].nid) || /* Create the parameter object params */ !EVP_PKEY_paramgen(pctx, ¶ms)) { ecdh_checks = 0; @@ -2849,23 +2880,22 @@ int speed_main(int argc, char **argv) if (ecdh_checks != 0) { pkey_print_message("", "ecdh", ecdh_c[testnum][0], - test_curves_bits[testnum], - seconds.ecdh); + test_curves[testnum].bits, seconds.ecdh); Time_F(START); count = run_benchmark(async_jobs, ECDH_EVP_derive_key_loop, loopargs); d = Time_F(STOP); BIO_printf(bio_err, mr ? "+R7:%ld:%d:%.2f\n" : - "%ld %d-bit ECDH ops in %.2fs\n", count, - test_curves_bits[testnum], d); + "%ld %u-bits ECDH ops in %.2fs\n", count, + test_curves[testnum].bits, d); ecdh_results[testnum][0] = (double)count / d; rsa_count = count; } if (rsa_count <= 1) { /* if longer than 10s, don't do any more */ - for (testnum++; testnum < EC_NUM; testnum++) + for (testnum++; testnum < OSSL_NELEM(ecdh_doit); testnum++) ecdh_doit[testnum] = 0; } } @@ -2914,7 +2944,7 @@ int speed_main(int argc, char **argv) if (!doit[k]) continue; if (mr) - printf("+F:%d:%s", k, names[k]); + printf("+F:%u:%s", k, names[k]); else printf("%-13s", names[k]); for (testnum = 0; testnum < size_num; testnum++) { @@ -2963,7 +2993,7 @@ int speed_main(int argc, char **argv) #endif #ifndef OPENSSL_NO_EC testnum = 1; - for (k = 0; k < EC_NUM; k++) { + for (k = 0; k < OSSL_NELEM(ecdsa_doit); k++) { if (!ecdsa_doit[k]) continue; if (testnum && !mr) { @@ -2973,12 +3003,11 @@ int speed_main(int argc, char **argv) if (mr) printf("+F4:%u:%u:%f:%f\n", - k, test_curves_bits[k], + k, test_curves[k].bits, ecdsa_results[k][0], ecdsa_results[k][1]); else - printf("%4u bit ecdsa (%s) %8.4fs %8.4fs %8.1f %8.1f\n", - test_curves_bits[k], - test_curves_names[k], + printf("%4u bits ecdsa (%s) %8.4fs %8.4fs %8.1f %8.1f\n", + test_curves[k].bits, test_curves[k].name, 1.0 / ecdsa_results[k][0], 1.0 / ecdsa_results[k][1], ecdsa_results[k][0], ecdsa_results[k][1]); } @@ -2993,13 +3022,12 @@ int speed_main(int argc, char **argv) } if (mr) printf("+F5:%u:%u:%f:%f\n", - k, test_curves_bits[k], + k, test_curves[k].bits, ecdh_results[k][0], 1.0 / ecdh_results[k][0]); else - printf("%4u bit ecdh (%s) %8.4fs %8.1f\n", - test_curves_bits[k], - test_curves_names[k], + printf("%4u bits ecdh (%s) %8.4fs %8.1f\n", + test_curves[k].bits, test_curves[k].name, 1.0 / ecdh_results[k][0], ecdh_results[k][0]); } #endif @@ -3021,10 +3049,10 @@ int speed_main(int argc, char **argv) DSA_free(loopargs[i].dsa_key[k]); #endif #ifndef OPENSSL_NO_EC - for (k = 0; k < EC_NUM; k++) { + for (k = 0; k < ECDSA_NUM; k++) EC_KEY_free(loopargs[i].ecdsa[k]); + for (k = 0; k < EC_NUM; k++) EVP_PKEY_CTX_free(loopargs[i].ecdh_ctx[k]); - } OPENSSL_free(loopargs[i].secret_a); OPENSSL_free(loopargs[i].secret_b); #endif @@ -3060,18 +3088,18 @@ static void print_message(const char *s, long num, int length, int tm) } static void pkey_print_message(const char *str, const char *str2, long num, - int bits, int tm) + unsigned int bits, int tm) { #ifdef SIGALRM BIO_printf(bio_err, mr ? "+DTP:%d:%s:%s:%d\n" - : "Doing %d bit %s %s's for %ds: ", bits, str, str2, tm); + : "Doing %u bits %s %s's for %ds: ", bits, str, str2, tm); (void)BIO_flush(bio_err); alarm(tm); #else BIO_printf(bio_err, mr ? "+DNP:%ld:%d:%s:%s\n" - : "Doing %ld %d bit %s %s's: ", num, bits, str, str2); + : "Doing %ld %u bits %s %s's: ", num, bits, str, str2); (void)BIO_flush(bio_err); #endif } @@ -3124,7 +3152,7 @@ static int do_multi(int multi, int size_num) int *fds; static char sep[] = ":"; - fds = malloc(sizeof(*fds) * multi); + fds = app_malloc(sizeof(*fds) * multi, "fd buffer for do_multi"); for (n = 0; n < multi; ++n) { if (pipe(fd) == -1) { BIO_printf(bio_err, "pipe failure\n"); @@ -3249,7 +3277,7 @@ static int do_multi(int multi, int size_num) } #endif -static void multiblock_speed(const EVP_CIPHER *evp_cipher, +static void multiblock_speed(const EVP_CIPHER *evp_cipher, int lengths_single, const openssl_speed_sec_t *seconds) { static const int mblengths_list[] = diff --git a/apps/spkac.c b/apps/spkac.c index 8ed9dd92..f384af6e 100644 --- a/apps/spkac.c +++ b/apps/spkac.c @@ -98,7 +98,7 @@ int spkac_main(int argc, char **argv) case OPT_KEYFORM: if (!opt_format(opt_arg(), OPT_FMT_ANY, &keyformat)) goto opthelp; - break; + break; case OPT_CHALLENGE: challenge = opt_arg(); break; diff --git a/apps/tsget.in b/apps/tsget.in index c3420db6..bec365e2 100644 --- a/apps/tsget.in +++ b/apps/tsget.in @@ -1,5 +1,5 @@ #!{- $config{HASHBANGPERL} -} -# Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. # Copyright (c) 2002 The OpenTSA Project. All rights reserved. # # Licensed under the OpenSSL license (the "License"). You may not use diff --git a/apps/verify.c b/apps/verify.c index 5ad6ef41..38377a57 100644 --- a/apps/verify.c +++ b/apps/verify.c @@ -225,6 +225,7 @@ static int check(X509_STORE *ctx, const char *file, X509_STORE_set_flags(ctx, vflags); if (!X509_STORE_CTX_init(csc, ctx, x, uchain)) { + X509_STORE_CTX_free(csc); printf("error %s: X.509 store context initialization failed\n", (file == NULL) ? "stdin" : file); goto end; diff --git a/apps/x509.c b/apps/x509.c index 1bb9ceff..11366425 100644 --- a/apps/x509.c +++ b/apps/x509.c @@ -467,10 +467,6 @@ int x509_main(int argc, char **argv) goto opthelp; } - out = bio_open_default(outfile, 'w', outformat); - if (out == NULL) - goto end; - if (!app_passwd(passinarg, NULL, &passin, NULL)) { BIO_printf(bio_err, "Error getting password\n"); goto end; @@ -596,10 +592,12 @@ int x509_main(int argc, char **argv) goto end; } - if (!noout || text || next_serial) { - OBJ_create("2.99999.3", "SET.ex3", "SET x509v3 extension 3"); + out = bio_open_default(outfile, 'w', outformat); + if (out == NULL) + goto end; - } + if (!noout || text || next_serial) + OBJ_create("2.99999.3", "SET.ex3", "SET x509v3 extension 3"); if (alias) X509_alias_set1(x, (unsigned char *)alias, -1); diff --git a/appveyor.yml b/appveyor.yml index 5074a311..24966c0f 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -43,7 +43,8 @@ build_script: - cd _build - ps: >- If ($env:Configuration -Match "shared" -or $env:EXTENDED_TESTS) { - cmd /c "nmake 2>&1" + cmd /c "nmake build_all_generated 2>&1" + cmd /c "nmake PERL=no-perl 2>&1" } - cd .. @@ -60,6 +61,6 @@ test_script: - ps: >- if ($env:EXTENDED_TESTS) { mkdir ..\_install - cmd /c "nmake install install_docs DESTDIR=..\_install 2>&1" + cmd /c "nmake install DESTDIR=..\_install 2>&1" } - cd .. diff --git a/config b/config index 92dfa4af..b8adf349 100755 --- a/config +++ b/config @@ -1,5 +1,5 @@ #!/bin/sh -# Copyright 1998-2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 1998-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -240,21 +240,6 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in esac ;; - QNX:*) - case "$RELEASE" in - 4*) - echo "${MACHINE}-whatever-qnx4" - ;; - 6*) - echo "${MACHINE}-whatever-qnx6" - ;; - *) - echo "${MACHINE}-whatever-qnx" - ;; - esac - exit 0 - ;; - Paragon*:*:*:*) echo "i860-intel-osf1"; exit 0 ;; @@ -775,7 +760,11 @@ case "$GUESSOS" in OUT="hpux-ia64-cc" fi elif [ $CPU_VERSION -ge 532 ]; then # PA-RISC 2.x CPU - OUT=${OUT:-"hpux-parisc2-${CC}"} + # PA-RISC 2.0 is no longer supported as separate 32-bit + # target. This is compensated for by run-time detection + # in most critical assembly modules and taking advantage + # of 2.0 architecture in PA-RISC 1.1 build. + OUT=${OUT:-"hpux-parisc1_1-${CC}"} if [ $KERNEL_BITS -eq 64 -a "$CC" = "cc" ]; then echo "WARNING! If you wish to build 64-bit library then you have to" echo " invoke '$THERE/Configure hpux64-parisc2-cc' *manually*." @@ -784,11 +773,6 @@ case "$GUESSOS" in (trap "stty `stty -g`; exit 0" 2 0; stty -icanon min 0 time 50; read waste) <&1 fi fi - # PA-RISC 2.0 is no longer supported as separate 32-bit - # target. This is compensated for by run-time detection - # in most critical assembly modules and taking advantage - # of 2.0 architecture in PA-RISC 1.1 build. - OUT="hpux-parisc1_1-${CC}" elif [ $CPU_VERSION -ge 528 ]; then # PA-RISC 1.1+ CPU OUT="hpux-parisc1_1-${CC}" elif [ $CPU_VERSION -ge 523 ]; then # PA-RISC 1.0 CPU @@ -831,8 +815,6 @@ case "$GUESSOS" in # these are all covered by the catchall below i[3456]86-*-cygwin) OUT="Cygwin-x86" ;; *-*-cygwin) OUT="Cygwin-${MACHINE}" ;; - x86pc-*-qnx6) OUT="QNX6-i386" ;; - *-*-qnx6) OUT="QNX6" ;; x86-*-android|i?86-*-android) OUT="android-x86" ;; armv[7-9]*-*-android) OUT="android-armeabi" @@ -858,14 +840,6 @@ if [ -n "$CONFIG_OPTIONS" ]; then options="$options $CONFIG_OPTIONS" fi -if expr "$options" : '.*no\-asm' > /dev/null; then :; else - if sh -c "$CROSS_COMPILE${CC:-gcc} -Wa,--help -c -o /tmp/null.$$.o -x assembler /dev/null && rm /tmp/null.$$.o" 2>&1 | \ - grep \\--noexecstack >/dev/null; then - __CNF_CFLAGS="$__CNF_CFLAGS -Wa,--noexecstack" - __CNF_CXXFLAGS="$__CNF_CXXFLAGS -Wa,--noexecstack" - fi -fi - # gcc < 2.8 does not support -march=ultrasparc if [ "$OUT" = solaris-sparcv9-gcc -a $GCCVER -lt 28 ] then @@ -886,7 +860,7 @@ case "$GUESSOS" in i386-*) options="$options 386" ;; esac -for i in aes aria bf camellia cast des dh dsa ec hmac idea md2 md5 mdc2 rc2 rc4 rc5 ripemd rsa seed sha sm3 sm4 +for i in aes aria bf camellia cast des dh dsa ec hmac idea md2 md5 mdc2 rc2 rc4 rc5 ripemd rsa seed sha sm2 sm3 sm4 do if [ ! -d $THERE/crypto/$i ] then diff --git a/crypto/aes/asm/aes-armv4.pl b/crypto/aes/asm/aes-armv4.pl index 2fa07551..99815899 100644 --- a/crypto/aes/asm/aes-armv4.pl +++ b/crypto/aes/asm/aes-armv4.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2007-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/crypto/aes/asm/aes-mips.pl b/crypto/aes/asm/aes-mips.pl index d81d76d7..716c3356 100644 --- a/crypto/aes/asm/aes-mips.pl +++ b/crypto/aes/asm/aes-mips.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2010-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -88,7 +88,7 @@ $pf = ($flavour =~ /nubi/i) ? $t0 : $t2; # ###################################################################### -$big_endian=(`echo MIPSEL | $ENV{CC} -E -`=~/MIPSEL/)?1:0 if ($ENV{CC}); +$big_endian=(`echo MIPSEB | $ENV{CC} -E -`=~/MIPSEB/)?0:1 if ($ENV{CC}); for (@ARGV) { $output=$_ if (/\w[\w\-]*\.\w+$/); } open STDOUT,">$output"; diff --git a/crypto/aes/asm/aesp8-ppc.pl b/crypto/aes/asm/aesp8-ppc.pl index 7463df6c..e1be23ab 100755 --- a/crypto/aes/asm/aesp8-ppc.pl +++ b/crypto/aes/asm/aesp8-ppc.pl @@ -40,6 +40,7 @@ # CBC en-/decrypt CTR XTS # POWER8[le] 3.96/0.72 0.74 1.1 # POWER8[be] 3.75/0.65 0.66 1.0 +# POWER9[le] 3.05/0.65 0.65 0.80 $flavour = shift; diff --git a/crypto/aes/asm/bsaes-armv7.pl b/crypto/aes/asm/bsaes-armv7.pl index 8a5f3f1b..bfe825af 100644 --- a/crypto/aes/asm/bsaes-armv7.pl +++ b/crypto/aes/asm/bsaes-armv7.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2012-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2012-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/crypto/arm_arch.h b/crypto/arm_arch.h index 547ec958..f11b543d 100644 --- a/crypto/arm_arch.h +++ b/crypto/arm_arch.h @@ -69,7 +69,7 @@ # endif # endif -# if !__ASSEMBLER__ +# ifndef __ASSEMBLER__ extern unsigned int OPENSSL_armcap_P; # endif diff --git a/crypto/armv4cpuid.pl b/crypto/armv4cpuid.pl index f7d31a69..ab007c19 100644 --- a/crypto/armv4cpuid.pl +++ b/crypto/armv4cpuid.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -125,7 +125,7 @@ CRYPTO_memcmp: ldmia sp!,{r4,r5} .Lno_data: - neg r0,ip + rsb r0,ip,#0 mov r0,r0,lsr#31 #if __ARM_ARCH__>=5 bx lr diff --git a/crypto/asn1/a_object.c b/crypto/asn1/a_object.c index b5e90a5a..42c138c2 100644 --- a/crypto/asn1/a_object.c +++ b/crypto/asn1/a_object.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -180,9 +180,10 @@ int i2a_ASN1_OBJECT(BIO *bp, const ASN1_OBJECT *a) return BIO_write(bp, "NULL", 4); i = i2t_ASN1_OBJECT(buf, sizeof(buf), a); if (i > (int)(sizeof(buf) - 1)) { - p = OPENSSL_malloc(i + 1); - if (p == NULL) + if ((p = OPENSSL_malloc(i + 1)) == NULL) { + ASN1err(ASN1_F_I2A_ASN1_OBJECT, ERR_R_MALLOC_FAILURE); return -1; + } i2t_ASN1_OBJECT(p, i + 1, a); } if (i <= 0) { diff --git a/crypto/asn1/a_strex.c b/crypto/asn1/a_strex.c index b91266b3..6a67bc8c 100644 --- a/crypto/asn1/a_strex.c +++ b/crypto/asn1/a_strex.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -139,7 +139,7 @@ static int do_buf(unsigned char *buf, int buflen, int type, unsigned short flags, char *quotes, char_io *io_ch, void *arg) { - int i, outlen, len; + int i, outlen, len, charwidth; unsigned short orflags; unsigned char *p, *q; unsigned long c; @@ -147,12 +147,32 @@ static int do_buf(unsigned char *buf, int buflen, p = buf; q = buf + buflen; outlen = 0; + charwidth = type & BUF_TYPE_WIDTH_MASK; + + switch (charwidth) { + case 4: + if (buflen & 3) { + ASN1err(ASN1_F_DO_BUF, ASN1_R_INVALID_UNIVERSALSTRING_LENGTH); + return -1; + } + break; + case 2: + if (buflen & 1) { + ASN1err(ASN1_F_DO_BUF, ASN1_R_INVALID_BMPSTRING_LENGTH); + return -1; + } + break; + default: + break; + } + while (p != q) { if (p == buf && flags & ASN1_STRFLGS_ESC_2253) orflags = CHARTYPE_FIRST_ESC_2253; else orflags = 0; - switch (type & BUF_TYPE_WIDTH_MASK) { + + switch (charwidth) { case 4: c = ((unsigned long)*p++) << 24; c |= ((unsigned long)*p++) << 16; @@ -173,6 +193,7 @@ static int do_buf(unsigned char *buf, int buflen, i = UTF8_getc(p, buflen, &c); if (i < 0) return -1; /* Invalid UTF8String */ + buflen -= i; p += i; break; default: @@ -259,9 +280,10 @@ static int do_dump(unsigned long lflags, char_io *io_ch, void *arg, t.type = str->type; t.value.ptr = (char *)str; der_len = i2d_ASN1_TYPE(&t, NULL); - der_buf = OPENSSL_malloc(der_len); - if (der_buf == NULL) + if ((der_buf = OPENSSL_malloc(der_len)) == NULL) { + ASN1err(ASN1_F_DO_DUMP, ERR_R_MALLOC_FAILURE); return -1; + } p = der_buf; i2d_ASN1_TYPE(&t, &p); outlen = do_hex_dump(io_ch, arg, der_buf, der_len); @@ -280,12 +302,22 @@ static int do_dump(unsigned long lflags, char_io *io_ch, void *arg, static const signed char tag2nbyte[] = { -1, -1, -1, -1, -1, /* 0-4 */ -1, -1, -1, -1, -1, /* 5-9 */ - -1, -1, 0, -1, /* 10-13 */ - -1, -1, -1, -1, /* 15-17 */ - 1, 1, 1, /* 18-20 */ - -1, 1, 1, 1, /* 21-24 */ - -1, 1, -1, /* 25-27 */ - 4, -1, 2 /* 28-30 */ + -1, -1, /* 10-11 */ + 0, /* 12 V_ASN1_UTF8STRING */ + -1, -1, -1, -1, -1, /* 13-17 */ + 1, /* 18 V_ASN1_NUMERICSTRING */ + 1, /* 19 V_ASN1_PRINTABLESTRING */ + 1, /* 20 V_ASN1_T61STRING */ + -1, /* 21 */ + 1, /* 22 V_ASN1_IA5STRING */ + 1, /* 23 V_ASN1_UTCTIME */ + 1, /* 24 V_ASN1_GENERALIZEDTIME */ + -1, /* 25 */ + 1, /* 26 V_ASN1_ISO64STRING */ + -1, /* 27 */ + 4, /* 28 V_ASN1_UNIVERSALSTRING */ + -1, /* 29 */ + 2 /* 30 V_ASN1_BMPSTRING */ }; /* diff --git a/crypto/asn1/a_strnid.c b/crypto/asn1/a_strnid.c index a7d6b0e3..f19a9de6 100644 --- a/crypto/asn1/a_strnid.c +++ b/crypto/asn1/a_strnid.c @@ -1,5 +1,5 @@ /* - * Copyright 1999-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1999-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -156,9 +156,10 @@ static ASN1_STRING_TABLE *stable_get(int nid) tmp = ASN1_STRING_TABLE_get(nid); if (tmp != NULL && tmp->flags & STABLE_FLAGS_MALLOC) return tmp; - rv = OPENSSL_zalloc(sizeof(*rv)); - if (rv == NULL) + if ((rv = OPENSSL_zalloc(sizeof(*rv))) == NULL) { + ASN1err(ASN1_F_STABLE_GET, ERR_R_MALLOC_FAILURE); return NULL; + } if (!sk_ASN1_STRING_TABLE_push(stable, rv)) { OPENSSL_free(rv); return NULL; diff --git a/crypto/asn1/ameth_lib.c b/crypto/asn1/ameth_lib.c index f8171986..b5f0293f 100644 --- a/crypto/asn1/ameth_lib.c +++ b/crypto/asn1/ameth_lib.c @@ -400,3 +400,20 @@ void EVP_PKEY_asn1_set_param_check(EVP_PKEY_ASN1_METHOD *ameth, { ameth->pkey_param_check = pkey_param_check; } + +void EVP_PKEY_asn1_set_set_priv_key(EVP_PKEY_ASN1_METHOD *ameth, + int (*set_priv_key) (EVP_PKEY *pk, + const unsigned char + *priv, + size_t len)) +{ + ameth->set_priv_key = set_priv_key; +} + +void EVP_PKEY_asn1_set_set_pub_key(EVP_PKEY_ASN1_METHOD *ameth, + int (*set_pub_key) (EVP_PKEY *pk, + const unsigned char *pub, + size_t len)) +{ + ameth->set_pub_key = set_pub_key; +} diff --git a/crypto/asn1/asn1_err.c b/crypto/asn1/asn1_err.c index da856b27..22bf06f0 100644 --- a/crypto/asn1/asn1_err.c +++ b/crypto/asn1/asn1_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -18,6 +18,7 @@ static const ERR_STRING_DATA ASN1_str_functs[] = { {ERR_PACK(ERR_LIB_ASN1, ASN1_F_A2I_ASN1_INTEGER, 0), "a2i_ASN1_INTEGER"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_A2I_ASN1_STRING, 0), "a2i_ASN1_STRING"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_APPEND_EXP, 0), "append_exp"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_BIO_INIT, 0), "asn1_bio_init"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_BIT_STRING_SET_BIT, 0), "ASN1_BIT_STRING_set_bit"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_CB, 0), "asn1_cb"}, @@ -31,6 +32,7 @@ static const ERR_STRING_DATA ASN1_str_functs[] = { {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_DO_ADB, 0), "asn1_do_adb"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_DO_LOCK, 0), "asn1_do_lock"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_DUP, 0), "ASN1_dup"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_ENC_SAVE, 0), "asn1_enc_save"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_EX_C2I, 0), "asn1_ex_c2i"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_FIND_END, 0), "asn1_find_end"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_GENERALIZEDTIME_ADJ, 0), @@ -47,6 +49,8 @@ static const ERR_STRING_DATA ASN1_str_functs[] = { "asn1_item_embed_d2i"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_ITEM_EMBED_NEW, 0), "asn1_item_embed_new"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_ITEM_FLAGS_I2D, 0), + "asn1_item_flags_i2d"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_ITEM_I2D_BIO, 0), "ASN1_item_i2d_bio"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_ITEM_I2D_FP, 0), "ASN1_item_i2d_fp"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_ITEM_PACK, 0), "ASN1_item_pack"}, @@ -60,6 +64,8 @@ static const ERR_STRING_DATA ASN1_str_functs[] = { {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_OBJECT_NEW, 0), "ASN1_OBJECT_new"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_OUTPUT_DATA, 0), "asn1_output_data"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_PCTX_NEW, 0), "ASN1_PCTX_new"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_PRIMITIVE_NEW, 0), + "asn1_primitive_new"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_SCTX_NEW, 0), "ASN1_SCTX_new"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_SIGN, 0), "ASN1_sign"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_ASN1_STR2TYPE, 0), "asn1_str2type"}, @@ -103,7 +109,11 @@ static const ERR_STRING_DATA ASN1_str_functs[] = { "d2i_AutoPrivateKey"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_D2I_PRIVATEKEY, 0), "d2i_PrivateKey"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_D2I_PUBLICKEY, 0), "d2i_PublicKey"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_DO_BUF, 0), "do_buf"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_DO_CREATE, 0), "do_create"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_DO_DUMP, 0), "do_dump"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_DO_TCREATE, 0), "do_tcreate"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_I2A_ASN1_OBJECT, 0), "i2a_ASN1_OBJECT"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_I2D_ASN1_BIO_STREAM, 0), "i2d_ASN1_bio_stream"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_I2D_DSA_PUBKEY, 0), "i2d_DSA_PUBKEY"}, @@ -112,6 +122,8 @@ static const ERR_STRING_DATA ASN1_str_functs[] = { {ERR_PACK(ERR_LIB_ASN1, ASN1_F_I2D_PUBLICKEY, 0), "i2d_PublicKey"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_I2D_RSA_PUBKEY, 0), "i2d_RSA_PUBKEY"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_LONG_C2I, 0), "long_c2i"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_NDEF_PREFIX, 0), "ndef_prefix"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_NDEF_SUFFIX, 0), "ndef_suffix"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_OID_MODULE_INIT, 0), "oid_module_init"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_PARSE_TAGGING, 0), "parse_tagging"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_PKCS5_PBE2_SET_IV, 0), "PKCS5_pbe2_set_iv"}, @@ -124,9 +136,12 @@ static const ERR_STRING_DATA ASN1_str_functs[] = { {ERR_PACK(ERR_LIB_ASN1, ASN1_F_PKCS5_SCRYPT_SET, 0), "pkcs5_scrypt_set"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_SMIME_READ_ASN1, 0), "SMIME_read_ASN1"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_SMIME_TEXT, 0), "SMIME_text"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_STABLE_GET, 0), "stable_get"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_STBL_MODULE_INIT, 0), "stbl_module_init"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_UINT32_C2I, 0), "uint32_c2i"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_UINT32_NEW, 0), "uint32_new"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_UINT64_C2I, 0), "uint64_c2i"}, + {ERR_PACK(ERR_LIB_ASN1, ASN1_F_UINT64_NEW, 0), "uint64_new"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_X509_CRL_ADD0_REVOKED, 0), "X509_CRL_add0_revoked"}, {ERR_PACK(ERR_LIB_ASN1, ASN1_F_X509_INFO_NEW, 0), "X509_INFO_new"}, @@ -246,6 +261,7 @@ static const ERR_STRING_DATA ASN1_str_reasons[] = { {ERR_PACK(ERR_LIB_ASN1, 0, ASN1_R_MSTRING_WRONG_TAG), "mstring wrong tag"}, {ERR_PACK(ERR_LIB_ASN1, 0, ASN1_R_NESTED_ASN1_STRING), "nested asn1 string"}, + {ERR_PACK(ERR_LIB_ASN1, 0, ASN1_R_NESTED_TOO_DEEP), "nested too deep"}, {ERR_PACK(ERR_LIB_ASN1, 0, ASN1_R_NON_HEX_CHARACTERS), "non hex characters"}, {ERR_PACK(ERR_LIB_ASN1, 0, ASN1_R_NOT_ASCII_FORMAT), "not ascii format"}, diff --git a/crypto/asn1/asn_mime.c b/crypto/asn1/asn_mime.c index 7f4db6a2..aa92a8e1 100644 --- a/crypto/asn1/asn_mime.c +++ b/crypto/asn1/asn_mime.c @@ -953,12 +953,14 @@ static int strip_eol(char *linebuf, int *plen, int flags) for (p = linebuf + len - 1; len > 0; len--, p--) { c = *p; - if (c == '\n') + if (c == '\n') { is_eol = 1; - else if (is_eol && flags & SMIME_ASCIICRLF && c < 33) + } else if (is_eol && flags & SMIME_ASCIICRLF && c == 32) { + /* Strip trailing space on a line; 32 == ASCII for ' ' */ continue; - else if (c != '\r') + } else if (c != '\r') { break; + } } *plen = len; return is_eol; diff --git a/crypto/asn1/asn_moid.c b/crypto/asn1/asn_moid.c index ed8517c3..f0b4dab3 100644 --- a/crypto/asn1/asn_moid.c +++ b/crypto/asn1/asn_moid.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -92,9 +92,10 @@ static int do_create(const char *value, const char *name) p--; } p++; - lntmp = OPENSSL_malloc((p - ln) + 1); - if (lntmp == NULL) + if ((lntmp = OPENSSL_malloc((p - ln) + 1)) == NULL) { + ASN1err(ASN1_F_DO_CREATE, ERR_R_MALLOC_FAILURE); return 0; + } memcpy(lntmp, ln, p - ln); lntmp[p - ln] = 0; oid = OBJ_nid2obj(nid); diff --git a/crypto/asn1/bio_asn1.c b/crypto/asn1/bio_asn1.c index 3c7c1229..86ee5663 100644 --- a/crypto/asn1/bio_asn1.c +++ b/crypto/asn1/bio_asn1.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -116,9 +116,10 @@ static int asn1_bio_new(BIO *b) static int asn1_bio_init(BIO_ASN1_BUF_CTX *ctx, int size) { - ctx->buf = OPENSSL_malloc(size); - if (ctx->buf == NULL) + if ((ctx->buf = OPENSSL_malloc(size)) == NULL) { + ASN1err(ASN1_F_ASN1_BIO_INIT, ERR_R_MALLOC_FAILURE); return 0; + } ctx->bufsize = size; ctx->asn1_class = V_ASN1_UNIVERSAL; ctx->asn1_tag = V_ASN1_OCTET_STRING; diff --git a/crypto/asn1/bio_ndef.c b/crypto/asn1/bio_ndef.c index 0f206b24..6222c990 100644 --- a/crypto/asn1/bio_ndef.c +++ b/crypto/asn1/bio_ndef.c @@ -1,5 +1,5 @@ /* - * Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2008-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -113,9 +113,10 @@ static int ndef_prefix(BIO *b, unsigned char **pbuf, int *plen, void *parg) ndef_aux = *(NDEF_SUPPORT **)parg; derlen = ASN1_item_ndef_i2d(ndef_aux->val, NULL, ndef_aux->it); - p = OPENSSL_malloc(derlen); - if (p == NULL) + if ((p = OPENSSL_malloc(derlen)) == NULL) { + ASN1err(ASN1_F_NDEF_PREFIX, ERR_R_MALLOC_FAILURE); return 0; + } ndef_aux->derbuf = p; *pbuf = p; @@ -182,9 +183,10 @@ static int ndef_suffix(BIO *b, unsigned char **pbuf, int *plen, void *parg) return 0; derlen = ASN1_item_ndef_i2d(ndef_aux->val, NULL, ndef_aux->it); - p = OPENSSL_malloc(derlen); - if (p == NULL) + if ((p = OPENSSL_malloc(derlen)) == NULL) { + ASN1err(ASN1_F_NDEF_SUFFIX, ERR_R_MALLOC_FAILURE); return 0; + } ndef_aux->derbuf = p; *pbuf = p; diff --git a/crypto/asn1/p5_scrypt.c b/crypto/asn1/p5_scrypt.c index c556d017..21d74da5 100644 --- a/crypto/asn1/p5_scrypt.c +++ b/crypto/asn1/p5_scrypt.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -82,7 +82,7 @@ X509_ALGOR *PKCS5_pbe2_set_scrypt(const EVP_CIPHER *cipher, if (EVP_CIPHER_iv_length(cipher)) { if (aiv) memcpy(iv, aiv, EVP_CIPHER_iv_length(cipher)); - else if (RAND_bytes(iv, EVP_CIPHER_iv_length(cipher)) < 0) + else if (RAND_bytes(iv, EVP_CIPHER_iv_length(cipher)) <= 0) goto err; } diff --git a/crypto/asn1/standard_methods.h b/crypto/asn1/standard_methods.h index 7d1f97e3..0dcd6b8c 100644 --- a/crypto/asn1/standard_methods.h +++ b/crypto/asn1/standard_methods.h @@ -1,5 +1,5 @@ /* - * Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/crypto/asn1/tasn_dec.c b/crypto/asn1/tasn_dec.c index 8667bec7..c2a521ed 100644 --- a/crypto/asn1/tasn_dec.c +++ b/crypto/asn1/tasn_dec.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -17,9 +17,19 @@ #include "internal/numbers.h" #include "asn1_locl.h" + +/* + * Constructed types with a recursive definition (such as can be found in PKCS7) + * could eventually exceed the stack given malicious input with excessive + * recursion. Therefore we limit the stack depth. This is the maximum number of + * recursive invocations of asn1_item_embed_d2i(). + */ +#define ASN1_MAX_CONSTRUCTED_NEST 30 + static int asn1_item_embed_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, const ASN1_ITEM *it, - int tag, int aclass, char opt, ASN1_TLC *ctx); + int tag, int aclass, char opt, ASN1_TLC *ctx, + int depth); static int asn1_check_eoc(const unsigned char **in, long len); static int asn1_find_end(const unsigned char **in, long len, char inf); @@ -37,11 +47,11 @@ static int asn1_check_tlen(long *olen, int *otag, unsigned char *oclass, static int asn1_template_ex_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, const ASN1_TEMPLATE *tt, char opt, - ASN1_TLC *ctx); + ASN1_TLC *ctx, int depth); static int asn1_template_noexp_d2i(ASN1_VALUE **val, const unsigned char **in, long len, const ASN1_TEMPLATE *tt, char opt, - ASN1_TLC *ctx); + ASN1_TLC *ctx, int depth); static int asn1_d2i_ex_primitive(ASN1_VALUE **pval, const unsigned char **in, long len, const ASN1_ITEM *it, @@ -111,7 +121,7 @@ int ASN1_item_ex_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, int tag, int aclass, char opt, ASN1_TLC *ctx) { int rv; - rv = asn1_item_embed_d2i(pval, in, len, it, tag, aclass, opt, ctx); + rv = asn1_item_embed_d2i(pval, in, len, it, tag, aclass, opt, ctx, 0); if (rv <= 0) ASN1_item_ex_free(pval, it); return rv; @@ -124,7 +134,8 @@ int ASN1_item_ex_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, static int asn1_item_embed_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, const ASN1_ITEM *it, - int tag, int aclass, char opt, ASN1_TLC *ctx) + int tag, int aclass, char opt, ASN1_TLC *ctx, + int depth) { const ASN1_TEMPLATE *tt, *errtt = NULL; const ASN1_EXTERN_FUNCS *ef; @@ -145,6 +156,11 @@ static int asn1_item_embed_d2i(ASN1_VALUE **pval, const unsigned char **in, else asn1_cb = 0; + if (++depth > ASN1_MAX_CONSTRUCTED_NEST) { + ASN1err(ASN1_F_ASN1_ITEM_EMBED_D2I, ASN1_R_NESTED_TOO_DEEP); + goto err; + } + switch (it->itype) { case ASN1_ITYPE_PRIMITIVE: if (it->templates) { @@ -160,7 +176,7 @@ static int asn1_item_embed_d2i(ASN1_VALUE **pval, const unsigned char **in, goto err; } return asn1_template_ex_d2i(pval, in, len, - it->templates, opt, ctx); + it->templates, opt, ctx, depth); } return asn1_d2i_ex_primitive(pval, in, len, it, tag, aclass, opt, ctx); @@ -221,7 +237,7 @@ static int asn1_item_embed_d2i(ASN1_VALUE **pval, const unsigned char **in, /* * We mark field as OPTIONAL so its absence can be recognised. */ - ret = asn1_template_ex_d2i(pchptr, &p, len, tt, 1, ctx); + ret = asn1_template_ex_d2i(pchptr, &p, len, tt, 1, ctx, depth); /* If field not present, try the next one */ if (ret == -1) continue; @@ -344,7 +360,8 @@ static int asn1_item_embed_d2i(ASN1_VALUE **pval, const unsigned char **in, * attempt to read in field, allowing each to be OPTIONAL */ - ret = asn1_template_ex_d2i(pseqval, &p, len, seqtt, isopt, ctx); + ret = asn1_template_ex_d2i(pseqval, &p, len, seqtt, isopt, ctx, + depth); if (!ret) { errtt = seqtt; goto err; @@ -420,7 +437,7 @@ static int asn1_item_embed_d2i(ASN1_VALUE **pval, const unsigned char **in, static int asn1_template_ex_d2i(ASN1_VALUE **val, const unsigned char **in, long inlen, const ASN1_TEMPLATE *tt, char opt, - ASN1_TLC *ctx) + ASN1_TLC *ctx, int depth) { int flags, aclass; int ret; @@ -455,7 +472,7 @@ static int asn1_template_ex_d2i(ASN1_VALUE **val, return 0; } /* We've found the field so it can't be OPTIONAL now */ - ret = asn1_template_noexp_d2i(val, &p, len, tt, 0, ctx); + ret = asn1_template_noexp_d2i(val, &p, len, tt, 0, ctx, depth); if (!ret) { ASN1err(ASN1_F_ASN1_TEMPLATE_EX_D2I, ERR_R_NESTED_ASN1_ERROR); return 0; @@ -479,7 +496,7 @@ static int asn1_template_ex_d2i(ASN1_VALUE **val, } } } else - return asn1_template_noexp_d2i(val, in, inlen, tt, opt, ctx); + return asn1_template_noexp_d2i(val, in, inlen, tt, opt, ctx, depth); *in = p; return 1; @@ -491,7 +508,7 @@ static int asn1_template_ex_d2i(ASN1_VALUE **val, static int asn1_template_noexp_d2i(ASN1_VALUE **val, const unsigned char **in, long len, const ASN1_TEMPLATE *tt, char opt, - ASN1_TLC *ctx) + ASN1_TLC *ctx, int depth) { int flags, aclass; int ret; @@ -573,7 +590,8 @@ static int asn1_template_noexp_d2i(ASN1_VALUE **val, } skfield = NULL; if (!asn1_item_embed_d2i(&skfield, &p, len, - ASN1_ITEM_ptr(tt->item), -1, 0, 0, ctx)) { + ASN1_ITEM_ptr(tt->item), -1, 0, 0, ctx, + depth)) { ASN1err(ASN1_F_ASN1_TEMPLATE_NOEXP_D2I, ERR_R_NESTED_ASN1_ERROR); /* |skfield| may be partially allocated despite failure. */ @@ -595,7 +613,7 @@ static int asn1_template_noexp_d2i(ASN1_VALUE **val, /* IMPLICIT tagging */ ret = asn1_item_embed_d2i(val, &p, len, ASN1_ITEM_ptr(tt->item), tt->tag, aclass, opt, - ctx); + ctx, depth); if (!ret) { ASN1err(ASN1_F_ASN1_TEMPLATE_NOEXP_D2I, ERR_R_NESTED_ASN1_ERROR); goto err; @@ -604,7 +622,7 @@ static int asn1_template_noexp_d2i(ASN1_VALUE **val, } else { /* Nothing special */ ret = asn1_item_embed_d2i(val, &p, len, ASN1_ITEM_ptr(tt->item), - -1, 0, opt, ctx); + -1, 0, opt, ctx, depth); if (!ret) { ASN1err(ASN1_F_ASN1_TEMPLATE_NOEXP_D2I, ERR_R_NESTED_ASN1_ERROR); goto err; diff --git a/crypto/asn1/tasn_enc.c b/crypto/asn1/tasn_enc.c index caa48696..30be314f 100644 --- a/crypto/asn1/tasn_enc.c +++ b/crypto/asn1/tasn_enc.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -57,12 +57,14 @@ static int asn1_item_flags_i2d(ASN1_VALUE *val, unsigned char **out, if (out && !*out) { unsigned char *p, *buf; int len; + len = ASN1_item_ex_i2d(&val, NULL, it, -1, flags); if (len <= 0) return len; - buf = OPENSSL_malloc(len); - if (buf == NULL) + if ((buf = OPENSSL_malloc(len)) == NULL) { + ASN1err(ASN1_F_ASN1_ITEM_FLAGS_I2D, ERR_R_MALLOC_FAILURE); return -1; + } p = buf; ASN1_item_ex_i2d(&val, &p, it, -1, flags); *out = buf; @@ -528,6 +530,8 @@ static int asn1_ex_i2c(ASN1_VALUE **pval, unsigned char *cout, int *putype, otmp = (ASN1_OBJECT *)*pval; cont = otmp->data; len = otmp->length; + if (cont == NULL || len == 0) + return -1; break; case V_ASN1_NULL: diff --git a/crypto/asn1/tasn_new.c b/crypto/asn1/tasn_new.c index 11c80402..6b8ea8dd 100644 --- a/crypto/asn1/tasn_new.c +++ b/crypto/asn1/tasn_new.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -299,9 +299,10 @@ static int asn1_primitive_new(ASN1_VALUE **pval, const ASN1_ITEM *it, return 1; case V_ASN1_ANY: - typ = OPENSSL_malloc(sizeof(*typ)); - if (typ == NULL) + if ((typ = OPENSSL_malloc(sizeof(*typ))) == NULL) { + ASN1err(ASN1_F_ASN1_PRIMITIVE_NEW, ERR_R_MALLOC_FAILURE); return 0; + } typ->value.ptr = NULL; typ->type = -1; *pval = (ASN1_VALUE *)typ; diff --git a/crypto/asn1/tasn_utl.c b/crypto/asn1/tasn_utl.c index cf434aa2..a93fd871 100644 --- a/crypto/asn1/tasn_utl.c +++ b/crypto/asn1/tasn_utl.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -133,9 +133,10 @@ int asn1_enc_save(ASN1_VALUE **pval, const unsigned char *in, int inlen, return 1; OPENSSL_free(enc->enc); - enc->enc = OPENSSL_malloc(inlen); - if (enc->enc == NULL) + if ((enc->enc = OPENSSL_malloc(inlen)) == NULL) { + ASN1err(ASN1_F_ASN1_ENC_SAVE, ERR_R_MALLOC_FAILURE); return 0; + } memcpy(enc->enc, in, inlen); enc->len = inlen; enc->modified = 0; diff --git a/crypto/asn1/x_int64.c b/crypto/asn1/x_int64.c index 714e2f70..f07ca3cf 100644 --- a/crypto/asn1/x_int64.c +++ b/crypto/asn1/x_int64.c @@ -1,5 +1,5 @@ /* - * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -28,9 +28,10 @@ static int uint64_new(ASN1_VALUE **pval, const ASN1_ITEM *it) { - *pval = (ASN1_VALUE *)OPENSSL_zalloc(sizeof(uint64_t)); - if (*pval == NULL) + if ((*pval = (ASN1_VALUE *)OPENSSL_zalloc(sizeof(uint64_t))) == NULL) { + ASN1err(ASN1_F_UINT64_NEW, ERR_R_MALLOC_FAILURE); return 0; + } return 1; } @@ -110,9 +111,10 @@ static int uint64_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, static int uint32_new(ASN1_VALUE **pval, const ASN1_ITEM *it) { - *pval = (ASN1_VALUE *)OPENSSL_zalloc(sizeof(uint32_t)); - if (*pval == NULL) + if ((*pval = (ASN1_VALUE *)OPENSSL_zalloc(sizeof(uint32_t))) == NULL) { + ASN1err(ASN1_F_UINT32_NEW, ERR_R_MALLOC_FAILURE); return 0; + } return 1; } diff --git a/crypto/async/async.c b/crypto/async/async.c index 28747907..1d83e457 100644 --- a/crypto/async/async.c +++ b/crypto/async/async.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -30,11 +30,12 @@ static CRYPTO_THREAD_LOCAL ctxkey; static CRYPTO_THREAD_LOCAL poolkey; -static void async_free_pool_internal(async_pool *pool); - static async_ctx *async_ctx_new(void) { - async_ctx *nctx = NULL; + async_ctx *nctx; + + if (!ossl_init_thread_start(OPENSSL_INIT_THREAD_ASYNC)) + return NULL; nctx = OPENSSL_malloc(sizeof(*nctx)); if (nctx == NULL) { @@ -57,9 +58,6 @@ err: async_ctx *async_get_ctx(void) { - if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) - return NULL; - return (async_ctx *)CRYPTO_THREAD_get_local(&ctxkey); } @@ -169,16 +167,19 @@ void async_start_func(void) int ASYNC_start_job(ASYNC_JOB **job, ASYNC_WAIT_CTX *wctx, int *ret, int (*func)(void *), void *args, size_t size) { - async_ctx *ctx = async_get_ctx(); + async_ctx *ctx; + + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) + return ASYNC_ERR; + + ctx = async_get_ctx(); if (ctx == NULL) ctx = async_ctx_new(); - if (ctx == NULL) { + if (ctx == NULL) return ASYNC_ERR; - } - if (*job) { + if (*job) ctx->currjob = *job; - } for (;;) { if (ctx->currjob != NULL) { @@ -219,9 +220,8 @@ int ASYNC_start_job(ASYNC_JOB **job, ASYNC_WAIT_CTX *wctx, int *ret, } /* Start a new job */ - if ((ctx->currjob = async_get_pool_job()) == NULL) { + if ((ctx->currjob = async_get_pool_job()) == NULL) return ASYNC_NO_JOBS; - } if (args != NULL) { ctx->currjob->funcargs = OPENSSL_malloc(size); @@ -323,12 +323,11 @@ int ASYNC_init_thread(size_t max_size, size_t init_size) return 0; } - if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) { + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) return 0; - } - if (!ossl_init_thread_start(OPENSSL_INIT_THREAD_ASYNC)) { + + if (!ossl_init_thread_start(OPENSSL_INIT_THREAD_ASYNC)) return 0; - } pool = OPENSSL_zalloc(sizeof(*pool)); if (pool == NULL) { @@ -369,32 +368,41 @@ int ASYNC_init_thread(size_t max_size, size_t init_size) return 1; err: - async_free_pool_internal(pool); - return 0; -} - -static void async_free_pool_internal(async_pool *pool) -{ - if (pool == NULL) - return; - async_empty_pool(pool); sk_ASYNC_JOB_free(pool->jobs); OPENSSL_free(pool); - CRYPTO_THREAD_set_local(&poolkey, NULL); + return 0; +} + +void async_delete_thread_state(void) +{ + async_pool *pool = (async_pool *)CRYPTO_THREAD_get_local(&poolkey); + + if (pool != NULL) { + async_empty_pool(pool); + sk_ASYNC_JOB_free(pool->jobs); + OPENSSL_free(pool); + CRYPTO_THREAD_set_local(&poolkey, NULL); + } async_local_cleanup(); async_ctx_free(); } void ASYNC_cleanup_thread(void) { - async_free_pool_internal((async_pool *)CRYPTO_THREAD_get_local(&poolkey)); + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) + return; + + async_delete_thread_state(); } ASYNC_JOB *ASYNC_get_current_job(void) { async_ctx *ctx; + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) + return NULL; + ctx = async_get_ctx(); if (ctx == NULL) return NULL; @@ -409,7 +417,12 @@ ASYNC_WAIT_CTX *ASYNC_get_wait_ctx(ASYNC_JOB *job) void ASYNC_block_pause(void) { - async_ctx *ctx = async_get_ctx(); + async_ctx *ctx; + + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) + return; + + ctx = async_get_ctx(); if (ctx == NULL || ctx->currjob == NULL) { /* * We're not in a job anyway so ignore this @@ -421,7 +434,12 @@ void ASYNC_block_pause(void) void ASYNC_unblock_pause(void) { - async_ctx *ctx = async_get_ctx(); + async_ctx *ctx; + + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) + return; + + ctx = async_get_ctx(); if (ctx == NULL || ctx->currjob == NULL) { /* * We're not in a job anyway so ignore this diff --git a/crypto/async/async_err.c b/crypto/async/async_err.c index d2d1011c..fd5527aa 100644 --- a/crypto/async/async_err.c +++ b/crypto/async/async_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -21,6 +21,8 @@ static const ERR_STRING_DATA ASYNC_str_functs[] = { {ERR_PACK(ERR_LIB_ASYNC, ASYNC_F_ASYNC_PAUSE_JOB, 0), "ASYNC_pause_job"}, {ERR_PACK(ERR_LIB_ASYNC, ASYNC_F_ASYNC_START_FUNC, 0), "async_start_func"}, {ERR_PACK(ERR_LIB_ASYNC, ASYNC_F_ASYNC_START_JOB, 0), "ASYNC_start_job"}, + {ERR_PACK(ERR_LIB_ASYNC, ASYNC_F_ASYNC_WAIT_CTX_SET_WAIT_FD, 0), + "ASYNC_WAIT_CTX_set_wait_fd"}, {0, NULL} }; diff --git a/crypto/async/async_wait.c b/crypto/async/async_wait.c index d6d46952..b23e43e8 100644 --- a/crypto/async/async_wait.c +++ b/crypto/async/async_wait.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -47,9 +47,10 @@ int ASYNC_WAIT_CTX_set_wait_fd(ASYNC_WAIT_CTX *ctx, const void *key, { struct fd_lookup_st *fdlookup; - fdlookup = OPENSSL_zalloc(sizeof(*fdlookup)); - if (fdlookup == NULL) + if ((fdlookup = OPENSSL_zalloc(sizeof(*fdlookup))) == NULL) { + ASYNCerr(ASYNC_F_ASYNC_WAIT_CTX_SET_WAIT_FD, ERR_R_MALLOC_FAILURE); return 0; + } fdlookup->key = key; fdlookup->fd = fd; diff --git a/crypto/bio/b_addr.c b/crypto/bio/b_addr.c index ca9a7102..abec7bb8 100644 --- a/crypto/bio/b_addr.c +++ b/crypto/bio/b_addr.c @@ -66,18 +66,18 @@ void BIO_ADDR_clear(BIO_ADDR *ap) int BIO_ADDR_make(BIO_ADDR *ap, const struct sockaddr *sa) { if (sa->sa_family == AF_INET) { - ap->s_in = *(const struct sockaddr_in *)sa; + memcpy(&(ap->s_in), sa, sizeof(struct sockaddr_in)); return 1; } #ifdef AF_INET6 if (sa->sa_family == AF_INET6) { - ap->s_in6 = *(const struct sockaddr_in6 *)sa; + memcpy(&(ap->s_in6), sa, sizeof(struct sockaddr_in6)); return 1; } #endif #ifdef AF_UNIX if (sa->sa_family == AF_UNIX) { - ap->s_un = *(const struct sockaddr_un *)sa; + memcpy(&(ap->s_un), sa, sizeof(struct sockaddr_un)); return 1; } #endif @@ -565,9 +565,10 @@ static int addrinfo_wrap(int family, int socktype, unsigned short port, BIO_ADDRINFO **bai) { - *bai = OPENSSL_zalloc(sizeof(**bai)); - if (*bai == NULL) + if ((*bai = OPENSSL_zalloc(sizeof(**bai))) == NULL) { + BIOerr(BIO_F_ADDRINFO_WRAP, ERR_R_MALLOC_FAILURE); return 0; + } (*bai)->bai_family = family; (*bai)->bai_socktype = socktype; @@ -602,7 +603,8 @@ static int addrinfo_wrap(int family, int socktype, DEFINE_RUN_ONCE_STATIC(do_bio_lookup_init) { - OPENSSL_init_crypto(0, NULL); + if (!OPENSSL_init_crypto(0, NULL)) + return 0; bio_lookup_lock = CRYPTO_THREAD_lock_new(); return bio_lookup_lock != NULL; } diff --git a/crypto/bio/b_print.c b/crypto/bio/b_print.c index 1ef85479..9e907fca 100644 --- a/crypto/bio/b_print.c +++ b/crypto/bio/b_print.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -819,9 +819,10 @@ doapr_outch(char **sbuffer, *maxlen += BUFFER_INC; if (*buffer == NULL) { - *buffer = OPENSSL_malloc(*maxlen); - if (*buffer == NULL) + if ((*buffer = OPENSSL_malloc(*maxlen)) == NULL) { + BIOerr(BIO_F_DOAPR_OUTCH, ERR_R_MALLOC_FAILURE); return 0; + } if (*currlen > 0) { if (!ossl_assert(*sbuffer != NULL)) return 0; diff --git a/crypto/bio/b_sock.c b/crypto/bio/b_sock.c index 740ff174..e7a24d02 100644 --- a/crypto/bio/b_sock.c +++ b/crypto/bio/b_sock.c @@ -308,7 +308,7 @@ int BIO_socket_nbio(int s, int mode) l = fcntl(s, F_GETFL, 0); if (l == -1) { - SYSerr(SYS_F_FCNTL, get_last_rtl_error()); + SYSerr(SYS_F_FCNTL, get_last_sys_error()); ret = -1; } else { # if defined(O_NONBLOCK) @@ -326,7 +326,7 @@ int BIO_socket_nbio(int s, int mode) ret = fcntl(s, F_SETFL, l); if (ret < 0) { - SYSerr(SYS_F_FCNTL, get_last_rtl_error()); + SYSerr(SYS_F_FCNTL, get_last_sys_error()); } } # else diff --git a/crypto/bio/bf_lbuf.c b/crypto/bio/bf_lbuf.c index 2dac3d72..194c7b8a 100644 --- a/crypto/bio/bf_lbuf.c +++ b/crypto/bio/bf_lbuf.c @@ -59,11 +59,13 @@ static int linebuffer_new(BIO *bi) { BIO_LINEBUFFER_CTX *ctx; - ctx = OPENSSL_malloc(sizeof(*ctx)); - if (ctx == NULL) + if ((ctx = OPENSSL_malloc(sizeof(*ctx))) == NULL) { + BIOerr(BIO_F_LINEBUFFER_NEW, ERR_R_MALLOC_FAILURE); return 0; + } ctx->obuf = OPENSSL_malloc(DEFAULT_LINEBUFFER_SIZE); if (ctx->obuf == NULL) { + BIOerr(BIO_F_LINEBUFFER_NEW, ERR_R_MALLOC_FAILURE); OPENSSL_free(ctx); return 0; } diff --git a/crypto/bio/bf_nbio.c b/crypto/bio/bf_nbio.c index c41b5d58..4bc84eeb 100644 --- a/crypto/bio/bf_nbio.c +++ b/crypto/bio/bf_nbio.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -57,8 +57,10 @@ static int nbiof_new(BIO *bi) { NBIO_TEST *nt; - if ((nt = OPENSSL_zalloc(sizeof(*nt))) == NULL) + if ((nt = OPENSSL_zalloc(sizeof(*nt))) == NULL) { + BIOerr(BIO_F_NBIOF_NEW, ERR_R_MALLOC_FAILURE); return 0; + } nt->lrn = -1; nt->lwn = -1; bi->ptr = (char *)nt; @@ -89,7 +91,7 @@ static int nbiof_read(BIO *b, char *out, int outl) return 0; BIO_clear_retry_flags(b); - if (RAND_bytes(&n, 1) <= 0) + if (RAND_priv_bytes(&n, 1) <= 0) return -1; num = (n & 0x07); @@ -126,7 +128,7 @@ static int nbiof_write(BIO *b, const char *in, int inl) num = nt->lwn; nt->lwn = 0; } else { - if (RAND_bytes(&n, 1) <= 0) + if (RAND_priv_bytes(&n, 1) <= 0) return -1; num = (n & 7); } diff --git a/crypto/bio/bio_err.c b/crypto/bio/bio_err.c index 594013dd..7aa9dabb 100644 --- a/crypto/bio/bio_err.c +++ b/crypto/bio/bio_err.c @@ -15,13 +15,16 @@ static const ERR_STRING_DATA BIO_str_functs[] = { {ERR_PACK(ERR_LIB_BIO, BIO_F_ACPT_STATE, 0), "acpt_state"}, + {ERR_PACK(ERR_LIB_BIO, BIO_F_ADDRINFO_WRAP, 0), "addrinfo_wrap"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_ADDR_STRINGS, 0), "addr_strings"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_ACCEPT, 0), "BIO_accept"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_ACCEPT_EX, 0), "BIO_accept_ex"}, + {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_ACCEPT_NEW, 0), "BIO_ACCEPT_new"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_ADDR_NEW, 0), "BIO_ADDR_new"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_BIND, 0), "BIO_bind"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_CALLBACK_CTRL, 0), "BIO_callback_ctrl"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_CONNECT, 0), "BIO_connect"}, + {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_CONNECT_NEW, 0), "BIO_CONNECT_new"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_CTRL, 0), "BIO_ctrl"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_GETS, 0), "BIO_gets"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_BIO_GET_HOST_IP, 0), "BIO_get_host_ip"}, @@ -55,12 +58,17 @@ static const ERR_STRING_DATA BIO_str_functs[] = { {ERR_PACK(ERR_LIB_BIO, BIO_F_BUFFER_CTRL, 0), "buffer_ctrl"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_CONN_CTRL, 0), "conn_ctrl"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_CONN_STATE, 0), "conn_state"}, + {ERR_PACK(ERR_LIB_BIO, BIO_F_DGRAM_SCTP_NEW, 0), "dgram_sctp_new"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_DGRAM_SCTP_READ, 0), "dgram_sctp_read"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_DGRAM_SCTP_WRITE, 0), "dgram_sctp_write"}, + {ERR_PACK(ERR_LIB_BIO, BIO_F_DOAPR_OUTCH, 0), "doapr_outch"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_FILE_CTRL, 0), "file_ctrl"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_FILE_READ, 0), "file_read"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_LINEBUFFER_CTRL, 0), "linebuffer_ctrl"}, + {ERR_PACK(ERR_LIB_BIO, BIO_F_LINEBUFFER_NEW, 0), "linebuffer_new"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_MEM_WRITE, 0), "mem_write"}, + {ERR_PACK(ERR_LIB_BIO, BIO_F_NBIOF_NEW, 0), "nbiof_new"}, + {ERR_PACK(ERR_LIB_BIO, BIO_F_SLG_WRITE, 0), "slg_write"}, {ERR_PACK(ERR_LIB_BIO, BIO_F_SSL_NEW, 0), "SSL_new"}, {0, NULL} }; diff --git a/crypto/bio/bio_lib.c b/crypto/bio/bio_lib.c index 557d609c..95eef7d4 100644 --- a/crypto/bio/bio_lib.c +++ b/crypto/bio/bio_lib.c @@ -34,9 +34,8 @@ static long bio_call_callback(BIO *b, int oper, const char *argp, size_t len, long ret; int bareoper; - if (b->callback_ex != NULL) { + if (b->callback_ex != NULL) return b->callback_ex(b, oper, argp, len, argi, argl, inret, processed); - } /* Strip off any BIO_CB_RETURN flag */ bareoper = oper & ~BIO_CB_RETURN; @@ -51,17 +50,17 @@ static long bio_call_callback(BIO *b, int oper, const char *argp, size_t len, return -1; argi = (int)len; + } - if (inret && (oper & BIO_CB_RETURN)) { - if (*processed > INT_MAX) - return -1; - inret = *processed; - } + if (inret && (oper & BIO_CB_RETURN) && bareoper != BIO_CB_CTRL) { + if (*processed > INT_MAX) + return -1; + inret = *processed; } ret = b->callback(b, oper, argp, argi, argl, inret); - if (ret >= 0 && (HAS_LEN_OPER(bareoper) || bareoper == BIO_CB_PUTS)) { + if (ret >= 0 && (oper & BIO_CB_RETURN) && bareoper != BIO_CB_CTRL) { *processed = (size_t)ret; ret = 1; } @@ -260,7 +259,7 @@ static int bio_read_intern(BIO *b, void *data, size_t dlen, size_t *readbytes) if ((b->callback != NULL || b->callback_ex != NULL) && ((ret = (int)bio_call_callback(b, BIO_CB_READ, data, dlen, 0, 0L, 1L, - readbytes)) <= 0)) + NULL)) <= 0)) return ret; if (!b->init) { @@ -333,7 +332,7 @@ static int bio_write_intern(BIO *b, const void *data, size_t dlen, if ((b->callback != NULL || b->callback_ex != NULL) && ((ret = (int)bio_call_callback(b, BIO_CB_WRITE, data, dlen, 0, 0L, 1L, - written)) <= 0)) + NULL)) <= 0)) return ret; if (!b->init) { @@ -542,7 +541,8 @@ long BIO_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) if (b == NULL) return 0; - if ((b->method == NULL) || (b->method->callback_ctrl == NULL)) { + if ((b->method == NULL) || (b->method->callback_ctrl == NULL) + || (cmd != BIO_CTRL_SET_CALLBACK)) { BIOerr(BIO_F_BIO_CALLBACK_CTRL, BIO_R_UNSUPPORTED_METHOD); return -2; } diff --git a/crypto/bio/bio_meth.c b/crypto/bio/bio_meth.c index 4c157c07..493ff63a 100644 --- a/crypto/bio/bio_meth.c +++ b/crypto/bio/bio_meth.c @@ -19,7 +19,7 @@ DEFINE_RUN_ONCE_STATIC(do_bio_type_init) return bio_type_lock != NULL; } -int BIO_get_new_index() +int BIO_get_new_index(void) { static CRYPTO_REF_COUNT bio_count = BIO_TYPE_START; int newval; @@ -55,12 +55,12 @@ void BIO_meth_free(BIO_METHOD *biom) } } -int (*BIO_meth_get_write(BIO_METHOD *biom)) (BIO *, const char *, int) +int (*BIO_meth_get_write(const BIO_METHOD *biom)) (BIO *, const char *, int) { return biom->bwrite_old; } -int (*BIO_meth_get_write_ex(BIO_METHOD *biom)) (BIO *, const char *, size_t, +int (*BIO_meth_get_write_ex(const BIO_METHOD *biom)) (BIO *, const char *, size_t, size_t *) { return biom->bwrite; @@ -102,12 +102,12 @@ int BIO_meth_set_write_ex(BIO_METHOD *biom, return 1; } -int (*BIO_meth_get_read(BIO_METHOD *biom)) (BIO *, char *, int) +int (*BIO_meth_get_read(const BIO_METHOD *biom)) (BIO *, char *, int) { return biom->bread_old; } -int (*BIO_meth_get_read_ex(BIO_METHOD *biom)) (BIO *, char *, size_t, size_t *) +int (*BIO_meth_get_read_ex(const BIO_METHOD *biom)) (BIO *, char *, size_t, size_t *) { return biom->bread; } @@ -148,7 +148,7 @@ int BIO_meth_set_read_ex(BIO_METHOD *biom, return 1; } -int (*BIO_meth_get_puts(BIO_METHOD *biom)) (BIO *, const char *) +int (*BIO_meth_get_puts(const BIO_METHOD *biom)) (BIO *, const char *) { return biom->bputs; } @@ -160,7 +160,7 @@ int BIO_meth_set_puts(BIO_METHOD *biom, return 1; } -int (*BIO_meth_get_gets(BIO_METHOD *biom)) (BIO *, char *, int) +int (*BIO_meth_get_gets(const BIO_METHOD *biom)) (BIO *, char *, int) { return biom->bgets; } @@ -172,7 +172,7 @@ int BIO_meth_set_gets(BIO_METHOD *biom, return 1; } -long (*BIO_meth_get_ctrl(BIO_METHOD *biom)) (BIO *, int, long, void *) +long (*BIO_meth_get_ctrl(const BIO_METHOD *biom)) (BIO *, int, long, void *) { return biom->ctrl; } @@ -184,7 +184,7 @@ int BIO_meth_set_ctrl(BIO_METHOD *biom, return 1; } -int (*BIO_meth_get_create(BIO_METHOD *biom)) (BIO *) +int (*BIO_meth_get_create(const BIO_METHOD *biom)) (BIO *) { return biom->create; } @@ -195,7 +195,7 @@ int BIO_meth_set_create(BIO_METHOD *biom, int (*create) (BIO *)) return 1; } -int (*BIO_meth_get_destroy(BIO_METHOD *biom)) (BIO *) +int (*BIO_meth_get_destroy(const BIO_METHOD *biom)) (BIO *) { return biom->destroy; } @@ -206,7 +206,7 @@ int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy) (BIO *)) return 1; } -long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom)) (BIO *, int, BIO_info_cb *) +long (*BIO_meth_get_callback_ctrl(const BIO_METHOD *biom)) (BIO *, int, BIO_info_cb *) { return biom->callback_ctrl; } diff --git a/crypto/bio/bss_acpt.c b/crypto/bio/bss_acpt.c index b7ec0c0d..993e5903 100644 --- a/crypto/bio/bss_acpt.c +++ b/crypto/bio/bss_acpt.c @@ -92,8 +92,10 @@ static BIO_ACCEPT *BIO_ACCEPT_new(void) { BIO_ACCEPT *ret; - if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) + if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) { + BIOerr(BIO_F_BIO_ACCEPT_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } ret->accept_family = BIO_FAMILY_IPANY; ret->accept_sock = (int)INVALID_SOCKET; return ret; @@ -103,7 +105,6 @@ static void BIO_ACCEPT_free(BIO_ACCEPT *a) { if (a == NULL) return; - OPENSSL_free(a->param_addr); OPENSSL_free(a->param_serv); BIO_ADDRINFO_free(a->addr_first); diff --git a/crypto/bio/bss_conn.c b/crypto/bio/bss_conn.c index 5c461ae7..e9673fe7 100644 --- a/crypto/bio/bss_conn.c +++ b/crypto/bio/bss_conn.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -223,8 +223,10 @@ BIO_CONNECT *BIO_CONNECT_new(void) { BIO_CONNECT *ret; - if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) + if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) { + BIOerr(BIO_F_BIO_CONNECT_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } ret->state = BIO_CONN_S_BEFORE; ret->connect_family = BIO_FAMILY_IPANY; return ret; @@ -234,7 +236,6 @@ void BIO_CONNECT_free(BIO_CONNECT *a) { if (a == NULL) return; - OPENSSL_free(a->param_hostname); OPENSSL_free(a->param_service); BIO_ADDRINFO_free(a->addr_first); diff --git a/crypto/bio/bss_dgram.c b/crypto/bio/bss_dgram.c index 90b250eb..424109c9 100644 --- a/crypto/bio/bss_dgram.c +++ b/crypto/bio/bss_dgram.c @@ -955,9 +955,10 @@ static int dgram_sctp_new(BIO *bi) bi->init = 0; bi->num = 0; - data = OPENSSL_zalloc(sizeof(*data)); - if (data == NULL) + if ((data = OPENSSL_zalloc(sizeof(*data))) == NULL) { + BIOerr(BIO_F_DGRAM_SCTP_NEW, ERR_R_MALLOC_FAILURE); return 0; + } # ifdef SCTP_PR_SCTP_NONE data->prinfo.pr_policy = SCTP_PR_SCTP_NONE; # endif diff --git a/crypto/bio/bss_log.c b/crypto/bio/bss_log.c index b04f7bbf..03769190 100644 --- a/crypto/bio/bss_log.c +++ b/crypto/bio/bss_log.c @@ -39,6 +39,8 @@ void *_malloc32(__size_t); # endif /* __INITIAL_POINTER_SIZE == 64 */ # endif /* __INITIAL_POINTER_SIZE && defined * _ANSI_C_SOURCE */ +#elif defined(__DJGPP__) && defined(OPENSSL_NO_SOCK) +# define NO_SYSLOG #elif (!defined(MSDOS) || defined(WATT32)) && !defined(OPENSSL_SYS_VXWORKS) && !defined(NO_SYSLOG) # include #endif @@ -195,6 +197,7 @@ static int slg_write(BIO *b, const char *in, int inl) }; if ((buf = OPENSSL_malloc(inl + 1)) == NULL) { + BIOerr(BIO_F_SLG_WRITE, ERR_R_MALLOC_FAILURE); return 0; } strncpy(buf, in, inl); diff --git a/crypto/bio/bss_mem.c b/crypto/bio/bss_mem.c index 7678a1df..98819846 100644 --- a/crypto/bio/bss_mem.c +++ b/crypto/bio/bss_mem.c @@ -216,6 +216,8 @@ static int mem_write(BIO *b, const char *in, int inl) goto end; } BIO_clear_retry_flags(b); + if (inl == 0) + return 0; blen = bbm->readp->length; mem_buf_sync(b); if (BUF_MEM_grow_clean(bbm->buf, blen + inl) == 0) diff --git a/crypto/bn/asm/alpha-mont.pl b/crypto/bn/asm/alpha-mont.pl index cd0e1fb8..cc5c30e7 100644 --- a/crypto/bn/asm/alpha-mont.pl +++ b/crypto/bn/asm/alpha-mont.pl @@ -297,15 +297,12 @@ bn_mul_mont: mov sp,$tp mov $bp,$rp # restore rp - and sp,$hi0,$ap - bic $bp,$hi0,$bp - bis $bp,$ap,$ap # ap=borrow?tp:rp - .align 4 -.Lcopy: ldq $aj,0($ap) # copy or in-place refresh +.Lcopy: ldq $aj,0($tp) # conditional copy + ldq $nj,0($rp) lda $tp,8($tp) lda $rp,8($rp) - lda $ap,8($ap) + cmoveq $hi0,$nj,$aj stq zero,-8($tp) # zap tp cmpult $tp,$tj,AT stq $aj,-8($rp) diff --git a/crypto/bn/asm/armv4-mont.pl b/crypto/bn/asm/armv4-mont.pl index 75a36f62..91691370 100644 --- a/crypto/bn/asm/armv4-mont.pl +++ b/crypto/bn/asm/armv4-mont.pl @@ -262,14 +262,15 @@ bn_mul_mont: mov $tp,sp @ "rewind" $tp sub $rp,$rp,$aj @ "rewind" $rp - and $ap,$tp,$nhi - bic $np,$rp,$nhi - orr $ap,$ap,$np @ ap=borrow?tp:rp - -.Lcopy: ldr $tj,[$ap],#4 @ copy or in-place refresh +.Lcopy: ldr $tj,[$tp] @ conditional copy + ldr $aj,[$rp] str sp,[$tp],#4 @ zap tp - str $tj,[$rp],#4 - cmp $tp,$num +#ifdef __thumb2__ + it cc +#endif + movcc $aj,$tj + str $aj,[$rp],#4 + teq $tp,$num @ preserve carry bne .Lcopy mov sp,$num diff --git a/crypto/bn/asm/ia64-mont.pl b/crypto/bn/asm/ia64-mont.pl index 9d1ecf6a..96d312f2 100644 --- a/crypto/bn/asm/ia64-mont.pl +++ b/crypto/bn/asm/ia64-mont.pl @@ -341,19 +341,19 @@ bn_mul_mont_general: { .mmb; sub rptr=rptr,len // rewind sub tptr=tptr,len clrrrb.pr };; -{ .mmi; and aptr=tptr,topbit - andcm bptr=rptr,topbit +{ .mmi; mov aptr=rptr + mov bptr=tptr mov pr.rot=1<<16 };; -{ .mii; or nptr=aptr,bptr +{ .mii; cmp.eq p0,p6=topbit,r0 mov ar.lc=lc - mov ar.ec=3 };; + mov ar.ec=2 };; .Lcopy_ctop: -{ .mmb; (p16) ld8 n[0]=[nptr],8 - (p18) st8 [tptr]=r0,8 - (p16) nop.b 0 } -{ .mmb; (p16) nop.m 0 - (p18) st8 [rptr]=n[2],8 +{ .mmi; (p16) ld8 a[0]=[aptr],8 + (p16) ld8 t[0]=[bptr],8 + (p6) mov a[1]=t[1] };; // (p17) +{ .mmb; (p17) st8 [rptr]=a[1],8 + (p17) st8 [tptr]=r0,8 br.ctop.sptk .Lcopy_ctop };; .Lcopy_cend: diff --git a/crypto/bn/asm/mips-mont.pl b/crypto/bn/asm/mips-mont.pl index 56d42028..b2e8df8e 100644 --- a/crypto/bn/asm/mips-mont.pl +++ b/crypto/bn/asm/mips-mont.pl @@ -386,15 +386,13 @@ $code.=<<___; $PTR_SUB $rp,$num # restore rp not $hi1,$hi0 - and $ap,$hi0,$sp - and $bp,$hi1,$rp - or $ap,$ap,$bp # ap=borrow?tp:rp - -.align 4 -.Lcopy: $LD $aj,($ap) - $PTR_ADD $ap,$BNSZ +.Lcopy: $LD $nj,($tp) # conditional move + $LD $aj,($rp) $ST $zero,($tp) $PTR_ADD $tp,$BNSZ + and $nj,$hi0 + and $aj,$hi1 + or $aj,$nj sltu $at,$tp,$tj $ST $aj,($rp) bnez $at,.Lcopy diff --git a/crypto/bn/asm/parisc-mont.pl b/crypto/bn/asm/parisc-mont.pl index a705e163..4c9d045b 100644 --- a/crypto/bn/asm/parisc-mont.pl +++ b/crypto/bn/asm/parisc-mont.pl @@ -517,7 +517,6 @@ L\$sub stws,ma $hi1,4($rp) subb $ti0,%r0,$hi1 - ldo -4($tp),$tp ___ $code.=<<___ if ($BN_SZ==8); ldd,ma 8($tp),$ti0 @@ -532,20 +531,18 @@ L\$sub extrd,u $ti0,31,32,$ti0 ; carry in flipped word order sub,db $ti0,%r0,$hi1 - ldo -8($tp),$tp ___ $code.=<<___; - and $tp,$hi1,$ap - andcm $rp,$hi1,$bp - or $ap,$bp,$np - + ldo `$LOCALS+32`($fp),$tp sub $rp,$arrsz,$rp ; rewind rp subi 0,$arrsz,$idx - ldo `$LOCALS+32`($fp),$tp L\$copy - ldd $idx($np),$hi0 + ldd 0($tp),$ti0 + ldd 0($rp),$hi0 std,ma %r0,8($tp) - addib,<> 8,$idx,.-8 ; L\$copy + comiclr,= 0,$hi1,%r0 + copy $ti0,$hi0 + addib,<> 8,$idx,L\$copy std,ma $hi0,8($rp) ___ @@ -856,17 +853,16 @@ L\$sub_pa11 stws,ma $hi1,4($rp) subb $ti0,%r0,$hi1 - ldo -4($tp),$tp - and $tp,$hi1,$ap - andcm $rp,$hi1,$bp - or $ap,$bp,$np + ldo `$LOCALS+32`($fp),$tp sub $rp,$arrsz,$rp ; rewind rp subi 0,$arrsz,$idx - ldo `$LOCALS+32`($fp),$tp L\$copy_pa11 - ldwx $idx($np),$hi0 + ldw 0($tp),$ti0 + ldw 0($rp),$hi0 stws,ma %r0,4($tp) + comiclr,= 0,$hi1,%r0 + copy $ti0,$hi0 addib,<> 4,$idx,L\$copy_pa11 stws,ma $hi0,4($rp) diff --git a/crypto/bn/asm/ppc-mont.pl b/crypto/bn/asm/ppc-mont.pl index 9aa96c8e..d9cc983b 100644 --- a/crypto/bn/asm/ppc-mont.pl +++ b/crypto/bn/asm/ppc-mont.pl @@ -314,15 +314,16 @@ Lsub: $LDX $tj,$tp,$j li $j,0 mtctr $num subfe $ovf,$j,$ovf ; handle upmost overflow bit - and $ap,$tp,$ovf - andc $np,$rp,$ovf - or $ap,$ap,$np ; ap=borrow?tp:rp .align 4 -Lcopy: ; copy or in-place refresh - $LDX $tj,$ap,$j - $STX $tj,$rp,$j +Lcopy: ; conditional copy + $LDX $tj,$tp,$j + $LDX $aj,$rp,$j + and $tj,$tj,$ovf + andc $aj,$aj,$ovf $STX $j,$tp,$j ; zap at once + or $aj,$aj,$tj + $STX $aj,$rp,$j addi $j,$j,$BNSZ bdnz Lcopy diff --git a/crypto/bn/asm/ppc.pl b/crypto/bn/asm/ppc.pl index 39349ae8..e3706819 100644 --- a/crypto/bn/asm/ppc.pl +++ b/crypto/bn/asm/ppc.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2004-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -40,7 +40,7 @@ #dsa 512 bits 0.0087s 0.0106s 114.3 94.5 #dsa 1024 bits 0.0256s 0.0313s 39.0 32.0 # -# Same bechmark with this assembler code: +# Same benchmark with this assembler code: # #rsa 512 bits 0.0056s 0.0005s 178.6 2049.2 #rsa 1024 bits 0.0283s 0.0015s 35.3 674.1 diff --git a/crypto/bn/asm/ppc64-mont.pl b/crypto/bn/asm/ppc64-mont.pl index 0b2bb39f..a82e77d8 100644 --- a/crypto/bn/asm/ppc64-mont.pl +++ b/crypto/bn/asm/ppc64-mont.pl @@ -1501,16 +1501,14 @@ Lsub: ldx $t0,$tp,$i li $i,0 subfe $ovf,$i,$ovf ; handle upmost overflow bit - and $ap,$tp,$ovf - andc $np,$rp,$ovf - or $ap,$ap,$np ; ap=borrow?tp:rp - addi $t7,$ap,8 mtctr $j .align 4 -Lcopy: ; copy or in-place refresh - ldx $t0,$ap,$i - ldx $t1,$t7,$i +Lcopy: ; conditional copy + ldx $t0,$tp,$i + ldx $t1,$t4,$i + ldx $t2,$rp,$i + ldx $t3,$t6,$i std $i,8($nap_d) ; zap nap_d std $i,16($nap_d) std $i,24($nap_d) @@ -1519,6 +1517,12 @@ Lcopy: ; copy or in-place refresh std $i,48($nap_d) std $i,56($nap_d) stdu $i,64($nap_d) + and $t0,$t0,$ovf + and $t1,$t1,$ovf + andc $t2,$t2,$ovf + andc $t3,$t3,$ovf + or $t0,$t0,$t2 + or $t1,$t1,$t3 stdx $t0,$rp,$i stdx $t1,$t6,$i stdx $i,$tp,$i ; zap tp at once @@ -1561,20 +1565,21 @@ Lsub: lwz $t0,12($tp) ; load tp[j..j+3] in 64-bit word order li $i,0 subfe $ovf,$i,$ovf ; handle upmost overflow bit - addi $tp,$sp,`$FRAME+$TRANSFER+4` + addi $ap,$sp,`$FRAME+$TRANSFER+4` subf $rp,$num,$rp ; rewind rp - and $ap,$tp,$ovf - andc $np,$rp,$ovf - or $ap,$ap,$np ; ap=borrow?tp:rp addi $tp,$sp,`$FRAME+$TRANSFER` mtctr $j .align 4 -Lcopy: ; copy or in-place refresh +Lcopy: ; conditional copy lwz $t0,4($ap) lwz $t1,8($ap) lwz $t2,12($ap) lwzu $t3,16($ap) + lwz $t4,4($rp) + lwz $t5,8($rp) + lwz $t6,12($rp) + lwz $t7,16($rp) std $i,8($nap_d) ; zap nap_d std $i,16($nap_d) std $i,24($nap_d) @@ -1583,6 +1588,18 @@ Lcopy: ; copy or in-place refresh std $i,48($nap_d) std $i,56($nap_d) stdu $i,64($nap_d) + and $t0,$t0,$ovf + and $t1,$t1,$ovf + and $t2,$t2,$ovf + and $t3,$t3,$ovf + andc $t4,$t4,$ovf + andc $t5,$t5,$ovf + andc $t6,$t6,$ovf + andc $t7,$t7,$ovf + or $t0,$t0,$t4 + or $t1,$t1,$t5 + or $t2,$t2,$t6 + or $t3,$t3,$t7 stw $t0,4($rp) stw $t1,8($rp) stw $t2,12($rp) diff --git a/crypto/bn/asm/s390x-mont.pl b/crypto/bn/asm/s390x-mont.pl index 0eaade3e..59f70bed 100644 --- a/crypto/bn/asm/s390x-mont.pl +++ b/crypto/bn/asm/s390x-mont.pl @@ -252,16 +252,16 @@ $code.=<<___; brct $count,.Lsub lghi $ahi,0 slbgr $AHI,$ahi # handle upmost carry - - ngr $ap,$AHI - lghi $np,-1 - xgr $np,$AHI - ngr $np,$rp - ogr $ap,$np # ap=borrow?tp:rp + lghi $NHI,-1 + xgr $NHI,$AHI la $j,0(%r0) lgr $count,$num -.Lcopy: lg $alo,0($j,$ap) # copy or in-place refresh +.Lcopy: lg $ahi,$stdframe($j,$sp) # conditional copy + lg $alo,0($j,$rp) + ngr $ahi,$AHI + ngr $alo,$NHI + ogr $alo,$ahi _dswap $alo stg $j,$stdframe($j,$sp) # zap tp stg $alo,0($j,$rp) diff --git a/crypto/bn/asm/sparct4-mont.pl b/crypto/bn/asm/sparct4-mont.pl index 6eb634d2..90c7bb82 100755 --- a/crypto/bn/asm/sparct4-mont.pl +++ b/crypto/bn/asm/sparct4-mont.pl @@ -888,19 +888,17 @@ $code.=<<___; sub $tp, $num, $tp sub $rp, $num, $rp - subc $ovf, %g0, $ovf ! handle upmost overflow bit - and $tp, $ovf, $ap - andn $rp, $ovf, $np - or $np, $ap, $ap ! ap=borrow?tp:rp + subccc $ovf, %g0, $ovf ! handle upmost overflow bit ba .Lcopy sub $num, 8, $cnt .align 16 -.Lcopy: ! copy or in-place refresh - ldx [$ap+0], $t2 - add $ap, 8, $ap +.Lcopy: ! conditional copy + ldx [$tp], $tj + ldx [$rp+0], $t2 stx %g0, [$tp] ! zap add $tp, 8, $tp + movcs %icc, $tj, $t2 stx $t2, [$rp+0] add $rp, 8, $rp brnz $cnt, .Lcopy @@ -1136,19 +1134,17 @@ $code.=<<___; sub $tp, $num, $tp sub $rp, $num, $rp - subc $ovf, %g0, $ovf ! handle upmost overflow bit - and $tp, $ovf, $ap - andn $rp, $ovf, $np - or $np, $ap, $ap ! ap=borrow?tp:rp + subccc $ovf, %g0, $ovf ! handle upmost overflow bit ba .Lcopy_g5 sub $num, 8, $cnt .align 16 -.Lcopy_g5: ! copy or in-place refresh - ldx [$ap+0], $t2 - add $ap, 8, $ap +.Lcopy_g5: ! conditional copy + ldx [$tp], $tj + ldx [$rp+0], $t2 stx %g0, [$tp] ! zap add $tp, 8, $tp + movcs %icc, $tj, $t2 stx $t2, [$rp+0] add $rp, 8, $rp brnz $cnt, .Lcopy_g5 diff --git a/crypto/bn/asm/sparcv9-mont.pl b/crypto/bn/asm/sparcv9-mont.pl index 44d28ac4..a0830a07 100644 --- a/crypto/bn/asm/sparcv9-mont.pl +++ b/crypto/bn/asm/sparcv9-mont.pl @@ -265,7 +265,6 @@ $fname: .Ltail: add $np,$num,$np add $rp,$num,$rp - mov $tp,$ap sub %g0,$num,%o7 ! k=-num ba .Lsub subcc %g0,%g0,%g0 ! clear %icc.c @@ -278,15 +277,14 @@ $fname: add %o7,4,%o7 brnz %o7,.Lsub st %o1,[$i] - subc $car2,0,$car2 ! handle upmost overflow bit - and $tp,$car2,$ap - andn $rp,$car2,$np - or $ap,$np,$ap + subccc $car2,0,$car2 ! handle upmost overflow bit sub %g0,$num,%o7 .Lcopy: - ld [$ap+%o7],%o0 ! copy or in-place refresh + ld [$tp+%o7],%o1 ! conditional copy + ld [$rp+%o7],%o0 st %g0,[$tp+%o7] ! zap tp + movcs %icc,%o1,%o0 st %o0,[$rp+%o7] add %o7,4,%o7 brnz %o7,.Lcopy diff --git a/crypto/bn/asm/via-mont.pl b/crypto/bn/asm/via-mont.pl index eaac4dd6..2b73a428 100644 --- a/crypto/bn/asm/via-mont.pl +++ b/crypto/bn/asm/via-mont.pl @@ -213,18 +213,15 @@ $sp=&DWP(28,"esp"); &mov ("eax",&DWP(0,"esi","edx",4)); # upmost overflow bit &sbb ("eax",0); - &and ("esi","eax"); - ¬ ("eax"); - &mov ("ebp","edi"); - &and ("ebp","eax"); - &or ("esi","ebp"); # tp=carry?tp:rp &mov ("ecx","edx"); # num - &xor ("edx","edx"); # i=0 + &mov ("edx",0); # i=0 &set_label("copy",8); - &mov ("eax",&DWP(0,"esi","edx",4)); - &mov (&DWP(64,"esp","edx",4),"ecx"); # zap tp + &mov ("ebx",&DWP(0,"esi","edx",4)); + &mov ("eax",&DWP(0,"edi","edx",4)); + &mov (&DWP(0,"esi","edx",4),"ecx"); # zap tp + &cmovc ("eax","ebx"); &mov (&DWP(0,"edi","edx",4),"eax"); &lea ("edx",&DWP(1,"edx")); # i++ &loop (&label("copy")); diff --git a/crypto/bn/asm/vis3-mont.pl b/crypto/bn/asm/vis3-mont.pl index 04694a4c..ee558703 100644 --- a/crypto/bn/asm/vis3-mont.pl +++ b/crypto/bn/asm/vis3-mont.pl @@ -310,23 +310,23 @@ $code.=<<___; sub $anp, $num, $anp sub $rp, $num, $rp - subc $ovf, %g0, $ovf ! handle upmost overflow bit - and $tp, $ovf, $ap - andn $rp, $ovf, $np - or $np, $ap, $ap ! ap=borrow?tp:rp + subccc $ovf, %g0, $ovf ! handle upmost overflow bit ba .Lcopy sub $num, 8, $cnt .align 16 -.Lcopy: ! copy or in-place refresh - ld [$ap+0], $t2 - ld [$ap+4], $t3 - add $ap, 8, $ap +.Lcopy: ! conditional copy + ld [$tp+0], $t0 + ld [$tp+4], $t1 + ld [$rp+0], $t2 + ld [$rp+4], $t3 stx %g0, [$tp] ! zap add $tp, 8, $tp stx %g0, [$anp] ! zap stx %g0, [$anp+8] add $anp, 16, $anp + movcs %icc, $t0, $t2 + movcs %icc, $t1, $t3 st $t3, [$rp+0] ! flip order st $t2, [$rp+4] add $rp, 8, $rp diff --git a/crypto/bn/asm/x86-mont.pl b/crypto/bn/asm/x86-mont.pl index 66997e27..d54a5431 100755 --- a/crypto/bn/asm/x86-mont.pl +++ b/crypto/bn/asm/x86-mont.pl @@ -604,16 +604,18 @@ $sbit=$num; &jge (&label("sub")); &sbb ("eax",0); # handle upmost overflow bit - &and ($tp,"eax"); - ¬ ("eax"); - &mov ($np,$rp); - &and ($np,"eax"); - &or ($tp,$np); # tp=carry?tp:rp + &mov ("edx",-1); + &xor ("edx","eax"); + &jmp (&label("copy")); -&set_label("copy",16); # copy or in-place refresh - &mov ("eax",&DWP(0,$tp,$num,4)); - &mov (&DWP(0,$rp,$num,4),"eax"); # rp[i]=tp[i] +&set_label("copy",16); # conditional copy + &mov ($tp,&DWP($frame,"esp",$num,4)); + &mov ($np,&DWP(0,$rp,$num,4)); &mov (&DWP($frame,"esp",$num,4),$j); # zap temporary vector + &and ($tp,"eax"); + &and ($np,"edx"); + &or ($np,$tp); + &mov (&DWP(0,$rp,$num,4),$np); &dec ($num); &jge (&label("copy")); diff --git a/crypto/bn/asm/x86_64-mont.pl b/crypto/bn/asm/x86_64-mont.pl index 7e6e9027..a0560e06 100755 --- a/crypto/bn/asm/x86_64-mont.pl +++ b/crypto/bn/asm/x86_64-mont.pl @@ -311,30 +311,30 @@ $code.=<<___; xor $i,$i # i=0 and clear CF! mov (%rsp),%rax # tp[0] - lea (%rsp),$ap # borrow ap for tp mov $num,$j # j=num - jmp .Lsub + .align 16 .Lsub: sbb ($np,$i,8),%rax mov %rax,($rp,$i,8) # rp[i]=tp[i]-np[i] - mov 8($ap,$i,8),%rax # tp[i+1] + mov 8(%rsp,$i,8),%rax # tp[i+1] lea 1($i),$i # i++ dec $j # doesn't affect CF! jnz .Lsub sbb \$0,%rax # handle upmost overflow bit + mov \$-1,%rbx + xor %rax,%rbx # not %rax xor $i,$i - and %rax,$ap - not %rax - mov $rp,$np - and %rax,$np mov $num,$j # j=num - or $np,$ap # ap=borrow?tp:rp -.align 16 -.Lcopy: # copy or in-place refresh - mov ($ap,$i,8),%rax - mov $i,(%rsp,$i,8) # zap temporary vector - mov %rax,($rp,$i,8) # rp[i]=tp[i] + +.Lcopy: # conditional copy + mov ($rp,$i,8),%rcx + mov (%rsp,$i,8),%rdx + and %rbx,%rcx + and %rax,%rdx + mov $num,(%rsp,$i,8) # zap temporary vector + or %rcx,%rdx + mov %rdx,($rp,$i,8) # rp[i]=tp[i] lea 1($i),$i sub \$1,$j jnz .Lcopy @@ -724,7 +724,6 @@ $code.=<<___; mov 16(%rsp,$num,8),$rp # restore $rp lea -4($num),$j mov 0(%rsp),@ri[0] # tp[0] - pxor %xmm0,%xmm0 mov 8(%rsp),@ri[1] # tp[1] shr \$2,$j # j=num/4-1 lea (%rsp),$ap # borrow ap for tp @@ -734,8 +733,7 @@ $code.=<<___; mov 16($ap),@ri[2] # tp[2] mov 24($ap),@ri[3] # tp[3] sbb 8($np),@ri[1] - jmp .Lsub4x -.align 16 + .Lsub4x: mov @ri[0],0($rp,$i,8) # rp[i]=tp[i]-np[i] mov @ri[1],8($rp,$i,8) # rp[i]=tp[i]-np[i] @@ -762,34 +760,35 @@ $code.=<<___; sbb \$0,@ri[0] # handle upmost overflow bit mov @ri[3],24($rp,$i,8) # rp[i]=tp[i]-np[i] - xor $i,$i # i=0 - and @ri[0],$ap - not @ri[0] - mov $rp,$np - and @ri[0],$np - lea -4($num),$j - or $np,$ap # ap=borrow?tp:rp - shr \$2,$j # j=num/4-1 + pxor %xmm0,%xmm0 + movq @ri[0],%xmm4 + pcmpeqd %xmm5,%xmm5 + pshufd \$0,%xmm4,%xmm4 + mov $num,$j + pxor %xmm4,%xmm5 + shr \$2,$j # j=num/4 + xor %eax,%eax # i=0 - movdqu ($ap),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,($rp) jmp .Lcopy4x .align 16 -.Lcopy4x: # copy or in-place refresh - movdqu 16($ap,$i),%xmm2 - movdqu 32($ap,$i),%xmm1 - movdqa %xmm0,16(%rsp,$i) - movdqu %xmm2,16($rp,$i) - movdqa %xmm0,32(%rsp,$i) - movdqu %xmm1,32($rp,$i) - lea 32($i),$i +.Lcopy4x: # conditional copy + movdqa (%rsp,%rax),%xmm1 + movdqu ($rp,%rax),%xmm2 + pand %xmm4,%xmm1 + pand %xmm5,%xmm2 + movdqa 16(%rsp,%rax),%xmm3 + movdqa %xmm0,(%rsp,%rax) + por %xmm2,%xmm1 + movdqu 16($rp,%rax),%xmm2 + movdqu %xmm1,($rp,%rax) + pand %xmm4,%xmm3 + pand %xmm5,%xmm2 + movdqa %xmm0,16(%rsp,%rax) + por %xmm2,%xmm3 + movdqu %xmm3,16($rp,%rax) + lea 32(%rax),%rax dec $j jnz .Lcopy4x - - movdqu 16($ap,$i),%xmm2 - movdqa %xmm0,16(%rsp,$i) - movdqu %xmm2,16($rp,$i) ___ } $code.=<<___; diff --git a/crypto/bn/asm/x86_64-mont5.pl b/crypto/bn/asm/x86_64-mont5.pl index 26354357..b1ad71fd 100755 --- a/crypto/bn/asm/x86_64-mont5.pl +++ b/crypto/bn/asm/x86_64-mont5.pl @@ -423,18 +423,19 @@ $code.=<<___; jnz .Lsub sbb \$0,%rax # handle upmost overflow bit + mov \$-1,%rbx + xor %rax,%rbx xor $i,$i - and %rax,$ap - not %rax - mov $rp,$np - and %rax,$np mov $num,$j # j=num - or $np,$ap # ap=borrow?tp:rp -.align 16 -.Lcopy: # copy or in-place refresh - mov ($ap,$i,8),%rax + +.Lcopy: # conditional copy + mov ($rp,$i,8),%rcx + mov (%rsp,$i,8),%rdx + and %rbx,%rcx + and %rax,%rdx mov $i,(%rsp,$i,8) # zap temporary vector - mov %rax,($rp,$i,8) # rp[i]=tp[i] + or %rcx,%rdx + mov %rdx,($rp,$i,8) # rp[i]=tp[i] lea 1($i),$i sub \$1,$j jnz .Lcopy diff --git a/crypto/bn/bn_add.c b/crypto/bn/bn_add.c index 7cdefa77..f2736b8f 100644 --- a/crypto/bn/bn_add.c +++ b/crypto/bn/bn_add.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -10,51 +10,69 @@ #include "internal/cryptlib.h" #include "bn_lcl.h" -/* r can == a or b */ +/* signed add of b to a. */ int BN_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) { - int a_neg = a->neg, ret; + int ret, r_neg, cmp_res; bn_check_top(a); bn_check_top(b); - /*- - * a + b a+b - * a + -b a-b - * -a + b b-a - * -a + -b -(a+b) - */ - if (a_neg ^ b->neg) { - /* only one is negative */ - if (a_neg) { - const BIGNUM *tmp; - - tmp = a; - a = b; - b = tmp; - } - - /* we are now a - b */ - - if (BN_ucmp(a, b) < 0) { - if (!BN_usub(r, b, a)) - return 0; - r->neg = 1; + if (a->neg == b->neg) { + r_neg = a->neg; + ret = BN_uadd(r, a, b); + } else { + cmp_res = BN_ucmp(a, b); + if (cmp_res > 0) { + r_neg = a->neg; + ret = BN_usub(r, a, b); + } else if (cmp_res < 0) { + r_neg = b->neg; + ret = BN_usub(r, b, a); } else { - if (!BN_usub(r, a, b)) - return 0; - r->neg = 0; + r_neg = 0; + BN_zero(r); + ret = 1; } - return 1; } - ret = BN_uadd(r, a, b); - r->neg = a_neg; + r->neg = r_neg; bn_check_top(r); return ret; } -/* unsigned add of b to a */ +/* signed sub of b from a. */ +int BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) +{ + int ret, r_neg, cmp_res; + + bn_check_top(a); + bn_check_top(b); + + if (a->neg != b->neg) { + r_neg = a->neg; + ret = BN_uadd(r, a, b); + } else { + cmp_res = BN_ucmp(a, b); + if (cmp_res > 0) { + r_neg = a->neg; + ret = BN_usub(r, a, b); + } else if (cmp_res < 0) { + r_neg = !b->neg; + ret = BN_usub(r, b, a); + } else { + r_neg = 0; + BN_zero(r); + ret = 1; + } + } + + r->neg = r_neg; + bn_check_top(r); + return ret; +} + +/* unsigned add of b to a, r can be equal to a or b. */ int BN_uadd(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) { int max, min, dif; @@ -151,59 +169,3 @@ int BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) return 1; } -int BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) -{ - int max; - int add = 0, neg = 0; - - bn_check_top(a); - bn_check_top(b); - - /*- - * a - b a-b - * a - -b a+b - * -a - b -(a+b) - * -a - -b b-a - */ - if (a->neg) { - if (b->neg) { - const BIGNUM *tmp; - - tmp = a; - a = b; - b = tmp; - } else { - add = 1; - neg = 1; - } - } else { - if (b->neg) { - add = 1; - neg = 0; - } - } - - if (add) { - if (!BN_uadd(r, a, b)) - return 0; - r->neg = neg; - return 1; - } - - /* We are actually doing a - b :-) */ - - max = (a->top > b->top) ? a->top : b->top; - if (bn_wexpand(r, max) == NULL) - return 0; - if (BN_ucmp(a, b) < 0) { - if (!BN_usub(r, b, a)) - return 0; - r->neg = 1; - } else { - if (!BN_usub(r, a, b)) - return 0; - r->neg = 0; - } - bn_check_top(r); - return 1; -} diff --git a/crypto/bn/bn_blind.c b/crypto/bn/bn_blind.c index 006ad6e5..420c1eee 100644 --- a/crypto/bn/bn_blind.c +++ b/crypto/bn/bn_blind.c @@ -1,5 +1,5 @@ /* - * Copyright 1998-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1998-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -82,7 +82,6 @@ void BN_BLINDING_free(BN_BLINDING *r) { if (r == NULL) return; - BN_free(r->A); BN_free(r->Ai); BN_free(r->e); @@ -251,7 +250,7 @@ BN_BLINDING *BN_BLINDING_create_param(BN_BLINDING *b, do { int rv; - if (!BN_rand_range(ret->A, ret->mod)) + if (!BN_priv_rand_range(ret->A, ret->mod)) goto err; if (!int_bn_mod_inverse(ret->Ai, ret->A, ret->mod, ctx, &rv)) { /* diff --git a/crypto/bn/bn_ctx.c b/crypto/bn/bn_ctx.c index 68c04687..aa08b31a 100644 --- a/crypto/bn/bn_ctx.c +++ b/crypto/bn/bn_ctx.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -255,9 +255,12 @@ static int BN_STACK_push(BN_STACK *st, unsigned int idx) /* Need to expand */ unsigned int newsize = st->size ? (st->size * 3 / 2) : BN_CTX_START_FRAMES; - unsigned int *newitems = OPENSSL_malloc(sizeof(*newitems) * newsize); - if (newitems == NULL) + unsigned int *newitems; + + if ((newitems = OPENSSL_malloc(sizeof(*newitems) * newsize)) == NULL) { + BNerr(BN_F_BN_STACK_PUSH, ERR_R_MALLOC_FAILURE); return 0; + } if (st->depth) memcpy(newitems, st->indexes, sizeof(*newitems) * st->depth); OPENSSL_free(st->indexes); @@ -306,9 +309,12 @@ static BIGNUM *BN_POOL_get(BN_POOL *p, int flag) /* Full; allocate a new pool item and link it in. */ if (p->used == p->size) { - BN_POOL_ITEM *item = OPENSSL_malloc(sizeof(*item)); - if (item == NULL) + BN_POOL_ITEM *item; + + if ((item = OPENSSL_malloc(sizeof(*item))) == NULL) { + BNerr(BN_F_BN_POOL_GET, ERR_R_MALLOC_FAILURE); return NULL; + } for (loop = 0, bn = item->vals; loop++ < BN_CTX_POOL_SIZE; bn++) { bn_init(bn); if ((flag & BN_FLG_SECURE) != 0) diff --git a/crypto/bn/bn_err.c b/crypto/bn/bn_err.c index e2817470..dd87c152 100644 --- a/crypto/bn/bn_err.c +++ b/crypto/bn/bn_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -62,12 +62,16 @@ static const ERR_STRING_DATA BN_str_functs[] = { "BN_mod_inverse_no_branch"}, {ERR_PACK(ERR_LIB_BN, BN_F_BN_MOD_LSHIFT_QUICK, 0), "BN_mod_lshift_quick"}, {ERR_PACK(ERR_LIB_BN, BN_F_BN_MOD_SQRT, 0), "BN_mod_sqrt"}, + {ERR_PACK(ERR_LIB_BN, BN_F_BN_MONT_CTX_NEW, 0), "BN_MONT_CTX_new"}, {ERR_PACK(ERR_LIB_BN, BN_F_BN_MPI2BN, 0), "BN_mpi2bn"}, {ERR_PACK(ERR_LIB_BN, BN_F_BN_NEW, 0), "BN_new"}, + {ERR_PACK(ERR_LIB_BN, BN_F_BN_POOL_GET, 0), "BN_POOL_get"}, {ERR_PACK(ERR_LIB_BN, BN_F_BN_RAND, 0), "BN_rand"}, {ERR_PACK(ERR_LIB_BN, BN_F_BN_RAND_RANGE, 0), "BN_rand_range"}, + {ERR_PACK(ERR_LIB_BN, BN_F_BN_RECP_CTX_NEW, 0), "BN_RECP_CTX_new"}, {ERR_PACK(ERR_LIB_BN, BN_F_BN_RSHIFT, 0), "BN_rshift"}, {ERR_PACK(ERR_LIB_BN, BN_F_BN_SET_WORDS, 0), "bn_set_words"}, + {ERR_PACK(ERR_LIB_BN, BN_F_BN_STACK_PUSH, 0), "BN_STACK_push"}, {ERR_PACK(ERR_LIB_BN, BN_F_BN_USUB, 0), "BN_usub"}, {0, NULL} }; diff --git a/crypto/bn/bn_gcd.c b/crypto/bn/bn_gcd.c index 22f80939..6d8c5655 100644 --- a/crypto/bn/bn_gcd.c +++ b/crypto/bn/bn_gcd.c @@ -140,7 +140,14 @@ BIGNUM *int_bn_mod_inverse(BIGNUM *in, BIGNUM *ret = NULL; int sign; - if (pnoinv) + /* This is invalid input so we don't worry about constant time here */ + if (BN_abs_is_word(n, 1) || BN_is_zero(n)) { + if (pnoinv != NULL) + *pnoinv = 1; + return NULL; + } + + if (pnoinv != NULL) *pnoinv = 0; if ((BN_get_flags(a, BN_FLG_CONSTTIME) != 0) diff --git a/crypto/bn/bn_gf2m.c b/crypto/bn/bn_gf2m.c index 16868f79..0fc4460d 100644 --- a/crypto/bn/bn_gf2m.c +++ b/crypto/bn/bn_gf2m.c @@ -22,30 +22,32 @@ */ # define MAX_ITERATIONS 50 -static const BN_ULONG SQR_tb[16] = { 0, 1, 4, 5, 16, 17, 20, 21, - 64, 65, 68, 69, 80, 81, 84, 85 -}; +# define SQR_nibble(w) ((((w) & 8) << 3) \ + | (((w) & 4) << 2) \ + | (((w) & 2) << 1) \ + | ((w) & 1)) + /* Platform-specific macros to accelerate squaring. */ # if defined(SIXTY_FOUR_BIT) || defined(SIXTY_FOUR_BIT_LONG) # define SQR1(w) \ - SQR_tb[(w) >> 60 & 0xF] << 56 | SQR_tb[(w) >> 56 & 0xF] << 48 | \ - SQR_tb[(w) >> 52 & 0xF] << 40 | SQR_tb[(w) >> 48 & 0xF] << 32 | \ - SQR_tb[(w) >> 44 & 0xF] << 24 | SQR_tb[(w) >> 40 & 0xF] << 16 | \ - SQR_tb[(w) >> 36 & 0xF] << 8 | SQR_tb[(w) >> 32 & 0xF] + SQR_nibble((w) >> 60) << 56 | SQR_nibble((w) >> 56) << 48 | \ + SQR_nibble((w) >> 52) << 40 | SQR_nibble((w) >> 48) << 32 | \ + SQR_nibble((w) >> 44) << 24 | SQR_nibble((w) >> 40) << 16 | \ + SQR_nibble((w) >> 36) << 8 | SQR_nibble((w) >> 32) # define SQR0(w) \ - SQR_tb[(w) >> 28 & 0xF] << 56 | SQR_tb[(w) >> 24 & 0xF] << 48 | \ - SQR_tb[(w) >> 20 & 0xF] << 40 | SQR_tb[(w) >> 16 & 0xF] << 32 | \ - SQR_tb[(w) >> 12 & 0xF] << 24 | SQR_tb[(w) >> 8 & 0xF] << 16 | \ - SQR_tb[(w) >> 4 & 0xF] << 8 | SQR_tb[(w) & 0xF] + SQR_nibble((w) >> 28) << 56 | SQR_nibble((w) >> 24) << 48 | \ + SQR_nibble((w) >> 20) << 40 | SQR_nibble((w) >> 16) << 32 | \ + SQR_nibble((w) >> 12) << 24 | SQR_nibble((w) >> 8) << 16 | \ + SQR_nibble((w) >> 4) << 8 | SQR_nibble((w) ) # endif # ifdef THIRTY_TWO_BIT # define SQR1(w) \ - SQR_tb[(w) >> 28 & 0xF] << 24 | SQR_tb[(w) >> 24 & 0xF] << 16 | \ - SQR_tb[(w) >> 20 & 0xF] << 8 | SQR_tb[(w) >> 16 & 0xF] + SQR_nibble((w) >> 28) << 24 | SQR_nibble((w) >> 24) << 16 | \ + SQR_nibble((w) >> 20) << 8 | SQR_nibble((w) >> 16) # define SQR0(w) \ - SQR_tb[(w) >> 12 & 0xF] << 24 | SQR_tb[(w) >> 8 & 0xF] << 16 | \ - SQR_tb[(w) >> 4 & 0xF] << 8 | SQR_tb[(w) & 0xF] + SQR_nibble((w) >> 12) << 24 | SQR_nibble((w) >> 8) << 16 | \ + SQR_nibble((w) >> 4) << 8 | SQR_nibble((w) ) # endif # if !defined(OPENSSL_BN_ASM_GF2m) @@ -547,7 +549,8 @@ int BN_GF2m_mod_sqr(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) * Hernandez, J.L., and Menezes, A. "Software Implementation of Elliptic * Curve Cryptography Over Binary Fields". */ -int BN_GF2m_mod_inv(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) +static int BN_GF2m_mod_inv_vartime(BIGNUM *r, const BIGNUM *a, + const BIGNUM *p, BN_CTX *ctx) { BIGNUM *b, *c = NULL, *u = NULL, *v = NULL, *tmp; int ret = 0; @@ -713,6 +716,46 @@ int BN_GF2m_mod_inv(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) return ret; } +/*- + * Wrapper for BN_GF2m_mod_inv_vartime that blinds the input before calling. + * This is not constant time. + * But it does eliminate first order deduction on the input. + */ +int BN_GF2m_mod_inv(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) +{ + BIGNUM *b = NULL; + int ret = 0; + + BN_CTX_start(ctx); + if ((b = BN_CTX_get(ctx)) == NULL) + goto err; + + /* generate blinding value */ + do { + if (!BN_priv_rand(b, BN_num_bits(p) - 1, + BN_RAND_TOP_ANY, BN_RAND_BOTTOM_ANY)) + goto err; + } while (BN_is_zero(b)); + + /* r := a * b */ + if (!BN_GF2m_mod_mul(r, a, b, p, ctx)) + goto err; + + /* r := 1/(a * b) */ + if (!BN_GF2m_mod_inv_vartime(r, r, p, ctx)) + goto err; + + /* r := b/(a * b) = 1/a */ + if (!BN_GF2m_mod_mul(r, r, b, p, ctx)) + goto err; + + ret = 1; + + err: + BN_CTX_end(ctx); + return ret; +} + /* * Invert xx, reduce modulo p, and store the result in r. r could be xx. * This function calls down to the BN_GF2m_mod_inv implementation; this @@ -740,7 +783,6 @@ int BN_GF2m_mod_inv_arr(BIGNUM *r, const BIGNUM *xx, const int p[], return ret; } -# ifndef OPENSSL_SUN_GF2M_DIV /* * Divide y by x, reduce modulo p, and store the result in r. r could be x * or y, x could equal y. @@ -771,94 +813,6 @@ int BN_GF2m_mod_div(BIGNUM *r, const BIGNUM *y, const BIGNUM *x, BN_CTX_end(ctx); return ret; } -# else -/* - * Divide y by x, reduce modulo p, and store the result in r. r could be x - * or y, x could equal y. Uses algorithm Modular_Division_GF(2^m) from - * Chang-Shantz, S. "From Euclid's GCD to Montgomery Multiplication to the - * Great Divide". - */ -int BN_GF2m_mod_div(BIGNUM *r, const BIGNUM *y, const BIGNUM *x, - const BIGNUM *p, BN_CTX *ctx) -{ - BIGNUM *a, *b, *u, *v; - int ret = 0; - - bn_check_top(y); - bn_check_top(x); - bn_check_top(p); - - BN_CTX_start(ctx); - - a = BN_CTX_get(ctx); - b = BN_CTX_get(ctx); - u = BN_CTX_get(ctx); - v = BN_CTX_get(ctx); - if (v == NULL) - goto err; - - /* reduce x and y mod p */ - if (!BN_GF2m_mod(u, y, p)) - goto err; - if (!BN_GF2m_mod(a, x, p)) - goto err; - if (!BN_copy(b, p)) - goto err; - - while (!BN_is_odd(a)) { - if (!BN_rshift1(a, a)) - goto err; - if (BN_is_odd(u)) - if (!BN_GF2m_add(u, u, p)) - goto err; - if (!BN_rshift1(u, u)) - goto err; - } - - do { - if (BN_GF2m_cmp(b, a) > 0) { - if (!BN_GF2m_add(b, b, a)) - goto err; - if (!BN_GF2m_add(v, v, u)) - goto err; - do { - if (!BN_rshift1(b, b)) - goto err; - if (BN_is_odd(v)) - if (!BN_GF2m_add(v, v, p)) - goto err; - if (!BN_rshift1(v, v)) - goto err; - } while (!BN_is_odd(b)); - } else if (BN_abs_is_word(a, 1)) - break; - else { - if (!BN_GF2m_add(a, a, b)) - goto err; - if (!BN_GF2m_add(u, u, v)) - goto err; - do { - if (!BN_rshift1(a, a)) - goto err; - if (BN_is_odd(u)) - if (!BN_GF2m_add(u, u, p)) - goto err; - if (!BN_rshift1(u, u)) - goto err; - } while (!BN_is_odd(a)); - } - } while (1); - - if (!BN_copy(r, u)) - goto err; - bn_check_top(r); - ret = 1; - - err: - BN_CTX_end(ctx); - return ret; -} -# endif /* * Divide yy by xx, reduce modulo p, and store the result in r. r could be xx diff --git a/crypto/bn/bn_lib.c b/crypto/bn/bn_lib.c index 57fe4528..5bb996e5 100644 --- a/crypto/bn/bn_lib.c +++ b/crypto/bn/bn_lib.c @@ -300,6 +300,11 @@ BIGNUM *BN_copy(BIGNUM *a, const BIGNUM *b) return a; } +#define FLAGS_DATA(flags) ((flags) & (BN_FLG_STATIC_DATA \ + | BN_FLG_CONSTTIME \ + | BN_FLG_SECURE)) +#define FLAGS_STRUCT(flags) ((flags) & (BN_FLG_MALLOCED)) + void BN_swap(BIGNUM *a, BIGNUM *b) { int flags_old_a, flags_old_b; @@ -327,10 +332,8 @@ void BN_swap(BIGNUM *a, BIGNUM *b) b->dmax = tmp_dmax; b->neg = tmp_neg; - a->flags = - (flags_old_a & BN_FLG_MALLOCED) | (flags_old_b & BN_FLG_STATIC_DATA); - b->flags = - (flags_old_b & BN_FLG_MALLOCED) | (flags_old_a & BN_FLG_STATIC_DATA); + a->flags = FLAGS_STRUCT(flags_old_a) | FLAGS_DATA(flags_old_b); + b->flags = FLAGS_STRUCT(flags_old_b) | FLAGS_DATA(flags_old_a); bn_check_top(a); bn_check_top(b); } @@ -739,6 +742,34 @@ void BN_consttime_swap(BN_ULONG condition, BIGNUM *a, BIGNUM *b, int nwords) a->top ^= t; b->top ^= t; + t = (a->neg ^ b->neg) & condition; + a->neg ^= t; + b->neg ^= t; + + /*- + * Idea behind BN_FLG_STATIC_DATA is actually to + * indicate that data may not be written to. + * Intention is actually to treat it as it's + * read-only data, and some (if not most) of it does + * reside in read-only segment. In other words + * observation of BN_FLG_STATIC_DATA in + * BN_consttime_swap should be treated as fatal + * condition. It would either cause SEGV or + * effectively cause data corruption. + * BN_FLG_MALLOCED refers to BN structure itself, + * and hence must be preserved. Remaining flags are + * BN_FLG_CONSTIME and BN_FLG_SECURE. Latter must be + * preserved, because it determines how x->d was + * allocated and hence how to free it. This leaves + * BN_FLG_CONSTTIME that one can do something about. + * To summarize it's sufficient to mask and swap + * BN_FLG_CONSTTIME alone. BN_FLG_STATIC_DATA should + * be treated as fatal. + */ + t = ((a->flags ^ b->flags) & BN_FLG_CONSTTIME) & condition; + a->flags ^= t; + b->flags ^= t; + #define BN_CONSTTIME_SWAP(ind) \ do { \ t = (a->d[ind] ^ b->d[ind]) & condition; \ diff --git a/crypto/bn/bn_mont.c b/crypto/bn/bn_mont.c index 6357c60c..5e068c4a 100644 --- a/crypto/bn/bn_mont.c +++ b/crypto/bn/bn_mont.c @@ -95,6 +95,8 @@ static int BN_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont) /* clear the top words of T */ i = max - r->top; + if (i < 0) + return 0; if (i) memset(&rp[r->top], 0, sizeof(*rp) * i); @@ -197,8 +199,10 @@ BN_MONT_CTX *BN_MONT_CTX_new(void) { BN_MONT_CTX *ret; - if ((ret = OPENSSL_malloc(sizeof(*ret))) == NULL) + if ((ret = OPENSSL_malloc(sizeof(*ret))) == NULL) { + BNerr(BN_F_BN_MONT_CTX_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } BN_MONT_CTX_init(ret); ret->flags = BN_FLG_MALLOCED; @@ -208,9 +212,9 @@ BN_MONT_CTX *BN_MONT_CTX_new(void) void BN_MONT_CTX_init(BN_MONT_CTX *ctx) { ctx->ri = 0; - bn_init(&(ctx->RR)); - bn_init(&(ctx->N)); - bn_init(&(ctx->Ni)); + bn_init(&ctx->RR); + bn_init(&ctx->N); + bn_init(&ctx->Ni); ctx->n0[0] = ctx->n0[1] = 0; ctx->flags = 0; } @@ -219,10 +223,9 @@ void BN_MONT_CTX_free(BN_MONT_CTX *mont) { if (mont == NULL) return; - - BN_clear_free(&(mont->RR)); - BN_clear_free(&(mont->N)); - BN_clear_free(&(mont->Ni)); + BN_clear_free(&mont->RR); + BN_clear_free(&mont->N); + BN_clear_free(&mont->Ni); if (mont->flags & BN_FLG_MALLOCED) OPENSSL_free(mont); } @@ -278,7 +281,9 @@ int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx) if ((buf[1] = mod->top > 1 ? mod->d[1] : 0)) tmod.top = 2; - if ((BN_mod_inverse(Ri, R, &tmod, ctx)) == NULL) + if (BN_is_one(&tmod)) + BN_zero(Ri); + else if ((BN_mod_inverse(Ri, R, &tmod, ctx)) == NULL) goto err; if (!BN_lshift(Ri, Ri, 2 * BN_BITS2)) goto err; /* R*Ri */ @@ -311,7 +316,9 @@ int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx) buf[1] = 0; tmod.top = buf[0] != 0 ? 1 : 0; /* Ri = R^-1 mod N */ - if ((BN_mod_inverse(Ri, R, &tmod, ctx)) == NULL) + if (BN_is_one(&tmod)) + BN_zero(Ri); + else if ((BN_mod_inverse(Ri, R, &tmod, ctx)) == NULL) goto err; if (!BN_lshift(Ri, Ri, BN_BITS2)) goto err; /* R*Ri */ diff --git a/crypto/bn/bn_prime.c b/crypto/bn/bn_prime.c index 36d6e884..03ccde95 100644 --- a/crypto/bn/bn_prime.c +++ b/crypto/bn/bn_prime.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -279,6 +279,7 @@ static int probable_prime(BIGNUM *rnd, int bits, prime_t *mods) char is_single_word = bits <= BN_BITS2; again: + /* TODO: Not all primes are private */ if (!BN_priv_rand(rnd, bits, BN_RAND_TOP_TWO, BN_RAND_BOTTOM_ODD)) return 0; /* we now have a random number 'rnd' to test. */ @@ -363,7 +364,7 @@ int bn_probable_prime_dh(BIGNUM *rnd, int bits, if ((t1 = BN_CTX_get(ctx)) == NULL) goto err; - if (!BN_priv_rand(rnd, bits, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ODD)) + if (!BN_rand(rnd, bits, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ODD)) goto err; /* we need ((rnd-rem) % add) == 0 */ @@ -419,7 +420,7 @@ static int probable_prime_dh_safe(BIGNUM *p, int bits, const BIGNUM *padd, if (!BN_rshift1(qadd, padd)) goto err; - if (!BN_priv_rand(q, bits, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ODD)) + if (!BN_rand(q, bits, BN_RAND_TOP_ONE, BN_RAND_BOTTOM_ODD)) goto err; /* we need ((rnd-rem) % add) == 0 */ diff --git a/crypto/bn/bn_rand.c b/crypto/bn/bn_rand.c index 743779f9..c0d1a322 100644 --- a/crypto/bn/bn_rand.c +++ b/crypto/bn/bn_rand.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -239,7 +239,7 @@ int BN_generate_dsa_nonce(BIGNUM *out, const BIGNUM *range, memset(private_bytes + todo, 0, sizeof(private_bytes) - todo); for (done = 0; done < num_k_bytes;) { - if (RAND_bytes(random_bytes, sizeof(random_bytes)) != 1) + if (RAND_priv_bytes(random_bytes, sizeof(random_bytes)) != 1) goto err; SHA512_Init(&sha); SHA512_Update(&sha, &done, sizeof(done)); diff --git a/crypto/bn/bn_recp.c b/crypto/bn/bn_recp.c index e8736991..9ab767f4 100644 --- a/crypto/bn/bn_recp.c +++ b/crypto/bn/bn_recp.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -21,8 +21,10 @@ BN_RECP_CTX *BN_RECP_CTX_new(void) { BN_RECP_CTX *ret; - if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) + if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) { + BNerr(BN_F_BN_RECP_CTX_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } bn_init(&(ret->N)); bn_init(&(ret->Nr)); @@ -34,9 +36,8 @@ void BN_RECP_CTX_free(BN_RECP_CTX *recp) { if (recp == NULL) return; - - BN_free(&(recp->N)); - BN_free(&(recp->Nr)); + BN_free(&recp->N); + BN_free(&recp->Nr); if (recp->flags & BN_FLG_MALLOCED) OPENSSL_free(recp); } diff --git a/crypto/bn/bn_sqrt.c b/crypto/bn/bn_sqrt.c index 37cdaf87..b97d8ca4 100644 --- a/crypto/bn/bn_sqrt.c +++ b/crypto/bn/bn_sqrt.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -179,7 +179,7 @@ BIGNUM *BN_mod_sqrt(BIGNUM *in, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) if (!BN_set_word(y, i)) goto end; } else { - if (!BN_rand(y, BN_num_bits(p), 0, 0)) + if (!BN_priv_rand(y, BN_num_bits(p), 0, 0)) goto end; if (BN_ucmp(y, p) >= 0) { if (!(p->neg ? BN_add : BN_sub) (y, y, p)) diff --git a/crypto/bn/rsaz_exp.h b/crypto/bn/rsaz_exp.h index 1c5e6188..488b136f 100644 --- a/crypto/bn/rsaz_exp.h +++ b/crypto/bn/rsaz_exp.h @@ -28,7 +28,7 @@ void RSAZ_1024_mod_exp_avx2(BN_ULONG result[16], const BN_ULONG exponent[16], const BN_ULONG m_norm[16], const BN_ULONG RR[16], BN_ULONG k0); -int rsaz_avx2_eligible(); +int rsaz_avx2_eligible(void); void RSAZ_512_mod_exp(BN_ULONG result[8], const BN_ULONG base_norm[8], const BN_ULONG exponent[8], diff --git a/crypto/buffer/buffer.c b/crypto/buffer/buffer.c index cbd2e531..72258abb 100644 --- a/crypto/buffer/buffer.c +++ b/crypto/buffer/buffer.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -44,7 +44,6 @@ void BUF_MEM_free(BUF_MEM *a) { if (a == NULL) return; - if (a->data != NULL) { if (a->flags & BUF_MEM_FLAG_SECURE) OPENSSL_secure_clear_free(a->data, a->max); diff --git a/crypto/build.info b/crypto/build.info index 368671a5..b515b731 100644 --- a/crypto/build.info +++ b/crypto/build.info @@ -1,4 +1,3 @@ -{- use File::Spec::Functions qw/catdir catfile/; -} LIBS=../libcrypto SOURCE[../libcrypto]=\ cryptlib.c mem.c mem_dbg.c cversion.c ex_data.c cpt_err.c \ diff --git a/crypto/chacha/asm/chacha-ppc.pl b/crypto/chacha/asm/chacha-ppc.pl index f972ee47..af2f037c 100755 --- a/crypto/chacha/asm/chacha-ppc.pl +++ b/crypto/chacha/asm/chacha-ppc.pl @@ -27,6 +27,7 @@ # PPC970/G5 9.29/+160% 4.60 # POWER7 8.62/+61% 4.27 # POWER8 8.70/+51% 3.96 +# POWER9 6.61/+29% 3.67 $flavour = shift; diff --git a/crypto/cmac/cmac.c b/crypto/cmac/cmac.c index 46e3cb79..6989c32d 100644 --- a/crypto/cmac/cmac.c +++ b/crypto/cmac/cmac.c @@ -1,5 +1,5 @@ /* - * Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2010-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -12,6 +12,7 @@ #include #include "internal/cryptlib.h" #include +#include struct CMAC_CTX_st { /* Cipher context to use */ @@ -46,9 +47,10 @@ CMAC_CTX *CMAC_CTX_new(void) { CMAC_CTX *ctx; - ctx = OPENSSL_malloc(sizeof(*ctx)); - if (ctx == NULL) + if ((ctx = OPENSSL_malloc(sizeof(*ctx))) == NULL) { + CRYPTOerr(CRYPTO_F_CMAC_CTX_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } ctx->cctx = EVP_CIPHER_CTX_new(); if (ctx->cctx == NULL) { OPENSSL_free(ctx); diff --git a/crypto/cms/cms_enc.c b/crypto/cms/cms_enc.c index ed913426..a1719830 100644 --- a/crypto/cms/cms_enc.c +++ b/crypto/cms/cms_enc.c @@ -1,5 +1,5 @@ /* - * Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2008-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -168,9 +168,10 @@ int cms_EncryptedContent_init(CMS_EncryptedContentInfo *ec, { ec->cipher = cipher; if (key) { - ec->key = OPENSSL_malloc(keylen); - if (ec->key == NULL) + if ((ec->key = OPENSSL_malloc(keylen)) == NULL) { + CMSerr(CMS_F_CMS_ENCRYPTEDCONTENT_INIT, ERR_R_MALLOC_FAILURE); return 0; + } memcpy(ec->key, key, keylen); } ec->keylen = keylen; diff --git a/crypto/cms/cms_env.c b/crypto/cms/cms_env.c index 6ca3be71..7c2d420b 100644 --- a/crypto/cms/cms_env.c +++ b/crypto/cms/cms_env.c @@ -282,6 +282,7 @@ int CMS_RecipientInfo_set0_pkey(CMS_RecipientInfo *ri, EVP_PKEY *pkey) CMSerr(CMS_F_CMS_RECIPIENTINFO_SET0_PKEY, CMS_R_NOT_KEY_TRANSPORT); return 0; } + EVP_PKEY_free(ri->d.ktri->pkey); ri->d.ktri->pkey = pkey; return 1; } diff --git a/crypto/cms/cms_err.c b/crypto/cms/cms_err.c index 43a48b62..4432b471 100644 --- a/crypto/cms/cms_err.c +++ b/crypto/cms/cms_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -54,6 +54,8 @@ static const ERR_STRING_DATA CMS_str_functs[] = { {ERR_PACK(ERR_LIB_CMS, CMS_F_CMS_DIGEST_VERIFY, 0), "CMS_digest_verify"}, {ERR_PACK(ERR_LIB_CMS, CMS_F_CMS_ENCODE_RECEIPT, 0), "cms_encode_Receipt"}, {ERR_PACK(ERR_LIB_CMS, CMS_F_CMS_ENCRYPT, 0), "CMS_encrypt"}, + {ERR_PACK(ERR_LIB_CMS, CMS_F_CMS_ENCRYPTEDCONTENT_INIT, 0), + "cms_EncryptedContent_init"}, {ERR_PACK(ERR_LIB_CMS, CMS_F_CMS_ENCRYPTEDCONTENT_INIT_BIO, 0), "cms_EncryptedContent_init_bio"}, {ERR_PACK(ERR_LIB_CMS, CMS_F_CMS_ENCRYPTEDDATA_DECRYPT, 0), @@ -147,6 +149,7 @@ static const ERR_STRING_DATA CMS_str_functs[] = { {ERR_PACK(ERR_LIB_CMS, CMS_F_CMS_STREAM, 0), "CMS_stream"}, {ERR_PACK(ERR_LIB_CMS, CMS_F_CMS_UNCOMPRESS, 0), "CMS_uncompress"}, {ERR_PACK(ERR_LIB_CMS, CMS_F_CMS_VERIFY, 0), "CMS_verify"}, + {ERR_PACK(ERR_LIB_CMS, CMS_F_KEK_UNWRAP_KEY, 0), "kek_unwrap_key"}, {0, NULL} }; diff --git a/crypto/cms/cms_pwri.c b/crypto/cms/cms_pwri.c index 0571bb80..a7e63c7f 100644 --- a/crypto/cms/cms_pwri.c +++ b/crypto/cms/cms_pwri.c @@ -1,5 +1,5 @@ /* - * Copyright 2009-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2009-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -188,9 +188,10 @@ static int kek_unwrap_key(unsigned char *out, size_t *outlen, /* Invalid size */ return 0; } - tmp = OPENSSL_malloc(inlen); - if (tmp == NULL) + if ((tmp = OPENSSL_malloc(inlen)) == NULL) { + CMSerr(CMS_F_KEK_UNWRAP_KEY, ERR_R_MALLOC_FAILURE); return 0; + } /* setup IV by decrypting last two blocks */ if (!EVP_DecryptUpdate(ctx, tmp + inlen - 2 * blocklen, &outl, in + inlen - 2 * blocklen, blocklen * 2) diff --git a/crypto/cms/cms_smime.c b/crypto/cms/cms_smime.c index 7e7b6e5d..76883bfb 100644 --- a/crypto/cms/cms_smime.c +++ b/crypto/cms/cms_smime.c @@ -631,6 +631,7 @@ int CMS_decrypt_set1_pkey(CMS_ContentInfo *cms, EVP_PKEY *pk, X509 *cert) * all. */ else if (!cert || !CMS_RecipientInfo_ktri_cert_cmp(ri, cert)) { + EVP_PKEY_up_ref(pk); CMS_RecipientInfo_set0_pkey(ri, pk); r = CMS_RecipientInfo_decrypt(cms, ri); CMS_RecipientInfo_set0_pkey(ri, NULL); diff --git a/crypto/comp/comp_err.c b/crypto/comp/comp_err.c index 5aff502b..2dca315c 100644 --- a/crypto/comp/comp_err.c +++ b/crypto/comp/comp_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -18,6 +18,7 @@ static const ERR_STRING_DATA COMP_str_functs[] = { {ERR_PACK(ERR_LIB_COMP, COMP_F_BIO_ZLIB_NEW, 0), "bio_zlib_new"}, {ERR_PACK(ERR_LIB_COMP, COMP_F_BIO_ZLIB_READ, 0), "bio_zlib_read"}, {ERR_PACK(ERR_LIB_COMP, COMP_F_BIO_ZLIB_WRITE, 0), "bio_zlib_write"}, + {ERR_PACK(ERR_LIB_COMP, COMP_F_COMP_CTX_NEW, 0), "COMP_CTX_new"}, {0, NULL} }; diff --git a/crypto/comp/comp_lib.c b/crypto/comp/comp_lib.c index 137a5db7..6ae21144 100644 --- a/crypto/comp/comp_lib.c +++ b/crypto/comp/comp_lib.c @@ -1,5 +1,5 @@ /* - * Copyright 1998-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1998-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -12,14 +12,17 @@ #include #include #include +#include #include "comp_lcl.h" COMP_CTX *COMP_CTX_new(COMP_METHOD *meth) { COMP_CTX *ret; - if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) + if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) { + COMPerr(COMP_F_COMP_CTX_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } ret->meth = meth; if ((ret->meth->init != NULL) && !ret->meth->init(ret)) { OPENSSL_free(ret); @@ -47,7 +50,6 @@ void COMP_CTX_free(COMP_CTX *ctx) { if (ctx == NULL) return; - if (ctx->meth->finish != NULL) ctx->meth->finish(ctx); diff --git a/crypto/conf/build.info b/crypto/conf/build.info index 4438eb42..ff367994 100644 --- a/crypto/conf/build.info +++ b/crypto/conf/build.info @@ -1,4 +1,4 @@ LIBS=../../libcrypto SOURCE[../../libcrypto]= \ conf_err.c conf_lib.c conf_api.c conf_def.c conf_mod.c \ - conf_mall.c conf_sap.c + conf_mall.c conf_sap.c conf_ssl.c diff --git a/crypto/conf/conf_api.c b/crypto/conf/conf_api.c index ade54839..9606b7f2 100644 --- a/crypto/conf/conf_api.c +++ b/crypto/conf/conf_api.c @@ -204,12 +204,14 @@ CONF_VALUE *_CONF_new_section(CONF *conf, const char *section) v->value = (char *)sk; vv = lh_CONF_VALUE_insert(conf->data, v); - if (vv != NULL) + if (vv != NULL || lh_CONF_VALUE_error(conf->data) > 0) goto err; return v; err: sk_CONF_VALUE_free(sk); + if (v != NULL) + OPENSSL_free(v->section); OPENSSL_free(v); return NULL; } diff --git a/crypto/conf/conf_def.c b/crypto/conf/conf_def.c index 752859d9..7340a91a 100644 --- a/crypto/conf/conf_def.c +++ b/crypto/conf/conf_def.c @@ -33,6 +33,7 @@ */ #define MAX_CONF_VALUE_LENGTH 65536 +static int is_keytype(const CONF *conf, char c, unsigned short type); static char *eat_ws(CONF *conf, char *p); static void trim_ws(CONF *conf, char *start); static char *eat_alpha_numeric(CONF *conf, char *p); @@ -84,12 +85,12 @@ static CONF_METHOD WIN32_method = { def_load }; -CONF_METHOD *NCONF_default() +CONF_METHOD *NCONF_default(void) { return &default_method; } -CONF_METHOD *NCONF_WIN32() +CONF_METHOD *NCONF_WIN32(void) { return &WIN32_method; } @@ -558,7 +559,7 @@ static int str_copy(CONF *conf, char *section, char **pto, char *from) s++; cp = section; e = np = s; - while (IS_ALPHA_NUMERIC(conf, *e)) + while (IS_ALNUM(conf, *e)) e++; if ((e[0] == ':') && (e[1] == ':')) { cp = np; @@ -567,7 +568,7 @@ static int str_copy(CONF *conf, char *section, char **pto, char *from) *rrp = '\0'; e += 2; np = e; - while (IS_ALPHA_NUMERIC(conf, *e)) + while (IS_ALNUM(conf, *e)) e++; } r = *e; @@ -732,6 +733,30 @@ static BIO *get_next_file(const char *path, OPENSSL_DIR_CTX **dirctx) } #endif +static int is_keytype(const CONF *conf, char c, unsigned short type) +{ + const unsigned short * keytypes = (const unsigned short *) conf->meth_data; + unsigned char key = (unsigned char)c; + +#ifdef CHARSET_EBCDIC +# if CHAR_BIT > 8 + if (key > 255) { + /* key is out of range for os_toascii table */ + return 0; + } +# endif + /* convert key from ebcdic to ascii */ + key = os_toascii[key]; +#endif + + if (key > 127) { + /* key is not a seven bit ascii character */ + return 0; + } + + return (keytypes[key] & type) ? 1 : 0; +} + static char *eat_ws(CONF *conf, char *p) { while (IS_WS(conf, *p) && (!IS_EOF(conf, *p))) @@ -759,7 +784,7 @@ static char *eat_alpha_numeric(CONF *conf, char *p) p = scan_esc(conf, p); continue; } - if (!IS_ALPHA_NUMERIC_PUNCT(conf, *p)) + if (!IS_ALNUM_PUNCT(conf, *p)) return p; p++; } diff --git a/crypto/conf/conf_def.h b/crypto/conf/conf_def.h index ad8894c4..73e88baa 100644 --- a/crypto/conf/conf_def.h +++ b/crypto/conf/conf_def.h @@ -9,56 +9,35 @@ * https://www.openssl.org/source/license.html */ -#define CONF_NUMBER 1 -#define CONF_UPPER 2 -#define CONF_LOWER 4 -#define CONF_UNDER 256 -#define CONF_PUNCTUATION 512 -#define CONF_WS 16 -#define CONF_ESC 32 -#define CONF_QUOTE 64 -#define CONF_DQUOTE 1024 -#define CONF_COMMENT 128 -#define CONF_FCOMMENT 2048 -#define CONF_EOF 8 -#define CONF_HIGHBIT 4096 -#define CONF_ALPHA (CONF_UPPER|CONF_LOWER) -#define CONF_ALPHA_NUMERIC (CONF_ALPHA|CONF_NUMBER|CONF_UNDER) -#define CONF_ALPHA_NUMERIC_PUNCT (CONF_ALPHA|CONF_NUMBER|CONF_UNDER| \ - CONF_PUNCTUATION) +#define CONF_NUMBER 1 +#define CONF_UPPER 2 +#define CONF_LOWER 4 +#define CONF_UNDER 256 +#define CONF_PUNCT 512 +#define CONF_WS 16 +#define CONF_ESC 32 +#define CONF_QUOTE 64 +#define CONF_DQUOTE 1024 +#define CONF_COMMENT 128 +#define CONF_FCOMMENT 2048 +#define CONF_EOF 8 +#define CONF_ALPHA (CONF_UPPER|CONF_LOWER) +#define CONF_ALNUM (CONF_ALPHA|CONF_NUMBER|CONF_UNDER) +#define CONF_ALNUM_PUNCT (CONF_ALPHA|CONF_NUMBER|CONF_UNDER|CONF_PUNCT) -#define KEYTYPES(c) ((const unsigned short *)((c)->meth_data)) -#ifndef CHARSET_EBCDIC -# define IS_COMMENT(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_COMMENT) -# define IS_FCOMMENT(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_FCOMMENT) -# define IS_EOF(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_EOF) -# define IS_ESC(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_ESC) -# define IS_NUMBER(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_NUMBER) -# define IS_WS(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_WS) -# define IS_ALPHA_NUMERIC(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_ALPHA_NUMERIC) -# define IS_ALPHA_NUMERIC_PUNCT(c,a) \ - (KEYTYPES(c)[(a)&0xff]&CONF_ALPHA_NUMERIC_PUNCT) -# define IS_QUOTE(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_QUOTE) -# define IS_DQUOTE(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_DQUOTE) -# define IS_HIGHBIT(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_HIGHBIT) -#else /* CHARSET_EBCDIC */ +#define IS_COMMENT(conf,c) is_keytype(conf, c, CONF_COMMENT) +#define IS_FCOMMENT(conf,c) is_keytype(conf, c, CONF_FCOMMENT) +#define IS_EOF(conf,c) is_keytype(conf, c, CONF_EOF) +#define IS_ESC(conf,c) is_keytype(conf, c, CONF_ESC) +#define IS_NUMBER(conf,c) is_keytype(conf, c, CONF_NUMBER) +#define IS_WS(conf,c) is_keytype(conf, c, CONF_WS) +#define IS_ALNUM(conf,c) is_keytype(conf, c, CONF_ALNUM) +#define IS_ALNUM_PUNCT(conf,c) is_keytype(conf, c, CONF_ALNUM_PUNCT) +#define IS_QUOTE(conf,c) is_keytype(conf, c, CONF_QUOTE) +#define IS_DQUOTE(conf,c) is_keytype(conf, c, CONF_DQUOTE) -# define IS_COMMENT(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_COMMENT) -# define IS_FCOMMENT(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_FCOMMENT) -# define IS_EOF(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_EOF) -# define IS_ESC(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_ESC) -# define IS_NUMBER(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_NUMBER) -# define IS_WS(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_WS) -# define IS_ALPHA_NUMERIC(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_ALPHA_NUMERIC) -# define IS_ALPHA_NUMERIC_PUNCT(c,a) \ - (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_ALPHA_NUMERIC_PUNCT) -# define IS_QUOTE(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_QUOTE) -# define IS_DQUOTE(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_DQUOTE) -# define IS_HIGHBIT(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_HIGHBIT) -#endif /* CHARSET_EBCDIC */ - -static const unsigned short CONF_type_default[256] = { +static const unsigned short CONF_type_default[128] = { 0x0008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0010, 0x0010, 0x0000, 0x0000, 0x0010, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -75,25 +54,9 @@ static const unsigned short CONF_type_default[256] = { 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0000, 0x0200, 0x0000, 0x0200, 0x0000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, }; -static const unsigned short CONF_type_win32[256] = { +static const unsigned short CONF_type_win32[128] = { 0x0008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0010, 0x0010, 0x0000, 0x0000, 0x0010, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, @@ -110,20 +73,4 @@ static const unsigned short CONF_type_win32[256] = { 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0000, 0x0200, 0x0000, 0x0200, 0x0000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, - 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, }; diff --git a/crypto/conf/conf_err.c b/crypto/conf/conf_err.c index dd20a1aa..01f98da8 100644 --- a/crypto/conf/conf_err.c +++ b/crypto/conf/conf_err.c @@ -21,6 +21,7 @@ static const ERR_STRING_DATA CONF_str_functs[] = { {ERR_PACK(ERR_LIB_CONF, CONF_F_DEF_LOAD, 0), "def_load"}, {ERR_PACK(ERR_LIB_CONF, CONF_F_DEF_LOAD_BIO, 0), "def_load_bio"}, {ERR_PACK(ERR_LIB_CONF, CONF_F_GET_NEXT_FILE, 0), "get_next_file"}, + {ERR_PACK(ERR_LIB_CONF, CONF_F_MODULE_ADD, 0), "module_add"}, {ERR_PACK(ERR_LIB_CONF, CONF_F_MODULE_INIT, 0), "module_init"}, {ERR_PACK(ERR_LIB_CONF, CONF_F_MODULE_LOAD_DSO, 0), "module_load_dso"}, {ERR_PACK(ERR_LIB_CONF, CONF_F_MODULE_RUN, 0), "module_run"}, @@ -35,6 +36,7 @@ static const ERR_STRING_DATA CONF_str_functs[] = { {ERR_PACK(ERR_LIB_CONF, CONF_F_NCONF_LOAD_FP, 0), "NCONF_load_fp"}, {ERR_PACK(ERR_LIB_CONF, CONF_F_NCONF_NEW, 0), "NCONF_new"}, {ERR_PACK(ERR_LIB_CONF, CONF_F_PROCESS_INCLUDE, 0), "process_include"}, + {ERR_PACK(ERR_LIB_CONF, CONF_F_SSL_MODULE_INIT, 0), "ssl_module_init"}, {ERR_PACK(ERR_LIB_CONF, CONF_F_STR_COPY, 0), "str_copy"}, {0, NULL} }; @@ -60,6 +62,13 @@ static const ERR_STRING_DATA CONF_str_reasons[] = { {ERR_PACK(ERR_LIB_CONF, 0, CONF_R_NO_VALUE), "no value"}, {ERR_PACK(ERR_LIB_CONF, 0, CONF_R_RECURSIVE_DIRECTORY_INCLUDE), "recursive directory include"}, + {ERR_PACK(ERR_LIB_CONF, 0, CONF_R_SSL_COMMAND_SECTION_EMPTY), + "ssl command section empty"}, + {ERR_PACK(ERR_LIB_CONF, 0, CONF_R_SSL_COMMAND_SECTION_NOT_FOUND), + "ssl command section not found"}, + {ERR_PACK(ERR_LIB_CONF, 0, CONF_R_SSL_SECTION_EMPTY), "ssl section empty"}, + {ERR_PACK(ERR_LIB_CONF, 0, CONF_R_SSL_SECTION_NOT_FOUND), + "ssl section not found"}, {ERR_PACK(ERR_LIB_CONF, 0, CONF_R_UNABLE_TO_CREATE_NEW_SECTION), "unable to create new section"}, {ERR_PACK(ERR_LIB_CONF, 0, CONF_R_UNKNOWN_MODULE_NAME), diff --git a/crypto/conf/conf_lcl.h b/crypto/conf/conf_lcl.h new file mode 100644 index 00000000..6e1f7fe0 --- /dev/null +++ b/crypto/conf/conf_lcl.h @@ -0,0 +1,11 @@ +/* + * Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +void conf_add_ssl_module(void); + diff --git a/crypto/conf/conf_mall.c b/crypto/conf/conf_mall.c index 4e7a434e..7e86948e 100644 --- a/crypto/conf/conf_mall.c +++ b/crypto/conf/conf_mall.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -14,6 +14,7 @@ #include #include #include +#include "conf_lcl.h" /* Load all OpenSSL builtin modules */ @@ -26,4 +27,5 @@ void OPENSSL_load_builtin_modules(void) ENGINE_add_conf_module(); #endif EVP_add_alg_module(); + conf_add_ssl_module(); } diff --git a/crypto/conf/conf_mod.c b/crypto/conf/conf_mod.c index 7622d8e1..df53609c 100644 --- a/crypto/conf/conf_mod.c +++ b/crypto/conf/conf_mod.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -232,9 +232,10 @@ static CONF_MODULE *module_add(DSO *dso, const char *name, supported_modules = sk_CONF_MODULE_new_null(); if (supported_modules == NULL) return NULL; - tmod = OPENSSL_zalloc(sizeof(*tmod)); - if (tmod == NULL) + if ((tmod = OPENSSL_zalloc(sizeof(*tmod))) == NULL) { + CONFerr(CONF_F_MODULE_ADD, ERR_R_MALLOC_FAILURE); return NULL; + } tmod->dso = dso; tmod->name = OPENSSL_strdup(name); @@ -479,9 +480,11 @@ char *CONF_get1_default_config_file(void) char *file, *sep = ""; int len; - file = getenv("OPENSSL_CONF"); - if (file) - return OPENSSL_strdup(file); + if (!OPENSSL_issetugid()) { + file = getenv("OPENSSL_CONF"); + if (file) + return OPENSSL_strdup(file); + } len = strlen(X509_get_default_cert_area()); #ifndef OPENSSL_SYS_VMS diff --git a/crypto/conf/conf_ssl.c b/crypto/conf/conf_ssl.c new file mode 100644 index 00000000..015c46c6 --- /dev/null +++ b/crypto/conf/conf_ssl.c @@ -0,0 +1,178 @@ +/* + * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include +#include +#include +#include "internal/sslconf.h" +#include "conf_lcl.h" + +/* + * SSL library configuration module placeholder. We load it here but defer + * all decisions about its contents to libssl. + */ + +struct ssl_conf_name_st { + /* Name of this set of commands */ + char *name; + /* List of commands */ + SSL_CONF_CMD *cmds; + /* Number of commands */ + size_t cmd_count; +}; + +struct ssl_conf_cmd_st { + /* Command */ + char *cmd; + /* Argument */ + char *arg; +}; + +static struct ssl_conf_name_st *ssl_names; +static size_t ssl_names_count; + +static void ssl_module_free(CONF_IMODULE *md) +{ + size_t i, j; + if (ssl_names == NULL) + return; + for (i = 0; i < ssl_names_count; i++) { + struct ssl_conf_name_st *tname = ssl_names + i; + + OPENSSL_free(tname->name); + for (j = 0; j < tname->cmd_count; j++) { + OPENSSL_free(tname->cmds[j].cmd); + OPENSSL_free(tname->cmds[j].arg); + } + OPENSSL_free(tname->cmds); + } + OPENSSL_free(ssl_names); + ssl_names = NULL; + ssl_names_count = 0; +} + +static int ssl_module_init(CONF_IMODULE *md, const CONF *cnf) +{ + size_t i, j, cnt; + int rv = 0; + const char *ssl_conf_section; + STACK_OF(CONF_VALUE) *cmd_lists; + + ssl_conf_section = CONF_imodule_get_value(md); + cmd_lists = NCONF_get_section(cnf, ssl_conf_section); + if (sk_CONF_VALUE_num(cmd_lists) <= 0) { + if (cmd_lists == NULL) + CONFerr(CONF_F_SSL_MODULE_INIT, CONF_R_SSL_SECTION_NOT_FOUND); + else + CONFerr(CONF_F_SSL_MODULE_INIT, CONF_R_SSL_SECTION_EMPTY); + ERR_add_error_data(2, "section=", ssl_conf_section); + goto err; + } + cnt = sk_CONF_VALUE_num(cmd_lists); + ssl_names = OPENSSL_zalloc(sizeof(*ssl_names) * cnt); + ssl_names_count = cnt; + for (i = 0; i < ssl_names_count; i++) { + struct ssl_conf_name_st *ssl_name = ssl_names + i; + CONF_VALUE *sect = sk_CONF_VALUE_value(cmd_lists, (int)i); + STACK_OF(CONF_VALUE) *cmds = NCONF_get_section(cnf, sect->value); + + if (sk_CONF_VALUE_num(cmds) <= 0) { + if (cmds == NULL) + CONFerr(CONF_F_SSL_MODULE_INIT, + CONF_R_SSL_COMMAND_SECTION_NOT_FOUND); + else + CONFerr(CONF_F_SSL_MODULE_INIT, + CONF_R_SSL_COMMAND_SECTION_EMPTY); + ERR_add_error_data(4, "name=", sect->name, ", value=", sect->value); + goto err; + } + ssl_name->name = OPENSSL_strdup(sect->name); + if (ssl_name->name == NULL) + goto err; + cnt = sk_CONF_VALUE_num(cmds); + ssl_name->cmds = OPENSSL_zalloc(cnt * sizeof(struct ssl_conf_cmd_st)); + if (ssl_name->cmds == NULL) + goto err; + ssl_name->cmd_count = cnt; + for (j = 0; j < cnt; j++) { + const char *name; + CONF_VALUE *cmd_conf = sk_CONF_VALUE_value(cmds, (int)j); + struct ssl_conf_cmd_st *cmd = ssl_name->cmds + j; + + /* Skip any initial dot in name */ + name = strchr(cmd_conf->name, '.'); + if (name != NULL) + name++; + else + name = cmd_conf->name; + cmd->cmd = OPENSSL_strdup(name); + cmd->arg = OPENSSL_strdup(cmd_conf->value); + if (cmd->cmd == NULL || cmd->arg == NULL) + goto err; + } + + } + rv = 1; + err: + if (rv == 0) + ssl_module_free(md); + return rv; +} + +/* + * Returns the set of commands with index |idx| previously searched for via + * conf_ssl_name_find. Also stores the name of the set of commands in |*name| + * and the number of commands in the set in |*cnt|. + */ +const SSL_CONF_CMD *conf_ssl_get(size_t idx, const char **name, size_t *cnt) +{ + *name = ssl_names[idx].name; + *cnt = ssl_names[idx].cmd_count; + return ssl_names[idx].cmds; +} + +/* + * Search for the named set of commands given in |name|. On success return the + * index for the command set in |*idx|. + * Returns 1 on success or 0 on failure. + */ +int conf_ssl_name_find(const char *name, size_t *idx) +{ + size_t i; + const struct ssl_conf_name_st *nm; + + if (name == NULL) + return 0; + for (i = 0, nm = ssl_names; i < ssl_names_count; i++, nm++) { + if (strcmp(nm->name, name) == 0) { + *idx = i; + return 1; + } + } + return 0; +} + +/* + * Given a command set |cmd|, return details on the command at index |idx| which + * must be less than the number of commands in the set (as returned by + * conf_ssl_get). The name of the command will be returned in |*cmdstr| and the + * argument is returned in |*arg|. + */ +void conf_ssl_get_cmd(const SSL_CONF_CMD *cmd, size_t idx, char **cmdstr, + char **arg) +{ + *cmdstr = cmd[idx].cmd; + *arg = cmd[idx].arg; +} + +void conf_add_ssl_module(void) +{ + CONF_module_add("ssl_conf", ssl_module_init, ssl_module_free); +} diff --git a/crypto/conf/keysets.pl b/crypto/conf/keysets.pl index a6d25788..cfa230ec 100644 --- a/crypto/conf/keysets.pl +++ b/crypto/conf/keysets.pl @@ -6,59 +6,57 @@ # in the file LICENSE in the source distribution or at # https://www.openssl.org/source/license.html -$NUMBER=0x01; -$UPPER=0x02; -$LOWER=0x04; -$UNDER=0x100; -$PUNCTUATION=0x200; -$WS=0x10; -$ESC=0x20; -$QUOTE=0x40; -$DQUOTE=0x400; -$COMMENT=0x80; -$FCOMMENT=0x800; -$EOF=0x08; -$HIGHBIT=0x1000; +use strict; +use warnings; -foreach (0 .. 255) - { - $v=0; - $c=sprintf("%c",$_); - $v|=$NUMBER if ($c =~ /[0-9]/); - $v|=$UPPER if ($c =~ /[A-Z]/); - $v|=$LOWER if ($c =~ /[a-z]/); - $v|=$UNDER if ($c =~ /_/); - $v|=$PUNCTUATION if ($c =~ /[!\.%&\*\+,\/;\?\@\^\~\|-]/); - $v|=$WS if ($c =~ /[ \t\r\n]/); - $v|=$ESC if ($c =~ /\\/); - $v|=$QUOTE if ($c =~ /['`"]/); # for emacs: "`'}/) - $v|=$COMMENT if ($c =~ /\#/); - $v|=$EOF if ($c =~ /\0/); - $v|=$HIGHBIT if ($c =~/[\x80-\xff]/); +my $NUMBER = 0x0001; +my $UPPER = 0x0002; +my $LOWER = 0x0004; +my $UNDER = 0x0100; +my $PUNCTUATION = 0x0200; +my $WS = 0x0010; +my $ESC = 0x0020; +my $QUOTE = 0x0040; +my $DQUOTE = 0x0400; +my $COMMENT = 0x0080; +my $FCOMMENT = 0x0800; +my $EOF = 0x0008; +my @V_def; +my @V_w32; - push(@V_def,$v); - } +my $v; +my $c; +foreach (0 .. 127) { + $c = sprintf("%c", $_); + $v = 0; + $v |= $NUMBER if $c =~ /[0-9]/; + $v |= $UPPER if $c =~ /[A-Z]/; + $v |= $LOWER if $c =~ /[a-z]/; + $v |= $UNDER if $c =~ /_/; + $v |= $PUNCTUATION if $c =~ /[!\.%&\*\+,\/;\?\@\^\~\|-]/; + $v |= $WS if $c =~ /[ \t\r\n]/; + $v |= $ESC if $c =~ /\\/; + $v |= $QUOTE if $c =~ /['`"]/; # for emacs: "`' + $v |= $COMMENT if $c =~ /\#/; + $v |= $EOF if $c =~ /\0/; + push(@V_def, $v); -foreach (0 .. 255) - { - $v=0; - $c=sprintf("%c",$_); - $v|=$NUMBER if ($c =~ /[0-9]/); - $v|=$UPPER if ($c =~ /[A-Z]/); - $v|=$LOWER if ($c =~ /[a-z]/); - $v|=$UNDER if ($c =~ /_/); - $v|=$PUNCTUATION if ($c =~ /[!\.%&\*\+,\/;\?\@\^\~\|-]/); - $v|=$WS if ($c =~ /[ \t\r\n]/); - $v|=$DQUOTE if ($c =~ /["]/); # for emacs: "}/) - $v|=$FCOMMENT if ($c =~ /;/); - $v|=$EOF if ($c =~ /\0/); - $v|=$HIGHBIT if ($c =~/[\x80-\xff]/); - - push(@V_w32,$v); - } + $v = 0; + $v |= $NUMBER if $c =~ /[0-9]/; + $v |= $UPPER if $c =~ /[A-Z]/; + $v |= $LOWER if $c =~ /[a-z]/; + $v |= $UNDER if $c =~ /_/; + $v |= $PUNCTUATION if $c =~ /[!\.%&\*\+,\/;\?\@\^\~\|-]/; + $v |= $WS if $c =~ /[ \t\r\n]/; + $v |= $DQUOTE if $c =~ /["]/; # for emacs: " + $v |= $FCOMMENT if $c =~ /;/; + $v |= $EOF if $c =~ /\0/; + push(@V_w32, $v); +} # Output year depends on the year of the script. my $YEAR = [localtime([stat($0)]->[9])]->[5] + 1900; + print <<"EOF"; /* * WARNING: do not edit! @@ -71,73 +69,48 @@ print <<"EOF"; * https://www.openssl.org/source/license.html */ -#define CONF_NUMBER $NUMBER -#define CONF_UPPER $UPPER -#define CONF_LOWER $LOWER -#define CONF_UNDER $UNDER -#define CONF_PUNCTUATION $PUNCTUATION -#define CONF_WS $WS -#define CONF_ESC $ESC -#define CONF_QUOTE $QUOTE -#define CONF_DQUOTE $DQUOTE -#define CONF_COMMENT $COMMENT -#define CONF_FCOMMENT $FCOMMENT -#define CONF_EOF $EOF -#define CONF_HIGHBIT $HIGHBIT -#define CONF_ALPHA (CONF_UPPER|CONF_LOWER) -#define CONF_ALPHA_NUMERIC (CONF_ALPHA|CONF_NUMBER|CONF_UNDER) -#define CONF_ALPHA_NUMERIC_PUNCT (CONF_ALPHA|CONF_NUMBER|CONF_UNDER| \\ - CONF_PUNCTUATION) +#define CONF_NUMBER $NUMBER +#define CONF_UPPER $UPPER +#define CONF_LOWER $LOWER +#define CONF_UNDER $UNDER +#define CONF_PUNCT $PUNCTUATION +#define CONF_WS $WS +#define CONF_ESC $ESC +#define CONF_QUOTE $QUOTE +#define CONF_DQUOTE $DQUOTE +#define CONF_COMMENT $COMMENT +#define CONF_FCOMMENT $FCOMMENT +#define CONF_EOF $EOF +#define CONF_ALPHA (CONF_UPPER|CONF_LOWER) +#define CONF_ALNUM (CONF_ALPHA|CONF_NUMBER|CONF_UNDER) +#define CONF_ALNUM_PUNCT (CONF_ALPHA|CONF_NUMBER|CONF_UNDER|CONF_PUNCT) -#define KEYTYPES(c) ((const unsigned short *)((c)->meth_data)) -#ifndef CHARSET_EBCDIC -# define IS_COMMENT(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_COMMENT) -# define IS_FCOMMENT(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_FCOMMENT) -# define IS_EOF(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_EOF) -# define IS_ESC(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_ESC) -# define IS_NUMBER(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_NUMBER) -# define IS_WS(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_WS) -# define IS_ALPHA_NUMERIC(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_ALPHA_NUMERIC) -# define IS_ALPHA_NUMERIC_PUNCT(c,a) \\ - (KEYTYPES(c)[(a)&0xff]&CONF_ALPHA_NUMERIC_PUNCT) -# define IS_QUOTE(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_QUOTE) -# define IS_DQUOTE(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_DQUOTE) -# define IS_HIGHBIT(c,a) (KEYTYPES(c)[(a)&0xff]&CONF_HIGHBIT) -#else /* CHARSET_EBCDIC */ - -# define IS_COMMENT(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_COMMENT) -# define IS_FCOMMENT(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_FCOMMENT) -# define IS_EOF(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_EOF) -# define IS_ESC(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_ESC) -# define IS_NUMBER(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_NUMBER) -# define IS_WS(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_WS) -# define IS_ALPHA_NUMERIC(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_ALPHA_NUMERIC) -# define IS_ALPHA_NUMERIC_PUNCT(c,a) \\ - (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_ALPHA_NUMERIC_PUNCT) -# define IS_QUOTE(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_QUOTE) -# define IS_DQUOTE(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_DQUOTE) -# define IS_HIGHBIT(c,a) (KEYTYPES(c)[os_toascii[a & 0xff]]&CONF_HIGHBIT) -#endif /* CHARSET_EBCDIC */ +#define IS_COMMENT(conf,c) is_keytype(conf, c, CONF_COMMENT) +#define IS_FCOMMENT(conf,c) is_keytype(conf, c, CONF_FCOMMENT) +#define IS_EOF(conf,c) is_keytype(conf, c, CONF_EOF) +#define IS_ESC(conf,c) is_keytype(conf, c, CONF_ESC) +#define IS_NUMBER(conf,c) is_keytype(conf, c, CONF_NUMBER) +#define IS_WS(conf,c) is_keytype(conf, c, CONF_WS) +#define IS_ALNUM(conf,c) is_keytype(conf, c, CONF_ALNUM) +#define IS_ALNUM_PUNCT(conf,c) is_keytype(conf, c, CONF_ALNUM_PUNCT) +#define IS_QUOTE(conf,c) is_keytype(conf, c, CONF_QUOTE) +#define IS_DQUOTE(conf,c) is_keytype(conf, c, CONF_DQUOTE) EOF -print "static const unsigned short CONF_type_default[256] = {"; - -for ($i=0; $i<256; $i++) - { - print "\n " if ($i % 8) == 0; - printf " 0x%04X,",$V_def[$i]; - } +my $i; +print "static const unsigned short CONF_type_default[128] = {"; +for ($i = 0; $i < 128; $i++) { + print "\n " if ($i % 8) == 0; + printf " 0x%04X,", $V_def[$i]; +} print "\n};\n\n"; -print "static const unsigned short CONF_type_win32[256] = {"; - -for ($i=0; $i<256; $i++) - { - print "\n " if ($i % 8) == 0; - printf " 0x%04X,",$V_w32[$i]; - } - +print "static const unsigned short CONF_type_win32[128] = {"; +for ($i = 0; $i < 128; $i++) { + print "\n " if ($i % 8) == 0; + printf " 0x%04X,", $V_w32[$i]; +} print "\n};\n"; diff --git a/crypto/cpt_err.c b/crypto/cpt_err.c index d4d2878e..4147b1cb 100644 --- a/crypto/cpt_err.c +++ b/crypto/cpt_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -14,6 +14,7 @@ #ifndef OPENSSL_NO_ERR static const ERR_STRING_DATA CRYPTO_str_functs[] = { + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_CMAC_CTX_NEW, 0), "CMAC_CTX_new"}, {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_CRYPTO_DUP_EX_DATA, 0), "CRYPTO_dup_ex_data"}, {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_CRYPTO_FREE_EX_DATA, 0), @@ -23,16 +24,32 @@ static const ERR_STRING_DATA CRYPTO_str_functs[] = { {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_CRYPTO_MEMDUP, 0), "CRYPTO_memdup"}, {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_CRYPTO_NEW_EX_DATA, 0), "CRYPTO_new_ex_data"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_CRYPTO_OCB128_COPY_CTX, 0), + "CRYPTO_ocb128_copy_ctx"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_CRYPTO_OCB128_INIT, 0), + "CRYPTO_ocb128_init"}, {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_CRYPTO_SET_EX_DATA, 0), "CRYPTO_set_ex_data"}, {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_FIPS_MODE_SET, 0), "FIPS_mode_set"}, {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_GET_AND_LOCK, 0), "get_and_lock"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_OPENSSL_ATEXIT, 0), "OPENSSL_atexit"}, {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_OPENSSL_BUF2HEXSTR, 0), "OPENSSL_buf2hexstr"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_OPENSSL_FOPEN, 0), "openssl_fopen"}, {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_OPENSSL_HEXSTR2BUF, 0), "OPENSSL_hexstr2buf"}, {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_OPENSSL_INIT_CRYPTO, 0), "OPENSSL_init_crypto"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_OPENSSL_LH_NEW, 0), "OPENSSL_LH_new"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_OPENSSL_SK_DEEP_COPY, 0), + "OPENSSL_sk_deep_copy"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_OPENSSL_SK_DUP, 0), "OPENSSL_sk_dup"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_PKEY_HMAC_INIT, 0), "pkey_hmac_init"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_PKEY_POLY1305_INIT, 0), + "pkey_poly1305_init"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_PKEY_SIPHASH_INIT, 0), + "pkey_siphash_init"}, + {ERR_PACK(ERR_LIB_CRYPTO, CRYPTO_F_SK_RESERVE, 0), "sk_reserve"}, {0, NULL} }; diff --git a/crypto/cryptlib.c b/crypto/cryptlib.c index a4d96d86..0470597b 100644 --- a/crypto/cryptlib.c +++ b/crypto/cryptlib.c @@ -120,6 +120,14 @@ void OPENSSL_cpuid_setup(void) # endif # if defined(_WIN32_WINNT) && _WIN32_WINNT>=0x0333 +# ifdef OPENSSL_SYS_WIN_CORE + +int OPENSSL_isservice(void) +{ + /* OneCore API cannot interact with GUI */ + return 1; +} +# else int OPENSSL_isservice(void) { HWINSTA h; @@ -160,7 +168,7 @@ int OPENSSL_isservice(void) len++, len &= ~1; /* paranoia */ name[len / sizeof(WCHAR)] = L'\0'; /* paranoia */ -# if 1 +# if 1 /* * This doesn't cover "interactive" services [working with real * WinSta0's] nor programs started non-interactively by Task Scheduler @@ -168,14 +176,15 @@ int OPENSSL_isservice(void) */ if (wcsstr(name, L"Service-0x")) return 1; -# else +# else /* This covers all non-interactive programs such as services. */ if (!wcsstr(name, L"WinSta0")) return 1; -# endif +# endif else return 0; } +# endif # else int OPENSSL_isservice(void) { @@ -272,6 +281,24 @@ void OPENSSL_showfatal(const char *fmta, ...) va_end(ap); # if defined(_WIN32_WINNT) && _WIN32_WINNT>=0x0333 +# ifdef OPENSSL_SYS_WIN_CORE + /* ONECORE is always NONGUI and NT >= 0x0601 */ + + /* + * TODO: (For non GUI and no std error cases) + * Add event logging feature here. + */ + +# if !defined(NDEBUG) + /* + * We are in a situation where we tried to report a critical + * error and this failed for some reason. As a last resort, + * in debug builds, send output to the debugger or any other + * tool like DebugView which can monitor the output. + */ + OutputDebugString(buf); +# endif +# else /* this -------------v--- guards NT-specific calls */ if (check_winnt() && OPENSSL_isservice() > 0) { HANDLE hEventLog = RegisterEventSource(NULL, _T("OpenSSL")); @@ -281,7 +308,7 @@ void OPENSSL_showfatal(const char *fmta, ...) if (!ReportEvent(hEventLog, EVENTLOG_ERROR_TYPE, 0, 0, NULL, 1, 0, &pmsg, NULL)) { -#if defined(DEBUG) +# if !defined(NDEBUG) /* * We are in a situation where we tried to report a critical * error and this failed for some reason. As a last resort, @@ -289,14 +316,18 @@ void OPENSSL_showfatal(const char *fmta, ...) * tool like DebugView which can monitor the output. */ OutputDebugString(pmsg); -#endif +# endif } (void)DeregisterEventSource(hEventLog); } - } else -# endif + } else { MessageBox(NULL, buf, _T("OpenSSL: FATAL"), MB_OK | MB_ICONERROR); + } +# endif +# else + MessageBox(NULL, buf, _T("OpenSSL: FATAL"), MB_OK | MB_ICONERROR); +# endif } #else void OPENSSL_showfatal(const char *fmta, ...) diff --git a/crypto/ct/ct_log.c b/crypto/ct/ct_log.c index d442322e..4e5c1090 100644 --- a/crypto/ct/ct_log.c +++ b/crypto/ct/ct_log.c @@ -54,7 +54,7 @@ static CTLOG_STORE_LOAD_CTX *ctlog_store_load_ctx_new(); */ static void ctlog_store_load_ctx_free(CTLOG_STORE_LOAD_CTX* ctx); -static CTLOG_STORE_LOAD_CTX *ctlog_store_load_ctx_new() +static CTLOG_STORE_LOAD_CTX *ctlog_store_load_ctx_new(void) { CTLOG_STORE_LOAD_CTX *ctx = OPENSSL_zalloc(sizeof(*ctx)); diff --git a/crypto/des/rand_key.c b/crypto/des/rand_key.c index 09d7e4cf..fe8aefec 100644 --- a/crypto/des/rand_key.c +++ b/crypto/des/rand_key.c @@ -1,5 +1,5 @@ /* - * Copyright 1998-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1998-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -13,7 +13,7 @@ int DES_random_key(DES_cblock *ret) { do { - if (RAND_bytes((unsigned char *)ret, sizeof(DES_cblock)) != 1) + if (RAND_priv_bytes((unsigned char *)ret, sizeof(DES_cblock)) != 1) return 0; } while (DES_is_weak_key(ret)); DES_set_odd_parity(ret); diff --git a/crypto/dh/dh_err.c b/crypto/dh/dh_err.c index bbedab59..7285587b 100644 --- a/crypto/dh/dh_err.c +++ b/crypto/dh/dh_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -41,6 +41,7 @@ static const ERR_STRING_DATA DH_str_functs[] = { {ERR_PACK(ERR_LIB_DH, DH_F_GENERATE_KEY, 0), "generate_key"}, {ERR_PACK(ERR_LIB_DH, DH_F_PKEY_DH_CTRL_STR, 0), "pkey_dh_ctrl_str"}, {ERR_PACK(ERR_LIB_DH, DH_F_PKEY_DH_DERIVE, 0), "pkey_dh_derive"}, + {ERR_PACK(ERR_LIB_DH, DH_F_PKEY_DH_INIT, 0), "pkey_dh_init"}, {ERR_PACK(ERR_LIB_DH, DH_F_PKEY_DH_KEYGEN, 0), "pkey_dh_keygen"}, {0, NULL} }; diff --git a/crypto/dh/dh_lib.c b/crypto/dh/dh_lib.c index a33f3246..a61aa4dc 100644 --- a/crypto/dh/dh_lib.c +++ b/crypto/dh/dh_lib.c @@ -243,6 +243,31 @@ int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key) return 1; } +const BIGNUM *DH_get0_p(const DH *dh) +{ + return dh->p; +} + +const BIGNUM *DH_get0_q(const DH *dh) +{ + return dh->q; +} + +const BIGNUM *DH_get0_g(const DH *dh) +{ + return dh->g; +} + +const BIGNUM *DH_get0_priv_key(const DH *dh) +{ + return dh->priv_key; +} + +const BIGNUM *DH_get0_pub_key(const DH *dh) +{ + return dh->pub_key; +} + void DH_clear_flags(DH *dh, int flags) { dh->flags &= ~flags; diff --git a/crypto/dh/dh_meth.c b/crypto/dh/dh_meth.c index ce6114c1..59c4d7e9 100644 --- a/crypto/dh/dh_meth.c +++ b/crypto/dh/dh_meth.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -75,7 +75,7 @@ int DH_meth_set1_name(DH_METHOD *dhm, const char *name) return 1; } -int DH_meth_get_flags(DH_METHOD *dhm) +int DH_meth_get_flags(const DH_METHOD *dhm) { return dhm->flags; } diff --git a/crypto/dh/dh_pmeth.c b/crypto/dh/dh_pmeth.c index bd8b8cc6..cce2d9e2 100644 --- a/crypto/dh/dh_pmeth.c +++ b/crypto/dh/dh_pmeth.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -50,9 +50,10 @@ static int pkey_dh_init(EVP_PKEY_CTX *ctx) { DH_PKEY_CTX *dctx; - dctx = OPENSSL_zalloc(sizeof(*dctx)); - if (dctx == NULL) + if ((dctx = OPENSSL_zalloc(sizeof(*dctx))) == NULL) { + DHerr(DH_F_PKEY_DH_INIT, ERR_R_MALLOC_FAILURE); return 0; + } dctx->prime_len = 1024; dctx->subprime_len = -1; dctx->generator = 2; diff --git a/crypto/dsa/dsa_err.c b/crypto/dsa/dsa_err.c index 168dadf0..8f97f6f3 100644 --- a/crypto/dsa/dsa_err.c +++ b/crypto/dsa/dsa_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -38,6 +38,7 @@ static const ERR_STRING_DATA DSA_str_functs[] = { {ERR_PACK(ERR_LIB_DSA, DSA_F_OLD_DSA_PRIV_DECODE, 0), "old_dsa_priv_decode"}, {ERR_PACK(ERR_LIB_DSA, DSA_F_PKEY_DSA_CTRL, 0), "pkey_dsa_ctrl"}, + {ERR_PACK(ERR_LIB_DSA, DSA_F_PKEY_DSA_CTRL_STR, 0), "pkey_dsa_ctrl_str"}, {ERR_PACK(ERR_LIB_DSA, DSA_F_PKEY_DSA_KEYGEN, 0), "pkey_dsa_keygen"}, {0, NULL} }; diff --git a/crypto/dsa/dsa_gen.c b/crypto/dsa/dsa_gen.c index e58ad8d7..46f4f01e 100644 --- a/crypto/dsa/dsa_gen.c +++ b/crypto/dsa/dsa_gen.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -64,9 +64,16 @@ int dsa_builtin_paramgen(DSA *ret, size_t bits, size_t qbits, /* invalid q size */ return 0; - if (evpmd == NULL) - /* use SHA1 as default */ - evpmd = EVP_sha1(); + if (evpmd == NULL) { + if (qsize == SHA_DIGEST_LENGTH) + evpmd = EVP_sha1(); + else if (qsize == SHA224_DIGEST_LENGTH) + evpmd = EVP_sha224(); + else + evpmd = EVP_sha256(); + } else { + qsize = EVP_MD_size(evpmd); + } if (bits < 512) bits = 512; diff --git a/crypto/dsa/dsa_meth.c b/crypto/dsa/dsa_meth.c index 51a486b2..ff4fae44 100644 --- a/crypto/dsa/dsa_meth.c +++ b/crypto/dsa/dsa_meth.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -83,7 +83,7 @@ int DSA_meth_set1_name(DSA_METHOD *dsam, const char *name) return 1; } -int DSA_meth_get_flags(DSA_METHOD *dsam) +int DSA_meth_get_flags(const DSA_METHOD *dsam) { return dsam->flags; } diff --git a/crypto/dsa/dsa_pmeth.c b/crypto/dsa/dsa_pmeth.c index 88744a9c..f66317b8 100644 --- a/crypto/dsa/dsa_pmeth.c +++ b/crypto/dsa/dsa_pmeth.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -189,9 +189,15 @@ static int pkey_dsa_ctrl_str(EVP_PKEY_CTX *ctx, NULL); } if (strcmp(type, "dsa_paramgen_md") == 0) { + const EVP_MD *md = EVP_get_digestbyname(value); + + if (md == NULL) { + DSAerr(DSA_F_PKEY_DSA_CTRL_STR, DSA_R_INVALID_DIGEST_TYPE); + return 0; + } return EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DSA, EVP_PKEY_OP_PARAMGEN, EVP_PKEY_CTRL_DSA_PARAMGEN_MD, 0, - (void *)EVP_get_digestbyname(value)); + (void *)md); } return -2; } diff --git a/crypto/dso/dso_dlfcn.c b/crypto/dso/dso_dlfcn.c index 26f98bfc..21bfb3bb 100644 --- a/crypto/dso/dso_dlfcn.c +++ b/crypto/dso/dso_dlfcn.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -26,7 +26,7 @@ # endif # include # define HAVE_DLINFO 1 -# if defined(_AIX) || defined(__CYGWIN__) || \ +# if defined(__CYGWIN__) || \ defined(__SCO_VERSION__) || defined(_SCO_ELF) || \ (defined(__osf__) && !defined(RTLD_NEXT)) || \ (defined(__OpenBSD__) && !defined(RTLD_SELF)) || \ @@ -308,6 +308,76 @@ static int dladdr(void *address, Dl_info *dl) } # endif /* __sgi */ +# ifdef _AIX +/*- + * See IBM's AIX Version 7.2, Technical Reference: + * Base Operating System and Extensions, Volume 1 and 2 + * https://www.ibm.com/support/knowledgecenter/ssw_aix_72/com.ibm.aix.base/technicalreferences.htm + */ +# include +# include +/* ~ 64 * (sizeof(struct ld_info) + _XOPEN_PATH_MAX + _XOPEN_NAME_MAX) */ +# define DLFCN_LDINFO_SIZE 86976 +typedef struct Dl_info { + const char *dli_fname; +} Dl_info; +/* + * This dladdr()-implementation will also find the ptrgl (Pointer Glue) virtual + * address of a function, which is just located in the DATA segment instead of + * the TEXT segment. + */ +static int dladdr(void *ptr, Dl_info *dl) +{ + uintptr_t addr = (uintptr_t)ptr; + unsigned int found = 0; + struct ld_info *ldinfos, *next_ldi, *this_ldi; + + if ((ldinfos = (struct ld_info *)OPENSSL_malloc(DLFCN_LDINFO_SIZE)) == NULL) { + errno = ENOMEM; + dl->dli_fname = NULL; + return 0; + } + + if ((loadquery(L_GETINFO, (void *)ldinfos, DLFCN_LDINFO_SIZE)) < 0) { + /*- + * Error handling is done through errno and dlerror() reading errno: + * ENOMEM (ldinfos buffer is too small), + * EINVAL (invalid flags), + * EFAULT (invalid ldinfos ptr) + */ + OPENSSL_free((void *)ldinfos); + dl->dli_fname = NULL; + return 0; + } + next_ldi = ldinfos; + + do { + this_ldi = next_ldi; + if (((addr >= (uintptr_t)this_ldi->ldinfo_textorg) + && (addr < ((uintptr_t)this_ldi->ldinfo_textorg + + this_ldi->ldinfo_textsize))) + || ((addr >= (uintptr_t)this_ldi->ldinfo_dataorg) + && (addr < ((uintptr_t)this_ldi->ldinfo_dataorg + + this_ldi->ldinfo_datasize)))) { + found = 1; + /* + * Ignoring the possibility of a member name and just returning + * the path name. See docs: sys/ldr.h, loadquery() and + * dlopen()/RTLD_MEMBER. + */ + if ((dl->dli_fname = + OPENSSL_strdup(this_ldi->ldinfo_filename)) == NULL) + errno = ENOMEM; + } else { + next_ldi = + (struct ld_info *)((uintptr_t)this_ldi + this_ldi->ldinfo_next); + } + } while (this_ldi->ldinfo_next && !found); + OPENSSL_free((void *)ldinfos); + return (found && dl->dli_fname != NULL); +} +# endif /* _AIX */ + static int dlfcn_pathbyaddr(void *addr, char *path, int sz) { # ifdef HAVE_DLINFO @@ -326,12 +396,19 @@ static int dlfcn_pathbyaddr(void *addr, char *path, int sz) if (dladdr(addr, &dli)) { len = (int)strlen(dli.dli_fname); - if (sz <= 0) + if (sz <= 0) { +# ifdef _AIX + OPENSSL_free((void *)dli.dli_fname); +# endif return len + 1; + } if (len >= sz) len = sz - 1; memcpy(path, dli.dli_fname, len); path[len++] = 0; +# ifdef _AIX + OPENSSL_free((void *)dli.dli_fname); +# endif return len; } diff --git a/crypto/ec/asm/ecp_nistz256-armv4.pl b/crypto/ec/asm/ecp_nistz256-armv4.pl index c414334d..84dcb6e1 100755 --- a/crypto/ec/asm/ecp_nistz256-armv4.pl +++ b/crypto/ec/asm/ecp_nistz256-armv4.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -1633,7 +1633,7 @@ ___ $code.=<<___; .Ladd_done: add sp,sp,#32*18+16+16 @ +16 means "skip even over saved r0-r3" -#if __ARM_ARCH__>=5 || defined(__thumb__) +#if __ARM_ARCH__>=5 || !defined(__thumb__) ldmia sp!,{r4-r12,pc} #else ldmia sp!,{r4-r12,lr} diff --git a/crypto/ec/build.info b/crypto/ec/build.info index 1e7814f2..db506c52 100644 --- a/crypto/ec/build.info +++ b/crypto/ec/build.info @@ -2,7 +2,7 @@ LIBS=../../libcrypto SOURCE[../../libcrypto]=\ ec_lib.c ecp_smpl.c ecp_mont.c ecp_nist.c ec_cvt.c ec_mult.c \ ec_err.c ec_curve.c ec_check.c ec_print.c ec_asn1.c ec_key.c \ - ec2_smpl.c ec2_mult.c ec_ameth.c ec_pmeth.c eck_prn.c \ + ec2_smpl.c ec_ameth.c ec_pmeth.c eck_prn.c \ ecp_nistp224.c ecp_nistp256.c ecp_nistp521.c ecp_nistputil.c \ ecp_oct.c ec2_oct.c ec_oct.c ec_kmeth.c ecdh_ossl.c ecdh_kdf.c \ ecdsa_ossl.c ecdsa_sign.c ecdsa_vrf.c curve25519.c ecx_meth.c \ diff --git a/crypto/ec/curve448/field.h b/crypto/ec/curve448/field.h index c3bad40e..d96d4c02 100644 --- a/crypto/ec/curve448/field.h +++ b/crypto/ec/curve448/field.h @@ -25,7 +25,7 @@ # if defined(__GNUC__) || defined(__clang__) # define INLINE_UNUSED __inline__ __attribute__((__unused__,__always_inline__)) # define RESTRICT __restrict__ -# define ALIGNED __attribute__((__aligned__(32))) +# define ALIGNED __attribute__((__aligned__(16))) # else # define INLINE_UNUSED ossl_inline # define RESTRICT diff --git a/crypto/ec/ec2_mult.c b/crypto/ec/ec2_mult.c deleted file mode 100644 index 891e8102..00000000 --- a/crypto/ec/ec2_mult.c +++ /dev/null @@ -1,404 +0,0 @@ -/* - * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. - * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved - * - * Licensed under the OpenSSL license (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -#include - -#include "internal/bn_int.h" -#include "ec_lcl.h" - -#ifndef OPENSSL_NO_EC2M - -/*- - * Compute the x-coordinate x/z for the point 2*(x/z) in Montgomery projective - * coordinates. - * Uses algorithm Mdouble in appendix of - * Lopez, J. and Dahab, R. "Fast multiplication on elliptic curves over - * GF(2^m) without precomputation" (CHES '99, LNCS 1717). - * modified to not require precomputation of c=b^{2^{m-1}}. - */ -static int gf2m_Mdouble(const EC_GROUP *group, BIGNUM *x, BIGNUM *z, - BN_CTX *ctx) -{ - BIGNUM *t1; - int ret = 0; - - /* Since Mdouble is static we can guarantee that ctx != NULL. */ - BN_CTX_start(ctx); - t1 = BN_CTX_get(ctx); - if (t1 == NULL) - goto err; - - if (!group->meth->field_sqr(group, x, x, ctx)) - goto err; - if (!group->meth->field_sqr(group, t1, z, ctx)) - goto err; - if (!group->meth->field_mul(group, z, x, t1, ctx)) - goto err; - if (!group->meth->field_sqr(group, x, x, ctx)) - goto err; - if (!group->meth->field_sqr(group, t1, t1, ctx)) - goto err; - if (!group->meth->field_mul(group, t1, group->b, t1, ctx)) - goto err; - if (!BN_GF2m_add(x, x, t1)) - goto err; - - ret = 1; - - err: - BN_CTX_end(ctx); - return ret; -} - -/*- - * Compute the x-coordinate x1/z1 for the point (x1/z1)+(x2/x2) in Montgomery - * projective coordinates. - * Uses algorithm Madd in appendix of - * Lopez, J. and Dahab, R. "Fast multiplication on elliptic curves over - * GF(2^m) without precomputation" (CHES '99, LNCS 1717). - */ -static int gf2m_Madd(const EC_GROUP *group, const BIGNUM *x, BIGNUM *x1, - BIGNUM *z1, const BIGNUM *x2, const BIGNUM *z2, - BN_CTX *ctx) -{ - BIGNUM *t1, *t2; - int ret = 0; - - /* Since Madd is static we can guarantee that ctx != NULL. */ - BN_CTX_start(ctx); - t1 = BN_CTX_get(ctx); - t2 = BN_CTX_get(ctx); - if (t2 == NULL) - goto err; - - if (!BN_copy(t1, x)) - goto err; - if (!group->meth->field_mul(group, x1, x1, z2, ctx)) - goto err; - if (!group->meth->field_mul(group, z1, z1, x2, ctx)) - goto err; - if (!group->meth->field_mul(group, t2, x1, z1, ctx)) - goto err; - if (!BN_GF2m_add(z1, z1, x1)) - goto err; - if (!group->meth->field_sqr(group, z1, z1, ctx)) - goto err; - if (!group->meth->field_mul(group, x1, z1, t1, ctx)) - goto err; - if (!BN_GF2m_add(x1, x1, t2)) - goto err; - - ret = 1; - - err: - BN_CTX_end(ctx); - return ret; -} - -/*- - * Compute the x, y affine coordinates from the point (x1, z1) (x2, z2) - * using Montgomery point multiplication algorithm Mxy() in appendix of - * Lopez, J. and Dahab, R. "Fast multiplication on elliptic curves over - * GF(2^m) without precomputation" (CHES '99, LNCS 1717). - * Returns: - * 0 on error - * 1 if return value should be the point at infinity - * 2 otherwise - */ -static int gf2m_Mxy(const EC_GROUP *group, const BIGNUM *x, const BIGNUM *y, - BIGNUM *x1, BIGNUM *z1, BIGNUM *x2, BIGNUM *z2, - BN_CTX *ctx) -{ - BIGNUM *t3, *t4, *t5; - int ret = 0; - - if (BN_is_zero(z1)) { - BN_zero(x2); - BN_zero(z2); - return 1; - } - - if (BN_is_zero(z2)) { - if (!BN_copy(x2, x)) - return 0; - if (!BN_GF2m_add(z2, x, y)) - return 0; - return 2; - } - - /* Since Mxy is static we can guarantee that ctx != NULL. */ - BN_CTX_start(ctx); - t3 = BN_CTX_get(ctx); - t4 = BN_CTX_get(ctx); - t5 = BN_CTX_get(ctx); - if (t5 == NULL) - goto err; - - if (!BN_one(t5)) - goto err; - - if (!group->meth->field_mul(group, t3, z1, z2, ctx)) - goto err; - - if (!group->meth->field_mul(group, z1, z1, x, ctx)) - goto err; - if (!BN_GF2m_add(z1, z1, x1)) - goto err; - if (!group->meth->field_mul(group, z2, z2, x, ctx)) - goto err; - if (!group->meth->field_mul(group, x1, z2, x1, ctx)) - goto err; - if (!BN_GF2m_add(z2, z2, x2)) - goto err; - - if (!group->meth->field_mul(group, z2, z2, z1, ctx)) - goto err; - if (!group->meth->field_sqr(group, t4, x, ctx)) - goto err; - if (!BN_GF2m_add(t4, t4, y)) - goto err; - if (!group->meth->field_mul(group, t4, t4, t3, ctx)) - goto err; - if (!BN_GF2m_add(t4, t4, z2)) - goto err; - - if (!group->meth->field_mul(group, t3, t3, x, ctx)) - goto err; - if (!group->meth->field_div(group, t3, t5, t3, ctx)) - goto err; - if (!group->meth->field_mul(group, t4, t3, t4, ctx)) - goto err; - if (!group->meth->field_mul(group, x2, x1, t3, ctx)) - goto err; - if (!BN_GF2m_add(z2, x2, x)) - goto err; - - if (!group->meth->field_mul(group, z2, z2, t4, ctx)) - goto err; - if (!BN_GF2m_add(z2, z2, y)) - goto err; - - ret = 2; - - err: - BN_CTX_end(ctx); - return ret; -} - -/*- - * Computes scalar*point and stores the result in r. - * point can not equal r. - * Uses a modified algorithm 2P of - * Lopez, J. and Dahab, R. "Fast multiplication on elliptic curves over - * GF(2^m) without precomputation" (CHES '99, LNCS 1717). - * - * To protect against side-channel attack the function uses constant time swap, - * avoiding conditional branches. - */ -static int ec_GF2m_montgomery_point_multiply(const EC_GROUP *group, - EC_POINT *r, - const BIGNUM *scalar, - const EC_POINT *point, - BN_CTX *ctx) -{ - BIGNUM *x1, *x2, *z1, *z2; - int ret = 0, i, group_top; - BN_ULONG mask, word; - - if (r == point) { - ECerr(EC_F_EC_GF2M_MONTGOMERY_POINT_MULTIPLY, EC_R_INVALID_ARGUMENT); - return 0; - } - - /* if result should be point at infinity */ - if ((scalar == NULL) || BN_is_zero(scalar) || (point == NULL) || - EC_POINT_is_at_infinity(group, point)) { - return EC_POINT_set_to_infinity(group, r); - } - - /* only support affine coordinates */ - if (!point->Z_is_one) - return 0; - - /* - * Since point_multiply is static we can guarantee that ctx != NULL. - */ - BN_CTX_start(ctx); - x1 = BN_CTX_get(ctx); - z1 = BN_CTX_get(ctx); - if (z1 == NULL) - goto err; - - x2 = r->X; - z2 = r->Y; - - group_top = bn_get_top(group->field); - if (bn_wexpand(x1, group_top) == NULL - || bn_wexpand(z1, group_top) == NULL - || bn_wexpand(x2, group_top) == NULL - || bn_wexpand(z2, group_top) == NULL) - goto err; - - if (!BN_GF2m_mod_arr(x1, point->X, group->poly)) - goto err; /* x1 = x */ - if (!BN_one(z1)) - goto err; /* z1 = 1 */ - if (!group->meth->field_sqr(group, z2, x1, ctx)) - goto err; /* z2 = x1^2 = x^2 */ - if (!group->meth->field_sqr(group, x2, z2, ctx)) - goto err; - if (!BN_GF2m_add(x2, x2, group->b)) - goto err; /* x2 = x^4 + b */ - - /* find top most bit and go one past it */ - i = bn_get_top(scalar) - 1; - mask = BN_TBIT; - word = bn_get_words(scalar)[i]; - while (!(word & mask)) - mask >>= 1; - mask >>= 1; - /* if top most bit was at word break, go to next word */ - if (!mask) { - i--; - mask = BN_TBIT; - } - - for (; i >= 0; i--) { - word = bn_get_words(scalar)[i]; - while (mask) { - BN_consttime_swap(word & mask, x1, x2, group_top); - BN_consttime_swap(word & mask, z1, z2, group_top); - if (!gf2m_Madd(group, point->X, x2, z2, x1, z1, ctx)) - goto err; - if (!gf2m_Mdouble(group, x1, z1, ctx)) - goto err; - BN_consttime_swap(word & mask, x1, x2, group_top); - BN_consttime_swap(word & mask, z1, z2, group_top); - mask >>= 1; - } - mask = BN_TBIT; - } - - /* convert out of "projective" coordinates */ - i = gf2m_Mxy(group, point->X, point->Y, x1, z1, x2, z2, ctx); - if (i == 0) - goto err; - else if (i == 1) { - if (!EC_POINT_set_to_infinity(group, r)) - goto err; - } else { - if (!BN_one(r->Z)) - goto err; - r->Z_is_one = 1; - } - - /* GF(2^m) field elements should always have BIGNUM::neg = 0 */ - BN_set_negative(r->X, 0); - BN_set_negative(r->Y, 0); - - ret = 1; - - err: - BN_CTX_end(ctx); - return ret; -} - -/*- - * Computes the sum - * scalar*group->generator + scalars[0]*points[0] + ... + scalars[num-1]*points[num-1] - * gracefully ignoring NULL scalar values. - */ -int ec_GF2m_simple_mul(const EC_GROUP *group, EC_POINT *r, - const BIGNUM *scalar, size_t num, - const EC_POINT *points[], const BIGNUM *scalars[], - BN_CTX *ctx) -{ - BN_CTX *new_ctx = NULL; - int ret = 0; - size_t i; - EC_POINT *p = NULL; - EC_POINT *acc = NULL; - - if (ctx == NULL) { - ctx = new_ctx = BN_CTX_new(); - if (ctx == NULL) - return 0; - } - - /* - * This implementation is more efficient than the wNAF implementation for - * 2 or fewer points. Use the ec_wNAF_mul implementation for 3 or more - * points, or if we can perform a fast multiplication based on - * precomputation. - */ - if ((scalar && (num > 1)) || (num > 2) - || (num == 0 && EC_GROUP_have_precompute_mult(group))) { - ret = ec_wNAF_mul(group, r, scalar, num, points, scalars, ctx); - goto err; - } - - if ((p = EC_POINT_new(group)) == NULL) - goto err; - if ((acc = EC_POINT_new(group)) == NULL) - goto err; - - if (!EC_POINT_set_to_infinity(group, acc)) - goto err; - - if (scalar) { - if (!ec_GF2m_montgomery_point_multiply - (group, p, scalar, group->generator, ctx)) - goto err; - if (BN_is_negative(scalar)) - if (!group->meth->invert(group, p, ctx)) - goto err; - if (!group->meth->add(group, acc, acc, p, ctx)) - goto err; - } - - for (i = 0; i < num; i++) { - if (!ec_GF2m_montgomery_point_multiply - (group, p, scalars[i], points[i], ctx)) - goto err; - if (BN_is_negative(scalars[i])) - if (!group->meth->invert(group, p, ctx)) - goto err; - if (!group->meth->add(group, acc, acc, p, ctx)) - goto err; - } - - if (!EC_POINT_copy(r, acc)) - goto err; - - ret = 1; - - err: - EC_POINT_free(p); - EC_POINT_free(acc); - BN_CTX_free(new_ctx); - return ret; -} - -/* - * Precomputation for point multiplication: fall back to wNAF methods because - * ec_GF2m_simple_mul() uses ec_wNAF_mul() if appropriate - */ - -int ec_GF2m_precompute_mult(EC_GROUP *group, BN_CTX *ctx) -{ - return ec_wNAF_precompute_mult(group, ctx); -} - -int ec_GF2m_have_precompute_mult(const EC_GROUP *group) -{ - return ec_wNAF_have_precompute_mult(group); -} - -#endif diff --git a/crypto/ec/ec2_smpl.c b/crypto/ec/ec2_smpl.c index 6bd5f9d8..b73805a2 100644 --- a/crypto/ec/ec2_smpl.c +++ b/crypto/ec/ec2_smpl.c @@ -47,14 +47,9 @@ const EC_METHOD *EC_GF2m_simple_method(void) ec_GF2m_simple_cmp, ec_GF2m_simple_make_affine, ec_GF2m_simple_points_make_affine, - - /* - * the following three method functions are defined in ec2_mult.c - */ - ec_GF2m_simple_mul, - ec_GF2m_precompute_mult, - ec_GF2m_have_precompute_mult, - + 0 /* mul */, + 0 /* precompute_mul */, + 0 /* have_precompute_mul */, ec_GF2m_simple_field_mul, ec_GF2m_simple_field_sqr, ec_GF2m_simple_field_div, diff --git a/crypto/ec/ec_curve.c b/crypto/ec/ec_curve.c index 75fc5411..7d56d26b 100644 --- a/crypto/ec/ec_curve.c +++ b/crypto/ec/ec_curve.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved * * Licensed under the OpenSSL license (the "License"). You may not use @@ -2751,6 +2751,45 @@ static const struct { } }; +#ifndef OPENSSL_NO_SM2 +static const struct { + EC_CURVE_DATA h; + unsigned char data[0 + 32 * 6]; +} _EC_sm2p256v1 = { + { + NID_X9_62_prime_field, 0, 32, 1 + }, + { + /* no seed */ + + /* p */ + 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + /* a */ + 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, + /* b */ + 0x28, 0xe9, 0xfa, 0x9e, 0x9d, 0x9f, 0x5e, 0x34, 0x4d, 0x5a, 0x9e, 0x4b, + 0xcf, 0x65, 0x09, 0xa7, 0xf3, 0x97, 0x89, 0xf5, 0x15, 0xab, 0x8f, 0x92, + 0xdd, 0xbc, 0xbd, 0x41, 0x4d, 0x94, 0x0e, 0x93, + /* x */ + 0x32, 0xc4, 0xae, 0x2c, 0x1f, 0x19, 0x81, 0x19, 0x5f, 0x99, 0x04, 0x46, + 0x6a, 0x39, 0xc9, 0x94, 0x8f, 0xe3, 0x0b, 0xbf, 0xf2, 0x66, 0x0b, 0xe1, + 0x71, 0x5a, 0x45, 0x89, 0x33, 0x4c, 0x74, 0xc7, + /* y */ + 0xbc, 0x37, 0x36, 0xa2, 0xf4, 0xf6, 0x77, 0x9c, 0x59, 0xbd, 0xce, 0xe3, + 0x6b, 0x69, 0x21, 0x53, 0xd0, 0xa9, 0x87, 0x7c, 0xc6, 0x2a, 0x47, 0x40, + 0x02, 0xdf, 0x32, 0xe5, 0x21, 0x39, 0xf0, 0xa0, + /* order */ + 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0x72, 0x03, 0xdf, 0x6b, 0x21, 0xc6, 0x05, 0x2b, + 0x53, 0xbb, 0xf4, 0x09, 0x39, 0xd5, 0x41, 0x23, + } +}; +#endif /* OPENSSL_NO_SM2 */ + typedef struct _ec_list_element_st { int nid; const EC_CURVE_DATA *data; @@ -2960,6 +2999,10 @@ static const ec_list_element curve_list[] = { "RFC 5639 curve over a 512 bit prime field"}, {NID_brainpoolP512t1, &_EC_brainpoolP512t1.h, 0, "RFC 5639 curve over a 512 bit prime field"}, +#ifndef OPENSSL_NO_SM2 + {NID_sm2, &_EC_sm2p256v1.h, 0, + "SM2 curve over a 256 bit prime field"}, +#endif }; #define curve_list_length OSSL_NELEM(curve_list) diff --git a/crypto/ec/ec_err.c b/crypto/ec/ec_err.c index fe90c01e..807427f9 100644 --- a/crypto/ec/ec_err.c +++ b/crypto/ec/ec_err.c @@ -166,6 +166,7 @@ static const ERR_STRING_DATA EC_str_functs[] = { "EC_GROUP_set_curve_GFp"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_GROUP_SET_GENERATOR, 0), "EC_GROUP_set_generator"}, + {ERR_PACK(ERR_LIB_EC, EC_F_EC_GROUP_SET_SEED, 0), "EC_GROUP_set_seed"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_KEY_CHECK_KEY, 0), "EC_KEY_check_key"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_KEY_COPY, 0), "EC_KEY_copy"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_KEY_GENERATE_KEY, 0), "EC_KEY_generate_key"}, @@ -174,6 +175,7 @@ static const ERR_STRING_DATA EC_str_functs[] = { {ERR_PACK(ERR_LIB_EC, EC_F_EC_KEY_OCT2PRIV, 0), "EC_KEY_oct2priv"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_KEY_PRINT, 0), "EC_KEY_print"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_KEY_PRINT_FP, 0), "EC_KEY_print_fp"}, + {ERR_PACK(ERR_LIB_EC, EC_F_EC_KEY_PRIV2BUF, 0), "EC_KEY_priv2buf"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_KEY_PRIV2OCT, 0), "EC_KEY_priv2oct"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_KEY_SET_PUBLIC_KEY_AFFINE_COORDINATES, 0), "EC_KEY_set_public_key_affine_coordinates"}, @@ -188,6 +190,7 @@ static const ERR_STRING_DATA EC_str_functs[] = { {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINTS_MAKE_AFFINE, 0), "EC_POINTs_make_affine"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINT_ADD, 0), "EC_POINT_add"}, + {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINT_BN2POINT, 0), "EC_POINT_bn2point"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINT_CMP, 0), "EC_POINT_cmp"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINT_COPY, 0), "EC_POINT_copy"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINT_DBL, 0), "EC_POINT_dbl"}, @@ -206,6 +209,7 @@ static const ERR_STRING_DATA EC_str_functs[] = { "EC_POINT_make_affine"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINT_NEW, 0), "EC_POINT_new"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINT_OCT2POINT, 0), "EC_POINT_oct2point"}, + {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINT_POINT2BUF, 0), "EC_POINT_point2buf"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINT_POINT2OCT, 0), "EC_POINT_point2oct"}, {ERR_PACK(ERR_LIB_EC, EC_F_EC_POINT_SET_AFFINE_COORDINATES_GF2M, 0), "EC_POINT_set_affine_coordinates_GF2m"}, @@ -246,10 +250,14 @@ static const ERR_STRING_DATA EC_str_functs[] = { "pkey_ecd_digestsign25519"}, {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_ECD_DIGESTSIGN448, 0), "pkey_ecd_digestsign448"}, + {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_ECD_SIGN25519, 0), "pkey_ecd_sign25519"}, + {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_ECD_SIGN448, 0), "pkey_ecd_sign448"}, {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_ECX_DERIVE, 0), "pkey_ecx_derive"}, {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_EC_CTRL, 0), "pkey_ec_ctrl"}, {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_EC_CTRL_STR, 0), "pkey_ec_ctrl_str"}, {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_EC_DERIVE, 0), "pkey_ec_derive"}, + {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_EC_INIT, 0), "pkey_ec_init"}, + {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_EC_KDF_DERIVE, 0), "pkey_ec_kdf_derive"}, {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_EC_KEYGEN, 0), "pkey_ec_keygen"}, {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_EC_PARAMGEN, 0), "pkey_ec_paramgen"}, {ERR_PACK(ERR_LIB_EC, EC_F_PKEY_EC_SIGN, 0), "pkey_ec_sign"}, diff --git a/crypto/ec/ec_key.c b/crypto/ec/ec_key.c index 38745531..c841236e 100644 --- a/crypto/ec/ec_key.c +++ b/crypto/ec/ec_key.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved * * Licensed under the OpenSSL license (the "License"). You may not use @@ -613,12 +613,14 @@ size_t EC_KEY_priv2buf(const EC_KEY *eckey, unsigned char **pbuf) { size_t len; unsigned char *buf; + len = EC_KEY_priv2oct(eckey, NULL, 0); if (len == 0) return 0; - buf = OPENSSL_malloc(len); - if (buf == NULL) + if ((buf = OPENSSL_malloc(len)) == NULL) { + ECerr(EC_F_EC_KEY_PRIV2BUF, ERR_R_MALLOC_FAILURE); return 0; + } len = EC_KEY_priv2oct(eckey, buf, len); if (len == 0) { OPENSSL_free(buf); diff --git a/crypto/ec/ec_lcl.h b/crypto/ec/ec_lcl.h index 413a9068..36c65c5f 100644 --- a/crypto/ec/ec_lcl.h +++ b/crypto/ec/ec_lcl.h @@ -120,6 +120,23 @@ struct ec_method_st { * EC_POINT_have_precompute_mult (default implementations are used if the * 'mul' pointer is 0): */ + /*- + * mul() calculates the value + * + * r := generator * scalar + * + points[0] * scalars[0] + * + ... + * + points[num-1] * scalars[num-1]. + * + * For a fixed point multiplication (scalar != NULL, num == 0) + * or a variable point multiplication (scalar == NULL, num == 1), + * mul() must use a constant time algorithm: in both cases callers + * should provide an input scalar (either scalar or scalars[0]) + * in the range [0, ec_group_order); for robustness, implementers + * should handle the case when the scalar has not been reduced, but + * may treat it as an unusual input, without any constant-timeness + * guarantee. + */ int (*mul) (const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, size_t num, const EC_POINT *points[], const BIGNUM *scalars[], BN_CTX *); @@ -426,14 +443,6 @@ int ec_GF2m_simple_field_sqr(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, int ec_GF2m_simple_field_div(const EC_GROUP *, BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *); -/* method functions in ec2_mult.c */ -int ec_GF2m_simple_mul(const EC_GROUP *group, EC_POINT *r, - const BIGNUM *scalar, size_t num, - const EC_POINT *points[], const BIGNUM *scalars[], - BN_CTX *); -int ec_GF2m_precompute_mult(EC_GROUP *group, BN_CTX *ctx); -int ec_GF2m_have_precompute_mult(const EC_GROUP *group); - #ifndef OPENSSL_NO_EC_NISTP_64_GCC_128 /* method functions in ecp_nistp224.c */ int ec_GFp_nistp224_group_init(EC_GROUP *group); diff --git a/crypto/ec/ec_lib.c b/crypto/ec/ec_lib.c index d98ffae6..10b0cb77 100644 --- a/crypto/ec/ec_lib.c +++ b/crypto/ec/ec_lib.c @@ -213,9 +213,10 @@ int EC_GROUP_copy(EC_GROUP *dest, const EC_GROUP *src) if (src->seed) { OPENSSL_free(dest->seed); - dest->seed = OPENSSL_malloc(src->seed_len); - if (dest->seed == NULL) + if ((dest->seed = OPENSSL_malloc(src->seed_len)) == NULL) { + ECerr(EC_F_EC_GROUP_COPY, ERR_R_MALLOC_FAILURE); return 0; + } if (!memcpy(dest->seed, src->seed, src->seed_len)) return 0; dest->seed_len = src->seed_len; @@ -393,8 +394,10 @@ size_t EC_GROUP_set_seed(EC_GROUP *group, const unsigned char *p, size_t len) if (!len || !p) return 1; - if ((group->seed = OPENSSL_malloc(len)) == NULL) + if ((group->seed = OPENSSL_malloc(len)) == NULL) { + ECerr(EC_F_EC_GROUP_SET_SEED, ERR_R_MALLOC_FAILURE); return 0; + } memcpy(group->seed, p, len); group->seed_len = len; @@ -557,7 +560,7 @@ EC_POINT *EC_POINT_new(const EC_GROUP *group) ECerr(EC_F_EC_POINT_NEW, ERR_R_PASSED_NULL_PARAMETER); return NULL; } - if (group->meth->point_init == 0) { + if (group->meth->point_init == NULL) { ECerr(EC_F_EC_POINT_NEW, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return NULL; } diff --git a/crypto/ec/ec_mult.c b/crypto/ec/ec_mult.c index ed26b68c..1f343291 100644 --- a/crypto/ec/ec_mult.c +++ b/crypto/ec/ec_mult.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved * * Licensed under the OpenSSL license (the "License"). You may not use @@ -101,6 +101,223 @@ void EC_ec_pre_comp_free(EC_PRE_COMP *pre) OPENSSL_free(pre); } +#define EC_POINT_BN_set_flags(P, flags) do { \ + BN_set_flags((P)->X, (flags)); \ + BN_set_flags((P)->Y, (flags)); \ + BN_set_flags((P)->Z, (flags)); \ +} while(0) + +/*- + * This functions computes (in constant time) a point multiplication over the + * EC group. + * + * At a high level, it is Montgomery ladder with conditional swaps. + * + * It performs either a fixed point multiplication + * (scalar * generator) + * when point is NULL, or a variable point multiplication + * (scalar * point) + * when point is not NULL. + * + * scalar should be in the range [0,n) otherwise all constant time bets are off. + * + * NB: This says nothing about EC_POINT_add and EC_POINT_dbl, + * which of course are not constant time themselves. + * + * The product is stored in r. + * + * Returns 1 on success, 0 otherwise. + */ +static int ec_mul_consttime(const EC_GROUP *group, EC_POINT *r, + const BIGNUM *scalar, const EC_POINT *point, + BN_CTX *ctx) +{ + int i, order_bits, group_top, kbit, pbit, Z_is_one; + EC_POINT *s = NULL; + BIGNUM *k = NULL; + BIGNUM *lambda = NULL; + BN_CTX *new_ctx = NULL; + int ret = 0; + + if (ctx == NULL && (ctx = new_ctx = BN_CTX_secure_new()) == NULL) + return 0; + + BN_CTX_start(ctx); + + order_bits = BN_num_bits(group->order); + + s = EC_POINT_new(group); + if (s == NULL) + goto err; + + if (point == NULL) { + if (!EC_POINT_copy(s, group->generator)) + goto err; + } else { + if (!EC_POINT_copy(s, point)) + goto err; + } + + EC_POINT_BN_set_flags(s, BN_FLG_CONSTTIME); + + lambda = BN_CTX_get(ctx); + k = BN_CTX_get(ctx); + if (k == NULL) + goto err; + + /* + * Group orders are often on a word boundary. + * So when we pad the scalar, some timing diff might + * pop if it needs to be expanded due to carries. + * So expand ahead of time. + */ + group_top = bn_get_top(group->order); + if ((bn_wexpand(k, group_top + 1) == NULL) + || (bn_wexpand(lambda, group_top + 1) == NULL)) + goto err; + + if (!BN_copy(k, scalar)) + goto err; + + BN_set_flags(k, BN_FLG_CONSTTIME); + + if ((BN_num_bits(k) > order_bits) || (BN_is_negative(k))) { + /*- + * this is an unusual input, and we don't guarantee + * constant-timeness + */ + if (!BN_nnmod(k, k, group->order, ctx)) + goto err; + } + + if (!BN_add(lambda, k, group->order)) + goto err; + BN_set_flags(lambda, BN_FLG_CONSTTIME); + if (!BN_add(k, lambda, group->order)) + goto err; + /* + * lambda := scalar + order + * k := scalar + 2*order + */ + kbit = BN_is_bit_set(lambda, order_bits); + BN_consttime_swap(kbit, k, lambda, group_top + 1); + + group_top = bn_get_top(group->field); + if ((bn_wexpand(s->X, group_top) == NULL) + || (bn_wexpand(s->Y, group_top) == NULL) + || (bn_wexpand(s->Z, group_top) == NULL) + || (bn_wexpand(r->X, group_top) == NULL) + || (bn_wexpand(r->Y, group_top) == NULL) + || (bn_wexpand(r->Z, group_top) == NULL)) + goto err; + + /* top bit is a 1, in a fixed pos */ + if (!EC_POINT_copy(r, s)) + goto err; + + EC_POINT_BN_set_flags(r, BN_FLG_CONSTTIME); + + if (!EC_POINT_dbl(group, s, s, ctx)) + goto err; + + pbit = 0; + +#define EC_POINT_CSWAP(c, a, b, w, t) do { \ + BN_consttime_swap(c, (a)->X, (b)->X, w); \ + BN_consttime_swap(c, (a)->Y, (b)->Y, w); \ + BN_consttime_swap(c, (a)->Z, (b)->Z, w); \ + t = ((a)->Z_is_one ^ (b)->Z_is_one) & (c); \ + (a)->Z_is_one ^= (t); \ + (b)->Z_is_one ^= (t); \ +} while(0) + + /*- + * The ladder step, with branches, is + * + * k[i] == 0: S = add(R, S), R = dbl(R) + * k[i] == 1: R = add(S, R), S = dbl(S) + * + * Swapping R, S conditionally on k[i] leaves you with state + * + * k[i] == 0: T, U = R, S + * k[i] == 1: T, U = S, R + * + * Then perform the ECC ops. + * + * U = add(T, U) + * T = dbl(T) + * + * Which leaves you with state + * + * k[i] == 0: U = add(R, S), T = dbl(R) + * k[i] == 1: U = add(S, R), T = dbl(S) + * + * Swapping T, U conditionally on k[i] leaves you with state + * + * k[i] == 0: R, S = T, U + * k[i] == 1: R, S = U, T + * + * Which leaves you with state + * + * k[i] == 0: S = add(R, S), R = dbl(R) + * k[i] == 1: R = add(S, R), S = dbl(S) + * + * So we get the same logic, but instead of a branch it's a + * conditional swap, followed by ECC ops, then another conditional swap. + * + * Optimization: The end of iteration i and start of i-1 looks like + * + * ... + * CSWAP(k[i], R, S) + * ECC + * CSWAP(k[i], R, S) + * (next iteration) + * CSWAP(k[i-1], R, S) + * ECC + * CSWAP(k[i-1], R, S) + * ... + * + * So instead of two contiguous swaps, you can merge the condition + * bits and do a single swap. + * + * k[i] k[i-1] Outcome + * 0 0 No Swap + * 0 1 Swap + * 1 0 Swap + * 1 1 No Swap + * + * This is XOR. pbit tracks the previous bit of k. + */ + + for (i = order_bits - 1; i >= 0; i--) { + kbit = BN_is_bit_set(k, i) ^ pbit; + EC_POINT_CSWAP(kbit, r, s, group_top, Z_is_one); + if (!EC_POINT_add(group, s, r, s, ctx)) + goto err; + if (!EC_POINT_dbl(group, r, r, ctx)) + goto err; + /* + * pbit logic merges this cswap with that of the + * next iteration + */ + pbit ^= kbit; + } + /* one final cswap to move the right value into r */ + EC_POINT_CSWAP(pbit, r, s, group_top, Z_is_one); +#undef EC_POINT_CSWAP + + ret = 1; + + err: + EC_POINT_free(s); + BN_CTX_end(ctx); + BN_CTX_free(new_ctx); + + return ret; +} + +#undef EC_POINT_BN_set_flags + /* * TODO: table should be optimised for the wNAF-based implementation, * sometimes smaller windows will give better performance (thus the @@ -160,6 +377,32 @@ int ec_wNAF_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, return EC_POINT_set_to_infinity(group, r); } + /*- + * Handle the common cases where the scalar is secret, enforcing a constant + * time scalar multiplication algorithm. + */ + if ((scalar != NULL) && (num == 0)) { + /*- + * In this case we want to compute scalar * GeneratorPoint: this + * codepath is reached most prominently by (ephemeral) key generation + * of EC cryptosystems (i.e. ECDSA keygen and sign setup, ECDH + * keygen/first half), where the scalar is always secret. This is why + * we ignore if BN_FLG_CONSTTIME is actually set and we always call the + * constant time version. + */ + return ec_mul_consttime(group, r, scalar, NULL, ctx); + } + if ((scalar == NULL) && (num == 1)) { + /*- + * In this case we want to compute scalar * GenericPoint: this codepath + * is reached most prominently by the second half of ECDH, where the + * secret scalar is multiplied by the peer's public point. To protect + * the secret scalar, we ignore if BN_FLG_CONSTTIME is actually set and + * we always call the constant time version. + */ + return ec_mul_consttime(group, r, scalars[0], points[0], ctx); + } + for (i = 0; i < num; i++) { if (group->meth != points[i]->meth) { ECerr(EC_F_EC_WNAF_MUL, EC_R_INCOMPATIBLE_OBJECTS); diff --git a/crypto/ec/ec_oct.c b/crypto/ec/ec_oct.c index 4a3e54ae..a21906e7 100644 --- a/crypto/ec/ec_oct.c +++ b/crypto/ec/ec_oct.c @@ -1,5 +1,5 @@ /* - * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2011-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved * * Licensed under the OpenSSL license (the "License"). You may not use @@ -144,12 +144,14 @@ size_t EC_POINT_point2buf(const EC_GROUP *group, const EC_POINT *point, { size_t len; unsigned char *buf; + len = EC_POINT_point2oct(group, point, form, NULL, 0, NULL); if (len == 0) return 0; - buf = OPENSSL_malloc(len); - if (buf == NULL) + if ((buf = OPENSSL_malloc(len)) == NULL) { + ECerr(EC_F_EC_POINT_POINT2BUF, ERR_R_MALLOC_FAILURE); return 0; + } len = EC_POINT_point2oct(group, point, form, buf, len, ctx); if (len == 0) { OPENSSL_free(buf); diff --git a/crypto/ec/ec_pmeth.c b/crypto/ec/ec_pmeth.c index 68ff2bbc..5be29237 100644 --- a/crypto/ec/ec_pmeth.c +++ b/crypto/ec/ec_pmeth.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -16,6 +16,10 @@ #include #include "internal/evp_int.h" +#if !defined(OPENSSL_NO_SM2) +# include +#endif + /* EC pkey context structure */ typedef struct { @@ -42,9 +46,10 @@ static int pkey_ec_init(EVP_PKEY_CTX *ctx) { EC_PKEY_CTX *dctx; - dctx = OPENSSL_zalloc(sizeof(*dctx)); - if (dctx == NULL) + if ((dctx = OPENSSL_zalloc(sizeof(*dctx))) == NULL) { + ECerr(EC_F_PKEY_EC_INIT, ERR_R_MALLOC_FAILURE); return 0; + } dctx->cofactor_mode = -1; dctx->kdf_type = EVP_PKEY_ECDH_KDF_NONE; @@ -102,6 +107,7 @@ static int pkey_ec_sign(EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen, unsigned int sltmp; EC_PKEY_CTX *dctx = ctx->data; EC_KEY *ec = ctx->pkey->pkey.ec; + const int ec_nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec)); if (!sig) { *siglen = ECDSA_size(ec); @@ -116,7 +122,15 @@ static int pkey_ec_sign(EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen, else type = NID_sha1; - ret = ECDSA_sign(type, tbs, tbslen, sig, &sltmp, ec); + if (ec_nid == NID_sm2) { +#if defined(OPENSSL_NO_SM2) + ret = -1; +#else + ret = SM2_sign(type, tbs, tbslen, sig, &sltmp, ec); +#endif + } else { + ret = ECDSA_sign(type, tbs, tbslen, sig, &sltmp, ec); + } if (ret <= 0) return ret; @@ -131,20 +145,28 @@ static int pkey_ec_verify(EVP_PKEY_CTX *ctx, int ret, type; EC_PKEY_CTX *dctx = ctx->data; EC_KEY *ec = ctx->pkey->pkey.ec; + const int ec_nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec)); if (dctx->md) type = EVP_MD_type(dctx->md); else type = NID_sha1; - ret = ECDSA_verify(type, tbs, tbslen, sig, siglen, ec); + if (ec_nid == NID_sm2) { +#if defined(OPENSSL_NO_SM2) + ret = -1; +#else + ret = SM2_verify(type, tbs, tbslen, sig, siglen, ec); +#endif + } else { + ret = ECDSA_verify(type, tbs, tbslen, sig, siglen, ec); + } return ret; } #ifndef OPENSSL_NO_EC -static int pkey_ec_derive(EVP_PKEY_CTX *ctx, unsigned char *key, - size_t *keylen) +static int pkey_ec_derive(EVP_PKEY_CTX *ctx, unsigned char *key, size_t *keylen) { int ret; size_t outlen; @@ -180,6 +202,85 @@ static int pkey_ec_derive(EVP_PKEY_CTX *ctx, unsigned char *key, return 1; } +static int pkey_ecies_encrypt(EVP_PKEY_CTX *ctx, + unsigned char *out, size_t *outlen, + const unsigned char *in, size_t inlen) +{ + int ret; + EC_KEY *ec = ctx->pkey->pkey.ec; + const int ec_nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec)); + + if (ec_nid == NID_sm2) { +# if defined(OPENSSL_NO_SM2) + ret = -1; +# else + int md_type; + EC_PKEY_CTX *dctx = ctx->data; + + if (dctx->md) + md_type = EVP_MD_type(dctx->md); + else if (ec_nid == NID_sm2) + md_type = NID_sm3; + else + md_type = NID_sha256; + + if (out == NULL) { + *outlen = SM2_ciphertext_size(ec, EVP_get_digestbynid(md_type), + inlen); + ret = 1; + } + else { + ret = SM2_encrypt(ec, EVP_get_digestbynid(md_type), + in, inlen, out, outlen); + } +# endif + } else { + /* standard ECIES not implemented */ + ret = -1; + } + + return ret; +} + +static int pkey_ecies_decrypt(EVP_PKEY_CTX *ctx, + unsigned char *out, size_t *outlen, + const unsigned char *in, size_t inlen) +{ + int ret; + EC_KEY *ec = ctx->pkey->pkey.ec; + const int ec_nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec)); + + if (ec_nid == NID_sm2) { +# if defined(OPENSSL_NO_SM2) + ret = -1; +# else + int md_type; + EC_PKEY_CTX *dctx = ctx->data; + + if (dctx->md) + md_type = EVP_MD_type(dctx->md); + else if (ec_nid == NID_sm2) + md_type = NID_sm3; + else + md_type = NID_sha256; + + if (out == NULL) { + *outlen = SM2_plaintext_size(ec, EVP_get_digestbynid(md_type), inlen); + ret = 1; + } + else { + ret = SM2_decrypt(ec, EVP_get_digestbynid(md_type), + in, inlen, out, outlen); + } +# endif + } else { + /* standard ECIES not implemented */ + ret = -1; + } + + return ret; +} + static int pkey_ec_kdf_derive(EVP_PKEY_CTX *ctx, unsigned char *key, size_t *keylen) { @@ -197,9 +298,10 @@ static int pkey_ec_kdf_derive(EVP_PKEY_CTX *ctx, return 0; if (!pkey_ec_derive(ctx, NULL, &ktmplen)) return 0; - ktmp = OPENSSL_malloc(ktmplen); - if (ktmp == NULL) + if ((ktmp = OPENSSL_malloc(ktmplen)) == NULL) { + ECerr(EC_F_PKEY_EC_KDF_DERIVE, ERR_R_MALLOC_FAILURE); return 0; + } if (!pkey_ec_derive(ctx, ktmp, &ktmplen)) goto err; /* Do KDF stuff */ @@ -244,8 +346,7 @@ static int pkey_ec_ctrl(EVP_PKEY_CTX *ctx, int type, int p1, void *p2) return dctx->cofactor_mode; else { EC_KEY *ec_key = ctx->pkey->pkey.ec; - return EC_KEY_get_flags(ec_key) & EC_FLAG_COFACTOR_ECDH ? 1 : - 0; + return EC_KEY_get_flags(ec_key) & EC_FLAG_COFACTOR_ECDH ? 1 : 0; } } else if (p1 < -1 || p1 > 1) return -2; @@ -318,7 +419,8 @@ static int pkey_ec_ctrl(EVP_PKEY_CTX *ctx, int type, int p1, void *p2) EVP_MD_type((const EVP_MD *)p2) != NID_sha224 && EVP_MD_type((const EVP_MD *)p2) != NID_sha256 && EVP_MD_type((const EVP_MD *)p2) != NID_sha384 && - EVP_MD_type((const EVP_MD *)p2) != NID_sha512) { + EVP_MD_type((const EVP_MD *)p2) != NID_sha512 && + EVP_MD_type((const EVP_MD *)p2) != NID_sm3) { ECerr(EC_F_PKEY_EC_CTRL, EC_R_INVALID_DIGEST_TYPE); return 0; } @@ -448,9 +550,11 @@ const EVP_PKEY_METHOD ec_pkey_meth = { 0, 0, 0, 0, - 0, 0, + 0, + pkey_ecies_encrypt, - 0, 0, + 0, + pkey_ecies_decrypt, 0, #ifndef OPENSSL_NO_EC diff --git a/crypto/ec/ec_print.c b/crypto/ec/ec_print.c index 1afa2ce8..027a5192 100644 --- a/crypto/ec/ec_print.c +++ b/crypto/ec/ec_print.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -8,6 +8,7 @@ */ #include +#include #include "ec_lcl.h" BIGNUM *EC_POINT_point2bn(const EC_GROUP *group, @@ -39,9 +40,10 @@ EC_POINT *EC_POINT_bn2point(const EC_GROUP *group, if ((buf_len = BN_num_bytes(bn)) == 0) return NULL; - buf = OPENSSL_malloc(buf_len); - if (buf == NULL) + if ((buf = OPENSSL_malloc(buf_len)) == NULL) { + ECerr(EC_F_EC_POINT_BN2POINT, ERR_R_MALLOC_FAILURE); return NULL; + } if (!BN_bn2bin(bn, buf)) { OPENSSL_free(buf); diff --git a/crypto/ec/ecdh_ossl.c b/crypto/ec/ecdh_ossl.c index 3302050c..1c5db221 100644 --- a/crypto/ec/ecdh_ossl.c +++ b/crypto/ec/ecdh_ossl.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved * * Licensed under the OpenSSL license (the "License"). You may not use @@ -40,7 +40,7 @@ int ecdh_simple_compute_key(unsigned char **pout, size_t *poutlen, { BN_CTX *ctx; EC_POINT *tmp = NULL; - BIGNUM *x = NULL, *y = NULL; + BIGNUM *x = NULL; const BIGNUM *priv_key; const EC_GROUP *group; int ret = 0; @@ -51,8 +51,7 @@ int ecdh_simple_compute_key(unsigned char **pout, size_t *poutlen, goto err; BN_CTX_start(ctx); x = BN_CTX_get(ctx); - y = BN_CTX_get(ctx); - if (y == NULL) { + if (x == NULL) { ECerr(EC_F_ECDH_SIMPLE_COMPUTE_KEY, ERR_R_MALLOC_FAILURE); goto err; } @@ -86,14 +85,14 @@ int ecdh_simple_compute_key(unsigned char **pout, size_t *poutlen, if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) == NID_X9_62_prime_field) { - if (!EC_POINT_get_affine_coordinates_GFp(group, tmp, x, y, ctx)) { + if (!EC_POINT_get_affine_coordinates_GFp(group, tmp, x, NULL, ctx)) { ECerr(EC_F_ECDH_SIMPLE_COMPUTE_KEY, EC_R_POINT_ARITHMETIC_FAILURE); goto err; } } #ifndef OPENSSL_NO_EC2M else { - if (!EC_POINT_get_affine_coordinates_GF2m(group, tmp, x, y, ctx)) { + if (!EC_POINT_get_affine_coordinates_GF2m(group, tmp, x, NULL, ctx)) { ECerr(EC_F_ECDH_SIMPLE_COMPUTE_KEY, EC_R_POINT_ARITHMETIC_FAILURE); goto err; } diff --git a/crypto/ec/ecdsa_ossl.c b/crypto/ec/ecdsa_ossl.c index 2c9e5a88..78428517 100644 --- a/crypto/ec/ecdsa_ossl.c +++ b/crypto/ec/ecdsa_ossl.c @@ -105,23 +105,6 @@ static int ecdsa_sign_setup(EC_KEY *eckey, BN_CTX *ctx_in, } while (BN_is_zero(k)); - /* - * We do not want timing information to leak the length of k, so we - * compute G*k using an equivalent scalar of fixed bit-length. - * - * We unconditionally perform both of these additions to prevent a - * small timing information leakage. We then choose the sum that is - * one bit longer than the order. This guarantees the code - * path used in the constant time implementations elsewhere. - * - * TODO: revisit the BN_copy aiming for a memory access agnostic - * conditional copy. - */ - if (!BN_add(r, k, order) - || !BN_add(X, r, order) - || !BN_copy(k, BN_num_bits(r) > order_bits ? r : X)) - goto err; - /* compute r the x-coordinate of generator * k */ if (!EC_POINT_mul(group, tmp_point, k, NULL, NULL, ctx)) { ECerr(EC_F_ECDSA_SIGN_SETUP, ERR_R_EC_LIB); diff --git a/crypto/ec/ecp_nistp224.c b/crypto/ec/ecp_nistp224.c index 4ece15c9..364b7f24 100644 --- a/crypto/ec/ecp_nistp224.c +++ b/crypto/ec/ecp_nistp224.c @@ -45,7 +45,7 @@ NON_EMPTY_TRANSLATION_UNIT typedef __uint128_t uint128_t; /* nonstandard; implemented by gcc on 64-bit * platforms */ # else -# error "Need GCC 4.0 or later to define type uint128_t" +# error "Your compiler doesn't appear to support 128-bit integer types" # endif typedef uint8_t u8; @@ -395,22 +395,6 @@ static void felem_sum(felem out, const felem in) out[3] += in[3]; } -/* Get negative value: out = -in */ -/* Assumes in[i] < 2^57 */ -static void felem_neg(felem out, const felem in) -{ - static const limb two58p2 = (((limb) 1) << 58) + (((limb) 1) << 2); - static const limb two58m2 = (((limb) 1) << 58) - (((limb) 1) << 2); - static const limb two58m42m2 = (((limb) 1) << 58) - - (((limb) 1) << 42) - (((limb) 1) << 2); - - /* Set to 0 mod 2^224-2^96+1 to ensure out > in */ - out[0] = two58p2 - in[0]; - out[1] = two58m42m2 - in[1]; - out[2] = two58m2 - in[2]; - out[3] = two58m2 - in[3]; -} - /* Subtract field elements: out -= in */ /* Assumes in[i] < 2^57 */ static void felem_diff(felem out, const felem in) @@ -679,6 +663,18 @@ static void felem_contract(felem out, const felem in) out[3] = tmp[3]; } +/* + * Get negative value: out = -in + * Requires in[i] < 2^63, + * ensures out[0] < 2^56, out[1] < 2^56, out[2] < 2^56, out[3] <= 2^56 + 2^16 + */ +static void felem_neg(felem out, const felem in) +{ + widefelem tmp = {0}; + felem_diff_128_64(tmp, in); + felem_reduce(out, tmp); +} + /* * Zero-check: returns 1 if input is 0, and 0 otherwise. We know that field * elements are reduced to in < 2^225, so we only need to check three cases: @@ -817,7 +813,7 @@ static void copy_conditional(felem out, const felem in, limb icopy) * Double an elliptic curve point: * (X', Y', Z') = 2 * (X, Y, Z), where * X' = (3 * (X - Z^2) * (X + Z^2))^2 - 8 * X * Y^2 - * Y' = 3 * (X - Z^2) * (X + Z^2) * (4 * X * Y^2 - X') - 8 * Y^2 + * Y' = 3 * (X - Z^2) * (X + Z^2) * (4 * X * Y^2 - X') - 8 * Y^4 * Z' = (Y + Z)^2 - Y^2 - Z^2 = 2 * Y * Z * Outputs can equal corresponding inputs, i.e., x_out == x_in is allowed, * while x_out == y_in is not (maybe this works, but it's not tested). diff --git a/crypto/ec/ecp_nistp256.c b/crypto/ec/ecp_nistp256.c index 5eee25cd..19caa031 100644 --- a/crypto/ec/ecp_nistp256.c +++ b/crypto/ec/ecp_nistp256.c @@ -47,7 +47,7 @@ typedef __uint128_t uint128_t; /* nonstandard; implemented by gcc on 64-bit * platforms */ typedef __int128_t int128_t; # else -# error "Need GCC 4.0 or later to define type uint128_t" +# error "Your compiler doesn't appear to support 128-bit integer types" # endif typedef uint8_t u8; diff --git a/crypto/ec/ecp_nistp521.c b/crypto/ec/ecp_nistp521.c index 97846f85..3f68ae3c 100644 --- a/crypto/ec/ecp_nistp521.c +++ b/crypto/ec/ecp_nistp521.c @@ -45,7 +45,7 @@ NON_EMPTY_TRANSLATION_UNIT typedef __uint128_t uint128_t; /* nonstandard; implemented by gcc on 64-bit * platforms */ # else -# error "Need GCC 4.0 or later to define type uint128_t" +# error "Your compiler doesn't appear to support 128-bit integer types" # endif typedef uint8_t u8; diff --git a/crypto/ec/ecx_meth.c b/crypto/ec/ecx_meth.c index 272dfc6b..ea56df0d 100644 --- a/crypto/ec/ecx_meth.c +++ b/crypto/ec/ecx_meth.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -341,6 +341,19 @@ static int ecx_ctrl(EVP_PKEY *pkey, int op, long arg1, void *arg2) } } +static int ecx_set_priv_key(EVP_PKEY *pkey, const unsigned char *priv, + size_t len) +{ + return ecx_key_op(pkey, pkey->ameth->pkey_id, NULL, priv, len, + KEY_OP_PRIVATE); +} + +static int ecx_set_pub_key(EVP_PKEY *pkey, const unsigned char *pub, size_t len) +{ + return ecx_key_op(pkey, pkey->ameth->pkey_id, NULL, pub, len, + KEY_OP_PUBLIC); +} + const EVP_PKEY_ASN1_METHOD ecx25519_asn1_meth = { EVP_PKEY_X25519, EVP_PKEY_X25519, @@ -368,7 +381,18 @@ const EVP_PKEY_ASN1_METHOD ecx25519_asn1_meth = { ecx_free, ecx_ctrl, NULL, - NULL + NULL, + + NULL, + NULL, + NULL, + + NULL, + NULL, + NULL, + + ecx_set_priv_key, + ecx_set_pub_key, }; const EVP_PKEY_ASN1_METHOD ecx448_asn1_meth = { @@ -398,7 +422,18 @@ const EVP_PKEY_ASN1_METHOD ecx448_asn1_meth = { ecx_free, ecx_ctrl, NULL, - NULL + NULL, + + NULL, + NULL, + NULL, + + NULL, + NULL, + NULL, + + ecx_set_priv_key, + ecx_set_pub_key, }; static int ecd_size25519(const EVP_PKEY *pkey) @@ -504,7 +539,14 @@ const EVP_PKEY_ASN1_METHOD ed25519_asn1_meth = { NULL, ecd_item_verify, ecd_item_sign25519, - ecd_sig_info_set25519 + ecd_sig_info_set25519, + + NULL, + NULL, + NULL, + + ecx_set_priv_key, + ecx_set_pub_key, }; const EVP_PKEY_ASN1_METHOD ed448_asn1_meth = { @@ -537,7 +579,14 @@ const EVP_PKEY_ASN1_METHOD ed448_asn1_meth = { NULL, ecd_item_verify, ecd_item_sign448, - ecd_sig_info_set448 + ecd_sig_info_set448, + + NULL, + NULL, + NULL, + + ecx_set_priv_key, + ecx_set_pub_key, }; static int pkey_ecx_keygen(EVP_PKEY_CTX *ctx, EVP_PKEY *pkey) @@ -626,18 +675,18 @@ const EVP_PKEY_METHOD ecx448_pkey_meth = { 0 }; -static int pkey_ecd_digestsign25519(EVP_MD_CTX *ctx, unsigned char *sig, - size_t *siglen, const unsigned char *tbs, - size_t tbslen) +static int pkey_ecd_sign25519(EVP_PKEY_CTX *ctx, unsigned char *sig, + size_t *siglen, const unsigned char *tbs, + size_t tbslen) { - const ECX_KEY *edkey = EVP_MD_CTX_pkey_ctx(ctx)->pkey->pkey.ecx; + const ECX_KEY *edkey = ctx->pkey->pkey.ecx; if (sig == NULL) { *siglen = ED25519_SIGSIZE; return 1; } if (*siglen < ED25519_SIGSIZE) { - ECerr(EC_F_PKEY_ECD_DIGESTSIGN25519, EC_R_BUFFER_TOO_SMALL); + ECerr(EC_F_PKEY_ECD_SIGN25519, EC_R_BUFFER_TOO_SMALL); return 0; } @@ -647,18 +696,26 @@ static int pkey_ecd_digestsign25519(EVP_MD_CTX *ctx, unsigned char *sig, return 1; } -static int pkey_ecd_digestsign448(EVP_MD_CTX *ctx, unsigned char *sig, - size_t *siglen, const unsigned char *tbs, - size_t tbslen) +static int pkey_ecd_digestsign25519(EVP_MD_CTX *ctx, unsigned char *sig, + size_t *siglen, const unsigned char *tbs, + size_t tbslen) { - const ECX_KEY *edkey = EVP_MD_CTX_pkey_ctx(ctx)->pkey->pkey.ecx; + return pkey_ecd_sign25519(EVP_MD_CTX_pkey_ctx(ctx), sig, siglen, tbs, + tbslen); +} + +static int pkey_ecd_sign448(EVP_PKEY_CTX *ctx, unsigned char *sig, + size_t *siglen, const unsigned char *tbs, + size_t tbslen) +{ + const ECX_KEY *edkey = ctx->pkey->pkey.ecx; if (sig == NULL) { *siglen = ED448_SIGSIZE; return 1; } if (*siglen < ED448_SIGSIZE) { - ECerr(EC_F_PKEY_ECD_DIGESTSIGN448, EC_R_BUFFER_TOO_SMALL); + ECerr(EC_F_PKEY_ECD_SIGN448, EC_R_BUFFER_TOO_SMALL); return 0; } @@ -669,11 +726,18 @@ static int pkey_ecd_digestsign448(EVP_MD_CTX *ctx, unsigned char *sig, return 1; } -static int pkey_ecd_digestverify25519(EVP_MD_CTX *ctx, const unsigned char *sig, - size_t siglen, const unsigned char *tbs, - size_t tbslen) +static int pkey_ecd_digestsign448(EVP_MD_CTX *ctx, unsigned char *sig, + size_t *siglen, const unsigned char *tbs, + size_t tbslen) { - const ECX_KEY *edkey = EVP_MD_CTX_pkey_ctx(ctx)->pkey->pkey.ecx; + return pkey_ecd_sign448(EVP_MD_CTX_pkey_ctx(ctx), sig, siglen, tbs, tbslen); +} + +static int pkey_ecd_verify25519(EVP_PKEY_CTX *ctx, const unsigned char *sig, + size_t siglen, const unsigned char *tbs, + size_t tbslen) +{ + const ECX_KEY *edkey = ctx->pkey->pkey.ecx; if (siglen != ED25519_SIGSIZE) return 0; @@ -681,11 +745,19 @@ static int pkey_ecd_digestverify25519(EVP_MD_CTX *ctx, const unsigned char *sig, return ED25519_verify(tbs, tbslen, sig, edkey->pubkey); } -static int pkey_ecd_digestverify448(EVP_MD_CTX *ctx, const unsigned char *sig, - size_t siglen, const unsigned char *tbs, - size_t tbslen) +static int pkey_ecd_digestverify25519(EVP_MD_CTX *ctx, const unsigned char *sig, + size_t siglen, const unsigned char *tbs, + size_t tbslen) { - const ECX_KEY *edkey = EVP_MD_CTX_pkey_ctx(ctx)->pkey->pkey.ecx; + return pkey_ecd_verify25519(EVP_MD_CTX_pkey_ctx(ctx), sig, siglen, tbs, + tbslen); +} + +static int pkey_ecd_verify448(EVP_PKEY_CTX *ctx, const unsigned char *sig, + size_t siglen, const unsigned char *tbs, + size_t tbslen) +{ + const ECX_KEY *edkey = ctx->pkey->pkey.ecx; if (siglen != ED448_SIGSIZE) return 0; @@ -693,12 +765,20 @@ static int pkey_ecd_digestverify448(EVP_MD_CTX *ctx, const unsigned char *sig, return ED448_verify(tbs, tbslen, sig, edkey->pubkey, NULL, 0); } +static int pkey_ecd_digestverify448(EVP_MD_CTX *ctx, const unsigned char *sig, + size_t siglen, const unsigned char *tbs, + size_t tbslen) +{ + return pkey_ecd_verify448(EVP_MD_CTX_pkey_ctx(ctx), sig, siglen, tbs, + tbslen); +} + static int pkey_ecd_ctrl(EVP_PKEY_CTX *ctx, int type, int p1, void *p2) { switch (type) { case EVP_PKEY_CTRL_MD: /* Only NULL allowed as digest */ - if (p2 == NULL) + if (p2 == NULL || (const EVP_MD *)p2 == EVP_md_null()) return 1; ECerr(EC_F_PKEY_ECD_CTRL, EC_R_INVALID_DIGEST_TYPE); return 0; @@ -713,7 +793,11 @@ const EVP_PKEY_METHOD ed25519_pkey_meth = { EVP_PKEY_ED25519, EVP_PKEY_FLAG_SIGCTX_CUSTOM, 0, 0, 0, 0, 0, 0, pkey_ecx_keygen, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, + pkey_ecd_sign25519, + 0, + pkey_ecd_verify25519, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, pkey_ecd_ctrl, 0, pkey_ecd_digestsign25519, @@ -724,7 +808,11 @@ const EVP_PKEY_METHOD ed448_pkey_meth = { EVP_PKEY_ED448, EVP_PKEY_FLAG_SIGCTX_CUSTOM, 0, 0, 0, 0, 0, 0, pkey_ecx_keygen, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, + pkey_ecd_sign448, + 0, + pkey_ecd_verify448, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, pkey_ecd_ctrl, 0, pkey_ecd_digestsign448, diff --git a/crypto/engine/eng_err.c b/crypto/engine/eng_err.c index 5f24e998..bd1aefa1 100644 --- a/crypto/engine/eng_err.c +++ b/crypto/engine/eng_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -66,11 +66,14 @@ static const ERR_STRING_DATA ENGINE_str_functs[] = { {ERR_PACK(ERR_LIB_ENGINE, ENGINE_F_ENGINE_UNLOCKED_FINISH, 0), "engine_unlocked_finish"}, {ERR_PACK(ERR_LIB_ENGINE, ENGINE_F_ENGINE_UP_REF, 0), "ENGINE_up_ref"}, + {ERR_PACK(ERR_LIB_ENGINE, ENGINE_F_INT_CLEANUP_ITEM, 0), + "int_cleanup_item"}, {ERR_PACK(ERR_LIB_ENGINE, ENGINE_F_INT_CTRL_HELPER, 0), "int_ctrl_helper"}, {ERR_PACK(ERR_LIB_ENGINE, ENGINE_F_INT_ENGINE_CONFIGURE, 0), "int_engine_configure"}, {ERR_PACK(ERR_LIB_ENGINE, ENGINE_F_INT_ENGINE_MODULE_INIT, 0), "int_engine_module_init"}, + {ERR_PACK(ERR_LIB_ENGINE, ENGINE_F_OSSL_HMAC_INIT, 0), "ossl_hmac_init"}, {0, NULL} }; diff --git a/crypto/engine/eng_lib.c b/crypto/engine/eng_lib.c index 48d86b95..90283197 100644 --- a/crypto/engine/eng_lib.c +++ b/crypto/engine/eng_lib.c @@ -20,7 +20,8 @@ CRYPTO_ONCE engine_lock_init = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE(do_engine_lock_init) { - OPENSSL_init_crypto(0, NULL); + if (!OPENSSL_init_crypto(0, NULL)) + return 0; global_engine_lock = CRYPTO_THREAD_lock_new(); return global_engine_lock != NULL; } @@ -126,9 +127,12 @@ static int int_cleanup_check(int create) static ENGINE_CLEANUP_ITEM *int_cleanup_item(ENGINE_CLEANUP_CB *cb) { - ENGINE_CLEANUP_ITEM *item = OPENSSL_malloc(sizeof(*item)); - if (item == NULL) + ENGINE_CLEANUP_ITEM *item; + + if ((item = OPENSSL_malloc(sizeof(*item))) == NULL) { + ENGINEerr(ENGINE_F_INT_CLEANUP_ITEM, ERR_R_MALLOC_FAILURE); return NULL; + } item->cb = cb; return item; } @@ -136,6 +140,7 @@ static ENGINE_CLEANUP_ITEM *int_cleanup_item(ENGINE_CLEANUP_CB *cb) void engine_cleanup_add_first(ENGINE_CLEANUP_CB *cb) { ENGINE_CLEANUP_ITEM *item; + if (!int_cleanup_check(1)) return; item = int_cleanup_item(cb); @@ -149,8 +154,10 @@ void engine_cleanup_add_last(ENGINE_CLEANUP_CB *cb) if (!int_cleanup_check(1)) return; item = int_cleanup_item(cb); - if (item) - sk_ENGINE_CLEANUP_ITEM_push(cleanup_stack, item); + if (item != NULL) { + if (sk_ENGINE_CLEANUP_ITEM_push(cleanup_stack, item) <= 0) + OPENSSL_free(item); + } } /* The API function that performs all cleanup */ diff --git a/crypto/engine/eng_list.c b/crypto/engine/eng_list.c index bfd91e23..4bc7ea17 100644 --- a/crypto/engine/eng_list.c +++ b/crypto/engine/eng_list.c @@ -317,7 +317,8 @@ ENGINE *ENGINE_by_id(const char *id) * Prevent infinite recursion if we're looking for the dynamic engine. */ if (strcmp(id, "dynamic")) { - if ((load_dir = getenv("OPENSSL_ENGINES")) == NULL) + if (OPENSSL_issetugid() + || (load_dir = getenv("OPENSSL_ENGINES")) == NULL) load_dir = ENGINESDIR; iterator = ENGINE_by_id("dynamic"); if (!iterator || !ENGINE_ctrl_cmd_string(iterator, "ID", id, 0) || diff --git a/crypto/engine/eng_openssl.c b/crypto/engine/eng_openssl.c index 02885f46..f7ad7a5f 100644 --- a/crypto/engine/eng_openssl.c +++ b/crypto/engine/eng_openssl.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved * * Licensed under the OpenSSL license (the "License"). You may not use @@ -431,9 +431,10 @@ static int ossl_hmac_init(EVP_PKEY_CTX *ctx) { OSSL_HMAC_PKEY_CTX *hctx; - hctx = OPENSSL_zalloc(sizeof(*hctx)); - if (hctx == NULL) + if ((hctx = OPENSSL_zalloc(sizeof(*hctx))) == NULL) { + ENGINEerr(ENGINE_F_OSSL_HMAC_INIT, ERR_R_MALLOC_FAILURE); return 0; + } hctx->ktmp.type = V_ASN1_OCTET_STRING; hctx->ctx = HMAC_CTX_new(); if (hctx->ctx == NULL) { diff --git a/crypto/engine/eng_table.c b/crypto/engine/eng_table.c index ffdecb99..ac4b02fc 100644 --- a/crypto/engine/eng_table.c +++ b/crypto/engine/eng_table.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/crypto/engine/tb_cipher.c b/crypto/engine/tb_cipher.c index ac491411..45d754fe 100644 --- a/crypto/engine/tb_cipher.c +++ b/crypto/engine/tb_cipher.c @@ -34,7 +34,7 @@ int ENGINE_register_ciphers(ENGINE *e) return 1; } -void ENGINE_register_all_ciphers() +void ENGINE_register_all_ciphers(void) { ENGINE *e; diff --git a/crypto/engine/tb_dh.c b/crypto/engine/tb_dh.c index c6440df2..427a3f02 100644 --- a/crypto/engine/tb_dh.c +++ b/crypto/engine/tb_dh.c @@ -31,7 +31,7 @@ int ENGINE_register_DH(ENGINE *e) return 1; } -void ENGINE_register_all_DH() +void ENGINE_register_all_DH(void) { ENGINE *e; diff --git a/crypto/engine/tb_digest.c b/crypto/engine/tb_digest.c index 194b9c7e..019adcf9 100644 --- a/crypto/engine/tb_digest.c +++ b/crypto/engine/tb_digest.c @@ -34,7 +34,7 @@ int ENGINE_register_digests(ENGINE *e) return 1; } -void ENGINE_register_all_digests() +void ENGINE_register_all_digests(void) { ENGINE *e; diff --git a/crypto/engine/tb_dsa.c b/crypto/engine/tb_dsa.c index fdb80cd7..90d5476f 100644 --- a/crypto/engine/tb_dsa.c +++ b/crypto/engine/tb_dsa.c @@ -31,7 +31,7 @@ int ENGINE_register_DSA(ENGINE *e) return 1; } -void ENGINE_register_all_DSA() +void ENGINE_register_all_DSA(void) { ENGINE *e; diff --git a/crypto/engine/tb_eckey.c b/crypto/engine/tb_eckey.c index 75750b29..713fdc5f 100644 --- a/crypto/engine/tb_eckey.c +++ b/crypto/engine/tb_eckey.c @@ -31,7 +31,7 @@ int ENGINE_register_EC(ENGINE *e) return 1; } -void ENGINE_register_all_EC() +void ENGINE_register_all_EC(void) { ENGINE *e; diff --git a/crypto/engine/tb_pkmeth.c b/crypto/engine/tb_pkmeth.c index 2e82d855..e6c7ad27 100644 --- a/crypto/engine/tb_pkmeth.c +++ b/crypto/engine/tb_pkmeth.c @@ -35,7 +35,7 @@ int ENGINE_register_pkey_meths(ENGINE *e) return 1; } -void ENGINE_register_all_pkey_meths() +void ENGINE_register_all_pkey_meths(void) { ENGINE *e; diff --git a/crypto/engine/tb_rand.c b/crypto/engine/tb_rand.c index 225e7c81..759d2f7d 100644 --- a/crypto/engine/tb_rand.c +++ b/crypto/engine/tb_rand.c @@ -31,7 +31,7 @@ int ENGINE_register_RAND(ENGINE *e) return 1; } -void ENGINE_register_all_RAND() +void ENGINE_register_all_RAND(void) { ENGINE *e; diff --git a/crypto/engine/tb_rsa.c b/crypto/engine/tb_rsa.c index e2cc680a..5c523d63 100644 --- a/crypto/engine/tb_rsa.c +++ b/crypto/engine/tb_rsa.c @@ -31,7 +31,7 @@ int ENGINE_register_RSA(ENGINE *e) return 1; } -void ENGINE_register_all_RSA() +void ENGINE_register_all_RSA(void) { ENGINE *e; diff --git a/crypto/err/err.c b/crypto/err/err.c index 68afa93a..03cbd738 100644 --- a/crypto/err/err.c +++ b/crypto/err/err.c @@ -60,6 +60,7 @@ static ERR_STRING_DATA ERR_str_libraries[] = { {ERR_PACK(ERR_LIB_ASYNC, 0, 0), "ASYNC routines"}, {ERR_PACK(ERR_LIB_KDF, 0, 0), "KDF routines"}, {ERR_PACK(ERR_LIB_OSSL_STORE, 0, 0), "STORE routines"}, + {ERR_PACK(ERR_LIB_SM2, 0, 0), "SM2 routines"}, {0, NULL}, }; @@ -232,24 +233,23 @@ static void build_SYS_str_reasons(void) } #endif -#define err_clear_data(p,i) \ +#define err_clear_data(p, i) \ do { \ - if ((p)->err_data_flags[i] & ERR_TXT_MALLOCED) \ - { \ + if ((p)->err_data_flags[i] & ERR_TXT_MALLOCED) {\ OPENSSL_free((p)->err_data[i]); \ - (p)->err_data[i]=NULL; \ - } \ - (p)->err_data_flags[i]=0; \ - } while(0) + (p)->err_data[i] = NULL; \ + } \ + (p)->err_data_flags[i] = 0; \ + } while (0) -#define err_clear(p,i) \ +#define err_clear(p, i) \ do { \ - (p)->err_flags[i]=0; \ - (p)->err_buffer[i]=0; \ - err_clear_data(p,i); \ - (p)->err_file[i]=NULL; \ - (p)->err_line[i]= -1; \ - } while(0) + err_clear_data(p, i); \ + (p)->err_flags[i] = 0; \ + (p)->err_buffer[i] = 0; \ + (p)->err_file[i] = NULL; \ + (p)->err_line[i] = -1; \ + } while (0) static void ERR_STATE_free(ERR_STATE *s) { @@ -257,7 +257,6 @@ static void ERR_STATE_free(ERR_STATE *s) if (s == NULL) return; - for (i = 0; i < ERR_NUM_ERRORS; i++) { err_clear_data(s, i); } @@ -266,11 +265,19 @@ static void ERR_STATE_free(ERR_STATE *s) DEFINE_RUN_ONCE_STATIC(do_err_strings_init) { - OPENSSL_init_crypto(0, NULL); + if (!OPENSSL_init_crypto(0, NULL)) + return 0; err_string_lock = CRYPTO_THREAD_lock_new(); + if (err_string_lock == NULL) + return 0; int_error_hash = lh_ERR_STRING_DATA_new(err_string_data_hash, err_string_data_cmp); - return err_string_lock != NULL && int_error_hash != NULL; + if (int_error_hash == NULL) { + CRYPTO_THREAD_lock_free(err_string_lock); + err_string_lock = NULL; + return 0; + } + return 1; } void err_cleanup(void) @@ -663,29 +670,31 @@ DEFINE_RUN_ONCE_STATIC(err_do_init) ERR_STATE *ERR_get_state(void) { - ERR_STATE *state = NULL; + ERR_STATE *state; + + if (!OPENSSL_init_crypto(OPENSSL_INIT_BASE_ONLY, NULL)) + return NULL; if (!RUN_ONCE(&err_init, err_do_init)) return NULL; - /* - * If base OPENSSL_init_crypto() hasn't been called yet, be sure to call - * it now to avoid state to be doubly allocated and thereby leak memory. - * Needed on any platform that doesn't define OPENSSL_USE_NODELETE. - */ - if (!OPENSSL_init_crypto(0, NULL)) + state = CRYPTO_THREAD_get_local(&err_thread_local); + if (state == (ERR_STATE*)-1) return NULL; - state = CRYPTO_THREAD_get_local(&err_thread_local); - if (state == NULL) { - state = OPENSSL_zalloc(sizeof(*state)); - if (state == NULL) + if (!CRYPTO_THREAD_set_local(&err_thread_local, (ERR_STATE*)-1)) return NULL; + if ((state = OPENSSL_zalloc(sizeof(*state))) == NULL) { + CRYPTO_THREAD_set_local(&err_thread_local, NULL); + return NULL; + } + if (!ossl_init_thread_start(OPENSSL_INIT_THREAD_ERR_STATE) - || !CRYPTO_THREAD_set_local(&err_thread_local, state)) { + || !CRYPTO_THREAD_set_local(&err_thread_local, state)) { ERR_STATE_free(state); + CRYPTO_THREAD_set_local(&err_thread_local, NULL); return NULL; } @@ -696,13 +705,41 @@ ERR_STATE *ERR_get_state(void) return state; } +/* + * err_shelve_state returns the current thread local error state + * and freezes the error module until err_unshelve_state is called. + */ +int err_shelve_state(void **state) +{ + if (!OPENSSL_init_crypto(OPENSSL_INIT_BASE_ONLY, NULL)) + return 0; + + if (!RUN_ONCE(&err_init, err_do_init)) + return 0; + + *state = CRYPTO_THREAD_get_local(&err_thread_local); + if (!CRYPTO_THREAD_set_local(&err_thread_local, (ERR_STATE*)-1)) + return 0; + + return 1; +} + +/* + * err_unshelve_state restores the error state that was returned + * by err_shelve_state previously. + */ +void err_unshelve_state(void* state) +{ + if (state != (void*)-1) + CRYPTO_THREAD_set_local(&err_thread_local, (ERR_STATE*)state); +} + int ERR_get_next_error_library(void) { int ret; - if (!RUN_ONCE(&err_string_init, do_err_strings_init)) { + if (!RUN_ONCE(&err_string_init, do_err_strings_init)) return 0; - } CRYPTO_THREAD_write_lock(err_string_lock); ret = int_err_library_number++; @@ -740,9 +777,10 @@ void ERR_add_error_vdata(int num, va_list args) char *str, *p, *a; s = 80; - str = OPENSSL_malloc(s + 1); - if (str == NULL) + if ((str = OPENSSL_malloc(s + 1)) == NULL) { + /* ERRerr(ERR_F_ERR_ADD_ERROR_VDATA, ERR_R_MALLOC_FAILURE); */ return; + } str[0] = '\0'; n = 0; diff --git a/crypto/err/openssl.ec b/crypto/err/openssl.ec index be84c7cb..f45e2307 100644 --- a/crypto/err/openssl.ec +++ b/crypto/err/openssl.ec @@ -32,6 +32,7 @@ L CMS include/openssl/cms.h crypto/cms/cms_err.c L CT include/openssl/ct.h crypto/ct/ct_err.c L ASYNC include/openssl/async.h crypto/async/async_err.c L KDF include/openssl/kdf.h crypto/kdf/kdf_err.c +L SM2 include/openssl/sm2.h crypto/sm2/sm2_err.c L OSSL_STORE include/openssl/store.h crypto/store/store_err.c # additional header files to be scanned for function names diff --git a/crypto/err/openssl.txt b/crypto/err/openssl.txt index d867007b..209bd0d3 100644 --- a/crypto/err/openssl.txt +++ b/crypto/err/openssl.txt @@ -10,6 +10,7 @@ ASN1_F_A2D_ASN1_OBJECT:100:a2d_ASN1_OBJECT ASN1_F_A2I_ASN1_INTEGER:102:a2i_ASN1_INTEGER ASN1_F_A2I_ASN1_STRING:103:a2i_ASN1_STRING ASN1_F_APPEND_EXP:176:append_exp +ASN1_F_ASN1_BIO_INIT:113:asn1_bio_init ASN1_F_ASN1_BIT_STRING_SET_BIT:183:ASN1_BIT_STRING_set_bit ASN1_F_ASN1_CB:177:asn1_cb ASN1_F_ASN1_CHECK_TLEN:104:asn1_check_tlen @@ -21,6 +22,7 @@ ASN1_F_ASN1_DIGEST:184:ASN1_digest ASN1_F_ASN1_DO_ADB:110:asn1_do_adb ASN1_F_ASN1_DO_LOCK:233:asn1_do_lock ASN1_F_ASN1_DUP:111:ASN1_dup +ASN1_F_ASN1_ENC_SAVE:115:asn1_enc_save ASN1_F_ASN1_EX_C2I:204:asn1_ex_c2i ASN1_F_ASN1_FIND_END:190:asn1_find_end ASN1_F_ASN1_GENERALIZEDTIME_ADJ:216:ASN1_GENERALIZEDTIME_adj @@ -34,6 +36,7 @@ ASN1_F_ASN1_ITEM_D2I_FP:206:ASN1_item_d2i_fp ASN1_F_ASN1_ITEM_DUP:191:ASN1_item_dup ASN1_F_ASN1_ITEM_EMBED_D2I:120:asn1_item_embed_d2i ASN1_F_ASN1_ITEM_EMBED_NEW:121:asn1_item_embed_new +ASN1_F_ASN1_ITEM_FLAGS_I2D:118:asn1_item_flags_i2d ASN1_F_ASN1_ITEM_I2D_BIO:192:ASN1_item_i2d_bio ASN1_F_ASN1_ITEM_I2D_FP:193:ASN1_item_i2d_fp ASN1_F_ASN1_ITEM_PACK:198:ASN1_item_pack @@ -45,6 +48,7 @@ ASN1_F_ASN1_MBSTRING_NCOPY:122:ASN1_mbstring_ncopy ASN1_F_ASN1_OBJECT_NEW:123:ASN1_OBJECT_new ASN1_F_ASN1_OUTPUT_DATA:214:asn1_output_data ASN1_F_ASN1_PCTX_NEW:205:ASN1_PCTX_new +ASN1_F_ASN1_PRIMITIVE_NEW:119:asn1_primitive_new ASN1_F_ASN1_SCTX_NEW:221:ASN1_SCTX_new ASN1_F_ASN1_SIGN:128:ASN1_sign ASN1_F_ASN1_STR2TYPE:179:asn1_str2type @@ -78,7 +82,11 @@ ASN1_F_D2I_ASN1_UINTEGER:150:d2i_ASN1_UINTEGER ASN1_F_D2I_AUTOPRIVATEKEY:207:d2i_AutoPrivateKey ASN1_F_D2I_PRIVATEKEY:154:d2i_PrivateKey ASN1_F_D2I_PUBLICKEY:155:d2i_PublicKey +ASN1_F_DO_BUF:142:do_buf +ASN1_F_DO_CREATE:124:do_create +ASN1_F_DO_DUMP:125:do_dump ASN1_F_DO_TCREATE:222:do_tcreate +ASN1_F_I2A_ASN1_OBJECT:126:i2a_ASN1_OBJECT ASN1_F_I2D_ASN1_BIO_STREAM:211:i2d_ASN1_bio_stream ASN1_F_I2D_DSA_PUBKEY:161:i2d_DSA_PUBKEY ASN1_F_I2D_EC_PUBKEY:181:i2d_EC_PUBKEY @@ -86,6 +94,8 @@ ASN1_F_I2D_PRIVATEKEY:163:i2d_PrivateKey ASN1_F_I2D_PUBLICKEY:164:i2d_PublicKey ASN1_F_I2D_RSA_PUBKEY:165:i2d_RSA_PUBKEY ASN1_F_LONG_C2I:166:long_c2i +ASN1_F_NDEF_PREFIX:127:ndef_prefix +ASN1_F_NDEF_SUFFIX:136:ndef_suffix ASN1_F_OID_MODULE_INIT:174:oid_module_init ASN1_F_PARSE_TAGGING:182:parse_tagging ASN1_F_PKCS5_PBE2_SET_IV:167:PKCS5_pbe2_set_iv @@ -96,9 +106,12 @@ ASN1_F_PKCS5_PBKDF2_SET:219:PKCS5_pbkdf2_set ASN1_F_PKCS5_SCRYPT_SET:232:pkcs5_scrypt_set ASN1_F_SMIME_READ_ASN1:212:SMIME_read_ASN1 ASN1_F_SMIME_TEXT:213:SMIME_text +ASN1_F_STABLE_GET:138:stable_get ASN1_F_STBL_MODULE_INIT:223:stbl_module_init ASN1_F_UINT32_C2I:105:uint32_c2i +ASN1_F_UINT32_NEW:139:uint32_new ASN1_F_UINT64_C2I:112:uint64_c2i +ASN1_F_UINT64_NEW:141:uint64_new ASN1_F_X509_CRL_ADD0_REVOKED:169:X509_CRL_add0_revoked ASN1_F_X509_INFO_NEW:170:X509_INFO_new ASN1_F_X509_NAME_ENCODE:203:x509_name_encode @@ -111,14 +124,18 @@ ASYNC_F_ASYNC_JOB_NEW:102:async_job_new ASYNC_F_ASYNC_PAUSE_JOB:103:ASYNC_pause_job ASYNC_F_ASYNC_START_FUNC:104:async_start_func ASYNC_F_ASYNC_START_JOB:105:ASYNC_start_job +ASYNC_F_ASYNC_WAIT_CTX_SET_WAIT_FD:106:ASYNC_WAIT_CTX_set_wait_fd BIO_F_ACPT_STATE:100:acpt_state +BIO_F_ADDRINFO_WRAP:148:addrinfo_wrap BIO_F_ADDR_STRINGS:134:addr_strings BIO_F_BIO_ACCEPT:101:BIO_accept BIO_F_BIO_ACCEPT_EX:137:BIO_accept_ex +BIO_F_BIO_ACCEPT_NEW:152:BIO_ACCEPT_new BIO_F_BIO_ADDR_NEW:144:BIO_ADDR_new BIO_F_BIO_BIND:147:BIO_bind BIO_F_BIO_CALLBACK_CTRL:131:BIO_callback_ctrl BIO_F_BIO_CONNECT:138:BIO_connect +BIO_F_BIO_CONNECT_NEW:153:BIO_CONNECT_new BIO_F_BIO_CTRL:103:BIO_ctrl BIO_F_BIO_GETS:104:BIO_gets BIO_F_BIO_GET_HOST_IP:106:BIO_get_host_ip @@ -152,12 +169,17 @@ BIO_F_BIO_WRITE_INTERN:128:bio_write_intern BIO_F_BUFFER_CTRL:114:buffer_ctrl BIO_F_CONN_CTRL:127:conn_ctrl BIO_F_CONN_STATE:115:conn_state +BIO_F_DGRAM_SCTP_NEW:149:dgram_sctp_new BIO_F_DGRAM_SCTP_READ:132:dgram_sctp_read BIO_F_DGRAM_SCTP_WRITE:133:dgram_sctp_write +BIO_F_DOAPR_OUTCH:150:doapr_outch BIO_F_FILE_CTRL:116:file_ctrl BIO_F_FILE_READ:130:file_read BIO_F_LINEBUFFER_CTRL:129:linebuffer_ctrl +BIO_F_LINEBUFFER_NEW:151:linebuffer_new BIO_F_MEM_WRITE:117:mem_write +BIO_F_NBIOF_NEW:154:nbiof_new +BIO_F_SLG_WRITE:155:slg_write BIO_F_SSL_NEW:118:SSL_new BN_F_BNRAND:127:bnrand BN_F_BNRAND_RANGE:138:bnrand_range @@ -197,12 +219,16 @@ BN_F_BN_MOD_INVERSE:110:BN_mod_inverse BN_F_BN_MOD_INVERSE_NO_BRANCH:139:BN_mod_inverse_no_branch BN_F_BN_MOD_LSHIFT_QUICK:119:BN_mod_lshift_quick BN_F_BN_MOD_SQRT:121:BN_mod_sqrt +BN_F_BN_MONT_CTX_NEW:149:BN_MONT_CTX_new BN_F_BN_MPI2BN:112:BN_mpi2bn BN_F_BN_NEW:113:BN_new +BN_F_BN_POOL_GET:147:BN_POOL_get BN_F_BN_RAND:114:BN_rand BN_F_BN_RAND_RANGE:122:BN_rand_range +BN_F_BN_RECP_CTX_NEW:150:BN_RECP_CTX_new BN_F_BN_RSHIFT:146:BN_rshift BN_F_BN_SET_WORDS:144:bn_set_words +BN_F_BN_STACK_PUSH:148:BN_STACK_push BN_F_BN_USUB:115:BN_usub BUF_F_BUF_MEM_GROW:100:BUF_MEM_grow BUF_F_BUF_MEM_GROW_CLEAN:105:BUF_MEM_grow_clean @@ -233,6 +259,7 @@ CMS_F_CMS_DIGESTEDDATA_DO_FINAL:117:cms_DigestedData_do_final CMS_F_CMS_DIGEST_VERIFY:118:CMS_digest_verify CMS_F_CMS_ENCODE_RECEIPT:161:cms_encode_Receipt CMS_F_CMS_ENCRYPT:119:CMS_encrypt +CMS_F_CMS_ENCRYPTEDCONTENT_INIT:179:cms_EncryptedContent_init CMS_F_CMS_ENCRYPTEDCONTENT_INIT_BIO:120:cms_EncryptedContent_init_bio CMS_F_CMS_ENCRYPTEDDATA_DECRYPT:121:CMS_EncryptedData_decrypt CMS_F_CMS_ENCRYPTEDDATA_ENCRYPT:122:CMS_EncryptedData_encrypt @@ -289,10 +316,12 @@ CMS_F_CMS_SIGN_RECEIPT:163:CMS_sign_receipt CMS_F_CMS_STREAM:155:CMS_stream CMS_F_CMS_UNCOMPRESS:156:CMS_uncompress CMS_F_CMS_VERIFY:157:CMS_verify +CMS_F_KEK_UNWRAP_KEY:180:kek_unwrap_key COMP_F_BIO_ZLIB_FLUSH:99:bio_zlib_flush COMP_F_BIO_ZLIB_NEW:100:bio_zlib_new COMP_F_BIO_ZLIB_READ:101:bio_zlib_read COMP_F_BIO_ZLIB_WRITE:102:bio_zlib_write +COMP_F_COMP_CTX_NEW:103:COMP_CTX_new CONF_F_CONF_DUMP_FP:104:CONF_dump_fp CONF_F_CONF_LOAD:100:CONF_load CONF_F_CONF_LOAD_FP:103:CONF_load_fp @@ -300,6 +329,7 @@ CONF_F_CONF_PARSE_LIST:119:CONF_parse_list CONF_F_DEF_LOAD:120:def_load CONF_F_DEF_LOAD_BIO:121:def_load_bio CONF_F_GET_NEXT_FILE:107:get_next_file +CONF_F_MODULE_ADD:122:module_add CONF_F_MODULE_INIT:115:module_init CONF_F_MODULE_LOAD_DSO:117:module_load_dso CONF_F_MODULE_RUN:118:module_run @@ -313,18 +343,31 @@ CONF_F_NCONF_LOAD_BIO:110:NCONF_load_bio CONF_F_NCONF_LOAD_FP:114:NCONF_load_fp CONF_F_NCONF_NEW:111:NCONF_new CONF_F_PROCESS_INCLUDE:116:process_include +CONF_F_SSL_MODULE_INIT:123:ssl_module_init CONF_F_STR_COPY:101:str_copy +CRYPTO_F_CMAC_CTX_NEW:120:CMAC_CTX_new CRYPTO_F_CRYPTO_DUP_EX_DATA:110:CRYPTO_dup_ex_data CRYPTO_F_CRYPTO_FREE_EX_DATA:111:CRYPTO_free_ex_data CRYPTO_F_CRYPTO_GET_EX_NEW_INDEX:100:CRYPTO_get_ex_new_index CRYPTO_F_CRYPTO_MEMDUP:115:CRYPTO_memdup CRYPTO_F_CRYPTO_NEW_EX_DATA:112:CRYPTO_new_ex_data +CRYPTO_F_CRYPTO_OCB128_COPY_CTX:121:CRYPTO_ocb128_copy_ctx +CRYPTO_F_CRYPTO_OCB128_INIT:122:CRYPTO_ocb128_init CRYPTO_F_CRYPTO_SET_EX_DATA:102:CRYPTO_set_ex_data CRYPTO_F_FIPS_MODE_SET:109:FIPS_mode_set CRYPTO_F_GET_AND_LOCK:113:get_and_lock +CRYPTO_F_OPENSSL_ATEXIT:114:OPENSSL_atexit CRYPTO_F_OPENSSL_BUF2HEXSTR:117:OPENSSL_buf2hexstr +CRYPTO_F_OPENSSL_FOPEN:119:openssl_fopen CRYPTO_F_OPENSSL_HEXSTR2BUF:118:OPENSSL_hexstr2buf CRYPTO_F_OPENSSL_INIT_CRYPTO:116:OPENSSL_init_crypto +CRYPTO_F_OPENSSL_LH_NEW:126:OPENSSL_LH_new +CRYPTO_F_OPENSSL_SK_DEEP_COPY:127:OPENSSL_sk_deep_copy +CRYPTO_F_OPENSSL_SK_DUP:128:OPENSSL_sk_dup +CRYPTO_F_PKEY_HMAC_INIT:123:pkey_hmac_init +CRYPTO_F_PKEY_POLY1305_INIT:124:pkey_poly1305_init +CRYPTO_F_PKEY_SIPHASH_INIT:125:pkey_siphash_init +CRYPTO_F_SK_RESERVE:129:sk_reserve CT_F_CTLOG_NEW:117:CTLOG_new CT_F_CTLOG_NEW_FROM_BASE64:118:CTLOG_new_from_base64 CT_F_CTLOG_NEW_FROM_CONF:119:ctlog_new_from_conf @@ -376,6 +419,7 @@ DH_F_DO_DH_PRINT:100:do_dh_print DH_F_GENERATE_KEY:103:generate_key DH_F_PKEY_DH_CTRL_STR:120:pkey_dh_ctrl_str DH_F_PKEY_DH_DERIVE:112:pkey_dh_derive +DH_F_PKEY_DH_INIT:125:pkey_dh_init DH_F_PKEY_DH_KEYGEN:113:pkey_dh_keygen DSA_F_DSAPARAMS_PRINT:100:DSAparams_print DSA_F_DSAPARAMS_PRINT_FP:101:DSAparams_print_fp @@ -398,6 +442,7 @@ DSA_F_DSA_SIGN_SETUP:107:DSA_sign_setup DSA_F_DSA_SIG_NEW:102:DSA_SIG_new DSA_F_OLD_DSA_PRIV_DECODE:122:old_dsa_priv_decode DSA_F_PKEY_DSA_CTRL:120:pkey_dsa_ctrl +DSA_F_PKEY_DSA_CTRL_STR:104:pkey_dsa_ctrl_str DSA_F_PKEY_DSA_KEYGEN:121:pkey_dsa_keygen DSO_F_DLFCN_BIND_FUNC:100:dlfcn_bind_func DSO_F_DLFCN_LOAD:102:dlfcn_load @@ -536,6 +581,7 @@ EC_F_EC_GROUP_NEW_FROM_ECPKPARAMETERS:264:EC_GROUP_new_from_ecpkparameters EC_F_EC_GROUP_SET_CURVE_GF2M:176:EC_GROUP_set_curve_GF2m EC_F_EC_GROUP_SET_CURVE_GFP:109:EC_GROUP_set_curve_GFp EC_F_EC_GROUP_SET_GENERATOR:111:EC_GROUP_set_generator +EC_F_EC_GROUP_SET_SEED:286:EC_GROUP_set_seed EC_F_EC_KEY_CHECK_KEY:177:EC_KEY_check_key EC_F_EC_KEY_COPY:178:EC_KEY_copy EC_F_EC_KEY_GENERATE_KEY:179:EC_KEY_generate_key @@ -544,6 +590,7 @@ EC_F_EC_KEY_NEW_METHOD:245:EC_KEY_new_method EC_F_EC_KEY_OCT2PRIV:255:EC_KEY_oct2priv EC_F_EC_KEY_PRINT:180:EC_KEY_print EC_F_EC_KEY_PRINT_FP:181:EC_KEY_print_fp +EC_F_EC_KEY_PRIV2BUF:279:EC_KEY_priv2buf EC_F_EC_KEY_PRIV2OCT:256:EC_KEY_priv2oct EC_F_EC_KEY_SET_PUBLIC_KEY_AFFINE_COORDINATES:229:\ EC_KEY_set_public_key_affine_coordinates @@ -554,6 +601,7 @@ EC_F_EC_PKEY_CHECK:273:ec_pkey_check EC_F_EC_PKEY_PARAM_CHECK:274:ec_pkey_param_check EC_F_EC_POINTS_MAKE_AFFINE:136:EC_POINTs_make_affine EC_F_EC_POINT_ADD:112:EC_POINT_add +EC_F_EC_POINT_BN2POINT:280:EC_POINT_bn2point EC_F_EC_POINT_CMP:113:EC_POINT_cmp EC_F_EC_POINT_COPY:114:EC_POINT_copy EC_F_EC_POINT_DBL:115:EC_POINT_dbl @@ -568,6 +616,7 @@ EC_F_EC_POINT_IS_ON_CURVE:119:EC_POINT_is_on_curve EC_F_EC_POINT_MAKE_AFFINE:120:EC_POINT_make_affine EC_F_EC_POINT_NEW:121:EC_POINT_new EC_F_EC_POINT_OCT2POINT:122:EC_POINT_oct2point +EC_F_EC_POINT_POINT2BUF:281:EC_POINT_point2buf EC_F_EC_POINT_POINT2OCT:123:EC_POINT_point2oct EC_F_EC_POINT_SET_AFFINE_COORDINATES_GF2M:185:\ EC_POINT_set_affine_coordinates_GF2m @@ -598,10 +647,14 @@ EC_F_PKEY_ECD_CTRL:271:pkey_ecd_ctrl EC_F_PKEY_ECD_DIGESTSIGN:272:pkey_ecd_digestsign EC_F_PKEY_ECD_DIGESTSIGN25519:276:pkey_ecd_digestsign25519 EC_F_PKEY_ECD_DIGESTSIGN448:277:pkey_ecd_digestsign448 +EC_F_PKEY_ECD_SIGN25519:284:pkey_ecd_sign25519 +EC_F_PKEY_ECD_SIGN448:285:pkey_ecd_sign448 EC_F_PKEY_ECX_DERIVE:269:pkey_ecx_derive EC_F_PKEY_EC_CTRL:197:pkey_ec_ctrl EC_F_PKEY_EC_CTRL_STR:198:pkey_ec_ctrl_str EC_F_PKEY_EC_DERIVE:217:pkey_ec_derive +EC_F_PKEY_EC_INIT:282:pkey_ec_init +EC_F_PKEY_EC_KDF_DERIVE:283:pkey_ec_kdf_derive EC_F_PKEY_EC_KEYGEN:199:pkey_ec_keygen EC_F_PKEY_EC_PARAMGEN:219:pkey_ec_paramgen EC_F_PKEY_EC_SIGN:218:pkey_ec_sign @@ -641,23 +694,29 @@ ENGINE_F_ENGINE_SET_NAME:130:ENGINE_set_name ENGINE_F_ENGINE_TABLE_REGISTER:184:engine_table_register ENGINE_F_ENGINE_UNLOCKED_FINISH:191:engine_unlocked_finish ENGINE_F_ENGINE_UP_REF:190:ENGINE_up_ref +ENGINE_F_INT_CLEANUP_ITEM:199:int_cleanup_item ENGINE_F_INT_CTRL_HELPER:172:int_ctrl_helper ENGINE_F_INT_ENGINE_CONFIGURE:188:int_engine_configure ENGINE_F_INT_ENGINE_MODULE_INIT:187:int_engine_module_init +ENGINE_F_OSSL_HMAC_INIT:200:ossl_hmac_init EVP_F_AESNI_INIT_KEY:165:aesni_init_key +EVP_F_AES_GCM_CTRL:196:aes_gcm_ctrl EVP_F_AES_INIT_KEY:133:aes_init_key EVP_F_AES_OCB_CIPHER:169:aes_ocb_cipher EVP_F_AES_T4_INIT_KEY:178:aes_t4_init_key EVP_F_AES_WRAP_CIPHER:170:aes_wrap_cipher EVP_F_ALG_MODULE_INIT:177:alg_module_init EVP_F_ARIA_CCM_INIT_KEY:175:aria_ccm_init_key +EVP_F_ARIA_GCM_CTRL:197:aria_gcm_ctrl EVP_F_ARIA_GCM_INIT_KEY:176:aria_gcm_init_key EVP_F_ARIA_INIT_KEY:185:aria_init_key +EVP_F_B64_NEW:198:b64_new EVP_F_CAMELLIA_INIT_KEY:159:camellia_init_key EVP_F_CHACHA20_POLY1305_CTRL:182:chacha20_poly1305_ctrl EVP_F_CMLL_T4_INIT_KEY:179:cmll_t4_init_key EVP_F_DES_EDE3_WRAP_CIPHER:171:des_ede3_wrap_cipher EVP_F_DO_SIGVER_INIT:161:do_sigver_init +EVP_F_ENC_NEW:199:enc_new EVP_F_EVP_CIPHERINIT_EX:123:EVP_CipherInit_ex EVP_F_EVP_CIPHER_CTX_COPY:163:EVP_CIPHER_CTX_copy EVP_F_EVP_CIPHER_CTX_CTRL:124:EVP_CIPHER_CTX_ctrl @@ -702,7 +761,12 @@ EVP_F_EVP_PKEY_GET0_RSA:121:EVP_PKEY_get0_RSA EVP_F_EVP_PKEY_GET0_SIPHASH:172:EVP_PKEY_get0_siphash EVP_F_EVP_PKEY_KEYGEN:146:EVP_PKEY_keygen EVP_F_EVP_PKEY_KEYGEN_INIT:147:EVP_PKEY_keygen_init +EVP_F_EVP_PKEY_METH_ADD0:194:EVP_PKEY_meth_add0 +EVP_F_EVP_PKEY_METH_NEW:195:EVP_PKEY_meth_new EVP_F_EVP_PKEY_NEW:106:EVP_PKEY_new +EVP_F_EVP_PKEY_NEW_CMAC_KEY:193:EVP_PKEY_new_CMAC_key +EVP_F_EVP_PKEY_NEW_RAW_PRIVATE_KEY:191:EVP_PKEY_new_raw_private_key +EVP_F_EVP_PKEY_NEW_RAW_PUBLIC_KEY:192:EVP_PKEY_new_raw_public_key EVP_F_EVP_PKEY_PARAMGEN:148:EVP_PKEY_paramgen EVP_F_EVP_PKEY_PARAMGEN_INIT:149:EVP_PKEY_paramgen_init EVP_F_EVP_PKEY_PARAM_CHECK:189:EVP_PKEY_param_check @@ -717,6 +781,7 @@ EVP_F_EVP_PKEY_VERIFY_RECOVER_INIT:145:EVP_PKEY_verify_recover_init EVP_F_EVP_SIGNFINAL:107:EVP_SignFinal EVP_F_EVP_VERIFYFINAL:108:EVP_VerifyFinal EVP_F_INT_CTX_NEW:157:int_ctx_new +EVP_F_OK_NEW:200:ok_new EVP_F_PKCS5_PBE_KEYIVGEN:117:PKCS5_PBE_keyivgen EVP_F_PKCS5_V2_PBE_KEYIVGEN:118:PKCS5_v2_PBE_keyivgen EVP_F_PKCS5_V2_PBKDF2_KEYIVGEN:164:PKCS5_v2_PBKDF2_keyivgen @@ -724,21 +789,29 @@ EVP_F_PKCS5_V2_SCRYPT_KEYIVGEN:180:PKCS5_v2_scrypt_keyivgen EVP_F_PKEY_SET_TYPE:158:pkey_set_type EVP_F_RC2_MAGIC_TO_METH:109:rc2_magic_to_meth EVP_F_RC5_CTRL:125:rc5_ctrl +EVP_F_S390X_AES_GCM_CTRL:201:s390x_aes_gcm_ctrl EVP_F_UPDATE:173:update KDF_F_PKEY_HKDF_CTRL_STR:103:pkey_hkdf_ctrl_str KDF_F_PKEY_HKDF_DERIVE:102:pkey_hkdf_derive +KDF_F_PKEY_HKDF_INIT:108:pkey_hkdf_init KDF_F_PKEY_SCRYPT_CTRL_STR:104:pkey_scrypt_ctrl_str KDF_F_PKEY_SCRYPT_CTRL_UINT64:105:pkey_scrypt_ctrl_uint64 KDF_F_PKEY_SCRYPT_DERIVE:109:pkey_scrypt_derive +KDF_F_PKEY_SCRYPT_INIT:106:pkey_scrypt_init +KDF_F_PKEY_SCRYPT_SET_MEMBUF:107:pkey_scrypt_set_membuf KDF_F_PKEY_TLS1_PRF_CTRL_STR:100:pkey_tls1_prf_ctrl_str KDF_F_PKEY_TLS1_PRF_DERIVE:101:pkey_tls1_prf_derive +KDF_F_PKEY_TLS1_PRF_INIT:110:pkey_tls1_prf_init +KDF_F_TLS1_PRF_ALG:111:tls1_prf_alg OBJ_F_OBJ_ADD_OBJECT:105:OBJ_add_object +OBJ_F_OBJ_ADD_SIGID:107:OBJ_add_sigid OBJ_F_OBJ_CREATE:100:OBJ_create OBJ_F_OBJ_DUP:101:OBJ_dup OBJ_F_OBJ_NAME_NEW_INDEX:106:OBJ_NAME_new_index OBJ_F_OBJ_NID2LN:102:OBJ_nid2ln OBJ_F_OBJ_NID2OBJ:103:OBJ_nid2obj OBJ_F_OBJ_NID2SN:104:OBJ_nid2sn +OBJ_F_OBJ_TXT2OBJ:108:OBJ_txt2obj OCSP_F_D2I_OCSP_NONCE:102:d2i_ocsp_nonce OCSP_F_OCSP_BASIC_ADD1_STATUS:103:OCSP_basic_add1_status OCSP_F_OCSP_BASIC_SIGN:104:OCSP_basic_sign @@ -809,6 +882,7 @@ PEM_F_D2I_PKCS8PRIVATEKEY_FP:121:d2i_PKCS8PrivateKey_fp PEM_F_DO_B2I:132:do_b2i PEM_F_DO_B2I_BIO:133:do_b2i_bio PEM_F_DO_BLOB_HEADER:134:do_blob_header +PEM_F_DO_I2B:146:do_i2b PEM_F_DO_PK8PKEY:126:do_pk8pkey PEM_F_DO_PK8PKEY_FP:125:do_pk8pkey_fp PEM_F_DO_PVK_BODY:135:do_PVK_body @@ -840,6 +914,10 @@ PEM_F_PEM_WRITE_PRIVATEKEY:139:PEM_write_PrivateKey PEM_F_PEM_X509_INFO_READ:115:PEM_X509_INFO_read PEM_F_PEM_X509_INFO_READ_BIO:116:PEM_X509_INFO_read_bio PEM_F_PEM_X509_INFO_WRITE_BIO:117:PEM_X509_INFO_write_bio +PKCS12_F_OPENSSL_ASC2UNI:121:OPENSSL_asc2uni +PKCS12_F_OPENSSL_UNI2ASC:124:OPENSSL_uni2asc +PKCS12_F_OPENSSL_UNI2UTF8:127:OPENSSL_uni2utf8 +PKCS12_F_OPENSSL_UTF82UNI:129:OPENSSL_utf82uni PKCS12_F_PKCS12_CREATE:105:PKCS12_create PKCS12_F_PKCS12_GEN_MAC:107:PKCS12_gen_mac PKCS12_F_PKCS12_INIT:109:PKCS12_init @@ -908,18 +986,21 @@ RAND_F_RAND_BYTES:100:RAND_bytes RAND_F_RAND_DRBG_ENABLE_LOCKING:119:rand_drbg_enable_locking RAND_F_RAND_DRBG_GENERATE:107:RAND_DRBG_generate RAND_F_RAND_DRBG_GET_ENTROPY:120:rand_drbg_get_entropy +RAND_F_RAND_DRBG_GET_NONCE:123:rand_drbg_get_nonce RAND_F_RAND_DRBG_INSTANTIATE:108:RAND_DRBG_instantiate RAND_F_RAND_DRBG_NEW:109:RAND_DRBG_new RAND_F_RAND_DRBG_RESEED:110:RAND_DRBG_reseed RAND_F_RAND_DRBG_RESTART:102:rand_drbg_restart RAND_F_RAND_DRBG_SET:104:RAND_DRBG_set +RAND_F_RAND_DRBG_SET_DEFAULTS:121:RAND_DRBG_set_defaults RAND_F_RAND_DRBG_UNINSTANTIATE:118:RAND_DRBG_uninstantiate RAND_F_RAND_LOAD_FILE:111:RAND_load_file -RAND_F_RAND_POOL_ADD:103:RAND_POOL_add -RAND_F_RAND_POOL_ADD_BEGIN:113:RAND_POOL_add_begin -RAND_F_RAND_POOL_ADD_END:114:RAND_POOL_add_end -RAND_F_RAND_POOL_BYTES_NEEDED:115:RAND_POOL_bytes_needed -RAND_F_RAND_POOL_NEW:116:RAND_POOL_new +RAND_F_RAND_POOL_ACQUIRE_ENTROPY:122:rand_pool_acquire_entropy +RAND_F_RAND_POOL_ADD:103:rand_pool_add +RAND_F_RAND_POOL_ADD_BEGIN:113:rand_pool_add_begin +RAND_F_RAND_POOL_ADD_END:114:rand_pool_add_end +RAND_F_RAND_POOL_BYTES_NEEDED:115:rand_pool_bytes_needed +RAND_F_RAND_POOL_NEW:116:rand_pool_new RAND_F_RAND_WRITE_FILE:112:RAND_write_file RSA_F_CHECK_PADDING_MD:140:check_padding_md RSA_F_ENCODE_PKCS1:146:encode_pkcs1 @@ -942,6 +1023,7 @@ RSA_F_RSA_METH_DUP:161:RSA_meth_dup RSA_F_RSA_METH_NEW:162:RSA_meth_new RSA_F_RSA_METH_SET1_NAME:163:RSA_meth_set1_name RSA_F_RSA_MGF1_TO_MD:157:* +RSA_F_RSA_MULTIP_INFO_NEW:166:rsa_multip_info_new RSA_F_RSA_NEW_METHOD:106:RSA_new_method RSA_F_RSA_NULL:124:* RSA_F_RSA_NULL_PRIVATE_DECRYPT:132:* @@ -982,10 +1064,17 @@ RSA_F_RSA_SIGN_ASN1_OCTET_STRING:118:RSA_sign_ASN1_OCTET_STRING RSA_F_RSA_VERIFY:119:RSA_verify RSA_F_RSA_VERIFY_ASN1_OCTET_STRING:120:RSA_verify_ASN1_OCTET_STRING RSA_F_RSA_VERIFY_PKCS1_PSS_MGF1:126:RSA_verify_PKCS1_PSS_mgf1 +RSA_F_SETUP_TBUF:167:setup_tbuf +SM2_F_PKEY_SM2_CTRL:274:pkey_sm2_ctrl +SM2_F_PKEY_SM2_CTRL_STR:275:pkey_sm2_ctrl_str +SM2_F_PKEY_SM2_KEYGEN:276:pkey_sm2_keygen +SM2_F_PKEY_SM2_PARAMGEN:277:pkey_sm2_paramgen +SM2_F_PKEY_SM2_SIGN:278:pkey_sm2_sign SSL_F_ADD_CLIENT_KEY_SHARE_EXT:438:* SSL_F_ADD_KEY_SHARE:512:add_key_share SSL_F_BYTES_TO_CIPHER_LIST:519:bytes_to_cipher_list SSL_F_CHECK_SUITEB_CIPHER_LIST:331:check_suiteb_cipher_list +SSL_F_CIPHERSUITE_CB:622:ciphersuite_cb SSL_F_CONSTRUCT_CA_NAMES:552:construct_ca_names SSL_F_CONSTRUCT_KEY_EXCHANGE_TBS:553:construct_key_exchange_tbs SSL_F_CREATE_SYNTHETIC_MESSAGE_HASH:539:create_synthetic_message_hash @@ -1003,6 +1092,7 @@ SSL_F_DO_SSL3_WRITE:104:do_ssl3_write SSL_F_DTLS1_BUFFER_RECORD:247:dtls1_buffer_record SSL_F_DTLS1_CHECK_TIMEOUT_NUM:318:dtls1_check_timeout_num SSL_F_DTLS1_HEARTBEAT:305:* +SSL_F_DTLS1_HM_FRAGMENT_NEW:623:dtls1_hm_fragment_new SSL_F_DTLS1_PREPROCESS_FRAGMENT:288:dtls1_preprocess_fragment SSL_F_DTLS1_PROCESS_BUFFERED_RECORDS:424:dtls1_process_buffered_records SSL_F_DTLS1_PROCESS_RECORD:257:dtls1_process_record @@ -1017,6 +1107,7 @@ SSL_F_DTLS_CONSTRUCT_HELLO_VERIFY_REQUEST:385:\ dtls_construct_hello_verify_request SSL_F_DTLS_GET_REASSEMBLED_MESSAGE:370:dtls_get_reassembled_message SSL_F_DTLS_PROCESS_HELLO_VERIFY:386:dtls_process_hello_verify +SSL_F_DTLS_RECORD_LAYER_NEW:635:DTLS_RECORD_LAYER_new SSL_F_DTLS_WAIT_FOR_DRY:592:dtls_wait_for_dry SSL_F_EARLY_DATA_COUNT_OK:532:early_data_count_ok SSL_F_FINAL_EARLY_DATA:556:final_early_data @@ -1052,6 +1143,8 @@ SSL_F_OSSL_STATEM_SERVER_READ_TRANSITION:418:ossl_statem_server_read_transition SSL_F_OSSL_STATEM_SERVER_WRITE_TRANSITION:604:\ ossl_statem_server_write_transition SSL_F_PARSE_CA_NAMES:541:parse_ca_names +SSL_F_PITEM_NEW:624:pitem_new +SSL_F_PQUEUE_NEW:625:pqueue_new SSL_F_PROCESS_KEY_SHARE_EXT:439:* SSL_F_READ_STATE_MACHINE:352:read_state_machine SSL_F_SET_CLIENT_CIPHERSUITE:540:set_client_ciphersuite @@ -1104,10 +1197,13 @@ SSL_F_SSL_CHECK_SERVERHELLO_TLSEXT:280:* SSL_F_SSL_CHECK_SRP_EXT_CLIENTHELLO:606:ssl_check_srp_ext_ClientHello SSL_F_SSL_CHECK_SRVR_ECC_CERT_AND_ALG:279:ssl_check_srvr_ecc_cert_and_alg SSL_F_SSL_CHOOSE_CLIENT_VERSION:607:ssl_choose_client_version +SSL_F_SSL_CIPHER_DESCRIPTION:626:SSL_CIPHER_description SSL_F_SSL_CIPHER_LIST_TO_BYTES:425:ssl_cipher_list_to_bytes SSL_F_SSL_CIPHER_PROCESS_RULESTR:230:ssl_cipher_process_rulestr SSL_F_SSL_CIPHER_STRENGTH_SORT:231:ssl_cipher_strength_sort SSL_F_SSL_CLEAR:164:SSL_clear +SSL_F_SSL_CLIENT_HELLO_GET1_EXTENSIONS_PRESENT:627:\ + SSL_client_hello_get1_extensions_present SSL_F_SSL_COMP_ADD_COMPRESSION_METHOD:165:SSL_COMP_add_compression_method SSL_F_SSL_CONF_CMD:334:SSL_CONF_cmd SSL_F_SSL_CREATE_CIPHER_LIST:166:ssl_create_cipher_list @@ -1236,8 +1332,13 @@ SSL_F_TLS1_ENC:401:tls1_enc SSL_F_TLS1_EXPORT_KEYING_MATERIAL:314:tls1_export_keying_material SSL_F_TLS1_GET_CURVELIST:338:tls1_get_curvelist SSL_F_TLS1_PRF:284:tls1_PRF +SSL_F_TLS1_SAVE_U16:628:tls1_save_u16 SSL_F_TLS1_SETUP_KEY_BLOCK:211:tls1_setup_key_block +SSL_F_TLS1_SET_GROUPS:629:tls1_set_groups +SSL_F_TLS1_SET_RAW_SIGALGS:630:tls1_set_raw_sigalgs SSL_F_TLS1_SET_SERVER_SIGALGS:335:tls1_set_server_sigalgs +SSL_F_TLS1_SET_SHARED_SIGALGS:631:tls1_set_shared_sigalgs +SSL_F_TLS1_SET_SIGALGS:632:tls1_set_sigalgs SSL_F_TLS_CHOOSE_SIGALG:513:tls_choose_sigalg SSL_F_TLS_CLIENT_KEY_EXCHANGE_POST_WORK:354:tls_client_key_exchange_post_work SSL_F_TLS_COLLECT_EXTENSIONS:435:tls_collect_extensions @@ -1409,6 +1510,8 @@ SSL_F_TLS_PSK_DO_BINDER:506:tls_psk_do_binder SSL_F_TLS_SCAN_CLIENTHELLO_TLSEXT:450:* SSL_F_TLS_SETUP_HANDSHAKE:508:tls_setup_handshake SSL_F_USE_CERTIFICATE_CHAIN_FILE:220:use_certificate_chain_file +SSL_F_WPACKET_INTERN_INIT_LEN:633:wpacket_intern_init_len +SSL_F_WPACKET_START_SUB_PACKET_LEN__:634:WPACKET_start_sub_packet_len__ SSL_F_WRITE_STATE_MACHINE:586:write_state_machine TS_F_DEF_SERIAL_CB:110:def_serial_cb TS_F_DEF_TIME_CB:111:def_time_cb @@ -1473,6 +1576,7 @@ UI_F_GENERAL_ALLOCATE_BOOLEAN:108:general_allocate_boolean UI_F_GENERAL_ALLOCATE_PROMPT:109:general_allocate_prompt UI_F_NOECHO_CONSOLE:117:noecho_console UI_F_OPEN_CONSOLE:114:open_console +UI_F_UI_CONSTRUCT_PROMPT:121:UI_construct_prompt UI_F_UI_CREATE_METHOD:112:UI_create_method UI_F_UI_CTRL:111:UI_ctrl UI_F_UI_DUP_ERROR_STRING:101:UI_dup_error_string @@ -1502,8 +1606,12 @@ X509V3_F_I2S_ASN1_ENUMERATED:121:i2s_ASN1_ENUMERATED X509V3_F_I2S_ASN1_IA5STRING:149:i2s_ASN1_IA5STRING X509V3_F_I2S_ASN1_INTEGER:120:i2s_ASN1_INTEGER X509V3_F_I2V_AUTHORITY_INFO_ACCESS:138:i2v_AUTHORITY_INFO_ACCESS +X509V3_F_LEVEL_ADD_NODE:168:level_add_node X509V3_F_NOTICE_SECTION:132:notice_section X509V3_F_NREF_NOS:133:nref_nos +X509V3_F_POLICY_CACHE_CREATE:169:policy_cache_create +X509V3_F_POLICY_CACHE_NEW:170:policy_cache_new +X509V3_F_POLICY_DATA_NEW:171:policy_data_new X509V3_F_POLICY_SECTION:131:policy_section X509V3_F_PROCESS_PCI_VALUE:150:process_pci_value X509V3_F_R2I_CERTPOL:130:r2i_certpol @@ -1518,6 +1626,7 @@ X509V3_F_SXNET_ADD_ID_INTEGER:126:SXNET_add_id_INTEGER X509V3_F_SXNET_ADD_ID_ULONG:127:SXNET_add_id_ulong X509V3_F_SXNET_GET_ID_ASC:128:SXNET_get_id_asc X509V3_F_SXNET_GET_ID_ULONG:129:SXNET_get_id_ulong +X509V3_F_TREE_INIT:172:tree_init X509V3_F_V2I_ASIDENTIFIERS:163:v2i_ASIdentifiers X509V3_F_V2I_ASN1_BIT_STRING:101:v2i_ASN1_BIT_STRING X509V3_F_V2I_AUTHORITY_INFO_ACCESS:139:v2i_AUTHORITY_INFO_ACCESS @@ -1556,8 +1665,11 @@ X509_F_CHECK_POLICY:145:check_policy X509_F_DANE_I2D:107:dane_i2d X509_F_DIR_CTRL:102:dir_ctrl X509_F_GET_CERT_BY_SUBJECT:103:get_cert_by_subject +X509_F_I2D_X509_AUX:151:i2d_X509_AUX +X509_F_LOOKUP_CERTS_SK:152:lookup_certs_sk X509_F_NETSCAPE_SPKI_B64_DECODE:129:NETSCAPE_SPKI_b64_decode X509_F_NETSCAPE_SPKI_B64_ENCODE:130:NETSCAPE_SPKI_b64_encode +X509_F_NEW_DIR:153:new_dir X509_F_X509AT_ADD1_ATTR:135:X509at_add1_attr X509_F_X509V3_ADD_EXT:104:X509v3_add_ext X509_F_X509_ATTRIBUTE_CREATE_BY_NID:136:X509_ATTRIBUTE_create_by_NID @@ -1567,6 +1679,7 @@ X509_F_X509_ATTRIBUTE_GET0_DATA:139:X509_ATTRIBUTE_get0_data X509_F_X509_ATTRIBUTE_SET1_DATA:138:X509_ATTRIBUTE_set1_data X509_F_X509_CHECK_PRIVATE_KEY:128:X509_check_private_key X509_F_X509_CRL_DIFF:105:X509_CRL_diff +X509_F_X509_CRL_METHOD_NEW:154:X509_CRL_METHOD_new X509_F_X509_CRL_PRINT_FP:147:X509_CRL_print_fp X509_F_X509_EXTENSION_CREATE_BY_NID:108:X509_EXTENSION_create_by_NID X509_F_X509_EXTENSION_CREATE_BY_OBJ:109:X509_EXTENSION_create_by_OBJ @@ -1574,7 +1687,9 @@ X509_F_X509_GET_PUBKEY_PARAMETERS:110:X509_get_pubkey_parameters X509_F_X509_LOAD_CERT_CRL_FILE:132:X509_load_cert_crl_file X509_F_X509_LOAD_CERT_FILE:111:X509_load_cert_file X509_F_X509_LOAD_CRL_FILE:112:X509_load_crl_file +X509_F_X509_LOOKUP_NEW:155:X509_LOOKUP_new X509_F_X509_NAME_ADD_ENTRY:113:X509_NAME_add_entry +X509_F_X509_NAME_CANON:156:x509_name_canon X509_F_X509_NAME_ENTRY_CREATE_BY_NID:114:X509_NAME_ENTRY_create_by_NID X509_F_X509_NAME_ENTRY_CREATE_BY_TXT:131:X509_NAME_ENTRY_create_by_txt X509_F_X509_NAME_ENTRY_SET_OBJECT:115:X509_NAME_ENTRY_set_object @@ -1591,14 +1706,17 @@ X509_F_X509_REQ_PRINT_FP:122:X509_REQ_print_fp X509_F_X509_REQ_TO_X509:123:X509_REQ_to_X509 X509_F_X509_STORE_ADD_CERT:124:X509_STORE_add_cert X509_F_X509_STORE_ADD_CRL:125:X509_STORE_add_crl +X509_F_X509_STORE_ADD_LOOKUP:157:X509_STORE_add_lookup X509_F_X509_STORE_CTX_GET1_ISSUER:146:X509_STORE_CTX_get1_issuer X509_F_X509_STORE_CTX_INIT:143:X509_STORE_CTX_init X509_F_X509_STORE_CTX_NEW:142:X509_STORE_CTX_new X509_F_X509_STORE_CTX_PURPOSE_INHERIT:134:X509_STORE_CTX_purpose_inherit +X509_F_X509_STORE_NEW:158:X509_STORE_new X509_F_X509_TO_X509_REQ:126:X509_to_X509_REQ X509_F_X509_TRUST_ADD:133:X509_TRUST_add X509_F_X509_TRUST_SET:141:X509_TRUST_set X509_F_X509_VERIFY_CERT:127:X509_verify_cert +X509_F_X509_VERIFY_PARAM_NEW:159:X509_VERIFY_PARAM_new #Reason codes ASN1_R_ADDING_OBJECT:171:adding object @@ -1670,6 +1788,7 @@ ASN1_R_MISSING_VALUE:189:missing value ASN1_R_MSTRING_NOT_UNIVERSAL:139:mstring not universal ASN1_R_MSTRING_WRONG_TAG:140:mstring wrong tag ASN1_R_NESTED_ASN1_STRING:197:nested asn1 string +ASN1_R_NESTED_TOO_DEEP:201:nested too deep ASN1_R_NON_HEX_CHARACTERS:141:non hex characters ASN1_R_NOT_ASCII_FORMAT:190:not ascii format ASN1_R_NOT_ENOUGH_DATA:142:not enough data @@ -1877,6 +1996,10 @@ CONF_R_NO_SECTION:107:no section CONF_R_NO_SUCH_FILE:114:no such file CONF_R_NO_VALUE:108:no value CONF_R_RECURSIVE_DIRECTORY_INCLUDE:111:recursive directory include +CONF_R_SSL_COMMAND_SECTION_EMPTY:117:ssl command section empty +CONF_R_SSL_COMMAND_SECTION_NOT_FOUND:118:ssl command section not found +CONF_R_SSL_SECTION_EMPTY:119:ssl section empty +CONF_R_SSL_SECTION_NOT_FOUND:120:ssl section not found CONF_R_UNABLE_TO_CREATE_NEW_SECTION:103:unable to create new section CONF_R_UNKNOWN_MODULE_NAME:113:unknown module name CONF_R_VARIABLE_EXPANSION_TOO_LONG:116:variable expansion too long @@ -2082,6 +2205,7 @@ EVP_R_INVALID_KEY:163:invalid key EVP_R_INVALID_KEY_LENGTH:130:invalid key length EVP_R_INVALID_OPERATION:148:invalid operation EVP_R_KEYGEN_FAILURE:120:keygen failure +EVP_R_KEY_SETUP_FAILED:180:key setup failed EVP_R_MEMORY_LIMIT_EXCEEDED:172:memory limit exceeded EVP_R_MESSAGE_DIGEST_IS_NULL:159:message digest is null EVP_R_METHOD_NOT_SUPPORTED:144:method not supported @@ -2097,6 +2221,7 @@ EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE:150:\ operation not supported for this keytype EVP_R_OPERATON_NOT_INITIALIZED:151:operaton not initialized EVP_R_PARTIALLY_OVERLAPPING:162:partially overlapping buffers +EVP_R_PBKDF2_ERROR:181:pbkdf2 error EVP_R_PKEY_APPLICATION_ASN1_METHOD_ALREADY_REGISTERED:179:\ pkey application asn1 method already registered EVP_R_PRIVATE_KEY_DECODE_ERROR:145:private key decode error @@ -2304,11 +2429,17 @@ RAND_R_NO_DRBG_IMPLEMENTATION_SELECTED:128:no drbg implementation selected RAND_R_PARENT_LOCKING_NOT_ENABLED:130:parent locking not enabled RAND_R_PARENT_STRENGTH_TOO_WEAK:131:parent strength too weak RAND_R_PERSONALISATION_STRING_TOO_LONG:116:personalisation string too long +RAND_R_PREDICTION_RESISTANCE_NOT_SUPPORTED:133:\ + prediction resistance not supported RAND_R_PRNG_NOT_SEEDED:100:PRNG not seeded RAND_R_RANDOM_POOL_OVERFLOW:125:random pool overflow +RAND_R_RANDOM_POOL_UNDERFLOW:134:random pool underflow RAND_R_REQUEST_TOO_LARGE_FOR_DRBG:117:request too large for drbg RAND_R_RESEED_ERROR:118:reseed error RAND_R_SELFTEST_FAILURE:119:selftest failure +RAND_R_TOO_LITTLE_NONCE_REQUESTED:135:too little nonce requested +RAND_R_TOO_MUCH_NONCE_REQUESTED:136:too much nonce requested +RAND_R_UNSUPPORTED_DRBG_FLAGS:132:unsupported drbg flags RAND_R_UNSUPPORTED_DRBG_TYPE:120:unsupported drbg type RSA_R_ALGORITHM_MISMATCH:100:algorithm mismatch RSA_R_BAD_E_VALUE:101:bad e value @@ -2385,6 +2516,66 @@ RSA_R_UNSUPPORTED_MASK_PARAMETER:154:unsupported mask parameter RSA_R_UNSUPPORTED_SIGNATURE_TYPE:155:unsupported signature type RSA_R_VALUE_MISSING:147:value missing RSA_R_WRONG_SIGNATURE_LENGTH:119:wrong signature length +SM2_R_ASN1_ERROR:115:asn1 error +SM2_R_ASN5_ERROR:1150:asn5 error +SM2_R_BAD_SIGNATURE:156:bad signature +SM2_R_BIGNUM_OUT_OF_RANGE:144:bignum out of range +SM2_R_BUFFER_TOO_SMALL:100:buffer too small +SM2_R_COORDINATES_OUT_OF_RANGE:146:coordinates out of range +SM2_R_CURVE_DOES_NOT_SUPPORT_ECDH:160:curve does not support ecdh +SM2_R_CURVE_DOES_NOT_SUPPORT_SIGNING:159:curve does not support signing +SM2_R_D2I_ECPKPARAMETERS_FAILURE:117:d2i ecpkparameters failure +SM2_R_DECODE_ERROR:142:decode error +SM2_R_DISCRIMINANT_IS_ZERO:118:discriminant is zero +SM2_R_EC_GROUP_NEW_BY_NAME_FAILURE:119:ec group new by name failure +SM2_R_FIELD_TOO_LARGE:143:field too large +SM2_R_GF2M_NOT_SUPPORTED:147:gf2m not supported +SM2_R_GROUP2PKPARAMETERS_FAILURE:120:group2pkparameters failure +SM2_R_I2D_ECPKPARAMETERS_FAILURE:121:i2d ecpkparameters failure +SM2_R_INCOMPATIBLE_OBJECTS:101:incompatible objects +SM2_R_INVALID_ARGUMENT:112:invalid argument +SM2_R_INVALID_COMPRESSED_POINT:110:invalid compressed point +SM2_R_INVALID_COMPRESSION_BIT:109:invalid compression bit +SM2_R_INVALID_CURVE:141:invalid curve +SM2_R_INVALID_DIGEST:151:invalid digest +SM2_R_INVALID_DIGEST_TYPE:138:invalid digest type +SM2_R_INVALID_ENCODING:102:invalid encoding +SM2_R_INVALID_FIELD:103:invalid field +SM2_R_INVALID_FORM:104:invalid form +SM2_R_INVALID_GROUP_ORDER:122:invalid group order +SM2_R_INVALID_KEY:116:invalid key +SM2_R_INVALID_OUTPUT_LENGTH:161:invalid output length +SM2_R_INVALID_PEER_KEY:133:invalid peer key +SM2_R_INVALID_PENTANOMIAL_BASIS:132:invalid pentanomial basis +SM2_R_INVALID_PRIVATE_KEY:123:invalid private key +SM2_R_INVALID_TRINOMIAL_BASIS:137:invalid trinomial basis +SM2_R_KDF_PARAMETER_ERROR:148:kdf parameter error +SM2_R_KEYS_NOT_SET:140:keys not set +SM2_R_MISSING_PARAMETERS:124:missing parameters +SM2_R_MISSING_PRIVATE_KEY:125:missing private key +SM2_R_NEED_NEW_SETUP_VALUES:157:need new setup values +SM2_R_NOT_A_NIST_PRIME:135:not a NIST prime +SM2_R_NOT_IMPLEMENTED:126:not implemented +SM2_R_NOT_INITIALIZED:111:not initialized +SM2_R_NO_PARAMETERS_SET:139:no parameters set +SM2_R_NO_PRIVATE_VALUE:154:no private value +SM2_R_OPERATION_NOT_SUPPORTED:152:operation not supported +SM2_R_PASSED_NULL_PARAMETER:134:passed null parameter +SM2_R_PEER_KEY_ERROR:149:peer key error +SM2_R_PKPARAMETERS2GROUP_FAILURE:127:pkparameters2group failure +SM2_R_POINT_ARITHMETIC_FAILURE:155:point arithmetic failure +SM2_R_POINT_AT_INFINITY:106:point at infinity +SM2_R_POINT_IS_NOT_ON_CURVE:107:point is not on curve +SM2_R_RANDOM_NUMBER_GENERATION_FAILED:158:random number generation failed +SM2_R_SHARED_INFO_ERROR:150:shared info error +SM2_R_SLOT_FULL:108:slot full +SM2_R_UNDEFINED_GENERATOR:113:undefined generator +SM2_R_UNDEFINED_ORDER:128:undefined order +SM2_R_UNKNOWN_GROUP:129:unknown group +SM2_R_UNKNOWN_ORDER:114:unknown order +SM2_R_UNSUPPORTED_FIELD:131:unsupported field +SM2_R_WRONG_CURVE_PARAMETERS:145:wrong curve parameters +SM2_R_WRONG_ORDER:130:wrong order SSL_R_APP_DATA_IN_HANDSHAKE:100:app data in handshake SSL_R_ATTEMPT_TO_REUSE_SESSION_IN_DIFFERENT_CONTEXT:272:\ attempt to reuse session in different context diff --git a/crypto/evp/bio_b64.c b/crypto/evp/bio_b64.c index e70fc322..9f891f76 100644 --- a/crypto/evp/bio_b64.c +++ b/crypto/evp/bio_b64.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -70,9 +70,10 @@ static int b64_new(BIO *bi) { BIO_B64_CTX *ctx; - ctx = OPENSSL_zalloc(sizeof(*ctx)); - if (ctx == NULL) + if ((ctx = OPENSSL_zalloc(sizeof(*ctx))) == NULL) { + EVPerr(EVP_F_B64_NEW, ERR_R_MALLOC_FAILURE); return 0; + } ctx->cont = 1; ctx->start = 1; diff --git a/crypto/evp/bio_enc.c b/crypto/evp/bio_enc.c index 30f09e6d..6639061e 100644 --- a/crypto/evp/bio_enc.c +++ b/crypto/evp/bio_enc.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -65,9 +65,10 @@ static int enc_new(BIO *bi) { BIO_ENC_CTX *ctx; - ctx = OPENSSL_zalloc(sizeof(*ctx)); - if (ctx == NULL) + if ((ctx = OPENSSL_zalloc(sizeof(*ctx))) == NULL) { + EVPerr(EVP_F_ENC_NEW, ERR_R_MALLOC_FAILURE); return 0; + } ctx->cipher = EVP_CIPHER_CTX_new(); if (ctx->cipher == NULL) { diff --git a/crypto/evp/bio_ok.c b/crypto/evp/bio_ok.c index 5871e632..a0462219 100644 --- a/crypto/evp/bio_ok.c +++ b/crypto/evp/bio_ok.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -133,9 +133,10 @@ static int ok_new(BIO *bi) { BIO_OK_CTX *ctx; - ctx = OPENSSL_zalloc(sizeof(*ctx)); - if (ctx == NULL) + if ((ctx = OPENSSL_zalloc(sizeof(*ctx))) == NULL) { + EVPerr(EVP_F_OK_NEW, ERR_R_MALLOC_FAILURE); return 0; + } ctx->cont = 1; ctx->sigio = 1; diff --git a/crypto/evp/e_aes.c b/crypto/evp/e_aes.c index bed9b274..951fc8f8 100644 --- a/crypto/evp/e_aes.c +++ b/crypto/evp/e_aes.c @@ -17,7 +17,6 @@ #include "internal/evp_int.h" #include "modes_lcl.h" #include -#include #include "evp_locl.h" typedef struct { @@ -957,6 +956,57 @@ const EVP_CIPHER *EVP_aes_##keylen##_##mode(void) \ */ # include "s390x_arch.h" +typedef struct { + union { + double align; + /*- + * KM-AES parameter block - begin + * (see z/Architecture Principles of Operation >= SA22-7832-06) + */ + struct { + unsigned char k[32]; + } param; + /* KM-AES parameter block - end */ + } km; + unsigned int fc; +} S390X_AES_ECB_CTX; + +typedef struct { + union { + double align; + /*- + * KMO-AES parameter block - begin + * (see z/Architecture Principles of Operation >= SA22-7832-08) + */ + struct { + unsigned char cv[16]; + unsigned char k[32]; + } param; + /* KMO-AES parameter block - end */ + } kmo; + unsigned int fc; + + int res; +} S390X_AES_OFB_CTX; + +typedef struct { + union { + double align; + /*- + * KMF-AES parameter block - begin + * (see z/Architecture Principles of Operation >= SA22-7832-08) + */ + struct { + unsigned char cv[16]; + unsigned char k[32]; + } param; + /* KMF-AES parameter block - end */ + } kmf; + unsigned int fc; + + int res; +} S390X_AES_CFB_CTX; + typedef struct { union { double align; @@ -1057,18 +1107,16 @@ typedef struct { } aes; } S390X_AES_CCM_CTX; -# define S390X_aes_128_CAPABLE ((OPENSSL_s390xcap_P.km[0] & \ - S390X_CAPBIT(S390X_AES_128)) &&\ - (OPENSSL_s390xcap_P.kmc[0] & \ - S390X_CAPBIT(S390X_AES_128))) -# define S390X_aes_192_CAPABLE ((OPENSSL_s390xcap_P.km[0] & \ - S390X_CAPBIT(S390X_AES_192)) &&\ - (OPENSSL_s390xcap_P.kmc[0] & \ - S390X_CAPBIT(S390X_AES_192))) -# define S390X_aes_256_CAPABLE ((OPENSSL_s390xcap_P.km[0] & \ - S390X_CAPBIT(S390X_AES_256)) &&\ - (OPENSSL_s390xcap_P.kmc[0] & \ - S390X_CAPBIT(S390X_AES_256))) +/* Convert key size to function code: [16,24,32] -> [18,19,20]. */ +# define S390X_AES_FC(keylen) (S390X_AES_128 + ((((keylen) << 3) - 128) >> 6)) + +/* Most modes of operation need km for partial block processing. */ +# define S390X_aes_128_CAPABLE (OPENSSL_s390xcap_P.km[0] & \ + S390X_CAPBIT(S390X_AES_128)) +# define S390X_aes_192_CAPABLE (OPENSSL_s390xcap_P.km[0] & \ + S390X_CAPBIT(S390X_AES_192)) +# define S390X_aes_256_CAPABLE (OPENSSL_s390xcap_P.km[0] & \ + S390X_CAPBIT(S390X_AES_256)) # define s390x_aes_init_key aes_init_key static int s390x_aes_init_key(EVP_CIPHER_CTX *ctx, const unsigned char *key, @@ -1077,47 +1125,224 @@ static int s390x_aes_init_key(EVP_CIPHER_CTX *ctx, const unsigned char *key, # define S390X_aes_128_cbc_CAPABLE 1 /* checked by callee */ # define S390X_aes_192_cbc_CAPABLE 1 # define S390X_aes_256_cbc_CAPABLE 1 +# define S390X_AES_CBC_CTX EVP_AES_KEY + +# define s390x_aes_cbc_init_key aes_init_key # define s390x_aes_cbc_cipher aes_cbc_cipher static int s390x_aes_cbc_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, const unsigned char *in, size_t len); -# define S390X_aes_128_ecb_CAPABLE 0 -# define S390X_aes_192_ecb_CAPABLE 0 -# define S390X_aes_256_ecb_CAPABLE 0 +# define S390X_aes_128_ecb_CAPABLE S390X_aes_128_CAPABLE +# define S390X_aes_192_ecb_CAPABLE S390X_aes_192_CAPABLE +# define S390X_aes_256_ecb_CAPABLE S390X_aes_256_CAPABLE + +static int s390x_aes_ecb_init_key(EVP_CIPHER_CTX *ctx, + const unsigned char *key, + const unsigned char *iv, int enc) +{ + S390X_AES_ECB_CTX *cctx = EVP_C_DATA(S390X_AES_ECB_CTX, ctx); + const int keylen = EVP_CIPHER_CTX_key_length(ctx); + + cctx->fc = S390X_AES_FC(keylen); + if (!enc) + cctx->fc |= S390X_DECRYPT; + + memcpy(cctx->km.param.k, key, keylen); + return 1; +} -# define s390x_aes_ecb_cipher aes_ecb_cipher static int s390x_aes_ecb_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, - const unsigned char *in, size_t len); + const unsigned char *in, size_t len) +{ + S390X_AES_ECB_CTX *cctx = EVP_C_DATA(S390X_AES_ECB_CTX, ctx); -# define S390X_aes_128_ofb_CAPABLE 0 -# define S390X_aes_192_ofb_CAPABLE 0 -# define S390X_aes_256_ofb_CAPABLE 0 + s390x_km(in, len, out, cctx->fc, &cctx->km.param); + return 1; +} + +# define S390X_aes_128_ofb_CAPABLE (S390X_aes_128_CAPABLE && \ + (OPENSSL_s390xcap_P.kmo[0] & \ + S390X_CAPBIT(S390X_AES_128))) +# define S390X_aes_192_ofb_CAPABLE (S390X_aes_192_CAPABLE && \ + (OPENSSL_s390xcap_P.kmo[0] & \ + S390X_CAPBIT(S390X_AES_192))) +# define S390X_aes_256_ofb_CAPABLE (S390X_aes_256_CAPABLE && \ + (OPENSSL_s390xcap_P.kmo[0] & \ + S390X_CAPBIT(S390X_AES_256))) + +static int s390x_aes_ofb_init_key(EVP_CIPHER_CTX *ctx, + const unsigned char *key, + const unsigned char *ivec, int enc) +{ + S390X_AES_OFB_CTX *cctx = EVP_C_DATA(S390X_AES_OFB_CTX, ctx); + const unsigned char *iv = EVP_CIPHER_CTX_original_iv(ctx); + const int keylen = EVP_CIPHER_CTX_key_length(ctx); + const int ivlen = EVP_CIPHER_CTX_iv_length(ctx); + + memcpy(cctx->kmo.param.cv, iv, ivlen); + memcpy(cctx->kmo.param.k, key, keylen); + cctx->fc = S390X_AES_FC(keylen); + cctx->res = 0; + return 1; +} -# define s390x_aes_ofb_cipher aes_ofb_cipher static int s390x_aes_ofb_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, - const unsigned char *in, size_t len); + const unsigned char *in, size_t len) +{ + S390X_AES_OFB_CTX *cctx = EVP_C_DATA(S390X_AES_OFB_CTX, ctx); + int n = cctx->res; + int rem; -# define S390X_aes_128_cfb_CAPABLE 0 -# define S390X_aes_192_cfb_CAPABLE 0 -# define S390X_aes_256_cfb_CAPABLE 0 + while (n && len) { + *out = *in ^ cctx->kmo.param.cv[n]; + n = (n + 1) & 0xf; + --len; + ++in; + ++out; + } + + rem = len & 0xf; + + len &= ~(size_t)0xf; + if (len) { + s390x_kmo(in, len, out, cctx->fc, &cctx->kmo.param); + + out += len; + in += len; + } + + if (rem) { + s390x_km(cctx->kmo.param.cv, 16, cctx->kmo.param.cv, cctx->fc, + cctx->kmo.param.k); + + while (rem--) { + out[n] = in[n] ^ cctx->kmo.param.cv[n]; + ++n; + } + } + + cctx->res = n; + return 1; +} + +# define S390X_aes_128_cfb_CAPABLE (S390X_aes_128_CAPABLE && \ + (OPENSSL_s390xcap_P.kmf[0] & \ + S390X_CAPBIT(S390X_AES_128))) +# define S390X_aes_192_cfb_CAPABLE (S390X_aes_192_CAPABLE && \ + (OPENSSL_s390xcap_P.kmf[0] & \ + S390X_CAPBIT(S390X_AES_192))) +# define S390X_aes_256_cfb_CAPABLE (S390X_aes_256_CAPABLE && \ + (OPENSSL_s390xcap_P.kmf[0] & \ + S390X_CAPBIT(S390X_AES_256))) + +static int s390x_aes_cfb_init_key(EVP_CIPHER_CTX *ctx, + const unsigned char *key, + const unsigned char *ivec, int enc) +{ + S390X_AES_CFB_CTX *cctx = EVP_C_DATA(S390X_AES_CFB_CTX, ctx); + const unsigned char *iv = EVP_CIPHER_CTX_original_iv(ctx); + const int keylen = EVP_CIPHER_CTX_key_length(ctx); + const int ivlen = EVP_CIPHER_CTX_iv_length(ctx); + + cctx->fc = S390X_AES_FC(keylen); + cctx->fc |= 16 << 24; /* 16 bytes cipher feedback */ + if (!enc) + cctx->fc |= S390X_DECRYPT; + + cctx->res = 0; + memcpy(cctx->kmf.param.cv, iv, ivlen); + memcpy(cctx->kmf.param.k, key, keylen); + return 1; +} -# define s390x_aes_cfb_cipher aes_cfb_cipher static int s390x_aes_cfb_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, - const unsigned char *in, size_t len); + const unsigned char *in, size_t len) +{ + S390X_AES_CFB_CTX *cctx = EVP_C_DATA(S390X_AES_CFB_CTX, ctx); + const int keylen = EVP_CIPHER_CTX_key_length(ctx); + const int enc = EVP_CIPHER_CTX_encrypting(ctx); + int n = cctx->res; + int rem; + unsigned char tmp; -# define S390X_aes_128_cfb8_CAPABLE 0 -# define S390X_aes_192_cfb8_CAPABLE 0 -# define S390X_aes_256_cfb8_CAPABLE 0 + while (n && len) { + tmp = *in; + *out = cctx->kmf.param.cv[n] ^ tmp; + cctx->kmf.param.cv[n] = enc ? *out : tmp; + n = (n + 1) & 0xf; + --len; + ++in; + ++out; + } + + rem = len & 0xf; + + len &= ~(size_t)0xf; + if (len) { + s390x_kmf(in, len, out, cctx->fc, &cctx->kmf.param); + + out += len; + in += len; + } + + if (rem) { + s390x_km(cctx->kmf.param.cv, 16, cctx->kmf.param.cv, + S390X_AES_FC(keylen), cctx->kmf.param.k); + + while (rem--) { + tmp = in[n]; + out[n] = cctx->kmf.param.cv[n] ^ tmp; + cctx->kmf.param.cv[n] = enc ? out[n] : tmp; + ++n; + } + } + + cctx->res = n; + return 1; +} + +# define S390X_aes_128_cfb8_CAPABLE (OPENSSL_s390xcap_P.kmf[0] & \ + S390X_CAPBIT(S390X_AES_128)) +# define S390X_aes_192_cfb8_CAPABLE (OPENSSL_s390xcap_P.kmf[0] & \ + S390X_CAPBIT(S390X_AES_192)) +# define S390X_aes_256_cfb8_CAPABLE (OPENSSL_s390xcap_P.kmf[0] & \ + S390X_CAPBIT(S390X_AES_256)) + +static int s390x_aes_cfb8_init_key(EVP_CIPHER_CTX *ctx, + const unsigned char *key, + const unsigned char *ivec, int enc) +{ + S390X_AES_CFB_CTX *cctx = EVP_C_DATA(S390X_AES_CFB_CTX, ctx); + const unsigned char *iv = EVP_CIPHER_CTX_original_iv(ctx); + const int keylen = EVP_CIPHER_CTX_key_length(ctx); + const int ivlen = EVP_CIPHER_CTX_iv_length(ctx); + + cctx->fc = S390X_AES_FC(keylen); + cctx->fc |= 1 << 24; /* 1 byte cipher feedback */ + if (!enc) + cctx->fc |= S390X_DECRYPT; + + memcpy(cctx->kmf.param.cv, iv, ivlen); + memcpy(cctx->kmf.param.k, key, keylen); + return 1; +} -# define s390x_aes_cfb8_cipher aes_cfb8_cipher static int s390x_aes_cfb8_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, - const unsigned char *in, size_t len); + const unsigned char *in, size_t len) +{ + S390X_AES_CFB_CTX *cctx = EVP_C_DATA(S390X_AES_CFB_CTX, ctx); + + s390x_kmf(in, len, out, cctx->fc, &cctx->kmf.param); + return 1; +} # define S390X_aes_128_cfb1_CAPABLE 0 # define S390X_aes_192_cfb1_CAPABLE 0 # define S390X_aes_256_cfb1_CAPABLE 0 +# define s390x_aes_cfb1_init_key aes_init_key + # define s390x_aes_cfb1_cipher aes_cfb1_cipher static int s390x_aes_cfb1_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, const unsigned char *in, size_t len); @@ -1125,6 +1350,9 @@ static int s390x_aes_cfb1_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, # define S390X_aes_128_ctr_CAPABLE 1 /* checked by callee */ # define S390X_aes_192_ctr_CAPABLE 1 # define S390X_aes_256_ctr_CAPABLE 1 +# define S390X_AES_CTR_CTX EVP_AES_KEY + +# define s390x_aes_ctr_init_key aes_init_key # define s390x_aes_ctr_cipher aes_ctr_cipher static int s390x_aes_ctr_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, @@ -1179,7 +1407,7 @@ static int s390x_aes_gcm_aad(S390X_AES_GCM_CTX *ctx, const unsigned char *aad, rem = len & 0xf; - len &= ~0xf; + len &= ~(size_t)0xf; if (len) { s390x_kma(aad, len, NULL, 0, NULL, ctx->fc, &ctx->kma.param); aad += len; @@ -1251,7 +1479,7 @@ static int s390x_aes_gcm(S390X_AES_GCM_CTX *ctx, const unsigned char *in, rem = len & 0xf; - len &= ~0xf; + len &= ~(size_t)0xf; if (len) { s390x_kma(ctx->ares, ctx->areslen, in, len, out, ctx->fc | S390X_KMA_LAAD, &ctx->kma.param); @@ -1358,9 +1586,10 @@ static int s390x_aes_gcm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) if (gctx->iv != iv) OPENSSL_free(gctx->iv); - gctx->iv = OPENSSL_malloc(len); - if (gctx->iv == NULL) + if ((gctx->iv = OPENSSL_malloc(len)) == NULL) { + EVPerr(EVP_F_S390X_AES_GCM_CTRL, ERR_R_MALLOC_FAILURE); return 0; + } } /* Add padding. */ memset(gctx->iv + arg, 0, len - arg - 8); @@ -1405,14 +1634,8 @@ static int s390x_aes_gcm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) memcpy(gctx->iv, ptr, arg); enc = EVP_CIPHER_CTX_encrypting(c); - if (enc) { - if (c->drbg != NULL) { - if (RAND_DRBG_bytes(c->drbg, gctx->iv + arg, gctx->ivlen - arg) == 0) - return 0; - } else if (RAND_bytes(gctx->iv + arg, gctx->ivlen - arg) <= 0) { - return 0; - } - } + if (enc && RAND_bytes(gctx->iv + arg, gctx->ivlen - arg) <= 0) + return 0; gctx->iv_gen = 1; return 1; @@ -1482,9 +1705,10 @@ static int s390x_aes_gcm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) } else { len = S390X_gcm_ivpadlen(gctx->ivlen); - gctx_out->iv = OPENSSL_malloc(len); - if (gctx_out->iv == NULL) + if ((gctx_out->iv = OPENSSL_malloc(len)) == NULL) { + EVPerr(EVP_F_S390X_AES_GCM_CTRL, ERR_R_MALLOC_FAILURE); return 0; + } memcpy(gctx_out->iv, gctx->iv, len); } @@ -1512,8 +1736,7 @@ static int s390x_aes_gcm_init_key(EVP_CIPHER_CTX *ctx, keylen = EVP_CIPHER_CTX_key_length(ctx); memcpy(&gctx->kma.param.k, key, keylen); - /* Convert key size to function code. */ - gctx->fc = S390X_AES_128 + (((keylen << 3) - 128) >> 6); + gctx->fc = S390X_AES_FC(keylen); if (!enc) gctx->fc |= S390X_DECRYPT; @@ -1743,7 +1966,7 @@ static void s390x_aes_ccm_aad(S390X_AES_CCM_CTX *ctx, const unsigned char *aad, ctx->aes.ccm.blocks += 2; rem = alen & 0xf; - alen &= ~0xf; + alen &= ~(size_t)0xf; if (alen) { s390x_kmac(aad, alen, ctx->aes.ccm.fc, &ctx->aes.ccm.kmac_param); ctx->aes.ccm.blocks += alen >> 4; @@ -1805,7 +2028,7 @@ static int s390x_aes_ccm(S390X_AES_CCM_CTX *ctx, const unsigned char *in, num = 0; rem = len & 0xf; - len &= ~0xf; + len &= ~(size_t)0xf; if (enc) { /* mac-then-encrypt */ @@ -1923,8 +2146,7 @@ static int s390x_aes_ccm_init_key(EVP_CIPHER_CTX *ctx, if (key != NULL) { keylen = EVP_CIPHER_CTX_key_length(ctx); - /* Convert key size to function code. */ - cctx->aes.ccm.fc = S390X_AES_128 + (((keylen << 3) - 128) >> 6); + cctx->aes.ccm.fc = S390X_AES_FC(keylen); memcpy(cctx->aes.ccm.kmac_param.k, key, keylen); /* Store encoded m and l. */ @@ -2175,10 +2397,10 @@ static const EVP_CIPHER s390x_aes_##keylen##_##mode = { \ keylen / 8, \ ivlen, \ flags | EVP_CIPH_##MODE##_MODE, \ - s390x_aes_init_key, \ + s390x_aes_##mode##_init_key, \ s390x_aes_##mode##_cipher, \ NULL, \ - sizeof(EVP_AES_KEY), \ + sizeof(S390X_AES_##MODE##_CTX), \ NULL, \ NULL, \ NULL, \ @@ -2194,7 +2416,10 @@ static const EVP_CIPHER aes_##keylen##_##mode = { \ aes_##mode##_cipher, \ NULL, \ sizeof(EVP_AES_KEY), \ - NULL,NULL,NULL,NULL \ + NULL, \ + NULL, \ + NULL, \ + NULL \ }; \ const EVP_CIPHER *EVP_aes_##keylen##_##mode(void) \ { \ @@ -2603,9 +2828,10 @@ static int aes_gcm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) if ((arg > EVP_MAX_IV_LENGTH) && (arg > gctx->ivlen)) { if (gctx->iv != EVP_CIPHER_CTX_iv_noconst(c)) OPENSSL_free(gctx->iv); - gctx->iv = OPENSSL_malloc(arg); - if (gctx->iv == NULL) + if ((gctx->iv = OPENSSL_malloc(arg)) == NULL) { + EVPerr(EVP_F_AES_GCM_CTRL, ERR_R_MALLOC_FAILURE); return 0; + } } gctx->ivlen = arg; return 1; @@ -2639,14 +2865,9 @@ static int aes_gcm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) return 0; if (arg) memcpy(gctx->iv, ptr, arg); - if (EVP_CIPHER_CTX_encrypting(c)) { - if (c->drbg != NULL) { - if (RAND_DRBG_bytes(c->drbg, gctx->iv + arg, gctx->ivlen - arg) == 0) - return 0; - } else if (RAND_bytes(gctx->iv + arg, gctx->ivlen - arg) <= 0) { - return 0; - } - } + if (EVP_CIPHER_CTX_encrypting(c) + && RAND_bytes(gctx->iv + arg, gctx->ivlen - arg) <= 0) + return 0; gctx->iv_gen = 1; return 1; @@ -2712,9 +2933,10 @@ static int aes_gcm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) if (gctx->iv == EVP_CIPHER_CTX_iv_noconst(c)) gctx_out->iv = EVP_CIPHER_CTX_iv_noconst(out); else { - gctx_out->iv = OPENSSL_malloc(gctx->ivlen); - if (gctx_out->iv == NULL) + if ((gctx_out->iv = OPENSSL_malloc(gctx->ivlen)) == NULL) { + EVPerr(EVP_F_AES_GCM_CTRL, ERR_R_MALLOC_FAILURE); return 0; + } memcpy(gctx_out->iv, gctx->iv, gctx->ivlen); } return 1; diff --git a/crypto/evp/e_aes_cbc_hmac_sha1.c b/crypto/evp/e_aes_cbc_hmac_sha1.c index 053189e6..09d24dc3 100644 --- a/crypto/evp/e_aes_cbc_hmac_sha1.c +++ b/crypto/evp/e_aes_cbc_hmac_sha1.c @@ -17,11 +17,9 @@ #include #include #include -#include #include "modes_lcl.h" #include "internal/evp_int.h" #include "internal/constant_time_locl.h" -#include "evp_locl.h" typedef struct { AES_KEY ks; @@ -156,8 +154,7 @@ void aesni_multi_cbc_encrypt(CIPH_DESC *, void *, int); static size_t tls1_1_multi_block_encrypt(EVP_AES_HMAC_SHA1 *key, unsigned char *out, const unsigned char *inp, - size_t inp_len, int n4x, - RAND_DRBG *drbg) + size_t inp_len, int n4x) { /* n4x is 1 or 2 */ HASH_DESC hash_d[8], edges[8]; CIPH_DESC ciph_d[8]; @@ -177,13 +174,8 @@ static size_t tls1_1_multi_block_encrypt(EVP_AES_HMAC_SHA1 *key, # endif /* ask for IVs in bulk */ - IVs = blocks[0].c; - if (drbg != NULL) { - if (RAND_DRBG_bytes(drbg, IVs, 16 * x4) == 0) - return 0; - } else if (RAND_bytes(IVs, 16 * x4) <= 0) { + if (RAND_bytes((IVs = blocks[0].c), 16 * x4) <= 0) return 0; - } ctx = (SHA1_MB_CTX *) (storage + 32 - ((size_t)storage % 32)); /* align */ @@ -901,8 +893,7 @@ static int aesni_cbc_hmac_sha1_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, return (int)tls1_1_multi_block_encrypt(key, param->out, param->inp, param->len, - param->interleave / 4, - ctx->drbg); + param->interleave / 4); } case EVP_CTRL_TLS1_1_MULTIBLOCK_DECRYPT: # endif diff --git a/crypto/evp/e_aes_cbc_hmac_sha256.c b/crypto/evp/e_aes_cbc_hmac_sha256.c index 215e02f1..caac0c9d 100644 --- a/crypto/evp/e_aes_cbc_hmac_sha256.c +++ b/crypto/evp/e_aes_cbc_hmac_sha256.c @@ -18,11 +18,9 @@ #include #include #include -#include #include "modes_lcl.h" #include "internal/constant_time_locl.h" #include "internal/evp_int.h" -#include "evp_locl.h" typedef struct { AES_KEY ks; @@ -152,8 +150,7 @@ void aesni_multi_cbc_encrypt(CIPH_DESC *, void *, int); static size_t tls1_1_multi_block_encrypt(EVP_AES_HMAC_SHA256 *key, unsigned char *out, const unsigned char *inp, - size_t inp_len, int n4x, - RAND_DRBG *drbg) + size_t inp_len, int n4x) { /* n4x is 1 or 2 */ HASH_DESC hash_d[8], edges[8]; CIPH_DESC ciph_d[8]; @@ -173,13 +170,8 @@ static size_t tls1_1_multi_block_encrypt(EVP_AES_HMAC_SHA256 *key, # endif /* ask for IVs in bulk */ - IVs = blocks[0].c; - if (drbg != NULL) { - if (RAND_DRBG_bytes(drbg, IVs, 16 * x4) == 0) - return 0; - } else if (RAND_bytes(IVs, 16 * x4) <= 0) { + if (RAND_bytes((IVs = blocks[0].c), 16 * x4) <= 0) return 0; - } /* align */ ctx = (SHA256_MB_CTX *) (storage + 32 - ((size_t)storage % 32)); @@ -885,8 +877,7 @@ static int aesni_cbc_hmac_sha256_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, return (int)tls1_1_multi_block_encrypt(key, param->out, param->inp, param->len, - param->interleave / 4, - ctx->drbg); + param->interleave / 4); } case EVP_CTRL_TLS1_1_MULTIBLOCK_DECRYPT: # endif diff --git a/crypto/evp/e_aria.c b/crypto/evp/e_aria.c index 10525a84..81c8a7ea 100644 --- a/crypto/evp/e_aria.c +++ b/crypto/evp/e_aria.c @@ -1,5 +1,5 @@ /* - * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use @@ -13,9 +13,9 @@ # include # include # include +# include # include "internal/aria.h" # include "internal/evp_int.h" -# include "internal/rand.h" # include "modes_lcl.h" # include "evp_locl.h" @@ -266,9 +266,10 @@ static int aria_gcm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) if ((arg > EVP_MAX_IV_LENGTH) && (arg > gctx->ivlen)) { if (gctx->iv != EVP_CIPHER_CTX_iv_noconst(c)) OPENSSL_free(gctx->iv); - gctx->iv = OPENSSL_malloc(arg); - if (gctx->iv == NULL) + if ((gctx->iv = OPENSSL_malloc(arg)) == NULL) { + EVPerr(EVP_F_ARIA_GCM_CTRL, ERR_R_MALLOC_FAILURE); return 0; + } } gctx->ivlen = arg; return 1; @@ -302,14 +303,9 @@ static int aria_gcm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) return 0; if (arg) memcpy(gctx->iv, ptr, arg); - if (EVP_CIPHER_CTX_encrypting(c)) { - if (c->drbg != NULL) { - if (RAND_DRBG_bytes(c->drbg, gctx->iv + arg, gctx->ivlen - arg) == 0) - return 0; - } else if (RAND_bytes(gctx->iv + arg, gctx->ivlen - arg) <= 0) { - return 0; - } - } + if (EVP_CIPHER_CTX_encrypting(c) + && RAND_bytes(gctx->iv + arg, gctx->ivlen - arg) <= 0) + return 0; gctx->iv_gen = 1; return 1; @@ -375,9 +371,10 @@ static int aria_gcm_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) if (gctx->iv == EVP_CIPHER_CTX_iv_noconst(c)) gctx_out->iv = EVP_CIPHER_CTX_iv_noconst(out); else { - gctx_out->iv = OPENSSL_malloc(gctx->ivlen); - if (gctx_out->iv == NULL) + if ((gctx_out->iv = OPENSSL_malloc(gctx->ivlen)) == NULL) { + EVPerr(EVP_F_ARIA_GCM_CTRL, ERR_R_MALLOC_FAILURE); return 0; + } memcpy(gctx_out->iv, gctx->iv, gctx->ivlen); } return 1; diff --git a/crypto/evp/e_des.c b/crypto/evp/e_des.c index d8c4afa8..c13fb3e2 100644 --- a/crypto/evp/e_des.c +++ b/crypto/evp/e_des.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -15,8 +15,6 @@ # include "internal/evp_int.h" # include # include -# include -# include "evp_locl.h" typedef struct { union { @@ -231,12 +229,8 @@ static int des_ctrl(EVP_CIPHER_CTX *c, int type, int arg, void *ptr) switch (type) { case EVP_CTRL_RAND_KEY: - if (c->drbg != NULL) { - if (RAND_DRBG_bytes(c->drbg, ptr, 8) == 0) - return 0; - } else if (RAND_bytes(ptr, 8) <= 0) { + if (RAND_priv_bytes(ptr, 8) <= 0) return 0; - } DES_set_odd_parity((DES_cblock *)ptr); return 1; diff --git a/crypto/evp/e_des3.c b/crypto/evp/e_des3.c index 75e6ecf3..6b492ce4 100644 --- a/crypto/evp/e_des3.c +++ b/crypto/evp/e_des3.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -15,7 +15,6 @@ # include "internal/evp_int.h" # include # include -# include # include "evp_locl.h" typedef struct { @@ -284,12 +283,8 @@ static int des3_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, void *ptr) switch (type) { case EVP_CTRL_RAND_KEY: - if (ctx->drbg != NULL) { - if (RAND_DRBG_bytes(ctx->drbg, ptr, EVP_CIPHER_CTX_key_length(ctx)) == 0) - return 0; - } else if (RAND_bytes(ptr, EVP_CIPHER_CTX_key_length(ctx)) <= 0) { + if (RAND_priv_bytes(ptr, EVP_CIPHER_CTX_key_length(ctx)) <= 0) return 0; - } DES_set_odd_parity(deskey); if (EVP_CIPHER_CTX_key_length(ctx) >= 16) DES_set_odd_parity(deskey + 1); @@ -377,12 +372,8 @@ static int des_ede3_wrap(EVP_CIPHER_CTX *ctx, unsigned char *out, memcpy(out + inl + 8, sha1tmp, 8); OPENSSL_cleanse(sha1tmp, SHA_DIGEST_LENGTH); /* Generate random IV */ - if (ctx->drbg != NULL) { - if (RAND_DRBG_bytes(ctx->drbg, EVP_CIPHER_CTX_iv_noconst(ctx), 8) == 0) - return -1; - } else if (RAND_bytes(EVP_CIPHER_CTX_iv_noconst(ctx), 8) <= 0) { + if (RAND_bytes(EVP_CIPHER_CTX_iv_noconst(ctx), 8) <= 0) return -1; - } memcpy(out, EVP_CIPHER_CTX_iv_noconst(ctx), 8); /* Encrypt everything after IV in place */ des_ede_cbc_cipher(ctx, out + 8, out + 8, inl + 8); diff --git a/crypto/evp/encode.c b/crypto/evp/encode.c index 17198ff6..da32d4fd 100644 --- a/crypto/evp/encode.c +++ b/crypto/evp/encode.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -12,10 +12,17 @@ #include "internal/cryptlib.h" #include #include "evp_locl.h" +#include "internal/evp_int.h" + +static unsigned char conv_ascii2bin(unsigned char a, + const unsigned char *table); +static int evp_encodeblock_int(EVP_ENCODE_CTX *ctx, unsigned char *t, + const unsigned char *f, int dlen); +static int evp_decodeblock_int(EVP_ENCODE_CTX *ctx, unsigned char *t, + const unsigned char *f, int n); -static unsigned char conv_ascii2bin(unsigned char a); #ifndef CHARSET_EBCDIC -# define conv_bin2ascii(a) (data_bin2ascii[(a)&0x3f]) +# define conv_bin2ascii(a, table) ((table)[(a)&0x3f]) #else /* * We assume that PEM encoded files are EBCDIC files (i.e., printable text @@ -23,7 +30,7 @@ static unsigned char conv_ascii2bin(unsigned char a); * (text) format again. (No need for conversion in the conv_bin2ascii macro, * as the underlying textstring data_bin2ascii[] is already EBCDIC) */ -# define conv_bin2ascii(a) (data_bin2ascii[(a)&0x3f]) +# define conv_bin2ascii(a, table) ((table)[(a)&0x3f]) #endif /*- @@ -38,8 +45,13 @@ static unsigned char conv_ascii2bin(unsigned char a); #define CHUNKS_PER_LINE (64/4) #define CHAR_PER_LINE (64+1) -static const unsigned char data_bin2ascii[65] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ\ -abcdefghijklmnopqrstuvwxyz0123456789+/"; +static const unsigned char data_bin2ascii[65] = + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; + +/* SRP uses a different base64 alphabet */ +static const unsigned char srpdata_bin2ascii[65] = + "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz./"; + /*- * 0xF0 is a EOLN @@ -76,20 +88,39 @@ static const unsigned char data_ascii2bin[128] = { 0x31, 0x32, 0x33, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, }; +static const unsigned char srpdata_ascii2bin[128] = { + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0xE0, 0xF0, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF2, 0x3E, 0x3F, + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, + 0xFF, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, + 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, + 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20, + 0x21, 0x22, 0x23, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, + 0x2B, 0x2C, 0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, + 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, + 0x3B, 0x3C, 0x3D, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, +}; + #ifndef CHARSET_EBCDIC -static unsigned char conv_ascii2bin(unsigned char a) +static unsigned char conv_ascii2bin(unsigned char a, const unsigned char *table) { if (a & 0x80) return B64_ERROR; - return data_ascii2bin[a]; + return table[a]; } #else -static unsigned char conv_ascii2bin(unsigned char a) +static unsigned char conv_ascii2bin(unsigned char a, const unsigned char *table) { a = os_toascii[a]; if (a & 0x80) return B64_ERROR; - return data_ascii2bin[a]; + return table[a]; } #endif @@ -115,11 +146,17 @@ int EVP_ENCODE_CTX_num(EVP_ENCODE_CTX *ctx) return ctx->num; } +void evp_encode_ctx_set_flags(EVP_ENCODE_CTX *ctx, unsigned int flags) +{ + ctx->flags = flags; +} + void EVP_EncodeInit(EVP_ENCODE_CTX *ctx) { ctx->length = 48; ctx->num = 0; ctx->line_num = 0; + ctx->flags = 0; } int EVP_EncodeUpdate(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl, @@ -142,21 +179,27 @@ int EVP_EncodeUpdate(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl, memcpy(&(ctx->enc_data[ctx->num]), in, i); in += i; inl -= i; - j = EVP_EncodeBlock(out, ctx->enc_data, ctx->length); + j = evp_encodeblock_int(ctx, out, ctx->enc_data, ctx->length); ctx->num = 0; out += j; - *(out++) = '\n'; + total = j; + if ((ctx->flags & EVP_ENCODE_CTX_NO_NEWLINES) == 0) { + *(out++) = '\n'; + total++; + } *out = '\0'; - total = j + 1; } while (inl >= ctx->length && total <= INT_MAX) { - j = EVP_EncodeBlock(out, in, ctx->length); + j = evp_encodeblock_int(ctx, out, in, ctx->length); in += ctx->length; inl -= ctx->length; out += j; - *(out++) = '\n'; + total += j; + if ((ctx->flags & EVP_ENCODE_CTX_NO_NEWLINES) == 0) { + *(out++) = '\n'; + total++; + } *out = '\0'; - total += j + 1; } if (total > INT_MAX) { /* Too much output data! */ @@ -176,35 +219,43 @@ void EVP_EncodeFinal(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl) unsigned int ret = 0; if (ctx->num != 0) { - ret = EVP_EncodeBlock(out, ctx->enc_data, ctx->num); - out[ret++] = '\n'; + ret = evp_encodeblock_int(ctx, out, ctx->enc_data, ctx->num); + if ((ctx->flags & EVP_ENCODE_CTX_NO_NEWLINES) == 0) + out[ret++] = '\n'; out[ret] = '\0'; ctx->num = 0; } *outl = ret; } -int EVP_EncodeBlock(unsigned char *t, const unsigned char *f, int dlen) +static int evp_encodeblock_int(EVP_ENCODE_CTX *ctx, unsigned char *t, + const unsigned char *f, int dlen) { int i, ret = 0; unsigned long l; + const unsigned char *table; + + if (ctx != NULL && (ctx->flags & EVP_ENCODE_CTX_USE_SRP_ALPHABET) != 0) + table = srpdata_bin2ascii; + else + table = data_bin2ascii; for (i = dlen; i > 0; i -= 3) { if (i >= 3) { l = (((unsigned long)f[0]) << 16L) | (((unsigned long)f[1]) << 8L) | f[2]; - *(t++) = conv_bin2ascii(l >> 18L); - *(t++) = conv_bin2ascii(l >> 12L); - *(t++) = conv_bin2ascii(l >> 6L); - *(t++) = conv_bin2ascii(l); + *(t++) = conv_bin2ascii(l >> 18L, table); + *(t++) = conv_bin2ascii(l >> 12L, table); + *(t++) = conv_bin2ascii(l >> 6L, table); + *(t++) = conv_bin2ascii(l, table); } else { l = ((unsigned long)f[0]) << 16L; if (i == 2) l |= ((unsigned long)f[1] << 8L); - *(t++) = conv_bin2ascii(l >> 18L); - *(t++) = conv_bin2ascii(l >> 12L); - *(t++) = (i == 1) ? '=' : conv_bin2ascii(l >> 6L); + *(t++) = conv_bin2ascii(l >> 18L, table); + *(t++) = conv_bin2ascii(l >> 12L, table); + *(t++) = (i == 1) ? '=' : conv_bin2ascii(l >> 6L, table); *(t++) = '='; } ret += 4; @@ -215,13 +266,18 @@ int EVP_EncodeBlock(unsigned char *t, const unsigned char *f, int dlen) return ret; } +int EVP_EncodeBlock(unsigned char *t, const unsigned char *f, int dlen) +{ + return evp_encodeblock_int(NULL, t, f, dlen); +} + void EVP_DecodeInit(EVP_ENCODE_CTX *ctx) { - /* Only ctx->num is used during decoding. */ + /* Only ctx->num and ctx->flags are used during decoding. */ ctx->num = 0; ctx->length = 0; ctx->line_num = 0; - ctx->expect_nl = 0; + ctx->flags = 0; } /*- @@ -249,6 +305,7 @@ int EVP_DecodeUpdate(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl, { int seof = 0, eof = 0, rv = -1, ret = 0, i, v, tmp, n, decoded_len; unsigned char *d; + const unsigned char *table; n = ctx->num; d = ctx->enc_data; @@ -265,9 +322,14 @@ int EVP_DecodeUpdate(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl, goto end; } + if ((ctx->flags & EVP_ENCODE_CTX_USE_SRP_ALPHABET) != 0) + table = srpdata_ascii2bin; + else + table = data_ascii2bin; + for (i = 0; i < inl; i++) { tmp = *(in++); - v = conv_ascii2bin(tmp); + v = conv_ascii2bin(tmp, table); if (v == B64_ERROR) { rv = -1; goto end; @@ -307,7 +369,7 @@ int EVP_DecodeUpdate(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl, } if (n == 64) { - decoded_len = EVP_DecodeBlock(out, d, n); + decoded_len = evp_decodeblock_int(ctx, out, d, n); n = 0; if (decoded_len < 0 || eof > decoded_len) { rv = -1; @@ -326,7 +388,7 @@ int EVP_DecodeUpdate(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl, tail: if (n > 0) { if ((n & 3) == 0) { - decoded_len = EVP_DecodeBlock(out, d, n); + decoded_len = evp_decodeblock_int(ctx, out, d, n); n = 0; if (decoded_len < 0 || eof > decoded_len) { rv = -1; @@ -348,13 +410,20 @@ end: return rv; } -int EVP_DecodeBlock(unsigned char *t, const unsigned char *f, int n) +static int evp_decodeblock_int(EVP_ENCODE_CTX *ctx, unsigned char *t, + const unsigned char *f, int n) { int i, ret = 0, a, b, c, d; unsigned long l; + const unsigned char *table; + + if (ctx != NULL && (ctx->flags & EVP_ENCODE_CTX_USE_SRP_ALPHABET) != 0) + table = srpdata_ascii2bin; + else + table = data_ascii2bin; /* trim white space from the start of the line. */ - while ((conv_ascii2bin(*f) == B64_WS) && (n > 0)) { + while ((conv_ascii2bin(*f, table) == B64_WS) && (n > 0)) { f++; n--; } @@ -363,17 +432,17 @@ int EVP_DecodeBlock(unsigned char *t, const unsigned char *f, int n) * strip off stuff at the end of the line ascii2bin values B64_WS, * B64_EOLN, B64_EOLN and B64_EOF */ - while ((n > 3) && (B64_NOT_BASE64(conv_ascii2bin(f[n - 1])))) + while ((n > 3) && (B64_NOT_BASE64(conv_ascii2bin(f[n - 1], table)))) n--; if (n % 4 != 0) return -1; for (i = 0; i < n; i += 4) { - a = conv_ascii2bin(*(f++)); - b = conv_ascii2bin(*(f++)); - c = conv_ascii2bin(*(f++)); - d = conv_ascii2bin(*(f++)); + a = conv_ascii2bin(*(f++), table); + b = conv_ascii2bin(*(f++), table); + c = conv_ascii2bin(*(f++), table); + d = conv_ascii2bin(*(f++), table); if ((a & 0x80) || (b & 0x80) || (c & 0x80) || (d & 0x80)) return -1; l = ((((unsigned long)a) << 18L) | @@ -387,13 +456,18 @@ int EVP_DecodeBlock(unsigned char *t, const unsigned char *f, int n) return ret; } +int EVP_DecodeBlock(unsigned char *t, const unsigned char *f, int n) +{ + return evp_decodeblock_int(NULL, t, f, n); +} + int EVP_DecodeFinal(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl) { int i; *outl = 0; if (ctx->num != 0) { - i = EVP_DecodeBlock(out, ctx->enc_data, ctx->num); + i = evp_decodeblock_int(ctx, out, ctx->enc_data, ctx->num); if (i < 0) return -1; ctx->num = 0; diff --git a/crypto/evp/evp_enc.c b/crypto/evp/evp_enc.c index 3176c615..38633410 100644 --- a/crypto/evp/evp_enc.c +++ b/crypto/evp/evp_enc.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -13,9 +13,9 @@ #include #include #include +#include #include #include "internal/evp_int.h" -#include "internal/rand.h" #include "evp_locl.h" int EVP_CIPHER_CTX_reset(EVP_CIPHER_CTX *c) @@ -579,14 +579,6 @@ int EVP_CIPHER_CTX_ctrl(EVP_CIPHER_CTX *ctx, int type, int arg, void *ptr) { int ret; - if (type == EVP_CTRL_GET_DRBG) { - *(RAND_DRBG **)ptr = ctx->drbg; - return 1; - } - if (type == EVP_CTRL_SET_DRBG) { - ctx->drbg = ptr; - return 1; - } if (!ctx->cipher) { EVPerr(EVP_F_EVP_CIPHER_CTX_CTRL, EVP_R_NO_CIPHER_SET); return 0; @@ -610,12 +602,8 @@ int EVP_CIPHER_CTX_rand_key(EVP_CIPHER_CTX *ctx, unsigned char *key) { if (ctx->cipher->flags & EVP_CIPH_RAND_KEY) return EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_RAND_KEY, 0, key); - if (ctx->drbg) { - if (RAND_DRBG_bytes(ctx->drbg, key, ctx->key_len) == 0) - return 0; - } else if (RAND_bytes(key, ctx->key_len) <= 0) { + if (RAND_priv_bytes(key, ctx->key_len) <= 0) return 0; - } return 1; } diff --git a/crypto/evp/evp_err.c b/crypto/evp/evp_err.c index a43de746..01ed97ed 100644 --- a/crypto/evp/evp_err.c +++ b/crypto/evp/evp_err.c @@ -15,14 +15,17 @@ static const ERR_STRING_DATA EVP_str_functs[] = { {ERR_PACK(ERR_LIB_EVP, EVP_F_AESNI_INIT_KEY, 0), "aesni_init_key"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_AES_GCM_CTRL, 0), "aes_gcm_ctrl"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_AES_INIT_KEY, 0), "aes_init_key"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_AES_OCB_CIPHER, 0), "aes_ocb_cipher"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_AES_T4_INIT_KEY, 0), "aes_t4_init_key"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_AES_WRAP_CIPHER, 0), "aes_wrap_cipher"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_ALG_MODULE_INIT, 0), "alg_module_init"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_ARIA_CCM_INIT_KEY, 0), "aria_ccm_init_key"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_ARIA_GCM_CTRL, 0), "aria_gcm_ctrl"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_ARIA_GCM_INIT_KEY, 0), "aria_gcm_init_key"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_ARIA_INIT_KEY, 0), "aria_init_key"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_B64_NEW, 0), "b64_new"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_CAMELLIA_INIT_KEY, 0), "camellia_init_key"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_CHACHA20_POLY1305_CTRL, 0), "chacha20_poly1305_ctrl"}, @@ -30,6 +33,7 @@ static const ERR_STRING_DATA EVP_str_functs[] = { {ERR_PACK(ERR_LIB_EVP, EVP_F_DES_EDE3_WRAP_CIPHER, 0), "des_ede3_wrap_cipher"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_DO_SIGVER_INIT, 0), "do_sigver_init"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_ENC_NEW, 0), "enc_new"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_CIPHERINIT_EX, 0), "EVP_CipherInit_ex"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_CIPHER_CTX_COPY, 0), "EVP_CIPHER_CTX_copy"}, @@ -92,7 +96,15 @@ static const ERR_STRING_DATA EVP_str_functs[] = { {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_PKEY_KEYGEN, 0), "EVP_PKEY_keygen"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_PKEY_KEYGEN_INIT, 0), "EVP_PKEY_keygen_init"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_PKEY_METH_ADD0, 0), "EVP_PKEY_meth_add0"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_PKEY_METH_NEW, 0), "EVP_PKEY_meth_new"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_PKEY_NEW, 0), "EVP_PKEY_new"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_PKEY_NEW_CMAC_KEY, 0), + "EVP_PKEY_new_CMAC_key"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_PKEY_NEW_RAW_PRIVATE_KEY, 0), + "EVP_PKEY_new_raw_private_key"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_PKEY_NEW_RAW_PUBLIC_KEY, 0), + "EVP_PKEY_new_raw_public_key"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_PKEY_PARAMGEN, 0), "EVP_PKEY_paramgen"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_PKEY_PARAMGEN_INIT, 0), "EVP_PKEY_paramgen_init"}, @@ -114,6 +126,7 @@ static const ERR_STRING_DATA EVP_str_functs[] = { {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_SIGNFINAL, 0), "EVP_SignFinal"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_EVP_VERIFYFINAL, 0), "EVP_VerifyFinal"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_INT_CTX_NEW, 0), "int_ctx_new"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_OK_NEW, 0), "ok_new"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_PKCS5_PBE_KEYIVGEN, 0), "PKCS5_PBE_keyivgen"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_PKCS5_V2_PBE_KEYIVGEN, 0), "PKCS5_v2_PBE_keyivgen"}, @@ -124,6 +137,7 @@ static const ERR_STRING_DATA EVP_str_functs[] = { {ERR_PACK(ERR_LIB_EVP, EVP_F_PKEY_SET_TYPE, 0), "pkey_set_type"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_RC2_MAGIC_TO_METH, 0), "rc2_magic_to_meth"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_RC5_CTRL, 0), "rc5_ctrl"}, + {ERR_PACK(ERR_LIB_EVP, EVP_F_S390X_AES_GCM_CTRL, 0), "s390x_aes_gcm_ctrl"}, {ERR_PACK(ERR_LIB_EVP, EVP_F_UPDATE, 0), "update"}, {0, NULL} }; @@ -183,6 +197,7 @@ static const ERR_STRING_DATA EVP_str_reasons[] = { {ERR_PACK(ERR_LIB_EVP, 0, EVP_R_INVALID_KEY_LENGTH), "invalid key length"}, {ERR_PACK(ERR_LIB_EVP, 0, EVP_R_INVALID_OPERATION), "invalid operation"}, {ERR_PACK(ERR_LIB_EVP, 0, EVP_R_KEYGEN_FAILURE), "keygen failure"}, + {ERR_PACK(ERR_LIB_EVP, 0, EVP_R_KEY_SETUP_FAILED), "key setup failed"}, {ERR_PACK(ERR_LIB_EVP, 0, EVP_R_MEMORY_LIMIT_EXCEEDED), "memory limit exceeded"}, {ERR_PACK(ERR_LIB_EVP, 0, EVP_R_MESSAGE_DIGEST_IS_NULL), @@ -205,6 +220,7 @@ static const ERR_STRING_DATA EVP_str_reasons[] = { "operaton not initialized"}, {ERR_PACK(ERR_LIB_EVP, 0, EVP_R_PARTIALLY_OVERLAPPING), "partially overlapping buffers"}, + {ERR_PACK(ERR_LIB_EVP, 0, EVP_R_PBKDF2_ERROR), "pbkdf2 error"}, {ERR_PACK(ERR_LIB_EVP, 0, EVP_R_PKEY_APPLICATION_ASN1_METHOD_ALREADY_REGISTERED), "pkey application asn1 method already registered"}, {ERR_PACK(ERR_LIB_EVP, 0, EVP_R_PRIVATE_KEY_DECODE_ERROR), diff --git a/crypto/evp/evp_locl.h b/crypto/evp/evp_locl.h index 82b9433f..f1589d68 100644 --- a/crypto/evp/evp_locl.h +++ b/crypto/evp/evp_locl.h @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -39,7 +39,6 @@ struct evp_cipher_ctx_st { int final_used; int block_mask; unsigned char final[EVP_MAX_BLOCK_LENGTH]; /* possible final block */ - RAND_DRBG *drbg; } /* EVP_CIPHER_CTX */ ; int PKCS5_v2_PBKDF2_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, @@ -60,7 +59,7 @@ struct evp_Encode_Ctx_st { unsigned char enc_data[80]; /* number read on current line */ int line_num; - int expect_nl; + unsigned int flags; }; typedef struct evp_pbe_st EVP_PBE_CTL; diff --git a/crypto/evp/p_lib.c b/crypto/evp/p_lib.c index 6177e044..e4d2bb18 100644 --- a/crypto/evp/p_lib.c +++ b/crypto/evp/p_lib.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -18,6 +18,7 @@ #include #include #include +#include #include #include "internal/asn1_int.h" @@ -174,10 +175,12 @@ int EVP_PKEY_up_ref(EVP_PKEY *pkey) * is NULL just return 1 or 0 if the algorithm exists. */ -static int pkey_set_type(EVP_PKEY *pkey, int type, const char *str, int len) +static int pkey_set_type(EVP_PKEY *pkey, ENGINE *e, int type, const char *str, + int len) { const EVP_PKEY_ASN1_METHOD *ameth; - ENGINE *e = NULL; + ENGINE **eptr = (e == NULL) ? &e : NULL; + if (pkey) { if (pkey->pkey.ptr) EVP_PKEY_free_it(pkey); @@ -196,11 +199,11 @@ static int pkey_set_type(EVP_PKEY *pkey, int type, const char *str, int len) #endif } if (str) - ameth = EVP_PKEY_asn1_find_str(&e, str, len); + ameth = EVP_PKEY_asn1_find_str(eptr, str, len); else - ameth = EVP_PKEY_asn1_find(&e, type); + ameth = EVP_PKEY_asn1_find(eptr, type); #ifndef OPENSSL_NO_ENGINE - if (pkey == NULL) + if (pkey == NULL && eptr != NULL) ENGINE_finish(e); #endif if (ameth == NULL) { @@ -217,14 +220,107 @@ static int pkey_set_type(EVP_PKEY *pkey, int type, const char *str, int len) return 1; } +EVP_PKEY *EVP_PKEY_new_raw_private_key(int type, ENGINE *e, + const unsigned char *priv, + size_t len) +{ + EVP_PKEY *ret = EVP_PKEY_new(); + + if (ret == NULL + || !pkey_set_type(ret, e, type, NULL, -1)) { + /* EVPerr already called */ + goto err; + } + + if (ret->ameth->set_priv_key == NULL) { + EVPerr(EVP_F_EVP_PKEY_NEW_RAW_PRIVATE_KEY, + EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE); + goto err; + } + + if (!ret->ameth->set_priv_key(ret, priv, len)) { + EVPerr(EVP_F_EVP_PKEY_NEW_RAW_PRIVATE_KEY, EVP_R_KEY_SETUP_FAILED); + goto err; + } + + return ret; + + err: + EVP_PKEY_free(ret); + return NULL; +} + +EVP_PKEY *EVP_PKEY_new_raw_public_key(int type, ENGINE *e, + const unsigned char *pub, + size_t len) +{ + EVP_PKEY *ret = EVP_PKEY_new(); + + if (ret == NULL + || !pkey_set_type(ret, e, type, NULL, -1)) { + /* EVPerr already called */ + goto err; + } + + if (ret->ameth->set_pub_key == NULL) { + EVPerr(EVP_F_EVP_PKEY_NEW_RAW_PUBLIC_KEY, + EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE); + goto err; + } + + if (!ret->ameth->set_pub_key(ret, pub, len)) { + EVPerr(EVP_F_EVP_PKEY_NEW_RAW_PUBLIC_KEY, EVP_R_KEY_SETUP_FAILED); + goto err; + } + + return ret; + + err: + EVP_PKEY_free(ret); + return NULL; +} + +EVP_PKEY *EVP_PKEY_new_CMAC_key(ENGINE *e, const unsigned char *priv, + size_t len, const EVP_CIPHER *cipher) +{ +#ifndef OPENSSL_NO_CMAC + EVP_PKEY *ret = EVP_PKEY_new(); + CMAC_CTX *cmctx = CMAC_CTX_new(); + + if (ret == NULL + || cmctx == NULL + || !pkey_set_type(ret, e, EVP_PKEY_CMAC, NULL, -1)) { + /* EVPerr already called */ + goto err; + } + + if (!CMAC_Init(cmctx, priv, len, cipher, e)) { + EVPerr(EVP_F_EVP_PKEY_NEW_CMAC_KEY, EVP_R_KEY_SETUP_FAILED); + goto err; + } + + ret->pkey.ptr = cmctx; + return ret; + + err: + EVP_PKEY_free(ret); + CMAC_CTX_free(cmctx); + return NULL; +#else + EVPerr(EVP_F_EVP_PKEY_NEW_CMAC_KEY, + EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE); + return NULL; +#endif +} + int EVP_PKEY_set_type(EVP_PKEY *pkey, int type) { - return pkey_set_type(pkey, type, NULL, -1); + return pkey_set_type(pkey, NULL, type, NULL, -1); } int EVP_PKEY_set_type_str(EVP_PKEY *pkey, const char *str, int len) { - return pkey_set_type(pkey, EVP_PKEY_NONE, str, len); + return pkey_set_type(pkey, NULL, EVP_PKEY_NONE, str, len); } #ifndef OPENSSL_NO_ENGINE int EVP_PKEY_set1_engine(EVP_PKEY *pkey, ENGINE *e) diff --git a/crypto/evp/p_seal.c b/crypto/evp/p_seal.c index 3b79dab8..50ea6023 100644 --- a/crypto/evp/p_seal.c +++ b/crypto/evp/p_seal.c @@ -14,8 +14,6 @@ #include #include #include -#include -#include "evp_locl.h" int EVP_SealInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *type, unsigned char **ek, int *ekl, unsigned char *iv, @@ -33,14 +31,9 @@ int EVP_SealInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *type, return 1; if (EVP_CIPHER_CTX_rand_key(ctx, key) <= 0) return 0; - if (EVP_CIPHER_CTX_iv_length(ctx)) { - if (ctx->drbg) { - if (RAND_DRBG_bytes(ctx->drbg, iv, EVP_CIPHER_CTX_iv_length(ctx)) == 0) - return 0; - } else if (RAND_bytes(iv, EVP_CIPHER_CTX_iv_length(ctx)) <= 0) { - return 0; - } - } + if (EVP_CIPHER_CTX_iv_length(ctx) + && RAND_bytes(iv, EVP_CIPHER_CTX_iv_length(ctx)) <= 0) + return 0; if (!EVP_EncryptInit_ex(ctx, NULL, NULL, key, iv)) return 0; diff --git a/crypto/evp/pbe_scrypt.c b/crypto/evp/pbe_scrypt.c index fddabc9a..57da82f3 100644 --- a/crypto/evp/pbe_scrypt.c +++ b/crypto/evp/pbe_scrypt.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -170,8 +170,10 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, if (r == 0 || p == 0 || N < 2 || (N & (N - 1))) return 0; /* Check p * r < SCRYPT_PR_MAX avoiding overflow */ - if (p > SCRYPT_PR_MAX / r) + if (p > SCRYPT_PR_MAX / r) { + EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_MEMORY_LIMIT_EXCEEDED); return 0; + } /* * Need to check N: if 2^(128 * r / 8) overflows limit this is @@ -179,8 +181,10 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, */ if (16 * r <= LOG2_UINT64_MAX) { - if (N >= (((uint64_t)1) << (16 * r))) + if (N >= (((uint64_t)1) << (16 * r))) { + EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_MEMORY_LIMIT_EXCEEDED); return 0; + } } /* Memory checks: check total allocated buffer size fits in uint64_t */ @@ -205,13 +209,17 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, * This is combined size V, X and T (section 4) */ i = UINT64_MAX / (32 * sizeof(uint32_t)); - if (N + 2 > i / r) + if (N + 2 > i / r) { + EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_MEMORY_LIMIT_EXCEEDED); return 0; + } Vlen = 32 * r * (N + 2) * sizeof(uint32_t); /* check total allocated size fits in uint64_t */ - if (Blen > UINT64_MAX - Vlen) + if (Blen > UINT64_MAX - Vlen) { + EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_MEMORY_LIMIT_EXCEEDED); return 0; + } if (maxmem == 0) maxmem = SCRYPT_MAX_MEM; @@ -230,8 +238,10 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, return 1; B = OPENSSL_malloc((size_t)(Blen + Vlen)); - if (B == NULL) + if (B == NULL) { + EVPerr(EVP_F_EVP_PBE_SCRYPT, ERR_R_MALLOC_FAILURE); return 0; + } X = (uint32_t *)(B + Blen); T = X + 32 * r; V = T + 32 * r; @@ -247,6 +257,9 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, goto err; rv = 1; err: + if (rv == 0) + EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_PBKDF2_ERROR); + OPENSSL_clear_free(B, (size_t)(Blen + Vlen)); return rv; } diff --git a/crypto/evp/pmeth_lib.c b/crypto/evp/pmeth_lib.c index d3b81367..cf4dd439 100644 --- a/crypto/evp/pmeth_lib.c +++ b/crypto/evp/pmeth_lib.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -123,7 +123,6 @@ static EVP_PKEY_CTX *int_ctx_new(EVP_PKEY *pkey, ENGINE *e, int id) * If an ENGINE handled this method look it up. Otherwise use internal * tables. */ - if (e) pmeth = ENGINE_get_pkey_meth(e, id); else @@ -169,8 +168,10 @@ EVP_PKEY_METHOD *EVP_PKEY_meth_new(int id, int flags) EVP_PKEY_METHOD *pmeth; pmeth = OPENSSL_zalloc(sizeof(*pmeth)); - if (pmeth == NULL) + if (pmeth == NULL) { + EVPerr(EVP_F_EVP_PKEY_METH_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } pmeth->pkey_id = id; pmeth->flags = flags | EVP_PKEY_FLAG_DYNAMIC; @@ -258,8 +259,10 @@ EVP_PKEY_CTX *EVP_PKEY_CTX_dup(EVP_PKEY_CTX *pctx) } #endif rctx = OPENSSL_malloc(sizeof(*rctx)); - if (rctx == NULL) + if (rctx == NULL) { + EVPerr(EVP_F_EVP_PKEY_CTX_DUP, ERR_R_MALLOC_FAILURE); return NULL; + } rctx->pmeth = pctx->pmeth; #ifndef OPENSSL_NO_ENGINE @@ -293,11 +296,15 @@ int EVP_PKEY_meth_add0(const EVP_PKEY_METHOD *pmeth) { if (app_pkey_methods == NULL) { app_pkey_methods = sk_EVP_PKEY_METHOD_new(pmeth_cmp); - if (app_pkey_methods == NULL) + if (app_pkey_methods == NULL){ + EVPerr(EVP_F_EVP_PKEY_METH_ADD0, ERR_R_MALLOC_FAILURE); return 0; + } } - if (!sk_EVP_PKEY_METHOD_push(app_pkey_methods, pmeth)) + if (!sk_EVP_PKEY_METHOD_push(app_pkey_methods, pmeth)) { + EVPerr(EVP_F_EVP_PKEY_METH_ADD0, ERR_R_MALLOC_FAILURE); return 0; + } sk_EVP_PKEY_METHOD_sort(app_pkey_methods); return 1; } @@ -644,26 +651,26 @@ void EVP_PKEY_meth_set_param_check(EVP_PKEY_METHOD *pmeth, pmeth->param_check = check; } -void EVP_PKEY_meth_get_init(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_init(const EVP_PKEY_METHOD *pmeth, int (**pinit) (EVP_PKEY_CTX *ctx)) { *pinit = pmeth->init; } -void EVP_PKEY_meth_get_copy(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_copy(const EVP_PKEY_METHOD *pmeth, int (**pcopy) (EVP_PKEY_CTX *dst, EVP_PKEY_CTX *src)) { *pcopy = pmeth->copy; } -void EVP_PKEY_meth_get_cleanup(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_cleanup(const EVP_PKEY_METHOD *pmeth, void (**pcleanup) (EVP_PKEY_CTX *ctx)) { *pcleanup = pmeth->cleanup; } -void EVP_PKEY_meth_get_paramgen(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_paramgen(const EVP_PKEY_METHOD *pmeth, int (**pparamgen_init) (EVP_PKEY_CTX *ctx), int (**pparamgen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)) @@ -674,7 +681,7 @@ void EVP_PKEY_meth_get_paramgen(EVP_PKEY_METHOD *pmeth, *pparamgen = pmeth->paramgen; } -void EVP_PKEY_meth_get_keygen(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_keygen(const EVP_PKEY_METHOD *pmeth, int (**pkeygen_init) (EVP_PKEY_CTX *ctx), int (**pkeygen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)) @@ -685,7 +692,7 @@ void EVP_PKEY_meth_get_keygen(EVP_PKEY_METHOD *pmeth, *pkeygen = pmeth->keygen; } -void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_sign(const EVP_PKEY_METHOD *pmeth, int (**psign_init) (EVP_PKEY_CTX *ctx), int (**psign) (EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen, @@ -698,7 +705,7 @@ void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth, *psign = pmeth->sign; } -void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verify(const EVP_PKEY_METHOD *pmeth, int (**pverify_init) (EVP_PKEY_CTX *ctx), int (**pverify) (EVP_PKEY_CTX *ctx, const unsigned char *sig, @@ -712,7 +719,7 @@ void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth, *pverify = pmeth->verify; } -void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verify_recover(const EVP_PKEY_METHOD *pmeth, int (**pverify_recover_init) (EVP_PKEY_CTX *ctx), int (**pverify_recover) (EVP_PKEY_CTX @@ -730,7 +737,7 @@ void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth, *pverify_recover = pmeth->verify_recover; } -void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_signctx(const EVP_PKEY_METHOD *pmeth, int (**psignctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx), int (**psignctx) (EVP_PKEY_CTX *ctx, @@ -744,7 +751,7 @@ void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth, *psignctx = pmeth->signctx; } -void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verifyctx(const EVP_PKEY_METHOD *pmeth, int (**pverifyctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx), int (**pverifyctx) (EVP_PKEY_CTX *ctx, @@ -758,7 +765,7 @@ void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth, *pverifyctx = pmeth->verifyctx; } -void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_encrypt(const EVP_PKEY_METHOD *pmeth, int (**pencrypt_init) (EVP_PKEY_CTX *ctx), int (**pencryptfn) (EVP_PKEY_CTX *ctx, unsigned char *out, @@ -772,7 +779,7 @@ void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth, *pencryptfn = pmeth->encrypt; } -void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_decrypt(const EVP_PKEY_METHOD *pmeth, int (**pdecrypt_init) (EVP_PKEY_CTX *ctx), int (**pdecrypt) (EVP_PKEY_CTX *ctx, unsigned char *out, @@ -786,7 +793,7 @@ void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, *pdecrypt = pmeth->decrypt; } -void EVP_PKEY_meth_get_derive(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_derive(const EVP_PKEY_METHOD *pmeth, int (**pderive_init) (EVP_PKEY_CTX *ctx), int (**pderive) (EVP_PKEY_CTX *ctx, unsigned char *key, @@ -798,7 +805,7 @@ void EVP_PKEY_meth_get_derive(EVP_PKEY_METHOD *pmeth, *pderive = pmeth->derive; } -void EVP_PKEY_meth_get_ctrl(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_ctrl(const EVP_PKEY_METHOD *pmeth, int (**pctrl) (EVP_PKEY_CTX *ctx, int type, int p1, void *p2), int (**pctrl_str) (EVP_PKEY_CTX *ctx, @@ -811,21 +818,21 @@ void EVP_PKEY_meth_get_ctrl(EVP_PKEY_METHOD *pmeth, *pctrl_str = pmeth->ctrl_str; } -void EVP_PKEY_meth_get_check(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_check(const EVP_PKEY_METHOD *pmeth, int (**pcheck) (EVP_PKEY *pkey)) { if (*pcheck) *pcheck = pmeth->check; } -void EVP_PKEY_meth_get_public_check(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_public_check(const EVP_PKEY_METHOD *pmeth, int (**pcheck) (EVP_PKEY *pkey)) { if (*pcheck) *pcheck = pmeth->public_check; } -void EVP_PKEY_meth_get_param_check(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_param_check(const EVP_PKEY_METHOD *pmeth, int (**pcheck) (EVP_PKEY *pkey)) { if (*pcheck) diff --git a/crypto/ex_data.c b/crypto/ex_data.c index ed9820cf..08dc7c40 100644 --- a/crypto/ex_data.c +++ b/crypto/ex_data.c @@ -37,7 +37,8 @@ static CRYPTO_ONCE ex_data_init = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE_STATIC(do_ex_data_init) { - OPENSSL_init_crypto(0, NULL); + if (!OPENSSL_init_crypto(0, NULL)) + return 0; ex_data_lock = CRYPTO_THREAD_lock_new(); return ex_data_lock != NULL; } diff --git a/crypto/hmac/hm_ameth.c b/crypto/hmac/hm_ameth.c index 4d830b8d..b786db07 100644 --- a/crypto/hmac/hm_ameth.c +++ b/crypto/hmac/hm_ameth.c @@ -1,5 +1,5 @@ /* - * Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2007-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -11,6 +11,7 @@ #include "internal/cryptlib.h" #include #include "internal/asn1_int.h" +#include "internal/evp_int.h" /* * HMAC "ASN1" method. This is just here to indicate the maximum HMAC output @@ -49,6 +50,28 @@ static int hmac_pkey_public_cmp(const EVP_PKEY *a, const EVP_PKEY *b) return ASN1_OCTET_STRING_cmp(EVP_PKEY_get0(a), EVP_PKEY_get0(b)); } +static int hmac_set_priv_key(EVP_PKEY *pkey, const unsigned char *priv, + size_t len) +{ + ASN1_OCTET_STRING *os; + + if (pkey->pkey.ptr != NULL) + return 0; + + os = ASN1_OCTET_STRING_new(); + if (os == NULL) + return 0; + + + if (!ASN1_OCTET_STRING_set(os, priv, len)) { + ASN1_OCTET_STRING_free(os); + return 0; + } + + pkey->pkey.ptr = os; + return 1; +} + const EVP_PKEY_ASN1_METHOD hmac_asn1_meth = { EVP_PKEY_HMAC, EVP_PKEY_HMAC, @@ -67,5 +90,17 @@ const EVP_PKEY_ASN1_METHOD hmac_asn1_meth = { hmac_key_free, hmac_pkey_ctrl, - 0, 0 + NULL, + NULL, + + NULL, + NULL, + NULL, + + NULL, + NULL, + NULL, + + hmac_set_priv_key, + NULL, }; diff --git a/crypto/hmac/hm_pmeth.c b/crypto/hmac/hm_pmeth.c index 5b98477f..55dd27d6 100644 --- a/crypto/hmac/hm_pmeth.c +++ b/crypto/hmac/hm_pmeth.c @@ -1,5 +1,5 @@ /* - * Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2007-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -13,6 +13,7 @@ #include #include #include +#include #include "internal/evp_int.h" /* HMAC pkey context structure */ @@ -27,9 +28,10 @@ static int pkey_hmac_init(EVP_PKEY_CTX *ctx) { HMAC_PKEY_CTX *hctx; - hctx = OPENSSL_zalloc(sizeof(*hctx)); - if (hctx == NULL) + if ((hctx = OPENSSL_zalloc(sizeof(*hctx))) == NULL) { + CRYPTOerr(CRYPTO_F_PKEY_HMAC_INIT, ERR_R_MALLOC_FAILURE); return 0; + } hctx->ktmp.type = V_ASN1_OCTET_STRING; hctx->ctx = HMAC_CTX_new(); if (hctx->ctx == NULL) { diff --git a/crypto/include/internal/asn1_int.h b/crypto/include/internal/asn1_int.h index 664d4d69..fdd5f1e6 100644 --- a/crypto/include/internal/asn1_int.h +++ b/crypto/include/internal/asn1_int.h @@ -1,5 +1,5 @@ /* - * Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -58,6 +58,9 @@ struct evp_pkey_asn1_method_st { int (*pkey_check) (const EVP_PKEY *pk); int (*pkey_public_check) (const EVP_PKEY *pk); int (*pkey_param_check) (const EVP_PKEY *pk); + /* Get/set raw private/public key data */ + int (*set_priv_key) (EVP_PKEY *pk, const unsigned char *priv, size_t len); + int (*set_pub_key) (EVP_PKEY *pk, const unsigned char *pub, size_t len); } /* EVP_PKEY_ASN1_METHOD */ ; DEFINE_STACK_OF_CONST(EVP_PKEY_ASN1_METHOD) diff --git a/crypto/include/internal/async.h b/crypto/include/internal/async.h index db56258f..dc8e937b 100644 --- a/crypto/include/internal/async.h +++ b/crypto/include/internal/async.h @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -11,4 +11,5 @@ int async_init(void); void async_deinit(void); +void async_delete_thread_state(void); diff --git a/crypto/include/internal/cryptlib_int.h b/crypto/include/internal/cryptlib_int.h index 3dddf082..38b5dac9 100644 --- a/crypto/include/internal/cryptlib_int.h +++ b/crypto/include/internal/cryptlib_int.h @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -14,6 +14,7 @@ struct thread_local_inits_st { int async; int err_state; + int rand; }; int ossl_init_thread_start(uint64_t opts); @@ -24,9 +25,11 @@ int ossl_init_thread_start(uint64_t opts); * use". */ # define OPENSSL_INIT_ZLIB 0x00010000L +# define OPENSSL_INIT_BASE_ONLY 0x00040000L /* OPENSSL_INIT_THREAD flags */ # define OPENSSL_INIT_THREAD_ASYNC 0x01 # define OPENSSL_INIT_THREAD_ERR_STATE 0x02 +# define OPENSSL_INIT_THREAD_RAND 0x04 void ossl_malloc_setup_failures(void); diff --git a/crypto/include/internal/dso_conf.h.in b/crypto/include/internal/dso_conf.h.in index daa5e247..d6e9d1b1 100644 --- a/crypto/include/internal/dso_conf.h.in +++ b/crypto/include/internal/dso_conf.h.in @@ -1,6 +1,6 @@ {- join("\n",map { "/* $_ */" } @autowarntext) -} /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -10,6 +10,21 @@ #ifndef HEADER_DSO_CONF_H # define HEADER_DSO_CONF_H - +{- output_off() if $disabled{dso} -} +{- # The DSO code currently always implements all functions so that no + # applications will have to worry about that from a compilation point + # of view. However, the "method"s may return zero unless that platform + # has support compiled in for them. Currently each method is enabled + # by a define "DSO_" ... we translate the "dso_scheme" config + # string entry into using the following logic; + my $scheme = uc $target{dso_scheme}; + my @macros = ( "DSO_$scheme" ); + if ($scheme eq 'DLFCN') { + @macros = ( "DSO_DLFCN", "HAVE_DLFCN_H" ); + } elsif ($scheme eq "DLFCN_NO_H") { + @macros = ( "DSO_DLFCN" ); + } + join("\n", map { "# define $_" } @macros); -} # define DSO_EXTENSION "{- $target{dso_extension} -}" +{- output_on() if $disabled{dso} -} #endif diff --git a/crypto/include/internal/err_int.h b/crypto/include/internal/err_int.h index 7fec3ed7..44ac9446 100644 --- a/crypto/include/internal/err_int.h +++ b/crypto/include/internal/err_int.h @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -13,5 +13,7 @@ int err_load_crypto_strings_int(void); void err_cleanup(void); void err_delete_thread_state(void); +int err_shelve_state(void **); +void err_unshelve_state(void *); #endif diff --git a/crypto/include/internal/evp_int.h b/crypto/include/internal/evp_int.h index 77c87313..691b28b3 100644 --- a/crypto/include/internal/evp_int.h +++ b/crypto/include/internal/evp_int.h @@ -7,6 +7,7 @@ * https://www.openssl.org/source/license.html */ +#include #include "internal/refcount.h" struct evp_pkey_ctx_st { @@ -422,3 +423,11 @@ void evp_app_cleanup_int(void); #ifndef TLS1_1_VERSION # define TLS1_1_VERSION 0x0302 #endif + +void evp_encode_ctx_set_flags(EVP_ENCODE_CTX *ctx, unsigned int flags); + +/* EVP_ENCODE_CTX flags */ +/* Don't generate new lines when encoding */ +#define EVP_ENCODE_CTX_NO_NEWLINES 1 +/* Use the SRP base64 alphabet instead of the standard one */ +#define EVP_ENCODE_CTX_USE_SRP_ALPHABET 2 diff --git a/crypto/include/internal/rand_int.h b/crypto/include/internal/rand_int.h index fc1abd97..daec926c 100644 --- a/crypto/include/internal/rand_int.h +++ b/crypto/include/internal/rand_int.h @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -15,8 +15,100 @@ * or in the file LICENSE in the source distribution. */ -#include +#ifndef HEADER_RAND_INT_H +# define HEADER_RAND_INT_H + +# include + +/* forward declaration */ +typedef struct rand_pool_st RAND_POOL; void rand_cleanup_int(void); void rand_drbg_cleanup_int(void); +void drbg_delete_thread_state(void); void rand_fork(void); + +/* Hardware-based seeding functions. */ +size_t rand_acquire_entropy_from_tsc(RAND_POOL *pool); +size_t rand_acquire_entropy_from_cpu(RAND_POOL *pool); + +/* DRBG entropy callbacks. */ +size_t rand_drbg_get_entropy(RAND_DRBG *drbg, + unsigned char **pout, + int entropy, size_t min_len, size_t max_len, + int prediction_resistance); +void rand_drbg_cleanup_entropy(RAND_DRBG *drbg, + unsigned char *out, size_t outlen); +size_t rand_drbg_get_nonce(RAND_DRBG *drbg, + unsigned char **pout, + int entropy, size_t min_len, size_t max_len); +void rand_drbg_cleanup_nonce(RAND_DRBG *drbg, + unsigned char *out, size_t outlen); + +size_t rand_drbg_get_additional_data(unsigned char **pout, size_t max_len); + +void rand_drbg_cleanup_additional_data(unsigned char *out, size_t outlen); + +/* + * RAND_POOL functions + */ +RAND_POOL *rand_pool_new(int entropy_requested, size_t min_len, size_t max_len); +void rand_pool_free(RAND_POOL *pool); + +const unsigned char *rand_pool_buffer(RAND_POOL *pool); +unsigned char *rand_pool_detach(RAND_POOL *pool); + +size_t rand_pool_entropy(RAND_POOL *pool); +size_t rand_pool_length(RAND_POOL *pool); + +size_t rand_pool_entropy_available(RAND_POOL *pool); +size_t rand_pool_entropy_needed(RAND_POOL *pool); +/* |entropy_factor| expresses how many bits of data contain 1 bit of entropy */ +size_t rand_pool_bytes_needed(RAND_POOL *pool, unsigned int entropy_factor); +size_t rand_pool_bytes_remaining(RAND_POOL *pool); + +int rand_pool_add(RAND_POOL *pool, + const unsigned char *buffer, size_t len, size_t entropy); +unsigned char *rand_pool_add_begin(RAND_POOL *pool, size_t len); +int rand_pool_add_end(RAND_POOL *pool, size_t len, size_t entropy); + + +/* + * Add random bytes to the pool to acquire requested amount of entropy + * + * This function is platform specific and tries to acquire the requested + * amount of entropy by polling platform specific entropy sources. + * + * If the function succeeds in acquiring at least |entropy_requested| bits + * of entropy, the total entropy count is returned. If it fails, it returns + * an entropy count of 0. + */ +size_t rand_pool_acquire_entropy(RAND_POOL *pool); + +/* + * Add some application specific nonce data + * + * This function is platform specific and adds some application specific + * data to the nonce used for instantiating the drbg. + * + * This data currently consists of the process and thread id, and a high + * resolution timestamp. The data does not include an atomic counter, + * because that is added by the calling function rand_drbg_get_nonce(). + * + * Returns 1 on success and 0 on failure. + */ +int rand_pool_add_nonce_data(RAND_POOL *pool); + + +/* + * Add some platform specific additional data + * + * This function is platform specific and adds some random noise to the + * additional data used for generating random bytes and for reseeding + * the drbg. + * + * Returns 1 on success and 0 on failure. + */ +int rand_pool_add_additional_data(RAND_POOL *pool); + +#endif diff --git a/crypto/init.c b/crypto/init.c index 4a88e9cc..2c8b48ff 100644 --- a/crypto/init.c +++ b/crypto/init.c @@ -24,6 +24,7 @@ #include #include #include "internal/thread_once.h" +#include "internal/dso_conf.h" #include "internal/dso.h" #include "internal/store.h" @@ -80,22 +81,36 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_base) * We use a dummy thread local key here. We use the destructor to detect * when the thread is going to stop (where that feature is available) */ - CRYPTO_THREAD_init_local(&threadstopkey, ossl_init_thread_stop_wrap); -#ifndef OPENSSL_SYS_UEFI - atexit(OPENSSL_cleanup); -#endif - if ((init_lock = CRYPTO_THREAD_lock_new()) == NULL) + if (!CRYPTO_THREAD_init_local(&threadstopkey, ossl_init_thread_stop_wrap)) return 0; + if ((init_lock = CRYPTO_THREAD_lock_new()) == NULL) + goto err; +#ifndef OPENSSL_SYS_UEFI + if (atexit(OPENSSL_cleanup) != 0) + goto err; +#endif OPENSSL_cpuid_setup(); - /* - * BIG FAT WARNING! - * Everything needed to be initialized in this function before threads - * come along MUST happen before base_inited is set to 1, or we will - * see race conditions. - */ base_inited = 1; + return 1; +err: +#ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: ossl_init_base not ok!\n"); +#endif + CRYPTO_THREAD_lock_free(init_lock); + init_lock = NULL; + + CRYPTO_THREAD_cleanup_local(&threadstopkey); + return 0; +} + +static CRYPTO_ONCE load_crypto_nodelete = CRYPTO_ONCE_STATIC_INIT; +DEFINE_RUN_ONCE_STATIC(ossl_init_load_crypto_nodelete) +{ +#ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: ossl_init_load_crypto_nodelete()\n"); +#endif #if !defined(OPENSSL_NO_DSO) && !defined(OPENSSL_USE_NODELETE) # ifdef DSO_WIN32 { @@ -107,6 +122,10 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_base) | GET_MODULE_HANDLE_EX_FLAG_PIN, (void *)&base_inited, &handle); +# ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: obtained DSO reference? %s\n", + (ret == TRUE ? "No!" : "Yes.")); +# endif return (ret == TRUE) ? 1 : 0; } # else @@ -115,12 +134,24 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_base) * to remain loaded until the atexit() handler is run at process exit. */ { - DSO *dso = NULL; + DSO *dso; + void *err; + + if (!err_shelve_state(&err)) + return 0; - ERR_set_mark(); dso = DSO_dsobyaddr(&base_inited, DSO_FLAG_NO_UNLOAD_ON_FREE); +# ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: obtained DSO reference? %s\n", + (dso == NULL ? "No!" : "Yes.")); + /* + * In case of No!, it is uncertain our exit()-handlers can still be + * called. After dlclose() the whole library might have been unloaded + * already. + */ +# endif DSO_free(dso); - ERR_pop_to_mark(); + err_unshelve_state(err); } # endif #endif @@ -339,9 +370,9 @@ static void ossl_init_thread_stop(struct thread_local_inits_st *locals) if (locals->async) { #ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: ossl_init_thread_stop: " - "ASYNC_cleanup_thread()\n"); + "async_delete_thread_state()\n"); #endif - ASYNC_cleanup_thread(); + async_delete_thread_state(); } if (locals->err_state) { @@ -352,6 +383,14 @@ static void ossl_init_thread_stop(struct thread_local_inits_st *locals) err_delete_thread_state(); } + if (locals->rand) { +#ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: ossl_init_thread_stop: " + "drbg_delete_thread_state()\n"); +#endif + drbg_delete_thread_state(); + } + OPENSSL_free(locals); } @@ -389,6 +428,14 @@ int ossl_init_thread_start(uint64_t opts) locals->err_state = 1; } + if (opts & OPENSSL_INIT_THREAD_RAND) { +#ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: ossl_init_thread_start: " + "marking thread for rand\n"); +#endif + locals->rand = 1; + } + return 1; } @@ -514,22 +561,18 @@ void OPENSSL_cleanup(void) */ int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings) { - static int stoperrset = 0; - if (stopped) { - if (!stoperrset) { - /* - * We only ever set this once to avoid getting into an infinite - * loop where the error system keeps trying to init and fails so - * sets an error etc - */ - stoperrset = 1; + if (!(opts & OPENSSL_INIT_BASE_ONLY)) CRYPTOerr(CRYPTO_F_OPENSSL_INIT_CRYPTO, ERR_R_INIT_FAIL); - } return 0; } - if (!base_inited && !RUN_ONCE(&base, ossl_init_base)) + if (!RUN_ONCE(&base, ossl_init_base)) + return 0; + + if (!(opts & OPENSSL_INIT_BASE_ONLY) + && !RUN_ONCE(&load_crypto_nodelete, + ossl_init_load_crypto_nodelete)) return 0; if ((opts & OPENSSL_INIT_NO_LOAD_CRYPTO_STRINGS) @@ -669,6 +712,12 @@ int OPENSSL_atexit(void (*handler)(void)) ERR_set_mark(); dso = DSO_dsobyaddr(handlersym.sym, DSO_FLAG_NO_UNLOAD_ON_FREE); +# ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, + "OPENSSL_INIT: OPENSSL_atexit: obtained DSO reference? %s\n", + (dso == NULL ? "No!" : "Yes.")); + /* See same code above in ossl_init_base() for an explanation. */ +# endif DSO_free(dso); ERR_pop_to_mark(); } @@ -676,9 +725,10 @@ int OPENSSL_atexit(void (*handler)(void)) } #endif - newhand = OPENSSL_malloc(sizeof(*newhand)); - if (newhand == NULL) + if ((newhand = OPENSSL_malloc(sizeof(*newhand))) == NULL) { + CRYPTOerr(CRYPTO_F_OPENSSL_ATEXIT, ERR_R_MALLOC_FAILURE); return 0; + } newhand->handler = handler; newhand->next = stop_handlers; diff --git a/crypto/kdf/hkdf.c b/crypto/kdf/hkdf.c index 63c3523c..baaa16f0 100644 --- a/crypto/kdf/hkdf.c +++ b/crypto/kdf/hkdf.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -48,9 +48,10 @@ static int pkey_hkdf_init(EVP_PKEY_CTX *ctx) { HKDF_PKEY_CTX *kctx; - kctx = OPENSSL_zalloc(sizeof(*kctx)); - if (kctx == NULL) + if ((kctx = OPENSSL_zalloc(sizeof(*kctx))) == NULL) { + KDFerr(KDF_F_PKEY_HKDF_INIT, ERR_R_MALLOC_FAILURE); return 0; + } ctx->data = kctx; diff --git a/crypto/kdf/kdf_err.c b/crypto/kdf/kdf_err.c index c7b84b0f..1627c0a3 100644 --- a/crypto/kdf/kdf_err.c +++ b/crypto/kdf/kdf_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -16,15 +16,21 @@ static const ERR_STRING_DATA KDF_str_functs[] = { {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_HKDF_CTRL_STR, 0), "pkey_hkdf_ctrl_str"}, {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_HKDF_DERIVE, 0), "pkey_hkdf_derive"}, + {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_HKDF_INIT, 0), "pkey_hkdf_init"}, {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_SCRYPT_CTRL_STR, 0), "pkey_scrypt_ctrl_str"}, {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_SCRYPT_CTRL_UINT64, 0), "pkey_scrypt_ctrl_uint64"}, {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_SCRYPT_DERIVE, 0), "pkey_scrypt_derive"}, + {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_SCRYPT_INIT, 0), "pkey_scrypt_init"}, + {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_SCRYPT_SET_MEMBUF, 0), + "pkey_scrypt_set_membuf"}, {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_TLS1_PRF_CTRL_STR, 0), "pkey_tls1_prf_ctrl_str"}, {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_TLS1_PRF_DERIVE, 0), "pkey_tls1_prf_derive"}, + {ERR_PACK(ERR_LIB_KDF, KDF_F_PKEY_TLS1_PRF_INIT, 0), "pkey_tls1_prf_init"}, + {ERR_PACK(ERR_LIB_KDF, KDF_F_TLS1_PRF_ALG, 0), "tls1_prf_alg"}, {0, NULL} }; diff --git a/crypto/kdf/scrypt.c b/crypto/kdf/scrypt.c index 3f4cf385..61fd390e 100644 --- a/crypto/kdf/scrypt.c +++ b/crypto/kdf/scrypt.c @@ -1,5 +1,5 @@ /* - * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -58,8 +58,10 @@ static int pkey_scrypt_init(EVP_PKEY_CTX *ctx) SCRYPT_PKEY_CTX *kctx; kctx = OPENSSL_zalloc(sizeof(*kctx)); - if (kctx == NULL) + if (kctx == NULL) { + KDFerr(KDF_F_PKEY_SCRYPT_INIT, ERR_R_MALLOC_FAILURE); return 0; + } /* Default values are the most conservative recommendation given in the * original paper of C. Percival. Derivation uses roughly 1 GiB of memory @@ -102,8 +104,10 @@ static int pkey_scrypt_set_membuf(unsigned char **buffer, size_t *buflen, } else { *buffer = OPENSSL_malloc(1); } - if (*buffer == NULL) + if (*buffer == NULL) { + KDFerr(KDF_F_PKEY_SCRYPT_SET_MEMBUF, ERR_R_MALLOC_FAILURE); return 0; + } *buflen = new_buflen; return 1; diff --git a/crypto/kdf/tls1_prf.c b/crypto/kdf/tls1_prf.c index 339e10c1..49f7ecce 100644 --- a/crypto/kdf/tls1_prf.c +++ b/crypto/kdf/tls1_prf.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -37,9 +37,10 @@ static int pkey_tls1_prf_init(EVP_PKEY_CTX *ctx) { TLS1_PRF_PKEY_CTX *kctx; - kctx = OPENSSL_zalloc(sizeof(*kctx)); - if (kctx == NULL) + if ((kctx = OPENSSL_zalloc(sizeof(*kctx))) == NULL) { + KDFerr(KDF_F_PKEY_TLS1_PRF_INIT, ERR_R_MALLOC_FAILURE); return 0; + } ctx->data = kctx; return 1; @@ -193,7 +194,7 @@ static int tls1_prf_P_hash(const EVP_MD *md, if (ctx == NULL || ctx_tmp == NULL || ctx_init == NULL) goto err; EVP_MD_CTX_set_flags(ctx_init, EVP_MD_CTX_FLAG_NON_FIPS_ALLOW); - mac_key = EVP_PKEY_new_mac_key(EVP_PKEY_HMAC, NULL, sec, sec_len); + mac_key = EVP_PKEY_new_raw_private_key(EVP_PKEY_HMAC, NULL, sec, sec_len); if (mac_key == NULL) goto err; if (!EVP_DigestSignInit(ctx_init, NULL, md, NULL, mac_key)) @@ -256,9 +257,10 @@ static int tls1_prf_alg(const EVP_MD *md, seed, seed_len, out, olen)) return 0; - tmp = OPENSSL_malloc(olen); - if (tmp == NULL) + if ((tmp = OPENSSL_malloc(olen)) == NULL) { + KDFerr(KDF_F_TLS1_PRF_ALG, ERR_R_MALLOC_FAILURE); return 0; + } if (!tls1_prf_P_hash(EVP_sha1(), sec + slen/2, slen/2 + (slen & 1), seed, seed_len, tmp, olen)) { OPENSSL_clear_free(tmp, olen); diff --git a/crypto/lhash/lhash.c b/crypto/lhash/lhash.c index 38c084d1..dca50072 100644 --- a/crypto/lhash/lhash.c +++ b/crypto/lhash/lhash.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -12,6 +12,7 @@ #include #include #include +#include #include "lhash_lcl.h" /* @@ -45,8 +46,14 @@ OPENSSL_LHASH *OPENSSL_LH_new(OPENSSL_LH_HASHFUNC h, OPENSSL_LH_COMPFUNC c) { OPENSSL_LHASH *ret; - if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) + if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) { + /* + * Do not set the error code, because the ERR code uses LHASH + * and we want to avoid possible endless error loop. + * CRYPTOerr(CRYPTO_F_OPENSSL_LH_NEW, ERR_R_MALLOC_FAILURE); + */ return NULL; + } if ((ret->b = OPENSSL_zalloc(sizeof(*ret->b) * MIN_NODES)) == NULL) goto err; ret->comp = ((c == NULL) ? (OPENSSL_LH_COMPFUNC)strcmp : c); diff --git a/crypto/mem_sec.c b/crypto/mem_sec.c index 1c132703..959c6371 100644 --- a/crypto/mem_sec.c +++ b/crypto/mem_sec.c @@ -92,7 +92,7 @@ int CRYPTO_secure_malloc_init(size_t size, int minsize) #endif /* IMPLEMENTED */ } -int CRYPTO_secure_malloc_done() +int CRYPTO_secure_malloc_done(void) { #ifdef IMPLEMENTED if (secure_mem_used == 0) { @@ -106,7 +106,7 @@ int CRYPTO_secure_malloc_done() return 0; } -int CRYPTO_secure_malloc_initialized() +int CRYPTO_secure_malloc_initialized(void) { #ifdef IMPLEMENTED return secure_mem_initialized; @@ -209,7 +209,7 @@ int CRYPTO_secure_allocated(const void *ptr) #endif /* IMPLEMENTED */ } -size_t CRYPTO_secure_used() +size_t CRYPTO_secure_used(void) { #ifdef IMPLEMENTED return secure_mem_used; @@ -500,7 +500,7 @@ static int sh_init(size_t size, int minsize) return 0; } -static void sh_done() +static void sh_done(void) { OPENSSL_free(sh.freelist); OPENSSL_free(sh.bittable); diff --git a/crypto/modes/asm/ghashp8-ppc.pl b/crypto/modes/asm/ghashp8-ppc.pl index 45c64384..a1d5789c 100755 --- a/crypto/modes/asm/ghashp8-ppc.pl +++ b/crypto/modes/asm/ghashp8-ppc.pl @@ -30,6 +30,7 @@ # 2x aggregated reduction improves performance by 50% (resulting # performance on POWER8 is 1 cycle per processed byte), and 4x # aggregated reduction - by 170% or 2.7x (resulting in 0.55 cpb). +# POWER9 delivers 0.40 cpb. $flavour=shift; $output =shift; diff --git a/crypto/modes/asm/ghashv8-armx.pl b/crypto/modes/asm/ghashv8-armx.pl index 7e572387..47e88200 100644 --- a/crypto/modes/asm/ghashv8-armx.pl +++ b/crypto/modes/asm/ghashv8-armx.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2014-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -70,6 +70,7 @@ my ($t0,$t1,$t2,$xC2,$H,$Hhl,$H2)=map("q$_",(8..14)); $code=<<___; #include "arm_arch.h" +#if __ARM_MAX_ARCH__>=7 .text ___ $code.=".arch armv8-a+crypto\n" if ($flavour =~ /64/); @@ -699,6 +700,7 @@ ___ $code.=<<___; .asciz "GHASH for ARMv8, CRYPTOGAMS by " .align 2 +#endif ___ if ($flavour =~ /64/) { ######## 64-bit code diff --git a/crypto/modes/ocb128.c b/crypto/modes/ocb128.c index db794d08..96f21f65 100644 --- a/crypto/modes/ocb128.c +++ b/crypto/modes/ocb128.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2014-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -9,6 +9,7 @@ #include #include +#include #include "modes_lcl.h" #ifndef OPENSSL_NO_OCB @@ -164,9 +165,10 @@ int CRYPTO_ocb128_init(OCB128_CONTEXT *ctx, void *keyenc, void *keydec, memset(ctx, 0, sizeof(*ctx)); ctx->l_index = 0; ctx->max_l_index = 5; - ctx->l = OPENSSL_malloc(ctx->max_l_index * 16); - if (ctx->l == NULL) + if ((ctx->l = OPENSSL_malloc(ctx->max_l_index * 16)) == NULL) { + CRYPTOerr(CRYPTO_F_CRYPTO_OCB128_INIT, ERR_R_MALLOC_FAILURE); return 0; + } /* * We set both the encryption and decryption key schedules - decryption @@ -210,9 +212,10 @@ int CRYPTO_ocb128_copy_ctx(OCB128_CONTEXT *dest, OCB128_CONTEXT *src, if (keydec) dest->keydec = keydec; if (src->l) { - dest->l = OPENSSL_malloc(src->max_l_index * 16); - if (dest->l == NULL) + if ((dest->l = OPENSSL_malloc(src->max_l_index * 16)) == NULL) { + CRYPTOerr(CRYPTO_F_CRYPTO_OCB128_COPY_CTX, ERR_R_MALLOC_FAILURE); return 0; + } memcpy(dest->l, src->l, (src->l_index + 1) * 16); } return 1; diff --git a/crypto/o_fopen.c b/crypto/o_fopen.c index a3a00657..1090a068 100644 --- a/crypto/o_fopen.c +++ b/crypto/o_fopen.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -12,6 +12,12 @@ #if !defined(OPENSSL_NO_STDIO) # include +# ifdef _WIN32 +# include +# endif +# ifdef __DJGPP__ +# include +# endif FILE *openssl_fopen(const char *filename, const char *mode) { @@ -61,13 +67,14 @@ FILE *openssl_fopen(const char *filename, const char *mode) { char *newname = NULL; - if (!HAS_LFN_SUPPORT(filename)) { + if (pathconf(filename, _PC_NAME_MAX) <= 12) { /* 8.3 file system? */ char *iterator; char lastchar; - newname = OPENSSL_malloc(strlen(filename) + 1); - if (newname == NULL) + if ((newname = OPENSSL_malloc(strlen(filename) + 1)) == NULL) { + CRYPTOerr(CRYPTO_F_OPENSSL_FOPEN, ERR_R_MALLOC_FAILURE); return NULL; + } for (iterator = newname, lastchar = '\0'; *filename; filename++, iterator++) { diff --git a/crypto/o_time.c b/crypto/o_time.c index b2fb38a5..6d764f55 100644 --- a/crypto/o_time.c +++ b/crypto/o_time.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -41,6 +41,10 @@ struct tm *OPENSSL_gmtime(const time_t *timer, struct tm *result) if (gmtime_r(timer, result) == NULL) return NULL; ts = result; +#elif defined (OPENSSL_SYS_WINDOWS) && defined(_MSC_VER) && _MSC_VER >= 1400 + if (gmtime_s(result, timer)) + return NULL; + ts = result; #else ts = gmtime(timer); if (ts == NULL) diff --git a/crypto/objects/obj_dat.c b/crypto/objects/obj_dat.c index f4412f66..ef2d1e0d 100644 --- a/crypto/objects/obj_dat.c +++ b/crypto/objects/obj_dat.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -350,7 +350,7 @@ int OBJ_obj2nid(const ASN1_OBJECT *a) ASN1_OBJECT *OBJ_txt2obj(const char *s, int no_name) { int nid = NID_undef; - ASN1_OBJECT *op = NULL; + ASN1_OBJECT *op; unsigned char *buf; unsigned char *p; const unsigned char *cp; @@ -376,8 +376,10 @@ ASN1_OBJECT *OBJ_txt2obj(const char *s, int no_name) if (j < 0) return NULL; - if ((buf = OPENSSL_malloc(j)) == NULL) + if ((buf = OPENSSL_malloc(j)) == NULL) { + OBJerr(OBJ_F_OBJ_TXT2OBJ, ERR_R_MALLOC_FAILURE); return NULL; + } p = buf; /* Write out tag+length */ diff --git a/crypto/objects/obj_dat.h b/crypto/objects/obj_dat.h index 8aa6b8b4..60c38267 100644 --- a/crypto/objects/obj_dat.h +++ b/crypto/objects/obj_dat.h @@ -10,7 +10,7 @@ */ /* Serialized OID's */ -static const unsigned char so[7595] = { +static const unsigned char so[7626] = { 0x2A,0x86,0x48,0x86,0xF7,0x0D, /* [ 0] OBJ_rsadsi */ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01, /* [ 6] OBJ_pkcs */ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x02, /* [ 13] OBJ_md2 */ @@ -861,203 +861,208 @@ static const unsigned char so[7595] = { 0x55,0x1D,0x25,0x00, /* [ 5946] OBJ_anyExtendedKeyUsage */ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x08, /* [ 5950] OBJ_mgf1 */ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x0A, /* [ 5959] OBJ_rsassaPss */ - 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x07, /* [ 5968] OBJ_rsaesOaep */ - 0x2A,0x86,0x48,0xCE,0x3E,0x02,0x01, /* [ 5977] OBJ_dhpublicnumber */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x01, /* [ 5984] OBJ_brainpoolP160r1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x02, /* [ 5993] OBJ_brainpoolP160t1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x03, /* [ 6002] OBJ_brainpoolP192r1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x04, /* [ 6011] OBJ_brainpoolP192t1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x05, /* [ 6020] OBJ_brainpoolP224r1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x06, /* [ 6029] OBJ_brainpoolP224t1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x07, /* [ 6038] OBJ_brainpoolP256r1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x08, /* [ 6047] OBJ_brainpoolP256t1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x09, /* [ 6056] OBJ_brainpoolP320r1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x0A, /* [ 6065] OBJ_brainpoolP320t1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x0B, /* [ 6074] OBJ_brainpoolP384r1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x0C, /* [ 6083] OBJ_brainpoolP384t1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x0D, /* [ 6092] OBJ_brainpoolP512r1 */ - 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x0E, /* [ 6101] OBJ_brainpoolP512t1 */ - 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x09, /* [ 6110] OBJ_pSpecified */ - 0x2B,0x81,0x05,0x10,0x86,0x48,0x3F,0x00,0x02, /* [ 6119] OBJ_dhSinglePass_stdDH_sha1kdf_scheme */ - 0x2B,0x81,0x04,0x01,0x0B,0x00, /* [ 6128] OBJ_dhSinglePass_stdDH_sha224kdf_scheme */ - 0x2B,0x81,0x04,0x01,0x0B,0x01, /* [ 6134] OBJ_dhSinglePass_stdDH_sha256kdf_scheme */ - 0x2B,0x81,0x04,0x01,0x0B,0x02, /* [ 6140] OBJ_dhSinglePass_stdDH_sha384kdf_scheme */ - 0x2B,0x81,0x04,0x01,0x0B,0x03, /* [ 6146] OBJ_dhSinglePass_stdDH_sha512kdf_scheme */ - 0x2B,0x81,0x05,0x10,0x86,0x48,0x3F,0x00,0x03, /* [ 6152] OBJ_dhSinglePass_cofactorDH_sha1kdf_scheme */ - 0x2B,0x81,0x04,0x01,0x0E,0x00, /* [ 6161] OBJ_dhSinglePass_cofactorDH_sha224kdf_scheme */ - 0x2B,0x81,0x04,0x01,0x0E,0x01, /* [ 6167] OBJ_dhSinglePass_cofactorDH_sha256kdf_scheme */ - 0x2B,0x81,0x04,0x01,0x0E,0x02, /* [ 6173] OBJ_dhSinglePass_cofactorDH_sha384kdf_scheme */ - 0x2B,0x81,0x04,0x01,0x0E,0x03, /* [ 6179] OBJ_dhSinglePass_cofactorDH_sha512kdf_scheme */ - 0x2B,0x06,0x01,0x04,0x01,0xD6,0x79,0x02,0x04,0x02, /* [ 6185] OBJ_ct_precert_scts */ - 0x2B,0x06,0x01,0x04,0x01,0xD6,0x79,0x02,0x04,0x03, /* [ 6195] OBJ_ct_precert_poison */ - 0x2B,0x06,0x01,0x04,0x01,0xD6,0x79,0x02,0x04,0x04, /* [ 6205] OBJ_ct_precert_signer */ - 0x2B,0x06,0x01,0x04,0x01,0xD6,0x79,0x02,0x04,0x05, /* [ 6215] OBJ_ct_cert_scts */ - 0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x3C,0x02,0x01,0x01, /* [ 6225] OBJ_jurisdictionLocalityName */ - 0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x3C,0x02,0x01,0x02, /* [ 6236] OBJ_jurisdictionStateOrProvinceName */ - 0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x3C,0x02,0x01,0x03, /* [ 6247] OBJ_jurisdictionCountryName */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x06, /* [ 6258] OBJ_camellia_128_gcm */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x07, /* [ 6266] OBJ_camellia_128_ccm */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x09, /* [ 6274] OBJ_camellia_128_ctr */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x0A, /* [ 6282] OBJ_camellia_128_cmac */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x1A, /* [ 6290] OBJ_camellia_192_gcm */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x1B, /* [ 6298] OBJ_camellia_192_ccm */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x1D, /* [ 6306] OBJ_camellia_192_ctr */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x1E, /* [ 6314] OBJ_camellia_192_cmac */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x2E, /* [ 6322] OBJ_camellia_256_gcm */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x2F, /* [ 6330] OBJ_camellia_256_ccm */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x31, /* [ 6338] OBJ_camellia_256_ctr */ - 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x32, /* [ 6346] OBJ_camellia_256_cmac */ - 0x2B,0x06,0x01,0x04,0x01,0xDA,0x47,0x04,0x0B, /* [ 6354] OBJ_id_scrypt */ - 0x2A,0x85,0x03,0x07,0x01, /* [ 6363] OBJ_id_tc26 */ - 0x2A,0x85,0x03,0x07,0x01,0x01, /* [ 6368] OBJ_id_tc26_algorithms */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x01, /* [ 6374] OBJ_id_tc26_sign */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x01,0x01, /* [ 6381] OBJ_id_GostR3410_2012_256 */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x01,0x02, /* [ 6389] OBJ_id_GostR3410_2012_512 */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x02, /* [ 6397] OBJ_id_tc26_digest */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x02,0x02, /* [ 6404] OBJ_id_GostR3411_2012_256 */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x02,0x03, /* [ 6412] OBJ_id_GostR3411_2012_512 */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x03, /* [ 6420] OBJ_id_tc26_signwithdigest */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x03,0x02, /* [ 6427] OBJ_id_tc26_signwithdigest_gost3410_2012_256 */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x03,0x03, /* [ 6435] OBJ_id_tc26_signwithdigest_gost3410_2012_512 */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x04, /* [ 6443] OBJ_id_tc26_mac */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x04,0x01, /* [ 6450] OBJ_id_tc26_hmac_gost_3411_2012_256 */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x04,0x02, /* [ 6458] OBJ_id_tc26_hmac_gost_3411_2012_512 */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x05, /* [ 6466] OBJ_id_tc26_cipher */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x06, /* [ 6473] OBJ_id_tc26_agreement */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x06,0x01, /* [ 6480] OBJ_id_tc26_agreement_gost_3410_2012_256 */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x06,0x02, /* [ 6488] OBJ_id_tc26_agreement_gost_3410_2012_512 */ - 0x2A,0x85,0x03,0x07,0x01,0x02, /* [ 6496] OBJ_id_tc26_constants */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x01, /* [ 6502] OBJ_id_tc26_sign_constants */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02, /* [ 6509] OBJ_id_tc26_gost_3410_2012_512_constants */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x00, /* [ 6517] OBJ_id_tc26_gost_3410_2012_512_paramSetTest */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x01, /* [ 6526] OBJ_id_tc26_gost_3410_2012_512_paramSetA */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x02, /* [ 6535] OBJ_id_tc26_gost_3410_2012_512_paramSetB */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x02, /* [ 6544] OBJ_id_tc26_digest_constants */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x05, /* [ 6551] OBJ_id_tc26_cipher_constants */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x05,0x01, /* [ 6558] OBJ_id_tc26_gost_28147_constants */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x05,0x01,0x01, /* [ 6566] OBJ_id_tc26_gost_28147_param_Z */ - 0x2A,0x85,0x03,0x03,0x81,0x03,0x01,0x01, /* [ 6575] OBJ_INN */ - 0x2A,0x85,0x03,0x64,0x01, /* [ 6583] OBJ_OGRN */ - 0x2A,0x85,0x03,0x64,0x03, /* [ 6588] OBJ_SNILS */ - 0x2A,0x85,0x03,0x64,0x6F, /* [ 6593] OBJ_subjectSignTool */ - 0x2A,0x85,0x03,0x64,0x70, /* [ 6598] OBJ_issuerSignTool */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x18, /* [ 6603] OBJ_tlsfeature */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x11, /* [ 6611] OBJ_ipsec_IKE */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x12, /* [ 6619] OBJ_capwapAC */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x13, /* [ 6627] OBJ_capwapWTP */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x15, /* [ 6635] OBJ_sshClient */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x16, /* [ 6643] OBJ_sshServer */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x17, /* [ 6651] OBJ_sendRouter */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x18, /* [ 6659] OBJ_sendProxiedRouter */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x19, /* [ 6667] OBJ_sendOwner */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x1A, /* [ 6675] OBJ_sendProxiedOwner */ - 0x2B,0x06,0x01,0x05,0x02,0x03, /* [ 6683] OBJ_id_pkinit */ - 0x2B,0x06,0x01,0x05,0x02,0x03,0x04, /* [ 6689] OBJ_pkInitClientAuth */ - 0x2B,0x06,0x01,0x05,0x02,0x03,0x05, /* [ 6696] OBJ_pkInitKDC */ - 0x2B,0x65,0x6E, /* [ 6703] OBJ_X25519 */ - 0x2B,0x65,0x6F, /* [ 6706] OBJ_X448 */ - 0x2B,0x06,0x01,0x04,0x01,0x8D,0x3A,0x0C,0x02,0x01,0x10, /* [ 6709] OBJ_blake2b512 */ - 0x2B,0x06,0x01,0x04,0x01,0x8D,0x3A,0x0C,0x02,0x02,0x08, /* [ 6720] OBJ_blake2s256 */ - 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x13, /* [ 6731] OBJ_id_smime_ct_contentCollection */ - 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x17, /* [ 6742] OBJ_id_smime_ct_authEnvelopedData */ - 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x1C, /* [ 6753] OBJ_id_ct_xml */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x01, /* [ 6764] OBJ_aria_128_ecb */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x02, /* [ 6773] OBJ_aria_128_cbc */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x03, /* [ 6782] OBJ_aria_128_cfb128 */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x04, /* [ 6791] OBJ_aria_128_ofb128 */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x05, /* [ 6800] OBJ_aria_128_ctr */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x06, /* [ 6809] OBJ_aria_192_ecb */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x07, /* [ 6818] OBJ_aria_192_cbc */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x08, /* [ 6827] OBJ_aria_192_cfb128 */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x09, /* [ 6836] OBJ_aria_192_ofb128 */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0A, /* [ 6845] OBJ_aria_192_ctr */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0B, /* [ 6854] OBJ_aria_256_ecb */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0C, /* [ 6863] OBJ_aria_256_cbc */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0D, /* [ 6872] OBJ_aria_256_cfb128 */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0E, /* [ 6881] OBJ_aria_256_ofb128 */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0F, /* [ 6890] OBJ_aria_256_ctr */ - 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x2F, /* [ 6899] OBJ_id_smime_aa_signingCertificateV2 */ - 0x2B,0x65,0x70, /* [ 6910] OBJ_ED25519 */ - 0x2B,0x65,0x71, /* [ 6913] OBJ_ED448 */ - 0x55,0x04,0x61, /* [ 6916] OBJ_organizationIdentifier */ - 0x55,0x04,0x62, /* [ 6919] OBJ_countryCode3c */ - 0x55,0x04,0x63, /* [ 6922] OBJ_countryCode3n */ - 0x55,0x04,0x64, /* [ 6925] OBJ_dnsName */ - 0x2B,0x24,0x08,0x03,0x03, /* [ 6928] OBJ_x509ExtAdmission */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x05, /* [ 6933] OBJ_sha512_224 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x06, /* [ 6942] OBJ_sha512_256 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x07, /* [ 6951] OBJ_sha3_224 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x08, /* [ 6960] OBJ_sha3_256 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x09, /* [ 6969] OBJ_sha3_384 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0A, /* [ 6978] OBJ_sha3_512 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0B, /* [ 6987] OBJ_shake128 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0C, /* [ 6996] OBJ_shake256 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0D, /* [ 7005] OBJ_hmac_sha3_224 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0E, /* [ 7014] OBJ_hmac_sha3_256 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0F, /* [ 7023] OBJ_hmac_sha3_384 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x10, /* [ 7032] OBJ_hmac_sha3_512 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x03, /* [ 7041] OBJ_dsa_with_SHA384 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x04, /* [ 7050] OBJ_dsa_with_SHA512 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x05, /* [ 7059] OBJ_dsa_with_SHA3_224 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x06, /* [ 7068] OBJ_dsa_with_SHA3_256 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x07, /* [ 7077] OBJ_dsa_with_SHA3_384 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x08, /* [ 7086] OBJ_dsa_with_SHA3_512 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x09, /* [ 7095] OBJ_ecdsa_with_SHA3_224 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0A, /* [ 7104] OBJ_ecdsa_with_SHA3_256 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0B, /* [ 7113] OBJ_ecdsa_with_SHA3_384 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0C, /* [ 7122] OBJ_ecdsa_with_SHA3_512 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0D, /* [ 7131] OBJ_RSA_SHA3_224 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0E, /* [ 7140] OBJ_RSA_SHA3_256 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0F, /* [ 7149] OBJ_RSA_SHA3_384 */ - 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x10, /* [ 7158] OBJ_RSA_SHA3_512 */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x25, /* [ 7167] OBJ_aria_128_ccm */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x26, /* [ 7176] OBJ_aria_192_ccm */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x27, /* [ 7185] OBJ_aria_256_ccm */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x22, /* [ 7194] OBJ_aria_128_gcm */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x23, /* [ 7203] OBJ_aria_192_gcm */ - 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x24, /* [ 7212] OBJ_aria_256_gcm */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x1B, /* [ 7221] OBJ_cmcCA */ - 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x1C, /* [ 7229] OBJ_cmcRA */ - 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x01, /* [ 7237] OBJ_sm4_ecb */ - 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x02, /* [ 7245] OBJ_sm4_cbc */ - 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x03, /* [ 7253] OBJ_sm4_ofb128 */ - 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x05, /* [ 7261] OBJ_sm4_cfb1 */ - 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x04, /* [ 7269] OBJ_sm4_cfb128 */ - 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x06, /* [ 7277] OBJ_sm4_cfb8 */ - 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x07, /* [ 7285] OBJ_sm4_ctr */ - 0x2A,0x81,0x1C, /* [ 7293] OBJ_ISO_CN */ - 0x2A,0x81,0x1C,0xCF,0x55, /* [ 7296] OBJ_oscca */ - 0x2A,0x81,0x1C,0xCF,0x55,0x01, /* [ 7301] OBJ_sm_scheme */ - 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x83,0x11, /* [ 7307] OBJ_sm3 */ - 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x83,0x78, /* [ 7315] OBJ_sm3WithRSAEncryption */ - 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x0F, /* [ 7323] OBJ_sha512_224WithRSAEncryption */ - 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x10, /* [ 7332] OBJ_sha512_256WithRSAEncryption */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x01, /* [ 7341] OBJ_id_tc26_gost_3410_2012_256_constants */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x01,0x01, /* [ 7349] OBJ_id_tc26_gost_3410_2012_256_paramSetA */ - 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x03, /* [ 7358] OBJ_id_tc26_gost_3410_2012_512_paramSetC */ - 0x2A,0x86,0x24, /* [ 7367] OBJ_ISO_UA */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01, /* [ 7370] OBJ_ua_pki */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x01,0x01, /* [ 7377] OBJ_dstu28147 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x02, /* [ 7387] OBJ_dstu28147_ofb */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x03, /* [ 7398] OBJ_dstu28147_cfb */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x05, /* [ 7409] OBJ_dstu28147_wrap */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x01,0x02, /* [ 7420] OBJ_hmacWithDstu34311 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x02,0x01, /* [ 7430] OBJ_dstu34311 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01, /* [ 7440] OBJ_dstu4145le */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x01,0x01, /* [ 7451] OBJ_dstu4145be */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x00, /* [ 7464] OBJ_uacurve0 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x01, /* [ 7477] OBJ_uacurve1 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x02, /* [ 7490] OBJ_uacurve2 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x03, /* [ 7503] OBJ_uacurve3 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x04, /* [ 7516] OBJ_uacurve4 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x05, /* [ 7529] OBJ_uacurve5 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x06, /* [ 7542] OBJ_uacurve6 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x07, /* [ 7555] OBJ_uacurve7 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x08, /* [ 7568] OBJ_uacurve8 */ - 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x09, /* [ 7581] OBJ_uacurve9 */ + 0x2B,0x6F,0x02,0x8C,0x53,0x00,0x01,0x01, /* [ 5968] OBJ_aes_128_xts */ + 0x2B,0x6F,0x02,0x8C,0x53,0x00,0x01,0x02, /* [ 5976] OBJ_aes_256_xts */ + 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x07, /* [ 5984] OBJ_rsaesOaep */ + 0x2A,0x86,0x48,0xCE,0x3E,0x02,0x01, /* [ 5993] OBJ_dhpublicnumber */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x01, /* [ 6000] OBJ_brainpoolP160r1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x02, /* [ 6009] OBJ_brainpoolP160t1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x03, /* [ 6018] OBJ_brainpoolP192r1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x04, /* [ 6027] OBJ_brainpoolP192t1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x05, /* [ 6036] OBJ_brainpoolP224r1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x06, /* [ 6045] OBJ_brainpoolP224t1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x07, /* [ 6054] OBJ_brainpoolP256r1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x08, /* [ 6063] OBJ_brainpoolP256t1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x09, /* [ 6072] OBJ_brainpoolP320r1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x0A, /* [ 6081] OBJ_brainpoolP320t1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x0B, /* [ 6090] OBJ_brainpoolP384r1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x0C, /* [ 6099] OBJ_brainpoolP384t1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x0D, /* [ 6108] OBJ_brainpoolP512r1 */ + 0x2B,0x24,0x03,0x03,0x02,0x08,0x01,0x01,0x0E, /* [ 6117] OBJ_brainpoolP512t1 */ + 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x09, /* [ 6126] OBJ_pSpecified */ + 0x2B,0x81,0x05,0x10,0x86,0x48,0x3F,0x00,0x02, /* [ 6135] OBJ_dhSinglePass_stdDH_sha1kdf_scheme */ + 0x2B,0x81,0x04,0x01,0x0B,0x00, /* [ 6144] OBJ_dhSinglePass_stdDH_sha224kdf_scheme */ + 0x2B,0x81,0x04,0x01,0x0B,0x01, /* [ 6150] OBJ_dhSinglePass_stdDH_sha256kdf_scheme */ + 0x2B,0x81,0x04,0x01,0x0B,0x02, /* [ 6156] OBJ_dhSinglePass_stdDH_sha384kdf_scheme */ + 0x2B,0x81,0x04,0x01,0x0B,0x03, /* [ 6162] OBJ_dhSinglePass_stdDH_sha512kdf_scheme */ + 0x2B,0x81,0x05,0x10,0x86,0x48,0x3F,0x00,0x03, /* [ 6168] OBJ_dhSinglePass_cofactorDH_sha1kdf_scheme */ + 0x2B,0x81,0x04,0x01,0x0E,0x00, /* [ 6177] OBJ_dhSinglePass_cofactorDH_sha224kdf_scheme */ + 0x2B,0x81,0x04,0x01,0x0E,0x01, /* [ 6183] OBJ_dhSinglePass_cofactorDH_sha256kdf_scheme */ + 0x2B,0x81,0x04,0x01,0x0E,0x02, /* [ 6189] OBJ_dhSinglePass_cofactorDH_sha384kdf_scheme */ + 0x2B,0x81,0x04,0x01,0x0E,0x03, /* [ 6195] OBJ_dhSinglePass_cofactorDH_sha512kdf_scheme */ + 0x2B,0x06,0x01,0x04,0x01,0xD6,0x79,0x02,0x04,0x02, /* [ 6201] OBJ_ct_precert_scts */ + 0x2B,0x06,0x01,0x04,0x01,0xD6,0x79,0x02,0x04,0x03, /* [ 6211] OBJ_ct_precert_poison */ + 0x2B,0x06,0x01,0x04,0x01,0xD6,0x79,0x02,0x04,0x04, /* [ 6221] OBJ_ct_precert_signer */ + 0x2B,0x06,0x01,0x04,0x01,0xD6,0x79,0x02,0x04,0x05, /* [ 6231] OBJ_ct_cert_scts */ + 0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x3C,0x02,0x01,0x01, /* [ 6241] OBJ_jurisdictionLocalityName */ + 0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x3C,0x02,0x01,0x02, /* [ 6252] OBJ_jurisdictionStateOrProvinceName */ + 0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x3C,0x02,0x01,0x03, /* [ 6263] OBJ_jurisdictionCountryName */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x06, /* [ 6274] OBJ_camellia_128_gcm */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x07, /* [ 6282] OBJ_camellia_128_ccm */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x09, /* [ 6290] OBJ_camellia_128_ctr */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x0A, /* [ 6298] OBJ_camellia_128_cmac */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x1A, /* [ 6306] OBJ_camellia_192_gcm */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x1B, /* [ 6314] OBJ_camellia_192_ccm */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x1D, /* [ 6322] OBJ_camellia_192_ctr */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x1E, /* [ 6330] OBJ_camellia_192_cmac */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x2E, /* [ 6338] OBJ_camellia_256_gcm */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x2F, /* [ 6346] OBJ_camellia_256_ccm */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x31, /* [ 6354] OBJ_camellia_256_ctr */ + 0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x32, /* [ 6362] OBJ_camellia_256_cmac */ + 0x2B,0x06,0x01,0x04,0x01,0xDA,0x47,0x04,0x0B, /* [ 6370] OBJ_id_scrypt */ + 0x2A,0x85,0x03,0x07,0x01, /* [ 6379] OBJ_id_tc26 */ + 0x2A,0x85,0x03,0x07,0x01,0x01, /* [ 6384] OBJ_id_tc26_algorithms */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x01, /* [ 6390] OBJ_id_tc26_sign */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x01,0x01, /* [ 6397] OBJ_id_GostR3410_2012_256 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x01,0x02, /* [ 6405] OBJ_id_GostR3410_2012_512 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x02, /* [ 6413] OBJ_id_tc26_digest */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x02,0x02, /* [ 6420] OBJ_id_GostR3411_2012_256 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x02,0x03, /* [ 6428] OBJ_id_GostR3411_2012_512 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x03, /* [ 6436] OBJ_id_tc26_signwithdigest */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x03,0x02, /* [ 6443] OBJ_id_tc26_signwithdigest_gost3410_2012_256 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x03,0x03, /* [ 6451] OBJ_id_tc26_signwithdigest_gost3410_2012_512 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x04, /* [ 6459] OBJ_id_tc26_mac */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x04,0x01, /* [ 6466] OBJ_id_tc26_hmac_gost_3411_2012_256 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x04,0x02, /* [ 6474] OBJ_id_tc26_hmac_gost_3411_2012_512 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x05, /* [ 6482] OBJ_id_tc26_cipher */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x06, /* [ 6489] OBJ_id_tc26_agreement */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x06,0x01, /* [ 6496] OBJ_id_tc26_agreement_gost_3410_2012_256 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x06,0x02, /* [ 6504] OBJ_id_tc26_agreement_gost_3410_2012_512 */ + 0x2A,0x85,0x03,0x07,0x01,0x02, /* [ 6512] OBJ_id_tc26_constants */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x01, /* [ 6518] OBJ_id_tc26_sign_constants */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02, /* [ 6525] OBJ_id_tc26_gost_3410_2012_512_constants */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x00, /* [ 6533] OBJ_id_tc26_gost_3410_2012_512_paramSetTest */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x01, /* [ 6542] OBJ_id_tc26_gost_3410_2012_512_paramSetA */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x02, /* [ 6551] OBJ_id_tc26_gost_3410_2012_512_paramSetB */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x02, /* [ 6560] OBJ_id_tc26_digest_constants */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x05, /* [ 6567] OBJ_id_tc26_cipher_constants */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x05,0x01, /* [ 6574] OBJ_id_tc26_gost_28147_constants */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x05,0x01,0x01, /* [ 6582] OBJ_id_tc26_gost_28147_param_Z */ + 0x2A,0x85,0x03,0x03,0x81,0x03,0x01,0x01, /* [ 6591] OBJ_INN */ + 0x2A,0x85,0x03,0x64,0x01, /* [ 6599] OBJ_OGRN */ + 0x2A,0x85,0x03,0x64,0x03, /* [ 6604] OBJ_SNILS */ + 0x2A,0x85,0x03,0x64,0x6F, /* [ 6609] OBJ_subjectSignTool */ + 0x2A,0x85,0x03,0x64,0x70, /* [ 6614] OBJ_issuerSignTool */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x18, /* [ 6619] OBJ_tlsfeature */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x11, /* [ 6627] OBJ_ipsec_IKE */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x12, /* [ 6635] OBJ_capwapAC */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x13, /* [ 6643] OBJ_capwapWTP */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x15, /* [ 6651] OBJ_sshClient */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x16, /* [ 6659] OBJ_sshServer */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x17, /* [ 6667] OBJ_sendRouter */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x18, /* [ 6675] OBJ_sendProxiedRouter */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x19, /* [ 6683] OBJ_sendOwner */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x1A, /* [ 6691] OBJ_sendProxiedOwner */ + 0x2B,0x06,0x01,0x05,0x02,0x03, /* [ 6699] OBJ_id_pkinit */ + 0x2B,0x06,0x01,0x05,0x02,0x03,0x04, /* [ 6705] OBJ_pkInitClientAuth */ + 0x2B,0x06,0x01,0x05,0x02,0x03,0x05, /* [ 6712] OBJ_pkInitKDC */ + 0x2B,0x65,0x6E, /* [ 6719] OBJ_X25519 */ + 0x2B,0x65,0x6F, /* [ 6722] OBJ_X448 */ + 0x2B,0x06,0x01,0x04,0x01,0x8D,0x3A,0x0C,0x02,0x01,0x10, /* [ 6725] OBJ_blake2b512 */ + 0x2B,0x06,0x01,0x04,0x01,0x8D,0x3A,0x0C,0x02,0x02,0x08, /* [ 6736] OBJ_blake2s256 */ + 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x13, /* [ 6747] OBJ_id_smime_ct_contentCollection */ + 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x17, /* [ 6758] OBJ_id_smime_ct_authEnvelopedData */ + 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x1C, /* [ 6769] OBJ_id_ct_xml */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x01, /* [ 6780] OBJ_aria_128_ecb */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x02, /* [ 6789] OBJ_aria_128_cbc */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x03, /* [ 6798] OBJ_aria_128_cfb128 */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x04, /* [ 6807] OBJ_aria_128_ofb128 */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x05, /* [ 6816] OBJ_aria_128_ctr */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x06, /* [ 6825] OBJ_aria_192_ecb */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x07, /* [ 6834] OBJ_aria_192_cbc */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x08, /* [ 6843] OBJ_aria_192_cfb128 */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x09, /* [ 6852] OBJ_aria_192_ofb128 */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0A, /* [ 6861] OBJ_aria_192_ctr */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0B, /* [ 6870] OBJ_aria_256_ecb */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0C, /* [ 6879] OBJ_aria_256_cbc */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0D, /* [ 6888] OBJ_aria_256_cfb128 */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0E, /* [ 6897] OBJ_aria_256_ofb128 */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x0F, /* [ 6906] OBJ_aria_256_ctr */ + 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x2F, /* [ 6915] OBJ_id_smime_aa_signingCertificateV2 */ + 0x2B,0x65,0x70, /* [ 6926] OBJ_ED25519 */ + 0x2B,0x65,0x71, /* [ 6929] OBJ_ED448 */ + 0x55,0x04,0x61, /* [ 6932] OBJ_organizationIdentifier */ + 0x55,0x04,0x62, /* [ 6935] OBJ_countryCode3c */ + 0x55,0x04,0x63, /* [ 6938] OBJ_countryCode3n */ + 0x55,0x04,0x64, /* [ 6941] OBJ_dnsName */ + 0x2B,0x24,0x08,0x03,0x03, /* [ 6944] OBJ_x509ExtAdmission */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x05, /* [ 6949] OBJ_sha512_224 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x06, /* [ 6958] OBJ_sha512_256 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x07, /* [ 6967] OBJ_sha3_224 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x08, /* [ 6976] OBJ_sha3_256 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x09, /* [ 6985] OBJ_sha3_384 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0A, /* [ 6994] OBJ_sha3_512 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0B, /* [ 7003] OBJ_shake128 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0C, /* [ 7012] OBJ_shake256 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0D, /* [ 7021] OBJ_hmac_sha3_224 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0E, /* [ 7030] OBJ_hmac_sha3_256 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x0F, /* [ 7039] OBJ_hmac_sha3_384 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x10, /* [ 7048] OBJ_hmac_sha3_512 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x03, /* [ 7057] OBJ_dsa_with_SHA384 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x04, /* [ 7066] OBJ_dsa_with_SHA512 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x05, /* [ 7075] OBJ_dsa_with_SHA3_224 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x06, /* [ 7084] OBJ_dsa_with_SHA3_256 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x07, /* [ 7093] OBJ_dsa_with_SHA3_384 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x08, /* [ 7102] OBJ_dsa_with_SHA3_512 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x09, /* [ 7111] OBJ_ecdsa_with_SHA3_224 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0A, /* [ 7120] OBJ_ecdsa_with_SHA3_256 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0B, /* [ 7129] OBJ_ecdsa_with_SHA3_384 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0C, /* [ 7138] OBJ_ecdsa_with_SHA3_512 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0D, /* [ 7147] OBJ_RSA_SHA3_224 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0E, /* [ 7156] OBJ_RSA_SHA3_256 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0F, /* [ 7165] OBJ_RSA_SHA3_384 */ + 0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x10, /* [ 7174] OBJ_RSA_SHA3_512 */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x25, /* [ 7183] OBJ_aria_128_ccm */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x26, /* [ 7192] OBJ_aria_192_ccm */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x27, /* [ 7201] OBJ_aria_256_ccm */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x22, /* [ 7210] OBJ_aria_128_gcm */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x23, /* [ 7219] OBJ_aria_192_gcm */ + 0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x24, /* [ 7228] OBJ_aria_256_gcm */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x1B, /* [ 7237] OBJ_cmcCA */ + 0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x1C, /* [ 7245] OBJ_cmcRA */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x01, /* [ 7253] OBJ_sm4_ecb */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x02, /* [ 7261] OBJ_sm4_cbc */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x03, /* [ 7269] OBJ_sm4_ofb128 */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x05, /* [ 7277] OBJ_sm4_cfb1 */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x04, /* [ 7285] OBJ_sm4_cfb128 */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x06, /* [ 7293] OBJ_sm4_cfb8 */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x68,0x07, /* [ 7301] OBJ_sm4_ctr */ + 0x2A,0x81,0x1C, /* [ 7309] OBJ_ISO_CN */ + 0x2A,0x81,0x1C,0xCF,0x55, /* [ 7312] OBJ_oscca */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01, /* [ 7317] OBJ_sm_scheme */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x83,0x11, /* [ 7323] OBJ_sm3 */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x83,0x78, /* [ 7331] OBJ_sm3WithRSAEncryption */ + 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x0F, /* [ 7339] OBJ_sha512_224WithRSAEncryption */ + 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x10, /* [ 7348] OBJ_sha512_256WithRSAEncryption */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x01, /* [ 7357] OBJ_id_tc26_gost_3410_2012_256_constants */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x01,0x01, /* [ 7365] OBJ_id_tc26_gost_3410_2012_256_paramSetA */ + 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x03, /* [ 7374] OBJ_id_tc26_gost_3410_2012_512_paramSetC */ + 0x2A,0x86,0x24, /* [ 7383] OBJ_ISO_UA */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01, /* [ 7386] OBJ_ua_pki */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x01,0x01, /* [ 7393] OBJ_dstu28147 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x02, /* [ 7403] OBJ_dstu28147_ofb */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x03, /* [ 7414] OBJ_dstu28147_cfb */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x05, /* [ 7425] OBJ_dstu28147_wrap */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x01,0x02, /* [ 7436] OBJ_hmacWithDstu34311 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x02,0x01, /* [ 7446] OBJ_dstu34311 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01, /* [ 7456] OBJ_dstu4145le */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x01,0x01, /* [ 7467] OBJ_dstu4145be */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x00, /* [ 7480] OBJ_uacurve0 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x01, /* [ 7493] OBJ_uacurve1 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x02, /* [ 7506] OBJ_uacurve2 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x03, /* [ 7519] OBJ_uacurve3 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x04, /* [ 7532] OBJ_uacurve4 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x05, /* [ 7545] OBJ_uacurve5 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x06, /* [ 7558] OBJ_uacurve6 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x07, /* [ 7571] OBJ_uacurve7 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x08, /* [ 7584] OBJ_uacurve8 */ + 0x2A,0x86,0x24,0x02,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x09, /* [ 7597] OBJ_uacurve9 */ + 0x2B,0x6F, /* [ 7610] OBJ_ieee */ + 0x2B,0x6F,0x02,0x8C,0x53, /* [ 7612] OBJ_ieee_siswg */ + 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x82,0x2D, /* [ 7617] OBJ_sm2 */ }; -#define NUM_NID 1170 +#define NUM_NID 1173 static const ASN1_OBJECT nid_objs[NUM_NID] = { {"UNDEF", "undefined", NID_undef}, {"rsadsi", "RSA Data Security, Inc.", NID_rsadsi, 6, &so[0]}, @@ -1972,102 +1977,102 @@ static const ASN1_OBJECT nid_objs[NUM_NID] = { {"anyExtendedKeyUsage", "Any Extended Key Usage", NID_anyExtendedKeyUsage, 4, &so[5946]}, {"MGF1", "mgf1", NID_mgf1, 9, &so[5950]}, {"RSASSA-PSS", "rsassaPss", NID_rsassaPss, 9, &so[5959]}, - {"AES-128-XTS", "aes-128-xts", NID_aes_128_xts}, - {"AES-256-XTS", "aes-256-xts", NID_aes_256_xts}, + {"AES-128-XTS", "aes-128-xts", NID_aes_128_xts, 8, &so[5968]}, + {"AES-256-XTS", "aes-256-xts", NID_aes_256_xts, 8, &so[5976]}, {"RC4-HMAC-MD5", "rc4-hmac-md5", NID_rc4_hmac_md5}, {"AES-128-CBC-HMAC-SHA1", "aes-128-cbc-hmac-sha1", NID_aes_128_cbc_hmac_sha1}, {"AES-192-CBC-HMAC-SHA1", "aes-192-cbc-hmac-sha1", NID_aes_192_cbc_hmac_sha1}, {"AES-256-CBC-HMAC-SHA1", "aes-256-cbc-hmac-sha1", NID_aes_256_cbc_hmac_sha1}, - {"RSAES-OAEP", "rsaesOaep", NID_rsaesOaep, 9, &so[5968]}, - {"dhpublicnumber", "X9.42 DH", NID_dhpublicnumber, 7, &so[5977]}, - {"brainpoolP160r1", "brainpoolP160r1", NID_brainpoolP160r1, 9, &so[5984]}, - {"brainpoolP160t1", "brainpoolP160t1", NID_brainpoolP160t1, 9, &so[5993]}, - {"brainpoolP192r1", "brainpoolP192r1", NID_brainpoolP192r1, 9, &so[6002]}, - {"brainpoolP192t1", "brainpoolP192t1", NID_brainpoolP192t1, 9, &so[6011]}, - {"brainpoolP224r1", "brainpoolP224r1", NID_brainpoolP224r1, 9, &so[6020]}, - {"brainpoolP224t1", "brainpoolP224t1", NID_brainpoolP224t1, 9, &so[6029]}, - {"brainpoolP256r1", "brainpoolP256r1", NID_brainpoolP256r1, 9, &so[6038]}, - {"brainpoolP256t1", "brainpoolP256t1", NID_brainpoolP256t1, 9, &so[6047]}, - {"brainpoolP320r1", "brainpoolP320r1", NID_brainpoolP320r1, 9, &so[6056]}, - {"brainpoolP320t1", "brainpoolP320t1", NID_brainpoolP320t1, 9, &so[6065]}, - {"brainpoolP384r1", "brainpoolP384r1", NID_brainpoolP384r1, 9, &so[6074]}, - {"brainpoolP384t1", "brainpoolP384t1", NID_brainpoolP384t1, 9, &so[6083]}, - {"brainpoolP512r1", "brainpoolP512r1", NID_brainpoolP512r1, 9, &so[6092]}, - {"brainpoolP512t1", "brainpoolP512t1", NID_brainpoolP512t1, 9, &so[6101]}, - {"PSPECIFIED", "pSpecified", NID_pSpecified, 9, &so[6110]}, - {"dhSinglePass-stdDH-sha1kdf-scheme", "dhSinglePass-stdDH-sha1kdf-scheme", NID_dhSinglePass_stdDH_sha1kdf_scheme, 9, &so[6119]}, - {"dhSinglePass-stdDH-sha224kdf-scheme", "dhSinglePass-stdDH-sha224kdf-scheme", NID_dhSinglePass_stdDH_sha224kdf_scheme, 6, &so[6128]}, - {"dhSinglePass-stdDH-sha256kdf-scheme", "dhSinglePass-stdDH-sha256kdf-scheme", NID_dhSinglePass_stdDH_sha256kdf_scheme, 6, &so[6134]}, - {"dhSinglePass-stdDH-sha384kdf-scheme", "dhSinglePass-stdDH-sha384kdf-scheme", NID_dhSinglePass_stdDH_sha384kdf_scheme, 6, &so[6140]}, - {"dhSinglePass-stdDH-sha512kdf-scheme", "dhSinglePass-stdDH-sha512kdf-scheme", NID_dhSinglePass_stdDH_sha512kdf_scheme, 6, &so[6146]}, - {"dhSinglePass-cofactorDH-sha1kdf-scheme", "dhSinglePass-cofactorDH-sha1kdf-scheme", NID_dhSinglePass_cofactorDH_sha1kdf_scheme, 9, &so[6152]}, - {"dhSinglePass-cofactorDH-sha224kdf-scheme", "dhSinglePass-cofactorDH-sha224kdf-scheme", NID_dhSinglePass_cofactorDH_sha224kdf_scheme, 6, &so[6161]}, - {"dhSinglePass-cofactorDH-sha256kdf-scheme", "dhSinglePass-cofactorDH-sha256kdf-scheme", NID_dhSinglePass_cofactorDH_sha256kdf_scheme, 6, &so[6167]}, - {"dhSinglePass-cofactorDH-sha384kdf-scheme", "dhSinglePass-cofactorDH-sha384kdf-scheme", NID_dhSinglePass_cofactorDH_sha384kdf_scheme, 6, &so[6173]}, - {"dhSinglePass-cofactorDH-sha512kdf-scheme", "dhSinglePass-cofactorDH-sha512kdf-scheme", NID_dhSinglePass_cofactorDH_sha512kdf_scheme, 6, &so[6179]}, + {"RSAES-OAEP", "rsaesOaep", NID_rsaesOaep, 9, &so[5984]}, + {"dhpublicnumber", "X9.42 DH", NID_dhpublicnumber, 7, &so[5993]}, + {"brainpoolP160r1", "brainpoolP160r1", NID_brainpoolP160r1, 9, &so[6000]}, + {"brainpoolP160t1", "brainpoolP160t1", NID_brainpoolP160t1, 9, &so[6009]}, + {"brainpoolP192r1", "brainpoolP192r1", NID_brainpoolP192r1, 9, &so[6018]}, + {"brainpoolP192t1", "brainpoolP192t1", NID_brainpoolP192t1, 9, &so[6027]}, + {"brainpoolP224r1", "brainpoolP224r1", NID_brainpoolP224r1, 9, &so[6036]}, + {"brainpoolP224t1", "brainpoolP224t1", NID_brainpoolP224t1, 9, &so[6045]}, + {"brainpoolP256r1", "brainpoolP256r1", NID_brainpoolP256r1, 9, &so[6054]}, + {"brainpoolP256t1", "brainpoolP256t1", NID_brainpoolP256t1, 9, &so[6063]}, + {"brainpoolP320r1", "brainpoolP320r1", NID_brainpoolP320r1, 9, &so[6072]}, + {"brainpoolP320t1", "brainpoolP320t1", NID_brainpoolP320t1, 9, &so[6081]}, + {"brainpoolP384r1", "brainpoolP384r1", NID_brainpoolP384r1, 9, &so[6090]}, + {"brainpoolP384t1", "brainpoolP384t1", NID_brainpoolP384t1, 9, &so[6099]}, + {"brainpoolP512r1", "brainpoolP512r1", NID_brainpoolP512r1, 9, &so[6108]}, + {"brainpoolP512t1", "brainpoolP512t1", NID_brainpoolP512t1, 9, &so[6117]}, + {"PSPECIFIED", "pSpecified", NID_pSpecified, 9, &so[6126]}, + {"dhSinglePass-stdDH-sha1kdf-scheme", "dhSinglePass-stdDH-sha1kdf-scheme", NID_dhSinglePass_stdDH_sha1kdf_scheme, 9, &so[6135]}, + {"dhSinglePass-stdDH-sha224kdf-scheme", "dhSinglePass-stdDH-sha224kdf-scheme", NID_dhSinglePass_stdDH_sha224kdf_scheme, 6, &so[6144]}, + {"dhSinglePass-stdDH-sha256kdf-scheme", "dhSinglePass-stdDH-sha256kdf-scheme", NID_dhSinglePass_stdDH_sha256kdf_scheme, 6, &so[6150]}, + {"dhSinglePass-stdDH-sha384kdf-scheme", "dhSinglePass-stdDH-sha384kdf-scheme", NID_dhSinglePass_stdDH_sha384kdf_scheme, 6, &so[6156]}, + {"dhSinglePass-stdDH-sha512kdf-scheme", "dhSinglePass-stdDH-sha512kdf-scheme", NID_dhSinglePass_stdDH_sha512kdf_scheme, 6, &so[6162]}, + {"dhSinglePass-cofactorDH-sha1kdf-scheme", "dhSinglePass-cofactorDH-sha1kdf-scheme", NID_dhSinglePass_cofactorDH_sha1kdf_scheme, 9, &so[6168]}, + {"dhSinglePass-cofactorDH-sha224kdf-scheme", "dhSinglePass-cofactorDH-sha224kdf-scheme", NID_dhSinglePass_cofactorDH_sha224kdf_scheme, 6, &so[6177]}, + {"dhSinglePass-cofactorDH-sha256kdf-scheme", "dhSinglePass-cofactorDH-sha256kdf-scheme", NID_dhSinglePass_cofactorDH_sha256kdf_scheme, 6, &so[6183]}, + {"dhSinglePass-cofactorDH-sha384kdf-scheme", "dhSinglePass-cofactorDH-sha384kdf-scheme", NID_dhSinglePass_cofactorDH_sha384kdf_scheme, 6, &so[6189]}, + {"dhSinglePass-cofactorDH-sha512kdf-scheme", "dhSinglePass-cofactorDH-sha512kdf-scheme", NID_dhSinglePass_cofactorDH_sha512kdf_scheme, 6, &so[6195]}, {"dh-std-kdf", "dh-std-kdf", NID_dh_std_kdf}, {"dh-cofactor-kdf", "dh-cofactor-kdf", NID_dh_cofactor_kdf}, {"AES-128-CBC-HMAC-SHA256", "aes-128-cbc-hmac-sha256", NID_aes_128_cbc_hmac_sha256}, {"AES-192-CBC-HMAC-SHA256", "aes-192-cbc-hmac-sha256", NID_aes_192_cbc_hmac_sha256}, {"AES-256-CBC-HMAC-SHA256", "aes-256-cbc-hmac-sha256", NID_aes_256_cbc_hmac_sha256}, - {"ct_precert_scts", "CT Precertificate SCTs", NID_ct_precert_scts, 10, &so[6185]}, - {"ct_precert_poison", "CT Precertificate Poison", NID_ct_precert_poison, 10, &so[6195]}, - {"ct_precert_signer", "CT Precertificate Signer", NID_ct_precert_signer, 10, &so[6205]}, - {"ct_cert_scts", "CT Certificate SCTs", NID_ct_cert_scts, 10, &so[6215]}, - {"jurisdictionL", "jurisdictionLocalityName", NID_jurisdictionLocalityName, 11, &so[6225]}, - {"jurisdictionST", "jurisdictionStateOrProvinceName", NID_jurisdictionStateOrProvinceName, 11, &so[6236]}, - {"jurisdictionC", "jurisdictionCountryName", NID_jurisdictionCountryName, 11, &so[6247]}, + {"ct_precert_scts", "CT Precertificate SCTs", NID_ct_precert_scts, 10, &so[6201]}, + {"ct_precert_poison", "CT Precertificate Poison", NID_ct_precert_poison, 10, &so[6211]}, + {"ct_precert_signer", "CT Precertificate Signer", NID_ct_precert_signer, 10, &so[6221]}, + {"ct_cert_scts", "CT Certificate SCTs", NID_ct_cert_scts, 10, &so[6231]}, + {"jurisdictionL", "jurisdictionLocalityName", NID_jurisdictionLocalityName, 11, &so[6241]}, + {"jurisdictionST", "jurisdictionStateOrProvinceName", NID_jurisdictionStateOrProvinceName, 11, &so[6252]}, + {"jurisdictionC", "jurisdictionCountryName", NID_jurisdictionCountryName, 11, &so[6263]}, {"AES-128-OCB", "aes-128-ocb", NID_aes_128_ocb}, {"AES-192-OCB", "aes-192-ocb", NID_aes_192_ocb}, {"AES-256-OCB", "aes-256-ocb", NID_aes_256_ocb}, - {"CAMELLIA-128-GCM", "camellia-128-gcm", NID_camellia_128_gcm, 8, &so[6258]}, - {"CAMELLIA-128-CCM", "camellia-128-ccm", NID_camellia_128_ccm, 8, &so[6266]}, - {"CAMELLIA-128-CTR", "camellia-128-ctr", NID_camellia_128_ctr, 8, &so[6274]}, - {"CAMELLIA-128-CMAC", "camellia-128-cmac", NID_camellia_128_cmac, 8, &so[6282]}, - {"CAMELLIA-192-GCM", "camellia-192-gcm", NID_camellia_192_gcm, 8, &so[6290]}, - {"CAMELLIA-192-CCM", "camellia-192-ccm", NID_camellia_192_ccm, 8, &so[6298]}, - {"CAMELLIA-192-CTR", "camellia-192-ctr", NID_camellia_192_ctr, 8, &so[6306]}, - {"CAMELLIA-192-CMAC", "camellia-192-cmac", NID_camellia_192_cmac, 8, &so[6314]}, - {"CAMELLIA-256-GCM", "camellia-256-gcm", NID_camellia_256_gcm, 8, &so[6322]}, - {"CAMELLIA-256-CCM", "camellia-256-ccm", NID_camellia_256_ccm, 8, &so[6330]}, - {"CAMELLIA-256-CTR", "camellia-256-ctr", NID_camellia_256_ctr, 8, &so[6338]}, - {"CAMELLIA-256-CMAC", "camellia-256-cmac", NID_camellia_256_cmac, 8, &so[6346]}, - {"id-scrypt", "scrypt", NID_id_scrypt, 9, &so[6354]}, - {"id-tc26", "id-tc26", NID_id_tc26, 5, &so[6363]}, + {"CAMELLIA-128-GCM", "camellia-128-gcm", NID_camellia_128_gcm, 8, &so[6274]}, + {"CAMELLIA-128-CCM", "camellia-128-ccm", NID_camellia_128_ccm, 8, &so[6282]}, + {"CAMELLIA-128-CTR", "camellia-128-ctr", NID_camellia_128_ctr, 8, &so[6290]}, + {"CAMELLIA-128-CMAC", "camellia-128-cmac", NID_camellia_128_cmac, 8, &so[6298]}, + {"CAMELLIA-192-GCM", "camellia-192-gcm", NID_camellia_192_gcm, 8, &so[6306]}, + {"CAMELLIA-192-CCM", "camellia-192-ccm", NID_camellia_192_ccm, 8, &so[6314]}, + {"CAMELLIA-192-CTR", "camellia-192-ctr", NID_camellia_192_ctr, 8, &so[6322]}, + {"CAMELLIA-192-CMAC", "camellia-192-cmac", NID_camellia_192_cmac, 8, &so[6330]}, + {"CAMELLIA-256-GCM", "camellia-256-gcm", NID_camellia_256_gcm, 8, &so[6338]}, + {"CAMELLIA-256-CCM", "camellia-256-ccm", NID_camellia_256_ccm, 8, &so[6346]}, + {"CAMELLIA-256-CTR", "camellia-256-ctr", NID_camellia_256_ctr, 8, &so[6354]}, + {"CAMELLIA-256-CMAC", "camellia-256-cmac", NID_camellia_256_cmac, 8, &so[6362]}, + {"id-scrypt", "scrypt", NID_id_scrypt, 9, &so[6370]}, + {"id-tc26", "id-tc26", NID_id_tc26, 5, &so[6379]}, {"gost89-cnt-12", "gost89-cnt-12", NID_gost89_cnt_12}, {"gost-mac-12", "gost-mac-12", NID_gost_mac_12}, - {"id-tc26-algorithms", "id-tc26-algorithms", NID_id_tc26_algorithms, 6, &so[6368]}, - {"id-tc26-sign", "id-tc26-sign", NID_id_tc26_sign, 7, &so[6374]}, - {"gost2012_256", "GOST R 34.10-2012 with 256 bit modulus", NID_id_GostR3410_2012_256, 8, &so[6381]}, - {"gost2012_512", "GOST R 34.10-2012 with 512 bit modulus", NID_id_GostR3410_2012_512, 8, &so[6389]}, - {"id-tc26-digest", "id-tc26-digest", NID_id_tc26_digest, 7, &so[6397]}, - {"md_gost12_256", "GOST R 34.11-2012 with 256 bit hash", NID_id_GostR3411_2012_256, 8, &so[6404]}, - {"md_gost12_512", "GOST R 34.11-2012 with 512 bit hash", NID_id_GostR3411_2012_512, 8, &so[6412]}, - {"id-tc26-signwithdigest", "id-tc26-signwithdigest", NID_id_tc26_signwithdigest, 7, &so[6420]}, - {"id-tc26-signwithdigest-gost3410-2012-256", "GOST R 34.10-2012 with GOST R 34.11-2012 (256 bit)", NID_id_tc26_signwithdigest_gost3410_2012_256, 8, &so[6427]}, - {"id-tc26-signwithdigest-gost3410-2012-512", "GOST R 34.10-2012 with GOST R 34.11-2012 (512 bit)", NID_id_tc26_signwithdigest_gost3410_2012_512, 8, &so[6435]}, - {"id-tc26-mac", "id-tc26-mac", NID_id_tc26_mac, 7, &so[6443]}, - {"id-tc26-hmac-gost-3411-2012-256", "HMAC GOST 34.11-2012 256 bit", NID_id_tc26_hmac_gost_3411_2012_256, 8, &so[6450]}, - {"id-tc26-hmac-gost-3411-2012-512", "HMAC GOST 34.11-2012 512 bit", NID_id_tc26_hmac_gost_3411_2012_512, 8, &so[6458]}, - {"id-tc26-cipher", "id-tc26-cipher", NID_id_tc26_cipher, 7, &so[6466]}, - {"id-tc26-agreement", "id-tc26-agreement", NID_id_tc26_agreement, 7, &so[6473]}, - {"id-tc26-agreement-gost-3410-2012-256", "id-tc26-agreement-gost-3410-2012-256", NID_id_tc26_agreement_gost_3410_2012_256, 8, &so[6480]}, - {"id-tc26-agreement-gost-3410-2012-512", "id-tc26-agreement-gost-3410-2012-512", NID_id_tc26_agreement_gost_3410_2012_512, 8, &so[6488]}, - {"id-tc26-constants", "id-tc26-constants", NID_id_tc26_constants, 6, &so[6496]}, - {"id-tc26-sign-constants", "id-tc26-sign-constants", NID_id_tc26_sign_constants, 7, &so[6502]}, - {"id-tc26-gost-3410-2012-512-constants", "id-tc26-gost-3410-2012-512-constants", NID_id_tc26_gost_3410_2012_512_constants, 8, &so[6509]}, - {"id-tc26-gost-3410-2012-512-paramSetTest", "GOST R 34.10-2012 (512 bit) testing parameter set", NID_id_tc26_gost_3410_2012_512_paramSetTest, 9, &so[6517]}, - {"id-tc26-gost-3410-2012-512-paramSetA", "GOST R 34.10-2012 (512 bit) ParamSet A", NID_id_tc26_gost_3410_2012_512_paramSetA, 9, &so[6526]}, - {"id-tc26-gost-3410-2012-512-paramSetB", "GOST R 34.10-2012 (512 bit) ParamSet B", NID_id_tc26_gost_3410_2012_512_paramSetB, 9, &so[6535]}, - {"id-tc26-digest-constants", "id-tc26-digest-constants", NID_id_tc26_digest_constants, 7, &so[6544]}, - {"id-tc26-cipher-constants", "id-tc26-cipher-constants", NID_id_tc26_cipher_constants, 7, &so[6551]}, - {"id-tc26-gost-28147-constants", "id-tc26-gost-28147-constants", NID_id_tc26_gost_28147_constants, 8, &so[6558]}, - {"id-tc26-gost-28147-param-Z", "GOST 28147-89 TC26 parameter set", NID_id_tc26_gost_28147_param_Z, 9, &so[6566]}, - {"INN", "INN", NID_INN, 8, &so[6575]}, - {"OGRN", "OGRN", NID_OGRN, 5, &so[6583]}, - {"SNILS", "SNILS", NID_SNILS, 5, &so[6588]}, - {"subjectSignTool", "Signing Tool of Subject", NID_subjectSignTool, 5, &so[6593]}, - {"issuerSignTool", "Signing Tool of Issuer", NID_issuerSignTool, 5, &so[6598]}, + {"id-tc26-algorithms", "id-tc26-algorithms", NID_id_tc26_algorithms, 6, &so[6384]}, + {"id-tc26-sign", "id-tc26-sign", NID_id_tc26_sign, 7, &so[6390]}, + {"gost2012_256", "GOST R 34.10-2012 with 256 bit modulus", NID_id_GostR3410_2012_256, 8, &so[6397]}, + {"gost2012_512", "GOST R 34.10-2012 with 512 bit modulus", NID_id_GostR3410_2012_512, 8, &so[6405]}, + {"id-tc26-digest", "id-tc26-digest", NID_id_tc26_digest, 7, &so[6413]}, + {"md_gost12_256", "GOST R 34.11-2012 with 256 bit hash", NID_id_GostR3411_2012_256, 8, &so[6420]}, + {"md_gost12_512", "GOST R 34.11-2012 with 512 bit hash", NID_id_GostR3411_2012_512, 8, &so[6428]}, + {"id-tc26-signwithdigest", "id-tc26-signwithdigest", NID_id_tc26_signwithdigest, 7, &so[6436]}, + {"id-tc26-signwithdigest-gost3410-2012-256", "GOST R 34.10-2012 with GOST R 34.11-2012 (256 bit)", NID_id_tc26_signwithdigest_gost3410_2012_256, 8, &so[6443]}, + {"id-tc26-signwithdigest-gost3410-2012-512", "GOST R 34.10-2012 with GOST R 34.11-2012 (512 bit)", NID_id_tc26_signwithdigest_gost3410_2012_512, 8, &so[6451]}, + {"id-tc26-mac", "id-tc26-mac", NID_id_tc26_mac, 7, &so[6459]}, + {"id-tc26-hmac-gost-3411-2012-256", "HMAC GOST 34.11-2012 256 bit", NID_id_tc26_hmac_gost_3411_2012_256, 8, &so[6466]}, + {"id-tc26-hmac-gost-3411-2012-512", "HMAC GOST 34.11-2012 512 bit", NID_id_tc26_hmac_gost_3411_2012_512, 8, &so[6474]}, + {"id-tc26-cipher", "id-tc26-cipher", NID_id_tc26_cipher, 7, &so[6482]}, + {"id-tc26-agreement", "id-tc26-agreement", NID_id_tc26_agreement, 7, &so[6489]}, + {"id-tc26-agreement-gost-3410-2012-256", "id-tc26-agreement-gost-3410-2012-256", NID_id_tc26_agreement_gost_3410_2012_256, 8, &so[6496]}, + {"id-tc26-agreement-gost-3410-2012-512", "id-tc26-agreement-gost-3410-2012-512", NID_id_tc26_agreement_gost_3410_2012_512, 8, &so[6504]}, + {"id-tc26-constants", "id-tc26-constants", NID_id_tc26_constants, 6, &so[6512]}, + {"id-tc26-sign-constants", "id-tc26-sign-constants", NID_id_tc26_sign_constants, 7, &so[6518]}, + {"id-tc26-gost-3410-2012-512-constants", "id-tc26-gost-3410-2012-512-constants", NID_id_tc26_gost_3410_2012_512_constants, 8, &so[6525]}, + {"id-tc26-gost-3410-2012-512-paramSetTest", "GOST R 34.10-2012 (512 bit) testing parameter set", NID_id_tc26_gost_3410_2012_512_paramSetTest, 9, &so[6533]}, + {"id-tc26-gost-3410-2012-512-paramSetA", "GOST R 34.10-2012 (512 bit) ParamSet A", NID_id_tc26_gost_3410_2012_512_paramSetA, 9, &so[6542]}, + {"id-tc26-gost-3410-2012-512-paramSetB", "GOST R 34.10-2012 (512 bit) ParamSet B", NID_id_tc26_gost_3410_2012_512_paramSetB, 9, &so[6551]}, + {"id-tc26-digest-constants", "id-tc26-digest-constants", NID_id_tc26_digest_constants, 7, &so[6560]}, + {"id-tc26-cipher-constants", "id-tc26-cipher-constants", NID_id_tc26_cipher_constants, 7, &so[6567]}, + {"id-tc26-gost-28147-constants", "id-tc26-gost-28147-constants", NID_id_tc26_gost_28147_constants, 8, &so[6574]}, + {"id-tc26-gost-28147-param-Z", "GOST 28147-89 TC26 parameter set", NID_id_tc26_gost_28147_param_Z, 9, &so[6582]}, + {"INN", "INN", NID_INN, 8, &so[6591]}, + {"OGRN", "OGRN", NID_OGRN, 5, &so[6599]}, + {"SNILS", "SNILS", NID_SNILS, 5, &so[6604]}, + {"subjectSignTool", "Signing Tool of Subject", NID_subjectSignTool, 5, &so[6609]}, + {"issuerSignTool", "Signing Tool of Issuer", NID_issuerSignTool, 5, &so[6614]}, {"gost89-cbc", "gost89-cbc", NID_gost89_cbc}, {"gost89-ecb", "gost89-ecb", NID_gost89_ecb}, {"gost89-ctr", "gost89-ctr", NID_gost89_ctr}, @@ -2079,22 +2084,22 @@ static const ASN1_OBJECT nid_objs[NUM_NID] = { {"grasshopper-mac", "grasshopper-mac", NID_grasshopper_mac}, {"ChaCha20-Poly1305", "chacha20-poly1305", NID_chacha20_poly1305}, {"ChaCha20", "chacha20", NID_chacha20}, - {"tlsfeature", "TLS Feature", NID_tlsfeature, 8, &so[6603]}, + {"tlsfeature", "TLS Feature", NID_tlsfeature, 8, &so[6619]}, {"TLS1-PRF", "tls1-prf", NID_tls1_prf}, - {"ipsecIKE", "ipsec Internet Key Exchange", NID_ipsec_IKE, 8, &so[6611]}, - {"capwapAC", "Ctrl/provision WAP Access", NID_capwapAC, 8, &so[6619]}, - {"capwapWTP", "Ctrl/Provision WAP Termination", NID_capwapWTP, 8, &so[6627]}, - {"secureShellClient", "SSH Client", NID_sshClient, 8, &so[6635]}, - {"secureShellServer", "SSH Server", NID_sshServer, 8, &so[6643]}, - {"sendRouter", "Send Router", NID_sendRouter, 8, &so[6651]}, - {"sendProxiedRouter", "Send Proxied Router", NID_sendProxiedRouter, 8, &so[6659]}, - {"sendOwner", "Send Owner", NID_sendOwner, 8, &so[6667]}, - {"sendProxiedOwner", "Send Proxied Owner", NID_sendProxiedOwner, 8, &so[6675]}, - {"id-pkinit", "id-pkinit", NID_id_pkinit, 6, &so[6683]}, - {"pkInitClientAuth", "PKINIT Client Auth", NID_pkInitClientAuth, 7, &so[6689]}, - {"pkInitKDC", "Signing KDC Response", NID_pkInitKDC, 7, &so[6696]}, - {"X25519", "X25519", NID_X25519, 3, &so[6703]}, - {"X448", "X448", NID_X448, 3, &so[6706]}, + {"ipsecIKE", "ipsec Internet Key Exchange", NID_ipsec_IKE, 8, &so[6627]}, + {"capwapAC", "Ctrl/provision WAP Access", NID_capwapAC, 8, &so[6635]}, + {"capwapWTP", "Ctrl/Provision WAP Termination", NID_capwapWTP, 8, &so[6643]}, + {"secureShellClient", "SSH Client", NID_sshClient, 8, &so[6651]}, + {"secureShellServer", "SSH Server", NID_sshServer, 8, &so[6659]}, + {"sendRouter", "Send Router", NID_sendRouter, 8, &so[6667]}, + {"sendProxiedRouter", "Send Proxied Router", NID_sendProxiedRouter, 8, &so[6675]}, + {"sendOwner", "Send Owner", NID_sendOwner, 8, &so[6683]}, + {"sendProxiedOwner", "Send Proxied Owner", NID_sendProxiedOwner, 8, &so[6691]}, + {"id-pkinit", "id-pkinit", NID_id_pkinit, 6, &so[6699]}, + {"pkInitClientAuth", "PKINIT Client Auth", NID_pkInitClientAuth, 7, &so[6705]}, + {"pkInitKDC", "Signing KDC Response", NID_pkInitKDC, 7, &so[6712]}, + {"X25519", "X25519", NID_X25519, 3, &so[6719]}, + {"X448", "X448", NID_X448, 3, &so[6722]}, {"HKDF", "hkdf", NID_hkdf}, {"KxRSA", "kx-rsa", NID_kx_rsa}, {"KxECDHE", "kx-ecdhe", NID_kx_ecdhe}, @@ -2115,123 +2120,126 @@ static const ASN1_OBJECT nid_objs[NUM_NID] = { {"AuthNULL", "auth-null", NID_auth_null}, { NULL, NULL, NID_undef }, { NULL, NULL, NID_undef }, - {"BLAKE2b512", "blake2b512", NID_blake2b512, 11, &so[6709]}, - {"BLAKE2s256", "blake2s256", NID_blake2s256, 11, &so[6720]}, - {"id-smime-ct-contentCollection", "id-smime-ct-contentCollection", NID_id_smime_ct_contentCollection, 11, &so[6731]}, - {"id-smime-ct-authEnvelopedData", "id-smime-ct-authEnvelopedData", NID_id_smime_ct_authEnvelopedData, 11, &so[6742]}, - {"id-ct-xml", "id-ct-xml", NID_id_ct_xml, 11, &so[6753]}, + {"BLAKE2b512", "blake2b512", NID_blake2b512, 11, &so[6725]}, + {"BLAKE2s256", "blake2s256", NID_blake2s256, 11, &so[6736]}, + {"id-smime-ct-contentCollection", "id-smime-ct-contentCollection", NID_id_smime_ct_contentCollection, 11, &so[6747]}, + {"id-smime-ct-authEnvelopedData", "id-smime-ct-authEnvelopedData", NID_id_smime_ct_authEnvelopedData, 11, &so[6758]}, + {"id-ct-xml", "id-ct-xml", NID_id_ct_xml, 11, &so[6769]}, {"Poly1305", "poly1305", NID_poly1305}, {"SipHash", "siphash", NID_siphash}, {"KxANY", "kx-any", NID_kx_any}, {"AuthANY", "auth-any", NID_auth_any}, - {"ARIA-128-ECB", "aria-128-ecb", NID_aria_128_ecb, 9, &so[6764]}, - {"ARIA-128-CBC", "aria-128-cbc", NID_aria_128_cbc, 9, &so[6773]}, - {"ARIA-128-CFB", "aria-128-cfb", NID_aria_128_cfb128, 9, &so[6782]}, - {"ARIA-128-OFB", "aria-128-ofb", NID_aria_128_ofb128, 9, &so[6791]}, - {"ARIA-128-CTR", "aria-128-ctr", NID_aria_128_ctr, 9, &so[6800]}, - {"ARIA-192-ECB", "aria-192-ecb", NID_aria_192_ecb, 9, &so[6809]}, - {"ARIA-192-CBC", "aria-192-cbc", NID_aria_192_cbc, 9, &so[6818]}, - {"ARIA-192-CFB", "aria-192-cfb", NID_aria_192_cfb128, 9, &so[6827]}, - {"ARIA-192-OFB", "aria-192-ofb", NID_aria_192_ofb128, 9, &so[6836]}, - {"ARIA-192-CTR", "aria-192-ctr", NID_aria_192_ctr, 9, &so[6845]}, - {"ARIA-256-ECB", "aria-256-ecb", NID_aria_256_ecb, 9, &so[6854]}, - {"ARIA-256-CBC", "aria-256-cbc", NID_aria_256_cbc, 9, &so[6863]}, - {"ARIA-256-CFB", "aria-256-cfb", NID_aria_256_cfb128, 9, &so[6872]}, - {"ARIA-256-OFB", "aria-256-ofb", NID_aria_256_ofb128, 9, &so[6881]}, - {"ARIA-256-CTR", "aria-256-ctr", NID_aria_256_ctr, 9, &so[6890]}, + {"ARIA-128-ECB", "aria-128-ecb", NID_aria_128_ecb, 9, &so[6780]}, + {"ARIA-128-CBC", "aria-128-cbc", NID_aria_128_cbc, 9, &so[6789]}, + {"ARIA-128-CFB", "aria-128-cfb", NID_aria_128_cfb128, 9, &so[6798]}, + {"ARIA-128-OFB", "aria-128-ofb", NID_aria_128_ofb128, 9, &so[6807]}, + {"ARIA-128-CTR", "aria-128-ctr", NID_aria_128_ctr, 9, &so[6816]}, + {"ARIA-192-ECB", "aria-192-ecb", NID_aria_192_ecb, 9, &so[6825]}, + {"ARIA-192-CBC", "aria-192-cbc", NID_aria_192_cbc, 9, &so[6834]}, + {"ARIA-192-CFB", "aria-192-cfb", NID_aria_192_cfb128, 9, &so[6843]}, + {"ARIA-192-OFB", "aria-192-ofb", NID_aria_192_ofb128, 9, &so[6852]}, + {"ARIA-192-CTR", "aria-192-ctr", NID_aria_192_ctr, 9, &so[6861]}, + {"ARIA-256-ECB", "aria-256-ecb", NID_aria_256_ecb, 9, &so[6870]}, + {"ARIA-256-CBC", "aria-256-cbc", NID_aria_256_cbc, 9, &so[6879]}, + {"ARIA-256-CFB", "aria-256-cfb", NID_aria_256_cfb128, 9, &so[6888]}, + {"ARIA-256-OFB", "aria-256-ofb", NID_aria_256_ofb128, 9, &so[6897]}, + {"ARIA-256-CTR", "aria-256-ctr", NID_aria_256_ctr, 9, &so[6906]}, {"ARIA-128-CFB1", "aria-128-cfb1", NID_aria_128_cfb1}, {"ARIA-192-CFB1", "aria-192-cfb1", NID_aria_192_cfb1}, {"ARIA-256-CFB1", "aria-256-cfb1", NID_aria_256_cfb1}, {"ARIA-128-CFB8", "aria-128-cfb8", NID_aria_128_cfb8}, {"ARIA-192-CFB8", "aria-192-cfb8", NID_aria_192_cfb8}, {"ARIA-256-CFB8", "aria-256-cfb8", NID_aria_256_cfb8}, - {"id-smime-aa-signingCertificateV2", "id-smime-aa-signingCertificateV2", NID_id_smime_aa_signingCertificateV2, 11, &so[6899]}, - {"ED25519", "ED25519", NID_ED25519, 3, &so[6910]}, - {"ED448", "ED448", NID_ED448, 3, &so[6913]}, - {"organizationIdentifier", "organizationIdentifier", NID_organizationIdentifier, 3, &so[6916]}, - {"c3", "countryCode3c", NID_countryCode3c, 3, &so[6919]}, - {"n3", "countryCode3n", NID_countryCode3n, 3, &so[6922]}, - {"dnsName", "dnsName", NID_dnsName, 3, &so[6925]}, - {"x509ExtAdmission", "Professional Information or basis for Admission", NID_x509ExtAdmission, 5, &so[6928]}, - {"SHA512-224", "sha512-224", NID_sha512_224, 9, &so[6933]}, - {"SHA512-256", "sha512-256", NID_sha512_256, 9, &so[6942]}, - {"SHA3-224", "sha3-224", NID_sha3_224, 9, &so[6951]}, - {"SHA3-256", "sha3-256", NID_sha3_256, 9, &so[6960]}, - {"SHA3-384", "sha3-384", NID_sha3_384, 9, &so[6969]}, - {"SHA3-512", "sha3-512", NID_sha3_512, 9, &so[6978]}, - {"SHAKE128", "shake128", NID_shake128, 9, &so[6987]}, - {"SHAKE256", "shake256", NID_shake256, 9, &so[6996]}, - {"id-hmacWithSHA3-224", "hmac-sha3-224", NID_hmac_sha3_224, 9, &so[7005]}, - {"id-hmacWithSHA3-256", "hmac-sha3-256", NID_hmac_sha3_256, 9, &so[7014]}, - {"id-hmacWithSHA3-384", "hmac-sha3-384", NID_hmac_sha3_384, 9, &so[7023]}, - {"id-hmacWithSHA3-512", "hmac-sha3-512", NID_hmac_sha3_512, 9, &so[7032]}, - {"id-dsa-with-sha384", "dsa_with_SHA384", NID_dsa_with_SHA384, 9, &so[7041]}, - {"id-dsa-with-sha512", "dsa_with_SHA512", NID_dsa_with_SHA512, 9, &so[7050]}, - {"id-dsa-with-sha3-224", "dsa_with_SHA3-224", NID_dsa_with_SHA3_224, 9, &so[7059]}, - {"id-dsa-with-sha3-256", "dsa_with_SHA3-256", NID_dsa_with_SHA3_256, 9, &so[7068]}, - {"id-dsa-with-sha3-384", "dsa_with_SHA3-384", NID_dsa_with_SHA3_384, 9, &so[7077]}, - {"id-dsa-with-sha3-512", "dsa_with_SHA3-512", NID_dsa_with_SHA3_512, 9, &so[7086]}, - {"id-ecdsa-with-sha3-224", "ecdsa_with_SHA3-224", NID_ecdsa_with_SHA3_224, 9, &so[7095]}, - {"id-ecdsa-with-sha3-256", "ecdsa_with_SHA3-256", NID_ecdsa_with_SHA3_256, 9, &so[7104]}, - {"id-ecdsa-with-sha3-384", "ecdsa_with_SHA3-384", NID_ecdsa_with_SHA3_384, 9, &so[7113]}, - {"id-ecdsa-with-sha3-512", "ecdsa_with_SHA3-512", NID_ecdsa_with_SHA3_512, 9, &so[7122]}, - {"id-rsassa-pkcs1-v1_5-with-sha3-224", "RSA-SHA3-224", NID_RSA_SHA3_224, 9, &so[7131]}, - {"id-rsassa-pkcs1-v1_5-with-sha3-256", "RSA-SHA3-256", NID_RSA_SHA3_256, 9, &so[7140]}, - {"id-rsassa-pkcs1-v1_5-with-sha3-384", "RSA-SHA3-384", NID_RSA_SHA3_384, 9, &so[7149]}, - {"id-rsassa-pkcs1-v1_5-with-sha3-512", "RSA-SHA3-512", NID_RSA_SHA3_512, 9, &so[7158]}, - {"ARIA-128-CCM", "aria-128-ccm", NID_aria_128_ccm, 9, &so[7167]}, - {"ARIA-192-CCM", "aria-192-ccm", NID_aria_192_ccm, 9, &so[7176]}, - {"ARIA-256-CCM", "aria-256-ccm", NID_aria_256_ccm, 9, &so[7185]}, - {"ARIA-128-GCM", "aria-128-gcm", NID_aria_128_gcm, 9, &so[7194]}, - {"ARIA-192-GCM", "aria-192-gcm", NID_aria_192_gcm, 9, &so[7203]}, - {"ARIA-256-GCM", "aria-256-gcm", NID_aria_256_gcm, 9, &so[7212]}, + {"id-smime-aa-signingCertificateV2", "id-smime-aa-signingCertificateV2", NID_id_smime_aa_signingCertificateV2, 11, &so[6915]}, + {"ED25519", "ED25519", NID_ED25519, 3, &so[6926]}, + {"ED448", "ED448", NID_ED448, 3, &so[6929]}, + {"organizationIdentifier", "organizationIdentifier", NID_organizationIdentifier, 3, &so[6932]}, + {"c3", "countryCode3c", NID_countryCode3c, 3, &so[6935]}, + {"n3", "countryCode3n", NID_countryCode3n, 3, &so[6938]}, + {"dnsName", "dnsName", NID_dnsName, 3, &so[6941]}, + {"x509ExtAdmission", "Professional Information or basis for Admission", NID_x509ExtAdmission, 5, &so[6944]}, + {"SHA512-224", "sha512-224", NID_sha512_224, 9, &so[6949]}, + {"SHA512-256", "sha512-256", NID_sha512_256, 9, &so[6958]}, + {"SHA3-224", "sha3-224", NID_sha3_224, 9, &so[6967]}, + {"SHA3-256", "sha3-256", NID_sha3_256, 9, &so[6976]}, + {"SHA3-384", "sha3-384", NID_sha3_384, 9, &so[6985]}, + {"SHA3-512", "sha3-512", NID_sha3_512, 9, &so[6994]}, + {"SHAKE128", "shake128", NID_shake128, 9, &so[7003]}, + {"SHAKE256", "shake256", NID_shake256, 9, &so[7012]}, + {"id-hmacWithSHA3-224", "hmac-sha3-224", NID_hmac_sha3_224, 9, &so[7021]}, + {"id-hmacWithSHA3-256", "hmac-sha3-256", NID_hmac_sha3_256, 9, &so[7030]}, + {"id-hmacWithSHA3-384", "hmac-sha3-384", NID_hmac_sha3_384, 9, &so[7039]}, + {"id-hmacWithSHA3-512", "hmac-sha3-512", NID_hmac_sha3_512, 9, &so[7048]}, + {"id-dsa-with-sha384", "dsa_with_SHA384", NID_dsa_with_SHA384, 9, &so[7057]}, + {"id-dsa-with-sha512", "dsa_with_SHA512", NID_dsa_with_SHA512, 9, &so[7066]}, + {"id-dsa-with-sha3-224", "dsa_with_SHA3-224", NID_dsa_with_SHA3_224, 9, &so[7075]}, + {"id-dsa-with-sha3-256", "dsa_with_SHA3-256", NID_dsa_with_SHA3_256, 9, &so[7084]}, + {"id-dsa-with-sha3-384", "dsa_with_SHA3-384", NID_dsa_with_SHA3_384, 9, &so[7093]}, + {"id-dsa-with-sha3-512", "dsa_with_SHA3-512", NID_dsa_with_SHA3_512, 9, &so[7102]}, + {"id-ecdsa-with-sha3-224", "ecdsa_with_SHA3-224", NID_ecdsa_with_SHA3_224, 9, &so[7111]}, + {"id-ecdsa-with-sha3-256", "ecdsa_with_SHA3-256", NID_ecdsa_with_SHA3_256, 9, &so[7120]}, + {"id-ecdsa-with-sha3-384", "ecdsa_with_SHA3-384", NID_ecdsa_with_SHA3_384, 9, &so[7129]}, + {"id-ecdsa-with-sha3-512", "ecdsa_with_SHA3-512", NID_ecdsa_with_SHA3_512, 9, &so[7138]}, + {"id-rsassa-pkcs1-v1_5-with-sha3-224", "RSA-SHA3-224", NID_RSA_SHA3_224, 9, &so[7147]}, + {"id-rsassa-pkcs1-v1_5-with-sha3-256", "RSA-SHA3-256", NID_RSA_SHA3_256, 9, &so[7156]}, + {"id-rsassa-pkcs1-v1_5-with-sha3-384", "RSA-SHA3-384", NID_RSA_SHA3_384, 9, &so[7165]}, + {"id-rsassa-pkcs1-v1_5-with-sha3-512", "RSA-SHA3-512", NID_RSA_SHA3_512, 9, &so[7174]}, + {"ARIA-128-CCM", "aria-128-ccm", NID_aria_128_ccm, 9, &so[7183]}, + {"ARIA-192-CCM", "aria-192-ccm", NID_aria_192_ccm, 9, &so[7192]}, + {"ARIA-256-CCM", "aria-256-ccm", NID_aria_256_ccm, 9, &so[7201]}, + {"ARIA-128-GCM", "aria-128-gcm", NID_aria_128_gcm, 9, &so[7210]}, + {"ARIA-192-GCM", "aria-192-gcm", NID_aria_192_gcm, 9, &so[7219]}, + {"ARIA-256-GCM", "aria-256-gcm", NID_aria_256_gcm, 9, &so[7228]}, {"ffdhe2048", "ffdhe2048", NID_ffdhe2048}, {"ffdhe3072", "ffdhe3072", NID_ffdhe3072}, {"ffdhe4096", "ffdhe4096", NID_ffdhe4096}, {"ffdhe6144", "ffdhe6144", NID_ffdhe6144}, {"ffdhe8192", "ffdhe8192", NID_ffdhe8192}, - {"cmcCA", "CMC Certificate Authority", NID_cmcCA, 8, &so[7221]}, - {"cmcRA", "CMC Registration Authority", NID_cmcRA, 8, &so[7229]}, - {"SM4-ECB", "sm4-ecb", NID_sm4_ecb, 8, &so[7237]}, - {"SM4-CBC", "sm4-cbc", NID_sm4_cbc, 8, &so[7245]}, - {"SM4-OFB", "sm4-ofb", NID_sm4_ofb128, 8, &so[7253]}, - {"SM4-CFB1", "sm4-cfb1", NID_sm4_cfb1, 8, &so[7261]}, - {"SM4-CFB", "sm4-cfb", NID_sm4_cfb128, 8, &so[7269]}, - {"SM4-CFB8", "sm4-cfb8", NID_sm4_cfb8, 8, &so[7277]}, - {"SM4-CTR", "sm4-ctr", NID_sm4_ctr, 8, &so[7285]}, - {"ISO-CN", "ISO CN Member Body", NID_ISO_CN, 3, &so[7293]}, - {"oscca", "oscca", NID_oscca, 5, &so[7296]}, - {"sm-scheme", "sm-scheme", NID_sm_scheme, 6, &so[7301]}, - {"SM3", "sm3", NID_sm3, 8, &so[7307]}, - {"RSA-SM3", "sm3WithRSAEncryption", NID_sm3WithRSAEncryption, 8, &so[7315]}, - {"RSA-SHA512/224", "sha512-224WithRSAEncryption", NID_sha512_224WithRSAEncryption, 9, &so[7323]}, - {"RSA-SHA512/256", "sha512-256WithRSAEncryption", NID_sha512_256WithRSAEncryption, 9, &so[7332]}, - {"id-tc26-gost-3410-2012-256-constants", "id-tc26-gost-3410-2012-256-constants", NID_id_tc26_gost_3410_2012_256_constants, 8, &so[7341]}, - {"id-tc26-gost-3410-2012-256-paramSetA", "GOST R 34.10-2012 (256 bit) ParamSet A", NID_id_tc26_gost_3410_2012_256_paramSetA, 9, &so[7349]}, - {"id-tc26-gost-3410-2012-512-paramSetC", "GOST R 34.10-2012 (512 bit) ParamSet C", NID_id_tc26_gost_3410_2012_512_paramSetC, 9, &so[7358]}, - {"ISO-UA", "ISO-UA", NID_ISO_UA, 3, &so[7367]}, - {"ua-pki", "ua-pki", NID_ua_pki, 7, &so[7370]}, - {"dstu28147", "DSTU Gost 28147-2009", NID_dstu28147, 10, &so[7377]}, - {"dstu28147-ofb", "DSTU Gost 28147-2009 OFB mode", NID_dstu28147_ofb, 11, &so[7387]}, - {"dstu28147-cfb", "DSTU Gost 28147-2009 CFB mode", NID_dstu28147_cfb, 11, &so[7398]}, - {"dstu28147-wrap", "DSTU Gost 28147-2009 key wrap", NID_dstu28147_wrap, 11, &so[7409]}, - {"hmacWithDstu34311", "HMAC DSTU Gost 34311-95", NID_hmacWithDstu34311, 10, &so[7420]}, - {"dstu34311", "DSTU Gost 34311-95", NID_dstu34311, 10, &so[7430]}, - {"dstu4145le", "DSTU 4145-2002 little endian", NID_dstu4145le, 11, &so[7440]}, - {"dstu4145be", "DSTU 4145-2002 big endian", NID_dstu4145be, 13, &so[7451]}, - {"uacurve0", "DSTU curve 0", NID_uacurve0, 13, &so[7464]}, - {"uacurve1", "DSTU curve 1", NID_uacurve1, 13, &so[7477]}, - {"uacurve2", "DSTU curve 2", NID_uacurve2, 13, &so[7490]}, - {"uacurve3", "DSTU curve 3", NID_uacurve3, 13, &so[7503]}, - {"uacurve4", "DSTU curve 4", NID_uacurve4, 13, &so[7516]}, - {"uacurve5", "DSTU curve 5", NID_uacurve5, 13, &so[7529]}, - {"uacurve6", "DSTU curve 6", NID_uacurve6, 13, &so[7542]}, - {"uacurve7", "DSTU curve 7", NID_uacurve7, 13, &so[7555]}, - {"uacurve8", "DSTU curve 8", NID_uacurve8, 13, &so[7568]}, - {"uacurve9", "DSTU curve 9", NID_uacurve9, 13, &so[7581]}, + {"cmcCA", "CMC Certificate Authority", NID_cmcCA, 8, &so[7237]}, + {"cmcRA", "CMC Registration Authority", NID_cmcRA, 8, &so[7245]}, + {"SM4-ECB", "sm4-ecb", NID_sm4_ecb, 8, &so[7253]}, + {"SM4-CBC", "sm4-cbc", NID_sm4_cbc, 8, &so[7261]}, + {"SM4-OFB", "sm4-ofb", NID_sm4_ofb128, 8, &so[7269]}, + {"SM4-CFB1", "sm4-cfb1", NID_sm4_cfb1, 8, &so[7277]}, + {"SM4-CFB", "sm4-cfb", NID_sm4_cfb128, 8, &so[7285]}, + {"SM4-CFB8", "sm4-cfb8", NID_sm4_cfb8, 8, &so[7293]}, + {"SM4-CTR", "sm4-ctr", NID_sm4_ctr, 8, &so[7301]}, + {"ISO-CN", "ISO CN Member Body", NID_ISO_CN, 3, &so[7309]}, + {"oscca", "oscca", NID_oscca, 5, &so[7312]}, + {"sm-scheme", "sm-scheme", NID_sm_scheme, 6, &so[7317]}, + {"SM3", "sm3", NID_sm3, 8, &so[7323]}, + {"RSA-SM3", "sm3WithRSAEncryption", NID_sm3WithRSAEncryption, 8, &so[7331]}, + {"RSA-SHA512/224", "sha512-224WithRSAEncryption", NID_sha512_224WithRSAEncryption, 9, &so[7339]}, + {"RSA-SHA512/256", "sha512-256WithRSAEncryption", NID_sha512_256WithRSAEncryption, 9, &so[7348]}, + {"id-tc26-gost-3410-2012-256-constants", "id-tc26-gost-3410-2012-256-constants", NID_id_tc26_gost_3410_2012_256_constants, 8, &so[7357]}, + {"id-tc26-gost-3410-2012-256-paramSetA", "GOST R 34.10-2012 (256 bit) ParamSet A", NID_id_tc26_gost_3410_2012_256_paramSetA, 9, &so[7365]}, + {"id-tc26-gost-3410-2012-512-paramSetC", "GOST R 34.10-2012 (512 bit) ParamSet C", NID_id_tc26_gost_3410_2012_512_paramSetC, 9, &so[7374]}, + {"ISO-UA", "ISO-UA", NID_ISO_UA, 3, &so[7383]}, + {"ua-pki", "ua-pki", NID_ua_pki, 7, &so[7386]}, + {"dstu28147", "DSTU Gost 28147-2009", NID_dstu28147, 10, &so[7393]}, + {"dstu28147-ofb", "DSTU Gost 28147-2009 OFB mode", NID_dstu28147_ofb, 11, &so[7403]}, + {"dstu28147-cfb", "DSTU Gost 28147-2009 CFB mode", NID_dstu28147_cfb, 11, &so[7414]}, + {"dstu28147-wrap", "DSTU Gost 28147-2009 key wrap", NID_dstu28147_wrap, 11, &so[7425]}, + {"hmacWithDstu34311", "HMAC DSTU Gost 34311-95", NID_hmacWithDstu34311, 10, &so[7436]}, + {"dstu34311", "DSTU Gost 34311-95", NID_dstu34311, 10, &so[7446]}, + {"dstu4145le", "DSTU 4145-2002 little endian", NID_dstu4145le, 11, &so[7456]}, + {"dstu4145be", "DSTU 4145-2002 big endian", NID_dstu4145be, 13, &so[7467]}, + {"uacurve0", "DSTU curve 0", NID_uacurve0, 13, &so[7480]}, + {"uacurve1", "DSTU curve 1", NID_uacurve1, 13, &so[7493]}, + {"uacurve2", "DSTU curve 2", NID_uacurve2, 13, &so[7506]}, + {"uacurve3", "DSTU curve 3", NID_uacurve3, 13, &so[7519]}, + {"uacurve4", "DSTU curve 4", NID_uacurve4, 13, &so[7532]}, + {"uacurve5", "DSTU curve 5", NID_uacurve5, 13, &so[7545]}, + {"uacurve6", "DSTU curve 6", NID_uacurve6, 13, &so[7558]}, + {"uacurve7", "DSTU curve 7", NID_uacurve7, 13, &so[7571]}, + {"uacurve8", "DSTU curve 8", NID_uacurve8, 13, &so[7584]}, + {"uacurve9", "DSTU curve 9", NID_uacurve9, 13, &so[7597]}, + {"ieee", "ieee", NID_ieee, 2, &so[7610]}, + {"ieee-siswg", "IEEE Security in Storage Working Group", NID_ieee_siswg, 5, &so[7612]}, + {"SM2", "sm2", NID_sm2, 8, &so[7617]}, }; -#define NUM_SN 1161 +#define NUM_SN 1164 static const unsigned int sn_objs[NUM_SN] = { 364, /* "AD_DVCS" */ 419, /* "AES-128-CBC" */ @@ -2496,6 +2504,7 @@ static const unsigned int sn_objs[NUM_SN] = { 1095, /* "SHA512-256" */ 1100, /* "SHAKE128" */ 1101, /* "SHAKE256" */ + 1172, /* "SM2" */ 1143, /* "SM3" */ 1134, /* "SM4-CBC" */ 1137, /* "SM4-CFB" */ @@ -3011,6 +3020,8 @@ static const unsigned int sn_objs[NUM_SN] = { 985, /* "id-tc26-signwithdigest-gost3410-2012-256" */ 986, /* "id-tc26-signwithdigest-gost3410-2012-512" */ 676, /* "identified-organization" */ + 1170, /* "ieee" */ + 1171, /* "ieee-siswg" */ 461, /* "info" */ 748, /* "inhibitAnyPolicy" */ 101, /* "initials" */ @@ -3396,7 +3407,7 @@ static const unsigned int sn_objs[NUM_SN] = { 1093, /* "x509ExtAdmission" */ }; -#define NUM_LN 1161 +#define NUM_LN 1164 static const unsigned int ln_objs[NUM_LN] = { 363, /* "AD Time Stamping" */ 405, /* "ANSI X9.62" */ @@ -3481,6 +3492,7 @@ static const unsigned int ln_objs[NUM_LN] = { 431, /* "Hold Instruction None" */ 433, /* "Hold Instruction Reject" */ 634, /* "ICC or token signature" */ + 1171, /* "IEEE Security in Storage Working Group" */ 1004, /* "INN" */ 294, /* "IPSec End System" */ 295, /* "IPSec Tunnel" */ @@ -4157,6 +4169,7 @@ static const unsigned int ln_objs[NUM_LN] = { 36, /* "idea-ecb" */ 46, /* "idea-ofb" */ 676, /* "identified-organization" */ + 1170, /* "ieee" */ 461, /* "info" */ 101, /* "initials" */ 869, /* "internationaliSDNNumber" */ @@ -4504,6 +4517,7 @@ static const unsigned int ln_objs[NUM_LN] = { 496, /* "singleLevelQuality" */ 1062, /* "siphash" */ 1142, /* "sm-scheme" */ + 1172, /* "sm2" */ 1143, /* "sm3" */ 1144, /* "sm3WithRSAEncryption" */ 1134, /* "sm4-cbc" */ @@ -4561,7 +4575,7 @@ static const unsigned int ln_objs[NUM_LN] = { 125, /* "zlib compression" */ }; -#define NUM_OBJ 1050 +#define NUM_OBJ 1055 static const unsigned int obj_objs[NUM_OBJ] = { 0, /* OBJ_undef 0 */ 181, /* OBJ_iso 1 */ @@ -4576,6 +4590,7 @@ static const unsigned int obj_objs[NUM_OBJ] = { 11, /* OBJ_X500 2 5 */ 647, /* OBJ_international_organizations 2 23 */ 380, /* OBJ_dod 1 3 6 */ + 1170, /* OBJ_ieee 1 3 111 */ 12, /* OBJ_X509 2 5 4 */ 378, /* OBJ_X500algorithms 2 5 8 */ 81, /* OBJ_id_ce 2 5 29 */ @@ -4836,6 +4851,7 @@ static const unsigned int obj_objs[NUM_OBJ] = { 117, /* OBJ_ripemd160 1 3 36 3 2 1 */ 1093, /* OBJ_x509ExtAdmission 1 3 36 8 3 3 */ 143, /* OBJ_sxnet 1 3 101 1 4 1 */ + 1171, /* OBJ_ieee_siswg 1 3 111 2 1619 */ 721, /* OBJ_sect163k1 1 3 132 0 1 */ 722, /* OBJ_sect163r1 1 3 132 0 2 */ 728, /* OBJ_sect239k1 1 3 132 0 3 */ @@ -5025,6 +5041,7 @@ static const unsigned int obj_objs[NUM_OBJ] = { 1136, /* OBJ_sm4_cfb1 1 2 156 10197 1 104 5 */ 1138, /* OBJ_sm4_cfb8 1 2 156 10197 1 104 6 */ 1139, /* OBJ_sm4_ctr 1 2 156 10197 1 104 7 */ + 1172, /* OBJ_sm2 1 2 156 10197 1 301 */ 1143, /* OBJ_sm3 1 2 156 10197 1 401 */ 1144, /* OBJ_sm3WithRSAEncryption 1 2 156 10197 1 504 */ 776, /* OBJ_seed_ecb 1 2 410 200004 1 3 */ @@ -5224,6 +5241,8 @@ static const unsigned int obj_objs[NUM_OBJ] = { 785, /* OBJ_caRepository 1 3 6 1 5 5 7 48 5 */ 780, /* OBJ_hmac_md5 1 3 6 1 5 5 8 1 1 */ 781, /* OBJ_hmac_sha1 1 3 6 1 5 5 8 1 2 */ + 913, /* OBJ_aes_128_xts 1 3 111 2 1619 0 1 1 */ + 914, /* OBJ_aes_256_xts 1 3 111 2 1619 0 1 2 */ 58, /* OBJ_netscape_cert_extension 2 16 840 1 113730 1 */ 59, /* OBJ_netscape_data_type 2 16 840 1 113730 2 */ 438, /* OBJ_pilotAttributeType 0 9 2342 19200300 100 1 */ diff --git a/crypto/objects/obj_err.c b/crypto/objects/obj_err.c index ef36313c..be4f11ca 100644 --- a/crypto/objects/obj_err.c +++ b/crypto/objects/obj_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -15,12 +15,14 @@ static const ERR_STRING_DATA OBJ_str_functs[] = { {ERR_PACK(ERR_LIB_OBJ, OBJ_F_OBJ_ADD_OBJECT, 0), "OBJ_add_object"}, + {ERR_PACK(ERR_LIB_OBJ, OBJ_F_OBJ_ADD_SIGID, 0), "OBJ_add_sigid"}, {ERR_PACK(ERR_LIB_OBJ, OBJ_F_OBJ_CREATE, 0), "OBJ_create"}, {ERR_PACK(ERR_LIB_OBJ, OBJ_F_OBJ_DUP, 0), "OBJ_dup"}, {ERR_PACK(ERR_LIB_OBJ, OBJ_F_OBJ_NAME_NEW_INDEX, 0), "OBJ_NAME_new_index"}, {ERR_PACK(ERR_LIB_OBJ, OBJ_F_OBJ_NID2LN, 0), "OBJ_nid2ln"}, {ERR_PACK(ERR_LIB_OBJ, OBJ_F_OBJ_NID2OBJ, 0), "OBJ_nid2obj"}, {ERR_PACK(ERR_LIB_OBJ, OBJ_F_OBJ_NID2SN, 0), "OBJ_nid2sn"}, + {ERR_PACK(ERR_LIB_OBJ, OBJ_F_OBJ_TXT2OBJ, 0), "OBJ_txt2obj"}, {0, NULL} }; diff --git a/crypto/objects/obj_mac.num b/crypto/objects/obj_mac.num index d1f0a955..ca8fdfba 100644 --- a/crypto/objects/obj_mac.num +++ b/crypto/objects/obj_mac.num @@ -1167,3 +1167,6 @@ uacurve6 1166 uacurve7 1167 uacurve8 1168 uacurve9 1169 +ieee 1170 +ieee_siswg 1171 +sm2 1172 diff --git a/crypto/objects/obj_xref.c b/crypto/objects/obj_xref.c index 05a5c862..42d204ca 100644 --- a/crypto/objects/obj_xref.c +++ b/crypto/objects/obj_xref.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -10,6 +10,7 @@ #include #include "obj_xref.h" #include "internal/nelem.h" +#include static STACK_OF(nid_triple) *sig_app, *sigx_app; @@ -103,9 +104,10 @@ int OBJ_add_sigid(int signid, int dig_id, int pkey_id) sigx_app = sk_nid_triple_new(sigx_cmp); if (sigx_app == NULL) return 0; - ntr = OPENSSL_malloc(sizeof(*ntr)); - if (ntr == NULL) + if ((ntr = OPENSSL_malloc(sizeof(*ntr))) == NULL) { + OBJerr(OBJ_F_OBJ_ADD_SIGID, ERR_R_MALLOC_FAILURE); return 0; + } ntr->sign_id = signid; ntr->hash_id = dig_id; ntr->pkey_id = pkey_id; diff --git a/crypto/objects/objects.txt b/crypto/objects/objects.txt index be200bc5..e565864a 100644 --- a/crypto/objects/objects.txt +++ b/crypto/objects/objects.txt @@ -20,6 +20,9 @@ identified-organization 36 8 3 3 : x509ExtAdmission : Professional Information o identified-organization 132 : certicom-arc +identified-organization 111 : ieee +ieee 2 1619 : ieee-siswg : IEEE Security in Storage Working Group + joint-iso-itu-t 23 : international-organizations : International Organizations international-organizations 43 : wap @@ -33,6 +36,10 @@ member-body 840 : ISO-US : ISO US Member Body ISO-US 10040 : X9-57 : X9.57 X9-57 4 : X9cm : X9.57 CM ? +member-body 156 : ISO-CN : ISO CN Member Body +ISO-CN 10197 : oscca +oscca 1 : sm-scheme + !Cname dsa X9cm 1 : DSA : dsaEncryption X9cm 3 : DSA-SHA1 : dsaWithSHA1 @@ -373,8 +380,10 @@ rsadsi 2 5 : MD5 : md5 rsadsi 2 6 : : hmacWithMD5 rsadsi 2 7 : : hmacWithSHA1 -member-body 156 10197 1 401 : SM3 : sm3 -member-body 156 10197 1 504 : RSA-SM3 : sm3WithRSAEncryption +sm-scheme 301 : SM2 : sm2 + +sm-scheme 401 : SM3 : sm3 +sm-scheme 504 : RSA-SM3 : sm3WithRSAEncryption # From RFC4231 rsadsi 2 8 : : hmacWithSHA224 @@ -916,6 +925,9 @@ aes 46 : id-aes256-GCM : aes-256-gcm aes 47 : id-aes256-CCM : aes-256-ccm aes 48 : id-aes256-wrap-pad +ieee-siswg 0 1 1 : AES-128-XTS : aes-128-xts +ieee-siswg 0 1 2 : AES-256-XTS : aes-256-xts + # There are no OIDs for these modes... : AES-128-CFB1 : aes-128-cfb1 @@ -930,8 +942,6 @@ aes 48 : id-aes256-wrap-pad : AES-128-OCB : aes-128-ocb : AES-192-OCB : aes-192-ocb : AES-256-OCB : aes-256-ocb - : AES-128-XTS : aes-128-xts - : AES-256-XTS : aes-256-xts : DES-CFB1 : des-cfb1 : DES-CFB8 : des-cfb8 : DES-EDE3-CFB1 : des-ede3-cfb1 @@ -1472,10 +1482,6 @@ kisa 1 6 : SEED-OFB : seed-ofb # Definitions for SM4 cipher -member-body 156 : ISO-CN : ISO CN Member Body -ISO-CN 10197 : oscca -oscca 1 : sm-scheme - sm-scheme 104 1 : SM4-ECB : sm4-ecb sm-scheme 104 2 : SM4-CBC : sm4-cbc !Cname sm4-ofb128 diff --git a/crypto/pariscid.pl b/crypto/pariscid.pl index f82e27ac..3d4a5f8a 100644 --- a/crypto/pariscid.pl +++ b/crypto/pariscid.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2009-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2009-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -160,7 +160,7 @@ L\$oop_cmp or %r29,$rv,$rv sub %r0,$rv,%r29 - extru %r29,31,1,$rv + extru %r29,0,1,$rv L\$no_data bv ($rp) .EXIT diff --git a/crypto/pem/pem_err.c b/crypto/pem/pem_err.c index c4c09e4c..f642030a 100644 --- a/crypto/pem/pem_err.c +++ b/crypto/pem/pem_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -26,6 +26,7 @@ static const ERR_STRING_DATA PEM_str_functs[] = { {ERR_PACK(ERR_LIB_PEM, PEM_F_DO_B2I, 0), "do_b2i"}, {ERR_PACK(ERR_LIB_PEM, PEM_F_DO_B2I_BIO, 0), "do_b2i_bio"}, {ERR_PACK(ERR_LIB_PEM, PEM_F_DO_BLOB_HEADER, 0), "do_blob_header"}, + {ERR_PACK(ERR_LIB_PEM, PEM_F_DO_I2B, 0), "do_i2b"}, {ERR_PACK(ERR_LIB_PEM, PEM_F_DO_PK8PKEY, 0), "do_pk8pkey"}, {ERR_PACK(ERR_LIB_PEM, PEM_F_DO_PK8PKEY_FP, 0), "do_pk8pkey_fp"}, {ERR_PACK(ERR_LIB_PEM, PEM_F_DO_PVK_BODY, 0), "do_PVK_body"}, diff --git a/crypto/pem/pem_lib.c b/crypto/pem/pem_lib.c index 1f0f8d6c..7c82561b 100644 --- a/crypto/pem/pem_lib.c +++ b/crypto/pem/pem_lib.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -28,15 +28,16 @@ static int load_iv(char **fromp, unsigned char *to, int num); static int check_pem(const char *nm, const char *name); int pem_check_suffix(const char *pem_str, const char *suffix); -int PEM_def_callback(char *buf, int num, int w, void *key) +int PEM_def_callback(char *buf, int num, int rwflag, void *userdata) { - int i, j; + int i, min_len; const char *prompt; - if (key) { - i = strlen(key); + /* We assume that the user passes a default password as userdata */ + if (userdata) { + i = strlen(userdata); i = (i > num) ? num : i; - memcpy(buf, key, i); + memcpy(buf, userdata, i); return i; } @@ -44,28 +45,22 @@ int PEM_def_callback(char *buf, int num, int w, void *key) if (prompt == NULL) prompt = "Enter PEM pass phrase:"; - for (;;) { - /* - * We assume that w == 0 means decryption, - * while w == 1 means encryption - */ - int min_len = w ? MIN_LENGTH : 0; + /* + * rwflag == 0 means decryption + * rwflag == 1 means encryption + * + * We assume that for encryption, we want a minimum length, while for + * decryption, we cannot know any minimum length, so we assume zero. + */ + min_len = rwflag ? MIN_LENGTH : 0; - i = EVP_read_pw_string_min(buf, min_len, num, prompt, w); - if (i != 0) { - PEMerr(PEM_F_PEM_DEF_CALLBACK, PEM_R_PROBLEMS_GETTING_PASSWORD); - memset(buf, 0, (unsigned int)num); - return -1; - } - j = strlen(buf); - if (min_len && j < min_len) { - fprintf(stderr, - "phrase is too short, needs to be at least %d chars\n", - min_len); - } else - break; + i = EVP_read_pw_string_min(buf, min_len, num, prompt, rwflag); + if (i != 0) { + PEMerr(PEM_F_PEM_DEF_CALLBACK, PEM_R_PROBLEMS_GETTING_PASSWORD); + memset(buf, 0, (unsigned int)num); + return -1; } - return j; + return strlen(buf); } void PEM_proc_type(char *buf, int type) @@ -435,7 +430,7 @@ int PEM_do_header(EVP_CIPHER_INFO *cipher, unsigned char *data, long *plen, keylen = PEM_def_callback(buf, PEM_BUFSIZE, 0, u); else keylen = callback(buf, PEM_BUFSIZE, 0, u); - if (keylen <= 0) { + if (keylen < 0) { PEMerr(PEM_F_PEM_DO_HEADER, PEM_R_BAD_PASSWORD_READ); return 0; } @@ -610,6 +605,7 @@ int PEM_write_bio(BIO *bp, const char *name, const char *header, unsigned char *buf = NULL; EVP_ENCODE_CTX *ctx = EVP_ENCODE_CTX_new(); int reason = ERR_R_BUF_LIB; + int retval = 0; if (ctx == NULL) { reason = ERR_R_MALLOC_FAILURE; @@ -654,14 +650,14 @@ int PEM_write_bio(BIO *bp, const char *name, const char *header, (BIO_write(bp, name, nlen) != nlen) || (BIO_write(bp, "-----\n", 6) != 6)) goto err; - OPENSSL_clear_free(buf, PEM_BUFSIZE * 8); - EVP_ENCODE_CTX_free(ctx); - return i + outl; + retval = i + outl; + err: - OPENSSL_clear_free(buf, PEM_BUFSIZE * 8); + if (retval == 0) + PEMerr(PEM_F_PEM_WRITE_BIO, reason); EVP_ENCODE_CTX_free(ctx); - PEMerr(PEM_F_PEM_WRITE_BIO, reason); - return 0; + OPENSSL_clear_free(buf, PEM_BUFSIZE * 8); + return retval; } #ifndef OPENSSL_NO_STDIO diff --git a/crypto/pem/pem_pk8.c b/crypto/pem/pem_pk8.c index e2c0f3de..ebc7fadc 100644 --- a/crypto/pem/pem_pk8.c +++ b/crypto/pem/pem_pk8.c @@ -124,7 +124,7 @@ EVP_PKEY *d2i_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY **x, pem_password_cb *cb, klen = cb(psbuf, PEM_BUFSIZE, 0, u); else klen = PEM_def_callback(psbuf, PEM_BUFSIZE, 0, u); - if (klen <= 0) { + if (klen < 0) { PEMerr(PEM_F_D2I_PKCS8PRIVATEKEY_BIO, PEM_R_BAD_PASSWORD_READ); X509_SIG_free(p8); return NULL; diff --git a/crypto/pem/pem_pkey.c b/crypto/pem/pem_pkey.c index 62eb91c4..aa032d2b 100644 --- a/crypto/pem/pem_pkey.c +++ b/crypto/pem/pem_pkey.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -33,7 +33,7 @@ EVP_PKEY *PEM_read_bio_PrivateKey(BIO *bp, EVP_PKEY **x, pem_password_cb *cb, EVP_PKEY *ret = NULL; if (!PEM_bytes_read_bio_secmem(&data, &len, &nm, PEM_STRING_EVP_PKEY, bp, - cb, u)) + cb, u)) return NULL; p = data; @@ -60,7 +60,7 @@ EVP_PKEY *PEM_read_bio_PrivateKey(BIO *bp, EVP_PKEY **x, pem_password_cb *cb, klen = cb(psbuf, PEM_BUFSIZE, 0, u); else klen = PEM_def_callback(psbuf, PEM_BUFSIZE, 0, u); - if (klen <= 0) { + if (klen < 0) { PEMerr(PEM_F_PEM_READ_BIO_PRIVATEKEY, PEM_R_BAD_PASSWORD_READ); X509_SIG_free(p8); goto err; diff --git a/crypto/pem/pvkfmt.c b/crypto/pem/pvkfmt.c index ebd6913c..281c6cd9 100644 --- a/crypto/pem/pvkfmt.c +++ b/crypto/pem/pvkfmt.c @@ -1,5 +1,5 @@ /* - * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2005-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -285,14 +285,17 @@ static EVP_PKEY *b2i_dss(const unsigned char **in, goto memerr; BN_CTX_free(ctx); + ctx = NULL; } if (!DSA_set0_pqg(dsa, pbn, qbn, gbn)) goto memerr; pbn = qbn = gbn = NULL; if (!DSA_set0_key(dsa, pub_key, priv_key)) goto memerr; + pub_key = priv_key = NULL; - EVP_PKEY_set1_DSA(ret, dsa); + if (!EVP_PKEY_set1_DSA(ret, dsa)) + goto memerr; DSA_free(dsa); *in = p; return ret; @@ -345,12 +348,19 @@ static EVP_PKEY *b2i_rsa(const unsigned char **in, goto memerr; if (!read_lebn(&pin, nbyte, &d)) goto memerr; - RSA_set0_factors(rsa, p, q); - RSA_set0_crt_params(rsa, dmp1, dmq1, iqmp); + if (!RSA_set0_factors(rsa, p, q)) + goto memerr; + p = q = NULL; + if (!RSA_set0_crt_params(rsa, dmp1, dmq1, iqmp)) + goto memerr; + dmp1 = dmq1 = iqmp = NULL; } - RSA_set0_key(rsa, n, e, d); + if (!RSA_set0_key(rsa, n, e, d)) + goto memerr; + n = e = d = NULL; - EVP_PKEY_set1_RSA(ret, rsa); + if (!EVP_PKEY_set1_RSA(ret, rsa)) + goto memerr; RSA_free(rsa); *in = pin; return ret; @@ -434,9 +444,10 @@ static int do_i2b(unsigned char **out, EVP_PKEY *pk, int ispub) if (*out) p = *out; else { - p = OPENSSL_malloc(outlen); - if (p == NULL) + if ((p = OPENSSL_malloc(outlen)) == NULL) { + PEMerr(PEM_F_DO_I2B, ERR_R_MALLOC_FAILURE); return -1; + } *out = p; noinc = 1; } @@ -675,7 +686,7 @@ static EVP_PKEY *do_PVK_body(const unsigned char **in, inlen = cb(psbuf, PEM_BUFSIZE, 0, u); else inlen = PEM_def_callback(psbuf, PEM_BUFSIZE, 0, u); - if (inlen <= 0) { + if (inlen < 0) { PEMerr(PEM_F_DO_PVK_BODY, PEM_R_BAD_PASSWORD_READ); goto err; } diff --git a/crypto/pkcs12/p12_utl.c b/crypto/pkcs12/p12_utl.c index 07014786..43b9e3a5 100644 --- a/crypto/pkcs12/p12_utl.c +++ b/crypto/pkcs12/p12_utl.c @@ -1,5 +1,5 @@ /* - * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1999-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -22,8 +22,10 @@ unsigned char *OPENSSL_asc2uni(const char *asc, int asclen, if (asclen == -1) asclen = strlen(asc); ulen = asclen * 2 + 2; - if ((unitmp = OPENSSL_malloc(ulen)) == NULL) + if ((unitmp = OPENSSL_malloc(ulen)) == NULL) { + PKCS12err(PKCS12_F_OPENSSL_ASC2UNI, ERR_R_MALLOC_FAILURE); return NULL; + } for (i = 0; i < ulen - 2; i += 2) { unitmp[i] = 0; unitmp[i + 1] = asc[i >> 1]; @@ -50,8 +52,10 @@ char *OPENSSL_uni2asc(const unsigned char *uni, int unilen) if (!unilen || uni[unilen - 1]) asclen++; uni++; - if ((asctmp = OPENSSL_malloc(asclen)) == NULL) + if ((asctmp = OPENSSL_malloc(asclen)) == NULL) { + PKCS12err(PKCS12_F_OPENSSL_UNI2ASC, ERR_R_MALLOC_FAILURE); return NULL; + } for (i = 0; i < unilen; i += 2) asctmp[i >> 1] = uni[i]; asctmp[asclen - 1] = 0; @@ -97,10 +101,10 @@ unsigned char *OPENSSL_utf82uni(const char *asc, int asclen, * decoding failure... */ if (j < 0) - return OPENSSL_asc2uni(asc, asclen, uni, unilen); + return OPENSSL_asc2uni(asc, asclen, uni, unilen); if (utf32chr > 0x10FFFF) /* UTF-16 cap */ - return NULL; + return NULL; if (utf32chr >= 0x10000) /* pair of UTF-16 characters */ ulen += 2*2; @@ -110,9 +114,10 @@ unsigned char *OPENSSL_utf82uni(const char *asc, int asclen, ulen += 2; /* for trailing UTF16 zero */ - if ((ret = OPENSSL_malloc(ulen)) == NULL) + if ((ret = OPENSSL_malloc(ulen)) == NULL) { + PKCS12err(PKCS12_F_OPENSSL_UTF82UNI, ERR_R_MALLOC_FAILURE); return NULL; - + } /* re-run the loop writing down UTF-16 characters in big-endian order */ for (unitmp = ret, i = 0; i < asclen; i += j) { j = UTF8_getc((const unsigned char *)asc+i, asclen-i, &utf32chr); @@ -194,8 +199,10 @@ char *OPENSSL_uni2utf8(const unsigned char *uni, int unilen) if (!unilen || (uni[unilen-2]||uni[unilen - 1])) asclen++; - if ((asctmp = OPENSSL_malloc(asclen)) == NULL) + if ((asctmp = OPENSSL_malloc(asclen)) == NULL) { + PKCS12err(PKCS12_F_OPENSSL_UNI2UTF8, ERR_R_MALLOC_FAILURE); return NULL; + } /* re-run the loop emitting UTF-8 string */ for (asclen = 0, i = 0; i < unilen; ) { diff --git a/crypto/pkcs12/pk12err.c b/crypto/pkcs12/pk12err.c index 38e7c66e..38ce5197 100644 --- a/crypto/pkcs12/pk12err.c +++ b/crypto/pkcs12/pk12err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -14,6 +14,12 @@ #ifndef OPENSSL_NO_ERR static const ERR_STRING_DATA PKCS12_str_functs[] = { + {ERR_PACK(ERR_LIB_PKCS12, PKCS12_F_OPENSSL_ASC2UNI, 0), "OPENSSL_asc2uni"}, + {ERR_PACK(ERR_LIB_PKCS12, PKCS12_F_OPENSSL_UNI2ASC, 0), "OPENSSL_uni2asc"}, + {ERR_PACK(ERR_LIB_PKCS12, PKCS12_F_OPENSSL_UNI2UTF8, 0), + "OPENSSL_uni2utf8"}, + {ERR_PACK(ERR_LIB_PKCS12, PKCS12_F_OPENSSL_UTF82UNI, 0), + "OPENSSL_utf82uni"}, {ERR_PACK(ERR_LIB_PKCS12, PKCS12_F_PKCS12_CREATE, 0), "PKCS12_create"}, {ERR_PACK(ERR_LIB_PKCS12, PKCS12_F_PKCS12_GEN_MAC, 0), "PKCS12_gen_mac"}, {ERR_PACK(ERR_LIB_PKCS12, PKCS12_F_PKCS12_INIT, 0), "PKCS12_init"}, diff --git a/crypto/pkcs7/pk7_doit.c b/crypto/pkcs7/pk7_doit.c index 4585031d..ee08e602 100644 --- a/crypto/pkcs7/pk7_doit.c +++ b/crypto/pkcs7/pk7_doit.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/crypto/poly1305/asm/poly1305-armv4.pl b/crypto/poly1305/asm/poly1305-armv4.pl index fc899ced..5cdb6be0 100755 --- a/crypto/poly1305/asm/poly1305-armv4.pl +++ b/crypto/poly1305/asm/poly1305-armv4.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -186,6 +186,7 @@ $code.=<<___; .type poly1305_blocks,%function .align 5 poly1305_blocks: +.Lpoly1305_blocks: stmdb sp!,{r3-r11,lr} ands $len,$len,#-16 @@ -677,7 +678,7 @@ poly1305_blocks_neon: cmp $len,#64 bhs .Lenter_neon tst ip,ip @ is_base2_26? - beq poly1305_blocks + beq .Lpoly1305_blocks .Lenter_neon: stmdb sp!,{r4-r7} diff --git a/crypto/poly1305/asm/poly1305-ppc.pl b/crypto/poly1305/asm/poly1305-ppc.pl index ab659102..8e105d77 100755 --- a/crypto/poly1305/asm/poly1305-ppc.pl +++ b/crypto/poly1305/asm/poly1305-ppc.pl @@ -28,6 +28,7 @@ # PPC970 7.00/+114% 3.51/+205% # POWER7 3.75/+260% 1.93/+100% # POWER8 - 2.03/+200% +# POWER9 - 1.56/+150% # # Do we need floating-point implementation for PPC? Results presented # in poly1305_ieee754.c are tricky to compare to, because they are for diff --git a/crypto/poly1305/asm/poly1305-ppcfp.pl b/crypto/poly1305/asm/poly1305-ppcfp.pl index 49f70a8c..fc62baa2 100755 --- a/crypto/poly1305/asm/poly1305-ppcfp.pl +++ b/crypto/poly1305/asm/poly1305-ppcfp.pl @@ -26,6 +26,7 @@ # PPC970 6.03/+80% # POWER7 3.50/+30% # POWER8 3.75/+10% +# POWER9 2.80/+12% $flavour = shift; diff --git a/crypto/poly1305/poly1305.c b/crypto/poly1305/poly1305.c index e3eb5da5..1d182364 100644 --- a/crypto/poly1305/poly1305.c +++ b/crypto/poly1305/poly1305.c @@ -14,7 +14,7 @@ #include "internal/poly1305.h" #include "poly1305_local.h" -size_t Poly1305_ctx_size () +size_t Poly1305_ctx_size(void) { return sizeof(struct poly1305_context); } diff --git a/crypto/poly1305/poly1305_ameth.c b/crypto/poly1305/poly1305_ameth.c index 93c6bc0c..ed4115b7 100644 --- a/crypto/poly1305/poly1305_ameth.c +++ b/crypto/poly1305/poly1305_ameth.c @@ -1,5 +1,5 @@ /* - * Copyright 2007-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2007-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -13,6 +13,7 @@ #include "internal/asn1_int.h" #include "internal/poly1305.h" #include "poly1305_local.h" +#include "internal/evp_int.h" /* * POLY1305 "ASN1" method. This is just here to indicate the maximum @@ -45,6 +46,27 @@ static int poly1305_pkey_public_cmp(const EVP_PKEY *a, const EVP_PKEY *b) return ASN1_OCTET_STRING_cmp(EVP_PKEY_get0(a), EVP_PKEY_get0(b)); } +static int poly1305_set_priv_key(EVP_PKEY *pkey, const unsigned char *priv, + size_t len) +{ + ASN1_OCTET_STRING *os; + + if (pkey->pkey.ptr != NULL || len != POLY1305_KEY_SIZE) + return 0; + + os = ASN1_OCTET_STRING_new(); + if (os == NULL) + return 0; + + if (!ASN1_OCTET_STRING_set(os, priv, len)) { + ASN1_OCTET_STRING_free(os); + return 0; + } + + pkey->pkey.ptr = os; + return 1; +} + const EVP_PKEY_ASN1_METHOD poly1305_asn1_meth = { EVP_PKEY_POLY1305, EVP_PKEY_POLY1305, @@ -63,5 +85,17 @@ const EVP_PKEY_ASN1_METHOD poly1305_asn1_meth = { poly1305_key_free, poly1305_pkey_ctrl, - 0, 0 + NULL, + NULL, + + NULL, + NULL, + NULL, + + NULL, + NULL, + NULL, + + poly1305_set_priv_key, + NULL, }; diff --git a/crypto/poly1305/poly1305_ieee754.c b/crypto/poly1305/poly1305_ieee754.c index e9aaae3b..1a06e035 100644 --- a/crypto/poly1305/poly1305_ieee754.c +++ b/crypto/poly1305/poly1305_ieee754.c @@ -20,30 +20,31 @@ * for x86_64 code. And since we are at it, just for sense of it, * large-block performance in cycles per processed byte for *this* code * is: - * gcc-4.8 icc-15.0 clang-3.4(*) + * gcc-4.8 icc-15.0 clang-3.4(*) * - * Westmere 4.96 5.09 4.37 - * Sandy Bridge 4.95 4.90 4.17 - * Haswell 4.92 4.87 3.78 - * Bulldozer 4.67 4.49 4.68 - * VIA Nano 7.07 7.05 5.98 - * Silvermont 10.6 9.61 12.6 + * Westmere 4.96 5.09 4.37 + * Sandy Bridge 4.95 4.90 4.17 + * Haswell 4.92 4.87 3.78 + * Bulldozer 4.67 4.49 4.68 + * VIA Nano 7.07 7.05 5.98 + * Silvermont 10.6 9.61 12.6 * - * (*) clang managed to discover parallelism and deployed SIMD; + * (*) clang managed to discover parallelism and deployed SIMD; * * And for range of other platforms with unspecified gcc versions: * - * Freescale e300 12.5 - * PPC74x0 10.8 - * POWER6 4.92 - * POWER7 4.50 - * POWER8 4.10 + * Freescale e300 12.5 + * PPC74x0 10.8 + * POWER6 4.92 + * POWER7 4.50 + * POWER8 4.10 + * POWER9 3.14 * - * z10 11.2 - * z196+ 7.30 + * z10 11.2 + * z196+ 7.30 * - * UltraSPARC III 16.0 - * SPARC T4 16.1 + * UltraSPARC III 16.0 + * SPARC T4 16.1 */ #if !(defined(__GNUC__) && __GNUC__>=2) @@ -57,33 +58,33 @@ typedef unsigned int u32; typedef unsigned long long u64; typedef union { double d; u64 u; } elem64; -#define TWO(p) ((double)(1ULL<<(p))) -#define TWO0 TWO(0) -#define TWO32 TWO(32) -#define TWO64 (TWO32*TWO(32)) -#define TWO96 (TWO64*TWO(32)) -#define TWO130 (TWO96*TWO(34)) +#define TWO(p) ((double)(1ULL<<(p))) +#define TWO0 TWO(0) +#define TWO32 TWO(32) +#define TWO64 (TWO32*TWO(32)) +#define TWO96 (TWO64*TWO(32)) +#define TWO130 (TWO96*TWO(34)) -#define EXP(p) ((1023ULL+(p))<<52) +#define EXP(p) ((1023ULL+(p))<<52) #if defined(__x86_64__) || (defined(__PPC__) && defined(__LITTLE_ENDIAN__)) -# define U8TOU32(p) (*(const u32 *)(p)) -# define U32TO8(p,v) (*(u32 *)(p) = (v)) +# define U8TOU32(p) (*(const u32 *)(p)) +# define U32TO8(p,v) (*(u32 *)(p) = (v)) #elif defined(__PPC__) -# define U8TOU32(p) ({u32 ret; asm ("lwbrx %0,0,%1":"=r"(ret):"b"(p)); ret; }) -# define U32TO8(p,v) asm ("stwbrx %0,0,%1"::"r"(v),"b"(p):"memory") +# define U8TOU32(p) ({u32 ret; asm ("lwbrx %0,0,%1":"=r"(ret):"b"(p)); ret; }) +# define U32TO8(p,v) asm ("stwbrx %0,0,%1"::"r"(v),"b"(p):"memory") #elif defined(__s390x__) -# define U8TOU32(p) ({u32 ret; asm ("lrv %0,%1":"=d"(ret):"m"(*(u32 *)(p))); ret; }) -# define U32TO8(p,v) asm ("strv %1,%0":"=m"(*(u32 *)(p)):"d"(v)) +# define U8TOU32(p) ({u32 ret; asm ("lrv %0,%1":"=d"(ret):"m"(*(u32 *)(p))); ret; }) +# define U32TO8(p,v) asm ("strv %1,%0":"=m"(*(u32 *)(p)):"d"(v)) #endif #ifndef U8TOU32 -# define U8TOU32(p) ((u32)(p)[0] | (u32)(p)[1]<<8 | \ - (u32)(p)[2]<<16 | (u32)(p)[3]<<24 ) +# define U8TOU32(p) ((u32)(p)[0] | (u32)(p)[1]<<8 | \ + (u32)(p)[2]<<16 | (u32)(p)[3]<<24 ) #endif #ifndef U32TO8 -# define U32TO8(p,v) ((p)[0] = (u8)(v), (p)[1] = (u8)((v)>>8), \ - (p)[2] = (u8)((v)>>16), (p)[3] = (u8)((v)>>24) ) +# define U32TO8(p,v) ((p)[0] = (u8)(v), (p)[1] = (u8)((v)>>8), \ + (p)[2] = (u8)((v)>>16), (p)[3] = (u8)((v)>>24) ) #endif typedef struct { @@ -359,9 +360,9 @@ void poly1305_blocks(void *ctx, const unsigned char *inp, size_t len, #ifndef __clang__ fast_entry: #endif - /* - * base 2^32 * base 2^16 = base 2^48 - */ + /* + * base 2^32 * base 2^16 = base 2^48 + */ h0lo = s3lo * x1 + s2lo * x2 + s1lo * x3 + r0lo * x0; h1lo = r0lo * x1 + s3lo * x2 + s2lo * x3 + r1lo * x0; h2lo = r1lo * x1 + r0lo * x2 + s3lo * x3 + r2lo * x0; diff --git a/crypto/poly1305/poly1305_pmeth.c b/crypto/poly1305/poly1305_pmeth.c index 7bc6add6..3bc24c98 100644 --- a/crypto/poly1305/poly1305_pmeth.c +++ b/crypto/poly1305/poly1305_pmeth.c @@ -1,5 +1,5 @@ /* - * Copyright 2007-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2007-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -12,6 +12,7 @@ #include #include #include +#include #include "internal/poly1305.h" #include "poly1305_local.h" #include "internal/evp_int.h" @@ -27,9 +28,10 @@ static int pkey_poly1305_init(EVP_PKEY_CTX *ctx) { POLY1305_PKEY_CTX *pctx; - pctx = OPENSSL_zalloc(sizeof(*pctx)); - if (pctx == NULL) + if ((pctx = OPENSSL_zalloc(sizeof(*pctx))) == NULL) { + CRYPTOerr(CRYPTO_F_PKEY_POLY1305_INIT, ERR_R_MALLOC_FAILURE); return 0; + } pctx->ktmp.type = V_ASN1_OCTET_STRING; EVP_PKEY_CTX_set_data(ctx, pctx); diff --git a/crypto/ppccap.c b/crypto/ppccap.c index 2f7cd8e6..48c6b836 100644 --- a/crypto/ppccap.c +++ b/crypto/ppccap.c @@ -28,6 +28,9 @@ #endif #include #include +#include +#include +#include "bn/bn_lcl.h" #include "ppc_arch.h" @@ -64,6 +67,7 @@ int bn_mul_mont(BN_ULONG *rp, const BN_ULONG *ap, const BN_ULONG *bp, void sha256_block_p8(void *ctx, const void *inp, size_t len); void sha256_block_ppc(void *ctx, const void *inp, size_t len); +void sha256_block_data_order(void *ctx, const void *inp, size_t len); void sha256_block_data_order(void *ctx, const void *inp, size_t len) { OPENSSL_ppccap_P & PPC_CRYPTO207 ? sha256_block_p8(ctx, inp, len) : @@ -72,6 +76,7 @@ void sha256_block_data_order(void *ctx, const void *inp, size_t len) void sha512_block_p8(void *ctx, const void *inp, size_t len); void sha512_block_ppc(void *ctx, const void *inp, size_t len); +void sha512_block_data_order(void *ctx, const void *inp, size_t len); void sha512_block_data_order(void *ctx, const void *inp, size_t len) { OPENSSL_ppccap_P & PPC_CRYPTO207 ? sha512_block_p8(ctx, inp, len) : @@ -106,16 +111,17 @@ void poly1305_blocks_fpu(void *ctx, const unsigned char *inp, size_t len, unsigned int padbit); void poly1305_emit_fpu(void *ctx, unsigned char mac[16], const unsigned int nonce[4]); +int poly1305_init(void *ctx, const unsigned char key[16], void *func[2]); int poly1305_init(void *ctx, const unsigned char key[16], void *func[2]) { if (sizeof(size_t) == 4 && (OPENSSL_ppccap_P & PPC_FPU)) { poly1305_init_fpu(ctx, key); - func[0] = poly1305_blocks_fpu; - func[1] = poly1305_emit_fpu; + func[0] = (void*)(uintptr_t)poly1305_blocks_fpu; + func[1] = (void*)(uintptr_t)poly1305_emit_fpu; } else { poly1305_init_int(ctx, key); - func[0] = poly1305_blocks; - func[1] = poly1305_emit; + func[0] = (void*)(uintptr_t)poly1305_blocks; + func[1] = (void*)(uintptr_t)poly1305_emit; } return 1; } diff --git a/crypto/rand/drbg_ctr.c b/crypto/rand/drbg_ctr.c index 0496cb0a..fe151644 100644 --- a/crypto/rand/drbg_ctr.c +++ b/crypto/rand/drbg_ctr.c @@ -12,9 +12,9 @@ #include #include #include -#include "rand_lcl.h" #include "internal/thread_once.h" - +#include "internal/thread_once.h" +#include "rand_lcl.h" /* * Implementation of NIST SP 800-90A CTR DRBG. */ @@ -65,53 +65,63 @@ static void ctr_XOR(RAND_DRBG_CTR *ctr, const unsigned char *in, size_t inlen) /* * Process a complete block using BCC algorithm of SP 800-90A 10.3.3 */ -static void ctr_BCC_block(RAND_DRBG_CTR *ctr, unsigned char *out, - const unsigned char *in) +__owur static int ctr_BCC_block(RAND_DRBG_CTR *ctr, unsigned char *out, + const unsigned char *in) { - int i; + int i, outlen = AES_BLOCK_SIZE; for (i = 0; i < 16; i++) out[i] ^= in[i]; - AES_encrypt(out, out, &ctr->df_ks); + + if (!EVP_CipherUpdate(ctr->ctx_df, out, &outlen, out, AES_BLOCK_SIZE) + || outlen != AES_BLOCK_SIZE) + return 0; + return 1; } /* * Handle several BCC operations for as much data as we need for K and X */ -static void ctr_BCC_blocks(RAND_DRBG_CTR *ctr, const unsigned char *in) +__owur static int ctr_BCC_blocks(RAND_DRBG_CTR *ctr, const unsigned char *in) { - ctr_BCC_block(ctr, ctr->KX, in); - ctr_BCC_block(ctr, ctr->KX + 16, in); - if (ctr->keylen != 16) - ctr_BCC_block(ctr, ctr->KX + 32, in); + if (!ctr_BCC_block(ctr, ctr->KX, in) + || !ctr_BCC_block(ctr, ctr->KX + 16, in)) + return 0; + if (ctr->keylen != 16 && !ctr_BCC_block(ctr, ctr->KX + 32, in)) + return 0; + return 1; } /* * Initialise BCC blocks: these have the value 0,1,2 in leftmost positions: * see 10.3.1 stage 7. */ -static void ctr_BCC_init(RAND_DRBG_CTR *ctr) +__owur static int ctr_BCC_init(RAND_DRBG_CTR *ctr) { memset(ctr->KX, 0, 48); memset(ctr->bltmp, 0, 16); - ctr_BCC_block(ctr, ctr->KX, ctr->bltmp); + if (!ctr_BCC_block(ctr, ctr->KX, ctr->bltmp)) + return 0; ctr->bltmp[3] = 1; - ctr_BCC_block(ctr, ctr->KX + 16, ctr->bltmp); + if (!ctr_BCC_block(ctr, ctr->KX + 16, ctr->bltmp)) + return 0; if (ctr->keylen != 16) { ctr->bltmp[3] = 2; - ctr_BCC_block(ctr, ctr->KX + 32, ctr->bltmp); + if (!ctr_BCC_block(ctr, ctr->KX + 32, ctr->bltmp)) + return 0; } + return 1; } /* * Process several blocks into BCC algorithm, some possibly partial */ -static void ctr_BCC_update(RAND_DRBG_CTR *ctr, - const unsigned char *in, size_t inlen) +__owur static int ctr_BCC_update(RAND_DRBG_CTR *ctr, + const unsigned char *in, size_t inlen) { if (in == NULL || inlen == 0) - return; + return 1; /* If we have partial block handle it first */ if (ctr->bltmp_pos) { @@ -120,7 +130,8 @@ static void ctr_BCC_update(RAND_DRBG_CTR *ctr, /* If we now have a complete block process it */ if (inlen >= left) { memcpy(ctr->bltmp + ctr->bltmp_pos, in, left); - ctr_BCC_blocks(ctr, ctr->bltmp); + if (!ctr_BCC_blocks(ctr, ctr->bltmp)) + return 0; ctr->bltmp_pos = 0; inlen -= left; in += left; @@ -129,7 +140,8 @@ static void ctr_BCC_update(RAND_DRBG_CTR *ctr, /* Process zero or more complete blocks */ for (; inlen >= 16; in += 16, inlen -= 16) { - ctr_BCC_blocks(ctr, in); + if (!ctr_BCC_blocks(ctr, in)) + return 0; } /* Copy any remaining partial block to the temporary buffer */ @@ -137,26 +149,31 @@ static void ctr_BCC_update(RAND_DRBG_CTR *ctr, memcpy(ctr->bltmp + ctr->bltmp_pos, in, inlen); ctr->bltmp_pos += inlen; } + return 1; } -static void ctr_BCC_final(RAND_DRBG_CTR *ctr) +__owur static int ctr_BCC_final(RAND_DRBG_CTR *ctr) { if (ctr->bltmp_pos) { memset(ctr->bltmp + ctr->bltmp_pos, 0, 16 - ctr->bltmp_pos); - ctr_BCC_blocks(ctr, ctr->bltmp); + if (!ctr_BCC_blocks(ctr, ctr->bltmp)) + return 0; } + return 1; } -static void ctr_df(RAND_DRBG_CTR *ctr, - const unsigned char *in1, size_t in1len, - const unsigned char *in2, size_t in2len, - const unsigned char *in3, size_t in3len) +__owur static int ctr_df(RAND_DRBG_CTR *ctr, + const unsigned char *in1, size_t in1len, + const unsigned char *in2, size_t in2len, + const unsigned char *in3, size_t in3len) { static unsigned char c80 = 0x80; size_t inlen; unsigned char *p = ctr->bltmp; + int outlen = AES_BLOCK_SIZE; - ctr_BCC_init(ctr); + if (!ctr_BCC_init(ctr)) + return 0; if (in1 == NULL) in1len = 0; if (in2 == NULL) @@ -176,18 +193,30 @@ static void ctr_df(RAND_DRBG_CTR *ctr, *p++ = 0; *p = (unsigned char)((ctr->keylen + 16) & 0xff); ctr->bltmp_pos = 8; - ctr_BCC_update(ctr, in1, in1len); - ctr_BCC_update(ctr, in2, in2len); - ctr_BCC_update(ctr, in3, in3len); - ctr_BCC_update(ctr, &c80, 1); - ctr_BCC_final(ctr); + if (!ctr_BCC_update(ctr, in1, in1len) + || !ctr_BCC_update(ctr, in2, in2len) + || !ctr_BCC_update(ctr, in3, in3len) + || !ctr_BCC_update(ctr, &c80, 1) + || !ctr_BCC_final(ctr)) + return 0; /* Set up key K */ - AES_set_encrypt_key(ctr->KX, ctr->keylen * 8, &ctr->df_kxks); + if (!EVP_CipherInit_ex(ctr->ctx, ctr->cipher, NULL, ctr->KX, NULL, 1)) + return 0; /* X follows key K */ - AES_encrypt(ctr->KX + ctr->keylen, ctr->KX, &ctr->df_kxks); - AES_encrypt(ctr->KX, ctr->KX + 16, &ctr->df_kxks); + if (!EVP_CipherUpdate(ctr->ctx, ctr->KX, &outlen, ctr->KX + ctr->keylen, + AES_BLOCK_SIZE) + || outlen != AES_BLOCK_SIZE) + return 0; + if (!EVP_CipherUpdate(ctr->ctx, ctr->KX + 16, &outlen, ctr->KX, + AES_BLOCK_SIZE) + || outlen != AES_BLOCK_SIZE) + return 0; if (ctr->keylen != 16) - AES_encrypt(ctr->KX + 16, ctr->KX + 32, &ctr->df_kxks); + if (!EVP_CipherUpdate(ctr->ctx, ctr->KX + 32, &outlen, ctr->KX + 16, + AES_BLOCK_SIZE) + || outlen != AES_BLOCK_SIZE) + return 0; + return 1; } /* @@ -196,24 +225,32 @@ static void ctr_df(RAND_DRBG_CTR *ctr, * zeroes if necessary and have up to two parameters XORed together, * so we handle both cases in this function instead. */ -static void ctr_update(RAND_DRBG *drbg, - const unsigned char *in1, size_t in1len, - const unsigned char *in2, size_t in2len, - const unsigned char *nonce, size_t noncelen) +__owur static int ctr_update(RAND_DRBG *drbg, + const unsigned char *in1, size_t in1len, + const unsigned char *in2, size_t in2len, + const unsigned char *nonce, size_t noncelen) { RAND_DRBG_CTR *ctr = &drbg->data.ctr; + int outlen = AES_BLOCK_SIZE; - /* ks is already setup for correct key */ + /* correct key is already set up. */ inc_128(ctr); - AES_encrypt(ctr->V, ctr->K, &ctr->ks); + if (!EVP_CipherUpdate(ctr->ctx, ctr->K, &outlen, ctr->V, AES_BLOCK_SIZE) + || outlen != AES_BLOCK_SIZE) + return 0; /* If keylen longer than 128 bits need extra encrypt */ if (ctr->keylen != 16) { inc_128(ctr); - AES_encrypt(ctr->V, ctr->K + 16, &ctr->ks); + if (!EVP_CipherUpdate(ctr->ctx, ctr->K+16, &outlen, ctr->V, + AES_BLOCK_SIZE) + || outlen != AES_BLOCK_SIZE) + return 0; } inc_128(ctr); - AES_encrypt(ctr->V, ctr->V, &ctr->ks); + if (!EVP_CipherUpdate(ctr->ctx, ctr->V, &outlen, ctr->V, AES_BLOCK_SIZE) + || outlen != AES_BLOCK_SIZE) + return 0; /* If 192 bit key part of V is on end of K */ if (ctr->keylen == 24) { @@ -224,7 +261,8 @@ static void ctr_update(RAND_DRBG *drbg, if ((drbg->flags & RAND_DRBG_FLAG_CTR_NO_DF) == 0) { /* If no input reuse existing derived value */ if (in1 != NULL || nonce != NULL || in2 != NULL) - ctr_df(ctr, in1, in1len, nonce, noncelen, in2, in2len); + if (!ctr_df(ctr, in1, in1len, nonce, noncelen, in2, in2len)) + return 0; /* If this a reuse input in1len != 0 */ if (in1len) ctr_XOR(ctr, ctr->KX, drbg->seedlen); @@ -233,13 +271,15 @@ static void ctr_update(RAND_DRBG *drbg, ctr_XOR(ctr, in2, in2len); } - AES_set_encrypt_key(ctr->K, drbg->strength, &ctr->ks); + if (!EVP_CipherInit_ex(ctr->ctx, ctr->cipher, NULL, ctr->K, NULL, 1)) + return 0; + return 1; } -static int drbg_ctr_instantiate(RAND_DRBG *drbg, - const unsigned char *entropy, size_t entropylen, - const unsigned char *nonce, size_t noncelen, - const unsigned char *pers, size_t perslen) +__owur static int drbg_ctr_instantiate(RAND_DRBG *drbg, + const unsigned char *entropy, size_t entropylen, + const unsigned char *nonce, size_t noncelen, + const unsigned char *pers, size_t perslen) { RAND_DRBG_CTR *ctr = &drbg->data.ctr; @@ -248,29 +288,33 @@ static int drbg_ctr_instantiate(RAND_DRBG *drbg, memset(ctr->K, 0, sizeof(ctr->K)); memset(ctr->V, 0, sizeof(ctr->V)); - AES_set_encrypt_key(ctr->K, drbg->strength, &ctr->ks); - ctr_update(drbg, entropy, entropylen, pers, perslen, nonce, noncelen); + if (!EVP_CipherInit_ex(ctr->ctx, ctr->cipher, NULL, ctr->K, NULL, 1)) + return 0; + if (!ctr_update(drbg, entropy, entropylen, pers, perslen, nonce, noncelen)) + return 0; return 1; } -static int drbg_ctr_reseed(RAND_DRBG *drbg, - const unsigned char *entropy, size_t entropylen, - const unsigned char *adin, size_t adinlen) +__owur static int drbg_ctr_reseed(RAND_DRBG *drbg, + const unsigned char *entropy, size_t entropylen, + const unsigned char *adin, size_t adinlen) { if (entropy == NULL) return 0; - ctr_update(drbg, entropy, entropylen, adin, adinlen, NULL, 0); + if (!ctr_update(drbg, entropy, entropylen, adin, adinlen, NULL, 0)) + return 0; return 1; } -static int drbg_ctr_generate(RAND_DRBG *drbg, - unsigned char *out, size_t outlen, - const unsigned char *adin, size_t adinlen) +__owur static int drbg_ctr_generate(RAND_DRBG *drbg, + unsigned char *out, size_t outlen, + const unsigned char *adin, size_t adinlen) { RAND_DRBG_CTR *ctr = &drbg->data.ctr; if (adin != NULL && adinlen != 0) { - ctr_update(drbg, adin, adinlen, NULL, 0, NULL, 0); + if (!ctr_update(drbg, adin, adinlen, NULL, 0, NULL, 0)) + return 0; /* This means we reuse derived value */ if ((drbg->flags & RAND_DRBG_FLAG_CTR_NO_DF) == 0) { adin = NULL; @@ -281,26 +325,36 @@ static int drbg_ctr_generate(RAND_DRBG *drbg, } for ( ; ; ) { + int outl = AES_BLOCK_SIZE; + inc_128(ctr); if (outlen < 16) { /* Use K as temp space as it will be updated */ - AES_encrypt(ctr->V, ctr->K, &ctr->ks); + if (!EVP_CipherUpdate(ctr->ctx, ctr->K, &outl, ctr->V, + AES_BLOCK_SIZE) + || outl != AES_BLOCK_SIZE) + return 0; memcpy(out, ctr->K, outlen); break; } - AES_encrypt(ctr->V, out, &ctr->ks); + if (!EVP_CipherUpdate(ctr->ctx, out, &outl, ctr->V, AES_BLOCK_SIZE) + || outl != AES_BLOCK_SIZE) + return 0; out += 16; outlen -= 16; if (outlen == 0) break; } - ctr_update(drbg, adin, adinlen, NULL, 0, NULL, 0); + if (!ctr_update(drbg, adin, adinlen, NULL, 0, NULL, 0)) + return 0; return 1; } static int drbg_ctr_uninstantiate(RAND_DRBG *drbg) { + EVP_CIPHER_CTX_free(drbg->data.ctr.ctx); + EVP_CIPHER_CTX_free(drbg->data.ctr.ctx_df); OPENSSL_cleanse(&drbg->data.ctr, sizeof(drbg->data.ctr)); return 1; } @@ -317,37 +371,50 @@ int drbg_ctr_init(RAND_DRBG *drbg) RAND_DRBG_CTR *ctr = &drbg->data.ctr; size_t keylen; - switch (drbg->nid) { + switch (drbg->type) { default: /* This can't happen, but silence the compiler warning. */ return 0; case NID_aes_128_ctr: keylen = 16; + ctr->cipher = EVP_aes_128_ecb(); break; case NID_aes_192_ctr: keylen = 24; + ctr->cipher = EVP_aes_192_ecb(); break; case NID_aes_256_ctr: keylen = 32; + ctr->cipher = EVP_aes_256_ecb(); break; } drbg->meth = &drbg_ctr_meth; ctr->keylen = keylen; + if (ctr->ctx == NULL) + ctr->ctx = EVP_CIPHER_CTX_new(); + if (ctr->ctx == NULL) + return 0; drbg->strength = keylen * 8; drbg->seedlen = keylen + 16; if ((drbg->flags & RAND_DRBG_FLAG_CTR_NO_DF) == 0) { /* df initialisation */ - static unsigned char df_key[32] = { + static const unsigned char df_key[32] = { 0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07, 0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f, 0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17, 0x18,0x19,0x1a,0x1b,0x1c,0x1d,0x1e,0x1f }; + + if (ctr->ctx_df == NULL) + ctr->ctx_df = EVP_CIPHER_CTX_new(); + if (ctr->ctx_df == NULL) + return 0; /* Set key schedule for df_key */ - AES_set_encrypt_key(df_key, drbg->strength, &ctr->df_ks); + if (!EVP_CipherInit_ex(ctr->ctx_df, ctr->cipher, NULL, df_key, NULL, 1)) + return 0; drbg->min_entropylen = ctr->keylen; drbg->max_entropylen = DRBG_MINMAX_FACTOR * drbg->min_entropylen; diff --git a/crypto/rand/drbg_lib.c b/crypto/rand/drbg_lib.c index 12070d75..729b49c9 100644 --- a/crypto/rand/drbg_lib.c +++ b/crypto/rand/drbg_lib.c @@ -14,10 +14,12 @@ #include "rand_lcl.h" #include "internal/thread_once.h" #include "internal/rand_int.h" +#include "internal/cryptlib_int.h" /* - * Support framework for NIST SP 800-90A DRBG, AES-CTR mode. - * The RAND_DRBG is OpenSSL's pointer to an instance of the DRBG. + * Support framework for NIST SP 800-90A DRBG + * + * See manual page RAND_DRBG(7) for a general overview. * * The OpenSSL model is to have new and free functions, and that new * does all initialization. That is not the NIST model, which has @@ -28,84 +30,40 @@ */ /* - * THE THREE SHARED DRBGs + * The three shared DRBG instances * - * There are three shared DRBGs (master, public and private), which are - * accessed concurrently by all threads. - * - * THE MASTER DRBG + * There are three shared DRBG instances: , , and . + */ + +/* + * The DRBG * * Not used directly by the application, only for reseeding the two other * DRBGs. It reseeds itself by pulling either randomness from os entropy - * sources or by consuming randomnes which was added by RAND_add() + * sources or by consuming randomness which was added by RAND_add(). + * + * The DRBG is a global instance which is accessed concurrently by + * all threads. The necessary locking is managed automatically by its child + * DRBG instances during reseeding. */ -static RAND_DRBG *drbg_master; +static RAND_DRBG *master_drbg; /* - * THE PUBLIC DRBG + * The DRBG * * Used by default for generating random bytes using RAND_bytes(). + * + * The DRBG is thread-local, i.e., there is one instance per thread. */ -static RAND_DRBG *drbg_public; +static CRYPTO_THREAD_LOCAL public_drbg; /* - * THE PRIVATE DRBG + * The DRBG * * Used by default for generating private keys using RAND_priv_bytes() + * + * The DRBG is thread-local, i.e., there is one instance per thread. */ -static RAND_DRBG *drbg_private; -/*+ - * DRBG HIERARCHY - * - * In addition there are DRBGs, which are not shared, but used only by a - * single thread at every time, for example the DRBGs which are owned by - * an SSL context. All DRBGs are organized in a hierarchical fashion - * with the DRBG as root. - * - * This gives the following overall picture: - * - * - * | - * RAND_add() ==> \ - * / \ | shared DRBGs (with locking) - * / - * | - * owned by an SSL context - * - * AUTOMATIC RESEEDING - * - * Before satisfying a generate request, a DRBG reseeds itself automatically, - * if one of the following two conditions holds: - * - * - the number of generate requests since the last reseeding exceeds a - * certain threshold, the so called |reseed_interval|. This behaviour - * can be disabled by setting the |reseed_interval| to 0. - * - * - the time elapsed since the last reseeding exceeds a certain time - * interval, the so called |reseed_time_interval|. This behaviour - * can be disabled by setting the |reseed_time_interval| to 0. - * - * MANUAL RESEEDING - * - * For the three shared DRBGs (and only for these) there is another way to - * reseed them manually by calling RAND_seed() (or RAND_add() with a positive - * |randomness| argument). This will immediately reseed the DRBG. - * The and DRBG will detect this on their next generate - * call and reseed, pulling randomness from . - * - * LOCKING - * - * The three shared DRBGs are intended to be used concurrently, so they - * support locking. The RAND methods take the locks automatically, so using - * the RAND api (in particular RAND_bytes() and RAND_priv_bytes()) is - * thread-safe. Note however that accessing the shared DRBGs directly via - * the RAND_DRBG interface is *not* thread-safe. - * - * All other DRBG instances don't support locking, because they are - * intendended to be used by a single thread. Instead of accessing a single - * DRBG instance concurrently from different threads, it is recommended to - * instantiate a separate DRBG instance per thread. Using the same shared - * DRBG (preferrably the public DRBG) as parent of DRBG instances on - * different threads is safe. - */ +static CRYPTO_THREAD_LOCAL private_drbg; + /* NIST SP 800-90A DRBG recommends the use of a personalization string. */ @@ -113,6 +71,11 @@ static const char ossl_pers_string[] = "OpenSSL NIST SP 800-90A DRBG"; static CRYPTO_ONCE rand_drbg_init = CRYPTO_ONCE_STATIC_INIT; + + +static int rand_drbg_type = RAND_DRBG_TYPE; +static unsigned int rand_drbg_flags = RAND_DRBG_FLAGS; + static unsigned int master_reseed_interval = MASTER_RESEED_INTERVAL; static unsigned int slave_reseed_interval = SLAVE_RESEED_INTERVAL; @@ -127,19 +90,26 @@ static RAND_DRBG *rand_drbg_new(int secure, RAND_DRBG *parent); /* - * Set/initialize |drbg| to be of type |nid|, with optional |flags|. + * Set/initialize |drbg| to be of type |type|, with optional |flags|. + * + * If |type| and |flags| are zero, use the defaults * * Returns 1 on success, 0 on failure. */ -int RAND_DRBG_set(RAND_DRBG *drbg, int nid, unsigned int flags) +int RAND_DRBG_set(RAND_DRBG *drbg, int type, unsigned int flags) { int ret = 1; + if (type == 0 && flags == 0) { + type = rand_drbg_type; + flags = rand_drbg_flags; + } + drbg->state = DRBG_UNINITIALISED; drbg->flags = flags; - drbg->nid = nid; + drbg->type = type; - switch (nid) { + switch (type) { default: RANDerr(RAND_F_RAND_DRBG_SET, RAND_R_UNSUPPORTED_DRBG_TYPE); return 0; @@ -158,6 +128,37 @@ int RAND_DRBG_set(RAND_DRBG *drbg, int nid, unsigned int flags) return ret; } +/* + * Set/initialize default |type| and |flag| for new drbg instances. + * + * Returns 1 on success, 0 on failure. + */ +int RAND_DRBG_set_defaults(int type, unsigned int flags) +{ + int ret = 1; + + switch (type) { + default: + RANDerr(RAND_F_RAND_DRBG_SET_DEFAULTS, RAND_R_UNSUPPORTED_DRBG_TYPE); + return 0; + case NID_aes_128_ctr: + case NID_aes_192_ctr: + case NID_aes_256_ctr: + break; + } + + if ((flags & ~RAND_DRBG_USED_FLAGS) != 0) { + RANDerr(RAND_F_RAND_DRBG_SET_DEFAULTS, RAND_R_UNSUPPORTED_DRBG_FLAGS); + return 0; + } + + rand_drbg_type = type; + rand_drbg_flags = flags; + + return ret; +} + + /* * Allocate memory and initialize a new DRBG. The DRBG is allocated on * the secure heap if |secure| is nonzero and the secure heap is enabled. @@ -175,7 +176,7 @@ static RAND_DRBG *rand_drbg_new(int secure, if (drbg == NULL) { RANDerr(RAND_F_RAND_DRBG_NEW, ERR_R_MALLOC_FAILURE); - goto err; + return NULL; } drbg->secure = secure && CRYPTO_secure_allocated(drbg); @@ -183,9 +184,23 @@ static RAND_DRBG *rand_drbg_new(int secure, drbg->parent = parent; if (parent == NULL) { + drbg->get_entropy = rand_drbg_get_entropy; + drbg->cleanup_entropy = rand_drbg_cleanup_entropy; +#ifndef RAND_DRBG_GET_RANDOM_NONCE + drbg->get_nonce = rand_drbg_get_nonce; + drbg->cleanup_nonce = rand_drbg_cleanup_nonce; +#endif + drbg->reseed_interval = master_reseed_interval; drbg->reseed_time_interval = master_reseed_time_interval; } else { + drbg->get_entropy = rand_drbg_get_entropy; + drbg->cleanup_entropy = rand_drbg_cleanup_entropy; + /* + * Do not provide nonce callbacks, the child DRBGs will + * obtain their nonce using random bits from the parent. + */ + drbg->reseed_interval = slave_reseed_interval; drbg->reseed_time_interval = slave_reseed_time_interval; } @@ -193,20 +208,20 @@ static RAND_DRBG *rand_drbg_new(int secure, if (RAND_DRBG_set(drbg, type, flags) == 0) goto err; - if (parent != NULL && drbg->strength > parent->strength) { - /* - * We currently don't support the algorithm from NIST SP 800-90C - * 10.1.2 to use a weaker DRBG as source - */ - RANDerr(RAND_F_RAND_DRBG_NEW, RAND_R_PARENT_STRENGTH_TOO_WEAK); - goto err; + if (parent != NULL) { + rand_drbg_lock(parent); + if (drbg->strength > parent->strength) { + /* + * We currently don't support the algorithm from NIST SP 800-90C + * 10.1.2 to use a weaker DRBG as source + */ + rand_drbg_unlock(parent); + RANDerr(RAND_F_RAND_DRBG_NEW, RAND_R_PARENT_STRENGTH_TOO_WEAK); + goto err; + } + rand_drbg_unlock(parent); } - if (!RAND_DRBG_set_callbacks(drbg, rand_drbg_get_entropy, - rand_drbg_cleanup_entropy, - NULL, NULL)) - goto err; - return drbg; err: @@ -260,6 +275,9 @@ int RAND_DRBG_instantiate(RAND_DRBG *drbg, { unsigned char *nonce = NULL, *entropy = NULL; size_t noncelen = 0, entropylen = 0; + size_t min_entropy = drbg->strength; + size_t min_entropylen = drbg->min_entropylen; + size_t max_entropylen = drbg->max_entropylen; if (perslen > drbg->max_perslen) { RANDerr(RAND_F_RAND_DRBG_INSTANTIATE, @@ -267,8 +285,7 @@ int RAND_DRBG_instantiate(RAND_DRBG *drbg, goto end; } - if (drbg->meth == NULL) - { + if (drbg->meth == NULL) { RANDerr(RAND_F_RAND_DRBG_INSTANTIATE, RAND_R_NO_DRBG_IMPLEMENTATION_SELECTED); goto end; @@ -282,21 +299,33 @@ int RAND_DRBG_instantiate(RAND_DRBG *drbg, } drbg->state = DRBG_ERROR; + + /* + * NIST SP800-90Ar1 section 9.1 says you can combine getting the entropy + * and nonce in 1 call by increasing the entropy with 50% and increasing + * the minimum length to accomadate the length of the nonce. + * We do this in case a nonce is require and get_nonce is NULL. + */ + if (drbg->min_noncelen > 0 && drbg->get_nonce == NULL) { + min_entropy += drbg->strength / 2; + min_entropylen += drbg->min_noncelen; + max_entropylen += drbg->max_noncelen; + } + if (drbg->get_entropy != NULL) - entropylen = drbg->get_entropy(drbg, &entropy, drbg->strength, - drbg->min_entropylen, drbg->max_entropylen); - if (entropylen < drbg->min_entropylen - || entropylen > drbg->max_entropylen) { + entropylen = drbg->get_entropy(drbg, &entropy, min_entropy, + min_entropylen, max_entropylen, 0); + if (entropylen < min_entropylen + || entropylen > max_entropylen) { RANDerr(RAND_F_RAND_DRBG_INSTANTIATE, RAND_R_ERROR_RETRIEVING_ENTROPY); goto end; } - if (drbg->max_noncelen > 0 && drbg->get_nonce != NULL) { + if (drbg->min_noncelen > 0 && drbg->get_nonce != NULL) { noncelen = drbg->get_nonce(drbg, &nonce, drbg->strength / 2, drbg->min_noncelen, drbg->max_noncelen); if (noncelen < drbg->min_noncelen || noncelen > drbg->max_noncelen) { - RANDerr(RAND_F_RAND_DRBG_INSTANTIATE, - RAND_R_ERROR_RETRIEVING_NONCE); + RANDerr(RAND_F_RAND_DRBG_INSTANTIATE, RAND_R_ERROR_RETRIEVING_NONCE); goto end; } } @@ -328,7 +357,7 @@ end: RAND_R_ERROR_ENTROPY_POOL_WAS_IGNORED); drbg->state = DRBG_ERROR; } - RAND_POOL_free(drbg->pool); + rand_pool_free(drbg->pool); drbg->pool = NULL; } if (drbg->state == DRBG_READY) @@ -345,8 +374,7 @@ end: */ int RAND_DRBG_uninstantiate(RAND_DRBG *drbg) { - if (drbg->meth == NULL) - { + if (drbg->meth == NULL) { RANDerr(RAND_F_RAND_DRBG_UNINSTANTIATE, RAND_R_NO_DRBG_IMPLEMENTATION_SELECTED); return 0; @@ -357,7 +385,7 @@ int RAND_DRBG_uninstantiate(RAND_DRBG *drbg) * initial values. */ drbg->meth->uninstantiate(drbg); - return RAND_DRBG_set(drbg, drbg->nid, drbg->flags); + return RAND_DRBG_set(drbg, drbg->type, drbg->flags); } /* @@ -368,7 +396,8 @@ int RAND_DRBG_uninstantiate(RAND_DRBG *drbg) * Returns 1 on success, 0 on failure. */ int RAND_DRBG_reseed(RAND_DRBG *drbg, - const unsigned char *adin, size_t adinlen) + const unsigned char *adin, size_t adinlen, + int prediction_resistance) { unsigned char *entropy = NULL; size_t entropylen = 0; @@ -382,9 +411,9 @@ int RAND_DRBG_reseed(RAND_DRBG *drbg, return 0; } - if (adin == NULL) + if (adin == NULL) { adinlen = 0; - else if (adinlen > drbg->max_adinlen) { + } else if (adinlen > drbg->max_adinlen) { RANDerr(RAND_F_RAND_DRBG_RESEED, RAND_R_ADDITIONAL_INPUT_TOO_LONG); return 0; } @@ -392,7 +421,9 @@ int RAND_DRBG_reseed(RAND_DRBG *drbg, drbg->state = DRBG_ERROR; if (drbg->get_entropy != NULL) entropylen = drbg->get_entropy(drbg, &entropy, drbg->strength, - drbg->min_entropylen, drbg->max_entropylen); + drbg->min_entropylen, + drbg->max_entropylen, + prediction_resistance); if (entropylen < drbg->min_entropylen || entropylen > drbg->max_entropylen) { RANDerr(RAND_F_RAND_DRBG_RESEED, RAND_R_ERROR_RETRIEVING_ENTROPY); @@ -446,7 +477,7 @@ int rand_drbg_restart(RAND_DRBG *drbg, if (drbg->pool != NULL) { RANDerr(RAND_F_RAND_DRBG_RESTART, ERR_R_INTERNAL_ERROR); - RAND_POOL_free(drbg->pool); + rand_pool_free(drbg->pool); drbg->pool = NULL; } @@ -464,11 +495,11 @@ int rand_drbg_restart(RAND_DRBG *drbg, } /* will be picked up by the rand_drbg_get_entropy() callback */ - drbg->pool = RAND_POOL_new(entropy, len, len); + drbg->pool = rand_pool_new(entropy, len, len); if (drbg->pool == NULL) return 0; - RAND_POOL_add(drbg->pool, buffer, len, entropy); + rand_pool_add(drbg->pool, buffer, len, entropy); } else { if (drbg->max_adinlen < len) { RANDerr(RAND_F_RAND_DRBG_RESTART, @@ -508,7 +539,7 @@ int rand_drbg_restart(RAND_DRBG *drbg, drbg->meth->reseed(drbg, adin, adinlen, NULL, 0); } else if (reseeded == 0) { /* do a full reseeding if it has not been done yet above */ - RAND_DRBG_reseed(drbg, NULL, 0); + RAND_DRBG_reseed(drbg, NULL, 0, 0); } } @@ -516,7 +547,7 @@ int rand_drbg_restart(RAND_DRBG *drbg, if (drbg->pool != NULL) { drbg->state = DRBG_ERROR; RANDerr(RAND_F_RAND_DRBG_RESTART, ERR_R_INTERNAL_ERROR); - RAND_POOL_free(drbg->pool); + rand_pool_free(drbg->pool); drbg->pool = NULL; return 0; } @@ -584,7 +615,7 @@ int RAND_DRBG_generate(RAND_DRBG *drbg, unsigned char *out, size_t outlen, } if (reseed_required || prediction_resistance) { - if (!RAND_DRBG_reseed(drbg, adin, adinlen)) { + if (!RAND_DRBG_reseed(drbg, adin, adinlen, prediction_resistance)) { RANDerr(RAND_F_RAND_DRBG_GENERATE, RAND_R_RESEED_ERROR); return 0; } @@ -640,40 +671,10 @@ err: /* * Set the RAND_DRBG callbacks for obtaining entropy and nonce. * - * In the following, the signature and the semantics of the - * get_entropy() and cleanup_entropy() callbacks are explained. + * Setting the callbacks is allowed only if the drbg has not been + * initialized yet. Otherwise, the operation will fail. * - * GET_ENTROPY - * - * size_t get_entropy(RAND_DRBG *ctx, - * unsigned char **pout, - * int entropy, - * size_t min_len, size_t max_len); - * - * This is a request to allocate and fill a buffer of size - * |min_len| <= size <= |max_len| (in bytes) which contains - * at least |entropy| bits of randomness. The buffer's address is - * to be returned in |*pout| and the number of collected - * randomness bytes (which may be less than the allocated size - * of the buffer) as return value. - * - * If the callback fails to acquire at least |entropy| bits of - * randomness, it shall return a buffer length of 0. - * - * CLEANUP_ENTROPY - * - * void cleanup_entropy(RAND_DRBG *ctx, - * unsigned char *out, size_t outlen); - * - * A request to clear and free the buffer allocated by get_entropy(). - * The values |out| and |outlen| are expected to be the random buffer's - * address and length, as returned by the get_entropy() callback. - * - * GET_NONCE, CLEANUP_NONCE - * - * Signature and semantics of the get_nonce() and cleanup_nonce() - * callbacks are analogous to get_entropy() and cleanup_entropy(). - * Currently, the nonce is used only for the known answer tests. + * Returns 1 on success, 0 on failure. */ int RAND_DRBG_set_callbacks(RAND_DRBG *drbg, RAND_DRBG_get_entropy_fn get_entropy, @@ -849,25 +850,26 @@ static RAND_DRBG *drbg_setup(RAND_DRBG *parent) { RAND_DRBG *drbg; - drbg = RAND_DRBG_secure_new(RAND_DRBG_NID, 0, parent); + drbg = RAND_DRBG_secure_new(rand_drbg_type, rand_drbg_flags, parent); if (drbg == NULL) return NULL; - if (rand_drbg_enable_locking(drbg) == 0) + /* Only the master DRBG needs to have a lock */ + if (parent == NULL && rand_drbg_enable_locking(drbg) == 0) goto err; /* enable seed propagation */ drbg->reseed_counter = 1; /* - * Ignore instantiation error so support just-in-time instantiation. + * Ignore instantiation error to support just-in-time instantiation. * * The state of the drbg will be checked in RAND_DRBG_generate() and * an automatic recovery is attempted. */ - RAND_DRBG_instantiate(drbg, - (const unsigned char *) ossl_pers_string, - sizeof(ossl_pers_string) - 1); + (void)RAND_DRBG_instantiate(drbg, + (const unsigned char *) ossl_pers_string, + sizeof(ossl_pers_string) - 1); return drbg; err: @@ -888,24 +890,48 @@ DEFINE_RUN_ONCE_STATIC(do_rand_drbg_init) if (!OPENSSL_init_crypto(0, NULL)) return 0; - drbg_master = drbg_setup(NULL); - drbg_public = drbg_setup(drbg_master); - drbg_private = drbg_setup(drbg_master); - - if (drbg_master == NULL || drbg_public == NULL || drbg_private == NULL) + if (!CRYPTO_THREAD_init_local(&private_drbg, NULL)) return 0; + if (!CRYPTO_THREAD_init_local(&public_drbg, NULL)) + goto err1; + + master_drbg = drbg_setup(NULL); + if (master_drbg == NULL) + goto err2; + return 1; + +err2: + CRYPTO_THREAD_cleanup_local(&public_drbg); +err1: + CRYPTO_THREAD_cleanup_local(&private_drbg); + return 0; } /* Clean up the global DRBGs before exit */ void rand_drbg_cleanup_int(void) { - RAND_DRBG_free(drbg_private); - RAND_DRBG_free(drbg_public); - RAND_DRBG_free(drbg_master); + if (master_drbg != NULL) { + RAND_DRBG_free(master_drbg); + master_drbg = NULL; - drbg_private = drbg_public = drbg_master = NULL; + CRYPTO_THREAD_cleanup_local(&private_drbg); + CRYPTO_THREAD_cleanup_local(&public_drbg); + } +} + +void drbg_delete_thread_state(void) +{ + RAND_DRBG *drbg; + + drbg = CRYPTO_THREAD_get_local(&public_drbg); + CRYPTO_THREAD_set_local(&public_drbg, NULL); + RAND_DRBG_free(drbg); + + drbg = CRYPTO_THREAD_get_local(&private_drbg); + CRYPTO_THREAD_set_local(&private_drbg, NULL); + RAND_DRBG_free(drbg); } /* Implements the default OpenSSL RAND_bytes() method */ @@ -917,9 +943,7 @@ static int drbg_bytes(unsigned char *out, int count) if (drbg == NULL) return 0; - rand_drbg_lock(drbg); ret = RAND_DRBG_bytes(drbg, out, count); - rand_drbg_unlock(drbg); return ret; } @@ -986,7 +1010,7 @@ RAND_DRBG *RAND_DRBG_get0_master(void) if (!RUN_ONCE(&rand_drbg_init, do_rand_drbg_init)) return NULL; - return drbg_master; + return master_drbg; } /* @@ -995,10 +1019,19 @@ RAND_DRBG *RAND_DRBG_get0_master(void) */ RAND_DRBG *RAND_DRBG_get0_public(void) { + RAND_DRBG *drbg; + if (!RUN_ONCE(&rand_drbg_init, do_rand_drbg_init)) return NULL; - return drbg_public; + drbg = CRYPTO_THREAD_get_local(&public_drbg); + if (drbg == NULL) { + if (!ossl_init_thread_start(OPENSSL_INIT_THREAD_RAND)) + return NULL; + drbg = drbg_setup(master_drbg); + CRYPTO_THREAD_set_local(&public_drbg, drbg); + } + return drbg; } /* @@ -1007,10 +1040,19 @@ RAND_DRBG *RAND_DRBG_get0_public(void) */ RAND_DRBG *RAND_DRBG_get0_private(void) { + RAND_DRBG *drbg; + if (!RUN_ONCE(&rand_drbg_init, do_rand_drbg_init)) return NULL; - return drbg_private; + drbg = CRYPTO_THREAD_get_local(&private_drbg); + if (drbg == NULL) { + if (!ossl_init_thread_start(OPENSSL_INIT_THREAD_RAND)) + return NULL; + drbg = drbg_setup(master_drbg); + CRYPTO_THREAD_set_local(&private_drbg, drbg); + } + return drbg; } RAND_METHOD rand_meth = { diff --git a/crypto/rand/rand_egd.c b/crypto/rand/rand_egd.c index 5eb3225b..461ef253 100644 --- a/crypto/rand/rand_egd.c +++ b/crypto/rand/rand_egd.c @@ -38,7 +38,6 @@ int RAND_egd_bytes(const char *path, int bytes) # else -# include # include OPENSSL_UNISTD # include # include diff --git a/crypto/rand/rand_err.c b/crypto/rand/rand_err.c index 22467d83..31480a68 100644 --- a/crypto/rand/rand_err.c +++ b/crypto/rand/rand_err.c @@ -25,22 +25,28 @@ static const ERR_STRING_DATA RAND_str_functs[] = { "RAND_DRBG_generate"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_DRBG_GET_ENTROPY, 0), "rand_drbg_get_entropy"}, + {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_DRBG_GET_NONCE, 0), + "rand_drbg_get_nonce"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_DRBG_INSTANTIATE, 0), "RAND_DRBG_instantiate"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_DRBG_NEW, 0), "RAND_DRBG_new"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_DRBG_RESEED, 0), "RAND_DRBG_reseed"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_DRBG_RESTART, 0), "rand_drbg_restart"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_DRBG_SET, 0), "RAND_DRBG_set"}, + {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_DRBG_SET_DEFAULTS, 0), + "RAND_DRBG_set_defaults"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_DRBG_UNINSTANTIATE, 0), "RAND_DRBG_uninstantiate"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_LOAD_FILE, 0), "RAND_load_file"}, - {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_POOL_ADD, 0), "RAND_POOL_add"}, + {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_POOL_ACQUIRE_ENTROPY, 0), + "rand_pool_acquire_entropy"}, + {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_POOL_ADD, 0), "rand_pool_add"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_POOL_ADD_BEGIN, 0), - "RAND_POOL_add_begin"}, - {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_POOL_ADD_END, 0), "RAND_POOL_add_end"}, + "rand_pool_add_begin"}, + {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_POOL_ADD_END, 0), "rand_pool_add_end"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_POOL_BYTES_NEEDED, 0), - "RAND_POOL_bytes_needed"}, - {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_POOL_NEW, 0), "RAND_POOL_new"}, + "rand_pool_bytes_needed"}, + {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_POOL_NEW, 0), "rand_pool_new"}, {ERR_PACK(ERR_LIB_RAND, RAND_F_RAND_WRITE_FILE, 0), "RAND_write_file"}, {0, NULL} }; @@ -92,13 +98,23 @@ static const ERR_STRING_DATA RAND_str_reasons[] = { "parent strength too weak"}, {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_PERSONALISATION_STRING_TOO_LONG), "personalisation string too long"}, + {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_PREDICTION_RESISTANCE_NOT_SUPPORTED), + "prediction resistance not supported"}, {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_PRNG_NOT_SEEDED), "PRNG not seeded"}, {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_RANDOM_POOL_OVERFLOW), "random pool overflow"}, + {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_RANDOM_POOL_UNDERFLOW), + "random pool underflow"}, {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_REQUEST_TOO_LARGE_FOR_DRBG), "request too large for drbg"}, {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_RESEED_ERROR), "reseed error"}, {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_SELFTEST_FAILURE), "selftest failure"}, + {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_TOO_LITTLE_NONCE_REQUESTED), + "too little nonce requested"}, + {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_TOO_MUCH_NONCE_REQUESTED), + "too much nonce requested"}, + {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_UNSUPPORTED_DRBG_FLAGS), + "unsupported drbg flags"}, {ERR_PACK(ERR_LIB_RAND, 0, RAND_R_UNSUPPORTED_DRBG_TYPE), "unsupported drbg type"}, {0, NULL} diff --git a/crypto/rand/rand_lcl.h b/crypto/rand/rand_lcl.h index ceba8bba..94ffc96f 100644 --- a/crypto/rand/rand_lcl.h +++ b/crypto/rand/rand_lcl.h @@ -15,7 +15,7 @@ # include # include # include -# include "internal/rand.h" +# include /* How many times to read the TSC as a randomness source. */ # define TSC_READ_COUNT 4 @@ -94,13 +94,12 @@ typedef struct rand_drbg_method_st { * The state of a DRBG AES-CTR. */ typedef struct rand_drbg_ctr_st { - AES_KEY ks; + EVP_CIPHER_CTX *ctx; + EVP_CIPHER_CTX *ctx_df; + const EVP_CIPHER *cipher; size_t keylen; unsigned char K[32]; unsigned char V[16]; - /* Temp variables used by derivation function */ - AES_KEY df_ks; - AES_KEY df_kxks; /* Temporary block storage used by ctr_df */ unsigned char bltmp[16]; size_t bltmp_pos; @@ -108,6 +107,27 @@ typedef struct rand_drbg_ctr_st { } RAND_DRBG_CTR; +/* + * The 'random pool' acts as a dumb container for collecting random + * input from various entropy sources. The pool has no knowledge about + * whether its randomness is fed into a legacy RAND_METHOD via RAND_add() + * or into a new style RAND_DRBG. It is the callers duty to 1) initialize the + * random pool, 2) pass it to the polling callbacks, 3) seed the RNG, and + * 4) cleanup the random pool again. + * + * The random pool contains no locking mechanism because its scope and + * lifetime is intended to be restricted to a single stack frame. + */ +struct rand_pool_st { + unsigned char *buffer; /* points to the beginning of the random pool */ + size_t len; /* current number of random bytes contained in the pool */ + + size_t min_len; /* minimum number of random bytes requested */ + size_t max_len; /* maximum number of random bytes (allocated buffer size) */ + size_t entropy; /* current entropy count in bits */ + size_t requested_entropy; /* requested entropy count in bits */ +}; + /* * The state of all types of DRBGs, even though we only have CTR mode * right now. @@ -116,7 +136,13 @@ struct rand_drbg_st { CRYPTO_RWLOCK *lock; RAND_DRBG *parent; int secure; /* 1: allocated on the secure heap, 0: otherwise */ - int nid; /* the underlying algorithm */ + int type; /* the nid of the underlying algorithm */ + /* + * Stores the value of the rand_fork_count global as of when we last + * reseeded. The DRG reseeds automatically whenever drbg->fork_count != + * rand_fork_count. Used to provide fork-safety and reseed this DRBG in + * the child process. + */ int fork_count; unsigned short flags; /* various external flags */ @@ -128,7 +154,7 @@ struct rand_drbg_st { * with respect to how randomness is added to the RNG during reseeding * (see PR #4328). */ - RAND_POOL *pool; + struct rand_pool_st *pool; /* * The following parameters are setup by the per-type "init" function. @@ -203,21 +229,19 @@ struct rand_drbg_st { /* The global RAND method, and the global buffer and DRBG instance. */ extern RAND_METHOD rand_meth; -/* How often we've forked (only incremented in child). */ +/* + * A "generation count" of forks. Incremented in the child process after a + * fork. Since rand_fork_count is increment-only, and only ever written to in + * the child process of the fork, which is guaranteed to be single-threaded, no + * locking is needed for normal (read) accesses; the rest of pthread fork + * processing is assumed to introduce the necessary memory barriers. Sibling + * children of a given parent will produce duplicate values, but this is not + * problematic because the reseeding process pulls input from the system CSPRNG + * and/or other global sources, so the siblings will end up generating + * different output streams. + */ extern int rand_fork_count; -/* Hardware-based seeding functions. */ -size_t rand_acquire_entropy_from_tsc(RAND_POOL *pool); -size_t rand_acquire_entropy_from_cpu(RAND_POOL *pool); - -/* DRBG entropy callbacks. */ -size_t rand_drbg_get_entropy(RAND_DRBG *drbg, - unsigned char **pout, - int entropy, size_t min_len, size_t max_len); -void rand_drbg_cleanup_entropy(RAND_DRBG *drbg, - unsigned char *out, size_t outlen); -size_t rand_drbg_get_additional_data(unsigned char **pout, size_t max_len); - /* DRBG helpers */ int rand_drbg_restart(RAND_DRBG *drbg, const unsigned char *buffer, size_t len, size_t entropy); diff --git a/crypto/rand/rand_lib.c b/crypto/rand/rand_lib.c index d3289356..1a9a7d2c 100644 --- a/crypto/rand/rand_lib.c +++ b/crypto/rand/rand_lib.c @@ -15,49 +15,8 @@ #include #include "internal/thread_once.h" #include "rand_lcl.h" -#ifdef OPENSSL_SYS_UNIX -# include -# include -# include -#endif #include "e_os.h" -/* Macro to convert two thirty two bit values into a sixty four bit one */ -#define TWO32TO64(a, b) ((((uint64_t)(a)) << 32) + (b)) - -/* - * Check for the existence and support of POSIX timers. The standard - * says that the _POSIX_TIMERS macro will have a positive value if they - * are available. - * - * However, we want an additional constraint: that the timer support does - * not require an extra library dependency. Early versions of glibc - * require -lrt to be specified on the link line to access the timers, - * so this needs to be checked for. - * - * It is worse because some libraries define __GLIBC__ but don't - * support the version testing macro (e.g. uClibc). This means - * an extra check is needed. - * - * The final condition is: - * "have posix timers and either not glibc or glibc without -lrt" - * - * The nested #if sequences are required to avoid using a parameterised - * macro that might be undefined. - */ -#undef OSSL_POSIX_TIMER_OKAY -#if defined(_POSIX_TIMERS) && _POSIX_TIMERS > 0 -# if defined(__GLIBC__) -# if defined(__GLIBC_PREREQ) -# if __GLIBC_PREREQ(2, 17) -# define OSSL_POSIX_TIMER_OKAY -# endif -# endif -# else -# define OSSL_POSIX_TIMER_OKAY -# endif -#endif - #ifndef OPENSSL_NO_ENGINE /* non-NULL if default_RAND_meth is ENGINE-provided */ static ENGINE *funct_ref; @@ -69,6 +28,9 @@ static CRYPTO_ONCE rand_init = CRYPTO_ONCE_STATIC_INIT; int rand_fork_count; +static CRYPTO_RWLOCK *rand_nonce_lock; +static int rand_nonce_count; + #ifdef OPENSSL_RAND_SEED_RDTSC /* * IMPORTANT NOTE: It is not currently possible to use this code @@ -95,10 +57,10 @@ size_t rand_acquire_entropy_from_tsc(RAND_POOL *pool) if ((OPENSSL_ia32cap_P[0] & (1 << 4)) != 0) { for (i = 0; i < TSC_READ_COUNT; i++) { c = (unsigned char)(OPENSSL_rdtsc() & 0xFF); - RAND_POOL_add(pool, &c, 1, 4); + rand_pool_add(pool, &c, 1, 4); } } - return RAND_POOL_entropy_available(pool); + return rand_pool_entropy_available(pool); } #endif @@ -125,35 +87,29 @@ size_t rand_acquire_entropy_from_cpu(RAND_POOL *pool) size_t bytes_needed; unsigned char *buffer; - bytes_needed = RAND_POOL_bytes_needed(pool, 8 /*entropy_per_byte*/); + bytes_needed = rand_pool_bytes_needed(pool, 1 /*entropy_factor*/); if (bytes_needed > 0) { - buffer = RAND_POOL_add_begin(pool, bytes_needed); + buffer = rand_pool_add_begin(pool, bytes_needed); if (buffer != NULL) { - - /* If RDSEED is available, use that. */ + /* Whichever comes first, use RDSEED, RDRAND or nothing */ if ((OPENSSL_ia32cap_P[2] & (1 << 18)) != 0) { if (OPENSSL_ia32_rdseed_bytes(buffer, bytes_needed) - == bytes_needed) - return RAND_POOL_add_end(pool, - bytes_needed, - 8 * bytes_needed); - } - - /* Second choice is RDRAND. */ - if ((OPENSSL_ia32cap_P[1] & (1 << (62 - 32))) != 0) { + == bytes_needed) { + rand_pool_add_end(pool, bytes_needed, 8 * bytes_needed); + } + } else if ((OPENSSL_ia32cap_P[1] & (1 << (62 - 32))) != 0) { if (OPENSSL_ia32_rdrand_bytes(buffer, bytes_needed) - == bytes_needed) - return RAND_POOL_add_end(pool, - bytes_needed, - 8 * bytes_needed); + == bytes_needed) { + rand_pool_add_end(pool, bytes_needed, 8 * bytes_needed); + } + } else { + rand_pool_add_end(pool, 0, 0); } - - return RAND_POOL_add_end(pool, 0, 0); } } - return RAND_POOL_entropy_available(pool); + return rand_pool_entropy_available(pool); } #endif @@ -165,14 +121,15 @@ size_t rand_acquire_entropy_from_cpu(RAND_POOL *pool) * is fetched using the parent's RAND_DRBG_generate(). * * Otherwise, the entropy is polled from the system entropy sources - * using RAND_POOL_acquire_entropy(). + * using rand_pool_acquire_entropy(). * * If a random pool has been added to the DRBG using RAND_add(), then * its entropy will be used up first. */ size_t rand_drbg_get_entropy(RAND_DRBG *drbg, - unsigned char **pout, - int entropy, size_t min_len, size_t max_len) + unsigned char **pout, + int entropy, size_t min_len, size_t max_len, + int prediction_resistance) { size_t ret = 0; size_t entropy_available = 0; @@ -187,22 +144,22 @@ size_t rand_drbg_get_entropy(RAND_DRBG *drbg, return 0; } - pool = RAND_POOL_new(entropy, min_len, max_len); + pool = rand_pool_new(entropy, min_len, max_len); if (pool == NULL) return 0; if (drbg->pool) { - RAND_POOL_add(pool, - RAND_POOL_buffer(drbg->pool), - RAND_POOL_length(drbg->pool), - RAND_POOL_entropy(drbg->pool)); - RAND_POOL_free(drbg->pool); + rand_pool_add(pool, + rand_pool_buffer(drbg->pool), + rand_pool_length(drbg->pool), + rand_pool_entropy(drbg->pool)); + rand_pool_free(drbg->pool); drbg->pool = NULL; } if (drbg->parent) { - size_t bytes_needed = RAND_POOL_bytes_needed(pool, 8); - unsigned char *buffer = RAND_POOL_add_begin(pool, bytes_needed); + size_t bytes_needed = rand_pool_bytes_needed(pool, 1 /*entropy_factor*/); + unsigned char *buffer = rand_pool_add_begin(pool, bytes_needed); if (buffer != NULL) { size_t bytes = 0; @@ -216,95 +173,98 @@ size_t rand_drbg_get_entropy(RAND_DRBG *drbg, rand_drbg_lock(drbg->parent); if (RAND_DRBG_generate(drbg->parent, buffer, bytes_needed, - 0, + prediction_resistance, (unsigned char *)drbg, sizeof(*drbg)) != 0) bytes = bytes_needed; rand_drbg_unlock(drbg->parent); - entropy_available = RAND_POOL_add_end(pool, bytes, 8 * bytes); + rand_pool_add_end(pool, bytes, 8 * bytes); + entropy_available = rand_pool_entropy_available(pool); } } else { + if (prediction_resistance) { + /* + * We don't have any entropy sources that comply with the NIST + * standard to provide prediction resistance (see NIST SP 800-90C, + * Section 5.4). + */ + RANDerr(RAND_F_RAND_DRBG_GET_ENTROPY, + RAND_R_PREDICTION_RESISTANCE_NOT_SUPPORTED); + goto err; + } + /* Get entropy by polling system entropy sources. */ - entropy_available = RAND_POOL_acquire_entropy(pool); + entropy_available = rand_pool_acquire_entropy(pool); } if (entropy_available > 0) { - ret = RAND_POOL_length(pool); - *pout = RAND_POOL_detach(pool); + ret = rand_pool_length(pool); + *pout = rand_pool_detach(pool); } - RAND_POOL_free(pool); + err: + rand_pool_free(pool); return ret; } /* - * Find a suitable source of time. Start with the highest resolution source - * and work down to the slower ones. This is added as additional data and - * isn't counted as randomness, so any result is acceptable. + * Implements the cleanup_entropy() callback (see RAND_DRBG_set_callbacks()) * - * Returns 0 when we weren't able to find any time source */ -static uint64_t get_timer_bits(void) +void rand_drbg_cleanup_entropy(RAND_DRBG *drbg, + unsigned char *out, size_t outlen) { - uint64_t res = OPENSSL_rdtsc(); + OPENSSL_secure_clear_free(out, outlen); +} - if (res != 0) - return res; -#if defined(_WIN32) - { - LARGE_INTEGER t; - FILETIME ft; - if (QueryPerformanceCounter(&t) != 0) - return t.QuadPart; - GetSystemTimeAsFileTime(&ft); - return TWO32TO64(ft.dwHighDateTime, ft.dwLowDateTime); - } -#elif defined(__sun) || defined(__hpux) - return gethrtime(); -#elif defined(_AIX) - { - timebasestruct_t t; +/* + * Implements the get_nonce() callback (see RAND_DRBG_set_callbacks()) + * + */ +size_t rand_drbg_get_nonce(RAND_DRBG *drbg, + unsigned char **pout, + int entropy, size_t min_len, size_t max_len) +{ + size_t ret = 0; + RAND_POOL *pool; - read_wall_time(&t, TIMEBASE_SZ); - return TWO32TO64(t.tb_high, t.tb_low); - } -#else + struct { + void * instance; + int count; + } data = { 0 }; -# if defined(OSSL_POSIX_TIMER_OKAY) - { - struct timespec ts; - clockid_t cid; + pool = rand_pool_new(0, min_len, max_len); + if (pool == NULL) + return 0; -# ifdef CLOCK_BOOTTIME - cid = CLOCK_BOOTTIME; -# elif defined(_POSIX_MONOTONIC_CLOCK) - cid = CLOCK_MONOTONIC; -# else - cid = CLOCK_REALTIME; -# endif + if (rand_pool_add_nonce_data(pool) == 0) + goto err; - if (clock_gettime(cid, &ts) == 0) - return TWO32TO64(ts.tv_sec, ts.tv_nsec); - } -# endif -# if defined(__unix__) \ - || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 200112L) - { - struct timeval tv; + data.instance = drbg; + CRYPTO_atomic_add(&rand_nonce_count, 1, &data.count, rand_nonce_lock); - if (gettimeofday(&tv, NULL) == 0) - return TWO32TO64(tv.tv_sec, tv.tv_usec); - } -# endif - { - time_t t = time(NULL); - if (t == (time_t)-1) - return 0; - return t; - } -#endif + if (rand_pool_add(pool, (unsigned char *)&data, sizeof(data), 0) == 0) + goto err; + + ret = rand_pool_length(pool); + *pout = rand_pool_detach(pool); + + err: + rand_pool_free(pool); + + return ret; +} + +/* + * Implements the cleanup_nonce() callback (see RAND_DRBG_set_callbacks()) + * + */ +void rand_drbg_cleanup_nonce(RAND_DRBG *drbg, + unsigned char *out, size_t outlen) +{ + OPENSSL_secure_clear_free(out, outlen); } /* @@ -319,73 +279,62 @@ static uint64_t get_timer_bits(void) */ size_t rand_drbg_get_additional_data(unsigned char **pout, size_t max_len) { + size_t ret = 0; RAND_POOL *pool; - CRYPTO_THREAD_ID thread_id; - size_t len; -#ifdef OPENSSL_SYS_UNIX - pid_t pid; -#elif defined(OPENSSL_SYS_WIN32) - DWORD pid; -#endif - uint64_t tbits; - pool = RAND_POOL_new(0, 0, max_len); + pool = rand_pool_new(0, 0, max_len); if (pool == NULL) return 0; -#ifdef OPENSSL_SYS_UNIX - pid = getpid(); - RAND_POOL_add(pool, (unsigned char *)&pid, sizeof(pid), 0); -#elif defined(OPENSSL_SYS_WIN32) - pid = GetCurrentProcessId(); - RAND_POOL_add(pool, (unsigned char *)&pid, sizeof(pid), 0); -#endif + if (rand_pool_add_additional_data(pool) == 0) + goto err; - thread_id = CRYPTO_THREAD_get_current_id(); - if (thread_id != 0) - RAND_POOL_add(pool, (unsigned char *)&thread_id, sizeof(thread_id), 0); + ret = rand_pool_length(pool); + *pout = rand_pool_detach(pool); - tbits = get_timer_bits(); - if (tbits != 0) - RAND_POOL_add(pool, (unsigned char *)&tbits, sizeof(tbits), 0); + err: + rand_pool_free(pool); - /* TODO: Use RDSEED? */ - - len = RAND_POOL_length(pool); - if (len != 0) - *pout = RAND_POOL_detach(pool); - RAND_POOL_free(pool); - - return len; + return ret; } -/* - * Implements the cleanup_entropy() callback (see RAND_DRBG_set_callbacks()) - * - */ -void rand_drbg_cleanup_entropy(RAND_DRBG *drbg, - unsigned char *out, size_t outlen) +void rand_drbg_cleanup_additional_data(unsigned char *out, size_t outlen) { OPENSSL_secure_clear_free(out, outlen); } -void rand_fork() +void rand_fork(void) { rand_fork_count++; } DEFINE_RUN_ONCE_STATIC(do_rand_init) { - int ret = 1; - #ifndef OPENSSL_NO_ENGINE rand_engine_lock = CRYPTO_THREAD_lock_new(); - ret &= rand_engine_lock != NULL; + if (rand_engine_lock == NULL) + return 0; #endif - rand_meth_lock = CRYPTO_THREAD_lock_new(); - ret &= rand_meth_lock != NULL; - return ret; + rand_meth_lock = CRYPTO_THREAD_lock_new(); + if (rand_meth_lock == NULL) + goto err1; + + rand_nonce_lock = CRYPTO_THREAD_lock_new(); + if (rand_nonce_lock == NULL) + goto err2; + + return 1; + +err2: + CRYPTO_THREAD_lock_free(rand_meth_lock); + rand_meth_lock = NULL; +err1: +#ifndef OPENSSL_NO_ENGINE + CRYPTO_THREAD_lock_free(rand_engine_lock); + rand_engine_lock = NULL; +#endif + return 0; } void rand_cleanup_int(void) @@ -397,8 +346,12 @@ void rand_cleanup_int(void) RAND_set_rand_method(NULL); #ifndef OPENSSL_NO_ENGINE CRYPTO_THREAD_lock_free(rand_engine_lock); + rand_engine_lock = NULL; #endif CRYPTO_THREAD_lock_free(rand_meth_lock); + rand_meth_lock = NULL; + CRYPTO_THREAD_lock_free(rand_nonce_lock); + rand_nonce_lock = NULL; } /* @@ -431,55 +384,34 @@ int RAND_poll(void) } else { /* fill random pool and seed the current legacy RNG */ - pool = RAND_POOL_new(RAND_DRBG_STRENGTH, + pool = rand_pool_new(RAND_DRBG_STRENGTH, RAND_DRBG_STRENGTH / 8, DRBG_MINMAX_FACTOR * (RAND_DRBG_STRENGTH / 8)); if (pool == NULL) return 0; - if (RAND_POOL_acquire_entropy(pool) == 0) + if (rand_pool_acquire_entropy(pool) == 0) goto err; if (meth->add == NULL - || meth->add(RAND_POOL_buffer(pool), - RAND_POOL_length(pool), - (RAND_POOL_entropy(pool) / 8.0)) == 0) + || meth->add(rand_pool_buffer(pool), + rand_pool_length(pool), + (rand_pool_entropy(pool) / 8.0)) == 0) goto err; ret = 1; } err: - RAND_POOL_free(pool); + rand_pool_free(pool); return ret; } -/* - * The 'random pool' acts as a dumb container for collecting random - * input from various entropy sources. The pool has no knowledge about - * whether its randomness is fed into a legacy RAND_METHOD via RAND_add() - * or into a new style RAND_DRBG. It is the callers duty to 1) initialize the - * random pool, 2) pass it to the polling callbacks, 3) seed the RNG, and - * 4) cleanup the random pool again. - * - * The random pool contains no locking mechanism because its scope and - * lifetime is intended to be restricted to a single stack frame. - */ -struct rand_pool_st { - unsigned char *buffer; /* points to the beginning of the random pool */ - size_t len; /* current number of random bytes contained in the pool */ - - size_t min_len; /* minimum number of random bytes requested */ - size_t max_len; /* maximum number of random bytes (allocated buffer size) */ - size_t entropy; /* current entropy count in bits */ - size_t requested_entropy; /* requested entropy count in bits */ -}; - /* * Allocate memory and initialize a new random pool */ -RAND_POOL *RAND_POOL_new(int entropy, size_t min_len, size_t max_len) +RAND_POOL *rand_pool_new(int entropy, size_t min_len, size_t max_len) { RAND_POOL *pool = OPENSSL_zalloc(sizeof(*pool)); @@ -509,7 +441,7 @@ err: /* * Free |pool|, securely erasing its buffer. */ -void RAND_POOL_free(RAND_POOL *pool) +void rand_pool_free(RAND_POOL *pool) { if (pool == NULL) return; @@ -521,7 +453,7 @@ void RAND_POOL_free(RAND_POOL *pool) /* * Return the |pool|'s buffer to the caller (readonly). */ -const unsigned char *RAND_POOL_buffer(RAND_POOL *pool) +const unsigned char *rand_pool_buffer(RAND_POOL *pool) { return pool->buffer; } @@ -529,7 +461,7 @@ const unsigned char *RAND_POOL_buffer(RAND_POOL *pool) /* * Return the |pool|'s entropy to the caller. */ -size_t RAND_POOL_entropy(RAND_POOL *pool) +size_t rand_pool_entropy(RAND_POOL *pool) { return pool->entropy; } @@ -537,7 +469,7 @@ size_t RAND_POOL_entropy(RAND_POOL *pool) /* * Return the |pool|'s buffer length to the caller. */ -size_t RAND_POOL_length(RAND_POOL *pool) +size_t rand_pool_length(RAND_POOL *pool) { return pool->len; } @@ -547,7 +479,7 @@ size_t RAND_POOL_length(RAND_POOL *pool) * It's the responsibility of the caller to free the buffer * using OPENSSL_secure_clear_free(). */ -unsigned char *RAND_POOL_detach(RAND_POOL *pool) +unsigned char *rand_pool_detach(RAND_POOL *pool) { unsigned char *ret = pool->buffer; pool->buffer = NULL; @@ -556,11 +488,11 @@ unsigned char *RAND_POOL_detach(RAND_POOL *pool) /* - * If every byte of the input contains |entropy_per_bytes| bits of entropy, - * how many bytes does one need to obtain at least |bits| bits of entropy? + * If |entropy_factor| bits contain 1 bit of entropy, how many bytes does one + * need to obtain at least |bits| bits of entropy? */ -#define ENTROPY_TO_BYTES(bits, entropy_per_bytes) \ - (((bits) + ((entropy_per_bytes) - 1))/(entropy_per_bytes)) +#define ENTROPY_TO_BYTES(bits, entropy_factor) \ + (((bits) * (entropy_factor) + 7) / 8) /* @@ -571,7 +503,7 @@ unsigned char *RAND_POOL_detach(RAND_POOL *pool) * |entropy| if the entropy count and buffer size is large enough * 0 otherwise */ -size_t RAND_POOL_entropy_available(RAND_POOL *pool) +size_t rand_pool_entropy_available(RAND_POOL *pool) { if (pool->entropy < pool->requested_entropy) return 0; @@ -587,7 +519,7 @@ size_t RAND_POOL_entropy_available(RAND_POOL *pool) * the random pool. */ -size_t RAND_POOL_entropy_needed(RAND_POOL *pool) +size_t rand_pool_entropy_needed(RAND_POOL *pool) { if (pool->entropy < pool->requested_entropy) return pool->requested_entropy - pool->entropy; @@ -597,21 +529,21 @@ size_t RAND_POOL_entropy_needed(RAND_POOL *pool) /* * Returns the number of bytes needed to fill the pool, assuming - * the input has 'entropy_per_byte' entropy bits per byte. + * the input has 1 / |entropy_factor| entropy bits per data bit. * In case of an error, 0 is returned. */ -size_t RAND_POOL_bytes_needed(RAND_POOL *pool, unsigned int entropy_per_byte) +size_t rand_pool_bytes_needed(RAND_POOL *pool, unsigned int entropy_factor) { size_t bytes_needed; - size_t entropy_needed = RAND_POOL_entropy_needed(pool); + size_t entropy_needed = rand_pool_entropy_needed(pool); - if (entropy_per_byte < 1 || entropy_per_byte > 8) { + if (entropy_factor < 1) { RANDerr(RAND_F_RAND_POOL_BYTES_NEEDED, RAND_R_ARGUMENT_OUT_OF_RANGE); return 0; } - bytes_needed = ENTROPY_TO_BYTES(entropy_needed, entropy_per_byte); + bytes_needed = ENTROPY_TO_BYTES(entropy_needed, entropy_factor); if (bytes_needed > pool->max_len - pool->len) { /* not enough space left */ @@ -628,7 +560,7 @@ size_t RAND_POOL_bytes_needed(RAND_POOL *pool, unsigned int entropy_per_byte) } /* Returns the remaining number of bytes available */ -size_t RAND_POOL_bytes_remaining(RAND_POOL *pool) +size_t rand_pool_bytes_remaining(RAND_POOL *pool) { return pool->max_len - pool->len; } @@ -640,11 +572,10 @@ size_t RAND_POOL_bytes_remaining(RAND_POOL *pool) * random input which contains at least |entropy| bits of * randomness. * - * Return available amount of entropy after this operation. - * (see RAND_POOL_entropy_available(pool)) + * Returns 1 if the added amount is adequate, otherwise 0 */ -size_t RAND_POOL_add(RAND_POOL *pool, - const unsigned char *buffer, size_t len, size_t entropy) +int rand_pool_add(RAND_POOL *pool, + const unsigned char *buffer, size_t len, size_t entropy) { if (len > pool->max_len - pool->len) { RANDerr(RAND_F_RAND_POOL_ADD, RAND_R_ENTROPY_INPUT_TOO_LONG); @@ -657,7 +588,7 @@ size_t RAND_POOL_add(RAND_POOL *pool, pool->entropy += entropy; } - return RAND_POOL_entropy_available(pool); + return 1; } /* @@ -669,10 +600,10 @@ size_t RAND_POOL_add(RAND_POOL *pool, * If |len| == 0 this is considered a no-op and a NULL pointer * is returned without producing an error message. * - * After updating the buffer, RAND_POOL_add_end() needs to be called + * After updating the buffer, rand_pool_add_end() needs to be called * to finish the udpate operation (see next comment). */ -unsigned char *RAND_POOL_add_begin(RAND_POOL *pool, size_t len) +unsigned char *rand_pool_add_begin(RAND_POOL *pool, size_t len) { if (len == 0) return NULL; @@ -689,12 +620,12 @@ unsigned char *RAND_POOL_add_begin(RAND_POOL *pool, size_t len) * Finish to add random bytes to the random pool in-place. * * Finishes an in-place update of the random pool started by - * RAND_POOL_add_begin() (see previous comment). + * rand_pool_add_begin() (see previous comment). * It is expected that |len| bytes of random input have been added * to the buffer which contain at least |entropy| bits of randomness. * It is allowed to add less bytes than originally reserved. */ -size_t RAND_POOL_add_end(RAND_POOL *pool, size_t len, size_t entropy) +int rand_pool_add_end(RAND_POOL *pool, size_t len, size_t entropy) { if (len > pool->max_len - pool->len) { RANDerr(RAND_F_RAND_POOL_ADD_END, RAND_R_RANDOM_POOL_OVERFLOW); @@ -706,7 +637,7 @@ size_t RAND_POOL_add_end(RAND_POOL *pool, size_t len, size_t entropy) pool->entropy += entropy; } - return RAND_POOL_entropy_available(pool); + return 1; } int RAND_set_rand_method(const RAND_METHOD *meth) @@ -814,10 +745,7 @@ int RAND_priv_bytes(unsigned char *buf, int num) if (drbg == NULL) return 0; - /* We have to lock the DRBG before generating bits from it. */ - rand_drbg_lock(drbg); ret = RAND_DRBG_bytes(drbg, buf, num); - rand_drbg_unlock(drbg); return ret; } diff --git a/crypto/rand/rand_unix.c b/crypto/rand/rand_unix.c index 74c82823..1f0084db 100644 --- a/crypto/rand/rand_unix.c +++ b/crypto/rand/rand_unix.c @@ -7,12 +7,71 @@ * https://www.openssl.org/source/license.html */ +#define _GNU_SOURCE #include "e_os.h" #include #include "internal/cryptlib.h" #include #include "rand_lcl.h" +#include "internal/rand_int.h" #include +#if defined(__linux) +# include +#endif +#if defined(__FreeBSD__) +# include +# include +# include +#endif +#if defined(__OpenBSD__) +# include +#endif +#ifdef OPENSSL_SYS_UNIX +# include +# include +# include + +static uint64_t get_time_stamp(void); +static uint64_t get_timer_bits(void); + +/* Macro to convert two thirty two bit values into a sixty four bit one */ +# define TWO32TO64(a, b) ((((uint64_t)(a)) << 32) + (b)) + +/* + * Check for the existence and support of POSIX timers. The standard + * says that the _POSIX_TIMERS macro will have a positive value if they + * are available. + * + * However, we want an additional constraint: that the timer support does + * not require an extra library dependency. Early versions of glibc + * require -lrt to be specified on the link line to access the timers, + * so this needs to be checked for. + * + * It is worse because some libraries define __GLIBC__ but don't + * support the version testing macro (e.g. uClibc). This means + * an extra check is needed. + * + * The final condition is: + * "have posix timers and either not glibc or glibc without -lrt" + * + * The nested #if sequences are required to avoid using a parameterised + * macro that might be undefined. + */ +# undef OSSL_POSIX_TIMER_OKAY +# if defined(_POSIX_TIMERS) && _POSIX_TIMERS > 0 +# if defined(__GLIBC__) +# if defined(__GLIBC_PREREQ) +# if __GLIBC_PREREQ(2, 17) +# define OSSL_POSIX_TIMER_OKAY +# endif +# endif +# else +# define OSSL_POSIX_TIMER_OKAY +# endif +# endif +#endif + +int syscall_random(void *buf, size_t buflen); #if (defined(OPENSSL_SYS_VXWORKS) || defined(OPENSSL_SYS_UEFI)) && \ !defined(OPENSSL_RAND_SEED_NONE) @@ -50,12 +109,9 @@ * * As a precaution, we assume only 2 bits of entropy per byte. */ -size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) +size_t rand_pool_acquire_entropy(RAND_POOL *pool) { short int code; - gid_t curr_gid; - pid_t curr_pid; - uid_t curr_uid; int i, k; size_t bytes_needed; struct timespec ts; @@ -68,18 +124,7 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) extern void s$sleep2(long long *_duration, short int *_code); # endif - /* - * Seed with the gid, pid, and uid, to ensure *some* variation between - * different processes. - */ - curr_gid = getgid(); - RAND_POOL_add(pool, &curr_gid, sizeof(curr_gid), 0); - curr_pid = getpid(); - RAND_POOL_add(pool, &curr_pid, sizeof(curr_pid), 0); - curr_uid = getuid(); - RAND_POOL_add(pool, &curr_uid, sizeof(curr_uid), 0); - - bytes_needed = RAND_POOL_bytes_needed(pool, 2 /*entropy_per_byte*/); + bytes_needed = rand_pool_bytes_needed(pool, 4 /*entropy_factor*/); for (i = 0; i < bytes_needed; i++) { /* @@ -102,9 +147,9 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) /* Get wall clock time, take 8 bits. */ clock_gettime(CLOCK_REALTIME, &ts); v = (unsigned char)(ts.tv_nsec & 0xFF); - RAND_POOL_add(pool, arg, &v, sizeof(v) , 2); + rand_pool_add(pool, arg, &v, sizeof(v) , 2); } - return RAND_POOL_entropy_available(pool); + return rand_pool_entropy_available(pool); } # else @@ -118,26 +163,94 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) # error "Seeding uses urandom but DEVRANDOM is not configured" # endif +# if defined(__GLIBC__) && defined(__GLIBC_PREREQ) +# if __GLIBC_PREREQ(2, 25) +# define OPENSSL_HAVE_GETRANDOM +# endif +# endif + +# if (defined(__FreeBSD__) && __FreeBSD_version >= 1200061) +# define OPENSSL_HAVE_GETRANDOM +# endif + +# if defined(OPENSSL_HAVE_GETRANDOM) +# include +# endif + # if defined(OPENSSL_RAND_SEED_OS) # if !defined(DEVRANDOM) # error "OS seeding requires DEVRANDOM to be configured" # endif +# define OPENSSL_RAND_SEED_GETRANDOM # define OPENSSL_RAND_SEED_DEVRANDOM -# if defined(__GLIBC__) && defined(__GLIBC_PREREQ) -# if __GLIBC_PREREQ(2, 25) -# define OPENSSL_RAND_SEED_GETRANDOM -# endif -# endif -# endif - -# ifdef OPENSSL_RAND_SEED_GETRANDOM -# include # endif # if defined(OPENSSL_RAND_SEED_LIBRANDOM) # error "librandom not (yet) supported" # endif +# if defined(__FreeBSD__) && defined(KERN_ARND) +/* + * sysctl_random(): Use sysctl() to read a random number from the kernel + * Returns the size on success, 0 on failure. + */ +static size_t sysctl_random(char *buf, size_t buflen) +{ + int mib[2]; + size_t done = 0; + size_t len; + + /* + * Old implementations returned longs, newer versions support variable + * sizes up to 256 byte. The code below would not work properly when + * the sysctl returns long and we want to request something not a multiple + * of longs, which should never be the case. + */ + if (!ossl_assert(buflen % sizeof(long) == 0)) + return 0; + + mib[0] = CTL_KERN; + mib[1] = KERN_ARND; + + do { + len = buflen; + if (sysctl(mib, 2, buf, &len, NULL, 0) == -1) + return done; + done += len; + buf += len; + buflen -= len; + } while (buflen > 0); + + return done; +} +# endif + +/* + * syscall_random(): Try to get random data using a system call + * returns the number of bytes returned in buf, or <= 0 on error. + */ +int syscall_random(void *buf, size_t buflen) +{ +# if defined(OPENSSL_HAVE_GETRANDOM) + return (int)getrandom(buf, buflen, 0); +# endif + +# if defined(__linux) && defined(SYS_getrandom) + return (int)syscall(SYS_getrandom, buf, buflen, 0); +# endif + +# if defined(__FreeBSD__) && defined(KERN_ARND) + return (int)sysctl_random(buf, buflen); +# endif + + /* Supported since OpenBSD 5.6 */ +# if defined(__OpenBSD__) && OpenBSD >= 201411 + return getentropy(buf, buflen); +# endif + + return -1; +} + /* * Try the various seeding methods in turn, exit when successful. * @@ -155,25 +268,26 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) * of input from the different entropy sources (trust, quality, * possibility of blocking). */ -size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) +size_t rand_pool_acquire_entropy(RAND_POOL *pool) { # ifdef OPENSSL_RAND_SEED_NONE - return RAND_POOL_entropy_available(pool); + return rand_pool_entropy_available(pool); # else size_t bytes_needed; size_t entropy_available = 0; unsigned char *buffer; # ifdef OPENSSL_RAND_SEED_GETRANDOM - bytes_needed = RAND_POOL_bytes_needed(pool, 8 /*entropy_per_byte*/); - buffer = RAND_POOL_add_begin(pool, bytes_needed); + bytes_needed = rand_pool_bytes_needed(pool, 1 /*entropy_factor*/); + buffer = rand_pool_add_begin(pool, bytes_needed); if (buffer != NULL) { size_t bytes = 0; - if (getrandom(buffer, bytes_needed, 0) == (int)bytes_needed) + if (syscall_random(buffer, bytes_needed) == (int)bytes_needed) bytes = bytes_needed; - entropy_available = RAND_POOL_add_end(pool, bytes, 8 * bytes); + rand_pool_add_end(pool, bytes, 8 * bytes); + entropy_available = rand_pool_entropy_available(pool); } if (entropy_available > 0) return entropy_available; @@ -186,7 +300,7 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) # endif # ifdef OPENSSL_RAND_SEED_DEVRANDOM - bytes_needed = RAND_POOL_bytes_needed(pool, 8 /*entropy_per_byte*/); + bytes_needed = rand_pool_bytes_needed(pool, 1 /*entropy_factor*/); if (bytes_needed > 0) { static const char *paths[] = { DEVRANDOM, NULL }; FILE *fp; @@ -196,19 +310,20 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) if ((fp = fopen(paths[i], "rb")) == NULL) continue; setbuf(fp, NULL); - buffer = RAND_POOL_add_begin(pool, bytes_needed); + buffer = rand_pool_add_begin(pool, bytes_needed); if (buffer != NULL) { size_t bytes = 0; if (fread(buffer, 1, bytes_needed, fp) == bytes_needed) bytes = bytes_needed; - entropy_available = RAND_POOL_add_end(pool, bytes, 8 * bytes); + rand_pool_add_end(pool, bytes, 8 * bytes); + entropy_available = rand_pool_entropy_available(pool); } fclose(fp); if (entropy_available > 0) return entropy_available; - bytes_needed = RAND_POOL_bytes_needed(pool, 8 /*entropy_per_byte*/); + bytes_needed = rand_pool_bytes_needed(pool, 1 /*entropy_factor*/); } } # endif @@ -226,13 +341,13 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) # endif # ifdef OPENSSL_RAND_SEED_EGD - bytes_needed = RAND_POOL_bytes_needed(pool, 8 /*entropy_per_byte*/); + bytes_needed = rand_pool_bytes_needed(pool, 1 /*entropy_factor*/); if (bytes_needed > 0) { static const char *paths[] = { DEVRANDOM_EGD, NULL }; int i; for (i = 0; paths[i] != NULL; i++) { - buffer = RAND_POOL_add_begin(pool, bytes_needed); + buffer = rand_pool_add_begin(pool, bytes_needed); if (buffer != NULL) { size_t bytes = 0; int num = RAND_query_egd_bytes(paths[i], @@ -240,7 +355,8 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) if (num == (int)bytes_needed) bytes = bytes_needed; - entropy_available = RAND_POOL_add_end(pool, bytes, 8 * bytes); + rand_pool_add_end(pool, bytes, 8 * bytes); + entropy_available = rand_pool_entropy_available(pool); } if (entropy_available > 0) return entropy_available; @@ -248,9 +364,130 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) } # endif - return RAND_POOL_entropy_available(pool); + return rand_pool_entropy_available(pool); # endif } # endif - +#endif + +#ifdef OPENSSL_SYS_UNIX +int rand_pool_add_nonce_data(RAND_POOL *pool) +{ + struct { + pid_t pid; + CRYPTO_THREAD_ID tid; + uint64_t time; + } data = { 0 }; + + /* + * Add process id, thread id, and a high resolution timestamp to + * ensure that the nonce is unique whith high probability for + * different process instances. + */ + data.pid = getpid(); + data.tid = CRYPTO_THREAD_get_current_id(); + data.time = get_time_stamp(); + + return rand_pool_add(pool, (unsigned char *)&data, sizeof(data), 0); +} + +int rand_pool_add_additional_data(RAND_POOL *pool) +{ + struct { + CRYPTO_THREAD_ID tid; + uint64_t time; + } data = { 0 }; + + /* + * Add some noise from the thread id and a high resolution timer. + * The thread id adds a little randomness if the drbg is accessed + * concurrently (which is the case for the drbg). + */ + data.tid = CRYPTO_THREAD_get_current_id(); + data.time = get_timer_bits(); + + return rand_pool_add(pool, (unsigned char *)&data, sizeof(data), 0); +} + + + +/* + * Get the current time with the highest possible resolution + * + * The time stamp is added to the nonce, so it is optimized for not repeating. + * The current time is ideal for this purpose, provided the computer's clock + * is synchronized. + */ +static uint64_t get_time_stamp(void) +{ +# if defined(OSSL_POSIX_TIMER_OKAY) + { + struct timespec ts; + + if (clock_gettime(CLOCK_REALTIME, &ts) == 0) + return TWO32TO64(ts.tv_sec, ts.tv_nsec); + } +# endif +# if defined(__unix__) \ + || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 200112L) + { + struct timeval tv; + + if (gettimeofday(&tv, NULL) == 0) + return TWO32TO64(tv.tv_sec, tv.tv_usec); + } +# endif + return time(NULL); +} + +/* + * Get an arbitrary timer value of the highest possible resolution + * + * The timer value is added as random noise to the additional data, + * which is not considered a trusted entropy sourec, so any result + * is acceptable. + */ +static uint64_t get_timer_bits(void) +{ + uint64_t res = OPENSSL_rdtsc(); + + if (res != 0) + return res; + +# if defined(__sun) || defined(__hpux) + return gethrtime(); +# elif defined(_AIX) + { + timebasestruct_t t; + + read_wall_time(&t, TIMEBASE_SZ); + return TWO32TO64(t.tb_high, t.tb_low); + } +# elif defined(OSSL_POSIX_TIMER_OKAY) + { + struct timespec ts; + +# ifdef CLOCK_BOOTTIME +# define CLOCK_TYPE CLOCK_BOOTTIME +# elif defined(_POSIX_MONOTONIC_CLOCK) +# define CLOCK_TYPE CLOCK_MONOTONIC +# else +# define CLOCK_TYPE CLOCK_REALTIME +# endif + + if (clock_gettime(CLOCK_TYPE, &ts) == 0) + return TWO32TO64(ts.tv_sec, ts.tv_nsec); + } +# endif +# if defined(__unix__) \ + || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 200112L) + { + struct timeval tv; + + if (gettimeofday(&tv, NULL) == 0) + return TWO32TO64(tv.tv_sec, tv.tv_usec); + } +# endif + return time(NULL); +} #endif diff --git a/crypto/rand/rand_vms.c b/crypto/rand/rand_vms.c index 4ec4b35b..b263f942 100644 --- a/crypto/rand/rand_vms.c +++ b/crypto/rand/rand_vms.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -10,13 +10,24 @@ #include "e_os.h" #if defined(OPENSSL_SYS_VMS) +# define __NEW_STARLET 1 /* New starlet definitions since VMS 7.0 */ +# include +# include "internal/cryptlib.h" # include +# include "internal/rand_int.h" # include "rand_lcl.h" # include +# include # include +# include +# include # include # include -# include +# include +# include +# include +# include +# include # ifdef __DECC # pragma message disable DOLLARID # endif @@ -25,101 +36,475 @@ # error "Unsupported seeding method configured; must be os" # endif -/* - * Use 32-bit pointers almost everywhere. Define the type to which to cast a - * pointer passed to an external function. - */ +/* We need to make sure we have the right size pointer in some cases */ # if __INITIAL_POINTER_SIZE == 64 -# define PTR_T __void_ptr64 # pragma pointer_size save # pragma pointer_size 32 -# else -# define PTR_T void * +# endif +typedef uint32_t *uint32_t__ptr32; +# if __INITIAL_POINTER_SIZE == 64 +# pragma pointer_size restore # endif -static struct items_data_st { +struct item_st { short length, code; /* length is number of bytes */ -} items_data[] = { - {4, JPI$_BUFIO}, - {4, JPI$_CPUTIM}, - {4, JPI$_DIRIO}, - {4, JPI$_IMAGECOUNT}, - {8, JPI$_LAST_LOGIN_I}, - {8, JPI$_LOGINTIM}, - {4, JPI$_PAGEFLTS}, - {4, JPI$_PID}, - {4, JPI$_PPGCNT}, - {4, JPI$_WSPEAK}, - {4, JPI$_FINALEXC}, - {0, 0} }; -size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) +static const struct item_st DVI_item_data[] = { + {4, DVI$_ERRCNT}, + {4, DVI$_REFCNT}, +}; + +static const struct item_st JPI_item_data[] = { + {4, JPI$_BUFIO}, + {4, JPI$_CPUTIM}, + {4, JPI$_DIRIO}, + {4, JPI$_IMAGECOUNT}, + {4, JPI$_PAGEFLTS}, + {4, JPI$_PID}, + {4, JPI$_PPGCNT}, + {4, JPI$_WSPEAK}, + /* + * Note: the direct result is just a 32-bit address. However, it points + * to a list of 4 32-bit words, so we make extra space for them so we can + * do in-place replacement of values + */ + {16, JPI$_FINALEXC}, +}; + +static const struct item_st JPI_item_data_64bit[] = { + {8, JPI$_LAST_LOGIN_I}, + {8, JPI$_LOGINTIM}, +}; + +static const struct item_st RMI_item_data[] = { + {4, RMI$_COLPG}, + {4, RMI$_MWAIT}, + {4, RMI$_CEF}, + {4, RMI$_PFW}, + {4, RMI$_LEF}, + {4, RMI$_LEFO}, + {4, RMI$_HIB}, + {4, RMI$_HIBO}, + {4, RMI$_SUSP}, + {4, RMI$_SUSPO}, + {4, RMI$_FPG}, + {4, RMI$_COM}, + {4, RMI$_COMO}, + {4, RMI$_CUR}, +#if defined __alpha + {4, RMI$_FRLIST}, + {4, RMI$_MODLIST}, +#endif + {4, RMI$_FAULTS}, + {4, RMI$_PREADS}, + {4, RMI$_PWRITES}, + {4, RMI$_PWRITIO}, + {4, RMI$_PREADIO}, + {4, RMI$_GVALFLTS}, + {4, RMI$_WRTINPROG}, + {4, RMI$_FREFLTS}, + {4, RMI$_DZROFLTS}, + {4, RMI$_SYSFAULTS}, + {4, RMI$_ISWPCNT}, + {4, RMI$_DIRIO}, + {4, RMI$_BUFIO}, + {4, RMI$_MBREADS}, + {4, RMI$_MBWRITES}, + {4, RMI$_LOGNAM}, + {4, RMI$_FCPCALLS}, + {4, RMI$_FCPREAD}, + {4, RMI$_FCPWRITE}, + {4, RMI$_FCPCACHE}, + {4, RMI$_FCPCPU}, + {4, RMI$_FCPHIT}, + {4, RMI$_FCPSPLIT}, + {4, RMI$_FCPFAULT}, + {4, RMI$_ENQNEW}, + {4, RMI$_ENQCVT}, + {4, RMI$_DEQ}, + {4, RMI$_BLKAST}, + {4, RMI$_ENQWAIT}, + {4, RMI$_ENQNOTQD}, + {4, RMI$_DLCKSRCH}, + {4, RMI$_DLCKFND}, + {4, RMI$_NUMLOCKS}, + {4, RMI$_NUMRES}, + {4, RMI$_ARRLOCPK}, + {4, RMI$_DEPLOCPK}, + {4, RMI$_ARRTRAPK}, + {4, RMI$_TRCNGLOS}, + {4, RMI$_RCVBUFFL}, + {4, RMI$_ENQNEWLOC}, + {4, RMI$_ENQNEWIN}, + {4, RMI$_ENQNEWOUT}, + {4, RMI$_ENQCVTLOC}, + {4, RMI$_ENQCVTIN}, + {4, RMI$_ENQCVTOUT}, + {4, RMI$_DEQLOC}, + {4, RMI$_DEQIN}, + {4, RMI$_DEQOUT}, + {4, RMI$_BLKLOC}, + {4, RMI$_BLKIN}, + {4, RMI$_BLKOUT}, + {4, RMI$_DIRIN}, + {4, RMI$_DIROUT}, + /* We currently get a fault when trying these. TODO: To be figured out. */ +#if 0 + {140, RMI$_MSCP_EVERYTHING}, /* 35 32-bit words */ + {152, RMI$_DDTM_ALL}, /* 38 32-bit words */ + {80, RMI$_TMSCP_EVERYTHING} /* 20 32-bit words */ +#endif + {4, RMI$_LPZ_PAGCNT}, + {4, RMI$_LPZ_HITS}, + {4, RMI$_LPZ_MISSES}, + {4, RMI$_LPZ_EXPCNT}, + {4, RMI$_LPZ_ALLOCF}, + {4, RMI$_LPZ_ALLOC2}, + {4, RMI$_ACCESS}, + {4, RMI$_ALLOC}, + {4, RMI$_FCPCREATE}, + {4, RMI$_VOLWAIT}, + {4, RMI$_FCPTURN}, + {4, RMI$_FCPERASE}, + {4, RMI$_OPENS}, + {4, RMI$_FIDHIT}, + {4, RMI$_FIDMISS}, + {4, RMI$_FILHDR_HIT}, + {4, RMI$_DIRFCB_HIT}, + {4, RMI$_DIRFCB_MISS}, + {4, RMI$_DIRDATA_HIT}, + {4, RMI$_EXTHIT}, + {4, RMI$_EXTMISS}, + {4, RMI$_QUOHIT}, + {4, RMI$_QUOMISS}, + {4, RMI$_STORAGMAP_HIT}, + {4, RMI$_VOLLCK}, + {4, RMI$_SYNCHLCK}, + {4, RMI$_SYNCHWAIT}, + {4, RMI$_ACCLCK}, + {4, RMI$_XQPCACHEWAIT}, + {4, RMI$_DIRDATA_MISS}, + {4, RMI$_FILHDR_MISS}, + {4, RMI$_STORAGMAP_MISS}, + {4, RMI$_PROCCNTMAX}, + {4, RMI$_PROCBATCNT}, + {4, RMI$_PROCINTCNT}, + {4, RMI$_PROCNETCNT}, + {4, RMI$_PROCSWITCHCNT}, + {4, RMI$_PROCBALSETCNT}, + {4, RMI$_PROCLOADCNT}, + {4, RMI$_BADFLTS}, + {4, RMI$_EXEFAULTS}, + {4, RMI$_HDRINSWAPS}, + {4, RMI$_HDROUTSWAPS}, + {4, RMI$_IOPAGCNT}, + {4, RMI$_ISWPCNTPG}, + {4, RMI$_OSWPCNT}, + {4, RMI$_OSWPCNTPG}, + {4, RMI$_RDFAULTS}, + {4, RMI$_TRANSFLTS}, + {4, RMI$_WRTFAULTS}, +#if defined __alpha + {4, RMI$_USERPAGES}, +#endif + {4, RMI$_VMSPAGES}, + {4, RMI$_TTWRITES}, + {4, RMI$_BUFOBJPAG}, + {4, RMI$_BUFOBJPAGPEAK}, + {4, RMI$_BUFOBJPAGS01}, + {4, RMI$_BUFOBJPAGS2}, + {4, RMI$_BUFOBJPAGMAXS01}, + {4, RMI$_BUFOBJPAGMAXS2}, + {4, RMI$_BUFOBJPAGPEAKS01}, + {4, RMI$_BUFOBJPAGPEAKS2}, + {4, RMI$_BUFOBJPGLTMAXS01}, + {4, RMI$_BUFOBJPGLTMAXS2}, + {4, RMI$_DLCK_INCMPLT}, + {4, RMI$_DLCKMSGS_IN}, + {4, RMI$_DLCKMSGS_OUT}, + {4, RMI$_MCHKERRS}, + {4, RMI$_MEMERRS}, +}; + +static const struct item_st RMI_item_data_64bit[] = { +#if defined __ia64 + {8, RMI$_FRLIST}, + {8, RMI$_MODLIST}, +#endif + {8, RMI$_LCKMGR_REQCNT}, + {8, RMI$_LCKMGR_REQTIME}, + {8, RMI$_LCKMGR_SPINCNT}, + {8, RMI$_LCKMGR_SPINTIME}, + {8, RMI$_CPUINTSTK}, + {8, RMI$_CPUMPSYNCH}, + {8, RMI$_CPUKERNEL}, + {8, RMI$_CPUEXEC}, + {8, RMI$_CPUSUPER}, + {8, RMI$_CPUUSER}, +#if defined __ia64 + {8, RMI$_USERPAGES}, +#endif + {8, RMI$_TQETOTAL}, + {8, RMI$_TQESYSUB}, + {8, RMI$_TQEUSRTIMR}, + {8, RMI$_TQEUSRWAKE}, +}; + +static const struct item_st SYI_item_data[] = { + {4, SYI$_PAGEFILE_FREE}, +}; + +/* + * Input: + * items_data - an array of lengths and codes + * items_data_num - number of elements in that array + * + * Output: + * items - pre-allocated ILE3 array to be filled. + * It's assumed to have items_data_num elements plus + * one extra for the terminating NULL element + * databuffer - pre-allocated 32-bit word array. + * + * Returns the number of elements used in databuffer + */ +static size_t prepare_item_list(const struct item_st *items_input, + size_t items_input_num, + ILE3 *items, + uint32_t__ptr32 databuffer) { - /* determine the number of items in the JPI array */ - struct items_data_st item_entry; - int item_entry_count = OSSL_NELEM(items_data); - /* Create the JPI itemlist array to hold item_data content */ - struct { - short length, code; - int *buffer; - int *retlen; - } item[item_entry_count], *pitem; - struct items_data_st *pitems_data; - int data_buffer[(item_entry_count * 2) + 4]; /* 8 bytes per entry max */ - int iosb[2]; - int sys_time[2]; - int *ptr; - int i, j ; - int tmp_length = 0; - int total_length = 0; + size_t data_sz = 0; - /* Setup itemlist for GETJPI */ - pitems_data = items_data; - for (pitem = item; pitems_data->length != 0; pitem++) { - pitem->length = pitems_data->length; - pitem->code = pitems_data->code; - pitem->buffer = &data_buffer[total_length]; - pitem->retlen = 0; - /* total_length is in longwords */ - total_length += pitems_data->length / 4; - pitems_data++; + for (; items_input_num-- > 0; items_input++, items++) { + + items->ile3$w_code = items_input->code; + /* Special treatment of JPI$_FINALEXC */ + if (items->ile3$w_code == JPI$_FINALEXC) + items->ile3$w_length = 4; + else + items->ile3$w_length = items_input->length; + + items->ile3$ps_bufaddr = databuffer; + items->ile3$ps_retlen_addr = 0; + + databuffer += items_input->length / sizeof(databuffer[0]); + data_sz += items_input->length; } - pitem->length = pitem->code = 0; + /* Terminating NULL entry */ + items->ile3$w_length = items->ile3$w_code = 0; + items->ile3$ps_bufaddr = items->ile3$ps_retlen_addr = NULL; - /* Fill data_buffer with various info bits from this process */ - if (sys$getjpiw(EFN$C_ENF, NULL, NULL, item, &iosb, 0, 0) != SS$_NORMAL) - return 0; + return data_sz / sizeof(databuffer[0]); +} - /* Now twist that data to seed the SSL random number init */ - for (i = 0; i < total_length; i++) { - sys$gettim((struct _generic_64 *)&sys_time[0]); - srand(sys_time[0] * data_buffer[0] * data_buffer[1] + i); +static void massage_JPI(ILE3 *items) +{ + /* + * Special treatment of JPI$_FINALEXC + * The result of that item's data buffer is a 32-bit address to a list of + * 4 32-bit words. + */ + for (; items->ile3$w_length != 0; items++) { + if (items->ile3$w_code == JPI$_FINALEXC) { + uint32_t *data = items->ile3$ps_bufaddr; + uint32_t *ptr = (uint32_t *)*data; + size_t j; - if (i == (total_length - 1)) { /* for JPI$_FINALEXC */ - ptr = &data_buffer[i]; - for (j = 0; j < 4; j++) { - data_buffer[i + j] = ptr[j]; - /* OK to use rand() just to scramble the seed */ - data_buffer[i + j] ^= (sys_time[0] ^ rand()); - tmp_length++; - } - } else { - /* OK to use rand() just to scramble the seed */ - data_buffer[i] ^= (sys_time[0] ^ rand()); + /* + * We know we made space for 4 32-bit words, so we can do in-place + * replacement. + */ + for (j = 0; j < 4; j++) + data[j] = ptr[j]; + + break; + } + } +} + +/* + * This number expresses how many bits of data contain 1 bit of entropy. + * + * For the moment, we assume about 0.05 entropy bits per data bit, or 1 + * bit of entropy per 20 data bits. + */ +#define ENTROPY_FACTOR 20 + +size_t rand_pool_acquire_entropy(RAND_POOL *pool) +{ + ILE3 JPI_items_64bit[OSSL_NELEM(JPI_item_data_64bit) + 1]; + ILE3 RMI_items_64bit[OSSL_NELEM(RMI_item_data_64bit) + 1]; + ILE3 DVI_items[OSSL_NELEM(DVI_item_data) + 1]; + ILE3 JPI_items[OSSL_NELEM(JPI_item_data) + 1]; + ILE3 RMI_items[OSSL_NELEM(RMI_item_data) + 1]; + ILE3 SYI_items[OSSL_NELEM(SYI_item_data) + 1]; + union { + /* This ensures buffer starts at 64 bit boundary */ + uint64_t dummy; + uint32_t buffer[OSSL_NELEM(JPI_item_data_64bit) * 2 + + OSSL_NELEM(RMI_item_data_64bit) * 2 + + OSSL_NELEM(DVI_item_data) + + OSSL_NELEM(JPI_item_data) + + OSSL_NELEM(RMI_item_data) + + OSSL_NELEM(SYI_item_data) + + 4 /* For JPI$_FINALEXC */]; + } data; + size_t total_elems = 0; + size_t total_length = 0; + size_t bytes_needed = rand_pool_bytes_needed(pool, ENTROPY_FACTOR); + size_t bytes_remaining = rand_pool_bytes_remaining(pool); + + /* Take all the 64-bit items first, to ensure proper alignment of data */ + total_elems += + prepare_item_list(JPI_item_data_64bit, OSSL_NELEM(JPI_item_data_64bit), + JPI_items_64bit, &data.buffer[total_elems]); + total_elems += + prepare_item_list(RMI_item_data_64bit, OSSL_NELEM(RMI_item_data_64bit), + RMI_items_64bit, &data.buffer[total_elems]); + /* Now the 32-bit items */ + total_elems += prepare_item_list(DVI_item_data, OSSL_NELEM(DVI_item_data), + DVI_items, &data.buffer[total_elems]); + total_elems += prepare_item_list(JPI_item_data, OSSL_NELEM(JPI_item_data), + JPI_items, &data.buffer[total_elems]); + total_elems += prepare_item_list(RMI_item_data, OSSL_NELEM(RMI_item_data), + RMI_items, &data.buffer[total_elems]); + total_elems += prepare_item_list(SYI_item_data, OSSL_NELEM(SYI_item_data), + SYI_items, &data.buffer[total_elems]); + total_length = total_elems * sizeof(data.buffer[0]); + + /* Fill data.buffer with various info bits from this process */ + { + uint32_t status; + uint32_t efn; + IOSB iosb; + $DESCRIPTOR(SYSDEVICE,"SYS$SYSDEVICE:"); + + if ((status = sys$getdviw(EFN$C_ENF, 0, &SYSDEVICE, DVI_items, + 0, 0, 0, 0, 0)) != SS$_NORMAL) { + lib$signal(status); + return 0; + } + if ((status = sys$getjpiw(EFN$C_ENF, 0, 0, JPI_items_64bit, 0, 0, 0)) + != SS$_NORMAL) { + lib$signal(status); + return 0; + } + if ((status = sys$getjpiw(EFN$C_ENF, 0, 0, JPI_items, 0, 0, 0)) + != SS$_NORMAL) { + lib$signal(status); + return 0; + } + if ((status = sys$getsyiw(EFN$C_ENF, 0, 0, SYI_items, 0, 0, 0)) + != SS$_NORMAL) { + lib$signal(status); + return 0; + } + /* + * The RMI service is a bit special, as there is no synchronous + * variant, so we MUST create an event flag to synchronise on. + */ + if ((status = lib$get_ef(&efn)) != SS$_NORMAL) { + lib$signal(status); + return 0; + } + if ((status = sys$getrmi(efn, 0, 0, RMI_items_64bit, &iosb, 0, 0)) + != SS$_NORMAL) { + lib$signal(status); + return 0; + } + if ((status = sys$synch(efn, &iosb)) != SS$_NORMAL) { + lib$signal(status); + return 0; + } + if (iosb.iosb$l_getxxi_status != SS$_NORMAL) { + lib$signal(iosb.iosb$l_getxxi_status); + return 0; + } + if ((status = sys$getrmi(efn, 0, 0, RMI_items, &iosb, 0, 0)) + != SS$_NORMAL) { + lib$signal(status); + return 0; + } + if ((status = sys$synch(efn, &iosb)) != SS$_NORMAL) { + lib$signal(status); + return 0; + } + if (iosb.iosb$l_getxxi_status != SS$_NORMAL) { + lib$signal(iosb.iosb$l_getxxi_status); + return 0; + } + if ((status = lib$free_ef(&efn)) != SS$_NORMAL) { + lib$signal(status); + return 0; } } - total_length += (tmp_length - 1); + massage_JPI(JPI_items); /* - * Size of seed is total_length*4 bytes (64bytes). The original assumption - * was that it contains 4 bits of entropy per byte. This makes a total - * amount of total_length*16 bits (256bits). + * If we can't feed the requirements from the caller, we're in deep trouble. */ - return RAND_POOL_add(pool, - (PTR_T)data_buffer, total_length * 4, - total_length * 16); + if (!ossl_assert(total_length >= bytes_needed)) { + char neededstr[20]; + char availablestr[20]; + + BIO_snprintf(neededstr, sizeof(neededstr), "%zu", bytes_needed); + BIO_snprintf(availablestr, sizeof(availablestr), "%zu", total_length); + RANDerr(RAND_F_RAND_POOL_ACQUIRE_ENTROPY, + RAND_R_RANDOM_POOL_UNDERFLOW); + ERR_add_error_data(4, "Needed: ", neededstr, ", Available: ", + availablestr); + return 0; + } + + /* + * Try not to overfeed the pool + */ + if (total_length > bytes_remaining) + total_length = bytes_remaining; + + /* We give the pessimistic value for the amount of entropy */ + rand_pool_add(pool, (unsigned char *)data.buffer, total_length, + 8 * total_length / ENTROPY_FACTOR); + return rand_pool_entropy_available(pool); +} + +int rand_pool_add_nonce_data(RAND_POOL *pool) +{ + struct { + pid_t pid; + CRYPTO_THREAD_ID tid; + uint64_t time; + } data = { 0 }; + + /* + * Add process id, thread id, and a high resolution timestamp to + * ensure that the nonce is unique whith high probability for + * different process instances. + */ + data.pid = getpid(); + data.tid = CRYPTO_THREAD_get_current_id(); + sys$gettim_prec(&data.time); + + return rand_pool_add(pool, (unsigned char *)&data, sizeof(data), 0); +} + +int rand_pool_add_additional_data(RAND_POOL *pool) +{ + struct { + CRYPTO_THREAD_ID tid; + uint64_t time; + } data = { 0 }; + + /* + * Add some noise from the thread id and a high resolution timer. + * The thread id adds a little randomness if the drbg is accessed + * concurrently (which is the case for the drbg). + */ + data.tid = CRYPTO_THREAD_get_current_id(); + sys$gettim_prec(&data.time); + + return rand_pool_add(pool, (unsigned char *)&data, sizeof(data), 0); } #endif diff --git a/crypto/rand/rand_win.c b/crypto/rand/rand_win.c index 9eff319b..f2059eb4 100644 --- a/crypto/rand/rand_win.c +++ b/crypto/rand/rand_win.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -10,6 +10,7 @@ #include "internal/cryptlib.h" #include #include "rand_lcl.h" +#include "internal/rand_int.h" #if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_WIN32) # ifndef OPENSSL_RAND_SEED_OS @@ -38,7 +39,7 @@ # define INTEL_DEF_PROV L"Intel Hardware Cryptographic Service Provider" # endif -size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) +size_t rand_pool_acquire_entropy(RAND_POOL *pool) { # ifndef USE_BCRYPTGENRANDOM HCRYPTPROV hProvider; @@ -61,21 +62,22 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) # endif # ifdef USE_BCRYPTGENRANDOM - bytes_needed = RAND_POOL_bytes_needed(pool, 8 /*entropy_per_byte*/); - buffer = RAND_POOL_add_begin(pool, bytes_needed); + bytes_needed = rand_pool_bytes_needed(pool, 1 /*entropy_factor*/); + buffer = rand_pool_add_begin(pool, bytes_needed); if (buffer != NULL) { size_t bytes = 0; if (BCryptGenRandom(NULL, buffer, bytes_needed, BCRYPT_USE_SYSTEM_PREFERRED_RNG) == STATUS_SUCCESS) bytes = bytes_needed; - entropy_available = RAND_POOL_add_end(pool, bytes, 8 * bytes); + rand_pool_add_end(pool, bytes, 8 * bytes); + entropy_available = rand_pool_entropy_available(pool); } if (entropy_available > 0) return entropy_available; # else - bytes_needed = RAND_POOL_bytes_needed(pool, 8 /*entropy_per_byte*/); - buffer = RAND_POOL_add_begin(pool, bytes_needed); + bytes_needed = rand_pool_bytes_needed(pool, 1 /*entropy_factor*/); + buffer = rand_pool_add_begin(pool, bytes_needed); if (buffer != NULL) { size_t bytes = 0; /* poll the CryptoAPI PRNG */ @@ -87,13 +89,14 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) CryptReleaseContext(hProvider, 0); } - entropy_available = RAND_POOL_add_end(pool, bytes, 8 * bytes); + rand_pool_add_end(pool, bytes, 8 * bytes); + entropy_available = rand_pool_entropy_available(pool); } if (entropy_available > 0) return entropy_available; - bytes_needed = RAND_POOL_bytes_needed(pool, 8 /*entropy_per_byte*/); - buffer = RAND_POOL_add_begin(pool, bytes_needed); + bytes_needed = rand_pool_bytes_needed(pool, 1 /*entropy_factor*/); + buffer = rand_pool_add_begin(pool, bytes_needed); if (buffer != NULL) { size_t bytes = 0; /* poll the Pentium PRG with CryptoAPI */ @@ -105,13 +108,52 @@ size_t RAND_POOL_acquire_entropy(RAND_POOL *pool) CryptReleaseContext(hProvider, 0); } - entropy_available = RAND_POOL_add_end(pool, bytes, 8 * bytes); + rand_pool_add_end(pool, bytes, 8 * bytes); + entropy_available = rand_pool_entropy_available(pool); } if (entropy_available > 0) return entropy_available; # endif - return RAND_POOL_entropy_available(pool); + return rand_pool_entropy_available(pool); +} + + +int rand_pool_add_nonce_data(RAND_POOL *pool) +{ + struct { + DWORD pid; + DWORD tid; + FILETIME time; + } data = { 0 }; + + /* + * Add process id, thread id, and a high resolution timestamp to + * ensure that the nonce is unique whith high probability for + * different process instances. + */ + data.pid = GetCurrentProcessId(); + data.tid = GetCurrentThreadId(); + GetSystemTimeAsFileTime(&data.time); + + return rand_pool_add(pool, (unsigned char *)&data, sizeof(data), 0); +} + +int rand_pool_add_additional_data(RAND_POOL *pool) +{ + struct { + DWORD tid; + LARGE_INTEGER time; + } data = { 0 }; + + /* + * Add some noise from the thread id and a high resolution timer. + * The thread id adds a little randomness if the drbg is accessed + * concurrently (which is the case for the drbg). + */ + data.tid = GetCurrentThreadId(); + QueryPerformanceCounter(&data.time); + return rand_pool_add(pool, (unsigned char *)&data, sizeof(data), 0); } # if OPENSSL_API_COMPAT < 0x10100000L diff --git a/crypto/rand/randfile.c b/crypto/rand/randfile.c index d4edc50b..c652ddcf 100644 --- a/crypto/rand/randfile.c +++ b/crypto/rand/randfile.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -26,7 +26,14 @@ # include # include # ifdef _WIN32 +# include # include +# define stat _stat +# define chmod _chmod +# define open _open +# define fdopen _fdopen +# define fstat _fstat +# define fileno _fileno # endif #endif @@ -41,13 +48,6 @@ # define S_ISREG(m) ((m) & S_IFREG) # endif -#ifdef _WIN32 -# define stat _stat -# define chmod _chmod -# define open _open -# define fdopen _fdopen -#endif - #define RAND_FILE_SIZE 1024 #define RFILE ".rnd" @@ -84,27 +84,60 @@ int RAND_load_file(const char *file, long bytes) if (bytes == 0) return 0; -#ifndef OPENSSL_NO_POSIX_IO - if (stat(file, &sb) < 0 || !S_ISREG(sb.st_mode)) { - RANDerr(RAND_F_RAND_LOAD_FILE, RAND_R_NOT_A_REGULAR_FILE); - ERR_add_error_data(2, "Filename=", file); - return -1; - } -#endif if ((in = openssl_fopen(file, "rb")) == NULL) { RANDerr(RAND_F_RAND_LOAD_FILE, RAND_R_CANNOT_OPEN_FILE); ERR_add_error_data(2, "Filename=", file); return -1; } +#ifndef OPENSSL_NO_POSIX_IO + if (fstat(fileno(in), &sb) < 0) { + RANDerr(RAND_F_RAND_LOAD_FILE, RAND_R_INTERNAL_ERROR); + ERR_add_error_data(2, "Filename=", file); + fclose(in); + return -1; + } + + if (!S_ISREG(sb.st_mode) && bytes < 0) + bytes = 256; +#endif + /* + * On VMS, setbuf() will only take 32-bit pointers, and a compilation + * with /POINTER_SIZE=64 will give off a MAYLOSEDATA2 warning here. + * However, we trust that the C RTL will never give us a FILE pointer + * above the first 4 GB of memory, so we simply turn off the warning + * temporarily. + */ +#if defined(OPENSSL_SYS_VMS) && defined(__DECC) +# pragma environment save +# pragma message disable maylosedata2 +#endif + /* + * Don't buffer, because even if |file| is regular file, we have + * no control over the buffer, so why would we want a copy of its + * contents lying around? + */ + setbuf(in, NULL); +#if defined(OPENSSL_SYS_VMS) && defined(__DECC) +# pragma environment restore +#endif + for ( ; ; ) { if (bytes > 0) n = (bytes < RAND_FILE_SIZE) ? (int)bytes : RAND_FILE_SIZE; else n = RAND_FILE_SIZE; i = fread(buf, 1, n, in); - if (i <= 0) +#ifdef EINTR + if (ferror(in) && errno == EINTR){ + clearerr(in); + if (i == 0) + continue; + } +#endif + if (i == 0) break; + RAND_add(buf, i, (double)i); ret += i; @@ -134,7 +167,7 @@ int RAND_write_file(const char *file) #endif /* Collect enough random data. */ - if (RAND_bytes(buf, (int)sizeof(buf)) != 1) + if (RAND_priv_bytes(buf, (int)sizeof(buf)) != 1) return -1; #if defined(O_CREAT) && !defined(OPENSSL_NO_POSIX_IO) && \ diff --git a/crypto/rc4/asm/rc4-c64xplus.pl b/crypto/rc4/asm/rc4-c64xplus.pl index 8aa3fc4c..1354d182 100644 --- a/crypto/rc4/asm/rc4-c64xplus.pl +++ b/crypto/rc4/asm/rc4-c64xplus.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2014-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/crypto/rsa/rsa_ameth.c b/crypto/rsa/rsa_ameth.c index de9e3c10..a6595aec 100644 --- a/crypto/rsa/rsa_ameth.c +++ b/crypto/rsa/rsa_ameth.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/crypto/rsa/rsa_err.c b/crypto/rsa/rsa_err.c index f7d29e19..62fd9e0b 100644 --- a/crypto/rsa/rsa_err.c +++ b/crypto/rsa/rsa_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -37,6 +37,8 @@ static const ERR_STRING_DATA RSA_str_functs[] = { {ERR_PACK(ERR_LIB_RSA, RSA_F_RSA_METH_NEW, 0), "RSA_meth_new"}, {ERR_PACK(ERR_LIB_RSA, RSA_F_RSA_METH_SET1_NAME, 0), "RSA_meth_set1_name"}, {ERR_PACK(ERR_LIB_RSA, RSA_F_RSA_MGF1_TO_MD, 0), ""}, + {ERR_PACK(ERR_LIB_RSA, RSA_F_RSA_MULTIP_INFO_NEW, 0), + "rsa_multip_info_new"}, {ERR_PACK(ERR_LIB_RSA, RSA_F_RSA_NEW_METHOD, 0), "RSA_new_method"}, {ERR_PACK(ERR_LIB_RSA, RSA_F_RSA_NULL, 0), ""}, {ERR_PACK(ERR_LIB_RSA, RSA_F_RSA_NULL_PRIVATE_DECRYPT, 0), ""}, @@ -100,6 +102,7 @@ static const ERR_STRING_DATA RSA_str_functs[] = { "RSA_verify_ASN1_OCTET_STRING"}, {ERR_PACK(ERR_LIB_RSA, RSA_F_RSA_VERIFY_PKCS1_PSS_MGF1, 0), "RSA_verify_PKCS1_PSS_mgf1"}, + {ERR_PACK(ERR_LIB_RSA, RSA_F_SETUP_TBUF, 0), "setup_tbuf"}, {0, NULL} }; diff --git a/crypto/rsa/rsa_gen.c b/crypto/rsa/rsa_gen.c index d8ef3c7e..7f0a2564 100644 --- a/crypto/rsa/rsa_gen.c +++ b/crypto/rsa/rsa_gen.c @@ -157,6 +157,7 @@ static int rsa_builtin_keygen(RSA *rsa, int bits, int primes, BIGNUM *e_value, pinfo = sk_RSA_PRIME_INFO_value(prime_infos, i - 2); prime = pinfo->r; } + BN_set_flags(prime, BN_FLG_CONSTTIME); for (;;) { redo: diff --git a/crypto/rsa/rsa_meth.c b/crypto/rsa/rsa_meth.c index 5dccc330..f5880a73 100644 --- a/crypto/rsa/rsa_meth.c +++ b/crypto/rsa/rsa_meth.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -75,7 +75,7 @@ int RSA_meth_set1_name(RSA_METHOD *meth, const char *name) return 1; } -int RSA_meth_get_flags(RSA_METHOD *meth) +int RSA_meth_get_flags(const RSA_METHOD *meth) { return meth->flags; } diff --git a/crypto/rsa/rsa_mp.c b/crypto/rsa/rsa_mp.c index b8727fa2..e7e81082 100644 --- a/crypto/rsa/rsa_mp.c +++ b/crypto/rsa/rsa_mp.c @@ -9,6 +9,7 @@ */ #include +#include #include "rsa_locl.h" void rsa_multip_info_free_ex(RSA_PRIME_INFO *pinfo) @@ -32,9 +33,10 @@ RSA_PRIME_INFO *rsa_multip_info_new(void) RSA_PRIME_INFO *pinfo; /* create a RSA_PRIME_INFO structure */ - pinfo = OPENSSL_zalloc(sizeof(RSA_PRIME_INFO)); - if (pinfo == NULL) + if ((pinfo = OPENSSL_zalloc(sizeof(RSA_PRIME_INFO))) == NULL) { + RSAerr(RSA_F_RSA_MULTIP_INFO_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } if ((pinfo->r = BN_secure_new()) == NULL) goto err; if ((pinfo->d = BN_secure_new()) == NULL) diff --git a/crypto/rsa/rsa_pmeth.c b/crypto/rsa/rsa_pmeth.c index e11ed1f0..c10669f8 100644 --- a/crypto/rsa/rsa_pmeth.c +++ b/crypto/rsa/rsa_pmeth.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -101,9 +101,10 @@ static int setup_tbuf(RSA_PKEY_CTX *ctx, EVP_PKEY_CTX *pk) { if (ctx->tbuf != NULL) return 1; - ctx->tbuf = OPENSSL_malloc(EVP_PKEY_size(pk->pkey)); - if (ctx->tbuf == NULL) + if ((ctx->tbuf = OPENSSL_malloc(EVP_PKEY_size(pk->pkey))) == NULL) { + RSAerr(RSA_F_SETUP_TBUF, ERR_R_MALLOC_FAILURE); return 0; + } return 1; } diff --git a/crypto/s390x_arch.h b/crypto/s390x_arch.h index 57443182..50421544 100644 --- a/crypto/s390x_arch.h +++ b/crypto/s390x_arch.h @@ -16,6 +16,10 @@ void s390x_km(const unsigned char *in, size_t len, unsigned char *out, unsigned int fc, void *param); void s390x_kmac(const unsigned char *in, size_t len, unsigned int fc, void *param); +void s390x_kmo(const unsigned char *in, size_t len, unsigned char *out, + unsigned int fc, void *param); +void s390x_kmf(const unsigned char *in, size_t len, unsigned char *out, + unsigned int fc, void *param); void s390x_kma(const unsigned char *aad, size_t alen, const unsigned char *in, size_t len, unsigned char *out, unsigned int fc, void *param); diff --git a/crypto/s390xcpuid.pl b/crypto/s390xcpuid.pl index b0ed9e06..e7afb8dc 100755 --- a/crypto/s390xcpuid.pl +++ b/crypto/s390xcpuid.pl @@ -304,6 +304,48 @@ s390x_kmac: ___ } +################ +# void s390x_kmo(const unsigned char *in, size_t len, unsigned char *out, +# unsigned int fc, void *param) +{ +my ($in,$len,$out,$fc,$param) = map("%r$_",(2..6)); +$code.=<<___; +.globl s390x_kmo +.type s390x_kmo,\@function +.align 16 +s390x_kmo: + lr %r0,$fc + l${g}r %r1,$param + + .long 0xb92b0042 # kmo $out,$in + brc 1,.-4 # pay attention to "partial completion" + + br $ra +.size s390x_kmo,.-s390x_kmo +___ +} + +################ +# void s390x_kmf(const unsigned char *in, size_t len, unsigned char *out, +# unsigned int fc, void *param) +{ +my ($in,$len,$out,$fc,$param) = map("%r$_",(2..6)); +$code.=<<___; +.globl s390x_kmf +.type s390x_kmf,\@function +.align 16 +s390x_kmf: + lr %r0,$fc + l${g}r %r1,$param + + .long 0xb92a0042 # kmf $out,$in + brc 1,.-4 # pay attention to "partial completion" + + br $ra +.size s390x_kmf,.-s390x_kmf +___ +} + ################ # void s390x_kma(const unsigned char *aad, size_t alen, # const unsigned char *in, size_t len, diff --git a/crypto/sha/asm/keccak1600-armv4.pl b/crypto/sha/asm/keccak1600-armv4.pl index a9ad3cbc..8bf665c8 100755 --- a/crypto/sha/asm/keccak1600-armv4.pl +++ b/crypto/sha/asm/keccak1600-armv4.pl @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -70,6 +70,21 @@ # Cortex-Mx, x>=3. Otherwise, non-NEON results for NEON-capable # processors are presented mostly for reference purposes. +$flavour = shift; +if ($flavour=~/\w[\w\-]*\.\w+$/) { $output=$flavour; undef $flavour; } +else { while (($output=shift) && ($output!~/\w[\w\-]*\.\w+$/)) {} } + +if ($flavour && $flavour ne "void") { + $0 =~ m/(.*[\/\\])[^\/\\]+$/; $dir=$1; + ( $xlate="${dir}arm-xlate.pl" and -f $xlate ) or + ( $xlate="${dir}../../perlasm/arm-xlate.pl" and -f $xlate) or + die "can't locate arm-xlate.pl"; + + open STDOUT,"| \"$^X\" $xlate $flavour $output"; +} else { + open STDOUT,">$output"; +} + my @C = map("r$_",(0..9)); my @E = map("r$_",(10..12,14)); @@ -96,6 +111,8 @@ my @D = map(8*$_, (25..29)); my @T = map([ 8*$_, 8*($_+1), 8*($_+2), 8*($_+3), 8*($_+4) ], (30,35,40,45,50)); $code.=<<___; +#include "arm_arch.h" + .text #if defined(__thumb2__) @@ -1044,6 +1061,7 @@ ___ } $code.=<<___; +#if __ARM_MAX_ARCH__>=7 .fpu neon .type iotas64, %object @@ -1545,6 +1563,7 @@ SHA3_squeeze_neon: .Lsqueeze_neon_done: ldmia sp!, {r4-r6,pc} .size SHA3_squeeze_neon,.-SHA3_squeeze_neon +#endif .asciz "Keccak-1600 absorb and squeeze for ARMv4/NEON, CRYPTOGAMS by " .align 2 ___ @@ -1573,13 +1592,11 @@ ___ } } -$output=pop; -open STDOUT,">$output"; - foreach (split($/,$code)) { s/\`([^\`]*)\`/eval $1/ge; s/^\s+(ldr|str)\.([lh])\s+(r[0-9]+),\s*(\[.*)/ldrd($1,$2,$3,$4)/ge or + s/\b(ror|ls[rl])\s+(r[0-9]+.*)#/mov $2$1#/g or s/\bret\b/bx lr/g or s/\bbx\s+lr\b/.word\t0xe12fff1e/g; # make it possible to compile with -march=armv4 diff --git a/crypto/sha/asm/keccak1600-armv8.pl b/crypto/sha/asm/keccak1600-armv8.pl index a32b8bae..704ab4a7 100755 --- a/crypto/sha/asm/keccak1600-armv8.pl +++ b/crypto/sha/asm/keccak1600-armv8.pl @@ -538,13 +538,13 @@ $code.=<<___; .type KeccakF1600_ce,%function .align 5 KeccakF1600_ce: - mov x9,#6 + mov x9,#12 adr x10,iotas b .Loop_ce .align 4 .Loop_ce: ___ -for($i=0; $i<4; $i++) { +for($i=0; $i<2; $i++) { $code.=<<___; ////////////////////////////////////////////////// Theta eor3 $C[0],$A[0][0],$A[1][0],$A[2][0] @@ -584,7 +584,7 @@ $code.=<<___; eor $A[0][0],$A[0][0],$C[4] ldr x11,[x10],#8 - xar $C[1] ,$A[3][3],$C[2],#64-$rhotates[3][3] // C[1]=A[0][3] + xar $C[1], $A[3][3],$C[2],#64-$rhotates[3][3] // C[1]=A[0][3] xar $A[3][3],$A[3][2],$C[6],#64-$rhotates[3][2] xar $A[3][2],$A[2][1],$C[5],#64-$rhotates[2][1] xar $A[2][1],$A[1][2],$C[6],#64-$rhotates[1][2] @@ -598,7 +598,7 @@ $code.=<<___; xar $A[1][3],$A[3][1],$C[5],#64-$rhotates[3][1] xar $A[3][1],$A[1][0],$C[4],#64-$rhotates[1][0] - xar $A[1][0],$A[0][3],$C[2],#64-$rhotates[0][3] // * + xar $C[2], $A[0][3],$C[2],#64-$rhotates[0][3] // C[2]=A[1][0] ////////////////////////////////////////////////// Chi+Iota dup $C[6],x11 // borrow C[6] @@ -608,36 +608,36 @@ $code.=<<___; bcax $A[0][3],$C[1], $A[0][0],$A[0][4] bcax $A[0][4],$A[0][4],$C[0], $A[0][0] - bcax $C[0], $A[1][0],$A[1][2],$A[1][1] // * - bcax $C[1], $A[1][1],$A[1][3],$A[1][2] // * + bcax $A[1][0],$C[2], $A[1][2],$A[1][1] // * + bcax $C[0], $A[1][1],$A[1][3],$A[1][2] // * bcax $A[1][2],$A[1][2],$A[1][4],$A[1][3] - bcax $A[1][3],$A[1][3],$A[1][0],$A[1][4] - bcax $A[1][4],$A[1][4],$A[1][1],$A[1][0] + bcax $A[1][3],$A[1][3],$C[2], $A[1][4] + bcax $A[1][4],$A[1][4],$A[1][1],$C[2] eor $A[0][0],$C[3],$C[6] // Iota - bcax $C[2], $A[2][0],$A[2][2],$A[2][1] // * - bcax $C[3], $A[2][1],$A[2][3],$A[2][2] // * + bcax $C[1], $A[2][0],$A[2][2],$A[2][1] // * + bcax $C[2], $A[2][1],$A[2][3],$A[2][2] // * bcax $A[2][2],$A[2][2],$A[2][4],$A[2][3] bcax $A[2][3],$A[2][3],$A[2][0],$A[2][4] bcax $A[2][4],$A[2][4],$A[2][1],$A[2][0] - bcax $A[2][0],$A[3][0],$A[3][2],$A[3][1] // * - bcax $A[2][1],$A[3][1],$A[3][3],$A[3][2] // * + bcax $C[3], $A[3][0],$A[3][2],$A[3][1] // * + bcax $C[4], $A[3][1],$A[3][3],$A[3][2] // * bcax $A[3][2],$A[3][2],$A[3][4],$A[3][3] bcax $A[3][3],$A[3][3],$A[3][0],$A[3][4] bcax $A[3][4],$A[3][4],$A[3][1],$A[3][0] - bcax $A[3][0],$A[4][0],$A[4][2],$A[4][1] // * - bcax $A[3][1],$A[4][1],$A[4][3],$A[4][2] // * + bcax $C[5], $A[4][0],$A[4][2],$A[4][1] // * + bcax $C[6], $A[4][1],$A[4][3],$A[4][2] // * bcax $A[4][2],$A[4][2],$A[4][4],$A[4][3] bcax $A[4][3],$A[4][3],$A[4][0],$A[4][4] bcax $A[4][4],$A[4][4],$A[4][1],$A[4][0] ___ - ($A[1][0],$A[1][1], $C[0],$C[1]) - = ($C[0],$C[1], $A[1][0],$A[1][1]); - ($A[2][0],$A[2][1], $A[3][0],$A[3][1], $A[4][0],$A[4][1], $C[2],$C[3]) - = ($C[2],$C[3], $A[2][0],$A[2][1], $A[3][0],$A[3][1], $A[4][0],$A[4][1]); + ( $A[1][1], $C[0]) = ( $C[0], $A[1][1]); + ($A[2][0],$A[2][1], $C[1],$C[2]) = ($C[1],$C[2], $A[2][0],$A[2][1]); + ($A[3][0],$A[3][1], $C[3],$C[4]) = ($C[3],$C[4], $A[3][0],$A[3][1]); + ($A[4][0],$A[4][1], $C[5],$C[6]) = ($C[5],$C[6], $A[4][0],$A[4][1]); } $code.=<<___; subs x9,x9,#1 diff --git a/crypto/sha/asm/keccak1600-avx2.pl b/crypto/sha/asm/keccak1600-avx2.pl index 2a63dd6c..d9fc1c59 100755 --- a/crypto/sha/asm/keccak1600-avx2.pl +++ b/crypto/sha/asm/keccak1600-avx2.pl @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/crypto/sha/asm/keccak1600-avx512.pl b/crypto/sha/asm/keccak1600-avx512.pl index bde2aa13..9074ff02 100755 --- a/crypto/sha/asm/keccak1600-avx512.pl +++ b/crypto/sha/asm/keccak1600-avx512.pl @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/crypto/sha/asm/keccak1600-avx512vl.pl b/crypto/sha/asm/keccak1600-avx512vl.pl index 9c202fba..a21bb861 100755 --- a/crypto/sha/asm/keccak1600-avx512vl.pl +++ b/crypto/sha/asm/keccak1600-avx512vl.pl @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/crypto/sha/asm/keccak1600-c64x.pl b/crypto/sha/asm/keccak1600-c64x.pl index d13471fa..b00af9af 100755 --- a/crypto/sha/asm/keccak1600-c64x.pl +++ b/crypto/sha/asm/keccak1600-c64x.pl @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/crypto/sha/asm/keccak1600-ppc64.pl b/crypto/sha/asm/keccak1600-ppc64.pl index f89f71c8..60ed2f23 100755 --- a/crypto/sha/asm/keccak1600-ppc64.pl +++ b/crypto/sha/asm/keccak1600-ppc64.pl @@ -30,6 +30,7 @@ # PPC970/G5 14.6/+120% # POWER7 10.3/+100% # POWER8 11.5/+85% +# POWER9 7.2/+45% # # (*) Corresponds to SHA3-256. Percentage after slash is improvement # over gcc-4.x-generated KECCAK_1X_ALT code. Newer compilers do diff --git a/crypto/sha/asm/keccak1600-x86_64.pl b/crypto/sha/asm/keccak1600-x86_64.pl index 94c9c10f..d3f4c10a 100755 --- a/crypto/sha/asm/keccak1600-x86_64.pl +++ b/crypto/sha/asm/keccak1600-x86_64.pl @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -81,7 +81,7 @@ my @rhotates = ([ 0, 1, 62, 28, 27 ], $code.=<<___; .text -.type __KeccakF1600,\@function +.type __KeccakF1600,\@abi-omnipotent .align 32 __KeccakF1600: mov $A[4][0](%rdi),@C[0] @@ -345,7 +345,7 @@ $code.=<<___; .size __KeccakF1600,.-__KeccakF1600 .globl KeccakF1600 -.type KeccakF1600,\@function +.type KeccakF1600,\@abi-omnipotent .align 32 KeccakF1600: .cfi_startproc @@ -410,7 +410,7 @@ ___ ($A_flat,$inp) = ("%r8","%r9"); $code.=<<___; .globl SHA3_absorb -.type SHA3_absorb,\@function +.type SHA3_absorb,\@function,4 .align 32 SHA3_absorb: .cfi_startproc @@ -505,7 +505,7 @@ ___ $code.=<<___; .globl SHA3_squeeze -.type SHA3_squeeze,\@function +.type SHA3_squeeze,\@function,4 .align 32 SHA3_squeeze: .cfi_startproc diff --git a/crypto/sha/asm/keccak1600p8-ppc.pl b/crypto/sha/asm/keccak1600p8-ppc.pl index feec6883..95e6242f 100755 --- a/crypto/sha/asm/keccak1600p8-ppc.pl +++ b/crypto/sha/asm/keccak1600p8-ppc.pl @@ -23,7 +23,7 @@ # buffer for r=1088, which matches SHA3-256. This is 17% better than # scalar PPC64 code. It probably should be noted that if POWER8's # successor can achieve higher scalar instruction issue rate, then -# this module will loose... +# this module will loose... And it does on POWER9 with 8.8 vs. 7.2. $flavour = shift; diff --git a/crypto/sha/asm/sha1-mips.pl b/crypto/sha/asm/sha1-mips.pl index 71dc7225..08f84bc3 100644 --- a/crypto/sha/asm/sha1-mips.pl +++ b/crypto/sha/asm/sha1-mips.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2009-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2009-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -75,7 +75,7 @@ if ($flavour =~ /64|n32/i) { # ###################################################################### -$big_endian=(`echo MIPSEL | $ENV{CC} -E -`=~/MIPSEL/)?1:0 if ($ENV{CC}); +$big_endian=(`echo MIPSEB | $ENV{CC} -E -`=~/MIPSEB/)?0:1 if ($ENV{CC}); for (@ARGV) { $output=$_ if (/\w[\w\-]*\.\w+$/); } open STDOUT,">$output"; diff --git a/crypto/sha/asm/sha512-mips.pl b/crypto/sha/asm/sha512-mips.pl index e6fd2687..dab684dd 100644 --- a/crypto/sha/asm/sha512-mips.pl +++ b/crypto/sha/asm/sha512-mips.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2010-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -81,7 +81,7 @@ $pf = ($flavour =~ /nubi/i) ? $t0 : $t2; # ###################################################################### -$big_endian=(`echo MIPSEL | $ENV{CC} -E -`=~/MIPSEL/)?1:0 if ($ENV{CC}); +$big_endian=(`echo MIPSEB | $ENV{CC} -E -`=~/MIPSEB/)?0:1 if ($ENV{CC}); for (@ARGV) { $output=$_ if (/\w[\w\-]*\.\w+$/); } open STDOUT,">$output"; diff --git a/crypto/sha/asm/sha512p8-ppc.pl b/crypto/sha/asm/sha512p8-ppc.pl index 93dfef20..e6e94679 100755 --- a/crypto/sha/asm/sha512p8-ppc.pl +++ b/crypto/sha/asm/sha512p8-ppc.pl @@ -36,9 +36,9 @@ # little-endian system]. Numbers in square brackets are for 64-bit # build of sha512-ppc.pl, presented for reference. # -# POWER8 -# SHA256 9.9 [15.8] -# SHA512 6.3 [10.3] +# POWER8 POWER9 +# SHA256 9.9 [15.8] 9.2 [9.3] +# SHA512 6.3 [10.3] 5.8 [5.9] $flavour=shift; $output =shift; diff --git a/crypto/sha/build.info b/crypto/sha/build.info index 9dffec3f..5dd5a994 100644 --- a/crypto/sha/build.info +++ b/crypto/sha/build.info @@ -1,7 +1,7 @@ LIBS=../../libcrypto SOURCE[../../libcrypto]=\ sha1dgst.c sha1_one.c sha256.c sha512.c {- $target{sha1_asm_src} -} \ - keccak1600.c + {- $target{keccak1600_asm_src} -} GENERATE[sha1-586.s]=asm/sha1-586.pl \ $(PERLASM_SCHEME) $(LIB_CFLAGS) $(LIB_CPPFLAGS) $(PROCESSOR) @@ -24,6 +24,7 @@ GENERATE[sha1-mb-x86_64.s]=asm/sha1-mb-x86_64.pl $(PERLASM_SCHEME) GENERATE[sha256-x86_64.s]=asm/sha512-x86_64.pl $(PERLASM_SCHEME) GENERATE[sha256-mb-x86_64.s]=asm/sha256-mb-x86_64.pl $(PERLASM_SCHEME) GENERATE[sha512-x86_64.s]=asm/sha512-x86_64.pl $(PERLASM_SCHEME) +GENERATE[keccak1600-x86_64.s]=asm/keccak1600-x86_64.pl $(PERLASM_SCHEME) GENERATE[sha1-sparcv9.S]=asm/sha1-sparcv9.pl $(PERLASM_SCHEME) INCLUDE[sha1-sparcv9.o]=.. @@ -37,6 +38,7 @@ GENERATE[sha256-ppc.s]=asm/sha512-ppc.pl $(PERLASM_SCHEME) GENERATE[sha512-ppc.s]=asm/sha512-ppc.pl $(PERLASM_SCHEME) GENERATE[sha256p8-ppc.s]=asm/sha512p8-ppc.pl $(PERLASM_SCHEME) GENERATE[sha512p8-ppc.s]=asm/sha512p8-ppc.pl $(PERLASM_SCHEME) +GENERATE[keccak1600-ppc64.s]=asm/keccak1600-ppc64.pl $(PERLASM_SCHEME) GENERATE[sha1-parisc.s]=asm/sha1-parisc.pl $(PERLASM_SCHEME) GENERATE[sha256-parisc.s]=asm/sha512-parisc.pl $(PERLASM_SCHEME) @@ -55,6 +57,8 @@ GENERATE[sha256-armv4.S]=asm/sha256-armv4.pl $(PERLASM_SCHEME) INCLUDE[sha256-armv4.o]=.. GENERATE[sha512-armv4.S]=asm/sha512-armv4.pl $(PERLASM_SCHEME) INCLUDE[sha512-armv4.o]=.. +GENERATE[keccak1600-armv4.S]=asm/keccak1600-armv4.pl $(PERLASM_SCHEME) +INCLUDE[keccak1600-armv4.o]=.. GENERATE[sha1-armv8.S]=asm/sha1-armv8.pl $(PERLASM_SCHEME) INCLUDE[sha1-armv8.o]=.. @@ -62,6 +66,7 @@ GENERATE[sha256-armv8.S]=asm/sha512-armv8.pl $(PERLASM_SCHEME) INCLUDE[sha256-armv8.o]=.. GENERATE[sha512-armv8.S]=asm/sha512-armv8.pl $(PERLASM_SCHEME) INCLUDE[sha512-armv8.o]=.. +GENERATE[keccak1600-armv8.S]=asm/keccak1600-armv8.pl $(PERLASM_SCHEME) GENERATE[sha1-s390x.S]=asm/sha1-s390x.pl $(PERLASM_SCHEME) INCLUDE[sha1-s390x.o]=.. @@ -69,6 +74,7 @@ GENERATE[sha256-s390x.S]=asm/sha512-s390x.pl $(PERLASM_SCHEME) INCLUDE[sha256-s390x.o]=.. GENERATE[sha512-s390x.S]=asm/sha512-s390x.pl $(PERLASM_SCHEME) INCLUDE[sha512-s390x.o]=.. +GENERATE[keccak1600-s390x.S]=asm/keccak1600-s390x.pl $(PERLASM_SCHEME) BEGINRAW[Makefile(unix)] ##### SHA assembler implementations diff --git a/crypto/siphash/siphash_ameth.c b/crypto/siphash/siphash_ameth.c index d819461f..6411501b 100644 --- a/crypto/siphash/siphash_ameth.c +++ b/crypto/siphash/siphash_ameth.c @@ -1,5 +1,5 @@ /* - * Copyright 2007-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2007-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -13,6 +13,7 @@ #include "internal/asn1_int.h" #include "internal/siphash.h" #include "siphash_local.h" +#include "internal/evp_int.h" /* * SIPHASH "ASN1" method. This is just here to indicate the maximum @@ -46,6 +47,27 @@ static int siphash_pkey_public_cmp(const EVP_PKEY *a, const EVP_PKEY *b) return ASN1_OCTET_STRING_cmp(EVP_PKEY_get0(a), EVP_PKEY_get0(b)); } +static int siphash_set_priv_key(EVP_PKEY *pkey, const unsigned char *priv, + size_t len) +{ + ASN1_OCTET_STRING *os; + + if (pkey->pkey.ptr != NULL || len != SIPHASH_KEY_SIZE) + return 0; + + os = ASN1_OCTET_STRING_new(); + if (os == NULL) + return 0; + + if (!ASN1_OCTET_STRING_set(os, priv, len)) { + ASN1_OCTET_STRING_free(os); + return 0; + } + + pkey->pkey.ptr = os; + return 1; +} + const EVP_PKEY_ASN1_METHOD siphash_asn1_meth = { EVP_PKEY_SIPHASH, EVP_PKEY_SIPHASH, @@ -64,5 +86,17 @@ const EVP_PKEY_ASN1_METHOD siphash_asn1_meth = { siphash_key_free, siphash_pkey_ctrl, - 0, 0 + NULL, + NULL, + + NULL, + NULL, + NULL, + + NULL, + NULL, + NULL, + + siphash_set_priv_key, + NULL, }; diff --git a/crypto/siphash/siphash_pmeth.c b/crypto/siphash/siphash_pmeth.c index ae16e558..a6352602 100644 --- a/crypto/siphash/siphash_pmeth.c +++ b/crypto/siphash/siphash_pmeth.c @@ -1,5 +1,5 @@ /* - * Copyright 2007-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2007-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -12,6 +12,7 @@ #include #include #include +#include #include "internal/siphash.h" #include "siphash_local.h" #include "internal/evp_int.h" @@ -27,9 +28,10 @@ static int pkey_siphash_init(EVP_PKEY_CTX *ctx) { SIPHASH_PKEY_CTX *pctx; - pctx = OPENSSL_zalloc(sizeof(*pctx)); - if (pctx == NULL) + if ((pctx = OPENSSL_zalloc(sizeof(*pctx))) == NULL) { + CRYPTOerr(CRYPTO_F_PKEY_SIPHASH_INIT, ERR_R_MALLOC_FAILURE); return 0; + } pctx->ktmp.type = V_ASN1_OCTET_STRING; EVP_PKEY_CTX_set_data(ctx, pctx); diff --git a/crypto/sm2/build.info b/crypto/sm2/build.info new file mode 100644 index 00000000..fbf8dba1 --- /dev/null +++ b/crypto/sm2/build.info @@ -0,0 +1,6 @@ +LIBS=../../libcrypto +SOURCE[../../libcrypto]=\ + sm2_za.c sm2_sign.c sm2_crypt.c sm2_err.c + + + diff --git a/crypto/sm2/sm2_crypt.c b/crypto/sm2/sm2_crypt.c new file mode 100644 index 00000000..a31c40fc --- /dev/null +++ b/crypto/sm2/sm2_crypt.c @@ -0,0 +1,335 @@ +/* + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017 Ribose Inc. All Rights Reserved. + * Ported from Ribose contributions from Botan. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include +#include +#include +#include +#include + +typedef struct SM2_Ciphertext_st SM2_Ciphertext; +DECLARE_ASN1_FUNCTIONS(SM2_Ciphertext) + +struct SM2_Ciphertext_st { + BIGNUM *C1x; + BIGNUM *C1y; + ASN1_OCTET_STRING *C3; + ASN1_OCTET_STRING *C2; +}; + +ASN1_SEQUENCE(SM2_Ciphertext) = { + ASN1_SIMPLE(SM2_Ciphertext, C1x, BIGNUM), + ASN1_SIMPLE(SM2_Ciphertext, C1y, BIGNUM), + ASN1_SIMPLE(SM2_Ciphertext, C3, ASN1_OCTET_STRING), + ASN1_SIMPLE(SM2_Ciphertext, C2, ASN1_OCTET_STRING), +} ASN1_SEQUENCE_END(SM2_Ciphertext) + +IMPLEMENT_ASN1_FUNCTIONS(SM2_Ciphertext) + +static size_t EC_field_size(const EC_GROUP *group) +{ + /* Is there some simpler way to do this? */ + BIGNUM *p = BN_new(); + BIGNUM *a = BN_new(); + BIGNUM *b = BN_new(); + size_t field_size = 0; + + if (p == NULL || a == NULL || b == NULL) + goto done; + + EC_GROUP_get_curve_GFp(group, p, a, b, NULL); + field_size = (BN_num_bits(p) + 7) / 8; + + done: + BN_free(p); + BN_free(a); + BN_free(b); + + return field_size; +} + +size_t SM2_plaintext_size(const EC_KEY *key, const EVP_MD *digest, size_t msg_len) +{ + const size_t field_size = EC_field_size(EC_KEY_get0_group(key)); + const size_t md_size = EVP_MD_size(digest); + + const size_t overhead = 10 + 2 * field_size + md_size; + if(msg_len <= overhead) + return 0; + + return msg_len - overhead; +} + +size_t SM2_ciphertext_size(const EC_KEY *key, const EVP_MD *digest, size_t msg_len) +{ + const size_t field_size = EC_field_size(EC_KEY_get0_group(key)); + const size_t md_size = EVP_MD_size(digest); + return 10 + 2 * field_size + md_size + msg_len; +} + +int SM2_encrypt(const EC_KEY *key, + const EVP_MD *digest, + const uint8_t *msg, + size_t msg_len, uint8_t *ciphertext_buf, size_t *ciphertext_len) +{ + int rc = 0; + size_t i; + BN_CTX *ctx = NULL; + BIGNUM *k = NULL; + BIGNUM *x1 = NULL; + BIGNUM *y1 = NULL; + BIGNUM *x2 = NULL; + BIGNUM *y2 = NULL; + + EVP_MD_CTX *hash = EVP_MD_CTX_new(); + + struct SM2_Ciphertext_st ctext_struct; + const EC_GROUP *group = EC_KEY_get0_group(key); + const BIGNUM *order = EC_GROUP_get0_order(group); + const EC_POINT *P = EC_KEY_get0_public_key(key); + EC_POINT *kG = NULL; + EC_POINT *kP = NULL; + uint8_t *msg_mask = NULL; + + uint8_t *x2y2 = NULL; + uint8_t *C3 = NULL; + + const size_t field_size = EC_field_size(group); + const size_t C3_size = EVP_MD_size(digest); + + if (field_size == 0 || C3_size == 0) + goto done; + + kG = EC_POINT_new(group); + kP = EC_POINT_new(group); + if (kG == NULL || kP == NULL) + goto done; + + ctx = BN_CTX_new(); + if (ctx == NULL) + goto done; + + BN_CTX_start(ctx); + k = BN_CTX_get(ctx); + x1 = BN_CTX_get(ctx); + x2 = BN_CTX_get(ctx); + y1 = BN_CTX_get(ctx); + y2 = BN_CTX_get(ctx); + + if (y2 == NULL) + goto done; + + x2y2 = OPENSSL_zalloc(2 * field_size); + C3 = OPENSSL_zalloc(C3_size); + + if (x2y2 == NULL || C3 == NULL) + goto done; + + memset(ciphertext_buf, 0, *ciphertext_len); + + BN_priv_rand_range(k, order); + + if (EC_POINT_mul(group, kG, k, NULL, NULL, ctx) == 0) + goto done; + + if (EC_POINT_get_affine_coordinates_GFp(group, kG, x1, y1, ctx) == 0) + goto done; + + if (EC_POINT_mul(group, kP, NULL, P, k, ctx) == 0) + goto done; + + if (EC_POINT_get_affine_coordinates_GFp(group, kP, x2, y2, ctx) == 0) + goto done; + + BN_bn2binpad(x2, x2y2, field_size); + BN_bn2binpad(y2, x2y2 + field_size, field_size); + + msg_mask = OPENSSL_zalloc(msg_len); + if (msg_mask == NULL) + goto done; + + /* X9.63 with no salt happens to match the KDF used in SM2 */ + if (ECDH_KDF_X9_62(msg_mask, msg_len, x2y2, 2 * field_size, NULL, 0, digest) + == 0) + goto done; + + for (i = 0; i != msg_len; ++i) + msg_mask[i] ^= msg[i]; + + if (EVP_DigestInit(hash, digest) == 0) + goto done; + + if (EVP_DigestUpdate(hash, x2y2, field_size) == 0) + goto done; + + if (EVP_DigestUpdate(hash, msg, msg_len) == 0) + goto done; + + if (EVP_DigestUpdate(hash, x2y2 + field_size, field_size) == 0) + goto done; + + if (EVP_DigestFinal(hash, C3, NULL) == 0) + goto done; + + ctext_struct.C1x = x1; + ctext_struct.C1y = y1; + ctext_struct.C3 = ASN1_OCTET_STRING_new(); + ASN1_OCTET_STRING_set(ctext_struct.C3, C3, C3_size); + ctext_struct.C2 = ASN1_OCTET_STRING_new(); + ASN1_OCTET_STRING_set(ctext_struct.C2, msg_mask, msg_len); + + *ciphertext_len = i2d_SM2_Ciphertext(&ctext_struct, &ciphertext_buf); + + ASN1_OCTET_STRING_free(ctext_struct.C2); + ASN1_OCTET_STRING_free(ctext_struct.C3); + + rc = 1; + + done: + OPENSSL_free(msg_mask); + OPENSSL_free(x2y2); + OPENSSL_free(C3); + EVP_MD_CTX_free(hash); + BN_CTX_free(ctx); + EC_POINT_free(kG); + EC_POINT_free(kP); + return rc; +} + +int SM2_decrypt(const EC_KEY *key, + const EVP_MD *digest, + const uint8_t *ciphertext, + size_t ciphertext_len, uint8_t *ptext_buf, size_t *ptext_len) +{ + int rc = 0; + int i; + + BN_CTX *ctx = NULL; + const EC_GROUP *group = EC_KEY_get0_group(key); + EC_POINT *C1 = NULL; + struct SM2_Ciphertext_st *sm2_ctext = NULL; + BIGNUM *x2 = NULL; + BIGNUM *y2 = NULL; + + uint8_t *x2y2 = NULL; + uint8_t *computed_C3 = NULL; + + const size_t field_size = EC_field_size(group); + const int hash_size = EVP_MD_size(digest); + + uint8_t *msg_mask = NULL; + const uint8_t *C2 = NULL; + const uint8_t *C3 = NULL; + int msg_len = 0; + EVP_MD_CTX *hash = NULL; + + if (field_size == 0 || hash_size == 0) + goto done; + + memset(ptext_buf, 0xFF, *ptext_len); + + sm2_ctext = d2i_SM2_Ciphertext(NULL, &ciphertext, ciphertext_len); + + if (sm2_ctext == NULL) + goto done; + + if (sm2_ctext->C3->length != hash_size) + goto done; + + C2 = sm2_ctext->C2->data; + C3 = sm2_ctext->C3->data; + msg_len = sm2_ctext->C2->length; + + ctx = BN_CTX_new(); + if (ctx == NULL) + goto done; + + BN_CTX_start(ctx); + x2 = BN_CTX_get(ctx); + y2 = BN_CTX_get(ctx); + + if(y2 == NULL) + goto done; + + msg_mask = OPENSSL_zalloc(msg_len); + x2y2 = OPENSSL_zalloc(2 * field_size); + computed_C3 = OPENSSL_zalloc(hash_size); + + if(msg_mask == NULL || x2y2 == NULL || computed_C3 == NULL) + goto done; + + C1 = EC_POINT_new(group); + if (C1 == NULL) + goto done; + + if (EC_POINT_set_affine_coordinates_GFp + (group, C1, sm2_ctext->C1x, sm2_ctext->C1y, ctx) == 0) + goto done; + + if (EC_POINT_mul(group, C1, NULL, C1, EC_KEY_get0_private_key(key), ctx) == + 0) + goto done; + + if (EC_POINT_get_affine_coordinates_GFp(group, C1, x2, y2, ctx) == 0) + goto done; + + BN_bn2binpad(x2, x2y2, field_size); + BN_bn2binpad(y2, x2y2 + field_size, field_size); + + if (ECDH_KDF_X9_62(msg_mask, msg_len, x2y2, 2 * field_size, NULL, 0, digest) + == 0) + goto done; + + for (i = 0; i != msg_len; ++i) + ptext_buf[i] = C2[i] ^ msg_mask[i]; + + hash = EVP_MD_CTX_new(); + + if (hash == NULL) + goto done; + + if (EVP_DigestInit(hash, digest) == 0) + goto done; + + if (EVP_DigestUpdate(hash, x2y2, field_size) == 0) + goto done; + + if (EVP_DigestUpdate(hash, ptext_buf, msg_len) == 0) + goto done; + + if (EVP_DigestUpdate(hash, x2y2 + field_size, field_size) == 0) + goto done; + + if (EVP_DigestFinal(hash, computed_C3, NULL) == 0) + goto done; + + if (memcmp(computed_C3, C3, hash_size) != 0) + goto done; + + rc = 1; + *ptext_len = msg_len; + + done: + + if (rc == 0) + memset(ptext_buf, 0, *ptext_len); + + OPENSSL_free(msg_mask); + OPENSSL_free(x2y2); + OPENSSL_free(computed_C3); + EC_POINT_free(C1); + BN_CTX_free(ctx); + SM2_Ciphertext_free(sm2_ctext); + EVP_MD_CTX_free(hash); + + return rc; +} diff --git a/crypto/sm2/sm2_err.c b/crypto/sm2/sm2_err.c new file mode 100644 index 00000000..0c051f68 --- /dev/null +++ b/crypto/sm2/sm2_err.c @@ -0,0 +1,129 @@ +/* + * Generated by util/mkerr.pl DO NOT EDIT + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include + +#ifndef OPENSSL_NO_ERR + +static const ERR_STRING_DATA SM2_str_functs[] = { + {ERR_PACK(ERR_LIB_SM2, SM2_F_PKEY_SM2_CTRL, 0), "pkey_sm2_ctrl"}, + {ERR_PACK(ERR_LIB_SM2, SM2_F_PKEY_SM2_CTRL_STR, 0), "pkey_sm2_ctrl_str"}, + {ERR_PACK(ERR_LIB_SM2, SM2_F_PKEY_SM2_KEYGEN, 0), "pkey_sm2_keygen"}, + {ERR_PACK(ERR_LIB_SM2, SM2_F_PKEY_SM2_PARAMGEN, 0), "pkey_sm2_paramgen"}, + {ERR_PACK(ERR_LIB_SM2, SM2_F_PKEY_SM2_SIGN, 0), "pkey_sm2_sign"}, + {0, NULL} +}; + +static const ERR_STRING_DATA SM2_str_reasons[] = { + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_ASN1_ERROR), "asn1 error"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_ASN5_ERROR), "asn5 error"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_BAD_SIGNATURE), "bad signature"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_BIGNUM_OUT_OF_RANGE), + "bignum out of range"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_BUFFER_TOO_SMALL), "buffer too small"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_COORDINATES_OUT_OF_RANGE), + "coordinates out of range"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_CURVE_DOES_NOT_SUPPORT_ECDH), + "curve does not support ecdh"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_CURVE_DOES_NOT_SUPPORT_SIGNING), + "curve does not support signing"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_D2I_ECPKPARAMETERS_FAILURE), + "d2i ecpkparameters failure"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_DECODE_ERROR), "decode error"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_DISCRIMINANT_IS_ZERO), + "discriminant is zero"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_EC_GROUP_NEW_BY_NAME_FAILURE), + "ec group new by name failure"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_FIELD_TOO_LARGE), "field too large"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_GF2M_NOT_SUPPORTED), "gf2m not supported"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_GROUP2PKPARAMETERS_FAILURE), + "group2pkparameters failure"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_I2D_ECPKPARAMETERS_FAILURE), + "i2d ecpkparameters failure"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INCOMPATIBLE_OBJECTS), + "incompatible objects"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_ARGUMENT), "invalid argument"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_COMPRESSED_POINT), + "invalid compressed point"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_COMPRESSION_BIT), + "invalid compression bit"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_CURVE), "invalid curve"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_DIGEST), "invalid digest"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_DIGEST_TYPE), + "invalid digest type"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_ENCODING), "invalid encoding"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_FIELD), "invalid field"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_FORM), "invalid form"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_GROUP_ORDER), + "invalid group order"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_KEY), "invalid key"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_OUTPUT_LENGTH), + "invalid output length"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_PEER_KEY), "invalid peer key"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_PENTANOMIAL_BASIS), + "invalid pentanomial basis"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_PRIVATE_KEY), + "invalid private key"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_INVALID_TRINOMIAL_BASIS), + "invalid trinomial basis"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_KDF_PARAMETER_ERROR), + "kdf parameter error"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_KEYS_NOT_SET), "keys not set"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_MISSING_PARAMETERS), "missing parameters"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_MISSING_PRIVATE_KEY), + "missing private key"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_NEED_NEW_SETUP_VALUES), + "need new setup values"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_NOT_A_NIST_PRIME), "not a NIST prime"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_NOT_IMPLEMENTED), "not implemented"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_NOT_INITIALIZED), "not initialized"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_NO_PARAMETERS_SET), "no parameters set"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_NO_PRIVATE_VALUE), "no private value"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_OPERATION_NOT_SUPPORTED), + "operation not supported"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_PASSED_NULL_PARAMETER), + "passed null parameter"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_PEER_KEY_ERROR), "peer key error"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_PKPARAMETERS2GROUP_FAILURE), + "pkparameters2group failure"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_POINT_ARITHMETIC_FAILURE), + "point arithmetic failure"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_POINT_AT_INFINITY), "point at infinity"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_POINT_IS_NOT_ON_CURVE), + "point is not on curve"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_RANDOM_NUMBER_GENERATION_FAILED), + "random number generation failed"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_SHARED_INFO_ERROR), "shared info error"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_SLOT_FULL), "slot full"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_UNDEFINED_GENERATOR), + "undefined generator"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_UNDEFINED_ORDER), "undefined order"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_UNKNOWN_GROUP), "unknown group"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_UNKNOWN_ORDER), "unknown order"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_UNSUPPORTED_FIELD), "unsupported field"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_WRONG_CURVE_PARAMETERS), + "wrong curve parameters"}, + {ERR_PACK(ERR_LIB_SM2, 0, SM2_R_WRONG_ORDER), "wrong order"}, + {0, NULL} +}; + +#endif + +int ERR_load_SM2_strings(void) +{ +#ifndef OPENSSL_NO_ERR + if (ERR_func_error_string(SM2_str_functs[0].error) == NULL) { + ERR_load_strings_const(SM2_str_functs); + ERR_load_strings_const(SM2_str_reasons); + } +#endif + return 1; +} diff --git a/crypto/sm2/sm2_sign.c b/crypto/sm2/sm2_sign.c new file mode 100644 index 00000000..e12eca12 --- /dev/null +++ b/crypto/sm2/sm2_sign.c @@ -0,0 +1,322 @@ +/* + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017 Ribose Inc. All Rights Reserved. + * Ported from Ribose contributions from Botan. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include +#include +#include + +static BIGNUM *compute_msg_hash(const EVP_MD *digest, + const EC_KEY *key, + const char *user_id, + const uint8_t *msg, size_t msg_len) +{ + EVP_MD_CTX *hash = EVP_MD_CTX_new(); + const int md_size = EVP_MD_size(digest); + uint8_t *za = OPENSSL_zalloc(md_size); + BIGNUM *e = NULL; + + if (za == NULL) + goto done; + + if (hash == NULL) + goto done; + + if (SM2_compute_userid_digest(za, digest, user_id, key) == 0) + goto done; + + if (EVP_DigestInit(hash, digest) == 0) + goto done; + + if (EVP_DigestUpdate(hash, za, md_size) == 0) + goto done; + + if (EVP_DigestUpdate(hash, msg, msg_len) == 0) + goto done; + + /* reuse za buffer to hold H(ZA || M) */ + if (EVP_DigestFinal(hash, za, NULL) == 0) + goto done; + + e = BN_bin2bn(za, md_size, NULL); + + done: + OPENSSL_free(za); + EVP_MD_CTX_free(hash); + return e; +} + +static +ECDSA_SIG *SM2_sig_gen(const EC_KEY *key, const BIGNUM *e) +{ + const BIGNUM *dA = EC_KEY_get0_private_key(key); + const EC_GROUP *group = EC_KEY_get0_group(key); + const BIGNUM *order = EC_GROUP_get0_order(group); + + ECDSA_SIG *sig = NULL; + EC_POINT *kG = NULL; + BN_CTX *ctx = NULL; + BIGNUM *k = NULL; + BIGNUM *rk = NULL; + BIGNUM *r = NULL; + BIGNUM *s = NULL; + BIGNUM *x1 = NULL; + BIGNUM *tmp = NULL; + + kG = EC_POINT_new(group); + if (kG == NULL) + goto done; + + ctx = BN_CTX_new(); + if (ctx == NULL) + goto done; + + BN_CTX_start(ctx); + + k = BN_CTX_get(ctx); + rk = BN_CTX_get(ctx); + x1 = BN_CTX_get(ctx); + tmp = BN_CTX_get(ctx); + + if (tmp == NULL) + goto done; + + /* These values are returned and so should not be allocated out of the context */ + r = BN_new(); + s = BN_new(); + + if (r == NULL || s == NULL) + goto done; + + for (;;) { + BN_priv_rand_range(k, order); + + if (EC_POINT_mul(group, kG, k, NULL, NULL, ctx) == 0) + goto done; + + if (EC_POINT_get_affine_coordinates_GFp(group, kG, x1, NULL, ctx) == 0) + goto done; + + if (BN_mod_add(r, e, x1, order, ctx) == 0) + goto done; + + /* try again if r == 0 or r+k == n */ + if (BN_is_zero(r)) + continue; + + BN_add(rk, r, k); + + if (BN_cmp(rk, order) == 0) + continue; + + BN_add(s, dA, BN_value_one()); + BN_mod_inverse(s, s, order, ctx); + + BN_mod_mul(tmp, dA, r, order, ctx); + BN_sub(tmp, k, tmp); + + BN_mod_mul(s, s, tmp, order, ctx); + + sig = ECDSA_SIG_new(); + + if (sig == NULL) + goto done; + + /* takes ownership of r and s */ + ECDSA_SIG_set0(sig, r, s); + break; + } + + done: + + if (sig == NULL) { + BN_free(r); + BN_free(s); + } + + BN_CTX_free(ctx); + EC_POINT_free(kG); + return sig; + +} + +static +int SM2_sig_verify(const EC_KEY *key, const ECDSA_SIG *sig, const BIGNUM *e) +{ + int ret = 0; + const EC_GROUP *group = EC_KEY_get0_group(key); + const BIGNUM *order = EC_GROUP_get0_order(group); + BN_CTX *ctx = NULL; + EC_POINT *pt = NULL; + + BIGNUM *t = NULL; + BIGNUM *x1 = NULL; + const BIGNUM *r = NULL; + const BIGNUM *s = NULL; + + ctx = BN_CTX_new(); + if (ctx == NULL) + goto done; + pt = EC_POINT_new(group); + if (pt == NULL) + goto done; + + BN_CTX_start(ctx); + + t = BN_CTX_get(ctx); + x1 = BN_CTX_get(ctx); + + if (x1 == NULL) + goto done; + + /* + B1: verify whether r' in [1,n-1], verification failed if not + B2: vefify whether s' in [1,n-1], verification failed if not + B3: set M'~=ZA || M' + B4: calculate e'=Hv(M'~) + B5: calculate t = (r' + s') modn, verification failed if t=0 + B6: calculate the point (x1', y1')=[s']G + [t]PA + B7: calculate R=(e'+x1') modn, verfication pass if yes, otherwise failed + */ + + ECDSA_SIG_get0(sig, &r, &s); + + if (BN_cmp(r, BN_value_one()) < 0) + goto done; + if (BN_cmp(s, BN_value_one()) < 0) + goto done; + + if (BN_cmp(order, r) <= 0) + goto done; + if (BN_cmp(order, s) <= 0) + goto done; + + if (BN_mod_add(t, r, s, order, ctx) == 0) + goto done; + + if (BN_is_zero(t) == 1) + goto done; + + if (EC_POINT_mul(group, pt, s, EC_KEY_get0_public_key(key), t, ctx) == 0) + goto done; + + if (EC_POINT_get_affine_coordinates_GFp(group, pt, x1, NULL, ctx) == 0) + goto done; + + if (BN_mod_add(t, e, x1, order, ctx) == 0) + goto done; + + if (BN_cmp(r, t) == 0) + ret = 1; + + done: + EC_POINT_free(pt); + BN_CTX_free(ctx); + return ret; +} + +ECDSA_SIG *SM2_do_sign(const EC_KEY *key, + const EVP_MD *digest, + const char *user_id, const uint8_t *msg, size_t msg_len) +{ + BIGNUM *e = NULL; + ECDSA_SIG *sig = NULL; + + e = compute_msg_hash(digest, key, user_id, msg, msg_len); + if (e == NULL) + goto done; + + sig = SM2_sig_gen(key, e); + + done: + BN_free(e); + return sig; +} + +int SM2_do_verify(const EC_KEY *key, + const EVP_MD *digest, + const ECDSA_SIG *sig, + const char *user_id, const uint8_t *msg, size_t msg_len) +{ + BIGNUM *e = NULL; + int ret = -1; + + e = compute_msg_hash(digest, key, user_id, msg, msg_len); + if (e == NULL) + goto done; + + ret = SM2_sig_verify(key, sig, e); + + done: + BN_free(e); + return ret; +} + +int SM2_sign(int type, const unsigned char *dgst, int dgstlen, + unsigned char *sig, unsigned int *siglen, EC_KEY *eckey) +{ + BIGNUM *e = NULL; + ECDSA_SIG *s = NULL; + int ret = -1; + + if (type != NID_sm3) + goto done; + + if (dgstlen != 32) /* expected length of SM3 hash */ + goto done; + + e = BN_bin2bn(dgst, dgstlen, NULL); + + s = SM2_sig_gen(eckey, e); + + *siglen = i2d_ECDSA_SIG(s, &sig); + + ret = 1; + + done: + ECDSA_SIG_free(s); + BN_free(e); + return ret; +} + +int SM2_verify(int type, const unsigned char *dgst, int dgstlen, + const unsigned char *sig, int sig_len, EC_KEY *eckey) +{ + ECDSA_SIG *s = NULL; + BIGNUM *e = NULL; + const unsigned char *p = sig; + unsigned char *der = NULL; + int derlen = -1; + int ret = -1; + + if (type != NID_sm3) + goto done; + + s = ECDSA_SIG_new(); + if (s == NULL) + goto done; + if (d2i_ECDSA_SIG(&s, &p, sig_len) == NULL) + goto done; + /* Ensure signature uses DER and doesn't have trailing garbage */ + derlen = i2d_ECDSA_SIG(s, &der); + if (derlen != sig_len || memcmp(sig, der, derlen) != 0) + goto done; + + e = BN_bin2bn(dgst, dgstlen, NULL); + + ret = SM2_sig_verify(eckey, s, e); + + done: + OPENSSL_free(der); + BN_free(e); + ECDSA_SIG_free(s); + return ret; +} diff --git a/crypto/sm2/sm2_za.c b/crypto/sm2/sm2_za.c new file mode 100644 index 00000000..f76fe0fc --- /dev/null +++ b/crypto/sm2/sm2_za.c @@ -0,0 +1,132 @@ +/* + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017 Ribose Inc. All Rights Reserved. + * Ported from Ribose contributions from Botan. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include +#include +#include + +int SM2_compute_userid_digest(uint8_t *out, + const EVP_MD *digest, + const char *user_id, + const EC_KEY *key) +{ + int rc = 0; + + const EC_GROUP *group = EC_KEY_get0_group(key); + + BN_CTX *ctx = NULL; + EVP_MD_CTX *hash = NULL; + + BIGNUM *p = NULL; + BIGNUM *a = NULL; + BIGNUM *b = NULL; + + BIGNUM *xG = NULL; + BIGNUM *yG = NULL; + BIGNUM *xA = NULL; + BIGNUM *yA = NULL; + + int p_bytes = 0; + uint8_t *buf = NULL; + size_t uid_len = 0; + uint16_t entla = 0; + uint8_t e_byte = 0; + + hash = EVP_MD_CTX_new(); + if (hash == NULL) + goto done; + + ctx = BN_CTX_new(); + if (ctx == NULL) + goto done; + + p = BN_CTX_get(ctx); + a = BN_CTX_get(ctx); + b = BN_CTX_get(ctx); + xG = BN_CTX_get(ctx); + yG = BN_CTX_get(ctx); + xA = BN_CTX_get(ctx); + yA = BN_CTX_get(ctx); + + if (p == NULL || a == NULL || b == NULL || + xG == NULL || yG == NULL || xA == NULL || yA == NULL) + goto done; + + memset(out, 0, EVP_MD_size(digest)); + + if (EVP_DigestInit(hash, digest) == 0) + goto done; + + /* + ZA=H256(ENTLA || IDA || a || b || xG || yG || xA || yA) + */ + + uid_len = strlen(user_id); + + if (uid_len >= 8192) /* too large */ + goto done; + + entla = (unsigned short)(8 * uid_len); + + e_byte = entla >> 8; + if (EVP_DigestUpdate(hash, &e_byte, 1) == 0) + goto done; + e_byte = entla & 0xFF; + if (EVP_DigestUpdate(hash, &e_byte, 1) == 0) + goto done; + + if (EVP_DigestUpdate(hash, user_id, uid_len) == 0) + goto done; + + if (EC_GROUP_get_curve_GFp(group, p, a, b, ctx) == 0) + goto done; + + p_bytes = BN_num_bytes(p); + buf = OPENSSL_zalloc(p_bytes); + + BN_bn2binpad(a, buf, p_bytes); + if (EVP_DigestUpdate(hash, buf, p_bytes) == 0) + goto done; + BN_bn2binpad(b, buf, p_bytes); + if (EVP_DigestUpdate(hash, buf, p_bytes) == 0) + goto done; + EC_POINT_get_affine_coordinates_GFp(group, + EC_GROUP_get0_generator(group), + xG, yG, ctx); + BN_bn2binpad(xG, buf, p_bytes); + if (EVP_DigestUpdate(hash, buf, p_bytes) == 0) + goto done; + BN_bn2binpad(yG, buf, p_bytes); + if (EVP_DigestUpdate(hash, buf, p_bytes) == 0) + goto done; + + EC_POINT_get_affine_coordinates_GFp(group, + EC_KEY_get0_public_key(key), + xA, yA, ctx); + BN_bn2binpad(xA, buf, p_bytes); + if (EVP_DigestUpdate(hash, buf, p_bytes) == 0) + goto done; + BN_bn2binpad(yA, buf, p_bytes); + if (EVP_DigestUpdate(hash, buf, p_bytes) == 0) + goto done; + + if (EVP_DigestFinal(hash, out, NULL) == 0) + goto done; + + rc = 1; + + done: + OPENSSL_free(buf); + BN_CTX_free(ctx); + EVP_MD_CTX_free(hash); + return rc; +} diff --git a/crypto/srp/srp_vfy.c b/crypto/srp/srp_vfy.c index 56ae94b1..b13c006b 100644 --- a/crypto/srp/srp_vfy.c +++ b/crypto/srp/srp_vfy.c @@ -13,36 +13,164 @@ #ifndef OPENSSL_NO_SRP # include "internal/cryptlib.h" +# include "internal/evp_int.h" # include # include # include # include # include # include +# include # define SRP_RANDOM_SALT_LEN 20 # define MAX_LEN 2500 +/* + * Note that SRP uses its own variant of base 64 encoding. A different base64 + * alphabet is used and no padding '=' characters are added. Instead we pad to + * the front with 0 bytes and subsequently strip off leading encoded padding. + * This variant is used for compatibility with other SRP implementations - + * notably libsrp, but also others. It is also required for backwards + * compatibility in order to load verifier files from other OpenSSL versions. + */ + /* * Convert a base64 string into raw byte array representation. + * Returns the length of the decoded data, or -1 on error. */ static int t_fromb64(unsigned char *a, size_t alen, const char *src) { - size_t size = strlen(src); + EVP_ENCODE_CTX *ctx; + int outl = 0, outl2 = 0; + size_t size, padsize; + const unsigned char *pad = (const unsigned char *)"00"; + + while (*src == ' ' || *src == '\t' || *src == '\n') + ++src; + size = strlen(src); + padsize = 4 - (size & 3); + padsize &= 3; /* Four bytes in src become three bytes output. */ - if (size > INT_MAX || (size / 4) * 3 > alen) + if (size > INT_MAX || ((size + padsize) / 4) * 3 > alen) return -1; - return EVP_DecodeBlock(a, (unsigned char *)src, (int)size); + ctx = EVP_ENCODE_CTX_new(); + if (ctx == NULL) + return -1; + + /* + * This should never occur because 1 byte of data always requires 2 bytes of + * encoding, i.e. + * 0 bytes unencoded = 0 bytes encoded + * 1 byte unencoded = 2 bytes encoded + * 2 bytes unencoded = 3 bytes encoded + * 3 bytes unencoded = 4 bytes encoded + * 4 bytes unencoded = 6 bytes encoded + * etc + */ + if (padsize == 3) { + outl = -1; + goto err; + } + + /* Valid padsize values are now 0, 1 or 2 */ + + EVP_DecodeInit(ctx); + evp_encode_ctx_set_flags(ctx, EVP_ENCODE_CTX_USE_SRP_ALPHABET); + + /* Add any encoded padding that is required */ + if (padsize != 0 + && EVP_DecodeUpdate(ctx, a, &outl, pad, padsize) < 0) { + outl = -1; + goto err; + } + if (EVP_DecodeUpdate(ctx, a, &outl2, (const unsigned char *)src, size) < 0) { + outl = -1; + goto err; + } + outl += outl2; + EVP_DecodeFinal(ctx, a + outl, &outl2); + outl += outl2; + + /* Strip off the leading padding */ + if (padsize != 0) { + if ((int)padsize >= outl) { + outl = -1; + goto err; + } + + /* + * If we added 1 byte of padding prior to encoding then we have 2 bytes + * of "real" data which gets spread across 4 encoded bytes like this: + * (6 bits pad)(2 bits pad | 4 bits data)(6 bits data)(6 bits data) + * So 1 byte of pre-encoding padding results in 1 full byte of encoded + * padding. + * If we added 2 bytes of padding prior to encoding this gets encoded + * as: + * (6 bits pad)(6 bits pad)(4 bits pad | 2 bits data)(6 bits data) + * So 2 bytes of pre-encoding padding results in 2 full bytes of encoded + * padding, i.e. we have to strip the same number of bytes of padding + * from the encoded data as we added to the pre-encoded data. + */ + memmove(a, a + padsize, outl - padsize); + outl -= padsize; + } + + err: + EVP_ENCODE_CTX_free(ctx); + + return outl; } /* * Convert a raw byte string into a null-terminated base64 ASCII string. + * Returns 1 on success or 0 on error. */ -static void t_tob64(char *dst, const unsigned char *src, int size) +static int t_tob64(char *dst, const unsigned char *src, int size) { - EVP_EncodeBlock((unsigned char *)dst, src, size); + EVP_ENCODE_CTX *ctx = EVP_ENCODE_CTX_new(); + int outl = 0, outl2 = 0; + unsigned char pad[2] = {0, 0}; + size_t leadz = 0; + + if (ctx == NULL) + return 0; + + EVP_EncodeInit(ctx); + evp_encode_ctx_set_flags(ctx, EVP_ENCODE_CTX_NO_NEWLINES + | EVP_ENCODE_CTX_USE_SRP_ALPHABET); + + /* + * We pad at the front with zero bytes until the length is a multiple of 3 + * so that EVP_EncodeUpdate/EVP_EncodeFinal does not add any of its own "=" + * padding + */ + leadz = 3 - (size % 3); + if (leadz != 3 + && !EVP_EncodeUpdate(ctx, (unsigned char *)dst, &outl, pad, + leadz)) { + EVP_ENCODE_CTX_free(ctx); + return 0; + } + + if (!EVP_EncodeUpdate(ctx, (unsigned char *)dst + outl, &outl2, src, + size)) { + EVP_ENCODE_CTX_free(ctx); + return 0; + } + outl += outl2; + EVP_EncodeFinal(ctx, (unsigned char *)dst + outl, &outl2); + outl += outl2; + + /* Strip the encoded padding at the front */ + if (leadz != 3) { + memmove(dst, dst + leadz, outl - leadz); + dst[outl - leadz] = '\0'; + } + + EVP_ENCODE_CTX_free(ctx); + return 1; } void SRP_user_pwd_free(SRP_user_pwd *user_pwd) @@ -58,9 +186,12 @@ void SRP_user_pwd_free(SRP_user_pwd *user_pwd) static SRP_user_pwd *SRP_user_pwd_new(void) { - SRP_user_pwd *ret = OPENSSL_malloc(sizeof(*ret)); - if (ret == NULL) + SRP_user_pwd *ret; + + if ((ret = OPENSSL_malloc(sizeof(*ret))) == NULL) { + /* SRPerr(SRP_F_SRP_USER_PWD_NEW, ERR_R_MALLOC_FAILURE); */ return NULL; + } ret->N = NULL; ret->g = NULL; ret->s = NULL; @@ -422,7 +553,7 @@ SRP_user_pwd *SRP_VBASE_get1_by_user(SRP_VBASE *vb, char *username) if (!SRP_user_pwd_set_ids(user, username, NULL)) goto err; - if (RAND_bytes(digv, SHA_DIGEST_LENGTH) <= 0) + if (RAND_priv_bytes(digv, SHA_DIGEST_LENGTH) <= 0) goto err; ctxt = EVP_MD_CTX_new(); if (ctxt == NULL diff --git a/crypto/stack/stack.c b/crypto/stack/stack.c index fc755e36..975515db 100644 --- a/crypto/stack/stack.c +++ b/crypto/stack/stack.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -46,8 +46,10 @@ OPENSSL_STACK *OPENSSL_sk_dup(const OPENSSL_STACK *sk) { OPENSSL_STACK *ret; - if ((ret = OPENSSL_malloc(sizeof(*ret))) == NULL) + if ((ret = OPENSSL_malloc(sizeof(*ret))) == NULL) { + CRYPTOerr(CRYPTO_F_OPENSSL_SK_DUP, ERR_R_MALLOC_FAILURE); return NULL; + } /* direct structure assignment */ *ret = *sk; @@ -75,8 +77,10 @@ OPENSSL_STACK *OPENSSL_sk_deep_copy(const OPENSSL_STACK *sk, OPENSSL_STACK *ret; int i; - if ((ret = OPENSSL_malloc(sizeof(*ret))) == NULL) + if ((ret = OPENSSL_malloc(sizeof(*ret))) == NULL) { + CRYPTOerr(CRYPTO_F_OPENSSL_SK_DEEP_COPY, ERR_R_MALLOC_FAILURE); return NULL; + } /* direct structure assignment */ *ret = *sk; @@ -173,9 +177,10 @@ static int sk_reserve(OPENSSL_STACK *st, int n, int exact) * At this point, |st->num_alloc| and |st->num| are 0; * so |num_alloc| value is |n| or |min_nodes| if greater than |n|. */ - st->data = OPENSSL_zalloc(sizeof(void *) * num_alloc); - if (st->data == NULL) + if ((st->data = OPENSSL_zalloc(sizeof(void *) * num_alloc)) == NULL) { + CRYPTOerr(CRYPTO_F_SK_RESERVE, ERR_R_MALLOC_FAILURE); return 0; + } st->num_alloc = num_alloc; return 1; } diff --git a/crypto/store/store_init.c b/crypto/store/store_init.c index 4b531086..4d0ff012 100644 --- a/crypto/store/store_init.c +++ b/crypto/store/store_init.c @@ -18,7 +18,7 @@ DEFINE_RUN_ONCE_STATIC(do_store_init) && ossl_store_file_loader_init(); } -int ossl_store_init_once() +int ossl_store_init_once(void) { if (!RUN_ONCE(&store_init, do_store_init)) { OSSL_STOREerr(OSSL_STORE_F_OSSL_STORE_INIT_ONCE, ERR_R_MALLOC_FAILURE); diff --git a/crypto/threads_none.c b/crypto/threads_none.c index 30ed4e69..ab6db8e3 100644 --- a/crypto/threads_none.c +++ b/crypto/threads_none.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -14,9 +14,12 @@ CRYPTO_RWLOCK *CRYPTO_THREAD_lock_new(void) { - CRYPTO_RWLOCK *lock = OPENSSL_zalloc(sizeof(unsigned int)); - if (lock == NULL) + CRYPTO_RWLOCK *lock; + + if ((lock = OPENSSL_zalloc(sizeof(unsigned int))) == NULL) { + /* Don't set error, to avoid recursion blowup. */ return NULL; + } *(unsigned int *)lock = 1; diff --git a/crypto/threads_pthread.c b/crypto/threads_pthread.c index 3aeef216..8d30e1c6 100644 --- a/crypto/threads_pthread.c +++ b/crypto/threads_pthread.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -19,9 +19,12 @@ CRYPTO_RWLOCK *CRYPTO_THREAD_lock_new(void) { # ifdef USE_RWLOCK - CRYPTO_RWLOCK *lock = OPENSSL_zalloc(sizeof(pthread_rwlock_t)); - if (lock == NULL) + CRYPTO_RWLOCK *lock; + + if ((lock = OPENSSL_zalloc(sizeof(pthread_rwlock_t))) == NULL) { + /* Don't set error, to avoid recursion blowup. */ return NULL; + } if (pthread_rwlock_init(lock, NULL) != 0) { OPENSSL_free(lock); @@ -29,9 +32,12 @@ CRYPTO_RWLOCK *CRYPTO_THREAD_lock_new(void) } # else pthread_mutexattr_t attr; - CRYPTO_RWLOCK *lock = OPENSSL_zalloc(sizeof(pthread_mutex_t)); - if (lock == NULL) + CRYPTO_RWLOCK *lock; + + if ((lock = OPENSSL_zalloc(sizeof(pthread_mutex_t))) == NULL) { + /* Don't set error, to avoid recursion blowup. */ return NULL; + } pthread_mutexattr_init(&attr); pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); diff --git a/crypto/threads_win.c b/crypto/threads_win.c index f222aa5d..1e5cf820 100644 --- a/crypto/threads_win.c +++ b/crypto/threads_win.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -17,9 +17,12 @@ CRYPTO_RWLOCK *CRYPTO_THREAD_lock_new(void) { - CRYPTO_RWLOCK *lock = OPENSSL_zalloc(sizeof(CRITICAL_SECTION)); - if (lock == NULL) + CRYPTO_RWLOCK *lock; + + if ((lock = OPENSSL_zalloc(sizeof(CRITICAL_SECTION))) == NULL) { + /* Don't set error, to avoid recursion blowup. */ return NULL; + } /* 0x400 is the spin count value suggested in the documentation */ if (!InitializeCriticalSectionAndSpinCount(lock, 0x400)) { diff --git a/crypto/ts/ts_rsp_sign.c b/crypto/ts/ts_rsp_sign.c index 65699562..1b2b84ef 100644 --- a/crypto/ts/ts_rsp_sign.c +++ b/crypto/ts/ts_rsp_sign.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -13,6 +13,7 @@ #include #include #include +#include #include "ts_lcl.h" static ASN1_INTEGER *def_serial_cb(struct TS_resp_ctx *, void *); @@ -116,7 +117,7 @@ static int def_extension_cb(struct TS_resp_ctx *ctx, X509_EXTENSION *ext, /* TS_RESP_CTX management functions. */ -TS_RESP_CTX *TS_RESP_CTX_new() +TS_RESP_CTX *TS_RESP_CTX_new(void) { TS_RESP_CTX *ctx; @@ -678,7 +679,8 @@ static int ts_RESP_sign(TS_RESP_CTX *ctx) } certs = ctx->flags & TS_ESS_CERT_ID_CHAIN ? ctx->certs : NULL; - if (ctx->ess_cert_id_digest == EVP_sha1()) { + if (ctx->ess_cert_id_digest == NULL + || ctx->ess_cert_id_digest == EVP_sha1()) { if ((sc = ess_SIGNING_CERT_new_init(ctx->signer_cert, certs)) == NULL) goto err; @@ -985,7 +987,7 @@ static ASN1_GENERALIZEDTIME *TS_RESP_set_genTime_with_precision( unsigned precision) { time_t time_sec = (time_t)sec; - struct tm *tm = NULL; + struct tm *tm = NULL, tm_result; char genTime_str[17 + TS_MAX_CLOCK_PRECISION_DIGITS]; char *p = genTime_str; char *p_end = genTime_str + sizeof(genTime_str); @@ -993,7 +995,7 @@ static ASN1_GENERALIZEDTIME *TS_RESP_set_genTime_with_precision( if (precision > TS_MAX_CLOCK_PRECISION_DIGITS) goto err; - if ((tm = gmtime(&time_sec)) == NULL) + if ((tm = OPENSSL_gmtime(&time_sec, &tm_result)) == NULL) goto err; /* diff --git a/crypto/txt_db/txt_db.c b/crypto/txt_db/txt_db.c index d6859629..c4e17825 100644 --- a/crypto/txt_db/txt_db.c +++ b/crypto/txt_db/txt_db.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -286,7 +286,6 @@ void TXT_DB_free(TXT_DB *db) if (db == NULL) return; - if (db->index != NULL) { for (i = db->num_fields - 1; i >= 0; i--) lh_OPENSSL_STRING_free(db->index[i]); diff --git a/crypto/ui/ui_err.c b/crypto/ui/ui_err.c index e69163c4..b806872c 100644 --- a/crypto/ui/ui_err.c +++ b/crypto/ui/ui_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -22,6 +22,7 @@ static const ERR_STRING_DATA UI_str_functs[] = { "general_allocate_prompt"}, {ERR_PACK(ERR_LIB_UI, UI_F_NOECHO_CONSOLE, 0), "noecho_console"}, {ERR_PACK(ERR_LIB_UI, UI_F_OPEN_CONSOLE, 0), "open_console"}, + {ERR_PACK(ERR_LIB_UI, UI_F_UI_CONSTRUCT_PROMPT, 0), "UI_construct_prompt"}, {ERR_PACK(ERR_LIB_UI, UI_F_UI_CREATE_METHOD, 0), "UI_create_method"}, {ERR_PACK(ERR_LIB_UI, UI_F_UI_CTRL, 0), "UI_ctrl"}, {ERR_PACK(ERR_LIB_UI, UI_F_UI_DUP_ERROR_STRING, 0), "UI_dup_error_string"}, diff --git a/crypto/ui/ui_lib.c b/crypto/ui/ui_lib.c index 98519877..139485dc 100644 --- a/crypto/ui/ui_lib.c +++ b/crypto/ui/ui_lib.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -374,9 +374,10 @@ char *UI_construct_prompt(UI *ui, const char *object_desc, len += sizeof(prompt2) - 1 + strlen(object_name); len += sizeof(prompt3) - 1; - prompt = OPENSSL_malloc(len + 1); - if (prompt == NULL) + if ((prompt = OPENSSL_malloc(len + 1)) == NULL) { + UIerr(UI_F_UI_CONSTRUCT_PROMPT, ERR_R_MALLOC_FAILURE); return NULL; + } OPENSSL_strlcpy(prompt, prompt1, len + 1); OPENSSL_strlcat(prompt, object_desc, len + 1); if (object_name != NULL) { diff --git a/crypto/ui/ui_openssl.c b/crypto/ui/ui_openssl.c index 3ccd8a72..078d10ca 100644 --- a/crypto/ui/ui_openssl.c +++ b/crypto/ui/ui_openssl.c @@ -503,17 +503,13 @@ static int echo_console(UI *ui) { # if defined(TTY_set) && !defined(OPENSSL_SYS_VMS) memcpy(&(tty_new), &(tty_orig), sizeof(tty_orig)); - tty_new.TTY_FLAGS |= ECHO; -# endif - -# if defined(TTY_set) && !defined(OPENSSL_SYS_VMS) if (is_a_tty && (TTY_set(fileno(tty_in), &tty_new) == -1)) return 0; # endif # ifdef OPENSSL_SYS_VMS if (is_a_tty) { tty_new[0] = tty_orig[0]; - tty_new[1] = tty_orig[1] & ~TT$M_NOECHO; + tty_new[1] = tty_orig[1]; tty_new[2] = tty_orig[2]; status = sys$qiow(0, channel, IO$_SETMODE, &iosb, 0, 0, tty_new, 12, 0, 0, 0, 0); @@ -534,7 +530,6 @@ static int echo_console(UI *ui) # if defined(_WIN32) && !defined(_WIN32_WCE) if (is_a_tty) { tty_new = tty_orig; - tty_new |= ENABLE_ECHO_INPUT; SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE), tty_new); } # endif diff --git a/crypto/x509/by_dir.c b/crypto/x509/by_dir.c index f64cf384..ae9670c6 100644 --- a/crypto/x509/by_dir.c +++ b/crypto/x509/by_dir.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -48,7 +48,7 @@ static int get_cert_by_subject(X509_LOOKUP *xl, X509_LOOKUP_TYPE type, X509_NAME *name, X509_OBJECT *ret); static X509_LOOKUP_METHOD x509_dir_lookup = { "Load certs from files in a directory", - new_dir, /* new */ + new_dir, /* new_item */ free_dir, /* free */ NULL, /* init */ NULL, /* shutdown */ @@ -68,15 +68,13 @@ static int dir_ctrl(X509_LOOKUP *ctx, int cmd, const char *argp, long argl, char **retp) { int ret = 0; - BY_DIR *ld; - char *dir = NULL; - - ld = (BY_DIR *)ctx->method_data; + BY_DIR *ld = (BY_DIR *)ctx->method_data; switch (cmd) { case X509_L_ADD_DIR: if (argl == X509_FILETYPE_DEFAULT) { - dir = (char *)getenv(X509_get_default_cert_dir_env()); + const char *dir = getenv(X509_get_default_cert_dir_env()); + if (dir) ret = add_cert_dir(ld, dir, X509_FILETYPE_PEM); else @@ -94,23 +92,30 @@ static int dir_ctrl(X509_LOOKUP *ctx, int cmd, const char *argp, long argl, static int new_dir(X509_LOOKUP *lu) { - BY_DIR *a; + BY_DIR *a = OPENSSL_malloc(sizeof(*a)); - if ((a = OPENSSL_malloc(sizeof(*a))) == NULL) + if (a == NULL) { + X509err(X509_F_NEW_DIR, ERR_R_MALLOC_FAILURE); return 0; + } + if ((a->buffer = BUF_MEM_new()) == NULL) { - OPENSSL_free(a); - return 0; + X509err(X509_F_NEW_DIR, ERR_R_MALLOC_FAILURE); + goto err; } a->dirs = NULL; a->lock = CRYPTO_THREAD_lock_new(); if (a->lock == NULL) { BUF_MEM_free(a->buffer); - OPENSSL_free(a); - return 0; + X509err(X509_F_NEW_DIR, ERR_R_MALLOC_FAILURE); + goto err; } lu->method_data = (char *)a; return 1; + + err: + OPENSSL_free(a); + return 0; } static void by_dir_hash_free(BY_DIR_HASH *hash) @@ -137,9 +142,8 @@ static void by_dir_entry_free(BY_DIR_ENTRY *ent) static void free_dir(X509_LOOKUP *lu) { - BY_DIR *a; + BY_DIR *a = (BY_DIR *)lu->method_data; - a = (BY_DIR *)lu->method_data; sk_BY_DIR_ENTRY_pop_free(a->dirs, by_dir_entry_free); BUF_MEM_free(a->buffer); CRYPTO_THREAD_lock_free(a->lock); @@ -162,6 +166,7 @@ static int add_cert_dir(BY_DIR *ctx, const char *dir, int type) do { if ((*p == LIST_SEPARATOR_CHAR) || (*p == '\0')) { BY_DIR_ENTRY *ent; + ss = s; s = p + 1; len = p - ss; @@ -182,8 +187,10 @@ static int add_cert_dir(BY_DIR *ctx, const char *dir, int type) } } ent = OPENSSL_malloc(sizeof(*ent)); - if (ent == NULL) + if (ent == NULL) { + X509err(X509_F_ADD_CERT_DIR, ERR_R_MALLOC_FAILURE); return 0; + } ent->dir_type = type; ent->hashes = sk_BY_DIR_HASH_new(by_dir_hash_cmp); ent->dir = OPENSSL_strndup(ss, len); @@ -193,6 +200,7 @@ static int add_cert_dir(BY_DIR *ctx, const char *dir, int type) } if (!sk_BY_DIR_ENTRY_push(ctx->dirs, ent)) { by_dir_entry_free(ent); + X509err(X509_F_ADD_CERT_DIR, ERR_R_MALLOC_FAILURE); return 0; } } @@ -244,6 +252,7 @@ static int get_cert_by_subject(X509_LOOKUP *xl, X509_LOOKUP_TYPE type, BY_DIR_ENTRY *ent; int idx; BY_DIR_HASH htmp, *hent; + ent = sk_BY_DIR_ENTRY_value(ctx->dirs, i); j = strlen(ent->dir) + 1 + 8 + 6 + 1 + 1; if (!BUF_MEM_grow(b, j)) { @@ -340,7 +349,7 @@ static int get_cert_by_subject(X509_LOOKUP *xl, X509_LOOKUP_TYPE type, if (idx >= 0) hent = sk_BY_DIR_HASH_value(ent->hashes, idx); } - if (!hent) { + if (hent == NULL) { hent = OPENSSL_malloc(sizeof(*hent)); if (hent == NULL) { CRYPTO_THREAD_unlock(ctx->lock); @@ -353,6 +362,7 @@ static int get_cert_by_subject(X509_LOOKUP *xl, X509_LOOKUP_TYPE type, if (!sk_BY_DIR_HASH_push(ent->hashes, hent)) { CRYPTO_THREAD_unlock(ctx->lock); OPENSSL_free(hent); + X509err(X509_F_GET_CERT_BY_SUBJECT, ERR_R_MALLOC_FAILURE); ok = 0; goto finish; } @@ -375,12 +385,6 @@ static int get_cert_by_subject(X509_LOOKUP *xl, X509_LOOKUP_TYPE type, */ ERR_clear_error(); - /* - * If we were going to up the reference count, we would need to - * do it on a perl 'type' basis - */ - /*- CRYPTO_add(&tmp->data.x509->references,1, - CRYPTO_LOCK_X509);*/ goto finish; } } diff --git a/crypto/x509/by_file.c b/crypto/x509/by_file.c index 52955b6a..78d7fbdf 100644 --- a/crypto/x509/by_file.c +++ b/crypto/x509/by_file.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -21,7 +21,7 @@ static int by_file_ctrl(X509_LOOKUP *ctx, int cmd, const char *argc, long argl, char **ret); static X509_LOOKUP_METHOD x509_file_lookup = { "Load file into cache", - NULL, /* new */ + NULL, /* new_item */ NULL, /* free */ NULL, /* init */ NULL, /* shutdown */ diff --git a/crypto/x509/x509_cmp.c b/crypto/x509/x509_cmp.c index 3d4931be..67c18722 100644 --- a/crypto/x509/x509_cmp.c +++ b/crypto/x509/x509_cmp.c @@ -173,7 +173,7 @@ int X509_NAME_cmp(const X509_NAME *a, const X509_NAME *b) ret = a->canon_enclen - b->canon_enclen; - if (ret) + if (ret != 0 || a->canon_enclen == 0) return ret; return memcmp(a->canon_enc, b->canon_enc, a->canon_enclen); diff --git a/crypto/x509/x509_err.c b/crypto/x509/x509_err.c index 84c726f4..5027df4c 100644 --- a/crypto/x509/x509_err.c +++ b/crypto/x509/x509_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -24,10 +24,13 @@ static const ERR_STRING_DATA X509_str_functs[] = { {ERR_PACK(ERR_LIB_X509, X509_F_DIR_CTRL, 0), "dir_ctrl"}, {ERR_PACK(ERR_LIB_X509, X509_F_GET_CERT_BY_SUBJECT, 0), "get_cert_by_subject"}, + {ERR_PACK(ERR_LIB_X509, X509_F_I2D_X509_AUX, 0), "i2d_X509_AUX"}, + {ERR_PACK(ERR_LIB_X509, X509_F_LOOKUP_CERTS_SK, 0), "lookup_certs_sk"}, {ERR_PACK(ERR_LIB_X509, X509_F_NETSCAPE_SPKI_B64_DECODE, 0), "NETSCAPE_SPKI_b64_decode"}, {ERR_PACK(ERR_LIB_X509, X509_F_NETSCAPE_SPKI_B64_ENCODE, 0), "NETSCAPE_SPKI_b64_encode"}, + {ERR_PACK(ERR_LIB_X509, X509_F_NEW_DIR, 0), "new_dir"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509AT_ADD1_ATTR, 0), "X509at_add1_attr"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509V3_ADD_EXT, 0), "X509v3_add_ext"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_ATTRIBUTE_CREATE_BY_NID, 0), @@ -43,6 +46,8 @@ static const ERR_STRING_DATA X509_str_functs[] = { {ERR_PACK(ERR_LIB_X509, X509_F_X509_CHECK_PRIVATE_KEY, 0), "X509_check_private_key"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_CRL_DIFF, 0), "X509_CRL_diff"}, + {ERR_PACK(ERR_LIB_X509, X509_F_X509_CRL_METHOD_NEW, 0), + "X509_CRL_METHOD_new"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_CRL_PRINT_FP, 0), "X509_CRL_print_fp"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_EXTENSION_CREATE_BY_NID, 0), "X509_EXTENSION_create_by_NID"}, @@ -56,8 +61,10 @@ static const ERR_STRING_DATA X509_str_functs[] = { "X509_load_cert_file"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_LOAD_CRL_FILE, 0), "X509_load_crl_file"}, + {ERR_PACK(ERR_LIB_X509, X509_F_X509_LOOKUP_NEW, 0), "X509_LOOKUP_new"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_NAME_ADD_ENTRY, 0), "X509_NAME_add_entry"}, + {ERR_PACK(ERR_LIB_X509, X509_F_X509_NAME_CANON, 0), "x509_name_canon"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_NAME_ENTRY_CREATE_BY_NID, 0), "X509_NAME_ENTRY_create_by_NID"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_NAME_ENTRY_CREATE_BY_TXT, 0), @@ -81,6 +88,8 @@ static const ERR_STRING_DATA X509_str_functs[] = { "X509_STORE_add_cert"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_STORE_ADD_CRL, 0), "X509_STORE_add_crl"}, + {ERR_PACK(ERR_LIB_X509, X509_F_X509_STORE_ADD_LOOKUP, 0), + "X509_STORE_add_lookup"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_STORE_CTX_GET1_ISSUER, 0), "X509_STORE_CTX_get1_issuer"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_STORE_CTX_INIT, 0), @@ -89,10 +98,13 @@ static const ERR_STRING_DATA X509_str_functs[] = { "X509_STORE_CTX_new"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_STORE_CTX_PURPOSE_INHERIT, 0), "X509_STORE_CTX_purpose_inherit"}, + {ERR_PACK(ERR_LIB_X509, X509_F_X509_STORE_NEW, 0), "X509_STORE_new"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_TO_X509_REQ, 0), "X509_to_X509_REQ"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_TRUST_ADD, 0), "X509_TRUST_add"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_TRUST_SET, 0), "X509_TRUST_set"}, {ERR_PACK(ERR_LIB_X509, X509_F_X509_VERIFY_CERT, 0), "X509_verify_cert"}, + {ERR_PACK(ERR_LIB_X509, X509_F_X509_VERIFY_PARAM_NEW, 0), + "X509_VERIFY_PARAM_new"}, {0, NULL} }; diff --git a/crypto/x509/x509_lu.c b/crypto/x509/x509_lu.c index b8845f1e..639a3df0 100644 --- a/crypto/x509/x509_lu.c +++ b/crypto/x509/x509_lu.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -17,14 +17,15 @@ X509_LOOKUP *X509_LOOKUP_new(X509_LOOKUP_METHOD *method) { - X509_LOOKUP *ret; + X509_LOOKUP *ret = OPENSSL_zalloc(sizeof(*ret)); - ret = OPENSSL_zalloc(sizeof(*ret)); - if (ret == NULL) + if (ret == NULL) { + X509err(X509_F_X509_LOOKUP_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } ret->method = method; - if ((method->new_item != NULL) && !method->new_item(ret)) { + if (method->new_item != NULL && method->new_item(ret) == 0) { OPENSSL_free(ret); return NULL; } @@ -141,25 +142,36 @@ static int x509_object_cmp(const X509_OBJECT *const *a, X509_STORE *X509_STORE_new(void) { - X509_STORE *ret; + X509_STORE *ret = OPENSSL_zalloc(sizeof(*ret)); - if ((ret = OPENSSL_zalloc(sizeof(*ret))) == NULL) + if (ret == NULL) { + X509err(X509_F_X509_STORE_NEW, ERR_R_MALLOC_FAILURE); return NULL; - if ((ret->objs = sk_X509_OBJECT_new(x509_object_cmp)) == NULL) + } + if ((ret->objs = sk_X509_OBJECT_new(x509_object_cmp)) == NULL) { + X509err(X509_F_X509_STORE_NEW, ERR_R_MALLOC_FAILURE); goto err; + } ret->cache = 1; - if ((ret->get_cert_methods = sk_X509_LOOKUP_new_null()) == NULL) + if ((ret->get_cert_methods = sk_X509_LOOKUP_new_null()) == NULL) { + X509err(X509_F_X509_STORE_NEW, ERR_R_MALLOC_FAILURE); goto err; + } - if ((ret->param = X509_VERIFY_PARAM_new()) == NULL) + if ((ret->param = X509_VERIFY_PARAM_new()) == NULL) { + X509err(X509_F_X509_STORE_NEW, ERR_R_MALLOC_FAILURE); goto err; - - if (!CRYPTO_new_ex_data(CRYPTO_EX_INDEX_X509_STORE, ret, &ret->ex_data)) + } + if (!CRYPTO_new_ex_data(CRYPTO_EX_INDEX_X509_STORE, ret, &ret->ex_data)) { + X509err(X509_F_X509_STORE_NEW, ERR_R_MALLOC_FAILURE); goto err; + } ret->lock = CRYPTO_THREAD_lock_new(); - if (ret->lock == NULL) + if (ret->lock == NULL) { + X509err(X509_F_X509_STORE_NEW, ERR_R_MALLOC_FAILURE); goto err; + } ret->references = 1; return ret; @@ -180,7 +192,6 @@ void X509_STORE_free(X509_STORE *vfy) if (vfy == NULL) return; - CRYPTO_DOWN_REF(&vfy->references, &i, vfy->lock); REF_PRINT_COUNT("X509_STORE", vfy); if (i > 0) @@ -229,17 +240,18 @@ X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m) } /* a new one */ lu = X509_LOOKUP_new(m); - if (lu == NULL) + if (lu == NULL) { + X509err(X509_F_X509_STORE_ADD_LOOKUP, ERR_R_MALLOC_FAILURE); return NULL; - else { - lu->store_ctx = v; - if (sk_X509_LOOKUP_push(v->get_cert_methods, lu)) - return lu; - else { - X509_LOOKUP_free(lu); - return NULL; - } } + + lu->store_ctx = v; + if (sk_X509_LOOKUP_push(v->get_cert_methods, lu)) + return lu; + /* malloc failed */ + X509err(X509_F_X509_STORE_ADD_LOOKUP, ERR_R_MALLOC_FAILURE); + X509_LOOKUP_free(lu); + return NULL; } X509_OBJECT *X509_STORE_CTX_get_obj_by_subject(X509_STORE_CTX *vs, @@ -265,6 +277,9 @@ int X509_STORE_CTX_get_by_subject(X509_STORE_CTX *vs, X509_LOOKUP_TYPE type, X509_OBJECT stmp, *tmp; int i, j; + if (ctx == NULL) + return 0; + CRYPTO_THREAD_write_lock(ctx->lock); tmp = X509_OBJECT_retrieve_by_subject(ctx->objs, type, name); CRYPTO_THREAD_unlock(ctx->lock); @@ -376,7 +391,7 @@ X509_LOOKUP_TYPE X509_OBJECT_get_type(const X509_OBJECT *a) return a->type; } -X509_OBJECT *X509_OBJECT_new() +X509_OBJECT *X509_OBJECT_new(void) { X509_OBJECT *ret = OPENSSL_zalloc(sizeof(*ret)); @@ -474,6 +489,9 @@ STACK_OF(X509) *X509_STORE_CTX_get1_certs(X509_STORE_CTX *ctx, X509_NAME *nm) X509 *x; X509_OBJECT *obj; + if (ctx->ctx == NULL) + return NULL; + CRYPTO_THREAD_write_lock(ctx->ctx->lock); idx = x509_object_idx_cnt(ctx->ctx->objs, X509_LU_X509, nm, &cnt); if (idx < 0) { @@ -523,8 +541,10 @@ STACK_OF(X509_CRL) *X509_STORE_CTX_get1_crls(X509_STORE_CTX *ctx, X509_NAME *nm) X509_OBJECT *obj, *xobj = X509_OBJECT_new(); /* Always do lookup to possibly add new CRLs to cache */ - if (sk == NULL || xobj == NULL || - !X509_STORE_CTX_get_by_subject(ctx, X509_LU_CRL, nm, xobj)) { + if (sk == NULL + || xobj == NULL + || ctx->ctx == NULL + || !X509_STORE_CTX_get_by_subject(ctx, X509_LU_CRL, nm, xobj)) { X509_OBJECT_free(xobj); sk_X509_CRL_free(sk); return NULL; @@ -618,6 +638,9 @@ int X509_STORE_CTX_get1_issuer(X509 **issuer, X509_STORE_CTX *ctx, X509 *x) } X509_OBJECT_free(obj); + if (ctx->ctx == NULL) + return 0; + /* Else find index of first cert accepted by 'check_issued' */ ret = 0; CRYPTO_THREAD_write_lock(ctx->ctx->lock); diff --git a/crypto/x509/x509_vfy.c b/crypto/x509/x509_vfy.c index 9ebda1bb..447f5e06 100644 --- a/crypto/x509/x509_vfy.c +++ b/crypto/x509/x509_vfy.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -366,6 +366,7 @@ static STACK_OF(X509) *lookup_certs_sk(X509_STORE_CTX *ctx, X509_NAME *nm) STACK_OF(X509) *sk = NULL; X509 *x; int i; + for (i = 0; i < sk_X509_num(ctx->other_ctx); i++) { x = sk_X509_value(ctx->other_ctx, i); if (X509_NAME_cmp(nm, X509_get_subject_name(x)) == 0) { @@ -373,6 +374,8 @@ static STACK_OF(X509) *lookup_certs_sk(X509_STORE_CTX *ctx, X509_NAME *nm) sk = sk_X509_new_null(); if (sk == NULL || sk_X509_push(sk, x) == 0) { sk_X509_pop_free(sk, X509_free); + X509err(X509_F_LOOKUP_CERTS_SK, ERR_R_MALLOC_FAILURE); + ctx->error = X509_V_ERR_OUT_OF_MEM; return NULL; } X509_up_ref(x); diff --git a/crypto/x509/x509_vpm.c b/crypto/x509/x509_vpm.c index 033ec423..16d27f91 100644 --- a/crypto/x509/x509_vpm.c +++ b/crypto/x509/x509_vpm.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2004-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -84,13 +84,12 @@ X509_VERIFY_PARAM *X509_VERIFY_PARAM_new(void) X509_VERIFY_PARAM *param; param = OPENSSL_zalloc(sizeof(*param)); - if (param == NULL) + if (param == NULL) { + X509err(X509_F_X509_VERIFY_PARAM_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } param->trust = X509_TRUST_DEFAULT; - /* - * param->inh_flags = X509_VP_FLAG_DEFAULT; - */ - param->inh_flags = 0; + /* param->inh_flags = X509_VP_FLAG_DEFAULT; */ param->depth = -1; param->auth_level = -1; /* -1 means unset, 0 is explicit */ return param; @@ -394,6 +393,11 @@ void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param, param->hostflags = flags; } +unsigned int X509_VERIFY_PARAM_get_hostflags(const X509_VERIFY_PARAM *param) +{ + return param->hostflags; +} + char *X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *param) { return param->peername; diff --git a/crypto/x509/x509name.c b/crypto/x509/x509name.c index bde5db40..46668244 100644 --- a/crypto/x509/x509name.c +++ b/crypto/x509/x509name.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -193,7 +193,7 @@ int X509_NAME_add_entry(X509_NAME *name, const X509_NAME_ENTRY *ne, int loc, loc = n; else if (loc < 0) loc = n; - + inc = (set == 0); name->modified = 1; if (set == -1) { @@ -202,7 +202,6 @@ int X509_NAME_add_entry(X509_NAME *name, const X509_NAME_ENTRY *ne, int loc, inc = 1; } else { set = sk_X509_NAME_ENTRY_value(sk, loc - 1)->set; - inc = 0; } } else { /* if (set >= 0) */ @@ -213,12 +212,11 @@ int X509_NAME_add_entry(X509_NAME *name, const X509_NAME_ENTRY *ne, int loc, set = 0; } else set = sk_X509_NAME_ENTRY_value(sk, loc)->set; - inc = (set == 0) ? 1 : 0; } /* * X509_NAME_ENTRY_dup is ASN1 generated code, that can't be easily - * const'ified; harmless cast as dup() don't modify its input. + * const'ified; harmless cast since dup() don't modify its input. */ if ((new_name = X509_NAME_ENTRY_dup((X509_NAME_ENTRY *)ne)) == NULL) goto err; @@ -230,7 +228,7 @@ int X509_NAME_add_entry(X509_NAME *name, const X509_NAME_ENTRY *ne, int loc, if (inc) { n = sk_X509_NAME_ENTRY_num(sk); for (i = loc + 1; i < n; i++) - sk_X509_NAME_ENTRY_value(sk, i - 1)->set += 1; + sk_X509_NAME_ENTRY_value(sk, i)->set += 1; } return 1; err: diff --git a/crypto/x509/x509type.c b/crypto/x509/x509type.c index 7eef1fb3..3374e3ea 100644 --- a/crypto/x509/x509type.c +++ b/crypto/x509/x509type.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/crypto/x509/x_crl.c b/crypto/x509/x_crl.c index dbed850b..c0099e0f 100644 --- a/crypto/x509/x_crl.c +++ b/crypto/x509/x_crl.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -309,6 +309,7 @@ static int X509_REVOKED_cmp(const X509_REVOKED *const *a, int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev) { X509_CRL_INFO *inf; + inf = &crl->crl; if (inf->revoked == NULL) inf->revoked = sk_X509_REVOKED_new(X509_REVOKED_cmp); @@ -429,10 +430,12 @@ X509_CRL_METHOD *X509_CRL_METHOD_new(int (*crl_init) (X509_CRL *crl), int (*crl_verify) (X509_CRL *crl, EVP_PKEY *pk)) { - X509_CRL_METHOD *m; - m = OPENSSL_malloc(sizeof(*m)); - if (m == NULL) + X509_CRL_METHOD *m = OPENSSL_malloc(sizeof(*m)); + + if (m == NULL) { + X509err(X509_F_X509_CRL_METHOD_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } m->crl_init = crl_init; m->crl_free = crl_free; m->crl_lookup = crl_lookup; diff --git a/crypto/x509/x_name.c b/crypto/x509/x_name.c index d36a9d37..a1e9bbdb 100644 --- a/crypto/x509/x_name.c +++ b/crypto/x509/x_name.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -300,7 +300,7 @@ static int x509_name_ex_print(BIO *out, ASN1_VALUE **pval, static int x509_name_canon(X509_NAME *a) { unsigned char *p; - STACK_OF(STACK_OF_X509_NAME_ENTRY) *intname = NULL; + STACK_OF(STACK_OF_X509_NAME_ENTRY) *intname; STACK_OF(X509_NAME_ENTRY) *entries = NULL; X509_NAME_ENTRY *entry, *tmpentry = NULL; int i, set = -1, ret = 0, len; @@ -313,44 +313,53 @@ static int x509_name_canon(X509_NAME *a) return 1; } intname = sk_STACK_OF_X509_NAME_ENTRY_new_null(); - if (!intname) + if (intname == NULL) { + X509err(X509_F_X509_NAME_CANON, ERR_R_MALLOC_FAILURE); goto err; + } for (i = 0; i < sk_X509_NAME_ENTRY_num(a->entries); i++) { entry = sk_X509_NAME_ENTRY_value(a->entries, i); if (entry->set != set) { entries = sk_X509_NAME_ENTRY_new_null(); - if (!entries) + if (entries == NULL) goto err; if (!sk_STACK_OF_X509_NAME_ENTRY_push(intname, entries)) { sk_X509_NAME_ENTRY_free(entries); + X509err(X509_F_X509_NAME_CANON, ERR_R_MALLOC_FAILURE); goto err; } set = entry->set; } tmpentry = X509_NAME_ENTRY_new(); - if (tmpentry == NULL) + if (tmpentry == NULL) { + X509err(X509_F_X509_NAME_CANON, ERR_R_MALLOC_FAILURE); goto err; + } tmpentry->object = OBJ_dup(entry->object); - if (tmpentry->object == NULL) + if (tmpentry->object == NULL) { + X509err(X509_F_X509_NAME_CANON, ERR_R_MALLOC_FAILURE); goto err; + } if (!asn1_string_canon(tmpentry->value, entry->value)) goto err; - if (!sk_X509_NAME_ENTRY_push(entries, tmpentry)) + if (!sk_X509_NAME_ENTRY_push(entries, tmpentry)) { + X509err(X509_F_X509_NAME_CANON, ERR_R_MALLOC_FAILURE); goto err; + } tmpentry = NULL; } /* Finally generate encoding */ - len = i2d_name_canon(intname, NULL); if (len < 0) goto err; a->canon_enclen = len; p = OPENSSL_malloc(a->canon_enclen); - - if (p == NULL) + if (p == NULL) { + X509err(X509_F_X509_NAME_CANON, ERR_R_MALLOC_FAILURE); goto err; + } a->canon_enc = p; @@ -359,7 +368,6 @@ static int x509_name_canon(X509_NAME *a) ret = 1; err: - X509_NAME_ENTRY_free(tmpentry); sk_STACK_OF_X509_NAME_ENTRY_pop_free(intname, local_sk_X509_NAME_ENTRY_pop_free); @@ -473,6 +481,8 @@ static int i2d_name_canon(STACK_OF(STACK_OF_X509_NAME_ENTRY) * _intname, int X509_NAME_set(X509_NAME **xn, X509_NAME *name) { + if (*xn == name) + return *xn != NULL; if ((name = X509_NAME_dup(name)) == NULL) return 0; X509_NAME_free(*xn); diff --git a/crypto/x509/x_pubkey.c b/crypto/x509/x_pubkey.c index 73977cd8..d050b0b4 100644 --- a/crypto/x509/x_pubkey.c +++ b/crypto/x509/x_pubkey.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -101,7 +101,7 @@ int X509_PUBKEY_set(X509_PUBKEY **x, EVP_PKEY *pkey) static int x509_pubkey_decode(EVP_PKEY **ppkey, X509_PUBKEY *key) - { +{ EVP_PKEY *pkey = EVP_PKEY_new(); if (pkey == NULL) { diff --git a/crypto/x509/x_x509.c b/crypto/x509/x_x509.c index c28fdda7..4c04f12c 100644 --- a/crypto/x509/x_x509.c +++ b/crypto/x509/x_x509.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -189,8 +189,10 @@ int i2d_X509_AUX(X509 *a, unsigned char **pp) /* Allocate requisite combined storage */ *pp = tmp = OPENSSL_malloc(length); - if (tmp == NULL) - return -1; /* Push error onto error stack? */ + if (tmp == NULL) { + X509err(X509_F_I2D_X509_AUX, ERR_R_MALLOC_FAILURE); + return -1; + } /* Encode, but keep *pp at the originally malloced pointer */ length = i2d_x509_aux_internal(a, &tmp); diff --git a/crypto/x509v3/pcy_cache.c b/crypto/x509v3/pcy_cache.c index a9ee30a8..7873a424 100644 --- a/crypto/x509v3/pcy_cache.c +++ b/crypto/x509v3/pcy_cache.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2004-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -26,21 +26,25 @@ static int policy_cache_set_int(long *out, ASN1_INTEGER *value); static int policy_cache_create(X509 *x, CERTIFICATEPOLICIES *policies, int crit) { - int i; - int ret = 0; + int i, ret = 0; X509_POLICY_CACHE *cache = x->policy_cache; X509_POLICY_DATA *data = NULL; POLICYINFO *policy; + if (sk_POLICYINFO_num(policies) == 0) goto bad_policy; cache->data = sk_X509_POLICY_DATA_new(policy_data_cmp); - if (cache->data == NULL) - goto bad_policy; + if (cache->data == NULL) { + X509V3err(X509V3_F_POLICY_CACHE_CREATE, ERR_R_MALLOC_FAILURE); + goto just_cleanup; + } for (i = 0; i < sk_POLICYINFO_num(policies); i++) { policy = sk_POLICYINFO_value(policies, i); data = policy_data_new(policy, NULL, crit); - if (data == NULL) - goto bad_policy; + if (data == NULL) { + X509V3err(X509V3_F_POLICY_CACHE_CREATE, ERR_R_MALLOC_FAILURE); + goto just_cleanup; + } /* * Duplicate policy OIDs are illegal: reject if matches found. */ @@ -53,15 +57,19 @@ static int policy_cache_create(X509 *x, } else if (sk_X509_POLICY_DATA_find(cache->data, data) != -1) { ret = -1; goto bad_policy; - } else if (!sk_X509_POLICY_DATA_push(cache->data, data)) + } else if (!sk_X509_POLICY_DATA_push(cache->data, data)) { + X509V3err(X509V3_F_POLICY_CACHE_CREATE, ERR_R_MALLOC_FAILURE); goto bad_policy; + } data = NULL; } ret = 1; + bad_policy: if (ret == -1) x->ex_flags |= EXFLAG_INVALID_POLICY; policy_data_free(data); + just_cleanup: sk_POLICYINFO_pop_free(policies, POLICYINFO_free); if (ret <= 0) { sk_X509_POLICY_DATA_pop_free(cache->data, policy_data_free); @@ -82,8 +90,10 @@ static int policy_cache_new(X509 *x) if (x->policy_cache != NULL) return 1; cache = OPENSSL_malloc(sizeof(*cache)); - if (cache == NULL) + if (cache == NULL) { + X509V3err(X509V3_F_POLICY_CACHE_NEW, ERR_R_MALLOC_FAILURE); return 0; + } cache->anyPolicy = NULL; cache->data = NULL; cache->any_skip = -1; diff --git a/crypto/x509v3/pcy_data.c b/crypto/x509v3/pcy_data.c index 757b101d..bd3bb0e4 100644 --- a/crypto/x509v3/pcy_data.c +++ b/crypto/x509v3/pcy_data.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2004-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -40,6 +40,7 @@ X509_POLICY_DATA *policy_data_new(POLICYINFO *policy, { X509_POLICY_DATA *ret; ASN1_OBJECT *id; + if (policy == NULL && cid == NULL) return NULL; if (cid) { @@ -49,12 +50,15 @@ X509_POLICY_DATA *policy_data_new(POLICYINFO *policy, } else id = NULL; ret = OPENSSL_zalloc(sizeof(*ret)); - if (ret == NULL) + if (ret == NULL) { + X509V3err(X509V3_F_POLICY_DATA_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } ret->expected_policy_set = sk_ASN1_OBJECT_new_null(); if (ret->expected_policy_set == NULL) { OPENSSL_free(ret); ASN1_OBJECT_free(id); + X509V3err(X509V3_F_POLICY_DATA_NEW, ERR_R_MALLOC_FAILURE); return NULL; } diff --git a/crypto/x509v3/pcy_node.c b/crypto/x509v3/pcy_node.c index 80443bff..db4d71f8 100644 --- a/crypto/x509v3/pcy_node.c +++ b/crypto/x509v3/pcy_node.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2004-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -10,6 +10,7 @@ #include #include #include +#include #include "pcy_int.h" @@ -66,8 +67,10 @@ X509_POLICY_NODE *level_add_node(X509_POLICY_LEVEL *level, X509_POLICY_NODE *node; node = OPENSSL_zalloc(sizeof(*node)); - if (node == NULL) + if (node == NULL) { + X509V3err(X509V3_F_LEVEL_ADD_NODE, ERR_R_MALLOC_FAILURE); return NULL; + } node->data = data; node->parent = parent; if (level) { @@ -79,20 +82,28 @@ X509_POLICY_NODE *level_add_node(X509_POLICY_LEVEL *level, if (level->nodes == NULL) level->nodes = policy_node_cmp_new(); - if (level->nodes == NULL) + if (level->nodes == NULL) { + X509V3err(X509V3_F_LEVEL_ADD_NODE, ERR_R_MALLOC_FAILURE); goto node_error; - if (!sk_X509_POLICY_NODE_push(level->nodes, node)) + } + if (!sk_X509_POLICY_NODE_push(level->nodes, node)) { + X509V3err(X509V3_F_LEVEL_ADD_NODE, ERR_R_MALLOC_FAILURE); goto node_error; + } } } if (tree) { if (tree->extra_data == NULL) tree->extra_data = sk_X509_POLICY_DATA_new_null(); - if (tree->extra_data == NULL) + if (tree->extra_data == NULL){ + X509V3err(X509V3_F_LEVEL_ADD_NODE, ERR_R_MALLOC_FAILURE); goto node_error; - if (!sk_X509_POLICY_DATA_push(tree->extra_data, data)) + } + if (!sk_X509_POLICY_DATA_push(tree->extra_data, data)) { + X509V3err(X509V3_F_LEVEL_ADD_NODE, ERR_R_MALLOC_FAILURE); goto node_error; + } } if (parent) diff --git a/crypto/x509v3/pcy_tree.c b/crypto/x509v3/pcy_tree.c index b3d1983f..9a1e2088 100644 --- a/crypto/x509v3/pcy_tree.c +++ b/crypto/x509v3/pcy_tree.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2004-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -163,8 +163,10 @@ static int tree_init(X509_POLICY_TREE **ptree, STACK_OF(X509) *certs, return ret; /* If we get this far initialize the tree */ - if ((tree = OPENSSL_zalloc(sizeof(*tree))) == NULL) + if ((tree = OPENSSL_zalloc(sizeof(*tree))) == NULL) { + X509V3err(X509V3_F_TREE_INIT, ERR_R_MALLOC_FAILURE); return X509_PCY_TREE_INTERNAL; + } /* * http://tools.ietf.org/html/rfc5280#section-6.1.2, figure 3. @@ -175,6 +177,7 @@ static int tree_init(X509_POLICY_TREE **ptree, STACK_OF(X509) *certs, */ if ((tree->levels = OPENSSL_zalloc(sizeof(*tree->levels)*(n+1))) == NULL) { OPENSSL_free(tree); + X509V3err(X509V3_F_TREE_INIT, ERR_R_MALLOC_FAILURE); return X509_PCY_TREE_INTERNAL; } tree->nlevel = n+1; diff --git a/crypto/x509v3/v3_cpols.c b/crypto/x509v3/v3_cpols.c index 51fbb1f0..7a47fd38 100644 --- a/crypto/x509v3/v3_cpols.c +++ b/crypto/x509v3/v3_cpols.c @@ -1,5 +1,5 @@ /* - * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1999-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -144,8 +144,8 @@ static STACK_OF(POLICYINFO) *r2i_certpol(X509V3_EXT_METHOD *method, } pol = POLICYINFO_new(); if (pol == NULL) { - X509V3err(X509V3_F_R2I_CERTPOL, ERR_R_MALLOC_FAILURE); ASN1_OBJECT_free(pobj); + X509V3err(X509V3_F_R2I_CERTPOL, ERR_R_MALLOC_FAILURE); goto err; } pol->policyid = pobj; diff --git a/crypto/x509v3/v3_purp.c b/crypto/x509v3/v3_purp.c index d344e2df..1ba1ce83 100644 --- a/crypto/x509v3/v3_purp.c +++ b/crypto/x509v3/v3_purp.c @@ -78,11 +78,9 @@ int X509_check_purpose(X509 *x, int id, int ca) { int idx; const X509_PURPOSE *pt; - if (!(x->ex_flags & EXFLAG_SET)) { - CRYPTO_THREAD_write_lock(x->lock); - x509v3_cache_extensions(x); - CRYPTO_THREAD_unlock(x->lock); - } + + x509v3_cache_extensions(x); + /* Return if side-effect only call */ if (id == -1) return 1; @@ -354,8 +352,16 @@ static void x509v3_cache_extensions(X509 *x) X509_EXTENSION *ex; int i; + if (x->ex_flags & EXFLAG_SET) return; + + CRYPTO_THREAD_write_lock(x->lock); + if (x->ex_flags & EXFLAG_SET) { + CRYPTO_THREAD_unlock(x->lock); + return; + } + X509_digest(x, EVP_sha1(), x->sha1_hash, NULL); /* V1 should mean no extensions ... */ if (!X509_get_version(x)) @@ -490,6 +496,7 @@ static void x509v3_cache_extensions(X509 *x) } x509_init_sig_info(x); x->ex_flags |= EXFLAG_SET; + CRYPTO_THREAD_unlock(x->lock); } /*- @@ -542,11 +549,7 @@ void X509_set_proxy_pathlen(X509 *x, long l) int X509_check_ca(X509 *x) { - if (!(x->ex_flags & EXFLAG_SET)) { - CRYPTO_THREAD_write_lock(x->lock); - x509v3_cache_extensions(x); - CRYPTO_THREAD_unlock(x->lock); - } + x509v3_cache_extensions(x); return check_ca(x); } @@ -760,6 +763,7 @@ int X509_check_issued(X509 *issuer, X509 *subject) if (X509_NAME_cmp(X509_get_subject_name(issuer), X509_get_issuer_name(subject))) return X509_V_ERR_SUBJECT_ISSUER_MISMATCH; + x509v3_cache_extensions(issuer); x509v3_cache_extensions(subject); diff --git a/crypto/x509v3/v3err.c b/crypto/x509v3/v3err.c index 6f30ba3a..4f2ea52a 100644 --- a/crypto/x509v3/v3err.c +++ b/crypto/x509v3/v3err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -39,8 +39,14 @@ static const ERR_STRING_DATA X509V3_str_functs[] = { "i2s_ASN1_INTEGER"}, {ERR_PACK(ERR_LIB_X509V3, X509V3_F_I2V_AUTHORITY_INFO_ACCESS, 0), "i2v_AUTHORITY_INFO_ACCESS"}, + {ERR_PACK(ERR_LIB_X509V3, X509V3_F_LEVEL_ADD_NODE, 0), "level_add_node"}, {ERR_PACK(ERR_LIB_X509V3, X509V3_F_NOTICE_SECTION, 0), "notice_section"}, {ERR_PACK(ERR_LIB_X509V3, X509V3_F_NREF_NOS, 0), "nref_nos"}, + {ERR_PACK(ERR_LIB_X509V3, X509V3_F_POLICY_CACHE_CREATE, 0), + "policy_cache_create"}, + {ERR_PACK(ERR_LIB_X509V3, X509V3_F_POLICY_CACHE_NEW, 0), + "policy_cache_new"}, + {ERR_PACK(ERR_LIB_X509V3, X509V3_F_POLICY_DATA_NEW, 0), "policy_data_new"}, {ERR_PACK(ERR_LIB_X509V3, X509V3_F_POLICY_SECTION, 0), "policy_section"}, {ERR_PACK(ERR_LIB_X509V3, X509V3_F_PROCESS_PCI_VALUE, 0), "process_pci_value"}, @@ -65,6 +71,7 @@ static const ERR_STRING_DATA X509V3_str_functs[] = { "SXNET_get_id_asc"}, {ERR_PACK(ERR_LIB_X509V3, X509V3_F_SXNET_GET_ID_ULONG, 0), "SXNET_get_id_ulong"}, + {ERR_PACK(ERR_LIB_X509V3, X509V3_F_TREE_INIT, 0), "tree_init"}, {ERR_PACK(ERR_LIB_X509V3, X509V3_F_V2I_ASIDENTIFIERS, 0), "v2i_ASIdentifiers"}, {ERR_PACK(ERR_LIB_X509V3, X509V3_F_V2I_ASN1_BIT_STRING, 0), diff --git a/doc/fingerprints.txt b/doc/fingerprints.txt index 1863224d..2cb74aec 100644 --- a/doc/fingerprints.txt +++ b/doc/fingerprints.txt @@ -18,10 +18,7 @@ uid Richard Levitte uid Richard Levitte uid Richard Levitte -pub 4096R/FA40E9E2 2005-03-19 - Key fingerprint = 6260 5AA4 334A F9F0 DDE5 D349 D357 7507 FA40 E9E2 -uid Dr Stephen N Henson - pub 2048R/0E604491 2013-04-30 Key fingerprint = 8657 ABB2 60F0 56B1 E519 0839 D9C4 D26D 0E60 4491 +uid Matt Caswell uid Matt Caswell diff --git a/doc/man1/ca.pod b/doc/man1/ca.pod index 9c5af4a8..ebd8a438 100644 --- a/doc/man1/ca.pod +++ b/doc/man1/ca.pod @@ -184,7 +184,8 @@ The number of days to certify the certificate for. =item B<-md alg> The message digest to use. -Any digest supported by the OpenSSL B command can be used. +Any digest supported by the OpenSSL B command can be used. If the signing +key is using Ed25519 or Ed448 then you should specify "null" for the digest. This option also applies to CRLs. =item B<-policy arg> @@ -469,6 +470,10 @@ versions of OpenSSL. However, to make CA certificate roll-over easier, it's recommended to use the value B, especially if combined with the B<-selfsign> command line option. +Note that it is valid in some circumstances for certificates to be created +without any subject. In the case where there are multiple certificates without +subjects this does not count as a duplicate. + =item B A text file containing the next serial number to use in hex. Mandatory. @@ -745,7 +750,7 @@ L, L =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/ciphers.pod b/doc/man1/ciphers.pod index 1fe21877..3786e9a0 100644 --- a/doc/man1/ciphers.pod +++ b/doc/man1/ciphers.pod @@ -22,6 +22,7 @@ B B [B<-srp>] [B<-stdname>] [B<-convert name>] +[B<-ciphersuites val>] [B] =head1 DESCRIPTION @@ -105,10 +106,21 @@ Precede each cipher suite by its standard name. Convert a standard cipher B to its OpenSSL name. +=item B<-ciphersuites val> + +Sets the list of TLSv1.3 ciphersuites. This list will be combined with any +TLSv1.2 and below ciphersuites that have been configured. The format for this +list is a simple colon (":") separated list of TLSv1.3 ciphersuite names. By +default this value is: + +"TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256" + =item B -A cipher list to convert to a cipher preference list. If it is not included -then the default cipher list will be used. The format is described below. +A cipher list of TLSv1.2 and below ciphersuites to convert to a cipher +preference list. This list will be combined with any TLSv1.3 ciphersuites that +have been configured. If it is not included then the default cipher list will be +used. The format is described below. =back @@ -156,19 +168,20 @@ The cipher string B<@SECLEVEL=n> can be used at any point to set the security level to B, which should be a number between zero and five, inclusive. See L for a description of what each level means. +The cipher list can be prefixed with the B keyword, which enables +the default cipher list as defined below. Unlike cipher strings, +this prefix may not be combined with other strings using B<+> character. +For example, B is not valid. + +The content of the default list is determined at compile time and normally +corresponds to B. + =head1 CIPHER STRINGS The following is a list of all permitted cipher strings and their meanings. =over 4 -=item B - -The default cipher list. -This is determined at compile time and is normally -B. -When used, this must be the first cipherstring specified. - =item B The ciphers included in B, but not enabled by default. Currently @@ -405,21 +418,6 @@ permissible. =back -=head1 EQUAL PREFERENCE GROUPS - -If configuring a server, one may also configure equal-preference groups to -partially respect the client's preferences when -B is enabled. Ciphers in an equal-preference -group have equal priority and use the client order. This may be used to -enforce that AEADs are preferred but select AES-GCM vs. ChaCha20-Poly1305 -based on client preferences. An equal-preference is specified with square -brackets, combining multiple selectors separated by |. For example: - - [ECDHE-ECDSA-CHACHA20-POLY1305|ECDHE-ECDSA-AES128-GCM-SHA256] - - Once an equal-preference group is used, future directives must be - opcode-less. - =head1 CIPHER SUITE NAMES The following lists give the SSL or TLS cipher suites names from the @@ -720,11 +718,11 @@ Note: the CBC modes mentioned in this RFC are not supported. =head2 TLS v1.3 cipher suites - TLS_AES_128_GCM_SHA256 TLS13-AES-128-GCM-SHA256 - TLS_AES_256_GCM_SHA384 TLS13-AES-256-GCM-SHA384 - TLS_CHACHA20_POLY1305_SHA256 TLS13-CHACHA20-POLY1305-SHA256 - TLS_AES_128_CCM_SHA256 TLS13-AES-128-CCM-SHA256 - TLS_AES_128_CCM_8_SHA256 TLS13-AES-128-CCM-8-SHA256 + TLS_AES_128_GCM_SHA256 TLS_AES_128_GCM_SHA256 + TLS_AES_256_GCM_SHA384 TLS_AES_256_GCM_SHA384 + TLS_CHACHA20_POLY1305_SHA256 TLS_CHACHA20_POLY1305_SHA256 + TLS_AES_128_CCM_SHA256 TLS_AES_128_CCM_SHA256 + TLS_AES_128_CCM_8_SHA256 TLS_AES_128_CCM_8_SHA256 =head2 Older names used by OpenSSL @@ -786,7 +784,7 @@ The B<-convert> was added in OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/cms.pod b/doc/man1/cms.pod index 7bd1b0d3..d63efa66 100644 --- a/doc/man1/cms.pod +++ b/doc/man1/cms.pod @@ -394,6 +394,9 @@ When encrypting a message this option may be used multiple times to specify each recipient. This form B be used if customised parameters are required (for example to specify RSA-OAEP). +Only certificates carrying RSA, Diffie-Hellman or EC keys are supported by this +option. + =item B<-keyid> Use subject key identifier to identify certificates instead of issuer name and @@ -718,19 +721,16 @@ No revocation checking is done on the signer's certificate. =head1 HISTORY The use of multiple B<-signer> options and the B<-resign> command were first -added in OpenSSL 1.0.0 +added in OpenSSL 1.0.0. -The B option was first added in OpenSSL 1.1.0 +The B option was first added in OpenSSL 1.0.2. -The use of B<-recip> to specify the recipient when encrypting mail was first -added to OpenSSL 1.1.0 - -Support for RSA-OAEP and RSA-PSS was first added to OpenSSL 1.1.0. +Support for RSA-OAEP and RSA-PSS was first added to OpenSSL 1.0.2. The use of non-RSA keys with B<-encrypt> and B<-decrypt> was first added -to OpenSSL 1.1.0. +to OpenSSL 1.0.2. -The -no_alt_chains options was first added to OpenSSL 1.1.0. +The -no_alt_chains options was first added to OpenSSL 1.0.2b. =head1 COPYRIGHT diff --git a/doc/man1/dgst.pod b/doc/man1/dgst.pod index 5cad2438..47e163b1 100644 --- a/doc/man1/dgst.pod +++ b/doc/man1/dgst.pod @@ -86,7 +86,9 @@ Filename to output to, or standard output by default. =item B<-sign filename> -Digitally sign the digest using the private key in "filename". +Digitally sign the digest using the private key in "filename". Note this option +does not support Ed25519 or Ed448 private keys. Use the B command +instead for this. =item B<-keyform arg> @@ -233,7 +235,7 @@ The FIPS-related options were removed in OpenSSL 1.1.0 =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/ecparam.pod b/doc/man1/ecparam.pod index dc07caf4..0633f8cd 100644 --- a/doc/man1/ecparam.pod +++ b/doc/man1/ecparam.pod @@ -92,8 +92,8 @@ currently implemented EC parameters names and exit. =item B<-conv_form> This specifies how the points on the elliptic curve are converted -into octet strings. Possible values are: B (the default -value), B and B. For more information regarding +into octet strings. Possible values are: B, B (the +default value) and B. For more information regarding the point conversion forms please read the X9.62 standard. B Due to patent issues the B option is disabled by default for binary curves and can be enabled by defining @@ -182,7 +182,7 @@ L, L =head1 COPYRIGHT -Copyright 2003-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2003-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/genpkey.pod b/doc/man1/genpkey.pod index fc83efa4..cdf21733 100644 --- a/doc/man1/genpkey.pod +++ b/doc/man1/genpkey.pod @@ -63,13 +63,27 @@ options. Public key algorithm to use such as RSA, DSA or DH. If used this option must precede any B<-pkeyopt> options. The options B<-paramfile> and B<-algorithm> -are mutually exclusive. +are mutually exclusive. Engines may add algorithms in addition to the standard +built-in ones. + +Valid built-in algorithm names for private key generation are RSA, RSA-PSS, EC, +X25519, X448, ED25519 and ED448. + +Valid built-in algorithm names for parameter generation (see the B<-genparam> +option) are DH, DSA and EC. + +Note that the algorithm name X9.42 DH may be used as a synonym for the DH +algorithm. These are identical and do not indicate the type of parameters that +will be generated. Use the B option to indicate whether PKCS#3 +or X9.42 DH parameters are required. See L +below for more details. =item B<-pkeyopt opt:value> Set the public key algorithm option B to B. The precise set of options supported depends on the public key algorithm used and its -implementation. See B below for more details. +implementation. See L and +L below for more details. =item B<-genparam> @@ -95,9 +109,10 @@ parameters along with the PEM or DER structure. The options supported by each algorithm and indeed each implementation of an algorithm can vary. The options for the OpenSSL implementations are detailed -below. +below. There are no key generation options defined for the X25519, X448, ED25519 +or ED448 algorithms. -=head1 RSA KEY GENERATION OPTIONS +=head2 RSA Key Generation Options =over 4 @@ -116,32 +131,13 @@ hexadecimal value if preceded by B<0x>. Default value is 65537. =back -=head1 RSA-PSS KEY GENERATION OPTIONS +=head2 RSA-PSS Key Generation Options Note: by default an B key has no parameter restrictions. =over 4 -=item B, B - -These options have the same meaning as the B algorithm. - -=item B - -=item B - -The RSA public exponent value. This can be a large decimal or -hexadecimal value if preceded by B<0x>. Default value is 65537. - -=back - -=head1 RSA-PSS KEY GENERATION OPTIONS - -Note: by default an B key has no parameter restrictions. - -=over 4 - -=item B, B +=item B, B, B These options have the same meaning as the B algorithm. @@ -160,44 +156,9 @@ If set the key is restricted and B specifies the minimum salt length. =back -=head1 DSA PARAMETER GENERATION OPTIONS +=head2 EC Key Generation Options -=over 4 - -=item B - -The number of bits in the generated parameters. If not specified 1024 is used. - -=back - -=head1 DH PARAMETER GENERATION OPTIONS - -=over 4 - -=item B - -The number of bits in the prime parameter B

. - -=item B - -The value to use for the generator B. - -=item B - -If this option is set then the appropriate RFC5114 parameters are used -instead of generating new parameters. The value B can take the -values 1, 2 or 3 corresponding to RFC5114 DH parameters consisting of -1024 bit group with 160 bit subgroup, 2048 bit group with 224 bit subgroup -and 2048 bit group with 256 bit subgroup as mentioned in RFC5114 sections -2.1, 2.2 and 2.3 respectively. - -=back - -=head1 EC PARAMETER GENERATION OPTIONS - -The EC parameter generation options below can also -be supplied as EC key generation options. This can (for example) generate a -key from a named curve without the need to use an explicit parameter file. +The EC key generation options can also be used for parameter generation. =over 4 @@ -208,44 +169,80 @@ The EC curve to use. OpenSSL supports NIST curve names such as "P-256". =item B The encoding to use for parameters. The "encoding" parameter must be either -"named_curve" or "explicit". +"named_curve" or "explicit". The default value is "named_curve". =back -=head1 GOST2001 KEY GENERATION AND PARAMETER OPTIONS +=head1 PARAMETER GENERATION OPTIONS -Gost 2001 support is not enabled by default. To enable this algorithm, -one should load the ccgost engine in the OpenSSL configuration file. -See README.gost file in the engines/ccgost directory of the source -distribution for more details. +The options supported by each algorithm and indeed each implementation of an +algorithm can vary. The options for the OpenSSL implementations are detailed +below. -Use of a parameter file for the GOST R 34.10 algorithm is optional. -Parameters can be specified during key generation directly as well as -during generation of parameter file. +=head2 DSA Parameter Generation Options =over 4 -=item B +=item B -Specifies GOST R 34.10-2001 parameter set according to RFC 4357. -Parameter set can be specified using abbreviated name, object short name or -numeric OID. Following parameter sets are supported: +The number of bits in the generated prime. If not specified 1024 is used. - paramset OID Usage - A 1.2.643.2.2.35.1 Signature - B 1.2.643.2.2.35.2 Signature - C 1.2.643.2.2.35.3 Signature - XA 1.2.643.2.2.36.0 Key exchange - XB 1.2.643.2.2.36.1 Key exchange - test 1.2.643.2.2.35.0 Test purposes +=item B + +The number of bits in the q parameter. Must be one of 160, 224 or 256. If not +specified 160 is used. + +=item B + +The digest to use during parameter generation. Must be one of B, B +or B. If set, then the number of bits in B will match the output size +of the specified digest and the B parameter will be +ignored. If not set, then a digest will be used that gives an output matching +the number of bits in B, i.e. B if q length is 160, B if it 224 +or B if it is 256. =back -=head1 X25519 and X448 KEY GENERATION OPTIONS +=head2 DH Parameter Generation Options -The X25519 and X448 algorithms do not currently support any key generation +=over 4 + +=item B + +The number of bits in the prime parameter B

. The default is 1024. + +=item B + +The number of bits in the sub prime parameter B. The default is 256 if the +prime is at least 2048 bits long or 160 otherwise. Only relevant if used in +conjunction with the B option to generate X9.42 DH parameters. + +=item B + +The value to use for the generator B. The default is 2. + +=item B + +The type of DH parameters to generate. Use 0 for PKCS#3 DH and 1 for X9.42 DH. +The default is 0. + +=item B + +If this option is set, then the appropriate RFC5114 parameters are used +instead of generating new parameters. The value B can take the +values 1, 2 or 3 corresponding to RFC5114 DH parameters consisting of +1024 bit group with 160 bit subgroup, 2048 bit group with 224 bit subgroup +and 2048 bit group with 256 bit subgroup as mentioned in RFC5114 sections +2.1, 2.2 and 2.3 respectively. If present this overrides all other DH parameter options. +=back + +=head2 EC Parameter Generation Options + +The EC parameter generation options are the same as for key generation. See +L above. + =head1 NOTES The use of the genpkey program is encouraged over the algorithm specific @@ -267,19 +264,25 @@ Generate a 2048 bit RSA key using 3 as the public exponent: openssl genpkey -algorithm RSA -out key.pem -pkeyopt rsa_keygen_bits:2048 \ -pkeyopt rsa_keygen_pubexp:3 -Generate 1024 bit DSA parameters: +Generate 2048 bit DSA parameters: openssl genpkey -genparam -algorithm DSA -out dsap.pem \ - -pkeyopt dsa_paramgen_bits:1024 + -pkeyopt dsa_paramgen_bits:2048 Generate DSA key from parameters: openssl genpkey -paramfile dsap.pem -out dsakey.pem -Generate 1024 bit DH parameters: +Generate 2048 bit DH parameters: openssl genpkey -genparam -algorithm DH -out dhp.pem \ - -pkeyopt dh_paramgen_prime_len:1024 + -pkeyopt dh_paramgen_prime_len:2048 + +Generate 2048 bit X9.42 DH parameters: + + openssl genpkey -genparam -algorithm DH -out dhpx.pem \ + -pkeyopt dh_paramgen_prime_len:2048 \ + -pkeyopt dh_paramgen_type:1 Output RFC5114 2048 bit DH parameters with 224 bit subgroup: @@ -309,14 +312,20 @@ Generate an X25519 private key: openssl genpkey -algorithm X25519 -out xkey.pem +Generate an ED448 private key: + + openssl genpkey -algorithm ED448 -out xkey.pem + =head1 HISTORY The ability to use NIST curve names, and to generate an EC key directly, -were added in OpenSSL 1.0.2. +were added in OpenSSL 1.0.2. The ability to generate X25519 keys was added in +OpenSSL 1.1.0. The ability to generate X448, ED25519 and ED448 keys was added in +OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/openssl.pod b/doc/man1/openssl.pod index 9b951f51..a7132691 100644 --- a/doc/man1/openssl.pod +++ b/doc/man1/openssl.pod @@ -290,10 +290,22 @@ X.509 Certificate Data Management. =over 4 +=item B + +BLAKE2b-512 Digest + +=item B + +BLAKE2s-256 Digest + =item B MD2 Digest +=item B + +MD4 Digest + =item B MD5 Digest @@ -306,29 +318,53 @@ MDC2 Digest RMD-160 Digest -=item B - -SHA Digest - =item B SHA-1 Digest =item B -SHA-224 Digest +SHA-2 224 Digest =item B -SHA-256 Digest +SHA-2 256 Digest =item B -SHA-384 Digest +SHA-2 384 Digest =item B -SHA-512 Digest +SHA-2 512 Digest + +=item B + +SHA-3 224 Digest + +=item B + +SHA-3 256 Digest + +=item B + +SHA-3 384 Digest + +=item B + +SHA-3 512 Digest + +=item B + +SHA-3 SHAKE128 Digest + +=item B + +SHA-3 SHAKE256 Digest + +=item B + +SM3 Digest =back @@ -403,6 +439,9 @@ password argument is given and a password is required then the user is prompted to enter one: this will typically be read from the current terminal with echoing turned off. +Note that character encoding may be relevant, please see +L. + =over 4 =item B @@ -463,7 +502,7 @@ manual pages. =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/pkeyutl.pod b/doc/man1/pkeyutl.pod index f693e229..d485f612 100644 --- a/doc/man1/pkeyutl.pod +++ b/doc/man1/pkeyutl.pod @@ -323,7 +323,7 @@ L, L =head1 COPYRIGHT -Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/rehash.pod b/doc/man1/rehash.pod index 79268d47..22f3b7a4 100644 --- a/doc/man1/rehash.pod +++ b/doc/man1/rehash.pod @@ -99,6 +99,12 @@ Note that current versions will not use the old style. Do not remove existing links. This is needed when keeping new and old-style links in the same directory. +=item B<-compat> + +Generate links for both old-style (MD5) and new-style (SHA1) hashing. +This allows releases before 1.0.0 to use these links along-side newer +releases. + =item B<-v> Print messages about old links removed and new links created. @@ -130,7 +136,7 @@ L. =head1 COPYRIGHT -Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/s_client.pod b/doc/man1/s_client.pod index f101b336..19a8139c 100644 --- a/doc/man1/s_client.pod +++ b/doc/man1/s_client.pod @@ -71,6 +71,9 @@ B B [B<-crlf>] [B<-ign_eof>] [B<-no_ign_eof>] +[B<-psk_identity identity>] +[B<-psk key>] +[B<-psk_session file>] [B<-quiet>] [B<-ssl3>] [B<-tls1>] @@ -99,6 +102,7 @@ B B [B<-sigalgs sigalglist>] [B<-curves curvelist>] [B<-cipher cipherlist>] +[B<-ciphersuites val>] [B<-serverpref>] [B<-starttls protocol>] [B<-xmpphost hostname>] @@ -332,8 +336,9 @@ be used as a test that session caching is working. =item B<-showcerts> -Display the whole server certificate chain: normally only the server -certificate itself is displayed. +Displays the server certificate list as sent by the server: it only consists of +certificates the server has sent (in the order the server has sent them). It is +B a verified chain. =item B<-prexit> @@ -407,6 +412,11 @@ given as a hexadecimal number without leading 0x, for example -psk 1a2b3c4d. This option must be provided in order to use a PSK cipher. +=item B<-psk_session file> + +Use the pem encoded SSL_SESSION data stored in B as the basis of a PSK. +Note that this will only work if TLSv1.3 is negotiated. + =item B<-ssl3>, B<-tls1>, B<-tls1_1>, B<-tls1_2>, B<-tls1_3>, B<-no_ssl3>, B<-no_tls1>, B<-no_tls1_1>, B<-no_tls1_2>, B<-no_tls1_3> These options require or disable the use of the specified SSL or TLS protocols. @@ -505,10 +515,20 @@ ultimately selected by the server. For a list of all curves, use: =item B<-cipher cipherlist> -This allows the cipher list sent by the client to be modified. Although -the server determines which cipher suite is used it should take the first -supported cipher in the list sent by the client. See the B -command for more information. +This allows the TLSv1.2 and below cipher list sent by the client to be modified. +This list will be combined with any TLSv1.3 ciphersuites that have been +configured. Although the server determines which ciphersuite is used it should +take the first supported cipher in the list sent by the client. See the +B command for more information. + +=item B<-ciphersuites val> + +This allows the TLSv1.3 ciphersuites sent by the client to be modified. This +list will be combined with any TLSv1.2 and below ciphersuites that have been +configured. Although the server determines which cipher suite is used it should +take the first supported cipher in the list sent by the client. See the +B command for more information. The format for this list is a simple +colon (":") separated list of TLSv1.3 ciphersuite names. =item B<-starttls protocol> @@ -684,7 +704,8 @@ a client certificate. Therefor merely including a client certificate on the command line is no guarantee that the certificate works. If there are problems verifying a server certificate then the -B<-showcerts> option can be used to show the whole chain. +B<-showcerts> option can be used to show all the certificates sent by the +server. The B utility is a test tool and is designed to continue the handshake after any certificate verification errors. As a result it will diff --git a/doc/man1/s_server.pod b/doc/man1/s_server.pod index ad04359e..e577af80 100644 --- a/doc/man1/s_server.pod +++ b/doc/man1/s_server.pod @@ -113,6 +113,7 @@ B B [B<-curves val>] [B<-named_curve val>] [B<-cipher val>] +[B<-ciphersuites val>] [B<-dhparam infile>] [B<-record_padding val>] [B<-debug_broken_protocol>] @@ -156,6 +157,7 @@ B B [B<-psk_identity val>] [B<-psk_hint val>] [B<-psk val>] +[B<-psk_session file>] [B<-srpvfile infile>] [B<-srpuserseed val>] [B<-ssl3>] @@ -533,12 +535,23 @@ For a list of all possible curves, use: =item B<-cipher val> -This allows the cipher list used by the server to be modified. When -the client sends a list of supported ciphers the first client cipher -also included in the server list is used. Because the client specifies -the preference order, the order of the server cipherlist irrelevant. See +This allows the list of TLSv1.2 and below ciphersuites used by the server to be +modified. This list is combined with any TLSv1.3 ciphersuites that have been +configured. When the client sends a list of supported ciphers the first client +cipher also included in the server list is used. Because the client specifies +the preference order, the order of the server cipherlist is irrelevant. See the B command for more information. +=item B<-ciphersuites val> + +This allows the list of TLSv1.3 ciphersuites used by the server to be modified. +This list is combined with any TLSv1.2 and below ciphersuites that have been +configured. When the client sends a list of supported ciphers the first client +cipher also included in the server list is used. Because the client specifies +the preference order, the order of the server cipherlist is irrelevant. See +the B command for more information. The format for this list is a +simple colon (":") separated list of TLSv1.3 ciphersuite names. + =item B<-dhparam infile> The DH parameter file to use. The ephemeral DH cipher suites generate keys @@ -585,6 +598,11 @@ given as a hexadecimal number without leading 0x, for example -psk 1a2b3c4d. This option must be provided in order to use a PSK cipher. +=item B<-psk_session file> + +Use the pem encoded SSL_SESSION data stored in B as the basis of a PSK. +Note that this will only work if TLSv1.3 is negotiated. + =item B<-listen> This option can only be used in conjunction with one of the DTLS options above. @@ -730,7 +748,7 @@ OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/s_time.pod b/doc/man1/s_time.pod index ecdac17c..e5b8af42 100644 --- a/doc/man1/s_time.pod +++ b/doc/man1/s_time.pod @@ -25,6 +25,7 @@ B B [B<-ssl3>] [B<-bugs>] [B<-cipher cipherlist>] +[B<-ciphersuites val>] =head1 DESCRIPTION @@ -128,10 +129,20 @@ option enables various workarounds. =item B<-cipher cipherlist> -This allows the cipher list sent by the client to be modified. Although -the server determines which cipher suite is used it should take the first -supported cipher in the list sent by the client. -See the L command for more information. +This allows the TLSv1.2 and below cipher list sent by the client to be modified. +This list will be combined with any TLSv1.3 ciphersuites that have been +configured. Although the server determines which cipher suite is used it should +take the first supported cipher in the list sent by the client. See the +L command for more information. + +=item B<-ciphersuites val> + +This allows the TLSv1.3 ciphersuites sent by the client to be modified. This +list will be combined with any TLSv1.2 and below ciphersuites that have been +configured. Although the server determines which cipher suite is used it should +take the first supported cipher in the list sent by the client. See the +B command for more information. The format for this list is a simple +colon (":") separated list of TLSv1.3 ciphersuite names. =item B<-time length> @@ -188,7 +199,7 @@ L, L, L =head1 COPYRIGHT -Copyright 2004-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2004-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/speed.pod b/doc/man1/speed.pod index f57f55a5..4f46fac1 100644 --- a/doc/man1/speed.pod +++ b/doc/man1/speed.pod @@ -73,11 +73,11 @@ is only effective if RSA algorithm is specified to test. =item B<-seconds num> -Run bechmarks for B seconds. +Run benchmarks for B seconds. =item B<-bytes num> -Run bechmarks on B-byte buffers. Affects ciphers, digests and the CSPRNG. +Run benchmarks on B-byte buffers. Affects ciphers, digests and the CSPRNG. =item B<[zero or more test algorithms]> @@ -88,7 +88,7 @@ the above are tested. =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man1/x509.pod b/doc/man1/x509.pod index 81ce560c..6e4d2881 100644 --- a/doc/man1/x509.pod +++ b/doc/man1/x509.pod @@ -429,7 +429,7 @@ the CA certificate file. Sets the CA serial number file to use. When the B<-CA> option is used to sign a certificate it uses a serial -number specified in a file. This file consist of one line containing +number specified in a file. This file consists of one line containing an even number of hex digits with the serial number to use. After each use the serial number is incremented and written out to the file again. @@ -871,8 +871,8 @@ this is because some Verisign certificates don't set the S/MIME bit. =item B -In addition to the common S/MIME client tests the digitalSignature bit must -be set if the keyUsage extension is present. +In addition to the common S/MIME client tests the digitalSignature bit or +the nonRepudiation bit must be set if the keyUsage extension is present. =item B diff --git a/doc/man3/ASN1_TIME_set.pod b/doc/man3/ASN1_TIME_set.pod index 4ae640be..a083ebfd 100644 --- a/doc/man3/ASN1_TIME_set.pod +++ b/doc/man3/ASN1_TIME_set.pod @@ -248,7 +248,7 @@ The ASN1_TIME_compare() function was added in OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/BIO_meth_new.pod b/doc/man3/BIO_meth_new.pod index e7e9cc46..7a1e72d4 100644 --- a/doc/man3/BIO_meth_new.pod +++ b/doc/man3/BIO_meth_new.pod @@ -21,38 +21,38 @@ BIO_meth_set_callback_ctrl - Routines to build up BIO methods void BIO_meth_free(BIO_METHOD *biom); - int (*BIO_meth_get_write_ex(BIO_METHOD *biom))(BIO *, const char *, size_t, + int (*BIO_meth_get_write_ex(const BIO_METHOD *biom))(BIO *, const char *, size_t, size_t *); - int (*BIO_meth_get_write(BIO_METHOD *biom))(BIO *, const char *, int); + int (*BIO_meth_get_write(const BIO_METHOD *biom))(BIO *, const char *, int); int BIO_meth_set_write_ex(BIO_METHOD *biom, int (*bwrite)(BIO *, const char *, size_t, size_t *)); int BIO_meth_set_write(BIO_METHOD *biom, int (*write)(BIO *, const char *, int)); - int (*BIO_meth_get_read_ex(BIO_METHOD *biom))(BIO *, char *, size_t, size_t *); - int (*BIO_meth_get_read(BIO_METHOD *biom))(BIO *, char *, int); + int (*BIO_meth_get_read_ex(const BIO_METHOD *biom))(BIO *, char *, size_t, size_t *); + int (*BIO_meth_get_read(const BIO_METHOD *biom))(BIO *, char *, int); int BIO_meth_set_read_ex(BIO_METHOD *biom, int (*bread)(BIO *, char *, size_t, size_t *)); int BIO_meth_set_read(BIO_METHOD *biom, int (*read)(BIO *, char *, int)); - int (*BIO_meth_get_puts(BIO_METHOD *biom))(BIO *, const char *); + int (*BIO_meth_get_puts(const BIO_METHOD *biom))(BIO *, const char *); int BIO_meth_set_puts(BIO_METHOD *biom, int (*puts)(BIO *, const char *)); - int (*BIO_meth_get_gets(BIO_METHOD *biom))(BIO *, char *, int); + int (*BIO_meth_get_gets(const BIO_METHOD *biom))(BIO *, char *, int); int BIO_meth_set_gets(BIO_METHOD *biom, int (*gets)(BIO *, char *, int)); - long (*BIO_meth_get_ctrl(BIO_METHOD *biom))(BIO *, int, long, void *); + long (*BIO_meth_get_ctrl(const BIO_METHOD *biom))(BIO *, int, long, void *); int BIO_meth_set_ctrl(BIO_METHOD *biom, long (*ctrl)(BIO *, int, long, void *)); - int (*BIO_meth_get_create(BIO_METHOD *bion))(BIO *); + int (*BIO_meth_get_create(const BIO_METHOD *bion))(BIO *); int BIO_meth_set_create(BIO_METHOD *biom, int (*create)(BIO *)); - int (*BIO_meth_get_destroy(BIO_METHOD *biom))(BIO *); + int (*BIO_meth_get_destroy(const BIO_METHOD *biom))(BIO *); int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy)(BIO *)); - long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom))(BIO *, int, BIO_info_cb *); + long (*BIO_meth_get_callback_ctrl(const BIO_METHOD *biom))(BIO *, int, BIO_info_cb *); int BIO_meth_set_callback_ctrl(BIO_METHOD *biom, long (*callback_ctrl)(BIO *, int, BIO_info_cb *)); diff --git a/doc/man3/BIO_s_accept.pod b/doc/man3/BIO_s_accept.pod index ce9995dc..45b864e5 100644 --- a/doc/man3/BIO_s_accept.pod +++ b/doc/man3/BIO_s_accept.pod @@ -4,6 +4,8 @@ BIO_s_accept, BIO_set_accept_name, BIO_set_accept_port, BIO_get_accept_name, BIO_get_accept_port, BIO_new_accept, BIO_set_nbio_accept, BIO_set_accept_bios, +BIO_get_peer_name, BIO_get_peer_port, +BIO_get_accept_ip_family, BIO_set_accept_ip_family, BIO_set_bind_mode, BIO_get_bind_mode, BIO_do_accept - accept BIO =head1 SYNOPSIS @@ -23,6 +25,11 @@ BIO_set_bind_mode, BIO_get_bind_mode, BIO_do_accept - accept BIO long BIO_set_nbio_accept(BIO *b, int n); long BIO_set_accept_bios(BIO *b, char *bio); + char *BIO_get_peer_name(BIO *b); + char *BIO_get_peer_port(BIO *b); + long BIO_get_accept_ip_family(BIO *b); + long BIO_set_accept_ip_family(BIO *b, long family); + long BIO_set_bind_mode(BIO *b, long mode); long BIO_get_bind_mode(BIO *b); @@ -145,18 +152,23 @@ accepted a connection and retry the call. BIO_set_accept_name(), BIO_get_accept_name(), BIO_set_accept_port(), BIO_get_accept_port(), BIO_set_nbio_accept(), BIO_set_accept_bios(), +BIO_get_peer_name(), BIO_get_peer_port(), +BIO_get_accept_ip_family(), BIO_set_accept_ip_family(), BIO_set_bind_mode(), BIO_get_bind_mode() and BIO_do_accept() are macros. =head1 RETURN VALUES BIO_do_accept(), BIO_set_accept_name(), BIO_set_accept_port(), BIO_set_nbio_accept(), -BIO_set_accept_bios(), and BIO_set_bind_mode(), return 1 for success and 0 or --1 for failure. +BIO_set_accept_bios(), BIO_set_accept_ip_family(), and BIO_set_bind_mode() +return 1 for success and 0 or -1 for failure. BIO_get_accept_name() returns the accept name or NULL on error. +BIO_get_peer_name() returns the peer name or NULL on error. -BIO_get_accept_port() returns the port as a string or NULL on error. +BIO_get_accept_port() returns the accept port as a string or NULL on error. +BIO_get_peer_port() returns the peer port as a string or NULL on error. +BIO_get_accept_ip_family() returns the IP family or -1 on error. BIO_get_bind_mode() returns the set of B flags, or -1 on failure. @@ -212,7 +224,7 @@ down each and finally closes both down. =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/BIO_s_connect.pod b/doc/man3/BIO_s_connect.pod index be2f4e50..d5cc553f 100644 --- a/doc/man3/BIO_s_connect.pod +++ b/doc/man3/BIO_s_connect.pod @@ -4,8 +4,8 @@ BIO_set_conn_address, BIO_get_conn_address, BIO_s_connect, BIO_new_connect, BIO_set_conn_hostname, BIO_set_conn_port, -BIO_get_conn_hostname, -BIO_get_conn_port, +BIO_set_conn_ip_family, BIO_get_conn_ip_family, +BIO_get_conn_hostname, BIO_get_conn_port, BIO_set_nbio, BIO_do_connect - connect BIO =head1 SYNOPSIS @@ -19,9 +19,11 @@ BIO_set_nbio, BIO_do_connect - connect BIO long BIO_set_conn_hostname(BIO *b, char *name); long BIO_set_conn_port(BIO *b, char *port); long BIO_set_conn_address(BIO *b, BIO_ADDR *addr); + long BIO_set_conn_ip_family(BIO *b, long family); const char *BIO_get_conn_hostname(BIO *b); const char *BIO_get_conn_port(BIO *b); const BIO_ADDR *BIO_get_conn_address(BIO *b); + const long BIO_get_conn_ip_family(BIO *b); long BIO_set_nbio(BIO *b, long n); @@ -69,6 +71,8 @@ list is http, telnet, socks, https, ssl, ftp, and gopher. BIO_set_conn_address() sets the address and port information using a BIO_ADDR(3ssl). +BIO_set_conn_ip_family() sets the IP family. + BIO_get_conn_hostname() returns the hostname of the connect BIO or NULL if the BIO is initialized but no hostname is set. This return value is an internal pointer which should not be modified. @@ -79,6 +83,8 @@ This return value is an internal pointer which should not be modified. BIO_get_conn_address() returns the address information as a BIO_ADDR. This return value is an internal pointer which should not be modified. +BIO_get_conn_ip_family() returns the IP family of the connect BIO. + BIO_set_nbio() sets the non blocking I/O flag to B. If B is zero then blocking I/O is set. If B is 1 then non blocking I/O is set. Blocking I/O is the default. The call to BIO_set_nbio() @@ -107,10 +113,10 @@ ports. This can be avoided by checking for the presence of the ':' character in the passed hostname and either indicating an error or truncating the string at that point. -The values returned by BIO_get_conn_hostname(), BIO_get_conn_port(), -BIO_get_conn_ip() and BIO_get_conn_int_port() are updated when a -connection attempt is made. Before any connection attempt the values -returned are those set by the application itself. +The values returned by BIO_get_conn_hostname(), BIO_get_conn_address(), +and BIO_get_conn_port() are updated when a connection attempt is made. +Before any connection attempt the values returned are those set by the +application itself. Applications do not have to call BIO_do_connect() but may wish to do so to separate the connection process from other I/O processing. @@ -124,10 +130,10 @@ then this is an indication that a connection attempt would block, the application should then take appropriate action to wait until the underlying socket has connected and retry the call. -BIO_set_conn_hostname(), BIO_set_conn_port(), BIO_set_conn_ip(), -BIO_set_conn_int_port(), BIO_get_conn_hostname(), BIO_get_conn_port(), -BIO_get_conn_ip(), BIO_get_conn_int_port(), BIO_set_nbio() and -BIO_do_connect() are macros. +BIO_set_conn_hostname(), BIO_set_conn_port(), BIO_get_conn_hostname(), +BIO_set_conn_address(), BIO_get_conn_port(), BIO_get_conn_address(), +BIO_set_conn_ip_family(), BIO_get_conn_ip_family(), +BIO_set_nbio(), and BIO_do_connect() are macros. =head1 RETURN VALUES @@ -136,21 +142,22 @@ BIO_s_connect() returns the connect BIO method. BIO_get_fd() returns the socket or -1 if the BIO has not been initialized. -BIO_set_conn_hostname(), BIO_set_conn_port(), BIO_set_conn_ip() and -BIO_set_conn_int_port() always return 1. +BIO_set_conn_address(), BIO_set_conn_port(), and BIO_set_conn_ip_family() +always return 1. -BIO_get_conn_hostname() returns the connected hostname or NULL is +BIO_set_conn_hostname() returns 1 on success and 0 on failure. + +BIO_get_conn_address() returns the address information or NULL if none +was set. + +BIO_get_conn_hostname() returns the connected hostname or NULL if none was set. +BIO_get_conn_ip_family() returns the address family or -1 if none was set. + BIO_get_conn_port() returns a string representing the connected port or NULL if not set. -BIO_get_conn_ip() returns a pointer to the connected IP address in -binary form or all zeros if not set. - -BIO_get_conn_int_port() returns the connected port or 0 if none was -set. - BIO_set_nbio() always returns 1. BIO_do_connect() returns 1 if the connection was successfully @@ -188,9 +195,15 @@ to retrieve a page and copy the result to standard output. L +=head1 HISTORY + +BIO_set_conn_int_port(), BIO_get_conn_int_port(), BIO_set_conn_ip(), and BIO_get_conn_ip() +were removed in OpenSSL 1.1.0. +Use BIO_set_conn_address() and BIO_get_conn_address() instead. + =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/BIO_set_callback.pod b/doc/man3/BIO_set_callback.pod index 71a041eb..0a9b6edb 100644 --- a/doc/man3/BIO_set_callback.pod +++ b/doc/man3/BIO_set_callback.pod @@ -114,7 +114,7 @@ is called before the free operation. =item B - callback_ex(b, BIO_CB_READ, data, dlen, 0, 0L, 1L, readbytes) + callback_ex(b, BIO_CB_READ, data, dlen, 0, 0L, 1L, NULL) or @@ -123,7 +123,7 @@ or is called before the read and callback_ex(b, BIO_CB_READ | BIO_CB_RETURN, data, dlen, 0, 0L, retvalue, - readbytes) + &readbytes) or @@ -133,7 +133,7 @@ after. =item B - callback_ex(b, BIO_CB_WRITE, data, dlen, 0, 0L, 1L, written) + callback_ex(b, BIO_CB_WRITE, data, dlen, 0, 0L, 1L, NULL) or @@ -142,7 +142,7 @@ or is called before the write and callback_ex(b, BIO_CB_WRITE | BIO_CB_RETURN, data, dlen, 0, 0L, retvalue, - written) + &written) or @@ -161,7 +161,7 @@ or is called before the operation and callback_ex(b, BIO_CB_GETS | BIO_CB_RETURN, buf, size, 0, 0L, retvalue, - readbytes) + &readbytes) or @@ -179,11 +179,11 @@ or is called before the operation and - callback_ex(b, BIO_CB_PUTS | BIO_CB_RETURN, buf, 0, 0, 0L, retvalue, written) + callback_ex(b, BIO_CB_PUTS | BIO_CB_RETURN, buf, 0, 0, 0L, retvalue, &written) or - callback(b, BIO_CB_WRITE|BIO_CB_RETURN, buf, 0, 0L, retvalue) + callback(b, BIO_CB_PUTS|BIO_CB_RETURN, buf, 0, 0L, retvalue) after. @@ -205,6 +205,10 @@ or after. +Note: B == B is special, because B is not the +argument of type B itself. In this case B is a pointer to +the actual call parameter, see B. + =back =head1 EXAMPLE diff --git a/doc/man3/BN_add.pod b/doc/man3/BN_add.pod index 98f2970a..88a01179 100644 --- a/doc/man3/BN_add.pod +++ b/doc/man3/BN_add.pod @@ -92,7 +92,9 @@ BN_exp() raises I to the I

-th power and places the result in I BN_mul(). BN_mod_exp() computes I to the I

-th power modulo I (C). This function uses less time and space than BN_exp(). +m>). This function uses less time and space than BN_exp(). Do not call this +function when B is even and any of the parameters have the +B flag set. BN_gcd() computes the greatest common divisor of I and I and places the result in I. I may be the same B as I or diff --git a/doc/man3/CMS_encrypt.pod b/doc/man3/CMS_encrypt.pod index 8d721105..3e777582 100644 --- a/doc/man3/CMS_encrypt.pod +++ b/doc/man3/CMS_encrypt.pod @@ -19,9 +19,8 @@ B is the symmetric cipher to use. B is an optional set of flags. =head1 NOTES -Only certificates carrying RSA keys are supported so the recipient certificates -supplied to this function must all contain RSA public keys, though they do not -have to be signed using the RSA algorithm. +Only certificates carrying RSA, Diffie-Hellman or EC keys are supported by this +function. EVP_des_ede3_cbc() (triple DES) is the algorithm of choice for S/MIME use because most clients will support it. diff --git a/doc/man3/CMS_get0_SignerInfos.pod b/doc/man3/CMS_get0_SignerInfos.pod index 7abe39f4..18237dcf 100644 --- a/doc/man3/CMS_get0_SignerInfos.pod +++ b/doc/man3/CMS_get0_SignerInfos.pod @@ -55,7 +55,7 @@ CMS_SignerInfo_set1_signer_cert(). Once all signer certificates have been set CMS_verify() can be used. -Although CMS_get0_SignerInfos() can return NULL is an error occur B if +Although CMS_get0_SignerInfos() can return NULL if an error occurs B if there are no signers this is not a problem in practice because the only error which can occur is if the B structure is not of type signedData due to application error. diff --git a/doc/man3/CMS_get1_ReceiptRequest.pod b/doc/man3/CMS_get1_ReceiptRequest.pod index 4f7f2451..ba704800 100644 --- a/doc/man3/CMS_get1_ReceiptRequest.pod +++ b/doc/man3/CMS_get1_ReceiptRequest.pod @@ -54,7 +54,7 @@ CMS_verify(). CMS_ReceiptRequest_create0() returns a signed receipt request structure or NULL if an error occurred. -CMS_add1_ReceiptRequest() returns 1 for success or 0 is an error occurred. +CMS_add1_ReceiptRequest() returns 1 for success or 0 if an error occurred. CMS_get1_ReceiptRequest() returns 1 is a signed receipt request is found and decoded. It returns 0 if a signed receipt request is not present and -1 if diff --git a/doc/man3/CRYPTO_get_ex_new_index.pod b/doc/man3/CRYPTO_get_ex_new_index.pod index 1a4ad52d..4d5a2b93 100644 --- a/doc/man3/CRYPTO_get_ex_new_index.pod +++ b/doc/man3/CRYPTO_get_ex_new_index.pod @@ -40,20 +40,22 @@ Several OpenSSL structures can have application-specific data attached to them, known as "exdata." The specific structures are: + APP + BIO + DH + DRBG + DSA + EC_KEY + ENGINE + RSA SSL SSL_CTX SSL_SESSION + UI + UI_METHOD X509 X509_STORE X509_STORE_CTX - DH - DSA - EC_KEY - RSA - ENGINE - UI - UI_METHOD - BIO Each is identified by an B define in the B header file. In addition, B is reserved for @@ -155,7 +157,7 @@ dup_func() should return 0 for failure and 1 for success. =head1 COPYRIGHT -Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/DH_generate_parameters.pod b/doc/man3/DH_generate_parameters.pod index bcbc12ce..3c847104 100644 --- a/doc/man3/DH_generate_parameters.pod +++ b/doc/man3/DH_generate_parameters.pod @@ -141,7 +141,7 @@ DH_generate_parameters_ex() instead. =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/DH_get0_pqg.pod b/doc/man3/DH_get0_pqg.pod index ec476a7d..6b25556e 100644 --- a/doc/man3/DH_get0_pqg.pod +++ b/doc/man3/DH_get0_pqg.pod @@ -2,9 +2,11 @@ =head1 NAME -DH_get0_pqg, DH_set0_pqg, DH_get0_key, DH_set0_key, DH_clear_flags, -DH_test_flags, DH_set_flags, DH_get0_engine, DH_get_length, -DH_set_length - Routines for getting and setting data in a DH object +DH_get0_pqg, DH_set0_pqg, DH_get0_key, DH_set0_key, +DH_get0_p, DH_get0_q, DH_get0_g, +DH_get0_priv_key, DH_get0_pub_key, +DH_clear_flags, DH_test_flags, DH_set_flags, DH_get0_engine, +DH_get_length, DH_set_length - Routines for getting and setting data in a DH object =head1 SYNOPSIS @@ -16,6 +18,11 @@ DH_set_length - Routines for getting and setting data in a DH object void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key); int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key); + const BIGNUM *DH_get0_p(const DH *dh); + const BIGNUM *DH_get0_q(const DH *dh); + const BIGNUM *DH_get0_g(const DH *dh); + const BIGNUM *DH_get0_priv_key(const DH *dh); + const BIGNUM *DH_get0_pub_key(const DH *dh); void DH_clear_flags(DH *dh, int flags); int DH_test_flags(const DH *dh, int flags); void DH_set_flags(DH *dh, int flags); @@ -54,6 +61,10 @@ untouched. As with DH_set0_pqg() this function transfers the memory management of the key values to the DH object, and therefore they should not be freed directly after this function has been called. +Any of the values B

, B, B, B, and B can also be +retrieved separately by the corresponding function DH_get0_p(), DH_get0_q(), +DH_get0_g(), DH_get0_priv_key(), and DH_get0_pub_key(), respectively. + DH_set_flags() sets the flags in the B parameter on the DH object. Multiple flags can be passed in one go (bitwise ORed together). Any flags that are already set are left set. DH_test_flags() tests to see whether the flags @@ -81,6 +92,9 @@ duplicate. The same applies to DH_get0_pqg() and DH_set0_pqg(). DH_set0_pqg() and DH_set0_key() return 1 on success or 0 on failure. +DH_get0_p(), DH_get0_q(), DH_get0_g(), DH_get0_priv_key(), and DH_get0_pub_key() +return the respective value. + DH_test_flags() returns the current state of the flags in the DH object. DH_get0_engine() returns the ENGINE set for the DH object or NULL if no ENGINE diff --git a/doc/man3/DH_meth_new.pod b/doc/man3/DH_meth_new.pod index 708f389f..63aa6513 100644 --- a/doc/man3/DH_meth_new.pod +++ b/doc/man3/DH_meth_new.pod @@ -23,7 +23,7 @@ DH_meth_set_generate_params - Routines to build up DH methods const char *DH_meth_get0_name(const DH_METHOD *dhm); int DH_meth_set1_name(DH_METHOD *dhm, const char *name); - int DH_meth_get_flags(DH_METHOD *dhm); + int DH_meth_get_flags(const DH_METHOD *dhm); int DH_meth_set_flags(DH_METHOD *dhm, int flags); void *DH_meth_get0_app_data(const DH_METHOD *dhm); @@ -157,7 +157,7 @@ The functions described here were added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/DSA_meth_new.pod b/doc/man3/DSA_meth_new.pod index 087a5dc6..faf86ef9 100644 --- a/doc/man3/DSA_meth_new.pod +++ b/doc/man3/DSA_meth_new.pod @@ -25,7 +25,7 @@ DSA_meth_set_keygen - Routines to build up DSA methods const char *DSA_meth_get0_name(const DSA_METHOD *dsam); int DSA_meth_set1_name(DSA_METHOD *dsam, const char *name); - int DSA_meth_get_flags(DSA_METHOD *dsam); + int DSA_meth_get_flags(const DSA_METHOD *dsam); int DSA_meth_set_flags(DSA_METHOD *dsam, int flags); void *DSA_meth_get0_app_data(const DSA_METHOD *dsam); @@ -205,7 +205,7 @@ The functions described here were added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/EC_POINT_add.pod b/doc/man3/EC_POINT_add.pod index 3c047e1a..21abf46b 100644 --- a/doc/man3/EC_POINT_add.pod +++ b/doc/man3/EC_POINT_add.pod @@ -43,10 +43,12 @@ The functions EC_POINT_make_affine and EC_POINTs_make_affine force the internal co-ordinate system. In the case of EC_POINTs_make_affine the value B provides the number of points in the array B to be forced. -EC_POINT_mul calculates the value generator * B + B * B and stores the result in B. The value B may be NULL in which case the result is just B * B. +EC_POINT_mul is a convenient interface to EC_POINTs_mul: it calculates the value generator * B + B * B and stores the result in B. +The value B may be NULL in which case the result is just B * B (variable point multiplication). Alternatively, both B and B may be NULL, and B non-NULL, in which case the result is just generator * B (fixed point multiplication). +When performing a single fixed or variable point multiplication, the underlying implementation uses a constant time algorithm, when the input scalar (either B or B) is in the range [0, ec_group_order). -EC_POINTs_mul calculates the value generator * B + B * B + ... + B * B. As for EC_POINT_mul the value -B may be NULL. +EC_POINTs_mul calculates the value generator * B + B * B + ... + B * B. As for EC_POINT_mul the value B may be NULL or B may be zero. +When performing a fixed point multiplication (B is non-NULL and B is 0) or a variable point multiplication (B is NULL and B is 1), the underlying implementation uses a constant time algorithm, when the input scalar (either B or B) is in the range [0, ec_group_order). The function EC_GROUP_precompute_mult stores multiples of the generator for faster point multiplication, whilst EC_GROUP_have_precompute_mult tests whether precomputation has already been done. See L for information diff --git a/doc/man3/EC_POINT_new.pod b/doc/man3/EC_POINT_new.pod index 5ac41b32..2d867772 100644 --- a/doc/man3/EC_POINT_new.pod +++ b/doc/man3/EC_POINT_new.pod @@ -99,7 +99,10 @@ be at infinity by calling EC_POINT_set_to_infinity(). The affine co-ordinates for a point describe a point in terms of its x and y position. The functions EC_POINT_set_affine_coordinates_GFp() and EC_POINT_set_affine_coordinates_GF2m() set the B and B co-ordinates for -the point B

defined over the curve given in B. +the point B

defined over the curve given in B. The functions +EC_POINT_get_affine_coordinates_GFp() and +EC_POINT_get_affine_coordinates_GF2m() set B and B, either of which may +be NULL, to the corresponding coordinates of B

. As well as the affine co-ordinates, a point can alternatively be described in terms of its Jacobian projective co-ordinates (for Fp curves only). Jacobian diff --git a/doc/man3/ENGINE_add.pod b/doc/man3/ENGINE_add.pod index b009949d..a2fc2994 100644 --- a/doc/man3/ENGINE_add.pod +++ b/doc/man3/ENGINE_add.pod @@ -568,6 +568,7 @@ extension). =item B The path to the engines directory. +Ignored in set-user-ID and set-group-ID programs. =back diff --git a/doc/man3/EVP_CIPHER_meth_new.pod b/doc/man3/EVP_CIPHER_meth_new.pod index 15f71612..437e8bd8 100644 --- a/doc/man3/EVP_CIPHER_meth_new.pod +++ b/doc/man3/EVP_CIPHER_meth_new.pod @@ -241,7 +241,7 @@ The functions described here were added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/EVP_DigestSignInit.pod b/doc/man3/EVP_DigestSignInit.pod index c3513f53..400e89d5 100644 --- a/doc/man3/EVP_DigestSignInit.pod +++ b/doc/man3/EVP_DigestSignInit.pod @@ -26,7 +26,54 @@ EVP_DigestSignInit() sets up signing context B to use digest B from ENGINE B and private key B. B must be created with EVP_MD_CTX_new() before calling this function. If B is not NULL the EVP_PKEY_CTX of the signing operation will be written to B<*pctx>: this can -be used to set alternative signing options. +be used to set alternative signing options. The digest B may be NULL if +the signing algorithm supports it. + +Only EVP_PKEY types that support signing can be used with these functions. This +includes MAC algorithms where the MAC generation is considered as a form of +"signing." Built-in EVP_PKEY types supported by these functions are CMAC, +Poly1305, DSA, ECDSA, HMAC, RSA, SipHash, Ed25519 and Ed448. + +Not all digests can be used for all key types. The following combinations apply. + +=over 4 + +=item DSA + +Supports SHA1, SHA224, SHA256, SHA384 and SHA512 + +=item ECDSA + +Supports SHA1, SHA224, SHA256, SHA384, SHA512 and SM3 + +=item RSA with no padding + +Supports no digests (the digest B must be NULL) + +=item RSA with X931 padding + +Supports SHA1, SHA256, SHA384 and SHA512 + +=item All other RSA padding types + +Support SHA1, SHA224, SHA256, SHA384, SHA512, MD5, MD5_SHA1, MD2, MD4, MDC2, +SHA3-224, SHA3-256, SHA3-384, SHA3-512 + +=item Ed25519 and Ed448 + +Support no digests (the digest B must be NULL) + +=item HMAC + +Supports any digest + +=item CMAC, Poly1305 and SipHash + +Will ignore any digest provided. + +=back + +If RSA-PSS is used and restrictions apply then the digest must match. EVP_DigestSignUpdate() hashes B bytes of data at B into the signature context B. This function can be called several times on the @@ -77,7 +124,7 @@ context. This means that calls to EVP_DigestSignUpdate() and EVP_DigestSignFinal() can be called later to digest and sign additional data. Since only a copy of the digest context is ever finalized the context must -be cleaned up after use by calling EVP_MD_CTX_cleanup() or a memory leak +be cleaned up after use by calling EVP_MD_CTX_free() or a memory leak will occur. The use of EVP_PKEY_size() with these functions is discouraged because some @@ -100,7 +147,7 @@ were first added to OpenSSL 1.0.0. =head1 COPYRIGHT -Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/EVP_DigestVerifyInit.pod b/doc/man3/EVP_DigestVerifyInit.pod index 2191b9ed..352ab846 100644 --- a/doc/man3/EVP_DigestVerifyInit.pod +++ b/doc/man3/EVP_DigestVerifyInit.pod @@ -76,7 +76,7 @@ context. This means that EVP_VerifyUpdate() and EVP_VerifyFinal() can be called later to digest and verify additional data. Since only a copy of the digest context is ever finalized the context must -be cleaned up after use by calling EVP_MD_CTX_cleanup() or a memory leak +be cleaned up after use by calling EVP_MD_CTX_free() or a memory leak will occur. =head1 SEE ALSO @@ -94,7 +94,7 @@ were first added to OpenSSL 1.0.0. =head1 COPYRIGHT -Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/EVP_EncryptInit.pod b/doc/man3/EVP_EncryptInit.pod index b1b51cb3..2e3a45a7 100644 --- a/doc/man3/EVP_EncryptInit.pod +++ b/doc/man3/EVP_EncryptInit.pod @@ -99,7 +99,6 @@ EVP_enc_null int EVP_CIPHER_nid(const EVP_CIPHER *e); int EVP_CIPHER_block_size(const EVP_CIPHER *e); - int EVP_CIPHER_key_length(const EVP_CIPHER *e) int EVP_CIPHER_key_length(const EVP_CIPHER *e); int EVP_CIPHER_iv_length(const EVP_CIPHER *e); unsigned long EVP_CIPHER_flags(const EVP_CIPHER *e); @@ -457,20 +456,6 @@ This call is only valid when decrypting data. =back -=head1 Random numbers - -The following can be used to select the DRBG that is used to generate the random -numbers: - -EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_SET_DRBG, 0, drbg) - -The following can be used to get the DRBG: - -EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_GET_DRBG, 0, &drbg) - -By default it's set to NULL which results in RAND_bytes() being used. - - =head1 NOTES Where possible the B interface to symmetric ciphers should be used in diff --git a/doc/man3/EVP_PKEY_ASN1_METHOD.pod b/doc/man3/EVP_PKEY_ASN1_METHOD.pod index cb03b473..cb9375ab 100644 --- a/doc/man3/EVP_PKEY_ASN1_METHOD.pod +++ b/doc/man3/EVP_PKEY_ASN1_METHOD.pod @@ -19,6 +19,8 @@ EVP_PKEY_asn1_set_check, EVP_PKEY_asn1_set_public_check, EVP_PKEY_asn1_set_param_check, EVP_PKEY_asn1_set_security_bits, +EVP_PKEY_asn1_set_set_priv_key, +EVP_PKEY_asn1_set_set_pub_key, EVP_PKEY_get0_asn1 - manipulating and registering EVP_PKEY_ASN1_METHOD structure @@ -112,6 +114,17 @@ EVP_PKEY_get0_asn1 int (*pkey_security_bits) (const EVP_PKEY *pk)); + void EVP_PKEY_asn1_set_set_priv_key(EVP_PKEY_ASN1_METHOD *ameth, + int (*set_priv_key) (EVP_PKEY *pk, + const unsigned char + *priv, + size_t len)); + + void EVP_PKEY_asn1_set_set_pub_key(EVP_PKEY_ASN1_METHOD *ameth, + int (*set_pub_key) (EVP_PKEY *pk, + const unsigned char *pub, + size_t len)); + const EVP_PKEY_ASN1_METHOD *EVP_PKEY_get0_asn1(const EVP_PKEY *pkey); =head1 DESCRIPTION @@ -327,6 +340,14 @@ They MUST return 0 for an invalid key, or 1 for a valid key. They are called by L, L and L respectively. + int (*set_priv_key) (EVP_PKEY *pk, const unsigned char *priv, size_t len); + int (*set_pub_key) (EVP_PKEY *pk, const unsigned char *pub, size_t len); + +The set_priv_key() and set_pub_key() methods are used to set the raw private and +public key data for an EVP_PKEY. They MUST return 0 on error, or 1 on success. +They are called by L, and +L respectively. + =head2 Functions EVP_PKEY_asn1_new() creates and returns a new B @@ -368,8 +389,9 @@ EVP_PKEY_asn1_set_public(), EVP_PKEY_asn1_set_private(), EVP_PKEY_asn1_set_param(), EVP_PKEY_asn1_set_free(), EVP_PKEY_asn1_set_ctrl(), EVP_PKEY_asn1_set_item(), EVP_PKEY_asn1_set_siginf(), EVP_PKEY_asn1_set_check(), -EVP_PKEY_asn1_set_public_check(), EVP_PKEY_asn1_set_param_check() and -EVP_PKEY_asn1_set_security_bits() set the diverse methods of the given +EVP_PKEY_asn1_set_public_check(), EVP_PKEY_asn1_set_param_check(), +EVP_PKEY_asn1_set_security_bits(), EVP_PKEY_asn1_set_set_priv_key() and +EVP_PKEY_asn1_set_set_pub_key() set the diverse methods of the given B object. EVP_PKEY_get0_asn1() finds the B associated @@ -388,7 +410,7 @@ B object otherwise. =head1 COPYRIGHT -Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/EVP_PKEY_CTX_ctrl.pod b/doc/man3/EVP_PKEY_CTX_ctrl.pod index 2ad470b5..7eb9796b 100644 --- a/doc/man3/EVP_PKEY_CTX_ctrl.pod +++ b/doc/man3/EVP_PKEY_CTX_ctrl.pod @@ -2,13 +2,20 @@ =head1 NAME -EVP_PKEY_CTX_ctrl, EVP_PKEY_CTX_ctrl_str, -EVP_PKEY_CTX_set_signature_md, EVP_PKEY_CTX_set_rsa_padding, -EVP_PKEY_CTX_set_rsa_pss_saltlen, EVP_PKEY_CTX_set_rsa_keygen_bits, -EVP_PKEY_CTX_set_rsa_keygen_pubexp, EVP_PKEY_CTX_set_dsa_paramgen_bits, +EVP_PKEY_CTX_ctrl, +EVP_PKEY_CTX_ctrl_str, +EVP_PKEY_CTX_set_signature_md, +EVP_PKEY_CTX_get_signature_md, +EVP_PKEY_CTX_set_mac_key, +EVP_PKEY_CTX_set_rsa_padding, +EVP_PKEY_CTX_set_rsa_pss_saltlen, +EVP_PKEY_CTX_set_rsa_keygen_bits, +EVP_PKEY_CTX_set_rsa_keygen_pubexp, +EVP_PKEY_CTX_set_dsa_paramgen_bits, EVP_PKEY_CTX_set_dh_paramgen_prime_len, EVP_PKEY_CTX_set_dh_paramgen_generator, -EVP_PKEY_CTX_set_dh_pad, EVP_PKEY_CTX_set_dh_nid, +EVP_PKEY_CTX_set_dh_pad, +EVP_PKEY_CTX_set_dh_nid, EVP_PKEY_CTX_set_ec_paramgen_curve_nid, EVP_PKEY_CTX_set_ec_param_enc - algorithm specific control operations @@ -21,9 +28,12 @@ EVP_PKEY_CTX_set_ec_param_enc - algorithm specific control operations int EVP_PKEY_CTX_ctrl_str(EVP_PKEY_CTX *ctx, const char *type, const char *value); - #include - int EVP_PKEY_CTX_set_signature_md(EVP_PKEY_CTX *ctx, const EVP_MD *md); + int EVP_PKEY_CTX_get_signature_md(EVP_PKEY_CTX *ctx, const EVP_MD **pmd); + + int EVP_PKEY_CTX_set_mac_key(EVP_PKEY_CTX *ctx, unsigned char *key, int len); + + #include int EVP_PKEY_CTX_set_rsa_padding(EVP_PKEY_CTX *ctx, int pad); int EVP_PKEY_CTX_set_rsa_pss_saltlen(EVP_PKEY_CTX *ctx, int len); @@ -67,8 +77,21 @@ B, B and B commands. All the remaining "functions" are implemented as macros. The EVP_PKEY_CTX_set_signature_md() macro sets the message digest type used -in a signature. It can be used with any public key algorithm supporting -signature operations. +in a signature. It can be used in the RSA, DSA and ECDSA algorithms. + +The EVP_PKEY_CTX_get_signature_md() macro gets the message digest type used in a +signature. It can be used in the RSA, DSA and ECDSA algorithms. + +Key generation typically involves setting up parameters to be used and +generating the private and public key data. Some algorithm implementations +allow private key data to be set explicitly using the EVP_PKEY_CTX_set_mac_key() +macro. In this case key generation is simply the process of setting up the +parameters for the key and then setting the raw key data to the value explicitly +provided by that macro. Normally applications would call +L or similar functions instead of this macro. + +The EVP_PKEY_CTX_set_mac_key() macro can be used with any of the algorithms +supported by the L function. The macro EVP_PKEY_CTX_set_rsa_padding() sets the RSA padding mode for B. The B parameter can take the value RSA_PKCS1_PADDING for PKCS#1 padding, @@ -160,7 +183,7 @@ These functions were first added to OpenSSL 1.0.0. =head1 COPYRIGHT -Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/EVP_PKEY_CTX_set1_pbe_pass.pod b/doc/man3/EVP_PKEY_CTX_set1_pbe_pass.pod new file mode 100644 index 00000000..1e740f40 --- /dev/null +++ b/doc/man3/EVP_PKEY_CTX_set1_pbe_pass.pod @@ -0,0 +1,70 @@ +=pod + +=head1 NAME + +EVP_PKEY_CTX_set1_pbe_pass +- generic KDF support functions + +=head1 SYNOPSIS + + #include + + int EVP_PKEY_CTX_set1_pbe_pass(EVP_PKEY_CTX *pctx, unsigned char *pass, + int passlen); + +=head1 DESCRIPTION + +These functions are generic support functions for all KDF algorithms. + +EVP_PKEY_CTX_set1_pbe_pass() sets the password to the B first +bytes from B. + +=begin comment + +We really should have a few more, such as EVP_PKEY_CTX_set1_kdf_salt, +EVP_PKEY_CTX_set1_kdf_key (to be used by the algorithms that use a +key, such as hkdf), EVP_PKEY_CTX_set1_kdf_md (same thing here). + +=end comment + +=head1 STRING CTRLS + +There is also support for string based control operations via +L. +The B can be directly specified using the B parameter +"pass" or given in hex encoding using the "hexpass" parameter. + +=begin comment + +Just as for the function description, the strings "salt", "hexsalt", +"key", "hexkey" and "md" should be generically specified, and +supported by the algorithms that use them. + +=end comment + +=head1 NOTES + +All these functions are implemented as macros. + +=head1 RETURN VALUES + +All these functions return 1 for success and 0 or a negative value for failure. +In particular a return value of -2 indicates the operation is not supported by +the public key algorithm. + +=head1 SEE ALSO + +L, +L, +L + +=head1 COPYRIGHT + +Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/EVP_PKEY_CTX_set_hkdf_md.pod b/doc/man3/EVP_PKEY_CTX_set_hkdf_md.pod index 333b8da0..18c27a36 100644 --- a/doc/man3/EVP_PKEY_CTX_set_hkdf_md.pod +++ b/doc/man3/EVP_PKEY_CTX_set_hkdf_md.pod @@ -99,7 +99,7 @@ All these functions are implemented as macros. A context for HKDF can be obtained by calling: - EVP_PKEY_CTX *pctx = EVP_PKEY_new_id(EVP_PKEY_HKDF, NULL); + EVP_PKEY_CTX *pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_HKDF, NULL); The total length of the info buffer cannot exceed 1024 bytes in length: this should be more than enough for any normal use of HKDF. diff --git a/doc/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.pod b/doc/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.pod new file mode 100644 index 00000000..bd1193e2 --- /dev/null +++ b/doc/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.pod @@ -0,0 +1,94 @@ +=pod + +=head1 NAME + +EVP_PKEY_CTX_set_rsa_pss_keygen_md, +EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md, +EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen +- EVP_PKEY RSA-PSS algorithm support functions + +=head1 SYNOPSIS + + #include + + int EVP_PKEY_CTX_set_rsa_pss_keygen_md(EVP_PKEY_CTX *pctx, + const EVP_MD *md); + int EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md(EVP_PKEY_CTX *pctx, + const EVP_MD *md); + int EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen(EVP_PKEY_CTX *pctx, + int saltlen); + +=head1 DESCRIPTION + +These are the functions that implement L. + +=head2 Signing and Verification + +The macro EVP_PKEY_CTX_set_rsa_padding() is supported but an error is +returned if an attempt is made to set the padding mode to anything other +than B. It is otherwise similar to the B version. + +The EVP_PKEY_CTX_set_rsa_pss_saltlen() macro is used to set the salt length. +If the key has usage restrictions then an error is returned if an attempt is +made to set the salt length below the minimum value. It is otherwise similar +to the B operation except detection of the salt length (using +RSA_PSS_SALTLEN_AUTO is not supported for verification if the key has +usage restrictions. + +The EVP_PKEY_CTX_set_signature_md() and EVP_PKEY_CTX_set_rsa_mgf1_md() macros +are used to set the digest and MGF1 algorithms respectively. If the key has +usage restrictions then an error is returned if an attempt is made to set the +digest to anything other than the restricted value. Otherwise these are +similar to the B versions. + +=head2 Key Generation + +As with RSA key generation the EVP_PKEY_CTX_set_rsa_rsa_keygen_bits() +and EVP_PKEY_CTX_set_rsa_keygen_pubexp() macros are supported for RSA-PSS: +they have exactly the same meaning as for the RSA algorithm. + +Optional parameter restrictions can be specified when generating a PSS key. +If any restrictions are set (using the macros described below) then B +parameters are restricted. For example, setting a minimum salt length also +restricts the digest and MGF1 algorithms. If any restrictions are in place +then they are reflected in the corresponding parameters of the public key +when (for example) a certificate request is signed. + +EVP_PKEY_CTX_set_rsa_pss_keygen_md() restricts the digest algorithm the +generated key can use to B. + +EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md() restricts the MGF1 algorithm the +generated key can use to B. + +EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen() restricts the minimum salt length +to B. + +=head1 NOTES + +A context for the B algorithm can be obtained by calling: + + EVP_PKEY_CTX *pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_RSA_PSS, NULL); + +=head1 RETURN VALUES + +All these functions return 1 for success and 0 or a negative value for failure. +In particular a return value of -2 indicates the operation is not supported by +the public key algorithm. + +=head1 SEE ALSO + +L, +L, +L, +L + +=head1 COPYRIGHT + +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/EVP_PKEY_CTX_set_scrypt_N.pod b/doc/man3/EVP_PKEY_CTX_set_scrypt_N.pod new file mode 100644 index 00000000..4e2a4ea6 --- /dev/null +++ b/doc/man3/EVP_PKEY_CTX_set_scrypt_N.pod @@ -0,0 +1,86 @@ +=pod + +=head1 NAME + +EVP_PKEY_CTX_set1_scrypt_salt, +EVP_PKEY_CTX_set_scrypt_N, +EVP_PKEY_CTX_set_scrypt_r, +EVP_PKEY_CTX_set_scrypt_p, +EVP_PKEY_CTX_set_scrypt_maxmem_bytes +- EVP_PKEY scrypt KDF support functions + +=head1 SYNOPSIS + + #include + + int EVP_PKEY_CTX_set1_scrypt_salt(EVP_PKEY_CTX *pctx, unsigned char *salt, + int saltlen); + + int EVP_PKEY_CTX_set_scrypt_N(EVP_PKEY_CTX *pctx, uint64_t N); + + int EVP_PKEY_CTX_set_scrypt_r(EVP_PKEY_CTX *pctx, uint64_t r); + + int EVP_PKEY_CTX_set_scrypt_p(EVP_PKEY_CTX *pctx, uint64_t p); + + int EVP_PKEY_CTX_set_scrypt_maxmem_bytes(EVP_PKEY_CTX *pctx, + uint64_t maxmem); + +=head1 DESCRIPTION + +These functions are used to set up the necessary data to use the +scrypt KDF. +For more information on scrypt, see L. + +EVP_PKEY_CTX_set1_scrypt_salt() sets the B bytes long salt +value. + +EVP_PKEY_CTX_set_scrypt_N(), EVP_PKEY_CTX_set_scrypt_r() and +EVP_PKEY_CTX_set_scrypt_p() configure the work factors N, r and p. + +EVP_PKEY_CTX_set_scrypt_maxmem_bytes() sets how much RAM key +derivation may maximally use, given in bytes. +If RAM is exceeded because the load factors are chosen too high, the +key derivation will fail. + +=head1 STRING CTRLS + +scrypt also supports string based control operations via +L. +Similarly, the B can either be specified using the B +parameter "salt" or in hex encoding by using the "hexsalt" parameter. +The work factors B, B and B

as well as B can be +set by using the parameters "N", "r", "p" and "maxmem_bytes", +respectively. + +=head1 NOTES + +The scrypt KDF also uses EVP_PKEY_CTX_set1_pbe_pass() as well as +the value from the string controls "pass" and "hexpass". +See L. + +All the functions described here are implemented as macros. + +=head1 RETURN VALUES + +All these functions return 1 for success and 0 or a negative value for +failure. +In particular a return value of -2 indicates the operation is not +supported by the public key algorithm. + +=head1 SEE ALSO + +L, +L, +L, +L + +=head1 COPYRIGHT + +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/EVP_PKEY_meth_new.pod b/doc/man3/EVP_PKEY_meth_new.pod index 918e4fa1..ddc99d28 100644 --- a/doc/man3/EVP_PKEY_meth_new.pod +++ b/doc/man3/EVP_PKEY_meth_new.pod @@ -117,35 +117,35 @@ EVP_PKEY_meth_remove void EVP_PKEY_meth_set_param_check(EVP_PKEY_METHOD *pmeth, int (*check) (EVP_PKEY *pkey)); - void EVP_PKEY_meth_get_init(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_init(const EVP_PKEY_METHOD *pmeth, int (**pinit) (EVP_PKEY_CTX *ctx)); - void EVP_PKEY_meth_get_copy(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_copy(const EVP_PKEY_METHOD *pmeth, int (**pcopy) (EVP_PKEY_CTX *dst, EVP_PKEY_CTX *src)); - void EVP_PKEY_meth_get_cleanup(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_cleanup(const EVP_PKEY_METHOD *pmeth, void (**pcleanup) (EVP_PKEY_CTX *ctx)); - void EVP_PKEY_meth_get_paramgen(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_paramgen(const EVP_PKEY_METHOD *pmeth, int (**pparamgen_init) (EVP_PKEY_CTX *ctx), int (**pparamgen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)); - void EVP_PKEY_meth_get_keygen(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_keygen(const EVP_PKEY_METHOD *pmeth, int (**pkeygen_init) (EVP_PKEY_CTX *ctx), int (**pkeygen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)); - void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_sign(const EVP_PKEY_METHOD *pmeth, int (**psign_init) (EVP_PKEY_CTX *ctx), int (**psign) (EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen, const unsigned char *tbs, size_t tbslen)); - void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_verify(const EVP_PKEY_METHOD *pmeth, int (**pverify_init) (EVP_PKEY_CTX *ctx), int (**pverify) (EVP_PKEY_CTX *ctx, const unsigned char *sig, size_t siglen, const unsigned char *tbs, size_t tbslen)); - void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_verify_recover(const EVP_PKEY_METHOD *pmeth, int (**pverify_recover_init) (EVP_PKEY_CTX *ctx), int (**pverify_recover) (EVP_PKEY_CTX @@ -156,50 +156,50 @@ EVP_PKEY_meth_remove const unsigned char *tbs, size_t tbslen)); - void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_signctx(const EVP_PKEY_METHOD *pmeth, int (**psignctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx), int (**psignctx) (EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen, EVP_MD_CTX *mctx)); - void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_verifyctx(const EVP_PKEY_METHOD *pmeth, int (**pverifyctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx), int (**pverifyctx) (EVP_PKEY_CTX *ctx, const unsigned char *sig, int siglen, EVP_MD_CTX *mctx)); - void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_encrypt(const EVP_PKEY_METHOD *pmeth, int (**pencrypt_init) (EVP_PKEY_CTX *ctx), int (**pencryptfn) (EVP_PKEY_CTX *ctx, unsigned char *out, size_t *outlen, const unsigned char *in, size_t inlen)); - void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_decrypt(const EVP_PKEY_METHOD *pmeth, int (**pdecrypt_init) (EVP_PKEY_CTX *ctx), int (**pdecrypt) (EVP_PKEY_CTX *ctx, unsigned char *out, size_t *outlen, const unsigned char *in, size_t inlen)); - void EVP_PKEY_meth_get_derive(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_derive(const EVP_PKEY_METHOD *pmeth, int (**pderive_init) (EVP_PKEY_CTX *ctx), int (**pderive) (EVP_PKEY_CTX *ctx, unsigned char *key, size_t *keylen)); - void EVP_PKEY_meth_get_ctrl(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_ctrl(const EVP_PKEY_METHOD *pmeth, int (**pctrl) (EVP_PKEY_CTX *ctx, int type, int p1, void *p2), int (**pctrl_str) (EVP_PKEY_CTX *ctx, const char *type, const char *value)); - void EVP_PKEY_meth_get_check(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_check(const EVP_PKEY_METHOD *pmeth, int (**pcheck) (EVP_PKEY *pkey)); - void EVP_PKEY_meth_get_public_check(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_public_check(const EVP_PKEY_METHOD *pmeth, int (**pcheck) (EVP_PKEY *pkey)); - void EVP_PKEY_meth_get_param_check(EVP_PKEY_METHOD *pmeth, + void EVP_PKEY_meth_get_param_check(const EVP_PKEY_METHOD *pmeth, int (**pcheck) (EVP_PKEY *pkey)); =head1 DESCRIPTION @@ -397,7 +397,7 @@ arguments. =head1 COPYRIGHT -Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/EVP_PKEY_new.pod b/doc/man3/EVP_PKEY_new.pod index 956d6990..17ffc6bc 100644 --- a/doc/man3/EVP_PKEY_new.pod +++ b/doc/man3/EVP_PKEY_new.pod @@ -2,7 +2,14 @@ =head1 NAME -EVP_PKEY_new, EVP_PKEY_up_ref, EVP_PKEY_free - private key allocation functions +EVP_PKEY_new, +EVP_PKEY_up_ref, +EVP_PKEY_free, +EVP_PKEY_new_raw_private_key, +EVP_PKEY_new_raw_public_key, +EVP_PKEY_new_CMAC_key, +EVP_PKEY_new_mac_key +- public/private key allocation functions =head1 SYNOPSIS @@ -12,6 +19,14 @@ EVP_PKEY_new, EVP_PKEY_up_ref, EVP_PKEY_free - private key allocation functions int EVP_PKEY_up_ref(EVP_PKEY *key); void EVP_PKEY_free(EVP_PKEY *key); + EVP_PKEY *EVP_PKEY_new_raw_private_key(int type, ENGINE *e, + const unsigned char *key, size_t keylen); + EVP_PKEY *EVP_PKEY_new_raw_public_key(int type, ENGINE *e, + const unsigned char *key, size_t keylen); + EVP_PKEY *EVP_PKEY_new_CMAC_key(ENGINE *e, const unsigned char *priv, + size_t len, const EVP_CIPHER *cipher); + EVP_PKEY *EVP_PKEY_new_mac_key(int type, ENGINE *e, const unsigned char *key, + int keylen); =head1 DESCRIPTION @@ -23,6 +38,31 @@ EVP_PKEY_up_ref() increments the reference count of B. EVP_PKEY_free() decrements the reference count of B and, if the reference count is zero, frees it up. If B is NULL, nothing is done. +EVP_PKEY_new_raw_private_key() allocates a new B. If B is non-NULL +then the new B structure is associated with the engine B. The +B argument indicates what kind of key this is. The value should be a NID +for a public key algorithm that supports raw private keys, i.e. one of +B, B, B, B, +B, B or B. B points to the +raw private key data for this B which should be of length B. +The length should be appropriate for the type of the key. The public key data +will be automatically derived from the given private key data (if appropriate +for the algorithm type). + +EVP_PKEY_new_raw_public_key() works in the same way as +EVP_PKEY_new_raw_private_key() except that B points to the raw public key +data. The B structure will be initialised without any private key +information. Algorithm types that support raw public keys are +B, B, B or B. + +EVP_PKEY_new_CMAC_key() works in the same way as EVP_PKEY_new_raw_private_key() +except it is only for the B algorithm type. In addition to the +raw private key data, it also takes a cipher algorithm to be used during +creation of a CMAC in the B argument. + +EVP_PKEY_new_mac_key() works in the same way as EVP_PKEY_new_raw_private_key(). +New applications should use EVP_PKEY_new_raw_private_key() instead. + =head1 NOTES The B structure is used by various OpenSSL functions which require a @@ -34,8 +74,9 @@ used. =head1 RETURN VALUES -EVP_PKEY_new() returns either the newly allocated B structure or -B if an error occurred. +EVP_PKEY_new(), EVP_PKEY_new_raw_private_key(), EVP_PKEY_new_raw_public_key(), +EVP_PKEY_new_CMAC_key() and EVP_PKEY_new_mac_key() return either the newly +allocated B structure or B if an error occurred. EVP_PKEY_up_ref() returns 1 for success and 0 for failure. @@ -48,10 +89,12 @@ L EVP_PKEY_new() and EVP_PKEY_free() exist in all versions of OpenSSL. EVP_PKEY_up_ref() was first added to OpenSSL 1.1.0. +EVP_PKEY_new_raw_private_key(), EVP_PKEY_new_raw_public_key() and +EVP_PKEY_new_CMAC_key() were first added to OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/EVP_SignInit.pod b/doc/man3/EVP_SignInit.pod index 987526c4..12e67f8c 100644 --- a/doc/man3/EVP_SignInit.pod +++ b/doc/man3/EVP_SignInit.pod @@ -66,11 +66,6 @@ The B interface to digital signatures should almost always be used in preference to the low level interfaces. This is because the code then becomes transparent to the algorithm used and much more flexible. -Due to the link between message digests and public key algorithms the correct -digest algorithm must be used with the correct public key type. A list of -algorithms and associated public key algorithms appears in -L. - When signing with DSA private keys the random number generator must be seeded or the operation will fail. The random number generator does not need to be seeded for RSA signatures. @@ -80,7 +75,7 @@ This means that calls to EVP_SignUpdate() and EVP_SignFinal() can be called later to digest and sign additional data. Since only a copy of the digest context is ever finalized the context must -be cleaned up after use by calling EVP_MD_CTX_cleanup() or a memory leak +be cleaned up after use by calling EVP_MD_CTX_free() or a memory leak will occur. =head1 BUGS @@ -107,7 +102,7 @@ L, L =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/EVP_VerifyInit.pod b/doc/man3/EVP_VerifyInit.pod index ad8a8c01..f8682584 100644 --- a/doc/man3/EVP_VerifyInit.pod +++ b/doc/man3/EVP_VerifyInit.pod @@ -52,17 +52,12 @@ The B interface to digital signatures should almost always be used in preference to the low level interfaces. This is because the code then becomes transparent to the algorithm used and much more flexible. -Due to the link between message digests and public key algorithms the correct -digest algorithm must be used with the correct public key type. A list of -algorithms and associated public key algorithms appears in -L. - The call to EVP_VerifyFinal() internally finalizes a copy of the digest context. This means that calls to EVP_VerifyUpdate() and EVP_VerifyFinal() can be called later to digest and verify additional data. Since only a copy of the digest context is ever finalized the context must -be cleaned up after use by calling EVP_MD_CTX_cleanup() or a memory leak +be cleaned up after use by calling EVP_MD_CTX_free() or a memory leak will occur. =head1 BUGS @@ -90,7 +85,7 @@ L, L =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/EVP_md5.pod b/doc/man3/EVP_md5.pod index 30e72a22..8101143b 100644 --- a/doc/man3/EVP_md5.pod +++ b/doc/man3/EVP_md5.pod @@ -52,7 +52,7 @@ L =head1 COPYRIGHT -Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/OBJ_nid2obj.pod b/doc/man3/OBJ_nid2obj.pod index 6c1aa132..6d85c111 100644 --- a/doc/man3/OBJ_nid2obj.pod +++ b/doc/man3/OBJ_nid2obj.pod @@ -54,7 +54,7 @@ constants. OBJ_nid2obj(), OBJ_nid2ln() and OBJ_nid2sn() convert the NID B to an ASN1_OBJECT structure, its long name and its short name respectively, -or B is an error occurred. +or B if an error occurred. OBJ_obj2nid(), OBJ_ln2nid(), OBJ_sn2nid() return the corresponding NID for the object B, the long name or the short name respectively diff --git a/doc/man3/OPENSSL_VERSION_NUMBER.pod b/doc/man3/OPENSSL_VERSION_NUMBER.pod index d5842c0e..6eca1134 100644 --- a/doc/man3/OPENSSL_VERSION_NUMBER.pod +++ b/doc/man3/OPENSSL_VERSION_NUMBER.pod @@ -47,11 +47,6 @@ number was therefore 0x0090581f. OpenSSL_version_num() returns the version number. -The macro OPENSSL_VERSION_AT_LEAST(major,minor) can be used at compile -time test if the current version is at least as new as the version provided. -The arguments major, minor and fix correspond to the version information -as given above. - OpenSSL_version() returns different strings depending on B: =over 4 diff --git a/doc/man3/OPENSSL_config.pod b/doc/man3/OPENSSL_config.pod index e70fcd54..6294ee1d 100644 --- a/doc/man3/OPENSSL_config.pod +++ b/doc/man3/OPENSSL_config.pod @@ -48,6 +48,17 @@ application calls OPENSSL_config() it doesn't need to know or care about ENGINE control operations because they can be performed by editing a configuration file. +=head1 ENVIRONMENT + +=over 4 + +=item B + +The path to the config file. +Ignored in set-user-ID and set-group-ID programs. + +=back + =head1 RETURN VALUES Neither OPENSSL_config() nor OPENSSL_no_config() return a value. @@ -64,7 +75,7 @@ deprecated in OpenSSL 1.1.0 by OPENSSL_init_crypto(). =head1 COPYRIGHT -Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2004-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/OPENSSL_fork_prepare.pod b/doc/man3/OPENSSL_fork_prepare.pod index eda83603..7c4eb1db 100644 --- a/doc/man3/OPENSSL_fork_prepare.pod +++ b/doc/man3/OPENSSL_fork_prepare.pod @@ -30,7 +30,7 @@ such as Linux that have both functions will normally not need to call these functions as the OpenSSL library will do so automatically. L will register these functions with the appropriate -hander, when the B flag is used. For other +handler, when the B flag is used. For other applications, these functions can be called directly. They should be used according to the calling sequence described by the pthreads_atfork(3) documentation, which is summarized here. OPENSSL_fork_prepare() should diff --git a/doc/man3/OPENSSL_ia32cap.pod b/doc/man3/OPENSSL_ia32cap.pod index 93ee30ae..08a18116 100644 --- a/doc/man3/OPENSSL_ia32cap.pod +++ b/doc/man3/OPENSSL_ia32cap.pod @@ -124,7 +124,7 @@ extensions. It should be noted that whether or not some of the most "fancy" extension code paths are actually assembled depends on current assembler version. Base minimum of AES-NI/PCLMULQDQ, SSSE3 and SHA extension code -paths are always assembled. Besides that, minimum assembler version +paths are always assembled. Apart from that, minimum assembler version requirements are summarized in below table: Extension | GNU as | nasm | llvm @@ -134,7 +134,7 @@ requirements are summarized in below table: ADCX/ADOX | 2.23 | 2.10 | 3.3 AVX512 | 2.25 | 2.11.8 | see NOTES AVX512IFMA | 2.26 | 2.11.8 | see NOTES - VAES | n/a | n/a | + VAES | 2.30 | 2.13.3 | =head1 NOTES diff --git a/doc/man3/OPENSSL_init_crypto.pod b/doc/man3/OPENSSL_init_crypto.pod index ce7497e1..a259539f 100644 --- a/doc/man3/OPENSSL_init_crypto.pod +++ b/doc/man3/OPENSSL_init_crypto.pod @@ -95,8 +95,10 @@ B will be ignored. =item OPENSSL_INIT_LOAD_CONFIG With this option an OpenSSL configuration file will be automatically loaded and -used by calling OPENSSL_config(). This is not a default option. -See the description of OPENSSL_INIT_new(), below. +used by calling OPENSSL_config(). This is not a default option for libcrypto. +From OpenSSL 1.1.1 this is a default option for libssl (see +L for further details about libssl initialisation). See the +description of OPENSSL_INIT_new(), below. =item OPENSSL_INIT_NO_LOAD_CONFIG @@ -139,15 +141,15 @@ CAPI engine (if available). This not a default option. With this option the library will automatically load and initialise the padlock engine (if available). This not a default option. -=item OPENSSL_INIT_ENGINE_DASYNC +=item OPENSSL_INIT_ENGINE_AFALG With this option the library will automatically load and initialise the -DASYNC engine. This not a default option. +AFALG engine. This not a default option. =item OPENSSL_INIT_ENGINE_ALL_BUILTIN With this option the library will automatically load and initialise all the -built in engines listed above with the exception of the openssl and dasync +built in engines listed above with the exception of the openssl and afalg engines. This not a default option. =item OPENSSL_INIT_ATFORK @@ -195,10 +197,10 @@ resources should be freed at an earlier time, or under the circumstances described in the NOTES section below. The B flag will load a default configuration -file. To specify a different file, an B must -be created and used. The routines -OPENSSL_INIT_new() and OPENSSL_INIT_set_config_appname() can be used to -allocate the object and set the application name, and then the +file. For optional configuration file settings, an B +must be created and used. +The routines OPENSSL_init_new() and OPENSSL_INIT_set_config_appname() can +be used to allocate the object and set the application name, and then the object can be released with OPENSSL_INIT_free() when done. =head1 NOTES @@ -240,7 +242,7 @@ and OPENSSL_INIT_free() functions were added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/OPENSSL_malloc.pod b/doc/man3/OPENSSL_malloc.pod index 2d48ae2e..049a1255 100644 --- a/doc/man3/OPENSSL_malloc.pod +++ b/doc/man3/OPENSSL_malloc.pod @@ -78,10 +78,10 @@ OPENSSL_MALLOC_FD int CRYPTO_mem_debug_push(const char *info, const char *file, int line); int CRYPTO_mem_debug_pop(void); - void CRYPTO_mem_leaks(BIO *b); - void CRYPTO_mem_leaks_fp(FILE *fp); - void CRYPTO_mem_leaks_cb(int (*cb)(const char *str, size_t len, void *u), - void *u); + int CRYPTO_mem_leaks(BIO *b); + int CRYPTO_mem_leaks_fp(FILE *fp); + int CRYPTO_mem_leaks_cb(int (*cb)(const char *str, size_t len, void *u), + void *u); =head1 DESCRIPTION @@ -216,8 +216,8 @@ OPENSSL_malloc_init(), OPENSSL_free(), OPENSSL_clear_free() CRYPTO_free(), CRYPTO_clear_free() and CRYPTO_get_mem_functions() return no value. -CRYPTO_mem_leaks() and CRYPTO_mem_leaks_fp() return 1 if there -are no leaks, 0 if there are leaks and -1 if an error occurred. +CRYPTO_mem_leaks(), CRYPTO_mem_leaks_fp() and CRYPTO_mem_leaks_cb() return 1 if +there are no leaks, 0 if there are leaks and -1 if an error occurred. OPENSSL_malloc(), OPENSSL_zalloc(), OPENSSL_realloc(), OPENSSL_clear_realloc(), @@ -247,7 +247,7 @@ only, say, the malloc() implementation is outright dangerous.> =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/OSSL_STORE_open.pod b/doc/man3/OSSL_STORE_open.pod index 92b2493f..b1467f41 100644 --- a/doc/man3/OSSL_STORE_open.pod +++ b/doc/man3/OSSL_STORE_open.pod @@ -112,6 +112,14 @@ URI, or if it's a different error (such as memory allocation failures); if the URI was parsable but the scheme unregistered, the top error will have the reason C. +These functions make no direct assumption regarding the pass phrase received +from the password callback. +The loaders may make assumptions, however. +For example, the B scheme loader inherits the assumptions made by +OpenSSL functionality that handles the different file types; this is mostly +relevant for PKCS#12 objects. +See L for further information. + =head1 RETURN VALUES OSSL_STORE_open() returns a pointer to a B on success, or @@ -132,7 +140,8 @@ OSSL_STORE_ctrl() and OSSL_STORE_close() returns 1 on success, or 0 on failure. =head1 SEE ALSO -L, L, L +L, L, L, +L =head1 HISTORY @@ -142,7 +151,7 @@ were added to OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/PEM_bytes_read_bio.pod b/doc/man3/PEM_bytes_read_bio.pod index d16ccd8c..cd05582a 100644 --- a/doc/man3/PEM_bytes_read_bio.pod +++ b/doc/man3/PEM_bytes_read_bio.pod @@ -55,6 +55,10 @@ use of BIO_s_file() indicates the use of the operating system stdio functionality, which includes buffering as a feature; BIO_s_fd() is likely to be more appropriate in such cases. +These functions make no assumption regarding the pass phrase received from the +password callback. +It will simply be treated as a byte sequence. + =head1 RETURN VALUES PEM_bytes_read_bio() and PEM_bytes_read_bio_secmem() return 1 for success or @@ -63,7 +67,8 @@ PEM_bytes_read_bio() and PEM_bytes_read_bio_secmem() return 1 for success or =head1 SEE ALSO L, -L +L, +L =head1 HISTORY diff --git a/doc/man3/PEM_read.pod b/doc/man3/PEM_read.pod index 66cbc7d2..2a017c67 100644 --- a/doc/man3/PEM_read.pod +++ b/doc/man3/PEM_read.pod @@ -110,10 +110,15 @@ Instead, private keys should be stored in PKCS#8 form, with a strong PKCS#5 v2.0 PBE. See L and L. +PEM_do_header() makes no assumption regarding the pass phrase received from the +password callback. +It will simply be treated as a byte sequence. + =head1 SEE ALSO L, L, -L. +L, +L =head1 COPYRIGHT diff --git a/doc/man3/PEM_read_CMS.pod b/doc/man3/PEM_read_CMS.pod index 65a114d6..0c22618b 100644 --- a/doc/man3/PEM_read_CMS.pod +++ b/doc/man3/PEM_read_CMS.pod @@ -73,6 +73,12 @@ PEM_write_TYPE() writes the PEM encoding of the object B to the file B. PEM_write_bio_TYPE() similarly writes to the BIO B. +=head1 NOTES + +These functions make no assumption regarding the pass phrase received from the +password callback. +It will simply be treated as a byte sequence. + =head1 RETURN VALUES PEM_read_TYPE() and PEM_read_bio_TYPE() return a pointer to an allocated @@ -83,7 +89,8 @@ or zero on error. =head1 SEE ALSO -L +L, +L =head1 COPYRIGHT diff --git a/doc/man3/PEM_read_bio_PrivateKey.pod b/doc/man3/PEM_read_bio_PrivateKey.pod index 4ff5b2d3..9f62140c 100644 --- a/doc/man3/PEM_read_bio_PrivateKey.pod +++ b/doc/man3/PEM_read_bio_PrivateKey.pod @@ -386,6 +386,10 @@ this: this is a bug because an attempt will be made to reuse the data at B which is an uninitialised pointer. +These functions make no assumption regarding the pass phrase received from the +password callback. +It will simply be treated as a byte sequence. + =head1 PEM ENCRYPTION FORMAT These old B routines use a non standard technique for encryption. @@ -465,7 +469,8 @@ as they will be formally deprecated in a future releases. =head1 SEE ALSO -L, L +L, L, +L =head1 COPYRIGHT diff --git a/doc/man3/PKCS12_create.pod b/doc/man3/PKCS12_create.pod index 37b53be8..0dcd2ab2 100644 --- a/doc/man3/PKCS12_create.pod +++ b/doc/man3/PKCS12_create.pod @@ -60,13 +60,18 @@ should be used. B can be set to -1 and the MAC will then be omitted entirely. +PKCS12_create() makes assumptions regarding the encoding of the given pass +phrase. +See L for more information. + =head1 RETURN VALUES PKCS12_create() returns a valid B structure or NULL if an error occurred. =head1 SEE ALSO -L +L, +L =head1 COPYRIGHT diff --git a/doc/man3/PKCS12_newpass.pod b/doc/man3/PKCS12_newpass.pod index 58207f5e..c27c6528 100644 --- a/doc/man3/PKCS12_newpass.pod +++ b/doc/man3/PKCS12_newpass.pod @@ -102,7 +102,8 @@ this function. =head1 SEE ALSO -L, L +L, L, +L =head1 COPYRIGHT diff --git a/doc/man3/PKCS12_parse.pod b/doc/man3/PKCS12_parse.pod index c03c371a..d61b1726 100644 --- a/doc/man3/PKCS12_parse.pod +++ b/doc/man3/PKCS12_parse.pod @@ -57,7 +57,8 @@ Attributes currently cannot be stored in the private key B structure. =head1 SEE ALSO -L +L, +L =head1 COPYRIGHT diff --git a/doc/man3/PKCS5_PBKDF2_HMAC.pod b/doc/man3/PKCS5_PBKDF2_HMAC.pod index e5d1689e..174831da 100644 --- a/doc/man3/PKCS5_PBKDF2_HMAC.pod +++ b/doc/man3/PKCS5_PBKDF2_HMAC.pod @@ -52,6 +52,9 @@ Increasing the B parameter slows down the algorithm which makes it harder for an attacker to perform a brute force attack using a large number of candidate passwords. +These functions make no assumption regarding the given password. +It will simply be treated as a byte sequence. + =head1 RETURN VALUES PKCS5_PBKDF2_HMAC() and PBKCS5_PBKDF2_HMAC_SHA1() return 1 on success or 0 on error. @@ -59,7 +62,8 @@ PKCS5_PBKDF2_HMAC() and PBKCS5_PBKDF2_HMAC_SHA1() return 1 on success or 0 on er =head1 SEE ALSO L, L, -L +L, +L =head1 COPYRIGHT diff --git a/doc/man3/RAND_DRBG_generate.pod b/doc/man3/RAND_DRBG_generate.pod new file mode 100644 index 00000000..b39ee93f --- /dev/null +++ b/doc/man3/RAND_DRBG_generate.pod @@ -0,0 +1,88 @@ +=pod + +=head1 NAME + +RAND_DRBG_generate, +RAND_DRBG_bytes +- generate random bytes using the given drbg instance + +=head1 SYNOPSIS + + #include + + int RAND_DRBG_generate(RAND_DRBG *drbg, + unsigned char *out, size_t outlen, + int prediction_resistance, + const unsigned char *adin, size_t adinlen); + + int RAND_DRBG_bytes(RAND_DRBG *drbg, + unsigned char *out, size_t outlen); + + +=head1 DESCRIPTION + +RAND_DRBG_generate() generates B random bytes using the given +DRBG instance B and stores them in the buffer at B. + +Before generating the output, the DRBG instance checks whether the maximum +number of generate requests (I) or the maximum timespan +(I) since its last seeding have been reached. +If this is the case, the DRBG reseeds automatically. +Additionally, an immediate reseeding can be requested by setting the +B flag to 1. See NOTES section for more details. + +The caller can optionally provide additional data to be used for reseeding +by passing a pointer B to a buffer of length B. +This additional data is mixed into the internal state of the random +generator but does not contribute to the entropy count. +The additional data can be omitted by setting B to NULL and +B to 0; + +RAND_DRBG_bytes() generates B random bytes using the given +DRBG instance B and stores them in the buffer at B. +This function is a wrapper around the RAND_DRBG_generate() call, +which collects some additional data from low entropy sources +(e.g., a high resolution timer) and calls +RAND_DRBG_generate(drbg, out, outlen, 0, adin, adinlen). + + +=head1 RETURN VALUES + +RAND_DRBG_generate() and RAND_DRBG_bytes() return 1 on success, +and 0 on failure. + +=head1 NOTES + +The I and I of the B are set to +reasonable default values, which in general do not have to be adjusted. +If necessary, they can be changed using L +and L, respectively. + +A request for prediction resistance can only be satisfied by pulling fresh +entropy from one of the approved entropy sources listed in section 5.5.2 of +[NIST SP 800-90C]. +Since the default DRBG implementation does not have access to such an approved +entropy source, a request for prediction resistance will always fail. +In other words, prediction resistance is currently not supported yet by the DRBG. + +=head1 HISTORY + +The RAND_DRBG functions were added in OpenSSL 1.1.1. + +=head1 SEE ALSO + +L, +L, +L, +L + +=head1 COPYRIGHT + +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/RAND_DRBG_get0_master.pod b/doc/man3/RAND_DRBG_get0_master.pod new file mode 100644 index 00000000..c958bf20 --- /dev/null +++ b/doc/man3/RAND_DRBG_get0_master.pod @@ -0,0 +1,80 @@ +=pod + +=head1 NAME + +RAND_DRBG_get0_master, +RAND_DRBG_get0_public, +RAND_DRBG_get0_private +- get access to the global RAND_DRBG instances + +=head1 SYNOPSIS + + #include + + RAND_DRBG *RAND_DRBG_get0_master(void); + RAND_DRBG *RAND_DRBG_get0_public(void); + RAND_DRBG *RAND_DRBG_get0_private(void); + + +=head1 DESCRIPTION + +The default RAND API implementation (RAND_OpenSSL()) utilizes three +shared DRBG instances which are accessed via the RAND API: + +The and DRBG are thread-local instances, which are used +by RAND_bytes() and RAND_priv_bytes(), respectively. +The DRBG is a global instance, which is not intended to be used +directly, but is used internally to reseed the other two instances. + +These functions here provide access to the shared DRBG instances. + +=head1 RETURN VALUES + +RAND_DRBG_get0_master() returns a pointer to the DRBG instance. + +RAND_DRBG_get0_public() returns a pointer to the DRBG instance. + +RAND_DRBG_get0_private() returns a pointer to the DRBG instance. + + +=head1 NOTES + +It is not thread-safe to access the DRBG instance. +The and DRBG instance can be accessed safely, because +they are thread-local. Note however, that changes to these two instances +apply only to the current thread. + +For that reason it is recommended not to change the settings of these +three instances directly. +Instead, an application should change the default settings for new DRBG instances +at initialization time, before creating additional threads. + +During initialization, it is possible to change the reseed interval +and reseed time interval. +It is also possible to exchange the reseeding callbacks entirely. + + +=head1 HISTORY + +The RAND_DRBG functions were added in OpenSSL 1.1.1. + +=head1 SEE ALSO + +L, +L, +L, +L, +L, +L, +L + +=head1 COPYRIGHT + +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/RAND_DRBG_new.pod b/doc/man3/RAND_DRBG_new.pod new file mode 100644 index 00000000..dcd7a944 --- /dev/null +++ b/doc/man3/RAND_DRBG_new.pod @@ -0,0 +1,127 @@ +=pod + +=head1 NAME + +RAND_DRBG_new, +RAND_DRBG_secure_new, +RAND_DRBG_set, +RAND_DRBG_set_defaults, +RAND_DRBG_instantiate, +RAND_DRBG_uninstantiate, +RAND_DRBG_free +- initialize and cleanup a RAND_DRBG instance + +=head1 SYNOPSIS + + #include + + + RAND_DRBG *RAND_DRBG_new(int type, + unsigned int flags, + RAND_DRBG *parent); + + RAND_DRBG *RAND_DRBG_secure_new(int type, + unsigned int flags, + RAND_DRBG *parent); + + int RAND_DRBG_set(RAND_DRBG *drbg, + int type, unsigned int flags); + + int RAND_DRBG_set_defaults(int type, unsigned int flags); + + int RAND_DRBG_instantiate(RAND_DRBG *drbg, + const unsigned char *pers, size_t perslen); + + int RAND_DRBG_uninstantiate(RAND_DRBG *drbg); + + void RAND_DRBG_free(RAND_DRBG *drbg); + + +=head1 DESCRIPTION + +RAND_DRBG_new() and RAND_DRBG_secure_new() +create a new DRBG instance of the given B, allocated from the heap resp. +the secure heap +(using OPENSSL_zalloc() resp. OPENSSL_secure_zalloc()). + +RAND_DRBG_set() initializes the B with the given B and B. + +RAND_DRBG_set_defaults() sets the default B and B for new DRBG +instances. + +Currently, all DRBG types are based on AES-CTR, so B can be one of the +following values: NID_aes_128_ctr, NID_aes_192_ctr, NID_aes_256_ctr. +Before the DRBG can be used to generate random bits, it is necessary to set +its type and to instantiate it. + +The optional B argument specifies a set of bit flags which can be +joined using the | operator. Currently, the only flag is +RAND_DRBG_FLAG_CTR_NO_DF, which disables the use of a the derivation function +ctr_df. For an explanation, see [NIST SP 800-90A Rev. 1]. + +If a B instance is specified then this will be used instead of +the default entropy source for reseeding the B. It is said that the +B is I to its B. +For more information, see the NOTES section. + + +RAND_DRBG_instantiate() +seeds the B instance using random input from trusted entropy sources. +Optionally, a personalization string B of length B can be +specified. +To omit the personalization string, set B=NULL and B=0; + +RAND_DRBG_uninstantiate() +clears the internal state of the B and puts it back in the +uninstantiated state. + +=head1 RETURN VALUES + + +RAND_DRBG_new() and RAND_DRBG_secure_new() return a pointer to a DRBG +instance allocated on the heap, resp. secure heap. + +RAND_DRBG_set(), +RAND_DRBG_instantiate(), and +RAND_DRBG_uninstantiate() +return 1 on success, and 0 on failure. + +RAND_DRBG_free() does not return a value. + +=head1 NOTES + +The DRBG design supports I, which means that a DRBG instance can +use another B DRBG instance instead of the default entropy source +to obtain fresh random input for reseeding, provided that B DRBG +instance was properly instantiated, either from a trusted entropy source, +or from yet another parent DRBG instance. +For a detailed description of the reseeding process, see L. + +The default DRBG type and flags are applied only during creation of a DRBG +instance. +To ensure that they are applied to the global and thread-local DRBG instances +(, resp. and ), it is necessary to call +RAND_DRBG_set_defaults() before creating any thread and before calling any +cryptographic routines that obtain random data directly or indirectly. + +=head1 HISTORY + +The RAND_DRBG functions were added in OpenSSL 1.1.1. + +=head1 SEE ALSO + +L, +L, +L, +L + +=head1 COPYRIGHT + +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/RAND_DRBG_reseed.pod b/doc/man3/RAND_DRBG_reseed.pod new file mode 100644 index 00000000..da3a40be --- /dev/null +++ b/doc/man3/RAND_DRBG_reseed.pod @@ -0,0 +1,111 @@ +=pod + +=head1 NAME + +RAND_DRBG_reseed, +RAND_DRBG_set_reseed_interval, +RAND_DRBG_set_reseed_time_interval, +RAND_DRBG_set_reseed_defaults +- reseed a RAND_DRBG instance + +=head1 SYNOPSIS + + #include + + int RAND_DRBG_reseed(RAND_DRBG *drbg, + const unsigned char *adin, size_t adinlen); + + int RAND_DRBG_set_reseed_interval(RAND_DRBG *drbg, + unsigned int interval); + + int RAND_DRBG_set_reseed_time_interval(RAND_DRBG *drbg, + time_t interval); + + int RAND_DRBG_set_reseed_defaults( + unsigned int master_reseed_interval, + unsigned int slave_reseed_interval, + time_t master_reseed_time_interval, + time_t slave_reseed_time_interval + ); + + +=head1 DESCRIPTION + +RAND_DRBG_reseed() +reseeds the given B, obtaining entropy input from its entropy source +and mixing in the specified additional data provided in the buffer B +of length B. +The additional data can be omitted by setting B to NULL and B +to 0. + +RAND_DRBG_set_reseed_interval() +sets the reseed interval of the B, which is the maximum allowed number +of generate requests between consecutive reseedings. +If B > 0, then the B will reseed automatically whenever the +number of generate requests since its last seeding exceeds the given reseed +interval. +If B == 0, then this feature is disabled. + + +RAND_DRBG_set_reseed_time_interval() +sets the reseed time interval of the B, which is the maximum allowed +number of seconds between consecutive reseedings. +If B > 0, then the B will reseed automatically whenever the +elapsed time since its last reseeding exceeds the given reseed time interval. +If B == 0, then this feature is disabled. + +RAND_DRBG_set_reseed_defaults() sets the default values for the reseed interval +(B and B) +and the reseed time interval +(B and B) +of DRBG instances. +The default values are set independently for master DRBG instances (which don't +have a parent) and slave DRBG instances (which are chained to a parent DRBG). + +=head1 RETURN VALUES + +RAND_DRBG_reseed(), +RAND_DRBG_set_reseed_interval(), and +RAND_DRBG_set_reseed_time_interval(), +return 1 on success, 0 on failure. + + +=head1 NOTES + +The default OpenSSL random generator is already set up for automatic reseeding, +so in general it is not necessary to reseed it explicitly, or to modify +its reseeding thresholds. + +Normally, the entropy input for seeding a DRBG is either obtained from a +trusted os entropy source or from a parent DRBG instance, which was seeded +(directly or indirectly) from a trusted os entropy source. +In exceptional cases it is possible to replace the reseeding mechanism entirely +by providing application defined callbacks using RAND_DRBG_set_callbacks(). + +The reseeding default values are applied only during creation of a DRBG instance. +To ensure that they are applied to the global and thread-local DRBG instances +(, resp. and ), it is necessary to call +RAND_DRBG_set_reseed_defaults() before creating any thread and before calling any + cryptographic routines that obtain random data directly or indirectly. + +=head1 HISTORY + +The RAND_DRBG functions were added in OpenSSL 1.1.1. + +=head1 SEE ALSO + +L, +L, +L. +L + +=head1 COPYRIGHT + +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/RAND_DRBG_set_callbacks.pod b/doc/man3/RAND_DRBG_set_callbacks.pod new file mode 100644 index 00000000..a927d6a7 --- /dev/null +++ b/doc/man3/RAND_DRBG_set_callbacks.pod @@ -0,0 +1,147 @@ +=pod + +=head1 NAME + +RAND_DRBG_set_callbacks, +RAND_DRBG_get_entropy_fn, +RAND_DRBG_cleanup_entropy_fn, +RAND_DRBG_get_nonce_fn, +RAND_DRBG_cleanup_nonce_fn +- set callbacks for reseeding + +=head1 SYNOPSIS + + #include + + + int RAND_DRBG_set_callbacks(RAND_DRBG *drbg, + RAND_DRBG_get_entropy_fn get_entropy, + RAND_DRBG_cleanup_entropy_fn cleanup_entropy, + RAND_DRBG_get_nonce_fn get_nonce, + RAND_DRBG_cleanup_nonce_fn cleanup_nonce); + + +=head2 Callback Functions + + typedef size_t (*RAND_DRBG_get_entropy_fn)( + RAND_DRBG *drbg, + unsigned char **pout, + int entropy, + size_t min_len, size_t max_len, + int prediction_resistance); + + typedef void (*RAND_DRBG_cleanup_entropy_fn)( + RAND_DRBG *drbg, + unsigned char *out, size_t outlen); + + typedef size_t (*RAND_DRBG_get_nonce_fn)( + RAND_DRBG *drbg, + unsigned char **pout, + int entropy, + size_t min_len, size_t max_len); + + typedef void (*RAND_DRBG_cleanup_nonce_fn)( + RAND_DRBG *drbg, + unsigned char *out, size_t outlen); + + + +=head1 DESCRIPTION + +RAND_DRBG_set_callbacks() sets the callbacks for obtaining fresh entropy and +the nonce when reseeding the given B. +The callback functions are implemented and provided by the caller. +Their parameter lists need to match the function prototypes above. + +Setting the callbacks is allowed only if the DRBG has not been initialized yet. +Otherwise, the operation will fail. +To change the settings for one of the three shared DRBGs it is necessary to call +RAND_DRBG_uninstantiate() first. + +The B() callback is called by the B when it requests fresh +random input. +It is expected that the callback allocates and fills a random buffer of size +B <= size <= B (in bytes) which contains at least B +bits of randomness. +The B flag indicates whether the reseeding was +triggered by a prediction resistance request. + +The buffer's address is to be returned in *B and the number of collected +randomness bytes as return value. + +If the callback fails to acquire at least B bits of randomness, +it must indicate an error by returning a buffer length of 0. + +If B was requested and the random source of the DRBG +does not satisfy the conditions requested by [NIST SP 800-90C], then +it must also indicate an error by returning a buffer length of 0. +See NOTES section for more details. + +The B() callback is called from the B to to clear and +free the buffer allocated previously by get_entropy(). +The values B and B are the random buffer's address and length, +as returned by the get_entropy() callback. + +The B() and B() callbacks are used to obtain a nonce +and free it again. A nonce is only required for instantiation (not for reseeding) +and only in the case where the DRBG uses a derivation function. +The callbacks are analogous to get_entropy() and cleanup_entropy(), +except for the missing prediction_resistance flag. + +If the derivation function is disabled, then no nonce is used for instantiation, +and the B() and B() callbacks can be omitted by +setting them to NULL. + + +=head1 RETURN VALUES + +RAND_DRBG_set_callbacks() return 1 on success, and 0 on failure + +=head1 NOTES + +It is important that B() and B() clear the buffer +contents safely before freeing it, in order not to leave sensitive information +about the DRBG's state in memory. + +A request for prediction resistance can only be satisfied by pulling fresh +entropy from one of the approved entropy sources listed in section 5.5.2 of +[NIST SP 800-90C]. +Since the default implementation of the get_entropy callback does not have access +to such an approved entropy source, a request for prediction resistance will +always fail. +In other words, prediction resistance is currently not supported yet by the DRBG. + +The derivation function is disabled during initialization by calling the +RAND_DRBG_set() function with the RAND_DRBG_FLAG_CTR_NO_DF flag. +For more information on the derivation function and when it can be omitted, +see [NIST SP 800-90A Rev. 1]. Roughly speeking it can be omitted if the random +source has "full entropy", i.e., contains 8 bits of entropy per byte. + +Even if a nonce is required, the B() and B() +callbacks can be omitted by setting them to NULL. +In this case the DRBG will automatically request an extra amount of entropy +(using the B() and B() callbacks) which it will +utilize for the nonce, following the recommendations of [NIST SP 800-90A Rev. 1], +section 8.6.7. + + +=head1 HISTORY + +The RAND_DRBG functions were added in OpenSSL 1.1.1. + +=head1 SEE ALSO + +L, +L, +L + +=head1 COPYRIGHT + +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/RAND_DRBG_set_ex_data.pod b/doc/man3/RAND_DRBG_set_ex_data.pod new file mode 100644 index 00000000..22b73325 --- /dev/null +++ b/doc/man3/RAND_DRBG_set_ex_data.pod @@ -0,0 +1,68 @@ +=pod + +=head1 NAME + +RAND_DRBG_set_ex_data, +RAND_DRBG_get_ex_data, +RAND_DRBG_get_ex_new_index +- store and retrieve extra data from the DRBG instance + +=head1 SYNOPSIS + + #include + + int RAND_DRBG_set_ex_data(RAND_DRBG *drbg, int idx, void *data); + + void *RAND_DRBG_get_ex_data(const RAND_DRBG *drbg, int idx); + + int RAND_DRBG_get_ex_new_index(long argl, void *argp, + CRYPTO_EX_new *new_func, + CRYPTO_EX_dup *dup_func, + CRYPTO_EX_free *free_func); + + + +=head1 DESCRIPTION + +RAND_DRBG_set_ex_data() enables an application to store arbitrary application +specific data B in a RAND_DRBG instance B. The index B should +be a value previously returned from a call to RAND_DRBG_get_ex_new_index(). + +RAND_DRBG_get_ex_data() retrieves application specific data previously stored +in an RAND_DRBG instance B. The B value should be the same as that +used when originally storing the data. + +For more detailed information see L and +L which implement these functions and +L for generating a unique index. + +=head1 RETURN VALUES + +RAND_DRBG_set_ex_data() returns 1 for success or 0 for failure. + +RAND_DRBG_get_ex_data() returns the previously stored value or NULL on +failure. NULL may also be a valid value. + + +=head1 NOTES + +RAND_DRBG_get_ex_new_index(...) is implemented as a macro and equivalent to +CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_DRBG,...). + +=head1 SEE ALSO + +L, +L, +L, +L + +=head1 COPYRIGHT + +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/RAND_add.pod b/doc/man3/RAND_add.pod index 62048e67..1b06d1be 100644 --- a/doc/man3/RAND_add.pod +++ b/doc/man3/RAND_add.pod @@ -24,43 +24,42 @@ Deprecated: =head1 DESCRIPTION -Random numbers are a vital part of cryptography, including key generation, -creating salts, etc., and software-based -generators must be "seeded" with external randomness before they can be -used as a cryptographically-secure pseudo-random number generator (CSPRNG). -The availability of common hardware with special instructions and -modern operating systems, which may use items such as interrupt jitter -and network packet timings, can be reasonable sources of seeding material. +These functions can be used to seed the random generator and to check its +seeded state. +In general, manual (re-)seeding of the default OpenSSL random generator +(L) is not necessary (but allowed), since it does (re-)seed +itself automatically using trusted system entropy sources. +This holds unless the default RAND_METHOD has been replaced or OpenSSL was +built with automatic reseeding disabled, see L for more details. -RAND_status() indicates whether or not the CSPRNG has been sufficiently -seeded. If not, functions such as RAND_bytes(3) will fail. +RAND_status() indicates whether or not the random generator has been sufficiently +seeded. If not, functions such as L will fail. -RAND_poll() uses the system's capabilities to seed the CSPRNG using +RAND_poll() uses the system's capabilities to seed the random generator using random input obtained from polling various trusted entropy sources. -The default choice of the entropy source can be modified at build time -using the --with-rand-seed configure option, see also the B section. -A summary of the configure options can be displayed with the OpenSSL -L command. +The default choice of the entropy source can be modified at build time, +see L for more details. -RAND_add() mixes the B bytes at B into the PRNG state. +RAND_add() mixes the B bytes at B into the internal state +of the random generator. +This function will not normally be needed, as mentioned above. The B argument is an estimate of how much randomness is contained in B, in bytes, and should be a number between zero and B. Details about sources of randomness and how to estimate their randomness -can be found in the literature; for example NIST SP 800-90B. -The content of B cannot be recovered from subsequent CSPRNG output. -This function will not normally be needed, as RAND_poll() should have been -configured to do the appropriate seeding for the local platform. -Applications that need to keep random state in an external file should -use L. +can be found in the literature; for example [NIST SP 800-90B]. +The content of B cannot be recovered from subsequent random generator output. +Applications that intend to save and restore random state in an external file +should consider using L instead. RAND_seed() is equivalent to RAND_add() with B set to B. -RAND_event() and RAND_screen() are equivalent to RAND_poll(). +RAND_event() and RAND_screen() are equivalent to RAND_poll() and exist +for compatibility reasons only. See HISTORY section below. =head1 RETURN VALUES -RAND_status() returns 1 if the CSPRNG has been seeded +RAND_status() returns 1 if the random generator has been seeded with enough data, 0 otherwise. RAND_poll() returns 1 if it generated seed data, 0 otherwise. @@ -69,72 +68,6 @@ RAND_event() returns RAND_status(). The other functions do not return values. -=head1 NOTES - -The new OpenSSL DRBG has some peculiarities which need to be taken -into account when it is selected as the default OpenSSL CSPRNG, i.e., -when RAND_get_rand_method() == RAND_OpenSSL(). -This applies in particular to the way reseeding is done by the DRBG: - -=over 2 - -=item * - -The DRBG seeds itself automatically, pulling random input from trusted -entropy sources. -Automatic reseeding occurs after a predefined number of generate requests. -The selection of the trusted entropy sources is configured at build -time using the --with-rand-seed option. - -=item * - -The DRBG distinguishes two different types of random input: -'entropy', which comes from a trusted source, and 'additional input', -which can optionally be added by the user and is considered untrusted. - -=back - -Automatic seeding can be disabled using the --with-rand-seed=none option. - -=head2 DRBG with automatic seeding enabled - -Calling RAND_poll() or RAND_add() is not necessary, because the DRBG -polls the entropy source automatically. -However, both calls are permitted, and do reseed the RNG. - -RAND_add() can be used to add both kinds of random input, depending on the -value of the B argument: - -=over 4 - -=item randomness == 0: - -The random bytes are mixed as additional input into the current state of -the DRBG. -Mixing in additional input is not considered a full reseeding, hence the -reseed counter is not reset. - - -=item randomness > 0: - -The random bytes are used as entropy input for a full reseeding -(resp. reinstantiation) if the DRBG is instantiated -(resp. uninstantiated or in an error state). -A reseeding requires 16 bytes (128 bits) of randomness. -It is possible to provide less randomness than required. -In this case the missing randomness will be obtained by pulling random input -from the trusted entropy sources. - -=back - -=head2 DRBG with automatic seeding disabled (--with-rand-seed=none) - -Calling RAND_poll() will always fail. - -RAND_add() needs to be called for initial seeding and periodic reseeding. -At least 16 bytes (128 bits) of randomness have to be provided, otherwise -the (re-)seeding of the DRBG will fail. - =head1 HISTORY RAND_event() and RAND_screen() were deprecated in OpenSSL 1.1.0 and should @@ -142,12 +75,14 @@ not be used. =head1 SEE ALSO -L, L, -L +L, +L, +L, +L =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/RAND_bytes.pod b/doc/man3/RAND_bytes.pod index c3e6aef3..284b9dbe 100644 --- a/doc/man3/RAND_bytes.pod +++ b/doc/man3/RAND_bytes.pod @@ -20,7 +20,7 @@ Deprecated: =head1 DESCRIPTION RAND_bytes() puts B cryptographically strong pseudo-random bytes -into B. An error occurs if the PRNG has not been seeded with +into B. An error occurs if the CSPRNG has not been seeded with enough randomness to ensure an unpredictable byte sequence. RAND_priv_bytes() has the same semantics as RAND_bytes(). It is intended to @@ -30,7 +30,7 @@ a compromise of the global generator will not affect such key generation. =head1 RETURN VALUES -RAND_bytes() nad RAND_priv_bytes() +RAND_bytes() and RAND_priv_bytes() return 1 on success, -1 if not supported by the current RAND method, or 0 on other failure. The error code can be obtained by L. @@ -41,12 +41,14 @@ RAND_pseudo_bytes() was deprecated in OpenSSL 1.1.0; use RAND_bytes() instead. =head1 SEE ALSO -L, L, -L +L, +L, +L, +L =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/RAND_cleanup.pod b/doc/man3/RAND_cleanup.pod index 03a0798f..3859ce34 100644 --- a/doc/man3/RAND_cleanup.pod +++ b/doc/man3/RAND_cleanup.pod @@ -28,6 +28,10 @@ RAND_cleanup() returns no value. RAND_cleanup() was deprecated in OpenSSL 1.1.0; do not use it. See L +=head1 SEE ALSO + +L + =head1 COPYRIGHT Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. diff --git a/doc/man3/RAND_egd.pod b/doc/man3/RAND_egd.pod index ebbaf303..2b975ebd 100644 --- a/doc/man3/RAND_egd.pod +++ b/doc/man3/RAND_egd.pod @@ -45,7 +45,9 @@ success, or -1 if the connection failed. =head1 SEE ALSO -L, L +L, +L, +L =head1 COPYRIGHT diff --git a/doc/man3/RAND_load_file.pod b/doc/man3/RAND_load_file.pod index 2fe932fd..24f8fdcf 100644 --- a/doc/man3/RAND_load_file.pod +++ b/doc/man3/RAND_load_file.pod @@ -24,6 +24,9 @@ Do not load the same file multiple times unless its contents have been updated by RAND_write_file() between reads. Also, note that B should be adequately protected so that an attacker cannot replace or examine the contents. +If B is not a regular file, then user is considered to be +responsible for any side effects, e.g. non-anticipated blocking or +capture of controlling terminal. RAND_write_file() writes a number of random bytes (currently 128) to file B which can be used to initialize the PRNG by calling @@ -68,18 +71,13 @@ error. =head1 SEE ALSO -L, L - -=head1 HISTORY - -A comment in the source since at least OpenSSL 1.0.2 said that -RAND_load_file() and RAND_write_file() were only intended for regular files, -and not really device special files such as C. This was -poorly enforced before OpenSSL 1.1.1. +L, +L, +L =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/RAND_set_rand_method.pod b/doc/man3/RAND_set_rand_method.pod index 70c1b23c..d4b65b91 100644 --- a/doc/man3/RAND_set_rand_method.pod +++ b/doc/man3/RAND_set_rand_method.pod @@ -19,8 +19,7 @@ RAND_set_rand_method, RAND_get_rand_method, RAND_OpenSSL - select RAND method A B specifies the functions that OpenSSL uses for random number generation. -Initially, the default B is the OpenSSL internal implementation, -as returned by RAND_OpenSSL(). +RAND_OpenSSL() returns the default B implementation by OpenSSL. This implementation ensures that the PRNG state is unique for each thread. If an B is loaded that provides the RAND API, however, it will @@ -54,11 +53,13 @@ RAND_OpenSSL() return pointers to the respective methods. =head1 SEE ALSO -L, L +L, +L, +L =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/RSA_meth_new.pod b/doc/man3/RSA_meth_new.pod index fde1a41e..69ba9dfc 100644 --- a/doc/man3/RSA_meth_new.pod +++ b/doc/man3/RSA_meth_new.pod @@ -28,7 +28,7 @@ RSA_meth_get_multi_prime_keygen, RSA_meth_set_multi_prime_keygen const char *RSA_meth_get0_name(const RSA_METHOD *meth); int RSA_meth_set1_name(RSA_METHOD *meth, const char *name); - int RSA_meth_get_flags(RSA_METHOD *meth); + int RSA_meth_get_flags(const RSA_METHOD *meth); int RSA_meth_set_flags(RSA_METHOD *meth, int flags); void *RSA_meth_get0_app_data(const RSA_METHOD *meth); @@ -252,7 +252,7 @@ Other functions described here were added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SMIME_read_PKCS7.pod b/doc/man3/SMIME_read_PKCS7.pod index 3eb8bbc9..40973d3f 100644 --- a/doc/man3/SMIME_read_PKCS7.pod +++ b/doc/man3/SMIME_read_PKCS7.pod @@ -57,7 +57,7 @@ streaming single pass option should be available. =head1 RETURN VALUES SMIME_read_PKCS7() returns a valid B structure or B -is an error occurred. The error can be obtained from ERR_get_error(3). +if an error occurred. The error can be obtained from ERR_get_error(3). =head1 SEE ALSO diff --git a/doc/man3/SSL_CONF_cmd.pod b/doc/man3/SSL_CONF_cmd.pod index b4392f48..4d3e9c2b 100644 --- a/doc/man3/SSL_CONF_cmd.pod +++ b/doc/man3/SSL_CONF_cmd.pod @@ -89,10 +89,18 @@ can be either the B name (e.g. B) or an OpenSSL OID name =item B<-cipher> -Sets the cipher suite list to B. Note: syntax checking of B is -currently not performed unless a B or B structure is +Sets the TLSv1.2 and below ciphersuite list to B. This list will be +combined with any configured TLSv1.3 ciphersuites. Note: syntax checking +of B is currently not performed unless a B or B structure is associated with B. +=item B<-ciphersuites> + +Sets the available ciphersuites for TLSv1.3 to value. This is a simple colon +(":") separated list of TLSv1.3 ciphersuite names in order of preference. This +list will be combined any configured TLSv1.2 and below ciphersuites. + + =item B<-cert> Attempts to use the file B as the certificate for the appropriate @@ -219,9 +227,16 @@ Note: the command prefix (if set) alters the recognised B values. =item B -Sets the cipher suite list to B. Note: syntax checking of B is -currently not performed unless an B or B structure is -associated with B. +Sets the ciphersuite list for TLSv1.2 and below to B. This list will be +combined with any configured TLSv1.3 ciphersuites. Note: syntax +checking of B is currently not performed unless an B or B +structure is associated with B. + +=item B + +Sets the available ciphersuites for TLSv1.3 to B. This is a simple colon +(":") separated list of TLSv1.3 ciphersuite names in order of preference. This +list will be combined any configured TLSv1.2 and below ciphersuites. =item B @@ -582,10 +597,6 @@ Set supported curves to P-256, P-384: SSL_CONF_cmd(ctx, "Curves", "P-256:P-384"); -Set automatic support for any elliptic curve for key exchange: - - SSL_CONF_cmd(ctx, "ECDHParameters", "Automatic"); - =head1 RETURN VALUES SSL_CONF_cmd() returns 1 if the value of B is recognised and B is diff --git a/doc/man3/SSL_CTX_set_cipher_list.pod b/doc/man3/SSL_CTX_set_cipher_list.pod index 714bb3a8..59c6b4bd 100644 --- a/doc/man3/SSL_CTX_set_cipher_list.pod +++ b/doc/man3/SSL_CTX_set_cipher_list.pod @@ -2,7 +2,11 @@ =head1 NAME -SSL_CTX_set_cipher_list, SSL_set_cipher_list - choose list of available SSL_CIPHERs +SSL_CTX_set_cipher_list, +SSL_set_cipher_list, +SSL_CTX_set_ciphersuites, +SSL_set_ciphersuites +- choose list of available SSL_CIPHERs =head1 SYNOPSIS @@ -11,18 +15,49 @@ SSL_CTX_set_cipher_list, SSL_set_cipher_list - choose list of available SSL_CIPH int SSL_CTX_set_cipher_list(SSL_CTX *ctx, const char *str); int SSL_set_cipher_list(SSL *ssl, const char *str); + int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str); + int SSL_set_ciphersuites(SSL *s, const char *str); + =head1 DESCRIPTION -SSL_CTX_set_cipher_list() sets the list of available ciphers for B -using the control string B. The format of the string is described +SSL_CTX_set_cipher_list() sets the list of available ciphers (TLSv1.2 and below) +for B using the control string B. The format of the string is described in L. The list of ciphers is inherited by all -B objects created from B. +B objects created from B. This function does not impact TLSv1.3 +ciphersuites. Use SSL_CTX_set_ciphersuites() to configure those. -SSL_set_cipher_list() sets the list of ciphers only for B. +SSL_set_cipher_list() sets the list of ciphers (TLSv1.2 and below) only for +B. + +SSL_CTX_set_ciphersuites() is used to configure the available TLSv1.3 +ciphersuites for B. This is a simple colon (":") separated list of TLSv1.3 +ciphersuite names in order of perference. Valid TLSv1.3 ciphersuite names are: + +=over 4 + +=item TLS_AES_128_GCM_SHA256 + +=item TLS_AES_256_GCM_SHA384 + +=item TLS_CHACHA20_POLY1305_SHA256 + +=item TLS_AES_128_CCM_SHA256 + +=item TLS_AES_128_CCM_8_SHA256 + +=back + +An empty list is permissible. The default value for the this setting is: + +"TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256" + +SSL_set_ciphersuites() is the same as SSL_CTX_set_ciphersuites() except it +configures the ciphersuites for B. =head1 NOTES -The control string B should be universally usable and not depend +The control string B for SSL_CTX_set_cipher_list() and +SSL_set_cipher_list() should be universally usable and not depend on details of the library configuration (ciphers compiled in). Thus no syntax checking takes place. Items that are not recognized, because the corresponding ciphers are not compiled in or because they are mistyped, @@ -55,6 +90,9 @@ and the handshake will fail. SSL_CTX_set_cipher_list() and SSL_set_cipher_list() return 1 if any cipher could be selected and 0 on complete failure. +SSL_CTX_set_ciphersuites() and SSL_set_ciphersuites() return 1 if the requested +ciphersuite list was configured, and 0 otherwise. + =head1 SEE ALSO L, L, @@ -64,7 +102,7 @@ L =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_CTX_set_info_callback.pod b/doc/man3/SSL_CTX_set_info_callback.pod index f4d91283..f01ca66f 100644 --- a/doc/man3/SSL_CTX_set_info_callback.pod +++ b/doc/man3/SSL_CTX_set_info_callback.pod @@ -2,7 +2,11 @@ =head1 NAME -SSL_CTX_set_info_callback, SSL_CTX_get_info_callback, SSL_set_info_callback, SSL_get_info_callback - handle information callback for SSL connections +SSL_CTX_set_info_callback, +SSL_CTX_get_info_callback, +SSL_set_info_callback, +SSL_get_info_callback +- handle information callback for SSL connections =head1 SYNOPSIS @@ -37,7 +41,8 @@ callback function for B. When setting up a connection and during use, it is possible to obtain state information from the SSL/TLS engine. When set, an information callback function -is called whenever the state changes, an alert appears, or an error occurs. +is called whenever a significant event occurs such as: the state changes, +an alert appears, or an error occurs. The callback function is called as B. The B argument specifies information about where (in which context) @@ -51,12 +56,15 @@ B is a bitmask made up of the following bits: =item SSL_CB_LOOP -Callback has been called to indicate state change inside a loop. +Callback has been called to indicate state change or some other significant +state machine event. This may mean that the callback gets invoked more than once +per state in some situations. =item SSL_CB_EXIT -Callback has been called to indicate error exit of a handshake function. -(May be soft error with retry option for non-blocking setups.) +Callback has been called to indicate exit of a handshake function. This will +happen after the end of a handshake, but may happen at other times too such as +on error or when IO might otherwise block and non-blocking is being used. =item SSL_CB_READ @@ -84,11 +92,17 @@ Callback has been called due to an alert being sent or received. =item SSL_CB_HANDSHAKE_START -Callback has been called because a new handshake is started. +Callback has been called because a new handshake is started. In TLSv1.3 this is +also used for the start of post-handshake message exchanges such as for the +exchange of session tickets, or for key updates. It also occurs when resuming a +handshake following a pause to handle early data. =item SSL_CB_HANDSHAKE_DONE 0x20 -Callback has been called because a handshake is finished. +Callback has been called because a handshake is finished. In TLSv1.3 this is +also used at the end of an exchange of post-handshake messages such as for +session tickets or key updates. It also occurs if the handshake is paused to +allow the exchange of early data. =back @@ -146,7 +160,7 @@ L =head1 COPYRIGHT -Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_CTX_set_num_tickets.pod b/doc/man3/SSL_CTX_set_num_tickets.pod new file mode 100644 index 00000000..b6b0e3eb --- /dev/null +++ b/doc/man3/SSL_CTX_set_num_tickets.pod @@ -0,0 +1,68 @@ +=pod + +=head1 NAME + +SSL_set_num_tickets, +SSL_get_num_tickets, +SSL_CTX_set_num_tickets, +SSL_CTX_get_num_tickets +- control the number of TLSv1.3 session tickets that are issued + +=head1 SYNOPSIS + + #include + + int SSL_set_num_tickets(SSL *s, size_t num_tickets); + size_t SSL_get_num_tickets(SSL *s); + int SSL_CTX_set_num_tickets(SSL_CTX *ctx, size_t num_tickets); + size_t SSL_CTX_get_num_tickets(SSL_CTX *ctx); + +=head1 DESCRIPTION + +SSL_CTX_set_num_tickets() and SSL_set_num_tickets() can be called for a server +application and set the number of session tickets that will be sent to the +client after a full handshake. Set the desired value (which could be 0) in the +B argument. Typically these functions should be called before the +start of the handshake. + +The default number of tickets is 2; the default number of tickets sent following +a resumption handshake is 1 but this cannot be changed using these functions. +The number of tickets following a resumption handshake can be reduced to 0 using +custom session ticket callbacks (see L). + +Tickets are also issued on receipt of a post-handshake certificate from the +client following a request by the server using +L. These new tickets will be associated +with the updated client identity (i.e. including their certificate and +verification status). The number of tickets issued will normally be the same as +was used for the initial handshake. If the initial handshake was a full +handshake then SSL_set_num_tickets() can be called again prior to calling +SSL_verify_client_post_handshake() to update the number of tickets that will be +sent. + +SSL_CTX_get_num_tickets() and SSL_get_num_tickets() return the number of +tickets set by a previous call to SSL_CTX_set_num_tickets() or +SSL_set_num_tickets(), or 2 if no such call has been made. + +=head1 RETURN VALUES + +SSL_CTX_set_num_tickets() and SSL_set_num_tickets() return 1 on success or 0 on +failure. + +SSL_CTX_get_num_tickets() and SSL_get_num_tickets() return the number of tickets +that have been previously set. + +=head1 HISTORY + +These functions were added in OpenSSL 1.1.1. + +=head1 COPYRIGHT + +Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man3/SSL_CTX_set_options.pod b/doc/man3/SSL_CTX_set_options.pod index 0d510773..552de07f 100644 --- a/doc/man3/SSL_CTX_set_options.pod +++ b/doc/man3/SSL_CTX_set_options.pod @@ -151,6 +151,8 @@ of RFC4507bis tickets for stateless session resumption. If this option is set this functionality is disabled and tickets will not be used by clients or servers. +This option only applies to TLSv1.2 and below. It is ignored for TLSv1.3. + =item SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION Allow legacy insecure renegotiation between OpenSSL and unpatched clients or diff --git a/doc/man3/SSL_CTX_set_psk_client_callback.pod b/doc/man3/SSL_CTX_set_psk_client_callback.pod index 5350d797..6d1a9b57 100644 --- a/doc/man3/SSL_CTX_set_psk_client_callback.pod +++ b/doc/man3/SSL_CTX_set_psk_client_callback.pod @@ -158,7 +158,7 @@ were added in OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_CTX_set_session_ticket_cb.pod b/doc/man3/SSL_CTX_set_session_ticket_cb.pod index e9aeb909..8f98c6f1 100644 --- a/doc/man3/SSL_CTX_set_session_ticket_cb.pod +++ b/doc/man3/SSL_CTX_set_session_ticket_cb.pod @@ -16,7 +16,7 @@ SSL_CTX_decrypt_session_ticket_fn - manage session ticket application data typedef SSL_TICKET_RETURN (*SSL_CTX_decrypt_session_ticket_fn)(SSL *s, SSL_SESSION *ss, const unsigned char *keyname, size_t keyname_len, - SSL_TICKET_RETURN retv, + SSL_TICKET_STATUS status, void *arg); int SSL_CTX_set_session_ticket_cb(SSL_CTX *ctx, SSL_CTX_generate_session_ticket_fn gen_cb, @@ -39,13 +39,13 @@ is the same as that given to SSL_CTX_set_session_ticket_cb(). The B callback is defined as type B. B is the application defined callback invoked after session ticket -decryption has been attempted and any session ticket application data is available. -The application can call SSL_SESSION_get_ticket_appdata() at this time to retrieve -the application data. The value of B is the same as that given to -SSL_CTX_set_session_ticket_cb(). The B arguement is the result of the ticket -decryption. The B and B identify the key used to decrypt the -session ticket. The B callback is defined as type -B. +decryption has been attempted and any session ticket application data is +available. If ticket decryption was successful then the B argument contains +the session data. The B and B arguments identify the key +used to decrypt the session ticket. The B argument is the result of the +ticket decryption. See the L section below for further details. The value +of B is the same as that given to SSL_CTX_set_session_ticket_cb(). The +B callback is defined as type B. SSL_SESSION_set1_ticket_appdata() sets the application data specified by B and B into B which is then placed into any generated session @@ -66,17 +66,99 @@ application that a session ticket has just been decrypted. =head1 NOTES When the B callback is invoked, the SSL_SESSION B has not yet been -assigned to the SSL B. The B indicates the result of the ticket -decryption which can be modified by the callback before being returned. The -callback must check the B value before performing any action, as it's -called even if ticket decryption fails. +assigned to the SSL B. The B indicates the result of the ticket +decryption. The callback must check the B value before performing any +action, as it is called even if ticket decryption fails. The B and B arguments to B may be used to identify the key that was used to encrypt the session ticket. +The B argument can be any of these values: + +=over 4 + +=item SSL_TICKET_EMPTY + +Empty ticket present. No ticket data will be used and a new ticket should be +sent to the client. This only occurs in TLSv1.2 or below. In TLSv1.3 it is not +valid for a client to send an empty ticket. + +=item SSL_TICKET_NO_DECRYPT + +The ticket couldn't be decrypted. No ticket data will be used and a new ticket +should be sent to the client. + +=item SSL_TICKET_SUCCESS + +A ticket was successfully decrypted, any session ticket application data should +be available. A new ticket should not be sent to the client. + +=item SSL_TICKET_SUCCESS_RENEW + +Same as B, but a new ticket should be sent to the client. + +=back + +The return value can be any of these values: + +=over 4 + +=item SSL_TICKET_RETURN_ABORT + +The handshake should be aborted, either because of an error or because of some +policy. Note that in TLSv1.3 a client may send more than one ticket in a single +handshake. Therefore just because one ticket is unacceptable it does not mean +that all of them are. For this reason this option should be used with caution. + +=item SSL_TICKET_RETURN_IGNORE + +Do not use a ticket (if one was available). Do not send a renewed ticket to the +client. + +=item SSL_TICKET_RETURN_IGNORE_RENEW + +Do not use a ticket (if one was available). Send a renewed ticket to the client. + +If the callback does not wish to change the default ticket behaviour then it +should return this value if B is B or +B. + +=item SSL_TICKET_RETURN_USE + +Use the ticket. Do not send a renewed ticket to the client. It is an error for +the callback to return this value if B has a value other than +B or B. + +If the callback does not wish to change the default ticket behaviour then it +should return this value if B is B. + +=item SSL_TICKET_RETURN_USE_RENEW + +Use the ticket. Send a renewed ticket to the client. It is an error for the +callback to return this value if B has a value other than +B or B. + +If the callback does not wish to change the default ticket behaviour then it +should return this value if B is B. + +=back + +If B has the value B or B then +no session data will be available and the callback must not use the B +argument. If B has the value B or +B then the application can call +SSL_SESSION_get0_ticket_appdata() using the session provided in the B +argument to retrieve the application data. + When the B callback is invoked, the SSL_get_session() function can be used to retrieve the SSL_SESSION for SSL_SESSION_set1_ticket_appdata(). +By default, in TLSv1.2 and below, a new session ticket is not issued on a +successful resumption and therefore B will not be called. In TLSv1.3 the +default behaviour is to always issue a new ticket on resumption. In both cases +this behaviour can be changed if a ticket key callback is in use (see +L). + =head1 RETURN VALUES The SSL_CTX_set_session_ticket_cb(), SSL_SESSION_set1_ticket_appdata() and @@ -86,46 +168,7 @@ failure. The B callback must return 1 to continue the connection. A return of 0 will terminate the connection with an INTERNAL_ERROR alert. -The B callback must return one of the following B -values. Under normal circumstances the B value is returned unmodified, -but the callback can change the behavior of the post-ticket decryption code -by returning something different. The B callback must check the B -value before performing any action. - - typedef int SSL_TICKET_RETURN; - -=over 4 - -=item SSL_TICKET_FATAL_ERR_MALLOC - -Fatal error, malloc failure. - -=item SSL_TICKET_FATAL_ERR_OTHER - -Fatal error, either from parsing or decrypting the ticket. - -=item SSL_TICKET_NONE - -No ticket present. - -=item SSL_TICKET_EMPTY - -Empty ticket present. - -=item SSL_TICKET_NO_DECRYPT - -The ticket couldn't be decrypted. - -=item SSL_TICKET_SUCCESS - -A ticket was successfully decrypted, any session ticket application data should -be available. - -=item TICKET_SUCCESS_RENEW - -Same as B, but the ticket needs to be renewed. - -=back +The B callback must return a value as described in L above. =head1 SEE ALSO @@ -139,7 +182,7 @@ SSL_SESSION_get_ticket_appdata() were added to OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod b/doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod index 3cf0717d..9b448db6 100644 --- a/doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod +++ b/doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod @@ -133,7 +133,7 @@ Reference Implementation: HMAC_CTX *hctx, int enc) { if (enc) { /* create new session */ - if (RAND_bytes(iv, EVP_MAX_IV_LENGTH)) + if (RAND_bytes(iv, EVP_MAX_IV_LENGTH) <= 0) return -1; /* insufficient random */ key = currentkey(); /* something that you need to implement */ @@ -190,7 +190,7 @@ L, =head1 COPYRIGHT -Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2014-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_CTX_set_tlsext_use_srtp.pod b/doc/man3/SSL_CTX_set_tlsext_use_srtp.pod index 2bc3a43e..e501934a 100644 --- a/doc/man3/SSL_CTX_set_tlsext_use_srtp.pod +++ b/doc/man3/SSL_CTX_set_tlsext_use_srtp.pod @@ -101,7 +101,7 @@ L =head1 COPYRIGHT -Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_CTX_use_certificate.pod b/doc/man3/SSL_CTX_use_certificate.pod index a0c92e6e..b065d8f9 100644 --- a/doc/man3/SSL_CTX_use_certificate.pod +++ b/doc/man3/SSL_CTX_use_certificate.pod @@ -106,7 +106,7 @@ B, B and B are set only if all were not previously set. If B is non-0, then the certificate, private key and chain certs are always set. If B is NULL, then the public key of B is used as the private key. This is intended to be used with hardware (via the ENGINE -inteface) that stores the private key securely, such that it cannot be +interface) that stores the private key securely, such that it cannot be accessed by OpenSSL. The reference count of the public key is incremented (twice if there is no private key); it is not copied nor duplicated. This allows all private key validations checks to succeed without an actual @@ -170,6 +170,13 @@ L. of view, it however does not make sense as the data in the certificate is considered public anyway.) +All of the functions to set a new certificate will replace any existing +certificate of the same type that has already been set. Similarly all of the +functions to set a new private key will replace any private key that has already +been set. Applications should call L or +L as appropriate after loading a new certificate and +private key to confirm that the certificate and key match. + =head1 RETURN VALUES On success, the functions return 1. @@ -187,7 +194,7 @@ L =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_CTX_use_psk_identity_hint.pod b/doc/man3/SSL_CTX_use_psk_identity_hint.pod index 2f4773d0..2b2bc3e2 100644 --- a/doc/man3/SSL_CTX_use_psk_identity_hint.pod +++ b/doc/man3/SSL_CTX_use_psk_identity_hint.pod @@ -135,7 +135,7 @@ were added in OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_connect.pod b/doc/man3/SSL_connect.pod index 1f054d67..5c9eff85 100644 --- a/doc/man3/SSL_connect.pod +++ b/doc/man3/SSL_connect.pod @@ -35,6 +35,21 @@ nothing is to be done, but select() can be used to check for the required condition. When using a buffering BIO, like a BIO pair, data must be written into or retrieved out of the BIO before being able to continue. +Many systems implement Nagle's algorithm by default which means that it will +buffer outgoing TCP data if a TCP packet has already been sent for which no +corresponding ACK has been received yet from the peer. This can have performance +impacts after a successful TLSv1.3 handshake or a successful TLSv1.2 (or below) +resumption handshake, because the last peer to communicate in the handshake is +the client. If the client is also the first to send application data (as is +typical for many protocols) then this data could be buffered until an ACK has +been received for the final handshake message. + +The B socket option is often available to disable Nagle's +algorithm. If an application opts to disable Nagle's algorithm consideration +should be given to turning it back on again later if appropriate. The helper +function BIO_set_tcp_ndelay() can be used to turn on or off the B +option. + =head1 RETURN VALUES The following return values can occur: diff --git a/doc/man3/SSL_get_ciphers.pod b/doc/man3/SSL_get_ciphers.pod index d91afc29..89d94611 100644 --- a/doc/man3/SSL_get_ciphers.pod +++ b/doc/man3/SSL_get_ciphers.pod @@ -2,9 +2,13 @@ =head1 NAME -SSL_get1_supported_ciphers, SSL_get_client_ciphers, -SSL_get_ciphers, SSL_CTX_get_ciphers, -SSL_bytes_to_cipher_list, SSL_get_cipher_list +SSL_get1_supported_ciphers, +SSL_get_client_ciphers, +SSL_get_ciphers, +SSL_CTX_get_ciphers, +SSL_bytes_to_cipher_list, +SSL_get_cipher_list, +SSL_get_shared_ciphers - get list of available SSL_CIPHERs =head1 SYNOPSIS @@ -19,6 +23,7 @@ SSL_bytes_to_cipher_list, SSL_get_cipher_list int isv2format, STACK_OF(SSL_CIPHER) **sk, STACK_OF(SSL_CIPHER) **scsvs); const char *SSL_get_cipher_list(const SSL *ssl, int priority); + char *SSL_get_shared_ciphers(const SSL *s, char *buf, int size); =head1 DESCRIPTION @@ -58,6 +63,19 @@ listed for B with B. If B is NULL, no ciphers are available, or there are less ciphers than B available, NULL is returned. +SSL_get_shared_ciphers() creates a colon separated and NUL terminated list of +SSL_CIPHER names that are available in both the client and the server. B is +the buffer that should be populated with the list of names and B is the +size of that buffer. A pointer to B is returned on success or NULL on +error. If the supplied buffer is not large enough to contain the complete list +of names then a truncated list of names will be returned. Note that just because +a ciphersuite is available (i.e. it is configured in the cipher list) and shared +by both the client and the server it does not mean that it is enabled (see the +description of SSL_get1_supported_ciphers() above). This function will return +available shared ciphersuites whether or not they are enabled. This is a server +side function only and must only be called after the completion of the initial +handshake. + =head1 NOTES The details of the ciphers obtained by SSL_get_ciphers(), SSL_CTX_get_ciphers() diff --git a/doc/man3/SSL_get_error.pod b/doc/man3/SSL_get_error.pod index 4e26514a..f1050b0c 100644 --- a/doc/man3/SSL_get_error.pod +++ b/doc/man3/SSL_get_error.pod @@ -38,11 +38,10 @@ if and only if B 0>. =item SSL_ERROR_ZERO_RETURN -The TLS/SSL connection has been closed. -If the protocol version is SSL 3.0 or higher, this result code is returned only -if a closure alert has occurred in the protocol, i.e. if the connection has been -closed cleanly. -Note that in this case B does not necessarily +The TLS/SSL peer has closed the connection for writing by sending the +"close notify" alert. +No more data can be read. +Note that B does not necessarily indicate that the underlying transport has been closed. =item SSL_ERROR_WANT_READ, SSL_ERROR_WANT_WRITE @@ -141,7 +140,7 @@ SSL_ERROR_WANT_CLIENT_HELLO_CB was added in OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_get_session.pod b/doc/man3/SSL_get_session.pod index b2e92af2..7c045706 100644 --- a/doc/man3/SSL_get_session.pod +++ b/doc/man3/SSL_get_session.pod @@ -48,6 +48,11 @@ SSL_SESSION object that cannot be used for resumption in TLSv1.3. It also enables applications to obtain information about all sessions sent by the server. +A session will be automatically removed from the session cache and marked as +non-resumable if the connection is not closed down cleanly, e.g. if a fatal +error occurs on the connection or L is not called prior to +L. + In TLSv1.3 it is recommended that each SSL_SESSION object is only used for resumption once. @@ -95,7 +100,7 @@ L =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_get_version.pod b/doc/man3/SSL_get_version.pod index f8dd85e1..9b492426 100644 --- a/doc/man3/SSL_get_version.pod +++ b/doc/man3/SSL_get_version.pod @@ -20,15 +20,14 @@ protocol information of a connection =head1 DESCRIPTION SSL_client_version() returns the protocol version used by the client when -initiating the connection. - -SSL_get_version() returns the name of the protocol used for the -connection. +initiating the connection. SSL_get_version() returns the name of the protocol +used for the connection. SSL_version() returns the protocol version used for the +connection. They should only be called after the initial handshake has been +completed. Prior to that the results returned from these functions may be +unreliable. SSL_is_dtls() returns one if the connection is using DTLS, zero if not. -SSL_version() returns the protocol version used for the connection. - =head1 RETURN VALUES SSL_get_version() returns one of the following strings: @@ -57,7 +56,7 @@ The connection uses the TLSv1.3 protocol. =item unknown -This indicates that no version has been set (no connection established). +This indicates an unknown protocol version. =back @@ -98,7 +97,7 @@ SSL_is_dtls() was added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2001-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_read_early_data.pod b/doc/man3/SSL_read_early_data.pod index a420e732..bc5bd0a0 100644 --- a/doc/man3/SSL_read_early_data.pod +++ b/doc/man3/SSL_read_early_data.pod @@ -41,9 +41,9 @@ can be used to send data from the server to the client when the client has not yet completed the authentication stage of the handshake. Early data has weaker security properties than other data sent over an SSL/TLS -connection. In particular the data does not have forward secrecy and there are -no guarantees that the same early data was not replayed across multiple -connections. For this reason extreme care should be exercised when using early +connection. In particular the data does not have forward secrecy. There are also +additional considerations around replay attacks (see L +below). For these reasons extreme care should be exercised when using early data. For specific details, consult the TLS 1.3 specification. When a server receives early data it may opt to immediately respond by sending @@ -171,12 +171,16 @@ connection attempt. By default the server does not accept early data; a server may indicate support for early data by calling SSL_CTX_set_max_early_data() or SSL_set_max_early_data() to set it for the whole SSL_CTX or an individual SSL -object respectively. Similarly the SSL_CTX_get_max_early_data() and +object respectively. The B parameter specifies the maximum +amount of early data in bytes that is permitted to be sent on a single +connection. Similarly the SSL_CTX_get_max_early_data() and SSL_get_max_early_data() functions can be used to obtain the current maximum -early data settings for the SSL_CTX and SSL objects respectively. -Generally a server application will either use both of SSL_read_early_data() -and SSL_CTX_set_max_early_data() (or SSL_set_max_early_data()), or neither -of them, since there is no practical benefit from using only one of them. +early data settings for the SSL_CTX and SSL objects respectively. Generally a +server application will either use both of SSL_read_early_data() and +SSL_CTX_set_max_early_data() (or SSL_set_max_early_data()), or neither of them, +since there is no practical benefit from using only one of them. If the maximum +early data setting for a server is non-zero then replay protection is +automatically enabled (see L below). In the event that the current maximum early data setting for the server is different to that originally specified in a session that a client is resuming @@ -209,6 +213,43 @@ Nagle's algorithm. If an application opts to disable Nagle's algorithm consideration should be given to turning it back on again after the handshake is complete if appropriate. +=head1 REPLAY PROTECTION + +When early data is in use the TLS protocol provides no security guarantees that +the same early data was not replayed across multiple connections. As a +mitigation for this issue OpenSSL automatically enables replay protection if the +server is configured with a non-zero max early data value. With replay +protection enabled sessions are forced to be single use only. If a client +attempts to reuse a session ticket more than once, then the second and +subsequent attempts will fall back to a full handshake (and any early data that +was submitted will be ignored). Note that single use tickets are enforced even +if a client does not send any early data. + +The replay protection mechanism relies on the internal OpenSSL server session +cache (see L). By default sessions will be +added to the cache whenever a session ticket is issued. When a client attempts +to resume the session OpenSSL will check for its presence in the internal cache. +If it exists then the resumption is allowed and the session is removed from the +cache. If it does not exist then the resumption is not allowed and a full +handshake will occur. + +Note that some applications may maintain an external cache of sessions (see +L and similar functions). It is the application's +responsibility to ensure that any sessions in the external cache are also +populated in the internal cache and that once removed from the internal cache +they are similarly removed from the external cache. Failing to do this could +result in an application becoming vulnerable to replay attacks. Note that +OpenSSL will lock the internal cache while a session is removed but that lock is +not held when the remove session callback (see L) +is called. This could result in a small amount of time where the session has +been removed from the internal cache but is still available in the external +cache. Applications should be designed with this in mind in order to minimise +the possibility of replay attacks. + +The OpenSSL replay protection does not apply to external Pre Shared Keys (PSKs) +(e.g. see SSL_CTX_set_psk_find_session_callback(3)). Therefore extreme caution +should be applied when combining external PSKs with early data. + =head1 RETURN VALUES SSL_write_early_data() returns 1 for success or 0 for failure. In the event of a @@ -248,7 +289,7 @@ All of the functions described above were added in OpenSSL 1.1.1. =head1 COPYRIGHT -Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/SSL_shutdown.pod b/doc/man3/SSL_shutdown.pod index c40956c2..453853d6 100644 --- a/doc/man3/SSL_shutdown.pod +++ b/doc/man3/SSL_shutdown.pod @@ -35,35 +35,52 @@ performed, so that the peers stay synchronized. SSL_shutdown() supports both uni- and bidirectional shutdown by its 2 step behaviour. -=over 4 +SSL_shutdown() only closes the write direction. +It is not possible to call SSL_write() after calling SSL_shutdown(). +The read direction is closed by the peer. -=item When the application is the first party to send the "close notify" +=head2 First to close the connection + +When the application is the first party to send the "close notify" alert, SSL_shutdown() will only send the alert and then set the SSL_SENT_SHUTDOWN flag (so that the session is considered good and will -be kept in cache). SSL_shutdown() will then return with 0. If a unidirectional -shutdown is enough (the underlying connection shall be closed anyway), this -first call to SSL_shutdown() is sufficient. In order to complete the -bidirectional shutdown handshake, SSL_shutdown() must be called again. -The second call will make SSL_shutdown() wait for the peer's "close notify" -shutdown alert. On success, the second call to SSL_shutdown() will return -with 1. +be kept in the cache). +SSL_shutdown() will then return with 0. +If a unidirectional shutdown is enough (the underlying connection shall be +closed anyway), this first call to SSL_shutdown() is sufficient. -=item If the peer already sent the "close notify" alert B it was +In order to complete the bidirectional shutdown handshake, the peer needs +to send back a "close notify" alert. +The SSL_RECEIVED_SHUTDOWN flag will be set after receiving and processing +it. +SSL_shutdown() will return 1 when it has been received. + +The peer is still allowed to send data after receiving the "close notify" +event. +If the peer did send data it needs to be processed by calling SSL_read() +before calling SSL_shutdown() a second time. +SSL_read() will indicate the end of the peer data by returning <= 0 +and SSL_get_error() returning SSL_ERROR_ZERO_RETURN. +It is recommended to call SSL_read() between SSL_shutdown() calls. + +=head2 Peer closes the connection + +If the peer already sent the "close notify" alert B it was already processed implicitly inside another function (L), the SSL_RECEIVED_SHUTDOWN flag is set. +SSL_read() will return <= 0 in that case, and SSL_get_error() will return +SSL_ERROR_ZERO_RETURN. SSL_shutdown() will send the "close notify" alert, set the SSL_SENT_SHUTDOWN flag and will immediately return with 1. Whether SSL_RECEIVED_SHUTDOWN is already set can be checked using the SSL_get_shutdown() (see also L call. -=back +=head1 NOTES -It is therefore recommended, to check the return value of SSL_shutdown() -and call SSL_shutdown() again, if the bidirectional shutdown is not yet -complete (return value of the first call is 0). +It is recommended to do a bidirectional shutdown by checking the return value +of SSL_shutdown() and call it again until it returns 1 or a fatal error. The behaviour of SSL_shutdown() additionally depends on the underlying BIO. - If the underlying BIO is B, SSL_shutdown() will only return once the handshake step has been finished or an error occurred. @@ -92,8 +109,9 @@ The following return values can occur: =item Z<>0 -The shutdown is not yet finished. Call SSL_shutdown() for a second time, -if a bidirectional shutdown shall be performed. +The shutdown is not yet finished: the "close notify" was send but the peer +did not send it back yet. +Call SSL_shutdown() again to do a bidirectional shutdown. The output of L may be misleading, as an erroneous SSL_ERROR_SYSCALL may be flagged even though no error occurred. @@ -104,11 +122,12 @@ and the peer's "close notify" alert was received. =item E0 -The shutdown was not successful because a fatal error occurred either -at the protocol level or a connection failure occurred. It can also occur if -action is need to continue the operation for non-blocking BIOs. -Call L with the return value B -to find out the reason. +The shutdown was not successful. +Call L with the return value B to find out the reason. +It can occur if an action is needed to continue the operation for non-blocking +BIOs. + +It can also occur when not all data was read using SSL_read(). =back @@ -122,7 +141,7 @@ L, L =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/UI_STRING.pod b/doc/man3/UI_STRING.pod index 09a7d0be..96dcf4db 100644 --- a/doc/man3/UI_STRING.pod +++ b/doc/man3/UI_STRING.pod @@ -137,7 +137,7 @@ L =head1 COPYRIGHT -Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/X509_NAME_get_index_by_NID.pod b/doc/man3/X509_NAME_get_index_by_NID.pod index 5579dabb..283d0f29 100644 --- a/doc/man3/X509_NAME_get_index_by_NID.pod +++ b/doc/man3/X509_NAME_get_index_by_NID.pod @@ -49,7 +49,7 @@ of space needed in B (excluding the final null) is returned. =head1 NOTES X509_NAME_get_text_by_NID() and X509_NAME_get_text_by_OBJ() should be -considered deprecaated because they +considered deprecated because they have various limitations which make them of minimal use in practice. They can only find the first matching entry and will copy the contents of the field verbatim: this can diff --git a/doc/man3/X509_STORE_add_cert.pod b/doc/man3/X509_STORE_add_cert.pod index 4c80153f..8ac9729b 100644 --- a/doc/man3/X509_STORE_add_cert.pod +++ b/doc/man3/X509_STORE_add_cert.pod @@ -90,7 +90,7 @@ L =head1 COPYRIGHT -Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man3/X509_VERIFY_PARAM_set_flags.pod b/doc/man3/X509_VERIFY_PARAM_set_flags.pod index 825f7601..77650297 100644 --- a/doc/man3/X509_VERIFY_PARAM_set_flags.pod +++ b/doc/man3/X509_VERIFY_PARAM_set_flags.pod @@ -11,7 +11,9 @@ X509_VERIFY_PARAM_get_auth_level, X509_VERIFY_PARAM_set_time, X509_VERIFY_PARAM_get_time, X509_VERIFY_PARAM_add0_policy, X509_VERIFY_PARAM_set1_policies, X509_VERIFY_PARAM_set1_host, X509_VERIFY_PARAM_add1_host, -X509_VERIFY_PARAM_set_hostflags, X509_VERIFY_PARAM_get0_peername, +X509_VERIFY_PARAM_set_hostflags, +X509_VERIFY_PARAM_get_hostflags, +X509_VERIFY_PARAM_get0_peername, X509_VERIFY_PARAM_set1_email, X509_VERIFY_PARAM_set1_ip, X509_VERIFY_PARAM_set1_ip_asc - X509 verification parameters @@ -54,6 +56,7 @@ X509_VERIFY_PARAM_set1_ip_asc const char *name, size_t namelen); void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param, unsigned int flags); + unsigned int X509_VERIFY_PARAM_get_hostflags(const X509_VERIFY_PARAM *param); char *X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *param); int X509_VERIFY_PARAM_set1_email(X509_VERIFY_PARAM *param, const char *email, size_t emaillen); @@ -139,6 +142,9 @@ calling L, hostname checks are out of scope with the DANE-EE(3) certificate usage, and the internal check will be suppressed as appropriate when DANE support is added to OpenSSL. +X509_VERIFY_PARAM_get_hostflags() returns any host flags previously set via a +call to X509_VERIFY_PARAM_set_hostflags(). + X509_VERIFY_PARAM_add1_host() adds B as an additional reference identifier that can match the peer's certificate. Any previous names set via X509_VERIFY_PARAM_set1_host() or X509_VERIFY_PARAM_add1_host() @@ -186,6 +192,8 @@ failure. X509_VERIFY_PARAM_get_flags() returns the current verification flags. +X509_VERIFY_PARAM_get_hostflags() returns any current host flags. + X509_VERIFY_PARAM_get_inh_flags() returns the current inheritance flags. X509_VERIFY_PARAM_set_time() and X509_VERIFY_PARAM_set_depth() do not return @@ -349,6 +357,8 @@ The B flag was added in OpenSSL 1.1.0 The flag B was deprecated in OpenSSL 1.1.0, and has no effect. +X509_VERIFY_PARAM_get_hostflags() was added in OpenSSL 1.1.0i. + =head1 COPYRIGHT Copyright 2009-2018 The OpenSSL Project Authors. All Rights Reserved. diff --git a/doc/man3/X509_cmp_time.pod b/doc/man3/X509_cmp_time.pod index 911814ed..4b5cb675 100644 --- a/doc/man3/X509_cmp_time.pod +++ b/doc/man3/X509_cmp_time.pod @@ -46,7 +46,7 @@ X509_cmp_time() and X509_cmp_current_time() return -1 if B is earlier than, or equal to, B (resp. current time), and 1 otherwise. These methods return 0 on error. -X509_time_ad() and X509_time_adj_ex() return a pointer to the updated +X509_time_adj() and X509_time_adj_ex() return a pointer to the updated ASN1_TIME structure, and NULL on error. =head1 COPYRIGHT diff --git a/doc/man3/d2i_PKCS8PrivateKey_bio.pod b/doc/man3/d2i_PKCS8PrivateKey_bio.pod index cc588dfc..43a218a2 100644 --- a/doc/man3/d2i_PKCS8PrivateKey_bio.pod +++ b/doc/man3/d2i_PKCS8PrivateKey_bio.pod @@ -45,6 +45,10 @@ Currently all the functions use BIOs or FILE pointers, there are no functions wh work directly on memory: this can be readily worked around by converting the buffers to memory BIOs, see L for details. +These functions make no assumption regarding the pass phrase received from the +password callback. +It will simply be treated as a byte sequence. + =head1 RETURN VALUES d2i_PKCS8PrivateKey_bio() and d2i_PKCS8PrivateKey_fp() return a valid B @@ -55,7 +59,8 @@ and i2d_PKCS8PrivateKey_nid_fp() return 1 on success or 0 on error. =head1 SEE ALSO -L +L, +L =head1 COPYRIGHT diff --git a/doc/man3/d2i_PrivateKey.pod b/doc/man3/d2i_PrivateKey.pod index f5b4667a..13415d54 100644 --- a/doc/man3/d2i_PrivateKey.pod +++ b/doc/man3/d2i_PrivateKey.pod @@ -44,7 +44,7 @@ These functions are similar to the d2i_X509() functions; see L. All these functions use DER format and unencrypted keys. Applications wishing to encrypt or decrypt private keys should use other functions such as -d2i_PKC8PrivateKey() instead. +d2i_PKCS8PrivateKey() instead. If the B<*a> is not NULL when calling d2i_PrivateKey() or d2i_AutoPrivateKey() (i.e. an existing structure is being reused) and the key format is PKCS#8 @@ -67,7 +67,7 @@ L =head1 COPYRIGHT -Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man5/config.pod b/doc/man5/config.pod index 485ec087..3e110b03 100644 --- a/doc/man5/config.pod +++ b/doc/man5/config.pod @@ -18,7 +18,7 @@ started or end of file is reached. A section name can consist of alphanumeric characters and underscores. The first section of a configuration file is special and is referred -to as the B section this is usually unnamed and is from the +to as the B section. This section is usually unnamed and spans from the start of file until the first named section. When a name is being looked up it is first looked up in a named section (if any) and then the default section. @@ -88,9 +88,9 @@ of the configuration file. The configuration section should consist of a set of name value pairs which contain specific module configuration information. The B represents -the name of the I the meaning of the B is +the name of the I. The meaning of the B is module specific: it may, for example, represent a further configuration -section containing configuration module specific information. E.g. +section containing configuration module specific information. E.g.: # This must be in the default section openssl_conf = openssl_init @@ -247,6 +247,22 @@ For example: ECDSA.Certificate = server-ecdsa.pem Ciphers = ALL:!RC4 +The system default configuration with name B if present will +be applied during any creation of the B structure. + +Example of a configuration with the system default: + + ssl_conf = ssl_sect + + [ssl_sect] + + system_default = system_default_sect + + [system_default_sect] + + MinProtocol = TLSv1.2 + + =head1 NOTES If a configuration file attempts to expand a variable that doesn't exist @@ -368,6 +384,22 @@ will output: showing that the OID "newoid1" has been added as "1.2.3.4.1". +=head1 ENVIRONMENT + +=over 4 + +=item B + +The path to the config file. +Ignored in set-user-ID and set-group-ID programs. + +=item B + +The path to the engines directory. +Ignored in set-user-ID and set-group-ID programs. + +=back + =head1 BUGS Currently there is no way to include characters using the octal B<\nnn> @@ -387,7 +419,7 @@ L, L, L =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man7/Ed25519.pod b/doc/man7/Ed25519.pod index da6cbc00..eacc05f2 100644 --- a/doc/man7/Ed25519.pod +++ b/doc/man7/Ed25519.pod @@ -39,6 +39,16 @@ For the B algorithm a context can be obtained by calling: EVP_PKEY_CTX *pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_ED448, NULL); +Ed25519 or Ed448 private keys can be set directly using +L or loaded from a PKCS#8 private key file +using L (or similar function). Completely new keys +can also be generated (see the example below). Setting a private key also sets +the associated public key. + +Ed25519 or Ed448 public keys can be set directly using +L or loaded from a SubjectPublicKeyInfo +structure in a PEM file using L (or similar function). + =head1 EXAMPLE This example generates an B private key and writes it to standard diff --git a/doc/man7/RAND.pod b/doc/man7/RAND.pod new file mode 100644 index 00000000..578018fe --- /dev/null +++ b/doc/man7/RAND.pod @@ -0,0 +1,78 @@ +=pod + +=head1 NAME + +RAND +- the OpenSSL random generator + +=head1 DESCRIPTION + +Random numbers are a vital part of cryptography, they are needed to provide +unpredictability for tasks like key generation, creating salts, and many more. +Software-based generators must be seeded with external randomness before they +can be used as a cryptographically-secure pseudo-random number generator +(CSPRNG). +The availability of common hardware with special instructions and +modern operating systems, which may use items such as interrupt jitter +and network packet timings, can be reasonable sources of seeding material. + +OpenSSL comes with a default implementation of the RAND API which is based on +the deterministic random bit generator (DRBG) model as described in +[NIST SP 800-90A Rev. 1]. The default random generator will initialize +automatically on first use and will be fully functional without having +to be initialized ('seeded') explicitly. +It seeds and reseeds itself automatically using trusted random sources +provided by the operating system. + +As a normal application developer, you don't have to worry about any details, +just use L to obtain random data. +Having said that, there is one important rule to obey: Always check the error +return value of L and don't take randomness for granted. + +For long-term secrets, you can use L instead. +This method does not provide 'better' randomness, it uses the same type of CSPRNG. +The intention behind using a dedicated CSPRNG exclusively for long-term secrets is +that none of its output should be visible to an attacker (e.g used as salt value), +in order to reveal as little information as possible about its internal state. + +In the rare case where the default implementation does not satisfy your special +requirements, there are two options: + +=over 2 + +=item * + +Replace the default RAND method by your own RAND method using +L. + +=item * + +Modify the default settings of the OpenSSL RAND method by modifying the security +parameters of the underlying DRBG, which is described in detail in L. + +=back + +Changing the default random generator or its default parameters should be necessary +only in exceptional cases and is not recommended, unless you have a profound knowledge +of cryptographic principles and understand the implications of your changes. + +=head1 SEE ALSO + +L, +L, +L, +L +L +L, +L, + +=head1 COPYRIGHT + +Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man7/RAND_DRBG.pod b/doc/man7/RAND_DRBG.pod new file mode 100644 index 00000000..9f7f1247 --- /dev/null +++ b/doc/man7/RAND_DRBG.pod @@ -0,0 +1,301 @@ +=pod + +=head1 NAME + +RAND_DRBG - the deterministic random bit generator + +=head1 SYNOPSIS + + #include + +=head1 DESCRIPTION + +The default OpenSSL RAND method is based on the RAND_DRBG class, +which implements a deterministic random bit generator (DRBG). +A DRBG is a certain type of cryptographically-secure pseudo-random +number generator (CSPRNG), which is described in +[NIST SP 800-90A Rev. 1]. + +While the RAND API is the 'frontend' which is intended to be used by +application developers for obtaining random bytes, the RAND_DRBG API +serves as the 'backend', connecting the former with the operating +systems's entropy sources and providing access to the DRBG's +configuration parameters. + +=head2 Disclaimer + +Unless you have very specific requirements for your random generator, +it is in general not necessary to utilize the RAND_DRBG API directly. +The usual way to obtain random bytes is to use L or +L, see also L. + +=head2 Typical Use Cases + +Typical examples for such special use cases are the following: + +=over 2 + +=item * + +You want to use your own private DRBG instances. +Multiple DRBG instances which are accessed only by a single thread provide +additional security (because their internal states are independent) and +better scalability in multithreaded applications (because they don't need +to be locked). + +=item * + +You need to integrate a previously unsupported entropy source. + +=item * + +You need to change the default settings of the standard OpenSSL RAND +implementation to meet specific requirements. + +=back + + +=head1 CHAINING + +A DRBG instance can be used as the entropy source of another DRBG instance, +provided it has itself access to a valid entropy source. +The DRBG instance which acts as entropy source is called the I DRBG, +the other instance the I DRBG. + +This is called chaining. A chained DRBG instance is created by passing +a pointer to the parent DRBG as argument to the RAND_DRBG_new() call. +It is possible to create chains of more than two DRBG in a row. + +=head1 THE THREE SHARED DRBG INSTANCES + +Currently, there are three shared DRBG instances, +the , , and DRBG. +While the DRBG is a single global instance, the and +DRBG are created per thread and accessed through thread-local storage. + +By default, the functions L and L use +the thread-local and DRBG instance, respectively. + +=head2 The DRBG instance + +The DRBG is not used directly by the application, only for reseeding +the two other two DRBG instances. It reseeds itself by obtaining randomness +either from os entropy sources or by consuming randomness which was added +previously by L. + +=head2 The DRBG instance + +This instance is used per default by L. + +=head2 The DRBG instance + +This instance is used per default by L + + +=head1 LOCKING + +The DRBG is intended to be accessed concurrently for reseeding +by its child DRBG instances. The necessary locking is done internally. +It is I thread-safe to access the DRBG directly via the +RAND_DRBG interface. +The and DRBG are thread-local, i.e. there is an +instance of each per thread. So they can safely be accessed without +locking via the RAND_DRBG interface. + +Pointers to these DRBG instances can be obtained using +RAND_DRBG_get0_master(), +RAND_DRBG_get0_public(), and +RAND_DRBG_get0_private(), respectively. +Note that it is not allowed to store a pointer to one of the thread-local +DRBG instances in a variable or other memory location where it will be +accessed and used by multiple threads. + +All other DRBG instances created by an application don't support locking, +because they are intended to be used by a single thread. +Instead of accessing a single DRBG instance concurrently from different +threads, it is recommended to instantiate a separate DRBG instance per +thread. Using the DRBG as entropy source for multiple DRBG +instances on different threads is thread-safe, because the DRBG instance +will lock the DRBG automatically for obtaining random input. + +=head1 THE OVERALL PICTURE + +The following picture gives an overview over how the DRBG instances work +together and are being used. + + +--------------------+ + | os entropy sources | + +--------------------+ + | + v +-----------------------------+ + RAND_add() ==> <-| shared DRBG (with locking) | + / \ +-----------------------------+ + / \ +---------------------------+ + <- | per-thread DRBG instances | + | | +---------------------------+ + v v + RAND_bytes() RAND_priv_bytes() + | ^ + | | + +------------------+ +------------------------------------+ + | general purpose | | used for secrets like session keys | + | random generator | | and private keys for certificates | + +------------------+ +------------------------------------+ + + +The usual way to obtain random bytes is to call RAND_bytes(...) or +RAND_priv_bytes(...). These calls are roughly equivalent to calling +RAND_DRBG_bytes(, ...) and RAND_DRBG_bytes(, ...), +respectively. The method L is a convenience method +wrapping the L function, which serves the actual +request for random data. + +=head1 RESEEDING + +A DRBG instance seeds itself automatically, pulling random input from +its entropy source. The entropy source can be either a trusted operating +system entropy source, or another DRBG with access to such a source. + +Automatic reseeding occurs after a predefined number of generate requests. +The selection of the trusted entropy sources is configured at build +time using the --with-rand-seed option. The following sections explain +the reseeding process in more detail. + +=head2 Automatic Reseeding + +Before satisfying a generate request (L), the DRBG +reseeds itself automatically, if one of the following conditions holds: + +- the DRBG was not instantiated (=seeded) yet or has been uninstantiated. + +- the number of generate requests since the last reseeding exceeds a +certain threshold, the so called I. +This behaviour can be disabled by setting the I to 0. + +- the time elapsed since the last reseeding exceeds a certain time +interval, the so called I. +This can be disabled by setting the I to 0. + +- the DRBG is in an error state. + +B: An error state is entered if the entropy source fails while +the DRBG is seeding or reseeding. +The last case ensures that the DRBG automatically recovers +from the error as soon as the entropy source is available again. + +=head2 Manual Reseeding + +In addition to automatic reseeding, the caller can request an immediate +reseeding of the DRBG with fresh entropy by setting the +I parameter to 1 when calling L. + +The dcoument [NIST SP 800-90C] describes prediction resistance requests +in detail and imposes strict conditions on the entropy sources that are +approved for providing prediction resistance. +Since the default DRBG implementation does not have access to such an approved +entropy source, a request for prediction resistance will currently always fail. +In other words, prediction resistance is currently not supported yet by the DRBG. + + +For the three shared DRBGs (and only for these) there is another way to +reseed them manually: +If L is called with a positive I argument +(or L), then this will immediately reseed the DRBG. +The and DRBG will detect this on their next generate +call and reseed, pulling randomness from . + +The last feature has been added to support the common practice used with +previous OpenSSL versions to call RAND_add() before calling RAND_bytes(). + + +=head2 Entropy Input vs. Additional Data + +The DRBG distinguishes two different types of random input: I, +which comes from a trusted source, and I', +which can optionally be added by the user and is considered untrusted. +It is possible to add I not only during reseeding, +but also for every generate request. +This is in fact done automatically by L. + + +=head2 Configuring the Random Seed Source + +In most cases OpenSSL will automatically choose a suitable seed source +for automatically seeding and reseeding its DRBG. In some cases +however, it will be necessary to explicitely specify a seed source during +configuration, using the --with-rand-seed option. For more information, +see the INSTALL instructions. There are also operating systems where no +seed source is available and automatic reseeding is disabled by default. + +The following two sections describe the reseeding process of the master +DRBG, depending on whether automatic reseeding is available or not. + + +=head2 Reseeding the master DRBG with automatic seeding enabled + +Calling RAND_poll() or RAND_add() is not necessary, because the DRBG +pulls the necessary entropy from its source automatically. +However, both calls are permitted, and do reseed the RNG. + +RAND_add() can be used to add both kinds of random input, depending on the +value of the B argument: + +=over 4 + +=item randomness == 0: + +The random bytes are mixed as additional input into the current state of +the DRBG. +Mixing in additional input is not considered a full reseeding, hence the +reseed counter is not reset. + + +=item randomness > 0: + +The random bytes are used as entropy input for a full reseeding +(resp. reinstantiation) if the DRBG is instantiated +(resp. uninstantiated or in an error state). +The number of random bits required for reseeding is determined by the +security strength of the DRBG. Currently it defaults to 256 bits (32 bytes). +It is possible to provide less randomness than required. +In this case the missing randomness will be obtained by pulling random input +from the trusted entropy sources. + +=back + +=head2 Reseeding the master DRBG with automatic seeding disabled + +Calling RAND_poll() will always fail. + +RAND_add() needs to be called for initial seeding and periodic reseeding. +At least 48 bytes (384 bits) of randomness have to be provided, otherwise +the (re-)seeding of the DRBG will fail. This corresponds to one and a half +times the security strength of the DRBG. The extra half is used for the +nonce during instantiation. + +More precisely, the number of bytes needed for seeding depend on the +I of the DRBG, which is set to 256 by default. + +=head1 SEE ALSO + +L, +L, +L, +L, +L, +L, +L, +L, +L, +L, + +=head1 COPYRIGHT + +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man7/RSA-PSS.pod b/doc/man7/RSA-PSS.pod index b608561b..29775d86 100644 --- a/doc/man7/RSA-PSS.pod +++ b/doc/man7/RSA-PSS.pod @@ -4,17 +4,6 @@ RSA-PSS - EVP_PKEY RSA-PSS algorithm support -=head1 SYNOPSIS - - #include - - int EVP_PKEY_CTX_set_rsa_pss_keygen_md(EVP_PKEY_CTX *pctx, - const EVP_MD *md); - int EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md(EVP_PKEY_CTX *pctx, - const EVP_MD *md); - int EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen(EVP_PKEY_CTX *pctx, - int saltlen); - =head1 DESCRIPTION The B EVP_PKEY implementation is a restricted version of the RSA @@ -26,7 +15,7 @@ It has associated private key and public key formats. This algorithm shares several control operations with the B algorithm but with some restrictions described below. -=head1 SIGNING AND VERIFICATION +=head2 Signing and Verification Signing and verification is similar to the B algorithm except the padding mode is always PSS. If the key in use has parameter restrictions then @@ -35,73 +24,34 @@ for example, if the key can only be used with digest SHA256, MGF1 SHA256 and minimum salt length 32 then the digest, MGF1 digest and salt length will be set to SHA256, SHA256 and 32 respectively. -The macro EVP_PKEY_CTX_set_rsa_padding() is supported but an error is -returned if an attempt is made to set the padding mode to anything other -than B. It is otherwise similar to the B version. +=head2 Key Generation -The EVP_PKEY_CTX_set_rsa_pss_saltlen() macro is used to set the salt length. -If the key has usage restrictions then an error is returned if an attempt is -made to set the salt length below the minimum value. It is otherwise similar -to the B operation except detection of the salt length (using -RSA_PSS_SALTLEN_AUTO is not supported for verification if the key has -usage restrictions. - -The EVP_PKEY_CTX_set_signature_md() and EVP_PKEY_CTX_set_rsa_mgf1_md() macros -are used to set the digest and MGF1 algorithms respectively. If the key has -usage restrictions then an error is returned if an attempt is made to set the -digest to anything other than the restricted value. Otherwise these are -similar to the B versions. - -=head1 KEY GENERATION - -As with RSA key generation the EVP_PKEY_CTX_set_rsa_rsa_keygen_bits() -and EVP_PKEY_CTX_set_rsa_keygen_pubexp() macros are supported for RSA-PSS: -they have exactly the same meaning as for the RSA algorithm. - -Optional parameter restrictions can be specified when generating a PSS key. By -default no parameter restrictions are placed on the generated key. If any -restrictions are set (using the macros described below) then B parameters -are restricted. For example, setting a minimum salt length also restricts the -digest and MGF1 algorithms. If any restrictions are in place then they are -reflected in the corresponding parameters of the public key when (for example) -a certificate request is signed. - -EVP_PKEY_CTX_set_rsa_pss_keygen_md() restricts the digest algorithm the -generated key can use to B. - -EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md() restricts the MGF1 algorithm the -generated key can use to B. - -EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen() restricts the minimum salt length -to B. +By default no parameter restrictions are placed on the generated key. =head1 NOTES -A context for the B algorithm can be obtained by calling: - - EVP_PKEY_CTX *pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_RSA_PSS, NULL); - The public key format is documented in RFC4055. The PKCS#8 private key format used for RSA-PSS keys is similar to the RSA format except it uses the B OID and the parameters field, if present, restricts the key parameters in the same way as the public key. -=head1 RETURN VALUES +=head1 CONFORMING TO -All these functions return 1 for success and 0 or a negative value for failure. -In particular a return value of -2 indicates the operation is not supported by -the public key algorithm. +RFC 4055 =head1 SEE ALSO +L, +L, +L, L, L, L =head1 COPYRIGHT -Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man7/X25519.pod b/doc/man7/X25519.pod index 69ab0b4a..7cb6ff6b 100644 --- a/doc/man7/X25519.pod +++ b/doc/man7/X25519.pod @@ -27,6 +27,16 @@ For the B algorithm a context can be obtained by calling: EVP_PKEY_CTX *pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_X448, NULL); +X25519 or X448 private keys can be set directly using +L or loaded from a PKCS#8 private key file +using L (or similar function). Completely new keys +can also be generated (see the example below). Setting a private key also sets +the associated public key. + +X25519 or X448 public keys can be set directly using +L or loaded from a SubjectPublicKeyInfo +structure in a PEM file using L (or similar function). + =head1 EXAMPLE This example generates an B private key and writes it to standard diff --git a/doc/man7/passphrase-encoding.pod b/doc/man7/passphrase-encoding.pod new file mode 100644 index 00000000..bc777c90 --- /dev/null +++ b/doc/man7/passphrase-encoding.pod @@ -0,0 +1,182 @@ +=pod + +=encoding utf8 + +=head1 NAME + +password encoding +- How diverse parts of OpenSSL treat pass phrases character encoding + +=head1 DESCRIPTION + +In a modern world with all sorts of character encodings, the treatment of pass +phrases has become increasingly complex. +This manual page attempts to give an overview over how this problem is +currently addressed in different parts of the OpenSSL library. + +=head2 The general case + +The OpenSSL library doesn't treat pass phrases in any special way as a general +rule, and trusts the application or user to choose a suitable character set +and stick to that throughout the lifetime of affected objects. +This means that for an object that was encrypted using a pass phrase encoded in +ISO-8859-1, that object needs to be decrypted using a pass phrase encoded in +ISO-8859-1. +Using the wrong encoding is expected to cause a decryption failure. + +=head2 PKCS#12 + +PKCS#12 is a bit different regarding pass phrase encoding. +The standard stipulates that the pass phrase shall be encoded as an ASN.1 +BMPString, which consists of the code points of the basic multilingual plane, +encoded in big endian (UCS-2 BE). + +OpenSSL tries to adapt to this requirements in one of the following manners: + +=over 4 + +=item 1. + +Treats the received pass phrase as UTF-8 encoded and tries to re-encode it to +UTF-16 (which is the same as UCS-2 for characters U+0000 to U+D7FF and U+E000 +to U+FFFF, but becomes an expansion for any other character), or failing that, +proceeds with step 2. + +=item 2. + +Assumes that the pass phrase is encoded in ASCII or ISO-8859-1 and +opportunistically prepends each byte with a zero byte to obtain the UCS-2 +encoding of the characters, which it stores as a BMPString. + +Note that since there is no check of your locale, this may produce UCS-2 / +UTF-16 characters that do not correspond to the original pass phrase characters +for other character sets, such as any ISO-8859-X encoding other than +ISO-8859-1 (or for Windows, CP 1252 with exception for the extra "graphical" +characters in the 0x80-0x9F range). + +=back + +OpenSSL versions older than 1.1.0 do variant 2 only, and that is the reason why +OpenSSL still does this, to be able to read files produced with older versions. + +It should be noted that this approach isn't entirely fault free. + +A passphrase encoded in ISO-8859-2 could very well have a sequence such as +0xC3 0xAF (which is the two characters "LATIN CAPITAL LETTER A WITH BREVE" +and "LATIN CAPITAL LETTER Z WITH DOT ABOVE" in ISO-8859-2 encoding), but would +be misinterpreted as the perfectly valid UTF-8 encoded code point U+00EF (LATIN +SMALL LETTER I WITH DIARESIS) I. +A pass phrase that contains this kind of byte sequence will give a different +outcome in OpenSSL 1.1.0 and newer than in OpenSSL older than 1.1.0. + + 0x00 0xC3 0x00 0xAF # OpenSSL older than 1.1.0 + 0x00 0xEF # OpenSSL 1.1.0 and newer + +On the same accord, anything encoded in UTF-8 that was given to OpenSSL older +than 1.1.0 was misinterpreted as ISO-8859-1 sequences. + +=head2 OSSL_STORE + +L acts as a general interface to access all kinds of objects, +potentially protected with a pass phrase, a PIN or something else. +This API currently doesn't stipulate any specific encoding of pass phrases, but +uses the underlying routines with their behaviours. +This means that when using the built-in C scheme loader, the pass phrase +to unlock a PKCS#12 file will be treated as described for PKCS#12 above, and +the pass phrase for a PEM files will be treated as the general case described +above, since that loader uses the same underlying routines. +I. + +=head1 RECOMMENDATIONS + +This section assumes that you know what pass phrase was used for encryption, +but that it may have been encoded in a different character encoding than the +one used by your current input method. +For example, the pass phrase may have been used at a time when your default +encoding was ISO-8859-1 (i.e. "naĂŻve" resulting in the byte sequence 0x6E 0x61 +0xEF 0x76 0x65), and you're now in an environment where your default encoding +is UTF-8 (i.e. "naĂŻve" resulting in the byte sequence 0x6E 0x61 0xC3 0xAF 0x76 +0x65). +Whenever it's mentioned that you should use a certain character encoding, it +should be understood that you either change the input method to use the +mentioned encoding when you type in your pass phrase, or use some suitable tool +to convert your pass phrase from your default encoding to the target encoding. + +Also note that the sub-sections below discuss human readable pass phrases. +This is particularly relevant for PKCS#12 objects, where human readable pass +phrases are assumed. +For other objects, it's as legitimate to use any byte sequence (such as a +sequence of bytes from `/dev/urandom` that's been saved away), which makes any +character encoding discussion irrelevant; in such cases, simply use the same +byte sequence as it is. + +=head2 Creating new objects + +For creating new pass phrase protected objects, make sure the pass phrase is +encoded using UTF-8. +This is default on most modern Unixes, but may involve an effort on other +platforms. +Specifically for Windows, setting the environment variable +C will have anything entered on [Windows] console prompt +converted to UTF-8 (command line and separately prompted pass phrases alike). + +=head2 Opening existing objects + +For opening pass phrase protected objects where you know what character +encoding was used for the encryption pass phrase, make sure to use the same +encoding again. + +For opening pass phrase protected objects where the character encoding that was +used is unknown, or where the producing application is unknown, try one of the +following: + +=over 4 + +=item 1. + +Try the password that you have as it is in the character encoding of your +environment. +It's possible that its byte sequence is exactly right. + +=item 2. + +Convert the pass phrase to UTF-8 and try with the result. +Specifically with PKCS#12, this should open up any object that was created +according to the specification. + +=item 3. + +Do a naĂŻve (i.e. purely mathematical) ISO-8859-1 to UTF-8 conversion and try +with the result. +This differs from the previous attempt because ISO-8859-1 maps directly to +U+0000 to U+00FF, which other non-UTF-8 character sets do not. + +This also takes care of the case when a UTF-8 encoded string was used with +OpenSSL older than 1.1.0. +(for example, C<ĂŻ>, which is 0xC3 0xAF when encoded in UTF-8, would become 0xC3 +0x83 0xC2 0xAF when re-encoded in the naĂŻve manner. +The conversion to BMPString would then yield 0x00 0xC3 0x00 0xA4 0x00 0x00, the +erroneous/non-compliant encoding used by OpenSSL older than 1.1.0) + +=back + +=head1 SEE ALSO + +L, +L, +L, L, +L, +L, L, +L + +=head1 COPYRIGHT + +Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man7/scrypt.pod b/doc/man7/scrypt.pod index 4de0c723..94ff3ab5 100644 --- a/doc/man7/scrypt.pod +++ b/doc/man7/scrypt.pod @@ -4,24 +4,6 @@ scrypt - EVP_PKEY scrypt KDF support -=head1 SYNOPSIS - - #include - - int EVP_PKEY_CTX_set1_pbe_pass(EVP_PKEY_CTX *pctx, unsigned char *pass, - int passlen); - - int EVP_PKEY_CTX_set1_scrypt_salt(EVP_PKEY_CTX *pctx, unsigned char *salt, - int saltlen); - - int EVP_PKEY_CTX_set_scrypt_N(EVP_PKEY_CTX *pctx, uint64_t N); - - int EVP_PKEY_CTX_set_scrypt_r(EVP_PKEY_CTX *pctx, uint64_t r); - - int EVP_PKEY_CTX_set_scrypt_p(EVP_PKEY_CTX *pctx, uint64_t p); - - int EVP_PKEY_CTX_set_scrypt_maxmem_bytes(EVP_PKEY_CTX *pctx, uint64_t maxmem); - =head1 DESCRIPTION The EVP_PKEY_SCRYPT algorithm implements the scrypt password based key @@ -47,44 +29,14 @@ GHz), this computation takes about 3 seconds. When N, r or p are not specified, they default to 1048576, 8, and 1, respectively. The default amount of RAM that may be used by scrypt defaults to 1025 MiB. -EVP_PKEY_CTX_set1_pbe_pass() sets the B bytes long password. - -EVP_PKEY_CTX_set1_scrypt_salt() sets the B bytes long salt value. - -EVP_PKEY_CTX_set_scrypt_N(), EVP_PKEY_CTX_set_scrypt_r() and -EVP_PKEY_CTX_set_scrypt_p() configure the work factors N, r and p. - -EVP_PKEY_CTX_set_scrypt_maxmem_bytes() sets how much RAM key derivation may -maximally use, given in bytes. If RAM is exceeded because the load factors are -chosen too high, the key derivation will fail. - -=head1 STRING CTRLS - -scrypt also supports string based control operations via -L. -The B can be directly specified using the B parameter "pass" or -given in hex encoding using the "hexpass" parameter. Similarly, the B can -either be specified using the B parameter "salt" or in hex encoding by -using the "hexsalt" parameter. The work factors B, B and B

as well as -B can be set by using the parameters "N", "r", "p" and -"maxmem_bytes", respectively. - =head1 NOTES -All these functions are implemented as macros. - A context for scrypt can be obtained by calling: - EVP_PKEY_CTX *pctx = EVP_PKEY_new_id(EVP_PKEY_SCRYPT, NULL); + EVP_PKEY_CTX *pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_SCRYPT, NULL); -The output length of an scrypt key derivation is specified via the length -parameter to the L function. - -=head1 RETURN VALUES - -All these functions return 1 for success and 0 or a negative value for failure. -In particular a return value of -2 indicates the operation is not supported by -the public key algorithm. +The output length of an scrypt key derivation is specified via the +length parameter to the L function. =head1 EXAMPLE @@ -142,13 +94,18 @@ RFC 7914 =head1 SEE ALSO +L, +L, +L, +L, +L, L, L, L =head1 COPYRIGHT -Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy diff --git a/doc/man7/ssl.pod b/doc/man7/ssl.pod index 03efc520..c1e49249 100644 --- a/doc/man7/ssl.pod +++ b/doc/man7/ssl.pod @@ -89,12 +89,6 @@ includes both more private SSL headers and headers from the B library. Whenever you need hard-core details on the internals of the SSL API, look inside this header file. -OPENSSL_VERSION_AT_LEAST(major,minor) can be -used in C<#if> statements in order to determine which version of the library is -being used. This can be used to either enable optional features at compile -time, or work around issues with a previous version. -See L. - =item B Unused. Present for backwards compatibility only. @@ -576,7 +570,7 @@ fresh handle for each connection. =item SSL_SESSION *B(const SSL *ssl); -=item char *B(const SSL *ssl, char *buf, int len); +=item char *B(const SSL *ssl, char *buf, int size); =item int B(const SSL *ssl); diff --git a/engines/asm/e_padlock-x86.pl b/engines/asm/e_padlock-x86.pl index c4129e83..5b097ce3 100644 --- a/engines/asm/e_padlock-x86.pl +++ b/engines/asm/e_padlock-x86.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2011-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -73,11 +73,20 @@ $chunk="ebx"; &cpuid (); &xor ("eax","eax"); &cmp ("ebx","0x".unpack("H*",'tneC')); - &jne (&label("noluck")); + &jne (&label("zhaoxin")); &cmp ("edx","0x".unpack("H*",'Hrua')); &jne (&label("noluck")); &cmp ("ecx","0x".unpack("H*",'slua')); &jne (&label("noluck")); + &jmp (&label("zhaoxinEnd")); +&set_label("zhaoxin"); + &cmp ("ebx","0x".unpack("H*",'hS ')); + &jne (&label("noluck")); + &cmp ("edx","0x".unpack("H*",'hgna')); + &jne (&label("noluck")); + &cmp ("ecx","0x".unpack("H*",' ia')); + &jne (&label("noluck")); +&set_label("zhaoxinEnd"); &mov ("eax",0xC0000000); &cpuid (); &mov ("edx","eax"); diff --git a/engines/asm/e_padlock-x86_64.pl b/engines/asm/e_padlock-x86_64.pl index 834b1ea7..09b0aaa4 100644 --- a/engines/asm/e_padlock-x86_64.pl +++ b/engines/asm/e_padlock-x86_64.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2011-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -57,11 +57,20 @@ padlock_capability: cpuid xor %eax,%eax cmp \$`"0x".unpack("H*",'tneC')`,%ebx - jne .Lnoluck + jne .Lzhaoxin cmp \$`"0x".unpack("H*",'Hrua')`,%edx jne .Lnoluck cmp \$`"0x".unpack("H*",'slua')`,%ecx jne .Lnoluck + jmp .LzhaoxinEnd +.Lzhaoxin: + cmp \$`"0x".unpack("H*",'hS ')`,%ebx + jne .Lnoluck + cmp \$`"0x".unpack("H*",'hgna')`,%edx + jne .Lnoluck + cmp \$`"0x".unpack("H*",' ia')`,%ecx + jne .Lnoluck +.LzhaoxinEnd: mov \$0xC0000000,%eax cpuid mov %eax,%edx diff --git a/engines/e_capi.c b/engines/e_capi.c index 4660f1a3..a7658922 100644 --- a/engines/e_capi.c +++ b/engines/e_capi.c @@ -1,5 +1,5 @@ /* - * Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2008-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -577,7 +577,7 @@ static int bind_helper(ENGINE *e, const char *id) } IMPLEMENT_DYNAMIC_CHECK_FN() - IMPLEMENT_DYNAMIC_BIND_FN(bind_helper) +IMPLEMENT_DYNAMIC_BIND_FN(bind_helper) # else static ENGINE *engine_capi(void) { @@ -835,7 +835,7 @@ int capi_rsa_sign(int dtype, const unsigned char *m, unsigned int m_len, CAPIerr(CAPI_F_CAPI_RSA_SIGN, CAPI_R_CANT_GET_KEY); return -1; } -/* Convert the signature type to a CryptoAPI algorithm ID */ + /* Convert the signature type to a CryptoAPI algorithm ID */ switch (dtype) { case NID_sha256: alg = CALG_SHA_256; @@ -870,13 +870,13 @@ int capi_rsa_sign(int dtype, const unsigned char *m, unsigned int m_len, } } -/* Create the hash object */ + /* Create the hash object */ if (!CryptCreateHash(capi_key->hprov, alg, 0, 0, &hash)) { CAPIerr(CAPI_F_CAPI_RSA_SIGN, CAPI_R_CANT_CREATE_HASH_OBJECT); capi_addlasterror(); return -1; } -/* Set the hash value to the value passed */ + /* Set the hash value to the value passed */ if (!CryptSetHashParam(hash, HP_HASHVAL, (unsigned char *)m, 0)) { CAPIerr(CAPI_F_CAPI_RSA_SIGN, CAPI_R_CANT_SET_HASH_VALUE); @@ -884,7 +884,7 @@ int capi_rsa_sign(int dtype, const unsigned char *m, unsigned int m_len, goto err; } -/* Finally sign it */ + /* Finally sign it */ slen = RSA_size(rsa); if (!CryptSignHash(hash, capi_key->keyspec, NULL, 0, sigret, &slen)) { CAPIerr(CAPI_F_CAPI_RSA_SIGN, CAPI_R_ERROR_SIGNING_HASH); @@ -1477,8 +1477,10 @@ static CAPI_KEY *capi_get_key(CAPI_CTX *ctx, const WCHAR *contname, ptype = PROV_RSA_AES; } if (ctx && ctx->debug_level >= CAPI_DBG_TRACE && ctx->debug_file) { - /* above 'if' is [complementary] copy from CAPI_trace and serves - * as optimization to minimize [below] malloc-ations */ + /* + * above 'if' is [complementary] copy from CAPI_trace and serves + * as optimization to minimize [below] malloc-ations + */ char *_contname = wide_to_asc(contname); char *_provname = wide_to_asc(provname); diff --git a/engines/e_ossltest.c b/engines/e_ossltest.c index 2bda610f..64376247 100644 --- a/engines/e_ossltest.c +++ b/engines/e_ossltest.c @@ -637,7 +637,7 @@ int ossltest_aes128_gcm_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, EVP_CIPHER_meth_get_do_cipher(EVP_aes_128_gcm())(ctx, out, in, inl); /* Throw it all away and just use the plaintext as the output */ - if (tmpbuf != NULL) + if (tmpbuf != NULL && out != NULL) memcpy(out, tmpbuf, inl); OPENSSL_free(tmpbuf); diff --git a/fuzz/corpora/asn1/eba5151118ff75ce6a86438a3a6f819c41d8be40 b/fuzz/corpora/asn1/eba5151118ff75ce6a86438a3a6f819c41d8be40 new file mode 100644 index 0000000000000000000000000000000000000000..030b71013119b7708e1a7b20b3e0621440ecc704 GIT binary patch literal 73846 zcmeI%F%E)25CzcLHPKj*cm!&zweSueYbwsc0qJcGAsV9|K**z{9Oi%CLd%x><9WCZ z_pTi3m@RARFX65^*oW2RB7Y{<-KEdW!5rS-Z}!1H*oSZT$%S0VgMMr_1JY{W)v#71nyMxXzO7?BYfkr5e@5gCyY8Ichgk&3C9im8~2shEnXn2M>G zim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2 zshEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnX zn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>G zim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2 zshEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnX zn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M>G zim8~2shEnXn2M>Gim8~2shEnXn2M>Gim8~2shEnXn2M=*^D5qY(^=s)J>tJVfy8p1 Q;`%%(%;TL}#I8id1Kr0PcK`qY literal 0 HcmV?d00001 diff --git a/fuzz/oids.txt b/fuzz/oids.txt index 455c5ee2..9251b55d 100644 --- a/fuzz/oids.txt +++ b/fuzz/oids.txt @@ -848,6 +848,8 @@ OBJ_id_camellia256_wrap="\x2A\x83\x08\x8C\x9A\x4B\x3D\x01\x01\x03\x04" OBJ_anyExtendedKeyUsage="\x55\x1D\x25\x00" OBJ_mgf1="\x2A\x86\x48\x86\xF7\x0D\x01\x01\x08" OBJ_rsassaPss="\x2A\x86\x48\x86\xF7\x0D\x01\x01\x0A" +OBJ_aes_128_xts="\x2B\x6F\x02\x8C\x53\x00\x01\x01" +OBJ_aes_256_xts="\x2B\x6F\x02\x8C\x53\x00\x01\x02" OBJ_rsaesOaep="\x2A\x86\x48\x86\xF7\x0D\x01\x01\x07" OBJ_dhpublicnumber="\x2A\x86\x48\xCE\x3E\x02\x01" OBJ_brainpoolP160r1="\x2B\x24\x03\x03\x02\x08\x01\x01\x01" @@ -1042,3 +1044,6 @@ OBJ_uacurve6="\x2A\x86\x24\x02\x01\x01\x01\x01\x03\x01\x01\x02\x06" OBJ_uacurve7="\x2A\x86\x24\x02\x01\x01\x01\x01\x03\x01\x01\x02\x07" OBJ_uacurve8="\x2A\x86\x24\x02\x01\x01\x01\x01\x03\x01\x01\x02\x08" OBJ_uacurve9="\x2A\x86\x24\x02\x01\x01\x01\x01\x03\x01\x01\x02\x09" +OBJ_ieee="\x2B\x6F" +OBJ_ieee_siswg="\x2B\x6F\x02\x8C\x53" +OBJ_sm2="\x2A\x81\x1C\xCF\x55\x01\x82\x2D" diff --git a/fuzz/test-corpus.c b/fuzz/test-corpus.c index 9cef01f8..86be5337 100644 --- a/fuzz/test-corpus.c +++ b/fuzz/test-corpus.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL licenses, (the "License"); * you may not use this file except in compliance with the License. @@ -16,9 +16,47 @@ #include #include +#include #include #include #include "fuzzer.h" +#include "internal/o_dir.h" + +#if defined(_WIN32) && defined(_MAX_PATH) +# define PATH_MAX _MAX_PATH +#endif + +#ifndef PATH_MAX +# define PATH_MAX 4096 +#endif + +# if !defined(S_ISREG) +# define S_ISREG(m) ((m) & S_IFREG) +# endif + +static void testfile(const char *pathname) +{ + struct stat st; + FILE *f; + unsigned char *buf; + size_t s; + + if (stat(pathname, &st) < 0 || !S_ISREG(st.st_mode)) + return; + printf("# %s\n", pathname); + fflush(stdout); + f = fopen(pathname, "rb"); + if (f == NULL) + return; + buf = malloc(st.st_size); + if (buf != NULL) { + s = fread(buf, 1, st.st_size, f); + OPENSSL_assert(s == (size_t)st.st_size); + FuzzerTestOneInput(buf, s); + free(buf); + } + fclose(f); +} int main(int argc, char **argv) { int n; @@ -26,21 +64,38 @@ int main(int argc, char **argv) { FuzzerInitialize(&argc, &argv); for (n = 1; n < argc; ++n) { - struct stat st; - FILE *f; - unsigned char *buf; - size_t s; + size_t dirname_len = strlen(argv[n]); + const char *filename = NULL; + char *pathname = NULL; + OPENSSL_DIR_CTX *ctx = NULL; + int wasdir = 0; - stat(argv[n], &st); - f = fopen(argv[n], "rb"); - if (f == NULL) - continue; - buf = malloc(st.st_size); - s = fread(buf, 1, st.st_size, f); - OPENSSL_assert(s == (size_t)st.st_size); - FuzzerTestOneInput(buf, s); - free(buf); - fclose(f); + /* + * We start with trying to read the given path as a directory. + */ + while ((filename = OPENSSL_DIR_read(&ctx, argv[n])) != NULL) { + wasdir = 1; + if (pathname == NULL) { + pathname = malloc(PATH_MAX); + if (pathname == NULL) + break; + strcpy(pathname, argv[n]); +#ifdef __VMS + if (strchr(":<]", pathname[dirname_len - 1]) == NULL) +#endif + pathname[dirname_len++] = '/'; + pathname[dirname_len] = '\0'; + } + strcpy(pathname + dirname_len, filename); + testfile(pathname); + } + OPENSSL_DIR_end(&ctx); + + /* If it wasn't a directory, treat it as a file instead */ + if (!wasdir) + testfile(argv[n]); + + free(pathname); } FuzzerCleanup(); diff --git a/include/internal/sockets.h b/include/internal/sockets.h index 031156b9..a6026dad 100644 --- a/include/internal/sockets.h +++ b/include/internal/sockets.h @@ -93,10 +93,6 @@ struct servent *PASCAL getservbyname(const char *, const char *); # include # endif -# ifdef __QNX__ -# include -# endif - # ifndef VMS # include # else diff --git a/include/internal/sslconf.h b/include/internal/sslconf.h new file mode 100644 index 00000000..d538f861 --- /dev/null +++ b/include/internal/sslconf.h @@ -0,0 +1,20 @@ +/* + * Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#ifndef HEADER_SSLCONF_H +# define HEADER_SSLCONF_H + +typedef struct ssl_conf_cmd_st SSL_CONF_CMD; + +const SSL_CONF_CMD *conf_ssl_get(size_t idx, const char **name, size_t *cnt); +int conf_ssl_name_find(const char *name, size_t *idx); +void conf_ssl_get_cmd(const SSL_CONF_CMD *cmd, size_t idx, char **cmdstr, + char **arg); + +#endif diff --git a/include/openssl/asn1err.h b/include/openssl/asn1err.h index 7da927f6..048a737b 100644 --- a/include/openssl/asn1err.h +++ b/include/openssl/asn1err.h @@ -23,6 +23,7 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_A2I_ASN1_INTEGER 102 # define ASN1_F_A2I_ASN1_STRING 103 # define ASN1_F_APPEND_EXP 176 +# define ASN1_F_ASN1_BIO_INIT 113 # define ASN1_F_ASN1_BIT_STRING_SET_BIT 183 # define ASN1_F_ASN1_CB 177 # define ASN1_F_ASN1_CHECK_TLEN 104 @@ -34,6 +35,7 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_ASN1_DO_ADB 110 # define ASN1_F_ASN1_DO_LOCK 233 # define ASN1_F_ASN1_DUP 111 +# define ASN1_F_ASN1_ENC_SAVE 115 # define ASN1_F_ASN1_EX_C2I 204 # define ASN1_F_ASN1_FIND_END 190 # define ASN1_F_ASN1_GENERALIZEDTIME_ADJ 216 @@ -47,6 +49,7 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_ASN1_ITEM_DUP 191 # define ASN1_F_ASN1_ITEM_EMBED_D2I 120 # define ASN1_F_ASN1_ITEM_EMBED_NEW 121 +# define ASN1_F_ASN1_ITEM_FLAGS_I2D 118 # define ASN1_F_ASN1_ITEM_I2D_BIO 192 # define ASN1_F_ASN1_ITEM_I2D_FP 193 # define ASN1_F_ASN1_ITEM_PACK 198 @@ -58,6 +61,7 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_ASN1_OBJECT_NEW 123 # define ASN1_F_ASN1_OUTPUT_DATA 214 # define ASN1_F_ASN1_PCTX_NEW 205 +# define ASN1_F_ASN1_PRIMITIVE_NEW 119 # define ASN1_F_ASN1_SCTX_NEW 221 # define ASN1_F_ASN1_SIGN 128 # define ASN1_F_ASN1_STR2TYPE 179 @@ -91,7 +95,11 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_D2I_AUTOPRIVATEKEY 207 # define ASN1_F_D2I_PRIVATEKEY 154 # define ASN1_F_D2I_PUBLICKEY 155 +# define ASN1_F_DO_BUF 142 +# define ASN1_F_DO_CREATE 124 +# define ASN1_F_DO_DUMP 125 # define ASN1_F_DO_TCREATE 222 +# define ASN1_F_I2A_ASN1_OBJECT 126 # define ASN1_F_I2D_ASN1_BIO_STREAM 211 # define ASN1_F_I2D_DSA_PUBKEY 161 # define ASN1_F_I2D_EC_PUBKEY 181 @@ -99,6 +107,8 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_I2D_PUBLICKEY 164 # define ASN1_F_I2D_RSA_PUBKEY 165 # define ASN1_F_LONG_C2I 166 +# define ASN1_F_NDEF_PREFIX 127 +# define ASN1_F_NDEF_SUFFIX 136 # define ASN1_F_OID_MODULE_INIT 174 # define ASN1_F_PARSE_TAGGING 182 # define ASN1_F_PKCS5_PBE2_SET_IV 167 @@ -109,9 +119,12 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_PKCS5_SCRYPT_SET 232 # define ASN1_F_SMIME_READ_ASN1 212 # define ASN1_F_SMIME_TEXT 213 +# define ASN1_F_STABLE_GET 138 # define ASN1_F_STBL_MODULE_INIT 223 # define ASN1_F_UINT32_C2I 105 +# define ASN1_F_UINT32_NEW 139 # define ASN1_F_UINT64_C2I 112 +# define ASN1_F_UINT64_NEW 141 # define ASN1_F_X509_CRL_ADD0_REVOKED 169 # define ASN1_F_X509_INFO_NEW 170 # define ASN1_F_X509_NAME_ENCODE 203 @@ -191,6 +204,7 @@ int ERR_load_ASN1_strings(void); # define ASN1_R_MSTRING_NOT_UNIVERSAL 139 # define ASN1_R_MSTRING_WRONG_TAG 140 # define ASN1_R_NESTED_ASN1_STRING 197 +# define ASN1_R_NESTED_TOO_DEEP 201 # define ASN1_R_NON_HEX_CHARACTERS 141 # define ASN1_R_NOT_ASCII_FORMAT 190 # define ASN1_R_NOT_ENOUGH_DATA 142 diff --git a/include/openssl/asyncerr.h b/include/openssl/asyncerr.h index 5fcddaf2..5497ba75 100644 --- a/include/openssl/asyncerr.h +++ b/include/openssl/asyncerr.h @@ -25,6 +25,7 @@ int ERR_load_ASYNC_strings(void); # define ASYNC_F_ASYNC_PAUSE_JOB 103 # define ASYNC_F_ASYNC_START_FUNC 104 # define ASYNC_F_ASYNC_START_JOB 105 +# define ASYNC_F_ASYNC_WAIT_CTX_SET_WAIT_FD 106 /* * ASYNC reason codes. diff --git a/include/openssl/bio.h b/include/openssl/bio.h index c6f57f21..2888b42d 100644 --- a/include/openssl/bio.h +++ b/include/openssl/bio.h @@ -735,7 +735,7 @@ void BIO_copy_next_retry(BIO *b); * long BIO_ghbn_ctrl(int cmd,int iarg,char *parg); */ -# define __bio_h__attr__(x) +# define ossl_bio__attr__(x) # if defined(__GNUC__) && defined(__STDC_VERSION__) \ && !defined(__APPLE__) /* @@ -743,50 +743,56 @@ void BIO_copy_next_retry(BIO *b); * we can't use __attribute__ with pre C99 dialects. */ # if __STDC_VERSION__ >= 199901L -# undef __bio_h__attr__ -# define __bio_h__attr__ __attribute__ +# undef ossl_bio__attr__ +# define ossl_bio__attr__ __attribute__ +# if __GNUC__*10 + __GNUC_MINOR__ >= 44 +# define ossl_bio__printf__ __gnu_printf__ +# else +# define ossl_bio__printf__ __printf__ +# endif # endif # endif int BIO_printf(BIO *bio, const char *format, ...) -__bio_h__attr__((__format__(__printf__, 2, 3))); +ossl_bio__attr__((__format__(ossl_bio__printf__, 2, 3))); int BIO_vprintf(BIO *bio, const char *format, va_list args) -__bio_h__attr__((__format__(__printf__, 2, 0))); +ossl_bio__attr__((__format__(ossl_bio__printf__, 2, 0))); int BIO_snprintf(char *buf, size_t n, const char *format, ...) -__bio_h__attr__((__format__(__printf__, 3, 4))); +ossl_bio__attr__((__format__(ossl_bio__printf__, 3, 4))); int BIO_vsnprintf(char *buf, size_t n, const char *format, va_list args) -__bio_h__attr__((__format__(__printf__, 3, 0))); -# undef __bio_h__attr__ +ossl_bio__attr__((__format__(ossl_bio__printf__, 3, 0))); +# undef ossl_bio__attr__ +# undef ossl_bio__printf__ BIO_METHOD *BIO_meth_new(int type, const char *name); void BIO_meth_free(BIO_METHOD *biom); -int (*BIO_meth_get_write(BIO_METHOD *biom)) (BIO *, const char *, int); -int (*BIO_meth_get_write_ex(BIO_METHOD *biom)) (BIO *, const char *, size_t, +int (*BIO_meth_get_write(const BIO_METHOD *biom)) (BIO *, const char *, int); +int (*BIO_meth_get_write_ex(const BIO_METHOD *biom)) (BIO *, const char *, size_t, size_t *); int BIO_meth_set_write(BIO_METHOD *biom, int (*write) (BIO *, const char *, int)); int BIO_meth_set_write_ex(BIO_METHOD *biom, int (*bwrite) (BIO *, const char *, size_t, size_t *)); -int (*BIO_meth_get_read(BIO_METHOD *biom)) (BIO *, char *, int); -int (*BIO_meth_get_read_ex(BIO_METHOD *biom)) (BIO *, char *, size_t, size_t *); +int (*BIO_meth_get_read(const BIO_METHOD *biom)) (BIO *, char *, int); +int (*BIO_meth_get_read_ex(const BIO_METHOD *biom)) (BIO *, char *, size_t, size_t *); int BIO_meth_set_read(BIO_METHOD *biom, int (*read) (BIO *, char *, int)); int BIO_meth_set_read_ex(BIO_METHOD *biom, int (*bread) (BIO *, char *, size_t, size_t *)); -int (*BIO_meth_get_puts(BIO_METHOD *biom)) (BIO *, const char *); +int (*BIO_meth_get_puts(const BIO_METHOD *biom)) (BIO *, const char *); int BIO_meth_set_puts(BIO_METHOD *biom, int (*puts) (BIO *, const char *)); -int (*BIO_meth_get_gets(BIO_METHOD *biom)) (BIO *, char *, int); +int (*BIO_meth_get_gets(const BIO_METHOD *biom)) (BIO *, char *, int); int BIO_meth_set_gets(BIO_METHOD *biom, int (*gets) (BIO *, char *, int)); -long (*BIO_meth_get_ctrl(BIO_METHOD *biom)) (BIO *, int, long, void *); +long (*BIO_meth_get_ctrl(const BIO_METHOD *biom)) (BIO *, int, long, void *); int BIO_meth_set_ctrl(BIO_METHOD *biom, long (*ctrl) (BIO *, int, long, void *)); -int (*BIO_meth_get_create(BIO_METHOD *bion)) (BIO *); +int (*BIO_meth_get_create(const BIO_METHOD *bion)) (BIO *); int BIO_meth_set_create(BIO_METHOD *biom, int (*create) (BIO *)); -int (*BIO_meth_get_destroy(BIO_METHOD *biom)) (BIO *); +int (*BIO_meth_get_destroy(const BIO_METHOD *biom)) (BIO *); int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy) (BIO *)); -long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom)) +long (*BIO_meth_get_callback_ctrl(const BIO_METHOD *biom)) (BIO *, int, BIO_info_cb *); int BIO_meth_set_callback_ctrl(BIO_METHOD *biom, long (*callback_ctrl) (BIO *, int, diff --git a/include/openssl/bioerr.h b/include/openssl/bioerr.h index 4931c1d0..f119a59c 100644 --- a/include/openssl/bioerr.h +++ b/include/openssl/bioerr.h @@ -20,13 +20,16 @@ int ERR_load_BIO_strings(void); * BIO function codes. */ # define BIO_F_ACPT_STATE 100 +# define BIO_F_ADDRINFO_WRAP 148 # define BIO_F_ADDR_STRINGS 134 # define BIO_F_BIO_ACCEPT 101 # define BIO_F_BIO_ACCEPT_EX 137 +# define BIO_F_BIO_ACCEPT_NEW 152 # define BIO_F_BIO_ADDR_NEW 144 # define BIO_F_BIO_BIND 147 # define BIO_F_BIO_CALLBACK_CTRL 131 # define BIO_F_BIO_CONNECT 138 +# define BIO_F_BIO_CONNECT_NEW 153 # define BIO_F_BIO_CTRL 103 # define BIO_F_BIO_GETS 104 # define BIO_F_BIO_GET_HOST_IP 106 @@ -60,12 +63,17 @@ int ERR_load_BIO_strings(void); # define BIO_F_BUFFER_CTRL 114 # define BIO_F_CONN_CTRL 127 # define BIO_F_CONN_STATE 115 +# define BIO_F_DGRAM_SCTP_NEW 149 # define BIO_F_DGRAM_SCTP_READ 132 # define BIO_F_DGRAM_SCTP_WRITE 133 +# define BIO_F_DOAPR_OUTCH 150 # define BIO_F_FILE_CTRL 116 # define BIO_F_FILE_READ 130 # define BIO_F_LINEBUFFER_CTRL 129 +# define BIO_F_LINEBUFFER_NEW 151 # define BIO_F_MEM_WRITE 117 +# define BIO_F_NBIOF_NEW 154 +# define BIO_F_SLG_WRITE 155 # define BIO_F_SSL_NEW 118 /* diff --git a/include/openssl/bnerr.h b/include/openssl/bnerr.h index c9a21c77..8a022cc0 100644 --- a/include/openssl/bnerr.h +++ b/include/openssl/bnerr.h @@ -57,12 +57,16 @@ int ERR_load_BN_strings(void); # define BN_F_BN_MOD_INVERSE_NO_BRANCH 139 # define BN_F_BN_MOD_LSHIFT_QUICK 119 # define BN_F_BN_MOD_SQRT 121 +# define BN_F_BN_MONT_CTX_NEW 149 # define BN_F_BN_MPI2BN 112 # define BN_F_BN_NEW 113 +# define BN_F_BN_POOL_GET 147 # define BN_F_BN_RAND 114 # define BN_F_BN_RAND_RANGE 122 +# define BN_F_BN_RECP_CTX_NEW 150 # define BN_F_BN_RSHIFT 146 # define BN_F_BN_SET_WORDS 144 +# define BN_F_BN_STACK_PUSH 148 # define BN_F_BN_USUB 115 /* diff --git a/include/openssl/cmserr.h b/include/openssl/cmserr.h index 7b9daedb..3f8ae26d 100644 --- a/include/openssl/cmserr.h +++ b/include/openssl/cmserr.h @@ -49,6 +49,7 @@ int ERR_load_CMS_strings(void); # define CMS_F_CMS_DIGEST_VERIFY 118 # define CMS_F_CMS_ENCODE_RECEIPT 161 # define CMS_F_CMS_ENCRYPT 119 +# define CMS_F_CMS_ENCRYPTEDCONTENT_INIT 179 # define CMS_F_CMS_ENCRYPTEDCONTENT_INIT_BIO 120 # define CMS_F_CMS_ENCRYPTEDDATA_DECRYPT 121 # define CMS_F_CMS_ENCRYPTEDDATA_ENCRYPT 122 @@ -103,6 +104,7 @@ int ERR_load_CMS_strings(void); # define CMS_F_CMS_STREAM 155 # define CMS_F_CMS_UNCOMPRESS 156 # define CMS_F_CMS_VERIFY 157 +# define CMS_F_KEK_UNWRAP_KEY 180 /* * CMS reason codes. diff --git a/include/openssl/comperr.h b/include/openssl/comperr.h index 5a1c8df9..edea63a6 100644 --- a/include/openssl/comperr.h +++ b/include/openssl/comperr.h @@ -27,6 +27,7 @@ int ERR_load_COMP_strings(void); # define COMP_F_BIO_ZLIB_NEW 100 # define COMP_F_BIO_ZLIB_READ 101 # define COMP_F_BIO_ZLIB_WRITE 102 +# define COMP_F_COMP_CTX_NEW 103 /* * COMP reason codes. diff --git a/include/openssl/conferr.h b/include/openssl/conferr.h index d2d0c7ba..4574636b 100644 --- a/include/openssl/conferr.h +++ b/include/openssl/conferr.h @@ -26,6 +26,7 @@ int ERR_load_CONF_strings(void); # define CONF_F_DEF_LOAD 120 # define CONF_F_DEF_LOAD_BIO 121 # define CONF_F_GET_NEXT_FILE 107 +# define CONF_F_MODULE_ADD 122 # define CONF_F_MODULE_INIT 115 # define CONF_F_MODULE_LOAD_DSO 117 # define CONF_F_MODULE_RUN 118 @@ -39,6 +40,7 @@ int ERR_load_CONF_strings(void); # define CONF_F_NCONF_LOAD_FP 114 # define CONF_F_NCONF_NEW 111 # define CONF_F_PROCESS_INCLUDE 116 +# define CONF_F_SSL_MODULE_INIT 123 # define CONF_F_STR_COPY 101 /* @@ -57,6 +59,10 @@ int ERR_load_CONF_strings(void); # define CONF_R_NO_SUCH_FILE 114 # define CONF_R_NO_VALUE 108 # define CONF_R_RECURSIVE_DIRECTORY_INCLUDE 111 +# define CONF_R_SSL_COMMAND_SECTION_EMPTY 117 +# define CONF_R_SSL_COMMAND_SECTION_NOT_FOUND 118 +# define CONF_R_SSL_SECTION_EMPTY 119 +# define CONF_R_SSL_SECTION_NOT_FOUND 120 # define CONF_R_UNABLE_TO_CREATE_NEW_SECTION 103 # define CONF_R_UNKNOWN_MODULE_NAME 113 # define CONF_R_VARIABLE_EXPANSION_TOO_LONG 116 diff --git a/include/openssl/crypto.h b/include/openssl/crypto.h index 27119ffa..c2ad65e0 100644 --- a/include/openssl/crypto.h +++ b/include/openssl/crypto.h @@ -376,8 +376,9 @@ int CRYPTO_memcmp(const void * in_a, const void * in_b, size_t len); # define OPENSSL_INIT_ENGINE_CAPI 0x00002000L # define OPENSSL_INIT_ENGINE_PADLOCK 0x00004000L # define OPENSSL_INIT_ENGINE_AFALG 0x00008000L -# define OPENSSL_INIT_reserved_internal 0x00010000L +/* OPENSSL_INIT_ZLIB 0x00010000L */ # define OPENSSL_INIT_ATFORK 0x00020000L +/* OPENSSL_INIT_BASE_ONLY 0x00040000L */ /* OPENSSL_INIT flag range 0xfff00000 reserved for OPENSSL_init_ssl() */ /* Max OPENSSL_INIT flag value is 0x80000000 */ diff --git a/include/openssl/cryptoerr.h b/include/openssl/cryptoerr.h index 12684eac..e127ff60 100644 --- a/include/openssl/cryptoerr.h +++ b/include/openssl/cryptoerr.h @@ -19,17 +19,29 @@ int ERR_load_CRYPTO_strings(void); /* * CRYPTO function codes. */ +# define CRYPTO_F_CMAC_CTX_NEW 120 # define CRYPTO_F_CRYPTO_DUP_EX_DATA 110 # define CRYPTO_F_CRYPTO_FREE_EX_DATA 111 # define CRYPTO_F_CRYPTO_GET_EX_NEW_INDEX 100 # define CRYPTO_F_CRYPTO_MEMDUP 115 # define CRYPTO_F_CRYPTO_NEW_EX_DATA 112 +# define CRYPTO_F_CRYPTO_OCB128_COPY_CTX 121 +# define CRYPTO_F_CRYPTO_OCB128_INIT 122 # define CRYPTO_F_CRYPTO_SET_EX_DATA 102 # define CRYPTO_F_FIPS_MODE_SET 109 # define CRYPTO_F_GET_AND_LOCK 113 +# define CRYPTO_F_OPENSSL_ATEXIT 114 # define CRYPTO_F_OPENSSL_BUF2HEXSTR 117 +# define CRYPTO_F_OPENSSL_FOPEN 119 # define CRYPTO_F_OPENSSL_HEXSTR2BUF 118 # define CRYPTO_F_OPENSSL_INIT_CRYPTO 116 +# define CRYPTO_F_OPENSSL_LH_NEW 126 +# define CRYPTO_F_OPENSSL_SK_DEEP_COPY 127 +# define CRYPTO_F_OPENSSL_SK_DUP 128 +# define CRYPTO_F_PKEY_HMAC_INIT 123 +# define CRYPTO_F_PKEY_POLY1305_INIT 124 +# define CRYPTO_F_PKEY_SIPHASH_INIT 125 +# define CRYPTO_F_SK_RESERVE 129 /* * CRYPTO reason codes. diff --git a/include/openssl/dh.h b/include/openssl/dh.h index cb93eb15..3527540c 100644 --- a/include/openssl/dh.h +++ b/include/openssl/dh.h @@ -183,6 +183,11 @@ int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g); void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key); int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key); +const BIGNUM *DH_get0_p(const DH *dh); +const BIGNUM *DH_get0_q(const DH *dh); +const BIGNUM *DH_get0_g(const DH *dh); +const BIGNUM *DH_get0_priv_key(const DH *dh); +const BIGNUM *DH_get0_pub_key(const DH *dh); void DH_clear_flags(DH *dh, int flags); int DH_test_flags(const DH *dh, int flags); void DH_set_flags(DH *dh, int flags); @@ -195,7 +200,7 @@ void DH_meth_free(DH_METHOD *dhm); DH_METHOD *DH_meth_dup(const DH_METHOD *dhm); const char *DH_meth_get0_name(const DH_METHOD *dhm); int DH_meth_set1_name(DH_METHOD *dhm, const char *name); -int DH_meth_get_flags(DH_METHOD *dhm); +int DH_meth_get_flags(const DH_METHOD *dhm); int DH_meth_set_flags(DH_METHOD *dhm, int flags); void *DH_meth_get0_app_data(const DH_METHOD *dhm); int DH_meth_set0_app_data(DH_METHOD *dhm, void *app_data); diff --git a/include/openssl/dherr.h b/include/openssl/dherr.h index 0a071b6f..81e73f75 100644 --- a/include/openssl/dherr.h +++ b/include/openssl/dherr.h @@ -47,6 +47,7 @@ int ERR_load_DH_strings(void); # define DH_F_GENERATE_KEY 103 # define DH_F_PKEY_DH_CTRL_STR 120 # define DH_F_PKEY_DH_DERIVE 112 +# define DH_F_PKEY_DH_INIT 125 # define DH_F_PKEY_DH_KEYGEN 113 /* diff --git a/include/openssl/dsa.h b/include/openssl/dsa.h index 3ab3d2a5..5a06847e 100644 --- a/include/openssl/dsa.h +++ b/include/openssl/dsa.h @@ -20,7 +20,6 @@ extern "C" { # include # include # include -# include # include # if OPENSSL_API_COMPAT < 0x10100000L # include @@ -182,7 +181,7 @@ void DSA_meth_free(DSA_METHOD *dsam); DSA_METHOD *DSA_meth_dup(const DSA_METHOD *dsam); const char *DSA_meth_get0_name(const DSA_METHOD *dsam); int DSA_meth_set1_name(DSA_METHOD *dsam, const char *name); -int DSA_meth_get_flags(DSA_METHOD *dsam); +int DSA_meth_get_flags(const DSA_METHOD *dsam); int DSA_meth_set_flags(DSA_METHOD *dsam, int flags); void *DSA_meth_get0_app_data(const DSA_METHOD *dsam); int DSA_meth_set0_app_data(DSA_METHOD *dsam, void *app_data); diff --git a/include/openssl/dsaerr.h b/include/openssl/dsaerr.h index a5248ab7..d94f97bb 100644 --- a/include/openssl/dsaerr.h +++ b/include/openssl/dsaerr.h @@ -44,6 +44,7 @@ int ERR_load_DSA_strings(void); # define DSA_F_DSA_SIG_NEW 102 # define DSA_F_OLD_DSA_PRIV_DECODE 122 # define DSA_F_PKEY_DSA_CTRL 120 +# define DSA_F_PKEY_DSA_CTRL_STR 104 # define DSA_F_PKEY_DSA_KEYGEN 121 /* diff --git a/include/openssl/ecerr.h b/include/openssl/ecerr.h index dbaa8d15..320c6518 100644 --- a/include/openssl/ecerr.h +++ b/include/openssl/ecerr.h @@ -114,6 +114,7 @@ int ERR_load_EC_strings(void); # define EC_F_EC_GROUP_SET_CURVE_GF2M 176 # define EC_F_EC_GROUP_SET_CURVE_GFP 109 # define EC_F_EC_GROUP_SET_GENERATOR 111 +# define EC_F_EC_GROUP_SET_SEED 286 # define EC_F_EC_KEY_CHECK_KEY 177 # define EC_F_EC_KEY_COPY 178 # define EC_F_EC_KEY_GENERATE_KEY 179 @@ -122,6 +123,7 @@ int ERR_load_EC_strings(void); # define EC_F_EC_KEY_OCT2PRIV 255 # define EC_F_EC_KEY_PRINT 180 # define EC_F_EC_KEY_PRINT_FP 181 +# define EC_F_EC_KEY_PRIV2BUF 279 # define EC_F_EC_KEY_PRIV2OCT 256 # define EC_F_EC_KEY_SET_PUBLIC_KEY_AFFINE_COORDINATES 229 # define EC_F_EC_KEY_SIMPLE_CHECK_KEY 258 @@ -131,6 +133,7 @@ int ERR_load_EC_strings(void); # define EC_F_EC_PKEY_PARAM_CHECK 274 # define EC_F_EC_POINTS_MAKE_AFFINE 136 # define EC_F_EC_POINT_ADD 112 +# define EC_F_EC_POINT_BN2POINT 280 # define EC_F_EC_POINT_CMP 113 # define EC_F_EC_POINT_COPY 114 # define EC_F_EC_POINT_DBL 115 @@ -143,6 +146,7 @@ int ERR_load_EC_strings(void); # define EC_F_EC_POINT_MAKE_AFFINE 120 # define EC_F_EC_POINT_NEW 121 # define EC_F_EC_POINT_OCT2POINT 122 +# define EC_F_EC_POINT_POINT2BUF 281 # define EC_F_EC_POINT_POINT2OCT 123 # define EC_F_EC_POINT_SET_AFFINE_COORDINATES_GF2M 185 # define EC_F_EC_POINT_SET_AFFINE_COORDINATES_GFP 124 @@ -169,10 +173,14 @@ int ERR_load_EC_strings(void); # define EC_F_PKEY_ECD_DIGESTSIGN 272 # define EC_F_PKEY_ECD_DIGESTSIGN25519 276 # define EC_F_PKEY_ECD_DIGESTSIGN448 277 +# define EC_F_PKEY_ECD_SIGN25519 284 +# define EC_F_PKEY_ECD_SIGN448 285 # define EC_F_PKEY_ECX_DERIVE 269 # define EC_F_PKEY_EC_CTRL 197 # define EC_F_PKEY_EC_CTRL_STR 198 # define EC_F_PKEY_EC_DERIVE 217 +# define EC_F_PKEY_EC_INIT 282 +# define EC_F_PKEY_EC_KDF_DERIVE 283 # define EC_F_PKEY_EC_KEYGEN 199 # define EC_F_PKEY_EC_PARAMGEN 219 # define EC_F_PKEY_EC_SIGN 218 diff --git a/include/openssl/engineerr.h b/include/openssl/engineerr.h index 64efc2fd..b4c036b2 100644 --- a/include/openssl/engineerr.h +++ b/include/openssl/engineerr.h @@ -58,9 +58,11 @@ int ERR_load_ENGINE_strings(void); # define ENGINE_F_ENGINE_TABLE_REGISTER 184 # define ENGINE_F_ENGINE_UNLOCKED_FINISH 191 # define ENGINE_F_ENGINE_UP_REF 190 +# define ENGINE_F_INT_CLEANUP_ITEM 199 # define ENGINE_F_INT_CTRL_HELPER 172 # define ENGINE_F_INT_ENGINE_CONFIGURE 188 # define ENGINE_F_INT_ENGINE_MODULE_INIT 187 +# define ENGINE_F_OSSL_HMAC_INIT 200 /* * ENGINE reason codes. diff --git a/include/openssl/err.h b/include/openssl/err.h index 6d460be3..6cae1a36 100644 --- a/include/openssl/err.h +++ b/include/openssl/err.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -93,6 +93,7 @@ typedef struct err_state_st { # define ERR_LIB_CT 50 # define ERR_LIB_ASYNC 51 # define ERR_LIB_KDF 52 +# define ERR_LIB_SM2 53 # define ERR_LIB_USER 128 @@ -131,7 +132,7 @@ typedef struct err_state_st { # define CTerr(f,r) ERR_PUT_error(ERR_LIB_CT,(f),(r),OPENSSL_FILE,OPENSSL_LINE) # define ASYNCerr(f,r) ERR_PUT_error(ERR_LIB_ASYNC,(f),(r),OPENSSL_FILE,OPENSSL_LINE) # define KDFerr(f,r) ERR_PUT_error(ERR_LIB_KDF,(f),(r),OPENSSL_FILE,OPENSSL_LINE) -# define OSSL_STOREerr(f,r) ERR_PUT_error(ERR_LIB_OSSL_STORE,(f),(r),OPENSSL_FILE,OPENSSL_LINE) +# define SM2err(f,r) ERR_PUT_error(ERR_LIB_SM2,(f),(r),OPENSSL_FILE,OPENSSL_LINE) # define ERR_PACK(l,f,r) ( \ (((unsigned int)(l) & 0x0FF) << 24L) | \ diff --git a/include/openssl/evp.h b/include/openssl/evp.h index 9727e9df..63cba15a 100644 --- a/include/openssl/evp.h +++ b/include/openssl/evp.h @@ -50,6 +50,7 @@ # define EVP_PKEY_DH NID_dhKeyAgreement # define EVP_PKEY_DHX NID_dhpublicnumber # define EVP_PKEY_EC NID_X9_62_id_ecPublicKey +# define EVP_PKEY_SM2 NID_sm2 # define EVP_PKEY_HMAC NID_hmac # define EVP_PKEY_CMAC NID_cmac # define EVP_PKEY_SCRYPT NID_id_scrypt @@ -346,8 +347,6 @@ int (*EVP_CIPHER_meth_get_ctrl(const EVP_CIPHER *cipher))(EVP_CIPHER_CTX *, # define EVP_CTRL_SET_PIPELINE_INPUT_BUFS 0x23 /* Set the input buffer lengths to use for a pipelined operation */ # define EVP_CTRL_SET_PIPELINE_INPUT_LENS 0x24 -# define EVP_CTRL_GET_DRBG 0x25 -# define EVP_CTRL_SET_DRBG 0x26 /* Padding modes */ #define EVP_PADDING_PKCS7 1 @@ -1230,6 +1229,16 @@ void EVP_PKEY_asn1_set_public_check(EVP_PKEY_ASN1_METHOD *ameth, void EVP_PKEY_asn1_set_param_check(EVP_PKEY_ASN1_METHOD *ameth, int (*pkey_param_check) (const EVP_PKEY *pk)); +void EVP_PKEY_asn1_set_set_priv_key(EVP_PKEY_ASN1_METHOD *ameth, + int (*set_priv_key) (EVP_PKEY *pk, + const unsigned char + *priv, + size_t len)); +void EVP_PKEY_asn1_set_set_pub_key(EVP_PKEY_ASN1_METHOD *ameth, + int (*set_pub_key) (EVP_PKEY *pk, + const unsigned char *pub, + size_t len)); + void EVP_PKEY_asn1_set_security_bits(EVP_PKEY_ASN1_METHOD *ameth, int (*pkey_security_bits) (const EVP_PKEY *pk)); @@ -1337,6 +1346,14 @@ void EVP_PKEY_CTX_set0_keygen_info(EVP_PKEY_CTX *ctx, int *dat, int datlen); EVP_PKEY *EVP_PKEY_new_mac_key(int type, ENGINE *e, const unsigned char *key, int keylen); +EVP_PKEY *EVP_PKEY_new_raw_private_key(int type, ENGINE *e, + const unsigned char *priv, + size_t len); +EVP_PKEY *EVP_PKEY_new_raw_public_key(int type, ENGINE *e, + const unsigned char *pub, + size_t len); +EVP_PKEY *EVP_PKEY_new_CMAC_key(ENGINE *e, const unsigned char *priv, + size_t len, const EVP_CIPHER *cipher); void EVP_PKEY_CTX_set_data(EVP_PKEY_CTX *ctx, void *data); void *EVP_PKEY_CTX_get_data(EVP_PKEY_CTX *ctx); @@ -1488,34 +1505,34 @@ void EVP_PKEY_meth_set_public_check(EVP_PKEY_METHOD *pmeth, void EVP_PKEY_meth_set_param_check(EVP_PKEY_METHOD *pmeth, int (*check) (EVP_PKEY *pkey)); -void EVP_PKEY_meth_get_init(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_init(const EVP_PKEY_METHOD *pmeth, int (**pinit) (EVP_PKEY_CTX *ctx)); -void EVP_PKEY_meth_get_copy(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_copy(const EVP_PKEY_METHOD *pmeth, int (**pcopy) (EVP_PKEY_CTX *dst, EVP_PKEY_CTX *src)); -void EVP_PKEY_meth_get_cleanup(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_cleanup(const EVP_PKEY_METHOD *pmeth, void (**pcleanup) (EVP_PKEY_CTX *ctx)); -void EVP_PKEY_meth_get_paramgen(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_paramgen(const EVP_PKEY_METHOD *pmeth, int (**pparamgen_init) (EVP_PKEY_CTX *ctx), int (**pparamgen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)); -void EVP_PKEY_meth_get_keygen(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_keygen(const EVP_PKEY_METHOD *pmeth, int (**pkeygen_init) (EVP_PKEY_CTX *ctx), int (**pkeygen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)); -void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_sign(const EVP_PKEY_METHOD *pmeth, int (**psign_init) (EVP_PKEY_CTX *ctx), int (**psign) (EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen, const unsigned char *tbs, size_t tbslen)); -void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verify(const EVP_PKEY_METHOD *pmeth, int (**pverify_init) (EVP_PKEY_CTX *ctx), int (**pverify) (EVP_PKEY_CTX *ctx, const unsigned char *sig, @@ -1523,7 +1540,7 @@ void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth, const unsigned char *tbs, size_t tbslen)); -void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verify_recover(const EVP_PKEY_METHOD *pmeth, int (**pverify_recover_init) (EVP_PKEY_CTX *ctx), int (**pverify_recover) (EVP_PKEY_CTX @@ -1535,7 +1552,7 @@ void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth, char *tbs, size_t tbslen)); -void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_signctx(const EVP_PKEY_METHOD *pmeth, int (**psignctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx), int (**psignctx) (EVP_PKEY_CTX *ctx, @@ -1543,7 +1560,7 @@ void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth, size_t *siglen, EVP_MD_CTX *mctx)); -void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verifyctx(const EVP_PKEY_METHOD *pmeth, int (**pverifyctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx), int (**pverifyctx) (EVP_PKEY_CTX *ctx, @@ -1551,7 +1568,7 @@ void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth, int siglen, EVP_MD_CTX *mctx)); -void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_encrypt(const EVP_PKEY_METHOD *pmeth, int (**pencrypt_init) (EVP_PKEY_CTX *ctx), int (**pencryptfn) (EVP_PKEY_CTX *ctx, unsigned char *out, @@ -1559,7 +1576,7 @@ void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth, const unsigned char *in, size_t inlen)); -void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_decrypt(const EVP_PKEY_METHOD *pmeth, int (**pdecrypt_init) (EVP_PKEY_CTX *ctx), int (**pdecrypt) (EVP_PKEY_CTX *ctx, unsigned char *out, @@ -1567,26 +1584,26 @@ void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, const unsigned char *in, size_t inlen)); -void EVP_PKEY_meth_get_derive(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_derive(const EVP_PKEY_METHOD *pmeth, int (**pderive_init) (EVP_PKEY_CTX *ctx), int (**pderive) (EVP_PKEY_CTX *ctx, unsigned char *key, size_t *keylen)); -void EVP_PKEY_meth_get_ctrl(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_ctrl(const EVP_PKEY_METHOD *pmeth, int (**pctrl) (EVP_PKEY_CTX *ctx, int type, int p1, void *p2), int (**pctrl_str) (EVP_PKEY_CTX *ctx, const char *type, const char *value)); -void EVP_PKEY_meth_get_check(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_check(const EVP_PKEY_METHOD *pmeth, int (**pcheck) (EVP_PKEY *pkey)); -void EVP_PKEY_meth_get_public_check(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_public_check(const EVP_PKEY_METHOD *pmeth, int (**pcheck) (EVP_PKEY *pkey)); -void EVP_PKEY_meth_get_param_check(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_param_check(const EVP_PKEY_METHOD *pmeth, int (**pcheck) (EVP_PKEY *pkey)); void EVP_add_alg_module(void); diff --git a/include/openssl/evperr.h b/include/openssl/evperr.h index 45e9fcff..84f29518 100644 --- a/include/openssl/evperr.h +++ b/include/openssl/evperr.h @@ -20,19 +20,23 @@ int ERR_load_EVP_strings(void); * EVP function codes. */ # define EVP_F_AESNI_INIT_KEY 165 +# define EVP_F_AES_GCM_CTRL 196 # define EVP_F_AES_INIT_KEY 133 # define EVP_F_AES_OCB_CIPHER 169 # define EVP_F_AES_T4_INIT_KEY 178 # define EVP_F_AES_WRAP_CIPHER 170 # define EVP_F_ALG_MODULE_INIT 177 # define EVP_F_ARIA_CCM_INIT_KEY 175 +# define EVP_F_ARIA_GCM_CTRL 197 # define EVP_F_ARIA_GCM_INIT_KEY 176 # define EVP_F_ARIA_INIT_KEY 185 +# define EVP_F_B64_NEW 198 # define EVP_F_CAMELLIA_INIT_KEY 159 # define EVP_F_CHACHA20_POLY1305_CTRL 182 # define EVP_F_CMLL_T4_INIT_KEY 179 # define EVP_F_DES_EDE3_WRAP_CIPHER 171 # define EVP_F_DO_SIGVER_INIT 161 +# define EVP_F_ENC_NEW 199 # define EVP_F_EVP_CIPHERINIT_EX 123 # define EVP_F_EVP_CIPHER_CTX_COPY 163 # define EVP_F_EVP_CIPHER_CTX_CTRL 124 @@ -77,7 +81,12 @@ int ERR_load_EVP_strings(void); # define EVP_F_EVP_PKEY_GET0_SIPHASH 172 # define EVP_F_EVP_PKEY_KEYGEN 146 # define EVP_F_EVP_PKEY_KEYGEN_INIT 147 +# define EVP_F_EVP_PKEY_METH_ADD0 194 +# define EVP_F_EVP_PKEY_METH_NEW 195 # define EVP_F_EVP_PKEY_NEW 106 +# define EVP_F_EVP_PKEY_NEW_CMAC_KEY 193 +# define EVP_F_EVP_PKEY_NEW_RAW_PRIVATE_KEY 191 +# define EVP_F_EVP_PKEY_NEW_RAW_PUBLIC_KEY 192 # define EVP_F_EVP_PKEY_PARAMGEN 148 # define EVP_F_EVP_PKEY_PARAMGEN_INIT 149 # define EVP_F_EVP_PKEY_PARAM_CHECK 189 @@ -92,6 +101,7 @@ int ERR_load_EVP_strings(void); # define EVP_F_EVP_SIGNFINAL 107 # define EVP_F_EVP_VERIFYFINAL 108 # define EVP_F_INT_CTX_NEW 157 +# define EVP_F_OK_NEW 200 # define EVP_F_PKCS5_PBE_KEYIVGEN 117 # define EVP_F_PKCS5_V2_PBE_KEYIVGEN 118 # define EVP_F_PKCS5_V2_PBKDF2_KEYIVGEN 164 @@ -99,6 +109,7 @@ int ERR_load_EVP_strings(void); # define EVP_F_PKEY_SET_TYPE 158 # define EVP_F_RC2_MAGIC_TO_METH 109 # define EVP_F_RC5_CTRL 125 +# define EVP_F_S390X_AES_GCM_CTRL 201 # define EVP_F_UPDATE 173 /* @@ -137,6 +148,7 @@ int ERR_load_EVP_strings(void); # define EVP_R_INVALID_KEY_LENGTH 130 # define EVP_R_INVALID_OPERATION 148 # define EVP_R_KEYGEN_FAILURE 120 +# define EVP_R_KEY_SETUP_FAILED 180 # define EVP_R_MEMORY_LIMIT_EXCEEDED 172 # define EVP_R_MESSAGE_DIGEST_IS_NULL 159 # define EVP_R_METHOD_NOT_SUPPORTED 144 @@ -151,6 +163,7 @@ int ERR_load_EVP_strings(void); # define EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE 150 # define EVP_R_OPERATON_NOT_INITIALIZED 151 # define EVP_R_PARTIALLY_OVERLAPPING 162 +# define EVP_R_PBKDF2_ERROR 181 # define EVP_R_PKEY_APPLICATION_ASN1_METHOD_ALREADY_REGISTERED 179 # define EVP_R_PRIVATE_KEY_DECODE_ERROR 145 # define EVP_R_PRIVATE_KEY_ENCODE_ERROR 146 diff --git a/include/openssl/kdferr.h b/include/openssl/kdferr.h index ea30fb9c..6437c271 100644 --- a/include/openssl/kdferr.h +++ b/include/openssl/kdferr.h @@ -21,11 +21,16 @@ int ERR_load_KDF_strings(void); */ # define KDF_F_PKEY_HKDF_CTRL_STR 103 # define KDF_F_PKEY_HKDF_DERIVE 102 +# define KDF_F_PKEY_HKDF_INIT 108 # define KDF_F_PKEY_SCRYPT_CTRL_STR 104 # define KDF_F_PKEY_SCRYPT_CTRL_UINT64 105 # define KDF_F_PKEY_SCRYPT_DERIVE 109 +# define KDF_F_PKEY_SCRYPT_INIT 106 +# define KDF_F_PKEY_SCRYPT_SET_MEMBUF 107 # define KDF_F_PKEY_TLS1_PRF_CTRL_STR 100 # define KDF_F_PKEY_TLS1_PRF_DERIVE 101 +# define KDF_F_PKEY_TLS1_PRF_INIT 110 +# define KDF_F_TLS1_PRF_ALG 111 /* * KDF reason codes. diff --git a/include/openssl/obj_mac.h b/include/openssl/obj_mac.h index b7fd2897..2078dc49 100644 --- a/include/openssl/obj_mac.h +++ b/include/openssl/obj_mac.h @@ -63,6 +63,15 @@ #define NID_certicom_arc 677 #define OBJ_certicom_arc OBJ_identified_organization,132L +#define SN_ieee "ieee" +#define NID_ieee 1170 +#define OBJ_ieee OBJ_identified_organization,111L + +#define SN_ieee_siswg "ieee-siswg" +#define LN_ieee_siswg "IEEE Security in Storage Working Group" +#define NID_ieee_siswg 1171 +#define OBJ_ieee_siswg OBJ_ieee,2L,1619L + #define SN_international_organizations "international-organizations" #define LN_international_organizations "International Organizations" #define NID_international_organizations 647 @@ -100,6 +109,19 @@ #define NID_X9cm 185 #define OBJ_X9cm OBJ_X9_57,4L +#define SN_ISO_CN "ISO-CN" +#define LN_ISO_CN "ISO CN Member Body" +#define NID_ISO_CN 1140 +#define OBJ_ISO_CN OBJ_member_body,156L + +#define SN_oscca "oscca" +#define NID_oscca 1141 +#define OBJ_oscca OBJ_ISO_CN,10197L + +#define SN_sm_scheme "sm-scheme" +#define NID_sm_scheme 1142 +#define OBJ_sm_scheme OBJ_oscca,1L + #define SN_dsa "DSA" #define LN_dsa "dsaEncryption" #define NID_dsa 116 @@ -1142,15 +1164,20 @@ #define NID_hmacWithSHA1 163 #define OBJ_hmacWithSHA1 OBJ_rsadsi,2L,7L +#define SN_sm2 "SM2" +#define LN_sm2 "sm2" +#define NID_sm2 1172 +#define OBJ_sm2 OBJ_sm_scheme,301L + #define SN_sm3 "SM3" #define LN_sm3 "sm3" #define NID_sm3 1143 -#define OBJ_sm3 OBJ_member_body,156L,10197L,1L,401L +#define OBJ_sm3 OBJ_sm_scheme,401L #define SN_sm3WithRSAEncryption "RSA-SM3" #define LN_sm3WithRSAEncryption "sm3WithRSAEncryption" #define NID_sm3WithRSAEncryption 1144 -#define OBJ_sm3WithRSAEncryption OBJ_member_body,156L,10197L,1L,504L +#define OBJ_sm3WithRSAEncryption OBJ_sm_scheme,504L #define LN_hmacWithSHA224 "hmacWithSHA224" #define NID_hmacWithSHA224 798 @@ -2780,6 +2807,16 @@ #define NID_id_aes256_wrap_pad 903 #define OBJ_id_aes256_wrap_pad OBJ_aes,48L +#define SN_aes_128_xts "AES-128-XTS" +#define LN_aes_128_xts "aes-128-xts" +#define NID_aes_128_xts 913 +#define OBJ_aes_128_xts OBJ_ieee_siswg,0L,1L,1L + +#define SN_aes_256_xts "AES-256-XTS" +#define LN_aes_256_xts "aes-256-xts" +#define NID_aes_256_xts 914 +#define OBJ_aes_256_xts OBJ_ieee_siswg,0L,1L,2L + #define SN_aes_128_cfb1 "AES-128-CFB1" #define LN_aes_128_cfb1 "aes-128-cfb1" #define NID_aes_128_cfb1 650 @@ -2828,14 +2865,6 @@ #define LN_aes_256_ocb "aes-256-ocb" #define NID_aes_256_ocb 960 -#define SN_aes_128_xts "AES-128-XTS" -#define LN_aes_128_xts "aes-128-xts" -#define NID_aes_128_xts 913 - -#define SN_aes_256_xts "AES-256-XTS" -#define LN_aes_256_xts "aes-256-xts" -#define NID_aes_256_xts 914 - #define SN_des_cfb1 "DES-CFB1" #define LN_des_cfb1 "des-cfb1" #define NID_des_cfb1 656 @@ -4618,19 +4647,6 @@ #define NID_seed_ofb128 778 #define OBJ_seed_ofb128 OBJ_kisa,1L,6L -#define SN_ISO_CN "ISO-CN" -#define LN_ISO_CN "ISO CN Member Body" -#define NID_ISO_CN 1140 -#define OBJ_ISO_CN OBJ_member_body,156L - -#define SN_oscca "oscca" -#define NID_oscca 1141 -#define OBJ_oscca OBJ_ISO_CN,10197L - -#define SN_sm_scheme "sm-scheme" -#define NID_sm_scheme 1142 -#define OBJ_sm_scheme OBJ_oscca,1L - #define SN_sm4_ecb "SM4-ECB" #define LN_sm4_ecb "sm4-ecb" #define NID_sm4_ecb 1133 diff --git a/include/openssl/objectserr.h b/include/openssl/objectserr.h index 4f3156e9..02308dfa 100644 --- a/include/openssl/objectserr.h +++ b/include/openssl/objectserr.h @@ -20,12 +20,14 @@ int ERR_load_OBJ_strings(void); * OBJ function codes. */ # define OBJ_F_OBJ_ADD_OBJECT 105 +# define OBJ_F_OBJ_ADD_SIGID 107 # define OBJ_F_OBJ_CREATE 100 # define OBJ_F_OBJ_DUP 101 # define OBJ_F_OBJ_NAME_NEW_INDEX 106 # define OBJ_F_OBJ_NID2LN 102 # define OBJ_F_OBJ_NID2OBJ 103 # define OBJ_F_OBJ_NID2SN 104 +# define OBJ_F_OBJ_TXT2OBJ 108 /* * OBJ reason codes. diff --git a/include/openssl/opensslv.h b/include/openssl/opensslv.h index 32b6f4d4..c970c18e 100644 --- a/include/openssl/opensslv.h +++ b/include/openssl/opensslv.h @@ -39,13 +39,8 @@ extern "C" { * (Prior to 0.9.5a beta1, a different scheme was used: MMNNFFRBB for * major minor fix final patch/beta) */ -# define OPENSSL_VERSION_NUMBER 0x10101003L -# define OPENSSL_VERSION_TEXT "OpenSSL 1.1.1-pre3-dev xx XXX xxxx" - -#define OPENSSL_MAKE_VERSION(maj,min,fix,patch) ((0x10000000L)+((maj&0xff)<<20)+((min&0xff)<<12)+((fix&0xff)<<4)+patch) - -/* use this for #if tests, should never depend upon fix/patch */ -#define OPENSSL_VERSION_AT_LEAST(maj,min) (OPENSSL_MAKE_VERSION(maj,min, 0, 0) >= OPENSSL_VERSION_NUMBER) +# define OPENSSL_VERSION_NUMBER 0x10101007L +# define OPENSSL_VERSION_TEXT "OpenSSL 1.1.1-pre7-dev xx XXX xxxx" /*- * The macros below are to be used for shared library (.so, .dll, ...) diff --git a/include/openssl/ossl_typ.h b/include/openssl/ossl_typ.h index 165878ea..7993ca28 100644 --- a/include/openssl/ossl_typ.h +++ b/include/openssl/ossl_typ.h @@ -115,7 +115,6 @@ typedef struct ec_key_method_st EC_KEY_METHOD; typedef struct rand_meth_st RAND_METHOD; typedef struct rand_drbg_st RAND_DRBG; -typedef struct rand_pool_st RAND_POOL; typedef struct ssl_dane_st SSL_DANE; typedef struct x509_st X509; diff --git a/include/openssl/pem.h b/include/openssl/pem.h index 165544cb..2ef5b5d0 100644 --- a/include/openssl/pem.h +++ b/include/openssl/pem.h @@ -280,7 +280,8 @@ int PEM_SignUpdate(EVP_MD_CTX *ctx, unsigned char *d, unsigned int cnt); int PEM_SignFinal(EVP_MD_CTX *ctx, unsigned char *sigret, unsigned int *siglen, EVP_PKEY *pkey); -int PEM_def_callback(char *buf, int num, int w, void *key); +/* The default pem_password_cb that's used internally */ +int PEM_def_callback(char *buf, int num, int rwflag, void *userdata); void PEM_proc_type(char *buf, int type); void PEM_dek_info(char *buf, const char *type, int len, char *str); diff --git a/include/openssl/pemerr.h b/include/openssl/pemerr.h index d0b8a9c3..cd61b823 100644 --- a/include/openssl/pemerr.h +++ b/include/openssl/pemerr.h @@ -29,6 +29,7 @@ int ERR_load_PEM_strings(void); # define PEM_F_DO_B2I 132 # define PEM_F_DO_B2I_BIO 133 # define PEM_F_DO_BLOB_HEADER 134 +# define PEM_F_DO_I2B 146 # define PEM_F_DO_PK8PKEY 126 # define PEM_F_DO_PK8PKEY_FP 125 # define PEM_F_DO_PVK_BODY 135 diff --git a/include/openssl/pkcs12err.h b/include/openssl/pkcs12err.h index ba820438..c7184ffe 100644 --- a/include/openssl/pkcs12err.h +++ b/include/openssl/pkcs12err.h @@ -19,6 +19,10 @@ int ERR_load_PKCS12_strings(void); /* * PKCS12 function codes. */ +# define PKCS12_F_OPENSSL_ASC2UNI 121 +# define PKCS12_F_OPENSSL_UNI2ASC 124 +# define PKCS12_F_OPENSSL_UNI2UTF8 127 +# define PKCS12_F_OPENSSL_UTF82UNI 129 # define PKCS12_F_PKCS12_CREATE 105 # define PKCS12_F_PKCS12_GEN_MAC 107 # define PKCS12_F_PKCS12_INIT 109 diff --git a/include/openssl/rand.h b/include/openssl/rand.h index 40e67c50..058ece63 100644 --- a/include/openssl/rand.h +++ b/include/openssl/rand.h @@ -48,7 +48,6 @@ void RAND_seed(const void *buf, int num); # if defined(__ANDROID__) && defined(__NDK_FPABI__) __NDK_FPABI__ /* __attribute__((pcs("aapcs"))) on ARM */ # endif - void RAND_add(const void *buf, int num, double randomness); int RAND_load_file(const char *file, long max_bytes); int RAND_write_file(const char *file); @@ -61,8 +60,6 @@ int RAND_egd(const char *path); int RAND_egd_bytes(const char *path, int bytes); # endif -typedef void (*RAND_poll_cb)(void *arg, - const void *buf, int num, double randomness); int RAND_poll(void); # if defined(_WIN32) && (defined(BASETYPES) || defined(_WINDEF_H)) diff --git a/include/internal/rand.h b/include/openssl/rand_drbg.h similarity index 61% rename from include/internal/rand.h rename to include/openssl/rand_drbg.h index 9f6b1ab9..282356e1 100644 --- a/include/internal/rand.h +++ b/include/openssl/rand_drbg.h @@ -10,8 +10,17 @@ #ifndef HEADER_DRBG_RAND_H # define HEADER_DRBG_RAND_H +# include +# include + + /* In CTR mode, disable derivation function ctr_df */ -#define RAND_DRBG_FLAG_CTR_NO_DF 0x1 +# define RAND_DRBG_FLAG_CTR_NO_DF 0x1 + +/* A logical OR of all used flag bits (currently there is only one) */ +# define RAND_DRBG_USED_FLAGS ( \ + RAND_DRBG_FLAG_CTR_NO_DF \ + ) /* * Default security strength (in the sense of [NIST SP 800-90Ar1]) @@ -26,11 +35,15 @@ * * Currently supported ciphers are: NID_aes_128_ctr, NID_aes_192_ctr and * NID_aes_256_ctr - * - * TODO(DRBG): would be nice to have the NID and strength configurable */ # define RAND_DRBG_STRENGTH 256 -# define RAND_DRBG_NID NID_aes_256_ctr +# define RAND_DRBG_TYPE NID_aes_256_ctr +# define RAND_DRBG_FLAGS 0 + + +# ifdef __cplusplus +extern "C" { +# endif /* * Object lifetime functions. @@ -38,6 +51,7 @@ RAND_DRBG *RAND_DRBG_new(int type, unsigned int flags, RAND_DRBG *parent); RAND_DRBG *RAND_DRBG_secure_new(int type, unsigned int flags, RAND_DRBG *parent); int RAND_DRBG_set(RAND_DRBG *drbg, int type, unsigned int flags); +int RAND_DRBG_set_defaults(int type, unsigned int flags); int RAND_DRBG_instantiate(RAND_DRBG *drbg, const unsigned char *pers, size_t perslen); int RAND_DRBG_uninstantiate(RAND_DRBG *drbg); @@ -47,7 +61,8 @@ void RAND_DRBG_free(RAND_DRBG *drbg); * Object "use" functions. */ int RAND_DRBG_reseed(RAND_DRBG *drbg, - const unsigned char *adin, size_t adinlen); + const unsigned char *adin, size_t adinlen, + int prediction_resistance); int RAND_DRBG_generate(RAND_DRBG *drbg, unsigned char *out, size_t outlen, int prediction_resistance, const unsigned char *adin, size_t adinlen); @@ -70,64 +85,36 @@ RAND_DRBG *RAND_DRBG_get0_private(void); /* * EXDATA */ -#define RAND_DRBG_get_ex_new_index(l, p, newf, dupf, freef) \ +# define RAND_DRBG_get_ex_new_index(l, p, newf, dupf, freef) \ CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_DRBG, l, p, newf, dupf, freef) -int RAND_DRBG_set_ex_data(RAND_DRBG *dctx, int idx, void *arg); -void *RAND_DRBG_get_ex_data(const RAND_DRBG *dctx, int idx); +int RAND_DRBG_set_ex_data(RAND_DRBG *drbg, int idx, void *arg); +void *RAND_DRBG_get_ex_data(const RAND_DRBG *drbg, int idx); /* - * Callback functions. See comments in drbg_lib.c + * Callback function typedefs */ -typedef size_t (*RAND_DRBG_get_entropy_fn)(RAND_DRBG *ctx, +typedef size_t (*RAND_DRBG_get_entropy_fn)(RAND_DRBG *drbg, unsigned char **pout, int entropy, size_t min_len, - size_t max_len); + size_t max_len, + int prediction_resistance); typedef void (*RAND_DRBG_cleanup_entropy_fn)(RAND_DRBG *ctx, unsigned char *out, size_t outlen); -typedef size_t (*RAND_DRBG_get_nonce_fn)(RAND_DRBG *ctx, unsigned char **pout, +typedef size_t (*RAND_DRBG_get_nonce_fn)(RAND_DRBG *drbg, unsigned char **pout, int entropy, size_t min_len, size_t max_len); -typedef void (*RAND_DRBG_cleanup_nonce_fn)(RAND_DRBG *ctx, +typedef void (*RAND_DRBG_cleanup_nonce_fn)(RAND_DRBG *drbg, unsigned char *out, size_t outlen); -int RAND_DRBG_set_callbacks(RAND_DRBG *dctx, +int RAND_DRBG_set_callbacks(RAND_DRBG *drbg, RAND_DRBG_get_entropy_fn get_entropy, RAND_DRBG_cleanup_entropy_fn cleanup_entropy, RAND_DRBG_get_nonce_fn get_nonce, RAND_DRBG_cleanup_nonce_fn cleanup_nonce); -/* - * RAND_POOL functions - */ -RAND_POOL *RAND_POOL_new(int entropy_requested, size_t min_len, size_t max_len); -void RAND_POOL_free(RAND_POOL *pool); -const unsigned char *RAND_POOL_buffer(RAND_POOL *pool); -unsigned char *RAND_POOL_detach(RAND_POOL *pool); +# ifdef __cplusplus +} +# endif -size_t RAND_POOL_entropy(RAND_POOL *pool); -size_t RAND_POOL_length(RAND_POOL *pool); - -size_t RAND_POOL_entropy_available(RAND_POOL *pool); -size_t RAND_POOL_entropy_needed(RAND_POOL *pool); -size_t RAND_POOL_bytes_needed(RAND_POOL *pool, unsigned int entropy_per_byte); -size_t RAND_POOL_bytes_remaining(RAND_POOL *pool); - -size_t RAND_POOL_add(RAND_POOL *pool, - const unsigned char *buffer, size_t len, size_t entropy); -unsigned char *RAND_POOL_add_begin(RAND_POOL *pool, size_t len); -size_t RAND_POOL_add_end(RAND_POOL *pool, size_t len, size_t entropy); - - -/* - * Add random bytes to the pool to acquire requested amount of entropy - * - * This function is platform specific and tries to acquire the requested - * amount of entropy by polling platform specific entropy sources. - * - * If the function succeeds in acquiring at least |entropy_requested| bits - * of entropy, the total entropy count is returned. If it fails, it returns - * an entropy count of 0. - */ -size_t RAND_POOL_acquire_entropy(RAND_POOL *pool); #endif diff --git a/include/openssl/randerr.h b/include/openssl/randerr.h index 81bda4ba..128f4dea 100644 --- a/include/openssl/randerr.h +++ b/include/openssl/randerr.h @@ -27,13 +27,16 @@ int ERR_load_RAND_strings(void); # define RAND_F_RAND_DRBG_ENABLE_LOCKING 119 # define RAND_F_RAND_DRBG_GENERATE 107 # define RAND_F_RAND_DRBG_GET_ENTROPY 120 +# define RAND_F_RAND_DRBG_GET_NONCE 123 # define RAND_F_RAND_DRBG_INSTANTIATE 108 # define RAND_F_RAND_DRBG_NEW 109 # define RAND_F_RAND_DRBG_RESEED 110 # define RAND_F_RAND_DRBG_RESTART 102 # define RAND_F_RAND_DRBG_SET 104 +# define RAND_F_RAND_DRBG_SET_DEFAULTS 121 # define RAND_F_RAND_DRBG_UNINSTANTIATE 118 # define RAND_F_RAND_LOAD_FILE 111 +# define RAND_F_RAND_POOL_ACQUIRE_ENTROPY 122 # define RAND_F_RAND_POOL_ADD 103 # define RAND_F_RAND_POOL_ADD_BEGIN 113 # define RAND_F_RAND_POOL_ADD_END 114 @@ -70,11 +73,16 @@ int ERR_load_RAND_strings(void); # define RAND_R_PARENT_LOCKING_NOT_ENABLED 130 # define RAND_R_PARENT_STRENGTH_TOO_WEAK 131 # define RAND_R_PERSONALISATION_STRING_TOO_LONG 116 +# define RAND_R_PREDICTION_RESISTANCE_NOT_SUPPORTED 133 # define RAND_R_PRNG_NOT_SEEDED 100 # define RAND_R_RANDOM_POOL_OVERFLOW 125 +# define RAND_R_RANDOM_POOL_UNDERFLOW 134 # define RAND_R_REQUEST_TOO_LARGE_FOR_DRBG 117 # define RAND_R_RESEED_ERROR 118 # define RAND_R_SELFTEST_FAILURE 119 +# define RAND_R_TOO_LITTLE_NONCE_REQUESTED 135 +# define RAND_R_TOO_MUCH_NONCE_REQUESTED 136 +# define RAND_R_UNSUPPORTED_DRBG_FLAGS 132 # define RAND_R_UNSUPPORTED_DRBG_TYPE 120 #endif diff --git a/include/openssl/rsa.h b/include/openssl/rsa.h index 13bdf801..05e4f261 100644 --- a/include/openssl/rsa.h +++ b/include/openssl/rsa.h @@ -415,7 +415,7 @@ void RSA_meth_free(RSA_METHOD *meth); RSA_METHOD *RSA_meth_dup(const RSA_METHOD *meth); const char *RSA_meth_get0_name(const RSA_METHOD *meth); int RSA_meth_set1_name(RSA_METHOD *meth, const char *name); -int RSA_meth_get_flags(RSA_METHOD *meth); +int RSA_meth_get_flags(const RSA_METHOD *meth); int RSA_meth_set_flags(RSA_METHOD *meth, int flags); void *RSA_meth_get0_app_data(const RSA_METHOD *meth); int RSA_meth_set0_app_data(RSA_METHOD *meth, void *app_data); diff --git a/include/openssl/rsaerr.h b/include/openssl/rsaerr.h index c1b826ae..d5bc01c1 100644 --- a/include/openssl/rsaerr.h +++ b/include/openssl/rsaerr.h @@ -40,6 +40,7 @@ int ERR_load_RSA_strings(void); # define RSA_F_RSA_METH_NEW 162 # define RSA_F_RSA_METH_SET1_NAME 163 # define RSA_F_RSA_MGF1_TO_MD 157 +# define RSA_F_RSA_MULTIP_INFO_NEW 166 # define RSA_F_RSA_NEW_METHOD 106 # define RSA_F_RSA_NULL 124 # define RSA_F_RSA_NULL_PRIVATE_DECRYPT 132 @@ -80,6 +81,7 @@ int ERR_load_RSA_strings(void); # define RSA_F_RSA_VERIFY 119 # define RSA_F_RSA_VERIFY_ASN1_OCTET_STRING 120 # define RSA_F_RSA_VERIFY_PKCS1_PSS_MGF1 126 +# define RSA_F_SETUP_TBUF 167 /* * RSA reason codes. diff --git a/include/openssl/sm2.h b/include/openssl/sm2.h new file mode 100644 index 00000000..af24c014 --- /dev/null +++ b/include/openssl/sm2.h @@ -0,0 +1,86 @@ +/* + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017 Ribose Inc. All Rights Reserved. + * Ported from Ribose contributions from Botan. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#ifndef HEADER_SM2_H +# define HEADER_SM2_H +# include + +# ifndef OPENSSL_NO_SM2 + +# ifdef __cplusplus +extern "C" { +# endif + +# include + +/* The default user id as specified in GM/T 0009-2012 */ +# define SM2_DEFAULT_USERID "1234567812345678" + +int SM2_compute_userid_digest(uint8_t *out, + const EVP_MD *digest, + const char *user_id, const EC_KEY *key); + +/* + * SM2 signature operation. Computes ZA (user id digest) and then signs + * H(ZA || msg) using SM2 + */ +ECDSA_SIG *SM2_do_sign(const EC_KEY *key, + const EVP_MD *digest, + const char *user_id, const uint8_t *msg, size_t msg_len); + +int SM2_do_verify(const EC_KEY *key, + const EVP_MD *digest, + const ECDSA_SIG *signature, + const char *user_id, const uint8_t *msg, size_t msg_len); + +/* + * SM2 signature generation. Assumes input is an SM3 digest + */ +int SM2_sign(int type, const unsigned char *dgst, int dgstlen, + unsigned char *sig, unsigned int *siglen, EC_KEY *eckey); + +/* + * SM2 signature verification. Assumes input is an SM3 digest + */ +int SM2_verify(int type, const unsigned char *dgst, int dgstlen, + const unsigned char *sig, int siglen, EC_KEY *eckey); + + +/* + * SM2 encryption + */ +size_t SM2_ciphertext_size(const EC_KEY *key, + const EVP_MD *digest, + size_t msg_len); + +size_t SM2_plaintext_size(const EC_KEY *key, + const EVP_MD *digest, + size_t msg_len); + +int SM2_encrypt(const EC_KEY *key, + const EVP_MD *digest, + const uint8_t *msg, + size_t msg_len, + uint8_t *ciphertext_buf, size_t *ciphertext_len); + +int SM2_decrypt(const EC_KEY *key, + const EVP_MD *digest, + const uint8_t *ciphertext, + size_t ciphertext_len, uint8_t *ptext_buf, size_t *ptext_len); + +int ERR_load_SM2_strings(void); + +# ifdef __cplusplus +} +# endif + +# endif /* OPENSSL_NO_SM2 */ +#endif diff --git a/include/openssl/sm2err.h b/include/openssl/sm2err.h new file mode 100644 index 00000000..3416c3df --- /dev/null +++ b/include/openssl/sm2err.h @@ -0,0 +1,95 @@ +/* + * Generated by util/mkerr.pl DO NOT EDIT + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#ifndef HEADER_SM2ERR_H +# define HEADER_SM2ERR_H + +# ifdef __cplusplus +extern "C" { +# endif +int ERR_load_SM2_strings(void); +# ifdef __cplusplus +} +# endif + +/* + * SM2 function codes. + */ +# define SM2_F_PKEY_SM2_CTRL 274 +# define SM2_F_PKEY_SM2_CTRL_STR 275 +# define SM2_F_PKEY_SM2_KEYGEN 276 +# define SM2_F_PKEY_SM2_PARAMGEN 277 +# define SM2_F_PKEY_SM2_SIGN 278 + +/* + * SM2 reason codes. + */ +# define SM2_R_ASN1_ERROR 115 +# define SM2_R_ASN5_ERROR 1150 +# define SM2_R_BAD_SIGNATURE 156 +# define SM2_R_BIGNUM_OUT_OF_RANGE 144 +# define SM2_R_BUFFER_TOO_SMALL 100 +# define SM2_R_COORDINATES_OUT_OF_RANGE 146 +# define SM2_R_CURVE_DOES_NOT_SUPPORT_ECDH 160 +# define SM2_R_CURVE_DOES_NOT_SUPPORT_SIGNING 159 +# define SM2_R_D2I_ECPKPARAMETERS_FAILURE 117 +# define SM2_R_DECODE_ERROR 142 +# define SM2_R_DISCRIMINANT_IS_ZERO 118 +# define SM2_R_EC_GROUP_NEW_BY_NAME_FAILURE 119 +# define SM2_R_FIELD_TOO_LARGE 143 +# define SM2_R_GF2M_NOT_SUPPORTED 147 +# define SM2_R_GROUP2PKPARAMETERS_FAILURE 120 +# define SM2_R_I2D_ECPKPARAMETERS_FAILURE 121 +# define SM2_R_INCOMPATIBLE_OBJECTS 101 +# define SM2_R_INVALID_ARGUMENT 112 +# define SM2_R_INVALID_COMPRESSED_POINT 110 +# define SM2_R_INVALID_COMPRESSION_BIT 109 +# define SM2_R_INVALID_CURVE 141 +# define SM2_R_INVALID_DIGEST 151 +# define SM2_R_INVALID_DIGEST_TYPE 138 +# define SM2_R_INVALID_ENCODING 102 +# define SM2_R_INVALID_FIELD 103 +# define SM2_R_INVALID_FORM 104 +# define SM2_R_INVALID_GROUP_ORDER 122 +# define SM2_R_INVALID_KEY 116 +# define SM2_R_INVALID_OUTPUT_LENGTH 161 +# define SM2_R_INVALID_PEER_KEY 133 +# define SM2_R_INVALID_PENTANOMIAL_BASIS 132 +# define SM2_R_INVALID_PRIVATE_KEY 123 +# define SM2_R_INVALID_TRINOMIAL_BASIS 137 +# define SM2_R_KDF_PARAMETER_ERROR 148 +# define SM2_R_KEYS_NOT_SET 140 +# define SM2_R_MISSING_PARAMETERS 124 +# define SM2_R_MISSING_PRIVATE_KEY 125 +# define SM2_R_NEED_NEW_SETUP_VALUES 157 +# define SM2_R_NOT_A_NIST_PRIME 135 +# define SM2_R_NOT_IMPLEMENTED 126 +# define SM2_R_NOT_INITIALIZED 111 +# define SM2_R_NO_PARAMETERS_SET 139 +# define SM2_R_NO_PRIVATE_VALUE 154 +# define SM2_R_OPERATION_NOT_SUPPORTED 152 +# define SM2_R_PASSED_NULL_PARAMETER 134 +# define SM2_R_PEER_KEY_ERROR 149 +# define SM2_R_PKPARAMETERS2GROUP_FAILURE 127 +# define SM2_R_POINT_ARITHMETIC_FAILURE 155 +# define SM2_R_POINT_AT_INFINITY 106 +# define SM2_R_POINT_IS_NOT_ON_CURVE 107 +# define SM2_R_RANDOM_NUMBER_GENERATION_FAILED 158 +# define SM2_R_SHARED_INFO_ERROR 150 +# define SM2_R_SLOT_FULL 108 +# define SM2_R_UNDEFINED_GENERATOR 113 +# define SM2_R_UNDEFINED_ORDER 128 +# define SM2_R_UNKNOWN_GROUP 129 +# define SM2_R_UNKNOWN_ORDER 114 +# define SM2_R_UNSUPPORTED_FIELD 131 +# define SM2_R_WRONG_CURVE_PARAMETERS 145 +# define SM2_R_WRONG_ORDER 130 + +#endif diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index ec29405c..db0a2d5d 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -169,8 +169,18 @@ extern "C" { /* * The following cipher list is used by default. It also is substituted when * an application-defined cipher list string starts with 'DEFAULT'. + * This applies to ciphersuites for TLSv1.2 and below. */ # define SSL_DEFAULT_CIPHER_LIST "ALL:!COMPLEMENTOFDEFAULT:!eNULL" +/* This is the default set of TLSv1.3 ciphersuites */ +# if !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305) +# define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \ + "TLS_CHACHA20_POLY1305_SHA256:" \ + "TLS_AES_128_GCM_SHA256" +# else +# define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \ + "TLS_AES_128_GCM_SHA256" +#endif /* * As of OpenSSL 1.0.0, ssl_create_cipher_list() in ssl/ssl_ciph.c always * starts with a reasonable order, and all we have to do for DEFAULT is @@ -217,13 +227,11 @@ typedef struct srtp_protection_profile_st { DEFINE_STACK_OF(SRTP_PROTECTION_PROFILE) -typedef int (*tls_session_ticket_ext_cb_fn) (SSL *s, - const unsigned char *data, - int len, void *arg); -typedef int (*tls_session_secret_cb_fn) (SSL *s, void *secret, - int *secret_len, - STACK_OF(SSL_CIPHER) *peer_ciphers, - const SSL_CIPHER **cipher, void *arg); +typedef int (*tls_session_ticket_ext_cb_fn)(SSL *s, const unsigned char *data, + int len, void *arg); +typedef int (*tls_session_secret_cb_fn)(SSL *s, void *secret, int *secret_len, + STACK_OF(SSL_CIPHER) *peer_ciphers, + const SSL_CIPHER **cipher, void *arg); /* Extension context codes */ /* This extension is only allowed in TLS */ @@ -252,36 +260,36 @@ typedef int (*tls_session_secret_cb_fn) (SSL *s, void *secret, /* Typedefs for handling custom extensions */ -typedef int (*custom_ext_add_cb) (SSL *s, unsigned int ext_type, - const unsigned char **out, - size_t *outlen, int *al, void *add_arg); +typedef int (*custom_ext_add_cb)(SSL *s, unsigned int ext_type, + const unsigned char **out, size_t *outlen, + int *al, void *add_arg); -typedef void (*custom_ext_free_cb) (SSL *s, unsigned int ext_type, - const unsigned char *out, void *add_arg); +typedef void (*custom_ext_free_cb)(SSL *s, unsigned int ext_type, + const unsigned char *out, void *add_arg); -typedef int (*custom_ext_parse_cb) (SSL *s, unsigned int ext_type, - const unsigned char *in, - size_t inlen, int *al, void *parse_arg); +typedef int (*custom_ext_parse_cb)(SSL *s, unsigned int ext_type, + const unsigned char *in, size_t inlen, + int *al, void *parse_arg); -typedef int (*SSL_custom_ext_add_cb_ex) (SSL *s, unsigned int ext_type, - unsigned int context, - const unsigned char **out, - size_t *outlen, X509 *x, - size_t chainidx, - int *al, void *add_arg); +typedef int (*SSL_custom_ext_add_cb_ex)(SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char **out, + size_t *outlen, X509 *x, + size_t chainidx, + int *al, void *add_arg); -typedef void (*SSL_custom_ext_free_cb_ex) (SSL *s, unsigned int ext_type, - unsigned int context, - const unsigned char *out, - void *add_arg); +typedef void (*SSL_custom_ext_free_cb_ex)(SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *out, + void *add_arg); -typedef int (*SSL_custom_ext_parse_cb_ex) (SSL *s, unsigned int ext_type, - unsigned int context, - const unsigned char *in, - size_t inlen, X509 *x, - size_t chainidx, - int *al, void *parse_arg); +typedef int (*SSL_custom_ext_parse_cb_ex)(SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *in, + size_t inlen, X509 *x, + size_t chainidx, + int *al, void *parse_arg); /* Typedef for verification callback */ typedef int (*SSL_verify_cb)(int preverify_ok, X509_STORE_CTX *x509_ctx); @@ -555,7 +563,7 @@ typedef int (*SSL_verify_cb)(int preverify_ok, X509_STORE_CTX *x509_ctx); */ unsigned long SSL_CTX_get_options(const SSL_CTX *ctx); -unsigned long SSL_get_options(const SSL* s); +unsigned long SSL_get_options(const SSL *s); unsigned long SSL_CTX_clear_options(SSL_CTX *ctx, unsigned long op); unsigned long SSL_clear_options(SSL *s, unsigned long op); unsigned long SSL_CTX_set_options(SSL_CTX *ctx, unsigned long op); @@ -688,8 +696,7 @@ int (*SSL_CTX_sess_get_new_cb(SSL_CTX *ctx)) (struct ssl_st *ssl, void SSL_CTX_sess_set_remove_cb(SSL_CTX *ctx, void (*remove_session_cb) (struct ssl_ctx_st *ctx, - SSL_SESSION - *sess)); + SSL_SESSION *sess)); void (*SSL_CTX_sess_get_remove_cb(SSL_CTX *ctx)) (struct ssl_ctx_st *ctx, SSL_SESSION *sess); void SSL_CTX_sess_set_get_cb(SSL_CTX *ctx, @@ -702,8 +709,7 @@ SSL_SESSION *(*SSL_CTX_sess_get_get_cb(SSL_CTX *ctx)) (struct ssl_st *ssl, const unsigned char *data, int len, int *copy); void SSL_CTX_set_info_callback(SSL_CTX *ctx, - void (*cb) (const SSL *ssl, int type, - int val)); + void (*cb) (const SSL *ssl, int type, int val)); void (*SSL_CTX_get_info_callback(SSL_CTX *ctx)) (const SSL *ssl, int type, int val); void SSL_CTX_set_client_cert_cb(SSL_CTX *ctx, @@ -722,8 +728,8 @@ void SSL_CTX_set_cookie_generate_cb(SSL_CTX *ctx, *cookie_len)); void SSL_CTX_set_cookie_verify_cb(SSL_CTX *ctx, int (*app_verify_cookie_cb) (SSL *ssl, - const unsigned char - *cookie, + const unsigned + char *cookie, unsigned int cookie_len)); @@ -744,8 +750,8 @@ typedef int (*SSL_CTX_npn_advertised_cb_func)(SSL *ssl, unsigned int *outlen, void *arg); void SSL_CTX_set_next_protos_advertised_cb(SSL_CTX *s, - SSL_CTX_npn_advertised_cb_func cb, - void *arg); + SSL_CTX_npn_advertised_cb_func cb, + void *arg); # define SSL_CTX_set_npn_advertised_cb SSL_CTX_set_next_protos_advertised_cb typedef int (*SSL_CTX_npn_select_cb_func)(SSL *s, @@ -765,9 +771,9 @@ void SSL_get0_next_proto_negotiated(const SSL *s, const unsigned char **data, # endif __owur int SSL_select_next_proto(unsigned char **out, unsigned char *outlen, - const unsigned char *in, unsigned int inlen, - const unsigned char *client, - unsigned int client_len); + const unsigned char *in, unsigned int inlen, + const unsigned char *client, + unsigned int client_len); # define OPENSSL_NPN_UNSUPPORTED 0 # define OPENSSL_NPN_NEGOTIATED 1 @@ -839,19 +845,21 @@ void SSL_CTX_set_psk_use_session_callback(SSL_CTX *ctx, __owur int SSL_CTX_has_client_custom_ext(const SSL_CTX *ctx, unsigned int ext_type); -__owur int SSL_CTX_add_client_custom_ext(SSL_CTX *ctx, unsigned int ext_type, - custom_ext_add_cb add_cb, - custom_ext_free_cb free_cb, - void *add_arg, - custom_ext_parse_cb parse_cb, - void *parse_arg); +__owur int SSL_CTX_add_client_custom_ext(SSL_CTX *ctx, + unsigned int ext_type, + custom_ext_add_cb add_cb, + custom_ext_free_cb free_cb, + void *add_arg, + custom_ext_parse_cb parse_cb, + void *parse_arg); -__owur int SSL_CTX_add_server_custom_ext(SSL_CTX *ctx, unsigned int ext_type, - custom_ext_add_cb add_cb, - custom_ext_free_cb free_cb, - void *add_arg, - custom_ext_parse_cb parse_cb, - void *parse_arg); +__owur int SSL_CTX_add_server_custom_ext(SSL_CTX *ctx, + unsigned int ext_type, + custom_ext_add_cb add_cb, + custom_ext_free_cb free_cb, + void *add_arg, + custom_ext_parse_cb parse_cb, + void *parse_arg); __owur int SSL_CTX_add_custom_ext(SSL_CTX *ctx, unsigned int ext_type, unsigned int context, @@ -1360,28 +1368,16 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION) SSL_ctrl(s,SSL_CTRL_SET_CHAIN_CERT_STORE,1,(char *)(st)) # define SSL_get1_groups(ctx, s) \ SSL_ctrl(ctx,SSL_CTRL_GET_GROUPS,0,(char *)(s)) -# define SSL_get1_curves(ctx, s) \ - SSL_get1_groups((ctx), (s)) # define SSL_CTX_set1_groups(ctx, glist, glistlen) \ SSL_CTX_ctrl(ctx,SSL_CTRL_SET_GROUPS,glistlen,(char *)(glist)) # define SSL_CTX_set1_groups_list(ctx, s) \ SSL_CTX_ctrl(ctx,SSL_CTRL_SET_GROUPS_LIST,0,(char *)(s)) -# define SSL_CTX_set1_curves(ctx, clist, clistlen) \ - SSL_CTX_set1_groups((ctx), (clist), (clistlen)) -# define SSL_CTX_set1_curves_list(ctx, s) \ - SSL_CTX_set1_groups_list((ctx), (s)) # define SSL_set1_groups(ctx, glist, glistlen) \ SSL_ctrl(ctx,SSL_CTRL_SET_GROUPS,glistlen,(char *)(glist)) # define SSL_set1_groups_list(ctx, s) \ SSL_ctrl(ctx,SSL_CTRL_SET_GROUPS_LIST,0,(char *)(s)) -# define SSL_set1_curves(ctx, clist, clistlen) \ - SSL_set1_groups((ctx), (clist), (clistlen)) -# define SSL_set1_curves_list(ctx, s) \ - SSL_set1_groups_list((ctx), (s)) # define SSL_get_shared_group(s, n) \ SSL_ctrl(s,SSL_CTRL_GET_SHARED_GROUP,n,NULL) -# define SSL_get_shared_curve(s, n) \ - SSL_get_shared_group((s), (n)) # define SSL_CTX_set1_sigalgs(ctx, slist, slistlen) \ SSL_CTX_ctrl(ctx,SSL_CTRL_SET_SIGALGS,slistlen,(int *)(slist)) # define SSL_CTX_set1_sigalgs_list(ctx, s) \ @@ -1413,39 +1409,55 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION) SSL_ctrl(s,SSL_CTRL_GET_RAW_CIPHERLIST,0,plst) # define SSL_get0_ec_point_formats(s, plst) \ SSL_ctrl(s,SSL_CTRL_GET_EC_POINT_FORMATS,0,plst) -#define SSL_CTX_set_min_proto_version(ctx, version) \ +# define SSL_CTX_set_min_proto_version(ctx, version) \ SSL_CTX_ctrl(ctx, SSL_CTRL_SET_MIN_PROTO_VERSION, version, NULL) -#define SSL_CTX_set_max_proto_version(ctx, version) \ +# define SSL_CTX_set_max_proto_version(ctx, version) \ SSL_CTX_ctrl(ctx, SSL_CTRL_SET_MAX_PROTO_VERSION, version, NULL) -#define SSL_CTX_get_min_proto_version(ctx) \ +# define SSL_CTX_get_min_proto_version(ctx) \ SSL_CTX_ctrl(ctx, SSL_CTRL_GET_MIN_PROTO_VERSION, 0, NULL) -#define SSL_CTX_get_max_proto_version(ctx) \ +# define SSL_CTX_get_max_proto_version(ctx) \ SSL_CTX_ctrl(ctx, SSL_CTRL_GET_MAX_PROTO_VERSION, 0, NULL) -#define SSL_set_min_proto_version(s, version) \ +# define SSL_set_min_proto_version(s, version) \ SSL_ctrl(s, SSL_CTRL_SET_MIN_PROTO_VERSION, version, NULL) -#define SSL_set_max_proto_version(s, version) \ +# define SSL_set_max_proto_version(s, version) \ SSL_ctrl(s, SSL_CTRL_SET_MAX_PROTO_VERSION, version, NULL) -#define SSL_get_min_proto_version(s) \ +# define SSL_get_min_proto_version(s) \ SSL_ctrl(s, SSL_CTRL_GET_MIN_PROTO_VERSION, 0, NULL) -#define SSL_get_max_proto_version(s) \ +# define SSL_get_max_proto_version(s) \ SSL_ctrl(s, SSL_CTRL_GET_MAX_PROTO_VERSION, 0, NULL) -#if OPENSSL_API_COMPAT < 0x10100000L +/* + * The following symbol names are old and obsolete. They are kept + * for compatibility reasons only and should not be used anymore. + */ +# define SSL_CTRL_GET_CURVES SSL_CTRL_GET_GROUPS +# define SSL_CTRL_SET_CURVES SSL_CTRL_SET_GROUPS +# define SSL_CTRL_SET_CURVES_LIST SSL_CTRL_SET_GROUPS_LIST +# define SSL_CTRL_GET_SHARED_CURVE SSL_CTRL_GET_SHARED_GROUP + +# define SSL_get1_curves SSL_get1_groups +# define SSL_CTX_set1_curves SSL_CTX_set1_groups +# define SSL_CTX_set1_curves_list SSL_CTX_set1_groups_list +# define SSL_set1_curves SSL_set1_groups +# define SSL_set1_curves_list SSL_set1_groups_list +# define SSL_get_shared_curve SSL_get_shared_group + + +# if OPENSSL_API_COMPAT < 0x10100000L /* Provide some compatibility macros for removed functionality. */ -# define SSL_CTX_need_tmp_RSA(ctx) 0 -# define SSL_CTX_set_tmp_rsa(ctx,rsa) 1 -# define SSL_need_tmp_RSA(ssl) 0 -# define SSL_set_tmp_rsa(ssl,rsa) 1 -# define SSL_CTX_set_ecdh_auto(dummy, onoff) ((onoff) != 0) -# define SSL_set_ecdh_auto(dummy, onoff) ((onoff) != 0) +# define SSL_CTX_need_tmp_RSA(ctx) 0 +# define SSL_CTX_set_tmp_rsa(ctx,rsa) 1 +# define SSL_need_tmp_RSA(ssl) 0 +# define SSL_set_tmp_rsa(ssl,rsa) 1 +# define SSL_CTX_set_ecdh_auto(dummy, onoff) ((onoff) != 0) +# define SSL_set_ecdh_auto(dummy, onoff) ((onoff) != 0) /* * We "pretend" to call the callback to avoid warnings about unused static * functions. */ -# define SSL_CTX_set_tmp_rsa_callback(ctx, cb) while(0) (cb)(NULL, 0, 0) -# define SSL_set_tmp_rsa_callback(ssl, cb) while(0) (cb)(NULL, 0, 0) -#endif - +# define SSL_CTX_set_tmp_rsa_callback(ctx, cb) while(0) (cb)(NULL, 0, 0) +# define SSL_set_tmp_rsa_callback(ssl, cb) while(0) (cb)(NULL, 0, 0) +# endif __owur const BIO_METHOD *BIO_f_ssl(void); __owur BIO *BIO_new_ssl(SSL_CTX *ctx, int client); __owur BIO *BIO_new_ssl_connect(SSL_CTX *ctx); @@ -1485,7 +1497,7 @@ __owur int SSL_get_fd(const SSL *s); __owur int SSL_get_rfd(const SSL *s); __owur int SSL_get_wfd(const SSL *s); __owur const char *SSL_get_cipher_list(const SSL *s, int n); -__owur char *SSL_get_shared_ciphers(const SSL *s, char *buf, int len); +__owur char *SSL_get_shared_ciphers(const SSL *s, char *buf, int size); __owur int SSL_get_read_ahead(const SSL *s); __owur int SSL_pending(const SSL *s); __owur int SSL_has_pending(const SSL *s); @@ -1500,6 +1512,8 @@ void SSL_set_bio(SSL *s, BIO *rbio, BIO *wbio); __owur BIO *SSL_get_rbio(const SSL *s); __owur BIO *SSL_get_wbio(const SSL *s); __owur int SSL_set_cipher_list(SSL *s, const char *str); +__owur int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str); +__owur int SSL_set_ciphersuites(SSL *s, const char *str); void SSL_set_read_ahead(SSL *s, int yes); __owur int SSL_get_verify_mode(const SSL *s); __owur int SSL_get_verify_depth(const SSL *s); @@ -1509,11 +1523,12 @@ void SSL_set_verify_depth(SSL *s, int depth); void SSL_set_cert_cb(SSL *s, int (*cb) (SSL *ssl, void *arg), void *arg); # ifndef OPENSSL_NO_RSA __owur int SSL_use_RSAPrivateKey(SSL *ssl, RSA *rsa); -__owur int SSL_use_RSAPrivateKey_ASN1(SSL *ssl, const unsigned char *d, long len); +__owur int SSL_use_RSAPrivateKey_ASN1(SSL *ssl, const unsigned char *d, + long len); # endif __owur int SSL_use_PrivateKey(SSL *ssl, EVP_PKEY *pkey); __owur int SSL_use_PrivateKey_ASN1(int pk, SSL *ssl, const unsigned char *d, - long len); + long len); __owur int SSL_use_certificate(SSL *ssl, X509 *x); __owur int SSL_use_certificate_ASN1(SSL *ssl, const unsigned char *d, int len); __owur int SSL_use_cert_and_key(SSL *ssl, X509 *x509, EVP_PKEY *privatekey, @@ -1526,7 +1541,7 @@ __owur int SSL_use_cert_and_key(SSL *ssl, X509 *x509, EVP_PKEY *privatekey, /* Set serverinfo data for the current active cert. */ __owur int SSL_CTX_use_serverinfo(SSL_CTX *ctx, const unsigned char *serverinfo, - size_t serverinfo_length); + size_t serverinfo_length); __owur int SSL_CTX_use_serverinfo_ex(SSL_CTX *ctx, unsigned int version, const unsigned char *serverinfo, size_t serverinfo_length); @@ -1540,24 +1555,27 @@ __owur int SSL_use_PrivateKey_file(SSL *ssl, const char *file, int type); __owur int SSL_use_certificate_file(SSL *ssl, const char *file, int type); #ifndef OPENSSL_NO_RSA -__owur int SSL_CTX_use_RSAPrivateKey_file(SSL_CTX *ctx, const char *file, int type); +__owur int SSL_CTX_use_RSAPrivateKey_file(SSL_CTX *ctx, const char *file, + int type); #endif -__owur int SSL_CTX_use_PrivateKey_file(SSL_CTX *ctx, const char *file, int type); -__owur int SSL_CTX_use_certificate_file(SSL_CTX *ctx, const char *file, int type); +__owur int SSL_CTX_use_PrivateKey_file(SSL_CTX *ctx, const char *file, + int type); +__owur int SSL_CTX_use_certificate_file(SSL_CTX *ctx, const char *file, + int type); /* PEM type */ __owur int SSL_CTX_use_certificate_chain_file(SSL_CTX *ctx, const char *file); __owur int SSL_use_certificate_chain_file(SSL *ssl, const char *file); __owur STACK_OF(X509_NAME) *SSL_load_client_CA_file(const char *file); __owur int SSL_add_file_cert_subjects_to_stack(STACK_OF(X509_NAME) *stackCAs, - const char *file); + const char *file); int SSL_add_dir_cert_subjects_to_stack(STACK_OF(X509_NAME) *stackCAs, const char *dir); -#if OPENSSL_API_COMPAT < 0x10100000L -# define SSL_load_error_strings() \ +# if OPENSSL_API_COMPAT < 0x10100000L +# define SSL_load_error_strings() \ OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS \ | OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL) -#endif +# endif __owur const char *SSL_state_string(const SSL *s); __owur const char *SSL_rstate_string(const SSL *s); @@ -1583,14 +1601,15 @@ __owur int SSL_SESSION_set_cipher(SSL_SESSION *s, const SSL_CIPHER *cipher); __owur int SSL_SESSION_has_ticket(const SSL_SESSION *s); __owur unsigned long SSL_SESSION_get_ticket_lifetime_hint(const SSL_SESSION *s); void SSL_SESSION_get0_ticket(const SSL_SESSION *s, const unsigned char **tick, - size_t *len); + size_t *len); __owur uint32_t SSL_SESSION_get_max_early_data(const SSL_SESSION *s); __owur int SSL_SESSION_set_max_early_data(SSL_SESSION *s, uint32_t max_early_data); __owur int SSL_copy_session_id(SSL *to, const SSL *from); __owur X509 *SSL_SESSION_get0_peer(SSL_SESSION *s); -__owur int SSL_SESSION_set1_id_context(SSL_SESSION *s, const unsigned char *sid_ctx, - unsigned int sid_ctx_len); +__owur int SSL_SESSION_set1_id_context(SSL_SESSION *s, + const unsigned char *sid_ctx, + unsigned int sid_ctx_len); __owur int SSL_SESSION_set1_id(SSL_SESSION *s, const unsigned char *sid, unsigned int sid_len); __owur int SSL_SESSION_is_resumable(const SSL_SESSION *s); @@ -1600,7 +1619,7 @@ __owur SSL_SESSION *SSL_SESSION_dup(SSL_SESSION *src); const unsigned char *SSL_SESSION_get_id(const SSL_SESSION *s, unsigned int *len); const unsigned char *SSL_SESSION_get0_id_context(const SSL_SESSION *s, - unsigned int *len); + unsigned int *len); __owur unsigned int SSL_SESSION_get_compress_id(const SSL_SESSION *s); # ifndef OPENSSL_NO_STDIO int SSL_SESSION_print_fp(FILE *fp, const SSL_SESSION *ses); @@ -1611,12 +1630,13 @@ int SSL_SESSION_up_ref(SSL_SESSION *ses); void SSL_SESSION_free(SSL_SESSION *ses); __owur int i2d_SSL_SESSION(SSL_SESSION *in, unsigned char **pp); __owur int SSL_set_session(SSL *to, SSL_SESSION *session); -int SSL_CTX_add_session(SSL_CTX *s, SSL_SESSION *c); -int SSL_CTX_remove_session(SSL_CTX *, SSL_SESSION *c); -__owur int SSL_CTX_set_generate_session_id(SSL_CTX *, GEN_SESSION_CB); -__owur int SSL_set_generate_session_id(SSL *, GEN_SESSION_CB); -__owur int SSL_has_matching_session_id(const SSL *ssl, const unsigned char *id, - unsigned int id_len); +int SSL_CTX_add_session(SSL_CTX *ctx, SSL_SESSION *session); +int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *session); +__owur int SSL_CTX_set_generate_session_id(SSL_CTX *ctx, GEN_SESSION_CB cb); +__owur int SSL_set_generate_session_id(SSL *s, GEN_SESSION_CB cb); +__owur int SSL_has_matching_session_id(const SSL *s, + const unsigned char *id, + unsigned int id_len); SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp, long length); @@ -1639,14 +1659,14 @@ void SSL_CTX_set_cert_cb(SSL_CTX *c, int (*cb) (SSL *ssl, void *arg), # ifndef OPENSSL_NO_RSA __owur int SSL_CTX_use_RSAPrivateKey(SSL_CTX *ctx, RSA *rsa); __owur int SSL_CTX_use_RSAPrivateKey_ASN1(SSL_CTX *ctx, const unsigned char *d, - long len); + long len); # endif __owur int SSL_CTX_use_PrivateKey(SSL_CTX *ctx, EVP_PKEY *pkey); __owur int SSL_CTX_use_PrivateKey_ASN1(int pk, SSL_CTX *ctx, - const unsigned char *d, long len); + const unsigned char *d, long len); __owur int SSL_CTX_use_certificate(SSL_CTX *ctx, X509 *x); __owur int SSL_CTX_use_certificate_ASN1(SSL_CTX *ctx, int len, - const unsigned char *d); + const unsigned char *d); __owur int SSL_CTX_use_cert_and_key(SSL_CTX *ctx, X509 *x509, EVP_PKEY *privatekey, STACK_OF(X509) *chain, int override); @@ -1662,19 +1682,20 @@ void *SSL_get_default_passwd_cb_userdata(SSL *s); __owur int SSL_CTX_check_private_key(const SSL_CTX *ctx); __owur int SSL_check_private_key(const SSL *ctx); -__owur int SSL_CTX_set_session_id_context(SSL_CTX *ctx, const unsigned char *sid_ctx, - unsigned int sid_ctx_len); +__owur int SSL_CTX_set_session_id_context(SSL_CTX *ctx, + const unsigned char *sid_ctx, + unsigned int sid_ctx_len); SSL *SSL_new(SSL_CTX *ctx); int SSL_up_ref(SSL *s); int SSL_is_dtls(const SSL *s); __owur int SSL_set_session_id_context(SSL *ssl, const unsigned char *sid_ctx, - unsigned int sid_ctx_len); + unsigned int sid_ctx_len); -__owur int SSL_CTX_set_purpose(SSL_CTX *s, int purpose); -__owur int SSL_set_purpose(SSL *s, int purpose); -__owur int SSL_CTX_set_trust(SSL_CTX *s, int trust); -__owur int SSL_set_trust(SSL *s, int trust); +__owur int SSL_CTX_set_purpose(SSL_CTX *ctx, int purpose); +__owur int SSL_set_purpose(SSL *ssl, int purpose); +__owur int SSL_CTX_set_trust(SSL_CTX *ctx, int trust); +__owur int SSL_set_trust(SSL *ssl, int trust); __owur int SSL_set1_host(SSL *s, const char *hostname); __owur int SSL_add1_host(SSL *s, const char *hostname); @@ -1805,8 +1826,8 @@ __owur int SSL_CTX_set_ssl_version(SSL_CTX *ctx, const SSL_METHOD *meth); # ifndef OPENSSL_NO_SSL3_METHOD DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *SSLv3_method(void)) /* SSLv3 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *SSLv3_server_method(void)) /* SSLv3 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *SSLv3_client_method(void)) /* SSLv3 */ +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *SSLv3_server_method(void)) +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *SSLv3_client_method(void)) # endif #define SSLv23_method TLS_method @@ -1820,33 +1841,34 @@ __owur const SSL_METHOD *TLS_client_method(void); # ifndef OPENSSL_NO_TLS1_METHOD DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_method(void)) /* TLSv1.0 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_server_method(void)) /* TLSv1.0 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_client_method(void)) /* TLSv1.0 */ +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_server_method(void)) +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_client_method(void)) # endif # ifndef OPENSSL_NO_TLS1_1_METHOD DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_1_method(void)) /* TLSv1.1 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_1_server_method(void)) /* TLSv1.1 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_1_client_method(void)) /* TLSv1.1 */ +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_1_server_method(void)) +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_1_client_method(void)) # endif # ifndef OPENSSL_NO_TLS1_2_METHOD DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_2_method(void)) /* TLSv1.2 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_2_server_method(void)) /* TLSv1.2 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_2_client_method(void)) /* TLSv1.2 */ +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_2_server_method(void)) +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_2_client_method(void)) # endif # ifndef OPENSSL_NO_DTLS1_METHOD DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_method(void)) /* DTLSv1.0 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_server_method(void)) /* DTLSv1.0 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_client_method(void)) /* DTLSv1.0 */ +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_server_method(void)) +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_client_method(void)) # endif # ifndef OPENSSL_NO_DTLS1_2_METHOD -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_2_method(void)) /* DTLSv1.2 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_2_server_method(void)) /* DTLSv1.2 */ -DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_2_client_method(void)) /* DTLSv1.2 */ -#endif +/* DTLSv1.2 */ +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_2_method(void)) +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_2_server_method(void)) +DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_2_client_method(void)) +# endif __owur const SSL_METHOD *DTLS_method(void); /* DTLS 1.0 and 1.2 */ __owur const SSL_METHOD *DTLS_server_method(void); /* DTLS 1.0 and 1.2 */ @@ -1897,9 +1919,9 @@ void SSL_set_accept_state(SSL *s); __owur long SSL_get_default_timeout(const SSL *s); -#if OPENSSL_API_COMPAT < 0x10100000L -# define SSL_library_init() OPENSSL_init_ssl(0, NULL) -#endif +# if OPENSSL_API_COMPAT < 0x10100000L +# define SSL_library_init() OPENSSL_init_ssl(0, NULL) +# endif __owur char *SSL_CIPHER_description(const SSL_CIPHER *, char *buf, int size); __owur STACK_OF(X509_NAME) *SSL_dup_CA_list(const STACK_OF(X509_NAME) *sk); @@ -1909,7 +1931,8 @@ __owur SSL *SSL_dup(SSL *ssl); __owur X509 *SSL_get_certificate(const SSL *ssl); /* * EVP_PKEY - */ struct evp_pkey_st *SSL_get_privatekey(const SSL *ssl); + */ +struct evp_pkey_st *SSL_get_privatekey(const SSL *ssl); __owur X509 *SSL_CTX_get0_certificate(const SSL_CTX *ctx); __owur EVP_PKEY *SSL_CTX_get0_privatekey(const SSL_CTX *ctx); @@ -1926,7 +1949,7 @@ __owur int SSL_CTX_set_default_verify_paths(SSL_CTX *ctx); __owur int SSL_CTX_set_default_verify_dir(SSL_CTX *ctx); __owur int SSL_CTX_set_default_verify_file(SSL_CTX *ctx); __owur int SSL_CTX_load_verify_locations(SSL_CTX *ctx, const char *CAfile, - const char *CApath); + const char *CApath); # define SSL_get0_session SSL_get_session/* just peek at pointer */ __owur SSL_SESSION *SSL_get_session(const SSL *ssl); __owur SSL_SESSION *SSL_get1_session(SSL *ssl); /* obtain a reference count */ @@ -2024,10 +2047,10 @@ __owur const char *SSL_COMP_get0_name(const SSL_COMP *comp); __owur int SSL_COMP_get_id(const SSL_COMP *comp); STACK_OF(SSL_COMP) *SSL_COMP_get_compression_methods(void); __owur STACK_OF(SSL_COMP) *SSL_COMP_set0_compression_methods(STACK_OF(SSL_COMP) - *meths); -#if OPENSSL_API_COMPAT < 0x10100000L -# define SSL_COMP_free_compression_methods() while(0) continue -#endif + *meths); +# if OPENSSL_API_COMPAT < 0x10100000L +# define SSL_COMP_free_compression_methods() while(0) continue +# endif __owur int SSL_COMP_add_compression_method(int id, COMP_METHOD *cm); const SSL_CIPHER *SSL_CIPHER_find(SSL *ssl, const unsigned char *ptr); @@ -2040,13 +2063,14 @@ int SSL_bytes_to_cipher_list(SSL *s, const unsigned char *bytes, size_t len, /* TLS extensions functions */ __owur int SSL_set_session_ticket_ext(SSL *s, void *ext_data, int ext_len); -__owur int SSL_set_session_ticket_ext_cb(SSL *s, tls_session_ticket_ext_cb_fn cb, - void *arg); +__owur int SSL_set_session_ticket_ext_cb(SSL *s, + tls_session_ticket_ext_cb_fn cb, + void *arg); /* Pre-shared secret session resumption functions */ __owur int SSL_set_session_secret_cb(SSL *s, - tls_session_secret_cb_fn tls_session_secret_cb, - void *arg); + tls_session_secret_cb_fn session_secret_cb, + void *arg); void SSL_CTX_set_not_resumable_session_callback(SSL_CTX *ctx, int (*cb) (SSL *ssl, @@ -2055,8 +2079,7 @@ void SSL_CTX_set_not_resumable_session_callback(SSL_CTX *ctx, void SSL_set_not_resumable_session_callback(SSL *ssl, int (*cb) (SSL *ssl, - int - is_forward_secure)); + int is_forward_secure)); void SSL_CTX_set_record_padding_callback(SSL_CTX *ctx, size_t (*cb) (SSL *ssl, int type, @@ -2072,6 +2095,11 @@ void SSL_set_record_padding_callback_arg(SSL *ssl, void *arg); void *SSL_get_record_padding_callback_arg(SSL *ssl); int SSL_set_block_padding(SSL *ssl, size_t block_size); +int SSL_set_num_tickets(SSL *s, size_t num_tickets); +size_t SSL_get_num_tickets(SSL *s); +int SSL_CTX_set_num_tickets(SSL_CTX *ctx, size_t num_tickets); +size_t SSL_CTX_get_num_tickets(SSL_CTX *ctx); + # if OPENSSL_API_COMPAT < 0x10100000L # define SSL_cache_hit(s) SSL_session_reused(s) # endif @@ -2083,7 +2111,8 @@ __owur __owur SSL_CONF_CTX *SSL_CONF_CTX_new(void); int SSL_CONF_CTX_finish(SSL_CONF_CTX *cctx); void SSL_CONF_CTX_free(SSL_CONF_CTX *cctx); unsigned int SSL_CONF_CTX_set_flags(SSL_CONF_CTX *cctx, unsigned int flags); -__owur unsigned int SSL_CONF_CTX_clear_flags(SSL_CONF_CTX *cctx, unsigned int flags); +__owur unsigned int SSL_CONF_CTX_clear_flags(SSL_CONF_CTX *cctx, + unsigned int flags); __owur int SSL_CONF_CTX_set1_prefix(SSL_CONF_CTX *cctx, const char *pre); void SSL_CONF_CTX_set_ssl(SSL_CONF_CTX *cctx, SSL *ssl); @@ -2114,8 +2143,8 @@ int DTLSv1_listen(SSL *s, BIO_ADDR *client); * May return a negative integer if an error occurs. * A connection should be aborted if the SCTs are deemed insufficient. */ -typedef int(*ssl_ct_validation_cb)(const CT_POLICY_EVAL_CTX *ctx, - const STACK_OF(SCT) *scts, void *arg); +typedef int (*ssl_ct_validation_cb)(const CT_POLICY_EVAL_CTX *ctx, + const STACK_OF(SCT) *scts, void *arg); /* * Sets a |callback| that is invoked upon receipt of ServerHelloDone to validate @@ -2265,21 +2294,22 @@ const CTLOG_STORE *SSL_CTX_get0_ctlog_store(const SSL_CTX *ctx); void SSL_set_security_level(SSL *s, int level); __owur int SSL_get_security_level(const SSL *s); void SSL_set_security_callback(SSL *s, - int (*cb) (const SSL *s, const SSL_CTX *ctx, int op, - int bits, int nid, void *other, - void *ex)); -int (*SSL_get_security_callback(const SSL *s)) (const SSL *s, const SSL_CTX *ctx, int op, - int bits, int nid, - void *other, void *ex); + int (*cb) (const SSL *s, const SSL_CTX *ctx, + int op, int bits, int nid, + void *other, void *ex)); +int (*SSL_get_security_callback(const SSL *s)) (const SSL *s, + const SSL_CTX *ctx, int op, + int bits, int nid, void *other, + void *ex); void SSL_set0_security_ex_data(SSL *s, void *ex); __owur void *SSL_get0_security_ex_data(const SSL *s); void SSL_CTX_set_security_level(SSL_CTX *ctx, int level); __owur int SSL_CTX_get_security_level(const SSL_CTX *ctx); void SSL_CTX_set_security_callback(SSL_CTX *ctx, - int (*cb) (const SSL *s, const SSL_CTX *ctx, int op, - int bits, int nid, void *other, - void *ex)); + int (*cb) (const SSL *s, const SSL_CTX *ctx, + int op, int bits, int nid, + void *other, void *ex)); int (*SSL_CTX_get_security_callback(const SSL_CTX *ctx)) (const SSL *s, const SSL_CTX *ctx, int op, int bits, @@ -2290,10 +2320,10 @@ void SSL_CTX_set0_security_ex_data(SSL_CTX *ctx, void *ex); __owur void *SSL_CTX_get0_security_ex_data(const SSL_CTX *ctx); /* OPENSSL_INIT flag 0x010000 reserved for internal use */ -#define OPENSSL_INIT_NO_LOAD_SSL_STRINGS 0x00100000L -#define OPENSSL_INIT_LOAD_SSL_STRINGS 0x00200000L +# define OPENSSL_INIT_NO_LOAD_SSL_STRINGS 0x00100000L +# define OPENSSL_INIT_LOAD_SSL_STRINGS 0x00200000L -#define OPENSSL_INIT_SSL_DEFAULT \ +# define OPENSSL_INIT_SSL_DEFAULT \ (OPENSSL_INIT_LOAD_SSL_STRINGS | OPENSSL_INIT_LOAD_CRYPTO_STRINGS) int OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings); @@ -2305,8 +2335,9 @@ __owur const struct openssl_ssl_test_functions *SSL_test_functions(void); __owur int SSL_free_buffers(SSL *ssl); __owur int SSL_alloc_buffers(SSL *ssl); -/* Return codes for tls_get_ticket_from_client() and tls_decrypt_ticket() */ -typedef int SSL_TICKET_RETURN; +/* Status codes passed to the decrypt session ticket callback. Some of these + * are for internal use only and are never passed to the callback. */ +typedef int SSL_TICKET_STATUS; /* Support for ticket appdata */ /* fatal error, malloc failure */ @@ -2324,11 +2355,25 @@ typedef int SSL_TICKET_RETURN; /* same as above but the ticket needs to be renewed */ # define SSL_TICKET_SUCCESS_RENEW 6 +/* Return codes for the decrypt session ticket callback */ +typedef int SSL_TICKET_RETURN; + +/* An error occurred */ +#define SSL_TICKET_RETURN_ABORT 0 +/* Do not use the ticket, do not send a renewed ticket to the client */ +#define SSL_TICKET_RETURN_IGNORE 1 +/* Do not use the ticket, send a renewed ticket to the client */ +#define SSL_TICKET_RETURN_IGNORE_RENEW 2 +/* Use the ticket, do not send a renewed ticket to the client */ +#define SSL_TICKET_RETURN_USE 3 +/* Use the ticket, send a renewed ticket to the client */ +#define SSL_TICKET_RETURN_USE_RENEW 4 + typedef int (*SSL_CTX_generate_session_ticket_fn)(SSL *s, void *arg); typedef SSL_TICKET_RETURN (*SSL_CTX_decrypt_session_ticket_fn)(SSL *s, SSL_SESSION *ss, const unsigned char *keyname, size_t keyname_length, - SSL_TICKET_RETURN retv, + SSL_TICKET_STATUS status, void *arg); int SSL_CTX_set_session_ticket_cb(SSL_CTX *ctx, SSL_CTX_generate_session_ticket_fn gen_cb, diff --git a/include/openssl/sslerr.h b/include/openssl/sslerr.h index 1373a486..8e395cdd 100644 --- a/include/openssl/sslerr.h +++ b/include/openssl/sslerr.h @@ -23,6 +23,7 @@ int ERR_load_SSL_strings(void); # define SSL_F_ADD_KEY_SHARE 512 # define SSL_F_BYTES_TO_CIPHER_LIST 519 # define SSL_F_CHECK_SUITEB_CIPHER_LIST 331 +# define SSL_F_CIPHERSUITE_CB 622 # define SSL_F_CONSTRUCT_CA_NAMES 552 # define SSL_F_CONSTRUCT_KEY_EXCHANGE_TBS 553 # define SSL_F_CREATE_SYNTHETIC_MESSAGE_HASH 539 @@ -40,6 +41,7 @@ int ERR_load_SSL_strings(void); # define SSL_F_DTLS1_BUFFER_RECORD 247 # define SSL_F_DTLS1_CHECK_TIMEOUT_NUM 318 # define SSL_F_DTLS1_HEARTBEAT 305 +# define SSL_F_DTLS1_HM_FRAGMENT_NEW 623 # define SSL_F_DTLS1_PREPROCESS_FRAGMENT 288 # define SSL_F_DTLS1_PROCESS_BUFFERED_RECORDS 424 # define SSL_F_DTLS1_PROCESS_RECORD 257 @@ -53,6 +55,7 @@ int ERR_load_SSL_strings(void); # define SSL_F_DTLS_CONSTRUCT_HELLO_VERIFY_REQUEST 385 # define SSL_F_DTLS_GET_REASSEMBLED_MESSAGE 370 # define SSL_F_DTLS_PROCESS_HELLO_VERIFY 386 +# define SSL_F_DTLS_RECORD_LAYER_NEW 635 # define SSL_F_DTLS_WAIT_FOR_DRY 592 # define SSL_F_EARLY_DATA_COUNT_OK 532 # define SSL_F_FINAL_EARLY_DATA 556 @@ -82,6 +85,8 @@ int ERR_load_SSL_strings(void); # define SSL_F_OSSL_STATEM_SERVER_READ_TRANSITION 418 # define SSL_F_OSSL_STATEM_SERVER_WRITE_TRANSITION 604 # define SSL_F_PARSE_CA_NAMES 541 +# define SSL_F_PITEM_NEW 624 +# define SSL_F_PQUEUE_NEW 625 # define SSL_F_PROCESS_KEY_SHARE_EXT 439 # define SSL_F_READ_STATE_MACHINE 352 # define SSL_F_SET_CLIENT_CIPHERSUITE 540 @@ -133,10 +138,12 @@ int ERR_load_SSL_strings(void); # define SSL_F_SSL_CHECK_SRP_EXT_CLIENTHELLO 606 # define SSL_F_SSL_CHECK_SRVR_ECC_CERT_AND_ALG 279 # define SSL_F_SSL_CHOOSE_CLIENT_VERSION 607 +# define SSL_F_SSL_CIPHER_DESCRIPTION 626 # define SSL_F_SSL_CIPHER_LIST_TO_BYTES 425 # define SSL_F_SSL_CIPHER_PROCESS_RULESTR 230 # define SSL_F_SSL_CIPHER_STRENGTH_SORT 231 # define SSL_F_SSL_CLEAR 164 +# define SSL_F_SSL_CLIENT_HELLO_GET1_EXTENSIONS_PRESENT 627 # define SSL_F_SSL_COMP_ADD_COMPRESSION_METHOD 165 # define SSL_F_SSL_CONF_CMD 334 # define SSL_F_SSL_CREATE_CIPHER_LIST 166 @@ -262,8 +269,13 @@ int ERR_load_SSL_strings(void); # define SSL_F_TLS1_EXPORT_KEYING_MATERIAL 314 # define SSL_F_TLS1_GET_CURVELIST 338 # define SSL_F_TLS1_PRF 284 +# define SSL_F_TLS1_SAVE_U16 628 # define SSL_F_TLS1_SETUP_KEY_BLOCK 211 +# define SSL_F_TLS1_SET_GROUPS 629 +# define SSL_F_TLS1_SET_RAW_SIGALGS 630 # define SSL_F_TLS1_SET_SERVER_SIGALGS 335 +# define SSL_F_TLS1_SET_SHARED_SIGALGS 631 +# define SSL_F_TLS1_SET_SIGALGS 632 # define SSL_F_TLS_CHOOSE_SIGALG 513 # define SSL_F_TLS_CLIENT_KEY_EXCHANGE_POST_WORK 354 # define SSL_F_TLS_COLLECT_EXTENSIONS 435 @@ -427,6 +439,8 @@ int ERR_load_SSL_strings(void); # define SSL_F_TLS_SCAN_CLIENTHELLO_TLSEXT 450 # define SSL_F_TLS_SETUP_HANDSHAKE 508 # define SSL_F_USE_CERTIFICATE_CHAIN_FILE 220 +# define SSL_F_WPACKET_INTERN_INIT_LEN 633 +# define SSL_F_WPACKET_START_SUB_PACKET_LEN__ 634 # define SSL_F_WRITE_STATE_MACHINE 586 /* @@ -577,8 +591,6 @@ int ERR_load_SSL_strings(void); # define SSL_R_MISSING_SUPPORTED_GROUPS_EXTENSION 209 # define SSL_R_MISSING_TMP_DH_KEY 171 # define SSL_R_MISSING_TMP_ECDH_KEY 311 -# define SSL_R_MIXED_SPECIAL_OPERATOR_WITH_GROUPS 101 -# define SSL_R_NESTED_GROUP 108 # define SSL_R_NOT_ON_RECORD_BOUNDARY 182 # define SSL_R_NOT_REPLACING_CERTIFICATE 289 # define SSL_R_NOT_SERVER 284 @@ -707,11 +719,9 @@ int ERR_load_SSL_strings(void); # define SSL_R_UNABLE_TO_FIND_PUBLIC_KEY_PARAMETERS 239 # define SSL_R_UNABLE_TO_LOAD_SSL3_MD5_ROUTINES 242 # define SSL_R_UNABLE_TO_LOAD_SSL3_SHA1_ROUTINES 243 -# define SSL_R_UNEXPECTED_GROUP_CLOSE 109 # define SSL_R_UNEXPECTED_CCS_MESSAGE 262 # define SSL_R_UNEXPECTED_END_OF_EARLY_DATA 178 # define SSL_R_UNEXPECTED_MESSAGE 244 -# define SSL_R_UNEXPECTED_OPERATOR_IN_GROUP 110 # define SSL_R_UNEXPECTED_RECORD 245 # define SSL_R_UNINITIALIZED 276 # define SSL_R_UNKNOWN_ALERT_TYPE 246 diff --git a/include/openssl/tls1.h b/include/openssl/tls1.h index f1678566..37bdc7da 100644 --- a/include/openssl/tls1.h +++ b/include/openssl/tls1.h @@ -30,9 +30,13 @@ extern "C" { # define TLS1_3_VERSION 0x0304 # define TLS_MAX_VERSION TLS1_3_VERSION -/* TODO(TLS1.3) REMOVE ME: Version indicator for draft -23 */ -# define TLS1_3_VERSION_DRAFT 0x7f17 -# define TLS1_3_VERSION_DRAFT_TXT "TLS 1.3 (draft 23)" +/* TODO(TLS1.3) REMOVE ME: Version indicators for draft version */ +# define TLS1_3_VERSION_DRAFT_26 0x7f1a +# define TLS1_3_VERSION_DRAFT_27 0x7f1b +# define TLS1_3_VERSION_DRAFT 0x7f1c +# define TLS1_3_VERSION_DRAFT_TXT_26 "TLS 1.3 (draft 26)" +# define TLS1_3_VERSION_DRAFT_TXT_27 "TLS 1.3 (draft 27)" +# define TLS1_3_VERSION_DRAFT_TXT "TLS 1.3 (draft 28)" /* Special value for method supporting multiple versions */ # define TLS_ANY_VERSION 0x10000 @@ -1131,18 +1135,6 @@ __owur int SSL_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain) # define TLS1_TXT_RSA_PSK_WITH_ARIA_128_GCM_SHA256 "RSA-PSK-ARIA128-GCM-SHA256" # define TLS1_TXT_RSA_PSK_WITH_ARIA_256_GCM_SHA384 "RSA-PSK-ARIA256-GCM-SHA384" - -/* TLSv1.3 ciphersuites */ -/* - * TODO(TLS1.3): Review the naming scheme for TLSv1.3 ciphers and also the - * cipherstring selection process for these ciphers - */ -# define TLS1_3_TXT_AES_128_GCM_SHA256 "TLS13-AES-128-GCM-SHA256" -# define TLS1_3_TXT_AES_256_GCM_SHA384 "TLS13-AES-256-GCM-SHA384" -# define TLS1_3_TXT_CHACHA20_POLY1305_SHA256 "TLS13-CHACHA20-POLY1305-SHA256" -# define TLS1_3_TXT_AES_128_CCM_SHA256 "TLS13-AES-128-CCM-SHA256" -# define TLS1_3_TXT_AES_128_CCM_8_SHA256 "TLS13-AES-128-CCM-8-SHA256" - # define TLS_CT_RSA_SIGN 1 # define TLS_CT_DSS_SIGN 2 # define TLS_CT_RSA_FIXED_DH 3 diff --git a/include/openssl/uierr.h b/include/openssl/uierr.h index 3e4b2979..72fd9a9d 100644 --- a/include/openssl/uierr.h +++ b/include/openssl/uierr.h @@ -25,6 +25,7 @@ int ERR_load_UI_strings(void); # define UI_F_GENERAL_ALLOCATE_PROMPT 109 # define UI_F_NOECHO_CONSOLE 117 # define UI_F_OPEN_CONSOLE 114 +# define UI_F_UI_CONSTRUCT_PROMPT 121 # define UI_F_UI_CREATE_METHOD 112 # define UI_F_UI_CTRL 111 # define UI_F_UI_DUP_ERROR_STRING 101 diff --git a/include/openssl/x509_vfy.h b/include/openssl/x509_vfy.h index 14147815..75fcdb6f 100644 --- a/include/openssl/x509_vfy.h +++ b/include/openssl/x509_vfy.h @@ -479,6 +479,7 @@ int X509_VERIFY_PARAM_add1_host(X509_VERIFY_PARAM *param, const char *name, size_t namelen); void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param, unsigned int flags); +unsigned int X509_VERIFY_PARAM_get_hostflags(const X509_VERIFY_PARAM *param); char *X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *); void X509_VERIFY_PARAM_move_peername(X509_VERIFY_PARAM *, X509_VERIFY_PARAM *); int X509_VERIFY_PARAM_set1_email(X509_VERIFY_PARAM *param, diff --git a/include/openssl/x509err.h b/include/openssl/x509err.h index 08692a5b..15a0d756 100644 --- a/include/openssl/x509err.h +++ b/include/openssl/x509err.h @@ -27,8 +27,11 @@ int ERR_load_X509_strings(void); # define X509_F_DANE_I2D 107 # define X509_F_DIR_CTRL 102 # define X509_F_GET_CERT_BY_SUBJECT 103 +# define X509_F_I2D_X509_AUX 151 +# define X509_F_LOOKUP_CERTS_SK 152 # define X509_F_NETSCAPE_SPKI_B64_DECODE 129 # define X509_F_NETSCAPE_SPKI_B64_ENCODE 130 +# define X509_F_NEW_DIR 153 # define X509_F_X509AT_ADD1_ATTR 135 # define X509_F_X509V3_ADD_EXT 104 # define X509_F_X509_ATTRIBUTE_CREATE_BY_NID 136 @@ -38,6 +41,7 @@ int ERR_load_X509_strings(void); # define X509_F_X509_ATTRIBUTE_SET1_DATA 138 # define X509_F_X509_CHECK_PRIVATE_KEY 128 # define X509_F_X509_CRL_DIFF 105 +# define X509_F_X509_CRL_METHOD_NEW 154 # define X509_F_X509_CRL_PRINT_FP 147 # define X509_F_X509_EXTENSION_CREATE_BY_NID 108 # define X509_F_X509_EXTENSION_CREATE_BY_OBJ 109 @@ -45,7 +49,9 @@ int ERR_load_X509_strings(void); # define X509_F_X509_LOAD_CERT_CRL_FILE 132 # define X509_F_X509_LOAD_CERT_FILE 111 # define X509_F_X509_LOAD_CRL_FILE 112 +# define X509_F_X509_LOOKUP_NEW 155 # define X509_F_X509_NAME_ADD_ENTRY 113 +# define X509_F_X509_NAME_CANON 156 # define X509_F_X509_NAME_ENTRY_CREATE_BY_NID 114 # define X509_F_X509_NAME_ENTRY_CREATE_BY_TXT 131 # define X509_F_X509_NAME_ENTRY_SET_OBJECT 115 @@ -62,14 +68,17 @@ int ERR_load_X509_strings(void); # define X509_F_X509_REQ_TO_X509 123 # define X509_F_X509_STORE_ADD_CERT 124 # define X509_F_X509_STORE_ADD_CRL 125 +# define X509_F_X509_STORE_ADD_LOOKUP 157 # define X509_F_X509_STORE_CTX_GET1_ISSUER 146 # define X509_F_X509_STORE_CTX_INIT 143 # define X509_F_X509_STORE_CTX_NEW 142 # define X509_F_X509_STORE_CTX_PURPOSE_INHERIT 134 +# define X509_F_X509_STORE_NEW 158 # define X509_F_X509_TO_X509_REQ 126 # define X509_F_X509_TRUST_ADD 133 # define X509_F_X509_TRUST_SET 141 # define X509_F_X509_VERIFY_CERT 127 +# define X509_F_X509_VERIFY_PARAM_NEW 159 /* * X509 reason codes. diff --git a/include/openssl/x509v3err.h b/include/openssl/x509v3err.h index e8308efc..6b3df12b 100644 --- a/include/openssl/x509v3err.h +++ b/include/openssl/x509v3err.h @@ -34,8 +34,12 @@ int ERR_load_X509V3_strings(void); # define X509V3_F_I2S_ASN1_IA5STRING 149 # define X509V3_F_I2S_ASN1_INTEGER 120 # define X509V3_F_I2V_AUTHORITY_INFO_ACCESS 138 +# define X509V3_F_LEVEL_ADD_NODE 168 # define X509V3_F_NOTICE_SECTION 132 # define X509V3_F_NREF_NOS 133 +# define X509V3_F_POLICY_CACHE_CREATE 169 +# define X509V3_F_POLICY_CACHE_NEW 170 +# define X509V3_F_POLICY_DATA_NEW 171 # define X509V3_F_POLICY_SECTION 131 # define X509V3_F_PROCESS_PCI_VALUE 150 # define X509V3_F_R2I_CERTPOL 130 @@ -50,6 +54,7 @@ int ERR_load_X509V3_strings(void); # define X509V3_F_SXNET_ADD_ID_ULONG 127 # define X509V3_F_SXNET_GET_ID_ASC 128 # define X509V3_F_SXNET_GET_ID_ULONG 129 +# define X509V3_F_TREE_INIT 172 # define X509V3_F_V2I_ASIDENTIFIERS 163 # define X509V3_F_V2I_ASN1_BIT_STRING 101 # define X509V3_F_V2I_AUTHORITY_INFO_ACCESS 139 diff --git a/ms/uplink-x86.pl b/ms/uplink-x86.pl index 440bf7d5..e79cff72 100755 --- a/ms/uplink-x86.pl +++ b/ms/uplink-x86.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2008-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -41,4 +41,4 @@ for ($i=1;$i<=$N;$i++) { } &asm_finish(); -close OUTPUT; +close STDOUT; diff --git a/ssl/packet.c b/ssl/packet.c index 7a4414ae..95031430 100644 --- a/ssl/packet.c +++ b/ssl/packet.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -9,6 +9,7 @@ #include "internal/cryptlib.h" #include "packet_locl.h" +#include #define DEFAULT_BUF_SIZE 256 @@ -93,9 +94,10 @@ static int wpacket_intern_init_len(WPACKET *pkt, size_t lenbytes) pkt->curr = 0; pkt->written = 0; - pkt->subs = OPENSSL_zalloc(sizeof(*pkt->subs)); - if (pkt->subs == NULL) + if ((pkt->subs = OPENSSL_zalloc(sizeof(*pkt->subs))) == NULL) { + SSLerr(SSL_F_WPACKET_INTERN_INIT_LEN, ERR_R_MALLOC_FAILURE); return 0; + } if (lenbytes == 0) return 1; @@ -276,9 +278,10 @@ int WPACKET_start_sub_packet_len__(WPACKET *pkt, size_t lenbytes) if (!ossl_assert(pkt->subs != NULL)) return 0; - sub = OPENSSL_zalloc(sizeof(*sub)); - if (sub == NULL) + if ((sub = OPENSSL_zalloc(sizeof(*sub))) == NULL) { + SSLerr(SSL_F_WPACKET_START_SUB_PACKET_LEN__, ERR_R_MALLOC_FAILURE); return 0; + } sub->parent = pkt->subs; pkt->subs = sub; diff --git a/ssl/pqueue.c b/ssl/pqueue.c index ee64eb32..548a7a44 100644 --- a/ssl/pqueue.c +++ b/ssl/pqueue.c @@ -1,5 +1,5 @@ /* - * Copyright 2005-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2005-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -18,14 +18,15 @@ struct pqueue_st { pitem *pitem_new(unsigned char *prio64be, void *data) { pitem *item = OPENSSL_malloc(sizeof(*item)); - if (item == NULL) + + if (item == NULL) { + SSLerr(SSL_F_PITEM_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } memcpy(item->priority, prio64be, sizeof(item->priority)); - item->data = data; item->next = NULL; - return item; } @@ -34,10 +35,13 @@ void pitem_free(pitem *item) OPENSSL_free(item); } -pqueue *pqueue_new() +pqueue *pqueue_new(void) { pqueue *pq = OPENSSL_zalloc(sizeof(*pq)); + if (pq == NULL) + SSLerr(SSL_F_PQUEUE_NEW, ERR_R_MALLOC_FAILURE); + return pq; } diff --git a/ssl/record/rec_layer_d1.c b/ssl/record/rec_layer_d1.c index ddb3a618..43e1f989 100644 --- a/ssl/record/rec_layer_d1.c +++ b/ssl/record/rec_layer_d1.c @@ -1,5 +1,5 @@ /* - * Copyright 2005-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2005-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -20,8 +20,10 @@ int DTLS_RECORD_LAYER_new(RECORD_LAYER *rl) { DTLS_RECORD_LAYER *d; - if ((d = OPENSSL_malloc(sizeof(*d))) == NULL) + if ((d = OPENSSL_malloc(sizeof(*d))) == NULL) { + SSLerr(SSL_F_DTLS_RECORD_LAYER_NEW, ERR_R_MALLOC_FAILURE); return 0; + } rl->d = d; @@ -361,8 +363,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, return -1; } - if (!ossl_statem_get_in_handshake(s) && SSL_in_init(s)) - { + if (!ossl_statem_get_in_handshake(s) && SSL_in_init(s)) { /* type == SSL3_RT_APPLICATION_DATA */ i = s->handshake_func(s); /* SSLfatal() already called if appropriate */ @@ -418,6 +419,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, /* get new packet if necessary */ if ((SSL3_RECORD_get_length(rr) == 0) || (s->rlayer.rstate == SSL_ST_READ_BODY)) { + RECORD_LAYER_set_numrpipes(&s->rlayer, 0); iret = dtls1_get_record(s); if (iret <= 0) { iret = dtls1_read_failed(s, iret); @@ -430,6 +432,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, else goto start; } + RECORD_LAYER_set_numrpipes(&s->rlayer, 1); } /* @@ -440,6 +443,19 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, && SSL3_RECORD_get_length(rr) != 0) s->rlayer.alert_count = 0; + if (SSL3_RECORD_get_type(rr) != SSL3_RT_HANDSHAKE + && SSL3_RECORD_get_type(rr) != SSL3_RT_CHANGE_CIPHER_SPEC + && !SSL_in_init(s) + && (s->d1->next_timeout.tv_sec != 0 + || s->d1->next_timeout.tv_usec != 0)) { + /* + * The timer is still running but we've received something that isn't + * handshake data - so the peer must have finished processing our + * last handshake flight. Stop the timer. + */ + dtls1_stop_timer(s); + } + /* we now have a packet which can be read and processed */ if (s->s3->change_cipher_spec /* set when we receive ChangeCipherSpec, @@ -456,6 +472,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, return -1; } SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); goto start; } @@ -465,6 +482,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, */ if (s->shutdown & SSL_RECEIVED_SHUTDOWN) { SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); s->rwstate = SSL_NOTHING; return 0; } @@ -491,8 +509,16 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, if (recvd_type != NULL) *recvd_type = SSL3_RECORD_get_type(rr); - if (len == 0) + if (len == 0) { + /* + * Mark a zero length record as read. This ensures multiple calls to + * SSL_read() with a zero length buffer will eventually cause + * SSL_pending() to report data as being available. + */ + if (SSL3_RECORD_get_length(rr) == 0) + SSL3_RECORD_set_read(rr); return 0; + } if (len > SSL3_RECORD_get_length(rr)) n = SSL3_RECORD_get_length(rr); @@ -500,12 +526,16 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, n = len; memcpy(buf, &(SSL3_RECORD_get_data(rr)[SSL3_RECORD_get_off(rr)]), n); - if (!peek) { + if (peek) { + if (SSL3_RECORD_get_length(rr) == 0) + SSL3_RECORD_set_read(rr); + } else { SSL3_RECORD_sub_length(rr, n); SSL3_RECORD_add_off(rr, n); if (SSL3_RECORD_get_length(rr) == 0) { s->rlayer.rstate = SSL_ST_READ_HEADER; SSL3_RECORD_set_off(rr, 0); + SSL3_RECORD_set_read(rr); } } #ifndef OPENSSL_NO_SCTP @@ -561,6 +591,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, if (alert_level == SSL3_AL_WARNING) { s->s3->warn_alert = alert_descr; + SSL3_RECORD_set_read(rr); s->rlayer.alert_count++; if (s->rlayer.alert_count == MAX_WARN_ALERT_COUNT) { @@ -598,6 +629,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, BIO_snprintf(tmp, sizeof tmp, "%d", alert_descr); ERR_add_error_data(2, "SSL alert number ", tmp); s->shutdown |= SSL_RECEIVED_SHUTDOWN; + SSL3_RECORD_set_read(rr); SSL_CTX_remove_session(s->session_ctx, s->session); return 0; } else { @@ -613,6 +645,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, * shutdown */ s->rwstate = SSL_NOTHING; SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); return 0; } @@ -622,6 +655,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, * are still missing, so just drop it. */ SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); goto start; } @@ -639,6 +673,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, if (SSL3_RECORD_get_epoch(rr) != s->rlayer.d->r_epoch || SSL3_RECORD_get_length(rr) < DTLS1_HM_HEADER_LENGTH) { SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); goto start; } @@ -660,6 +695,19 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, return -1; } SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); + if (!(s->mode & SSL_MODE_AUTO_RETRY)) { + if (SSL3_BUFFER_get_left(&s->rlayer.rbuf) == 0) { + /* no read-ahead left? */ + BIO *bio; + + s->rwstate = SSL_READING; + bio = SSL_get_rbio(s); + BIO_clear_retry_flags(bio); + BIO_set_retry_read(bio); + return -1; + } + } goto start; } diff --git a/ssl/record/rec_layer_s3.c b/ssl/record/rec_layer_s3.c index 0953d2b0..61010f4e 100644 --- a/ssl/record/rec_layer_s3.c +++ b/ssl/record/rec_layer_s3.c @@ -825,7 +825,6 @@ int do_ssl3_write(SSL *s, int type, const unsigned char *buf, thispkt = &pkt[j]; thiswr = &wr[j]; - SSL3_RECORD_set_type(thiswr, type); /* * In TLSv1.3, once encrypting, we always use application data for the * record type @@ -834,6 +833,8 @@ int do_ssl3_write(SSL *s, int type, const unsigned char *buf, rectype = SSL3_RT_APPLICATION_DATA; else rectype = type; + SSL3_RECORD_set_type(thiswr, rectype); + /* * Some servers hang if initial client hello is larger than 256 bytes * and record version number > TLS 1.0 @@ -843,6 +844,7 @@ int do_ssl3_write(SSL *s, int type, const unsigned char *buf, && TLS1_get_version(s) > TLS1_VERSION && s->hello_retry_request == SSL_HRR_NONE) version = TLS1_VERSION; + SSL3_RECORD_set_rec_version(thiswr, version); maxcomplen = pipelens[j]; if (s->compress != NULL) diff --git a/ssl/record/record_locl.h b/ssl/record/record_locl.h index c20f5fec..07fd7ab6 100644 --- a/ssl/record/record_locl.h +++ b/ssl/record/record_locl.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -80,6 +80,7 @@ int ssl3_release_write_buffer(SSL *s); #define SSL3_RECORD_get_type(r) ((r)->type) #define SSL3_RECORD_set_type(r, t) ((r)->type = (t)) +#define SSL3_RECORD_set_rec_version(r, v) ((r)->rec_version = (v)) #define SSL3_RECORD_get_length(r) ((r)->length) #define SSL3_RECORD_set_length(r, l) ((r)->length = (l)) #define SSL3_RECORD_add_length(r, l) ((r)->length += (l)) diff --git a/ssl/record/ssl3_record.c b/ssl/record/ssl3_record.c index fda918a9..ae510b2e 100644 --- a/ssl/record/ssl3_record.c +++ b/ssl/record/ssl3_record.c @@ -270,7 +270,8 @@ int ssl3_get_record(SSL *s) thisrr->rec_version = version; /* - * Lets check version. In TLSv1.3 we ignore this field. For the + * Lets check version. In TLSv1.3 we only check this field + * when encryption is occurring (see later check). For the * ServerHello after an HRR we haven't actually selected TLSv1.3 * yet, but we still treat it as TLSv1.3, so we must check for * that explicitly @@ -333,14 +334,19 @@ int ssl3_get_record(SSL *s) } } - if (SSL_IS_TLS13(s) - && s->enc_read_ctx != NULL - && thisrr->type != SSL3_RT_APPLICATION_DATA - && (thisrr->type != SSL3_RT_CHANGE_CIPHER_SPEC - || !SSL_IS_FIRST_HANDSHAKE(s))) { - SSLfatal(s, SSL_AD_UNEXPECTED_MESSAGE, - SSL_F_SSL3_GET_RECORD, SSL_R_BAD_RECORD_TYPE); - return -1; + if (SSL_IS_TLS13(s) && s->enc_read_ctx != NULL) { + if (thisrr->type != SSL3_RT_APPLICATION_DATA + && (thisrr->type != SSL3_RT_CHANGE_CIPHER_SPEC + || !SSL_IS_FIRST_HANDSHAKE(s))) { + SSLfatal(s, SSL_AD_UNEXPECTED_MESSAGE, + SSL_F_SSL3_GET_RECORD, SSL_R_BAD_RECORD_TYPE); + return -1; + } + if (thisrr->rec_version != TLS1_2_VERSION) { + SSLfatal(s, SSL_AD_DECODE_ERROR, SSL_F_SSL3_GET_RECORD, + SSL_R_WRONG_VERSION_NUMBER); + return -1; + } } if (thisrr->length > @@ -966,7 +972,7 @@ int tls1_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int sending) SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS1_ENC, ERR_R_INTERNAL_ERROR); return -1; - } else if (ssl_randbytes(s, recs[ctr].input, ivlen) <= 0) { + } else if (RAND_bytes(recs[ctr].input, ivlen) <= 0) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS1_ENC, ERR_R_INTERNAL_ERROR); return -1; @@ -1250,7 +1256,7 @@ int n_ssl3_mac(SSL *ssl, SSL3_RECORD *rec, unsigned char *md, int sending) || EVP_DigestUpdate(md_ctx, ssl3_pad_2, npad) <= 0 || EVP_DigestUpdate(md_ctx, md, md_size) <= 0 || EVP_DigestFinal_ex(md_ctx, md, &md_size_u) <= 0) { - EVP_MD_CTX_reset(md_ctx); + EVP_MD_CTX_free(md_ctx); return 0; } @@ -1291,8 +1297,10 @@ int tls1_mac(SSL *ssl, SSL3_RECORD *rec, unsigned char *md, int sending) mac_ctx = hash; } else { hmac = EVP_MD_CTX_new(); - if (hmac == NULL || !EVP_MD_CTX_copy(hmac, hash)) + if (hmac == NULL || !EVP_MD_CTX_copy(hmac, hash)) { + EVP_MD_CTX_free(hmac); return 0; + } mac_ctx = hmac; } @@ -1874,6 +1882,7 @@ int dtls1_get_record(SSL *s) p += 6; n2s(p, rr->length); + rr->read = 0; /* * Lets check the version. We tolerate alerts that don't have the exact @@ -1883,6 +1892,7 @@ int dtls1_get_record(SSL *s) if (version != s->version) { /* unexpected version, silently discard */ rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } @@ -1891,6 +1901,7 @@ int dtls1_get_record(SSL *s) if ((version & 0xff00) != (s->version & 0xff00)) { /* wrong version, silently discard record */ rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } @@ -1898,6 +1909,7 @@ int dtls1_get_record(SSL *s) if (rr->length > SSL3_RT_MAX_ENCRYPTED_LENGTH) { /* record too long, silently discard it */ rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } @@ -1907,6 +1919,7 @@ int dtls1_get_record(SSL *s) && rr->length > GET_MAX_FRAGMENT_LENGTH(s->session)) { /* record too long, silently discard it */ rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } @@ -1928,6 +1941,7 @@ int dtls1_get_record(SSL *s) return -1; } rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } @@ -1958,6 +1972,7 @@ int dtls1_get_record(SSL *s) */ if (!dtls1_record_replay_check(s, bitmap)) { rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); /* dump this record */ goto again; /* get another record */ } @@ -1966,8 +1981,10 @@ int dtls1_get_record(SSL *s) #endif /* just read a 0 length packet */ - if (rr->length == 0) + if (rr->length == 0) { + rr->read = 1; goto again; + } /* * If this record is from the next epoch (either HM or ALERT), and a @@ -1984,6 +2001,7 @@ int dtls1_get_record(SSL *s) } } rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } @@ -1994,6 +2012,7 @@ int dtls1_get_record(SSL *s) return -1; } rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); /* dump this record */ goto again; /* get another record */ } diff --git a/ssl/record/ssl3_record_tls13.c b/ssl/record/ssl3_record_tls13.c index f1e1667b..8822ca25 100644 --- a/ssl/record/ssl3_record_tls13.c +++ b/ssl/record/ssl3_record_tls13.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -25,13 +25,14 @@ int tls13_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int sending) { EVP_CIPHER_CTX *ctx; - unsigned char iv[EVP_MAX_IV_LENGTH]; - size_t ivlen, taglen, offset, loop; + unsigned char iv[EVP_MAX_IV_LENGTH], recheader[SSL3_RT_HEADER_LENGTH]; + size_t ivlen, taglen, offset, loop, hdrlen; unsigned char *staticiv; unsigned char *seq; int lenu, lenf; SSL3_RECORD *rec = &recs[0]; uint32_t alg_enc; + WPACKET wpkt; if (n_recs != 1) { /* Should not happen */ @@ -143,7 +144,31 @@ int tls13_enc(SSL *s, SSL3_RECORD *recs, size_t n_recs, int sending) if (EVP_CipherInit_ex(ctx, NULL, NULL, NULL, iv, sending) <= 0 || (!sending && EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_SET_TAG, taglen, - rec->data + rec->length) <= 0) + rec->data + rec->length) <= 0)) { + return -1; + } + + /* Set up the AAD */ + if (!WPACKET_init_static_len(&wpkt, recheader, sizeof(recheader), 0) + || !WPACKET_put_bytes_u8(&wpkt, rec->type) + || !WPACKET_put_bytes_u16(&wpkt, rec->rec_version) + || !WPACKET_put_bytes_u16(&wpkt, rec->length + taglen) + || !WPACKET_get_total_written(&wpkt, &hdrlen) + || hdrlen != SSL3_RT_HEADER_LENGTH + || !WPACKET_finish(&wpkt)) { + WPACKET_cleanup(&wpkt); + return -1; + } + + /* + * For CCM we must explicitly set the total plaintext length before we add + * any AAD. + */ + if (((alg_enc & SSL_AESCCM) != 0 + && EVP_CipherUpdate(ctx, NULL, &lenu, NULL, + (unsigned int)rec->length) <= 0) + || EVP_CipherUpdate(ctx, NULL, &lenu, recheader, + sizeof(recheader)) <= 0 || EVP_CipherUpdate(ctx, rec->data, &lenu, rec->input, (unsigned int)rec->length) <= 0 || EVP_CipherFinal_ex(ctx, rec->data + lenu, &lenf) <= 0 diff --git a/ssl/s3_enc.c b/ssl/s3_enc.c index f775f26b..6d78aa1a 100644 --- a/ssl/s3_enc.c +++ b/ssl/s3_enc.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use @@ -155,6 +155,7 @@ int ssl3_change_cipher_state(SSL *s, int which) RECORD_LAYER_reset_read_sequence(&s->rlayer); mac_secret = &(s->s3->read_mac_secret[0]); } else { + s->statem.invalid_enc_write_ctx = 1; if (s->enc_write_ctx != NULL) { reuse_dd = 1; } else if ((s->enc_write_ctx = EVP_CIPHER_CTX_new()) == NULL) { @@ -167,7 +168,6 @@ int ssl3_change_cipher_state(SSL *s, int which) */ EVP_CIPHER_CTX_reset(s->enc_write_ctx); } - EVP_CIPHER_CTX_ctrl(s->enc_write_ctx, EVP_CTRL_SET_DRBG, 0, s->drbg); dd = s->enc_write_ctx; if (ssl_replace_hash(&s->write_hash, m) == NULL) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_SSL3_CHANGE_CIPHER_STATE, @@ -238,6 +238,7 @@ int ssl3_change_cipher_state(SSL *s, int which) goto err; } + s->statem.invalid_enc_write_ctx = 0; OPENSSL_cleanse(exp_key, sizeof(exp_key)); OPENSSL_cleanse(exp_iv, sizeof(exp_iv)); return 1; diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c index b77bb58e..354769b0 100644 --- a/ssl/s3_lib.c +++ b/ssl/s3_lib.c @@ -18,6 +18,7 @@ #include #include "internal/cryptlib.h" +#define TLS13_NUM_CIPHERS OSSL_NELEM(tls13_ciphers) #define SSL3_NUM_CIPHERS OSSL_NELEM(ssl3_ciphers) #define SSL3_NUM_SCSVS OSSL_NELEM(ssl3_scsvs) @@ -29,6 +30,90 @@ const unsigned char tls12downgrade[] = { 0x44, 0x4f, 0x57, 0x4e, 0x47, 0x52, 0x44, 0x01 }; +/* The list of available TLSv1.3 ciphers */ +static SSL_CIPHER tls13_ciphers[] = { + { + 1, + TLS1_3_RFC_AES_128_GCM_SHA256, + TLS1_3_RFC_AES_128_GCM_SHA256, + TLS1_3_CK_AES_128_GCM_SHA256, + SSL_kANY, + SSL_aANY, + SSL_AES128GCM, + SSL_AEAD, + TLS1_3_VERSION, TLS1_3_VERSION, + 0, 0, + SSL_HIGH, + SSL_HANDSHAKE_MAC_SHA256, + 128, + 128, + }, { + 1, + TLS1_3_RFC_AES_256_GCM_SHA384, + TLS1_3_RFC_AES_256_GCM_SHA384, + TLS1_3_CK_AES_256_GCM_SHA384, + SSL_kANY, + SSL_aANY, + SSL_AES256GCM, + SSL_AEAD, + TLS1_3_VERSION, TLS1_3_VERSION, + 0, 0, + SSL_HIGH, + SSL_HANDSHAKE_MAC_SHA384, + 256, + 256, + }, +#if !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305) + { + 1, + TLS1_3_RFC_CHACHA20_POLY1305_SHA256, + TLS1_3_RFC_CHACHA20_POLY1305_SHA256, + TLS1_3_CK_CHACHA20_POLY1305_SHA256, + SSL_kANY, + SSL_aANY, + SSL_CHACHA20POLY1305, + SSL_AEAD, + TLS1_3_VERSION, TLS1_3_VERSION, + 0, 0, + SSL_HIGH, + SSL_HANDSHAKE_MAC_SHA256, + 256, + 256, + }, +#endif + { + 1, + TLS1_3_RFC_AES_128_CCM_SHA256, + TLS1_3_RFC_AES_128_CCM_SHA256, + TLS1_3_CK_AES_128_CCM_SHA256, + SSL_kANY, + SSL_aANY, + SSL_AES128CCM, + SSL_AEAD, + TLS1_3_VERSION, TLS1_3_VERSION, + 0, 0, + SSL_NOT_DEFAULT | SSL_HIGH, + SSL_HANDSHAKE_MAC_SHA256, + 128, + 128, + }, { + 1, + TLS1_3_RFC_AES_128_CCM_8_SHA256, + TLS1_3_RFC_AES_128_CCM_8_SHA256, + TLS1_3_CK_AES_128_CCM_8_SHA256, + SSL_kANY, + SSL_aANY, + SSL_AES128CCM8, + SSL_AEAD, + TLS1_3_VERSION, TLS1_3_VERSION, + 0, 0, + SSL_NOT_DEFAULT | SSL_HIGH, + SSL_HANDSHAKE_MAC_SHA256, + 128, + 128, + } +}; + /* * The list of available ciphers, mostly organized into the following * groups: @@ -858,88 +943,6 @@ static SSL_CIPHER ssl3_ciphers[] = { 256, 256, }, - { - 1, - TLS1_3_TXT_AES_128_GCM_SHA256, - TLS1_3_RFC_AES_128_GCM_SHA256, - TLS1_3_CK_AES_128_GCM_SHA256, - 0, 0, - SSL_AES128GCM, - SSL_AEAD, - TLS1_3_VERSION, TLS1_3_VERSION, - SSL_kANY, - SSL_aANY, - SSL_HIGH, - SSL_HANDSHAKE_MAC_SHA256, - 128, - 128, - }, - { - 1, - TLS1_3_TXT_AES_256_GCM_SHA384, - TLS1_3_RFC_AES_256_GCM_SHA384, - TLS1_3_CK_AES_256_GCM_SHA384, - SSL_kANY, - SSL_aANY, - SSL_AES256GCM, - SSL_AEAD, - TLS1_3_VERSION, TLS1_3_VERSION, - 0, 0, - SSL_HIGH, - SSL_HANDSHAKE_MAC_SHA384, - 256, - 256, - }, -#if !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305) - { - 1, - TLS1_3_TXT_CHACHA20_POLY1305_SHA256, - TLS1_3_RFC_CHACHA20_POLY1305_SHA256, - TLS1_3_CK_CHACHA20_POLY1305_SHA256, - SSL_kANY, - SSL_aANY, - SSL_CHACHA20POLY1305, - SSL_AEAD, - TLS1_3_VERSION, TLS1_3_VERSION, - 0, 0, - SSL_HIGH, - SSL_HANDSHAKE_MAC_SHA256, - 256, - 256, - }, -#endif - { - 1, - TLS1_3_TXT_AES_128_CCM_SHA256, - TLS1_3_RFC_AES_128_CCM_SHA256, - TLS1_3_CK_AES_128_CCM_SHA256, - SSL_kANY, - SSL_aANY, - SSL_AES128CCM, - SSL_AEAD, - TLS1_3_VERSION, TLS1_3_VERSION, - 0, 0, - SSL_NOT_DEFAULT | SSL_HIGH, - SSL_HANDSHAKE_MAC_SHA256, - 128, - 128, - }, - { - 1, - TLS1_3_TXT_AES_128_CCM_8_SHA256, - TLS1_3_RFC_AES_128_CCM_8_SHA256, - TLS1_3_CK_AES_128_CCM_8_SHA256, - SSL_kANY, - SSL_aANY, - SSL_AES128CCM8, - SSL_AEAD, - TLS1_3_VERSION, TLS1_3_VERSION, - 0, 0, - SSL_NOT_DEFAULT | SSL_HIGH, - SSL_HANDSHAKE_MAC_SHA256, - 128, - 128, - }, { 1, TLS1_TXT_ECDHE_ECDSA_WITH_NULL_SHA, @@ -3207,6 +3210,8 @@ static int cipher_compare(const void *a, const void *b) void ssl_sort_cipher_list(void) { + qsort(tls13_ciphers, TLS13_NUM_CIPHERS, sizeof(tls13_ciphers[0]), + cipher_compare); qsort(ssl3_ciphers, SSL3_NUM_CIPHERS, sizeof(ssl3_ciphers[0]), cipher_compare); qsort(ssl3_scsvs, SSL3_NUM_SCSVS, sizeof(ssl3_scsvs[0]), cipher_compare); @@ -3793,8 +3798,8 @@ long ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg) { unsigned char *keys = parg; long tick_keylen = (sizeof(ctx->ext.tick_key_name) + - sizeof(ctx->ext.tick_hmac_key) + - sizeof(ctx->ext.tick_aes_key)); + sizeof(ctx->ext.secure->tick_hmac_key) + + sizeof(ctx->ext.secure->tick_aes_key)); if (keys == NULL) return tick_keylen; if (larg != tick_keylen) { @@ -3804,23 +3809,23 @@ long ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg) if (cmd == SSL_CTRL_SET_TLSEXT_TICKET_KEYS) { memcpy(ctx->ext.tick_key_name, keys, sizeof(ctx->ext.tick_key_name)); - memcpy(ctx->ext.tick_hmac_key, + memcpy(ctx->ext.secure->tick_hmac_key, keys + sizeof(ctx->ext.tick_key_name), - sizeof(ctx->ext.tick_hmac_key)); - memcpy(ctx->ext.tick_aes_key, + sizeof(ctx->ext.secure->tick_hmac_key)); + memcpy(ctx->ext.secure->tick_aes_key, keys + sizeof(ctx->ext.tick_key_name) + - sizeof(ctx->ext.tick_hmac_key), - sizeof(ctx->ext.tick_aes_key)); + sizeof(ctx->ext.secure->tick_hmac_key), + sizeof(ctx->ext.secure->tick_aes_key)); } else { memcpy(keys, ctx->ext.tick_key_name, sizeof(ctx->ext.tick_key_name)); memcpy(keys + sizeof(ctx->ext.tick_key_name), - ctx->ext.tick_hmac_key, - sizeof(ctx->ext.tick_hmac_key)); + ctx->ext.secure->tick_hmac_key, + sizeof(ctx->ext.secure->tick_hmac_key)); memcpy(keys + sizeof(ctx->ext.tick_key_name) + - sizeof(ctx->ext.tick_hmac_key), - ctx->ext.tick_aes_key, - sizeof(ctx->ext.tick_aes_key)); + sizeof(ctx->ext.secure->tick_hmac_key), + ctx->ext.secure->tick_aes_key, + sizeof(ctx->ext.secure->tick_aes_key)); } return 1; } @@ -4027,6 +4032,9 @@ const SSL_CIPHER *ssl3_get_cipher_by_id(uint32_t id) const SSL_CIPHER *cp; c.id = id; + cp = OBJ_bsearch_ssl_cipher_id(&c, tls13_ciphers, TLS13_NUM_CIPHERS); + if (cp != NULL) + return cp; cp = OBJ_bsearch_ssl_cipher_id(&c, ssl3_ciphers, SSL3_NUM_CIPHERS); if (cp != NULL) return cp; @@ -4035,17 +4043,19 @@ const SSL_CIPHER *ssl3_get_cipher_by_id(uint32_t id) const SSL_CIPHER *ssl3_get_cipher_by_std_name(const char *stdname) { - SSL_CIPHER *c = NULL; - SSL_CIPHER *tbl = ssl3_ciphers; - size_t i; + SSL_CIPHER *c = NULL, *tbl; + SSL_CIPHER *alltabs[] = {tls13_ciphers, ssl3_ciphers}; + size_t i, j, tblsize[] = {TLS13_NUM_CIPHERS, SSL3_NUM_CIPHERS}; /* this is not efficient, necessary to optimize this? */ - for (i = 0; i < SSL3_NUM_CIPHERS; i++, tbl++) { - if (tbl->stdname == NULL) - continue; - if (strcmp(stdname, tbl->stdname) == 0) { - c = tbl; - break; + for (j = 0; j < OSSL_NELEM(alltabs); j++) { + for (i = 0, tbl = alltabs[j]; i < tblsize[j]; i++, tbl++) { + if (tbl->stdname == NULL) + continue; + if (strcmp(stdname, tbl->stdname) == 0) { + c = tbl; + break; + } } } if (c == NULL) { @@ -4085,17 +4095,6 @@ int ssl3_put_cipher_by_char(const SSL_CIPHER *c, WPACKET *pkt, size_t *len) return 1; } -struct ssl_cipher_preference_list_st* ssl_get_cipher_preferences(SSL *s) -{ - if (s->cipher_list != NULL) - return (s->cipher_list); - - if ((s->ctx != NULL) && (s->ctx->cipher_list != NULL)) - return (s->ctx->cipher_list); - - return NULL; -} - /* * ssl3_choose_cipher - choose a cipher from those offered by the client * @s: SSL connection @@ -4105,23 +4104,16 @@ struct ssl_cipher_preference_list_st* ssl_get_cipher_preferences(SSL *s) * Returns the selected cipher or NULL when no common ciphers. */ const SSL_CIPHER *ssl3_choose_cipher(SSL *s, STACK_OF(SSL_CIPHER) *clnt, - struct ssl_cipher_preference_list_st - *server_pref) + STACK_OF(SSL_CIPHER) *srvr) { const SSL_CIPHER *c, *ret = NULL; - STACK_OF(SSL_CIPHER) *srvr = server_pref->ciphers, *prio, *allow; - int i, ii, ok, safari_ec = 0; + STACK_OF(SSL_CIPHER) *prio, *allow; + int i, ii, ok, prefer_sha256 = 0; unsigned long alg_k = 0, alg_a = 0, mask_k = 0, mask_a = 0; - - /* in_group_flags will either be NULL, or will point to an array of - * bytes which indicate equal-preference groups in the |prio| stack. - * See the comment about |in_group_flags| in the - * |ssl_cipher_preference_list_st| struct. */ - const uint8_t *in_group_flags; - - /* group_min contains the minimal index so far found in a group, or -1 - * if no such value exists yet. */ - int group_min = -1; + const EVP_MD *mdsha256 = EVP_sha256(); +#ifndef OPENSSL_NO_CHACHA + STACK_OF(SSL_CIPHER) *prio_chacha = NULL; +#endif /* Let's see which ciphers we can support */ @@ -4148,17 +4140,77 @@ const SSL_CIPHER *ssl3_choose_cipher(SSL *s, STACK_OF(SSL_CIPHER) *clnt, #endif /* SUITE-B takes precedence over server preference and ChaCha priortiy */ - if (s->options & SSL_OP_CIPHER_SERVER_PREFERENCE || tls1_suiteb(s)) { + if (tls1_suiteb(s)) { prio = srvr; - in_group_flags = server_pref->in_group_flags; allow = clnt; + } else if (s->options & SSL_OP_CIPHER_SERVER_PREFERENCE) { + prio = srvr; + allow = clnt; +#ifndef OPENSSL_NO_CHACHA + /* If ChaCha20 is at the top of the client preference list, + and there are ChaCha20 ciphers in the server list, then + temporarily prioritize all ChaCha20 ciphers in the servers list. */ + if (s->options & SSL_OP_PRIORITIZE_CHACHA && sk_SSL_CIPHER_num(clnt) > 0) { + c = sk_SSL_CIPHER_value(clnt, 0); + if (c->algorithm_enc == SSL_CHACHA20POLY1305) { + /* ChaCha20 is client preferred, check server... */ + int num = sk_SSL_CIPHER_num(srvr); + int found = 0; + for (i = 0; i < num; i++) { + c = sk_SSL_CIPHER_value(srvr, i); + if (c->algorithm_enc == SSL_CHACHA20POLY1305) { + found = 1; + break; + } + } + if (found) { + prio_chacha = sk_SSL_CIPHER_new_reserve(NULL, num); + /* if reserve fails, then there's likely a memory issue */ + if (prio_chacha != NULL) { + /* Put all ChaCha20 at the top, starting with the one we just found */ + sk_SSL_CIPHER_push(prio_chacha, c); + for (i++; i < num; i++) { + c = sk_SSL_CIPHER_value(srvr, i); + if (c->algorithm_enc == SSL_CHACHA20POLY1305) + sk_SSL_CIPHER_push(prio_chacha, c); + } + /* Pull in the rest */ + for (i = 0; i < num; i++) { + c = sk_SSL_CIPHER_value(srvr, i); + if (c->algorithm_enc != SSL_CHACHA20POLY1305) + sk_SSL_CIPHER_push(prio_chacha, c); + } + prio = prio_chacha; + } + } + } + } +# endif } else { prio = clnt; - in_group_flags = NULL; allow = srvr; } - if (!SSL_IS_TLS13(s)) { + if (SSL_IS_TLS13(s)) { +#ifndef OPENSSL_NO_PSK + int j; + + /* + * If we allow "old" style PSK callbacks, and we have no certificate (so + * we're not going to succeed without a PSK anyway), and we're in + * TLSv1.3 then the default hash for a PSK is SHA-256 (as per the + * TLSv1.3 spec). Therefore we should prioritise ciphersuites using + * that. + */ + if (s->psk_server_callback != NULL) { + for (j = 0; j < SSL_PKEY_NUM && !ssl_has_cert(s, j); j++); + if (j == SSL_PKEY_NUM) { + /* There are no certificates */ + prefer_sha256 = 1; + } + } +#endif + } else { tls1_set_cert_validity(s); ssl_set_masks(s); } @@ -4166,16 +4218,14 @@ const SSL_CIPHER *ssl3_choose_cipher(SSL *s, STACK_OF(SSL_CIPHER) *clnt, for (i = 0; i < sk_SSL_CIPHER_num(prio); i++) { c = sk_SSL_CIPHER_value(prio, i); - ok = 1; - /* Skip ciphers not supported by the protocol version */ if (!SSL_IS_DTLS(s) && ((s->version < c->min_tls) || (s->version > c->max_tls))) - ok = 0; + continue; if (SSL_IS_DTLS(s) && (DTLS_VERSION_LT(s->version, c->min_dtls) || DTLS_VERSION_GT(s->version, c->max_dtls))) - ok = 0; + continue; /* * Since TLS 1.3 ciphersuites can be used with any auth or @@ -4197,10 +4247,10 @@ const SSL_CIPHER *ssl3_choose_cipher(SSL *s, STACK_OF(SSL_CIPHER) *clnt, #ifndef OPENSSL_NO_PSK /* with PSK there must be server callback set */ if ((alg_k & SSL_PSK) && s->psk_server_callback == NULL) - ok = 0; + continue; #endif /* OPENSSL_NO_PSK */ - ok = ok && (alg_k & mask_k) && (alg_a & mask_a); + ok = (alg_k & mask_k) && (alg_a & mask_a); #ifdef CIPHER_DEBUG fprintf(stderr, "%d:[%08lX:%08lX:%08lX:%08lX]%p:%s\n", ok, alg_k, alg_a, mask_k, mask_a, (void *)c, c->name); @@ -4217,14 +4267,6 @@ const SSL_CIPHER *ssl3_choose_cipher(SSL *s, STACK_OF(SSL_CIPHER) *clnt, if (!ok) continue; - - safari_ec = 0; -#if !defined(OPENSSL_NO_EC) - if ((alg_k & SSL_kECDHE) && (alg_a & SSL_aECDSA)) { - if (s->s3->is_probably_safari) - safari_ec = 1; - } -#endif } ii = sk_SSL_CIPHER_find(allow, c); if (ii >= 0) { @@ -4232,38 +4274,32 @@ const SSL_CIPHER *ssl3_choose_cipher(SSL *s, STACK_OF(SSL_CIPHER) *clnt, if (!ssl_security(s, SSL_SECOP_CIPHER_SHARED, c->strength_bits, 0, (void *)c)) continue; - - if (in_group_flags != NULL && in_group_flags[i] == 1) { - /* This element of |prio| is in a group. Update - * the minimum index found so far and continue - * looking. */ - if (group_min == -1 || group_min > ii) - group_min = ii; - } else { - if (group_min != -1 && group_min < ii) - ii = group_min; - if (safari_ec) { - if (!ret) - ret = sk_SSL_CIPHER_value(allow, ii); - continue; - } - ret = sk_SSL_CIPHER_value(allow, ii); - break; - } - } - - if (in_group_flags != NULL && !in_group_flags[i] && group_min != -1) { - /* We are about to leave a group, but we found a match - * in it, so that's our answer. */ - if (safari_ec) { +#if !defined(OPENSSL_NO_EC) + if ((alg_k & SSL_kECDHE) && (alg_a & SSL_aECDSA) + && s->s3->is_probably_safari) { if (!ret) - ret = sk_SSL_CIPHER_value(allow, group_min); + ret = sk_SSL_CIPHER_value(allow, ii); continue; } - ret = sk_SSL_CIPHER_value(allow, group_min); +#endif + if (prefer_sha256) { + const SSL_CIPHER *tmp = sk_SSL_CIPHER_value(allow, ii); + + if (ssl_md(tmp->algorithm2) == mdsha256) { + ret = tmp; + break; + } + if (ret == NULL) + ret = tmp; + continue; + } + ret = sk_SSL_CIPHER_value(allow, ii); break; } } +#ifndef OPENSSL_NO_CHACHA + sk_SSL_CIPHER_free(prio_chacha); +#endif return ret; } @@ -4519,12 +4555,12 @@ int ssl_fill_hello_random(SSL *s, int server, unsigned char *result, size_t len, unsigned char *p = result; l2n(Time, p); - ret = ssl_randbytes(s, p, len - 4); + ret = RAND_bytes(p, len - 4); } else { - ret = ssl_randbytes(s, result, len); + ret = RAND_bytes(result, len); } #ifndef OPENSSL_NO_TLS13DOWNGRADE - if (ret) { + if (ret > 0) { if (!ossl_assert(sizeof(tls11downgrade) < len) || !ossl_assert(sizeof(tls12downgrade) < len)) return 0; diff --git a/ssl/ssl_asn1.c b/ssl/ssl_asn1.c index 7d39ba15..1da1c828 100644 --- a/ssl/ssl_asn1.c +++ b/ssl/ssl_asn1.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use diff --git a/ssl/ssl_cert.c b/ssl/ssl_cert.c index 6078f9f4..b2b34276 100644 --- a/ssl/ssl_cert.c +++ b/ssl/ssl_cert.c @@ -227,7 +227,6 @@ void ssl_cert_free(CERT *c) if (c == NULL) return; - CRYPTO_DOWN_REF(&c->references, &i, c->lock); REF_PRINT_COUNT("CERT", c); if (i > 0) diff --git a/ssl/ssl_cert_table.h b/ssl/ssl_cert_table.h index 1376441a..0c47241c 100644 --- a/ssl/ssl_cert_table.h +++ b/ssl/ssl_cert_table.h @@ -1,5 +1,5 @@ /* - * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c index 8db2ffe0..9011e42f 100644 --- a/ssl/ssl_ciph.c +++ b/ssl/ssl_ciph.c @@ -15,6 +15,7 @@ #include #include #include +#include #include "internal/nelem.h" #include "ssl_locl.h" #include "internal/thread_once.h" @@ -189,7 +190,6 @@ typedef struct cipher_order_st { const SSL_CIPHER *cipher; int active; int dead; - int in_group; struct cipher_order_st *next, *prev; } CIPHER_ORDER; @@ -682,7 +682,6 @@ static void ssl_cipher_collect_ciphers(const SSL_METHOD *ssl_method, co_list[co_list_num].next = NULL; co_list[co_list_num].prev = NULL; co_list[co_list_num].active = 0; - co_list[co_list_num].in_group = 0; co_list_num++; } @@ -776,8 +775,8 @@ static void ssl_cipher_apply_rule(uint32_t cipher_id, uint32_t alg_mkey, uint32_t alg_auth, uint32_t alg_enc, uint32_t alg_mac, int min_tls, uint32_t algo_strength, int rule, - int32_t strength_bits, int in_group, - CIPHER_ORDER **head_p, CIPHER_ORDER **tail_p) + int32_t strength_bits, CIPHER_ORDER **head_p, + CIPHER_ORDER **tail_p) { CIPHER_ORDER *head, *tail, *curr, *next, *last; const SSL_CIPHER *cp; @@ -785,9 +784,9 @@ static void ssl_cipher_apply_rule(uint32_t cipher_id, uint32_t alg_mkey, #ifdef CIPHER_DEBUG fprintf(stderr, - "Applying rule %d with %08x/%08x/%08x/%08x/%08x %08x (%d) g:%d\n", + "Applying rule %d with %08x/%08x/%08x/%08x/%08x %08x (%d)\n", rule, alg_mkey, alg_auth, alg_enc, alg_mac, min_tls, - algo_strength, strength_bits, in_group); + algo_strength, strength_bits); #endif if (rule == CIPHER_DEL || rule == CIPHER_BUMP) @@ -864,7 +863,6 @@ static void ssl_cipher_apply_rule(uint32_t cipher_id, uint32_t alg_mkey, if (!curr->active) { ll_append_tail(&head, curr, &tail); curr->active = 1; - curr->in_group = in_group; } } /* Move the added cipher to this location */ @@ -872,7 +870,6 @@ static void ssl_cipher_apply_rule(uint32_t cipher_id, uint32_t alg_mkey, /* reverse == 0 */ if (curr->active) { ll_append_tail(&head, curr, &tail); - curr->in_group = 0; } } else if (rule == CIPHER_DEL) { /* reverse == 1 */ @@ -884,7 +881,6 @@ static void ssl_cipher_apply_rule(uint32_t cipher_id, uint32_t alg_mkey, */ ll_append_head(&head, curr, &tail); curr->active = 0; - curr->in_group = 0; } } else if (rule == CIPHER_BUMP) { if (curr->active) @@ -952,8 +948,8 @@ static int ssl_cipher_strength_sort(CIPHER_ORDER **head_p, */ for (i = max_strength_bits; i >= 0; i--) if (number_uses[i] > 0) - ssl_cipher_apply_rule(0, 0, 0, 0, 0, 0, 0, CIPHER_ORD, i, 0, - head_p, tail_p); + ssl_cipher_apply_rule(0, 0, 0, 0, 0, 0, 0, CIPHER_ORD, i, head_p, + tail_p); OPENSSL_free(number_uses); return 1; @@ -967,7 +963,7 @@ static int ssl_cipher_process_rulestr(const char *rule_str, uint32_t alg_mkey, alg_auth, alg_enc, alg_mac, algo_strength; int min_tls; const char *l, *buf; - int j, multi, found, rule, retval, ok, buflen, in_group = 0, has_group = 0; + int j, multi, found, rule, retval, ok, buflen; uint32_t cipher_id = 0; char ch; @@ -978,66 +974,18 @@ static int ssl_cipher_process_rulestr(const char *rule_str, if (ch == '\0') break; /* done */ - if (in_group) { - if (ch == ']') { - if (!in_group) { - SSLerr(SSL_F_SSL_CIPHER_PROCESS_RULESTR, - SSL_R_UNEXPECTED_GROUP_CLOSE); - retval = found = in_group = 0; - break; - } - if (*tail_p) - (*tail_p)->in_group = 0; - in_group = 0; - l++; - continue; - } - if (ch == '|') { - rule = CIPHER_ADD; - l++; - continue; - } else if (!(ch >= 'a' && ch <= 'z') - && !(ch >= 'A' && ch <= 'Z') - && !(ch >= '0' && ch <= '9')) { - SSLerr(SSL_F_SSL_CIPHER_PROCESS_RULESTR, - SSL_R_UNEXPECTED_OPERATOR_IN_GROUP); - retval = found = in_group = 0; - break; - } else { - rule = CIPHER_ADD; - } - } else if (ch == '-') { + if (ch == '-') { rule = CIPHER_DEL; l++; } else if (ch == '+') { rule = CIPHER_ORD; l++; - } else if (ch == '!' && has_group) { - SSLerr(SSL_F_SSL_CIPHER_PROCESS_RULESTR, - SSL_R_MIXED_SPECIAL_OPERATOR_WITH_GROUPS); - retval = found = in_group = 0; - break; } else if (ch == '!') { rule = CIPHER_KILL; l++; - } else if (ch == '@' && has_group) { - SSLerr(SSL_F_SSL_CIPHER_PROCESS_RULESTR, - SSL_R_MIXED_SPECIAL_OPERATOR_WITH_GROUPS); - retval = found = in_group = 0; - break; } else if (ch == '@') { rule = CIPHER_SPECIAL; l++; - } else if (ch == '[') { - if (in_group) { - SSLerr(SSL_F_SSL_CIPHER_PROCESS_RULESTR, SSL_R_NESTED_GROUP); - retval = found = in_group = 0; - break; - } - in_group = 1; - has_group = 1; - l++; - continue; } else { rule = CIPHER_ADD; } @@ -1079,7 +1027,7 @@ static int ssl_cipher_process_rulestr(const char *rule_str, * alphanumeric, so we call this an error. */ SSLerr(SSL_F_SSL_CIPHER_PROCESS_RULESTR, SSL_R_INVALID_COMMAND); - retval = found = in_group = 0; + retval = found = 0; l++; break; } @@ -1258,8 +1206,8 @@ static int ssl_cipher_process_rulestr(const char *rule_str, } else if (found) { ssl_cipher_apply_rule(cipher_id, alg_mkey, alg_auth, alg_enc, alg_mac, - min_tls, algo_strength, rule, -1, in_group, - head_p, tail_p); + min_tls, algo_strength, rule, -1, head_p, + tail_p); } else { while ((*l != '\0') && !ITEM_SEP(*l)) l++; @@ -1268,11 +1216,6 @@ static int ssl_cipher_process_rulestr(const char *rule_str, break; /* done */ } - if (in_group) { - SSLerr(SSL_F_SSL_CIPHER_PROCESS_RULESTR, SSL_R_INVALID_COMMAND); - retval = 0; - } - return retval; } @@ -1332,19 +1275,144 @@ static int check_suiteb_cipher_list(const SSL_METHOD *meth, CERT *c, } #endif -STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, - struct ssl_cipher_preference_list_st **cipher_list, - STACK_OF(SSL_CIPHER) **cipher_list_by_id, const char *rule_str, CERT *c) +static int ciphersuite_cb(const char *elem, int len, void *arg) { - int ok, num_of_ciphers, num_of_alias_max, num_of_group_aliases; + STACK_OF(SSL_CIPHER) *ciphersuites = (STACK_OF(SSL_CIPHER) *)arg; + const SSL_CIPHER *cipher; + /* Arbitrary sized temp buffer for the cipher name. Should be big enough */ + char name[80]; + + if (len > (int)(sizeof(name) - 1)) { + SSLerr(SSL_F_CIPHERSUITE_CB, SSL_R_NO_CIPHER_MATCH); + return 0; + } + + memcpy(name, elem, len); + name[len] = '\0'; + + cipher = ssl3_get_cipher_by_std_name(name); + if (cipher == NULL) { + SSLerr(SSL_F_CIPHERSUITE_CB, SSL_R_NO_CIPHER_MATCH); + return 0; + } + + if (!sk_SSL_CIPHER_push(ciphersuites, cipher)) { + SSLerr(SSL_F_CIPHERSUITE_CB, ERR_R_INTERNAL_ERROR); + return 0; + } + + return 1; +} + +int set_ciphersuites(STACK_OF(SSL_CIPHER) **currciphers, const char *str) +{ + STACK_OF(SSL_CIPHER) *newciphers = sk_SSL_CIPHER_new_null(); + + if (newciphers == NULL) + return 0; + + /* Parse the list. We explicitly allow an empty list */ + if (*str != '\0' + && !CONF_parse_list(str, ':', 1, ciphersuite_cb, newciphers)) { + sk_SSL_CIPHER_free(newciphers); + return 0; + } + sk_SSL_CIPHER_free(*currciphers); + *currciphers = newciphers; + + return 1; +} + +static int update_cipher_list_by_id(STACK_OF(SSL_CIPHER) **cipher_list_by_id, + STACK_OF(SSL_CIPHER) *cipherstack) +{ + STACK_OF(SSL_CIPHER) *tmp_cipher_list = sk_SSL_CIPHER_dup(cipherstack); + + if (tmp_cipher_list == NULL) { + return 0; + } + + sk_SSL_CIPHER_free(*cipher_list_by_id); + *cipher_list_by_id = tmp_cipher_list; + + (void)sk_SSL_CIPHER_set_cmp_func(*cipher_list_by_id, ssl_cipher_ptr_id_cmp); + sk_SSL_CIPHER_sort(*cipher_list_by_id); + + return 1; +} + +static int update_cipher_list(STACK_OF(SSL_CIPHER) **cipher_list, + STACK_OF(SSL_CIPHER) **cipher_list_by_id, + STACK_OF(SSL_CIPHER) *tls13_ciphersuites) +{ + int i; + STACK_OF(SSL_CIPHER) *tmp_cipher_list = sk_SSL_CIPHER_dup(*cipher_list); + + if (tmp_cipher_list == NULL) + return 0; + + /* + * Delete any existing TLSv1.3 ciphersuites. These are always first in the + * list. + */ + while (sk_SSL_CIPHER_num(tmp_cipher_list) > 0 + && sk_SSL_CIPHER_value(tmp_cipher_list, 0)->min_tls + == TLS1_3_VERSION) + sk_SSL_CIPHER_delete(tmp_cipher_list, 0); + + /* Insert the new TLSv1.3 ciphersuites */ + for (i = 0; i < sk_SSL_CIPHER_num(tls13_ciphersuites); i++) + sk_SSL_CIPHER_insert(tmp_cipher_list, + sk_SSL_CIPHER_value(tls13_ciphersuites, i), i); + + if (!update_cipher_list_by_id(cipher_list_by_id, tmp_cipher_list)) + return 0; + + sk_SSL_CIPHER_free(*cipher_list); + *cipher_list = tmp_cipher_list; + + return 1; +} + +int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str) +{ + int ret = set_ciphersuites(&(ctx->tls13_ciphersuites), str); + + if (ret && ctx->cipher_list != NULL) { + /* We already have a cipher_list, so we need to update it */ + return update_cipher_list(&ctx->cipher_list, &ctx->cipher_list_by_id, + ctx->tls13_ciphersuites); + } + + return ret; +} + +int SSL_set_ciphersuites(SSL *s, const char *str) +{ + int ret = set_ciphersuites(&(s->tls13_ciphersuites), str); + + if (ret && s->cipher_list != NULL) { + /* We already have a cipher_list, so we need to update it */ + return update_cipher_list(&s->cipher_list, &s->cipher_list_by_id, + s->tls13_ciphersuites); + } + + return ret; +} + +STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, + STACK_OF(SSL_CIPHER) *tls13_ciphersuites, + STACK_OF(SSL_CIPHER) **cipher_list, + STACK_OF(SSL_CIPHER) **cipher_list_by_id, + const char *rule_str, + CERT *c) +{ + int ok, num_of_ciphers, num_of_alias_max, num_of_group_aliases, i; uint32_t disabled_mkey, disabled_auth, disabled_enc, disabled_mac; - STACK_OF(SSL_CIPHER) *cipherstack = NULL, *tmp_cipher_list = NULL; + STACK_OF(SSL_CIPHER) *cipherstack; const char *rule_p; CIPHER_ORDER *co_list = NULL, *head = NULL, *tail = NULL, *curr; const SSL_CIPHER **ca_list = NULL; - uint8_t *in_group_flags = NULL; - unsigned int num_in_group_flags = 0; - struct ssl_cipher_preference_list_st *pref_list = NULL; /* * Return with error if nothing to do. @@ -1393,16 +1461,16 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, * preference). */ ssl_cipher_apply_rule(0, SSL_kECDHE, SSL_aECDSA, 0, 0, 0, 0, CIPHER_ADD, - -1, 0,&head, &tail); - ssl_cipher_apply_rule(0, SSL_kECDHE, 0, 0, 0, 0, 0, CIPHER_ADD, -1, 0, - &head, &tail); - ssl_cipher_apply_rule(0, SSL_kECDHE, 0, 0, 0, 0, 0, CIPHER_DEL, -1, 0, - &head, &tail); + -1, &head, &tail); + ssl_cipher_apply_rule(0, SSL_kECDHE, 0, 0, 0, 0, 0, CIPHER_ADD, -1, &head, + &tail); + ssl_cipher_apply_rule(0, SSL_kECDHE, 0, 0, 0, 0, 0, CIPHER_DEL, -1, &head, + &tail); /* Within each strength group, we prefer GCM over CHACHA... */ - ssl_cipher_apply_rule(0, 0, 0, SSL_AESGCM, 0, 0, 0, CIPHER_ADD, -1, 0, + ssl_cipher_apply_rule(0, 0, 0, SSL_AESGCM, 0, 0, 0, CIPHER_ADD, -1, &head, &tail); - ssl_cipher_apply_rule(0, 0, 0, SSL_CHACHA20, 0, 0, 0, CIPHER_ADD, -1, 0, + ssl_cipher_apply_rule(0, 0, 0, SSL_CHACHA20, 0, 0, 0, CIPHER_ADD, -1, &head, &tail); /* @@ -1411,13 +1479,13 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, * strength. */ ssl_cipher_apply_rule(0, 0, 0, SSL_AES ^ SSL_AESGCM, 0, 0, 0, CIPHER_ADD, - -1, 0, &head, &tail); + -1, &head, &tail); /* Temporarily enable everything else for sorting */ - ssl_cipher_apply_rule(0, 0, 0, 0, 0, 0, 0, CIPHER_ADD, -1, 0, &head, &tail); + ssl_cipher_apply_rule(0, 0, 0, 0, 0, 0, 0, CIPHER_ADD, -1, &head, &tail); /* Low priority for MD5 */ - ssl_cipher_apply_rule(0, 0, 0, 0, SSL_MD5, 0, 0, CIPHER_ORD, -1, 0, &head, + ssl_cipher_apply_rule(0, 0, 0, 0, SSL_MD5, 0, 0, CIPHER_ORD, -1, &head, &tail); /* @@ -1425,16 +1493,16 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, * disabled. (For applications that allow them, they aren't too bad, but * we prefer authenticated ciphers.) */ - ssl_cipher_apply_rule(0, 0, SSL_aNULL, 0, 0, 0, 0, CIPHER_ORD, -1, 0, &head, + ssl_cipher_apply_rule(0, 0, SSL_aNULL, 0, 0, 0, 0, CIPHER_ORD, -1, &head, &tail); - ssl_cipher_apply_rule(0, SSL_kRSA, 0, 0, 0, 0, 0, CIPHER_ORD, -1, 0, &head, + ssl_cipher_apply_rule(0, SSL_kRSA, 0, 0, 0, 0, 0, CIPHER_ORD, -1, &head, &tail); - ssl_cipher_apply_rule(0, SSL_kPSK, 0, 0, 0, 0, 0, CIPHER_ORD, -1, 0, &head, + ssl_cipher_apply_rule(0, SSL_kPSK, 0, 0, 0, 0, 0, CIPHER_ORD, -1, &head, &tail); /* RC4 is sort-of broken -- move to the end */ - ssl_cipher_apply_rule(0, 0, 0, SSL_RC4, 0, 0, 0, CIPHER_ORD, -1, 0, &head, + ssl_cipher_apply_rule(0, 0, 0, SSL_RC4, 0, 0, 0, CIPHER_ORD, -1, &head, &tail); /* @@ -1450,7 +1518,7 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, * Partially overrule strength sort to prefer TLS 1.2 ciphers/PRFs. * TODO(openssl-team): is there an easier way to accomplish all this? */ - ssl_cipher_apply_rule(0, 0, 0, 0, 0, TLS1_2_VERSION, 0, CIPHER_BUMP, -1, 0, + ssl_cipher_apply_rule(0, 0, 0, 0, 0, TLS1_2_VERSION, 0, CIPHER_BUMP, -1, &head, &tail); /* @@ -1466,15 +1534,15 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, * Because we now bump ciphers to the top of the list, we proceed in * reverse order of preference. */ - ssl_cipher_apply_rule(0, 0, 0, 0, SSL_AEAD, 0, 0, CIPHER_BUMP, -1, 0, + ssl_cipher_apply_rule(0, 0, 0, 0, SSL_AEAD, 0, 0, CIPHER_BUMP, -1, &head, &tail); ssl_cipher_apply_rule(0, SSL_kDHE | SSL_kECDHE, 0, 0, 0, 0, 0, - CIPHER_BUMP, -1, 0, &head, &tail); + CIPHER_BUMP, -1, &head, &tail); ssl_cipher_apply_rule(0, SSL_kDHE | SSL_kECDHE, 0, 0, SSL_AEAD, 0, 0, - CIPHER_BUMP, -1, 0, &head, &tail); + CIPHER_BUMP, -1, &head, &tail); /* Now disable everything (maintaining the ordering!) */ - ssl_cipher_apply_rule(0, 0, 0, 0, 0, 0, 0, CIPHER_DEL, -1, 0, &head, &tail); + ssl_cipher_apply_rule(0, 0, 0, 0, 0, 0, 0, CIPHER_DEL, -1, &head, &tail); /* * We also need cipher aliases for selecting based on the rule_str. @@ -1488,8 +1556,9 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, num_of_alias_max = num_of_ciphers + num_of_group_aliases + 1; ca_list = OPENSSL_malloc(sizeof(*ca_list) * num_of_alias_max); if (ca_list == NULL) { + OPENSSL_free(co_list); SSLerr(SSL_F_SSL_CREATE_CIPHER_LIST, ERR_R_MALLOC_FAILURE); - goto err; /* Failure */ + return NULL; /* Failure */ } ssl_cipher_collect_aliases(ca_list, num_of_group_aliases, disabled_mkey, disabled_auth, disabled_enc, @@ -1514,19 +1583,28 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, OPENSSL_free(ca_list); /* Not needed anymore */ - if (!ok) - goto err; /* Rule processing failure */ + if (!ok) { /* Rule processing failure */ + OPENSSL_free(co_list); + return NULL; + } /* * Allocate new "cipherstack" for the result, return with error * if we cannot get one. */ - if ((cipherstack = sk_SSL_CIPHER_new_null()) == NULL) - goto err; + if ((cipherstack = sk_SSL_CIPHER_new_null()) == NULL) { + OPENSSL_free(co_list); + return NULL; + } - in_group_flags = OPENSSL_malloc(num_of_ciphers); - if (!in_group_flags) - goto err; + /* Add TLSv1.3 ciphers first - we always prefer those if possible */ + for (i = 0; i < sk_SSL_CIPHER_num(tls13_ciphersuites); i++) { + if (!sk_SSL_CIPHER_push(cipherstack, + sk_SSL_CIPHER_value(tls13_ciphersuites, i))) { + sk_SSL_CIPHER_free(cipherstack); + return NULL; + } + } /* * The cipher selection for the list is done. The ciphers are added @@ -1534,65 +1612,26 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, */ for (curr = head; curr != NULL; curr = curr->next) { if (curr->active) { - if (!sk_SSL_CIPHER_push(cipherstack, curr->cipher)) - goto err; - in_group_flags[num_in_group_flags++] = curr->in_group; + if (!sk_SSL_CIPHER_push(cipherstack, curr->cipher)) { + OPENSSL_free(co_list); + sk_SSL_CIPHER_free(cipherstack); + return NULL; + } #ifdef CIPHER_DEBUG fprintf(stderr, "<%s>\n", curr->cipher->name); #endif } } OPENSSL_free(co_list); /* Not needed any longer */ - co_list = NULL; - tmp_cipher_list = sk_SSL_CIPHER_dup(cipherstack); - if (tmp_cipher_list == NULL) - goto err; - - pref_list = OPENSSL_malloc(sizeof(struct ssl_cipher_preference_list_st)); - if (!pref_list) - goto err; - pref_list->ciphers = cipherstack; - pref_list->in_group_flags = OPENSSL_malloc(num_in_group_flags); - if (!pref_list->in_group_flags) - goto err; - memcpy(pref_list->in_group_flags, in_group_flags, num_in_group_flags); - OPENSSL_free(in_group_flags); - in_group_flags = NULL; - if (*cipher_list != NULL) - ssl_cipher_preference_list_free(*cipher_list); - *cipher_list = pref_list; - pref_list = NULL; - - if (cipher_list_by_id != NULL) { - if (*cipher_list_by_id != NULL) - sk_SSL_CIPHER_free(*cipher_list_by_id); - *cipher_list_by_id = tmp_cipher_list; - tmp_cipher_list = NULL; - (void)sk_SSL_CIPHER_set_cmp_func(*cipher_list_by_id, - ssl_cipher_ptr_id_cmp); - sk_SSL_CIPHER_sort(*cipher_list_by_id); - } else { - sk_SSL_CIPHER_free(tmp_cipher_list); - tmp_cipher_list = NULL; + if (!update_cipher_list_by_id(cipher_list_by_id, cipherstack)) { + sk_SSL_CIPHER_free(cipherstack); + return NULL; } + sk_SSL_CIPHER_free(*cipher_list); + *cipher_list = cipherstack; return cipherstack; - -err: - if (co_list) - OPENSSL_free(co_list); - if (in_group_flags) - OPENSSL_free(in_group_flags); - if (cipherstack) - sk_SSL_CIPHER_free(cipherstack); - if (tmp_cipher_list) - sk_SSL_CIPHER_free(tmp_cipher_list); - if (pref_list && pref_list->in_group_flags) - OPENSSL_free(pref_list->in_group_flags); - if (pref_list) - OPENSSL_free(pref_list); - return NULL; } char *SSL_CIPHER_description(const SSL_CIPHER *cipher, char *buf, int len) @@ -1604,9 +1643,10 @@ char *SSL_CIPHER_description(const SSL_CIPHER *cipher, char *buf, int len) if (buf == NULL) { len = 128; - buf = OPENSSL_malloc(len); - if (buf == NULL) + if ((buf = OPENSSL_malloc(len)) == NULL) { + SSLerr(SSL_F_SSL_CIPHER_DESCRIPTION, ERR_R_MALLOC_FAILURE); return NULL; + } } else if (len < 128) { return NULL; } diff --git a/ssl/ssl_conf.c b/ssl/ssl_conf.c index 2c50d19b..758f0129 100644 --- a/ssl/ssl_conf.c +++ b/ssl/ssl_conf.c @@ -229,8 +229,9 @@ static int cmd_ECDHParameters(SSL_CONF_CTX *cctx, const char *value) int nid; /* Ignore values supported by 1.0.2 for the automatic selection */ - if ((cctx->flags & SSL_CONF_FLAG_FILE) && - strcasecmp(value, "+automatic") == 0) + if ((cctx->flags & SSL_CONF_FLAG_FILE) + && (strcasecmp(value, "+automatic") == 0 + || strcasecmp(value, "automatic") == 0)) return 1; if ((cctx->flags & SSL_CONF_FLAG_CMDLINE) && strcmp(value, "auto") == 0) @@ -256,6 +257,7 @@ static int cmd_ECDHParameters(SSL_CONF_CTX *cctx, const char *value) static int cmd_CipherString(SSL_CONF_CTX *cctx, const char *value) { int rv = 1; + if (cctx->ctx) rv = SSL_CTX_set_cipher_list(cctx->ctx, value); if (cctx->ssl) @@ -263,6 +265,17 @@ static int cmd_CipherString(SSL_CONF_CTX *cctx, const char *value) return rv > 0; } +static int cmd_Ciphersuites(SSL_CONF_CTX *cctx, const char *value) +{ + int rv = 1; + + if (cctx->ctx) + rv = SSL_CTX_set_ciphersuites(cctx->ctx, value); + if (cctx->ssl) + rv = SSL_set_ciphersuites(cctx->ssl, value); + return rv > 0; +} + static int cmd_Protocol(SSL_CONF_CTX *cctx, const char *value) { static const ssl_flag_tbl ssl_protocol_list[] = { @@ -557,6 +570,21 @@ static int cmd_RecordPadding(SSL_CONF_CTX *cctx, const char *value) return rv; } + +static int cmd_NumTickets(SSL_CONF_CTX *cctx, const char *value) +{ + int rv = 0; + int num_tickets = atoi(value); + + if (num_tickets >= 0) { + if (cctx->ctx) + rv = SSL_CTX_set_num_tickets(cctx->ctx, num_tickets); + if (cctx->ssl) + rv = SSL_set_num_tickets(cctx->ssl, num_tickets); + } + return rv; +} + typedef struct { int (*cmd) (SSL_CONF_CTX *cctx, const char *value); const char *str_file; @@ -606,6 +634,7 @@ static const ssl_conf_cmd_tbl ssl_conf_cmds[] = { SSL_CONF_CMD_STRING(ECDHParameters, "named_curve", SSL_CONF_FLAG_SERVER), #endif SSL_CONF_CMD_STRING(CipherString, "cipher", 0), + SSL_CONF_CMD_STRING(Ciphersuites, "ciphersuites", 0), SSL_CONF_CMD_STRING(Protocol, NULL, 0), SSL_CONF_CMD_STRING(MinProtocol, "min_protocol", 0), SSL_CONF_CMD_STRING(MaxProtocol, "max_protocol", 0), @@ -641,7 +670,8 @@ static const ssl_conf_cmd_tbl ssl_conf_cmds[] = { SSL_CONF_FLAG_SERVER | SSL_CONF_FLAG_CERTIFICATE, SSL_CONF_TYPE_FILE), #endif - SSL_CONF_CMD_STRING(RecordPadding, "record_padding", 0) + SSL_CONF_CMD_STRING(RecordPadding, "record_padding", 0), + SSL_CONF_CMD_STRING(NumTickets, "num_tickets", SSL_CONF_FLAG_SERVER) }; /* Supported switches: must match order of switches in ssl_conf_cmds */ diff --git a/ssl/ssl_err.c b/ssl/ssl_err.c index 1404b61e..bce20365 100644 --- a/ssl/ssl_err.c +++ b/ssl/ssl_err.c @@ -20,6 +20,7 @@ static const ERR_STRING_DATA SSL_str_functs[] = { "bytes_to_cipher_list"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_CHECK_SUITEB_CIPHER_LIST, 0), "check_suiteb_cipher_list"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_CIPHERSUITE_CB, 0), "ciphersuite_cb"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_CONSTRUCT_CA_NAMES, 0), "construct_ca_names"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_CONSTRUCT_KEY_EXCHANGE_TBS, 0), "construct_key_exchange_tbs"}, @@ -42,6 +43,8 @@ static const ERR_STRING_DATA SSL_str_functs[] = { {ERR_PACK(ERR_LIB_SSL, SSL_F_DTLS1_CHECK_TIMEOUT_NUM, 0), "dtls1_check_timeout_num"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_DTLS1_HEARTBEAT, 0), ""}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_DTLS1_HM_FRAGMENT_NEW, 0), + "dtls1_hm_fragment_new"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_DTLS1_PREPROCESS_FRAGMENT, 0), "dtls1_preprocess_fragment"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_DTLS1_PROCESS_BUFFERED_RECORDS, 0), @@ -64,6 +67,8 @@ static const ERR_STRING_DATA SSL_str_functs[] = { "dtls_get_reassembled_message"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_DTLS_PROCESS_HELLO_VERIFY, 0), "dtls_process_hello_verify"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_DTLS_RECORD_LAYER_NEW, 0), + "DTLS_RECORD_LAYER_new"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_DTLS_WAIT_FOR_DRY, 0), "dtls_wait_for_dry"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_EARLY_DATA_COUNT_OK, 0), "early_data_count_ok"}, @@ -108,6 +113,8 @@ static const ERR_STRING_DATA SSL_str_functs[] = { {ERR_PACK(ERR_LIB_SSL, SSL_F_OSSL_STATEM_SERVER_WRITE_TRANSITION, 0), "ossl_statem_server_write_transition"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_PARSE_CA_NAMES, 0), "parse_ca_names"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_PITEM_NEW, 0), "pitem_new"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_PQUEUE_NEW, 0), "pqueue_new"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_PROCESS_KEY_SHARE_EXT, 0), ""}, {ERR_PACK(ERR_LIB_SSL, SSL_F_READ_STATE_MACHINE, 0), "read_state_machine"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_SET_CLIENT_CIPHERSUITE, 0), @@ -187,6 +194,8 @@ static const ERR_STRING_DATA SSL_str_functs[] = { "ssl_check_srvr_ecc_cert_and_alg"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_SSL_CHOOSE_CLIENT_VERSION, 0), "ssl_choose_client_version"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_SSL_CIPHER_DESCRIPTION, 0), + "SSL_CIPHER_description"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_SSL_CIPHER_LIST_TO_BYTES, 0), "ssl_cipher_list_to_bytes"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_SSL_CIPHER_PROCESS_RULESTR, 0), @@ -194,6 +203,8 @@ static const ERR_STRING_DATA SSL_str_functs[] = { {ERR_PACK(ERR_LIB_SSL, SSL_F_SSL_CIPHER_STRENGTH_SORT, 0), "ssl_cipher_strength_sort"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_SSL_CLEAR, 0), "SSL_clear"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_SSL_CLIENT_HELLO_GET1_EXTENSIONS_PRESENT, 0), + "SSL_client_hello_get1_extensions_present"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_SSL_COMP_ADD_COMPRESSION_METHOD, 0), "SSL_COMP_add_compression_method"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_SSL_CONF_CMD, 0), "SSL_CONF_cmd"}, @@ -387,10 +398,17 @@ static const ERR_STRING_DATA SSL_str_functs[] = { "tls1_export_keying_material"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS1_GET_CURVELIST, 0), "tls1_get_curvelist"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS1_PRF, 0), "tls1_PRF"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS1_SAVE_U16, 0), "tls1_save_u16"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS1_SETUP_KEY_BLOCK, 0), "tls1_setup_key_block"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS1_SET_GROUPS, 0), "tls1_set_groups"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS1_SET_RAW_SIGALGS, 0), + "tls1_set_raw_sigalgs"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS1_SET_SERVER_SIGALGS, 0), "tls1_set_server_sigalgs"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS1_SET_SHARED_SIGALGS, 0), + "tls1_set_shared_sigalgs"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS1_SET_SIGALGS, 0), "tls1_set_sigalgs"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS_CHOOSE_SIGALG, 0), "tls_choose_sigalg"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_TLS_CLIENT_KEY_EXCHANGE_POST_WORK, 0), "tls_client_key_exchange_post_work"}, @@ -692,6 +710,10 @@ static const ERR_STRING_DATA SSL_str_functs[] = { "tls_setup_handshake"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_USE_CERTIFICATE_CHAIN_FILE, 0), "use_certificate_chain_file"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_WPACKET_INTERN_INIT_LEN, 0), + "wpacket_intern_init_len"}, + {ERR_PACK(ERR_LIB_SSL, SSL_F_WPACKET_START_SUB_PACKET_LEN__, 0), + "WPACKET_start_sub_packet_len__"}, {ERR_PACK(ERR_LIB_SSL, SSL_F_WRITE_STATE_MACHINE, 0), "write_state_machine"}, {0, NULL} @@ -934,9 +956,6 @@ static const ERR_STRING_DATA SSL_str_reasons[] = { {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_MISSING_TMP_DH_KEY), "missing tmp dh key"}, {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_MISSING_TMP_ECDH_KEY), "missing tmp ecdh key"}, - {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_MIXED_SPECIAL_OPERATOR_WITH_GROUPS), - "mixed special operator with groups"}, - {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_NESTED_GROUP), "nested group"}, {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_NOT_ON_RECORD_BOUNDARY), "not on record boundary"}, {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_NOT_REPLACING_CERTIFICATE), @@ -1167,14 +1186,11 @@ static const ERR_STRING_DATA SSL_str_reasons[] = { "unable to load ssl3 md5 routines"}, {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNABLE_TO_LOAD_SSL3_SHA1_ROUTINES), "unable to load ssl3 sha1 routines"}, - {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNEXPECTED_GROUP_CLOSE), "unexpected group close"}, {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNEXPECTED_CCS_MESSAGE), "unexpected ccs message"}, {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNEXPECTED_END_OF_EARLY_DATA), "unexpected end of early data"}, {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNEXPECTED_MESSAGE), "unexpected message"}, - {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNEXPECTED_OPERATOR_IN_GROUP), - "unexpected operator in group"}, {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNEXPECTED_RECORD), "unexpected record"}, {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNINITIALIZED), "uninitialized"}, {ERR_PACK(ERR_LIB_SSL, 0, SSL_R_UNKNOWN_ALERT_TYPE), "unknown alert type"}, diff --git a/ssl/ssl_init.c b/ssl/ssl_init.c index 34e67736..ed2bf845 100644 --- a/ssl/ssl_init.c +++ b/ssl/ssl_init.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -106,7 +106,6 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_ssl_base) fprintf(stderr, "OPENSSL_INIT: ossl_init_ssl_base: " "SSL_add_ssl_module()\n"); #endif - SSL_add_ssl_module(); /* * We ignore an error return here. Not much we can do - but not that bad * either. We can still safely continue. @@ -195,11 +194,16 @@ int OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS * settings) return 0; } - if (!RUN_ONCE(&ssl_base, ossl_init_ssl_base)) + if (!OPENSSL_init_crypto(opts +#ifndef OPENSSL_NO_AUTOLOAD_CONFIG + | OPENSSL_INIT_LOAD_CONFIG +#endif + | OPENSSL_INIT_ADD_ALL_CIPHERS + | OPENSSL_INIT_ADD_ALL_DIGESTS, + settings)) return 0; - if (!OPENSSL_init_crypto(opts | OPENSSL_INIT_ADD_ALL_CIPHERS - | OPENSSL_INIT_ADD_ALL_DIGESTS, settings)) + if (!RUN_ONCE(&ssl_base, ossl_init_ssl_base)) return 0; if ((opts & OPENSSL_INIT_NO_LOAD_SSL_STRINGS) diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 374f0d36..22f729c2 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -14,13 +14,13 @@ #include #include #include +#include #include #include #include #include #include #include "internal/cryptlib.h" -#include "internal/rand.h" #include "internal/refcount.h" const char SSL_version_str[] = OPENSSL_VERSION_TEXT; @@ -591,6 +591,7 @@ int SSL_clear(SSL *s) s->psksession_id = NULL; s->psksession_id_len = 0; s->hello_retry_request = 0; + s->sent_tickets = 0; s->error = 0; s->hit = 0; @@ -653,7 +654,9 @@ int SSL_CTX_set_ssl_version(SSL_CTX *ctx, const SSL_METHOD *meth) ctx->method = meth; - sk = ssl_create_cipher_list(ctx->method, &(ctx->cipher_list), + sk = ssl_create_cipher_list(ctx->method, + ctx->tls13_ciphersuites, + &(ctx->cipher_list), &(ctx->cipher_list_by_id), SSL_DEFAULT_CIPHER_LIST, ctx->cert); if ((sk == NULL) || (sk_SSL_CIPHER_num(sk) <= 0)) { @@ -688,20 +691,6 @@ SSL *SSL_new(SSL_CTX *ctx) goto err; } - /* - * If not using the standard RAND (say for fuzzing), then don't use a - * chained DRBG. - */ - if (RAND_get_rand_method() == RAND_OpenSSL()) { - s->drbg = - RAND_DRBG_new(RAND_DRBG_NID, 0, RAND_DRBG_get0_public()); - if (s->drbg == NULL - || RAND_DRBG_instantiate(s->drbg, - (const unsigned char *) SSL_version_str, - sizeof(SSL_version_str) - 1) == 0) - goto err; - } - RECORD_LAYER_init(&s->rlayer, s); s->options = ctx->options; @@ -711,6 +700,12 @@ SSL *SSL_new(SSL_CTX *ctx) s->mode = ctx->mode; s->max_cert_list = ctx->max_cert_list; s->max_early_data = ctx->max_early_data; + s->num_tickets = ctx->num_tickets; + + /* Shallow copy of the ciphersuites stack */ + s->tls13_ciphersuites = sk_SSL_CIPHER_dup(ctx->tls13_ciphersuites); + if (s->tls13_ciphersuites == NULL) + goto err; /* * Earlier library versions used to copy the pointer to the CERT, not @@ -1113,71 +1108,6 @@ int SSL_set1_param(SSL *ssl, X509_VERIFY_PARAM *vpm) return X509_VERIFY_PARAM_set1(ssl->param, vpm); } -void ssl_cipher_preference_list_free(struct ssl_cipher_preference_list_st - *cipher_list) -{ - sk_SSL_CIPHER_free(cipher_list->ciphers); - OPENSSL_free(cipher_list->in_group_flags); - OPENSSL_free(cipher_list); -} - -struct ssl_cipher_preference_list_st* -ssl_cipher_preference_list_dup(struct ssl_cipher_preference_list_st - *cipher_list) -{ - struct ssl_cipher_preference_list_st* ret = NULL; - size_t n = sk_SSL_CIPHER_num(cipher_list->ciphers); - - ret = OPENSSL_malloc(sizeof(struct ssl_cipher_preference_list_st)); - if (!ret) - goto err; - ret->ciphers = NULL; - ret->in_group_flags = NULL; - ret->ciphers = sk_SSL_CIPHER_dup(cipher_list->ciphers); - if (!ret->ciphers) - goto err; - ret->in_group_flags = OPENSSL_malloc(n); - if (!ret->in_group_flags) - goto err; - memcpy(ret->in_group_flags, cipher_list->in_group_flags, n); - return ret; - -err: - if (ret->ciphers) - sk_SSL_CIPHER_free(ret->ciphers); - if (ret) - OPENSSL_free(ret); - return NULL; -} - -struct ssl_cipher_preference_list_st* -ssl_cipher_preference_list_from_ciphers(STACK_OF(SSL_CIPHER) *ciphers) -{ - struct ssl_cipher_preference_list_st* ret = NULL; - size_t n = sk_SSL_CIPHER_num(ciphers); - - ret = OPENSSL_malloc(sizeof(struct ssl_cipher_preference_list_st)); - if (!ret) - goto err; - ret->ciphers = NULL; - ret->in_group_flags = NULL; - ret->ciphers = sk_SSL_CIPHER_dup(ciphers); - if (!ret->ciphers) - goto err; - ret->in_group_flags = OPENSSL_malloc(n); - if (!ret->in_group_flags) - goto err; - memset(ret->in_group_flags, 0, n); - return ret; - -err: - if (ret->ciphers) - sk_SSL_CIPHER_free(ret->ciphers); - if (ret) - OPENSSL_free(ret); - return NULL; -} - X509_VERIFY_PARAM *SSL_CTX_get0_param(SSL_CTX *ctx) { return ctx->param; @@ -1199,7 +1129,6 @@ void SSL_free(SSL *s) if (s == NULL) return; - CRYPTO_DOWN_REF(&s->references, &i, s->lock); REF_PRINT_COUNT("SSL", s); if (i > 0) @@ -1219,9 +1148,9 @@ void SSL_free(SSL *s) BUF_MEM_free(s->init_buf); /* add extra stuff */ - if (s->cipher_list != NULL) - ssl_cipher_preference_list_free(s->cipher_list); + sk_SSL_CIPHER_free(s->cipher_list); sk_SSL_CIPHER_free(s->cipher_list_by_id); + sk_SSL_CIPHER_free(s->tls13_ciphersuites); /* Make the next call work :-) */ if (s->session != NULL) { @@ -1278,7 +1207,6 @@ void SSL_free(SSL *s) sk_SRTP_PROTECTION_PROFILE_free(s->srtp_profiles); #endif - RAND_DRBG_free(s->drbg); CRYPTO_THREAD_lock_free(s->lock); OPENSSL_free(s); @@ -2097,6 +2025,9 @@ int SSL_write_early_data(SSL *s, const void *buf, size_t num, size_t *written) /* We are a server writing to an unauthenticated client */ s->early_data_state = SSL_EARLY_DATA_UNAUTH_WRITING; ret = SSL_write_ex(s, buf, num, written); + /* The buffering BIO is still in place */ + if (ret) + (void)BIO_flush(s->wbio); s->early_data_state = early_data_state; return ret; @@ -2500,9 +2431,9 @@ STACK_OF(SSL_CIPHER) *SSL_get_ciphers(const SSL *s) { if (s != NULL) { if (s->cipher_list != NULL) { - return (s->cipher_list->ciphers); + return s->cipher_list; } else if ((s->ctx != NULL) && (s->ctx->cipher_list != NULL)) { - return (s->ctx->cipher_list->ciphers); + return s->ctx->cipher_list; } } return NULL; @@ -2576,8 +2507,8 @@ const char *SSL_get_cipher_list(const SSL *s, int n) * preference */ STACK_OF(SSL_CIPHER) *SSL_CTX_get_ciphers(const SSL_CTX *ctx) { - if (ctx != NULL && ctx->cipher_list != NULL) - return ctx->cipher_list->ciphers; + if (ctx != NULL) + return ctx->cipher_list; return NULL; } @@ -2586,8 +2517,9 @@ int SSL_CTX_set_cipher_list(SSL_CTX *ctx, const char *str) { STACK_OF(SSL_CIPHER) *sk; - sk = ssl_create_cipher_list(ctx->method, &ctx->cipher_list, - &ctx->cipher_list_by_id, str, ctx->cert); + sk = ssl_create_cipher_list(ctx->method, ctx->tls13_ciphersuites, + &ctx->cipher_list, &ctx->cipher_list_by_id, str, + ctx->cert); /* * ssl_create_cipher_list may return an empty stack if it was unable to * find a cipher matching the given rule string (for example if the rule @@ -2609,8 +2541,9 @@ int SSL_set_cipher_list(SSL *s, const char *str) { STACK_OF(SSL_CIPHER) *sk; - sk = ssl_create_cipher_list(s->ctx->method, &s->cipher_list, - &s->cipher_list_by_id, str, s->cert); + sk = ssl_create_cipher_list(s->ctx->method, s->tls13_ciphersuites, + &s->cipher_list, &s->cipher_list_by_id, str, + s->cert); /* see comment in SSL_CTX_set_cipher_list */ if (sk == NULL) return 0; @@ -2621,28 +2554,37 @@ int SSL_set_cipher_list(SSL *s, const char *str) return 1; } -char *SSL_get_shared_ciphers(const SSL *s, char *buf, int len) +char *SSL_get_shared_ciphers(const SSL *s, char *buf, int size) { char *p; - STACK_OF(SSL_CIPHER) *sk; + STACK_OF(SSL_CIPHER) *clntsk, *srvrsk; const SSL_CIPHER *c; int i; - if ((s->session == NULL) || (s->session->ciphers == NULL) || (len < 2)) + if (!s->server + || s->session == NULL + || s->session->ciphers == NULL + || size < 2) return NULL; p = buf; - sk = s->session->ciphers; - - if (sk_SSL_CIPHER_num(sk) == 0) + clntsk = s->session->ciphers; + srvrsk = SSL_get_ciphers(s); + if (clntsk == NULL || srvrsk == NULL) return NULL; - for (i = 0; i < sk_SSL_CIPHER_num(sk); i++) { + if (sk_SSL_CIPHER_num(clntsk) == 0 || sk_SSL_CIPHER_num(srvrsk) == 0) + return NULL; + + for (i = 0; i < sk_SSL_CIPHER_num(clntsk); i++) { int n; - c = sk_SSL_CIPHER_value(sk, i); + c = sk_SSL_CIPHER_value(clntsk, i); + if (sk_SSL_CIPHER_find(srvrsk, c) < 0) + continue; + n = strlen(c->name); - if (n + 1 > len) { + if (n + 1 > size) { if (p != buf) --p; *p = '\0'; @@ -2651,7 +2593,7 @@ char *SSL_get_shared_ciphers(const SSL *s, char *buf, int len) strcpy(p, c->name); p += n; *(p++) = ':'; - len -= n + 1; + size -= n + 1; } p[-1] = '\0'; return buf; @@ -2954,6 +2896,7 @@ SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth) ret->method = meth; ret->min_proto_version = 0; ret->max_proto_version = 0; + ret->mode = SSL_MODE_AUTO_RETRY; ret->session_cache_mode = SSL_SESS_CACHE_SERVER; ret->session_cache_size = SSL_SESSION_CACHE_MAX_SIZE_DEFAULT; /* We take the system default. */ @@ -2981,10 +2924,15 @@ SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth) if (ret->ctlog_store == NULL) goto err; #endif + + if (!SSL_CTX_set_ciphersuites(ret, TLS_DEFAULT_CIPHERSUITES)) + goto err; + if (!ssl_create_cipher_list(ret->method, + ret->tls13_ciphersuites, &ret->cipher_list, &ret->cipher_list_by_id, SSL_DEFAULT_CIPHER_LIST, ret->cert) - || sk_SSL_CIPHER_num(ret->cipher_list->ciphers) <= 0) { + || sk_SSL_CIPHER_num(ret->cipher_list) <= 0) { SSLerr(SSL_F_SSL_CTX_NEW, SSL_R_LIBRARY_HAS_NO_CIPHERS); goto err2; } @@ -3008,6 +2956,9 @@ SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth) if (!CRYPTO_new_ex_data(CRYPTO_EX_INDEX_SSL_CTX, ret, &ret->ex_data)) goto err; + if ((ret->ext.secure = OPENSSL_secure_zalloc(sizeof(*ret->ext.secure))) == NULL) + goto err; + /* No compression for DTLS */ if (!(meth->ssl3_enc->enc_flags & SSL_ENC_FLAG_DTLS)) ret->comp_methods = SSL_COMP_get_compression_methods(); @@ -3018,13 +2969,13 @@ SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth) /* Setup RFC5077 ticket keys */ if ((RAND_bytes(ret->ext.tick_key_name, sizeof(ret->ext.tick_key_name)) <= 0) - || (RAND_bytes(ret->ext.tick_hmac_key, - sizeof(ret->ext.tick_hmac_key)) <= 0) - || (RAND_bytes(ret->ext.tick_aes_key, - sizeof(ret->ext.tick_aes_key)) <= 0)) + || (RAND_priv_bytes(ret->ext.secure->tick_hmac_key, + sizeof(ret->ext.secure->tick_hmac_key)) <= 0) + || (RAND_priv_bytes(ret->ext.secure->tick_aes_key, + sizeof(ret->ext.secure->tick_aes_key)) <= 0)) ret->options |= SSL_OP_NO_TICKET; - if (RAND_bytes(ret->ext.cookie_hmac_key, + if (RAND_priv_bytes(ret->ext.cookie_hmac_key, sizeof(ret->ext.cookie_hmac_key)) <= 0) goto err; @@ -3085,6 +3036,11 @@ SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth) */ ret->max_early_data = 0; + /* By default we send two session tickets automatically in TLSv1.3 */ + ret->num_tickets = 2; + + ssl_ctx_system_config(ret); + return ret; err: SSLerr(SSL_F_SSL_CTX_NEW, ERR_R_MALLOC_FAILURE); @@ -3139,8 +3095,9 @@ void SSL_CTX_free(SSL_CTX *a) #ifndef OPENSSL_NO_CT CTLOG_STORE_free(a->ctlog_store); #endif - ssl_cipher_preference_list_free(a->cipher_list); + sk_SSL_CIPHER_free(a->cipher_list); sk_SSL_CIPHER_free(a->cipher_list_by_id); + sk_SSL_CIPHER_free(a->tls13_ciphersuites); ssl_cert_free(a->cert); sk_X509_NAME_pop_free(a->ca_names, X509_NAME_free); sk_X509_pop_free(a->extra_certs, X509_free); @@ -3160,6 +3117,7 @@ void SSL_CTX_free(SSL_CTX *a) OPENSSL_free(a->ext.supportedgroups); #endif OPENSSL_free(a->ext.alpn); + OPENSSL_secure_free(a->ext.secure); CRYPTO_THREAD_lock_free(a->lock); @@ -3393,15 +3351,48 @@ void ssl_update_cache(SSL *s, int mode) if (s->session->session_id_length == 0) return; + /* + * If sid_ctx_length is 0 there is no specific application context + * associated with this session, so when we try to resume it and + * SSL_VERIFY_PEER is requested to verify the client identity, we have no + * indication that this is actually a session for the proper application + * context, and the *handshake* will fail, not just the resumption attempt. + * Do not cache (on the server) these sessions that are not resumable + * (clients can set SSL_VERIFY_PEER without needing a sid_ctx set). + */ + if (s->server && s->session->sid_ctx_length == 0 + && (s->verify_mode & SSL_VERIFY_PEER) != 0) + return; + i = s->session_ctx->session_cache_mode; if ((i & mode) != 0 - && (!s->hit || SSL_IS_TLS13(s)) - && ((i & SSL_SESS_CACHE_NO_INTERNAL_STORE) != 0 - || SSL_CTX_add_session(s->session_ctx, s->session)) - && s->session_ctx->new_session_cb != NULL) { - SSL_SESSION_up_ref(s->session); - if (!s->session_ctx->new_session_cb(s, s->session)) - SSL_SESSION_free(s->session); + && (!s->hit || SSL_IS_TLS13(s))) { + /* + * Add the session to the internal cache. In server side TLSv1.3 we + * normally don't do this because its a full stateless ticket with only + * a dummy session id so there is no reason to cache it, unless: + * - we are doing early_data, in which case we cache so that we can + * detect replays + * - the application has set a remove_session_cb so needs to know about + * session timeout events + */ + if ((i & SSL_SESS_CACHE_NO_INTERNAL_STORE) == 0 + && (!SSL_IS_TLS13(s) + || !s->server + || s->max_early_data > 0 + || s->session_ctx->remove_session_cb != NULL)) + SSL_CTX_add_session(s->session_ctx, s->session); + + /* + * Add the session to the external cache. We do this even in server side + * TLSv1.3 without early data because some applications just want to + * know about the creation of a session and aren't doing a full cache. + */ + if (s->session_ctx->new_session_cb != NULL) { + SSL_SESSION_up_ref(s->session); + if (!s->session_ctx->new_session_cb(s, s->session)) + SSL_SESSION_free(s->session); + } } /* auto flush every 255 connections */ @@ -3756,15 +3747,13 @@ SSL *SSL_dup(SSL *s) /* dup the cipher_list and cipher_list_by_id stacks */ if (s->cipher_list != NULL) { - ret->cipher_list = ssl_cipher_preference_list_dup(s->cipher_list); - if (ret->cipher_list == NULL) + if ((ret->cipher_list = sk_SSL_CIPHER_dup(s->cipher_list)) == NULL) goto err; } - if (s->cipher_list_by_id != NULL) { - ret->cipher_list_by_id = sk_SSL_CIPHER_dup(s->cipher_list_by_id); - if (ret->cipher_list_by_id == NULL) + if (s->cipher_list_by_id != NULL) + if ((ret->cipher_list_by_id = sk_SSL_CIPHER_dup(s->cipher_list_by_id)) + == NULL) goto err; - } /* Dup the client_CA list */ if (s->ca_names != NULL) { @@ -3894,8 +3883,6 @@ int ssl_free_wbio_buffer(SSL *s) return 1; s->wbio = BIO_pop(s->wbio); - if (!ossl_assert(s->wbio != NULL)) - return 0; BIO_free(s->bbio); s->bbio = NULL; @@ -4353,6 +4340,30 @@ int SSL_set_block_padding(SSL *ssl, size_t block_size) return 1; } +int SSL_set_num_tickets(SSL *s, size_t num_tickets) +{ + s->num_tickets = num_tickets; + + return 1; +} + +size_t SSL_get_num_tickets(SSL *s) +{ + return s->num_tickets; +} + +int SSL_CTX_set_num_tickets(SSL_CTX *ctx, size_t num_tickets) +{ + ctx->num_tickets = num_tickets; + + return 1; +} + +size_t SSL_CTX_get_num_tickets(SSL_CTX *ctx) +{ + return ctx->num_tickets; +} + /* * Allocates new EVP_MD_CTX and sets pointer to it into given pointer * variable, freeing EVP_MD_CTX previously stored in that variable, if any. @@ -5005,9 +5016,11 @@ int SSL_client_hello_get1_extensions_present(SSL *s, int **out, size_t *outlen) if (ext->present) num++; } - present = OPENSSL_malloc(sizeof(*present) * num); - if (present == NULL) + if ((present = OPENSSL_malloc(sizeof(*present) * num)) == NULL) { + SSLerr(SSL_F_SSL_CLIENT_HELLO_GET1_EXTENSIONS_PRESENT, + ERR_R_MALLOC_FAILURE); return 0; + } for (i = 0; i < s->clienthello->pre_proc_exts_len; i++) { ext = s->clienthello->pre_proc_exts + i; if (ext->present) { @@ -5356,28 +5369,6 @@ uint32_t SSL_get_max_early_data(const SSL *s) return s->max_early_data; } -int ssl_randbytes(SSL *s, unsigned char *rnd, size_t size) -{ - if (s->drbg != NULL) { - /* - * Currently, it's the duty of the caller to serialize the generate - * requests to the DRBG. So formally we have to check whether - * s->drbg->lock != NULL and take the lock if this is the case. - * However, this DRBG is unique to a given SSL object, and we already - * require that SSL objects are only accessed by a single thread at - * a given time. Also, SSL DRBGs have no child DRBG, so there is - * no risk that this DRBG is accessed by a child DRBG in parallel - * for reseeding. As such, we can rely on the application's - * serialization of SSL accesses for the needed concurrency protection - * here. - */ - return RAND_DRBG_bytes(s->drbg, rnd, size); - } - if (size > INT_MAX) - return 0; - return RAND_bytes(rnd, size); -} - __owur unsigned int ssl_get_max_send_fragment(const SSL *ssl) { /* Return any active Max Fragment Len extension */ diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h index 0eda278d..4aec8101 100644 --- a/ssl/ssl_locl.h +++ b/ssl/ssl_locl.h @@ -550,7 +550,7 @@ struct ssl_session_st { const SSL_CIPHER *cipher; unsigned long cipher_id; /* when ASN.1 loaded, this needs to be used to * load the 'cipher' structure */ - STACK_OF(SSL_CIPHER) *ciphers; /* shared ciphers? */ + STACK_OF(SSL_CIPHER) *ciphers; /* ciphers offered by the client */ CRYPTO_EX_DATA ex_data; /* application specific data */ /* * These are used to make removal of session-ids more efficient and to @@ -733,50 +733,21 @@ DEFINE_LHASH_OF(SSL_SESSION); /* Needed in ssl_cert.c */ DEFINE_LHASH_OF(X509_NAME); -# define TLSEXT_KEYNAME_LENGTH 16 - -/* ssl_cipher_preference_list_st contains a list of SSL_CIPHERs with - * equal-preference groups. For TLS clients, the groups are moot because the - * server picks the cipher and groups cannot be expressed on the wire. However, - * for servers, the equal-preference groups allow the client's preferences to - * be partially respected. (This only has an effect with - * SSL_OP_CIPHER_SERVER_PREFERENCE). - * - * The equal-preference groups are expressed by grouping SSL_CIPHERs together. - * All elements of a group have the same priority: no ordering is expressed - * within a group. - * - * The values in |ciphers| are in one-to-one correspondence with - * |in_group_flags|. (That is, sk_SSL_CIPHER_num(ciphers) is the number of - * bytes in |in_group_flags|.) The bytes in |in_group_flags| are either 1, to - * indicate that the corresponding SSL_CIPHER is not the last element of a - * group, or 0 to indicate that it is. - * - * For example, if |in_group_flags| contains all zeros then that indicates a - * traditional, fully-ordered preference. Every SSL_CIPHER is the last element - * of the group (i.e. they are all in a one-element group). - * - * For a more complex example, consider: - * ciphers: A B C D E F - * in_group_flags: 1 1 0 0 1 0 - * - * That would express the following, order: - * - * A E - * B -> D -> F - * C - */ -struct ssl_cipher_preference_list_st { - STACK_OF(SSL_CIPHER) *ciphers; - uint8_t *in_group_flags; -}; +# define TLSEXT_KEYNAME_LENGTH 16 +# define TLSEXT_TICK_KEY_LENGTH 32 +typedef struct ssl_ctx_ext_secure_st { + unsigned char tick_hmac_key[TLSEXT_TICK_KEY_LENGTH]; + unsigned char tick_aes_key[TLSEXT_TICK_KEY_LENGTH]; +} SSL_CTX_EXT_SECURE; struct ssl_ctx_st { const SSL_METHOD *method; - struct ssl_cipher_preference_list_st *cipher_list; + STACK_OF(SSL_CIPHER) *cipher_list; /* same as above but sorted for lookup */ STACK_OF(SSL_CIPHER) *cipher_list_by_id; + /* TLSv1.3 specific ciphersuites */ + STACK_OF(SSL_CIPHER) *tls13_ciphersuites; struct x509_store_st /* X509_STORE */ *cert_store; LHASH_OF(SSL_SESSION) *sessions; /* @@ -962,8 +933,7 @@ struct ssl_ctx_st { void *servername_arg; /* RFC 4507 session ticket keys */ unsigned char tick_key_name[TLSEXT_KEYNAME_LENGTH]; - unsigned char tick_hmac_key[32]; - unsigned char tick_aes_key[32]; + SSL_CTX_EXT_SECURE *secure; /* Callback to support customisation of ticket key setting */ int (*ticket_key_cb) (SSL *ssl, unsigned char *name, unsigned char *iv, @@ -1049,8 +1019,10 @@ struct ssl_ctx_st { /* Shared DANE context */ struct dane_ctx_st dane; +# ifndef OPENSSL_NO_SRTP /* SRTP profiles we are willing to do from RFC 5764 */ STACK_OF(SRTP_PROTECTION_PROFILE) *srtp_profiles; +# endif /* * Callback for disabling session caching and ticket support on a session * basis, depending on the chosen cipher. @@ -1077,6 +1049,9 @@ struct ssl_ctx_st { SSL_CTX_generate_session_ticket_fn generate_ticket_cb; SSL_CTX_decrypt_session_ticket_fn decrypt_ticket_cb; void *ticket_cb_data; + + /* The number of TLS1.3 tickets to automatically send */ + size_t num_tickets; }; struct ssl_st { @@ -1085,6 +1060,8 @@ struct ssl_st { * DTLS1_VERSION) */ int version; + /* TODO(TLS1.3): Remove this before release */ + int version_draft; /* SSLv3 */ const SSL_METHOD *method; /* @@ -1143,8 +1120,10 @@ struct ssl_st { /* Per connection DANE state */ SSL_DANE dane; /* crypto */ - struct ssl_cipher_preference_list_st *cipher_list; + STACK_OF(SSL_CIPHER) *cipher_list; STACK_OF(SSL_CIPHER) *cipher_list_by_id; + /* TLSv1.3 specific ciphersuites */ + STACK_OF(SSL_CIPHER) *tls13_ciphersuites; /* * These are the ones being used, the ones in SSL_SESSION are the ones to * be 'copied' into these ones @@ -1386,10 +1365,12 @@ struct ssl_st { int scts_parsed; # endif SSL_CTX *session_ctx; /* initial ctx, used to store sessions */ +# ifndef OPENSSL_NO_SRTP /* What we'll do */ STACK_OF(SRTP_PROTECTION_PROFILE) *srtp_profiles; /* What's been chosen */ SRTP_PROTECTION_PROFILE *srtp_profile; +# endif /*- * 1 if we are renegotiating. * 2 if we are a server and are inside a handshake @@ -1441,6 +1422,11 @@ struct ssl_st { CRYPTO_RWLOCK *lock; RAND_DRBG *drbg; + + /* The number of TLS1.3 tickets to automatically send */ + size_t num_tickets; + /* The number of TLS1.3 tickets actually sent so far */ + size_t sent_tickets; }; /* @@ -2235,24 +2221,19 @@ __owur int ssl_cipher_id_cmp(const SSL_CIPHER *a, const SSL_CIPHER *b); DECLARE_OBJ_BSEARCH_GLOBAL_CMP_FN(SSL_CIPHER, SSL_CIPHER, ssl_cipher_id); __owur int ssl_cipher_ptr_id_cmp(const SSL_CIPHER *const *ap, const SSL_CIPHER *const *bp); -__owur STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *meth, - struct ssl_cipher_preference_list_st **pref, - STACK_OF(SSL_CIPHER) **sorted, +__owur int set_ciphersuites(STACK_OF(SSL_CIPHER) **currciphers, const char *str); +__owur STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, + STACK_OF(SSL_CIPHER) *tls13_ciphersuites, + STACK_OF(SSL_CIPHER) **cipher_list, + STACK_OF(SSL_CIPHER) **cipher_list_by_id, const char *rule_str, - CERT *c); + CERT *c); __owur int ssl_cache_cipherlist(SSL *s, PACKET *cipher_suites, int sslv2format); __owur int bytes_to_cipher_list(SSL *s, PACKET *cipher_suites, STACK_OF(SSL_CIPHER) **skp, STACK_OF(SSL_CIPHER) **scsvs, int sslv2format, int fatal); void ssl_update_cache(SSL *s, int mode); -struct ssl_cipher_preference_list_st* ssl_cipher_preference_list_dup( - struct ssl_cipher_preference_list_st *cipher_list); -void ssl_cipher_preference_list_free( - struct ssl_cipher_preference_list_st *cipher_list); -struct ssl_cipher_preference_list_st* ssl_cipher_preference_list_from_ciphers( - STACK_OF(SSL_CIPHER) *ciphers); -struct ssl_cipher_preference_list_st* ssl_get_cipher_preferences(SSL *s); __owur int ssl_cipher_get_evp(const SSL_SESSION *s, const EVP_CIPHER **enc, const EVP_MD **md, int *mac_pkey_type, size_t *mac_secret_size, SSL_COMP **comp, @@ -2277,7 +2258,6 @@ __owur int ssl_build_cert_chain(SSL *s, SSL_CTX *ctx, int flags); __owur int ssl_cert_set_cert_store(CERT *c, X509_STORE *store, int chain, int ref); -__owur int ssl_randbytes(SSL *s, unsigned char *buf, size_t num); __owur int ssl_security(const SSL *s, int op, int bits, int nid, void *other); __owur int ssl_ctx_security(const SSL_CTX *ctx, int op, int bits, int nid, void *other); @@ -2294,7 +2274,7 @@ __owur int ssl_get_server_cert_serverinfo(SSL *s, size_t *serverinfo_length); void ssl_set_masks(SSL *s); __owur STACK_OF(SSL_CIPHER) *ssl_get_ciphers_by_id(SSL *s); -__owur int ssl_verify_alarm_type(long type); +__owur int ssl_x509err2alert(int type); void ssl_sort_cipher_list(void); int ssl_load_ciphers(void); __owur int ssl_fill_hello_random(SSL *s, int server, unsigned char *field, @@ -2335,8 +2315,8 @@ void ssl3_free_digest_list(SSL *s); __owur unsigned long ssl3_output_cert_chain(SSL *s, WPACKET *pkt, CERT_PKEY *cpk); __owur const SSL_CIPHER *ssl3_choose_cipher(SSL *ssl, - STACK_OF(SSL_CIPHER) *clnt, - struct ssl_cipher_preference_list_st *srvr); + STACK_OF(SSL_CIPHER) *clnt, + STACK_OF(SSL_CIPHER) *srvr); __owur int ssl3_digest_cached_records(SSL *s, int keep); __owur int ssl3_new(SSL *s); void ssl3_free(SSL *s); @@ -2485,7 +2465,7 @@ SSL_COMP *ssl3_comp_find(STACK_OF(SSL_COMP) *sk, int n); # ifndef OPENSSL_NO_EC __owur const TLS_GROUP_INFO *tls1_group_id_lookup(uint16_t curve_id); -__owur int tls1_check_group_id(SSL *s, uint16_t group_id); +__owur int tls1_check_group_id(SSL *s, uint16_t group_id, int check_own_curves); __owur uint16_t tls1_shared_group(SSL *s, int nmatch); __owur int tls1_set_groups(uint16_t **pext, size_t *pextlen, int *curves, size_t ncurves); @@ -2504,9 +2484,9 @@ void tls1_get_supported_groups(SSL *s, const uint16_t **pgroups, __owur int tls1_set_server_sigalgs(SSL *s); -__owur SSL_TICKET_RETURN tls_get_ticket_from_client(SSL *s, CLIENTHELLO_MSG *hello, +__owur SSL_TICKET_STATUS tls_get_ticket_from_client(SSL *s, CLIENTHELLO_MSG *hello, SSL_SESSION **ret); -__owur SSL_TICKET_RETURN tls_decrypt_ticket(SSL *s, const unsigned char *etick, +__owur SSL_TICKET_STATUS tls_decrypt_ticket(SSL *s, const unsigned char *etick, size_t eticklen, const unsigned char *sess_id, size_t sesslen, SSL_SESSION **psess); @@ -2585,6 +2565,8 @@ __owur int ssl_log_secret(SSL *ssl, const char *label, #define SERVER_HANDSHAKE_LABEL "SERVER_HANDSHAKE_TRAFFIC_SECRET" #define CLIENT_APPLICATION_LABEL "CLIENT_TRAFFIC_SECRET_0" #define SERVER_APPLICATION_LABEL "SERVER_TRAFFIC_SECRET_0" +#define EARLY_EXPORTER_SECRET_LABEL "EARLY_EXPORTER_SECRET" +#define EXPORTER_SECRET_LABEL "EXPORTER_SECRET" /* s3_cbc.c */ __owur char ssl3_cbc_record_digest_supported(const EVP_MD_CTX *ctx); @@ -2628,6 +2610,9 @@ void custom_exts_free(custom_ext_methods *exts); void ssl_comp_free_compression_methods_int(void); +/* ssl_mcnf.c */ +void ssl_ctx_system_config(SSL_CTX *ctx); + # else /* OPENSSL_UNIT_TEST */ # define ssl_init_wbio_buffer SSL_test_functions()->p_ssl_init_wbio_buffer diff --git a/ssl/ssl_mcnf.c b/ssl/ssl_mcnf.c index 59674f3d..a0e26577 100644 --- a/ssl/ssl_mcnf.c +++ b/ssl/ssl_mcnf.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -11,153 +11,45 @@ #include #include #include "ssl_locl.h" +#include "internal/sslconf.h" /* SSL library configuration module. */ -struct ssl_conf_name { - /* Name of this set of commands */ - char *name; - /* List of commands */ - struct ssl_conf_cmd *cmds; - /* Number of commands */ - size_t cmd_count; -}; - -struct ssl_conf_cmd { - /* Command */ - char *cmd; - /* Argument */ - char *arg; -}; - -static struct ssl_conf_name *ssl_names; -static size_t ssl_names_count; - -static void ssl_module_free(CONF_IMODULE *md) -{ - size_t i, j; - if (ssl_names == NULL) - return; - for (i = 0; i < ssl_names_count; i++) { - struct ssl_conf_name *tname = ssl_names + i; - OPENSSL_free(tname->name); - for (j = 0; j < tname->cmd_count; j++) { - OPENSSL_free(tname->cmds[j].cmd); - OPENSSL_free(tname->cmds[j].arg); - } - OPENSSL_free(tname->cmds); - } - OPENSSL_free(ssl_names); - ssl_names = NULL; - ssl_names_count = 0; -} - -static int ssl_module_init(CONF_IMODULE *md, const CONF *cnf) -{ - size_t i, j, cnt; - int rv = 0; - const char *ssl_conf_section; - STACK_OF(CONF_VALUE) *cmd_lists; - ssl_conf_section = CONF_imodule_get_value(md); - cmd_lists = NCONF_get_section(cnf, ssl_conf_section); - if (sk_CONF_VALUE_num(cmd_lists) <= 0) { - if (cmd_lists == NULL) - SSLerr(SSL_F_SSL_MODULE_INIT, SSL_R_SSL_SECTION_NOT_FOUND); - else - SSLerr(SSL_F_SSL_MODULE_INIT, SSL_R_SSL_SECTION_EMPTY); - ERR_add_error_data(2, "section=", ssl_conf_section); - goto err; - } - cnt = sk_CONF_VALUE_num(cmd_lists); - ssl_names = OPENSSL_zalloc(sizeof(*ssl_names) * cnt); - ssl_names_count = cnt; - for (i = 0; i < ssl_names_count; i++) { - struct ssl_conf_name *ssl_name = ssl_names + i; - CONF_VALUE *sect = sk_CONF_VALUE_value(cmd_lists, (int)i); - STACK_OF(CONF_VALUE) *cmds = NCONF_get_section(cnf, sect->value); - if (sk_CONF_VALUE_num(cmds) <= 0) { - if (cmds == NULL) - SSLerr(SSL_F_SSL_MODULE_INIT, - SSL_R_SSL_COMMAND_SECTION_NOT_FOUND); - else - SSLerr(SSL_F_SSL_MODULE_INIT, SSL_R_SSL_COMMAND_SECTION_EMPTY); - ERR_add_error_data(4, "name=", sect->name, ", value=", sect->value); - goto err; - } - ssl_name->name = BUF_strdup(sect->name); - if (ssl_name->name == NULL) - goto err; - cnt = sk_CONF_VALUE_num(cmds); - ssl_name->cmds = OPENSSL_zalloc(cnt * sizeof(struct ssl_conf_cmd)); - if (ssl_name->cmds == NULL) - goto err; - ssl_name->cmd_count = cnt; - for (j = 0; j < cnt; j++) { - const char *name; - CONF_VALUE *cmd_conf = sk_CONF_VALUE_value(cmds, (int)j); - struct ssl_conf_cmd *cmd = ssl_name->cmds + j; - /* Skip any initial dot in name */ - name = strchr(cmd_conf->name, '.'); - if (name != NULL) - name++; - else - name = cmd_conf->name; - cmd->cmd = BUF_strdup(name); - cmd->arg = BUF_strdup(cmd_conf->value); - if (cmd->cmd == NULL || cmd->arg == NULL) - goto err; - } - - } - rv = 1; - err: - if (rv == 0) - ssl_module_free(md); - return rv; -} - void SSL_add_ssl_module(void) { - CONF_module_add("ssl_conf", ssl_module_init, ssl_module_free); + /* Do nothing. This will be added automatically by libcrypto */ } -static const struct ssl_conf_name *ssl_name_find(const char *name) -{ - size_t i; - const struct ssl_conf_name *nm; - if (name == NULL) - return NULL; - for (i = 0, nm = ssl_names; i < ssl_names_count; i++, nm++) { - if (strcmp(nm->name, name) == 0) - return nm; - } - return NULL; -} - -static int ssl_do_config(SSL *s, SSL_CTX *ctx, const char *name) +static int ssl_do_config(SSL *s, SSL_CTX *ctx, const char *name, int system) { SSL_CONF_CTX *cctx = NULL; - size_t i; + size_t i, idx, cmd_count; int rv = 0; unsigned int flags; const SSL_METHOD *meth; - const struct ssl_conf_name *nm; - struct ssl_conf_cmd *cmd; + const SSL_CONF_CMD *cmds; + if (s == NULL && ctx == NULL) { SSLerr(SSL_F_SSL_DO_CONFIG, ERR_R_PASSED_NULL_PARAMETER); goto err; } - nm = ssl_name_find(name); - if (nm == NULL) { - SSLerr(SSL_F_SSL_DO_CONFIG, SSL_R_INVALID_CONFIGURATION_NAME); - ERR_add_error_data(2, "name=", name); + + if (name == NULL && system) + name = "system_default"; + if (!conf_ssl_name_find(name, &idx)) { + if (!system) { + SSLerr(SSL_F_SSL_DO_CONFIG, SSL_R_INVALID_CONFIGURATION_NAME); + ERR_add_error_data(2, "name=", name); + } goto err; } + cmds = conf_ssl_get(idx, &name, &cmd_count); cctx = SSL_CONF_CTX_new(); if (cctx == NULL) goto err; flags = SSL_CONF_FLAG_FILE; - flags |= SSL_CONF_FLAG_CERTIFICATE | SSL_CONF_FLAG_REQUIRE_PRIVATE; + if (!system) + flags |= SSL_CONF_FLAG_CERTIFICATE | SSL_CONF_FLAG_REQUIRE_PRIVATE; if (s != NULL) { meth = s->method; SSL_CONF_CTX_set_ssl(cctx, s); @@ -170,15 +62,18 @@ static int ssl_do_config(SSL *s, SSL_CTX *ctx, const char *name) if (meth->ssl_connect != ssl_undefined_function) flags |= SSL_CONF_FLAG_CLIENT; SSL_CONF_CTX_set_flags(cctx, flags); - for (i = 0, cmd = nm->cmds; i < nm->cmd_count; i++, cmd++) { - rv = SSL_CONF_cmd(cctx, cmd->cmd, cmd->arg); + for (i = 0; i < cmd_count; i++) { + char *cmdstr, *arg; + + conf_ssl_get_cmd(cmds, i, &cmdstr, &arg); + rv = SSL_CONF_cmd(cctx, cmdstr, arg); if (rv <= 0) { if (rv == -2) SSLerr(SSL_F_SSL_DO_CONFIG, SSL_R_UNKNOWN_COMMAND); else SSLerr(SSL_F_SSL_DO_CONFIG, SSL_R_BAD_VALUE); - ERR_add_error_data(6, "section=", name, ", cmd=", cmd->cmd, - ", arg=", cmd->arg); + ERR_add_error_data(6, "section=", name, ", cmd=", cmdstr, + ", arg=", arg); goto err; } } @@ -190,10 +85,15 @@ static int ssl_do_config(SSL *s, SSL_CTX *ctx, const char *name) int SSL_config(SSL *s, const char *name) { - return ssl_do_config(s, NULL, name); + return ssl_do_config(s, NULL, name, 0); } int SSL_CTX_config(SSL_CTX *ctx, const char *name) { - return ssl_do_config(NULL, ctx, name); + return ssl_do_config(NULL, ctx, name, 0); +} + +void ssl_ctx_system_config(SSL_CTX *ctx) +{ + ssl_do_config(NULL, ctx, NULL, 1); } diff --git a/ssl/ssl_rsa.c b/ssl/ssl_rsa.c index 7eff731e..172e15f9 100644 --- a/ssl/ssl_rsa.c +++ b/ssl/ssl_rsa.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c index 1873237c..541f82a8 100644 --- a/ssl/ssl_sess.c +++ b/ssl/ssl_sess.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use @@ -295,7 +295,7 @@ static int def_generate_session_id(SSL *ssl, unsigned char *id, { unsigned int retry = 0; do - if (ssl_randbytes(ssl, id, *id_len) <= 0) + if (RAND_bytes(id, *id_len) <= 0) return 0; while (SSL_has_matching_session_id(ssl, id, *id_len) && (++retry < MAX_SESS_ID_ATTEMPTS)) ; @@ -417,7 +417,13 @@ int ssl_get_new_session(SSL *s, int session) s->session = NULL; if (session) { - if (!ssl_generate_session_id(s, ss)) { + if (SSL_IS_TLS13(s)) { + /* + * We generate the session id while constructing the + * NewSessionTicket in TLSv1.3. + */ + ss->session_id_length = 0; + } else if (!ssl_generate_session_id(s, ss)) { /* SSLfatal() already called */ SSL_SESSION_free(ss); return 0; @@ -479,9 +485,14 @@ int ssl_get_prev_session(SSL *s, CLIENTHELLO_MSG *hello) SSL_SESSION *ret = NULL; int fatal = 0, discard; int try_session_cache = 0; - SSL_TICKET_RETURN r; + SSL_TICKET_STATUS r; if (SSL_IS_TLS13(s)) { + /* + * By default we will send a new ticket. This can be overridden in the + * ticket processing. + */ + s->ext.ticket_expected = 1; if (!tls_parse_extension(s, TLSEXT_IDX_psk_kex_modes, SSL_EXT_CLIENT_HELLO, hello->pre_proc_exts, NULL, 0) @@ -755,10 +766,10 @@ static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck) if ((c != NULL) && (c->session_id_length != 0)) { if (lck) CRYPTO_THREAD_write_lock(ctx->lock); - if ((r = lh_SSL_SESSION_retrieve(ctx->sessions, c)) == c) { + if ((r = lh_SSL_SESSION_retrieve(ctx->sessions, c)) != NULL) { ret = 1; - r = lh_SSL_SESSION_delete(ctx->sessions, c); - SSL_SESSION_list_remove(ctx, c); + r = lh_SSL_SESSION_delete(ctx->sessions, r); + SSL_SESSION_list_remove(ctx, r); } c->not_resumable = 1; @@ -781,7 +792,6 @@ void SSL_SESSION_free(SSL_SESSION *ss) if (ss == NULL) return; - CRYPTO_DOWN_REF(&ss->references, &i, ss->lock); REF_PRINT_COUNT("SSL_SESSION", ss); if (i > 0) diff --git a/ssl/ssl_txt.c b/ssl/ssl_txt.c index b1254b09..2056de96 100644 --- a/ssl/ssl_txt.c +++ b/ssl/ssl_txt.c @@ -44,18 +44,18 @@ int SSL_SESSION_print(BIO *bp, const SSL_SESSION *x) if (x->cipher == NULL) { if (((x->cipher_id) & 0xff000000) == 0x02000000) { - if (BIO_printf - (bp, " Cipher : %06lX\n", x->cipher_id & 0xffffff) <= 0) + if (BIO_printf(bp, " Cipher : %06lX\n", + x->cipher_id & 0xffffff) <= 0) goto err; } else { - if (BIO_printf - (bp, " Cipher : %04lX\n", x->cipher_id & 0xffff) <= 0) + if (BIO_printf(bp, " Cipher : %04lX\n", + x->cipher_id & 0xffff) <= 0) goto err; } } else { - if (BIO_printf - (bp, " Cipher : %s\n", - ((x->cipher == NULL) ? "unknown" : x->cipher->name)) <= 0) + if (BIO_printf(bp, " Cipher : %s\n", + ((x->cipher->name == NULL) ? "unknown" + : x->cipher->name)) <= 0) goto err; } if (BIO_puts(bp, " Session-ID: ") <= 0) diff --git a/ssl/statem/extensions.c b/ssl/statem/extensions.c index 0641a253..7f9fd5f0 100644 --- a/ssl/statem/extensions.c +++ b/ssl/statem/extensions.c @@ -307,9 +307,8 @@ static const EXTENSION_DEFINITION ext_defs[] = { }, { TLSEXT_TYPE_supported_versions, - SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_2_SERVER_HELLO - | SSL_EXT_TLS1_3_SERVER_HELLO | SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST - | SSL_EXT_TLS_IMPLEMENTATION_ONLY, + SSL_EXT_CLIENT_HELLO | SSL_EXT_TLS1_3_SERVER_HELLO + | SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST | SSL_EXT_TLS_IMPLEMENTATION_ONLY, NULL, /* Processed inline as part of version selection */ NULL, tls_parse_stoc_supported_versions, @@ -1560,7 +1559,8 @@ int tls_psk_do_binder(SSL *s, const EVP_MD *md, const unsigned char *msgstart, goto err; } - mackey = EVP_PKEY_new_mac_key(EVP_PKEY_HMAC, NULL, finishedkey, hashsize); + mackey = EVP_PKEY_new_raw_private_key(EVP_PKEY_HMAC, NULL, finishedkey, + hashsize); if (mackey == NULL) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_PSK_DO_BINDER, ERR_R_INTERNAL_ERROR); diff --git a/ssl/statem/extensions_clnt.c b/ssl/statem/extensions_clnt.c index 9bf2d1cb..cc4563b3 100644 --- a/ssl/statem/extensions_clnt.c +++ b/ssl/statem/extensions_clnt.c @@ -538,7 +538,9 @@ EXT_RETURN tls_construct_ctos_supported_versions(SSL *s, WPACKET *pkt, for (currv = max_version; currv >= min_version; currv--) { /* TODO(TLS1.3): Remove this first if clause prior to release!! */ if (currv == TLS1_3_VERSION) { - if (!WPACKET_put_bytes_u16(pkt, TLS1_3_VERSION_DRAFT)) { + if (!WPACKET_put_bytes_u16(pkt, TLS1_3_VERSION_DRAFT) + || !WPACKET_put_bytes_u16(pkt, TLS1_3_VERSION_DRAFT_27) + || !WPACKET_put_bytes_u16(pkt, TLS1_3_VERSION_DRAFT_26)) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_CONSTRUCT_CTOS_SUPPORTED_VERSIONS, ERR_R_INTERNAL_ERROR); @@ -744,7 +746,9 @@ EXT_RETURN tls_construct_ctos_early_data(SSL *s, WPACKET *pkt, unsigned int context, X509 *x, size_t chainidx) { +#ifndef OPENSSL_NO_PSK char identity[PSK_MAX_IDENTITY_LEN + 1]; +#endif /* OPENSSL_NO_PSK */ const unsigned char *id = NULL; size_t idlen = 0; SSL_SESSION *psksess = NULL; @@ -764,6 +768,7 @@ EXT_RETURN tls_construct_ctos_early_data(SSL *s, WPACKET *pkt, return EXT_RETURN_FAIL; } +#ifndef OPENSSL_NO_PSK if (psksess == NULL && s->psk_client_callback != NULL) { unsigned char psk[PSK_MAX_PSK_LEN]; size_t psklen = 0; @@ -815,6 +820,7 @@ EXT_RETURN tls_construct_ctos_early_data(SSL *s, WPACKET *pkt, OPENSSL_cleanse(psk, psklen); } } +#endif /* OPENSSL_NO_PSK */ SSL_SESSION_free(s->psksession); s->psksession = psksess; @@ -1675,7 +1681,15 @@ int tls_parse_stoc_alpn(SSL *s, PACKET *pkt, unsigned int context, X509 *x, s->ext.early_data_ok = 0; } if (!s->hit) { - /* If a new session then update it with the selected ALPN */ + /* + * This is a new session and so alpn_selected should have been + * initialised to NULL. We should update it with the selected ALPN. + */ + if (!ossl_assert(s->session->ext.alpn_selected == NULL)) { + SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_PARSE_STOC_ALPN, + ERR_R_INTERNAL_ERROR); + return 0; + } s->session->ext.alpn_selected = OPENSSL_memdup(s->s3->alpn_selected, s->s3->alpn_selected_len); if (s->session->ext.alpn_selected == NULL) { @@ -1777,24 +1791,26 @@ int tls_parse_stoc_supported_versions(SSL *s, PACKET *pkt, unsigned int context, } /* TODO(TLS1.3): Remove this before release */ - if (version == TLS1_3_VERSION_DRAFT) + if (version == TLS1_3_VERSION_DRAFT + || version == TLS1_3_VERSION_DRAFT_27 + || version == TLS1_3_VERSION_DRAFT_26) version = TLS1_3_VERSION; - /* We ignore this extension for HRRs except to sanity check it */ - if (context == SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST) { - /* - * The only protocol version we support which has an HRR message is - * TLSv1.3, therefore we shouldn't be getting an HRR for anything else. - */ - if (version != TLS1_3_VERSION) { - SSLfatal(s, SSL_AD_PROTOCOL_VERSION, - SSL_F_TLS_PARSE_STOC_SUPPORTED_VERSIONS, - SSL_R_BAD_HRR_VERSION); - return 0; - } - return 1; + /* + * The only protocol version we support which is valid in this extension in + * a ServerHello is TLSv1.3 therefore we shouldn't be getting anything else. + */ + if (version != TLS1_3_VERSION) { + SSLfatal(s, SSL_AD_ILLEGAL_PARAMETER, + SSL_F_TLS_PARSE_STOC_SUPPORTED_VERSIONS, + SSL_R_BAD_PROTOCOL_VERSION_NUMBER); + return 0; } + /* We ignore this extension for HRRs except to sanity check it */ + if (context == SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST) + return 1; + /* We just set it here. We validate it in ssl_choose_client_version */ s->version = version; diff --git a/ssl/statem/extensions_srvr.c b/ssl/statem/extensions_srvr.c index 425cd80e..7c756c03 100644 --- a/ssl/statem/extensions_srvr.c +++ b/ssl/statem/extensions_srvr.c @@ -324,6 +324,10 @@ int tls_parse_ctos_status_request(SSL *s, PACKET *pkt, unsigned int context, { PACKET responder_id_list, exts; + /* We ignore this in a resumption handshake */ + if (s->hit) + return 1; + /* Not defined if we get one of these in a client Certificate */ if (x != NULL) return 1; @@ -717,6 +721,7 @@ int tls_parse_ctos_key_share(SSL *s, PACKET *pkt, unsigned int context, X509 *x, int tls_parse_ctos_cookie(SSL *s, PACKET *pkt, unsigned int context, X509 *x, size_t chainidx) { +#ifndef OPENSSL_NO_TLS1_3 unsigned int format, version, key_share, group_id; EVP_MD_CTX *hctx; EVP_PKEY *pkey; @@ -752,9 +757,10 @@ int tls_parse_ctos_cookie(SSL *s, PACKET *pkt, unsigned int context, X509 *x, /* Verify the HMAC of the cookie */ hctx = EVP_MD_CTX_create(); - pkey = EVP_PKEY_new_mac_key(EVP_PKEY_HMAC, NULL, - s->session_ctx->ext.cookie_hmac_key, - sizeof(s->session_ctx->ext.cookie_hmac_key)); + pkey = EVP_PKEY_new_raw_private_key(EVP_PKEY_HMAC, NULL, + s->session_ctx->ext.cookie_hmac_key, + sizeof(s->session_ctx->ext + .cookie_hmac_key)); if (hctx == NULL || pkey == NULL) { EVP_MD_CTX_free(hctx); EVP_PKEY_free(pkey); @@ -887,7 +893,7 @@ int tls_parse_ctos_cookie(SSL *s, PACKET *pkt, unsigned int context, X509 *x, if (!WPACKET_put_bytes_u16(&hrrpkt, TLSEXT_TYPE_supported_versions) || !WPACKET_start_sub_packet_u16(&hrrpkt) /* TODO(TLS1.3): Fix this before release */ - || !WPACKET_put_bytes_u16(&hrrpkt, TLS1_3_VERSION_DRAFT) + || !WPACKET_put_bytes_u16(&hrrpkt, s->version_draft) || !WPACKET_close(&hrrpkt)) { WPACKET_cleanup(&hrrpkt); SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_PARSE_CTOS_COOKIE, @@ -931,6 +937,7 @@ int tls_parse_ctos_cookie(SSL *s, PACKET *pkt, unsigned int context, X509 *x, s->hello_retry_request = 1; s->ext.cookieok = 1; +#endif return 1; } @@ -1025,6 +1032,7 @@ int tls_parse_ctos_psk(SSL *s, PACKET *pkt, unsigned int context, X509 *x, return 0; } + s->ext.ticket_expected = 0; for (id = 0; PACKET_remaining(&identities) != 0; id++) { PACKET identity; unsigned long ticket_agel; @@ -1046,6 +1054,7 @@ int tls_parse_ctos_psk(SSL *s, PACKET *pkt, unsigned int context, X509 *x, return 0; } +#ifndef OPENSSL_NO_PSK if(sess == NULL && s->psk_server_callback != NULL && idlen <= PSK_MAX_IDENTITY_LEN) { @@ -1096,6 +1105,7 @@ int tls_parse_ctos_psk(SSL *s, PACKET *pkt, unsigned int context, X509 *x, OPENSSL_cleanse(pskdata, pskdatalen); } } +#endif /* OPENSSL_NO_PSK */ if (sess != NULL) { /* We found a PSK */ @@ -1120,9 +1130,17 @@ int tls_parse_ctos_psk(SSL *s, PACKET *pkt, unsigned int context, X509 *x, s->ext.early_data_ok = 1; } else { uint32_t ticket_age = 0, now, agesec, agems; - int ret = tls_decrypt_ticket(s, PACKET_data(&identity), - PACKET_remaining(&identity), NULL, 0, - &sess); + int ret; + + ret = tls_decrypt_ticket(s, PACKET_data(&identity), + PACKET_remaining(&identity), NULL, 0, + &sess); + + if (ret == SSL_TICKET_EMPTY) { + SSLfatal(s, SSL_AD_DECODE_ERROR, SSL_F_TLS_PARSE_CTOS_PSK, + SSL_R_BAD_EXTENSION); + return 0; + } if (ret == SSL_TICKET_FATAL_ERR_MALLOC || ret == SSL_TICKET_FATAL_ERR_OTHER) { @@ -1130,9 +1148,17 @@ int tls_parse_ctos_psk(SSL *s, PACKET *pkt, unsigned int context, X509 *x, SSL_F_TLS_PARSE_CTOS_PSK, ERR_R_INTERNAL_ERROR); return 0; } - if (ret == SSL_TICKET_NO_DECRYPT) + if (ret == SSL_TICKET_NONE || ret == SSL_TICKET_NO_DECRYPT) continue; + /* Check for replay */ + if (s->max_early_data > 0 + && !SSL_CTX_remove_session(s->session_ctx, sess)) { + SSL_SESSION_free(sess); + sess = NULL; + continue; + } + ticket_age = (uint32_t)ticket_agel; now = (uint32_t)time(NULL); agesec = now - (uint32_t)sess->time; @@ -1572,13 +1598,17 @@ EXT_RETURN tls_construct_stoc_supported_versions(SSL *s, WPACKET *pkt, unsigned int context, X509 *x, size_t chainidx) { - if (!SSL_IS_TLS13(s)) - return EXT_RETURN_NOT_SENT; + if (!ossl_assert(SSL_IS_TLS13(s))) { + SSLfatal(s, SSL_AD_INTERNAL_ERROR, + SSL_F_TLS_CONSTRUCT_STOC_SUPPORTED_VERSIONS, + ERR_R_INTERNAL_ERROR); + return EXT_RETURN_FAIL; + } if (!WPACKET_put_bytes_u16(pkt, TLSEXT_TYPE_supported_versions) || !WPACKET_start_sub_packet_u16(pkt) /* TODO(TLS1.3): Update to remove the TLSv1.3 draft indicator */ - || !WPACKET_put_bytes_u16(pkt, TLS1_3_VERSION_DRAFT) + || !WPACKET_put_bytes_u16(pkt, s->version_draft) || !WPACKET_close(pkt)) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_CONSTRUCT_STOC_SUPPORTED_VERSIONS, @@ -1666,14 +1696,16 @@ EXT_RETURN tls_construct_stoc_key_share(SSL *s, WPACKET *pkt, /* SSLfatal() already called */ return EXT_RETURN_FAIL; } -#endif - return EXT_RETURN_SENT; +#else + return EXT_RETURN_FAIL; +#endif } EXT_RETURN tls_construct_stoc_cookie(SSL *s, WPACKET *pkt, unsigned int context, X509 *x, size_t chainidx) { +#ifndef OPENSSL_NO_TLS1_3 unsigned char *hashval1, *hashval2, *appcookie1, *appcookie2, *cookie; unsigned char *hmac, *hmac2; size_t startlen, ciphlen, totcookielen, hashlen, hmaclen, appcookielen; @@ -1758,9 +1790,10 @@ EXT_RETURN tls_construct_stoc_cookie(SSL *s, WPACKET *pkt, unsigned int context, /* HMAC the cookie */ hctx = EVP_MD_CTX_create(); - pkey = EVP_PKEY_new_mac_key(EVP_PKEY_HMAC, NULL, - s->session_ctx->ext.cookie_hmac_key, - sizeof(s->session_ctx->ext.cookie_hmac_key)); + pkey = EVP_PKEY_new_raw_private_key(EVP_PKEY_HMAC, NULL, + s->session_ctx->ext.cookie_hmac_key, + sizeof(s->session_ctx->ext + .cookie_hmac_key)); if (hctx == NULL || pkey == NULL) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_CONSTRUCT_STOC_COOKIE, ERR_R_MALLOC_FAILURE); @@ -1797,6 +1830,9 @@ EXT_RETURN tls_construct_stoc_cookie(SSL *s, WPACKET *pkt, unsigned int context, EVP_MD_CTX_free(hctx); EVP_PKEY_free(pkey); return ret; +#else + return EXT_RETURN_FAIL; +#endif } EXT_RETURN tls_construct_stoc_cryptopro_bug(SSL *s, WPACKET *pkt, diff --git a/ssl/statem/statem.c b/ssl/statem/statem.c index a5748534..e8367696 100644 --- a/ssl/statem/statem.c +++ b/ssl/statem/statem.c @@ -123,7 +123,7 @@ void ossl_statem_fatal(SSL *s, int al, int func, int reason, const char *file, s->statem.in_init = 1; s->statem.state = MSG_FLOW_ERROR; ERR_put_error(ERR_LIB_SSL, func, reason, file, line); - if (al != SSL_AD_NO_ALERT) + if (al != SSL_AD_NO_ALERT && !s->statem.invalid_enc_write_ctx) ssl3_send_alert(s, SSL3_AL_FATAL, al); } @@ -589,10 +589,8 @@ static SUB_STATE_RETURN read_state_machine(SSL *s) * Validate that we are allowed to move to the new state and move * to that state if so */ - if (!transition(s, mt)) { - check_fatal(s, SSL_F_READ_STATE_MACHINE); + if (!transition(s, mt)) return SUB_STATE_ERROR; - } if (s->s3->tmp.message_size > max_message_size(s)) { SSLfatal(s, SSL_AD_ILLEGAL_PARAMETER, SSL_F_READ_STATE_MACHINE, diff --git a/ssl/statem/statem.h b/ssl/statem/statem.h index 19357187..95dd8812 100644 --- a/ssl/statem/statem.h +++ b/ssl/statem/statem.h @@ -100,6 +100,7 @@ struct ossl_statem_st { /* Should we skip the CertificateVerify message? */ unsigned int no_cert_verify; int use_timer; + int invalid_enc_write_ctx; }; typedef struct ossl_statem_st OSSL_STATEM; diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index d770706a..6c0f8be5 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -11,6 +11,7 @@ #include #include +#include #include "../ssl_locl.h" #include "statem_locl.h" #include @@ -374,6 +375,20 @@ int ossl_statem_client_read_transition(SSL *s, int mt) err: /* No valid transition found */ + if (SSL_IS_DTLS(s) && mt == SSL3_MT_CHANGE_CIPHER_SPEC) { + BIO *rbio; + + /* + * CCS messages don't have a message sequence number so this is probably + * because of an out-of-order CCS. We'll just drop it. + */ + s->init_num = 0; + s->rwstate = SSL_READING; + rbio = SSL_get_rbio(s); + BIO_clear_retry_flags(rbio); + BIO_set_retry_read(rbio); + return 0; + } SSLfatal(s, SSL3_AD_UNEXPECTED_MESSAGE, SSL_F_OSSL_STATEM_CLIENT_READ_TRANSITION, SSL_R_UNEXPECTED_MESSAGE); @@ -1188,8 +1203,7 @@ int tls_construct_client_hello(SSL *s, WPACKET *pkt) s->tmp_session_id_len = sess_id_len; session_id = s->tmp_session_id; if (s->hello_retry_request == SSL_HRR_NONE - && ssl_randbytes(s, s->tmp_session_id, - sess_id_len) <= 0) { + && RAND_bytes(s->tmp_session_id, sess_id_len) <= 0) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_CONSTRUCT_CLIENT_HELLO, ERR_R_INTERNAL_ERROR); @@ -1199,14 +1213,14 @@ int tls_construct_client_hello(SSL *s, WPACKET *pkt) sess_id_len = 0; } } else { + assert(s->session->session_id_length <= sizeof(s->session->session_id)); sess_id_len = s->session->session_id_length; if (s->version == TLS1_3_VERSION) { s->tmp_session_id_len = sess_id_len; memcpy(s->tmp_session_id, s->session->session_id, sess_id_len); } } - if (sess_id_len > sizeof(s->session->session_id) - || !WPACKET_start_sub_packet_u8(pkt) + if (!WPACKET_start_sub_packet_u8(pkt) || (sess_id_len != 0 && !WPACKET_memcpy(pkt, session_id, sess_id_len)) || !WPACKET_close(pkt)) { @@ -1898,7 +1912,7 @@ MSG_PROCESS_RETURN tls_process_server_certificate(SSL *s, PACKET *pkt) * set. The *documented* interface remains the same. */ if (s->verify_mode != SSL_VERIFY_NONE && i <= 0) { - SSLfatal(s, ssl_verify_alarm_type(s->verify_result), + SSLfatal(s, ssl_x509err2alert(s->verify_result), SSL_F_TLS_PROCESS_SERVER_CERTIFICATE, SSL_R_CERTIFICATE_VERIFY_FAILED); goto err; @@ -2192,7 +2206,8 @@ static int tls_process_ske_ecdhe(SSL *s, PACKET *pkt, EVP_PKEY **pkey) * Check curve is named curve type and one of our preferences, if not * server has sent an invalid curve. */ - if (curve_type != NAMED_CURVE_TYPE || !tls1_check_group_id(s, curve_id)) { + if (curve_type != NAMED_CURVE_TYPE + || !tls1_check_group_id(s, curve_id, 1)) { SSLfatal(s, SSL_AD_ILLEGAL_PARAMETER, SSL_F_TLS_PROCESS_SKE_ECDHE, SSL_R_WRONG_CURVE); return 0; @@ -2575,7 +2590,6 @@ MSG_PROCESS_RETURN tls_process_new_session_ticket(SSL *s, PACKET *pkt) * cache. */ if (SSL_IS_TLS13(s) || s->session->session_id_length > 0) { - int i = s->session_ctx->session_cache_mode; SSL_SESSION *new_sess; /* * We reused an existing session, so we need to replace it with a new @@ -2588,13 +2602,6 @@ MSG_PROCESS_RETURN tls_process_new_session_ticket(SSL *s, PACKET *pkt) goto err; } - if (i & SSL_SESS_CACHE_CLIENT) { - /* - * Remove the old session from the cache. We carry on if this fails - */ - SSL_CTX_remove_session(s->session_ctx, s->session); - } - SSL_SESSION_free(s->session); s->session = new_sess; } @@ -2925,7 +2932,7 @@ static int tls_construct_cke_rsa(SSL *s, WPACKET *pkt) pms[0] = s->client_version >> 8; pms[1] = s->client_version & 0xff; /* TODO(size_t): Convert this function */ - if (ssl_randbytes(s, pms + 2, (int)(pmslen - 2)) <= 0) { + if (RAND_bytes(pms + 2, (int)(pmslen - 2)) <= 0) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_CONSTRUCT_CKE_RSA, ERR_R_MALLOC_FAILURE); goto err; @@ -3146,7 +3153,7 @@ static int tls_construct_cke_gost(SSL *s, WPACKET *pkt) /* Generate session key * TODO(size_t): Convert this function */ - || ssl_randbytes(s, pms, (int)pmslen) <= 0) { + || RAND_bytes(pms, (int)pmslen) <= 0) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_CONSTRUCT_CKE_GOST, ERR_R_INTERNAL_ERROR); goto err; diff --git a/ssl/statem/statem_dtls.c b/ssl/statem/statem_dtls.c index 9bda18b8..b016fa7c 100644 --- a/ssl/statem/statem_dtls.c +++ b/ssl/statem/statem_dtls.c @@ -59,13 +59,14 @@ static hm_fragment *dtls1_hm_fragment_new(size_t frag_len, int reassembly) unsigned char *buf = NULL; unsigned char *bitmask = NULL; - frag = OPENSSL_malloc(sizeof(*frag)); - if (frag == NULL) + if ((frag = OPENSSL_malloc(sizeof(*frag))) == NULL) { + SSLerr(SSL_F_DTLS1_HM_FRAGMENT_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } if (frag_len) { - buf = OPENSSL_malloc(frag_len); - if (buf == NULL) { + if ((buf = OPENSSL_malloc(frag_len)) == NULL) { + SSLerr(SSL_F_DTLS1_HM_FRAGMENT_NEW, ERR_R_MALLOC_FAILURE); OPENSSL_free(frag); return NULL; } @@ -78,6 +79,7 @@ static hm_fragment *dtls1_hm_fragment_new(size_t frag_len, int reassembly) if (reassembly) { bitmask = OPENSSL_zalloc(RSMBLY_BITMASK_SIZE(frag_len)); if (bitmask == NULL) { + SSLerr(SSL_F_DTLS1_HM_FRAGMENT_NEW, ERR_R_MALLOC_FAILURE); OPENSSL_free(buf); OPENSSL_free(frag); return NULL; @@ -502,7 +504,7 @@ static int dtls1_retrieve_buffered_fragment(SSL *s, size_t *len) /* Calls SSLfatal() as required */ ret = dtls1_preprocess_fragment(s, &frag->msg_header); - if (ret) { + if (ret && frag->msg_header.frag_len > 0) { unsigned char *p = (unsigned char *)s->init_buf->data + DTLS1_HM_HEADER_LENGTH; memcpy(&p[frag->msg_header.frag_off], frag->fragment, @@ -922,9 +924,14 @@ int dtls_construct_change_cipher_spec(SSL *s, WPACKET *pkt) } #ifndef OPENSSL_NO_SCTP +/* + * Wait for a dry event. Should only be called at a point in the handshake + * where we are not expecting any data from the peer except an alert. + */ WORK_STATE dtls_wait_for_dry(SSL *s) { - int ret; + int ret, errtype; + size_t len; /* read app data until dry event */ ret = BIO_dgram_sctp_wait_for_dry(SSL_get_wbio(s)); @@ -935,6 +942,19 @@ WORK_STATE dtls_wait_for_dry(SSL *s) } if (ret == 0) { + /* + * We're not expecting any more messages from the peer at this point - + * but we could get an alert. If an alert is waiting then we will never + * return successfully. Therefore we attempt to read a message. This + * should never succeed but will process any waiting alerts. + */ + if (dtls_get_reassembled_message(s, &errtype, &len)) { + /* The call succeeded! This should never happen */ + SSLfatal(s, SSL_AD_UNEXPECTED_MESSAGE, SSL_F_DTLS_WAIT_FOR_DRY, + SSL_R_UNEXPECTED_MESSAGE); + return WORK_ERROR; + } + s->s3->in_read_app_data = 2; s->rwstate = SSL_READING; BIO_clear_retry_flags(SSL_get_rbio(s)); diff --git a/ssl/statem/statem_lib.c b/ssl/statem/statem_lib.c index 82a71197..91d304e2 100644 --- a/ssl/statem/statem_lib.c +++ b/ssl/statem/statem_lib.c @@ -19,6 +19,14 @@ #include #include +/* + * Map error codes to TLS/SSL alart types. + */ +typedef struct x509err2alert_st { + int x509err; + int alert; +} X509ERR2ALERT; + /* Fixed value used in the ServerHello random field to identify an HRR */ const unsigned char hrrrandom[] = { 0xcf, 0x21, 0xad, 0x74, 0xe5, 0x9a, 0x61, 0x11, 0xbe, 0x1d, 0x8c, 0x02, @@ -1004,15 +1012,6 @@ WORK_STATE tls_finish_handshake(SSL *s, WORK_STATE wst, int clearbufs, int stop) int discard; void (*cb) (const SSL *ssl, int type, int val) = NULL; -#ifndef OPENSSL_NO_SCTP - if (SSL_IS_DTLS(s) && BIO_dgram_is_sctp(SSL_get_wbio(s))) { - WORK_STATE ret; - ret = dtls_wait_for_dry(s); - if (ret != WORK_FINISHED_CONTINUE) - return ret; - } -#endif - if (clearbufs) { if (!SSL_IS_DTLS(s)) { /* @@ -1034,21 +1033,40 @@ WORK_STATE tls_finish_handshake(SSL *s, WORK_STATE wst, int clearbufs, int stop) && s->post_handshake_auth == SSL_PHA_REQUESTED) s->post_handshake_auth = SSL_PHA_EXT_SENT; + /* + * Only set if there was a Finished message and this isn't after a TLSv1.3 + * post handshake exchange + */ if (s->statem.cleanuphand) { /* skipped if we just sent a HelloRequest */ s->renegotiate = 0; s->new_session = 0; s->statem.cleanuphand = 0; + s->ext.ticket_expected = 0; ssl3_cleanup_key_block(s); if (s->server) { - ssl_update_cache(s, SSL_SESS_CACHE_SERVER); + /* + * In TLSv1.3 we update the cache as part of constructing the + * NewSessionTicket + */ + if (!SSL_IS_TLS13(s)) + ssl_update_cache(s, SSL_SESS_CACHE_SERVER); /* N.B. s->ctx may not equal s->session_ctx */ CRYPTO_atomic_add(&s->ctx->stats.sess_accept_good, 1, &discard, s->ctx->lock); s->handshake_func = ossl_statem_accept; + + if (SSL_IS_DTLS(s) && !s->hit) { + /* + * We are finishing after the client. We start the timer going + * in case there are any retransmits of our final flight + * required. + */ + dtls1_start_timer(s); + } } else { /* * In TLSv1.3 we update the cache as part of processing the @@ -1063,16 +1081,17 @@ WORK_STATE tls_finish_handshake(SSL *s, WORK_STATE wst, int clearbufs, int stop) s->handshake_func = ossl_statem_connect; CRYPTO_atomic_add(&s->session_ctx->stats.sess_connect_good, 1, &discard, s->session_ctx->lock); + + if (SSL_IS_DTLS(s) && s->hit) { + /* + * We are finishing after the server. We start the timer going + * in case there are any retransmits of our final flight + * required. + */ + dtls1_start_timer(s); + } } - if (s->info_callback != NULL) - cb = s->info_callback; - else if (s->ctx->info_callback != NULL) - cb = s->ctx->info_callback; - - if (cb != NULL) - cb(s, SSL_CB_HANDSHAKE_DONE, 1); - if (SSL_IS_DTLS(s)) { /* done with handshaking */ s->d1->handshake_read_seq = 0; @@ -1082,10 +1101,23 @@ WORK_STATE tls_finish_handshake(SSL *s, WORK_STATE wst, int clearbufs, int stop) } } - if (!stop) - return WORK_FINISHED_CONTINUE; + if (s->info_callback != NULL) + cb = s->info_callback; + else if (s->ctx->info_callback != NULL) + cb = s->ctx->info_callback; + /* The callback may expect us to not be in init at handshake done */ ossl_statem_set_in_init(s, 0); + + if (cb != NULL) + cb(s, SSL_CB_HANDSHAKE_DONE, 1); + + if (!stop) { + /* If we've got more work to do we go back into init */ + ossl_statem_set_in_init(s, 1); + return WORK_FINISHED_CONTINUE; + } + return WORK_FINISHED_STOP; } @@ -1281,73 +1313,59 @@ int tls_get_message_body(SSL *s, size_t *len) return 1; } -int ssl_verify_alarm_type(long type) -{ - int al; +static const X509ERR2ALERT x509table[] = { + {X509_V_ERR_APPLICATION_VERIFICATION, SSL_AD_HANDSHAKE_FAILURE}, + {X509_V_ERR_CA_KEY_TOO_SMALL, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_CA_MD_TOO_WEAK, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_CERT_CHAIN_TOO_LONG, SSL_AD_UNKNOWN_CA}, + {X509_V_ERR_CERT_HAS_EXPIRED, SSL_AD_CERTIFICATE_EXPIRED}, + {X509_V_ERR_CERT_NOT_YET_VALID, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_CERT_REJECTED, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_CERT_REVOKED, SSL_AD_CERTIFICATE_REVOKED}, + {X509_V_ERR_CERT_SIGNATURE_FAILURE, SSL_AD_DECRYPT_ERROR}, + {X509_V_ERR_CERT_UNTRUSTED, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_CRL_HAS_EXPIRED, SSL_AD_CERTIFICATE_EXPIRED}, + {X509_V_ERR_CRL_NOT_YET_VALID, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_CRL_SIGNATURE_FAILURE, SSL_AD_DECRYPT_ERROR}, + {X509_V_ERR_DANE_NO_MATCH, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT, SSL_AD_UNKNOWN_CA}, + {X509_V_ERR_EE_KEY_TOO_SMALL, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_EMAIL_MISMATCH, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_HOSTNAME_MISMATCH, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_INVALID_CA, SSL_AD_UNKNOWN_CA}, + {X509_V_ERR_INVALID_CALL, SSL_AD_INTERNAL_ERROR}, + {X509_V_ERR_INVALID_PURPOSE, SSL_AD_UNSUPPORTED_CERTIFICATE}, + {X509_V_ERR_IP_ADDRESS_MISMATCH, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_OUT_OF_MEM, SSL_AD_INTERNAL_ERROR}, + {X509_V_ERR_PATH_LENGTH_EXCEEDED, SSL_AD_UNKNOWN_CA}, + {X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN, SSL_AD_UNKNOWN_CA}, + {X509_V_ERR_STORE_LOOKUP, SSL_AD_INTERNAL_ERROR}, + {X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE, SSL_AD_BAD_CERTIFICATE}, + {X509_V_ERR_UNABLE_TO_GET_CRL, SSL_AD_UNKNOWN_CA}, + {X509_V_ERR_UNABLE_TO_GET_CRL_ISSUER, SSL_AD_UNKNOWN_CA}, + {X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT, SSL_AD_UNKNOWN_CA}, + {X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY, SSL_AD_UNKNOWN_CA}, + {X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE, SSL_AD_UNKNOWN_CA}, + {X509_V_ERR_UNSPECIFIED, SSL_AD_INTERNAL_ERROR}, - switch (type) { - case X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT: - case X509_V_ERR_UNABLE_TO_GET_CRL: - case X509_V_ERR_UNABLE_TO_GET_CRL_ISSUER: - al = SSL_AD_UNKNOWN_CA; - break; - case X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE: - case X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE: - case X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY: - case X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD: - case X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD: - case X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD: - case X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD: - case X509_V_ERR_CERT_NOT_YET_VALID: - case X509_V_ERR_CRL_NOT_YET_VALID: - case X509_V_ERR_CERT_UNTRUSTED: - case X509_V_ERR_CERT_REJECTED: - case X509_V_ERR_HOSTNAME_MISMATCH: - case X509_V_ERR_EMAIL_MISMATCH: - case X509_V_ERR_IP_ADDRESS_MISMATCH: - case X509_V_ERR_DANE_NO_MATCH: - case X509_V_ERR_EE_KEY_TOO_SMALL: - case X509_V_ERR_CA_KEY_TOO_SMALL: - case X509_V_ERR_CA_MD_TOO_WEAK: - al = SSL_AD_BAD_CERTIFICATE; - break; - case X509_V_ERR_CERT_SIGNATURE_FAILURE: - case X509_V_ERR_CRL_SIGNATURE_FAILURE: - al = SSL_AD_DECRYPT_ERROR; - break; - case X509_V_ERR_CERT_HAS_EXPIRED: - case X509_V_ERR_CRL_HAS_EXPIRED: - al = SSL_AD_CERTIFICATE_EXPIRED; - break; - case X509_V_ERR_CERT_REVOKED: - al = SSL_AD_CERTIFICATE_REVOKED; - break; - case X509_V_ERR_UNSPECIFIED: - case X509_V_ERR_OUT_OF_MEM: - case X509_V_ERR_INVALID_CALL: - case X509_V_ERR_STORE_LOOKUP: - al = SSL_AD_INTERNAL_ERROR; - break; - case X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT: - case X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN: - case X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: - case X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE: - case X509_V_ERR_CERT_CHAIN_TOO_LONG: - case X509_V_ERR_PATH_LENGTH_EXCEEDED: - case X509_V_ERR_INVALID_CA: - al = SSL_AD_UNKNOWN_CA; - break; - case X509_V_ERR_APPLICATION_VERIFICATION: - al = SSL_AD_HANDSHAKE_FAILURE; - break; - case X509_V_ERR_INVALID_PURPOSE: - al = SSL_AD_UNSUPPORTED_CERTIFICATE; - break; - default: - al = SSL_AD_CERTIFICATE_UNKNOWN; - break; - } - return al; + /* Last entry; return this if we don't find the value above. */ + {X509_V_OK, SSL_AD_CERTIFICATE_UNKNOWN} +}; + +int ssl_x509err2alert(int x509err) +{ + const X509ERR2ALERT *tp; + + for (tp = x509table; tp->x509err != X509_V_OK; ++tp) + if (tp->x509err == x509err) + break; + return tp->alert; } int ssl_allow_compression(SSL *s) @@ -1677,6 +1695,8 @@ int ssl_choose_server_version(SSL *s, CLIENTHELLO_MSG *hello, DOWNGRADE *dgrd) unsigned int best_vers = 0; const SSL_METHOD *best_method = NULL; PACKET versionslist; + /* TODO(TLS1.3): Remove this before release */ + unsigned int orig_candidate = 0; suppversions->parsed = 1; @@ -1687,8 +1707,18 @@ int ssl_choose_server_version(SSL *s, CLIENTHELLO_MSG *hello, DOWNGRADE *dgrd) while (PACKET_get_net_2(&versionslist, &candidate_vers)) { /* TODO(TLS1.3): Remove this before release */ - if (candidate_vers == TLS1_3_VERSION_DRAFT) + if (candidate_vers == TLS1_3_VERSION_DRAFT + || candidate_vers == TLS1_3_VERSION_DRAFT_27 + || candidate_vers == TLS1_3_VERSION_DRAFT_26) { + if (best_vers == TLS1_3_VERSION + && orig_candidate > candidate_vers) + continue; + orig_candidate = candidate_vers; candidate_vers = TLS1_3_VERSION; + } else if (candidate_vers == TLS1_3_VERSION) { + /* Don't actually accept real TLSv1.3 */ + continue; + } /* * TODO(TLS1.3): There is some discussion on the TLS list about * whether to ignore versions version = best_vers; + /* TODO(TLS1.3): Remove this before release */ + if (best_vers == TLS1_3_VERSION) + s->version_draft = orig_candidate; s->method = best_method; return 0; } @@ -2005,6 +2038,13 @@ int ssl_set_client_hello_version(SSL *s) { int ver_min, ver_max, ret; + /* + * In a renegotiation we always send the same client_version that we sent + * last time, regardless of which version we eventually negotiated. + */ + if (!SSL_IS_FIRST_HANDSHAKE(s)) + return 0; + ret = ssl_get_min_max_version(s, &ver_min, &ver_max); if (ret != 0) diff --git a/ssl/statem/statem_srvr.c b/ssl/statem/statem_srvr.c index 21127bb0..ce8cec18 100644 --- a/ssl/statem/statem_srvr.c +++ b/ssl/statem/statem_srvr.c @@ -277,6 +277,20 @@ int ossl_statem_server_read_transition(SSL *s, int mt) err: /* No valid transition found */ + if (SSL_IS_DTLS(s) && mt == SSL3_MT_CHANGE_CIPHER_SPEC) { + BIO *rbio; + + /* + * CCS messages don't have a message sequence number so this is probably + * because of an out-of-order CCS. We'll just drop it. + */ + s->init_num = 0; + s->rwstate = SSL_READING; + rbio = SSL_get_rbio(s); + BIO_clear_retry_flags(rbio); + BIO_set_retry_read(rbio); + return 0; + } SSLfatal(s, SSL3_AD_UNEXPECTED_MESSAGE, SSL_F_OSSL_STATEM_SERVER_READ_TRANSITION, SSL_R_UNEXPECTED_MESSAGE); @@ -466,15 +480,23 @@ static WRITE_TRAN ossl_statem_server13_write_transition(SSL *s) case TLS_ST_SR_FINISHED: /* * Technically we have finished the handshake at this point, but we're - * going to remain "in_init" for now and write out the session ticket + * going to remain "in_init" for now and write out any session tickets * immediately. - * TODO(TLS1.3): Perhaps we need to be able to control this behaviour - * and give the application the opportunity to delay sending the - * session ticket? */ - if (s->post_handshake_auth == SSL_PHA_REQUESTED) + if (s->post_handshake_auth == SSL_PHA_REQUESTED) { s->post_handshake_auth = SSL_PHA_EXT_RECEIVED; - st->hand_state = TLS_ST_SW_SESSION_TICKET; + } else if (!s->ext.ticket_expected) { + /* + * If we're not going to renew the ticket then we just finish the + * handshake at this point. + */ + st->hand_state = TLS_ST_OK; + return WRITE_TRAN_CONTINUE; + } + if (s->num_tickets > s->sent_tickets) + st->hand_state = TLS_ST_SW_SESSION_TICKET; + else + st->hand_state = TLS_ST_OK; return WRITE_TRAN_CONTINUE; case TLS_ST_SR_KEY_UPDATE: @@ -485,9 +507,19 @@ static WRITE_TRAN ossl_statem_server13_write_transition(SSL *s) /* Fall through */ case TLS_ST_SW_KEY_UPDATE: - case TLS_ST_SW_SESSION_TICKET: st->hand_state = TLS_ST_OK; return WRITE_TRAN_CONTINUE; + + case TLS_ST_SW_SESSION_TICKET: + /* In a resumption we only ever send a maximum of one new ticket. + * Following an initial handshake we send the number of tickets we have + * been configured for. + */ + if (s->hit || s->num_tickets <= s->sent_tickets) { + /* We've written enough tickets out. */ + st->hand_state = TLS_ST_OK; + } + return WRITE_TRAN_CONTINUE; } } @@ -679,7 +711,7 @@ WORK_STATE ossl_statem_server_pre_work(SSL *s, WORK_STATE wst) return WORK_FINISHED_CONTINUE; case TLS_ST_SW_SESSION_TICKET: - if (SSL_IS_TLS13(s)) { + if (SSL_IS_TLS13(s) && s->sent_tickets == 0) { /* * Actually this is the end of the handshake, but we're going * straight into writing the session ticket out. So we finish off @@ -1676,7 +1708,7 @@ static int tls_early_post_process_client_hello(SSL *s) /* For TLSv1.3 we must select the ciphersuite *before* session resumption */ if (SSL_IS_TLS13(s)) { const SSL_CIPHER *cipher = - ssl3_choose_cipher(s, ciphers, ssl_get_cipher_preferences(s)); + ssl3_choose_cipher(s, ciphers, SSL_get_ciphers(s)); if (cipher == NULL) { SSLfatal(s, SSL_AD_HANDSHAKE_FAILURE, @@ -1857,7 +1889,7 @@ static int tls_early_post_process_client_hello(SSL *s) /* check if some cipher was preferred by call back */ if (pref_cipher == NULL) pref_cipher = ssl3_choose_cipher(s, s->session->ciphers, - ssl_get_cipher_preferences(s)); + SSL_get_ciphers(s)); if (pref_cipher == NULL) { SSLfatal(s, SSL_AD_HANDSHAKE_FAILURE, SSL_F_TLS_EARLY_POST_PROCESS_CLIENT_HELLO, @@ -1866,9 +1898,8 @@ static int tls_early_post_process_client_hello(SSL *s) } s->session->cipher = pref_cipher; - ssl_cipher_preference_list_free(s->cipher_list); - s->cipher_list = ssl_cipher_preference_list_from_ciphers( - s->session->ciphers); + sk_SSL_CIPHER_free(s->cipher_list); + s->cipher_list = sk_SSL_CIPHER_dup(s->session->ciphers); sk_SSL_CIPHER_free(s->cipher_list_by_id); s->cipher_list_by_id = sk_SSL_CIPHER_dup(s->session->ciphers); } @@ -2101,7 +2132,17 @@ int tls_handle_alpn(SSL *s) s->ext.early_data_ok = 0; if (!s->hit) { - /* If a new session update it with the new ALPN value */ + /* + * This is a new session and so alpn_selected should have + * been initialised to NULL. We should update it with the + * selected ALPN. + */ + if (!ossl_assert(s->session->ext.alpn_selected == NULL)) { + SSLfatal(s, SSL_AD_INTERNAL_ERROR, + SSL_F_TLS_HANDLE_ALPN, + ERR_R_INTERNAL_ERROR); + return 0; + } s->session->ext.alpn_selected = OPENSSL_memdup(selected, selected_len); if (s->session->ext.alpn_selected == NULL) { @@ -2170,7 +2211,7 @@ WORK_STATE tls_post_process_client_hello(SSL *s, WORK_STATE wst) /* In TLSv1.3 we selected the ciphersuite before resumption */ if (!SSL_IS_TLS13(s)) { cipher = - ssl3_choose_cipher(s, s->session->ciphers, ssl_get_cipher_preferences(s)); + ssl3_choose_cipher(s, s->session->ciphers, SSL_get_ciphers(s)); if (cipher == NULL) { SSLfatal(s, SSL_AD_HANDSHAKE_FAILURE, @@ -2472,6 +2513,12 @@ int tls_construct_server_key_exchange(SSL *s, WPACKET *pkt) } dh = EVP_PKEY_get0_DH(s->s3->tmp.pkey); + if (dh == NULL) { + SSLfatal(s, SSL_AD_INTERNAL_ERROR, + SSL_F_TLS_CONSTRUCT_SERVER_KEY_EXCHANGE, + ERR_R_INTERNAL_ERROR); + goto err; + } EVP_PKEY_free(pkdh); pkdh = NULL; @@ -2738,7 +2785,7 @@ int tls_construct_certificate_request(SSL *s, WPACKET *pkt) OPENSSL_free(s->pha_context); s->pha_context_len = 32; if ((s->pha_context = OPENSSL_malloc(s->pha_context_len)) == NULL - || ssl_randbytes(s, s->pha_context, s->pha_context_len) <= 0 + || RAND_bytes(s->pha_context, s->pha_context_len) <= 0 || !WPACKET_sub_memcpy_u8(pkt, s->pha_context, s->pha_context_len)) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_CONSTRUCT_CERTIFICATE_REQUEST, @@ -2927,7 +2974,7 @@ static int tls_process_cke_rsa(SSL *s, PACKET *pkt) * fails. See https://tools.ietf.org/html/rfc5246#section-7.4.7.1 */ - if (ssl_randbytes(s, rand_premaster_secret, + if (RAND_priv_bytes(rand_premaster_secret, sizeof(rand_premaster_secret)) <= 0) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_PROCESS_CKE_RSA, ERR_R_INTERNAL_ERROR); @@ -3224,11 +3271,9 @@ static int tls_process_cke_gost(SSL *s, PACKET *pkt) const unsigned char *start; size_t outlen = 32, inlen; unsigned long alg_a; - int Ttag, Tclass; - long Tlen; - size_t sess_key_len; - const unsigned char *data; + unsigned int asn1id, asn1len; int ret = 0; + PACKET encdata; /* Get our certificate private key */ alg_a = s->s3->tmp.new_cipher->algorithm_auth; @@ -3270,22 +3315,42 @@ static int tls_process_cke_gost(SSL *s, PACKET *pkt) ERR_clear_error(); } /* Decrypt session key */ - sess_key_len = PACKET_remaining(pkt); - if (!PACKET_get_bytes(pkt, &data, sess_key_len)) { - SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_PROCESS_CKE_GOST, - ERR_R_INTERNAL_ERROR); - goto err; - } - /* TODO(size_t): Convert this function */ - if (ASN1_get_object((const unsigned char **)&data, &Tlen, &Ttag, - &Tclass, (long)sess_key_len) != V_ASN1_CONSTRUCTED - || Ttag != V_ASN1_SEQUENCE || Tclass != V_ASN1_UNIVERSAL) { + if (!PACKET_get_1(pkt, &asn1id) + || asn1id != (V_ASN1_SEQUENCE | V_ASN1_CONSTRUCTED) + || !PACKET_peek_1(pkt, &asn1len)) { SSLfatal(s, SSL_AD_DECODE_ERROR, SSL_F_TLS_PROCESS_CKE_GOST, SSL_R_DECRYPTION_FAILED); goto err; } - start = data; - inlen = Tlen; + if (asn1len == 0x81) { + /* + * Long form length. Should only be one byte of length. Anything else + * isn't supported. + * We did a successful peek before so this shouldn't fail + */ + if (!PACKET_forward(pkt, 1)) { + SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_PROCESS_CKE_GOST, + SSL_R_DECRYPTION_FAILED); + goto err; + } + } else if (asn1len >= 0x80) { + /* + * Indefinite length, or more than one long form length bytes. We don't + * support it + */ + SSLfatal(s, SSL_AD_DECODE_ERROR, SSL_F_TLS_PROCESS_CKE_GOST, + SSL_R_DECRYPTION_FAILED); + goto err; + } /* else short form length */ + + if (!PACKET_as_length_prefixed_1(pkt, &encdata)) { + SSLfatal(s, SSL_AD_DECODE_ERROR, SSL_F_TLS_PROCESS_CKE_GOST, + SSL_R_DECRYPTION_FAILED); + goto err; + } + inlen = PACKET_remaining(&encdata); + start = PACKET_data(&encdata); + if (EVP_PKEY_decrypt(pkey_ctx, premaster_secret, &outlen, start, inlen) <= 0) { SSLfatal(s, SSL_AD_DECODE_ERROR, SSL_F_TLS_PROCESS_CKE_GOST, @@ -3554,7 +3619,7 @@ MSG_PROCESS_RETURN tls_process_client_certificate(SSL *s, PACKET *pkt) EVP_PKEY *pkey; i = ssl_verify_cert_chain(s, sk); if (i <= 0) { - SSLfatal(s, ssl_verify_alarm_type(s->verify_result), + SSLfatal(s, ssl_x509err2alert(s->verify_result), SSL_F_TLS_PROCESS_CLIENT_CERTIFICATE, SSL_R_CERTIFICATE_VERIFY_FAILED); goto err; @@ -3609,9 +3674,6 @@ MSG_PROCESS_RETURN tls_process_client_certificate(SSL *s, PACKET *pkt) sk_X509_pop_free(s->session->peer_chain, X509_free); s->session->peer_chain = sk; - if (new_sess != NULL) - ssl_update_cache(s, SSL_SESS_CACHE_SERVER); - /* * Freeze the handshake buffer. For cert_verify_hash, - sizeof(s->cert_verify_hash), - &s->cert_verify_hash_len)) { - /* SSLfatal() already called */ - goto err; + if (SSL_IS_TLS13(s)) { + if (!ssl_handshake_hash(s, s->cert_verify_hash, + sizeof(s->cert_verify_hash), + &s->cert_verify_hash_len)) { + /* SSLfatal() already called */ + goto err; + } + + /* Resend session tickets */ + s->sent_tickets = 0; } ret = MSG_PROCESS_CONTINUE_READING; @@ -3692,7 +3758,48 @@ int tls_construct_new_session_ticket(SSL *s, WPACKET *pkt) } age_add_u; if (SSL_IS_TLS13(s)) { - if (ssl_randbytes(s, age_add_u.age_add_c, sizeof(age_add_u)) <= 0) { + void (*cb) (const SSL *ssl, int type, int val) = NULL; + + if (s->info_callback != NULL) + cb = s->info_callback; + else if (s->ctx->info_callback != NULL) + cb = s->ctx->info_callback; + + + if (cb != NULL) { + /* + * We don't start and stop the handshake in between each ticket when + * sending more than one - but it should appear that way to the info + * callback. + */ + if (s->sent_tickets != 0) { + ossl_statem_set_in_init(s, 0); + cb(s, SSL_CB_HANDSHAKE_DONE, 1); + ossl_statem_set_in_init(s, 1); + } + cb(s, SSL_CB_HANDSHAKE_START, 1); + } + /* + * If we already sent one NewSessionTicket then we need to take a copy + * of it and create a new session from it. + */ + if (s->sent_tickets != 0) { + SSL_SESSION *new_sess = ssl_session_dup(s->session, 0); + + if (new_sess == NULL) { + /* SSLfatal already called */ + goto err; + } + + SSL_SESSION_free(s->session); + s->session = new_sess; + } + + if (!ssl_generate_session_id(s, s->session)) { + /* SSLfatal() already called */ + goto err; + } + if (RAND_bytes(age_add_u.age_add_c, sizeof(age_add_u)) <= 0) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_CONSTRUCT_NEW_SESSION_TICKET, ERR_R_INTERNAL_ERROR); @@ -3758,7 +3865,6 @@ int tls_construct_new_session_ticket(SSL *s, WPACKET *pkt) SSL_F_TLS_CONSTRUCT_NEW_SESSION_TICKET, ERR_R_MALLOC_FAILURE); goto err; } - EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_SET_DRBG, 0, s->drbg); p = senc; if (!i2d_SSL_SESSION(s->session, &p)) { @@ -3777,7 +3883,6 @@ int tls_construct_new_session_ticket(SSL *s, WPACKET *pkt) SSL_F_TLS_CONSTRUCT_NEW_SESSION_TICKET, ERR_R_INTERNAL_ERROR); goto err; } - sess->session_id_length = 0; /* ID is irrelevant for the ticket */ slen = i2d_SSL_SESSION(sess, NULL); if (slen == 0 || slen > slen_full) { @@ -3831,11 +3936,11 @@ int tls_construct_new_session_ticket(SSL *s, WPACKET *pkt) const EVP_CIPHER *cipher = EVP_aes_256_cbc(); iv_len = EVP_CIPHER_iv_length(cipher); - if (ssl_randbytes(s, iv, iv_len) <= 0 + if (RAND_bytes(iv, iv_len) <= 0 || !EVP_EncryptInit_ex(ctx, cipher, NULL, - tctx->ext.tick_aes_key, iv) - || !HMAC_Init_ex(hctx, tctx->ext.tick_hmac_key, - sizeof(tctx->ext.tick_hmac_key), + tctx->ext.secure->tick_aes_key, iv) + || !HMAC_Init_ex(hctx, tctx->ext.secure->tick_hmac_key, + sizeof(tctx->ext.secure->tick_hmac_key), EVP_sha256(), NULL)) { SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_TLS_CONSTRUCT_NEW_SESSION_TICKET, @@ -3890,12 +3995,15 @@ int tls_construct_new_session_ticket(SSL *s, WPACKET *pkt) SSL_F_TLS_CONSTRUCT_NEW_SESSION_TICKET, ERR_R_INTERNAL_ERROR); goto err; } - if (SSL_IS_TLS13(s) - && !tls_construct_extensions(s, pkt, - SSL_EXT_TLS1_3_NEW_SESSION_TICKET, - NULL, 0)) { - /* SSLfatal() already called */ - goto err; + if (SSL_IS_TLS13(s)) { + if (!tls_construct_extensions(s, pkt, + SSL_EXT_TLS1_3_NEW_SESSION_TICKET, + NULL, 0)) { + /* SSLfatal() already called */ + goto err; + } + s->sent_tickets++; + ssl_update_cache(s, SSL_SESS_CACHE_SERVER); } EVP_CIPHER_CTX_free(ctx); HMAC_CTX_free(hctx); diff --git a/ssl/t1_enc.c b/ssl/t1_enc.c index 774625a2..23d3efb0 100644 --- a/ssl/t1_enc.c +++ b/ssl/t1_enc.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright 2005 Nokia. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use @@ -154,6 +154,7 @@ int tls1_change_cipher_state(SSL *s, int which) mac_secret = &(s->s3->read_mac_secret[0]); mac_secret_size = &(s->s3->read_mac_secret_size); } else { + s->statem.invalid_enc_write_ctx = 1; if (s->ext.use_etm) s->s3->flags |= TLS1_FLAGS_ENCRYPT_THEN_MAC_WRITE; else @@ -170,7 +171,6 @@ int tls1_change_cipher_state(SSL *s, int which) ERR_R_MALLOC_FAILURE); goto err; } - EVP_CIPHER_CTX_ctrl(s->enc_write_ctx, EVP_CTRL_SET_DRBG, 0, s->drbg); dd = s->enc_write_ctx; if (SSL_IS_DTLS(s)) { mac_ctx = EVP_MD_CTX_new(); @@ -257,8 +257,8 @@ int tls1_change_cipher_state(SSL *s, int which) if (!(EVP_CIPHER_flags(c) & EVP_CIPH_FLAG_AEAD_CIPHER)) { /* TODO(size_t): Convert this function */ - mac_key = EVP_PKEY_new_mac_key(mac_type, NULL, - mac_secret, (int)*mac_secret_size); + mac_key = EVP_PKEY_new_mac_key(mac_type, NULL, mac_secret, + (int)*mac_secret_size); if (mac_key == NULL || EVP_DigestSignInit(mac_ctx, NULL, m, NULL, mac_key) <= 0) { EVP_PKEY_free(mac_key); @@ -316,6 +316,7 @@ int tls1_change_cipher_state(SSL *s, int which) ERR_R_INTERNAL_ERROR); goto err; } + s->statem.invalid_enc_write_ctx = 0; #ifdef SSL_DEBUG printf("which = %04X\nkey=", which); diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index 596fdd4c..c0767828 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -342,9 +342,11 @@ int tls1_set_groups(uint16_t **pext, size_t *pextlen, * ids < 32 */ unsigned long dup_list = 0; - glist = OPENSSL_malloc(ngroups * sizeof(*glist)); - if (glist == NULL) + + if ((glist = OPENSSL_malloc(ngroups * sizeof(*glist))) == NULL) { + SSLerr(SSL_F_TLS1_SET_GROUPS, ERR_R_MALLOC_FAILURE); return 0; + } for (i = 0; i < ngroups; i++) { unsigned long idmask; uint16_t id; @@ -364,7 +366,7 @@ int tls1_set_groups(uint16_t **pext, size_t *pextlen, return 1; } -# define MAX_CURVELIST 28 +# define MAX_CURVELIST OSSL_NELEM(nid_list) typedef struct { size_t nidcnt; @@ -440,8 +442,11 @@ static int tls1_check_pkey_comp(SSL *s, EVP_PKEY *pkey) if (EC_KEY_get_conv_form(ec) == POINT_CONVERSION_UNCOMPRESSED) { comp_id = TLSEXT_ECPOINTFORMAT_uncompressed; } else if (SSL_IS_TLS13(s)) { - /* Compression not allowed in TLS 1.3 */ - return 0; + /* + * ec_point_formats extension is not used in TLSv1.3 so we ignore + * this check. + */ + return 1; } else { int field_type = EC_METHOD_get_field_type(EC_GROUP_method_of(grp)); @@ -467,7 +472,7 @@ static int tls1_check_pkey_comp(SSL *s, EVP_PKEY *pkey) } /* Check a group id matches preferences */ -int tls1_check_group_id(SSL *s, uint16_t group_id) +int tls1_check_group_id(SSL *s, uint16_t group_id, int check_own_groups) { const uint16_t *groups; size_t groups_len; @@ -491,10 +496,12 @@ int tls1_check_group_id(SSL *s, uint16_t group_id) } } - /* Check group is one of our preferences */ - tls1_get_supported_groups(s, &groups, &groups_len); - if (!tls1_in_list(group_id, groups, groups_len)) - return 0; + if (check_own_groups) { + /* Check group is one of our preferences */ + tls1_get_supported_groups(s, &groups, &groups_len); + if (!tls1_in_list(group_id, groups, groups_len)) + return 0; + } if (!tls_curve_allowed(s, group_id, SSL_SECOP_CURVE_CHECK)) return 0; @@ -554,7 +561,11 @@ static int tls1_check_cert_param(SSL *s, X509 *x, int check_ee_md) if (!tls1_check_pkey_comp(s, pkey)) return 0; group_id = tls1_get_group_id(pkey); - if (!tls1_check_group_id(s, group_id)) + /* + * For a server we allow the certificate to not be in our list of supported + * groups. + */ + if (!tls1_check_group_id(s, group_id, !s->server)) return 0; /* * Special case for suite B. We *MUST* sign using SHA256+P-256 or @@ -601,9 +612,9 @@ int tls1_check_ec_tmp_key(SSL *s, unsigned long cid) * curves permitted. */ if (cid == TLS1_CK_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256) - return tls1_check_group_id(s, TLSEXT_curve_P_256); + return tls1_check_group_id(s, TLSEXT_curve_P_256, 1); if (cid == TLS1_CK_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384) - return tls1_check_group_id(s, TLSEXT_curve_P_384); + return tls1_check_group_id(s, TLSEXT_curve_P_384, 1); return 0; } @@ -979,7 +990,7 @@ int tls12_check_peer_sigalg(SSL *s, uint16_t sig, EVP_PKEY *pkey) } if (!SSL_IS_TLS13(s)) { /* Check curve matches extensions */ - if (!tls1_check_group_id(s, tls1_get_group_id(pkey))) { + if (!tls1_check_group_id(s, tls1_get_group_id(pkey), 1)) { SSLfatal(s, SSL_AD_ILLEGAL_PARAMETER, SSL_F_TLS12_CHECK_PEER_SIGALG, SSL_R_WRONG_CURVE); return 0; @@ -1183,32 +1194,10 @@ int tls1_set_server_sigalgs(SSL *s) * hello: The parsed ClientHello data * ret: (output) on return, if a ticket was decrypted, then this is set to * point to the resulting session. - * - * If s->tls_session_secret_cb is set then we are expecting a pre-shared key - * ciphersuite, in which case we have no use for session tickets and one will - * never be decrypted, nor will s->ext.ticket_expected be set to 1. - * - * Returns: - * -1: fatal error, either from parsing or decrypting the ticket. - * 0: no ticket was found (or was ignored, based on settings). - * 1: a zero length extension was found, indicating that the client supports - * session tickets but doesn't currently have one to offer. - * 2: either s->tls_session_secret_cb was set, or a ticket was offered but - * couldn't be decrypted because of a non-fatal error. - * 3: a ticket was successfully decrypted and *ret was set. - * - * Side effects: - * Sets s->ext.ticket_expected to 1 if the server will have to issue - * a new session ticket to the client because the client indicated support - * (and s->tls_session_secret_cb is NULL) but the client either doesn't have - * a session ticket or we couldn't use the one it gave us, or if - * s->ctx->ext.ticket_key_cb asked to renew the client's ticket. - * Otherwise, s->ext.ticket_expected is set to 0. */ -SSL_TICKET_RETURN tls_get_ticket_from_client(SSL *s, CLIENTHELLO_MSG *hello, +SSL_TICKET_STATUS tls_get_ticket_from_client(SSL *s, CLIENTHELLO_MSG *hello, SSL_SESSION **ret) { - int retv; size_t size; RAW_EXTENSION *ticketext; @@ -1228,70 +1217,27 @@ SSL_TICKET_RETURN tls_get_ticket_from_client(SSL *s, CLIENTHELLO_MSG *hello, return SSL_TICKET_NONE; size = PACKET_remaining(&ticketext->data); - if (size == 0) { - /* - * The client will accept a ticket but doesn't currently have - * one. - */ - s->ext.ticket_expected = 1; - return SSL_TICKET_EMPTY; - } - if (s->ext.session_secret_cb) { - /* - * Indicate that the ticket couldn't be decrypted rather than - * generating the session from ticket now, trigger - * abbreviated handshake based on external mechanism to - * calculate the master secret later. - */ - return SSL_TICKET_NO_DECRYPT; - } - retv = tls_decrypt_ticket(s, PACKET_data(&ticketext->data), size, + return tls_decrypt_ticket(s, PACKET_data(&ticketext->data), size, hello->session_id, hello->session_id_len, ret); - - /* - * If set, the decrypt_ticket_cb() is always called regardless of the - * return from tls_decrypt_ticket(). The callback is responsible for - * checking |retv| before it performs any action - */ - if (s->session_ctx->decrypt_ticket_cb != NULL) { - size_t keyname_len = size; - - if (keyname_len > TLSEXT_KEYNAME_LENGTH) - keyname_len = TLSEXT_KEYNAME_LENGTH; - retv = s->session_ctx->decrypt_ticket_cb(s, *ret, - PACKET_data(&ticketext->data), - keyname_len, - retv, s->session_ctx->ticket_cb_data); - } - - switch (retv) { - case SSL_TICKET_NO_DECRYPT: - s->ext.ticket_expected = 1; - return SSL_TICKET_NO_DECRYPT; - - case SSL_TICKET_SUCCESS: - return SSL_TICKET_SUCCESS; - - case SSL_TICKET_SUCCESS_RENEW: - s->ext.ticket_expected = 1; - return SSL_TICKET_SUCCESS; - - case SSL_TICKET_EMPTY: - s->ext.ticket_expected = 1; - return SSL_TICKET_EMPTY; - - case SSL_TICKET_NONE: - return SSL_TICKET_NONE; - - default: - return SSL_TICKET_FATAL_ERR_OTHER; - } } /*- * tls_decrypt_ticket attempts to decrypt a session ticket. * + * If s->tls_session_secret_cb is set and we're not doing TLSv1.3 then we are + * expecting a pre-shared key ciphersuite, in which case we have no use for + * session tickets and one will never be decrypted, nor will + * s->ext.ticket_expected be set to 1. + * + * Side effects: + * Sets s->ext.ticket_expected to 1 if the server will have to issue + * a new session ticket to the client because the client indicated support + * (and s->tls_session_secret_cb is NULL) but the client either doesn't have + * a session ticket or we couldn't use the one it gave us, or if + * s->ctx->ext.ticket_key_cb asked to renew the client's ticket. + * Otherwise, s->ext.ticket_expected is set to 0. + * * etick: points to the body of the session ticket extension. * eticklen: the length of the session tickets extension. * sess_id: points at the session ID. @@ -1299,46 +1245,69 @@ SSL_TICKET_RETURN tls_get_ticket_from_client(SSL *s, CLIENTHELLO_MSG *hello, * psess: (output) on return, if a ticket was decrypted, then this is set to * point to the resulting session. */ -SSL_TICKET_RETURN tls_decrypt_ticket(SSL *s, const unsigned char *etick, +SSL_TICKET_STATUS tls_decrypt_ticket(SSL *s, const unsigned char *etick, size_t eticklen, const unsigned char *sess_id, size_t sesslen, SSL_SESSION **psess) { - SSL_SESSION *sess; + SSL_SESSION *sess = NULL; unsigned char *sdec; const unsigned char *p; int slen, renew_ticket = 0, declen; - SSL_TICKET_RETURN ret = SSL_TICKET_FATAL_ERR_OTHER; + SSL_TICKET_STATUS ret = SSL_TICKET_FATAL_ERR_OTHER; size_t mlen; unsigned char tick_hmac[EVP_MAX_MD_SIZE]; HMAC_CTX *hctx = NULL; EVP_CIPHER_CTX *ctx = NULL; SSL_CTX *tctx = s->session_ctx; + if (eticklen == 0) { + /* + * The client will accept a ticket but doesn't currently have + * one (TLSv1.2 and below), or treated as a fatal error in TLSv1.3 + */ + ret = SSL_TICKET_EMPTY; + goto end; + } + if (!SSL_IS_TLS13(s) && s->ext.session_secret_cb) { + /* + * Indicate that the ticket couldn't be decrypted rather than + * generating the session from ticket now, trigger + * abbreviated handshake based on external mechanism to + * calculate the master secret later. + */ + ret = SSL_TICKET_NO_DECRYPT; + goto end; + } + /* Need at least keyname + iv */ if (eticklen < TLSEXT_KEYNAME_LENGTH + EVP_MAX_IV_LENGTH) { ret = SSL_TICKET_NO_DECRYPT; - goto err; + goto end; } /* Initialize session ticket encryption and HMAC contexts */ hctx = HMAC_CTX_new(); - if (hctx == NULL) - return SSL_TICKET_FATAL_ERR_MALLOC; + if (hctx == NULL) { + ret = SSL_TICKET_FATAL_ERR_MALLOC; + goto end; + } ctx = EVP_CIPHER_CTX_new(); if (ctx == NULL) { ret = SSL_TICKET_FATAL_ERR_MALLOC; - goto err; + goto end; } if (tctx->ext.ticket_key_cb) { unsigned char *nctick = (unsigned char *)etick; int rv = tctx->ext.ticket_key_cb(s, nctick, nctick + TLSEXT_KEYNAME_LENGTH, ctx, hctx, 0); - if (rv < 0) - goto err; + if (rv < 0) { + ret = SSL_TICKET_FATAL_ERR_OTHER; + goto end; + } if (rv == 0) { ret = SSL_TICKET_NO_DECRYPT; - goto err; + goto end; } if (rv == 2) renew_ticket = 1; @@ -1347,16 +1316,19 @@ SSL_TICKET_RETURN tls_decrypt_ticket(SSL *s, const unsigned char *etick, if (memcmp(etick, tctx->ext.tick_key_name, TLSEXT_KEYNAME_LENGTH) != 0) { ret = SSL_TICKET_NO_DECRYPT; - goto err; + goto end; } - if (HMAC_Init_ex(hctx, tctx->ext.tick_hmac_key, - sizeof(tctx->ext.tick_hmac_key), + if (HMAC_Init_ex(hctx, tctx->ext.secure->tick_hmac_key, + sizeof(tctx->ext.secure->tick_hmac_key), EVP_sha256(), NULL) <= 0 || EVP_DecryptInit_ex(ctx, EVP_aes_256_cbc(), NULL, - tctx->ext.tick_aes_key, + tctx->ext.secure->tick_aes_key, etick + TLSEXT_KEYNAME_LENGTH) <= 0) { - goto err; + ret = SSL_TICKET_FATAL_ERR_OTHER; + goto end; } + if (SSL_IS_TLS13(s)) + renew_ticket = 1; } /* * Attempt to process session ticket, first conduct sanity and integrity @@ -1364,24 +1336,27 @@ SSL_TICKET_RETURN tls_decrypt_ticket(SSL *s, const unsigned char *etick, */ mlen = HMAC_size(hctx); if (mlen == 0) { - goto err; + ret = SSL_TICKET_FATAL_ERR_OTHER; + goto end; } + /* Sanity check ticket length: must exceed keyname + IV + HMAC */ if (eticklen <= TLSEXT_KEYNAME_LENGTH + EVP_CIPHER_CTX_iv_length(ctx) + mlen) { ret = SSL_TICKET_NO_DECRYPT; - goto err; + goto end; } eticklen -= mlen; /* Check HMAC of encrypted ticket */ if (HMAC_Update(hctx, etick, eticklen) <= 0 || HMAC_Final(hctx, tick_hmac, NULL) <= 0) { - goto err; + ret = SSL_TICKET_FATAL_ERR_OTHER; + goto end; } - HMAC_CTX_free(hctx); + if (CRYPTO_memcmp(tick_hmac, etick + eticklen, mlen)) { - EVP_CIPHER_CTX_free(ctx); - return SSL_TICKET_NO_DECRYPT; + ret = SSL_TICKET_NO_DECRYPT; + goto end; } /* Attempt to decrypt session data */ /* Move p after IV to start of encrypted ticket, update length */ @@ -1390,18 +1365,16 @@ SSL_TICKET_RETURN tls_decrypt_ticket(SSL *s, const unsigned char *etick, sdec = OPENSSL_malloc(eticklen); if (sdec == NULL || EVP_DecryptUpdate(ctx, sdec, &slen, p, (int)eticklen) <= 0) { - EVP_CIPHER_CTX_free(ctx); OPENSSL_free(sdec); - return SSL_TICKET_FATAL_ERR_OTHER; + ret = SSL_TICKET_FATAL_ERR_OTHER; + goto end; } if (EVP_DecryptFinal(ctx, sdec + slen, &declen) <= 0) { - EVP_CIPHER_CTX_free(ctx); OPENSSL_free(sdec); - return SSL_TICKET_NO_DECRYPT; + ret = SSL_TICKET_NO_DECRYPT; + goto end; } slen += declen; - EVP_CIPHER_CTX_free(ctx); - ctx = NULL; p = sdec; sess = d2i_SSL_SESSION(NULL, &p, slen); @@ -1409,9 +1382,11 @@ SSL_TICKET_RETURN tls_decrypt_ticket(SSL *s, const unsigned char *etick, OPENSSL_free(sdec); if (sess) { /* Some additional consistency checks */ - if (slen != 0 || sess->session_id_length != 0) { + if (slen != 0) { SSL_SESSION_free(sess); - return SSL_TICKET_NO_DECRYPT; + sess = NULL; + ret = SSL_TICKET_NO_DECRYPT; + goto end; } /* * The session ID, if non-empty, is used by some clients to detect @@ -1419,23 +1394,88 @@ SSL_TICKET_RETURN tls_decrypt_ticket(SSL *s, const unsigned char *etick, * structure. If it is empty set length to zero as required by * standard. */ - if (sesslen) + if (sesslen) { memcpy(sess->session_id, sess_id, sesslen); - sess->session_id_length = sesslen; - *psess = sess; + sess->session_id_length = sesslen; + } if (renew_ticket) - return SSL_TICKET_SUCCESS_RENEW; + ret = SSL_TICKET_SUCCESS_RENEW; else - return SSL_TICKET_SUCCESS; + ret = SSL_TICKET_SUCCESS; + goto end; } ERR_clear_error(); /* * For session parse failure, indicate that we need to send a new ticket. */ - return SSL_TICKET_NO_DECRYPT; - err: + ret = SSL_TICKET_NO_DECRYPT; + + end: EVP_CIPHER_CTX_free(ctx); HMAC_CTX_free(hctx); + + /* + * If set, the decrypt_ticket_cb() is called unless a fatal error was + * detected above. The callback is responsible for checking |ret| before it + * performs any action + */ + if (s->session_ctx->decrypt_ticket_cb != NULL + && (ret == SSL_TICKET_EMPTY + || ret == SSL_TICKET_NO_DECRYPT + || ret == SSL_TICKET_SUCCESS + || ret == SSL_TICKET_SUCCESS_RENEW)) { + size_t keyname_len = eticklen; + int retcb; + + if (keyname_len > TLSEXT_KEYNAME_LENGTH) + keyname_len = TLSEXT_KEYNAME_LENGTH; + retcb = s->session_ctx->decrypt_ticket_cb(s, sess, etick, keyname_len, + ret, + s->session_ctx->ticket_cb_data); + switch (retcb) { + case SSL_TICKET_RETURN_ABORT: + ret = SSL_TICKET_FATAL_ERR_OTHER; + break; + + case SSL_TICKET_RETURN_IGNORE: + ret = SSL_TICKET_NONE; + SSL_SESSION_free(sess); + sess = NULL; + break; + + case SSL_TICKET_RETURN_IGNORE_RENEW: + if (ret != SSL_TICKET_EMPTY && ret != SSL_TICKET_NO_DECRYPT) + ret = SSL_TICKET_NO_DECRYPT; + /* else the value of |ret| will already do the right thing */ + SSL_SESSION_free(sess); + sess = NULL; + break; + + case SSL_TICKET_RETURN_USE: + case SSL_TICKET_RETURN_USE_RENEW: + if (ret != SSL_TICKET_SUCCESS + && ret != SSL_TICKET_SUCCESS_RENEW) + ret = SSL_TICKET_FATAL_ERR_OTHER; + else if (retcb == SSL_TICKET_RETURN_USE) + ret = SSL_TICKET_SUCCESS; + else + ret = SSL_TICKET_SUCCESS_RENEW; + break; + + default: + ret = SSL_TICKET_FATAL_ERR_OTHER; + } + } + + switch (ret) { + case SSL_TICKET_NO_DECRYPT: + case SSL_TICKET_SUCCESS_RENEW: + case SSL_TICKET_EMPTY: + s->ext.ticket_expected = 1; + } + + *psess = sess; + return ret; } @@ -1593,9 +1633,10 @@ static int tls1_set_shared_sigalgs(SSL *s) } nmatch = tls12_shared_sigalgs(s, NULL, pref, preflen, allow, allowlen); if (nmatch) { - salgs = OPENSSL_malloc(nmatch * sizeof(*salgs)); - if (salgs == NULL) + if ((salgs = OPENSSL_malloc(nmatch * sizeof(*salgs))) == NULL) { + SSLerr(SSL_F_TLS1_SET_SHARED_SIGALGS, ERR_R_MALLOC_FAILURE); return 0; + } nmatch = tls12_shared_sigalgs(s, salgs, pref, preflen, allow, allowlen); } else { salgs = NULL; @@ -1619,9 +1660,10 @@ int tls1_save_u16(PACKET *pkt, uint16_t **pdest, size_t *pdestlen) size >>= 1; - buf = OPENSSL_malloc(size * sizeof(*buf)); - if (buf == NULL) + if ((buf = OPENSSL_malloc(size * sizeof(*buf))) == NULL) { + SSLerr(SSL_F_TLS1_SAVE_U16, ERR_R_MALLOC_FAILURE); return 0; + } for (i = 0; i < size && PACKET_get_net_2(pkt, &stmp); i++) buf[i] = stmp; @@ -1849,9 +1891,10 @@ int tls1_set_raw_sigalgs(CERT *c, const uint16_t *psigs, size_t salglen, { uint16_t *sigalgs; - sigalgs = OPENSSL_malloc(salglen * sizeof(*sigalgs)); - if (sigalgs == NULL) + if ((sigalgs = OPENSSL_malloc(salglen * sizeof(*sigalgs))) == NULL) { + SSLerr(SSL_F_TLS1_SET_RAW_SIGALGS, ERR_R_MALLOC_FAILURE); return 0; + } memcpy(sigalgs, psigs, salglen * sizeof(*sigalgs)); if (client) { @@ -1874,9 +1917,10 @@ int tls1_set_sigalgs(CERT *c, const int *psig_nids, size_t salglen, int client) if (salglen & 1) return 0; - sigalgs = OPENSSL_malloc((salglen / 2) * sizeof(*sigalgs)); - if (sigalgs == NULL) + if ((sigalgs = OPENSSL_malloc((salglen / 2) * sizeof(*sigalgs))) == NULL) { + SSLerr(SSL_F_TLS1_SET_SIGALGS, ERR_R_MALLOC_FAILURE); return 0; + } for (i = 0, sptr = sigalgs; i < salglen; i += 2) { size_t j; const SIGALG_LOOKUP *curr; @@ -2422,7 +2466,7 @@ int tls_choose_sigalg(SSL *s, int fatalerrs) if (SSL_IS_TLS13(s)) { size_t i; #ifndef OPENSSL_NO_EC - int curve = -1, skip_ec = 0; + int curve = -1; #endif /* Look for a certificate matching shared sigalgs */ @@ -2445,11 +2489,8 @@ int tls_choose_sigalg(SSL *s, int fatalerrs) EC_KEY *ec = EVP_PKEY_get0_EC_KEY(s->cert->pkeys[SSL_PKEY_ECC].privatekey); curve = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec)); - if (EC_KEY_get_conv_form(ec) - != POINT_CONVERSION_UNCOMPRESSED) - skip_ec = 1; } - if (skip_ec || (lu->curve != NID_undef && curve != lu->curve)) + if (lu->curve != NID_undef && curve != lu->curve) continue; #else continue; diff --git a/ssl/t1_trce.c b/ssl/t1_trce.c index 3186b987..4d052d07 100644 --- a/ssl/t1_trce.c +++ b/ssl/t1_trce.c @@ -19,11 +19,11 @@ typedef struct { } ssl_trace_tbl; # define ssl_trace_str(val, tbl) \ - do_ssl_trace_str(val, tbl, OSSL_NELEM(tbl)) + do_ssl_trace_str(val, tbl, OSSL_NELEM(tbl)) # define ssl_trace_list(bio, indent, msg, msglen, value, table) \ - do_ssl_trace_list(bio, indent, msg, msglen, value, \ - table, OSSL_NELEM(table)) + do_ssl_trace_list(bio, indent, msg, msglen, value, \ + table, OSSL_NELEM(table)) static const char *do_ssl_trace_str(int val, const ssl_trace_tbl *tbl, size_t ntbl) @@ -65,7 +65,9 @@ static const ssl_trace_tbl ssl_version_tbl[] = { {TLS1_1_VERSION, "TLS 1.1"}, {TLS1_2_VERSION, "TLS 1.2"}, {TLS1_3_VERSION, "TLS 1.3"}, - /* TODO(TLS1.3): Remove this line before release */ + /* TODO(TLS1.3): Remove these lines before release */ + {TLS1_3_VERSION_DRAFT_26, TLS1_3_VERSION_DRAFT_TXT_26}, + {TLS1_3_VERSION_DRAFT_27, TLS1_3_VERSION_DRAFT_TXT_27}, {TLS1_3_VERSION_DRAFT, TLS1_3_VERSION_DRAFT_TXT}, {DTLS1_VERSION, "DTLS 1.0"}, {DTLS1_2_VERSION, "DTLS 1.2"}, @@ -184,6 +186,8 @@ static const ssl_trace_tbl ssl_ciphers_tbl[] = { {0x006B, "TLS_DHE_RSA_WITH_AES_256_CBC_SHA256"}, {0x006C, "TLS_DH_anon_WITH_AES_128_CBC_SHA256"}, {0x006D, "TLS_DH_anon_WITH_AES_256_CBC_SHA256"}, + {0x0081, "TLS_GOSTR341001_WITH_28147_CNT_IMIT"}, + {0x0083, "TLS_GOSTR341001_WITH_NULL_GOSTR3411"}, {0x0084, "TLS_RSA_WITH_CAMELLIA_256_CBC_SHA"}, {0x0085, "TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA"}, {0x0086, "TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA"}, @@ -441,6 +445,8 @@ static const ssl_trace_tbl ssl_ciphers_tbl[] = { {0x1305, "TLS_AES_128_CCM_8_SHA256"}, {0xFEFE, "SSL_RSA_FIPS_WITH_DES_CBC_SHA"}, {0xFEFF, "SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA"}, + {0xFF85, "GOST2012-GOST8912-GOST8912"}, + {0xFF87, "GOST2012-NULL-GOST12"}, }; /* Compression methods */ @@ -638,7 +644,15 @@ static int ssl_print_version(BIO *bio, int indent, const char *name, vers = ((*pmsg)[0] << 8) | (*pmsg)[1]; if (version != NULL) { /* TODO(TLS1.3): Remove the draft conditional here before release */ - *version = (vers == TLS1_3_VERSION_DRAFT) ? TLS1_3_VERSION : vers; + switch(vers) { + case TLS1_3_VERSION_DRAFT_26: + case TLS1_3_VERSION_DRAFT_27: + case TLS1_3_VERSION_DRAFT: + *version = TLS1_3_VERSION; + break; + default: + *version = vers; + } } BIO_indent(bio, indent, 80); BIO_printf(bio, "%s=0x%x (%s)\n", @@ -729,7 +743,7 @@ static int ssl_print_extension(BIO *bio, int indent, int server, while (xlen > 0) { size_t plen = *ext++; - if (plen > xlen + 1) + if (plen + 1 > xlen) return 0; BIO_indent(bio, indent + 2, 80); BIO_write(bio, ext, plen); @@ -888,6 +902,8 @@ static int ssl_print_extensions(BIO *bio, int indent, int server, BIO_puts(bio, "No Extensions\n"); return 1; } + if (msglen < 2) + return 0; extslen = (msg[0] << 8) | msg[1]; if (extslen != msglen - 2) return 0; @@ -1086,10 +1102,10 @@ static int ssl_print_client_keyex(BIO *bio, int indent, const SSL *ssl, case SSL_kRSAPSK: if (TLS1_get_version(ssl) == SSL3_VERSION) { ssl_print_hex(bio, indent + 2, - "EncyptedPreMasterSecret", msg, msglen); + "EncryptedPreMasterSecret", msg, msglen); } else { if (!ssl_print_hexbuf(bio, indent + 2, - "EncyptedPreMasterSecret", 2, &msg, &msglen)) + "EncryptedPreMasterSecret", 2, &msg, &msglen)) return 0; } break; @@ -1293,6 +1309,8 @@ static int ssl_print_cert_request(BIO *bio, int indent, const SSL *ssl, msg += xlen; } + if (msglen < 2) + return 0; xlen = (msg[0] << 8) | msg[1]; BIO_indent(bio, indent, 80); if (msglen < xlen + 2) @@ -1354,8 +1372,8 @@ static int ssl_print_ticket(BIO *bio, int indent, const SSL *ssl, if (msglen < 4) return 0; - ticket_age_add = (msg[0] << 24) | (msg[1] << 16) | (msg[2] << 8) - | msg[3]; + ticket_age_add = + (msg[0] << 24) | (msg[1] << 16) | (msg[2] << 8) | msg[3]; msglen -= 4; msg += 4; BIO_indent(bio, indent + 2, 80); @@ -1493,7 +1511,16 @@ void SSL_trace(int write_p, int version, int content_type, switch (content_type) { case SSL3_RT_HEADER: { - int hvers = msg[1] << 8 | msg[2]; + int hvers; + + /* avoid overlapping with length at the end of buffer */ + if (msglen < (size_t)(SSL_IS_DTLS(ssl) ? + DTLS1_RT_HEADER_LENGTH : SSL3_RT_HEADER_LENGTH)) { + BIO_puts(bio, write_p ? "Sent" : "Received"); + ssl_print_hex(bio, 0, " too short message", msg, msglen); + break; + } + hvers = msg[1] << 8 | msg[2]; BIO_puts(bio, write_p ? "Sent" : "Received"); BIO_printf(bio, " Record\nHeader:\n Version = %s (0x%x)\n", ssl_trace_str(hvers, ssl_version_tbl), hvers); diff --git a/ssl/tls13_enc.c b/ssl/tls13_enc.c index 5982c8e9..1e6db923 100644 --- a/ssl/tls13_enc.c +++ b/ssl/tls13_enc.c @@ -247,12 +247,23 @@ size_t tls13_final_finish_mac(SSL *s, const char *str, size_t slen, goto err; } - if (str == s->method->ssl3_enc->server_finished_label) - key = EVP_PKEY_new_mac_key(EVP_PKEY_HMAC, NULL, - s->server_finished_secret, hashlen); - else - key = EVP_PKEY_new_mac_key(EVP_PKEY_HMAC, NULL, - s->client_finished_secret, hashlen); + if (str == s->method->ssl3_enc->server_finished_label) { + key = EVP_PKEY_new_raw_private_key(EVP_PKEY_HMAC, NULL, + s->server_finished_secret, hashlen); + } else if (SSL_IS_FIRST_HANDSHAKE(s)) { + key = EVP_PKEY_new_raw_private_key(EVP_PKEY_HMAC, NULL, + s->client_finished_secret, hashlen); + } else { + unsigned char finsecret[EVP_MAX_MD_SIZE]; + + if (!tls13_derive_finishedkey(s, ssl_handshake_md(s), + s->client_app_traffic_secret, + finsecret, hashlen)) + goto err; + + key = EVP_PKEY_new_raw_private_key(EVP_PKEY_HMAC, NULL, finsecret, + hashlen); + } if (key == NULL || ctx == NULL @@ -397,6 +408,7 @@ int tls13_change_cipher_state(SSL *s, int which) RECORD_LAYER_reset_read_sequence(&s->rlayer); } else { + s->statem.invalid_enc_write_ctx = 1; if (s->enc_write_ctx != NULL) { EVP_CIPHER_CTX_reset(s->enc_write_ctx); } else { @@ -406,7 +418,6 @@ int tls13_change_cipher_state(SSL *s, int which) SSL_F_TLS13_CHANGE_CIPHER_STATE, ERR_R_MALLOC_FAILURE); goto err; } - EVP_CIPHER_CTX_ctrl(s->enc_write_ctx, EVP_CTRL_SET_DRBG, 0, s->drbg); } ciph_ctx = s->enc_write_ctx; iv = s->write_iv; @@ -493,6 +504,12 @@ int tls13_change_cipher_state(SSL *s, int which) SSL_F_TLS13_CHANGE_CIPHER_STATE, ERR_R_INTERNAL_ERROR); goto err; } + + if (!ssl_log_secret(s, EARLY_EXPORTER_SECRET_LABEL, + s->early_exporter_master_secret, hashlen)) { + /* SSLfatal() already called */ + goto err; + } } else if (which & SSL3_CC_HANDSHAKE) { insecret = s->handshake_secret; finsecret = s->client_finished_secret; @@ -594,6 +611,12 @@ int tls13_change_cipher_state(SSL *s, int which) /* SSLfatal() already called */ goto err; } + + if (!ssl_log_secret(s, EXPORTER_SECRET_LABEL, s->exporter_master_secret, + hashlen)) { + /* SSLfatal() already called */ + goto err; + } } else if (label == client_application_traffic) memcpy(s->client_app_traffic_secret, secret, hashlen); @@ -609,6 +632,7 @@ int tls13_change_cipher_state(SSL *s, int which) goto err; } + s->statem.invalid_enc_write_ctx = 0; ret = 1; err: OPENSSL_cleanse(secret, sizeof(secret)); @@ -631,6 +655,7 @@ int tls13_update_key(SSL *s, int sending) insecret = s->client_app_traffic_secret; if (sending) { + s->statem.invalid_enc_write_ctx = 1; iv = s->write_iv; ciph_ctx = s->enc_write_ctx; RECORD_LAYER_reset_write_sequence(&s->rlayer); @@ -651,6 +676,7 @@ int tls13_update_key(SSL *s, int sending) memcpy(insecret, secret, hashlen); + s->statem.invalid_enc_write_ctx = 0; ret = 1; err: OPENSSL_cleanse(secret, sizeof(secret)); diff --git a/ssl/tls_srp.c b/ssl/tls_srp.c index d7323289..f94e46b4 100644 --- a/ssl/tls_srp.c +++ b/ssl/tls_srp.c @@ -157,7 +157,7 @@ int SSL_srp_server_param_with_username(SSL *s, int *ad) (s->srp_ctx.s == NULL) || (s->srp_ctx.v == NULL)) return SSL3_AL_FATAL; - if (ssl_randbytes(s, b, sizeof(b)) <= 0) + if (RAND_priv_bytes(b, sizeof(b)) <= 0) return SSL3_AL_FATAL; s->srp_ctx.b = BN_bin2bn(b, sizeof(b), NULL); OPENSSL_cleanse(b, sizeof(b)); @@ -369,7 +369,7 @@ int SRP_Calc_A_param(SSL *s) { unsigned char rnd[SSL_MAX_MASTER_KEY_LENGTH]; - if (ssl_randbytes(s, rnd, sizeof(rnd)) <= 0) + if (RAND_priv_bytes(rnd, sizeof(rnd)) <= 0) return 0; s->srp_ctx.a = BN_bin2bn(rnd, sizeof(rnd), s->srp_ctx.a); OPENSSL_cleanse(rnd, sizeof(rnd)); diff --git a/test/asn1_time_test.c b/test/asn1_time_test.c index 25105c6b..1df630f2 100644 --- a/test/asn1_time_test.c +++ b/test/asn1_time_test.c @@ -346,10 +346,12 @@ int setup_tests(void) if (sizeof(time_t) > sizeof(uint32_t)) { TEST_info("Adding 64-bit time_t tests"); ADD_ALL_TESTS(test_table_pos_64bit, OSSL_NELEM(tbl_testdata_pos_64bit)); +#ifndef __hpux if (!(t > 0) && ptm != NULL) { TEST_info("Adding negative-sign 64-bit time_t tests"); ADD_ALL_TESTS(test_table_neg_64bit, OSSL_NELEM(tbl_testdata_neg_64bit)); } +#endif } ADD_ALL_TESTS(test_table_compare, OSSL_NELEM(tbl_compare_testdata)); return 1; diff --git a/test/asynciotest.c b/test/asynciotest.c index 179fe262..73e415fd 100644 --- a/test/asynciotest.c +++ b/test/asynciotest.c @@ -1,5 +1,5 @@ /* - * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL licenses, (the "License"); * you may not use this file except in compliance with the License. @@ -42,7 +42,7 @@ struct async_ctrs { unsigned int wctr; }; -static const BIO_METHOD *bio_f_async_filter() +static const BIO_METHOD *bio_f_async_filter(void) { if (methods_async == NULL) { methods_async = BIO_meth_new(BIO_TYPE_ASYNC_FILTER, "Async filter"); @@ -299,7 +299,8 @@ static int test_asyncio(int test) char buf[sizeof(testdata)]; if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), - &serverctx, &clientctx, cert, privkey))) + TLS1_VERSION, TLS_MAX_VERSION, + &serverctx, &clientctx, cert, privkey))) goto end; /* diff --git a/test/asynctest.c b/test/asynctest.c index eef3c321..c2740e6e 100644 --- a/test/asynctest.c +++ b/test/asynctest.c @@ -87,7 +87,7 @@ static int blockpause(void *args) return 1; } -static int test_ASYNC_init_thread() +static int test_ASYNC_init_thread(void) { ASYNC_JOB *job1 = NULL, *job2 = NULL, *job3 = NULL; int funcret1, funcret2, funcret3; @@ -123,7 +123,7 @@ static int test_ASYNC_init_thread() return 1; } -static int test_ASYNC_start_job() +static int test_ASYNC_start_job(void) { ASYNC_JOB *job = NULL; int funcret; @@ -151,7 +151,7 @@ static int test_ASYNC_start_job() return 1; } -static int test_ASYNC_get_current_job() +static int test_ASYNC_get_current_job(void) { ASYNC_JOB *job = NULL; int funcret; @@ -178,7 +178,7 @@ static int test_ASYNC_get_current_job() return 1; } -static int test_ASYNC_WAIT_CTX_get_all_fds() +static int test_ASYNC_WAIT_CTX_get_all_fds(void) { ASYNC_JOB *job = NULL; int funcret; @@ -245,7 +245,7 @@ static int test_ASYNC_WAIT_CTX_get_all_fds() return 1; } -static int test_ASYNC_block_pause() +static int test_ASYNC_block_pause(void) { ASYNC_JOB *job = NULL; int funcret; diff --git a/test/bio_callback_test.c b/test/bio_callback_test.c new file mode 100644 index 00000000..f1712b3a --- /dev/null +++ b/test/bio_callback_test.c @@ -0,0 +1,117 @@ +/* + * Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ +#include +#include +#include + +#include "testutil.h" + +#define MAXCOUNT 5 +static int my_param_count; +static BIO *my_param_b[MAXCOUNT]; +static int my_param_oper[MAXCOUNT]; +static const char *my_param_argp[MAXCOUNT]; +static int my_param_argi[MAXCOUNT]; +static long my_param_argl[MAXCOUNT]; +static long my_param_ret[MAXCOUNT]; + +static long my_bio_callback(BIO *b, int oper, const char *argp, int argi, + long argl, long ret) +{ + if (my_param_count >= MAXCOUNT) + return -1; + my_param_b[my_param_count] = b; + my_param_oper[my_param_count] = oper; + my_param_argp[my_param_count] = argp; + my_param_argi[my_param_count] = argi; + my_param_argl[my_param_count] = argl; + my_param_ret[my_param_count] = ret; + my_param_count++; + return ret; +} + +static int test_bio_callback(void) +{ + int ok = 0; + BIO *bio; + int i; + char *test1 = "test"; + char *test2 = "hello"; + + my_param_count = 0; + + bio = BIO_new(BIO_s_mem()); + if (bio == NULL) + goto err; + + BIO_set_callback(bio, my_bio_callback); + i = BIO_write(bio, test1, 4); + if (!TEST_int_eq(i, 4) + || !TEST_int_eq(my_param_count, 2) + || !TEST_ptr_eq(my_param_b[0], bio) + || !TEST_int_eq(my_param_oper[0], BIO_CB_WRITE) + || !TEST_ptr_eq(my_param_argp[0], test1) + || !TEST_int_eq(my_param_argi[0], 4) + || !TEST_long_eq(my_param_argl[0], 0L) + || !TEST_long_eq(my_param_ret[0], 1L) + || !TEST_ptr_eq(my_param_b[1], bio) + || !TEST_int_eq(my_param_oper[1], BIO_CB_WRITE | BIO_CB_RETURN) + || !TEST_ptr_eq(my_param_argp[1], test1) + || !TEST_int_eq(my_param_argi[1], 4) + || !TEST_long_eq(my_param_argl[1], 0L) + || !TEST_long_eq(my_param_ret[1], 4L)) + goto err; + + i = BIO_puts(bio, test2); + if (!TEST_int_eq(i, 5) + || !TEST_int_eq(my_param_count, 4) + || !TEST_ptr_eq(my_param_b[2], bio) + || !TEST_int_eq(my_param_oper[2], BIO_CB_PUTS) + || !TEST_ptr_eq(my_param_argp[2], test2) + || !TEST_int_eq(my_param_argi[2], 0) + || !TEST_long_eq(my_param_argl[2], 0L) + || !TEST_long_eq(my_param_ret[2], 1L) + || !TEST_ptr_eq(my_param_b[3], bio) + || !TEST_int_eq(my_param_oper[3], BIO_CB_PUTS | BIO_CB_RETURN) + || !TEST_ptr_eq(my_param_argp[3], test2) + || !TEST_int_eq(my_param_argi[3], 0) + || !TEST_long_eq(my_param_argl[3], 0L) + || !TEST_long_eq(my_param_ret[3], 5L)) + goto err; + + i = BIO_free(bio); + + if (!TEST_int_eq(i, 1) + || !TEST_int_eq(my_param_count, 5) + || !TEST_ptr_eq(my_param_b[4], bio) + || !TEST_int_eq(my_param_oper[4], BIO_CB_FREE) + || !TEST_ptr_eq(my_param_argp[4], NULL) + || !TEST_int_eq(my_param_argi[4], 0) + || !TEST_long_eq(my_param_argl[4], 0L) + || !TEST_long_eq(my_param_ret[4], 1L)) + goto finish; + + ok = 1; + goto finish; + +err: + BIO_free(bio); + +finish: + /* This helps finding memory leaks with ASAN */ + memset(my_param_b, 0, sizeof(my_param_b)); + memset(my_param_argp, 0, sizeof(my_param_argp)); + return ok; +} + +int setup_tests(void) +{ + ADD_TEST(test_bio_callback); + return 1; +} diff --git a/test/bntest.c b/test/bntest.c index d6696e67..629707ad 100644 --- a/test/bntest.c +++ b/test/bntest.c @@ -151,6 +151,78 @@ static int rand_neg(void) } +static int test_swap(void) +{ + BIGNUM *a = NULL, *b = NULL, *c = NULL, *d = NULL; + int top, cond, st = 0; + + if (!TEST_ptr(a = BN_new()) + || !TEST_ptr(b = BN_new()) + || !TEST_ptr(c = BN_new()) + || !TEST_ptr(d = BN_new())) + goto err; + + BN_bntest_rand(a, 1024, 1, 0); + BN_bntest_rand(b, 1024, 1, 0); + BN_copy(c, a); + BN_copy(d, b); + top = BN_num_bits(a)/BN_BITS2; + + /* regular swap */ + BN_swap(a, b); + if (!equalBN("swap", a, d) + || !equalBN("swap", b, c)) + goto err; + + /* conditional swap: true */ + cond = 1; + BN_consttime_swap(cond, a, b, top); + if (!equalBN("cswap true", a, c) + || !equalBN("cswap true", b, d)) + goto err; + + /* conditional swap: false */ + cond = 0; + BN_consttime_swap(cond, a, b, top); + if (!equalBN("cswap false", a, c) + || !equalBN("cswap false", b, d)) + goto err; + + /* same tests but checking flag swap */ + BN_set_flags(a, BN_FLG_CONSTTIME); + + BN_swap(a, b); + if (!equalBN("swap, flags", a, d) + || !equalBN("swap, flags", b, c) + || !TEST_true(BN_get_flags(b, BN_FLG_CONSTTIME)) + || !TEST_false(BN_get_flags(a, BN_FLG_CONSTTIME))) + goto err; + + cond = 1; + BN_consttime_swap(cond, a, b, top); + if (!equalBN("cswap true, flags", a, c) + || !equalBN("cswap true, flags", b, d) + || !TEST_true(BN_get_flags(a, BN_FLG_CONSTTIME)) + || !TEST_false(BN_get_flags(b, BN_FLG_CONSTTIME))) + goto err; + + cond = 0; + BN_consttime_swap(cond, a, b, top); + if (!equalBN("cswap false, flags", a, c) + || !equalBN("cswap false, flags", b, d) + || !TEST_true(BN_get_flags(a, BN_FLG_CONSTTIME)) + || !TEST_false(BN_get_flags(b, BN_FLG_CONSTTIME))) + goto err; + + st = 1; + err: + BN_free(a); + BN_free(b); + BN_free(c); + BN_free(d); + return st; +} + static int test_sub(void) { BIGNUM *a = NULL, *b = NULL, *c = NULL; @@ -408,9 +480,21 @@ static int test_modexp_mont5(void) BN_free(b); b = BN_dup(a); BN_MONT_CTX_set(mont, n, ctx); - BN_mod_mul_montgomery(c, a, a, mont, ctx); - BN_mod_mul_montgomery(d, a, b, mont, ctx); - if (!TEST_BN_eq(c, d)) + if (!TEST_true(BN_mod_mul_montgomery(c, a, a, mont, ctx)) + || !TEST_true(BN_mod_mul_montgomery(d, a, b, mont, ctx)) + || !TEST_BN_eq(c, d)) + goto err; + + /* Regression test for bug in BN_from_montgomery_word */ + BN_hex2bn(&a, + "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" + "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" + "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"); + BN_hex2bn(&n, + "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" + "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"); + BN_MONT_CTX_set(mont, n, ctx); + if (!TEST_false(BN_mod_mul_montgomery(d, a, a, mont, ctx))) goto err; /* Regression test for bug in rsaz_1024_mul_avx2 */ @@ -2106,6 +2190,7 @@ int setup_tests(void) ADD_TEST(test_badmod); ADD_TEST(test_expmodzero); ADD_TEST(test_smallprime); + ADD_TEST(test_swap); #ifndef OPENSSL_NO_EC2M ADD_TEST(test_gf2m_add); ADD_TEST(test_gf2m_mod); diff --git a/test/build.info b/test/build.info index 9fcaa7d8..c3a09048 100644 --- a/test/build.info +++ b/test/build.info @@ -24,9 +24,11 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN ENDRAW[descrip.mms] PROGRAMS_NO_INST=\ + versions \ aborttest test_test \ sanitytest exdatatest bntest \ ectest ecstresstest ecdsatest gmdifftest pbelutest ideatest \ + sm2sigtest sm2crypttest \ md2test \ hmactest \ rc2test rc4test rc5test \ @@ -40,13 +42,20 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN packettest asynctest secmemtest srptest memleaktest stack_test \ dtlsv1listentest ct_test threadstest afalgtest d2i_test \ ssl_test_ctx_test ssl_test x509aux cipherlist_test asynciotest \ + bio_callback_test \ bioprinttest sslapitest dtlstest sslcorrupttest bio_enc_test \ pkey_meth_test pkey_meth_kdf_test uitest cipherbytes_test \ asn1_encode_test asn1_string_table_test \ x509_time_test x509_dup_cert_test x509_check_cert_pkey_test \ recordlentest drbgtest sslbuffertest \ + recordlentest drbgtest drbg_cavs_test sslbuffertest \ time_offset_test pemtest ssl_cert_table_internal_test ciphername_test \ - servername_test ocspapitest rsa_mp_test fatalerrtest tls13ccstest + servername_test ocspapitest rsa_mp_test fatalerrtest tls13ccstest \ + sysdefaulttest + + SOURCE[versions]=versions.c + INCLUDE[versions]=../include + DEPEND[versions]=../libcrypto SOURCE[aborttest]=aborttest.c INCLUDE[aborttest]=../include @@ -80,6 +89,14 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN INCLUDE[ecdsatest]=../include DEPEND[ecdsatest]=../libcrypto libtestutil.a + SOURCE[sm2sigtest]=sm2sigtest.c + INCLUDE[sm2sigtest]=../include + DEPEND[sm2sigtest]=../libcrypto libtestutil.a + + SOURCE[sm2crypttest]=sm2crypttest.c + INCLUDE[sm2crypttest]=../include + DEPEND[sm2crypttest]=../libcrypto libtestutil.a + SOURCE[gmdifftest]=gmdifftest.c INCLUDE[gmdifftest]=../include DEPEND[gmdifftest]=../libcrypto libtestutil.a @@ -280,6 +297,10 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN INCLUDE[asynciotest]=../include DEPEND[asynciotest]=../libcrypto ../libssl libtestutil.a + SOURCE[bio_callback_test]=bio_callback_test.c + INCLUDE[bio_callback_test]=../include + DEPEND[bio_callback_test]=../libcrypto libtestutil.a + SOURCE[bioprinttest]=bioprinttest.c INCLUDE[bioprinttest]=../include DEPEND[bioprinttest]=../libcrypto libtestutil.a @@ -324,6 +345,10 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN INCLUDE[drbgtest]=../include DEPEND[drbgtest]=../libcrypto libtestutil.a + SOURCE[drbg_cavs_test]=drbg_cavs_test.c drbg_cavs_data.c + INCLUDE[drbg_cavs_test]=../include . .. + DEPEND[drbg_cavs_test]=../libcrypto libtestutil.a + SOURCE[x509_dup_cert_test]=x509_dup_cert_test.c INCLUDE[x509_dup_cert_test]=../include DEPEND[x509_dup_cert_test]=../libcrypto libtestutil.a @@ -348,6 +373,13 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN INCLUDE[servername_test]=../include DEPEND[servername_test]=../libcrypto ../libssl libtestutil.a + IF[{- !$disabled{cms} -}] + PROGRAMS_NO_INST=cmsapitest + SOURCE[cmsapitest]=cmsapitest.c + INCLUDE[cmsapitest]=../include + DEPEND[cmsapitest]=../libcrypto libtestutil.a + ENDIF + IF[{- !$disabled{psk} -}] PROGRAMS_NO_INST=dtls_mtu_test SOURCE[dtls_mtu_test]=dtls_mtu_test.c ssltestlib.c @@ -358,7 +390,7 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN IF[{- !$disabled{shared} -}] PROGRAMS_NO_INST=shlibloadtest SOURCE[shlibloadtest]=shlibloadtest.c - INCLUDE[shlibloadtest]=../include + INCLUDE[shlibloadtest]=../include ../crypto/include DEPEND[shlibloadtest]=libtestutil.a ENDIF @@ -499,6 +531,10 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN SOURCE[sslbuffertest]=sslbuffertest.c ssltestlib.c INCLUDE[sslbuffertest]=../include DEPEND[sslbuffertest]=../libcrypto ../libssl libtestutil.a + + SOURCE[sysdefaulttest]=sysdefaulttest.c + INCLUDE[sysdefaulttest]=../include + DEPEND[sysdefaulttest]=../libcrypto ../libssl libtestutil.a ENDIF {- @@ -507,8 +543,10 @@ ENDIF use OpenSSL::Glob; my @nogo_headers = ( "asn1_mac.h", + "opensslconf.h", "__decc_include_prologue.h", "__decc_include_epilogue.h" ); + my @nogo_headers_re = ( qr/.*err\.h/ ); my @headerfiles = glob catfile($sourcedir, updir(), "include", "openssl", "*.h"); @@ -516,6 +554,7 @@ ENDIF my $name = basename($headerfile, ".h"); next if $disabled{$name}; next if grep { $_ eq lc("$name.h") } @nogo_headers; + next if grep { lc("$name.h") =~ m/$_/i } @nogo_headers_re; $OUT .= <<"_____"; PROGRAMS_NO_INST=buildtest_$name diff --git a/test/certs/mkcert.sh b/test/certs/mkcert.sh index 1d4b5037..bf61548d 100755 --- a/test/certs/mkcert.sh +++ b/test/certs/mkcert.sh @@ -1,6 +1,6 @@ #! /bin/bash # -# Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. # Copyright (c) 2016 Viktor Dukhovni . # All rights reserved. # diff --git a/test/cipherlist_test.c b/test/cipherlist_test.c index 50e30270..5023c1c4 100644 --- a/test/cipherlist_test.c +++ b/test/cipherlist_test.c @@ -63,6 +63,13 @@ static CIPHERLIST_TEST_FIXTURE *set_up(const char *const test_case_name) * are currently broken and should be considered mission impossible in libssl. */ static const uint32_t default_ciphers_in_order[] = { +#ifndef OPENSSL_NO_TLS1_3 + TLS1_3_CK_AES_256_GCM_SHA384, +# if !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305) + TLS1_3_CK_CHACHA20_POLY1305_SHA256, +# endif + TLS1_3_CK_AES_128_GCM_SHA256, +#endif #ifndef OPENSSL_NO_TLS1_2 # ifndef OPENSSL_NO_EC TLS1_CK_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, @@ -127,13 +134,6 @@ static const uint32_t default_ciphers_in_order[] = { TLS1_CK_RSA_WITH_AES_256_GCM_SHA384, TLS1_CK_RSA_WITH_AES_128_GCM_SHA256, #endif -#ifndef OPENSSL_NO_TLS1_3 - TLS1_3_CK_AES_256_GCM_SHA384, -# if !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305) - TLS1_3_CK_CHACHA20_POLY1305_SHA256, -# endif - TLS1_3_CK_AES_128_GCM_SHA256, -#endif #ifndef OPENSSL_NO_TLS1_2 TLS1_CK_RSA_WITH_AES_256_SHA256, TLS1_CK_RSA_WITH_AES_128_SHA256, @@ -215,7 +215,7 @@ static int test_default_cipherlist_explicit(void) return result; } -int setup_tests() +int setup_tests(void) { ADD_TEST(test_default_cipherlist_implicit); ADD_TEST(test_default_cipherlist_explicit); diff --git a/test/clienthellotest.c b/test/clienthellotest.c index 5cff519e..10e3b1b1 100644 --- a/test/clienthellotest.c +++ b/test/clienthellotest.c @@ -78,6 +78,8 @@ static int test_client_hello(int currtest) ctx = SSL_CTX_new(TLS_method()); if (!TEST_ptr(ctx)) goto end; + if (!TEST_true(SSL_CTX_set_max_proto_version(ctx, TLS_MAX_VERSION))) + goto end; switch(currtest) { case TEST_SET_SESSION_TICK_DATA_VER_NEG: @@ -97,8 +99,7 @@ static int test_client_hello(int currtest) * ClientHello is already going to be quite long. To avoid getting one * that is too long for this test we use a restricted ciphersuite list */ - if (!TEST_true(SSL_CTX_set_cipher_list(ctx, - "TLS13-AES-128-GCM-SHA256"))) + if (!TEST_true(SSL_CTX_set_cipher_list(ctx, ""))) goto end; /* Fall through */ case TEST_ADD_PADDING: @@ -121,7 +122,9 @@ static int test_client_hello(int currtest) * not need padding. */ } else if (!TEST_true(SSL_CTX_set_cipher_list(ctx, - "AES128-SHA:TLS13-AES-128-GCM-SHA256"))) { + "AES128-SHA")) + || !TEST_true(SSL_CTX_set_ciphersuites(ctx, + "TLS_AES_128_GCM_SHA256"))) { goto end; } break; diff --git a/test/cmsapitest.c b/test/cmsapitest.c new file mode 100644 index 00000000..a79ae8c0 --- /dev/null +++ b/test/cmsapitest.c @@ -0,0 +1,93 @@ +#include + +#include +#include +#include +#include + +#include "testutil.h" + +static X509 *cert = NULL; +static EVP_PKEY *privkey = NULL; + +static int test_encrypt_decrypt(void) +{ + int testresult = 0; + STACK_OF(X509) *certstack = sk_X509_new_null(); + const char *msg = "Hello world"; + BIO *msgbio = BIO_new_mem_buf(msg, strlen(msg)); + BIO *outmsgbio = BIO_new(BIO_s_mem()); + CMS_ContentInfo* content = NULL; + char buf[80]; + + if (!TEST_ptr(certstack) || !TEST_ptr(msgbio) || !TEST_ptr(outmsgbio)) + goto end; + + if (!TEST_int_gt(sk_X509_push(certstack, cert), 0)) + goto end; + + content = CMS_encrypt(certstack, msgbio, EVP_aes_128_cbc(), CMS_TEXT); + if (!TEST_ptr(content)) + goto end; + + if (!TEST_true(CMS_decrypt(content, privkey, cert, NULL, outmsgbio, + CMS_TEXT))) + goto end; + + /* Check we got the message we first started with */ + if (!TEST_int_eq(BIO_gets(outmsgbio, buf, sizeof(buf)), strlen(msg)) + || !TEST_int_eq(strcmp(buf, msg), 0)) + goto end; + + testresult = 1; + end: + sk_X509_free(certstack); + BIO_free(msgbio); + BIO_free(outmsgbio); + CMS_ContentInfo_free(content); + + return testresult; +} + +int setup_tests(void) +{ + char *certin = NULL, *privkeyin = NULL; + BIO *certbio = NULL, *privkeybio = NULL; + + if (!TEST_ptr(certin = test_get_argument(0)) + || !TEST_ptr(privkeyin = test_get_argument(1))) + return 0; + + certbio = BIO_new_file(certin, "r"); + if (!TEST_ptr(certbio)) + return 0; + if (!TEST_true(PEM_read_bio_X509(certbio, &cert, NULL, NULL))) { + BIO_free(certbio); + return 0; + } + BIO_free(certbio); + + privkeybio = BIO_new_file(privkeyin, "r"); + if (!TEST_ptr(privkeybio)) { + X509_free(cert); + cert = NULL; + return 0; + } + if (!TEST_true(PEM_read_bio_PrivateKey(privkeybio, &privkey, NULL, NULL))) { + BIO_free(privkeybio); + X509_free(cert); + cert = NULL; + return 0; + } + BIO_free(privkeybio); + + ADD_TEST(test_encrypt_decrypt); + + return 1; +} + +void cleanup_tests(void) +{ + X509_free(cert); + EVP_PKEY_free(privkey); +} diff --git a/test/conf_include_test.c b/test/conf_include_test.c index 41e4da04..7f99d3b1 100644 --- a/test/conf_include_test.c +++ b/test/conf_include_test.c @@ -30,7 +30,7 @@ #else /* the test does not work without chdir() */ # define chdir(x) (-1); -# define DIRSEP "" +# define DIRSEP "/" # define DIRSEP_PRESERVE 0 #endif diff --git a/test/ctype_internal_test.c b/test/ctype_internal_test.c index f1e392eb..a4613031 100644 --- a/test/ctype_internal_test.c +++ b/test/ctype_internal_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/test/dhtest.c b/test/dhtest.c index 96d7027c..8f0eec03 100644 --- a/test/dhtest.c +++ b/test/dhtest.c @@ -26,6 +26,11 @@ static int cb(int p, int n, BN_GENCB *arg); static int dh_test(void) { + DH *dh; + BIGNUM *p, *q, *g; + const BIGNUM *p2, *q2, *g2; + BIGNUM *priv_key; + const BIGNUM *pub_key2, *priv_key2; BN_GENCB *_cb = NULL; DH *a = NULL; DH *b = NULL; @@ -39,6 +44,78 @@ static int dh_test(void) int i, alen, blen, clen, aout, bout, cout; int ret = 0; + if (!TEST_ptr(dh = DH_new()) + || !TEST_ptr(p = BN_new()) + || !TEST_ptr(q = BN_new()) + || !TEST_ptr(g = BN_new()) + || !TEST_ptr(priv_key = BN_new())) + goto err; + + /* + * I) basic tests + */ + + /* using a small predefined Sophie Germain DH group with generator 3 */ + if (!TEST_true(BN_set_word(p, 4079L)) + || !TEST_true(BN_set_word(q, 2039L)) + || !TEST_true(BN_set_word(g, 3L)) + || !TEST_true(DH_set0_pqg(dh, p, q, g))) + goto err; + + /* test the combined getter for p, q, and g */ + DH_get0_pqg(dh, &p2, &q2, &g2); + if (!TEST_ptr_eq(p2, p) + || !TEST_ptr_eq(q2, q) + || !TEST_ptr_eq(g2, g)) + goto err; + + /* test the simple getters for p, q, and g */ + if (!TEST_ptr_eq(DH_get0_p(dh), p2) + || !TEST_ptr_eq(DH_get0_q(dh), q2) + || !TEST_ptr_eq(DH_get0_g(dh), g2)) + goto err; + + /* set the private key only*/ + if (!TEST_true(BN_set_word(priv_key, 1234L)) + || !TEST_true(DH_set0_key(dh, NULL, priv_key))) + goto err; + + /* test the combined getter for pub_key and priv_key */ + DH_get0_key(dh, &pub_key2, &priv_key2); + if (!TEST_ptr_eq(pub_key2, NULL) + || !TEST_ptr_eq(priv_key2, priv_key)) + goto err; + + /* test the simple getters for pub_key and priv_key */ + if (!TEST_ptr_eq(DH_get0_pub_key(dh), pub_key2) + || !TEST_ptr_eq(DH_get0_priv_key(dh), priv_key2)) + goto err; + + /* now generate a key pair ... */ + if (!DH_generate_key(dh)) + goto err; + + /* ... and check whether the private key was reused: */ + + /* test it with the combined getter for pub_key and priv_key */ + DH_get0_key(dh, &pub_key2, &priv_key2); + if (!TEST_ptr(pub_key2) + || !TEST_ptr_eq(priv_key2, priv_key)) + goto err; + + /* test it the simple getters for pub_key and priv_key */ + if (!TEST_ptr_eq(DH_get0_pub_key(dh), pub_key2) + || !TEST_ptr_eq(DH_get0_priv_key(dh), priv_key2)) + goto err; + + /* check whether the public key was calculated correclty */ + TEST_uint_eq(BN_get_word(pub_key2), 3331L); + + /* + * II) key generation + */ + + /* generate a DH group ... */ if (!TEST_ptr(_cb = BN_GENCB_new())) goto err; BN_GENCB_set(_cb, &cb, NULL); @@ -47,6 +124,7 @@ static int dh_test(void) DH_GENERATOR_5, _cb))) goto err; + /* ... and check whether it is valid */ if (!DH_check(a, &i)) goto err; if (!TEST_false(i & DH_CHECK_P_NOT_PRIME) @@ -57,6 +135,7 @@ static int dh_test(void) DH_get0_pqg(a, &ap, NULL, &ag); + /* now create another copy of the DH group for the peer */ if (!TEST_ptr(b = DH_new())) goto err; @@ -66,6 +145,10 @@ static int dh_test(void) goto err; bp = bg = NULL; + /* + * III) simulate a key exchange + */ + if (!DH_generate_key(a)) goto err; DH_get0_key(a, &apub_key, NULL); @@ -114,6 +197,8 @@ static int dh_test(void) BN_free(bg); BN_free(cpriv_key); BN_GENCB_free(_cb); + DH_free(dh); + return ret; } diff --git a/test/drbg_cavs_data.c b/test/drbg_cavs_data.c new file mode 100644 index 00000000..6f676ab0 --- /dev/null +++ b/test/drbg_cavs_data.c @@ -0,0 +1,170320 @@ +/* + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +/* + * DRBG test vectors from: + * https://csrc.nist.gov/projects/cryptographic-algorithm-validation-program/ + */ + +#include +#include "internal/nelem.h" +#include "drbg_cavs_data.h" + +static const unsigned char kat1_entropyin[] = { + 0x89, 0x0e, 0xb0, 0x67, 0xac, 0xf7, 0x38, 0x2e, 0xff, 0x80, 0xb0, 0xc7, + 0x3b, 0xc8, 0x72, 0xc6, +}; +static const unsigned char kat1_nonce[] = { + 0xaa, 0xd4, 0x71, 0xef, 0x3e, 0xf1, 0xd2, 0x03, +}; +static const unsigned char kat1_persstr[] = {0}; +static const unsigned char kat1_addin0[] = {0}; +static const unsigned char kat1_addin1[] = {0}; +static const unsigned char kat1_retbits[] = { + 0xa5, 0x51, 0x4e, 0xd7, 0x09, 0x5f, 0x64, 0xf3, 0xd0, 0xd3, 0xa5, 0x76, + 0x03, 0x94, 0xab, 0x42, 0x06, 0x2f, 0x37, 0x3a, 0x25, 0x07, 0x2a, 0x6e, + 0xa6, 0xbc, 0xfd, 0x84, 0x89, 0xe9, 0x4a, 0xf6, 0xcf, 0x18, 0x65, 0x9f, + 0xea, 0x22, 0xed, 0x1c, 0xa0, 0xa9, 0xe3, 0x3f, 0x71, 0x8b, 0x11, 0x5e, + 0xe5, 0x36, 0xb1, 0x28, 0x09, 0xc3, 0x1b, 0x72, 0xb0, 0x8d, 0xdd, 0x8b, + 0xe1, 0x91, 0x0f, 0xa3, +}; +static const struct drbg_kat_no_reseed kat1_t = { + 0, kat1_entropyin, kat1_nonce, kat1_persstr, + kat1_addin0, kat1_addin1, kat1_retbits +}; +static const struct drbg_kat kat1 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1_t +}; + +static const unsigned char kat2_entropyin[] = { + 0xc4, 0x7b, 0xe8, 0xe8, 0x21, 0x9a, 0x5a, 0x87, 0xc9, 0x40, 0x64, 0xa5, + 0x12, 0x08, 0x9f, 0x2b, +}; +static const unsigned char kat2_nonce[] = { + 0xf2, 0xa2, 0x3e, 0x63, 0x6a, 0xee, 0x75, 0xc6, +}; +static const unsigned char kat2_persstr[] = {0}; +static const unsigned char kat2_addin0[] = {0}; +static const unsigned char kat2_addin1[] = {0}; +static const unsigned char kat2_retbits[] = { + 0x5a, 0x16, 0x50, 0xbb, 0x6d, 0x6a, 0x16, 0xf6, 0x04, 0x05, 0x91, 0xd5, + 0x6a, 0xbc, 0xd5, 0xdd, 0x3d, 0xb8, 0x77, 0x2a, 0x9c, 0x75, 0xc4, 0x4d, + 0x9f, 0xc6, 0x4d, 0x51, 0xb7, 0x33, 0xd4, 0xa6, 0x75, 0x9b, 0xd5, 0xa6, + 0x4e, 0xc4, 0x23, 0x1a, 0x24, 0xe6, 0x62, 0xfd, 0xd4, 0x7c, 0x82, 0xdb, + 0x63, 0xb2, 0x00, 0xda, 0xf8, 0xd0, 0x98, 0x56, 0x0e, 0xb5, 0xba, 0x7b, + 0xf3, 0xf9, 0xab, 0xf7, +}; +static const struct drbg_kat_no_reseed kat2_t = { + 1, kat2_entropyin, kat2_nonce, kat2_persstr, + kat2_addin0, kat2_addin1, kat2_retbits +}; +static const struct drbg_kat kat2 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2_t +}; + +static const unsigned char kat3_entropyin[] = { + 0x13, 0x0b, 0x8c, 0x3d, 0x2d, 0x7b, 0x6e, 0x02, 0xc4, 0x10, 0xb4, 0x16, + 0x8e, 0x12, 0x2c, 0x38, +}; +static const unsigned char kat3_nonce[] = { + 0x79, 0xa6, 0x74, 0xc5, 0xb2, 0xc5, 0x1a, 0xa9, +}; +static const unsigned char kat3_persstr[] = {0}; +static const unsigned char kat3_addin0[] = {0}; +static const unsigned char kat3_addin1[] = {0}; +static const unsigned char kat3_retbits[] = { + 0x57, 0xe8, 0xa1, 0xe5, 0x78, 0xed, 0xe1, 0xc6, 0x68, 0x79, 0xc4, 0x30, + 0xdf, 0x72, 0x64, 0x35, 0xd5, 0x1a, 0x36, 0x9a, 0x0f, 0xe5, 0x9a, 0x03, + 0x58, 0xd1, 0xde, 0x35, 0x2d, 0x42, 0x80, 0xfd, 0x7b, 0x22, 0x5f, 0x5f, + 0x38, 0x6a, 0x4f, 0xcf, 0x12, 0xf7, 0x27, 0x94, 0xad, 0x0f, 0x37, 0x57, + 0xfb, 0x25, 0xde, 0xba, 0x3c, 0x75, 0x12, 0xce, 0x4d, 0x37, 0x33, 0xc7, + 0xee, 0x06, 0x70, 0x43, +}; +static const struct drbg_kat_no_reseed kat3_t = { + 2, kat3_entropyin, kat3_nonce, kat3_persstr, + kat3_addin0, kat3_addin1, kat3_retbits +}; +static const struct drbg_kat kat3 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3_t +}; + +static const unsigned char kat4_entropyin[] = { + 0x04, 0xd2, 0x41, 0x45, 0x28, 0x76, 0x64, 0xf6, 0x76, 0x2b, 0x5d, 0x2a, + 0x10, 0x2a, 0xc6, 0x03, +}; +static const unsigned char kat4_nonce[] = { + 0xec, 0xac, 0x63, 0xe1, 0x21, 0x7e, 0xe3, 0x35, +}; +static const unsigned char kat4_persstr[] = {0}; +static const unsigned char kat4_addin0[] = {0}; +static const unsigned char kat4_addin1[] = {0}; +static const unsigned char kat4_retbits[] = { + 0xfa, 0x5e, 0x74, 0x6d, 0xec, 0xd6, 0x80, 0x1e, 0xb7, 0x08, 0x3b, 0x6f, + 0x0e, 0x72, 0x43, 0x2e, 0x1f, 0xd4, 0x24, 0x31, 0x04, 0xf7, 0x48, 0xd0, + 0xf1, 0x90, 0x83, 0x92, 0x3b, 0x95, 0x55, 0x68, 0x8f, 0x43, 0x14, 0x6d, + 0x5a, 0xce, 0xa9, 0x62, 0xda, 0x01, 0x23, 0x1d, 0x9e, 0x5f, 0xaf, 0xf0, + 0xe8, 0x1f, 0x3d, 0x39, 0x4a, 0xce, 0x3a, 0x34, 0x54, 0x53, 0x6d, 0x72, + 0x65, 0x75, 0x04, 0x1f, +}; +static const struct drbg_kat_no_reseed kat4_t = { + 3, kat4_entropyin, kat4_nonce, kat4_persstr, + kat4_addin0, kat4_addin1, kat4_retbits +}; +static const struct drbg_kat kat4 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat4_t +}; + +static const unsigned char kat5_entropyin[] = { + 0xae, 0xde, 0x4e, 0x61, 0x35, 0x56, 0xb1, 0xd5, 0xa3, 0x0f, 0xce, 0x26, + 0x1f, 0xbb, 0x82, 0x0c, +}; +static const unsigned char kat5_nonce[] = { + 0x39, 0xac, 0xba, 0x03, 0xc5, 0xf1, 0x0a, 0xf4, +}; +static const unsigned char kat5_persstr[] = {0}; +static const unsigned char kat5_addin0[] = {0}; +static const unsigned char kat5_addin1[] = {0}; +static const unsigned char kat5_retbits[] = { + 0x23, 0x2c, 0x44, 0xb8, 0x19, 0xb8, 0x8f, 0x1a, 0xeb, 0x83, 0xf2, 0x03, + 0x4f, 0x84, 0x2d, 0x5a, 0x00, 0xf0, 0x30, 0x15, 0x05, 0xd2, 0xaa, 0x69, + 0xaa, 0xec, 0xb3, 0xcb, 0x14, 0xbc, 0xb1, 0x58, 0x75, 0xe0, 0xfd, 0x60, + 0x07, 0x1a, 0x80, 0xf6, 0x26, 0x2d, 0xce, 0xbc, 0xf4, 0x1a, 0x0e, 0x14, + 0x76, 0xd9, 0x6f, 0x40, 0x97, 0x12, 0xd8, 0x28, 0xae, 0x31, 0x3a, 0x9d, + 0x28, 0xec, 0x2d, 0xee, +}; +static const struct drbg_kat_no_reseed kat5_t = { + 4, kat5_entropyin, kat5_nonce, kat5_persstr, + kat5_addin0, kat5_addin1, kat5_retbits +}; +static const struct drbg_kat kat5 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat5_t +}; + +static const unsigned char kat6_entropyin[] = { + 0x9f, 0x90, 0x54, 0x1c, 0x10, 0xd4, 0xb7, 0xc0, 0x89, 0xfe, 0x68, 0x8e, + 0xa3, 0xef, 0x4f, 0xc6, +}; +static const unsigned char kat6_nonce[] = { + 0x1e, 0xac, 0x1c, 0x22, 0x03, 0x6e, 0x2b, 0x22, +}; +static const unsigned char kat6_persstr[] = {0}; +static const unsigned char kat6_addin0[] = {0}; +static const unsigned char kat6_addin1[] = {0}; +static const unsigned char kat6_retbits[] = { + 0x71, 0xaf, 0x3f, 0xdf, 0x67, 0x34, 0x04, 0x16, 0x3b, 0x06, 0x73, 0x7e, + 0x0f, 0x39, 0x91, 0x5f, 0xae, 0xc2, 0x18, 0x21, 0x81, 0x6c, 0x31, 0x42, + 0xe8, 0x0a, 0x50, 0x3c, 0x70, 0xcb, 0x2e, 0xdd, 0x46, 0x8c, 0x3f, 0x03, + 0xcb, 0x1f, 0x8a, 0x2f, 0x92, 0x48, 0x63, 0x5b, 0x63, 0xd7, 0xb8, 0xf1, + 0x9e, 0x9e, 0x11, 0xca, 0xf0, 0xab, 0x0c, 0x3d, 0x2f, 0xf9, 0xc7, 0x13, + 0x21, 0xca, 0xc1, 0x54, +}; +static const struct drbg_kat_no_reseed kat6_t = { + 5, kat6_entropyin, kat6_nonce, kat6_persstr, + kat6_addin0, kat6_addin1, kat6_retbits +}; +static const struct drbg_kat kat6 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat6_t +}; + +static const unsigned char kat7_entropyin[] = { + 0x3b, 0x8a, 0x18, 0x1c, 0xea, 0x83, 0x90, 0xd5, 0xd7, 0xa4, 0xe6, 0x51, + 0x5c, 0xf9, 0x2e, 0x3e, +}; +static const unsigned char kat7_nonce[] = { + 0x37, 0xf4, 0xd1, 0x74, 0x87, 0x14, 0x34, 0x5b, +}; +static const unsigned char kat7_persstr[] = {0}; +static const unsigned char kat7_addin0[] = {0}; +static const unsigned char kat7_addin1[] = {0}; +static const unsigned char kat7_retbits[] = { + 0xd6, 0xfd, 0x0f, 0xfb, 0x10, 0x85, 0x0e, 0xb6, 0xeb, 0x70, 0x50, 0xe6, + 0x1e, 0xac, 0x00, 0xd4, 0x72, 0xf6, 0x5c, 0xd3, 0xd9, 0x35, 0x08, 0x14, + 0x77, 0xfe, 0x44, 0xaa, 0x85, 0x69, 0x4e, 0x12, 0x0a, 0xb5, 0xa1, 0xca, + 0x1f, 0xa1, 0x98, 0xaf, 0x76, 0xdf, 0xa8, 0xd0, 0xab, 0xdf, 0x53, 0xe8, + 0x5a, 0xa8, 0xc8, 0x7f, 0xed, 0x0a, 0x8c, 0x24, 0x16, 0x39, 0x43, 0xb9, + 0x6d, 0x80, 0xaa, 0xfb, +}; +static const struct drbg_kat_no_reseed kat7_t = { + 6, kat7_entropyin, kat7_nonce, kat7_persstr, + kat7_addin0, kat7_addin1, kat7_retbits +}; +static const struct drbg_kat kat7 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat7_t +}; + +static const unsigned char kat8_entropyin[] = { + 0x85, 0x4c, 0xaa, 0x2a, 0x74, 0xf3, 0xf4, 0x3b, 0x6a, 0xbd, 0x80, 0x6d, + 0x67, 0x48, 0xed, 0x80, +}; +static const unsigned char kat8_nonce[] = { + 0x0c, 0xbd, 0x13, 0x72, 0xbe, 0xb6, 0x27, 0x36, +}; +static const unsigned char kat8_persstr[] = {0}; +static const unsigned char kat8_addin0[] = {0}; +static const unsigned char kat8_addin1[] = {0}; +static const unsigned char kat8_retbits[] = { + 0x46, 0x53, 0x40, 0x28, 0x16, 0x5f, 0xfe, 0x28, 0x45, 0xa9, 0x72, 0x62, + 0x7e, 0x67, 0xe1, 0x53, 0x51, 0x0c, 0xa1, 0x88, 0x0e, 0x6a, 0x3a, 0xd3, + 0x1f, 0xde, 0xe7, 0x1f, 0xf2, 0x40, 0xd3, 0x27, 0x86, 0x24, 0xb3, 0x1f, + 0x2d, 0x38, 0x6d, 0x7b, 0x22, 0x28, 0xce, 0xd6, 0x24, 0xa4, 0x2e, 0x7a, + 0x3b, 0x07, 0x48, 0x0b, 0x23, 0x23, 0x16, 0x6c, 0x18, 0xd1, 0xac, 0x0f, + 0x60, 0x00, 0x2e, 0xc4, +}; +static const struct drbg_kat_no_reseed kat8_t = { + 7, kat8_entropyin, kat8_nonce, kat8_persstr, + kat8_addin0, kat8_addin1, kat8_retbits +}; +static const struct drbg_kat kat8 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat8_t +}; + +static const unsigned char kat9_entropyin[] = { + 0x87, 0xe1, 0xc5, 0x32, 0x99, 0x7f, 0x57, 0xa3, 0x5c, 0x28, 0x6d, 0xe8, + 0x64, 0xbf, 0xf2, 0x64, +}; +static const unsigned char kat9_nonce[] = { + 0xa3, 0x9e, 0x98, 0xdb, 0x6c, 0x10, 0x78, 0x7f, +}; +static const unsigned char kat9_persstr[] = {0}; +static const unsigned char kat9_addin0[] = {0}; +static const unsigned char kat9_addin1[] = {0}; +static const unsigned char kat9_retbits[] = { + 0x2c, 0x14, 0x7e, 0x24, 0x11, 0x9a, 0xd8, 0xd4, 0xb2, 0xed, 0x61, 0xc1, + 0x53, 0xd0, 0x50, 0xc9, 0x24, 0xff, 0x59, 0x75, 0x15, 0xf1, 0x17, 0x3a, + 0x3d, 0xf4, 0x4b, 0x2c, 0x84, 0x28, 0xef, 0x89, 0x0e, 0xb9, 0xde, 0xf3, + 0xe4, 0x78, 0x04, 0xb2, 0xfd, 0x9b, 0x35, 0x7f, 0xe1, 0x3f, 0x8a, 0x3e, + 0x10, 0xc8, 0x67, 0x0a, 0xf9, 0xdf, 0x2d, 0x6c, 0x96, 0xfb, 0xb2, 0xb8, + 0xcb, 0x2d, 0xd6, 0xb0, +}; +static const struct drbg_kat_no_reseed kat9_t = { + 8, kat9_entropyin, kat9_nonce, kat9_persstr, + kat9_addin0, kat9_addin1, kat9_retbits +}; +static const struct drbg_kat kat9 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat9_t +}; + +static const unsigned char kat10_entropyin[] = { + 0x2f, 0xc6, 0x23, 0x42, 0x90, 0x29, 0xc9, 0x6e, 0xde, 0xf6, 0x16, 0x62, + 0x47, 0xb0, 0x8c, 0xb0, +}; +static const unsigned char kat10_nonce[] = { + 0x99, 0x82, 0x66, 0x33, 0x55, 0x58, 0x27, 0x88, +}; +static const unsigned char kat10_persstr[] = {0}; +static const unsigned char kat10_addin0[] = {0}; +static const unsigned char kat10_addin1[] = {0}; +static const unsigned char kat10_retbits[] = { + 0x55, 0x96, 0xcb, 0x16, 0xf3, 0xbe, 0x85, 0x52, 0xc1, 0xe5, 0xc1, 0x64, + 0xd5, 0x40, 0xcb, 0x1f, 0xaf, 0x4b, 0xea, 0x87, 0x33, 0xb6, 0x0a, 0x8a, + 0xd0, 0xc4, 0x06, 0x26, 0x25, 0x65, 0x48, 0xc7, 0xaa, 0x96, 0xd1, 0xd2, + 0x72, 0x9d, 0x26, 0xf0, 0x08, 0x73, 0x1f, 0xc3, 0x93, 0x07, 0xbe, 0x5b, + 0xcd, 0x20, 0x81, 0xc6, 0x9e, 0x31, 0x4e, 0x0c, 0x73, 0xe3, 0xd0, 0xfd, + 0x1d, 0x90, 0x58, 0x28, +}; +static const struct drbg_kat_no_reseed kat10_t = { + 9, kat10_entropyin, kat10_nonce, kat10_persstr, + kat10_addin0, kat10_addin1, kat10_retbits +}; +static const struct drbg_kat kat10 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat10_t +}; + +static const unsigned char kat11_entropyin[] = { + 0x98, 0xab, 0x8b, 0x4e, 0xaf, 0xab, 0x6e, 0x53, 0x6f, 0x78, 0x45, 0xab, + 0xec, 0x13, 0x78, 0x08, +}; +static const unsigned char kat11_nonce[] = { + 0xdb, 0xa9, 0x44, 0xc9, 0x8b, 0x31, 0x1d, 0x8e, +}; +static const unsigned char kat11_persstr[] = {0}; +static const unsigned char kat11_addin0[] = {0}; +static const unsigned char kat11_addin1[] = {0}; +static const unsigned char kat11_retbits[] = { + 0x86, 0xee, 0xd3, 0xa9, 0xfa, 0x53, 0x45, 0x2f, 0xb1, 0x1d, 0xba, 0x9c, + 0xac, 0x8e, 0x44, 0x02, 0x52, 0x29, 0x28, 0xf2, 0x70, 0x5a, 0x5e, 0x58, + 0x2f, 0x4d, 0x00, 0xeb, 0x8f, 0xed, 0x81, 0x8e, 0x62, 0x9c, 0x72, 0xa6, + 0xa7, 0x79, 0xbe, 0xb4, 0xed, 0x9a, 0x23, 0x93, 0x68, 0x23, 0x3c, 0xbf, + 0xcf, 0x55, 0x68, 0x5d, 0xbf, 0x2d, 0xe3, 0x4a, 0xb5, 0x89, 0x20, 0xcf, + 0xac, 0xa4, 0xaa, 0xfe, +}; +static const struct drbg_kat_no_reseed kat11_t = { + 10, kat11_entropyin, kat11_nonce, kat11_persstr, + kat11_addin0, kat11_addin1, kat11_retbits +}; +static const struct drbg_kat kat11 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat11_t +}; + +static const unsigned char kat12_entropyin[] = { + 0x7d, 0xcf, 0x4f, 0xa7, 0x31, 0x13, 0x9c, 0x5b, 0xb6, 0x44, 0x2f, 0xed, + 0x91, 0xe8, 0x9f, 0x68, +}; +static const unsigned char kat12_nonce[] = { + 0xff, 0xd9, 0x4f, 0xe2, 0x1a, 0x80, 0x8b, 0x15, +}; +static const unsigned char kat12_persstr[] = {0}; +static const unsigned char kat12_addin0[] = {0}; +static const unsigned char kat12_addin1[] = {0}; +static const unsigned char kat12_retbits[] = { + 0x8e, 0xca, 0x20, 0xe3, 0x1c, 0x98, 0x39, 0xb7, 0x41, 0xaa, 0xa9, 0xbf, + 0x6c, 0xee, 0xe2, 0x24, 0xd3, 0x21, 0x26, 0xb3, 0x19, 0x6e, 0xef, 0x3e, + 0xcd, 0x34, 0x3d, 0x41, 0x4d, 0x32, 0x33, 0xb9, 0xfd, 0x0e, 0xa0, 0xed, + 0x1b, 0xc7, 0x70, 0x0c, 0x88, 0xcd, 0x7c, 0x88, 0xd3, 0xc0, 0x76, 0x13, + 0xc4, 0x2c, 0xd1, 0xf9, 0x09, 0xfe, 0xd8, 0xc6, 0xa7, 0x08, 0xd0, 0x5d, + 0x6b, 0x68, 0xfb, 0x2e, +}; +static const struct drbg_kat_no_reseed kat12_t = { + 11, kat12_entropyin, kat12_nonce, kat12_persstr, + kat12_addin0, kat12_addin1, kat12_retbits +}; +static const struct drbg_kat kat12 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat12_t +}; + +static const unsigned char kat13_entropyin[] = { + 0x51, 0x9c, 0x6e, 0xfe, 0xde, 0xd2, 0xa1, 0x10, 0xac, 0x41, 0x83, 0x9a, + 0x8b, 0x8a, 0xbf, 0xce, +}; +static const unsigned char kat13_nonce[] = { + 0x81, 0xd9, 0x5e, 0xdc, 0x06, 0xdd, 0xe6, 0xb3, +}; +static const unsigned char kat13_persstr[] = {0}; +static const unsigned char kat13_addin0[] = {0}; +static const unsigned char kat13_addin1[] = {0}; +static const unsigned char kat13_retbits[] = { + 0x39, 0xcd, 0xd1, 0x0e, 0x49, 0xe0, 0x35, 0x81, 0xe3, 0x81, 0x1d, 0xdd, + 0x07, 0xd9, 0xd0, 0xac, 0xc3, 0x40, 0x85, 0xa1, 0x2c, 0x1c, 0x6b, 0x87, + 0xa7, 0x63, 0x86, 0xe9, 0x70, 0x32, 0xdc, 0x01, 0xf5, 0x23, 0xf6, 0x32, + 0xec, 0x95, 0x0d, 0x04, 0x34, 0xc2, 0x59, 0x37, 0xe4, 0x32, 0xd9, 0x85, + 0x54, 0x59, 0x9a, 0x85, 0x5d, 0xb9, 0xad, 0xf5, 0x8b, 0x9e, 0x04, 0x59, + 0x7a, 0x21, 0xd0, 0x0d, +}; +static const struct drbg_kat_no_reseed kat13_t = { + 12, kat13_entropyin, kat13_nonce, kat13_persstr, + kat13_addin0, kat13_addin1, kat13_retbits +}; +static const struct drbg_kat kat13 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat13_t +}; + +static const unsigned char kat14_entropyin[] = { + 0x80, 0xc1, 0x9e, 0xea, 0xad, 0x1a, 0x58, 0x37, 0x94, 0x66, 0xaf, 0xae, + 0x1d, 0x80, 0x87, 0x6d, +}; +static const unsigned char kat14_nonce[] = { + 0xd9, 0xa2, 0x09, 0x3f, 0x11, 0x89, 0x2b, 0x82, +}; +static const unsigned char kat14_persstr[] = {0}; +static const unsigned char kat14_addin0[] = {0}; +static const unsigned char kat14_addin1[] = {0}; +static const unsigned char kat14_retbits[] = { + 0xce, 0xc5, 0x1b, 0x98, 0x5e, 0xc9, 0x7b, 0x18, 0xee, 0x8e, 0xad, 0x36, + 0x15, 0x7b, 0xea, 0xf9, 0x6f, 0x12, 0x9f, 0x28, 0x28, 0x08, 0x89, 0xec, + 0x87, 0x3c, 0x27, 0xb5, 0x62, 0x71, 0x98, 0xc5, 0x85, 0xa6, 0xad, 0x21, + 0xae, 0x23, 0xa9, 0x59, 0xc9, 0xfa, 0x49, 0xd9, 0x85, 0xaf, 0x0d, 0xf4, + 0x02, 0x8f, 0xdf, 0x1f, 0x51, 0xd8, 0x2e, 0x8f, 0x2b, 0x3f, 0x02, 0x88, + 0x53, 0xf1, 0x4e, 0x8f, +}; +static const struct drbg_kat_no_reseed kat14_t = { + 13, kat14_entropyin, kat14_nonce, kat14_persstr, + kat14_addin0, kat14_addin1, kat14_retbits +}; +static const struct drbg_kat kat14 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat14_t +}; + +static const unsigned char kat15_entropyin[] = { + 0xb7, 0x7b, 0xd2, 0x2e, 0xfe, 0xb7, 0x71, 0x58, 0x6d, 0x51, 0x6f, 0x58, + 0x21, 0x92, 0xa3, 0x11, +}; +static const unsigned char kat15_nonce[] = { + 0xa6, 0x99, 0xf4, 0x2a, 0x49, 0x81, 0xfe, 0xfc, +}; +static const unsigned char kat15_persstr[] = {0}; +static const unsigned char kat15_addin0[] = {0}; +static const unsigned char kat15_addin1[] = {0}; +static const unsigned char kat15_retbits[] = { + 0x7f, 0xf0, 0xab, 0xea, 0xff, 0xc6, 0xec, 0x92, 0x3c, 0xeb, 0xd9, 0x10, + 0xf5, 0x93, 0x7b, 0xf1, 0x4f, 0xc5, 0x2d, 0x2a, 0x74, 0x25, 0x83, 0x88, + 0xc7, 0x6c, 0x1b, 0xc9, 0xe6, 0x35, 0xad, 0xf1, 0x75, 0x85, 0x8f, 0x0a, + 0x55, 0x87, 0x7e, 0x7e, 0x9f, 0x5f, 0x86, 0x7d, 0x00, 0xb9, 0xb1, 0x36, + 0x3d, 0xde, 0x46, 0x28, 0x8a, 0x6f, 0xff, 0x53, 0x21, 0xf4, 0x69, 0x44, + 0x5a, 0xad, 0x41, 0x98, +}; +static const struct drbg_kat_no_reseed kat15_t = { + 14, kat15_entropyin, kat15_nonce, kat15_persstr, + kat15_addin0, kat15_addin1, kat15_retbits +}; +static const struct drbg_kat kat15 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat15_t +}; + +static const unsigned char kat16_entropyin[] = { + 0xb4, 0x08, 0xce, 0xfb, 0x5b, 0xc7, 0x15, 0x7d, 0x3f, 0x26, 0xcb, 0x95, + 0xa8, 0xb1, 0xd7, 0xac, +}; +static const unsigned char kat16_nonce[] = { + 0x02, 0x6c, 0x76, 0x8f, 0xd5, 0x77, 0xb9, 0x2a, +}; +static const unsigned char kat16_persstr[] = {0}; +static const unsigned char kat16_addin0[] = { + 0x57, 0x37, 0xef, 0x81, 0xde, 0xe3, 0x65, 0xb6, 0xda, 0xdb, 0x3f, 0xee, + 0xbf, 0x5d, 0x10, 0x84, +}; +static const unsigned char kat16_addin1[] = { + 0x33, 0x68, 0xa5, 0x16, 0xb3, 0x43, 0x1a, 0x3d, 0xaa, 0xa6, 0x0d, 0xc8, + 0x74, 0x3c, 0x82, 0x97, +}; +static const unsigned char kat16_retbits[] = { + 0x4e, 0x90, 0x9e, 0xbb, 0x24, 0x14, 0x7a, 0x00, 0x04, 0x06, 0x3a, 0x5e, + 0x47, 0xee, 0x04, 0x4f, 0xea, 0xd6, 0x10, 0xd6, 0x23, 0x24, 0xbd, 0x0f, + 0x96, 0x3f, 0x75, 0x6f, 0xb9, 0x13, 0x61, 0xe8, 0xb8, 0x7e, 0x3a, 0x76, + 0xa3, 0x98, 0x14, 0x3f, 0xe8, 0x81, 0x30, 0xfe, 0x1b, 0x54, 0x7b, 0x66, + 0x1a, 0x64, 0x80, 0xc7, 0x11, 0xb7, 0x39, 0xf1, 0x8a, 0x9d, 0xf3, 0xae, + 0x51, 0xd4, 0x1b, 0xc9, +}; +static const struct drbg_kat_no_reseed kat16_t = { + 0, kat16_entropyin, kat16_nonce, kat16_persstr, + kat16_addin0, kat16_addin1, kat16_retbits +}; +static const struct drbg_kat kat16 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat16_t +}; + +static const unsigned char kat17_entropyin[] = { + 0x71, 0xbd, 0xce, 0x35, 0x42, 0x7d, 0x20, 0xbf, 0x58, 0xcf, 0x17, 0x74, + 0xce, 0x72, 0xd8, 0x33, +}; +static const unsigned char kat17_nonce[] = { + 0x34, 0x50, 0x2d, 0x8f, 0x5b, 0x14, 0xc4, 0xdd, +}; +static const unsigned char kat17_persstr[] = {0}; +static const unsigned char kat17_addin0[] = { + 0x66, 0xef, 0x42, 0xd6, 0x9a, 0x8c, 0x3d, 0x6d, 0x4a, 0x9e, 0x95, 0xa6, + 0x91, 0x4d, 0x81, 0x56, +}; +static const unsigned char kat17_addin1[] = { + 0xe3, 0x18, 0x83, 0xd9, 0x4b, 0x5e, 0xc4, 0xcc, 0xaa, 0x61, 0x2f, 0xbb, + 0x4a, 0x55, 0xd1, 0xc6, +}; +static const unsigned char kat17_retbits[] = { + 0x97, 0x33, 0xe8, 0x20, 0x12, 0xe2, 0x7b, 0xa1, 0x46, 0x8f, 0xf2, 0x34, + 0xb3, 0xc9, 0xb6, 0x6b, 0x20, 0xb2, 0x4f, 0xee, 0x27, 0xd8, 0x0b, 0x21, + 0x8c, 0xff, 0x63, 0x73, 0x69, 0x29, 0xfb, 0xf3, 0x85, 0xcd, 0x88, 0x8e, + 0x43, 0x2c, 0x71, 0x8b, 0xa2, 0x55, 0xd2, 0x0f, 0x1d, 0x7f, 0xe3, 0xe1, + 0x2a, 0xa3, 0xe9, 0x2c, 0x25, 0x89, 0xc7, 0x14, 0x52, 0x99, 0x56, 0xcc, + 0xc3, 0xdf, 0xb3, 0x81, +}; +static const struct drbg_kat_no_reseed kat17_t = { + 1, kat17_entropyin, kat17_nonce, kat17_persstr, + kat17_addin0, kat17_addin1, kat17_retbits +}; +static const struct drbg_kat kat17 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat17_t +}; + +static const unsigned char kat18_entropyin[] = { + 0x9c, 0x0e, 0x4a, 0xea, 0xfc, 0x35, 0x7f, 0xf8, 0xe3, 0xf5, 0x40, 0xa4, + 0x55, 0x67, 0x8d, 0x7e, +}; +static const unsigned char kat18_nonce[] = { + 0xef, 0xd8, 0x3d, 0xc5, 0xc5, 0x31, 0xd1, 0x67, +}; +static const unsigned char kat18_persstr[] = {0}; +static const unsigned char kat18_addin0[] = { + 0x58, 0xa1, 0x18, 0x14, 0x08, 0x1c, 0x1c, 0x35, 0xaf, 0x89, 0x88, 0xf1, + 0x31, 0x40, 0xf6, 0xcc, +}; +static const unsigned char kat18_addin1[] = { + 0x19, 0x19, 0x22, 0x70, 0xd6, 0x1a, 0x43, 0x26, 0x4a, 0x30, 0xba, 0x9e, + 0xbc, 0x72, 0x8a, 0x5b, +}; +static const unsigned char kat18_retbits[] = { + 0x1e, 0xff, 0x1c, 0xf6, 0xb5, 0x75, 0x31, 0x55, 0x90, 0x70, 0x38, 0x82, + 0x35, 0x9b, 0x6a, 0xdb, 0x3c, 0x21, 0xeb, 0xcf, 0xda, 0x5d, 0x3b, 0x5d, + 0x6e, 0x88, 0xac, 0xab, 0x6e, 0x87, 0x9e, 0x0a, 0x6f, 0x75, 0x37, 0x5c, + 0x02, 0xd1, 0xd3, 0xfb, 0xae, 0x94, 0x3c, 0x34, 0x43, 0xe3, 0x9c, 0x29, + 0x9b, 0x80, 0xe2, 0x41, 0xcd, 0x36, 0x5d, 0x4a, 0xf8, 0xcd, 0x1a, 0xd5, + 0xd9, 0xd5, 0x4c, 0x58, +}; +static const struct drbg_kat_no_reseed kat18_t = { + 2, kat18_entropyin, kat18_nonce, kat18_persstr, + kat18_addin0, kat18_addin1, kat18_retbits +}; +static const struct drbg_kat kat18 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat18_t +}; + +static const unsigned char kat19_entropyin[] = { + 0x95, 0x07, 0x01, 0x9b, 0x1f, 0xe8, 0x79, 0x84, 0xbe, 0xc1, 0xd0, 0x9c, + 0xec, 0xcf, 0x36, 0x35, +}; +static const unsigned char kat19_nonce[] = { + 0x47, 0x58, 0x62, 0x74, 0xfa, 0x75, 0x3e, 0x0d, +}; +static const unsigned char kat19_persstr[] = {0}; +static const unsigned char kat19_addin0[] = { + 0xf1, 0x7d, 0xe4, 0xce, 0xef, 0x9f, 0x2f, 0x23, 0x42, 0x20, 0xcb, 0x71, + 0xd8, 0xce, 0xb7, 0x0d, +}; +static const unsigned char kat19_addin1[] = { + 0x99, 0xd4, 0x8d, 0x9c, 0xe2, 0xfe, 0x76, 0xdc, 0xb8, 0xd0, 0x5f, 0xa4, + 0xec, 0x07, 0x1a, 0xec, +}; +static const unsigned char kat19_retbits[] = { + 0x25, 0xa0, 0xd1, 0x67, 0x8e, 0x25, 0xb1, 0x94, 0x39, 0xd8, 0x33, 0x4c, + 0xa9, 0x02, 0xdb, 0x63, 0x47, 0xa9, 0xa4, 0x2b, 0x86, 0xf3, 0x54, 0xb9, + 0xe0, 0xb3, 0xc4, 0xf4, 0xe8, 0xba, 0x9d, 0x19, 0x2a, 0x5d, 0x76, 0x5a, + 0xae, 0x5f, 0x4c, 0x5a, 0x74, 0xa0, 0x17, 0x7d, 0x3e, 0xb6, 0x13, 0x70, + 0x62, 0xe6, 0xd9, 0x8b, 0x65, 0x18, 0x22, 0x26, 0x5b, 0xfe, 0xfc, 0x92, + 0x9a, 0x39, 0x69, 0xdd, +}; +static const struct drbg_kat_no_reseed kat19_t = { + 3, kat19_entropyin, kat19_nonce, kat19_persstr, + kat19_addin0, kat19_addin1, kat19_retbits +}; +static const struct drbg_kat kat19 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat19_t +}; + +static const unsigned char kat20_entropyin[] = { + 0x12, 0xe8, 0xb3, 0xda, 0x3a, 0x3b, 0x3e, 0x77, 0x3a, 0xfc, 0x23, 0x05, + 0xbd, 0xa8, 0x6d, 0xb6, +}; +static const unsigned char kat20_nonce[] = { + 0xc4, 0x9f, 0x26, 0x1a, 0x9a, 0xb9, 0xd9, 0xf8, +}; +static const unsigned char kat20_persstr[] = {0}; +static const unsigned char kat20_addin0[] = { + 0x86, 0xb6, 0x38, 0x52, 0x41, 0x96, 0x15, 0x9d, 0xea, 0x01, 0x76, 0xe5, + 0x46, 0x2a, 0xe6, 0x5c, +}; +static const unsigned char kat20_addin1[] = { + 0x5e, 0xad, 0xb7, 0x67, 0x72, 0xbe, 0x3c, 0xe8, 0x47, 0xaf, 0x6b, 0x77, + 0x94, 0xe0, 0x02, 0xe3, +}; +static const unsigned char kat20_retbits[] = { + 0x1b, 0xbf, 0x85, 0xe0, 0x2c, 0x1f, 0xc0, 0x4b, 0xea, 0x5f, 0xc4, 0x7f, + 0x23, 0x6a, 0x07, 0x1c, 0x13, 0xf8, 0xf5, 0x2e, 0xb1, 0x13, 0xcb, 0x83, + 0xc4, 0x15, 0x2a, 0xc8, 0x32, 0x62, 0x7a, 0xbb, 0xa6, 0xec, 0xde, 0xc1, + 0x7a, 0x9f, 0xf0, 0x30, 0x5b, 0x7a, 0x49, 0x81, 0x79, 0x83, 0xfa, 0x5b, + 0x66, 0x51, 0x45, 0xe7, 0xba, 0x9a, 0x5d, 0xf5, 0x72, 0x26, 0xec, 0xcf, + 0xc1, 0x64, 0xe3, 0xbb, +}; +static const struct drbg_kat_no_reseed kat20_t = { + 4, kat20_entropyin, kat20_nonce, kat20_persstr, + kat20_addin0, kat20_addin1, kat20_retbits +}; +static const struct drbg_kat kat20 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat20_t +}; + +static const unsigned char kat21_entropyin[] = { + 0xb6, 0x08, 0xb1, 0x49, 0xcf, 0x44, 0xfe, 0x06, 0x06, 0x13, 0xb1, 0x66, + 0x1d, 0xa0, 0xdf, 0x63, +}; +static const unsigned char kat21_nonce[] = { + 0x95, 0x17, 0xc9, 0x93, 0xf1, 0x50, 0x34, 0x77, +}; +static const unsigned char kat21_persstr[] = {0}; +static const unsigned char kat21_addin0[] = { + 0x55, 0x9c, 0xb8, 0x12, 0xc3, 0x75, 0x8b, 0x2b, 0x31, 0x9d, 0xd9, 0xf5, + 0x76, 0x8e, 0x8d, 0x3d, +}; +static const unsigned char kat21_addin1[] = { + 0xc9, 0xaf, 0x98, 0x7e, 0xfc, 0xe4, 0x70, 0x0f, 0xa9, 0xc8, 0xeb, 0xb9, + 0xfe, 0xcf, 0x00, 0xda, +}; +static const unsigned char kat21_retbits[] = { + 0x5b, 0x48, 0x13, 0x4d, 0xc7, 0xe6, 0x58, 0x9f, 0x1b, 0x40, 0x2c, 0xf5, + 0xc4, 0xf6, 0xe3, 0xa3, 0xeb, 0xfd, 0xa8, 0x26, 0x72, 0x50, 0xe8, 0xe8, + 0x11, 0xec, 0x05, 0x98, 0x6f, 0xf2, 0x1c, 0x78, 0xa1, 0x69, 0x30, 0xa8, + 0xe0, 0x81, 0x03, 0x07, 0x76, 0x08, 0xc0, 0x6f, 0xa5, 0xe2, 0xa0, 0x48, + 0xe8, 0x5d, 0xd6, 0xf3, 0x95, 0xce, 0xe2, 0x01, 0xd3, 0xcd, 0xe6, 0x35, + 0xe1, 0x7e, 0x20, 0x3e, +}; +static const struct drbg_kat_no_reseed kat21_t = { + 5, kat21_entropyin, kat21_nonce, kat21_persstr, + kat21_addin0, kat21_addin1, kat21_retbits +}; +static const struct drbg_kat kat21 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat21_t +}; + +static const unsigned char kat22_entropyin[] = { + 0xe9, 0x2f, 0xd0, 0x7a, 0x09, 0xf2, 0xbc, 0xcb, 0x43, 0x42, 0x4c, 0x57, + 0x57, 0x73, 0xb0, 0xf0, +}; +static const unsigned char kat22_nonce[] = { + 0xb4, 0xe3, 0xca, 0x71, 0xae, 0x15, 0xa0, 0x36, +}; +static const unsigned char kat22_persstr[] = {0}; +static const unsigned char kat22_addin0[] = { + 0xe1, 0xb4, 0xb0, 0x40, 0x13, 0xdc, 0x12, 0x18, 0x8c, 0x62, 0x3d, 0x10, + 0x11, 0xd4, 0x08, 0xf1, +}; +static const unsigned char kat22_addin1[] = { + 0x79, 0x56, 0xbf, 0x5b, 0x16, 0x58, 0x0b, 0x3e, 0x72, 0x0a, 0x81, 0x33, + 0x3e, 0xae, 0x24, 0x83, +}; +static const unsigned char kat22_retbits[] = { + 0x21, 0xa4, 0x67, 0x22, 0x42, 0x46, 0x56, 0x37, 0x0c, 0x47, 0x5b, 0x69, + 0xa1, 0xfb, 0xc7, 0x0c, 0x8c, 0xbf, 0x44, 0x2d, 0xc2, 0xbc, 0x28, 0xe0, + 0xab, 0x34, 0xbb, 0x6f, 0xfe, 0xd0, 0x6d, 0x10, 0xf4, 0x90, 0xdf, 0x7e, + 0x78, 0x7c, 0x12, 0xb6, 0x52, 0xd2, 0x19, 0xa5, 0x77, 0x30, 0x6f, 0x04, + 0xa9, 0xc8, 0x78, 0xb6, 0xcf, 0xdf, 0xf4, 0x3e, 0x13, 0x55, 0xc4, 0xd1, + 0x10, 0xfb, 0x0f, 0xb2, +}; +static const struct drbg_kat_no_reseed kat22_t = { + 6, kat22_entropyin, kat22_nonce, kat22_persstr, + kat22_addin0, kat22_addin1, kat22_retbits +}; +static const struct drbg_kat kat22 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat22_t +}; + +static const unsigned char kat23_entropyin[] = { + 0xde, 0x0b, 0x4e, 0xa1, 0xa4, 0x40, 0xce, 0x68, 0x0e, 0xd0, 0x04, 0xcf, + 0x64, 0xaf, 0xbe, 0x0f, +}; +static const unsigned char kat23_nonce[] = { + 0xab, 0xb3, 0x1a, 0x3a, 0xb1, 0x5e, 0xd4, 0x49, +}; +static const unsigned char kat23_persstr[] = {0}; +static const unsigned char kat23_addin0[] = { + 0x45, 0xe7, 0x10, 0x10, 0x0c, 0xad, 0x00, 0xf3, 0xd2, 0x93, 0xdb, 0x75, + 0x5e, 0xe1, 0x99, 0x0d, +}; +static const unsigned char kat23_addin1[] = { + 0xb9, 0x11, 0xc9, 0xa4, 0x38, 0x9e, 0x71, 0x67, 0x98, 0x2a, 0x51, 0x24, + 0x8e, 0xe2, 0x93, 0x7e, +}; +static const unsigned char kat23_retbits[] = { + 0x01, 0xc3, 0xaf, 0x83, 0x55, 0x7c, 0x63, 0x2d, 0xd8, 0x22, 0x83, 0x3f, + 0x18, 0xe5, 0x48, 0xfb, 0x60, 0x36, 0xe9, 0xcc, 0xac, 0xc3, 0xb4, 0x33, + 0xc5, 0xa7, 0x00, 0x79, 0x39, 0x93, 0x30, 0x89, 0x16, 0x22, 0x0e, 0x5a, + 0x74, 0x16, 0x39, 0x86, 0x1c, 0x2f, 0x17, 0x71, 0x9b, 0x32, 0x51, 0x22, + 0x06, 0xe3, 0x6e, 0x94, 0x7b, 0x28, 0x60, 0x07, 0x3b, 0x11, 0x3c, 0xcd, + 0xa3, 0xfe, 0x31, 0x68, +}; +static const struct drbg_kat_no_reseed kat23_t = { + 7, kat23_entropyin, kat23_nonce, kat23_persstr, + kat23_addin0, kat23_addin1, kat23_retbits +}; +static const struct drbg_kat kat23 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat23_t +}; + +static const unsigned char kat24_entropyin[] = { + 0x72, 0x27, 0xe1, 0x1c, 0xfc, 0x1a, 0x6b, 0x84, 0xb4, 0x0e, 0xca, 0x24, + 0xe7, 0x7f, 0x8c, 0x64, +}; +static const unsigned char kat24_nonce[] = { + 0xab, 0x7e, 0x9f, 0xc4, 0x5e, 0x58, 0x63, 0xfb, +}; +static const unsigned char kat24_persstr[] = {0}; +static const unsigned char kat24_addin0[] = { + 0xca, 0xeb, 0xb3, 0xcd, 0x32, 0xc9, 0xd3, 0xe1, 0xf5, 0xd3, 0x8f, 0x8b, + 0xdd, 0x89, 0x58, 0x7d, +}; +static const unsigned char kat24_addin1[] = { + 0x31, 0x38, 0x09, 0x26, 0xb8, 0x60, 0x80, 0x06, 0xb7, 0xc7, 0x93, 0x61, + 0xf0, 0xf9, 0x1d, 0x5e, +}; +static const unsigned char kat24_retbits[] = { + 0x3a, 0xd7, 0xb9, 0x32, 0x59, 0xc6, 0xd0, 0xfd, 0xb5, 0x14, 0x27, 0x7a, + 0xe9, 0x95, 0x01, 0x22, 0xfb, 0x97, 0x11, 0x33, 0x74, 0x2d, 0xe8, 0xe5, + 0x17, 0xdd, 0x22, 0x69, 0xdd, 0x5a, 0x3c, 0x25, 0x7e, 0x3d, 0x10, 0x6b, + 0x55, 0x56, 0x60, 0xcf, 0xdd, 0x6a, 0x92, 0xc2, 0xcd, 0xdf, 0x1e, 0x53, + 0xc4, 0x94, 0x5e, 0xd7, 0x72, 0xee, 0x30, 0x38, 0x04, 0xd0, 0x56, 0xf2, + 0x42, 0xbf, 0x53, 0x99, +}; +static const struct drbg_kat_no_reseed kat24_t = { + 8, kat24_entropyin, kat24_nonce, kat24_persstr, + kat24_addin0, kat24_addin1, kat24_retbits +}; +static const struct drbg_kat kat24 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat24_t +}; + +static const unsigned char kat25_entropyin[] = { + 0x3b, 0x9e, 0xe2, 0x0c, 0x82, 0x42, 0xb3, 0xf3, 0x58, 0xdb, 0xe8, 0xea, + 0x58, 0x9e, 0x6e, 0x7c, +}; +static const unsigned char kat25_nonce[] = { + 0xb1, 0xdc, 0x3a, 0x47, 0x03, 0x68, 0x52, 0x15, +}; +static const unsigned char kat25_persstr[] = {0}; +static const unsigned char kat25_addin0[] = { + 0x47, 0x33, 0x34, 0x47, 0x86, 0x73, 0xe7, 0xb4, 0xa4, 0x3e, 0x9a, 0xe6, + 0xa8, 0xac, 0x98, 0xbf, +}; +static const unsigned char kat25_addin1[] = { + 0x06, 0x1f, 0xe4, 0x45, 0x5a, 0x17, 0x08, 0x74, 0x98, 0xfe, 0x20, 0x9c, + 0x2c, 0xba, 0x7a, 0x91, +}; +static const unsigned char kat25_retbits[] = { + 0x8e, 0x50, 0x62, 0xb1, 0xfb, 0x29, 0x05, 0xc1, 0x57, 0xc5, 0x26, 0xfa, + 0x5f, 0x67, 0xcc, 0x99, 0xc6, 0xd7, 0x08, 0x0a, 0x3d, 0x31, 0x42, 0xfa, + 0x37, 0xc2, 0x09, 0xcf, 0x53, 0x4a, 0xf1, 0x6a, 0x9a, 0x2f, 0x28, 0x61, + 0xb8, 0x94, 0xea, 0x84, 0xa3, 0x73, 0xd4, 0xa8, 0x04, 0xc3, 0xdc, 0xd5, + 0x1f, 0xcc, 0x09, 0xdd, 0x0f, 0x5b, 0x39, 0x45, 0x69, 0x7a, 0xac, 0xd0, + 0xb8, 0xf3, 0xea, 0xfd, +}; +static const struct drbg_kat_no_reseed kat25_t = { + 9, kat25_entropyin, kat25_nonce, kat25_persstr, + kat25_addin0, kat25_addin1, kat25_retbits +}; +static const struct drbg_kat kat25 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat25_t +}; + +static const unsigned char kat26_entropyin[] = { + 0x8f, 0xf7, 0x57, 0xb2, 0x11, 0x69, 0xb3, 0xfd, 0x6e, 0x88, 0x00, 0xaa, + 0xc0, 0xe3, 0xc4, 0x1f, +}; +static const unsigned char kat26_nonce[] = { + 0x49, 0x4d, 0x42, 0x51, 0xe8, 0x88, 0x15, 0xb4, +}; +static const unsigned char kat26_persstr[] = {0}; +static const unsigned char kat26_addin0[] = { + 0xe0, 0x19, 0x9f, 0xb9, 0xf0, 0xf0, 0xa1, 0xa8, 0xdd, 0x9d, 0x19, 0xd1, + 0x43, 0x68, 0xfa, 0x1e, +}; +static const unsigned char kat26_addin1[] = { + 0x21, 0x91, 0xab, 0xe7, 0x24, 0x41, 0x28, 0x56, 0x36, 0xc1, 0x1b, 0xde, + 0xe9, 0x83, 0xed, 0x8c, +}; +static const unsigned char kat26_retbits[] = { + 0x06, 0x75, 0xb2, 0x25, 0x4b, 0x71, 0x31, 0x8e, 0xb3, 0xa3, 0x60, 0x4d, + 0x7b, 0x6d, 0x77, 0x80, 0x6c, 0xd7, 0xdf, 0x32, 0x5c, 0x7c, 0xe8, 0x9e, + 0x16, 0xd3, 0xbd, 0x56, 0x16, 0xb0, 0xfa, 0xec, 0x33, 0x0c, 0xfe, 0x6b, + 0x84, 0xb6, 0x87, 0x61, 0xad, 0xf7, 0x0c, 0xc1, 0x4e, 0x46, 0x25, 0x3e, + 0x11, 0x55, 0x72, 0xc1, 0xa4, 0xac, 0xbb, 0xae, 0xee, 0x1a, 0xd6, 0x81, + 0xb5, 0x38, 0xd6, 0xc9, +}; +static const struct drbg_kat_no_reseed kat26_t = { + 10, kat26_entropyin, kat26_nonce, kat26_persstr, + kat26_addin0, kat26_addin1, kat26_retbits +}; +static const struct drbg_kat kat26 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat26_t +}; + +static const unsigned char kat27_entropyin[] = { + 0x46, 0x0c, 0x0a, 0x1e, 0x92, 0x9b, 0x75, 0x18, 0xdb, 0xcf, 0x44, 0xe4, + 0xe7, 0xee, 0x4d, 0x83, +}; +static const unsigned char kat27_nonce[] = { + 0x88, 0x65, 0xd5, 0x01, 0x53, 0x48, 0x25, 0x9e, +}; +static const unsigned char kat27_persstr[] = {0}; +static const unsigned char kat27_addin0[] = { + 0xf9, 0x32, 0x78, 0x91, 0x40, 0xa0, 0xa7, 0x6f, 0x07, 0xb2, 0x5b, 0x5f, + 0x8e, 0x1d, 0x00, 0xdc, +}; +static const unsigned char kat27_addin1[] = { + 0xe6, 0x44, 0x6a, 0xe2, 0xc6, 0x62, 0x66, 0x73, 0xe1, 0x8e, 0x37, 0x3d, + 0xeb, 0x12, 0xbd, 0x26, +}; +static const unsigned char kat27_retbits[] = { + 0xc5, 0xde, 0x2e, 0x1a, 0x2a, 0xa7, 0x0a, 0x28, 0xac, 0xe6, 0x8e, 0x62, + 0x0c, 0x94, 0xb8, 0x88, 0xa0, 0x7b, 0x07, 0x80, 0xb3, 0x14, 0x38, 0xc5, + 0xe1, 0x1c, 0x5d, 0x76, 0xdf, 0xd6, 0x15, 0xf4, 0x1d, 0x4b, 0xa3, 0x24, + 0xd2, 0x2c, 0x12, 0xfe, 0xe3, 0x8f, 0x58, 0x93, 0x5d, 0xad, 0x35, 0xe0, + 0x0f, 0xe6, 0xa6, 0xe6, 0x11, 0x86, 0xc7, 0x88, 0x1c, 0x30, 0x6e, 0x96, + 0x31, 0xcc, 0x15, 0xec, +}; +static const struct drbg_kat_no_reseed kat27_t = { + 11, kat27_entropyin, kat27_nonce, kat27_persstr, + kat27_addin0, kat27_addin1, kat27_retbits +}; +static const struct drbg_kat kat27 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat27_t +}; + +static const unsigned char kat28_entropyin[] = { + 0xb2, 0xda, 0x44, 0xbc, 0x3b, 0xe2, 0xd1, 0x7a, 0x9a, 0xc2, 0x08, 0x80, + 0x85, 0xe9, 0x26, 0xf8, +}; +static const unsigned char kat28_nonce[] = { + 0x04, 0xbe, 0x54, 0x49, 0x35, 0x26, 0xc5, 0x78, +}; +static const unsigned char kat28_persstr[] = {0}; +static const unsigned char kat28_addin0[] = { + 0x67, 0xbe, 0x89, 0x19, 0x59, 0x65, 0xcd, 0x7d, 0xc9, 0x84, 0x27, 0x1b, + 0x49, 0x7d, 0x61, 0x90, +}; +static const unsigned char kat28_addin1[] = { + 0xc9, 0x95, 0x6b, 0x00, 0x4b, 0x0c, 0x26, 0xb3, 0xf6, 0x57, 0xc6, 0xc1, + 0x55, 0xd3, 0x60, 0xcc, +}; +static const unsigned char kat28_retbits[] = { + 0xc7, 0x74, 0x56, 0x62, 0x19, 0x48, 0xf6, 0x08, 0x38, 0xe3, 0x77, 0x9a, + 0x14, 0x60, 0x63, 0x22, 0x52, 0x96, 0xda, 0x38, 0x18, 0x0e, 0x2c, 0x4c, + 0x58, 0x35, 0xea, 0x27, 0xb2, 0x84, 0x24, 0xa8, 0x83, 0x1c, 0xee, 0x8c, + 0x8d, 0xf7, 0x39, 0xa2, 0xb1, 0x73, 0xb3, 0x7b, 0xe2, 0xc0, 0x2b, 0xff, + 0x38, 0xe0, 0xb3, 0x67, 0xd4, 0x82, 0xfb, 0x76, 0x54, 0x5f, 0xb3, 0xc9, + 0x8d, 0x82, 0xb6, 0xe7, +}; +static const struct drbg_kat_no_reseed kat28_t = { + 12, kat28_entropyin, kat28_nonce, kat28_persstr, + kat28_addin0, kat28_addin1, kat28_retbits +}; +static const struct drbg_kat kat28 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat28_t +}; + +static const unsigned char kat29_entropyin[] = { + 0xf1, 0x77, 0xbc, 0x8a, 0xf7, 0x5c, 0x49, 0xe1, 0xd3, 0x79, 0xb5, 0x72, + 0x26, 0x92, 0xbb, 0x3f, +}; +static const unsigned char kat29_nonce[] = { + 0xd8, 0xb5, 0xfb, 0xdc, 0x5d, 0xa7, 0xea, 0x7b, +}; +static const unsigned char kat29_persstr[] = {0}; +static const unsigned char kat29_addin0[] = { + 0x37, 0x41, 0x94, 0x38, 0x35, 0x54, 0xa4, 0x21, 0x41, 0x0a, 0xf5, 0xde, + 0x2f, 0xc2, 0xec, 0x82, +}; +static const unsigned char kat29_addin1[] = { + 0x00, 0x0b, 0xe9, 0xac, 0x8e, 0x4b, 0x0c, 0xd1, 0x24, 0x5d, 0x7b, 0x7d, + 0xbf, 0x8d, 0x87, 0x4f, +}; +static const unsigned char kat29_retbits[] = { + 0xb4, 0xa0, 0x0c, 0xd6, 0xe5, 0xf4, 0x7e, 0xa8, 0x7b, 0x12, 0x07, 0xc3, + 0xa2, 0x18, 0xd8, 0x98, 0x8d, 0x4c, 0xb7, 0xed, 0x52, 0xb1, 0x4b, 0x79, + 0xbb, 0xa5, 0x6a, 0xa7, 0xe5, 0x7e, 0x63, 0x64, 0x05, 0x70, 0x25, 0xab, + 0x8f, 0x60, 0xd9, 0x7b, 0x84, 0x71, 0x7b, 0xbf, 0x25, 0x58, 0xdd, 0x43, + 0x1f, 0x4b, 0xc3, 0x8c, 0xf1, 0xf6, 0x1e, 0xc0, 0xe7, 0xc2, 0xb4, 0xae, + 0xb5, 0x4b, 0x2f, 0xaa, +}; +static const struct drbg_kat_no_reseed kat29_t = { + 13, kat29_entropyin, kat29_nonce, kat29_persstr, + kat29_addin0, kat29_addin1, kat29_retbits +}; +static const struct drbg_kat kat29 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat29_t +}; + +static const unsigned char kat30_entropyin[] = { + 0x52, 0x6b, 0xc8, 0xb7, 0x97, 0xad, 0x67, 0xeb, 0x9b, 0x11, 0xbb, 0x5d, + 0x17, 0x32, 0x00, 0x87, +}; +static const unsigned char kat30_nonce[] = { + 0x64, 0x7b, 0xd2, 0x32, 0xad, 0x4d, 0x13, 0x00, +}; +static const unsigned char kat30_persstr[] = {0}; +static const unsigned char kat30_addin0[] = { + 0x58, 0xc8, 0xbf, 0x95, 0x0f, 0xab, 0x02, 0x71, 0x19, 0xee, 0x4a, 0x59, + 0x27, 0x27, 0xaa, 0x02, +}; +static const unsigned char kat30_addin1[] = { + 0x25, 0x39, 0xe1, 0x23, 0x92, 0x6b, 0x74, 0xab, 0x23, 0x41, 0x4d, 0x63, + 0x50, 0xb8, 0x92, 0x87, +}; +static const unsigned char kat30_retbits[] = { + 0x35, 0x9c, 0x56, 0x08, 0x34, 0xbb, 0xeb, 0xdb, 0x41, 0x34, 0xcc, 0x3e, + 0x66, 0xbc, 0x06, 0x95, 0xce, 0xfd, 0xb4, 0xfe, 0x56, 0x63, 0x75, 0x2b, + 0x6e, 0xba, 0x97, 0x4c, 0x4b, 0x85, 0x92, 0x4a, 0x01, 0xdc, 0xd4, 0xea, + 0x3e, 0xd7, 0x7f, 0x2a, 0xf3, 0x95, 0x7b, 0x87, 0x51, 0xf7, 0x37, 0x15, + 0x74, 0xbb, 0x8b, 0x09, 0x0b, 0xc0, 0xd5, 0x12, 0xc1, 0x57, 0xc6, 0x55, + 0x9c, 0x16, 0xd0, 0xfd, +}; +static const struct drbg_kat_no_reseed kat30_t = { + 14, kat30_entropyin, kat30_nonce, kat30_persstr, + kat30_addin0, kat30_addin1, kat30_retbits +}; +static const struct drbg_kat kat30 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat30_t +}; + +static const unsigned char kat31_entropyin[] = { + 0xe1, 0x0b, 0xc2, 0x8a, 0x0b, 0xfd, 0xdf, 0xe9, 0x3e, 0x7f, 0x51, 0x86, + 0xe0, 0xca, 0x0b, 0x3b, +}; +static const unsigned char kat31_nonce[] = { + 0x9f, 0xf4, 0x77, 0xc1, 0x86, 0x73, 0x84, 0x0d, +}; +static const unsigned char kat31_persstr[] = { + 0xc9, 0x80, 0xde, 0xdf, 0x98, 0x82, 0xed, 0x44, 0x64, 0xa6, 0x74, 0x96, + 0x78, 0x68, 0xf1, 0x43, +}; +static const unsigned char kat31_addin0[] = {0}; +static const unsigned char kat31_addin1[] = {0}; +static const unsigned char kat31_retbits[] = { + 0x35, 0xb0, 0x0d, 0xf6, 0x26, 0x9b, 0x66, 0x41, 0xfd, 0x4c, 0xcb, 0x35, + 0x4d, 0x56, 0xd8, 0x51, 0xde, 0x7a, 0x77, 0x52, 0x7e, 0x03, 0x4d, 0x60, + 0xc9, 0xe1, 0xa9, 0xe1, 0x52, 0x5a, 0x30, 0xed, 0x36, 0x1f, 0xde, 0xd8, + 0x9d, 0x3d, 0xcc, 0xb9, 0x78, 0xd4, 0xe7, 0xa9, 0xe1, 0x00, 0xeb, 0xf6, + 0x30, 0x62, 0x73, 0x5b, 0x52, 0x83, 0x1c, 0x6f, 0x0a, 0x1d, 0x3e, 0x1b, + 0xdc, 0x5e, 0xbc, 0x72, +}; +static const struct drbg_kat_no_reseed kat31_t = { + 0, kat31_entropyin, kat31_nonce, kat31_persstr, + kat31_addin0, kat31_addin1, kat31_retbits +}; +static const struct drbg_kat kat31 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat31_t +}; + +static const unsigned char kat32_entropyin[] = { + 0xca, 0x4b, 0x1e, 0xfa, 0x75, 0xbd, 0x69, 0x36, 0x38, 0x73, 0xb8, 0xf9, + 0xdb, 0x4d, 0x35, 0x0e, +}; +static const unsigned char kat32_nonce[] = { + 0x47, 0xbf, 0x6c, 0x37, 0x72, 0xfd, 0xf7, 0xa9, +}; +static const unsigned char kat32_persstr[] = { + 0xeb, 0xaa, 0x60, 0x2c, 0x4d, 0xbe, 0x33, 0xff, 0x1b, 0xef, 0xbf, 0x0a, + 0x0b, 0xc6, 0x97, 0x54, +}; +static const unsigned char kat32_addin0[] = {0}; +static const unsigned char kat32_addin1[] = {0}; +static const unsigned char kat32_retbits[] = { + 0x59, 0xc3, 0x19, 0x79, 0x1b, 0xb1, 0xf3, 0x0e, 0xe9, 0x34, 0xae, 0x6e, + 0x8b, 0x1f, 0xad, 0x1f, 0x74, 0xca, 0x25, 0x45, 0x68, 0xb8, 0x7f, 0x75, + 0x12, 0xf8, 0xf2, 0xab, 0x4c, 0x23, 0x01, 0x03, 0x05, 0xe1, 0x70, 0xee, + 0x75, 0xd8, 0xcb, 0xeb, 0x23, 0x4c, 0x7a, 0x23, 0x6e, 0x12, 0x27, 0xdb, + 0x6f, 0x7a, 0xac, 0x3c, 0x44, 0xb7, 0x87, 0x4b, 0x65, 0x56, 0x74, 0x45, + 0x34, 0x30, 0x0c, 0x3d, +}; +static const struct drbg_kat_no_reseed kat32_t = { + 1, kat32_entropyin, kat32_nonce, kat32_persstr, + kat32_addin0, kat32_addin1, kat32_retbits +}; +static const struct drbg_kat kat32 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat32_t +}; + +static const unsigned char kat33_entropyin[] = { + 0x35, 0x19, 0x49, 0x15, 0x74, 0x71, 0x9d, 0xdb, 0x1f, 0x51, 0xb5, 0xf5, + 0x9e, 0x21, 0xad, 0x3d, +}; +static const unsigned char kat33_nonce[] = { + 0xef, 0x1d, 0xbe, 0xae, 0x79, 0xf0, 0x89, 0x8b, +}; +static const unsigned char kat33_persstr[] = { + 0x7f, 0xdc, 0x21, 0xe3, 0x53, 0x24, 0x9e, 0x93, 0xdf, 0x98, 0xf2, 0x91, + 0x02, 0xb9, 0xac, 0xec, +}; +static const unsigned char kat33_addin0[] = {0}; +static const unsigned char kat33_addin1[] = {0}; +static const unsigned char kat33_retbits[] = { + 0x19, 0x2c, 0x71, 0x85, 0x74, 0x47, 0xaf, 0x82, 0x01, 0x37, 0x06, 0xb8, + 0xeb, 0x00, 0x8f, 0x8e, 0x2c, 0x2e, 0xb3, 0x99, 0x4a, 0x23, 0x8c, 0xf7, + 0x39, 0xe1, 0x74, 0x60, 0xfe, 0x84, 0xef, 0x71, 0xca, 0x43, 0x7e, 0x8a, + 0xcb, 0xb8, 0xd9, 0xd2, 0x88, 0x07, 0xc4, 0x7a, 0x5f, 0x03, 0x44, 0x42, + 0xaa, 0xf3, 0xc2, 0xf3, 0xe7, 0xde, 0xbe, 0x53, 0x1b, 0xc3, 0x59, 0x60, + 0x56, 0x68, 0x58, 0x48, +}; +static const struct drbg_kat_no_reseed kat33_t = { + 2, kat33_entropyin, kat33_nonce, kat33_persstr, + kat33_addin0, kat33_addin1, kat33_retbits +}; +static const struct drbg_kat kat33 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat33_t +}; + +static const unsigned char kat34_entropyin[] = { + 0x68, 0xed, 0xc1, 0xc7, 0xf0, 0x4f, 0xa2, 0x2f, 0x75, 0x1b, 0x91, 0x8b, + 0x01, 0x6b, 0xbf, 0xb5, +}; +static const unsigned char kat34_nonce[] = { + 0xa9, 0xb6, 0x7a, 0x39, 0x58, 0xf2, 0x02, 0xf0, +}; +static const unsigned char kat34_persstr[] = { + 0x9d, 0x6f, 0xbb, 0x02, 0x0e, 0x3d, 0x99, 0xd1, 0x95, 0xff, 0x46, 0x9f, + 0x0a, 0xc0, 0xb8, 0xca, +}; +static const unsigned char kat34_addin0[] = {0}; +static const unsigned char kat34_addin1[] = {0}; +static const unsigned char kat34_retbits[] = { + 0xd9, 0x02, 0x89, 0xb1, 0xb6, 0x76, 0x3a, 0x76, 0x90, 0xfc, 0xb5, 0xd6, + 0x7c, 0x81, 0xc2, 0x03, 0xa1, 0xcf, 0xb0, 0x88, 0x71, 0xb9, 0x4a, 0xf6, + 0x51, 0xc4, 0xcd, 0x7e, 0xc2, 0xfa, 0x4b, 0x9d, 0x47, 0xc8, 0xe5, 0xfc, + 0xc9, 0x9a, 0xff, 0xc2, 0x21, 0x43, 0xb6, 0x12, 0x70, 0x18, 0xe9, 0xe2, + 0xc0, 0x91, 0x4f, 0x9d, 0x47, 0xa5, 0xa3, 0x0b, 0x26, 0xe7, 0x4d, 0xdc, + 0x31, 0xa4, 0x48, 0x42, +}; +static const struct drbg_kat_no_reseed kat34_t = { + 3, kat34_entropyin, kat34_nonce, kat34_persstr, + kat34_addin0, kat34_addin1, kat34_retbits +}; +static const struct drbg_kat kat34 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat34_t +}; + +static const unsigned char kat35_entropyin[] = { + 0x8e, 0x6b, 0xaf, 0x81, 0xa3, 0xf9, 0xe7, 0x32, 0xef, 0xb9, 0x65, 0xaf, + 0xa5, 0x9e, 0x71, 0xee, +}; +static const unsigned char kat35_nonce[] = { + 0x9a, 0x40, 0x36, 0xfe, 0x7f, 0xf2, 0x25, 0xb8, +}; +static const unsigned char kat35_persstr[] = { + 0xc5, 0x7e, 0x42, 0xad, 0x7a, 0xef, 0x53, 0x77, 0xfc, 0x4c, 0xd6, 0x20, + 0xd6, 0x31, 0xb0, 0x61, +}; +static const unsigned char kat35_addin0[] = {0}; +static const unsigned char kat35_addin1[] = {0}; +static const unsigned char kat35_retbits[] = { + 0x71, 0x39, 0xa2, 0xd6, 0x74, 0xee, 0xfe, 0x54, 0x08, 0x7a, 0x2d, 0xd5, + 0xf4, 0x97, 0xf5, 0xa1, 0xcb, 0x44, 0x44, 0x72, 0xe3, 0x64, 0x04, 0x5c, + 0xb9, 0x20, 0x2b, 0xce, 0x24, 0x58, 0x1b, 0x4b, 0x1b, 0x80, 0x3f, 0xa5, + 0xf4, 0xa9, 0xac, 0x6d, 0x66, 0x37, 0xbd, 0xd9, 0x06, 0xaf, 0x3d, 0x8f, + 0x49, 0xb5, 0xb8, 0x0f, 0x44, 0xcd, 0x16, 0xee, 0x5b, 0x1a, 0xe3, 0xbf, + 0x51, 0xb5, 0x98, 0xba, +}; +static const struct drbg_kat_no_reseed kat35_t = { + 4, kat35_entropyin, kat35_nonce, kat35_persstr, + kat35_addin0, kat35_addin1, kat35_retbits +}; +static const struct drbg_kat kat35 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat35_t +}; + +static const unsigned char kat36_entropyin[] = { + 0xf8, 0x99, 0x2f, 0x34, 0x0f, 0x90, 0xc8, 0xd8, 0x16, 0xb4, 0xbd, 0x8b, + 0x43, 0x5d, 0xa0, 0x35, +}; +static const unsigned char kat36_nonce[] = { + 0xfc, 0xf9, 0x44, 0x00, 0x6f, 0x29, 0x27, 0x98, +}; +static const unsigned char kat36_persstr[] = { + 0x56, 0x32, 0x23, 0x5e, 0x85, 0x2c, 0x07, 0x40, 0x09, 0xb4, 0x97, 0xed, + 0xa4, 0x38, 0xa1, 0x6f, +}; +static const unsigned char kat36_addin0[] = {0}; +static const unsigned char kat36_addin1[] = {0}; +static const unsigned char kat36_retbits[] = { + 0x9e, 0xab, 0x55, 0xfa, 0x4b, 0x2c, 0x1c, 0xfa, 0xc6, 0x3d, 0x4d, 0xe4, + 0x7a, 0xa8, 0xf5, 0x9f, 0x78, 0x5e, 0xe4, 0x90, 0xda, 0x44, 0xce, 0xe3, + 0x0f, 0x91, 0x61, 0xe9, 0x3a, 0xfc, 0x46, 0x1d, 0xad, 0x0e, 0x7f, 0x4a, + 0x06, 0x4e, 0x92, 0xef, 0xd6, 0x00, 0x89, 0x16, 0xc2, 0x2f, 0x83, 0x64, + 0xc1, 0x90, 0x46, 0x7a, 0xde, 0x12, 0xab, 0x4e, 0x18, 0xb1, 0xf3, 0x9c, + 0xe1, 0x8b, 0x35, 0x8a, +}; +static const struct drbg_kat_no_reseed kat36_t = { + 5, kat36_entropyin, kat36_nonce, kat36_persstr, + kat36_addin0, kat36_addin1, kat36_retbits +}; +static const struct drbg_kat kat36 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat36_t +}; + +static const unsigned char kat37_entropyin[] = { + 0x07, 0x43, 0x8f, 0x83, 0x53, 0xb7, 0xb0, 0x67, 0x42, 0x18, 0x31, 0x9e, + 0x29, 0x54, 0x0b, 0xca, +}; +static const unsigned char kat37_nonce[] = { + 0x41, 0x14, 0x77, 0x63, 0x6a, 0x50, 0x0c, 0x62, +}; +static const unsigned char kat37_persstr[] = { + 0xcf, 0x36, 0xf2, 0xaa, 0x72, 0xf2, 0xf3, 0x5e, 0x33, 0x5e, 0x65, 0xcf, + 0xd1, 0x7e, 0x2d, 0x3d, +}; +static const unsigned char kat37_addin0[] = {0}; +static const unsigned char kat37_addin1[] = {0}; +static const unsigned char kat37_retbits[] = { + 0x6c, 0xfa, 0xcf, 0xe4, 0x7a, 0xcf, 0x8f, 0x61, 0xd8, 0xaf, 0x3e, 0xd4, + 0xfb, 0xac, 0xef, 0x5c, 0xd7, 0x41, 0xac, 0x2f, 0x16, 0x5e, 0x15, 0xbd, + 0xaa, 0xb1, 0xd0, 0x30, 0xc6, 0x85, 0x67, 0x83, 0x7e, 0xf3, 0xda, 0x1e, + 0xc8, 0x3d, 0xa0, 0x42, 0x3c, 0xa3, 0x42, 0x4c, 0xf2, 0x93, 0xf6, 0x1f, + 0x71, 0x75, 0xfb, 0xa8, 0xe9, 0x1e, 0x5f, 0xdc, 0x8b, 0x39, 0x55, 0x77, + 0x73, 0x61, 0xd6, 0x90, +}; +static const struct drbg_kat_no_reseed kat37_t = { + 6, kat37_entropyin, kat37_nonce, kat37_persstr, + kat37_addin0, kat37_addin1, kat37_retbits +}; +static const struct drbg_kat kat37 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat37_t +}; + +static const unsigned char kat38_entropyin[] = { + 0x8e, 0x93, 0x73, 0x5c, 0x34, 0xae, 0x0c, 0x5e, 0xa5, 0x21, 0x3d, 0x83, + 0xa8, 0xda, 0x80, 0x45, +}; +static const unsigned char kat38_nonce[] = { + 0x2a, 0x0b, 0x27, 0x9a, 0x9d, 0x67, 0x78, 0x38, +}; +static const unsigned char kat38_persstr[] = { + 0x14, 0xf4, 0x52, 0x66, 0x52, 0x4a, 0x81, 0x52, 0x85, 0x7a, 0x83, 0x31, + 0x6a, 0x17, 0x75, 0x85, +}; +static const unsigned char kat38_addin0[] = {0}; +static const unsigned char kat38_addin1[] = {0}; +static const unsigned char kat38_retbits[] = { + 0xe0, 0x0c, 0xb8, 0x63, 0x6f, 0x96, 0x02, 0xc3, 0x30, 0x21, 0xa8, 0x2a, + 0x7f, 0x9d, 0xc9, 0xc7, 0x4e, 0xd3, 0x43, 0x5b, 0x34, 0x89, 0x7d, 0x6e, + 0xfd, 0x8c, 0x05, 0xf1, 0x77, 0xe8, 0x55, 0x6a, 0x44, 0x3b, 0xd1, 0x8c, + 0x20, 0xa5, 0x57, 0xb9, 0xbd, 0xc4, 0x17, 0xe8, 0x99, 0x85, 0x06, 0x48, + 0x50, 0x91, 0xd6, 0xbc, 0x91, 0x8e, 0x9c, 0xbf, 0xfb, 0xb8, 0x5c, 0x62, + 0x0f, 0x74, 0xc6, 0xec, +}; +static const struct drbg_kat_no_reseed kat38_t = { + 7, kat38_entropyin, kat38_nonce, kat38_persstr, + kat38_addin0, kat38_addin1, kat38_retbits +}; +static const struct drbg_kat kat38 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat38_t +}; + +static const unsigned char kat39_entropyin[] = { + 0xec, 0x6b, 0x87, 0xe9, 0xe0, 0x3f, 0x44, 0xf9, 0x19, 0xe4, 0x0e, 0x1d, + 0xac, 0x02, 0xf8, 0x73, +}; +static const unsigned char kat39_nonce[] = { + 0x5e, 0x9a, 0xc5, 0x09, 0x0a, 0x5e, 0x28, 0x97, +}; +static const unsigned char kat39_persstr[] = { + 0x0d, 0x9b, 0xa4, 0x62, 0xbf, 0x16, 0x6f, 0x3b, 0x36, 0x6a, 0x2a, 0xdf, + 0x55, 0xd2, 0x76, 0x45, +}; +static const unsigned char kat39_addin0[] = {0}; +static const unsigned char kat39_addin1[] = {0}; +static const unsigned char kat39_retbits[] = { + 0xec, 0x37, 0xac, 0xbd, 0xdf, 0xb0, 0x41, 0xe4, 0x24, 0x9c, 0x1c, 0xb9, + 0x83, 0x3a, 0x31, 0xfc, 0x6f, 0xbd, 0xaa, 0x66, 0x58, 0xe4, 0xb7, 0x48, + 0xc0, 0xeb, 0xf6, 0xab, 0x54, 0xa3, 0xb9, 0xc0, 0xf6, 0x2d, 0x7c, 0x89, + 0xdb, 0xb2, 0x1d, 0x1d, 0xe1, 0x33, 0x15, 0xcb, 0xae, 0x2f, 0xf4, 0xf5, + 0x46, 0x24, 0x91, 0x32, 0x1f, 0xbe, 0x04, 0xb4, 0x14, 0xfb, 0xa2, 0x80, + 0x7e, 0xd9, 0x14, 0xee, +}; +static const struct drbg_kat_no_reseed kat39_t = { + 8, kat39_entropyin, kat39_nonce, kat39_persstr, + kat39_addin0, kat39_addin1, kat39_retbits +}; +static const struct drbg_kat kat39 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat39_t +}; + +static const unsigned char kat40_entropyin[] = { + 0x9d, 0x28, 0x2f, 0x5a, 0x0c, 0x15, 0xa6, 0x53, 0x04, 0x73, 0x10, 0xb5, + 0x62, 0x7d, 0x8f, 0xa2, +}; +static const unsigned char kat40_nonce[] = { + 0x55, 0x22, 0xc4, 0x2f, 0x4b, 0xb0, 0x76, 0xdc, +}; +static const unsigned char kat40_persstr[] = { + 0x84, 0x6b, 0x2e, 0x17, 0xb0, 0x62, 0xc4, 0xc7, 0xc5, 0x61, 0x94, 0x3b, + 0x5d, 0x97, 0x56, 0x5d, +}; +static const unsigned char kat40_addin0[] = {0}; +static const unsigned char kat40_addin1[] = {0}; +static const unsigned char kat40_retbits[] = { + 0x45, 0xf6, 0x0e, 0x1b, 0xa9, 0x81, 0xaf, 0x7f, 0x52, 0xef, 0x49, 0x39, + 0xc0, 0xbb, 0x0b, 0xdb, 0x6f, 0xe4, 0x6f, 0x37, 0x2c, 0xc6, 0x48, 0x06, + 0x4b, 0xbd, 0x3a, 0x0a, 0x2b, 0x85, 0xc0, 0x23, 0x91, 0xb2, 0x97, 0x92, + 0xcc, 0x88, 0x05, 0xbb, 0x5d, 0x45, 0x3e, 0xe2, 0x90, 0xcd, 0x1b, 0x9c, + 0x9f, 0x8f, 0x20, 0xb0, 0x91, 0x16, 0xaf, 0x1f, 0xd5, 0xec, 0xea, 0xe8, + 0x0d, 0x03, 0x58, 0xd8, +}; +static const struct drbg_kat_no_reseed kat40_t = { + 9, kat40_entropyin, kat40_nonce, kat40_persstr, + kat40_addin0, kat40_addin1, kat40_retbits +}; +static const struct drbg_kat kat40 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat40_t +}; + +static const unsigned char kat41_entropyin[] = { + 0x83, 0x82, 0x7c, 0x08, 0x52, 0x4b, 0x54, 0xe8, 0x0f, 0x60, 0xe1, 0x86, + 0xcf, 0xce, 0x36, 0xdb, +}; +static const unsigned char kat41_nonce[] = { + 0x17, 0x7e, 0x5c, 0x00, 0xf7, 0x85, 0xa6, 0xf9, +}; +static const unsigned char kat41_persstr[] = { + 0x71, 0x75, 0xa2, 0xc2, 0x2e, 0xab, 0x4d, 0x0b, 0x1a, 0x65, 0xfd, 0xad, + 0xed, 0x35, 0x6a, 0xeb, +}; +static const unsigned char kat41_addin0[] = {0}; +static const unsigned char kat41_addin1[] = {0}; +static const unsigned char kat41_retbits[] = { + 0x84, 0x24, 0xe7, 0x6c, 0x73, 0x6c, 0x03, 0x09, 0x42, 0x3c, 0xf4, 0x8d, + 0xc1, 0x05, 0xfe, 0xef, 0x22, 0x8d, 0xd4, 0x7b, 0xfd, 0x8d, 0x33, 0x80, + 0x19, 0x50, 0xd2, 0x10, 0x2d, 0x5d, 0xba, 0xfb, 0x51, 0xe1, 0xa8, 0x5b, + 0x4a, 0x97, 0x1e, 0x4f, 0x0b, 0x9d, 0x52, 0x65, 0x69, 0x73, 0xdb, 0x45, + 0x5b, 0x28, 0x6f, 0x58, 0x8c, 0xa6, 0x1d, 0x15, 0x99, 0xc4, 0xec, 0x60, + 0xdd, 0x80, 0xbe, 0x98, +}; +static const struct drbg_kat_no_reseed kat41_t = { + 10, kat41_entropyin, kat41_nonce, kat41_persstr, + kat41_addin0, kat41_addin1, kat41_retbits +}; +static const struct drbg_kat kat41 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat41_t +}; + +static const unsigned char kat42_entropyin[] = { + 0x9f, 0x32, 0x13, 0xa2, 0xd6, 0xfe, 0x5f, 0x3d, 0xfa, 0xf0, 0xe4, 0xed, + 0x29, 0x2e, 0x0f, 0x2a, +}; +static const unsigned char kat42_nonce[] = { + 0xf9, 0xc0, 0x55, 0x3b, 0x18, 0xb2, 0x1c, 0xc3, +}; +static const unsigned char kat42_persstr[] = { + 0x21, 0x73, 0xd3, 0x9b, 0x37, 0x55, 0x04, 0x19, 0x11, 0x98, 0x9f, 0x89, + 0xf1, 0xe9, 0x5d, 0x3e, +}; +static const unsigned char kat42_addin0[] = {0}; +static const unsigned char kat42_addin1[] = {0}; +static const unsigned char kat42_retbits[] = { + 0x10, 0x45, 0xf7, 0xb5, 0x36, 0xda, 0xb4, 0xde, 0x01, 0x54, 0x48, 0xac, + 0x47, 0x66, 0x18, 0x8a, 0x36, 0x7b, 0xb6, 0x93, 0x97, 0x91, 0x3d, 0xfd, + 0x3d, 0x5b, 0xbf, 0x83, 0xf1, 0xbb, 0xac, 0x73, 0x23, 0x2d, 0x47, 0x64, + 0x4e, 0x5a, 0x9c, 0x16, 0x99, 0x60, 0x58, 0x1e, 0x4a, 0xd5, 0xed, 0x26, + 0x95, 0x36, 0x0b, 0x94, 0xf4, 0x20, 0x9c, 0x77, 0xd7, 0x69, 0x40, 0x16, + 0xb4, 0xb3, 0x97, 0xc2, +}; +static const struct drbg_kat_no_reseed kat42_t = { + 11, kat42_entropyin, kat42_nonce, kat42_persstr, + kat42_addin0, kat42_addin1, kat42_retbits +}; +static const struct drbg_kat kat42 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat42_t +}; + +static const unsigned char kat43_entropyin[] = { + 0xfb, 0xc8, 0x19, 0x90, 0x74, 0xa7, 0x6f, 0x23, 0x68, 0x86, 0x36, 0xae, + 0x31, 0x14, 0x28, 0x1e, +}; +static const unsigned char kat43_nonce[] = { + 0xeb, 0xc2, 0x2e, 0x95, 0xdd, 0xae, 0xb6, 0xfc, +}; +static const unsigned char kat43_persstr[] = { + 0x71, 0xfb, 0xd5, 0x9f, 0x88, 0xfc, 0x99, 0xa9, 0xb6, 0x07, 0x00, 0x27, + 0xe7, 0x35, 0x41, 0xc2, +}; +static const unsigned char kat43_addin0[] = {0}; +static const unsigned char kat43_addin1[] = {0}; +static const unsigned char kat43_retbits[] = { + 0x87, 0x25, 0x66, 0xa7, 0x00, 0x47, 0x98, 0xe0, 0x06, 0x97, 0xbd, 0xb3, + 0x3a, 0xf1, 0xee, 0x7a, 0x07, 0x6e, 0x9f, 0xd2, 0x89, 0xaf, 0x83, 0xaf, + 0xcb, 0x10, 0xa0, 0x25, 0x2b, 0xb5, 0xc1, 0x06, 0xc8, 0xdd, 0x20, 0xd7, + 0x7c, 0x85, 0x9f, 0x14, 0x01, 0x11, 0x8c, 0x24, 0xf5, 0xa8, 0x96, 0x8f, + 0x11, 0xfa, 0x9f, 0x77, 0x78, 0xc2, 0x80, 0x31, 0x89, 0xc8, 0xda, 0x87, + 0xe6, 0x49, 0x45, 0xc8, +}; +static const struct drbg_kat_no_reseed kat43_t = { + 12, kat43_entropyin, kat43_nonce, kat43_persstr, + kat43_addin0, kat43_addin1, kat43_retbits +}; +static const struct drbg_kat kat43 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat43_t +}; + +static const unsigned char kat44_entropyin[] = { + 0x43, 0xf4, 0xd0, 0x89, 0x06, 0x0c, 0x90, 0x7f, 0x38, 0x76, 0x05, 0x1f, + 0xd5, 0xe3, 0x6f, 0x74, +}; +static const unsigned char kat44_nonce[] = { + 0x45, 0x71, 0xe6, 0x61, 0x5b, 0xa3, 0xbb, 0xce, +}; +static const unsigned char kat44_persstr[] = { + 0xfc, 0x90, 0x57, 0x74, 0x9b, 0xa4, 0x37, 0xd8, 0xfb, 0xe9, 0xf8, 0x1d, + 0x29, 0xdf, 0x5e, 0xf1, +}; +static const unsigned char kat44_addin0[] = {0}; +static const unsigned char kat44_addin1[] = {0}; +static const unsigned char kat44_retbits[] = { + 0x90, 0x78, 0xf1, 0xbc, 0x92, 0x91, 0x0e, 0xbc, 0xf8, 0xe3, 0x17, 0x57, + 0xb6, 0x24, 0xbd, 0x23, 0xdb, 0xcd, 0x74, 0xf9, 0xca, 0x70, 0xff, 0x1c, + 0x6f, 0x2b, 0x21, 0xd8, 0x59, 0xa4, 0xe8, 0xa4, 0xe9, 0x96, 0x3e, 0xf1, + 0x32, 0xa0, 0x25, 0xb3, 0xae, 0x28, 0x5b, 0x43, 0xa6, 0x96, 0x98, 0x90, + 0x0d, 0x4f, 0x8a, 0x30, 0xbb, 0x5e, 0x99, 0x29, 0x0e, 0x45, 0x04, 0x16, + 0x19, 0x97, 0xa8, 0x37, +}; +static const struct drbg_kat_no_reseed kat44_t = { + 13, kat44_entropyin, kat44_nonce, kat44_persstr, + kat44_addin0, kat44_addin1, kat44_retbits +}; +static const struct drbg_kat kat44 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat44_t +}; + +static const unsigned char kat45_entropyin[] = { + 0x0e, 0xe3, 0x8e, 0xa2, 0x9d, 0x71, 0x95, 0x00, 0x3e, 0x2b, 0x94, 0x2a, + 0xbf, 0x13, 0x48, 0xfc, +}; +static const unsigned char kat45_nonce[] = { + 0x80, 0xa7, 0x5c, 0x77, 0xce, 0xff, 0x54, 0xe4, +}; +static const unsigned char kat45_persstr[] = { + 0x83, 0x8e, 0xae, 0xbc, 0x98, 0x2c, 0xaa, 0x15, 0x62, 0xc3, 0x06, 0x4c, + 0xce, 0x42, 0xe5, 0x1e, +}; +static const unsigned char kat45_addin0[] = {0}; +static const unsigned char kat45_addin1[] = {0}; +static const unsigned char kat45_retbits[] = { + 0x66, 0x29, 0x1b, 0x86, 0x85, 0xe9, 0x7c, 0x76, 0xe2, 0x21, 0x6d, 0x70, + 0x8b, 0x40, 0x70, 0x22, 0x68, 0x4b, 0x28, 0x29, 0x1f, 0x3d, 0xc7, 0x1b, + 0x5d, 0x60, 0xde, 0x14, 0x3f, 0x5f, 0xdf, 0x0b, 0xb0, 0x7a, 0xe9, 0xd7, + 0x52, 0x44, 0x56, 0xc4, 0xdf, 0xd0, 0x89, 0xea, 0x88, 0xde, 0x86, 0xdd, + 0xfa, 0x1d, 0x48, 0xca, 0x54, 0x2f, 0x00, 0xfa, 0x58, 0x6d, 0xa7, 0xa6, + 0x02, 0x7d, 0x83, 0x7b, +}; +static const struct drbg_kat_no_reseed kat45_t = { + 14, kat45_entropyin, kat45_nonce, kat45_persstr, + kat45_addin0, kat45_addin1, kat45_retbits +}; +static const struct drbg_kat kat45 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat45_t +}; + +static const unsigned char kat46_entropyin[] = { + 0xca, 0xe4, 0x8d, 0xd8, 0x0d, 0x29, 0x81, 0x03, 0xef, 0x1e, 0xc0, 0xbf, + 0x1b, 0xb9, 0x62, 0x70, +}; +static const unsigned char kat46_nonce[] = { + 0xd8, 0x27, 0xf9, 0x16, 0x13, 0xe0, 0xb4, 0x7f, +}; +static const unsigned char kat46_persstr[] = { + 0xcc, 0x92, 0x8f, 0x3d, 0x2d, 0xf3, 0x1a, 0x29, 0xf4, 0xe4, 0x44, 0xf3, + 0xdf, 0x08, 0xbe, 0x21, +}; +static const unsigned char kat46_addin0[] = { + 0x7e, 0xaa, 0x1b, 0xbe, 0xc7, 0x93, 0x93, 0xa7, 0xf4, 0xa8, 0x22, 0x7b, + 0x69, 0x1e, 0xcb, 0x68, +}; +static const unsigned char kat46_addin1[] = { + 0x68, 0x69, 0xc6, 0xc7, 0xb9, 0xe6, 0x65, 0x3b, 0x39, 0x77, 0xf0, 0x78, + 0x9e, 0x94, 0x47, 0x8a, +}; +static const unsigned char kat46_retbits[] = { + 0x92, 0x01, 0x32, 0xcd, 0x28, 0x46, 0x95, 0xb8, 0x68, 0xb5, 0xbc, 0x4b, + 0x70, 0x3a, 0xfe, 0xa4, 0xd9, 0x96, 0x62, 0x4a, 0x8f, 0x57, 0xe9, 0xfb, + 0xf5, 0xe7, 0x93, 0xb5, 0x09, 0xcb, 0x15, 0xb4, 0xbe, 0xaf, 0x70, 0x2d, + 0xac, 0x28, 0x71, 0x2d, 0x24, 0x9a, 0xe7, 0x50, 0x90, 0xa9, 0x1f, 0xd3, + 0x57, 0x75, 0x29, 0x4b, 0xf2, 0x4d, 0xde, 0xbf, 0xd2, 0x4e, 0x45, 0xd1, + 0x3f, 0x4a, 0x17, 0x48, +}; +static const struct drbg_kat_no_reseed kat46_t = { + 0, kat46_entropyin, kat46_nonce, kat46_persstr, + kat46_addin0, kat46_addin1, kat46_retbits +}; +static const struct drbg_kat kat46 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat46_t +}; + +static const unsigned char kat47_entropyin[] = { + 0xc0, 0x70, 0x1f, 0x92, 0x50, 0x75, 0x8f, 0xcd, 0xf2, 0xbe, 0x73, 0x98, + 0x80, 0xdb, 0x66, 0xeb, +}; +static const unsigned char kat47_nonce[] = { + 0x14, 0x68, 0xb4, 0xa5, 0x87, 0x9c, 0x2d, 0xa6, +}; +static const unsigned char kat47_persstr[] = { + 0x80, 0x08, 0xae, 0xe8, 0xe9, 0x69, 0x40, 0xc5, 0x08, 0x73, 0xc7, 0x9f, + 0x8e, 0xcf, 0xe0, 0x02, +}; +static const unsigned char kat47_addin0[] = { + 0xf9, 0x01, 0xf8, 0x16, 0x7a, 0x1d, 0xff, 0xde, 0x8e, 0x3c, 0x83, 0xe2, + 0x44, 0x85, 0xe7, 0xfe, +}; +static const unsigned char kat47_addin1[] = { + 0x17, 0x1c, 0x09, 0x38, 0xc2, 0x38, 0x9f, 0x97, 0x87, 0x60, 0x55, 0xb4, + 0x82, 0x16, 0x62, 0x7f, +}; +static const unsigned char kat47_retbits[] = { + 0x97, 0xc0, 0xc0, 0xe5, 0xa0, 0xcc, 0xf2, 0x4f, 0x33, 0x63, 0x48, 0x8a, + 0xdb, 0x13, 0x0a, 0x35, 0x89, 0xbf, 0x80, 0x65, 0x62, 0xee, 0x13, 0x95, + 0x7c, 0x33, 0xd3, 0x7d, 0xf4, 0x07, 0x77, 0x7a, 0x2b, 0x65, 0x0b, 0x5f, + 0x45, 0x5c, 0x13, 0xf1, 0x90, 0x77, 0x7f, 0xc5, 0x04, 0x3f, 0xcc, 0x1a, + 0x38, 0xf8, 0xcd, 0x1b, 0xbb, 0xd5, 0x57, 0xd1, 0x4a, 0x4c, 0x2e, 0x8a, + 0x2b, 0x49, 0x1e, 0x5c, +}; +static const struct drbg_kat_no_reseed kat47_t = { + 1, kat47_entropyin, kat47_nonce, kat47_persstr, + kat47_addin0, kat47_addin1, kat47_retbits +}; +static const struct drbg_kat kat47 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat47_t +}; + +static const unsigned char kat48_entropyin[] = { + 0x6b, 0x98, 0x53, 0x2d, 0x67, 0x8f, 0xd2, 0x79, 0xcf, 0x73, 0x7c, 0x58, + 0x15, 0x0c, 0xe5, 0x89, +}; +static const unsigned char kat48_nonce[] = { + 0xca, 0x55, 0x45, 0x07, 0x3d, 0x54, 0x9d, 0x06, +}; +static const unsigned char kat48_persstr[] = { + 0x80, 0x90, 0x8a, 0xc1, 0x34, 0xe0, 0xcd, 0x23, 0xef, 0x7e, 0x31, 0x85, + 0x48, 0xf9, 0x21, 0x91, +}; +static const unsigned char kat48_addin0[] = { + 0x53, 0x79, 0x0d, 0xa9, 0x09, 0xbf, 0xde, 0xed, 0xaa, 0xfd, 0x99, 0x61, + 0x9f, 0x3f, 0x46, 0x1b, +}; +static const unsigned char kat48_addin1[] = { + 0xc7, 0xa5, 0x87, 0x77, 0xd1, 0xfb, 0xd1, 0x55, 0x3e, 0x95, 0x46, 0xc8, + 0x3e, 0x40, 0x9f, 0xc2, +}; +static const unsigned char kat48_retbits[] = { + 0xd9, 0x84, 0xa2, 0x40, 0x58, 0x87, 0x39, 0x02, 0x27, 0x94, 0x09, 0x59, + 0xe4, 0x9f, 0x94, 0x4e, 0x49, 0x04, 0xc4, 0xf0, 0x46, 0x7f, 0xf2, 0x4d, + 0x87, 0x64, 0xdb, 0x91, 0x53, 0x0a, 0x1e, 0x59, 0x65, 0x68, 0x84, 0x72, + 0xfa, 0xc1, 0x31, 0xbe, 0xa0, 0x55, 0xc7, 0x15, 0x12, 0x27, 0xe2, 0xfc, + 0xb0, 0xda, 0xd9, 0x65, 0x5e, 0xc3, 0xac, 0x22, 0xcd, 0x7d, 0xff, 0x72, + 0xf6, 0xc7, 0x4a, 0xa0, +}; +static const struct drbg_kat_no_reseed kat48_t = { + 2, kat48_entropyin, kat48_nonce, kat48_persstr, + kat48_addin0, kat48_addin1, kat48_retbits +}; +static const struct drbg_kat kat48 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat48_t +}; + +static const unsigned char kat49_entropyin[] = { + 0x97, 0x51, 0x6e, 0x48, 0xd9, 0x10, 0x37, 0x2a, 0x3f, 0x1f, 0xb4, 0xaa, + 0x7a, 0xe4, 0x93, 0x0f, +}; +static const unsigned char kat49_nonce[] = { + 0xbb, 0xa3, 0x0b, 0x3d, 0xeb, 0x19, 0x33, 0x89, +}; +static const unsigned char kat49_persstr[] = { + 0x8c, 0x0e, 0x3e, 0x71, 0xc8, 0x20, 0x1a, 0x77, 0x10, 0x55, 0x19, 0xdf, + 0xfa, 0x89, 0xc1, 0xaa, +}; +static const unsigned char kat49_addin0[] = { + 0x0a, 0x18, 0x78, 0x7e, 0x46, 0x50, 0xfa, 0x02, 0x49, 0xf7, 0x79, 0x62, + 0xac, 0x15, 0x8c, 0x63, +}; +static const unsigned char kat49_addin1[] = { + 0x2f, 0xb1, 0x92, 0x31, 0x4c, 0x3e, 0x07, 0xf9, 0x63, 0xfb, 0xa3, 0x4d, + 0x8d, 0xfc, 0x8c, 0x9c, +}; +static const unsigned char kat49_retbits[] = { + 0xd7, 0xb7, 0x3e, 0x44, 0x9a, 0xed, 0x8f, 0x0a, 0x06, 0x93, 0x84, 0x83, + 0xe8, 0x78, 0x11, 0x04, 0x9b, 0x4a, 0xcf, 0xe5, 0x1c, 0xa5, 0x55, 0xf1, + 0xee, 0x97, 0x86, 0xe3, 0x3f, 0xce, 0x90, 0x69, 0x7d, 0xb6, 0x8d, 0x2d, + 0xc6, 0x36, 0x1c, 0x94, 0x2c, 0xf6, 0x7d, 0x89, 0x26, 0x19, 0x49, 0x7e, + 0x96, 0x19, 0x43, 0x32, 0xae, 0x32, 0xa6, 0x35, 0xcf, 0x35, 0x5b, 0xbc, + 0x3c, 0x66, 0x79, 0x55, +}; +static const struct drbg_kat_no_reseed kat49_t = { + 3, kat49_entropyin, kat49_nonce, kat49_persstr, + kat49_addin0, kat49_addin1, kat49_retbits +}; +static const struct drbg_kat kat49 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat49_t +}; + +static const unsigned char kat50_entropyin[] = { + 0x62, 0xce, 0xf3, 0x5a, 0x51, 0x8e, 0xf6, 0x52, 0x0b, 0x6e, 0xdb, 0x1a, + 0xa9, 0xa2, 0x14, 0x96, +}; +static const unsigned char kat50_nonce[] = { + 0x2b, 0x98, 0xe2, 0x69, 0xf5, 0x1f, 0xb3, 0xba, +}; +static const unsigned char kat50_persstr[] = { + 0x89, 0xa6, 0xc9, 0x11, 0x27, 0x13, 0xd0, 0xd1, 0x96, 0xc8, 0xe0, 0x26, + 0x60, 0xa2, 0x51, 0x31, +}; +static const unsigned char kat50_addin0[] = { + 0x35, 0xed, 0xb8, 0x77, 0x01, 0xcb, 0x50, 0x01, 0x43, 0x4d, 0xb1, 0x85, + 0x7b, 0xf9, 0x8e, 0xfb, +}; +static const unsigned char kat50_addin1[] = { + 0xa9, 0xfa, 0x53, 0xb5, 0xd3, 0x03, 0x2e, 0x4b, 0xe6, 0x0d, 0xcd, 0xb1, + 0xe9, 0x4b, 0x4f, 0x50, +}; +static const unsigned char kat50_retbits[] = { + 0xde, 0x8b, 0x77, 0x0b, 0x3e, 0xd4, 0x33, 0x15, 0xab, 0x7e, 0x83, 0x31, + 0xe2, 0xdf, 0x12, 0xcb, 0x9a, 0xbe, 0xb3, 0xf6, 0xb1, 0x4c, 0x45, 0x7a, + 0x30, 0x4b, 0xcd, 0x1d, 0xf7, 0x30, 0xdb, 0x52, 0xd4, 0xb4, 0x02, 0xf7, + 0x8b, 0x80, 0x54, 0x59, 0x65, 0xfc, 0x5a, 0x83, 0xdd, 0xf9, 0x99, 0x63, + 0xaa, 0xb5, 0xe1, 0xb3, 0x79, 0x24, 0x57, 0xdf, 0x4b, 0xf9, 0x27, 0xb6, + 0x6a, 0x4d, 0x67, 0x45, +}; +static const struct drbg_kat_no_reseed kat50_t = { + 4, kat50_entropyin, kat50_nonce, kat50_persstr, + kat50_addin0, kat50_addin1, kat50_retbits +}; +static const struct drbg_kat kat50 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat50_t +}; + +static const unsigned char kat51_entropyin[] = { + 0xc0, 0x2a, 0xf7, 0x05, 0xf6, 0x99, 0xc3, 0xa7, 0xf5, 0xe2, 0xbb, 0x9b, + 0x14, 0xc7, 0xce, 0xa7, +}; +static const unsigned char kat51_nonce[] = { + 0xeb, 0x24, 0x6b, 0x26, 0xa3, 0xa0, 0xa1, 0x0b, +}; +static const unsigned char kat51_persstr[] = { + 0x07, 0xdf, 0x3d, 0x3d, 0x48, 0x6b, 0xbe, 0x68, 0x19, 0x04, 0x40, 0x94, + 0xc9, 0x15, 0x89, 0x99, +}; +static const unsigned char kat51_addin0[] = { + 0xf4, 0x9d, 0x27, 0x9f, 0x04, 0x81, 0x5d, 0x98, 0x30, 0x92, 0xb6, 0xb5, + 0xfe, 0x4f, 0x10, 0xf7, +}; +static const unsigned char kat51_addin1[] = { + 0xd7, 0x66, 0x07, 0x00, 0x64, 0xdf, 0xe2, 0x03, 0xb2, 0xa3, 0x9d, 0x1b, + 0x24, 0x75, 0x84, 0x10, +}; +static const unsigned char kat51_retbits[] = { + 0xdd, 0xbb, 0x48, 0x8c, 0x6b, 0x6f, 0x0f, 0x9c, 0xb7, 0x05, 0xa3, 0xc5, + 0xab, 0x13, 0xc3, 0x17, 0x6f, 0x86, 0x7b, 0x12, 0x0c, 0x29, 0xdb, 0x37, + 0xf7, 0x9c, 0x00, 0x23, 0x8a, 0x77, 0xa0, 0x41, 0x45, 0x04, 0xd3, 0x28, + 0x93, 0xa0, 0x8c, 0x7e, 0x99, 0xc2, 0xb1, 0xa8, 0x8d, 0x50, 0x92, 0x2e, + 0x52, 0xb0, 0xdf, 0x56, 0x0b, 0x75, 0x3a, 0xdd, 0x48, 0x60, 0x4c, 0xaa, + 0xbb, 0xb9, 0x75, 0x2f, +}; +static const struct drbg_kat_no_reseed kat51_t = { + 5, kat51_entropyin, kat51_nonce, kat51_persstr, + kat51_addin0, kat51_addin1, kat51_retbits +}; +static const struct drbg_kat kat51 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat51_t +}; + +static const unsigned char kat52_entropyin[] = { + 0x56, 0x6f, 0xc3, 0x38, 0x98, 0x5a, 0x8f, 0xc8, 0x67, 0xda, 0xbe, 0x24, + 0xf7, 0xf9, 0x09, 0x7d, +}; +static const unsigned char kat52_nonce[] = { + 0xdb, 0xf7, 0x1d, 0x79, 0x17, 0xe0, 0xb1, 0x51, +}; +static const unsigned char kat52_persstr[] = { + 0x66, 0x56, 0x94, 0x18, 0x17, 0xa6, 0x15, 0xe2, 0x9f, 0x62, 0xbd, 0x4f, + 0x1d, 0x93, 0xcb, 0x11, +}; +static const unsigned char kat52_addin0[] = { + 0xa2, 0x74, 0xbe, 0x52, 0x97, 0x46, 0xbd, 0x0b, 0x6a, 0x58, 0x73, 0xdc, + 0x3c, 0x1d, 0xae, 0xbc, +}; +static const unsigned char kat52_addin1[] = { + 0x4e, 0x23, 0xfa, 0x29, 0xd2, 0x6b, 0x1f, 0xe9, 0x2b, 0xb4, 0x2b, 0x3e, + 0x9f, 0x2b, 0x4c, 0x08, +}; +static const unsigned char kat52_retbits[] = { + 0xb5, 0xda, 0x60, 0xb8, 0x70, 0x22, 0x6a, 0x48, 0xb2, 0xb9, 0xb5, 0xd9, + 0xa9, 0x46, 0x49, 0x54, 0xa8, 0xdb, 0x0d, 0x3e, 0x5f, 0xb3, 0x06, 0x3c, + 0x80, 0xe6, 0x75, 0x19, 0x7d, 0xc5, 0x84, 0x07, 0xb4, 0xc0, 0x40, 0x9c, + 0xd0, 0x69, 0x75, 0xed, 0xa8, 0xaf, 0xe6, 0x66, 0x7a, 0xa0, 0xd7, 0x9e, + 0xcf, 0x55, 0x5e, 0x23, 0x8f, 0x83, 0x42, 0x4f, 0x13, 0x08, 0x19, 0x20, + 0x0c, 0x24, 0x4a, 0x77, +}; +static const struct drbg_kat_no_reseed kat52_t = { + 6, kat52_entropyin, kat52_nonce, kat52_persstr, + kat52_addin0, kat52_addin1, kat52_retbits +}; +static const struct drbg_kat kat52 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat52_t +}; + +static const unsigned char kat53_entropyin[] = { + 0x67, 0x43, 0xbc, 0x12, 0x2a, 0xaa, 0x13, 0x4f, 0x82, 0xac, 0x8c, 0x78, + 0xcc, 0x0b, 0x64, 0xe7, +}; +static const unsigned char kat53_nonce[] = { + 0x2d, 0xc3, 0x2e, 0x4f, 0x3b, 0xba, 0x5a, 0x20, +}; +static const unsigned char kat53_persstr[] = { + 0xb8, 0x07, 0x7f, 0x23, 0xa9, 0x08, 0xc4, 0x25, 0x92, 0xc1, 0x3b, 0x63, + 0x89, 0x09, 0x98, 0xd0, +}; +static const unsigned char kat53_addin0[] = { + 0xd6, 0x83, 0x74, 0xf5, 0x8c, 0xe2, 0x5b, 0xd8, 0xe9, 0x5f, 0xe0, 0x6d, + 0xe8, 0xa9, 0x50, 0xa1, +}; +static const unsigned char kat53_addin1[] = { + 0x07, 0xb7, 0xab, 0x9c, 0x32, 0xa9, 0x78, 0x30, 0xa0, 0x0e, 0xd9, 0x89, + 0x5e, 0x3b, 0xbe, 0x19, +}; +static const unsigned char kat53_retbits[] = { + 0xfe, 0x82, 0x7f, 0x53, 0x07, 0x6d, 0xf3, 0x08, 0x47, 0xd0, 0xfb, 0x0f, + 0x55, 0xa2, 0xcd, 0x63, 0x81, 0xca, 0x0e, 0x79, 0xe6, 0x81, 0x62, 0x1f, + 0x49, 0xf3, 0x1e, 0x48, 0x11, 0xe9, 0xa6, 0x4c, 0x57, 0xc0, 0x99, 0x4f, + 0x18, 0x0c, 0x31, 0x1a, 0x40, 0x44, 0x40, 0xf2, 0x77, 0xfa, 0x62, 0xe0, + 0xf9, 0x9c, 0x6f, 0x5c, 0x7b, 0x88, 0xbe, 0xe2, 0x07, 0xfc, 0xa9, 0x92, + 0x6b, 0xfc, 0x9e, 0x46, +}; +static const struct drbg_kat_no_reseed kat53_t = { + 7, kat53_entropyin, kat53_nonce, kat53_persstr, + kat53_addin0, kat53_addin1, kat53_retbits +}; +static const struct drbg_kat kat53 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat53_t +}; + +static const unsigned char kat54_entropyin[] = { + 0xf2, 0xad, 0xdf, 0x01, 0x67, 0xa1, 0x6d, 0xa3, 0x8d, 0x2f, 0xd7, 0x92, + 0xa7, 0x18, 0x9c, 0x06, +}; +static const unsigned char kat54_nonce[] = { + 0x2b, 0x50, 0xd8, 0xcc, 0x7f, 0x71, 0x40, 0x1c, +}; +static const unsigned char kat54_persstr[] = { + 0xb9, 0x17, 0xa5, 0x4c, 0x13, 0xd5, 0x8c, 0xb6, 0xad, 0x47, 0xc8, 0xfa, + 0xf6, 0xf9, 0xa7, 0xf5, +}; +static const unsigned char kat54_addin0[] = { + 0xcf, 0x2e, 0x78, 0x5a, 0x06, 0xbc, 0x5e, 0xb7, 0x1e, 0x3b, 0x52, 0x4f, + 0x11, 0x72, 0xc7, 0x55, +}; +static const unsigned char kat54_addin1[] = { + 0xc9, 0xa7, 0x53, 0xa9, 0xce, 0xdd, 0xd7, 0x5d, 0x1a, 0x62, 0x6d, 0xa7, + 0x27, 0x95, 0xa3, 0xc6, +}; +static const unsigned char kat54_retbits[] = { + 0xe2, 0xaa, 0xf1, 0x1c, 0x20, 0xde, 0x2b, 0xaf, 0x89, 0x23, 0x04, 0x1d, + 0x83, 0x8f, 0x4a, 0xcb, 0x38, 0xe2, 0x22, 0xd3, 0x06, 0xb9, 0x7c, 0x97, + 0xbf, 0xe5, 0x46, 0x61, 0x7b, 0x3d, 0x8d, 0x92, 0xe4, 0x0c, 0xaa, 0x2e, + 0xdc, 0xac, 0x7a, 0x2f, 0xb0, 0x64, 0x3e, 0xd5, 0x7d, 0x47, 0xa9, 0x0a, + 0x11, 0x64, 0x10, 0x44, 0xb6, 0xc6, 0xa7, 0xdf, 0x42, 0x4d, 0xbd, 0xa2, + 0xb4, 0x5f, 0x0d, 0xf9, +}; +static const struct drbg_kat_no_reseed kat54_t = { + 8, kat54_entropyin, kat54_nonce, kat54_persstr, + kat54_addin0, kat54_addin1, kat54_retbits +}; +static const struct drbg_kat kat54 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat54_t +}; + +static const unsigned char kat55_entropyin[] = { + 0xca, 0x23, 0x34, 0x58, 0xf6, 0x6b, 0x26, 0xf2, 0xc1, 0x35, 0x7a, 0xef, + 0xce, 0xb6, 0x79, 0xef, +}; +static const unsigned char kat55_nonce[] = { + 0xfe, 0x13, 0x64, 0x04, 0xad, 0x7a, 0x49, 0xe7, +}; +static const unsigned char kat55_persstr[] = { + 0x26, 0x83, 0xdc, 0x31, 0x3b, 0xc0, 0xbb, 0x93, 0xeb, 0xb4, 0x6b, 0xbb, + 0x55, 0x3f, 0x58, 0x75, +}; +static const unsigned char kat55_addin0[] = { + 0xf7, 0x8a, 0xb1, 0xf4, 0x52, 0x6f, 0x0f, 0xa5, 0xcb, 0x75, 0x43, 0xd1, + 0x46, 0x43, 0xfe, 0xb5, +}; +static const unsigned char kat55_addin1[] = { + 0x40, 0xb9, 0x26, 0x32, 0x4c, 0xc2, 0x94, 0x3a, 0xca, 0x83, 0x7f, 0x69, + 0x0d, 0x0b, 0xcd, 0xa4, +}; +static const unsigned char kat55_retbits[] = { + 0x37, 0x24, 0xd0, 0xe5, 0x80, 0xe9, 0x0d, 0x4e, 0xf3, 0x2e, 0x5f, 0x8a, + 0x5b, 0xb5, 0x62, 0x25, 0xa9, 0x13, 0xf2, 0x10, 0xb7, 0x6d, 0x5a, 0x78, + 0xfd, 0x8e, 0xf2, 0x5d, 0x6e, 0xec, 0x9f, 0xf1, 0x47, 0x11, 0xd6, 0xdb, + 0x80, 0xe1, 0xe8, 0x11, 0x42, 0xa5, 0x60, 0x75, 0x34, 0xa7, 0x25, 0xd2, + 0x78, 0x5c, 0x8e, 0x3e, 0x4a, 0x48, 0xa5, 0x94, 0xb0, 0xd9, 0x1b, 0xc9, + 0x32, 0x82, 0x7b, 0xd7, +}; +static const struct drbg_kat_no_reseed kat55_t = { + 9, kat55_entropyin, kat55_nonce, kat55_persstr, + kat55_addin0, kat55_addin1, kat55_retbits +}; +static const struct drbg_kat kat55 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat55_t +}; + +static const unsigned char kat56_entropyin[] = { + 0x2b, 0x52, 0x1d, 0xc4, 0x03, 0x12, 0x9f, 0xd9, 0xed, 0x0b, 0xe9, 0xf5, + 0xfd, 0xe0, 0x66, 0x17, +}; +static const unsigned char kat56_nonce[] = { + 0xf0, 0xdf, 0xa0, 0x1e, 0x09, 0x9b, 0x95, 0xa1, +}; +static const unsigned char kat56_persstr[] = { + 0xfe, 0x85, 0x8d, 0x59, 0xd7, 0x34, 0xf6, 0x0f, 0x71, 0xa3, 0x87, 0x55, + 0x3c, 0xca, 0x46, 0xff, +}; +static const unsigned char kat56_addin0[] = { + 0x6f, 0xba, 0x8d, 0x06, 0xff, 0x43, 0x30, 0x07, 0xbd, 0x7d, 0x15, 0x56, + 0x9a, 0xf3, 0xd0, 0x69, +}; +static const unsigned char kat56_addin1[] = { + 0x80, 0xb0, 0xc1, 0x1f, 0x18, 0xb5, 0x92, 0x3a, 0x89, 0xf0, 0xfe, 0x23, + 0x77, 0x6d, 0x39, 0x05, +}; +static const unsigned char kat56_retbits[] = { + 0x41, 0x73, 0x88, 0xde, 0xe9, 0x08, 0x4f, 0x58, 0x8d, 0x0a, 0xdb, 0x5e, + 0x5d, 0x1b, 0x54, 0x6b, 0x12, 0x55, 0xcd, 0xf5, 0x9d, 0x69, 0x95, 0x7a, + 0xe6, 0x87, 0xc7, 0x82, 0x2b, 0x93, 0x5c, 0xe0, 0x29, 0x30, 0x6c, 0x02, + 0x50, 0xd4, 0x69, 0x83, 0x9c, 0x7d, 0xf9, 0xd3, 0xd0, 0x8e, 0xc8, 0xc5, + 0x0a, 0x66, 0x7a, 0xf1, 0x0d, 0x8d, 0x5b, 0x00, 0x73, 0x02, 0xa6, 0xe8, + 0x7b, 0x4e, 0x7f, 0x2c, +}; +static const struct drbg_kat_no_reseed kat56_t = { + 10, kat56_entropyin, kat56_nonce, kat56_persstr, + kat56_addin0, kat56_addin1, kat56_retbits +}; +static const struct drbg_kat kat56 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat56_t +}; + +static const unsigned char kat57_entropyin[] = { + 0xd0, 0x50, 0x2b, 0x78, 0xf7, 0xaa, 0x6f, 0xa1, 0xd8, 0x88, 0x42, 0x1d, + 0x70, 0x2c, 0xad, 0xd1, +}; +static const unsigned char kat57_nonce[] = { + 0x4b, 0x37, 0xb8, 0x96, 0x59, 0x69, 0xea, 0x8d, +}; +static const unsigned char kat57_persstr[] = { + 0x56, 0xbd, 0x43, 0x1f, 0x04, 0x88, 0xfe, 0x6d, 0x7b, 0xa3, 0x83, 0x6e, + 0x5c, 0x8c, 0x7a, 0xa9, +}; +static const unsigned char kat57_addin0[] = { + 0x26, 0x92, 0x5d, 0xbc, 0xbe, 0xd7, 0x33, 0xbe, 0x2a, 0x5e, 0x76, 0x49, + 0xc8, 0x76, 0xa0, 0xf8, +}; +static const unsigned char kat57_addin1[] = { + 0x9c, 0x70, 0x35, 0x2d, 0x4f, 0x9c, 0x88, 0x0e, 0x76, 0xd4, 0x68, 0x08, + 0x38, 0xdd, 0x0d, 0xea, +}; +static const unsigned char kat57_retbits[] = { + 0x65, 0x00, 0x24, 0x2c, 0x35, 0x88, 0xb4, 0x52, 0x30, 0x7b, 0x2a, 0x06, + 0x34, 0x90, 0x0e, 0x75, 0x6a, 0x3d, 0x26, 0x19, 0xfc, 0x2a, 0xdf, 0x10, + 0x77, 0x69, 0x22, 0xb0, 0x06, 0x61, 0x7e, 0xe8, 0x81, 0x82, 0x83, 0x66, + 0xac, 0x52, 0x7f, 0xad, 0xa0, 0x01, 0x86, 0xbc, 0x8b, 0xfd, 0x6b, 0xee, + 0x66, 0xd6, 0x38, 0x03, 0x5a, 0xaf, 0xff, 0xbc, 0x83, 0x32, 0xa5, 0x4c, + 0xa1, 0x7d, 0xf1, 0x6f, +}; +static const struct drbg_kat_no_reseed kat57_t = { + 11, kat57_entropyin, kat57_nonce, kat57_persstr, + kat57_addin0, kat57_addin1, kat57_retbits +}; +static const struct drbg_kat kat57 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat57_t +}; + +static const unsigned char kat58_entropyin[] = { + 0xa3, 0xb9, 0x5f, 0x32, 0x01, 0xfa, 0x01, 0x01, 0x07, 0x57, 0x30, 0x74, + 0xb1, 0x19, 0x9b, 0xc0, +}; +static const unsigned char kat58_nonce[] = { + 0x60, 0x30, 0xe5, 0xb6, 0x13, 0x47, 0xb0, 0xe2, +}; +static const unsigned char kat58_persstr[] = { + 0x9e, 0x77, 0x85, 0x46, 0xd4, 0x5f, 0x17, 0x93, 0xa1, 0x1d, 0x80, 0xa0, + 0x2e, 0x4c, 0xa3, 0xc3, +}; +static const unsigned char kat58_addin0[] = { + 0xe5, 0x07, 0x33, 0x61, 0x98, 0x25, 0x31, 0x37, 0xa5, 0x55, 0xe8, 0xc1, + 0x18, 0xa1, 0x2d, 0x2f, +}; +static const unsigned char kat58_addin1[] = { + 0xe5, 0xce, 0xea, 0xcb, 0xb5, 0x22, 0xf5, 0xde, 0x81, 0x78, 0x9c, 0x32, + 0xcb, 0xcd, 0xef, 0x30, +}; +static const unsigned char kat58_retbits[] = { + 0x4a, 0xd1, 0x8e, 0xa0, 0x83, 0x7f, 0x06, 0x3e, 0x9f, 0xbf, 0x6c, 0x72, + 0xd1, 0xaf, 0x6f, 0x77, 0x96, 0x41, 0xf4, 0xe1, 0x1c, 0x40, 0x0d, 0x95, + 0xcb, 0x2b, 0xa4, 0x22, 0x99, 0xa9, 0x66, 0x48, 0xe0, 0x59, 0xe1, 0xa6, + 0x3f, 0x7c, 0x03, 0x79, 0x25, 0x44, 0x89, 0xc7, 0xcb, 0xff, 0xfb, 0x22, + 0x11, 0x84, 0x57, 0x18, 0xc5, 0x26, 0x00, 0xc9, 0xe8, 0x58, 0x49, 0xd6, + 0xe0, 0x95, 0x1f, 0x7b, +}; +static const struct drbg_kat_no_reseed kat58_t = { + 12, kat58_entropyin, kat58_nonce, kat58_persstr, + kat58_addin0, kat58_addin1, kat58_retbits +}; +static const struct drbg_kat kat58 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat58_t +}; + +static const unsigned char kat59_entropyin[] = { + 0x88, 0x18, 0xbe, 0x7e, 0x8e, 0x81, 0x5b, 0xca, 0x0c, 0xb5, 0xa0, 0x14, + 0x4d, 0x44, 0xb6, 0x72, +}; +static const unsigned char kat59_nonce[] = { + 0x12, 0x2b, 0x14, 0x8c, 0xa1, 0xaa, 0xba, 0x60, +}; +static const unsigned char kat59_persstr[] = { + 0x90, 0x6d, 0xc3, 0x0b, 0x39, 0x54, 0x27, 0x38, 0x56, 0x73, 0x26, 0x13, + 0x66, 0xf5, 0xe9, 0xa8, +}; +static const unsigned char kat59_addin0[] = { + 0x56, 0xee, 0x67, 0xff, 0x14, 0x66, 0xce, 0xed, 0xd7, 0x28, 0x1d, 0x73, + 0xf3, 0x9c, 0x6c, 0x85, +}; +static const unsigned char kat59_addin1[] = { + 0x82, 0xe4, 0xa6, 0xed, 0xb0, 0x78, 0x00, 0x79, 0xfa, 0xee, 0x25, 0x8e, + 0xd1, 0x13, 0x7e, 0xcf, +}; +static const unsigned char kat59_retbits[] = { + 0x88, 0x55, 0xad, 0x03, 0xe3, 0x87, 0x27, 0xd0, 0x49, 0xe8, 0x55, 0x8e, + 0xcc, 0x66, 0x3b, 0x8c, 0x89, 0xcb, 0x5b, 0xd1, 0x38, 0xac, 0x34, 0x9c, + 0x6e, 0x5f, 0x78, 0x41, 0x70, 0xc5, 0x07, 0x69, 0xc8, 0xc9, 0x7b, 0x09, + 0x4d, 0xfa, 0x07, 0x52, 0xd0, 0x65, 0x53, 0x1d, 0xa4, 0x00, 0x85, 0x81, + 0x7c, 0xcb, 0x08, 0xf2, 0xb9, 0x4c, 0xbb, 0xba, 0xe7, 0x59, 0x8c, 0x96, + 0x3e, 0x3a, 0xd6, 0xd1, +}; +static const struct drbg_kat_no_reseed kat59_t = { + 13, kat59_entropyin, kat59_nonce, kat59_persstr, + kat59_addin0, kat59_addin1, kat59_retbits +}; +static const struct drbg_kat kat59 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat59_t +}; + +static const unsigned char kat60_entropyin[] = { + 0x00, 0x90, 0xdc, 0xb9, 0x1f, 0x02, 0x70, 0xf6, 0x58, 0x20, 0x7d, 0x49, + 0xa7, 0x47, 0x38, 0xe2, +}; +static const unsigned char kat60_nonce[] = { + 0x9d, 0x18, 0xae, 0xa2, 0x68, 0x4e, 0xe2, 0xb7, +}; +static const unsigned char kat60_persstr[] = { + 0x64, 0xa8, 0x18, 0x57, 0xce, 0x29, 0xf0, 0xd2, 0xa8, 0x51, 0x03, 0x00, + 0xb0, 0xa3, 0xfa, 0xc0, +}; +static const unsigned char kat60_addin0[] = { + 0xcd, 0x7f, 0x89, 0xf8, 0xd5, 0x46, 0x8e, 0xae, 0x8b, 0xca, 0x31, 0x4f, + 0xd9, 0xf2, 0x5b, 0x23, +}; +static const unsigned char kat60_addin1[] = { + 0x94, 0x9b, 0x94, 0x41, 0x7f, 0xb4, 0x2b, 0xbc, 0x7c, 0xdb, 0x3f, 0x53, + 0xa0, 0x55, 0x80, 0x19, +}; +static const unsigned char kat60_retbits[] = { + 0x63, 0xd3, 0xe9, 0x19, 0x88, 0x1f, 0x87, 0xd6, 0x9c, 0xba, 0xdc, 0xb6, + 0x78, 0x9e, 0x0b, 0x8f, 0x2e, 0x49, 0xf4, 0xc9, 0xd0, 0xe3, 0xba, 0x1e, + 0x4a, 0x59, 0x16, 0x2a, 0xf7, 0x18, 0xbc, 0x40, 0xdd, 0x67, 0x3e, 0xae, + 0x8f, 0x48, 0xfd, 0x27, 0x82, 0xe0, 0x6c, 0xde, 0xc5, 0x63, 0x2a, 0x4b, + 0x2e, 0x60, 0x65, 0x5c, 0xba, 0x75, 0xaf, 0xaf, 0x4c, 0x12, 0xa6, 0x74, + 0xee, 0xe4, 0xd3, 0xfc, +}; +static const struct drbg_kat_no_reseed kat60_t = { + 14, kat60_entropyin, kat60_nonce, kat60_persstr, + kat60_addin0, kat60_addin1, kat60_retbits +}; +static const struct drbg_kat kat60 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat60_t +}; + +static const unsigned char kat61_entropyin[] = { + 0x2d, 0x2a, 0xb5, 0x64, 0x20, 0x29, 0x18, 0xc4, 0xef, 0x5b, 0x10, 0x2d, + 0xda, 0x38, 0x5a, 0x18, +}; +static const unsigned char kat61_nonce[] = { + 0x25, 0x91, 0x95, 0x26, 0x9e, 0xc1, 0x1a, 0xf6, +}; +static const unsigned char kat61_persstr[] = {0}; +static const unsigned char kat61_addin0[] = {0}; +static const unsigned char kat61_addin1[] = {0}; +static const unsigned char kat61_retbits[] = { + 0x2c, 0x5c, 0xd7, 0x9e, 0xd8, 0x76, 0x22, 0xa9, 0x1b, 0x86, 0x54, 0xc8, + 0x90, 0x3d, 0x85, 0x22, 0x42, 0xcd, 0x49, 0xcb, 0x5d, 0xf2, 0xd4, 0xb4, + 0x15, 0x05, 0x84, 0x30, 0x1c, 0x59, 0xf0, 0x1f, 0xd9, 0x5a, 0x70, 0x2a, + 0xc1, 0x57, 0xc8, 0x4c, 0xc1, 0x5f, 0x42, 0xc8, 0x21, 0x13, 0x35, 0x67, + 0x2d, 0x8c, 0xe1, 0x29, 0x1e, 0xf9, 0xb1, 0xde, 0xf7, 0x81, 0x49, 0xa0, + 0x4f, 0xa2, 0x69, 0x7c, +}; +static const struct drbg_kat_no_reseed kat61_t = { + 0, kat61_entropyin, kat61_nonce, kat61_persstr, + kat61_addin0, kat61_addin1, kat61_retbits +}; +static const struct drbg_kat kat61 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat61_t +}; + +static const unsigned char kat62_entropyin[] = { + 0xa0, 0x16, 0x46, 0x3d, 0xbb, 0x49, 0x99, 0x90, 0xcb, 0xcd, 0xa4, 0x50, + 0x46, 0xd8, 0xf3, 0x37, +}; +static const unsigned char kat62_nonce[] = { + 0x24, 0x9d, 0x02, 0xde, 0x2d, 0xcf, 0x3e, 0x57, +}; +static const unsigned char kat62_persstr[] = {0}; +static const unsigned char kat62_addin0[] = {0}; +static const unsigned char kat62_addin1[] = {0}; +static const unsigned char kat62_retbits[] = { + 0x35, 0xb8, 0x1f, 0xb9, 0x42, 0x41, 0xf4, 0xc9, 0x31, 0x9a, 0x7f, 0x16, + 0xb4, 0x42, 0x49, 0x52, 0x52, 0xdb, 0x4c, 0x98, 0x48, 0x60, 0xd0, 0x35, + 0xf6, 0xc4, 0x54, 0x03, 0xf9, 0x74, 0xf5, 0x34, 0xfa, 0x93, 0xb2, 0x1b, + 0x6b, 0x89, 0x44, 0x1b, 0xe0, 0x7c, 0x5c, 0x29, 0x31, 0x7f, 0x86, 0x8d, + 0xc9, 0xab, 0x5c, 0x18, 0x37, 0x74, 0x37, 0xfa, 0xdb, 0x4d, 0x85, 0x7e, + 0xe0, 0x92, 0xf9, 0x23, +}; +static const struct drbg_kat_no_reseed kat62_t = { + 1, kat62_entropyin, kat62_nonce, kat62_persstr, + kat62_addin0, kat62_addin1, kat62_retbits +}; +static const struct drbg_kat kat62 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat62_t +}; + +static const unsigned char kat63_entropyin[] = { + 0x1e, 0x38, 0x20, 0xc4, 0x6e, 0x50, 0xb7, 0xcb, 0xc5, 0x8b, 0x05, 0xaa, + 0x72, 0x24, 0x27, 0xa8, +}; +static const unsigned char kat63_nonce[] = { + 0xfe, 0x0f, 0x40, 0x01, 0x4e, 0xb3, 0x27, 0x9f, +}; +static const unsigned char kat63_persstr[] = {0}; +static const unsigned char kat63_addin0[] = {0}; +static const unsigned char kat63_addin1[] = {0}; +static const unsigned char kat63_retbits[] = { + 0x18, 0x53, 0x0b, 0x9d, 0xe8, 0x89, 0xd8, 0xad, 0x3f, 0x41, 0xd5, 0x39, + 0x79, 0x6c, 0x2a, 0x95, 0xd6, 0x82, 0xfb, 0x02, 0x6d, 0xf7, 0xca, 0x09, + 0x4a, 0xf4, 0xab, 0x23, 0x95, 0x29, 0x2e, 0x6f, 0xcd, 0xb1, 0x75, 0xba, + 0x25, 0x7d, 0x61, 0x27, 0x9d, 0xa4, 0xd0, 0xfc, 0x78, 0xfd, 0xf8, 0xa4, + 0xeb, 0x46, 0xa0, 0xe2, 0xd7, 0x54, 0xf5, 0xf8, 0xf0, 0x9e, 0xcb, 0x15, + 0x7c, 0x8a, 0x58, 0xa1, +}; +static const struct drbg_kat_no_reseed kat63_t = { + 2, kat63_entropyin, kat63_nonce, kat63_persstr, + kat63_addin0, kat63_addin1, kat63_retbits +}; +static const struct drbg_kat kat63 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat63_t +}; + +static const unsigned char kat64_entropyin[] = { + 0x3b, 0x02, 0xc5, 0xa4, 0x74, 0x67, 0x96, 0x48, 0xe2, 0xfe, 0x09, 0x0a, + 0x13, 0xbe, 0x04, 0x1c, +}; +static const unsigned char kat64_nonce[] = { + 0x71, 0xed, 0x5a, 0xa0, 0x78, 0xb8, 0x3a, 0x7b, +}; +static const unsigned char kat64_persstr[] = {0}; +static const unsigned char kat64_addin0[] = {0}; +static const unsigned char kat64_addin1[] = {0}; +static const unsigned char kat64_retbits[] = { + 0xe8, 0xe2, 0xe5, 0xd8, 0xbd, 0x99, 0x29, 0xe4, 0xe1, 0x67, 0x5c, 0x84, + 0x61, 0x45, 0x7c, 0xab, 0x06, 0x33, 0xd8, 0x3f, 0x9b, 0xd2, 0x43, 0xbc, + 0x58, 0x29, 0x37, 0xc2, 0xb9, 0x61, 0xb7, 0x1c, 0x11, 0x85, 0x6f, 0x83, + 0x6c, 0x37, 0x32, 0x9d, 0x3f, 0xa8, 0x63, 0x76, 0xee, 0xc9, 0x71, 0x39, + 0x10, 0x4d, 0xe5, 0x32, 0x60, 0xe1, 0x22, 0xcb, 0x2b, 0x6d, 0x82, 0x4e, + 0x21, 0xe7, 0x5c, 0xe7, +}; +static const struct drbg_kat_no_reseed kat64_t = { + 3, kat64_entropyin, kat64_nonce, kat64_persstr, + kat64_addin0, kat64_addin1, kat64_retbits +}; +static const struct drbg_kat kat64 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat64_t +}; + +static const unsigned char kat65_entropyin[] = { + 0x05, 0x0c, 0x48, 0xab, 0x8a, 0x05, 0xff, 0x69, 0x0b, 0x62, 0xe3, 0x7d, + 0x9b, 0x21, 0xf2, 0xfa, +}; +static const unsigned char kat65_nonce[] = { + 0xf7, 0x96, 0x48, 0x75, 0xbe, 0x28, 0x83, 0x53, +}; +static const unsigned char kat65_persstr[] = {0}; +static const unsigned char kat65_addin0[] = {0}; +static const unsigned char kat65_addin1[] = {0}; +static const unsigned char kat65_retbits[] = { + 0x24, 0xcb, 0x0e, 0xdc, 0xb8, 0x9e, 0xec, 0x61, 0x76, 0x13, 0xa2, 0x7f, + 0xe3, 0xe4, 0x47, 0x5a, 0xff, 0xab, 0x49, 0x8d, 0x57, 0xbc, 0x3c, 0x4e, + 0xf8, 0x44, 0xfe, 0x19, 0xb3, 0x84, 0x13, 0x47, 0x7c, 0x1d, 0xb0, 0x40, + 0xf1, 0x67, 0x57, 0xf1, 0x85, 0x1b, 0x79, 0x9c, 0x1f, 0x26, 0x69, 0xaa, + 0x9f, 0x9c, 0x50, 0x53, 0x2e, 0xaf, 0xbe, 0x1e, 0x29, 0x48, 0xe3, 0x38, + 0xd1, 0xca, 0x4b, 0xd7, +}; +static const struct drbg_kat_no_reseed kat65_t = { + 4, kat65_entropyin, kat65_nonce, kat65_persstr, + kat65_addin0, kat65_addin1, kat65_retbits +}; +static const struct drbg_kat kat65 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat65_t +}; + +static const unsigned char kat66_entropyin[] = { + 0xec, 0xd9, 0x9c, 0x0b, 0x49, 0x1c, 0xf6, 0xa3, 0x23, 0xbc, 0x33, 0x36, + 0x46, 0xe5, 0xc5, 0x6a, +}; +static const unsigned char kat66_nonce[] = { + 0xb1, 0x0a, 0x17, 0x84, 0x99, 0x5c, 0xb3, 0x4c, +}; +static const unsigned char kat66_persstr[] = {0}; +static const unsigned char kat66_addin0[] = {0}; +static const unsigned char kat66_addin1[] = {0}; +static const unsigned char kat66_retbits[] = { + 0x65, 0x35, 0xc4, 0x8d, 0x99, 0x9a, 0x30, 0x6a, 0xcb, 0x83, 0xf7, 0xb7, + 0x20, 0xb3, 0xc3, 0x97, 0x72, 0xa4, 0x96, 0xe7, 0x5a, 0x89, 0x0f, 0x6e, + 0x14, 0xd7, 0x0a, 0x82, 0x41, 0x42, 0xa1, 0x2d, 0x01, 0xde, 0xe5, 0x52, + 0x71, 0xb8, 0x2c, 0x7b, 0x02, 0x7b, 0x94, 0x68, 0xc3, 0x09, 0xfa, 0x2d, + 0x08, 0xe9, 0x1e, 0x5e, 0x37, 0x9e, 0xb9, 0x0c, 0xf8, 0x91, 0x5c, 0xf4, + 0xcc, 0x24, 0x1b, 0x50, +}; +static const struct drbg_kat_no_reseed kat66_t = { + 5, kat66_entropyin, kat66_nonce, kat66_persstr, + kat66_addin0, kat66_addin1, kat66_retbits +}; +static const struct drbg_kat kat66 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat66_t +}; + +static const unsigned char kat67_entropyin[] = { + 0x34, 0xae, 0xe3, 0xef, 0x35, 0xb2, 0xa1, 0xe3, 0x1c, 0x42, 0x97, 0x25, + 0xfe, 0xaa, 0x6b, 0xfd, +}; +static const unsigned char kat67_nonce[] = { + 0xe4, 0x36, 0x9b, 0x6a, 0xda, 0x90, 0x91, 0xed, +}; +static const unsigned char kat67_persstr[] = {0}; +static const unsigned char kat67_addin0[] = {0}; +static const unsigned char kat67_addin1[] = {0}; +static const unsigned char kat67_retbits[] = { + 0xaf, 0x9d, 0xb4, 0xdf, 0x46, 0xac, 0x80, 0xfe, 0xca, 0xd6, 0xc3, 0xd1, + 0xd9, 0x75, 0xd2, 0xd0, 0xa6, 0x65, 0xf3, 0x1b, 0x4e, 0x3b, 0x07, 0xd9, + 0x62, 0x63, 0x22, 0x96, 0xb7, 0x60, 0x39, 0xdd, 0xca, 0xb8, 0xed, 0xde, + 0x17, 0xba, 0xd6, 0x23, 0x01, 0x31, 0x16, 0x2e, 0x59, 0xd0, 0x7d, 0xbb, + 0xd0, 0xf0, 0xb5, 0x2e, 0x5c, 0xa9, 0x3c, 0xf3, 0x7f, 0x12, 0xc0, 0x30, + 0x42, 0xbf, 0x0c, 0x82, +}; +static const struct drbg_kat_no_reseed kat67_t = { + 6, kat67_entropyin, kat67_nonce, kat67_persstr, + kat67_addin0, kat67_addin1, kat67_retbits +}; +static const struct drbg_kat kat67 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat67_t +}; + +static const unsigned char kat68_entropyin[] = { + 0x91, 0x15, 0x64, 0x69, 0x54, 0x0c, 0x78, 0x5d, 0xf5, 0x6a, 0x10, 0xe1, + 0x6b, 0x66, 0x10, 0x7c, +}; +static const unsigned char kat68_nonce[] = { + 0x7e, 0x2b, 0x2a, 0x7f, 0x58, 0xf3, 0xef, 0x20, +}; +static const unsigned char kat68_persstr[] = {0}; +static const unsigned char kat68_addin0[] = {0}; +static const unsigned char kat68_addin1[] = {0}; +static const unsigned char kat68_retbits[] = { + 0x9a, 0x76, 0x3a, 0x4c, 0x05, 0x27, 0x25, 0xe7, 0xae, 0x9d, 0x21, 0x22, + 0xa4, 0x5c, 0xd1, 0x8e, 0xa2, 0x8c, 0x58, 0x17, 0x2b, 0x87, 0xc5, 0x7e, + 0xdb, 0x9d, 0xaa, 0x32, 0xf8, 0xa2, 0x6e, 0xb9, 0x8d, 0x6b, 0x88, 0x12, + 0x09, 0x5a, 0x54, 0xcf, 0x62, 0x82, 0xc5, 0xe0, 0xfc, 0x18, 0xcd, 0x30, + 0x12, 0x44, 0x15, 0xd2, 0x67, 0xc9, 0xfc, 0x2c, 0xda, 0xe9, 0xbe, 0xed, + 0xbb, 0x86, 0x58, 0x4e, +}; +static const struct drbg_kat_no_reseed kat68_t = { + 7, kat68_entropyin, kat68_nonce, kat68_persstr, + kat68_addin0, kat68_addin1, kat68_retbits +}; +static const struct drbg_kat kat68 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat68_t +}; + +static const unsigned char kat69_entropyin[] = { + 0xcd, 0x5d, 0xbc, 0x35, 0xd1, 0xb4, 0x43, 0x5c, 0x4c, 0x94, 0x5b, 0xaf, + 0xe4, 0xb8, 0xfc, 0x7a, +}; +static const unsigned char kat69_nonce[] = { + 0xaf, 0x4a, 0xcd, 0xfc, 0x81, 0x19, 0x32, 0x2c, +}; +static const unsigned char kat69_persstr[] = {0}; +static const unsigned char kat69_addin0[] = {0}; +static const unsigned char kat69_addin1[] = {0}; +static const unsigned char kat69_retbits[] = { + 0xfe, 0x67, 0x82, 0x99, 0xf1, 0xad, 0xe1, 0x96, 0x21, 0x88, 0x02, 0x35, + 0xfa, 0x6f, 0xe2, 0xb5, 0x01, 0x84, 0xf8, 0x12, 0x43, 0x83, 0x3e, 0xbe, + 0x68, 0xc6, 0x16, 0xa9, 0x03, 0x4e, 0x23, 0xe0, 0xcc, 0x87, 0x3e, 0x8a, + 0xc4, 0xd0, 0xe3, 0x65, 0xb5, 0x24, 0xa3, 0x78, 0x32, 0xb5, 0x2d, 0x97, + 0xa8, 0x38, 0x62, 0x93, 0x24, 0x91, 0xd2, 0x64, 0x3a, 0x73, 0xe4, 0x6a, + 0x80, 0xb5, 0x14, 0x9c, +}; +static const struct drbg_kat_no_reseed kat69_t = { + 8, kat69_entropyin, kat69_nonce, kat69_persstr, + kat69_addin0, kat69_addin1, kat69_retbits +}; +static const struct drbg_kat kat69 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat69_t +}; + +static const unsigned char kat70_entropyin[] = { + 0xd5, 0x2d, 0x11, 0x59, 0x78, 0x7b, 0xaa, 0xb2, 0x13, 0xe8, 0x79, 0x21, + 0xfd, 0x95, 0x91, 0x10, +}; +static const unsigned char kat70_nonce[] = { + 0x7a, 0xb3, 0x75, 0x38, 0xee, 0x02, 0x45, 0xc8, +}; +static const unsigned char kat70_persstr[] = {0}; +static const unsigned char kat70_addin0[] = {0}; +static const unsigned char kat70_addin1[] = {0}; +static const unsigned char kat70_retbits[] = { + 0xf4, 0xd9, 0xea, 0xd3, 0x59, 0x46, 0x06, 0xac, 0x51, 0x94, 0x22, 0x15, + 0xaa, 0x0b, 0xd2, 0x9b, 0xaa, 0x7c, 0x28, 0x1e, 0x62, 0xd2, 0xbc, 0xc1, + 0xa7, 0x7f, 0x57, 0xe3, 0x59, 0x66, 0x83, 0x19, 0x9d, 0x70, 0xc0, 0x09, + 0xc0, 0x84, 0xeb, 0x36, 0x54, 0x22, 0x4e, 0xd7, 0xb0, 0x7a, 0x09, 0xb4, + 0x94, 0x48, 0x0a, 0x11, 0x3b, 0x33, 0xe0, 0x36, 0x6c, 0xb2, 0x25, 0x3e, + 0xdb, 0xb0, 0xcb, 0x5e, +}; +static const struct drbg_kat_no_reseed kat70_t = { + 9, kat70_entropyin, kat70_nonce, kat70_persstr, + kat70_addin0, kat70_addin1, kat70_retbits +}; +static const struct drbg_kat kat70 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat70_t +}; + +static const unsigned char kat71_entropyin[] = { + 0x51, 0x10, 0xdb, 0x9d, 0x5f, 0x4f, 0xbd, 0xc0, 0x37, 0x55, 0x0e, 0x83, + 0xc2, 0xbd, 0x96, 0xfe, +}; +static const unsigned char kat71_nonce[] = { + 0xde, 0xe6, 0x41, 0xf9, 0x17, 0x7c, 0x9d, 0xa4, +}; +static const unsigned char kat71_persstr[] = {0}; +static const unsigned char kat71_addin0[] = {0}; +static const unsigned char kat71_addin1[] = {0}; +static const unsigned char kat71_retbits[] = { + 0x05, 0xf8, 0xca, 0xd2, 0xd0, 0x31, 0xce, 0x6b, 0x52, 0x7e, 0xe0, 0x43, + 0xb5, 0x05, 0x6d, 0xb2, 0x0e, 0xe5, 0xca, 0x66, 0x0a, 0x95, 0xc2, 0x9b, + 0x8f, 0x8b, 0x2e, 0x43, 0xef, 0xa5, 0xc7, 0xaa, 0x62, 0x35, 0x12, 0x33, + 0xf4, 0xf1, 0x60, 0x36, 0x8c, 0x3d, 0xad, 0x4a, 0x74, 0xf4, 0x71, 0xbb, + 0x02, 0x15, 0x3f, 0x86, 0xc8, 0x7a, 0x14, 0x0a, 0x36, 0xe0, 0xf1, 0x22, + 0xc6, 0x8b, 0xa7, 0x7d, +}; +static const struct drbg_kat_no_reseed kat71_t = { + 10, kat71_entropyin, kat71_nonce, kat71_persstr, + kat71_addin0, kat71_addin1, kat71_retbits +}; +static const struct drbg_kat kat71 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat71_t +}; + +static const unsigned char kat72_entropyin[] = { + 0x97, 0x90, 0x65, 0xbc, 0x1a, 0x1c, 0x8c, 0x82, 0x90, 0xdd, 0xe2, 0x19, + 0xf0, 0x12, 0x1a, 0xbe, +}; +static const unsigned char kat72_nonce[] = { + 0x59, 0x3a, 0x0e, 0x1f, 0xa9, 0x85, 0x64, 0xa3, +}; +static const unsigned char kat72_persstr[] = {0}; +static const unsigned char kat72_addin0[] = {0}; +static const unsigned char kat72_addin1[] = {0}; +static const unsigned char kat72_retbits[] = { + 0x19, 0x9e, 0x68, 0xe5, 0xb6, 0x37, 0xa2, 0x7b, 0xe7, 0x94, 0x53, 0xd9, + 0x95, 0x3a, 0x0e, 0x52, 0x95, 0x36, 0x37, 0x4e, 0x7f, 0x63, 0xe8, 0x59, + 0x5a, 0xfe, 0x4b, 0x5d, 0x4e, 0x3b, 0xb3, 0x79, 0xc6, 0xd4, 0x62, 0xf6, + 0x43, 0x12, 0x44, 0xaf, 0x43, 0x36, 0xb1, 0x7f, 0x9d, 0xfd, 0xfe, 0xaf, + 0xa6, 0xf4, 0xff, 0xf5, 0x00, 0x4a, 0xa6, 0x5f, 0x7d, 0x6b, 0xb3, 0xb8, + 0x8a, 0xf8, 0xe9, 0xe2, +}; +static const struct drbg_kat_no_reseed kat72_t = { + 11, kat72_entropyin, kat72_nonce, kat72_persstr, + kat72_addin0, kat72_addin1, kat72_retbits +}; +static const struct drbg_kat kat72 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat72_t +}; + +static const unsigned char kat73_entropyin[] = { + 0x89, 0xa7, 0x87, 0xbe, 0x64, 0xba, 0x33, 0x58, 0x95, 0x2f, 0x9d, 0x60, + 0x2b, 0xd8, 0xfa, 0xb4, +}; +static const unsigned char kat73_nonce[] = { + 0xab, 0x96, 0x1b, 0x68, 0xc6, 0x58, 0x92, 0xd3, +}; +static const unsigned char kat73_persstr[] = {0}; +static const unsigned char kat73_addin0[] = {0}; +static const unsigned char kat73_addin1[] = {0}; +static const unsigned char kat73_retbits[] = { + 0x6e, 0x5d, 0xd2, 0xa6, 0x51, 0xf2, 0x61, 0x4f, 0xca, 0x88, 0x1f, 0x5e, + 0xdb, 0x05, 0xd5, 0xee, 0xc6, 0x12, 0x75, 0xdd, 0x05, 0xb3, 0x1f, 0xd8, + 0xa3, 0x06, 0x2f, 0xac, 0x51, 0x59, 0x60, 0xde, 0xf7, 0xb0, 0xd4, 0xdb, + 0x30, 0x4f, 0x64, 0x2b, 0x91, 0xe6, 0x40, 0x1f, 0x2a, 0x00, 0xb0, 0xfb, + 0x69, 0x3e, 0xdd, 0x73, 0x13, 0x10, 0x2f, 0x58, 0xd7, 0x33, 0x02, 0xea, + 0x8b, 0x5a, 0x9d, 0x7a, +}; +static const struct drbg_kat_no_reseed kat73_t = { + 12, kat73_entropyin, kat73_nonce, kat73_persstr, + kat73_addin0, kat73_addin1, kat73_retbits +}; +static const struct drbg_kat kat73 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat73_t +}; + +static const unsigned char kat74_entropyin[] = { + 0x21, 0xf0, 0x2f, 0xc7, 0x5a, 0x28, 0x2d, 0x7f, 0x87, 0xca, 0xb0, 0x57, + 0x67, 0x55, 0x8e, 0x08, +}; +static const unsigned char kat74_nonce[] = { + 0x3b, 0x43, 0xd7, 0x7b, 0x0c, 0x64, 0x71, 0xe9, +}; +static const unsigned char kat74_persstr[] = {0}; +static const unsigned char kat74_addin0[] = {0}; +static const unsigned char kat74_addin1[] = {0}; +static const unsigned char kat74_retbits[] = { + 0x3b, 0x87, 0x09, 0xce, 0xfe, 0x27, 0x06, 0x27, 0xeb, 0x49, 0x47, 0xf3, + 0xc7, 0x69, 0x5e, 0xed, 0x2c, 0x85, 0xcc, 0x15, 0x25, 0xbe, 0x25, 0x3f, + 0x20, 0x0a, 0x44, 0xad, 0x55, 0xf7, 0x58, 0x3e, 0x10, 0x91, 0xb8, 0x80, + 0xee, 0x16, 0xa8, 0x08, 0xe9, 0x0d, 0xc1, 0xdd, 0x5c, 0x0e, 0xd3, 0xb8, + 0xd1, 0x96, 0x40, 0x76, 0x61, 0xde, 0x80, 0x61, 0xf6, 0xa2, 0xd7, 0x8c, + 0xdc, 0x93, 0x42, 0x9d, +}; +static const struct drbg_kat_no_reseed kat74_t = { + 13, kat74_entropyin, kat74_nonce, kat74_persstr, + kat74_addin0, kat74_addin1, kat74_retbits +}; +static const struct drbg_kat kat74 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat74_t +}; + +static const unsigned char kat75_entropyin[] = { + 0xdf, 0x5b, 0x1c, 0xd5, 0x10, 0x45, 0xc8, 0x38, 0x01, 0x53, 0x24, 0x49, + 0xd6, 0xa8, 0x7a, 0xed, +}; +static const unsigned char kat75_nonce[] = { + 0x8d, 0xd1, 0x72, 0xb8, 0x12, 0x86, 0xa2, 0x38, +}; +static const unsigned char kat75_persstr[] = {0}; +static const unsigned char kat75_addin0[] = {0}; +static const unsigned char kat75_addin1[] = {0}; +static const unsigned char kat75_retbits[] = { + 0xf0, 0x17, 0x2b, 0x3a, 0x5b, 0x42, 0xea, 0xd6, 0xe6, 0x54, 0xd3, 0xab, + 0xc7, 0x8d, 0xda, 0x08, 0x78, 0x0e, 0xa4, 0x32, 0x23, 0x62, 0x57, 0x07, + 0xf8, 0xab, 0x02, 0x1b, 0xef, 0x54, 0x12, 0xdb, 0x89, 0xb0, 0x89, 0xcf, + 0x75, 0x11, 0x78, 0xeb, 0x1b, 0x97, 0xbe, 0x13, 0xf5, 0xe8, 0x3b, 0x9f, + 0x10, 0x76, 0xd0, 0xfc, 0x88, 0xe6, 0xbb, 0xd6, 0xee, 0xf1, 0xef, 0x63, + 0x55, 0xe3, 0x67, 0x2b, +}; +static const struct drbg_kat_no_reseed kat75_t = { + 14, kat75_entropyin, kat75_nonce, kat75_persstr, + kat75_addin0, kat75_addin1, kat75_retbits +}; +static const struct drbg_kat kat75 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat75_t +}; + +static const unsigned char kat76_entropyin[] = { + 0xad, 0xf5, 0x71, 0x1f, 0x93, 0xd8, 0xc8, 0x99, 0x73, 0x49, 0x42, 0x9c, + 0xca, 0xed, 0xae, 0x0a, +}; +static const unsigned char kat76_nonce[] = { + 0xb2, 0x57, 0x16, 0x93, 0x1b, 0x6e, 0x3c, 0xc1, +}; +static const unsigned char kat76_persstr[] = {0}; +static const unsigned char kat76_addin0[] = { + 0xab, 0xf8, 0xcd, 0x66, 0xdd, 0x39, 0x75, 0x8b, 0x01, 0xd7, 0xdb, 0xb9, + 0x9a, 0xb1, 0x7d, 0xc3, +}; +static const unsigned char kat76_addin1[] = { + 0x4b, 0xe0, 0xf6, 0xb2, 0x75, 0x53, 0x77, 0xc6, 0xe8, 0x81, 0xfb, 0xb2, + 0x61, 0xb5, 0x6b, 0xeb, +}; +static const unsigned char kat76_retbits[] = { + 0xd4, 0x20, 0x60, 0x4d, 0xee, 0x64, 0x67, 0x49, 0x2d, 0xb5, 0x95, 0x7c, + 0x86, 0x20, 0x7a, 0x70, 0x8f, 0xd2, 0x42, 0xed, 0x67, 0x94, 0x2a, 0xed, + 0x29, 0x94, 0x25, 0x33, 0x5c, 0x83, 0xb4, 0x14, 0x37, 0x41, 0x85, 0x82, + 0xf4, 0x1b, 0xc7, 0xfc, 0x0e, 0xf0, 0xd6, 0x92, 0x7f, 0x34, 0xd8, 0x3a, + 0xcd, 0x67, 0xc7, 0x01, 0x33, 0x64, 0x4f, 0xd7, 0x11, 0xdd, 0x5a, 0x65, + 0x73, 0x1f, 0x9f, 0x02, +}; +static const struct drbg_kat_no_reseed kat76_t = { + 0, kat76_entropyin, kat76_nonce, kat76_persstr, + kat76_addin0, kat76_addin1, kat76_retbits +}; +static const struct drbg_kat kat76 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat76_t +}; + +static const unsigned char kat77_entropyin[] = { + 0xe9, 0x21, 0x00, 0x02, 0x07, 0x34, 0x90, 0x9d, 0x61, 0x09, 0xd2, 0x9c, + 0xf2, 0xc8, 0x98, 0xb0, +}; +static const unsigned char kat77_nonce[] = { + 0x91, 0xfb, 0xd9, 0xa3, 0xa8, 0xed, 0xc3, 0xa4, +}; +static const unsigned char kat77_persstr[] = {0}; +static const unsigned char kat77_addin0[] = { + 0x09, 0x80, 0xc7, 0xdb, 0xcf, 0xd0, 0xe7, 0xf7, 0x7a, 0xf8, 0x35, 0xac, + 0xc7, 0x4a, 0x4b, 0xa3, +}; +static const unsigned char kat77_addin1[] = { + 0x3c, 0xbf, 0x47, 0xd4, 0x66, 0x55, 0xa0, 0xce, 0x75, 0xa5, 0xd5, 0x65, + 0x28, 0x12, 0x7b, 0xc0, +}; +static const unsigned char kat77_retbits[] = { + 0xe7, 0x7c, 0xcc, 0x52, 0x63, 0x62, 0x54, 0x29, 0xce, 0x7e, 0x53, 0x56, + 0x22, 0x48, 0x1d, 0x0b, 0xef, 0x47, 0x61, 0x41, 0xd1, 0xa0, 0xab, 0xfa, + 0x7f, 0x69, 0x67, 0xc1, 0x1f, 0x47, 0xf7, 0xa7, 0x0f, 0xa9, 0xbc, 0x70, + 0x59, 0x8e, 0xce, 0x3f, 0xf2, 0x83, 0xe5, 0xae, 0x04, 0xf1, 0x05, 0x35, + 0xd3, 0x49, 0xc2, 0x31, 0x34, 0x9a, 0xf8, 0x07, 0x1a, 0x22, 0x32, 0x3a, + 0x6e, 0x95, 0x10, 0x39, +}; +static const struct drbg_kat_no_reseed kat77_t = { + 1, kat77_entropyin, kat77_nonce, kat77_persstr, + kat77_addin0, kat77_addin1, kat77_retbits +}; +static const struct drbg_kat kat77 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat77_t +}; + +static const unsigned char kat78_entropyin[] = { + 0x09, 0x2f, 0xfe, 0x74, 0x57, 0xd6, 0x17, 0x3e, 0x67, 0x13, 0xb0, 0xaf, + 0x76, 0x52, 0x1d, 0x82, +}; +static const unsigned char kat78_nonce[] = { + 0xd0, 0xb8, 0xca, 0xe6, 0xab, 0x9e, 0x29, 0xac, +}; +static const unsigned char kat78_persstr[] = {0}; +static const unsigned char kat78_addin0[] = { + 0xe3, 0x1a, 0xf5, 0xe1, 0x81, 0xc4, 0x34, 0x6e, 0x42, 0x3e, 0xbc, 0x1f, + 0xf9, 0xf4, 0x6d, 0xdd, +}; +static const unsigned char kat78_addin1[] = { + 0x02, 0xb9, 0x49, 0xd1, 0x34, 0xfc, 0x89, 0x68, 0xba, 0x51, 0x8f, 0xda, + 0x3b, 0x42, 0xc9, 0x7f, +}; +static const unsigned char kat78_retbits[] = { + 0x0b, 0x64, 0xd9, 0xc6, 0x1d, 0x1f, 0x23, 0x44, 0x0c, 0xe5, 0x7d, 0xbf, + 0x46, 0x5f, 0x8c, 0x62, 0x9a, 0x9f, 0xfe, 0xdd, 0x16, 0x43, 0x99, 0xab, + 0x84, 0xfc, 0x11, 0x84, 0x66, 0xa5, 0x67, 0x9b, 0xb2, 0xd9, 0xc8, 0x05, + 0xea, 0x9d, 0x29, 0x49, 0x72, 0x61, 0xea, 0x58, 0xbd, 0x8f, 0xa4, 0x5c, + 0xf2, 0x4e, 0x21, 0x2c, 0x07, 0x7b, 0xab, 0xa4, 0xd4, 0xe5, 0x73, 0x8b, + 0xb8, 0x83, 0xc8, 0x83, +}; +static const struct drbg_kat_no_reseed kat78_t = { + 2, kat78_entropyin, kat78_nonce, kat78_persstr, + kat78_addin0, kat78_addin1, kat78_retbits +}; +static const struct drbg_kat kat78 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat78_t +}; + +static const unsigned char kat79_entropyin[] = { + 0xa7, 0xa4, 0x78, 0x41, 0xcf, 0x1a, 0x75, 0xee, 0x96, 0x93, 0x5f, 0x52, + 0xa3, 0x32, 0x2d, 0x9d, +}; +static const unsigned char kat79_nonce[] = { + 0x5b, 0x48, 0xc3, 0xc3, 0x47, 0x39, 0x46, 0x56, +}; +static const unsigned char kat79_persstr[] = {0}; +static const unsigned char kat79_addin0[] = { + 0xaa, 0xc2, 0x03, 0x1f, 0x6a, 0xa4, 0x0f, 0x08, 0x75, 0x49, 0x33, 0x70, + 0x92, 0x7c, 0x7c, 0xa8, +}; +static const unsigned char kat79_addin1[] = { + 0x1a, 0x67, 0x44, 0xd0, 0x3f, 0xc2, 0x15, 0x12, 0x94, 0x70, 0x7c, 0x3b, + 0xce, 0xa8, 0x84, 0x02, +}; +static const unsigned char kat79_retbits[] = { + 0xb4, 0x67, 0x48, 0x67, 0xcb, 0x6c, 0xd4, 0xfa, 0xde, 0x78, 0x46, 0xf4, + 0x92, 0xbd, 0x9e, 0xca, 0x69, 0xc1, 0x33, 0xf1, 0x17, 0x1c, 0xc6, 0x0b, + 0x6c, 0xd7, 0x5f, 0x22, 0xe2, 0xba, 0x7e, 0x70, 0x20, 0x7c, 0xa3, 0x8b, + 0xdc, 0xef, 0x17, 0xac, 0x15, 0xe4, 0x88, 0x49, 0xba, 0x13, 0x0d, 0x5f, + 0xb8, 0x10, 0x84, 0x4c, 0x25, 0x39, 0xfe, 0xc5, 0x19, 0xc4, 0xfa, 0x97, + 0x7f, 0xfa, 0x07, 0x38, +}; +static const struct drbg_kat_no_reseed kat79_t = { + 3, kat79_entropyin, kat79_nonce, kat79_persstr, + kat79_addin0, kat79_addin1, kat79_retbits +}; +static const struct drbg_kat kat79 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat79_t +}; + +static const unsigned char kat80_entropyin[] = { + 0x52, 0x89, 0xc3, 0x33, 0xce, 0x1c, 0xee, 0xf5, 0x6a, 0x19, 0xa1, 0x11, + 0xe9, 0x20, 0x1a, 0x38, +}; +static const unsigned char kat80_nonce[] = { + 0xdb, 0xd6, 0xb7, 0x6b, 0x1f, 0xdf, 0x5d, 0x1b, +}; +static const unsigned char kat80_persstr[] = {0}; +static const unsigned char kat80_addin0[] = { + 0xf1, 0xfa, 0x6e, 0xc8, 0xca, 0xf9, 0x4f, 0x65, 0xf1, 0x2e, 0x9c, 0x0d, + 0x8f, 0x57, 0x04, 0xf6, +}; +static const unsigned char kat80_addin1[] = { + 0x6e, 0xb6, 0xa5, 0x57, 0xf1, 0x70, 0x18, 0x83, 0x0b, 0x5d, 0x72, 0xb6, + 0x7d, 0x32, 0x22, 0x63, +}; +static const unsigned char kat80_retbits[] = { + 0x39, 0xec, 0x96, 0xbc, 0x71, 0x6e, 0x1d, 0x21, 0x48, 0x80, 0xd1, 0xf4, + 0xb8, 0xa9, 0x84, 0xbb, 0x83, 0x39, 0x94, 0x53, 0xec, 0x1e, 0xb9, 0xf3, + 0x71, 0x28, 0x2d, 0x65, 0x8e, 0x32, 0xd7, 0x39, 0xb4, 0x89, 0xf4, 0xc5, + 0xee, 0xae, 0x62, 0xa8, 0xfe, 0xe8, 0xe0, 0x84, 0xee, 0xae, 0x6d, 0x01, + 0xcc, 0xa0, 0xad, 0x80, 0xda, 0x1c, 0x53, 0x23, 0x0f, 0x8a, 0x1f, 0xaf, + 0x7c, 0x33, 0x5e, 0xdf, +}; +static const struct drbg_kat_no_reseed kat80_t = { + 4, kat80_entropyin, kat80_nonce, kat80_persstr, + kat80_addin0, kat80_addin1, kat80_retbits +}; +static const struct drbg_kat kat80 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat80_t +}; + +static const unsigned char kat81_entropyin[] = { + 0x4f, 0x05, 0xef, 0x26, 0xc6, 0x85, 0x44, 0x4d, 0x6e, 0x65, 0xd8, 0xf2, + 0x6e, 0x0f, 0x2e, 0xf2, +}; +static const unsigned char kat81_nonce[] = { + 0xd0, 0xab, 0x06, 0x6c, 0x7a, 0x49, 0x03, 0xb7, +}; +static const unsigned char kat81_persstr[] = {0}; +static const unsigned char kat81_addin0[] = { + 0xd2, 0x75, 0x42, 0x60, 0x43, 0xa8, 0x2d, 0xe2, 0x0f, 0x89, 0xf1, 0xcb, + 0x2c, 0xff, 0x5c, 0x9b, +}; +static const unsigned char kat81_addin1[] = { + 0x02, 0xa3, 0x27, 0x63, 0xed, 0x9a, 0xab, 0x16, 0x72, 0x82, 0xd0, 0xa0, + 0x97, 0xf3, 0x10, 0x3e, +}; +static const unsigned char kat81_retbits[] = { + 0xaf, 0xa2, 0xd3, 0x7c, 0xc1, 0xc7, 0x9d, 0x20, 0xa6, 0x10, 0x4d, 0x67, + 0x29, 0xfc, 0x75, 0x44, 0x36, 0x1b, 0x95, 0xd2, 0x36, 0x33, 0x48, 0x7e, + 0x8b, 0xb2, 0x82, 0xb2, 0x77, 0xe2, 0x5f, 0x8a, 0xd5, 0x31, 0x36, 0x10, + 0x9b, 0x21, 0xc3, 0x80, 0xaa, 0x05, 0xe4, 0x1d, 0xd9, 0xef, 0xd8, 0xad, + 0xf4, 0x6b, 0x7d, 0x69, 0x5b, 0xba, 0xf5, 0xb0, 0x30, 0x72, 0x16, 0xa1, + 0x94, 0xfd, 0x91, 0x28, +}; +static const struct drbg_kat_no_reseed kat81_t = { + 5, kat81_entropyin, kat81_nonce, kat81_persstr, + kat81_addin0, kat81_addin1, kat81_retbits +}; +static const struct drbg_kat kat81 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat81_t +}; + +static const unsigned char kat82_entropyin[] = { + 0x0c, 0x2c, 0xcf, 0xd6, 0x5c, 0x23, 0xbc, 0x06, 0x93, 0xc9, 0xd4, 0x66, + 0x7a, 0x94, 0x2b, 0x42, +}; +static const unsigned char kat82_nonce[] = { + 0xc0, 0x8d, 0x55, 0x22, 0x8f, 0xe8, 0x4b, 0xd7, +}; +static const unsigned char kat82_persstr[] = {0}; +static const unsigned char kat82_addin0[] = { + 0xcc, 0x01, 0x7b, 0xb7, 0x96, 0x2d, 0xa6, 0xdb, 0x0f, 0x51, 0x7b, 0xe9, + 0x18, 0x3f, 0xa6, 0xf4, +}; +static const unsigned char kat82_addin1[] = { + 0xc4, 0x24, 0xaa, 0x0c, 0xe8, 0x4a, 0x80, 0x7a, 0x78, 0xb7, 0xb7, 0x32, + 0x11, 0x3c, 0x22, 0xa1, +}; +static const unsigned char kat82_retbits[] = { + 0xcb, 0x55, 0x6f, 0x6d, 0x22, 0x3a, 0x51, 0xa2, 0x00, 0xd7, 0x35, 0xf2, + 0xf4, 0xba, 0x21, 0x7a, 0x67, 0x2e, 0xf6, 0xbc, 0x14, 0x51, 0x97, 0x6d, + 0x1d, 0x05, 0xb4, 0x4a, 0x2c, 0x0d, 0x54, 0x27, 0x8a, 0xf7, 0x47, 0x83, + 0x79, 0x22, 0xcd, 0x0b, 0x28, 0xd7, 0xaa, 0xa2, 0xa8, 0x7e, 0x23, 0x05, + 0x5e, 0x18, 0xd6, 0x7d, 0x76, 0xfa, 0x90, 0x72, 0x82, 0x94, 0xab, 0xa4, + 0xac, 0x36, 0x96, 0x5e, +}; +static const struct drbg_kat_no_reseed kat82_t = { + 6, kat82_entropyin, kat82_nonce, kat82_persstr, + kat82_addin0, kat82_addin1, kat82_retbits +}; +static const struct drbg_kat kat82 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat82_t +}; + +static const unsigned char kat83_entropyin[] = { + 0x3b, 0x74, 0x81, 0x3e, 0xeb, 0xf5, 0xf5, 0xf2, 0xa6, 0xa5, 0xa4, 0xf3, + 0xf9, 0x07, 0xdc, 0xb8, +}; +static const unsigned char kat83_nonce[] = { + 0x35, 0xda, 0xa2, 0xef, 0xda, 0xd8, 0x8f, 0xb8, +}; +static const unsigned char kat83_persstr[] = {0}; +static const unsigned char kat83_addin0[] = { + 0x5e, 0x0a, 0xe3, 0x69, 0xb6, 0xe8, 0x50, 0xed, 0x30, 0xf9, 0xae, 0x64, + 0xfe, 0x10, 0x5a, 0xf3, +}; +static const unsigned char kat83_addin1[] = { + 0x3e, 0x69, 0x7b, 0xb2, 0xbf, 0x25, 0x85, 0x26, 0x45, 0xf2, 0xd1, 0x6f, + 0x67, 0x6f, 0x90, 0x78, +}; +static const unsigned char kat83_retbits[] = { + 0x79, 0x0b, 0x1f, 0x6c, 0xcd, 0xf3, 0x52, 0xde, 0xc0, 0xe5, 0x7f, 0xa0, + 0xc7, 0x72, 0xc6, 0x4d, 0x77, 0x77, 0xe4, 0xbd, 0xb9, 0xff, 0x8a, 0x91, + 0xda, 0x01, 0x89, 0x02, 0x20, 0x3d, 0xb5, 0x82, 0xf9, 0x01, 0xc2, 0x0d, + 0xd2, 0x53, 0x61, 0xdf, 0x22, 0xe7, 0x17, 0x12, 0xa4, 0x97, 0x57, 0x8d, + 0x22, 0xee, 0xa8, 0x52, 0x46, 0xce, 0xfd, 0x42, 0x5b, 0x08, 0xf1, 0x50, + 0x74, 0x34, 0x1f, 0x39, +}; +static const struct drbg_kat_no_reseed kat83_t = { + 7, kat83_entropyin, kat83_nonce, kat83_persstr, + kat83_addin0, kat83_addin1, kat83_retbits +}; +static const struct drbg_kat kat83 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat83_t +}; + +static const unsigned char kat84_entropyin[] = { + 0x46, 0x26, 0x07, 0xb2, 0xb7, 0x7b, 0x90, 0x3f, 0xdb, 0xd4, 0x2b, 0xf1, + 0xd7, 0x7b, 0xc8, 0x1a, +}; +static const unsigned char kat84_nonce[] = { + 0xb5, 0x4d, 0x43, 0x00, 0x6a, 0xde, 0x2a, 0x7c, +}; +static const unsigned char kat84_persstr[] = {0}; +static const unsigned char kat84_addin0[] = { + 0x61, 0x05, 0xc5, 0xdd, 0xed, 0xcc, 0x74, 0x46, 0x65, 0x91, 0x5e, 0xbe, + 0x48, 0xad, 0x3b, 0x54, +}; +static const unsigned char kat84_addin1[] = { + 0xfd, 0xde, 0xe2, 0x35, 0xc3, 0x7e, 0xd4, 0xbc, 0x21, 0xea, 0xe0, 0x8e, + 0x61, 0x53, 0x33, 0x1f, +}; +static const unsigned char kat84_retbits[] = { + 0x16, 0x33, 0x9e, 0x91, 0x0e, 0xaf, 0x9b, 0xad, 0x90, 0x4a, 0x7b, 0x3f, + 0x9b, 0x2e, 0x02, 0x41, 0xd2, 0xb4, 0x66, 0x5d, 0x1f, 0x9c, 0x76, 0x55, + 0xf9, 0x21, 0x7e, 0x34, 0x25, 0x3a, 0xcc, 0x33, 0x0d, 0xfc, 0x98, 0x81, + 0x7d, 0x97, 0x81, 0x86, 0xf8, 0xad, 0x77, 0xb1, 0x0f, 0x38, 0xdd, 0x72, + 0xf4, 0x71, 0xb4, 0x61, 0x5b, 0x28, 0xf3, 0xa3, 0x9c, 0x40, 0x66, 0x23, + 0xea, 0x5d, 0x63, 0x77, +}; +static const struct drbg_kat_no_reseed kat84_t = { + 8, kat84_entropyin, kat84_nonce, kat84_persstr, + kat84_addin0, kat84_addin1, kat84_retbits +}; +static const struct drbg_kat kat84 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat84_t +}; + +static const unsigned char kat85_entropyin[] = { + 0xba, 0x2e, 0xa9, 0x9b, 0x79, 0x2b, 0xde, 0xe8, 0xbd, 0xba, 0xf9, 0xc0, + 0x5a, 0xb7, 0xb6, 0x33, +}; +static const unsigned char kat85_nonce[] = { + 0x44, 0x53, 0x34, 0x46, 0x44, 0xd4, 0x34, 0xa5, +}; +static const unsigned char kat85_persstr[] = {0}; +static const unsigned char kat85_addin0[] = { + 0x81, 0x72, 0x7d, 0x30, 0xd6, 0x4a, 0xe0, 0x7f, 0xf6, 0x15, 0x69, 0xfc, + 0x7a, 0x35, 0x0c, 0xcc, +}; +static const unsigned char kat85_addin1[] = { + 0x65, 0x56, 0xf6, 0x2f, 0x75, 0xd5, 0x26, 0x84, 0x93, 0xcc, 0xa5, 0x12, + 0x01, 0x14, 0x93, 0x4c, +}; +static const unsigned char kat85_retbits[] = { + 0x2a, 0x3b, 0x39, 0x87, 0x02, 0xbc, 0x5f, 0xff, 0xd9, 0x14, 0xf9, 0x16, + 0x72, 0xaa, 0x05, 0xbe, 0xb6, 0x87, 0x82, 0xe0, 0xa6, 0x22, 0xf6, 0x7b, + 0x21, 0x82, 0x6c, 0x23, 0x32, 0x6c, 0x50, 0x78, 0xcc, 0xda, 0x6a, 0xa3, + 0xdb, 0x01, 0x4c, 0xec, 0x56, 0xa0, 0x65, 0x63, 0x6b, 0x80, 0x57, 0xe8, + 0x12, 0xa6, 0xf4, 0xb7, 0xc6, 0xc4, 0xde, 0x6e, 0x9f, 0x06, 0xaa, 0x53, + 0x77, 0xb2, 0x8b, 0xe6, +}; +static const struct drbg_kat_no_reseed kat85_t = { + 9, kat85_entropyin, kat85_nonce, kat85_persstr, + kat85_addin0, kat85_addin1, kat85_retbits +}; +static const struct drbg_kat kat85 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat85_t +}; + +static const unsigned char kat86_entropyin[] = { + 0x61, 0xcf, 0x4e, 0x09, 0xd9, 0xa4, 0x6a, 0xf3, 0x18, 0xc7, 0x06, 0x42, + 0x5c, 0xd3, 0x50, 0xfb, +}; +static const unsigned char kat86_nonce[] = { + 0x28, 0xec, 0x9c, 0x4a, 0xe9, 0x8f, 0x05, 0x74, +}; +static const unsigned char kat86_persstr[] = {0}; +static const unsigned char kat86_addin0[] = { + 0x7f, 0xc3, 0xbf, 0x8a, 0xd3, 0x3e, 0x59, 0x61, 0x74, 0x5b, 0xb2, 0xae, + 0x7c, 0x39, 0x9b, 0xa0, +}; +static const unsigned char kat86_addin1[] = { + 0x31, 0x35, 0x71, 0xd3, 0x0d, 0xc5, 0x90, 0x9a, 0x03, 0x38, 0x8c, 0x69, + 0x3f, 0x4e, 0xf9, 0x4c, +}; +static const unsigned char kat86_retbits[] = { + 0xd2, 0x25, 0xf0, 0xc6, 0x5e, 0x9a, 0xe8, 0xc3, 0x64, 0x93, 0xb0, 0x09, + 0x47, 0x6f, 0x5a, 0x56, 0x36, 0xd4, 0x52, 0x54, 0x4c, 0xe1, 0x6b, 0x99, + 0x1c, 0x73, 0xd6, 0xea, 0xe5, 0xef, 0x5e, 0xff, 0x3b, 0x74, 0xe0, 0x03, + 0x28, 0xf8, 0x7f, 0x20, 0x30, 0xf3, 0xdf, 0x53, 0xb2, 0xfc, 0x26, 0x47, + 0xd6, 0x3a, 0x28, 0xe5, 0xc7, 0xb5, 0x83, 0x44, 0xed, 0x99, 0xc5, 0xd0, + 0xbc, 0x62, 0x93, 0xb4, +}; +static const struct drbg_kat_no_reseed kat86_t = { + 10, kat86_entropyin, kat86_nonce, kat86_persstr, + kat86_addin0, kat86_addin1, kat86_retbits +}; +static const struct drbg_kat kat86 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat86_t +}; + +static const unsigned char kat87_entropyin[] = { + 0xdd, 0x6c, 0x7d, 0xba, 0xc4, 0xfc, 0x4c, 0x8d, 0x9c, 0x69, 0xce, 0x4d, + 0xcf, 0x43, 0xb6, 0x67, +}; +static const unsigned char kat87_nonce[] = { + 0x83, 0x26, 0x16, 0x1c, 0x2a, 0xac, 0x48, 0x06, +}; +static const unsigned char kat87_persstr[] = {0}; +static const unsigned char kat87_addin0[] = { + 0xcf, 0x95, 0x9f, 0x9e, 0x93, 0x89, 0x09, 0xd9, 0x5c, 0x47, 0x25, 0xdc, + 0x39, 0xd7, 0xef, 0xd7, +}; +static const unsigned char kat87_addin1[] = { + 0xe4, 0x37, 0xd2, 0x26, 0xc4, 0x02, 0x68, 0xcb, 0x9f, 0x63, 0x94, 0x5c, + 0xbc, 0xe5, 0x4b, 0x2d, +}; +static const unsigned char kat87_retbits[] = { + 0x90, 0xdd, 0xc5, 0x3c, 0x48, 0x04, 0x1f, 0x0c, 0x45, 0x01, 0xff, 0xee, + 0x61, 0x7b, 0x3a, 0x35, 0x83, 0xcb, 0xf5, 0x1a, 0x4c, 0x45, 0xad, 0x7b, + 0xa5, 0xb3, 0xdd, 0x34, 0x65, 0xff, 0x13, 0x92, 0xbd, 0x2e, 0xb4, 0x65, + 0x1a, 0xc2, 0x2a, 0x34, 0xa0, 0xf5, 0x37, 0x72, 0x01, 0x27, 0x12, 0xf2, + 0x39, 0x31, 0xba, 0x8f, 0x0a, 0x3b, 0x74, 0xfa, 0xe0, 0xa1, 0x6b, 0xd4, + 0xa1, 0x88, 0x35, 0x13, +}; +static const struct drbg_kat_no_reseed kat87_t = { + 11, kat87_entropyin, kat87_nonce, kat87_persstr, + kat87_addin0, kat87_addin1, kat87_retbits +}; +static const struct drbg_kat kat87 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat87_t +}; + +static const unsigned char kat88_entropyin[] = { + 0xdf, 0x4f, 0xef, 0xc1, 0xc3, 0xd4, 0x03, 0xfb, 0x17, 0x9b, 0x9b, 0x95, + 0x77, 0x53, 0x81, 0xe3, +}; +static const unsigned char kat88_nonce[] = { + 0xd6, 0x84, 0x83, 0xae, 0xe4, 0x2c, 0xfc, 0x00, +}; +static const unsigned char kat88_persstr[] = {0}; +static const unsigned char kat88_addin0[] = { + 0xe8, 0x77, 0xeb, 0x37, 0x51, 0xe2, 0xba, 0xfe, 0xa0, 0x33, 0xac, 0x8c, + 0xc5, 0xba, 0x66, 0xf6, +}; +static const unsigned char kat88_addin1[] = { + 0x79, 0x56, 0x87, 0x40, 0x22, 0xb5, 0x0a, 0xa0, 0x32, 0xba, 0xfa, 0x29, + 0xe7, 0x21, 0xf3, 0x56, +}; +static const unsigned char kat88_retbits[] = { + 0x6a, 0xda, 0x06, 0x20, 0xd4, 0x29, 0xcd, 0x38, 0x75, 0x4e, 0x55, 0x9a, + 0x2e, 0xb8, 0x8c, 0x08, 0x26, 0x6c, 0xd9, 0xcb, 0xac, 0x24, 0x48, 0xb2, + 0xb8, 0xa0, 0x5d, 0x92, 0x7d, 0xa1, 0x72, 0x59, 0x19, 0x9d, 0xbc, 0xc5, + 0xeb, 0x0b, 0x7a, 0xde, 0xe6, 0x1c, 0x60, 0x74, 0xae, 0x2e, 0x7a, 0xf6, + 0xb2, 0xc9, 0xb1, 0xfd, 0x52, 0x89, 0xfb, 0xc3, 0xd9, 0xbe, 0x30, 0x85, + 0x84, 0xd0, 0xae, 0x4a, +}; +static const struct drbg_kat_no_reseed kat88_t = { + 12, kat88_entropyin, kat88_nonce, kat88_persstr, + kat88_addin0, kat88_addin1, kat88_retbits +}; +static const struct drbg_kat kat88 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat88_t +}; + +static const unsigned char kat89_entropyin[] = { + 0x62, 0x0e, 0xa3, 0x17, 0x34, 0x4d, 0x86, 0x85, 0x8d, 0x64, 0xf6, 0xbb, + 0x05, 0xd4, 0x47, 0x97, +}; +static const unsigned char kat89_nonce[] = { + 0xf6, 0xdd, 0xc5, 0x84, 0x4f, 0xbd, 0x73, 0x9e, +}; +static const unsigned char kat89_persstr[] = {0}; +static const unsigned char kat89_addin0[] = { + 0x3c, 0xcf, 0xb0, 0x69, 0xef, 0x27, 0xf8, 0x64, 0xe3, 0xb7, 0x31, 0xd9, + 0x4c, 0x3f, 0x2c, 0x6c, +}; +static const unsigned char kat89_addin1[] = { + 0x80, 0x85, 0x7d, 0x3f, 0x59, 0x8b, 0x1b, 0x16, 0x01, 0x4e, 0x6a, 0x35, + 0x49, 0xa2, 0xd2, 0x2c, +}; +static const unsigned char kat89_retbits[] = { + 0xd7, 0xa7, 0x87, 0xbe, 0xeb, 0x7e, 0xfc, 0x9c, 0x58, 0x4f, 0x93, 0x34, + 0x55, 0x33, 0xa5, 0x99, 0xed, 0x61, 0x5e, 0xb2, 0x13, 0x6b, 0x8f, 0xb8, + 0x74, 0xa7, 0xf5, 0xa7, 0x1a, 0xea, 0x98, 0xf8, 0x0c, 0x56, 0x92, 0x30, + 0x98, 0x56, 0x7a, 0xa3, 0xb4, 0xc3, 0x16, 0x96, 0x82, 0x6f, 0x08, 0x16, + 0x76, 0xa3, 0xce, 0xed, 0x1d, 0x91, 0x4c, 0x94, 0x9d, 0x54, 0x23, 0x90, + 0xb6, 0x99, 0xd3, 0xfe, +}; +static const struct drbg_kat_no_reseed kat89_t = { + 13, kat89_entropyin, kat89_nonce, kat89_persstr, + kat89_addin0, kat89_addin1, kat89_retbits +}; +static const struct drbg_kat kat89 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat89_t +}; + +static const unsigned char kat90_entropyin[] = { + 0xd8, 0xba, 0x9d, 0x16, 0xa0, 0x07, 0x0f, 0xbd, 0xf5, 0x10, 0x9d, 0x3c, + 0x1e, 0xd8, 0x59, 0x16, +}; +static const unsigned char kat90_nonce[] = { + 0x29, 0xce, 0x07, 0xdd, 0xa6, 0x1b, 0x50, 0x14, +}; +static const unsigned char kat90_persstr[] = {0}; +static const unsigned char kat90_addin0[] = { + 0x16, 0x0a, 0xd7, 0x76, 0x75, 0xc6, 0x4c, 0x74, 0x87, 0xee, 0xdb, 0x34, + 0x34, 0x37, 0x00, 0xc0, +}; +static const unsigned char kat90_addin1[] = { + 0x16, 0x32, 0x54, 0x60, 0x58, 0xf1, 0x9e, 0xe1, 0xb8, 0x49, 0xe5, 0xd2, + 0x7e, 0x2d, 0x75, 0x5a, +}; +static const unsigned char kat90_retbits[] = { + 0xe0, 0x5c, 0x62, 0xcb, 0xef, 0xaf, 0x03, 0x80, 0x43, 0xd4, 0x9c, 0x97, + 0x6b, 0xa8, 0x55, 0x21, 0xc2, 0x06, 0x71, 0xd9, 0xf8, 0x1c, 0xeb, 0xf5, + 0xa8, 0x75, 0x81, 0x65, 0x9e, 0x3d, 0x18, 0x19, 0x90, 0x8e, 0x84, 0xec, + 0x01, 0x93, 0xa5, 0x30, 0xf3, 0x10, 0xcc, 0x35, 0x44, 0xba, 0x90, 0xad, + 0x92, 0xa6, 0xc9, 0x9d, 0x3a, 0x1a, 0xf5, 0x5b, 0x5a, 0xed, 0x72, 0x87, + 0x1d, 0xb8, 0x90, 0x02, +}; +static const struct drbg_kat_no_reseed kat90_t = { + 14, kat90_entropyin, kat90_nonce, kat90_persstr, + kat90_addin0, kat90_addin1, kat90_retbits +}; +static const struct drbg_kat kat90 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat90_t +}; + +static const unsigned char kat91_entropyin[] = { + 0x0a, 0xf1, 0x3f, 0x64, 0x59, 0x02, 0xaf, 0x49, 0xe9, 0xa7, 0xce, 0xd6, + 0xe3, 0x6a, 0x21, 0x0d, +}; +static const unsigned char kat91_nonce[] = { + 0xc3, 0xbf, 0xf2, 0x91, 0xa1, 0x1a, 0xc4, 0x97, +}; +static const unsigned char kat91_persstr[] = { + 0xe8, 0xf1, 0xd1, 0xb4, 0x73, 0x1c, 0x4d, 0x57, 0xd7, 0xea, 0xd9, 0xc2, + 0xf6, 0x00, 0xfd, 0xc6, +}; +static const unsigned char kat91_addin0[] = {0}; +static const unsigned char kat91_addin1[] = {0}; +static const unsigned char kat91_retbits[] = { + 0xac, 0x6f, 0x94, 0x5a, 0x4b, 0x9f, 0xd3, 0xb4, 0x7c, 0x74, 0x37, 0x9e, + 0xb1, 0xf2, 0xa7, 0xbb, 0xed, 0xf8, 0xee, 0xc6, 0x8e, 0xfd, 0x3c, 0x7a, + 0x6c, 0xf6, 0x8c, 0x54, 0xae, 0x7a, 0x3f, 0x7b, 0xe7, 0x28, 0x0f, 0x45, + 0x9c, 0x2e, 0x0b, 0x72, 0xaf, 0xa4, 0x5c, 0xeb, 0xbe, 0xbb, 0xa1, 0x7c, + 0x86, 0x7e, 0x96, 0x11, 0xc8, 0x96, 0xa5, 0x7d, 0x51, 0x5b, 0xeb, 0x06, + 0xa7, 0xb9, 0x1f, 0x4c, +}; +static const struct drbg_kat_no_reseed kat91_t = { + 0, kat91_entropyin, kat91_nonce, kat91_persstr, + kat91_addin0, kat91_addin1, kat91_retbits +}; +static const struct drbg_kat kat91 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat91_t +}; + +static const unsigned char kat92_entropyin[] = { + 0x0e, 0x11, 0x3f, 0x47, 0xf2, 0xfc, 0x76, 0xe8, 0x3e, 0x2d, 0x13, 0xd5, + 0x72, 0x24, 0x56, 0x08, +}; +static const unsigned char kat92_nonce[] = { + 0x5f, 0xf8, 0x5c, 0xc6, 0xa5, 0x34, 0xf1, 0x5a, +}; +static const unsigned char kat92_persstr[] = { + 0x50, 0x25, 0x06, 0x68, 0xe5, 0x9d, 0xe3, 0x5f, 0xde, 0x91, 0xe0, 0x8f, + 0xe1, 0x84, 0x84, 0xab, +}; +static const unsigned char kat92_addin0[] = {0}; +static const unsigned char kat92_addin1[] = {0}; +static const unsigned char kat92_retbits[] = { + 0xdc, 0xc6, 0x4a, 0x96, 0x6a, 0x52, 0xd6, 0x00, 0x8d, 0xbe, 0x07, 0xa2, + 0x48, 0x4b, 0xca, 0xad, 0x67, 0xb2, 0x54, 0xd6, 0xf2, 0x46, 0xe4, 0x50, + 0x1d, 0x98, 0x64, 0xb6, 0x4a, 0xd8, 0xb7, 0xed, 0xf1, 0x0f, 0xdb, 0xc6, + 0xdd, 0xc4, 0x14, 0xa9, 0xb4, 0x31, 0xb0, 0x58, 0xa7, 0xee, 0x5c, 0xed, + 0x23, 0xf7, 0xa6, 0xac, 0x7e, 0xea, 0x0f, 0xe6, 0x13, 0x1c, 0x9e, 0xb7, + 0x41, 0x2e, 0x68, 0xdf, +}; +static const struct drbg_kat_no_reseed kat92_t = { + 1, kat92_entropyin, kat92_nonce, kat92_persstr, + kat92_addin0, kat92_addin1, kat92_retbits +}; +static const struct drbg_kat kat92 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat92_t +}; + +static const unsigned char kat93_entropyin[] = { + 0x16, 0xd2, 0xa2, 0x33, 0xf0, 0x49, 0x7c, 0x75, 0x1d, 0xdd, 0x85, 0xef, + 0x7c, 0xd8, 0x62, 0xe6, +}; +static const unsigned char kat93_nonce[] = { + 0x7e, 0x7e, 0x1a, 0xab, 0x1b, 0x82, 0x67, 0x5d, +}; +static const unsigned char kat93_persstr[] = { + 0x15, 0xf8, 0x1e, 0x40, 0xa2, 0x49, 0x3b, 0x85, 0x9c, 0xce, 0xd3, 0x3c, + 0xdf, 0x7b, 0x75, 0x90, +}; +static const unsigned char kat93_addin0[] = {0}; +static const unsigned char kat93_addin1[] = {0}; +static const unsigned char kat93_retbits[] = { + 0xc5, 0x20, 0x97, 0xd2, 0xd0, 0x09, 0xdc, 0xe7, 0xcb, 0xd4, 0x6d, 0x74, + 0x0d, 0xe5, 0x4d, 0x70, 0xc0, 0x73, 0x2f, 0x96, 0xfa, 0xc0, 0xbd, 0x16, + 0x9f, 0x38, 0x56, 0xe5, 0x0f, 0x9e, 0x46, 0x01, 0x67, 0x25, 0x38, 0xb2, + 0x3f, 0x37, 0x1f, 0x78, 0x0e, 0x61, 0xe8, 0x2f, 0x2d, 0xb9, 0x9e, 0xf3, + 0x83, 0x40, 0x08, 0xaa, 0xdc, 0x26, 0xc2, 0x78, 0x55, 0xa6, 0x86, 0x96, + 0xee, 0x81, 0x2c, 0x9c, +}; +static const struct drbg_kat_no_reseed kat93_t = { + 2, kat93_entropyin, kat93_nonce, kat93_persstr, + kat93_addin0, kat93_addin1, kat93_retbits +}; +static const struct drbg_kat kat93 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat93_t +}; + +static const unsigned char kat94_entropyin[] = { + 0xea, 0x36, 0x89, 0x1e, 0x0d, 0x64, 0x26, 0x94, 0x5a, 0x6e, 0x1f, 0x33, + 0x8c, 0x86, 0xca, 0x4b, +}; +static const unsigned char kat94_nonce[] = { + 0x89, 0x69, 0x66, 0x60, 0x0e, 0x85, 0xd3, 0xda, +}; +static const unsigned char kat94_persstr[] = { + 0xb8, 0xc7, 0x01, 0xa1, 0x1e, 0x7c, 0x00, 0x8e, 0x37, 0xc2, 0x32, 0x62, + 0x7c, 0x24, 0xb6, 0xd1, +}; +static const unsigned char kat94_addin0[] = {0}; +static const unsigned char kat94_addin1[] = {0}; +static const unsigned char kat94_retbits[] = { + 0x44, 0x63, 0x60, 0xf1, 0x6b, 0x1e, 0x59, 0xa8, 0x25, 0x96, 0xe6, 0x1d, + 0xf2, 0x3a, 0xf1, 0x8f, 0x5a, 0x95, 0xb7, 0xd8, 0xb7, 0xdd, 0x61, 0x72, + 0xf3, 0x57, 0x5d, 0x45, 0x25, 0x13, 0x86, 0xb0, 0x4b, 0x69, 0x78, 0x5b, + 0xa4, 0x4a, 0x75, 0xeb, 0x2a, 0x54, 0x15, 0x71, 0x3a, 0x84, 0x36, 0x5c, + 0xac, 0x81, 0xb3, 0x0d, 0xf0, 0xb4, 0x8a, 0x61, 0x09, 0x77, 0xfe, 0x69, + 0x61, 0xe7, 0xee, 0x8a, +}; +static const struct drbg_kat_no_reseed kat94_t = { + 3, kat94_entropyin, kat94_nonce, kat94_persstr, + kat94_addin0, kat94_addin1, kat94_retbits +}; +static const struct drbg_kat kat94 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat94_t +}; + +static const unsigned char kat95_entropyin[] = { + 0x3f, 0x41, 0x38, 0xd8, 0x4d, 0x7a, 0xbd, 0x13, 0xbb, 0xe1, 0x5e, 0x18, + 0xb2, 0x92, 0xf1, 0x5f, +}; +static const unsigned char kat95_nonce[] = { + 0x34, 0x62, 0xe5, 0x2e, 0x82, 0xf2, 0x86, 0x53, +}; +static const unsigned char kat95_persstr[] = { + 0x24, 0xc5, 0x17, 0x70, 0x84, 0x95, 0x1c, 0xf5, 0x32, 0xf2, 0x43, 0x2a, + 0x18, 0x82, 0x59, 0x6f, +}; +static const unsigned char kat95_addin0[] = {0}; +static const unsigned char kat95_addin1[] = {0}; +static const unsigned char kat95_retbits[] = { + 0xba, 0x2c, 0xa1, 0xe4, 0x43, 0xc7, 0x5d, 0x55, 0xc4, 0x20, 0x65, 0xba, + 0x91, 0xf7, 0x7d, 0xb5, 0xb8, 0xde, 0x6c, 0x34, 0x2b, 0x65, 0xa2, 0xc1, + 0x49, 0x44, 0x59, 0x79, 0xff, 0x26, 0x3e, 0x9d, 0x01, 0x8f, 0x56, 0x44, + 0x30, 0xfe, 0x1e, 0xdb, 0x48, 0xb4, 0x03, 0xce, 0xf2, 0x3f, 0x86, 0x0e, + 0xa2, 0x71, 0x46, 0xd8, 0x51, 0x18, 0x43, 0xe0, 0xa3, 0x9f, 0xf3, 0x37, + 0xba, 0x74, 0xd2, 0x21, +}; +static const struct drbg_kat_no_reseed kat95_t = { + 4, kat95_entropyin, kat95_nonce, kat95_persstr, + kat95_addin0, kat95_addin1, kat95_retbits +}; +static const struct drbg_kat kat95 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat95_t +}; + +static const unsigned char kat96_entropyin[] = { + 0xa6, 0xae, 0xf8, 0x0f, 0xab, 0x61, 0xe2, 0x7e, 0xf6, 0x11, 0xb8, 0x6f, + 0x92, 0x4e, 0x97, 0x6c, +}; +static const unsigned char kat96_nonce[] = { + 0x74, 0x27, 0x8f, 0x50, 0x23, 0xc2, 0x55, 0x2c, +}; +static const unsigned char kat96_persstr[] = { + 0xa3, 0x85, 0x16, 0x79, 0xe1, 0x12, 0x94, 0x82, 0x01, 0x39, 0x6d, 0x98, + 0xd6, 0xbe, 0x5c, 0x13, +}; +static const unsigned char kat96_addin0[] = {0}; +static const unsigned char kat96_addin1[] = {0}; +static const unsigned char kat96_retbits[] = { + 0x68, 0x57, 0x26, 0x82, 0x7f, 0x3d, 0x38, 0x42, 0x7d, 0x07, 0xdf, 0xcf, + 0xb6, 0x4a, 0x7f, 0x95, 0xb6, 0xf0, 0x6e, 0xf0, 0x1c, 0xed, 0x28, 0x1d, + 0xce, 0x7f, 0x41, 0x30, 0x34, 0x12, 0x36, 0x11, 0x24, 0x36, 0x2b, 0xa5, + 0x1c, 0xe8, 0xd2, 0x55, 0x2a, 0xf0, 0x54, 0xa2, 0x0f, 0xda, 0xc9, 0x4e, + 0x51, 0x69, 0x16, 0x5b, 0x71, 0x52, 0x67, 0x63, 0x8c, 0x1e, 0x0b, 0x9b, + 0x34, 0x52, 0xb5, 0xb7, +}; +static const struct drbg_kat_no_reseed kat96_t = { + 5, kat96_entropyin, kat96_nonce, kat96_persstr, + kat96_addin0, kat96_addin1, kat96_retbits +}; +static const struct drbg_kat kat96 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat96_t +}; + +static const unsigned char kat97_entropyin[] = { + 0x01, 0x64, 0xae, 0x53, 0xe5, 0x33, 0xf2, 0xf1, 0x22, 0x2d, 0x4a, 0xa2, + 0x72, 0x76, 0x81, 0x4c, +}; +static const unsigned char kat97_nonce[] = { + 0x26, 0x05, 0xf5, 0x89, 0xcb, 0x1b, 0xea, 0x9c, +}; +static const unsigned char kat97_persstr[] = { + 0x9d, 0xe7, 0x03, 0xa5, 0xe2, 0xbb, 0xf2, 0xe5, 0x3d, 0x0f, 0xe3, 0xb5, + 0x73, 0xf5, 0x2a, 0xcf, +}; +static const unsigned char kat97_addin0[] = {0}; +static const unsigned char kat97_addin1[] = {0}; +static const unsigned char kat97_retbits[] = { + 0xfd, 0x7f, 0x64, 0x62, 0x2e, 0x87, 0xde, 0x3b, 0x66, 0xe1, 0x99, 0x30, + 0xcf, 0x4c, 0xcd, 0xc3, 0xe6, 0x72, 0xf5, 0xa4, 0xde, 0xf0, 0xda, 0xdd, + 0xb3, 0x71, 0x07, 0x43, 0x0e, 0xc7, 0xf6, 0x91, 0xc6, 0x32, 0x15, 0x45, + 0x10, 0x3c, 0x2a, 0x61, 0x4d, 0x7f, 0x0f, 0x33, 0x17, 0x3b, 0xde, 0xc4, + 0x20, 0x58, 0x58, 0x22, 0xcd, 0xa8, 0xc2, 0x72, 0x20, 0x19, 0x22, 0xb6, + 0x02, 0xf5, 0xd8, 0xa7, +}; +static const struct drbg_kat_no_reseed kat97_t = { + 6, kat97_entropyin, kat97_nonce, kat97_persstr, + kat97_addin0, kat97_addin1, kat97_retbits +}; +static const struct drbg_kat kat97 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat97_t +}; + +static const unsigned char kat98_entropyin[] = { + 0x29, 0xdc, 0x8b, 0xad, 0x50, 0x0c, 0xce, 0x29, 0x5b, 0x9e, 0x86, 0xb2, + 0x15, 0x9c, 0x6d, 0xcd, +}; +static const unsigned char kat98_nonce[] = { + 0xb6, 0x9a, 0x5a, 0x77, 0x69, 0x4f, 0xc4, 0xa0, +}; +static const unsigned char kat98_persstr[] = { + 0xc5, 0x3b, 0x13, 0xaf, 0xbf, 0x21, 0xf1, 0x7e, 0xe9, 0xf4, 0xdd, 0x7c, + 0x09, 0x93, 0xe0, 0xf9, +}; +static const unsigned char kat98_addin0[] = {0}; +static const unsigned char kat98_addin1[] = {0}; +static const unsigned char kat98_retbits[] = { + 0x08, 0xc9, 0x7d, 0x63, 0x8b, 0x5d, 0x82, 0x59, 0x93, 0x10, 0x32, 0x5d, + 0x3b, 0x1e, 0x63, 0x27, 0x74, 0x1c, 0xd9, 0x18, 0x87, 0xd6, 0x58, 0xb5, + 0xd8, 0x15, 0xee, 0xed, 0x7a, 0x72, 0xab, 0x86, 0xe2, 0xfa, 0x17, 0xe9, + 0xd0, 0x13, 0xe1, 0x7a, 0x92, 0x14, 0xd6, 0x39, 0x6a, 0xc1, 0x48, 0x1f, + 0x76, 0x88, 0x30, 0xa4, 0xd8, 0xc4, 0xfc, 0x39, 0x20, 0x12, 0xe9, 0x07, + 0x64, 0x34, 0x93, 0x9f, +}; +static const struct drbg_kat_no_reseed kat98_t = { + 7, kat98_entropyin, kat98_nonce, kat98_persstr, + kat98_addin0, kat98_addin1, kat98_retbits +}; +static const struct drbg_kat kat98 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat98_t +}; + +static const unsigned char kat99_entropyin[] = { + 0xb3, 0xae, 0xe2, 0xcf, 0x80, 0xe3, 0xd0, 0x5a, 0xed, 0xa0, 0xe0, 0x1c, + 0xf6, 0x5e, 0xa9, 0x65, +}; +static const unsigned char kat99_nonce[] = { + 0x24, 0xb5, 0x8b, 0x7c, 0x6a, 0x99, 0xeb, 0x2a, +}; +static const unsigned char kat99_persstr[] = { + 0x73, 0x44, 0x04, 0x3c, 0x84, 0x91, 0x5b, 0xcd, 0xd6, 0xd8, 0x1f, 0x3f, + 0xe2, 0x3b, 0xa2, 0x73, +}; +static const unsigned char kat99_addin0[] = {0}; +static const unsigned char kat99_addin1[] = {0}; +static const unsigned char kat99_retbits[] = { + 0xbe, 0x35, 0x3c, 0xf8, 0x32, 0xe8, 0x46, 0x44, 0x4a, 0xf0, 0x01, 0x5e, + 0xd0, 0x5d, 0x54, 0xb7, 0x2c, 0x9a, 0x1a, 0x02, 0x31, 0xf2, 0xa4, 0xc4, + 0x75, 0x61, 0x17, 0x46, 0xef, 0x86, 0x10, 0x29, 0xe1, 0x88, 0x42, 0xc1, + 0xb7, 0x61, 0x48, 0xd2, 0xa3, 0xeb, 0x01, 0x74, 0xa3, 0x0c, 0xad, 0x81, + 0xb5, 0x58, 0xd0, 0xd1, 0xe0, 0x1a, 0x8c, 0x7d, 0xd5, 0x10, 0xf0, 0xb5, + 0x6f, 0x1f, 0xdd, 0xc3, +}; +static const struct drbg_kat_no_reseed kat99_t = { + 8, kat99_entropyin, kat99_nonce, kat99_persstr, + kat99_addin0, kat99_addin1, kat99_retbits +}; +static const struct drbg_kat kat99 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat99_t +}; + +static const unsigned char kat100_entropyin[] = { + 0xa5, 0x25, 0xf6, 0x91, 0x65, 0xc4, 0x4f, 0x3a, 0x8a, 0xf8, 0x08, 0x57, + 0xa5, 0xe8, 0x74, 0xb0, +}; +static const unsigned char kat100_nonce[] = { + 0x0c, 0x80, 0x6a, 0x40, 0xc1, 0xdc, 0xb7, 0xcc, +}; +static const unsigned char kat100_persstr[] = { + 0x43, 0x12, 0xc2, 0x30, 0x9a, 0x1d, 0xfe, 0x2d, 0x9a, 0x66, 0xf5, 0xc1, + 0x8f, 0xc4, 0x0b, 0x87, +}; +static const unsigned char kat100_addin0[] = {0}; +static const unsigned char kat100_addin1[] = {0}; +static const unsigned char kat100_retbits[] = { + 0xd0, 0xb4, 0x6f, 0x7e, 0x18, 0x77, 0xdb, 0x24, 0x4f, 0xf4, 0xe0, 0xae, + 0xb6, 0x4c, 0x4e, 0xfa, 0x3e, 0x8c, 0x2a, 0x86, 0x62, 0x41, 0x5c, 0xf5, + 0xba, 0x67, 0xf2, 0xdc, 0x91, 0xe8, 0x23, 0x10, 0xa6, 0xa9, 0x33, 0xc4, + 0xdf, 0x6a, 0x40, 0x2f, 0x8f, 0xae, 0x27, 0x0b, 0x22, 0x9b, 0xf2, 0x54, + 0xcd, 0x35, 0x94, 0x3a, 0x13, 0x34, 0x09, 0x79, 0x37, 0x66, 0x69, 0x11, + 0x9e, 0x0e, 0x5c, 0xf8, +}; +static const struct drbg_kat_no_reseed kat100_t = { + 9, kat100_entropyin, kat100_nonce, kat100_persstr, + kat100_addin0, kat100_addin1, kat100_retbits +}; +static const struct drbg_kat kat100 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat100_t +}; + +static const unsigned char kat101_entropyin[] = { + 0x06, 0x08, 0xdc, 0x6c, 0x8f, 0x9f, 0x19, 0x56, 0xfb, 0xe7, 0xd5, 0xa7, + 0xc8, 0x2f, 0xd3, 0xb3, +}; +static const unsigned char kat101_nonce[] = { + 0x61, 0x5b, 0x62, 0xa0, 0x0d, 0x6d, 0x8d, 0x85, +}; +static const unsigned char kat101_persstr[] = { + 0x70, 0xdd, 0x43, 0xc1, 0x76, 0x43, 0x18, 0x17, 0x4a, 0x28, 0x57, 0xc4, + 0x20, 0xdd, 0xf4, 0x07, +}; +static const unsigned char kat101_addin0[] = {0}; +static const unsigned char kat101_addin1[] = {0}; +static const unsigned char kat101_retbits[] = { + 0x71, 0xf4, 0xb5, 0xdf, 0x5b, 0xfa, 0x5f, 0xd5, 0x2c, 0xdc, 0x98, 0x51, + 0xa6, 0x33, 0xf7, 0x7e, 0xd9, 0x04, 0x58, 0xb5, 0xa2, 0x90, 0xb0, 0x4d, + 0x2f, 0x35, 0x13, 0x0d, 0x67, 0xa4, 0x2c, 0x16, 0x98, 0xac, 0x5f, 0x9b, + 0x13, 0x9a, 0x9e, 0xcf, 0x35, 0x90, 0x75, 0x5a, 0x20, 0x41, 0x60, 0xa3, + 0xa8, 0xf1, 0x7b, 0x77, 0x72, 0x66, 0x52, 0xc6, 0xdc, 0x6e, 0x9f, 0x00, + 0x96, 0x64, 0x54, 0xfd, +}; +static const struct drbg_kat_no_reseed kat101_t = { + 10, kat101_entropyin, kat101_nonce, kat101_persstr, + kat101_addin0, kat101_addin1, kat101_retbits +}; +static const struct drbg_kat kat101 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat101_t +}; + +static const unsigned char kat102_entropyin[] = { + 0x7b, 0x39, 0x1f, 0x35, 0xdb, 0x0e, 0x53, 0xbf, 0x48, 0xee, 0x55, 0x76, + 0xb0, 0x23, 0xff, 0x90, +}; +static const unsigned char kat102_nonce[] = { + 0x76, 0x21, 0xaa, 0xd5, 0x32, 0x98, 0x2b, 0x23, +}; +static const unsigned char kat102_persstr[] = { + 0xa6, 0xe7, 0x57, 0x78, 0xb7, 0x77, 0xd0, 0x1f, 0x00, 0x62, 0x27, 0xc4, + 0x00, 0xd8, 0xff, 0x86, +}; +static const unsigned char kat102_addin0[] = {0}; +static const unsigned char kat102_addin1[] = {0}; +static const unsigned char kat102_retbits[] = { + 0xd6, 0x17, 0x80, 0xb5, 0xc7, 0x81, 0x41, 0x2b, 0xf3, 0x08, 0x5e, 0xec, + 0xce, 0xe4, 0x9b, 0x99, 0x35, 0x8a, 0x18, 0x32, 0x23, 0x82, 0x8c, 0x1d, + 0x80, 0x13, 0xac, 0xe6, 0x13, 0xd8, 0x9a, 0x45, 0x04, 0xd7, 0x5b, 0xa3, + 0x09, 0xe5, 0x10, 0x58, 0x9a, 0x53, 0xb4, 0x72, 0xbd, 0x5f, 0xa1, 0xee, + 0x2a, 0x22, 0x39, 0x2b, 0x82, 0x65, 0x70, 0x7c, 0x15, 0xe3, 0x29, 0x35, + 0xbc, 0x8e, 0xfb, 0x4e, +}; +static const struct drbg_kat_no_reseed kat102_t = { + 11, kat102_entropyin, kat102_nonce, kat102_persstr, + kat102_addin0, kat102_addin1, kat102_retbits +}; +static const struct drbg_kat kat102 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat102_t +}; + +static const unsigned char kat103_entropyin[] = { + 0x09, 0x9f, 0x1f, 0x59, 0x17, 0x07, 0xd1, 0xf9, 0xab, 0xae, 0x7e, 0x2b, + 0x65, 0xad, 0xab, 0xc3, +}; +static const unsigned char kat103_nonce[] = { + 0xf9, 0x0d, 0x35, 0x7a, 0x90, 0x1f, 0x11, 0x35, +}; +static const unsigned char kat103_persstr[] = { + 0x74, 0xb8, 0x26, 0x0c, 0xed, 0x4b, 0xbb, 0x80, 0x41, 0x77, 0x92, 0xf1, + 0x93, 0xc6, 0xf9, 0xac, +}; +static const unsigned char kat103_addin0[] = {0}; +static const unsigned char kat103_addin1[] = {0}; +static const unsigned char kat103_retbits[] = { + 0x86, 0xf5, 0x06, 0x25, 0x6d, 0x29, 0x45, 0x0f, 0x16, 0x07, 0x31, 0x27, + 0x39, 0xe5, 0xa0, 0x89, 0xb6, 0xb7, 0x86, 0xfd, 0xf5, 0x21, 0x45, 0x76, + 0x9c, 0xb7, 0x0e, 0xf4, 0xee, 0xd3, 0x21, 0x09, 0xcf, 0x62, 0x36, 0x9d, + 0x7a, 0x76, 0x59, 0x55, 0x78, 0x1e, 0xae, 0x63, 0x52, 0x02, 0x75, 0x16, + 0x93, 0x68, 0x25, 0x7c, 0x6d, 0x34, 0x8e, 0xcc, 0x90, 0x0a, 0x38, 0x98, + 0x77, 0x8d, 0x9a, 0x1a, +}; +static const struct drbg_kat_no_reseed kat103_t = { + 12, kat103_entropyin, kat103_nonce, kat103_persstr, + kat103_addin0, kat103_addin1, kat103_retbits +}; +static const struct drbg_kat kat103 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat103_t +}; + +static const unsigned char kat104_entropyin[] = { + 0xc9, 0x05, 0x9d, 0x7c, 0x01, 0x5c, 0x64, 0xf6, 0xe4, 0x1a, 0xa4, 0x92, + 0x09, 0x9f, 0x4e, 0xf0, +}; +static const unsigned char kat104_nonce[] = { + 0x3f, 0x6e, 0x07, 0x69, 0xce, 0xe1, 0x77, 0xc6, +}; +static const unsigned char kat104_persstr[] = { + 0x76, 0xc6, 0xc6, 0x61, 0x32, 0x98, 0xd9, 0x25, 0xa6, 0xc5, 0x07, 0xae, + 0x65, 0x4d, 0x6d, 0x9a, +}; +static const unsigned char kat104_addin0[] = {0}; +static const unsigned char kat104_addin1[] = {0}; +static const unsigned char kat104_retbits[] = { + 0x23, 0x81, 0x11, 0xc0, 0x06, 0xe5, 0x14, 0xc0, 0x5f, 0x2a, 0xe9, 0x35, + 0xa3, 0x2d, 0xba, 0xa0, 0xb1, 0x28, 0xda, 0xa0, 0x73, 0x6e, 0x83, 0xd9, + 0x34, 0x03, 0x77, 0x6c, 0x91, 0xe4, 0x77, 0xd0, 0xd0, 0x2c, 0x4a, 0x24, + 0x87, 0x6a, 0x23, 0x29, 0xa0, 0xf1, 0x06, 0x03, 0x8d, 0x70, 0x1f, 0xed, + 0xdf, 0x02, 0x47, 0xcc, 0x75, 0x84, 0x6d, 0xd3, 0x01, 0x08, 0x29, 0x9d, + 0x84, 0x0e, 0xc4, 0xa8, +}; +static const struct drbg_kat_no_reseed kat104_t = { + 13, kat104_entropyin, kat104_nonce, kat104_persstr, + kat104_addin0, kat104_addin1, kat104_retbits +}; +static const struct drbg_kat kat104 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat104_t +}; + +static const unsigned char kat105_entropyin[] = { + 0x98, 0xd1, 0x3c, 0x30, 0xa6, 0xda, 0xe2, 0xca, 0x76, 0xd7, 0xd6, 0x67, + 0x9f, 0x1f, 0xfb, 0xc4, +}; +static const unsigned char kat105_nonce[] = { + 0x49, 0x0b, 0x93, 0x9e, 0xb5, 0x56, 0xff, 0x1b, +}; +static const unsigned char kat105_persstr[] = { + 0x6c, 0x10, 0xa7, 0xc3, 0x0f, 0xb5, 0x34, 0xb5, 0x93, 0x4b, 0x1c, 0x29, + 0x80, 0x84, 0x94, 0xb9, +}; +static const unsigned char kat105_addin0[] = {0}; +static const unsigned char kat105_addin1[] = {0}; +static const unsigned char kat105_retbits[] = { + 0xcb, 0x7d, 0xee, 0xea, 0x97, 0xbd, 0xb0, 0x3f, 0x72, 0xa0, 0x3b, 0x2d, + 0x9b, 0x5f, 0x1b, 0x33, 0x03, 0x44, 0x48, 0x6e, 0x53, 0xe0, 0x49, 0x27, + 0xc5, 0x8f, 0xb6, 0x3c, 0x97, 0x1a, 0xc9, 0x87, 0x33, 0xb0, 0x24, 0x9a, + 0x1e, 0xfa, 0x85, 0xf8, 0x8b, 0xec, 0x48, 0x18, 0xe1, 0x31, 0x10, 0x22, + 0x07, 0x76, 0xe4, 0xfd, 0xe4, 0x29, 0xe6, 0x39, 0x0a, 0xf4, 0x66, 0x71, + 0x29, 0x01, 0x18, 0x9b, +}; +static const struct drbg_kat_no_reseed kat105_t = { + 14, kat105_entropyin, kat105_nonce, kat105_persstr, + kat105_addin0, kat105_addin1, kat105_retbits +}; +static const struct drbg_kat kat105 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat105_t +}; + +static const unsigned char kat106_entropyin[] = { + 0x25, 0xad, 0x6e, 0x73, 0x05, 0x5e, 0xcb, 0xc9, 0x49, 0xf2, 0x91, 0xf0, + 0xf7, 0x97, 0xf1, 0x7a, +}; +static const unsigned char kat106_nonce[] = { + 0x1f, 0x85, 0xa9, 0x2a, 0x46, 0x0a, 0x2e, 0xea, +}; +static const unsigned char kat106_persstr[] = { + 0x83, 0xd0, 0x4b, 0x4b, 0x15, 0x91, 0xc7, 0xba, 0xc9, 0xbc, 0xa9, 0x07, + 0xbb, 0xe9, 0xdd, 0xd4, +}; +static const unsigned char kat106_addin0[] = { + 0x52, 0x3c, 0x6c, 0xb0, 0xbc, 0x27, 0xd1, 0x9f, 0x8d, 0x2e, 0xbe, 0xf5, + 0x79, 0x26, 0xdd, 0xe4, +}; +static const unsigned char kat106_addin1[] = { + 0xd3, 0x3c, 0xd1, 0x4b, 0x5b, 0x79, 0x37, 0x38, 0x8e, 0x89, 0xec, 0xc0, + 0x80, 0x63, 0x03, 0xf0, +}; +static const unsigned char kat106_retbits[] = { + 0x23, 0xd9, 0x19, 0x5e, 0x40, 0x26, 0xed, 0xf0, 0x70, 0x88, 0xb8, 0x37, + 0x62, 0x75, 0x47, 0xa0, 0xea, 0x91, 0x37, 0xed, 0x03, 0x36, 0xd7, 0x69, + 0x60, 0x15, 0xdd, 0x6f, 0x29, 0x84, 0xde, 0xdb, 0x2a, 0x20, 0x7f, 0x2e, + 0xb8, 0xa2, 0x56, 0x60, 0xa5, 0xee, 0x78, 0x11, 0x78, 0x57, 0x9a, 0x0f, + 0x23, 0x3f, 0xb6, 0xf7, 0x26, 0x03, 0x58, 0xdb, 0xfd, 0x53, 0x25, 0xc3, + 0xf8, 0xc8, 0xfe, 0x33, +}; +static const struct drbg_kat_no_reseed kat106_t = { + 0, kat106_entropyin, kat106_nonce, kat106_persstr, + kat106_addin0, kat106_addin1, kat106_retbits +}; +static const struct drbg_kat kat106 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat106_t +}; + +static const unsigned char kat107_entropyin[] = { + 0xae, 0x33, 0x2f, 0x73, 0x39, 0x0e, 0x27, 0x75, 0x6b, 0xc9, 0x3d, 0x2b, + 0x95, 0x1b, 0x8b, 0x44, +}; +static const unsigned char kat107_nonce[] = { + 0xe6, 0x9f, 0xc8, 0xa1, 0x64, 0x50, 0xfb, 0x6d, +}; +static const unsigned char kat107_persstr[] = { + 0x5f, 0x76, 0x86, 0x3d, 0x3a, 0x20, 0x87, 0xe9, 0xcb, 0x90, 0xe1, 0x12, + 0xc1, 0x68, 0x06, 0xe2, +}; +static const unsigned char kat107_addin0[] = { + 0xbf, 0x6a, 0x8e, 0x05, 0x6e, 0x6c, 0x3c, 0xc1, 0xa6, 0xcb, 0xdb, 0x6b, + 0x59, 0xeb, 0xea, 0xe2, +}; +static const unsigned char kat107_addin1[] = { + 0xd8, 0x7a, 0xb9, 0x22, 0x4a, 0xa9, 0xcd, 0x9b, 0x5b, 0x84, 0x78, 0x35, + 0xcb, 0x0d, 0xaa, 0xc4, +}; +static const unsigned char kat107_retbits[] = { + 0xe0, 0xa2, 0xdd, 0x56, 0x06, 0xa0, 0xa2, 0x61, 0x57, 0xf9, 0x21, 0x05, + 0x11, 0xbb, 0xde, 0x50, 0xc9, 0x2f, 0x34, 0xad, 0x92, 0x36, 0x3c, 0xb9, + 0x2a, 0x05, 0x20, 0x8b, 0x60, 0xb3, 0x3d, 0x21, 0xc3, 0xd6, 0xc0, 0xc6, + 0xef, 0x05, 0x4e, 0xc4, 0x09, 0xb4, 0x63, 0x0d, 0xea, 0xc4, 0xc6, 0xd1, + 0xad, 0x1b, 0x6b, 0xe7, 0x5f, 0xff, 0x27, 0xaa, 0x74, 0x94, 0x13, 0xc8, + 0xb6, 0x4c, 0xf3, 0xe1, +}; +static const struct drbg_kat_no_reseed kat107_t = { + 1, kat107_entropyin, kat107_nonce, kat107_persstr, + kat107_addin0, kat107_addin1, kat107_retbits +}; +static const struct drbg_kat kat107 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat107_t +}; + +static const unsigned char kat108_entropyin[] = { + 0xe1, 0xa5, 0x89, 0xaf, 0xab, 0x83, 0x91, 0x69, 0x2d, 0xba, 0x52, 0x31, + 0x8a, 0xa8, 0xdc, 0x0d, +}; +static const unsigned char kat108_nonce[] = { + 0x22, 0xeb, 0xcf, 0x2e, 0x24, 0xa9, 0x55, 0x28, +}; +static const unsigned char kat108_persstr[] = { + 0x82, 0xe8, 0xc3, 0x55, 0xdb, 0xc9, 0xcd, 0x4c, 0x8d, 0x52, 0xfa, 0x45, + 0x21, 0x18, 0xf9, 0xf8, +}; +static const unsigned char kat108_addin0[] = { + 0xf7, 0x74, 0x57, 0xec, 0x32, 0xde, 0x66, 0x6f, 0x37, 0x0d, 0xa9, 0xe6, + 0xc2, 0x20, 0xc5, 0x80, +}; +static const unsigned char kat108_addin1[] = { + 0xba, 0x25, 0xaa, 0x3a, 0xb3, 0xd5, 0x0a, 0x72, 0xb6, 0xc1, 0xb4, 0x3f, + 0x30, 0xdb, 0x44, 0x55, +}; +static const unsigned char kat108_retbits[] = { + 0x88, 0x59, 0x55, 0xd1, 0x27, 0xfa, 0xf4, 0xc9, 0x21, 0xc4, 0xed, 0x3f, + 0x38, 0xbc, 0x15, 0x42, 0xb9, 0x5a, 0x87, 0x83, 0x4d, 0x4d, 0x73, 0xd1, + 0x56, 0x24, 0x00, 0xa6, 0xd3, 0xaa, 0x8e, 0x6c, 0x69, 0x7b, 0x71, 0x1d, + 0x91, 0x0e, 0xec, 0xeb, 0xc9, 0xca, 0x4e, 0xc2, 0xdc, 0x17, 0xe7, 0x98, + 0x93, 0xe7, 0xf7, 0x34, 0xc4, 0x56, 0x75, 0xde, 0x47, 0x7f, 0x55, 0x45, + 0xbd, 0x94, 0xcd, 0xee, +}; +static const struct drbg_kat_no_reseed kat108_t = { + 2, kat108_entropyin, kat108_nonce, kat108_persstr, + kat108_addin0, kat108_addin1, kat108_retbits +}; +static const struct drbg_kat kat108 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat108_t +}; + +static const unsigned char kat109_entropyin[] = { + 0x6f, 0xb7, 0x6f, 0xcd, 0x3d, 0x76, 0x2f, 0xa4, 0xc5, 0x0d, 0xe1, 0xf2, + 0x2e, 0x92, 0x76, 0x83, +}; +static const unsigned char kat109_nonce[] = { + 0xa5, 0xee, 0xf1, 0x2f, 0x3b, 0x3c, 0x25, 0xa3, +}; +static const unsigned char kat109_persstr[] = { + 0x54, 0x86, 0x7d, 0x7d, 0xc8, 0xce, 0xf5, 0x23, 0x42, 0xbb, 0xc0, 0x09, + 0x95, 0x4e, 0xfb, 0xf8, +}; +static const unsigned char kat109_addin0[] = { + 0xfa, 0xc5, 0x52, 0xaa, 0x87, 0x96, 0xe8, 0x85, 0x8d, 0x55, 0xae, 0x37, + 0x1a, 0x0f, 0x54, 0x8f, +}; +static const unsigned char kat109_addin1[] = { + 0xfe, 0xfb, 0xe9, 0xc8, 0x3c, 0x15, 0x9f, 0xcf, 0xa9, 0x2e, 0xe8, 0x18, + 0x76, 0x1d, 0x49, 0xdc, +}; +static const unsigned char kat109_retbits[] = { + 0x09, 0x4f, 0x86, 0x3b, 0x88, 0xe2, 0xb5, 0x5e, 0xf4, 0x15, 0xd2, 0x68, + 0x82, 0x94, 0xc7, 0xd8, 0xd2, 0xd7, 0x76, 0xc1, 0x69, 0x16, 0x73, 0x91, + 0xdf, 0x36, 0xf8, 0x0a, 0xd8, 0xe9, 0x83, 0x3e, 0x97, 0x61, 0x6e, 0xf6, + 0xe0, 0xa4, 0x5f, 0x94, 0x0d, 0x66, 0x38, 0x30, 0x18, 0xae, 0xe8, 0x6a, + 0x48, 0x0a, 0x26, 0x51, 0xd6, 0xe2, 0xef, 0xad, 0x61, 0x5a, 0x05, 0x1f, + 0x0d, 0xca, 0x64, 0xae, +}; +static const struct drbg_kat_no_reseed kat109_t = { + 3, kat109_entropyin, kat109_nonce, kat109_persstr, + kat109_addin0, kat109_addin1, kat109_retbits +}; +static const struct drbg_kat kat109 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat109_t +}; + +static const unsigned char kat110_entropyin[] = { + 0x5b, 0x32, 0xa3, 0x92, 0xdc, 0x66, 0x5a, 0xb5, 0x8f, 0x25, 0x98, 0xea, + 0xb0, 0x7d, 0x8e, 0x53, +}; +static const unsigned char kat110_nonce[] = { + 0xc6, 0xf6, 0x13, 0x10, 0x73, 0x88, 0x60, 0xf5, +}; +static const unsigned char kat110_persstr[] = { + 0x9f, 0x30, 0x9a, 0x68, 0x53, 0x29, 0x82, 0x16, 0x92, 0xa9, 0x73, 0x00, + 0x62, 0x0c, 0x01, 0x56, +}; +static const unsigned char kat110_addin0[] = { + 0x87, 0x5a, 0x4a, 0x43, 0xbd, 0xdf, 0x1a, 0x73, 0x05, 0x52, 0x6a, 0x48, + 0x8a, 0x1e, 0x0e, 0xb4, +}; +static const unsigned char kat110_addin1[] = { + 0x21, 0x14, 0xa7, 0xcb, 0x15, 0x49, 0x0c, 0x06, 0x3b, 0xb4, 0x66, 0x8f, + 0x36, 0x9a, 0x3d, 0x8e, +}; +static const unsigned char kat110_retbits[] = { + 0x91, 0xc1, 0xf1, 0x99, 0xf6, 0x71, 0xff, 0x56, 0x8e, 0x0e, 0xce, 0x46, + 0x08, 0x87, 0x65, 0x16, 0x23, 0x22, 0xa8, 0x21, 0x60, 0x66, 0xf9, 0xa4, + 0x15, 0xd7, 0xcc, 0xd9, 0xdf, 0xe7, 0x23, 0xc5, 0x21, 0xf5, 0x7d, 0xbd, + 0x84, 0x69, 0xe3, 0x9b, 0xac, 0xda, 0xc3, 0x1e, 0x74, 0x2a, 0x2d, 0x2f, + 0xf2, 0xa3, 0x1d, 0x5a, 0x15, 0xa0, 0x1b, 0xfd, 0x32, 0xbe, 0x50, 0x28, + 0x6c, 0x73, 0x0e, 0xad, +}; +static const struct drbg_kat_no_reseed kat110_t = { + 4, kat110_entropyin, kat110_nonce, kat110_persstr, + kat110_addin0, kat110_addin1, kat110_retbits +}; +static const struct drbg_kat kat110 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat110_t +}; + +static const unsigned char kat111_entropyin[] = { + 0x79, 0x95, 0x7c, 0x33, 0xe4, 0x5b, 0xba, 0x1c, 0x8a, 0xe6, 0x90, 0x29, + 0x07, 0x7a, 0xe3, 0x6b, +}; +static const unsigned char kat111_nonce[] = { + 0x5b, 0x49, 0xd8, 0xe7, 0xc1, 0x80, 0xbc, 0xb6, +}; +static const unsigned char kat111_persstr[] = { + 0x2a, 0xa8, 0xe7, 0x7b, 0x94, 0xfe, 0x0d, 0xdf, 0x0e, 0x57, 0x30, 0x2c, + 0x8e, 0xbd, 0xc2, 0x2a, +}; +static const unsigned char kat111_addin0[] = { + 0x14, 0x84, 0x4d, 0x85, 0xe5, 0x0c, 0xb1, 0xfc, 0xb4, 0xe6, 0x88, 0x7b, + 0x3f, 0xc6, 0x7f, 0x54, +}; +static const unsigned char kat111_addin1[] = { + 0x4c, 0x7c, 0xb0, 0x69, 0x29, 0x7c, 0x18, 0x65, 0x33, 0x94, 0xb8, 0x2b, + 0xe6, 0xa9, 0x30, 0x99, +}; +static const unsigned char kat111_retbits[] = { + 0x06, 0x61, 0xe2, 0x41, 0x6e, 0x71, 0xfe, 0x49, 0x11, 0x9f, 0x96, 0x76, + 0x42, 0xfd, 0x37, 0xdd, 0xb5, 0x82, 0xa1, 0x89, 0xa8, 0x88, 0xe7, 0xd4, + 0xa2, 0xaa, 0x56, 0x27, 0x51, 0x94, 0xc8, 0xca, 0x69, 0x8f, 0xb2, 0xd6, + 0x96, 0x83, 0x4b, 0x88, 0xb5, 0x72, 0xf0, 0xfd, 0xf5, 0xba, 0xdb, 0x6b, + 0xf5, 0x8d, 0x16, 0x12, 0xd2, 0x5f, 0x5e, 0xe3, 0xf6, 0x2d, 0x33, 0xdb, + 0x9a, 0x86, 0xb0, 0x87, +}; +static const struct drbg_kat_no_reseed kat111_t = { + 5, kat111_entropyin, kat111_nonce, kat111_persstr, + kat111_addin0, kat111_addin1, kat111_retbits +}; +static const struct drbg_kat kat111 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat111_t +}; + +static const unsigned char kat112_entropyin[] = { + 0x70, 0x50, 0x89, 0x80, 0x36, 0x2e, 0x96, 0x2a, 0xe7, 0x78, 0x45, 0x80, + 0x81, 0xcf, 0xbb, 0xe6, +}; +static const unsigned char kat112_nonce[] = { + 0x29, 0xcc, 0xf6, 0xed, 0xba, 0x46, 0x2d, 0xc2, +}; +static const unsigned char kat112_persstr[] = { + 0x48, 0xa3, 0xd8, 0xdb, 0xdc, 0x85, 0x18, 0x8a, 0xbb, 0x35, 0xb5, 0x6c, + 0x19, 0x4d, 0x60, 0x20, +}; +static const unsigned char kat112_addin0[] = { + 0xa8, 0x14, 0x72, 0x42, 0xe2, 0x47, 0x37, 0xfc, 0xf3, 0xb0, 0x07, 0xd2, + 0x84, 0xd6, 0x61, 0xc4, +}; +static const unsigned char kat112_addin1[] = { + 0x96, 0x4a, 0x9d, 0x06, 0x86, 0xd9, 0x61, 0x93, 0xfb, 0x2e, 0x4a, 0x35, + 0x14, 0x5e, 0xdc, 0xc8, +}; +static const unsigned char kat112_retbits[] = { + 0xd8, 0x1b, 0xd5, 0xda, 0x60, 0xd9, 0x9d, 0x6d, 0xaa, 0xec, 0xeb, 0xc0, + 0x60, 0x65, 0x26, 0x33, 0xec, 0x14, 0xdc, 0x3b, 0x84, 0x69, 0x3b, 0xdf, + 0xf7, 0x67, 0x77, 0x1f, 0x03, 0x2b, 0xfa, 0x2e, 0x4d, 0xfa, 0xd5, 0x3e, + 0xf6, 0xd1, 0x99, 0x10, 0xbd, 0x92, 0x5d, 0xf1, 0x20, 0x9f, 0x33, 0xea, + 0x11, 0xe3, 0xf1, 0xe8, 0x37, 0xb0, 0x3e, 0x7a, 0x70, 0x03, 0x25, 0x7f, + 0xf4, 0x20, 0xa6, 0x92, +}; +static const struct drbg_kat_no_reseed kat112_t = { + 6, kat112_entropyin, kat112_nonce, kat112_persstr, + kat112_addin0, kat112_addin1, kat112_retbits +}; +static const struct drbg_kat kat112 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat112_t +}; + +static const unsigned char kat113_entropyin[] = { + 0xb7, 0x83, 0x71, 0xba, 0xf5, 0x86, 0xc0, 0xdd, 0x05, 0x4b, 0xfd, 0x29, + 0x3f, 0xc7, 0xe8, 0xdc, +}; +static const unsigned char kat113_nonce[] = { + 0x11, 0x9b, 0x23, 0x2c, 0xe4, 0xca, 0xda, 0x97, +}; +static const unsigned char kat113_persstr[] = { + 0x3a, 0x58, 0x75, 0xb4, 0x43, 0x07, 0x3c, 0x9b, 0xf6, 0x4a, 0x0a, 0xaa, + 0xf2, 0x6b, 0xa4, 0x4f, +}; +static const unsigned char kat113_addin0[] = { + 0x4d, 0x2d, 0x4f, 0x16, 0xb7, 0xb7, 0xd2, 0xd2, 0xbb, 0x4d, 0x83, 0xa4, + 0x92, 0x99, 0x96, 0xb2, +}; +static const unsigned char kat113_addin1[] = { + 0x7d, 0x31, 0x73, 0xe0, 0x8a, 0xea, 0x4c, 0x8b, 0x6e, 0xf9, 0xe3, 0xcd, + 0x69, 0x8f, 0x9b, 0x09, +}; +static const unsigned char kat113_retbits[] = { + 0xbb, 0x04, 0x86, 0x41, 0xf0, 0x36, 0xdc, 0x11, 0xb8, 0xdf, 0x8a, 0xd3, + 0xe4, 0xd5, 0xbd, 0xfc, 0x30, 0x9b, 0x2c, 0x3f, 0x22, 0xb3, 0xd2, 0xb8, + 0xac, 0xf1, 0x96, 0xd5, 0x0c, 0xd5, 0x42, 0xde, 0x13, 0xcd, 0x99, 0x97, + 0x8a, 0x92, 0x0a, 0xcb, 0xa6, 0x1d, 0xc0, 0x7c, 0x64, 0x6b, 0x48, 0x09, + 0x44, 0x79, 0xbb, 0x44, 0x17, 0xd8, 0x40, 0x9a, 0xba, 0xe3, 0xd6, 0x9e, + 0xd5, 0x2a, 0x2a, 0x3e, +}; +static const struct drbg_kat_no_reseed kat113_t = { + 7, kat113_entropyin, kat113_nonce, kat113_persstr, + kat113_addin0, kat113_addin1, kat113_retbits +}; +static const struct drbg_kat kat113 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat113_t +}; + +static const unsigned char kat114_entropyin[] = { + 0x96, 0xbf, 0xc3, 0x47, 0xb3, 0x06, 0x80, 0x5a, 0xf8, 0x8d, 0xa0, 0x07, + 0x67, 0x5d, 0xb4, 0x7c, +}; +static const unsigned char kat114_nonce[] = { + 0x12, 0x95, 0x37, 0x06, 0xa0, 0x6e, 0xb5, 0x30, +}; +static const unsigned char kat114_persstr[] = { + 0x46, 0x73, 0x3d, 0xdd, 0xaf, 0x70, 0xe3, 0xf2, 0x07, 0x5c, 0xb8, 0x70, + 0xf4, 0x7e, 0x72, 0xdf, +}; +static const unsigned char kat114_addin0[] = { + 0x64, 0xf7, 0x9a, 0xd1, 0xdf, 0xa3, 0x93, 0xd3, 0x6b, 0xf5, 0xbe, 0x83, + 0x32, 0x90, 0xb6, 0x94, +}; +static const unsigned char kat114_addin1[] = { + 0x5d, 0x21, 0x0f, 0x12, 0x85, 0xf0, 0xfb, 0x03, 0x8a, 0x75, 0x34, 0x76, + 0xef, 0x24, 0x91, 0x79, +}; +static const unsigned char kat114_retbits[] = { + 0x67, 0xb6, 0x9b, 0xa4, 0x34, 0x90, 0x3e, 0x2b, 0xbf, 0x46, 0xd3, 0xf5, + 0xe3, 0x00, 0xb9, 0xe5, 0xcf, 0x33, 0x01, 0xbe, 0xaa, 0xb7, 0xd3, 0x0b, + 0x46, 0x52, 0xed, 0x3b, 0xf6, 0x62, 0x65, 0x79, 0x50, 0x3a, 0x54, 0x4e, + 0x58, 0x23, 0x7c, 0x5e, 0x55, 0x1a, 0xd5, 0xee, 0x17, 0xb7, 0x36, 0x12, + 0x0c, 0x37, 0xa3, 0x02, 0x9b, 0xd7, 0xa1, 0x03, 0x4d, 0x4c, 0x49, 0xf6, + 0x1e, 0x04, 0x0a, 0xca, +}; +static const struct drbg_kat_no_reseed kat114_t = { + 8, kat114_entropyin, kat114_nonce, kat114_persstr, + kat114_addin0, kat114_addin1, kat114_retbits +}; +static const struct drbg_kat kat114 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat114_t +}; + +static const unsigned char kat115_entropyin[] = { + 0x9a, 0x4c, 0x8b, 0x46, 0xa9, 0x74, 0xfb, 0xc8, 0x5e, 0x25, 0x6d, 0x1f, + 0x07, 0xcc, 0x59, 0xaa, +}; +static const unsigned char kat115_nonce[] = { + 0xeb, 0x8d, 0x66, 0x21, 0x02, 0x09, 0x01, 0x14, +}; +static const unsigned char kat115_persstr[] = { + 0xb9, 0x4b, 0x8d, 0x2a, 0x64, 0x92, 0x66, 0x64, 0x5a, 0x71, 0x5a, 0xfc, + 0xa0, 0x99, 0x5d, 0x9d, +}; +static const unsigned char kat115_addin0[] = { + 0xf3, 0x36, 0xe1, 0xd6, 0x2a, 0xc5, 0x68, 0xed, 0x13, 0x2e, 0xa0, 0x18, + 0x15, 0xda, 0xd5, 0x08, +}; +static const unsigned char kat115_addin1[] = { + 0x66, 0x76, 0x26, 0xa2, 0x3d, 0x23, 0xb7, 0x16, 0x5a, 0x6a, 0x88, 0x5d, + 0x41, 0xfa, 0x90, 0x1c, +}; +static const unsigned char kat115_retbits[] = { + 0x2d, 0xf3, 0x3f, 0x7a, 0xd2, 0xc2, 0xd8, 0x6e, 0x61, 0x63, 0x3c, 0x25, + 0xa8, 0xac, 0x57, 0xb5, 0xde, 0xad, 0x88, 0x02, 0x1c, 0x93, 0xad, 0x69, + 0xba, 0x6c, 0x52, 0x27, 0x99, 0xc4, 0xbe, 0xbf, 0xda, 0x78, 0x27, 0x72, + 0xc8, 0x1e, 0x7e, 0x02, 0xd8, 0xb8, 0x82, 0x54, 0x6b, 0x24, 0x2b, 0xb2, + 0x2f, 0x31, 0x05, 0x65, 0xba, 0xc3, 0x16, 0x26, 0x9f, 0xfc, 0x80, 0x04, + 0xd5, 0x44, 0x06, 0x31, +}; +static const struct drbg_kat_no_reseed kat115_t = { + 9, kat115_entropyin, kat115_nonce, kat115_persstr, + kat115_addin0, kat115_addin1, kat115_retbits +}; +static const struct drbg_kat kat115 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat115_t +}; + +static const unsigned char kat116_entropyin[] = { + 0xc7, 0xd6, 0x55, 0x75, 0x65, 0xa1, 0xfd, 0xe4, 0x80, 0x84, 0x1f, 0x1f, + 0x1a, 0x10, 0xf6, 0x7d, +}; +static const unsigned char kat116_nonce[] = { + 0x02, 0xf8, 0x47, 0x98, 0x66, 0x26, 0xbb, 0x4b, +}; +static const unsigned char kat116_persstr[] = { + 0x61, 0x8c, 0xac, 0x99, 0x53, 0x17, 0x91, 0x67, 0x36, 0x03, 0xa1, 0x6b, + 0x99, 0xab, 0x0e, 0x80, +}; +static const unsigned char kat116_addin0[] = { + 0x81, 0x0c, 0x8b, 0xe4, 0xb1, 0x80, 0x1f, 0xec, 0x75, 0x40, 0x63, 0xc2, + 0x61, 0x15, 0x66, 0x60, +}; +static const unsigned char kat116_addin1[] = { + 0xe2, 0x59, 0x4d, 0x34, 0xce, 0x1a, 0xd6, 0x53, 0x51, 0x28, 0x60, 0x69, + 0xeb, 0x1a, 0x63, 0x08, +}; +static const unsigned char kat116_retbits[] = { + 0xa3, 0xc4, 0xd0, 0x2d, 0xa0, 0x16, 0x6f, 0xef, 0x32, 0xce, 0x69, 0x97, + 0x5d, 0xb9, 0x4d, 0x19, 0x60, 0x44, 0xe8, 0x1f, 0x59, 0x04, 0x4d, 0x22, + 0xdf, 0x84, 0x05, 0xb4, 0x68, 0xeb, 0xd5, 0xa9, 0x29, 0x97, 0xfe, 0xeb, + 0xa8, 0x2d, 0x7a, 0xdf, 0x97, 0xcc, 0xbb, 0x1a, 0x59, 0x35, 0x56, 0x26, + 0xae, 0xfa, 0xe0, 0xd4, 0x35, 0xb4, 0x03, 0xb7, 0xde, 0xb9, 0x00, 0x5b, + 0x8f, 0x5e, 0xa9, 0xa5, +}; +static const struct drbg_kat_no_reseed kat116_t = { + 10, kat116_entropyin, kat116_nonce, kat116_persstr, + kat116_addin0, kat116_addin1, kat116_retbits +}; +static const struct drbg_kat kat116 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat116_t +}; + +static const unsigned char kat117_entropyin[] = { + 0x14, 0x0d, 0xbf, 0xf6, 0x3e, 0x70, 0x83, 0xc3, 0x08, 0x41, 0x9f, 0x86, + 0x4c, 0x09, 0x3e, 0x99, +}; +static const unsigned char kat117_nonce[] = { + 0xeb, 0x1c, 0x66, 0x92, 0xdb, 0x94, 0x9d, 0x5a, +}; +static const unsigned char kat117_persstr[] = { + 0x23, 0xd3, 0x27, 0x21, 0xf1, 0xc0, 0x3a, 0x90, 0xf3, 0x9e, 0xf0, 0x21, + 0xac, 0x88, 0x84, 0xc7, +}; +static const unsigned char kat117_addin0[] = { + 0xc6, 0xe3, 0x80, 0x8d, 0xb9, 0xf9, 0xda, 0x14, 0x23, 0x9a, 0xd7, 0xd7, + 0x18, 0x28, 0x6a, 0x96, +}; +static const unsigned char kat117_addin1[] = { + 0xa8, 0x4a, 0xaa, 0xdb, 0x7d, 0x57, 0x2a, 0x9a, 0xfc, 0xa3, 0xf7, 0x6c, + 0xed, 0xf0, 0xa4, 0xb9, +}; +static const unsigned char kat117_retbits[] = { + 0x74, 0x3d, 0xf9, 0x7c, 0x2e, 0x99, 0xd9, 0x74, 0x07, 0x77, 0x72, 0xa6, + 0xfe, 0xa4, 0x03, 0x12, 0x8f, 0x41, 0xff, 0x32, 0xa9, 0x5f, 0xb4, 0xf8, + 0xb0, 0xec, 0xca, 0xa0, 0x57, 0x1c, 0xd2, 0x57, 0x8e, 0x48, 0x2c, 0xe7, + 0x09, 0x84, 0x99, 0xc4, 0xd3, 0x01, 0x5f, 0x91, 0x92, 0x35, 0x52, 0x38, + 0xc7, 0x0f, 0x8b, 0x76, 0xa5, 0x04, 0x27, 0x2a, 0x87, 0x09, 0xcd, 0x0e, + 0x2d, 0xc8, 0x2c, 0x9c, +}; +static const struct drbg_kat_no_reseed kat117_t = { + 11, kat117_entropyin, kat117_nonce, kat117_persstr, + kat117_addin0, kat117_addin1, kat117_retbits +}; +static const struct drbg_kat kat117 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat117_t +}; + +static const unsigned char kat118_entropyin[] = { + 0x6a, 0xf3, 0x96, 0x2f, 0xd6, 0xae, 0x84, 0xde, 0xc3, 0xf8, 0x94, 0xbf, + 0x39, 0xc6, 0x46, 0x42, +}; +static const unsigned char kat118_nonce[] = { + 0xc0, 0x20, 0x49, 0x64, 0x61, 0xa3, 0x91, 0x61, +}; +static const unsigned char kat118_persstr[] = { + 0x75, 0xca, 0xef, 0xe7, 0x75, 0x20, 0x45, 0xfc, 0xb1, 0xe5, 0xfc, 0x22, + 0x7f, 0xfb, 0x94, 0x0d, +}; +static const unsigned char kat118_addin0[] = { + 0x16, 0x64, 0xf7, 0xcc, 0x88, 0xd0, 0x1d, 0x7f, 0x27, 0x86, 0x15, 0xc5, + 0x63, 0x09, 0x2f, 0xd6, +}; +static const unsigned char kat118_addin1[] = { + 0x60, 0xb7, 0xa8, 0x6b, 0xc0, 0xc8, 0xdd, 0x2b, 0xd0, 0x7a, 0xda, 0xa4, + 0xd5, 0xc2, 0x4d, 0x68, +}; +static const unsigned char kat118_retbits[] = { + 0xb4, 0xed, 0xc9, 0x65, 0x0d, 0x81, 0x47, 0x17, 0x0c, 0x81, 0x52, 0x9f, + 0x2f, 0xd7, 0x33, 0x11, 0x53, 0xa6, 0x1d, 0x0d, 0x58, 0xb7, 0x6b, 0x50, + 0xbb, 0x52, 0xda, 0x0a, 0x79, 0x51, 0x64, 0xbe, 0xeb, 0xc6, 0x09, 0x32, + 0x05, 0x20, 0x32, 0x8f, 0x3d, 0x4e, 0x83, 0xcd, 0x80, 0xd0, 0xb1, 0xcb, + 0xbb, 0xfd, 0x0a, 0x84, 0xa9, 0x65, 0x10, 0x88, 0x11, 0x01, 0xfb, 0xc7, + 0x40, 0xb2, 0x81, 0x7f, +}; +static const struct drbg_kat_no_reseed kat118_t = { + 12, kat118_entropyin, kat118_nonce, kat118_persstr, + kat118_addin0, kat118_addin1, kat118_retbits +}; +static const struct drbg_kat kat118 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat118_t +}; + +static const unsigned char kat119_entropyin[] = { + 0x36, 0xe2, 0x7a, 0xa6, 0xb3, 0x66, 0x99, 0xe9, 0x46, 0x45, 0x95, 0xa9, + 0x32, 0xcc, 0x92, 0x8e, +}; +static const unsigned char kat119_nonce[] = { + 0x65, 0x16, 0xbb, 0x91, 0x85, 0x66, 0xbf, 0x89, +}; +static const unsigned char kat119_persstr[] = { + 0x9b, 0xc6, 0x83, 0xa1, 0xf4, 0x65, 0xba, 0x0f, 0x2c, 0xe1, 0x8c, 0x8b, + 0x9c, 0x61, 0x42, 0x44, +}; +static const unsigned char kat119_addin0[] = { + 0x0d, 0x17, 0x5b, 0x34, 0xd8, 0xb9, 0xe2, 0x70, 0x74, 0x5a, 0x71, 0xf3, + 0x5d, 0x41, 0x6f, 0x10, +}; +static const unsigned char kat119_addin1[] = { + 0xa7, 0x90, 0xc8, 0x6f, 0xdf, 0x0c, 0xa8, 0x0e, 0xb3, 0xd6, 0xf7, 0x02, + 0x91, 0x6e, 0xa9, 0x9f, +}; +static const unsigned char kat119_retbits[] = { + 0x34, 0xea, 0x96, 0x29, 0x62, 0x7f, 0x66, 0x84, 0xb9, 0xab, 0x85, 0xf8, + 0x16, 0x46, 0x86, 0x4d, 0xd8, 0xef, 0x3a, 0x15, 0xed, 0xc8, 0x01, 0xdc, + 0x39, 0xa7, 0x31, 0xdc, 0x9e, 0x80, 0xe6, 0x26, 0xfc, 0x8c, 0xe2, 0x1e, + 0x9b, 0x62, 0xe9, 0x48, 0x88, 0x64, 0x89, 0xd5, 0xe4, 0x43, 0x6e, 0x65, + 0x9f, 0x26, 0xbf, 0xb3, 0x43, 0x51, 0x04, 0xad, 0x9b, 0xfa, 0x0a, 0xaf, + 0xc5, 0x50, 0x69, 0x17, +}; +static const struct drbg_kat_no_reseed kat119_t = { + 13, kat119_entropyin, kat119_nonce, kat119_persstr, + kat119_addin0, kat119_addin1, kat119_retbits +}; +static const struct drbg_kat kat119 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat119_t +}; + +static const unsigned char kat120_entropyin[] = { + 0xac, 0xa3, 0x59, 0xf1, 0x07, 0xc3, 0x24, 0x64, 0x8a, 0xd4, 0x45, 0x56, + 0x4b, 0xfa, 0xe5, 0x6d, +}; +static const unsigned char kat120_nonce[] = { + 0xf9, 0x5d, 0x1c, 0x8f, 0xd2, 0x66, 0xdf, 0x64, +}; +static const unsigned char kat120_persstr[] = { + 0xa5, 0xcf, 0xdc, 0x76, 0xc4, 0xe8, 0x49, 0xe4, 0x5d, 0x8b, 0xcc, 0x68, + 0xee, 0xb0, 0x12, 0x84, +}; +static const unsigned char kat120_addin0[] = { + 0x57, 0x80, 0x2c, 0xc0, 0x6e, 0xf0, 0x34, 0x4b, 0xd1, 0x4a, 0x48, 0x57, + 0xc6, 0x9f, 0x68, 0xd4, +}; +static const unsigned char kat120_addin1[] = { + 0x53, 0x14, 0xfc, 0xcb, 0xe4, 0x52, 0x01, 0x8f, 0xc1, 0x6e, 0x5f, 0xfb, + 0x5d, 0x90, 0xe8, 0x88, +}; +static const unsigned char kat120_retbits[] = { + 0x21, 0x1d, 0x90, 0xec, 0xd7, 0xd3, 0xdd, 0xd0, 0x3f, 0x91, 0xe8, 0xa6, + 0x74, 0x40, 0x0f, 0xb1, 0x8d, 0x3f, 0xb3, 0x98, 0x86, 0xa2, 0x26, 0x2f, + 0x0e, 0x09, 0xff, 0x07, 0x5f, 0x99, 0x8d, 0x21, 0x74, 0x19, 0xf2, 0xe9, + 0x35, 0x3d, 0x45, 0xb9, 0xdf, 0x10, 0x72, 0x3e, 0xba, 0xeb, 0xcf, 0xf1, + 0xaa, 0x80, 0x24, 0xd9, 0xb0, 0x96, 0x06, 0x4d, 0x6f, 0x31, 0x83, 0x5b, + 0x75, 0xf8, 0xea, 0xa6, +}; +static const struct drbg_kat_no_reseed kat120_t = { + 14, kat120_entropyin, kat120_nonce, kat120_persstr, + kat120_addin0, kat120_addin1, kat120_retbits +}; +static const struct drbg_kat kat120 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat120_t +}; + +static const unsigned char kat121_entropyin[] = { + 0x2e, 0x17, 0x24, 0xdb, 0x48, 0x22, 0x32, 0xa3, 0xe6, 0x1f, 0x92, 0xc1, + 0xc2, 0x66, 0xfa, 0xf8, +}; +static const unsigned char kat121_nonce[] = { + 0x38, 0xaa, 0x55, 0x90, 0xf6, 0xbf, 0xaa, 0x4b, +}; +static const unsigned char kat121_persstr[] = {0}; +static const unsigned char kat121_addin0[] = {0}; +static const unsigned char kat121_addin1[] = {0}; +static const unsigned char kat121_retbits[] = { + 0x44, 0x38, 0xb4, 0x8a, 0x45, 0xfb, 0x01, 0x41, 0xe3, 0x1f, 0x0a, 0x96, + 0x24, 0xdf, 0xe6, 0xfc, 0xc2, 0xf9, 0xed, 0xc0, 0x75, 0xc0, 0xa5, 0x2b, + 0xc5, 0xfc, 0x46, 0xd8, 0x5a, 0x96, 0x6c, 0x85, 0x3f, 0xee, 0xe6, 0xaf, + 0x91, 0x32, 0x34, 0xb3, 0xf9, 0xa6, 0x79, 0xf6, 0x67, 0x89, 0x8d, 0xc1, + 0x5a, 0x24, 0xaa, 0xed, 0x89, 0xf0, 0x35, 0xbf, 0xa5, 0xda, 0x51, 0x6e, + 0x43, 0x5b, 0xba, 0xd1, +}; +static const struct drbg_kat_no_reseed kat121_t = { + 0, kat121_entropyin, kat121_nonce, kat121_persstr, + kat121_addin0, kat121_addin1, kat121_retbits +}; +static const struct drbg_kat kat121 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat121_t +}; + +static const unsigned char kat122_entropyin[] = { + 0x22, 0x56, 0x4f, 0x77, 0xc4, 0x5b, 0x05, 0x3c, 0xdf, 0x61, 0x43, 0x3e, + 0xb9, 0x6b, 0x1d, 0x7c, +}; +static const unsigned char kat122_nonce[] = { + 0xcf, 0x73, 0xe6, 0x20, 0xf8, 0x51, 0x52, 0x03, +}; +static const unsigned char kat122_persstr[] = {0}; +static const unsigned char kat122_addin0[] = {0}; +static const unsigned char kat122_addin1[] = {0}; +static const unsigned char kat122_retbits[] = { + 0xc7, 0x90, 0x8e, 0x71, 0x2c, 0x71, 0x6d, 0x1f, 0x5e, 0xd5, 0x33, 0xe1, + 0x42, 0xe7, 0x21, 0x87, 0xea, 0x77, 0xfb, 0x4f, 0x51, 0x6d, 0xc3, 0x1a, + 0xa1, 0x0a, 0x1e, 0x54, 0x9d, 0x85, 0xea, 0xdb, 0x7a, 0x46, 0x46, 0x17, + 0x04, 0x64, 0xc1, 0xf7, 0xa7, 0x52, 0xc0, 0x1a, 0x94, 0x06, 0xbe, 0x66, + 0x43, 0xee, 0x96, 0x7d, 0x04, 0x64, 0xb8, 0x4b, 0x6a, 0x08, 0xb2, 0xed, + 0x0a, 0x7a, 0xcb, 0x07, +}; +static const struct drbg_kat_no_reseed kat122_t = { + 1, kat122_entropyin, kat122_nonce, kat122_persstr, + kat122_addin0, kat122_addin1, kat122_retbits +}; +static const struct drbg_kat kat122 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat122_t +}; + +static const unsigned char kat123_entropyin[] = { + 0x2a, 0x5b, 0x01, 0x2b, 0x09, 0x79, 0x26, 0xe8, 0xf8, 0x57, 0x0f, 0xf8, + 0x69, 0x2c, 0xc5, 0xd1, +}; +static const unsigned char kat123_nonce[] = { + 0xde, 0x8e, 0x07, 0x2d, 0x15, 0x81, 0xaf, 0xe6, +}; +static const unsigned char kat123_persstr[] = {0}; +static const unsigned char kat123_addin0[] = {0}; +static const unsigned char kat123_addin1[] = {0}; +static const unsigned char kat123_retbits[] = { + 0x81, 0xf2, 0xe2, 0xc8, 0x58, 0x5e, 0x8d, 0xc4, 0x65, 0xd7, 0x8e, 0x7b, + 0x75, 0xb9, 0xf6, 0xc2, 0xbb, 0xdc, 0xde, 0x94, 0x75, 0xd4, 0x25, 0x0f, + 0xb4, 0x9e, 0x04, 0xc5, 0x6e, 0x30, 0x48, 0x9e, 0x24, 0xdf, 0x48, 0x58, + 0xf7, 0x4e, 0xd0, 0x85, 0xcb, 0xa9, 0xf9, 0x92, 0xeb, 0x7d, 0x13, 0xe4, + 0xe0, 0x64, 0xa7, 0x45, 0xf4, 0x51, 0xcb, 0x6e, 0xdf, 0xc3, 0x7c, 0x57, + 0xf3, 0x5e, 0x8d, 0x57, +}; +static const struct drbg_kat_no_reseed kat123_t = { + 2, kat123_entropyin, kat123_nonce, kat123_persstr, + kat123_addin0, kat123_addin1, kat123_retbits +}; +static const struct drbg_kat kat123 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat123_t +}; + +static const unsigned char kat124_entropyin[] = { + 0x2c, 0x6b, 0x05, 0xd1, 0xc8, 0x6a, 0xae, 0x86, 0xa8, 0x9e, 0x81, 0x64, + 0x82, 0x98, 0x32, 0x36, +}; +static const unsigned char kat124_nonce[] = { + 0x33, 0x85, 0xd9, 0x29, 0xad, 0xe9, 0x96, 0xe8, +}; +static const unsigned char kat124_persstr[] = {0}; +static const unsigned char kat124_addin0[] = {0}; +static const unsigned char kat124_addin1[] = {0}; +static const unsigned char kat124_retbits[] = { + 0x52, 0x56, 0xa6, 0x44, 0x29, 0xa5, 0x56, 0xd1, 0xa9, 0x1d, 0x58, 0x99, + 0x9c, 0x75, 0xb3, 0x6d, 0xe7, 0xcc, 0x01, 0xf7, 0x46, 0x3c, 0x4e, 0x24, + 0xaf, 0xd1, 0x5d, 0xe0, 0xa3, 0x5d, 0xcb, 0x5a, 0xda, 0x26, 0x79, 0x13, + 0x4f, 0x15, 0xf4, 0xc5, 0x1d, 0xc0, 0x6b, 0x34, 0x45, 0x4d, 0x6d, 0xca, + 0xa1, 0xd2, 0x51, 0x1c, 0x1d, 0x22, 0x6f, 0x23, 0x2f, 0x44, 0x52, 0x76, + 0x25, 0x57, 0x51, 0xe6, +}; +static const struct drbg_kat_no_reseed kat124_t = { + 3, kat124_entropyin, kat124_nonce, kat124_persstr, + kat124_addin0, kat124_addin1, kat124_retbits +}; +static const struct drbg_kat kat124 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat124_t +}; + +static const unsigned char kat125_entropyin[] = { + 0x48, 0xba, 0xb2, 0xf8, 0x2d, 0x80, 0x59, 0x7f, 0x93, 0xad, 0xdb, 0x7e, + 0x1f, 0x0f, 0x2e, 0x72, +}; +static const unsigned char kat125_nonce[] = { + 0xf5, 0xf4, 0x90, 0x18, 0xe8, 0x55, 0x9b, 0x0a, +}; +static const unsigned char kat125_persstr[] = {0}; +static const unsigned char kat125_addin0[] = {0}; +static const unsigned char kat125_addin1[] = {0}; +static const unsigned char kat125_retbits[] = { + 0xfa, 0x32, 0x3d, 0x2d, 0xae, 0x96, 0x74, 0xd8, 0x0b, 0xd2, 0xf1, 0x42, + 0x7c, 0x1c, 0x79, 0x53, 0x2b, 0x23, 0x74, 0xed, 0x1f, 0xb3, 0xa1, 0x3c, + 0x62, 0x06, 0x05, 0x04, 0x8a, 0xc5, 0x78, 0xb3, 0x07, 0x0c, 0x67, 0x48, + 0x31, 0x4e, 0x5e, 0xd1, 0xdb, 0xd3, 0xea, 0xaa, 0x64, 0x1e, 0x50, 0x5c, + 0x3d, 0x3f, 0x59, 0xfa, 0xc2, 0x5d, 0x89, 0x7b, 0xf3, 0x94, 0xdc, 0xad, + 0xb6, 0x3b, 0x7f, 0xf9, +}; +static const struct drbg_kat_no_reseed kat125_t = { + 4, kat125_entropyin, kat125_nonce, kat125_persstr, + kat125_addin0, kat125_addin1, kat125_retbits +}; +static const struct drbg_kat kat125 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat125_t +}; + +static const unsigned char kat126_entropyin[] = { + 0xad, 0x7a, 0xff, 0x42, 0x24, 0xe9, 0x3f, 0x32, 0x35, 0x45, 0x41, 0x6a, + 0x1e, 0x56, 0x97, 0xce, +}; +static const unsigned char kat126_nonce[] = { + 0x9c, 0xc1, 0x2c, 0xe2, 0xed, 0x5e, 0x8d, 0x1c, +}; +static const unsigned char kat126_persstr[] = {0}; +static const unsigned char kat126_addin0[] = {0}; +static const unsigned char kat126_addin1[] = {0}; +static const unsigned char kat126_retbits[] = { + 0x36, 0xc7, 0x22, 0x23, 0xb9, 0x24, 0x4c, 0xdb, 0x2c, 0x2c, 0x0d, 0xd5, + 0xa5, 0x97, 0x06, 0x55, 0x8e, 0x2e, 0x5a, 0x11, 0x84, 0x5c, 0xab, 0xf9, + 0x54, 0x5c, 0xd4, 0xad, 0x08, 0x15, 0x4a, 0x46, 0x70, 0x3a, 0xe7, 0x50, + 0xb7, 0xf0, 0xc4, 0xf5, 0xbb, 0x33, 0xac, 0xd3, 0xc3, 0x81, 0xe5, 0xee, + 0x4c, 0xe0, 0x99, 0x16, 0x43, 0x11, 0x44, 0xe8, 0x51, 0x5f, 0xed, 0x91, + 0x4d, 0x5c, 0x5b, 0x5e, +}; +static const struct drbg_kat_no_reseed kat126_t = { + 5, kat126_entropyin, kat126_nonce, kat126_persstr, + kat126_addin0, kat126_addin1, kat126_retbits +}; +static const struct drbg_kat kat126 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat126_t +}; + +static const unsigned char kat127_entropyin[] = { + 0x29, 0x9c, 0x01, 0xd3, 0xa2, 0xf1, 0x32, 0x3d, 0xf7, 0x53, 0xcf, 0x14, + 0x84, 0x5e, 0x0d, 0xe5, +}; +static const unsigned char kat127_nonce[] = { + 0x51, 0x1e, 0x36, 0x23, 0x2a, 0x11, 0x29, 0x1d, +}; +static const unsigned char kat127_persstr[] = {0}; +static const unsigned char kat127_addin0[] = {0}; +static const unsigned char kat127_addin1[] = {0}; +static const unsigned char kat127_retbits[] = { + 0x77, 0x09, 0xfd, 0xc6, 0x27, 0x8d, 0xb4, 0x4b, 0x21, 0xd3, 0x9a, 0x19, + 0x4b, 0x80, 0x6e, 0x48, 0xe7, 0xfe, 0x3e, 0x9a, 0xe1, 0x16, 0xe2, 0x38, + 0xc2, 0x05, 0xc2, 0xc3, 0x45, 0x98, 0x1c, 0xe8, 0x1f, 0x25, 0x57, 0x13, + 0x59, 0x7c, 0xec, 0x2b, 0x3a, 0xd3, 0x91, 0x0f, 0x2b, 0x67, 0x42, 0xae, + 0xa6, 0x64, 0x04, 0x71, 0x2d, 0xf8, 0x32, 0x8d, 0x2f, 0x2d, 0x19, 0x48, + 0x41, 0x30, 0x97, 0xdb, +}; +static const struct drbg_kat_no_reseed kat127_t = { + 6, kat127_entropyin, kat127_nonce, kat127_persstr, + kat127_addin0, kat127_addin1, kat127_retbits +}; +static const struct drbg_kat kat127 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat127_t +}; + +static const unsigned char kat128_entropyin[] = { + 0xb6, 0xee, 0x77, 0x79, 0x99, 0x4b, 0xa8, 0xcd, 0x49, 0x0a, 0x03, 0xcf, + 0x68, 0x99, 0xb1, 0x35, +}; +static const unsigned char kat128_nonce[] = { + 0x66, 0xed, 0xa9, 0xb5, 0xa5, 0x4d, 0x7d, 0xed, +}; +static const unsigned char kat128_persstr[] = {0}; +static const unsigned char kat128_addin0[] = {0}; +static const unsigned char kat128_addin1[] = {0}; +static const unsigned char kat128_retbits[] = { + 0x4e, 0x21, 0xb4, 0x8f, 0xde, 0x08, 0x22, 0x63, 0xd7, 0x6a, 0x10, 0x34, + 0xe8, 0x7a, 0x56, 0x6e, 0x1a, 0x1c, 0x9d, 0x2e, 0x1b, 0xd5, 0xc7, 0x48, + 0xe3, 0x0e, 0x1d, 0x87, 0x50, 0xf2, 0xff, 0x03, 0x93, 0x1c, 0x4b, 0xfe, + 0x19, 0x4d, 0x2d, 0xa4, 0xed, 0x1c, 0xf1, 0x53, 0x03, 0x01, 0xe5, 0xb1, + 0xab, 0xc4, 0xbd, 0x2b, 0xda, 0x7b, 0xe8, 0x92, 0x84, 0xf8, 0xc2, 0x19, + 0x36, 0x88, 0xc9, 0x82, +}; +static const struct drbg_kat_no_reseed kat128_t = { + 7, kat128_entropyin, kat128_nonce, kat128_persstr, + kat128_addin0, kat128_addin1, kat128_retbits +}; +static const struct drbg_kat kat128 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat128_t +}; + +static const unsigned char kat129_entropyin[] = { + 0xe3, 0xcc, 0xb9, 0x91, 0xc3, 0xe1, 0xb3, 0xed, 0xa0, 0xb4, 0x0b, 0x51, + 0x42, 0xac, 0x84, 0xd3, +}; +static const unsigned char kat129_nonce[] = { + 0x99, 0x87, 0x57, 0xe0, 0x0d, 0xa2, 0xb9, 0xef, +}; +static const unsigned char kat129_persstr[] = {0}; +static const unsigned char kat129_addin0[] = {0}; +static const unsigned char kat129_addin1[] = {0}; +static const unsigned char kat129_retbits[] = { + 0xd3, 0x2b, 0xc1, 0x90, 0x99, 0x8f, 0x18, 0xe9, 0xd5, 0x50, 0x9f, 0x46, + 0x02, 0x29, 0x05, 0xd0, 0x11, 0xbb, 0xec, 0x77, 0x4f, 0x05, 0x83, 0x69, + 0x1d, 0x48, 0x12, 0x43, 0x79, 0xe8, 0x1d, 0x99, 0xf0, 0xcd, 0xd4, 0x61, + 0x38, 0xbc, 0xcc, 0x47, 0xeb, 0x77, 0x3f, 0x25, 0x7a, 0x66, 0x2b, 0x79, + 0x8f, 0xab, 0x27, 0x58, 0x86, 0x94, 0x89, 0x36, 0xbc, 0xe7, 0x2d, 0xbd, + 0x2c, 0x61, 0x88, 0xac, +}; +static const struct drbg_kat_no_reseed kat129_t = { + 8, kat129_entropyin, kat129_nonce, kat129_persstr, + kat129_addin0, kat129_addin1, kat129_retbits +}; +static const struct drbg_kat kat129 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat129_t +}; + +static const unsigned char kat130_entropyin[] = { + 0xc3, 0x4e, 0x39, 0x80, 0x41, 0xcc, 0xee, 0x23, 0x89, 0x7f, 0x7c, 0xa3, + 0x43, 0xf3, 0x56, 0x40, +}; +static const unsigned char kat130_nonce[] = { + 0xa2, 0x4f, 0x8e, 0xa0, 0x88, 0x6b, 0xf6, 0xbf, +}; +static const unsigned char kat130_persstr[] = {0}; +static const unsigned char kat130_addin0[] = {0}; +static const unsigned char kat130_addin1[] = {0}; +static const unsigned char kat130_retbits[] = { + 0x5f, 0xf0, 0xda, 0xef, 0x30, 0x04, 0xc5, 0x03, 0xb8, 0x09, 0x8e, 0x3b, + 0x96, 0x8a, 0x8e, 0x32, 0x33, 0x19, 0xbe, 0x78, 0x6c, 0x7b, 0x74, 0x2a, + 0xac, 0xee, 0x35, 0x5f, 0x1a, 0x3c, 0x9d, 0xe7, 0x50, 0x61, 0x10, 0x8e, + 0x79, 0x18, 0x13, 0x61, 0xf2, 0xe3, 0x30, 0x6a, 0xf0, 0x7b, 0xcd, 0xed, + 0x10, 0xe3, 0x2d, 0xef, 0x1b, 0x7b, 0xb3, 0xe4, 0xeb, 0xc1, 0x70, 0x96, + 0xc6, 0x93, 0x30, 0x58, +}; +static const struct drbg_kat_no_reseed kat130_t = { + 9, kat130_entropyin, kat130_nonce, kat130_persstr, + kat130_addin0, kat130_addin1, kat130_retbits +}; +static const struct drbg_kat kat130 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat130_t +}; + +static const unsigned char kat131_entropyin[] = { + 0xfc, 0x1f, 0xd2, 0x5c, 0xed, 0x5b, 0xd3, 0x0a, 0x62, 0x1c, 0xd4, 0xae, + 0x77, 0x96, 0x80, 0xad, +}; +static const unsigned char kat131_nonce[] = { + 0xaf, 0x17, 0xa9, 0xc9, 0x74, 0xb3, 0x6e, 0x6c, +}; +static const unsigned char kat131_persstr[] = {0}; +static const unsigned char kat131_addin0[] = {0}; +static const unsigned char kat131_addin1[] = {0}; +static const unsigned char kat131_retbits[] = { + 0x59, 0xf9, 0x9d, 0x08, 0x57, 0x49, 0x36, 0x74, 0x78, 0x68, 0x4a, 0x5d, + 0xdc, 0x8f, 0xe1, 0x81, 0xb9, 0x7a, 0x4e, 0x67, 0xfd, 0xe5, 0xc1, 0x51, + 0xc4, 0x69, 0x6d, 0x52, 0x3d, 0x7c, 0x14, 0xb7, 0x26, 0x89, 0xa9, 0x5a, + 0x5b, 0x60, 0x92, 0xe9, 0x49, 0xdd, 0x16, 0x3b, 0xd8, 0xf9, 0xe4, 0x57, + 0x27, 0xd2, 0xb8, 0xa3, 0x1e, 0xd2, 0x88, 0xc8, 0xc6, 0x22, 0x9e, 0x8b, + 0xe6, 0x80, 0x8e, 0xc8, +}; +static const struct drbg_kat_no_reseed kat131_t = { + 10, kat131_entropyin, kat131_nonce, kat131_persstr, + kat131_addin0, kat131_addin1, kat131_retbits +}; +static const struct drbg_kat kat131 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat131_t +}; + +static const unsigned char kat132_entropyin[] = { + 0x72, 0xc0, 0xe2, 0x3d, 0x92, 0x07, 0x0a, 0x8b, 0xab, 0x70, 0x7f, 0x65, + 0xd5, 0x95, 0x18, 0x6d, +}; +static const unsigned char kat132_nonce[] = { + 0x1a, 0x63, 0xdc, 0xfc, 0x52, 0xe5, 0x5c, 0x58, +}; +static const unsigned char kat132_persstr[] = {0}; +static const unsigned char kat132_addin0[] = {0}; +static const unsigned char kat132_addin1[] = {0}; +static const unsigned char kat132_retbits[] = { + 0x49, 0xfe, 0xc2, 0x67, 0x58, 0x85, 0xd5, 0x4a, 0x4c, 0x6b, 0x10, 0x1f, + 0x29, 0x19, 0x45, 0xc7, 0x35, 0xad, 0x9c, 0x2d, 0xb5, 0x1a, 0x63, 0xb9, + 0x41, 0xbc, 0x18, 0x2e, 0xe5, 0x1f, 0xd8, 0xfd, 0x84, 0xb8, 0xc6, 0x33, + 0x7b, 0x0f, 0x77, 0xf3, 0x10, 0xca, 0x50, 0x69, 0x3b, 0x91, 0xb5, 0x90, + 0xe3, 0xef, 0x65, 0x5b, 0xe7, 0xad, 0x76, 0x21, 0xed, 0x21, 0xff, 0x39, + 0xd3, 0x29, 0x2e, 0xfd, +}; +static const struct drbg_kat_no_reseed kat132_t = { + 11, kat132_entropyin, kat132_nonce, kat132_persstr, + kat132_addin0, kat132_addin1, kat132_retbits +}; +static const struct drbg_kat kat132 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat132_t +}; + +static const unsigned char kat133_entropyin[] = { + 0xa0, 0x90, 0x91, 0xca, 0x32, 0x80, 0xf7, 0xf5, 0x83, 0x76, 0xbf, 0x68, + 0x0d, 0xe1, 0x11, 0x92, +}; +static const unsigned char kat133_nonce[] = { + 0x1d, 0x08, 0xdc, 0x0d, 0x06, 0x00, 0x95, 0xb3, +}; +static const unsigned char kat133_persstr[] = {0}; +static const unsigned char kat133_addin0[] = {0}; +static const unsigned char kat133_addin1[] = {0}; +static const unsigned char kat133_retbits[] = { + 0x0d, 0x59, 0xac, 0xa0, 0x23, 0x64, 0x7f, 0x0b, 0xf2, 0x68, 0x81, 0xd9, + 0x12, 0x6b, 0xab, 0x8c, 0x7f, 0xea, 0x92, 0x2d, 0x2b, 0x4c, 0x24, 0xf1, + 0xdc, 0xc0, 0xbf, 0xf8, 0x7a, 0x3d, 0x0d, 0x1b, 0x1d, 0xa0, 0xe8, 0x75, + 0x62, 0x6a, 0x56, 0x42, 0x61, 0x86, 0xef, 0xd0, 0x07, 0x1f, 0x5a, 0x78, + 0x9f, 0xbf, 0x35, 0xfa, 0x8b, 0xfc, 0x85, 0xaf, 0xaf, 0xd3, 0xaf, 0x6c, + 0x9c, 0x7c, 0xd0, 0x7a, +}; +static const struct drbg_kat_no_reseed kat133_t = { + 12, kat133_entropyin, kat133_nonce, kat133_persstr, + kat133_addin0, kat133_addin1, kat133_retbits +}; +static const struct drbg_kat kat133 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat133_t +}; + +static const unsigned char kat134_entropyin[] = { + 0x8b, 0x41, 0x75, 0xd0, 0xa1, 0x95, 0x39, 0xef, 0x3d, 0x5d, 0x40, 0x84, + 0x6c, 0xb4, 0x0a, 0xb3, +}; +static const unsigned char kat134_nonce[] = { + 0x8c, 0x31, 0x0d, 0x43, 0x1c, 0xf0, 0x0b, 0x3e, +}; +static const unsigned char kat134_persstr[] = {0}; +static const unsigned char kat134_addin0[] = {0}; +static const unsigned char kat134_addin1[] = {0}; +static const unsigned char kat134_retbits[] = { + 0x92, 0xb3, 0xb0, 0xe5, 0x7a, 0xe4, 0xce, 0xfc, 0x40, 0xd6, 0xe5, 0xfa, + 0x0d, 0x9f, 0xa8, 0x5c, 0x97, 0x0c, 0x2d, 0xd0, 0xcd, 0x4e, 0x04, 0xd7, + 0x27, 0x27, 0x56, 0x63, 0x4b, 0x84, 0xcc, 0x20, 0xc5, 0x36, 0x8f, 0x3a, + 0x7b, 0x3e, 0x12, 0x11, 0xc5, 0xfa, 0x2e, 0x63, 0x35, 0x43, 0x6b, 0x88, + 0x58, 0x2d, 0x04, 0x8b, 0xc7, 0x6a, 0x7c, 0x19, 0xbb, 0xfe, 0xc1, 0x35, + 0xa1, 0x05, 0x5c, 0xbd, +}; +static const struct drbg_kat_no_reseed kat134_t = { + 13, kat134_entropyin, kat134_nonce, kat134_persstr, + kat134_addin0, kat134_addin1, kat134_retbits +}; +static const struct drbg_kat kat134 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat134_t +}; + +static const unsigned char kat135_entropyin[] = { + 0x68, 0xc8, 0x53, 0xb9, 0x12, 0x9c, 0xb2, 0x0a, 0x3d, 0xdf, 0x11, 0xe7, + 0x8a, 0x58, 0x75, 0xba, +}; +static const unsigned char kat135_nonce[] = { + 0xf5, 0xab, 0x54, 0x86, 0x05, 0xa5, 0x11, 0x03, +}; +static const unsigned char kat135_persstr[] = {0}; +static const unsigned char kat135_addin0[] = {0}; +static const unsigned char kat135_addin1[] = {0}; +static const unsigned char kat135_retbits[] = { + 0x43, 0xcf, 0xb0, 0x3a, 0x51, 0xd7, 0xda, 0x40, 0xb3, 0x94, 0x68, 0x36, + 0x1c, 0x2e, 0xe0, 0x78, 0x81, 0x90, 0x75, 0x87, 0x2f, 0x4f, 0x7c, 0x5d, + 0x2b, 0x09, 0xef, 0x39, 0x91, 0x46, 0x02, 0xa7, 0x2a, 0x62, 0xc6, 0x3e, + 0x29, 0x38, 0x3f, 0xbb, 0x9e, 0x45, 0x0f, 0xb2, 0xae, 0xf3, 0x2e, 0xb9, + 0xf3, 0x70, 0xcb, 0xbc, 0x1a, 0xb4, 0x70, 0x8a, 0x5d, 0x28, 0x98, 0xdf, + 0x8a, 0xe4, 0xf6, 0x26, +}; +static const struct drbg_kat_no_reseed kat135_t = { + 14, kat135_entropyin, kat135_nonce, kat135_persstr, + kat135_addin0, kat135_addin1, kat135_retbits +}; +static const struct drbg_kat kat135 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat135_t +}; + +static const unsigned char kat136_entropyin[] = { + 0x9b, 0xfa, 0xef, 0xb6, 0x98, 0xb1, 0xb5, 0xfc, 0xc6, 0x2d, 0xb2, 0xc1, + 0x64, 0x98, 0xc3, 0x3a, +}; +static const unsigned char kat136_nonce[] = { + 0x11, 0x1d, 0x86, 0x12, 0xa0, 0xf0, 0x4e, 0x2a, +}; +static const unsigned char kat136_persstr[] = {0}; +static const unsigned char kat136_addin0[] = { + 0xae, 0xdb, 0xe0, 0x28, 0x47, 0xb1, 0xb0, 0x8b, 0x6a, 0x67, 0x3b, 0xdf, + 0x25, 0xb0, 0x22, 0x4c, +}; +static const unsigned char kat136_addin1[] = { + 0x99, 0x01, 0xea, 0xd6, 0x2c, 0xe5, 0x65, 0x73, 0xb0, 0xf7, 0x1c, 0xd0, + 0x20, 0xfe, 0x34, 0x69, +}; +static const unsigned char kat136_retbits[] = { + 0xdf, 0xf8, 0xbf, 0x2a, 0xec, 0x53, 0x1f, 0x85, 0x32, 0x60, 0x7e, 0x73, + 0x8b, 0xd7, 0x9f, 0x91, 0xd6, 0x08, 0x5c, 0xb1, 0x95, 0x68, 0xb7, 0xb0, + 0x24, 0x0c, 0xe6, 0xa6, 0xb3, 0x71, 0xa2, 0x82, 0xba, 0xfc, 0xdb, 0xa0, + 0x21, 0x37, 0xdf, 0x99, 0x05, 0x35, 0xd9, 0xeb, 0xf0, 0xba, 0x77, 0x11, + 0x77, 0x51, 0x62, 0x6b, 0x26, 0x78, 0xac, 0xa7, 0xbe, 0x4d, 0xec, 0xfd, + 0x6b, 0x9d, 0x4b, 0x38, +}; +static const struct drbg_kat_no_reseed kat136_t = { + 0, kat136_entropyin, kat136_nonce, kat136_persstr, + kat136_addin0, kat136_addin1, kat136_retbits +}; +static const struct drbg_kat kat136 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat136_t +}; + +static const unsigned char kat137_entropyin[] = { + 0xdf, 0x99, 0x3f, 0xed, 0xd5, 0x96, 0x74, 0xa8, 0x7a, 0x15, 0x14, 0x7b, + 0x80, 0xbe, 0x37, 0xae, +}; +static const unsigned char kat137_nonce[] = { + 0x22, 0xb3, 0x31, 0x5a, 0xcc, 0xf1, 0xad, 0x13, +}; +static const unsigned char kat137_persstr[] = {0}; +static const unsigned char kat137_addin0[] = { + 0x9f, 0x9b, 0x94, 0x09, 0x04, 0x8a, 0x71, 0x17, 0x45, 0xc7, 0xef, 0x7a, + 0x6d, 0xdd, 0xc1, 0x7d, +}; +static const unsigned char kat137_addin1[] = { + 0xc5, 0x60, 0x68, 0x5b, 0xd4, 0x9c, 0x05, 0x9f, 0x04, 0x38, 0xe9, 0xdf, + 0xf6, 0x2d, 0x82, 0xd7, +}; +static const unsigned char kat137_retbits[] = { + 0x04, 0xd7, 0x4f, 0xa1, 0xb6, 0x9d, 0xe6, 0x89, 0x3a, 0x47, 0xbf, 0xb0, + 0xb6, 0xae, 0x58, 0xa7, 0x98, 0x4b, 0xbb, 0x08, 0x8f, 0xce, 0x62, 0x0b, + 0x9d, 0x8e, 0xbc, 0x0b, 0x54, 0xcd, 0xdb, 0xca, 0x00, 0x45, 0xd7, 0x5d, + 0x5b, 0x04, 0x6f, 0xcd, 0x88, 0x95, 0xc1, 0x6b, 0x05, 0x13, 0xaa, 0x52, + 0x1b, 0x8d, 0x4a, 0xf2, 0x76, 0x78, 0x3d, 0x9d, 0x25, 0x77, 0xac, 0xb3, + 0x2c, 0xea, 0xdb, 0x89, +}; +static const struct drbg_kat_no_reseed kat137_t = { + 1, kat137_entropyin, kat137_nonce, kat137_persstr, + kat137_addin0, kat137_addin1, kat137_retbits +}; +static const struct drbg_kat kat137 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat137_t +}; + +static const unsigned char kat138_entropyin[] = { + 0xdb, 0x4f, 0xae, 0x0c, 0x43, 0x02, 0xeb, 0xe8, 0x4f, 0x2a, 0x28, 0xad, + 0x98, 0x4d, 0xae, 0xc1, +}; +static const unsigned char kat138_nonce[] = { + 0x07, 0x9e, 0xbf, 0x0f, 0x00, 0x93, 0xcd, 0xb2, +}; +static const unsigned char kat138_persstr[] = {0}; +static const unsigned char kat138_addin0[] = { + 0x2f, 0xfb, 0x64, 0x85, 0xac, 0xe2, 0xad, 0x77, 0xd5, 0xf8, 0xad, 0xbd, + 0x09, 0xb3, 0xf3, 0x72, +}; +static const unsigned char kat138_addin1[] = { + 0xf4, 0xb8, 0x44, 0x74, 0x3d, 0x00, 0x65, 0xa0, 0x38, 0x98, 0x80, 0x49, + 0xf6, 0xaa, 0x53, 0xb5, +}; +static const unsigned char kat138_retbits[] = { + 0xcb, 0x8e, 0x71, 0x44, 0x8f, 0xf7, 0x91, 0x1e, 0x5c, 0xae, 0xa7, 0xd5, + 0x4a, 0x12, 0x94, 0x5e, 0xd3, 0x4b, 0xea, 0x42, 0xdb, 0xb6, 0x57, 0x3b, + 0xf8, 0x42, 0x0d, 0xbb, 0x6b, 0xae, 0x6a, 0x11, 0xe0, 0x24, 0x82, 0x92, + 0xc9, 0xd9, 0x3d, 0xa3, 0x09, 0x68, 0x56, 0xe0, 0xf2, 0x94, 0x18, 0xf1, + 0xc8, 0x0d, 0x13, 0x8b, 0x34, 0x15, 0x66, 0x7b, 0xfb, 0x45, 0x6b, 0x08, + 0x9f, 0x26, 0x62, 0x1a, +}; +static const struct drbg_kat_no_reseed kat138_t = { + 2, kat138_entropyin, kat138_nonce, kat138_persstr, + kat138_addin0, kat138_addin1, kat138_retbits +}; +static const struct drbg_kat kat138 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat138_t +}; + +static const unsigned char kat139_entropyin[] = { + 0xa4, 0x23, 0x48, 0xf1, 0xbe, 0xc0, 0x6f, 0x58, 0x36, 0xfc, 0xa0, 0x60, + 0x66, 0x14, 0x34, 0xc0, +}; +static const unsigned char kat139_nonce[] = { + 0x2f, 0x70, 0xf6, 0xa2, 0xe7, 0xd0, 0xb4, 0x36, +}; +static const unsigned char kat139_persstr[] = {0}; +static const unsigned char kat139_addin0[] = { + 0x54, 0x70, 0x91, 0xef, 0x85, 0xb0, 0x13, 0xf3, 0xf5, 0xdc, 0x82, 0x2a, + 0x5b, 0x3f, 0x27, 0xf9, +}; +static const unsigned char kat139_addin1[] = { + 0x2c, 0xa9, 0x9e, 0xe7, 0x97, 0xf4, 0xa9, 0xb1, 0x67, 0x88, 0xd2, 0x98, + 0xbb, 0xa2, 0xd1, 0x83, +}; +static const unsigned char kat139_retbits[] = { + 0x4b, 0x41, 0xed, 0x62, 0x81, 0xa8, 0x1d, 0x44, 0x2a, 0x8c, 0xb0, 0x3a, + 0x81, 0x45, 0xfe, 0x78, 0x86, 0x3d, 0x25, 0xd7, 0xee, 0x70, 0xe7, 0x2d, + 0x4d, 0x3a, 0xfd, 0x51, 0x68, 0x16, 0x48, 0x76, 0xa6, 0x6b, 0x5a, 0xca, + 0x31, 0x8c, 0x9c, 0x91, 0x17, 0x23, 0x05, 0xe3, 0x88, 0xe1, 0xda, 0xc3, + 0x86, 0xcb, 0xab, 0x6d, 0x15, 0x0a, 0x39, 0x12, 0x36, 0x9c, 0x93, 0x90, + 0x08, 0x6b, 0xd7, 0x44, +}; +static const struct drbg_kat_no_reseed kat139_t = { + 3, kat139_entropyin, kat139_nonce, kat139_persstr, + kat139_addin0, kat139_addin1, kat139_retbits +}; +static const struct drbg_kat kat139 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat139_t +}; + +static const unsigned char kat140_entropyin[] = { + 0x14, 0x83, 0xb9, 0x8e, 0x08, 0xc0, 0x40, 0x12, 0xb0, 0x3f, 0x1f, 0x61, + 0x02, 0xa2, 0x83, 0x06, +}; +static const unsigned char kat140_nonce[] = { + 0x89, 0xe6, 0x7c, 0xa1, 0xda, 0x05, 0xdd, 0x4f, +}; +static const unsigned char kat140_persstr[] = {0}; +static const unsigned char kat140_addin0[] = { + 0x30, 0x85, 0x9e, 0xcc, 0x30, 0x25, 0x04, 0x79, 0x30, 0xb3, 0x85, 0x3a, + 0xe6, 0x8a, 0xbd, 0xa2, +}; +static const unsigned char kat140_addin1[] = { + 0xf5, 0x05, 0x57, 0xf0, 0x40, 0x29, 0x28, 0x6c, 0xaf, 0xb2, 0xfc, 0xbf, + 0x14, 0x64, 0xe4, 0xe5, +}; +static const unsigned char kat140_retbits[] = { + 0x45, 0xac, 0xf5, 0x2f, 0xf5, 0x69, 0xcc, 0x48, 0x15, 0x95, 0x88, 0x01, + 0x62, 0x89, 0x3b, 0x57, 0x9b, 0xe4, 0x05, 0x43, 0xc5, 0x6a, 0x94, 0xb7, + 0x18, 0x4b, 0xc9, 0x92, 0xd1, 0xdf, 0x37, 0x85, 0x18, 0xf9, 0x3f, 0xb4, + 0xd9, 0x75, 0x5d, 0x86, 0x58, 0xe9, 0x72, 0x2b, 0x34, 0x79, 0x53, 0x6b, + 0xa4, 0x83, 0x9a, 0x8e, 0xee, 0x7a, 0x65, 0x5f, 0xed, 0x88, 0x4a, 0xaf, + 0x5a, 0x55, 0x6e, 0xb7, +}; +static const struct drbg_kat_no_reseed kat140_t = { + 4, kat140_entropyin, kat140_nonce, kat140_persstr, + kat140_addin0, kat140_addin1, kat140_retbits +}; +static const struct drbg_kat kat140 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat140_t +}; + +static const unsigned char kat141_entropyin[] = { + 0xbe, 0x9f, 0xcd, 0xd7, 0x11, 0xce, 0x1b, 0x0a, 0x3c, 0x97, 0xb1, 0xac, + 0x19, 0x79, 0x20, 0x7d, +}; +static const unsigned char kat141_nonce[] = { + 0xa8, 0x02, 0x94, 0xb5, 0xd6, 0x59, 0xff, 0xb4, +}; +static const unsigned char kat141_persstr[] = {0}; +static const unsigned char kat141_addin0[] = { + 0xb2, 0x0c, 0x04, 0x54, 0x6a, 0x0c, 0x6a, 0x5e, 0x6b, 0x95, 0x63, 0x7c, + 0x96, 0x0b, 0xca, 0x63, +}; +static const unsigned char kat141_addin1[] = { + 0x67, 0x07, 0xcc, 0x21, 0x7f, 0xb1, 0x98, 0xaf, 0x85, 0x2e, 0x06, 0xdb, + 0x14, 0x61, 0x58, 0x05, +}; +static const unsigned char kat141_retbits[] = { + 0x6b, 0x62, 0x0c, 0x76, 0xf0, 0xb1, 0xa4, 0xa3, 0xd7, 0xf0, 0xf6, 0x0a, + 0x76, 0x45, 0x81, 0x1b, 0xb7, 0x9b, 0xf1, 0x84, 0x77, 0xf8, 0x5b, 0x94, + 0xf0, 0xee, 0x09, 0xe0, 0xc6, 0x8b, 0x0f, 0xdb, 0x3e, 0x11, 0xd8, 0xe5, + 0x8a, 0x34, 0xd2, 0x4f, 0xe3, 0x6e, 0x8b, 0x7e, 0xa7, 0x2a, 0x26, 0xb6, + 0xcb, 0x92, 0xd9, 0x87, 0xc5, 0x81, 0xab, 0x48, 0xe5, 0xfb, 0x8f, 0xb7, + 0x0f, 0x76, 0x5f, 0x5f, +}; +static const struct drbg_kat_no_reseed kat141_t = { + 5, kat141_entropyin, kat141_nonce, kat141_persstr, + kat141_addin0, kat141_addin1, kat141_retbits +}; +static const struct drbg_kat kat141 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat141_t +}; + +static const unsigned char kat142_entropyin[] = { + 0xa5, 0x8e, 0xb5, 0x4d, 0x10, 0x9b, 0x51, 0x4d, 0xb3, 0x38, 0xfc, 0xce, + 0xa2, 0x8e, 0xf2, 0xea, +}; +static const unsigned char kat142_nonce[] = { + 0x91, 0x2d, 0x24, 0xa1, 0xd8, 0x1d, 0xe7, 0xdc, +}; +static const unsigned char kat142_persstr[] = {0}; +static const unsigned char kat142_addin0[] = { + 0x59, 0xd4, 0x59, 0xb0, 0x73, 0x52, 0x60, 0x21, 0xec, 0x45, 0x51, 0x12, + 0x56, 0xcf, 0xb3, 0x58, +}; +static const unsigned char kat142_addin1[] = { + 0xf7, 0x9f, 0x7e, 0x5a, 0x2a, 0x79, 0x1a, 0x39, 0xbb, 0x32, 0xb6, 0xb1, + 0x5f, 0xe0, 0x14, 0x61, +}; +static const unsigned char kat142_retbits[] = { + 0xc1, 0x26, 0xd4, 0x09, 0xc2, 0x0d, 0x5d, 0x3d, 0x4c, 0x79, 0x46, 0x12, + 0x56, 0xf5, 0x40, 0x3d, 0x1c, 0xc5, 0x9b, 0xcf, 0x11, 0xa4, 0xa6, 0x16, + 0xab, 0xf0, 0x65, 0x30, 0x32, 0xe0, 0x45, 0x0a, 0x11, 0xf3, 0x2f, 0x38, + 0x16, 0xc3, 0x51, 0x91, 0x2f, 0xe8, 0xe3, 0x00, 0x84, 0xed, 0x34, 0xdb, + 0xcd, 0x0a, 0x9c, 0x95, 0xe1, 0xc0, 0x13, 0x62, 0xef, 0x61, 0x6d, 0xd2, + 0x2a, 0x13, 0x7f, 0x72, +}; +static const struct drbg_kat_no_reseed kat142_t = { + 6, kat142_entropyin, kat142_nonce, kat142_persstr, + kat142_addin0, kat142_addin1, kat142_retbits +}; +static const struct drbg_kat kat142 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat142_t +}; + +static const unsigned char kat143_entropyin[] = { + 0xe0, 0xa5, 0xd9, 0x4d, 0x0c, 0xa9, 0x5a, 0x7b, 0x38, 0x0b, 0x99, 0x9c, + 0x69, 0xd9, 0x01, 0x1c, +}; +static const unsigned char kat143_nonce[] = { + 0x47, 0xcd, 0xc5, 0x5a, 0x19, 0x56, 0xaf, 0x8d, +}; +static const unsigned char kat143_persstr[] = {0}; +static const unsigned char kat143_addin0[] = { + 0xa9, 0x16, 0x84, 0xd0, 0x12, 0xdc, 0x48, 0x83, 0x0b, 0xe4, 0xcf, 0xae, + 0xe2, 0xfc, 0x88, 0x54, +}; +static const unsigned char kat143_addin1[] = { + 0xa0, 0x61, 0xc2, 0xb1, 0x3b, 0xf1, 0x00, 0x6d, 0x3b, 0xa2, 0xf2, 0x29, + 0x7f, 0x95, 0x4f, 0xb5, +}; +static const unsigned char kat143_retbits[] = { + 0xe1, 0x36, 0xea, 0x57, 0x3d, 0x1d, 0x81, 0xec, 0xb7, 0x84, 0x2e, 0xc4, + 0x3a, 0xf0, 0xb4, 0xb9, 0x78, 0x3f, 0x3f, 0xe4, 0xb1, 0xab, 0x90, 0x24, + 0xc6, 0x2e, 0xae, 0xf0, 0x86, 0x0e, 0x81, 0x3d, 0x5a, 0x24, 0xf1, 0xa5, + 0xfa, 0xb7, 0x4b, 0x8f, 0x1f, 0x66, 0x1b, 0x50, 0x39, 0x29, 0x02, 0x56, + 0xd0, 0xe5, 0xaa, 0xa9, 0xe0, 0xfd, 0xab, 0x3a, 0x18, 0x9b, 0x2d, 0x66, + 0x95, 0x89, 0x39, 0x99, +}; +static const struct drbg_kat_no_reseed kat143_t = { + 7, kat143_entropyin, kat143_nonce, kat143_persstr, + kat143_addin0, kat143_addin1, kat143_retbits +}; +static const struct drbg_kat kat143 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat143_t +}; + +static const unsigned char kat144_entropyin[] = { + 0x91, 0x8b, 0xda, 0x9e, 0x89, 0x72, 0x7b, 0xbd, 0x97, 0x04, 0x25, 0xc7, + 0x48, 0x3e, 0xf1, 0xaf, +}; +static const unsigned char kat144_nonce[] = { + 0xfc, 0x3b, 0xee, 0xec, 0x38, 0x0b, 0x02, 0xc2, +}; +static const unsigned char kat144_persstr[] = {0}; +static const unsigned char kat144_addin0[] = { + 0x6f, 0x48, 0x36, 0x73, 0xaf, 0x64, 0xbc, 0xd7, 0x4c, 0xfe, 0xff, 0x3f, + 0x98, 0xb6, 0xcd, 0x5a, +}; +static const unsigned char kat144_addin1[] = { + 0x15, 0xbd, 0x5e, 0xab, 0xba, 0x23, 0x2d, 0xf5, 0xa1, 0xb6, 0x03, 0xa2, + 0xfc, 0x16, 0x39, 0xc0, +}; +static const unsigned char kat144_retbits[] = { + 0x43, 0x85, 0x55, 0x1a, 0x3a, 0x7d, 0xd9, 0x0d, 0x77, 0xa7, 0x65, 0xf7, + 0xcb, 0x85, 0x9d, 0x80, 0xab, 0x6a, 0xc4, 0x84, 0x8e, 0x3b, 0xd9, 0x11, + 0x01, 0xb4, 0x52, 0x32, 0x34, 0xca, 0x0f, 0x16, 0xc0, 0x6a, 0x45, 0x79, + 0xa9, 0x7e, 0xa5, 0x1d, 0xb0, 0x37, 0xfd, 0x8b, 0x8c, 0x40, 0x83, 0xcd, + 0xb6, 0xf4, 0xed, 0x97, 0x56, 0xf5, 0xa4, 0x48, 0x8b, 0xb5, 0xdf, 0xcf, + 0x7a, 0x8f, 0x8a, 0x9a, +}; +static const struct drbg_kat_no_reseed kat144_t = { + 8, kat144_entropyin, kat144_nonce, kat144_persstr, + kat144_addin0, kat144_addin1, kat144_retbits +}; +static const struct drbg_kat kat144 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat144_t +}; + +static const unsigned char kat145_entropyin[] = { + 0xd8, 0xad, 0xd3, 0x82, 0xd4, 0xdc, 0x7a, 0x1d, 0x10, 0xd4, 0x63, 0x03, + 0x17, 0x39, 0x18, 0x01, +}; +static const unsigned char kat145_nonce[] = { + 0x6f, 0xc0, 0xb1, 0xa3, 0xaa, 0x2b, 0x3a, 0xdb, +}; +static const unsigned char kat145_persstr[] = {0}; +static const unsigned char kat145_addin0[] = { + 0x10, 0x1f, 0xcf, 0xd6, 0x60, 0x80, 0x75, 0xdc, 0xbb, 0xf2, 0xeb, 0xe8, + 0x32, 0xd9, 0x6b, 0x13, +}; +static const unsigned char kat145_addin1[] = { + 0x63, 0x2f, 0x7a, 0x11, 0xfb, 0xa9, 0x79, 0xd2, 0x97, 0x9e, 0x41, 0x7e, + 0x2d, 0xed, 0x1d, 0x30, +}; +static const unsigned char kat145_retbits[] = { + 0xa6, 0xa1, 0x55, 0x95, 0xbb, 0xd8, 0x57, 0xbb, 0x62, 0x15, 0x04, 0xc8, + 0x5f, 0x03, 0x03, 0x3c, 0xe4, 0x7b, 0x5d, 0xf8, 0x62, 0x96, 0xb8, 0x0d, + 0x40, 0xd0, 0x09, 0xfe, 0x6c, 0x5e, 0x1f, 0xff, 0xf0, 0x84, 0x04, 0x56, + 0x99, 0x0a, 0x14, 0xf3, 0xa1, 0xc4, 0x9c, 0x36, 0x73, 0x7b, 0x70, 0xb6, + 0x2f, 0x40, 0x6f, 0xa3, 0xc5, 0x32, 0x95, 0x2f, 0xb2, 0x2e, 0xfc, 0x76, + 0x00, 0x9a, 0x1b, 0x1a, +}; +static const struct drbg_kat_no_reseed kat145_t = { + 9, kat145_entropyin, kat145_nonce, kat145_persstr, + kat145_addin0, kat145_addin1, kat145_retbits +}; +static const struct drbg_kat kat145 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat145_t +}; + +static const unsigned char kat146_entropyin[] = { + 0xd1, 0x9f, 0xa3, 0x38, 0xc7, 0xbd, 0x52, 0x40, 0x74, 0x7b, 0xac, 0xab, + 0x70, 0x32, 0x8f, 0xb3, +}; +static const unsigned char kat146_nonce[] = { + 0x5b, 0x42, 0x82, 0x35, 0x41, 0x42, 0x83, 0xb4, +}; +static const unsigned char kat146_persstr[] = {0}; +static const unsigned char kat146_addin0[] = { + 0xf3, 0x7c, 0x9f, 0xeb, 0x90, 0xc9, 0x6a, 0x26, 0x3f, 0x41, 0xb1, 0xc4, + 0x98, 0xd5, 0xe0, 0x75, +}; +static const unsigned char kat146_addin1[] = { + 0xa3, 0xd8, 0x86, 0x96, 0xfc, 0x1a, 0x44, 0x70, 0x28, 0x42, 0x31, 0x71, + 0xba, 0xd4, 0x65, 0x24, +}; +static const unsigned char kat146_retbits[] = { + 0x11, 0xee, 0x72, 0xb4, 0x81, 0xd5, 0x54, 0xf0, 0xfe, 0x49, 0xdc, 0x27, + 0x37, 0x46, 0x6d, 0x5f, 0x5a, 0x64, 0x76, 0xa2, 0xb5, 0xb2, 0xf9, 0x3c, + 0xd6, 0x0e, 0xe8, 0xab, 0x1b, 0xf7, 0x56, 0x3d, 0x3e, 0xbc, 0x60, 0x5e, + 0x44, 0xc3, 0x65, 0xe7, 0x86, 0x5b, 0xff, 0x31, 0xc0, 0x77, 0xd1, 0x76, + 0xd3, 0x61, 0xa4, 0x24, 0x06, 0x27, 0xde, 0xb2, 0x8a, 0xd5, 0x68, 0x50, + 0x46, 0x91, 0xf9, 0x47, +}; +static const struct drbg_kat_no_reseed kat146_t = { + 10, kat146_entropyin, kat146_nonce, kat146_persstr, + kat146_addin0, kat146_addin1, kat146_retbits +}; +static const struct drbg_kat kat146 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat146_t +}; + +static const unsigned char kat147_entropyin[] = { + 0xc3, 0xd8, 0x2c, 0x63, 0x01, 0x41, 0x77, 0xe6, 0x2b, 0xda, 0x82, 0xdd, + 0xe9, 0x11, 0x54, 0x50, +}; +static const unsigned char kat147_nonce[] = { + 0x5e, 0x6f, 0x3b, 0x1c, 0x75, 0x70, 0x6f, 0x5f, +}; +static const unsigned char kat147_persstr[] = {0}; +static const unsigned char kat147_addin0[] = { + 0x72, 0xa7, 0x17, 0xc6, 0x6f, 0xb2, 0x69, 0x06, 0xd6, 0x99, 0x5d, 0x3e, + 0xec, 0xc5, 0x79, 0xd9, +}; +static const unsigned char kat147_addin1[] = { + 0xb1, 0xb7, 0xa9, 0xad, 0x3c, 0x64, 0x35, 0x5d, 0x5d, 0x70, 0xf0, 0x3c, + 0x7b, 0x83, 0x29, 0xb0, +}; +static const unsigned char kat147_retbits[] = { + 0x34, 0xc3, 0x09, 0xf2, 0x35, 0x27, 0x09, 0xa9, 0x1f, 0x1f, 0x1a, 0x6a, + 0xfb, 0x60, 0x14, 0x66, 0xf8, 0x6d, 0xc8, 0x02, 0x2b, 0xcb, 0xfd, 0xee, + 0x09, 0x51, 0x90, 0xa8, 0x5f, 0xe1, 0xf0, 0x33, 0x2b, 0x8b, 0xab, 0x32, + 0xf4, 0x42, 0x49, 0x43, 0x00, 0x41, 0xcb, 0x0c, 0xf2, 0xc4, 0x0d, 0x9c, + 0xdd, 0x0c, 0x0d, 0xf4, 0x23, 0xe3, 0x4f, 0x2d, 0xa8, 0xd7, 0xf7, 0xb8, + 0x32, 0x94, 0x56, 0x19, +}; +static const struct drbg_kat_no_reseed kat147_t = { + 11, kat147_entropyin, kat147_nonce, kat147_persstr, + kat147_addin0, kat147_addin1, kat147_retbits +}; +static const struct drbg_kat kat147 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat147_t +}; + +static const unsigned char kat148_entropyin[] = { + 0x1c, 0x34, 0x80, 0x46, 0x79, 0x40, 0x8c, 0x0d, 0xd1, 0xc0, 0xb0, 0xb2, + 0xcb, 0x4c, 0x0c, 0x8d, +}; +static const unsigned char kat148_nonce[] = { + 0x23, 0xe6, 0xd5, 0xa1, 0x31, 0x74, 0x0e, 0xc9, +}; +static const unsigned char kat148_persstr[] = {0}; +static const unsigned char kat148_addin0[] = { + 0x8b, 0x99, 0xe4, 0x48, 0x55, 0x10, 0xe7, 0xc4, 0xef, 0x31, 0x86, 0xc7, + 0x5d, 0x0f, 0x42, 0x1d, +}; +static const unsigned char kat148_addin1[] = { + 0xcc, 0x1e, 0xcf, 0x02, 0x3c, 0x9b, 0xea, 0xfb, 0x63, 0x48, 0x69, 0x57, + 0x32, 0x7c, 0x2b, 0xde, +}; +static const unsigned char kat148_retbits[] = { + 0x7f, 0xbf, 0x33, 0xf0, 0x51, 0x08, 0x78, 0x6f, 0xe0, 0x19, 0x97, 0x14, + 0x6a, 0x27, 0xe5, 0x94, 0x68, 0x76, 0x49, 0x9a, 0x8b, 0xa5, 0x2a, 0x71, + 0x47, 0x16, 0xd9, 0x82, 0xce, 0xa2, 0x3f, 0x39, 0x2d, 0x40, 0x23, 0x4d, + 0x3e, 0x00, 0x33, 0x8d, 0x1a, 0xc8, 0x80, 0x9d, 0x43, 0xc7, 0x79, 0x42, + 0x40, 0x30, 0x19, 0x3b, 0xc6, 0x12, 0x3b, 0x70, 0x67, 0xb6, 0xa8, 0xc2, + 0xed, 0x17, 0x9a, 0x25, +}; +static const struct drbg_kat_no_reseed kat148_t = { + 12, kat148_entropyin, kat148_nonce, kat148_persstr, + kat148_addin0, kat148_addin1, kat148_retbits +}; +static const struct drbg_kat kat148 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat148_t +}; + +static const unsigned char kat149_entropyin[] = { + 0xaa, 0x70, 0xaa, 0x9d, 0x3c, 0x0a, 0x77, 0xf8, 0x68, 0x38, 0x80, 0x5e, + 0xef, 0x34, 0x82, 0xba, +}; +static const unsigned char kat149_nonce[] = { + 0xcf, 0x7a, 0x0f, 0x57, 0xc7, 0xde, 0xdf, 0x50, +}; +static const unsigned char kat149_persstr[] = {0}; +static const unsigned char kat149_addin0[] = { + 0xf6, 0xd4, 0x76, 0xea, 0xe4, 0x2f, 0x02, 0xc9, 0xec, 0x21, 0x98, 0x12, + 0x29, 0xd0, 0xf9, 0x76, +}; +static const unsigned char kat149_addin1[] = { + 0x1a, 0xa4, 0x1e, 0xfd, 0xf1, 0x06, 0xe5, 0xa3, 0xe5, 0xd9, 0x76, 0x77, + 0x8b, 0x8f, 0x0c, 0x32, +}; +static const unsigned char kat149_retbits[] = { + 0x84, 0xc1, 0xc0, 0x61, 0x9f, 0x69, 0x79, 0xe2, 0xf4, 0xd2, 0xab, 0xc6, + 0x33, 0x35, 0x42, 0xbf, 0x42, 0xfd, 0x32, 0x79, 0x14, 0x2f, 0x07, 0x1d, + 0xad, 0xb2, 0x64, 0x45, 0xfb, 0x2d, 0xe5, 0x1c, 0x4f, 0xad, 0x68, 0x1d, + 0xce, 0x89, 0x18, 0xaf, 0x3a, 0xe1, 0x64, 0x19, 0xfa, 0xfa, 0x3c, 0x55, + 0x26, 0xd8, 0xc4, 0x78, 0x59, 0x9e, 0x85, 0xee, 0x61, 0xa2, 0x73, 0x18, + 0x36, 0x05, 0x45, 0x0e, +}; +static const struct drbg_kat_no_reseed kat149_t = { + 13, kat149_entropyin, kat149_nonce, kat149_persstr, + kat149_addin0, kat149_addin1, kat149_retbits +}; +static const struct drbg_kat kat149 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat149_t +}; + +static const unsigned char kat150_entropyin[] = { + 0x94, 0xc6, 0x97, 0x57, 0xc9, 0x75, 0xe5, 0x3c, 0xa9, 0x44, 0xcb, 0xe8, + 0xf7, 0x68, 0x6f, 0x85, +}; +static const unsigned char kat150_nonce[] = { + 0x6e, 0x14, 0x5c, 0xc7, 0xd7, 0x2d, 0xec, 0x57, +}; +static const unsigned char kat150_persstr[] = {0}; +static const unsigned char kat150_addin0[] = { + 0xce, 0x08, 0x94, 0x6b, 0x04, 0xfd, 0x83, 0x13, 0xdc, 0xda, 0x8c, 0xde, + 0x3b, 0x0f, 0xf9, 0xdf, +}; +static const unsigned char kat150_addin1[] = { + 0x9f, 0xfc, 0x93, 0x9d, 0x30, 0x5a, 0xe5, 0x86, 0xd8, 0x6a, 0x1a, 0x14, + 0x70, 0x32, 0x68, 0x0b, +}; +static const unsigned char kat150_retbits[] = { + 0xb1, 0xd7, 0xb3, 0x87, 0xa9, 0xf6, 0x7b, 0x91, 0x50, 0x55, 0xe6, 0x82, + 0x98, 0xe0, 0x37, 0x73, 0xa0, 0x19, 0x75, 0x56, 0xf8, 0xd4, 0xb7, 0xe0, + 0x29, 0x52, 0x03, 0x35, 0xef, 0xdc, 0xe2, 0xac, 0xb0, 0xd4, 0xd4, 0xcd, + 0xae, 0x8a, 0xf8, 0xc0, 0x9f, 0xb5, 0x7a, 0x21, 0x5f, 0x20, 0x87, 0xab, + 0xb8, 0x4e, 0xc8, 0x5b, 0x12, 0xdc, 0x3a, 0x85, 0x3d, 0x73, 0xa4, 0xdd, + 0x11, 0x43, 0x00, 0xc5, +}; +static const struct drbg_kat_no_reseed kat150_t = { + 14, kat150_entropyin, kat150_nonce, kat150_persstr, + kat150_addin0, kat150_addin1, kat150_retbits +}; +static const struct drbg_kat kat150 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat150_t +}; + +static const unsigned char kat151_entropyin[] = { + 0xab, 0xa3, 0x6f, 0xf7, 0xa5, 0x35, 0x37, 0x45, 0x4b, 0x5c, 0xb2, 0x68, + 0x39, 0x17, 0x15, 0x40, +}; +static const unsigned char kat151_nonce[] = { + 0x68, 0x71, 0xc0, 0xf5, 0x26, 0xfb, 0xcd, 0xc7, +}; +static const unsigned char kat151_persstr[] = { + 0xdb, 0xc4, 0x4a, 0xf4, 0x98, 0x16, 0x1f, 0x1f, 0x2a, 0xf6, 0xfc, 0xe6, + 0x6c, 0xcc, 0x30, 0xa8, +}; +static const unsigned char kat151_addin0[] = {0}; +static const unsigned char kat151_addin1[] = {0}; +static const unsigned char kat151_retbits[] = { + 0xaf, 0x68, 0x6e, 0x9a, 0xaf, 0x10, 0xaa, 0xbc, 0xbb, 0x44, 0xb3, 0x74, + 0x89, 0x53, 0xad, 0x18, 0x5d, 0xbf, 0x12, 0x89, 0x8e, 0x52, 0x4d, 0x04, + 0x08, 0x61, 0x02, 0xe4, 0x5f, 0x38, 0x41, 0xc6, 0x50, 0xf6, 0x23, 0xf4, + 0x8f, 0x54, 0x2c, 0xaa, 0x14, 0x79, 0x3e, 0x4f, 0xcb, 0xbc, 0xf2, 0xe4, + 0x61, 0xbe, 0x1c, 0x01, 0xed, 0x8f, 0x1f, 0x48, 0xb9, 0x70, 0x4d, 0x79, + 0xa8, 0xeb, 0xf7, 0x9d, +}; +static const struct drbg_kat_no_reseed kat151_t = { + 0, kat151_entropyin, kat151_nonce, kat151_persstr, + kat151_addin0, kat151_addin1, kat151_retbits +}; +static const struct drbg_kat kat151 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat151_t +}; + +static const unsigned char kat152_entropyin[] = { + 0x47, 0xaf, 0xb8, 0x3e, 0x3a, 0xda, 0x22, 0x0f, 0x7d, 0x7e, 0x63, 0x82, + 0xa8, 0xb3, 0x8c, 0xbb, +}; +static const unsigned char kat152_nonce[] = { + 0x7a, 0xb8, 0xae, 0x9b, 0xac, 0x8b, 0x15, 0xa5, +}; +static const unsigned char kat152_persstr[] = { + 0x8b, 0xec, 0x1c, 0xb2, 0xd1, 0x80, 0xb3, 0x67, 0x7c, 0xd1, 0xa8, 0x60, + 0x4b, 0x61, 0x4d, 0xbe, +}; +static const unsigned char kat152_addin0[] = {0}; +static const unsigned char kat152_addin1[] = {0}; +static const unsigned char kat152_retbits[] = { + 0x90, 0xcf, 0x1d, 0x9e, 0x65, 0xd9, 0x76, 0xca, 0xce, 0x2f, 0x20, 0xe7, + 0x81, 0x47, 0xd5, 0x04, 0x0d, 0x02, 0x23, 0x7e, 0x04, 0x17, 0x3f, 0x1f, + 0x37, 0x10, 0xe5, 0x22, 0x7d, 0xcb, 0x85, 0x64, 0x68, 0x4f, 0x2e, 0xba, + 0x38, 0xe1, 0xde, 0xf7, 0x2b, 0x93, 0xbe, 0xdb, 0x44, 0x85, 0xf2, 0xb8, + 0x17, 0xee, 0x66, 0xc1, 0x89, 0x02, 0x4b, 0x2a, 0x12, 0x73, 0x65, 0xbc, + 0x83, 0x50, 0x08, 0x71, +}; +static const struct drbg_kat_no_reseed kat152_t = { + 1, kat152_entropyin, kat152_nonce, kat152_persstr, + kat152_addin0, kat152_addin1, kat152_retbits +}; +static const struct drbg_kat kat152 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat152_t +}; + +static const unsigned char kat153_entropyin[] = { + 0xbb, 0x69, 0x93, 0xaf, 0xf4, 0x80, 0x4a, 0x87, 0xdd, 0x42, 0x59, 0x73, + 0xfd, 0xe3, 0x53, 0x11, +}; +static const unsigned char kat153_nonce[] = { + 0xfb, 0x14, 0x70, 0x0b, 0x33, 0x5a, 0x01, 0x46, +}; +static const unsigned char kat153_persstr[] = { + 0x1e, 0xb0, 0x65, 0x44, 0xca, 0xa8, 0x6e, 0x2a, 0xc4, 0x58, 0x8a, 0xa8, + 0x51, 0xe8, 0xfc, 0x0e, +}; +static const unsigned char kat153_addin0[] = {0}; +static const unsigned char kat153_addin1[] = {0}; +static const unsigned char kat153_retbits[] = { + 0x4e, 0xe7, 0x27, 0x07, 0x3a, 0xba, 0xa3, 0xd7, 0x41, 0x8d, 0x6b, 0x3e, + 0x3b, 0xd4, 0x67, 0xc9, 0x28, 0x48, 0x54, 0x42, 0x3b, 0xa6, 0xd4, 0xef, + 0x02, 0xb2, 0xda, 0xbf, 0x14, 0xb9, 0xb8, 0x24, 0xb2, 0x7a, 0xda, 0x2b, + 0x4a, 0x42, 0xf7, 0xdd, 0x1c, 0xd3, 0x9d, 0xc4, 0x42, 0x0e, 0xe6, 0xe8, + 0x43, 0xfa, 0x7f, 0x2e, 0xee, 0x06, 0xbb, 0x05, 0xc6, 0x47, 0xdc, 0xc0, + 0xd6, 0x97, 0xc0, 0x09, +}; +static const struct drbg_kat_no_reseed kat153_t = { + 2, kat153_entropyin, kat153_nonce, kat153_persstr, + kat153_addin0, kat153_addin1, kat153_retbits +}; +static const struct drbg_kat kat153 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat153_t +}; + +static const unsigned char kat154_entropyin[] = { + 0xa0, 0x5d, 0x9d, 0x84, 0xa5, 0x0d, 0xe7, 0x97, 0x01, 0xc7, 0x59, 0x59, + 0xaf, 0x26, 0xa8, 0xfa, +}; +static const unsigned char kat154_nonce[] = { + 0x7e, 0xde, 0x7f, 0x16, 0x30, 0xdc, 0x01, 0xf7, +}; +static const unsigned char kat154_persstr[] = { + 0x54, 0xf5, 0xd6, 0xe5, 0xd9, 0xb1, 0xfe, 0xb0, 0xa1, 0xc3, 0xd9, 0xa7, + 0xec, 0x81, 0xdd, 0x98, +}; +static const unsigned char kat154_addin0[] = {0}; +static const unsigned char kat154_addin1[] = {0}; +static const unsigned char kat154_retbits[] = { + 0xf4, 0x7a, 0xab, 0x57, 0xdf, 0xff, 0x93, 0x1d, 0x4b, 0xfc, 0x75, 0xa0, + 0x13, 0x11, 0x86, 0xf0, 0xf5, 0xc1, 0x50, 0x5e, 0x9c, 0x6c, 0x7e, 0xb9, + 0x35, 0xe3, 0x1b, 0x49, 0xf1, 0x34, 0xef, 0xc0, 0x0e, 0x45, 0xfc, 0x96, + 0x73, 0x58, 0xee, 0xc4, 0xa9, 0x21, 0xfd, 0xa0, 0xd0, 0x53, 0x7d, 0x9e, + 0x4f, 0xb3, 0x3b, 0x26, 0x3d, 0xb8, 0xe0, 0x8e, 0x73, 0xf2, 0x1f, 0xe1, + 0x75, 0x05, 0x19, 0x6f, +}; +static const struct drbg_kat_no_reseed kat154_t = { + 3, kat154_entropyin, kat154_nonce, kat154_persstr, + kat154_addin0, kat154_addin1, kat154_retbits +}; +static const struct drbg_kat kat154 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat154_t +}; + +static const unsigned char kat155_entropyin[] = { + 0x80, 0x7d, 0x1b, 0x10, 0x96, 0xe3, 0xd7, 0xf7, 0x89, 0x03, 0x6d, 0x64, + 0x4d, 0xfb, 0x9e, 0x8b, +}; +static const unsigned char kat155_nonce[] = { + 0x8c, 0xd7, 0x7f, 0x71, 0xcc, 0xd8, 0xa3, 0x22, +}; +static const unsigned char kat155_persstr[] = { + 0x4f, 0x72, 0x74, 0x5e, 0x2f, 0x2a, 0xa5, 0x43, 0x61, 0x89, 0xdb, 0x92, + 0x27, 0x82, 0x0e, 0x46, +}; +static const unsigned char kat155_addin0[] = {0}; +static const unsigned char kat155_addin1[] = {0}; +static const unsigned char kat155_retbits[] = { + 0xff, 0x4a, 0xe0, 0x06, 0x4c, 0x25, 0xfc, 0xef, 0x07, 0x4a, 0xb3, 0x65, + 0x0e, 0xb6, 0xd3, 0x04, 0x4f, 0x86, 0x68, 0x7e, 0x6d, 0xb2, 0x26, 0x29, + 0x99, 0x2b, 0x08, 0xed, 0x07, 0x8c, 0x65, 0xd0, 0x3d, 0xaf, 0x62, 0x41, + 0xa3, 0x10, 0xe5, 0x76, 0x3c, 0x29, 0x86, 0x63, 0x84, 0x8e, 0x32, 0xd0, + 0x61, 0x4e, 0x98, 0x98, 0x9a, 0x16, 0xd3, 0x7d, 0xc1, 0x72, 0x91, 0x35, + 0xfc, 0xa5, 0xe6, 0x2e, +}; +static const struct drbg_kat_no_reseed kat155_t = { + 4, kat155_entropyin, kat155_nonce, kat155_persstr, + kat155_addin0, kat155_addin1, kat155_retbits +}; +static const struct drbg_kat kat155 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat155_t +}; + +static const unsigned char kat156_entropyin[] = { + 0x1a, 0xbc, 0xe2, 0x1f, 0x12, 0x33, 0x68, 0xb2, 0x6c, 0x66, 0x56, 0xb0, + 0xce, 0xbc, 0x03, 0xe8, +}; +static const unsigned char kat156_nonce[] = { + 0x1f, 0x7a, 0x6d, 0x5b, 0xc2, 0xcb, 0x97, 0x59, +}; +static const unsigned char kat156_persstr[] = { + 0x00, 0xcd, 0x25, 0x9b, 0xb8, 0x7e, 0x4e, 0x6e, 0x21, 0x3e, 0xd4, 0x4e, + 0xec, 0x19, 0xd9, 0x9d, +}; +static const unsigned char kat156_addin0[] = {0}; +static const unsigned char kat156_addin1[] = {0}; +static const unsigned char kat156_retbits[] = { + 0x86, 0xc0, 0x0d, 0x31, 0x81, 0xc1, 0xb6, 0x06, 0xc5, 0x1f, 0x90, 0x98, + 0x93, 0x83, 0xb4, 0xb8, 0x92, 0x2e, 0x4a, 0x19, 0x0b, 0x94, 0x01, 0x65, + 0x8f, 0x8d, 0x45, 0x13, 0x69, 0x7c, 0xa7, 0xd5, 0x84, 0xf5, 0xfc, 0xce, + 0xb3, 0x32, 0x4f, 0x62, 0x4c, 0x47, 0x81, 0xdf, 0xe5, 0x5c, 0x0d, 0xba, + 0x2d, 0x66, 0xbd, 0x85, 0x8f, 0xb6, 0x43, 0xf2, 0x3c, 0xe5, 0xd6, 0x7e, + 0x57, 0x25, 0x00, 0x07, +}; +static const struct drbg_kat_no_reseed kat156_t = { + 5, kat156_entropyin, kat156_nonce, kat156_persstr, + kat156_addin0, kat156_addin1, kat156_retbits +}; +static const struct drbg_kat kat156 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat156_t +}; + +static const unsigned char kat157_entropyin[] = { + 0x06, 0xd5, 0xfb, 0x81, 0x4c, 0xa4, 0xb2, 0xba, 0xc9, 0xe1, 0xcf, 0xba, + 0x0f, 0x13, 0x69, 0x9d, +}; +static const unsigned char kat157_nonce[] = { + 0x0e, 0xa8, 0x7b, 0x9f, 0x3b, 0xb1, 0xe6, 0x29, +}; +static const unsigned char kat157_persstr[] = { + 0xf6, 0x36, 0x79, 0xdf, 0xa3, 0x53, 0x70, 0x3f, 0x12, 0xe7, 0x23, 0x61, + 0x73, 0xc7, 0xd3, 0x20, +}; +static const unsigned char kat157_addin0[] = {0}; +static const unsigned char kat157_addin1[] = {0}; +static const unsigned char kat157_retbits[] = { + 0xe0, 0xc8, 0xff, 0x1f, 0x1d, 0x2c, 0x69, 0xaf, 0xca, 0xe0, 0xb7, 0x3b, + 0xe8, 0xb3, 0xc4, 0xc7, 0x41, 0x3f, 0x7f, 0xbc, 0xbe, 0xfc, 0x3b, 0xcf, + 0x1e, 0x68, 0x8d, 0x2a, 0x7d, 0x08, 0x49, 0xfd, 0xee, 0x60, 0xbd, 0xe9, + 0x1a, 0x0f, 0xb1, 0xa5, 0xef, 0x4b, 0xf3, 0xdf, 0xb3, 0x36, 0xb7, 0x3e, + 0xd0, 0x47, 0xdf, 0xa7, 0x74, 0x77, 0xa5, 0x1c, 0x6d, 0xee, 0x81, 0x72, + 0x63, 0xa2, 0x0c, 0x37, +}; +static const struct drbg_kat_no_reseed kat157_t = { + 6, kat157_entropyin, kat157_nonce, kat157_persstr, + kat157_addin0, kat157_addin1, kat157_retbits +}; +static const struct drbg_kat kat157 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat157_t +}; + +static const unsigned char kat158_entropyin[] = { + 0xdd, 0x3b, 0x7c, 0xfc, 0x51, 0x8c, 0x18, 0x0c, 0xf2, 0x89, 0xf1, 0x45, + 0x25, 0x15, 0x0c, 0xa5, +}; +static const unsigned char kat158_nonce[] = { + 0x36, 0x94, 0x04, 0x3c, 0x71, 0xc2, 0xdd, 0xc5, +}; +static const unsigned char kat158_persstr[] = { + 0x3b, 0x1c, 0x08, 0xfa, 0xb6, 0x36, 0x18, 0x51, 0xd7, 0xa5, 0x18, 0xae, + 0x35, 0x5b, 0x8c, 0x9b, +}; +static const unsigned char kat158_addin0[] = {0}; +static const unsigned char kat158_addin1[] = {0}; +static const unsigned char kat158_retbits[] = { + 0x59, 0x16, 0x4b, 0xac, 0x7a, 0x71, 0x4f, 0xcd, 0x5a, 0x45, 0x80, 0xfb, + 0x54, 0xed, 0x4d, 0xdf, 0x99, 0xc3, 0x9c, 0xf5, 0x9c, 0x23, 0xf8, 0x5f, + 0x6c, 0x52, 0x16, 0xf4, 0xe8, 0x9c, 0xf2, 0x8d, 0xa1, 0x59, 0x9f, 0x82, + 0x57, 0xa6, 0xaf, 0xc3, 0x02, 0xed, 0x3a, 0x1d, 0xec, 0x00, 0x3f, 0xf4, + 0x50, 0x91, 0x2c, 0x2b, 0xcd, 0x68, 0x2c, 0xd3, 0x40, 0x79, 0xcf, 0xb3, + 0xcc, 0xf2, 0x59, 0x3a, +}; +static const struct drbg_kat_no_reseed kat158_t = { + 7, kat158_entropyin, kat158_nonce, kat158_persstr, + kat158_addin0, kat158_addin1, kat158_retbits +}; +static const struct drbg_kat kat158 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat158_t +}; + +static const unsigned char kat159_entropyin[] = { + 0xb7, 0x31, 0x4b, 0xac, 0xd0, 0xb3, 0xe9, 0xe2, 0x21, 0x4e, 0x11, 0xa4, + 0x9c, 0x4f, 0xab, 0x54, +}; +static const unsigned char kat159_nonce[] = { + 0x8c, 0xd5, 0x9a, 0x9c, 0x39, 0x50, 0x1c, 0x0b, +}; +static const unsigned char kat159_persstr[] = { + 0xb6, 0xe3, 0xa4, 0x64, 0x4f, 0xb9, 0x13, 0xa5, 0x4c, 0x89, 0x21, 0xcb, + 0xc1, 0x73, 0x72, 0x38, +}; +static const unsigned char kat159_addin0[] = {0}; +static const unsigned char kat159_addin1[] = {0}; +static const unsigned char kat159_retbits[] = { + 0xe9, 0x2c, 0x97, 0xcc, 0xbb, 0xd6, 0x01, 0x31, 0x78, 0xee, 0x06, 0xd0, + 0x1a, 0xd2, 0xc9, 0xeb, 0x54, 0x64, 0xa7, 0xe3, 0x04, 0x32, 0xb9, 0x43, + 0xe0, 0xb3, 0x71, 0xf1, 0x36, 0xa9, 0x94, 0xb9, 0xf5, 0x44, 0xf3, 0x7b, + 0x60, 0x56, 0x1e, 0x10, 0x25, 0xb1, 0x2b, 0x5a, 0x15, 0xcb, 0x66, 0x1b, + 0x30, 0x1b, 0x5d, 0xd4, 0x38, 0x4b, 0x8b, 0xc0, 0x0d, 0x1d, 0x72, 0xb3, + 0xc6, 0x18, 0xf8, 0x75, +}; +static const struct drbg_kat_no_reseed kat159_t = { + 8, kat159_entropyin, kat159_nonce, kat159_persstr, + kat159_addin0, kat159_addin1, kat159_retbits +}; +static const struct drbg_kat kat159 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat159_t +}; + +static const unsigned char kat160_entropyin[] = { + 0xd6, 0x2b, 0x1f, 0xc2, 0xb0, 0x45, 0x71, 0x8a, 0x3f, 0xe5, 0x9d, 0xfa, + 0xc4, 0xa1, 0xc0, 0x3b, +}; +static const unsigned char kat160_nonce[] = { + 0x41, 0x99, 0x17, 0xd5, 0x8a, 0x67, 0x56, 0xa5, +}; +static const unsigned char kat160_persstr[] = { + 0xf4, 0x79, 0x4b, 0xdc, 0x10, 0x9f, 0x13, 0x00, 0x4b, 0x89, 0x3b, 0x32, + 0x83, 0xc0, 0x97, 0x7e, +}; +static const unsigned char kat160_addin0[] = {0}; +static const unsigned char kat160_addin1[] = {0}; +static const unsigned char kat160_retbits[] = { + 0x05, 0x42, 0xdf, 0xda, 0xb8, 0x8e, 0x34, 0x91, 0x63, 0xed, 0x9b, 0xa6, + 0x34, 0xee, 0x76, 0x25, 0x7d, 0xc9, 0x27, 0x66, 0x61, 0xcd, 0x5d, 0xd2, + 0xfa, 0xa9, 0x31, 0xbc, 0x3a, 0x2e, 0x9c, 0x2d, 0x17, 0xe5, 0x70, 0xff, + 0xa1, 0xa5, 0xf1, 0x44, 0x96, 0xf0, 0xea, 0xc3, 0x33, 0x9e, 0xfd, 0xe4, + 0x6a, 0xa4, 0x0e, 0x87, 0xf2, 0x1a, 0x98, 0x54, 0x95, 0xfd, 0xa3, 0x94, + 0xf2, 0x06, 0x6e, 0xbb, +}; +static const struct drbg_kat_no_reseed kat160_t = { + 9, kat160_entropyin, kat160_nonce, kat160_persstr, + kat160_addin0, kat160_addin1, kat160_retbits +}; +static const struct drbg_kat kat160 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat160_t +}; + +static const unsigned char kat161_entropyin[] = { + 0x91, 0xb4, 0xaa, 0x7d, 0x56, 0x58, 0x32, 0xe9, 0x6a, 0x21, 0xd6, 0x80, + 0xa0, 0xec, 0xdb, 0x4c, +}; +static const unsigned char kat161_nonce[] = { + 0x06, 0x09, 0x09, 0xe2, 0xce, 0x8b, 0x2d, 0xc8, +}; +static const unsigned char kat161_persstr[] = { + 0x5c, 0xba, 0xce, 0xb8, 0x9c, 0x15, 0x0d, 0x22, 0x9b, 0x51, 0x6c, 0x34, + 0x93, 0x60, 0xf2, 0x7f, +}; +static const unsigned char kat161_addin0[] = {0}; +static const unsigned char kat161_addin1[] = {0}; +static const unsigned char kat161_retbits[] = { + 0xc0, 0x79, 0xc2, 0x91, 0x7e, 0x8f, 0x6b, 0x84, 0xc5, 0x8e, 0x02, 0x26, + 0xad, 0x0b, 0x8a, 0x60, 0xa8, 0x7b, 0x88, 0x22, 0xa9, 0x90, 0x45, 0x9d, + 0xe2, 0x4c, 0xc6, 0x55, 0x4c, 0x7f, 0x24, 0x1a, 0xff, 0x30, 0xcd, 0xea, + 0x61, 0xa7, 0x48, 0x47, 0x0a, 0x58, 0xc9, 0x4a, 0x15, 0x0e, 0xbd, 0xdc, + 0x35, 0x5c, 0x64, 0x4d, 0xd4, 0x78, 0x6e, 0x36, 0xf1, 0x7e, 0xcf, 0xce, + 0xa7, 0x33, 0x9d, 0x42, +}; +static const struct drbg_kat_no_reseed kat161_t = { + 10, kat161_entropyin, kat161_nonce, kat161_persstr, + kat161_addin0, kat161_addin1, kat161_retbits +}; +static const struct drbg_kat kat161 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat161_t +}; + +static const unsigned char kat162_entropyin[] = { + 0x32, 0xe1, 0x66, 0xc0, 0x93, 0x8d, 0x6d, 0xa7, 0x21, 0xcf, 0xce, 0x23, + 0x5a, 0x66, 0xa1, 0x80, +}; +static const unsigned char kat162_nonce[] = { + 0xeb, 0x68, 0x79, 0x96, 0xa8, 0xff, 0x63, 0x94, +}; +static const unsigned char kat162_persstr[] = { + 0x05, 0xb9, 0x9f, 0x8d, 0x9f, 0x10, 0x2c, 0x5f, 0xf6, 0xd0, 0xd4, 0x5c, + 0x4d, 0x68, 0x5f, 0xf8, +}; +static const unsigned char kat162_addin0[] = {0}; +static const unsigned char kat162_addin1[] = {0}; +static const unsigned char kat162_retbits[] = { + 0xec, 0x5a, 0xe3, 0x97, 0x25, 0x72, 0x20, 0x45, 0x2e, 0x61, 0x05, 0xa5, + 0xa2, 0x9f, 0x56, 0xd9, 0x33, 0x21, 0x32, 0xf5, 0x33, 0x8d, 0x19, 0xe8, + 0x1a, 0xf6, 0xd3, 0x10, 0x22, 0xbb, 0x91, 0xf8, 0x7f, 0x04, 0xe4, 0x52, + 0x0d, 0x50, 0x76, 0x61, 0x43, 0xd3, 0x53, 0x3e, 0x7b, 0x9d, 0x57, 0x0a, + 0x80, 0x68, 0x84, 0xa3, 0xdf, 0xe2, 0x81, 0xe0, 0x00, 0xf7, 0x7e, 0x7b, + 0x85, 0x59, 0x44, 0x34, +}; +static const struct drbg_kat_no_reseed kat162_t = { + 11, kat162_entropyin, kat162_nonce, kat162_persstr, + kat162_addin0, kat162_addin1, kat162_retbits +}; +static const struct drbg_kat kat162 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat162_t +}; + +static const unsigned char kat163_entropyin[] = { + 0x3a, 0x3d, 0x6a, 0xa9, 0xdb, 0x0f, 0x54, 0x0a, 0x37, 0xeb, 0x81, 0x50, + 0x9d, 0xdb, 0x65, 0x5d, +}; +static const unsigned char kat163_nonce[] = { + 0x1f, 0xe8, 0xc2, 0x5b, 0x27, 0xee, 0x3a, 0xbe, +}; +static const unsigned char kat163_persstr[] = { + 0x8e, 0x15, 0xa5, 0xad, 0x7a, 0x5f, 0x29, 0x38, 0xeb, 0xdb, 0x5c, 0x08, + 0x8b, 0xdc, 0xf3, 0x07, +}; +static const unsigned char kat163_addin0[] = {0}; +static const unsigned char kat163_addin1[] = {0}; +static const unsigned char kat163_retbits[] = { + 0x8d, 0x7e, 0xae, 0xe5, 0x0e, 0x87, 0xf0, 0xbc, 0x34, 0xa4, 0x9b, 0xe9, + 0x4e, 0x7a, 0x4a, 0x64, 0xfd, 0x1e, 0xc9, 0x86, 0x1e, 0xf3, 0x34, 0x22, + 0x2f, 0xfb, 0x15, 0xaf, 0x89, 0x29, 0xf9, 0xed, 0x42, 0xfb, 0x3f, 0xa6, + 0x29, 0xd6, 0xba, 0x39, 0x70, 0x6b, 0x91, 0x93, 0xe1, 0x2b, 0xa2, 0x40, + 0x44, 0x76, 0x17, 0x7c, 0x4f, 0x69, 0xbf, 0xd1, 0x8c, 0xfe, 0x59, 0x55, + 0x5d, 0xca, 0x7c, 0x04, +}; +static const struct drbg_kat_no_reseed kat163_t = { + 12, kat163_entropyin, kat163_nonce, kat163_persstr, + kat163_addin0, kat163_addin1, kat163_retbits +}; +static const struct drbg_kat kat163 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat163_t +}; + +static const unsigned char kat164_entropyin[] = { + 0xc0, 0x84, 0x69, 0xf8, 0x36, 0xfc, 0x12, 0x48, 0xde, 0xd4, 0xed, 0xd8, + 0xaf, 0x4d, 0x9d, 0xe8, +}; +static const unsigned char kat164_nonce[] = { + 0x74, 0x6e, 0xa2, 0xd7, 0x4c, 0xcc, 0xc4, 0xcd, +}; +static const unsigned char kat164_persstr[] = { + 0xa5, 0x18, 0x18, 0xae, 0x54, 0x37, 0x56, 0x25, 0x52, 0x65, 0x11, 0x80, + 0xf3, 0xde, 0x5d, 0xae, +}; +static const unsigned char kat164_addin0[] = {0}; +static const unsigned char kat164_addin1[] = {0}; +static const unsigned char kat164_retbits[] = { + 0xa0, 0x8a, 0xee, 0xde, 0x46, 0x3f, 0xc9, 0xac, 0x48, 0x90, 0x7a, 0xb4, + 0xb0, 0xb3, 0x9d, 0x6f, 0x86, 0xa8, 0x79, 0xf4, 0x21, 0x81, 0x61, 0x41, + 0xa0, 0x52, 0xeb, 0x48, 0xd8, 0x7f, 0xf5, 0xd9, 0xb5, 0xb6, 0xcb, 0xfe, + 0xef, 0xdd, 0x8c, 0xfc, 0x17, 0x72, 0xeb, 0x62, 0x67, 0x12, 0x45, 0x3f, + 0x88, 0xec, 0x74, 0x7f, 0x6a, 0x05, 0xaf, 0x91, 0x7c, 0x9f, 0xa1, 0x61, + 0xed, 0xe1, 0x1d, 0x7f, +}; +static const struct drbg_kat_no_reseed kat164_t = { + 13, kat164_entropyin, kat164_nonce, kat164_persstr, + kat164_addin0, kat164_addin1, kat164_retbits +}; +static const struct drbg_kat kat164 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat164_t +}; + +static const unsigned char kat165_entropyin[] = { + 0x0c, 0xe4, 0xc1, 0x82, 0x8f, 0x9c, 0x9f, 0x0a, 0xea, 0xb4, 0x95, 0x36, + 0x72, 0x23, 0x59, 0x23, +}; +static const unsigned char kat165_nonce[] = { + 0x46, 0x4b, 0x42, 0xc9, 0xfc, 0x5b, 0x38, 0x31, +}; +static const unsigned char kat165_persstr[] = { + 0x48, 0xde, 0x34, 0xd8, 0x48, 0x29, 0x8d, 0xcf, 0x3f, 0x58, 0xc5, 0x2d, + 0x96, 0xc7, 0x7b, 0xf5, +}; +static const unsigned char kat165_addin0[] = {0}; +static const unsigned char kat165_addin1[] = {0}; +static const unsigned char kat165_retbits[] = { + 0xa7, 0xd3, 0x79, 0x02, 0x26, 0xf5, 0xab, 0x5b, 0x38, 0x33, 0xdc, 0xc7, + 0x63, 0xc2, 0xe9, 0xe7, 0xc5, 0xb7, 0x7d, 0x57, 0xc2, 0xfa, 0x26, 0x15, + 0x47, 0xae, 0x0e, 0x39, 0xe9, 0x78, 0x4d, 0xf2, 0x69, 0xd0, 0x8b, 0xbd, + 0x40, 0x36, 0x46, 0x2f, 0x3a, 0xcc, 0xc7, 0x1b, 0x37, 0x8b, 0x09, 0x41, + 0xe9, 0x9c, 0x32, 0x7c, 0x4a, 0x50, 0x34, 0x39, 0xa9, 0x3b, 0x4e, 0xc7, + 0xa0, 0x39, 0xa2, 0xa8, +}; +static const struct drbg_kat_no_reseed kat165_t = { + 14, kat165_entropyin, kat165_nonce, kat165_persstr, + kat165_addin0, kat165_addin1, kat165_retbits +}; +static const struct drbg_kat kat165 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat165_t +}; + +static const unsigned char kat166_entropyin[] = { + 0x70, 0x7a, 0x43, 0x07, 0x2e, 0xac, 0xb8, 0xce, 0xa9, 0x5f, 0xb8, 0x52, + 0x1a, 0xe5, 0x16, 0x0b, +}; +static const unsigned char kat166_nonce[] = { + 0xfd, 0x62, 0x12, 0x13, 0x26, 0x16, 0x30, 0xad, +}; +static const unsigned char kat166_persstr[] = { + 0x6b, 0xf9, 0xa7, 0x2e, 0xaf, 0xe3, 0x5d, 0x58, 0x3c, 0x91, 0x5c, 0x95, + 0x25, 0x74, 0x7b, 0xa0, +}; +static const unsigned char kat166_addin0[] = { + 0xe3, 0xdf, 0xd6, 0x92, 0x7c, 0x4a, 0xe1, 0x03, 0x43, 0x2e, 0xb6, 0x19, + 0x63, 0x67, 0xec, 0xee, +}; +static const unsigned char kat166_addin1[] = { + 0xe1, 0x8c, 0xd5, 0x04, 0xe9, 0x40, 0x27, 0x53, 0x3c, 0xf3, 0x30, 0x71, + 0xca, 0x93, 0x1b, 0x60, +}; +static const unsigned char kat166_retbits[] = { + 0xee, 0x46, 0x3c, 0xdc, 0x78, 0xdd, 0x25, 0x3c, 0x44, 0x66, 0xdd, 0xc2, + 0xe3, 0x5c, 0xc4, 0xa9, 0x1a, 0xf2, 0x0a, 0xd3, 0xb3, 0x39, 0x66, 0x69, + 0xce, 0xf5, 0x22, 0x1b, 0x0a, 0x9c, 0xcc, 0x5d, 0xfc, 0x72, 0x3b, 0x2f, + 0xe1, 0xe5, 0x7f, 0xa2, 0x6d, 0xd0, 0x30, 0xad, 0x0b, 0x6e, 0xa1, 0x4e, + 0xcb, 0x89, 0xf9, 0x1c, 0x4b, 0xc6, 0x93, 0x82, 0xa0, 0x1d, 0x8d, 0xfa, + 0x6f, 0x1d, 0xff, 0x8a, +}; +static const struct drbg_kat_no_reseed kat166_t = { + 0, kat166_entropyin, kat166_nonce, kat166_persstr, + kat166_addin0, kat166_addin1, kat166_retbits +}; +static const struct drbg_kat kat166 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat166_t +}; + +static const unsigned char kat167_entropyin[] = { + 0x35, 0x67, 0xac, 0x54, 0xb9, 0x03, 0xfd, 0x5d, 0xdc, 0x57, 0x23, 0x4c, + 0x31, 0x9b, 0x14, 0x15, +}; +static const unsigned char kat167_nonce[] = { + 0x8f, 0x75, 0xc5, 0x6a, 0x85, 0x77, 0x21, 0x92, +}; +static const unsigned char kat167_persstr[] = { + 0xd1, 0xe3, 0xff, 0xed, 0x85, 0x21, 0x1c, 0x40, 0x8e, 0x31, 0xdb, 0x12, + 0xe8, 0x5b, 0x75, 0xdb, +}; +static const unsigned char kat167_addin0[] = { + 0xcc, 0x38, 0x84, 0x33, 0x5e, 0x19, 0x42, 0x7c, 0xaf, 0x09, 0xf0, 0x1c, + 0x63, 0x4b, 0x30, 0x8a, +}; +static const unsigned char kat167_addin1[] = { + 0xf7, 0x73, 0x3d, 0x02, 0x51, 0xff, 0x02, 0xaf, 0xc0, 0xe9, 0x61, 0xc1, + 0x12, 0x28, 0x84, 0xfc, +}; +static const unsigned char kat167_retbits[] = { + 0x28, 0xc6, 0x9b, 0xb4, 0x98, 0x76, 0x42, 0xe5, 0xa4, 0x67, 0x93, 0x8f, + 0x52, 0xa7, 0x37, 0x14, 0xd3, 0x9a, 0xd0, 0x89, 0xee, 0x09, 0xda, 0xbe, + 0x70, 0xd6, 0x90, 0x36, 0x17, 0x8f, 0x59, 0x98, 0x18, 0x6c, 0xc6, 0x45, + 0x10, 0x0b, 0x56, 0xf9, 0x8e, 0xf4, 0x5c, 0xe3, 0x5b, 0x06, 0xf0, 0x9c, + 0x26, 0x20, 0xba, 0x68, 0x0a, 0x5a, 0x03, 0xd3, 0xd9, 0x59, 0x43, 0xed, + 0x17, 0x16, 0x0f, 0xe4, +}; +static const struct drbg_kat_no_reseed kat167_t = { + 1, kat167_entropyin, kat167_nonce, kat167_persstr, + kat167_addin0, kat167_addin1, kat167_retbits +}; +static const struct drbg_kat kat167 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat167_t +}; + +static const unsigned char kat168_entropyin[] = { + 0x41, 0x76, 0x72, 0x58, 0xe0, 0x6e, 0x50, 0x11, 0x24, 0xf3, 0xdb, 0x8b, + 0xe4, 0x58, 0xd3, 0xbf, +}; +static const unsigned char kat168_nonce[] = { + 0xde, 0x8f, 0xa0, 0xa7, 0x9f, 0x1a, 0x7f, 0x0c, +}; +static const unsigned char kat168_persstr[] = { + 0x9d, 0xab, 0x2f, 0x46, 0xd2, 0x2d, 0x37, 0x86, 0x08, 0xe2, 0x1f, 0xc2, + 0x37, 0xe9, 0x98, 0x71, +}; +static const unsigned char kat168_addin0[] = { + 0xea, 0x41, 0xd1, 0x33, 0xb4, 0xf8, 0x6a, 0x35, 0x22, 0x7b, 0x76, 0x16, + 0x7f, 0x51, 0xbb, 0x5f, +}; +static const unsigned char kat168_addin1[] = { + 0x71, 0x61, 0xe1, 0x2c, 0x6f, 0x65, 0xc1, 0x42, 0xba, 0xf9, 0x4f, 0x1a, + 0x09, 0xe9, 0x4e, 0x22, +}; +static const unsigned char kat168_retbits[] = { + 0xb3, 0x90, 0xc9, 0x52, 0x0e, 0xad, 0x28, 0x82, 0x69, 0x2a, 0x29, 0x59, + 0x3d, 0x16, 0x5c, 0x58, 0xbc, 0x66, 0x14, 0x62, 0x11, 0x2a, 0xf6, 0xd2, + 0x5a, 0x57, 0x14, 0x73, 0xe6, 0x1f, 0x1c, 0xbc, 0xd0, 0x75, 0xe3, 0xad, + 0x1c, 0xae, 0xeb, 0x51, 0xcb, 0x99, 0x28, 0x40, 0x51, 0xce, 0xa4, 0x5a, + 0x17, 0x06, 0xe9, 0x84, 0xe2, 0x7c, 0x32, 0x84, 0xfc, 0x1e, 0x87, 0xab, + 0x68, 0xa6, 0xf1, 0x46, +}; +static const struct drbg_kat_no_reseed kat168_t = { + 2, kat168_entropyin, kat168_nonce, kat168_persstr, + kat168_addin0, kat168_addin1, kat168_retbits +}; +static const struct drbg_kat kat168 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat168_t +}; + +static const unsigned char kat169_entropyin[] = { + 0x19, 0xdb, 0x2d, 0xcd, 0xc5, 0x7d, 0xf2, 0x1e, 0x55, 0xb6, 0x56, 0x4e, + 0xae, 0x47, 0x41, 0x0b, +}; +static const unsigned char kat169_nonce[] = { + 0xeb, 0xec, 0x8e, 0xce, 0x62, 0xd3, 0x29, 0xb6, +}; +static const unsigned char kat169_persstr[] = { + 0x80, 0xba, 0xec, 0xa8, 0x2b, 0x3b, 0xa2, 0x07, 0xb9, 0xf3, 0x75, 0x08, + 0x38, 0xbd, 0xe4, 0x98, +}; +static const unsigned char kat169_addin0[] = { + 0x5d, 0x74, 0xcd, 0xd7, 0xbc, 0xbe, 0x7b, 0xc9, 0x48, 0xb8, 0xf1, 0x3e, + 0xfa, 0x83, 0x5a, 0xd4, +}; +static const unsigned char kat169_addin1[] = { + 0x17, 0xbb, 0x7c, 0xb9, 0x1b, 0x48, 0x11, 0xa5, 0xe7, 0xdb, 0x26, 0x78, + 0x4c, 0xbb, 0xc2, 0xe5, +}; +static const unsigned char kat169_retbits[] = { + 0x26, 0x54, 0xd9, 0x86, 0x67, 0xf7, 0x56, 0x15, 0xfb, 0x6c, 0x74, 0xd5, + 0xb9, 0x0b, 0x62, 0x3c, 0xcc, 0xb9, 0x62, 0x49, 0xe1, 0x4e, 0x08, 0xe8, + 0x8d, 0x1c, 0xb5, 0xe0, 0x90, 0x93, 0x26, 0xb6, 0x77, 0x67, 0xa5, 0x73, + 0xe0, 0xa4, 0xd1, 0xdf, 0x05, 0x7f, 0x2d, 0xe7, 0xa4, 0x95, 0xde, 0xae, + 0xcb, 0xeb, 0x7e, 0x25, 0xe3, 0xaa, 0x82, 0xde, 0x55, 0x59, 0x08, 0xbf, + 0xe3, 0xcc, 0x6a, 0x85, +}; +static const struct drbg_kat_no_reseed kat169_t = { + 3, kat169_entropyin, kat169_nonce, kat169_persstr, + kat169_addin0, kat169_addin1, kat169_retbits +}; +static const struct drbg_kat kat169 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat169_t +}; + +static const unsigned char kat170_entropyin[] = { + 0x64, 0xd7, 0xb4, 0x2c, 0x52, 0x64, 0x33, 0x76, 0xd8, 0xa1, 0x1b, 0x0d, + 0xa5, 0xcc, 0xa5, 0xe6, +}; +static const unsigned char kat170_nonce[] = { + 0x6f, 0xeb, 0x03, 0x5f, 0x39, 0x14, 0x25, 0x14, +}; +static const unsigned char kat170_persstr[] = { + 0x3f, 0x12, 0xa6, 0xf2, 0x40, 0x01, 0xb9, 0x8c, 0x1f, 0x24, 0xab, 0xcf, + 0xab, 0x68, 0x95, 0x08, +}; +static const unsigned char kat170_addin0[] = { + 0xfe, 0xe4, 0x82, 0xb1, 0xfe, 0xa0, 0x53, 0x65, 0xab, 0xa0, 0x7b, 0xc7, + 0xc3, 0x35, 0x1c, 0x6d, +}; +static const unsigned char kat170_addin1[] = { + 0xaf, 0x13, 0x59, 0x83, 0xab, 0x81, 0x13, 0x91, 0x45, 0x35, 0x13, 0x49, + 0x18, 0x78, 0xb5, 0xb5, +}; +static const unsigned char kat170_retbits[] = { + 0x0c, 0x21, 0xf6, 0x97, 0xf1, 0xb0, 0x0d, 0x22, 0x83, 0xae, 0xe4, 0xe7, + 0xb7, 0xe1, 0x01, 0x33, 0x38, 0x6a, 0xb0, 0xab, 0xfa, 0xdb, 0x5e, 0x14, + 0xbf, 0xe5, 0xb4, 0x52, 0xa6, 0xd9, 0x17, 0x46, 0x2a, 0x7b, 0xd0, 0xed, + 0xa0, 0x6f, 0xa1, 0x41, 0xb1, 0xbc, 0x3e, 0xab, 0x4f, 0x47, 0x73, 0xa2, + 0x40, 0xbe, 0x73, 0x51, 0xe3, 0x2a, 0x1d, 0xab, 0xdd, 0xc5, 0x7b, 0xae, + 0x02, 0xd2, 0x6c, 0xd2, +}; +static const struct drbg_kat_no_reseed kat170_t = { + 4, kat170_entropyin, kat170_nonce, kat170_persstr, + kat170_addin0, kat170_addin1, kat170_retbits +}; +static const struct drbg_kat kat170 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat170_t +}; + +static const unsigned char kat171_entropyin[] = { + 0xa5, 0x5a, 0x5a, 0x07, 0x29, 0xc3, 0x9e, 0xfb, 0xc8, 0x6c, 0xe6, 0x4d, + 0x91, 0x51, 0x03, 0x4e, +}; +static const unsigned char kat171_nonce[] = { + 0x10, 0xf1, 0x15, 0x57, 0x73, 0xfb, 0xcd, 0x3b, +}; +static const unsigned char kat171_persstr[] = { + 0x6c, 0x6f, 0x3f, 0x77, 0x80, 0x15, 0xb2, 0xd3, 0x34, 0x92, 0x2e, 0x7a, + 0x13, 0xea, 0xd6, 0xe6, +}; +static const unsigned char kat171_addin0[] = { + 0x84, 0x10, 0x15, 0x5a, 0x9f, 0x4d, 0x40, 0xa3, 0x29, 0x8d, 0x5b, 0x0f, + 0x42, 0xc0, 0xef, 0x46, +}; +static const unsigned char kat171_addin1[] = { + 0xfd, 0x91, 0x1c, 0x8b, 0xb6, 0xff, 0x14, 0xe7, 0xd7, 0x6a, 0x61, 0x1a, + 0xdd, 0xda, 0x72, 0x11, +}; +static const unsigned char kat171_retbits[] = { + 0x16, 0x5f, 0x07, 0xd1, 0x4b, 0xb1, 0xb3, 0x7b, 0xd9, 0xe0, 0x94, 0x9e, + 0x7b, 0x0c, 0x0d, 0xfa, 0xdd, 0x06, 0x7a, 0xdf, 0x15, 0xb6, 0x6c, 0xb3, + 0x96, 0xe6, 0x44, 0x4b, 0xcd, 0xf1, 0x1b, 0xc2, 0x34, 0xb0, 0xd5, 0x9b, + 0x23, 0x17, 0x21, 0x4a, 0x9c, 0xde, 0x72, 0xe5, 0x32, 0xf3, 0x00, 0xc9, + 0xd0, 0x90, 0x7f, 0xf5, 0x9e, 0x62, 0x12, 0x82, 0x6a, 0x92, 0x0f, 0xd9, + 0x2b, 0x53, 0xad, 0xf7, +}; +static const struct drbg_kat_no_reseed kat171_t = { + 5, kat171_entropyin, kat171_nonce, kat171_persstr, + kat171_addin0, kat171_addin1, kat171_retbits +}; +static const struct drbg_kat kat171 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat171_t +}; + +static const unsigned char kat172_entropyin[] = { + 0x53, 0xea, 0x1b, 0xef, 0x71, 0x12, 0xfd, 0xcb, 0x15, 0x51, 0x36, 0x16, + 0xae, 0x7e, 0x07, 0x03, +}; +static const unsigned char kat172_nonce[] = { + 0xca, 0xac, 0x5b, 0x2f, 0xbf, 0x5b, 0xd1, 0xb8, +}; +static const unsigned char kat172_persstr[] = { + 0x79, 0x04, 0x26, 0x8d, 0x84, 0x6f, 0x81, 0x41, 0xcd, 0x78, 0x3e, 0xcb, + 0xa6, 0xef, 0xc9, 0x01, +}; +static const unsigned char kat172_addin0[] = { + 0x03, 0x64, 0xae, 0xea, 0xf7, 0x42, 0x4c, 0x92, 0xc2, 0x61, 0x1f, 0x33, + 0x86, 0xfb, 0xe3, 0x8a, +}; +static const unsigned char kat172_addin1[] = { + 0x9c, 0x77, 0xd6, 0x80, 0xc5, 0xf2, 0x70, 0xae, 0xfa, 0x8a, 0x45, 0xb3, + 0xe9, 0x35, 0x53, 0x30, +}; +static const unsigned char kat172_retbits[] = { + 0xe5, 0x6f, 0xa9, 0x81, 0x29, 0x23, 0x89, 0x0b, 0x94, 0x81, 0xee, 0x07, + 0x80, 0xea, 0x23, 0xb2, 0x05, 0x94, 0x7e, 0x80, 0xf3, 0xe3, 0x8f, 0x55, + 0xc2, 0x2d, 0xef, 0xce, 0x6c, 0xae, 0xa8, 0x4f, 0xd9, 0x85, 0x0f, 0x2c, + 0x50, 0x9c, 0x51, 0x48, 0xe0, 0x1c, 0xd9, 0x77, 0x34, 0x8c, 0xc8, 0xb3, + 0xcc, 0xab, 0xd3, 0xd7, 0x51, 0x5c, 0xc2, 0xca, 0x95, 0xd0, 0xbc, 0x13, + 0x48, 0xba, 0xc5, 0xc2, +}; +static const struct drbg_kat_no_reseed kat172_t = { + 6, kat172_entropyin, kat172_nonce, kat172_persstr, + kat172_addin0, kat172_addin1, kat172_retbits +}; +static const struct drbg_kat kat172 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat172_t +}; + +static const unsigned char kat173_entropyin[] = { + 0x1f, 0xae, 0xf5, 0x93, 0x5c, 0xb8, 0x2d, 0x27, 0x08, 0x13, 0x25, 0x2c, + 0x77, 0xef, 0x3d, 0x6c, +}; +static const unsigned char kat173_nonce[] = { + 0x75, 0xf6, 0x8a, 0x1b, 0x65, 0x8c, 0x72, 0x77, +}; +static const unsigned char kat173_persstr[] = { + 0x08, 0x15, 0xfa, 0x38, 0x8d, 0xb0, 0x3a, 0x89, 0x2d, 0xf4, 0x47, 0x4f, + 0x19, 0xde, 0x31, 0xbc, +}; +static const unsigned char kat173_addin0[] = { + 0x9f, 0x92, 0x23, 0xae, 0x37, 0x86, 0xd3, 0x8c, 0x43, 0xe0, 0xe9, 0x2a, + 0xa1, 0xbf, 0x5e, 0x3f, +}; +static const unsigned char kat173_addin1[] = { + 0x4d, 0x9c, 0x28, 0xcd, 0x69, 0x4e, 0x01, 0x6f, 0xaf, 0xbd, 0xe3, 0xcb, + 0x30, 0x85, 0xb8, 0xd9, +}; +static const unsigned char kat173_retbits[] = { + 0xcd, 0x69, 0x3a, 0xab, 0x02, 0xec, 0x80, 0xa0, 0x4b, 0xeb, 0xcf, 0xef, + 0x66, 0x04, 0x38, 0x4f, 0x48, 0xc8, 0xeb, 0x7d, 0x44, 0xd6, 0x91, 0xac, + 0x35, 0xfb, 0x11, 0xe1, 0x81, 0x83, 0x88, 0x4b, 0x9e, 0x35, 0xd5, 0x8e, + 0x62, 0xfc, 0x56, 0x7b, 0x9a, 0x3d, 0xa4, 0x0e, 0x3a, 0xee, 0xa7, 0x83, + 0x11, 0x5e, 0x80, 0x19, 0x22, 0x09, 0x03, 0xab, 0x55, 0x9b, 0xe9, 0x83, + 0x4c, 0x37, 0x77, 0x58, +}; +static const struct drbg_kat_no_reseed kat173_t = { + 7, kat173_entropyin, kat173_nonce, kat173_persstr, + kat173_addin0, kat173_addin1, kat173_retbits +}; +static const struct drbg_kat kat173 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat173_t +}; + +static const unsigned char kat174_entropyin[] = { + 0x0b, 0x8c, 0x52, 0x08, 0xd9, 0x11, 0x3c, 0xbe, 0x8a, 0x31, 0xcf, 0x3d, + 0xe1, 0x43, 0x38, 0x1a, +}; +static const unsigned char kat174_nonce[] = { + 0x44, 0x9e, 0xbf, 0x57, 0xb8, 0x2a, 0xa5, 0xcb, +}; +static const unsigned char kat174_persstr[] = { + 0x7f, 0x60, 0x01, 0xd6, 0x0c, 0x31, 0xcf, 0x8a, 0x90, 0x4c, 0xb3, 0x18, + 0xcb, 0x70, 0x04, 0x7b, +}; +static const unsigned char kat174_addin0[] = { + 0x4f, 0xe0, 0x45, 0xed, 0xbb, 0x98, 0x16, 0x0a, 0x42, 0x63, 0x5b, 0x77, + 0x79, 0x6e, 0x8a, 0x97, +}; +static const unsigned char kat174_addin1[] = { + 0xd8, 0x96, 0x4e, 0x5f, 0xa8, 0x16, 0xea, 0x83, 0xd1, 0xa5, 0xab, 0xbd, + 0x15, 0x68, 0xad, 0xaa, +}; +static const unsigned char kat174_retbits[] = { + 0xab, 0x1f, 0xba, 0xf1, 0x54, 0xa9, 0x07, 0x2b, 0x62, 0xc3, 0xd6, 0xbb, + 0x9d, 0x01, 0x48, 0xac, 0xe4, 0xb4, 0xcd, 0xe0, 0x8d, 0x9a, 0x71, 0x2a, + 0xa2, 0x94, 0x10, 0xab, 0x51, 0x4d, 0x03, 0xe3, 0x5d, 0xb3, 0xf4, 0x91, + 0x80, 0x66, 0x73, 0x04, 0x18, 0x33, 0xa2, 0xeb, 0xeb, 0xe8, 0x70, 0x55, + 0xf1, 0xf5, 0xfb, 0x64, 0xdd, 0x8e, 0x40, 0x8e, 0x3b, 0x99, 0x57, 0xd2, + 0x1e, 0x66, 0xca, 0xa2, +}; +static const struct drbg_kat_no_reseed kat174_t = { + 8, kat174_entropyin, kat174_nonce, kat174_persstr, + kat174_addin0, kat174_addin1, kat174_retbits +}; +static const struct drbg_kat kat174 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat174_t +}; + +static const unsigned char kat175_entropyin[] = { + 0xae, 0x90, 0x6d, 0x89, 0x04, 0x15, 0x45, 0xc7, 0xef, 0x70, 0x71, 0xf5, + 0x3e, 0xce, 0xea, 0x52, +}; +static const unsigned char kat175_nonce[] = { + 0x1f, 0x4b, 0x28, 0x4c, 0x36, 0xaa, 0xe3, 0xba, +}; +static const unsigned char kat175_persstr[] = { + 0xb9, 0x19, 0x98, 0xc3, 0x21, 0x83, 0x00, 0x6f, 0x7d, 0xf1, 0xc5, 0xd7, + 0x1f, 0xba, 0xc5, 0x7b, +}; +static const unsigned char kat175_addin0[] = { + 0x86, 0x47, 0x5c, 0xa2, 0xb4, 0x84, 0xb8, 0xc6, 0xf3, 0x3b, 0x11, 0x22, + 0x8b, 0xc6, 0x65, 0x05, +}; +static const unsigned char kat175_addin1[] = { + 0x0c, 0x34, 0xe0, 0xea, 0xe8, 0xfa, 0x94, 0xc2, 0x6c, 0xb5, 0x11, 0xc7, + 0x9a, 0x49, 0x83, 0x3e, +}; +static const unsigned char kat175_retbits[] = { + 0x89, 0xeb, 0xf1, 0x81, 0x5e, 0x2c, 0x33, 0x32, 0x59, 0xd6, 0xaa, 0xa0, + 0x07, 0xd1, 0x9c, 0xa5, 0xe0, 0x1e, 0x59, 0x87, 0x76, 0xac, 0x2a, 0xf5, + 0x5a, 0xbf, 0x78, 0xc1, 0x1b, 0x4e, 0xd7, 0x44, 0xb6, 0xde, 0x87, 0x5a, + 0x36, 0xf4, 0x52, 0xc2, 0x7a, 0xc4, 0xa0, 0xe6, 0x77, 0x93, 0x8b, 0x16, + 0x1b, 0x2c, 0x00, 0xeb, 0x06, 0x59, 0xbd, 0xf2, 0xdc, 0x42, 0x5a, 0x89, + 0xa2, 0x4a, 0xff, 0xd0, +}; +static const struct drbg_kat_no_reseed kat175_t = { + 9, kat175_entropyin, kat175_nonce, kat175_persstr, + kat175_addin0, kat175_addin1, kat175_retbits +}; +static const struct drbg_kat kat175 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat175_t +}; + +static const unsigned char kat176_entropyin[] = { + 0x1d, 0x0e, 0x60, 0xe6, 0x80, 0x17, 0x40, 0x42, 0x1d, 0x29, 0xf6, 0x5a, + 0x60, 0x60, 0x6c, 0x1b, +}; +static const unsigned char kat176_nonce[] = { + 0x37, 0x03, 0x36, 0xdb, 0x08, 0x35, 0xe9, 0x1a, +}; +static const unsigned char kat176_persstr[] = { + 0x7a, 0x27, 0x3b, 0x4d, 0x99, 0x75, 0x35, 0x11, 0xfc, 0xf3, 0x4f, 0x3b, + 0x1b, 0xb2, 0x9e, 0x16, +}; +static const unsigned char kat176_addin0[] = { + 0xd6, 0x44, 0xcb, 0x46, 0xe0, 0x1c, 0x07, 0x12, 0xef, 0x9d, 0xa4, 0xed, + 0xe5, 0xca, 0x40, 0x7c, +}; +static const unsigned char kat176_addin1[] = { + 0x5c, 0x99, 0x05, 0x45, 0xee, 0xaf, 0x59, 0xde, 0x4d, 0x34, 0x9a, 0xe6, + 0x66, 0x1f, 0x70, 0x41, +}; +static const unsigned char kat176_retbits[] = { + 0xda, 0xd5, 0x03, 0xe7, 0x20, 0x96, 0x02, 0xa8, 0x6f, 0x18, 0xd0, 0x1a, + 0x2b, 0x05, 0x15, 0xb4, 0xb3, 0xd4, 0xa4, 0xc0, 0x37, 0xaf, 0x71, 0x86, + 0xec, 0xba, 0x25, 0xdc, 0xb7, 0x81, 0xd9, 0x73, 0x11, 0x81, 0x0f, 0x98, + 0xc1, 0x7c, 0x34, 0x17, 0x30, 0x61, 0xab, 0x78, 0xec, 0xcb, 0xd4, 0x91, + 0x85, 0xcf, 0x5d, 0x4f, 0xb9, 0x1d, 0xff, 0xf4, 0xb0, 0xb6, 0x53, 0xdc, + 0x15, 0x89, 0x92, 0x29, +}; +static const struct drbg_kat_no_reseed kat176_t = { + 10, kat176_entropyin, kat176_nonce, kat176_persstr, + kat176_addin0, kat176_addin1, kat176_retbits +}; +static const struct drbg_kat kat176 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat176_t +}; + +static const unsigned char kat177_entropyin[] = { + 0x67, 0x58, 0x85, 0x38, 0x3c, 0x6b, 0x3b, 0x00, 0x8e, 0x88, 0x49, 0x37, + 0xed, 0xa7, 0x7b, 0xe8, +}; +static const unsigned char kat177_nonce[] = { + 0xb9, 0x1c, 0x7c, 0x06, 0x87, 0x85, 0x32, 0xf2, +}; +static const unsigned char kat177_persstr[] = { + 0x12, 0xce, 0x97, 0xb4, 0x0a, 0x1b, 0xcd, 0xe5, 0x03, 0x90, 0xe3, 0x15, + 0xcd, 0x91, 0x1d, 0x53, +}; +static const unsigned char kat177_addin0[] = { + 0x10, 0x58, 0x43, 0x4c, 0xf9, 0xb3, 0x8f, 0xd7, 0x2a, 0x14, 0x0c, 0xf0, + 0x94, 0x24, 0x36, 0xe3, +}; +static const unsigned char kat177_addin1[] = { + 0x59, 0x8b, 0xf8, 0x01, 0x43, 0x39, 0x82, 0x09, 0x66, 0xd9, 0x4b, 0xe1, + 0xe2, 0xe9, 0xc8, 0x55, +}; +static const unsigned char kat177_retbits[] = { + 0x45, 0x48, 0x8c, 0xa0, 0xe2, 0xf2, 0x83, 0xf1, 0x74, 0x1b, 0xcb, 0xf4, + 0x9a, 0x79, 0x36, 0x54, 0x59, 0x07, 0x52, 0x49, 0xe1, 0xc4, 0x17, 0x77, + 0xf3, 0xe0, 0x08, 0xd8, 0x02, 0x0e, 0xe1, 0xf5, 0x98, 0xac, 0xa0, 0xad, + 0x26, 0xed, 0xcd, 0x92, 0x0c, 0x85, 0x59, 0xd0, 0xea, 0xf7, 0xcc, 0x5d, + 0x5a, 0x71, 0x44, 0x37, 0xc0, 0x45, 0x81, 0xa6, 0x4c, 0x74, 0x99, 0xe5, + 0xf0, 0xbe, 0x08, 0x9c, +}; +static const struct drbg_kat_no_reseed kat177_t = { + 11, kat177_entropyin, kat177_nonce, kat177_persstr, + kat177_addin0, kat177_addin1, kat177_retbits +}; +static const struct drbg_kat kat177 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat177_t +}; + +static const unsigned char kat178_entropyin[] = { + 0x71, 0x23, 0x93, 0xa9, 0xf4, 0xa1, 0xb0, 0xbb, 0xab, 0xf4, 0xf4, 0x96, + 0xe8, 0x17, 0x0a, 0xdc, +}; +static const unsigned char kat178_nonce[] = { + 0x0f, 0x59, 0x0c, 0x32, 0x39, 0xc6, 0xcf, 0x47, +}; +static const unsigned char kat178_persstr[] = { + 0xb7, 0x2b, 0x40, 0x97, 0xa9, 0xfb, 0x3d, 0x45, 0xbb, 0x06, 0x24, 0x15, + 0xb6, 0xf2, 0xdf, 0xb1, +}; +static const unsigned char kat178_addin0[] = { + 0xe2, 0x7a, 0xde, 0x7c, 0x11, 0x86, 0x56, 0x55, 0x3f, 0x06, 0xec, 0x20, + 0x19, 0x9b, 0x53, 0x70, +}; +static const unsigned char kat178_addin1[] = { + 0x4e, 0xb4, 0xfd, 0xa3, 0xff, 0xda, 0xd4, 0xf9, 0xdd, 0xaf, 0xd0, 0xd0, + 0xbf, 0xec, 0xd4, 0x44, +}; +static const unsigned char kat178_retbits[] = { + 0x04, 0x49, 0xa8, 0x2a, 0x31, 0x7e, 0x22, 0xe5, 0xa7, 0xa6, 0x68, 0x4d, + 0x08, 0xb8, 0xf6, 0x3e, 0x02, 0xd8, 0xb9, 0x08, 0x5d, 0x61, 0x9a, 0xb5, + 0x6c, 0xde, 0x52, 0x2c, 0x86, 0x67, 0xd5, 0xf8, 0x8b, 0x2e, 0xa8, 0x83, + 0x03, 0x29, 0x49, 0x1a, 0x5e, 0xa8, 0x28, 0xe0, 0xa3, 0x66, 0xae, 0x7e, + 0x84, 0xf2, 0xcd, 0xee, 0x69, 0x8a, 0x92, 0x41, 0x18, 0x88, 0x83, 0xbe, + 0x00, 0xc5, 0x33, 0xe8, +}; +static const struct drbg_kat_no_reseed kat178_t = { + 12, kat178_entropyin, kat178_nonce, kat178_persstr, + kat178_addin0, kat178_addin1, kat178_retbits +}; +static const struct drbg_kat kat178 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat178_t +}; + +static const unsigned char kat179_entropyin[] = { + 0x57, 0x66, 0x40, 0xf9, 0x76, 0xa6, 0x28, 0xb0, 0x9e, 0x98, 0xaf, 0x48, + 0x3b, 0x64, 0x5e, 0x56, +}; +static const unsigned char kat179_nonce[] = { + 0x82, 0x2e, 0x8a, 0x10, 0xdf, 0x06, 0xd0, 0xfe, +}; +static const unsigned char kat179_persstr[] = { + 0x6d, 0x6a, 0x6f, 0x68, 0xbb, 0x38, 0x1c, 0x29, 0x1f, 0x3f, 0xa6, 0x21, + 0xd6, 0xab, 0x64, 0xb2, +}; +static const unsigned char kat179_addin0[] = { + 0xb0, 0x5f, 0x14, 0xe4, 0x1f, 0x54, 0x33, 0x8c, 0x44, 0x15, 0xa5, 0xb5, + 0xc8, 0xc5, 0x61, 0x99, +}; +static const unsigned char kat179_addin1[] = { + 0xc6, 0x84, 0x7c, 0x9e, 0xd7, 0x4c, 0x86, 0x9a, 0xc4, 0xa5, 0x6f, 0xf2, + 0xd0, 0x95, 0x6d, 0x6b, +}; +static const unsigned char kat179_retbits[] = { + 0x5c, 0x6a, 0x7e, 0x58, 0xea, 0xcf, 0xa5, 0x8d, 0xca, 0x93, 0x99, 0xa3, + 0xf9, 0xb6, 0xcb, 0x41, 0xd2, 0xbc, 0x24, 0xf6, 0x72, 0x58, 0x7d, 0xb2, + 0x29, 0xbf, 0x22, 0x20, 0xc2, 0x85, 0x13, 0x47, 0xd4, 0x7d, 0xa1, 0xca, + 0x0a, 0x6a, 0x13, 0x77, 0x96, 0x05, 0xdb, 0x90, 0xd9, 0x1a, 0x61, 0x48, + 0x88, 0x18, 0xd3, 0x3b, 0x2a, 0x4a, 0xd6, 0x74, 0x09, 0x00, 0x68, 0x5f, + 0x8e, 0xc6, 0x13, 0x6f, +}; +static const struct drbg_kat_no_reseed kat179_t = { + 13, kat179_entropyin, kat179_nonce, kat179_persstr, + kat179_addin0, kat179_addin1, kat179_retbits +}; +static const struct drbg_kat kat179 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat179_t +}; + +static const unsigned char kat180_entropyin[] = { + 0x69, 0x65, 0x03, 0xc8, 0x48, 0x60, 0x51, 0x87, 0x84, 0xdd, 0x4c, 0x6c, + 0x31, 0x71, 0x0f, 0x43, +}; +static const unsigned char kat180_nonce[] = { + 0xee, 0x52, 0xc0, 0xa4, 0xcd, 0x90, 0xdf, 0x1e, +}; +static const unsigned char kat180_persstr[] = { + 0x9a, 0x08, 0xd6, 0xb4, 0x80, 0xef, 0x3a, 0xc2, 0x00, 0xa1, 0x30, 0x87, + 0x8d, 0x80, 0xd0, 0x79, +}; +static const unsigned char kat180_addin0[] = { + 0x5c, 0x51, 0x31, 0x59, 0x7b, 0xd3, 0xab, 0x02, 0x5c, 0xa0, 0x05, 0x79, + 0xc8, 0x6f, 0xfd, 0xed, +}; +static const unsigned char kat180_addin1[] = { + 0xa8, 0xcc, 0x33, 0xc8, 0x51, 0xee, 0x11, 0xe4, 0x70, 0x1a, 0x32, 0x19, + 0x7b, 0x61, 0x76, 0x23, +}; +static const unsigned char kat180_retbits[] = { + 0x9a, 0xfd, 0xc4, 0x54, 0xf5, 0xc2, 0xce, 0x29, 0x95, 0xfc, 0x7c, 0xcf, + 0xb4, 0xe8, 0x67, 0x1a, 0x4b, 0x27, 0xdf, 0xcb, 0x1c, 0x02, 0xfe, 0xc6, + 0x07, 0xaa, 0xfc, 0x64, 0x22, 0x65, 0x70, 0x96, 0xce, 0x18, 0x14, 0x10, + 0x1b, 0x8a, 0x74, 0x3e, 0x2d, 0x4a, 0x2c, 0x4e, 0x2e, 0x8d, 0xa2, 0x57, + 0x57, 0x8d, 0xe7, 0x10, 0x54, 0x12, 0xf3, 0x52, 0xa4, 0xcd, 0x14, 0xaf, + 0x7d, 0xb0, 0xeb, 0x03, +}; +static const struct drbg_kat_no_reseed kat180_t = { + 14, kat180_entropyin, kat180_nonce, kat180_persstr, + kat180_addin0, kat180_addin1, kat180_retbits +}; +static const struct drbg_kat kat180 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat180_t +}; + +static const unsigned char kat181_entropyin[] = { + 0x6b, 0xdf, 0x53, 0x32, 0xbd, 0xce, 0x46, 0x55, 0xd4, 0x5c, 0x2c, 0xfe, + 0xa8, 0x97, 0xb0, 0x00, +}; +static const unsigned char kat181_nonce[] = { + 0xe7, 0x8c, 0x55, 0x71, 0xc5, 0xf9, 0x26, 0xf9, +}; +static const unsigned char kat181_persstr[] = {0}; +static const unsigned char kat181_addin0[] = {0}; +static const unsigned char kat181_addin1[] = {0}; +static const unsigned char kat181_retbits[] = { + 0xe0, 0x71, 0x56, 0x88, 0x76, 0x5a, 0x32, 0x85, 0xe7, 0xb7, 0xdb, 0x55, + 0x5f, 0x27, 0x79, 0x24, 0xe7, 0x17, 0x1f, 0x75, 0x41, 0xbf, 0x26, 0x12, + 0x2b, 0x13, 0xdb, 0xaa, 0xa3, 0x9f, 0x9e, 0x2b, 0x03, 0x45, 0xc6, 0x59, + 0x58, 0x3f, 0xf8, 0xc9, 0xcf, 0xd8, 0x88, 0xf1, 0xab, 0xd2, 0xf3, 0xb3, + 0x6a, 0x7c, 0x9d, 0x47, 0xc6, 0x87, 0xb0, 0x1c, 0x81, 0x9a, 0x9f, 0x98, + 0x88, 0x54, 0x2e, 0x0f, +}; +static const struct drbg_kat_no_reseed kat181_t = { + 0, kat181_entropyin, kat181_nonce, kat181_persstr, + kat181_addin0, kat181_addin1, kat181_retbits +}; +static const struct drbg_kat kat181 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat181_t +}; + +static const unsigned char kat182_entropyin[] = { + 0xa4, 0x73, 0x7d, 0x48, 0xa8, 0x93, 0x25, 0x07, 0x85, 0x79, 0xe6, 0x49, + 0xe2, 0xfa, 0x65, 0xeb, +}; +static const unsigned char kat182_nonce[] = { + 0x6a, 0x79, 0x9a, 0x7a, 0x2f, 0x13, 0xe8, 0x13, +}; +static const unsigned char kat182_persstr[] = {0}; +static const unsigned char kat182_addin0[] = {0}; +static const unsigned char kat182_addin1[] = {0}; +static const unsigned char kat182_retbits[] = { + 0x75, 0x2a, 0x91, 0x6d, 0x98, 0x05, 0x18, 0xd9, 0xe7, 0xe4, 0x75, 0x99, + 0x06, 0x6b, 0x45, 0x71, 0x46, 0x61, 0xf3, 0x41, 0x59, 0xf0, 0xc8, 0xce, + 0xa8, 0xda, 0xbd, 0x59, 0x6a, 0x06, 0x6a, 0xff, 0x7a, 0xe6, 0xc2, 0x1e, + 0x69, 0xa3, 0x56, 0xdd, 0x2e, 0xe0, 0xda, 0x55, 0x42, 0x9c, 0x67, 0x5a, + 0xa6, 0xfa, 0x09, 0x00, 0x17, 0x3f, 0x54, 0x77, 0xcd, 0x7f, 0xd6, 0x49, + 0xea, 0xe0, 0xc9, 0x9a, +}; +static const struct drbg_kat_no_reseed kat182_t = { + 1, kat182_entropyin, kat182_nonce, kat182_persstr, + kat182_addin0, kat182_addin1, kat182_retbits +}; +static const struct drbg_kat kat182 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat182_t +}; + +static const unsigned char kat183_entropyin[] = { + 0x99, 0xb4, 0xe9, 0xe5, 0xba, 0xaa, 0x99, 0xbf, 0x8b, 0x8a, 0x0c, 0x2c, + 0xfd, 0x9a, 0x89, 0xce, +}; +static const unsigned char kat183_nonce[] = { + 0xf4, 0x8b, 0x31, 0x29, 0x41, 0xd3, 0x55, 0x4d, +}; +static const unsigned char kat183_persstr[] = {0}; +static const unsigned char kat183_addin0[] = {0}; +static const unsigned char kat183_addin1[] = {0}; +static const unsigned char kat183_retbits[] = { + 0x85, 0xcf, 0x14, 0x8c, 0x65, 0xec, 0xe7, 0x52, 0x5d, 0xea, 0x96, 0x34, + 0x4d, 0xa6, 0x45, 0x11, 0x99, 0x49, 0x21, 0x85, 0xc8, 0xb8, 0xdf, 0xff, + 0x50, 0x0d, 0xdd, 0x68, 0xca, 0xab, 0x50, 0xbd, 0x74, 0x18, 0x66, 0x93, + 0x7a, 0x50, 0x1a, 0xf8, 0x76, 0xae, 0x84, 0x9b, 0x5b, 0x1b, 0x53, 0x30, + 0xde, 0x65, 0xeb, 0xf3, 0x8e, 0x9d, 0x55, 0x96, 0x93, 0xfa, 0xe8, 0x05, + 0xcc, 0xc9, 0xaa, 0xed, +}; +static const struct drbg_kat_no_reseed kat183_t = { + 2, kat183_entropyin, kat183_nonce, kat183_persstr, + kat183_addin0, kat183_addin1, kat183_retbits +}; +static const struct drbg_kat kat183 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat183_t +}; + +static const unsigned char kat184_entropyin[] = { + 0x7c, 0x1e, 0xf8, 0x46, 0xe7, 0xf3, 0xa7, 0xcf, 0xe5, 0xc7, 0xbb, 0x47, + 0xe4, 0x6a, 0xa0, 0xe8, +}; +static const unsigned char kat184_nonce[] = { + 0x78, 0xeb, 0x00, 0x29, 0x55, 0xd2, 0x70, 0xd3, +}; +static const unsigned char kat184_persstr[] = {0}; +static const unsigned char kat184_addin0[] = {0}; +static const unsigned char kat184_addin1[] = {0}; +static const unsigned char kat184_retbits[] = { + 0xb7, 0x39, 0xf9, 0x53, 0x39, 0xe8, 0x3f, 0xe8, 0xa3, 0x39, 0x16, 0x2f, + 0x1e, 0x96, 0xcc, 0x82, 0xb6, 0x7a, 0xf4, 0x17, 0x59, 0xf4, 0x83, 0x06, + 0x4e, 0x61, 0xa0, 0x39, 0x13, 0x7a, 0xf0, 0x7d, 0x93, 0x4a, 0x0e, 0xb7, + 0xca, 0x72, 0x84, 0xc1, 0x46, 0x86, 0xca, 0x04, 0x88, 0x95, 0x3e, 0xe4, + 0x40, 0xf6, 0xcd, 0x11, 0x45, 0xd0, 0x76, 0x6f, 0x4f, 0xf1, 0xc7, 0x7b, + 0x0d, 0x81, 0xd3, 0x61, +}; +static const struct drbg_kat_no_reseed kat184_t = { + 3, kat184_entropyin, kat184_nonce, kat184_persstr, + kat184_addin0, kat184_addin1, kat184_retbits +}; +static const struct drbg_kat kat184 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat184_t +}; + +static const unsigned char kat185_entropyin[] = { + 0x6f, 0x75, 0x0f, 0xb7, 0x3f, 0xbc, 0xb6, 0xdb, 0x57, 0x50, 0x6c, 0xf2, + 0xde, 0xfa, 0xf6, 0xd4, +}; +static const unsigned char kat185_nonce[] = { + 0xa5, 0x2c, 0x92, 0x97, 0xe0, 0x2f, 0x42, 0x55, +}; +static const unsigned char kat185_persstr[] = {0}; +static const unsigned char kat185_addin0[] = {0}; +static const unsigned char kat185_addin1[] = {0}; +static const unsigned char kat185_retbits[] = { + 0x0c, 0xa7, 0x48, 0xfc, 0xb3, 0xba, 0x23, 0xbd, 0x04, 0x3f, 0x48, 0x50, + 0x75, 0x85, 0x42, 0x52, 0x34, 0xec, 0x4a, 0x0f, 0x35, 0x0e, 0xfd, 0xcc, + 0x87, 0xf9, 0x06, 0x2c, 0x8a, 0xe0, 0xcf, 0x1e, 0x03, 0x3b, 0x7d, 0xf8, + 0x35, 0x7f, 0x5b, 0x0e, 0x4f, 0x7c, 0x21, 0xd4, 0xfb, 0xdc, 0xf8, 0x9c, + 0xe0, 0x19, 0x9c, 0x25, 0x79, 0x02, 0x70, 0xfe, 0x67, 0xff, 0xee, 0xc2, + 0x6c, 0xfc, 0x4d, 0x18, +}; +static const struct drbg_kat_no_reseed kat185_t = { + 4, kat185_entropyin, kat185_nonce, kat185_persstr, + kat185_addin0, kat185_addin1, kat185_retbits +}; +static const struct drbg_kat kat185 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat185_t +}; + +static const unsigned char kat186_entropyin[] = { + 0x44, 0xb6, 0xc3, 0x9a, 0x3a, 0xf6, 0xa4, 0x73, 0x14, 0x8e, 0x32, 0xd9, + 0x79, 0x2b, 0x9e, 0xee, +}; +static const unsigned char kat186_nonce[] = { + 0xde, 0x44, 0xdd, 0x36, 0x00, 0x3e, 0x48, 0x22, +}; +static const unsigned char kat186_persstr[] = {0}; +static const unsigned char kat186_addin0[] = {0}; +static const unsigned char kat186_addin1[] = {0}; +static const unsigned char kat186_retbits[] = { + 0x10, 0x12, 0x20, 0x08, 0x7c, 0xa7, 0x70, 0xe4, 0x57, 0x4f, 0xd0, 0x5b, + 0x2e, 0x88, 0x85, 0x1b, 0x48, 0x09, 0xcf, 0x21, 0xe6, 0x5e, 0xb0, 0xe3, + 0xd1, 0xec, 0xda, 0x29, 0xaa, 0xcf, 0x2d, 0x93, 0xe7, 0x5d, 0x79, 0x3b, + 0x99, 0x24, 0xae, 0xdd, 0x9b, 0x9a, 0x38, 0x84, 0x4d, 0xb4, 0x30, 0x47, + 0x0d, 0x01, 0x5d, 0xa6, 0x04, 0x18, 0x75, 0x3f, 0x2e, 0x3c, 0x6a, 0x15, + 0xf5, 0x58, 0xf4, 0xa9, +}; +static const struct drbg_kat_no_reseed kat186_t = { + 5, kat186_entropyin, kat186_nonce, kat186_persstr, + kat186_addin0, kat186_addin1, kat186_retbits +}; +static const struct drbg_kat kat186 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat186_t +}; + +static const unsigned char kat187_entropyin[] = { + 0xe4, 0xd1, 0xff, 0x1c, 0x3c, 0xd2, 0x78, 0x49, 0xa2, 0x97, 0xe5, 0xa9, + 0x8e, 0xde, 0x08, 0x6a, +}; +static const unsigned char kat187_nonce[] = { + 0xf8, 0x9d, 0x58, 0xb0, 0x61, 0x7e, 0x5d, 0x10, +}; +static const unsigned char kat187_persstr[] = {0}; +static const unsigned char kat187_addin0[] = {0}; +static const unsigned char kat187_addin1[] = {0}; +static const unsigned char kat187_retbits[] = { + 0x54, 0xc4, 0x67, 0x97, 0xa3, 0x8e, 0x11, 0xc5, 0x43, 0x47, 0x78, 0x09, + 0xd9, 0xd6, 0xed, 0x0a, 0xe4, 0x02, 0x02, 0x85, 0xed, 0xf9, 0x9e, 0x7e, + 0xc9, 0x45, 0xcf, 0xcf, 0x21, 0xdd, 0xaa, 0x6d, 0x9a, 0x71, 0x85, 0x6b, + 0xdb, 0xd6, 0x61, 0x3b, 0xf8, 0xe9, 0x7e, 0x0a, 0xf8, 0xd3, 0xc4, 0xce, + 0xdd, 0x0d, 0xfc, 0xfb, 0x47, 0x42, 0xa2, 0xef, 0x0a, 0x44, 0x3e, 0xf8, + 0x78, 0x96, 0x0e, 0x6f, +}; +static const struct drbg_kat_no_reseed kat187_t = { + 6, kat187_entropyin, kat187_nonce, kat187_persstr, + kat187_addin0, kat187_addin1, kat187_retbits +}; +static const struct drbg_kat kat187 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat187_t +}; + +static const unsigned char kat188_entropyin[] = { + 0x15, 0x14, 0xbe, 0x70, 0x6e, 0x4c, 0x16, 0x72, 0x90, 0x55, 0x06, 0xb0, + 0xc5, 0x53, 0x47, 0xf2, +}; +static const unsigned char kat188_nonce[] = { + 0xad, 0x8d, 0x88, 0x9f, 0x2b, 0x91, 0xa6, 0xdd, +}; +static const unsigned char kat188_persstr[] = {0}; +static const unsigned char kat188_addin0[] = {0}; +static const unsigned char kat188_addin1[] = {0}; +static const unsigned char kat188_retbits[] = { + 0xb3, 0x64, 0x4a, 0x6d, 0x16, 0x34, 0x0e, 0xf8, 0xb2, 0x8a, 0xd0, 0x6f, + 0x4c, 0xbf, 0xd5, 0xe7, 0x99, 0xf0, 0x80, 0xd4, 0xb2, 0xf8, 0x31, 0xfd, + 0x90, 0xb3, 0x13, 0xc8, 0x62, 0xd5, 0x76, 0x3d, 0x22, 0xb1, 0x21, 0x7f, + 0xe3, 0xd4, 0xf0, 0x7c, 0x00, 0x6a, 0x39, 0x89, 0x5d, 0x46, 0xd5, 0x24, + 0x70, 0xb3, 0xf8, 0xb7, 0x75, 0x21, 0xe1, 0x41, 0xf6, 0x8b, 0x06, 0xb5, + 0x4c, 0x38, 0x66, 0x6f, +}; +static const struct drbg_kat_no_reseed kat188_t = { + 7, kat188_entropyin, kat188_nonce, kat188_persstr, + kat188_addin0, kat188_addin1, kat188_retbits +}; +static const struct drbg_kat kat188 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat188_t +}; + +static const unsigned char kat189_entropyin[] = { + 0x83, 0x35, 0xa4, 0x33, 0xa8, 0x0d, 0x5a, 0x3e, 0x8a, 0xb1, 0xf7, 0x38, + 0x55, 0xf9, 0x7a, 0x9b, +}; +static const unsigned char kat189_nonce[] = { + 0x02, 0x62, 0xb4, 0x7c, 0x2a, 0xb5, 0xfc, 0xba, +}; +static const unsigned char kat189_persstr[] = {0}; +static const unsigned char kat189_addin0[] = {0}; +static const unsigned char kat189_addin1[] = {0}; +static const unsigned char kat189_retbits[] = { + 0x66, 0xa0, 0x3a, 0x0b, 0x3b, 0x2e, 0xf8, 0xd0, 0x4e, 0x01, 0xda, 0x6e, + 0x31, 0xbc, 0x90, 0x02, 0xeb, 0xac, 0xa9, 0x8d, 0x63, 0xfd, 0xde, 0xb0, + 0x7f, 0xa3, 0xe0, 0x65, 0x0a, 0x32, 0xe1, 0x42, 0xfc, 0xab, 0x99, 0x63, + 0xf0, 0x6b, 0xa8, 0x8c, 0xd5, 0x8b, 0xe7, 0x5a, 0x99, 0xdf, 0xa1, 0x3b, + 0x4f, 0x8f, 0xea, 0xe6, 0xf8, 0x4c, 0xe2, 0xde, 0x4d, 0x20, 0x19, 0x92, + 0x23, 0x1f, 0xf3, 0xb8, +}; +static const struct drbg_kat_no_reseed kat189_t = { + 8, kat189_entropyin, kat189_nonce, kat189_persstr, + kat189_addin0, kat189_addin1, kat189_retbits +}; +static const struct drbg_kat kat189 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat189_t +}; + +static const unsigned char kat190_entropyin[] = { + 0x37, 0xfa, 0xeb, 0x0b, 0x3f, 0x85, 0x37, 0x2c, 0xcb, 0x44, 0x22, 0xe3, + 0x66, 0x90, 0xe9, 0x6c, +}; +static const unsigned char kat190_nonce[] = { + 0xda, 0x16, 0x5c, 0x92, 0xd5, 0xfa, 0xaa, 0x3a, +}; +static const unsigned char kat190_persstr[] = {0}; +static const unsigned char kat190_addin0[] = {0}; +static const unsigned char kat190_addin1[] = {0}; +static const unsigned char kat190_retbits[] = { + 0x47, 0x75, 0x15, 0x90, 0x25, 0xd5, 0xb8, 0x82, 0xf3, 0x7c, 0x7e, 0xdb, + 0x8d, 0x89, 0xb3, 0x8a, 0xcb, 0x14, 0xa0, 0x28, 0x39, 0x80, 0x2c, 0x37, + 0x7a, 0xc4, 0x82, 0xf8, 0xc6, 0xb5, 0x9a, 0xd6, 0x9c, 0x7d, 0x67, 0x55, + 0x6b, 0xc4, 0x1c, 0xc3, 0x22, 0xd9, 0xcd, 0x75, 0x03, 0x2a, 0xf5, 0x27, + 0x15, 0xb3, 0x60, 0x2f, 0x24, 0xc2, 0xb0, 0x99, 0x84, 0x0e, 0xab, 0x00, + 0xb7, 0x42, 0x93, 0xad, +}; +static const struct drbg_kat_no_reseed kat190_t = { + 9, kat190_entropyin, kat190_nonce, kat190_persstr, + kat190_addin0, kat190_addin1, kat190_retbits +}; +static const struct drbg_kat kat190 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat190_t +}; + +static const unsigned char kat191_entropyin[] = { + 0xb6, 0x83, 0x0f, 0x64, 0xe4, 0x73, 0x88, 0xa9, 0xc3, 0xc6, 0x4a, 0xa0, + 0xbe, 0x70, 0x84, 0x51, +}; +static const unsigned char kat191_nonce[] = { + 0x5c, 0xd4, 0x30, 0x34, 0xc9, 0x89, 0xda, 0x56, +}; +static const unsigned char kat191_persstr[] = {0}; +static const unsigned char kat191_addin0[] = {0}; +static const unsigned char kat191_addin1[] = {0}; +static const unsigned char kat191_retbits[] = { + 0xe1, 0x2f, 0x1e, 0x9f, 0xd9, 0x0e, 0x4f, 0x16, 0x6a, 0x13, 0xa4, 0xd3, + 0x5f, 0x90, 0x91, 0xa9, 0x74, 0x44, 0x32, 0x91, 0xff, 0xae, 0x44, 0x02, + 0xcb, 0xcd, 0x9a, 0x24, 0x89, 0x3b, 0x77, 0x09, 0x6b, 0x0a, 0x00, 0xdb, + 0x20, 0xe4, 0x32, 0x88, 0x62, 0x61, 0x39, 0xf7, 0xc1, 0x76, 0x7f, 0x6e, + 0x7f, 0xfe, 0xe9, 0x02, 0x2d, 0xde, 0x41, 0xb4, 0x78, 0x48, 0x5e, 0xe9, + 0x12, 0x5f, 0x3e, 0xb8, +}; +static const struct drbg_kat_no_reseed kat191_t = { + 10, kat191_entropyin, kat191_nonce, kat191_persstr, + kat191_addin0, kat191_addin1, kat191_retbits +}; +static const struct drbg_kat kat191 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat191_t +}; + +static const unsigned char kat192_entropyin[] = { + 0xf7, 0x1a, 0x01, 0xef, 0x00, 0xb3, 0xd6, 0x13, 0x46, 0x07, 0xdf, 0xc5, + 0x73, 0x25, 0xf6, 0x87, +}; +static const unsigned char kat192_nonce[] = { + 0x49, 0x76, 0x0a, 0xeb, 0xbc, 0x89, 0x61, 0xfe, +}; +static const unsigned char kat192_persstr[] = {0}; +static const unsigned char kat192_addin0[] = {0}; +static const unsigned char kat192_addin1[] = {0}; +static const unsigned char kat192_retbits[] = { + 0x0f, 0x00, 0x8e, 0x60, 0xab, 0x48, 0x14, 0xcc, 0xd8, 0xd2, 0x89, 0x77, + 0x53, 0xf5, 0x8c, 0xa3, 0x58, 0xba, 0xcd, 0x3f, 0x2e, 0xfc, 0x22, 0xc0, + 0xec, 0x89, 0xa6, 0x5b, 0x0a, 0x91, 0x82, 0xf5, 0x55, 0xcc, 0x49, 0x7a, + 0xa5, 0x9a, 0xf9, 0x14, 0xbc, 0x9c, 0x65, 0xbe, 0x7c, 0x09, 0x21, 0x46, + 0xcb, 0x78, 0xfc, 0xe2, 0x40, 0xfc, 0x8f, 0xe1, 0x36, 0x72, 0x9e, 0xa7, + 0x77, 0x16, 0x44, 0x7f, +}; +static const struct drbg_kat_no_reseed kat192_t = { + 11, kat192_entropyin, kat192_nonce, kat192_persstr, + kat192_addin0, kat192_addin1, kat192_retbits +}; +static const struct drbg_kat kat192 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat192_t +}; + +static const unsigned char kat193_entropyin[] = { + 0x79, 0x0e, 0xf8, 0xf0, 0xee, 0x6d, 0xf4, 0x80, 0xb2, 0xd4, 0x4d, 0xac, + 0x1c, 0x37, 0x61, 0x4c, +}; +static const unsigned char kat193_nonce[] = { + 0xd5, 0x52, 0x44, 0x4d, 0x7d, 0xc3, 0x5e, 0x5c, +}; +static const unsigned char kat193_persstr[] = {0}; +static const unsigned char kat193_addin0[] = {0}; +static const unsigned char kat193_addin1[] = {0}; +static const unsigned char kat193_retbits[] = { + 0x2a, 0xf8, 0xe3, 0x09, 0x77, 0x55, 0x6f, 0xae, 0x7c, 0x18, 0xae, 0x12, + 0xba, 0x22, 0x01, 0xb4, 0x0d, 0xe8, 0xc0, 0x21, 0x66, 0xed, 0x94, 0xc1, + 0x41, 0x27, 0x20, 0x50, 0xdb, 0xea, 0x72, 0xf3, 0xb8, 0xf9, 0x91, 0x54, + 0x7f, 0xc0, 0xf5, 0x58, 0x36, 0x17, 0x12, 0x67, 0xd4, 0x2a, 0x53, 0xdc, + 0xfb, 0x37, 0xc1, 0x5a, 0x22, 0x76, 0x76, 0xbf, 0x21, 0x8a, 0x49, 0xd0, + 0xb7, 0x23, 0x68, 0x9c, +}; +static const struct drbg_kat_no_reseed kat193_t = { + 12, kat193_entropyin, kat193_nonce, kat193_persstr, + kat193_addin0, kat193_addin1, kat193_retbits +}; +static const struct drbg_kat kat193 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat193_t +}; + +static const unsigned char kat194_entropyin[] = { + 0xbe, 0x19, 0x6c, 0x9c, 0xe3, 0x83, 0xc8, 0xb1, 0x01, 0xcd, 0x27, 0xa1, + 0x12, 0x91, 0x9f, 0xbc, +}; +static const unsigned char kat194_nonce[] = { + 0x33, 0x2e, 0xbe, 0x3d, 0x47, 0x3a, 0x3a, 0x35, +}; +static const unsigned char kat194_persstr[] = {0}; +static const unsigned char kat194_addin0[] = {0}; +static const unsigned char kat194_addin1[] = {0}; +static const unsigned char kat194_retbits[] = { + 0x01, 0x6b, 0x05, 0xd5, 0x57, 0x77, 0x7b, 0x36, 0xa1, 0x92, 0x04, 0x0c, + 0x58, 0x0a, 0x5c, 0x51, 0x6d, 0xda, 0x11, 0x55, 0x93, 0x4a, 0xfb, 0xd9, + 0x6c, 0xc8, 0x5b, 0x6e, 0x8b, 0x00, 0x83, 0xbb, 0xda, 0x27, 0x3e, 0xa6, + 0xdb, 0x52, 0xa0, 0x58, 0x9d, 0x9d, 0xe2, 0xe5, 0x56, 0x8f, 0xfe, 0xf9, + 0xdb, 0x39, 0x50, 0x09, 0x3c, 0x4d, 0xb2, 0xe8, 0xce, 0x9c, 0x25, 0x13, + 0x08, 0x46, 0x93, 0xe4, +}; +static const struct drbg_kat_no_reseed kat194_t = { + 13, kat194_entropyin, kat194_nonce, kat194_persstr, + kat194_addin0, kat194_addin1, kat194_retbits +}; +static const struct drbg_kat kat194 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat194_t +}; + +static const unsigned char kat195_entropyin[] = { + 0x76, 0x39, 0x61, 0x6e, 0xe5, 0xcb, 0x26, 0x9b, 0x5f, 0x54, 0x0d, 0xe1, + 0x50, 0xb4, 0x65, 0x0e, +}; +static const unsigned char kat195_nonce[] = { + 0x3c, 0x93, 0x3a, 0xbe, 0xd3, 0x07, 0xf6, 0xe2, +}; +static const unsigned char kat195_persstr[] = {0}; +static const unsigned char kat195_addin0[] = {0}; +static const unsigned char kat195_addin1[] = {0}; +static const unsigned char kat195_retbits[] = { + 0x06, 0x33, 0xc9, 0xaf, 0x4d, 0x40, 0xf3, 0xc2, 0x1a, 0xd4, 0xe0, 0x78, + 0xa0, 0xc8, 0x4e, 0xe0, 0x3a, 0xd7, 0xad, 0x41, 0x0a, 0x0f, 0x7c, 0xf3, + 0xdf, 0xdf, 0xf5, 0x92, 0x0d, 0xcd, 0x39, 0x87, 0xfc, 0xec, 0xed, 0x11, + 0xa2, 0xb3, 0x8b, 0x15, 0x53, 0x5e, 0x44, 0xb5, 0x53, 0x77, 0xa8, 0xf2, + 0x0f, 0x4f, 0xe0, 0x51, 0x87, 0xf9, 0x76, 0xa2, 0x76, 0xe6, 0x4b, 0x81, + 0x3e, 0x55, 0xa8, 0xb9, +}; +static const struct drbg_kat_no_reseed kat195_t = { + 14, kat195_entropyin, kat195_nonce, kat195_persstr, + kat195_addin0, kat195_addin1, kat195_retbits +}; +static const struct drbg_kat kat195 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat195_t +}; + +static const unsigned char kat196_entropyin[] = { + 0x8b, 0x80, 0x93, 0x6e, 0x69, 0xc6, 0x7e, 0xdb, 0x77, 0x1c, 0x28, 0xf9, + 0xb9, 0x45, 0x21, 0x24, +}; +static const unsigned char kat196_nonce[] = { + 0x7e, 0xe2, 0x61, 0x4e, 0xad, 0x3c, 0x12, 0x8e, +}; +static const unsigned char kat196_persstr[] = {0}; +static const unsigned char kat196_addin0[] = { + 0xfc, 0x35, 0xcb, 0xa9, 0x7a, 0x1e, 0x21, 0x1b, 0xc4, 0x20, 0xe8, 0xaf, + 0x53, 0xf8, 0xe1, 0x3c, +}; +static const unsigned char kat196_addin1[] = { + 0xfb, 0xa4, 0x38, 0xaa, 0xa7, 0x5a, 0x3c, 0xd4, 0xcd, 0x0c, 0xce, 0x39, + 0x9b, 0xfe, 0xc7, 0x4a, +}; +static const unsigned char kat196_retbits[] = { + 0x67, 0x21, 0xcc, 0x1a, 0xda, 0x5e, 0xbc, 0x17, 0x13, 0xf7, 0x4c, 0x75, + 0x90, 0x00, 0x76, 0x56, 0x52, 0xee, 0xb5, 0xf3, 0xf9, 0xc2, 0x4f, 0xb9, + 0x34, 0x1b, 0x36, 0xa3, 0x69, 0xce, 0xc1, 0xd2, 0x7e, 0xa8, 0x0d, 0x6b, + 0x73, 0xb5, 0x60, 0x47, 0xaf, 0x07, 0x13, 0x8c, 0x5a, 0x43, 0xc9, 0x9a, + 0x87, 0x75, 0x31, 0x15, 0xc4, 0x71, 0xb8, 0x58, 0x7e, 0xa6, 0x5f, 0xa2, + 0x06, 0x5e, 0x3c, 0xe0, +}; +static const struct drbg_kat_no_reseed kat196_t = { + 0, kat196_entropyin, kat196_nonce, kat196_persstr, + kat196_addin0, kat196_addin1, kat196_retbits +}; +static const struct drbg_kat kat196 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat196_t +}; + +static const unsigned char kat197_entropyin[] = { + 0x89, 0xce, 0x6c, 0x76, 0xbc, 0x41, 0xaa, 0x32, 0xa9, 0xc8, 0xe3, 0xe3, + 0x7d, 0x62, 0x02, 0xef, +}; +static const unsigned char kat197_nonce[] = { + 0xa3, 0x47, 0xf6, 0xcb, 0x64, 0xed, 0x19, 0xdd, +}; +static const unsigned char kat197_persstr[] = {0}; +static const unsigned char kat197_addin0[] = { + 0xc5, 0x03, 0xb1, 0x22, 0x95, 0x7d, 0xce, 0xc8, 0xd9, 0xeb, 0x9c, 0xc9, + 0x94, 0xb8, 0xd1, 0x22, +}; +static const unsigned char kat197_addin1[] = { + 0x3b, 0xb2, 0xf1, 0x19, 0x7a, 0x99, 0x58, 0x8d, 0xf3, 0x57, 0xc0, 0xd1, + 0x98, 0x6a, 0xc6, 0xed, +}; +static const unsigned char kat197_retbits[] = { + 0xf0, 0xf4, 0x25, 0xb1, 0x9e, 0xb7, 0x5a, 0xea, 0x68, 0x99, 0xfa, 0xb7, + 0x61, 0x2c, 0x98, 0xa0, 0xb5, 0xc5, 0xc5, 0xa3, 0xc8, 0x61, 0x07, 0xa8, + 0xc2, 0x01, 0x62, 0x3f, 0x75, 0x99, 0x31, 0x90, 0x9a, 0xfd, 0x63, 0x41, + 0x9d, 0x1c, 0xce, 0xb8, 0x6b, 0xd4, 0xf1, 0x6e, 0x94, 0x8a, 0xef, 0x08, + 0x47, 0x61, 0x70, 0x75, 0x7b, 0xca, 0xf7, 0x98, 0x84, 0xf9, 0xc3, 0x6b, + 0xc7, 0x7e, 0x9f, 0xf9, +}; +static const struct drbg_kat_no_reseed kat197_t = { + 1, kat197_entropyin, kat197_nonce, kat197_persstr, + kat197_addin0, kat197_addin1, kat197_retbits +}; +static const struct drbg_kat kat197 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat197_t +}; + +static const unsigned char kat198_entropyin[] = { + 0xbc, 0x51, 0x67, 0x8d, 0x1f, 0x31, 0x28, 0x65, 0x7b, 0x38, 0x84, 0x9a, + 0xe9, 0xc4, 0xbb, 0x1e, +}; +static const unsigned char kat198_nonce[] = { + 0xdd, 0x29, 0xd9, 0xd8, 0x3f, 0xdb, 0x5e, 0x09, +}; +static const unsigned char kat198_persstr[] = {0}; +static const unsigned char kat198_addin0[] = { + 0xd4, 0xcd, 0x00, 0x67, 0x5c, 0xfe, 0x22, 0x7d, 0xe0, 0xcb, 0xab, 0x65, + 0x11, 0x35, 0x22, 0x89, +}; +static const unsigned char kat198_addin1[] = { + 0x55, 0xbb, 0x93, 0x62, 0x80, 0xae, 0x46, 0xb2, 0x6d, 0x66, 0xb2, 0xf3, + 0xfe, 0xb2, 0x68, 0xd8, +}; +static const unsigned char kat198_retbits[] = { + 0xe5, 0x81, 0x38, 0xb6, 0xb0, 0x23, 0x2e, 0x4d, 0x6d, 0x9e, 0xa8, 0xb6, + 0x5b, 0xd7, 0x69, 0x65, 0xcd, 0xbc, 0x58, 0x4c, 0xca, 0x2e, 0x83, 0xd4, + 0xea, 0xd9, 0x36, 0xbf, 0xb9, 0xc7, 0x9d, 0x77, 0xde, 0xc9, 0x42, 0x4f, + 0x2c, 0xf8, 0x95, 0x01, 0x1e, 0xf1, 0x03, 0x3c, 0x61, 0x9e, 0x28, 0xd1, + 0xdb, 0xa5, 0xdd, 0x3c, 0xed, 0x04, 0x42, 0x9c, 0x1b, 0xd3, 0xc0, 0x3e, + 0x5d, 0x13, 0xe2, 0xb8, +}; +static const struct drbg_kat_no_reseed kat198_t = { + 2, kat198_entropyin, kat198_nonce, kat198_persstr, + kat198_addin0, kat198_addin1, kat198_retbits +}; +static const struct drbg_kat kat198 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat198_t +}; + +static const unsigned char kat199_entropyin[] = { + 0x06, 0x5a, 0x5d, 0x4f, 0xdb, 0x34, 0xb0, 0x8f, 0xd8, 0xef, 0xc8, 0x1f, + 0x99, 0x62, 0x69, 0xab, +}; +static const unsigned char kat199_nonce[] = { + 0xd5, 0xa6, 0x74, 0x7c, 0x7f, 0x8e, 0xef, 0x46, +}; +static const unsigned char kat199_persstr[] = {0}; +static const unsigned char kat199_addin0[] = { + 0x72, 0xeb, 0xd3, 0x51, 0xed, 0xc0, 0x00, 0xd8, 0x36, 0x32, 0x58, 0xa6, + 0x9f, 0x2b, 0x98, 0xcc, +}; +static const unsigned char kat199_addin1[] = { + 0xe5, 0xc8, 0x61, 0x21, 0x32, 0x96, 0xea, 0x2a, 0xd5, 0x09, 0x8f, 0x9b, + 0x4c, 0x50, 0x64, 0x7d, +}; +static const unsigned char kat199_retbits[] = { + 0xa8, 0xea, 0x47, 0x0f, 0x17, 0xbe, 0xe5, 0x02, 0x1d, 0x49, 0xc8, 0x4b, + 0x72, 0x1e, 0x0b, 0x67, 0x47, 0x0d, 0x3b, 0xc4, 0xf9, 0x8f, 0xac, 0x68, + 0xc6, 0x74, 0x42, 0x97, 0x9d, 0x4f, 0xbc, 0xcb, 0xbc, 0xd0, 0x47, 0x7c, + 0x1e, 0x74, 0x93, 0x12, 0x6c, 0xbe, 0x16, 0x9b, 0x84, 0x44, 0x6f, 0x5f, + 0xcf, 0x66, 0x67, 0x86, 0x77, 0x5d, 0x19, 0xf3, 0x5c, 0x61, 0x52, 0x52, + 0x9a, 0x41, 0xde, 0x6d, +}; +static const struct drbg_kat_no_reseed kat199_t = { + 3, kat199_entropyin, kat199_nonce, kat199_persstr, + kat199_addin0, kat199_addin1, kat199_retbits +}; +static const struct drbg_kat kat199 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat199_t +}; + +static const unsigned char kat200_entropyin[] = { + 0x12, 0x48, 0xed, 0x4b, 0xf6, 0x06, 0xcc, 0x65, 0x8b, 0x64, 0x1b, 0x79, + 0x58, 0x59, 0x7f, 0x5a, +}; +static const unsigned char kat200_nonce[] = { + 0x16, 0xc8, 0x8d, 0xea, 0x4e, 0x75, 0x3d, 0x50, +}; +static const unsigned char kat200_persstr[] = {0}; +static const unsigned char kat200_addin0[] = { + 0xfc, 0x67, 0xe7, 0x63, 0x41, 0x32, 0x02, 0xe0, 0x4c, 0x55, 0x69, 0x7e, + 0xb7, 0x54, 0x8c, 0x56, +}; +static const unsigned char kat200_addin1[] = { + 0x21, 0xe0, 0xe3, 0x86, 0x65, 0xec, 0xf6, 0x0f, 0xa9, 0x73, 0x0b, 0xdf, + 0x7e, 0x22, 0xcc, 0x7f, +}; +static const unsigned char kat200_retbits[] = { + 0x63, 0xd9, 0xb5, 0x0d, 0xd6, 0x9e, 0xa9, 0xda, 0xc7, 0x5f, 0x48, 0xae, + 0x01, 0x2f, 0xce, 0xc2, 0x7c, 0x2e, 0x1d, 0xcf, 0xc2, 0xac, 0x2e, 0x59, + 0x24, 0x4a, 0xf4, 0xa6, 0xce, 0x9a, 0x73, 0xc4, 0xd8, 0xbd, 0xe6, 0x57, + 0x0d, 0x85, 0xee, 0x15, 0xb0, 0x8a, 0x48, 0xef, 0x47, 0x3d, 0x12, 0xdb, + 0x87, 0x1f, 0x6d, 0xf1, 0xd8, 0x14, 0x41, 0x61, 0x3d, 0xcc, 0x1e, 0xfb, + 0x20, 0x18, 0xf0, 0xc3, +}; +static const struct drbg_kat_no_reseed kat200_t = { + 4, kat200_entropyin, kat200_nonce, kat200_persstr, + kat200_addin0, kat200_addin1, kat200_retbits +}; +static const struct drbg_kat kat200 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat200_t +}; + +static const unsigned char kat201_entropyin[] = { + 0x6f, 0xa6, 0x29, 0xd0, 0x3c, 0xb4, 0xeb, 0x53, 0x4e, 0xfa, 0x03, 0x33, + 0x4d, 0x3b, 0x1d, 0x02, +}; +static const unsigned char kat201_nonce[] = { + 0xd9, 0x52, 0x15, 0x3e, 0x79, 0xdf, 0x53, 0x8f, +}; +static const unsigned char kat201_persstr[] = {0}; +static const unsigned char kat201_addin0[] = { + 0x2e, 0x5c, 0x55, 0x45, 0x78, 0xa0, 0x69, 0xf5, 0xe4, 0x95, 0x9d, 0xcb, + 0x35, 0x1a, 0x29, 0x4d, +}; +static const unsigned char kat201_addin1[] = { + 0x2d, 0x26, 0xae, 0xaa, 0xd9, 0xcb, 0xf2, 0x53, 0xad, 0xd8, 0x68, 0x4d, + 0x29, 0xb1, 0xa6, 0x33, +}; +static const unsigned char kat201_retbits[] = { + 0xf5, 0x82, 0x46, 0x31, 0x32, 0x84, 0x99, 0x02, 0x98, 0x86, 0x4a, 0x89, + 0xbf, 0xe7, 0xbe, 0x19, 0x70, 0xc0, 0x33, 0xdc, 0x16, 0x64, 0xad, 0x7f, + 0x5c, 0xd9, 0xb8, 0x12, 0xf5, 0xb7, 0xe9, 0x0f, 0x69, 0xa4, 0x9c, 0xdf, + 0xbe, 0xe0, 0xe2, 0x79, 0xf7, 0xdf, 0x1a, 0x8e, 0xd7, 0x9e, 0xca, 0x6e, + 0x68, 0x0d, 0x74, 0x0c, 0x0f, 0x2a, 0xe1, 0x2f, 0x87, 0x79, 0x8a, 0xcc, + 0x6d, 0x73, 0xd4, 0x2f, +}; +static const struct drbg_kat_no_reseed kat201_t = { + 5, kat201_entropyin, kat201_nonce, kat201_persstr, + kat201_addin0, kat201_addin1, kat201_retbits +}; +static const struct drbg_kat kat201 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat201_t +}; + +static const unsigned char kat202_entropyin[] = { + 0xc5, 0x8e, 0xeb, 0x2e, 0x57, 0xf2, 0x95, 0xd7, 0xaf, 0x1a, 0x37, 0x67, + 0x93, 0x5b, 0x85, 0xeb, +}; +static const unsigned char kat202_nonce[] = { + 0x98, 0x61, 0x2b, 0x6c, 0xa0, 0x2f, 0x60, 0xe4, +}; +static const unsigned char kat202_persstr[] = {0}; +static const unsigned char kat202_addin0[] = { + 0x10, 0xe8, 0x9c, 0x27, 0x1e, 0x2b, 0x28, 0x3d, 0x69, 0xb0, 0x4a, 0xbf, + 0x6c, 0x54, 0xb1, 0xe1, +}; +static const unsigned char kat202_addin1[] = { + 0x20, 0x79, 0x50, 0xc2, 0x8b, 0x26, 0xec, 0x16, 0xc4, 0xf2, 0x81, 0x21, + 0x60, 0x7f, 0x4a, 0x5a, +}; +static const unsigned char kat202_retbits[] = { + 0x28, 0xef, 0xf6, 0x03, 0xff, 0x0d, 0xc8, 0x39, 0xf8, 0x8f, 0x84, 0x47, + 0x33, 0xb2, 0x75, 0xbc, 0x6f, 0xda, 0x6d, 0x45, 0x46, 0xee, 0x26, 0x03, + 0x4f, 0x51, 0xf8, 0x4c, 0xe4, 0x30, 0xb0, 0x73, 0xc3, 0xda, 0x8a, 0xbf, + 0xe8, 0x2b, 0x53, 0x13, 0xba, 0x2e, 0x0f, 0x60, 0x04, 0x5b, 0x80, 0x96, + 0xb9, 0xcf, 0x31, 0x42, 0x48, 0x63, 0xe0, 0x6f, 0x72, 0xef, 0xf1, 0xba, + 0xa4, 0xb2, 0x52, 0x70, +}; +static const struct drbg_kat_no_reseed kat202_t = { + 6, kat202_entropyin, kat202_nonce, kat202_persstr, + kat202_addin0, kat202_addin1, kat202_retbits +}; +static const struct drbg_kat kat202 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat202_t +}; + +static const unsigned char kat203_entropyin[] = { + 0x8a, 0x34, 0x5b, 0x5a, 0x5e, 0xb7, 0xd7, 0xaa, 0x70, 0x0b, 0xff, 0x26, + 0x61, 0x25, 0xed, 0xe1, +}; +static const unsigned char kat203_nonce[] = { + 0x00, 0xb2, 0x96, 0x37, 0x27, 0x8d, 0xa4, 0x57, +}; +static const unsigned char kat203_persstr[] = {0}; +static const unsigned char kat203_addin0[] = { + 0x44, 0x53, 0x4b, 0x92, 0xaf, 0x03, 0x81, 0x71, 0xb6, 0x7b, 0x70, 0xf4, + 0xe1, 0xd5, 0xe7, 0xf5, +}; +static const unsigned char kat203_addin1[] = { + 0x53, 0x14, 0x76, 0x60, 0xc0, 0xfd, 0xe5, 0xf9, 0x89, 0x34, 0x74, 0xf0, + 0x38, 0x84, 0xab, 0x14, +}; +static const unsigned char kat203_retbits[] = { + 0xa6, 0xa7, 0xa5, 0x6f, 0xc3, 0x2c, 0x3d, 0x3c, 0x33, 0x06, 0xdd, 0x65, + 0x10, 0x9f, 0xf8, 0xd6, 0x80, 0x31, 0x19, 0x3b, 0xbf, 0x5b, 0x38, 0x38, + 0x0e, 0x38, 0x25, 0xdb, 0x7b, 0xef, 0x72, 0x94, 0x05, 0x14, 0x16, 0x26, + 0x37, 0x95, 0xf3, 0x34, 0xd1, 0xf8, 0x70, 0x54, 0xe9, 0x7d, 0xbb, 0x52, + 0xdd, 0x24, 0x4d, 0x52, 0x7a, 0x6f, 0xfc, 0xe0, 0x86, 0xd1, 0xad, 0x17, + 0x7b, 0xa8, 0xfb, 0x81, +}; +static const struct drbg_kat_no_reseed kat203_t = { + 7, kat203_entropyin, kat203_nonce, kat203_persstr, + kat203_addin0, kat203_addin1, kat203_retbits +}; +static const struct drbg_kat kat203 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat203_t +}; + +static const unsigned char kat204_entropyin[] = { + 0xfe, 0x50, 0x4e, 0x06, 0x89, 0x5d, 0x34, 0x08, 0x90, 0x50, 0x9f, 0x39, + 0x8f, 0xe7, 0x08, 0x32, +}; +static const unsigned char kat204_nonce[] = { + 0x3b, 0x3d, 0x94, 0xb6, 0x94, 0x8f, 0x74, 0x01, +}; +static const unsigned char kat204_persstr[] = {0}; +static const unsigned char kat204_addin0[] = { + 0x64, 0x20, 0x03, 0x18, 0x1f, 0x79, 0x1c, 0xb5, 0xba, 0xce, 0xf7, 0x23, + 0xc9, 0x6c, 0xe2, 0x62, +}; +static const unsigned char kat204_addin1[] = { + 0x34, 0x5e, 0x8d, 0x29, 0xd5, 0xef, 0xdd, 0xc8, 0xab, 0x37, 0x83, 0x8b, + 0x18, 0x91, 0xbc, 0xd0, +}; +static const unsigned char kat204_retbits[] = { + 0x45, 0x30, 0x40, 0x99, 0x14, 0x5b, 0x8e, 0x3d, 0xa8, 0x00, 0xa9, 0x2e, + 0x0f, 0x59, 0x15, 0xc8, 0x98, 0x1f, 0xb7, 0x70, 0x6a, 0x1d, 0xf0, 0xa6, + 0xc0, 0xb2, 0xad, 0x54, 0x35, 0xda, 0x19, 0xce, 0xd3, 0xac, 0xdf, 0xd5, + 0x83, 0x27, 0x95, 0x01, 0x3a, 0xfa, 0x5f, 0xf2, 0x1f, 0xf3, 0x32, 0x6a, + 0xda, 0x7d, 0x57, 0x78, 0x17, 0xf6, 0xb9, 0x4e, 0xb3, 0x5f, 0x33, 0x62, + 0x3d, 0xb4, 0x71, 0x76, +}; +static const struct drbg_kat_no_reseed kat204_t = { + 8, kat204_entropyin, kat204_nonce, kat204_persstr, + kat204_addin0, kat204_addin1, kat204_retbits +}; +static const struct drbg_kat kat204 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat204_t +}; + +static const unsigned char kat205_entropyin[] = { + 0xe0, 0x22, 0x7d, 0xe1, 0x4d, 0x5b, 0xc6, 0xad, 0xe2, 0xa0, 0x14, 0xee, + 0x43, 0x01, 0x51, 0xb4, +}; +static const unsigned char kat205_nonce[] = { + 0x15, 0x37, 0xf8, 0x56, 0x16, 0x75, 0x87, 0x53, +}; +static const unsigned char kat205_persstr[] = {0}; +static const unsigned char kat205_addin0[] = { + 0x87, 0xee, 0xfe, 0xf0, 0xe0, 0xcf, 0xd9, 0x0d, 0xd2, 0x6d, 0x48, 0x33, + 0x79, 0x78, 0x7c, 0x7f, +}; +static const unsigned char kat205_addin1[] = { + 0x74, 0xd2, 0xff, 0xf6, 0xf2, 0x9f, 0x89, 0x2e, 0x66, 0xa9, 0xf8, 0x0b, + 0x2a, 0x5d, 0x9d, 0x20, +}; +static const unsigned char kat205_retbits[] = { + 0xdd, 0xe0, 0x86, 0xce, 0xc0, 0xad, 0xd3, 0x1f, 0xb9, 0x55, 0x3d, 0x56, + 0xcc, 0x2c, 0x6b, 0x7c, 0x02, 0x2d, 0x8c, 0x87, 0xff, 0x54, 0x99, 0xfa, + 0x78, 0xa6, 0x8e, 0xeb, 0x05, 0x1c, 0xdb, 0xf8, 0x99, 0x67, 0x3b, 0x4e, + 0xd7, 0x6f, 0xe8, 0x67, 0xb7, 0x9e, 0xcf, 0x6f, 0xc1, 0xd7, 0xc6, 0xf8, + 0xf5, 0x97, 0x01, 0x31, 0x39, 0xd5, 0x28, 0xd3, 0x48, 0xca, 0x3b, 0xee, + 0x96, 0x05, 0xdd, 0x80, +}; +static const struct drbg_kat_no_reseed kat205_t = { + 9, kat205_entropyin, kat205_nonce, kat205_persstr, + kat205_addin0, kat205_addin1, kat205_retbits +}; +static const struct drbg_kat kat205 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat205_t +}; + +static const unsigned char kat206_entropyin[] = { + 0x44, 0xb7, 0x28, 0x2f, 0x95, 0x1c, 0x59, 0x1a, 0x7a, 0x3d, 0x9f, 0xf6, + 0x96, 0x0f, 0x20, 0xb9, +}; +static const unsigned char kat206_nonce[] = { + 0xb7, 0x7e, 0xbe, 0x26, 0x99, 0x0c, 0xbe, 0x8c, +}; +static const unsigned char kat206_persstr[] = {0}; +static const unsigned char kat206_addin0[] = { + 0x90, 0x00, 0x58, 0x7b, 0xb1, 0x8d, 0x20, 0x1e, 0xcf, 0xd5, 0x6f, 0x30, + 0xdb, 0xa4, 0x83, 0xd2, +}; +static const unsigned char kat206_addin1[] = { + 0x24, 0x55, 0x23, 0x06, 0x0b, 0x0a, 0xf3, 0xe5, 0x75, 0xb1, 0x48, 0x0a, + 0xa6, 0xd8, 0xa3, 0x3b, +}; +static const unsigned char kat206_retbits[] = { + 0x9f, 0x25, 0x67, 0x4a, 0xc0, 0x85, 0xa7, 0xa4, 0x87, 0xe7, 0xd7, 0x20, + 0x84, 0xd5, 0xd3, 0xc0, 0xfb, 0xd7, 0xd4, 0x18, 0x70, 0xf0, 0xf7, 0x66, + 0xd6, 0x13, 0x01, 0x59, 0x96, 0x05, 0x2e, 0xbf, 0xc6, 0xf6, 0x2e, 0x4c, + 0xf3, 0x89, 0xaf, 0x85, 0xcf, 0x12, 0x5d, 0x9d, 0x99, 0xc6, 0x49, 0xd4, + 0xe8, 0x75, 0x50, 0x79, 0xa6, 0x81, 0x7a, 0x9e, 0x81, 0x44, 0x5d, 0x1b, + 0x99, 0x4d, 0x29, 0x61, +}; +static const struct drbg_kat_no_reseed kat206_t = { + 10, kat206_entropyin, kat206_nonce, kat206_persstr, + kat206_addin0, kat206_addin1, kat206_retbits +}; +static const struct drbg_kat kat206 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat206_t +}; + +static const unsigned char kat207_entropyin[] = { + 0x74, 0x5c, 0xa1, 0x6e, 0xbc, 0x9e, 0x1a, 0x58, 0xda, 0x81, 0x02, 0x78, + 0x88, 0x5d, 0xff, 0x33, +}; +static const unsigned char kat207_nonce[] = { + 0x7e, 0x11, 0xf9, 0x49, 0x86, 0x2c, 0xbc, 0xc9, +}; +static const unsigned char kat207_persstr[] = {0}; +static const unsigned char kat207_addin0[] = { + 0x4b, 0x89, 0x8e, 0xbd, 0xd3, 0x21, 0x42, 0x62, 0x78, 0x15, 0xbe, 0x10, + 0x35, 0x43, 0x56, 0x96, +}; +static const unsigned char kat207_addin1[] = { + 0x33, 0x0b, 0x0c, 0xe2, 0x87, 0x84, 0x2d, 0x3d, 0x71, 0x9a, 0x0c, 0xe4, + 0x15, 0x36, 0x3b, 0x77, +}; +static const unsigned char kat207_retbits[] = { + 0x9c, 0x6d, 0xd7, 0x63, 0x88, 0x80, 0x65, 0x54, 0x1b, 0x1a, 0x38, 0x0c, + 0xf4, 0xf4, 0x59, 0x83, 0x9f, 0xb4, 0xf1, 0xef, 0x4f, 0x78, 0x17, 0x28, + 0x6b, 0xe4, 0x50, 0x33, 0x95, 0x7f, 0x79, 0xd1, 0x42, 0x9c, 0xfe, 0xfe, + 0xd1, 0xab, 0xd6, 0x22, 0x8b, 0x26, 0x74, 0x7e, 0x69, 0xec, 0x9b, 0x1a, + 0x02, 0x7b, 0x3a, 0x0b, 0x9a, 0x28, 0x48, 0x7e, 0x95, 0x4d, 0xda, 0x06, + 0xb7, 0xee, 0xb4, 0x54, +}; +static const struct drbg_kat_no_reseed kat207_t = { + 11, kat207_entropyin, kat207_nonce, kat207_persstr, + kat207_addin0, kat207_addin1, kat207_retbits +}; +static const struct drbg_kat kat207 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat207_t +}; + +static const unsigned char kat208_entropyin[] = { + 0x1e, 0x54, 0x6f, 0xee, 0xba, 0xf0, 0xfe, 0xba, 0x3a, 0x07, 0xc6, 0x35, + 0xe6, 0x23, 0x5b, 0xfb, +}; +static const unsigned char kat208_nonce[] = { + 0x17, 0x88, 0xd9, 0xee, 0xa4, 0x44, 0xad, 0x7b, +}; +static const unsigned char kat208_persstr[] = {0}; +static const unsigned char kat208_addin0[] = { + 0x51, 0x99, 0xd4, 0xaa, 0x59, 0x30, 0x22, 0x0c, 0x27, 0x34, 0x2e, 0x1c, + 0x0b, 0x99, 0x46, 0x4f, +}; +static const unsigned char kat208_addin1[] = { + 0x16, 0xdd, 0x52, 0x0f, 0x00, 0x93, 0x29, 0xed, 0x7b, 0xe1, 0x4d, 0x25, + 0xe5, 0xc7, 0x91, 0x12, +}; +static const unsigned char kat208_retbits[] = { + 0x34, 0xfa, 0x78, 0x30, 0x6c, 0x9e, 0xfb, 0x91, 0x2e, 0xe7, 0x8f, 0xb9, + 0x8a, 0x03, 0x54, 0x6d, 0x16, 0xc1, 0xcc, 0x9b, 0xc3, 0xb6, 0x7a, 0x04, + 0xf2, 0xa8, 0xe6, 0xfb, 0x26, 0x24, 0x14, 0xbc, 0xf3, 0xcc, 0x51, 0xd3, + 0xcf, 0x3a, 0x1a, 0x30, 0x48, 0x09, 0xf1, 0x86, 0xbd, 0x74, 0xf2, 0x09, + 0xb2, 0x42, 0x86, 0xf7, 0x71, 0x76, 0x67, 0xcc, 0x56, 0x60, 0xd3, 0xec, + 0x73, 0x2f, 0xb0, 0xd3, +}; +static const struct drbg_kat_no_reseed kat208_t = { + 12, kat208_entropyin, kat208_nonce, kat208_persstr, + kat208_addin0, kat208_addin1, kat208_retbits +}; +static const struct drbg_kat kat208 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat208_t +}; + +static const unsigned char kat209_entropyin[] = { + 0xde, 0x1f, 0xca, 0xee, 0x63, 0x29, 0xe9, 0xac, 0x06, 0xa6, 0xdc, 0x18, + 0xa1, 0x8d, 0x14, 0x7d, +}; +static const unsigned char kat209_nonce[] = { + 0xe1, 0x0e, 0xa5, 0x48, 0xcc, 0x37, 0x73, 0xab, +}; +static const unsigned char kat209_persstr[] = {0}; +static const unsigned char kat209_addin0[] = { + 0x5c, 0xdd, 0xd4, 0xfd, 0x07, 0xb6, 0xac, 0x3e, 0x96, 0xb1, 0x33, 0x39, + 0xa7, 0x5f, 0x56, 0xf9, +}; +static const unsigned char kat209_addin1[] = { + 0x45, 0x47, 0x14, 0xbe, 0xbf, 0x96, 0x03, 0xe1, 0xcf, 0xef, 0x7b, 0x80, + 0x38, 0x37, 0x48, 0x99, +}; +static const unsigned char kat209_retbits[] = { + 0x5e, 0x34, 0x83, 0x12, 0x58, 0x35, 0x24, 0x30, 0x48, 0xa5, 0x10, 0x18, + 0x4f, 0x08, 0x64, 0x87, 0xe9, 0xb0, 0x2f, 0xc0, 0xca, 0x60, 0xfb, 0x46, + 0x41, 0x6f, 0xb0, 0xcc, 0xc1, 0x3e, 0x45, 0x08, 0x1d, 0xa5, 0x96, 0x91, + 0xe3, 0x26, 0x78, 0xfc, 0xb6, 0xaa, 0xbe, 0xf5, 0x85, 0xfb, 0x49, 0x2b, + 0x19, 0x4e, 0x06, 0x17, 0x1a, 0x8d, 0x17, 0xaf, 0x85, 0x56, 0xa3, 0x6b, + 0xf4, 0x93, 0x1f, 0xf5, +}; +static const struct drbg_kat_no_reseed kat209_t = { + 13, kat209_entropyin, kat209_nonce, kat209_persstr, + kat209_addin0, kat209_addin1, kat209_retbits +}; +static const struct drbg_kat kat209 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat209_t +}; + +static const unsigned char kat210_entropyin[] = { + 0x8b, 0x52, 0x95, 0x07, 0xbc, 0x2e, 0x8f, 0x71, 0x19, 0x34, 0xad, 0xc8, + 0x8c, 0x65, 0x30, 0xa3, +}; +static const unsigned char kat210_nonce[] = { + 0x72, 0x15, 0x95, 0x6b, 0x7c, 0x57, 0x4e, 0x71, +}; +static const unsigned char kat210_persstr[] = {0}; +static const unsigned char kat210_addin0[] = { + 0x1a, 0xdb, 0x1e, 0xf6, 0x33, 0x47, 0xb2, 0x1e, 0x33, 0x51, 0x8b, 0x96, + 0x2f, 0x6d, 0xb8, 0x98, +}; +static const unsigned char kat210_addin1[] = { + 0xd5, 0xc6, 0x9f, 0x42, 0xf3, 0x6e, 0xa2, 0x24, 0x98, 0x42, 0xb6, 0xfc, + 0x26, 0xac, 0x54, 0xfe, +}; +static const unsigned char kat210_retbits[] = { + 0xc3, 0x74, 0xbd, 0xd6, 0x2c, 0xb1, 0xe4, 0x2e, 0x64, 0x84, 0x03, 0x84, + 0x3b, 0x8c, 0x06, 0xc0, 0xb3, 0x05, 0xf9, 0x45, 0x68, 0x5f, 0x72, 0xd1, + 0xbc, 0x2e, 0x42, 0x8c, 0x19, 0xdf, 0x45, 0x20, 0x18, 0xdd, 0xea, 0x81, + 0xeb, 0xe5, 0xb1, 0x5f, 0xad, 0x3b, 0xe4, 0xeb, 0x17, 0xfa, 0x2d, 0x2c, + 0xf5, 0x78, 0x36, 0xdd, 0x08, 0x09, 0x70, 0xf7, 0x16, 0xc0, 0xb2, 0x2f, + 0x72, 0x63, 0x41, 0x4a, +}; +static const struct drbg_kat_no_reseed kat210_t = { + 14, kat210_entropyin, kat210_nonce, kat210_persstr, + kat210_addin0, kat210_addin1, kat210_retbits +}; +static const struct drbg_kat kat210 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat210_t +}; + +static const unsigned char kat211_entropyin[] = { + 0xf4, 0x1f, 0x46, 0x6b, 0x32, 0x19, 0xbe, 0x21, 0x59, 0x77, 0x63, 0xfa, + 0x7b, 0x76, 0xfb, 0x40, +}; +static const unsigned char kat211_nonce[] = { + 0xcd, 0x93, 0xfe, 0xb9, 0x96, 0x2e, 0x81, 0xac, +}; +static const unsigned char kat211_persstr[] = { + 0xb5, 0x8f, 0x86, 0x9a, 0xd0, 0xaa, 0x98, 0x08, 0xf6, 0x64, 0x61, 0x37, + 0x43, 0x1d, 0x43, 0x0c, +}; +static const unsigned char kat211_addin0[] = {0}; +static const unsigned char kat211_addin1[] = {0}; +static const unsigned char kat211_retbits[] = { + 0x2f, 0xb6, 0xd7, 0xec, 0xa3, 0x92, 0x67, 0x4f, 0xc7, 0x22, 0xa6, 0x19, + 0x20, 0x2e, 0x81, 0x9d, 0x0d, 0xa9, 0xd1, 0x1b, 0xc6, 0x7d, 0xb1, 0x0b, + 0xe4, 0xc1, 0x3c, 0xb9, 0x64, 0xe3, 0x0a, 0xda, 0x96, 0xdc, 0xcf, 0x0c, + 0x92, 0x2b, 0x71, 0x0a, 0xc0, 0x0d, 0xed, 0x54, 0x57, 0xfa, 0x97, 0x1b, + 0xb1, 0xc6, 0x61, 0xa0, 0x9a, 0xfa, 0x72, 0x0a, 0x58, 0x64, 0x34, 0x4b, + 0xf7, 0x7a, 0x36, 0xae, +}; +static const struct drbg_kat_no_reseed kat211_t = { + 0, kat211_entropyin, kat211_nonce, kat211_persstr, + kat211_addin0, kat211_addin1, kat211_retbits +}; +static const struct drbg_kat kat211 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat211_t +}; + +static const unsigned char kat212_entropyin[] = { + 0x9d, 0x1b, 0x88, 0x34, 0x83, 0x2f, 0xfa, 0x13, 0x83, 0x2e, 0xb0, 0x86, + 0x04, 0x7b, 0xf3, 0xb1, +}; +static const unsigned char kat212_nonce[] = { + 0xd0, 0xf1, 0x5e, 0xfe, 0x86, 0x47, 0x7f, 0x75, +}; +static const unsigned char kat212_persstr[] = { + 0x73, 0xc9, 0x37, 0x34, 0xf6, 0xea, 0x39, 0xae, 0x04, 0xe6, 0xa4, 0xb4, + 0x97, 0x66, 0xb8, 0x20, +}; +static const unsigned char kat212_addin0[] = {0}; +static const unsigned char kat212_addin1[] = {0}; +static const unsigned char kat212_retbits[] = { + 0x9f, 0xb6, 0x7d, 0x35, 0x37, 0x89, 0x40, 0xa5, 0xd7, 0x6b, 0x96, 0x3a, + 0xce, 0x4f, 0x81, 0x58, 0xe9, 0x3f, 0xe0, 0xca, 0x06, 0x4f, 0x96, 0x56, + 0xd4, 0x6d, 0xf1, 0xc1, 0x0d, 0x02, 0x5f, 0x48, 0xb3, 0x35, 0x69, 0xda, + 0x07, 0xc7, 0x7e, 0xc5, 0x12, 0x23, 0x6d, 0x08, 0xd2, 0x69, 0x97, 0xd6, + 0xb9, 0xbb, 0x69, 0x15, 0xdf, 0x63, 0x9e, 0xa8, 0x9d, 0xa9, 0x57, 0xe6, + 0x6f, 0xc2, 0x90, 0x03, +}; +static const struct drbg_kat_no_reseed kat212_t = { + 1, kat212_entropyin, kat212_nonce, kat212_persstr, + kat212_addin0, kat212_addin1, kat212_retbits +}; +static const struct drbg_kat kat212 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat212_t +}; + +static const unsigned char kat213_entropyin[] = { + 0x29, 0x89, 0x86, 0x2a, 0x79, 0xe2, 0x55, 0x19, 0x5a, 0x24, 0x82, 0x8f, + 0xd3, 0x00, 0xeb, 0x34, +}; +static const unsigned char kat213_nonce[] = { + 0x30, 0xff, 0xda, 0xcb, 0x3a, 0xc7, 0xb2, 0x7b, +}; +static const unsigned char kat213_persstr[] = { + 0x71, 0x9b, 0x89, 0x9c, 0x9e, 0x4a, 0x5d, 0xb9, 0xe7, 0x1d, 0xfd, 0xa4, + 0x8f, 0xa6, 0x58, 0xcd, +}; +static const unsigned char kat213_addin0[] = {0}; +static const unsigned char kat213_addin1[] = {0}; +static const unsigned char kat213_retbits[] = { + 0xb4, 0xf2, 0x00, 0x60, 0xea, 0x30, 0x01, 0xef, 0xdb, 0xd5, 0xcc, 0x89, + 0x83, 0x8e, 0x0a, 0x08, 0xc0, 0x9f, 0x7a, 0x6f, 0xe5, 0xbc, 0x02, 0x3c, + 0x33, 0xd1, 0x15, 0xfe, 0xdd, 0x6a, 0xe1, 0x51, 0x30, 0x74, 0x22, 0xf9, + 0x97, 0xd3, 0x2b, 0x3c, 0xea, 0xb8, 0x79, 0x95, 0x86, 0x23, 0x68, 0xc4, + 0xc3, 0xaf, 0x7a, 0xc4, 0x81, 0x58, 0x74, 0xc0, 0x08, 0x4e, 0xa1, 0xdc, + 0xec, 0x50, 0x58, 0xba, +}; +static const struct drbg_kat_no_reseed kat213_t = { + 2, kat213_entropyin, kat213_nonce, kat213_persstr, + kat213_addin0, kat213_addin1, kat213_retbits +}; +static const struct drbg_kat kat213 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat213_t +}; + +static const unsigned char kat214_entropyin[] = { + 0x74, 0x82, 0xb2, 0xb0, 0x2a, 0x74, 0x46, 0xde, 0x58, 0x9d, 0x7e, 0x60, + 0xcf, 0x01, 0x29, 0x69, +}; +static const unsigned char kat214_nonce[] = { + 0x1c, 0x4b, 0xda, 0x6a, 0x57, 0xf4, 0x1f, 0xfb, +}; +static const unsigned char kat214_persstr[] = { + 0x52, 0x9e, 0x4e, 0x80, 0xf5, 0x01, 0xe7, 0x3e, 0xc8, 0x6e, 0xaa, 0x25, + 0x96, 0x28, 0xa1, 0x97, +}; +static const unsigned char kat214_addin0[] = {0}; +static const unsigned char kat214_addin1[] = {0}; +static const unsigned char kat214_retbits[] = { + 0x74, 0x98, 0xf9, 0x17, 0x2a, 0xf7, 0xf5, 0xf2, 0x6d, 0x84, 0x77, 0x97, + 0x76, 0x8e, 0x45, 0x91, 0x70, 0xdd, 0x9e, 0xc7, 0xf4, 0x2a, 0x1f, 0xe9, + 0x79, 0xa2, 0xe4, 0xfa, 0x32, 0xa5, 0xe1, 0x24, 0xc5, 0xcb, 0x1a, 0xd4, + 0xc3, 0x94, 0xa2, 0xc2, 0x09, 0x9e, 0x8f, 0x94, 0x2e, 0xfb, 0xe5, 0x9a, + 0xf0, 0x97, 0x5b, 0x56, 0xa9, 0xaf, 0xa7, 0x74, 0x33, 0x16, 0x12, 0xad, + 0x88, 0x7b, 0x3f, 0x55, +}; +static const struct drbg_kat_no_reseed kat214_t = { + 3, kat214_entropyin, kat214_nonce, kat214_persstr, + kat214_addin0, kat214_addin1, kat214_retbits +}; +static const struct drbg_kat kat214 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat214_t +}; + +static const unsigned char kat215_entropyin[] = { + 0x0a, 0x84, 0x05, 0x99, 0x1a, 0xeb, 0x64, 0xf3, 0xa8, 0x2d, 0x8b, 0xef, + 0x2b, 0x6c, 0x94, 0x22, +}; +static const unsigned char kat215_nonce[] = { + 0xa7, 0xa5, 0x8d, 0xa9, 0xb2, 0x16, 0xf7, 0xfb, +}; +static const unsigned char kat215_persstr[] = { + 0x68, 0xdf, 0x62, 0xfc, 0x01, 0xd3, 0xdb, 0xb0, 0x18, 0xc1, 0x63, 0xbe, + 0x34, 0x29, 0xf2, 0xaa, +}; +static const unsigned char kat215_addin0[] = {0}; +static const unsigned char kat215_addin1[] = {0}; +static const unsigned char kat215_retbits[] = { + 0x7a, 0x9b, 0xa1, 0xe8, 0x25, 0x13, 0x3f, 0xf4, 0xc1, 0xd6, 0x46, 0xce, + 0x55, 0x77, 0xf3, 0x5a, 0x17, 0x84, 0xee, 0xc2, 0xc1, 0x97, 0x70, 0x90, + 0xb4, 0x8e, 0x30, 0xbd, 0x3b, 0x75, 0x06, 0xf4, 0x47, 0xee, 0x62, 0xd0, + 0x21, 0xca, 0xe1, 0x2a, 0xd2, 0x87, 0xb4, 0x17, 0xed, 0xdb, 0x9e, 0xc6, + 0x46, 0x0e, 0x3e, 0x28, 0x4a, 0xfa, 0x73, 0xb7, 0x39, 0x56, 0x4e, 0x40, + 0x73, 0xd0, 0x0e, 0x3c, +}; +static const struct drbg_kat_no_reseed kat215_t = { + 4, kat215_entropyin, kat215_nonce, kat215_persstr, + kat215_addin0, kat215_addin1, kat215_retbits +}; +static const struct drbg_kat kat215 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat215_t +}; + +static const unsigned char kat216_entropyin[] = { + 0xc7, 0xe9, 0xf6, 0x88, 0x33, 0xb1, 0x8e, 0x03, 0x6a, 0xa1, 0xda, 0x02, + 0x5a, 0x35, 0x9e, 0xd7, +}; +static const unsigned char kat216_nonce[] = { + 0x99, 0xf0, 0xe4, 0x9c, 0xe8, 0x11, 0xee, 0x7e, +}; +static const unsigned char kat216_persstr[] = { + 0x8d, 0xe7, 0xc8, 0x6b, 0x8e, 0xc6, 0x1d, 0x6a, 0xbb, 0x52, 0xa7, 0x91, + 0x66, 0x71, 0xad, 0xb9, +}; +static const unsigned char kat216_addin0[] = {0}; +static const unsigned char kat216_addin1[] = {0}; +static const unsigned char kat216_retbits[] = { + 0x14, 0x07, 0xb6, 0x81, 0x51, 0xfc, 0xb0, 0xf0, 0x8e, 0xba, 0xbc, 0x21, + 0xc6, 0xc1, 0x81, 0xac, 0x1d, 0xbf, 0x9c, 0x6f, 0xb1, 0xb2, 0xc1, 0x6e, + 0xaf, 0x1f, 0x8c, 0x49, 0x0d, 0x6f, 0x7d, 0x52, 0xd0, 0xf4, 0x21, 0x11, + 0x6a, 0x59, 0x98, 0x33, 0x0d, 0x81, 0x05, 0xf5, 0x02, 0x76, 0x17, 0xdc, + 0x94, 0xb1, 0x4c, 0x08, 0x3f, 0x49, 0xd1, 0x1c, 0x34, 0xf4, 0xf2, 0x63, + 0x02, 0x31, 0x66, 0x24, +}; +static const struct drbg_kat_no_reseed kat216_t = { + 5, kat216_entropyin, kat216_nonce, kat216_persstr, + kat216_addin0, kat216_addin1, kat216_retbits +}; +static const struct drbg_kat kat216 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat216_t +}; + +static const unsigned char kat217_entropyin[] = { + 0xd6, 0x7e, 0xeb, 0x00, 0xa4, 0x29, 0x1a, 0x18, 0x47, 0x11, 0x84, 0xb4, + 0x31, 0x59, 0xd2, 0xbd, +}; +static const unsigned char kat217_nonce[] = { + 0xe4, 0xa3, 0x61, 0x49, 0x7e, 0xe1, 0x43, 0x8a, +}; +static const unsigned char kat217_persstr[] = { + 0xf0, 0x54, 0xad, 0xf2, 0xad, 0x38, 0x49, 0xda, 0x72, 0x72, 0xb3, 0xb3, + 0x2a, 0xe0, 0xfc, 0xab, +}; +static const unsigned char kat217_addin0[] = {0}; +static const unsigned char kat217_addin1[] = {0}; +static const unsigned char kat217_retbits[] = { + 0x52, 0x45, 0xc3, 0x0a, 0x65, 0x1d, 0x98, 0x61, 0xb6, 0x36, 0xc8, 0xe8, + 0xcc, 0x8b, 0x84, 0x52, 0x46, 0xda, 0x10, 0xc1, 0x04, 0xd7, 0x81, 0x34, + 0xa8, 0x4e, 0x41, 0xfe, 0xa8, 0x0e, 0x0e, 0x73, 0x69, 0x2f, 0x84, 0x81, + 0xcd, 0x4d, 0x75, 0x0c, 0x79, 0xe3, 0x87, 0x6b, 0x9a, 0xbf, 0xa9, 0xd6, + 0x14, 0xd8, 0x68, 0x24, 0x96, 0x05, 0x61, 0x9d, 0xef, 0xef, 0x29, 0x68, + 0xfd, 0x33, 0x14, 0x1e, +}; +static const struct drbg_kat_no_reseed kat217_t = { + 6, kat217_entropyin, kat217_nonce, kat217_persstr, + kat217_addin0, kat217_addin1, kat217_retbits +}; +static const struct drbg_kat kat217 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat217_t +}; + +static const unsigned char kat218_entropyin[] = { + 0xce, 0x08, 0xf0, 0x2b, 0xcd, 0xe4, 0x7f, 0x60, 0x30, 0x82, 0x02, 0x43, + 0xe1, 0x01, 0x38, 0x87, +}; +static const unsigned char kat218_nonce[] = { + 0xd1, 0xb1, 0x51, 0x30, 0xcd, 0x03, 0x8d, 0x6d, +}; +static const unsigned char kat218_persstr[] = { + 0xad, 0x0b, 0xcb, 0x82, 0x01, 0x16, 0x0d, 0x82, 0xf1, 0x79, 0x66, 0xd4, + 0xc7, 0xb6, 0xa4, 0xec, +}; +static const unsigned char kat218_addin0[] = {0}; +static const unsigned char kat218_addin1[] = {0}; +static const unsigned char kat218_retbits[] = { + 0xf4, 0x8e, 0xd0, 0x3b, 0xdb, 0xa9, 0x31, 0x0d, 0x7f, 0xe0, 0xa5, 0xdd, + 0xdf, 0x9d, 0xf4, 0x9c, 0x0d, 0xbe, 0x07, 0xb9, 0x5b, 0xde, 0x25, 0xa0, + 0xb6, 0x6e, 0xd0, 0x1a, 0x9f, 0x7a, 0x07, 0x82, 0x0f, 0x2d, 0x7e, 0xaa, + 0x98, 0x63, 0x70, 0xa0, 0xce, 0x00, 0x01, 0x3b, 0x43, 0x31, 0xe4, 0x4b, + 0xeb, 0x30, 0x10, 0x57, 0x5a, 0xf7, 0xd6, 0x25, 0xbe, 0xd5, 0x5a, 0x59, + 0x2d, 0x97, 0x38, 0x28, +}; +static const struct drbg_kat_no_reseed kat218_t = { + 7, kat218_entropyin, kat218_nonce, kat218_persstr, + kat218_addin0, kat218_addin1, kat218_retbits +}; +static const struct drbg_kat kat218 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat218_t +}; + +static const unsigned char kat219_entropyin[] = { + 0x8d, 0xbc, 0xda, 0xa7, 0x8a, 0xdd, 0xb2, 0x85, 0xdf, 0xdb, 0x5e, 0x41, + 0xee, 0xf6, 0x7e, 0x6f, +}; +static const unsigned char kat219_nonce[] = { + 0x49, 0x06, 0x2c, 0x09, 0x8b, 0x64, 0xe7, 0xf8, +}; +static const unsigned char kat219_persstr[] = { + 0x7d, 0xc1, 0x4e, 0x73, 0x96, 0xf6, 0x24, 0x50, 0xbe, 0xbd, 0xf2, 0xeb, + 0xf0, 0x17, 0xaa, 0xd5, +}; +static const unsigned char kat219_addin0[] = {0}; +static const unsigned char kat219_addin1[] = {0}; +static const unsigned char kat219_retbits[] = { + 0x49, 0xd0, 0x3f, 0xe3, 0xb7, 0x2d, 0x44, 0xa8, 0xa1, 0xe4, 0x69, 0xd2, + 0x5a, 0x14, 0x5b, 0xa6, 0x4d, 0x61, 0x69, 0xdd, 0x94, 0x7f, 0x87, 0x93, + 0xd5, 0xef, 0x43, 0xde, 0x7b, 0x23, 0x94, 0x13, 0x70, 0x83, 0xe6, 0xe7, + 0x69, 0xbb, 0xfd, 0xe9, 0x60, 0x0c, 0x36, 0xb0, 0x32, 0xb7, 0x78, 0x65, + 0x22, 0x07, 0x0b, 0x5a, 0x65, 0xc7, 0x93, 0x92, 0x68, 0x92, 0xb9, 0xfb, + 0x0d, 0x1c, 0x1d, 0x54, +}; +static const struct drbg_kat_no_reseed kat219_t = { + 8, kat219_entropyin, kat219_nonce, kat219_persstr, + kat219_addin0, kat219_addin1, kat219_retbits +}; +static const struct drbg_kat kat219 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat219_t +}; + +static const unsigned char kat220_entropyin[] = { + 0x0d, 0x98, 0x37, 0x0c, 0xff, 0xa0, 0xa8, 0x79, 0xfe, 0x85, 0xb5, 0xde, + 0x4e, 0x69, 0xcf, 0x7d, +}; +static const unsigned char kat220_nonce[] = { + 0x93, 0x50, 0xa8, 0x6b, 0x7a, 0x1b, 0xc6, 0x8a, +}; +static const unsigned char kat220_persstr[] = { + 0x01, 0x61, 0xb2, 0x4d, 0x1c, 0x3c, 0xa5, 0x90, 0x11, 0x7e, 0xc2, 0x9a, + 0xcc, 0x39, 0x44, 0x6f, +}; +static const unsigned char kat220_addin0[] = {0}; +static const unsigned char kat220_addin1[] = {0}; +static const unsigned char kat220_retbits[] = { + 0x7c, 0xd6, 0x46, 0x84, 0x28, 0x9b, 0x43, 0xb1, 0xe5, 0x93, 0xd9, 0x4a, + 0xe9, 0x79, 0xf7, 0xfa, 0x5d, 0xe8, 0x95, 0x77, 0xf3, 0x7c, 0x7a, 0xea, + 0x0b, 0x58, 0x4d, 0x18, 0x60, 0x2c, 0x25, 0x1b, 0x1e, 0xc2, 0x5f, 0xf6, + 0x12, 0xd9, 0x7f, 0xda, 0x37, 0x84, 0xe9, 0x65, 0x59, 0x73, 0xe3, 0x1f, + 0xd4, 0xb5, 0xd1, 0xea, 0xde, 0xc6, 0x68, 0x61, 0xae, 0x2e, 0x97, 0x19, + 0xad, 0x34, 0x47, 0x30, +}; +static const struct drbg_kat_no_reseed kat220_t = { + 9, kat220_entropyin, kat220_nonce, kat220_persstr, + kat220_addin0, kat220_addin1, kat220_retbits +}; +static const struct drbg_kat kat220 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat220_t +}; + +static const unsigned char kat221_entropyin[] = { + 0xd9, 0xb6, 0xfb, 0x62, 0xda, 0x0a, 0x02, 0x32, 0x35, 0xe7, 0xcd, 0x78, + 0x16, 0x37, 0x7c, 0xf5, +}; +static const unsigned char kat221_nonce[] = { + 0x1c, 0xa8, 0xc5, 0xfa, 0x5b, 0x9f, 0x8c, 0x90, +}; +static const unsigned char kat221_persstr[] = { + 0x17, 0xbe, 0x48, 0x85, 0xb5, 0xf9, 0x64, 0x1b, 0xf5, 0xf6, 0x89, 0xbc, + 0x97, 0x97, 0x88, 0x58, +}; +static const unsigned char kat221_addin0[] = {0}; +static const unsigned char kat221_addin1[] = {0}; +static const unsigned char kat221_retbits[] = { + 0xe1, 0x1e, 0x3c, 0xa6, 0xc8, 0x32, 0xf4, 0x6f, 0xf1, 0xf9, 0x71, 0xc0, + 0x7e, 0x7b, 0x66, 0xc7, 0xd5, 0xb1, 0xb2, 0xe6, 0xec, 0x8c, 0x5f, 0xfc, + 0x77, 0x10, 0x3f, 0x0a, 0xd3, 0x08, 0x80, 0x0b, 0xb9, 0x89, 0xb9, 0xab, + 0x70, 0x10, 0x68, 0x33, 0x78, 0xa3, 0xf7, 0x81, 0x9a, 0x29, 0x7a, 0x37, + 0x65, 0x25, 0x6a, 0xc4, 0x0f, 0xb0, 0xa9, 0xcb, 0x22, 0x46, 0xae, 0xb8, + 0x5d, 0x73, 0x60, 0x1b, +}; +static const struct drbg_kat_no_reseed kat221_t = { + 10, kat221_entropyin, kat221_nonce, kat221_persstr, + kat221_addin0, kat221_addin1, kat221_retbits +}; +static const struct drbg_kat kat221 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat221_t +}; + +static const unsigned char kat222_entropyin[] = { + 0xa7, 0x11, 0x39, 0x44, 0xfc, 0x4d, 0x4b, 0x15, 0xa9, 0x49, 0x67, 0xc8, + 0xf5, 0x65, 0x2a, 0x36, +}; +static const unsigned char kat222_nonce[] = { + 0xa5, 0x06, 0xb7, 0x9a, 0xfe, 0x6a, 0xf8, 0x22, +}; +static const unsigned char kat222_persstr[] = { + 0x91, 0x8f, 0xe4, 0xf3, 0x65, 0x25, 0x9c, 0x18, 0xeb, 0x68, 0x50, 0xfb, + 0xee, 0x40, 0x3f, 0x5e, +}; +static const unsigned char kat222_addin0[] = {0}; +static const unsigned char kat222_addin1[] = {0}; +static const unsigned char kat222_retbits[] = { + 0x60, 0x76, 0xb2, 0xc0, 0xf7, 0xde, 0x1d, 0xd3, 0xe4, 0x6a, 0xdb, 0x11, + 0x61, 0xb7, 0x2a, 0x7f, 0x83, 0xb8, 0x77, 0x3f, 0xab, 0x0d, 0xcb, 0x1c, + 0x1f, 0xde, 0x25, 0xdb, 0x0d, 0x09, 0x86, 0x2a, 0xcd, 0xd3, 0x8f, 0x8d, + 0x21, 0x64, 0x90, 0x3a, 0x8e, 0x88, 0x58, 0xf8, 0xa9, 0xb6, 0x1b, 0xd7, + 0xda, 0xe3, 0xf6, 0x06, 0x68, 0xe6, 0xee, 0x26, 0x4b, 0x9f, 0xfa, 0xf5, + 0x78, 0xb5, 0x56, 0x46, +}; +static const struct drbg_kat_no_reseed kat222_t = { + 11, kat222_entropyin, kat222_nonce, kat222_persstr, + kat222_addin0, kat222_addin1, kat222_retbits +}; +static const struct drbg_kat kat222 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat222_t +}; + +static const unsigned char kat223_entropyin[] = { + 0xac, 0xf7, 0x62, 0x38, 0x39, 0xb9, 0x4b, 0xd7, 0xa8, 0x93, 0xc2, 0x87, + 0x61, 0x6c, 0xdb, 0x6a, +}; +static const unsigned char kat223_nonce[] = { + 0xa1, 0xf6, 0x03, 0x9f, 0x91, 0xc1, 0x76, 0x23, +}; +static const unsigned char kat223_persstr[] = { + 0x5f, 0x9c, 0x69, 0xde, 0x2c, 0x32, 0x87, 0x3f, 0x67, 0x9d, 0x17, 0x68, + 0xef, 0x3c, 0x70, 0xfb, +}; +static const unsigned char kat223_addin0[] = {0}; +static const unsigned char kat223_addin1[] = {0}; +static const unsigned char kat223_retbits[] = { + 0xf6, 0xab, 0xbf, 0xfd, 0x79, 0x65, 0x64, 0x94, 0x36, 0xb4, 0x8b, 0x09, + 0x20, 0x86, 0xcd, 0xf0, 0x50, 0x2f, 0x52, 0xc8, 0x7c, 0x8f, 0xdc, 0x8f, + 0x6d, 0x49, 0xf0, 0x84, 0x33, 0xa2, 0x02, 0xd8, 0xbe, 0x44, 0xf6, 0x56, + 0x2a, 0xce, 0x58, 0x0e, 0x80, 0x75, 0xf0, 0xbc, 0x67, 0x0b, 0x2e, 0x9d, + 0x95, 0x1f, 0x15, 0xf8, 0x4d, 0x82, 0xaf, 0xe6, 0xb8, 0x32, 0x76, 0x5e, + 0xca, 0xb0, 0x37, 0xee, +}; +static const struct drbg_kat_no_reseed kat223_t = { + 12, kat223_entropyin, kat223_nonce, kat223_persstr, + kat223_addin0, kat223_addin1, kat223_retbits +}; +static const struct drbg_kat kat223 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat223_t +}; + +static const unsigned char kat224_entropyin[] = { + 0xd9, 0x0d, 0x78, 0x6e, 0x9d, 0x19, 0x62, 0x84, 0x3b, 0x02, 0x7a, 0xa0, + 0xe8, 0x59, 0x8f, 0xd4, +}; +static const unsigned char kat224_nonce[] = { + 0x04, 0x17, 0xf1, 0x4f, 0x96, 0xf2, 0x02, 0x9c, +}; +static const unsigned char kat224_persstr[] = { + 0xec, 0x5c, 0x55, 0x14, 0x5a, 0x4f, 0x95, 0x52, 0xf2, 0x51, 0xf7, 0xdf, + 0xb0, 0x17, 0xc1, 0xd4, +}; +static const unsigned char kat224_addin0[] = {0}; +static const unsigned char kat224_addin1[] = {0}; +static const unsigned char kat224_retbits[] = { + 0xfe, 0x2c, 0xa4, 0x44, 0x55, 0xa5, 0xe7, 0xde, 0x70, 0x8a, 0x71, 0x0a, + 0xb6, 0x46, 0xcf, 0xcf, 0xbc, 0x87, 0xd6, 0x78, 0xb3, 0xe9, 0x41, 0x06, + 0x3f, 0xa7, 0x01, 0xda, 0xc7, 0xcb, 0x4f, 0x09, 0x53, 0xaf, 0x8f, 0xce, + 0x45, 0x8c, 0xee, 0x54, 0x9f, 0x53, 0x7f, 0xa7, 0x71, 0xb8, 0x9b, 0x04, + 0x94, 0xc0, 0xbb, 0x5c, 0xfd, 0x35, 0xbf, 0x67, 0xf4, 0xb2, 0x70, 0xd6, + 0x20, 0x5f, 0x47, 0x03, +}; +static const struct drbg_kat_no_reseed kat224_t = { + 13, kat224_entropyin, kat224_nonce, kat224_persstr, + kat224_addin0, kat224_addin1, kat224_retbits +}; +static const struct drbg_kat kat224 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat224_t +}; + +static const unsigned char kat225_entropyin[] = { + 0x1c, 0xdb, 0x74, 0x45, 0x59, 0xa8, 0x2c, 0x62, 0xfb, 0x3b, 0x15, 0xa2, + 0xa3, 0xaa, 0xd1, 0x89, +}; +static const unsigned char kat225_nonce[] = { + 0x43, 0x43, 0x2c, 0xe3, 0x0a, 0xe7, 0xf9, 0x6b, +}; +static const unsigned char kat225_persstr[] = { + 0xf5, 0x9a, 0xd9, 0x93, 0x9f, 0xcd, 0x6c, 0x0f, 0x47, 0x8c, 0xc5, 0x08, + 0x39, 0xf8, 0xff, 0xce, +}; +static const unsigned char kat225_addin0[] = {0}; +static const unsigned char kat225_addin1[] = {0}; +static const unsigned char kat225_retbits[] = { + 0x91, 0xb9, 0xeb, 0xeb, 0x92, 0x9d, 0xc6, 0x99, 0x94, 0x91, 0x22, 0x97, + 0x0b, 0x21, 0x77, 0xd5, 0xd5, 0xb7, 0x05, 0x04, 0x2d, 0x3a, 0x0d, 0x60, + 0xd7, 0xd3, 0xbb, 0x21, 0x8b, 0x7a, 0x69, 0xe1, 0xcd, 0x68, 0x64, 0xb8, + 0xa2, 0x68, 0xca, 0x78, 0xc8, 0x34, 0x23, 0x2d, 0x0c, 0xb8, 0x8f, 0x93, + 0x77, 0x30, 0x08, 0x4b, 0x1e, 0xc7, 0xd2, 0x86, 0x7f, 0xbc, 0x85, 0x0e, + 0x04, 0x05, 0x03, 0x24, +}; +static const struct drbg_kat_no_reseed kat225_t = { + 14, kat225_entropyin, kat225_nonce, kat225_persstr, + kat225_addin0, kat225_addin1, kat225_retbits +}; +static const struct drbg_kat kat225 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat225_t +}; + +static const unsigned char kat226_entropyin[] = { + 0x71, 0xba, 0x02, 0x9a, 0x7a, 0x92, 0x39, 0x1b, 0x3f, 0x29, 0x4f, 0x2f, + 0xbf, 0x57, 0x27, 0xab, +}; +static const unsigned char kat226_nonce[] = { + 0xf0, 0xe9, 0x12, 0x78, 0x8f, 0x98, 0x27, 0xff, +}; +static const unsigned char kat226_persstr[] = { + 0x23, 0xf3, 0x69, 0x80, 0xda, 0x40, 0x16, 0x64, 0x2c, 0x81, 0x0d, 0xa2, + 0x99, 0x0a, 0xa2, 0x5e, +}; +static const unsigned char kat226_addin0[] = { + 0x59, 0xab, 0x41, 0xb2, 0x4e, 0xe8, 0xe2, 0x71, 0xe2, 0x53, 0xc6, 0xcc, + 0x40, 0x48, 0x7c, 0xb5, +}; +static const unsigned char kat226_addin1[] = { + 0x91, 0x64, 0xf0, 0x28, 0x60, 0x77, 0x3e, 0x3b, 0x96, 0xd8, 0x5b, 0x37, + 0x38, 0x38, 0x50, 0x66, +}; +static const unsigned char kat226_retbits[] = { + 0xde, 0x1b, 0x8a, 0x25, 0x95, 0x89, 0x23, 0x54, 0xda, 0x47, 0xb4, 0xea, + 0xaf, 0x9d, 0xdc, 0xec, 0x64, 0xa9, 0x61, 0x01, 0x17, 0xb0, 0x5e, 0x40, + 0xd0, 0x76, 0x60, 0xa8, 0x0b, 0xcf, 0x82, 0x5e, 0xef, 0xdb, 0xd2, 0x8e, + 0x07, 0xd5, 0x96, 0x81, 0xf9, 0xe0, 0x03, 0x7b, 0xdb, 0x72, 0x5f, 0xe6, + 0xce, 0x84, 0x6d, 0x82, 0x4b, 0x3b, 0x34, 0xc2, 0xc2, 0x1a, 0x48, 0xf8, + 0x89, 0x5f, 0x9f, 0x5e, +}; +static const struct drbg_kat_no_reseed kat226_t = { + 0, kat226_entropyin, kat226_nonce, kat226_persstr, + kat226_addin0, kat226_addin1, kat226_retbits +}; +static const struct drbg_kat kat226 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat226_t +}; + +static const unsigned char kat227_entropyin[] = { + 0x67, 0x73, 0x94, 0xf0, 0x3e, 0xac, 0xb5, 0xa1, 0x37, 0x51, 0x5f, 0xcd, + 0x3e, 0xa2, 0xbb, 0xc7, +}; +static const unsigned char kat227_nonce[] = { + 0x9a, 0x5c, 0x1c, 0xea, 0x26, 0xef, 0xbf, 0x76, +}; +static const unsigned char kat227_persstr[] = { + 0xdd, 0x73, 0xb1, 0x8e, 0xee, 0x62, 0x94, 0x34, 0x9a, 0xa6, 0x45, 0x6d, + 0xaa, 0x77, 0xd2, 0x4f, +}; +static const unsigned char kat227_addin0[] = { + 0xeb, 0x70, 0x19, 0x82, 0x6d, 0xb3, 0x27, 0x17, 0xa5, 0x73, 0x5e, 0xb4, + 0x07, 0x73, 0xea, 0x56, +}; +static const unsigned char kat227_addin1[] = { + 0xb6, 0x2d, 0xe2, 0xb4, 0xaa, 0x8d, 0x97, 0xf5, 0x26, 0xdd, 0xba, 0x44, + 0x09, 0xf5, 0xaa, 0x26, +}; +static const unsigned char kat227_retbits[] = { + 0x22, 0x22, 0xa6, 0xbb, 0x0f, 0xfe, 0x14, 0xd2, 0xf7, 0x89, 0xe6, 0x4d, + 0xcd, 0xf4, 0x78, 0x51, 0xa6, 0xc3, 0xa6, 0xe1, 0xd0, 0x83, 0x7d, 0x8b, + 0x51, 0x1a, 0xa2, 0xf5, 0x6a, 0x6d, 0x08, 0x53, 0x4c, 0x97, 0xf4, 0xb1, + 0x2a, 0x77, 0x44, 0x7d, 0xb2, 0x04, 0x09, 0xd3, 0x27, 0xfc, 0x08, 0x81, + 0x62, 0xc0, 0xf2, 0xc5, 0x9f, 0xe4, 0x7e, 0x8c, 0x92, 0xae, 0x5d, 0xcd, + 0xd7, 0x38, 0xc7, 0x68, +}; +static const struct drbg_kat_no_reseed kat227_t = { + 1, kat227_entropyin, kat227_nonce, kat227_persstr, + kat227_addin0, kat227_addin1, kat227_retbits +}; +static const struct drbg_kat kat227 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat227_t +}; + +static const unsigned char kat228_entropyin[] = { + 0x3f, 0x51, 0xf6, 0xcc, 0xf2, 0x24, 0x79, 0xed, 0x89, 0x1b, 0x89, 0x1f, + 0xc4, 0xc6, 0xb5, 0x51, +}; +static const unsigned char kat228_nonce[] = { + 0x19, 0xe0, 0x75, 0x4f, 0x7b, 0xfa, 0x0c, 0xef, +}; +static const unsigned char kat228_persstr[] = { + 0x40, 0x2a, 0x1d, 0xab, 0x45, 0x0e, 0xa9, 0x04, 0x97, 0x38, 0x78, 0x2a, + 0x93, 0x34, 0x7a, 0xff, +}; +static const unsigned char kat228_addin0[] = { + 0x52, 0xc9, 0x0f, 0x57, 0x1c, 0x8c, 0x63, 0xf0, 0xdc, 0xdb, 0xd4, 0xe6, + 0xc9, 0x65, 0x34, 0x78, +}; +static const unsigned char kat228_addin1[] = { + 0x8b, 0xe6, 0x3b, 0x5e, 0xf2, 0x12, 0x69, 0x4e, 0xdb, 0xc2, 0xc8, 0xde, + 0xc9, 0xa0, 0x58, 0x7b, +}; +static const unsigned char kat228_retbits[] = { + 0x1a, 0xbf, 0xe2, 0xd7, 0x21, 0x93, 0xb6, 0xe3, 0xd9, 0xbe, 0x85, 0x10, + 0x7e, 0xce, 0x8f, 0xea, 0x5d, 0x22, 0x95, 0x68, 0x56, 0x8c, 0x93, 0xeb, + 0x5e, 0xae, 0xd4, 0x63, 0xbf, 0x2b, 0x79, 0xcf, 0xdb, 0xd0, 0x47, 0x40, + 0x2f, 0xf4, 0xe4, 0x22, 0x34, 0xc4, 0xe3, 0xe1, 0x50, 0xc1, 0xf0, 0xe8, + 0x24, 0x00, 0xf6, 0xa5, 0x9e, 0xeb, 0xd0, 0x92, 0xee, 0x73, 0xad, 0xf1, + 0xff, 0xca, 0x64, 0x94, +}; +static const struct drbg_kat_no_reseed kat228_t = { + 2, kat228_entropyin, kat228_nonce, kat228_persstr, + kat228_addin0, kat228_addin1, kat228_retbits +}; +static const struct drbg_kat kat228 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat228_t +}; + +static const unsigned char kat229_entropyin[] = { + 0x5a, 0x01, 0xb6, 0x38, 0x31, 0x1a, 0x29, 0x6b, 0xfe, 0x1f, 0x6e, 0x18, + 0x0f, 0x24, 0x3d, 0x5b, +}; +static const unsigned char kat229_nonce[] = { + 0x16, 0xbb, 0x4e, 0x36, 0xfd, 0x04, 0xb0, 0x5b, +}; +static const unsigned char kat229_persstr[] = { + 0xd5, 0x44, 0x0a, 0x6f, 0xa4, 0xd3, 0x45, 0xcb, 0x84, 0xd5, 0x6d, 0xec, + 0xaa, 0x3d, 0xbd, 0x18, +}; +static const unsigned char kat229_addin0[] = { + 0xbd, 0x3e, 0x11, 0xdb, 0xb9, 0xf4, 0x0a, 0x13, 0x51, 0xc8, 0xbf, 0x7b, + 0xd8, 0x94, 0xad, 0x20, +}; +static const unsigned char kat229_addin1[] = { + 0xe0, 0x4a, 0x83, 0xa5, 0x18, 0x75, 0x15, 0x10, 0x4a, 0xa1, 0xe7, 0xf4, + 0x34, 0xff, 0x43, 0x36, +}; +static const unsigned char kat229_retbits[] = { + 0x27, 0x28, 0xfc, 0xc1, 0xfe, 0xa7, 0xfe, 0x63, 0x5d, 0xdf, 0xed, 0x8b, + 0xb3, 0xf7, 0xca, 0x29, 0xe1, 0xcb, 0xd8, 0x51, 0x6a, 0x2b, 0x5e, 0xab, + 0xb7, 0xd0, 0x91, 0xe6, 0xe7, 0xf2, 0x04, 0x6a, 0x80, 0x77, 0xef, 0x6d, + 0x1a, 0x90, 0x16, 0x5f, 0x18, 0x9d, 0x07, 0xa8, 0x97, 0xcd, 0xfc, 0x06, + 0x88, 0x2a, 0xdb, 0x78, 0x1b, 0xe5, 0x89, 0xe0, 0xe5, 0xeb, 0x2d, 0xc9, + 0x7b, 0xe6, 0x54, 0x6b, +}; +static const struct drbg_kat_no_reseed kat229_t = { + 3, kat229_entropyin, kat229_nonce, kat229_persstr, + kat229_addin0, kat229_addin1, kat229_retbits +}; +static const struct drbg_kat kat229 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat229_t +}; + +static const unsigned char kat230_entropyin[] = { + 0x97, 0xe4, 0x15, 0xb3, 0xca, 0x11, 0x0a, 0x80, 0x9e, 0xa6, 0x00, 0xa1, + 0x3e, 0x47, 0xaa, 0x04, +}; +static const unsigned char kat230_nonce[] = { + 0x12, 0x6e, 0x16, 0xdc, 0x57, 0x22, 0xa4, 0x49, +}; +static const unsigned char kat230_persstr[] = { + 0xa9, 0xbe, 0x38, 0xe3, 0x01, 0x19, 0x86, 0xb9, 0x04, 0x71, 0x71, 0x93, + 0xec, 0x4a, 0x7d, 0x4c, +}; +static const unsigned char kat230_addin0[] = { + 0x19, 0x68, 0x69, 0x92, 0x21, 0xeb, 0x8b, 0x5e, 0xd0, 0x23, 0xa5, 0xd2, + 0xd2, 0xd8, 0x12, 0x56, +}; +static const unsigned char kat230_addin1[] = { + 0x4b, 0x5e, 0x1b, 0xde, 0x38, 0xb2, 0xa9, 0x79, 0x3b, 0x16, 0x6d, 0x86, + 0x81, 0x6e, 0xd2, 0x31, +}; +static const unsigned char kat230_retbits[] = { + 0x4b, 0xe9, 0x89, 0x89, 0xdf, 0x2f, 0xe6, 0x68, 0x7e, 0x50, 0x88, 0xe5, + 0x06, 0x98, 0x50, 0x7d, 0x91, 0x06, 0x1a, 0x8d, 0x6e, 0xb9, 0x5d, 0x66, + 0x27, 0xd2, 0xb8, 0x57, 0x25, 0x3f, 0x05, 0x3c, 0x99, 0xee, 0x79, 0x84, + 0xa4, 0x98, 0xde, 0x4d, 0xf3, 0x12, 0x44, 0x42, 0x85, 0x6f, 0x18, 0xe9, + 0x8e, 0x66, 0x41, 0xf1, 0x52, 0xcd, 0x12, 0x9b, 0xd0, 0x4e, 0x99, 0x71, + 0x09, 0x30, 0xc3, 0xe1, +}; +static const struct drbg_kat_no_reseed kat230_t = { + 4, kat230_entropyin, kat230_nonce, kat230_persstr, + kat230_addin0, kat230_addin1, kat230_retbits +}; +static const struct drbg_kat kat230 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat230_t +}; + +static const unsigned char kat231_entropyin[] = { + 0xb6, 0xc4, 0xcd, 0x96, 0xf7, 0xfd, 0xe8, 0x3e, 0xb5, 0x71, 0x22, 0x9b, + 0x53, 0x7a, 0xcf, 0x5a, +}; +static const unsigned char kat231_nonce[] = { + 0x4c, 0x4e, 0x0a, 0xac, 0xb5, 0xc5, 0x28, 0xe7, +}; +static const unsigned char kat231_persstr[] = { + 0x5c, 0xe1, 0x09, 0x4d, 0x0d, 0x30, 0x7b, 0x41, 0xdb, 0x9b, 0xf2, 0x6d, + 0xa4, 0x1d, 0xb1, 0x00, +}; +static const unsigned char kat231_addin0[] = { + 0x98, 0x04, 0x7e, 0xe9, 0x87, 0x63, 0x7e, 0x45, 0x84, 0xfe, 0x7f, 0xe2, + 0x86, 0x9c, 0x84, 0x5d, +}; +static const unsigned char kat231_addin1[] = { + 0x17, 0x7e, 0x3c, 0x29, 0xd4, 0xfa, 0xf0, 0x43, 0x07, 0x7f, 0xbe, 0xfe, + 0x0b, 0x99, 0x4b, 0x91, +}; +static const unsigned char kat231_retbits[] = { + 0x5e, 0xaf, 0x01, 0x3f, 0xd3, 0x77, 0x5a, 0x2d, 0x3e, 0x97, 0x16, 0x6d, + 0x23, 0x15, 0x3a, 0x00, 0xf1, 0x86, 0x44, 0x96, 0x3e, 0x69, 0xcb, 0x96, + 0x2a, 0x7b, 0xd2, 0xc3, 0x0a, 0xf9, 0xbd, 0x6a, 0x29, 0xd4, 0xbc, 0x70, + 0x93, 0x0a, 0x92, 0x9b, 0x92, 0x52, 0xd8, 0x08, 0xdb, 0x41, 0x0c, 0x66, + 0x41, 0x23, 0xbd, 0x69, 0xc1, 0xd0, 0xc1, 0xd4, 0xba, 0x3c, 0x7d, 0x8f, + 0xf7, 0xae, 0x00, 0xf0, +}; +static const struct drbg_kat_no_reseed kat231_t = { + 5, kat231_entropyin, kat231_nonce, kat231_persstr, + kat231_addin0, kat231_addin1, kat231_retbits +}; +static const struct drbg_kat kat231 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat231_t +}; + +static const unsigned char kat232_entropyin[] = { + 0x2d, 0x1b, 0x80, 0x61, 0xd7, 0xd5, 0x83, 0xf8, 0x3b, 0xe5, 0x53, 0xc4, + 0x83, 0x72, 0x12, 0xa0, +}; +static const unsigned char kat232_nonce[] = { + 0x62, 0xa1, 0xfa, 0x74, 0x53, 0x62, 0xba, 0xce, +}; +static const unsigned char kat232_persstr[] = { + 0x4d, 0x97, 0x6a, 0xdd, 0x18, 0xd5, 0xe2, 0x48, 0x4f, 0x67, 0xf7, 0xc8, + 0x4c, 0xc6, 0x8b, 0x52, +}; +static const unsigned char kat232_addin0[] = { + 0x57, 0x64, 0xde, 0x5d, 0xb9, 0x7e, 0x22, 0x3c, 0x04, 0x4a, 0x83, 0x3f, + 0xa4, 0x2c, 0xf6, 0x29, +}; +static const unsigned char kat232_addin1[] = { + 0xde, 0xef, 0x8d, 0x58, 0x1f, 0x6e, 0x4f, 0x80, 0x89, 0x92, 0xfd, 0x20, + 0xc0, 0x6e, 0x10, 0x2d, +}; +static const unsigned char kat232_retbits[] = { + 0xac, 0xb7, 0x8f, 0x27, 0x33, 0x50, 0xd4, 0x59, 0xc7, 0x98, 0x09, 0xd8, + 0x9b, 0x40, 0x28, 0x25, 0xbb, 0x00, 0xe3, 0x8a, 0xbd, 0x5e, 0xc1, 0x2f, + 0xea, 0xdc, 0xde, 0xf6, 0x11, 0x46, 0x84, 0xb6, 0xfc, 0xb0, 0xe1, 0x76, + 0xcb, 0xe4, 0x65, 0x91, 0x0f, 0xc2, 0x84, 0x8f, 0x0a, 0x70, 0x88, 0x44, + 0x79, 0x4c, 0x5e, 0xea, 0xfe, 0xad, 0xa7, 0x56, 0x3c, 0x38, 0xc3, 0xee, + 0x63, 0xc9, 0x7e, 0xf9, +}; +static const struct drbg_kat_no_reseed kat232_t = { + 6, kat232_entropyin, kat232_nonce, kat232_persstr, + kat232_addin0, kat232_addin1, kat232_retbits +}; +static const struct drbg_kat kat232 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat232_t +}; + +static const unsigned char kat233_entropyin[] = { + 0xef, 0x30, 0xfd, 0x99, 0x5f, 0xf0, 0xef, 0x44, 0xcc, 0xe6, 0x07, 0x7b, + 0xb2, 0x2d, 0xe6, 0x99, +}; +static const unsigned char kat233_nonce[] = { + 0x85, 0xc7, 0xd6, 0x05, 0x4a, 0x57, 0x76, 0x22, +}; +static const unsigned char kat233_persstr[] = { + 0x5d, 0x59, 0xb3, 0xf0, 0x25, 0x00, 0x60, 0xe2, 0x20, 0x02, 0xad, 0xf7, + 0x06, 0x48, 0x6d, 0x85, +}; +static const unsigned char kat233_addin0[] = { + 0x79, 0x46, 0x81, 0xf7, 0x5d, 0xf9, 0xc9, 0x88, 0x30, 0x3f, 0x75, 0x1f, + 0xb7, 0xe7, 0xfb, 0xa9, +}; +static const unsigned char kat233_addin1[] = { + 0x7b, 0x13, 0x74, 0xc8, 0x47, 0x25, 0x37, 0xfa, 0x31, 0x11, 0xeb, 0x44, + 0xe5, 0x2a, 0xfa, 0x23, +}; +static const unsigned char kat233_retbits[] = { + 0xb0, 0x49, 0x50, 0xf1, 0xa3, 0x57, 0x52, 0xc0, 0x67, 0xbc, 0xe8, 0x35, + 0x76, 0x35, 0xf4, 0x70, 0xd1, 0x0b, 0x3b, 0xae, 0x47, 0x46, 0x6f, 0xd1, + 0x16, 0x6f, 0x9f, 0xfa, 0xef, 0xbd, 0x32, 0x4b, 0x26, 0x53, 0xc7, 0xf3, + 0x0e, 0xe4, 0x84, 0x86, 0x73, 0xd7, 0x04, 0x18, 0x65, 0xd9, 0x95, 0x45, + 0x12, 0x58, 0x94, 0x92, 0x98, 0x9a, 0x00, 0xea, 0x4d, 0xa1, 0xdd, 0x28, + 0x9e, 0x87, 0x17, 0xc3, +}; +static const struct drbg_kat_no_reseed kat233_t = { + 7, kat233_entropyin, kat233_nonce, kat233_persstr, + kat233_addin0, kat233_addin1, kat233_retbits +}; +static const struct drbg_kat kat233 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat233_t +}; + +static const unsigned char kat234_entropyin[] = { + 0xee, 0x4b, 0xde, 0x4f, 0x71, 0x2d, 0xc9, 0xfc, 0x1f, 0x2c, 0x01, 0xf1, + 0xc6, 0x08, 0x6f, 0x35, +}; +static const unsigned char kat234_nonce[] = { + 0xf6, 0x83, 0x7c, 0xfe, 0x53, 0xec, 0x48, 0x74, +}; +static const unsigned char kat234_persstr[] = { + 0xfd, 0xb8, 0xf6, 0x4d, 0x99, 0xbd, 0x71, 0x7e, 0xee, 0x3d, 0x89, 0x35, + 0x3b, 0x73, 0xc9, 0xc1, +}; +static const unsigned char kat234_addin0[] = { + 0x09, 0xe5, 0xba, 0x3b, 0x23, 0x89, 0x5c, 0x5d, 0xff, 0x89, 0x38, 0x2d, + 0x5e, 0x91, 0x70, 0x0d, +}; +static const unsigned char kat234_addin1[] = { + 0xeb, 0x1a, 0x98, 0xde, 0x89, 0x62, 0xbb, 0xc4, 0xcb, 0x75, 0xcf, 0x0b, + 0xf0, 0xf8, 0xdf, 0xa4, +}; +static const unsigned char kat234_retbits[] = { + 0xaa, 0xcd, 0xee, 0x0f, 0x3d, 0x1f, 0x95, 0x5f, 0x89, 0x6d, 0x5a, 0x5a, + 0x25, 0x30, 0xfd, 0x80, 0x9a, 0x20, 0x2c, 0x92, 0x1d, 0x90, 0xa9, 0xcf, + 0x59, 0x3e, 0x03, 0x93, 0x4e, 0x07, 0xc3, 0x92, 0xcc, 0x55, 0x54, 0xf5, + 0x99, 0x21, 0xb4, 0x0c, 0xc0, 0x03, 0xfc, 0x26, 0x82, 0xca, 0xef, 0x9e, + 0x6e, 0x61, 0xee, 0x4a, 0xbf, 0x45, 0x14, 0x8e, 0x5f, 0xf3, 0xff, 0x65, + 0x87, 0x1b, 0x0d, 0x81, +}; +static const struct drbg_kat_no_reseed kat234_t = { + 8, kat234_entropyin, kat234_nonce, kat234_persstr, + kat234_addin0, kat234_addin1, kat234_retbits +}; +static const struct drbg_kat kat234 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat234_t +}; + +static const unsigned char kat235_entropyin[] = { + 0xa6, 0xaa, 0x94, 0x5e, 0xbe, 0x19, 0x29, 0x98, 0xbe, 0x8e, 0x24, 0x7d, + 0xb9, 0x9c, 0xe7, 0xd0, +}; +static const unsigned char kat235_nonce[] = { + 0x7d, 0xff, 0x26, 0xe9, 0x7a, 0x0a, 0x8d, 0xba, +}; +static const unsigned char kat235_persstr[] = { + 0x4b, 0x6c, 0xcf, 0xac, 0x6c, 0x47, 0xfd, 0x65, 0x64, 0xbc, 0xfd, 0x94, + 0xfe, 0x9e, 0xb2, 0x8d, +}; +static const unsigned char kat235_addin0[] = { + 0x07, 0x83, 0x70, 0x53, 0xd2, 0x4c, 0xd0, 0xf4, 0xf4, 0x32, 0x7e, 0x97, + 0xd2, 0x9d, 0x67, 0x95, +}; +static const unsigned char kat235_addin1[] = { + 0x3b, 0x17, 0x2d, 0xdc, 0x8d, 0x38, 0x3b, 0x98, 0xd4, 0x08, 0x39, 0x4c, + 0x0b, 0xa1, 0x52, 0xc1, +}; +static const unsigned char kat235_retbits[] = { + 0xd9, 0x0a, 0xa4, 0x22, 0xa8, 0xd2, 0xb8, 0x6e, 0x1f, 0x09, 0xde, 0x29, + 0xdd, 0x16, 0xd4, 0x60, 0x50, 0x98, 0xa4, 0x5a, 0xea, 0xbe, 0x69, 0xc6, + 0xbc, 0x8a, 0xe0, 0xc8, 0xf0, 0x1b, 0x7c, 0xc7, 0x3f, 0x88, 0x50, 0xec, + 0x0c, 0x47, 0xd6, 0x16, 0xcb, 0x6c, 0xca, 0xb7, 0x7f, 0x22, 0x07, 0x99, + 0x38, 0xed, 0x11, 0xb4, 0x8f, 0xcf, 0x3c, 0xf4, 0x6a, 0x3f, 0x64, 0x2f, + 0x05, 0xae, 0xb8, 0xb7, +}; +static const struct drbg_kat_no_reseed kat235_t = { + 9, kat235_entropyin, kat235_nonce, kat235_persstr, + kat235_addin0, kat235_addin1, kat235_retbits +}; +static const struct drbg_kat kat235 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat235_t +}; + +static const unsigned char kat236_entropyin[] = { + 0x7e, 0xb5, 0x0f, 0x53, 0x2b, 0x00, 0x76, 0x52, 0x8e, 0x2d, 0x1f, 0x26, + 0x6b, 0x38, 0x14, 0x06, +}; +static const unsigned char kat236_nonce[] = { + 0x2a, 0x5e, 0x92, 0xe8, 0xfb, 0xf0, 0xe9, 0xee, +}; +static const unsigned char kat236_persstr[] = { + 0x7e, 0xcb, 0xfd, 0x22, 0x98, 0x87, 0x2a, 0x79, 0x34, 0xe4, 0xed, 0x61, + 0xa9, 0xf0, 0x04, 0xcd, +}; +static const unsigned char kat236_addin0[] = { + 0x17, 0x9f, 0xa5, 0xd2, 0xeb, 0x90, 0xd4, 0x15, 0x48, 0x19, 0x2c, 0xc7, + 0x44, 0x98, 0xbd, 0x42, +}; +static const unsigned char kat236_addin1[] = { + 0x92, 0xdc, 0x9d, 0x60, 0xd2, 0xe3, 0x6d, 0x4b, 0xfb, 0x97, 0x90, 0x78, + 0x3d, 0x1c, 0x58, 0x19, +}; +static const unsigned char kat236_retbits[] = { + 0x9a, 0x17, 0x1b, 0x50, 0x48, 0xba, 0xf1, 0x37, 0x5c, 0x14, 0x07, 0xa8, + 0xdc, 0x1c, 0x8e, 0xda, 0x53, 0x2d, 0xf5, 0x52, 0x96, 0x77, 0x06, 0x88, + 0x4e, 0x5f, 0xe3, 0xd4, 0x67, 0x86, 0x07, 0x74, 0x48, 0xf2, 0x8f, 0x89, + 0xb3, 0x8e, 0xb7, 0x64, 0xdf, 0x7e, 0x0e, 0x3b, 0x40, 0x1a, 0xed, 0x3a, + 0x23, 0x06, 0xfa, 0x2b, 0xed, 0xe3, 0x82, 0xaa, 0xe1, 0x08, 0xe1, 0x6a, + 0xb4, 0x85, 0x69, 0x1e, +}; +static const struct drbg_kat_no_reseed kat236_t = { + 10, kat236_entropyin, kat236_nonce, kat236_persstr, + kat236_addin0, kat236_addin1, kat236_retbits +}; +static const struct drbg_kat kat236 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat236_t +}; + +static const unsigned char kat237_entropyin[] = { + 0x7d, 0x33, 0x40, 0xa8, 0xb1, 0xe1, 0x51, 0x71, 0xee, 0x34, 0x03, 0xcc, + 0x19, 0xd3, 0xfe, 0xa9, +}; +static const unsigned char kat237_nonce[] = { + 0xfd, 0xe6, 0x97, 0xac, 0xc7, 0xe7, 0x2b, 0x75, +}; +static const unsigned char kat237_persstr[] = { + 0xa1, 0x28, 0x79, 0x71, 0x79, 0xc5, 0xca, 0xd6, 0xa9, 0xb4, 0x76, 0xff, + 0x99, 0xf9, 0x82, 0x8f, +}; +static const unsigned char kat237_addin0[] = { + 0x2d, 0xfa, 0x30, 0x85, 0xfa, 0x02, 0x3b, 0x53, 0x61, 0xdb, 0xa7, 0x9d, + 0x40, 0x77, 0x38, 0xbc, +}; +static const unsigned char kat237_addin1[] = { + 0xae, 0xf5, 0x3a, 0xf3, 0xbe, 0x89, 0x41, 0xe7, 0xd2, 0x71, 0x3c, 0x71, + 0x28, 0x41, 0xdc, 0x68, +}; +static const unsigned char kat237_retbits[] = { + 0xc1, 0xf7, 0x25, 0xb2, 0x90, 0xed, 0x13, 0x10, 0xdd, 0x3f, 0x39, 0xe9, + 0x9c, 0x7a, 0x65, 0xb8, 0x01, 0xb4, 0x74, 0x2f, 0x50, 0x66, 0xb3, 0xc7, + 0x1b, 0xb4, 0x6f, 0x3d, 0xe7, 0x4d, 0xd2, 0xca, 0xae, 0xa4, 0x08, 0x21, + 0x17, 0x4f, 0x67, 0x67, 0x22, 0xdb, 0x38, 0xfe, 0xda, 0x5d, 0x10, 0x96, + 0xc7, 0x9a, 0xd1, 0xea, 0xbe, 0xff, 0x78, 0xde, 0xf0, 0x84, 0x7a, 0x24, + 0x23, 0xbb, 0x46, 0x02, +}; +static const struct drbg_kat_no_reseed kat237_t = { + 11, kat237_entropyin, kat237_nonce, kat237_persstr, + kat237_addin0, kat237_addin1, kat237_retbits +}; +static const struct drbg_kat kat237 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat237_t +}; + +static const unsigned char kat238_entropyin[] = { + 0x05, 0x71, 0xd4, 0x1f, 0x98, 0xb7, 0x1e, 0xad, 0x41, 0x5f, 0xcb, 0x97, + 0xfd, 0x05, 0xa1, 0xf1, +}; +static const unsigned char kat238_nonce[] = { + 0x42, 0x16, 0x18, 0x2c, 0x09, 0x4c, 0x4b, 0x14, +}; +static const unsigned char kat238_persstr[] = { + 0x6b, 0xed, 0x5c, 0xc7, 0x26, 0x60, 0xf7, 0xfd, 0x4c, 0x32, 0xab, 0xe5, + 0xcb, 0x1a, 0xef, 0xed, +}; +static const unsigned char kat238_addin0[] = { + 0xb1, 0x98, 0x97, 0x3f, 0x68, 0x9c, 0x37, 0xeb, 0x63, 0x76, 0xa0, 0x88, + 0xa7, 0xc7, 0x3e, 0x97, +}; +static const unsigned char kat238_addin1[] = { + 0xdf, 0xf3, 0xa3, 0xb0, 0x72, 0x43, 0x02, 0xf8, 0x3b, 0x85, 0x4f, 0x2f, + 0xa8, 0xec, 0x34, 0x96, +}; +static const unsigned char kat238_retbits[] = { + 0x66, 0x7d, 0xdb, 0x87, 0x07, 0x9b, 0x39, 0x49, 0x03, 0x0f, 0x41, 0xff, + 0x91, 0xb2, 0xec, 0x0a, 0x59, 0x8a, 0xb2, 0xd5, 0x5c, 0x99, 0xd0, 0x17, + 0xe4, 0xfc, 0x79, 0xe9, 0x4f, 0x15, 0xb4, 0x10, 0xcc, 0x29, 0x70, 0xff, + 0x01, 0x74, 0x82, 0xb2, 0x9e, 0xef, 0x2c, 0x25, 0x0a, 0x09, 0x12, 0x8a, + 0x18, 0x60, 0x5e, 0x0f, 0xa1, 0x4a, 0xcc, 0xe3, 0x7b, 0x89, 0xc4, 0x38, + 0xc8, 0x21, 0x31, 0x94, +}; +static const struct drbg_kat_no_reseed kat238_t = { + 12, kat238_entropyin, kat238_nonce, kat238_persstr, + kat238_addin0, kat238_addin1, kat238_retbits +}; +static const struct drbg_kat kat238 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat238_t +}; + +static const unsigned char kat239_entropyin[] = { + 0x8e, 0xe3, 0xed, 0xc1, 0xc6, 0x4e, 0xa7, 0xd6, 0xf0, 0xba, 0xb9, 0x73, + 0x1e, 0x5d, 0x17, 0x62, +}; +static const unsigned char kat239_nonce[] = { + 0x92, 0xa1, 0x42, 0x26, 0x08, 0x7a, 0xfa, 0xfb, +}; +static const unsigned char kat239_persstr[] = { + 0x2a, 0x24, 0x04, 0xbe, 0xf6, 0xf7, 0x11, 0x34, 0x17, 0xdf, 0x0b, 0x18, + 0x54, 0xd8, 0x47, 0x3d, +}; +static const unsigned char kat239_addin0[] = { + 0xa2, 0x78, 0xe8, 0xa5, 0x0b, 0xcc, 0xd6, 0x12, 0x97, 0x4d, 0x02, 0x6e, + 0xde, 0xf7, 0x50, 0x1c, +}; +static const unsigned char kat239_addin1[] = { + 0xe7, 0x48, 0xf5, 0xe2, 0xf9, 0x8b, 0x48, 0x8e, 0x74, 0xb0, 0xbb, 0xd5, + 0x59, 0xb5, 0xba, 0xbc, +}; +static const unsigned char kat239_retbits[] = { + 0x81, 0xec, 0xf8, 0xb7, 0xb0, 0x7c, 0x64, 0xce, 0xd1, 0xa4, 0x9b, 0x21, + 0x33, 0x54, 0x99, 0x5a, 0x7b, 0xf1, 0x68, 0xd3, 0x8a, 0x83, 0x0b, 0x15, + 0x70, 0x41, 0x4f, 0x5a, 0x20, 0x15, 0x49, 0x9e, 0x09, 0xaf, 0xf3, 0xbf, + 0x58, 0x37, 0x19, 0x88, 0x6f, 0xe9, 0x9d, 0x00, 0xe6, 0xd9, 0xeb, 0x9a, + 0x4f, 0xde, 0x29, 0xd8, 0xd9, 0x78, 0x8d, 0xd6, 0xff, 0xe2, 0x09, 0x83, + 0x9a, 0x73, 0x9c, 0xd2, +}; +static const struct drbg_kat_no_reseed kat239_t = { + 13, kat239_entropyin, kat239_nonce, kat239_persstr, + kat239_addin0, kat239_addin1, kat239_retbits +}; +static const struct drbg_kat kat239 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat239_t +}; + +static const unsigned char kat240_entropyin[] = { + 0x06, 0x18, 0xc2, 0x88, 0x49, 0x14, 0x71, 0x22, 0x26, 0xad, 0x4e, 0x95, + 0x80, 0xc0, 0x95, 0x23, +}; +static const unsigned char kat240_nonce[] = { + 0x6e, 0xbc, 0x4d, 0x5d, 0xb4, 0x76, 0x7f, 0x5f, +}; +static const unsigned char kat240_persstr[] = { + 0x7a, 0x82, 0x50, 0xa3, 0xbc, 0xbd, 0x81, 0x54, 0xc5, 0x05, 0x8b, 0x55, + 0x1c, 0xf2, 0x20, 0x36, +}; +static const unsigned char kat240_addin0[] = { + 0x30, 0x26, 0x05, 0x32, 0xb5, 0x6c, 0x0f, 0x8e, 0xde, 0x9b, 0x72, 0x5c, + 0x32, 0x20, 0x8f, 0x31, +}; +static const unsigned char kat240_addin1[] = { + 0x1e, 0x90, 0xdc, 0x4f, 0x67, 0xc1, 0xcb, 0x2d, 0xa1, 0x2d, 0x10, 0xa0, + 0xb0, 0xfb, 0xb6, 0x26, +}; +static const unsigned char kat240_retbits[] = { + 0x49, 0x93, 0x57, 0x58, 0x80, 0xd0, 0x01, 0x45, 0xc1, 0xf9, 0x67, 0xdb, + 0x25, 0xcc, 0xc8, 0xf3, 0x4c, 0xf0, 0xc6, 0x2a, 0xcc, 0xcb, 0xcf, 0xa0, + 0xe7, 0x2c, 0x89, 0xea, 0xcf, 0x9f, 0xbe, 0x56, 0x14, 0x50, 0x74, 0xe4, + 0xd4, 0x7f, 0x2b, 0x76, 0x74, 0xf4, 0xb0, 0xe0, 0x7e, 0xe3, 0xb5, 0x10, + 0x4b, 0xf7, 0xcc, 0xfe, 0xd8, 0x00, 0x1d, 0x67, 0x11, 0xc6, 0x6f, 0xda, + 0x94, 0x44, 0xfb, 0x8a, +}; +static const struct drbg_kat_no_reseed kat240_t = { + 14, kat240_entropyin, kat240_nonce, kat240_persstr, + kat240_addin0, kat240_addin1, kat240_retbits +}; +static const struct drbg_kat kat240 = { + NO_RESEED, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat240_t +}; + +static const unsigned char kat241_entropyin[] = { + 0xc3, 0x5c, 0x2f, 0xa2, 0xa8, 0x9d, 0x52, 0xa1, 0x1f, 0xa3, 0x2a, 0xa9, + 0x6c, 0x95, 0xb8, 0xf1, 0xc9, 0xa8, 0xf9, 0xcb, 0x24, 0x5a, 0x8b, 0x40, +}; +static const unsigned char kat241_nonce[] = { + 0xf3, 0xa6, 0xe5, 0xa7, 0xfb, 0xd9, 0xd3, 0xc6, 0x8e, 0x27, 0x7b, 0xa9, + 0xac, 0x9b, 0xbb, 0x00, +}; +static const unsigned char kat241_persstr[] = {0}; +static const unsigned char kat241_addin0[] = {0}; +static const unsigned char kat241_addin1[] = {0}; +static const unsigned char kat241_retbits[] = { + 0x8c, 0x2e, 0x72, 0xab, 0xfd, 0x9b, 0xb8, 0x28, 0x4d, 0xb7, 0x9e, 0x17, + 0xa4, 0x3a, 0x31, 0x46, 0xcd, 0x76, 0x94, 0xe3, 0x52, 0x49, 0xfc, 0x33, + 0x83, 0x91, 0x4a, 0x71, 0x17, 0xf4, 0x13, 0x68, 0xe6, 0xd4, 0xf1, 0x48, + 0xff, 0x49, 0xbf, 0x29, 0x07, 0x6b, 0x50, 0x15, 0xc5, 0x9f, 0x45, 0x79, + 0x45, 0x66, 0x2e, 0x3d, 0x35, 0x03, 0x84, 0x3f, 0x4a, 0xa5, 0xa3, 0xdf, + 0x9a, 0x9d, 0xf1, 0x0d, +}; +static const struct drbg_kat_no_reseed kat241_t = { + 0, kat241_entropyin, kat241_nonce, kat241_persstr, + kat241_addin0, kat241_addin1, kat241_retbits +}; +static const struct drbg_kat kat241 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat241_t +}; + +static const unsigned char kat242_entropyin[] = { + 0xc1, 0x5f, 0x9f, 0xc5, 0x74, 0x1f, 0x2c, 0xac, 0xe0, 0xb5, 0x8d, 0x72, + 0x49, 0xbd, 0x03, 0x77, 0xbd, 0x57, 0x08, 0xe3, 0x65, 0x88, 0x4b, 0x59, +}; +static const unsigned char kat242_nonce[] = { + 0xc3, 0x34, 0x3e, 0x3a, 0x11, 0xb2, 0xdc, 0x15, 0x26, 0x1c, 0x51, 0x75, + 0x1f, 0x51, 0x3b, 0x60, +}; +static const unsigned char kat242_persstr[] = {0}; +static const unsigned char kat242_addin0[] = {0}; +static const unsigned char kat242_addin1[] = {0}; +static const unsigned char kat242_retbits[] = { + 0x5c, 0x6c, 0xed, 0x80, 0x50, 0xbc, 0x5a, 0xde, 0x3f, 0x9a, 0xca, 0xcf, + 0x23, 0x89, 0x9f, 0x98, 0xf5, 0xe0, 0x45, 0xa7, 0x68, 0xba, 0x53, 0x8f, + 0xc3, 0x71, 0x74, 0x74, 0x62, 0xeb, 0x9b, 0x84, 0x82, 0x8c, 0x9c, 0xe8, + 0x8e, 0x41, 0x99, 0x05, 0x23, 0x59, 0xb1, 0x58, 0x33, 0x66, 0x89, 0x44, + 0xd6, 0x18, 0x76, 0x7d, 0x0c, 0x6c, 0xfc, 0x24, 0x11, 0xf8, 0x2e, 0x04, + 0x12, 0x06, 0x7a, 0xf6, +}; +static const struct drbg_kat_no_reseed kat242_t = { + 1, kat242_entropyin, kat242_nonce, kat242_persstr, + kat242_addin0, kat242_addin1, kat242_retbits +}; +static const struct drbg_kat kat242 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat242_t +}; + +static const unsigned char kat243_entropyin[] = { + 0x34, 0xdb, 0xd5, 0xcf, 0xe7, 0x9c, 0xac, 0xa4, 0x25, 0x8c, 0xd1, 0xae, + 0x24, 0xb5, 0xaf, 0xe2, 0xd3, 0x7c, 0xb4, 0x69, 0x5d, 0x65, 0x5a, 0x7b, +}; +static const unsigned char kat243_nonce[] = { + 0x55, 0xc2, 0x8f, 0xb4, 0x4e, 0x58, 0x49, 0xb5, 0x7a, 0x77, 0x87, 0x35, + 0x13, 0xc6, 0x57, 0x05, +}; +static const unsigned char kat243_persstr[] = {0}; +static const unsigned char kat243_addin0[] = {0}; +static const unsigned char kat243_addin1[] = {0}; +static const unsigned char kat243_retbits[] = { + 0x9d, 0x47, 0x1d, 0x2c, 0xb8, 0xe4, 0x20, 0x02, 0xce, 0x24, 0xe0, 0xc6, + 0xbe, 0x84, 0xc8, 0x99, 0x37, 0x59, 0x5e, 0x61, 0xfa, 0xf0, 0x37, 0x1c, + 0xb7, 0xe8, 0x28, 0x5d, 0x76, 0xbe, 0x6b, 0x34, 0xef, 0x1d, 0xb5, 0xf7, + 0xd2, 0xeb, 0xad, 0x4b, 0xf8, 0xff, 0x77, 0x65, 0x13, 0x89, 0xef, 0xcf, + 0x13, 0xba, 0xe7, 0x2b, 0xd8, 0xa1, 0x3c, 0x8e, 0x9f, 0xc6, 0x18, 0x55, + 0x58, 0x1b, 0x8e, 0xa9, +}; +static const struct drbg_kat_no_reseed kat243_t = { + 2, kat243_entropyin, kat243_nonce, kat243_persstr, + kat243_addin0, kat243_addin1, kat243_retbits +}; +static const struct drbg_kat kat243 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat243_t +}; + +static const unsigned char kat244_entropyin[] = { + 0x64, 0x3e, 0x95, 0xbf, 0xea, 0xca, 0xfc, 0x7d, 0x72, 0x1b, 0x48, 0xb9, + 0xf1, 0x5a, 0x80, 0xce, 0x8a, 0xd7, 0x07, 0x7f, 0x30, 0x1f, 0x16, 0xc5, +}; +static const unsigned char kat244_nonce[] = { + 0x2d, 0x90, 0x8d, 0xd6, 0x95, 0x2f, 0x86, 0x2a, 0xda, 0x90, 0x2b, 0xc1, + 0xa1, 0x4a, 0x61, 0x29, +}; +static const unsigned char kat244_persstr[] = {0}; +static const unsigned char kat244_addin0[] = {0}; +static const unsigned char kat244_addin1[] = {0}; +static const unsigned char kat244_retbits[] = { + 0xd6, 0xee, 0x5e, 0x37, 0x96, 0x34, 0x9d, 0x47, 0xc2, 0xed, 0xe3, 0x2c, + 0x93, 0x8f, 0x2c, 0x06, 0xef, 0x8a, 0x65, 0x11, 0xb4, 0xe9, 0xbb, 0xbe, + 0x74, 0xeb, 0x71, 0xbc, 0x3c, 0x47, 0x70, 0xd9, 0x0c, 0x70, 0xcd, 0xcd, + 0xff, 0x6b, 0x3c, 0x9f, 0xbf, 0x4f, 0xa6, 0xbc, 0x38, 0x0a, 0xc2, 0xf2, + 0xe1, 0x61, 0x96, 0xb4, 0xc4, 0xc8, 0xa6, 0x44, 0x8f, 0x04, 0x0d, 0x11, + 0xd3, 0x6b, 0x42, 0x14, +}; +static const struct drbg_kat_no_reseed kat244_t = { + 3, kat244_entropyin, kat244_nonce, kat244_persstr, + kat244_addin0, kat244_addin1, kat244_retbits +}; +static const struct drbg_kat kat244 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat244_t +}; + +static const unsigned char kat245_entropyin[] = { + 0x0f, 0x47, 0x7a, 0x59, 0x14, 0x90, 0xa0, 0xac, 0xcf, 0x82, 0x9c, 0x67, + 0x3f, 0x15, 0x06, 0xda, 0xca, 0x70, 0xdf, 0x96, 0x58, 0x2c, 0x3d, 0x3a, +}; +static const unsigned char kat245_nonce[] = { + 0x1a, 0x8d, 0xd4, 0x23, 0x3b, 0xed, 0xe3, 0xf2, 0x83, 0x86, 0x34, 0xc0, + 0x95, 0x44, 0xab, 0x6e, +}; +static const unsigned char kat245_persstr[] = {0}; +static const unsigned char kat245_addin0[] = {0}; +static const unsigned char kat245_addin1[] = {0}; +static const unsigned char kat245_retbits[] = { + 0x43, 0x16, 0x75, 0x73, 0x86, 0x7d, 0x53, 0xca, 0x92, 0xe2, 0x96, 0x86, + 0xd9, 0xfd, 0x99, 0x3c, 0x69, 0x80, 0x5a, 0x63, 0x11, 0xe3, 0x3e, 0xb9, + 0x63, 0x30, 0xc5, 0x37, 0xdc, 0xbd, 0xea, 0xb1, 0x1b, 0x0b, 0xa1, 0x5e, + 0xe5, 0xb2, 0x28, 0x7f, 0x24, 0x85, 0xe2, 0xe3, 0xa6, 0xe0, 0xed, 0x62, + 0xd2, 0xeb, 0x81, 0x08, 0xc1, 0xfc, 0x73, 0x90, 0x8d, 0xfd, 0x4b, 0xc7, + 0xb7, 0x1b, 0x16, 0x6f, +}; +static const struct drbg_kat_no_reseed kat245_t = { + 4, kat245_entropyin, kat245_nonce, kat245_persstr, + kat245_addin0, kat245_addin1, kat245_retbits +}; +static const struct drbg_kat kat245 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat245_t +}; + +static const unsigned char kat246_entropyin[] = { + 0x00, 0xa6, 0xed, 0x77, 0x83, 0x11, 0x52, 0x81, 0x09, 0xe6, 0xfb, 0x5c, + 0xbd, 0x60, 0xd1, 0xa7, 0x6c, 0x4b, 0xd5, 0xd0, 0x0d, 0xd1, 0x03, 0xa4, +}; +static const unsigned char kat246_nonce[] = { + 0x40, 0x89, 0xf2, 0xf0, 0xb7, 0x4c, 0x18, 0x4a, 0xc9, 0xaf, 0xc9, 0x56, + 0x47, 0xcd, 0xe8, 0x4b, +}; +static const unsigned char kat246_persstr[] = {0}; +static const unsigned char kat246_addin0[] = {0}; +static const unsigned char kat246_addin1[] = {0}; +static const unsigned char kat246_retbits[] = { + 0xb9, 0x08, 0xd9, 0x3a, 0xb2, 0xfd, 0xeb, 0x1a, 0x54, 0x7b, 0x6d, 0x15, + 0xeb, 0x95, 0x0e, 0xdd, 0xce, 0x25, 0x95, 0x6d, 0x8f, 0x5e, 0xe9, 0xa4, + 0xb1, 0xd5, 0x08, 0xc0, 0x82, 0x77, 0xdd, 0x7a, 0x1a, 0x10, 0x60, 0xfc, + 0xec, 0xaf, 0x93, 0xeb, 0x7a, 0x47, 0x2a, 0x36, 0x3e, 0x97, 0xd7, 0xe6, + 0x3c, 0xde, 0xc7, 0xf9, 0x4a, 0x5d, 0xc2, 0x6d, 0xb7, 0xb2, 0xb7, 0xf1, + 0x2c, 0xd8, 0xf3, 0xee, +}; +static const struct drbg_kat_no_reseed kat246_t = { + 5, kat246_entropyin, kat246_nonce, kat246_persstr, + kat246_addin0, kat246_addin1, kat246_retbits +}; +static const struct drbg_kat kat246 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat246_t +}; + +static const unsigned char kat247_entropyin[] = { + 0x5f, 0x34, 0x55, 0x2a, 0x45, 0x5a, 0x02, 0x9b, 0x4b, 0xac, 0xf1, 0xb8, + 0x0c, 0xb1, 0xcf, 0xb4, 0x12, 0x56, 0x5f, 0xb7, 0x73, 0x4f, 0x7e, 0x0a, +}; +static const unsigned char kat247_nonce[] = { + 0xbd, 0x55, 0xae, 0xf0, 0x6d, 0xb6, 0xf2, 0x0d, 0xf2, 0x71, 0xcf, 0x60, + 0x59, 0x4c, 0x22, 0xac, +}; +static const unsigned char kat247_persstr[] = {0}; +static const unsigned char kat247_addin0[] = {0}; +static const unsigned char kat247_addin1[] = {0}; +static const unsigned char kat247_retbits[] = { + 0xd4, 0xb1, 0x00, 0xef, 0x27, 0xd7, 0x9a, 0x5d, 0x10, 0x03, 0x1d, 0xb0, + 0xcc, 0xc7, 0x2b, 0xa8, 0x9c, 0x68, 0x19, 0x77, 0x6c, 0x19, 0xf0, 0x2f, + 0x9a, 0xfe, 0x4a, 0x44, 0x05, 0xc5, 0x84, 0xa0, 0x66, 0x21, 0xf1, 0xbb, + 0x5b, 0xa2, 0x9a, 0xf5, 0xea, 0x69, 0x63, 0x83, 0xa6, 0x7a, 0x9e, 0xc6, + 0x52, 0xbe, 0xe7, 0x59, 0x28, 0x11, 0x3d, 0xb2, 0x8f, 0x39, 0x40, 0x4f, + 0xf0, 0xba, 0x37, 0x38, +}; +static const struct drbg_kat_no_reseed kat247_t = { + 6, kat247_entropyin, kat247_nonce, kat247_persstr, + kat247_addin0, kat247_addin1, kat247_retbits +}; +static const struct drbg_kat kat247 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat247_t +}; + +static const unsigned char kat248_entropyin[] = { + 0x6d, 0x7c, 0xb2, 0x32, 0xa3, 0x20, 0x3c, 0xa6, 0x95, 0x5c, 0x1f, 0x1e, + 0xdd, 0xd6, 0xb8, 0xe0, 0x9d, 0x82, 0x0b, 0xf6, 0xc0, 0x5f, 0xfb, 0x6e, +}; +static const unsigned char kat248_nonce[] = { + 0xc0, 0x4f, 0x16, 0x27, 0xed, 0x1d, 0x7b, 0x31, 0x0a, 0xa4, 0x7e, 0xcc, + 0x79, 0x83, 0x83, 0x6a, +}; +static const unsigned char kat248_persstr[] = {0}; +static const unsigned char kat248_addin0[] = {0}; +static const unsigned char kat248_addin1[] = {0}; +static const unsigned char kat248_retbits[] = { + 0x63, 0xd6, 0x96, 0x3e, 0xff, 0x3d, 0x50, 0xfc, 0x0c, 0x21, 0xab, 0xa6, + 0x1d, 0x63, 0x65, 0x74, 0x2c, 0x4b, 0xce, 0xa7, 0xbf, 0x76, 0xc9, 0x5d, + 0x64, 0x5e, 0x88, 0xcb, 0x13, 0x92, 0x53, 0xd5, 0x63, 0x50, 0x3e, 0xc3, + 0x99, 0x9e, 0xe7, 0x72, 0xc8, 0x97, 0xc9, 0xd3, 0x66, 0x3f, 0x64, 0x5a, + 0xb3, 0x04, 0x1d, 0xcf, 0x3d, 0x9e, 0xe8, 0xf4, 0xc9, 0x2e, 0x89, 0x5b, + 0x76, 0x44, 0x41, 0x4d, +}; +static const struct drbg_kat_no_reseed kat248_t = { + 7, kat248_entropyin, kat248_nonce, kat248_persstr, + kat248_addin0, kat248_addin1, kat248_retbits +}; +static const struct drbg_kat kat248 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat248_t +}; + +static const unsigned char kat249_entropyin[] = { + 0x48, 0xbf, 0xce, 0xf7, 0xdb, 0xe6, 0x8d, 0x5e, 0x09, 0xdf, 0x38, 0xe9, + 0x7f, 0x89, 0x77, 0xe2, 0xa1, 0x50, 0x14, 0xbf, 0x75, 0x1f, 0x9e, 0x27, +}; +static const unsigned char kat249_nonce[] = { + 0xee, 0xa0, 0x3c, 0x6d, 0x77, 0x80, 0x2a, 0xa2, 0xc5, 0xd5, 0xe1, 0x29, + 0x36, 0x31, 0xe3, 0x9b, +}; +static const unsigned char kat249_persstr[] = {0}; +static const unsigned char kat249_addin0[] = {0}; +static const unsigned char kat249_addin1[] = {0}; +static const unsigned char kat249_retbits[] = { + 0xec, 0xdd, 0x8e, 0x7c, 0x78, 0x81, 0x94, 0x69, 0x82, 0xff, 0x3a, 0x11, + 0xa4, 0x3b, 0xd0, 0x20, 0xe9, 0x70, 0xa3, 0xb8, 0x90, 0x13, 0x87, 0xa1, + 0xcd, 0x3e, 0xb6, 0x3d, 0xf3, 0xfb, 0x51, 0x06, 0x60, 0xbc, 0x82, 0xa5, + 0xe0, 0x29, 0xbe, 0xee, 0x26, 0xb4, 0xcc, 0x5d, 0x89, 0x1f, 0xaf, 0xcf, + 0x5e, 0x42, 0xb6, 0xf4, 0xdc, 0x41, 0x49, 0x16, 0xfc, 0xd8, 0xb0, 0x5e, + 0xd3, 0xf4, 0xa6, 0x85, +}; +static const struct drbg_kat_no_reseed kat249_t = { + 8, kat249_entropyin, kat249_nonce, kat249_persstr, + kat249_addin0, kat249_addin1, kat249_retbits +}; +static const struct drbg_kat kat249 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat249_t +}; + +static const unsigned char kat250_entropyin[] = { + 0x5b, 0xe9, 0x61, 0x75, 0x4f, 0xe9, 0xe9, 0x72, 0x06, 0x35, 0x87, 0x5f, + 0xeb, 0x2f, 0x37, 0xc7, 0x4f, 0xb9, 0x62, 0x0e, 0x47, 0xb8, 0x81, 0x41, +}; +static const unsigned char kat250_nonce[] = { + 0x23, 0xd3, 0x5a, 0xac, 0xee, 0xfb, 0x41, 0x2a, 0x6f, 0xbd, 0x18, 0x7f, + 0x57, 0x87, 0xbc, 0x53, +}; +static const unsigned char kat250_persstr[] = {0}; +static const unsigned char kat250_addin0[] = {0}; +static const unsigned char kat250_addin1[] = {0}; +static const unsigned char kat250_retbits[] = { + 0x8a, 0x8e, 0x0e, 0x44, 0x3b, 0x8e, 0x94, 0x4d, 0x58, 0xc8, 0x40, 0x73, + 0x92, 0x29, 0x6a, 0x2c, 0x7f, 0xc4, 0xeb, 0x04, 0xfc, 0xb7, 0x2c, 0xc7, + 0xea, 0x99, 0x51, 0x35, 0x59, 0xc0, 0x91, 0x76, 0x61, 0xdb, 0x2e, 0xda, + 0x20, 0x9f, 0xbb, 0xed, 0x40, 0x00, 0x89, 0xe3, 0xfc, 0x48, 0xff, 0x69, + 0x90, 0xd9, 0x7c, 0x04, 0x1b, 0xb5, 0x75, 0x27, 0x92, 0xd1, 0x30, 0xa1, + 0x52, 0x57, 0xca, 0x44, +}; +static const struct drbg_kat_no_reseed kat250_t = { + 9, kat250_entropyin, kat250_nonce, kat250_persstr, + kat250_addin0, kat250_addin1, kat250_retbits +}; +static const struct drbg_kat kat250 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat250_t +}; + +static const unsigned char kat251_entropyin[] = { + 0x2a, 0x25, 0x35, 0xa5, 0xaf, 0xc9, 0xb1, 0x71, 0x75, 0x42, 0x92, 0x8a, + 0x3d, 0x35, 0xe9, 0x5a, 0x7f, 0x63, 0xb8, 0x77, 0xa8, 0x38, 0x8a, 0x09, +}; +static const unsigned char kat251_nonce[] = { + 0xab, 0x21, 0x7b, 0x02, 0x9a, 0x33, 0xf0, 0x56, 0x35, 0x30, 0xd3, 0x7f, + 0x4f, 0xbf, 0xf1, 0x0b, +}; +static const unsigned char kat251_persstr[] = {0}; +static const unsigned char kat251_addin0[] = {0}; +static const unsigned char kat251_addin1[] = {0}; +static const unsigned char kat251_retbits[] = { + 0x31, 0xa2, 0x10, 0x65, 0x55, 0x29, 0xfb, 0x46, 0xeb, 0x4e, 0x79, 0x97, + 0x10, 0xc6, 0x31, 0x92, 0xe3, 0x65, 0x6c, 0xb1, 0xea, 0x24, 0x04, 0x08, + 0x52, 0x7d, 0xf7, 0xfe, 0xf8, 0x2b, 0x30, 0x5c, 0x5f, 0xa9, 0x8a, 0x1d, + 0x82, 0x4f, 0x78, 0x30, 0xd8, 0x4a, 0x53, 0x64, 0x3c, 0xfb, 0x52, 0x51, + 0x76, 0x63, 0xd5, 0x16, 0x11, 0x5d, 0x45, 0x27, 0x2f, 0x59, 0x72, 0x24, + 0x0f, 0xe8, 0x48, 0x27, +}; +static const struct drbg_kat_no_reseed kat251_t = { + 10, kat251_entropyin, kat251_nonce, kat251_persstr, + kat251_addin0, kat251_addin1, kat251_retbits +}; +static const struct drbg_kat kat251 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat251_t +}; + +static const unsigned char kat252_entropyin[] = { + 0xff, 0xd8, 0xb1, 0x50, 0xb2, 0x87, 0xb3, 0xed, 0x9d, 0x01, 0x28, 0xdc, + 0xc8, 0xcc, 0x5d, 0xeb, 0x90, 0xbd, 0xa9, 0x8a, 0xca, 0x79, 0x14, 0x83, +}; +static const unsigned char kat252_nonce[] = { + 0xbc, 0x7b, 0x6a, 0x7f, 0xb0, 0x59, 0x2f, 0xda, 0x4a, 0xbc, 0x43, 0xee, + 0xee, 0x42, 0xb1, 0xf6, +}; +static const unsigned char kat252_persstr[] = {0}; +static const unsigned char kat252_addin0[] = {0}; +static const unsigned char kat252_addin1[] = {0}; +static const unsigned char kat252_retbits[] = { + 0x3f, 0xdb, 0x4f, 0xf8, 0x3c, 0x36, 0x2b, 0x76, 0xa8, 0x3b, 0x00, 0xa8, + 0x90, 0x5f, 0x2c, 0x05, 0x8b, 0xaf, 0xe8, 0xeb, 0xdf, 0xf8, 0xeb, 0x2e, + 0x5f, 0x53, 0xcb, 0x9c, 0xa5, 0xc8, 0x2e, 0x32, 0x17, 0xc2, 0xc6, 0x03, + 0x26, 0xb0, 0xbb, 0xa6, 0xc9, 0x1c, 0x44, 0x0a, 0x48, 0x52, 0xc7, 0x2c, + 0xd7, 0x33, 0x45, 0xc5, 0xe0, 0xd4, 0xcc, 0x2e, 0x15, 0x84, 0x01, 0x04, + 0x5a, 0x77, 0xe0, 0xf9, +}; +static const struct drbg_kat_no_reseed kat252_t = { + 11, kat252_entropyin, kat252_nonce, kat252_persstr, + kat252_addin0, kat252_addin1, kat252_retbits +}; +static const struct drbg_kat kat252 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat252_t +}; + +static const unsigned char kat253_entropyin[] = { + 0xcb, 0x33, 0xfc, 0x14, 0xf2, 0xb6, 0x94, 0x01, 0xb7, 0x8b, 0xbd, 0x78, + 0x1c, 0xbf, 0xe6, 0x58, 0x5f, 0x1e, 0x73, 0x64, 0x59, 0x00, 0x0c, 0x26, +}; +static const unsigned char kat253_nonce[] = { + 0x5a, 0x91, 0x4f, 0x81, 0xd6, 0x5b, 0x19, 0x7a, 0x5d, 0x89, 0x24, 0xfa, + 0x88, 0xfa, 0x9b, 0xa3, +}; +static const unsigned char kat253_persstr[] = {0}; +static const unsigned char kat253_addin0[] = {0}; +static const unsigned char kat253_addin1[] = {0}; +static const unsigned char kat253_retbits[] = { + 0x6c, 0x63, 0x20, 0x91, 0x88, 0x6e, 0x24, 0x26, 0x5d, 0x12, 0x3b, 0x5c, + 0x7f, 0xca, 0x06, 0x3d, 0x70, 0xdf, 0xea, 0x32, 0xc7, 0x78, 0x0a, 0xfa, + 0xab, 0x89, 0x5c, 0x10, 0xb5, 0x12, 0x62, 0xbc, 0x4d, 0x36, 0x3d, 0x21, + 0x65, 0x99, 0x83, 0x67, 0xc9, 0xa8, 0xa5, 0x16, 0x47, 0x6b, 0xc7, 0x63, + 0x99, 0x02, 0x41, 0xba, 0xf9, 0x2d, 0x6b, 0x87, 0xe4, 0xde, 0x62, 0x2d, + 0x40, 0x19, 0xdb, 0x6c, +}; +static const struct drbg_kat_no_reseed kat253_t = { + 12, kat253_entropyin, kat253_nonce, kat253_persstr, + kat253_addin0, kat253_addin1, kat253_retbits +}; +static const struct drbg_kat kat253 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat253_t +}; + +static const unsigned char kat254_entropyin[] = { + 0xc4, 0x57, 0xe7, 0xd1, 0xc6, 0x9b, 0x1a, 0x53, 0x00, 0xb4, 0x75, 0xef, + 0x80, 0x44, 0x1c, 0x40, 0x80, 0x0c, 0xd3, 0x76, 0x4e, 0x41, 0x4c, 0xe1, +}; +static const unsigned char kat254_nonce[] = { + 0x39, 0x33, 0xe4, 0x98, 0xa0, 0xf2, 0x0d, 0x3f, 0xcf, 0x05, 0xa3, 0xb8, + 0x2b, 0x67, 0xac, 0x6d, +}; +static const unsigned char kat254_persstr[] = {0}; +static const unsigned char kat254_addin0[] = {0}; +static const unsigned char kat254_addin1[] = {0}; +static const unsigned char kat254_retbits[] = { + 0x26, 0x89, 0x41, 0x9f, 0xa0, 0xf9, 0xb3, 0xa4, 0xc5, 0xe9, 0x6a, 0x71, + 0xf6, 0x76, 0xef, 0x7f, 0x76, 0x76, 0x7b, 0x51, 0xb3, 0xcd, 0x5c, 0xe8, + 0x37, 0xe9, 0xd8, 0x28, 0x6f, 0xa8, 0x37, 0xa5, 0xa3, 0x45, 0x66, 0x95, + 0xe3, 0xe9, 0xca, 0x93, 0x96, 0xe8, 0xd5, 0xb9, 0x47, 0x8a, 0x1e, 0x8c, + 0xdd, 0x5c, 0x31, 0xfb, 0xaa, 0x5e, 0x07, 0x43, 0xd2, 0x77, 0xfd, 0xf4, + 0xaf, 0xc7, 0x95, 0x9a, +}; +static const struct drbg_kat_no_reseed kat254_t = { + 13, kat254_entropyin, kat254_nonce, kat254_persstr, + kat254_addin0, kat254_addin1, kat254_retbits +}; +static const struct drbg_kat kat254 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat254_t +}; + +static const unsigned char kat255_entropyin[] = { + 0x49, 0xbc, 0x4a, 0xa4, 0xca, 0xba, 0x36, 0x42, 0x42, 0xdf, 0x51, 0x84, + 0x90, 0x9c, 0xe5, 0x88, 0xf2, 0x4a, 0x2d, 0xe3, 0x40, 0xe3, 0x30, 0x82, +}; +static const unsigned char kat255_nonce[] = { + 0x51, 0x01, 0xf0, 0x0a, 0xc1, 0x89, 0x9c, 0x9b, 0xa4, 0x5e, 0x92, 0x3e, + 0x07, 0x16, 0x64, 0x07, +}; +static const unsigned char kat255_persstr[] = {0}; +static const unsigned char kat255_addin0[] = {0}; +static const unsigned char kat255_addin1[] = {0}; +static const unsigned char kat255_retbits[] = { + 0x9b, 0x71, 0xe0, 0xa0, 0x9c, 0x39, 0x3e, 0xb0, 0xf0, 0x34, 0xa1, 0x2d, + 0x3a, 0xd1, 0x32, 0x0a, 0xc1, 0xca, 0x42, 0x2a, 0x82, 0x96, 0x7c, 0xc5, + 0x4d, 0x14, 0xed, 0x0e, 0x36, 0x42, 0x9a, 0xb2, 0xa0, 0xe8, 0xc6, 0x7a, + 0x5c, 0x7f, 0x60, 0xe5, 0x37, 0xe4, 0x10, 0xeb, 0x5f, 0xf0, 0x75, 0xb7, + 0xc6, 0x7a, 0xc4, 0x80, 0x52, 0x00, 0xa5, 0xab, 0x2f, 0xb6, 0x29, 0xb4, + 0x84, 0x60, 0xcc, 0xe4, +}; +static const struct drbg_kat_no_reseed kat255_t = { + 14, kat255_entropyin, kat255_nonce, kat255_persstr, + kat255_addin0, kat255_addin1, kat255_retbits +}; +static const struct drbg_kat kat255 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat255_t +}; + +static const unsigned char kat256_entropyin[] = { + 0x89, 0xd3, 0x2f, 0x3d, 0xe1, 0x67, 0xde, 0xbe, 0xdf, 0xc1, 0x43, 0xe4, + 0xda, 0x78, 0x9a, 0x5f, 0x83, 0x31, 0x2a, 0x9d, 0x42, 0x0c, 0x29, 0xd4, +}; +static const unsigned char kat256_nonce[] = { + 0x9a, 0xe3, 0xba, 0xb2, 0xd9, 0x65, 0xdb, 0xe9, 0x96, 0xa6, 0xc4, 0xc0, + 0xde, 0x28, 0x05, 0x01, +}; +static const unsigned char kat256_persstr[] = {0}; +static const unsigned char kat256_addin0[] = { + 0xd5, 0x16, 0x5f, 0xbf, 0x88, 0x50, 0xe2, 0xec, 0xfb, 0x46, 0x87, 0xaf, + 0x79, 0xdc, 0x62, 0x36, 0x1e, 0x75, 0x57, 0x70, 0x70, 0x51, 0xa1, 0x36, + 0x80, 0x47, 0x1e, 0xe1, 0x29, 0xf2, 0x84, 0xf9, +}; +static const unsigned char kat256_addin1[] = { + 0x85, 0x22, 0x56, 0xde, 0x34, 0x79, 0xdc, 0x86, 0xa3, 0xb4, 0xd4, 0x04, + 0xc2, 0x64, 0x7b, 0x74, 0xf5, 0xf8, 0xa1, 0xc0, 0x1b, 0x68, 0x1f, 0x1d, + 0x8e, 0xfd, 0xfe, 0xdc, 0x54, 0xc1, 0x0c, 0x07, +}; +static const unsigned char kat256_retbits[] = { + 0xb0, 0x39, 0x7e, 0xda, 0x1d, 0xaf, 0x45, 0x44, 0x10, 0x4f, 0x73, 0x04, + 0x01, 0xcb, 0xd1, 0xbe, 0x29, 0x98, 0x9c, 0xd2, 0x87, 0x97, 0xde, 0x2c, + 0x13, 0xcd, 0xbf, 0x18, 0x4f, 0x86, 0xc6, 0x37, 0x8f, 0x8d, 0xfa, 0x39, + 0x4e, 0x08, 0xd9, 0xa7, 0x1d, 0xe1, 0xf1, 0x63, 0x3b, 0x5b, 0x28, 0x36, + 0x3d, 0xf2, 0x16, 0x59, 0xce, 0x58, 0xb1, 0x25, 0x92, 0xe8, 0xee, 0x4f, + 0x55, 0xcb, 0x81, 0xac, +}; +static const struct drbg_kat_no_reseed kat256_t = { + 0, kat256_entropyin, kat256_nonce, kat256_persstr, + kat256_addin0, kat256_addin1, kat256_retbits +}; +static const struct drbg_kat kat256 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat256_t +}; + +static const unsigned char kat257_entropyin[] = { + 0xad, 0x3b, 0x6f, 0xa3, 0xd6, 0x32, 0xa4, 0x2f, 0x8c, 0x58, 0x0b, 0x59, + 0xfa, 0xf8, 0x82, 0xc0, 0x33, 0x8c, 0x5b, 0xb0, 0x44, 0xb8, 0x8f, 0x37, +}; +static const unsigned char kat257_nonce[] = { + 0xf9, 0x99, 0x66, 0xdb, 0x52, 0xa2, 0xf7, 0x27, 0x11, 0xb5, 0xaf, 0x10, + 0xef, 0xf4, 0x2f, 0xef, +}; +static const unsigned char kat257_persstr[] = {0}; +static const unsigned char kat257_addin0[] = { + 0xbe, 0xe5, 0x97, 0x4c, 0x34, 0x30, 0x2a, 0xee, 0xfe, 0x31, 0xc7, 0x32, + 0x59, 0x87, 0xc1, 0x58, 0xdf, 0x80, 0x38, 0xa2, 0x37, 0xef, 0x9e, 0xcb, + 0xb8, 0xfe, 0x74, 0xfe, 0xfb, 0xb3, 0xe2, 0x29, +}; +static const unsigned char kat257_addin1[] = { + 0x47, 0xb9, 0xbd, 0x9b, 0xab, 0xc4, 0x15, 0xaf, 0xaa, 0xed, 0xbb, 0x8a, + 0xc9, 0xeb, 0xf0, 0x2e, 0xb5, 0x81, 0xd1, 0xeb, 0x5f, 0xb0, 0xb7, 0xd4, + 0x34, 0x55, 0x84, 0x8d, 0x66, 0xce, 0xb5, 0x3b, +}; +static const unsigned char kat257_retbits[] = { + 0x75, 0x92, 0x2a, 0x7b, 0x19, 0x33, 0xf4, 0xbe, 0xc2, 0x75, 0xc1, 0x50, + 0xe2, 0xf9, 0x89, 0x37, 0x14, 0xcb, 0xa1, 0x19, 0xc5, 0xdf, 0x7d, 0xc2, + 0xcf, 0xaa, 0x96, 0x18, 0xf1, 0xeb, 0xa5, 0x4d, 0x68, 0xd5, 0x58, 0xe9, + 0x76, 0xce, 0x29, 0x2e, 0x4b, 0x9f, 0x83, 0x06, 0xf1, 0xd1, 0x75, 0x59, + 0x78, 0x04, 0x12, 0x24, 0x74, 0x80, 0x06, 0xbd, 0x57, 0x12, 0x31, 0x0f, + 0xd0, 0x85, 0xaf, 0xa0, +}; +static const struct drbg_kat_no_reseed kat257_t = { + 1, kat257_entropyin, kat257_nonce, kat257_persstr, + kat257_addin0, kat257_addin1, kat257_retbits +}; +static const struct drbg_kat kat257 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat257_t +}; + +static const unsigned char kat258_entropyin[] = { + 0x16, 0xd3, 0x99, 0xb5, 0x26, 0xa8, 0x37, 0x66, 0xb5, 0xf9, 0x35, 0xe4, + 0xc1, 0x23, 0x41, 0x98, 0x17, 0x24, 0xcd, 0x87, 0x24, 0x25, 0xd8, 0x59, +}; +static const unsigned char kat258_nonce[] = { + 0xc0, 0xf3, 0x83, 0x54, 0xae, 0x69, 0x68, 0x35, 0xf9, 0xc8, 0x56, 0x71, + 0x6f, 0x18, 0x6e, 0x4d, +}; +static const unsigned char kat258_persstr[] = {0}; +static const unsigned char kat258_addin0[] = { + 0x56, 0x94, 0x3f, 0x5e, 0xf7, 0xee, 0xa6, 0x6a, 0xf2, 0xec, 0x60, 0x7f, + 0xcf, 0xa2, 0xbd, 0x76, 0x69, 0x89, 0x9b, 0x6e, 0xce, 0x4c, 0xab, 0xac, + 0x8d, 0x6e, 0x7a, 0x08, 0x68, 0xbe, 0x42, 0x2b, +}; +static const unsigned char kat258_addin1[] = { + 0x2f, 0x7e, 0x74, 0x6e, 0x2d, 0x05, 0xcd, 0x1e, 0x52, 0x33, 0x39, 0x92, + 0x6e, 0x3e, 0x96, 0x56, 0x8f, 0x5d, 0x23, 0x1b, 0x80, 0xc2, 0x68, 0xf4, + 0x4b, 0x1d, 0xf9, 0x62, 0x22, 0x9e, 0x5b, 0x27, +}; +static const unsigned char kat258_retbits[] = { + 0x0b, 0xd1, 0xc4, 0x1c, 0x30, 0x28, 0x4f, 0xad, 0xa0, 0x9e, 0xb2, 0x44, + 0x7d, 0x56, 0x38, 0xa7, 0xa0, 0xb7, 0x3d, 0x99, 0xc6, 0x51, 0xed, 0xc5, + 0xb8, 0xaa, 0x15, 0xd4, 0xe9, 0x81, 0x40, 0x48, 0xd7, 0x9c, 0x52, 0x38, + 0x2b, 0xaa, 0x20, 0x3d, 0x3f, 0x72, 0x78, 0xf4, 0x86, 0x4d, 0x18, 0x36, + 0x65, 0x66, 0x24, 0x80, 0x06, 0x58, 0x7c, 0xf3, 0xf9, 0x02, 0x71, 0xc4, + 0x8c, 0x49, 0x3d, 0x5d, +}; +static const struct drbg_kat_no_reseed kat258_t = { + 2, kat258_entropyin, kat258_nonce, kat258_persstr, + kat258_addin0, kat258_addin1, kat258_retbits +}; +static const struct drbg_kat kat258 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat258_t +}; + +static const unsigned char kat259_entropyin[] = { + 0x8d, 0x2b, 0xcb, 0x66, 0xbd, 0x17, 0xe8, 0xb2, 0xe3, 0x6a, 0x2a, 0x5f, + 0xd1, 0xc1, 0xa0, 0x86, 0x1f, 0xe3, 0x4e, 0x1c, 0xb8, 0xf2, 0x21, 0x9b, +}; +static const unsigned char kat259_nonce[] = { + 0x86, 0x8c, 0x2b, 0xab, 0xe9, 0x69, 0xd7, 0x77, 0x6f, 0x92, 0x92, 0x97, + 0x95, 0xa9, 0x1e, 0xb7, +}; +static const unsigned char kat259_persstr[] = {0}; +static const unsigned char kat259_addin0[] = { + 0x46, 0x18, 0x36, 0x6b, 0x0d, 0x51, 0xf9, 0x09, 0x5f, 0xd8, 0x67, 0xfa, + 0x7a, 0x40, 0xe7, 0x73, 0x62, 0x94, 0xa9, 0x2f, 0xdc, 0xc5, 0xd0, 0xec, + 0xf2, 0x93, 0x04, 0x25, 0x66, 0x68, 0x34, 0x48, +}; +static const unsigned char kat259_addin1[] = { + 0xc4, 0x5c, 0x21, 0x8f, 0xc6, 0x48, 0xde, 0x1b, 0xfb, 0xaa, 0xa6, 0x3b, + 0xe0, 0x27, 0xaf, 0xa0, 0x8c, 0xde, 0x5c, 0x7d, 0x84, 0xa6, 0x29, 0xdb, + 0x9b, 0x54, 0xa2, 0x0c, 0xf6, 0x4c, 0x5a, 0x75, +}; +static const unsigned char kat259_retbits[] = { + 0xb8, 0x5b, 0x85, 0xcf, 0xf7, 0x18, 0x51, 0xce, 0x21, 0x1d, 0x4e, 0xb2, + 0xdc, 0x56, 0x9a, 0xc2, 0xd4, 0x3c, 0xcf, 0x52, 0xff, 0x71, 0xcc, 0x00, + 0x90, 0xed, 0x59, 0xc8, 0x7e, 0x78, 0x50, 0x61, 0xb9, 0x9f, 0x35, 0x2e, + 0x39, 0x8f, 0x61, 0xd2, 0x3d, 0xc0, 0xa1, 0x7e, 0x44, 0x76, 0xda, 0x39, + 0xc3, 0x1f, 0x7b, 0x81, 0x73, 0x8c, 0xaa, 0x61, 0x47, 0x53, 0x17, 0x36, + 0x3c, 0x20, 0x5a, 0xba, +}; +static const struct drbg_kat_no_reseed kat259_t = { + 3, kat259_entropyin, kat259_nonce, kat259_persstr, + kat259_addin0, kat259_addin1, kat259_retbits +}; +static const struct drbg_kat kat259 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat259_t +}; + +static const unsigned char kat260_entropyin[] = { + 0xf3, 0xca, 0x9e, 0xe3, 0x24, 0xcb, 0x01, 0x11, 0xd5, 0xec, 0x08, 0x1e, + 0xdf, 0x77, 0xd3, 0xfa, 0x0b, 0x77, 0x71, 0x8a, 0x87, 0xfb, 0xf4, 0xf5, +}; +static const unsigned char kat260_nonce[] = { + 0x98, 0xd1, 0x2b, 0xbe, 0x87, 0xe4, 0x76, 0x03, 0x7a, 0x5b, 0x24, 0x47, + 0x35, 0xd2, 0x10, 0x2a, +}; +static const unsigned char kat260_persstr[] = {0}; +static const unsigned char kat260_addin0[] = { + 0x19, 0x06, 0x9b, 0x8f, 0xb8, 0x14, 0x8a, 0xc0, 0x0c, 0xf6, 0x07, 0xcf, + 0xce, 0x76, 0xa9, 0x54, 0xf3, 0x12, 0x9c, 0x79, 0x75, 0x19, 0x6b, 0x8b, + 0x61, 0x28, 0xa3, 0x00, 0xce, 0x0d, 0xc0, 0xa7, +}; +static const unsigned char kat260_addin1[] = { + 0x4f, 0x07, 0x8d, 0xaa, 0xbd, 0x37, 0x76, 0x80, 0xea, 0xe1, 0x82, 0x30, + 0x74, 0xab, 0x0d, 0x40, 0xa6, 0x93, 0xd6, 0x81, 0x21, 0xbb, 0xa4, 0x29, + 0xde, 0xbd, 0xfe, 0x0f, 0x88, 0x37, 0x03, 0xdd, +}; +static const unsigned char kat260_retbits[] = { + 0x67, 0x28, 0x47, 0x2e, 0xbc, 0x52, 0xa8, 0x75, 0xb1, 0xa1, 0x63, 0x21, + 0x1c, 0x2b, 0x77, 0x1b, 0xdc, 0xa9, 0x9e, 0x03, 0xf0, 0xde, 0x54, 0xa6, + 0xf4, 0xa1, 0x41, 0xa7, 0x69, 0x1d, 0x6f, 0x96, 0x79, 0xf9, 0x63, 0xc2, + 0xfa, 0x37, 0x7f, 0x0a, 0xe4, 0x71, 0xec, 0xc4, 0x70, 0x76, 0x88, 0x18, + 0xab, 0x4e, 0x62, 0x77, 0x11, 0xa0, 0xf9, 0x88, 0xff, 0x97, 0x3e, 0x4b, + 0xce, 0x50, 0x1b, 0x69, +}; +static const struct drbg_kat_no_reseed kat260_t = { + 4, kat260_entropyin, kat260_nonce, kat260_persstr, + kat260_addin0, kat260_addin1, kat260_retbits +}; +static const struct drbg_kat kat260 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat260_t +}; + +static const unsigned char kat261_entropyin[] = { + 0x54, 0x47, 0x86, 0x8c, 0xd9, 0x25, 0x24, 0x23, 0xf0, 0x3c, 0xa3, 0xbd, + 0x8b, 0x0a, 0x45, 0x43, 0x35, 0xd3, 0x2e, 0xa5, 0x4f, 0xbd, 0x3e, 0xdb, +}; +static const unsigned char kat261_nonce[] = { + 0x64, 0xf2, 0xde, 0x76, 0x5d, 0x20, 0x28, 0xa8, 0xba, 0x06, 0xe6, 0xd2, + 0x04, 0xac, 0x4b, 0xc4, +}; +static const unsigned char kat261_persstr[] = {0}; +static const unsigned char kat261_addin0[] = { + 0x19, 0x1a, 0x39, 0xd6, 0x30, 0xd6, 0x6c, 0xa9, 0x46, 0x72, 0x0a, 0xef, + 0xe8, 0x0c, 0x94, 0xbf, 0xdd, 0x3e, 0x24, 0xdd, 0xa3, 0xe3, 0x7c, 0x41, + 0x4a, 0x93, 0xeb, 0xb7, 0x84, 0xd3, 0xe7, 0xc4, +}; +static const unsigned char kat261_addin1[] = { + 0x8b, 0x66, 0x4b, 0xa7, 0x4f, 0xd0, 0xbb, 0x50, 0x06, 0xed, 0xd3, 0x37, + 0xa1, 0xc4, 0xdb, 0xbf, 0xe7, 0x73, 0x90, 0x2e, 0x08, 0x4c, 0x55, 0x8b, + 0xa1, 0x45, 0xe8, 0xf8, 0xca, 0x34, 0x54, 0x87, +}; +static const unsigned char kat261_retbits[] = { + 0xce, 0x5f, 0x7a, 0x69, 0x68, 0xf3, 0xcf, 0x5f, 0xb0, 0x1e, 0x62, 0x08, + 0xa1, 0x65, 0x17, 0x20, 0xfe, 0x1e, 0x90, 0x76, 0x4d, 0xea, 0x46, 0x50, + 0x4e, 0x10, 0x6f, 0x13, 0xeb, 0xff, 0xf3, 0xd9, 0x79, 0x07, 0x2b, 0x6f, + 0x54, 0x59, 0x06, 0x9a, 0x77, 0x30, 0x03, 0xe3, 0xec, 0xa4, 0xee, 0x3b, + 0x73, 0x0a, 0xeb, 0xfe, 0x95, 0x7c, 0x0e, 0x68, 0x77, 0x4d, 0xdc, 0xb9, + 0x71, 0xbf, 0x46, 0x03, +}; +static const struct drbg_kat_no_reseed kat261_t = { + 5, kat261_entropyin, kat261_nonce, kat261_persstr, + kat261_addin0, kat261_addin1, kat261_retbits +}; +static const struct drbg_kat kat261 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat261_t +}; + +static const unsigned char kat262_entropyin[] = { + 0xe8, 0xd9, 0x3d, 0x86, 0xc3, 0xe9, 0x8d, 0xe6, 0x4f, 0x40, 0x80, 0xbb, + 0x64, 0x52, 0x05, 0x5c, 0xc7, 0xdb, 0x86, 0xd2, 0x5b, 0xb3, 0xa9, 0x23, +}; +static const unsigned char kat262_nonce[] = { + 0xa5, 0x44, 0x7f, 0x91, 0x15, 0x89, 0x1d, 0x48, 0x30, 0x37, 0xad, 0x4d, + 0xd4, 0xc2, 0x2a, 0x8a, +}; +static const unsigned char kat262_persstr[] = {0}; +static const unsigned char kat262_addin0[] = { + 0x56, 0xc6, 0xce, 0xa0, 0x19, 0x72, 0x73, 0x74, 0x21, 0xa0, 0x7c, 0xb2, + 0x0c, 0x79, 0xb8, 0xf7, 0x6b, 0x32, 0xa9, 0xe9, 0xfb, 0xbb, 0xe4, 0x6d, + 0xd7, 0x1f, 0x02, 0xc7, 0x2d, 0x1e, 0x45, 0x0a, +}; +static const unsigned char kat262_addin1[] = { + 0x96, 0x42, 0xc8, 0x21, 0x59, 0xc3, 0x6a, 0x48, 0xa2, 0x52, 0xcc, 0xfe, + 0xe6, 0x1c, 0x5c, 0x1c, 0xed, 0x6d, 0x3a, 0x04, 0x09, 0x9d, 0x98, 0xf9, + 0xdb, 0xe5, 0x34, 0x87, 0x7b, 0x80, 0xa9, 0x8f, +}; +static const unsigned char kat262_retbits[] = { + 0x18, 0x7f, 0x40, 0x48, 0x9f, 0x22, 0xf3, 0x55, 0x83, 0xe7, 0x58, 0x21, + 0xd6, 0x9f, 0x36, 0x9d, 0x12, 0x59, 0x35, 0x21, 0x71, 0xc5, 0x69, 0xf2, + 0xd8, 0xe9, 0xa1, 0x50, 0x97, 0x87, 0x6c, 0xe5, 0x26, 0x1b, 0x41, 0x74, + 0x53, 0x04, 0x69, 0x82, 0x9b, 0xa2, 0xc0, 0x01, 0x45, 0xcb, 0xf4, 0xd2, + 0xa1, 0x20, 0x5e, 0x91, 0x1c, 0x2c, 0x32, 0xd3, 0x3b, 0x5d, 0x67, 0x06, + 0x40, 0x97, 0x72, 0xd2, +}; +static const struct drbg_kat_no_reseed kat262_t = { + 6, kat262_entropyin, kat262_nonce, kat262_persstr, + kat262_addin0, kat262_addin1, kat262_retbits +}; +static const struct drbg_kat kat262 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat262_t +}; + +static const unsigned char kat263_entropyin[] = { + 0x59, 0xb9, 0xb4, 0xdf, 0x1b, 0xb4, 0xf7, 0x78, 0xea, 0x1a, 0x1b, 0xfc, + 0x41, 0x25, 0x5c, 0xc3, 0x25, 0xd6, 0xbf, 0x4f, 0xfc, 0x42, 0x8c, 0xe1, +}; +static const unsigned char kat263_nonce[] = { + 0xe0, 0xfb, 0x72, 0xdd, 0x71, 0xff, 0x3c, 0x2e, 0x07, 0x2f, 0x27, 0xd6, + 0x57, 0x26, 0x0d, 0xa2, +}; +static const unsigned char kat263_persstr[] = {0}; +static const unsigned char kat263_addin0[] = { + 0xcc, 0xfb, 0x64, 0xf4, 0x3f, 0x84, 0xf0, 0x3c, 0xd9, 0x8e, 0x1a, 0xa3, + 0x56, 0x6c, 0xa0, 0xc9, 0xb7, 0x43, 0x82, 0x04, 0xc8, 0xe6, 0x5a, 0x9c, + 0xb8, 0x22, 0x7e, 0x20, 0x11, 0xb9, 0xa7, 0x16, +}; +static const unsigned char kat263_addin1[] = { + 0x30, 0x64, 0xa3, 0x1a, 0x84, 0xc4, 0xea, 0xa6, 0x98, 0x0e, 0x6d, 0x41, + 0x2c, 0xd4, 0xf4, 0x19, 0x11, 0x4b, 0xf0, 0xe8, 0xb2, 0x27, 0x45, 0x6a, + 0x91, 0xda, 0x0f, 0xc0, 0xf7, 0xdc, 0xb7, 0x5f, +}; +static const unsigned char kat263_retbits[] = { + 0x7d, 0x48, 0x83, 0x6e, 0xd6, 0x57, 0x23, 0x1f, 0x62, 0x62, 0x7b, 0xa5, + 0x08, 0x97, 0xca, 0x8f, 0x37, 0x9f, 0x68, 0xd8, 0x6f, 0xab, 0xe2, 0x6c, + 0xaa, 0x7b, 0x44, 0x41, 0xcd, 0x2b, 0x6c, 0x2a, 0xd1, 0xda, 0xf4, 0xea, + 0xbc, 0x2c, 0x34, 0xb3, 0x96, 0x34, 0x00, 0xd2, 0x36, 0x11, 0x74, 0xee, + 0x22, 0x95, 0x2d, 0x6a, 0x28, 0xe8, 0x99, 0x37, 0xb2, 0x31, 0xc9, 0xbc, + 0x22, 0x8a, 0x78, 0xc5, +}; +static const struct drbg_kat_no_reseed kat263_t = { + 7, kat263_entropyin, kat263_nonce, kat263_persstr, + kat263_addin0, kat263_addin1, kat263_retbits +}; +static const struct drbg_kat kat263 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat263_t +}; + +static const unsigned char kat264_entropyin[] = { + 0x0d, 0x03, 0xee, 0x60, 0xbc, 0xa7, 0x23, 0x99, 0x9d, 0x49, 0x58, 0x9e, + 0xb6, 0xe4, 0x04, 0x2f, 0xf9, 0x7b, 0x22, 0x43, 0x3c, 0x81, 0x22, 0x42, +}; +static const unsigned char kat264_nonce[] = { + 0x8a, 0x2f, 0x6f, 0xc8, 0xd4, 0xc5, 0x4b, 0xf6, 0x85, 0x2b, 0x90, 0x2b, + 0xcf, 0x2c, 0x41, 0xec, +}; +static const unsigned char kat264_persstr[] = {0}; +static const unsigned char kat264_addin0[] = { + 0xcb, 0x26, 0x94, 0x41, 0x03, 0x5e, 0x07, 0x11, 0x01, 0xac, 0x8e, 0xfb, + 0x4e, 0xb7, 0xf9, 0xf1, 0xde, 0x21, 0x84, 0x77, 0x1e, 0xc0, 0xea, 0xc6, + 0x2d, 0x06, 0x92, 0xe6, 0x7b, 0xdf, 0x1f, 0xae, +}; +static const unsigned char kat264_addin1[] = { + 0x90, 0x5e, 0x3d, 0x9c, 0x18, 0x00, 0xe1, 0x36, 0x6b, 0xc7, 0x49, 0xa6, + 0x0d, 0x21, 0xce, 0x51, 0x8f, 0xde, 0xf2, 0xa3, 0x6f, 0x88, 0x0c, 0x26, + 0xc1, 0x52, 0x8f, 0x12, 0xdf, 0xfb, 0x91, 0x76, +}; +static const unsigned char kat264_retbits[] = { + 0xa4, 0xcb, 0x87, 0xde, 0x76, 0xb2, 0xeb, 0x39, 0x59, 0x9f, 0x68, 0x40, + 0x22, 0x93, 0xce, 0xe9, 0xc6, 0x1d, 0xc9, 0xdc, 0x12, 0x57, 0x78, 0x99, + 0x64, 0xa2, 0xac, 0xf0, 0xc3, 0x2f, 0x61, 0xc9, 0x07, 0x29, 0x4b, 0xde, + 0xca, 0x88, 0xb0, 0x5d, 0xaa, 0xe0, 0x75, 0x4d, 0x21, 0xf0, 0xc2, 0xb7, + 0x56, 0x97, 0xd8, 0x61, 0x42, 0x37, 0x4f, 0x96, 0x76, 0xdb, 0x34, 0x75, + 0x33, 0x71, 0xe6, 0x18, +}; +static const struct drbg_kat_no_reseed kat264_t = { + 8, kat264_entropyin, kat264_nonce, kat264_persstr, + kat264_addin0, kat264_addin1, kat264_retbits +}; +static const struct drbg_kat kat264 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat264_t +}; + +static const unsigned char kat265_entropyin[] = { + 0xb9, 0x5d, 0x8b, 0x26, 0x6a, 0xcc, 0xcd, 0x6c, 0xba, 0xc0, 0xc0, 0x61, + 0xec, 0x32, 0xa1, 0xea, 0x71, 0x1f, 0xfe, 0xc8, 0x00, 0x6b, 0xc7, 0xcc, +}; +static const unsigned char kat265_nonce[] = { + 0xbf, 0xa0, 0x84, 0x02, 0xc0, 0xc6, 0xb8, 0x7d, 0xec, 0xa2, 0x24, 0x6d, + 0x81, 0xf6, 0x7f, 0x58, +}; +static const unsigned char kat265_persstr[] = {0}; +static const unsigned char kat265_addin0[] = { + 0x72, 0xff, 0xd4, 0xa1, 0x83, 0x99, 0x0d, 0xac, 0x6b, 0xc7, 0xa9, 0x46, + 0x47, 0x14, 0x27, 0x59, 0xbf, 0x88, 0x1c, 0xc0, 0xb3, 0x17, 0x8f, 0x60, + 0xe0, 0xe2, 0xcb, 0xc3, 0x33, 0x79, 0xf7, 0xad, +}; +static const unsigned char kat265_addin1[] = { + 0x2e, 0x9f, 0xe4, 0xd1, 0xaf, 0x62, 0xb1, 0x5f, 0x85, 0x35, 0xe1, 0x98, + 0xaa, 0xd7, 0x93, 0x61, 0xe9, 0x46, 0x16, 0x41, 0x8e, 0xd2, 0xd8, 0x01, + 0xe7, 0x0f, 0xad, 0x9e, 0x0e, 0x9c, 0xa5, 0xb8, +}; +static const unsigned char kat265_retbits[] = { + 0x1b, 0x0d, 0x15, 0xfb, 0x4f, 0xcd, 0xca, 0x14, 0x97, 0xdc, 0xfe, 0x60, + 0xe7, 0xd8, 0x2b, 0xd0, 0x40, 0x1b, 0x16, 0x23, 0x36, 0x6a, 0x71, 0xcf, + 0x8f, 0xa5, 0x75, 0x4f, 0x87, 0x8e, 0x20, 0xd8, 0xf2, 0x54, 0x5b, 0xc3, + 0xd4, 0x1e, 0x79, 0x73, 0xae, 0x32, 0x90, 0x50, 0x6b, 0xa2, 0xa9, 0x76, + 0xb8, 0x3b, 0x7b, 0x98, 0xc7, 0x66, 0xd8, 0xec, 0x0c, 0x26, 0x4b, 0xe2, + 0x87, 0xee, 0x63, 0xf5, +}; +static const struct drbg_kat_no_reseed kat265_t = { + 9, kat265_entropyin, kat265_nonce, kat265_persstr, + kat265_addin0, kat265_addin1, kat265_retbits +}; +static const struct drbg_kat kat265 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat265_t +}; + +static const unsigned char kat266_entropyin[] = { + 0x6d, 0x30, 0x46, 0x58, 0x37, 0xa6, 0x1e, 0x49, 0xda, 0xc0, 0xfc, 0x84, + 0x48, 0xde, 0x3a, 0xfa, 0x2e, 0x22, 0xe0, 0x94, 0x28, 0x6a, 0x5a, 0xed, +}; +static const unsigned char kat266_nonce[] = { + 0x94, 0x18, 0xc0, 0x28, 0x70, 0xef, 0x4c, 0xd1, 0x19, 0xdd, 0xb6, 0x73, + 0xee, 0x69, 0x9d, 0xde, +}; +static const unsigned char kat266_persstr[] = {0}; +static const unsigned char kat266_addin0[] = { + 0xac, 0x32, 0x2e, 0xcf, 0xff, 0x1f, 0x73, 0x26, 0xa4, 0xf4, 0xcb, 0x33, + 0xc1, 0x76, 0xfe, 0x83, 0x1c, 0x0d, 0xdf, 0x37, 0x37, 0x69, 0xfd, 0xe6, + 0x1a, 0x42, 0x42, 0x6f, 0xe9, 0x9e, 0xa8, 0x49, +}; +static const unsigned char kat266_addin1[] = { + 0x5b, 0x70, 0x52, 0x49, 0x1c, 0x3f, 0x53, 0x6e, 0xcb, 0x91, 0xfd, 0x04, + 0x38, 0x0f, 0x9f, 0x03, 0x80, 0xa4, 0x15, 0xdc, 0xde, 0x60, 0x1a, 0x67, + 0x0a, 0x1e, 0xe6, 0xb8, 0xf2, 0x2e, 0x96, 0xda, +}; +static const unsigned char kat266_retbits[] = { + 0xdc, 0xa3, 0xfd, 0xae, 0xf8, 0xbf, 0xb2, 0xd0, 0x9b, 0xb9, 0x06, 0xab, + 0xcb, 0x21, 0x81, 0x8a, 0xa6, 0x6a, 0x06, 0x4e, 0x71, 0x18, 0xff, 0x3d, + 0xac, 0x55, 0x66, 0xca, 0x99, 0x1e, 0xbb, 0x37, 0x33, 0x82, 0x41, 0xe0, + 0xc8, 0x29, 0x76, 0x8f, 0x71, 0x5e, 0x4c, 0x2f, 0x11, 0x57, 0xeb, 0x0a, + 0xc4, 0x73, 0xba, 0xd8, 0x6b, 0x05, 0x13, 0xb6, 0x48, 0x54, 0xf3, 0xed, + 0x8d, 0xa4, 0x83, 0x28, +}; +static const struct drbg_kat_no_reseed kat266_t = { + 10, kat266_entropyin, kat266_nonce, kat266_persstr, + kat266_addin0, kat266_addin1, kat266_retbits +}; +static const struct drbg_kat kat266 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat266_t +}; + +static const unsigned char kat267_entropyin[] = { + 0xc6, 0x83, 0x21, 0x3a, 0x47, 0x37, 0x5e, 0x29, 0x75, 0xd3, 0x00, 0x4b, + 0xcd, 0x6f, 0xb4, 0xaa, 0xb6, 0x55, 0x31, 0xc7, 0x52, 0x93, 0x1d, 0x6b, +}; +static const unsigned char kat267_nonce[] = { + 0x11, 0xf2, 0x78, 0xb8, 0x64, 0x4f, 0x52, 0xa0, 0xa4, 0x07, 0x41, 0x64, + 0x09, 0x7d, 0xe4, 0x58, +}; +static const unsigned char kat267_persstr[] = {0}; +static const unsigned char kat267_addin0[] = { + 0x37, 0xc0, 0x65, 0x5e, 0xa6, 0xc2, 0x0e, 0xc4, 0x3c, 0x58, 0x85, 0x5b, + 0xe3, 0x14, 0xaf, 0xde, 0x29, 0x32, 0x4a, 0x81, 0x86, 0xae, 0x9c, 0x08, + 0xc8, 0xad, 0x4d, 0x85, 0x70, 0x08, 0x1a, 0x72, +}; +static const unsigned char kat267_addin1[] = { + 0xc3, 0x9b, 0xc5, 0x60, 0xc7, 0x1a, 0xa5, 0xcd, 0xf2, 0xa0, 0xec, 0xa0, + 0xff, 0xa4, 0xfb, 0x56, 0x2c, 0xab, 0x13, 0x79, 0xbc, 0x90, 0x43, 0x25, + 0x9e, 0xf8, 0x93, 0x44, 0x36, 0x14, 0x23, 0x23, +}; +static const unsigned char kat267_retbits[] = { + 0x7a, 0xf8, 0xcd, 0xc7, 0x05, 0xcb, 0x06, 0xc4, 0x08, 0xf7, 0x89, 0xb5, + 0xa0, 0xd6, 0x77, 0xe6, 0x6f, 0xb3, 0x2b, 0xc7, 0xa5, 0x78, 0xc4, 0xcd, + 0x6d, 0xe3, 0x42, 0x02, 0xf1, 0x7a, 0x88, 0xd9, 0x1a, 0x23, 0x85, 0x74, + 0x66, 0x64, 0x49, 0xc4, 0x05, 0x9f, 0x2b, 0xdf, 0x59, 0x35, 0x57, 0xfb, + 0x78, 0xd0, 0x77, 0x95, 0x37, 0x16, 0x46, 0xf0, 0x3c, 0xf3, 0x85, 0xf3, + 0x05, 0x8b, 0x1d, 0x78, +}; +static const struct drbg_kat_no_reseed kat267_t = { + 11, kat267_entropyin, kat267_nonce, kat267_persstr, + kat267_addin0, kat267_addin1, kat267_retbits +}; +static const struct drbg_kat kat267 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat267_t +}; + +static const unsigned char kat268_entropyin[] = { + 0x8b, 0xd5, 0xa5, 0x95, 0x22, 0x83, 0x77, 0x67, 0xfb, 0xc7, 0x83, 0xca, + 0xa9, 0xa7, 0xfe, 0xec, 0x68, 0xdf, 0x13, 0x56, 0x16, 0xe9, 0x88, 0x78, +}; +static const unsigned char kat268_nonce[] = { + 0x14, 0xaa, 0xa4, 0x14, 0xad, 0xe4, 0x8e, 0x33, 0xac, 0x5b, 0x44, 0x3b, + 0x94, 0xa9, 0xf1, 0xac, +}; +static const unsigned char kat268_persstr[] = {0}; +static const unsigned char kat268_addin0[] = { + 0x23, 0x3b, 0x1e, 0x2c, 0x23, 0x0c, 0xea, 0xba, 0xf8, 0x8e, 0xc1, 0xba, + 0x30, 0xef, 0xb7, 0x2e, 0x35, 0xcb, 0xf9, 0x9f, 0xdc, 0x92, 0x59, 0x51, + 0x40, 0x19, 0xbc, 0x96, 0xf6, 0xee, 0xcb, 0xde, +}; +static const unsigned char kat268_addin1[] = { + 0xf8, 0xb1, 0x99, 0x22, 0xb8, 0x89, 0x61, 0x75, 0xad, 0xa1, 0x15, 0x24, + 0xb9, 0x8f, 0xff, 0xc1, 0x15, 0x9f, 0x14, 0x56, 0xdd, 0x7a, 0xa6, 0x57, + 0xb7, 0x54, 0x7f, 0x0b, 0xf9, 0xe4, 0xfd, 0xe4, +}; +static const unsigned char kat268_retbits[] = { + 0x49, 0x4a, 0x5d, 0x31, 0xa5, 0x8a, 0x50, 0xf5, 0x06, 0x82, 0x52, 0x79, + 0xb2, 0x48, 0x83, 0x59, 0x14, 0x08, 0x1d, 0xdc, 0xcd, 0x63, 0x80, 0x67, + 0xdf, 0x0e, 0x2d, 0x3c, 0x62, 0x00, 0x8a, 0x4f, 0x10, 0x8c, 0x81, 0x91, + 0x59, 0x00, 0x0b, 0xc0, 0xd0, 0xc7, 0x51, 0x5d, 0xbe, 0x48, 0x8c, 0x3d, + 0xc6, 0xca, 0x3f, 0x28, 0x78, 0xca, 0x58, 0x96, 0xb1, 0x33, 0x50, 0x98, + 0x5e, 0xd7, 0x60, 0x2d, +}; +static const struct drbg_kat_no_reseed kat268_t = { + 12, kat268_entropyin, kat268_nonce, kat268_persstr, + kat268_addin0, kat268_addin1, kat268_retbits +}; +static const struct drbg_kat kat268 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat268_t +}; + +static const unsigned char kat269_entropyin[] = { + 0x97, 0xfe, 0xf1, 0xc3, 0x6e, 0x3c, 0xab, 0x72, 0xd5, 0x04, 0x3e, 0x41, + 0x6c, 0xb1, 0x57, 0x06, 0xd6, 0xd7, 0x6e, 0xc5, 0x01, 0x64, 0x51, 0xe2, +}; +static const unsigned char kat269_nonce[] = { + 0xaa, 0x86, 0x57, 0x62, 0xb8, 0x01, 0x65, 0xe2, 0x39, 0xed, 0x79, 0x51, + 0xb0, 0x56, 0xc7, 0x70, +}; +static const unsigned char kat269_persstr[] = {0}; +static const unsigned char kat269_addin0[] = { + 0x41, 0x89, 0x07, 0xa2, 0x53, 0x32, 0xb9, 0xd2, 0x42, 0xbb, 0x18, 0x77, + 0x5f, 0xdc, 0xb0, 0xb4, 0xf2, 0xec, 0x98, 0x11, 0x75, 0x0e, 0x05, 0x1f, + 0x96, 0xe3, 0xd6, 0xd2, 0x52, 0xeb, 0x87, 0xde, +}; +static const unsigned char kat269_addin1[] = { + 0x57, 0x4b, 0x64, 0x27, 0x93, 0x94, 0x23, 0x4f, 0xe5, 0x9a, 0x14, 0xcb, + 0xc9, 0x40, 0x4a, 0x0b, 0xc1, 0x46, 0x9e, 0x6d, 0x18, 0x1e, 0xeb, 0x4e, + 0x74, 0x14, 0xa4, 0xa6, 0xde, 0x0b, 0xab, 0x7d, +}; +static const unsigned char kat269_retbits[] = { + 0x8c, 0x6b, 0x47, 0x5b, 0xac, 0xf9, 0x33, 0xc0, 0xf7, 0xa0, 0x7c, 0x88, + 0xa5, 0x28, 0xfe, 0xef, 0xc9, 0x52, 0xb9, 0x55, 0x31, 0x05, 0xb2, 0x0a, + 0x17, 0xe3, 0xba, 0xd3, 0x93, 0x9e, 0x94, 0x32, 0x0f, 0xa8, 0xe2, 0x80, + 0xfc, 0x54, 0xb4, 0x85, 0xd4, 0xcf, 0xe7, 0x94, 0x08, 0x1c, 0x05, 0x4e, + 0xe8, 0xe7, 0xc2, 0x4c, 0x65, 0xf6, 0xbb, 0x95, 0xd8, 0x82, 0x72, 0x87, + 0x4d, 0x2a, 0x04, 0x2f, +}; +static const struct drbg_kat_no_reseed kat269_t = { + 13, kat269_entropyin, kat269_nonce, kat269_persstr, + kat269_addin0, kat269_addin1, kat269_retbits +}; +static const struct drbg_kat kat269 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat269_t +}; + +static const unsigned char kat270_entropyin[] = { + 0x54, 0x32, 0xa3, 0x40, 0x20, 0x56, 0x25, 0xc2, 0x0a, 0xfd, 0xd4, 0x2e, + 0xcd, 0x54, 0xe8, 0xd6, 0xef, 0x80, 0xb2, 0x9c, 0x73, 0xf6, 0x2d, 0xba, +}; +static const unsigned char kat270_nonce[] = { + 0xb8, 0xfb, 0x44, 0x40, 0xd8, 0x95, 0x54, 0x99, 0xcd, 0xad, 0x97, 0xb9, + 0xb0, 0xe3, 0x3f, 0x63, +}; +static const unsigned char kat270_persstr[] = {0}; +static const unsigned char kat270_addin0[] = { + 0x9a, 0x53, 0x54, 0x10, 0x62, 0x6b, 0x87, 0x2d, 0xa5, 0x06, 0x43, 0x19, + 0xdb, 0x92, 0x1d, 0x9f, 0xa0, 0x15, 0xa6, 0x75, 0x48, 0xf1, 0x2e, 0x8a, + 0xf2, 0xb1, 0x55, 0x13, 0x0a, 0xb6, 0x32, 0xd0, +}; +static const unsigned char kat270_addin1[] = { + 0x3a, 0x12, 0x51, 0x9f, 0x49, 0x7a, 0x8c, 0x3a, 0xf0, 0xf3, 0x5f, 0xdf, + 0xe4, 0xaa, 0x47, 0xfe, 0xf0, 0x39, 0x56, 0x3c, 0x03, 0x8c, 0x52, 0xaa, + 0x4e, 0xe4, 0xce, 0xcd, 0x05, 0x5f, 0x1b, 0xb6, +}; +static const unsigned char kat270_retbits[] = { + 0x57, 0x01, 0xe2, 0xee, 0x57, 0x46, 0x84, 0xc8, 0x55, 0xd4, 0x03, 0xe5, + 0xa6, 0x1b, 0x13, 0x2c, 0x21, 0x1e, 0x64, 0x6f, 0xf5, 0xed, 0x41, 0xcf, + 0xcb, 0x81, 0xf7, 0x9b, 0xdd, 0x86, 0x7e, 0xf5, 0xcd, 0xa7, 0xf0, 0xba, + 0x57, 0x99, 0xf9, 0x3c, 0x07, 0xf4, 0xb5, 0x58, 0x8c, 0x34, 0xd4, 0x33, + 0xdf, 0x93, 0x35, 0x01, 0x0f, 0xb6, 0x01, 0x10, 0x91, 0x17, 0x7f, 0x5e, + 0x0a, 0x7c, 0xed, 0xe7, +}; +static const struct drbg_kat_no_reseed kat270_t = { + 14, kat270_entropyin, kat270_nonce, kat270_persstr, + kat270_addin0, kat270_addin1, kat270_retbits +}; +static const struct drbg_kat kat270 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat270_t +}; + +static const unsigned char kat271_entropyin[] = { + 0xeb, 0x45, 0x53, 0xf7, 0x14, 0x1b, 0xc1, 0x08, 0x82, 0xf0, 0xa3, 0x74, + 0x17, 0x80, 0xa4, 0x2d, 0xf8, 0xbc, 0x38, 0xa7, 0x12, 0x1d, 0x3b, 0x7e, +}; +static const unsigned char kat271_nonce[] = { + 0x6f, 0x34, 0x7f, 0x9c, 0x1d, 0xe8, 0x4f, 0xd5, 0x34, 0x16, 0x25, 0xae, + 0x8d, 0x6b, 0xf5, 0x0c, +}; +static const unsigned char kat271_persstr[] = { + 0x5e, 0x2e, 0x73, 0xb8, 0x6c, 0xa2, 0xf3, 0x15, 0x0d, 0x53, 0xd2, 0x3d, + 0x59, 0x0a, 0xcb, 0xee, 0xda, 0xaf, 0x91, 0x63, 0x8b, 0xdc, 0x3f, 0x9d, + 0x58, 0x8e, 0x94, 0x5a, 0xf4, 0xbb, 0x6e, 0xa2, +}; +static const unsigned char kat271_addin0[] = {0}; +static const unsigned char kat271_addin1[] = {0}; +static const unsigned char kat271_retbits[] = { + 0xa1, 0xde, 0xb9, 0xa5, 0xaa, 0xd6, 0x08, 0xa5, 0x87, 0xd6, 0x1c, 0xe5, + 0xe0, 0xd7, 0xc7, 0xdd, 0x44, 0x9b, 0x8c, 0x87, 0x89, 0x83, 0x54, 0xad, + 0x1a, 0xdd, 0x6e, 0x05, 0x85, 0x38, 0x73, 0xd2, 0x79, 0xeb, 0xe4, 0x13, + 0x2f, 0xc2, 0x36, 0xa4, 0x2d, 0x8f, 0xf0, 0xdc, 0x3a, 0xce, 0x95, 0xd2, + 0xcd, 0xf9, 0xd0, 0xb0, 0x57, 0x11, 0x7c, 0xb1, 0x19, 0xee, 0x75, 0x50, + 0xce, 0x03, 0x08, 0x5c, +}; +static const struct drbg_kat_no_reseed kat271_t = { + 0, kat271_entropyin, kat271_nonce, kat271_persstr, + kat271_addin0, kat271_addin1, kat271_retbits +}; +static const struct drbg_kat kat271 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat271_t +}; + +static const unsigned char kat272_entropyin[] = { + 0xf9, 0xce, 0x2d, 0x06, 0x49, 0xbc, 0x99, 0x28, 0x8a, 0xf1, 0x5f, 0xdf, + 0xbc, 0x3d, 0xb8, 0x89, 0x56, 0xd9, 0x6c, 0x84, 0xc0, 0xd7, 0xe5, 0xd2, +}; +static const unsigned char kat272_nonce[] = { + 0x8c, 0xf0, 0x0c, 0x63, 0x7a, 0x07, 0x9a, 0x98, 0x36, 0x2e, 0xad, 0x51, + 0x14, 0x9e, 0x55, 0x67, +}; +static const unsigned char kat272_persstr[] = { + 0xb2, 0x44, 0xd6, 0x8a, 0x9b, 0x30, 0xf3, 0xac, 0x88, 0x04, 0x0d, 0x64, + 0x58, 0xa6, 0x25, 0x08, 0x00, 0x20, 0x53, 0x53, 0x41, 0x53, 0x3b, 0xe2, + 0x70, 0xe8, 0x94, 0x00, 0x2c, 0x07, 0x69, 0x7d, +}; +static const unsigned char kat272_addin0[] = {0}; +static const unsigned char kat272_addin1[] = {0}; +static const unsigned char kat272_retbits[] = { + 0x28, 0x51, 0x19, 0x2f, 0xd3, 0xb3, 0x73, 0x51, 0xd0, 0x51, 0x10, 0x97, + 0x43, 0x88, 0xec, 0xe0, 0x11, 0xd1, 0x0e, 0x7b, 0x9d, 0x38, 0x01, 0x40, + 0x29, 0x10, 0x48, 0xce, 0x36, 0x72, 0xc1, 0x34, 0xbc, 0xb4, 0xa0, 0xcd, + 0x07, 0x4f, 0xff, 0xf3, 0x89, 0xa0, 0x2a, 0xf5, 0x9c, 0x52, 0x26, 0xbe, + 0x02, 0x53, 0xe7, 0xb7, 0x40, 0x0e, 0x63, 0x44, 0xb1, 0xa0, 0xd0, 0xd1, + 0x45, 0xff, 0x36, 0x6c, +}; +static const struct drbg_kat_no_reseed kat272_t = { + 1, kat272_entropyin, kat272_nonce, kat272_persstr, + kat272_addin0, kat272_addin1, kat272_retbits +}; +static const struct drbg_kat kat272 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat272_t +}; + +static const unsigned char kat273_entropyin[] = { + 0x61, 0x8a, 0xb7, 0xda, 0x12, 0xa5, 0x83, 0x9b, 0x4d, 0x80, 0x8b, 0xc2, + 0x7c, 0xd5, 0xd3, 0x25, 0x00, 0x00, 0x78, 0x14, 0xa5, 0x4e, 0x5d, 0xe0, +}; +static const unsigned char kat273_nonce[] = { + 0xc3, 0xef, 0xab, 0x85, 0x7f, 0x1f, 0xeb, 0x04, 0x9e, 0xe0, 0x60, 0xba, + 0x76, 0x0f, 0x17, 0xe0, +}; +static const unsigned char kat273_persstr[] = { + 0x33, 0xc6, 0xaf, 0x4e, 0x26, 0x4f, 0x0d, 0x19, 0xc3, 0x61, 0xec, 0xec, + 0xf8, 0x9b, 0xd7, 0x86, 0x9f, 0xb0, 0xaf, 0x7f, 0x9b, 0x39, 0x15, 0x9c, + 0x0f, 0xab, 0xe0, 0x81, 0x14, 0x31, 0xe6, 0x2c, +}; +static const unsigned char kat273_addin0[] = {0}; +static const unsigned char kat273_addin1[] = {0}; +static const unsigned char kat273_retbits[] = { + 0x1d, 0x74, 0xba, 0x44, 0xea, 0xdb, 0xae, 0x17, 0x6a, 0x0a, 0x87, 0x06, + 0x22, 0x17, 0x5e, 0x4b, 0x0e, 0xe4, 0xe4, 0x35, 0x2f, 0x8c, 0x2e, 0xe1, + 0x95, 0x53, 0xdc, 0xb2, 0x10, 0x0f, 0x8e, 0x2f, 0x13, 0x2d, 0xfd, 0x4f, + 0x4c, 0xad, 0x5e, 0x01, 0xe3, 0xb7, 0x02, 0x22, 0x89, 0x02, 0xdc, 0xbe, + 0xe5, 0xaf, 0xd5, 0x39, 0x09, 0x39, 0xc3, 0x61, 0x88, 0x2a, 0x0b, 0x67, + 0x9d, 0xc2, 0xcd, 0x69, +}; +static const struct drbg_kat_no_reseed kat273_t = { + 2, kat273_entropyin, kat273_nonce, kat273_persstr, + kat273_addin0, kat273_addin1, kat273_retbits +}; +static const struct drbg_kat kat273 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat273_t +}; + +static const unsigned char kat274_entropyin[] = { + 0x7d, 0xf2, 0xa3, 0xc0, 0xbd, 0x95, 0xc6, 0xba, 0x88, 0x73, 0xd6, 0xa5, + 0xad, 0x5d, 0xbf, 0x0e, 0x06, 0x9d, 0xa3, 0xcd, 0xe1, 0xe3, 0x94, 0x3d, +}; +static const unsigned char kat274_nonce[] = { + 0xfa, 0x28, 0x22, 0x4a, 0x89, 0x49, 0x13, 0x4e, 0x28, 0x50, 0xc5, 0x2a, + 0x28, 0x57, 0x6f, 0x65, +}; +static const unsigned char kat274_persstr[] = { + 0xe2, 0xde, 0xa1, 0x5d, 0x8d, 0x3a, 0xee, 0xd8, 0x7f, 0xf4, 0x5e, 0x79, + 0xa4, 0xa7, 0x60, 0xa8, 0x96, 0x83, 0xdc, 0xf8, 0x2c, 0xfe, 0x35, 0x64, + 0x67, 0xaf, 0xfc, 0x44, 0x59, 0x2e, 0x2b, 0xf5, +}; +static const unsigned char kat274_addin0[] = {0}; +static const unsigned char kat274_addin1[] = {0}; +static const unsigned char kat274_retbits[] = { + 0x3c, 0x48, 0x82, 0x3f, 0x45, 0x28, 0xb3, 0x96, 0xc8, 0x66, 0x74, 0x07, + 0xcb, 0x88, 0x46, 0xa2, 0x29, 0x52, 0x7d, 0x95, 0x89, 0xf1, 0xce, 0xb2, + 0xfe, 0xe6, 0x40, 0xa8, 0x3f, 0x93, 0x32, 0x71, 0x07, 0xc4, 0xc9, 0x91, + 0xc2, 0xc8, 0xba, 0x3e, 0xe8, 0x18, 0x53, 0x14, 0x0a, 0x34, 0x8c, 0x1c, + 0xa5, 0xce, 0x26, 0x4e, 0xf7, 0x5d, 0xb4, 0x95, 0x67, 0x94, 0x26, 0x8c, + 0x55, 0x38, 0x10, 0x1f, +}; +static const struct drbg_kat_no_reseed kat274_t = { + 3, kat274_entropyin, kat274_nonce, kat274_persstr, + kat274_addin0, kat274_addin1, kat274_retbits +}; +static const struct drbg_kat kat274 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat274_t +}; + +static const unsigned char kat275_entropyin[] = { + 0x2d, 0x8a, 0x1a, 0x3a, 0x6a, 0x77, 0xe3, 0xcd, 0x46, 0x40, 0xa0, 0x78, + 0x0f, 0x59, 0xcb, 0x97, 0x5f, 0x81, 0xc2, 0x73, 0x3a, 0xd7, 0xf4, 0x98, +}; +static const unsigned char kat275_nonce[] = { + 0x50, 0xfc, 0x6b, 0xcc, 0x7e, 0xcb, 0xdb, 0x3d, 0x57, 0xbe, 0xab, 0x7e, + 0x28, 0xa4, 0x9b, 0xc0, +}; +static const unsigned char kat275_persstr[] = { + 0x95, 0xf9, 0xc3, 0x56, 0x3b, 0x53, 0x5e, 0x69, 0xa4, 0x91, 0x34, 0xc3, + 0x36, 0xcb, 0x80, 0xfa, 0x9a, 0xd9, 0x51, 0x08, 0xc7, 0x56, 0xea, 0x26, + 0x1f, 0x5b, 0x3a, 0xe9, 0xcb, 0xaf, 0xd4, 0x1b, +}; +static const unsigned char kat275_addin0[] = {0}; +static const unsigned char kat275_addin1[] = {0}; +static const unsigned char kat275_retbits[] = { + 0x86, 0x87, 0x1f, 0x9c, 0xb6, 0xb4, 0xed, 0x25, 0x2b, 0xd1, 0xe8, 0x68, + 0xc8, 0x0a, 0x26, 0x3e, 0x02, 0x5b, 0xba, 0xe2, 0x28, 0x5c, 0xca, 0x59, + 0xc6, 0x29, 0x98, 0x27, 0x32, 0xa5, 0x06, 0x3e, 0x5c, 0xbd, 0xa2, 0x76, + 0xf2, 0x82, 0xfd, 0xaa, 0x90, 0xae, 0xf8, 0xec, 0x6d, 0xd3, 0x1d, 0x32, + 0xb7, 0x04, 0xde, 0x50, 0x28, 0xdd, 0xd3, 0x2e, 0x22, 0xde, 0x36, 0x80, + 0x08, 0x6f, 0x9a, 0x89, +}; +static const struct drbg_kat_no_reseed kat275_t = { + 4, kat275_entropyin, kat275_nonce, kat275_persstr, + kat275_addin0, kat275_addin1, kat275_retbits +}; +static const struct drbg_kat kat275 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat275_t +}; + +static const unsigned char kat276_entropyin[] = { + 0x13, 0x35, 0x24, 0xed, 0xab, 0xd5, 0xa7, 0xf7, 0x85, 0x8c, 0x13, 0xf2, + 0x79, 0x53, 0xe9, 0x87, 0x28, 0x3c, 0xb1, 0x72, 0xa2, 0xc3, 0x7f, 0x17, +}; +static const unsigned char kat276_nonce[] = { + 0x5e, 0x6c, 0xb7, 0xf7, 0xc9, 0x8e, 0xe1, 0x3f, 0x46, 0x7d, 0x6b, 0xda, + 0x28, 0x8b, 0x57, 0x7e, +}; +static const unsigned char kat276_persstr[] = { + 0x67, 0xd3, 0x91, 0x60, 0xcc, 0xee, 0x30, 0x40, 0xdb, 0x78, 0x20, 0xa3, + 0x7a, 0xef, 0xb7, 0xd4, 0xa1, 0x0f, 0x7d, 0xcd, 0xf3, 0xbc, 0xa6, 0x69, + 0xfe, 0x23, 0x5d, 0xb6, 0x3a, 0xb2, 0x47, 0x60, +}; +static const unsigned char kat276_addin0[] = {0}; +static const unsigned char kat276_addin1[] = {0}; +static const unsigned char kat276_retbits[] = { + 0x2d, 0x13, 0xee, 0x8b, 0x73, 0xd5, 0x18, 0xb0, 0xaf, 0xbf, 0x4e, 0x1e, + 0xa6, 0xf6, 0x32, 0x00, 0x6b, 0xa5, 0x6e, 0x3f, 0x4e, 0x24, 0xa2, 0x1f, + 0x68, 0x77, 0xed, 0x0f, 0x79, 0xc3, 0xec, 0x7f, 0xfd, 0x19, 0xce, 0x81, + 0xbb, 0x17, 0x0b, 0x3a, 0xa9, 0x0d, 0xf6, 0x97, 0xf5, 0xcd, 0x98, 0x72, + 0xcc, 0xb3, 0xd1, 0xe3, 0x38, 0x94, 0xdd, 0x16, 0xc6, 0xf5, 0xcf, 0x2f, + 0xb1, 0x07, 0xae, 0xdd, +}; +static const struct drbg_kat_no_reseed kat276_t = { + 5, kat276_entropyin, kat276_nonce, kat276_persstr, + kat276_addin0, kat276_addin1, kat276_retbits +}; +static const struct drbg_kat kat276 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat276_t +}; + +static const unsigned char kat277_entropyin[] = { + 0xf2, 0x97, 0x47, 0x4b, 0x5b, 0x7e, 0x68, 0xd5, 0xae, 0xa9, 0x48, 0xf7, + 0x51, 0xbc, 0x89, 0x9b, 0x36, 0xc2, 0x12, 0x63, 0x6f, 0x28, 0x8b, 0x84, +}; +static const unsigned char kat277_nonce[] = { + 0xb8, 0xa6, 0x0d, 0xd7, 0x26, 0xa0, 0x3f, 0xd0, 0xd2, 0xbf, 0x19, 0x5d, + 0x2c, 0xb0, 0x9a, 0x03, +}; +static const unsigned char kat277_persstr[] = { + 0x8e, 0x32, 0xdb, 0x43, 0x66, 0x90, 0x7a, 0xbb, 0x98, 0xc0, 0xe0, 0x9c, + 0x53, 0x60, 0xc5, 0x6f, 0xdb, 0x6f, 0x48, 0x3c, 0x84, 0xe6, 0x06, 0xf0, + 0x7f, 0x5d, 0x1d, 0x45, 0xa0, 0x93, 0x46, 0xca, +}; +static const unsigned char kat277_addin0[] = {0}; +static const unsigned char kat277_addin1[] = {0}; +static const unsigned char kat277_retbits[] = { + 0x92, 0x08, 0x90, 0x94, 0xa8, 0x9f, 0xb5, 0x32, 0xf0, 0x68, 0xa8, 0x63, + 0x0f, 0xa9, 0x47, 0xb8, 0xf8, 0x6e, 0xee, 0x22, 0xd5, 0x6f, 0x22, 0xa5, + 0x14, 0xf8, 0xa6, 0x87, 0x1a, 0xa4, 0xc8, 0x08, 0xc8, 0xc9, 0xf4, 0x7c, + 0x13, 0x54, 0xf1, 0x51, 0xc6, 0x8b, 0xc1, 0x30, 0xc8, 0xe8, 0x5f, 0xe4, + 0x7e, 0x8b, 0xea, 0xc8, 0xcb, 0x34, 0x6b, 0x8e, 0xe2, 0xa7, 0xe0, 0x01, + 0x59, 0xa0, 0xea, 0x80, +}; +static const struct drbg_kat_no_reseed kat277_t = { + 6, kat277_entropyin, kat277_nonce, kat277_persstr, + kat277_addin0, kat277_addin1, kat277_retbits +}; +static const struct drbg_kat kat277 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat277_t +}; + +static const unsigned char kat278_entropyin[] = { + 0x70, 0x50, 0x8f, 0x60, 0x35, 0xcd, 0xc4, 0x1a, 0xf6, 0x32, 0x52, 0xaf, + 0x23, 0xbe, 0x67, 0xaf, 0x4a, 0x46, 0x8f, 0x45, 0x53, 0x31, 0x10, 0xc8, +}; +static const unsigned char kat278_nonce[] = { + 0x77, 0xc2, 0xbc, 0x1a, 0x84, 0xf4, 0xf9, 0x91, 0x79, 0x6f, 0x9c, 0x07, + 0x09, 0x2a, 0xd5, 0xc7, +}; +static const unsigned char kat278_persstr[] = { + 0x47, 0x73, 0x82, 0xb2, 0xf6, 0xde, 0x44, 0xe2, 0xf0, 0x9a, 0x1d, 0x13, + 0x5a, 0x35, 0xf1, 0xcc, 0xb0, 0x28, 0x51, 0xf9, 0xe1, 0xf0, 0x03, 0xf9, + 0x8e, 0x02, 0x20, 0x43, 0x45, 0x8f, 0x5b, 0x66, +}; +static const unsigned char kat278_addin0[] = {0}; +static const unsigned char kat278_addin1[] = {0}; +static const unsigned char kat278_retbits[] = { + 0xfc, 0x63, 0x4f, 0xd4, 0xdc, 0xa7, 0xfc, 0xd6, 0x6c, 0x38, 0x92, 0x65, + 0x18, 0xa8, 0xd6, 0xfd, 0xee, 0xca, 0x07, 0xf8, 0x7e, 0x9b, 0x9f, 0xe5, + 0x40, 0x5e, 0xfd, 0x9a, 0xf9, 0xc9, 0x41, 0xcb, 0xf1, 0x56, 0xbc, 0x5b, + 0x09, 0xa5, 0x3f, 0x5c, 0xc8, 0xb5, 0xbf, 0x94, 0x37, 0xe6, 0x76, 0x90, + 0x5a, 0xfa, 0xee, 0x58, 0x02, 0x7b, 0xc2, 0x5a, 0xd4, 0x6c, 0x32, 0xab, + 0xbe, 0xa0, 0x5c, 0x85, +}; +static const struct drbg_kat_no_reseed kat278_t = { + 7, kat278_entropyin, kat278_nonce, kat278_persstr, + kat278_addin0, kat278_addin1, kat278_retbits +}; +static const struct drbg_kat kat278 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat278_t +}; + +static const unsigned char kat279_entropyin[] = { + 0x2e, 0x5d, 0x95, 0x68, 0x7b, 0x0e, 0x9b, 0x77, 0x7f, 0x13, 0x94, 0xf1, + 0x86, 0x63, 0xe7, 0x98, 0xed, 0xbd, 0x24, 0xcf, 0x0c, 0x3b, 0x94, 0x58, +}; +static const unsigned char kat279_nonce[] = { + 0x02, 0x05, 0x5f, 0xa3, 0xeb, 0x3d, 0x12, 0x04, 0xc2, 0x53, 0xeb, 0xf3, + 0x5e, 0x31, 0x43, 0xbd, +}; +static const unsigned char kat279_persstr[] = { + 0x17, 0x56, 0x63, 0x5c, 0x33, 0xf8, 0x68, 0x6b, 0x45, 0x8d, 0xaa, 0xec, + 0x9b, 0x9b, 0x44, 0x60, 0xb8, 0xa1, 0xd7, 0x5a, 0xa2, 0xe3, 0x00, 0xe7, + 0x55, 0x57, 0x41, 0x12, 0x49, 0xab, 0xc0, 0x0f, +}; +static const unsigned char kat279_addin0[] = {0}; +static const unsigned char kat279_addin1[] = {0}; +static const unsigned char kat279_retbits[] = { + 0x91, 0xc7, 0xe7, 0x18, 0x3e, 0xed, 0x6b, 0xa6, 0x64, 0x96, 0x67, 0x8b, + 0x9e, 0xe8, 0xec, 0x8b, 0x86, 0xde, 0x02, 0xfd, 0x7c, 0x6c, 0xb9, 0x77, + 0x48, 0x2f, 0x0d, 0xf4, 0x84, 0x9a, 0x72, 0x85, 0x9a, 0x80, 0x4d, 0x26, + 0x86, 0x68, 0xa8, 0xf4, 0xc9, 0x49, 0x34, 0x41, 0x3a, 0x94, 0xa2, 0xff, + 0x0d, 0x9d, 0x39, 0xb5, 0x18, 0x86, 0x07, 0xcc, 0x75, 0xa0, 0x79, 0xa7, + 0xe4, 0x84, 0x61, 0x69, +}; +static const struct drbg_kat_no_reseed kat279_t = { + 8, kat279_entropyin, kat279_nonce, kat279_persstr, + kat279_addin0, kat279_addin1, kat279_retbits +}; +static const struct drbg_kat kat279 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat279_t +}; + +static const unsigned char kat280_entropyin[] = { + 0x2e, 0x99, 0x70, 0x3a, 0x2b, 0xf1, 0x95, 0xa1, 0x82, 0xd2, 0x21, 0xce, + 0x79, 0xbd, 0xbd, 0xfc, 0xa4, 0xdb, 0x53, 0xe1, 0x6e, 0x75, 0x7a, 0x5b, +}; +static const unsigned char kat280_nonce[] = { + 0x4b, 0xe5, 0x2f, 0xba, 0x5d, 0x1f, 0xbc, 0x7e, 0xa7, 0x7b, 0x4a, 0xe3, + 0x0d, 0x16, 0xe0, 0xe9, +}; +static const unsigned char kat280_persstr[] = { + 0x8a, 0xf3, 0x46, 0xe5, 0x2f, 0x8c, 0x9b, 0xe6, 0x8a, 0x58, 0xf4, 0x0d, + 0x50, 0x05, 0x70, 0x04, 0xb7, 0xd7, 0x58, 0x07, 0xaf, 0x92, 0x27, 0x32, + 0x84, 0x36, 0x96, 0xc1, 0x82, 0x90, 0xd5, 0x89, +}; +static const unsigned char kat280_addin0[] = {0}; +static const unsigned char kat280_addin1[] = {0}; +static const unsigned char kat280_retbits[] = { + 0x23, 0x35, 0x2a, 0x39, 0x99, 0x4a, 0x03, 0xf4, 0x25, 0x06, 0xc3, 0x4d, + 0xdb, 0x8e, 0x0d, 0x19, 0x12, 0x7e, 0xbb, 0xfe, 0x82, 0x39, 0xc3, 0x4a, + 0x27, 0x11, 0xcd, 0xf1, 0xb1, 0xbe, 0xb1, 0xcf, 0x75, 0x40, 0x2a, 0x61, + 0x3c, 0x85, 0x31, 0xd1, 0xdc, 0xce, 0xac, 0xdb, 0x49, 0x00, 0x73, 0xc7, + 0xa5, 0x6f, 0x0a, 0xff, 0xb3, 0xf1, 0x1f, 0x26, 0xe8, 0xc1, 0x90, 0x1f, + 0xaf, 0x3d, 0xfb, 0x2f, +}; +static const struct drbg_kat_no_reseed kat280_t = { + 9, kat280_entropyin, kat280_nonce, kat280_persstr, + kat280_addin0, kat280_addin1, kat280_retbits +}; +static const struct drbg_kat kat280 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat280_t +}; + +static const unsigned char kat281_entropyin[] = { + 0x23, 0x93, 0x1f, 0x7e, 0x10, 0xad, 0x6e, 0x55, 0x3a, 0x28, 0x54, 0x81, + 0xac, 0xae, 0x7c, 0xfc, 0xb3, 0x2f, 0x64, 0x4e, 0x08, 0xc5, 0xb0, 0x09, +}; +static const unsigned char kat281_nonce[] = { + 0x7b, 0xc2, 0xb5, 0x7e, 0xde, 0x91, 0x35, 0xb4, 0x19, 0x2c, 0x51, 0x81, + 0xf9, 0x08, 0x08, 0xc6, +}; +static const unsigned char kat281_persstr[] = { + 0x6e, 0xcd, 0x84, 0xef, 0x10, 0xb4, 0xe8, 0x62, 0xbc, 0x34, 0x47, 0x86, + 0x7b, 0x3e, 0x80, 0x88, 0xe9, 0xdb, 0x4c, 0x5b, 0xe5, 0x38, 0x1d, 0xbc, + 0xb6, 0x05, 0x14, 0x05, 0x13, 0x90, 0xbf, 0xaf, +}; +static const unsigned char kat281_addin0[] = {0}; +static const unsigned char kat281_addin1[] = {0}; +static const unsigned char kat281_retbits[] = { + 0xa5, 0xc1, 0x15, 0xbf, 0x8f, 0x95, 0x0b, 0x5d, 0x18, 0x71, 0x8a, 0x9a, + 0x22, 0x69, 0x75, 0x9e, 0x78, 0xe4, 0xfb, 0x79, 0x89, 0x37, 0xaf, 0xd0, + 0x6d, 0xaf, 0xc9, 0xea, 0xc9, 0xf5, 0x72, 0x60, 0x27, 0xd6, 0x39, 0xde, + 0x08, 0xd0, 0xb7, 0xb0, 0x08, 0x53, 0x2f, 0x70, 0xbc, 0x48, 0xa8, 0xf8, + 0x8f, 0x63, 0x7e, 0x67, 0xca, 0x7f, 0xb3, 0xfc, 0xe5, 0x19, 0x6e, 0x99, + 0x3f, 0x6d, 0x3a, 0x25, +}; +static const struct drbg_kat_no_reseed kat281_t = { + 10, kat281_entropyin, kat281_nonce, kat281_persstr, + kat281_addin0, kat281_addin1, kat281_retbits +}; +static const struct drbg_kat kat281 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat281_t +}; + +static const unsigned char kat282_entropyin[] = { + 0x61, 0x96, 0x42, 0xe8, 0x63, 0xa8, 0xf8, 0xd2, 0xf7, 0xdb, 0x9c, 0x2e, + 0xe5, 0x6c, 0x13, 0xa2, 0xf0, 0x39, 0x59, 0x5c, 0x29, 0xed, 0x74, 0x96, +}; +static const unsigned char kat282_nonce[] = { + 0x9c, 0x50, 0xab, 0x67, 0xfc, 0x76, 0x68, 0xde, 0xc6, 0x03, 0x4e, 0x82, + 0x24, 0xae, 0x1d, 0x54, +}; +static const unsigned char kat282_persstr[] = { + 0x23, 0x0b, 0x18, 0x7d, 0x67, 0xc9, 0x31, 0x2e, 0xaf, 0x19, 0x23, 0x52, + 0x6b, 0xfb, 0xcb, 0x31, 0x9d, 0x9d, 0x33, 0x9f, 0xe8, 0xc8, 0x62, 0xd1, + 0xa9, 0xfa, 0x1e, 0xa7, 0x83, 0x09, 0x29, 0xb2, +}; +static const unsigned char kat282_addin0[] = {0}; +static const unsigned char kat282_addin1[] = {0}; +static const unsigned char kat282_retbits[] = { + 0x0e, 0xce, 0x18, 0x8d, 0x8d, 0x1a, 0x37, 0xf1, 0x58, 0xa6, 0xd0, 0x65, + 0xf9, 0x07, 0x37, 0x69, 0xd7, 0x50, 0xb6, 0xd3, 0x3b, 0xf8, 0x49, 0x3d, + 0xf9, 0x6d, 0x99, 0xfa, 0x98, 0xc9, 0x90, 0x00, 0x76, 0xf7, 0xab, 0xeb, + 0x02, 0x31, 0x2a, 0xd4, 0xe0, 0xc6, 0xed, 0xde, 0x99, 0xeb, 0xd6, 0x1c, + 0x39, 0x6a, 0x83, 0x75, 0xa1, 0xd7, 0x1f, 0x6b, 0x20, 0x86, 0xd9, 0x02, + 0x1c, 0x11, 0xa1, 0x4c, +}; +static const struct drbg_kat_no_reseed kat282_t = { + 11, kat282_entropyin, kat282_nonce, kat282_persstr, + kat282_addin0, kat282_addin1, kat282_retbits +}; +static const struct drbg_kat kat282 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat282_t +}; + +static const unsigned char kat283_entropyin[] = { + 0xbf, 0x4e, 0x56, 0x6b, 0x60, 0xa5, 0x92, 0xf6, 0xc8, 0x89, 0xbb, 0x19, + 0x25, 0x2b, 0x54, 0x48, 0x9a, 0x58, 0x15, 0xf2, 0xbd, 0x07, 0x4b, 0x41, +}; +static const unsigned char kat283_nonce[] = { + 0x32, 0xa2, 0xf8, 0xe7, 0x8e, 0x17, 0x57, 0x4d, 0x63, 0x84, 0xe1, 0xf5, + 0x39, 0x95, 0x9a, 0xda, +}; +static const unsigned char kat283_persstr[] = { + 0xcf, 0x75, 0x8d, 0x77, 0x29, 0x63, 0xf5, 0x76, 0xb5, 0x1d, 0x32, 0x7d, + 0xba, 0xa3, 0x51, 0x76, 0x13, 0xf3, 0x38, 0x7c, 0xb9, 0x0c, 0x85, 0x49, + 0x7a, 0x93, 0x60, 0xe0, 0x4e, 0xbf, 0xb1, 0x79, +}; +static const unsigned char kat283_addin0[] = {0}; +static const unsigned char kat283_addin1[] = {0}; +static const unsigned char kat283_retbits[] = { + 0xf6, 0xbf, 0x71, 0x1d, 0x50, 0x02, 0x99, 0x7a, 0x3e, 0xca, 0xa3, 0x6c, + 0xeb, 0x5e, 0xe6, 0x3c, 0xae, 0x53, 0x01, 0x72, 0x89, 0x07, 0x64, 0xae, + 0xb8, 0xaf, 0xd5, 0xd8, 0x12, 0xc3, 0x68, 0x56, 0x8e, 0x4a, 0xb0, 0xaf, + 0xd2, 0xdd, 0xf9, 0x7d, 0xc3, 0x10, 0xb1, 0xc3, 0x53, 0xe6, 0x73, 0xfd, + 0xac, 0x59, 0x2a, 0xc6, 0x08, 0xe1, 0x30, 0x4f, 0x97, 0xa5, 0xf2, 0x57, + 0x8c, 0x1e, 0xc1, 0xd4, +}; +static const struct drbg_kat_no_reseed kat283_t = { + 12, kat283_entropyin, kat283_nonce, kat283_persstr, + kat283_addin0, kat283_addin1, kat283_retbits +}; +static const struct drbg_kat kat283 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat283_t +}; + +static const unsigned char kat284_entropyin[] = { + 0x18, 0x01, 0x0f, 0xfb, 0xae, 0xac, 0xab, 0x06, 0xa4, 0xc5, 0x5a, 0x38, + 0xe8, 0xe9, 0x36, 0xd7, 0x9a, 0xd4, 0x9a, 0xf9, 0x76, 0xb8, 0xf7, 0x48, +}; +static const unsigned char kat284_nonce[] = { + 0xcf, 0x55, 0xbc, 0x78, 0xa1, 0xf1, 0xee, 0x4a, 0xbd, 0xc5, 0x54, 0xe8, + 0x7b, 0x3f, 0x11, 0x4d, +}; +static const unsigned char kat284_persstr[] = { + 0x53, 0xa9, 0x74, 0x38, 0x6b, 0xa1, 0x01, 0xba, 0x34, 0xea, 0x65, 0xb7, + 0x5b, 0xc3, 0x60, 0xe9, 0xc1, 0xcb, 0x80, 0xc2, 0xa6, 0x50, 0x82, 0x90, + 0xa7, 0x8a, 0xe2, 0x3e, 0x5c, 0x70, 0x15, 0x37, +}; +static const unsigned char kat284_addin0[] = {0}; +static const unsigned char kat284_addin1[] = {0}; +static const unsigned char kat284_retbits[] = { + 0x57, 0x26, 0xde, 0x68, 0x48, 0xee, 0x07, 0x4f, 0x35, 0x3c, 0xf1, 0x7b, + 0xf3, 0xee, 0x0b, 0x09, 0xb6, 0xb6, 0x03, 0xb1, 0x24, 0x64, 0x25, 0xdd, + 0xde, 0x1d, 0x01, 0xb5, 0xbf, 0x5a, 0xf0, 0xd8, 0x88, 0x88, 0x21, 0x7d, + 0x59, 0x01, 0x8d, 0xb3, 0x17, 0x18, 0x11, 0xda, 0x02, 0xe6, 0x67, 0xfd, + 0xdf, 0x8c, 0xb3, 0x51, 0x00, 0x36, 0x9d, 0xc9, 0xa8, 0xcf, 0x2a, 0xaf, + 0xc5, 0x45, 0x21, 0x82, +}; +static const struct drbg_kat_no_reseed kat284_t = { + 13, kat284_entropyin, kat284_nonce, kat284_persstr, + kat284_addin0, kat284_addin1, kat284_retbits +}; +static const struct drbg_kat kat284 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat284_t +}; + +static const unsigned char kat285_entropyin[] = { + 0xf6, 0x20, 0x87, 0x73, 0xae, 0x06, 0xc6, 0x14, 0x10, 0x7a, 0x98, 0x65, + 0xc3, 0x6e, 0xeb, 0x2a, 0xc2, 0xe3, 0x48, 0xee, 0x7c, 0xd6, 0x9d, 0xde, +}; +static const unsigned char kat285_nonce[] = { + 0xee, 0x7c, 0x9e, 0xc2, 0x68, 0x77, 0x03, 0xaa, 0x10, 0x30, 0x70, 0x57, + 0x4d, 0x61, 0x67, 0xd9, +}; +static const unsigned char kat285_persstr[] = { + 0xa8, 0x5a, 0x25, 0xe5, 0xcd, 0x63, 0x90, 0xbe, 0xab, 0x64, 0xab, 0x8b, + 0x4f, 0x53, 0x42, 0x80, 0xf3, 0xfc, 0x7b, 0x16, 0x9e, 0xb0, 0xa7, 0x5c, + 0xb7, 0x7d, 0x9b, 0xf0, 0x62, 0x92, 0xab, 0xe8, +}; +static const unsigned char kat285_addin0[] = {0}; +static const unsigned char kat285_addin1[] = {0}; +static const unsigned char kat285_retbits[] = { + 0xcd, 0x5f, 0x73, 0xd4, 0xfe, 0xbc, 0x7f, 0xe1, 0x73, 0x51, 0xbb, 0xb9, + 0x09, 0x47, 0x29, 0x75, 0x90, 0x16, 0xbd, 0x3e, 0xae, 0x0d, 0xd3, 0xd9, + 0x12, 0x86, 0x97, 0x81, 0x3a, 0x0b, 0x92, 0x9d, 0xcf, 0xce, 0x6b, 0xfe, + 0xfc, 0x1e, 0x08, 0xde, 0xdd, 0xf6, 0x17, 0xd4, 0xe7, 0x27, 0xaa, 0xa3, + 0xc7, 0xcb, 0x1f, 0xf2, 0x3b, 0xf0, 0x2f, 0xcd, 0xa7, 0x7d, 0x0b, 0x15, + 0x02, 0x39, 0x03, 0x49, +}; +static const struct drbg_kat_no_reseed kat285_t = { + 14, kat285_entropyin, kat285_nonce, kat285_persstr, + kat285_addin0, kat285_addin1, kat285_retbits +}; +static const struct drbg_kat kat285 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat285_t +}; + +static const unsigned char kat286_entropyin[] = { + 0xd5, 0x97, 0x3b, 0x5c, 0x91, 0x05, 0xcb, 0xf6, 0x7e, 0x97, 0x8f, 0x41, + 0x99, 0x24, 0x79, 0x0d, 0x83, 0x02, 0x3e, 0x86, 0xa8, 0xb5, 0xdd, 0x6b, +}; +static const unsigned char kat286_nonce[] = { + 0x35, 0x8a, 0xf1, 0xae, 0x9a, 0x84, 0x2c, 0x6e, 0x03, 0xf8, 0x8d, 0xfa, + 0x2a, 0x31, 0x11, 0x61, +}; +static const unsigned char kat286_persstr[] = { + 0x29, 0x4d, 0x7d, 0x35, 0xf5, 0x3a, 0x5d, 0x7d, 0xde, 0xf5, 0xca, 0x41, + 0x00, 0xf3, 0x54, 0x71, 0x12, 0xc9, 0x3e, 0x41, 0x25, 0x12, 0x57, 0xdc, + 0x0a, 0x19, 0xb6, 0xdf, 0xaa, 0x4a, 0x60, 0xa4, +}; +static const unsigned char kat286_addin0[] = { + 0x08, 0x05, 0xf3, 0x14, 0x46, 0xc5, 0x1d, 0x5d, 0x9d, 0x27, 0xb7, 0xcb, + 0xb1, 0x6e, 0x84, 0x0b, 0x9e, 0x8b, 0x0d, 0xfe, 0x6f, 0xb4, 0xb6, 0x97, + 0x92, 0xbc, 0x8d, 0xe9, 0xe3, 0xbd, 0x6d, 0x92, +}; +static const unsigned char kat286_addin1[] = { + 0x93, 0x4d, 0x7f, 0xd5, 0xe7, 0x16, 0x37, 0x63, 0x42, 0x60, 0x71, 0x23, + 0xea, 0x11, 0x3d, 0x6b, 0x20, 0x17, 0x0c, 0xcd, 0xa5, 0x3f, 0xc8, 0x65, + 0x41, 0x40, 0x7a, 0x15, 0x6c, 0xd9, 0x49, 0x04, +}; +static const unsigned char kat286_retbits[] = { + 0xcb, 0x95, 0x45, 0x9d, 0x17, 0x35, 0xcb, 0x9b, 0xce, 0x8a, 0x75, 0xbf, + 0x09, 0x7a, 0x09, 0x9c, 0x9f, 0x7c, 0x70, 0xba, 0xd4, 0x3e, 0x3e, 0x43, + 0x1f, 0x2d, 0x38, 0x29, 0xd7, 0xca, 0x9d, 0x06, 0x17, 0xb9, 0xa9, 0x93, + 0x37, 0xaf, 0x52, 0x48, 0xd4, 0x74, 0x1c, 0xb5, 0xa6, 0x0d, 0xff, 0x6f, + 0x8c, 0x52, 0x21, 0xe2, 0x3f, 0x3c, 0xb5, 0x24, 0xa9, 0x4f, 0xfd, 0xd2, + 0x19, 0x0b, 0xfb, 0x3b, +}; +static const struct drbg_kat_no_reseed kat286_t = { + 0, kat286_entropyin, kat286_nonce, kat286_persstr, + kat286_addin0, kat286_addin1, kat286_retbits +}; +static const struct drbg_kat kat286 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat286_t +}; + +static const unsigned char kat287_entropyin[] = { + 0xa0, 0x44, 0x99, 0xcc, 0x2b, 0x36, 0x20, 0xa4, 0x7e, 0xe6, 0x6d, 0xe9, + 0xce, 0x65, 0x10, 0x03, 0x39, 0x40, 0x95, 0x85, 0x39, 0xf7, 0x54, 0xfb, +}; +static const unsigned char kat287_nonce[] = { + 0xfa, 0xa4, 0x92, 0xb5, 0xee, 0xb6, 0x20, 0xe7, 0x8f, 0xb6, 0x37, 0x5c, + 0x62, 0x0f, 0x49, 0x5c, +}; +static const unsigned char kat287_persstr[] = { + 0x31, 0x8a, 0x01, 0xb4, 0x75, 0x60, 0x11, 0x91, 0x43, 0x8c, 0xcf, 0x44, + 0xfe, 0xd9, 0xc0, 0xc6, 0xaf, 0x5f, 0x44, 0x15, 0xc2, 0x66, 0x8b, 0x2d, + 0x39, 0xf9, 0x59, 0xef, 0x6f, 0xa2, 0xe2, 0xee, +}; +static const unsigned char kat287_addin0[] = { + 0xf1, 0xb9, 0x2d, 0x7f, 0xb1, 0x26, 0x79, 0x9f, 0x08, 0x02, 0x64, 0xbb, + 0xd2, 0xef, 0xf3, 0x9b, 0xd7, 0x55, 0xb8, 0xd1, 0xcb, 0xb8, 0x79, 0x63, + 0xa7, 0x71, 0xe7, 0xac, 0x54, 0x94, 0xc1, 0x54, +}; +static const unsigned char kat287_addin1[] = { + 0xab, 0x79, 0x75, 0xe3, 0x42, 0xc2, 0x60, 0xf4, 0x01, 0x38, 0x56, 0xe5, + 0x9d, 0x76, 0x77, 0xe7, 0x07, 0x18, 0x21, 0xe4, 0x2d, 0xcb, 0x0b, 0x14, + 0x7d, 0xcc, 0x74, 0x07, 0x48, 0x32, 0x06, 0x1c, +}; +static const unsigned char kat287_retbits[] = { + 0x64, 0x7a, 0x3e, 0x82, 0xbe, 0x71, 0x73, 0xe4, 0x57, 0x82, 0xd4, 0x2e, + 0xe0, 0xbc, 0x52, 0xff, 0xef, 0xc3, 0x07, 0x2e, 0xca, 0xb3, 0x06, 0x0a, + 0xe6, 0x06, 0x31, 0xb8, 0x48, 0x62, 0x89, 0x23, 0x0c, 0x00, 0xb3, 0xe9, + 0x64, 0x1f, 0x88, 0xd3, 0x42, 0x7f, 0xbf, 0xb1, 0x50, 0xfd, 0x14, 0xdc, + 0xf8, 0xf2, 0xc8, 0xdb, 0x14, 0xc7, 0x15, 0x45, 0x78, 0x89, 0x51, 0xef, + 0xa0, 0x74, 0xb2, 0x27, +}; +static const struct drbg_kat_no_reseed kat287_t = { + 1, kat287_entropyin, kat287_nonce, kat287_persstr, + kat287_addin0, kat287_addin1, kat287_retbits +}; +static const struct drbg_kat kat287 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat287_t +}; + +static const unsigned char kat288_entropyin[] = { + 0x56, 0x82, 0x91, 0x4c, 0x36, 0x77, 0x69, 0x45, 0xe0, 0x23, 0xf9, 0x8e, + 0x14, 0x17, 0x17, 0x25, 0xa2, 0xc0, 0x20, 0x4d, 0xe7, 0x99, 0xa3, 0x6f, +}; +static const unsigned char kat288_nonce[] = { + 0x6d, 0x6f, 0x71, 0xcf, 0xef, 0x95, 0x7f, 0xf4, 0x75, 0x58, 0x33, 0x15, + 0x12, 0x5e, 0xad, 0x6b, +}; +static const unsigned char kat288_persstr[] = { + 0x55, 0x7f, 0xde, 0x94, 0xd4, 0x1c, 0x13, 0xb2, 0x48, 0x29, 0xb8, 0xfd, + 0x42, 0x41, 0x24, 0x82, 0x5a, 0xac, 0xb1, 0x40, 0x94, 0xe5, 0xe7, 0xd4, + 0xf8, 0xde, 0xea, 0x7d, 0xb2, 0xac, 0x29, 0x40, +}; +static const unsigned char kat288_addin0[] = { + 0x4c, 0x64, 0xc5, 0xa5, 0xc1, 0xc6, 0x91, 0x4b, 0x61, 0xfa, 0xf2, 0x64, + 0x92, 0x4c, 0x10, 0xde, 0xbc, 0x2f, 0x36, 0x7a, 0xc4, 0xcb, 0x1e, 0x01, + 0x24, 0x88, 0x32, 0x2f, 0xb1, 0x9d, 0x69, 0xa8, +}; +static const unsigned char kat288_addin1[] = { + 0x71, 0x93, 0xe6, 0x1b, 0xb3, 0xe7, 0x5d, 0x48, 0xe4, 0xa3, 0xf9, 0x0b, + 0x10, 0x8e, 0x07, 0x07, 0x4c, 0x35, 0x39, 0x06, 0x93, 0xcd, 0x0a, 0x4c, + 0xd3, 0xbb, 0x6c, 0xd2, 0x46, 0xbe, 0xb7, 0x40, +}; +static const unsigned char kat288_retbits[] = { + 0x7a, 0xed, 0x93, 0x1e, 0xe1, 0x7c, 0x7b, 0x05, 0x53, 0x3b, 0x52, 0xf6, + 0xb3, 0xdf, 0xc9, 0x76, 0x88, 0xf6, 0xf3, 0xb3, 0x97, 0x44, 0xed, 0xed, + 0x73, 0xdd, 0xe2, 0x7e, 0x03, 0x4a, 0xfb, 0x18, 0x01, 0xb3, 0xd1, 0x16, + 0x0d, 0xba, 0x79, 0x75, 0x59, 0xfd, 0x72, 0x16, 0x10, 0xf6, 0xd6, 0x2f, + 0x6d, 0x0c, 0x48, 0xa6, 0x74, 0x03, 0x07, 0x5f, 0x6c, 0x24, 0x50, 0xe6, + 0x24, 0x6a, 0x4d, 0x66, +}; +static const struct drbg_kat_no_reseed kat288_t = { + 2, kat288_entropyin, kat288_nonce, kat288_persstr, + kat288_addin0, kat288_addin1, kat288_retbits +}; +static const struct drbg_kat kat288 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat288_t +}; + +static const unsigned char kat289_entropyin[] = { + 0x19, 0x9c, 0xee, 0x8a, 0x88, 0x18, 0x88, 0x16, 0x6c, 0xb5, 0x2c, 0xf6, + 0x8f, 0xde, 0x78, 0x0f, 0x32, 0x55, 0xb1, 0x3d, 0x37, 0x0b, 0x68, 0x9a, +}; +static const unsigned char kat289_nonce[] = { + 0x84, 0x80, 0x16, 0xaa, 0x71, 0x57, 0x1e, 0x1c, 0x63, 0xf3, 0x17, 0x4b, + 0xf9, 0x35, 0x87, 0xc9, +}; +static const unsigned char kat289_persstr[] = { + 0x66, 0x21, 0x2f, 0x4c, 0x19, 0xb5, 0xcd, 0xf4, 0xa6, 0x59, 0x4f, 0xd4, + 0xc4, 0xf7, 0xb7, 0x83, 0x72, 0x30, 0xde, 0x71, 0xb9, 0x8d, 0x50, 0x6d, + 0x46, 0xde, 0xce, 0xac, 0xb5, 0xf0, 0xc6, 0x9c, +}; +static const unsigned char kat289_addin0[] = { + 0x59, 0x34, 0xb3, 0x95, 0x8e, 0xbe, 0x21, 0x54, 0xc2, 0x46, 0xce, 0xa5, + 0x5d, 0xf2, 0x31, 0xe4, 0x1a, 0x86, 0x7e, 0x88, 0x44, 0x12, 0x9f, 0xd6, + 0xc7, 0xde, 0x6c, 0x9c, 0xf8, 0xd4, 0xd7, 0xb8, +}; +static const unsigned char kat289_addin1[] = { + 0x0b, 0x4a, 0x32, 0xba, 0xb8, 0x42, 0xc4, 0xd2, 0x49, 0x99, 0xe9, 0xac, + 0x6b, 0xb1, 0x02, 0x4b, 0x76, 0x73, 0x08, 0x68, 0x95, 0xe8, 0x9a, 0x70, + 0x72, 0xa5, 0x9c, 0x8c, 0x75, 0xfe, 0x3e, 0x0a, +}; +static const unsigned char kat289_retbits[] = { + 0x84, 0x50, 0x41, 0x0e, 0x9a, 0x7f, 0xf9, 0xa1, 0x04, 0xd6, 0xd0, 0xec, + 0xd2, 0x31, 0x5e, 0xa5, 0x40, 0xf5, 0x4c, 0xd8, 0x8d, 0x21, 0xac, 0x6d, + 0x7c, 0xae, 0x8a, 0x86, 0x18, 0x1d, 0xcb, 0x53, 0xf1, 0x88, 0x3e, 0xe1, + 0xdc, 0xe8, 0xa2, 0x86, 0x22, 0x61, 0x62, 0x08, 0x59, 0x33, 0x4f, 0xde, + 0x9c, 0xe2, 0xde, 0xaf, 0x1b, 0x58, 0xd4, 0xd4, 0xd0, 0x1d, 0xbd, 0xfe, + 0xe7, 0x73, 0x2e, 0x8e, +}; +static const struct drbg_kat_no_reseed kat289_t = { + 3, kat289_entropyin, kat289_nonce, kat289_persstr, + kat289_addin0, kat289_addin1, kat289_retbits +}; +static const struct drbg_kat kat289 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat289_t +}; + +static const unsigned char kat290_entropyin[] = { + 0x2f, 0xf3, 0xc6, 0x29, 0x0f, 0x51, 0x40, 0xb6, 0xc4, 0x96, 0x8a, 0xfe, + 0x0c, 0x6a, 0xc1, 0x8e, 0x55, 0x74, 0xc7, 0x11, 0x73, 0x29, 0x2e, 0x54, +}; +static const unsigned char kat290_nonce[] = { + 0x93, 0xdd, 0x9d, 0xfd, 0xb4, 0x5f, 0x96, 0xb8, 0x05, 0x9c, 0xb3, 0xfd, + 0xc1, 0x25, 0xa3, 0xb5, +}; +static const unsigned char kat290_persstr[] = { + 0xdb, 0xf6, 0x83, 0x70, 0x58, 0xa3, 0x74, 0x1a, 0xbf, 0x3a, 0xd0, 0x62, + 0x97, 0xc1, 0x9b, 0x81, 0xf4, 0xc4, 0x6a, 0xdf, 0x7d, 0x46, 0xc5, 0x8b, + 0xbb, 0xce, 0x5b, 0xcf, 0x29, 0x64, 0x00, 0xd5, +}; +static const unsigned char kat290_addin0[] = { + 0x32, 0x9d, 0x4f, 0xe2, 0x73, 0x66, 0x16, 0xb0, 0x65, 0x28, 0x7f, 0x3c, + 0xad, 0x21, 0x63, 0x42, 0xb9, 0xbe, 0x26, 0xe8, 0xf2, 0xc5, 0x94, 0x64, + 0x5e, 0x7e, 0x27, 0x88, 0x07, 0x09, 0x7d, 0x5c, +}; +static const unsigned char kat290_addin1[] = { + 0x8a, 0x1e, 0x25, 0x8c, 0x3a, 0x3f, 0xb9, 0xb0, 0x31, 0x45, 0x62, 0xa3, + 0x20, 0xc0, 0xc1, 0x1e, 0x6f, 0x81, 0x37, 0xe2, 0x91, 0xa7, 0x9e, 0xd5, + 0x68, 0x48, 0x9a, 0xd0, 0x56, 0x0c, 0x7c, 0x28, +}; +static const unsigned char kat290_retbits[] = { + 0x28, 0x1c, 0xd7, 0x62, 0xf1, 0x0d, 0xdd, 0x29, 0xe0, 0xab, 0x11, 0xcf, + 0x79, 0x49, 0x4a, 0x7e, 0xb5, 0x92, 0xdd, 0x84, 0xdc, 0xe6, 0x58, 0x04, + 0x28, 0x6e, 0xea, 0x86, 0x4d, 0x8b, 0x85, 0x44, 0x28, 0x2d, 0x3f, 0xe8, + 0x0d, 0x76, 0xfe, 0x55, 0xf7, 0xfc, 0x66, 0xd0, 0x97, 0x1b, 0x8d, 0xcb, + 0x84, 0xa3, 0xf2, 0x5d, 0x85, 0x97, 0x21, 0x33, 0xe0, 0x74, 0xcd, 0xf1, + 0xe6, 0x0b, 0xf0, 0x69, +}; +static const struct drbg_kat_no_reseed kat290_t = { + 4, kat290_entropyin, kat290_nonce, kat290_persstr, + kat290_addin0, kat290_addin1, kat290_retbits +}; +static const struct drbg_kat kat290 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat290_t +}; + +static const unsigned char kat291_entropyin[] = { + 0x15, 0xb6, 0x96, 0xec, 0xc0, 0x14, 0x9b, 0x78, 0x05, 0xbd, 0xbe, 0xaa, + 0x65, 0xb9, 0xea, 0x9b, 0x76, 0xe7, 0x6d, 0xd6, 0x8b, 0xb9, 0xba, 0x5f, +}; +static const unsigned char kat291_nonce[] = { + 0xee, 0x41, 0x74, 0xe0, 0x87, 0xf3, 0xe7, 0x4a, 0x3f, 0xd2, 0xfc, 0x40, + 0x35, 0x59, 0x20, 0x9c, +}; +static const unsigned char kat291_persstr[] = { + 0xa4, 0x2d, 0xd8, 0x8c, 0xdb, 0xa2, 0x5d, 0x88, 0x9d, 0xbc, 0xd9, 0xc7, + 0xb7, 0xa7, 0xbc, 0xfe, 0x25, 0xad, 0x1a, 0x81, 0xa1, 0x76, 0x1e, 0x24, + 0xe0, 0x46, 0xca, 0xd4, 0x75, 0x91, 0x02, 0x5c, +}; +static const unsigned char kat291_addin0[] = { + 0xa3, 0x73, 0xc6, 0x7b, 0xf7, 0xa8, 0x78, 0x98, 0x70, 0x76, 0x8a, 0xf6, + 0x01, 0x5a, 0x13, 0x39, 0x36, 0x82, 0x1d, 0x97, 0xcf, 0xe1, 0xdc, 0x49, + 0x73, 0x1b, 0x14, 0x5f, 0x66, 0x66, 0xdf, 0xe3, +}; +static const unsigned char kat291_addin1[] = { + 0x7b, 0x93, 0xdd, 0x28, 0x55, 0xff, 0x93, 0xec, 0x1d, 0x19, 0x4c, 0x86, + 0x71, 0xa6, 0x25, 0x99, 0x39, 0xbc, 0x4a, 0x57, 0x29, 0x94, 0xae, 0x3d, + 0x52, 0xa8, 0x44, 0x11, 0x74, 0x90, 0x53, 0x3a, +}; +static const unsigned char kat291_retbits[] = { + 0x78, 0xca, 0x84, 0xfe, 0x42, 0xb1, 0x6e, 0xab, 0x52, 0x88, 0x8d, 0x54, + 0x0c, 0x50, 0xe5, 0x21, 0x61, 0x5c, 0x5f, 0x4d, 0xff, 0x04, 0x56, 0xcb, + 0x80, 0x8d, 0x10, 0xf6, 0x66, 0xd0, 0x8d, 0xd1, 0x9c, 0x68, 0x78, 0x9b, + 0xe1, 0xd9, 0xd8, 0x55, 0xff, 0x99, 0x5d, 0xeb, 0x8e, 0x02, 0x61, 0xe8, + 0xc4, 0x4b, 0x12, 0x48, 0xb0, 0xb2, 0xde, 0xc2, 0x59, 0x9d, 0x8e, 0x77, + 0x9d, 0x24, 0xc8, 0x39, +}; +static const struct drbg_kat_no_reseed kat291_t = { + 5, kat291_entropyin, kat291_nonce, kat291_persstr, + kat291_addin0, kat291_addin1, kat291_retbits +}; +static const struct drbg_kat kat291 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat291_t +}; + +static const unsigned char kat292_entropyin[] = { + 0xdd, 0xc6, 0xe5, 0x0f, 0xf9, 0x08, 0x3f, 0xed, 0xf4, 0xa5, 0xd5, 0x6f, + 0xd9, 0x23, 0x8a, 0x25, 0x65, 0xf5, 0x01, 0x84, 0xdf, 0x28, 0x3a, 0x78, +}; +static const unsigned char kat292_nonce[] = { + 0xa3, 0x06, 0x0e, 0x17, 0x32, 0xf1, 0xb1, 0xde, 0xfc, 0x8e, 0x5f, 0x39, + 0xe0, 0x12, 0xe3, 0x03, +}; +static const unsigned char kat292_persstr[] = { + 0x86, 0x98, 0x83, 0x57, 0x95, 0x80, 0x4b, 0xa3, 0x46, 0x5f, 0x3e, 0xcd, + 0xd4, 0xac, 0xe0, 0x47, 0x50, 0x6c, 0xb1, 0x5d, 0xd9, 0xc8, 0x72, 0x8f, + 0x07, 0x5f, 0xce, 0xa5, 0x03, 0x3f, 0xa0, 0xd8, +}; +static const unsigned char kat292_addin0[] = { + 0xb1, 0x01, 0x1f, 0x40, 0xcf, 0x33, 0x1e, 0x33, 0xd2, 0x4f, 0xfe, 0x86, + 0x17, 0x8f, 0x70, 0xe6, 0xc7, 0xd4, 0xd2, 0xb4, 0x43, 0xb6, 0x4f, 0xbd, + 0x5c, 0x97, 0x9b, 0x94, 0x19, 0x3c, 0xac, 0x60, +}; +static const unsigned char kat292_addin1[] = { + 0x3a, 0x72, 0xe1, 0xe6, 0x63, 0x64, 0x04, 0xbe, 0x69, 0xf8, 0x53, 0xbe, + 0xb0, 0x63, 0x3d, 0x5d, 0xef, 0x03, 0xb1, 0x6b, 0x4b, 0x20, 0x5a, 0x02, + 0x38, 0x4c, 0x26, 0x95, 0x1c, 0xa0, 0xf2, 0x20, +}; +static const unsigned char kat292_retbits[] = { + 0x7d, 0xbe, 0xac, 0xe1, 0xa9, 0x0a, 0x28, 0x43, 0xc3, 0xde, 0x36, 0xf3, + 0xbb, 0xac, 0x6e, 0x91, 0x40, 0xa9, 0x38, 0xce, 0xd6, 0x30, 0x41, 0x6e, + 0xb1, 0xe1, 0x63, 0x87, 0x08, 0xec, 0x12, 0xe4, 0x80, 0xda, 0x65, 0xe0, + 0x0c, 0x82, 0x94, 0x15, 0x1e, 0xa4, 0xb9, 0xa1, 0xd5, 0xb2, 0x59, 0x75, + 0xd7, 0x94, 0x0d, 0x57, 0xc8, 0xde, 0x72, 0xe2, 0x03, 0x82, 0x99, 0x6f, + 0xf4, 0xdc, 0x64, 0xc2, +}; +static const struct drbg_kat_no_reseed kat292_t = { + 6, kat292_entropyin, kat292_nonce, kat292_persstr, + kat292_addin0, kat292_addin1, kat292_retbits +}; +static const struct drbg_kat kat292 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat292_t +}; + +static const unsigned char kat293_entropyin[] = { + 0xdd, 0xe2, 0x70, 0x18, 0xcd, 0xea, 0x02, 0x7b, 0x27, 0x3a, 0x83, 0xab, + 0x28, 0xf8, 0x18, 0x22, 0x93, 0xe5, 0x37, 0x32, 0x91, 0x64, 0x12, 0x62, +}; +static const unsigned char kat293_nonce[] = { + 0xe8, 0x81, 0x0e, 0x24, 0xfb, 0x96, 0xba, 0x67, 0x68, 0xb6, 0x57, 0x47, + 0xbb, 0x27, 0x93, 0xb8, +}; +static const unsigned char kat293_persstr[] = { + 0xd8, 0xad, 0xa0, 0x62, 0xfb, 0x8a, 0x56, 0x7f, 0x42, 0x15, 0xeb, 0x1f, + 0xf8, 0x7a, 0x2c, 0xd6, 0xfe, 0x96, 0x4d, 0x7b, 0xeb, 0xcc, 0x9c, 0xf4, + 0xec, 0xc5, 0x31, 0xbe, 0x21, 0xad, 0x47, 0x8f, +}; +static const unsigned char kat293_addin0[] = { + 0xee, 0xa0, 0xc6, 0x51, 0xaf, 0xae, 0x1c, 0xca, 0x7d, 0x6b, 0x4a, 0xef, + 0x4c, 0x1e, 0x0c, 0x22, 0x19, 0x4c, 0x70, 0xa6, 0x3f, 0xe4, 0x74, 0xa8, + 0xb5, 0xfc, 0xbd, 0x26, 0xa5, 0x69, 0x6c, 0x3c, +}; +static const unsigned char kat293_addin1[] = { + 0x71, 0xee, 0xe7, 0x0d, 0x6b, 0x57, 0x85, 0x4d, 0xa6, 0x87, 0x89, 0xd9, + 0x92, 0xe4, 0x13, 0x24, 0x85, 0xa9, 0xaa, 0xcc, 0x3f, 0xb8, 0xfa, 0xab, + 0xc9, 0x08, 0xed, 0xda, 0x65, 0x3b, 0xf7, 0x40, +}; +static const unsigned char kat293_retbits[] = { + 0xce, 0x2f, 0x8c, 0x2a, 0xcc, 0xc4, 0xc4, 0x5f, 0x18, 0x3b, 0xfe, 0xbe, + 0xcf, 0x1a, 0xdd, 0x4f, 0x32, 0xed, 0x36, 0x0d, 0x35, 0x6e, 0xfb, 0x90, + 0x63, 0x15, 0xc0, 0x43, 0xd1, 0x50, 0x66, 0x0a, 0x35, 0xb5, 0xd0, 0x35, + 0x0c, 0xb0, 0x53, 0xd4, 0x58, 0x16, 0x7e, 0xac, 0xf3, 0x5c, 0xc7, 0x01, + 0x2b, 0xdd, 0x1e, 0xf7, 0x08, 0x18, 0xde, 0xdd, 0xf3, 0x8b, 0x4e, 0x85, + 0x57, 0xbc, 0xc0, 0x3e, +}; +static const struct drbg_kat_no_reseed kat293_t = { + 7, kat293_entropyin, kat293_nonce, kat293_persstr, + kat293_addin0, kat293_addin1, kat293_retbits +}; +static const struct drbg_kat kat293 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat293_t +}; + +static const unsigned char kat294_entropyin[] = { + 0x49, 0xb2, 0xae, 0x2b, 0x29, 0x14, 0xd6, 0x88, 0x53, 0x8b, 0xb2, 0x91, + 0x93, 0xae, 0x63, 0x78, 0xe0, 0xe8, 0xb9, 0x41, 0xdd, 0x3e, 0x31, 0x52, +}; +static const unsigned char kat294_nonce[] = { + 0x27, 0x9f, 0x5f, 0x18, 0x32, 0xcc, 0xd1, 0x0d, 0x08, 0x51, 0x40, 0x45, + 0x27, 0xed, 0x25, 0xfc, +}; +static const unsigned char kat294_persstr[] = { + 0xee, 0x3a, 0x40, 0xee, 0x43, 0x22, 0xba, 0xb1, 0x68, 0x23, 0x59, 0x23, + 0xb5, 0x2b, 0x80, 0xa3, 0xc7, 0x11, 0xcd, 0x7a, 0xd7, 0x61, 0x8e, 0x76, + 0x40, 0x0e, 0x46, 0xf1, 0x53, 0xa1, 0x07, 0x22, +}; +static const unsigned char kat294_addin0[] = { + 0xca, 0x3e, 0x55, 0xa7, 0xe1, 0xa5, 0x1d, 0x7d, 0xa3, 0x37, 0x9a, 0x2c, + 0xbc, 0x31, 0x62, 0xfe, 0xe7, 0x05, 0xff, 0xc8, 0xe2, 0xbb, 0x72, 0x94, + 0xe9, 0xf2, 0xd9, 0xc2, 0x9f, 0xe8, 0xb3, 0x86, +}; +static const unsigned char kat294_addin1[] = { + 0x09, 0xac, 0xba, 0x8e, 0x05, 0x59, 0x39, 0x94, 0x24, 0x8d, 0x40, 0x66, + 0xb3, 0xd7, 0x70, 0xf4, 0x1b, 0x47, 0xab, 0x82, 0x44, 0x96, 0x8b, 0xb6, + 0x26, 0xbd, 0xfb, 0x6d, 0xb1, 0x41, 0x76, 0x0f, +}; +static const unsigned char kat294_retbits[] = { + 0xaf, 0x2e, 0xb7, 0x3e, 0x49, 0xb1, 0x3c, 0x1c, 0x42, 0x62, 0x95, 0xfa, + 0x26, 0x43, 0xde, 0x08, 0xb1, 0x92, 0xac, 0x24, 0x07, 0x9b, 0x71, 0xc8, + 0xc1, 0x75, 0x50, 0x96, 0x44, 0x93, 0x7f, 0x22, 0x2d, 0xfb, 0xd6, 0xc7, + 0x7d, 0xd2, 0x5e, 0xa3, 0xea, 0xfe, 0xf7, 0x1d, 0xa2, 0xaa, 0x7b, 0xdb, + 0x68, 0xab, 0x4c, 0x8e, 0x97, 0xbd, 0xeb, 0x7c, 0x70, 0x6d, 0x99, 0xb5, + 0xb6, 0x7c, 0x6f, 0x9d, +}; +static const struct drbg_kat_no_reseed kat294_t = { + 8, kat294_entropyin, kat294_nonce, kat294_persstr, + kat294_addin0, kat294_addin1, kat294_retbits +}; +static const struct drbg_kat kat294 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat294_t +}; + +static const unsigned char kat295_entropyin[] = { + 0xe8, 0xc5, 0x38, 0xae, 0x11, 0x61, 0x98, 0x96, 0xbd, 0x34, 0x7d, 0x67, + 0x90, 0x07, 0x66, 0x1a, 0xce, 0x7e, 0x51, 0x92, 0xb8, 0x39, 0x19, 0x42, +}; +static const unsigned char kat295_nonce[] = { + 0xf8, 0x26, 0x28, 0xa0, 0x5a, 0x8d, 0xfc, 0x06, 0x68, 0xf7, 0xf7, 0x54, + 0xb1, 0x71, 0xd5, 0xdb, +}; +static const unsigned char kat295_persstr[] = { + 0x2c, 0x2a, 0x7e, 0xc3, 0x15, 0x64, 0xa3, 0x4e, 0x9c, 0xfb, 0x9f, 0x0f, + 0x42, 0xd8, 0xba, 0xb6, 0x81, 0x2b, 0x4a, 0xde, 0x26, 0x3a, 0xf4, 0xf0, + 0x02, 0x29, 0xe6, 0xeb, 0x99, 0x1e, 0x25, 0x92, +}; +static const unsigned char kat295_addin0[] = { + 0x8d, 0x9e, 0x18, 0x24, 0xd2, 0x77, 0x37, 0xaf, 0xc4, 0x11, 0xb2, 0x4b, + 0xe6, 0x5e, 0xac, 0x50, 0x48, 0x0f, 0xce, 0x4a, 0xfb, 0xf7, 0x31, 0x7a, + 0x24, 0xb0, 0x4e, 0x24, 0x67, 0x20, 0x6f, 0x54, +}; +static const unsigned char kat295_addin1[] = { + 0x3f, 0x02, 0x6a, 0x1a, 0x2b, 0xb8, 0xd0, 0x59, 0xc4, 0x95, 0xb0, 0xd4, + 0xa4, 0xf9, 0x73, 0x2d, 0x94, 0xaa, 0xf1, 0x5d, 0xe4, 0x2b, 0xf3, 0x44, + 0x12, 0xd7, 0x27, 0x0a, 0xaf, 0xca, 0x09, 0x9b, +}; +static const unsigned char kat295_retbits[] = { + 0xb3, 0x96, 0xa8, 0x56, 0x93, 0x88, 0x93, 0x2a, 0x6f, 0xd2, 0x8c, 0xab, + 0x6c, 0xfb, 0x53, 0x37, 0x57, 0x1c, 0x1c, 0x91, 0xb8, 0xde, 0xf9, 0x83, + 0x5a, 0x2d, 0xcf, 0x23, 0x53, 0x66, 0x93, 0xb6, 0xa2, 0x75, 0xab, 0xb4, + 0xd4, 0xa3, 0xa2, 0xa1, 0xf4, 0x92, 0xb6, 0xfe, 0x5b, 0xce, 0x76, 0x30, + 0xde, 0x03, 0x99, 0x4e, 0xf2, 0x34, 0xd4, 0x25, 0x5e, 0xa3, 0x38, 0xa1, + 0x3a, 0xfb, 0x8e, 0x6d, +}; +static const struct drbg_kat_no_reseed kat295_t = { + 9, kat295_entropyin, kat295_nonce, kat295_persstr, + kat295_addin0, kat295_addin1, kat295_retbits +}; +static const struct drbg_kat kat295 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat295_t +}; + +static const unsigned char kat296_entropyin[] = { + 0x95, 0x44, 0xea, 0x65, 0x20, 0x52, 0x83, 0xf3, 0x66, 0x82, 0x4c, 0x55, + 0x60, 0x21, 0x78, 0xeb, 0x82, 0x13, 0x5d, 0x01, 0x57, 0x78, 0x8f, 0x86, +}; +static const unsigned char kat296_nonce[] = { + 0x5e, 0x03, 0x79, 0xad, 0xec, 0x23, 0x87, 0xfc, 0xdb, 0xc6, 0x4d, 0x0f, + 0x9e, 0x23, 0xcc, 0xb5, +}; +static const unsigned char kat296_persstr[] = { + 0xbe, 0x01, 0x6b, 0x1e, 0xf2, 0x74, 0xc7, 0x2c, 0x74, 0x97, 0x0c, 0x7f, + 0x16, 0xff, 0x9f, 0x6d, 0xd5, 0x79, 0xad, 0x73, 0x6a, 0xb8, 0x02, 0x38, + 0x5b, 0xb7, 0xc5, 0xee, 0xf7, 0x08, 0x6a, 0x95, +}; +static const unsigned char kat296_addin0[] = { + 0xaa, 0xbf, 0xe4, 0x85, 0x76, 0x08, 0x9e, 0x44, 0x43, 0x1a, 0xe8, 0x94, + 0xcc, 0x31, 0x6e, 0xe9, 0x6b, 0xf7, 0xa4, 0x91, 0x89, 0xc7, 0xe4, 0x2a, + 0xbc, 0xca, 0x27, 0x87, 0x8b, 0x30, 0xef, 0x24, +}; +static const unsigned char kat296_addin1[] = { + 0xb5, 0x29, 0xe2, 0xd3, 0x7b, 0x08, 0x08, 0xb1, 0xc9, 0x25, 0x34, 0x40, + 0x19, 0xdd, 0xdd, 0x3e, 0xea, 0x22, 0x77, 0x68, 0x38, 0xa0, 0x6e, 0x67, + 0x7f, 0xff, 0x67, 0x12, 0x7b, 0xb6, 0x8a, 0x6d, +}; +static const unsigned char kat296_retbits[] = { + 0xab, 0x1a, 0x41, 0x84, 0x13, 0x30, 0xdf, 0x7e, 0x73, 0x4a, 0x57, 0xbe, + 0x20, 0x81, 0x71, 0x95, 0x0f, 0xa8, 0xe6, 0x4f, 0x4a, 0x2e, 0x26, 0xc7, + 0x2a, 0x10, 0xb3, 0x3d, 0xf9, 0xa7, 0x7b, 0xb2, 0x42, 0x84, 0xbf, 0xa7, + 0x22, 0x0b, 0xf8, 0xef, 0x03, 0x5e, 0x4d, 0x15, 0x84, 0x2b, 0xe5, 0x51, + 0x03, 0xec, 0x47, 0x43, 0xe2, 0xa9, 0x5b, 0xad, 0xd9, 0x48, 0x4b, 0x36, + 0x0d, 0x22, 0xe2, 0xdb, +}; +static const struct drbg_kat_no_reseed kat296_t = { + 10, kat296_entropyin, kat296_nonce, kat296_persstr, + kat296_addin0, kat296_addin1, kat296_retbits +}; +static const struct drbg_kat kat296 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat296_t +}; + +static const unsigned char kat297_entropyin[] = { + 0x25, 0xec, 0x07, 0x42, 0x27, 0x5e, 0x6f, 0xd6, 0xd3, 0x09, 0xa0, 0x26, + 0x99, 0xb7, 0xf2, 0x1a, 0xa1, 0x83, 0x62, 0xea, 0x68, 0x3b, 0xa7, 0x32, +}; +static const unsigned char kat297_nonce[] = { + 0x54, 0x24, 0xe5, 0x50, 0x26, 0xf0, 0x28, 0x36, 0x9f, 0xd9, 0x6f, 0x57, + 0x50, 0x9b, 0xfe, 0x92, +}; +static const unsigned char kat297_persstr[] = { + 0xef, 0xed, 0x65, 0x1e, 0x62, 0x79, 0x63, 0xc4, 0x3f, 0xbf, 0x16, 0x4b, + 0xd7, 0xb9, 0xb3, 0xbc, 0xf1, 0x8c, 0xb7, 0x8a, 0xe9, 0x7d, 0xc4, 0x8a, + 0x85, 0xd5, 0x21, 0x2a, 0xc7, 0x1a, 0x11, 0xfc, +}; +static const unsigned char kat297_addin0[] = { + 0x26, 0xb0, 0xf1, 0x02, 0x5f, 0x31, 0x83, 0x14, 0xb5, 0x5f, 0xc1, 0xa4, + 0xdd, 0x32, 0x55, 0x13, 0xc4, 0x53, 0xb6, 0x6d, 0x0b, 0x21, 0x29, 0x3f, + 0x77, 0x5c, 0xcd, 0x7d, 0x3b, 0x9f, 0x43, 0x43, +}; +static const unsigned char kat297_addin1[] = { + 0x2f, 0x94, 0xd7, 0xde, 0x2c, 0xe2, 0x5d, 0x12, 0x4d, 0x9d, 0xc6, 0x8b, + 0x39, 0xf9, 0x07, 0x6e, 0xcd, 0x2f, 0xf1, 0x4f, 0xe4, 0xe1, 0xd5, 0xc1, + 0x7c, 0x6e, 0x4d, 0xf2, 0x25, 0x7f, 0xc1, 0xde, +}; +static const unsigned char kat297_retbits[] = { + 0xf9, 0xfd, 0x57, 0x61, 0x04, 0xd7, 0xf6, 0x8a, 0x2a, 0xf7, 0xd6, 0xa6, + 0x3f, 0x82, 0x44, 0xb0, 0x63, 0xe2, 0x87, 0x78, 0x7d, 0x8c, 0x93, 0xf3, + 0x16, 0x7e, 0xed, 0x9f, 0x8f, 0x83, 0x20, 0xc8, 0x61, 0xcd, 0x8c, 0xcb, + 0x51, 0x24, 0xd3, 0x2a, 0xc7, 0x5c, 0x57, 0x6d, 0xaa, 0xc3, 0x08, 0x2b, + 0x3f, 0x5f, 0x75, 0x50, 0x64, 0x0b, 0x77, 0x9e, 0x6f, 0xbe, 0xb7, 0xa3, + 0xf8, 0x9f, 0xcb, 0x11, +}; +static const struct drbg_kat_no_reseed kat297_t = { + 11, kat297_entropyin, kat297_nonce, kat297_persstr, + kat297_addin0, kat297_addin1, kat297_retbits +}; +static const struct drbg_kat kat297 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat297_t +}; + +static const unsigned char kat298_entropyin[] = { + 0xb7, 0x2b, 0xc2, 0xe7, 0x5e, 0x22, 0x7a, 0x5f, 0xab, 0xc2, 0x67, 0xc7, + 0x7f, 0xc7, 0xf9, 0x9c, 0x81, 0xd2, 0xe4, 0xe4, 0x1e, 0xfc, 0x31, 0xb0, +}; +static const unsigned char kat298_nonce[] = { + 0x3e, 0x28, 0x60, 0x39, 0xed, 0x89, 0x9f, 0x2b, 0xdc, 0x70, 0x25, 0xa7, + 0xd3, 0x07, 0x12, 0xdc, +}; +static const unsigned char kat298_persstr[] = { + 0x35, 0x90, 0x15, 0x3e, 0xf3, 0xb5, 0x80, 0x51, 0x6a, 0x0a, 0xae, 0x3e, + 0x9c, 0xc7, 0xe3, 0x8c, 0x3e, 0xe6, 0xf1, 0x70, 0x3b, 0xf7, 0x7a, 0x3a, + 0x6d, 0x8f, 0xdb, 0x58, 0x40, 0x0c, 0xf1, 0x20, +}; +static const unsigned char kat298_addin0[] = { + 0x7d, 0x62, 0xa4, 0x68, 0x7d, 0x5c, 0x11, 0xd3, 0x7c, 0x3a, 0x86, 0x47, + 0x4a, 0x53, 0x22, 0x8c, 0xa5, 0x30, 0x7e, 0xc5, 0x80, 0x1d, 0xc2, 0x49, + 0x53, 0xa0, 0x12, 0x88, 0xde, 0x86, 0x8b, 0xdb, +}; +static const unsigned char kat298_addin1[] = { + 0xf4, 0xce, 0x4d, 0x4b, 0x6c, 0xc8, 0x04, 0x1c, 0xc0, 0x94, 0xf0, 0x5f, + 0xb4, 0x68, 0x36, 0xfe, 0x79, 0x4c, 0x81, 0x0a, 0x00, 0xea, 0x54, 0x54, + 0x26, 0x29, 0x74, 0x96, 0xd1, 0xb3, 0xda, 0x84, +}; +static const unsigned char kat298_retbits[] = { + 0x91, 0x91, 0x88, 0x42, 0x1a, 0xc9, 0x04, 0xb1, 0x86, 0x98, 0x66, 0x2d, + 0xf0, 0x6b, 0x1b, 0x2c, 0x61, 0xd9, 0x38, 0xee, 0x32, 0x45, 0x70, 0xa4, + 0xd3, 0xfd, 0x84, 0x53, 0x47, 0xf7, 0x6a, 0xb9, 0x0e, 0xa8, 0x98, 0xe8, + 0x74, 0xd5, 0x29, 0x07, 0x75, 0x42, 0x94, 0x1d, 0xf5, 0x47, 0xdc, 0xd1, + 0xb0, 0xa3, 0x70, 0xad, 0xb8, 0xf3, 0xcf, 0x2b, 0x66, 0x50, 0x9f, 0x2a, + 0xa0, 0x0c, 0xe0, 0x07, +}; +static const struct drbg_kat_no_reseed kat298_t = { + 12, kat298_entropyin, kat298_nonce, kat298_persstr, + kat298_addin0, kat298_addin1, kat298_retbits +}; +static const struct drbg_kat kat298 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat298_t +}; + +static const unsigned char kat299_entropyin[] = { + 0x80, 0x0e, 0xa2, 0xb7, 0xe2, 0xa3, 0x4b, 0xa4, 0xe0, 0x4a, 0x8b, 0x2e, + 0x3f, 0x40, 0x4a, 0x4e, 0xbe, 0x78, 0xd1, 0xb1, 0x19, 0x64, 0x71, 0x0b, +}; +static const unsigned char kat299_nonce[] = { + 0x26, 0x14, 0xf4, 0x44, 0xb7, 0x0a, 0x50, 0xd8, 0xae, 0x85, 0x27, 0x07, + 0x86, 0x74, 0x16, 0x35, +}; +static const unsigned char kat299_persstr[] = { + 0x61, 0x11, 0x2f, 0x45, 0x79, 0xe8, 0xda, 0x87, 0xf9, 0xbd, 0x33, 0xaa, + 0xd0, 0x8f, 0xbe, 0xea, 0x17, 0xe7, 0x8d, 0xe3, 0xdb, 0xf6, 0xa7, 0x55, + 0x49, 0xdc, 0x50, 0xd2, 0xa9, 0x22, 0x72, 0x16, +}; +static const unsigned char kat299_addin0[] = { + 0x67, 0x1b, 0x8c, 0xc5, 0x1f, 0x1c, 0x53, 0xe4, 0x25, 0xd5, 0xf9, 0x7d, + 0x73, 0x05, 0x30, 0x21, 0xdd, 0x6a, 0xf2, 0x3f, 0x6a, 0xbd, 0xa8, 0x2e, + 0xfb, 0x00, 0x63, 0x75, 0xfd, 0xfe, 0x68, 0x18, +}; +static const unsigned char kat299_addin1[] = { + 0x50, 0x2f, 0xc3, 0xd1, 0xe8, 0x9e, 0x17, 0xf0, 0xf1, 0x11, 0xdf, 0xa3, + 0x2c, 0x74, 0x8a, 0x79, 0xdd, 0x1b, 0x1e, 0x19, 0x02, 0x40, 0x27, 0xbc, + 0x0d, 0x92, 0xed, 0x30, 0x63, 0x85, 0x5b, 0x07, +}; +static const unsigned char kat299_retbits[] = { + 0xad, 0xfc, 0xe1, 0x6f, 0x2f, 0x64, 0x82, 0xd0, 0x19, 0x0d, 0xdd, 0xbb, + 0x89, 0xea, 0xd4, 0x48, 0xe3, 0x32, 0x64, 0xfb, 0xe9, 0xf7, 0x6e, 0xf7, + 0x53, 0x07, 0x62, 0x25, 0xf1, 0xc4, 0x30, 0x68, 0x6f, 0x33, 0x2c, 0xba, + 0x84, 0x54, 0xab, 0x81, 0xef, 0x91, 0x86, 0xa8, 0x2a, 0x81, 0x45, 0x31, + 0xc4, 0x9a, 0x1e, 0x46, 0xa2, 0x37, 0x2f, 0xd0, 0x6f, 0xfc, 0x57, 0x68, + 0x23, 0x00, 0x1b, 0x97, +}; +static const struct drbg_kat_no_reseed kat299_t = { + 13, kat299_entropyin, kat299_nonce, kat299_persstr, + kat299_addin0, kat299_addin1, kat299_retbits +}; +static const struct drbg_kat kat299 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat299_t +}; + +static const unsigned char kat300_entropyin[] = { + 0x46, 0xbc, 0x30, 0x11, 0x14, 0x29, 0x14, 0xe8, 0x7f, 0x3b, 0xed, 0xea, + 0x5d, 0x09, 0xed, 0xc1, 0x88, 0xac, 0xdb, 0x2b, 0xd4, 0x96, 0x2d, 0x5e, +}; +static const unsigned char kat300_nonce[] = { + 0x99, 0xb0, 0xb4, 0xb4, 0x42, 0xe8, 0x5e, 0xaf, 0x63, 0x8a, 0xb4, 0x65, + 0x44, 0x37, 0xc6, 0xbf, +}; +static const unsigned char kat300_persstr[] = { + 0x5b, 0xe5, 0x1d, 0x43, 0x7e, 0x75, 0x05, 0x7d, 0xd2, 0xef, 0x4c, 0xa7, + 0x44, 0x3f, 0xad, 0xe0, 0x7d, 0x52, 0x0d, 0x17, 0x07, 0x4b, 0x5b, 0xd7, + 0x3a, 0xca, 0x11, 0x17, 0x31, 0xb5, 0x08, 0xa5, +}; +static const unsigned char kat300_addin0[] = { + 0x81, 0xa5, 0x40, 0xc5, 0xf3, 0x37, 0x9a, 0x46, 0xa2, 0xea, 0x35, 0xcf, + 0xa3, 0x58, 0xd6, 0x7f, 0x6b, 0x35, 0xc0, 0x23, 0xf9, 0x10, 0x30, 0x4b, + 0x87, 0x37, 0x44, 0xaa, 0xb6, 0x32, 0x55, 0xbf, +}; +static const unsigned char kat300_addin1[] = { + 0x55, 0xa2, 0xe3, 0x45, 0x99, 0xb0, 0x05, 0x08, 0xea, 0x03, 0x89, 0x56, + 0x3c, 0xf5, 0xc6, 0x63, 0x77, 0x5e, 0x4c, 0x19, 0x13, 0x01, 0x3e, 0x65, + 0x99, 0x9e, 0xa1, 0x52, 0x94, 0x78, 0x84, 0xfb, +}; +static const unsigned char kat300_retbits[] = { + 0x56, 0x22, 0xea, 0x84, 0x41, 0x40, 0x52, 0x21, 0x81, 0xd8, 0x3c, 0x5d, + 0xb4, 0x31, 0x8e, 0xfe, 0xa2, 0x59, 0x07, 0x80, 0x70, 0x5b, 0x94, 0x9a, + 0x94, 0x22, 0xf0, 0xee, 0x57, 0x0c, 0x3e, 0x61, 0x35, 0x61, 0x64, 0xc2, + 0xe8, 0xc3, 0x27, 0x5f, 0x5e, 0xdc, 0x8c, 0xf1, 0x8b, 0x71, 0xec, 0xd6, + 0x34, 0xea, 0xe5, 0x29, 0x01, 0xca, 0xa5, 0x23, 0x04, 0x7d, 0xc1, 0x78, + 0xf0, 0x2f, 0x2c, 0xc6, +}; +static const struct drbg_kat_no_reseed kat300_t = { + 14, kat300_entropyin, kat300_nonce, kat300_persstr, + kat300_addin0, kat300_addin1, kat300_retbits +}; +static const struct drbg_kat kat300 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat300_t +}; + +static const unsigned char kat301_entropyin[] = { + 0xa5, 0x7c, 0xc3, 0xb9, 0x95, 0xf3, 0x55, 0x62, 0xba, 0x30, 0x61, 0x9c, + 0xe6, 0xc2, 0xb5, 0x1f, 0x22, 0x17, 0xbf, 0xf0, 0x14, 0x00, 0x6e, 0xf1, +}; +static const unsigned char kat301_nonce[] = { + 0xe5, 0x0a, 0x31, 0x2b, 0x22, 0xd6, 0x8f, 0x32, 0x0d, 0x4b, 0xac, 0x24, + 0x0d, 0x41, 0x4f, 0x47, +}; +static const unsigned char kat301_persstr[] = {0}; +static const unsigned char kat301_addin0[] = {0}; +static const unsigned char kat301_addin1[] = {0}; +static const unsigned char kat301_retbits[] = { + 0xf2, 0xcf, 0xfe, 0xb0, 0xf4, 0xff, 0xbe, 0x77, 0x3d, 0xc8, 0x04, 0x72, + 0x08, 0x2b, 0x3c, 0x0a, 0x87, 0x7a, 0xaa, 0x11, 0x3d, 0xc4, 0xd8, 0x67, + 0x8b, 0x25, 0xd8, 0x42, 0x02, 0x70, 0xe3, 0x50, 0x88, 0xcd, 0x9e, 0xb2, + 0xcb, 0xaa, 0xd9, 0xbc, 0x3d, 0x5b, 0x51, 0x86, 0x54, 0x47, 0x24, 0x5a, + 0x3a, 0x78, 0xb3, 0x8c, 0x51, 0xd0, 0xa1, 0x9c, 0xa0, 0x8c, 0x61, 0x95, + 0x58, 0x7d, 0xfd, 0x7a, +}; +static const struct drbg_kat_no_reseed kat301_t = { + 0, kat301_entropyin, kat301_nonce, kat301_persstr, + kat301_addin0, kat301_addin1, kat301_retbits +}; +static const struct drbg_kat kat301 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat301_t +}; + +static const unsigned char kat302_entropyin[] = { + 0x0b, 0x61, 0x0e, 0x89, 0x79, 0x68, 0x2f, 0x44, 0xd9, 0x37, 0xc9, 0x74, + 0xe7, 0x3a, 0x4c, 0x3d, 0xf9, 0x5a, 0x34, 0xb0, 0x92, 0x40, 0x5f, 0xe4, +}; +static const unsigned char kat302_nonce[] = { + 0x08, 0x55, 0x81, 0xc0, 0x1f, 0xb9, 0x16, 0x15, 0x84, 0xb9, 0xf6, 0x52, + 0x6f, 0x54, 0x7b, 0x44, +}; +static const unsigned char kat302_persstr[] = {0}; +static const unsigned char kat302_addin0[] = {0}; +static const unsigned char kat302_addin1[] = {0}; +static const unsigned char kat302_retbits[] = { + 0x28, 0x2d, 0xfb, 0x8a, 0x9e, 0xd6, 0x72, 0x12, 0x29, 0xf7, 0x81, 0xa1, + 0x5a, 0x70, 0x33, 0xad, 0xbc, 0xd4, 0x9a, 0x21, 0x0a, 0x23, 0x1e, 0x17, + 0xeb, 0x70, 0xd6, 0x4c, 0xa8, 0x03, 0x75, 0xa8, 0xff, 0xcb, 0x4e, 0x9a, + 0xc6, 0xe2, 0x32, 0x73, 0xca, 0x96, 0x54, 0xe6, 0x71, 0xcc, 0xb1, 0xae, + 0x3b, 0xb5, 0x96, 0xbf, 0x7a, 0x8d, 0xf5, 0xdd, 0x23, 0x0b, 0xf4, 0xa2, + 0xb3, 0x9b, 0xf9, 0x6f, +}; +static const struct drbg_kat_no_reseed kat302_t = { + 1, kat302_entropyin, kat302_nonce, kat302_persstr, + kat302_addin0, kat302_addin1, kat302_retbits +}; +static const struct drbg_kat kat302 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat302_t +}; + +static const unsigned char kat303_entropyin[] = { + 0xf9, 0x3e, 0x04, 0x17, 0x48, 0x91, 0x02, 0x81, 0xa4, 0xff, 0x37, 0xef, + 0xe8, 0x30, 0xac, 0x02, 0x64, 0xe4, 0xb1, 0x2e, 0xce, 0x06, 0x78, 0xee, +}; +static const unsigned char kat303_nonce[] = { + 0x7d, 0x4d, 0x6c, 0x54, 0x5d, 0xe8, 0xc8, 0x11, 0x84, 0x55, 0x59, 0x54, + 0x34, 0x65, 0x1b, 0xbc, +}; +static const unsigned char kat303_persstr[] = {0}; +static const unsigned char kat303_addin0[] = {0}; +static const unsigned char kat303_addin1[] = {0}; +static const unsigned char kat303_retbits[] = { + 0xa7, 0x3e, 0x59, 0xa6, 0x6d, 0xe5, 0x02, 0x29, 0x8a, 0x81, 0x06, 0x93, + 0x9f, 0xfa, 0xf8, 0x56, 0xaf, 0x9f, 0x17, 0x2b, 0x85, 0xf5, 0xe9, 0x9b, + 0x05, 0x7d, 0x6b, 0x4d, 0x6e, 0xf0, 0x52, 0xf1, 0x22, 0x67, 0x00, 0xe5, + 0xe3, 0x98, 0xe6, 0x80, 0x2f, 0x2a, 0x4a, 0xfa, 0x04, 0xe7, 0xff, 0x00, + 0xc4, 0x6f, 0x57, 0xf3, 0x45, 0xeb, 0x03, 0xde, 0x8f, 0xa7, 0x79, 0x5a, + 0x06, 0x0c, 0xf3, 0x40, +}; +static const struct drbg_kat_no_reseed kat303_t = { + 2, kat303_entropyin, kat303_nonce, kat303_persstr, + kat303_addin0, kat303_addin1, kat303_retbits +}; +static const struct drbg_kat kat303 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat303_t +}; + +static const unsigned char kat304_entropyin[] = { + 0x81, 0x48, 0x86, 0xa6, 0xb9, 0xa3, 0xcf, 0xc3, 0x18, 0x78, 0x5b, 0x41, + 0x93, 0x9f, 0x7b, 0x07, 0x5e, 0xc6, 0xb0, 0x0f, 0xc7, 0xff, 0x1c, 0x9c, +}; +static const unsigned char kat304_nonce[] = { + 0xd1, 0x33, 0x13, 0x12, 0x3f, 0xbc, 0x45, 0xce, 0x8b, 0x9e, 0x8a, 0x0a, + 0x4d, 0x82, 0xb2, 0x7a, +}; +static const unsigned char kat304_persstr[] = {0}; +static const unsigned char kat304_addin0[] = {0}; +static const unsigned char kat304_addin1[] = {0}; +static const unsigned char kat304_retbits[] = { + 0xba, 0x2a, 0x7c, 0x50, 0xc6, 0xd3, 0xe7, 0xef, 0x2d, 0x84, 0x91, 0x06, + 0xc6, 0xe8, 0x33, 0x10, 0xd9, 0xad, 0x1c, 0x1d, 0x0e, 0xf5, 0x3e, 0x61, + 0xc8, 0xb9, 0x55, 0xac, 0xb4, 0xef, 0x43, 0x42, 0xe1, 0xc0, 0xf5, 0xf2, + 0x2e, 0x19, 0xbb, 0x1e, 0xea, 0x5d, 0x0f, 0x03, 0xb6, 0xd5, 0x96, 0x92, + 0x91, 0xc4, 0x01, 0xfb, 0x6c, 0x55, 0xc9, 0x9f, 0x42, 0x52, 0xb6, 0xca, + 0x7f, 0x34, 0x19, 0x35, +}; +static const struct drbg_kat_no_reseed kat304_t = { + 3, kat304_entropyin, kat304_nonce, kat304_persstr, + kat304_addin0, kat304_addin1, kat304_retbits +}; +static const struct drbg_kat kat304 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat304_t +}; + +static const unsigned char kat305_entropyin[] = { + 0x69, 0xce, 0x9b, 0xc6, 0xa2, 0x66, 0x95, 0x02, 0x70, 0xba, 0xb4, 0x7f, + 0x50, 0x19, 0xf5, 0x76, 0xfb, 0x9d, 0xee, 0x08, 0x17, 0x9b, 0x34, 0xeb, +}; +static const unsigned char kat305_nonce[] = { + 0x63, 0x02, 0x5d, 0x58, 0x8f, 0x1d, 0x08, 0xf3, 0x81, 0x16, 0x96, 0xa6, + 0x3a, 0x10, 0x02, 0xe7, +}; +static const unsigned char kat305_persstr[] = {0}; +static const unsigned char kat305_addin0[] = {0}; +static const unsigned char kat305_addin1[] = {0}; +static const unsigned char kat305_retbits[] = { + 0x5e, 0x52, 0xaf, 0xd2, 0xa8, 0x67, 0x01, 0xcb, 0x40, 0xbd, 0x77, 0xba, + 0xf5, 0x5e, 0xff, 0x3a, 0x6c, 0x9f, 0x84, 0x34, 0x56, 0xed, 0x64, 0xd4, + 0x01, 0x53, 0x32, 0x77, 0x9f, 0xe0, 0xb2, 0x6a, 0xea, 0xc6, 0x34, 0xcb, + 0x06, 0x21, 0xc4, 0x3b, 0x3a, 0xb7, 0x1e, 0xea, 0x2a, 0xdf, 0x96, 0x31, + 0x2d, 0x38, 0x5c, 0x62, 0xc3, 0x1c, 0x09, 0x51, 0x52, 0x32, 0x60, 0xc4, + 0x69, 0xb2, 0x7d, 0x88, +}; +static const struct drbg_kat_no_reseed kat305_t = { + 4, kat305_entropyin, kat305_nonce, kat305_persstr, + kat305_addin0, kat305_addin1, kat305_retbits +}; +static const struct drbg_kat kat305 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat305_t +}; + +static const unsigned char kat306_entropyin[] = { + 0x25, 0x46, 0x9a, 0x3c, 0x9a, 0x37, 0xbd, 0x9e, 0xa9, 0x1c, 0x6f, 0x24, + 0x3e, 0x44, 0x4c, 0x1b, 0x36, 0x03, 0x01, 0x52, 0xd6, 0x38, 0x00, 0xf5, +}; +static const unsigned char kat306_nonce[] = { + 0xa2, 0xb8, 0x39, 0xab, 0xcf, 0xe4, 0xa8, 0x73, 0x68, 0x65, 0x6f, 0x43, + 0xb5, 0xbb, 0x4e, 0x2e, +}; +static const unsigned char kat306_persstr[] = {0}; +static const unsigned char kat306_addin0[] = {0}; +static const unsigned char kat306_addin1[] = {0}; +static const unsigned char kat306_retbits[] = { + 0x32, 0xc1, 0xfd, 0x38, 0xda, 0x53, 0xad, 0xbc, 0x0a, 0x21, 0xa8, 0x28, + 0xdd, 0xdc, 0xb6, 0x80, 0x9f, 0xb0, 0x1d, 0x28, 0x30, 0xc6, 0xa5, 0x44, + 0xd1, 0x2f, 0x55, 0xfa, 0x2e, 0x44, 0x43, 0xf9, 0x5f, 0x00, 0x5c, 0x0f, + 0xf2, 0x4c, 0x64, 0x92, 0xb6, 0x40, 0x95, 0xe3, 0x74, 0x6f, 0x07, 0x12, + 0x2f, 0x98, 0x3d, 0x23, 0x8f, 0x23, 0xda, 0xff, 0xf7, 0x10, 0x3a, 0x7c, + 0xda, 0x57, 0xeb, 0x0e, +}; +static const struct drbg_kat_no_reseed kat306_t = { + 5, kat306_entropyin, kat306_nonce, kat306_persstr, + kat306_addin0, kat306_addin1, kat306_retbits +}; +static const struct drbg_kat kat306 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat306_t +}; + +static const unsigned char kat307_entropyin[] = { + 0xb8, 0x8a, 0x61, 0x0e, 0x68, 0x7c, 0x1e, 0x06, 0xd1, 0x8c, 0xa9, 0x12, + 0x86, 0x6b, 0x55, 0xd2, 0x76, 0xa7, 0x89, 0xcf, 0xf9, 0x43, 0x95, 0x95, +}; +static const unsigned char kat307_nonce[] = { + 0x25, 0x4f, 0x4b, 0xaa, 0x2b, 0x34, 0xe9, 0x89, 0x8d, 0x5f, 0x78, 0x59, + 0x77, 0x24, 0xdd, 0xc7, +}; +static const unsigned char kat307_persstr[] = {0}; +static const unsigned char kat307_addin0[] = {0}; +static const unsigned char kat307_addin1[] = {0}; +static const unsigned char kat307_retbits[] = { + 0x32, 0x41, 0x1f, 0x32, 0x50, 0xbf, 0x2a, 0x18, 0xce, 0xd4, 0x8f, 0x52, + 0x2b, 0x3c, 0xc3, 0x06, 0xaf, 0xc1, 0x8e, 0x7a, 0x36, 0xcd, 0x64, 0x81, + 0x66, 0x47, 0xa0, 0x0c, 0x22, 0x1b, 0x99, 0x6a, 0x82, 0xee, 0x85, 0x0b, + 0x7c, 0x0a, 0x8c, 0xa2, 0x24, 0x1b, 0x7c, 0x6e, 0x64, 0x5b, 0x45, 0x3e, + 0x01, 0xfc, 0x35, 0xfb, 0xa5, 0x4d, 0x5b, 0xae, 0xd9, 0x22, 0x8a, 0x98, + 0xa6, 0x72, 0xdb, 0x67, +}; +static const struct drbg_kat_no_reseed kat307_t = { + 6, kat307_entropyin, kat307_nonce, kat307_persstr, + kat307_addin0, kat307_addin1, kat307_retbits +}; +static const struct drbg_kat kat307 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat307_t +}; + +static const unsigned char kat308_entropyin[] = { + 0xf3, 0x2b, 0xb1, 0x0c, 0x9e, 0x0d, 0x8f, 0x53, 0x45, 0x38, 0x94, 0x0f, + 0xba, 0xa3, 0x68, 0x44, 0xe7, 0xf6, 0xf0, 0x91, 0x97, 0x50, 0xe1, 0xeb, +}; +static const unsigned char kat308_nonce[] = { + 0x33, 0x4b, 0x85, 0xe0, 0x31, 0x51, 0x96, 0x07, 0xe0, 0x01, 0xa2, 0x87, + 0xe3, 0x25, 0x83, 0x22, +}; +static const unsigned char kat308_persstr[] = {0}; +static const unsigned char kat308_addin0[] = {0}; +static const unsigned char kat308_addin1[] = {0}; +static const unsigned char kat308_retbits[] = { + 0x75, 0x58, 0xc5, 0x96, 0x84, 0xf7, 0xa0, 0x47, 0xa1, 0xe5, 0x92, 0x9c, + 0x8a, 0x37, 0xde, 0xfc, 0x2f, 0x1f, 0x55, 0x4a, 0x34, 0xc4, 0x7f, 0xcd, + 0x9d, 0xda, 0xcf, 0x88, 0xbb, 0xf7, 0xea, 0xc4, 0x07, 0x04, 0xae, 0xaa, + 0x50, 0x3c, 0xff, 0x89, 0x63, 0x29, 0x5e, 0x70, 0x24, 0x35, 0xf7, 0x3c, + 0x93, 0xff, 0x35, 0x4f, 0x52, 0x9e, 0xe2, 0xda, 0x08, 0xc3, 0x50, 0xd4, + 0xcc, 0xb6, 0xd4, 0x5f, +}; +static const struct drbg_kat_no_reseed kat308_t = { + 7, kat308_entropyin, kat308_nonce, kat308_persstr, + kat308_addin0, kat308_addin1, kat308_retbits +}; +static const struct drbg_kat kat308 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat308_t +}; + +static const unsigned char kat309_entropyin[] = { + 0xcf, 0x14, 0x4d, 0xdf, 0xc1, 0x32, 0xa6, 0xa6, 0xe7, 0xb5, 0xa1, 0xef, + 0xd5, 0x15, 0xc7, 0x04, 0xfc, 0x22, 0x82, 0x3e, 0x21, 0x7d, 0x32, 0xdd, +}; +static const unsigned char kat309_nonce[] = { + 0x5a, 0x0b, 0xc0, 0xc8, 0x7c, 0xcc, 0xd9, 0x08, 0xb4, 0x40, 0xd6, 0xa4, + 0xc7, 0x38, 0xfa, 0x74, +}; +static const unsigned char kat309_persstr[] = {0}; +static const unsigned char kat309_addin0[] = {0}; +static const unsigned char kat309_addin1[] = {0}; +static const unsigned char kat309_retbits[] = { + 0x86, 0x5d, 0xb2, 0xd0, 0x71, 0x1d, 0xd3, 0xfd, 0xd5, 0xd2, 0xa1, 0x9a, + 0x65, 0xfb, 0x93, 0x1e, 0xec, 0xd8, 0x2b, 0xa2, 0xa7, 0xf2, 0xe5, 0x3b, + 0xd6, 0x42, 0x0a, 0x8b, 0x16, 0x47, 0xa4, 0x18, 0x02, 0xc0, 0x4f, 0x9b, + 0x6b, 0xa3, 0x4b, 0x85, 0xa7, 0x2b, 0x48, 0xfd, 0xe7, 0x60, 0x52, 0x3e, + 0x28, 0xd8, 0x7e, 0xda, 0xc9, 0xb8, 0xad, 0x6c, 0xba, 0x36, 0x1f, 0x13, + 0x53, 0xfd, 0x39, 0xae, +}; +static const struct drbg_kat_no_reseed kat309_t = { + 8, kat309_entropyin, kat309_nonce, kat309_persstr, + kat309_addin0, kat309_addin1, kat309_retbits +}; +static const struct drbg_kat kat309 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat309_t +}; + +static const unsigned char kat310_entropyin[] = { + 0xad, 0xe1, 0x90, 0x85, 0x34, 0x62, 0x4c, 0x6b, 0xc3, 0x75, 0x4d, 0xe0, + 0xdb, 0x75, 0x31, 0x38, 0x35, 0xa8, 0x28, 0x57, 0x2c, 0xd2, 0x77, 0xbd, +}; +static const unsigned char kat310_nonce[] = { + 0x05, 0xa5, 0xb6, 0xd2, 0x1b, 0x98, 0x05, 0x05, 0x93, 0xab, 0x98, 0x13, + 0x26, 0x8e, 0x2d, 0xc2, +}; +static const unsigned char kat310_persstr[] = {0}; +static const unsigned char kat310_addin0[] = {0}; +static const unsigned char kat310_addin1[] = {0}; +static const unsigned char kat310_retbits[] = { + 0xef, 0xb7, 0xb7, 0x7b, 0x76, 0xd7, 0xbf, 0x57, 0x1a, 0x9b, 0xb1, 0x3e, + 0x39, 0xec, 0x46, 0xa1, 0x9e, 0x91, 0x35, 0xab, 0x08, 0x6d, 0x06, 0xd5, + 0x9b, 0x20, 0xf0, 0x0c, 0x78, 0xf2, 0xaa, 0xa8, 0x48, 0xf6, 0x29, 0x32, + 0x7a, 0x0d, 0x67, 0x07, 0x29, 0xa4, 0x53, 0x91, 0xf2, 0xf0, 0x23, 0xa8, + 0xf4, 0x5f, 0x1c, 0xb1, 0x0b, 0x40, 0xc6, 0x61, 0x83, 0x17, 0xa4, 0x6a, + 0xfe, 0x0a, 0xe1, 0x30, +}; +static const struct drbg_kat_no_reseed kat310_t = { + 9, kat310_entropyin, kat310_nonce, kat310_persstr, + kat310_addin0, kat310_addin1, kat310_retbits +}; +static const struct drbg_kat kat310 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat310_t +}; + +static const unsigned char kat311_entropyin[] = { + 0x38, 0x80, 0xc2, 0x26, 0x90, 0x82, 0x47, 0x5c, 0x16, 0xb9, 0x78, 0xc7, + 0x2a, 0xf1, 0xde, 0x9d, 0x74, 0xec, 0x3c, 0x76, 0x94, 0xc5, 0x19, 0xca, +}; +static const unsigned char kat311_nonce[] = { + 0x83, 0xea, 0xd0, 0xf2, 0xd4, 0x6d, 0x8d, 0x1a, 0x77, 0x86, 0x90, 0xae, + 0x51, 0x2d, 0x66, 0xbd, +}; +static const unsigned char kat311_persstr[] = {0}; +static const unsigned char kat311_addin0[] = {0}; +static const unsigned char kat311_addin1[] = {0}; +static const unsigned char kat311_retbits[] = { + 0xaf, 0x4d, 0x71, 0xc1, 0x14, 0x75, 0x52, 0xbf, 0x8b, 0x35, 0x8e, 0x16, + 0xc9, 0xc7, 0xfe, 0x7f, 0x03, 0x66, 0x20, 0xcb, 0xd6, 0x1f, 0x14, 0x32, + 0xc8, 0xc5, 0xf2, 0x70, 0xda, 0xcc, 0xb2, 0xb9, 0xe1, 0x5c, 0x12, 0xe9, + 0xf5, 0x92, 0x10, 0x47, 0xdc, 0x92, 0xd4, 0x0a, 0x90, 0xe4, 0x5b, 0xf1, + 0x5f, 0xef, 0x12, 0x0a, 0x3e, 0x08, 0x42, 0x13, 0x54, 0x67, 0x4c, 0x95, + 0xa6, 0x30, 0x77, 0xe3, +}; +static const struct drbg_kat_no_reseed kat311_t = { + 10, kat311_entropyin, kat311_nonce, kat311_persstr, + kat311_addin0, kat311_addin1, kat311_retbits +}; +static const struct drbg_kat kat311 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat311_t +}; + +static const unsigned char kat312_entropyin[] = { + 0xb1, 0xd2, 0xc9, 0xab, 0x5a, 0x90, 0x45, 0x67, 0xbd, 0x03, 0x11, 0xc6, + 0x42, 0x04, 0x7d, 0xe1, 0xb3, 0x94, 0x41, 0xa5, 0xe2, 0xd9, 0x01, 0xbe, +}; +static const unsigned char kat312_nonce[] = { + 0x91, 0xc8, 0xd1, 0x9b, 0xf5, 0xd4, 0xf9, 0x51, 0x1f, 0x6c, 0x66, 0x53, + 0xa6, 0x58, 0x5b, 0xa6, +}; +static const unsigned char kat312_persstr[] = {0}; +static const unsigned char kat312_addin0[] = {0}; +static const unsigned char kat312_addin1[] = {0}; +static const unsigned char kat312_retbits[] = { + 0x8b, 0xc7, 0xb7, 0x90, 0xc7, 0x7b, 0x04, 0x7f, 0x7a, 0x17, 0x86, 0x41, + 0x61, 0x5c, 0x29, 0x5b, 0x16, 0x4b, 0x09, 0x03, 0x7c, 0x06, 0xa8, 0xdf, + 0x76, 0xbd, 0xa5, 0x9b, 0x77, 0xed, 0x28, 0x5f, 0x80, 0x8c, 0x96, 0xa4, + 0xb4, 0x9b, 0x45, 0x94, 0xa1, 0x82, 0x99, 0xc2, 0xa6, 0x2b, 0x1e, 0x0d, + 0x9c, 0xaa, 0xeb, 0x0f, 0x82, 0xc1, 0xde, 0x35, 0xb4, 0x28, 0x03, 0x8d, + 0x10, 0xab, 0x00, 0xc0, +}; +static const struct drbg_kat_no_reseed kat312_t = { + 11, kat312_entropyin, kat312_nonce, kat312_persstr, + kat312_addin0, kat312_addin1, kat312_retbits +}; +static const struct drbg_kat kat312 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat312_t +}; + +static const unsigned char kat313_entropyin[] = { + 0x19, 0x70, 0x0c, 0xe2, 0x88, 0x3e, 0xac, 0x51, 0x58, 0x75, 0xfc, 0x91, + 0x35, 0x3c, 0x9a, 0x9d, 0x59, 0x89, 0xb0, 0xd2, 0x9f, 0xa2, 0xee, 0xab, +}; +static const unsigned char kat313_nonce[] = { + 0x56, 0x56, 0x44, 0x93, 0x11, 0xe2, 0x46, 0xee, 0x80, 0x25, 0xcf, 0x30, + 0x3d, 0x6b, 0x6d, 0xa9, +}; +static const unsigned char kat313_persstr[] = {0}; +static const unsigned char kat313_addin0[] = {0}; +static const unsigned char kat313_addin1[] = {0}; +static const unsigned char kat313_retbits[] = { + 0x00, 0x02, 0x17, 0x84, 0x99, 0x39, 0xed, 0x26, 0xc9, 0xd5, 0xfd, 0xd4, + 0xd0, 0x03, 0xd5, 0x7c, 0x12, 0xf5, 0x2f, 0x6e, 0x7d, 0xae, 0x36, 0x4e, + 0x73, 0x75, 0x8c, 0x7f, 0xd1, 0x22, 0x5b, 0x17, 0xae, 0x66, 0xf3, 0x83, + 0x79, 0xa9, 0x03, 0xe7, 0x84, 0x54, 0x46, 0xf0, 0x99, 0x8a, 0x87, 0x45, + 0xe9, 0xae, 0xc9, 0xb4, 0xba, 0x31, 0x73, 0xba, 0x1b, 0x29, 0x21, 0xea, + 0xac, 0x31, 0x3e, 0x58, +}; +static const struct drbg_kat_no_reseed kat313_t = { + 12, kat313_entropyin, kat313_nonce, kat313_persstr, + kat313_addin0, kat313_addin1, kat313_retbits +}; +static const struct drbg_kat kat313 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat313_t +}; + +static const unsigned char kat314_entropyin[] = { + 0x55, 0x21, 0x10, 0x48, 0x6f, 0x04, 0xb8, 0xb1, 0x73, 0x74, 0x8b, 0xe0, + 0x9d, 0xb8, 0x53, 0x02, 0x3d, 0x7d, 0x1e, 0x6b, 0x9e, 0x63, 0x11, 0xf4, +}; +static const unsigned char kat314_nonce[] = { + 0xd2, 0x8c, 0x45, 0xca, 0x09, 0xd5, 0x11, 0x04, 0xd5, 0x19, 0xd3, 0x81, + 0xb0, 0x0c, 0xd7, 0x12, +}; +static const unsigned char kat314_persstr[] = {0}; +static const unsigned char kat314_addin0[] = {0}; +static const unsigned char kat314_addin1[] = {0}; +static const unsigned char kat314_retbits[] = { + 0xb3, 0x5b, 0x8c, 0xde, 0x56, 0xd5, 0xb2, 0xa3, 0x65, 0xa7, 0x55, 0xe4, + 0xd0, 0xbd, 0xbf, 0x70, 0x02, 0xe4, 0xb0, 0x61, 0x99, 0xa3, 0x42, 0xf1, + 0xb9, 0x8b, 0x73, 0x43, 0x11, 0xfc, 0xab, 0x66, 0xaf, 0x1e, 0xea, 0x2c, + 0x7f, 0xbc, 0x26, 0x42, 0xac, 0x36, 0x4c, 0x92, 0x0a, 0xf7, 0x24, 0xe3, + 0x7d, 0x45, 0xe8, 0xc1, 0x7c, 0xd4, 0x46, 0x7b, 0x89, 0x2a, 0x45, 0x36, + 0x47, 0x94, 0xa7, 0x46, +}; +static const struct drbg_kat_no_reseed kat314_t = { + 13, kat314_entropyin, kat314_nonce, kat314_persstr, + kat314_addin0, kat314_addin1, kat314_retbits +}; +static const struct drbg_kat kat314 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat314_t +}; + +static const unsigned char kat315_entropyin[] = { + 0xb2, 0xf6, 0x05, 0xfc, 0xf9, 0x92, 0x9b, 0x12, 0x43, 0xc8, 0x81, 0x99, + 0x14, 0x3f, 0x15, 0x42, 0x66, 0xfd, 0x85, 0x87, 0xc9, 0x0a, 0xaa, 0xb2, +}; +static const unsigned char kat315_nonce[] = { + 0x78, 0x1c, 0x85, 0x7f, 0x75, 0xbb, 0x59, 0x48, 0xc2, 0xa2, 0x2d, 0xd7, + 0x57, 0xb2, 0x47, 0xbe, +}; +static const unsigned char kat315_persstr[] = {0}; +static const unsigned char kat315_addin0[] = {0}; +static const unsigned char kat315_addin1[] = {0}; +static const unsigned char kat315_retbits[] = { + 0x77, 0x53, 0x79, 0x7b, 0x7b, 0x37, 0x25, 0xc8, 0x73, 0x9f, 0xf2, 0x11, + 0xa0, 0xcc, 0x8a, 0xe8, 0xa1, 0xe0, 0xf2, 0x80, 0x86, 0xed, 0xe4, 0xd4, + 0xf8, 0x36, 0xde, 0xe5, 0x7f, 0xbd, 0x78, 0x80, 0xf1, 0x05, 0x21, 0x24, + 0x27, 0x59, 0xb9, 0x72, 0x5a, 0x08, 0xcb, 0x64, 0x96, 0x59, 0xa2, 0xd8, + 0x1f, 0x54, 0x0e, 0x93, 0xf8, 0x7e, 0x49, 0x31, 0xd8, 0x1b, 0x59, 0xd9, + 0xcd, 0xcf, 0x45, 0xc0, +}; +static const struct drbg_kat_no_reseed kat315_t = { + 14, kat315_entropyin, kat315_nonce, kat315_persstr, + kat315_addin0, kat315_addin1, kat315_retbits +}; +static const struct drbg_kat kat315 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat315_t +}; + +static const unsigned char kat316_entropyin[] = { + 0xe6, 0x20, 0x98, 0xa1, 0x6d, 0x60, 0xd2, 0x75, 0x98, 0xea, 0x4c, 0x97, + 0xf2, 0xf0, 0x13, 0xc4, 0xff, 0xbd, 0x45, 0x6b, 0x54, 0xa8, 0xfc, 0xf7, +}; +static const unsigned char kat316_nonce[] = { + 0x10, 0x39, 0x1c, 0x9e, 0x4d, 0x79, 0x69, 0xfd, 0x2b, 0x1f, 0x89, 0x86, + 0xe0, 0x48, 0x60, 0xc8, +}; +static const unsigned char kat316_persstr[] = {0}; +static const unsigned char kat316_addin0[] = { + 0x6a, 0x7d, 0xb6, 0xd2, 0xf6, 0xf2, 0x35, 0x72, 0xfe, 0xff, 0xd3, 0xd7, + 0x74, 0x46, 0xf0, 0x7b, 0x92, 0x2e, 0xe7, 0xa9, 0xfe, 0x58, 0x01, 0x60, + 0xed, 0x2d, 0x8d, 0xd7, 0xff, 0xb5, 0x0b, 0x00, +}; +static const unsigned char kat316_addin1[] = { + 0x1c, 0x4f, 0x98, 0x2a, 0xce, 0x96, 0xe7, 0x84, 0x10, 0x3e, 0xa2, 0x54, + 0xcf, 0xd6, 0x85, 0xe9, 0x5a, 0xda, 0xfe, 0x79, 0x88, 0xd9, 0xee, 0xbd, + 0xcd, 0x82, 0xe7, 0xba, 0x02, 0x5f, 0x31, 0x53, +}; +static const unsigned char kat316_retbits[] = { + 0xaf, 0x0e, 0x2c, 0x20, 0x53, 0xe5, 0xa0, 0xef, 0x2d, 0xef, 0xa7, 0xdf, + 0xa6, 0xb4, 0x16, 0x4b, 0x4d, 0x83, 0x78, 0xf0, 0x0d, 0xfd, 0x97, 0x62, + 0xdb, 0xa6, 0x3a, 0x67, 0xef, 0x5b, 0x58, 0xc8, 0xe1, 0xa8, 0x6f, 0x56, + 0x0c, 0xcd, 0x93, 0x37, 0x11, 0x62, 0x43, 0x60, 0x9b, 0xc4, 0xb4, 0x54, + 0xbf, 0x8d, 0x1a, 0x1a, 0xa3, 0xf9, 0x9a, 0xd1, 0xd2, 0x58, 0xc3, 0x18, + 0xc7, 0x2d, 0x14, 0x4c, +}; +static const struct drbg_kat_no_reseed kat316_t = { + 0, kat316_entropyin, kat316_nonce, kat316_persstr, + kat316_addin0, kat316_addin1, kat316_retbits +}; +static const struct drbg_kat kat316 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat316_t +}; + +static const unsigned char kat317_entropyin[] = { + 0x83, 0x02, 0x64, 0x0e, 0x79, 0xce, 0xab, 0x3c, 0x2b, 0x9f, 0x2b, 0x3e, + 0xf8, 0x7e, 0x6a, 0xd9, 0x07, 0xd1, 0x2e, 0xa9, 0xad, 0x1a, 0x07, 0xc7, +}; +static const unsigned char kat317_nonce[] = { + 0xbc, 0xf4, 0xb6, 0xd5, 0xf6, 0x9c, 0xa0, 0x9b, 0xa4, 0xb3, 0xbf, 0x58, + 0x17, 0x23, 0xcd, 0x6b, +}; +static const unsigned char kat317_persstr[] = {0}; +static const unsigned char kat317_addin0[] = { + 0xc2, 0x7f, 0x38, 0x0b, 0x39, 0xcb, 0xb7, 0x15, 0x25, 0x67, 0x28, 0xde, + 0x46, 0x85, 0xf3, 0xc4, 0x28, 0x7b, 0x6e, 0x3b, 0xaf, 0x13, 0xc0, 0xf1, + 0xbe, 0x9b, 0xb4, 0xc8, 0x4d, 0xec, 0xad, 0x11, +}; +static const unsigned char kat317_addin1[] = { + 0x13, 0x52, 0x30, 0xd9, 0x56, 0x35, 0xfb, 0x88, 0xc7, 0x37, 0x07, 0x07, + 0x80, 0x18, 0x79, 0x2d, 0x40, 0x65, 0x84, 0x8a, 0xd8, 0x13, 0xab, 0x98, + 0x14, 0x95, 0x57, 0x1c, 0xf9, 0x88, 0x8e, 0x7c, +}; +static const unsigned char kat317_retbits[] = { + 0x9c, 0x61, 0xdc, 0xac, 0x29, 0xe1, 0xd8, 0x50, 0x8a, 0xef, 0x25, 0x38, + 0xad, 0xe8, 0xa8, 0x38, 0xec, 0xf5, 0xc5, 0x06, 0x1a, 0xdc, 0xda, 0xfb, + 0xce, 0x37, 0x74, 0xbd, 0x24, 0x0c, 0xc6, 0x23, 0x0b, 0x68, 0x48, 0x55, + 0x92, 0xa2, 0xec, 0x2c, 0x0b, 0x9d, 0x6f, 0x4f, 0x82, 0x02, 0xb1, 0x63, + 0xb8, 0x3e, 0xbc, 0x75, 0x2c, 0xc0, 0x8c, 0xc9, 0x27, 0xe2, 0xa7, 0x9d, + 0xb1, 0xba, 0xb8, 0x1e, +}; +static const struct drbg_kat_no_reseed kat317_t = { + 1, kat317_entropyin, kat317_nonce, kat317_persstr, + kat317_addin0, kat317_addin1, kat317_retbits +}; +static const struct drbg_kat kat317 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat317_t +}; + +static const unsigned char kat318_entropyin[] = { + 0xee, 0xad, 0x03, 0x90, 0xcd, 0x19, 0x34, 0x10, 0xc5, 0x20, 0xeb, 0x54, + 0x14, 0xae, 0x6f, 0x2e, 0x2e, 0xb0, 0x0b, 0xf5, 0xae, 0x0a, 0xf3, 0xde, +}; +static const unsigned char kat318_nonce[] = { + 0xd4, 0x0c, 0xa3, 0xe5, 0x21, 0xf2, 0xa5, 0x7e, 0x35, 0xbf, 0x3a, 0xed, + 0x30, 0x02, 0xab, 0xc0, +}; +static const unsigned char kat318_persstr[] = {0}; +static const unsigned char kat318_addin0[] = { + 0xe4, 0x30, 0x9e, 0xc8, 0x51, 0x9e, 0xed, 0x08, 0xe1, 0x54, 0x21, 0x30, + 0x14, 0x51, 0x8f, 0x02, 0xa8, 0x38, 0x75, 0xc7, 0x7e, 0x6b, 0xcb, 0x6e, + 0xb1, 0xdc, 0x21, 0xb1, 0x48, 0xbc, 0x17, 0xc1, +}; +static const unsigned char kat318_addin1[] = { + 0xa7, 0x6a, 0xae, 0xb9, 0xbd, 0xda, 0x28, 0x26, 0x38, 0xae, 0x77, 0x4f, + 0x35, 0xdf, 0x92, 0xa1, 0x0e, 0x2f, 0xdc, 0xb2, 0xfc, 0x91, 0x70, 0x3e, + 0xc8, 0xd5, 0x69, 0x37, 0x2d, 0x86, 0x89, 0x44, +}; +static const unsigned char kat318_retbits[] = { + 0xb4, 0xb8, 0x0f, 0x0d, 0x94, 0xa4, 0xf9, 0x31, 0x07, 0xe4, 0xb5, 0x4c, + 0x11, 0x8f, 0xd8, 0xa8, 0xca, 0x62, 0xd6, 0x0c, 0x54, 0x25, 0x86, 0x54, + 0xfb, 0x83, 0xdc, 0x3f, 0x4d, 0x24, 0xcf, 0xeb, 0x58, 0xa3, 0x71, 0x4e, + 0xe6, 0xfa, 0x47, 0x8e, 0x86, 0xea, 0x64, 0x9a, 0x64, 0xe9, 0x4e, 0xa4, + 0x9e, 0x10, 0x88, 0x54, 0xbf, 0x04, 0x8e, 0x4b, 0xc6, 0xa0, 0xf0, 0xf9, + 0x74, 0x0a, 0xaf, 0x92, +}; +static const struct drbg_kat_no_reseed kat318_t = { + 2, kat318_entropyin, kat318_nonce, kat318_persstr, + kat318_addin0, kat318_addin1, kat318_retbits +}; +static const struct drbg_kat kat318 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat318_t +}; + +static const unsigned char kat319_entropyin[] = { + 0xee, 0x1e, 0x3a, 0xf7, 0x32, 0xbf, 0xf0, 0x4e, 0x9e, 0x45, 0xba, 0x62, + 0xdb, 0xe6, 0x27, 0x04, 0x97, 0x08, 0xb6, 0xef, 0x4a, 0xa7, 0x93, 0xe7, +}; +static const unsigned char kat319_nonce[] = { + 0x53, 0x1e, 0xdb, 0xba, 0x82, 0xb1, 0x20, 0x02, 0x68, 0x35, 0xb8, 0x56, + 0xbb, 0x5b, 0x63, 0xe0, +}; +static const unsigned char kat319_persstr[] = {0}; +static const unsigned char kat319_addin0[] = { + 0xc3, 0x8b, 0x7a, 0x6c, 0xc5, 0xd5, 0xd2, 0x3c, 0xe4, 0x16, 0xf9, 0x24, + 0xc6, 0x04, 0xd6, 0x4e, 0x37, 0x8d, 0xee, 0x31, 0xf3, 0xdd, 0x70, 0xb7, + 0xb1, 0x1d, 0x26, 0x5a, 0xcb, 0x45, 0xf9, 0x8f, +}; +static const unsigned char kat319_addin1[] = { + 0x49, 0x3e, 0x62, 0x62, 0x78, 0xf6, 0xaf, 0x2a, 0xb9, 0x9c, 0x53, 0x35, + 0xc2, 0x9d, 0xac, 0x38, 0x25, 0xf8, 0x52, 0xaa, 0xcd, 0x3b, 0x23, 0x7a, + 0x3f, 0x01, 0x4b, 0x9a, 0xdf, 0xbe, 0x4d, 0x4a, +}; +static const unsigned char kat319_retbits[] = { + 0x07, 0x6a, 0xa4, 0x2c, 0x35, 0x03, 0x55, 0x75, 0xf1, 0xf0, 0xa4, 0x92, + 0x28, 0x8d, 0xbb, 0x9c, 0x46, 0x28, 0xc0, 0x91, 0xfc, 0xb3, 0x4e, 0xb6, + 0xb8, 0x03, 0x9a, 0x88, 0x7b, 0xa1, 0xed, 0x8e, 0x00, 0x29, 0xb2, 0xd1, + 0x8c, 0x3c, 0x1c, 0x32, 0x1d, 0x7f, 0x0e, 0x20, 0xb7, 0xdb, 0xcc, 0xea, + 0x88, 0x6a, 0xd5, 0x18, 0xae, 0xff, 0x08, 0x9d, 0x44, 0x70, 0x9e, 0xaa, + 0x58, 0x3e, 0x45, 0xef, +}; +static const struct drbg_kat_no_reseed kat319_t = { + 3, kat319_entropyin, kat319_nonce, kat319_persstr, + kat319_addin0, kat319_addin1, kat319_retbits +}; +static const struct drbg_kat kat319 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat319_t +}; + +static const unsigned char kat320_entropyin[] = { + 0x79, 0xb2, 0x03, 0x9d, 0xf2, 0x89, 0x3b, 0x45, 0xd7, 0xc4, 0xbe, 0x89, + 0xd0, 0xe0, 0xac, 0xf4, 0x1f, 0xb1, 0x1c, 0xf7, 0x0b, 0x12, 0xdb, 0xe4, +}; +static const unsigned char kat320_nonce[] = { + 0x35, 0xd1, 0x9a, 0x10, 0x42, 0x0d, 0x53, 0x97, 0xd1, 0xa6, 0xfa, 0x35, + 0xa7, 0x67, 0x6e, 0xe6, +}; +static const unsigned char kat320_persstr[] = {0}; +static const unsigned char kat320_addin0[] = { + 0xe3, 0x38, 0x4b, 0x09, 0xc4, 0xde, 0xad, 0xf0, 0x94, 0x67, 0xfb, 0x4c, + 0x68, 0xf2, 0x89, 0x8e, 0xd6, 0x41, 0x28, 0x0c, 0x2c, 0x61, 0xd8, 0xad, + 0x7f, 0x86, 0xbe, 0xd0, 0x56, 0x69, 0x27, 0xb3, +}; +static const unsigned char kat320_addin1[] = { + 0x39, 0xda, 0x7d, 0x65, 0x30, 0x08, 0xb8, 0xb5, 0x99, 0xcd, 0xda, 0x25, + 0xcc, 0xba, 0x4d, 0x2d, 0x15, 0xa9, 0x6a, 0xdc, 0x1d, 0x12, 0xac, 0x13, + 0x1c, 0xbc, 0x43, 0x64, 0x88, 0xe1, 0xf7, 0xb0, +}; +static const unsigned char kat320_retbits[] = { + 0xbe, 0xc5, 0x5b, 0x20, 0x67, 0xac, 0x47, 0x0d, 0xba, 0x7b, 0x2a, 0xe7, + 0xc7, 0x04, 0x3c, 0xa0, 0x41, 0x59, 0x95, 0x7b, 0xc5, 0x47, 0x28, 0x16, + 0x57, 0x41, 0xd0, 0x57, 0xf8, 0x09, 0xbf, 0x56, 0x7b, 0x9d, 0x7b, 0x58, + 0x89, 0xa5, 0x79, 0x95, 0x8d, 0x6b, 0xf2, 0xea, 0x11, 0xd3, 0x8e, 0xba, + 0x75, 0x43, 0x42, 0x0f, 0x80, 0x94, 0x8f, 0x71, 0x20, 0xd9, 0x64, 0x07, + 0x60, 0x67, 0xbe, 0xe7, +}; +static const struct drbg_kat_no_reseed kat320_t = { + 4, kat320_entropyin, kat320_nonce, kat320_persstr, + kat320_addin0, kat320_addin1, kat320_retbits +}; +static const struct drbg_kat kat320 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat320_t +}; + +static const unsigned char kat321_entropyin[] = { + 0x6a, 0x91, 0x0a, 0x86, 0x59, 0x1c, 0xf0, 0x55, 0x21, 0xc8, 0x9f, 0xa0, + 0x6b, 0x0f, 0xd7, 0xeb, 0xe3, 0xc8, 0xf1, 0xe0, 0xde, 0x18, 0x09, 0xe9, +}; +static const unsigned char kat321_nonce[] = { + 0x44, 0x1e, 0xa2, 0x6f, 0xe9, 0x46, 0x39, 0x08, 0x5b, 0x0d, 0x8e, 0x28, + 0x22, 0x4b, 0xf1, 0x11, +}; +static const unsigned char kat321_persstr[] = {0}; +static const unsigned char kat321_addin0[] = { + 0x29, 0x28, 0xcc, 0xab, 0x0d, 0xde, 0xb1, 0xe9, 0x68, 0x1f, 0xd9, 0x40, + 0x3a, 0x48, 0xe7, 0x34, 0xc3, 0x47, 0xae, 0x80, 0x45, 0x0b, 0xa8, 0x4b, + 0x2c, 0x3a, 0x68, 0x6c, 0x1a, 0xf6, 0xf2, 0x03, +}; +static const unsigned char kat321_addin1[] = { + 0x22, 0xcf, 0x81, 0x0f, 0xff, 0x93, 0x50, 0xb5, 0xd3, 0xb3, 0x45, 0x24, + 0x76, 0x67, 0x0a, 0xb9, 0x64, 0x88, 0xb8, 0x6d, 0x64, 0x43, 0xdd, 0x87, + 0xc4, 0xc2, 0x49, 0xa7, 0x9e, 0xf1, 0xfa, 0xce, +}; +static const unsigned char kat321_retbits[] = { + 0xa7, 0xb0, 0xa1, 0x39, 0xcd, 0x26, 0x27, 0x4c, 0x0f, 0xd5, 0xb7, 0x09, + 0x0a, 0xe5, 0xe6, 0x07, 0x5c, 0xd7, 0x8d, 0x93, 0x49, 0x77, 0x75, 0x11, + 0x32, 0xc0, 0xb8, 0xa7, 0xf2, 0x7b, 0x5f, 0xf1, 0xe8, 0x68, 0xe2, 0x01, + 0x76, 0x52, 0x31, 0x04, 0xe2, 0x34, 0x60, 0x27, 0xc4, 0xef, 0x3a, 0x69, + 0x72, 0xac, 0x75, 0x63, 0x28, 0xdc, 0x5f, 0x1c, 0xe1, 0x52, 0xb0, 0x1f, + 0x48, 0x61, 0xb5, 0x07, +}; +static const struct drbg_kat_no_reseed kat321_t = { + 5, kat321_entropyin, kat321_nonce, kat321_persstr, + kat321_addin0, kat321_addin1, kat321_retbits +}; +static const struct drbg_kat kat321 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat321_t +}; + +static const unsigned char kat322_entropyin[] = { + 0x70, 0x87, 0x4f, 0xaa, 0x74, 0xd1, 0xa1, 0xaf, 0x88, 0x2a, 0x36, 0x96, + 0xff, 0x2f, 0x40, 0x9f, 0x9c, 0x2e, 0x05, 0x96, 0xcc, 0xe1, 0xfb, 0x9c, +}; +static const unsigned char kat322_nonce[] = { + 0x77, 0xc4, 0x98, 0xe0, 0xd5, 0x1a, 0xf0, 0xc6, 0x87, 0x36, 0x45, 0xfd, + 0x88, 0x89, 0xfc, 0x58, +}; +static const unsigned char kat322_persstr[] = {0}; +static const unsigned char kat322_addin0[] = { + 0xe6, 0xed, 0x21, 0x0e, 0x04, 0x59, 0x16, 0xcf, 0x1a, 0x69, 0x1e, 0x36, + 0x69, 0x71, 0x22, 0x89, 0x04, 0x85, 0xf2, 0x85, 0x2a, 0x27, 0x85, 0x11, + 0x25, 0xeb, 0x17, 0xdb, 0xf5, 0x79, 0x1f, 0x91, +}; +static const unsigned char kat322_addin1[] = { + 0x1f, 0x0d, 0x29, 0x59, 0xf9, 0x72, 0x56, 0x04, 0xe6, 0xa1, 0x3b, 0x7e, + 0x2e, 0x0d, 0x72, 0xad, 0xc8, 0xbb, 0xdf, 0xb4, 0xa3, 0x1b, 0x9b, 0x38, + 0xbd, 0x8c, 0xae, 0x26, 0x4d, 0x4d, 0xcb, 0x01, +}; +static const unsigned char kat322_retbits[] = { + 0xb6, 0xef, 0x96, 0x03, 0xce, 0x5c, 0xb3, 0xb3, 0xde, 0x76, 0x87, 0xcc, + 0x73, 0x88, 0x32, 0xa1, 0x1c, 0x39, 0x8e, 0x73, 0x30, 0xaa, 0x55, 0x2f, + 0x67, 0x8e, 0x13, 0x2c, 0x71, 0xb7, 0xc0, 0x20, 0x98, 0x0c, 0x3c, 0xab, + 0x47, 0x3d, 0x17, 0xc8, 0x43, 0x99, 0xca, 0x19, 0x2e, 0x6b, 0x29, 0x35, + 0xde, 0x21, 0x1e, 0x17, 0x9f, 0x39, 0xaa, 0xb3, 0x05, 0x52, 0xc9, 0x7e, + 0x11, 0x1f, 0xf3, 0xc2, +}; +static const struct drbg_kat_no_reseed kat322_t = { + 6, kat322_entropyin, kat322_nonce, kat322_persstr, + kat322_addin0, kat322_addin1, kat322_retbits +}; +static const struct drbg_kat kat322 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat322_t +}; + +static const unsigned char kat323_entropyin[] = { + 0xaa, 0x69, 0x94, 0x9c, 0x60, 0x5a, 0x8c, 0x99, 0x7a, 0xa6, 0x50, 0x76, + 0xe8, 0xce, 0xb6, 0x3f, 0xc9, 0xd0, 0xaf, 0x84, 0x0e, 0xa8, 0x73, 0xbb, +}; +static const unsigned char kat323_nonce[] = { + 0x6b, 0xe6, 0xf8, 0x9f, 0x54, 0x9f, 0x0e, 0xb6, 0xdf, 0xd7, 0x61, 0xf0, + 0x9b, 0xfb, 0xcc, 0xb5, +}; +static const unsigned char kat323_persstr[] = {0}; +static const unsigned char kat323_addin0[] = { + 0xfa, 0x18, 0x0a, 0x06, 0xf0, 0x7f, 0xcd, 0xcc, 0x95, 0xff, 0x37, 0x11, + 0xc3, 0x48, 0xc1, 0x5b, 0xae, 0x75, 0x0b, 0x8c, 0xbd, 0x98, 0xe4, 0x3a, + 0xbe, 0x61, 0xfe, 0x15, 0x4f, 0x3f, 0x5c, 0xd5, +}; +static const unsigned char kat323_addin1[] = { + 0xa5, 0x59, 0xc3, 0xf7, 0xcc, 0x60, 0x44, 0xed, 0xc0, 0x29, 0xa3, 0x5b, + 0xf0, 0x2a, 0x3a, 0x96, 0xad, 0x01, 0x83, 0x86, 0xe1, 0xbd, 0x99, 0x8a, + 0xf1, 0x08, 0xc8, 0xfd, 0xba, 0x6f, 0x78, 0xa1, +}; +static const unsigned char kat323_retbits[] = { + 0xa1, 0x8f, 0x0f, 0xfe, 0xc3, 0x92, 0x70, 0x6f, 0xc8, 0x37, 0xc0, 0xa5, + 0x32, 0x15, 0x58, 0x08, 0x62, 0x32, 0xf7, 0xf6, 0x94, 0x70, 0xb6, 0xd2, + 0x99, 0xd3, 0x2b, 0xba, 0x24, 0xa3, 0xb1, 0xd5, 0x44, 0x1e, 0x27, 0xf0, + 0x83, 0x57, 0xb0, 0xe7, 0x0f, 0x00, 0x0c, 0x32, 0x1b, 0x70, 0x81, 0xdc, + 0xff, 0xad, 0x82, 0x4d, 0xe1, 0x30, 0x47, 0x32, 0x2d, 0xf5, 0xf7, 0xf4, + 0xaf, 0x25, 0x84, 0x3b, +}; +static const struct drbg_kat_no_reseed kat323_t = { + 7, kat323_entropyin, kat323_nonce, kat323_persstr, + kat323_addin0, kat323_addin1, kat323_retbits +}; +static const struct drbg_kat kat323 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat323_t +}; + +static const unsigned char kat324_entropyin[] = { + 0xd4, 0x17, 0x6b, 0x63, 0xa9, 0x19, 0x97, 0x39, 0xff, 0x7d, 0x7f, 0x46, + 0x20, 0x3a, 0x4a, 0x01, 0xbf, 0xcc, 0x34, 0xfa, 0x7b, 0xd7, 0x01, 0x9f, +}; +static const unsigned char kat324_nonce[] = { + 0x05, 0x06, 0x01, 0xd5, 0x0c, 0xd5, 0x04, 0x4f, 0x97, 0x8d, 0xfe, 0x9e, + 0xe2, 0x69, 0x5a, 0x44, +}; +static const unsigned char kat324_persstr[] = {0}; +static const unsigned char kat324_addin0[] = { + 0xa7, 0x6a, 0x67, 0x40, 0x9e, 0x51, 0x64, 0xea, 0x0a, 0xba, 0xd6, 0x2a, + 0x41, 0x8a, 0xbd, 0x8c, 0xd2, 0xe7, 0x29, 0xb6, 0x34, 0x82, 0xf2, 0xae, + 0xaf, 0xc0, 0xa3, 0x65, 0x0e, 0xa8, 0xb9, 0x52, +}; +static const unsigned char kat324_addin1[] = { + 0x83, 0xc9, 0x37, 0x10, 0x55, 0xee, 0x7f, 0xbb, 0x93, 0x54, 0x83, 0x76, + 0x2e, 0x16, 0xe2, 0xd8, 0x5d, 0xcd, 0x70, 0xe1, 0x34, 0x97, 0xe6, 0x9a, + 0xab, 0x9a, 0xd3, 0x50, 0x01, 0x62, 0x7a, 0x4b, +}; +static const unsigned char kat324_retbits[] = { + 0xe7, 0xb6, 0x7e, 0x05, 0x2c, 0x3b, 0x43, 0x97, 0x42, 0xdc, 0x52, 0x28, + 0x9f, 0x38, 0x84, 0x53, 0x4a, 0x0e, 0x85, 0xb8, 0x34, 0x19, 0x30, 0x8b, + 0xe0, 0xb4, 0xe6, 0x32, 0x77, 0x9b, 0x4c, 0x72, 0x2a, 0x4d, 0x8b, 0xd3, + 0x8c, 0x8f, 0xeb, 0x3a, 0x5c, 0x21, 0x33, 0x0d, 0xb1, 0xa2, 0xf5, 0xbd, + 0x6a, 0xde, 0x1e, 0x0a, 0x77, 0x88, 0x13, 0x9f, 0x9f, 0x0e, 0x52, 0xf2, + 0xe0, 0x1e, 0xf7, 0x59, +}; +static const struct drbg_kat_no_reseed kat324_t = { + 8, kat324_entropyin, kat324_nonce, kat324_persstr, + kat324_addin0, kat324_addin1, kat324_retbits +}; +static const struct drbg_kat kat324 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat324_t +}; + +static const unsigned char kat325_entropyin[] = { + 0xe1, 0xae, 0xa3, 0x22, 0x9c, 0x6c, 0x18, 0x1e, 0x32, 0xaf, 0x65, 0x00, + 0xae, 0x4d, 0xb0, 0x93, 0xd1, 0xd5, 0x70, 0x0d, 0x64, 0x7e, 0x27, 0x24, +}; +static const unsigned char kat325_nonce[] = { + 0x65, 0x6c, 0x62, 0x42, 0xbb, 0x52, 0x0a, 0x88, 0x64, 0x09, 0xca, 0x4f, + 0x3a, 0xf4, 0x0a, 0x1c, +}; +static const unsigned char kat325_persstr[] = {0}; +static const unsigned char kat325_addin0[] = { + 0x57, 0x48, 0x3f, 0x32, 0x65, 0x38, 0x02, 0xb2, 0xbf, 0xc8, 0x06, 0xd0, + 0x28, 0xf2, 0xb1, 0x68, 0x27, 0x1e, 0x55, 0xd4, 0x9a, 0x43, 0x6a, 0x5c, + 0x4e, 0x89, 0xc2, 0x0c, 0xaa, 0x0c, 0xa1, 0x07, +}; +static const unsigned char kat325_addin1[] = { + 0x5c, 0xc0, 0x20, 0x2e, 0x9f, 0x5f, 0x19, 0xf4, 0x01, 0x0b, 0x68, 0xde, + 0x2b, 0x2c, 0x28, 0xc1, 0x99, 0x41, 0xce, 0xc8, 0xcf, 0x31, 0xf5, 0x9c, + 0x29, 0x9c, 0x89, 0x58, 0xe0, 0x7c, 0xed, 0xd7, +}; +static const unsigned char kat325_retbits[] = { + 0x5b, 0xb5, 0x65, 0x0e, 0xcb, 0x99, 0x68, 0x2a, 0xfe, 0xf4, 0xba, 0x87, + 0xc2, 0x27, 0x27, 0xee, 0x7a, 0xb0, 0x80, 0xbc, 0xab, 0x60, 0xf1, 0x57, + 0x6e, 0x46, 0x27, 0xf7, 0xe9, 0x05, 0xa2, 0x48, 0xd7, 0x00, 0x29, 0xca, + 0xf3, 0x71, 0xab, 0x58, 0x98, 0x82, 0x3a, 0x35, 0xee, 0x5b, 0x81, 0x18, + 0x2c, 0x24, 0x03, 0x1d, 0xc3, 0x96, 0x6d, 0x7c, 0x24, 0x4b, 0x28, 0x80, + 0x3b, 0x36, 0x37, 0x00, +}; +static const struct drbg_kat_no_reseed kat325_t = { + 9, kat325_entropyin, kat325_nonce, kat325_persstr, + kat325_addin0, kat325_addin1, kat325_retbits +}; +static const struct drbg_kat kat325 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat325_t +}; + +static const unsigned char kat326_entropyin[] = { + 0x9c, 0xf9, 0x22, 0x67, 0x96, 0x9b, 0x13, 0x62, 0x4a, 0x01, 0x6a, 0xfc, + 0xbe, 0xdc, 0x99, 0x64, 0xc0, 0x71, 0xb6, 0xd5, 0x7b, 0x9b, 0xc1, 0xaa, +}; +static const unsigned char kat326_nonce[] = { + 0x5f, 0xe0, 0xed, 0x8b, 0xec, 0xd3, 0xbb, 0xb4, 0x4a, 0x0d, 0xfa, 0x8d, + 0xe9, 0xcb, 0x47, 0xff, +}; +static const unsigned char kat326_persstr[] = {0}; +static const unsigned char kat326_addin0[] = { + 0x3a, 0x10, 0xc0, 0x87, 0xcf, 0x4d, 0x09, 0xd1, 0x3c, 0x93, 0x3b, 0x73, + 0xce, 0x0c, 0xb2, 0x3d, 0x35, 0x21, 0x2a, 0x09, 0x80, 0xca, 0x88, 0xa9, + 0x5f, 0x71, 0xc0, 0x82, 0x61, 0x28, 0x99, 0x24, +}; +static const unsigned char kat326_addin1[] = { + 0x23, 0xa3, 0x91, 0x51, 0x60, 0xa4, 0xc8, 0xc2, 0x2a, 0xdb, 0x26, 0xa8, + 0x6e, 0x29, 0x6f, 0x23, 0x63, 0x60, 0x12, 0x44, 0xfb, 0xc8, 0xcf, 0xed, + 0x07, 0x57, 0xf9, 0x31, 0xe4, 0x95, 0xa6, 0xb9, +}; +static const unsigned char kat326_retbits[] = { + 0x65, 0xba, 0x2a, 0x31, 0x91, 0x1a, 0x00, 0x98, 0x33, 0x0a, 0xd9, 0x14, + 0xe7, 0x9c, 0x71, 0x4b, 0xb1, 0xb9, 0xa0, 0x06, 0x15, 0x51, 0xf9, 0x81, + 0xf3, 0xde, 0x6a, 0x88, 0x08, 0x74, 0x73, 0x72, 0xbe, 0xd7, 0xb5, 0xcc, + 0xb4, 0x53, 0x81, 0xab, 0x98, 0xb1, 0xc5, 0x56, 0x59, 0xb0, 0x23, 0x42, + 0x2b, 0x75, 0x39, 0x83, 0xb2, 0xd3, 0x54, 0x55, 0x98, 0xf3, 0x11, 0xfd, + 0x2a, 0xcd, 0xdb, 0x32, +}; +static const struct drbg_kat_no_reseed kat326_t = { + 10, kat326_entropyin, kat326_nonce, kat326_persstr, + kat326_addin0, kat326_addin1, kat326_retbits +}; +static const struct drbg_kat kat326 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat326_t +}; + +static const unsigned char kat327_entropyin[] = { + 0xf1, 0x3d, 0xa4, 0x54, 0xa1, 0xa1, 0x68, 0x51, 0x88, 0xce, 0x40, 0x2a, + 0xfc, 0x5f, 0x1a, 0xb8, 0xc2, 0x32, 0x40, 0xb2, 0x2c, 0x57, 0x0f, 0xe8, +}; +static const unsigned char kat327_nonce[] = { + 0x65, 0x4d, 0x75, 0xd1, 0x03, 0xfb, 0xf3, 0x58, 0x9a, 0x66, 0x64, 0x24, + 0x7f, 0x6f, 0x32, 0xd7, +}; +static const unsigned char kat327_persstr[] = {0}; +static const unsigned char kat327_addin0[] = { + 0x0f, 0x72, 0x58, 0x42, 0xcc, 0x60, 0x61, 0x97, 0xd3, 0xc3, 0xa3, 0x72, + 0x60, 0xfd, 0x24, 0x23, 0x71, 0x98, 0xb7, 0xe4, 0x86, 0x80, 0x1d, 0x32, + 0xa8, 0xe1, 0x55, 0xca, 0x22, 0xf8, 0x1e, 0xac, +}; +static const unsigned char kat327_addin1[] = { + 0x78, 0x8e, 0xe6, 0xcd, 0x54, 0x3e, 0x8b, 0x1f, 0x69, 0xc6, 0x98, 0xb4, + 0xf9, 0xcc, 0xc3, 0x3f, 0x76, 0xf6, 0x63, 0x99, 0xe8, 0xbd, 0xf8, 0x9e, + 0xe2, 0xb6, 0x29, 0x54, 0x0f, 0xf7, 0x58, 0x50, +}; +static const unsigned char kat327_retbits[] = { + 0xcc, 0xf1, 0x24, 0x79, 0x17, 0x7b, 0xbe, 0xca, 0xf4, 0x58, 0x50, 0xf2, + 0x30, 0x76, 0x8c, 0x97, 0x01, 0x91, 0xb7, 0x1b, 0x98, 0xf4, 0x68, 0x5f, + 0x47, 0x98, 0x49, 0x6c, 0x5c, 0x87, 0x7b, 0xc7, 0xa5, 0xda, 0xe4, 0x08, + 0x86, 0x27, 0x26, 0xac, 0xa4, 0xbb, 0xaf, 0xf3, 0x5c, 0x20, 0x08, 0x96, + 0x58, 0x6a, 0x4e, 0xad, 0x49, 0x3a, 0x4b, 0x4e, 0xb8, 0xaf, 0xb0, 0x1d, + 0xed, 0xf6, 0xea, 0xcb, +}; +static const struct drbg_kat_no_reseed kat327_t = { + 11, kat327_entropyin, kat327_nonce, kat327_persstr, + kat327_addin0, kat327_addin1, kat327_retbits +}; +static const struct drbg_kat kat327 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat327_t +}; + +static const unsigned char kat328_entropyin[] = { + 0xff, 0x69, 0x97, 0x35, 0x5e, 0x83, 0x80, 0xc6, 0xf1, 0x0f, 0xf0, 0x52, + 0xb1, 0x85, 0x34, 0xbe, 0x0d, 0x7e, 0x34, 0x4d, 0x11, 0xce, 0x6a, 0x37, +}; +static const unsigned char kat328_nonce[] = { + 0xae, 0x30, 0xf9, 0x9e, 0xe7, 0xdb, 0x3f, 0xb0, 0xa6, 0xbe, 0x60, 0x5f, + 0x14, 0xa4, 0xa0, 0xf5, +}; +static const unsigned char kat328_persstr[] = {0}; +static const unsigned char kat328_addin0[] = { + 0xd3, 0xaa, 0x9a, 0x02, 0xe5, 0x09, 0x31, 0xcd, 0xb6, 0x57, 0xe5, 0xac, + 0x56, 0x57, 0x22, 0xea, 0xc7, 0x69, 0xb1, 0x7e, 0xca, 0x63, 0xff, 0xe9, + 0x16, 0x92, 0x8b, 0x52, 0x6c, 0x58, 0x65, 0x87, +}; +static const unsigned char kat328_addin1[] = { + 0x06, 0x79, 0x40, 0xbc, 0xb6, 0x55, 0x3a, 0xf8, 0xdb, 0x6e, 0x21, 0xfa, + 0x49, 0xc9, 0xf9, 0xba, 0x22, 0x27, 0x21, 0x64, 0x22, 0xae, 0x20, 0xdd, + 0xf7, 0x3b, 0x65, 0xa6, 0x65, 0xcd, 0x81, 0xc4, +}; +static const unsigned char kat328_retbits[] = { + 0x00, 0x76, 0xb4, 0x66, 0x4e, 0x83, 0xfb, 0xe6, 0x93, 0xd5, 0x1e, 0x31, + 0x2d, 0x92, 0xf4, 0x1a, 0x29, 0xa7, 0x92, 0x16, 0xc1, 0x4d, 0xfa, 0x28, + 0xf6, 0xc2, 0xde, 0xd9, 0xd0, 0xe6, 0x9c, 0x6f, 0x51, 0x29, 0x80, 0xc2, + 0x5d, 0x72, 0x38, 0xcf, 0xbe, 0x6a, 0x39, 0x23, 0xd3, 0x0e, 0x2a, 0xf3, + 0xcb, 0xab, 0x71, 0x34, 0xc6, 0x53, 0x7f, 0xe1, 0x99, 0x91, 0x10, 0x5e, + 0x3d, 0xac, 0x89, 0x4b, +}; +static const struct drbg_kat_no_reseed kat328_t = { + 12, kat328_entropyin, kat328_nonce, kat328_persstr, + kat328_addin0, kat328_addin1, kat328_retbits +}; +static const struct drbg_kat kat328 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat328_t +}; + +static const unsigned char kat329_entropyin[] = { + 0xf7, 0x00, 0xbb, 0x6a, 0x92, 0xec, 0xc9, 0xee, 0x07, 0xd5, 0xc5, 0x96, + 0xbd, 0x66, 0x78, 0x62, 0x45, 0x56, 0x51, 0xb5, 0xe0, 0x9c, 0xc7, 0x16, +}; +static const unsigned char kat329_nonce[] = { + 0x41, 0x19, 0x2c, 0x65, 0xd6, 0x6b, 0xa5, 0xf0, 0x9c, 0x03, 0x24, 0x91, + 0xa2, 0xc5, 0x3e, 0xde, +}; +static const unsigned char kat329_persstr[] = {0}; +static const unsigned char kat329_addin0[] = { + 0x9e, 0x74, 0x82, 0x5c, 0xa0, 0xc3, 0xf9, 0xce, 0xb2, 0x72, 0x15, 0x0a, + 0xa5, 0x1f, 0x9f, 0x92, 0xe1, 0x99, 0xf3, 0x13, 0x3d, 0x91, 0x9d, 0x4f, + 0xa2, 0x16, 0x11, 0x9a, 0x13, 0x30, 0xe8, 0x8d, +}; +static const unsigned char kat329_addin1[] = { + 0xc5, 0x94, 0x03, 0x87, 0x0a, 0xa5, 0xb1, 0x48, 0xec, 0x6f, 0x99, 0xff, + 0x8b, 0x80, 0x65, 0x69, 0xe9, 0x9f, 0xa8, 0x36, 0x75, 0x01, 0x71, 0x78, + 0x7b, 0xcc, 0x8c, 0x89, 0x31, 0xaa, 0x82, 0xac, +}; +static const unsigned char kat329_retbits[] = { + 0x32, 0x21, 0x7f, 0xf9, 0x37, 0x1a, 0x6c, 0xbf, 0x79, 0x6c, 0x13, 0x8f, + 0x9c, 0xe3, 0xbe, 0x65, 0x8f, 0xba, 0x03, 0xdf, 0x9c, 0x10, 0xcd, 0x3d, + 0xe0, 0x9e, 0x82, 0xd1, 0xd9, 0xce, 0xc4, 0x3a, 0x96, 0x6a, 0xb8, 0x64, + 0xaa, 0xca, 0x56, 0x02, 0x4e, 0x8b, 0x36, 0x46, 0x3a, 0x31, 0x24, 0x56, + 0xb4, 0x21, 0xb2, 0x57, 0x66, 0x3f, 0xa5, 0xd4, 0x2a, 0xdb, 0xfa, 0x4a, + 0x54, 0x10, 0x79, 0x65, +}; +static const struct drbg_kat_no_reseed kat329_t = { + 13, kat329_entropyin, kat329_nonce, kat329_persstr, + kat329_addin0, kat329_addin1, kat329_retbits +}; +static const struct drbg_kat kat329 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat329_t +}; + +static const unsigned char kat330_entropyin[] = { + 0x15, 0x31, 0xb5, 0x6b, 0xff, 0x3f, 0x34, 0x44, 0x96, 0x74, 0xc5, 0xf9, + 0xb3, 0x10, 0x13, 0x8a, 0x51, 0x72, 0x1a, 0x40, 0xa4, 0x63, 0xe5, 0xbe, +}; +static const unsigned char kat330_nonce[] = { + 0xeb, 0x78, 0x09, 0xf3, 0xf3, 0xba, 0x6e, 0xb5, 0x77, 0x75, 0xf1, 0x28, + 0x4f, 0xc2, 0x9f, 0x54, +}; +static const unsigned char kat330_persstr[] = {0}; +static const unsigned char kat330_addin0[] = { + 0x85, 0xe6, 0xaa, 0x85, 0x9f, 0x43, 0x1d, 0xaa, 0xaf, 0xc9, 0x29, 0x9e, + 0xa6, 0x1f, 0xcd, 0xcf, 0xde, 0x71, 0x2f, 0xc2, 0xd0, 0x1d, 0x94, 0xfe, + 0x70, 0xcd, 0x0b, 0xc6, 0xda, 0xb7, 0xf3, 0xe9, +}; +static const unsigned char kat330_addin1[] = { + 0xcb, 0x7f, 0xb3, 0x63, 0x3f, 0x42, 0x65, 0x92, 0x01, 0x02, 0x6c, 0x63, + 0x48, 0x94, 0xec, 0xc7, 0x19, 0xc0, 0x00, 0x32, 0x59, 0xa6, 0x92, 0x83, + 0x76, 0x09, 0xab, 0x90, 0x78, 0x2a, 0xe2, 0x3a, +}; +static const unsigned char kat330_retbits[] = { + 0x74, 0x45, 0xb8, 0x12, 0xa7, 0xf5, 0xd3, 0xb8, 0xba, 0x79, 0xf7, 0x7a, + 0x80, 0x1a, 0xfc, 0xda, 0xb8, 0x23, 0x14, 0x0e, 0x5e, 0xb4, 0xa6, 0x6e, + 0x50, 0xf8, 0x58, 0x3d, 0x90, 0xdb, 0xad, 0xde, 0xe8, 0x69, 0x7d, 0x37, + 0xc0, 0xfd, 0x62, 0x47, 0xec, 0x6a, 0x3b, 0xf7, 0x66, 0x40, 0x18, 0xa5, + 0x8c, 0x04, 0x2b, 0xc3, 0xb3, 0xbe, 0x91, 0x2e, 0x88, 0xc2, 0xbe, 0x96, + 0xb9, 0xc6, 0x9e, 0x85, +}; +static const struct drbg_kat_no_reseed kat330_t = { + 14, kat330_entropyin, kat330_nonce, kat330_persstr, + kat330_addin0, kat330_addin1, kat330_retbits +}; +static const struct drbg_kat kat330 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat330_t +}; + +static const unsigned char kat331_entropyin[] = { + 0x50, 0x13, 0x4a, 0x63, 0x80, 0x92, 0xb0, 0x9e, 0x78, 0x70, 0x80, 0x50, + 0xdc, 0x40, 0x44, 0xe6, 0x3c, 0x7a, 0xbd, 0x22, 0x77, 0xbe, 0x3d, 0x71, +}; +static const unsigned char kat331_nonce[] = { + 0xda, 0x88, 0x07, 0x00, 0x9d, 0x40, 0x04, 0x82, 0xc6, 0xda, 0x8e, 0x4e, + 0x9a, 0x4e, 0xe3, 0x3c, +}; +static const unsigned char kat331_persstr[] = { + 0x8e, 0x01, 0x53, 0xaa, 0xbf, 0xd2, 0xca, 0x23, 0x74, 0xbd, 0xd1, 0xe9, + 0x7f, 0xf2, 0x3e, 0xe2, 0xe7, 0xdb, 0xff, 0x7e, 0x83, 0x6f, 0xa5, 0xad, + 0xb6, 0x57, 0x64, 0xf7, 0x07, 0x8d, 0xf1, 0xb8, +}; +static const unsigned char kat331_addin0[] = {0}; +static const unsigned char kat331_addin1[] = {0}; +static const unsigned char kat331_retbits[] = { + 0x50, 0x27, 0x3a, 0xa2, 0x0f, 0xeb, 0xe8, 0x26, 0x85, 0xd4, 0x9a, 0x01, + 0x3e, 0x75, 0xa8, 0x4b, 0xcc, 0xc7, 0xc2, 0x01, 0x28, 0xbd, 0x09, 0x8a, + 0x22, 0x8c, 0x77, 0x1d, 0x08, 0xbb, 0x53, 0x03, 0xe7, 0x15, 0xfc, 0x30, + 0x82, 0x3d, 0xae, 0x08, 0x57, 0x80, 0xd6, 0xd2, 0x8d, 0x10, 0x71, 0xa2, + 0x65, 0x08, 0x13, 0x0f, 0x35, 0x25, 0xb3, 0xbf, 0xd5, 0x05, 0xf0, 0x75, + 0x75, 0xad, 0xd8, 0x74, +}; +static const struct drbg_kat_no_reseed kat331_t = { + 0, kat331_entropyin, kat331_nonce, kat331_persstr, + kat331_addin0, kat331_addin1, kat331_retbits +}; +static const struct drbg_kat kat331 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat331_t +}; + +static const unsigned char kat332_entropyin[] = { + 0x9b, 0x6c, 0x7b, 0x1c, 0x72, 0x9c, 0xeb, 0xca, 0xf4, 0xc4, 0xaf, 0xb9, + 0xa3, 0x51, 0xd2, 0xf6, 0xd1, 0xb3, 0x8a, 0xff, 0xc3, 0x5f, 0xdc, 0x2b, +}; +static const unsigned char kat332_nonce[] = { + 0xd0, 0x46, 0x71, 0x5f, 0xee, 0x95, 0x6f, 0xa5, 0xe1, 0xa9, 0xd1, 0xaa, + 0xca, 0x6e, 0xd6, 0x7e, +}; +static const unsigned char kat332_persstr[] = { + 0x37, 0x6b, 0x88, 0x73, 0xca, 0x51, 0x20, 0x9c, 0x93, 0xfb, 0xfb, 0x15, + 0x89, 0x96, 0x41, 0x2b, 0xc6, 0xcd, 0x1f, 0x41, 0xe9, 0xa2, 0x09, 0x3d, + 0x9e, 0xd6, 0xfb, 0x91, 0xca, 0x3b, 0xa2, 0xc7, +}; +static const unsigned char kat332_addin0[] = {0}; +static const unsigned char kat332_addin1[] = {0}; +static const unsigned char kat332_retbits[] = { + 0x05, 0x92, 0x7f, 0xeb, 0x60, 0x85, 0x51, 0x27, 0xb4, 0xd6, 0x63, 0x2f, + 0x12, 0x17, 0xef, 0x30, 0x72, 0xa0, 0x3c, 0x03, 0x74, 0x0f, 0xdc, 0x14, + 0x1e, 0x56, 0x36, 0x0e, 0xfc, 0xbb, 0xd5, 0x5c, 0x5e, 0xf5, 0x16, 0xe3, + 0x91, 0x3b, 0xb2, 0x0d, 0xc4, 0xda, 0x9e, 0x79, 0x98, 0xb8, 0xb5, 0x93, + 0xe3, 0xa0, 0x21, 0x5d, 0xc0, 0x32, 0x24, 0x12, 0x14, 0xa3, 0x5e, 0x5e, + 0x4d, 0xdd, 0xf1, 0xa0, +}; +static const struct drbg_kat_no_reseed kat332_t = { + 1, kat332_entropyin, kat332_nonce, kat332_persstr, + kat332_addin0, kat332_addin1, kat332_retbits +}; +static const struct drbg_kat kat332 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat332_t +}; + +static const unsigned char kat333_entropyin[] = { + 0x32, 0xf7, 0x9c, 0x64, 0x90, 0x4f, 0x65, 0x16, 0x92, 0x77, 0xcf, 0x0e, + 0xaa, 0xd8, 0xce, 0xe6, 0xa6, 0x13, 0xf9, 0x2f, 0x08, 0x63, 0xb6, 0x62, +}; +static const unsigned char kat333_nonce[] = { + 0xf4, 0x19, 0x07, 0xab, 0x3d, 0xd3, 0xfc, 0x0c, 0x33, 0x75, 0x81, 0xdb, + 0xf3, 0xcf, 0x6a, 0x61, +}; +static const unsigned char kat333_persstr[] = { + 0xfe, 0x9b, 0xaf, 0x70, 0x43, 0xf1, 0x5c, 0x4e, 0xbe, 0x93, 0x30, 0x43, + 0x2d, 0xac, 0xda, 0xc1, 0x30, 0x6d, 0x42, 0x37, 0xe7, 0x65, 0xd5, 0xb8, + 0x26, 0x36, 0x0a, 0xad, 0x36, 0x84, 0xa2, 0x35, +}; +static const unsigned char kat333_addin0[] = {0}; +static const unsigned char kat333_addin1[] = {0}; +static const unsigned char kat333_retbits[] = { + 0xa2, 0xce, 0x0a, 0xfe, 0x7f, 0xdb, 0xeb, 0x4a, 0xd1, 0x95, 0xc4, 0x61, + 0x0c, 0xae, 0x40, 0x68, 0x83, 0xb6, 0x9c, 0xbc, 0x85, 0x48, 0xa8, 0x2d, + 0x12, 0x2c, 0x46, 0x13, 0xa6, 0x2e, 0xb3, 0x6e, 0x98, 0x6c, 0xaf, 0xce, + 0x10, 0xfc, 0x32, 0x00, 0xae, 0xf2, 0x97, 0xa3, 0xdf, 0xf0, 0x1b, 0xe3, + 0xa5, 0xdf, 0x6c, 0x82, 0x58, 0xc0, 0xa6, 0x01, 0xd8, 0x91, 0x88, 0xd5, + 0xc0, 0x65, 0xce, 0x1e, +}; +static const struct drbg_kat_no_reseed kat333_t = { + 2, kat333_entropyin, kat333_nonce, kat333_persstr, + kat333_addin0, kat333_addin1, kat333_retbits +}; +static const struct drbg_kat kat333 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat333_t +}; + +static const unsigned char kat334_entropyin[] = { + 0xb7, 0x36, 0x7a, 0x69, 0xf9, 0x1c, 0x68, 0xc6, 0x75, 0x64, 0x83, 0x70, + 0x28, 0x5b, 0x0e, 0x48, 0x6a, 0x3a, 0x97, 0x0d, 0x12, 0xc5, 0x81, 0xac, +}; +static const unsigned char kat334_nonce[] = { + 0xbd, 0x49, 0x96, 0x7a, 0x92, 0xa0, 0xf3, 0xca, 0x17, 0x31, 0x12, 0x5d, + 0x33, 0x5f, 0x86, 0xd3, +}; +static const unsigned char kat334_persstr[] = { + 0x5e, 0x7d, 0x45, 0x32, 0x6c, 0x6e, 0x53, 0xf1, 0x90, 0x2e, 0x0b, 0x5a, + 0x31, 0x4e, 0x59, 0xa0, 0x44, 0x74, 0x78, 0x1a, 0x1a, 0x4c, 0xd3, 0xdc, + 0xf1, 0x3b, 0xe1, 0x78, 0xce, 0x73, 0x70, 0x70, +}; +static const unsigned char kat334_addin0[] = {0}; +static const unsigned char kat334_addin1[] = {0}; +static const unsigned char kat334_retbits[] = { + 0x59, 0x6f, 0x86, 0xa7, 0x8c, 0x76, 0xd6, 0x93, 0xa6, 0x6b, 0xc0, 0x7e, + 0xd1, 0xf0, 0xd9, 0xfd, 0x3b, 0xa3, 0x06, 0xfd, 0xa4, 0xfb, 0x45, 0x6e, + 0x7d, 0xc6, 0x81, 0x29, 0x96, 0xe2, 0xf7, 0xba, 0xe4, 0x57, 0x95, 0xa9, + 0x0d, 0x9a, 0x92, 0xab, 0x4e, 0x06, 0x0d, 0x5b, 0x02, 0xe1, 0x50, 0x7a, + 0xc6, 0x81, 0x49, 0xeb, 0xd6, 0xf2, 0x37, 0xd3, 0xdf, 0x2e, 0x40, 0xa9, + 0xba, 0xf8, 0x91, 0x8c, +}; +static const struct drbg_kat_no_reseed kat334_t = { + 3, kat334_entropyin, kat334_nonce, kat334_persstr, + kat334_addin0, kat334_addin1, kat334_retbits +}; +static const struct drbg_kat kat334 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat334_t +}; + +static const unsigned char kat335_entropyin[] = { + 0xb6, 0x14, 0xaa, 0xf7, 0x99, 0x22, 0xf8, 0x3f, 0x67, 0xa4, 0xd4, 0x9d, + 0xf5, 0xc2, 0x40, 0x5f, 0xb5, 0xa9, 0x71, 0x26, 0xfd, 0x79, 0x2d, 0x80, +}; +static const unsigned char kat335_nonce[] = { + 0xcc, 0xc1, 0x86, 0x76, 0x0d, 0x36, 0x33, 0x56, 0x8a, 0x5e, 0x9f, 0x38, + 0xc2, 0xdb, 0x4c, 0xa0, +}; +static const unsigned char kat335_persstr[] = { + 0x65, 0x34, 0x7e, 0x04, 0xd7, 0x68, 0x8d, 0x1b, 0x0b, 0x69, 0xa3, 0xb1, + 0x81, 0x61, 0x3e, 0x6a, 0xbc, 0x78, 0x03, 0xc6, 0x48, 0x82, 0xbf, 0x62, + 0xd4, 0x10, 0x38, 0x95, 0x30, 0x06, 0x2e, 0x53, +}; +static const unsigned char kat335_addin0[] = {0}; +static const unsigned char kat335_addin1[] = {0}; +static const unsigned char kat335_retbits[] = { + 0x9d, 0x57, 0x4a, 0xc6, 0x7c, 0xc3, 0x84, 0xa8, 0x8b, 0x5a, 0xa1, 0x5e, + 0x65, 0x6f, 0xe9, 0x4b, 0xc8, 0x0b, 0xb0, 0x0b, 0xfe, 0xe7, 0xfc, 0x79, + 0xaa, 0x2f, 0xa7, 0xd9, 0x8e, 0x6d, 0x87, 0x45, 0xc0, 0x38, 0x1e, 0xab, + 0x01, 0x06, 0x3b, 0x18, 0x90, 0xed, 0xac, 0x7e, 0xf3, 0x0e, 0x34, 0xb5, + 0xde, 0xdf, 0xe9, 0xb1, 0xc7, 0xf2, 0x1d, 0x48, 0x4b, 0x2f, 0x47, 0x0c, + 0xbe, 0x7b, 0xac, 0x9d, +}; +static const struct drbg_kat_no_reseed kat335_t = { + 4, kat335_entropyin, kat335_nonce, kat335_persstr, + kat335_addin0, kat335_addin1, kat335_retbits +}; +static const struct drbg_kat kat335 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat335_t +}; + +static const unsigned char kat336_entropyin[] = { + 0xa4, 0xcf, 0xbf, 0xc8, 0x94, 0x17, 0xd3, 0x55, 0x98, 0x86, 0xfd, 0xaf, + 0x38, 0x8d, 0x60, 0xb7, 0x82, 0x27, 0xae, 0xad, 0x26, 0xcd, 0x47, 0x2f, +}; +static const unsigned char kat336_nonce[] = { + 0xe1, 0x8c, 0xd3, 0x79, 0x48, 0x0e, 0xf2, 0x68, 0x55, 0x2f, 0x74, 0x8e, + 0x9c, 0xc0, 0xf1, 0x33, +}; +static const unsigned char kat336_persstr[] = { + 0xe6, 0xc4, 0x92, 0x78, 0x42, 0x42, 0xbc, 0x71, 0xc5, 0x82, 0xe4, 0xbd, + 0x79, 0xcc, 0xad, 0x4c, 0xf6, 0xb1, 0x12, 0x49, 0x01, 0xea, 0x7a, 0x4a, + 0x60, 0x1e, 0x91, 0x00, 0x67, 0x86, 0x41, 0x1a, +}; +static const unsigned char kat336_addin0[] = {0}; +static const unsigned char kat336_addin1[] = {0}; +static const unsigned char kat336_retbits[] = { + 0x05, 0xbd, 0x50, 0x50, 0x20, 0xc3, 0xb1, 0x6d, 0xff, 0xc5, 0x11, 0xd6, + 0x25, 0xbd, 0xb3, 0x6d, 0x46, 0xca, 0x8a, 0x6a, 0xa1, 0xfa, 0xe9, 0x01, + 0x54, 0x46, 0x9a, 0x1c, 0x1a, 0x2c, 0xac, 0x50, 0x59, 0x8a, 0xcc, 0xb9, + 0x94, 0xd0, 0x89, 0x40, 0x26, 0xe4, 0xb3, 0x83, 0xf0, 0xf3, 0x11, 0x88, + 0xa7, 0x98, 0x9f, 0x98, 0xe9, 0xa7, 0x32, 0x95, 0x3c, 0x82, 0xa2, 0xff, + 0x32, 0xbf, 0x54, 0xed, +}; +static const struct drbg_kat_no_reseed kat336_t = { + 5, kat336_entropyin, kat336_nonce, kat336_persstr, + kat336_addin0, kat336_addin1, kat336_retbits +}; +static const struct drbg_kat kat336 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat336_t +}; + +static const unsigned char kat337_entropyin[] = { + 0xfa, 0x72, 0xab, 0x81, 0xa6, 0x3b, 0xa4, 0x90, 0x67, 0x76, 0x84, 0x8a, + 0xd1, 0xfb, 0xc6, 0x72, 0xae, 0xc0, 0x98, 0x3c, 0x9f, 0x09, 0xbe, 0x1f, +}; +static const unsigned char kat337_nonce[] = { + 0x9d, 0x5f, 0x58, 0x70, 0x9f, 0xd2, 0x3f, 0xc2, 0x30, 0xdb, 0xd8, 0x33, + 0xac, 0x34, 0x2d, 0x3f, +}; +static const unsigned char kat337_persstr[] = { + 0xa6, 0xce, 0x15, 0xe6, 0xb2, 0xce, 0x26, 0x0f, 0x8f, 0xb5, 0xd3, 0xd6, + 0xb9, 0x2a, 0xa2, 0x67, 0xe1, 0xa3, 0x23, 0x6e, 0x09, 0x10, 0xbe, 0x3a, + 0x9a, 0x06, 0xc7, 0xec, 0x86, 0xde, 0x5a, 0x58, +}; +static const unsigned char kat337_addin0[] = {0}; +static const unsigned char kat337_addin1[] = {0}; +static const unsigned char kat337_retbits[] = { + 0xbd, 0x9b, 0x6f, 0x17, 0xc2, 0xa0, 0x6a, 0x7f, 0xa7, 0x42, 0x09, 0x2f, + 0x2d, 0xa8, 0x1f, 0x82, 0x49, 0x89, 0x9d, 0x13, 0xf0, 0x5b, 0x9b, 0xc6, + 0x3e, 0x37, 0x00, 0xf8, 0x16, 0x89, 0xb1, 0x11, 0x3e, 0x1d, 0x32, 0x4e, + 0x3b, 0x34, 0x12, 0xdc, 0xf2, 0xf8, 0x5b, 0x46, 0x9c, 0xbc, 0xe4, 0x4d, + 0x25, 0x9e, 0x71, 0x53, 0x33, 0x9a, 0x47, 0x57, 0xf8, 0x70, 0x31, 0xbf, + 0x59, 0x00, 0x30, 0x47, +}; +static const struct drbg_kat_no_reseed kat337_t = { + 6, kat337_entropyin, kat337_nonce, kat337_persstr, + kat337_addin0, kat337_addin1, kat337_retbits +}; +static const struct drbg_kat kat337 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat337_t +}; + +static const unsigned char kat338_entropyin[] = { + 0x6f, 0x8b, 0xd5, 0x7f, 0x52, 0x3a, 0x9a, 0x7d, 0x1b, 0xff, 0x9e, 0x6e, + 0x21, 0xd9, 0x34, 0xb6, 0x5e, 0x1c, 0x00, 0xf2, 0xb0, 0x69, 0x17, 0xeb, +}; +static const unsigned char kat338_nonce[] = { + 0x74, 0x41, 0x0e, 0x8f, 0x55, 0xfd, 0x7d, 0x8c, 0x6e, 0x58, 0xc2, 0x81, + 0xc9, 0x74, 0x8a, 0xdd, +}; +static const unsigned char kat338_persstr[] = { + 0x4b, 0x16, 0x63, 0xae, 0x4b, 0x57, 0x58, 0xbd, 0x57, 0x03, 0xc9, 0xae, + 0xed, 0xd7, 0xc9, 0x74, 0x0c, 0xe2, 0x57, 0xf0, 0x06, 0xbc, 0x7b, 0x68, + 0xf9, 0x0f, 0x71, 0xf6, 0x37, 0x19, 0xf7, 0x8a, +}; +static const unsigned char kat338_addin0[] = {0}; +static const unsigned char kat338_addin1[] = {0}; +static const unsigned char kat338_retbits[] = { + 0xdc, 0x84, 0xd5, 0xef, 0x81, 0x94, 0xfa, 0x6c, 0x89, 0x75, 0x35, 0x88, + 0x0b, 0xf4, 0x84, 0x76, 0xf1, 0xe5, 0x31, 0x24, 0xb7, 0xad, 0x72, 0x99, + 0xcc, 0x1f, 0xf5, 0xe8, 0x56, 0x7e, 0xd4, 0xd5, 0x04, 0x1b, 0xa6, 0x2a, + 0x29, 0xb6, 0x32, 0x4e, 0x4a, 0x69, 0x40, 0xab, 0x8f, 0xba, 0xf3, 0x58, + 0xe9, 0xaa, 0x2d, 0xb4, 0x5f, 0x1c, 0x26, 0x69, 0xb7, 0x57, 0xeb, 0x3e, + 0xe9, 0xb9, 0xce, 0x70, +}; +static const struct drbg_kat_no_reseed kat338_t = { + 7, kat338_entropyin, kat338_nonce, kat338_persstr, + kat338_addin0, kat338_addin1, kat338_retbits +}; +static const struct drbg_kat kat338 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat338_t +}; + +static const unsigned char kat339_entropyin[] = { + 0x18, 0xa2, 0x35, 0x03, 0x50, 0xdc, 0x88, 0x05, 0x8d, 0x97, 0x18, 0x33, + 0x55, 0x26, 0xa3, 0x92, 0x59, 0x73, 0xd3, 0x69, 0x2c, 0xec, 0x6c, 0x2d, +}; +static const unsigned char kat339_nonce[] = { + 0x8b, 0x0c, 0x04, 0x3b, 0x89, 0x71, 0x7a, 0xca, 0x31, 0x9f, 0x96, 0x72, + 0x1e, 0x45, 0xf0, 0xeb, +}; +static const unsigned char kat339_persstr[] = { + 0x38, 0x5f, 0x0d, 0xdb, 0xe8, 0xa3, 0xd5, 0xba, 0x48, 0x0a, 0xbb, 0x7a, + 0xd5, 0x4d, 0x2a, 0xae, 0xa1, 0x29, 0x53, 0xdf, 0x7b, 0xe1, 0xd3, 0x48, + 0xfb, 0x38, 0x83, 0x86, 0xbe, 0x66, 0x51, 0xfa, +}; +static const unsigned char kat339_addin0[] = {0}; +static const unsigned char kat339_addin1[] = {0}; +static const unsigned char kat339_retbits[] = { + 0xbf, 0x27, 0x45, 0xcc, 0x69, 0xc8, 0xe3, 0x76, 0xfe, 0x2d, 0x60, 0x63, + 0x5c, 0xd2, 0xb7, 0xf1, 0x32, 0x4b, 0x58, 0x29, 0xb3, 0xd2, 0x31, 0x49, + 0xed, 0xa9, 0x16, 0xd1, 0x92, 0x61, 0x61, 0xb2, 0x98, 0x8b, 0x6d, 0x01, + 0x43, 0x48, 0x89, 0x12, 0x6a, 0x5f, 0xbe, 0xca, 0xc4, 0xbb, 0xf3, 0x9a, + 0xb3, 0x52, 0x04, 0x2f, 0xa0, 0x78, 0x1a, 0x3b, 0x0b, 0x9d, 0x04, 0x6c, + 0xb9, 0xad, 0xbe, 0x9f, +}; +static const struct drbg_kat_no_reseed kat339_t = { + 8, kat339_entropyin, kat339_nonce, kat339_persstr, + kat339_addin0, kat339_addin1, kat339_retbits +}; +static const struct drbg_kat kat339 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat339_t +}; + +static const unsigned char kat340_entropyin[] = { + 0xcf, 0x2e, 0x38, 0xdd, 0x52, 0x04, 0x1d, 0xe7, 0xb4, 0x48, 0x63, 0x2b, + 0xbc, 0x11, 0xa9, 0x94, 0x79, 0x88, 0x7d, 0x44, 0xf3, 0xcc, 0xfc, 0xaf, +}; +static const unsigned char kat340_nonce[] = { + 0x19, 0xc4, 0x29, 0x64, 0x80, 0xca, 0xa9, 0xe1, 0x60, 0x2e, 0x1c, 0x5e, + 0x8f, 0x21, 0x36, 0xb2, +}; +static const unsigned char kat340_persstr[] = { + 0x64, 0xd3, 0x8b, 0xe3, 0x66, 0x26, 0xe8, 0x5f, 0xda, 0x02, 0x6a, 0x2a, + 0xdd, 0x7f, 0x98, 0x1b, 0x2e, 0x81, 0x44, 0x9e, 0xba, 0xf4, 0x5b, 0xfb, + 0xb5, 0x80, 0xab, 0x07, 0x62, 0x65, 0xb1, 0x61, +}; +static const unsigned char kat340_addin0[] = {0}; +static const unsigned char kat340_addin1[] = {0}; +static const unsigned char kat340_retbits[] = { + 0x68, 0x77, 0x58, 0xf9, 0x5c, 0x73, 0x92, 0x86, 0x77, 0x23, 0x5d, 0x46, + 0x99, 0x4e, 0x90, 0x23, 0x13, 0xd4, 0x24, 0x61, 0x01, 0x69, 0x53, 0x59, + 0xcd, 0x81, 0xbd, 0x03, 0x5f, 0xda, 0xd3, 0xe8, 0xd8, 0xdc, 0x91, 0xd9, + 0x07, 0x63, 0x0e, 0xee, 0xfc, 0xfa, 0x44, 0x44, 0x5b, 0x00, 0xd1, 0x40, + 0x71, 0x49, 0xa1, 0x60, 0x6e, 0xdd, 0x72, 0x84, 0xaf, 0xca, 0xb5, 0xc8, + 0x69, 0xd7, 0x62, 0xfb, +}; +static const struct drbg_kat_no_reseed kat340_t = { + 9, kat340_entropyin, kat340_nonce, kat340_persstr, + kat340_addin0, kat340_addin1, kat340_retbits +}; +static const struct drbg_kat kat340 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat340_t +}; + +static const unsigned char kat341_entropyin[] = { + 0x75, 0xb3, 0xf1, 0x49, 0x96, 0xb0, 0x8a, 0x9c, 0xb2, 0x11, 0x11, 0xc1, + 0x05, 0x64, 0xf1, 0x24, 0x2f, 0xbc, 0x7e, 0xc2, 0xc1, 0x14, 0x56, 0xdd, +}; +static const unsigned char kat341_nonce[] = { + 0x87, 0xac, 0x27, 0x4b, 0xad, 0x1f, 0x34, 0x7e, 0x05, 0x3f, 0x5f, 0x24, + 0x2e, 0x5b, 0x2a, 0x49, +}; +static const unsigned char kat341_persstr[] = { + 0x1d, 0x4b, 0x88, 0xab, 0xff, 0xd4, 0x80, 0xbe, 0xdf, 0x4e, 0x4f, 0xcb, + 0xd8, 0x6e, 0x2c, 0xd3, 0x8c, 0x18, 0x3c, 0x93, 0xf2, 0xef, 0xe6, 0x21, + 0x8e, 0x94, 0x97, 0x63, 0xea, 0xfb, 0xa9, 0x81, +}; +static const unsigned char kat341_addin0[] = {0}; +static const unsigned char kat341_addin1[] = {0}; +static const unsigned char kat341_retbits[] = { + 0x89, 0x58, 0x44, 0x32, 0x63, 0xf9, 0x4b, 0x01, 0x96, 0x34, 0xe3, 0x7f, + 0x7e, 0x5d, 0xec, 0x3b, 0x9f, 0xa7, 0xce, 0x24, 0xd0, 0xbf, 0xf6, 0x1c, + 0x5b, 0x8e, 0xe5, 0x4d, 0x0f, 0x29, 0x91, 0xfd, 0x2a, 0xf7, 0x2e, 0xf9, + 0x3b, 0x82, 0x2c, 0x55, 0xbd, 0xd2, 0xd2, 0x0e, 0xd3, 0xa7, 0x89, 0x05, + 0xa8, 0xc6, 0x01, 0xb4, 0xad, 0xd9, 0x8e, 0x66, 0x59, 0xb2, 0x17, 0x4c, + 0x45, 0x8c, 0x25, 0x87, +}; +static const struct drbg_kat_no_reseed kat341_t = { + 10, kat341_entropyin, kat341_nonce, kat341_persstr, + kat341_addin0, kat341_addin1, kat341_retbits +}; +static const struct drbg_kat kat341 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat341_t +}; + +static const unsigned char kat342_entropyin[] = { + 0x82, 0x0c, 0xcc, 0x71, 0xe2, 0x47, 0x27, 0x11, 0xe6, 0x3d, 0x44, 0x58, + 0xcc, 0x0b, 0x84, 0x66, 0xba, 0x0a, 0x79, 0xc2, 0x43, 0x9a, 0x8b, 0x9b, +}; +static const unsigned char kat342_nonce[] = { + 0x98, 0xed, 0x21, 0xc6, 0x7c, 0x7c, 0x8d, 0x19, 0xbc, 0x21, 0x83, 0x70, + 0x58, 0x30, 0x6b, 0xc9, +}; +static const unsigned char kat342_persstr[] = { + 0xa3, 0xdf, 0xf1, 0x63, 0x0c, 0x7f, 0xee, 0x3d, 0x69, 0x6a, 0x35, 0xfc, + 0xb6, 0x75, 0x4b, 0x63, 0xbd, 0xf1, 0x6c, 0x0a, 0x84, 0x9a, 0x54, 0x05, + 0x59, 0xea, 0xf3, 0x50, 0xa8, 0xa0, 0x3a, 0x80, +}; +static const unsigned char kat342_addin0[] = {0}; +static const unsigned char kat342_addin1[] = {0}; +static const unsigned char kat342_retbits[] = { + 0x67, 0x01, 0xd4, 0x2f, 0xd9, 0xbe, 0x4a, 0x6e, 0xf9, 0x75, 0x0a, 0x5e, + 0xd6, 0x81, 0x7f, 0xd1, 0x6c, 0x06, 0xe3, 0x79, 0x1f, 0x4e, 0x7e, 0xd6, + 0xbf, 0x7e, 0x07, 0x84, 0x23, 0x9e, 0xb5, 0x5b, 0xbd, 0x5b, 0xf8, 0xbf, + 0x75, 0x7f, 0x73, 0x9a, 0x53, 0xd9, 0xe2, 0xce, 0xcc, 0x85, 0xdb, 0x1c, + 0x35, 0x72, 0x7e, 0xf0, 0x98, 0xd1, 0x9c, 0x09, 0x00, 0x0a, 0x7f, 0xb6, + 0x3a, 0x83, 0x6c, 0x68, +}; +static const struct drbg_kat_no_reseed kat342_t = { + 11, kat342_entropyin, kat342_nonce, kat342_persstr, + kat342_addin0, kat342_addin1, kat342_retbits +}; +static const struct drbg_kat kat342 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat342_t +}; + +static const unsigned char kat343_entropyin[] = { + 0x2a, 0xb2, 0x2f, 0x44, 0xac, 0x41, 0x93, 0xb1, 0x11, 0x15, 0x52, 0xd2, + 0x95, 0xe2, 0x41, 0xed, 0xf3, 0x7d, 0x6f, 0x4c, 0x28, 0xbb, 0xb3, 0xfc, +}; +static const unsigned char kat343_nonce[] = { + 0x83, 0xb2, 0xdd, 0xa7, 0x9e, 0x88, 0xac, 0xb5, 0xb9, 0xbf, 0xf1, 0xbb, + 0xf6, 0x6f, 0x38, 0x78, +}; +static const unsigned char kat343_persstr[] = { + 0xa6, 0xb0, 0xa7, 0x32, 0x04, 0xbc, 0x0d, 0xcc, 0x83, 0xfa, 0x2f, 0x48, + 0x0d, 0xb3, 0x71, 0xeb, 0x5b, 0x18, 0x3d, 0xaf, 0x59, 0x96, 0xed, 0xea, + 0xae, 0xb0, 0x9b, 0x82, 0x1a, 0x51, 0x66, 0x20, +}; +static const unsigned char kat343_addin0[] = {0}; +static const unsigned char kat343_addin1[] = {0}; +static const unsigned char kat343_retbits[] = { + 0x69, 0x0e, 0x7f, 0x00, 0xc5, 0x57, 0xf7, 0x14, 0x29, 0xbc, 0x36, 0x42, + 0x5e, 0xd7, 0xd6, 0x21, 0x5d, 0x0f, 0xc1, 0x81, 0x29, 0xcc, 0x0f, 0x93, + 0x5f, 0xfb, 0x2b, 0xc4, 0xfb, 0x2c, 0x2b, 0x88, 0x3d, 0x6d, 0x95, 0xdd, + 0xcc, 0x07, 0x1f, 0xff, 0x5a, 0xd1, 0x99, 0x66, 0x09, 0x68, 0x0a, 0x7c, + 0xdc, 0xf5, 0x09, 0x9c, 0x88, 0x37, 0x1b, 0x6a, 0xc0, 0x65, 0x08, 0xd3, + 0x52, 0xcb, 0x91, 0x05, +}; +static const struct drbg_kat_no_reseed kat343_t = { + 12, kat343_entropyin, kat343_nonce, kat343_persstr, + kat343_addin0, kat343_addin1, kat343_retbits +}; +static const struct drbg_kat kat343 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat343_t +}; + +static const unsigned char kat344_entropyin[] = { + 0xe5, 0x99, 0x5b, 0x25, 0xb4, 0x74, 0x12, 0xc2, 0xcb, 0x2e, 0xcd, 0x2a, + 0x32, 0xb4, 0x06, 0x12, 0x4d, 0x90, 0xba, 0x5e, 0x26, 0xe6, 0x5b, 0x87, +}; +static const unsigned char kat344_nonce[] = { + 0x12, 0x64, 0x3e, 0xa9, 0xfd, 0x57, 0x40, 0xa7, 0x38, 0x6f, 0x5f, 0x6a, + 0x01, 0xe6, 0xfe, 0x44, +}; +static const unsigned char kat344_persstr[] = { + 0x3c, 0xef, 0x84, 0x53, 0x15, 0xcd, 0x98, 0x32, 0x2e, 0x2a, 0x28, 0xa4, + 0x44, 0x68, 0xcc, 0x14, 0xab, 0x68, 0x05, 0x03, 0xa6, 0xfa, 0x89, 0xad, + 0x4f, 0x87, 0x6b, 0x0e, 0x2c, 0x4f, 0x3c, 0xa7, +}; +static const unsigned char kat344_addin0[] = {0}; +static const unsigned char kat344_addin1[] = {0}; +static const unsigned char kat344_retbits[] = { + 0x61, 0x29, 0xed, 0xa9, 0xef, 0x3b, 0x9e, 0xb9, 0xf3, 0x8f, 0xd8, 0xe9, + 0xca, 0x93, 0xe7, 0x31, 0x9b, 0x6f, 0xde, 0xd3, 0x63, 0xee, 0x15, 0x5c, + 0x97, 0x99, 0x19, 0xc3, 0x4b, 0x98, 0xce, 0x39, 0x9b, 0x0b, 0x4f, 0x99, + 0xf2, 0x83, 0x6f, 0x98, 0xea, 0x84, 0xd5, 0x26, 0x03, 0xf5, 0x79, 0x0d, + 0xa5, 0x20, 0x29, 0xa4, 0xe7, 0xcf, 0x87, 0x17, 0xdb, 0x4a, 0x62, 0x22, + 0x50, 0x0d, 0x7d, 0x2a, +}; +static const struct drbg_kat_no_reseed kat344_t = { + 13, kat344_entropyin, kat344_nonce, kat344_persstr, + kat344_addin0, kat344_addin1, kat344_retbits +}; +static const struct drbg_kat kat344 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat344_t +}; + +static const unsigned char kat345_entropyin[] = { + 0xf8, 0x1b, 0x47, 0x52, 0xd9, 0xb3, 0x4f, 0xea, 0x62, 0x82, 0x78, 0xbe, + 0xff, 0x92, 0x9d, 0x17, 0x9d, 0x04, 0x44, 0xa8, 0x1b, 0x0e, 0x1b, 0x75, +}; +static const unsigned char kat345_nonce[] = { + 0xeb, 0xe6, 0xe2, 0x74, 0x3f, 0x5f, 0xd9, 0xc5, 0xb1, 0xbc, 0xeb, 0x12, + 0xf3, 0xf7, 0x9c, 0x2b, +}; +static const unsigned char kat345_persstr[] = { + 0xd8, 0x6a, 0x1d, 0x62, 0x8b, 0xb8, 0x3d, 0x73, 0x86, 0x14, 0xa9, 0x3c, + 0x44, 0xc0, 0x8d, 0x37, 0x17, 0xf8, 0x03, 0xa2, 0x7b, 0xee, 0x61, 0xbe, + 0x24, 0xb8, 0xed, 0xf5, 0x2e, 0xfc, 0xd3, 0x68, +}; +static const unsigned char kat345_addin0[] = {0}; +static const unsigned char kat345_addin1[] = {0}; +static const unsigned char kat345_retbits[] = { + 0xac, 0xd3, 0x01, 0xc2, 0x92, 0xbb, 0x6b, 0x80, 0x14, 0x01, 0xff, 0x9e, + 0x3b, 0x65, 0x56, 0xfa, 0x1c, 0xa8, 0x06, 0x1b, 0x99, 0xb8, 0xbd, 0x54, + 0x5b, 0x16, 0x33, 0x18, 0xbb, 0x88, 0x02, 0x28, 0xee, 0xb4, 0xee, 0x3a, + 0xd5, 0x6b, 0x21, 0x34, 0x33, 0x77, 0x92, 0x86, 0x2d, 0xa2, 0x51, 0xc5, + 0xac, 0x43, 0xc2, 0xa2, 0xa5, 0xd8, 0xcb, 0x38, 0xc1, 0x84, 0x36, 0x83, + 0x9f, 0xba, 0xb4, 0xdc, +}; +static const struct drbg_kat_no_reseed kat345_t = { + 14, kat345_entropyin, kat345_nonce, kat345_persstr, + kat345_addin0, kat345_addin1, kat345_retbits +}; +static const struct drbg_kat kat345 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat345_t +}; + +static const unsigned char kat346_entropyin[] = { + 0xf3, 0x58, 0x3f, 0x3c, 0x8b, 0x14, 0x7a, 0x7e, 0xe9, 0x92, 0xd5, 0xca, + 0x61, 0x1e, 0x47, 0x85, 0xb7, 0x72, 0xcb, 0x57, 0x5a, 0x53, 0xa5, 0x73, +}; +static const unsigned char kat346_nonce[] = { + 0xeb, 0x1b, 0xce, 0xf5, 0x54, 0x1a, 0xba, 0x81, 0x29, 0xcd, 0xaa, 0x8b, + 0x23, 0x3b, 0x60, 0xf0, +}; +static const unsigned char kat346_persstr[] = { + 0x08, 0xc1, 0x8b, 0x3c, 0x8f, 0x79, 0xed, 0xa3, 0xba, 0x18, 0xfc, 0xd2, + 0x71, 0x1c, 0x86, 0xfd, 0x1d, 0x6a, 0x28, 0x42, 0xea, 0x95, 0xf1, 0xd8, + 0x96, 0x17, 0x24, 0x01, 0x2c, 0x0a, 0x61, 0x21, +}; +static const unsigned char kat346_addin0[] = { + 0x65, 0x7d, 0x1d, 0xf7, 0x80, 0xa9, 0xb6, 0x74, 0xb9, 0x0c, 0xce, 0x0d, + 0x49, 0xe2, 0xd5, 0xc0, 0xc0, 0x1e, 0xd2, 0xd2, 0xd7, 0x99, 0xf5, 0x04, + 0x34, 0x8d, 0x86, 0x37, 0x45, 0x76, 0xc4, 0x04, +}; +static const unsigned char kat346_addin1[] = { + 0x94, 0x23, 0x4f, 0x2b, 0x6c, 0x9f, 0x32, 0x7c, 0xd8, 0x23, 0xe7, 0x53, + 0xec, 0x9c, 0x4d, 0xe4, 0x11, 0x97, 0x37, 0xaf, 0x91, 0x4d, 0xea, 0x5e, + 0x57, 0xe0, 0xa5, 0x0e, 0x33, 0x76, 0x13, 0x5f, +}; +static const unsigned char kat346_retbits[] = { + 0x3c, 0x2e, 0x80, 0xe7, 0x21, 0x1e, 0x6a, 0x19, 0xa2, 0x7a, 0x53, 0xb4, + 0x95, 0x71, 0x65, 0xed, 0x87, 0xd1, 0xed, 0xb6, 0x62, 0x42, 0x6f, 0xee, + 0x92, 0x73, 0xae, 0x0d, 0x85, 0x40, 0x2c, 0xe2, 0x50, 0x7c, 0xda, 0x18, + 0x12, 0x6c, 0x07, 0xfb, 0x20, 0x11, 0x71, 0xf1, 0x76, 0xb0, 0x69, 0xd2, + 0xd2, 0xa1, 0x26, 0xaf, 0x5f, 0xb3, 0x1c, 0xe1, 0xd1, 0x99, 0x97, 0x8e, + 0x3d, 0x11, 0xd7, 0x71, +}; +static const struct drbg_kat_no_reseed kat346_t = { + 0, kat346_entropyin, kat346_nonce, kat346_persstr, + kat346_addin0, kat346_addin1, kat346_retbits +}; +static const struct drbg_kat kat346 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat346_t +}; + +static const unsigned char kat347_entropyin[] = { + 0x4e, 0x00, 0x8d, 0xc8, 0x72, 0xa7, 0x4a, 0x6a, 0x9d, 0x4c, 0x71, 0xc1, + 0x4a, 0x2d, 0x9b, 0x1a, 0xa7, 0xc0, 0x5a, 0x03, 0x40, 0x2c, 0xa1, 0x81, +}; +static const unsigned char kat347_nonce[] = { + 0x33, 0xc5, 0x0f, 0xa9, 0x5f, 0x0d, 0x9d, 0x03, 0xbc, 0xc1, 0xde, 0x53, + 0x0e, 0x04, 0x44, 0x0d, +}; +static const unsigned char kat347_persstr[] = { + 0x57, 0x87, 0x57, 0x74, 0x9b, 0x8e, 0xbe, 0x44, 0x2d, 0x93, 0xb6, 0x2c, + 0xb9, 0x42, 0x27, 0x8d, 0xe5, 0xaa, 0x89, 0x09, 0xf9, 0x14, 0x12, 0x0a, + 0x90, 0x58, 0xb2, 0xc3, 0x41, 0xe8, 0x86, 0xc8, +}; +static const unsigned char kat347_addin0[] = { + 0xea, 0x62, 0x7c, 0xb9, 0xfe, 0x1a, 0x49, 0x9e, 0x3b, 0xc1, 0xae, 0x73, + 0x1a, 0xa3, 0x73, 0x2b, 0x53, 0x93, 0x97, 0x17, 0x88, 0x98, 0xba, 0x2d, + 0xc4, 0x0c, 0x04, 0xae, 0x68, 0x50, 0x48, 0x86, +}; +static const unsigned char kat347_addin1[] = { + 0x77, 0x0a, 0xcb, 0x69, 0x0f, 0xd0, 0xba, 0x83, 0x09, 0x71, 0x93, 0x30, + 0x3d, 0x68, 0x44, 0x05, 0xdd, 0xb3, 0xdd, 0x4f, 0x67, 0x70, 0xf0, 0x14, + 0x1d, 0x58, 0x04, 0x62, 0x60, 0xe3, 0xf2, 0x73, +}; +static const unsigned char kat347_retbits[] = { + 0xb0, 0xe1, 0x3a, 0xf5, 0x42, 0xc0, 0x77, 0x79, 0x61, 0xcb, 0xec, 0x4c, + 0x61, 0xc9, 0xb2, 0x25, 0xa1, 0x21, 0x01, 0x16, 0xcb, 0xc7, 0x4e, 0xed, + 0x6e, 0xa8, 0xb7, 0x3e, 0x96, 0x8c, 0x11, 0x8f, 0xe6, 0x0e, 0x36, 0x07, + 0x98, 0xa1, 0x77, 0x9f, 0x07, 0xe0, 0x0b, 0x3f, 0xd1, 0x24, 0xf2, 0x78, + 0xb2, 0x7f, 0x70, 0x04, 0x66, 0x12, 0x02, 0x1d, 0xb8, 0xb8, 0xad, 0x32, + 0x92, 0x89, 0x40, 0x64, +}; +static const struct drbg_kat_no_reseed kat347_t = { + 1, kat347_entropyin, kat347_nonce, kat347_persstr, + kat347_addin0, kat347_addin1, kat347_retbits +}; +static const struct drbg_kat kat347 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat347_t +}; + +static const unsigned char kat348_entropyin[] = { + 0x09, 0x65, 0xa0, 0xca, 0x7c, 0x1e, 0x68, 0x46, 0x26, 0xa4, 0x09, 0xd8, + 0xcb, 0xed, 0x26, 0x73, 0x0e, 0x86, 0x18, 0xbf, 0x7c, 0x2c, 0x70, 0x31, +}; +static const unsigned char kat348_nonce[] = { + 0x19, 0xc4, 0x20, 0x55, 0xf5, 0xcd, 0x94, 0xdf, 0x0f, 0xe3, 0x03, 0x7a, + 0xf9, 0x81, 0x55, 0x0b, +}; +static const unsigned char kat348_persstr[] = { + 0xc9, 0x08, 0x8b, 0x4b, 0x23, 0xa1, 0xbd, 0x96, 0x96, 0x3e, 0x43, 0xe1, + 0xe7, 0x74, 0x28, 0x70, 0xb6, 0xb0, 0xad, 0x58, 0xac, 0xe3, 0x32, 0x6f, + 0x1c, 0x7e, 0x67, 0x5a, 0xff, 0x6e, 0x53, 0x97, +}; +static const unsigned char kat348_addin0[] = { + 0xcf, 0x58, 0x27, 0x39, 0x45, 0xa0, 0xc5, 0x26, 0x2b, 0xb1, 0x7e, 0x32, + 0xd2, 0xdc, 0x7a, 0xfa, 0x5f, 0xf9, 0x19, 0xee, 0xaf, 0xee, 0xf7, 0x32, + 0x2c, 0xa0, 0x2c, 0xa5, 0x05, 0x53, 0xf4, 0x91, +}; +static const unsigned char kat348_addin1[] = { + 0x9d, 0x64, 0xc2, 0xef, 0x27, 0xde, 0xda, 0xe0, 0x99, 0xa1, 0x01, 0x6c, + 0x10, 0x93, 0x71, 0x5b, 0xd1, 0x36, 0x87, 0xfa, 0xa1, 0x72, 0x42, 0xfe, + 0xa8, 0xbf, 0x25, 0x48, 0xa6, 0xdd, 0x7d, 0xfd, +}; +static const unsigned char kat348_retbits[] = { + 0x03, 0xa7, 0x58, 0x95, 0x2a, 0xc1, 0x7a, 0x40, 0x0a, 0xe9, 0x74, 0x28, + 0xba, 0xa6, 0x41, 0xd7, 0xb9, 0xe3, 0xcd, 0xdb, 0x16, 0x3c, 0x1f, 0x38, + 0x19, 0x69, 0xb2, 0x09, 0x5b, 0x5e, 0x00, 0x76, 0xc3, 0x53, 0xc8, 0xf5, + 0x54, 0x60, 0xf1, 0x62, 0xae, 0x85, 0x23, 0xa5, 0x2b, 0x46, 0xa0, 0x1d, + 0x5d, 0x26, 0x43, 0xac, 0x81, 0x52, 0x9e, 0x7f, 0xc7, 0x73, 0xac, 0xda, + 0xf6, 0x74, 0xed, 0x37, +}; +static const struct drbg_kat_no_reseed kat348_t = { + 2, kat348_entropyin, kat348_nonce, kat348_persstr, + kat348_addin0, kat348_addin1, kat348_retbits +}; +static const struct drbg_kat kat348 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat348_t +}; + +static const unsigned char kat349_entropyin[] = { + 0x0b, 0x74, 0xa0, 0xd1, 0x4e, 0x27, 0x94, 0xd8, 0x8b, 0x66, 0x17, 0x0c, + 0x90, 0xc4, 0xf9, 0x21, 0xaf, 0xa6, 0xe6, 0x78, 0xd4, 0x8a, 0x38, 0x6a, +}; +static const unsigned char kat349_nonce[] = { + 0x2c, 0x38, 0x0c, 0xba, 0xbd, 0x98, 0x44, 0x3d, 0x64, 0x56, 0xea, 0xcf, + 0x25, 0xff, 0xdc, 0xfc, +}; +static const unsigned char kat349_persstr[] = { + 0x11, 0x0b, 0xf5, 0xb1, 0x76, 0xd8, 0x7a, 0x0a, 0x4e, 0x6c, 0x48, 0x28, + 0x29, 0x72, 0x85, 0x4c, 0x3e, 0xde, 0xbd, 0xd2, 0x08, 0xc9, 0xa6, 0xa3, + 0xef, 0x52, 0x0f, 0x93, 0xa2, 0x1e, 0x1b, 0xbf, +}; +static const unsigned char kat349_addin0[] = { + 0x0e, 0xee, 0xec, 0x35, 0x9c, 0x4c, 0x7b, 0x15, 0x5c, 0xd4, 0x91, 0x71, + 0x13, 0x65, 0x14, 0xde, 0xa7, 0x1a, 0xb8, 0xe4, 0x35, 0xa1, 0x22, 0x60, + 0x6c, 0xcc, 0x50, 0x40, 0xd4, 0xce, 0x82, 0x5b, +}; +static const unsigned char kat349_addin1[] = { + 0x9d, 0xe0, 0xef, 0x32, 0x02, 0x88, 0x82, 0x3b, 0x06, 0xce, 0x81, 0x89, + 0x5e, 0x57, 0x23, 0xf1, 0x32, 0x39, 0xd5, 0x26, 0x9d, 0x50, 0x7c, 0xca, + 0xb6, 0xbc, 0xd9, 0x6b, 0x3b, 0x9b, 0x3f, 0xbf, +}; +static const unsigned char kat349_retbits[] = { + 0x3f, 0xe1, 0x12, 0xcc, 0xd4, 0x4d, 0x50, 0xd5, 0xd5, 0x4e, 0x33, 0xbd, + 0xd6, 0xf1, 0x12, 0xf1, 0xef, 0x4c, 0xaa, 0xc0, 0x69, 0x58, 0x6d, 0xd4, + 0xd8, 0x9c, 0x64, 0xe6, 0x93, 0x14, 0xe2, 0xef, 0xc3, 0xcb, 0x77, 0xaa, + 0x5f, 0xe2, 0x08, 0x61, 0x59, 0xab, 0xfe, 0x21, 0x9e, 0xfd, 0xf5, 0x2b, + 0x86, 0x70, 0x41, 0x14, 0x75, 0x58, 0x57, 0xd7, 0x4c, 0x45, 0x9a, 0xf5, + 0x22, 0x85, 0xa4, 0x4a, +}; +static const struct drbg_kat_no_reseed kat349_t = { + 3, kat349_entropyin, kat349_nonce, kat349_persstr, + kat349_addin0, kat349_addin1, kat349_retbits +}; +static const struct drbg_kat kat349 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat349_t +}; + +static const unsigned char kat350_entropyin[] = { + 0xfe, 0x01, 0xd0, 0x64, 0xd2, 0x98, 0xa1, 0x6a, 0xa1, 0x38, 0xbf, 0x10, + 0xfe, 0x69, 0x2a, 0xd6, 0xaa, 0xae, 0x53, 0xf5, 0x19, 0xe6, 0xad, 0x13, +}; +static const unsigned char kat350_nonce[] = { + 0x14, 0x32, 0xc2, 0x4e, 0x78, 0xa2, 0x45, 0x40, 0xdc, 0xb5, 0x91, 0x4e, + 0xe8, 0x51, 0x0c, 0xfa, +}; +static const unsigned char kat350_persstr[] = { + 0x76, 0x99, 0x12, 0xbd, 0xd5, 0x9b, 0xcd, 0x14, 0x5c, 0x52, 0x7e, 0x9c, + 0x13, 0x2c, 0x5e, 0xca, 0x56, 0xb2, 0x87, 0x8f, 0x12, 0x2c, 0x0e, 0x53, + 0xfa, 0x34, 0x53, 0x14, 0x0a, 0x2b, 0x4b, 0x01, +}; +static const unsigned char kat350_addin0[] = { + 0x30, 0x0b, 0x91, 0x87, 0x40, 0x26, 0x19, 0xf7, 0x75, 0xca, 0x2c, 0x53, + 0x52, 0xa3, 0x3a, 0x03, 0x4a, 0xd8, 0x00, 0x68, 0xcf, 0xef, 0x0f, 0xb1, + 0xea, 0xa7, 0xb5, 0x76, 0xa0, 0xc9, 0x10, 0xbd, +}; +static const unsigned char kat350_addin1[] = { + 0xb6, 0xb1, 0x76, 0xd0, 0x6c, 0xe4, 0xfe, 0x18, 0x9d, 0x87, 0x73, 0xf4, + 0x13, 0xf2, 0x59, 0x26, 0x10, 0x63, 0x79, 0x69, 0xab, 0x9a, 0x1d, 0xde, + 0x51, 0x96, 0x0f, 0xcd, 0x42, 0x75, 0xfc, 0x80, +}; +static const unsigned char kat350_retbits[] = { + 0x98, 0x90, 0x5c, 0x12, 0xc0, 0xe5, 0xc2, 0xe0, 0x7b, 0x32, 0x61, 0x7f, + 0xac, 0x64, 0x34, 0x34, 0x21, 0xfe, 0x69, 0x7b, 0x18, 0x88, 0x6a, 0x33, + 0x44, 0xa4, 0xe6, 0x28, 0x67, 0x73, 0x2e, 0x90, 0xe2, 0x85, 0x75, 0x04, + 0xf7, 0x53, 0xc1, 0x11, 0x83, 0xfd, 0xb4, 0xdb, 0xe4, 0x6e, 0x78, 0xfb, + 0x74, 0xe5, 0xbe, 0x32, 0xa6, 0x72, 0xb8, 0xe5, 0xc6, 0x99, 0xc3, 0x45, + 0xa8, 0x4a, 0x6d, 0xcc, +}; +static const struct drbg_kat_no_reseed kat350_t = { + 4, kat350_entropyin, kat350_nonce, kat350_persstr, + kat350_addin0, kat350_addin1, kat350_retbits +}; +static const struct drbg_kat kat350 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat350_t +}; + +static const unsigned char kat351_entropyin[] = { + 0x25, 0x38, 0x36, 0xb5, 0xb8, 0xe1, 0xda, 0x4a, 0x96, 0xf2, 0x01, 0xec, + 0xdc, 0xce, 0xbc, 0x2f, 0x9a, 0xed, 0xb9, 0xf2, 0x20, 0xed, 0x26, 0x61, +}; +static const unsigned char kat351_nonce[] = { + 0x1e, 0x91, 0xb8, 0x74, 0x68, 0xf3, 0x28, 0x4a, 0x4e, 0x55, 0x08, 0x40, + 0x2a, 0x32, 0x74, 0x25, +}; +static const unsigned char kat351_persstr[] = { + 0x25, 0xe8, 0x4e, 0x59, 0x21, 0xcd, 0x54, 0x8c, 0x38, 0x95, 0xac, 0xb0, + 0x1d, 0xcd, 0xff, 0xc9, 0xa4, 0x79, 0x22, 0x56, 0xf3, 0x1d, 0x1a, 0xdf, + 0x30, 0xe0, 0x89, 0xb6, 0xa4, 0x0c, 0xd0, 0x29, +}; +static const unsigned char kat351_addin0[] = { + 0x0b, 0x8b, 0x88, 0xd3, 0xc3, 0x78, 0x73, 0x6b, 0x60, 0x69, 0x49, 0x0c, + 0xc8, 0xf8, 0x1b, 0x70, 0xb1, 0xc4, 0x2d, 0xc7, 0xb6, 0x30, 0xb5, 0xe8, + 0xb5, 0xd2, 0x57, 0xfa, 0x73, 0xda, 0x77, 0xcf, +}; +static const unsigned char kat351_addin1[] = { + 0xe7, 0x92, 0x5d, 0xbd, 0x1b, 0x6e, 0xc3, 0x62, 0xf2, 0xb3, 0x94, 0x1c, + 0x34, 0xad, 0x6c, 0xc9, 0xf0, 0x9b, 0x7e, 0xe1, 0xe6, 0xc9, 0xff, 0xd5, + 0x12, 0x05, 0x4b, 0xdd, 0x40, 0x3d, 0xe0, 0xe1, +}; +static const unsigned char kat351_retbits[] = { + 0xa4, 0x33, 0x61, 0xdf, 0xe3, 0x61, 0x97, 0x9a, 0xbf, 0xf5, 0x57, 0xf6, + 0x50, 0x06, 0xc5, 0x2e, 0x77, 0x64, 0xa2, 0x8f, 0x7d, 0x13, 0x69, 0x7c, + 0x94, 0x09, 0x85, 0x52, 0xaf, 0x40, 0x05, 0x97, 0x89, 0x3b, 0x9f, 0x02, + 0x71, 0x3f, 0x96, 0xd3, 0x94, 0xbb, 0x17, 0x83, 0x8f, 0x3c, 0x7b, 0xc8, + 0xdc, 0xb7, 0xaa, 0x03, 0x32, 0xb7, 0xef, 0x6b, 0x51, 0xde, 0xec, 0x7a, + 0x2f, 0x38, 0x16, 0x07, +}; +static const struct drbg_kat_no_reseed kat351_t = { + 5, kat351_entropyin, kat351_nonce, kat351_persstr, + kat351_addin0, kat351_addin1, kat351_retbits +}; +static const struct drbg_kat kat351 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat351_t +}; + +static const unsigned char kat352_entropyin[] = { + 0x0b, 0xa8, 0xc3, 0x0d, 0x69, 0x75, 0x23, 0x95, 0xd3, 0xa6, 0xdd, 0x5c, + 0x3d, 0x2e, 0xb1, 0x7c, 0x98, 0x4b, 0x40, 0xb4, 0x03, 0x82, 0xac, 0x84, +}; +static const unsigned char kat352_nonce[] = { + 0x60, 0x79, 0x40, 0xf2, 0x5e, 0x5d, 0xb8, 0x9a, 0x7b, 0x2d, 0xa5, 0xd4, + 0xee, 0x79, 0xb8, 0x46, +}; +static const unsigned char kat352_persstr[] = { + 0x87, 0x74, 0xab, 0x97, 0xc6, 0xfa, 0x93, 0x8e, 0x49, 0x37, 0x3e, 0x94, + 0x83, 0xc1, 0xa1, 0x8c, 0x8b, 0xf4, 0x3d, 0x3e, 0x38, 0xf9, 0xb9, 0x5e, + 0x23, 0xab, 0x04, 0x12, 0x24, 0x5b, 0x8f, 0xb5, +}; +static const unsigned char kat352_addin0[] = { + 0x94, 0x6c, 0xe7, 0xd8, 0xda, 0xf6, 0x45, 0xbb, 0x0a, 0x21, 0x87, 0x85, + 0xc0, 0x24, 0x61, 0xdb, 0xf4, 0x97, 0x3a, 0xf9, 0xf9, 0xb1, 0xb7, 0x70, + 0x94, 0x89, 0xe1, 0xb4, 0xe2, 0xf9, 0x1b, 0xad, +}; +static const unsigned char kat352_addin1[] = { + 0x73, 0xde, 0xf1, 0x10, 0x43, 0x86, 0xd8, 0x3e, 0xf8, 0xbc, 0x71, 0x7e, + 0x52, 0x2b, 0x14, 0x8c, 0xca, 0xac, 0xd4, 0x3a, 0x27, 0x9b, 0x73, 0xc3, + 0x73, 0xa6, 0xd5, 0xa6, 0x62, 0xf0, 0x26, 0xa3, +}; +static const unsigned char kat352_retbits[] = { + 0x54, 0xbe, 0x8d, 0xaf, 0xf4, 0xb6, 0x5b, 0x03, 0x2b, 0xfa, 0x52, 0x34, + 0x92, 0x06, 0x1c, 0x46, 0xb5, 0xce, 0x36, 0xb2, 0x64, 0x60, 0x84, 0x47, + 0x43, 0x03, 0xd2, 0x62, 0x2b, 0x00, 0x61, 0x12, 0xdd, 0x18, 0x6d, 0xce, + 0x10, 0xc3, 0x06, 0x85, 0x6c, 0x2e, 0x88, 0xc1, 0xce, 0xdc, 0x40, 0x42, + 0x69, 0xb8, 0x92, 0x4f, 0x92, 0xd8, 0x43, 0x97, 0x30, 0xd6, 0x47, 0xda, + 0x55, 0xd6, 0x0e, 0x9b, +}; +static const struct drbg_kat_no_reseed kat352_t = { + 6, kat352_entropyin, kat352_nonce, kat352_persstr, + kat352_addin0, kat352_addin1, kat352_retbits +}; +static const struct drbg_kat kat352 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat352_t +}; + +static const unsigned char kat353_entropyin[] = { + 0x61, 0x91, 0x07, 0x37, 0x79, 0x9f, 0xa4, 0x68, 0xa3, 0xf6, 0x6d, 0xad, + 0xaf, 0x56, 0xf4, 0xe3, 0xb8, 0xf7, 0x98, 0xca, 0x65, 0xce, 0x03, 0x91, +}; +static const unsigned char kat353_nonce[] = { + 0x72, 0x33, 0x99, 0xac, 0x93, 0x58, 0x69, 0xce, 0x20, 0x5d, 0x85, 0x50, + 0x9c, 0xc2, 0x78, 0x42, +}; +static const unsigned char kat353_persstr[] = { + 0x29, 0xe3, 0xea, 0x51, 0x80, 0x5c, 0x78, 0xfe, 0x84, 0x91, 0x15, 0xc4, + 0xb7, 0x73, 0x61, 0xd7, 0x5b, 0x1b, 0x92, 0x46, 0xe5, 0x6c, 0x46, 0x41, + 0x66, 0xac, 0x7e, 0x8d, 0x1c, 0xa8, 0xe3, 0xab, +}; +static const unsigned char kat353_addin0[] = { + 0xab, 0x8a, 0xa0, 0x35, 0xc7, 0x15, 0x01, 0xc1, 0xf4, 0x9d, 0xea, 0x7c, + 0x67, 0x8e, 0x02, 0xd6, 0x9e, 0x2f, 0x84, 0x3a, 0xf7, 0x44, 0x79, 0x36, + 0x7a, 0x38, 0x6f, 0x68, 0x4c, 0xc3, 0x60, 0xdb, +}; +static const unsigned char kat353_addin1[] = { + 0x22, 0xdc, 0xd9, 0xf0, 0x31, 0x38, 0xf3, 0x72, 0xb1, 0x5f, 0x15, 0xac, + 0x6d, 0xc3, 0x1d, 0x13, 0x57, 0x10, 0x2e, 0xd4, 0xe8, 0x03, 0xb6, 0xd3, + 0x84, 0x29, 0x8e, 0x4c, 0xde, 0xb2, 0xe9, 0x01, +}; +static const unsigned char kat353_retbits[] = { + 0x01, 0x86, 0x2e, 0x1d, 0x6f, 0xa1, 0x11, 0x73, 0x60, 0x9a, 0x18, 0x2d, + 0x6a, 0x5a, 0x73, 0x31, 0x0c, 0x76, 0xdf, 0xa8, 0x8d, 0x1e, 0xbf, 0xf2, + 0x5e, 0xf4, 0x5d, 0x57, 0x96, 0xbd, 0xf4, 0x7a, 0x2b, 0xb6, 0xb9, 0xcf, + 0x88, 0x17, 0xe6, 0xd7, 0x6b, 0x70, 0xbf, 0x0b, 0x9e, 0x83, 0xd8, 0xb4, + 0xa1, 0x28, 0xbe, 0xe0, 0x6b, 0x6b, 0x0e, 0xe3, 0x7b, 0x60, 0x21, 0xad, + 0x47, 0x22, 0xc4, 0xe7, +}; +static const struct drbg_kat_no_reseed kat353_t = { + 7, kat353_entropyin, kat353_nonce, kat353_persstr, + kat353_addin0, kat353_addin1, kat353_retbits +}; +static const struct drbg_kat kat353 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat353_t +}; + +static const unsigned char kat354_entropyin[] = { + 0x6d, 0xf2, 0x09, 0x57, 0x0e, 0xd2, 0x0e, 0x3d, 0x9f, 0x13, 0xe9, 0x6c, + 0x29, 0xd2, 0xb0, 0x14, 0xbc, 0xa9, 0xb9, 0xfb, 0xeb, 0x5a, 0x32, 0xcf, +}; +static const unsigned char kat354_nonce[] = { + 0x53, 0x1a, 0x31, 0xc8, 0x7e, 0xc9, 0x2b, 0xa0, 0x6e, 0xf8, 0xa6, 0xdb, + 0x62, 0x3c, 0xf3, 0xc0, +}; +static const unsigned char kat354_persstr[] = { + 0xf2, 0x55, 0x70, 0x3d, 0xc8, 0xcd, 0x5c, 0xeb, 0xba, 0x02, 0x29, 0xe4, + 0x31, 0x5a, 0xee, 0xe8, 0x6b, 0xee, 0x45, 0xae, 0xb7, 0x52, 0x79, 0xc0, + 0xe1, 0x20, 0xe4, 0x4e, 0x46, 0x93, 0x5b, 0x15, +}; +static const unsigned char kat354_addin0[] = { + 0x7e, 0x16, 0x03, 0x2a, 0x61, 0x55, 0xc3, 0x7c, 0x24, 0x69, 0xb7, 0x3a, + 0x2a, 0x50, 0xba, 0xa8, 0x96, 0x53, 0xe9, 0xc1, 0xe7, 0xb2, 0x5b, 0xdb, + 0xf0, 0x67, 0x5c, 0xa6, 0x84, 0xec, 0x8a, 0x05, +}; +static const unsigned char kat354_addin1[] = { + 0x95, 0x60, 0x81, 0xc8, 0x08, 0xea, 0x4b, 0x9f, 0xd3, 0xc9, 0x88, 0x01, + 0x40, 0xcd, 0xbe, 0x41, 0xcb, 0x0a, 0xa0, 0x39, 0xf0, 0xff, 0xad, 0x1e, + 0xfc, 0xb9, 0x4b, 0x41, 0x31, 0x7a, 0xb3, 0x21, +}; +static const unsigned char kat354_retbits[] = { + 0x5e, 0x8d, 0x8b, 0x4b, 0x79, 0xeb, 0x53, 0x42, 0x2f, 0x92, 0x68, 0x36, + 0xef, 0x78, 0x05, 0x1f, 0x53, 0x3b, 0x93, 0x18, 0xf6, 0x1a, 0x62, 0x55, + 0x29, 0xb0, 0xad, 0xcc, 0x07, 0x0d, 0x71, 0xd2, 0xef, 0xd3, 0x3f, 0x61, + 0x14, 0xdb, 0x13, 0xcf, 0x26, 0xb6, 0x62, 0x1f, 0xe8, 0x56, 0xb7, 0x08, + 0xaf, 0x48, 0xa6, 0x7f, 0x3c, 0xb2, 0xed, 0x8b, 0x9a, 0x92, 0xe0, 0xb7, + 0x3b, 0xfb, 0xce, 0x57, +}; +static const struct drbg_kat_no_reseed kat354_t = { + 8, kat354_entropyin, kat354_nonce, kat354_persstr, + kat354_addin0, kat354_addin1, kat354_retbits +}; +static const struct drbg_kat kat354 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat354_t +}; + +static const unsigned char kat355_entropyin[] = { + 0x73, 0x2a, 0xda, 0x29, 0x7f, 0x8e, 0x2f, 0x25, 0x4e, 0x5c, 0x3c, 0xd3, + 0x27, 0x58, 0xa7, 0x00, 0xa4, 0xaa, 0x63, 0xea, 0x35, 0x31, 0x78, 0xf1, +}; +static const unsigned char kat355_nonce[] = { + 0x19, 0x1f, 0x07, 0xc4, 0x99, 0x93, 0xf6, 0xb4, 0xb2, 0x49, 0xf6, 0xad, + 0x0d, 0x70, 0x2d, 0x7f, +}; +static const unsigned char kat355_persstr[] = { + 0x9a, 0x31, 0x0d, 0x97, 0x0d, 0xaa, 0xff, 0x8a, 0xb0, 0xb2, 0x6a, 0x0e, + 0xdd, 0x2a, 0xa2, 0xe5, 0xc4, 0x0f, 0x83, 0x3c, 0xd1, 0x54, 0x21, 0x8d, + 0xd7, 0x12, 0xb1, 0x1c, 0x52, 0x93, 0x4a, 0xb2, +}; +static const unsigned char kat355_addin0[] = { + 0xa3, 0x8c, 0x3e, 0x35, 0xc7, 0x3f, 0x78, 0xb3, 0x81, 0x6e, 0xe9, 0x0b, + 0x7d, 0x13, 0x16, 0xc4, 0x24, 0x71, 0x90, 0x47, 0xe1, 0x04, 0xe3, 0x09, + 0x73, 0xf6, 0x96, 0x10, 0xcb, 0x41, 0x40, 0x8a, +}; +static const unsigned char kat355_addin1[] = { + 0x14, 0xae, 0xf4, 0x4a, 0x84, 0xb7, 0xc0, 0x21, 0xd4, 0xfc, 0xf3, 0x82, + 0x58, 0xcb, 0xfb, 0x95, 0xb1, 0x07, 0xbf, 0xf7, 0x51, 0xb5, 0x40, 0x5b, + 0xf2, 0x1e, 0x9d, 0x08, 0x8f, 0xd7, 0x2d, 0xab, +}; +static const unsigned char kat355_retbits[] = { + 0x8a, 0x84, 0x0c, 0x68, 0x78, 0x67, 0x1d, 0x31, 0xac, 0x43, 0x84, 0xaa, + 0x7e, 0x11, 0x3b, 0x09, 0x74, 0x4f, 0x6d, 0x89, 0xa0, 0x9b, 0x0e, 0x5c, + 0xb7, 0xcd, 0x14, 0x80, 0xfd, 0x89, 0x4e, 0xa6, 0x9e, 0x56, 0x8d, 0x6e, + 0xe8, 0x31, 0xa9, 0xef, 0x4b, 0x90, 0xdb, 0x52, 0x77, 0xf6, 0xee, 0x48, + 0xac, 0x66, 0xbb, 0xc3, 0x78, 0x65, 0x68, 0x7c, 0xed, 0x77, 0xf9, 0x56, + 0xa2, 0xca, 0xcf, 0x90, +}; +static const struct drbg_kat_no_reseed kat355_t = { + 9, kat355_entropyin, kat355_nonce, kat355_persstr, + kat355_addin0, kat355_addin1, kat355_retbits +}; +static const struct drbg_kat kat355 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat355_t +}; + +static const unsigned char kat356_entropyin[] = { + 0x61, 0xd3, 0x83, 0x95, 0x16, 0x61, 0x74, 0x27, 0x61, 0x38, 0xd6, 0x43, + 0x68, 0x3b, 0x3e, 0x63, 0xd5, 0x90, 0x9e, 0x5d, 0x15, 0xd7, 0x31, 0x4a, +}; +static const unsigned char kat356_nonce[] = { + 0x21, 0x14, 0x1c, 0xe4, 0x19, 0xc9, 0x54, 0x1d, 0x49, 0xbc, 0xff, 0xcc, + 0xf0, 0x16, 0xd5, 0x93, +}; +static const unsigned char kat356_persstr[] = { + 0x63, 0xb3, 0xac, 0x79, 0x89, 0x91, 0x37, 0x69, 0x23, 0xc1, 0x11, 0x71, + 0x08, 0xdd, 0x09, 0x62, 0x74, 0x57, 0xb0, 0x4f, 0x20, 0xeb, 0x06, 0x3c, + 0xac, 0xb4, 0xe0, 0xc5, 0x6a, 0xee, 0xde, 0x43, +}; +static const unsigned char kat356_addin0[] = { + 0x15, 0x07, 0xf2, 0x57, 0x0a, 0xc3, 0x47, 0xe2, 0x59, 0x3a, 0x77, 0x87, + 0x3e, 0xc2, 0xab, 0x50, 0x86, 0xd9, 0xb3, 0x65, 0x9f, 0xba, 0x3c, 0xa2, + 0xba, 0xe6, 0x04, 0x14, 0x21, 0x9b, 0xd7, 0x34, +}; +static const unsigned char kat356_addin1[] = { + 0xc6, 0x2c, 0x67, 0x91, 0xec, 0x08, 0xe6, 0x4b, 0xe2, 0xfa, 0x59, 0xd2, + 0xfa, 0x9e, 0x17, 0x49, 0xc1, 0x86, 0x40, 0x85, 0x54, 0xa0, 0x55, 0x14, + 0x4e, 0x3e, 0xe9, 0x2d, 0x7b, 0xf1, 0x30, 0xbf, +}; +static const unsigned char kat356_retbits[] = { + 0xff, 0x3d, 0xf5, 0x33, 0xee, 0xab, 0x76, 0x97, 0xef, 0x66, 0x8d, 0x30, + 0x1e, 0x9d, 0x69, 0x20, 0xb1, 0x55, 0xd6, 0x78, 0x1e, 0x4a, 0xbd, 0xad, + 0xb0, 0xef, 0xce, 0x45, 0x75, 0xa6, 0x49, 0xd1, 0x32, 0x97, 0xe0, 0xb2, + 0x98, 0x69, 0x40, 0x60, 0x8c, 0x65, 0x57, 0xfe, 0x19, 0x6d, 0x65, 0xb9, + 0xaa, 0x4f, 0x64, 0x21, 0x96, 0xca, 0x83, 0x6f, 0xd7, 0x57, 0xe0, 0xc3, + 0xc3, 0xcc, 0x5d, 0x1b, +}; +static const struct drbg_kat_no_reseed kat356_t = { + 10, kat356_entropyin, kat356_nonce, kat356_persstr, + kat356_addin0, kat356_addin1, kat356_retbits +}; +static const struct drbg_kat kat356 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat356_t +}; + +static const unsigned char kat357_entropyin[] = { + 0xa1, 0x32, 0xa5, 0x32, 0x44, 0xa7, 0x84, 0x07, 0x88, 0x00, 0x47, 0x4c, + 0xfe, 0xe3, 0xd7, 0x72, 0xcc, 0x00, 0xda, 0x9e, 0xfb, 0x5a, 0xab, 0xce, +}; +static const unsigned char kat357_nonce[] = { + 0x6a, 0x29, 0x9b, 0x43, 0xe7, 0xd6, 0x71, 0xdf, 0xb2, 0xdb, 0x27, 0xb7, + 0x92, 0x02, 0xf3, 0x36, +}; +static const unsigned char kat357_persstr[] = { + 0xf3, 0xf6, 0xe2, 0xff, 0xc0, 0x24, 0x06, 0x88, 0xfa, 0xa1, 0x2b, 0xfc, + 0x60, 0xcb, 0x28, 0x71, 0x9b, 0x8c, 0x4f, 0xfc, 0x42, 0x0f, 0xe9, 0x13, + 0x29, 0xcf, 0x0f, 0xa7, 0x92, 0xe3, 0x2e, 0xda, +}; +static const unsigned char kat357_addin0[] = { + 0x13, 0x7e, 0x39, 0xe2, 0xd8, 0xb6, 0x5c, 0xac, 0x5a, 0x65, 0x4b, 0x00, + 0xa9, 0xfc, 0xe3, 0x82, 0x52, 0x16, 0x2e, 0xdb, 0x4e, 0xec, 0xc7, 0x92, + 0x07, 0x55, 0xbf, 0xfc, 0x96, 0xa5, 0xd6, 0x41, +}; +static const unsigned char kat357_addin1[] = { + 0x98, 0xb6, 0xe4, 0x17, 0x61, 0x6f, 0x3c, 0xfe, 0x40, 0x90, 0x00, 0x87, + 0x28, 0x65, 0xf4, 0xd0, 0x8f, 0xb0, 0x32, 0x2b, 0xdd, 0xa4, 0x5e, 0xf1, + 0xcb, 0x70, 0x00, 0xfa, 0x45, 0x26, 0x6b, 0x20, +}; +static const unsigned char kat357_retbits[] = { + 0x9a, 0x1b, 0xad, 0x8d, 0x87, 0x77, 0x7f, 0x45, 0xf9, 0xcb, 0x8b, 0xde, + 0x14, 0xc7, 0xea, 0xaa, 0xcd, 0x93, 0x74, 0xb9, 0x74, 0x26, 0x4e, 0x14, + 0xd1, 0xba, 0x31, 0xec, 0x59, 0x98, 0x3a, 0x35, 0x90, 0x74, 0x1d, 0xdf, + 0x6c, 0x85, 0xe9, 0x93, 0xff, 0xb7, 0xb8, 0x50, 0x35, 0x20, 0x2d, 0x24, + 0xf1, 0x06, 0x83, 0xa5, 0x3e, 0x87, 0xac, 0x92, 0x02, 0xf5, 0x5d, 0x8b, + 0x99, 0x18, 0x91, 0xc9, +}; +static const struct drbg_kat_no_reseed kat357_t = { + 11, kat357_entropyin, kat357_nonce, kat357_persstr, + kat357_addin0, kat357_addin1, kat357_retbits +}; +static const struct drbg_kat kat357 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat357_t +}; + +static const unsigned char kat358_entropyin[] = { + 0x44, 0x40, 0x2c, 0xfd, 0xba, 0xb2, 0x13, 0x4d, 0xfe, 0x82, 0x56, 0x06, + 0xd2, 0xa8, 0xe1, 0xa4, 0x92, 0xc7, 0x60, 0x84, 0xf1, 0x24, 0x54, 0x31, +}; +static const unsigned char kat358_nonce[] = { + 0x31, 0x29, 0x85, 0x42, 0x7c, 0xf3, 0xc3, 0xe4, 0xe1, 0x49, 0x8f, 0x59, + 0x66, 0x30, 0xd0, 0xe6, +}; +static const unsigned char kat358_persstr[] = { + 0xf3, 0x33, 0xe2, 0x9a, 0x3a, 0x03, 0xe7, 0x01, 0x1c, 0x05, 0x85, 0xbd, + 0x95, 0xbf, 0xd8, 0x19, 0xb8, 0x40, 0x32, 0xa8, 0xe0, 0x54, 0x9c, 0xdb, + 0xd0, 0xe1, 0x1a, 0xf1, 0x6b, 0xcb, 0x69, 0x3e, +}; +static const unsigned char kat358_addin0[] = { + 0x9b, 0x3c, 0x03, 0x3e, 0x37, 0x43, 0x73, 0x2c, 0x9e, 0xce, 0x7d, 0xf9, + 0x41, 0xd1, 0xae, 0x4b, 0xce, 0x7e, 0x66, 0x31, 0x0c, 0x31, 0x75, 0x82, + 0x4e, 0x6e, 0xc6, 0xe8, 0x2c, 0x02, 0xc6, 0xa1, +}; +static const unsigned char kat358_addin1[] = { + 0x9c, 0xd3, 0x9c, 0xdd, 0x2d, 0x43, 0x74, 0x0f, 0x30, 0x34, 0x73, 0x63, + 0x59, 0xe8, 0x9b, 0x7a, 0x78, 0xd2, 0x5b, 0xd1, 0x8a, 0xce, 0x9a, 0x14, + 0xdf, 0x1c, 0x36, 0xce, 0x7d, 0xde, 0x50, 0x5c, +}; +static const unsigned char kat358_retbits[] = { + 0xe5, 0x84, 0xa0, 0x46, 0x49, 0x4b, 0x50, 0x76, 0x75, 0x76, 0x43, 0xba, + 0x84, 0xc7, 0xa7, 0xe0, 0x8c, 0x00, 0x45, 0xfc, 0xa4, 0x32, 0x5c, 0x3f, + 0x9c, 0x58, 0xf6, 0x66, 0x24, 0x52, 0x6c, 0xd4, 0x3a, 0x12, 0x8d, 0x10, + 0x54, 0xf8, 0x1b, 0x3c, 0x4b, 0x6f, 0x57, 0x35, 0xf3, 0xfb, 0x6f, 0x33, + 0xd2, 0x82, 0x50, 0x62, 0xec, 0x27, 0x05, 0x3f, 0x4d, 0x0d, 0xe2, 0x41, + 0xcc, 0xf7, 0x4a, 0xc8, +}; +static const struct drbg_kat_no_reseed kat358_t = { + 12, kat358_entropyin, kat358_nonce, kat358_persstr, + kat358_addin0, kat358_addin1, kat358_retbits +}; +static const struct drbg_kat kat358 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat358_t +}; + +static const unsigned char kat359_entropyin[] = { + 0x33, 0xba, 0xb5, 0xbb, 0x7c, 0x01, 0x37, 0xed, 0x68, 0xbb, 0xb9, 0x8b, + 0x2e, 0x16, 0x5d, 0xc9, 0x24, 0x77, 0xe2, 0x4c, 0xca, 0xd6, 0x0c, 0x3c, +}; +static const unsigned char kat359_nonce[] = { + 0x72, 0x00, 0x6a, 0x08, 0x65, 0x3c, 0x6b, 0x83, 0x7f, 0xe2, 0x02, 0x43, + 0x8b, 0xaa, 0x43, 0x89, +}; +static const unsigned char kat359_persstr[] = { + 0x09, 0x8f, 0x89, 0x66, 0x20, 0xff, 0x0e, 0x41, 0x43, 0x79, 0x7c, 0x1c, + 0x6b, 0xe8, 0x1c, 0x62, 0x5e, 0xd3, 0x7f, 0x79, 0xbc, 0x05, 0xa2, 0xd3, + 0x01, 0x84, 0x59, 0x09, 0x7f, 0xd1, 0x40, 0xb4, +}; +static const unsigned char kat359_addin0[] = { + 0xc2, 0xa2, 0x89, 0xd2, 0x18, 0xdc, 0xd2, 0x80, 0xe6, 0xa8, 0x82, 0xe3, + 0x0e, 0x18, 0x2d, 0xa6, 0xa1, 0x3f, 0xd0, 0x96, 0x36, 0x85, 0xb3, 0xa9, + 0xaf, 0xca, 0xae, 0x8a, 0xe3, 0xac, 0xad, 0x69, +}; +static const unsigned char kat359_addin1[] = { + 0x36, 0x1a, 0xcb, 0x27, 0xf5, 0x01, 0x40, 0x80, 0xa9, 0xe5, 0x21, 0xe0, + 0x42, 0x0d, 0xfd, 0x58, 0xe9, 0x20, 0x91, 0x11, 0xdf, 0x3b, 0x1b, 0xc7, + 0x7b, 0xef, 0x23, 0x55, 0x15, 0x81, 0x88, 0x72, +}; +static const unsigned char kat359_retbits[] = { + 0xb0, 0x07, 0xae, 0xb8, 0x7b, 0x47, 0x85, 0x81, 0x5c, 0xf0, 0xb5, 0x46, + 0xff, 0x25, 0xdc, 0xf5, 0xbf, 0x96, 0xb3, 0xfa, 0xa8, 0x8d, 0xf8, 0xe4, + 0x5a, 0x12, 0xb7, 0x88, 0xc4, 0x74, 0x00, 0xce, 0xab, 0x79, 0xd9, 0x61, + 0xc9, 0xd6, 0x5b, 0xc4, 0x75, 0xb5, 0x6a, 0xbf, 0xf9, 0xba, 0x1d, 0x0e, + 0x3a, 0x5f, 0xf5, 0xfe, 0x56, 0xfb, 0xda, 0x06, 0xcd, 0xbd, 0x71, 0x02, + 0xa2, 0x72, 0x5a, 0xaa, +}; +static const struct drbg_kat_no_reseed kat359_t = { + 13, kat359_entropyin, kat359_nonce, kat359_persstr, + kat359_addin0, kat359_addin1, kat359_retbits +}; +static const struct drbg_kat kat359 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat359_t +}; + +static const unsigned char kat360_entropyin[] = { + 0xc6, 0xe8, 0x0e, 0x41, 0xa5, 0x24, 0x87, 0xd6, 0x26, 0xa4, 0x4e, 0xeb, + 0xc4, 0x35, 0xa1, 0xa4, 0x15, 0xda, 0x62, 0x53, 0x68, 0xff, 0xfa, 0xab, +}; +static const unsigned char kat360_nonce[] = { + 0x8e, 0xb6, 0x09, 0x35, 0xa5, 0x9e, 0x8d, 0x55, 0xfe, 0x82, 0x66, 0xb4, + 0x34, 0x19, 0xd1, 0x05, +}; +static const unsigned char kat360_persstr[] = { + 0xcc, 0x80, 0x42, 0xc0, 0xbe, 0x1c, 0x21, 0x27, 0x73, 0xc7, 0xd6, 0xe5, + 0xd8, 0x61, 0x82, 0xde, 0xe8, 0x1c, 0xde, 0x58, 0x70, 0x3e, 0x9b, 0x1d, + 0x6e, 0xd0, 0x8b, 0x66, 0x4e, 0x04, 0x77, 0x9c, +}; +static const unsigned char kat360_addin0[] = { + 0x21, 0x12, 0xe9, 0xf2, 0x16, 0xee, 0xfd, 0xae, 0xe0, 0xc3, 0x7f, 0x6b, + 0x5c, 0xcd, 0xd0, 0x0c, 0xdc, 0x80, 0x91, 0xa2, 0x8d, 0x09, 0x4e, 0x56, + 0x7b, 0x69, 0x71, 0x09, 0xa7, 0x11, 0x0b, 0x7e, +}; +static const unsigned char kat360_addin1[] = { + 0x4c, 0x32, 0x95, 0x4a, 0x5c, 0xa0, 0x45, 0x03, 0x78, 0xf5, 0x90, 0x7b, + 0x6e, 0xa0, 0xbe, 0x77, 0x0e, 0x40, 0x79, 0x70, 0x80, 0xa0, 0x57, 0xb1, + 0xa1, 0x4b, 0x45, 0x36, 0xe3, 0x89, 0xde, 0x98, +}; +static const unsigned char kat360_retbits[] = { + 0xa5, 0x1d, 0x5f, 0x66, 0x1b, 0xb1, 0xd5, 0x0f, 0x2a, 0xae, 0xb0, 0xb8, + 0xb7, 0xaf, 0x40, 0x61, 0x42, 0xa1, 0x13, 0x57, 0x78, 0x46, 0x2b, 0x80, + 0x20, 0x16, 0xc5, 0xe3, 0x2b, 0xa5, 0x56, 0x3a, 0xdd, 0x27, 0x44, 0xd6, + 0x2c, 0x82, 0xc1, 0xdf, 0x91, 0xe6, 0xa9, 0x1d, 0xba, 0xa9, 0x53, 0x28, + 0x76, 0x3d, 0x23, 0x20, 0xac, 0x6c, 0x20, 0xb4, 0x24, 0xaa, 0x72, 0x9d, + 0x2b, 0x1c, 0x1a, 0x44, +}; +static const struct drbg_kat_no_reseed kat360_t = { + 14, kat360_entropyin, kat360_nonce, kat360_persstr, + kat360_addin0, kat360_addin1, kat360_retbits +}; +static const struct drbg_kat kat360 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat360_t +}; + +static const unsigned char kat361_entropyin[] = { + 0x4d, 0x5b, 0xe9, 0x19, 0x99, 0xc1, 0xdc, 0x6a, 0xe2, 0xe5, 0xf6, 0xde, + 0xb5, 0x63, 0xb1, 0x25, 0xbc, 0x84, 0x39, 0xe8, 0x5f, 0x25, 0x76, 0xfc, +}; +static const unsigned char kat361_nonce[] = { + 0x11, 0xe1, 0xc2, 0xd4, 0xd4, 0xf7, 0x3b, 0x9c, 0x45, 0x7f, 0xca, 0xa0, + 0x6f, 0x4a, 0xf2, 0x2e, +}; +static const unsigned char kat361_persstr[] = {0}; +static const unsigned char kat361_addin0[] = {0}; +static const unsigned char kat361_addin1[] = {0}; +static const unsigned char kat361_retbits[] = { + 0x53, 0xc2, 0xc0, 0x23, 0x7e, 0xdf, 0x94, 0x25, 0x84, 0x2a, 0xb9, 0x1c, + 0x63, 0x72, 0x36, 0x16, 0xe9, 0x8b, 0xb6, 0xc1, 0x2d, 0x16, 0xbf, 0x80, + 0x87, 0x77, 0x2d, 0x0a, 0x08, 0x0d, 0x28, 0x9f, 0x8b, 0x4f, 0x35, 0xdf, + 0xda, 0xef, 0x5b, 0x11, 0xcd, 0x58, 0x88, 0x14, 0xc6, 0xbc, 0x01, 0xdc, + 0x7e, 0x23, 0xb9, 0xbd, 0xd3, 0x9c, 0x0a, 0xee, 0x74, 0x07, 0xf7, 0x10, + 0x54, 0xa7, 0xc9, 0xaa, +}; +static const struct drbg_kat_no_reseed kat361_t = { + 0, kat361_entropyin, kat361_nonce, kat361_persstr, + kat361_addin0, kat361_addin1, kat361_retbits +}; +static const struct drbg_kat kat361 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat361_t +}; + +static const unsigned char kat362_entropyin[] = { + 0x24, 0xd8, 0xc6, 0x0f, 0x62, 0x90, 0x8b, 0x44, 0x74, 0xb6, 0xa0, 0x1e, + 0xc8, 0x8c, 0x99, 0x5b, 0x35, 0x7f, 0x82, 0xe2, 0x0d, 0x21, 0xc8, 0xf5, +}; +static const unsigned char kat362_nonce[] = { + 0x45, 0xcb, 0x53, 0x4e, 0x0e, 0xa5, 0xc1, 0xb1, 0xa7, 0x5e, 0x6a, 0x66, + 0xd9, 0x90, 0xc7, 0x15, +}; +static const unsigned char kat362_persstr[] = {0}; +static const unsigned char kat362_addin0[] = {0}; +static const unsigned char kat362_addin1[] = {0}; +static const unsigned char kat362_retbits[] = { + 0x86, 0xa1, 0xde, 0xb9, 0xa3, 0x28, 0x63, 0xf7, 0x13, 0xc3, 0xe6, 0xae, + 0xa8, 0x15, 0x04, 0xc7, 0xec, 0x76, 0x6d, 0x0b, 0x7e, 0x5a, 0xa8, 0x00, + 0xef, 0x0b, 0x44, 0x9c, 0xc3, 0x34, 0x08, 0xc7, 0xf8, 0x7e, 0x71, 0x2c, + 0xfd, 0x58, 0x84, 0x2c, 0x90, 0x5f, 0x8a, 0x26, 0x2a, 0x4e, 0x2a, 0xf7, + 0x45, 0xfa, 0x58, 0x4b, 0x37, 0x0b, 0x17, 0xe2, 0xaf, 0x89, 0xfc, 0xb7, + 0x3d, 0x39, 0x9c, 0xf3, +}; +static const struct drbg_kat_no_reseed kat362_t = { + 1, kat362_entropyin, kat362_nonce, kat362_persstr, + kat362_addin0, kat362_addin1, kat362_retbits +}; +static const struct drbg_kat kat362 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat362_t +}; + +static const unsigned char kat363_entropyin[] = { + 0x33, 0x54, 0xa9, 0x53, 0xf8, 0xe6, 0xcc, 0x3b, 0x64, 0xa8, 0x9f, 0xa7, + 0x4b, 0xcb, 0x45, 0x97, 0x1f, 0x14, 0xc4, 0xd1, 0xf7, 0x9c, 0xf9, 0x4a, +}; +static const unsigned char kat363_nonce[] = { + 0xd2, 0xa8, 0x30, 0x7d, 0x96, 0x59, 0xfd, 0x46, 0xa0, 0x73, 0xeb, 0x33, + 0xf3, 0x48, 0x1a, 0xb7, +}; +static const unsigned char kat363_persstr[] = {0}; +static const unsigned char kat363_addin0[] = {0}; +static const unsigned char kat363_addin1[] = {0}; +static const unsigned char kat363_retbits[] = { + 0xf6, 0x42, 0x33, 0x32, 0xc2, 0xb0, 0xd7, 0xb6, 0xed, 0xbd, 0x09, 0xe5, + 0x90, 0x20, 0x7b, 0xfb, 0xec, 0xa6, 0x2b, 0x4e, 0x8d, 0x80, 0xe8, 0x19, + 0xd6, 0x77, 0x34, 0x11, 0xb3, 0x61, 0xac, 0x63, 0xc5, 0x8d, 0x58, 0x7d, + 0x6e, 0xbb, 0xae, 0x5e, 0x0a, 0x21, 0x1d, 0x1f, 0xf8, 0xde, 0x7f, 0x90, + 0x1d, 0xf1, 0x53, 0x37, 0x38, 0x25, 0x6e, 0x44, 0xed, 0xaa, 0x2b, 0xb7, + 0xc1, 0xa1, 0x4e, 0x0e, +}; +static const struct drbg_kat_no_reseed kat363_t = { + 2, kat363_entropyin, kat363_nonce, kat363_persstr, + kat363_addin0, kat363_addin1, kat363_retbits +}; +static const struct drbg_kat kat363 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat363_t +}; + +static const unsigned char kat364_entropyin[] = { + 0x93, 0x18, 0x37, 0xf9, 0x6b, 0x3b, 0xe2, 0x58, 0x7c, 0xe6, 0x37, 0xe3, + 0x32, 0xa7, 0xc4, 0x44, 0x17, 0x37, 0xf9, 0xbf, 0x9b, 0x4a, 0x5a, 0x33, +}; +static const unsigned char kat364_nonce[] = { + 0xdb, 0xab, 0x3e, 0x4e, 0xec, 0xb4, 0x53, 0xa1, 0x6c, 0xea, 0x08, 0xd6, + 0xfa, 0xfc, 0x2f, 0x36, +}; +static const unsigned char kat364_persstr[] = {0}; +static const unsigned char kat364_addin0[] = {0}; +static const unsigned char kat364_addin1[] = {0}; +static const unsigned char kat364_retbits[] = { + 0xa8, 0x46, 0x4a, 0x65, 0xfd, 0x94, 0x2c, 0x2b, 0xee, 0xa2, 0x02, 0x95, + 0xcd, 0x25, 0x56, 0x01, 0x21, 0x08, 0x0f, 0xb6, 0x9c, 0xdc, 0xb4, 0x55, + 0x9a, 0xde, 0xd0, 0xc6, 0x70, 0xc8, 0x28, 0x38, 0xf6, 0xba, 0x46, 0xb0, + 0x0f, 0x5d, 0x59, 0x35, 0xcc, 0x77, 0xa1, 0x4a, 0x8c, 0x4e, 0xda, 0x02, + 0xae, 0x19, 0x8e, 0xa8, 0x7c, 0x9c, 0x98, 0x20, 0x4d, 0x38, 0xa6, 0x6a, + 0x8c, 0x68, 0x6f, 0x67, +}; +static const struct drbg_kat_no_reseed kat364_t = { + 3, kat364_entropyin, kat364_nonce, kat364_persstr, + kat364_addin0, kat364_addin1, kat364_retbits +}; +static const struct drbg_kat kat364 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat364_t +}; + +static const unsigned char kat365_entropyin[] = { + 0x55, 0x01, 0x82, 0x72, 0x5f, 0x54, 0x5e, 0x7c, 0xd4, 0xfd, 0x7b, 0x97, + 0x7f, 0x58, 0x74, 0x51, 0x11, 0x7c, 0xc7, 0x31, 0x92, 0x5b, 0xa2, 0x7c, +}; +static const unsigned char kat365_nonce[] = { + 0xde, 0x0f, 0xc3, 0xbf, 0x40, 0xb6, 0x1e, 0xdc, 0xc3, 0x1e, 0x0c, 0xe6, + 0xf2, 0x01, 0x1c, 0xda, +}; +static const unsigned char kat365_persstr[] = {0}; +static const unsigned char kat365_addin0[] = {0}; +static const unsigned char kat365_addin1[] = {0}; +static const unsigned char kat365_retbits[] = { + 0xea, 0x0d, 0xfb, 0x57, 0xcf, 0x50, 0x19, 0xc7, 0x3f, 0x58, 0x61, 0x8f, + 0xc0, 0x00, 0x31, 0x40, 0xa3, 0x6e, 0xd6, 0x87, 0xac, 0x14, 0x51, 0xa5, + 0xbd, 0xe0, 0x90, 0x50, 0xaa, 0x1b, 0x2f, 0x6f, 0xd1, 0xcd, 0x33, 0x7d, + 0xb4, 0x38, 0xca, 0x79, 0x59, 0x84, 0xca, 0x6a, 0x2b, 0x93, 0x56, 0x17, + 0xd9, 0x84, 0x66, 0x99, 0xd9, 0x9b, 0x69, 0x78, 0xfe, 0x87, 0x8c, 0x12, + 0xc3, 0xc8, 0xf9, 0xc9, +}; +static const struct drbg_kat_no_reseed kat365_t = { + 4, kat365_entropyin, kat365_nonce, kat365_persstr, + kat365_addin0, kat365_addin1, kat365_retbits +}; +static const struct drbg_kat kat365 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat365_t +}; + +static const unsigned char kat366_entropyin[] = { + 0x39, 0xc7, 0xcd, 0x1d, 0x98, 0x62, 0x13, 0x3a, 0x1a, 0xd4, 0xd4, 0x55, + 0x92, 0x11, 0x6c, 0x0e, 0x09, 0x89, 0x6f, 0xa6, 0x68, 0xad, 0xc7, 0x8a, +}; +static const unsigned char kat366_nonce[] = { + 0xd0, 0x87, 0x82, 0x92, 0x52, 0xbf, 0x38, 0x39, 0x3c, 0xd0, 0x0f, 0x87, + 0xf7, 0x4d, 0xf4, 0xca, +}; +static const unsigned char kat366_persstr[] = {0}; +static const unsigned char kat366_addin0[] = {0}; +static const unsigned char kat366_addin1[] = {0}; +static const unsigned char kat366_retbits[] = { + 0xf4, 0x90, 0x21, 0xcd, 0x85, 0x70, 0x71, 0x85, 0x83, 0xed, 0x21, 0xec, + 0x55, 0x46, 0x8b, 0x4c, 0x45, 0xf8, 0x7a, 0x7b, 0x8f, 0xf6, 0xdd, 0x51, + 0x72, 0xd9, 0x37, 0xd6, 0xe9, 0xd9, 0xb4, 0x08, 0x6a, 0x75, 0x9a, 0xad, + 0x92, 0x7e, 0xf9, 0xe8, 0xb7, 0xc2, 0x65, 0x9b, 0x0f, 0x06, 0xc2, 0xa4, + 0xf8, 0xe3, 0x5e, 0xd8, 0xb6, 0x71, 0x47, 0x0d, 0x9d, 0xc6, 0x1b, 0x03, + 0x1d, 0x7d, 0x17, 0x82, +}; +static const struct drbg_kat_no_reseed kat366_t = { + 5, kat366_entropyin, kat366_nonce, kat366_persstr, + kat366_addin0, kat366_addin1, kat366_retbits +}; +static const struct drbg_kat kat366 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat366_t +}; + +static const unsigned char kat367_entropyin[] = { + 0x88, 0xfa, 0x53, 0x8a, 0xeb, 0xf8, 0x34, 0x90, 0x74, 0xee, 0xb4, 0x5d, + 0x95, 0x67, 0xa9, 0x00, 0xc1, 0xc9, 0x76, 0x43, 0xb7, 0x9a, 0x2c, 0x16, +}; +static const unsigned char kat367_nonce[] = { + 0xbb, 0x41, 0x66, 0x91, 0xb8, 0x63, 0x62, 0xfc, 0x96, 0x77, 0xe3, 0xfe, + 0x50, 0xd1, 0x57, 0xa9, +}; +static const unsigned char kat367_persstr[] = {0}; +static const unsigned char kat367_addin0[] = {0}; +static const unsigned char kat367_addin1[] = {0}; +static const unsigned char kat367_retbits[] = { + 0x9e, 0xf3, 0x1c, 0xf9, 0x31, 0xf2, 0x1d, 0x89, 0x86, 0x8e, 0xaa, 0x24, + 0x5f, 0xf0, 0x48, 0x14, 0x60, 0x59, 0x68, 0x4e, 0x2f, 0xa5, 0x61, 0x9a, + 0x44, 0x0f, 0x1d, 0x8a, 0x19, 0x55, 0x00, 0x35, 0x5f, 0xe3, 0x94, 0xaf, + 0xe3, 0xd3, 0xf9, 0xec, 0x45, 0xd2, 0x06, 0xb3, 0x7f, 0xd8, 0xfb, 0x47, + 0x5b, 0xdb, 0x1a, 0xc8, 0x80, 0x0c, 0xe5, 0x4f, 0x04, 0xc9, 0x94, 0x03, + 0xeb, 0x76, 0xed, 0xee, +}; +static const struct drbg_kat_no_reseed kat367_t = { + 6, kat367_entropyin, kat367_nonce, kat367_persstr, + kat367_addin0, kat367_addin1, kat367_retbits +}; +static const struct drbg_kat kat367 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat367_t +}; + +static const unsigned char kat368_entropyin[] = { + 0x81, 0xa8, 0xb2, 0x19, 0x2d, 0x59, 0xa2, 0x5d, 0x54, 0x80, 0x46, 0x5e, + 0x50, 0x8c, 0x11, 0x93, 0x1a, 0x1a, 0xe5, 0xa4, 0x27, 0xf6, 0xd1, 0x17, +}; +static const unsigned char kat368_nonce[] = { + 0x1b, 0x61, 0x0d, 0xf5, 0xaf, 0x73, 0xb7, 0x0e, 0x85, 0xd9, 0x7c, 0x15, + 0x9a, 0x13, 0xbc, 0x71, +}; +static const unsigned char kat368_persstr[] = {0}; +static const unsigned char kat368_addin0[] = {0}; +static const unsigned char kat368_addin1[] = {0}; +static const unsigned char kat368_retbits[] = { + 0xcb, 0x0b, 0xab, 0x82, 0xb9, 0x1a, 0x72, 0x7c, 0xa3, 0xe1, 0x04, 0xb9, + 0xea, 0xca, 0xe0, 0x86, 0x05, 0xe0, 0x6d, 0x18, 0xee, 0xa0, 0xee, 0x2c, + 0x71, 0xeb, 0xab, 0xde, 0x5c, 0x98, 0xcc, 0xca, 0x7e, 0xdb, 0x47, 0x93, + 0x83, 0x6a, 0x65, 0xf2, 0x83, 0x8b, 0x82, 0x83, 0xcf, 0x4a, 0xdf, 0x49, + 0xfa, 0x1f, 0x38, 0x36, 0x87, 0x76, 0xe5, 0xba, 0x4e, 0xf7, 0xc5, 0x14, + 0x37, 0x88, 0x8f, 0xdf, +}; +static const struct drbg_kat_no_reseed kat368_t = { + 7, kat368_entropyin, kat368_nonce, kat368_persstr, + kat368_addin0, kat368_addin1, kat368_retbits +}; +static const struct drbg_kat kat368 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat368_t +}; + +static const unsigned char kat369_entropyin[] = { + 0xa4, 0x95, 0x85, 0xca, 0x40, 0xea, 0x98, 0x00, 0x20, 0x8a, 0xbe, 0xf7, + 0x03, 0xa4, 0xc2, 0x0b, 0xd3, 0xc4, 0xca, 0x59, 0x65, 0x25, 0x68, 0x2a, +}; +static const unsigned char kat369_nonce[] = { + 0x11, 0xf7, 0xe4, 0x63, 0x0d, 0xc9, 0x6e, 0x2e, 0x4a, 0x35, 0x6f, 0x8e, + 0xff, 0xe8, 0xee, 0xf6, +}; +static const unsigned char kat369_persstr[] = {0}; +static const unsigned char kat369_addin0[] = {0}; +static const unsigned char kat369_addin1[] = {0}; +static const unsigned char kat369_retbits[] = { + 0x63, 0x3a, 0x67, 0x28, 0xbf, 0x62, 0x16, 0xea, 0x30, 0x3f, 0x3b, 0x27, + 0xe4, 0xfa, 0xa5, 0x2d, 0x2d, 0xa4, 0x76, 0x8e, 0x6e, 0x7c, 0xed, 0x7d, + 0xcd, 0x33, 0xd4, 0xdf, 0x25, 0xad, 0x03, 0xe9, 0x1f, 0x5a, 0xe9, 0xe9, + 0xe1, 0xf1, 0x9c, 0x4d, 0xad, 0x74, 0xe3, 0xa1, 0xed, 0xe1, 0x52, 0x84, + 0xaf, 0xcc, 0xf5, 0x14, 0x8f, 0x18, 0x8b, 0x95, 0xa0, 0x56, 0x76, 0x70, + 0xe2, 0x06, 0xec, 0xa8, +}; +static const struct drbg_kat_no_reseed kat369_t = { + 8, kat369_entropyin, kat369_nonce, kat369_persstr, + kat369_addin0, kat369_addin1, kat369_retbits +}; +static const struct drbg_kat kat369 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat369_t +}; + +static const unsigned char kat370_entropyin[] = { + 0xbd, 0xe5, 0x3c, 0xa3, 0xe0, 0xb0, 0x11, 0x6b, 0x61, 0x19, 0x15, 0xa3, + 0xbe, 0xa8, 0x01, 0x41, 0x80, 0x14, 0x73, 0x40, 0x88, 0x63, 0x9c, 0xdd, +}; +static const unsigned char kat370_nonce[] = { + 0x71, 0xb4, 0x99, 0x3c, 0xaf, 0xd8, 0x68, 0xac, 0x20, 0x9d, 0xb7, 0x22, + 0xcb, 0x75, 0x7f, 0xbc, +}; +static const unsigned char kat370_persstr[] = {0}; +static const unsigned char kat370_addin0[] = {0}; +static const unsigned char kat370_addin1[] = {0}; +static const unsigned char kat370_retbits[] = { + 0x6c, 0xf1, 0xdc, 0x52, 0x14, 0xaf, 0x97, 0xc1, 0xc6, 0xd4, 0x3c, 0x31, + 0xac, 0xe4, 0x0c, 0xed, 0xbf, 0x3c, 0x32, 0xbc, 0x7f, 0x8d, 0x69, 0x28, + 0xbc, 0xb6, 0x13, 0xb6, 0xa9, 0xb3, 0x70, 0x11, 0xd4, 0x0a, 0x16, 0xe8, + 0x73, 0x9b, 0x2f, 0xba, 0xfd, 0xfe, 0x77, 0x47, 0xc8, 0xd5, 0x16, 0x3d, + 0xc4, 0x22, 0x3c, 0xe3, 0x30, 0x35, 0x32, 0xc7, 0x19, 0xab, 0xb1, 0x69, + 0xe6, 0x9d, 0x3d, 0xb9, +}; +static const struct drbg_kat_no_reseed kat370_t = { + 9, kat370_entropyin, kat370_nonce, kat370_persstr, + kat370_addin0, kat370_addin1, kat370_retbits +}; +static const struct drbg_kat kat370 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat370_t +}; + +static const unsigned char kat371_entropyin[] = { + 0x12, 0x40, 0xc0, 0x7f, 0x0c, 0x42, 0xda, 0x18, 0x3e, 0xbf, 0x8f, 0x44, + 0x13, 0xab, 0x31, 0x6a, 0x88, 0x24, 0x61, 0x66, 0xaa, 0x7b, 0xb7, 0x59, +}; +static const unsigned char kat371_nonce[] = { + 0x6e, 0x52, 0x9d, 0x4e, 0x92, 0x47, 0x75, 0x79, 0xd0, 0x7f, 0xb9, 0xd2, + 0xde, 0x05, 0x4d, 0x8b, +}; +static const unsigned char kat371_persstr[] = {0}; +static const unsigned char kat371_addin0[] = {0}; +static const unsigned char kat371_addin1[] = {0}; +static const unsigned char kat371_retbits[] = { + 0xdc, 0xdf, 0xa1, 0xa5, 0x73, 0x3e, 0x5b, 0xec, 0x22, 0xa2, 0x4c, 0x01, + 0xb6, 0xd4, 0x6a, 0xe1, 0x02, 0x09, 0x35, 0x12, 0x40, 0xdb, 0xb4, 0x26, + 0x86, 0xbc, 0xa8, 0x11, 0x7d, 0xaa, 0xa2, 0x28, 0x73, 0x26, 0x94, 0x20, + 0x21, 0xf1, 0x98, 0xec, 0x6b, 0xd2, 0xfd, 0x63, 0x4f, 0xe8, 0xcc, 0xd2, + 0x4a, 0x56, 0x2c, 0x48, 0x29, 0x76, 0x30, 0xf9, 0xf7, 0x18, 0x62, 0x3b, + 0xca, 0x0a, 0x64, 0xd7, +}; +static const struct drbg_kat_no_reseed kat371_t = { + 10, kat371_entropyin, kat371_nonce, kat371_persstr, + kat371_addin0, kat371_addin1, kat371_retbits +}; +static const struct drbg_kat kat371 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat371_t +}; + +static const unsigned char kat372_entropyin[] = { + 0x72, 0xed, 0x4b, 0x06, 0xe7, 0x5b, 0x59, 0xc6, 0xfb, 0xd1, 0x7b, 0xc7, + 0x26, 0xc2, 0xe9, 0x2a, 0x22, 0x01, 0x62, 0xbc, 0x6c, 0x1f, 0xfe, 0xb5, +}; +static const unsigned char kat372_nonce[] = { + 0x46, 0x6e, 0xeb, 0x26, 0x5f, 0xa1, 0x47, 0xea, 0x1f, 0x77, 0x3f, 0x98, + 0x08, 0x7f, 0xbb, 0x83, +}; +static const unsigned char kat372_persstr[] = {0}; +static const unsigned char kat372_addin0[] = {0}; +static const unsigned char kat372_addin1[] = {0}; +static const unsigned char kat372_retbits[] = { + 0x46, 0xc3, 0x56, 0x17, 0x4b, 0x28, 0xae, 0x3a, 0x90, 0x30, 0x71, 0x64, + 0x3a, 0xbc, 0xed, 0x78, 0x4b, 0x31, 0x68, 0xbb, 0x20, 0xa7, 0x8a, 0x08, + 0x2a, 0xbc, 0x3c, 0x8d, 0x76, 0xab, 0x53, 0x67, 0x3c, 0xec, 0x21, 0x81, + 0xd4, 0x0a, 0x42, 0x94, 0xcf, 0xfc, 0xc8, 0xa2, 0xfa, 0x43, 0xb8, 0x9b, + 0xcb, 0x96, 0x2f, 0x5e, 0xf3, 0x30, 0x0e, 0x7d, 0xf5, 0x00, 0xfb, 0x0c, + 0x96, 0xbe, 0x85, 0x8a, +}; +static const struct drbg_kat_no_reseed kat372_t = { + 11, kat372_entropyin, kat372_nonce, kat372_persstr, + kat372_addin0, kat372_addin1, kat372_retbits +}; +static const struct drbg_kat kat372 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat372_t +}; + +static const unsigned char kat373_entropyin[] = { + 0xc4, 0x47, 0xb5, 0xee, 0xc4, 0x1e, 0x14, 0xa9, 0xce, 0x9b, 0xbd, 0x85, + 0x93, 0xe8, 0xa7, 0xc0, 0xf5, 0x55, 0x9f, 0x4b, 0x0e, 0x11, 0x76, 0x88, +}; +static const unsigned char kat373_nonce[] = { + 0x46, 0x55, 0xd3, 0xc7, 0x8c, 0xaa, 0x1c, 0x1c, 0xfe, 0x6d, 0x6e, 0x11, + 0x66, 0x46, 0x8b, 0x28, +}; +static const unsigned char kat373_persstr[] = {0}; +static const unsigned char kat373_addin0[] = {0}; +static const unsigned char kat373_addin1[] = {0}; +static const unsigned char kat373_retbits[] = { + 0x68, 0xd4, 0x1f, 0xe2, 0x8b, 0xdb, 0x7d, 0xe4, 0xa7, 0x61, 0xcb, 0x60, + 0x04, 0xec, 0xed, 0xfa, 0x31, 0x09, 0x46, 0x07, 0x50, 0x92, 0x11, 0x1e, + 0x80, 0x6b, 0xee, 0xd6, 0x34, 0xff, 0x54, 0x0c, 0x38, 0x98, 0x7f, 0x16, + 0xa8, 0x9b, 0xe5, 0x2d, 0x35, 0xe3, 0x07, 0x59, 0x03, 0x0c, 0xbc, 0xa2, + 0x40, 0xbb, 0xe9, 0xa5, 0xdb, 0xbf, 0xf1, 0x9d, 0x15, 0x0b, 0xe3, 0xa2, + 0x29, 0x6b, 0x8c, 0xeb, +}; +static const struct drbg_kat_no_reseed kat373_t = { + 12, kat373_entropyin, kat373_nonce, kat373_persstr, + kat373_addin0, kat373_addin1, kat373_retbits +}; +static const struct drbg_kat kat373 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat373_t +}; + +static const unsigned char kat374_entropyin[] = { + 0x24, 0x04, 0xf9, 0x87, 0x09, 0x45, 0xbd, 0x40, 0x4f, 0xe1, 0x84, 0xb1, + 0x19, 0xa8, 0xa3, 0x03, 0x71, 0xae, 0xfa, 0x80, 0x15, 0xd4, 0x55, 0xcc, +}; +static const unsigned char kat374_nonce[] = { + 0xe5, 0xfd, 0x16, 0x64, 0x17, 0x28, 0xb4, 0xd4, 0x6e, 0x3f, 0x0a, 0x43, + 0xae, 0x34, 0x84, 0x40, +}; +static const unsigned char kat374_persstr[] = {0}; +static const unsigned char kat374_addin0[] = {0}; +static const unsigned char kat374_addin1[] = {0}; +static const unsigned char kat374_retbits[] = { + 0xea, 0x4b, 0xc0, 0xde, 0xc0, 0xf1, 0xa6, 0x1c, 0xf2, 0xac, 0x89, 0x0d, + 0x0c, 0x7d, 0x8d, 0xb4, 0x29, 0x32, 0x91, 0x48, 0x6d, 0x65, 0xf3, 0xed, + 0x8b, 0x5f, 0x75, 0x8e, 0xee, 0xe9, 0xd5, 0xde, 0xed, 0x2a, 0x1d, 0x05, + 0x06, 0xfe, 0xbe, 0x20, 0xbf, 0xd1, 0x8b, 0x68, 0x0c, 0x5a, 0x8d, 0x77, + 0x7c, 0x6b, 0x3b, 0xbb, 0x8c, 0xa1, 0xbf, 0xfa, 0x0f, 0x10, 0x5e, 0xe7, + 0xc1, 0x50, 0x73, 0x59, +}; +static const struct drbg_kat_no_reseed kat374_t = { + 13, kat374_entropyin, kat374_nonce, kat374_persstr, + kat374_addin0, kat374_addin1, kat374_retbits +}; +static const struct drbg_kat kat374 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat374_t +}; + +static const unsigned char kat375_entropyin[] = { + 0x45, 0x70, 0xff, 0x9a, 0xb9, 0x2e, 0x5b, 0x69, 0x4b, 0x8a, 0xce, 0xb3, + 0xd7, 0x65, 0xf4, 0x87, 0x2f, 0x2e, 0xa6, 0xad, 0x77, 0x07, 0xc5, 0x10, +}; +static const unsigned char kat375_nonce[] = { + 0xa3, 0x46, 0x1b, 0xc1, 0x7d, 0x5d, 0xb6, 0x92, 0xf8, 0xcd, 0xd8, 0xcf, + 0x79, 0x18, 0x62, 0xb5, +}; +static const unsigned char kat375_persstr[] = {0}; +static const unsigned char kat375_addin0[] = {0}; +static const unsigned char kat375_addin1[] = {0}; +static const unsigned char kat375_retbits[] = { + 0xb7, 0x76, 0x1d, 0x93, 0x00, 0xa2, 0x21, 0x8b, 0x28, 0x3b, 0x55, 0xce, + 0x29, 0xb4, 0x3c, 0x4e, 0x7a, 0x63, 0xfc, 0xc9, 0xb1, 0xd0, 0xc1, 0x68, + 0x6e, 0xfd, 0x8d, 0x5f, 0x0e, 0x40, 0x31, 0xc2, 0xdc, 0x74, 0x5f, 0x58, + 0xa5, 0x0b, 0x35, 0xbe, 0x81, 0xfc, 0xd5, 0xe9, 0x7d, 0x70, 0xf8, 0x96, + 0xb1, 0x7d, 0x3a, 0x64, 0x2a, 0x30, 0xba, 0x56, 0x72, 0x5d, 0x0a, 0xde, + 0xf1, 0x42, 0xef, 0xd6, +}; +static const struct drbg_kat_no_reseed kat375_t = { + 14, kat375_entropyin, kat375_nonce, kat375_persstr, + kat375_addin0, kat375_addin1, kat375_retbits +}; +static const struct drbg_kat kat375 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat375_t +}; + +static const unsigned char kat376_entropyin[] = { + 0x52, 0x69, 0x4c, 0x7c, 0xf7, 0x0f, 0xd3, 0xd2, 0x07, 0xd2, 0xe7, 0xef, + 0x19, 0x2a, 0x04, 0x9d, 0xf3, 0x20, 0xe7, 0xf9, 0x19, 0x1b, 0x93, 0xc4, +}; +static const unsigned char kat376_nonce[] = { + 0xff, 0xc0, 0xc8, 0xe1, 0x68, 0x41, 0xec, 0x38, 0x4c, 0x08, 0xb3, 0xcc, + 0xd8, 0x16, 0x03, 0x31, +}; +static const unsigned char kat376_persstr[] = {0}; +static const unsigned char kat376_addin0[] = { + 0x28, 0x7b, 0xba, 0x8b, 0xc6, 0xdf, 0xbd, 0x83, 0x6a, 0x21, 0xcb, 0x3d, + 0xda, 0x67, 0x8d, 0x3d, 0x7b, 0xa4, 0x1c, 0x5d, 0xfe, 0x08, 0xbd, 0xb3, + 0x56, 0xd9, 0x30, 0x72, 0x52, 0x82, 0x85, 0xe4, +}; +static const unsigned char kat376_addin1[] = { + 0x1e, 0xea, 0x34, 0x1f, 0xf8, 0x1f, 0x90, 0x58, 0x3a, 0xff, 0xaa, 0x27, + 0x65, 0x9e, 0x2b, 0x06, 0xe3, 0xe0, 0x62, 0x06, 0x8c, 0xa4, 0xf1, 0xb4, + 0x08, 0x59, 0xa9, 0x22, 0x99, 0xa6, 0xb4, 0x90, +}; +static const unsigned char kat376_retbits[] = { + 0xb3, 0x17, 0x56, 0x92, 0xec, 0xa9, 0xd7, 0xfe, 0x5e, 0xba, 0xb6, 0xdc, + 0x5d, 0x12, 0xc3, 0xd1, 0x10, 0x5e, 0x46, 0x73, 0x7c, 0xe6, 0xfe, 0xc8, + 0x9b, 0x26, 0x63, 0xef, 0xfd, 0xb4, 0x1a, 0x8f, 0x85, 0xf9, 0x83, 0x15, + 0x1a, 0xe4, 0xdb, 0xf7, 0x00, 0x20, 0x85, 0x3f, 0x48, 0x4f, 0xd1, 0xe9, + 0x6d, 0x74, 0x3d, 0x5f, 0x6c, 0xc4, 0x15, 0x68, 0x58, 0x90, 0xa0, 0xe3, + 0xf2, 0x5e, 0x3b, 0x69, +}; +static const struct drbg_kat_no_reseed kat376_t = { + 0, kat376_entropyin, kat376_nonce, kat376_persstr, + kat376_addin0, kat376_addin1, kat376_retbits +}; +static const struct drbg_kat kat376 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat376_t +}; + +static const unsigned char kat377_entropyin[] = { + 0x0f, 0xf3, 0xd4, 0x27, 0x5e, 0xde, 0x36, 0xd4, 0xe2, 0x9c, 0x42, 0xb1, + 0x7e, 0xd1, 0xdf, 0x14, 0xde, 0x2e, 0x77, 0x94, 0x9a, 0xf5, 0x5e, 0xb7, +}; +static const unsigned char kat377_nonce[] = { + 0xac, 0x33, 0xac, 0x97, 0x0a, 0x24, 0x75, 0xb9, 0x1f, 0x0a, 0x3b, 0xde, + 0xf1, 0x78, 0xbf, 0xd4, +}; +static const unsigned char kat377_persstr[] = {0}; +static const unsigned char kat377_addin0[] = { + 0xd3, 0x9f, 0xde, 0x81, 0x4e, 0xa3, 0xa6, 0x7e, 0x3b, 0x33, 0xe3, 0x25, + 0xab, 0x5e, 0x05, 0x53, 0xaa, 0x9a, 0x0f, 0x30, 0x14, 0xa7, 0x4f, 0xed, + 0x1b, 0x03, 0x02, 0x19, 0x54, 0x2f, 0xb0, 0x45, +}; +static const unsigned char kat377_addin1[] = { + 0x1a, 0x1f, 0xc9, 0x24, 0x2e, 0x3e, 0xc8, 0x71, 0x25, 0x67, 0xe7, 0x80, + 0xdf, 0x05, 0x83, 0x06, 0x00, 0x1e, 0x6e, 0x10, 0xd5, 0xb6, 0xe4, 0xc2, + 0x1c, 0x6c, 0x17, 0x93, 0x14, 0x90, 0x34, 0xd3, +}; +static const unsigned char kat377_retbits[] = { + 0xd2, 0x12, 0x92, 0x6f, 0x27, 0x63, 0x52, 0x74, 0x66, 0xff, 0x75, 0x11, + 0xdc, 0x56, 0xcf, 0x11, 0x78, 0xeb, 0x41, 0x50, 0xc5, 0xf6, 0x47, 0xbf, + 0x2c, 0x9c, 0x15, 0x05, 0xc0, 0x18, 0xf2, 0x71, 0xaf, 0x3a, 0x1b, 0xae, + 0x45, 0x61, 0x9f, 0x13, 0x07, 0xc1, 0x81, 0xbe, 0xdf, 0xc3, 0x62, 0xaf, + 0x34, 0x61, 0xc6, 0x03, 0x67, 0xaf, 0x08, 0xa3, 0x22, 0xf3, 0x67, 0xb3, + 0x2b, 0x0e, 0x0c, 0x1d, +}; +static const struct drbg_kat_no_reseed kat377_t = { + 1, kat377_entropyin, kat377_nonce, kat377_persstr, + kat377_addin0, kat377_addin1, kat377_retbits +}; +static const struct drbg_kat kat377 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat377_t +}; + +static const unsigned char kat378_entropyin[] = { + 0x71, 0x32, 0x63, 0xcb, 0x43, 0x59, 0x77, 0x66, 0xc7, 0xa9, 0x25, 0x38, + 0x1c, 0x3e, 0xce, 0x46, 0xc1, 0x26, 0xa4, 0x73, 0x3b, 0x0b, 0xb5, 0xd9, +}; +static const unsigned char kat378_nonce[] = { + 0x58, 0xfa, 0x56, 0x55, 0x73, 0xa9, 0xe9, 0xc7, 0x2e, 0x22, 0xe5, 0xeb, + 0xb2, 0xbe, 0xb8, 0x18, +}; +static const unsigned char kat378_persstr[] = {0}; +static const unsigned char kat378_addin0[] = { + 0x66, 0x73, 0x26, 0x0a, 0x58, 0x78, 0xb3, 0xda, 0x0b, 0xc6, 0x97, 0xb6, + 0x72, 0xd9, 0x8c, 0x36, 0x3e, 0x80, 0xe2, 0x55, 0x58, 0x8e, 0xfe, 0x79, + 0x60, 0x03, 0x0c, 0xdf, 0xb5, 0x87, 0x4c, 0x81, +}; +static const unsigned char kat378_addin1[] = { + 0xb4, 0x2d, 0x33, 0xc1, 0x03, 0xea, 0xcb, 0xe8, 0xa2, 0xdc, 0x67, 0xcb, + 0x5f, 0x48, 0x57, 0x6e, 0x9b, 0xc8, 0x96, 0xda, 0xf0, 0x91, 0xa8, 0x33, + 0x9b, 0x0f, 0x04, 0x4c, 0x20, 0xc7, 0x2c, 0x8a, +}; +static const unsigned char kat378_retbits[] = { + 0x6d, 0xfb, 0x11, 0x3e, 0x16, 0xaa, 0xeb, 0x39, 0x19, 0x13, 0x58, 0x27, + 0x31, 0x7f, 0xbd, 0xc2, 0x83, 0xe0, 0x66, 0x80, 0xdd, 0x4c, 0x83, 0x81, + 0x09, 0xd3, 0x73, 0x4b, 0x35, 0xfd, 0x44, 0x2d, 0x7f, 0xb7, 0x3e, 0x19, + 0x83, 0xd7, 0x4b, 0x1e, 0x3b, 0x4d, 0xa8, 0xe5, 0x9e, 0xa0, 0x21, 0xe9, + 0x29, 0x61, 0xc7, 0x04, 0xb6, 0x62, 0x7f, 0x15, 0xe8, 0xbe, 0xb5, 0xa3, + 0x22, 0x4b, 0x36, 0x18, +}; +static const struct drbg_kat_no_reseed kat378_t = { + 2, kat378_entropyin, kat378_nonce, kat378_persstr, + kat378_addin0, kat378_addin1, kat378_retbits +}; +static const struct drbg_kat kat378 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat378_t +}; + +static const unsigned char kat379_entropyin[] = { + 0x26, 0x08, 0x08, 0xc8, 0x8f, 0x5f, 0x6b, 0xe1, 0x11, 0xb6, 0x83, 0xf6, + 0xf2, 0x97, 0x4f, 0xb5, 0xbb, 0xb4, 0x9e, 0x3d, 0x90, 0x38, 0x3b, 0x7f, +}; +static const unsigned char kat379_nonce[] = { + 0xc5, 0xa8, 0xb8, 0x70, 0x66, 0x11, 0x6d, 0x0b, 0xd8, 0xae, 0x39, 0x30, + 0x25, 0xdb, 0x35, 0xcc, +}; +static const unsigned char kat379_persstr[] = {0}; +static const unsigned char kat379_addin0[] = { + 0x06, 0xb6, 0x26, 0xab, 0xc9, 0x66, 0xd9, 0x63, 0x06, 0x7f, 0x0f, 0xd9, + 0x3a, 0x84, 0xed, 0x71, 0x01, 0x62, 0x39, 0xe7, 0x9f, 0x63, 0x6f, 0xe9, + 0x09, 0x67, 0x2a, 0xe8, 0x4f, 0xf3, 0x6f, 0xa0, +}; +static const unsigned char kat379_addin1[] = { + 0x3e, 0x32, 0x72, 0x6b, 0xa5, 0x5d, 0xf9, 0x15, 0xe0, 0xfb, 0x03, 0x2d, + 0xf0, 0x29, 0xdc, 0x96, 0xd4, 0x29, 0xcb, 0x5f, 0x45, 0x8b, 0x08, 0xe5, + 0xbe, 0x0b, 0x1c, 0x28, 0x33, 0x92, 0xbb, 0xe1, +}; +static const unsigned char kat379_retbits[] = { + 0xb8, 0xfe, 0xbb, 0xd2, 0x88, 0x7b, 0xa6, 0x9e, 0x3f, 0xcb, 0x07, 0x8a, + 0xae, 0xff, 0xbd, 0x9b, 0x79, 0x08, 0x61, 0x80, 0x24, 0xe6, 0x03, 0x52, + 0x7c, 0xbe, 0x74, 0xc0, 0xf9, 0x9d, 0x6f, 0x40, 0xa0, 0xe8, 0x65, 0x18, + 0xac, 0xd9, 0xf9, 0xf7, 0xc3, 0x4b, 0x3f, 0x11, 0x78, 0x3a, 0x72, 0x78, + 0xfe, 0xc3, 0xc3, 0xb6, 0xd4, 0x07, 0xe1, 0x5a, 0x89, 0x84, 0x58, 0x43, + 0x23, 0x11, 0x3d, 0xe1, +}; +static const struct drbg_kat_no_reseed kat379_t = { + 3, kat379_entropyin, kat379_nonce, kat379_persstr, + kat379_addin0, kat379_addin1, kat379_retbits +}; +static const struct drbg_kat kat379 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat379_t +}; + +static const unsigned char kat380_entropyin[] = { + 0xd5, 0x81, 0xd9, 0xca, 0xfb, 0x39, 0xad, 0xbd, 0x2b, 0xca, 0x4a, 0xfa, + 0x48, 0x3a, 0xcc, 0x39, 0x9d, 0x4e, 0xb4, 0x7b, 0xc7, 0x60, 0xd8, 0x43, +}; +static const unsigned char kat380_nonce[] = { + 0x36, 0x43, 0x2c, 0x59, 0x7e, 0x6c, 0xd8, 0xfb, 0x70, 0xda, 0x84, 0xb2, + 0x5d, 0x8d, 0xcc, 0xc9, +}; +static const unsigned char kat380_persstr[] = {0}; +static const unsigned char kat380_addin0[] = { + 0x9c, 0x27, 0xf4, 0x75, 0x0a, 0x9b, 0x55, 0x32, 0x0d, 0x45, 0x15, 0xf2, + 0xe3, 0x52, 0x81, 0x48, 0xfc, 0x02, 0xd4, 0x8f, 0x84, 0x82, 0x24, 0x12, + 0x3a, 0xd6, 0xe9, 0x67, 0xff, 0x6a, 0x43, 0x50, +}; +static const unsigned char kat380_addin1[] = { + 0xc7, 0xbf, 0xef, 0x3c, 0x24, 0x55, 0x2c, 0xd4, 0x66, 0xf2, 0xa5, 0x92, + 0x3c, 0x13, 0x4e, 0x56, 0xe9, 0xd1, 0x72, 0x55, 0xb4, 0x9c, 0x8b, 0x0f, + 0x2c, 0x81, 0x5f, 0x01, 0xfd, 0x72, 0xc4, 0xe0, +}; +static const unsigned char kat380_retbits[] = { + 0xfc, 0x99, 0x80, 0xb6, 0x50, 0x06, 0xc6, 0x49, 0x34, 0x9f, 0x77, 0xb4, + 0x69, 0xe4, 0x0f, 0xb0, 0xb8, 0x03, 0xb2, 0xa7, 0xe0, 0xc1, 0x4a, 0xdc, + 0xd4, 0x0a, 0x4a, 0xe6, 0x51, 0xbb, 0xd1, 0xe1, 0x8d, 0xf6, 0xb8, 0xa1, + 0xc1, 0xa0, 0x28, 0xce, 0xb4, 0x3c, 0x26, 0x27, 0x8b, 0x43, 0xb9, 0x0d, + 0xe6, 0x17, 0x58, 0x37, 0x4f, 0x2c, 0x60, 0xba, 0x66, 0x3e, 0xf0, 0x4e, + 0xdd, 0xc3, 0x17, 0x48, +}; +static const struct drbg_kat_no_reseed kat380_t = { + 4, kat380_entropyin, kat380_nonce, kat380_persstr, + kat380_addin0, kat380_addin1, kat380_retbits +}; +static const struct drbg_kat kat380 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat380_t +}; + +static const unsigned char kat381_entropyin[] = { + 0x41, 0xed, 0x09, 0xa7, 0x4f, 0xe7, 0x75, 0xbb, 0x08, 0x24, 0xa7, 0x82, + 0x08, 0x83, 0x33, 0x7a, 0xe4, 0x93, 0xb9, 0xaa, 0xa7, 0x1b, 0x41, 0xaa, +}; +static const unsigned char kat381_nonce[] = { + 0x9b, 0x3f, 0xa2, 0xde, 0x23, 0x8c, 0x61, 0x1b, 0xfc, 0x34, 0x8f, 0x07, + 0x94, 0xb9, 0xf8, 0x65, +}; +static const unsigned char kat381_persstr[] = {0}; +static const unsigned char kat381_addin0[] = { + 0x27, 0x6c, 0xd3, 0xd2, 0x78, 0x77, 0x45, 0xc9, 0xf8, 0x93, 0xe7, 0xd0, + 0x97, 0xc4, 0x55, 0x2f, 0x3a, 0x0f, 0x29, 0x97, 0x7c, 0x33, 0xe6, 0x58, + 0x7a, 0xd1, 0x32, 0x59, 0x40, 0x89, 0xb6, 0xc0, +}; +static const unsigned char kat381_addin1[] = { + 0xf9, 0x13, 0x36, 0x7e, 0x39, 0xcd, 0x59, 0xb7, 0xf4, 0x3d, 0x8a, 0x79, + 0x40, 0x57, 0x8f, 0x8a, 0x65, 0x19, 0xdb, 0xe6, 0xe0, 0x7a, 0xc2, 0xcc, + 0xb1, 0x18, 0x45, 0x3e, 0xd0, 0x28, 0x43, 0x32, +}; +static const unsigned char kat381_retbits[] = { + 0xeb, 0x90, 0x27, 0xbb, 0x00, 0xa4, 0x79, 0x61, 0x12, 0x28, 0x2d, 0x14, + 0x7b, 0x6d, 0xde, 0xaf, 0xb4, 0x67, 0x3b, 0x83, 0x81, 0x00, 0x68, 0xdf, + 0x53, 0xb0, 0xbc, 0x8d, 0xda, 0x0a, 0x0b, 0xb7, 0x65, 0x1d, 0x2a, 0x38, + 0xd6, 0xd1, 0x92, 0x93, 0xa0, 0xe0, 0x17, 0x0e, 0xfe, 0x4e, 0xf8, 0x82, + 0x5d, 0xb8, 0xc7, 0xda, 0x6b, 0x48, 0x55, 0x4c, 0xdf, 0x68, 0x10, 0x4d, + 0xfe, 0x31, 0xc8, 0x46, +}; +static const struct drbg_kat_no_reseed kat381_t = { + 5, kat381_entropyin, kat381_nonce, kat381_persstr, + kat381_addin0, kat381_addin1, kat381_retbits +}; +static const struct drbg_kat kat381 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat381_t +}; + +static const unsigned char kat382_entropyin[] = { + 0xd8, 0xe9, 0x27, 0xd9, 0x38, 0xbf, 0xca, 0x29, 0x76, 0x1c, 0xd6, 0x3a, + 0x09, 0xc2, 0xe6, 0x09, 0xa9, 0xe5, 0x03, 0x55, 0x91, 0xc2, 0x1b, 0xaa, +}; +static const unsigned char kat382_nonce[] = { + 0x19, 0x57, 0xdb, 0x12, 0x71, 0x81, 0xd0, 0x51, 0xfc, 0xee, 0x6f, 0xb8, + 0x7f, 0x7c, 0x86, 0x89, +}; +static const unsigned char kat382_persstr[] = {0}; +static const unsigned char kat382_addin0[] = { + 0xfa, 0x05, 0x83, 0x2a, 0x2d, 0x88, 0x14, 0x70, 0xc9, 0xa6, 0x66, 0x02, + 0xc9, 0xef, 0x0a, 0x9f, 0x3c, 0x9a, 0xeb, 0xff, 0x5c, 0x92, 0x33, 0xd0, + 0x7e, 0xa4, 0xee, 0x46, 0x59, 0xa5, 0xdf, 0xf4, +}; +static const unsigned char kat382_addin1[] = { + 0xf6, 0xb2, 0x35, 0xfc, 0x52, 0x4a, 0x46, 0xd6, 0xfa, 0x71, 0xeb, 0xcc, + 0xa2, 0x7c, 0x3f, 0x0c, 0x0f, 0x36, 0x66, 0x21, 0x6f, 0xdf, 0x89, 0xd2, + 0x5c, 0x45, 0xb2, 0x7b, 0x99, 0xa7, 0xac, 0x63, +}; +static const unsigned char kat382_retbits[] = { + 0xbb, 0x51, 0xe9, 0xbb, 0x19, 0x85, 0x39, 0x4b, 0x44, 0x76, 0x53, 0xd1, + 0x44, 0x61, 0x29, 0x6f, 0x80, 0x4b, 0x01, 0xfd, 0x79, 0x42, 0x9b, 0x83, + 0x56, 0x4e, 0x97, 0x90, 0x8a, 0x3d, 0xb0, 0xf5, 0x4c, 0x5a, 0xf1, 0xa5, + 0x43, 0xc7, 0x13, 0x8e, 0x47, 0x8c, 0xa4, 0xd7, 0x95, 0xb0, 0x8c, 0xd1, + 0x2c, 0x77, 0x26, 0x00, 0xab, 0x0f, 0x78, 0xc5, 0x0c, 0xf2, 0x7c, 0x05, + 0xf5, 0x1e, 0x0a, 0xfb, +}; +static const struct drbg_kat_no_reseed kat382_t = { + 6, kat382_entropyin, kat382_nonce, kat382_persstr, + kat382_addin0, kat382_addin1, kat382_retbits +}; +static const struct drbg_kat kat382 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat382_t +}; + +static const unsigned char kat383_entropyin[] = { + 0x6a, 0x58, 0x81, 0xe0, 0x9d, 0x36, 0xd4, 0x66, 0xa1, 0x66, 0x7f, 0x62, + 0x59, 0xea, 0xe9, 0x27, 0xe1, 0x81, 0x57, 0xd3, 0x31, 0x0b, 0xa1, 0xb6, +}; +static const unsigned char kat383_nonce[] = { + 0xfd, 0x9a, 0x1c, 0x82, 0xd4, 0xed, 0x4c, 0xd7, 0xcc, 0x4a, 0x52, 0xeb, + 0xd1, 0x61, 0x6f, 0x90, +}; +static const unsigned char kat383_persstr[] = {0}; +static const unsigned char kat383_addin0[] = { + 0x82, 0x97, 0xd7, 0x02, 0x6e, 0x87, 0x61, 0x46, 0x6e, 0xf8, 0x8e, 0x28, + 0x23, 0xb2, 0x9f, 0xf8, 0xad, 0x1b, 0xf7, 0x4c, 0xbe, 0x6a, 0x55, 0x34, + 0x32, 0xd3, 0x59, 0xfc, 0xe9, 0x20, 0xcc, 0xb9, +}; +static const unsigned char kat383_addin1[] = { + 0x3d, 0x4b, 0x7b, 0x99, 0x38, 0xd7, 0x71, 0x7f, 0xea, 0xa3, 0x0c, 0x7d, + 0x49, 0x07, 0xf3, 0x8a, 0xc2, 0x82, 0x70, 0x2c, 0xb5, 0x29, 0x2d, 0x96, + 0xe7, 0x23, 0x32, 0x80, 0x0a, 0x40, 0x86, 0x79, +}; +static const unsigned char kat383_retbits[] = { + 0x97, 0xe5, 0xb0, 0xda, 0xb9, 0x74, 0x2c, 0xaa, 0xf5, 0x17, 0x0e, 0x17, + 0x23, 0xd5, 0xc3, 0x9f, 0xc7, 0x11, 0x8c, 0x72, 0xe1, 0xcb, 0x48, 0xe5, + 0x97, 0x46, 0x59, 0xf4, 0x99, 0x54, 0xef, 0xb7, 0x6f, 0x6b, 0x96, 0x62, + 0xb8, 0xb4, 0xcc, 0xfb, 0xf6, 0xe9, 0x4a, 0x79, 0x2a, 0xd1, 0x45, 0xa6, + 0x05, 0xb0, 0xc6, 0xc3, 0x43, 0x02, 0x6c, 0xba, 0x79, 0xf5, 0xcd, 0x10, + 0xbd, 0xc8, 0x66, 0x48, +}; +static const struct drbg_kat_no_reseed kat383_t = { + 7, kat383_entropyin, kat383_nonce, kat383_persstr, + kat383_addin0, kat383_addin1, kat383_retbits +}; +static const struct drbg_kat kat383 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat383_t +}; + +static const unsigned char kat384_entropyin[] = { + 0x2c, 0xc4, 0x79, 0x70, 0x0f, 0x90, 0x9e, 0x7b, 0xa2, 0x67, 0x7f, 0x3e, + 0x90, 0x12, 0x81, 0x9d, 0xbd, 0xa2, 0xbf, 0xa9, 0x6b, 0xbf, 0x0e, 0x71, +}; +static const unsigned char kat384_nonce[] = { + 0x36, 0x2b, 0xb1, 0x0b, 0x3e, 0x7f, 0x8c, 0x3f, 0xb3, 0xe4, 0x29, 0x6b, + 0x23, 0x71, 0xd4, 0x50, +}; +static const unsigned char kat384_persstr[] = {0}; +static const unsigned char kat384_addin0[] = { + 0x9d, 0xd4, 0x6b, 0xa2, 0x14, 0x56, 0x5b, 0xe1, 0xd6, 0xec, 0x71, 0xd5, + 0xfa, 0xa9, 0x2b, 0x45, 0x8b, 0x70, 0xe8, 0x99, 0x8a, 0x2e, 0x60, 0xab, + 0xf4, 0x28, 0xfb, 0x17, 0x96, 0xc5, 0x96, 0x51, +}; +static const unsigned char kat384_addin1[] = { + 0xf4, 0x0e, 0x36, 0xed, 0x10, 0x05, 0xe8, 0xc4, 0x46, 0x8d, 0x9f, 0x93, + 0x4f, 0xbc, 0xf4, 0x6b, 0x34, 0x2e, 0x57, 0x45, 0x30, 0x9f, 0xa4, 0x00, + 0x4c, 0x15, 0x0b, 0xd4, 0xfb, 0x2b, 0x1e, 0x71, +}; +static const unsigned char kat384_retbits[] = { + 0xcb, 0x69, 0xc3, 0x69, 0x35, 0x62, 0x0c, 0x7a, 0x23, 0x40, 0xd6, 0x72, + 0xb5, 0x59, 0xbe, 0x58, 0xcc, 0xaa, 0x82, 0xed, 0x45, 0x1a, 0x3f, 0x8e, + 0xa4, 0xfc, 0x06, 0xa9, 0x9c, 0x58, 0x9b, 0x96, 0x17, 0x67, 0x1d, 0xbf, + 0x26, 0x5a, 0xb9, 0xbf, 0xb9, 0xc5, 0x57, 0xdc, 0x6f, 0x6a, 0x70, 0x1b, + 0xa0, 0xcb, 0xc5, 0x03, 0x0e, 0x08, 0x5a, 0xf1, 0x6b, 0xc9, 0x73, 0x86, + 0x78, 0xcc, 0x31, 0xb4, +}; +static const struct drbg_kat_no_reseed kat384_t = { + 8, kat384_entropyin, kat384_nonce, kat384_persstr, + kat384_addin0, kat384_addin1, kat384_retbits +}; +static const struct drbg_kat kat384 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat384_t +}; + +static const unsigned char kat385_entropyin[] = { + 0xcd, 0x60, 0xf9, 0xaa, 0x04, 0xb8, 0x32, 0xb6, 0xa7, 0x6a, 0xc4, 0x3c, + 0x52, 0x76, 0x09, 0x25, 0xfa, 0x8e, 0x9d, 0x99, 0x59, 0x2b, 0xdd, 0xef, +}; +static const unsigned char kat385_nonce[] = { + 0x12, 0x94, 0x99, 0x7f, 0x49, 0x24, 0x8a, 0xdc, 0x70, 0x54, 0x0c, 0x18, + 0xe8, 0xed, 0xe4, 0x70, +}; +static const unsigned char kat385_persstr[] = {0}; +static const unsigned char kat385_addin0[] = { + 0xaf, 0x6c, 0xe3, 0x7c, 0x50, 0xc9, 0x27, 0x59, 0x37, 0x3d, 0x52, 0x06, + 0x62, 0x8f, 0x74, 0x7c, 0x16, 0x91, 0x53, 0xea, 0xbf, 0x80, 0x4d, 0x25, + 0x40, 0xc1, 0xc1, 0x77, 0x64, 0xae, 0x53, 0x8e, +}; +static const unsigned char kat385_addin1[] = { + 0xfa, 0x2e, 0x5a, 0x76, 0x2d, 0xd5, 0x60, 0x96, 0x23, 0x0b, 0xa8, 0x34, + 0x43, 0xfd, 0x16, 0xc8, 0xbf, 0x6d, 0xa0, 0xf5, 0xaa, 0x07, 0xbe, 0x0e, + 0x52, 0x2d, 0x85, 0xb7, 0xfe, 0xc8, 0x8e, 0x96, +}; +static const unsigned char kat385_retbits[] = { + 0xcb, 0x38, 0xaa, 0x9a, 0x8b, 0x89, 0x3e, 0xef, 0xb8, 0x81, 0x9b, 0x41, + 0x73, 0x47, 0x1b, 0x98, 0x3e, 0x64, 0xdd, 0x7f, 0xf6, 0x20, 0x92, 0xd4, + 0x0c, 0x22, 0x02, 0xa1, 0x2e, 0x07, 0x01, 0x36, 0x72, 0x84, 0x08, 0x04, + 0xd8, 0xf4, 0x9a, 0x17, 0x4a, 0xb0, 0x73, 0xb2, 0x93, 0xc6, 0x63, 0xd0, + 0x18, 0x2f, 0xe0, 0x03, 0x5f, 0x80, 0xe1, 0xd8, 0x82, 0x19, 0x8b, 0x4e, + 0x49, 0xfe, 0x70, 0x10, +}; +static const struct drbg_kat_no_reseed kat385_t = { + 9, kat385_entropyin, kat385_nonce, kat385_persstr, + kat385_addin0, kat385_addin1, kat385_retbits +}; +static const struct drbg_kat kat385 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat385_t +}; + +static const unsigned char kat386_entropyin[] = { + 0x69, 0x31, 0xcd, 0x18, 0xa6, 0xc7, 0x72, 0xce, 0x1a, 0xd6, 0xb1, 0xff, + 0x80, 0x46, 0x11, 0x10, 0xb3, 0x14, 0xc9, 0xc1, 0xb2, 0x7d, 0x6e, 0x5d, +}; +static const unsigned char kat386_nonce[] = { + 0x4f, 0x3c, 0x93, 0xd4, 0x04, 0xb1, 0xa2, 0x0b, 0x83, 0x5e, 0x50, 0x12, + 0xe1, 0x2a, 0x65, 0x4f, +}; +static const unsigned char kat386_persstr[] = {0}; +static const unsigned char kat386_addin0[] = { + 0x3c, 0x48, 0x21, 0x1e, 0x1f, 0x59, 0x62, 0xd1, 0xad, 0x49, 0xbb, 0x76, + 0x36, 0xab, 0x18, 0x2e, 0x8b, 0x84, 0x95, 0xe2, 0xff, 0xd3, 0x17, 0xfd, + 0x08, 0x52, 0x69, 0x50, 0x95, 0x08, 0xc4, 0x61, +}; +static const unsigned char kat386_addin1[] = { + 0xaa, 0x0a, 0x70, 0x03, 0x1a, 0xf5, 0xfe, 0xdc, 0x2c, 0x00, 0x60, 0x5e, + 0x5b, 0x6e, 0x4b, 0x92, 0x59, 0xfd, 0x14, 0x21, 0x44, 0x63, 0x52, 0x03, + 0x4a, 0x4a, 0x4c, 0x80, 0x16, 0xe3, 0xe0, 0x16, +}; +static const unsigned char kat386_retbits[] = { + 0xa4, 0x49, 0xf3, 0x78, 0x1a, 0x48, 0x84, 0x34, 0x92, 0x10, 0xc9, 0xd3, + 0xf6, 0x94, 0xf1, 0xa6, 0x38, 0x71, 0x60, 0x5f, 0xb0, 0x7a, 0xd3, 0x02, + 0xa2, 0xc2, 0xcd, 0x16, 0xd7, 0xc6, 0x44, 0xea, 0x7e, 0xb5, 0xfc, 0xbc, + 0x27, 0xb1, 0x2a, 0xd6, 0xa4, 0xb7, 0x5c, 0x84, 0xe2, 0xba, 0xdd, 0x4f, + 0x0a, 0x06, 0x62, 0x21, 0x64, 0xbc, 0xe3, 0xed, 0xc4, 0xbe, 0x8a, 0x35, + 0xba, 0x6c, 0x19, 0x7b, +}; +static const struct drbg_kat_no_reseed kat386_t = { + 10, kat386_entropyin, kat386_nonce, kat386_persstr, + kat386_addin0, kat386_addin1, kat386_retbits +}; +static const struct drbg_kat kat386 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat386_t +}; + +static const unsigned char kat387_entropyin[] = { + 0x59, 0x29, 0xc6, 0xc6, 0xc5, 0x63, 0xdc, 0x6b, 0x85, 0x4c, 0xd7, 0x1c, + 0x3a, 0x2e, 0x9c, 0x8f, 0x36, 0x88, 0x6b, 0xdf, 0x24, 0x46, 0xb1, 0x1f, +}; +static const unsigned char kat387_nonce[] = { + 0x36, 0x6e, 0x9c, 0xc6, 0x90, 0x07, 0x44, 0xa7, 0xfd, 0x31, 0xed, 0x92, + 0xf5, 0x78, 0x5d, 0x2b, +}; +static const unsigned char kat387_persstr[] = {0}; +static const unsigned char kat387_addin0[] = { + 0xdc, 0xc1, 0x53, 0x2d, 0x3d, 0x93, 0x48, 0x80, 0x7c, 0x19, 0x17, 0xa4, + 0x51, 0x39, 0xd7, 0x34, 0x5d, 0x15, 0xa8, 0xd9, 0xc7, 0xa6, 0xa1, 0x8c, + 0x82, 0x69, 0x45, 0xe8, 0x2b, 0x0b, 0x8a, 0x5e, +}; +static const unsigned char kat387_addin1[] = { + 0x40, 0x22, 0xbc, 0x66, 0xf1, 0x81, 0x60, 0xeb, 0x8a, 0x87, 0x23, 0x76, + 0xba, 0x99, 0x8b, 0xbc, 0x40, 0x00, 0x31, 0xb7, 0xb9, 0x05, 0x03, 0x1a, + 0x38, 0x47, 0xd4, 0xec, 0x0d, 0xf9, 0x57, 0xcf, +}; +static const unsigned char kat387_retbits[] = { + 0x36, 0x2f, 0xf3, 0xdf, 0x4d, 0x56, 0x3f, 0xca, 0xb2, 0x73, 0x0b, 0xb1, + 0x93, 0x2f, 0x27, 0x91, 0x99, 0x1e, 0x50, 0xe2, 0x46, 0x82, 0x1a, 0x74, + 0x68, 0xa2, 0xeb, 0x1a, 0xcf, 0x55, 0xd3, 0x30, 0xcd, 0x13, 0xba, 0x99, + 0x9c, 0x58, 0x52, 0xe8, 0x1d, 0x58, 0xc3, 0xc8, 0xe6, 0x38, 0x48, 0xbf, + 0xa6, 0xb2, 0x43, 0x3d, 0xe4, 0x53, 0xa0, 0xda, 0x6c, 0x79, 0x97, 0xa6, + 0x00, 0x0c, 0x9f, 0xc3, +}; +static const struct drbg_kat_no_reseed kat387_t = { + 11, kat387_entropyin, kat387_nonce, kat387_persstr, + kat387_addin0, kat387_addin1, kat387_retbits +}; +static const struct drbg_kat kat387 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat387_t +}; + +static const unsigned char kat388_entropyin[] = { + 0x61, 0xae, 0x1d, 0x52, 0x00, 0x54, 0x09, 0x68, 0x42, 0xc1, 0x7a, 0xb7, + 0x0c, 0x60, 0xa2, 0x78, 0x48, 0x0a, 0xae, 0xd2, 0x99, 0x57, 0x5e, 0x59, +}; +static const unsigned char kat388_nonce[] = { + 0x9a, 0xbc, 0xbd, 0xbe, 0x26, 0x0a, 0x64, 0x19, 0xc7, 0x87, 0x70, 0x61, + 0x5d, 0xa5, 0x4c, 0x03, +}; +static const unsigned char kat388_persstr[] = {0}; +static const unsigned char kat388_addin0[] = { + 0x0e, 0x5b, 0x2a, 0x49, 0xf3, 0x44, 0x51, 0x99, 0xcb, 0xbe, 0xca, 0x36, + 0x3b, 0x02, 0x3f, 0x4a, 0x29, 0x54, 0xc3, 0xe5, 0x67, 0xcb, 0xfc, 0x33, + 0xf1, 0xb2, 0x9f, 0xbc, 0x74, 0x20, 0xb1, 0x89, +}; +static const unsigned char kat388_addin1[] = { + 0xa2, 0xff, 0xe5, 0x63, 0xdd, 0x17, 0x50, 0xbb, 0x3e, 0x07, 0xf2, 0xc4, + 0x98, 0xef, 0x18, 0xa6, 0xc4, 0xf2, 0x24, 0x53, 0xd9, 0xab, 0xc9, 0x93, + 0x55, 0x50, 0x9c, 0x42, 0xed, 0x01, 0x19, 0x60, +}; +static const unsigned char kat388_retbits[] = { + 0x7b, 0xec, 0x6d, 0xaa, 0x15, 0xef, 0x65, 0x81, 0x72, 0x49, 0x04, 0x4d, + 0x37, 0x5f, 0xbd, 0x98, 0x57, 0x3a, 0xcd, 0xac, 0xb2, 0x11, 0x46, 0x78, + 0xd4, 0x11, 0x58, 0x9e, 0x44, 0xb7, 0x1c, 0xcc, 0xdf, 0xa7, 0xbd, 0x50, + 0x69, 0x5a, 0xdd, 0x94, 0x7b, 0x0e, 0xbb, 0x58, 0xb7, 0x38, 0x38, 0x65, + 0x37, 0xb6, 0x34, 0x40, 0xee, 0x84, 0xb7, 0x7f, 0x37, 0xe0, 0xc4, 0x58, + 0x77, 0x43, 0x0c, 0x70, +}; +static const struct drbg_kat_no_reseed kat388_t = { + 12, kat388_entropyin, kat388_nonce, kat388_persstr, + kat388_addin0, kat388_addin1, kat388_retbits +}; +static const struct drbg_kat kat388 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat388_t +}; + +static const unsigned char kat389_entropyin[] = { + 0xb6, 0x73, 0x5d, 0x76, 0x0d, 0x4d, 0xca, 0xa5, 0x7d, 0xae, 0xfc, 0x5b, + 0xdb, 0xf0, 0xb5, 0xa9, 0x4f, 0x2e, 0x6b, 0xc4, 0xa3, 0x60, 0x80, 0x4b, +}; +static const unsigned char kat389_nonce[] = { + 0xd0, 0xa8, 0xbc, 0xef, 0xaa, 0x6d, 0x9f, 0x4b, 0x6a, 0xfd, 0x4c, 0x8a, + 0xd4, 0x27, 0x6e, 0xf0, +}; +static const unsigned char kat389_persstr[] = {0}; +static const unsigned char kat389_addin0[] = { + 0x75, 0x61, 0x9e, 0xe0, 0xb4, 0xf2, 0x60, 0x1d, 0x5f, 0x1c, 0xb0, 0x83, + 0x3f, 0x32, 0x5e, 0x3a, 0x7b, 0x59, 0x21, 0x48, 0x17, 0x52, 0xe1, 0x22, + 0xc8, 0x78, 0x6d, 0xdc, 0x33, 0xa3, 0x8a, 0x27, +}; +static const unsigned char kat389_addin1[] = { + 0x13, 0x60, 0xb2, 0x00, 0x07, 0x80, 0x37, 0x6f, 0x0a, 0xed, 0x1a, 0xef, + 0xfa, 0x3c, 0x26, 0xe6, 0xc2, 0x9d, 0x30, 0xb0, 0x74, 0x0d, 0xe1, 0x4b, + 0xbf, 0xe9, 0x31, 0xe5, 0xf1, 0xaa, 0xa9, 0x68, +}; +static const unsigned char kat389_retbits[] = { + 0xae, 0x3b, 0xb8, 0x2b, 0xfb, 0xd1, 0xf4, 0x8c, 0x33, 0xe1, 0xeb, 0x0b, + 0x96, 0xca, 0x85, 0x0c, 0x35, 0x05, 0xa7, 0x5b, 0xf3, 0xfb, 0x07, 0xbb, + 0xad, 0xe7, 0xa2, 0xc1, 0x7b, 0xd1, 0xb0, 0x4d, 0x8a, 0xf5, 0xed, 0x1a, + 0x5c, 0x71, 0x56, 0x6c, 0xa2, 0xc0, 0x51, 0x35, 0xc4, 0x12, 0x8a, 0x0e, + 0x6e, 0x8e, 0x9a, 0x27, 0xb3, 0x7a, 0x76, 0xc9, 0xf7, 0x08, 0xdb, 0x02, + 0x7f, 0x94, 0x80, 0x1c, +}; +static const struct drbg_kat_no_reseed kat389_t = { + 13, kat389_entropyin, kat389_nonce, kat389_persstr, + kat389_addin0, kat389_addin1, kat389_retbits +}; +static const struct drbg_kat kat389 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat389_t +}; + +static const unsigned char kat390_entropyin[] = { + 0xbb, 0x90, 0xe5, 0x3c, 0x12, 0x40, 0xd6, 0x58, 0x40, 0x6d, 0x7c, 0x85, + 0xc0, 0xff, 0x23, 0xd7, 0x47, 0x4a, 0x67, 0x6a, 0x59, 0x20, 0xb0, 0xe1, +}; +static const unsigned char kat390_nonce[] = { + 0x48, 0x02, 0xe0, 0x2a, 0xdc, 0xc5, 0xa1, 0x50, 0x4d, 0x6d, 0xde, 0x82, + 0xb6, 0xf2, 0x0a, 0x67, +}; +static const unsigned char kat390_persstr[] = {0}; +static const unsigned char kat390_addin0[] = { + 0xfb, 0x2b, 0x97, 0x6d, 0x69, 0x4d, 0xf3, 0xfc, 0x2b, 0x32, 0xa3, 0x3f, + 0x7c, 0x98, 0x96, 0x83, 0xf5, 0x0c, 0x4c, 0xfc, 0xe6, 0x16, 0x8a, 0xd1, + 0xab, 0x9d, 0x1a, 0x79, 0xd5, 0xf5, 0x9d, 0x3c, +}; +static const unsigned char kat390_addin1[] = { + 0x6c, 0x78, 0x61, 0x0d, 0xaf, 0x6e, 0xa4, 0x26, 0x64, 0x1b, 0xe5, 0x62, + 0x80, 0xcd, 0x62, 0x3e, 0x8b, 0x11, 0xdd, 0x96, 0x7a, 0xc6, 0x15, 0x4f, + 0x04, 0xa6, 0xd4, 0xa6, 0xc7, 0x49, 0xc9, 0x57, +}; +static const unsigned char kat390_retbits[] = { + 0x97, 0xe3, 0x56, 0x01, 0x57, 0xab, 0x43, 0x42, 0xe7, 0x62, 0x48, 0x07, + 0x27, 0xd5, 0x50, 0x5a, 0x72, 0x29, 0x3e, 0x13, 0x53, 0x1c, 0x62, 0xea, + 0x70, 0x72, 0xb2, 0xac, 0xf8, 0xf7, 0x2e, 0xa8, 0xce, 0xd0, 0x9c, 0xbf, + 0x9e, 0xcb, 0x9e, 0x9d, 0x6d, 0xa6, 0x16, 0xfb, 0x8c, 0xa0, 0x61, 0x38, + 0x09, 0x38, 0x8e, 0xe9, 0x15, 0xaa, 0xcb, 0x59, 0xcb, 0x36, 0x27, 0xe3, + 0xf0, 0xc3, 0x89, 0xdf, +}; +static const struct drbg_kat_no_reseed kat390_t = { + 14, kat390_entropyin, kat390_nonce, kat390_persstr, + kat390_addin0, kat390_addin1, kat390_retbits +}; +static const struct drbg_kat kat390 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat390_t +}; + +static const unsigned char kat391_entropyin[] = { + 0xa7, 0x99, 0x43, 0x34, 0x23, 0x77, 0xca, 0x01, 0x85, 0x59, 0xd0, 0x88, + 0x6d, 0x43, 0xdf, 0xe0, 0x18, 0xd6, 0x30, 0x59, 0x0d, 0xb1, 0x02, 0x3b, +}; +static const unsigned char kat391_nonce[] = { + 0x1b, 0x96, 0xf2, 0x2b, 0xd6, 0x61, 0x79, 0xf5, 0x93, 0x80, 0x9d, 0xb9, + 0x0f, 0xdf, 0xa6, 0x14, +}; +static const unsigned char kat391_persstr[] = { + 0x5b, 0xed, 0xfc, 0x44, 0xb3, 0x72, 0x88, 0x44, 0x52, 0x36, 0x72, 0x29, + 0xf1, 0xf6, 0x7e, 0x93, 0xbc, 0x44, 0x7f, 0x8f, 0xbe, 0xe0, 0x44, 0xc3, + 0x1e, 0x10, 0x96, 0x7e, 0xf0, 0x12, 0x0c, 0x6d, +}; +static const unsigned char kat391_addin0[] = {0}; +static const unsigned char kat391_addin1[] = {0}; +static const unsigned char kat391_retbits[] = { + 0x49, 0xeb, 0xb3, 0x6a, 0xfd, 0x56, 0x3e, 0x07, 0x72, 0xed, 0x7d, 0xc8, + 0xec, 0xbb, 0xee, 0xba, 0x47, 0xcc, 0xba, 0xbf, 0xd0, 0xbe, 0xeb, 0xb5, + 0xc9, 0x9c, 0x97, 0x71, 0xe2, 0xdf, 0x9a, 0x33, 0xe1, 0x9c, 0x4b, 0xb7, + 0x16, 0x44, 0x9e, 0xb5, 0xe9, 0xb6, 0x67, 0x39, 0xbd, 0xca, 0x2e, 0xe8, + 0xca, 0x21, 0x7e, 0xcc, 0x1c, 0x4f, 0xf6, 0xc0, 0x34, 0xcd, 0xfc, 0xad, + 0xb8, 0xf1, 0xc7, 0xda, +}; +static const struct drbg_kat_no_reseed kat391_t = { + 0, kat391_entropyin, kat391_nonce, kat391_persstr, + kat391_addin0, kat391_addin1, kat391_retbits +}; +static const struct drbg_kat kat391 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat391_t +}; + +static const unsigned char kat392_entropyin[] = { + 0xc3, 0x7b, 0xcf, 0xc7, 0x99, 0xb1, 0xa7, 0x51, 0xca, 0x6f, 0xc1, 0xfd, + 0xec, 0x29, 0x2a, 0xe8, 0xcd, 0x3a, 0x59, 0xb6, 0x15, 0x82, 0x8c, 0x89, +}; +static const unsigned char kat392_nonce[] = { + 0x26, 0xeb, 0x7b, 0xb6, 0x85, 0xe4, 0xe9, 0x12, 0xe4, 0x74, 0x11, 0x5b, + 0x19, 0xfa, 0xb4, 0xa2, +}; +static const unsigned char kat392_persstr[] = { + 0x02, 0x7c, 0xa3, 0x5a, 0x2a, 0xd5, 0x2c, 0x9e, 0xb8, 0x73, 0x07, 0xac, + 0x2b, 0x4d, 0xd0, 0x45, 0x9a, 0xb5, 0xfe, 0xf8, 0x74, 0xcd, 0x25, 0x34, + 0x27, 0x52, 0x88, 0x8c, 0x1d, 0xba, 0x63, 0x21, +}; +static const unsigned char kat392_addin0[] = {0}; +static const unsigned char kat392_addin1[] = {0}; +static const unsigned char kat392_retbits[] = { + 0x0d, 0xb0, 0xad, 0x15, 0xbe, 0xe8, 0x9b, 0x26, 0xff, 0x32, 0xad, 0x9b, + 0x3e, 0x5e, 0xea, 0x25, 0xb3, 0x02, 0x6a, 0x0e, 0x76, 0xe8, 0x5d, 0x57, + 0x6a, 0x17, 0x40, 0x0e, 0x00, 0xe3, 0x8b, 0x82, 0x88, 0x3d, 0xd0, 0x1d, + 0x43, 0x03, 0x8c, 0xe6, 0xb5, 0x64, 0x5d, 0xe5, 0x8f, 0x3d, 0x08, 0xa2, + 0x38, 0xb8, 0x58, 0x97, 0x8d, 0xe4, 0x09, 0x06, 0xa8, 0x89, 0x08, 0x92, + 0x5a, 0x91, 0x82, 0x0d, +}; +static const struct drbg_kat_no_reseed kat392_t = { + 1, kat392_entropyin, kat392_nonce, kat392_persstr, + kat392_addin0, kat392_addin1, kat392_retbits +}; +static const struct drbg_kat kat392 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat392_t +}; + +static const unsigned char kat393_entropyin[] = { + 0x5f, 0xd9, 0xfd, 0xe9, 0x5f, 0x75, 0x96, 0x85, 0xda, 0x08, 0xaf, 0x67, + 0xd9, 0xd8, 0x4a, 0xa0, 0xd3, 0x32, 0x23, 0x5a, 0x0d, 0x32, 0x45, 0xe7, +}; +static const unsigned char kat393_nonce[] = { + 0x1d, 0x30, 0xeb, 0x84, 0xed, 0xd4, 0x48, 0x7c, 0xa3, 0xbe, 0x0f, 0x08, + 0xf8, 0x1c, 0x8a, 0xfc, +}; +static const unsigned char kat393_persstr[] = { + 0x2a, 0xe9, 0x1a, 0xd3, 0xbb, 0xae, 0x3f, 0x5f, 0x80, 0xe1, 0x80, 0xb7, + 0xe9, 0x4a, 0xe5, 0x01, 0x90, 0x1c, 0x01, 0x5f, 0xb1, 0x2f, 0x50, 0xd8, + 0xac, 0x8f, 0x2a, 0xc2, 0x15, 0x0a, 0xa2, 0xb6, +}; +static const unsigned char kat393_addin0[] = {0}; +static const unsigned char kat393_addin1[] = {0}; +static const unsigned char kat393_retbits[] = { + 0x2a, 0xa5, 0xb7, 0xef, 0x58, 0x74, 0x59, 0x46, 0xec, 0xcf, 0xaf, 0x9c, + 0xe1, 0xe2, 0x8c, 0x03, 0x6a, 0xd4, 0xe9, 0x9e, 0xd5, 0x05, 0x1b, 0x51, + 0xc5, 0x74, 0x66, 0xea, 0xb0, 0xad, 0x08, 0x31, 0xcf, 0xa0, 0x14, 0x42, + 0x6c, 0x2c, 0x3d, 0x4b, 0xe7, 0x0f, 0x0e, 0xc7, 0x7e, 0x02, 0x43, 0x40, + 0x9d, 0xac, 0xb8, 0x7e, 0xd3, 0x40, 0xaf, 0x0b, 0x8e, 0x39, 0x45, 0x61, + 0x20, 0x64, 0x0e, 0xb9, +}; +static const struct drbg_kat_no_reseed kat393_t = { + 2, kat393_entropyin, kat393_nonce, kat393_persstr, + kat393_addin0, kat393_addin1, kat393_retbits +}; +static const struct drbg_kat kat393 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat393_t +}; + +static const unsigned char kat394_entropyin[] = { + 0xb0, 0x6b, 0xb1, 0x4c, 0xce, 0x0d, 0xb3, 0xf4, 0x1a, 0xf3, 0xe7, 0x79, + 0x10, 0x36, 0x1e, 0x77, 0x85, 0x42, 0x7c, 0x83, 0x02, 0xdd, 0xbd, 0xf4, +}; +static const unsigned char kat394_nonce[] = { + 0xf3, 0x9d, 0x39, 0xc3, 0x05, 0xd1, 0x72, 0x7f, 0x7d, 0xcb, 0x62, 0x94, + 0xca, 0xfc, 0x30, 0x45, +}; +static const unsigned char kat394_persstr[] = { + 0x06, 0x76, 0xb6, 0x8f, 0x21, 0xa6, 0xc2, 0x89, 0x52, 0x11, 0xce, 0x12, + 0x7a, 0x57, 0x48, 0xa0, 0x05, 0x0e, 0xeb, 0xec, 0x08, 0x04, 0x4e, 0xe2, + 0xfe, 0x26, 0x93, 0xbe, 0x05, 0xe2, 0x23, 0xe8, +}; +static const unsigned char kat394_addin0[] = {0}; +static const unsigned char kat394_addin1[] = {0}; +static const unsigned char kat394_retbits[] = { + 0xbd, 0xe9, 0x73, 0x5f, 0x36, 0xb8, 0xd8, 0xaf, 0xe8, 0xac, 0x76, 0xa9, + 0x71, 0xec, 0x94, 0x66, 0x06, 0x5d, 0x22, 0xe1, 0x88, 0x5e, 0x75, 0xdb, + 0x61, 0xca, 0x11, 0x66, 0x28, 0x10, 0x6b, 0xeb, 0x15, 0xdd, 0xe7, 0xe5, + 0xe1, 0xc4, 0x86, 0xe4, 0xcc, 0x66, 0x05, 0x6e, 0xe1, 0x57, 0x0c, 0xd5, + 0x34, 0x9b, 0x6c, 0x62, 0x80, 0x94, 0xc9, 0x50, 0x67, 0x52, 0xde, 0x9f, + 0x3d, 0xa9, 0x5f, 0x8a, +}; +static const struct drbg_kat_no_reseed kat394_t = { + 3, kat394_entropyin, kat394_nonce, kat394_persstr, + kat394_addin0, kat394_addin1, kat394_retbits +}; +static const struct drbg_kat kat394 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat394_t +}; + +static const unsigned char kat395_entropyin[] = { + 0xc2, 0x10, 0x9a, 0x53, 0x44, 0x62, 0x8f, 0xfa, 0x5c, 0x43, 0x46, 0x0e, + 0x9e, 0x38, 0x5f, 0x4e, 0xa4, 0xc0, 0x7a, 0xa4, 0x01, 0xec, 0x98, 0x1e, +}; +static const unsigned char kat395_nonce[] = { + 0xd2, 0x42, 0xbb, 0xb3, 0xba, 0x28, 0x2b, 0x9b, 0xb0, 0xd3, 0x64, 0x8a, + 0xee, 0x33, 0xf6, 0x99, +}; +static const unsigned char kat395_persstr[] = { + 0x00, 0x33, 0x3c, 0xfe, 0x95, 0xaf, 0x5e, 0xcb, 0x99, 0xf9, 0xab, 0x69, + 0x86, 0x76, 0x2a, 0xd2, 0xd2, 0xf7, 0x70, 0x2a, 0xa5, 0xec, 0x5c, 0xef, + 0xc4, 0x31, 0x77, 0xee, 0xb3, 0xb3, 0x3d, 0xdb, +}; +static const unsigned char kat395_addin0[] = {0}; +static const unsigned char kat395_addin1[] = {0}; +static const unsigned char kat395_retbits[] = { + 0xf8, 0xc4, 0xed, 0x2c, 0x6d, 0x7f, 0x32, 0x38, 0x28, 0xc5, 0xe9, 0xe5, + 0x0c, 0x86, 0x31, 0xe1, 0x35, 0xd1, 0xca, 0x04, 0x17, 0x3e, 0xaf, 0x15, + 0x03, 0x6a, 0xf8, 0x25, 0x0e, 0xf0, 0x9b, 0xdd, 0x59, 0x5d, 0x03, 0xa7, + 0x76, 0xae, 0x06, 0x6d, 0xa4, 0x62, 0xc6, 0x31, 0xfc, 0x6a, 0x66, 0xea, + 0xb3, 0x75, 0xfb, 0x0e, 0x2e, 0xde, 0x9a, 0x3b, 0x50, 0x83, 0x98, 0x0f, + 0x4f, 0xf8, 0x10, 0xc9, +}; +static const struct drbg_kat_no_reseed kat395_t = { + 4, kat395_entropyin, kat395_nonce, kat395_persstr, + kat395_addin0, kat395_addin1, kat395_retbits +}; +static const struct drbg_kat kat395 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat395_t +}; + +static const unsigned char kat396_entropyin[] = { + 0xb7, 0xa9, 0x0d, 0x58, 0xf3, 0x65, 0x08, 0x14, 0xad, 0x99, 0xd3, 0x08, + 0xb2, 0x3c, 0x79, 0xd9, 0x36, 0x57, 0xc7, 0x3d, 0x2d, 0xed, 0x54, 0x12, +}; +static const unsigned char kat396_nonce[] = { + 0x8a, 0xe9, 0x69, 0x38, 0xdf, 0xfc, 0xcc, 0xef, 0xc8, 0xd5, 0xf9, 0x34, + 0x75, 0x3f, 0xd6, 0x70, +}; +static const unsigned char kat396_persstr[] = { + 0xe3, 0x19, 0xf4, 0x51, 0x11, 0xce, 0xa3, 0x52, 0x90, 0xb0, 0x77, 0x30, + 0x2b, 0xd3, 0xb5, 0xd4, 0x5b, 0x0f, 0x7c, 0x5e, 0x9e, 0x1d, 0x97, 0x29, + 0xdd, 0x2f, 0xcc, 0xc7, 0x58, 0x85, 0x5c, 0x3a, +}; +static const unsigned char kat396_addin0[] = {0}; +static const unsigned char kat396_addin1[] = {0}; +static const unsigned char kat396_retbits[] = { + 0x7b, 0xb1, 0x31, 0x47, 0x9e, 0x60, 0x64, 0xc7, 0x76, 0x7e, 0x17, 0xaf, + 0x46, 0xd5, 0x28, 0xe4, 0xb6, 0x59, 0xc7, 0xfa, 0xbf, 0x90, 0x6c, 0x0a, + 0x76, 0x79, 0xdd, 0x8a, 0xfd, 0xd4, 0xaa, 0xf1, 0x04, 0xf8, 0xe7, 0xca, + 0xab, 0x91, 0x53, 0x65, 0x2a, 0x30, 0xe3, 0x8f, 0x80, 0xda, 0xe1, 0x0e, + 0x67, 0xca, 0xf3, 0x02, 0xbf, 0x11, 0x71, 0x04, 0x94, 0x96, 0x49, 0xc7, + 0xb2, 0x0f, 0x5d, 0x38, +}; +static const struct drbg_kat_no_reseed kat396_t = { + 5, kat396_entropyin, kat396_nonce, kat396_persstr, + kat396_addin0, kat396_addin1, kat396_retbits +}; +static const struct drbg_kat kat396 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat396_t +}; + +static const unsigned char kat397_entropyin[] = { + 0x76, 0x18, 0xe5, 0x54, 0x6a, 0x59, 0x81, 0xcb, 0x4c, 0x72, 0xa5, 0x17, + 0xf2, 0x9a, 0x5f, 0xe8, 0x88, 0x6d, 0x4d, 0x3e, 0x9a, 0xd9, 0xfc, 0xb0, +}; +static const unsigned char kat397_nonce[] = { + 0xd4, 0x75, 0x70, 0x4c, 0x10, 0xc4, 0xa1, 0x86, 0x6b, 0xca, 0xa4, 0x12, + 0xe6, 0xbf, 0xbe, 0x7d, +}; +static const unsigned char kat397_persstr[] = { + 0xae, 0x8c, 0x3c, 0xde, 0x39, 0xed, 0x90, 0xda, 0x31, 0xb7, 0x32, 0x0c, + 0xf3, 0x59, 0x69, 0xfd, 0xe8, 0xf8, 0x28, 0x94, 0xe2, 0x22, 0xec, 0x2e, + 0x8a, 0xa1, 0x5d, 0x67, 0xb5, 0x5e, 0xfd, 0x89, +}; +static const unsigned char kat397_addin0[] = {0}; +static const unsigned char kat397_addin1[] = {0}; +static const unsigned char kat397_retbits[] = { + 0x75, 0x30, 0x48, 0xb2, 0x87, 0x9a, 0xbd, 0x1a, 0x0c, 0xf2, 0x42, 0x6f, + 0x1e, 0x1b, 0x04, 0x1f, 0xcb, 0x6b, 0xa3, 0xf0, 0x71, 0x0e, 0xe8, 0xec, + 0x41, 0x0d, 0x79, 0x2f, 0xb3, 0x2b, 0xd6, 0x6b, 0x1b, 0xac, 0x95, 0xaf, + 0x81, 0xa3, 0x09, 0x01, 0xf7, 0xbd, 0xd4, 0x2e, 0x5f, 0x8f, 0xe6, 0xcd, + 0x28, 0x62, 0x3f, 0xde, 0xe9, 0xc5, 0x89, 0xbc, 0x47, 0xde, 0x1c, 0x6a, + 0x29, 0x0b, 0xec, 0x62, +}; +static const struct drbg_kat_no_reseed kat397_t = { + 6, kat397_entropyin, kat397_nonce, kat397_persstr, + kat397_addin0, kat397_addin1, kat397_retbits +}; +static const struct drbg_kat kat397 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat397_t +}; + +static const unsigned char kat398_entropyin[] = { + 0x1d, 0x38, 0xd2, 0x43, 0x0e, 0x12, 0x93, 0x2d, 0xa3, 0xc3, 0x8f, 0x44, + 0x93, 0x0c, 0x1a, 0x2f, 0xf4, 0xa6, 0x2e, 0xaf, 0xaf, 0x8c, 0x85, 0x6f, +}; +static const unsigned char kat398_nonce[] = { + 0x18, 0x85, 0xf3, 0xbd, 0x33, 0x9f, 0x2c, 0x96, 0x59, 0x5c, 0x3b, 0x6d, + 0x99, 0x8e, 0x50, 0x83, +}; +static const unsigned char kat398_persstr[] = { + 0x43, 0x0c, 0x78, 0x71, 0x90, 0x1e, 0x16, 0x56, 0xe0, 0x8f, 0xb3, 0x5e, + 0xb4, 0xec, 0x43, 0x98, 0x49, 0x37, 0xa7, 0x5a, 0xf5, 0x96, 0xc9, 0x45, + 0x86, 0xa8, 0xf0, 0x2a, 0xf1, 0x2b, 0x7f, 0xc3, +}; +static const unsigned char kat398_addin0[] = {0}; +static const unsigned char kat398_addin1[] = {0}; +static const unsigned char kat398_retbits[] = { + 0x9e, 0xc5, 0x99, 0x81, 0x42, 0x37, 0x9d, 0x14, 0x89, 0x64, 0x51, 0x02, + 0x4f, 0xec, 0x60, 0x85, 0x34, 0x18, 0xa3, 0xef, 0x59, 0xd3, 0xa6, 0xbd, + 0x3f, 0xf1, 0x59, 0x28, 0x26, 0xb1, 0x13, 0x72, 0xf3, 0x21, 0xa9, 0x8c, + 0x54, 0xd1, 0xbf, 0x82, 0x25, 0xbb, 0x64, 0xec, 0x2f, 0x2f, 0x4f, 0x46, + 0xed, 0x64, 0x2a, 0xea, 0xf2, 0x8e, 0xb2, 0x0b, 0xc9, 0x93, 0xe6, 0xd6, + 0x84, 0xfa, 0x33, 0xde, +}; +static const struct drbg_kat_no_reseed kat398_t = { + 7, kat398_entropyin, kat398_nonce, kat398_persstr, + kat398_addin0, kat398_addin1, kat398_retbits +}; +static const struct drbg_kat kat398 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat398_t +}; + +static const unsigned char kat399_entropyin[] = { + 0xab, 0xb6, 0xb7, 0x68, 0x06, 0x81, 0x3c, 0x22, 0x73, 0xaa, 0x8e, 0xd4, + 0x76, 0xaf, 0x00, 0x74, 0xa7, 0xa4, 0x73, 0xea, 0x54, 0x8c, 0xc1, 0xef, +}; +static const unsigned char kat399_nonce[] = { + 0xd9, 0x91, 0x77, 0x34, 0x3e, 0xa3, 0x83, 0x7f, 0x92, 0xd9, 0xc7, 0x36, + 0x7a, 0x70, 0x43, 0x3e, +}; +static const unsigned char kat399_persstr[] = { + 0xef, 0x6b, 0x87, 0x66, 0x1f, 0x2a, 0x67, 0x8a, 0xd2, 0xd4, 0xdc, 0x85, + 0xba, 0x08, 0x45, 0xec, 0x8e, 0xea, 0xfa, 0x2b, 0x82, 0xb8, 0xae, 0xda, + 0x4f, 0xc6, 0x19, 0x38, 0xa8, 0xdd, 0x60, 0x77, +}; +static const unsigned char kat399_addin0[] = {0}; +static const unsigned char kat399_addin1[] = {0}; +static const unsigned char kat399_retbits[] = { + 0x81, 0x1a, 0xc8, 0x8d, 0x4c, 0x96, 0x15, 0xb5, 0x35, 0xb0, 0xf7, 0x2a, + 0x9f, 0x49, 0x10, 0x7b, 0xac, 0xa2, 0x39, 0xa1, 0x3f, 0x26, 0xb9, 0x7b, + 0xa7, 0x33, 0xe4, 0xaf, 0x3a, 0x24, 0xdb, 0x8a, 0x65, 0x82, 0x75, 0xee, + 0x24, 0x16, 0xc0, 0x2f, 0x59, 0x68, 0xc2, 0x2d, 0x13, 0xaa, 0x62, 0x55, + 0xde, 0xb0, 0x98, 0x14, 0x51, 0x05, 0x22, 0x6f, 0x4a, 0xa8, 0x0a, 0xe3, + 0xdf, 0x8c, 0x1b, 0xfd, +}; +static const struct drbg_kat_no_reseed kat399_t = { + 8, kat399_entropyin, kat399_nonce, kat399_persstr, + kat399_addin0, kat399_addin1, kat399_retbits +}; +static const struct drbg_kat kat399 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat399_t +}; + +static const unsigned char kat400_entropyin[] = { + 0xde, 0xfc, 0x7c, 0x59, 0xd7, 0x8e, 0x50, 0xc4, 0x12, 0x32, 0xf7, 0xbe, + 0xbf, 0xc5, 0xe9, 0x40, 0x8c, 0xea, 0x26, 0x6f, 0xc1, 0xe3, 0xc5, 0xc8, +}; +static const unsigned char kat400_nonce[] = { + 0x9f, 0xfa, 0x0d, 0xf6, 0x97, 0x93, 0xbb, 0x6d, 0x9e, 0x7d, 0x78, 0xeb, + 0xaf, 0x46, 0xf6, 0xa7, +}; +static const unsigned char kat400_persstr[] = { + 0x98, 0xb3, 0xfa, 0xb2, 0xff, 0xe5, 0x47, 0xec, 0x1a, 0x41, 0x8e, 0xd9, + 0x8a, 0xe7, 0xac, 0x66, 0x9c, 0x07, 0x01, 0x17, 0x8b, 0xe6, 0x55, 0xa6, + 0xfa, 0xf9, 0x96, 0x2d, 0x80, 0xae, 0xe9, 0x51, +}; +static const unsigned char kat400_addin0[] = {0}; +static const unsigned char kat400_addin1[] = {0}; +static const unsigned char kat400_retbits[] = { + 0xa9, 0xe6, 0x82, 0x0b, 0xf8, 0x3a, 0x8b, 0x29, 0x41, 0x46, 0xfc, 0xe2, + 0xd1, 0x94, 0x01, 0x9a, 0x99, 0x59, 0xcc, 0x58, 0x47, 0x29, 0xd6, 0x7d, + 0xc7, 0x17, 0x42, 0x39, 0x10, 0x60, 0xec, 0x6b, 0x24, 0xd6, 0x85, 0xe5, + 0x45, 0x80, 0x7b, 0x1c, 0xa9, 0xd8, 0xa2, 0x8b, 0x68, 0xe7, 0x6a, 0xf2, + 0x56, 0xd4, 0x35, 0xf6, 0xf8, 0x31, 0x63, 0x6c, 0x33, 0x2a, 0x7f, 0x13, + 0x80, 0x7b, 0x1f, 0x35, +}; +static const struct drbg_kat_no_reseed kat400_t = { + 9, kat400_entropyin, kat400_nonce, kat400_persstr, + kat400_addin0, kat400_addin1, kat400_retbits +}; +static const struct drbg_kat kat400 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat400_t +}; + +static const unsigned char kat401_entropyin[] = { + 0x6c, 0xfa, 0xaf, 0xb3, 0x1b, 0x1d, 0x6a, 0x6b, 0x9b, 0xed, 0x1d, 0xe9, + 0xa9, 0x93, 0xb7, 0x0f, 0xa1, 0x4d, 0xc6, 0x1f, 0xa1, 0x7a, 0xb1, 0xd0, +}; +static const unsigned char kat401_nonce[] = { + 0xad, 0xd4, 0x61, 0x04, 0x8f, 0xf6, 0x97, 0x53, 0xf8, 0x87, 0xab, 0x87, + 0xb7, 0x4c, 0x25, 0xed, +}; +static const unsigned char kat401_persstr[] = { + 0xe2, 0xde, 0xdf, 0xe6, 0xb7, 0x0f, 0xd4, 0x26, 0x34, 0x8b, 0x98, 0x38, + 0xb6, 0x3f, 0x01, 0xd5, 0x21, 0x18, 0x20, 0xbf, 0xba, 0x78, 0xa2, 0x19, + 0xa8, 0x8b, 0x9b, 0x67, 0xad, 0xbf, 0xa4, 0x52, +}; +static const unsigned char kat401_addin0[] = {0}; +static const unsigned char kat401_addin1[] = {0}; +static const unsigned char kat401_retbits[] = { + 0xc6, 0x0f, 0xcf, 0x4d, 0x36, 0x2c, 0x92, 0x3b, 0xbb, 0x70, 0xda, 0x80, + 0x6c, 0x92, 0x65, 0x1b, 0x23, 0x9e, 0x32, 0x75, 0x2b, 0xf4, 0x37, 0x66, + 0x9a, 0x39, 0xfa, 0x5e, 0x24, 0xd8, 0xa3, 0x04, 0x66, 0x8b, 0xac, 0x92, + 0xba, 0x12, 0x8a, 0x8b, 0x7e, 0x02, 0xdf, 0x00, 0xba, 0x17, 0x8f, 0x76, + 0xde, 0x44, 0xb6, 0x56, 0xf3, 0x45, 0x1f, 0x21, 0x25, 0x0d, 0xe7, 0x78, + 0xe0, 0x40, 0x5f, 0x14, +}; +static const struct drbg_kat_no_reseed kat401_t = { + 10, kat401_entropyin, kat401_nonce, kat401_persstr, + kat401_addin0, kat401_addin1, kat401_retbits +}; +static const struct drbg_kat kat401 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat401_t +}; + +static const unsigned char kat402_entropyin[] = { + 0x90, 0x09, 0x14, 0x8d, 0xfc, 0x32, 0xc4, 0xcd, 0x2e, 0x67, 0x09, 0xc5, + 0x4a, 0x93, 0xf5, 0x7a, 0xa7, 0x5a, 0x93, 0x0a, 0x39, 0x5b, 0xf2, 0x01, +}; +static const unsigned char kat402_nonce[] = { + 0xb2, 0x8d, 0xfc, 0x3c, 0x6b, 0x33, 0x9e, 0xb8, 0xbb, 0xaf, 0x29, 0xe5, + 0xf8, 0x19, 0x8b, 0x4e, +}; +static const unsigned char kat402_persstr[] = { + 0xeb, 0xb2, 0xe3, 0x30, 0xa0, 0x5d, 0x1e, 0xaa, 0xfc, 0x51, 0x16, 0xe9, + 0x37, 0x62, 0x20, 0x73, 0x2c, 0xcf, 0x09, 0x1e, 0x1b, 0x0e, 0x40, 0x17, + 0xfa, 0xa9, 0x43, 0x46, 0xa8, 0x39, 0x45, 0xc6, +}; +static const unsigned char kat402_addin0[] = {0}; +static const unsigned char kat402_addin1[] = {0}; +static const unsigned char kat402_retbits[] = { + 0x43, 0xc3, 0x1a, 0xc4, 0x9d, 0xe9, 0xf8, 0xe7, 0x74, 0xdf, 0xc8, 0xe4, + 0x37, 0xe4, 0x0a, 0x87, 0xe4, 0x25, 0x29, 0xe6, 0x25, 0xbd, 0xbd, 0x10, + 0xbf, 0x77, 0xbc, 0x0a, 0x81, 0x74, 0xfb, 0x9d, 0xd0, 0x8f, 0x6e, 0xdd, + 0x30, 0x8c, 0x6e, 0xeb, 0xa3, 0x17, 0x5b, 0xd3, 0x49, 0x6d, 0xa1, 0x14, + 0x36, 0xde, 0x61, 0x2a, 0x6d, 0x47, 0xf5, 0xd9, 0xe2, 0x63, 0x39, 0xeb, + 0xec, 0xda, 0x64, 0x9d, +}; +static const struct drbg_kat_no_reseed kat402_t = { + 11, kat402_entropyin, kat402_nonce, kat402_persstr, + kat402_addin0, kat402_addin1, kat402_retbits +}; +static const struct drbg_kat kat402 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat402_t +}; + +static const unsigned char kat403_entropyin[] = { + 0xf3, 0xf4, 0xe1, 0xab, 0xac, 0x55, 0x87, 0xf2, 0xa8, 0x40, 0x9b, 0x1a, + 0x22, 0x7f, 0x9c, 0x92, 0x41, 0x6f, 0x65, 0x67, 0x04, 0x95, 0x01, 0xdb, +}; +static const unsigned char kat403_nonce[] = { + 0xc1, 0x97, 0x96, 0x37, 0xe6, 0xb4, 0xd0, 0x4b, 0xc9, 0x70, 0xd3, 0x7e, + 0x11, 0xcd, 0xeb, 0xb5, +}; +static const unsigned char kat403_persstr[] = { + 0x3d, 0x49, 0x16, 0x31, 0xd7, 0x4d, 0x3d, 0x90, 0x8a, 0xc5, 0x8c, 0xc4, + 0x74, 0x81, 0xb5, 0xe0, 0x96, 0x4b, 0xb2, 0x19, 0x22, 0x06, 0x1c, 0xfe, + 0xbd, 0x83, 0x38, 0x20, 0xe9, 0x12, 0xa0, 0x0b, +}; +static const unsigned char kat403_addin0[] = {0}; +static const unsigned char kat403_addin1[] = {0}; +static const unsigned char kat403_retbits[] = { + 0x90, 0xed, 0xdd, 0x43, 0x9e, 0xed, 0x53, 0x79, 0x9e, 0xa5, 0x74, 0xc9, + 0x23, 0x84, 0x73, 0xff, 0xf0, 0x30, 0x38, 0x1e, 0x1a, 0x48, 0x54, 0x5b, + 0xc0, 0x7b, 0xb2, 0xcc, 0x9b, 0xb2, 0xd0, 0xea, 0xf2, 0x3a, 0x23, 0xf0, + 0x09, 0x88, 0x1d, 0x1c, 0x24, 0x64, 0xe6, 0xb3, 0x9f, 0x02, 0x30, 0x5b, + 0x32, 0x14, 0xd8, 0x99, 0x32, 0xf8, 0xc2, 0x37, 0x96, 0x49, 0x82, 0xc9, + 0xa7, 0xad, 0xcb, 0xfb, +}; +static const struct drbg_kat_no_reseed kat403_t = { + 12, kat403_entropyin, kat403_nonce, kat403_persstr, + kat403_addin0, kat403_addin1, kat403_retbits +}; +static const struct drbg_kat kat403 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat403_t +}; + +static const unsigned char kat404_entropyin[] = { + 0xdc, 0x24, 0x65, 0x25, 0x7d, 0x55, 0x89, 0x89, 0xa3, 0x40, 0x26, 0x3f, + 0xaa, 0x86, 0xef, 0x3f, 0x98, 0xe8, 0xa9, 0xfb, 0x53, 0x98, 0x04, 0xa9, +}; +static const unsigned char kat404_nonce[] = { + 0x1c, 0xa1, 0x60, 0x8e, 0xf5, 0xf2, 0x6b, 0xdf, 0xbb, 0xb1, 0xb5, 0x06, + 0xfd, 0x77, 0x24, 0x26, +}; +static const unsigned char kat404_persstr[] = { + 0xdb, 0x9b, 0xa1, 0x82, 0x86, 0x42, 0x94, 0x65, 0xf7, 0x3b, 0x35, 0x73, + 0x9e, 0x6c, 0x98, 0x7e, 0x07, 0xc0, 0x39, 0x7d, 0xd6, 0x03, 0xe0, 0x36, + 0x85, 0x3c, 0x54, 0x6e, 0x49, 0x93, 0xfe, 0x89, +}; +static const unsigned char kat404_addin0[] = {0}; +static const unsigned char kat404_addin1[] = {0}; +static const unsigned char kat404_retbits[] = { + 0xfd, 0x35, 0xff, 0xc4, 0x30, 0x51, 0x43, 0x57, 0x12, 0x37, 0x4a, 0xd9, + 0x03, 0xa4, 0x65, 0x5b, 0x36, 0xd3, 0x75, 0x4d, 0x78, 0x55, 0x1c, 0x3f, + 0x48, 0xd7, 0x04, 0x94, 0x74, 0x4e, 0xe2, 0xf3, 0x36, 0xbd, 0x19, 0xb7, + 0x80, 0xc8, 0xcb, 0x6e, 0x5d, 0xe4, 0xa6, 0x67, 0x11, 0x7d, 0x1f, 0xb6, + 0xb8, 0x1f, 0x03, 0xd3, 0x62, 0x0b, 0xb5, 0xbe, 0x18, 0x02, 0x15, 0x28, + 0x42, 0xc6, 0x97, 0x3e, +}; +static const struct drbg_kat_no_reseed kat404_t = { + 13, kat404_entropyin, kat404_nonce, kat404_persstr, + kat404_addin0, kat404_addin1, kat404_retbits +}; +static const struct drbg_kat kat404 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat404_t +}; + +static const unsigned char kat405_entropyin[] = { + 0x1b, 0xeb, 0xd5, 0xd8, 0x76, 0xe0, 0x94, 0x9d, 0x1d, 0x8d, 0xeb, 0x41, + 0x0d, 0x3a, 0x77, 0x9c, 0xed, 0x95, 0xe7, 0x0c, 0x0b, 0x4a, 0xd5, 0x31, +}; +static const unsigned char kat405_nonce[] = { + 0x4c, 0x1d, 0xb0, 0x88, 0x71, 0x71, 0x96, 0x23, 0xea, 0xb2, 0xa2, 0x4f, + 0xcb, 0x8f, 0xca, 0x1c, +}; +static const unsigned char kat405_persstr[] = { + 0xf7, 0x3f, 0x41, 0xc6, 0x14, 0x6f, 0x2c, 0x3d, 0x6a, 0xde, 0x95, 0x46, + 0x2a, 0x70, 0xf1, 0x23, 0xb9, 0x60, 0x4b, 0xea, 0x02, 0xfd, 0xca, 0x6b, + 0x11, 0x54, 0xc1, 0xf8, 0x6b, 0x89, 0x9b, 0x48, +}; +static const unsigned char kat405_addin0[] = {0}; +static const unsigned char kat405_addin1[] = {0}; +static const unsigned char kat405_retbits[] = { + 0x4a, 0x0e, 0x35, 0xcf, 0x6a, 0x1e, 0x19, 0x9e, 0x56, 0xfc, 0x6b, 0x5f, + 0x37, 0x84, 0xb2, 0x8c, 0x1a, 0xc7, 0x0e, 0x91, 0xfd, 0x74, 0xd8, 0xa7, + 0xef, 0x45, 0xa1, 0x68, 0xb3, 0xaa, 0xd2, 0x8f, 0x32, 0x44, 0x11, 0xee, + 0x88, 0x6b, 0xb7, 0x39, 0xbb, 0x81, 0x4d, 0x5b, 0xa1, 0xdd, 0x79, 0x4a, + 0x0d, 0x37, 0x2e, 0xed, 0x5f, 0x4a, 0x97, 0x1a, 0x0c, 0x55, 0x42, 0xb9, + 0x47, 0xc4, 0xe9, 0x77, +}; +static const struct drbg_kat_no_reseed kat405_t = { + 14, kat405_entropyin, kat405_nonce, kat405_persstr, + kat405_addin0, kat405_addin1, kat405_retbits +}; +static const struct drbg_kat kat405 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat405_t +}; + +static const unsigned char kat406_entropyin[] = { + 0x05, 0xe7, 0x34, 0xb2, 0xb1, 0x28, 0x7f, 0x82, 0x73, 0x94, 0x22, 0x8f, + 0x81, 0x40, 0xda, 0xc0, 0x50, 0xad, 0xb8, 0x21, 0xbd, 0x37, 0xc4, 0xe2, +}; +static const unsigned char kat406_nonce[] = { + 0xc5, 0x41, 0xec, 0xbe, 0x12, 0xd3, 0x00, 0xc1, 0x4a, 0x7c, 0x9f, 0xe9, + 0x0e, 0x38, 0xb1, 0xab, +}; +static const unsigned char kat406_persstr[] = { + 0x01, 0x8b, 0x8e, 0x3d, 0x28, 0x5b, 0x9f, 0x7b, 0x92, 0x8c, 0xc8, 0x19, + 0xc5, 0x76, 0xfa, 0x21, 0x69, 0x2c, 0x52, 0xff, 0x71, 0x66, 0xda, 0xe7, + 0xb8, 0xaf, 0x78, 0x54, 0xcd, 0x3f, 0x8e, 0xf4, +}; +static const unsigned char kat406_addin0[] = { + 0x1f, 0xd8, 0xd3, 0x7b, 0x2e, 0xa6, 0xb2, 0x0d, 0x74, 0x74, 0xd9, 0x5c, + 0xac, 0x58, 0x81, 0xa6, 0x9a, 0x12, 0x66, 0xba, 0xdc, 0x49, 0xc0, 0xda, + 0x8b, 0xe2, 0x95, 0xf3, 0xdf, 0x6a, 0xfb, 0x5e, +}; +static const unsigned char kat406_addin1[] = { + 0x97, 0x26, 0x73, 0x24, 0x32, 0xe1, 0x56, 0x7e, 0x5d, 0x9e, 0x53, 0x55, + 0x4b, 0xcb, 0x88, 0x6f, 0x12, 0x9c, 0x80, 0x07, 0xda, 0x9e, 0x68, 0xb3, + 0x25, 0xbf, 0x16, 0xab, 0x74, 0x0f, 0x54, 0x0e, +}; +static const unsigned char kat406_retbits[] = { + 0x3c, 0xc1, 0xec, 0x09, 0x29, 0x23, 0xa2, 0xba, 0x7f, 0xca, 0x0d, 0xbf, + 0x54, 0x3c, 0xce, 0xb9, 0xb7, 0x61, 0xc6, 0x1c, 0xad, 0xd0, 0x23, 0x35, + 0xdf, 0x36, 0x1b, 0xc4, 0x25, 0x34, 0xc9, 0xb0, 0x13, 0x73, 0xc8, 0xe5, + 0x13, 0xb0, 0x69, 0xef, 0x77, 0xdd, 0x0f, 0xf8, 0xe4, 0x62, 0x3e, 0xcf, + 0xd1, 0x2f, 0x29, 0x0a, 0x28, 0x45, 0xb8, 0xe7, 0xa1, 0xf2, 0xeb, 0x97, + 0x54, 0x7a, 0x16, 0xcc, +}; +static const struct drbg_kat_no_reseed kat406_t = { + 0, kat406_entropyin, kat406_nonce, kat406_persstr, + kat406_addin0, kat406_addin1, kat406_retbits +}; +static const struct drbg_kat kat406 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat406_t +}; + +static const unsigned char kat407_entropyin[] = { + 0x0a, 0x07, 0xb4, 0x89, 0x3a, 0xdc, 0x1d, 0x05, 0xf2, 0xe6, 0xf4, 0x61, + 0xa7, 0x17, 0xc3, 0xb4, 0xed, 0x12, 0xf9, 0xdc, 0x6a, 0xb1, 0xee, 0xc0, +}; +static const unsigned char kat407_nonce[] = { + 0x90, 0x0a, 0xda, 0xad, 0xf9, 0x0e, 0xf5, 0x85, 0x67, 0x84, 0xea, 0x86, + 0x05, 0x7b, 0x57, 0x14, +}; +static const unsigned char kat407_persstr[] = { + 0x12, 0x1e, 0x2e, 0xad, 0x8d, 0xa5, 0xb5, 0xcb, 0xc8, 0x40, 0x85, 0x6c, + 0x13, 0x6e, 0x94, 0x58, 0xe6, 0x5b, 0x53, 0x6a, 0x51, 0x31, 0x01, 0x5e, + 0x8e, 0xf4, 0xeb, 0x16, 0x7a, 0xa1, 0xf9, 0x64, +}; +static const unsigned char kat407_addin0[] = { + 0x4b, 0x79, 0x78, 0x58, 0x37, 0x73, 0x29, 0xb1, 0x9a, 0x69, 0x4a, 0x32, + 0x0d, 0xec, 0xa0, 0x92, 0x69, 0xbc, 0xee, 0x49, 0x61, 0x1f, 0x7e, 0xd6, + 0xf4, 0x0e, 0xb9, 0x45, 0x99, 0xf4, 0x20, 0xb6, +}; +static const unsigned char kat407_addin1[] = { + 0xfb, 0x4e, 0xb2, 0x1d, 0x67, 0xcb, 0xbe, 0x06, 0xb9, 0x96, 0xcf, 0x80, + 0xca, 0xb0, 0xcb, 0xbd, 0x61, 0xe9, 0xcf, 0x35, 0x80, 0x48, 0x77, 0x8e, + 0xbc, 0x50, 0x52, 0x0e, 0x5f, 0xb0, 0x1b, 0xb2, +}; +static const unsigned char kat407_retbits[] = { + 0xfc, 0xf3, 0xaa, 0x35, 0xd1, 0x4d, 0x2b, 0xf7, 0xfc, 0xc6, 0xb4, 0x64, + 0x60, 0xb5, 0x0d, 0x6b, 0xc9, 0xee, 0xb7, 0xb1, 0x17, 0xae, 0xef, 0xf4, + 0x55, 0x02, 0x2d, 0xa6, 0xeb, 0x32, 0xaa, 0x3b, 0x3e, 0x9b, 0xf7, 0xdb, + 0x05, 0xd2, 0x44, 0xa8, 0xa6, 0xbd, 0xbb, 0xee, 0x4a, 0x73, 0xa9, 0x6e, + 0x9b, 0x3a, 0xc8, 0xf1, 0x9a, 0xa6, 0x0a, 0xb1, 0x19, 0xf0, 0x0b, 0xca, + 0xcf, 0x61, 0xdd, 0x13, +}; +static const struct drbg_kat_no_reseed kat407_t = { + 1, kat407_entropyin, kat407_nonce, kat407_persstr, + kat407_addin0, kat407_addin1, kat407_retbits +}; +static const struct drbg_kat kat407 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat407_t +}; + +static const unsigned char kat408_entropyin[] = { + 0x81, 0x98, 0x28, 0xbb, 0xcb, 0xc1, 0xd9, 0x5b, 0x72, 0x9e, 0xa4, 0xbd, + 0xe2, 0x7c, 0x4a, 0x78, 0x7f, 0x49, 0xe1, 0x67, 0x0f, 0xf7, 0xa5, 0xa2, +}; +static const unsigned char kat408_nonce[] = { + 0xf8, 0x8a, 0x9c, 0xe0, 0x8c, 0x10, 0x86, 0xa6, 0x5e, 0x49, 0x95, 0x80, + 0x18, 0x62, 0xac, 0xb5, +}; +static const unsigned char kat408_persstr[] = { + 0x7c, 0x63, 0x19, 0xe4, 0x88, 0x82, 0x0f, 0xb9, 0xe0, 0x49, 0x7b, 0x0b, + 0x2d, 0xf4, 0xdd, 0x7d, 0x8e, 0x1b, 0xfb, 0x4c, 0x21, 0xea, 0xd3, 0xaf, + 0x74, 0x47, 0x1c, 0x4d, 0xba, 0x63, 0xf5, 0x97, +}; +static const unsigned char kat408_addin0[] = { + 0x66, 0x4d, 0x25, 0x83, 0x2d, 0x57, 0x30, 0x2f, 0xe8, 0x75, 0xe6, 0xad, + 0xeb, 0xac, 0xfa, 0x82, 0x5f, 0xfe, 0xf3, 0x94, 0xf6, 0x08, 0x56, 0xbc, + 0x21, 0xf7, 0x62, 0x07, 0x4d, 0x34, 0x91, 0x7d, +}; +static const unsigned char kat408_addin1[] = { + 0x2a, 0x6c, 0xfa, 0x71, 0x0e, 0xc9, 0x20, 0x2b, 0x30, 0xe2, 0x76, 0xe1, + 0x8d, 0xb6, 0x99, 0x9e, 0x24, 0x5b, 0x76, 0x89, 0xd3, 0xff, 0x9a, 0xfe, + 0x1a, 0x79, 0x62, 0x72, 0xce, 0x86, 0xfe, 0x4c, +}; +static const unsigned char kat408_retbits[] = { + 0x58, 0x53, 0x4c, 0x9c, 0xaa, 0xae, 0xf5, 0x47, 0xcc, 0x5b, 0x6e, 0x60, + 0x2c, 0x09, 0xa5, 0x2b, 0x04, 0x8c, 0x96, 0xd1, 0xeb, 0x03, 0xc1, 0xa1, + 0x7d, 0x3d, 0x8d, 0xe2, 0xca, 0x86, 0xed, 0xf4, 0x0f, 0xac, 0xd9, 0x9a, + 0x06, 0xcf, 0x8d, 0x22, 0x54, 0xd3, 0xa0, 0x5c, 0xb8, 0x07, 0x1b, 0xf8, + 0x5d, 0x54, 0x14, 0x08, 0x28, 0x01, 0x94, 0x65, 0x0e, 0x5c, 0x77, 0x64, + 0x3b, 0xbc, 0xf8, 0xea, +}; +static const struct drbg_kat_no_reseed kat408_t = { + 2, kat408_entropyin, kat408_nonce, kat408_persstr, + kat408_addin0, kat408_addin1, kat408_retbits +}; +static const struct drbg_kat kat408 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat408_t +}; + +static const unsigned char kat409_entropyin[] = { + 0x0a, 0x48, 0x1e, 0xd8, 0xc9, 0x9e, 0x58, 0xd3, 0x34, 0x61, 0xe0, 0x36, + 0x00, 0xa7, 0xd6, 0x5e, 0x36, 0xea, 0xfa, 0xa3, 0x45, 0xca, 0x07, 0xa8, +}; +static const unsigned char kat409_nonce[] = { + 0x10, 0x8b, 0x19, 0x04, 0x64, 0x8f, 0xae, 0x51, 0x6f, 0x4a, 0x1b, 0x60, + 0xfe, 0xae, 0x9e, 0x8f, +}; +static const unsigned char kat409_persstr[] = { + 0xbf, 0xf9, 0x9f, 0xdd, 0xca, 0x34, 0xd0, 0x8d, 0x77, 0x08, 0x44, 0x00, + 0x30, 0xf9, 0xf4, 0xe7, 0x55, 0x5e, 0x5a, 0xeb, 0x61, 0x60, 0x15, 0xcf, + 0xc8, 0xe6, 0xb8, 0x59, 0x9d, 0xac, 0x91, 0x64, +}; +static const unsigned char kat409_addin0[] = { + 0x9f, 0x8c, 0x91, 0x95, 0xe5, 0x2a, 0xb0, 0x51, 0xeb, 0x94, 0x8f, 0x02, + 0xe5, 0x97, 0x2c, 0x5b, 0xbd, 0xb1, 0xa9, 0x38, 0x4a, 0x27, 0x82, 0xe0, + 0xc8, 0x3a, 0x45, 0xd2, 0x0c, 0x6a, 0x8c, 0xf7, +}; +static const unsigned char kat409_addin1[] = { + 0x88, 0x61, 0x60, 0xff, 0x53, 0x4f, 0x3a, 0x4e, 0xd9, 0x7f, 0x43, 0x38, + 0x67, 0x93, 0xde, 0xc5, 0xaa, 0xb8, 0x6a, 0xe7, 0x7b, 0x30, 0xd1, 0x37, + 0x3b, 0x55, 0x6e, 0x8b, 0xf9, 0x27, 0x72, 0xff, +}; +static const unsigned char kat409_retbits[] = { + 0x41, 0xaa, 0x8a, 0x43, 0x48, 0x0e, 0xe9, 0x7c, 0x72, 0xe3, 0xe0, 0x14, + 0x35, 0xd4, 0xd3, 0x41, 0xf2, 0x31, 0xcd, 0xc5, 0x19, 0xe8, 0x82, 0x5e, + 0x0f, 0x98, 0xfb, 0x63, 0xd7, 0xe9, 0xf7, 0x1b, 0xc4, 0x2c, 0x90, 0xfc, + 0x20, 0x3f, 0xcc, 0x87, 0x5a, 0xb9, 0xe1, 0x1d, 0xbb, 0x40, 0xa3, 0xaa, + 0x9e, 0xaa, 0x6e, 0x1b, 0x01, 0xcf, 0xf5, 0xed, 0x72, 0x65, 0x70, 0x8a, + 0x21, 0x08, 0x29, 0x42, +}; +static const struct drbg_kat_no_reseed kat409_t = { + 3, kat409_entropyin, kat409_nonce, kat409_persstr, + kat409_addin0, kat409_addin1, kat409_retbits +}; +static const struct drbg_kat kat409 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat409_t +}; + +static const unsigned char kat410_entropyin[] = { + 0xe4, 0x1f, 0x2d, 0xe0, 0xaa, 0xc4, 0x0d, 0xd3, 0xae, 0x65, 0x17, 0xfe, + 0xf3, 0xc1, 0x9c, 0x20, 0x48, 0xb4, 0x31, 0xb7, 0x70, 0x4c, 0x60, 0x76, +}; +static const unsigned char kat410_nonce[] = { + 0x14, 0xdc, 0x27, 0xf4, 0x6c, 0xc0, 0xaa, 0x6c, 0x35, 0xf0, 0xa6, 0x60, + 0x85, 0x0b, 0x1f, 0xef, +}; +static const unsigned char kat410_persstr[] = { + 0xde, 0x24, 0xa9, 0xd5, 0x6b, 0x0c, 0x0b, 0xc4, 0xb3, 0xa9, 0x1c, 0x62, + 0x43, 0x24, 0xfc, 0x98, 0xb6, 0xf6, 0x60, 0xc3, 0x0a, 0xd9, 0xc2, 0x04, + 0xa7, 0xb0, 0x2f, 0xee, 0xf6, 0xbf, 0xf0, 0x3e, +}; +static const unsigned char kat410_addin0[] = { + 0xa2, 0x44, 0xcb, 0x28, 0xa1, 0x30, 0xca, 0x53, 0x31, 0xfb, 0x24, 0x11, + 0x63, 0x4b, 0x80, 0x9d, 0x32, 0x40, 0x8e, 0xd7, 0x45, 0xb2, 0xe3, 0x8c, + 0x4b, 0x90, 0x1a, 0x95, 0x5e, 0x1e, 0x24, 0xc3, +}; +static const unsigned char kat410_addin1[] = { + 0xeb, 0xf7, 0xf1, 0x87, 0xad, 0x03, 0xa3, 0x91, 0x33, 0x17, 0x5f, 0xf9, + 0x09, 0x6a, 0x04, 0xb7, 0x2e, 0xfb, 0x0f, 0xfb, 0x09, 0x9d, 0xbf, 0x16, + 0xc5, 0x3d, 0xfb, 0x6f, 0x61, 0x82, 0xe3, 0xbb, +}; +static const unsigned char kat410_retbits[] = { + 0xa0, 0xe7, 0xad, 0xcc, 0x6a, 0x7e, 0x36, 0x65, 0x61, 0x21, 0x17, 0xcf, + 0xc1, 0x56, 0x20, 0xe5, 0x69, 0xad, 0xd3, 0x1c, 0x02, 0x9c, 0x1d, 0xc1, + 0xa7, 0x9f, 0x07, 0x21, 0x23, 0xfc, 0xc5, 0x42, 0xb3, 0x97, 0xa2, 0xe7, + 0x04, 0x4a, 0x98, 0x3d, 0xaf, 0xe3, 0x62, 0x80, 0x59, 0x85, 0xff, 0xc1, + 0x64, 0xff, 0x83, 0xc5, 0x68, 0x21, 0xa9, 0x2e, 0xcd, 0xa3, 0x31, 0x55, + 0x1a, 0xa7, 0xf7, 0xb9, +}; +static const struct drbg_kat_no_reseed kat410_t = { + 4, kat410_entropyin, kat410_nonce, kat410_persstr, + kat410_addin0, kat410_addin1, kat410_retbits +}; +static const struct drbg_kat kat410 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat410_t +}; + +static const unsigned char kat411_entropyin[] = { + 0x4b, 0x55, 0xf7, 0xfb, 0xed, 0x3b, 0xab, 0x6e, 0x29, 0xeb, 0xbb, 0xc5, + 0x76, 0x85, 0x3e, 0xac, 0x83, 0xc9, 0x3e, 0x02, 0xac, 0xd6, 0x44, 0x2d, +}; +static const unsigned char kat411_nonce[] = { + 0x5e, 0x4c, 0xa3, 0xe9, 0xf8, 0x0a, 0x16, 0xf5, 0x78, 0xab, 0x7d, 0x63, + 0x30, 0x1a, 0x52, 0x8a, +}; +static const unsigned char kat411_persstr[] = { + 0xf4, 0xd4, 0x11, 0x07, 0x0a, 0x57, 0xe6, 0x0a, 0x17, 0xa6, 0x63, 0xbd, + 0x78, 0xec, 0x27, 0x25, 0xb7, 0x80, 0xcc, 0xa2, 0x81, 0x47, 0x61, 0x29, + 0x51, 0x98, 0x8c, 0x15, 0x2f, 0x2e, 0x27, 0x9f, +}; +static const unsigned char kat411_addin0[] = { + 0x94, 0x99, 0xe3, 0x50, 0x4d, 0x86, 0x38, 0x04, 0x28, 0x0e, 0x32, 0x72, + 0x08, 0x93, 0xb8, 0xe5, 0xe7, 0x3e, 0x39, 0x62, 0x59, 0x1e, 0xc6, 0xd8, + 0x34, 0xb4, 0x97, 0x42, 0x38, 0x90, 0xbe, 0xc6, +}; +static const unsigned char kat411_addin1[] = { + 0x24, 0x88, 0xbf, 0x77, 0x3c, 0x15, 0x3d, 0x85, 0x4c, 0x2b, 0x72, 0xa0, + 0x21, 0x91, 0x57, 0x92, 0x64, 0xf7, 0x84, 0xc2, 0x9a, 0x50, 0x9e, 0x0c, + 0x4e, 0xc1, 0x97, 0x46, 0xca, 0x98, 0x48, 0xa0, +}; +static const unsigned char kat411_retbits[] = { + 0x7d, 0x1a, 0xa3, 0x30, 0xdf, 0xcf, 0xac, 0x15, 0x7a, 0xf9, 0x1e, 0x67, + 0x52, 0x12, 0x9c, 0x3e, 0xc8, 0x02, 0x9b, 0xf8, 0xad, 0x54, 0x37, 0xc4, + 0xc0, 0x14, 0x40, 0x62, 0x48, 0x10, 0x2c, 0x0c, 0xe0, 0x95, 0xb6, 0xb2, + 0x7f, 0x25, 0x2a, 0xe3, 0x12, 0xf4, 0x9f, 0x11, 0x98, 0x5e, 0x67, 0x3d, + 0x9c, 0xc7, 0xb2, 0xac, 0x18, 0x1a, 0x30, 0x44, 0xdc, 0x0f, 0xb5, 0xe6, + 0xad, 0x7a, 0x1d, 0x6a, +}; +static const struct drbg_kat_no_reseed kat411_t = { + 5, kat411_entropyin, kat411_nonce, kat411_persstr, + kat411_addin0, kat411_addin1, kat411_retbits +}; +static const struct drbg_kat kat411 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat411_t +}; + +static const unsigned char kat412_entropyin[] = { + 0xd5, 0xac, 0x19, 0x5a, 0x47, 0x31, 0x4d, 0x9f, 0x10, 0x5b, 0x29, 0x18, + 0x7d, 0x28, 0x3c, 0x6d, 0x24, 0xc4, 0x4c, 0x70, 0x54, 0x00, 0x64, 0x1d, +}; +static const unsigned char kat412_nonce[] = { + 0xea, 0x92, 0xb7, 0x3e, 0xfc, 0x54, 0x31, 0xad, 0xd6, 0xca, 0x2a, 0xe8, + 0x7d, 0x9b, 0xaa, 0x31, +}; +static const unsigned char kat412_persstr[] = { + 0x6e, 0x2b, 0x85, 0x89, 0xc4, 0x90, 0xe0, 0x48, 0x41, 0x3f, 0x0d, 0x88, + 0xc5, 0x51, 0x04, 0x7e, 0x3d, 0xe7, 0xff, 0xc7, 0xcf, 0x43, 0xdc, 0x9d, + 0x35, 0xdb, 0x93, 0x27, 0xb3, 0x5a, 0xb9, 0x70, +}; +static const unsigned char kat412_addin0[] = { + 0x51, 0xed, 0x74, 0xbd, 0xd7, 0x55, 0x85, 0xc2, 0x14, 0x5c, 0xc2, 0x38, + 0x48, 0x62, 0xf3, 0x4e, 0xd0, 0xb4, 0x0c, 0x30, 0x44, 0xac, 0x60, 0x48, + 0x7e, 0xe1, 0x0b, 0xef, 0xaf, 0xd5, 0xb1, 0x6b, +}; +static const unsigned char kat412_addin1[] = { + 0x89, 0x4a, 0xa5, 0x0d, 0x05, 0xa4, 0x0e, 0x5b, 0xff, 0x48, 0x14, 0xe7, + 0x56, 0x86, 0xe3, 0x42, 0x00, 0x4a, 0x66, 0x0e, 0x2e, 0x4d, 0xc7, 0x36, + 0x3e, 0xd7, 0x28, 0x88, 0xb7, 0x92, 0xc0, 0xc5, +}; +static const unsigned char kat412_retbits[] = { + 0xcc, 0x3c, 0xe3, 0x94, 0xcb, 0x02, 0x5b, 0xcf, 0xf4, 0x36, 0xe6, 0xa6, + 0xc2, 0xf8, 0x03, 0x76, 0x7e, 0xa8, 0xed, 0xff, 0x89, 0x05, 0xa2, 0x3b, + 0xe4, 0x23, 0x9e, 0x64, 0xc2, 0x82, 0x6e, 0x54, 0xbe, 0xe2, 0xea, 0xb1, + 0xb1, 0x4f, 0xe4, 0x4a, 0x68, 0x2d, 0x15, 0x13, 0xc4, 0x05, 0x3b, 0x2e, + 0x46, 0x99, 0xb1, 0x8a, 0xd1, 0xc3, 0xc2, 0x5e, 0xf1, 0xa5, 0xe4, 0x22, + 0x73, 0x0a, 0xca, 0xfd, +}; +static const struct drbg_kat_no_reseed kat412_t = { + 6, kat412_entropyin, kat412_nonce, kat412_persstr, + kat412_addin0, kat412_addin1, kat412_retbits +}; +static const struct drbg_kat kat412 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat412_t +}; + +static const unsigned char kat413_entropyin[] = { + 0x8b, 0x5d, 0xd1, 0xe8, 0x9f, 0xa9, 0x7c, 0x9d, 0x08, 0x4f, 0x27, 0x7e, + 0x2e, 0xc5, 0x83, 0xbb, 0x30, 0x5c, 0x6b, 0x4d, 0x07, 0x37, 0xd7, 0xcf, +}; +static const unsigned char kat413_nonce[] = { + 0x15, 0xab, 0x99, 0xd1, 0x5e, 0xa1, 0x12, 0x81, 0xd0, 0xfd, 0xcf, 0xd7, + 0x44, 0xf9, 0x64, 0xd0, +}; +static const unsigned char kat413_persstr[] = { + 0xc2, 0xbf, 0x9e, 0x13, 0xb3, 0xb7, 0x10, 0x94, 0xea, 0x1a, 0x84, 0xa4, + 0x36, 0xa0, 0xce, 0x25, 0xe5, 0x32, 0xc2, 0xa5, 0xd9, 0xe6, 0x23, 0x12, + 0xf9, 0x67, 0xf4, 0xfd, 0x06, 0x20, 0x4d, 0x13, +}; +static const unsigned char kat413_addin0[] = { + 0xfe, 0x60, 0xba, 0x40, 0x6b, 0xf6, 0x37, 0x84, 0xa0, 0xf8, 0x01, 0x9c, + 0x8f, 0x62, 0xe5, 0x25, 0xf2, 0xb8, 0x44, 0x47, 0xb9, 0x7d, 0x85, 0x87, + 0xda, 0xcd, 0x67, 0xb6, 0x90, 0xb3, 0xd8, 0xa8, +}; +static const unsigned char kat413_addin1[] = { + 0x49, 0x8d, 0xec, 0x11, 0xe7, 0xcd, 0x55, 0x6a, 0x12, 0x07, 0xdc, 0x37, + 0x9c, 0x03, 0x13, 0x8e, 0xf6, 0x80, 0xba, 0x56, 0x99, 0xe4, 0x68, 0x66, + 0xa3, 0x97, 0xf1, 0xf4, 0xb9, 0x10, 0xb2, 0xe2, +}; +static const unsigned char kat413_retbits[] = { + 0xca, 0xd4, 0x22, 0x4e, 0x71, 0x77, 0xaf, 0xe9, 0xf6, 0x84, 0x96, 0xb7, + 0xde, 0x52, 0x37, 0x6d, 0x8e, 0x71, 0x80, 0x7b, 0x2b, 0x3a, 0xf4, 0xe9, + 0x7e, 0x81, 0x85, 0xf5, 0xbe, 0x91, 0x2f, 0x85, 0xd3, 0x3d, 0xda, 0x07, + 0xee, 0x48, 0x99, 0x3f, 0x22, 0x3e, 0x4b, 0xd9, 0x4d, 0x1a, 0x45, 0xea, + 0xa2, 0x74, 0x44, 0x8e, 0xa7, 0x39, 0x59, 0x86, 0x01, 0x63, 0x16, 0x94, + 0x39, 0xa2, 0x5a, 0xa6, +}; +static const struct drbg_kat_no_reseed kat413_t = { + 7, kat413_entropyin, kat413_nonce, kat413_persstr, + kat413_addin0, kat413_addin1, kat413_retbits +}; +static const struct drbg_kat kat413 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat413_t +}; + +static const unsigned char kat414_entropyin[] = { + 0x78, 0xd2, 0xe9, 0x21, 0x65, 0x6d, 0xb1, 0x69, 0x8d, 0xcf, 0xd2, 0xbb, + 0x94, 0xe9, 0x48, 0xac, 0xb7, 0x59, 0xff, 0xd2, 0xc4, 0xfb, 0xa7, 0x28, +}; +static const unsigned char kat414_nonce[] = { + 0x31, 0xe2, 0x0d, 0xc0, 0xf8, 0x61, 0x42, 0x7e, 0x78, 0xe0, 0xc4, 0xa3, + 0x06, 0x59, 0x64, 0xcf, +}; +static const unsigned char kat414_persstr[] = { + 0x70, 0xa5, 0xbe, 0x6e, 0xb4, 0xd2, 0xde, 0xbd, 0x0b, 0xce, 0x7f, 0x02, + 0x7c, 0x08, 0xa6, 0x1e, 0x66, 0x5a, 0x0c, 0xfd, 0xe3, 0xe1, 0xb9, 0xa8, + 0x6d, 0xb8, 0x5a, 0x92, 0x30, 0x47, 0xcf, 0xb5, +}; +static const unsigned char kat414_addin0[] = { + 0x0a, 0x20, 0x43, 0x22, 0xf4, 0x4c, 0x4e, 0x83, 0x23, 0x37, 0xf7, 0x40, + 0xa7, 0xcc, 0xba, 0xbc, 0xef, 0xda, 0x2f, 0xfa, 0x21, 0xc5, 0x11, 0x11, + 0x2a, 0xd5, 0x23, 0x0c, 0x41, 0x10, 0x9f, 0x67, +}; +static const unsigned char kat414_addin1[] = { + 0x33, 0x02, 0xb3, 0x31, 0x5f, 0x17, 0x64, 0x27, 0xe9, 0x12, 0x2a, 0x08, + 0xc9, 0x82, 0xd6, 0xa9, 0x33, 0x5c, 0xe9, 0x6f, 0x0d, 0x24, 0x26, 0xbc, + 0xe3, 0x82, 0x01, 0x7d, 0xf2, 0xfb, 0x9e, 0x9f, +}; +static const unsigned char kat414_retbits[] = { + 0xef, 0x96, 0xc7, 0x56, 0x99, 0xd6, 0x8e, 0xc0, 0x5e, 0xde, 0x3a, 0xc6, + 0x20, 0x54, 0xd8, 0xae, 0xc3, 0xfa, 0xb4, 0x4c, 0x06, 0x4a, 0xd6, 0x33, + 0x83, 0x73, 0x7a, 0x83, 0xe9, 0xc6, 0xd8, 0xaf, 0x3d, 0x61, 0xf2, 0xb8, + 0xd0, 0x81, 0xf2, 0xf8, 0x2f, 0x23, 0xbf, 0x3a, 0x82, 0x97, 0x60, 0x90, + 0x61, 0x81, 0x65, 0x98, 0xc5, 0xbf, 0x55, 0x01, 0x3a, 0xb4, 0xd2, 0x26, + 0x36, 0x0a, 0x7c, 0x2b, +}; +static const struct drbg_kat_no_reseed kat414_t = { + 8, kat414_entropyin, kat414_nonce, kat414_persstr, + kat414_addin0, kat414_addin1, kat414_retbits +}; +static const struct drbg_kat kat414 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat414_t +}; + +static const unsigned char kat415_entropyin[] = { + 0xa5, 0x60, 0x03, 0x7e, 0x96, 0xbb, 0x5b, 0x76, 0xbc, 0xc8, 0x1e, 0xe6, + 0xfd, 0x12, 0x7e, 0x25, 0xba, 0xc8, 0x9d, 0xdc, 0xa7, 0x1d, 0xd9, 0x41, +}; +static const unsigned char kat415_nonce[] = { + 0x6a, 0x1a, 0xe2, 0x07, 0x02, 0xa1, 0xf2, 0x9d, 0xb6, 0x58, 0xe5, 0xf2, + 0xb2, 0x47, 0x6e, 0xfc, +}; +static const unsigned char kat415_persstr[] = { + 0xdb, 0xc9, 0x3a, 0x3b, 0x72, 0xaa, 0x98, 0x90, 0xc0, 0x56, 0x76, 0x08, + 0x67, 0xa9, 0xd2, 0x56, 0xcd, 0x13, 0xee, 0x44, 0xdd, 0x76, 0x84, 0x47, + 0xd0, 0x68, 0x39, 0xd7, 0xc2, 0xfd, 0xf5, 0x94, +}; +static const unsigned char kat415_addin0[] = { + 0x51, 0xd1, 0xf7, 0xaa, 0x0d, 0x55, 0x10, 0x79, 0xdb, 0x5c, 0x94, 0x2f, + 0xb9, 0x19, 0x9b, 0x11, 0xdd, 0xc1, 0x59, 0x73, 0x7f, 0xdc, 0xf8, 0x26, + 0x29, 0xe0, 0xe8, 0x2b, 0xc1, 0xed, 0x28, 0xe6, +}; +static const unsigned char kat415_addin1[] = { + 0x73, 0x38, 0x86, 0xbf, 0xed, 0x59, 0xcf, 0xac, 0x56, 0x23, 0xe4, 0x1a, + 0x81, 0x89, 0x78, 0x0a, 0x3b, 0x24, 0x8e, 0xfd, 0x7b, 0xd4, 0xe1, 0x44, + 0x94, 0xec, 0x7d, 0x79, 0x3d, 0xb0, 0x62, 0x85, +}; +static const unsigned char kat415_retbits[] = { + 0x0d, 0xb2, 0x95, 0x41, 0x85, 0x35, 0xa4, 0xbe, 0x1a, 0x05, 0x7e, 0xfb, + 0x85, 0xdc, 0x48, 0xd2, 0x9c, 0x73, 0xb7, 0x9f, 0x11, 0x3e, 0x9e, 0x4c, + 0x62, 0x4f, 0x42, 0x16, 0xa9, 0x2d, 0x8d, 0xf7, 0xb2, 0x2c, 0xf3, 0x8d, + 0xa8, 0x15, 0x63, 0x46, 0xfb, 0x5c, 0x01, 0x53, 0x71, 0x16, 0x56, 0xba, + 0x08, 0x20, 0x8a, 0x33, 0x39, 0x9c, 0x9a, 0x2d, 0x45, 0xe7, 0x6c, 0x09, + 0x50, 0x0d, 0x59, 0xe9, +}; +static const struct drbg_kat_no_reseed kat415_t = { + 9, kat415_entropyin, kat415_nonce, kat415_persstr, + kat415_addin0, kat415_addin1, kat415_retbits +}; +static const struct drbg_kat kat415 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat415_t +}; + +static const unsigned char kat416_entropyin[] = { + 0x9d, 0x57, 0x3e, 0xc9, 0x20, 0x5c, 0x17, 0x65, 0xd0, 0x04, 0x83, 0xff, + 0xa3, 0x6d, 0xea, 0x87, 0x38, 0x92, 0x88, 0xe5, 0x54, 0xf8, 0x43, 0x5b, +}; +static const unsigned char kat416_nonce[] = { + 0x73, 0xa1, 0x75, 0xb5, 0xab, 0xa2, 0xb3, 0x65, 0xd4, 0x54, 0xe0, 0xe8, + 0x91, 0xb5, 0x4c, 0x48, +}; +static const unsigned char kat416_persstr[] = { + 0x35, 0xdc, 0xa1, 0x49, 0xa7, 0x9b, 0x6e, 0x45, 0xe3, 0xf1, 0xdd, 0x16, + 0xb5, 0xc5, 0x55, 0xe8, 0x9f, 0x1b, 0x1c, 0xe3, 0x5d, 0x50, 0xcf, 0x3f, + 0x9f, 0xc0, 0x06, 0x26, 0x5d, 0x46, 0x4a, 0xc2, +}; +static const unsigned char kat416_addin0[] = { + 0xf6, 0xcd, 0x2e, 0x99, 0x70, 0x50, 0x15, 0x87, 0x11, 0x26, 0x7d, 0xbf, + 0x2f, 0xd3, 0xdd, 0x4d, 0xe3, 0x37, 0xc4, 0xce, 0x1a, 0x13, 0x01, 0x41, + 0xc9, 0x4c, 0x02, 0xa8, 0xa6, 0x1a, 0x29, 0xc5, +}; +static const unsigned char kat416_addin1[] = { + 0x45, 0x41, 0xd1, 0x9c, 0x8e, 0x93, 0x03, 0x4e, 0x61, 0xcf, 0x42, 0x65, + 0xab, 0x80, 0xf4, 0x1f, 0x95, 0x45, 0x23, 0xef, 0x58, 0x9c, 0xd0, 0x15, + 0x45, 0x5d, 0x4e, 0x69, 0x91, 0x9b, 0xa0, 0xfd, +}; +static const unsigned char kat416_retbits[] = { + 0xcc, 0x14, 0x02, 0x9c, 0xac, 0x4f, 0x41, 0x79, 0xd2, 0x05, 0x61, 0xa8, + 0x9d, 0xef, 0xf9, 0x94, 0xb1, 0x32, 0xf7, 0x63, 0x21, 0x2f, 0x28, 0xda, + 0x1c, 0x4b, 0xbc, 0xac, 0x38, 0x68, 0xbd, 0xe0, 0xa7, 0x66, 0xac, 0xd1, + 0x00, 0xb0, 0xea, 0xdd, 0x7f, 0x4c, 0x47, 0xe4, 0x2a, 0x4d, 0x68, 0x2b, + 0xf1, 0xce, 0xec, 0xf6, 0x21, 0xb4, 0xbd, 0x5a, 0xaa, 0xb6, 0x8e, 0x04, + 0x6c, 0xa5, 0xd7, 0x4b, +}; +static const struct drbg_kat_no_reseed kat416_t = { + 10, kat416_entropyin, kat416_nonce, kat416_persstr, + kat416_addin0, kat416_addin1, kat416_retbits +}; +static const struct drbg_kat kat416 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat416_t +}; + +static const unsigned char kat417_entropyin[] = { + 0xb8, 0x1a, 0xc1, 0x61, 0xf0, 0x41, 0x97, 0x73, 0x3b, 0xd1, 0xbb, 0xaf, + 0x9e, 0xda, 0x79, 0xee, 0x51, 0xa8, 0x61, 0xf8, 0x0b, 0xd8, 0xc1, 0x2d, +}; +static const unsigned char kat417_nonce[] = { + 0x5c, 0x9e, 0x5f, 0xcf, 0x06, 0x2d, 0xe1, 0x14, 0x52, 0x3f, 0x55, 0x4b, + 0x64, 0xc9, 0x35, 0xeb, +}; +static const unsigned char kat417_persstr[] = { + 0x6f, 0xb5, 0xf7, 0x5a, 0x56, 0x31, 0x93, 0x08, 0x4e, 0x96, 0xed, 0x39, + 0x4e, 0x69, 0x61, 0x81, 0x88, 0x5b, 0xb2, 0xbc, 0x7b, 0x63, 0x56, 0x22, + 0x66, 0xdc, 0x4b, 0x97, 0x99, 0x9d, 0x25, 0xd8, +}; +static const unsigned char kat417_addin0[] = { + 0xfd, 0x53, 0xb9, 0x23, 0x44, 0x4f, 0x97, 0x58, 0x6b, 0xec, 0x15, 0x50, + 0xa7, 0x4f, 0x36, 0x6c, 0xa9, 0x28, 0xbf, 0xb7, 0xab, 0xf6, 0xd1, 0xcf, + 0xe2, 0x44, 0xc2, 0x5b, 0x3a, 0xd9, 0x5f, 0xb7, +}; +static const unsigned char kat417_addin1[] = { + 0xaf, 0x46, 0xc2, 0x6d, 0xb8, 0x46, 0xbf, 0x6e, 0x9e, 0x82, 0xb0, 0xe8, + 0x68, 0x2d, 0x0b, 0x4e, 0xe8, 0x72, 0x8c, 0x76, 0xb5, 0x26, 0x48, 0xe3, + 0xfc, 0xca, 0x0d, 0xa8, 0x82, 0x22, 0xe5, 0xe7, +}; +static const unsigned char kat417_retbits[] = { + 0xc6, 0x62, 0x0e, 0x78, 0x0d, 0x72, 0x3d, 0xb4, 0x54, 0xea, 0xc8, 0x25, + 0xd1, 0x21, 0x81, 0x4b, 0xaa, 0x55, 0xf2, 0x1a, 0x9a, 0xe8, 0xae, 0x59, + 0x7c, 0xd0, 0x27, 0xc5, 0xcb, 0x13, 0xdc, 0x40, 0x72, 0xaa, 0xec, 0xbc, + 0xb4, 0x78, 0xdd, 0xca, 0x61, 0x22, 0x18, 0x6d, 0xd4, 0x7f, 0x90, 0x43, + 0xd2, 0x82, 0x8b, 0x5a, 0xf8, 0x5d, 0x01, 0x1b, 0xcf, 0xb9, 0x9d, 0x58, + 0x8b, 0x0c, 0x7b, 0xcd, +}; +static const struct drbg_kat_no_reseed kat417_t = { + 11, kat417_entropyin, kat417_nonce, kat417_persstr, + kat417_addin0, kat417_addin1, kat417_retbits +}; +static const struct drbg_kat kat417 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat417_t +}; + +static const unsigned char kat418_entropyin[] = { + 0x39, 0xdf, 0x42, 0x18, 0xbf, 0xf3, 0x1d, 0xd0, 0x10, 0x85, 0x96, 0x9a, + 0xb9, 0xf4, 0x81, 0x88, 0xb0, 0x11, 0x2e, 0xef, 0x75, 0x9e, 0xbc, 0x4e, +}; +static const unsigned char kat418_nonce[] = { + 0x3e, 0x34, 0x41, 0xc2, 0x96, 0x66, 0xa5, 0xbd, 0x31, 0x37, 0xa3, 0x0c, + 0x6d, 0x05, 0x05, 0x3e, +}; +static const unsigned char kat418_persstr[] = { + 0xd3, 0x82, 0xb3, 0xd6, 0x57, 0x73, 0xa9, 0xd6, 0x38, 0xfa, 0x83, 0x77, + 0xd9, 0xc0, 0x95, 0xa6, 0x7a, 0xb3, 0x36, 0xc5, 0x5d, 0xfd, 0xb8, 0x5d, + 0x45, 0x70, 0x31, 0x05, 0x85, 0x71, 0xc5, 0x72, +}; +static const unsigned char kat418_addin0[] = { + 0xbd, 0xcd, 0xa7, 0xac, 0x59, 0x0a, 0x56, 0xc1, 0x50, 0xca, 0x85, 0x80, + 0x55, 0x29, 0x9c, 0x63, 0x86, 0x12, 0xfe, 0x04, 0x57, 0xc1, 0x8f, 0xbd, + 0x5a, 0x92, 0x04, 0x5f, 0x32, 0x58, 0x71, 0x95, +}; +static const unsigned char kat418_addin1[] = { + 0xf4, 0x70, 0x51, 0xf2, 0xc2, 0x9a, 0xbc, 0xf5, 0x7a, 0xf9, 0x23, 0xf1, + 0xe0, 0x8c, 0x22, 0x85, 0x88, 0x06, 0xda, 0x9c, 0xfe, 0x14, 0x27, 0x57, + 0x21, 0x50, 0x20, 0xba, 0x67, 0x63, 0x80, 0x95, +}; +static const unsigned char kat418_retbits[] = { + 0x1a, 0xa4, 0x1b, 0x4b, 0x31, 0x42, 0xd6, 0x11, 0xec, 0x62, 0x27, 0x62, + 0x42, 0xe7, 0x2a, 0x84, 0x0f, 0x82, 0xf5, 0x5e, 0x22, 0xa7, 0xc9, 0xd3, + 0xa3, 0x40, 0xa9, 0x3b, 0x43, 0x64, 0x8d, 0xa7, 0x5d, 0xd7, 0x3c, 0xae, + 0x3d, 0xc6, 0xa6, 0x0c, 0x9d, 0x59, 0x6c, 0x72, 0x3f, 0xf8, 0xd2, 0xf8, + 0xac, 0x6e, 0x6e, 0x23, 0x18, 0x32, 0xfd, 0x29, 0x7b, 0x54, 0xf3, 0xd8, + 0xd5, 0x89, 0xfe, 0xe8, +}; +static const struct drbg_kat_no_reseed kat418_t = { + 12, kat418_entropyin, kat418_nonce, kat418_persstr, + kat418_addin0, kat418_addin1, kat418_retbits +}; +static const struct drbg_kat kat418 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat418_t +}; + +static const unsigned char kat419_entropyin[] = { + 0x7d, 0x8c, 0x64, 0x8e, 0xf9, 0x6f, 0xbe, 0xc0, 0xf8, 0x17, 0x9a, 0xce, + 0xcc, 0x55, 0x56, 0x9d, 0x3b, 0xf4, 0x56, 0xce, 0x3b, 0xb2, 0xcf, 0x73, +}; +static const unsigned char kat419_nonce[] = { + 0x78, 0x18, 0x93, 0xf4, 0xf3, 0xf3, 0x6b, 0x0d, 0x92, 0xd3, 0xb1, 0xac, + 0xe6, 0xd5, 0x05, 0xa3, +}; +static const unsigned char kat419_persstr[] = { + 0x80, 0x0f, 0xef, 0x9c, 0xac, 0xf3, 0xf9, 0x1c, 0x04, 0x39, 0x6a, 0x52, + 0xc7, 0xd3, 0xee, 0x6c, 0x64, 0x78, 0x91, 0x16, 0x0e, 0x35, 0x01, 0x0a, + 0x4f, 0xd5, 0x02, 0xe5, 0x1d, 0x6d, 0xd6, 0x2c, +}; +static const unsigned char kat419_addin0[] = { + 0x0f, 0x60, 0x97, 0x74, 0xdb, 0xb0, 0xbb, 0x50, 0x57, 0x12, 0x27, 0x38, + 0xd8, 0xf7, 0x66, 0x56, 0xb1, 0xb7, 0x05, 0xc4, 0xe4, 0x47, 0xb0, 0x0b, + 0x7d, 0xf8, 0x4c, 0xa2, 0x9f, 0xf8, 0x15, 0xe2, +}; +static const unsigned char kat419_addin1[] = { + 0x9e, 0x7d, 0x9c, 0xed, 0x55, 0x0e, 0x42, 0x79, 0x90, 0xc3, 0xe2, 0x36, + 0xb7, 0x48, 0xb9, 0xd8, 0xb1, 0x90, 0xaa, 0xe4, 0x10, 0x70, 0x01, 0x5e, + 0xb2, 0x36, 0x97, 0x4b, 0x53, 0x4f, 0x0e, 0x25, +}; +static const unsigned char kat419_retbits[] = { + 0x3b, 0xd0, 0x3c, 0x79, 0xf0, 0x36, 0x87, 0x99, 0x9b, 0x14, 0x7f, 0x39, + 0xc8, 0x79, 0xfc, 0x7c, 0x0d, 0x34, 0xd0, 0x04, 0x44, 0x5d, 0x75, 0xc7, + 0x15, 0x98, 0xff, 0xd5, 0x5e, 0x3f, 0xc5, 0x5c, 0x0e, 0x17, 0x33, 0x18, + 0x26, 0xac, 0x7d, 0xee, 0x4a, 0x8e, 0x6b, 0xa7, 0x98, 0x6f, 0x1d, 0x5c, + 0x84, 0x8c, 0x36, 0x36, 0x62, 0x8f, 0x4d, 0xbf, 0x9e, 0x67, 0xbe, 0xa5, + 0x72, 0x37, 0xd8, 0x86, +}; +static const struct drbg_kat_no_reseed kat419_t = { + 13, kat419_entropyin, kat419_nonce, kat419_persstr, + kat419_addin0, kat419_addin1, kat419_retbits +}; +static const struct drbg_kat kat419 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat419_t +}; + +static const unsigned char kat420_entropyin[] = { + 0x57, 0x45, 0xb2, 0x30, 0x14, 0x84, 0x54, 0xda, 0x9c, 0x4d, 0xd1, 0x2c, + 0xe1, 0xde, 0xdb, 0x5b, 0x14, 0x8f, 0x5b, 0xbe, 0x44, 0x56, 0x80, 0xc7, +}; +static const unsigned char kat420_nonce[] = { + 0x73, 0x8a, 0xb9, 0x6e, 0x37, 0xad, 0x97, 0x1b, 0x7f, 0x5a, 0x38, 0x70, + 0x38, 0x3f, 0xc1, 0x72, +}; +static const unsigned char kat420_persstr[] = { + 0x4d, 0xd3, 0x59, 0x3e, 0x0f, 0xa4, 0x94, 0xbf, 0xda, 0x36, 0x5b, 0x5f, + 0xc4, 0xe5, 0x48, 0x28, 0x01, 0xe5, 0xc3, 0x99, 0xa6, 0x5f, 0xc6, 0x98, + 0x62, 0x49, 0xbf, 0xd9, 0x4b, 0xe7, 0xb5, 0xa6, +}; +static const unsigned char kat420_addin0[] = { + 0x80, 0xc1, 0xe2, 0xbb, 0x60, 0xd2, 0x2c, 0x8c, 0xe4, 0x4a, 0x2a, 0xbb, + 0x7a, 0x19, 0xdd, 0x60, 0xed, 0x6a, 0x38, 0x09, 0x8f, 0x2b, 0x09, 0x84, + 0x59, 0x71, 0x6a, 0xee, 0xf2, 0x47, 0x4e, 0xad, +}; +static const unsigned char kat420_addin1[] = { + 0xc9, 0x6c, 0xf9, 0x96, 0xb2, 0xe9, 0xce, 0xb9, 0xa5, 0x78, 0x23, 0x80, + 0x0f, 0x89, 0x0c, 0x8c, 0xcf, 0xea, 0xfa, 0xc7, 0x9c, 0x96, 0x95, 0xca, + 0x21, 0xf0, 0xbb, 0x6f, 0x6f, 0xcf, 0x97, 0xa7, +}; +static const unsigned char kat420_retbits[] = { + 0x8a, 0x7a, 0x6d, 0x38, 0x3f, 0x34, 0x4a, 0xd7, 0x17, 0xda, 0x7c, 0x04, + 0x4d, 0x94, 0x77, 0xe8, 0x14, 0x33, 0xe0, 0x4d, 0x3b, 0x9a, 0xe4, 0x33, + 0x4e, 0xce, 0x15, 0xe1, 0x0d, 0x7d, 0xfa, 0xa1, 0xca, 0xc7, 0x9d, 0xed, + 0x51, 0x7a, 0xb3, 0xe2, 0x4c, 0xf1, 0xd3, 0x1d, 0x34, 0x05, 0x90, 0x74, + 0x5f, 0xea, 0x2e, 0xef, 0x91, 0x53, 0x20, 0x4c, 0x12, 0x09, 0x43, 0x75, + 0xbb, 0x3c, 0x4e, 0xfa, +}; +static const struct drbg_kat_no_reseed kat420_t = { + 14, kat420_entropyin, kat420_nonce, kat420_persstr, + kat420_addin0, kat420_addin1, kat420_retbits +}; +static const struct drbg_kat kat420 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat420_t +}; + +static const unsigned char kat421_entropyin[] = { + 0xab, 0x85, 0x43, 0x81, 0x85, 0x45, 0x57, 0x3c, 0xa2, 0x17, 0xce, 0x4b, + 0x84, 0x4b, 0x9c, 0x39, 0x66, 0x70, 0x36, 0x20, 0x78, 0x4f, 0x1e, 0xec, +}; +static const unsigned char kat421_nonce[] = { + 0x4d, 0x1a, 0xb7, 0x1f, 0x18, 0x24, 0x56, 0x0a, 0xf0, 0xde, 0xb8, 0x65, + 0xba, 0x4b, 0x66, 0x20, +}; +static const unsigned char kat421_persstr[] = {0}; +static const unsigned char kat421_addin0[] = {0}; +static const unsigned char kat421_addin1[] = {0}; +static const unsigned char kat421_retbits[] = { + 0xcd, 0xd9, 0xab, 0xe9, 0x52, 0x6b, 0xc9, 0x18, 0x0c, 0xf6, 0x4b, 0xa2, + 0x67, 0x9d, 0x4c, 0x10, 0x1a, 0x5a, 0x8b, 0x52, 0x44, 0xf9, 0x32, 0x2a, + 0xff, 0x8a, 0x92, 0xed, 0x1d, 0x48, 0xa7, 0x7c, 0xe2, 0x0e, 0x39, 0xd1, + 0x91, 0x5e, 0x9a, 0x52, 0x75, 0xe8, 0xa1, 0xfe, 0x7a, 0x5a, 0xa8, 0xa2, + 0x8b, 0x06, 0x42, 0xda, 0xae, 0x9a, 0x70, 0xdc, 0x9e, 0xe4, 0xea, 0x76, + 0xac, 0x03, 0x82, 0x74, +}; +static const struct drbg_kat_no_reseed kat421_t = { + 0, kat421_entropyin, kat421_nonce, kat421_persstr, + kat421_addin0, kat421_addin1, kat421_retbits +}; +static const struct drbg_kat kat421 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat421_t +}; + +static const unsigned char kat422_entropyin[] = { + 0x20, 0xb0, 0x1e, 0x96, 0x04, 0xd2, 0x63, 0x26, 0xb8, 0x6c, 0x4b, 0xb2, + 0x2b, 0x6c, 0x8b, 0x97, 0x4e, 0x2a, 0x42, 0xf5, 0xcb, 0x92, 0x04, 0xef, +}; +static const unsigned char kat422_nonce[] = { + 0x9f, 0x9d, 0x96, 0xd1, 0x25, 0x01, 0x07, 0x69, 0x45, 0x65, 0xf5, 0x0e, + 0xf0, 0x5e, 0xe2, 0xd9, +}; +static const unsigned char kat422_persstr[] = {0}; +static const unsigned char kat422_addin0[] = {0}; +static const unsigned char kat422_addin1[] = {0}; +static const unsigned char kat422_retbits[] = { + 0x8c, 0x50, 0xe7, 0x36, 0x58, 0x38, 0x94, 0x89, 0x10, 0x32, 0xe5, 0xc3, + 0xa4, 0xf5, 0x09, 0x85, 0x44, 0x63, 0x68, 0x7c, 0xd1, 0xa4, 0xd1, 0x0b, + 0x77, 0x76, 0x0b, 0xbb, 0xea, 0xc8, 0x3b, 0xc7, 0xd9, 0xb6, 0x00, 0xaa, + 0x2f, 0xd3, 0xb1, 0xc2, 0x42, 0x10, 0xba, 0x25, 0xe2, 0x16, 0xec, 0x40, + 0x19, 0xaa, 0x7f, 0x75, 0xb7, 0x4d, 0x50, 0x6b, 0xa0, 0x91, 0x3f, 0xaa, + 0xab, 0xd0, 0x11, 0xbb, +}; +static const struct drbg_kat_no_reseed kat422_t = { + 1, kat422_entropyin, kat422_nonce, kat422_persstr, + kat422_addin0, kat422_addin1, kat422_retbits +}; +static const struct drbg_kat kat422 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat422_t +}; + +static const unsigned char kat423_entropyin[] = { + 0xd3, 0xed, 0x0d, 0x0b, 0xb5, 0x00, 0xf7, 0x35, 0xba, 0x08, 0x96, 0xc5, + 0x1f, 0x72, 0x34, 0xd5, 0x7f, 0x32, 0x98, 0xab, 0x72, 0x71, 0xfb, 0x8c, +}; +static const unsigned char kat423_nonce[] = { + 0x33, 0x6d, 0xcd, 0x6b, 0xfb, 0x58, 0xea, 0x09, 0x3b, 0x92, 0x3e, 0xeb, + 0xc8, 0x44, 0xec, 0x64, +}; +static const unsigned char kat423_persstr[] = {0}; +static const unsigned char kat423_addin0[] = {0}; +static const unsigned char kat423_addin1[] = {0}; +static const unsigned char kat423_retbits[] = { + 0xe7, 0xd9, 0xc7, 0x98, 0x11, 0x5e, 0xc4, 0x2e, 0x0a, 0xf0, 0x3e, 0x91, + 0xd8, 0x9d, 0x66, 0x32, 0x31, 0xdf, 0xb8, 0xdb, 0x11, 0x87, 0xe4, 0x37, + 0x17, 0x89, 0x9e, 0x1f, 0x80, 0x9f, 0x86, 0xfc, 0x0d, 0x59, 0x85, 0x70, + 0x98, 0x21, 0xed, 0xb8, 0xf6, 0x05, 0x45, 0xbf, 0x92, 0x2a, 0x82, 0x8e, + 0x8a, 0xc9, 0xc5, 0xba, 0x36, 0x23, 0xc2, 0xcf, 0x81, 0x67, 0x1e, 0xc3, + 0x36, 0x77, 0xbf, 0xdd, +}; +static const struct drbg_kat_no_reseed kat423_t = { + 2, kat423_entropyin, kat423_nonce, kat423_persstr, + kat423_addin0, kat423_addin1, kat423_retbits +}; +static const struct drbg_kat kat423 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat423_t +}; + +static const unsigned char kat424_entropyin[] = { + 0xfb, 0xf3, 0xc2, 0x67, 0x26, 0x4f, 0x54, 0xe4, 0x56, 0xcc, 0x56, 0xd1, + 0xe0, 0xae, 0x7f, 0xd2, 0xe5, 0x84, 0x74, 0x99, 0x71, 0x6e, 0x15, 0x80, +}; +static const unsigned char kat424_nonce[] = { + 0xbf, 0x60, 0xb7, 0x1c, 0xb1, 0x3f, 0xfb, 0xf2, 0x8d, 0x20, 0xf9, 0x68, + 0x23, 0x0c, 0x17, 0x11, +}; +static const unsigned char kat424_persstr[] = {0}; +static const unsigned char kat424_addin0[] = {0}; +static const unsigned char kat424_addin1[] = {0}; +static const unsigned char kat424_retbits[] = { + 0xec, 0x04, 0xec, 0x06, 0xaa, 0xe2, 0x0e, 0x31, 0x10, 0x1e, 0x8f, 0x3e, + 0x80, 0x57, 0x81, 0x3b, 0x15, 0xe0, 0x48, 0xc6, 0xbf, 0x05, 0x33, 0x2c, + 0x10, 0x82, 0x02, 0x4b, 0xde, 0x43, 0xbc, 0x69, 0xa3, 0xf9, 0x44, 0x4f, + 0x4a, 0xe9, 0x8e, 0xfb, 0xab, 0xf3, 0xd9, 0x86, 0x32, 0x7a, 0xf0, 0xc9, + 0x3b, 0x17, 0xf5, 0xd4, 0xe1, 0x3a, 0xf7, 0xa7, 0xe2, 0x19, 0xbc, 0x93, + 0xb6, 0xd2, 0x59, 0xc4, +}; +static const struct drbg_kat_no_reseed kat424_t = { + 3, kat424_entropyin, kat424_nonce, kat424_persstr, + kat424_addin0, kat424_addin1, kat424_retbits +}; +static const struct drbg_kat kat424 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat424_t +}; + +static const unsigned char kat425_entropyin[] = { + 0x3e, 0x19, 0x1f, 0xf8, 0x92, 0x64, 0x4d, 0x77, 0x03, 0x1b, 0x24, 0xbf, + 0x3d, 0xd6, 0xdd, 0x70, 0x4a, 0x97, 0x40, 0xd2, 0x55, 0x8c, 0xb9, 0xbe, +}; +static const unsigned char kat425_nonce[] = { + 0x88, 0x89, 0x1f, 0xb2, 0x5e, 0x11, 0xb8, 0x6a, 0xba, 0x15, 0xc2, 0x46, + 0x08, 0xfc, 0x0e, 0xcf, +}; +static const unsigned char kat425_persstr[] = {0}; +static const unsigned char kat425_addin0[] = {0}; +static const unsigned char kat425_addin1[] = {0}; +static const unsigned char kat425_retbits[] = { + 0x96, 0x71, 0x23, 0xe1, 0x3a, 0x69, 0xb8, 0xda, 0xb5, 0x2f, 0x08, 0x7b, + 0xf4, 0xa2, 0x1e, 0x43, 0x81, 0x20, 0xd1, 0xcf, 0x0e, 0x8e, 0xfc, 0x7c, + 0x12, 0x20, 0x73, 0x25, 0x99, 0xff, 0x67, 0x85, 0xe0, 0x2e, 0x0d, 0xf6, + 0xdf, 0x95, 0xc5, 0x0f, 0xb7, 0xcf, 0x6c, 0xf5, 0x7f, 0x13, 0xad, 0xae, + 0x64, 0xc2, 0xf8, 0xac, 0x00, 0xf5, 0x38, 0xeb, 0x4a, 0x7d, 0x24, 0x02, + 0x5e, 0x05, 0x01, 0xcb, +}; +static const struct drbg_kat_no_reseed kat425_t = { + 4, kat425_entropyin, kat425_nonce, kat425_persstr, + kat425_addin0, kat425_addin1, kat425_retbits +}; +static const struct drbg_kat kat425 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat425_t +}; + +static const unsigned char kat426_entropyin[] = { + 0xf3, 0xd7, 0xd0, 0x1a, 0x2c, 0xb2, 0x73, 0x1b, 0xb1, 0xd6, 0xe9, 0x9a, + 0x16, 0x74, 0x5f, 0x31, 0x9a, 0x61, 0x7e, 0xf9, 0x5d, 0xcb, 0x55, 0x0f, +}; +static const unsigned char kat426_nonce[] = { + 0x8a, 0x4d, 0x89, 0x0e, 0x32, 0x30, 0xff, 0x9a, 0x1e, 0xea, 0x9a, 0x66, + 0x47, 0x9e, 0x92, 0x6f, +}; +static const unsigned char kat426_persstr[] = {0}; +static const unsigned char kat426_addin0[] = {0}; +static const unsigned char kat426_addin1[] = {0}; +static const unsigned char kat426_retbits[] = { + 0x3c, 0xee, 0xf6, 0x0f, 0x8b, 0x23, 0xe5, 0x0e, 0x7d, 0x49, 0xa3, 0x0a, + 0xc2, 0xc4, 0xfd, 0x4d, 0xcc, 0xe3, 0xa1, 0x6f, 0x94, 0x33, 0x0a, 0xe7, + 0xff, 0xf7, 0xf2, 0x7f, 0x3d, 0x56, 0x9f, 0x25, 0x30, 0x0d, 0x59, 0xfe, + 0x87, 0xff, 0x7d, 0x75, 0xce, 0x90, 0xcd, 0x99, 0xe9, 0x4b, 0xa4, 0xf4, + 0xca, 0x30, 0xd7, 0x0c, 0x75, 0x97, 0x93, 0xbb, 0xcf, 0x7b, 0xce, 0x44, + 0xc2, 0x1d, 0xd8, 0x42, +}; +static const struct drbg_kat_no_reseed kat426_t = { + 5, kat426_entropyin, kat426_nonce, kat426_persstr, + kat426_addin0, kat426_addin1, kat426_retbits +}; +static const struct drbg_kat kat426 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat426_t +}; + +static const unsigned char kat427_entropyin[] = { + 0xd7, 0x69, 0x0e, 0x2a, 0xce, 0x3c, 0x17, 0x4e, 0x9d, 0x1c, 0x8c, 0xdc, + 0x1c, 0x9c, 0xda, 0x65, 0x83, 0x15, 0x26, 0x61, 0x11, 0x05, 0x19, 0x8b, +}; +static const unsigned char kat427_nonce[] = { + 0xb0, 0xa1, 0x1c, 0xfb, 0x27, 0x44, 0xae, 0x7b, 0x0d, 0x67, 0x5e, 0xd0, + 0xbf, 0x26, 0x34, 0xa9, +}; +static const unsigned char kat427_persstr[] = {0}; +static const unsigned char kat427_addin0[] = {0}; +static const unsigned char kat427_addin1[] = {0}; +static const unsigned char kat427_retbits[] = { + 0xd3, 0xea, 0x3d, 0xc6, 0x29, 0x6e, 0x36, 0x40, 0xf2, 0x2e, 0x75, 0xee, + 0x27, 0xe9, 0xf7, 0xf3, 0xc7, 0xff, 0x06, 0xf1, 0x79, 0x4d, 0x91, 0x5e, + 0x4f, 0xe9, 0xa4, 0x71, 0x43, 0x13, 0x17, 0xd0, 0x9d, 0x80, 0x17, 0x1b, + 0x1e, 0x7f, 0xd8, 0xfc, 0x57, 0xd8, 0xb8, 0xd1, 0xd1, 0xfa, 0x61, 0x16, + 0x2b, 0xbf, 0xc5, 0x67, 0x43, 0x83, 0x57, 0x42, 0xb4, 0xd5, 0x26, 0x66, + 0x6c, 0xf5, 0xcc, 0x03, +}; +static const struct drbg_kat_no_reseed kat427_t = { + 6, kat427_entropyin, kat427_nonce, kat427_persstr, + kat427_addin0, kat427_addin1, kat427_retbits +}; +static const struct drbg_kat kat427 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat427_t +}; + +static const unsigned char kat428_entropyin[] = { + 0x82, 0x51, 0xbb, 0x48, 0x80, 0x97, 0xe7, 0xd0, 0x7f, 0x41, 0xa7, 0x68, + 0xc1, 0xf3, 0x7c, 0x42, 0x11, 0x80, 0xc9, 0x8e, 0xf5, 0x9b, 0x73, 0x0b, +}; +static const unsigned char kat428_nonce[] = { + 0xb7, 0x2b, 0xc5, 0x2b, 0x35, 0x8c, 0x79, 0x33, 0xa3, 0x16, 0xb1, 0x7c, + 0xbf, 0x07, 0xcc, 0x02, +}; +static const unsigned char kat428_persstr[] = {0}; +static const unsigned char kat428_addin0[] = {0}; +static const unsigned char kat428_addin1[] = {0}; +static const unsigned char kat428_retbits[] = { + 0x31, 0xf3, 0x57, 0xab, 0xf5, 0xa2, 0xa0, 0x21, 0xee, 0x7e, 0x0e, 0xfb, + 0xad, 0x1f, 0xcb, 0x58, 0x11, 0x8e, 0x1b, 0xeb, 0xe4, 0x2e, 0xf6, 0x5a, + 0xc8, 0xcc, 0x93, 0xd6, 0xd0, 0xe5, 0x4f, 0x5a, 0xf7, 0xc4, 0x02, 0x2f, + 0x34, 0x3a, 0xd6, 0x3e, 0xfc, 0x94, 0xd9, 0x50, 0x35, 0x4b, 0x83, 0x8a, + 0x37, 0x8c, 0xc7, 0x7f, 0x20, 0xf7, 0x59, 0x70, 0x5b, 0xce, 0x43, 0xd8, + 0x73, 0x4e, 0x71, 0x7b, +}; +static const struct drbg_kat_no_reseed kat428_t = { + 7, kat428_entropyin, kat428_nonce, kat428_persstr, + kat428_addin0, kat428_addin1, kat428_retbits +}; +static const struct drbg_kat kat428 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat428_t +}; + +static const unsigned char kat429_entropyin[] = { + 0xab, 0xdb, 0x2e, 0xd2, 0xe0, 0x9a, 0xa0, 0x0d, 0x4c, 0x39, 0x4f, 0x80, + 0xfc, 0x0d, 0x5b, 0xf2, 0x13, 0xb4, 0x28, 0x3b, 0x76, 0x8b, 0x58, 0x12, +}; +static const unsigned char kat429_nonce[] = { + 0x89, 0xe1, 0x9d, 0xb4, 0x2a, 0x96, 0x2a, 0x1d, 0x35, 0xd4, 0x9c, 0xb8, + 0xc6, 0x43, 0xb7, 0x13, +}; +static const unsigned char kat429_persstr[] = {0}; +static const unsigned char kat429_addin0[] = {0}; +static const unsigned char kat429_addin1[] = {0}; +static const unsigned char kat429_retbits[] = { + 0x06, 0x7a, 0xe3, 0xea, 0x23, 0x04, 0x91, 0x71, 0x47, 0xcf, 0xf9, 0x76, + 0x86, 0x4d, 0x9b, 0x89, 0x4f, 0xb3, 0x8b, 0x1c, 0x8b, 0x0e, 0x57, 0x12, + 0x56, 0x47, 0x4a, 0x8e, 0x3c, 0x60, 0x20, 0x99, 0x6d, 0x16, 0x9c, 0x04, + 0x15, 0x45, 0x46, 0x64, 0x97, 0x6a, 0xdf, 0x95, 0x05, 0xc5, 0x3b, 0x5e, + 0x94, 0x6b, 0x4d, 0x0e, 0x65, 0x06, 0x67, 0x50, 0xcf, 0x0d, 0xe1, 0x41, + 0xe8, 0x46, 0x0b, 0x0b, +}; +static const struct drbg_kat_no_reseed kat429_t = { + 8, kat429_entropyin, kat429_nonce, kat429_persstr, + kat429_addin0, kat429_addin1, kat429_retbits +}; +static const struct drbg_kat kat429 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat429_t +}; + +static const unsigned char kat430_entropyin[] = { + 0x4a, 0x44, 0x10, 0x1f, 0x7a, 0x1f, 0x22, 0xb1, 0x7e, 0x7c, 0xcc, 0x91, + 0xe9, 0x78, 0x9f, 0xcc, 0x6f, 0x1b, 0x4d, 0xc3, 0x09, 0x72, 0x56, 0x7b, +}; +static const unsigned char kat430_nonce[] = { + 0xcb, 0x9f, 0xc3, 0xd4, 0x52, 0xf6, 0xcb, 0xe5, 0xc9, 0x83, 0x1e, 0x65, + 0x37, 0x02, 0x7d, 0x94, +}; +static const unsigned char kat430_persstr[] = {0}; +static const unsigned char kat430_addin0[] = {0}; +static const unsigned char kat430_addin1[] = {0}; +static const unsigned char kat430_retbits[] = { + 0xd9, 0x3b, 0x85, 0x86, 0xd6, 0x10, 0x91, 0xe3, 0xbb, 0xef, 0x18, 0x7e, + 0x5f, 0xed, 0x6a, 0x2b, 0x17, 0x00, 0xe9, 0x34, 0x10, 0x86, 0x6d, 0x10, + 0xbc, 0x02, 0xd3, 0xa6, 0x22, 0xa0, 0xa8, 0xb3, 0x8d, 0x8b, 0x08, 0x33, + 0x61, 0xad, 0x53, 0x19, 0x7b, 0xc1, 0x81, 0x17, 0x68, 0x20, 0x6e, 0x54, + 0x11, 0x15, 0xbf, 0x96, 0x12, 0x19, 0x65, 0xc1, 0x6d, 0x32, 0xe1, 0xc1, + 0x78, 0x0e, 0x4f, 0x24, +}; +static const struct drbg_kat_no_reseed kat430_t = { + 9, kat430_entropyin, kat430_nonce, kat430_persstr, + kat430_addin0, kat430_addin1, kat430_retbits +}; +static const struct drbg_kat kat430 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat430_t +}; + +static const unsigned char kat431_entropyin[] = { + 0xf5, 0xa4, 0x66, 0x2d, 0x9f, 0x51, 0x56, 0xd3, 0xbc, 0x28, 0x2a, 0x4b, + 0xf8, 0x2e, 0x5d, 0x97, 0x73, 0x1d, 0x36, 0xc0, 0x01, 0x79, 0xad, 0xab, +}; +static const unsigned char kat431_nonce[] = { + 0x3e, 0x5e, 0x20, 0x38, 0x62, 0xbc, 0x32, 0x8e, 0x99, 0x87, 0xa7, 0x21, + 0x89, 0x7d, 0x47, 0xcd, +}; +static const unsigned char kat431_persstr[] = {0}; +static const unsigned char kat431_addin0[] = {0}; +static const unsigned char kat431_addin1[] = {0}; +static const unsigned char kat431_retbits[] = { + 0x5e, 0x08, 0xab, 0x01, 0xb0, 0xa4, 0xca, 0x99, 0x2d, 0xa9, 0x96, 0xf1, + 0x64, 0x34, 0x1b, 0xe4, 0xe2, 0x01, 0xef, 0x0d, 0x1c, 0xd0, 0x49, 0xef, + 0xf6, 0x60, 0x59, 0x5a, 0x70, 0xce, 0xf1, 0x72, 0x31, 0x79, 0xcc, 0x58, + 0x8c, 0xa5, 0x2d, 0xe7, 0xef, 0xde, 0x20, 0x6a, 0x15, 0xed, 0x7a, 0xb4, + 0x14, 0xea, 0x7c, 0xfc, 0xf6, 0x71, 0xa0, 0x5c, 0xe9, 0x53, 0x43, 0x76, + 0x39, 0xa5, 0x8c, 0x1d, +}; +static const struct drbg_kat_no_reseed kat431_t = { + 10, kat431_entropyin, kat431_nonce, kat431_persstr, + kat431_addin0, kat431_addin1, kat431_retbits +}; +static const struct drbg_kat kat431 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat431_t +}; + +static const unsigned char kat432_entropyin[] = { + 0x10, 0xb6, 0xe2, 0x73, 0x3b, 0xa8, 0x56, 0x03, 0xdf, 0xd5, 0xd5, 0xaa, + 0x5a, 0x20, 0x67, 0x52, 0xa0, 0xf6, 0x07, 0xf9, 0xd4, 0xd3, 0xd7, 0x3c, +}; +static const unsigned char kat432_nonce[] = { + 0xc0, 0xc2, 0x80, 0xae, 0x01, 0x4d, 0xf2, 0x00, 0xd0, 0x2c, 0xcd, 0x5b, + 0x79, 0xfd, 0x81, 0xb0, +}; +static const unsigned char kat432_persstr[] = {0}; +static const unsigned char kat432_addin0[] = {0}; +static const unsigned char kat432_addin1[] = {0}; +static const unsigned char kat432_retbits[] = { + 0x9a, 0xf4, 0x6d, 0xc0, 0x1a, 0xa8, 0x60, 0xd9, 0xf1, 0xea, 0x68, 0xd3, + 0xef, 0x57, 0x33, 0x17, 0x50, 0x3e, 0x54, 0x65, 0x63, 0x63, 0xb5, 0x70, + 0xae, 0x26, 0x3b, 0x37, 0x60, 0xdc, 0x17, 0x49, 0x43, 0xe1, 0x81, 0x5f, + 0x97, 0x2c, 0xab, 0xbb, 0x42, 0xe6, 0x00, 0x90, 0x19, 0x29, 0x55, 0x3f, + 0x76, 0x73, 0x9e, 0x2d, 0x29, 0xf7, 0x7c, 0x5d, 0xd1, 0x13, 0x13, 0x8c, + 0xdf, 0x97, 0x11, 0x3e, +}; +static const struct drbg_kat_no_reseed kat432_t = { + 11, kat432_entropyin, kat432_nonce, kat432_persstr, + kat432_addin0, kat432_addin1, kat432_retbits +}; +static const struct drbg_kat kat432 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat432_t +}; + +static const unsigned char kat433_entropyin[] = { + 0x55, 0xfb, 0x21, 0x93, 0x9e, 0xbd, 0x06, 0xd2, 0x93, 0x2b, 0x6b, 0xce, + 0x9e, 0x02, 0x3e, 0x62, 0x35, 0x55, 0xf2, 0x7d, 0x73, 0xfa, 0xd8, 0x3a, +}; +static const unsigned char kat433_nonce[] = { + 0x43, 0x65, 0x9f, 0x6b, 0xbb, 0x52, 0xf4, 0x16, 0xae, 0x94, 0x17, 0x90, + 0x8b, 0xeb, 0x7b, 0x2c, +}; +static const unsigned char kat433_persstr[] = {0}; +static const unsigned char kat433_addin0[] = {0}; +static const unsigned char kat433_addin1[] = {0}; +static const unsigned char kat433_retbits[] = { + 0x41, 0xe8, 0x0b, 0x17, 0xf8, 0x52, 0xdb, 0xf0, 0xe3, 0x1e, 0xbe, 0x51, + 0x27, 0xf8, 0xc5, 0x28, 0xd0, 0x67, 0x44, 0x9a, 0xe6, 0xaa, 0x03, 0xc6, + 0x82, 0x5b, 0xb4, 0xc5, 0xdc, 0xc6, 0xad, 0x5a, 0x72, 0x84, 0x12, 0x13, + 0x30, 0x77, 0xc6, 0x8c, 0xba, 0x1e, 0x40, 0x33, 0xd7, 0x19, 0x85, 0x6b, + 0xbb, 0x30, 0xd0, 0x4b, 0x82, 0xd8, 0x40, 0xfb, 0x5a, 0x91, 0x05, 0x7c, + 0x43, 0xda, 0x8d, 0xa7, +}; +static const struct drbg_kat_no_reseed kat433_t = { + 12, kat433_entropyin, kat433_nonce, kat433_persstr, + kat433_addin0, kat433_addin1, kat433_retbits +}; +static const struct drbg_kat kat433 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat433_t +}; + +static const unsigned char kat434_entropyin[] = { + 0x93, 0xbf, 0x67, 0xed, 0xa3, 0x7b, 0xf7, 0x4b, 0xa8, 0x4b, 0x43, 0x57, + 0x49, 0xe5, 0xc3, 0x12, 0x4b, 0x98, 0x9b, 0x6a, 0xc6, 0xad, 0x72, 0x61, +}; +static const unsigned char kat434_nonce[] = { + 0x29, 0x4c, 0xb2, 0x6c, 0x39, 0x58, 0x6e, 0x48, 0x95, 0xba, 0x8a, 0xe7, + 0x79, 0x10, 0x5d, 0xd2, +}; +static const unsigned char kat434_persstr[] = {0}; +static const unsigned char kat434_addin0[] = {0}; +static const unsigned char kat434_addin1[] = {0}; +static const unsigned char kat434_retbits[] = { + 0xc4, 0x60, 0x11, 0x78, 0x92, 0x4d, 0x24, 0x3f, 0xee, 0x92, 0x55, 0x7e, + 0xa3, 0x0b, 0x9d, 0x48, 0xb8, 0x16, 0x25, 0x96, 0x42, 0xda, 0x4c, 0xbe, + 0x4d, 0x86, 0x8a, 0x94, 0x8c, 0xa7, 0xbd, 0xbd, 0x41, 0xe6, 0xcd, 0x5e, + 0xb8, 0x00, 0xbf, 0x44, 0xed, 0x60, 0x6d, 0x2d, 0xdc, 0xcb, 0x34, 0xdf, + 0xcf, 0x3b, 0xac, 0xa7, 0x06, 0x06, 0x1f, 0x12, 0x62, 0x1c, 0x79, 0x9f, + 0x55, 0x1f, 0x44, 0x8e, +}; +static const struct drbg_kat_no_reseed kat434_t = { + 13, kat434_entropyin, kat434_nonce, kat434_persstr, + kat434_addin0, kat434_addin1, kat434_retbits +}; +static const struct drbg_kat kat434 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat434_t +}; + +static const unsigned char kat435_entropyin[] = { + 0xc8, 0x03, 0x6e, 0x05, 0xb5, 0xc9, 0x7e, 0x1f, 0x17, 0x0d, 0xdd, 0x6c, + 0x95, 0x8c, 0xfe, 0x18, 0x8d, 0x44, 0x74, 0xb1, 0x1d, 0x67, 0x82, 0x62, +}; +static const unsigned char kat435_nonce[] = { + 0xa1, 0x82, 0x9e, 0x13, 0x50, 0x31, 0xee, 0xf0, 0x0a, 0x27, 0xa6, 0xfe, + 0x02, 0x24, 0x8c, 0x1b, +}; +static const unsigned char kat435_persstr[] = {0}; +static const unsigned char kat435_addin0[] = {0}; +static const unsigned char kat435_addin1[] = {0}; +static const unsigned char kat435_retbits[] = { + 0x15, 0xbe, 0x79, 0xf7, 0x7f, 0x5c, 0x18, 0x43, 0x10, 0x41, 0x6e, 0x92, + 0xd7, 0xa4, 0x7f, 0xc3, 0x25, 0x67, 0xe0, 0xc4, 0x85, 0x85, 0x40, 0xbc, + 0x54, 0x0c, 0x81, 0x95, 0x04, 0xb3, 0x9b, 0xd8, 0x2b, 0xcb, 0x96, 0x1e, + 0xaf, 0x50, 0xe3, 0x8d, 0xb9, 0x0c, 0x59, 0x30, 0x90, 0x51, 0x71, 0x7c, + 0x76, 0x74, 0xfa, 0x3e, 0x75, 0xa4, 0xf5, 0xec, 0x33, 0x66, 0x9c, 0x73, + 0x6e, 0xc4, 0x3a, 0x19, +}; +static const struct drbg_kat_no_reseed kat435_t = { + 14, kat435_entropyin, kat435_nonce, kat435_persstr, + kat435_addin0, kat435_addin1, kat435_retbits +}; +static const struct drbg_kat kat435 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat435_t +}; + +static const unsigned char kat436_entropyin[] = { + 0x17, 0x4d, 0xb4, 0xee, 0xa5, 0x56, 0x56, 0x9b, 0xc0, 0x45, 0xef, 0xc3, + 0x5f, 0x80, 0x15, 0x71, 0x75, 0x66, 0x50, 0x22, 0x88, 0xa1, 0xe7, 0xd0, +}; +static const unsigned char kat436_nonce[] = { + 0x38, 0x87, 0x89, 0x0e, 0xdb, 0x10, 0x5c, 0x15, 0x41, 0xdb, 0x3a, 0xd5, + 0x95, 0x5e, 0x12, 0x62, +}; +static const unsigned char kat436_persstr[] = {0}; +static const unsigned char kat436_addin0[] = { + 0x54, 0x95, 0x18, 0x3b, 0xa0, 0x88, 0xd7, 0x3c, 0xff, 0x04, 0xc6, 0x20, + 0xa0, 0xdc, 0x11, 0x55, 0xd3, 0xf2, 0x82, 0x5b, 0xb1, 0xfc, 0xb9, 0x49, + 0x15, 0xf1, 0xc1, 0xa5, 0x08, 0x7a, 0xeb, 0x2c, +}; +static const unsigned char kat436_addin1[] = { + 0xd3, 0x0b, 0xdb, 0xfb, 0x41, 0xa1, 0xb4, 0x76, 0xc0, 0x05, 0x6b, 0x18, + 0x0f, 0x24, 0x34, 0xd3, 0xd8, 0x35, 0x22, 0x78, 0xaf, 0x47, 0x7f, 0x50, + 0x07, 0x94, 0x75, 0xc1, 0xbd, 0xbe, 0x62, 0x10, +}; +static const unsigned char kat436_retbits[] = { + 0x24, 0xd3, 0x2b, 0x58, 0xe5, 0x9d, 0x00, 0x00, 0xff, 0x57, 0x4f, 0xd4, + 0x7e, 0x67, 0x02, 0xff, 0xd1, 0xa9, 0xb8, 0xdb, 0xcd, 0xb4, 0xf1, 0x64, + 0xab, 0xf1, 0x73, 0x14, 0x5c, 0xb6, 0xd2, 0xd9, 0x23, 0x65, 0x6b, 0x55, + 0xc4, 0xe8, 0x85, 0xca, 0x34, 0xd1, 0x8c, 0x15, 0x62, 0xf1, 0x7b, 0xb5, + 0x4d, 0x10, 0xd4, 0x6b, 0x1a, 0x53, 0xae, 0x14, 0x6e, 0xae, 0x07, 0x7d, + 0xdf, 0x93, 0xed, 0x53, +}; +static const struct drbg_kat_no_reseed kat436_t = { + 0, kat436_entropyin, kat436_nonce, kat436_persstr, + kat436_addin0, kat436_addin1, kat436_retbits +}; +static const struct drbg_kat kat436 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat436_t +}; + +static const unsigned char kat437_entropyin[] = { + 0x02, 0x17, 0x32, 0x7c, 0x7e, 0x3a, 0x61, 0xb0, 0x45, 0x9b, 0xb4, 0x92, + 0xb1, 0x0a, 0x73, 0xdd, 0x99, 0x86, 0xd2, 0x60, 0x5a, 0xdd, 0xb6, 0x64, +}; +static const unsigned char kat437_nonce[] = { + 0x37, 0xeb, 0x5d, 0x66, 0x92, 0x88, 0x3c, 0xc6, 0xa6, 0xa4, 0x3c, 0x80, + 0xdf, 0x83, 0xf6, 0xe2, +}; +static const unsigned char kat437_persstr[] = {0}; +static const unsigned char kat437_addin0[] = { + 0xa9, 0xd2, 0x22, 0x84, 0xc5, 0x03, 0x25, 0xd7, 0x96, 0xc7, 0x94, 0xba, + 0xd2, 0x8d, 0xfe, 0xf9, 0x2d, 0x13, 0x17, 0xc9, 0x3e, 0x20, 0x0b, 0xa2, + 0x20, 0xe0, 0x0b, 0xf4, 0xf3, 0xac, 0xec, 0xc6, +}; +static const unsigned char kat437_addin1[] = { + 0xbc, 0x0f, 0xb7, 0x0a, 0xf9, 0x2d, 0xff, 0xf5, 0xd5, 0x03, 0x4f, 0x90, + 0xbd, 0xbb, 0x05, 0x29, 0x56, 0x25, 0xd1, 0xda, 0x45, 0x70, 0x7f, 0x7f, + 0xe1, 0x71, 0x50, 0xbf, 0xb9, 0x88, 0xad, 0xa2, +}; +static const unsigned char kat437_retbits[] = { + 0x58, 0x59, 0xc8, 0x53, 0x9a, 0x37, 0x96, 0x1f, 0x74, 0x61, 0xe8, 0xb3, + 0x55, 0x24, 0x85, 0xce, 0x37, 0xf0, 0xc1, 0x96, 0x46, 0xf7, 0x84, 0xe6, + 0x82, 0x3a, 0x8d, 0xd6, 0x06, 0x41, 0x93, 0x13, 0x31, 0x21, 0x3a, 0x22, + 0x11, 0xb3, 0x2c, 0xf5, 0x7a, 0x1a, 0x26, 0xb5, 0xa3, 0xb6, 0xe6, 0xee, + 0xbd, 0xc5, 0xab, 0xbc, 0xe0, 0xd4, 0x3d, 0xdb, 0x96, 0x7a, 0x6d, 0xe5, + 0x7c, 0x97, 0xa8, 0xf6, +}; +static const struct drbg_kat_no_reseed kat437_t = { + 1, kat437_entropyin, kat437_nonce, kat437_persstr, + kat437_addin0, kat437_addin1, kat437_retbits +}; +static const struct drbg_kat kat437 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat437_t +}; + +static const unsigned char kat438_entropyin[] = { + 0x9e, 0x2f, 0x8e, 0xd0, 0x86, 0x1f, 0xcc, 0x64, 0x77, 0x9f, 0x01, 0xae, + 0x37, 0xb7, 0x61, 0x54, 0x40, 0x2e, 0x09, 0xc2, 0xac, 0x84, 0xec, 0x24, +}; +static const unsigned char kat438_nonce[] = { + 0x6c, 0x1e, 0x77, 0x9a, 0x17, 0xff, 0x4d, 0xdc, 0x33, 0x25, 0x28, 0x41, + 0xda, 0x58, 0xc4, 0x81, +}; +static const unsigned char kat438_persstr[] = {0}; +static const unsigned char kat438_addin0[] = { + 0x96, 0x0d, 0x53, 0x1c, 0x3a, 0x8e, 0x7c, 0x8c, 0x26, 0x9c, 0xed, 0x9f, + 0x74, 0x64, 0xfe, 0xde, 0xc8, 0xd4, 0xf4, 0x9e, 0x73, 0x96, 0xc6, 0x0f, + 0xbd, 0x89, 0xb2, 0xea, 0x4a, 0xf6, 0xfe, 0x40, +}; +static const unsigned char kat438_addin1[] = { + 0xe3, 0x29, 0x50, 0x33, 0x92, 0xa8, 0xe7, 0xeb, 0x56, 0x2e, 0xf1, 0x30, + 0xd0, 0xf9, 0xfd, 0x5e, 0x66, 0xd5, 0xf2, 0x3f, 0x24, 0x87, 0x99, 0x55, + 0xe6, 0x60, 0x52, 0xd2, 0x00, 0x9f, 0xac, 0xda, +}; +static const unsigned char kat438_retbits[] = { + 0x4a, 0x02, 0x0e, 0x7a, 0xd3, 0x3b, 0xa3, 0x80, 0xa5, 0x62, 0xad, 0x13, + 0x2d, 0x5b, 0x73, 0xee, 0xad, 0x1e, 0x89, 0xd9, 0x20, 0x7a, 0x6e, 0x4a, + 0xdb, 0x12, 0xe0, 0x8d, 0x62, 0xf4, 0x88, 0x6a, 0x27, 0xc2, 0x18, 0xb0, + 0x36, 0x41, 0xf7, 0xb6, 0xcf, 0x3a, 0x90, 0xe4, 0x46, 0x0b, 0x36, 0x39, + 0xe0, 0xaa, 0x9e, 0x70, 0xab, 0xc9, 0xae, 0x6b, 0xdc, 0xca, 0x60, 0x82, + 0x7a, 0x3a, 0x07, 0x53, +}; +static const struct drbg_kat_no_reseed kat438_t = { + 2, kat438_entropyin, kat438_nonce, kat438_persstr, + kat438_addin0, kat438_addin1, kat438_retbits +}; +static const struct drbg_kat kat438 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat438_t +}; + +static const unsigned char kat439_entropyin[] = { + 0x12, 0xf0, 0x6b, 0xc8, 0xea, 0x0c, 0x9e, 0x95, 0xb3, 0xf5, 0xb8, 0xd9, + 0xbe, 0x8d, 0x4b, 0x94, 0xfb, 0x80, 0x88, 0x33, 0x93, 0xd4, 0x44, 0x14, +}; +static const unsigned char kat439_nonce[] = { + 0x49, 0xdf, 0xee, 0x73, 0x11, 0x72, 0x5f, 0x1f, 0x46, 0xc1, 0xd5, 0x00, + 0x10, 0x05, 0x41, 0xd1, +}; +static const unsigned char kat439_persstr[] = {0}; +static const unsigned char kat439_addin0[] = { + 0xf7, 0xec, 0xc3, 0x52, 0xda, 0xc2, 0x80, 0x62, 0xf1, 0xda, 0xb5, 0x17, + 0x85, 0xb6, 0xb0, 0xe3, 0x1b, 0x81, 0xdb, 0x6e, 0xc7, 0x6e, 0xe0, 0x53, + 0xc3, 0x2b, 0xbc, 0xa8, 0x7c, 0x7e, 0x3b, 0x9c, +}; +static const unsigned char kat439_addin1[] = { + 0xef, 0x29, 0xf6, 0x89, 0xef, 0x40, 0xb3, 0xa4, 0xf1, 0x86, 0xa3, 0xfd, + 0x57, 0xbd, 0x48, 0x3f, 0xf2, 0x8b, 0x5e, 0xa6, 0x29, 0x3e, 0x17, 0x33, + 0xa3, 0x9c, 0xa3, 0xdd, 0x33, 0x12, 0xff, 0xf4, +}; +static const unsigned char kat439_retbits[] = { + 0x17, 0x3a, 0x29, 0x5b, 0xdd, 0x79, 0xad, 0x14, 0x8b, 0x15, 0xc2, 0x6d, + 0x8d, 0x13, 0x13, 0x3a, 0x0c, 0x3d, 0x52, 0xc5, 0xee, 0xb6, 0x47, 0x4a, + 0x73, 0xab, 0xb7, 0x6c, 0xbb, 0xbd, 0x2f, 0x74, 0x0a, 0xb8, 0xb6, 0x57, + 0xcb, 0xcf, 0x7b, 0x5f, 0xcc, 0x86, 0x27, 0x14, 0x08, 0xb1, 0x9f, 0xd9, + 0x35, 0xe4, 0xb7, 0x4a, 0x0d, 0xf9, 0xdd, 0x7f, 0xf5, 0x09, 0x9a, 0xe0, + 0x84, 0x9f, 0x4e, 0xa0, +}; +static const struct drbg_kat_no_reseed kat439_t = { + 3, kat439_entropyin, kat439_nonce, kat439_persstr, + kat439_addin0, kat439_addin1, kat439_retbits +}; +static const struct drbg_kat kat439 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat439_t +}; + +static const unsigned char kat440_entropyin[] = { + 0x3f, 0x4d, 0xab, 0x4b, 0xd4, 0x56, 0x79, 0x10, 0x1e, 0x4e, 0x9e, 0x1d, + 0x05, 0x38, 0xef, 0x4d, 0x76, 0x32, 0x30, 0xa0, 0xaf, 0x43, 0xfa, 0xe8, +}; +static const unsigned char kat440_nonce[] = { + 0x8b, 0xb6, 0x8e, 0xd2, 0x94, 0x0f, 0x71, 0xb6, 0x0b, 0x7c, 0x7d, 0x8f, + 0x60, 0xc1, 0x5c, 0xa6, +}; +static const unsigned char kat440_persstr[] = {0}; +static const unsigned char kat440_addin0[] = { + 0xce, 0xdf, 0xb5, 0x65, 0xd5, 0x54, 0x24, 0x9a, 0xcd, 0xf9, 0xe6, 0x1c, + 0xe9, 0x96, 0xee, 0xfe, 0xf0, 0xcf, 0x7e, 0xb7, 0xca, 0x0e, 0xcc, 0xda, + 0x77, 0xb7, 0xe6, 0x71, 0x5f, 0x38, 0xb7, 0x7c, +}; +static const unsigned char kat440_addin1[] = { + 0xba, 0xa6, 0x40, 0xa1, 0x35, 0x06, 0xf7, 0x53, 0x66, 0x8e, 0xca, 0x79, + 0x0a, 0x8d, 0x3f, 0xc4, 0xc5, 0x3f, 0x16, 0xea, 0xa9, 0x3d, 0x08, 0x8d, + 0x69, 0xf1, 0xe5, 0x88, 0x15, 0xd4, 0x2b, 0x3e, +}; +static const unsigned char kat440_retbits[] = { + 0xce, 0x36, 0xad, 0x85, 0x3b, 0x12, 0xd5, 0xd5, 0x09, 0x3b, 0xa3, 0x5f, + 0xde, 0xcf, 0xeb, 0x25, 0xf1, 0xb1, 0x33, 0x0c, 0xeb, 0x37, 0xe5, 0x8e, + 0x2e, 0x58, 0xa9, 0x40, 0xf0, 0x5f, 0x90, 0x02, 0xe0, 0xfe, 0x6b, 0x8d, + 0x36, 0xb5, 0x14, 0x6c, 0x18, 0x8a, 0xb1, 0xe3, 0x3b, 0xa8, 0x4e, 0x95, + 0x4d, 0x17, 0xa5, 0x20, 0x33, 0xcc, 0x08, 0x1a, 0xa8, 0xb2, 0x50, 0x7b, + 0xe8, 0xd5, 0x16, 0x13, +}; +static const struct drbg_kat_no_reseed kat440_t = { + 4, kat440_entropyin, kat440_nonce, kat440_persstr, + kat440_addin0, kat440_addin1, kat440_retbits +}; +static const struct drbg_kat kat440 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat440_t +}; + +static const unsigned char kat441_entropyin[] = { + 0x1a, 0xa5, 0xd2, 0x36, 0x13, 0xdd, 0x1f, 0x71, 0x71, 0x4a, 0x01, 0xe7, + 0x5e, 0xcc, 0x29, 0xa6, 0xd1, 0x48, 0x1c, 0x76, 0x15, 0x7a, 0x81, 0x77, +}; +static const unsigned char kat441_nonce[] = { + 0x2c, 0xe6, 0xba, 0x4c, 0x82, 0xe7, 0xcc, 0x2e, 0x59, 0x8c, 0xda, 0x4b, + 0x3e, 0x6a, 0xc8, 0xa7, +}; +static const unsigned char kat441_persstr[] = {0}; +static const unsigned char kat441_addin0[] = { + 0x02, 0x6c, 0x22, 0x49, 0x12, 0xb4, 0x9e, 0xa7, 0xb2, 0xa1, 0xa7, 0xcc, + 0xd5, 0x04, 0x18, 0x09, 0x0c, 0x13, 0x83, 0xc6, 0x4f, 0x28, 0x52, 0x34, + 0x1c, 0x28, 0xc1, 0xf6, 0x56, 0x2f, 0x9b, 0xf7, +}; +static const unsigned char kat441_addin1[] = { + 0xd9, 0x81, 0x0d, 0x1a, 0x33, 0x92, 0x1f, 0x06, 0x20, 0x61, 0xd7, 0xf6, + 0x67, 0x50, 0x6b, 0x02, 0x79, 0xde, 0x3e, 0x14, 0x3e, 0x55, 0xf5, 0x72, + 0x28, 0x46, 0x93, 0x60, 0x9c, 0xb7, 0x37, 0x85, +}; +static const unsigned char kat441_retbits[] = { + 0x47, 0x75, 0xcb, 0xe9, 0xf4, 0xa7, 0x4b, 0x72, 0xfa, 0xcf, 0x4a, 0x2c, + 0xf8, 0xe9, 0x58, 0x1a, 0xa0, 0x25, 0x32, 0x62, 0x60, 0x37, 0xfa, 0x3b, + 0x63, 0xef, 0xef, 0xc3, 0xc7, 0xc1, 0xc2, 0xdb, 0x0e, 0xb5, 0x90, 0x3e, + 0xa1, 0xa9, 0xcc, 0x9e, 0x40, 0xb2, 0xb9, 0xe6, 0x28, 0xac, 0xfd, 0x9d, + 0x74, 0xe6, 0x65, 0x72, 0xa8, 0x65, 0x6c, 0x75, 0xdb, 0x6a, 0x5f, 0xbf, + 0x5a, 0xc0, 0xad, 0x1e, +}; +static const struct drbg_kat_no_reseed kat441_t = { + 5, kat441_entropyin, kat441_nonce, kat441_persstr, + kat441_addin0, kat441_addin1, kat441_retbits +}; +static const struct drbg_kat kat441 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat441_t +}; + +static const unsigned char kat442_entropyin[] = { + 0x32, 0x6f, 0x6e, 0x91, 0x22, 0x70, 0x3e, 0x58, 0x31, 0x6e, 0x7e, 0x0e, + 0x2e, 0x58, 0x78, 0x61, 0x04, 0x23, 0xf0, 0xf5, 0x59, 0x73, 0x09, 0xa1, +}; +static const unsigned char kat442_nonce[] = { + 0x42, 0x6e, 0x56, 0xf1, 0x3e, 0x11, 0x26, 0x9e, 0xa6, 0xbb, 0xaf, 0xa0, + 0x09, 0x86, 0x11, 0xf5, +}; +static const unsigned char kat442_persstr[] = {0}; +static const unsigned char kat442_addin0[] = { + 0x8a, 0xe8, 0x8c, 0xdd, 0x32, 0x0e, 0x96, 0xe9, 0x21, 0xd0, 0x6d, 0xe2, + 0x3c, 0x92, 0xa7, 0x1b, 0x5c, 0x37, 0x0e, 0xcb, 0x4d, 0xba, 0x98, 0x87, + 0xf6, 0x03, 0x44, 0xe2, 0x08, 0x56, 0xa9, 0x04, +}; +static const unsigned char kat442_addin1[] = { + 0xc5, 0xbe, 0xd3, 0x4c, 0xd6, 0x08, 0x50, 0x64, 0x04, 0x40, 0xd0, 0xc7, + 0x0d, 0xb4, 0xde, 0x17, 0x85, 0x9a, 0x25, 0xc2, 0xbd, 0xce, 0xee, 0xfe, + 0x5a, 0xe0, 0xcf, 0x8f, 0xc7, 0x80, 0x36, 0x2d, +}; +static const unsigned char kat442_retbits[] = { + 0xf4, 0x62, 0x28, 0x0c, 0x4e, 0xb3, 0x9c, 0x83, 0xa2, 0x08, 0x5f, 0x8d, + 0x62, 0xa4, 0xbc, 0xec, 0x7c, 0x27, 0x62, 0x12, 0x02, 0x0b, 0xed, 0x35, + 0xe8, 0x98, 0xa5, 0x54, 0xd6, 0xaf, 0xb9, 0x8e, 0x77, 0x33, 0xd5, 0x71, + 0x2e, 0xaf, 0xf8, 0x84, 0x05, 0x8c, 0xa8, 0x8a, 0xb3, 0xe4, 0x3f, 0x3e, + 0x7f, 0x58, 0xd9, 0x8e, 0xa2, 0xbb, 0x97, 0xef, 0x8a, 0x5d, 0xac, 0x63, + 0x63, 0x56, 0x66, 0x70, +}; +static const struct drbg_kat_no_reseed kat442_t = { + 6, kat442_entropyin, kat442_nonce, kat442_persstr, + kat442_addin0, kat442_addin1, kat442_retbits +}; +static const struct drbg_kat kat442 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat442_t +}; + +static const unsigned char kat443_entropyin[] = { + 0x00, 0x71, 0x2f, 0x30, 0xc7, 0xf3, 0x2e, 0x21, 0xde, 0xbf, 0x40, 0x26, + 0x78, 0xa7, 0xe2, 0xf7, 0x20, 0x1e, 0x96, 0xe7, 0xc2, 0x55, 0x17, 0x96, +}; +static const unsigned char kat443_nonce[] = { + 0x97, 0x23, 0x77, 0x2e, 0x04, 0x71, 0x0d, 0x54, 0xa3, 0x76, 0x51, 0x07, + 0xaa, 0xd9, 0x14, 0xf5, +}; +static const unsigned char kat443_persstr[] = {0}; +static const unsigned char kat443_addin0[] = { + 0x17, 0x77, 0xd9, 0x9d, 0xbf, 0x76, 0xe0, 0x26, 0x5f, 0xf6, 0x85, 0x3b, + 0x83, 0x51, 0x8f, 0x34, 0x1b, 0x32, 0x78, 0x81, 0x71, 0xdb, 0x4f, 0x17, + 0xca, 0x65, 0x04, 0xd7, 0x88, 0xc2, 0xf1, 0x37, +}; +static const unsigned char kat443_addin1[] = { + 0x79, 0xf3, 0xa3, 0x69, 0x5e, 0x2c, 0xfa, 0xa7, 0xf0, 0x87, 0x87, 0x29, + 0xe9, 0x31, 0x0b, 0xb4, 0x79, 0xd3, 0x00, 0xcd, 0xc1, 0x5c, 0xa3, 0x7e, + 0x36, 0x8e, 0x3a, 0x45, 0xe7, 0xf1, 0xea, 0x26, +}; +static const unsigned char kat443_retbits[] = { + 0xe7, 0xbd, 0x54, 0x5d, 0x18, 0x53, 0x05, 0xa0, 0xe4, 0x43, 0x51, 0x65, + 0x01, 0xe7, 0xfa, 0x9a, 0xbf, 0xa8, 0x42, 0x27, 0x4d, 0x34, 0x2a, 0xe3, + 0xae, 0xb2, 0x95, 0x83, 0xc1, 0x50, 0xea, 0x55, 0x0b, 0xc6, 0xfb, 0xa9, + 0x52, 0xa4, 0x9e, 0x30, 0xf8, 0x4c, 0x29, 0x34, 0x29, 0x9c, 0x1f, 0xd2, + 0xd5, 0x58, 0x19, 0x1e, 0xb7, 0xad, 0x80, 0xd8, 0x28, 0xe6, 0x3a, 0xa9, + 0xff, 0x22, 0x31, 0x07, +}; +static const struct drbg_kat_no_reseed kat443_t = { + 7, kat443_entropyin, kat443_nonce, kat443_persstr, + kat443_addin0, kat443_addin1, kat443_retbits +}; +static const struct drbg_kat kat443 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat443_t +}; + +static const unsigned char kat444_entropyin[] = { + 0x0e, 0x1e, 0x1a, 0x43, 0x04, 0xbf, 0xe2, 0x37, 0xe9, 0xbd, 0xe5, 0x4c, + 0xcb, 0x87, 0x6b, 0xdb, 0x0e, 0x83, 0x3b, 0xfa, 0xa3, 0x60, 0x9e, 0xe1, +}; +static const unsigned char kat444_nonce[] = { + 0x4a, 0xb3, 0xd5, 0x27, 0x40, 0xb7, 0xb9, 0xde, 0x6e, 0xd3, 0x9a, 0x01, + 0x32, 0x15, 0xd1, 0x4a, +}; +static const unsigned char kat444_persstr[] = {0}; +static const unsigned char kat444_addin0[] = { + 0x02, 0x99, 0x8f, 0x33, 0xf6, 0xbe, 0x3b, 0xf8, 0x95, 0x5b, 0x94, 0x45, + 0x01, 0x75, 0x69, 0x71, 0x67, 0x26, 0x86, 0x6b, 0xe7, 0xd6, 0xda, 0x47, + 0x99, 0xe4, 0xf0, 0x72, 0x0a, 0xf5, 0x35, 0x93, +}; +static const unsigned char kat444_addin1[] = { + 0x1d, 0x96, 0xd9, 0xe0, 0xff, 0x54, 0x79, 0x2f, 0x4f, 0xcc, 0xe9, 0x20, + 0xbf, 0x79, 0x0c, 0xf7, 0x2d, 0x58, 0xfc, 0x86, 0x5f, 0xe8, 0xf4, 0x46, + 0xfb, 0x03, 0xcb, 0xc2, 0xeb, 0x21, 0xea, 0x2f, +}; +static const unsigned char kat444_retbits[] = { + 0xad, 0xb0, 0xe9, 0x3e, 0x74, 0x79, 0x19, 0x97, 0xdd, 0xcc, 0xf9, 0x6f, + 0x56, 0xbb, 0x29, 0x78, 0x93, 0xee, 0x40, 0xf5, 0x28, 0x9b, 0xc9, 0x92, + 0xb6, 0x78, 0x70, 0xaf, 0x19, 0xc9, 0x85, 0xaa, 0x9d, 0x91, 0x1b, 0x14, + 0x17, 0x56, 0x01, 0x72, 0xca, 0x70, 0xa9, 0xf6, 0x07, 0x65, 0x56, 0xf9, + 0x6b, 0x49, 0x57, 0xcc, 0x57, 0x4c, 0x09, 0x89, 0xfa, 0xdf, 0x1c, 0xed, + 0xa9, 0xdf, 0x9b, 0xc2, +}; +static const struct drbg_kat_no_reseed kat444_t = { + 8, kat444_entropyin, kat444_nonce, kat444_persstr, + kat444_addin0, kat444_addin1, kat444_retbits +}; +static const struct drbg_kat kat444 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat444_t +}; + +static const unsigned char kat445_entropyin[] = { + 0x16, 0x65, 0x4b, 0x44, 0xfd, 0x38, 0xc0, 0xb2, 0x44, 0x89, 0x67, 0x82, + 0x9b, 0xe7, 0xbf, 0xc4, 0x62, 0x78, 0x6f, 0x08, 0x8b, 0x1e, 0xb4, 0x57, +}; +static const unsigned char kat445_nonce[] = { + 0xfe, 0xfa, 0x7f, 0xcc, 0x14, 0xfd, 0xe2, 0x5b, 0x6f, 0x4e, 0xe9, 0xa2, + 0x23, 0x14, 0x14, 0xf0, +}; +static const unsigned char kat445_persstr[] = {0}; +static const unsigned char kat445_addin0[] = { + 0x14, 0x60, 0xfe, 0x86, 0x87, 0x84, 0xae, 0x02, 0xb2, 0x39, 0x42, 0x7a, + 0x0a, 0x44, 0x87, 0x20, 0x94, 0x26, 0x71, 0x38, 0xa2, 0x6c, 0xc4, 0x02, + 0xe7, 0x2a, 0xab, 0x14, 0x76, 0xdf, 0x21, 0x6a, +}; +static const unsigned char kat445_addin1[] = { + 0x2a, 0x2f, 0x4d, 0x85, 0xd1, 0xfc, 0x79, 0x18, 0xe8, 0x15, 0x40, 0x53, + 0xd8, 0x43, 0x02, 0xb5, 0x49, 0x6c, 0xba, 0x91, 0xc3, 0x6e, 0x47, 0x7f, + 0xf0, 0x2c, 0x75, 0x48, 0x9e, 0xe7, 0x70, 0xbf, +}; +static const unsigned char kat445_retbits[] = { + 0x9e, 0xa5, 0xe4, 0x07, 0x68, 0xaa, 0x35, 0xec, 0x4a, 0x70, 0x9b, 0x8a, + 0x7d, 0x6c, 0x27, 0x61, 0xe7, 0xa7, 0x7d, 0xce, 0x06, 0xcb, 0x25, 0x37, + 0x63, 0xeb, 0xd7, 0x0a, 0x9f, 0x69, 0xed, 0x62, 0x5c, 0xcc, 0x75, 0x2c, + 0x3e, 0x7e, 0x80, 0x97, 0x69, 0xfe, 0x99, 0xdd, 0x3a, 0xb8, 0x05, 0x64, + 0x5e, 0x96, 0xc6, 0x02, 0xff, 0x9b, 0x4f, 0x78, 0x12, 0x2e, 0xf2, 0xe8, + 0x09, 0xc3, 0x9e, 0x60, +}; +static const struct drbg_kat_no_reseed kat445_t = { + 9, kat445_entropyin, kat445_nonce, kat445_persstr, + kat445_addin0, kat445_addin1, kat445_retbits +}; +static const struct drbg_kat kat445 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat445_t +}; + +static const unsigned char kat446_entropyin[] = { + 0xee, 0xfa, 0x26, 0x21, 0x7e, 0xcf, 0xe8, 0xe0, 0x52, 0xd0, 0xd4, 0xc0, + 0x89, 0x39, 0x20, 0x83, 0x7b, 0xbd, 0x4b, 0x3f, 0x96, 0x6a, 0x34, 0x8b, +}; +static const unsigned char kat446_nonce[] = { + 0xe9, 0x2a, 0x5c, 0xde, 0xa0, 0x72, 0xa2, 0xcb, 0xb9, 0x8a, 0x5d, 0x1a, + 0xb4, 0x1d, 0x7c, 0xcd, +}; +static const unsigned char kat446_persstr[] = {0}; +static const unsigned char kat446_addin0[] = { + 0x48, 0xf1, 0xcc, 0xfb, 0xb5, 0x9d, 0x7a, 0xe7, 0x28, 0xfb, 0x22, 0x72, + 0x98, 0x12, 0x36, 0x6c, 0xf6, 0x6a, 0x7d, 0xf6, 0x35, 0xd3, 0x3e, 0xd1, + 0x85, 0x7f, 0x9b, 0x88, 0x01, 0x3b, 0x1f, 0x21, +}; +static const unsigned char kat446_addin1[] = { + 0xb2, 0x47, 0x06, 0xd1, 0xde, 0x83, 0xe2, 0x47, 0x0c, 0x37, 0xee, 0x21, + 0x4c, 0xbd, 0x72, 0x71, 0xc3, 0x2b, 0xb1, 0x65, 0x05, 0x96, 0xed, 0x12, + 0x2a, 0xf4, 0x23, 0x93, 0x50, 0xbc, 0xef, 0x9e, +}; +static const unsigned char kat446_retbits[] = { + 0x65, 0x0a, 0x98, 0xb3, 0x65, 0x57, 0x6e, 0x2f, 0xe8, 0x5b, 0xf7, 0x36, + 0xcf, 0x21, 0x6b, 0x45, 0x19, 0x2b, 0xeb, 0x91, 0x25, 0xbb, 0x1a, 0xe4, + 0x89, 0x12, 0xec, 0x06, 0xf3, 0x9d, 0x94, 0xe2, 0xda, 0x02, 0xea, 0xb9, + 0x70, 0xb9, 0xd9, 0xcb, 0xc7, 0x7e, 0x30, 0x27, 0x8e, 0x46, 0xa7, 0x98, + 0x2d, 0x7a, 0x2f, 0x7b, 0x75, 0xca, 0x6c, 0x7d, 0x53, 0x83, 0x90, 0xf9, + 0x54, 0x07, 0x38, 0x2f, +}; +static const struct drbg_kat_no_reseed kat446_t = { + 10, kat446_entropyin, kat446_nonce, kat446_persstr, + kat446_addin0, kat446_addin1, kat446_retbits +}; +static const struct drbg_kat kat446 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat446_t +}; + +static const unsigned char kat447_entropyin[] = { + 0xe7, 0x65, 0x32, 0x77, 0x4d, 0x4e, 0xf4, 0x5d, 0xeb, 0x39, 0xbf, 0xb5, + 0x2a, 0x40, 0x46, 0x1d, 0x31, 0x25, 0xe3, 0x62, 0xd2, 0x4a, 0x56, 0xb8, +}; +static const unsigned char kat447_nonce[] = { + 0xaa, 0x47, 0x05, 0x55, 0xee, 0x44, 0x9f, 0x9f, 0x06, 0xba, 0x28, 0x12, + 0x97, 0x0c, 0xe6, 0x8e, +}; +static const unsigned char kat447_persstr[] = {0}; +static const unsigned char kat447_addin0[] = { + 0xb2, 0xec, 0xe7, 0x17, 0xa6, 0x11, 0x19, 0xe9, 0xfd, 0x32, 0x45, 0x80, + 0x81, 0xd0, 0x0f, 0xbd, 0xd7, 0xc1, 0xb5, 0x34, 0x22, 0xa5, 0x3a, 0xa3, + 0x2f, 0xf0, 0x92, 0x37, 0xe5, 0x02, 0x86, 0x87, +}; +static const unsigned char kat447_addin1[] = { + 0x6b, 0x9e, 0x89, 0x44, 0x99, 0xb1, 0xe4, 0x78, 0xce, 0x1f, 0x43, 0x91, + 0x50, 0xb4, 0x80, 0xef, 0x8b, 0x80, 0x14, 0x99, 0x3e, 0xa9, 0x31, 0xd8, + 0xae, 0xbe, 0xfc, 0x8b, 0x76, 0xa9, 0x62, 0x72, +}; +static const unsigned char kat447_retbits[] = { + 0xf9, 0x8f, 0xdc, 0x5d, 0x33, 0xea, 0xb1, 0xa4, 0x56, 0xfc, 0x68, 0x08, + 0x0d, 0x59, 0x3b, 0x83, 0xbf, 0x6c, 0xf0, 0xc7, 0xcd, 0xb9, 0x83, 0x40, + 0x82, 0xde, 0x36, 0x86, 0x91, 0x9d, 0x07, 0x52, 0x36, 0x5a, 0x5c, 0xa6, + 0x4f, 0x32, 0x24, 0x37, 0x67, 0x1f, 0x05, 0x43, 0xff, 0x74, 0xee, 0x64, + 0x90, 0xa0, 0xe8, 0x70, 0x63, 0x4f, 0xed, 0x4b, 0x5e, 0xc9, 0x84, 0x82, + 0xef, 0x09, 0xa2, 0xf2, +}; +static const struct drbg_kat_no_reseed kat447_t = { + 11, kat447_entropyin, kat447_nonce, kat447_persstr, + kat447_addin0, kat447_addin1, kat447_retbits +}; +static const struct drbg_kat kat447 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat447_t +}; + +static const unsigned char kat448_entropyin[] = { + 0x4b, 0xcc, 0xcc, 0xe3, 0x5f, 0xea, 0xfd, 0xe5, 0xda, 0x22, 0xd9, 0x56, + 0x40, 0xd2, 0x8b, 0x23, 0x2c, 0xa7, 0xc6, 0xec, 0x67, 0xf4, 0x6e, 0x05, +}; +static const unsigned char kat448_nonce[] = { + 0x0d, 0xf8, 0xf3, 0xcc, 0xa0, 0x12, 0x8a, 0xc3, 0x9c, 0x11, 0xc0, 0x38, + 0xf8, 0xdf, 0xe0, 0xae, +}; +static const unsigned char kat448_persstr[] = {0}; +static const unsigned char kat448_addin0[] = { + 0xb3, 0xe1, 0x9b, 0x4a, 0xfc, 0x44, 0x66, 0x29, 0xf4, 0x5c, 0xea, 0x68, + 0xe7, 0x6b, 0x86, 0x43, 0xc7, 0x2c, 0x92, 0x6e, 0xa0, 0xf0, 0xbd, 0x47, + 0x3a, 0xff, 0x44, 0xc8, 0x43, 0x7c, 0xa2, 0xa8, +}; +static const unsigned char kat448_addin1[] = { + 0xaf, 0x06, 0xe0, 0xf1, 0xbd, 0xb1, 0x1c, 0x07, 0xd6, 0x96, 0xd5, 0x9c, + 0x05, 0x61, 0x89, 0x6b, 0x76, 0x25, 0x83, 0x25, 0x39, 0x70, 0xa9, 0x5c, + 0xcd, 0xbb, 0x16, 0x90, 0xb5, 0xd3, 0xa2, 0x11, +}; +static const unsigned char kat448_retbits[] = { + 0x11, 0x26, 0x68, 0x69, 0xe6, 0xa0, 0x9f, 0xb1, 0xc3, 0x63, 0xca, 0x25, + 0xf8, 0xf3, 0x28, 0x45, 0xea, 0x68, 0x50, 0x80, 0x78, 0x72, 0xde, 0x59, + 0x4c, 0xef, 0xa5, 0x5f, 0xb5, 0xd8, 0x4b, 0xc6, 0x89, 0xcc, 0x51, 0x8b, + 0x4e, 0xb8, 0x3b, 0xb4, 0x83, 0xc1, 0x5c, 0x62, 0xac, 0xcf, 0x47, 0x4c, + 0xc6, 0xaf, 0xec, 0xa5, 0x6f, 0xfa, 0x84, 0xc3, 0xc0, 0x1b, 0xee, 0xf6, + 0xae, 0xa5, 0xe2, 0x3a, +}; +static const struct drbg_kat_no_reseed kat448_t = { + 12, kat448_entropyin, kat448_nonce, kat448_persstr, + kat448_addin0, kat448_addin1, kat448_retbits +}; +static const struct drbg_kat kat448 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat448_t +}; + +static const unsigned char kat449_entropyin[] = { + 0x48, 0xa4, 0x79, 0x9f, 0xbb, 0x49, 0xbf, 0xc9, 0xdd, 0x09, 0x77, 0xae, + 0x3b, 0x1c, 0x89, 0x0d, 0x2f, 0xa6, 0x9f, 0x57, 0x75, 0x54, 0xc3, 0xd3, +}; +static const unsigned char kat449_nonce[] = { + 0x6b, 0xfb, 0x2d, 0x6b, 0xb9, 0x2b, 0xb2, 0xed, 0x88, 0x17, 0x99, 0x2a, + 0xd9, 0x3c, 0xc6, 0xa9, +}; +static const unsigned char kat449_persstr[] = {0}; +static const unsigned char kat449_addin0[] = { + 0x2c, 0xbe, 0xe2, 0xfb, 0x8b, 0xa4, 0x99, 0x65, 0xc8, 0x5a, 0x9f, 0x66, + 0x03, 0x68, 0xcf, 0x1d, 0x01, 0x81, 0xb6, 0xaf, 0xe6, 0x3b, 0x34, 0x82, + 0x21, 0x48, 0x22, 0x80, 0xc9, 0x05, 0x81, 0x2d, +}; +static const unsigned char kat449_addin1[] = { + 0xbb, 0xd3, 0xe2, 0x4c, 0x95, 0xd8, 0xfb, 0x5c, 0x60, 0xd7, 0x15, 0x44, + 0xb6, 0x69, 0x6b, 0x56, 0x2a, 0x2d, 0x05, 0xce, 0x2e, 0xef, 0x65, 0x8e, + 0x21, 0x3f, 0x67, 0xaa, 0x2c, 0x1f, 0xe5, 0xd2, +}; +static const unsigned char kat449_retbits[] = { + 0x8d, 0x78, 0xf3, 0xb7, 0x22, 0xd4, 0xfd, 0xa0, 0xd8, 0x18, 0x37, 0xa6, + 0x1f, 0x33, 0x10, 0x3b, 0x36, 0xf7, 0x72, 0xa2, 0x0b, 0x03, 0xf9, 0xfa, + 0x80, 0xd2, 0xe7, 0xfe, 0x0c, 0x84, 0x5e, 0xdf, 0x32, 0x61, 0x65, 0xd7, + 0x16, 0x85, 0x52, 0x79, 0x31, 0xa8, 0x9d, 0x7b, 0x1d, 0xeb, 0x01, 0x24, + 0x0a, 0xeb, 0x1f, 0x8f, 0x5f, 0xef, 0x8d, 0xab, 0x57, 0xe1, 0x43, 0x84, + 0x58, 0x0b, 0x69, 0x3f, +}; +static const struct drbg_kat_no_reseed kat449_t = { + 13, kat449_entropyin, kat449_nonce, kat449_persstr, + kat449_addin0, kat449_addin1, kat449_retbits +}; +static const struct drbg_kat kat449 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat449_t +}; + +static const unsigned char kat450_entropyin[] = { + 0xfc, 0xe8, 0x5e, 0x48, 0xde, 0xd7, 0x33, 0x7f, 0xf3, 0xd3, 0xea, 0xe3, + 0x91, 0xe2, 0xb2, 0xa3, 0x95, 0x42, 0xbe, 0x05, 0x05, 0xf2, 0x93, 0x0c, +}; +static const unsigned char kat450_nonce[] = { + 0xe5, 0x90, 0x5c, 0xe6, 0x53, 0xb9, 0x27, 0x5f, 0x14, 0xb0, 0xe6, 0xa1, + 0x06, 0x23, 0xbd, 0x87, +}; +static const unsigned char kat450_persstr[] = {0}; +static const unsigned char kat450_addin0[] = { + 0xbe, 0xea, 0x35, 0x64, 0xab, 0x77, 0xad, 0xf6, 0x3a, 0x2f, 0xb5, 0x14, + 0x29, 0x7f, 0xe9, 0x3f, 0xc8, 0x33, 0x23, 0x1c, 0x22, 0xdb, 0x98, 0x57, + 0xa3, 0x9d, 0x6e, 0x29, 0x70, 0x85, 0x84, 0x65, +}; +static const unsigned char kat450_addin1[] = { + 0x62, 0x4f, 0x46, 0xac, 0x56, 0xc6, 0x87, 0xfc, 0x33, 0x6d, 0xd4, 0xc7, + 0xd7, 0xdb, 0x44, 0xa5, 0x62, 0x91, 0xeb, 0x7f, 0x66, 0xd1, 0x88, 0x42, + 0x76, 0x06, 0x6b, 0x38, 0x55, 0x0f, 0xfc, 0x17, +}; +static const unsigned char kat450_retbits[] = { + 0x69, 0x8b, 0x1e, 0xbd, 0x23, 0x91, 0xc2, 0xf1, 0x4c, 0xc8, 0xb2, 0x0d, + 0x96, 0x4f, 0x39, 0xd5, 0xea, 0xfb, 0x56, 0xd6, 0x13, 0xda, 0xa8, 0xd3, + 0x8a, 0x45, 0xcc, 0x6f, 0xd9, 0xcc, 0x98, 0xca, 0x4e, 0xac, 0xc4, 0x79, + 0x4b, 0xc9, 0xc3, 0x17, 0xaa, 0xab, 0x14, 0x10, 0xb8, 0xd5, 0x65, 0x48, + 0x43, 0x67, 0xe3, 0xd9, 0x30, 0x67, 0x1d, 0x00, 0x17, 0x13, 0xc3, 0x29, + 0xe6, 0x5d, 0x28, 0xd9, +}; +static const struct drbg_kat_no_reseed kat450_t = { + 14, kat450_entropyin, kat450_nonce, kat450_persstr, + kat450_addin0, kat450_addin1, kat450_retbits +}; +static const struct drbg_kat kat450 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat450_t +}; + +static const unsigned char kat451_entropyin[] = { + 0x2a, 0x9b, 0x56, 0xc3, 0x5d, 0x17, 0xa5, 0xeb, 0xfc, 0x5b, 0x62, 0xae, + 0x44, 0xe9, 0x29, 0xac, 0x3a, 0x07, 0x47, 0x90, 0x7c, 0x15, 0xef, 0xa6, +}; +static const unsigned char kat451_nonce[] = { + 0x8d, 0xf8, 0xca, 0x01, 0x19, 0x67, 0x19, 0xe5, 0x26, 0xff, 0x2f, 0xfe, + 0xe2, 0x01, 0xef, 0x45, +}; +static const unsigned char kat451_persstr[] = { + 0xa4, 0xf5, 0xfa, 0xbe, 0xd0, 0x64, 0x69, 0x39, 0x13, 0x88, 0x0e, 0x33, + 0xf5, 0xae, 0xc5, 0xed, 0x13, 0x2f, 0x42, 0x9f, 0xdf, 0xeb, 0x22, 0x6b, + 0x0e, 0x83, 0x4e, 0x72, 0xd3, 0xff, 0xb4, 0x49, +}; +static const unsigned char kat451_addin0[] = {0}; +static const unsigned char kat451_addin1[] = {0}; +static const unsigned char kat451_retbits[] = { + 0x51, 0xe1, 0x9a, 0x13, 0xb1, 0x18, 0x15, 0xb1, 0xec, 0xb0, 0x65, 0xd5, + 0x4b, 0xbf, 0xa4, 0x5e, 0x31, 0xd9, 0x4a, 0xde, 0xca, 0x33, 0x85, 0x62, + 0x54, 0xf4, 0x34, 0x81, 0x94, 0x45, 0x13, 0xde, 0x8f, 0xa6, 0xcf, 0x23, + 0xc4, 0xfb, 0x24, 0xb3, 0x32, 0x34, 0x6d, 0x00, 0x46, 0x4b, 0x06, 0xe9, + 0xae, 0x80, 0xd9, 0x8d, 0xa9, 0xc6, 0xfd, 0x38, 0x39, 0xcf, 0x0c, 0xa7, + 0x53, 0x1c, 0xcb, 0x89, +}; +static const struct drbg_kat_no_reseed kat451_t = { + 0, kat451_entropyin, kat451_nonce, kat451_persstr, + kat451_addin0, kat451_addin1, kat451_retbits +}; +static const struct drbg_kat kat451 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat451_t +}; + +static const unsigned char kat452_entropyin[] = { + 0x86, 0x08, 0xbd, 0xf7, 0xd3, 0x3d, 0x89, 0xc0, 0x93, 0x24, 0xb4, 0x98, + 0x95, 0x41, 0x10, 0xb8, 0xc0, 0xec, 0xcb, 0x52, 0x0c, 0xf8, 0x60, 0x68, +}; +static const unsigned char kat452_nonce[] = { + 0x57, 0x2e, 0x58, 0x16, 0xca, 0x90, 0xe0, 0x29, 0x10, 0x2d, 0x5d, 0x68, + 0x21, 0x89, 0xd8, 0x56, +}; +static const unsigned char kat452_persstr[] = { + 0xc4, 0xef, 0x4c, 0x15, 0x72, 0x13, 0x37, 0x20, 0x9a, 0xb0, 0xc1, 0x03, + 0xdb, 0xee, 0xdb, 0x46, 0x32, 0x93, 0x58, 0xaf, 0xc4, 0xaf, 0x0a, 0xb7, + 0x4a, 0x27, 0x82, 0x00, 0x88, 0xce, 0xbb, 0x5b, +}; +static const unsigned char kat452_addin0[] = {0}; +static const unsigned char kat452_addin1[] = {0}; +static const unsigned char kat452_retbits[] = { + 0xc3, 0x93, 0xeb, 0xef, 0x36, 0xf8, 0x6f, 0x0f, 0xaa, 0x9e, 0x40, 0x92, + 0xea, 0x0a, 0xad, 0x0d, 0x8b, 0x81, 0x92, 0x0d, 0x76, 0x29, 0x66, 0xf3, + 0x1f, 0x1f, 0xfd, 0xc9, 0x0f, 0xd2, 0x13, 0x06, 0xf9, 0x04, 0x74, 0x22, + 0xa9, 0xde, 0x67, 0xeb, 0x2c, 0x51, 0xec, 0xfb, 0x27, 0xcb, 0xd0, 0x68, + 0x64, 0x85, 0x96, 0xc5, 0x86, 0xd9, 0xc9, 0x4f, 0x31, 0xe9, 0xe8, 0x20, + 0x47, 0xcd, 0xaa, 0xfd, +}; +static const struct drbg_kat_no_reseed kat452_t = { + 1, kat452_entropyin, kat452_nonce, kat452_persstr, + kat452_addin0, kat452_addin1, kat452_retbits +}; +static const struct drbg_kat kat452 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat452_t +}; + +static const unsigned char kat453_entropyin[] = { + 0x41, 0xc6, 0x98, 0x33, 0x96, 0x8c, 0xed, 0x2e, 0x0d, 0x26, 0x85, 0xe0, + 0x68, 0xea, 0x7d, 0x59, 0xf6, 0xe6, 0x73, 0xaf, 0x2b, 0x7d, 0x35, 0x99, +}; +static const unsigned char kat453_nonce[] = { + 0xc6, 0x30, 0xe4, 0x8e, 0xe0, 0xd5, 0x35, 0x3f, 0xc7, 0xed, 0x4d, 0x60, + 0x7d, 0xef, 0x81, 0x31, +}; +static const unsigned char kat453_persstr[] = { + 0x49, 0xcc, 0x83, 0x10, 0xe0, 0xe8, 0x98, 0x46, 0xb6, 0x4f, 0x58, 0xfb, + 0xe8, 0xe2, 0xbb, 0xf6, 0x8c, 0xf9, 0x99, 0x12, 0x6f, 0x44, 0x34, 0xdf, + 0x3e, 0x53, 0x26, 0xf6, 0x19, 0x6e, 0xfd, 0x41, +}; +static const unsigned char kat453_addin0[] = {0}; +static const unsigned char kat453_addin1[] = {0}; +static const unsigned char kat453_retbits[] = { + 0xf7, 0xf4, 0xbd, 0x0d, 0xb9, 0x84, 0xa2, 0x38, 0xdf, 0xa9, 0xdd, 0xe2, + 0xb5, 0x19, 0xdd, 0xfd, 0x0e, 0xb9, 0x9a, 0x54, 0xfb, 0x0a, 0xbb, 0x73, + 0x87, 0x3b, 0x3c, 0x1f, 0x50, 0x84, 0xdc, 0x64, 0x12, 0xbe, 0x35, 0x3f, + 0x58, 0x0b, 0xe0, 0x1c, 0xba, 0x58, 0xdc, 0x1d, 0x90, 0xa5, 0x8b, 0xc9, + 0x63, 0xbd, 0xb7, 0x7d, 0x21, 0x70, 0x15, 0x99, 0x87, 0x25, 0x9b, 0x60, + 0xc6, 0x6b, 0x86, 0x10, +}; +static const struct drbg_kat_no_reseed kat453_t = { + 2, kat453_entropyin, kat453_nonce, kat453_persstr, + kat453_addin0, kat453_addin1, kat453_retbits +}; +static const struct drbg_kat kat453 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat453_t +}; + +static const unsigned char kat454_entropyin[] = { + 0xc1, 0xc7, 0x21, 0x67, 0x85, 0xa9, 0x1e, 0x28, 0x16, 0xc8, 0xd4, 0xd1, + 0x41, 0x77, 0x2d, 0x12, 0x2a, 0xc3, 0xa1, 0x08, 0xd6, 0xea, 0x03, 0x44, +}; +static const unsigned char kat454_nonce[] = { + 0x8e, 0x22, 0x8b, 0x8f, 0xd6, 0xe4, 0x67, 0x16, 0x09, 0xa2, 0x46, 0x08, + 0x2c, 0xaa, 0x3f, 0x2b, +}; +static const unsigned char kat454_persstr[] = { + 0xd4, 0x0f, 0x20, 0x72, 0xa2, 0x73, 0x54, 0xdc, 0xe5, 0xd4, 0xb1, 0x90, + 0xc0, 0x3c, 0x79, 0xc7, 0x04, 0x41, 0xf1, 0xb9, 0xac, 0x0e, 0x61, 0x34, + 0x5b, 0x76, 0x71, 0xdd, 0x57, 0x7f, 0xf4, 0xab, +}; +static const unsigned char kat454_addin0[] = {0}; +static const unsigned char kat454_addin1[] = {0}; +static const unsigned char kat454_retbits[] = { + 0x55, 0xd4, 0x62, 0xeb, 0x21, 0x08, 0x3b, 0x55, 0xfa, 0x5b, 0xa9, 0xb6, + 0x06, 0xfb, 0xf6, 0x66, 0x91, 0x90, 0x23, 0x5c, 0xf1, 0x12, 0x12, 0x3a, + 0x40, 0xa4, 0xa2, 0xcb, 0xf2, 0x4a, 0xad, 0xb6, 0x18, 0x14, 0xfe, 0x50, + 0x35, 0x8e, 0xaa, 0x13, 0x77, 0xfc, 0x82, 0x93, 0x12, 0xd9, 0x83, 0x4d, + 0xc6, 0xa3, 0x73, 0x5d, 0x93, 0x6a, 0xb3, 0x05, 0x57, 0x53, 0x2b, 0x69, + 0xcd, 0x7b, 0x26, 0x8e, +}; +static const struct drbg_kat_no_reseed kat454_t = { + 3, kat454_entropyin, kat454_nonce, kat454_persstr, + kat454_addin0, kat454_addin1, kat454_retbits +}; +static const struct drbg_kat kat454 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat454_t +}; + +static const unsigned char kat455_entropyin[] = { + 0xb3, 0x47, 0x43, 0x30, 0xa2, 0x63, 0x61, 0xab, 0xaf, 0x69, 0x51, 0x1f, + 0x92, 0x01, 0x80, 0x69, 0x2a, 0x10, 0xb8, 0x29, 0xe6, 0x0f, 0x9e, 0x27, +}; +static const unsigned char kat455_nonce[] = { + 0xbe, 0x42, 0x0f, 0xf2, 0x6f, 0x33, 0xae, 0x5c, 0x11, 0x35, 0x05, 0x7e, + 0x37, 0x9c, 0xe8, 0xf7, +}; +static const unsigned char kat455_persstr[] = { + 0x2b, 0x21, 0xb8, 0x48, 0xb8, 0xae, 0xa5, 0x1b, 0x43, 0x24, 0xf9, 0xbd, + 0xd6, 0x27, 0x52, 0xf5, 0x48, 0xfc, 0xdc, 0x5a, 0xb3, 0x20, 0xcb, 0x33, + 0xdb, 0x1f, 0x23, 0xf9, 0x38, 0x3b, 0x57, 0x65, +}; +static const unsigned char kat455_addin0[] = {0}; +static const unsigned char kat455_addin1[] = {0}; +static const unsigned char kat455_retbits[] = { + 0x31, 0x40, 0x15, 0x58, 0x8b, 0xa1, 0x8c, 0x37, 0x5f, 0xeb, 0xd6, 0x4e, + 0xe9, 0x54, 0x23, 0xd4, 0x2a, 0x76, 0x79, 0xda, 0x10, 0xe7, 0xe1, 0x17, + 0xd7, 0xb9, 0x70, 0x89, 0xbd, 0xd2, 0x00, 0x27, 0x01, 0x0d, 0x7e, 0x60, + 0x2d, 0x6e, 0x79, 0xb8, 0xec, 0x41, 0xa7, 0xe2, 0xbf, 0x6a, 0xc4, 0x6a, + 0x41, 0xea, 0x66, 0x16, 0x01, 0xbb, 0xf6, 0x66, 0xaa, 0xf9, 0x9f, 0xb5, + 0x46, 0x7f, 0x22, 0x1e, +}; +static const struct drbg_kat_no_reseed kat455_t = { + 4, kat455_entropyin, kat455_nonce, kat455_persstr, + kat455_addin0, kat455_addin1, kat455_retbits +}; +static const struct drbg_kat kat455 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat455_t +}; + +static const unsigned char kat456_entropyin[] = { + 0xa9, 0x5c, 0x12, 0xce, 0x08, 0xf5, 0x87, 0xfd, 0xec, 0xc6, 0x9e, 0x8f, + 0x41, 0xe7, 0xb7, 0x17, 0x90, 0x09, 0x4d, 0x46, 0xdd, 0x5b, 0xa7, 0xd9, +}; +static const unsigned char kat456_nonce[] = { + 0xbe, 0x3e, 0xca, 0x66, 0x8b, 0x3e, 0xb2, 0x5d, 0xdc, 0x33, 0x36, 0xac, + 0x70, 0xe3, 0x4a, 0x56, +}; +static const unsigned char kat456_persstr[] = { + 0x01, 0xbf, 0xca, 0x95, 0x6d, 0x03, 0x70, 0xb8, 0x50, 0x9e, 0xbd, 0x40, + 0x83, 0x48, 0x72, 0x28, 0xea, 0x95, 0x72, 0xeb, 0x52, 0xc6, 0x4e, 0x83, + 0x46, 0x2c, 0x09, 0x07, 0x72, 0x08, 0x87, 0x60, +}; +static const unsigned char kat456_addin0[] = {0}; +static const unsigned char kat456_addin1[] = {0}; +static const unsigned char kat456_retbits[] = { + 0xa9, 0x94, 0xa0, 0xb9, 0x7c, 0x21, 0xcc, 0x35, 0x51, 0xcd, 0xc6, 0x46, + 0x02, 0xda, 0x0b, 0x1f, 0x67, 0x5d, 0x72, 0x29, 0xf4, 0x50, 0x40, 0x3e, + 0x30, 0x3d, 0x1a, 0x7c, 0xb9, 0x37, 0x6e, 0x9b, 0x5f, 0x88, 0x99, 0x2c, + 0x43, 0x86, 0xab, 0x75, 0x86, 0x4c, 0x24, 0xc5, 0xba, 0xe2, 0xfc, 0xe8, + 0xb0, 0x0e, 0x9b, 0xa6, 0xa6, 0x2f, 0x17, 0x62, 0x09, 0x89, 0x45, 0x65, + 0x04, 0x4c, 0x94, 0x21, +}; +static const struct drbg_kat_no_reseed kat456_t = { + 5, kat456_entropyin, kat456_nonce, kat456_persstr, + kat456_addin0, kat456_addin1, kat456_retbits +}; +static const struct drbg_kat kat456 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat456_t +}; + +static const unsigned char kat457_entropyin[] = { + 0xfd, 0xbf, 0x44, 0x18, 0x64, 0x51, 0xe1, 0x9c, 0x0e, 0x0e, 0x71, 0x98, + 0x49, 0x55, 0xd3, 0x01, 0x43, 0x46, 0x14, 0x67, 0x9c, 0xa0, 0x53, 0x10, +}; +static const unsigned char kat457_nonce[] = { + 0xc4, 0x46, 0xf2, 0xc5, 0x0f, 0x81, 0x48, 0xb4, 0x43, 0x5f, 0xa7, 0xf0, + 0x39, 0x01, 0xad, 0x16, +}; +static const unsigned char kat457_persstr[] = { + 0x0c, 0x40, 0x15, 0x31, 0x7c, 0x92, 0x2f, 0xbc, 0xe0, 0x93, 0x4b, 0xc2, + 0x96, 0xec, 0x4d, 0x0c, 0x5e, 0x87, 0x94, 0x0c, 0xc3, 0x5b, 0x53, 0x5e, + 0xbb, 0x32, 0x53, 0xc5, 0xd1, 0x0c, 0xb5, 0x0d, +}; +static const unsigned char kat457_addin0[] = {0}; +static const unsigned char kat457_addin1[] = {0}; +static const unsigned char kat457_retbits[] = { + 0x0d, 0x20, 0x84, 0x32, 0x19, 0x43, 0x3b, 0x90, 0x3e, 0x8a, 0x8e, 0x70, + 0xe4, 0x55, 0xcf, 0x57, 0x4b, 0xb3, 0x15, 0x30, 0x8c, 0xf9, 0xf2, 0xd8, + 0x37, 0xb7, 0xb2, 0x35, 0xa9, 0x5f, 0x2a, 0xc9, 0x89, 0x66, 0x1c, 0xb8, + 0x65, 0xe8, 0xf4, 0xb7, 0x74, 0x94, 0xa3, 0xdc, 0xa3, 0x14, 0x80, 0x15, + 0xab, 0xde, 0x0a, 0x73, 0xc6, 0x56, 0xa7, 0xa3, 0x6a, 0xae, 0x91, 0xf0, + 0x2d, 0xce, 0x30, 0xbd, +}; +static const struct drbg_kat_no_reseed kat457_t = { + 6, kat457_entropyin, kat457_nonce, kat457_persstr, + kat457_addin0, kat457_addin1, kat457_retbits +}; +static const struct drbg_kat kat457 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat457_t +}; + +static const unsigned char kat458_entropyin[] = { + 0x3e, 0xf9, 0x4f, 0xda, 0x2d, 0x12, 0xa0, 0x76, 0xee, 0x5a, 0xbf, 0xd7, + 0xef, 0x39, 0xe6, 0xc7, 0xd7, 0x5a, 0x7f, 0xb9, 0x28, 0x1b, 0x4b, 0x55, +}; +static const unsigned char kat458_nonce[] = { + 0xd8, 0x10, 0x72, 0xc4, 0x6e, 0xfb, 0xd9, 0x1e, 0x9c, 0x6b, 0xda, 0x13, + 0xcc, 0xc8, 0x7c, 0x7e, +}; +static const unsigned char kat458_persstr[] = { + 0x57, 0x11, 0xa9, 0x70, 0x5d, 0x80, 0x0f, 0xa1, 0xa2, 0x1b, 0xd7, 0x75, + 0x2e, 0x3f, 0x1d, 0x3d, 0xa9, 0x0a, 0x1f, 0x33, 0x69, 0xfe, 0xa4, 0x03, + 0xa9, 0xcb, 0x65, 0x81, 0x24, 0x4c, 0x7d, 0xe9, +}; +static const unsigned char kat458_addin0[] = {0}; +static const unsigned char kat458_addin1[] = {0}; +static const unsigned char kat458_retbits[] = { + 0x7d, 0x70, 0x72, 0x2a, 0x76, 0x82, 0x52, 0x64, 0xb3, 0x70, 0x19, 0xb4, + 0xda, 0x28, 0x6c, 0x73, 0x47, 0x89, 0x0f, 0x59, 0xf0, 0xa4, 0x98, 0x72, + 0x8e, 0x63, 0x59, 0xbd, 0x9d, 0x04, 0xed, 0x96, 0xa7, 0x58, 0x81, 0x66, + 0xc6, 0xef, 0x39, 0x1d, 0xa0, 0x79, 0x94, 0xd6, 0x3d, 0xb8, 0xa2, 0xfb, + 0x2c, 0xdc, 0xe3, 0x18, 0x7b, 0x56, 0xae, 0xe9, 0xa2, 0xd5, 0xcc, 0x0f, + 0x85, 0x2b, 0x2e, 0xd9, +}; +static const struct drbg_kat_no_reseed kat458_t = { + 7, kat458_entropyin, kat458_nonce, kat458_persstr, + kat458_addin0, kat458_addin1, kat458_retbits +}; +static const struct drbg_kat kat458 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat458_t +}; + +static const unsigned char kat459_entropyin[] = { + 0xf3, 0x51, 0x9e, 0x7d, 0xa5, 0x79, 0x70, 0x17, 0xef, 0xa1, 0xa1, 0xa0, + 0x15, 0xf9, 0xa6, 0x14, 0x47, 0xfa, 0x20, 0xd0, 0xf2, 0xfa, 0x4d, 0x51, +}; +static const unsigned char kat459_nonce[] = { + 0xfd, 0x2d, 0x1e, 0xae, 0xe6, 0xd8, 0x45, 0x5a, 0x03, 0xe8, 0x3a, 0x0f, + 0x80, 0xe1, 0x5b, 0x17, +}; +static const unsigned char kat459_persstr[] = { + 0x1a, 0xb1, 0x08, 0xec, 0x09, 0x92, 0x70, 0x04, 0x93, 0x26, 0xd1, 0xde, + 0xde, 0xee, 0x52, 0x6b, 0x29, 0xd1, 0x77, 0x73, 0xf7, 0x66, 0x57, 0x18, + 0x66, 0xf4, 0xe9, 0x38, 0x3c, 0x25, 0xcc, 0xfa, +}; +static const unsigned char kat459_addin0[] = {0}; +static const unsigned char kat459_addin1[] = {0}; +static const unsigned char kat459_retbits[] = { + 0xd2, 0xe7, 0x66, 0x43, 0xe8, 0xf9, 0xec, 0x5a, 0x09, 0xf8, 0x66, 0x55, + 0xfc, 0x65, 0x73, 0x8d, 0xd0, 0xd2, 0x0a, 0x52, 0x5f, 0x14, 0x97, 0xb3, + 0x27, 0x29, 0xaf, 0xce, 0xe8, 0x73, 0xc8, 0x09, 0x9f, 0x6b, 0x61, 0xc4, + 0xd9, 0x32, 0x4e, 0x02, 0xa2, 0xd8, 0x9e, 0x50, 0xf3, 0x75, 0x84, 0xc2, + 0xcd, 0x27, 0x76, 0x34, 0x22, 0x10, 0xda, 0x42, 0x05, 0x8f, 0x07, 0xdf, + 0x3f, 0x85, 0xf8, 0xac, +}; +static const struct drbg_kat_no_reseed kat459_t = { + 8, kat459_entropyin, kat459_nonce, kat459_persstr, + kat459_addin0, kat459_addin1, kat459_retbits +}; +static const struct drbg_kat kat459 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat459_t +}; + +static const unsigned char kat460_entropyin[] = { + 0x41, 0x07, 0x2a, 0x1c, 0x20, 0x92, 0x0c, 0xe5, 0xc5, 0x2c, 0x9e, 0xb6, + 0x8b, 0x87, 0xf9, 0x7a, 0x65, 0x8a, 0x66, 0x97, 0xd4, 0xe9, 0x67, 0xdb, +}; +static const unsigned char kat460_nonce[] = { + 0xcb, 0x03, 0xef, 0xae, 0xca, 0x21, 0x53, 0x4c, 0x59, 0xa9, 0xbb, 0x12, + 0xf1, 0x46, 0xee, 0x21, +}; +static const unsigned char kat460_persstr[] = { + 0x9a, 0x09, 0xae, 0x50, 0xf7, 0x61, 0x49, 0xa9, 0xa1, 0xf5, 0x5a, 0x37, + 0xec, 0x30, 0xaa, 0x08, 0xcb, 0x57, 0x30, 0x57, 0xd4, 0xf5, 0xb5, 0xfa, + 0x77, 0x13, 0xef, 0x7a, 0x1c, 0x08, 0x9b, 0xaa, +}; +static const unsigned char kat460_addin0[] = {0}; +static const unsigned char kat460_addin1[] = {0}; +static const unsigned char kat460_retbits[] = { + 0x52, 0x74, 0x42, 0x04, 0x1c, 0x23, 0x0a, 0xd4, 0x96, 0x82, 0xd7, 0x89, + 0x2c, 0x85, 0x16, 0xf6, 0x58, 0xed, 0x0b, 0x16, 0x38, 0xd1, 0xed, 0x01, + 0xb2, 0x79, 0x14, 0x7a, 0x6b, 0x4a, 0x81, 0x5e, 0x41, 0x66, 0x67, 0x90, + 0x99, 0xfc, 0x2e, 0xa1, 0xfc, 0x44, 0xb4, 0xe5, 0xe4, 0xb6, 0x10, 0x6f, + 0x66, 0x91, 0x50, 0x5d, 0xd0, 0x62, 0xea, 0x3b, 0x3d, 0xd6, 0x73, 0x32, + 0xec, 0x48, 0x2e, 0xf3, +}; +static const struct drbg_kat_no_reseed kat460_t = { + 9, kat460_entropyin, kat460_nonce, kat460_persstr, + kat460_addin0, kat460_addin1, kat460_retbits +}; +static const struct drbg_kat kat460 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat460_t +}; + +static const unsigned char kat461_entropyin[] = { + 0xfb, 0x67, 0xde, 0x62, 0x27, 0x1a, 0xda, 0xff, 0x78, 0xdd, 0x3c, 0x06, + 0xfa, 0xb6, 0xb9, 0xbd, 0x01, 0xa8, 0x49, 0x6f, 0xc9, 0xbe, 0xb6, 0xa1, +}; +static const unsigned char kat461_nonce[] = { + 0x1c, 0x5f, 0x50, 0xe7, 0x37, 0x2f, 0x8f, 0x8d, 0x40, 0x44, 0x67, 0x4c, + 0x1f, 0xf1, 0x98, 0x98, +}; +static const unsigned char kat461_persstr[] = { + 0x8e, 0x4f, 0x33, 0xea, 0x52, 0xa9, 0x94, 0x43, 0x83, 0xeb, 0xe9, 0x0a, + 0x30, 0x42, 0xaa, 0xfe, 0x13, 0x03, 0xc3, 0x28, 0x29, 0x34, 0x04, 0x37, + 0x95, 0x7f, 0x83, 0x35, 0x6c, 0x83, 0x7e, 0x2a, +}; +static const unsigned char kat461_addin0[] = {0}; +static const unsigned char kat461_addin1[] = {0}; +static const unsigned char kat461_retbits[] = { + 0xf3, 0x26, 0x9b, 0x27, 0xab, 0x4f, 0x7e, 0xb1, 0xff, 0x07, 0x0e, 0xb2, + 0xbb, 0x87, 0x94, 0xb4, 0xf2, 0x2b, 0x0e, 0xec, 0x45, 0xc2, 0xad, 0x1b, + 0xbf, 0x2c, 0x5c, 0x0b, 0x7c, 0xd3, 0x2d, 0x4d, 0xe0, 0x68, 0xf3, 0xe8, + 0x28, 0x2c, 0x3d, 0xcc, 0x35, 0xc9, 0xf4, 0x69, 0xef, 0x0a, 0x9d, 0x31, + 0x75, 0x6a, 0xed, 0xce, 0x00, 0xcf, 0xae, 0xb3, 0x09, 0x59, 0x4b, 0x81, + 0x64, 0x91, 0xcc, 0xad, +}; +static const struct drbg_kat_no_reseed kat461_t = { + 10, kat461_entropyin, kat461_nonce, kat461_persstr, + kat461_addin0, kat461_addin1, kat461_retbits +}; +static const struct drbg_kat kat461 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat461_t +}; + +static const unsigned char kat462_entropyin[] = { + 0xa2, 0x2d, 0x4f, 0xac, 0x12, 0x66, 0xce, 0x8f, 0x7c, 0xba, 0xff, 0x6b, + 0x9d, 0x47, 0x42, 0x4a, 0x10, 0xf2, 0x69, 0xe1, 0x6b, 0x8c, 0x52, 0x78, +}; +static const unsigned char kat462_nonce[] = { + 0x7a, 0x04, 0xd4, 0x04, 0x45, 0x33, 0xe9, 0x83, 0x92, 0x60, 0x23, 0xc5, + 0xa8, 0xc0, 0xb1, 0x0b, +}; +static const unsigned char kat462_persstr[] = { + 0xa3, 0x75, 0xcb, 0x70, 0xba, 0x80, 0x06, 0xc7, 0x4c, 0xcd, 0x06, 0xa9, + 0xc8, 0xe4, 0x1e, 0xad, 0xc4, 0x45, 0x33, 0x1e, 0x14, 0xb8, 0xe1, 0x95, + 0xf4, 0xa3, 0xfa, 0xb0, 0xc1, 0xdf, 0x6c, 0x96, +}; +static const unsigned char kat462_addin0[] = {0}; +static const unsigned char kat462_addin1[] = {0}; +static const unsigned char kat462_retbits[] = { + 0xb3, 0xf9, 0xa3, 0x93, 0x85, 0x61, 0x6f, 0x68, 0x51, 0xbe, 0xb7, 0xc3, + 0x77, 0x09, 0xac, 0x1f, 0x30, 0x66, 0x7d, 0xf1, 0x1c, 0x9d, 0x04, 0x7d, + 0xfc, 0xd5, 0xc7, 0x80, 0x3e, 0x93, 0x0b, 0xf3, 0x84, 0x07, 0x0e, 0x35, + 0x0f, 0x1d, 0x0b, 0x8f, 0xaa, 0x39, 0xf2, 0x9c, 0x98, 0xd9, 0xdf, 0x59, + 0xd3, 0x5f, 0xfb, 0x52, 0x0c, 0x8b, 0xc9, 0x0b, 0xe2, 0x2f, 0xc7, 0x7d, + 0x4d, 0x67, 0xf1, 0x34, +}; +static const struct drbg_kat_no_reseed kat462_t = { + 11, kat462_entropyin, kat462_nonce, kat462_persstr, + kat462_addin0, kat462_addin1, kat462_retbits +}; +static const struct drbg_kat kat462 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat462_t +}; + +static const unsigned char kat463_entropyin[] = { + 0x48, 0xc4, 0xfc, 0xab, 0x28, 0x5f, 0x5b, 0xb3, 0xed, 0xaa, 0x34, 0x8c, + 0x45, 0x06, 0xd2, 0x36, 0xbb, 0x9f, 0xbb, 0x29, 0x7d, 0xd4, 0xf3, 0x28, +}; +static const unsigned char kat463_nonce[] = { + 0x8a, 0xda, 0x0b, 0x51, 0x6d, 0xc4, 0x9a, 0xc8, 0xc3, 0x44, 0xf3, 0xb7, + 0x28, 0x27, 0x40, 0x18, +}; +static const unsigned char kat463_persstr[] = { + 0x52, 0x8e, 0xed, 0x74, 0x30, 0x85, 0xd3, 0xd4, 0x16, 0xbd, 0x06, 0x98, + 0x4d, 0xe2, 0x44, 0x16, 0x1b, 0xde, 0xe0, 0xbf, 0xb5, 0x98, 0xa7, 0x47, + 0xf2, 0x9c, 0x37, 0xfa, 0x94, 0x12, 0x97, 0x6f, +}; +static const unsigned char kat463_addin0[] = {0}; +static const unsigned char kat463_addin1[] = {0}; +static const unsigned char kat463_retbits[] = { + 0x2b, 0x47, 0x3e, 0x1c, 0x19, 0x69, 0x3b, 0x30, 0x8d, 0xef, 0x41, 0xf0, + 0xcd, 0x99, 0xcd, 0xbf, 0x33, 0x1c, 0x7d, 0x7d, 0x21, 0x5c, 0xd5, 0x02, + 0x8e, 0x36, 0x19, 0xad, 0x91, 0xc8, 0xe7, 0xd5, 0xe0, 0x24, 0x80, 0x48, + 0x29, 0xf4, 0xb2, 0x90, 0x5a, 0x33, 0x54, 0x49, 0x96, 0x19, 0x6d, 0x5c, + 0xaf, 0xab, 0xd2, 0x27, 0x0d, 0x3c, 0xdd, 0x66, 0x89, 0xdd, 0x12, 0x46, + 0x24, 0x68, 0xad, 0x50, +}; +static const struct drbg_kat_no_reseed kat463_t = { + 12, kat463_entropyin, kat463_nonce, kat463_persstr, + kat463_addin0, kat463_addin1, kat463_retbits +}; +static const struct drbg_kat kat463 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat463_t +}; + +static const unsigned char kat464_entropyin[] = { + 0x60, 0x7f, 0xf9, 0x9f, 0xac, 0xb2, 0x69, 0xd5, 0xe8, 0x5b, 0xaf, 0x03, + 0xdd, 0x93, 0xde, 0x5e, 0xa5, 0x43, 0x16, 0x8e, 0x69, 0x39, 0xd9, 0x72, +}; +static const unsigned char kat464_nonce[] = { + 0xf8, 0x49, 0xa0, 0xfa, 0x95, 0xd0, 0x4b, 0x74, 0x1e, 0x46, 0xd1, 0x8f, + 0x06, 0x12, 0xee, 0xb7, +}; +static const unsigned char kat464_persstr[] = { + 0x95, 0xfe, 0x53, 0xeb, 0x4d, 0xb0, 0x9a, 0xa8, 0x5b, 0x94, 0x06, 0x53, + 0x0c, 0x9e, 0x99, 0x4c, 0x69, 0x5b, 0x86, 0xc9, 0xf0, 0x4e, 0xe5, 0x3f, + 0x7f, 0x49, 0x2c, 0x4d, 0x75, 0x82, 0x02, 0xad, +}; +static const unsigned char kat464_addin0[] = {0}; +static const unsigned char kat464_addin1[] = {0}; +static const unsigned char kat464_retbits[] = { + 0xca, 0xe0, 0x4e, 0xd6, 0x42, 0xfa, 0x6d, 0xd8, 0x75, 0x6a, 0x97, 0xb6, + 0xa3, 0x24, 0x94, 0xd6, 0xb9, 0x5d, 0x5a, 0x52, 0x65, 0x41, 0x2d, 0x27, + 0xa0, 0xda, 0x9a, 0x70, 0xad, 0x91, 0x4e, 0xd3, 0x1a, 0x67, 0x4c, 0x6e, + 0xd9, 0x00, 0xbe, 0x9a, 0xfa, 0x49, 0x3f, 0x8e, 0x14, 0x1a, 0x08, 0xab, + 0xa8, 0xda, 0xb7, 0x5c, 0xba, 0x57, 0x3c, 0x46, 0x63, 0x7a, 0x9f, 0xaf, + 0x4c, 0x6a, 0x71, 0x61, +}; +static const struct drbg_kat_no_reseed kat464_t = { + 13, kat464_entropyin, kat464_nonce, kat464_persstr, + kat464_addin0, kat464_addin1, kat464_retbits +}; +static const struct drbg_kat kat464 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat464_t +}; + +static const unsigned char kat465_entropyin[] = { + 0x99, 0xe2, 0xdf, 0x3b, 0xd5, 0x50, 0x08, 0xe9, 0xce, 0xa0, 0xd0, 0xea, + 0x58, 0xc3, 0x02, 0x2e, 0xff, 0x1d, 0x1e, 0x48, 0x9c, 0xd6, 0xf8, 0xee, +}; +static const unsigned char kat465_nonce[] = { + 0xb3, 0x90, 0x7b, 0x88, 0x20, 0xc9, 0xf2, 0x29, 0x79, 0xb6, 0x63, 0x29, + 0x2f, 0x7a, 0xc7, 0x88, +}; +static const unsigned char kat465_persstr[] = { + 0x28, 0xbe, 0xb6, 0x61, 0x18, 0xcb, 0xce, 0x5e, 0xed, 0x82, 0x5b, 0xdc, + 0xa9, 0xc8, 0xb6, 0x5b, 0x6c, 0x6a, 0x49, 0x8d, 0xb6, 0x22, 0x6e, 0x72, + 0xe1, 0xfc, 0x01, 0xe7, 0x1f, 0xd2, 0x2c, 0x82, +}; +static const unsigned char kat465_addin0[] = {0}; +static const unsigned char kat465_addin1[] = {0}; +static const unsigned char kat465_retbits[] = { + 0x43, 0xeb, 0x72, 0x1f, 0x36, 0x69, 0xf9, 0x18, 0xfd, 0x84, 0x1d, 0x79, + 0xe2, 0xa2, 0x36, 0x48, 0xf8, 0x8c, 0x98, 0x69, 0x26, 0x0b, 0x62, 0x4b, + 0x8a, 0x33, 0x81, 0xbd, 0xc1, 0xd2, 0xb1, 0x29, 0x6b, 0x6b, 0xa1, 0xe0, + 0x75, 0xcd, 0x4d, 0x3e, 0xe0, 0x6a, 0x8b, 0x4f, 0x98, 0x6c, 0x00, 0xbb, + 0x2b, 0x9c, 0x5a, 0x1e, 0xb2, 0x3b, 0x82, 0xce, 0x08, 0x1f, 0x51, 0x91, + 0x3e, 0x46, 0xa4, 0xdc, +}; +static const struct drbg_kat_no_reseed kat465_t = { + 14, kat465_entropyin, kat465_nonce, kat465_persstr, + kat465_addin0, kat465_addin1, kat465_retbits +}; +static const struct drbg_kat kat465 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat465_t +}; + +static const unsigned char kat466_entropyin[] = { + 0x43, 0xf2, 0x47, 0xa2, 0xee, 0x1c, 0xb5, 0x94, 0x3f, 0x0a, 0x4a, 0x69, + 0x42, 0x35, 0x5b, 0x16, 0x33, 0xab, 0x82, 0xd0, 0xcf, 0x60, 0xd4, 0x33, +}; +static const unsigned char kat466_nonce[] = { + 0x81, 0x81, 0xab, 0x27, 0xf9, 0x3f, 0x66, 0x23, 0x25, 0xf8, 0xcd, 0xf7, + 0x7b, 0xd4, 0x63, 0x99, +}; +static const unsigned char kat466_persstr[] = { + 0xd3, 0x93, 0x50, 0x8a, 0x6d, 0xa0, 0x49, 0xa6, 0x46, 0xaa, 0xc8, 0xc9, + 0xcf, 0x8f, 0xf5, 0x3a, 0x70, 0xf6, 0x64, 0x5a, 0x67, 0xec, 0x46, 0x6d, + 0x6e, 0xa6, 0x24, 0x1e, 0x0f, 0xac, 0xfa, 0xd9, +}; +static const unsigned char kat466_addin0[] = { + 0xdc, 0x3e, 0x8d, 0x4c, 0x2b, 0xd4, 0xae, 0xe2, 0x78, 0xde, 0x3f, 0x99, + 0x8c, 0xa6, 0x03, 0xec, 0x50, 0x23, 0x32, 0xb6, 0xa1, 0xcb, 0x6c, 0x82, + 0x85, 0xb8, 0x4c, 0x84, 0xba, 0x54, 0xd7, 0x32, +}; +static const unsigned char kat466_addin1[] = { + 0x1d, 0x0d, 0x64, 0xb5, 0xa5, 0x0d, 0xe0, 0x3e, 0xe2, 0x65, 0x4f, 0xa5, + 0x90, 0x00, 0xfb, 0xff, 0x87, 0xb4, 0xb8, 0xb3, 0x2e, 0x90, 0xa4, 0xde, + 0xe9, 0x0c, 0x9a, 0x76, 0x12, 0xea, 0xa5, 0x75, +}; +static const unsigned char kat466_retbits[] = { + 0xd6, 0xd7, 0xc6, 0x4d, 0xd9, 0x22, 0xf9, 0xc7, 0xf3, 0xf5, 0x38, 0xc4, + 0xcb, 0xc7, 0x91, 0xda, 0x2d, 0xd1, 0x3f, 0x27, 0x81, 0x35, 0x22, 0x5c, + 0xd7, 0xce, 0x36, 0x73, 0x8c, 0xe2, 0x72, 0xf3, 0x51, 0x55, 0xd4, 0xc2, + 0x69, 0x6e, 0x7e, 0x10, 0xa8, 0xf4, 0x8c, 0x73, 0x60, 0xa1, 0xb3, 0x1a, + 0x30, 0x03, 0x7f, 0x66, 0x04, 0xff, 0xb7, 0xbc, 0x7b, 0x29, 0xef, 0x0e, + 0xf5, 0xac, 0xa8, 0x4a, +}; +static const struct drbg_kat_no_reseed kat466_t = { + 0, kat466_entropyin, kat466_nonce, kat466_persstr, + kat466_addin0, kat466_addin1, kat466_retbits +}; +static const struct drbg_kat kat466 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat466_t +}; + +static const unsigned char kat467_entropyin[] = { + 0xb4, 0xe8, 0xfb, 0xf6, 0x33, 0x51, 0x38, 0xa2, 0x4e, 0xfb, 0x12, 0x0e, + 0xe9, 0xff, 0x7f, 0x99, 0xe1, 0x94, 0xa1, 0x7e, 0x64, 0x49, 0x62, 0xe0, +}; +static const unsigned char kat467_nonce[] = { + 0x8e, 0x4d, 0xad, 0x78, 0x74, 0x19, 0x52, 0xb3, 0x4a, 0x27, 0xbb, 0x85, + 0xce, 0x2b, 0xeb, 0xd7, +}; +static const unsigned char kat467_persstr[] = { + 0x44, 0x08, 0xdc, 0x6f, 0x19, 0xad, 0x7c, 0xab, 0x07, 0x60, 0x56, 0x0c, + 0x21, 0x75, 0x32, 0xab, 0x7d, 0xd5, 0x65, 0x81, 0x20, 0xa9, 0x4a, 0x60, + 0x3f, 0xe3, 0xb6, 0x2f, 0x8f, 0xc5, 0x58, 0x38, +}; +static const unsigned char kat467_addin0[] = { + 0x2f, 0x18, 0xe4, 0x2c, 0x7a, 0x50, 0x80, 0x1b, 0xf5, 0x13, 0x5a, 0x0d, + 0x8f, 0xce, 0x0a, 0x9b, 0x80, 0x2b, 0xea, 0x0b, 0xef, 0x4c, 0x7f, 0x35, + 0xe4, 0xd8, 0x94, 0x82, 0x11, 0x54, 0x72, 0x21, +}; +static const unsigned char kat467_addin1[] = { + 0xde, 0x9e, 0x72, 0xfe, 0x41, 0x30, 0xfb, 0x75, 0xc8, 0xca, 0xed, 0x41, + 0x5e, 0x14, 0xbd, 0x0b, 0x92, 0x2b, 0x9b, 0xef, 0x8b, 0xe1, 0x44, 0xf4, + 0x36, 0xde, 0xfa, 0xda, 0x10, 0x96, 0xf9, 0x81, +}; +static const unsigned char kat467_retbits[] = { + 0x85, 0x7a, 0x93, 0x1d, 0x68, 0xe2, 0xf1, 0xf4, 0x1d, 0x9e, 0x92, 0xa7, + 0x4f, 0x57, 0x8b, 0xcc, 0x86, 0x08, 0x26, 0x04, 0x03, 0x2f, 0x3b, 0xca, + 0x15, 0x2e, 0x70, 0xcb, 0xb4, 0xc0, 0xfa, 0xda, 0xdc, 0x26, 0xbd, 0x26, + 0x67, 0x19, 0x4a, 0x6c, 0x72, 0x7e, 0x32, 0xec, 0xc1, 0xb2, 0xfc, 0x63, + 0x4b, 0x5b, 0xdd, 0x2d, 0x90, 0x06, 0xe6, 0xfa, 0xaf, 0xfc, 0x23, 0x34, + 0x53, 0xda, 0x47, 0x25, +}; +static const struct drbg_kat_no_reseed kat467_t = { + 1, kat467_entropyin, kat467_nonce, kat467_persstr, + kat467_addin0, kat467_addin1, kat467_retbits +}; +static const struct drbg_kat kat467 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat467_t +}; + +static const unsigned char kat468_entropyin[] = { + 0xd3, 0xd9, 0x0c, 0x95, 0x3e, 0x60, 0xcc, 0xe2, 0x9d, 0x49, 0x13, 0xb6, + 0xba, 0x67, 0x66, 0xf9, 0xd8, 0x5f, 0x1f, 0xa0, 0x54, 0xf2, 0x35, 0x9c, +}; +static const unsigned char kat468_nonce[] = { + 0x90, 0x23, 0xad, 0x28, 0xe8, 0xc5, 0xf2, 0xe4, 0xbe, 0x8f, 0xb2, 0xd8, + 0x6f, 0x62, 0x25, 0x05, +}; +static const unsigned char kat468_persstr[] = { + 0xd4, 0x9d, 0xb6, 0x64, 0xdc, 0xa3, 0xc4, 0x0e, 0x69, 0x12, 0x7b, 0x04, + 0xf8, 0xec, 0x7f, 0xb0, 0x07, 0x73, 0xb8, 0xdd, 0xdd, 0xb9, 0x1a, 0xe2, + 0xe1, 0xe3, 0xc8, 0x4c, 0x68, 0xff, 0x98, 0x55, +}; +static const unsigned char kat468_addin0[] = { + 0xee, 0x10, 0xa8, 0x06, 0x78, 0x41, 0xb5, 0xb4, 0xa3, 0xa6, 0xf3, 0x49, + 0x67, 0x04, 0xe9, 0x74, 0x78, 0xa4, 0x4c, 0xdc, 0xc8, 0x57, 0xe4, 0xf2, + 0x96, 0x80, 0xf6, 0x69, 0xec, 0x5a, 0x83, 0xd1, +}; +static const unsigned char kat468_addin1[] = { + 0xef, 0xbb, 0x9a, 0x69, 0x6e, 0xfc, 0x90, 0xa7, 0x74, 0xee, 0x87, 0xb7, + 0xed, 0x43, 0x45, 0x03, 0x79, 0x2c, 0x1a, 0x29, 0xbe, 0xec, 0xe9, 0x34, + 0x2e, 0x0b, 0x57, 0x24, 0xc3, 0xf5, 0xbc, 0xc6, +}; +static const unsigned char kat468_retbits[] = { + 0x28, 0x4f, 0xec, 0xb8, 0x33, 0xa6, 0xe4, 0x18, 0xe9, 0xe5, 0x16, 0xc1, + 0x71, 0xfc, 0xe8, 0x52, 0xe7, 0x02, 0xa4, 0x48, 0x86, 0x74, 0x77, 0x1c, + 0x91, 0x3e, 0x85, 0x16, 0x9f, 0x19, 0x5b, 0xb7, 0x99, 0xf0, 0x19, 0xac, + 0x1b, 0x55, 0xa7, 0xe3, 0x93, 0x7f, 0xa7, 0x70, 0x33, 0x07, 0x22, 0xa8, + 0x01, 0x51, 0x13, 0x84, 0xd8, 0x56, 0xfb, 0x19, 0x9b, 0x76, 0xe2, 0x64, + 0xca, 0xa0, 0x6b, 0x6d, +}; +static const struct drbg_kat_no_reseed kat468_t = { + 2, kat468_entropyin, kat468_nonce, kat468_persstr, + kat468_addin0, kat468_addin1, kat468_retbits +}; +static const struct drbg_kat kat468 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat468_t +}; + +static const unsigned char kat469_entropyin[] = { + 0x90, 0x7b, 0xc8, 0xc3, 0xa8, 0xc6, 0x94, 0x64, 0x69, 0xc4, 0x88, 0xbf, + 0x18, 0xa8, 0xe6, 0x7f, 0x7c, 0xc0, 0x45, 0xff, 0x4e, 0xd6, 0x9d, 0x5f, +}; +static const unsigned char kat469_nonce[] = { + 0xc2, 0xe0, 0xcb, 0xb2, 0x6a, 0x48, 0x23, 0x2d, 0xd3, 0x23, 0x10, 0xb1, + 0xce, 0xb3, 0x2e, 0x9b, +}; +static const unsigned char kat469_persstr[] = { + 0xab, 0x67, 0xf1, 0xfd, 0x53, 0xe1, 0x2c, 0x36, 0x47, 0x22, 0xd6, 0xb5, + 0x47, 0x5d, 0x55, 0x55, 0xa1, 0x79, 0x51, 0xeb, 0x10, 0xd2, 0x00, 0x55, + 0xca, 0x3e, 0x40, 0x86, 0xbb, 0xde, 0xd2, 0xdb, +}; +static const unsigned char kat469_addin0[] = { + 0xac, 0x77, 0x29, 0x46, 0x2a, 0x01, 0x24, 0x14, 0x36, 0xc3, 0xbe, 0x8e, + 0x85, 0x40, 0x18, 0x73, 0x3a, 0x84, 0x25, 0x4f, 0x1e, 0x0a, 0x23, 0x43, + 0xca, 0x69, 0x05, 0x8c, 0x54, 0x71, 0x6f, 0x1b, +}; +static const unsigned char kat469_addin1[] = { + 0x85, 0xd4, 0x36, 0x47, 0xb3, 0x6e, 0x29, 0x4a, 0xbd, 0xdb, 0x01, 0x36, + 0xb6, 0x55, 0x0d, 0xf3, 0xcb, 0x31, 0x4c, 0x88, 0x92, 0xfe, 0x27, 0x9b, + 0x96, 0x5f, 0x4e, 0x89, 0x31, 0xed, 0xf2, 0xbf, +}; +static const unsigned char kat469_retbits[] = { + 0xad, 0x8a, 0x6f, 0xd4, 0xc3, 0xc8, 0x5c, 0x4d, 0xf1, 0x87, 0xf0, 0x35, + 0x43, 0x32, 0x50, 0xb6, 0x50, 0xec, 0x96, 0xad, 0x96, 0x2c, 0x36, 0x5a, + 0x8b, 0x14, 0x42, 0x5c, 0x4d, 0x37, 0xb0, 0xc4, 0xfd, 0x58, 0xd0, 0x0f, + 0x10, 0x94, 0xea, 0x76, 0x27, 0xac, 0xaf, 0x67, 0xb2, 0x37, 0x34, 0x46, + 0x83, 0xb5, 0x13, 0xe8, 0xf5, 0x24, 0xee, 0xc4, 0x96, 0xea, 0x90, 0x7b, + 0x0c, 0xb8, 0x1c, 0x27, +}; +static const struct drbg_kat_no_reseed kat469_t = { + 3, kat469_entropyin, kat469_nonce, kat469_persstr, + kat469_addin0, kat469_addin1, kat469_retbits +}; +static const struct drbg_kat kat469 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat469_t +}; + +static const unsigned char kat470_entropyin[] = { + 0x9e, 0xc0, 0x4e, 0x7c, 0x20, 0xf7, 0x76, 0x63, 0xd3, 0x30, 0xa4, 0x3e, + 0xf1, 0x93, 0xf3, 0xa3, 0xba, 0xee, 0xc8, 0x9e, 0xc0, 0x86, 0x0b, 0x7c, +}; +static const unsigned char kat470_nonce[] = { + 0x32, 0x67, 0xaa, 0xcc, 0x67, 0x60, 0x2d, 0x44, 0xb4, 0x06, 0x63, 0xf3, + 0xe7, 0x9d, 0x99, 0xa1, +}; +static const unsigned char kat470_persstr[] = { + 0xad, 0xc1, 0x05, 0xb4, 0x10, 0x39, 0xe0, 0x58, 0x63, 0x5b, 0x67, 0x6b, + 0xf7, 0xc0, 0x7d, 0x00, 0x45, 0xf7, 0x5e, 0xbf, 0x64, 0x23, 0x91, 0xf5, + 0x68, 0x49, 0x99, 0xa5, 0xc2, 0xf3, 0xa4, 0xfd, +}; +static const unsigned char kat470_addin0[] = { + 0xa5, 0xb3, 0x74, 0xce, 0x0a, 0x74, 0x9e, 0xd1, 0x20, 0xb7, 0xb3, 0xad, + 0xcc, 0x5e, 0xe9, 0x3d, 0xcc, 0xb2, 0xb0, 0x54, 0x55, 0xc6, 0x26, 0xdf, + 0x03, 0xd1, 0x86, 0xc9, 0x65, 0xbb, 0x6b, 0xbc, +}; +static const unsigned char kat470_addin1[] = { + 0x1e, 0xb5, 0x92, 0x13, 0x3f, 0x72, 0xec, 0x56, 0xc3, 0xda, 0xb6, 0xa5, + 0x37, 0x89, 0x72, 0x0b, 0xd2, 0xeb, 0xc1, 0xbd, 0x1f, 0x74, 0x6f, 0x7a, + 0x05, 0x49, 0x9d, 0xdb, 0x7d, 0x9c, 0x35, 0xa9, +}; +static const unsigned char kat470_retbits[] = { + 0x69, 0x9f, 0x32, 0xe3, 0x06, 0x6a, 0xc7, 0xe1, 0xf9, 0x3c, 0x8e, 0x0b, + 0x41, 0xdd, 0xea, 0x89, 0x8d, 0xf4, 0x22, 0x89, 0xf8, 0x63, 0x2b, 0x97, + 0x6f, 0x5e, 0x64, 0xea, 0xa8, 0x23, 0xff, 0x28, 0xdf, 0xd9, 0xd4, 0xe1, + 0x24, 0x44, 0x9a, 0x7f, 0xfe, 0x1a, 0x60, 0x3e, 0x04, 0x07, 0xb1, 0x3f, + 0x7b, 0x44, 0xb4, 0xa5, 0x01, 0x02, 0x5e, 0x12, 0x24, 0xd8, 0x4b, 0xd2, + 0xe7, 0x80, 0xa6, 0x44, +}; +static const struct drbg_kat_no_reseed kat470_t = { + 4, kat470_entropyin, kat470_nonce, kat470_persstr, + kat470_addin0, kat470_addin1, kat470_retbits +}; +static const struct drbg_kat kat470 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat470_t +}; + +static const unsigned char kat471_entropyin[] = { + 0x9d, 0xa2, 0x56, 0xb4, 0xe1, 0x5b, 0x21, 0xd4, 0x8a, 0x9f, 0x59, 0x25, + 0xc1, 0x1d, 0x27, 0x5c, 0x8b, 0x45, 0x8a, 0xef, 0x75, 0x0e, 0xa2, 0xb5, +}; +static const unsigned char kat471_nonce[] = { + 0x95, 0xa9, 0xbf, 0x02, 0xb8, 0xb9, 0xa9, 0x8f, 0x71, 0x20, 0xa8, 0x66, + 0x76, 0x41, 0x03, 0x54, +}; +static const unsigned char kat471_persstr[] = { + 0xf6, 0xe8, 0xc3, 0x6b, 0x41, 0xd3, 0xd0, 0xd7, 0x47, 0x13, 0x31, 0x98, + 0xa0, 0x30, 0x3c, 0x8a, 0x9a, 0x9d, 0xe2, 0xaa, 0x78, 0x46, 0x39, 0xaf, + 0x12, 0x2b, 0xac, 0x75, 0xd6, 0xeb, 0x85, 0x35, +}; +static const unsigned char kat471_addin0[] = { + 0x62, 0xda, 0x4a, 0xa2, 0x14, 0x44, 0x26, 0xd1, 0xee, 0x35, 0x81, 0xa8, + 0xc0, 0xf9, 0x1b, 0x84, 0xe1, 0x7a, 0xce, 0x43, 0xf5, 0x66, 0xb2, 0x57, + 0xd8, 0x5c, 0xf9, 0xf9, 0xb1, 0xdb, 0x02, 0x1d, +}; +static const unsigned char kat471_addin1[] = { + 0xd7, 0x1f, 0xfa, 0x97, 0xfd, 0x0a, 0x7a, 0x80, 0xb9, 0x19, 0xc2, 0x1d, + 0xd7, 0xaf, 0xfc, 0x57, 0x77, 0x00, 0xac, 0xa7, 0xdc, 0xa6, 0x31, 0x1d, + 0x3b, 0x90, 0x64, 0xf5, 0x02, 0x08, 0x43, 0x5b, +}; +static const unsigned char kat471_retbits[] = { + 0x12, 0x09, 0x92, 0xa8, 0x2a, 0xd8, 0xfe, 0xd5, 0xad, 0x49, 0xdb, 0x7b, + 0x75, 0x6b, 0x94, 0x18, 0x5e, 0x15, 0xb1, 0xfb, 0x53, 0xaa, 0xa6, 0x4e, + 0x6c, 0x7b, 0x9a, 0xc1, 0x44, 0x87, 0x30, 0x7d, 0x0f, 0xbb, 0x5f, 0x51, + 0x95, 0x27, 0xe4, 0x68, 0xfd, 0x97, 0x82, 0x91, 0x38, 0x1f, 0x95, 0x92, + 0xcc, 0xf5, 0x3d, 0xf5, 0x87, 0x58, 0x6c, 0xa0, 0xfd, 0xce, 0x0c, 0x81, + 0x31, 0x0d, 0xbb, 0xb3, +}; +static const struct drbg_kat_no_reseed kat471_t = { + 5, kat471_entropyin, kat471_nonce, kat471_persstr, + kat471_addin0, kat471_addin1, kat471_retbits +}; +static const struct drbg_kat kat471 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat471_t +}; + +static const unsigned char kat472_entropyin[] = { + 0xa8, 0x13, 0xae, 0x3d, 0x13, 0x8b, 0xb9, 0x76, 0x87, 0x59, 0xe2, 0x59, + 0x0a, 0xdd, 0xea, 0x63, 0x90, 0x26, 0x64, 0x05, 0xb8, 0xf5, 0x9b, 0x68, +}; +static const unsigned char kat472_nonce[] = { + 0x52, 0x49, 0xee, 0x76, 0xa7, 0xe7, 0x92, 0xe6, 0xa1, 0xce, 0x5c, 0xad, + 0xe7, 0x89, 0xb8, 0x46, +}; +static const unsigned char kat472_persstr[] = { + 0x7b, 0x4b, 0x71, 0x74, 0x7d, 0x17, 0x90, 0x2f, 0x3f, 0xbb, 0xeb, 0x3a, + 0x60, 0x00, 0x5c, 0x2a, 0x30, 0xe9, 0x02, 0xf6, 0x96, 0xa8, 0xd2, 0xd8, + 0xff, 0x68, 0x28, 0xd7, 0x55, 0x1d, 0x87, 0x49, +}; +static const unsigned char kat472_addin0[] = { + 0x6d, 0xdb, 0x92, 0x55, 0x50, 0x8d, 0x29, 0xaf, 0x7a, 0x99, 0x8e, 0x14, + 0x6d, 0x82, 0x06, 0xbe, 0xaf, 0x82, 0xc1, 0xbb, 0x7d, 0x42, 0x3d, 0x92, + 0x60, 0x5e, 0x69, 0xa6, 0xa0, 0x31, 0x80, 0xe4, +}; +static const unsigned char kat472_addin1[] = { + 0x84, 0x85, 0xf2, 0x57, 0xd4, 0x4a, 0x82, 0xbf, 0x92, 0x00, 0x13, 0xcc, + 0x8b, 0x83, 0x21, 0xa3, 0x57, 0xd1, 0x93, 0x3b, 0x64, 0x39, 0x5c, 0x12, + 0x55, 0x40, 0x90, 0x8d, 0xa9, 0xea, 0x9e, 0x99, +}; +static const unsigned char kat472_retbits[] = { + 0x52, 0xfb, 0x04, 0x00, 0xf8, 0xdf, 0xcf, 0x69, 0x4f, 0x0d, 0xaa, 0xda, + 0x7b, 0xa7, 0x81, 0xe0, 0x9a, 0xf5, 0xe4, 0x8f, 0xcf, 0xcb, 0xe7, 0x18, + 0x05, 0x2b, 0x46, 0xa3, 0x89, 0xdf, 0x71, 0x3a, 0xb3, 0xaf, 0x71, 0x69, + 0x9c, 0x41, 0xd4, 0x1e, 0x65, 0x42, 0xb8, 0x7c, 0xd9, 0xbe, 0xc4, 0xce, + 0x0f, 0xd2, 0x92, 0xae, 0x52, 0xea, 0xd7, 0x8c, 0xf5, 0x2e, 0x0c, 0xac, + 0x5c, 0xcd, 0x4f, 0x01, +}; +static const struct drbg_kat_no_reseed kat472_t = { + 6, kat472_entropyin, kat472_nonce, kat472_persstr, + kat472_addin0, kat472_addin1, kat472_retbits +}; +static const struct drbg_kat kat472 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat472_t +}; + +static const unsigned char kat473_entropyin[] = { + 0x67, 0xe4, 0x44, 0x71, 0xbc, 0x65, 0x6e, 0xec, 0xee, 0x78, 0x05, 0x38, + 0x0e, 0x98, 0x49, 0xf9, 0xe3, 0xf4, 0xf2, 0xf4, 0xac, 0xba, 0x52, 0x05, +}; +static const unsigned char kat473_nonce[] = { + 0x60, 0x18, 0xf7, 0xe1, 0xf9, 0x43, 0xfd, 0xcf, 0x7f, 0xc9, 0x59, 0x5e, + 0xd0, 0xa0, 0x81, 0x07, +}; +static const unsigned char kat473_persstr[] = { + 0xff, 0x0f, 0x82, 0xbd, 0x94, 0xfa, 0x8c, 0x65, 0x54, 0xe0, 0x5c, 0x69, + 0x57, 0x97, 0x3b, 0xb8, 0xc4, 0xf3, 0xbd, 0x3e, 0x88, 0x57, 0xab, 0xfc, + 0xbc, 0xde, 0x87, 0xc5, 0x84, 0xf7, 0x56, 0x11, +}; +static const unsigned char kat473_addin0[] = { + 0xf0, 0x9d, 0xfa, 0xdc, 0xbd, 0xa7, 0x19, 0x08, 0xda, 0x9d, 0xd7, 0xbb, + 0x7a, 0x9e, 0x16, 0xa3, 0xc2, 0x5e, 0x30, 0x20, 0x50, 0x23, 0x5e, 0xaf, + 0xd9, 0x43, 0x2a, 0x8a, 0x78, 0x78, 0xc1, 0x0d, +}; +static const unsigned char kat473_addin1[] = { + 0x1f, 0xc8, 0xb6, 0x0f, 0xc0, 0x30, 0xf7, 0xc4, 0x17, 0x7a, 0x51, 0x47, + 0x07, 0x15, 0x13, 0xfc, 0x2f, 0x17, 0x46, 0x59, 0xb0, 0x12, 0x88, 0x9a, + 0x0c, 0x58, 0x3b, 0xed, 0x7c, 0x38, 0x18, 0xb7, +}; +static const unsigned char kat473_retbits[] = { + 0x35, 0xb2, 0xbc, 0x5f, 0x59, 0x24, 0x28, 0xd6, 0x1b, 0xb7, 0xe0, 0x62, + 0xbf, 0x96, 0x30, 0x31, 0x02, 0x11, 0x8a, 0xc5, 0xb1, 0x66, 0x50, 0x8a, + 0xd5, 0xcd, 0x22, 0x81, 0xf5, 0x9b, 0x38, 0x06, 0xbe, 0x11, 0x8e, 0x97, + 0x88, 0x7c, 0x57, 0x32, 0xfd, 0x96, 0xc7, 0xb1, 0x71, 0x43, 0x17, 0x59, + 0x7a, 0xaf, 0x20, 0xa1, 0xa6, 0xdd, 0xf7, 0x57, 0x8e, 0xfb, 0x74, 0x36, + 0x98, 0x0f, 0x99, 0x38, +}; +static const struct drbg_kat_no_reseed kat473_t = { + 7, kat473_entropyin, kat473_nonce, kat473_persstr, + kat473_addin0, kat473_addin1, kat473_retbits +}; +static const struct drbg_kat kat473 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat473_t +}; + +static const unsigned char kat474_entropyin[] = { + 0x94, 0x32, 0x32, 0x27, 0x08, 0x8d, 0x2d, 0x5d, 0xdf, 0x36, 0xa1, 0xc4, + 0x24, 0x35, 0xe2, 0x05, 0xb9, 0xe7, 0xef, 0x19, 0xb6, 0xaf, 0xf0, 0x92, +}; +static const unsigned char kat474_nonce[] = { + 0x9f, 0x96, 0x64, 0xc8, 0x7d, 0x7a, 0x43, 0x14, 0x2c, 0xe3, 0x79, 0x9d, + 0x17, 0x91, 0xc0, 0xc6, +}; +static const unsigned char kat474_persstr[] = { + 0xa5, 0xf8, 0x3a, 0x66, 0x27, 0x7c, 0xb6, 0xc9, 0x4b, 0x20, 0x86, 0x0d, + 0xa0, 0x88, 0x74, 0xf3, 0x3c, 0x2a, 0x35, 0x34, 0xcf, 0xc7, 0xaa, 0x53, + 0xf4, 0x0b, 0xeb, 0x4f, 0xde, 0xff, 0x87, 0x0b, +}; +static const unsigned char kat474_addin0[] = { + 0x41, 0x36, 0xba, 0xcf, 0x19, 0xb6, 0xed, 0xa7, 0x5f, 0x69, 0x92, 0x71, + 0xe5, 0xb3, 0x82, 0xf0, 0xf5, 0x8d, 0xd8, 0xb5, 0x9e, 0x0e, 0xaa, 0xc6, + 0xe4, 0x37, 0x99, 0x52, 0x5f, 0x7e, 0x3b, 0x76, +}; +static const unsigned char kat474_addin1[] = { + 0x2c, 0xec, 0x57, 0xe8, 0xec, 0xb9, 0x34, 0x63, 0x80, 0xb3, 0x80, 0xbf, + 0x9e, 0xe7, 0x7d, 0x1b, 0x07, 0x7d, 0x8b, 0x79, 0x20, 0x4d, 0x73, 0xe0, + 0xe4, 0x46, 0xef, 0x38, 0xe1, 0xa9, 0xf2, 0x6e, +}; +static const unsigned char kat474_retbits[] = { + 0x53, 0x11, 0x2d, 0x08, 0x4e, 0x01, 0x60, 0xa7, 0x62, 0xfd, 0x90, 0x8e, + 0x05, 0x40, 0xd5, 0x3b, 0x07, 0xcb, 0xe6, 0x48, 0x4b, 0xe9, 0xcd, 0xbd, + 0xa8, 0xf3, 0xa1, 0xc1, 0x4f, 0x79, 0xf2, 0xd2, 0xe0, 0x69, 0x39, 0x62, + 0xf1, 0x7e, 0x10, 0xed, 0xd0, 0x7c, 0x66, 0xd4, 0x2b, 0x40, 0xaf, 0xb4, + 0xf0, 0x2d, 0x69, 0x5e, 0x49, 0x84, 0x6f, 0x37, 0x6d, 0xcd, 0x2b, 0x5c, + 0xd2, 0x1c, 0x9c, 0xb6, +}; +static const struct drbg_kat_no_reseed kat474_t = { + 8, kat474_entropyin, kat474_nonce, kat474_persstr, + kat474_addin0, kat474_addin1, kat474_retbits +}; +static const struct drbg_kat kat474 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat474_t +}; + +static const unsigned char kat475_entropyin[] = { + 0xe1, 0xce, 0x5b, 0x2c, 0x05, 0xf4, 0x5a, 0x89, 0x46, 0xf5, 0xb7, 0x94, + 0x92, 0x51, 0x7e, 0x33, 0x2b, 0xae, 0xda, 0x4d, 0x56, 0xc2, 0xab, 0xf2, +}; +static const unsigned char kat475_nonce[] = { + 0xcd, 0x2d, 0x68, 0x47, 0x5b, 0xbf, 0x8a, 0xd8, 0x75, 0xdd, 0x30, 0x9a, + 0xd4, 0x28, 0xd6, 0x44, +}; +static const unsigned char kat475_persstr[] = { + 0x74, 0xc6, 0xb1, 0x70, 0x79, 0x1c, 0x53, 0xaa, 0x1c, 0xd5, 0x2e, 0x38, + 0x2e, 0xee, 0x21, 0x84, 0x82, 0x27, 0x56, 0x7a, 0xf4, 0x0c, 0x55, 0x81, + 0xf9, 0x87, 0x48, 0xf4, 0xef, 0xc6, 0x05, 0xbd, +}; +static const unsigned char kat475_addin0[] = { + 0x49, 0xd5, 0xa1, 0x77, 0x0f, 0x85, 0x13, 0x94, 0xb6, 0xe1, 0x49, 0x19, + 0x80, 0xbf, 0xff, 0x76, 0x21, 0xbc, 0x56, 0x10, 0xb5, 0x77, 0x7e, 0x71, + 0xe9, 0xcd, 0xa3, 0x0d, 0xac, 0x1e, 0xea, 0xeb, +}; +static const unsigned char kat475_addin1[] = { + 0x4c, 0x5b, 0x15, 0x82, 0xc5, 0xf7, 0xdf, 0x4f, 0xdf, 0x91, 0x12, 0x53, + 0x30, 0xf8, 0xda, 0xdc, 0x36, 0x68, 0x77, 0xad, 0x8f, 0xea, 0xd6, 0x51, + 0xc7, 0xfb, 0xee, 0xd8, 0xee, 0x4e, 0x41, 0x78, +}; +static const unsigned char kat475_retbits[] = { + 0x3c, 0x37, 0xe1, 0xec, 0x6c, 0x18, 0x0b, 0x32, 0xa9, 0x63, 0xbc, 0x04, + 0x40, 0x22, 0x1a, 0xc5, 0xc1, 0xc3, 0x3d, 0x89, 0x27, 0x2b, 0x9f, 0x69, + 0x7c, 0x75, 0x73, 0x7d, 0xd9, 0xcd, 0x2c, 0x74, 0x9c, 0x25, 0xf3, 0xc8, + 0x45, 0x53, 0xdf, 0xae, 0xf8, 0x6a, 0xf4, 0x61, 0x13, 0xe0, 0x6f, 0xe1, + 0xf6, 0xc8, 0x91, 0xc6, 0xa3, 0x90, 0x59, 0x0e, 0x16, 0x68, 0xce, 0xb7, + 0x5c, 0x95, 0xd3, 0xc9, +}; +static const struct drbg_kat_no_reseed kat475_t = { + 9, kat475_entropyin, kat475_nonce, kat475_persstr, + kat475_addin0, kat475_addin1, kat475_retbits +}; +static const struct drbg_kat kat475 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat475_t +}; + +static const unsigned char kat476_entropyin[] = { + 0x7b, 0x9b, 0x3a, 0xaf, 0xb3, 0xda, 0x4f, 0xb6, 0x93, 0x5d, 0xe0, 0xa7, + 0x1a, 0xc9, 0xfb, 0x40, 0x95, 0xc6, 0x17, 0x35, 0x07, 0x2c, 0x28, 0xdb, +}; +static const unsigned char kat476_nonce[] = { + 0x28, 0xbe, 0x54, 0xc1, 0x96, 0xbe, 0x07, 0x2f, 0xff, 0x92, 0xbc, 0x6c, + 0xaa, 0x8c, 0xcc, 0x02, +}; +static const unsigned char kat476_persstr[] = { + 0x88, 0xea, 0x40, 0xac, 0xa2, 0xa8, 0xaa, 0xe4, 0x80, 0x85, 0x80, 0x74, + 0xbb, 0x14, 0x03, 0x69, 0x51, 0x66, 0x75, 0xbd, 0xff, 0xb7, 0xfa, 0xb4, + 0x31, 0x8c, 0xc5, 0x08, 0x35, 0x7b, 0x7b, 0xec, +}; +static const unsigned char kat476_addin0[] = { + 0xc0, 0xe3, 0xe9, 0xd7, 0x00, 0x8d, 0x64, 0xfa, 0x30, 0x69, 0xaa, 0xb3, + 0x80, 0x5c, 0x0c, 0x81, 0x7c, 0x9a, 0x09, 0x71, 0x44, 0x6a, 0x8b, 0x53, + 0xd0, 0x0f, 0xca, 0xb0, 0x2a, 0x4c, 0xcb, 0x59, +}; +static const unsigned char kat476_addin1[] = { + 0xdb, 0xac, 0x68, 0x1f, 0xbc, 0x3e, 0xb3, 0xc5, 0x73, 0x94, 0x52, 0xa5, + 0xe1, 0x50, 0xf5, 0x95, 0x65, 0x7c, 0x04, 0xf0, 0x7a, 0x52, 0x06, 0x20, + 0x52, 0xed, 0x1b, 0x19, 0xae, 0x53, 0xae, 0xd8, +}; +static const unsigned char kat476_retbits[] = { + 0x4c, 0x4d, 0x6b, 0x05, 0x8f, 0xb1, 0x33, 0x44, 0xc4, 0x17, 0x5f, 0x02, + 0x39, 0x59, 0xa7, 0x70, 0x11, 0x52, 0xae, 0x35, 0x6e, 0x40, 0x09, 0x3f, + 0x70, 0x19, 0xd4, 0x7a, 0xe5, 0x1e, 0xe5, 0x19, 0x67, 0xe4, 0xfa, 0xbb, + 0x20, 0x9b, 0x67, 0xb2, 0x0a, 0x95, 0xa3, 0x37, 0xee, 0x8d, 0x4f, 0xe5, + 0xf6, 0x66, 0xcd, 0x08, 0xfd, 0xde, 0x3a, 0x74, 0xdc, 0x9f, 0xce, 0x0a, + 0x5a, 0xe0, 0xf9, 0x31, +}; +static const struct drbg_kat_no_reseed kat476_t = { + 10, kat476_entropyin, kat476_nonce, kat476_persstr, + kat476_addin0, kat476_addin1, kat476_retbits +}; +static const struct drbg_kat kat476 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat476_t +}; + +static const unsigned char kat477_entropyin[] = { + 0x4c, 0x59, 0xc6, 0xc6, 0x7c, 0x48, 0x44, 0x17, 0x5e, 0x5f, 0x1a, 0x34, + 0xad, 0x9e, 0x08, 0x43, 0x4c, 0x20, 0x51, 0x51, 0xb7, 0x44, 0x7a, 0x01, +}; +static const unsigned char kat477_nonce[] = { + 0x82, 0x8d, 0xea, 0x3b, 0xc0, 0x7a, 0xbd, 0x45, 0xdf, 0x79, 0x7c, 0xe7, + 0xdc, 0x8e, 0xdd, 0x77, +}; +static const unsigned char kat477_persstr[] = { + 0xfb, 0x12, 0x99, 0x2f, 0x39, 0x4b, 0x21, 0x3b, 0x08, 0x7b, 0x32, 0x8f, + 0xb2, 0x74, 0xa2, 0x8f, 0x0a, 0x2d, 0x5d, 0xed, 0x77, 0x0f, 0xb8, 0xd6, + 0xfd, 0x7b, 0xf3, 0x82, 0x1d, 0x86, 0xee, 0x39, +}; +static const unsigned char kat477_addin0[] = { + 0x5a, 0xe8, 0xe9, 0x30, 0x56, 0x82, 0x1c, 0x7f, 0xb0, 0x7b, 0x48, 0xc5, + 0xc6, 0xaa, 0xd9, 0xfc, 0xf3, 0x34, 0x34, 0xec, 0x1c, 0x93, 0x94, 0x29, + 0x30, 0xec, 0x06, 0xf0, 0x31, 0x1c, 0xd0, 0x9e, +}; +static const unsigned char kat477_addin1[] = { + 0x09, 0x22, 0x28, 0x75, 0xe6, 0x9e, 0x81, 0x1b, 0x92, 0xba, 0x62, 0xc4, + 0x85, 0xa3, 0xd8, 0x10, 0xa8, 0xca, 0x89, 0xf0, 0xbe, 0x46, 0x8c, 0x7c, + 0x13, 0x61, 0x41, 0x2e, 0x19, 0x3b, 0x3c, 0x32, +}; +static const unsigned char kat477_retbits[] = { + 0xf7, 0x1b, 0x7f, 0x6c, 0xcf, 0x4d, 0xc0, 0xbc, 0x0b, 0x89, 0x8b, 0xd3, + 0x8a, 0xb8, 0x10, 0x24, 0x76, 0xd0, 0xbb, 0x7e, 0x9a, 0x1a, 0xdd, 0x22, + 0x56, 0x82, 0x16, 0xb0, 0xd5, 0xc5, 0x2c, 0x4b, 0x17, 0x19, 0xa6, 0xf2, + 0x22, 0x3b, 0xc2, 0x4a, 0x52, 0x48, 0xc9, 0x15, 0xf6, 0x5d, 0x5e, 0x18, + 0x3f, 0xb9, 0xfc, 0xfa, 0xea, 0xd6, 0x5f, 0x1a, 0xe0, 0x4b, 0xee, 0xff, + 0x1b, 0xf4, 0x25, 0x96, +}; +static const struct drbg_kat_no_reseed kat477_t = { + 11, kat477_entropyin, kat477_nonce, kat477_persstr, + kat477_addin0, kat477_addin1, kat477_retbits +}; +static const struct drbg_kat kat477 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat477_t +}; + +static const unsigned char kat478_entropyin[] = { + 0x81, 0xf4, 0xab, 0x51, 0x4e, 0x4e, 0xf1, 0xc8, 0x9f, 0x18, 0x61, 0x72, + 0x55, 0x39, 0x90, 0xaf, 0x49, 0xa3, 0xe0, 0x74, 0x72, 0x9b, 0xba, 0xec, +}; +static const unsigned char kat478_nonce[] = { + 0x35, 0xd5, 0xbb, 0x6e, 0xff, 0x10, 0xd2, 0x70, 0x35, 0xe7, 0x88, 0x8f, + 0xd6, 0xc0, 0xc5, 0x70, +}; +static const unsigned char kat478_persstr[] = { + 0xff, 0x5a, 0xa8, 0xcb, 0x94, 0x89, 0xf7, 0xfa, 0xd8, 0x82, 0x52, 0x2c, + 0x96, 0xa3, 0xc8, 0xca, 0xe8, 0x3a, 0x9b, 0x71, 0x13, 0xd0, 0xc1, 0xe4, + 0x9d, 0xa6, 0x81, 0x59, 0x8a, 0xe2, 0xfa, 0x56, +}; +static const unsigned char kat478_addin0[] = { + 0x29, 0x41, 0x78, 0x55, 0x09, 0x14, 0x8b, 0x16, 0x81, 0x3f, 0x88, 0xf1, + 0xeb, 0x43, 0x0b, 0x28, 0x62, 0xe3, 0x03, 0xfd, 0x71, 0x6b, 0x71, 0x72, + 0xb1, 0x41, 0xb9, 0x99, 0x42, 0x3f, 0xa3, 0x0e, +}; +static const unsigned char kat478_addin1[] = { + 0x3b, 0xeb, 0x13, 0xe4, 0x1b, 0x29, 0xc3, 0xf9, 0xe7, 0xc0, 0x4b, 0xd8, + 0xb9, 0x3a, 0xc2, 0xc8, 0xfb, 0xfe, 0xd0, 0x6e, 0xd3, 0x3b, 0x8e, 0xa9, + 0x31, 0x7f, 0xa4, 0xca, 0x3c, 0x25, 0x31, 0x01, +}; +static const unsigned char kat478_retbits[] = { + 0x3c, 0x33, 0xd7, 0x78, 0xb1, 0xd6, 0x1c, 0x12, 0xce, 0x1f, 0x71, 0x18, + 0x0e, 0x8d, 0xda, 0xf4, 0xf3, 0x09, 0x8b, 0x09, 0x27, 0xad, 0x9e, 0x86, + 0x3d, 0x8f, 0x74, 0xfe, 0x87, 0x1e, 0xfc, 0xa1, 0xd6, 0x72, 0xb2, 0xd0, + 0x7c, 0xa5, 0x7a, 0x89, 0x11, 0x80, 0x62, 0xbb, 0x35, 0x49, 0x94, 0xc1, + 0xc5, 0xae, 0xa5, 0xab, 0x1b, 0xe2, 0xf9, 0x25, 0x71, 0xc0, 0x72, 0x01, + 0x97, 0x43, 0x5e, 0x73, +}; +static const struct drbg_kat_no_reseed kat478_t = { + 12, kat478_entropyin, kat478_nonce, kat478_persstr, + kat478_addin0, kat478_addin1, kat478_retbits +}; +static const struct drbg_kat kat478 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat478_t +}; + +static const unsigned char kat479_entropyin[] = { + 0x6c, 0xce, 0xcf, 0xbe, 0x10, 0xea, 0xb1, 0xca, 0xa8, 0xfd, 0xa9, 0x38, + 0x40, 0x2d, 0xdc, 0x3a, 0x32, 0x93, 0xed, 0x7a, 0xed, 0x4d, 0x87, 0xa9, +}; +static const unsigned char kat479_nonce[] = { + 0x0e, 0x4e, 0x20, 0xa3, 0x5f, 0x77, 0xbd, 0xdc, 0x04, 0xb8, 0xd1, 0x72, + 0xf7, 0x8b, 0xbd, 0xee, +}; +static const unsigned char kat479_persstr[] = { + 0x2a, 0x1e, 0x1d, 0x1f, 0x13, 0x10, 0xae, 0x69, 0xaa, 0x80, 0x6b, 0x2b, + 0x14, 0xed, 0x2b, 0x1b, 0xa3, 0x08, 0x8c, 0xd3, 0x9a, 0x4c, 0x4d, 0x8f, + 0x27, 0xb4, 0x8b, 0x9e, 0x62, 0x7d, 0xe6, 0x8e, +}; +static const unsigned char kat479_addin0[] = { + 0xd4, 0x09, 0x75, 0x2d, 0x88, 0x87, 0xb3, 0x47, 0xe7, 0x78, 0x44, 0x72, + 0xc0, 0x28, 0xab, 0xd9, 0xf0, 0x45, 0xf9, 0x64, 0x1d, 0xb4, 0x63, 0x8d, + 0x67, 0x04, 0xa8, 0x2d, 0x77, 0x67, 0x16, 0xe9, +}; +static const unsigned char kat479_addin1[] = { + 0xed, 0xa7, 0x99, 0x69, 0x15, 0x48, 0x2c, 0x06, 0x09, 0xa4, 0x32, 0xe7, + 0x25, 0xfe, 0xf5, 0x8f, 0xef, 0xd9, 0x15, 0xf7, 0x8a, 0xfb, 0x80, 0xd0, + 0x66, 0x4e, 0x99, 0x68, 0xbe, 0xf6, 0x5a, 0x91, +}; +static const unsigned char kat479_retbits[] = { + 0x57, 0x99, 0x53, 0x12, 0x4f, 0x77, 0x96, 0xda, 0x17, 0xa3, 0x83, 0xc3, + 0x59, 0xc5, 0xcb, 0xae, 0x15, 0x1e, 0x18, 0xb1, 0x5f, 0x61, 0xb1, 0xe4, + 0x05, 0xed, 0x2c, 0xcd, 0xab, 0xae, 0x43, 0xe4, 0x49, 0x0d, 0x26, 0x92, + 0x72, 0x32, 0x6d, 0x13, 0x88, 0xe4, 0x59, 0x01, 0x40, 0xf4, 0xe5, 0x8d, + 0xfc, 0x6e, 0xca, 0x21, 0xf6, 0x36, 0x03, 0xdf, 0x0a, 0x62, 0x6b, 0xb7, + 0x6a, 0x28, 0x51, 0xd4, +}; +static const struct drbg_kat_no_reseed kat479_t = { + 13, kat479_entropyin, kat479_nonce, kat479_persstr, + kat479_addin0, kat479_addin1, kat479_retbits +}; +static const struct drbg_kat kat479 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat479_t +}; + +static const unsigned char kat480_entropyin[] = { + 0x3d, 0x17, 0x4d, 0x98, 0xec, 0xa8, 0x0a, 0xe3, 0x9c, 0x75, 0xd2, 0x7f, + 0x97, 0xb9, 0x9e, 0x9b, 0x0f, 0x74, 0x2b, 0x32, 0xe3, 0x7b, 0x94, 0xe8, +}; +static const unsigned char kat480_nonce[] = { + 0xbc, 0xfc, 0x46, 0x13, 0x17, 0x5b, 0x6e, 0x35, 0x34, 0x08, 0xe2, 0x3b, + 0x85, 0x81, 0xe7, 0x05, +}; +static const unsigned char kat480_persstr[] = { + 0x3d, 0x0e, 0x9f, 0xa5, 0x61, 0x6f, 0xa2, 0x5a, 0x0d, 0x58, 0xdd, 0xbd, + 0xc4, 0xa6, 0xa8, 0xe5, 0x5b, 0xef, 0x05, 0x1d, 0xb6, 0xfe, 0xdc, 0x8b, + 0xe8, 0xd4, 0xc7, 0x52, 0xf1, 0xd2, 0xc9, 0x4a, +}; +static const unsigned char kat480_addin0[] = { + 0x87, 0x18, 0xb1, 0x5a, 0x55, 0x0f, 0x97, 0x89, 0x39, 0xf5, 0x82, 0x79, + 0xec, 0xda, 0xaf, 0xe7, 0x98, 0x0a, 0x1b, 0xbf, 0xe6, 0xb9, 0xde, 0x85, + 0xb9, 0xfe, 0x10, 0x7c, 0x72, 0xa8, 0xfe, 0x20, +}; +static const unsigned char kat480_addin1[] = { + 0x07, 0x88, 0x99, 0xf5, 0xa1, 0xed, 0xd1, 0xba, 0x8e, 0x10, 0xeb, 0x8e, + 0xfa, 0x2c, 0x98, 0xba, 0x17, 0x4c, 0x1b, 0xd3, 0x5a, 0x74, 0x41, 0x4c, + 0xff, 0x86, 0x23, 0x63, 0x3a, 0xc1, 0xc2, 0x5b, +}; +static const unsigned char kat480_retbits[] = { + 0x74, 0xe1, 0x55, 0xa5, 0x70, 0x7e, 0xb1, 0x9b, 0x79, 0xcf, 0x7e, 0xfc, + 0xe1, 0xc4, 0x23, 0x7b, 0xac, 0x69, 0xe3, 0xf9, 0x31, 0x14, 0x11, 0xc9, + 0x2d, 0xac, 0xfd, 0x8a, 0xc9, 0x2e, 0xa1, 0x1a, 0x87, 0x87, 0xa4, 0x7b, + 0xc4, 0x4f, 0x1c, 0x29, 0x44, 0x44, 0x5b, 0x2b, 0x05, 0x27, 0xe1, 0x6a, + 0xec, 0x6c, 0x01, 0x16, 0x54, 0x82, 0xd7, 0xe3, 0xb6, 0x44, 0x37, 0x09, + 0x3b, 0x87, 0xbf, 0xbc, +}; +static const struct drbg_kat_no_reseed kat480_t = { + 14, kat480_entropyin, kat480_nonce, kat480_persstr, + kat480_addin0, kat480_addin1, kat480_retbits +}; +static const struct drbg_kat kat480 = { + NO_RESEED, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat480_t +}; + +static const unsigned char kat481_entropyin[] = { + 0x36, 0x40, 0x19, 0x40, 0xfa, 0x8b, 0x1f, 0xba, 0x91, 0xa1, 0x66, 0x1f, + 0x21, 0x1d, 0x78, 0xa0, 0xb9, 0x38, 0x9a, 0x74, 0xe5, 0xbc, 0xcf, 0xec, + 0xe8, 0xd7, 0x66, 0xaf, 0x1a, 0x6d, 0x3b, 0x14, +}; +static const unsigned char kat481_nonce[] = { + 0x49, 0x6f, 0x25, 0xb0, 0xf1, 0x30, 0x1b, 0x4f, 0x50, 0x1b, 0xe3, 0x03, + 0x80, 0xa1, 0x37, 0xeb, +}; +static const unsigned char kat481_persstr[] = {0}; +static const unsigned char kat481_addin0[] = {0}; +static const unsigned char kat481_addin1[] = {0}; +static const unsigned char kat481_retbits[] = { + 0x58, 0x62, 0xeb, 0x38, 0xbd, 0x55, 0x8d, 0xd9, 0x78, 0xa6, 0x96, 0xe6, + 0xdf, 0x16, 0x47, 0x82, 0xdd, 0xd8, 0x87, 0xe7, 0xe9, 0xa6, 0xc9, 0xf3, + 0xf1, 0xfb, 0xaf, 0xb7, 0x89, 0x41, 0xb5, 0x35, 0xa6, 0x49, 0x12, 0xdf, + 0xd2, 0x24, 0xc6, 0xdc, 0x74, 0x54, 0xe5, 0x25, 0x0b, 0x3d, 0x97, 0x16, + 0x5e, 0x16, 0x26, 0x0c, 0x2f, 0xaf, 0x1c, 0xc7, 0x73, 0x5c, 0xb7, 0x5f, + 0xb4, 0xf0, 0x7e, 0x1d, +}; +static const struct drbg_kat_no_reseed kat481_t = { + 0, kat481_entropyin, kat481_nonce, kat481_persstr, + kat481_addin0, kat481_addin1, kat481_retbits +}; +static const struct drbg_kat kat481 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat481_t +}; + +static const unsigned char kat482_entropyin[] = { + 0x13, 0x19, 0x90, 0x90, 0xa4, 0x7f, 0xbd, 0x19, 0x84, 0xeb, 0x5f, 0xa9, + 0x58, 0x93, 0x45, 0x15, 0x46, 0x99, 0xef, 0x73, 0xf0, 0x0c, 0xd6, 0x2b, + 0x07, 0xc3, 0x41, 0x67, 0xc0, 0x32, 0x7e, 0x53, +}; +static const unsigned char kat482_nonce[] = { + 0x5f, 0x96, 0x8f, 0x93, 0xb6, 0x59, 0xd8, 0xa5, 0x75, 0x0a, 0x95, 0x34, + 0x5a, 0x8a, 0xe2, 0x0c, +}; +static const unsigned char kat482_persstr[] = {0}; +static const unsigned char kat482_addin0[] = {0}; +static const unsigned char kat482_addin1[] = {0}; +static const unsigned char kat482_retbits[] = { + 0xd1, 0x68, 0x78, 0xc5, 0xb0, 0x6d, 0x7b, 0x6c, 0xed, 0x8e, 0x8a, 0xeb, + 0x3a, 0x48, 0xd9, 0x5e, 0xc8, 0xdd, 0x65, 0x57, 0x33, 0xee, 0xc6, 0xef, + 0x47, 0x3a, 0x80, 0x78, 0xdf, 0xde, 0xa6, 0x00, 0xc0, 0xcc, 0x02, 0x16, + 0x8b, 0x4d, 0x6d, 0x74, 0x4e, 0xe8, 0x28, 0xba, 0x50, 0x31, 0x94, 0x1f, + 0x8e, 0x3d, 0x96, 0x58, 0x64, 0x07, 0xaf, 0x79, 0xeb, 0xa6, 0x0d, 0x14, + 0xaf, 0x47, 0xd5, 0x3a, +}; +static const struct drbg_kat_no_reseed kat482_t = { + 1, kat482_entropyin, kat482_nonce, kat482_persstr, + kat482_addin0, kat482_addin1, kat482_retbits +}; +static const struct drbg_kat kat482 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat482_t +}; + +static const unsigned char kat483_entropyin[] = { + 0xd6, 0xcc, 0xf8, 0xc8, 0x14, 0x3a, 0xbf, 0xe5, 0xfd, 0x70, 0x62, 0x6a, + 0xfc, 0x17, 0xf8, 0xae, 0xf1, 0x72, 0x02, 0x7c, 0x68, 0xc3, 0x8f, 0x94, + 0xce, 0x59, 0xf7, 0xae, 0xd5, 0xe9, 0x66, 0x57, +}; +static const unsigned char kat483_nonce[] = { + 0x2e, 0xbc, 0x66, 0xd2, 0xfd, 0x66, 0xb4, 0xbf, 0x1e, 0xd2, 0x4f, 0xaf, + 0x74, 0x4f, 0xfb, 0xc9, +}; +static const unsigned char kat483_persstr[] = {0}; +static const unsigned char kat483_addin0[] = {0}; +static const unsigned char kat483_addin1[] = {0}; +static const unsigned char kat483_retbits[] = { + 0x6d, 0x47, 0x4b, 0xa9, 0x71, 0xa8, 0x33, 0x9e, 0xca, 0x90, 0x4a, 0x4c, + 0x0d, 0xcf, 0x62, 0x65, 0x11, 0x6f, 0xbc, 0x66, 0xcb, 0xe5, 0xdd, 0xdf, + 0xdc, 0x42, 0x10, 0x45, 0x02, 0xeb, 0x21, 0x0e, 0x36, 0x60, 0xe1, 0xb1, + 0xb7, 0x10, 0xb9, 0x7d, 0x83, 0x0c, 0x27, 0x21, 0x2b, 0x33, 0x13, 0x1d, + 0x85, 0xd2, 0xf7, 0x3f, 0x39, 0x76, 0x07, 0x82, 0xf4, 0xb4, 0x7d, 0x44, + 0x7b, 0xa6, 0xa6, 0x8a, +}; +static const struct drbg_kat_no_reseed kat483_t = { + 2, kat483_entropyin, kat483_nonce, kat483_persstr, + kat483_addin0, kat483_addin1, kat483_retbits +}; +static const struct drbg_kat kat483 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat483_t +}; + +static const unsigned char kat484_entropyin[] = { + 0x39, 0x5d, 0x06, 0xb7, 0x54, 0x90, 0x73, 0xc4, 0x82, 0x52, 0xfb, 0x01, + 0xf3, 0x95, 0x42, 0x64, 0x56, 0x00, 0x31, 0x72, 0x20, 0x09, 0x00, 0x29, + 0xb2, 0xba, 0xc5, 0x8a, 0x7a, 0x4c, 0x35, 0xdf, +}; +static const unsigned char kat484_nonce[] = { + 0x57, 0x26, 0xb9, 0x91, 0x1d, 0xa8, 0xf1, 0x66, 0xa8, 0x4f, 0x82, 0xc0, + 0x6f, 0x53, 0xdc, 0x9e, +}; +static const unsigned char kat484_persstr[] = {0}; +static const unsigned char kat484_addin0[] = {0}; +static const unsigned char kat484_addin1[] = {0}; +static const unsigned char kat484_retbits[] = { + 0x0e, 0x18, 0x10, 0xb5, 0x04, 0x4f, 0x28, 0xef, 0x2c, 0xc7, 0x92, 0x8b, + 0xd6, 0x32, 0xd7, 0x03, 0x5b, 0xcd, 0xb9, 0x80, 0x1e, 0x9d, 0x84, 0xf5, + 0x69, 0xa5, 0xb6, 0xd0, 0x2d, 0x3c, 0xb5, 0xaa, 0xc0, 0xa1, 0x90, 0xbd, + 0x58, 0xd6, 0xa0, 0x8b, 0x67, 0x89, 0x52, 0x93, 0x20, 0xc7, 0x68, 0x17, + 0xf2, 0x7b, 0x7d, 0x33, 0x10, 0x85, 0x34, 0x67, 0x35, 0xad, 0x37, 0x1b, + 0x5c, 0x91, 0x89, 0xcd, +}; +static const struct drbg_kat_no_reseed kat484_t = { + 3, kat484_entropyin, kat484_nonce, kat484_persstr, + kat484_addin0, kat484_addin1, kat484_retbits +}; +static const struct drbg_kat kat484 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat484_t +}; + +static const unsigned char kat485_entropyin[] = { + 0xe5, 0x02, 0x71, 0x8e, 0x54, 0xc8, 0xa7, 0x9f, 0x31, 0x52, 0x9a, 0xba, + 0x42, 0x40, 0x48, 0x08, 0xe6, 0x52, 0x47, 0x7f, 0x59, 0x5a, 0xb3, 0x5b, + 0xc5, 0x4e, 0xaa, 0xc7, 0xaf, 0xaa, 0x22, 0x8a, +}; +static const unsigned char kat485_nonce[] = { + 0xae, 0xe3, 0x28, 0xae, 0x82, 0x27, 0x4d, 0x9d, 0xff, 0xdb, 0x27, 0x72, + 0x31, 0x54, 0x89, 0xb2, +}; +static const unsigned char kat485_persstr[] = {0}; +static const unsigned char kat485_addin0[] = {0}; +static const unsigned char kat485_addin1[] = {0}; +static const unsigned char kat485_retbits[] = { + 0x9d, 0x10, 0xba, 0xac, 0x91, 0x77, 0x0e, 0x97, 0xbe, 0x49, 0x0d, 0xb4, + 0xd8, 0x0d, 0x70, 0x07, 0xd6, 0xa2, 0x04, 0x07, 0x81, 0x3e, 0xee, 0x12, + 0x8a, 0xcb, 0x16, 0x1c, 0x6e, 0x36, 0xc2, 0x25, 0xeb, 0xc4, 0x2c, 0xa3, + 0x7b, 0x10, 0x7f, 0x04, 0x30, 0xb6, 0x98, 0x26, 0xad, 0xd2, 0xe5, 0x20, + 0xc2, 0xf1, 0x8f, 0xc0, 0x7e, 0x32, 0xec, 0x0a, 0x7b, 0x33, 0x46, 0x3b, + 0xcf, 0x48, 0xe5, 0x76, +}; +static const struct drbg_kat_no_reseed kat485_t = { + 4, kat485_entropyin, kat485_nonce, kat485_persstr, + kat485_addin0, kat485_addin1, kat485_retbits +}; +static const struct drbg_kat kat485 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat485_t +}; + +static const unsigned char kat486_entropyin[] = { + 0x63, 0xe6, 0x0f, 0xf1, 0x73, 0x9d, 0x46, 0x05, 0xf5, 0xc5, 0x11, 0xfd, + 0x0e, 0x39, 0x51, 0xdd, 0x3d, 0xe6, 0x57, 0x50, 0x8a, 0x60, 0xd7, 0xc8, + 0x7c, 0xe9, 0x5f, 0x39, 0x48, 0x1a, 0x75, 0x53, +}; +static const unsigned char kat486_nonce[] = { + 0xb1, 0xc1, 0x7b, 0xb3, 0x4b, 0xaf, 0x2c, 0x7f, 0x3b, 0x03, 0xb7, 0x6e, + 0x68, 0x97, 0x31, 0x6f, +}; +static const unsigned char kat486_persstr[] = {0}; +static const unsigned char kat486_addin0[] = {0}; +static const unsigned char kat486_addin1[] = {0}; +static const unsigned char kat486_retbits[] = { + 0x08, 0x19, 0x50, 0x61, 0xde, 0xd1, 0xab, 0x84, 0xbe, 0x7d, 0x5d, 0xcd, + 0x63, 0x0e, 0x7b, 0x90, 0x38, 0x54, 0xf1, 0x28, 0x43, 0x89, 0xe5, 0xe7, + 0x78, 0x49, 0xbb, 0xa1, 0x0c, 0x89, 0x08, 0x3b, 0xb6, 0xf3, 0x2f, 0x68, + 0x15, 0xcf, 0xac, 0x45, 0xb7, 0xca, 0xd0, 0xdf, 0xb5, 0x54, 0x98, 0xa4, + 0x7e, 0x87, 0x5d, 0x21, 0xed, 0x18, 0x42, 0xf5, 0x87, 0x79, 0x84, 0x5f, + 0x2f, 0x24, 0xc6, 0xe2, +}; +static const struct drbg_kat_no_reseed kat486_t = { + 5, kat486_entropyin, kat486_nonce, kat486_persstr, + kat486_addin0, kat486_addin1, kat486_retbits +}; +static const struct drbg_kat kat486 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat486_t +}; + +static const unsigned char kat487_entropyin[] = { + 0x63, 0xec, 0x70, 0x79, 0x2a, 0x6c, 0x78, 0x54, 0x0e, 0x40, 0xdb, 0x15, + 0xc1, 0xb8, 0x73, 0xfc, 0xde, 0x9b, 0xea, 0x1d, 0x74, 0x1d, 0x88, 0xb8, + 0x1b, 0xd1, 0xfd, 0x66, 0x13, 0x9d, 0xf7, 0x0c, +}; +static const unsigned char kat487_nonce[] = { + 0xfc, 0x5f, 0x90, 0x2b, 0xdd, 0x0d, 0x7f, 0xe2, 0x16, 0xb1, 0x42, 0x3d, + 0x4f, 0x41, 0xf1, 0x2f, +}; +static const unsigned char kat487_persstr[] = {0}; +static const unsigned char kat487_addin0[] = {0}; +static const unsigned char kat487_addin1[] = {0}; +static const unsigned char kat487_retbits[] = { + 0xe3, 0x66, 0xae, 0x29, 0x88, 0xf6, 0xf3, 0x78, 0x54, 0x85, 0x96, 0x02, + 0x31, 0x9e, 0x64, 0x38, 0x52, 0x44, 0x11, 0x50, 0x04, 0x38, 0x6a, 0x21, + 0xeb, 0x25, 0xe6, 0x94, 0x56, 0xc7, 0x78, 0x94, 0x7a, 0xe1, 0x1c, 0x95, + 0x32, 0xe5, 0x79, 0x4e, 0x62, 0x04, 0x60, 0x87, 0x7a, 0x5b, 0xcd, 0x77, + 0xf3, 0x70, 0xe8, 0xa9, 0x0d, 0x4b, 0xe3, 0x82, 0x06, 0xca, 0x39, 0x3e, + 0xdc, 0xea, 0xe3, 0xac, +}; +static const struct drbg_kat_no_reseed kat487_t = { + 6, kat487_entropyin, kat487_nonce, kat487_persstr, + kat487_addin0, kat487_addin1, kat487_retbits +}; +static const struct drbg_kat kat487 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat487_t +}; + +static const unsigned char kat488_entropyin[] = { + 0xea, 0xdc, 0x5b, 0x6a, 0x6f, 0x8d, 0x10, 0xa0, 0xa7, 0x89, 0x17, 0x03, + 0x55, 0x0e, 0xf4, 0x0f, 0xc2, 0x1c, 0xa5, 0x00, 0xee, 0x60, 0x3a, 0x68, + 0x5f, 0xf3, 0xd1, 0xfb, 0x56, 0xea, 0xd7, 0x0e, +}; +static const unsigned char kat488_nonce[] = { + 0x6c, 0x5a, 0x65, 0xd7, 0xe8, 0xfb, 0xc2, 0xa7, 0xcf, 0xd9, 0xfa, 0x7a, + 0x5e, 0xfb, 0xdc, 0xd7, +}; +static const unsigned char kat488_persstr[] = {0}; +static const unsigned char kat488_addin0[] = {0}; +static const unsigned char kat488_addin1[] = {0}; +static const unsigned char kat488_retbits[] = { + 0xd4, 0x28, 0xa2, 0x98, 0xcb, 0xfd, 0xf2, 0x0e, 0xf7, 0xbe, 0xe8, 0x91, + 0x3a, 0x26, 0xc5, 0x3e, 0xea, 0x49, 0x93, 0x3a, 0x2d, 0xde, 0x42, 0x1b, + 0xca, 0x4b, 0x1c, 0x6b, 0x86, 0x50, 0x6c, 0x6c, 0xa0, 0xef, 0x0b, 0xfa, + 0x13, 0xc0, 0x30, 0x50, 0x57, 0x48, 0xd5, 0x73, 0x7b, 0x23, 0x24, 0x80, + 0xed, 0xc0, 0xbb, 0xc9, 0xe7, 0xb7, 0xf3, 0xff, 0x8a, 0xef, 0xc2, 0x92, + 0x10, 0x6a, 0x62, 0x54, +}; +static const struct drbg_kat_no_reseed kat488_t = { + 7, kat488_entropyin, kat488_nonce, kat488_persstr, + kat488_addin0, kat488_addin1, kat488_retbits +}; +static const struct drbg_kat kat488 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat488_t +}; + +static const unsigned char kat489_entropyin[] = { + 0x0f, 0x91, 0x06, 0x58, 0x8b, 0xc9, 0x27, 0xec, 0xa2, 0x85, 0xe0, 0x5c, + 0x8c, 0x17, 0x0a, 0x68, 0xe9, 0xa1, 0x03, 0x10, 0x2a, 0x10, 0x67, 0x81, + 0xd8, 0xfb, 0x0a, 0x76, 0x88, 0xe4, 0x91, 0xc2, +}; +static const unsigned char kat489_nonce[] = { + 0x2e, 0x58, 0xa8, 0x59, 0xb7, 0xbd, 0xc8, 0x16, 0xfb, 0x40, 0xb9, 0xee, + 0x59, 0x16, 0xa9, 0x25, +}; +static const unsigned char kat489_persstr[] = {0}; +static const unsigned char kat489_addin0[] = {0}; +static const unsigned char kat489_addin1[] = {0}; +static const unsigned char kat489_retbits[] = { + 0xe3, 0xde, 0xcd, 0x08, 0x10, 0xe1, 0xdb, 0x9b, 0x77, 0x49, 0x0c, 0xbe, + 0x78, 0xca, 0xd2, 0x52, 0xc2, 0x61, 0xf0, 0xf3, 0x80, 0x51, 0xe5, 0xba, + 0x1e, 0x1f, 0xf9, 0x85, 0x2d, 0x0a, 0x68, 0xa1, 0xfb, 0xdc, 0x79, 0x8e, + 0xb1, 0x96, 0xf2, 0xba, 0x13, 0x2e, 0x6a, 0x45, 0x1d, 0xfe, 0x6a, 0x98, + 0x88, 0x83, 0x36, 0x66, 0xbb, 0xc3, 0x04, 0xc6, 0x17, 0xc2, 0xd6, 0x10, + 0xbd, 0x5e, 0x48, 0x9e, +}; +static const struct drbg_kat_no_reseed kat489_t = { + 8, kat489_entropyin, kat489_nonce, kat489_persstr, + kat489_addin0, kat489_addin1, kat489_retbits +}; +static const struct drbg_kat kat489 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat489_t +}; + +static const unsigned char kat490_entropyin[] = { + 0x41, 0x62, 0xa4, 0x2c, 0xb0, 0xd8, 0x3d, 0x33, 0x84, 0xa1, 0xdc, 0xb9, + 0xda, 0xdc, 0xc6, 0xd0, 0x70, 0xeb, 0xd1, 0x68, 0x3b, 0x3c, 0x09, 0x00, + 0xf3, 0x1d, 0x7c, 0xbe, 0x05, 0x0e, 0x6a, 0xca, +}; +static const unsigned char kat490_nonce[] = { + 0x15, 0xf1, 0x54, 0xac, 0x7c, 0x82, 0x52, 0x58, 0xde, 0x3d, 0x66, 0x89, + 0xfb, 0x9a, 0xb4, 0x6f, +}; +static const unsigned char kat490_persstr[] = {0}; +static const unsigned char kat490_addin0[] = {0}; +static const unsigned char kat490_addin1[] = {0}; +static const unsigned char kat490_retbits[] = { + 0x3e, 0xad, 0xb8, 0xac, 0xf7, 0xde, 0x3b, 0xd0, 0x98, 0x29, 0x70, 0x67, + 0x36, 0x61, 0x83, 0xa0, 0x79, 0x90, 0x55, 0x0a, 0xde, 0xad, 0x0b, 0xbb, + 0xe4, 0x8f, 0xe8, 0x7b, 0xfd, 0xe2, 0x1c, 0xa8, 0x78, 0xe3, 0xce, 0xc7, + 0x73, 0x79, 0xbb, 0x88, 0x4f, 0x28, 0x54, 0x6c, 0x57, 0xc4, 0x0e, 0x28, + 0xe7, 0x23, 0xf8, 0xcb, 0x8c, 0x9e, 0x04, 0xa8, 0x50, 0xa4, 0x6d, 0xc7, + 0x5f, 0xe9, 0x03, 0x68, +}; +static const struct drbg_kat_no_reseed kat490_t = { + 9, kat490_entropyin, kat490_nonce, kat490_persstr, + kat490_addin0, kat490_addin1, kat490_retbits +}; +static const struct drbg_kat kat490 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat490_t +}; + +static const unsigned char kat491_entropyin[] = { + 0x36, 0x52, 0x20, 0x1d, 0x2c, 0xed, 0x05, 0x6c, 0x83, 0x66, 0x71, 0x57, + 0xd7, 0xb0, 0xed, 0x02, 0xdc, 0x4b, 0xa3, 0xf6, 0xd4, 0x37, 0x99, 0xfd, + 0xa4, 0xa6, 0xd5, 0x20, 0x4c, 0x4e, 0x3b, 0xb4, +}; +static const unsigned char kat491_nonce[] = { + 0x37, 0xf1, 0x81, 0x83, 0x70, 0x52, 0xd7, 0x29, 0xa7, 0x0b, 0x46, 0x2f, + 0x5c, 0x1f, 0xec, 0xc2, +}; +static const unsigned char kat491_persstr[] = {0}; +static const unsigned char kat491_addin0[] = {0}; +static const unsigned char kat491_addin1[] = {0}; +static const unsigned char kat491_retbits[] = { + 0xb5, 0xbc, 0x59, 0x13, 0x8d, 0xf3, 0x51, 0x49, 0x00, 0x57, 0xcf, 0x9d, + 0xf9, 0x7e, 0x99, 0x17, 0x45, 0xe0, 0x3b, 0x30, 0xee, 0x96, 0x84, 0xe6, + 0x18, 0x12, 0xd8, 0x45, 0x3d, 0xac, 0x5b, 0xcf, 0x54, 0x99, 0x6d, 0x95, + 0xca, 0x1d, 0x71, 0xfb, 0xc5, 0x99, 0x2d, 0x18, 0xde, 0x9b, 0xf2, 0x24, + 0xf2, 0xba, 0x42, 0xd2, 0x4e, 0x3f, 0x8d, 0x13, 0xe3, 0x41, 0x18, 0x22, + 0x74, 0xcb, 0xcd, 0x32, +}; +static const struct drbg_kat_no_reseed kat491_t = { + 10, kat491_entropyin, kat491_nonce, kat491_persstr, + kat491_addin0, kat491_addin1, kat491_retbits +}; +static const struct drbg_kat kat491 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat491_t +}; + +static const unsigned char kat492_entropyin[] = { + 0xc1, 0xd3, 0xcb, 0xa4, 0x8d, 0x32, 0x8a, 0xd2, 0xe4, 0x1c, 0x75, 0xd2, + 0x1c, 0xb5, 0x3b, 0x69, 0xff, 0x16, 0xca, 0xfb, 0x51, 0xc2, 0x41, 0xd3, + 0x6e, 0x1d, 0x75, 0x2f, 0xa3, 0xde, 0x2d, 0xd3, +}; +static const unsigned char kat492_nonce[] = { + 0xb1, 0xb6, 0xe9, 0xd1, 0xa5, 0x0d, 0x4f, 0xa6, 0x54, 0xeb, 0xd4, 0x46, + 0x63, 0xa8, 0xec, 0x01, +}; +static const unsigned char kat492_persstr[] = {0}; +static const unsigned char kat492_addin0[] = {0}; +static const unsigned char kat492_addin1[] = {0}; +static const unsigned char kat492_retbits[] = { + 0x2b, 0x9b, 0xa1, 0xa9, 0xbc, 0x56, 0xc7, 0xf3, 0xe5, 0xb2, 0xd5, 0x87, + 0xaa, 0xf9, 0x8d, 0x1e, 0x7d, 0xa5, 0x66, 0xcf, 0xf5, 0xf2, 0xe7, 0xf9, + 0x17, 0x10, 0xd4, 0x3f, 0x8c, 0xf7, 0xe4, 0x85, 0x63, 0x2f, 0xf4, 0x51, + 0x11, 0x0a, 0xf8, 0x73, 0xe0, 0xb3, 0x3f, 0x0d, 0xff, 0x46, 0x8f, 0x09, + 0xc5, 0xe3, 0x23, 0x3d, 0x38, 0x07, 0xcd, 0x73, 0x99, 0x82, 0xb5, 0xe5, + 0x88, 0x54, 0x34, 0xc9, +}; +static const struct drbg_kat_no_reseed kat492_t = { + 11, kat492_entropyin, kat492_nonce, kat492_persstr, + kat492_addin0, kat492_addin1, kat492_retbits +}; +static const struct drbg_kat kat492 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat492_t +}; + +static const unsigned char kat493_entropyin[] = { + 0xd6, 0x70, 0x2e, 0xd5, 0xd0, 0x35, 0x96, 0xd2, 0xd1, 0xda, 0xf9, 0xff, + 0xe9, 0xc0, 0xa1, 0x9a, 0x47, 0x94, 0x77, 0xf7, 0xe9, 0x14, 0x65, 0x4f, + 0x7b, 0x11, 0x4d, 0x18, 0xb6, 0x3f, 0x50, 0x7c, +}; +static const unsigned char kat493_nonce[] = { + 0x53, 0xb2, 0x9d, 0x4b, 0x42, 0xd3, 0xc8, 0x79, 0x8d, 0xc1, 0xe6, 0x3d, + 0xf9, 0xf3, 0x0b, 0xbf, +}; +static const unsigned char kat493_persstr[] = {0}; +static const unsigned char kat493_addin0[] = {0}; +static const unsigned char kat493_addin1[] = {0}; +static const unsigned char kat493_retbits[] = { + 0xfb, 0x4e, 0x3f, 0x7b, 0x0c, 0x6e, 0xfa, 0xe1, 0x48, 0x13, 0x0f, 0x82, + 0xd5, 0x9c, 0xbc, 0x99, 0x38, 0x12, 0x41, 0x2e, 0x0f, 0x57, 0xb2, 0x06, + 0xff, 0x08, 0x64, 0xf4, 0xdb, 0xb8, 0xe4, 0x07, 0xeb, 0x7d, 0xe2, 0xc6, + 0x8a, 0xf8, 0xa5, 0x14, 0x16, 0x10, 0xed, 0x47, 0x65, 0x27, 0x49, 0x35, + 0xe6, 0xf3, 0x7e, 0xf4, 0xee, 0xd3, 0x7d, 0xe2, 0x73, 0x78, 0x85, 0x76, + 0xe7, 0xb8, 0x9d, 0xaa, +}; +static const struct drbg_kat_no_reseed kat493_t = { + 12, kat493_entropyin, kat493_nonce, kat493_persstr, + kat493_addin0, kat493_addin1, kat493_retbits +}; +static const struct drbg_kat kat493 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat493_t +}; + +static const unsigned char kat494_entropyin[] = { + 0x7e, 0xe6, 0x1f, 0xaa, 0x3b, 0x3f, 0xd9, 0x83, 0xba, 0x3b, 0x35, 0x0b, + 0xee, 0x25, 0xbd, 0x07, 0x5e, 0x2e, 0x6f, 0x17, 0x2b, 0xe9, 0x64, 0xbb, + 0xe4, 0xff, 0x21, 0x0f, 0xc9, 0x2d, 0xe6, 0x51, +}; +static const unsigned char kat494_nonce[] = { + 0xa0, 0xc4, 0xeb, 0xcc, 0x0a, 0xef, 0x84, 0x8e, 0xd7, 0xb0, 0x0d, 0x3b, + 0x61, 0x29, 0x72, 0xc9, +}; +static const unsigned char kat494_persstr[] = {0}; +static const unsigned char kat494_addin0[] = {0}; +static const unsigned char kat494_addin1[] = {0}; +static const unsigned char kat494_retbits[] = { + 0xa2, 0xa1, 0x90, 0xf0, 0xfd, 0xfa, 0xf6, 0x63, 0x14, 0xd4, 0xe0, 0x07, + 0x1d, 0x4e, 0xc3, 0xd2, 0x91, 0x4f, 0xa9, 0x3f, 0x89, 0x64, 0xef, 0x56, + 0x08, 0xec, 0x38, 0x6b, 0xba, 0x03, 0x46, 0x70, 0xec, 0x01, 0x77, 0x35, + 0x0a, 0x78, 0x02, 0x14, 0xba, 0xc5, 0x79, 0x29, 0x09, 0x18, 0xfb, 0xa9, + 0xb2, 0x1e, 0xf9, 0xf4, 0xf1, 0x21, 0x00, 0x34, 0xd0, 0x80, 0x9f, 0xed, + 0xc4, 0x4d, 0x33, 0xb9, +}; +static const struct drbg_kat_no_reseed kat494_t = { + 13, kat494_entropyin, kat494_nonce, kat494_persstr, + kat494_addin0, kat494_addin1, kat494_retbits +}; +static const struct drbg_kat kat494 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat494_t +}; + +static const unsigned char kat495_entropyin[] = { + 0x86, 0xe3, 0xcc, 0xf0, 0x93, 0x82, 0xf4, 0x61, 0x92, 0xd8, 0x93, 0x7e, + 0xba, 0x1d, 0xfc, 0x04, 0xad, 0x8e, 0x12, 0xef, 0x19, 0x6d, 0x6d, 0x94, + 0x19, 0x70, 0xb1, 0x6e, 0x15, 0x43, 0x8b, 0xb2, +}; +static const unsigned char kat495_nonce[] = { + 0xe2, 0xf9, 0xcc, 0x7e, 0xab, 0x26, 0x49, 0x1e, 0x3e, 0xab, 0x3c, 0xfd, + 0xfa, 0xad, 0xda, 0x90, +}; +static const unsigned char kat495_persstr[] = {0}; +static const unsigned char kat495_addin0[] = {0}; +static const unsigned char kat495_addin1[] = {0}; +static const unsigned char kat495_retbits[] = { + 0xd8, 0xbc, 0x7e, 0x82, 0x20, 0xcb, 0xe0, 0x79, 0xb4, 0x40, 0x3d, 0x6b, + 0x47, 0xe7, 0x97, 0x66, 0x05, 0x73, 0x5f, 0x95, 0x3a, 0xab, 0xf9, 0x3f, + 0xd0, 0x03, 0x93, 0x96, 0xdd, 0xb4, 0x08, 0x8e, 0x43, 0x60, 0x52, 0x72, + 0x2c, 0x43, 0x25, 0xf9, 0x0e, 0xb8, 0x68, 0x51, 0x2a, 0xe7, 0xce, 0x39, + 0x27, 0x37, 0x09, 0x40, 0xb2, 0x00, 0xf3, 0xcc, 0x81, 0xda, 0x77, 0x47, + 0x79, 0xe9, 0x0d, 0x7c, +}; +static const struct drbg_kat_no_reseed kat495_t = { + 14, kat495_entropyin, kat495_nonce, kat495_persstr, + kat495_addin0, kat495_addin1, kat495_retbits +}; +static const struct drbg_kat kat495 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat495_t +}; + +static const unsigned char kat496_entropyin[] = { + 0x81, 0x48, 0xd6, 0x5d, 0x86, 0x51, 0x3c, 0xe7, 0xd3, 0x89, 0x23, 0xec, + 0x2f, 0x26, 0xb9, 0xe7, 0xc6, 0x77, 0xdc, 0xc8, 0x99, 0x7e, 0x32, 0x5b, + 0x73, 0x72, 0x61, 0x9e, 0x75, 0x3e, 0xd9, 0x44, +}; +static const unsigned char kat496_nonce[] = { + 0x41, 0xc7, 0x1a, 0x24, 0xd1, 0x7d, 0x97, 0x41, 0x90, 0x98, 0x2b, 0xb7, + 0x51, 0x5c, 0xe7, 0xf5, +}; +static const unsigned char kat496_persstr[] = {0}; +static const unsigned char kat496_addin0[] = { + 0x55, 0xb4, 0x46, 0x04, 0x6c, 0x2d, 0x14, 0xbd, 0xd0, 0xcd, 0xba, 0x4b, + 0x71, 0x87, 0x3f, 0xd4, 0x76, 0x26, 0x50, 0x69, 0x5a, 0x11, 0x50, 0x79, + 0x49, 0x46, 0x2d, 0xa8, 0xd9, 0x64, 0xab, 0x6a, +}; +static const unsigned char kat496_addin1[] = { + 0x91, 0x46, 0x8f, 0x1a, 0x09, 0x7d, 0x99, 0xee, 0x33, 0x94, 0x62, 0xca, + 0x91, 0x6c, 0xb4, 0xa1, 0x0f, 0x63, 0xd5, 0x38, 0x50, 0xa4, 0xf1, 0x7f, + 0x59, 0x8e, 0xac, 0x49, 0x02, 0x99, 0xb0, 0x2e, +}; +static const unsigned char kat496_retbits[] = { + 0x54, 0x60, 0x3d, 0x1a, 0x50, 0x61, 0x32, 0xbb, 0xfa, 0x05, 0xb1, 0x53, + 0xa0, 0x4f, 0x22, 0xa1, 0xd5, 0x16, 0xcc, 0x46, 0x32, 0x3c, 0xef, 0x15, + 0x11, 0x1a, 0xf2, 0x21, 0xf0, 0x30, 0xf3, 0x8d, 0x68, 0x41, 0xd4, 0x67, + 0x05, 0x18, 0xb4, 0x91, 0x4a, 0x46, 0x31, 0xaf, 0x68, 0x2e, 0x74, 0x21, + 0xdf, 0xfa, 0xac, 0x98, 0x6a, 0x38, 0xe9, 0x4d, 0x92, 0xbf, 0xa7, 0x58, + 0xe2, 0xeb, 0x10, 0x1f, +}; +static const struct drbg_kat_no_reseed kat496_t = { + 0, kat496_entropyin, kat496_nonce, kat496_persstr, + kat496_addin0, kat496_addin1, kat496_retbits +}; +static const struct drbg_kat kat496 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat496_t +}; + +static const unsigned char kat497_entropyin[] = { + 0xeb, 0x4a, 0x0a, 0xdd, 0x69, 0x70, 0x97, 0xf1, 0xce, 0x3a, 0x71, 0x9d, + 0x0d, 0x4a, 0xe6, 0x9b, 0x17, 0x21, 0xdc, 0xe3, 0xec, 0x0e, 0x6c, 0x0e, + 0x90, 0x5d, 0x78, 0xee, 0x21, 0x28, 0x63, 0xb1, +}; +static const unsigned char kat497_nonce[] = { + 0x5f, 0x36, 0x8e, 0x85, 0xc1, 0xf1, 0x7b, 0x64, 0x63, 0xa2, 0x78, 0x37, + 0x7f, 0x69, 0x1f, 0x37, +}; +static const unsigned char kat497_persstr[] = {0}; +static const unsigned char kat497_addin0[] = { + 0xf9, 0x78, 0x01, 0xbc, 0xe9, 0x81, 0xb3, 0x50, 0x81, 0xc2, 0x58, 0x01, + 0x40, 0x0e, 0xc2, 0x07, 0x43, 0x3d, 0xa4, 0xf1, 0x7f, 0x32, 0x65, 0xa1, + 0x6e, 0x9e, 0x4e, 0x68, 0x37, 0x22, 0x70, 0x8b, +}; +static const unsigned char kat497_addin1[] = { + 0xae, 0x54, 0xb4, 0x9a, 0x41, 0x12, 0xb3, 0xd9, 0x78, 0xe9, 0x66, 0xe2, + 0xdd, 0xa0, 0x62, 0xe3, 0x65, 0x2b, 0x58, 0xa1, 0x4b, 0xef, 0x4f, 0xfe, + 0x03, 0x85, 0x20, 0xc9, 0xa6, 0x75, 0xd3, 0x53, +}; +static const unsigned char kat497_retbits[] = { + 0x6a, 0xee, 0x0b, 0x3a, 0x81, 0x5c, 0x82, 0xf9, 0xbb, 0x01, 0x19, 0xf8, + 0x6a, 0xf9, 0x07, 0x93, 0xfc, 0x1f, 0x99, 0x96, 0xdd, 0x5b, 0x72, 0xbb, + 0xc3, 0x26, 0xac, 0x4e, 0x6a, 0x5e, 0x87, 0x48, 0x50, 0xb2, 0xfe, 0xc1, + 0xd7, 0x20, 0x2c, 0x35, 0x58, 0x0b, 0xd6, 0x72, 0x70, 0x29, 0x60, 0x9f, + 0x24, 0x71, 0xe6, 0xc9, 0xb6, 0x16, 0x29, 0xd1, 0x74, 0xb8, 0x94, 0xcd, + 0x17, 0x8a, 0xdf, 0xd4, +}; +static const struct drbg_kat_no_reseed kat497_t = { + 1, kat497_entropyin, kat497_nonce, kat497_persstr, + kat497_addin0, kat497_addin1, kat497_retbits +}; +static const struct drbg_kat kat497 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat497_t +}; + +static const unsigned char kat498_entropyin[] = { + 0x7f, 0xd6, 0xe2, 0x62, 0xd8, 0x21, 0xd5, 0xe5, 0xb6, 0x60, 0x48, 0x57, + 0x55, 0xea, 0x79, 0x61, 0x57, 0x96, 0x31, 0xa4, 0xb9, 0x64, 0xcf, 0xb4, + 0xc2, 0xc3, 0x5a, 0xfd, 0xe6, 0x9f, 0xfe, 0xa1, +}; +static const unsigned char kat498_nonce[] = { + 0xae, 0x8c, 0x54, 0xaf, 0xfd, 0xb7, 0x6c, 0x5f, 0xd1, 0x96, 0xfb, 0xd5, + 0xa2, 0xc4, 0x77, 0xec, +}; +static const unsigned char kat498_persstr[] = {0}; +static const unsigned char kat498_addin0[] = { + 0xab, 0x81, 0x03, 0x5c, 0xb3, 0xc0, 0x17, 0xcb, 0xe5, 0x1a, 0x2b, 0xc6, + 0x47, 0x51, 0xce, 0x61, 0xf8, 0xae, 0x02, 0xe8, 0x0a, 0xfe, 0xf8, 0x37, + 0x8f, 0x42, 0xac, 0x67, 0x06, 0x0f, 0xfa, 0xf9, +}; +static const unsigned char kat498_addin1[] = { + 0x4f, 0x7d, 0xb0, 0x2d, 0x34, 0x6b, 0xd4, 0x16, 0x68, 0xfc, 0xf6, 0x1b, + 0xac, 0x93, 0x93, 0x60, 0x03, 0xd2, 0x2f, 0xeb, 0xd3, 0xb9, 0xf8, 0xc0, + 0x23, 0x4d, 0x15, 0x1b, 0x49, 0x2b, 0x16, 0xe7, +}; +static const unsigned char kat498_retbits[] = { + 0x93, 0x0c, 0x26, 0x43, 0x1a, 0x0f, 0xab, 0xb4, 0x5a, 0xbe, 0x41, 0x8d, + 0xb9, 0xaf, 0x10, 0xfe, 0x27, 0x55, 0x80, 0xf4, 0x99, 0xcd, 0xd7, 0x17, + 0xf7, 0xfc, 0xc9, 0x4b, 0x59, 0xf9, 0x52, 0xa0, 0x4e, 0xef, 0x8f, 0x1d, + 0x5a, 0xa0, 0xa4, 0x82, 0x0d, 0xdb, 0xe4, 0x13, 0xb5, 0xc3, 0xd7, 0xa0, + 0x89, 0x27, 0x34, 0x6a, 0x90, 0x63, 0x5e, 0xa2, 0xc5, 0x1b, 0x0a, 0xb0, + 0xe9, 0xce, 0xdb, 0x1d, +}; +static const struct drbg_kat_no_reseed kat498_t = { + 2, kat498_entropyin, kat498_nonce, kat498_persstr, + kat498_addin0, kat498_addin1, kat498_retbits +}; +static const struct drbg_kat kat498 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat498_t +}; + +static const unsigned char kat499_entropyin[] = { + 0x70, 0x50, 0x79, 0x0a, 0x8b, 0x22, 0xff, 0xea, 0x19, 0xa5, 0x05, 0xe4, + 0xfb, 0xb3, 0xbc, 0x2a, 0x3b, 0x41, 0xfd, 0x94, 0x7c, 0xe3, 0xdd, 0x50, + 0xb4, 0xf7, 0x38, 0xd8, 0xc2, 0x2f, 0xbe, 0xb0, +}; +static const unsigned char kat499_nonce[] = { + 0x36, 0x56, 0x28, 0xa7, 0xb6, 0xe7, 0xa7, 0x16, 0x60, 0xfd, 0x36, 0x38, + 0x35, 0x1e, 0x6c, 0x12, +}; +static const unsigned char kat499_persstr[] = {0}; +static const unsigned char kat499_addin0[] = { + 0x1d, 0xb1, 0xc1, 0x98, 0x48, 0x58, 0x0e, 0xe1, 0xf6, 0x9a, 0x63, 0x81, + 0x4b, 0x41, 0xad, 0x65, 0xea, 0x1a, 0x54, 0x26, 0x1e, 0x90, 0x7d, 0x3e, + 0xdb, 0x80, 0xb5, 0xe9, 0xc5, 0x58, 0x19, 0x9d, +}; +static const unsigned char kat499_addin1[] = { + 0x06, 0x18, 0x12, 0x90, 0x6e, 0xd3, 0x31, 0x4a, 0x9d, 0xf0, 0xef, 0x61, + 0xb3, 0xb5, 0x2b, 0x68, 0x5c, 0xcc, 0x45, 0x60, 0x1d, 0x69, 0xd9, 0x84, + 0x4c, 0xdb, 0xdb, 0x45, 0x62, 0x7d, 0x42, 0x94, +}; +static const unsigned char kat499_retbits[] = { + 0x0e, 0x6f, 0xc5, 0xde, 0x18, 0x29, 0x7e, 0x15, 0xb4, 0x32, 0xa1, 0x24, + 0xa9, 0xd8, 0x87, 0x7f, 0x9a, 0xdb, 0xd2, 0x33, 0x72, 0x40, 0x6f, 0x26, + 0x3e, 0x2d, 0xd7, 0x7c, 0x69, 0xbd, 0xe7, 0x55, 0x96, 0xeb, 0x9f, 0x8a, + 0x7a, 0x25, 0xd0, 0xb4, 0x5a, 0x40, 0x3a, 0x4c, 0x57, 0x58, 0x77, 0x1f, + 0x22, 0x49, 0x09, 0xd8, 0x84, 0x08, 0xf1, 0x74, 0x48, 0x7f, 0xdb, 0x30, + 0x55, 0x4c, 0x1f, 0x3b, +}; +static const struct drbg_kat_no_reseed kat499_t = { + 3, kat499_entropyin, kat499_nonce, kat499_persstr, + kat499_addin0, kat499_addin1, kat499_retbits +}; +static const struct drbg_kat kat499 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat499_t +}; + +static const unsigned char kat500_entropyin[] = { + 0x29, 0x68, 0xf8, 0x57, 0xd5, 0x83, 0xab, 0x28, 0x74, 0x10, 0xf4, 0x55, + 0xbf, 0x44, 0x62, 0xe8, 0xa7, 0x17, 0xfb, 0x93, 0xbc, 0x20, 0x0d, 0xb4, + 0x3d, 0x12, 0xb1, 0xd1, 0x33, 0xbe, 0x00, 0x3b, +}; +static const unsigned char kat500_nonce[] = { + 0xdc, 0xdd, 0x14, 0x6a, 0x6f, 0x2f, 0x9f, 0x0f, 0x86, 0x80, 0x4f, 0x30, + 0x92, 0x16, 0xa7, 0xbe, +}; +static const unsigned char kat500_persstr[] = {0}; +static const unsigned char kat500_addin0[] = { + 0x65, 0x5e, 0xac, 0x56, 0xcb, 0xb1, 0x24, 0xe1, 0x75, 0x82, 0xa1, 0xfa, + 0x7f, 0xa6, 0x19, 0x9e, 0xbe, 0x32, 0x81, 0x10, 0x1e, 0xc7, 0x8b, 0xac, + 0x74, 0x9a, 0x4d, 0x1d, 0x28, 0x7e, 0x1b, 0x82, +}; +static const unsigned char kat500_addin1[] = { + 0x26, 0xba, 0x4b, 0x54, 0x01, 0xb9, 0xd1, 0x24, 0x62, 0x5a, 0x60, 0xd5, + 0x3f, 0x2d, 0x7b, 0x3f, 0x45, 0xdb, 0x5b, 0xc4, 0x36, 0x11, 0xd4, 0xcc, + 0x59, 0xc8, 0x3a, 0x18, 0x18, 0x16, 0x9c, 0xac, +}; +static const unsigned char kat500_retbits[] = { + 0xa7, 0xbf, 0x0e, 0x65, 0x50, 0x20, 0xa2, 0xc9, 0xa5, 0x06, 0x43, 0xcc, + 0xde, 0x05, 0xfd, 0x95, 0xa6, 0x44, 0x66, 0xda, 0x7a, 0x75, 0x6b, 0xf1, + 0xb9, 0xd1, 0x95, 0xfb, 0xac, 0x0e, 0xe2, 0x05, 0x9b, 0xa9, 0xd5, 0xf5, + 0xe3, 0x43, 0xfd, 0x8d, 0x67, 0x55, 0xa2, 0xe5, 0x4c, 0x38, 0x80, 0x3c, + 0xcf, 0xc4, 0xe9, 0x19, 0x12, 0x4c, 0x1e, 0xcd, 0x48, 0x53, 0x71, 0x54, + 0x86, 0xbe, 0x4f, 0x1a, +}; +static const struct drbg_kat_no_reseed kat500_t = { + 4, kat500_entropyin, kat500_nonce, kat500_persstr, + kat500_addin0, kat500_addin1, kat500_retbits +}; +static const struct drbg_kat kat500 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat500_t +}; + +static const unsigned char kat501_entropyin[] = { + 0x8f, 0xd3, 0xb3, 0x30, 0xfc, 0x13, 0x8f, 0x42, 0x1a, 0x66, 0x92, 0x5f, + 0x72, 0x64, 0x89, 0x85, 0xe5, 0xa2, 0x55, 0xe5, 0x99, 0x7f, 0xf2, 0x47, + 0xe5, 0x33, 0x62, 0xdf, 0xf7, 0xa9, 0xa0, 0xf9, +}; +static const unsigned char kat501_nonce[] = { + 0x3c, 0x67, 0x0e, 0x24, 0x67, 0xe3, 0xfb, 0x08, 0x7c, 0x7e, 0xa6, 0xcc, + 0x0a, 0xf5, 0x56, 0xff, +}; +static const unsigned char kat501_persstr[] = {0}; +static const unsigned char kat501_addin0[] = { + 0xa8, 0x4e, 0xfb, 0x4a, 0x46, 0x4c, 0xc8, 0xaa, 0x75, 0x49, 0x7f, 0x86, + 0xc3, 0x51, 0x5c, 0x64, 0x76, 0xce, 0xdc, 0x7b, 0x94, 0x0f, 0x9d, 0x46, + 0xce, 0x40, 0x1b, 0xd1, 0xd5, 0x23, 0x49, 0xfd, +}; +static const unsigned char kat501_addin1[] = { + 0x78, 0xdc, 0x05, 0x30, 0x7d, 0x06, 0x50, 0xa1, 0xa4, 0xc8, 0x64, 0x91, + 0xd5, 0xb3, 0x12, 0x54, 0xf5, 0x48, 0x50, 0xd5, 0x7e, 0xe4, 0xec, 0xfb, + 0x69, 0xc9, 0xa4, 0xd2, 0x68, 0x57, 0x0a, 0xc4, +}; +static const unsigned char kat501_retbits[] = { + 0x3c, 0xb7, 0x70, 0x2d, 0x62, 0xe7, 0x6b, 0xee, 0xc9, 0x2f, 0x66, 0xc7, + 0x2c, 0x63, 0x13, 0x14, 0x3c, 0x56, 0x2b, 0x52, 0xee, 0x94, 0x84, 0xc8, + 0x20, 0x0d, 0x33, 0x15, 0x09, 0xcb, 0xe2, 0xd0, 0xf4, 0xcb, 0x4d, 0xba, + 0x7d, 0xfc, 0xd4, 0x18, 0x39, 0xf2, 0xe7, 0x67, 0x49, 0xab, 0x80, 0x15, + 0x61, 0x4a, 0x14, 0xaf, 0xfd, 0xdc, 0xff, 0x0f, 0xdd, 0x4e, 0xb1, 0x82, + 0xf2, 0xbc, 0x48, 0x4d, +}; +static const struct drbg_kat_no_reseed kat501_t = { + 5, kat501_entropyin, kat501_nonce, kat501_persstr, + kat501_addin0, kat501_addin1, kat501_retbits +}; +static const struct drbg_kat kat501 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat501_t +}; + +static const unsigned char kat502_entropyin[] = { + 0x18, 0x28, 0xce, 0x53, 0x41, 0xed, 0x77, 0x1c, 0x2c, 0x8e, 0x68, 0xef, + 0x5d, 0x57, 0x28, 0xa5, 0x25, 0xa3, 0xf7, 0x65, 0x53, 0x63, 0xc5, 0xec, + 0x01, 0xc3, 0xfc, 0xb3, 0x0c, 0x0d, 0x10, 0x25, +}; +static const unsigned char kat502_nonce[] = { + 0xfd, 0x4c, 0x5d, 0x43, 0x54, 0x5e, 0x88, 0x56, 0xb6, 0x1c, 0xa4, 0x23, + 0xe9, 0x58, 0x0c, 0x7d, +}; +static const unsigned char kat502_persstr[] = {0}; +static const unsigned char kat502_addin0[] = { + 0x38, 0xc2, 0x81, 0x99, 0x54, 0x46, 0xe6, 0xc2, 0x73, 0x63, 0x00, 0x80, + 0x08, 0xf9, 0xb2, 0x8f, 0xcb, 0x5c, 0x00, 0x38, 0x3a, 0x20, 0x95, 0x87, + 0x85, 0x5c, 0x1d, 0x81, 0x9d, 0x48, 0xbd, 0xa0, +}; +static const unsigned char kat502_addin1[] = { + 0x9b, 0x1f, 0x6b, 0x84, 0xc4, 0x63, 0x2a, 0x5b, 0x21, 0x5f, 0xa3, 0xf8, + 0x41, 0x10, 0xc4, 0x5b, 0x6b, 0xd5, 0x3b, 0xcc, 0xca, 0x79, 0x2b, 0x4c, + 0x4d, 0x20, 0x73, 0xcc, 0xc9, 0x9e, 0xe3, 0x63, +}; +static const unsigned char kat502_retbits[] = { + 0xa3, 0xd7, 0x96, 0x54, 0xcd, 0x4f, 0x56, 0x70, 0xa6, 0x37, 0xad, 0x40, + 0xf4, 0x7f, 0x7f, 0xd5, 0xce, 0x21, 0xd4, 0xd1, 0x8c, 0x6e, 0xab, 0x6d, + 0xd0, 0x2c, 0x79, 0x14, 0x28, 0xb6, 0xa9, 0x65, 0xd3, 0xf7, 0xeb, 0x0e, + 0x62, 0x03, 0xcc, 0xb8, 0xdd, 0xc0, 0x6f, 0x3e, 0x29, 0x8a, 0xb3, 0x13, + 0x16, 0x12, 0x94, 0x52, 0x2f, 0x14, 0x6d, 0x30, 0x84, 0x4c, 0xa7, 0x74, + 0x2e, 0x02, 0x20, 0x7e, +}; +static const struct drbg_kat_no_reseed kat502_t = { + 6, kat502_entropyin, kat502_nonce, kat502_persstr, + kat502_addin0, kat502_addin1, kat502_retbits +}; +static const struct drbg_kat kat502 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat502_t +}; + +static const unsigned char kat503_entropyin[] = { + 0x7c, 0x15, 0xca, 0xae, 0x3d, 0x1d, 0x58, 0xac, 0xde, 0x9f, 0xf7, 0x4d, + 0x35, 0x16, 0xc8, 0xc2, 0xe9, 0x60, 0xec, 0xa6, 0xda, 0xa1, 0x59, 0x6f, + 0x7b, 0x01, 0xd0, 0x8e, 0x91, 0x76, 0xb1, 0xa3, +}; +static const unsigned char kat503_nonce[] = { + 0xf0, 0x86, 0x3c, 0x9d, 0x0f, 0x60, 0xaf, 0xf6, 0xbd, 0x1a, 0xbe, 0x2e, + 0xa2, 0x4c, 0xa9, 0x5c, +}; +static const unsigned char kat503_persstr[] = {0}; +static const unsigned char kat503_addin0[] = { + 0x6e, 0x55, 0xd1, 0x3b, 0xfc, 0x16, 0x62, 0xb7, 0xfe, 0xfb, 0x1e, 0xc2, + 0x22, 0xe3, 0x86, 0x6b, 0x4d, 0xf1, 0xb0, 0xba, 0xed, 0xc3, 0x55, 0xf4, + 0xa5, 0x23, 0xdb, 0x43, 0x45, 0x60, 0x23, 0x3f, +}; +static const unsigned char kat503_addin1[] = { + 0x31, 0xa7, 0x1c, 0x65, 0xdb, 0xab, 0xfd, 0x7c, 0x06, 0x2c, 0xb2, 0xe1, + 0x91, 0x17, 0x77, 0x38, 0x7b, 0xb9, 0x97, 0x09, 0x0b, 0x43, 0xe5, 0x3d, + 0xc9, 0x54, 0x34, 0x65, 0xa0, 0xee, 0xa6, 0xb0, +}; +static const unsigned char kat503_retbits[] = { + 0xc3, 0x65, 0xb1, 0xda, 0xaa, 0x9c, 0xfd, 0x4c, 0xa1, 0x68, 0x10, 0x1d, + 0x99, 0x6f, 0x7b, 0x89, 0x82, 0xec, 0xd0, 0x63, 0x85, 0x81, 0x11, 0x1c, + 0x9b, 0xfd, 0xa5, 0x28, 0x9a, 0x30, 0xc4, 0x19, 0xea, 0x77, 0xc3, 0x13, + 0x26, 0x47, 0x8b, 0x07, 0x2f, 0xaa, 0x0f, 0x00, 0x31, 0x23, 0x85, 0xdc, + 0x0a, 0x3b, 0xf2, 0x6b, 0x6c, 0xd4, 0xff, 0xf0, 0xce, 0x2e, 0xfe, 0x4b, + 0x0b, 0x55, 0x7a, 0x5e, +}; +static const struct drbg_kat_no_reseed kat503_t = { + 7, kat503_entropyin, kat503_nonce, kat503_persstr, + kat503_addin0, kat503_addin1, kat503_retbits +}; +static const struct drbg_kat kat503 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat503_t +}; + +static const unsigned char kat504_entropyin[] = { + 0x73, 0xc1, 0x6b, 0xa1, 0x9c, 0xfc, 0x3f, 0x8d, 0x3d, 0x41, 0x71, 0xa2, + 0xa5, 0xff, 0x0e, 0xbd, 0x8e, 0x1b, 0x1e, 0x5e, 0x15, 0x2c, 0x1b, 0x45, + 0x9a, 0x58, 0x88, 0x76, 0xd2, 0xdb, 0x5f, 0xb6, +}; +static const unsigned char kat504_nonce[] = { + 0xf2, 0x98, 0x62, 0xb5, 0x7a, 0x08, 0x96, 0xb5, 0x64, 0x44, 0x93, 0xed, + 0x97, 0x0e, 0x14, 0x2c, +}; +static const unsigned char kat504_persstr[] = {0}; +static const unsigned char kat504_addin0[] = { + 0x7e, 0x48, 0x1b, 0xda, 0x6e, 0x72, 0x20, 0x7b, 0x6d, 0xf7, 0x4f, 0x30, + 0xf5, 0x9c, 0xfe, 0xa6, 0x99, 0xba, 0xaf, 0xdf, 0xb8, 0xc5, 0x04, 0xf8, + 0x74, 0xc9, 0x8d, 0xd3, 0xf2, 0x15, 0x78, 0x7c, +}; +static const unsigned char kat504_addin1[] = { + 0x00, 0x3e, 0x69, 0x41, 0x85, 0xf0, 0x2d, 0x97, 0x38, 0xa7, 0x67, 0xb4, + 0x4a, 0x55, 0xf7, 0x95, 0x54, 0xc1, 0x46, 0x0a, 0x10, 0xc0, 0x67, 0x6a, + 0x7d, 0x22, 0x7e, 0xe4, 0x84, 0xc5, 0x8d, 0x88, +}; +static const unsigned char kat504_retbits[] = { + 0xbc, 0xf8, 0x50, 0xfc, 0xd2, 0xff, 0x56, 0xdf, 0x24, 0xe4, 0x91, 0xea, + 0x33, 0x69, 0xb6, 0x5d, 0x69, 0x17, 0xc4, 0xaa, 0x34, 0x59, 0x28, 0x29, + 0xa7, 0x77, 0xf9, 0x5d, 0xd3, 0xd8, 0x6a, 0x3b, 0x8e, 0x88, 0x4d, 0x9d, + 0xa6, 0xe5, 0x32, 0x02, 0x90, 0xd1, 0xfd, 0x89, 0x95, 0xf1, 0xb5, 0x6e, + 0xf4, 0x7a, 0xec, 0x49, 0x2d, 0xc7, 0x20, 0xa2, 0x11, 0x89, 0x8d, 0xbc, + 0x5f, 0x50, 0x75, 0x4a, +}; +static const struct drbg_kat_no_reseed kat504_t = { + 8, kat504_entropyin, kat504_nonce, kat504_persstr, + kat504_addin0, kat504_addin1, kat504_retbits +}; +static const struct drbg_kat kat504 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat504_t +}; + +static const unsigned char kat505_entropyin[] = { + 0xba, 0x82, 0x14, 0x84, 0x74, 0x0f, 0xce, 0xf6, 0x01, 0x65, 0x28, 0xfc, + 0x68, 0xb8, 0x80, 0x96, 0xd1, 0x03, 0xb2, 0x4d, 0x1f, 0x08, 0xb9, 0xf9, + 0xd9, 0xfd, 0x12, 0xdd, 0xce, 0xfc, 0x1a, 0x87, +}; +static const unsigned char kat505_nonce[] = { + 0xef, 0x53, 0xbe, 0x20, 0xeb, 0x5a, 0xaa, 0x86, 0x54, 0x49, 0xd7, 0x4c, + 0x48, 0x28, 0x18, 0x15, +}; +static const unsigned char kat505_persstr[] = {0}; +static const unsigned char kat505_addin0[] = { + 0xee, 0x7a, 0x7d, 0x73, 0x8c, 0x39, 0x09, 0x1c, 0xeb, 0x31, 0x91, 0x1b, + 0x61, 0x49, 0xdb, 0x26, 0xc0, 0x57, 0x13, 0x2a, 0xa7, 0xe4, 0x06, 0x25, + 0xab, 0x4c, 0x2e, 0x24, 0xa1, 0xae, 0x1e, 0xc1, +}; +static const unsigned char kat505_addin1[] = { + 0x71, 0xd4, 0xe3, 0x7d, 0x8e, 0x0b, 0xbc, 0xae, 0x40, 0x81, 0x3c, 0x33, + 0x09, 0x55, 0x81, 0xbf, 0xfd, 0xb1, 0x5d, 0x42, 0xc6, 0xba, 0xfd, 0x75, + 0x81, 0xbb, 0xca, 0x26, 0xbe, 0xa7, 0xba, 0xdf, +}; +static const unsigned char kat505_retbits[] = { + 0xfd, 0xb8, 0x32, 0xec, 0xb3, 0x09, 0xab, 0x8f, 0xd4, 0x6d, 0x1a, 0x5b, + 0xc6, 0x4c, 0xb3, 0x7a, 0x19, 0x9a, 0x90, 0x68, 0x47, 0x85, 0xd3, 0x2d, + 0x13, 0x39, 0xd7, 0x5c, 0xed, 0xa5, 0x33, 0x8a, 0xe6, 0x96, 0x1e, 0xe4, + 0x1c, 0xd1, 0x63, 0x63, 0x32, 0x46, 0xd6, 0x7f, 0xa6, 0x03, 0xc4, 0xff, + 0xda, 0xd5, 0x6a, 0xbc, 0x3e, 0xec, 0xfd, 0x9e, 0x93, 0x97, 0xb6, 0x29, + 0xec, 0xb9, 0x65, 0xbd, +}; +static const struct drbg_kat_no_reseed kat505_t = { + 9, kat505_entropyin, kat505_nonce, kat505_persstr, + kat505_addin0, kat505_addin1, kat505_retbits +}; +static const struct drbg_kat kat505 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat505_t +}; + +static const unsigned char kat506_entropyin[] = { + 0xaf, 0xd3, 0x91, 0xb5, 0x0a, 0x0f, 0x2e, 0x81, 0xfe, 0xf3, 0xe0, 0x44, + 0xdb, 0x92, 0x68, 0xd7, 0x85, 0x9c, 0x2b, 0x61, 0xd5, 0x3c, 0x7d, 0x19, + 0x02, 0xa9, 0xaf, 0x69, 0xf0, 0x41, 0x42, 0x81, +}; +static const unsigned char kat506_nonce[] = { + 0xf1, 0xbb, 0x5a, 0x11, 0x69, 0x44, 0x5a, 0x2d, 0xd8, 0xc5, 0xa8, 0x45, + 0x27, 0xc1, 0x0f, 0x7f, +}; +static const unsigned char kat506_persstr[] = {0}; +static const unsigned char kat506_addin0[] = { + 0xb5, 0x94, 0xb0, 0x46, 0xa5, 0x79, 0x60, 0x94, 0x1e, 0x83, 0x4a, 0x00, + 0xa2, 0xcd, 0xc7, 0xd6, 0xf2, 0x43, 0x0b, 0x93, 0xf5, 0xe2, 0x69, 0x40, + 0xb2, 0xd6, 0x94, 0x1f, 0x42, 0x4d, 0x4b, 0xac, +}; +static const unsigned char kat506_addin1[] = { + 0xe7, 0xd7, 0x67, 0xd3, 0xa8, 0x1e, 0x39, 0xb6, 0xb0, 0xe9, 0x8f, 0xf3, + 0xed, 0x0c, 0xe6, 0xff, 0xbb, 0x43, 0xdd, 0x5b, 0x98, 0x6b, 0x9c, 0xb8, + 0xc2, 0x74, 0x2b, 0xdf, 0xa0, 0x2f, 0xae, 0xd1, +}; +static const unsigned char kat506_retbits[] = { + 0x28, 0x36, 0x80, 0x0d, 0x4e, 0x0a, 0x01, 0x80, 0xb2, 0x79, 0xf0, 0xee, + 0x1f, 0xf6, 0x14, 0x8b, 0x0b, 0x36, 0x77, 0x09, 0xf9, 0xa9, 0xa3, 0xd1, + 0x03, 0x03, 0xd4, 0x8e, 0xc8, 0x03, 0x6a, 0x53, 0x17, 0x92, 0xd3, 0x21, + 0x0d, 0x9d, 0x67, 0x17, 0x46, 0xe2, 0x03, 0xfc, 0x07, 0xcd, 0xdb, 0x29, + 0xf7, 0x87, 0x77, 0x77, 0x75, 0xed, 0xe3, 0xc9, 0x8c, 0x50, 0x88, 0x5d, + 0xf7, 0xdd, 0xfe, 0x6b, +}; +static const struct drbg_kat_no_reseed kat506_t = { + 10, kat506_entropyin, kat506_nonce, kat506_persstr, + kat506_addin0, kat506_addin1, kat506_retbits +}; +static const struct drbg_kat kat506 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat506_t +}; + +static const unsigned char kat507_entropyin[] = { + 0x05, 0x92, 0x51, 0x95, 0xf9, 0x73, 0x5e, 0x38, 0x45, 0x7a, 0xce, 0xf4, + 0xb7, 0x26, 0xcb, 0xc5, 0x8f, 0x83, 0xca, 0x37, 0x40, 0xc5, 0x58, 0x31, + 0x76, 0xb1, 0x13, 0x5c, 0x15, 0x84, 0xda, 0xed, +}; +static const unsigned char kat507_nonce[] = { + 0xd5, 0xcb, 0xe9, 0x50, 0x34, 0xea, 0xad, 0x6e, 0x10, 0xe5, 0x5a, 0x05, + 0x15, 0x5a, 0xe6, 0xb9, +}; +static const unsigned char kat507_persstr[] = {0}; +static const unsigned char kat507_addin0[] = { + 0xae, 0x5e, 0x51, 0x1f, 0x35, 0x7e, 0x36, 0x2e, 0x39, 0x20, 0xca, 0x3e, + 0x7c, 0xda, 0xd2, 0xae, 0x44, 0x91, 0x2d, 0x64, 0xbc, 0x09, 0x62, 0x9d, + 0x2e, 0xeb, 0x9c, 0xc5, 0x40, 0xb3, 0x04, 0xf6, +}; +static const unsigned char kat507_addin1[] = { + 0x3f, 0xe1, 0xaa, 0xf5, 0xc7, 0x91, 0xb8, 0x38, 0x65, 0xe5, 0x6b, 0xd1, + 0x9e, 0xd1, 0x9a, 0x01, 0x9d, 0x25, 0x90, 0xc0, 0xcd, 0x59, 0x6e, 0xb7, + 0x2f, 0x46, 0x44, 0xc8, 0xc4, 0x14, 0x90, 0xf4, +}; +static const unsigned char kat507_retbits[] = { + 0x31, 0x23, 0xc4, 0xe8, 0x1a, 0x8d, 0x06, 0x71, 0xfe, 0xe1, 0xd5, 0x28, + 0x32, 0x8e, 0xad, 0x1c, 0xa4, 0xde, 0x8d, 0x07, 0xb3, 0xe5, 0x70, 0xcd, + 0x0c, 0x5a, 0xa1, 0xc6, 0x66, 0x15, 0x8b, 0x86, 0xc3, 0xb5, 0x48, 0xfa, + 0xe6, 0x00, 0xd0, 0x02, 0x50, 0xf3, 0xa8, 0x56, 0x55, 0xca, 0xe3, 0xf4, + 0x09, 0x99, 0xe4, 0x39, 0x32, 0xea, 0x75, 0x64, 0x7a, 0x4d, 0xf1, 0xc7, + 0x5a, 0x19, 0xfa, 0x80, +}; +static const struct drbg_kat_no_reseed kat507_t = { + 11, kat507_entropyin, kat507_nonce, kat507_persstr, + kat507_addin0, kat507_addin1, kat507_retbits +}; +static const struct drbg_kat kat507 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat507_t +}; + +static const unsigned char kat508_entropyin[] = { + 0xae, 0x13, 0xa2, 0xd2, 0x37, 0x34, 0xb2, 0xd6, 0x57, 0xf6, 0x7d, 0x6b, + 0xab, 0x36, 0xe1, 0x12, 0x1d, 0x5d, 0x2c, 0x1e, 0xdb, 0x4e, 0x36, 0xf4, + 0xef, 0x2f, 0xfb, 0xc1, 0x0b, 0x62, 0x8c, 0xfb, +}; +static const unsigned char kat508_nonce[] = { + 0x6a, 0x1d, 0xb3, 0x53, 0xe3, 0xc5, 0xa6, 0xe6, 0x65, 0x7c, 0x86, 0xca, + 0xa7, 0x26, 0x33, 0xd8, +}; +static const unsigned char kat508_persstr[] = {0}; +static const unsigned char kat508_addin0[] = { + 0xcb, 0xfc, 0xce, 0x20, 0x9f, 0xde, 0x42, 0x08, 0xef, 0xab, 0xb2, 0x41, + 0x79, 0x52, 0xb1, 0xc9, 0xfc, 0x22, 0x84, 0x3c, 0xe2, 0x17, 0x46, 0x08, + 0xbe, 0x04, 0xa4, 0x5f, 0x1d, 0x98, 0x27, 0xc2, +}; +static const unsigned char kat508_addin1[] = { + 0xa8, 0xd0, 0xca, 0x78, 0x88, 0x00, 0x85, 0x2c, 0x5d, 0xf5, 0xea, 0xbb, + 0xea, 0xf1, 0xf5, 0xfb, 0xd9, 0x4b, 0xeb, 0x74, 0x61, 0x03, 0xb0, 0x43, + 0x68, 0x76, 0xbc, 0x80, 0x92, 0xda, 0x8b, 0xad, +}; +static const unsigned char kat508_retbits[] = { + 0xd3, 0x86, 0x88, 0x90, 0xe7, 0x38, 0xbb, 0xf5, 0x60, 0x2c, 0xa4, 0x6e, + 0x00, 0x9d, 0xab, 0xaf, 0xb1, 0x6f, 0x56, 0x86, 0xfd, 0xdb, 0x78, 0x7c, + 0x8c, 0xca, 0x32, 0x89, 0x23, 0x60, 0xf6, 0x10, 0x99, 0xf0, 0xd7, 0x7c, + 0xce, 0x39, 0xdc, 0x8f, 0x6e, 0x53, 0x05, 0x40, 0xfc, 0x5f, 0xab, 0x3e, + 0xb6, 0x57, 0x11, 0x48, 0x47, 0xd3, 0xa3, 0x95, 0xfa, 0xf4, 0x0f, 0x8a, + 0xf6, 0x4f, 0x4d, 0x2d, +}; +static const struct drbg_kat_no_reseed kat508_t = { + 12, kat508_entropyin, kat508_nonce, kat508_persstr, + kat508_addin0, kat508_addin1, kat508_retbits +}; +static const struct drbg_kat kat508 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat508_t +}; + +static const unsigned char kat509_entropyin[] = { + 0xfa, 0x9f, 0x4f, 0xd3, 0x46, 0x55, 0x5d, 0xb3, 0x5d, 0x3e, 0xe8, 0xf1, + 0x57, 0x95, 0x7c, 0x81, 0x91, 0xe3, 0xe8, 0x61, 0x84, 0x4b, 0x4f, 0x50, + 0x00, 0xda, 0xb4, 0x82, 0x61, 0xf8, 0x5f, 0x74, +}; +static const unsigned char kat509_nonce[] = { + 0x5e, 0x18, 0x8b, 0x4e, 0xe0, 0x78, 0xd5, 0x7f, 0x91, 0xd7, 0xde, 0x21, + 0x9f, 0xc4, 0x25, 0xed, +}; +static const unsigned char kat509_persstr[] = {0}; +static const unsigned char kat509_addin0[] = { + 0x5e, 0xb2, 0x48, 0xcd, 0x13, 0x8b, 0x8f, 0xef, 0xa2, 0xb7, 0xe8, 0xfc, + 0x75, 0x2c, 0x0f, 0xbc, 0xb0, 0x82, 0xbe, 0x51, 0xd0, 0xf4, 0xe2, 0xa9, + 0x88, 0xbf, 0x5f, 0x87, 0xfc, 0x73, 0x74, 0x47, +}; +static const unsigned char kat509_addin1[] = { + 0x7c, 0xf9, 0x60, 0x6d, 0x30, 0x2f, 0x53, 0x56, 0x7e, 0x45, 0xb9, 0x8c, + 0x38, 0xd4, 0xda, 0xae, 0x23, 0x2c, 0x92, 0x5c, 0xb9, 0x2e, 0x54, 0xc7, + 0x4b, 0xcf, 0x14, 0x10, 0x4e, 0x32, 0xa1, 0x13, +}; +static const unsigned char kat509_retbits[] = { + 0x89, 0x58, 0xd2, 0x45, 0xd7, 0x02, 0x35, 0x55, 0x5a, 0x1e, 0xcc, 0xf4, + 0xfa, 0xf2, 0x00, 0x9d, 0x32, 0x76, 0x2e, 0x33, 0x24, 0x94, 0xef, 0xe5, + 0xf4, 0x8f, 0xa5, 0xd7, 0xff, 0x30, 0xc7, 0xcb, 0xf0, 0x7c, 0x9b, 0xcc, + 0x3e, 0x70, 0xd6, 0x2b, 0x94, 0xa4, 0xed, 0x21, 0xdb, 0x5e, 0x39, 0xcd, + 0xd0, 0x1a, 0x1e, 0x96, 0x68, 0x8b, 0x3b, 0xb9, 0xb2, 0xc4, 0xac, 0x0a, + 0x7a, 0xfe, 0xec, 0x24, +}; +static const struct drbg_kat_no_reseed kat509_t = { + 13, kat509_entropyin, kat509_nonce, kat509_persstr, + kat509_addin0, kat509_addin1, kat509_retbits +}; +static const struct drbg_kat kat509 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat509_t +}; + +static const unsigned char kat510_entropyin[] = { + 0xc7, 0x64, 0xbc, 0xcc, 0x19, 0x05, 0x3d, 0x7f, 0x12, 0xdf, 0x71, 0x01, + 0x1b, 0x35, 0x87, 0x8d, 0xd0, 0xbb, 0x58, 0x7d, 0xeb, 0x88, 0x7f, 0x8a, + 0x05, 0xf0, 0x40, 0xec, 0x45, 0xe3, 0x24, 0xbc, +}; +static const unsigned char kat510_nonce[] = { + 0xa4, 0xb1, 0xa9, 0xff, 0x04, 0x91, 0x72, 0x47, 0x6a, 0xb9, 0x9f, 0x7a, + 0xe0, 0x64, 0x5e, 0x6c, +}; +static const unsigned char kat510_persstr[] = {0}; +static const unsigned char kat510_addin0[] = { + 0xb6, 0xf2, 0xaa, 0x8a, 0x99, 0x3a, 0xa0, 0x42, 0x52, 0xd6, 0xc0, 0x14, + 0xea, 0xc8, 0xad, 0x0b, 0x90, 0xcf, 0x0e, 0xd4, 0x38, 0x88, 0x81, 0x73, + 0xe1, 0x5e, 0xab, 0x28, 0x0f, 0x73, 0xab, 0xe0, +}; +static const unsigned char kat510_addin1[] = { + 0xc6, 0x38, 0x4c, 0x9a, 0x2c, 0x9d, 0x8f, 0xc4, 0xc7, 0x42, 0x2f, 0xe4, + 0x0e, 0x43, 0x0e, 0x4f, 0x36, 0xe6, 0xae, 0x9b, 0xd6, 0xb0, 0x39, 0xd5, + 0x5a, 0xbf, 0xdd, 0x8f, 0x05, 0xd6, 0xa2, 0x0e, +}; +static const unsigned char kat510_retbits[] = { + 0x63, 0x00, 0xf2, 0x89, 0x41, 0xdc, 0x17, 0x3a, 0x9f, 0x6f, 0x5e, 0x4c, + 0x11, 0xf1, 0xd1, 0xd7, 0xd4, 0xfd, 0x7f, 0xbb, 0xaf, 0x6f, 0xc3, 0xa9, + 0x7a, 0xcd, 0xfc, 0x00, 0x8a, 0x00, 0x10, 0x9a, 0x67, 0x0e, 0x48, 0x7e, + 0x5d, 0xce, 0x42, 0x3a, 0x3e, 0xee, 0x48, 0x82, 0x34, 0x7e, 0xf2, 0x64, + 0x49, 0x88, 0x8c, 0x8d, 0xd7, 0x3b, 0x9a, 0xaa, 0x73, 0xd1, 0x94, 0xc1, + 0x71, 0x46, 0x9a, 0xf6, +}; +static const struct drbg_kat_no_reseed kat510_t = { + 14, kat510_entropyin, kat510_nonce, kat510_persstr, + kat510_addin0, kat510_addin1, kat510_retbits +}; +static const struct drbg_kat kat510 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat510_t +}; + +static const unsigned char kat511_entropyin[] = { + 0x54, 0x16, 0xe7, 0x7b, 0x5e, 0x1d, 0x87, 0x2d, 0x4f, 0xf9, 0x19, 0x73, + 0xb1, 0xbe, 0x66, 0xbc, 0x07, 0xf4, 0xa9, 0x9e, 0x30, 0xdb, 0x7d, 0x00, + 0x06, 0xda, 0x00, 0x6f, 0xcf, 0xb0, 0x82, 0xdb, +}; +static const unsigned char kat511_nonce[] = { + 0x7a, 0x81, 0x1c, 0xe6, 0x2b, 0x9f, 0xd3, 0x4a, 0xf1, 0x86, 0xb2, 0xb3, + 0xe5, 0x0e, 0xaf, 0x5d, +}; +static const unsigned char kat511_persstr[] = { + 0x71, 0xee, 0x0c, 0x76, 0x99, 0xac, 0x0e, 0x80, 0x56, 0x32, 0xf2, 0x05, + 0x8d, 0xe3, 0x8b, 0xf8, 0x72, 0xb8, 0x34, 0x0f, 0x89, 0x99, 0x8f, 0x7a, + 0x8a, 0x2a, 0xd4, 0xac, 0x04, 0x5a, 0xe6, 0xef, +}; +static const unsigned char kat511_addin0[] = {0}; +static const unsigned char kat511_addin1[] = {0}; +static const unsigned char kat511_retbits[] = { + 0x68, 0xf5, 0x85, 0x9c, 0xf7, 0x6f, 0x94, 0xc4, 0x45, 0xd9, 0xfc, 0xd3, + 0x4f, 0xc1, 0x7a, 0xc2, 0x24, 0xc3, 0xd7, 0xd7, 0xc2, 0xfc, 0x38, 0xfa, + 0xaf, 0x3c, 0x24, 0xbe, 0x6c, 0xd3, 0xcd, 0x93, 0xb7, 0xf9, 0xd8, 0xa6, + 0x14, 0x6f, 0x5a, 0xc8, 0x3a, 0xc1, 0xd7, 0xb1, 0xb2, 0xb7, 0xe7, 0xec, + 0xbc, 0x1a, 0x2e, 0x38, 0x76, 0x0e, 0xf8, 0x6a, 0x57, 0x7d, 0x40, 0x2d, + 0x85, 0x99, 0x0d, 0x9b, +}; +static const struct drbg_kat_no_reseed kat511_t = { + 0, kat511_entropyin, kat511_nonce, kat511_persstr, + kat511_addin0, kat511_addin1, kat511_retbits +}; +static const struct drbg_kat kat511 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat511_t +}; + +static const unsigned char kat512_entropyin[] = { + 0x70, 0x8e, 0xca, 0x2e, 0x3a, 0x92, 0x65, 0xa7, 0x90, 0x60, 0x7e, 0xdb, + 0xe0, 0x5f, 0xe3, 0x42, 0x66, 0x3f, 0x84, 0xc6, 0x61, 0x7e, 0xda, 0x14, + 0xf2, 0x52, 0x76, 0xa9, 0x43, 0x90, 0x1f, 0xda, +}; +static const unsigned char kat512_nonce[] = { + 0x75, 0xaf, 0xb4, 0x9a, 0x18, 0x4b, 0x23, 0x50, 0x6b, 0xe1, 0x49, 0x26, + 0xcd, 0x4a, 0x03, 0xf0, +}; +static const unsigned char kat512_persstr[] = { + 0xcb, 0xb4, 0x8e, 0xf8, 0x41, 0x46, 0xc1, 0x0e, 0x02, 0x24, 0x0d, 0x87, + 0x40, 0xd3, 0x48, 0x7b, 0x6a, 0x42, 0x08, 0x40, 0x53, 0x83, 0xc0, 0x1a, + 0x66, 0x4e, 0xc7, 0xd3, 0xad, 0xa0, 0x7e, 0x2d, +}; +static const unsigned char kat512_addin0[] = {0}; +static const unsigned char kat512_addin1[] = {0}; +static const unsigned char kat512_retbits[] = { + 0x26, 0xb0, 0xaa, 0x6e, 0x82, 0x2c, 0x4c, 0xc9, 0x12, 0xcf, 0x1d, 0xba, + 0xe6, 0x69, 0xc7, 0xda, 0xd0, 0xbd, 0xcf, 0xf6, 0x5f, 0x22, 0x81, 0x3a, + 0xfd, 0x06, 0x22, 0x5b, 0x7f, 0xf7, 0x99, 0xf7, 0x80, 0x3b, 0x3a, 0xd4, + 0x8b, 0xc8, 0x8d, 0x2b, 0xe0, 0xf5, 0xa3, 0x57, 0xf6, 0x20, 0xcc, 0x61, + 0x7f, 0x44, 0x6f, 0xc6, 0xd2, 0x12, 0x59, 0x2a, 0xda, 0x69, 0xb7, 0xdc, + 0x8f, 0xf4, 0xa2, 0x22, +}; +static const struct drbg_kat_no_reseed kat512_t = { + 1, kat512_entropyin, kat512_nonce, kat512_persstr, + kat512_addin0, kat512_addin1, kat512_retbits +}; +static const struct drbg_kat kat512 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat512_t +}; + +static const unsigned char kat513_entropyin[] = { + 0x44, 0xcc, 0x6b, 0x44, 0x33, 0xce, 0xc6, 0x15, 0xc3, 0xc2, 0x14, 0xe1, + 0x66, 0xc7, 0xdc, 0xff, 0x25, 0x8f, 0x8c, 0xfe, 0x57, 0x48, 0xe6, 0x42, + 0x32, 0x1c, 0xda, 0x2f, 0x7d, 0xb4, 0x26, 0xe3, +}; +static const unsigned char kat513_nonce[] = { + 0x6a, 0x25, 0x26, 0x95, 0x4b, 0x5d, 0xf9, 0x89, 0xd6, 0x1e, 0x1f, 0xaf, + 0x93, 0xdd, 0xa2, 0xae, +}; +static const unsigned char kat513_persstr[] = { + 0x88, 0x22, 0x63, 0x13, 0xc7, 0xf1, 0xec, 0x03, 0xcd, 0xe3, 0x77, 0x97, + 0x0c, 0x8e, 0xa7, 0xd7, 0x41, 0xa9, 0xf2, 0x1a, 0x8f, 0x54, 0xb6, 0xb9, + 0x70, 0x43, 0xbc, 0x3e, 0x8d, 0xa4, 0x0b, 0x1e, +}; +static const unsigned char kat513_addin0[] = {0}; +static const unsigned char kat513_addin1[] = {0}; +static const unsigned char kat513_retbits[] = { + 0xc1, 0x95, 0x6c, 0x41, 0x95, 0xad, 0xfc, 0x3e, 0xe7, 0x15, 0x82, 0xab, + 0x2c, 0x63, 0xed, 0xc0, 0xa7, 0x8a, 0xf4, 0x9e, 0xcc, 0x23, 0xa3, 0xdd, + 0xbc, 0xf2, 0xdf, 0xaf, 0x80, 0xc7, 0x61, 0xfd, 0x63, 0x43, 0xaf, 0x6d, + 0x14, 0x31, 0x0e, 0x71, 0x9d, 0x8c, 0xd3, 0xc6, 0xbb, 0xb4, 0x91, 0xc8, + 0x69, 0x0a, 0x7d, 0xd8, 0xa1, 0x68, 0xcd, 0x8a, 0x48, 0x02, 0x17, 0xe5, + 0xdd, 0x20, 0x88, 0xaf, +}; +static const struct drbg_kat_no_reseed kat513_t = { + 2, kat513_entropyin, kat513_nonce, kat513_persstr, + kat513_addin0, kat513_addin1, kat513_retbits +}; +static const struct drbg_kat kat513 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat513_t +}; + +static const unsigned char kat514_entropyin[] = { + 0x54, 0xcc, 0xb1, 0xe5, 0xf0, 0x44, 0x44, 0x7d, 0xce, 0x52, 0xa4, 0x70, + 0xf4, 0x7f, 0xe2, 0x68, 0x27, 0x17, 0xdd, 0x29, 0x6d, 0x64, 0x49, 0x1e, + 0xe2, 0xac, 0xc9, 0x9e, 0x9a, 0xd6, 0x56, 0x6f, +}; +static const unsigned char kat514_nonce[] = { + 0xff, 0x4c, 0xd3, 0x18, 0x56, 0x11, 0xcb, 0xe0, 0x67, 0x84, 0xe3, 0x25, + 0x80, 0xb2, 0xf2, 0x3c, +}; +static const unsigned char kat514_persstr[] = { + 0x13, 0x2e, 0xf5, 0x42, 0xf9, 0x07, 0xb8, 0x4c, 0x44, 0x3d, 0x19, 0x73, + 0xb3, 0x90, 0x9b, 0x6d, 0x9a, 0x0d, 0x91, 0x24, 0xd3, 0x8b, 0xd1, 0xe7, + 0xc8, 0x83, 0x3f, 0x48, 0xae, 0xcf, 0xc0, 0x8d, +}; +static const unsigned char kat514_addin0[] = {0}; +static const unsigned char kat514_addin1[] = {0}; +static const unsigned char kat514_retbits[] = { + 0x0f, 0x2f, 0x56, 0xea, 0x8b, 0x91, 0x1c, 0xbe, 0x59, 0xa7, 0xb8, 0xfa, + 0xb1, 0xc7, 0x10, 0xa7, 0xeb, 0xb6, 0xec, 0x9a, 0x09, 0x55, 0x5c, 0xa4, + 0x9c, 0xcd, 0xdd, 0x9a, 0xfd, 0x38, 0xed, 0x61, 0xb8, 0x55, 0xcf, 0x3f, + 0x33, 0xf2, 0xc5, 0xbc, 0x61, 0x6d, 0xf6, 0xcb, 0x17, 0x26, 0x96, 0x84, + 0x83, 0xc6, 0x9c, 0x18, 0x49, 0xe0, 0xf1, 0xb4, 0x6b, 0xa0, 0x29, 0xaa, + 0x6f, 0x5d, 0xeb, 0xdb, +}; +static const struct drbg_kat_no_reseed kat514_t = { + 3, kat514_entropyin, kat514_nonce, kat514_persstr, + kat514_addin0, kat514_addin1, kat514_retbits +}; +static const struct drbg_kat kat514 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat514_t +}; + +static const unsigned char kat515_entropyin[] = { + 0x3d, 0x3f, 0xdd, 0x9d, 0x90, 0xac, 0xbc, 0xee, 0x07, 0x00, 0x2f, 0x17, + 0x37, 0x00, 0x45, 0xfe, 0xb5, 0xea, 0xa3, 0x34, 0xfd, 0x74, 0x59, 0x4e, + 0x11, 0x21, 0x14, 0xd3, 0x92, 0x8d, 0xd5, 0xd9, +}; +static const unsigned char kat515_nonce[] = { + 0xf8, 0x50, 0x95, 0x29, 0x4e, 0xbc, 0x5f, 0xdd, 0xf4, 0x49, 0x41, 0xbe, + 0x5f, 0xfa, 0xf1, 0x0c, +}; +static const unsigned char kat515_persstr[] = { + 0x59, 0xe2, 0xff, 0xa1, 0x64, 0x73, 0x3f, 0xf1, 0x1b, 0x5a, 0x95, 0xeb, + 0x99, 0xa7, 0x83, 0x66, 0x90, 0x6d, 0xe4, 0xfa, 0xc6, 0x4e, 0x51, 0x24, + 0x00, 0x08, 0x11, 0x16, 0xac, 0xce, 0x53, 0x90, +}; +static const unsigned char kat515_addin0[] = {0}; +static const unsigned char kat515_addin1[] = {0}; +static const unsigned char kat515_retbits[] = { + 0x12, 0x44, 0xe5, 0x32, 0x79, 0x9f, 0x1e, 0xa4, 0xed, 0x32, 0x18, 0x94, + 0xda, 0xc5, 0x1b, 0x3c, 0x78, 0xd2, 0xfa, 0x5f, 0x0e, 0x1c, 0x92, 0x2f, + 0xfd, 0x2f, 0xf6, 0x08, 0x27, 0x54, 0x00, 0x83, 0x4d, 0x03, 0x45, 0x49, + 0x42, 0xd3, 0x1a, 0x20, 0x14, 0xcc, 0xfe, 0x07, 0xc2, 0x35, 0x41, 0x12, + 0x36, 0x3c, 0x60, 0xf4, 0x8d, 0xd1, 0x2b, 0x29, 0xa3, 0x73, 0x41, 0x28, + 0xa5, 0x9b, 0xca, 0x21, +}; +static const struct drbg_kat_no_reseed kat515_t = { + 4, kat515_entropyin, kat515_nonce, kat515_persstr, + kat515_addin0, kat515_addin1, kat515_retbits +}; +static const struct drbg_kat kat515 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat515_t +}; + +static const unsigned char kat516_entropyin[] = { + 0x25, 0x36, 0xd7, 0xea, 0x90, 0x6d, 0x1e, 0xee, 0xa8, 0x3e, 0x1c, 0x9d, + 0xa0, 0x8c, 0xf7, 0x6d, 0x09, 0x5b, 0x7d, 0x4f, 0x55, 0xb4, 0x33, 0xbb, + 0xd5, 0x22, 0x5a, 0xa8, 0x70, 0xcc, 0x3f, 0x50, +}; +static const unsigned char kat516_nonce[] = { + 0x17, 0x70, 0x4a, 0x7c, 0x50, 0xf9, 0x37, 0xac, 0xf6, 0x26, 0xe8, 0x54, + 0xe0, 0xb9, 0x5f, 0x80, +}; +static const unsigned char kat516_persstr[] = { + 0xb6, 0x1f, 0xcc, 0xd4, 0x0d, 0x9c, 0xeb, 0xc4, 0xb9, 0x27, 0xba, 0x77, + 0x3b, 0x93, 0x29, 0x57, 0xc2, 0x99, 0xf7, 0x79, 0xc4, 0x26, 0x6a, 0x83, + 0xf1, 0x69, 0xb6, 0xde, 0x50, 0x7d, 0x31, 0x27, +}; +static const unsigned char kat516_addin0[] = {0}; +static const unsigned char kat516_addin1[] = {0}; +static const unsigned char kat516_retbits[] = { + 0x8c, 0x3b, 0x0b, 0x71, 0xd6, 0x43, 0x2e, 0x10, 0x22, 0x97, 0x6c, 0x9c, + 0x8e, 0xbb, 0x14, 0x06, 0xb1, 0xda, 0x99, 0x5e, 0x29, 0x37, 0x22, 0x1d, + 0x18, 0xd7, 0x51, 0x81, 0x68, 0x25, 0xfc, 0xa0, 0x64, 0x53, 0x4e, 0x21, + 0x69, 0xcc, 0x63, 0xb5, 0x07, 0x05, 0x29, 0xff, 0x02, 0xb5, 0xee, 0x5b, + 0x70, 0x81, 0xa0, 0x8e, 0xbd, 0xd8, 0x78, 0x62, 0x59, 0x5e, 0xa3, 0x7a, + 0x95, 0xc1, 0xe4, 0xa7, +}; +static const struct drbg_kat_no_reseed kat516_t = { + 5, kat516_entropyin, kat516_nonce, kat516_persstr, + kat516_addin0, kat516_addin1, kat516_retbits +}; +static const struct drbg_kat kat516 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat516_t +}; + +static const unsigned char kat517_entropyin[] = { + 0xfe, 0xe9, 0x82, 0xd8, 0x7d, 0xf4, 0xc3, 0x20, 0x57, 0xcb, 0x49, 0x9d, + 0xf6, 0xea, 0x21, 0xdd, 0x69, 0x16, 0xdd, 0x38, 0x85, 0x0a, 0x87, 0x2a, + 0xbe, 0x34, 0x36, 0x0f, 0x29, 0x14, 0xb5, 0x6c, +}; +static const unsigned char kat517_nonce[] = { + 0x5a, 0x1f, 0xf0, 0x69, 0x2d, 0x9a, 0xdc, 0x5e, 0xdb, 0x1a, 0xf7, 0x74, + 0x61, 0xfd, 0x05, 0x31, +}; +static const unsigned char kat517_persstr[] = { + 0x1c, 0x0d, 0x18, 0x5f, 0xa4, 0xbe, 0xde, 0xdb, 0x78, 0x1b, 0x8b, 0x73, + 0x61, 0x6d, 0xef, 0x74, 0x40, 0x82, 0x21, 0x72, 0xd0, 0x1a, 0x61, 0x9a, + 0x20, 0x66, 0xb7, 0x9e, 0xfa, 0xce, 0x68, 0x5f, +}; +static const unsigned char kat517_addin0[] = {0}; +static const unsigned char kat517_addin1[] = {0}; +static const unsigned char kat517_retbits[] = { + 0xd7, 0xc2, 0x28, 0xe7, 0x00, 0x2b, 0xc2, 0xa1, 0xa2, 0x3a, 0x16, 0xe4, + 0x89, 0xba, 0x8f, 0x0a, 0x61, 0x62, 0x7a, 0xb4, 0xb2, 0x44, 0x4f, 0x00, + 0xf2, 0x3e, 0xd3, 0x71, 0x7b, 0x87, 0x94, 0x4f, 0xee, 0xbb, 0x16, 0x9e, + 0xe4, 0xe9, 0x79, 0x08, 0x9c, 0x35, 0xe8, 0x3f, 0x24, 0x30, 0x79, 0xe4, + 0x77, 0x19, 0x18, 0x86, 0x2e, 0x15, 0x03, 0x6e, 0xc6, 0xa9, 0xc9, 0xee, + 0xe4, 0xbb, 0x00, 0xb5, +}; +static const struct drbg_kat_no_reseed kat517_t = { + 6, kat517_entropyin, kat517_nonce, kat517_persstr, + kat517_addin0, kat517_addin1, kat517_retbits +}; +static const struct drbg_kat kat517 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat517_t +}; + +static const unsigned char kat518_entropyin[] = { + 0x25, 0x32, 0x7b, 0x05, 0xf8, 0x6e, 0x50, 0x79, 0xab, 0x55, 0x2e, 0x98, + 0x7e, 0xc7, 0xe2, 0x81, 0x62, 0x59, 0x51, 0x09, 0x33, 0xbc, 0x0c, 0x7a, + 0x05, 0xc3, 0x5e, 0x16, 0x3b, 0x47, 0xb4, 0xce, +}; +static const unsigned char kat518_nonce[] = { + 0x7e, 0xf8, 0xd6, 0x30, 0x8e, 0xe6, 0xb5, 0x06, 0x1c, 0xbc, 0xb8, 0x50, + 0x48, 0x5a, 0x15, 0xa7, +}; +static const unsigned char kat518_persstr[] = { + 0x9a, 0x39, 0xed, 0x86, 0xb2, 0xe8, 0x29, 0x0f, 0x74, 0xca, 0x88, 0x6b, + 0x32, 0x0d, 0x8e, 0x23, 0xd8, 0xa1, 0xd4, 0x95, 0x3c, 0x27, 0x62, 0xf8, + 0x1f, 0x07, 0x1d, 0x84, 0x2c, 0xe9, 0x51, 0xe3, +}; +static const unsigned char kat518_addin0[] = {0}; +static const unsigned char kat518_addin1[] = {0}; +static const unsigned char kat518_retbits[] = { + 0x21, 0x19, 0x71, 0x63, 0x2f, 0x8e, 0x6c, 0x60, 0x82, 0xf1, 0x10, 0x76, + 0xbb, 0x70, 0x7e, 0xc9, 0xc6, 0x5e, 0x34, 0x34, 0xc2, 0x72, 0x7e, 0x59, + 0xa5, 0xd1, 0x3e, 0x54, 0x35, 0x62, 0xa1, 0xda, 0x4d, 0x7b, 0xc2, 0xe4, + 0x83, 0x03, 0x5d, 0x46, 0x68, 0x53, 0x6a, 0xd1, 0xd6, 0x9f, 0x61, 0x19, + 0x04, 0x59, 0x99, 0x52, 0x4d, 0x92, 0xc4, 0x8c, 0x4a, 0xed, 0xe6, 0x22, + 0xee, 0x53, 0x63, 0x8d, +}; +static const struct drbg_kat_no_reseed kat518_t = { + 7, kat518_entropyin, kat518_nonce, kat518_persstr, + kat518_addin0, kat518_addin1, kat518_retbits +}; +static const struct drbg_kat kat518 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat518_t +}; + +static const unsigned char kat519_entropyin[] = { + 0x7b, 0x16, 0x3d, 0xc1, 0x1e, 0x15, 0x6b, 0x1b, 0xb1, 0x70, 0xc2, 0x2d, + 0xcd, 0xd1, 0x21, 0xea, 0xea, 0x30, 0x1d, 0x61, 0x72, 0xe3, 0xc0, 0xb4, + 0xbb, 0xc4, 0xf3, 0x77, 0xbe, 0x04, 0x09, 0x40, +}; +static const unsigned char kat519_nonce[] = { + 0x32, 0x33, 0xf1, 0x56, 0x37, 0x28, 0x69, 0xd9, 0x37, 0xf3, 0x69, 0x4c, + 0x50, 0xea, 0x98, 0x32, +}; +static const unsigned char kat519_persstr[] = { + 0x7d, 0x61, 0xda, 0xf2, 0x37, 0xbd, 0xea, 0x1b, 0xa3, 0xb0, 0x30, 0x1f, + 0x02, 0xcb, 0xe6, 0x1c, 0xea, 0xa1, 0x88, 0xee, 0xf8, 0x5b, 0x95, 0x84, + 0x24, 0x32, 0x47, 0x0c, 0x65, 0xa1, 0x33, 0x67, +}; +static const unsigned char kat519_addin0[] = {0}; +static const unsigned char kat519_addin1[] = {0}; +static const unsigned char kat519_retbits[] = { + 0x8b, 0x9e, 0x1b, 0x2a, 0xa9, 0x50, 0xd0, 0x16, 0xae, 0xe5, 0x5c, 0x3a, + 0xbf, 0x0c, 0x7f, 0x1d, 0x3c, 0x1c, 0x0d, 0x8a, 0x62, 0xce, 0x5d, 0x59, + 0xe8, 0x4b, 0x72, 0xa1, 0x32, 0x2f, 0x17, 0x46, 0xef, 0xaf, 0x0e, 0x46, + 0xe6, 0x7b, 0x17, 0x66, 0x43, 0xc7, 0xb5, 0x7e, 0x3d, 0xbf, 0xfb, 0xdf, + 0x32, 0xce, 0x7a, 0xff, 0xfd, 0x6f, 0xf7, 0xf2, 0x30, 0x81, 0xae, 0x4c, + 0x4f, 0x97, 0x3e, 0xb0, +}; +static const struct drbg_kat_no_reseed kat519_t = { + 8, kat519_entropyin, kat519_nonce, kat519_persstr, + kat519_addin0, kat519_addin1, kat519_retbits +}; +static const struct drbg_kat kat519 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat519_t +}; + +static const unsigned char kat520_entropyin[] = { + 0x96, 0xcb, 0x5f, 0x53, 0x1e, 0x02, 0xac, 0x25, 0x44, 0x45, 0x67, 0x3d, + 0xe5, 0xe1, 0xdc, 0xad, 0x51, 0x76, 0x10, 0x26, 0xe7, 0x78, 0xa0, 0x33, + 0x21, 0xb4, 0x9c, 0x59, 0x77, 0x45, 0x73, 0x1b, +}; +static const unsigned char kat520_nonce[] = { + 0x13, 0x91, 0x98, 0xde, 0x0c, 0xa9, 0x82, 0xc4, 0x9b, 0x8a, 0x88, 0xe5, + 0xab, 0x88, 0x6c, 0xb8, +}; +static const unsigned char kat520_persstr[] = { + 0x00, 0x6f, 0x17, 0x2e, 0x51, 0x86, 0xfb, 0x47, 0x9f, 0x3c, 0xd8, 0xe3, + 0x42, 0x5a, 0x75, 0x2b, 0x8f, 0x8d, 0x56, 0xa3, 0xf1, 0x76, 0xc6, 0xfa, + 0xba, 0x6c, 0xa4, 0xa4, 0xdd, 0xea, 0xe6, 0x37, +}; +static const unsigned char kat520_addin0[] = {0}; +static const unsigned char kat520_addin1[] = {0}; +static const unsigned char kat520_retbits[] = { + 0x38, 0x8e, 0x5c, 0x98, 0xc0, 0x54, 0x39, 0x30, 0x84, 0xa9, 0x44, 0x15, + 0xe1, 0xa9, 0xba, 0x32, 0x04, 0x4c, 0x87, 0x45, 0x62, 0xc1, 0x85, 0x39, + 0x9b, 0x96, 0x99, 0x94, 0xb6, 0x40, 0x6f, 0x9e, 0xf8, 0x63, 0x19, 0x10, + 0x2f, 0xd8, 0x9d, 0xf6, 0x70, 0x90, 0x35, 0x67, 0xf8, 0x6d, 0xe8, 0x67, + 0x6b, 0x0f, 0x72, 0x29, 0x8a, 0xa0, 0x01, 0x91, 0x15, 0x12, 0x62, 0xe7, + 0xe0, 0x89, 0x87, 0x91, +}; +static const struct drbg_kat_no_reseed kat520_t = { + 9, kat520_entropyin, kat520_nonce, kat520_persstr, + kat520_addin0, kat520_addin1, kat520_retbits +}; +static const struct drbg_kat kat520 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat520_t +}; + +static const unsigned char kat521_entropyin[] = { + 0x58, 0x5a, 0xf2, 0x7f, 0x7f, 0x52, 0x4a, 0xb4, 0xc5, 0xa7, 0xfc, 0xa4, + 0x3b, 0x70, 0xb4, 0x64, 0xcd, 0x71, 0xd7, 0xc5, 0xbf, 0xb4, 0x45, 0x5e, + 0x6d, 0xbd, 0x10, 0x2d, 0x89, 0x33, 0x5e, 0x89, +}; +static const unsigned char kat521_nonce[] = { + 0x0a, 0xc9, 0xcb, 0x4d, 0x14, 0xbf, 0x52, 0x26, 0x16, 0xc6, 0x13, 0x06, + 0x86, 0x98, 0xb1, 0x6b, +}; +static const unsigned char kat521_persstr[] = { + 0x0c, 0xa0, 0xed, 0x30, 0x27, 0xd3, 0xb4, 0x7f, 0x78, 0x3f, 0xee, 0xf1, + 0x8a, 0x40, 0x34, 0x0c, 0xc5, 0x85, 0x1b, 0x34, 0x2f, 0x39, 0xf2, 0xb7, + 0xd9, 0x08, 0x91, 0x0b, 0x96, 0x79, 0x2e, 0x3a, +}; +static const unsigned char kat521_addin0[] = {0}; +static const unsigned char kat521_addin1[] = {0}; +static const unsigned char kat521_retbits[] = { + 0xf4, 0xc2, 0xb3, 0xb8, 0x64, 0x71, 0xb2, 0xfb, 0x44, 0x69, 0x92, 0x79, + 0x19, 0x42, 0x15, 0x6d, 0x85, 0xfa, 0xc3, 0xc9, 0x37, 0xa8, 0xe5, 0x0e, + 0x79, 0xac, 0xa7, 0x92, 0xc6, 0x69, 0x50, 0x92, 0xd6, 0x7f, 0x80, 0x7e, + 0xb7, 0xac, 0x0d, 0xae, 0xe3, 0x1d, 0x68, 0xf6, 0x6a, 0x83, 0x48, 0xc3, + 0x3c, 0x31, 0x5e, 0x4b, 0xe1, 0xef, 0x58, 0x6d, 0xbd, 0x40, 0x8e, 0x63, + 0xdb, 0x1d, 0x8a, 0xb0, +}; +static const struct drbg_kat_no_reseed kat521_t = { + 10, kat521_entropyin, kat521_nonce, kat521_persstr, + kat521_addin0, kat521_addin1, kat521_retbits +}; +static const struct drbg_kat kat521 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat521_t +}; + +static const unsigned char kat522_entropyin[] = { + 0x4e, 0x7b, 0x5b, 0x7b, 0x30, 0xb8, 0xb9, 0x0b, 0x1b, 0xdc, 0x04, 0x3c, + 0x78, 0x80, 0x54, 0x58, 0x4f, 0xd3, 0x94, 0x5f, 0x45, 0xca, 0x54, 0x70, + 0x9f, 0x89, 0xc1, 0x9b, 0x75, 0x56, 0x6d, 0xc3, +}; +static const unsigned char kat522_nonce[] = { + 0x85, 0xa4, 0x00, 0x11, 0x6e, 0xb9, 0x03, 0x0c, 0x92, 0x49, 0xce, 0xae, + 0xe8, 0xde, 0xc9, 0xc7, +}; +static const unsigned char kat522_persstr[] = { + 0x09, 0x1f, 0x59, 0x0f, 0x58, 0x42, 0x30, 0x69, 0x61, 0x63, 0xb6, 0xb5, + 0x3a, 0x11, 0xf5, 0x2c, 0x2e, 0x92, 0x59, 0xaa, 0x09, 0x82, 0xd9, 0x89, + 0x7e, 0x7d, 0xc5, 0x94, 0x19, 0x9d, 0x48, 0xcb, +}; +static const unsigned char kat522_addin0[] = {0}; +static const unsigned char kat522_addin1[] = {0}; +static const unsigned char kat522_retbits[] = { + 0xc8, 0x9b, 0xc0, 0x8d, 0x62, 0x33, 0x5d, 0x3c, 0x28, 0x46, 0x4e, 0xe2, + 0x76, 0x22, 0x85, 0xce, 0xb0, 0xee, 0xfc, 0x95, 0x77, 0x19, 0x5a, 0x8f, + 0x89, 0xd6, 0x3e, 0x05, 0x52, 0x02, 0x01, 0x82, 0x3a, 0xf8, 0x87, 0x30, + 0x5c, 0xff, 0x9b, 0x2d, 0x7f, 0xd1, 0x7f, 0x60, 0xb5, 0x11, 0x7f, 0xdc, + 0xd0, 0xed, 0x3e, 0xf1, 0x8b, 0xac, 0x7e, 0x5f, 0x15, 0x08, 0x08, 0x02, + 0xa8, 0xab, 0x13, 0x9e, +}; +static const struct drbg_kat_no_reseed kat522_t = { + 11, kat522_entropyin, kat522_nonce, kat522_persstr, + kat522_addin0, kat522_addin1, kat522_retbits +}; +static const struct drbg_kat kat522 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat522_t +}; + +static const unsigned char kat523_entropyin[] = { + 0xac, 0x2d, 0xd6, 0x82, 0xa9, 0x6e, 0xe0, 0xe8, 0x18, 0x82, 0x9d, 0xb5, + 0x62, 0xfb, 0xc3, 0x0a, 0x7c, 0x00, 0xe0, 0x19, 0x31, 0x47, 0xc5, 0x33, + 0xe2, 0xa5, 0x1b, 0x37, 0x4a, 0x46, 0x79, 0x58, +}; +static const unsigned char kat523_nonce[] = { + 0xb8, 0xe6, 0x39, 0x64, 0x49, 0xd8, 0x84, 0xe9, 0xc6, 0xee, 0x7c, 0xed, + 0x8c, 0x7a, 0xd9, 0x2e, +}; +static const unsigned char kat523_persstr[] = { + 0x10, 0x87, 0xed, 0x01, 0xb4, 0xa8, 0x53, 0xef, 0xd8, 0xb9, 0xd3, 0xad, + 0xc5, 0x89, 0x39, 0x36, 0x49, 0x9d, 0xd2, 0x97, 0x45, 0xcd, 0xc6, 0xd3, + 0xd8, 0x93, 0xad, 0xc8, 0x1d, 0x5a, 0x1b, 0xcd, +}; +static const unsigned char kat523_addin0[] = {0}; +static const unsigned char kat523_addin1[] = {0}; +static const unsigned char kat523_retbits[] = { + 0xe1, 0x15, 0x4b, 0x37, 0x6b, 0x8c, 0x7c, 0x26, 0x15, 0x1b, 0x7f, 0x68, + 0xa5, 0xdb, 0x27, 0x4d, 0x73, 0x10, 0x18, 0x03, 0xc1, 0xe7, 0xc2, 0xf6, + 0xd1, 0x0f, 0x37, 0x4e, 0x4b, 0x88, 0x3b, 0x10, 0x30, 0x5a, 0x5d, 0x58, + 0x76, 0x76, 0x02, 0x0d, 0x52, 0xc6, 0xc4, 0xa7, 0xe5, 0x53, 0xbb, 0x96, + 0xa9, 0x53, 0xb6, 0xe9, 0xf2, 0xe4, 0xa7, 0xdd, 0x60, 0xed, 0x4f, 0x94, + 0xd1, 0x23, 0xe4, 0xa3, +}; +static const struct drbg_kat_no_reseed kat523_t = { + 12, kat523_entropyin, kat523_nonce, kat523_persstr, + kat523_addin0, kat523_addin1, kat523_retbits +}; +static const struct drbg_kat kat523 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat523_t +}; + +static const unsigned char kat524_entropyin[] = { + 0x40, 0x44, 0x29, 0x9a, 0x1a, 0x97, 0x12, 0x6a, 0x52, 0x45, 0x97, 0xc8, + 0xdf, 0x58, 0x0c, 0x9f, 0x54, 0xad, 0xb4, 0x14, 0x3a, 0x82, 0x82, 0x33, + 0x64, 0x96, 0xd9, 0xed, 0x41, 0x88, 0x13, 0x57, +}; +static const unsigned char kat524_nonce[] = { + 0x78, 0x7d, 0xa4, 0xf0, 0x15, 0x98, 0xb6, 0xf0, 0x9e, 0x3a, 0x7b, 0x68, + 0x65, 0xf9, 0x09, 0x87, +}; +static const unsigned char kat524_persstr[] = { + 0xc7, 0x78, 0x25, 0x4d, 0x48, 0x62, 0x8e, 0x48, 0xf4, 0xdc, 0xac, 0x3c, + 0x96, 0xdf, 0xb2, 0xcf, 0x84, 0x10, 0xf9, 0xcd, 0xb6, 0xc0, 0x0d, 0x62, + 0x5b, 0x41, 0x1a, 0x01, 0x47, 0xbf, 0xe1, 0x6d, +}; +static const unsigned char kat524_addin0[] = {0}; +static const unsigned char kat524_addin1[] = {0}; +static const unsigned char kat524_retbits[] = { + 0x1b, 0xfa, 0xb9, 0x3a, 0x54, 0xb7, 0xa0, 0xbb, 0xc6, 0xa7, 0x7d, 0x63, + 0xd8, 0x13, 0x2a, 0x5d, 0x6c, 0x19, 0x1c, 0x84, 0xe0, 0x9a, 0x85, 0x91, + 0xd2, 0xb7, 0xd8, 0x8f, 0x33, 0x9c, 0xad, 0x29, 0xd4, 0x3c, 0xc8, 0xd0, + 0xbf, 0x01, 0xd6, 0xea, 0x9f, 0xfe, 0x27, 0xfa, 0x1f, 0xf7, 0x69, 0x9c, + 0x87, 0x1a, 0x84, 0x11, 0x33, 0x2a, 0xb0, 0xbc, 0xeb, 0xce, 0x01, 0x7a, + 0xde, 0xd3, 0xef, 0xb6, +}; +static const struct drbg_kat_no_reseed kat524_t = { + 13, kat524_entropyin, kat524_nonce, kat524_persstr, + kat524_addin0, kat524_addin1, kat524_retbits +}; +static const struct drbg_kat kat524 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat524_t +}; + +static const unsigned char kat525_entropyin[] = { + 0x56, 0xe5, 0xdd, 0x70, 0x78, 0x2f, 0xca, 0x50, 0x49, 0x3b, 0x5d, 0x22, + 0x2b, 0x83, 0xb6, 0xdd, 0x7b, 0xdf, 0x10, 0x22, 0xd3, 0x04, 0xf4, 0xf2, + 0x92, 0xdb, 0x38, 0x5f, 0x3a, 0xcd, 0x8a, 0xb0, +}; +static const unsigned char kat525_nonce[] = { + 0xf0, 0xec, 0x46, 0xde, 0x4a, 0x9a, 0xab, 0x3f, 0x9e, 0x7f, 0xd4, 0x7f, + 0x60, 0xd2, 0x04, 0x50, +}; +static const unsigned char kat525_persstr[] = { + 0xcc, 0x54, 0x2e, 0x50, 0xfc, 0x0a, 0xbb, 0x15, 0xb7, 0xdd, 0xe7, 0xb0, + 0xdf, 0xe8, 0x41, 0xc7, 0x9f, 0x74, 0x82, 0x44, 0xa0, 0xd1, 0xd0, 0xa0, + 0x2e, 0x9f, 0x90, 0x8a, 0xb9, 0x9c, 0x61, 0xc2, +}; +static const unsigned char kat525_addin0[] = {0}; +static const unsigned char kat525_addin1[] = {0}; +static const unsigned char kat525_retbits[] = { + 0x74, 0x27, 0xc7, 0x01, 0x8c, 0x51, 0xf3, 0xb0, 0x60, 0xcb, 0xd8, 0xfe, + 0x25, 0x3a, 0x8b, 0x62, 0xb6, 0x72, 0xa3, 0x1f, 0xb8, 0x48, 0xf5, 0x58, + 0x31, 0xbe, 0x1b, 0x04, 0x5f, 0x60, 0x85, 0xc9, 0x13, 0x64, 0x85, 0x3c, + 0x7e, 0x35, 0x3b, 0xe0, 0xa5, 0x2d, 0xca, 0xdb, 0x30, 0x92, 0x8e, 0x94, + 0xe1, 0x77, 0x2b, 0xed, 0xbf, 0x27, 0x10, 0x1a, 0x2a, 0x8f, 0xf8, 0x71, + 0x3d, 0x9c, 0x9f, 0x4c, +}; +static const struct drbg_kat_no_reseed kat525_t = { + 14, kat525_entropyin, kat525_nonce, kat525_persstr, + kat525_addin0, kat525_addin1, kat525_retbits +}; +static const struct drbg_kat kat525 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat525_t +}; + +static const unsigned char kat526_entropyin[] = { + 0x87, 0xb5, 0x6e, 0x96, 0x4e, 0xba, 0x22, 0x71, 0x54, 0x72, 0x4b, 0xb9, + 0x48, 0x4b, 0x81, 0x2d, 0x3e, 0x2c, 0x0c, 0x43, 0xb3, 0xd1, 0x7f, 0x60, + 0x98, 0xd9, 0x52, 0x6e, 0x16, 0xe6, 0xd0, 0xef, +}; +static const unsigned char kat526_nonce[] = { + 0x9b, 0xea, 0x6a, 0x7f, 0xf2, 0x35, 0x8d, 0xf1, 0x42, 0xe6, 0xc2, 0x3e, + 0x21, 0x57, 0xfb, 0x83, +}; +static const unsigned char kat526_persstr[] = { + 0x98, 0x60, 0xb4, 0x32, 0xed, 0xd5, 0x8d, 0x1c, 0xcb, 0xfe, 0xec, 0xbc, + 0xe9, 0x9f, 0xfa, 0xee, 0x7d, 0x93, 0x5a, 0x61, 0x48, 0x60, 0xd4, 0xe9, + 0x65, 0xbd, 0x67, 0x04, 0x14, 0x03, 0x09, 0x6b, +}; +static const unsigned char kat526_addin0[] = { + 0x99, 0xa5, 0xcc, 0x87, 0x92, 0x4e, 0x8e, 0xa6, 0x5a, 0x59, 0x6f, 0x81, + 0xfd, 0x17, 0xd6, 0x3f, 0x5b, 0x45, 0x42, 0xfe, 0x6e, 0x8e, 0x15, 0x11, + 0xb5, 0xd3, 0x5c, 0x83, 0x5d, 0xfa, 0xdb, 0x0b, +}; +static const unsigned char kat526_addin1[] = { + 0x9a, 0x8d, 0xec, 0x54, 0x73, 0x4a, 0x34, 0x58, 0x2a, 0x23, 0x32, 0xf3, + 0x45, 0x2e, 0x82, 0x31, 0x35, 0x24, 0xc3, 0xe0, 0xdf, 0xb4, 0x85, 0xfa, + 0xea, 0xc6, 0xca, 0x5f, 0xc0, 0xff, 0x50, 0x4d, +}; +static const unsigned char kat526_retbits[] = { + 0xdb, 0xc6, 0xa2, 0x33, 0x0b, 0x19, 0xb5, 0xcd, 0xdd, 0x8c, 0xd6, 0x39, + 0x2e, 0xc1, 0xfb, 0x50, 0x86, 0x78, 0xc8, 0x05, 0xe8, 0x7d, 0x1a, 0xca, + 0x07, 0xac, 0x26, 0x50, 0x07, 0x63, 0x25, 0x03, 0x04, 0x4a, 0x00, 0x61, + 0x0c, 0x79, 0xd9, 0x83, 0x75, 0xaf, 0xa7, 0xab, 0x4c, 0xca, 0x1a, 0x90, + 0x98, 0x9c, 0xbf, 0xe7, 0xc6, 0x74, 0xaf, 0x5d, 0x82, 0x3c, 0xed, 0x11, + 0xc4, 0x7e, 0x9a, 0xf6, +}; +static const struct drbg_kat_no_reseed kat526_t = { + 0, kat526_entropyin, kat526_nonce, kat526_persstr, + kat526_addin0, kat526_addin1, kat526_retbits +}; +static const struct drbg_kat kat526 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat526_t +}; + +static const unsigned char kat527_entropyin[] = { + 0xb3, 0x60, 0x32, 0xf5, 0xd7, 0x77, 0x25, 0x08, 0x26, 0xd8, 0x31, 0x56, + 0x6e, 0xc5, 0x85, 0x45, 0x2d, 0x70, 0xb9, 0x20, 0x65, 0x43, 0x55, 0xac, + 0xf8, 0xf6, 0x91, 0x94, 0x16, 0x43, 0xee, 0x95, +}; +static const unsigned char kat527_nonce[] = { + 0xda, 0xcf, 0x74, 0x7e, 0x85, 0xfa, 0xa6, 0xa3, 0xeb, 0x01, 0x6d, 0xf9, + 0x29, 0xc9, 0x0e, 0x8b, +}; +static const unsigned char kat527_persstr[] = { + 0xf0, 0x32, 0x65, 0xb2, 0xf2, 0x17, 0x4c, 0xea, 0x93, 0x8f, 0xf2, 0x3c, + 0x7e, 0x60, 0xa7, 0x5d, 0xcb, 0xa1, 0xe4, 0xe4, 0x12, 0xbb, 0xad, 0x4b, + 0x5d, 0x3b, 0x3e, 0x23, 0x68, 0x5e, 0x80, 0xd8, +}; +static const unsigned char kat527_addin0[] = { + 0xd4, 0x77, 0x23, 0x80, 0xde, 0x77, 0x4b, 0xbb, 0xb6, 0x10, 0x0d, 0x93, + 0x39, 0x59, 0x0e, 0xff, 0x03, 0x3f, 0xf5, 0x48, 0xb8, 0x26, 0x68, 0x55, + 0x53, 0xa2, 0xe8, 0x57, 0x80, 0x0a, 0x07, 0xe2, +}; +static const unsigned char kat527_addin1[] = { + 0x05, 0x01, 0x1d, 0x3d, 0xd4, 0xdd, 0xcf, 0x19, 0x07, 0x6f, 0xae, 0x65, + 0x69, 0x73, 0xaa, 0xc9, 0xa1, 0x16, 0x41, 0xb2, 0x10, 0x96, 0x3c, 0xec, + 0x81, 0xd1, 0xea, 0x58, 0xdb, 0x7b, 0xb7, 0xe0, +}; +static const unsigned char kat527_retbits[] = { + 0x3d, 0x35, 0x31, 0x05, 0x79, 0x77, 0x40, 0x10, 0x72, 0xce, 0x44, 0xe2, + 0xe6, 0x63, 0x17, 0xa8, 0x08, 0xd4, 0x7c, 0x44, 0xaa, 0xd4, 0xf9, 0x8c, + 0x08, 0xd8, 0x8e, 0xac, 0x7b, 0x59, 0x8c, 0x40, 0x71, 0x4a, 0xd1, 0x24, + 0x17, 0xb6, 0x16, 0x99, 0xd1, 0x12, 0x6e, 0xa4, 0xc6, 0x42, 0xb0, 0x9f, + 0xe9, 0xf5, 0xde, 0xd3, 0x6f, 0x2e, 0x37, 0xed, 0x2c, 0xce, 0x97, 0x2e, + 0x0d, 0xfc, 0xc7, 0xce, +}; +static const struct drbg_kat_no_reseed kat527_t = { + 1, kat527_entropyin, kat527_nonce, kat527_persstr, + kat527_addin0, kat527_addin1, kat527_retbits +}; +static const struct drbg_kat kat527 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat527_t +}; + +static const unsigned char kat528_entropyin[] = { + 0x32, 0x42, 0xa1, 0xb9, 0x7c, 0x11, 0xe5, 0xea, 0x8a, 0x1b, 0x96, 0xcc, + 0xdc, 0xc2, 0x56, 0x28, 0xe7, 0x9e, 0xc5, 0xd1, 0x4b, 0x04, 0x15, 0x58, + 0xd3, 0x12, 0xea, 0x72, 0xa3, 0xdd, 0x0d, 0xd0, +}; +static const unsigned char kat528_nonce[] = { + 0xd9, 0xf1, 0xa8, 0xdd, 0x83, 0xb0, 0xf1, 0x13, 0x17, 0xa9, 0x2d, 0x20, + 0x51, 0xe0, 0x7e, 0x97, +}; +static const unsigned char kat528_persstr[] = { + 0x93, 0x0b, 0x0c, 0x3b, 0x96, 0x26, 0x3c, 0x3e, 0xc7, 0xed, 0xf2, 0x58, + 0x90, 0xcc, 0x5d, 0x7e, 0xa4, 0x1d, 0x65, 0x64, 0xa8, 0x1f, 0x17, 0x89, + 0x9f, 0xc7, 0xb4, 0x9c, 0x5c, 0x40, 0xb0, 0x91, +}; +static const unsigned char kat528_addin0[] = { + 0xa9, 0x05, 0xda, 0xb4, 0xad, 0xe7, 0x5e, 0xe5, 0xe6, 0x8a, 0x07, 0x09, + 0xd1, 0xd0, 0x69, 0x9a, 0x87, 0xf5, 0xd4, 0xf8, 0xe4, 0x9c, 0x8c, 0x95, + 0xd9, 0x59, 0x0d, 0x7c, 0x12, 0x38, 0xd0, 0xf9, +}; +static const unsigned char kat528_addin1[] = { + 0x4d, 0x8e, 0x2d, 0x92, 0x29, 0x97, 0x65, 0xb9, 0xce, 0xf0, 0x39, 0xd9, + 0x47, 0xd4, 0x42, 0x7d, 0x4b, 0x9c, 0x14, 0xf4, 0x2c, 0x81, 0xe1, 0x2b, + 0xc9, 0x1b, 0x4e, 0x29, 0x72, 0x33, 0xfc, 0xe1, +}; +static const unsigned char kat528_retbits[] = { + 0xfa, 0x3a, 0xdb, 0x6a, 0x35, 0xe0, 0x50, 0x85, 0x34, 0x80, 0x3e, 0xda, + 0x5f, 0x39, 0xd9, 0xfd, 0x62, 0x22, 0x74, 0x74, 0xd9, 0xe1, 0x43, 0x5e, + 0xd0, 0xe5, 0xe6, 0xda, 0x01, 0xe2, 0xe4, 0xd8, 0x3a, 0x3d, 0xa9, 0x39, + 0x5a, 0x3c, 0x96, 0xef, 0xec, 0xdf, 0xe9, 0x2b, 0x89, 0xe1, 0x5e, 0x8c, + 0xaf, 0x25, 0xe8, 0x17, 0x24, 0xb3, 0x97, 0x35, 0x51, 0x97, 0x2a, 0x8f, + 0xf5, 0xb5, 0xcd, 0x0f, +}; +static const struct drbg_kat_no_reseed kat528_t = { + 2, kat528_entropyin, kat528_nonce, kat528_persstr, + kat528_addin0, kat528_addin1, kat528_retbits +}; +static const struct drbg_kat kat528 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat528_t +}; + +static const unsigned char kat529_entropyin[] = { + 0xbb, 0x2c, 0x5c, 0x0d, 0xe9, 0xdd, 0x27, 0x69, 0x42, 0xca, 0x0a, 0x54, + 0xfa, 0xf9, 0xa4, 0xf7, 0x25, 0xe2, 0x7b, 0x19, 0x6a, 0x6f, 0x16, 0xe9, + 0xdd, 0x34, 0x59, 0x53, 0x79, 0xe5, 0xb8, 0x69, +}; +static const unsigned char kat529_nonce[] = { + 0x76, 0x30, 0xfb, 0xb7, 0x1d, 0x49, 0xba, 0x0b, 0xa3, 0x6d, 0xd8, 0x8d, + 0x2d, 0x49, 0x1d, 0x61, +}; +static const unsigned char kat529_persstr[] = { + 0xa0, 0x26, 0x4b, 0x50, 0x05, 0xdb, 0xfc, 0x57, 0x19, 0x4b, 0xac, 0x89, + 0x08, 0x9c, 0x16, 0xa7, 0x85, 0x22, 0x2a, 0xf0, 0x08, 0x31, 0x0b, 0x20, + 0xa6, 0x08, 0x5e, 0xe7, 0x41, 0x89, 0x2c, 0xed, +}; +static const unsigned char kat529_addin0[] = { + 0x63, 0x4f, 0xd7, 0xca, 0xd0, 0x00, 0xb7, 0x86, 0xfe, 0x36, 0x2c, 0x91, + 0x48, 0x57, 0xb5, 0xd9, 0xed, 0x26, 0x69, 0xcd, 0x5c, 0x77, 0x7c, 0x52, + 0x07, 0x5c, 0xff, 0x38, 0x40, 0xbb, 0x58, 0xab, +}; +static const unsigned char kat529_addin1[] = { + 0xfd, 0xfe, 0x16, 0x1f, 0x0c, 0xa0, 0xe6, 0xec, 0xd6, 0x35, 0x6a, 0xdb, + 0x64, 0x6e, 0xf6, 0x29, 0x35, 0xd8, 0xcf, 0xc7, 0x52, 0x22, 0x44, 0xa6, + 0x04, 0x1c, 0xb3, 0xd7, 0xcc, 0x6e, 0x68, 0x39, +}; +static const unsigned char kat529_retbits[] = { + 0xe3, 0xc7, 0x8a, 0x24, 0xd5, 0xa3, 0x4b, 0x2a, 0x70, 0x26, 0x4d, 0x13, + 0x70, 0x7c, 0xa6, 0x35, 0xc9, 0x54, 0x26, 0xf4, 0x22, 0xdb, 0x78, 0xc1, + 0x8c, 0x91, 0xe3, 0xc4, 0x0f, 0xb7, 0x39, 0x2c, 0x02, 0xb0, 0xa9, 0xed, + 0x2e, 0x1d, 0x5a, 0x9c, 0x73, 0xef, 0x45, 0x6c, 0x37, 0xaf, 0xe6, 0xae, + 0x0c, 0xc1, 0x86, 0x72, 0x63, 0xb4, 0x63, 0x0a, 0xbd, 0x73, 0x84, 0xab, + 0x68, 0x29, 0x03, 0x42, +}; +static const struct drbg_kat_no_reseed kat529_t = { + 3, kat529_entropyin, kat529_nonce, kat529_persstr, + kat529_addin0, kat529_addin1, kat529_retbits +}; +static const struct drbg_kat kat529 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat529_t +}; + +static const unsigned char kat530_entropyin[] = { + 0x73, 0x74, 0xb7, 0x23, 0xd4, 0x1a, 0xc8, 0x7c, 0xd1, 0xee, 0x53, 0x88, + 0x0c, 0x0d, 0x76, 0xbd, 0x95, 0x8b, 0x50, 0xa8, 0x71, 0x4f, 0xfd, 0x07, + 0x0f, 0x45, 0x3b, 0xd8, 0x49, 0x86, 0x22, 0xc8, +}; +static const unsigned char kat530_nonce[] = { + 0x86, 0xe1, 0x23, 0xcd, 0x4f, 0x07, 0x4c, 0x7f, 0x07, 0x31, 0x63, 0xfb, + 0x18, 0x9a, 0xf9, 0xfd, +}; +static const unsigned char kat530_persstr[] = { + 0x16, 0xb6, 0x26, 0x75, 0xe9, 0xf9, 0x24, 0xc6, 0xfc, 0xaa, 0x13, 0x3c, + 0x0c, 0x75, 0xc4, 0x1b, 0x5e, 0xde, 0x75, 0xbd, 0xfd, 0x4a, 0x70, 0x11, + 0x0e, 0xa7, 0x4a, 0xfb, 0x73, 0xd2, 0x56, 0x97, +}; +static const unsigned char kat530_addin0[] = { + 0xfc, 0x06, 0x04, 0x40, 0x87, 0x2b, 0xa7, 0xee, 0x4b, 0x26, 0xb0, 0xca, + 0xb6, 0x70, 0x7c, 0xd3, 0x88, 0xc6, 0x9d, 0x85, 0xac, 0xb5, 0x7d, 0x65, + 0x79, 0xc8, 0xd8, 0xbc, 0x4a, 0xf1, 0xad, 0xfe, +}; +static const unsigned char kat530_addin1[] = { + 0xcd, 0xd1, 0x50, 0xf8, 0xd7, 0x0d, 0x5a, 0xad, 0x87, 0x84, 0xea, 0x74, + 0xc5, 0x09, 0x86, 0x05, 0xf8, 0x3c, 0xb0, 0x7f, 0x69, 0xdb, 0xad, 0xe1, + 0x93, 0x89, 0x3b, 0xc0, 0x18, 0x4d, 0xab, 0x39, +}; +static const unsigned char kat530_retbits[] = { + 0xcb, 0x7e, 0x38, 0xfc, 0xfa, 0xd9, 0x1f, 0x1e, 0xb8, 0x2d, 0xac, 0xd2, + 0xce, 0x99, 0x11, 0xb7, 0x9b, 0xfd, 0xb0, 0x7e, 0xdb, 0xab, 0x2e, 0xdf, + 0x24, 0x19, 0x0a, 0x2d, 0x9d, 0xa1, 0x71, 0xc1, 0x8c, 0x62, 0xbd, 0x10, + 0xe3, 0xb7, 0xd7, 0xff, 0x01, 0x9b, 0x66, 0x6e, 0xbf, 0xf4, 0x26, 0x77, + 0xd7, 0x9b, 0x40, 0x1a, 0xe6, 0x4a, 0x41, 0x37, 0x28, 0x76, 0x36, 0xd4, + 0x9c, 0xad, 0xdc, 0xdc, +}; +static const struct drbg_kat_no_reseed kat530_t = { + 4, kat530_entropyin, kat530_nonce, kat530_persstr, + kat530_addin0, kat530_addin1, kat530_retbits +}; +static const struct drbg_kat kat530 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat530_t +}; + +static const unsigned char kat531_entropyin[] = { + 0x0d, 0xb7, 0x5d, 0x22, 0xf0, 0xd1, 0x69, 0x02, 0xc7, 0xa1, 0x81, 0x3b, + 0x0a, 0xda, 0xb2, 0xeb, 0xc6, 0x75, 0xf4, 0x30, 0x57, 0x38, 0x46, 0x9b, + 0x14, 0x2b, 0x7f, 0x9a, 0x39, 0xd5, 0xea, 0xf7, +}; +static const unsigned char kat531_nonce[] = { + 0x1a, 0xce, 0x39, 0x3a, 0x30, 0xcb, 0x36, 0xda, 0xbf, 0xcd, 0x85, 0x48, + 0x34, 0x91, 0xb9, 0x48, +}; +static const unsigned char kat531_persstr[] = { + 0x1f, 0x9f, 0x7a, 0xbf, 0xca, 0x5d, 0x53, 0x65, 0xc6, 0x44, 0xf7, 0xd9, + 0xd3, 0x3d, 0x12, 0x88, 0xcb, 0x62, 0xb2, 0x7e, 0x87, 0x3a, 0x4d, 0x52, + 0xaa, 0xd0, 0xe7, 0xcc, 0x1c, 0x89, 0x53, 0x88, +}; +static const unsigned char kat531_addin0[] = { + 0xb0, 0x21, 0x01, 0x79, 0xbb, 0x14, 0x59, 0x8a, 0xd3, 0x0c, 0x4f, 0xe1, + 0xf2, 0xbf, 0x43, 0xc7, 0x81, 0xea, 0x9d, 0x8b, 0x51, 0xa2, 0x6b, 0x88, + 0x55, 0xa8, 0x12, 0xb5, 0x5a, 0x1c, 0xf8, 0x94, +}; +static const unsigned char kat531_addin1[] = { + 0x73, 0xa2, 0x8b, 0x72, 0xcd, 0xa9, 0xf8, 0x31, 0xe2, 0x1b, 0x77, 0x6b, + 0xc9, 0x2e, 0x34, 0x04, 0x13, 0x2a, 0xbe, 0x5d, 0x7c, 0x2f, 0xe1, 0xc2, + 0x6a, 0xd4, 0xca, 0x6c, 0xa6, 0xe4, 0xea, 0x47, +}; +static const unsigned char kat531_retbits[] = { + 0xf7, 0xb6, 0x39, 0x82, 0x60, 0xd3, 0x0e, 0x5b, 0x24, 0x0d, 0xfd, 0x5b, + 0xa0, 0x13, 0x6b, 0xa2, 0xda, 0x98, 0xb8, 0xbf, 0x25, 0x3f, 0x7a, 0x7c, + 0x1b, 0xad, 0x91, 0x32, 0x62, 0x54, 0x04, 0xe8, 0x99, 0x88, 0xd2, 0x71, + 0xba, 0xf0, 0xa2, 0x6e, 0x19, 0x78, 0x61, 0x06, 0xba, 0xc9, 0x20, 0xb9, + 0x43, 0x3c, 0xc8, 0xb4, 0xf5, 0xb9, 0x85, 0x3e, 0x24, 0x7c, 0x05, 0x06, + 0xd1, 0xb1, 0x14, 0x88, +}; +static const struct drbg_kat_no_reseed kat531_t = { + 5, kat531_entropyin, kat531_nonce, kat531_persstr, + kat531_addin0, kat531_addin1, kat531_retbits +}; +static const struct drbg_kat kat531 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat531_t +}; + +static const unsigned char kat532_entropyin[] = { + 0x6b, 0xd0, 0x81, 0xc5, 0x86, 0x37, 0xe5, 0x55, 0x10, 0x5e, 0x14, 0x1d, + 0xca, 0xca, 0x4b, 0x95, 0xb5, 0xbe, 0xcf, 0x39, 0x96, 0x73, 0xdb, 0x6c, + 0xc0, 0xe9, 0x6c, 0x66, 0xe1, 0x60, 0x92, 0xcd, +}; +static const unsigned char kat532_nonce[] = { + 0xce, 0xa7, 0x1d, 0xe8, 0x81, 0x9b, 0x59, 0x99, 0x37, 0xdb, 0xa4, 0x84, + 0x77, 0xae, 0x9f, 0xba, +}; +static const unsigned char kat532_persstr[] = { + 0xeb, 0x04, 0x5c, 0x29, 0x85, 0xab, 0x91, 0x69, 0x07, 0x58, 0xc2, 0xb5, + 0x6c, 0x7d, 0xba, 0xd2, 0x56, 0xdb, 0x16, 0xef, 0xc4, 0x14, 0x34, 0x4a, + 0x4b, 0xba, 0xe2, 0x54, 0xbe, 0x41, 0x70, 0xfa, +}; +static const unsigned char kat532_addin0[] = { + 0xf1, 0x32, 0xbb, 0x2e, 0x73, 0x1c, 0xd1, 0xcc, 0xfa, 0x37, 0x3b, 0x4d, + 0x1e, 0x8a, 0x52, 0x7e, 0xd0, 0x8b, 0x42, 0x94, 0x47, 0xf3, 0x2b, 0x23, + 0xb9, 0x6d, 0x31, 0x2e, 0x5b, 0xab, 0xdd, 0x23, +}; +static const unsigned char kat532_addin1[] = { + 0x0a, 0x55, 0x4d, 0xed, 0x57, 0xc1, 0xef, 0xec, 0xc4, 0xd4, 0xa0, 0x1a, + 0x82, 0xff, 0x17, 0x99, 0xc6, 0xe9, 0x36, 0xf9, 0xf9, 0x34, 0x02, 0xbc, + 0xe4, 0x62, 0x10, 0x2c, 0x2d, 0x25, 0x91, 0x0a, +}; +static const unsigned char kat532_retbits[] = { + 0x7d, 0xe6, 0x0b, 0x0a, 0x40, 0xfb, 0x83, 0x59, 0xda, 0x92, 0x92, 0xc6, + 0x8f, 0x26, 0x16, 0x31, 0xd1, 0x84, 0xb0, 0x3e, 0x90, 0x47, 0x33, 0xb5, + 0xc9, 0x63, 0x96, 0x6a, 0x74, 0xd4, 0x87, 0x5a, 0x8f, 0x36, 0x50, 0x87, + 0xde, 0xe9, 0xc2, 0xcb, 0x8d, 0x05, 0x77, 0x8b, 0x0e, 0x0b, 0x46, 0xe5, + 0x26, 0xbc, 0xa1, 0x3c, 0x4c, 0x50, 0xbe, 0x49, 0x06, 0x25, 0xef, 0x05, + 0x0a, 0x79, 0x45, 0x28, +}; +static const struct drbg_kat_no_reseed kat532_t = { + 6, kat532_entropyin, kat532_nonce, kat532_persstr, + kat532_addin0, kat532_addin1, kat532_retbits +}; +static const struct drbg_kat kat532 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat532_t +}; + +static const unsigned char kat533_entropyin[] = { + 0xb7, 0x1b, 0xd1, 0x4e, 0x15, 0x87, 0xf6, 0x33, 0x4b, 0x7f, 0x94, 0x64, + 0x26, 0x16, 0xa3, 0x6a, 0x55, 0xff, 0xe4, 0xa7, 0x5e, 0xea, 0xde, 0x86, + 0x4e, 0xa7, 0x05, 0x1e, 0x64, 0x6b, 0xad, 0x52, +}; +static const unsigned char kat533_nonce[] = { + 0xa4, 0x3d, 0xc9, 0x7f, 0x41, 0x1b, 0xe9, 0x7c, 0xd1, 0x8d, 0xbe, 0xcf, + 0xce, 0x56, 0x2f, 0x23, +}; +static const unsigned char kat533_persstr[] = { + 0xeb, 0xbd, 0xb8, 0x1e, 0xc0, 0x3a, 0x13, 0xa1, 0x5a, 0x03, 0xdb, 0x56, + 0x98, 0xf3, 0x4a, 0xa8, 0xc0, 0x29, 0x38, 0xbf, 0x87, 0x85, 0xf1, 0x3f, + 0xde, 0x75, 0xcb, 0xcd, 0x82, 0x3e, 0x61, 0xf7, +}; +static const unsigned char kat533_addin0[] = { + 0x58, 0x17, 0xe3, 0x93, 0x93, 0xe8, 0x8f, 0x09, 0x39, 0xd5, 0xa8, 0xd7, + 0x03, 0x83, 0x08, 0x3f, 0xc6, 0x6d, 0x9c, 0x53, 0x3b, 0xae, 0xe6, 0x28, + 0x28, 0x2d, 0xf7, 0x80, 0x46, 0xfc, 0xd8, 0xfa, +}; +static const unsigned char kat533_addin1[] = { + 0xf9, 0x67, 0xa6, 0xd7, 0x9c, 0x65, 0x7d, 0x0b, 0xff, 0xd3, 0x34, 0x6f, + 0xb2, 0x80, 0x46, 0x91, 0x1b, 0x1f, 0x8c, 0x30, 0x31, 0xcc, 0x6e, 0x22, + 0x04, 0xc2, 0xc9, 0xe8, 0x88, 0x43, 0x2f, 0x77, +}; +static const unsigned char kat533_retbits[] = { + 0xe1, 0xba, 0x47, 0xd4, 0x5d, 0x73, 0xba, 0x54, 0xda, 0x50, 0x30, 0x15, + 0x98, 0x7d, 0x8e, 0x12, 0x14, 0xc3, 0x46, 0x87, 0xa6, 0xff, 0x78, 0x6a, + 0x88, 0x0c, 0x98, 0xe5, 0xe2, 0xe5, 0x59, 0x0e, 0xae, 0x69, 0x09, 0x5a, + 0x93, 0x21, 0x6d, 0x12, 0x73, 0x50, 0x4d, 0x94, 0xde, 0xa6, 0x7c, 0x51, + 0xf4, 0xa8, 0xa5, 0xd9, 0x7d, 0x02, 0x42, 0x89, 0x0c, 0x39, 0x4b, 0xf7, + 0x3e, 0xf5, 0x2d, 0x63, +}; +static const struct drbg_kat_no_reseed kat533_t = { + 7, kat533_entropyin, kat533_nonce, kat533_persstr, + kat533_addin0, kat533_addin1, kat533_retbits +}; +static const struct drbg_kat kat533 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat533_t +}; + +static const unsigned char kat534_entropyin[] = { + 0x0d, 0x97, 0x0e, 0xa0, 0xa1, 0xe8, 0x9d, 0x36, 0xfb, 0x66, 0xa7, 0x3a, + 0xe7, 0xa7, 0xbb, 0x47, 0x60, 0xca, 0x9b, 0x0e, 0x22, 0x96, 0xe2, 0xd2, + 0x41, 0x62, 0x9b, 0x99, 0x24, 0x9a, 0xc9, 0xf3, +}; +static const unsigned char kat534_nonce[] = { + 0xc0, 0x30, 0x31, 0xdc, 0x1c, 0xd9, 0xcf, 0x62, 0xc4, 0xd0, 0x3e, 0x2e, + 0x37, 0x20, 0x39, 0x1b, +}; +static const unsigned char kat534_persstr[] = { + 0x91, 0x68, 0x2b, 0xe8, 0x19, 0x34, 0xaf, 0xd8, 0x1d, 0xcb, 0x63, 0x8b, + 0xa8, 0x88, 0x3a, 0x88, 0x91, 0x3e, 0x32, 0x65, 0xda, 0x1b, 0x92, 0xc8, + 0xd9, 0xb3, 0x4a, 0x2b, 0x90, 0x66, 0x24, 0xcd, +}; +static const unsigned char kat534_addin0[] = { + 0xc3, 0xb3, 0x3d, 0xc2, 0xf9, 0x8d, 0xc8, 0xde, 0xdc, 0x22, 0x54, 0xb3, + 0x82, 0x65, 0x4c, 0x75, 0x38, 0x1a, 0x4d, 0xf0, 0x71, 0x33, 0x4c, 0xe2, + 0x28, 0x60, 0xe9, 0x2c, 0x61, 0x64, 0xf8, 0xcc, +}; +static const unsigned char kat534_addin1[] = { + 0x53, 0xb2, 0xae, 0x27, 0xf9, 0x64, 0xfc, 0x86, 0x2b, 0x39, 0xf4, 0xa1, + 0x6d, 0x73, 0xa9, 0x98, 0x0e, 0x81, 0x94, 0x6c, 0xce, 0x5c, 0x2a, 0xe4, + 0xa5, 0xef, 0x6a, 0x25, 0xb9, 0x2a, 0x08, 0xaa, +}; +static const unsigned char kat534_retbits[] = { + 0xe3, 0x47, 0x1a, 0xbe, 0xe1, 0x16, 0x7a, 0x57, 0x66, 0x71, 0x32, 0xdd, + 0x31, 0x59, 0x0e, 0x95, 0x12, 0x5f, 0x61, 0x95, 0x7e, 0xcd, 0x62, 0x1d, + 0xdb, 0xa4, 0x9e, 0xbf, 0xa5, 0x3a, 0x8f, 0x5a, 0xfe, 0xaa, 0x30, 0xac, + 0xa1, 0xad, 0xf1, 0x1c, 0xa2, 0x0d, 0xe2, 0xcb, 0x08, 0xf0, 0xdd, 0x43, + 0x29, 0xd9, 0x50, 0xd0, 0x53, 0x92, 0x09, 0x26, 0x93, 0x1f, 0x67, 0x28, + 0x27, 0x93, 0x1f, 0x8c, +}; +static const struct drbg_kat_no_reseed kat534_t = { + 8, kat534_entropyin, kat534_nonce, kat534_persstr, + kat534_addin0, kat534_addin1, kat534_retbits +}; +static const struct drbg_kat kat534 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat534_t +}; + +static const unsigned char kat535_entropyin[] = { + 0xbe, 0xd9, 0x60, 0xee, 0x26, 0xeb, 0x33, 0xfd, 0xf4, 0xa6, 0x2c, 0xdf, + 0xfd, 0xe8, 0x4e, 0x6d, 0x18, 0x32, 0xc6, 0x91, 0x48, 0xa2, 0xae, 0x5c, + 0xbc, 0x9b, 0xa5, 0x03, 0x63, 0x13, 0xc2, 0xd2, +}; +static const unsigned char kat535_nonce[] = { + 0x53, 0xe0, 0x92, 0xe7, 0x08, 0xe8, 0xb8, 0xa4, 0xa0, 0x36, 0xed, 0x6d, + 0x0c, 0xd1, 0x28, 0x70, +}; +static const unsigned char kat535_persstr[] = { + 0x08, 0x03, 0xf2, 0x8c, 0x79, 0xd5, 0x3f, 0x05, 0x79, 0x53, 0xdb, 0x4a, + 0x1a, 0xb5, 0xa3, 0xca, 0xb5, 0x81, 0xf2, 0xc1, 0x6d, 0x1e, 0x08, 0x3f, + 0x29, 0x48, 0xac, 0xd0, 0xfb, 0xf9, 0xbe, 0xec, +}; +static const unsigned char kat535_addin0[] = { + 0x42, 0x9a, 0x33, 0x10, 0xc1, 0xae, 0x67, 0x31, 0xd4, 0x68, 0xef, 0x6f, + 0x2b, 0x1c, 0x99, 0x49, 0xbb, 0xfc, 0x8d, 0x36, 0xeb, 0x66, 0xfb, 0xee, + 0x0c, 0x86, 0x2e, 0x42, 0x58, 0x6a, 0xac, 0x3f, +}; +static const unsigned char kat535_addin1[] = { + 0xd7, 0xa5, 0xd5, 0x80, 0x04, 0x8d, 0xba, 0x0c, 0xe6, 0x76, 0xb5, 0x04, + 0x7a, 0x98, 0x9e, 0xcc, 0xf3, 0xe4, 0x05, 0x2a, 0x60, 0x28, 0xef, 0xff, + 0x29, 0xe7, 0xcb, 0x0a, 0x13, 0xab, 0x64, 0xce, +}; +static const unsigned char kat535_retbits[] = { + 0x27, 0x03, 0x84, 0x5c, 0xa0, 0x40, 0xff, 0x03, 0x49, 0xb6, 0x6c, 0x1b, + 0xf8, 0x22, 0x6f, 0xf8, 0x9f, 0x27, 0x87, 0x57, 0xba, 0xad, 0xb7, 0x4d, + 0x27, 0x74, 0xfd, 0xb5, 0x4d, 0xf0, 0x17, 0x74, 0xf0, 0x4b, 0xbe, 0x9a, + 0xcd, 0x6b, 0xc8, 0xe8, 0xa1, 0xf2, 0xd9, 0x7a, 0xeb, 0x89, 0x13, 0x03, + 0xa5, 0x33, 0x7b, 0xcd, 0x69, 0xce, 0x4a, 0xfd, 0x4c, 0x6b, 0x62, 0x42, + 0x64, 0x49, 0xdd, 0x63, +}; +static const struct drbg_kat_no_reseed kat535_t = { + 9, kat535_entropyin, kat535_nonce, kat535_persstr, + kat535_addin0, kat535_addin1, kat535_retbits +}; +static const struct drbg_kat kat535 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat535_t +}; + +static const unsigned char kat536_entropyin[] = { + 0x8e, 0x7b, 0x62, 0x75, 0xc4, 0x8f, 0xa6, 0x0a, 0xae, 0x68, 0xbc, 0xd6, + 0xae, 0xde, 0xd1, 0x7f, 0xce, 0xcc, 0xe7, 0x12, 0xba, 0x47, 0xa5, 0xda, + 0x79, 0xdc, 0x88, 0x83, 0xa2, 0xb2, 0xb4, 0x43, +}; +static const unsigned char kat536_nonce[] = { + 0xc1, 0xaa, 0x1c, 0x23, 0x7e, 0x69, 0x85, 0x3d, 0xcf, 0x44, 0xc7, 0x55, + 0x8d, 0xca, 0x07, 0xd8, +}; +static const unsigned char kat536_persstr[] = { + 0xd5, 0x73, 0x7e, 0x7b, 0x1f, 0x4e, 0x53, 0xdd, 0x92, 0x41, 0x51, 0xfd, + 0x71, 0xc5, 0x1a, 0x77, 0xe6, 0x55, 0xf5, 0x17, 0x3c, 0xcd, 0xf0, 0xe9, + 0x73, 0x51, 0x24, 0x1b, 0x57, 0x0e, 0xa4, 0xf0, +}; +static const unsigned char kat536_addin0[] = { + 0xbb, 0x70, 0xb8, 0xdb, 0x19, 0xd3, 0xc1, 0xab, 0xfd, 0x6d, 0x25, 0x13, + 0x65, 0x3f, 0x24, 0x83, 0xbe, 0x43, 0x30, 0x06, 0x7f, 0xf6, 0x6b, 0x8f, + 0xb6, 0x2f, 0xc8, 0xe6, 0x72, 0xdf, 0x96, 0x28, +}; +static const unsigned char kat536_addin1[] = { + 0x00, 0x05, 0xe3, 0x1b, 0x93, 0x34, 0x24, 0x2b, 0xeb, 0x2f, 0x3c, 0xa9, + 0x88, 0x60, 0x3f, 0x5d, 0xcb, 0xa6, 0x85, 0x57, 0x6e, 0xb7, 0x60, 0x78, + 0x1d, 0x9f, 0x47, 0x25, 0x2b, 0xa5, 0xe2, 0x9f, +}; +static const unsigned char kat536_retbits[] = { + 0xe0, 0x30, 0x08, 0x5f, 0x66, 0x79, 0x37, 0xf8, 0x66, 0xe1, 0x3a, 0xd0, + 0x85, 0x4f, 0x24, 0x5b, 0x8f, 0x39, 0x2e, 0x07, 0x01, 0x5e, 0x03, 0x71, + 0xd5, 0xec, 0x72, 0xb9, 0x27, 0x1f, 0xf9, 0xf0, 0x94, 0x6a, 0x6d, 0x44, + 0x69, 0xc7, 0x70, 0x1c, 0x48, 0x5f, 0xa4, 0x9a, 0xd7, 0x9e, 0xf5, 0xdb, + 0xd0, 0xb1, 0x01, 0x0d, 0x58, 0xd6, 0xb1, 0x7d, 0xd4, 0x05, 0x4c, 0x13, + 0x08, 0x15, 0x00, 0x65, +}; +static const struct drbg_kat_no_reseed kat536_t = { + 10, kat536_entropyin, kat536_nonce, kat536_persstr, + kat536_addin0, kat536_addin1, kat536_retbits +}; +static const struct drbg_kat kat536 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat536_t +}; + +static const unsigned char kat537_entropyin[] = { + 0x80, 0xdb, 0x28, 0xc5, 0x45, 0x7f, 0x9b, 0x55, 0x72, 0x39, 0xdb, 0x59, + 0x51, 0xce, 0x1a, 0x29, 0xa5, 0xb8, 0xe4, 0x85, 0x6c, 0x7f, 0x89, 0xd0, + 0x28, 0x58, 0x94, 0x6a, 0x27, 0x8c, 0xb7, 0x05, +}; +static const unsigned char kat537_nonce[] = { + 0x94, 0x14, 0xcf, 0xc5, 0x45, 0x2a, 0xfb, 0xe4, 0xd9, 0x3a, 0xfa, 0xf1, + 0x62, 0x60, 0x4b, 0x0e, +}; +static const unsigned char kat537_persstr[] = { + 0x78, 0x81, 0x6b, 0xa6, 0xd7, 0xb6, 0x3d, 0xc2, 0x01, 0xb5, 0x9c, 0x74, + 0xb1, 0x1d, 0x29, 0x18, 0xb0, 0x58, 0xe7, 0x10, 0x58, 0x28, 0xcf, 0xff, + 0x5d, 0xcc, 0x17, 0x81, 0xcf, 0x1d, 0xfb, 0xe5, +}; +static const unsigned char kat537_addin0[] = { + 0x63, 0x56, 0xdb, 0x39, 0xf5, 0x9e, 0x61, 0xf8, 0x8d, 0xa6, 0x15, 0xa7, + 0x9e, 0x62, 0x17, 0x11, 0x3f, 0x79, 0xa1, 0x7c, 0x17, 0xa9, 0x12, 0x34, + 0x34, 0x12, 0xef, 0xd0, 0x56, 0x8e, 0xc2, 0x33, +}; +static const unsigned char kat537_addin1[] = { + 0x44, 0x8c, 0x62, 0xe9, 0x72, 0xab, 0xf9, 0xc4, 0x0b, 0xf9, 0x18, 0x5d, + 0x42, 0xb3, 0x45, 0xaa, 0x6f, 0xba, 0x9b, 0x98, 0xee, 0xe2, 0x35, 0x3a, + 0x5f, 0xd0, 0x15, 0x97, 0x38, 0x7b, 0x60, 0x96, +}; +static const unsigned char kat537_retbits[] = { + 0xe6, 0x60, 0xe4, 0xe2, 0xb2, 0x42, 0x58, 0x71, 0x31, 0x8c, 0x45, 0x3a, + 0x6b, 0x31, 0x1d, 0x0b, 0xbb, 0x01, 0x85, 0x2b, 0xde, 0x28, 0x0b, 0x0e, + 0x38, 0xd6, 0xc3, 0xd0, 0x7f, 0x4b, 0x8a, 0x9b, 0x3a, 0x4f, 0xd1, 0xa2, + 0x6d, 0x26, 0x3b, 0xb7, 0x57, 0x44, 0x7a, 0xca, 0x15, 0x30, 0xa0, 0x41, + 0xc1, 0x27, 0xa7, 0x7e, 0xe2, 0xe5, 0xed, 0x83, 0x25, 0x9f, 0x64, 0x62, + 0xe1, 0xdb, 0xef, 0x6d, +}; +static const struct drbg_kat_no_reseed kat537_t = { + 11, kat537_entropyin, kat537_nonce, kat537_persstr, + kat537_addin0, kat537_addin1, kat537_retbits +}; +static const struct drbg_kat kat537 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat537_t +}; + +static const unsigned char kat538_entropyin[] = { + 0xac, 0xed, 0xba, 0x21, 0x5c, 0x39, 0x0b, 0xab, 0xcf, 0x0f, 0x1d, 0x46, + 0x19, 0x3c, 0x18, 0x9e, 0x15, 0xc5, 0x80, 0xc1, 0xbf, 0x49, 0x09, 0x65, + 0xbd, 0xee, 0x96, 0x3d, 0x38, 0xfe, 0x97, 0x13, +}; +static const unsigned char kat538_nonce[] = { + 0xbb, 0xa7, 0x79, 0x9f, 0x72, 0x41, 0xe1, 0x26, 0x78, 0x6d, 0x53, 0x34, + 0x16, 0x86, 0x3a, 0x33, +}; +static const unsigned char kat538_persstr[] = { + 0x7b, 0x1e, 0x05, 0x7e, 0xe5, 0x2c, 0xa0, 0xd4, 0x15, 0x3c, 0x1c, 0xe6, + 0x48, 0x28, 0xc8, 0x70, 0x52, 0x30, 0xd1, 0x9f, 0x90, 0x0d, 0x7a, 0x77, + 0x1a, 0xa7, 0x71, 0x82, 0xfc, 0xc7, 0x88, 0x07, +}; +static const unsigned char kat538_addin0[] = { + 0x6c, 0xd1, 0x68, 0x49, 0x88, 0xd7, 0x0d, 0x56, 0x9b, 0x0a, 0xf5, 0x58, + 0x5f, 0xb9, 0xb8, 0xba, 0x69, 0x8b, 0x59, 0x9d, 0xc4, 0xa0, 0xbd, 0x7b, + 0x21, 0x9c, 0x2e, 0x92, 0x01, 0x4a, 0x1e, 0xf4, +}; +static const unsigned char kat538_addin1[] = { + 0x85, 0x7a, 0x8b, 0x64, 0xa8, 0x20, 0xa2, 0x1b, 0xc4, 0x9a, 0x16, 0x3f, + 0x72, 0x17, 0x5f, 0xda, 0x94, 0xa2, 0x87, 0x82, 0x87, 0x86, 0x6c, 0xde, + 0x86, 0x36, 0xd4, 0x6f, 0xba, 0xd9, 0xde, 0x33, +}; +static const unsigned char kat538_retbits[] = { + 0xa3, 0x21, 0xe4, 0x2e, 0xab, 0x68, 0x41, 0x50, 0xfe, 0x55, 0xdb, 0x9e, + 0x1f, 0x4e, 0xfc, 0x9a, 0xb6, 0xbc, 0x94, 0xad, 0xfd, 0x78, 0xb8, 0x7a, + 0x8d, 0x58, 0xeb, 0xd1, 0x1d, 0x20, 0xab, 0x3c, 0xae, 0x9b, 0x0e, 0x1b, + 0xdb, 0x31, 0xf1, 0xec, 0x1c, 0x1d, 0x85, 0xc1, 0xf0, 0x71, 0xac, 0xe6, + 0x39, 0xc0, 0x53, 0xa0, 0x68, 0x2a, 0x07, 0x71, 0x47, 0x31, 0x45, 0x06, + 0xc0, 0x7b, 0xda, 0xad, +}; +static const struct drbg_kat_no_reseed kat538_t = { + 12, kat538_entropyin, kat538_nonce, kat538_persstr, + kat538_addin0, kat538_addin1, kat538_retbits +}; +static const struct drbg_kat kat538 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat538_t +}; + +static const unsigned char kat539_entropyin[] = { + 0x5d, 0xce, 0xd2, 0xaf, 0xdf, 0x72, 0xd2, 0x2d, 0x2b, 0x42, 0x80, 0xe1, + 0x81, 0x18, 0x6e, 0xb3, 0xfc, 0xd5, 0x5c, 0xbe, 0xc0, 0xd4, 0xa0, 0x26, + 0x93, 0x62, 0x62, 0xbd, 0x0f, 0x7d, 0xf6, 0x36, +}; +static const unsigned char kat539_nonce[] = { + 0x07, 0x6c, 0xde, 0x76, 0x2a, 0xc3, 0x9b, 0x18, 0xe4, 0x48, 0x82, 0x6e, + 0xdc, 0xea, 0x42, 0x9c, +}; +static const unsigned char kat539_persstr[] = { + 0xef, 0x7d, 0xb5, 0xdd, 0x64, 0x02, 0x8a, 0x67, 0x45, 0xbf, 0xe0, 0xe5, + 0x7c, 0x83, 0x05, 0xc4, 0x5e, 0xc2, 0x44, 0x38, 0xd9, 0xa6, 0x53, 0x71, + 0xb7, 0xd9, 0x8c, 0x93, 0xab, 0x73, 0x20, 0xcc, +}; +static const unsigned char kat539_addin0[] = { + 0x64, 0x3b, 0xe9, 0x51, 0x2f, 0xb8, 0x23, 0x5a, 0x12, 0xdb, 0x98, 0x11, + 0x11, 0x07, 0x9b, 0x5c, 0x45, 0x36, 0x99, 0xd4, 0x8f, 0x0b, 0x1b, 0xc0, + 0x0d, 0x64, 0x3c, 0xe0, 0xe0, 0x17, 0xdd, 0x04, +}; +static const unsigned char kat539_addin1[] = { + 0xb8, 0x53, 0xe7, 0x9d, 0xdb, 0x46, 0xb2, 0x59, 0x15, 0x89, 0xfe, 0xe4, + 0x3d, 0x3d, 0xd7, 0xad, 0x9e, 0xa1, 0x69, 0x33, 0x2f, 0x83, 0xd4, 0x46, + 0x44, 0xc3, 0x0b, 0x0c, 0xf5, 0xc9, 0x79, 0x2d, +}; +static const unsigned char kat539_retbits[] = { + 0x48, 0x78, 0x78, 0xdc, 0x78, 0xa9, 0xe8, 0x6f, 0x5f, 0xaa, 0x7f, 0x77, + 0x99, 0x76, 0xf3, 0xf0, 0xc2, 0x07, 0xf8, 0xe9, 0xcf, 0xd3, 0x1b, 0xea, + 0x54, 0xbf, 0x12, 0x1c, 0x41, 0x22, 0x7c, 0x86, 0xd7, 0x25, 0x64, 0xc0, + 0xa1, 0xb5, 0x85, 0xe6, 0xf2, 0x84, 0xaa, 0x73, 0x2b, 0x5d, 0xbe, 0xac, + 0x78, 0xab, 0x5c, 0xe1, 0x72, 0xb2, 0x86, 0xf6, 0xdd, 0x2d, 0x7b, 0x97, + 0x63, 0xe7, 0x67, 0x25, +}; +static const struct drbg_kat_no_reseed kat539_t = { + 13, kat539_entropyin, kat539_nonce, kat539_persstr, + kat539_addin0, kat539_addin1, kat539_retbits +}; +static const struct drbg_kat kat539 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat539_t +}; + +static const unsigned char kat540_entropyin[] = { + 0x4d, 0x6d, 0x0d, 0x6c, 0x03, 0x55, 0x28, 0x80, 0xc0, 0xd0, 0xc5, 0x67, + 0xf1, 0x43, 0xe2, 0x97, 0xf7, 0x7d, 0x9a, 0x5e, 0xcb, 0x54, 0x7c, 0x28, + 0xab, 0xcf, 0xf1, 0x71, 0x5b, 0x06, 0x10, 0x84, +}; +static const unsigned char kat540_nonce[] = { + 0x1b, 0x47, 0x76, 0x61, 0x13, 0x28, 0x34, 0xab, 0xcd, 0x71, 0x3b, 0xe2, + 0x27, 0x97, 0x88, 0x20, +}; +static const unsigned char kat540_persstr[] = { + 0x1c, 0x58, 0x44, 0x91, 0xac, 0xb3, 0xf1, 0xa6, 0x2e, 0xcf, 0x84, 0x12, + 0x0e, 0x4c, 0x6a, 0xdb, 0x67, 0x6c, 0x23, 0x3a, 0x16, 0x84, 0xf2, 0xd1, + 0xb8, 0xcd, 0x54, 0x2a, 0x62, 0x9f, 0x6c, 0x84, +}; +static const unsigned char kat540_addin0[] = { + 0xf2, 0x4b, 0x84, 0x67, 0xae, 0x57, 0x66, 0x9e, 0x4a, 0xd6, 0x75, 0x88, + 0xa4, 0x1f, 0x95, 0x12, 0xfd, 0x48, 0x97, 0x66, 0x42, 0xdb, 0x17, 0x37, + 0x12, 0x20, 0x64, 0xa1, 0xc1, 0x23, 0x44, 0x48, +}; +static const unsigned char kat540_addin1[] = { + 0x7a, 0x6f, 0x1a, 0x19, 0x11, 0x17, 0xc2, 0xdc, 0xd5, 0xc9, 0xc1, 0x75, + 0xc8, 0x27, 0xd8, 0xda, 0x04, 0xe3, 0x80, 0x2a, 0xe8, 0x35, 0xb2, 0x51, + 0x82, 0xfa, 0x83, 0xbf, 0x91, 0xdc, 0x68, 0x71, +}; +static const unsigned char kat540_retbits[] = { + 0x1d, 0xce, 0xe0, 0xaf, 0xbf, 0xfb, 0x8a, 0x0c, 0xf4, 0x00, 0x2c, 0xfc, + 0x26, 0x2c, 0x4f, 0xe0, 0x58, 0xd1, 0x3e, 0x35, 0xc7, 0x4c, 0x70, 0xb0, + 0x10, 0x47, 0x6c, 0x71, 0x53, 0x31, 0x3d, 0x71, 0x45, 0xdf, 0x88, 0x9c, + 0x2f, 0x99, 0x1f, 0x8f, 0x97, 0x8f, 0x0d, 0x73, 0xc9, 0x5e, 0x86, 0x7c, + 0x4d, 0x2d, 0xa4, 0xf3, 0xf4, 0xd9, 0x32, 0xd0, 0xb9, 0xa2, 0x3c, 0x78, + 0xe0, 0xf1, 0x12, 0xa5, +}; +static const struct drbg_kat_no_reseed kat540_t = { + 14, kat540_entropyin, kat540_nonce, kat540_persstr, + kat540_addin0, kat540_addin1, kat540_retbits +}; +static const struct drbg_kat kat540 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat540_t +}; + +static const unsigned char kat541_entropyin[] = { + 0x8b, 0x0b, 0xcb, 0x3f, 0x93, 0x21, 0x70, 0x41, 0x67, 0x39, 0xea, 0x42, + 0xe7, 0xdc, 0xdc, 0x6f, 0xa9, 0x60, 0x64, 0x5b, 0xc0, 0x18, 0x82, 0x01, + 0x34, 0xf7, 0x14, 0xb3, 0xc6, 0x91, 0x2b, 0x56, +}; +static const unsigned char kat541_nonce[] = { + 0xba, 0xc0, 0xfd, 0xc0, 0xc4, 0x17, 0xaa, 0x26, 0x9b, 0xbd, 0xea, 0x77, + 0xe9, 0x28, 0xf9, 0xf8, +}; +static const unsigned char kat541_persstr[] = {0}; +static const unsigned char kat541_addin0[] = {0}; +static const unsigned char kat541_addin1[] = {0}; +static const unsigned char kat541_retbits[] = { + 0xd9, 0xc4, 0xfd, 0x81, 0xf6, 0x62, 0x1a, 0x8c, 0xf0, 0x6d, 0x61, 0x2e, + 0x9a, 0x84, 0xb8, 0x0f, 0xa1, 0x3d, 0x09, 0x8d, 0xce, 0xaf, 0x2c, 0x08, + 0x3d, 0xc8, 0x1c, 0xd8, 0x0c, 0xae, 0xdd, 0x10, 0x5c, 0x7f, 0x27, 0x89, + 0x96, 0x3a, 0x16, 0x7d, 0x72, 0xf7, 0x6e, 0x81, 0x17, 0x80, 0x01, 0xfd, + 0x93, 0xde, 0x46, 0x23, 0xc2, 0x60, 0xfe, 0x9e, 0xeb, 0xce, 0xd8, 0x9f, + 0x7b, 0x4b, 0x04, 0x7a, +}; +static const struct drbg_kat_no_reseed kat541_t = { + 0, kat541_entropyin, kat541_nonce, kat541_persstr, + kat541_addin0, kat541_addin1, kat541_retbits +}; +static const struct drbg_kat kat541 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat541_t +}; + +static const unsigned char kat542_entropyin[] = { + 0x67, 0xb6, 0xe8, 0x4d, 0x5a, 0x56, 0x0a, 0xf4, 0xd9, 0x27, 0x45, 0x85, + 0x3d, 0xa8, 0x3c, 0x4e, 0x8d, 0xcf, 0xf4, 0x69, 0x86, 0x9e, 0xca, 0x69, + 0x98, 0x10, 0x55, 0xba, 0x4c, 0x6f, 0x84, 0xc3, +}; +static const unsigned char kat542_nonce[] = { + 0xaa, 0xbc, 0x8d, 0x3a, 0xb5, 0x93, 0xdb, 0xea, 0x35, 0xfa, 0xb1, 0xff, + 0x6c, 0xdc, 0x26, 0xfb, +}; +static const unsigned char kat542_persstr[] = {0}; +static const unsigned char kat542_addin0[] = {0}; +static const unsigned char kat542_addin1[] = {0}; +static const unsigned char kat542_retbits[] = { + 0xe7, 0x4a, 0xd6, 0x22, 0xa7, 0x12, 0x98, 0x98, 0x3a, 0xa2, 0x10, 0x66, + 0xd7, 0x88, 0xfd, 0xcd, 0x6a, 0xfd, 0xc9, 0xaa, 0xf7, 0xfc, 0x8a, 0x55, + 0x53, 0x4e, 0xc0, 0x91, 0x7d, 0x68, 0x40, 0xd1, 0x5c, 0x1b, 0xa2, 0xf0, + 0xa7, 0x03, 0xf0, 0x4b, 0x14, 0x8b, 0xd7, 0xbc, 0x49, 0x83, 0xb2, 0x79, + 0xa4, 0x14, 0xe3, 0x93, 0x7c, 0x17, 0xa8, 0x18, 0x1e, 0x64, 0x4e, 0xa0, + 0x66, 0x2d, 0xbe, 0xbc, +}; +static const struct drbg_kat_no_reseed kat542_t = { + 1, kat542_entropyin, kat542_nonce, kat542_persstr, + kat542_addin0, kat542_addin1, kat542_retbits +}; +static const struct drbg_kat kat542 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat542_t +}; + +static const unsigned char kat543_entropyin[] = { + 0xbe, 0x57, 0xcf, 0x16, 0xb2, 0x64, 0x81, 0xaa, 0xb3, 0x16, 0x4b, 0x80, + 0x60, 0xc2, 0x9f, 0x17, 0x98, 0x27, 0x11, 0xb4, 0x51, 0x18, 0x8d, 0xea, + 0xcd, 0xc9, 0x80, 0x5e, 0xf7, 0xe0, 0x16, 0xbe, +}; +static const unsigned char kat543_nonce[] = { + 0x85, 0x48, 0x4d, 0xaa, 0x20, 0xb8, 0x60, 0x25, 0x07, 0xb3, 0xd7, 0x68, + 0x50, 0x93, 0x9e, 0x59, +}; +static const unsigned char kat543_persstr[] = {0}; +static const unsigned char kat543_addin0[] = {0}; +static const unsigned char kat543_addin1[] = {0}; +static const unsigned char kat543_retbits[] = { + 0x4b, 0x95, 0x46, 0x92, 0x16, 0x03, 0x7d, 0xe3, 0xaf, 0xb2, 0x79, 0x0d, + 0xd1, 0x52, 0x34, 0x73, 0xcb, 0x8d, 0xbd, 0xf7, 0x23, 0x0b, 0x0f, 0x85, + 0x43, 0xf7, 0x38, 0xc6, 0xba, 0xa0, 0xa1, 0xa4, 0x6d, 0x13, 0x36, 0x6f, + 0xe3, 0x16, 0x4f, 0x24, 0x56, 0x76, 0xdf, 0xe1, 0xaf, 0x02, 0x14, 0xc5, + 0x58, 0x1e, 0x82, 0x79, 0x0f, 0xde, 0x30, 0xb0, 0x20, 0x3e, 0x45, 0x54, + 0x80, 0x4b, 0x98, 0x26, +}; +static const struct drbg_kat_no_reseed kat543_t = { + 2, kat543_entropyin, kat543_nonce, kat543_persstr, + kat543_addin0, kat543_addin1, kat543_retbits +}; +static const struct drbg_kat kat543 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat543_t +}; + +static const unsigned char kat544_entropyin[] = { + 0x3c, 0xbb, 0xdc, 0x1b, 0xbb, 0x6f, 0x00, 0x58, 0x97, 0xd6, 0x53, 0x84, + 0xed, 0x79, 0x79, 0xdf, 0x6d, 0x71, 0x08, 0x55, 0x9c, 0x3e, 0x76, 0x19, + 0xd6, 0xdf, 0xc8, 0xda, 0xd8, 0xe6, 0x54, 0x9f, +}; +static const unsigned char kat544_nonce[] = { + 0x7c, 0x9f, 0x78, 0xb7, 0xd1, 0x5e, 0xa7, 0x32, 0x44, 0x12, 0x3f, 0xfd, + 0xb4, 0x48, 0x9f, 0x0d, +}; +static const unsigned char kat544_persstr[] = {0}; +static const unsigned char kat544_addin0[] = {0}; +static const unsigned char kat544_addin1[] = {0}; +static const unsigned char kat544_retbits[] = { + 0xc2, 0x1a, 0xf2, 0x65, 0x18, 0xc9, 0x7d, 0x67, 0x63, 0xb7, 0x53, 0x93, + 0x9a, 0xb0, 0xdf, 0x09, 0xcd, 0x2d, 0x59, 0xfa, 0x10, 0x90, 0x93, 0x3e, + 0x26, 0x41, 0xc9, 0x43, 0x9f, 0x79, 0xfb, 0x3b, 0x90, 0x22, 0xfa, 0x6e, + 0x07, 0xc9, 0x95, 0x0c, 0xe9, 0xea, 0xdc, 0x33, 0x27, 0xdc, 0x49, 0xf9, + 0x1d, 0xc8, 0x00, 0x6c, 0x7d, 0xa5, 0x2b, 0x02, 0x1e, 0x5a, 0xe8, 0x35, + 0x82, 0xf3, 0x04, 0x75, +}; +static const struct drbg_kat_no_reseed kat544_t = { + 3, kat544_entropyin, kat544_nonce, kat544_persstr, + kat544_addin0, kat544_addin1, kat544_retbits +}; +static const struct drbg_kat kat544 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat544_t +}; + +static const unsigned char kat545_entropyin[] = { + 0x06, 0x31, 0x1c, 0xc8, 0x1e, 0x75, 0xb1, 0x22, 0x69, 0xbc, 0x67, 0xed, + 0x0e, 0x13, 0x13, 0x48, 0x0f, 0x32, 0x4b, 0x75, 0x2a, 0x1f, 0xd7, 0x83, + 0xce, 0x09, 0x77, 0x0d, 0x1d, 0x40, 0x00, 0xfb, +}; +static const unsigned char kat545_nonce[] = { + 0xae, 0x2c, 0xc5, 0x17, 0xb2, 0x15, 0x85, 0x5b, 0x1e, 0x91, 0xd1, 0xf7, + 0x94, 0x2d, 0x93, 0x1e, +}; +static const unsigned char kat545_persstr[] = {0}; +static const unsigned char kat545_addin0[] = {0}; +static const unsigned char kat545_addin1[] = {0}; +static const unsigned char kat545_retbits[] = { + 0x5e, 0xd9, 0x14, 0x43, 0x8a, 0x62, 0xcc, 0x4d, 0x46, 0x33, 0x67, 0xb1, + 0x7c, 0x89, 0x60, 0x42, 0x90, 0xe9, 0x72, 0x35, 0x22, 0xef, 0x80, 0x1e, + 0xad, 0x51, 0x5c, 0xa3, 0x52, 0xe0, 0x99, 0xd6, 0xfa, 0x13, 0x62, 0xde, + 0xd3, 0x2a, 0x3f, 0xa3, 0x6b, 0x24, 0x53, 0x42, 0x2f, 0x11, 0x4f, 0x8c, + 0xf2, 0x46, 0xc1, 0x8c, 0x8c, 0xdd, 0x78, 0x6a, 0xa2, 0x43, 0x80, 0x1c, + 0xae, 0xf2, 0xb2, 0xed, +}; +static const struct drbg_kat_no_reseed kat545_t = { + 4, kat545_entropyin, kat545_nonce, kat545_persstr, + kat545_addin0, kat545_addin1, kat545_retbits +}; +static const struct drbg_kat kat545 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat545_t +}; + +static const unsigned char kat546_entropyin[] = { + 0x59, 0x27, 0xad, 0x80, 0xb1, 0x2b, 0x86, 0x26, 0x9e, 0xb3, 0x1e, 0x85, + 0xc3, 0xb1, 0x22, 0xa7, 0xb8, 0x2d, 0x8e, 0xd5, 0x78, 0x22, 0x76, 0x34, + 0x4b, 0xe3, 0xf5, 0x2e, 0xdf, 0x62, 0x80, 0xdb, +}; +static const unsigned char kat546_nonce[] = { + 0xe6, 0x74, 0x0d, 0x37, 0x13, 0xda, 0x61, 0x7b, 0xaa, 0x5a, 0x5c, 0xd5, + 0xb4, 0xd6, 0xbe, 0xd8, +}; +static const unsigned char kat546_persstr[] = {0}; +static const unsigned char kat546_addin0[] = {0}; +static const unsigned char kat546_addin1[] = {0}; +static const unsigned char kat546_retbits[] = { + 0x52, 0xf3, 0x10, 0xec, 0x9a, 0xdc, 0xf4, 0x91, 0xde, 0x58, 0xdc, 0x52, + 0x59, 0x5d, 0xdb, 0xb1, 0xfe, 0xe9, 0x66, 0xe6, 0x9e, 0x60, 0xba, 0x0e, + 0x65, 0xbe, 0xd7, 0xfb, 0xf8, 0xdc, 0x3d, 0x58, 0x14, 0x85, 0x38, 0xa1, + 0xb4, 0x56, 0xae, 0xce, 0x1b, 0x41, 0x47, 0x9d, 0xea, 0x06, 0xe1, 0x01, + 0x5b, 0x7b, 0x10, 0xde, 0xb6, 0x6c, 0x97, 0x74, 0x02, 0x9f, 0x0b, 0x52, + 0xce, 0xb1, 0xf5, 0x8a, +}; +static const struct drbg_kat_no_reseed kat546_t = { + 5, kat546_entropyin, kat546_nonce, kat546_persstr, + kat546_addin0, kat546_addin1, kat546_retbits +}; +static const struct drbg_kat kat546 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat546_t +}; + +static const unsigned char kat547_entropyin[] = { + 0x6e, 0xc1, 0x35, 0x79, 0x2f, 0x27, 0x02, 0x67, 0x72, 0x73, 0x9e, 0x89, + 0x3a, 0xc5, 0x08, 0x52, 0x20, 0x35, 0x1f, 0x59, 0x05, 0x75, 0xfe, 0xb9, + 0xa3, 0xd3, 0x79, 0x2a, 0xc9, 0x13, 0xd8, 0xa4, +}; +static const unsigned char kat547_nonce[] = { + 0xa0, 0x96, 0x9c, 0xdb, 0x40, 0x59, 0x14, 0x36, 0xcb, 0x63, 0x7f, 0xe0, + 0x93, 0x15, 0x6f, 0x16, +}; +static const unsigned char kat547_persstr[] = {0}; +static const unsigned char kat547_addin0[] = {0}; +static const unsigned char kat547_addin1[] = {0}; +static const unsigned char kat547_retbits[] = { + 0x08, 0xd2, 0x73, 0x57, 0x18, 0xf9, 0xc8, 0x82, 0x32, 0x2f, 0xde, 0xf7, + 0xb1, 0x21, 0x33, 0x9d, 0x5a, 0x7f, 0x59, 0xb0, 0x74, 0xd3, 0xc6, 0xf8, + 0xb8, 0xfc, 0x51, 0x7a, 0x07, 0x2d, 0x35, 0x6b, 0xb7, 0x02, 0xd9, 0x0d, + 0xbc, 0xec, 0x40, 0xe0, 0x1c, 0x4d, 0xdb, 0x62, 0x81, 0x38, 0x7e, 0x73, + 0x1b, 0x2b, 0xd0, 0xe7, 0x2a, 0x61, 0x64, 0xef, 0x4a, 0x72, 0x1d, 0xad, + 0x01, 0x02, 0x3b, 0x2a, +}; +static const struct drbg_kat_no_reseed kat547_t = { + 6, kat547_entropyin, kat547_nonce, kat547_persstr, + kat547_addin0, kat547_addin1, kat547_retbits +}; +static const struct drbg_kat kat547 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat547_t +}; + +static const unsigned char kat548_entropyin[] = { + 0xe9, 0xc4, 0x8b, 0xe6, 0xd6, 0x5c, 0x8d, 0xd3, 0xbb, 0x37, 0x22, 0x31, + 0xdf, 0xa8, 0xa7, 0x07, 0x8d, 0xf5, 0x01, 0xa9, 0x23, 0x8d, 0x63, 0x11, + 0x61, 0xce, 0xe3, 0xf0, 0xaf, 0xa9, 0x78, 0x89, +}; +static const unsigned char kat548_nonce[] = { + 0x1d, 0x32, 0xb5, 0xa3, 0x7b, 0xe3, 0xad, 0x60, 0x96, 0xe8, 0x0c, 0x7f, + 0xab, 0xf8, 0xa7, 0x9b, +}; +static const unsigned char kat548_persstr[] = {0}; +static const unsigned char kat548_addin0[] = {0}; +static const unsigned char kat548_addin1[] = {0}; +static const unsigned char kat548_retbits[] = { + 0x02, 0x4f, 0xa9, 0x5b, 0x3c, 0xef, 0x85, 0xdd, 0x9a, 0x22, 0x7c, 0x93, + 0xa8, 0x22, 0x3b, 0x1d, 0x02, 0xd5, 0x7f, 0xd5, 0x06, 0xed, 0x42, 0xa1, + 0x03, 0xf7, 0xee, 0x0d, 0x92, 0x05, 0xca, 0xd9, 0xfc, 0x51, 0xbc, 0xbd, + 0xb7, 0xc4, 0x01, 0xd1, 0x5f, 0xcb, 0x06, 0xe4, 0xa5, 0xed, 0xa1, 0x75, + 0x36, 0xfe, 0x9e, 0x93, 0x81, 0x2e, 0xb9, 0x9a, 0x87, 0x9b, 0x91, 0x06, + 0xca, 0x0b, 0x6d, 0x8d, +}; +static const struct drbg_kat_no_reseed kat548_t = { + 7, kat548_entropyin, kat548_nonce, kat548_persstr, + kat548_addin0, kat548_addin1, kat548_retbits +}; +static const struct drbg_kat kat548 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat548_t +}; + +static const unsigned char kat549_entropyin[] = { + 0x6f, 0x37, 0xbb, 0x62, 0xe2, 0xb3, 0x01, 0xde, 0x8f, 0xf6, 0xc5, 0xa8, + 0x0a, 0xd8, 0x63, 0x4a, 0xc7, 0x18, 0x73, 0x1b, 0xa7, 0x89, 0xb2, 0x47, + 0xc3, 0x50, 0x72, 0x16, 0xf6, 0x4b, 0xae, 0x42, +}; +static const unsigned char kat549_nonce[] = { + 0x41, 0xe5, 0x14, 0x98, 0x0d, 0x2c, 0x79, 0x57, 0x25, 0x84, 0xd0, 0xe6, + 0x0f, 0x20, 0x2c, 0x67, +}; +static const unsigned char kat549_persstr[] = {0}; +static const unsigned char kat549_addin0[] = {0}; +static const unsigned char kat549_addin1[] = {0}; +static const unsigned char kat549_retbits[] = { + 0xc1, 0xad, 0x07, 0x4f, 0xb5, 0x74, 0x8f, 0x09, 0xa3, 0x4b, 0x8f, 0x8b, + 0x8b, 0x15, 0x78, 0x9d, 0x26, 0xa6, 0xaf, 0xf4, 0x71, 0x40, 0x95, 0xc5, + 0x4f, 0x62, 0x61, 0x1d, 0x88, 0xee, 0x2a, 0x45, 0xa4, 0xac, 0x11, 0x10, + 0xa3, 0xe4, 0xec, 0x9d, 0x59, 0xba, 0x85, 0xec, 0x1d, 0x80, 0xda, 0xac, + 0xdd, 0xae, 0x3e, 0xa5, 0x8f, 0x95, 0x39, 0x21, 0x9a, 0xfa, 0xf5, 0x7f, + 0xe9, 0x53, 0x53, 0x6e, +}; +static const struct drbg_kat_no_reseed kat549_t = { + 8, kat549_entropyin, kat549_nonce, kat549_persstr, + kat549_addin0, kat549_addin1, kat549_retbits +}; +static const struct drbg_kat kat549 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat549_t +}; + +static const unsigned char kat550_entropyin[] = { + 0x54, 0x90, 0x2f, 0x1c, 0xe7, 0x88, 0xfd, 0xdb, 0x8d, 0x81, 0x5a, 0x80, + 0xe5, 0xb0, 0x2d, 0xa3, 0x6a, 0xe0, 0x9f, 0xe2, 0xce, 0xcb, 0x6c, 0xad, + 0x76, 0x6b, 0x75, 0x72, 0x38, 0xa0, 0x95, 0x46, +}; +static const unsigned char kat550_nonce[] = { + 0x52, 0xfc, 0x08, 0x26, 0x5f, 0x84, 0xbb, 0x3b, 0x2f, 0x5d, 0xab, 0x01, + 0xeb, 0x8a, 0xde, 0x3c, +}; +static const unsigned char kat550_persstr[] = {0}; +static const unsigned char kat550_addin0[] = {0}; +static const unsigned char kat550_addin1[] = {0}; +static const unsigned char kat550_retbits[] = { + 0x0d, 0x11, 0x4d, 0x27, 0xd1, 0xc4, 0xae, 0x86, 0x18, 0x6c, 0x31, 0x3e, + 0x4f, 0x1b, 0xfb, 0x00, 0x2d, 0xe3, 0xf2, 0xa8, 0x27, 0xb7, 0x15, 0x39, + 0x41, 0xf9, 0x0f, 0x99, 0x4b, 0x56, 0xc8, 0xc2, 0x66, 0x81, 0x6c, 0xc6, + 0x9e, 0x10, 0x72, 0xa2, 0xb3, 0xbe, 0x19, 0xc2, 0x9f, 0x80, 0xab, 0x3d, + 0x03, 0x9e, 0xd5, 0x72, 0x2f, 0xed, 0xcc, 0x01, 0x6f, 0xa8, 0x2b, 0x39, + 0x61, 0x78, 0x28, 0x58, +}; +static const struct drbg_kat_no_reseed kat550_t = { + 9, kat550_entropyin, kat550_nonce, kat550_persstr, + kat550_addin0, kat550_addin1, kat550_retbits +}; +static const struct drbg_kat kat550 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat550_t +}; + +static const unsigned char kat551_entropyin[] = { + 0xfe, 0x55, 0xe2, 0xf9, 0x6b, 0x16, 0xd2, 0xdd, 0x91, 0x5c, 0xa1, 0x1e, + 0x25, 0x04, 0xd7, 0x20, 0xf1, 0xaa, 0x19, 0x18, 0x63, 0x1c, 0x47, 0x2c, + 0xb0, 0xb4, 0x49, 0x9b, 0x7d, 0x88, 0x6b, 0x56, +}; +static const unsigned char kat551_nonce[] = { + 0x85, 0x30, 0xfc, 0x3e, 0xba, 0x5a, 0x01, 0xb7, 0x63, 0x08, 0x9e, 0x80, + 0x43, 0xdf, 0xdf, 0x79, +}; +static const unsigned char kat551_persstr[] = {0}; +static const unsigned char kat551_addin0[] = {0}; +static const unsigned char kat551_addin1[] = {0}; +static const unsigned char kat551_retbits[] = { + 0xbe, 0x3e, 0x72, 0xb3, 0xaa, 0x0b, 0x07, 0xd0, 0x75, 0x66, 0x45, 0xa5, + 0xf5, 0xa7, 0x4a, 0xa6, 0xa0, 0x15, 0xb7, 0xce, 0xa6, 0x85, 0x81, 0xfc, + 0x8e, 0xd7, 0x62, 0x66, 0x0d, 0x9e, 0x54, 0xa7, 0x81, 0x0e, 0x71, 0x2d, + 0x81, 0x98, 0x8e, 0xa7, 0x06, 0xad, 0x2b, 0x93, 0x8e, 0x33, 0x65, 0x1a, + 0x3e, 0x8a, 0x67, 0x55, 0xd5, 0x92, 0xf5, 0x21, 0x7f, 0xf2, 0xc9, 0xea, + 0x8f, 0x41, 0xa5, 0xc4, +}; +static const struct drbg_kat_no_reseed kat551_t = { + 10, kat551_entropyin, kat551_nonce, kat551_persstr, + kat551_addin0, kat551_addin1, kat551_retbits +}; +static const struct drbg_kat kat551 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat551_t +}; + +static const unsigned char kat552_entropyin[] = { + 0xf5, 0xfc, 0x14, 0x97, 0x1b, 0x96, 0x6a, 0x4f, 0x95, 0xbb, 0x13, 0xd5, + 0x5a, 0x68, 0x2b, 0xfd, 0xc7, 0xda, 0x7f, 0x26, 0xc9, 0x43, 0xdb, 0x40, + 0x1a, 0x17, 0x9f, 0x23, 0xf4, 0x7e, 0xc3, 0xbe, +}; +static const unsigned char kat552_nonce[] = { + 0xf0, 0x51, 0xee, 0xba, 0xbc, 0xe3, 0x59, 0x90, 0x21, 0xc3, 0x64, 0x81, + 0x1b, 0x11, 0xf2, 0x8b, +}; +static const unsigned char kat552_persstr[] = {0}; +static const unsigned char kat552_addin0[] = {0}; +static const unsigned char kat552_addin1[] = {0}; +static const unsigned char kat552_retbits[] = { + 0x9e, 0x18, 0x4c, 0x66, 0x83, 0x4d, 0x73, 0xb4, 0x61, 0x0e, 0x53, 0x62, + 0xcd, 0xf9, 0x08, 0xa5, 0xf8, 0x49, 0x39, 0xec, 0xf0, 0x1a, 0x58, 0xeb, + 0xe6, 0xc2, 0xdc, 0x50, 0xca, 0x0c, 0x24, 0xbe, 0xd9, 0x94, 0xa8, 0x2e, + 0xec, 0x99, 0x8e, 0x18, 0xaf, 0xb9, 0x57, 0x27, 0xc4, 0x27, 0x86, 0xf5, + 0xe9, 0x4d, 0x60, 0xc6, 0x06, 0x57, 0x6a, 0xf8, 0x3f, 0x3b, 0x33, 0x52, + 0x79, 0xa1, 0x01, 0x4d, +}; +static const struct drbg_kat_no_reseed kat552_t = { + 11, kat552_entropyin, kat552_nonce, kat552_persstr, + kat552_addin0, kat552_addin1, kat552_retbits +}; +static const struct drbg_kat kat552 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat552_t +}; + +static const unsigned char kat553_entropyin[] = { + 0x26, 0xe6, 0xf4, 0x4b, 0x11, 0x2f, 0x52, 0x40, 0xf0, 0xe2, 0x24, 0x9c, + 0x2a, 0xa4, 0xd5, 0xdf, 0x3d, 0xf0, 0x94, 0x31, 0x29, 0x6f, 0xee, 0xad, + 0x01, 0xcf, 0x65, 0x9c, 0x62, 0xde, 0x50, 0x07, +}; +static const unsigned char kat553_nonce[] = { + 0x8c, 0xaa, 0x8a, 0x24, 0xc2, 0x8a, 0x17, 0xcf, 0xb6, 0x86, 0x13, 0xe2, + 0xfb, 0x3b, 0xf3, 0x7e, +}; +static const unsigned char kat553_persstr[] = {0}; +static const unsigned char kat553_addin0[] = {0}; +static const unsigned char kat553_addin1[] = {0}; +static const unsigned char kat553_retbits[] = { + 0x91, 0xa3, 0xad, 0x60, 0xda, 0x8a, 0x72, 0xd7, 0x04, 0x05, 0xa1, 0xba, + 0x81, 0x9e, 0xcb, 0x14, 0x7f, 0x33, 0x88, 0x68, 0xa4, 0x16, 0x68, 0xdb, + 0x59, 0xff, 0xfb, 0x03, 0x11, 0xa8, 0x34, 0x4a, 0xe0, 0xea, 0x58, 0xd9, + 0x7b, 0x6d, 0x3c, 0x31, 0x64, 0x90, 0xb5, 0xc6, 0x23, 0x65, 0x3e, 0x81, + 0x6c, 0xc1, 0xb9, 0x1d, 0x5f, 0xcd, 0x9b, 0x4d, 0x70, 0xe7, 0x71, 0x7d, + 0x6e, 0xe2, 0xb7, 0x02, +}; +static const struct drbg_kat_no_reseed kat553_t = { + 12, kat553_entropyin, kat553_nonce, kat553_persstr, + kat553_addin0, kat553_addin1, kat553_retbits +}; +static const struct drbg_kat kat553 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat553_t +}; + +static const unsigned char kat554_entropyin[] = { + 0xf2, 0x91, 0xd7, 0xe5, 0xc2, 0x96, 0x13, 0x13, 0x18, 0x4f, 0x80, 0x23, + 0x27, 0x7b, 0x8f, 0xac, 0x09, 0xa5, 0x43, 0xa2, 0x68, 0xee, 0x50, 0x6a, + 0x53, 0x41, 0x70, 0x67, 0xa8, 0xcc, 0x12, 0xb6, +}; +static const unsigned char kat554_nonce[] = { + 0x55, 0x24, 0x3c, 0xc5, 0x46, 0x0e, 0x24, 0xbf, 0x0c, 0x2f, 0x92, 0xc0, + 0xcf, 0xb2, 0x3e, 0xb6, +}; +static const unsigned char kat554_persstr[] = {0}; +static const unsigned char kat554_addin0[] = {0}; +static const unsigned char kat554_addin1[] = {0}; +static const unsigned char kat554_retbits[] = { + 0x80, 0x9d, 0x31, 0xa2, 0xa2, 0x6c, 0x94, 0x0b, 0x3f, 0x04, 0x5f, 0x16, + 0xb8, 0x59, 0xf2, 0x70, 0x8f, 0xd9, 0x19, 0x6a, 0x39, 0x83, 0x51, 0x41, + 0x04, 0xd8, 0x0f, 0x1f, 0x68, 0x16, 0x6a, 0xf0, 0xe4, 0x8b, 0x98, 0x27, + 0x1b, 0x76, 0xa2, 0x67, 0xea, 0x1e, 0x05, 0x25, 0x0a, 0x3f, 0x7f, 0x25, + 0x81, 0xc1, 0xd6, 0x35, 0x67, 0x08, 0xc2, 0x93, 0xf2, 0x08, 0x94, 0x4b, + 0x3d, 0xa0, 0xa4, 0x25, +}; +static const struct drbg_kat_no_reseed kat554_t = { + 13, kat554_entropyin, kat554_nonce, kat554_persstr, + kat554_addin0, kat554_addin1, kat554_retbits +}; +static const struct drbg_kat kat554 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat554_t +}; + +static const unsigned char kat555_entropyin[] = { + 0x8b, 0x08, 0x78, 0xd7, 0x33, 0xc8, 0xa4, 0x8a, 0x79, 0xfa, 0x67, 0x4d, + 0xfa, 0x88, 0x9b, 0x34, 0xfd, 0x05, 0x22, 0x01, 0x6d, 0x2f, 0x68, 0xfd, + 0xdd, 0x3d, 0xd0, 0x5f, 0x1a, 0xf7, 0x85, 0x06, +}; +static const unsigned char kat555_nonce[] = { + 0xf7, 0x72, 0x49, 0x63, 0x34, 0xfd, 0x93, 0xb4, 0x66, 0x47, 0x29, 0x7a, + 0xc4, 0x44, 0x62, 0x9c, +}; +static const unsigned char kat555_persstr[] = {0}; +static const unsigned char kat555_addin0[] = {0}; +static const unsigned char kat555_addin1[] = {0}; +static const unsigned char kat555_retbits[] = { + 0x91, 0x91, 0xc5, 0x97, 0x0a, 0x37, 0xfd, 0xd5, 0x71, 0x5a, 0x7c, 0x6a, + 0x09, 0xa7, 0xdd, 0xdb, 0xfb, 0xee, 0x8d, 0x37, 0xee, 0x45, 0xa0, 0x35, + 0xb3, 0x38, 0x23, 0xc6, 0xe8, 0x6f, 0xe0, 0xe2, 0xe2, 0xe5, 0x7f, 0xf7, + 0xd0, 0x8e, 0x0a, 0x4f, 0x39, 0xd8, 0x1c, 0x18, 0xb9, 0xb5, 0xfd, 0x48, + 0x7e, 0x84, 0xca, 0x95, 0xdf, 0x37, 0x2d, 0x36, 0xdc, 0xbf, 0xac, 0x68, + 0x2e, 0x04, 0x4b, 0x34, +}; +static const struct drbg_kat_no_reseed kat555_t = { + 14, kat555_entropyin, kat555_nonce, kat555_persstr, + kat555_addin0, kat555_addin1, kat555_retbits +}; +static const struct drbg_kat kat555 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat555_t +}; + +static const unsigned char kat556_entropyin[] = { + 0xd6, 0x74, 0x39, 0xab, 0xf1, 0xe1, 0x62, 0xe5, 0xb2, 0x59, 0x41, 0x60, + 0x5a, 0x8a, 0xeb, 0xa7, 0xd6, 0x86, 0xde, 0xc1, 0x33, 0x25, 0x7f, 0x6c, + 0x22, 0x0e, 0x1c, 0x59, 0x5e, 0x95, 0x4a, 0x07, +}; +static const unsigned char kat556_nonce[] = { + 0x69, 0xff, 0x33, 0x10, 0x14, 0x1d, 0xbf, 0x3e, 0xce, 0x40, 0x9a, 0xde, + 0x58, 0x74, 0x51, 0x13, +}; +static const unsigned char kat556_persstr[] = {0}; +static const unsigned char kat556_addin0[] = { + 0x03, 0xe7, 0x95, 0xbe, 0x83, 0x79, 0xc4, 0x81, 0xcb, 0x32, 0x53, 0x40, + 0x11, 0xca, 0x6b, 0xf5, 0x24, 0xdc, 0x75, 0x49, 0x78, 0xee, 0x5e, 0xbe, + 0xe4, 0x75, 0x12, 0x9a, 0xd3, 0x9e, 0xca, 0x98, +}; +static const unsigned char kat556_addin1[] = { + 0x56, 0x85, 0xc7, 0x33, 0x0f, 0x33, 0x00, 0x45, 0x15, 0xf8, 0xc0, 0xab, + 0x27, 0xf2, 0xa1, 0xcb, 0xe0, 0xc8, 0xa4, 0xa6, 0x80, 0x6d, 0x6c, 0x84, + 0x86, 0xe0, 0x21, 0x7b, 0x43, 0xe8, 0x59, 0xf2, +}; +static const unsigned char kat556_retbits[] = { + 0xa6, 0xd2, 0x2a, 0x43, 0x70, 0x25, 0x1c, 0x51, 0x97, 0x8f, 0xed, 0xc7, + 0xe7, 0x75, 0x3c, 0x78, 0x17, 0x9e, 0xd1, 0x94, 0x3d, 0x2f, 0xf1, 0xb5, + 0xa3, 0x74, 0x86, 0x01, 0x06, 0x04, 0x1a, 0x30, 0x4b, 0x12, 0x4d, 0x47, + 0xcf, 0xa3, 0x04, 0xc9, 0x09, 0xf7, 0xd4, 0x17, 0x84, 0x38, 0x46, 0xd5, + 0x2d, 0xcc, 0x7e, 0xbc, 0xf5, 0xc9, 0x3a, 0xfe, 0xf8, 0x85, 0xc8, 0x93, + 0xb4, 0x0c, 0x81, 0xed, +}; +static const struct drbg_kat_no_reseed kat556_t = { + 0, kat556_entropyin, kat556_nonce, kat556_persstr, + kat556_addin0, kat556_addin1, kat556_retbits +}; +static const struct drbg_kat kat556 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat556_t +}; + +static const unsigned char kat557_entropyin[] = { + 0x8f, 0x7c, 0x8c, 0xd0, 0xbc, 0xdf, 0xcc, 0xe6, 0x61, 0x4c, 0xc6, 0x51, + 0x1d, 0x51, 0x95, 0xad, 0xe6, 0xda, 0xd5, 0xf6, 0x1f, 0xef, 0x59, 0x88, + 0x6f, 0x24, 0x02, 0x12, 0x2e, 0x43, 0x0a, 0x8d, +}; +static const unsigned char kat557_nonce[] = { + 0x17, 0xd1, 0x41, 0x2b, 0x83, 0x44, 0x59, 0x9a, 0x39, 0xb9, 0x60, 0x76, + 0x1c, 0x6a, 0xc3, 0x9f, +}; +static const unsigned char kat557_persstr[] = {0}; +static const unsigned char kat557_addin0[] = { + 0xe5, 0x39, 0x59, 0x3c, 0xfc, 0xc7, 0x9e, 0xbd, 0x0a, 0x5e, 0x7b, 0xe3, + 0x24, 0x3e, 0x51, 0xa7, 0x7b, 0xf3, 0x81, 0x76, 0x90, 0xb2, 0xff, 0xc8, + 0x0c, 0xe5, 0xdc, 0x35, 0xf2, 0xb2, 0xd4, 0xb8, +}; +static const unsigned char kat557_addin1[] = { + 0xe6, 0xa2, 0x4e, 0x9f, 0x76, 0x24, 0xaf, 0xb3, 0xa5, 0x5d, 0x99, 0x74, + 0xf8, 0xcb, 0x1a, 0xdd, 0xc4, 0x43, 0x2f, 0xdf, 0xea, 0xc7, 0xc3, 0x5a, + 0x61, 0x61, 0x11, 0x58, 0x1c, 0xd1, 0x9b, 0x2f, +}; +static const unsigned char kat557_retbits[] = { + 0x5f, 0xc2, 0x07, 0x36, 0xda, 0x9c, 0xf5, 0xa8, 0x10, 0x36, 0x4b, 0x6a, + 0xca, 0x24, 0xed, 0xf7, 0x58, 0xbd, 0x20, 0xeb, 0xd3, 0x31, 0x73, 0xdb, + 0x87, 0x4b, 0x64, 0x1b, 0x84, 0x70, 0xab, 0x9a, 0x8a, 0x63, 0x3d, 0x12, + 0x38, 0xba, 0x99, 0x01, 0x03, 0x95, 0x6c, 0x0f, 0x5e, 0x2b, 0x28, 0x4f, + 0x3b, 0x47, 0x3c, 0x28, 0xd0, 0x05, 0x5d, 0x7e, 0x9b, 0xec, 0x0b, 0x83, + 0x90, 0x88, 0x91, 0x7a, +}; +static const struct drbg_kat_no_reseed kat557_t = { + 1, kat557_entropyin, kat557_nonce, kat557_persstr, + kat557_addin0, kat557_addin1, kat557_retbits +}; +static const struct drbg_kat kat557 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat557_t +}; + +static const unsigned char kat558_entropyin[] = { + 0xd3, 0x00, 0x5b, 0x86, 0x84, 0x6d, 0x8b, 0x45, 0x9e, 0xd9, 0x10, 0x52, + 0x18, 0xa1, 0x78, 0x7c, 0x1d, 0x80, 0x01, 0x20, 0x53, 0xca, 0xa3, 0x8a, + 0xde, 0x19, 0x6b, 0xff, 0x82, 0x73, 0xc8, 0x93, +}; +static const unsigned char kat558_nonce[] = { + 0x3a, 0x68, 0x9f, 0x93, 0x0c, 0xd4, 0xc5, 0x38, 0x62, 0xc6, 0x81, 0x91, + 0xb5, 0xad, 0xbf, 0x14, +}; +static const unsigned char kat558_persstr[] = {0}; +static const unsigned char kat558_addin0[] = { + 0x70, 0xc4, 0xbb, 0xeb, 0x4f, 0x7f, 0x52, 0x7d, 0xf7, 0xe0, 0xad, 0x69, + 0x85, 0x1b, 0x66, 0x40, 0x8b, 0x21, 0x54, 0xe7, 0xa2, 0x6f, 0xa5, 0x42, + 0xd9, 0x2f, 0x0e, 0x5b, 0x1a, 0x96, 0x95, 0x75, +}; +static const unsigned char kat558_addin1[] = { + 0x86, 0x05, 0x72, 0xf8, 0x81, 0xd5, 0xa9, 0x7c, 0xd7, 0xc9, 0xc8, 0xee, + 0x39, 0xe4, 0xfe, 0xfb, 0x67, 0xb9, 0x14, 0x7d, 0x37, 0xfe, 0xa5, 0xa6, + 0x4f, 0x58, 0xcd, 0x2e, 0x7a, 0xb6, 0x83, 0x84, +}; +static const unsigned char kat558_retbits[] = { + 0x4d, 0x8b, 0x57, 0x8e, 0x27, 0xad, 0x27, 0xde, 0x26, 0x4c, 0x63, 0xc3, + 0xd2, 0xf8, 0x71, 0x3d, 0x58, 0x02, 0x2c, 0x54, 0x14, 0x99, 0x33, 0x51, + 0x10, 0xa2, 0x80, 0x99, 0x0b, 0xb0, 0xb3, 0xd3, 0x8a, 0x13, 0x94, 0x3c, + 0xfa, 0xbb, 0x7a, 0x6b, 0xfd, 0xc2, 0xdb, 0x2c, 0x05, 0x09, 0x09, 0x89, + 0x89, 0xe1, 0x31, 0xc8, 0x9a, 0x76, 0x22, 0x23, 0x5b, 0x76, 0x9e, 0xcc, + 0x2c, 0x50, 0x9d, 0xd4, +}; +static const struct drbg_kat_no_reseed kat558_t = { + 2, kat558_entropyin, kat558_nonce, kat558_persstr, + kat558_addin0, kat558_addin1, kat558_retbits +}; +static const struct drbg_kat kat558 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat558_t +}; + +static const unsigned char kat559_entropyin[] = { + 0x0b, 0x99, 0x25, 0xbf, 0xf6, 0x8f, 0x29, 0x84, 0x3c, 0x8a, 0x05, 0xc6, + 0x95, 0xde, 0x37, 0x8b, 0x37, 0x0e, 0x8d, 0xc9, 0xa6, 0xdd, 0xe3, 0x3f, + 0xe8, 0x61, 0x52, 0xfa, 0x58, 0x7a, 0xf1, 0xf1, +}; +static const unsigned char kat559_nonce[] = { + 0xb4, 0x38, 0x5b, 0x66, 0x09, 0x6b, 0x2d, 0x2d, 0x0d, 0xac, 0x68, 0x9d, + 0x04, 0x3c, 0x60, 0x91, +}; +static const unsigned char kat559_persstr[] = {0}; +static const unsigned char kat559_addin0[] = { + 0xb8, 0x0b, 0xd9, 0x34, 0xcc, 0x3e, 0x73, 0xea, 0x85, 0xac, 0x4a, 0x7f, + 0xb5, 0x19, 0x0d, 0x1f, 0xa2, 0x98, 0x8d, 0x29, 0xaf, 0xb3, 0xa3, 0x08, + 0xc9, 0x22, 0x05, 0xc0, 0xb7, 0x45, 0xb0, 0x70, +}; +static const unsigned char kat559_addin1[] = { + 0x4d, 0xaf, 0xcb, 0x75, 0x28, 0x23, 0x20, 0x34, 0xd2, 0x61, 0x70, 0x63, + 0x61, 0xcc, 0x87, 0x67, 0x18, 0x75, 0xee, 0x67, 0xac, 0xe9, 0x6c, 0xad, + 0x09, 0x9b, 0x12, 0x66, 0xa7, 0x5c, 0xb7, 0x28, +}; +static const unsigned char kat559_retbits[] = { + 0x5b, 0x56, 0x1f, 0x9f, 0xa2, 0x60, 0x2b, 0x55, 0x3b, 0xc3, 0xd4, 0xc9, + 0x00, 0x1f, 0x8b, 0x4d, 0x98, 0x59, 0x1c, 0x8d, 0x81, 0x33, 0x66, 0xa7, + 0x92, 0x06, 0xeb, 0x3d, 0x7e, 0x92, 0xb4, 0x1c, 0x34, 0xae, 0xf3, 0x23, + 0x80, 0xd7, 0x9d, 0x4f, 0x7d, 0xf6, 0x73, 0x56, 0x96, 0xf1, 0x47, 0xce, + 0x56, 0x90, 0xc3, 0xc5, 0x67, 0x6d, 0xfd, 0xd2, 0x0a, 0xee, 0x3b, 0x4f, + 0xc9, 0x55, 0x9e, 0x17, +}; +static const struct drbg_kat_no_reseed kat559_t = { + 3, kat559_entropyin, kat559_nonce, kat559_persstr, + kat559_addin0, kat559_addin1, kat559_retbits +}; +static const struct drbg_kat kat559 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat559_t +}; + +static const unsigned char kat560_entropyin[] = { + 0xb7, 0xc3, 0x22, 0xf8, 0x12, 0xcd, 0xd3, 0xc1, 0x86, 0xdc, 0x9d, 0xd5, + 0x89, 0xf8, 0x7d, 0x46, 0x9f, 0x64, 0xe5, 0xed, 0x80, 0xa0, 0x4e, 0x41, + 0x44, 0x18, 0xe2, 0x64, 0x00, 0x86, 0x48, 0xc1, +}; +static const unsigned char kat560_nonce[] = { + 0x8b, 0x66, 0x9f, 0xc0, 0xe3, 0xac, 0xb7, 0x94, 0x90, 0x41, 0x00, 0x5a, + 0x27, 0xfc, 0x14, 0x45, +}; +static const unsigned char kat560_persstr[] = {0}; +static const unsigned char kat560_addin0[] = { + 0xde, 0x10, 0x1f, 0xca, 0xf1, 0xc3, 0xbf, 0x36, 0x8e, 0x70, 0x40, 0xd3, + 0x9d, 0x57, 0x66, 0x5c, 0x83, 0x5c, 0x40, 0x92, 0x7c, 0xa8, 0x63, 0xd7, + 0x0f, 0x74, 0x34, 0x1c, 0x1a, 0x11, 0x3b, 0x68, +}; +static const unsigned char kat560_addin1[] = { + 0x7f, 0xed, 0xdb, 0x0e, 0x87, 0x86, 0x4d, 0x35, 0x87, 0x94, 0x66, 0xda, + 0xc2, 0x32, 0xeb, 0x86, 0xfa, 0xc0, 0xc4, 0xfd, 0x74, 0x58, 0x51, 0x26, + 0x1a, 0x63, 0x55, 0xd3, 0x6e, 0x01, 0x80, 0x05, +}; +static const unsigned char kat560_retbits[] = { + 0xf7, 0x91, 0x66, 0xbc, 0x53, 0xf7, 0x3b, 0xdf, 0x87, 0x3d, 0x76, 0xba, + 0x81, 0xe1, 0xeb, 0x62, 0x97, 0x03, 0x27, 0xc8, 0xe6, 0xfa, 0xc1, 0x0d, + 0xc2, 0x36, 0x67, 0xb9, 0xda, 0x74, 0xec, 0x58, 0x30, 0xf5, 0x50, 0x25, + 0xd9, 0x52, 0xea, 0xac, 0x65, 0xdd, 0x3b, 0x52, 0xc1, 0x51, 0x7c, 0x79, + 0xb0, 0x55, 0x9a, 0x39, 0xc5, 0x4d, 0x30, 0xc9, 0x7c, 0xce, 0x83, 0x2c, + 0x1b, 0xdd, 0xe4, 0xf2, +}; +static const struct drbg_kat_no_reseed kat560_t = { + 4, kat560_entropyin, kat560_nonce, kat560_persstr, + kat560_addin0, kat560_addin1, kat560_retbits +}; +static const struct drbg_kat kat560 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat560_t +}; + +static const unsigned char kat561_entropyin[] = { + 0xda, 0xba, 0x89, 0xb6, 0x2a, 0x44, 0x75, 0xe8, 0xc2, 0x21, 0x40, 0x52, + 0xd2, 0x04, 0xc1, 0xff, 0xd2, 0x48, 0xe0, 0xc3, 0x00, 0x8a, 0x0b, 0xd1, + 0x23, 0x83, 0x0d, 0xb5, 0x02, 0x3e, 0x53, 0xc2, +}; +static const unsigned char kat561_nonce[] = { + 0x77, 0xfc, 0x74, 0x10, 0x14, 0xe5, 0x14, 0x24, 0x30, 0x58, 0xd3, 0xa2, + 0xcf, 0x03, 0x63, 0x74, +}; +static const unsigned char kat561_persstr[] = {0}; +static const unsigned char kat561_addin0[] = { + 0xaa, 0x93, 0x2a, 0x71, 0xbb, 0xbd, 0x86, 0xb3, 0xf3, 0xa7, 0x02, 0xfa, + 0x38, 0x4d, 0x49, 0x06, 0x1f, 0x31, 0xc2, 0x5e, 0x80, 0x9d, 0xd9, 0xa0, + 0x30, 0x34, 0xac, 0x3c, 0xdf, 0x6b, 0x2e, 0xf2, +}; +static const unsigned char kat561_addin1[] = { + 0x92, 0x62, 0xca, 0xaf, 0xb3, 0x38, 0x3f, 0xaf, 0x78, 0xd9, 0xb0, 0x44, + 0x0f, 0x0c, 0x5b, 0xe2, 0x8e, 0x26, 0x0f, 0x3d, 0xb7, 0x77, 0x28, 0xd7, + 0xfc, 0xa6, 0x79, 0x98, 0x4c, 0xc3, 0x8d, 0xdf, +}; +static const unsigned char kat561_retbits[] = { + 0x78, 0x4c, 0x8d, 0x58, 0x81, 0x34, 0x9a, 0x13, 0xbc, 0x1a, 0x38, 0xed, + 0xac, 0x6e, 0x8f, 0xe7, 0xdc, 0x3a, 0x3b, 0x66, 0x2b, 0x40, 0xb7, 0x40, + 0xeb, 0xe8, 0xc8, 0x9d, 0x14, 0x4c, 0xca, 0xb3, 0x19, 0xb4, 0xcd, 0x90, + 0x82, 0x0d, 0xd3, 0xf5, 0xec, 0xc3, 0x10, 0x0c, 0x9f, 0x72, 0x87, 0x8d, + 0x5e, 0xeb, 0x21, 0xf4, 0x62, 0x34, 0xf4, 0x09, 0x4b, 0x71, 0xb8, 0xb3, + 0x42, 0x85, 0xc5, 0x50, +}; +static const struct drbg_kat_no_reseed kat561_t = { + 5, kat561_entropyin, kat561_nonce, kat561_persstr, + kat561_addin0, kat561_addin1, kat561_retbits +}; +static const struct drbg_kat kat561 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat561_t +}; + +static const unsigned char kat562_entropyin[] = { + 0x8f, 0x7c, 0x64, 0x0c, 0xa1, 0x5c, 0x75, 0x84, 0x04, 0x46, 0xd4, 0x42, + 0xf4, 0x13, 0xbb, 0xfe, 0xaf, 0xb4, 0xc2, 0xb8, 0x87, 0x5f, 0x7f, 0x1b, + 0xfd, 0x16, 0x12, 0x2b, 0x81, 0xe1, 0xac, 0x1f, +}; +static const unsigned char kat562_nonce[] = { + 0x69, 0x60, 0x13, 0xa4, 0xc7, 0xe7, 0xc7, 0x24, 0xa4, 0x07, 0x23, 0xb5, + 0x55, 0x7b, 0x00, 0x56, +}; +static const unsigned char kat562_persstr[] = {0}; +static const unsigned char kat562_addin0[] = { + 0xb7, 0xd2, 0x57, 0x70, 0xe0, 0xb2, 0xbd, 0x1b, 0x6a, 0x82, 0x20, 0xf8, + 0x6b, 0x3d, 0x75, 0x9d, 0x20, 0xd8, 0x50, 0x89, 0x80, 0xcf, 0x59, 0x1f, + 0x44, 0x3d, 0xde, 0x3a, 0xcd, 0x3e, 0xf6, 0x48, +}; +static const unsigned char kat562_addin1[] = { + 0xbc, 0x08, 0xf8, 0x46, 0x21, 0xaf, 0xb6, 0xa7, 0xd3, 0x31, 0xa0, 0x1b, + 0xfc, 0x57, 0x16, 0xa3, 0x1b, 0xcc, 0xcf, 0x05, 0xa7, 0x8e, 0x69, 0x6d, + 0xc7, 0x68, 0x9b, 0x98, 0x53, 0x89, 0xe1, 0x2b, +}; +static const unsigned char kat562_retbits[] = { + 0xd4, 0x86, 0xcb, 0xac, 0x79, 0x4e, 0xc9, 0xc6, 0xb2, 0xac, 0xc6, 0xaa, + 0xdb, 0x93, 0xe3, 0x2b, 0x30, 0xb2, 0x7e, 0xa3, 0x72, 0x1f, 0xb6, 0x14, + 0xe8, 0x23, 0x47, 0xef, 0xf4, 0x61, 0x64, 0x9c, 0xb8, 0xd0, 0xf6, 0xb4, + 0x3a, 0x39, 0xb2, 0xe5, 0xf6, 0xf4, 0x03, 0xff, 0x4a, 0xfe, 0xfd, 0x90, + 0xad, 0xba, 0x5e, 0x96, 0x16, 0x4a, 0xc7, 0x3b, 0x27, 0xd8, 0xae, 0x20, + 0x98, 0xe6, 0x32, 0xcb, +}; +static const struct drbg_kat_no_reseed kat562_t = { + 6, kat562_entropyin, kat562_nonce, kat562_persstr, + kat562_addin0, kat562_addin1, kat562_retbits +}; +static const struct drbg_kat kat562 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat562_t +}; + +static const unsigned char kat563_entropyin[] = { + 0xb8, 0xbe, 0xd1, 0x95, 0x21, 0xf6, 0xd2, 0x47, 0x1b, 0x76, 0x14, 0x37, + 0xf1, 0x0c, 0x9d, 0xb9, 0xaf, 0x2a, 0xc3, 0x03, 0x21, 0x27, 0xdc, 0x5e, + 0xb3, 0x8e, 0x15, 0x71, 0x82, 0xe2, 0xe2, 0x5e, +}; +static const unsigned char kat563_nonce[] = { + 0xe0, 0x0b, 0x1b, 0x87, 0x12, 0xb2, 0x19, 0xb7, 0x84, 0x44, 0xa3, 0xfc, + 0xab, 0xdd, 0x0f, 0x68, +}; +static const unsigned char kat563_persstr[] = {0}; +static const unsigned char kat563_addin0[] = { + 0xed, 0x74, 0x4e, 0x78, 0x61, 0x75, 0x9e, 0x33, 0x7e, 0x0d, 0x8d, 0xb5, + 0xed, 0xa6, 0xf6, 0x6c, 0xb1, 0x42, 0x40, 0xd1, 0xff, 0x7a, 0x86, 0xf9, + 0x0c, 0x96, 0xdf, 0xa2, 0xf4, 0xce, 0x85, 0xf9, +}; +static const unsigned char kat563_addin1[] = { + 0x90, 0xf3, 0xb8, 0x92, 0x0d, 0xbd, 0xbd, 0x8f, 0xf6, 0xc6, 0x60, 0x1b, + 0x57, 0xa5, 0xfc, 0x90, 0xaa, 0x13, 0xbb, 0xa9, 0x88, 0x43, 0xdc, 0x51, + 0x43, 0xc0, 0x18, 0x2d, 0xdc, 0x23, 0x1d, 0xfb, +}; +static const unsigned char kat563_retbits[] = { + 0x33, 0x10, 0xbe, 0x30, 0x08, 0x80, 0x29, 0xe1, 0x35, 0x24, 0xea, 0x9e, + 0x8d, 0x6b, 0xd9, 0xef, 0xaa, 0x72, 0xd1, 0xc5, 0x8d, 0x4f, 0x9d, 0x7e, + 0x98, 0x53, 0x50, 0x8b, 0xa1, 0x63, 0xb9, 0x06, 0xc4, 0x58, 0x02, 0x0b, + 0xe3, 0xcb, 0x7c, 0x5f, 0x3a, 0x2f, 0xa8, 0x89, 0x53, 0xf1, 0x27, 0xe7, + 0xe1, 0x17, 0xc1, 0xf3, 0x89, 0x47, 0xa6, 0x68, 0x0b, 0x53, 0xd2, 0x8d, + 0x56, 0x5a, 0x3d, 0xdf, +}; +static const struct drbg_kat_no_reseed kat563_t = { + 7, kat563_entropyin, kat563_nonce, kat563_persstr, + kat563_addin0, kat563_addin1, kat563_retbits +}; +static const struct drbg_kat kat563 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat563_t +}; + +static const unsigned char kat564_entropyin[] = { + 0x01, 0x42, 0x76, 0xad, 0x54, 0x57, 0x97, 0x88, 0xdf, 0xda, 0xf1, 0x2f, + 0x2d, 0xf1, 0x88, 0xff, 0xef, 0xab, 0xd3, 0x51, 0x64, 0xf3, 0x1c, 0xc8, + 0x73, 0xc6, 0xd3, 0x91, 0x49, 0x6e, 0x09, 0xee, +}; +static const unsigned char kat564_nonce[] = { + 0x46, 0x62, 0xec, 0x7d, 0x07, 0xbf, 0x4f, 0xf1, 0x0b, 0xcd, 0x0c, 0x83, + 0x41, 0x06, 0xe1, 0x79, +}; +static const unsigned char kat564_persstr[] = {0}; +static const unsigned char kat564_addin0[] = { + 0xe6, 0x6f, 0x96, 0x0f, 0x9a, 0x89, 0x3d, 0x39, 0xd1, 0x1c, 0x04, 0x26, + 0xbc, 0x9e, 0x7e, 0x1f, 0x6f, 0x07, 0x50, 0x55, 0x7a, 0x69, 0x69, 0xe4, + 0x45, 0xce, 0xbb, 0x47, 0xd2, 0xf5, 0xd4, 0x27, +}; +static const unsigned char kat564_addin1[] = { + 0x6b, 0x39, 0xf4, 0x5b, 0xbb, 0x78, 0x5c, 0xa9, 0xec, 0x23, 0x30, 0x3f, + 0xbc, 0xe7, 0x09, 0x3a, 0x26, 0xfb, 0x87, 0x9b, 0x13, 0xfa, 0xdd, 0x92, + 0x7d, 0xc9, 0x50, 0x19, 0xb8, 0xa2, 0x5c, 0xb5, +}; +static const unsigned char kat564_retbits[] = { + 0xdd, 0xa5, 0x11, 0x8a, 0xe2, 0x34, 0xe6, 0xae, 0xb5, 0xcf, 0x63, 0x4e, + 0x57, 0xa3, 0xa3, 0xce, 0x76, 0x81, 0xbd, 0x80, 0x36, 0x90, 0xf8, 0xd6, + 0x88, 0x86, 0xba, 0x52, 0x26, 0xfb, 0x40, 0x18, 0x26, 0x44, 0xa6, 0x43, + 0xa5, 0x54, 0xcc, 0x58, 0x6d, 0x9c, 0xcd, 0x14, 0x8a, 0x75, 0x24, 0x01, + 0x42, 0xcd, 0x8f, 0x62, 0xeb, 0xe8, 0x74, 0x7b, 0x4b, 0xe6, 0xe7, 0x53, + 0x23, 0x58, 0x20, 0x06, +}; +static const struct drbg_kat_no_reseed kat564_t = { + 8, kat564_entropyin, kat564_nonce, kat564_persstr, + kat564_addin0, kat564_addin1, kat564_retbits +}; +static const struct drbg_kat kat564 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat564_t +}; + +static const unsigned char kat565_entropyin[] = { + 0xcf, 0xfc, 0xfb, 0xed, 0xb3, 0x5f, 0xf5, 0xbf, 0x3c, 0x79, 0x6d, 0x1a, + 0xb9, 0x4a, 0x8a, 0xe1, 0xb9, 0x35, 0xad, 0xdf, 0x6f, 0xdd, 0x8b, 0xe0, + 0x00, 0xae, 0x30, 0x99, 0xda, 0xea, 0x7b, 0xd4, +}; +static const unsigned char kat565_nonce[] = { + 0x1f, 0x7e, 0xc8, 0x65, 0x8f, 0x17, 0xe6, 0x4d, 0x1e, 0xd1, 0xb4, 0x98, + 0x15, 0xef, 0x9b, 0xef, +}; +static const unsigned char kat565_persstr[] = {0}; +static const unsigned char kat565_addin0[] = { + 0x8d, 0x44, 0xea, 0xe3, 0x90, 0x8e, 0x4a, 0xd5, 0x3f, 0xc0, 0xfa, 0xb4, + 0x17, 0x99, 0xbb, 0x03, 0x56, 0xb3, 0xdd, 0xd4, 0x73, 0xfd, 0xe4, 0x29, + 0xaf, 0x21, 0xd7, 0xe0, 0x4b, 0x42, 0x6b, 0x80, +}; +static const unsigned char kat565_addin1[] = { + 0x9e, 0x3f, 0x82, 0x8e, 0x8d, 0xdf, 0x07, 0xce, 0xb5, 0x8f, 0xe8, 0xf1, + 0x69, 0x7d, 0xae, 0xc6, 0x66, 0xb9, 0xe2, 0x50, 0xfa, 0x5a, 0x83, 0x6f, + 0xfd, 0x18, 0xee, 0x17, 0x36, 0x50, 0xe7, 0x2c, +}; +static const unsigned char kat565_retbits[] = { + 0x10, 0x01, 0x62, 0xaa, 0x41, 0x80, 0xc5, 0xe5, 0xa1, 0x8c, 0x51, 0xbf, + 0x7d, 0x2b, 0x78, 0xca, 0x94, 0x4c, 0x70, 0xe6, 0x2b, 0xde, 0xa5, 0x54, + 0x83, 0x7a, 0x86, 0x81, 0x35, 0xcc, 0xbe, 0x1b, 0x79, 0xbe, 0xbd, 0xfa, + 0xe4, 0x09, 0x22, 0x1f, 0x43, 0x8d, 0xf7, 0x28, 0x33, 0xb8, 0xdd, 0x9d, + 0x17, 0xdc, 0xbe, 0x06, 0xef, 0x8d, 0x19, 0x01, 0x01, 0x27, 0x31, 0xc7, + 0xbe, 0x12, 0xfc, 0x53, +}; +static const struct drbg_kat_no_reseed kat565_t = { + 9, kat565_entropyin, kat565_nonce, kat565_persstr, + kat565_addin0, kat565_addin1, kat565_retbits +}; +static const struct drbg_kat kat565 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat565_t +}; + +static const unsigned char kat566_entropyin[] = { + 0xdb, 0x31, 0xef, 0x9d, 0xd1, 0x26, 0x6c, 0x60, 0xea, 0xaf, 0xbe, 0xca, + 0x54, 0x2f, 0x52, 0xb4, 0xfd, 0x98, 0x9b, 0x4b, 0x43, 0x69, 0x35, 0xea, + 0x65, 0xeb, 0xc6, 0x25, 0x54, 0xbe, 0x96, 0x2c, +}; +static const unsigned char kat566_nonce[] = { + 0xd0, 0x3a, 0x8b, 0xa0, 0x34, 0x85, 0x2b, 0x4f, 0x96, 0x25, 0x0b, 0xdd, + 0x89, 0xf3, 0x68, 0x02, +}; +static const unsigned char kat566_persstr[] = {0}; +static const unsigned char kat566_addin0[] = { + 0x62, 0xeb, 0xe7, 0x71, 0x5a, 0x7d, 0xdc, 0x82, 0x0e, 0x44, 0xab, 0x31, + 0x37, 0x67, 0x77, 0x6f, 0x87, 0x85, 0xb1, 0x81, 0x42, 0x6f, 0xbf, 0x49, + 0x3e, 0x7c, 0xbc, 0xce, 0x13, 0x60, 0xfd, 0x23, +}; +static const unsigned char kat566_addin1[] = { + 0x05, 0x28, 0xb6, 0x90, 0x41, 0xc4, 0xe5, 0xea, 0xda, 0xb6, 0x18, 0xa9, + 0x29, 0xf1, 0x76, 0xf7, 0x7c, 0x34, 0x5b, 0x6d, 0x89, 0xae, 0xe9, 0xaa, + 0x95, 0x5c, 0x5a, 0x8c, 0xa8, 0xfc, 0x8b, 0x92, +}; +static const unsigned char kat566_retbits[] = { + 0x01, 0x7c, 0xf4, 0xff, 0x68, 0x6d, 0xf4, 0xc0, 0x6f, 0xbb, 0xc0, 0xbe, + 0x97, 0x89, 0xb8, 0x28, 0xf1, 0x5b, 0xe5, 0x4a, 0xaf, 0xba, 0x72, 0x87, + 0xb4, 0x39, 0x1e, 0x9e, 0xc7, 0xb7, 0xd0, 0x02, 0x5d, 0xb0, 0x12, 0xdf, + 0x4b, 0xb3, 0x5c, 0x74, 0x06, 0x16, 0x77, 0x20, 0x7a, 0x7d, 0x7a, 0x06, + 0x1e, 0xf1, 0x23, 0x89, 0x3e, 0xa4, 0xd7, 0xc8, 0x22, 0x0e, 0xca, 0xca, + 0xd5, 0x68, 0x48, 0xb1, +}; +static const struct drbg_kat_no_reseed kat566_t = { + 10, kat566_entropyin, kat566_nonce, kat566_persstr, + kat566_addin0, kat566_addin1, kat566_retbits +}; +static const struct drbg_kat kat566 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat566_t +}; + +static const unsigned char kat567_entropyin[] = { + 0x06, 0xb2, 0x6d, 0x4f, 0xfa, 0xb4, 0xa8, 0x61, 0x14, 0x14, 0xc8, 0xfd, + 0xe8, 0x7e, 0x51, 0x69, 0x2f, 0xfe, 0x50, 0x78, 0x83, 0x4b, 0x51, 0x98, + 0x19, 0x3d, 0xf7, 0xf9, 0x8f, 0x1c, 0x52, 0x61, +}; +static const unsigned char kat567_nonce[] = { + 0xde, 0x49, 0xf9, 0xfa, 0xba, 0xea, 0x3f, 0x8d, 0xd1, 0xec, 0x58, 0x1c, + 0x71, 0xd5, 0xc1, 0xda, +}; +static const unsigned char kat567_persstr[] = {0}; +static const unsigned char kat567_addin0[] = { + 0x6b, 0xba, 0x85, 0xa3, 0xf3, 0x93, 0x86, 0x5a, 0x6a, 0x7b, 0x73, 0x39, + 0x16, 0xc2, 0x8a, 0xe3, 0x9b, 0xa4, 0x03, 0xa0, 0x34, 0x8a, 0x2d, 0x3b, + 0x7a, 0x33, 0xfd, 0xf8, 0x19, 0x57, 0x1b, 0xf9, +}; +static const unsigned char kat567_addin1[] = { + 0xc3, 0x2f, 0xd2, 0x84, 0xc4, 0x3a, 0xa0, 0x72, 0xeb, 0x72, 0xa7, 0xe4, + 0x7f, 0x40, 0x8a, 0x87, 0x7a, 0xe4, 0x0e, 0x12, 0x09, 0xd1, 0x12, 0xc9, + 0x9d, 0x45, 0x7e, 0x7f, 0x96, 0x53, 0xcb, 0x86, +}; +static const unsigned char kat567_retbits[] = { + 0x1f, 0x0f, 0x54, 0x04, 0xf5, 0x1d, 0x48, 0xc3, 0xf3, 0x62, 0x3b, 0x93, + 0x84, 0x32, 0xf7, 0xdd, 0x42, 0x49, 0x64, 0x9f, 0x61, 0xb6, 0xf1, 0x03, + 0xc2, 0xfd, 0x8b, 0x30, 0xdb, 0xf5, 0xb4, 0xea, 0x95, 0x7b, 0x5d, 0xe0, + 0x96, 0xac, 0x47, 0xcb, 0x10, 0x7e, 0x52, 0x2d, 0xf0, 0x13, 0x80, 0x76, + 0x34, 0x2d, 0x6c, 0x2e, 0xa0, 0x8e, 0xcc, 0x2b, 0x48, 0x1c, 0x3e, 0x73, + 0xef, 0x48, 0xa0, 0x46, +}; +static const struct drbg_kat_no_reseed kat567_t = { + 11, kat567_entropyin, kat567_nonce, kat567_persstr, + kat567_addin0, kat567_addin1, kat567_retbits +}; +static const struct drbg_kat kat567 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat567_t +}; + +static const unsigned char kat568_entropyin[] = { + 0x21, 0xbe, 0x14, 0x42, 0xe6, 0x89, 0x53, 0xaf, 0x26, 0x56, 0xec, 0x3a, + 0xdb, 0xa3, 0xa6, 0x5a, 0x7b, 0x45, 0x9b, 0x7a, 0xb4, 0xe7, 0x9c, 0x77, + 0x5a, 0xd2, 0x54, 0x4c, 0xe9, 0xa4, 0xf8, 0xb5, +}; +static const unsigned char kat568_nonce[] = { + 0xb6, 0x22, 0x1e, 0x28, 0x2e, 0x81, 0xf3, 0x10, 0xa6, 0xa2, 0xef, 0xba, + 0x73, 0xb0, 0x49, 0x0b, +}; +static const unsigned char kat568_persstr[] = {0}; +static const unsigned char kat568_addin0[] = { + 0xf2, 0x76, 0xb8, 0xae, 0x6e, 0xa4, 0xd9, 0x9b, 0x27, 0xee, 0x89, 0x19, + 0x35, 0x30, 0x0f, 0x30, 0x9a, 0x7e, 0x6f, 0x15, 0x4f, 0x5a, 0xc6, 0xee, + 0x27, 0x38, 0x83, 0xca, 0x53, 0x57, 0xba, 0x6f, +}; +static const unsigned char kat568_addin1[] = { + 0x93, 0x26, 0x8a, 0x42, 0x42, 0x6c, 0xc3, 0x10, 0xee, 0x18, 0x76, 0x7d, + 0x96, 0x63, 0x26, 0x9f, 0x5e, 0x1c, 0x46, 0xb9, 0x6c, 0x6b, 0x17, 0xb2, + 0xf8, 0xbd, 0x6e, 0xce, 0xc3, 0x43, 0x5e, 0x42, +}; +static const unsigned char kat568_retbits[] = { + 0x45, 0xe8, 0x5e, 0xe0, 0x30, 0x0a, 0x94, 0x62, 0x01, 0x6c, 0x4b, 0x7d, + 0x4b, 0x16, 0x19, 0xc7, 0x6d, 0x4a, 0xa9, 0x42, 0x2b, 0x5c, 0x45, 0xcf, + 0xac, 0xad, 0xae, 0x24, 0xb9, 0x34, 0xba, 0x19, 0x0f, 0x76, 0xa8, 0xa4, + 0x55, 0x1a, 0x23, 0xe8, 0xe1, 0x44, 0x73, 0xde, 0xd8, 0xf7, 0x9b, 0xdf, + 0x91, 0xb4, 0xfe, 0x0c, 0xe1, 0x63, 0x92, 0x8a, 0xf2, 0xc1, 0xea, 0xdf, + 0xc9, 0x6d, 0x30, 0x1c, +}; +static const struct drbg_kat_no_reseed kat568_t = { + 12, kat568_entropyin, kat568_nonce, kat568_persstr, + kat568_addin0, kat568_addin1, kat568_retbits +}; +static const struct drbg_kat kat568 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat568_t +}; + +static const unsigned char kat569_entropyin[] = { + 0xdf, 0xf8, 0xc1, 0x4a, 0x61, 0x19, 0x28, 0x12, 0x76, 0xe7, 0x1c, 0x91, + 0xd6, 0x6d, 0x97, 0xe2, 0x9a, 0x14, 0x1e, 0x06, 0x53, 0x7e, 0xaf, 0x6c, + 0x2f, 0xeb, 0xd8, 0x23, 0x49, 0x3b, 0x7e, 0x3f, +}; +static const unsigned char kat569_nonce[] = { + 0x1e, 0x98, 0x17, 0x4e, 0xdb, 0x22, 0x8d, 0x55, 0xcd, 0x4f, 0x58, 0x04, + 0x27, 0xac, 0xb3, 0x7a, +}; +static const unsigned char kat569_persstr[] = {0}; +static const unsigned char kat569_addin0[] = { + 0xf1, 0x7f, 0x9d, 0xdc, 0x60, 0xc6, 0x3f, 0xa8, 0x04, 0x36, 0x04, 0x1e, + 0x5a, 0x21, 0x19, 0x7e, 0x5e, 0x37, 0x8e, 0xcf, 0x70, 0xc7, 0xee, 0x39, + 0x2b, 0xd6, 0xf8, 0x92, 0x9d, 0xf1, 0xee, 0xef, +}; +static const unsigned char kat569_addin1[] = { + 0x13, 0x90, 0xbb, 0x27, 0x69, 0x29, 0x27, 0x2a, 0x99, 0x42, 0xf2, 0x94, + 0xd5, 0xcb, 0x64, 0xd6, 0x32, 0x2c, 0x1c, 0xdc, 0x9a, 0x6f, 0x87, 0xf1, + 0xbd, 0x4e, 0x9a, 0xd7, 0xba, 0x6d, 0x82, 0x9c, +}; +static const unsigned char kat569_retbits[] = { + 0xc1, 0xad, 0xc5, 0x14, 0x5d, 0xb9, 0xb5, 0xeb, 0x35, 0x92, 0x0a, 0x94, + 0xb7, 0x63, 0x2e, 0x50, 0x30, 0xe7, 0xfa, 0x38, 0x10, 0x30, 0x01, 0x17, + 0xa9, 0x36, 0xb8, 0x87, 0xb8, 0xbb, 0xfb, 0x0c, 0x51, 0x16, 0x9e, 0x70, + 0xf2, 0x6c, 0x0b, 0xf8, 0x79, 0x83, 0x85, 0xbc, 0xcd, 0xd7, 0xbe, 0x4f, + 0x7c, 0x53, 0xb3, 0xbb, 0xf9, 0x7a, 0x65, 0xb1, 0x6c, 0xcf, 0xfc, 0xb1, + 0xd5, 0x2e, 0xbd, 0x14, +}; +static const struct drbg_kat_no_reseed kat569_t = { + 13, kat569_entropyin, kat569_nonce, kat569_persstr, + kat569_addin0, kat569_addin1, kat569_retbits +}; +static const struct drbg_kat kat569 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat569_t +}; + +static const unsigned char kat570_entropyin[] = { + 0xe8, 0xd1, 0xca, 0x5d, 0xba, 0xec, 0x67, 0x47, 0x22, 0x36, 0x9d, 0x32, + 0x21, 0xa3, 0xdc, 0xf2, 0x68, 0x1f, 0xb3, 0x70, 0x06, 0x1e, 0x48, 0x88, + 0x27, 0xa0, 0x07, 0x90, 0xab, 0xbb, 0x40, 0x80, +}; +static const unsigned char kat570_nonce[] = { + 0xe5, 0xe6, 0x14, 0x4b, 0xda, 0x93, 0x75, 0x29, 0x89, 0xc5, 0x4a, 0x70, + 0x20, 0x81, 0xaf, 0x08, +}; +static const unsigned char kat570_persstr[] = {0}; +static const unsigned char kat570_addin0[] = { + 0x9e, 0xba, 0x53, 0xd0, 0xab, 0xbc, 0xdf, 0xb9, 0x84, 0x39, 0xce, 0xc3, + 0x2a, 0x14, 0xdc, 0x79, 0x24, 0x4a, 0xc3, 0x61, 0x6a, 0x71, 0xda, 0xfe, + 0xb7, 0x17, 0x5b, 0x71, 0xf9, 0x82, 0xe2, 0x14, +}; +static const unsigned char kat570_addin1[] = { + 0x76, 0xe4, 0xae, 0xfb, 0xb6, 0x88, 0x96, 0x41, 0x1b, 0xd7, 0x93, 0x66, + 0x7e, 0x0e, 0x3b, 0xb3, 0xde, 0xd8, 0x37, 0xd3, 0xa2, 0xbb, 0x37, 0x0d, + 0x94, 0x4c, 0x20, 0xe5, 0xbf, 0x03, 0xe6, 0xd1, +}; +static const unsigned char kat570_retbits[] = { + 0x6f, 0x6b, 0xed, 0x60, 0x5b, 0xc0, 0x41, 0x9e, 0x36, 0x7a, 0x42, 0x04, + 0x85, 0x85, 0xcb, 0x10, 0x54, 0x0d, 0x3a, 0x03, 0x5f, 0xc9, 0x90, 0x5f, + 0xa0, 0x04, 0x72, 0x9f, 0xef, 0xea, 0x46, 0x71, 0xef, 0x17, 0xaa, 0xc2, + 0xcc, 0x2c, 0x96, 0x4f, 0x35, 0xe7, 0x40, 0x98, 0x8e, 0x63, 0x6d, 0x8d, + 0x25, 0x11, 0x7c, 0x95, 0x3d, 0x0a, 0xf6, 0xa1, 0x99, 0x06, 0x7a, 0xd3, + 0x9a, 0xa6, 0x16, 0x63, +}; +static const struct drbg_kat_no_reseed kat570_t = { + 14, kat570_entropyin, kat570_nonce, kat570_persstr, + kat570_addin0, kat570_addin1, kat570_retbits +}; +static const struct drbg_kat kat570 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat570_t +}; + +static const unsigned char kat571_entropyin[] = { + 0x87, 0x82, 0xd5, 0x16, 0xab, 0x2e, 0x07, 0x20, 0x81, 0x6d, 0x31, 0xe8, + 0x41, 0xc4, 0x97, 0x65, 0x83, 0xf5, 0xf2, 0x35, 0x6d, 0x4a, 0x6b, 0x75, + 0xba, 0xa0, 0xc8, 0x54, 0xd8, 0x1e, 0x87, 0xdf, +}; +static const unsigned char kat571_nonce[] = { + 0xd3, 0xa0, 0xdf, 0x6e, 0x41, 0x0c, 0xba, 0x3a, 0xf8, 0x2b, 0x2e, 0x91, + 0x4e, 0x52, 0xb1, 0x9a, +}; +static const unsigned char kat571_persstr[] = { + 0x94, 0x60, 0xe6, 0x67, 0x3c, 0x94, 0xac, 0x44, 0xf8, 0x12, 0x67, 0x3c, + 0x25, 0xb8, 0x90, 0x54, 0x56, 0xc3, 0x2f, 0xa7, 0xa8, 0x8d, 0x01, 0x9c, + 0x9b, 0x9a, 0xf0, 0xe9, 0xe6, 0xdf, 0xde, 0x32, +}; +static const unsigned char kat571_addin0[] = {0}; +static const unsigned char kat571_addin1[] = {0}; +static const unsigned char kat571_retbits[] = { + 0x73, 0xbe, 0x5a, 0xca, 0x78, 0x6c, 0x4d, 0x20, 0x01, 0xf0, 0x26, 0xa4, + 0x8f, 0xc3, 0x2e, 0x0d, 0x5b, 0x9c, 0x43, 0xf5, 0x58, 0x15, 0x89, 0x80, + 0x9f, 0x10, 0x3c, 0xf9, 0x1f, 0xdc, 0x33, 0xaa, 0x00, 0x07, 0x03, 0xc5, + 0xb9, 0xa7, 0x39, 0x1c, 0x4c, 0x75, 0x12, 0x6b, 0xa0, 0x0f, 0x9f, 0x9c, + 0xf3, 0x68, 0xb0, 0xf9, 0x2a, 0x72, 0x90, 0x5e, 0xc1, 0x1f, 0x67, 0x02, + 0x44, 0xd0, 0x2e, 0x33, +}; +static const struct drbg_kat_no_reseed kat571_t = { + 0, kat571_entropyin, kat571_nonce, kat571_persstr, + kat571_addin0, kat571_addin1, kat571_retbits +}; +static const struct drbg_kat kat571 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat571_t +}; + +static const unsigned char kat572_entropyin[] = { + 0xa3, 0xa0, 0x58, 0xec, 0x8f, 0x49, 0x63, 0xe3, 0xe4, 0xa5, 0xe7, 0xae, + 0xad, 0xea, 0xd4, 0x8e, 0x48, 0xa1, 0x30, 0xf0, 0x4a, 0xe6, 0x78, 0x5c, + 0x18, 0x4d, 0x76, 0xff, 0x8c, 0x78, 0x13, 0x4e, +}; +static const unsigned char kat572_nonce[] = { + 0xca, 0x4f, 0xf0, 0xc8, 0xc0, 0x5d, 0xb6, 0xd7, 0x66, 0xf3, 0x56, 0x21, + 0x6c, 0x3b, 0x5f, 0xb4, +}; +static const unsigned char kat572_persstr[] = { + 0xcf, 0x95, 0x33, 0x8c, 0xe6, 0x92, 0x72, 0x32, 0x4c, 0x75, 0x17, 0x59, + 0x56, 0x6e, 0x99, 0xeb, 0x9a, 0x2a, 0x61, 0x8c, 0xed, 0xee, 0xa9, 0x77, + 0xc3, 0x60, 0xa3, 0x5b, 0xe7, 0xdb, 0x80, 0x7c, +}; +static const unsigned char kat572_addin0[] = {0}; +static const unsigned char kat572_addin1[] = {0}; +static const unsigned char kat572_retbits[] = { + 0xf5, 0x93, 0xfe, 0xcd, 0xec, 0xfd, 0x70, 0xd9, 0xf7, 0xcc, 0x09, 0x3b, + 0x4c, 0xf0, 0x50, 0x2f, 0x17, 0x8c, 0x99, 0x97, 0xce, 0x7f, 0x3b, 0x95, + 0xcb, 0xaf, 0xba, 0xf6, 0xe5, 0x75, 0x63, 0x7d, 0x34, 0x4e, 0x2c, 0x9b, + 0x7e, 0xbc, 0xb9, 0xed, 0x60, 0x48, 0x65, 0x06, 0x39, 0xea, 0x48, 0xd3, + 0x21, 0xc6, 0x26, 0x08, 0x6b, 0x28, 0x00, 0x2d, 0x86, 0x3c, 0xaf, 0xed, + 0xe0, 0x91, 0xe7, 0xe5, +}; +static const struct drbg_kat_no_reseed kat572_t = { + 1, kat572_entropyin, kat572_nonce, kat572_persstr, + kat572_addin0, kat572_addin1, kat572_retbits +}; +static const struct drbg_kat kat572 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat572_t +}; + +static const unsigned char kat573_entropyin[] = { + 0x91, 0xf7, 0x4d, 0x6c, 0x79, 0x8f, 0x6e, 0x18, 0x42, 0xe3, 0x6a, 0xa6, + 0x10, 0x19, 0x68, 0x2e, 0x24, 0x6a, 0x2e, 0xec, 0x04, 0xaa, 0xc8, 0xf7, + 0xc5, 0xe8, 0x49, 0xdb, 0xd6, 0xfa, 0x67, 0x7d, +}; +static const unsigned char kat573_nonce[] = { + 0x80, 0x07, 0x23, 0x00, 0x8b, 0x74, 0x43, 0x51, 0x97, 0x9a, 0xe8, 0x5d, + 0x92, 0xfd, 0x21, 0x7f, +}; +static const unsigned char kat573_persstr[] = { + 0xc9, 0xb3, 0x8f, 0x9b, 0x98, 0xb7, 0xa0, 0x04, 0x3b, 0x13, 0xd1, 0x92, + 0x6c, 0x27, 0x26, 0x55, 0x21, 0xf0, 0x13, 0x16, 0xe8, 0xfe, 0x79, 0xd2, + 0xef, 0xa8, 0xb8, 0x17, 0xb2, 0x3a, 0xaf, 0xc5, +}; +static const unsigned char kat573_addin0[] = {0}; +static const unsigned char kat573_addin1[] = {0}; +static const unsigned char kat573_retbits[] = { + 0x5a, 0x63, 0x77, 0x02, 0x30, 0xa4, 0xa0, 0x48, 0x64, 0x5c, 0xe1, 0xa7, + 0x5e, 0x50, 0xea, 0x79, 0x2c, 0x21, 0x96, 0x34, 0x56, 0x5f, 0x24, 0xec, + 0x52, 0xfa, 0xe6, 0x04, 0x65, 0x06, 0xc5, 0xb0, 0x52, 0x9a, 0x79, 0x8c, + 0x6b, 0xb7, 0x16, 0x19, 0xa2, 0x4b, 0xbd, 0x71, 0xf9, 0x03, 0x35, 0xe9, + 0x3c, 0x41, 0xde, 0x3f, 0xd0, 0xfd, 0x1f, 0x3e, 0xe3, 0x20, 0x4b, 0x9c, + 0x60, 0x64, 0xb7, 0x35, +}; +static const struct drbg_kat_no_reseed kat573_t = { + 2, kat573_entropyin, kat573_nonce, kat573_persstr, + kat573_addin0, kat573_addin1, kat573_retbits +}; +static const struct drbg_kat kat573 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat573_t +}; + +static const unsigned char kat574_entropyin[] = { + 0xaa, 0x40, 0xfd, 0x98, 0xee, 0xa7, 0x52, 0xb7, 0x31, 0x54, 0x5a, 0x6b, + 0x93, 0x86, 0xb2, 0xff, 0x35, 0x6e, 0xf7, 0xd9, 0xce, 0x88, 0xda, 0xa2, + 0x21, 0x9a, 0x5c, 0x5f, 0xe5, 0x71, 0x09, 0xc8, +}; +static const unsigned char kat574_nonce[] = { + 0x11, 0x0a, 0xcd, 0xc8, 0x6c, 0x06, 0xed, 0xcf, 0x8d, 0x61, 0x2a, 0x4f, + 0x2d, 0xf6, 0xea, 0x72, +}; +static const unsigned char kat574_persstr[] = { + 0xf1, 0x7a, 0x8e, 0x0d, 0x46, 0x0e, 0x75, 0x87, 0x47, 0xc4, 0x61, 0x78, + 0x2a, 0xee, 0x6d, 0xad, 0x4a, 0x2e, 0xa8, 0xcc, 0x26, 0xc3, 0x3b, 0x34, + 0xe7, 0x97, 0xc9, 0xae, 0x8f, 0x8f, 0xc6, 0x32, +}; +static const unsigned char kat574_addin0[] = {0}; +static const unsigned char kat574_addin1[] = {0}; +static const unsigned char kat574_retbits[] = { + 0x3d, 0xa6, 0x3f, 0x9f, 0xee, 0x35, 0x54, 0x41, 0xfa, 0xc4, 0x08, 0x4b, + 0xb9, 0x76, 0x68, 0x51, 0xcb, 0x6c, 0x60, 0xb7, 0xa9, 0x48, 0x42, 0xd2, + 0xc7, 0x62, 0x3b, 0x80, 0x7a, 0x46, 0x20, 0xcc, 0xae, 0x17, 0x48, 0x10, + 0xc2, 0x1d, 0x92, 0xd5, 0xf2, 0x67, 0x6f, 0x9e, 0x84, 0xa5, 0xc9, 0x8b, + 0x9a, 0x8a, 0x23, 0xad, 0xf7, 0x2d, 0xdf, 0xe3, 0x9f, 0xb7, 0x88, 0xf2, + 0x89, 0x21, 0x71, 0x87, +}; +static const struct drbg_kat_no_reseed kat574_t = { + 3, kat574_entropyin, kat574_nonce, kat574_persstr, + kat574_addin0, kat574_addin1, kat574_retbits +}; +static const struct drbg_kat kat574 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat574_t +}; + +static const unsigned char kat575_entropyin[] = { + 0xbd, 0x5d, 0xaa, 0x18, 0xdf, 0xf5, 0x7e, 0x90, 0x76, 0x2d, 0xff, 0xd3, + 0x5a, 0x05, 0xa4, 0xa7, 0x39, 0xce, 0x7e, 0xbf, 0x08, 0x7f, 0x42, 0x93, + 0xf2, 0xc7, 0xa0, 0x31, 0xd1, 0x7d, 0xf9, 0xeb, +}; +static const unsigned char kat575_nonce[] = { + 0xaf, 0x62, 0x92, 0x3e, 0xf2, 0x14, 0x46, 0x24, 0x18, 0x43, 0x9e, 0xc8, + 0xdc, 0x55, 0x3c, 0x9b, +}; +static const unsigned char kat575_persstr[] = { + 0xfc, 0x9e, 0x13, 0x8b, 0xe9, 0x17, 0x0c, 0x83, 0x12, 0x28, 0x81, 0x91, + 0x03, 0x9b, 0x03, 0x3b, 0xf4, 0x1e, 0xf1, 0xd4, 0x7f, 0x4e, 0x64, 0x23, + 0x57, 0x86, 0x6b, 0x87, 0x5c, 0x7f, 0x18, 0x3e, +}; +static const unsigned char kat575_addin0[] = {0}; +static const unsigned char kat575_addin1[] = {0}; +static const unsigned char kat575_retbits[] = { + 0xd4, 0x0e, 0xcb, 0x4e, 0x47, 0xe5, 0x54, 0x60, 0xc4, 0x00, 0x47, 0xd6, + 0x0f, 0x85, 0x28, 0x78, 0xb9, 0x15, 0x26, 0x8a, 0x4f, 0x13, 0x79, 0x6c, + 0xf5, 0xd9, 0xaa, 0x0d, 0x67, 0xf6, 0xda, 0x88, 0x09, 0x84, 0x74, 0x68, + 0xd7, 0xe0, 0x4c, 0x03, 0x9a, 0x9f, 0x9e, 0x3d, 0x9e, 0x5b, 0x4d, 0x53, + 0xce, 0x8f, 0x66, 0xfe, 0x7d, 0x88, 0xa4, 0x98, 0x3c, 0x51, 0x11, 0xce, + 0xf6, 0x03, 0x7b, 0x33, +}; +static const struct drbg_kat_no_reseed kat575_t = { + 4, kat575_entropyin, kat575_nonce, kat575_persstr, + kat575_addin0, kat575_addin1, kat575_retbits +}; +static const struct drbg_kat kat575 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat575_t +}; + +static const unsigned char kat576_entropyin[] = { + 0x5a, 0x57, 0x10, 0x9b, 0xf7, 0xde, 0xe0, 0x09, 0x92, 0x26, 0x23, 0xcb, + 0x8d, 0xd7, 0xc6, 0x02, 0x9d, 0x14, 0xe6, 0xf3, 0x99, 0x7e, 0x9a, 0x54, + 0x05, 0x73, 0x9b, 0xd8, 0x50, 0x27, 0xd3, 0x1e, +}; +static const unsigned char kat576_nonce[] = { + 0xa4, 0xc9, 0x51, 0x1f, 0x90, 0x66, 0x5b, 0x44, 0x21, 0x8d, 0x45, 0xc6, + 0x27, 0xd8, 0xbe, 0x7d, +}; +static const unsigned char kat576_persstr[] = { + 0x2a, 0x6b, 0xe5, 0x24, 0xc3, 0xf7, 0xa5, 0x80, 0x15, 0x0f, 0x69, 0x9b, + 0xcc, 0x6b, 0xa1, 0x0b, 0x1e, 0x26, 0xcb, 0x85, 0x71, 0x26, 0x21, 0xce, + 0x00, 0xda, 0x3f, 0x36, 0x3c, 0x8b, 0x1c, 0x46, +}; +static const unsigned char kat576_addin0[] = {0}; +static const unsigned char kat576_addin1[] = {0}; +static const unsigned char kat576_retbits[] = { + 0xaa, 0xf4, 0xc6, 0xe3, 0xad, 0xa5, 0x1a, 0x1a, 0xe6, 0x2c, 0x24, 0x38, + 0x1b, 0x21, 0xad, 0x4a, 0xed, 0x83, 0xd8, 0xae, 0x39, 0x45, 0xeb, 0x71, + 0x93, 0x8c, 0x1c, 0xe2, 0xd5, 0x86, 0x27, 0x11, 0x5e, 0x5e, 0xfc, 0x3c, + 0x58, 0xe8, 0x05, 0x6e, 0x7f, 0x71, 0x90, 0xae, 0x55, 0x0a, 0x8f, 0x1b, + 0x46, 0xd1, 0xb5, 0x8a, 0xe3, 0xea, 0x9a, 0xf0, 0xb7, 0xb1, 0x08, 0x1a, + 0xa7, 0xfd, 0x36, 0x30, +}; +static const struct drbg_kat_no_reseed kat576_t = { + 5, kat576_entropyin, kat576_nonce, kat576_persstr, + kat576_addin0, kat576_addin1, kat576_retbits +}; +static const struct drbg_kat kat576 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat576_t +}; + +static const unsigned char kat577_entropyin[] = { + 0xf4, 0x3d, 0x16, 0x31, 0x39, 0x7b, 0xcf, 0xd6, 0xc6, 0xb3, 0x85, 0x10, + 0x6f, 0xef, 0x8e, 0x72, 0xf9, 0x72, 0x84, 0x50, 0x28, 0x62, 0xd6, 0x46, + 0x4e, 0x61, 0x0c, 0xed, 0xe7, 0xb9, 0xd8, 0xae, +}; +static const unsigned char kat577_nonce[] = { + 0x74, 0x1c, 0xcd, 0x9a, 0xa4, 0x87, 0xfd, 0x77, 0x53, 0x78, 0xea, 0xf3, + 0x1e, 0xb8, 0x77, 0xd8, +}; +static const unsigned char kat577_persstr[] = { + 0x96, 0x07, 0xf8, 0x4f, 0x0b, 0x22, 0x37, 0x62, 0x6d, 0xa9, 0x25, 0x0b, + 0xcb, 0xa6, 0x46, 0xa0, 0x6d, 0xd8, 0x00, 0x49, 0xf9, 0xa2, 0x8c, 0x4f, + 0x0b, 0x2b, 0x63, 0x1f, 0xfe, 0x73, 0x0d, 0x5c, +}; +static const unsigned char kat577_addin0[] = {0}; +static const unsigned char kat577_addin1[] = {0}; +static const unsigned char kat577_retbits[] = { + 0x50, 0x97, 0xa9, 0xf2, 0x7e, 0xb3, 0xae, 0x42, 0x32, 0x81, 0xb9, 0x3b, + 0x77, 0x20, 0x82, 0x58, 0x15, 0x03, 0x42, 0xea, 0x42, 0x45, 0xdb, 0x7f, + 0x1c, 0x4e, 0x73, 0x47, 0xb6, 0xa3, 0x80, 0xc8, 0x1e, 0x27, 0xb0, 0xeb, + 0x00, 0x61, 0x0e, 0x84, 0x2e, 0x2a, 0xb5, 0x7d, 0xdc, 0x03, 0x45, 0x67, + 0x67, 0x19, 0xb5, 0x2a, 0xf6, 0x63, 0x0d, 0x52, 0x90, 0x97, 0x5e, 0x65, + 0x75, 0xa0, 0x17, 0xb3, +}; +static const struct drbg_kat_no_reseed kat577_t = { + 6, kat577_entropyin, kat577_nonce, kat577_persstr, + kat577_addin0, kat577_addin1, kat577_retbits +}; +static const struct drbg_kat kat577 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat577_t +}; + +static const unsigned char kat578_entropyin[] = { + 0xb9, 0xf8, 0xf6, 0xf6, 0x73, 0x50, 0xb2, 0xb6, 0x74, 0xa9, 0x8e, 0xc3, + 0xcc, 0xf9, 0xf9, 0x4d, 0x5e, 0xb9, 0xed, 0x74, 0xc6, 0x74, 0xec, 0x30, + 0x5d, 0xd9, 0x8f, 0xc5, 0xd8, 0xc6, 0x4d, 0x93, +}; +static const unsigned char kat578_nonce[] = { + 0xed, 0x55, 0xa0, 0xe6, 0x82, 0xba, 0xc6, 0xad, 0x5d, 0x6f, 0x86, 0xeb, + 0x31, 0xf3, 0xb1, 0x5e, +}; +static const unsigned char kat578_persstr[] = { + 0x9c, 0x29, 0x9b, 0x3d, 0xc0, 0x78, 0x2f, 0x07, 0x46, 0xee, 0x9a, 0xa1, + 0x9c, 0x24, 0xfc, 0xee, 0xb7, 0xb3, 0x50, 0xdd, 0x3d, 0xe9, 0x72, 0x7a, + 0x19, 0x70, 0x8f, 0x41, 0xd9, 0x9c, 0x86, 0xaa, +}; +static const unsigned char kat578_addin0[] = {0}; +static const unsigned char kat578_addin1[] = {0}; +static const unsigned char kat578_retbits[] = { + 0x2c, 0xe4, 0xaf, 0x0c, 0xe1, 0xd6, 0x5a, 0x83, 0x78, 0xd3, 0xb8, 0x96, + 0xad, 0x2e, 0x16, 0xb9, 0xe8, 0xbd, 0x2a, 0x92, 0xd5, 0x95, 0xc1, 0x07, + 0x15, 0x9c, 0x38, 0x6a, 0x59, 0x93, 0x70, 0x54, 0x63, 0x6b, 0x64, 0x25, + 0xec, 0x73, 0x1c, 0x1d, 0x83, 0x8c, 0x53, 0x01, 0x53, 0x08, 0x64, 0x68, + 0xe7, 0x52, 0xea, 0x34, 0xd2, 0xad, 0x64, 0xc0, 0x68, 0xf0, 0x01, 0x53, + 0x41, 0xae, 0xa6, 0xa1, +}; +static const struct drbg_kat_no_reseed kat578_t = { + 7, kat578_entropyin, kat578_nonce, kat578_persstr, + kat578_addin0, kat578_addin1, kat578_retbits +}; +static const struct drbg_kat kat578 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat578_t +}; + +static const unsigned char kat579_entropyin[] = { + 0xc6, 0x99, 0x20, 0x58, 0x59, 0x90, 0x4c, 0x44, 0xa7, 0x82, 0x9c, 0x81, + 0xa5, 0x81, 0xd6, 0x36, 0xa9, 0x7c, 0x3f, 0x57, 0x21, 0x12, 0x57, 0x69, + 0xd8, 0x07, 0x0b, 0x63, 0x8f, 0xab, 0x07, 0xb1, +}; +static const unsigned char kat579_nonce[] = { + 0x4d, 0xdb, 0xba, 0x6a, 0x5a, 0x13, 0x7e, 0x24, 0xce, 0x4b, 0x28, 0x3a, + 0x8f, 0xf5, 0x27, 0xe3, +}; +static const unsigned char kat579_persstr[] = { + 0x22, 0xdc, 0x48, 0x6c, 0x4f, 0xe1, 0x9a, 0xf1, 0xf8, 0x20, 0x89, 0xba, + 0xb3, 0xd0, 0x1e, 0xf1, 0x60, 0xb6, 0xf5, 0xe5, 0x94, 0x83, 0x69, 0xc0, + 0xac, 0xac, 0xd6, 0xa5, 0xf4, 0x11, 0xf7, 0x37, +}; +static const unsigned char kat579_addin0[] = {0}; +static const unsigned char kat579_addin1[] = {0}; +static const unsigned char kat579_retbits[] = { + 0xed, 0x8e, 0xab, 0x6c, 0x64, 0x0e, 0x6e, 0x06, 0x17, 0x25, 0xd7, 0x18, + 0xf7, 0x67, 0xca, 0x51, 0x08, 0x49, 0x54, 0x21, 0x37, 0xda, 0x84, 0x70, + 0x0b, 0xdc, 0xac, 0xad, 0xf1, 0xca, 0xe5, 0xdd, 0x03, 0xf6, 0xed, 0xba, + 0xc0, 0x05, 0x3f, 0x1b, 0x7f, 0xe2, 0xcf, 0xd5, 0x36, 0x3a, 0x2f, 0xb8, + 0x12, 0x9e, 0x14, 0x9a, 0xc7, 0x47, 0x64, 0x47, 0x0b, 0x86, 0x23, 0x47, + 0x4e, 0x8b, 0x20, 0x4d, +}; +static const struct drbg_kat_no_reseed kat579_t = { + 8, kat579_entropyin, kat579_nonce, kat579_persstr, + kat579_addin0, kat579_addin1, kat579_retbits +}; +static const struct drbg_kat kat579 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat579_t +}; + +static const unsigned char kat580_entropyin[] = { + 0x16, 0x4a, 0xf0, 0xb9, 0x1b, 0xa3, 0x67, 0xe7, 0xd9, 0x49, 0xe0, 0x68, + 0x7a, 0x7c, 0xf1, 0x82, 0x59, 0x19, 0x74, 0x5a, 0x2f, 0xf4, 0x1a, 0x28, + 0xc0, 0x6e, 0x9d, 0x64, 0x7c, 0xea, 0x54, 0x5a, +}; +static const unsigned char kat580_nonce[] = { + 0xa6, 0x10, 0xa3, 0xcf, 0xc5, 0x1c, 0xd6, 0xad, 0x86, 0x9f, 0xa8, 0x50, + 0x86, 0x12, 0x4a, 0xa7, +}; +static const unsigned char kat580_persstr[] = { + 0x5d, 0x03, 0x58, 0x6d, 0xcd, 0xa1, 0xf0, 0x22, 0xde, 0xa6, 0x43, 0xa6, + 0x1f, 0xbc, 0x9e, 0x25, 0xc7, 0xf0, 0x7f, 0xc1, 0x5b, 0xa5, 0x54, 0xd5, + 0xad, 0xb8, 0xd4, 0x78, 0x5c, 0xa7, 0x6b, 0xc7, +}; +static const unsigned char kat580_addin0[] = {0}; +static const unsigned char kat580_addin1[] = {0}; +static const unsigned char kat580_retbits[] = { + 0xa7, 0x1a, 0xa1, 0x59, 0xb4, 0x81, 0x35, 0x3e, 0x1e, 0xa8, 0xa2, 0xfb, + 0x9f, 0x0f, 0xa6, 0xfb, 0xca, 0xac, 0x1c, 0x24, 0x10, 0x47, 0x17, 0xf9, + 0x89, 0x45, 0x35, 0xf0, 0x87, 0xe2, 0x90, 0x79, 0xb1, 0xc3, 0x16, 0x8f, + 0xb7, 0x45, 0xe0, 0x50, 0x31, 0x01, 0xed, 0xa8, 0x48, 0x42, 0x98, 0x0f, + 0x91, 0x91, 0x72, 0x7e, 0xa4, 0x7f, 0xfb, 0x57, 0x0c, 0xfb, 0xaa, 0xed, + 0xff, 0x05, 0x5d, 0x9c, +}; +static const struct drbg_kat_no_reseed kat580_t = { + 9, kat580_entropyin, kat580_nonce, kat580_persstr, + kat580_addin0, kat580_addin1, kat580_retbits +}; +static const struct drbg_kat kat580 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat580_t +}; + +static const unsigned char kat581_entropyin[] = { + 0x6a, 0x59, 0x15, 0x57, 0xdf, 0x6a, 0xfe, 0x71, 0xca, 0xd5, 0xac, 0xff, + 0xbb, 0xf7, 0x58, 0xf6, 0x82, 0x9e, 0xa8, 0x87, 0x55, 0x9b, 0xc1, 0xc3, + 0xab, 0x6f, 0x1d, 0xdb, 0xef, 0x92, 0x8b, 0x0f, +}; +static const unsigned char kat581_nonce[] = { + 0xc8, 0x72, 0xc4, 0xf0, 0xd9, 0xaf, 0xef, 0x9b, 0xe4, 0x08, 0xe0, 0xac, + 0x48, 0x87, 0x8b, 0xae, +}; +static const unsigned char kat581_persstr[] = { + 0xdf, 0xa1, 0xc2, 0xdb, 0x43, 0xf6, 0x12, 0x9b, 0x31, 0xfb, 0x4b, 0x32, + 0x66, 0xb1, 0x7d, 0x97, 0x2b, 0xb4, 0x67, 0x95, 0x72, 0x61, 0xdf, 0x3a, + 0x67, 0x67, 0x87, 0x94, 0x49, 0x76, 0x01, 0xb6, +}; +static const unsigned char kat581_addin0[] = {0}; +static const unsigned char kat581_addin1[] = {0}; +static const unsigned char kat581_retbits[] = { + 0x44, 0xf4, 0xad, 0x62, 0x71, 0x0d, 0x87, 0xa1, 0x09, 0x91, 0x09, 0x08, + 0xa4, 0xdd, 0x1a, 0x57, 0x91, 0x51, 0x65, 0x4b, 0x7c, 0x44, 0x06, 0x86, + 0xf9, 0x03, 0xb2, 0x13, 0x28, 0x5e, 0xa8, 0x86, 0xb7, 0x26, 0x05, 0xd8, + 0xe6, 0xaf, 0x0c, 0x2c, 0xb9, 0x28, 0x6f, 0x46, 0xb8, 0x7d, 0x6c, 0xdf, + 0xe1, 0x70, 0x24, 0x81, 0x24, 0x8a, 0x81, 0x6e, 0x88, 0x7d, 0x76, 0x68, + 0x58, 0xb2, 0x21, 0xf4, +}; +static const struct drbg_kat_no_reseed kat581_t = { + 10, kat581_entropyin, kat581_nonce, kat581_persstr, + kat581_addin0, kat581_addin1, kat581_retbits +}; +static const struct drbg_kat kat581 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat581_t +}; + +static const unsigned char kat582_entropyin[] = { + 0xe2, 0xbc, 0x6e, 0x86, 0x5a, 0xbe, 0xb1, 0xbb, 0xf1, 0x3e, 0xbe, 0xd7, + 0xe1, 0x23, 0xff, 0xa3, 0x26, 0x87, 0x62, 0x5c, 0x67, 0xef, 0x56, 0x1d, + 0xe9, 0xc2, 0xfc, 0x6f, 0x14, 0xef, 0xdd, 0x77, +}; +static const unsigned char kat582_nonce[] = { + 0x8e, 0x67, 0x5b, 0xf0, 0xac, 0x4b, 0x6b, 0x1f, 0xd4, 0x3a, 0x5b, 0xa3, + 0xd5, 0x5e, 0xb5, 0xfe, +}; +static const unsigned char kat582_persstr[] = { + 0x2a, 0xd7, 0x9b, 0x01, 0xb4, 0x77, 0xc2, 0x64, 0x6b, 0xe5, 0x76, 0x12, + 0x72, 0x33, 0x0d, 0x98, 0x40, 0x5e, 0xdd, 0x77, 0x58, 0x91, 0xf6, 0x19, + 0xc9, 0x66, 0x67, 0x91, 0xdd, 0x2a, 0x9b, 0x68, +}; +static const unsigned char kat582_addin0[] = {0}; +static const unsigned char kat582_addin1[] = {0}; +static const unsigned char kat582_retbits[] = { + 0xf4, 0x81, 0xf0, 0xf8, 0x1f, 0x46, 0xfe, 0xef, 0x26, 0x34, 0x10, 0xac, + 0x39, 0xef, 0x51, 0xf1, 0xfa, 0xaa, 0xcf, 0x22, 0x54, 0x1d, 0xe8, 0xe4, + 0xf9, 0x14, 0x52, 0xb6, 0x90, 0xbb, 0x5c, 0x6a, 0x21, 0x1d, 0xc8, 0x75, + 0x1d, 0xcf, 0x8b, 0xdb, 0xf4, 0xdc, 0xd3, 0x55, 0x48, 0x94, 0xbb, 0x66, + 0x44, 0xfb, 0x79, 0x95, 0xb4, 0x0c, 0x04, 0xea, 0x4c, 0x3a, 0x97, 0x9e, + 0x97, 0xb5, 0xbc, 0xfb, +}; +static const struct drbg_kat_no_reseed kat582_t = { + 11, kat582_entropyin, kat582_nonce, kat582_persstr, + kat582_addin0, kat582_addin1, kat582_retbits +}; +static const struct drbg_kat kat582 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat582_t +}; + +static const unsigned char kat583_entropyin[] = { + 0xff, 0xed, 0x52, 0x4b, 0x1d, 0x1f, 0x1c, 0x5c, 0xee, 0x98, 0x76, 0x28, + 0x58, 0x38, 0x7d, 0x1a, 0x40, 0x32, 0x45, 0xeb, 0xfa, 0xfe, 0xc0, 0xc0, + 0xa4, 0x0a, 0xd8, 0x15, 0xdb, 0x9c, 0x83, 0xf2, +}; +static const unsigned char kat583_nonce[] = { + 0x95, 0xf9, 0xd8, 0x65, 0x52, 0x11, 0xa0, 0xf8, 0x0e, 0xf8, 0xe3, 0x76, + 0xab, 0xd8, 0xf1, 0x71, +}; +static const unsigned char kat583_persstr[] = { + 0x38, 0xb2, 0xef, 0x1f, 0xcf, 0x66, 0xab, 0x0a, 0xd6, 0xf1, 0x4e, 0xf6, + 0x8b, 0x7d, 0xb3, 0x6a, 0x73, 0x11, 0xff, 0x99, 0x64, 0xff, 0x4b, 0xd5, + 0x01, 0xc4, 0x47, 0xfd, 0x04, 0x16, 0x73, 0x40, +}; +static const unsigned char kat583_addin0[] = {0}; +static const unsigned char kat583_addin1[] = {0}; +static const unsigned char kat583_retbits[] = { + 0x2e, 0xd8, 0x10, 0x83, 0x0b, 0x5c, 0x7b, 0xb2, 0x87, 0xee, 0xa8, 0x5c, + 0xd3, 0x2e, 0xde, 0x0f, 0xe0, 0x70, 0x04, 0x9a, 0x89, 0x8e, 0x0b, 0xbd, + 0x7a, 0x69, 0x49, 0xef, 0xe3, 0xbd, 0x3c, 0x19, 0x07, 0x5a, 0xcf, 0x87, + 0xff, 0x27, 0x71, 0x44, 0xab, 0xc2, 0xe2, 0x3c, 0xeb, 0x41, 0x6b, 0x70, + 0x5b, 0x7a, 0x2b, 0xe2, 0xfb, 0x0a, 0x0d, 0xc9, 0x16, 0x47, 0x86, 0xf3, + 0x52, 0x7c, 0xfe, 0x14, +}; +static const struct drbg_kat_no_reseed kat583_t = { + 12, kat583_entropyin, kat583_nonce, kat583_persstr, + kat583_addin0, kat583_addin1, kat583_retbits +}; +static const struct drbg_kat kat583 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat583_t +}; + +static const unsigned char kat584_entropyin[] = { + 0x2a, 0x92, 0x90, 0x3d, 0x4d, 0x3a, 0xba, 0x09, 0x16, 0xcb, 0xc0, 0x72, + 0xf9, 0x8a, 0x17, 0x05, 0x44, 0x6a, 0x12, 0x6d, 0x3e, 0x68, 0x4d, 0x0d, + 0x27, 0x1b, 0x78, 0xa4, 0x6a, 0xe8, 0x5c, 0x6e, +}; +static const unsigned char kat584_nonce[] = { + 0x2c, 0x94, 0x36, 0x1b, 0xdb, 0x04, 0x08, 0x75, 0xa6, 0x4e, 0x1f, 0x21, + 0xb9, 0xca, 0x85, 0x50, +}; +static const unsigned char kat584_persstr[] = { + 0x35, 0x3f, 0x18, 0xf9, 0xc3, 0x31, 0xa1, 0xf7, 0x7a, 0x1b, 0x0a, 0xa5, + 0xf9, 0x70, 0x76, 0x2e, 0xba, 0xcb, 0xac, 0xb4, 0x27, 0x3a, 0x94, 0x11, + 0x14, 0xa3, 0xc7, 0x83, 0xb6, 0xe4, 0x08, 0x8e, +}; +static const unsigned char kat584_addin0[] = {0}; +static const unsigned char kat584_addin1[] = {0}; +static const unsigned char kat584_retbits[] = { + 0xf9, 0xe3, 0xf3, 0x31, 0x77, 0x25, 0xf9, 0x6b, 0x13, 0x7b, 0xaa, 0x2e, + 0xe2, 0x16, 0xd7, 0x0c, 0xc4, 0xb4, 0x5c, 0x38, 0x05, 0x20, 0xf8, 0x1d, + 0x6f, 0xde, 0x13, 0x68, 0xef, 0x70, 0x10, 0x87, 0xa2, 0x90, 0x98, 0x93, + 0x3a, 0x38, 0xee, 0x75, 0x7b, 0x9f, 0x70, 0xb1, 0x82, 0xe7, 0x06, 0x3e, + 0x36, 0x30, 0xa4, 0x3b, 0xdc, 0x1f, 0x21, 0xc3, 0x0c, 0x4a, 0x47, 0xbf, + 0x7f, 0xbb, 0x98, 0xe5, +}; +static const struct drbg_kat_no_reseed kat584_t = { + 13, kat584_entropyin, kat584_nonce, kat584_persstr, + kat584_addin0, kat584_addin1, kat584_retbits +}; +static const struct drbg_kat kat584 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat584_t +}; + +static const unsigned char kat585_entropyin[] = { + 0xc2, 0x75, 0x29, 0xd8, 0x65, 0x0a, 0x49, 0x8f, 0xe1, 0xaa, 0xcd, 0xf1, + 0x2d, 0x8a, 0x56, 0xc7, 0x3e, 0xd1, 0xc4, 0xb5, 0x66, 0xfc, 0xfc, 0x57, + 0xb4, 0x3e, 0xeb, 0x2f, 0x8c, 0x17, 0x90, 0xad, +}; +static const unsigned char kat585_nonce[] = { + 0x09, 0x45, 0x15, 0x3f, 0xe4, 0x78, 0x9c, 0xd0, 0xa7, 0x45, 0x10, 0xdf, + 0xcd, 0xa5, 0xde, 0x71, +}; +static const unsigned char kat585_persstr[] = { + 0xcd, 0x98, 0xbf, 0x62, 0x9d, 0xa5, 0xde, 0xc8, 0x6d, 0x82, 0x3b, 0xbd, + 0x72, 0x0e, 0x27, 0x3f, 0xa0, 0x9b, 0x75, 0xa3, 0x04, 0xa2, 0xc3, 0x13, + 0x9c, 0x38, 0x38, 0x6b, 0xb4, 0x46, 0x85, 0x53, +}; +static const unsigned char kat585_addin0[] = {0}; +static const unsigned char kat585_addin1[] = {0}; +static const unsigned char kat585_retbits[] = { + 0xba, 0x34, 0xd4, 0x6c, 0x29, 0xaf, 0xc9, 0x1e, 0xc3, 0x4c, 0xad, 0x84, + 0x85, 0xb5, 0xdd, 0x6e, 0x2f, 0xb5, 0x80, 0xa2, 0x17, 0x85, 0x9f, 0x70, + 0x49, 0xa6, 0xb2, 0x3e, 0xb9, 0x3e, 0x66, 0xe4, 0x29, 0xdd, 0xff, 0x22, + 0xcc, 0x64, 0x71, 0x59, 0xef, 0x11, 0x95, 0xbb, 0x67, 0xc4, 0x0c, 0xb3, + 0x38, 0x83, 0xeb, 0xd8, 0xa6, 0xb9, 0xf7, 0x1a, 0xb0, 0xac, 0xb8, 0x9d, + 0xe7, 0x74, 0xa5, 0x93, +}; +static const struct drbg_kat_no_reseed kat585_t = { + 14, kat585_entropyin, kat585_nonce, kat585_persstr, + kat585_addin0, kat585_addin1, kat585_retbits +}; +static const struct drbg_kat kat585 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat585_t +}; + +static const unsigned char kat586_entropyin[] = { + 0xed, 0x12, 0xdf, 0x77, 0x81, 0x55, 0x85, 0xfc, 0x9a, 0xe7, 0x39, 0x66, + 0x20, 0xee, 0xe4, 0xae, 0x68, 0xcc, 0x82, 0xa8, 0x2e, 0xc3, 0x0a, 0x79, + 0x29, 0x01, 0xe2, 0x85, 0x8a, 0x59, 0x70, 0x5d, +}; +static const unsigned char kat586_nonce[] = { + 0x23, 0x2a, 0x3d, 0xb9, 0x70, 0xb5, 0xcf, 0x1f, 0x31, 0xa5, 0xe0, 0x9f, + 0x02, 0xc0, 0xa9, 0x7e, +}; +static const unsigned char kat586_persstr[] = { + 0x2f, 0x92, 0x94, 0xdb, 0x48, 0x53, 0x05, 0xd4, 0x88, 0x63, 0xb6, 0xf5, + 0x37, 0xc3, 0xfa, 0xed, 0x90, 0x3b, 0x9f, 0xeb, 0x94, 0xbb, 0x84, 0x8d, + 0x00, 0xdc, 0x58, 0xe7, 0x7d, 0x8f, 0x47, 0xc0, +}; +static const unsigned char kat586_addin0[] = { + 0xc9, 0x96, 0x9a, 0x56, 0x33, 0x74, 0x48, 0x0b, 0xc0, 0x8f, 0x61, 0xd4, + 0xb4, 0x6e, 0x58, 0x7a, 0xfc, 0x55, 0x12, 0x6d, 0x38, 0x09, 0xe6, 0x03, + 0xe2, 0x0e, 0x44, 0xa0, 0x76, 0x36, 0xc6, 0x78, +}; +static const unsigned char kat586_addin1[] = { + 0x03, 0xcf, 0xba, 0xa7, 0x39, 0xb3, 0x3c, 0x1b, 0xc6, 0x0a, 0xbb, 0x1c, + 0x73, 0x0e, 0x15, 0x5f, 0xae, 0x07, 0x83, 0x70, 0x54, 0xb0, 0x8e, 0xe8, + 0x48, 0xc4, 0x58, 0xc8, 0x85, 0x69, 0xff, 0xc1, +}; +static const unsigned char kat586_retbits[] = { + 0x78, 0xbd, 0x67, 0xeb, 0x4e, 0x66, 0x0a, 0x4f, 0xe3, 0x47, 0x4e, 0xc1, + 0xe9, 0x5b, 0x1f, 0xbd, 0xc1, 0xe4, 0xdc, 0x68, 0x67, 0x18, 0x4e, 0xe4, + 0xea, 0x9e, 0x15, 0x68, 0x14, 0xc5, 0x84, 0x9c, 0x3c, 0x12, 0xd7, 0xba, + 0x06, 0xcc, 0xed, 0x8c, 0x87, 0x27, 0x12, 0xc2, 0xb9, 0x6e, 0x74, 0x68, + 0x53, 0x6e, 0x11, 0xa2, 0x0e, 0x93, 0xe5, 0x3b, 0x8c, 0x77, 0x8e, 0x9c, + 0x06, 0x34, 0xc6, 0xcb, +}; +static const struct drbg_kat_no_reseed kat586_t = { + 0, kat586_entropyin, kat586_nonce, kat586_persstr, + kat586_addin0, kat586_addin1, kat586_retbits +}; +static const struct drbg_kat kat586 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat586_t +}; + +static const unsigned char kat587_entropyin[] = { + 0x2c, 0x8c, 0x91, 0x62, 0xa1, 0xdd, 0x63, 0xc1, 0xf2, 0x89, 0x47, 0x14, + 0xd8, 0x91, 0x58, 0x03, 0x0a, 0x5f, 0x67, 0x7a, 0xa0, 0x14, 0xd7, 0x8b, + 0xcd, 0x55, 0x8d, 0x8f, 0xfb, 0xa2, 0xab, 0x25, +}; +static const unsigned char kat587_nonce[] = { + 0x42, 0x06, 0xb6, 0xc3, 0xc1, 0xf5, 0x43, 0xb1, 0x60, 0x8f, 0xb9, 0xcd, + 0xb6, 0x2f, 0xc2, 0xc7, +}; +static const unsigned char kat587_persstr[] = { + 0xaa, 0xdd, 0x7d, 0x9f, 0x9c, 0xee, 0x1f, 0x93, 0xf4, 0x3a, 0xff, 0x31, + 0x32, 0x83, 0x77, 0x58, 0xe8, 0x89, 0x55, 0x35, 0x0f, 0x6d, 0xee, 0xb7, + 0x7b, 0xb4, 0xf8, 0x5c, 0xc0, 0x41, 0x04, 0x54, +}; +static const unsigned char kat587_addin0[] = { + 0xe7, 0x49, 0xfb, 0x5d, 0x67, 0xae, 0x61, 0x77, 0x04, 0xff, 0xfe, 0xbb, + 0xde, 0xb9, 0x98, 0xb2, 0x69, 0x2d, 0xb7, 0x2a, 0xf8, 0xac, 0x21, 0x7f, + 0x7b, 0xc5, 0x41, 0x6f, 0x93, 0xa7, 0x7a, 0x8f, +}; +static const unsigned char kat587_addin1[] = { + 0x46, 0xa5, 0x13, 0x49, 0xdb, 0x45, 0x45, 0x6d, 0xb9, 0x4e, 0xd1, 0x25, + 0x46, 0xea, 0x6a, 0x62, 0x14, 0x89, 0xac, 0xfb, 0x40, 0xb0, 0xfa, 0x31, + 0x6a, 0x3c, 0x8f, 0x5f, 0x48, 0x0a, 0x00, 0x88, +}; +static const unsigned char kat587_retbits[] = { + 0xee, 0x1f, 0x95, 0xda, 0x9b, 0x2d, 0x79, 0xf0, 0xcb, 0xf8, 0x33, 0x5e, + 0xfc, 0xc6, 0x91, 0x2f, 0x16, 0x39, 0x46, 0xe4, 0x45, 0x6d, 0x32, 0x84, + 0xb9, 0x18, 0x57, 0x9b, 0x50, 0xd6, 0x88, 0x1d, 0xb4, 0xcc, 0x08, 0x6d, + 0x3d, 0x21, 0x2a, 0xf2, 0xf3, 0x42, 0xb4, 0xbf, 0x46, 0x57, 0x37, 0x0b, + 0x02, 0x5c, 0xd4, 0xad, 0x2c, 0x1e, 0xef, 0xf3, 0xcf, 0x60, 0x70, 0xdb, + 0xdd, 0x50, 0x78, 0x61, +}; +static const struct drbg_kat_no_reseed kat587_t = { + 1, kat587_entropyin, kat587_nonce, kat587_persstr, + kat587_addin0, kat587_addin1, kat587_retbits +}; +static const struct drbg_kat kat587 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat587_t +}; + +static const unsigned char kat588_entropyin[] = { + 0x91, 0x97, 0x3e, 0xa6, 0x17, 0xf9, 0x5b, 0x5c, 0xd9, 0x4c, 0xbb, 0xc2, + 0xbf, 0x02, 0x03, 0x81, 0x51, 0x85, 0x73, 0x63, 0xd8, 0x50, 0x25, 0x6b, + 0xdf, 0x9f, 0x78, 0xbd, 0x22, 0x34, 0x0b, 0x49, +}; +static const unsigned char kat588_nonce[] = { + 0x9a, 0xb4, 0x15, 0x60, 0xf8, 0x54, 0x52, 0x07, 0x00, 0x52, 0x68, 0x1a, + 0x25, 0xd9, 0xf0, 0xf8, +}; +static const unsigned char kat588_persstr[] = { + 0x69, 0x16, 0x3f, 0xff, 0x9b, 0xab, 0x52, 0x97, 0xe0, 0x9f, 0xc9, 0x35, + 0x1f, 0x96, 0xa5, 0xbe, 0xe9, 0x97, 0x30, 0x86, 0x1f, 0xde, 0xf1, 0x0a, + 0xdf, 0xd4, 0xac, 0x38, 0xa0, 0x80, 0x0b, 0x3e, +}; +static const unsigned char kat588_addin0[] = { + 0xc4, 0x2c, 0x50, 0x3d, 0x41, 0x7d, 0x87, 0x67, 0x9f, 0x53, 0x0f, 0x4b, + 0xa0, 0x5c, 0xbc, 0xe3, 0x40, 0x48, 0x74, 0xd4, 0x61, 0x16, 0x3f, 0x5c, + 0x57, 0x0a, 0x3c, 0xfa, 0xd7, 0x5a, 0xbe, 0xed, +}; +static const unsigned char kat588_addin1[] = { + 0xba, 0xc9, 0xd9, 0xa1, 0x6d, 0x9f, 0x1c, 0xe7, 0xa4, 0xeb, 0xb7, 0xc3, + 0x78, 0x12, 0x43, 0x39, 0x4e, 0x22, 0x80, 0xa5, 0x2d, 0xe6, 0x41, 0x1d, + 0xb5, 0x2e, 0xd8, 0xc3, 0x09, 0x01, 0x3e, 0xcf, +}; +static const unsigned char kat588_retbits[] = { + 0x23, 0x64, 0x0c, 0xf3, 0x57, 0x0c, 0x88, 0xf3, 0x5c, 0x44, 0x0f, 0x5a, + 0x1d, 0x61, 0x95, 0xde, 0x06, 0xd0, 0x86, 0xb9, 0x11, 0x8d, 0xd6, 0xda, + 0xf8, 0x97, 0x48, 0x65, 0xd5, 0x2e, 0x11, 0x76, 0x6e, 0xaa, 0x8b, 0x14, + 0x62, 0xc7, 0x7b, 0x54, 0x2d, 0x6a, 0x53, 0x91, 0xdf, 0x63, 0x68, 0xca, + 0x68, 0x2f, 0x63, 0x98, 0xaf, 0x51, 0x56, 0xee, 0x7c, 0xd8, 0xce, 0x24, + 0x50, 0x25, 0x8f, 0xcb, +}; +static const struct drbg_kat_no_reseed kat588_t = { + 2, kat588_entropyin, kat588_nonce, kat588_persstr, + kat588_addin0, kat588_addin1, kat588_retbits +}; +static const struct drbg_kat kat588 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat588_t +}; + +static const unsigned char kat589_entropyin[] = { + 0xef, 0xfa, 0xd8, 0x21, 0x04, 0x04, 0x17, 0x86, 0x15, 0x9b, 0xe5, 0xa1, + 0xeb, 0xc0, 0xbe, 0x77, 0x68, 0x8e, 0x6f, 0x1c, 0x07, 0x5d, 0xc2, 0x0a, + 0x83, 0x2e, 0x3f, 0xfa, 0xfb, 0x11, 0xc5, 0x4c, +}; +static const unsigned char kat589_nonce[] = { + 0xe1, 0x3b, 0xad, 0xfd, 0xe3, 0x6a, 0x8c, 0x10, 0x7e, 0x4f, 0x3c, 0xea, + 0x69, 0x3d, 0xa3, 0x6d, +}; +static const unsigned char kat589_persstr[] = { + 0x01, 0xea, 0x78, 0xe5, 0xbe, 0x0b, 0xf9, 0x48, 0x96, 0x2d, 0x7c, 0x33, + 0x4a, 0xe2, 0x37, 0xc5, 0x60, 0xbb, 0x49, 0xe6, 0x63, 0x59, 0x58, 0x03, + 0x59, 0x36, 0xc4, 0x8d, 0x90, 0x82, 0xde, 0x39, +}; +static const unsigned char kat589_addin0[] = { + 0x72, 0x63, 0x49, 0xa1, 0xe5, 0x2b, 0xe8, 0xb8, 0x4b, 0x15, 0x75, 0x82, + 0x7e, 0xae, 0x96, 0xef, 0xc1, 0xc1, 0x15, 0x51, 0xb3, 0x5c, 0x68, 0xa0, + 0x4e, 0x89, 0xbd, 0x12, 0x55, 0x89, 0x82, 0x7a, +}; +static const unsigned char kat589_addin1[] = { + 0xe9, 0x43, 0x56, 0x9b, 0xac, 0x0d, 0x0e, 0x6b, 0x41, 0x00, 0xba, 0x89, + 0xc6, 0xf3, 0x2d, 0xd7, 0xed, 0x64, 0x57, 0x33, 0x57, 0xc5, 0x77, 0x83, + 0xf3, 0xd0, 0xe0, 0xf6, 0x9e, 0xaf, 0xdd, 0x1f, +}; +static const unsigned char kat589_retbits[] = { + 0xba, 0x58, 0x11, 0x9f, 0x27, 0x47, 0xdd, 0xe7, 0xfc, 0x00, 0x0e, 0x22, + 0x09, 0x0a, 0xe3, 0x25, 0x6a, 0xec, 0xd2, 0x64, 0xcd, 0xcf, 0x77, 0xd3, + 0xc5, 0x1f, 0x32, 0xfa, 0x96, 0xb2, 0x44, 0xfe, 0xed, 0x32, 0x05, 0xfa, + 0xd9, 0x0d, 0x98, 0xa4, 0x27, 0x27, 0xb5, 0x51, 0xcd, 0xdc, 0xb3, 0xfa, + 0x28, 0x87, 0x0c, 0x08, 0xf0, 0x2d, 0x86, 0x5b, 0x4c, 0x39, 0xcd, 0x1e, + 0x36, 0x81, 0x8a, 0x23, +}; +static const struct drbg_kat_no_reseed kat589_t = { + 3, kat589_entropyin, kat589_nonce, kat589_persstr, + kat589_addin0, kat589_addin1, kat589_retbits +}; +static const struct drbg_kat kat589 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat589_t +}; + +static const unsigned char kat590_entropyin[] = { + 0x85, 0x24, 0x10, 0x08, 0x36, 0x34, 0x04, 0x7a, 0x3f, 0x9a, 0xa8, 0xc7, + 0x72, 0x51, 0x7c, 0x6c, 0x91, 0x2f, 0xa9, 0x5b, 0xab, 0x1d, 0xa0, 0x9a, + 0x3a, 0x70, 0x53, 0xc4, 0xbb, 0xaf, 0x75, 0x01, +}; +static const unsigned char kat590_nonce[] = { + 0x49, 0xcc, 0xe5, 0xd8, 0x7b, 0xc9, 0x05, 0xe9, 0x8b, 0xc5, 0xbd, 0x3f, + 0x2f, 0x6b, 0xaa, 0x0e, +}; +static const unsigned char kat590_persstr[] = { + 0x79, 0xe7, 0x15, 0x35, 0xed, 0x28, 0xe0, 0x80, 0xa2, 0xa0, 0x24, 0xbe, + 0xf6, 0x02, 0x04, 0x37, 0x74, 0x19, 0xc1, 0x3b, 0x0f, 0x57, 0x37, 0x39, + 0xb2, 0xe3, 0x8a, 0xd2, 0xd9, 0x4e, 0x98, 0x01, +}; +static const unsigned char kat590_addin0[] = { + 0x7c, 0x8d, 0xd0, 0xaa, 0xc5, 0x36, 0x11, 0x4f, 0x88, 0xe6, 0xdb, 0xa6, + 0x8c, 0x73, 0xda, 0x37, 0xb7, 0x70, 0x06, 0xc5, 0xa4, 0x4e, 0x78, 0x6e, + 0x5f, 0x62, 0xae, 0xa3, 0x65, 0x58, 0xf9, 0x45, +}; +static const unsigned char kat590_addin1[] = { + 0x05, 0xac, 0xd9, 0x92, 0x1c, 0x8d, 0xec, 0xd6, 0x0b, 0xc9, 0xcd, 0x12, + 0x49, 0x25, 0xc8, 0xb5, 0x1b, 0xac, 0x8a, 0x63, 0x29, 0xe4, 0x63, 0x2d, + 0xbf, 0x07, 0x65, 0x32, 0xeb, 0xff, 0x92, 0x96, +}; +static const unsigned char kat590_retbits[] = { + 0x90, 0xb4, 0x1b, 0x64, 0x4a, 0xd0, 0x53, 0xd3, 0x6c, 0xff, 0x4c, 0xeb, + 0x3d, 0x67, 0xc0, 0xf0, 0x64, 0xec, 0x43, 0x87, 0x42, 0xd7, 0x14, 0xcd, + 0xdd, 0x62, 0x4f, 0xed, 0x5d, 0xef, 0xce, 0x1c, 0xea, 0xca, 0xb3, 0x25, + 0xc1, 0x40, 0x01, 0x73, 0x16, 0xf2, 0x9a, 0xef, 0xf2, 0x32, 0x24, 0x4c, + 0x5d, 0x0a, 0x02, 0x04, 0xee, 0xd8, 0xcd, 0xd7, 0xda, 0x34, 0x6d, 0xb2, + 0x9d, 0xe7, 0xaa, 0x8e, +}; +static const struct drbg_kat_no_reseed kat590_t = { + 4, kat590_entropyin, kat590_nonce, kat590_persstr, + kat590_addin0, kat590_addin1, kat590_retbits +}; +static const struct drbg_kat kat590 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat590_t +}; + +static const unsigned char kat591_entropyin[] = { + 0xbb, 0x56, 0x82, 0x66, 0x31, 0x8d, 0x93, 0x65, 0x09, 0x26, 0x57, 0xec, + 0xfa, 0xf0, 0x5a, 0xc7, 0x0c, 0x8d, 0xfd, 0x79, 0x7a, 0x47, 0xc7, 0xe8, + 0x5b, 0x51, 0xcb, 0x61, 0x26, 0xa0, 0xe6, 0x93, +}; +static const unsigned char kat591_nonce[] = { + 0xdc, 0xd3, 0x5d, 0x62, 0x80, 0xf4, 0x0b, 0xeb, 0xc8, 0x21, 0x25, 0xea, + 0x28, 0xbe, 0x7a, 0x80, +}; +static const unsigned char kat591_persstr[] = { + 0x7b, 0x25, 0x4b, 0xba, 0x67, 0x74, 0xfc, 0x1f, 0x60, 0x1c, 0x0f, 0x2f, + 0x9f, 0x90, 0x02, 0xa2, 0x90, 0x26, 0x9c, 0xb6, 0x56, 0x2d, 0x15, 0x0d, + 0x4b, 0x3a, 0x32, 0x11, 0x5c, 0xe4, 0x31, 0x3d, +}; +static const unsigned char kat591_addin0[] = { + 0x97, 0x14, 0xe5, 0x46, 0x0f, 0xed, 0x9b, 0x43, 0xb3, 0x03, 0x83, 0x3a, + 0x60, 0x01, 0xfe, 0x0b, 0x07, 0x1a, 0x43, 0x94, 0xd1, 0x03, 0x49, 0xb5, + 0x6a, 0xd1, 0xaa, 0x5c, 0x51, 0x14, 0xf9, 0x26, +}; +static const unsigned char kat591_addin1[] = { + 0xb1, 0x3a, 0x4e, 0x44, 0x21, 0xac, 0x55, 0x3f, 0x5c, 0x16, 0x6f, 0xd9, + 0x48, 0xb7, 0x58, 0x79, 0x4e, 0x57, 0xcc, 0x0c, 0xc0, 0xe7, 0x3e, 0x76, + 0x0d, 0xff, 0x26, 0xbe, 0xc8, 0xcf, 0x81, 0xe8, +}; +static const unsigned char kat591_retbits[] = { + 0x5d, 0xb4, 0x68, 0x50, 0x19, 0x62, 0x02, 0x48, 0xac, 0x08, 0xd0, 0x23, + 0xd2, 0xd6, 0x05, 0x06, 0xe2, 0x1d, 0x94, 0xd1, 0x56, 0xb9, 0xa1, 0xc3, + 0x90, 0x90, 0x3b, 0xf2, 0x51, 0xd1, 0xb1, 0xff, 0x3b, 0x46, 0xe0, 0x13, + 0xa2, 0xc6, 0xd9, 0x2a, 0x9f, 0x70, 0xa2, 0xb1, 0x8b, 0xbd, 0x75, 0x84, + 0xa2, 0xf0, 0xa1, 0x9d, 0x77, 0x0c, 0xa0, 0x16, 0xee, 0x5a, 0x5f, 0x83, + 0xfa, 0xf1, 0x78, 0xd7, +}; +static const struct drbg_kat_no_reseed kat591_t = { + 5, kat591_entropyin, kat591_nonce, kat591_persstr, + kat591_addin0, kat591_addin1, kat591_retbits +}; +static const struct drbg_kat kat591 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat591_t +}; + +static const unsigned char kat592_entropyin[] = { + 0x34, 0x00, 0x27, 0x77, 0x37, 0x42, 0xa6, 0xe9, 0x15, 0x53, 0xa7, 0xba, + 0x65, 0x44, 0x38, 0x8e, 0x74, 0xe3, 0xdd, 0xfc, 0x11, 0x51, 0xfd, 0xb9, + 0xb7, 0x63, 0xa9, 0xd1, 0x6c, 0xbe, 0x59, 0x7a, +}; +static const unsigned char kat592_nonce[] = { + 0xe6, 0x04, 0x47, 0x01, 0x69, 0x51, 0x28, 0x08, 0xcd, 0x4a, 0x13, 0x1b, + 0xb1, 0x82, 0x78, 0x0b, +}; +static const unsigned char kat592_persstr[] = { + 0x21, 0x0f, 0x36, 0xc9, 0x6b, 0x6b, 0x19, 0xf4, 0xb5, 0x59, 0x16, 0x1c, + 0x60, 0xc4, 0x8d, 0xf2, 0x96, 0xbf, 0xfc, 0xcc, 0xce, 0x09, 0x08, 0x59, + 0x9a, 0xba, 0xa4, 0x00, 0x17, 0x7a, 0x96, 0xe9, +}; +static const unsigned char kat592_addin0[] = { + 0xd5, 0x5d, 0x98, 0x16, 0xd5, 0xc4, 0xe2, 0xe2, 0xe1, 0x81, 0x12, 0x6b, + 0xc0, 0x80, 0x40, 0xa9, 0xf6, 0x53, 0xed, 0x95, 0xea, 0x12, 0x4c, 0x64, + 0xe4, 0x05, 0x9e, 0x2f, 0x48, 0xff, 0xef, 0x10, +}; +static const unsigned char kat592_addin1[] = { + 0x6c, 0x30, 0xa6, 0x4b, 0x1c, 0x73, 0xfb, 0xd0, 0x8d, 0xa5, 0xce, 0xbd, + 0xa1, 0x86, 0x42, 0xf7, 0x8a, 0x02, 0xbd, 0x32, 0x47, 0xab, 0x1d, 0x78, + 0xc1, 0xc0, 0x3f, 0x8a, 0x6c, 0xff, 0xdd, 0x89, +}; +static const unsigned char kat592_retbits[] = { + 0x4f, 0xff, 0x81, 0xdb, 0xf1, 0xf4, 0x2e, 0xf5, 0x7b, 0xdb, 0xf6, 0xda, + 0x19, 0x43, 0x11, 0xdb, 0xc4, 0xb4, 0x64, 0xd3, 0xa1, 0x1a, 0x33, 0xc6, + 0x64, 0xc0, 0xd5, 0x98, 0x34, 0xec, 0x60, 0xa5, 0x83, 0xb3, 0x90, 0x8a, + 0xde, 0x9c, 0xc6, 0xfb, 0xb8, 0x9d, 0xeb, 0xb1, 0x98, 0xd1, 0x14, 0x3a, + 0xba, 0x2b, 0xc5, 0x75, 0x39, 0x83, 0x08, 0x6b, 0x42, 0x20, 0x98, 0xa2, + 0x38, 0x77, 0xcb, 0x2a, +}; +static const struct drbg_kat_no_reseed kat592_t = { + 6, kat592_entropyin, kat592_nonce, kat592_persstr, + kat592_addin0, kat592_addin1, kat592_retbits +}; +static const struct drbg_kat kat592 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat592_t +}; + +static const unsigned char kat593_entropyin[] = { + 0xb3, 0x6a, 0x98, 0xe6, 0xc5, 0xb2, 0x36, 0x98, 0x13, 0x5e, 0xb3, 0x5f, + 0x28, 0xdc, 0x83, 0x0a, 0xc6, 0xbc, 0x17, 0x17, 0xe5, 0xc3, 0xee, 0x3e, + 0xa1, 0x38, 0x01, 0xf8, 0xa8, 0xc9, 0x36, 0x5d, +}; +static const unsigned char kat593_nonce[] = { + 0x7f, 0x13, 0x19, 0x97, 0xa9, 0x29, 0x22, 0x41, 0x3d, 0x83, 0x7c, 0xa5, + 0x0e, 0x17, 0xd9, 0x77, +}; +static const unsigned char kat593_persstr[] = { + 0x1e, 0xd6, 0xb0, 0x7c, 0xb5, 0x25, 0x13, 0x4e, 0xce, 0xe3, 0x22, 0x00, + 0x71, 0x36, 0x01, 0xc1, 0x8a, 0xbd, 0x9c, 0x79, 0x20, 0xe7, 0xad, 0x1d, + 0xc0, 0x76, 0x4c, 0xd9, 0x2e, 0x3d, 0x56, 0xff, +}; +static const unsigned char kat593_addin0[] = { + 0xa4, 0xef, 0x95, 0x75, 0xb9, 0x66, 0x82, 0xd7, 0x55, 0x2f, 0x9e, 0xb7, + 0xba, 0x26, 0x9c, 0x43, 0xa5, 0x08, 0x35, 0xf2, 0x3f, 0xb2, 0xcf, 0x1f, + 0x81, 0x83, 0x8e, 0x9c, 0x01, 0xb1, 0xea, 0x40, +}; +static const unsigned char kat593_addin1[] = { + 0x18, 0x9b, 0xcd, 0x45, 0xfa, 0x13, 0x93, 0x98, 0x38, 0x66, 0x3a, 0xde, + 0x2e, 0xaf, 0x19, 0x79, 0xb3, 0x3c, 0x17, 0x2f, 0x5e, 0xd7, 0x41, 0x12, + 0x3f, 0x06, 0xa2, 0xe3, 0xca, 0x25, 0x42, 0x7f, +}; +static const unsigned char kat593_retbits[] = { + 0xc8, 0xb6, 0xcc, 0x90, 0x1c, 0x42, 0x36, 0xbd, 0x39, 0x14, 0xbc, 0x77, + 0x98, 0x7d, 0x9d, 0x63, 0x99, 0x73, 0xd6, 0x9c, 0x96, 0xe0, 0x40, 0x19, + 0x77, 0x37, 0xb9, 0xa7, 0x2b, 0xbf, 0x3b, 0x5e, 0x89, 0x98, 0xc5, 0x49, + 0x67, 0xbd, 0xae, 0x26, 0x14, 0x67, 0x72, 0x71, 0x6e, 0xd2, 0xae, 0x0c, + 0x6b, 0x20, 0x84, 0x71, 0xbd, 0xf2, 0x1a, 0x85, 0xb2, 0x77, 0x4b, 0xf7, + 0xe5, 0x16, 0xb3, 0x4f, +}; +static const struct drbg_kat_no_reseed kat593_t = { + 7, kat593_entropyin, kat593_nonce, kat593_persstr, + kat593_addin0, kat593_addin1, kat593_retbits +}; +static const struct drbg_kat kat593 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat593_t +}; + +static const unsigned char kat594_entropyin[] = { + 0xc0, 0x0c, 0xdf, 0x7e, 0x0e, 0x78, 0x6a, 0x07, 0x93, 0x78, 0x3b, 0x6c, + 0xed, 0xc3, 0x7d, 0x6d, 0x05, 0x04, 0xd8, 0xc5, 0xeb, 0xff, 0x06, 0x30, + 0x14, 0xcf, 0x81, 0x09, 0x2c, 0xf6, 0x1d, 0x11, +}; +static const unsigned char kat594_nonce[] = { + 0x94, 0x21, 0x43, 0x51, 0x9f, 0x87, 0xb3, 0x83, 0x5a, 0x0e, 0xdc, 0xa2, + 0xd4, 0xcd, 0x22, 0x85, +}; +static const unsigned char kat594_persstr[] = { + 0x3a, 0x95, 0x3e, 0x04, 0x1c, 0x7e, 0x5d, 0x30, 0x63, 0x2d, 0x34, 0xa7, + 0xe8, 0x14, 0xf4, 0xfa, 0xcc, 0x85, 0x8d, 0xe6, 0xb8, 0xfb, 0x3c, 0x43, + 0x29, 0x73, 0xa4, 0xdb, 0x4a, 0x5a, 0x78, 0xc2, +}; +static const unsigned char kat594_addin0[] = { + 0x1f, 0xab, 0x18, 0x06, 0x26, 0x0c, 0x24, 0x25, 0x95, 0x36, 0xe1, 0x45, + 0x74, 0xbb, 0xef, 0x9b, 0xe5, 0x0e, 0xda, 0x48, 0x93, 0x63, 0x32, 0xd6, + 0x0b, 0xc3, 0xdb, 0xcf, 0x6b, 0x10, 0xf5, 0xf7, +}; +static const unsigned char kat594_addin1[] = { + 0x18, 0xcc, 0xe3, 0x08, 0x95, 0x6e, 0x63, 0x50, 0x5d, 0x43, 0xdd, 0xc2, + 0x87, 0x09, 0xea, 0xcc, 0x78, 0x3a, 0x14, 0x93, 0x15, 0x93, 0xd0, 0x79, + 0xd6, 0xbd, 0x74, 0xa6, 0x95, 0xc3, 0x07, 0x5a, +}; +static const unsigned char kat594_retbits[] = { + 0x9f, 0x4d, 0x77, 0xd3, 0x94, 0x81, 0x51, 0x48, 0x16, 0x2d, 0x6c, 0xca, + 0xa8, 0xb7, 0x3c, 0xbd, 0x61, 0xb5, 0x4c, 0x5d, 0xb1, 0x04, 0xe7, 0xc0, + 0x47, 0xbf, 0x0a, 0x22, 0x5a, 0xe0, 0x55, 0x94, 0x33, 0x2b, 0xb5, 0x6c, + 0x60, 0xd5, 0x1d, 0x29, 0x86, 0xe5, 0x75, 0x13, 0xf4, 0xc2, 0x66, 0xdf, + 0x39, 0xd9, 0xbe, 0xee, 0x9b, 0x69, 0x64, 0x98, 0x91, 0xb6, 0xcc, 0xae, + 0xf4, 0xb9, 0x86, 0xbd, +}; +static const struct drbg_kat_no_reseed kat594_t = { + 8, kat594_entropyin, kat594_nonce, kat594_persstr, + kat594_addin0, kat594_addin1, kat594_retbits +}; +static const struct drbg_kat kat594 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat594_t +}; + +static const unsigned char kat595_entropyin[] = { + 0xfb, 0x5f, 0x69, 0x58, 0x20, 0x3f, 0xa7, 0xbd, 0x06, 0x66, 0x55, 0xef, + 0x7b, 0x5f, 0xde, 0x99, 0xa5, 0x71, 0x94, 0x7e, 0x1f, 0x74, 0xb8, 0xb8, + 0xf5, 0x3a, 0x85, 0x4d, 0xbb, 0xbc, 0x35, 0x2e, +}; +static const unsigned char kat595_nonce[] = { + 0x02, 0x90, 0xfb, 0x96, 0xdd, 0xae, 0xd0, 0xd8, 0x17, 0x9a, 0x07, 0x95, + 0xee, 0x1c, 0xd5, 0x29, +}; +static const unsigned char kat595_persstr[] = { + 0xc5, 0x9d, 0x3d, 0x2f, 0xe3, 0x0b, 0x85, 0xed, 0x64, 0xdb, 0x2c, 0x9a, + 0xe8, 0x63, 0xb9, 0xda, 0xad, 0x7b, 0xf9, 0x6c, 0x33, 0x1d, 0x66, 0xdf, + 0x94, 0x5f, 0x5f, 0x3a, 0x1f, 0x8d, 0x25, 0x15, +}; +static const unsigned char kat595_addin0[] = { + 0xc9, 0x9d, 0x7f, 0xe2, 0xde, 0xb6, 0xaf, 0x99, 0xa1, 0x78, 0x2e, 0x8f, + 0xc1, 0x2a, 0x51, 0x96, 0x36, 0x47, 0x1f, 0xc3, 0xbf, 0xad, 0x0a, 0xc2, + 0xa7, 0x89, 0xa2, 0xf2, 0x0f, 0x4d, 0xf6, 0x3f, +}; +static const unsigned char kat595_addin1[] = { + 0xe4, 0x79, 0xac, 0x18, 0xb2, 0xfe, 0xd6, 0xd9, 0xf2, 0xee, 0x44, 0x1a, + 0x20, 0xbd, 0x50, 0xaa, 0xdd, 0x2a, 0x90, 0xba, 0x96, 0x25, 0xac, 0xe0, + 0x1a, 0x44, 0x49, 0xa6, 0xce, 0x6e, 0xfa, 0x92, +}; +static const unsigned char kat595_retbits[] = { + 0x0a, 0xb8, 0x70, 0xc2, 0x51, 0x6e, 0xac, 0x1e, 0xf1, 0xe6, 0xdd, 0x3f, + 0x2d, 0xe9, 0xdd, 0x05, 0x64, 0xa5, 0x63, 0x63, 0xf0, 0xb8, 0xc4, 0x2b, + 0x4b, 0xae, 0x4b, 0x22, 0xe1, 0x4c, 0x99, 0x12, 0xb4, 0xc1, 0xcb, 0xa8, + 0xf3, 0x15, 0x8e, 0xb5, 0x88, 0x1b, 0x86, 0x52, 0x4c, 0x94, 0xcb, 0xb2, + 0xc8, 0x16, 0x9f, 0xc8, 0xcc, 0x2c, 0x13, 0x10, 0x3a, 0x64, 0x78, 0x33, + 0x7f, 0x2b, 0xb0, 0x0a, +}; +static const struct drbg_kat_no_reseed kat595_t = { + 9, kat595_entropyin, kat595_nonce, kat595_persstr, + kat595_addin0, kat595_addin1, kat595_retbits +}; +static const struct drbg_kat kat595 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat595_t +}; + +static const unsigned char kat596_entropyin[] = { + 0xa4, 0xc9, 0x75, 0x00, 0x48, 0xb3, 0x35, 0x54, 0xe2, 0x47, 0x59, 0xa3, + 0x76, 0x27, 0xc4, 0x0f, 0xa7, 0xd2, 0xbc, 0xc0, 0x45, 0xb0, 0x6b, 0xd2, + 0x2a, 0x8d, 0x90, 0xae, 0x1a, 0x8c, 0xa2, 0x79, +}; +static const unsigned char kat596_nonce[] = { + 0xba, 0xa1, 0x37, 0xff, 0xca, 0xd7, 0x2d, 0x25, 0x82, 0xc4, 0xc3, 0x48, + 0xb1, 0x2b, 0x81, 0x58, +}; +static const unsigned char kat596_persstr[] = { + 0xa4, 0xf1, 0x15, 0x88, 0x5e, 0x0f, 0x45, 0xc4, 0x58, 0x0d, 0x04, 0xca, + 0xfc, 0xfb, 0xa8, 0xec, 0x09, 0xc5, 0xe0, 0x81, 0xb6, 0x5d, 0x64, 0x85, + 0x67, 0xc5, 0x5a, 0x9d, 0x65, 0x1e, 0x52, 0x1c, +}; +static const unsigned char kat596_addin0[] = { + 0xeb, 0x8e, 0x2a, 0xa1, 0x82, 0xfb, 0xf7, 0x85, 0xf2, 0x5d, 0xa7, 0xf5, + 0x70, 0x54, 0xb7, 0x01, 0x71, 0xe5, 0xa2, 0x6a, 0xfc, 0x5a, 0x61, 0xaa, + 0xa1, 0xf9, 0x2f, 0xb4, 0xcb, 0x3a, 0xc5, 0x0c, +}; +static const unsigned char kat596_addin1[] = { + 0xa4, 0x4a, 0xa0, 0xb5, 0x25, 0x5b, 0xa3, 0x39, 0xbc, 0x3c, 0xd1, 0x71, + 0x5e, 0xc6, 0xa8, 0xd5, 0x56, 0x99, 0xe1, 0xb4, 0x99, 0x6b, 0x9d, 0x73, + 0x7d, 0xa8, 0x3b, 0x8a, 0x35, 0x70, 0x45, 0xb2, +}; +static const unsigned char kat596_retbits[] = { + 0x53, 0xf7, 0x4f, 0xe7, 0xab, 0x0a, 0xd3, 0x1d, 0x5d, 0xf0, 0x32, 0x7e, + 0x6d, 0xbc, 0xf5, 0xde, 0xeb, 0x3f, 0x0b, 0xd9, 0xd1, 0xff, 0x50, 0xb7, + 0xa9, 0xd5, 0x22, 0xfd, 0x9c, 0x9c, 0x3f, 0x63, 0x3e, 0x53, 0xce, 0x1d, + 0x31, 0x66, 0xaa, 0x7f, 0x2a, 0x25, 0xe3, 0x2d, 0x04, 0x88, 0xff, 0x07, + 0x89, 0xa1, 0xb9, 0x81, 0x88, 0x6d, 0x4a, 0xbd, 0xd2, 0x01, 0x4d, 0xe3, + 0x25, 0x9d, 0x40, 0x64, +}; +static const struct drbg_kat_no_reseed kat596_t = { + 10, kat596_entropyin, kat596_nonce, kat596_persstr, + kat596_addin0, kat596_addin1, kat596_retbits +}; +static const struct drbg_kat kat596 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat596_t +}; + +static const unsigned char kat597_entropyin[] = { + 0x30, 0xb0, 0x28, 0x27, 0xca, 0xcd, 0xcb, 0xd1, 0xd9, 0x97, 0x1a, 0xf6, + 0x88, 0xa4, 0x5a, 0x6b, 0x31, 0x1e, 0x49, 0x56, 0x14, 0x29, 0xfa, 0xec, + 0x6a, 0xef, 0x87, 0x67, 0x1b, 0xac, 0xc6, 0xf9, +}; +static const unsigned char kat597_nonce[] = { + 0x1b, 0x17, 0x46, 0xf7, 0x69, 0x39, 0xeb, 0x07, 0x18, 0x32, 0x86, 0x96, + 0x5e, 0xe6, 0x48, 0xab, +}; +static const unsigned char kat597_persstr[] = { + 0x6b, 0x4f, 0x4b, 0x56, 0x56, 0x93, 0x48, 0x26, 0x93, 0xf6, 0x96, 0x51, + 0x21, 0x04, 0xec, 0x1a, 0xe1, 0x2a, 0xc6, 0x5a, 0x7c, 0xe0, 0xba, 0xbb, + 0xf1, 0x93, 0xf1, 0xfd, 0xc4, 0xc2, 0x31, 0xed, +}; +static const unsigned char kat597_addin0[] = { + 0x1e, 0x3a, 0xdf, 0x2b, 0x30, 0xf2, 0x88, 0xb2, 0xa1, 0x8d, 0x28, 0x7c, + 0x1b, 0x05, 0x3a, 0xfb, 0x7e, 0x51, 0x3f, 0x6d, 0xe9, 0x03, 0x86, 0xab, + 0xb9, 0xda, 0x60, 0x41, 0x94, 0x15, 0xcd, 0x72, +}; +static const unsigned char kat597_addin1[] = { + 0xe1, 0x92, 0x54, 0xcf, 0x8b, 0xb5, 0x02, 0x3f, 0xdf, 0x51, 0x26, 0x9b, + 0x83, 0xa9, 0x61, 0xf5, 0xa3, 0x47, 0xf5, 0x42, 0x98, 0xa3, 0x19, 0x66, + 0x98, 0xd4, 0xc9, 0xfa, 0xe3, 0xca, 0x2c, 0xcb, +}; +static const unsigned char kat597_retbits[] = { + 0x47, 0x3b, 0xe3, 0x98, 0xde, 0x0e, 0x2e, 0x5c, 0xdc, 0x50, 0x52, 0x9e, + 0x6c, 0xeb, 0x02, 0x22, 0xb4, 0x03, 0x8e, 0x8e, 0x07, 0x76, 0xe9, 0x6c, + 0x27, 0x74, 0x21, 0xed, 0xc1, 0x0f, 0x2a, 0x84, 0x1d, 0xec, 0x9f, 0x07, + 0xc8, 0x2f, 0x00, 0xe2, 0xf5, 0x30, 0x62, 0xab, 0x68, 0xe3, 0xf7, 0xd4, + 0xeb, 0xdc, 0x18, 0x99, 0x9e, 0x36, 0x2e, 0xe9, 0x04, 0xa0, 0xba, 0xf4, + 0x42, 0x29, 0xb5, 0x9c, +}; +static const struct drbg_kat_no_reseed kat597_t = { + 11, kat597_entropyin, kat597_nonce, kat597_persstr, + kat597_addin0, kat597_addin1, kat597_retbits +}; +static const struct drbg_kat kat597 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat597_t +}; + +static const unsigned char kat598_entropyin[] = { + 0x55, 0x4c, 0x46, 0x7d, 0xfd, 0x02, 0xc9, 0x63, 0x97, 0x25, 0x18, 0x37, + 0x85, 0xae, 0xcd, 0x6c, 0x0f, 0x5a, 0x32, 0x80, 0xc6, 0x1c, 0x82, 0x2b, + 0xab, 0x02, 0xf1, 0xd7, 0x41, 0x3f, 0x43, 0x61, +}; +static const unsigned char kat598_nonce[] = { + 0x6f, 0xf6, 0xa4, 0xac, 0xc5, 0xa5, 0x8c, 0x68, 0x1d, 0xe9, 0xa5, 0x44, + 0x1a, 0x9f, 0x75, 0x6f, +}; +static const unsigned char kat598_persstr[] = { + 0x6a, 0xce, 0xc4, 0xa4, 0xc0, 0xbe, 0x17, 0x21, 0x8e, 0x7c, 0x3f, 0x42, + 0x46, 0x64, 0x09, 0x20, 0xaa, 0xc4, 0x8f, 0xb3, 0x80, 0x09, 0x14, 0xdb, + 0x2f, 0x86, 0xdc, 0x53, 0x90, 0x3b, 0x09, 0xaf, +}; +static const unsigned char kat598_addin0[] = { + 0xcd, 0x24, 0x87, 0x5c, 0xdf, 0x70, 0xeb, 0x4f, 0xb7, 0x1c, 0x01, 0x23, + 0xe0, 0xeb, 0x73, 0x8a, 0x71, 0xdd, 0x76, 0xf3, 0x6f, 0xf5, 0x4b, 0x9b, + 0x7e, 0xc7, 0x06, 0xce, 0xf0, 0xe0, 0x35, 0xf5, +}; +static const unsigned char kat598_addin1[] = { + 0x99, 0xd6, 0x71, 0xe8, 0xf8, 0xe7, 0x2c, 0xf8, 0xe9, 0xa0, 0x2e, 0x76, + 0x30, 0x64, 0x8c, 0xed, 0x53, 0xac, 0x39, 0x3f, 0x6f, 0xc0, 0x42, 0x5e, + 0x5f, 0x52, 0x5e, 0xb4, 0x13, 0xd3, 0x75, 0xdd, +}; +static const unsigned char kat598_retbits[] = { + 0x35, 0xbe, 0xae, 0x85, 0x58, 0xe9, 0xb5, 0xec, 0xb3, 0x0b, 0x1b, 0xf5, + 0xab, 0xc5, 0x23, 0x10, 0x21, 0x91, 0x96, 0xb5, 0x81, 0x23, 0x25, 0x70, + 0x43, 0xd2, 0x79, 0x3c, 0x05, 0xc9, 0x65, 0xe6, 0x25, 0x8a, 0xf7, 0x83, + 0xec, 0xee, 0x80, 0xb3, 0x39, 0x29, 0xa3, 0xfd, 0xd7, 0x7a, 0x8b, 0x1a, + 0xdf, 0xfb, 0x72, 0x3b, 0xcf, 0xe7, 0xe6, 0x5f, 0x7c, 0xac, 0x68, 0x28, + 0x62, 0x22, 0x0f, 0x4e, +}; +static const struct drbg_kat_no_reseed kat598_t = { + 12, kat598_entropyin, kat598_nonce, kat598_persstr, + kat598_addin0, kat598_addin1, kat598_retbits +}; +static const struct drbg_kat kat598 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat598_t +}; + +static const unsigned char kat599_entropyin[] = { + 0x93, 0xee, 0x61, 0xdd, 0x85, 0x0c, 0x0c, 0x97, 0x27, 0x36, 0xaa, 0x98, + 0xdc, 0x18, 0xbb, 0x3a, 0xdd, 0x52, 0x9e, 0xb9, 0x25, 0x83, 0x21, 0x1a, + 0x29, 0x8f, 0xb0, 0x8d, 0xf1, 0x7a, 0x7a, 0xf7, +}; +static const unsigned char kat599_nonce[] = { + 0x0a, 0x4d, 0xf3, 0x17, 0x78, 0x47, 0x51, 0x08, 0x2b, 0x98, 0x2c, 0x85, + 0x71, 0x7c, 0xdc, 0x2c, +}; +static const unsigned char kat599_persstr[] = { + 0xf4, 0xf1, 0x0e, 0x09, 0x5e, 0x9f, 0x5f, 0xaa, 0xcc, 0xa2, 0x4f, 0x53, + 0x95, 0xa7, 0x3c, 0xb1, 0x53, 0x85, 0x65, 0xdf, 0x67, 0x9c, 0x87, 0x54, + 0xb7, 0xad, 0x94, 0xe8, 0x36, 0xf6, 0x91, 0x68, +}; +static const unsigned char kat599_addin0[] = { + 0x87, 0x6e, 0x00, 0x2f, 0x90, 0xf5, 0x06, 0x3d, 0xdd, 0x5c, 0x57, 0x8d, + 0x9d, 0x9f, 0x4a, 0x2a, 0x9b, 0xde, 0x7e, 0xf2, 0x8a, 0x41, 0xd9, 0xc2, + 0x77, 0xa4, 0x89, 0xe8, 0x5a, 0xfb, 0x63, 0x5b, +}; +static const unsigned char kat599_addin1[] = { + 0xc2, 0x56, 0x2e, 0xc2, 0x35, 0x3e, 0x63, 0xe1, 0x3e, 0x6c, 0x6f, 0x6f, + 0x06, 0xe1, 0xba, 0x22, 0x0b, 0x08, 0x48, 0xbe, 0x35, 0x3e, 0x5b, 0xd4, + 0x46, 0x89, 0x21, 0xb9, 0xbf, 0x26, 0x49, 0xfa, +}; +static const unsigned char kat599_retbits[] = { + 0xd4, 0xcf, 0x47, 0x8c, 0x91, 0xba, 0x19, 0x73, 0xa7, 0xcf, 0xae, 0x15, + 0x9b, 0x8e, 0x4c, 0x05, 0x25, 0xb2, 0x96, 0xb5, 0x44, 0xfd, 0x85, 0x44, + 0xf4, 0xff, 0x10, 0xe7, 0xa2, 0xc5, 0xae, 0xbb, 0xe8, 0xb5, 0xa1, 0x0f, + 0xef, 0x16, 0xf4, 0xa9, 0x1c, 0x19, 0x93, 0x09, 0x0b, 0xe7, 0x62, 0x8c, + 0xe2, 0x1f, 0x53, 0xe2, 0xb4, 0xe7, 0xd6, 0xc2, 0xf1, 0x4b, 0xe3, 0x44, + 0x18, 0x8f, 0xa4, 0xe6, +}; +static const struct drbg_kat_no_reseed kat599_t = { + 13, kat599_entropyin, kat599_nonce, kat599_persstr, + kat599_addin0, kat599_addin1, kat599_retbits +}; +static const struct drbg_kat kat599 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat599_t +}; + +static const unsigned char kat600_entropyin[] = { + 0xac, 0x38, 0xc3, 0x8c, 0x49, 0x8b, 0xf9, 0xb7, 0xcc, 0x72, 0x4f, 0x79, + 0x27, 0x06, 0xa0, 0x7b, 0x87, 0xe4, 0xbb, 0xa1, 0x92, 0x9a, 0x41, 0x8b, + 0x03, 0xb7, 0x42, 0xe4, 0xb0, 0xca, 0xe3, 0x9a, +}; +static const unsigned char kat600_nonce[] = { + 0x80, 0x85, 0xcb, 0x0e, 0xf7, 0xd5, 0x46, 0xee, 0x8d, 0x4f, 0x9b, 0xb1, + 0x83, 0xde, 0x56, 0xe4, +}; +static const unsigned char kat600_persstr[] = { + 0x73, 0xf2, 0xd1, 0x80, 0xa4, 0xd2, 0xc7, 0x36, 0x4a, 0x64, 0xbe, 0x7a, + 0xa7, 0x57, 0xbe, 0x6d, 0xf2, 0x7d, 0x93, 0x7a, 0xe8, 0xda, 0x40, 0x6c, + 0x61, 0xd0, 0x35, 0x3d, 0xda, 0x31, 0x9f, 0xd5, +}; +static const unsigned char kat600_addin0[] = { + 0xd3, 0xef, 0x42, 0xed, 0xc3, 0x18, 0xfe, 0x36, 0x24, 0xe7, 0x2f, 0x27, + 0x18, 0xd2, 0x74, 0xd7, 0xdb, 0xe2, 0xd8, 0x9f, 0xd8, 0xe3, 0xc4, 0xcf, + 0xc8, 0xa7, 0xa7, 0xa1, 0xb5, 0x02, 0x21, 0x6f, +}; +static const unsigned char kat600_addin1[] = { + 0x1f, 0xbb, 0xd7, 0x3b, 0x62, 0xd4, 0x31, 0x0a, 0x63, 0x6f, 0xd5, 0x6d, + 0x28, 0x37, 0x44, 0xf4, 0x85, 0x91, 0xf9, 0x6a, 0x0b, 0x65, 0xf2, 0x4d, + 0x87, 0x11, 0xec, 0xf9, 0x2b, 0x3c, 0xe3, 0xdc, +}; +static const unsigned char kat600_retbits[] = { + 0x75, 0xb4, 0x29, 0xd2, 0x65, 0x7e, 0x16, 0xc7, 0x32, 0x5d, 0x05, 0x70, + 0x00, 0x5c, 0x42, 0xb2, 0x21, 0x66, 0x4e, 0x8e, 0x1b, 0x0c, 0x1e, 0x69, + 0x54, 0xaa, 0xc3, 0x06, 0x2b, 0xbc, 0x84, 0xfd, 0xc6, 0x9e, 0xb2, 0xa5, + 0x4a, 0xff, 0xcc, 0x49, 0xb4, 0x01, 0xa2, 0x22, 0x1f, 0x68, 0xa9, 0x17, + 0x46, 0x31, 0x24, 0x45, 0xb0, 0x3d, 0xf1, 0xb8, 0xf9, 0xe9, 0xf2, 0xe3, + 0x4a, 0x7a, 0x1f, 0x70, +}; +static const struct drbg_kat_no_reseed kat600_t = { + 14, kat600_entropyin, kat600_nonce, kat600_persstr, + kat600_addin0, kat600_addin1, kat600_retbits +}; +static const struct drbg_kat kat600 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat600_t +}; + +static const unsigned char kat601_entropyin[] = { + 0x58, 0xa5, 0xf7, 0x9d, 0xa4, 0x4b, 0x9f, 0x23, 0xa9, 0x8a, 0x39, 0x35, + 0x29, 0x72, 0xad, 0x16, 0x03, 0x1f, 0xe1, 0x36, 0x37, 0xbd, 0x18, 0xd6, + 0xcb, 0x6c, 0x9f, 0x52, 0x69, 0xd8, 0xe2, 0x40, +}; +static const unsigned char kat601_nonce[] = { + 0xaa, 0xa4, 0x66, 0x10, 0x68, 0x11, 0x67, 0xff, 0x8d, 0x4d, 0x2c, 0x51, + 0xe7, 0x79, 0x11, 0xd4, +}; +static const unsigned char kat601_persstr[] = {0}; +static const unsigned char kat601_addin0[] = {0}; +static const unsigned char kat601_addin1[] = {0}; +static const unsigned char kat601_retbits[] = { + 0xc1, 0x71, 0x4f, 0x89, 0x45, 0x9c, 0xe7, 0x46, 0xb1, 0x51, 0x50, 0x9e, + 0x50, 0x66, 0xd4, 0x81, 0x1a, 0x06, 0xad, 0x06, 0xc1, 0xe9, 0xb1, 0x3b, + 0x50, 0xc0, 0xfc, 0x7c, 0xdd, 0x77, 0xce, 0xed, 0xc2, 0x33, 0x90, 0x8e, + 0xbe, 0x1e, 0xa8, 0x14, 0x0e, 0xc2, 0xdc, 0x26, 0x2a, 0x43, 0x20, 0x1b, + 0xe6, 0x67, 0x00, 0x8e, 0x08, 0x1e, 0x54, 0x76, 0xb1, 0x9b, 0x27, 0x21, + 0x41, 0x11, 0xd3, 0x25, +}; +static const struct drbg_kat_no_reseed kat601_t = { + 0, kat601_entropyin, kat601_nonce, kat601_persstr, + kat601_addin0, kat601_addin1, kat601_retbits +}; +static const struct drbg_kat kat601 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat601_t +}; + +static const unsigned char kat602_entropyin[] = { + 0xa9, 0x43, 0xe8, 0x09, 0x63, 0x04, 0x13, 0xde, 0x62, 0x07, 0x74, 0x6d, + 0x0d, 0x03, 0x41, 0x91, 0x3f, 0x46, 0x6a, 0xf0, 0xae, 0x89, 0x3c, 0xfb, + 0x34, 0x06, 0x57, 0x0b, 0x2f, 0xb7, 0x91, 0xcf, +}; +static const unsigned char kat602_nonce[] = { + 0x90, 0x7b, 0x9c, 0xf7, 0xf9, 0xed, 0xf0, 0x4f, 0xcf, 0x35, 0x10, 0x31, + 0x5d, 0xd0, 0xc3, 0x81, +}; +static const unsigned char kat602_persstr[] = {0}; +static const unsigned char kat602_addin0[] = {0}; +static const unsigned char kat602_addin1[] = {0}; +static const unsigned char kat602_retbits[] = { + 0xc3, 0xb8, 0x48, 0x88, 0xc5, 0x24, 0x4c, 0xdc, 0xbb, 0x94, 0x62, 0x99, + 0xcc, 0x38, 0x48, 0xc3, 0x79, 0xa9, 0xb7, 0x80, 0xe2, 0x1f, 0x02, 0x9f, + 0x0b, 0xb2, 0xfe, 0x81, 0x5a, 0x2d, 0x03, 0x9d, 0xd7, 0xaa, 0x8a, 0x2e, + 0x80, 0x8c, 0x2a, 0xc4, 0x7b, 0x8a, 0x9c, 0xb6, 0x86, 0x0b, 0x97, 0x04, + 0x40, 0x04, 0x9a, 0x65, 0xd8, 0x15, 0xe3, 0x36, 0x9e, 0xd8, 0x33, 0xc7, + 0x61, 0x24, 0xaa, 0xc1, +}; +static const struct drbg_kat_no_reseed kat602_t = { + 1, kat602_entropyin, kat602_nonce, kat602_persstr, + kat602_addin0, kat602_addin1, kat602_retbits +}; +static const struct drbg_kat kat602 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat602_t +}; + +static const unsigned char kat603_entropyin[] = { + 0x4d, 0x43, 0xce, 0xb1, 0xce, 0x9c, 0xac, 0xf5, 0x64, 0x03, 0xa0, 0xc9, + 0x90, 0x5d, 0xaa, 0x67, 0xa2, 0xac, 0xdd, 0xd0, 0xe4, 0xbe, 0x6a, 0x33, + 0x4b, 0x8c, 0x44, 0x34, 0xf4, 0xc6, 0x04, 0x55, +}; +static const unsigned char kat603_nonce[] = { + 0x97, 0x72, 0xaa, 0xea, 0x3c, 0xd3, 0x0c, 0xa7, 0x76, 0xd6, 0x74, 0xbc, + 0xfb, 0x88, 0x4e, 0x18, +}; +static const unsigned char kat603_persstr[] = {0}; +static const unsigned char kat603_addin0[] = {0}; +static const unsigned char kat603_addin1[] = {0}; +static const unsigned char kat603_retbits[] = { + 0x85, 0xc8, 0x7c, 0x47, 0x15, 0xc1, 0x6c, 0x4b, 0x75, 0x28, 0xd0, 0x40, + 0x23, 0x05, 0x63, 0x98, 0xff, 0x28, 0x28, 0xe0, 0xb6, 0x49, 0xfb, 0xd1, + 0x0a, 0x29, 0x7b, 0x74, 0xfc, 0x3d, 0xc0, 0xdf, 0x49, 0x66, 0xbc, 0xfc, + 0xd4, 0xf8, 0x2f, 0xdb, 0x22, 0x8f, 0xaf, 0x10, 0x2d, 0x52, 0xcc, 0xa0, + 0xd3, 0xae, 0x8a, 0xf7, 0xf0, 0xc5, 0xb3, 0x0f, 0xff, 0x62, 0xd0, 0xc5, + 0x45, 0xd3, 0xde, 0x79, +}; +static const struct drbg_kat_no_reseed kat603_t = { + 2, kat603_entropyin, kat603_nonce, kat603_persstr, + kat603_addin0, kat603_addin1, kat603_retbits +}; +static const struct drbg_kat kat603 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat603_t +}; + +static const unsigned char kat604_entropyin[] = { + 0xd4, 0x10, 0xcf, 0x13, 0xca, 0xe3, 0x65, 0xfa, 0xf3, 0x17, 0x2f, 0xb0, + 0xc2, 0x36, 0x84, 0x01, 0xf4, 0x43, 0xe7, 0x89, 0xa6, 0x2b, 0x3c, 0xe6, + 0xbc, 0x40, 0x02, 0x32, 0x49, 0xfe, 0x7d, 0xee, +}; +static const unsigned char kat604_nonce[] = { + 0x22, 0xc3, 0x12, 0xb5, 0x2a, 0x06, 0x92, 0xeb, 0x38, 0x76, 0x33, 0x32, + 0xb6, 0xcd, 0x4a, 0xe9, +}; +static const unsigned char kat604_persstr[] = {0}; +static const unsigned char kat604_addin0[] = {0}; +static const unsigned char kat604_addin1[] = {0}; +static const unsigned char kat604_retbits[] = { + 0xa0, 0x05, 0xf4, 0x0f, 0xde, 0xfa, 0x1e, 0x1d, 0xce, 0x22, 0xf7, 0x35, + 0xbf, 0x3e, 0x87, 0xea, 0xfc, 0x8e, 0xc3, 0x58, 0x4a, 0x6b, 0x2b, 0x80, + 0x45, 0xbe, 0x53, 0xbd, 0xe0, 0xb1, 0xcd, 0xc4, 0x6b, 0xe3, 0x80, 0xbe, + 0x86, 0x05, 0x38, 0xca, 0x0e, 0x97, 0x6e, 0xed, 0xda, 0xe4, 0xad, 0xd2, + 0x20, 0x42, 0x62, 0x35, 0x0d, 0x5f, 0x6e, 0x19, 0xe3, 0x4d, 0xb0, 0xfc, + 0x47, 0xdc, 0xd0, 0xec, +}; +static const struct drbg_kat_no_reseed kat604_t = { + 3, kat604_entropyin, kat604_nonce, kat604_persstr, + kat604_addin0, kat604_addin1, kat604_retbits +}; +static const struct drbg_kat kat604 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat604_t +}; + +static const unsigned char kat605_entropyin[] = { + 0xf8, 0x09, 0x72, 0xa5, 0xcd, 0x4e, 0x2e, 0x14, 0xb1, 0xf5, 0x21, 0x4d, + 0xd9, 0x3c, 0x54, 0x9d, 0xc5, 0x1e, 0xdb, 0x97, 0xc1, 0x44, 0x7d, 0x52, + 0xf3, 0xe9, 0x1b, 0x30, 0xc1, 0x5b, 0x74, 0x8c, +}; +static const unsigned char kat605_nonce[] = { + 0xe1, 0xdf, 0xe4, 0xaa, 0x77, 0x7a, 0x0b, 0xeb, 0xd1, 0xfe, 0x93, 0x66, + 0x35, 0xa5, 0x19, 0x3d, +}; +static const unsigned char kat605_persstr[] = {0}; +static const unsigned char kat605_addin0[] = {0}; +static const unsigned char kat605_addin1[] = {0}; +static const unsigned char kat605_retbits[] = { + 0xf3, 0x89, 0xde, 0xfd, 0x88, 0xce, 0x73, 0xa6, 0xa5, 0xd8, 0x1a, 0x32, + 0xfe, 0xdf, 0x26, 0xe0, 0x05, 0xa5, 0xd4, 0x2f, 0x78, 0x68, 0xfb, 0xa4, + 0x0d, 0xdf, 0x20, 0xdf, 0x63, 0x25, 0xfe, 0x34, 0x73, 0x8d, 0xa3, 0xce, + 0xbb, 0x62, 0xb6, 0x02, 0x21, 0x72, 0x47, 0xfe, 0xf7, 0x78, 0x37, 0xfc, + 0x73, 0xdb, 0xef, 0x33, 0xb8, 0x13, 0xb2, 0x6e, 0xb0, 0x6b, 0xe2, 0xad, + 0x05, 0x06, 0x98, 0x82, +}; +static const struct drbg_kat_no_reseed kat605_t = { + 4, kat605_entropyin, kat605_nonce, kat605_persstr, + kat605_addin0, kat605_addin1, kat605_retbits +}; +static const struct drbg_kat kat605 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat605_t +}; + +static const unsigned char kat606_entropyin[] = { + 0x92, 0xae, 0x36, 0x3f, 0xcb, 0xe3, 0x5f, 0xd5, 0xf6, 0x06, 0xd2, 0x1d, + 0x20, 0x94, 0xf9, 0x5b, 0x90, 0xe6, 0xb1, 0x1c, 0x21, 0x49, 0x4f, 0xe0, + 0xea, 0x3f, 0x7e, 0x8d, 0x0c, 0xcb, 0x2b, 0xc3, +}; +static const unsigned char kat606_nonce[] = { + 0x88, 0xb3, 0x1b, 0x93, 0x1f, 0x49, 0xf8, 0x6c, 0x43, 0x05, 0x71, 0xaf, + 0x1a, 0x35, 0x2a, 0x3c, +}; +static const unsigned char kat606_persstr[] = {0}; +static const unsigned char kat606_addin0[] = {0}; +static const unsigned char kat606_addin1[] = {0}; +static const unsigned char kat606_retbits[] = { + 0x4f, 0x4a, 0x1e, 0x0e, 0xa8, 0x21, 0xbb, 0x8a, 0xdd, 0x74, 0xaf, 0xe6, + 0xe1, 0x26, 0x59, 0x81, 0x33, 0x38, 0xed, 0xe3, 0xd1, 0xd3, 0x53, 0x58, + 0x08, 0x34, 0x2a, 0x0c, 0xb3, 0xd0, 0x66, 0xec, 0x13, 0xa8, 0xd5, 0x29, + 0x97, 0x33, 0x66, 0x07, 0x29, 0x7e, 0x56, 0xff, 0x53, 0xca, 0x5a, 0x50, + 0x14, 0x75, 0x90, 0x23, 0x2d, 0x26, 0xf0, 0x41, 0xf7, 0x6f, 0xf9, 0xb5, + 0x82, 0x3f, 0x36, 0xf4, +}; +static const struct drbg_kat_no_reseed kat606_t = { + 5, kat606_entropyin, kat606_nonce, kat606_persstr, + kat606_addin0, kat606_addin1, kat606_retbits +}; +static const struct drbg_kat kat606 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat606_t +}; + +static const unsigned char kat607_entropyin[] = { + 0x01, 0xab, 0x1c, 0x40, 0x96, 0xc4, 0xed, 0x6d, 0x24, 0x10, 0x74, 0xc6, + 0xe8, 0xb3, 0xe4, 0xab, 0xe7, 0x93, 0x52, 0x35, 0xd6, 0xf4, 0x8e, 0x91, + 0x3b, 0x78, 0x0d, 0x21, 0x9a, 0x71, 0xfe, 0x2d, +}; +static const unsigned char kat607_nonce[] = { + 0x47, 0x2e, 0x39, 0xd4, 0x80, 0x0e, 0xf0, 0xee, 0xce, 0x7b, 0xed, 0x95, + 0x44, 0xd5, 0xaf, 0x5a, +}; +static const unsigned char kat607_persstr[] = {0}; +static const unsigned char kat607_addin0[] = {0}; +static const unsigned char kat607_addin1[] = {0}; +static const unsigned char kat607_retbits[] = { + 0xbf, 0x7a, 0xcb, 0x20, 0x90, 0x7e, 0x0b, 0xa1, 0x41, 0xe4, 0x65, 0x19, + 0xaa, 0x31, 0xd4, 0x6a, 0xd4, 0x5d, 0xa4, 0x6e, 0x01, 0x4b, 0x24, 0x20, + 0xd4, 0x8d, 0x30, 0x9c, 0xb0, 0xd4, 0x70, 0x3e, 0x82, 0xc6, 0xa7, 0x8e, + 0x83, 0x5e, 0xfa, 0xbb, 0x17, 0x23, 0xb7, 0x5b, 0x8d, 0xac, 0xe5, 0x96, + 0x80, 0x42, 0x41, 0x60, 0x75, 0xcb, 0x71, 0xb9, 0xc1, 0x49, 0x80, 0x6c, + 0xc4, 0x21, 0x47, 0x58, +}; +static const struct drbg_kat_no_reseed kat607_t = { + 6, kat607_entropyin, kat607_nonce, kat607_persstr, + kat607_addin0, kat607_addin1, kat607_retbits +}; +static const struct drbg_kat kat607 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat607_t +}; + +static const unsigned char kat608_entropyin[] = { + 0xf6, 0x30, 0x21, 0xbc, 0x49, 0x22, 0x30, 0x5c, 0x82, 0x67, 0xb2, 0xce, + 0xf7, 0x67, 0xe3, 0xbb, 0xda, 0xb7, 0x2e, 0x11, 0x9b, 0xc8, 0x31, 0x7a, + 0xd8, 0xfe, 0x2c, 0x27, 0x69, 0x4f, 0x9e, 0x00, +}; +static const unsigned char kat608_nonce[] = { + 0xe6, 0xcc, 0xef, 0x20, 0xf8, 0x75, 0x19, 0xd5, 0xd6, 0x77, 0x16, 0xe1, + 0x2e, 0x1b, 0xd7, 0x60, +}; +static const unsigned char kat608_persstr[] = {0}; +static const unsigned char kat608_addin0[] = {0}; +static const unsigned char kat608_addin1[] = {0}; +static const unsigned char kat608_retbits[] = { + 0xd7, 0xee, 0xc5, 0x1c, 0x18, 0x6f, 0x59, 0x90, 0xbc, 0x3f, 0x55, 0xdb, + 0x34, 0x2a, 0x41, 0xa2, 0xea, 0x15, 0x50, 0x34, 0xaf, 0x65, 0x1c, 0x3c, + 0x29, 0x13, 0x10, 0x24, 0x1d, 0x46, 0x55, 0x73, 0x3c, 0xc9, 0xd7, 0x81, + 0xd6, 0x88, 0x61, 0x38, 0xb3, 0xf9, 0xac, 0x59, 0x5b, 0x95, 0x6f, 0x94, + 0xda, 0xff, 0x64, 0xdf, 0xde, 0x94, 0xd3, 0xc8, 0xf2, 0xb8, 0x11, 0x82, + 0xb8, 0x7e, 0xb8, 0x32, +}; +static const struct drbg_kat_no_reseed kat608_t = { + 7, kat608_entropyin, kat608_nonce, kat608_persstr, + kat608_addin0, kat608_addin1, kat608_retbits +}; +static const struct drbg_kat kat608 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat608_t +}; + +static const unsigned char kat609_entropyin[] = { + 0xa8, 0xfd, 0xae, 0x7e, 0x11, 0x16, 0x12, 0x2d, 0x2b, 0x42, 0xd1, 0x54, + 0xa6, 0x32, 0x9a, 0xee, 0x99, 0xae, 0x6f, 0x3b, 0xd6, 0x51, 0x80, 0xa0, + 0x38, 0x28, 0xa3, 0x54, 0x4b, 0x80, 0xf9, 0x9b, +}; +static const unsigned char kat609_nonce[] = { + 0x10, 0xb1, 0x4f, 0x56, 0x8e, 0x42, 0xff, 0x31, 0xcf, 0x73, 0xb1, 0xf3, + 0x94, 0x3a, 0xec, 0xb8, +}; +static const unsigned char kat609_persstr[] = {0}; +static const unsigned char kat609_addin0[] = {0}; +static const unsigned char kat609_addin1[] = {0}; +static const unsigned char kat609_retbits[] = { + 0x4a, 0xbd, 0xe8, 0x19, 0x9c, 0x07, 0x76, 0xac, 0xe8, 0xaf, 0xba, 0x19, + 0x6d, 0x2b, 0xef, 0xc6, 0xd6, 0x88, 0x8f, 0x3e, 0x95, 0x60, 0x10, 0x88, + 0x95, 0x68, 0x90, 0x17, 0xac, 0x65, 0x4a, 0x55, 0x57, 0x22, 0xc0, 0xf1, + 0x4c, 0x53, 0xb1, 0x9f, 0x3c, 0xf6, 0x71, 0xa8, 0x8c, 0x10, 0xa9, 0x15, + 0xea, 0x72, 0x0e, 0x7d, 0xc9, 0xb9, 0xe5, 0xe0, 0x31, 0x91, 0x5e, 0x33, + 0x0e, 0xbb, 0x0e, 0x4c, +}; +static const struct drbg_kat_no_reseed kat609_t = { + 8, kat609_entropyin, kat609_nonce, kat609_persstr, + kat609_addin0, kat609_addin1, kat609_retbits +}; +static const struct drbg_kat kat609 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat609_t +}; + +static const unsigned char kat610_entropyin[] = { + 0x9a, 0xef, 0xe4, 0x3a, 0xc5, 0x49, 0x0d, 0xef, 0xc5, 0xba, 0xad, 0xb1, + 0x2e, 0x66, 0x83, 0x8d, 0xe9, 0xdd, 0xaf, 0xc9, 0x44, 0xcd, 0x68, 0x6e, + 0xcb, 0x05, 0x96, 0x35, 0x40, 0x34, 0x52, 0xaf, +}; +static const unsigned char kat610_nonce[] = { + 0xe9, 0x25, 0x6f, 0x49, 0x02, 0xc7, 0xd7, 0xf6, 0xbb, 0xb1, 0xdc, 0xc1, + 0x56, 0xdd, 0xf9, 0xbd, +}; +static const unsigned char kat610_persstr[] = {0}; +static const unsigned char kat610_addin0[] = {0}; +static const unsigned char kat610_addin1[] = {0}; +static const unsigned char kat610_retbits[] = { + 0xd9, 0x6d, 0x90, 0xac, 0x5a, 0xca, 0xb5, 0x4b, 0xe1, 0x8d, 0xa1, 0x9c, + 0x76, 0x15, 0xb4, 0xce, 0x47, 0x1a, 0x22, 0x41, 0x6f, 0xfe, 0x20, 0x43, + 0xe7, 0x82, 0xbe, 0xb8, 0x85, 0x26, 0x9b, 0xbb, 0xac, 0xe4, 0xc4, 0x16, + 0x05, 0x0c, 0xb4, 0xfb, 0x90, 0x15, 0x8f, 0xda, 0x6d, 0xa5, 0x8b, 0xf8, + 0x66, 0x0e, 0xf9, 0x16, 0x0d, 0x1c, 0x15, 0xfd, 0xd4, 0xc0, 0x67, 0xc5, + 0xc9, 0x8c, 0xcd, 0xb7, +}; +static const struct drbg_kat_no_reseed kat610_t = { + 9, kat610_entropyin, kat610_nonce, kat610_persstr, + kat610_addin0, kat610_addin1, kat610_retbits +}; +static const struct drbg_kat kat610 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat610_t +}; + +static const unsigned char kat611_entropyin[] = { + 0x36, 0x18, 0xb5, 0x63, 0x86, 0xb7, 0xae, 0x61, 0xdf, 0xc1, 0x84, 0x99, + 0x9c, 0xc4, 0x58, 0x7c, 0xf0, 0x7e, 0xda, 0x8b, 0xe8, 0x61, 0xf1, 0xc6, + 0x4a, 0x28, 0xec, 0xb2, 0x87, 0x58, 0x90, 0xd3, +}; +static const unsigned char kat611_nonce[] = { + 0xde, 0xb0, 0x3a, 0xcd, 0x0e, 0xa6, 0xf0, 0x59, 0x15, 0x80, 0xb8, 0xaf, + 0xbc, 0x2f, 0xf8, 0x80, +}; +static const unsigned char kat611_persstr[] = {0}; +static const unsigned char kat611_addin0[] = {0}; +static const unsigned char kat611_addin1[] = {0}; +static const unsigned char kat611_retbits[] = { + 0xf6, 0x05, 0x30, 0x5d, 0x87, 0xf2, 0x09, 0xac, 0x29, 0x3a, 0xb9, 0xc8, + 0xc1, 0xd3, 0x12, 0x84, 0x18, 0xfc, 0xc9, 0x17, 0x5a, 0xec, 0x25, 0x65, + 0x26, 0x5b, 0x1d, 0xac, 0x75, 0xe7, 0xaa, 0x80, 0x57, 0x95, 0x3e, 0x0f, + 0x68, 0x54, 0x80, 0x0f, 0x37, 0xce, 0x40, 0x5e, 0xeb, 0x24, 0x92, 0x7a, + 0xb7, 0x8e, 0x94, 0xfb, 0x69, 0x4b, 0x66, 0x8c, 0xaa, 0xeb, 0xa5, 0x27, + 0x1f, 0xc4, 0x86, 0xf4, +}; +static const struct drbg_kat_no_reseed kat611_t = { + 10, kat611_entropyin, kat611_nonce, kat611_persstr, + kat611_addin0, kat611_addin1, kat611_retbits +}; +static const struct drbg_kat kat611 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat611_t +}; + +static const unsigned char kat612_entropyin[] = { + 0xc0, 0x9c, 0xbd, 0x47, 0x8e, 0x38, 0xc7, 0x52, 0x0c, 0xd9, 0x24, 0x32, + 0xb5, 0xfc, 0xe8, 0xc1, 0x57, 0x58, 0xef, 0x56, 0xc4, 0xe4, 0x57, 0xfd, + 0x4f, 0x2c, 0x97, 0xd5, 0x2e, 0x8f, 0x45, 0x66, +}; +static const unsigned char kat612_nonce[] = { + 0x05, 0x3e, 0xa2, 0x92, 0x36, 0x74, 0x76, 0x41, 0x5d, 0xf7, 0xfe, 0xdb, + 0xf2, 0x5d, 0x69, 0x54, +}; +static const unsigned char kat612_persstr[] = {0}; +static const unsigned char kat612_addin0[] = {0}; +static const unsigned char kat612_addin1[] = {0}; +static const unsigned char kat612_retbits[] = { + 0x00, 0xa8, 0x1e, 0x0b, 0x7d, 0xb1, 0x56, 0x98, 0xb8, 0x9a, 0x75, 0xf5, + 0x61, 0x75, 0xf4, 0x49, 0xdb, 0xc4, 0x21, 0x1b, 0xa3, 0x54, 0xb4, 0x6f, + 0x24, 0x74, 0xac, 0xb5, 0x5d, 0xc1, 0x70, 0xbf, 0x6c, 0x0e, 0xe1, 0x81, + 0xdc, 0xea, 0xc3, 0xda, 0xf5, 0xfc, 0x81, 0xa5, 0x7c, 0x63, 0xdd, 0xc2, + 0x81, 0xcd, 0x24, 0xcd, 0x6e, 0x7f, 0x25, 0xa1, 0xb4, 0x0a, 0xdb, 0x4d, + 0x27, 0xc7, 0x13, 0x19, +}; +static const struct drbg_kat_no_reseed kat612_t = { + 11, kat612_entropyin, kat612_nonce, kat612_persstr, + kat612_addin0, kat612_addin1, kat612_retbits +}; +static const struct drbg_kat kat612 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat612_t +}; + +static const unsigned char kat613_entropyin[] = { + 0x59, 0xef, 0x31, 0xed, 0x68, 0x54, 0x01, 0x6a, 0xb4, 0xab, 0x7c, 0x4a, + 0xf7, 0x2f, 0x5b, 0x16, 0xad, 0x2d, 0x7b, 0x57, 0xa1, 0x8f, 0x79, 0xf8, + 0xf2, 0x9d, 0xe2, 0x6e, 0xe4, 0x20, 0x09, 0x61, +}; +static const unsigned char kat613_nonce[] = { + 0x8e, 0x8d, 0x6f, 0x83, 0x78, 0x63, 0x43, 0x14, 0xf7, 0x2a, 0xe0, 0x57, + 0x99, 0x1a, 0x33, 0x3e, +}; +static const unsigned char kat613_persstr[] = {0}; +static const unsigned char kat613_addin0[] = {0}; +static const unsigned char kat613_addin1[] = {0}; +static const unsigned char kat613_retbits[] = { + 0x1a, 0xcf, 0x34, 0x3f, 0xca, 0x1f, 0x42, 0xd4, 0x7a, 0x11, 0x31, 0xe5, + 0xd1, 0x89, 0x06, 0xb5, 0xb7, 0x3f, 0xff, 0x61, 0x46, 0x12, 0x37, 0x88, + 0x2a, 0x58, 0xbc, 0x5a, 0xdd, 0x75, 0x27, 0xa5, 0xdd, 0x03, 0xd2, 0xb1, + 0x96, 0x7b, 0x70, 0x22, 0x6d, 0x11, 0x19, 0xae, 0x14, 0x35, 0x91, 0x15, + 0x15, 0xe3, 0xea, 0xa6, 0x7a, 0xcf, 0x14, 0x42, 0x14, 0x71, 0x2f, 0xf3, + 0x34, 0x64, 0x90, 0xf2, +}; +static const struct drbg_kat_no_reseed kat613_t = { + 12, kat613_entropyin, kat613_nonce, kat613_persstr, + kat613_addin0, kat613_addin1, kat613_retbits +}; +static const struct drbg_kat kat613 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat613_t +}; + +static const unsigned char kat614_entropyin[] = { + 0x04, 0x13, 0x8e, 0x8f, 0xe8, 0xfe, 0xf7, 0xfe, 0xea, 0xb5, 0x4e, 0xe3, + 0xe5, 0x80, 0x2e, 0x02, 0x7b, 0x1f, 0x39, 0x44, 0x87, 0xca, 0xc3, 0x6d, + 0x1b, 0xb0, 0xf0, 0x52, 0xa7, 0xa1, 0x07, 0x5c, +}; +static const unsigned char kat614_nonce[] = { + 0xd6, 0xb6, 0x48, 0x4d, 0xbb, 0x46, 0x38, 0x9e, 0xdf, 0xc1, 0xac, 0x96, + 0x9e, 0x46, 0x22, 0x14, +}; +static const unsigned char kat614_persstr[] = {0}; +static const unsigned char kat614_addin0[] = {0}; +static const unsigned char kat614_addin1[] = {0}; +static const unsigned char kat614_retbits[] = { + 0x09, 0xf2, 0xc6, 0x86, 0xd9, 0xb0, 0x1d, 0x49, 0xf1, 0x23, 0x48, 0xf1, + 0x2f, 0xf8, 0x32, 0xdb, 0x4e, 0xa9, 0x10, 0x5e, 0xa6, 0xa1, 0x48, 0xfc, + 0xaa, 0xea, 0x32, 0x49, 0x0d, 0x2d, 0x84, 0x3a, 0x28, 0x2c, 0xdc, 0x30, + 0xc0, 0x11, 0x19, 0x1f, 0x8b, 0xa7, 0x7c, 0x22, 0x4c, 0x29, 0x70, 0x12, + 0xe2, 0x61, 0xc8, 0xa7, 0x39, 0xd0, 0x77, 0x72, 0x98, 0xeb, 0x59, 0x1c, + 0x99, 0x02, 0x8c, 0xa5, +}; +static const struct drbg_kat_no_reseed kat614_t = { + 13, kat614_entropyin, kat614_nonce, kat614_persstr, + kat614_addin0, kat614_addin1, kat614_retbits +}; +static const struct drbg_kat kat614 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat614_t +}; + +static const unsigned char kat615_entropyin[] = { + 0x11, 0xb1, 0xa3, 0x07, 0xc2, 0x66, 0xd4, 0x07, 0xc3, 0xab, 0x12, 0xbe, + 0x77, 0x4e, 0xe3, 0x1c, 0xdc, 0x91, 0x8a, 0xe1, 0x4c, 0xd9, 0x8f, 0xcf, + 0x02, 0xc3, 0xac, 0xc8, 0x82, 0xdd, 0xb8, 0x2c, +}; +static const unsigned char kat615_nonce[] = { + 0xe4, 0xef, 0xda, 0xf6, 0xf0, 0x1e, 0xb5, 0x47, 0x5d, 0x82, 0xc9, 0x4e, + 0x12, 0x9a, 0x35, 0xe1, +}; +static const unsigned char kat615_persstr[] = {0}; +static const unsigned char kat615_addin0[] = {0}; +static const unsigned char kat615_addin1[] = {0}; +static const unsigned char kat615_retbits[] = { + 0x6a, 0x52, 0x63, 0x64, 0x4a, 0x10, 0x1e, 0x9f, 0x03, 0xa4, 0x02, 0x60, + 0xa6, 0x8f, 0xa7, 0x27, 0x1a, 0x39, 0x9b, 0xa9, 0x54, 0xfe, 0xe2, 0x30, + 0x61, 0x3a, 0x18, 0xbc, 0x18, 0xcd, 0x5c, 0x54, 0x03, 0xd6, 0x79, 0xc7, + 0x73, 0x5c, 0xb1, 0x67, 0x1b, 0x17, 0x4e, 0x60, 0xed, 0x82, 0x8e, 0x70, + 0x73, 0x77, 0xf5, 0x51, 0x78, 0xbb, 0x53, 0x8b, 0xf4, 0x26, 0x74, 0x53, + 0xe5, 0xc8, 0x5b, 0x97, +}; +static const struct drbg_kat_no_reseed kat615_t = { + 14, kat615_entropyin, kat615_nonce, kat615_persstr, + kat615_addin0, kat615_addin1, kat615_retbits +}; +static const struct drbg_kat kat615 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat615_t +}; + +static const unsigned char kat616_entropyin[] = { + 0x00, 0x1e, 0xc3, 0xb1, 0x92, 0xdd, 0xc7, 0x65, 0x55, 0x3e, 0x15, 0x74, + 0x2d, 0xff, 0xeb, 0x21, 0xcc, 0x7d, 0x97, 0xa4, 0xbc, 0xf8, 0x66, 0xe3, + 0x66, 0x4d, 0x8a, 0x5e, 0xcb, 0x4c, 0x24, 0x63, +}; +static const unsigned char kat616_nonce[] = { + 0x6c, 0xa8, 0x48, 0x65, 0x1d, 0x42, 0x0f, 0xb0, 0x2f, 0x9b, 0x66, 0xf0, + 0x6b, 0x37, 0x7e, 0x59, +}; +static const unsigned char kat616_persstr[] = {0}; +static const unsigned char kat616_addin0[] = { + 0x99, 0xf1, 0x39, 0xab, 0x5e, 0xe4, 0xf7, 0xee, 0xd6, 0x14, 0x8e, 0x82, + 0xd7, 0x9a, 0xd5, 0xf2, 0xb9, 0xfa, 0x63, 0x8d, 0x57, 0x4e, 0x5d, 0xb7, + 0x9b, 0x65, 0x0c, 0x0e, 0x68, 0x2c, 0xa4, 0x66, +}; +static const unsigned char kat616_addin1[] = { + 0x6e, 0x7b, 0xf0, 0xae, 0x28, 0xa7, 0x97, 0xcc, 0xbb, 0x47, 0x10, 0x1f, + 0x26, 0xbf, 0xe5, 0xa0, 0xb1, 0xe4, 0x50, 0xc5, 0x7a, 0xed, 0xf7, 0x31, + 0x27, 0x24, 0x11, 0xfa, 0x7b, 0x6c, 0x4e, 0xd4, +}; +static const unsigned char kat616_retbits[] = { + 0x86, 0x5b, 0x6d, 0xd4, 0x36, 0x3c, 0x59, 0x40, 0xd6, 0x22, 0x8c, 0xc9, + 0x0b, 0xa8, 0xf1, 0xa2, 0x1e, 0xfb, 0xaa, 0x99, 0xb0, 0xc7, 0xb3, 0x73, + 0x61, 0xf7, 0xfe, 0xd7, 0xe9, 0x69, 0xa9, 0x7b, 0x68, 0xd5, 0x50, 0xdd, + 0x6a, 0xd4, 0xbb, 0xfa, 0xf6, 0x62, 0x67, 0x79, 0xbf, 0xb4, 0x3c, 0x66, + 0x84, 0x5c, 0x29, 0x23, 0xdf, 0x9f, 0x55, 0x30, 0x7c, 0x8b, 0xc9, 0xf0, + 0xa3, 0x87, 0x2f, 0xa7, +}; +static const struct drbg_kat_no_reseed kat616_t = { + 0, kat616_entropyin, kat616_nonce, kat616_persstr, + kat616_addin0, kat616_addin1, kat616_retbits +}; +static const struct drbg_kat kat616 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat616_t +}; + +static const unsigned char kat617_entropyin[] = { + 0x53, 0xaa, 0x66, 0x68, 0xd0, 0x6d, 0x2b, 0xdb, 0x4a, 0xca, 0x98, 0x9d, + 0x29, 0x4d, 0x68, 0xb0, 0x00, 0x36, 0xe1, 0xb4, 0x66, 0xd1, 0x55, 0x31, + 0x86, 0xb9, 0xed, 0xa9, 0xde, 0x69, 0x3a, 0x68, +}; +static const unsigned char kat617_nonce[] = { + 0xb7, 0x7d, 0x9b, 0x74, 0x57, 0x47, 0x31, 0xdc, 0xd9, 0x6a, 0xed, 0x38, + 0x35, 0x05, 0x27, 0x6d, +}; +static const unsigned char kat617_persstr[] = {0}; +static const unsigned char kat617_addin0[] = { + 0x0e, 0x00, 0x58, 0x9f, 0x59, 0x26, 0xad, 0x32, 0xa0, 0xac, 0xb3, 0x37, + 0xef, 0xb6, 0x1d, 0x0f, 0x8b, 0x6c, 0x4f, 0x25, 0x26, 0xea, 0x6d, 0x1a, + 0xaa, 0x20, 0x23, 0xd3, 0x93, 0xb0, 0xf9, 0x22, +}; +static const unsigned char kat617_addin1[] = { + 0x70, 0x40, 0x4e, 0x72, 0x9a, 0x59, 0x6e, 0x11, 0xc5, 0xd1, 0x4a, 0xb9, + 0xe4, 0x35, 0xd5, 0x0e, 0x47, 0xaf, 0xb7, 0x35, 0xd5, 0x58, 0x29, 0x3a, + 0x8d, 0x11, 0x97, 0xcb, 0xf8, 0x54, 0x36, 0xfe, +}; +static const unsigned char kat617_retbits[] = { + 0xb8, 0x37, 0x78, 0xfb, 0x3f, 0xe1, 0x6b, 0xfa, 0x43, 0x23, 0x0a, 0xc1, + 0x01, 0xc9, 0xb3, 0x81, 0x68, 0x27, 0xf5, 0x50, 0x0c, 0x65, 0x06, 0x02, + 0x98, 0xd5, 0x8b, 0xd4, 0xfa, 0xcb, 0x17, 0xa0, 0x62, 0xee, 0x03, 0x98, + 0x1e, 0x6d, 0x19, 0xeb, 0x2c, 0x98, 0x51, 0xfb, 0x00, 0xae, 0x2b, 0x4b, + 0xc5, 0x17, 0xee, 0x33, 0x8e, 0xf5, 0x98, 0x06, 0xe3, 0xc8, 0xb0, 0xb9, + 0x9f, 0xb6, 0x7a, 0x31, +}; +static const struct drbg_kat_no_reseed kat617_t = { + 1, kat617_entropyin, kat617_nonce, kat617_persstr, + kat617_addin0, kat617_addin1, kat617_retbits +}; +static const struct drbg_kat kat617 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat617_t +}; + +static const unsigned char kat618_entropyin[] = { + 0x3d, 0x38, 0x73, 0x6b, 0x9f, 0x03, 0xdd, 0x30, 0x6b, 0x10, 0xd5, 0xbb, + 0x91, 0xc1, 0x6b, 0x16, 0x1e, 0xb4, 0xb6, 0xf0, 0x54, 0xd2, 0xbc, 0x4d, + 0x56, 0x1a, 0x93, 0x98, 0x50, 0xc0, 0x40, 0xea, +}; +static const unsigned char kat618_nonce[] = { + 0xa0, 0xd0, 0xc1, 0x88, 0xcb, 0x2f, 0x32, 0xa3, 0x12, 0x74, 0x89, 0xb7, + 0x4b, 0x83, 0xae, 0x78, +}; +static const unsigned char kat618_persstr[] = {0}; +static const unsigned char kat618_addin0[] = { + 0x37, 0xcf, 0xe2, 0xab, 0xe1, 0x90, 0x6a, 0x58, 0x9c, 0xdc, 0x67, 0x1e, + 0x01, 0xb5, 0x0e, 0xca, 0x78, 0xb4, 0x27, 0x02, 0xe8, 0x4e, 0x08, 0x8d, + 0xbf, 0xd2, 0x1c, 0x22, 0xe0, 0x43, 0x2e, 0x46, +}; +static const unsigned char kat618_addin1[] = { + 0x2f, 0x1f, 0x52, 0x3b, 0x30, 0x5b, 0xbe, 0x79, 0x9a, 0x92, 0x0a, 0x65, + 0x7a, 0xb3, 0x6f, 0xf4, 0x20, 0x71, 0x88, 0x99, 0x8f, 0x6c, 0x7c, 0xd3, + 0x9b, 0xe4, 0xfc, 0x5d, 0x06, 0x93, 0xa0, 0x70, +}; +static const unsigned char kat618_retbits[] = { + 0xdc, 0x1a, 0x5b, 0x28, 0xe1, 0x9e, 0xf8, 0x9c, 0x86, 0x9e, 0xa6, 0x95, + 0xf7, 0xd9, 0xa5, 0x79, 0xf6, 0x17, 0xd0, 0x92, 0x3b, 0xd0, 0x64, 0x11, + 0x35, 0xa0, 0x6a, 0x86, 0xe0, 0x11, 0x75, 0x1c, 0xbc, 0x2d, 0x9f, 0x2f, + 0xa2, 0x61, 0x2c, 0x3e, 0x6a, 0x2a, 0xff, 0x53, 0x8c, 0x64, 0x53, 0x80, + 0xa6, 0x18, 0xf1, 0xf1, 0x8f, 0xbd, 0x98, 0x7a, 0xe9, 0xf4, 0xff, 0x1d, + 0x70, 0x47, 0x49, 0xf7, +}; +static const struct drbg_kat_no_reseed kat618_t = { + 2, kat618_entropyin, kat618_nonce, kat618_persstr, + kat618_addin0, kat618_addin1, kat618_retbits +}; +static const struct drbg_kat kat618 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat618_t +}; + +static const unsigned char kat619_entropyin[] = { + 0x89, 0xf2, 0x09, 0xa7, 0xd8, 0xce, 0x9f, 0x93, 0x68, 0xf9, 0x47, 0x1a, + 0x33, 0xbf, 0x7b, 0x46, 0x9e, 0xf8, 0x0f, 0x99, 0x4c, 0xa5, 0xbf, 0xfa, + 0xaa, 0x18, 0xf1, 0x63, 0xa4, 0x50, 0x3d, 0x97, +}; +static const unsigned char kat619_nonce[] = { + 0x37, 0x65, 0x56, 0x04, 0xc0, 0x45, 0xca, 0x1f, 0x52, 0x69, 0x41, 0xa0, + 0x50, 0xa2, 0xa7, 0x8e, +}; +static const unsigned char kat619_persstr[] = {0}; +static const unsigned char kat619_addin0[] = { + 0x1d, 0x24, 0xe7, 0xe3, 0xbc, 0xb7, 0x70, 0x9a, 0xb1, 0x80, 0x73, 0x4b, + 0xd1, 0x2f, 0x45, 0x54, 0xa2, 0x30, 0x3a, 0x38, 0xa8, 0x35, 0x51, 0xd9, + 0x45, 0x4f, 0xe0, 0x45, 0xab, 0xea, 0x54, 0x25, +}; +static const unsigned char kat619_addin1[] = { + 0x15, 0x64, 0x6b, 0x33, 0x1b, 0x80, 0x8d, 0xc9, 0x71, 0xdd, 0x2b, 0xc9, + 0xca, 0xf8, 0x03, 0x0b, 0x57, 0x08, 0x5f, 0x8d, 0xd6, 0x2c, 0x4b, 0xfb, + 0x28, 0x11, 0x0c, 0x75, 0x97, 0x7d, 0xd1, 0xd0, +}; +static const unsigned char kat619_retbits[] = { + 0x59, 0xac, 0x0b, 0x9b, 0xbd, 0x27, 0x99, 0xb0, 0x80, 0x85, 0x27, 0xa8, + 0x50, 0xb9, 0x98, 0xee, 0x3d, 0x6b, 0x7a, 0xec, 0xdb, 0xa3, 0x40, 0xf1, + 0x7b, 0x68, 0x22, 0x09, 0x22, 0x2b, 0x67, 0x83, 0xcf, 0x9a, 0x48, 0xec, + 0x45, 0xca, 0xf4, 0x04, 0x46, 0xae, 0x37, 0xe9, 0x53, 0x98, 0x99, 0x41, + 0x0c, 0xb6, 0x3f, 0x79, 0xb3, 0x14, 0xd3, 0xb2, 0xb8, 0x33, 0xb5, 0x4c, + 0x26, 0xa2, 0xca, 0xbc, +}; +static const struct drbg_kat_no_reseed kat619_t = { + 3, kat619_entropyin, kat619_nonce, kat619_persstr, + kat619_addin0, kat619_addin1, kat619_retbits +}; +static const struct drbg_kat kat619 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat619_t +}; + +static const unsigned char kat620_entropyin[] = { + 0x0b, 0xee, 0x49, 0x37, 0xa0, 0x71, 0xfd, 0x93, 0x9f, 0x00, 0x07, 0xc3, + 0xce, 0x3a, 0xbe, 0xf4, 0x3f, 0xfa, 0x3b, 0xd0, 0xe0, 0x5e, 0xfc, 0x01, + 0x90, 0xed, 0x5f, 0x2a, 0x2d, 0x64, 0x47, 0x78, +}; +static const unsigned char kat620_nonce[] = { + 0xc5, 0x4f, 0x6c, 0xf1, 0x0f, 0x64, 0x54, 0xc6, 0x9b, 0x66, 0x7b, 0x64, + 0x16, 0xad, 0xcd, 0x6f, +}; +static const unsigned char kat620_persstr[] = {0}; +static const unsigned char kat620_addin0[] = { + 0x4d, 0x84, 0x2e, 0x42, 0x6b, 0x64, 0xe9, 0x42, 0x2e, 0x7f, 0x77, 0xf6, + 0x00, 0x9c, 0x11, 0x57, 0x57, 0x08, 0x32, 0x23, 0x5b, 0xe6, 0x5d, 0x33, + 0x69, 0x53, 0x0f, 0x29, 0x9f, 0xbf, 0xc8, 0x2e, +}; +static const unsigned char kat620_addin1[] = { + 0x72, 0x7e, 0x31, 0xe8, 0x39, 0xa7, 0x87, 0x5b, 0x65, 0x4b, 0xcf, 0x1a, + 0x54, 0x28, 0xd8, 0xaf, 0x90, 0x0e, 0x5a, 0xa4, 0x06, 0x36, 0xaa, 0x80, + 0xfd, 0x85, 0x1c, 0x33, 0x78, 0x7c, 0xab, 0xf3, +}; +static const unsigned char kat620_retbits[] = { + 0x5a, 0x63, 0xf6, 0x62, 0x53, 0x0b, 0xb2, 0xec, 0x41, 0x62, 0xf7, 0x52, + 0x36, 0x15, 0x30, 0xcc, 0x8d, 0x5c, 0x89, 0x05, 0x87, 0xd2, 0x26, 0xb2, + 0x0f, 0x14, 0x2b, 0xae, 0x2a, 0x2d, 0xbd, 0x69, 0x47, 0x80, 0xd2, 0xa5, + 0x55, 0x53, 0xb0, 0x35, 0xcd, 0x35, 0x52, 0xba, 0xb0, 0xfa, 0xf9, 0x4e, + 0x63, 0x89, 0x53, 0x30, 0x0e, 0xa9, 0x50, 0x87, 0xa7, 0x32, 0xc9, 0x48, + 0x9e, 0xa4, 0x1e, 0xac, +}; +static const struct drbg_kat_no_reseed kat620_t = { + 4, kat620_entropyin, kat620_nonce, kat620_persstr, + kat620_addin0, kat620_addin1, kat620_retbits +}; +static const struct drbg_kat kat620 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat620_t +}; + +static const unsigned char kat621_entropyin[] = { + 0x26, 0x9d, 0xe0, 0xa0, 0x01, 0x9b, 0x68, 0x51, 0x02, 0x95, 0x3c, 0x21, + 0xd4, 0xd4, 0x82, 0x5e, 0xe0, 0x0f, 0xdb, 0x77, 0x4c, 0x7c, 0xa7, 0x21, + 0xf1, 0xf3, 0xcc, 0x1a, 0x22, 0x20, 0xcc, 0x98, +}; +static const unsigned char kat621_nonce[] = { + 0xe1, 0x08, 0x06, 0xc0, 0xd8, 0xb9, 0x17, 0x5f, 0x22, 0xfc, 0x96, 0xc7, + 0xd7, 0x7d, 0xfd, 0xfc, +}; +static const unsigned char kat621_persstr[] = {0}; +static const unsigned char kat621_addin0[] = { + 0x18, 0x5e, 0xa8, 0x97, 0xe2, 0x52, 0x36, 0x05, 0x86, 0xb3, 0x9b, 0x5a, + 0x2e, 0x3e, 0x12, 0xbb, 0x30, 0x88, 0x5b, 0x99, 0xba, 0x06, 0x8d, 0x10, + 0xac, 0x7d, 0xfd, 0xfc, 0x26, 0x3e, 0xbc, 0xd5, +}; +static const unsigned char kat621_addin1[] = { + 0x25, 0x9b, 0xac, 0x2e, 0x62, 0xda, 0x63, 0x89, 0xbf, 0x6a, 0x5a, 0xb3, + 0x44, 0x17, 0x7c, 0xa1, 0x6b, 0xa5, 0xaf, 0xe7, 0x75, 0x5b, 0x5a, 0x5b, + 0xb4, 0xb9, 0x4b, 0x3e, 0xcc, 0x6a, 0x8f, 0x7b, +}; +static const unsigned char kat621_retbits[] = { + 0x18, 0x1c, 0x99, 0x5f, 0x85, 0x92, 0x38, 0x4d, 0xfb, 0x56, 0x5a, 0xeb, + 0x11, 0x49, 0x44, 0x2b, 0x87, 0x1b, 0xe2, 0x9a, 0xaa, 0x32, 0x40, 0x47, + 0xb1, 0x25, 0x64, 0x62, 0x2b, 0xc1, 0xae, 0x7d, 0x38, 0x2c, 0x06, 0xaa, + 0xb3, 0xb2, 0xaa, 0x6d, 0x3c, 0xe1, 0x51, 0xaa, 0x17, 0x11, 0xf1, 0x6d, + 0x58, 0x7a, 0x03, 0x66, 0x23, 0x63, 0x0f, 0xef, 0xbb, 0x69, 0xcc, 0x15, + 0x38, 0xb4, 0x45, 0x1a, +}; +static const struct drbg_kat_no_reseed kat621_t = { + 5, kat621_entropyin, kat621_nonce, kat621_persstr, + kat621_addin0, kat621_addin1, kat621_retbits +}; +static const struct drbg_kat kat621 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat621_t +}; + +static const unsigned char kat622_entropyin[] = { + 0x92, 0xdf, 0x43, 0x3d, 0xef, 0x81, 0xe1, 0xd7, 0x29, 0x88, 0xd2, 0x95, + 0xa5, 0x6a, 0x67, 0x9d, 0x0e, 0x61, 0x5b, 0x55, 0x08, 0xc9, 0x6c, 0x75, + 0xad, 0x5d, 0x22, 0xd8, 0xca, 0xa5, 0x25, 0xbb, +}; +static const unsigned char kat622_nonce[] = { + 0x71, 0xbd, 0xbd, 0x0b, 0x0b, 0xc5, 0xb1, 0xf0, 0x3e, 0xbe, 0xd3, 0x00, + 0x66, 0x76, 0x85, 0x86, +}; +static const unsigned char kat622_persstr[] = {0}; +static const unsigned char kat622_addin0[] = { + 0x06, 0x08, 0x30, 0xec, 0xbb, 0x10, 0xc3, 0xfc, 0x18, 0xe7, 0x8d, 0x0e, + 0x8f, 0x12, 0xa6, 0x51, 0x02, 0xd1, 0xff, 0x8b, 0x37, 0xf8, 0x99, 0xe5, + 0x44, 0x5b, 0x5a, 0x03, 0x63, 0xa1, 0x18, 0x4f, +}; +static const unsigned char kat622_addin1[] = { + 0x62, 0x8c, 0x96, 0xa7, 0xf5, 0x62, 0x03, 0x4d, 0x05, 0x6a, 0x4f, 0xec, + 0x0b, 0xfa, 0x2e, 0x9f, 0x0c, 0xcb, 0x6b, 0xe9, 0xcd, 0x33, 0xc6, 0x22, + 0x41, 0xa5, 0x07, 0xfd, 0xda, 0x00, 0x7f, 0x81, +}; +static const unsigned char kat622_retbits[] = { + 0x09, 0xc4, 0x50, 0x31, 0x89, 0x57, 0xe2, 0x9f, 0x09, 0xe1, 0x5b, 0xd3, + 0xb0, 0x1c, 0x1d, 0x50, 0x2b, 0xbe, 0x90, 0x96, 0xf4, 0x0a, 0xa9, 0x51, + 0x73, 0x3a, 0xb8, 0xf7, 0xc0, 0x36, 0x30, 0x53, 0xca, 0x45, 0xbf, 0x81, + 0x9a, 0x02, 0xf3, 0xe1, 0x9e, 0x8f, 0xd8, 0x0c, 0xc0, 0x47, 0x09, 0xce, + 0x07, 0xa6, 0xb5, 0x80, 0x9b, 0xa8, 0xf7, 0x48, 0x6e, 0x14, 0xab, 0x95, + 0xce, 0xd2, 0xe0, 0x87, +}; +static const struct drbg_kat_no_reseed kat622_t = { + 6, kat622_entropyin, kat622_nonce, kat622_persstr, + kat622_addin0, kat622_addin1, kat622_retbits +}; +static const struct drbg_kat kat622 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat622_t +}; + +static const unsigned char kat623_entropyin[] = { + 0x39, 0x34, 0x15, 0xa3, 0x28, 0xe2, 0x10, 0x93, 0xbb, 0x34, 0xeb, 0xb0, + 0x81, 0x97, 0xd2, 0x13, 0x94, 0xe2, 0x6e, 0x43, 0xd8, 0x2c, 0x1d, 0x2a, + 0xbf, 0xbd, 0xd4, 0x6a, 0x16, 0x5c, 0x27, 0xa8, +}; +static const unsigned char kat623_nonce[] = { + 0xae, 0xe4, 0x9e, 0x30, 0x28, 0xd4, 0x07, 0x58, 0xb3, 0xf4, 0x2f, 0xd6, + 0xb8, 0xe6, 0x8b, 0xef, +}; +static const unsigned char kat623_persstr[] = {0}; +static const unsigned char kat623_addin0[] = { + 0xd5, 0x3d, 0xc5, 0xa6, 0x12, 0xcd, 0x15, 0x4a, 0xde, 0x83, 0xaf, 0xc0, + 0x00, 0x93, 0x3a, 0xd8, 0x8a, 0xed, 0xb8, 0x24, 0xa0, 0x2e, 0x2f, 0xd9, + 0x7a, 0x86, 0x97, 0xbe, 0x56, 0xda, 0x48, 0xb1, +}; +static const unsigned char kat623_addin1[] = { + 0xbd, 0xa3, 0x92, 0xc5, 0x79, 0xac, 0x3d, 0x33, 0xd6, 0xc7, 0xb9, 0x45, + 0x5d, 0x6b, 0x8e, 0x71, 0x27, 0x84, 0x9b, 0x5a, 0x18, 0x6b, 0xf0, 0x06, + 0x0a, 0x3a, 0xf1, 0xe8, 0x30, 0x1e, 0xaf, 0x67, +}; +static const unsigned char kat623_retbits[] = { + 0x5c, 0x33, 0x1c, 0xcc, 0xbc, 0x93, 0x52, 0x2f, 0xc8, 0x3f, 0x4c, 0xe8, + 0xc2, 0x2f, 0xff, 0x78, 0x1e, 0xe6, 0xe7, 0xd3, 0x82, 0x14, 0x1c, 0xce, + 0x7f, 0x0e, 0xfe, 0xe5, 0x68, 0x35, 0xf7, 0x80, 0x26, 0x5a, 0x4b, 0xe5, + 0x3c, 0x54, 0x12, 0xf9, 0x80, 0x83, 0x2a, 0xed, 0x12, 0xce, 0x88, 0x7c, + 0xf1, 0x5d, 0x28, 0x1a, 0xaa, 0x64, 0x93, 0x3c, 0x51, 0x27, 0xe1, 0x44, + 0x20, 0x97, 0x90, 0x36, +}; +static const struct drbg_kat_no_reseed kat623_t = { + 7, kat623_entropyin, kat623_nonce, kat623_persstr, + kat623_addin0, kat623_addin1, kat623_retbits +}; +static const struct drbg_kat kat623 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat623_t +}; + +static const unsigned char kat624_entropyin[] = { + 0xb7, 0xc3, 0xac, 0xfb, 0xfd, 0xff, 0x34, 0x42, 0xef, 0x1c, 0x79, 0xf4, + 0xac, 0x90, 0xc9, 0x92, 0x3c, 0x3f, 0x90, 0xd9, 0xbf, 0x1b, 0x02, 0xa3, + 0xca, 0x73, 0xb9, 0xb5, 0x60, 0xa6, 0x9e, 0x8c, +}; +static const unsigned char kat624_nonce[] = { + 0x9e, 0xaf, 0xc9, 0x73, 0x76, 0x01, 0x47, 0xdb, 0x55, 0x05, 0x74, 0x5a, + 0x70, 0x4b, 0xa0, 0x56, +}; +static const unsigned char kat624_persstr[] = {0}; +static const unsigned char kat624_addin0[] = { + 0xb3, 0xaf, 0xa7, 0x63, 0xbd, 0xb6, 0xcf, 0x2f, 0xf7, 0x90, 0xa5, 0x27, + 0x1e, 0xe6, 0x9d, 0xd0, 0xd7, 0xb3, 0x55, 0x4b, 0x63, 0x77, 0x52, 0x6c, + 0x46, 0x8c, 0x50, 0xc1, 0x55, 0x05, 0xce, 0x7c, +}; +static const unsigned char kat624_addin1[] = { + 0x53, 0x81, 0x09, 0xfe, 0xb9, 0x58, 0xe5, 0x2d, 0x31, 0xe8, 0xfb, 0xb2, + 0xc2, 0x6a, 0x10, 0x37, 0xfb, 0x11, 0xff, 0xb9, 0xc2, 0xb2, 0x55, 0x9d, + 0x18, 0xf8, 0x41, 0xa8, 0x37, 0xf8, 0xa6, 0x9d, +}; +static const unsigned char kat624_retbits[] = { + 0xe3, 0xd3, 0x02, 0x19, 0xe1, 0xc4, 0xc9, 0x69, 0x04, 0x97, 0xce, 0xde, + 0xcf, 0xf7, 0xab, 0xb4, 0x25, 0x14, 0xe9, 0xfa, 0x05, 0x91, 0xb3, 0x66, + 0x9c, 0xf6, 0x70, 0x04, 0xc0, 0xe2, 0x01, 0x69, 0x12, 0x9c, 0x09, 0xc7, + 0xe6, 0x04, 0xf9, 0xac, 0x67, 0xcc, 0x22, 0x04, 0xe3, 0x29, 0x31, 0xca, + 0x19, 0x14, 0xae, 0x18, 0xb6, 0x52, 0xbf, 0xde, 0x98, 0xf5, 0x3e, 0xb4, + 0xc1, 0xd4, 0x06, 0xa3, +}; +static const struct drbg_kat_no_reseed kat624_t = { + 8, kat624_entropyin, kat624_nonce, kat624_persstr, + kat624_addin0, kat624_addin1, kat624_retbits +}; +static const struct drbg_kat kat624 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat624_t +}; + +static const unsigned char kat625_entropyin[] = { + 0xd3, 0xea, 0xbe, 0x6b, 0xe4, 0xd1, 0x74, 0x69, 0xdd, 0x74, 0x87, 0x18, + 0x17, 0xe1, 0x74, 0x86, 0xe8, 0x98, 0xc8, 0xe6, 0x5f, 0x36, 0x9a, 0xd6, + 0xe3, 0x8b, 0x41, 0xaa, 0x22, 0xa5, 0xbd, 0x27, +}; +static const unsigned char kat625_nonce[] = { + 0x06, 0x7d, 0x66, 0x10, 0x71, 0x7a, 0x8f, 0xfb, 0xf8, 0xdb, 0xf9, 0x40, + 0x5e, 0x7f, 0x15, 0xcf, +}; +static const unsigned char kat625_persstr[] = {0}; +static const unsigned char kat625_addin0[] = { + 0x91, 0x1a, 0xb9, 0xc5, 0x75, 0x3c, 0x5d, 0x70, 0x93, 0xaf, 0x43, 0x16, + 0xd7, 0xd5, 0xc0, 0x3a, 0x2b, 0x97, 0x1d, 0xb8, 0xcf, 0x7b, 0x0c, 0x58, + 0xcb, 0x7f, 0xd8, 0xd5, 0xb9, 0xd8, 0xe0, 0x1b, +}; +static const unsigned char kat625_addin1[] = { + 0x49, 0x53, 0x5f, 0xc0, 0xba, 0x86, 0x3d, 0xaf, 0x3b, 0x29, 0xdd, 0x8e, + 0x8d, 0x56, 0xf2, 0x06, 0x50, 0x8a, 0xe7, 0xb0, 0xc3, 0x43, 0x7a, 0x41, + 0x84, 0x7a, 0xea, 0x77, 0x18, 0x4b, 0x3e, 0x13, +}; +static const unsigned char kat625_retbits[] = { + 0xec, 0x4b, 0xe9, 0xf3, 0xab, 0x19, 0x67, 0xe5, 0xbf, 0x96, 0x3f, 0xe3, + 0xca, 0xc8, 0x73, 0xc6, 0xcd, 0x87, 0xd9, 0x1a, 0x8a, 0x9d, 0x20, 0xe6, + 0xfd, 0x5f, 0x64, 0x18, 0xa3, 0x97, 0x2b, 0xfc, 0x1b, 0x9f, 0xcd, 0xa3, + 0xab, 0x35, 0x9e, 0xb7, 0x7b, 0x85, 0x85, 0x2d, 0x78, 0xa2, 0xa4, 0x8f, + 0xca, 0x43, 0x6e, 0x3a, 0xdf, 0x1b, 0x45, 0x0f, 0x27, 0x04, 0x5e, 0xba, + 0x6b, 0x2f, 0x1d, 0x6d, +}; +static const struct drbg_kat_no_reseed kat625_t = { + 9, kat625_entropyin, kat625_nonce, kat625_persstr, + kat625_addin0, kat625_addin1, kat625_retbits +}; +static const struct drbg_kat kat625 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat625_t +}; + +static const unsigned char kat626_entropyin[] = { + 0xf4, 0x6b, 0x8c, 0x14, 0x80, 0x4b, 0x70, 0x3b, 0x93, 0x87, 0x47, 0x65, + 0x10, 0xd8, 0xa6, 0x50, 0xc0, 0x32, 0xdf, 0xe9, 0x83, 0x7b, 0xc4, 0xac, + 0xc3, 0xac, 0x40, 0xfc, 0xab, 0xcd, 0x79, 0xc8, +}; +static const unsigned char kat626_nonce[] = { + 0x6a, 0x06, 0x15, 0x2e, 0x43, 0x83, 0xb2, 0x12, 0x8d, 0x42, 0x92, 0xcd, + 0x24, 0xd6, 0xf2, 0xd6, +}; +static const unsigned char kat626_persstr[] = {0}; +static const unsigned char kat626_addin0[] = { + 0x7e, 0xce, 0x8c, 0x73, 0xb7, 0x0b, 0x80, 0xcc, 0x28, 0xf4, 0xd7, 0xb5, + 0xc1, 0x7e, 0xdd, 0xf8, 0x15, 0x0c, 0x62, 0x33, 0xe6, 0xa3, 0x27, 0x47, + 0x29, 0x66, 0x57, 0x86, 0xf3, 0x5f, 0x4b, 0xab, +}; +static const unsigned char kat626_addin1[] = { + 0x9e, 0xcf, 0x34, 0x1b, 0x59, 0xc1, 0xe0, 0x23, 0x95, 0xda, 0xba, 0x3f, + 0xaa, 0xe6, 0xf4, 0x36, 0x60, 0xb9, 0x87, 0x91, 0xd5, 0x55, 0xab, 0xa1, + 0xd8, 0x10, 0x96, 0x15, 0x43, 0x2a, 0x7b, 0x81, +}; +static const unsigned char kat626_retbits[] = { + 0xd2, 0xf8, 0x97, 0x6d, 0xdb, 0xe8, 0xc6, 0x1f, 0xb7, 0x20, 0x59, 0xac, + 0x6e, 0xfa, 0x8f, 0x2b, 0xc9, 0x68, 0x8b, 0x68, 0xe4, 0xbe, 0x46, 0x40, + 0xa2, 0x02, 0xb5, 0xdf, 0xa1, 0x1d, 0x75, 0x52, 0xd4, 0xf8, 0x9c, 0xe7, + 0xbc, 0x81, 0x34, 0xc9, 0x8d, 0xf5, 0x3c, 0xd0, 0x56, 0xf6, 0x33, 0x4f, + 0xcb, 0xac, 0xe2, 0xdc, 0xc3, 0xd6, 0x4b, 0xf3, 0x55, 0x3e, 0xd9, 0x05, + 0xff, 0xc4, 0x28, 0xbc, +}; +static const struct drbg_kat_no_reseed kat626_t = { + 10, kat626_entropyin, kat626_nonce, kat626_persstr, + kat626_addin0, kat626_addin1, kat626_retbits +}; +static const struct drbg_kat kat626 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat626_t +}; + +static const unsigned char kat627_entropyin[] = { + 0x02, 0x7d, 0x70, 0x1b, 0x53, 0x1e, 0x61, 0x8c, 0xe1, 0xb3, 0x64, 0x91, + 0xb2, 0x5d, 0x96, 0x7d, 0x6d, 0x3d, 0xcd, 0xa0, 0x14, 0x5e, 0x9e, 0x56, + 0x49, 0xb3, 0x69, 0x8a, 0x37, 0x4a, 0x7b, 0x2e, +}; +static const unsigned char kat627_nonce[] = { + 0x44, 0xa5, 0x09, 0xef, 0x42, 0x08, 0x66, 0x09, 0x8c, 0x3e, 0x0f, 0x4a, + 0xbf, 0xe7, 0x3f, 0x21, +}; +static const unsigned char kat627_persstr[] = {0}; +static const unsigned char kat627_addin0[] = { + 0x50, 0x52, 0xae, 0xed, 0x2c, 0x37, 0xd7, 0x6a, 0xbb, 0xe9, 0x33, 0x83, + 0x16, 0x7d, 0x25, 0x6c, 0xd1, 0xb4, 0x93, 0xa1, 0xb6, 0xb4, 0x24, 0xda, + 0x50, 0x40, 0x71, 0x97, 0xe9, 0x12, 0x19, 0xf5, +}; +static const unsigned char kat627_addin1[] = { + 0xa7, 0xcb, 0x70, 0xc5, 0x29, 0xfd, 0xf6, 0x1a, 0xa3, 0x04, 0xcb, 0xba, + 0x1f, 0x39, 0x7a, 0xf4, 0x10, 0x7a, 0x6e, 0x41, 0x39, 0xa3, 0x60, 0x14, + 0xe5, 0x4c, 0x7a, 0x41, 0x1d, 0x87, 0x2d, 0x8f, +}; +static const unsigned char kat627_retbits[] = { + 0xbd, 0x11, 0x62, 0x0a, 0xde, 0x95, 0x56, 0x9f, 0x4e, 0x1c, 0xef, 0x6d, + 0xa8, 0xd8, 0x64, 0x5d, 0xd8, 0x27, 0x48, 0x1e, 0xa4, 0x2e, 0xf9, 0x82, + 0xe2, 0x11, 0x76, 0x1b, 0xe4, 0xfa, 0x9a, 0xae, 0xe9, 0x2f, 0x30, 0xde, + 0xd2, 0x68, 0xaa, 0x7a, 0xc9, 0x27, 0x07, 0xd0, 0xd6, 0x48, 0xa2, 0xe2, + 0xae, 0xc5, 0x30, 0xa4, 0x84, 0x94, 0xd2, 0x69, 0x9b, 0x3a, 0x3f, 0xd7, + 0x39, 0xda, 0x20, 0x9a, +}; +static const struct drbg_kat_no_reseed kat627_t = { + 11, kat627_entropyin, kat627_nonce, kat627_persstr, + kat627_addin0, kat627_addin1, kat627_retbits +}; +static const struct drbg_kat kat627 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat627_t +}; + +static const unsigned char kat628_entropyin[] = { + 0x73, 0x42, 0xd6, 0x94, 0xe0, 0x8b, 0xd0, 0xbb, 0x7b, 0xa9, 0x17, 0x11, + 0x87, 0x98, 0x33, 0x9e, 0x36, 0xb9, 0xb3, 0x0e, 0x1f, 0x1d, 0x03, 0x44, + 0xe6, 0xf8, 0x53, 0x2c, 0xd4, 0x2d, 0x58, 0xa8, +}; +static const unsigned char kat628_nonce[] = { + 0xec, 0xea, 0xbd, 0x4c, 0x87, 0x43, 0x56, 0xb3, 0xb3, 0x0a, 0xfb, 0xad, + 0xdc, 0xe2, 0x32, 0xba, +}; +static const unsigned char kat628_persstr[] = {0}; +static const unsigned char kat628_addin0[] = { + 0x15, 0x83, 0x1e, 0x1f, 0xc3, 0x0e, 0xf5, 0x2c, 0x79, 0x05, 0x02, 0x67, + 0x24, 0x0b, 0x74, 0x64, 0xa7, 0x7f, 0xfb, 0x90, 0xaa, 0x56, 0x81, 0x38, + 0x37, 0x9a, 0x4e, 0x77, 0x70, 0x81, 0xe2, 0xbb, +}; +static const unsigned char kat628_addin1[] = { + 0x47, 0x7c, 0xd2, 0xcb, 0x4c, 0x80, 0xf3, 0xd1, 0x68, 0x16, 0xce, 0x2a, + 0xf1, 0xc3, 0x92, 0x0f, 0x20, 0x17, 0xf2, 0xd4, 0xeb, 0x48, 0x2a, 0xd2, + 0xa5, 0x86, 0x8a, 0xc4, 0x0a, 0x0e, 0x31, 0xc2, +}; +static const unsigned char kat628_retbits[] = { + 0x56, 0x66, 0x30, 0xa2, 0x2c, 0x26, 0xf9, 0x26, 0xf1, 0x3f, 0x30, 0xba, + 0xc8, 0xc2, 0xf9, 0x53, 0xde, 0xeb, 0x2a, 0xd9, 0x0f, 0xac, 0xd3, 0xcd, + 0xc8, 0x8b, 0x3f, 0x44, 0xfc, 0xee, 0x53, 0xfb, 0x1e, 0xcf, 0x13, 0xf3, + 0x78, 0x04, 0xad, 0x88, 0x9a, 0x70, 0x52, 0xb5, 0xfd, 0x7e, 0xe9, 0x28, + 0xa2, 0x59, 0x1f, 0x6f, 0xdb, 0xb9, 0x86, 0xfa, 0x38, 0xf3, 0x7c, 0xc8, + 0xe0, 0x2d, 0x4e, 0x9a, +}; +static const struct drbg_kat_no_reseed kat628_t = { + 12, kat628_entropyin, kat628_nonce, kat628_persstr, + kat628_addin0, kat628_addin1, kat628_retbits +}; +static const struct drbg_kat kat628 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat628_t +}; + +static const unsigned char kat629_entropyin[] = { + 0xe9, 0x08, 0xe2, 0xa4, 0xa6, 0x44, 0x4b, 0x85, 0x26, 0xfc, 0x41, 0x83, + 0x5f, 0x52, 0xf9, 0x44, 0x6b, 0x72, 0xf5, 0x33, 0x1b, 0x32, 0x86, 0xa4, + 0x06, 0xc8, 0xd5, 0x40, 0x83, 0x26, 0xa8, 0x60, +}; +static const unsigned char kat629_nonce[] = { + 0x71, 0xcf, 0x47, 0x0f, 0x85, 0xa8, 0x0e, 0x7b, 0x33, 0xc4, 0x13, 0x3d, + 0xb7, 0x7e, 0xe4, 0x8b, +}; +static const unsigned char kat629_persstr[] = {0}; +static const unsigned char kat629_addin0[] = { + 0x92, 0x9a, 0x61, 0xe3, 0x54, 0x4c, 0x94, 0x21, 0x8b, 0x13, 0x98, 0xc8, + 0xd6, 0x90, 0x4b, 0xde, 0x66, 0x2d, 0x12, 0x4a, 0x01, 0x3a, 0x54, 0xe4, + 0x82, 0xc2, 0x77, 0xd8, 0x5e, 0x0d, 0xc2, 0xae, +}; +static const unsigned char kat629_addin1[] = { + 0x57, 0x14, 0xc6, 0x72, 0xc3, 0x91, 0xa3, 0x6a, 0x5b, 0x2f, 0x09, 0x9a, + 0xae, 0x8a, 0xaa, 0x16, 0x39, 0x28, 0x1d, 0xc0, 0xf5, 0x5b, 0x04, 0xc1, + 0x01, 0x86, 0x28, 0x23, 0x41, 0xbb, 0x44, 0xfc, +}; +static const unsigned char kat629_retbits[] = { + 0xd4, 0x6a, 0xf2, 0x2d, 0xfd, 0x1b, 0xc5, 0x55, 0xe4, 0x2a, 0xc0, 0xec, + 0xc7, 0xec, 0x28, 0xc8, 0x52, 0xc8, 0xe3, 0x35, 0xac, 0xc7, 0x9c, 0x65, + 0xe1, 0x42, 0xfa, 0xf4, 0x43, 0x41, 0x53, 0x89, 0x64, 0x83, 0xbd, 0xd1, + 0xc6, 0x4d, 0x5d, 0xe2, 0xc8, 0x34, 0x45, 0x79, 0x76, 0x48, 0x37, 0x1f, + 0x59, 0xa3, 0x16, 0xc4, 0xe0, 0xd8, 0x37, 0xd6, 0xaa, 0x17, 0x54, 0x6f, + 0x8c, 0xda, 0x82, 0x87, +}; +static const struct drbg_kat_no_reseed kat629_t = { + 13, kat629_entropyin, kat629_nonce, kat629_persstr, + kat629_addin0, kat629_addin1, kat629_retbits +}; +static const struct drbg_kat kat629 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat629_t +}; + +static const unsigned char kat630_entropyin[] = { + 0x6c, 0xf5, 0x51, 0x90, 0x3c, 0x86, 0xeb, 0x4a, 0xe6, 0xff, 0xde, 0xf3, + 0x5f, 0x57, 0xd6, 0xd8, 0xa7, 0x46, 0x17, 0xbd, 0x3d, 0x97, 0x90, 0xe6, + 0x4a, 0x2e, 0x76, 0xb9, 0xb0, 0x14, 0x05, 0x55, +}; +static const unsigned char kat630_nonce[] = { + 0x34, 0x2e, 0x55, 0x01, 0x86, 0x20, 0x60, 0xe4, 0x97, 0x4b, 0xc8, 0x8e, + 0x7c, 0x63, 0x2c, 0x69, +}; +static const unsigned char kat630_persstr[] = {0}; +static const unsigned char kat630_addin0[] = { + 0x91, 0xad, 0x32, 0x67, 0x62, 0x6a, 0xe5, 0xc3, 0x60, 0xfd, 0xd7, 0xba, + 0xa5, 0xff, 0x88, 0x17, 0x8a, 0xe8, 0x4f, 0xf7, 0x8b, 0x69, 0x4e, 0x2f, + 0xbf, 0x90, 0x77, 0x9b, 0xf4, 0xeb, 0x89, 0x8b, +}; +static const unsigned char kat630_addin1[] = { + 0xcc, 0xd9, 0x7e, 0xc3, 0x1b, 0x03, 0x0e, 0x73, 0x2e, 0xdb, 0xfc, 0xdf, + 0xb9, 0x84, 0x8c, 0x2b, 0x36, 0x73, 0xbd, 0x3b, 0x10, 0x71, 0x50, 0x26, + 0x58, 0xda, 0xa4, 0x60, 0xb2, 0x62, 0xfb, 0x1c, +}; +static const unsigned char kat630_retbits[] = { + 0x37, 0x31, 0xcf, 0xe5, 0xeb, 0xbc, 0x5b, 0x05, 0xc1, 0x12, 0xe8, 0x8f, + 0x1b, 0x4c, 0xb3, 0xde, 0xee, 0xe4, 0xbc, 0xc9, 0xec, 0xd1, 0x63, 0x5e, + 0x9c, 0x85, 0x46, 0x92, 0x57, 0x15, 0x06, 0x61, 0xa5, 0xdb, 0xac, 0x2e, + 0x63, 0x4b, 0x8f, 0xb0, 0xde, 0x08, 0xb5, 0xcd, 0x5e, 0xee, 0x12, 0x65, + 0xf8, 0x2e, 0x92, 0x78, 0xdc, 0xcd, 0x77, 0xb1, 0xfe, 0xd2, 0x32, 0x3c, + 0x55, 0x44, 0x45, 0xc3, +}; +static const struct drbg_kat_no_reseed kat630_t = { + 14, kat630_entropyin, kat630_nonce, kat630_persstr, + kat630_addin0, kat630_addin1, kat630_retbits +}; +static const struct drbg_kat kat630 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat630_t +}; + +static const unsigned char kat631_entropyin[] = { + 0x47, 0xd5, 0x70, 0xe3, 0xa0, 0xa2, 0x0c, 0x0a, 0x20, 0x10, 0x67, 0x3a, + 0x61, 0x31, 0xdc, 0xc3, 0x20, 0x26, 0x79, 0xeb, 0x06, 0xf3, 0xc1, 0xb8, + 0x2a, 0x71, 0x0e, 0xdf, 0x92, 0xd3, 0x77, 0x4b, +}; +static const unsigned char kat631_nonce[] = { + 0x88, 0x1f, 0xa7, 0xfd, 0xfb, 0x70, 0xd1, 0x06, 0xb9, 0xb9, 0xeb, 0x02, + 0x54, 0xb0, 0xeb, 0x6b, +}; +static const unsigned char kat631_persstr[] = { + 0x0f, 0x66, 0x78, 0x7e, 0xf9, 0xb9, 0x03, 0x64, 0x51, 0x7e, 0x31, 0x51, + 0xb1, 0x58, 0xbe, 0xcd, 0x9d, 0xf4, 0x06, 0x0c, 0xd9, 0x2e, 0xc8, 0x8d, + 0xa3, 0xa6, 0xdd, 0x7b, 0x3b, 0x18, 0xe5, 0x4f, +}; +static const unsigned char kat631_addin0[] = {0}; +static const unsigned char kat631_addin1[] = {0}; +static const unsigned char kat631_retbits[] = { + 0xe6, 0x4e, 0x8d, 0xca, 0xc9, 0x5e, 0x0e, 0x46, 0xf5, 0xe6, 0xc5, 0x57, + 0x1d, 0x07, 0x7b, 0x57, 0x4b, 0x1e, 0xab, 0xe4, 0x88, 0x0b, 0xbc, 0x0b, + 0xab, 0x8e, 0x08, 0xe2, 0x14, 0x80, 0x51, 0x44, 0x11, 0x65, 0xc3, 0x05, + 0xfc, 0x09, 0xd6, 0x07, 0x65, 0x19, 0x03, 0x46, 0xaf, 0x27, 0xa0, 0xdf, + 0x81, 0x56, 0x53, 0xe8, 0x1f, 0x78, 0x2a, 0xb7, 0xfe, 0xe5, 0x5d, 0xad, + 0x23, 0xec, 0x51, 0xd1, +}; +static const struct drbg_kat_no_reseed kat631_t = { + 0, kat631_entropyin, kat631_nonce, kat631_persstr, + kat631_addin0, kat631_addin1, kat631_retbits +}; +static const struct drbg_kat kat631 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat631_t +}; + +static const unsigned char kat632_entropyin[] = { + 0x21, 0xcf, 0x7b, 0x1f, 0x01, 0x49, 0x95, 0xff, 0xe7, 0xfe, 0x84, 0x54, + 0x3f, 0x3e, 0x9a, 0x75, 0xcb, 0x3f, 0x99, 0x85, 0x1c, 0xf2, 0x1c, 0x4a, + 0xbb, 0xdc, 0x38, 0x73, 0x30, 0xd5, 0xc7, 0xe9, +}; +static const unsigned char kat632_nonce[] = { + 0x49, 0xa6, 0xee, 0xa4, 0x26, 0x3e, 0xe1, 0xf5, 0xd4, 0x61, 0x90, 0x7d, + 0xc5, 0x8b, 0x44, 0xfb, +}; +static const unsigned char kat632_persstr[] = { + 0x14, 0xd5, 0x39, 0x75, 0xf8, 0x52, 0xbc, 0xc9, 0xa1, 0xc5, 0xec, 0x9f, + 0x48, 0x25, 0xa0, 0x47, 0x21, 0xec, 0xfd, 0x87, 0xf2, 0xad, 0xef, 0x09, + 0x9a, 0x5b, 0x88, 0xe2, 0x7d, 0x77, 0x7b, 0x03, +}; +static const unsigned char kat632_addin0[] = {0}; +static const unsigned char kat632_addin1[] = {0}; +static const unsigned char kat632_retbits[] = { + 0xa2, 0x6c, 0x99, 0x05, 0xc9, 0xae, 0x13, 0x8d, 0x94, 0x8b, 0xe7, 0x3c, + 0x42, 0x71, 0xe7, 0xe0, 0xda, 0xa2, 0x31, 0x61, 0xbc, 0x65, 0x95, 0x15, + 0x48, 0x81, 0xae, 0x60, 0x53, 0x59, 0x9a, 0x21, 0xaa, 0x97, 0xe5, 0x7f, + 0x3c, 0xe3, 0x4d, 0x30, 0xf6, 0x96, 0x47, 0xe9, 0x70, 0xe7, 0x82, 0x70, + 0x39, 0x93, 0x26, 0x15, 0xd9, 0x70, 0xb4, 0x75, 0x75, 0x96, 0x4c, 0xeb, + 0x8f, 0x7a, 0x43, 0x7d, +}; +static const struct drbg_kat_no_reseed kat632_t = { + 1, kat632_entropyin, kat632_nonce, kat632_persstr, + kat632_addin0, kat632_addin1, kat632_retbits +}; +static const struct drbg_kat kat632 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat632_t +}; + +static const unsigned char kat633_entropyin[] = { + 0x17, 0x9e, 0x22, 0xe2, 0xf4, 0x95, 0xba, 0x9a, 0xe3, 0x52, 0xb9, 0x3c, + 0x83, 0x6b, 0x69, 0x33, 0xe2, 0x8a, 0x2a, 0x18, 0x4f, 0x89, 0x82, 0xc0, + 0x4e, 0x25, 0xe7, 0xee, 0xe6, 0x6f, 0x9f, 0x7c, +}; +static const unsigned char kat633_nonce[] = { + 0xc1, 0x84, 0xe8, 0x42, 0xd2, 0x55, 0x5e, 0x56, 0x88, 0x8b, 0x7b, 0x75, + 0x18, 0x9e, 0x77, 0x75, +}; +static const unsigned char kat633_persstr[] = { + 0x0f, 0xc7, 0x4e, 0x50, 0xa0, 0xfd, 0xa7, 0x9b, 0xb3, 0x1d, 0x5e, 0xbb, + 0x30, 0x8a, 0xa9, 0x7c, 0xcd, 0x6e, 0x6f, 0x17, 0xdc, 0xec, 0x14, 0x97, + 0x6f, 0x4e, 0x6b, 0x15, 0xca, 0x1b, 0xe3, 0x41, +}; +static const unsigned char kat633_addin0[] = {0}; +static const unsigned char kat633_addin1[] = {0}; +static const unsigned char kat633_retbits[] = { + 0x47, 0x49, 0x76, 0x47, 0x11, 0x17, 0x44, 0xc7, 0x3d, 0xd2, 0xd0, 0x5c, + 0xf5, 0x7d, 0x65, 0xce, 0xae, 0x22, 0xe2, 0x2c, 0xac, 0x44, 0xb0, 0x98, + 0x18, 0x9c, 0x5a, 0x5c, 0x2f, 0x78, 0x1b, 0x74, 0x66, 0x9e, 0x6d, 0x66, + 0x9e, 0x38, 0xea, 0x8e, 0x5b, 0x46, 0x60, 0xe0, 0x4c, 0x04, 0x01, 0xc4, + 0xa4, 0xe6, 0x4c, 0x33, 0x1d, 0x79, 0x6d, 0x19, 0xb7, 0x35, 0x0a, 0x6a, + 0x3e, 0x46, 0x19, 0xfc, +}; +static const struct drbg_kat_no_reseed kat633_t = { + 2, kat633_entropyin, kat633_nonce, kat633_persstr, + kat633_addin0, kat633_addin1, kat633_retbits +}; +static const struct drbg_kat kat633 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat633_t +}; + +static const unsigned char kat634_entropyin[] = { + 0x60, 0xbf, 0x6d, 0x95, 0x73, 0xea, 0x93, 0x98, 0x07, 0x4c, 0x3d, 0x6e, + 0x04, 0xe0, 0xe8, 0x22, 0xf0, 0xee, 0x95, 0xb6, 0x7d, 0xd2, 0x55, 0x59, + 0x88, 0x12, 0xe5, 0x33, 0x6a, 0xcc, 0x23, 0x36, +}; +static const unsigned char kat634_nonce[] = { + 0xad, 0x27, 0xd7, 0xb2, 0x74, 0xf3, 0xa2, 0x18, 0x9d, 0x27, 0xbc, 0x54, + 0x7d, 0x6a, 0xc4, 0x10, +}; +static const unsigned char kat634_persstr[] = { + 0x58, 0x03, 0x5b, 0xae, 0x9b, 0xa6, 0x7b, 0x89, 0x0b, 0x89, 0x2e, 0x3a, + 0x97, 0x4e, 0x33, 0x1d, 0x99, 0xd1, 0x5c, 0x60, 0x75, 0x93, 0xed, 0x21, + 0xa5, 0x1d, 0xec, 0x71, 0x03, 0x4d, 0x14, 0x2c, +}; +static const unsigned char kat634_addin0[] = {0}; +static const unsigned char kat634_addin1[] = {0}; +static const unsigned char kat634_retbits[] = { + 0x51, 0x8d, 0xfe, 0xa2, 0x50, 0xe1, 0x79, 0xe2, 0x73, 0x82, 0x83, 0xde, + 0x6b, 0xc2, 0x9a, 0x06, 0x9c, 0xd9, 0xf6, 0x79, 0x3c, 0xe1, 0x1e, 0xc8, + 0x01, 0xab, 0x2d, 0x32, 0x39, 0x14, 0xe1, 0x34, 0x55, 0x87, 0x6c, 0x4d, + 0xb8, 0x32, 0x8a, 0x5b, 0x9a, 0x78, 0xfd, 0x06, 0x1c, 0xad, 0x66, 0x23, + 0x2d, 0x10, 0x57, 0xe5, 0xd6, 0xa3, 0x85, 0xa2, 0x97, 0xad, 0xca, 0x9c, + 0xdc, 0xa5, 0x7c, 0xaa, +}; +static const struct drbg_kat_no_reseed kat634_t = { + 3, kat634_entropyin, kat634_nonce, kat634_persstr, + kat634_addin0, kat634_addin1, kat634_retbits +}; +static const struct drbg_kat kat634 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat634_t +}; + +static const unsigned char kat635_entropyin[] = { + 0xd3, 0x9f, 0xb3, 0x56, 0xf6, 0x6c, 0xea, 0xb8, 0x1c, 0x4c, 0xda, 0xd8, + 0x9e, 0xe2, 0xe6, 0x65, 0x7f, 0x8b, 0x36, 0xe8, 0x45, 0xd6, 0xb8, 0xb7, + 0x53, 0x0a, 0x61, 0x88, 0xc4, 0xc2, 0x6a, 0x8c, +}; +static const unsigned char kat635_nonce[] = { + 0xb1, 0x09, 0x22, 0xb4, 0xa3, 0x08, 0x6e, 0x4a, 0x48, 0x4b, 0x50, 0x39, + 0x99, 0x6a, 0x54, 0xb4, +}; +static const unsigned char kat635_persstr[] = { + 0x04, 0xdf, 0x5d, 0x29, 0xdc, 0x5c, 0x07, 0x93, 0xfe, 0x5b, 0x4a, 0xb3, + 0xda, 0x3e, 0xf7, 0xd2, 0x64, 0xc4, 0xcd, 0x67, 0x5f, 0xb0, 0x6b, 0xd2, + 0x1a, 0xc2, 0x1d, 0x7c, 0x77, 0xa2, 0xce, 0x73, +}; +static const unsigned char kat635_addin0[] = {0}; +static const unsigned char kat635_addin1[] = {0}; +static const unsigned char kat635_retbits[] = { + 0x0f, 0x2c, 0x2d, 0xbe, 0x5d, 0xa6, 0x67, 0x42, 0xe9, 0xaa, 0xaa, 0x48, + 0x61, 0x2a, 0x0e, 0x07, 0xdd, 0x69, 0x14, 0x94, 0x2c, 0x52, 0xe8, 0x7d, + 0x32, 0x66, 0x15, 0x00, 0x13, 0xaa, 0xc3, 0x13, 0xde, 0x17, 0x17, 0x08, + 0x8e, 0x01, 0xb9, 0x3d, 0xd0, 0xd8, 0xc6, 0xab, 0xd0, 0xc5, 0xd6, 0x3d, + 0x56, 0x49, 0x51, 0x40, 0x45, 0x8c, 0x4a, 0x98, 0x0a, 0xb4, 0xff, 0x7d, + 0x98, 0x9e, 0x00, 0xe4, +}; +static const struct drbg_kat_no_reseed kat635_t = { + 4, kat635_entropyin, kat635_nonce, kat635_persstr, + kat635_addin0, kat635_addin1, kat635_retbits +}; +static const struct drbg_kat kat635 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat635_t +}; + +static const unsigned char kat636_entropyin[] = { + 0x9a, 0x1a, 0x99, 0xf8, 0xf2, 0xbb, 0x88, 0xa7, 0x45, 0xbb, 0x24, 0xcb, + 0xcd, 0x4a, 0xc3, 0xaa, 0xbc, 0xf9, 0xad, 0x96, 0x37, 0x05, 0xdd, 0xee, + 0x88, 0x7c, 0xa1, 0x79, 0x2a, 0x1f, 0xa9, 0xf0, +}; +static const unsigned char kat636_nonce[] = { + 0xa9, 0x10, 0x06, 0x54, 0xab, 0xc3, 0xac, 0xd6, 0xfb, 0x0c, 0x34, 0x44, + 0x04, 0xed, 0xb9, 0x74, +}; +static const unsigned char kat636_persstr[] = { + 0x2f, 0xaa, 0xd0, 0xea, 0x6e, 0xb2, 0xb5, 0xbe, 0xfe, 0x02, 0x41, 0x19, + 0x20, 0x3b, 0xf7, 0x9c, 0x13, 0xed, 0x1f, 0xed, 0xac, 0xf5, 0x35, 0x88, + 0x10, 0xf4, 0xf8, 0x70, 0x17, 0x5e, 0x08, 0xc1, +}; +static const unsigned char kat636_addin0[] = {0}; +static const unsigned char kat636_addin1[] = {0}; +static const unsigned char kat636_retbits[] = { + 0x27, 0x98, 0xf2, 0xe4, 0xb6, 0x6b, 0xca, 0x62, 0x12, 0xe1, 0x05, 0x5d, + 0x10, 0x0f, 0xfa, 0x4b, 0xac, 0x73, 0x3b, 0x05, 0xdc, 0xa1, 0x9a, 0x36, + 0x02, 0xfc, 0xd5, 0xe6, 0x84, 0x87, 0x5a, 0x7c, 0x58, 0xc1, 0xe7, 0xa8, + 0x94, 0x1a, 0x77, 0x32, 0x12, 0x4d, 0xaf, 0x13, 0xf9, 0x7c, 0x57, 0xcd, + 0x7d, 0x14, 0xe4, 0x03, 0x7a, 0xbf, 0x2f, 0x89, 0x10, 0x28, 0x1d, 0xbf, + 0xdf, 0x91, 0x13, 0xbb, +}; +static const struct drbg_kat_no_reseed kat636_t = { + 5, kat636_entropyin, kat636_nonce, kat636_persstr, + kat636_addin0, kat636_addin1, kat636_retbits +}; +static const struct drbg_kat kat636 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat636_t +}; + +static const unsigned char kat637_entropyin[] = { + 0x9f, 0x63, 0xa3, 0x28, 0x2c, 0xd1, 0x8a, 0x09, 0xa9, 0x1a, 0x50, 0x08, + 0x6c, 0xe0, 0xe8, 0xd9, 0x1b, 0xe0, 0x42, 0x61, 0xda, 0x62, 0x38, 0x75, + 0xb1, 0x5f, 0x9b, 0xac, 0x5a, 0xfe, 0x7c, 0x6d, +}; +static const unsigned char kat637_nonce[] = { + 0xef, 0x81, 0xc6, 0xf3, 0x67, 0xff, 0xbd, 0x5d, 0x97, 0xcd, 0xdf, 0x81, + 0x9a, 0x99, 0xf9, 0x96, +}; +static const unsigned char kat637_persstr[] = { + 0xf1, 0x8f, 0xc5, 0x00, 0xcc, 0x26, 0x0b, 0xeb, 0x53, 0xaa, 0x6a, 0x1d, + 0x1e, 0xbd, 0x5b, 0xaf, 0x6e, 0xc3, 0xad, 0x79, 0x57, 0x8a, 0x71, 0xcd, + 0xb2, 0x76, 0xc6, 0x9d, 0x67, 0x50, 0x11, 0xcc, +}; +static const unsigned char kat637_addin0[] = {0}; +static const unsigned char kat637_addin1[] = {0}; +static const unsigned char kat637_retbits[] = { + 0x47, 0x8f, 0xb3, 0x11, 0x2c, 0x99, 0x36, 0x3b, 0x7c, 0x6e, 0x5d, 0x78, + 0x1c, 0xcf, 0xc2, 0x05, 0x66, 0x94, 0xdd, 0xdb, 0x70, 0xd5, 0xe4, 0xe4, + 0x57, 0xf2, 0x2c, 0xfb, 0x15, 0x4d, 0x1d, 0x01, 0x73, 0xc0, 0x9d, 0xaa, + 0x88, 0x06, 0xba, 0x9c, 0x7c, 0xef, 0xcd, 0xd7, 0xa7, 0x15, 0xb3, 0xb5, + 0x39, 0x1b, 0xe1, 0x0c, 0x37, 0x28, 0xf3, 0xaf, 0x25, 0xab, 0x2a, 0x4b, + 0x8a, 0x8a, 0x5c, 0xaa, +}; +static const struct drbg_kat_no_reseed kat637_t = { + 6, kat637_entropyin, kat637_nonce, kat637_persstr, + kat637_addin0, kat637_addin1, kat637_retbits +}; +static const struct drbg_kat kat637 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat637_t +}; + +static const unsigned char kat638_entropyin[] = { + 0x10, 0x15, 0xc9, 0xc0, 0xd0, 0x6e, 0x6a, 0xc7, 0xac, 0xbb, 0xab, 0x0d, + 0x2d, 0xd1, 0xad, 0xea, 0x75, 0x60, 0x57, 0xcc, 0x39, 0x38, 0xef, 0x87, + 0x85, 0xe3, 0xd5, 0x1e, 0x5a, 0xfc, 0x01, 0x8e, +}; +static const unsigned char kat638_nonce[] = { + 0x95, 0x1d, 0x78, 0x61, 0xd8, 0x40, 0x9b, 0x0a, 0x62, 0xb1, 0x8c, 0x43, + 0xbb, 0xb6, 0x55, 0x23, +}; +static const unsigned char kat638_persstr[] = { + 0xe7, 0x6a, 0x06, 0x02, 0x4d, 0x00, 0xbe, 0x09, 0xc6, 0xa2, 0x2b, 0x78, + 0xb7, 0x4c, 0xad, 0xba, 0xf3, 0x68, 0x92, 0x0b, 0x1f, 0x74, 0xa4, 0x41, + 0xd5, 0x10, 0xae, 0xe0, 0x2c, 0xae, 0x72, 0x1d, +}; +static const unsigned char kat638_addin0[] = {0}; +static const unsigned char kat638_addin1[] = {0}; +static const unsigned char kat638_retbits[] = { + 0xe1, 0xad, 0x22, 0x2c, 0x7f, 0x45, 0xd8, 0x2d, 0x15, 0x93, 0x09, 0xfe, + 0xa1, 0x5e, 0x81, 0xbf, 0x9f, 0x14, 0x8c, 0xac, 0xd5, 0x7b, 0x52, 0xf5, + 0xe8, 0xfd, 0x3f, 0xaf, 0x73, 0xd9, 0xb8, 0x32, 0xcc, 0x80, 0x3d, 0x4f, + 0x36, 0xe3, 0xd9, 0xaf, 0xb0, 0x3c, 0xba, 0xcb, 0xf7, 0x2d, 0x6b, 0x29, + 0x7a, 0x01, 0xd0, 0xf0, 0x0b, 0x82, 0x5f, 0x64, 0xe6, 0x76, 0xa7, 0x01, + 0x81, 0x59, 0xda, 0x2b, +}; +static const struct drbg_kat_no_reseed kat638_t = { + 7, kat638_entropyin, kat638_nonce, kat638_persstr, + kat638_addin0, kat638_addin1, kat638_retbits +}; +static const struct drbg_kat kat638 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat638_t +}; + +static const unsigned char kat639_entropyin[] = { + 0xca, 0xd9, 0x36, 0xac, 0xd1, 0xef, 0x96, 0x85, 0xf6, 0x6b, 0xef, 0x62, + 0xa8, 0xbf, 0x4f, 0x91, 0x9e, 0x18, 0x02, 0x4f, 0xda, 0x5c, 0x63, 0xc5, + 0x7c, 0xed, 0xb7, 0x02, 0xdf, 0x3e, 0x94, 0xa9, +}; +static const unsigned char kat639_nonce[] = { + 0x85, 0xd3, 0x23, 0x8a, 0xfa, 0x86, 0xc6, 0x54, 0x70, 0x2d, 0xfa, 0x79, + 0x3e, 0x11, 0xd3, 0xf6, +}; +static const unsigned char kat639_persstr[] = { + 0xd6, 0x32, 0x4b, 0x2a, 0x3e, 0x38, 0x94, 0x6c, 0x7d, 0xf7, 0xc6, 0xe8, + 0xd3, 0x01, 0xf6, 0xb5, 0xe6, 0x3e, 0x55, 0x53, 0x5c, 0x8a, 0xe0, 0xbe, + 0xd6, 0x77, 0xce, 0x0e, 0xa8, 0x6e, 0xa4, 0x99, +}; +static const unsigned char kat639_addin0[] = {0}; +static const unsigned char kat639_addin1[] = {0}; +static const unsigned char kat639_retbits[] = { + 0x30, 0x03, 0x46, 0x83, 0x65, 0xb5, 0xec, 0xcd, 0xd6, 0x42, 0xd3, 0xd4, + 0x30, 0xd4, 0xc4, 0xd4, 0xc0, 0x89, 0xc5, 0xdf, 0xb7, 0xdd, 0x4a, 0xda, + 0xfb, 0xdb, 0x46, 0x31, 0x61, 0x08, 0x05, 0xe1, 0x58, 0x7d, 0x35, 0x5b, + 0x56, 0xd6, 0x59, 0xc5, 0x9f, 0xa0, 0x12, 0xe4, 0x90, 0xbe, 0xae, 0x5f, + 0xc7, 0x67, 0xbd, 0xbb, 0x34, 0xb3, 0x1a, 0x5b, 0x30, 0x4c, 0x23, 0xdc, + 0x27, 0xb4, 0xe9, 0xe0, +}; +static const struct drbg_kat_no_reseed kat639_t = { + 8, kat639_entropyin, kat639_nonce, kat639_persstr, + kat639_addin0, kat639_addin1, kat639_retbits +}; +static const struct drbg_kat kat639 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat639_t +}; + +static const unsigned char kat640_entropyin[] = { + 0x64, 0x8e, 0x4e, 0x48, 0x4b, 0x26, 0xfc, 0xb3, 0x30, 0xbf, 0x46, 0xa9, + 0xee, 0xe4, 0x18, 0xcb, 0x46, 0xbd, 0xb5, 0x66, 0x4d, 0xc0, 0xb5, 0xa8, + 0x75, 0xee, 0x8e, 0x58, 0x45, 0x47, 0x6a, 0x56, +}; +static const unsigned char kat640_nonce[] = { + 0xba, 0x61, 0x0a, 0x74, 0xb6, 0x64, 0x72, 0xc6, 0x9f, 0x81, 0xad, 0x0f, + 0xbf, 0xe8, 0xb3, 0x9d, +}; +static const unsigned char kat640_persstr[] = { + 0x32, 0x2f, 0x58, 0x43, 0x29, 0xdf, 0xc1, 0xf6, 0x43, 0xf3, 0x59, 0xec, + 0xfb, 0x98, 0x33, 0xc4, 0xaa, 0x28, 0x66, 0x67, 0xf2, 0xff, 0xe6, 0xbe, + 0xd9, 0xc4, 0xc6, 0xe9, 0x12, 0x38, 0x03, 0x89, +}; +static const unsigned char kat640_addin0[] = {0}; +static const unsigned char kat640_addin1[] = {0}; +static const unsigned char kat640_retbits[] = { + 0x7f, 0x84, 0x98, 0x28, 0x2c, 0x32, 0xe6, 0xb5, 0x35, 0x12, 0x15, 0xf9, + 0x0e, 0x58, 0xdd, 0x3d, 0x5f, 0xf5, 0xcb, 0x7b, 0x61, 0xc3, 0xfd, 0x9e, + 0x2b, 0x93, 0xdc, 0xbd, 0xc5, 0xef, 0x85, 0xba, 0x9e, 0xda, 0x9f, 0xc5, + 0x34, 0x56, 0x5f, 0x77, 0xb7, 0x8b, 0x42, 0x0e, 0x24, 0xcf, 0xc9, 0x5d, + 0x7d, 0x55, 0x5b, 0x74, 0x3a, 0x80, 0xb2, 0x19, 0x45, 0x08, 0xc3, 0x1e, + 0x4c, 0x30, 0xba, 0xe3, +}; +static const struct drbg_kat_no_reseed kat640_t = { + 9, kat640_entropyin, kat640_nonce, kat640_persstr, + kat640_addin0, kat640_addin1, kat640_retbits +}; +static const struct drbg_kat kat640 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat640_t +}; + +static const unsigned char kat641_entropyin[] = { + 0xc5, 0x2a, 0x30, 0x1c, 0x95, 0x25, 0x50, 0xa3, 0x1a, 0xb3, 0xf3, 0xd3, + 0xc7, 0x89, 0x19, 0xcc, 0x55, 0x09, 0xa5, 0xb9, 0x84, 0xc0, 0xa4, 0x7a, + 0x9c, 0xae, 0x9f, 0xe8, 0xdc, 0xf6, 0xce, 0x97, +}; +static const unsigned char kat641_nonce[] = { + 0x87, 0xe2, 0x8a, 0xef, 0xf6, 0x6c, 0x45, 0xe4, 0x09, 0xf0, 0x2f, 0x99, + 0xd4, 0x59, 0xf6, 0x97, +}; +static const unsigned char kat641_persstr[] = { + 0x95, 0x6e, 0x32, 0xd3, 0xbd, 0x82, 0xc6, 0x37, 0x9b, 0x2b, 0x7a, 0x7b, + 0x67, 0xfd, 0xe6, 0x58, 0x3f, 0x98, 0xd5, 0xbc, 0x2e, 0x22, 0x08, 0x2e, + 0x79, 0x3b, 0x95, 0xe0, 0xdc, 0xbb, 0x4f, 0x94, +}; +static const unsigned char kat641_addin0[] = {0}; +static const unsigned char kat641_addin1[] = {0}; +static const unsigned char kat641_retbits[] = { + 0x6d, 0x0f, 0x4a, 0x8c, 0xb3, 0x06, 0x1b, 0x6a, 0xf2, 0xf1, 0x5d, 0x4b, + 0xf0, 0xaf, 0xba, 0xa4, 0x62, 0x4c, 0x06, 0x3f, 0xd7, 0xde, 0xd3, 0x90, + 0x3d, 0xc9, 0x0f, 0xb3, 0x59, 0xf3, 0x50, 0xb9, 0xec, 0x31, 0xa1, 0x91, + 0x40, 0xbc, 0xc4, 0xd4, 0xea, 0xb4, 0x49, 0xa6, 0xce, 0x4e, 0x0a, 0xbe, + 0x6b, 0x1e, 0x81, 0x91, 0x64, 0xd3, 0x98, 0x84, 0x42, 0x0a, 0xa2, 0x0c, + 0x85, 0x40, 0x8c, 0x9f, +}; +static const struct drbg_kat_no_reseed kat641_t = { + 10, kat641_entropyin, kat641_nonce, kat641_persstr, + kat641_addin0, kat641_addin1, kat641_retbits +}; +static const struct drbg_kat kat641 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat641_t +}; + +static const unsigned char kat642_entropyin[] = { + 0xb5, 0x2b, 0x8b, 0x33, 0x34, 0xbf, 0xf2, 0x30, 0xd0, 0x33, 0xc8, 0x9c, + 0xe5, 0xf7, 0x4d, 0x21, 0xc1, 0xab, 0x07, 0xf1, 0x7a, 0xce, 0xc3, 0x09, + 0x4f, 0x54, 0x37, 0xe5, 0x09, 0x13, 0x9d, 0x85, +}; +static const unsigned char kat642_nonce[] = { + 0x61, 0x7f, 0x1f, 0x58, 0x40, 0xa4, 0x85, 0xd0, 0x42, 0xa5, 0xa7, 0xbc, + 0x55, 0xca, 0x37, 0x46, +}; +static const unsigned char kat642_persstr[] = { + 0xa6, 0xf4, 0x0a, 0x52, 0xf7, 0x92, 0x30, 0x37, 0xa9, 0x39, 0x1d, 0x45, + 0x09, 0x52, 0xaf, 0x3b, 0x4c, 0x82, 0x23, 0xe9, 0xc1, 0x9e, 0x24, 0xd2, + 0xba, 0x11, 0xe2, 0x0d, 0x15, 0x96, 0x4d, 0x34, +}; +static const unsigned char kat642_addin0[] = {0}; +static const unsigned char kat642_addin1[] = {0}; +static const unsigned char kat642_retbits[] = { + 0xce, 0xd9, 0xf3, 0xe3, 0xfd, 0xe7, 0x50, 0x9f, 0x5c, 0x1c, 0x46, 0xd5, + 0xa3, 0xbf, 0xff, 0xe6, 0x7c, 0xac, 0xff, 0xb1, 0x03, 0xfe, 0x4f, 0xac, + 0xfb, 0x45, 0xb6, 0x6e, 0x53, 0xd5, 0x94, 0xcf, 0x4e, 0x19, 0x28, 0x44, + 0xa1, 0xba, 0xc8, 0x18, 0x7c, 0x65, 0xcb, 0xc9, 0xcd, 0x84, 0x3f, 0x23, + 0x83, 0x51, 0x0d, 0x8f, 0x65, 0x76, 0xc3, 0x9d, 0x7f, 0x37, 0xd0, 0x00, + 0xb8, 0xce, 0x75, 0x21, +}; +static const struct drbg_kat_no_reseed kat642_t = { + 11, kat642_entropyin, kat642_nonce, kat642_persstr, + kat642_addin0, kat642_addin1, kat642_retbits +}; +static const struct drbg_kat kat642 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat642_t +}; + +static const unsigned char kat643_entropyin[] = { + 0xa5, 0x79, 0x37, 0x42, 0x88, 0xc8, 0xa2, 0xde, 0x14, 0x4f, 0x46, 0x0c, + 0xb0, 0xdc, 0x2f, 0xff, 0xbe, 0xc7, 0x0e, 0xb7, 0x59, 0xc5, 0xbf, 0x17, + 0x12, 0xa4, 0x5b, 0x5a, 0xbf, 0x63, 0x04, 0x5c, +}; +static const unsigned char kat643_nonce[] = { + 0xbd, 0xb7, 0x03, 0xe6, 0x46, 0x66, 0x6d, 0x1b, 0x21, 0x63, 0xc2, 0x5f, + 0xd5, 0x63, 0x02, 0x9d, +}; +static const unsigned char kat643_persstr[] = { + 0x51, 0x28, 0x52, 0x7d, 0x90, 0x77, 0xbd, 0x74, 0xb4, 0x4a, 0xb7, 0xde, + 0xad, 0xeb, 0x3f, 0x1f, 0xc2, 0x09, 0x9a, 0xb7, 0x11, 0xed, 0x44, 0xa6, + 0x12, 0xcb, 0xd6, 0x7c, 0x8e, 0x94, 0x62, 0x73, +}; +static const unsigned char kat643_addin0[] = {0}; +static const unsigned char kat643_addin1[] = {0}; +static const unsigned char kat643_retbits[] = { + 0x8f, 0xba, 0x16, 0x08, 0x67, 0xf2, 0x57, 0xb9, 0x0d, 0x76, 0xec, 0x68, + 0x0f, 0x3e, 0x16, 0x90, 0x4a, 0x8d, 0x14, 0x43, 0xb0, 0x28, 0x33, 0xea, + 0xa7, 0x8a, 0x33, 0x00, 0x71, 0x37, 0xc4, 0x22, 0x66, 0x91, 0x33, 0xd7, + 0xb3, 0xde, 0x20, 0x35, 0x83, 0x0a, 0xf7, 0x94, 0x00, 0x73, 0x0d, 0xed, + 0x71, 0x49, 0x54, 0x6d, 0x56, 0xa9, 0x0f, 0x20, 0x4e, 0x86, 0x47, 0x7c, + 0x42, 0xfe, 0xc1, 0xa9, +}; +static const struct drbg_kat_no_reseed kat643_t = { + 12, kat643_entropyin, kat643_nonce, kat643_persstr, + kat643_addin0, kat643_addin1, kat643_retbits +}; +static const struct drbg_kat kat643 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat643_t +}; + +static const unsigned char kat644_entropyin[] = { + 0x1f, 0x44, 0x48, 0x91, 0xec, 0x1d, 0x5d, 0x06, 0x0b, 0xd1, 0xb0, 0x37, + 0x36, 0x3b, 0xd7, 0x50, 0xdf, 0x90, 0x17, 0xb2, 0x74, 0x79, 0xe2, 0x11, + 0x85, 0xb9, 0x49, 0x7f, 0x6b, 0xa0, 0x31, 0x1f, +}; +static const unsigned char kat644_nonce[] = { + 0x73, 0xb5, 0x49, 0x79, 0x76, 0xd6, 0x71, 0xa2, 0x60, 0xb3, 0x4f, 0xa3, + 0x14, 0xcc, 0xdd, 0x74, +}; +static const unsigned char kat644_persstr[] = { + 0xd7, 0x0d, 0x63, 0xe5, 0x8d, 0x23, 0x12, 0x3e, 0xba, 0x0e, 0x5a, 0x6b, + 0xde, 0x07, 0x79, 0xa8, 0x86, 0x66, 0x83, 0x36, 0x9e, 0xe1, 0xc1, 0xd1, + 0xdd, 0xe8, 0x1a, 0x14, 0x67, 0x17, 0xd8, 0xbc, +}; +static const unsigned char kat644_addin0[] = {0}; +static const unsigned char kat644_addin1[] = {0}; +static const unsigned char kat644_retbits[] = { + 0x43, 0x56, 0xaf, 0xd0, 0x40, 0x81, 0xe8, 0xc0, 0xf4, 0xc4, 0x46, 0xa6, + 0x22, 0xcd, 0x3f, 0x04, 0x9e, 0x7e, 0x6e, 0x8f, 0x90, 0x6c, 0x07, 0x60, + 0x0d, 0xa0, 0x67, 0x1e, 0xea, 0xe8, 0xf0, 0xa7, 0x32, 0xf4, 0x5f, 0x7b, + 0x99, 0xee, 0x98, 0xc1, 0xb0, 0x61, 0x33, 0x5d, 0x0d, 0x58, 0x96, 0xda, + 0x1e, 0x1c, 0x08, 0x1e, 0x2a, 0x6f, 0x25, 0xc5, 0x65, 0xfc, 0x47, 0xdf, + 0xff, 0xeb, 0xbe, 0x98, +}; +static const struct drbg_kat_no_reseed kat644_t = { + 13, kat644_entropyin, kat644_nonce, kat644_persstr, + kat644_addin0, kat644_addin1, kat644_retbits +}; +static const struct drbg_kat kat644 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat644_t +}; + +static const unsigned char kat645_entropyin[] = { + 0x75, 0xd5, 0xb7, 0x82, 0xc5, 0x34, 0x5c, 0xee, 0x69, 0xe0, 0x45, 0x84, + 0x47, 0x83, 0xba, 0x53, 0xa3, 0x15, 0x88, 0x22, 0x82, 0x74, 0x0a, 0x45, + 0xb4, 0xa0, 0x4f, 0xd9, 0xe7, 0x7e, 0xc1, 0xb6, +}; +static const unsigned char kat645_nonce[] = { + 0x17, 0x5c, 0x36, 0xb3, 0x96, 0x47, 0x26, 0xca, 0xab, 0x9b, 0x5a, 0x12, + 0x7e, 0xe9, 0xcd, 0x91, +}; +static const unsigned char kat645_persstr[] = { + 0xc7, 0xb4, 0x5b, 0x62, 0xad, 0xab, 0xf3, 0x45, 0xdc, 0xc0, 0x18, 0xe2, + 0xea, 0xfe, 0x3e, 0xf2, 0x12, 0xa2, 0x53, 0xed, 0xc9, 0x46, 0x0f, 0x12, + 0xa7, 0xc0, 0x26, 0x0f, 0xe9, 0x59, 0xdf, 0x6c, +}; +static const unsigned char kat645_addin0[] = {0}; +static const unsigned char kat645_addin1[] = {0}; +static const unsigned char kat645_retbits[] = { + 0x5c, 0x74, 0xc0, 0x46, 0xd2, 0x00, 0xce, 0xf4, 0x36, 0x13, 0xee, 0xb2, + 0xb0, 0x83, 0x58, 0x38, 0x60, 0x9c, 0x4a, 0xe2, 0x69, 0x78, 0x89, 0xd5, + 0x1c, 0x17, 0x9a, 0x27, 0x37, 0x1b, 0x74, 0x21, 0xd9, 0xd2, 0x8d, 0x03, + 0x8b, 0xd2, 0x2a, 0xaa, 0x7b, 0xe1, 0xe3, 0x1c, 0xa0, 0x9f, 0x3c, 0xf3, + 0xd3, 0xea, 0x1d, 0x3f, 0x18, 0x34, 0x0d, 0x9c, 0xc7, 0x3d, 0xd8, 0x41, + 0x51, 0x22, 0xca, 0xaa, +}; +static const struct drbg_kat_no_reseed kat645_t = { + 14, kat645_entropyin, kat645_nonce, kat645_persstr, + kat645_addin0, kat645_addin1, kat645_retbits +}; +static const struct drbg_kat kat645 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat645_t +}; + +static const unsigned char kat646_entropyin[] = { + 0x50, 0x6b, 0xfe, 0x78, 0x5b, 0xd1, 0x7b, 0x7a, 0x2d, 0xec, 0x8a, 0xbb, + 0xe2, 0x02, 0xa2, 0x41, 0x40, 0x62, 0xb4, 0xc2, 0xff, 0x22, 0xaa, 0xc3, + 0x89, 0x01, 0x33, 0x80, 0x1c, 0x54, 0x96, 0x1f, +}; +static const unsigned char kat646_nonce[] = { + 0x64, 0x88, 0x5c, 0x54, 0xfd, 0x46, 0x16, 0xe6, 0x0d, 0xab, 0x9c, 0x4a, + 0x42, 0x4c, 0xb2, 0x00, +}; +static const unsigned char kat646_persstr[] = { + 0xdb, 0x1a, 0xab, 0xae, 0x13, 0x8e, 0x6b, 0xb9, 0xca, 0x30, 0xe7, 0xb1, + 0x07, 0x11, 0x00, 0x46, 0xad, 0x18, 0x8b, 0xef, 0x4a, 0x71, 0xc9, 0x0d, + 0x23, 0x29, 0xee, 0x42, 0x0e, 0xfb, 0x4b, 0x9d, +}; +static const unsigned char kat646_addin0[] = { + 0x0e, 0x22, 0x4a, 0x4d, 0x7b, 0x8c, 0xa1, 0xff, 0xf0, 0x46, 0x56, 0xf9, + 0xf4, 0xb5, 0xb9, 0x57, 0x7f, 0xce, 0xfc, 0xa0, 0xc2, 0x83, 0x28, 0x76, + 0x77, 0xbb, 0x84, 0xb1, 0xc3, 0x08, 0x34, 0x96, +}; +static const unsigned char kat646_addin1[] = { + 0x58, 0xac, 0xad, 0xc5, 0x4f, 0x21, 0x95, 0xef, 0x4d, 0x13, 0x53, 0x75, + 0x99, 0x47, 0xe6, 0xe5, 0x2d, 0xba, 0x26, 0x38, 0x04, 0x07, 0x76, 0xab, + 0x0b, 0xe3, 0xb6, 0x3a, 0x4b, 0x2d, 0x66, 0x3b, +}; +static const unsigned char kat646_retbits[] = { + 0x9f, 0x54, 0x75, 0xa3, 0x95, 0x98, 0x8b, 0x36, 0xcc, 0x3c, 0x41, 0x58, + 0x72, 0x31, 0xf1, 0x8f, 0x23, 0x2f, 0xb3, 0x03, 0xcf, 0x82, 0xf2, 0x4c, + 0xbf, 0xe7, 0x95, 0x69, 0x68, 0x1f, 0x7f, 0x8d, 0xab, 0x8c, 0x7a, 0x58, + 0x86, 0x10, 0x6d, 0x53, 0x0f, 0xe7, 0x88, 0x88, 0x6f, 0x8e, 0x5d, 0x13, + 0x15, 0x71, 0x54, 0x84, 0xd1, 0x88, 0x2b, 0x1d, 0x0c, 0x24, 0x12, 0xe8, + 0x79, 0x6f, 0x27, 0x0f, +}; +static const struct drbg_kat_no_reseed kat646_t = { + 0, kat646_entropyin, kat646_nonce, kat646_persstr, + kat646_addin0, kat646_addin1, kat646_retbits +}; +static const struct drbg_kat kat646 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat646_t +}; + +static const unsigned char kat647_entropyin[] = { + 0x52, 0xe7, 0xd8, 0xab, 0xd3, 0x0c, 0x4b, 0x14, 0x78, 0x67, 0x56, 0xe8, + 0x2d, 0xd7, 0xf8, 0x99, 0x07, 0x6e, 0x1c, 0xea, 0x07, 0xdc, 0x72, 0x2f, + 0x8e, 0x12, 0x16, 0x11, 0x41, 0xf6, 0xd9, 0xa5, +}; +static const unsigned char kat647_nonce[] = { + 0xca, 0xb6, 0x8c, 0xe9, 0xde, 0xb7, 0xe5, 0x45, 0xe3, 0x3e, 0x5a, 0x27, + 0xc4, 0x87, 0x85, 0x97, +}; +static const unsigned char kat647_persstr[] = { + 0x9a, 0xc3, 0xbf, 0x47, 0xf6, 0x30, 0x6a, 0x36, 0xee, 0x84, 0xed, 0x4e, + 0xe6, 0xae, 0xa8, 0xe1, 0xd7, 0xe8, 0xb1, 0x6b, 0x5c, 0x40, 0x7b, 0xd1, + 0x58, 0x3e, 0x7c, 0xb5, 0x2d, 0xa9, 0x12, 0x75, +}; +static const unsigned char kat647_addin0[] = { + 0xd7, 0xbd, 0xd5, 0xcb, 0xbe, 0xfd, 0x1b, 0x4d, 0x0c, 0xdb, 0x32, 0x93, + 0x7f, 0xeb, 0x8d, 0x01, 0x9d, 0x50, 0x3c, 0xae, 0x80, 0xa5, 0x24, 0x24, + 0x95, 0x66, 0x55, 0x65, 0xf3, 0x2f, 0xc4, 0x87, +}; +static const unsigned char kat647_addin1[] = { + 0x63, 0x61, 0xac, 0x7a, 0x3c, 0x20, 0x90, 0xbe, 0x66, 0xa4, 0x6f, 0xf8, + 0x29, 0xdf, 0x38, 0xff, 0x06, 0x3b, 0x2f, 0x9c, 0x53, 0x1c, 0x7e, 0x42, + 0x80, 0x30, 0x7e, 0xc4, 0x5c, 0x4f, 0xa0, 0xa6, +}; +static const unsigned char kat647_retbits[] = { + 0x98, 0x34, 0xb9, 0xe1, 0x61, 0x8d, 0x5f, 0x01, 0xee, 0x90, 0x83, 0xee, + 0x89, 0xcc, 0xb3, 0x3c, 0x18, 0x59, 0x6e, 0x67, 0x5e, 0x5f, 0x37, 0xc3, + 0xf4, 0xf5, 0x9a, 0x94, 0x6c, 0xa0, 0x93, 0xe1, 0xd8, 0xfb, 0x06, 0x8c, + 0xd8, 0xd6, 0xbb, 0x0f, 0xac, 0xeb, 0xb7, 0xed, 0x8d, 0x97, 0x42, 0x9d, + 0x22, 0x22, 0x3d, 0x2e, 0x2d, 0xd8, 0x7d, 0x04, 0x83, 0x93, 0xd3, 0x54, + 0x99, 0x31, 0x33, 0x9b, +}; +static const struct drbg_kat_no_reseed kat647_t = { + 1, kat647_entropyin, kat647_nonce, kat647_persstr, + kat647_addin0, kat647_addin1, kat647_retbits +}; +static const struct drbg_kat kat647 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat647_t +}; + +static const unsigned char kat648_entropyin[] = { + 0xdb, 0xe7, 0xa4, 0x62, 0x2d, 0x8c, 0xbf, 0xcc, 0x19, 0x1d, 0xc7, 0x40, + 0x56, 0x6f, 0xa0, 0x58, 0x8d, 0x77, 0x9a, 0x0d, 0x22, 0x7b, 0x03, 0x7f, + 0x73, 0x18, 0xa4, 0x28, 0x2a, 0x08, 0x0b, 0x0f, +}; +static const unsigned char kat648_nonce[] = { + 0xc4, 0xe3, 0x46, 0x9a, 0xc3, 0xa8, 0xd2, 0x31, 0x89, 0xc9, 0xc9, 0xe4, + 0x41, 0x2a, 0xbc, 0xd8, +}; +static const unsigned char kat648_persstr[] = { + 0x08, 0xdb, 0x81, 0xc1, 0x29, 0x71, 0x68, 0x1e, 0x78, 0x0b, 0xd9, 0xff, + 0x53, 0x76, 0x84, 0xde, 0x80, 0xc4, 0xbb, 0x21, 0x4d, 0x6e, 0xb1, 0x3a, + 0x92, 0x09, 0x04, 0x4a, 0xe4, 0x62, 0xa7, 0x40, +}; +static const unsigned char kat648_addin0[] = { + 0xf9, 0x53, 0x0b, 0x74, 0xa8, 0xcb, 0x02, 0x45, 0x56, 0xce, 0x54, 0xae, + 0xd8, 0x0c, 0x32, 0xef, 0x22, 0x01, 0xfb, 0x19, 0xf4, 0xaa, 0x56, 0x01, + 0x25, 0x85, 0x96, 0xc5, 0x97, 0x5e, 0x18, 0x4f, +}; +static const unsigned char kat648_addin1[] = { + 0xd1, 0x9a, 0x2e, 0xa8, 0x53, 0xde, 0xe8, 0x3d, 0xbf, 0xad, 0x41, 0x6f, + 0xec, 0x5f, 0xfe, 0xbc, 0xb1, 0xc6, 0x93, 0x6b, 0x35, 0x9a, 0xce, 0x38, + 0xc5, 0xf0, 0x57, 0x0e, 0x3a, 0xae, 0xe7, 0xd1, +}; +static const unsigned char kat648_retbits[] = { + 0xfe, 0xcf, 0xbc, 0x6e, 0xb3, 0xd0, 0x42, 0x23, 0x67, 0x58, 0x30, 0x44, + 0xbe, 0x8a, 0xfb, 0x65, 0x71, 0x77, 0x23, 0xf5, 0xfc, 0xc5, 0x3b, 0xde, + 0x92, 0x94, 0x86, 0x25, 0x56, 0x97, 0x0f, 0xe9, 0xde, 0x96, 0x4a, 0x27, + 0xd3, 0x1a, 0xcd, 0x1d, 0x41, 0xca, 0x77, 0xa1, 0xe3, 0xb0, 0xe7, 0x3f, + 0xfc, 0x0b, 0x1a, 0xa9, 0xc6, 0xd3, 0xcb, 0xe8, 0x42, 0x6c, 0xe9, 0x11, + 0x19, 0x3a, 0x16, 0x7b, +}; +static const struct drbg_kat_no_reseed kat648_t = { + 2, kat648_entropyin, kat648_nonce, kat648_persstr, + kat648_addin0, kat648_addin1, kat648_retbits +}; +static const struct drbg_kat kat648 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat648_t +}; + +static const unsigned char kat649_entropyin[] = { + 0xb1, 0x97, 0x8e, 0xa5, 0xdc, 0x18, 0xa9, 0x93, 0xab, 0x37, 0xb8, 0x81, + 0xe3, 0x3d, 0x85, 0xab, 0x54, 0x8e, 0x98, 0xaa, 0x2a, 0x79, 0x7e, 0xcf, + 0x8a, 0x19, 0x86, 0x21, 0xc0, 0xa1, 0xe1, 0x17, +}; +static const unsigned char kat649_nonce[] = { + 0xdb, 0x53, 0xb0, 0xde, 0x8f, 0x51, 0x78, 0x71, 0x7e, 0x0a, 0x69, 0xd8, + 0xbd, 0xee, 0x9f, 0x37, +}; +static const unsigned char kat649_persstr[] = { + 0x4f, 0x6d, 0xda, 0x5e, 0x9c, 0xc1, 0xd2, 0x53, 0x8e, 0xea, 0xce, 0x39, + 0xd2, 0x53, 0xe1, 0x62, 0x14, 0x57, 0xd6, 0x94, 0xa8, 0xe2, 0x4e, 0x5c, + 0x76, 0x02, 0xfc, 0xc8, 0x19, 0xfb, 0x83, 0x8b, +}; +static const unsigned char kat649_addin0[] = { + 0xe2, 0xad, 0xa7, 0x1c, 0x24, 0xf2, 0xde, 0xce, 0x43, 0x15, 0xc7, 0xda, + 0x2a, 0x94, 0xaf, 0x4e, 0x47, 0xa7, 0xca, 0x52, 0x9d, 0x9c, 0x36, 0x8a, + 0x32, 0xae, 0x45, 0x0d, 0x1a, 0x64, 0x5e, 0xe0, +}; +static const unsigned char kat649_addin1[] = { + 0xa9, 0x1a, 0x32, 0xbd, 0x1d, 0x9d, 0x83, 0xd1, 0x12, 0xf7, 0xac, 0xcf, + 0x95, 0x61, 0x15, 0xbd, 0x04, 0x8a, 0xb5, 0xf4, 0x24, 0x45, 0x31, 0xe5, + 0x93, 0x2e, 0x38, 0x2d, 0xd1, 0x43, 0x59, 0x73, +}; +static const unsigned char kat649_retbits[] = { + 0x39, 0x7d, 0xd1, 0x76, 0x9d, 0xe4, 0xdd, 0xa7, 0xaf, 0xf6, 0x45, 0xe3, + 0x2c, 0xfa, 0x1e, 0xd2, 0x2f, 0x3a, 0x43, 0x97, 0xb6, 0x28, 0x57, 0x89, + 0x6b, 0xaa, 0x0f, 0xba, 0x92, 0x62, 0xca, 0x8e, 0x46, 0xcf, 0x46, 0xf2, + 0x0b, 0x12, 0x77, 0x24, 0xd4, 0xc6, 0x86, 0x3c, 0x21, 0x11, 0xf1, 0xde, + 0xea, 0x9e, 0xfa, 0xdd, 0xb9, 0x18, 0x55, 0xbc, 0xd0, 0x18, 0x48, 0x1a, + 0xcf, 0x17, 0xf2, 0x5f, +}; +static const struct drbg_kat_no_reseed kat649_t = { + 3, kat649_entropyin, kat649_nonce, kat649_persstr, + kat649_addin0, kat649_addin1, kat649_retbits +}; +static const struct drbg_kat kat649 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat649_t +}; + +static const unsigned char kat650_entropyin[] = { + 0x9c, 0xe4, 0x9c, 0x6e, 0x9c, 0x5f, 0x2d, 0x43, 0xa1, 0xa2, 0xa1, 0xc2, + 0xa9, 0x0e, 0x8d, 0x63, 0xf1, 0xf4, 0xbd, 0x83, 0xfc, 0xde, 0xb7, 0x34, + 0xf1, 0x89, 0x42, 0x62, 0xd9, 0x1b, 0x5e, 0x91, +}; +static const unsigned char kat650_nonce[] = { + 0xf5, 0xa0, 0x88, 0x5f, 0x0c, 0x21, 0xa3, 0xf1, 0x6c, 0xfc, 0x3b, 0xb8, + 0x28, 0x24, 0x63, 0x33, +}; +static const unsigned char kat650_persstr[] = { + 0x0f, 0xa1, 0x4c, 0x2a, 0xb3, 0xbb, 0x6f, 0xc3, 0xf2, 0x22, 0xf1, 0x85, + 0x38, 0xee, 0x6c, 0xb9, 0x8b, 0x2e, 0x1a, 0x4c, 0xa7, 0xb5, 0x3e, 0x4c, + 0x91, 0x9b, 0xef, 0x88, 0x81, 0x38, 0x02, 0x62, +}; +static const unsigned char kat650_addin0[] = { + 0x90, 0x95, 0x89, 0xe0, 0x79, 0x5e, 0x57, 0x1c, 0x53, 0x08, 0x79, 0x50, + 0x3b, 0x56, 0x60, 0xf4, 0x20, 0x00, 0x3b, 0xcd, 0x19, 0xad, 0x05, 0x1a, + 0x50, 0x20, 0xa5, 0xd4, 0x46, 0x1b, 0x93, 0x27, +}; +static const unsigned char kat650_addin1[] = { + 0x96, 0xd4, 0x62, 0x87, 0x64, 0xc4, 0xa2, 0xe5, 0x2c, 0xed, 0x37, 0x57, + 0x4e, 0xa8, 0x61, 0x8b, 0x3e, 0xbf, 0xe7, 0x03, 0x5d, 0x41, 0xed, 0xcc, + 0x9b, 0x82, 0x0a, 0x22, 0xaa, 0x16, 0x70, 0x8b, +}; +static const unsigned char kat650_retbits[] = { + 0x1a, 0xaa, 0x09, 0xfc, 0x05, 0xa3, 0x22, 0xd3, 0x61, 0x00, 0xa6, 0x80, + 0x5c, 0xc7, 0x9b, 0xc3, 0xb5, 0x34, 0x38, 0x95, 0x03, 0x97, 0x69, 0x77, + 0x75, 0xc8, 0xf8, 0xf5, 0xb6, 0x87, 0x9d, 0x4f, 0x73, 0x86, 0xd8, 0x84, + 0xa0, 0x9b, 0xbd, 0x57, 0xa6, 0x8e, 0xfd, 0x79, 0xb7, 0xc0, 0xaf, 0x33, + 0xb3, 0xd4, 0x5d, 0x9e, 0xb5, 0xc1, 0x90, 0x9d, 0x4a, 0xb3, 0xe8, 0x31, + 0xe2, 0xd2, 0x6a, 0x67, +}; +static const struct drbg_kat_no_reseed kat650_t = { + 4, kat650_entropyin, kat650_nonce, kat650_persstr, + kat650_addin0, kat650_addin1, kat650_retbits +}; +static const struct drbg_kat kat650 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat650_t +}; + +static const unsigned char kat651_entropyin[] = { + 0x46, 0xb2, 0xd8, 0x67, 0x16, 0xa4, 0x29, 0x35, 0x8c, 0x6c, 0x39, 0x51, + 0x79, 0x7e, 0x64, 0x17, 0x10, 0x4a, 0x48, 0xd8, 0xf7, 0x50, 0x72, 0xa1, + 0x80, 0xbf, 0x7f, 0xdf, 0x6d, 0xd8, 0x88, 0xe2, +}; +static const unsigned char kat651_nonce[] = { + 0x94, 0x4b, 0x76, 0x18, 0x0c, 0x1a, 0x36, 0x05, 0x55, 0x09, 0x8f, 0x3d, + 0xe9, 0x62, 0xdb, 0x43, +}; +static const unsigned char kat651_persstr[] = { + 0x7b, 0xb9, 0xcb, 0x64, 0x23, 0xd4, 0x68, 0x5d, 0x86, 0x6e, 0x47, 0xf9, + 0x84, 0x73, 0xa7, 0xdc, 0x72, 0x0b, 0xe0, 0xe4, 0xa4, 0x2e, 0xb3, 0x8b, + 0x0e, 0x38, 0x3b, 0x3a, 0xf6, 0xa0, 0x12, 0x56, +}; +static const unsigned char kat651_addin0[] = { + 0xaa, 0x56, 0xfe, 0xc9, 0x90, 0x6c, 0x89, 0xfa, 0xad, 0xb7, 0x8d, 0xf0, + 0xfd, 0x67, 0x07, 0xe7, 0x5e, 0xae, 0x96, 0xc7, 0x96, 0xd3, 0x01, 0x35, + 0x7c, 0x95, 0x54, 0xe2, 0x99, 0x76, 0x8e, 0x76, +}; +static const unsigned char kat651_addin1[] = { + 0xc3, 0x70, 0x47, 0x12, 0x29, 0x73, 0xa6, 0xbe, 0xe2, 0xa3, 0xa9, 0x48, + 0x1a, 0x24, 0xd5, 0x48, 0x2c, 0x61, 0x13, 0xaf, 0xf3, 0x86, 0x5d, 0x6f, + 0xc1, 0x08, 0x98, 0x96, 0x6b, 0x7c, 0x8e, 0x6f, +}; +static const unsigned char kat651_retbits[] = { + 0xaf, 0xc8, 0x13, 0xfb, 0x36, 0x47, 0x04, 0x0d, 0x07, 0x96, 0x3b, 0x87, + 0xbb, 0x78, 0x80, 0x4a, 0x07, 0x29, 0xa3, 0x11, 0xb6, 0xee, 0x4e, 0xd2, + 0x66, 0x56, 0x67, 0x9e, 0x56, 0xe3, 0x71, 0x43, 0x5f, 0x3f, 0xa4, 0x50, + 0x45, 0x44, 0x82, 0x70, 0x3c, 0xbf, 0x91, 0x8c, 0xfe, 0x09, 0x45, 0xc7, + 0x0f, 0x37, 0x57, 0xe2, 0xc6, 0xab, 0x3a, 0x67, 0x4a, 0xc7, 0x3b, 0x21, + 0xde, 0x42, 0xc9, 0x74, +}; +static const struct drbg_kat_no_reseed kat651_t = { + 5, kat651_entropyin, kat651_nonce, kat651_persstr, + kat651_addin0, kat651_addin1, kat651_retbits +}; +static const struct drbg_kat kat651 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat651_t +}; + +static const unsigned char kat652_entropyin[] = { + 0x4e, 0xcf, 0x9a, 0xa3, 0xd6, 0xe3, 0x38, 0x08, 0xc5, 0x2a, 0x5d, 0x70, + 0x08, 0xa7, 0x67, 0xb8, 0x32, 0xeb, 0x92, 0x5a, 0xc1, 0xd6, 0x7d, 0xdc, + 0x76, 0x11, 0x5e, 0x3c, 0x16, 0x38, 0xab, 0x8e, +}; +static const unsigned char kat652_nonce[] = { + 0xd5, 0x82, 0xd4, 0x64, 0x65, 0xf0, 0x17, 0x9d, 0x1d, 0x3a, 0x95, 0x90, + 0xf8, 0x86, 0x18, 0xc0, +}; +static const unsigned char kat652_persstr[] = { + 0xfb, 0x33, 0x96, 0xb7, 0xfc, 0xdf, 0xa4, 0x49, 0x21, 0x0b, 0x4c, 0xe4, + 0x4d, 0x39, 0x1f, 0xd8, 0x7e, 0xc5, 0x66, 0x3e, 0x97, 0xca, 0x95, 0x3d, + 0x2f, 0xdc, 0xed, 0x45, 0x33, 0x08, 0xf8, 0xa6, +}; +static const unsigned char kat652_addin0[] = { + 0x42, 0x3b, 0x59, 0xa0, 0x38, 0x7f, 0xd1, 0xdc, 0xe9, 0x3c, 0x4b, 0xc4, + 0xb2, 0xc4, 0xab, 0xcb, 0xe0, 0x56, 0xe1, 0x0f, 0x98, 0xc1, 0x1c, 0xc1, + 0x0c, 0x3b, 0xe1, 0x39, 0x72, 0x9e, 0x04, 0xc2, +}; +static const unsigned char kat652_addin1[] = { + 0x5f, 0x6f, 0xe2, 0xa4, 0xbe, 0x57, 0x01, 0xd0, 0xf8, 0x73, 0x5f, 0x1e, + 0x63, 0xaa, 0x1f, 0x4e, 0xb8, 0xc7, 0x21, 0x3a, 0x78, 0x7b, 0x8b, 0x14, + 0x4b, 0x83, 0xce, 0xca, 0x54, 0x54, 0x7a, 0x94, +}; +static const unsigned char kat652_retbits[] = { + 0xeb, 0x5c, 0xbd, 0xab, 0x07, 0xb7, 0x1c, 0xd3, 0x56, 0x04, 0xe8, 0x65, + 0xd4, 0xf8, 0xb2, 0x6e, 0xb8, 0x40, 0xa6, 0x5f, 0x83, 0xa1, 0xdf, 0xe7, + 0xe3, 0xf6, 0xb2, 0xfc, 0xd2, 0x41, 0x2c, 0xbc, 0x21, 0xf9, 0xad, 0x09, + 0x39, 0x93, 0xcf, 0xab, 0x3b, 0x41, 0x48, 0x97, 0x28, 0x33, 0x8b, 0x58, + 0xbe, 0xf0, 0xb7, 0x3d, 0x08, 0x63, 0x8c, 0xc1, 0x25, 0x8c, 0x39, 0x09, + 0x89, 0xeb, 0x7c, 0x28, +}; +static const struct drbg_kat_no_reseed kat652_t = { + 6, kat652_entropyin, kat652_nonce, kat652_persstr, + kat652_addin0, kat652_addin1, kat652_retbits +}; +static const struct drbg_kat kat652 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat652_t +}; + +static const unsigned char kat653_entropyin[] = { + 0x94, 0xaa, 0x46, 0x3c, 0x75, 0x46, 0xa1, 0x59, 0xea, 0x14, 0xaf, 0x23, + 0x55, 0xaa, 0x78, 0x5a, 0x03, 0xc9, 0x12, 0x17, 0x97, 0x71, 0x9d, 0xc8, + 0xe8, 0xd5, 0xee, 0xeb, 0x2c, 0xc5, 0x1c, 0x59, +}; +static const unsigned char kat653_nonce[] = { + 0x26, 0x9e, 0x5d, 0x4a, 0xd3, 0xcf, 0x2d, 0x14, 0xa1, 0x7b, 0xae, 0x19, + 0xc7, 0xd9, 0xc0, 0x85, +}; +static const unsigned char kat653_persstr[] = { + 0x35, 0x11, 0xa4, 0x24, 0x9d, 0x85, 0x50, 0x72, 0xf6, 0x5b, 0x31, 0xb2, + 0x15, 0x81, 0x99, 0x2c, 0x75, 0x4c, 0xc3, 0x9d, 0xc5, 0x72, 0x59, 0x24, + 0xe5, 0x7e, 0x5a, 0x39, 0xe3, 0xce, 0x9e, 0x30, +}; +static const unsigned char kat653_addin0[] = { + 0xad, 0x0c, 0x18, 0x97, 0x1e, 0x6c, 0xf6, 0xc7, 0x74, 0x66, 0x71, 0xac, + 0x37, 0x6c, 0x30, 0x86, 0x1f, 0xc7, 0xca, 0x66, 0x13, 0x46, 0x06, 0x7c, + 0x44, 0xf6, 0x0f, 0x48, 0x39, 0x8c, 0xc6, 0x03, +}; +static const unsigned char kat653_addin1[] = { + 0x1f, 0x4a, 0x35, 0xab, 0xe8, 0x55, 0xd3, 0xfb, 0x5d, 0x69, 0x60, 0x7b, + 0xb8, 0xa5, 0x88, 0x8a, 0x10, 0x54, 0xd9, 0x95, 0x71, 0xf7, 0xf6, 0x02, + 0x0e, 0xc6, 0x52, 0x48, 0xd4, 0x72, 0x7d, 0x4f, +}; +static const unsigned char kat653_retbits[] = { + 0x7d, 0xd6, 0x6c, 0xa4, 0x01, 0x70, 0x9b, 0x52, 0xc7, 0x7f, 0x67, 0xc2, + 0x20, 0x26, 0xfd, 0x92, 0x1c, 0xb6, 0x03, 0xfe, 0xc7, 0x28, 0x9d, 0xb4, + 0x44, 0x00, 0xa7, 0xcd, 0x83, 0x22, 0xf2, 0xb2, 0xf8, 0xe2, 0xda, 0x65, + 0x2b, 0xe5, 0x6a, 0xe3, 0x7b, 0x2a, 0x59, 0x84, 0xeb, 0xbd, 0x88, 0x9c, + 0x63, 0xfc, 0x39, 0x9c, 0x24, 0x29, 0x6a, 0x6c, 0xb6, 0x5f, 0xdb, 0x2c, + 0x2e, 0x86, 0x9d, 0x0b, +}; +static const struct drbg_kat_no_reseed kat653_t = { + 7, kat653_entropyin, kat653_nonce, kat653_persstr, + kat653_addin0, kat653_addin1, kat653_retbits +}; +static const struct drbg_kat kat653 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat653_t +}; + +static const unsigned char kat654_entropyin[] = { + 0x92, 0x1e, 0x44, 0xa4, 0xa0, 0xd1, 0x8d, 0xe3, 0x27, 0x16, 0xd4, 0x15, + 0xc0, 0xeb, 0xb7, 0x44, 0x7f, 0x88, 0xc9, 0x4f, 0xe1, 0x28, 0x01, 0x3b, + 0xb6, 0xcc, 0xb9, 0x1b, 0xa3, 0x70, 0xa9, 0x42, +}; +static const unsigned char kat654_nonce[] = { + 0x02, 0xb1, 0xac, 0x59, 0xd8, 0x95, 0xeb, 0x97, 0x19, 0xa7, 0xff, 0x3b, + 0xbe, 0x26, 0xcf, 0x41, +}; +static const unsigned char kat654_persstr[] = { + 0x21, 0xa1, 0xa3, 0x4a, 0xb5, 0xaa, 0xb7, 0x6d, 0xf9, 0x22, 0x80, 0x68, + 0x39, 0xbd, 0x4a, 0xce, 0x2f, 0x17, 0xde, 0xf5, 0x9b, 0xc7, 0x35, 0xbd, + 0x9f, 0x9e, 0xb0, 0x18, 0x00, 0x4b, 0x02, 0x02, +}; +static const unsigned char kat654_addin0[] = { + 0x8f, 0x8d, 0x89, 0x50, 0x5d, 0xb0, 0xf5, 0x9e, 0x62, 0xea, 0xc8, 0x3a, + 0x07, 0x94, 0xd5, 0x7e, 0x7a, 0xa0, 0xb6, 0x89, 0x82, 0x5b, 0x1f, 0x32, + 0xe4, 0xbe, 0x82, 0xa2, 0x80, 0x5e, 0xf7, 0x94, +}; +static const unsigned char kat654_addin1[] = { + 0x0b, 0xd6, 0xd9, 0xde, 0x89, 0x60, 0x6b, 0x1b, 0x6f, 0xb2, 0xd8, 0x55, + 0x60, 0x42, 0xf3, 0xbe, 0x2e, 0x18, 0xa2, 0x24, 0x65, 0xbe, 0xf4, 0x4c, + 0x4b, 0x32, 0x29, 0x2d, 0x91, 0x03, 0x92, 0x08, +}; +static const unsigned char kat654_retbits[] = { + 0x86, 0xdf, 0xd5, 0x8f, 0xc6, 0xb9, 0x3d, 0x89, 0x57, 0x10, 0xbb, 0x6b, + 0x06, 0x76, 0x74, 0x97, 0xad, 0x1c, 0xa0, 0xe8, 0xc0, 0xf5, 0xca, 0xdd, + 0x8a, 0x01, 0x2f, 0xce, 0xd9, 0x2c, 0x4f, 0xa6, 0x42, 0x3b, 0x77, 0xb9, + 0x6a, 0x1d, 0xc2, 0x89, 0x71, 0xf7, 0x71, 0x5b, 0x78, 0x23, 0xdd, 0x5d, + 0x91, 0x0e, 0xbe, 0x2e, 0xaf, 0xee, 0x37, 0x79, 0xa6, 0x1e, 0x1f, 0x70, + 0x7f, 0x53, 0x25, 0xd7, +}; +static const struct drbg_kat_no_reseed kat654_t = { + 8, kat654_entropyin, kat654_nonce, kat654_persstr, + kat654_addin0, kat654_addin1, kat654_retbits +}; +static const struct drbg_kat kat654 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat654_t +}; + +static const unsigned char kat655_entropyin[] = { + 0x0c, 0x7c, 0x98, 0x7a, 0x32, 0xbb, 0x36, 0x9f, 0x5c, 0x13, 0x3c, 0x02, + 0x94, 0x36, 0x0a, 0xb3, 0xf0, 0x6f, 0xff, 0x4a, 0xf3, 0x0a, 0xcf, 0x4a, + 0x36, 0x55, 0x4a, 0xbc, 0x81, 0xea, 0x17, 0xd7, +}; +static const unsigned char kat655_nonce[] = { + 0x49, 0x63, 0x0b, 0x51, 0x6b, 0x1e, 0x44, 0xca, 0xd4, 0x62, 0x1b, 0xb1, + 0xb2, 0x94, 0x34, 0xff, +}; +static const unsigned char kat655_persstr[] = { + 0xfc, 0x70, 0x06, 0x12, 0xef, 0x74, 0x77, 0x9c, 0x25, 0xef, 0x84, 0x64, + 0x32, 0x10, 0x6e, 0xe4, 0x32, 0x1d, 0x35, 0x7c, 0x9c, 0x74, 0xed, 0x0b, + 0xcf, 0xe6, 0xd7, 0x31, 0x2e, 0xc0, 0xc6, 0xba, +}; +static const unsigned char kat655_addin0[] = { + 0x55, 0xd3, 0xde, 0xaf, 0x9f, 0x26, 0x70, 0xe7, 0x2b, 0xdc, 0x3d, 0x13, + 0xd6, 0x2e, 0xaf, 0xcc, 0x8f, 0x2c, 0x2e, 0xd0, 0xcb, 0xf1, 0x79, 0x82, + 0xf5, 0x71, 0xd0, 0x86, 0x73, 0x8f, 0x40, 0xa2, +}; +static const unsigned char kat655_addin1[] = { + 0x03, 0xe4, 0x80, 0xed, 0x33, 0xc8, 0x1f, 0x60, 0xee, 0x1d, 0x55, 0x8d, + 0xf4, 0x9e, 0x6e, 0x0c, 0x2e, 0x4f, 0x8c, 0xd4, 0x00, 0x7c, 0x0c, 0xa9, + 0xd0, 0x1a, 0x65, 0xe3, 0x2d, 0x1f, 0xd1, 0x3c, +}; +static const unsigned char kat655_retbits[] = { + 0x1c, 0x02, 0xa1, 0x3d, 0xb6, 0xf4, 0xbe, 0xfd, 0x3a, 0xa7, 0x4b, 0x04, + 0xe9, 0xea, 0xb0, 0x10, 0x18, 0x4a, 0x32, 0x2e, 0xfa, 0xeb, 0x86, 0x0f, + 0x60, 0x7e, 0x98, 0xd5, 0xb1, 0x5d, 0x43, 0x37, 0x98, 0x3d, 0xee, 0xf8, + 0x77, 0x99, 0xc0, 0x86, 0x55, 0x17, 0xa1, 0x2c, 0x4b, 0x49, 0xbe, 0xd1, + 0x01, 0x6c, 0xb7, 0x3e, 0xba, 0x6e, 0xa0, 0x2f, 0xca, 0x60, 0xf7, 0xef, + 0xe5, 0x50, 0xdf, 0x3a, +}; +static const struct drbg_kat_no_reseed kat655_t = { + 9, kat655_entropyin, kat655_nonce, kat655_persstr, + kat655_addin0, kat655_addin1, kat655_retbits +}; +static const struct drbg_kat kat655 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat655_t +}; + +static const unsigned char kat656_entropyin[] = { + 0xaf, 0xdb, 0xc8, 0xac, 0xbe, 0xeb, 0xbb, 0x3a, 0x58, 0xb1, 0xbb, 0xbe, + 0xb1, 0x04, 0x83, 0x53, 0x47, 0x73, 0xa2, 0xe1, 0x63, 0x1f, 0x98, 0xc3, + 0x50, 0x3f, 0x6a, 0x4b, 0x33, 0x1b, 0x14, 0xb3, +}; +static const unsigned char kat656_nonce[] = { + 0xdc, 0x8d, 0xff, 0x64, 0xe4, 0x4d, 0x50, 0xd4, 0x5d, 0xfd, 0x66, 0xfd, + 0x7c, 0x54, 0x7a, 0xd0, +}; +static const unsigned char kat656_persstr[] = { + 0x2e, 0xc2, 0xbd, 0x1a, 0xb6, 0x14, 0x79, 0xcf, 0x78, 0x0b, 0x97, 0x7c, + 0xc4, 0x80, 0xa6, 0x9b, 0x53, 0x06, 0x5f, 0x38, 0x12, 0x70, 0xea, 0x95, + 0xa0, 0x41, 0xeb, 0x41, 0x6c, 0x81, 0x92, 0xf8, +}; +static const unsigned char kat656_addin0[] = { + 0x69, 0x6f, 0xa5, 0x74, 0x8d, 0xf7, 0x5c, 0xf6, 0x46, 0xd3, 0x4f, 0xb4, + 0x78, 0xce, 0x2c, 0x9b, 0xfe, 0xd2, 0xe7, 0x97, 0x81, 0xf5, 0xed, 0x1e, + 0xdc, 0x2e, 0xe7, 0xd9, 0xb5, 0x8b, 0xee, 0xaa, +}; +static const unsigned char kat656_addin1[] = { + 0xe7, 0xfe, 0xf0, 0xf7, 0x55, 0x3d, 0x29, 0x19, 0xb8, 0x03, 0xca, 0x8b, + 0x83, 0xa6, 0xd4, 0x63, 0xce, 0x74, 0xff, 0xa6, 0x04, 0x0b, 0x02, 0x26, + 0x85, 0xea, 0xee, 0x81, 0x65, 0xcb, 0x49, 0x38, +}; +static const unsigned char kat656_retbits[] = { + 0xd5, 0x57, 0xec, 0x72, 0x87, 0x87, 0xd1, 0xf2, 0xc5, 0x53, 0xc2, 0xba, + 0x91, 0x34, 0x51, 0x31, 0x6e, 0x7c, 0x5a, 0xa4, 0x99, 0xd9, 0xe7, 0x47, + 0x40, 0xba, 0xb1, 0x59, 0xdc, 0x80, 0xbb, 0xc8, 0x87, 0x08, 0x41, 0xed, + 0x83, 0x73, 0xc1, 0x0a, 0xfc, 0xc3, 0x8f, 0x91, 0xb0, 0x66, 0x7d, 0x6a, + 0x44, 0x77, 0xde, 0xe8, 0x8e, 0x07, 0xd9, 0x0a, 0x10, 0x64, 0x9d, 0x57, + 0x21, 0x01, 0x1b, 0x97, +}; +static const struct drbg_kat_no_reseed kat656_t = { + 10, kat656_entropyin, kat656_nonce, kat656_persstr, + kat656_addin0, kat656_addin1, kat656_retbits +}; +static const struct drbg_kat kat656 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat656_t +}; + +static const unsigned char kat657_entropyin[] = { + 0x80, 0xca, 0xfa, 0x90, 0xe1, 0x3c, 0x24, 0xfd, 0x0d, 0x53, 0x61, 0xf5, + 0x0f, 0x38, 0x58, 0xcb, 0x46, 0xbe, 0x74, 0x6c, 0x0b, 0xf9, 0xf9, 0xc8, + 0x6b, 0xfa, 0x57, 0x4f, 0x6f, 0x63, 0xa6, 0xa3, +}; +static const unsigned char kat657_nonce[] = { + 0xa9, 0xdd, 0xc1, 0x8c, 0x92, 0x9e, 0x55, 0x05, 0xda, 0x59, 0xed, 0xdc, + 0xf5, 0x1c, 0x6c, 0x48, +}; +static const unsigned char kat657_persstr[] = { + 0x2b, 0xb7, 0x5c, 0xe2, 0x9b, 0xab, 0x75, 0xb2, 0xe9, 0x19, 0x2b, 0x13, + 0x72, 0x98, 0x77, 0x73, 0x10, 0x13, 0xc5, 0xde, 0x00, 0x6c, 0x3f, 0x58, + 0x25, 0xaf, 0x8e, 0xe8, 0xd7, 0xbe, 0x70, 0x73, +}; +static const unsigned char kat657_addin0[] = { + 0x8e, 0x97, 0xf8, 0x40, 0x57, 0x4b, 0x9f, 0xe2, 0xed, 0x8a, 0x86, 0xd2, + 0xbd, 0xf3, 0x72, 0xb0, 0xf3, 0x1f, 0x89, 0x29, 0xa8, 0xd0, 0xd2, 0xb1, + 0x55, 0x5f, 0x03, 0xd6, 0xcc, 0x96, 0x03, 0x23, +}; +static const unsigned char kat657_addin1[] = { + 0x65, 0xd9, 0x9e, 0x66, 0x4a, 0x5f, 0x3a, 0xc7, 0xb0, 0xd0, 0x79, 0xba, + 0x3c, 0xbd, 0x2d, 0x1b, 0x73, 0x3b, 0x9a, 0x46, 0xb4, 0x5b, 0xf8, 0x05, + 0xbb, 0xb1, 0x44, 0x26, 0x92, 0xd1, 0xa4, 0xd3, +}; +static const unsigned char kat657_retbits[] = { + 0x9b, 0x9b, 0xde, 0xea, 0x2c, 0x91, 0x2f, 0xc1, 0x6d, 0x1b, 0x98, 0xcb, + 0x68, 0x02, 0x01, 0x34, 0x16, 0x76, 0x08, 0x09, 0x07, 0x3c, 0x53, 0x12, + 0x48, 0xe2, 0x6c, 0x64, 0x27, 0x2d, 0x44, 0x2c, 0x89, 0xdb, 0x23, 0x42, + 0xda, 0x1b, 0x44, 0xca, 0x4a, 0x1e, 0x5d, 0x98, 0x34, 0x99, 0x99, 0x9c, + 0xd8, 0x85, 0x1e, 0x20, 0xfc, 0x05, 0x59, 0xf8, 0x37, 0xf6, 0x67, 0x96, + 0xdd, 0x56, 0xb3, 0xd9, +}; +static const struct drbg_kat_no_reseed kat657_t = { + 11, kat657_entropyin, kat657_nonce, kat657_persstr, + kat657_addin0, kat657_addin1, kat657_retbits +}; +static const struct drbg_kat kat657 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat657_t +}; + +static const unsigned char kat658_entropyin[] = { + 0x28, 0x16, 0xc4, 0xa6, 0xe8, 0x59, 0xc7, 0xda, 0x65, 0x71, 0xf5, 0x92, + 0x1b, 0x8e, 0x62, 0x1e, 0x9b, 0xdb, 0x9d, 0x97, 0xeb, 0x3f, 0x9a, 0x44, + 0x1a, 0x3e, 0x85, 0x37, 0x53, 0x6b, 0xfe, 0x21, +}; +static const unsigned char kat658_nonce[] = { + 0x9b, 0x90, 0x61, 0x36, 0xc6, 0x85, 0xd9, 0xae, 0x68, 0xf4, 0x98, 0x63, + 0xdc, 0xcf, 0xc3, 0x1b, +}; +static const unsigned char kat658_persstr[] = { + 0x72, 0x22, 0x82, 0xe8, 0xc3, 0xd4, 0xae, 0x4c, 0xd3, 0x2c, 0xcb, 0x06, + 0xad, 0x25, 0x0b, 0x33, 0xcf, 0x6e, 0xb0, 0xcf, 0x96, 0x4e, 0xbd, 0x8a, + 0x1f, 0xb8, 0xb5, 0x8b, 0xed, 0x00, 0xea, 0xb1, +}; +static const unsigned char kat658_addin0[] = { + 0x5c, 0xa9, 0xd7, 0xbd, 0x6e, 0x95, 0x34, 0xdd, 0xfa, 0x5a, 0x6c, 0x4d, + 0xc0, 0x0b, 0x40, 0x4f, 0x25, 0x9f, 0x04, 0x2d, 0xed, 0x1f, 0x19, 0x9c, + 0xe6, 0x6a, 0xa5, 0x4d, 0xaa, 0x3e, 0x50, 0x19, +}; +static const unsigned char kat658_addin1[] = { + 0x1d, 0xd4, 0x1f, 0x32, 0x17, 0x02, 0x4b, 0xd5, 0xf0, 0xcb, 0xdd, 0x44, + 0xa5, 0x91, 0x5e, 0xda, 0x49, 0xf3, 0xc3, 0x03, 0xc9, 0xa7, 0x0f, 0xd7, + 0x4e, 0x67, 0x50, 0x28, 0xe5, 0x67, 0xbb, 0x37, +}; +static const unsigned char kat658_retbits[] = { + 0x4e, 0x3b, 0x60, 0xae, 0xf2, 0xe3, 0xb7, 0x5e, 0xd0, 0x70, 0xd4, 0x36, + 0x3e, 0x68, 0x44, 0xc6, 0x00, 0xa5, 0x58, 0x7c, 0x5a, 0x8c, 0x8c, 0x4e, + 0x11, 0xa6, 0x25, 0x87, 0x61, 0xcc, 0x07, 0x2f, 0xa4, 0x16, 0x50, 0x7d, + 0x73, 0xa4, 0xbe, 0xa1, 0x9c, 0x8a, 0x31, 0x38, 0xa8, 0xdb, 0x32, 0x97, + 0x16, 0xd6, 0xa8, 0x30, 0xb2, 0x87, 0x0b, 0x5b, 0x69, 0x95, 0x8a, 0x4d, + 0xae, 0xd4, 0xb7, 0x14, +}; +static const struct drbg_kat_no_reseed kat658_t = { + 12, kat658_entropyin, kat658_nonce, kat658_persstr, + kat658_addin0, kat658_addin1, kat658_retbits +}; +static const struct drbg_kat kat658 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat658_t +}; + +static const unsigned char kat659_entropyin[] = { + 0x5f, 0x44, 0x0d, 0xb9, 0x7d, 0x11, 0x47, 0x58, 0x56, 0xe1, 0x20, 0x4d, + 0xb7, 0x00, 0xf2, 0x0e, 0xf5, 0x2c, 0xc9, 0x50, 0x5d, 0xe7, 0xfc, 0x23, + 0x53, 0xd6, 0x42, 0x9c, 0x8c, 0xde, 0xcc, 0xca, +}; +static const unsigned char kat659_nonce[] = { + 0xb5, 0xf1, 0xe8, 0x27, 0x26, 0x3a, 0xac, 0x0d, 0xfd, 0xf6, 0x41, 0xe8, + 0x99, 0x25, 0x3a, 0x83, +}; +static const unsigned char kat659_persstr[] = { + 0x2a, 0x5b, 0x6b, 0x82, 0x92, 0xe5, 0xe8, 0x7c, 0x53, 0xcd, 0x2b, 0x27, + 0x31, 0x2f, 0x77, 0x00, 0xcc, 0x40, 0xac, 0x0f, 0x4a, 0xd4, 0xbc, 0x7b, + 0x9f, 0xbc, 0xe4, 0xdd, 0x52, 0xa0, 0x94, 0xf9, +}; +static const unsigned char kat659_addin0[] = { + 0x3a, 0xd3, 0x5c, 0x3b, 0x31, 0x85, 0x34, 0xed, 0xe1, 0xba, 0x6f, 0x10, + 0xfc, 0x75, 0x9f, 0x24, 0x91, 0x4a, 0x6c, 0x6e, 0x59, 0x34, 0xba, 0x83, + 0xa7, 0x76, 0xeb, 0xdb, 0x57, 0x71, 0x7a, 0xa2, +}; +static const unsigned char kat659_addin1[] = { + 0x81, 0x20, 0x2a, 0x62, 0x8b, 0xc3, 0x1e, 0x86, 0x82, 0x1d, 0xc0, 0xd8, + 0xa3, 0xed, 0xb9, 0xd8, 0x64, 0xe5, 0x1b, 0x27, 0x4c, 0x23, 0x04, 0xc6, + 0x33, 0x44, 0xae, 0x50, 0x18, 0xcd, 0x03, 0x87, +}; +static const unsigned char kat659_retbits[] = { + 0xf9, 0x1d, 0x2f, 0xd3, 0xa2, 0x0e, 0x54, 0x5e, 0xaf, 0xbe, 0x12, 0x4b, + 0x20, 0x33, 0x2e, 0x4a, 0xc2, 0x4a, 0xbe, 0x5f, 0x2c, 0x5b, 0xc0, 0xc4, + 0x5d, 0x21, 0x84, 0x88, 0xd2, 0xfc, 0x94, 0xde, 0xd5, 0x65, 0xaa, 0xf5, + 0x57, 0x5d, 0x8c, 0x93, 0x51, 0x98, 0x5f, 0xaf, 0xb2, 0x2e, 0x7f, 0xc5, + 0xa2, 0xc8, 0xe9, 0x53, 0x2e, 0x5b, 0xaf, 0x4b, 0x03, 0xb9, 0xd1, 0xac, + 0x8a, 0x96, 0x05, 0x05, +}; +static const struct drbg_kat_no_reseed kat659_t = { + 13, kat659_entropyin, kat659_nonce, kat659_persstr, + kat659_addin0, kat659_addin1, kat659_retbits +}; +static const struct drbg_kat kat659 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat659_t +}; + +static const unsigned char kat660_entropyin[] = { + 0xec, 0x7e, 0x9d, 0x66, 0x9b, 0x31, 0x77, 0x03, 0x16, 0xb4, 0x20, 0x51, + 0x0e, 0x41, 0x55, 0x3f, 0x68, 0x3e, 0x01, 0x24, 0x03, 0xe6, 0x57, 0xf6, + 0x39, 0x92, 0x0a, 0x60, 0x35, 0xee, 0xd3, 0x4b, +}; +static const unsigned char kat660_nonce[] = { + 0x30, 0x79, 0xe0, 0xa6, 0x21, 0x50, 0xe6, 0x0e, 0x58, 0xad, 0xe5, 0xad, + 0x62, 0x22, 0x5f, 0xd9, +}; +static const unsigned char kat660_persstr[] = { + 0xaf, 0x32, 0xfc, 0x72, 0xf2, 0x34, 0x31, 0x3d, 0xbb, 0x9f, 0xd6, 0x6b, + 0x4d, 0x91, 0xbb, 0xa7, 0x43, 0x20, 0x6d, 0x6c, 0xdf, 0x28, 0x9d, 0xcd, + 0x4f, 0xab, 0x1e, 0xf7, 0xab, 0x46, 0xb1, 0xfa, +}; +static const unsigned char kat660_addin0[] = { + 0x03, 0x18, 0x60, 0xc8, 0xc0, 0x18, 0x32, 0xad, 0xfb, 0xfc, 0xb9, 0x32, + 0x2f, 0x28, 0xe8, 0xbf, 0xf4, 0x0f, 0xac, 0x8b, 0x3d, 0xc2, 0x8b, 0x36, + 0x60, 0x88, 0xc2, 0x5f, 0x2c, 0x4b, 0xd7, 0xdd, +}; +static const unsigned char kat660_addin1[] = { + 0x31, 0xed, 0xd2, 0xa5, 0xcb, 0x0a, 0x51, 0x08, 0x89, 0x51, 0x76, 0x80, + 0x33, 0xc9, 0x67, 0x22, 0x40, 0x30, 0x93, 0x42, 0xdc, 0x90, 0xee, 0x00, + 0x93, 0x53, 0xf0, 0xc6, 0x65, 0xdd, 0xc7, 0xde, +}; +static const unsigned char kat660_retbits[] = { + 0x74, 0x90, 0xd6, 0xb1, 0x08, 0xe0, 0x16, 0x83, 0x8c, 0x6c, 0xf3, 0x3d, + 0xba, 0x4b, 0x78, 0xee, 0x3b, 0x6b, 0x36, 0x82, 0x9d, 0xe5, 0x10, 0x93, + 0xc9, 0xe6, 0x29, 0x09, 0x4a, 0x2f, 0x46, 0x2f, 0xdb, 0x55, 0x52, 0xf6, + 0xa0, 0x59, 0x33, 0x3f, 0xcc, 0x2c, 0xc3, 0xfb, 0x7f, 0xf1, 0x37, 0xc0, + 0xd8, 0xec, 0x1f, 0xcd, 0xa1, 0x7b, 0x58, 0x94, 0xe1, 0xa0, 0xfe, 0x24, + 0xf1, 0xe6, 0x7a, 0x8e, +}; +static const struct drbg_kat_no_reseed kat660_t = { + 14, kat660_entropyin, kat660_nonce, kat660_persstr, + kat660_addin0, kat660_addin1, kat660_retbits +}; +static const struct drbg_kat kat660 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat660_t +}; + +static const unsigned char kat661_entropyin[] = { + 0x4e, 0xe6, 0x8b, 0x33, 0x52, 0xb8, 0x74, 0xe1, 0xcc, 0x29, 0x37, 0x50, + 0x28, 0x85, 0x1d, 0xee, 0x9d, 0x5d, 0xfd, 0x88, 0xa4, 0x06, 0x64, 0xc7, + 0x9e, 0x2b, 0x72, 0x4f, 0xb1, 0x1b, 0x28, 0x08, +}; +static const unsigned char kat661_nonce[] = { + 0x1c, 0x6a, 0x80, 0xd8, 0x20, 0x12, 0xc3, 0x9c, 0x9f, 0x14, 0xa8, 0x08, + 0x64, 0x3f, 0x08, 0xe7, +}; +static const unsigned char kat661_persstr[] = {0}; +static const unsigned char kat661_addin0[] = {0}; +static const unsigned char kat661_addin1[] = {0}; +static const unsigned char kat661_retbits[] = { + 0x7c, 0x58, 0xd2, 0xa5, 0x52, 0x2a, 0x88, 0x34, 0x1f, 0xb5, 0x5f, 0xac, + 0xef, 0xdb, 0x6e, 0x24, 0x84, 0x0c, 0xae, 0x28, 0x39, 0x48, 0xd5, 0x31, + 0x48, 0xa3, 0x84, 0xe1, 0x3b, 0x54, 0x07, 0xd7, 0x71, 0x2c, 0x33, 0x43, + 0x4b, 0xd3, 0xd1, 0x94, 0x48, 0xb4, 0x32, 0x70, 0xc5, 0x48, 0x60, 0xbf, + 0x34, 0x95, 0x57, 0x90, 0x57, 0xc7, 0x0b, 0xff, 0x30, 0x84, 0xdd, 0xdf, + 0xf0, 0x8a, 0x09, 0x1d, +}; +static const struct drbg_kat_no_reseed kat661_t = { + 0, kat661_entropyin, kat661_nonce, kat661_persstr, + kat661_addin0, kat661_addin1, kat661_retbits +}; +static const struct drbg_kat kat661 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat661_t +}; + +static const unsigned char kat662_entropyin[] = { + 0x94, 0x42, 0xe3, 0xf7, 0x67, 0x75, 0x09, 0x3a, 0xc2, 0x63, 0x5d, 0x9b, + 0x21, 0x79, 0x74, 0xe8, 0xc7, 0xcc, 0x9c, 0xce, 0x8b, 0xba, 0x2f, 0x04, + 0xde, 0x57, 0x43, 0x2f, 0xe6, 0xcf, 0x0f, 0x4a, +}; +static const unsigned char kat662_nonce[] = { + 0xb9, 0x4a, 0x55, 0x8d, 0xe7, 0xf8, 0x87, 0xf7, 0xf5, 0x0d, 0x3f, 0x0c, + 0xd4, 0xf7, 0x6f, 0x43, +}; +static const unsigned char kat662_persstr[] = {0}; +static const unsigned char kat662_addin0[] = {0}; +static const unsigned char kat662_addin1[] = {0}; +static const unsigned char kat662_retbits[] = { + 0x31, 0xca, 0xae, 0xe5, 0xd5, 0x0c, 0x63, 0x42, 0xfd, 0x6b, 0x3b, 0x18, + 0xd0, 0xf8, 0x8e, 0x72, 0xb8, 0x57, 0xed, 0x3f, 0xe5, 0xcb, 0xaa, 0xf7, + 0x6b, 0xe1, 0xa6, 0xac, 0xf0, 0x85, 0x51, 0xcf, 0x3e, 0xb1, 0x5f, 0x4b, + 0x57, 0x3c, 0xa9, 0x89, 0x50, 0xc7, 0x7d, 0x30, 0xea, 0x1d, 0xc3, 0xb9, + 0xfa, 0x73, 0x33, 0x5c, 0xba, 0xa8, 0xe3, 0xa5, 0x16, 0x21, 0x11, 0x26, + 0x9a, 0xf7, 0x33, 0x3a, +}; +static const struct drbg_kat_no_reseed kat662_t = { + 1, kat662_entropyin, kat662_nonce, kat662_persstr, + kat662_addin0, kat662_addin1, kat662_retbits +}; +static const struct drbg_kat kat662 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat662_t +}; + +static const unsigned char kat663_entropyin[] = { + 0x27, 0xf1, 0xcf, 0xb9, 0x37, 0x18, 0x5e, 0xff, 0xf2, 0x48, 0xe1, 0xb1, + 0x18, 0x8c, 0xf1, 0xfd, 0x9f, 0xb4, 0x89, 0xa7, 0xc8, 0x79, 0x5e, 0xf2, + 0xc7, 0xe0, 0xf8, 0xa7, 0xd7, 0xf7, 0x11, 0xe0, +}; +static const unsigned char kat663_nonce[] = { + 0xe7, 0xac, 0x79, 0x5a, 0xdc, 0xda, 0xae, 0x1a, 0x93, 0x11, 0x68, 0x66, + 0xc0, 0x09, 0xc5, 0xe5, +}; +static const unsigned char kat663_persstr[] = {0}; +static const unsigned char kat663_addin0[] = {0}; +static const unsigned char kat663_addin1[] = {0}; +static const unsigned char kat663_retbits[] = { + 0x14, 0xf2, 0x2a, 0xb6, 0x9b, 0x2d, 0x5a, 0xc9, 0x16, 0x91, 0x70, 0x89, + 0x82, 0x7b, 0xd6, 0x57, 0xf8, 0xd6, 0xd1, 0xd9, 0x80, 0xb7, 0x92, 0x11, + 0xbc, 0x35, 0x0b, 0x0b, 0x32, 0x27, 0x96, 0x8d, 0x87, 0x66, 0x74, 0x29, + 0x7a, 0x89, 0x87, 0xdd, 0xb0, 0xa9, 0x44, 0xad, 0x1e, 0x22, 0xdf, 0x4c, + 0xf1, 0xb6, 0x12, 0xaf, 0x3f, 0x11, 0x01, 0x3a, 0x59, 0x7e, 0x2d, 0x20, + 0x1d, 0xed, 0x33, 0xc9, +}; +static const struct drbg_kat_no_reseed kat663_t = { + 2, kat663_entropyin, kat663_nonce, kat663_persstr, + kat663_addin0, kat663_addin1, kat663_retbits +}; +static const struct drbg_kat kat663 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat663_t +}; + +static const unsigned char kat664_entropyin[] = { + 0x65, 0x89, 0xa9, 0x0d, 0xda, 0xc0, 0x83, 0x8c, 0x73, 0xb7, 0xa4, 0x52, + 0x9f, 0x2c, 0x64, 0x7d, 0x70, 0x7d, 0x3f, 0x5f, 0x17, 0xcb, 0x76, 0xa8, + 0xdf, 0x26, 0x5f, 0x26, 0x4e, 0x33, 0xc8, 0xb9, +}; +static const unsigned char kat664_nonce[] = { + 0x00, 0x6a, 0x8e, 0x6c, 0x2f, 0xac, 0xb2, 0x35, 0x5f, 0xd6, 0xa4, 0x63, + 0x8d, 0xdb, 0x7c, 0x91, +}; +static const unsigned char kat664_persstr[] = {0}; +static const unsigned char kat664_addin0[] = {0}; +static const unsigned char kat664_addin1[] = {0}; +static const unsigned char kat664_retbits[] = { + 0xfb, 0xed, 0x16, 0x31, 0x23, 0xf1, 0xd0, 0x40, 0x44, 0x6c, 0xaf, 0xe4, + 0x4b, 0x96, 0x60, 0xa7, 0x21, 0x1d, 0x0f, 0xf0, 0xee, 0xae, 0xba, 0x86, + 0xa6, 0x12, 0xd8, 0x1d, 0x88, 0xee, 0x8c, 0x6a, 0xda, 0x33, 0xd2, 0x61, + 0x15, 0x27, 0x24, 0x21, 0xe9, 0xb8, 0x4a, 0x34, 0xd6, 0xbd, 0x6d, 0x7b, + 0xbb, 0xe6, 0x04, 0x3e, 0x38, 0x2f, 0x34, 0x8f, 0x0d, 0x7d, 0xaa, 0x94, + 0xdc, 0x72, 0xa1, 0x52, +}; +static const struct drbg_kat_no_reseed kat664_t = { + 3, kat664_entropyin, kat664_nonce, kat664_persstr, + kat664_addin0, kat664_addin1, kat664_retbits +}; +static const struct drbg_kat kat664 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat664_t +}; + +static const unsigned char kat665_entropyin[] = { + 0xe8, 0x76, 0xc1, 0x0c, 0x9e, 0x42, 0xc7, 0x53, 0x46, 0xd5, 0x93, 0xd6, + 0xeb, 0x04, 0x7a, 0x1f, 0xb3, 0x36, 0x73, 0x98, 0xd6, 0x23, 0x16, 0xd1, + 0x16, 0xa9, 0x29, 0xeb, 0x9e, 0xce, 0xcb, 0x18, +}; +static const unsigned char kat665_nonce[] = { + 0x81, 0x5a, 0xb7, 0x63, 0x32, 0xdb, 0x44, 0xe7, 0x13, 0xa8, 0xe9, 0x67, + 0xb2, 0x0b, 0x5c, 0x1f, +}; +static const unsigned char kat665_persstr[] = {0}; +static const unsigned char kat665_addin0[] = {0}; +static const unsigned char kat665_addin1[] = {0}; +static const unsigned char kat665_retbits[] = { + 0x70, 0x22, 0xdb, 0x94, 0x7f, 0xd4, 0x18, 0xf6, 0xc9, 0x2b, 0xf9, 0xa1, + 0x2b, 0x6d, 0x1b, 0x2b, 0xd2, 0x17, 0x75, 0x8f, 0xa2, 0xe3, 0x67, 0x76, + 0xf3, 0x5c, 0x9d, 0x33, 0xa4, 0x89, 0xf6, 0x91, 0x3a, 0x1d, 0x07, 0xb4, + 0xb4, 0x61, 0xa1, 0x39, 0x11, 0x46, 0x9c, 0xcf, 0x4f, 0x3b, 0x52, 0x11, + 0x11, 0x7b, 0xdc, 0xac, 0x05, 0x2a, 0xa8, 0xee, 0x0b, 0xe7, 0xe2, 0x7c, + 0x4c, 0xa2, 0xa3, 0x45, +}; +static const struct drbg_kat_no_reseed kat665_t = { + 4, kat665_entropyin, kat665_nonce, kat665_persstr, + kat665_addin0, kat665_addin1, kat665_retbits +}; +static const struct drbg_kat kat665 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat665_t +}; + +static const unsigned char kat666_entropyin[] = { + 0x9b, 0x3d, 0xee, 0xc2, 0x3e, 0xde, 0x86, 0x62, 0x5c, 0x5e, 0xad, 0x5f, + 0x2c, 0x77, 0xe6, 0x05, 0x46, 0x6b, 0x60, 0x22, 0x40, 0xf5, 0x56, 0xa1, + 0x80, 0xec, 0xd2, 0xbe, 0xee, 0x20, 0x1a, 0x35, +}; +static const unsigned char kat666_nonce[] = { + 0xdb, 0x3d, 0x77, 0x43, 0xde, 0xfc, 0x4d, 0xca, 0x54, 0x5f, 0xbf, 0xc1, + 0xd3, 0x7a, 0x09, 0xc5, +}; +static const unsigned char kat666_persstr[] = {0}; +static const unsigned char kat666_addin0[] = {0}; +static const unsigned char kat666_addin1[] = {0}; +static const unsigned char kat666_retbits[] = { + 0x9d, 0xcd, 0xf1, 0x42, 0x78, 0xbc, 0xf9, 0x95, 0x9e, 0x2f, 0xc0, 0x7f, + 0x7b, 0x7e, 0xe4, 0x2b, 0x9d, 0x51, 0x11, 0x4e, 0x96, 0x65, 0x64, 0x34, + 0x06, 0x03, 0x62, 0x41, 0x22, 0x1c, 0x82, 0x6a, 0x59, 0x5a, 0xa1, 0xa3, + 0x39, 0x40, 0x62, 0x00, 0xe2, 0x33, 0x22, 0x20, 0x3e, 0x34, 0x67, 0xde, + 0x3f, 0x14, 0xd1, 0xe2, 0x62, 0xed, 0x8f, 0x44, 0x24, 0xf3, 0xe1, 0xe2, + 0x04, 0x3b, 0x22, 0x8b, +}; +static const struct drbg_kat_no_reseed kat666_t = { + 5, kat666_entropyin, kat666_nonce, kat666_persstr, + kat666_addin0, kat666_addin1, kat666_retbits +}; +static const struct drbg_kat kat666 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat666_t +}; + +static const unsigned char kat667_entropyin[] = { + 0x28, 0x9f, 0x5e, 0x0e, 0x23, 0x7e, 0x45, 0xb8, 0xf7, 0xb2, 0x26, 0x63, + 0xfb, 0xb5, 0x8e, 0xbb, 0x91, 0x01, 0xbf, 0xa9, 0x71, 0xce, 0xdc, 0x1f, + 0x69, 0x77, 0xcf, 0xef, 0x02, 0x49, 0x09, 0x53, +}; +static const unsigned char kat667_nonce[] = { + 0xec, 0xef, 0xca, 0xa5, 0x9d, 0x31, 0xc9, 0x69, 0x14, 0x19, 0x60, 0xf8, + 0xf5, 0xca, 0xa8, 0x57, +}; +static const unsigned char kat667_persstr[] = {0}; +static const unsigned char kat667_addin0[] = {0}; +static const unsigned char kat667_addin1[] = {0}; +static const unsigned char kat667_retbits[] = { + 0x68, 0x38, 0x06, 0x23, 0xab, 0xef, 0xe6, 0xff, 0x32, 0x10, 0xe6, 0x62, + 0xcb, 0x2c, 0xd0, 0x4e, 0xf3, 0x10, 0x92, 0xac, 0xb1, 0xde, 0xe3, 0x4f, + 0xac, 0x3a, 0x5f, 0x70, 0xcc, 0x9d, 0xa2, 0xc4, 0xf9, 0x3f, 0x87, 0x5c, + 0xbd, 0xc9, 0xef, 0x29, 0x73, 0x9c, 0x3b, 0xa6, 0xc9, 0x00, 0xc3, 0x37, + 0x50, 0x89, 0x5f, 0x10, 0x7e, 0x3b, 0xc7, 0xf2, 0x06, 0x11, 0xc4, 0x04, + 0xfb, 0x1d, 0x3d, 0x12, +}; +static const struct drbg_kat_no_reseed kat667_t = { + 6, kat667_entropyin, kat667_nonce, kat667_persstr, + kat667_addin0, kat667_addin1, kat667_retbits +}; +static const struct drbg_kat kat667 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat667_t +}; + +static const unsigned char kat668_entropyin[] = { + 0x00, 0x8b, 0xf6, 0x98, 0x42, 0xd1, 0x05, 0x68, 0x81, 0xff, 0x2e, 0x35, + 0x71, 0x82, 0x7a, 0x69, 0x90, 0x05, 0x0f, 0x56, 0x88, 0x37, 0x7b, 0x10, + 0xb0, 0x60, 0x44, 0x12, 0xce, 0x86, 0xf5, 0x76, +}; +static const unsigned char kat668_nonce[] = { + 0x7a, 0xc5, 0x16, 0x3c, 0x1a, 0x96, 0xb5, 0xf4, 0xa5, 0xb3, 0xd2, 0xf2, + 0xfe, 0xa9, 0x5d, 0x21, +}; +static const unsigned char kat668_persstr[] = {0}; +static const unsigned char kat668_addin0[] = {0}; +static const unsigned char kat668_addin1[] = {0}; +static const unsigned char kat668_retbits[] = { + 0x18, 0xa6, 0x26, 0x1e, 0xde, 0xfd, 0x65, 0xf6, 0x34, 0xfb, 0x8c, 0x80, + 0x6c, 0x61, 0x5c, 0xd2, 0xaa, 0x82, 0xca, 0x11, 0xc6, 0x08, 0xbb, 0x6e, + 0x9e, 0x83, 0x1e, 0x1e, 0xe3, 0x36, 0xac, 0xa2, 0xa2, 0x47, 0x43, 0x70, + 0xa4, 0x61, 0xf9, 0xfd, 0x1a, 0x49, 0x6a, 0xcb, 0xe9, 0x08, 0xca, 0x58, + 0xeb, 0x7b, 0xee, 0xfe, 0x2f, 0xd5, 0xc4, 0x80, 0x2c, 0xd5, 0x27, 0xae, + 0x0a, 0x1c, 0xc6, 0xa6, +}; +static const struct drbg_kat_no_reseed kat668_t = { + 7, kat668_entropyin, kat668_nonce, kat668_persstr, + kat668_addin0, kat668_addin1, kat668_retbits +}; +static const struct drbg_kat kat668 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat668_t +}; + +static const unsigned char kat669_entropyin[] = { + 0x41, 0x9d, 0xe0, 0x8d, 0x88, 0x2e, 0x1d, 0xea, 0x84, 0x14, 0xfd, 0x01, + 0xf1, 0x85, 0x05, 0x86, 0xe5, 0x35, 0x90, 0x4e, 0xf0, 0xde, 0x3b, 0xdd, + 0x8b, 0x66, 0x7d, 0x16, 0xfe, 0xde, 0xd6, 0x3e, +}; +static const unsigned char kat669_nonce[] = { + 0x52, 0x57, 0xd3, 0xe3, 0x2c, 0xf4, 0xcf, 0x5a, 0x1f, 0x61, 0x57, 0xd6, + 0x03, 0x04, 0x51, 0x0b, +}; +static const unsigned char kat669_persstr[] = {0}; +static const unsigned char kat669_addin0[] = {0}; +static const unsigned char kat669_addin1[] = {0}; +static const unsigned char kat669_retbits[] = { + 0x0b, 0x7d, 0x93, 0x54, 0x14, 0xd0, 0x72, 0xec, 0x7b, 0x24, 0x34, 0xa5, + 0x0b, 0x9b, 0xc9, 0x0a, 0x29, 0x87, 0xc0, 0x5f, 0xe5, 0x59, 0x62, 0x82, + 0xff, 0x17, 0x00, 0xf4, 0xcc, 0x44, 0x22, 0x47, 0x79, 0xc4, 0xef, 0x2f, + 0x1f, 0xe6, 0x3a, 0x4f, 0x37, 0xea, 0x88, 0x91, 0x85, 0x0b, 0xa5, 0xea, + 0xa1, 0xf9, 0x08, 0x2b, 0xa5, 0xb4, 0x99, 0xba, 0x31, 0x20, 0x36, 0x85, + 0x69, 0xd0, 0x9d, 0xb2, +}; +static const struct drbg_kat_no_reseed kat669_t = { + 8, kat669_entropyin, kat669_nonce, kat669_persstr, + kat669_addin0, kat669_addin1, kat669_retbits +}; +static const struct drbg_kat kat669 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat669_t +}; + +static const unsigned char kat670_entropyin[] = { + 0x80, 0x39, 0x45, 0x69, 0xdc, 0x1b, 0x8d, 0xaa, 0x7d, 0x7d, 0x42, 0xc3, + 0x2f, 0x26, 0x21, 0xfa, 0xc4, 0xd5, 0xb6, 0xe7, 0x93, 0xe6, 0x82, 0x45, + 0x63, 0x14, 0x97, 0x8a, 0x2b, 0xfb, 0x49, 0xa4, +}; +static const unsigned char kat670_nonce[] = { + 0x9b, 0x85, 0x63, 0x42, 0x62, 0xbd, 0xae, 0xd1, 0xc1, 0xbb, 0xfc, 0x66, + 0x9d, 0x6c, 0xd3, 0xe2, +}; +static const unsigned char kat670_persstr[] = {0}; +static const unsigned char kat670_addin0[] = {0}; +static const unsigned char kat670_addin1[] = {0}; +static const unsigned char kat670_retbits[] = { + 0x08, 0x21, 0xe1, 0x8a, 0x67, 0xfd, 0x7e, 0x78, 0xc3, 0x2f, 0x65, 0x4e, + 0x77, 0x74, 0xc1, 0xdc, 0x12, 0x44, 0x86, 0x5e, 0x9a, 0xfc, 0x12, 0xa4, + 0x30, 0xc9, 0x8c, 0x61, 0x13, 0x0f, 0x95, 0x33, 0xe9, 0x9f, 0x64, 0x1f, + 0x65, 0x45, 0x8e, 0x15, 0x5b, 0xd6, 0x7f, 0xef, 0x2f, 0x7b, 0x35, 0xeb, + 0x7e, 0xc7, 0xcb, 0x38, 0xb1, 0xe8, 0x7e, 0xb4, 0xdf, 0xa8, 0xa1, 0x73, + 0xb2, 0x34, 0x78, 0xfb, +}; +static const struct drbg_kat_no_reseed kat670_t = { + 9, kat670_entropyin, kat670_nonce, kat670_persstr, + kat670_addin0, kat670_addin1, kat670_retbits +}; +static const struct drbg_kat kat670 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat670_t +}; + +static const unsigned char kat671_entropyin[] = { + 0xdc, 0xc9, 0xad, 0xf0, 0x02, 0x91, 0x78, 0xd4, 0xd7, 0x1d, 0xfe, 0x39, + 0x79, 0x0a, 0xa8, 0x50, 0x5e, 0xa7, 0x16, 0x81, 0xf5, 0x65, 0x29, 0x47, + 0x84, 0xfc, 0xc3, 0x63, 0x12, 0xd4, 0xd7, 0xf4, +}; +static const unsigned char kat671_nonce[] = { + 0xe4, 0xa3, 0x44, 0xda, 0xab, 0x48, 0xeb, 0x31, 0xd7, 0xe8, 0xdc, 0x38, + 0x93, 0x6f, 0x18, 0x84, +}; +static const unsigned char kat671_persstr[] = {0}; +static const unsigned char kat671_addin0[] = {0}; +static const unsigned char kat671_addin1[] = {0}; +static const unsigned char kat671_retbits[] = { + 0x5e, 0xac, 0xae, 0xd6, 0x00, 0x52, 0xac, 0x87, 0xa1, 0x5e, 0x42, 0x99, + 0x7c, 0xfc, 0x77, 0xb6, 0x9e, 0x89, 0x8c, 0xbc, 0x61, 0xe3, 0x6e, 0x00, + 0x0a, 0xf2, 0x0d, 0xc5, 0x3d, 0xd5, 0xc8, 0xa1, 0xfc, 0xda, 0x92, 0x4e, + 0x10, 0x30, 0xb5, 0x35, 0xc9, 0xe4, 0xdc, 0x87, 0xc3, 0xec, 0x8d, 0x3c, + 0xe4, 0xc0, 0x61, 0xdd, 0x46, 0xde, 0x12, 0xf9, 0x53, 0x10, 0x67, 0xca, + 0x87, 0xb8, 0xbd, 0x6d, +}; +static const struct drbg_kat_no_reseed kat671_t = { + 10, kat671_entropyin, kat671_nonce, kat671_persstr, + kat671_addin0, kat671_addin1, kat671_retbits +}; +static const struct drbg_kat kat671 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat671_t +}; + +static const unsigned char kat672_entropyin[] = { + 0x1f, 0xee, 0x8b, 0x75, 0x7e, 0xab, 0xea, 0xb6, 0x60, 0xdd, 0x95, 0xdc, + 0x0d, 0x0d, 0x69, 0xd1, 0x82, 0x22, 0x8f, 0x24, 0x1d, 0x48, 0xc6, 0x40, + 0x67, 0xf8, 0x0d, 0xd9, 0x61, 0x58, 0xcf, 0xae, +}; +static const unsigned char kat672_nonce[] = { + 0x6e, 0xb7, 0x6c, 0x5c, 0x85, 0xc3, 0xa3, 0x5d, 0x6f, 0x2a, 0xf4, 0x61, + 0x9c, 0x54, 0xae, 0x21, +}; +static const unsigned char kat672_persstr[] = {0}; +static const unsigned char kat672_addin0[] = {0}; +static const unsigned char kat672_addin1[] = {0}; +static const unsigned char kat672_retbits[] = { + 0x8a, 0x6f, 0x21, 0x15, 0x6f, 0xd6, 0x1e, 0x1a, 0x83, 0x6f, 0x6b, 0x1f, + 0x54, 0x5a, 0x06, 0xc8, 0x10, 0x08, 0xe8, 0x7c, 0x85, 0xfe, 0x52, 0x6c, + 0x3b, 0x82, 0xdb, 0xbb, 0xc1, 0x19, 0x43, 0xdb, 0xaf, 0x25, 0xfe, 0x48, + 0xee, 0x31, 0xfb, 0x70, 0x18, 0x51, 0x0b, 0x2e, 0xec, 0xdd, 0x86, 0xb2, + 0x1d, 0x17, 0x79, 0xd5, 0xf7, 0x0e, 0xa2, 0x8b, 0x44, 0xb1, 0xb2, 0x94, + 0xa5, 0x66, 0x34, 0xb6, +}; +static const struct drbg_kat_no_reseed kat672_t = { + 11, kat672_entropyin, kat672_nonce, kat672_persstr, + kat672_addin0, kat672_addin1, kat672_retbits +}; +static const struct drbg_kat kat672 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat672_t +}; + +static const unsigned char kat673_entropyin[] = { + 0xb3, 0xed, 0x24, 0x78, 0x72, 0x21, 0x0b, 0x15, 0xc9, 0x76, 0xf4, 0x23, + 0x09, 0x6e, 0x3d, 0x7f, 0x6e, 0x62, 0x60, 0x45, 0xb2, 0x88, 0x38, 0x03, + 0x26, 0x2a, 0x96, 0xac, 0xa7, 0x15, 0xe2, 0xf7, +}; +static const unsigned char kat673_nonce[] = { + 0xa1, 0xf2, 0xb4, 0x5c, 0xa6, 0x3d, 0x4c, 0x2a, 0x98, 0xa3, 0x80, 0xcb, + 0x24, 0xe4, 0x8b, 0xcd, +}; +static const unsigned char kat673_persstr[] = {0}; +static const unsigned char kat673_addin0[] = {0}; +static const unsigned char kat673_addin1[] = {0}; +static const unsigned char kat673_retbits[] = { + 0xbe, 0x7b, 0x55, 0x72, 0x51, 0x0a, 0x1c, 0x1d, 0x24, 0x5c, 0xc2, 0x72, + 0x5f, 0xf9, 0x27, 0xb3, 0x71, 0xee, 0xee, 0xa6, 0xea, 0xcc, 0x62, 0xba, + 0x6a, 0xee, 0xb9, 0x54, 0x3a, 0xf5, 0x34, 0x9f, 0xb9, 0xda, 0x16, 0x6e, + 0xec, 0xa6, 0xe9, 0x51, 0x03, 0x16, 0xe8, 0xd8, 0x9d, 0x5d, 0x06, 0x02, + 0x34, 0x01, 0x25, 0x87, 0xab, 0x0b, 0xaf, 0x57, 0xa7, 0x08, 0xc1, 0xb6, + 0x70, 0x3d, 0xfc, 0x9d, +}; +static const struct drbg_kat_no_reseed kat673_t = { + 12, kat673_entropyin, kat673_nonce, kat673_persstr, + kat673_addin0, kat673_addin1, kat673_retbits +}; +static const struct drbg_kat kat673 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat673_t +}; + +static const unsigned char kat674_entropyin[] = { + 0x70, 0xcc, 0x7b, 0x7b, 0xc8, 0x03, 0xab, 0x30, 0x36, 0x89, 0x72, 0xcc, + 0x02, 0x1c, 0x1c, 0x51, 0xa3, 0xf1, 0x51, 0x33, 0x5a, 0xdd, 0x72, 0x6f, + 0x5b, 0xd0, 0x84, 0x13, 0x86, 0xc9, 0x66, 0x05, +}; +static const unsigned char kat674_nonce[] = { + 0x26, 0x67, 0x87, 0x77, 0x91, 0x9a, 0xc8, 0xf1, 0xb3, 0x8f, 0x93, 0x6b, + 0xc0, 0xab, 0x9e, 0x11, +}; +static const unsigned char kat674_persstr[] = {0}; +static const unsigned char kat674_addin0[] = {0}; +static const unsigned char kat674_addin1[] = {0}; +static const unsigned char kat674_retbits[] = { + 0x55, 0xa4, 0x81, 0xfe, 0x7b, 0x3c, 0x1c, 0xd2, 0x9b, 0x94, 0x2a, 0x71, + 0x64, 0xac, 0x7c, 0x74, 0x13, 0xdb, 0x97, 0x11, 0xfb, 0xab, 0x14, 0xcf, + 0x00, 0x58, 0x87, 0xcc, 0x53, 0xfc, 0x73, 0x9c, 0x68, 0xe3, 0x7c, 0x0b, + 0x13, 0xcb, 0x73, 0xe5, 0x3e, 0x9d, 0x27, 0x2a, 0xf8, 0x03, 0x17, 0x04, + 0x43, 0xee, 0x09, 0x11, 0x08, 0x63, 0xbf, 0x7c, 0x10, 0xc4, 0x10, 0x2f, + 0x2a, 0xce, 0xd8, 0xea, +}; +static const struct drbg_kat_no_reseed kat674_t = { + 13, kat674_entropyin, kat674_nonce, kat674_persstr, + kat674_addin0, kat674_addin1, kat674_retbits +}; +static const struct drbg_kat kat674 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat674_t +}; + +static const unsigned char kat675_entropyin[] = { + 0x43, 0x74, 0x96, 0xcc, 0x89, 0x6a, 0x20, 0xdd, 0x6d, 0xbf, 0x33, 0xcd, + 0x47, 0x53, 0x2f, 0x99, 0x24, 0xe7, 0x5f, 0x26, 0xe4, 0x3a, 0x37, 0xdb, + 0xe9, 0xf4, 0x40, 0xf5, 0xf6, 0x11, 0x36, 0xe2, +}; +static const unsigned char kat675_nonce[] = { + 0x65, 0x40, 0xd6, 0xc5, 0x86, 0xeb, 0x24, 0xd1, 0x64, 0xe3, 0xc5, 0xdb, + 0x93, 0x83, 0x82, 0xa0, +}; +static const unsigned char kat675_persstr[] = {0}; +static const unsigned char kat675_addin0[] = {0}; +static const unsigned char kat675_addin1[] = {0}; +static const unsigned char kat675_retbits[] = { + 0x4b, 0x64, 0x8f, 0x49, 0xa1, 0x48, 0x88, 0x05, 0x71, 0xbb, 0xf7, 0x17, + 0xab, 0x21, 0x3d, 0x2d, 0x92, 0xfa, 0x1f, 0x2a, 0x69, 0x83, 0x58, 0x4b, + 0xc5, 0xf3, 0xdb, 0x21, 0x2e, 0x67, 0x47, 0xc5, 0xee, 0x8a, 0x66, 0x05, + 0xe1, 0xbd, 0x14, 0xab, 0x9e, 0xcd, 0xf5, 0x2c, 0x2a, 0xc6, 0x51, 0x88, + 0x21, 0xe0, 0xd3, 0x72, 0xae, 0xa5, 0x7e, 0x79, 0xa2, 0x61, 0x7a, 0x5d, + 0x43, 0x5c, 0x20, 0xb7, +}; +static const struct drbg_kat_no_reseed kat675_t = { + 14, kat675_entropyin, kat675_nonce, kat675_persstr, + kat675_addin0, kat675_addin1, kat675_retbits +}; +static const struct drbg_kat kat675 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat675_t +}; + +static const unsigned char kat676_entropyin[] = { + 0x48, 0x1e, 0x50, 0x5b, 0xf7, 0xa3, 0x6f, 0x9d, 0x96, 0x69, 0x0d, 0x49, + 0x15, 0x4d, 0x98, 0xd6, 0xa2, 0x47, 0xc1, 0x4a, 0x70, 0x3d, 0xbf, 0xed, + 0x7c, 0xf1, 0xb7, 0xa7, 0x1b, 0xee, 0x73, 0x7f, +}; +static const unsigned char kat676_nonce[] = { + 0x70, 0xbd, 0xed, 0xbc, 0x68, 0x25, 0xc4, 0xfe, 0x0a, 0x9f, 0x7e, 0x45, + 0x29, 0x0d, 0xdd, 0x51, +}; +static const unsigned char kat676_persstr[] = {0}; +static const unsigned char kat676_addin0[] = { + 0x5b, 0x07, 0x61, 0x0c, 0x2c, 0x94, 0x6e, 0xda, 0x29, 0x75, 0xa2, 0x6d, + 0xda, 0xdf, 0x7d, 0x73, 0xe3, 0xd2, 0x87, 0xe9, 0x23, 0xd9, 0xb1, 0xa2, + 0xd2, 0x07, 0x07, 0x76, 0xa4, 0x46, 0xd8, 0xe6, +}; +static const unsigned char kat676_addin1[] = { + 0x27, 0x92, 0xa9, 0x88, 0xeb, 0xb2, 0xe7, 0x68, 0xee, 0xe0, 0xd5, 0xc2, + 0x63, 0xbc, 0xd7, 0x6a, 0x67, 0x5d, 0x6f, 0x33, 0x9e, 0x5f, 0x1a, 0xb2, + 0xca, 0x59, 0x5e, 0x6b, 0x3b, 0x4d, 0x02, 0x4a, +}; +static const unsigned char kat676_retbits[] = { + 0x30, 0x34, 0x48, 0xa3, 0x55, 0xfc, 0x0a, 0x69, 0xa1, 0x30, 0xb6, 0xab, + 0x19, 0x49, 0x97, 0xb2, 0x20, 0x97, 0x0b, 0xf6, 0x80, 0x91, 0x49, 0x13, + 0xda, 0x90, 0x4e, 0x92, 0x10, 0x9d, 0xee, 0x3d, 0x9f, 0x23, 0x87, 0x11, + 0x30, 0xc4, 0x07, 0x04, 0x5c, 0xf4, 0x63, 0xce, 0x78, 0x3a, 0x5d, 0xfa, + 0xfd, 0x60, 0x3a, 0x83, 0x84, 0x79, 0x05, 0x73, 0xaf, 0x38, 0x5d, 0x47, + 0x9a, 0xcd, 0x72, 0x06, +}; +static const struct drbg_kat_no_reseed kat676_t = { + 0, kat676_entropyin, kat676_nonce, kat676_persstr, + kat676_addin0, kat676_addin1, kat676_retbits +}; +static const struct drbg_kat kat676 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat676_t +}; + +static const unsigned char kat677_entropyin[] = { + 0xe4, 0xb6, 0x1f, 0x03, 0x62, 0xcc, 0xf3, 0xc1, 0x50, 0x1c, 0x60, 0x93, + 0x70, 0xfd, 0x56, 0x05, 0x88, 0xb9, 0xc1, 0xa5, 0x25, 0x95, 0xe0, 0x66, + 0xf7, 0x90, 0xf4, 0x35, 0x5b, 0xa1, 0x41, 0x6d, +}; +static const unsigned char kat677_nonce[] = { + 0xae, 0x47, 0x32, 0x1a, 0xb5, 0xff, 0xec, 0x92, 0x7e, 0x54, 0x61, 0x69, + 0x61, 0x23, 0xbe, 0x8f, +}; +static const unsigned char kat677_persstr[] = {0}; +static const unsigned char kat677_addin0[] = { + 0xa5, 0x9f, 0x6d, 0x3e, 0xe5, 0xc8, 0x71, 0x14, 0x7e, 0xbc, 0x2d, 0x5f, + 0x6e, 0x6c, 0x70, 0xfd, 0x9b, 0x98, 0x5d, 0xa7, 0xf7, 0xdd, 0x04, 0x9c, + 0xe1, 0x94, 0x46, 0x2d, 0x9c, 0x83, 0xdf, 0xc6, +}; +static const unsigned char kat677_addin1[] = { + 0x9f, 0xe2, 0xc7, 0xdb, 0x11, 0x36, 0x79, 0x81, 0x47, 0x41, 0x86, 0xd9, + 0x22, 0xd9, 0x3e, 0xdf, 0x6a, 0xc7, 0xaa, 0x72, 0xa3, 0xe1, 0x59, 0xf5, + 0xc4, 0x0c, 0xcf, 0x90, 0x1d, 0x52, 0x3e, 0x28, +}; +static const unsigned char kat677_retbits[] = { + 0x70, 0xa7, 0x8b, 0x73, 0x03, 0xf9, 0x02, 0xa7, 0x62, 0x21, 0xa4, 0x01, + 0xeb, 0xe1, 0x34, 0xa6, 0x31, 0x7c, 0xbe, 0x61, 0x77, 0xd0, 0xb8, 0x27, + 0x99, 0x36, 0x0c, 0x49, 0x13, 0xaf, 0xa2, 0xa8, 0xc2, 0xb3, 0x6c, 0x0e, + 0x8a, 0x13, 0x58, 0x71, 0xc3, 0xc4, 0x00, 0x09, 0x60, 0xfa, 0xed, 0x37, + 0x28, 0xc1, 0xfb, 0xd0, 0x1e, 0xe0, 0xef, 0xc5, 0xc6, 0x29, 0xa0, 0x96, + 0x77, 0xc7, 0xa8, 0x50, +}; +static const struct drbg_kat_no_reseed kat677_t = { + 1, kat677_entropyin, kat677_nonce, kat677_persstr, + kat677_addin0, kat677_addin1, kat677_retbits +}; +static const struct drbg_kat kat677 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat677_t +}; + +static const unsigned char kat678_entropyin[] = { + 0xd7, 0x53, 0x45, 0x7f, 0x99, 0xc1, 0xc6, 0xf1, 0xda, 0x21, 0x1a, 0xa2, + 0xa5, 0xef, 0xd0, 0xe8, 0x80, 0xae, 0x06, 0x89, 0xe8, 0xae, 0x29, 0x6c, + 0xec, 0x3b, 0x1b, 0x6c, 0x8f, 0x81, 0x61, 0x89, +}; +static const unsigned char kat678_nonce[] = { + 0xf6, 0x5f, 0x7b, 0x22, 0x2b, 0x51, 0x8e, 0x00, 0x72, 0x10, 0x8f, 0xbe, + 0x99, 0xb6, 0x20, 0xe7, +}; +static const unsigned char kat678_persstr[] = {0}; +static const unsigned char kat678_addin0[] = { + 0x6d, 0x58, 0x7c, 0xaf, 0xec, 0x41, 0x39, 0x76, 0x6e, 0xdf, 0xf5, 0xac, + 0xe6, 0xb6, 0x3d, 0x96, 0x92, 0x86, 0x2c, 0x99, 0xbf, 0xcd, 0xe6, 0x04, + 0xfe, 0xde, 0xd6, 0xd9, 0xf6, 0xb3, 0xb4, 0x70, +}; +static const unsigned char kat678_addin1[] = { + 0xdb, 0x18, 0x4a, 0xe8, 0xb3, 0xf7, 0x3a, 0xa2, 0x2b, 0x63, 0xdc, 0xc2, + 0xd2, 0x1f, 0x14, 0xb9, 0xfd, 0x17, 0xae, 0xf3, 0xa9, 0x6b, 0xa5, 0xf9, + 0x82, 0xca, 0xaa, 0x0c, 0x16, 0x69, 0x03, 0x71, +}; +static const unsigned char kat678_retbits[] = { + 0xeb, 0x5e, 0x5c, 0xa3, 0xc8, 0x27, 0x57, 0x6e, 0x89, 0x7e, 0x26, 0x84, + 0xe2, 0x03, 0x75, 0x3b, 0xb1, 0xa3, 0xba, 0xcb, 0x7a, 0x1d, 0x55, 0x17, + 0xc6, 0x18, 0x5a, 0xdb, 0x9d, 0xdb, 0xed, 0xa8, 0x68, 0x4f, 0x6c, 0xad, + 0x3d, 0xde, 0x64, 0x17, 0x10, 0x67, 0x04, 0xfa, 0x29, 0xf8, 0xa1, 0x02, + 0x72, 0x5b, 0x7d, 0x80, 0xee, 0x2c, 0xac, 0xa1, 0x4c, 0x0c, 0x4c, 0x87, + 0x3c, 0x7d, 0x64, 0x6e, +}; +static const struct drbg_kat_no_reseed kat678_t = { + 2, kat678_entropyin, kat678_nonce, kat678_persstr, + kat678_addin0, kat678_addin1, kat678_retbits +}; +static const struct drbg_kat kat678 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat678_t +}; + +static const unsigned char kat679_entropyin[] = { + 0x0e, 0x99, 0xc1, 0x46, 0x6a, 0xfb, 0x22, 0xf0, 0xe0, 0x1f, 0x7e, 0x69, + 0x19, 0xa8, 0x75, 0x95, 0x9c, 0x3d, 0x37, 0xc7, 0x1b, 0xca, 0x6d, 0x5d, + 0x59, 0xe0, 0xec, 0xee, 0xe4, 0x91, 0x86, 0xcd, +}; +static const unsigned char kat679_nonce[] = { + 0x95, 0xa8, 0xdd, 0x75, 0xb0, 0x76, 0x45, 0x0e, 0xa6, 0xf8, 0xa7, 0x02, + 0x07, 0xfb, 0x15, 0x04, +}; +static const unsigned char kat679_persstr[] = {0}; +static const unsigned char kat679_addin0[] = { + 0x99, 0x92, 0xb0, 0x88, 0xe9, 0xc7, 0x6f, 0x49, 0xdd, 0xc5, 0x45, 0x40, + 0x9d, 0x84, 0x91, 0xa9, 0x04, 0x57, 0x57, 0x0b, 0x3d, 0x29, 0xae, 0x69, + 0xe3, 0xcc, 0x18, 0x97, 0xe9, 0x8d, 0x66, 0xfc, +}; +static const unsigned char kat679_addin1[] = { + 0xc5, 0xee, 0xfd, 0xfb, 0x46, 0x56, 0xd3, 0xf9, 0x88, 0xca, 0x19, 0xef, + 0xff, 0xee, 0xbe, 0xc7, 0x81, 0xa1, 0xe1, 0xb1, 0xa2, 0x99, 0x7c, 0x3f, + 0xb7, 0x6e, 0x1d, 0x0d, 0xac, 0xda, 0xac, 0x8e, +}; +static const unsigned char kat679_retbits[] = { + 0x4b, 0x0d, 0x76, 0x47, 0xbe, 0xb9, 0x59, 0xf7, 0x12, 0xc1, 0x01, 0xc4, + 0x07, 0xa2, 0x5f, 0xf0, 0x45, 0x7f, 0xa8, 0x28, 0x7f, 0x25, 0xc5, 0xf2, + 0xdb, 0x97, 0x11, 0x5d, 0x4c, 0xb8, 0xcc, 0x35, 0x39, 0xc5, 0x0e, 0x6d, + 0x51, 0xc5, 0xf3, 0xa7, 0x25, 0xb4, 0x3e, 0xfb, 0x0f, 0xea, 0x33, 0x95, + 0x29, 0x5c, 0xbb, 0xac, 0x1e, 0x91, 0x9d, 0x41, 0xff, 0xc9, 0xf4, 0xaf, + 0xf8, 0x2e, 0x8f, 0x7e, +}; +static const struct drbg_kat_no_reseed kat679_t = { + 3, kat679_entropyin, kat679_nonce, kat679_persstr, + kat679_addin0, kat679_addin1, kat679_retbits +}; +static const struct drbg_kat kat679 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat679_t +}; + +static const unsigned char kat680_entropyin[] = { + 0x2b, 0xc4, 0x49, 0xcb, 0xc2, 0x23, 0x75, 0x6c, 0x12, 0x03, 0x54, 0x64, + 0x9a, 0xdc, 0x79, 0xd0, 0xb5, 0x3a, 0xef, 0x53, 0x43, 0xa6, 0x19, 0x00, + 0xb2, 0x54, 0x23, 0x5c, 0xb6, 0x15, 0x24, 0xba, +}; +static const unsigned char kat680_nonce[] = { + 0x6a, 0xa9, 0xdd, 0x15, 0x7d, 0xbb, 0x1b, 0xbf, 0x41, 0x85, 0xe1, 0xcc, + 0x2c, 0xa3, 0xb5, 0x53, +}; +static const unsigned char kat680_persstr[] = {0}; +static const unsigned char kat680_addin0[] = { + 0xc0, 0x7d, 0x22, 0xdb, 0x1a, 0xdb, 0x41, 0xd8, 0xae, 0xc8, 0x46, 0xff, + 0xaf, 0x44, 0xcc, 0x83, 0x3e, 0xa1, 0xe2, 0x6d, 0x5d, 0x07, 0x18, 0xa5, + 0x16, 0x9f, 0xa0, 0x69, 0xd6, 0x3e, 0xdc, 0x5c, +}; +static const unsigned char kat680_addin1[] = { + 0xd4, 0x1f, 0x91, 0xb2, 0x02, 0x89, 0xdf, 0xa4, 0x9c, 0x2a, 0x33, 0x52, + 0x20, 0x04, 0x27, 0xd4, 0x57, 0x2e, 0x98, 0x13, 0x38, 0x11, 0x27, 0x32, + 0x4f, 0x49, 0x80, 0x7b, 0x47, 0x54, 0x17, 0x48, +}; +static const unsigned char kat680_retbits[] = { + 0x82, 0x0d, 0xb9, 0xb7, 0xef, 0x67, 0x8c, 0xbf, 0xa8, 0x44, 0x9c, 0xe3, + 0xdf, 0xf4, 0xb7, 0x68, 0x36, 0x20, 0x9a, 0xb8, 0x8e, 0xd8, 0xdc, 0xa3, + 0x39, 0x08, 0x4e, 0x46, 0xd1, 0xbf, 0xbd, 0x0a, 0xa5, 0x53, 0xd4, 0x10, + 0x09, 0xd9, 0x46, 0x59, 0xe6, 0x10, 0xac, 0xa9, 0xb8, 0xe1, 0xeb, 0xe2, + 0x35, 0xb6, 0x43, 0x7f, 0x36, 0x02, 0x71, 0xed, 0xc5, 0xc0, 0x5b, 0xae, + 0x2a, 0x63, 0xfd, 0xc3, +}; +static const struct drbg_kat_no_reseed kat680_t = { + 4, kat680_entropyin, kat680_nonce, kat680_persstr, + kat680_addin0, kat680_addin1, kat680_retbits +}; +static const struct drbg_kat kat680 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat680_t +}; + +static const unsigned char kat681_entropyin[] = { + 0x3f, 0xbe, 0xc8, 0xe6, 0x8c, 0xaa, 0x29, 0x1d, 0x44, 0xb6, 0x5e, 0xf6, + 0x22, 0x81, 0x8f, 0x80, 0xad, 0x29, 0x5b, 0xeb, 0x06, 0x7d, 0x78, 0x5f, + 0xae, 0x69, 0x30, 0xec, 0x87, 0x17, 0x51, 0x7a, +}; +static const unsigned char kat681_nonce[] = { + 0x8a, 0x3b, 0xb4, 0xd1, 0x5f, 0xf0, 0xb8, 0x43, 0x7b, 0xe6, 0xab, 0xc0, + 0x03, 0xaf, 0x0f, 0xa6, +}; +static const unsigned char kat681_persstr[] = {0}; +static const unsigned char kat681_addin0[] = { + 0x6c, 0x8c, 0x9c, 0x35, 0x85, 0x3e, 0x23, 0x82, 0x12, 0xa8, 0x33, 0x59, + 0xb5, 0xe0, 0x18, 0x52, 0xb6, 0xec, 0xc3, 0x4d, 0xfe, 0x7a, 0x25, 0x8f, + 0x51, 0x5c, 0x5d, 0x70, 0x58, 0xbb, 0x02, 0x86, +}; +static const unsigned char kat681_addin1[] = { + 0x20, 0x7e, 0xc2, 0x1f, 0x30, 0x51, 0xe0, 0x39, 0x59, 0xfd, 0x2d, 0x44, + 0x74, 0x76, 0xb8, 0x93, 0xdb, 0xa1, 0xfe, 0xf8, 0xfe, 0x42, 0x26, 0x32, + 0xfe, 0xef, 0x23, 0xe3, 0xef, 0x8a, 0x02, 0x2a, +}; +static const unsigned char kat681_retbits[] = { + 0xb9, 0x43, 0x5c, 0x54, 0x9a, 0x05, 0x05, 0x15, 0xfd, 0xdc, 0xa4, 0x54, + 0xf6, 0x02, 0xfd, 0xcd, 0x17, 0xfc, 0xb8, 0x12, 0xbe, 0x0e, 0x1c, 0x64, + 0x0f, 0xf8, 0x59, 0xe1, 0x17, 0x2c, 0x2a, 0xb0, 0x44, 0x91, 0xdb, 0x15, + 0x28, 0x19, 0xfa, 0x9a, 0x33, 0xfc, 0xb1, 0xe6, 0x6d, 0xc8, 0x21, 0x1c, + 0x8f, 0x36, 0x76, 0xa2, 0x81, 0x03, 0xb2, 0x03, 0xbd, 0x2d, 0x0a, 0x62, + 0x98, 0xbc, 0xc1, 0x67, +}; +static const struct drbg_kat_no_reseed kat681_t = { + 5, kat681_entropyin, kat681_nonce, kat681_persstr, + kat681_addin0, kat681_addin1, kat681_retbits +}; +static const struct drbg_kat kat681 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat681_t +}; + +static const unsigned char kat682_entropyin[] = { + 0x55, 0xfa, 0xfc, 0x70, 0xde, 0xeb, 0xba, 0x97, 0x30, 0x6d, 0xa5, 0xb7, + 0x44, 0xff, 0x4e, 0x48, 0x0e, 0x3c, 0xc2, 0xbc, 0xc8, 0xfa, 0x20, 0xff, + 0xd1, 0x7c, 0xa8, 0x51, 0x36, 0x8b, 0xf5, 0x64, +}; +static const unsigned char kat682_nonce[] = { + 0x40, 0x8f, 0x2d, 0xf2, 0x7e, 0x5b, 0xe6, 0x8d, 0x25, 0x48, 0x16, 0x68, + 0x7a, 0x63, 0xa4, 0x19, +}; +static const unsigned char kat682_persstr[] = {0}; +static const unsigned char kat682_addin0[] = { + 0x64, 0x30, 0x4f, 0x3d, 0xf4, 0x48, 0x6c, 0xf6, 0xf0, 0x12, 0x25, 0x2f, + 0x9c, 0xa9, 0xc1, 0x71, 0x04, 0xab, 0xe4, 0x86, 0x3d, 0x1e, 0x3d, 0xb5, + 0xab, 0x81, 0x74, 0x76, 0xd4, 0x30, 0x05, 0xa6, +}; +static const unsigned char kat682_addin1[] = { + 0xfd, 0xe8, 0x74, 0x9c, 0x2b, 0xef, 0xe8, 0xb0, 0x6c, 0x79, 0xcb, 0xc1, + 0x60, 0xcc, 0xfe, 0x95, 0x79, 0xa7, 0xe7, 0x62, 0x55, 0x0c, 0xb8, 0x22, + 0x17, 0x75, 0xa5, 0x4e, 0x98, 0x2f, 0xb7, 0x4c, +}; +static const unsigned char kat682_retbits[] = { + 0x70, 0x9a, 0xa6, 0x47, 0xef, 0xe0, 0xe6, 0x8d, 0xfa, 0xdf, 0x24, 0x37, + 0xea, 0x75, 0x56, 0x38, 0x1e, 0xa4, 0x30, 0x90, 0x94, 0xc1, 0x04, 0xcd, + 0xb8, 0xe4, 0xbc, 0xc3, 0x1c, 0x74, 0x71, 0x6f, 0xe9, 0xee, 0xa2, 0x32, + 0x15, 0x81, 0x70, 0xfa, 0x97, 0x8a, 0x7c, 0x05, 0x81, 0x3f, 0x25, 0x92, + 0xb3, 0x52, 0x2e, 0x5c, 0x44, 0xf2, 0x52, 0x6e, 0x76, 0x4e, 0x66, 0xe3, + 0x12, 0xec, 0xd4, 0x9b, +}; +static const struct drbg_kat_no_reseed kat682_t = { + 6, kat682_entropyin, kat682_nonce, kat682_persstr, + kat682_addin0, kat682_addin1, kat682_retbits +}; +static const struct drbg_kat kat682 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat682_t +}; + +static const unsigned char kat683_entropyin[] = { + 0x57, 0x3a, 0x24, 0x3d, 0x3b, 0x38, 0xfb, 0x8d, 0x6f, 0xcc, 0xda, 0x58, + 0x23, 0xc1, 0x5d, 0x64, 0x17, 0x68, 0x05, 0x70, 0x36, 0x64, 0x6f, 0xa9, + 0xa4, 0x97, 0x5a, 0x73, 0x89, 0x08, 0xa1, 0x64, +}; +static const unsigned char kat683_nonce[] = { + 0x3b, 0xfe, 0xad, 0x78, 0x35, 0x22, 0xf2, 0x56, 0xa2, 0xf7, 0xbf, 0x07, + 0x6b, 0x21, 0xf7, 0x41, +}; +static const unsigned char kat683_persstr[] = {0}; +static const unsigned char kat683_addin0[] = { + 0x65, 0xbd, 0x02, 0x59, 0x4d, 0x57, 0xc4, 0xaa, 0xf8, 0xd1, 0x19, 0xad, + 0xea, 0xdb, 0x8a, 0xce, 0x86, 0x69, 0x99, 0x14, 0x6a, 0x67, 0xbb, 0x85, + 0x87, 0x8d, 0x57, 0x26, 0x95, 0xce, 0x35, 0x4a, +}; +static const unsigned char kat683_addin1[] = { + 0x60, 0x52, 0x4f, 0xb2, 0x37, 0x31, 0xc3, 0x0c, 0x3d, 0x15, 0x96, 0xc9, + 0xf3, 0xa4, 0x5c, 0xfc, 0x0d, 0xa8, 0x19, 0x8a, 0xa0, 0x96, 0x76, 0x13, + 0xb3, 0xba, 0xc6, 0xbe, 0x7f, 0x48, 0x5d, 0x95, +}; +static const unsigned char kat683_retbits[] = { + 0x7a, 0xe3, 0x8a, 0x83, 0xc1, 0x12, 0x61, 0xcb, 0x22, 0xa5, 0x21, 0xcd, + 0xcc, 0x31, 0x97, 0xd8, 0xd8, 0x11, 0xb8, 0xca, 0xd9, 0x07, 0x1e, 0xad, + 0x38, 0x2e, 0x5b, 0xc2, 0x53, 0x03, 0x0c, 0x9c, 0xd4, 0x16, 0x52, 0x15, + 0x71, 0x5a, 0x8a, 0xb0, 0xaf, 0x1c, 0x5f, 0x91, 0x32, 0x03, 0x99, 0xcd, + 0x1d, 0x9b, 0x39, 0x16, 0x22, 0x0c, 0x78, 0xc5, 0x86, 0xe9, 0x66, 0x51, + 0xbc, 0x1d, 0x80, 0xba, +}; +static const struct drbg_kat_no_reseed kat683_t = { + 7, kat683_entropyin, kat683_nonce, kat683_persstr, + kat683_addin0, kat683_addin1, kat683_retbits +}; +static const struct drbg_kat kat683 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat683_t +}; + +static const unsigned char kat684_entropyin[] = { + 0xcf, 0x81, 0xdf, 0x4e, 0xba, 0x87, 0xea, 0x2e, 0x02, 0x6e, 0xbc, 0x6c, + 0xb9, 0x7d, 0x3d, 0xd6, 0xd3, 0xfc, 0xab, 0x6f, 0x4d, 0x0c, 0x52, 0x0a, + 0x8f, 0xc5, 0x3d, 0xca, 0x99, 0xce, 0x84, 0x90, +}; +static const unsigned char kat684_nonce[] = { + 0xfd, 0xef, 0x88, 0xd8, 0x7d, 0xb5, 0x8b, 0xc8, 0x39, 0x7e, 0x98, 0x8c, + 0x83, 0x4a, 0x89, 0x58, +}; +static const unsigned char kat684_persstr[] = {0}; +static const unsigned char kat684_addin0[] = { + 0x7b, 0xf9, 0xc0, 0x7b, 0xcc, 0xd7, 0xd5, 0x07, 0x73, 0x32, 0x4d, 0xcd, + 0x87, 0x6b, 0x58, 0xf6, 0x56, 0xc6, 0xfd, 0xfe, 0xa5, 0xae, 0xf1, 0xa9, + 0xeb, 0x77, 0x02, 0xd6, 0xed, 0x17, 0x5a, 0x49, +}; +static const unsigned char kat684_addin1[] = { + 0x07, 0x55, 0xe1, 0x48, 0x49, 0x35, 0x39, 0x43, 0x8c, 0x36, 0xfb, 0x2a, + 0xbc, 0xeb, 0xc3, 0x45, 0xda, 0x73, 0xea, 0xf0, 0x0f, 0x75, 0xda, 0x1c, + 0xda, 0x13, 0xca, 0x68, 0x76, 0x79, 0x4c, 0xb5, +}; +static const unsigned char kat684_retbits[] = { + 0x4e, 0x83, 0x60, 0xe6, 0xfc, 0xdc, 0xcb, 0x12, 0xac, 0x6e, 0xe7, 0xf0, + 0x22, 0xf7, 0xe0, 0x6f, 0x11, 0x8a, 0x75, 0xf6, 0x1c, 0x8a, 0xa1, 0x97, + 0x65, 0x6c, 0x93, 0x46, 0x3b, 0x86, 0x66, 0x2e, 0xeb, 0x32, 0x21, 0x4f, + 0x37, 0x1c, 0x8d, 0xce, 0x06, 0xab, 0x12, 0x10, 0xf1, 0xf5, 0x4f, 0x9d, + 0xb3, 0xb6, 0x3e, 0xee, 0xd7, 0xef, 0x6b, 0xa7, 0x32, 0x01, 0x92, 0x26, + 0x4a, 0x79, 0x20, 0xce, +}; +static const struct drbg_kat_no_reseed kat684_t = { + 8, kat684_entropyin, kat684_nonce, kat684_persstr, + kat684_addin0, kat684_addin1, kat684_retbits +}; +static const struct drbg_kat kat684 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat684_t +}; + +static const unsigned char kat685_entropyin[] = { + 0x98, 0xfe, 0xab, 0x86, 0x0b, 0xfe, 0xd1, 0x93, 0x41, 0xed, 0x13, 0x64, + 0xd4, 0xab, 0xce, 0xac, 0x30, 0x04, 0x32, 0x62, 0x99, 0x89, 0x53, 0x30, + 0x40, 0x5f, 0x11, 0x5f, 0xab, 0x03, 0x18, 0x16, +}; +static const unsigned char kat685_nonce[] = { + 0x1a, 0xfa, 0xfc, 0x20, 0x9a, 0x77, 0x6b, 0xd0, 0x14, 0x10, 0x84, 0x8e, + 0x5f, 0xd0, 0x19, 0xd1, +}; +static const unsigned char kat685_persstr[] = {0}; +static const unsigned char kat685_addin0[] = { + 0x47, 0x50, 0x09, 0x94, 0x61, 0x20, 0xa2, 0xa2, 0xdf, 0xc1, 0x06, 0xcf, + 0x4b, 0x9f, 0x6f, 0x40, 0xa9, 0xb0, 0xc4, 0x1b, 0x61, 0x6b, 0xed, 0x3e, + 0x53, 0x6c, 0x9e, 0xee, 0x56, 0xe1, 0x70, 0x43, +}; +static const unsigned char kat685_addin1[] = { + 0xef, 0xf6, 0xd5, 0x39, 0x2d, 0x54, 0x19, 0xf6, 0xa8, 0xb4, 0x25, 0xea, + 0x85, 0x17, 0x19, 0x0c, 0xad, 0x41, 0x97, 0x09, 0x3a, 0xc6, 0x35, 0x71, + 0xf0, 0xd3, 0xc3, 0x3f, 0x70, 0x91, 0x63, 0xc2, +}; +static const unsigned char kat685_retbits[] = { + 0x06, 0x10, 0xe2, 0x8e, 0x8a, 0xf5, 0x7a, 0x29, 0x91, 0x6d, 0x8a, 0xee, + 0x19, 0xda, 0xda, 0xf0, 0xba, 0x6a, 0xa8, 0xf5, 0x0f, 0xbf, 0x85, 0x0f, + 0x70, 0x2e, 0x59, 0xb4, 0x66, 0x02, 0x5a, 0xca, 0x9b, 0x62, 0xfe, 0x18, + 0x6d, 0x53, 0x6e, 0x1a, 0x55, 0xc6, 0x71, 0xdf, 0xe2, 0xb1, 0x58, 0xbc, + 0xa6, 0x5a, 0x1c, 0xf6, 0x81, 0xa8, 0x77, 0xcd, 0x5f, 0x0a, 0x4b, 0x77, + 0x98, 0xed, 0x37, 0x3f, +}; +static const struct drbg_kat_no_reseed kat685_t = { + 9, kat685_entropyin, kat685_nonce, kat685_persstr, + kat685_addin0, kat685_addin1, kat685_retbits +}; +static const struct drbg_kat kat685 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat685_t +}; + +static const unsigned char kat686_entropyin[] = { + 0x12, 0xcc, 0xa9, 0xba, 0xd0, 0x66, 0x1f, 0x02, 0xdb, 0x43, 0x8b, 0xaa, + 0xbd, 0xaa, 0x29, 0x41, 0xcf, 0x3d, 0xed, 0xde, 0xdb, 0x09, 0xf5, 0x30, + 0xce, 0x6b, 0xff, 0xf2, 0x78, 0xb7, 0x9b, 0x23, +}; +static const unsigned char kat686_nonce[] = { + 0xd7, 0x16, 0xa1, 0x90, 0xac, 0x3f, 0x0f, 0x54, 0x65, 0x44, 0x79, 0x93, + 0xa9, 0xe2, 0x04, 0x97, +}; +static const unsigned char kat686_persstr[] = {0}; +static const unsigned char kat686_addin0[] = { + 0x88, 0x1f, 0xb6, 0x8d, 0x66, 0xb6, 0x9f, 0x4b, 0xde, 0x4a, 0x3a, 0xd1, + 0xf1, 0x50, 0xbb, 0xac, 0xb0, 0x87, 0xda, 0x23, 0x2e, 0x1f, 0x4d, 0x7b, + 0xe3, 0x96, 0xf1, 0xda, 0x74, 0x63, 0xcb, 0x16, +}; +static const unsigned char kat686_addin1[] = { + 0x5b, 0x1d, 0x23, 0x0d, 0xb8, 0x7d, 0x2a, 0xa1, 0xf3, 0xe1, 0x10, 0xf9, + 0xc0, 0xf9, 0x13, 0xec, 0xf7, 0x8d, 0x0a, 0xac, 0xec, 0x0f, 0x47, 0xc3, + 0x26, 0x5f, 0xe0, 0xe6, 0x09, 0xec, 0x7a, 0x0b, +}; +static const unsigned char kat686_retbits[] = { + 0xe9, 0xdd, 0x20, 0x8e, 0x8f, 0x0f, 0x6f, 0x3b, 0xa2, 0x1a, 0x9b, 0x67, + 0x92, 0x84, 0x8e, 0x95, 0xd7, 0xee, 0x5a, 0x73, 0xfb, 0xc7, 0x19, 0xef, + 0x9b, 0x5c, 0xdc, 0xff, 0x36, 0x53, 0x0d, 0x3e, 0xc6, 0xf7, 0xca, 0xdf, + 0xc5, 0x55, 0x21, 0xc1, 0x62, 0xcf, 0xfe, 0xeb, 0x91, 0x7c, 0x72, 0xfa, + 0xe3, 0x41, 0xe5, 0xa3, 0xf7, 0xc8, 0xd5, 0xcb, 0x5b, 0x45, 0x08, 0x01, + 0x15, 0x57, 0xe6, 0x39, +}; +static const struct drbg_kat_no_reseed kat686_t = { + 10, kat686_entropyin, kat686_nonce, kat686_persstr, + kat686_addin0, kat686_addin1, kat686_retbits +}; +static const struct drbg_kat kat686 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat686_t +}; + +static const unsigned char kat687_entropyin[] = { + 0x99, 0xe3, 0x96, 0xaf, 0xcf, 0x80, 0x7e, 0x6d, 0xfa, 0x0b, 0x30, 0x28, + 0x72, 0xeb, 0x5d, 0xe0, 0xaa, 0x74, 0xb0, 0x59, 0x00, 0xd1, 0xa0, 0x6e, + 0xe2, 0xc1, 0xc4, 0xd3, 0xaf, 0x53, 0x5f, 0xca, +}; +static const unsigned char kat687_nonce[] = { + 0x75, 0xa2, 0xf6, 0xed, 0xf8, 0x55, 0x71, 0xd1, 0x9c, 0x03, 0x29, 0x65, + 0xd2, 0x60, 0x3f, 0xc9, +}; +static const unsigned char kat687_persstr[] = {0}; +static const unsigned char kat687_addin0[] = { + 0x58, 0x1e, 0x78, 0xad, 0xbf, 0x5d, 0x9a, 0x66, 0x8d, 0x01, 0x3b, 0x7f, + 0xf9, 0x04, 0x61, 0x91, 0xe4, 0x34, 0x47, 0x7f, 0x3c, 0x3f, 0xba, 0xb4, + 0x47, 0x87, 0x6f, 0xe8, 0x7f, 0x2c, 0x15, 0x7e, +}; +static const unsigned char kat687_addin1[] = { + 0x19, 0xf0, 0x4c, 0x1d, 0xde, 0x5c, 0x2e, 0xc3, 0xec, 0xa9, 0x06, 0xe7, + 0xba, 0xc8, 0xd8, 0xd3, 0x49, 0xb7, 0xca, 0x49, 0xca, 0x5d, 0x7d, 0xe1, + 0xf2, 0x26, 0xdd, 0xd0, 0x4c, 0x73, 0xdf, 0x1e, +}; +static const unsigned char kat687_retbits[] = { + 0xb8, 0xfc, 0xf9, 0x0d, 0xd4, 0x71, 0x44, 0x01, 0x97, 0x05, 0xe6, 0x73, + 0xcd, 0xca, 0x26, 0x14, 0x58, 0x86, 0x6f, 0xa5, 0x15, 0x76, 0x0b, 0xc2, + 0x48, 0x8c, 0xa4, 0x03, 0x30, 0x9b, 0xa6, 0x3d, 0x17, 0x83, 0x69, 0x90, + 0xb6, 0x1a, 0x20, 0x17, 0x78, 0x61, 0x96, 0xd7, 0x0f, 0x65, 0xf3, 0xc8, + 0x0f, 0x5f, 0x9f, 0xbd, 0x4d, 0x6b, 0xed, 0xe8, 0x82, 0xde, 0xa5, 0x92, + 0xd1, 0x59, 0x86, 0x00, +}; +static const struct drbg_kat_no_reseed kat687_t = { + 11, kat687_entropyin, kat687_nonce, kat687_persstr, + kat687_addin0, kat687_addin1, kat687_retbits +}; +static const struct drbg_kat kat687 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat687_t +}; + +static const unsigned char kat688_entropyin[] = { + 0xe2, 0x61, 0x43, 0x5c, 0x33, 0x84, 0x29, 0x42, 0x5d, 0x54, 0x91, 0xf7, + 0xd8, 0xf5, 0x4c, 0xa9, 0xd5, 0x08, 0x24, 0x43, 0x85, 0x8f, 0x46, 0x37, + 0x5f, 0xb2, 0xce, 0x80, 0x23, 0x50, 0x96, 0xb7, +}; +static const unsigned char kat688_nonce[] = { + 0x8d, 0x92, 0x02, 0x02, 0x45, 0xc4, 0x15, 0x90, 0xe3, 0x60, 0x51, 0xa5, + 0x7f, 0xb1, 0x2c, 0x04, +}; +static const unsigned char kat688_persstr[] = {0}; +static const unsigned char kat688_addin0[] = { + 0x6c, 0xfe, 0x2d, 0xc4, 0x5a, 0x88, 0xf0, 0x9c, 0xf7, 0x6e, 0x6c, 0xea, + 0x11, 0xee, 0x5b, 0xc5, 0x6b, 0x21, 0x91, 0x47, 0x03, 0x9a, 0x13, 0xb1, + 0xa7, 0xfc, 0x99, 0xae, 0x36, 0xf5, 0x88, 0x80, +}; +static const unsigned char kat688_addin1[] = { + 0xbb, 0x81, 0x12, 0xe5, 0x00, 0x47, 0x57, 0xc0, 0xab, 0x45, 0xba, 0x23, + 0x25, 0x73, 0x59, 0x19, 0xf2, 0x14, 0x1f, 0x9c, 0x6d, 0x60, 0xe2, 0x07, + 0x84, 0xa7, 0x2e, 0xf7, 0xab, 0x98, 0xd4, 0x56, +}; +static const unsigned char kat688_retbits[] = { + 0x43, 0x1d, 0xf7, 0x65, 0xc4, 0x9d, 0xa3, 0xb4, 0x1e, 0x72, 0xb6, 0x4a, + 0xf2, 0x60, 0xe2, 0x85, 0xf1, 0x89, 0x7a, 0x59, 0x4d, 0x90, 0x7e, 0x9a, + 0x41, 0xb6, 0xbe, 0xe0, 0xca, 0x69, 0xc9, 0x13, 0x31, 0x47, 0x5f, 0x95, + 0xb2, 0x04, 0x07, 0xfe, 0x77, 0x7f, 0xcd, 0xef, 0x21, 0x74, 0xaa, 0xf4, + 0x7c, 0x4e, 0x7b, 0x8b, 0xfb, 0x3f, 0x3e, 0x9b, 0x5f, 0x52, 0x46, 0x84, + 0x66, 0xba, 0x9a, 0xab, +}; +static const struct drbg_kat_no_reseed kat688_t = { + 12, kat688_entropyin, kat688_nonce, kat688_persstr, + kat688_addin0, kat688_addin1, kat688_retbits +}; +static const struct drbg_kat kat688 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat688_t +}; + +static const unsigned char kat689_entropyin[] = { + 0x80, 0xe7, 0xcb, 0x47, 0x50, 0x00, 0x12, 0xde, 0x07, 0xf6, 0x55, 0x79, + 0x7b, 0x24, 0x83, 0x05, 0xe2, 0x17, 0x20, 0xc6, 0xdf, 0xfa, 0x44, 0xc0, + 0x96, 0xde, 0xe7, 0xac, 0x84, 0x06, 0x0f, 0x43, +}; +static const unsigned char kat689_nonce[] = { + 0x7c, 0x21, 0xb1, 0x20, 0x32, 0xc2, 0xbb, 0x4a, 0x9c, 0x13, 0x64, 0xbe, + 0x63, 0x4b, 0x66, 0x5f, +}; +static const unsigned char kat689_persstr[] = {0}; +static const unsigned char kat689_addin0[] = { + 0xb3, 0x03, 0xe2, 0xd5, 0x6a, 0x5d, 0xff, 0x48, 0xda, 0x4e, 0xf1, 0xc7, + 0xe8, 0x44, 0x2a, 0xf2, 0xa1, 0x49, 0xa3, 0x89, 0x0f, 0x35, 0x26, 0xbd, + 0xd6, 0x61, 0x8f, 0xce, 0xae, 0xab, 0x32, 0xbe, +}; +static const unsigned char kat689_addin1[] = { + 0xe1, 0xef, 0x53, 0xff, 0x06, 0x06, 0x11, 0x4f, 0x7b, 0x88, 0x2e, 0xb7, + 0xf5, 0x20, 0x7a, 0xb9, 0x64, 0xc8, 0xce, 0x7a, 0xdf, 0xb9, 0xf6, 0x31, + 0xb7, 0xaa, 0x74, 0xa2, 0x31, 0x27, 0xf3, 0x53, +}; +static const unsigned char kat689_retbits[] = { + 0x42, 0x02, 0x42, 0xb4, 0x99, 0x47, 0x75, 0xc8, 0x23, 0x93, 0x80, 0x8c, + 0xc1, 0x70, 0x13, 0x16, 0x25, 0xfd, 0xf8, 0xba, 0x10, 0xc9, 0xc8, 0xa8, + 0xbc, 0x33, 0x59, 0x16, 0x44, 0x1a, 0x80, 0x63, 0x84, 0x3a, 0x4a, 0x8e, + 0x53, 0xd0, 0x0f, 0x1a, 0x38, 0xbe, 0x1f, 0x7b, 0xeb, 0x94, 0x65, 0x28, + 0x2c, 0xcb, 0x9f, 0x47, 0xa4, 0x6d, 0x99, 0xed, 0x67, 0xa9, 0x86, 0x86, + 0xa1, 0xc1, 0x1c, 0x3b, +}; +static const struct drbg_kat_no_reseed kat689_t = { + 13, kat689_entropyin, kat689_nonce, kat689_persstr, + kat689_addin0, kat689_addin1, kat689_retbits +}; +static const struct drbg_kat kat689 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat689_t +}; + +static const unsigned char kat690_entropyin[] = { + 0x00, 0xaf, 0x19, 0x87, 0x21, 0x07, 0x56, 0x57, 0x89, 0xd4, 0x07, 0xaf, + 0x38, 0x1f, 0x02, 0xef, 0x00, 0x8b, 0xee, 0x1f, 0x20, 0xdd, 0x69, 0x5b, + 0xc0, 0x0c, 0x58, 0xaf, 0xc7, 0xbb, 0x7e, 0xdf, +}; +static const unsigned char kat690_nonce[] = { + 0x13, 0x16, 0x02, 0x03, 0x23, 0x0f, 0xfd, 0xd3, 0x41, 0x71, 0x64, 0xae, + 0xe1, 0xcd, 0x87, 0x64, +}; +static const unsigned char kat690_persstr[] = {0}; +static const unsigned char kat690_addin0[] = { + 0xfd, 0x8a, 0xa4, 0x82, 0x27, 0x23, 0x29, 0x1d, 0x4c, 0x46, 0x71, 0x6a, + 0xc5, 0x60, 0x68, 0x4f, 0x8f, 0xa6, 0x70, 0xa3, 0xd0, 0xec, 0xcc, 0x07, + 0xa5, 0xa3, 0x33, 0x5f, 0x13, 0x16, 0x83, 0x57, +}; +static const unsigned char kat690_addin1[] = { + 0x12, 0xf3, 0xa8, 0x79, 0x0b, 0x35, 0x37, 0x9f, 0x34, 0x4a, 0xa0, 0x62, + 0x7f, 0xd4, 0xb0, 0xeb, 0xb1, 0x34, 0x19, 0xce, 0x97, 0x7f, 0x7a, 0x38, + 0xe1, 0xb0, 0x18, 0x7a, 0x89, 0x68, 0xd2, 0x90, +}; +static const unsigned char kat690_retbits[] = { + 0xdb, 0xd9, 0xce, 0x59, 0x62, 0x73, 0x6e, 0x22, 0x4c, 0xa4, 0xb3, 0xb8, + 0x55, 0xe1, 0x39, 0x70, 0xea, 0xeb, 0x0a, 0x5c, 0x60, 0x7a, 0x66, 0xf1, + 0xd0, 0x30, 0x3d, 0xe9, 0x59, 0xd8, 0x17, 0x18, 0x5b, 0x1f, 0x75, 0x44, + 0x87, 0x4f, 0x51, 0xea, 0xa5, 0x3a, 0xd0, 0xc3, 0xde, 0xbe, 0x85, 0x1e, + 0x6b, 0x23, 0xae, 0x2e, 0xe3, 0x6d, 0x46, 0x62, 0x88, 0x02, 0x6d, 0x96, + 0xbd, 0x27, 0x99, 0xd9, +}; +static const struct drbg_kat_no_reseed kat690_t = { + 14, kat690_entropyin, kat690_nonce, kat690_persstr, + kat690_addin0, kat690_addin1, kat690_retbits +}; +static const struct drbg_kat kat690 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat690_t +}; + +static const unsigned char kat691_entropyin[] = { + 0x5b, 0xe5, 0x76, 0xef, 0x25, 0xe0, 0x4f, 0xf8, 0xd6, 0x17, 0x20, 0xfd, + 0xfe, 0xe9, 0x66, 0x53, 0x62, 0xda, 0x94, 0xce, 0x54, 0x86, 0xf5, 0x91, + 0x4f, 0x24, 0x10, 0xe0, 0x6d, 0x09, 0xc7, 0x3e, +}; +static const unsigned char kat691_nonce[] = { + 0x7b, 0x9c, 0xcc, 0x3e, 0x6d, 0x5d, 0x7b, 0x5f, 0xb5, 0xd4, 0xb3, 0x21, + 0xe4, 0xff, 0x47, 0x6e, +}; +static const unsigned char kat691_persstr[] = { + 0xec, 0x29, 0x41, 0xf8, 0x68, 0x4b, 0x25, 0xda, 0xd3, 0x9f, 0x57, 0xac, + 0xea, 0x40, 0xbd, 0x36, 0x46, 0xe2, 0x09, 0x91, 0x1d, 0x17, 0x77, 0x14, + 0xab, 0x92, 0xcc, 0xe1, 0x3a, 0xfe, 0x75, 0xe5, +}; +static const unsigned char kat691_addin0[] = {0}; +static const unsigned char kat691_addin1[] = {0}; +static const unsigned char kat691_retbits[] = { + 0x1f, 0x97, 0x80, 0xec, 0x93, 0xe7, 0x5d, 0xb8, 0x64, 0xde, 0x37, 0xb3, + 0xf9, 0x29, 0x0c, 0x60, 0x9a, 0xe3, 0x62, 0x0f, 0xab, 0x6c, 0xbb, 0x6c, + 0x17, 0xf9, 0x44, 0x38, 0x3f, 0xaf, 0xe0, 0xf6, 0x4c, 0x23, 0x31, 0x10, + 0xea, 0xcc, 0x5b, 0x4e, 0x5c, 0x41, 0x07, 0xa4, 0x3a, 0x0f, 0xfb, 0x00, + 0xa9, 0x4e, 0x00, 0xfa, 0x89, 0x18, 0xf1, 0x1f, 0x4c, 0x56, 0x4f, 0x04, + 0xbe, 0x71, 0x26, 0xbb, +}; +static const struct drbg_kat_no_reseed kat691_t = { + 0, kat691_entropyin, kat691_nonce, kat691_persstr, + kat691_addin0, kat691_addin1, kat691_retbits +}; +static const struct drbg_kat kat691 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat691_t +}; + +static const unsigned char kat692_entropyin[] = { + 0x6c, 0x35, 0x43, 0x9f, 0x34, 0xa4, 0x3c, 0xf7, 0x89, 0xb4, 0x7b, 0x4d, + 0xf0, 0x91, 0xf0, 0xd2, 0x02, 0x8b, 0x9c, 0x8c, 0x74, 0x65, 0x84, 0xae, + 0x7c, 0xa7, 0x17, 0xf4, 0x55, 0x04, 0x43, 0x77, +}; +static const unsigned char kat692_nonce[] = { + 0x79, 0xd3, 0x88, 0x96, 0x92, 0xcd, 0x2e, 0x3f, 0xfd, 0xa0, 0x28, 0x53, + 0x4a, 0x12, 0xfd, 0xf9, +}; +static const unsigned char kat692_persstr[] = { + 0x2e, 0xb6, 0x82, 0x59, 0x8f, 0x5c, 0xa0, 0x61, 0xf1, 0x1e, 0x65, 0x36, + 0xfc, 0x94, 0xa3, 0xa3, 0x6f, 0x3d, 0xf2, 0x89, 0x6e, 0x2e, 0xc9, 0xb5, + 0x77, 0x40, 0xe6, 0x7c, 0x83, 0x42, 0x4b, 0x40, +}; +static const unsigned char kat692_addin0[] = {0}; +static const unsigned char kat692_addin1[] = {0}; +static const unsigned char kat692_retbits[] = { + 0x34, 0x64, 0xe7, 0x5b, 0x5f, 0xca, 0xc3, 0x79, 0x96, 0x37, 0xa4, 0x0c, + 0xcd, 0xa0, 0x78, 0x1b, 0xda, 0x21, 0x72, 0x2d, 0x39, 0xb0, 0x69, 0x2b, + 0x8f, 0x56, 0x74, 0x80, 0xa9, 0x8d, 0x90, 0xa0, 0x29, 0x19, 0x55, 0x3a, + 0x38, 0x83, 0x0d, 0x7a, 0xe4, 0xd5, 0x8e, 0xf3, 0x61, 0x37, 0x7f, 0xb1, + 0xa8, 0x68, 0x41, 0x05, 0x68, 0xe7, 0xf3, 0xda, 0xe8, 0xbe, 0xc2, 0x00, + 0x23, 0xef, 0xf4, 0x93, +}; +static const struct drbg_kat_no_reseed kat692_t = { + 1, kat692_entropyin, kat692_nonce, kat692_persstr, + kat692_addin0, kat692_addin1, kat692_retbits +}; +static const struct drbg_kat kat692 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat692_t +}; + +static const unsigned char kat693_entropyin[] = { + 0x5b, 0xbe, 0x84, 0xff, 0xad, 0x62, 0xde, 0xb1, 0xed, 0xf2, 0x80, 0x1d, + 0xbd, 0x47, 0x2d, 0x02, 0x8f, 0x45, 0xc0, 0x6f, 0xb8, 0x33, 0x4d, 0x14, + 0x1f, 0x08, 0xc5, 0x35, 0x2c, 0xbb, 0xd2, 0x72, +}; +static const unsigned char kat693_nonce[] = { + 0x94, 0xf6, 0xce, 0x2a, 0x28, 0x76, 0x44, 0xac, 0xc4, 0x57, 0x5a, 0x8b, + 0xa6, 0x78, 0x26, 0x58, +}; +static const unsigned char kat693_persstr[] = { + 0x0e, 0x3b, 0x68, 0xda, 0x0e, 0x16, 0x7e, 0x01, 0x1d, 0x1e, 0xc8, 0xdd, + 0x7d, 0x8b, 0x9a, 0xfd, 0x4b, 0x0b, 0x6e, 0x42, 0x80, 0x6b, 0x60, 0x00, + 0xdd, 0x79, 0x75, 0x75, 0x09, 0xe0, 0x4f, 0x39, +}; +static const unsigned char kat693_addin0[] = {0}; +static const unsigned char kat693_addin1[] = {0}; +static const unsigned char kat693_retbits[] = { + 0xd3, 0xa4, 0x70, 0xea, 0x6f, 0x5a, 0x16, 0x09, 0x63, 0xa7, 0x95, 0x31, + 0xce, 0xe9, 0x67, 0x9d, 0xd8, 0x9e, 0x05, 0x14, 0x12, 0x24, 0x88, 0x32, + 0x65, 0xf2, 0x14, 0xce, 0x17, 0xd8, 0x36, 0xa2, 0xfc, 0xc3, 0xe2, 0x87, + 0x0d, 0x45, 0x66, 0x2d, 0x80, 0x24, 0x0a, 0xb5, 0x7e, 0x28, 0xf8, 0x3d, + 0x07, 0xe1, 0x3a, 0xf5, 0x82, 0xaa, 0x70, 0x11, 0xf9, 0x69, 0xc8, 0xe0, + 0xe7, 0x32, 0xe7, 0x85, +}; +static const struct drbg_kat_no_reseed kat693_t = { + 2, kat693_entropyin, kat693_nonce, kat693_persstr, + kat693_addin0, kat693_addin1, kat693_retbits +}; +static const struct drbg_kat kat693 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat693_t +}; + +static const unsigned char kat694_entropyin[] = { + 0xdc, 0x88, 0x15, 0x21, 0xd7, 0x0f, 0x4d, 0x5b, 0x34, 0xc9, 0x56, 0x83, + 0x1e, 0x2c, 0x95, 0x36, 0xd6, 0xe0, 0x26, 0xd7, 0x86, 0x29, 0x57, 0x70, + 0x33, 0xbe, 0x80, 0x07, 0x85, 0xaa, 0xbb, 0xa6, +}; +static const unsigned char kat694_nonce[] = { + 0xa8, 0x53, 0x19, 0x19, 0x4e, 0x70, 0x1c, 0x55, 0x8a, 0x15, 0xa0, 0xfc, + 0xf3, 0xf3, 0x5f, 0x49, +}; +static const unsigned char kat694_persstr[] = { + 0x23, 0xef, 0x4c, 0xf4, 0x2f, 0xec, 0x6f, 0x4b, 0xd1, 0x5c, 0x6a, 0xfc, + 0x0e, 0x1c, 0xae, 0x1a, 0x47, 0x72, 0x9e, 0x2f, 0x91, 0x01, 0x90, 0x94, + 0x82, 0x2a, 0x9e, 0xa4, 0x02, 0x4b, 0xcc, 0x35, +}; +static const unsigned char kat694_addin0[] = {0}; +static const unsigned char kat694_addin1[] = {0}; +static const unsigned char kat694_retbits[] = { + 0x74, 0xb0, 0x36, 0x16, 0xf6, 0xd3, 0x62, 0xa3, 0x9f, 0xf3, 0x3a, 0xb8, + 0x59, 0x3b, 0x7a, 0x87, 0xdc, 0xd8, 0x31, 0xfa, 0xa0, 0x56, 0x23, 0x8a, + 0x44, 0x5d, 0x0d, 0xc6, 0x23, 0xfc, 0x47, 0x72, 0x5c, 0x2d, 0xde, 0xa7, + 0x0a, 0x5f, 0x0b, 0x87, 0x51, 0xa1, 0x30, 0xbb, 0x27, 0x28, 0xbf, 0xc3, + 0xde, 0x11, 0x76, 0x77, 0xb3, 0x88, 0x6d, 0x4d, 0x67, 0x15, 0xf2, 0xd8, + 0x29, 0x6d, 0x71, 0xf9, +}; +static const struct drbg_kat_no_reseed kat694_t = { + 3, kat694_entropyin, kat694_nonce, kat694_persstr, + kat694_addin0, kat694_addin1, kat694_retbits +}; +static const struct drbg_kat kat694 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat694_t +}; + +static const unsigned char kat695_entropyin[] = { + 0x5c, 0x3c, 0xea, 0x9b, 0xb9, 0x43, 0x2f, 0x23, 0x60, 0x09, 0x79, 0xd7, + 0xc4, 0x51, 0x1d, 0x85, 0x61, 0xbf, 0x7d, 0x88, 0xd2, 0x29, 0xf3, 0x51, + 0x38, 0xac, 0x19, 0x64, 0x6c, 0x5c, 0x9e, 0xae, +}; +static const unsigned char kat695_nonce[] = { + 0xc0, 0x98, 0xb0, 0xae, 0xde, 0xb0, 0xe7, 0xc3, 0xa4, 0x4d, 0xa2, 0x9c, + 0x67, 0x8f, 0x2b, 0x19, +}; +static const unsigned char kat695_persstr[] = { + 0x50, 0x3e, 0xf4, 0x54, 0xd5, 0x9b, 0x0c, 0x68, 0xd2, 0x3a, 0x4b, 0xae, + 0x07, 0x15, 0xa8, 0x96, 0x3b, 0xa7, 0xbc, 0x70, 0x32, 0x5d, 0xe3, 0xfb, + 0x59, 0x83, 0x1c, 0x90, 0x7a, 0xbd, 0xde, 0xff, +}; +static const unsigned char kat695_addin0[] = {0}; +static const unsigned char kat695_addin1[] = {0}; +static const unsigned char kat695_retbits[] = { + 0xe4, 0x40, 0x8c, 0xa3, 0xcc, 0x4a, 0xac, 0x06, 0x45, 0xdd, 0xc3, 0xa6, + 0x61, 0x2d, 0x50, 0x0c, 0x26, 0x86, 0x29, 0x9b, 0x4f, 0xb6, 0x28, 0x73, + 0x0d, 0xb5, 0x49, 0xfd, 0x49, 0xb1, 0xa8, 0xab, 0x8e, 0xe7, 0xdc, 0xa0, + 0xfe, 0x5e, 0x73, 0x2e, 0xdb, 0x52, 0x52, 0xe6, 0x9b, 0x0d, 0x90, 0x91, + 0x03, 0x42, 0x48, 0xc1, 0x65, 0x48, 0xb0, 0x31, 0x7b, 0x66, 0x0b, 0x8a, + 0x8b, 0x8e, 0x39, 0xba, +}; +static const struct drbg_kat_no_reseed kat695_t = { + 4, kat695_entropyin, kat695_nonce, kat695_persstr, + kat695_addin0, kat695_addin1, kat695_retbits +}; +static const struct drbg_kat kat695 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat695_t +}; + +static const unsigned char kat696_entropyin[] = { + 0x6e, 0xcd, 0x2e, 0xab, 0x50, 0x57, 0x0c, 0xd5, 0x32, 0x0c, 0xed, 0xc3, + 0x6c, 0xe4, 0xff, 0x7e, 0xe3, 0x11, 0xb9, 0xdd, 0xca, 0x8c, 0xb0, 0x71, + 0xeb, 0x82, 0xba, 0x04, 0xe2, 0x73, 0x7b, 0xce, +}; +static const unsigned char kat696_nonce[] = { + 0x7c, 0x55, 0x63, 0x33, 0x24, 0x25, 0x06, 0x5e, 0xbd, 0xcd, 0x72, 0x1f, + 0xaf, 0x8c, 0x3f, 0xf5, +}; +static const unsigned char kat696_persstr[] = { + 0xf5, 0x1d, 0xdf, 0x77, 0x4d, 0xb1, 0x4f, 0x40, 0x63, 0x92, 0xbb, 0x6c, + 0x6e, 0xc5, 0x3f, 0x23, 0x1b, 0xa4, 0xc3, 0xc4, 0x18, 0xee, 0x05, 0x4d, + 0x76, 0xa3, 0x2a, 0xef, 0xb7, 0x1f, 0x2b, 0x1f, +}; +static const unsigned char kat696_addin0[] = {0}; +static const unsigned char kat696_addin1[] = {0}; +static const unsigned char kat696_retbits[] = { + 0xa3, 0x30, 0xbb, 0x0b, 0x8a, 0xb6, 0x05, 0x4e, 0x99, 0xa4, 0x40, 0x4d, + 0xdd, 0x86, 0x2b, 0x8f, 0x24, 0x03, 0x91, 0x41, 0xeb, 0x89, 0xb0, 0xf6, + 0x57, 0x7e, 0xec, 0x25, 0x35, 0xc1, 0xb9, 0x8b, 0x96, 0x4c, 0x5d, 0x6a, + 0x82, 0x7f, 0x56, 0x13, 0x60, 0x78, 0x63, 0xa5, 0x94, 0x04, 0xce, 0xa5, + 0x5d, 0xb7, 0x9b, 0xe1, 0xd0, 0x8c, 0x66, 0x6b, 0x02, 0xf5, 0xc2, 0xcc, + 0x6a, 0x0f, 0x7f, 0x84, +}; +static const struct drbg_kat_no_reseed kat696_t = { + 5, kat696_entropyin, kat696_nonce, kat696_persstr, + kat696_addin0, kat696_addin1, kat696_retbits +}; +static const struct drbg_kat kat696 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat696_t +}; + +static const unsigned char kat697_entropyin[] = { + 0xde, 0x5a, 0x18, 0x75, 0xc5, 0x75, 0xf7, 0xd3, 0x8e, 0xc1, 0x3f, 0xf4, + 0x77, 0x4c, 0x35, 0xb8, 0xc6, 0xb8, 0x91, 0xb0, 0xbd, 0xd3, 0x60, 0x42, + 0x91, 0x1d, 0x15, 0x7b, 0xdf, 0xe0, 0x0c, 0x53, +}; +static const unsigned char kat697_nonce[] = { + 0xf8, 0xd1, 0xad, 0x3c, 0x15, 0x10, 0xf8, 0xe5, 0xd0, 0xa8, 0xf0, 0x5f, + 0x43, 0x99, 0x24, 0xff, +}; +static const unsigned char kat697_persstr[] = { + 0x1d, 0x32, 0x05, 0x75, 0xe7, 0x9b, 0x09, 0xf5, 0x46, 0x20, 0x3b, 0xc5, + 0xd5, 0xb8, 0x6e, 0xc0, 0xf7, 0x62, 0x67, 0x53, 0x56, 0xd8, 0x4d, 0x6e, + 0x7f, 0x57, 0xe5, 0x7b, 0x77, 0xcd, 0x83, 0x2a, +}; +static const unsigned char kat697_addin0[] = {0}; +static const unsigned char kat697_addin1[] = {0}; +static const unsigned char kat697_retbits[] = { + 0x1e, 0x74, 0x9f, 0x20, 0x85, 0x09, 0x7a, 0xb5, 0x46, 0x2a, 0x10, 0x0e, + 0x8a, 0x86, 0xbd, 0x94, 0x6d, 0x29, 0x23, 0x21, 0x62, 0x28, 0x05, 0x93, + 0xe9, 0x00, 0xac, 0x77, 0x84, 0x29, 0xa3, 0xb5, 0x89, 0x32, 0xa5, 0x11, + 0x89, 0xb1, 0x72, 0x38, 0x92, 0x7a, 0xab, 0xb6, 0x94, 0xec, 0x48, 0x1d, + 0xd6, 0x6c, 0x3d, 0x93, 0x7b, 0x60, 0x0f, 0xb6, 0x26, 0xe0, 0x21, 0x81, + 0xd0, 0x02, 0x0e, 0xb0, +}; +static const struct drbg_kat_no_reseed kat697_t = { + 6, kat697_entropyin, kat697_nonce, kat697_persstr, + kat697_addin0, kat697_addin1, kat697_retbits +}; +static const struct drbg_kat kat697 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat697_t +}; + +static const unsigned char kat698_entropyin[] = { + 0x60, 0x15, 0x26, 0x97, 0xea, 0xee, 0x41, 0xd5, 0xf5, 0x72, 0xed, 0xc0, + 0x8d, 0xea, 0x0e, 0xe3, 0x1f, 0x49, 0x43, 0x44, 0x6f, 0x55, 0x73, 0xfb, + 0x23, 0xf5, 0xbf, 0x4a, 0xe9, 0x88, 0x25, 0xc3, +}; +static const unsigned char kat698_nonce[] = { + 0x02, 0x13, 0xd5, 0x91, 0xa2, 0x2b, 0xb0, 0xba, 0xef, 0x78, 0xfa, 0x14, + 0x1d, 0xde, 0x5b, 0x72, +}; +static const unsigned char kat698_persstr[] = { + 0x36, 0x59, 0x6e, 0x0a, 0x55, 0x29, 0xb2, 0x2b, 0x64, 0xd0, 0x87, 0x63, + 0x56, 0x46, 0x76, 0xc6, 0xf4, 0x29, 0x86, 0x1e, 0x93, 0xba, 0x28, 0xa4, + 0x3e, 0xf7, 0xcb, 0xb0, 0x4b, 0x03, 0x49, 0xbd, +}; +static const unsigned char kat698_addin0[] = {0}; +static const unsigned char kat698_addin1[] = {0}; +static const unsigned char kat698_retbits[] = { + 0xb3, 0x3f, 0x03, 0x99, 0x6a, 0xce, 0x84, 0x09, 0x7f, 0xc3, 0x05, 0x8c, + 0x52, 0xe4, 0x96, 0xc4, 0xb3, 0xb1, 0x33, 0x7b, 0xea, 0x78, 0xe0, 0xc7, + 0x74, 0xbd, 0x15, 0xb9, 0x4c, 0x27, 0x04, 0xa5, 0xd2, 0x01, 0x7b, 0xa8, + 0x92, 0x0a, 0x91, 0x5e, 0x21, 0x5a, 0x75, 0x7f, 0xbf, 0xab, 0x2d, 0x8f, + 0xad, 0x62, 0x59, 0x48, 0x1b, 0x4f, 0x11, 0x3a, 0x8a, 0x62, 0xe2, 0x74, + 0x2d, 0x86, 0x23, 0xeb, +}; +static const struct drbg_kat_no_reseed kat698_t = { + 7, kat698_entropyin, kat698_nonce, kat698_persstr, + kat698_addin0, kat698_addin1, kat698_retbits +}; +static const struct drbg_kat kat698 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat698_t +}; + +static const unsigned char kat699_entropyin[] = { + 0xe6, 0x7e, 0x0a, 0xff, 0x14, 0x53, 0xe6, 0x71, 0x44, 0x44, 0x17, 0x18, + 0x22, 0xe6, 0x6e, 0xf7, 0xc6, 0x2e, 0x84, 0xca, 0x66, 0x33, 0x0d, 0x48, + 0xd8, 0x38, 0x40, 0x3b, 0xbe, 0xb4, 0xf5, 0xed, +}; +static const unsigned char kat699_nonce[] = { + 0x2b, 0xfd, 0x34, 0x4e, 0x1c, 0xfd, 0xb1, 0x2b, 0x15, 0x2b, 0x84, 0xe9, + 0xa8, 0x90, 0x4e, 0xfe, +}; +static const unsigned char kat699_persstr[] = { + 0x9e, 0x9a, 0x6d, 0x16, 0x4b, 0xae, 0x83, 0xb0, 0x80, 0xe4, 0x6b, 0x23, + 0xdd, 0x1e, 0x53, 0x1f, 0xd6, 0x80, 0x39, 0x54, 0x29, 0xf2, 0xe7, 0x60, + 0xbd, 0x97, 0x0f, 0xf8, 0xa2, 0xf8, 0xc7, 0xae, +}; +static const unsigned char kat699_addin0[] = {0}; +static const unsigned char kat699_addin1[] = {0}; +static const unsigned char kat699_retbits[] = { + 0x9e, 0x24, 0x4c, 0xdc, 0xb0, 0xdd, 0xbb, 0xbc, 0x24, 0x85, 0x8a, 0x52, + 0xc7, 0x8c, 0xc0, 0x69, 0xc3, 0x44, 0xe4, 0x65, 0xf5, 0x33, 0x98, 0x07, + 0x70, 0xfa, 0xff, 0xf8, 0x9f, 0x22, 0xaa, 0x52, 0x65, 0x6a, 0x4f, 0xf2, + 0x04, 0x6b, 0xfd, 0x3c, 0xc7, 0xd0, 0x94, 0x4b, 0x95, 0x43, 0xac, 0x0e, + 0x82, 0x0f, 0x0e, 0x19, 0x20, 0xd5, 0x4b, 0x92, 0x18, 0xf1, 0xfc, 0xcb, + 0xf0, 0xb2, 0x71, 0xab, +}; +static const struct drbg_kat_no_reseed kat699_t = { + 8, kat699_entropyin, kat699_nonce, kat699_persstr, + kat699_addin0, kat699_addin1, kat699_retbits +}; +static const struct drbg_kat kat699 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat699_t +}; + +static const unsigned char kat700_entropyin[] = { + 0x98, 0x28, 0x23, 0x8a, 0x3a, 0x1a, 0x67, 0x04, 0xbb, 0x29, 0x6d, 0x12, + 0x10, 0x06, 0x72, 0x4f, 0x58, 0x2e, 0x5b, 0x70, 0xef, 0x75, 0x31, 0x22, + 0x1d, 0x6f, 0xf6, 0x34, 0x11, 0xe6, 0x0c, 0xd9, +}; +static const unsigned char kat700_nonce[] = { + 0x6b, 0x54, 0x56, 0xcc, 0x71, 0xb7, 0x9b, 0x41, 0xd3, 0xb2, 0x6d, 0xa1, + 0x32, 0x0c, 0x65, 0x31, +}; +static const unsigned char kat700_persstr[] = { + 0xe5, 0xe6, 0x4f, 0xa5, 0x51, 0x42, 0x7d, 0xb8, 0xf8, 0x18, 0xce, 0x5b, + 0xdb, 0x53, 0x4e, 0xbc, 0x70, 0x55, 0xb5, 0x98, 0x1d, 0xc3, 0x6f, 0x64, + 0x96, 0xda, 0xc9, 0xb8, 0x9b, 0xea, 0x1e, 0x61, +}; +static const unsigned char kat700_addin0[] = {0}; +static const unsigned char kat700_addin1[] = {0}; +static const unsigned char kat700_retbits[] = { + 0x5a, 0x69, 0xb4, 0xfe, 0x77, 0x15, 0x6f, 0x87, 0x82, 0x35, 0xec, 0xe1, + 0x27, 0xad, 0x6a, 0x85, 0xb0, 0xe1, 0x11, 0x9d, 0x17, 0xa0, 0x8b, 0x21, + 0x97, 0x76, 0x15, 0xd8, 0xa9, 0xbb, 0x8a, 0xd7, 0xca, 0xf3, 0x5d, 0x89, + 0x9d, 0xd9, 0xaa, 0x21, 0x0c, 0x57, 0xe1, 0x10, 0x4f, 0x9a, 0x9e, 0xcb, + 0x73, 0x10, 0xea, 0x6d, 0x54, 0xc0, 0x98, 0x84, 0xf9, 0x41, 0xc6, 0xcb, + 0xff, 0x3d, 0xa5, 0xa0, +}; +static const struct drbg_kat_no_reseed kat700_t = { + 9, kat700_entropyin, kat700_nonce, kat700_persstr, + kat700_addin0, kat700_addin1, kat700_retbits +}; +static const struct drbg_kat kat700 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat700_t +}; + +static const unsigned char kat701_entropyin[] = { + 0x0b, 0xf4, 0x0a, 0x75, 0xa2, 0xae, 0x58, 0x03, 0x5b, 0xbf, 0xf7, 0x66, + 0x4f, 0xe2, 0xc9, 0x58, 0xad, 0xc5, 0x79, 0x00, 0x21, 0x3a, 0xf9, 0xcf, + 0x4c, 0xdc, 0xb1, 0x67, 0xb5, 0x57, 0xbb, 0xaa, +}; +static const unsigned char kat701_nonce[] = { + 0x38, 0x56, 0xfc, 0x02, 0xdf, 0xde, 0xfc, 0x9c, 0x6d, 0x00, 0x3b, 0x1f, + 0xef, 0x6b, 0x71, 0x97, +}; +static const unsigned char kat701_persstr[] = { + 0xb5, 0x93, 0x6c, 0x72, 0xdb, 0x21, 0x71, 0x6c, 0xac, 0x94, 0x44, 0x4c, + 0xa4, 0xa6, 0xfd, 0xc9, 0xf5, 0x50, 0xd0, 0xfc, 0x71, 0x31, 0xdd, 0xf2, + 0x70, 0x9a, 0x7f, 0xb5, 0x44, 0xd9, 0xe2, 0xb7, +}; +static const unsigned char kat701_addin0[] = {0}; +static const unsigned char kat701_addin1[] = {0}; +static const unsigned char kat701_retbits[] = { + 0xf6, 0xd9, 0xe5, 0xa5, 0xd1, 0xd8, 0x7f, 0x33, 0x65, 0x5c, 0x9c, 0xba, + 0x1e, 0x93, 0x63, 0x04, 0x27, 0x7d, 0x69, 0x98, 0x48, 0x8d, 0xbf, 0x22, + 0x42, 0x0c, 0x73, 0xc8, 0x2b, 0x07, 0x44, 0xc9, 0xcb, 0xf2, 0x1f, 0xf8, + 0x2e, 0x79, 0x9d, 0x29, 0xc1, 0xd6, 0xe7, 0x94, 0x45, 0x1e, 0xe7, 0xe5, + 0x36, 0x40, 0xf5, 0x50, 0xbe, 0xf7, 0x21, 0xf0, 0x39, 0x4d, 0x73, 0xa4, + 0x57, 0x15, 0xeb, 0xfa, +}; +static const struct drbg_kat_no_reseed kat701_t = { + 10, kat701_entropyin, kat701_nonce, kat701_persstr, + kat701_addin0, kat701_addin1, kat701_retbits +}; +static const struct drbg_kat kat701 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat701_t +}; + +static const unsigned char kat702_entropyin[] = { + 0x98, 0xc6, 0xb2, 0x9f, 0x70, 0x1f, 0xe3, 0x0c, 0x41, 0xd3, 0x4d, 0x7f, + 0x1d, 0xa3, 0x6f, 0xe2, 0xa7, 0x19, 0xde, 0x06, 0xe8, 0x74, 0xae, 0x80, + 0x68, 0x43, 0x99, 0xa6, 0x73, 0xa9, 0x7d, 0x1f, +}; +static const unsigned char kat702_nonce[] = { + 0x03, 0x69, 0xf7, 0xb4, 0x9f, 0x40, 0x36, 0x71, 0x16, 0xfa, 0xaa, 0x6d, + 0xfe, 0x4e, 0xa3, 0xf3, +}; +static const unsigned char kat702_persstr[] = { + 0x0e, 0x48, 0xab, 0x3e, 0x50, 0x7d, 0x5c, 0x74, 0xca, 0x58, 0x85, 0xa6, + 0x84, 0x8c, 0x05, 0xf7, 0xe0, 0x3b, 0xc2, 0xa0, 0xfc, 0x47, 0x92, 0xaa, + 0xea, 0xca, 0x2a, 0x16, 0x99, 0xf5, 0xd6, 0x4b, +}; +static const unsigned char kat702_addin0[] = {0}; +static const unsigned char kat702_addin1[] = {0}; +static const unsigned char kat702_retbits[] = { + 0x5f, 0x93, 0xad, 0xee, 0x11, 0x05, 0xaa, 0x58, 0x9a, 0x3c, 0x54, 0xdc, + 0x03, 0x01, 0x25, 0x78, 0x21, 0xb0, 0x93, 0x67, 0x91, 0x87, 0x60, 0xb7, + 0x5b, 0x83, 0x79, 0xe3, 0xf4, 0xd3, 0x04, 0x69, 0xc4, 0x97, 0xb7, 0xde, + 0xad, 0x63, 0x4a, 0x6e, 0xb7, 0x5e, 0x54, 0x4d, 0x7a, 0xab, 0x18, 0xeb, + 0x9d, 0xd2, 0xf0, 0x27, 0xc7, 0x4d, 0xc2, 0xb4, 0x47, 0xf9, 0xdc, 0x98, + 0xac, 0xe5, 0xbb, 0xa2, +}; +static const struct drbg_kat_no_reseed kat702_t = { + 11, kat702_entropyin, kat702_nonce, kat702_persstr, + kat702_addin0, kat702_addin1, kat702_retbits +}; +static const struct drbg_kat kat702 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat702_t +}; + +static const unsigned char kat703_entropyin[] = { + 0xb8, 0x71, 0xd4, 0xb9, 0xc7, 0x85, 0xa5, 0x59, 0x0e, 0x55, 0x40, 0xd4, + 0x1e, 0x57, 0x44, 0x14, 0x77, 0x97, 0x60, 0xd9, 0x3f, 0xad, 0x61, 0x1c, + 0x8b, 0x40, 0xbe, 0xc7, 0x4a, 0x82, 0xd3, 0xe5, +}; +static const unsigned char kat703_nonce[] = { + 0x8b, 0x40, 0x35, 0xfd, 0xaf, 0x56, 0x6e, 0xc2, 0xd5, 0xae, 0xb0, 0x56, + 0x71, 0xde, 0xe0, 0x42, +}; +static const unsigned char kat703_persstr[] = { + 0x8d, 0x9a, 0xda, 0xb4, 0xc1, 0xeb, 0x18, 0x18, 0xfa, 0x7c, 0xce, 0x9e, + 0x17, 0xab, 0xb4, 0xa2, 0xb4, 0xb5, 0x72, 0x09, 0xdf, 0xc2, 0x51, 0x32, + 0x42, 0x44, 0xa3, 0xbc, 0x25, 0x83, 0xa3, 0x61, +}; +static const unsigned char kat703_addin0[] = {0}; +static const unsigned char kat703_addin1[] = {0}; +static const unsigned char kat703_retbits[] = { + 0x4f, 0x46, 0xf9, 0xee, 0xa6, 0x22, 0x08, 0x08, 0x9f, 0xc8, 0x7d, 0x5c, + 0x7a, 0xda, 0x6a, 0xdf, 0xd1, 0x7f, 0xdb, 0x61, 0x92, 0xe0, 0x2a, 0x1b, + 0x90, 0x71, 0x66, 0x02, 0xc6, 0x39, 0x79, 0x68, 0x18, 0x15, 0x61, 0xc5, + 0x93, 0x75, 0x7b, 0x4b, 0xc5, 0x86, 0x96, 0x47, 0xed, 0x7a, 0x2d, 0xed, + 0x4f, 0x21, 0x74, 0x45, 0xee, 0x59, 0x98, 0xf7, 0xe9, 0xce, 0xe8, 0x92, + 0xff, 0xac, 0xe9, 0xe5, +}; +static const struct drbg_kat_no_reseed kat703_t = { + 12, kat703_entropyin, kat703_nonce, kat703_persstr, + kat703_addin0, kat703_addin1, kat703_retbits +}; +static const struct drbg_kat kat703 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat703_t +}; + +static const unsigned char kat704_entropyin[] = { + 0x59, 0x1b, 0xe0, 0xb5, 0xfd, 0xf6, 0xd1, 0xb3, 0xb7, 0xf5, 0xb1, 0x33, + 0xd9, 0xe0, 0x5f, 0x81, 0xed, 0x45, 0xf2, 0x52, 0xab, 0x13, 0x42, 0xa9, + 0xa2, 0x25, 0xb4, 0x31, 0x27, 0x06, 0xa2, 0xa7, +}; +static const unsigned char kat704_nonce[] = { + 0x19, 0x98, 0xea, 0x95, 0xf0, 0x16, 0xe6, 0x8b, 0xec, 0x00, 0x9d, 0x58, + 0xaa, 0xa9, 0x17, 0xa9, +}; +static const unsigned char kat704_persstr[] = { + 0xbb, 0x41, 0xdc, 0xbd, 0x6b, 0xa8, 0x02, 0x25, 0x5a, 0x85, 0xd4, 0xcd, + 0xd9, 0xb3, 0x88, 0x51, 0xd6, 0x36, 0xdd, 0xd0, 0xa8, 0x3e, 0x65, 0x26, + 0x2e, 0x3d, 0x2f, 0x4c, 0x7d, 0xfc, 0xa4, 0x97, +}; +static const unsigned char kat704_addin0[] = {0}; +static const unsigned char kat704_addin1[] = {0}; +static const unsigned char kat704_retbits[] = { + 0x0d, 0xd6, 0xba, 0x8b, 0xa9, 0x52, 0x62, 0x22, 0xc4, 0x36, 0x74, 0x66, + 0x30, 0xf0, 0x79, 0x12, 0xd5, 0x4d, 0xcd, 0x9c, 0x0c, 0xd4, 0xa2, 0xe9, + 0x5f, 0x02, 0x76, 0xce, 0x07, 0xe0, 0x31, 0xf4, 0x61, 0xb3, 0x5a, 0xf8, + 0x7d, 0x0f, 0x69, 0x4d, 0xdc, 0xfa, 0xca, 0x8f, 0xb6, 0x5c, 0xdd, 0x65, + 0x7f, 0x52, 0x4f, 0x3c, 0xb1, 0xd9, 0x28, 0x58, 0xab, 0x58, 0x76, 0x7a, + 0xcf, 0xc2, 0xd2, 0x3f, +}; +static const struct drbg_kat_no_reseed kat704_t = { + 13, kat704_entropyin, kat704_nonce, kat704_persstr, + kat704_addin0, kat704_addin1, kat704_retbits +}; +static const struct drbg_kat kat704 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat704_t +}; + +static const unsigned char kat705_entropyin[] = { + 0x62, 0x2a, 0x61, 0x31, 0x73, 0xdf, 0x7f, 0xb9, 0x00, 0x89, 0x46, 0x09, + 0xe2, 0x44, 0x40, 0xc3, 0xf4, 0x56, 0xa3, 0xea, 0xf9, 0xe3, 0x8c, 0xa9, + 0x88, 0xcd, 0x24, 0x03, 0x5e, 0x39, 0x27, 0xee, +}; +static const unsigned char kat705_nonce[] = { + 0x37, 0x7c, 0x3b, 0xde, 0xb5, 0x6a, 0x6f, 0xcf, 0x93, 0x82, 0xa2, 0x42, + 0xb1, 0x03, 0x6c, 0xc0, +}; +static const unsigned char kat705_persstr[] = { + 0x7a, 0xea, 0x3f, 0xf4, 0x21, 0x44, 0x7e, 0x01, 0x33, 0x3c, 0x14, 0xbb, + 0x5f, 0xd6, 0x52, 0xb1, 0x59, 0xd1, 0xf5, 0x32, 0x4e, 0xf8, 0xd2, 0x3e, + 0x5e, 0x36, 0x08, 0x1d, 0x84, 0x8c, 0xaa, 0xf6, +}; +static const unsigned char kat705_addin0[] = {0}; +static const unsigned char kat705_addin1[] = {0}; +static const unsigned char kat705_retbits[] = { + 0x22, 0x93, 0x26, 0x74, 0xba, 0xfd, 0xbd, 0x4f, 0x7a, 0x34, 0x3c, 0x52, + 0x05, 0xaa, 0xf0, 0x95, 0xed, 0xfc, 0xf7, 0x12, 0xce, 0x01, 0x0c, 0x11, + 0x81, 0x9c, 0xd9, 0x17, 0x1d, 0x11, 0x33, 0xc8, 0x89, 0x22, 0x0a, 0x1f, + 0x93, 0x9c, 0xad, 0x9f, 0x09, 0x8c, 0x50, 0x4e, 0x62, 0xf9, 0x8a, 0x63, + 0x88, 0x27, 0xd7, 0x36, 0xfb, 0x99, 0x60, 0x82, 0x9b, 0x38, 0x26, 0xfa, + 0x04, 0x6f, 0x31, 0xa3, +}; +static const struct drbg_kat_no_reseed kat705_t = { + 14, kat705_entropyin, kat705_nonce, kat705_persstr, + kat705_addin0, kat705_addin1, kat705_retbits +}; +static const struct drbg_kat kat705 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat705_t +}; + +static const unsigned char kat706_entropyin[] = { + 0x6b, 0x53, 0x6f, 0x8f, 0x4c, 0x56, 0x16, 0xa0, 0xc4, 0xe6, 0x81, 0x82, + 0x55, 0x85, 0x72, 0x4d, 0x52, 0x2d, 0x37, 0xfc, 0x02, 0xa0, 0x55, 0x64, + 0x03, 0x08, 0x72, 0xe0, 0xd6, 0xc3, 0x92, 0x2f, +}; +static const unsigned char kat706_nonce[] = { + 0x01, 0x84, 0x41, 0x75, 0x27, 0xff, 0xdd, 0x3e, 0xdd, 0xdb, 0xb0, 0x70, + 0x95, 0x78, 0x26, 0xc0, +}; +static const unsigned char kat706_persstr[] = { + 0x91, 0xe6, 0x2a, 0x60, 0x9b, 0x4d, 0xb5, 0x0c, 0x5e, 0x7a, 0xd7, 0xd0, + 0x9d, 0xc3, 0x87, 0xda, 0xe9, 0xda, 0x6d, 0x25, 0x85, 0xbd, 0x35, 0x30, + 0x38, 0x94, 0x11, 0xce, 0xa7, 0xd2, 0xa4, 0x0e, +}; +static const unsigned char kat706_addin0[] = { + 0x42, 0xf3, 0x98, 0xbf, 0x22, 0x29, 0x97, 0x6f, 0x9d, 0x97, 0xb0, 0xa5, + 0xfc, 0x47, 0xd5, 0xc6, 0x4b, 0x70, 0xfa, 0x56, 0x31, 0xab, 0xf2, 0x8f, + 0x2c, 0x6f, 0x91, 0xf7, 0x8b, 0x72, 0x78, 0xd9, +}; +static const unsigned char kat706_addin1[] = { + 0xc6, 0x24, 0x29, 0x1e, 0xb0, 0x39, 0xad, 0x17, 0x24, 0xc9, 0xb0, 0xba, + 0x20, 0xb9, 0x84, 0x21, 0xa7, 0xf0, 0x03, 0x2f, 0x6c, 0x8c, 0x00, 0xf6, + 0x47, 0x94, 0x01, 0x8c, 0xe5, 0xa5, 0xed, 0x96, +}; +static const unsigned char kat706_retbits[] = { + 0x50, 0x7e, 0x0b, 0x4f, 0x12, 0xc4, 0x08, 0xd8, 0x70, 0x52, 0xb7, 0x9e, + 0xb4, 0x87, 0x9c, 0x92, 0x5a, 0x91, 0x8b, 0x0f, 0xcd, 0x81, 0x2b, 0xbe, + 0xdc, 0x72, 0x0a, 0x3d, 0x8b, 0xe6, 0x56, 0xe4, 0x0d, 0xe9, 0x00, 0x25, + 0x7f, 0x7a, 0x27, 0x0d, 0xd6, 0xd8, 0xe7, 0xda, 0x50, 0xcd, 0xc2, 0x0d, + 0x74, 0x4e, 0x94, 0x97, 0x8d, 0x70, 0x7b, 0x53, 0xf3, 0x82, 0xae, 0xb1, + 0x64, 0x88, 0xb1, 0x22, +}; +static const struct drbg_kat_no_reseed kat706_t = { + 0, kat706_entropyin, kat706_nonce, kat706_persstr, + kat706_addin0, kat706_addin1, kat706_retbits +}; +static const struct drbg_kat kat706 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat706_t +}; + +static const unsigned char kat707_entropyin[] = { + 0x46, 0xf6, 0x26, 0xc7, 0xee, 0x44, 0xda, 0xd8, 0x3c, 0xed, 0x8e, 0x6c, + 0xe5, 0x56, 0xd1, 0xc4, 0x40, 0xda, 0x55, 0xc7, 0xc9, 0x7b, 0x4b, 0x0e, + 0x51, 0xb9, 0x81, 0x7e, 0x97, 0x70, 0x01, 0xb9, +}; +static const unsigned char kat707_nonce[] = { + 0xfd, 0x56, 0x3b, 0x05, 0xc0, 0xc9, 0x5f, 0x2b, 0xa9, 0x40, 0xfe, 0x9e, + 0x88, 0xed, 0x6f, 0xb9, +}; +static const unsigned char kat707_persstr[] = { + 0xec, 0x1a, 0x72, 0x24, 0xd1, 0xc1, 0x35, 0x59, 0x7b, 0x8e, 0x41, 0x4d, + 0x2e, 0xab, 0x62, 0x42, 0x65, 0x1b, 0xd6, 0x62, 0x78, 0x97, 0x3f, 0x4d, + 0x5e, 0xa2, 0x6a, 0x06, 0xf3, 0x7c, 0x0b, 0x3b, +}; +static const unsigned char kat707_addin0[] = { + 0x66, 0x84, 0x32, 0xe5, 0x18, 0x24, 0x94, 0xb2, 0x32, 0xe8, 0xa6, 0x6a, + 0x71, 0x35, 0xf0, 0x31, 0xe1, 0x15, 0x45, 0x28, 0xd4, 0x05, 0xda, 0x05, + 0x7b, 0xb4, 0xc8, 0xcf, 0xad, 0xbf, 0x25, 0xbb, +}; +static const unsigned char kat707_addin1[] = { + 0x10, 0xe0, 0xd1, 0x3c, 0x77, 0xc5, 0x04, 0xbf, 0x78, 0xd2, 0x93, 0xed, + 0x12, 0xde, 0x19, 0x2c, 0x10, 0x8d, 0x7d, 0xbe, 0xd8, 0x1a, 0xfb, 0xfe, + 0xdd, 0xf7, 0x27, 0xe9, 0xf2, 0x81, 0x64, 0x15, +}; +static const unsigned char kat707_retbits[] = { + 0x2b, 0xa8, 0x9e, 0x10, 0x71, 0xb0, 0x7b, 0x91, 0x47, 0x79, 0xa5, 0xfc, + 0xde, 0x87, 0x4a, 0x74, 0xa4, 0xe9, 0xb9, 0x08, 0x1b, 0xc0, 0xcf, 0xbd, + 0x8a, 0x62, 0x34, 0xd7, 0x55, 0x67, 0xab, 0x7d, 0xcf, 0x2c, 0x9b, 0xe0, + 0x03, 0xcd, 0xf7, 0xeb, 0xbb, 0xd1, 0x66, 0x59, 0x4f, 0x2a, 0x80, 0x89, + 0x9e, 0xc1, 0x3a, 0x48, 0x4d, 0x4c, 0xd2, 0x6d, 0x03, 0x38, 0xe1, 0xf9, + 0xfb, 0xb4, 0xd3, 0xf6, +}; +static const struct drbg_kat_no_reseed kat707_t = { + 1, kat707_entropyin, kat707_nonce, kat707_persstr, + kat707_addin0, kat707_addin1, kat707_retbits +}; +static const struct drbg_kat kat707 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat707_t +}; + +static const unsigned char kat708_entropyin[] = { + 0xbb, 0x55, 0x39, 0x3b, 0xe6, 0x59, 0xc4, 0x84, 0x70, 0x5d, 0x79, 0xbc, + 0x87, 0x87, 0xa5, 0x4c, 0xd1, 0xc1, 0x79, 0x56, 0x78, 0x7e, 0x3f, 0x32, + 0x53, 0x53, 0x21, 0x01, 0xe1, 0x89, 0x27, 0xb5, +}; +static const unsigned char kat708_nonce[] = { + 0xeb, 0xfe, 0x17, 0x65, 0xd9, 0xd6, 0x59, 0x46, 0x73, 0x11, 0xe3, 0x44, + 0x79, 0x65, 0x7b, 0xc1, +}; +static const unsigned char kat708_persstr[] = { + 0x73, 0x54, 0x4a, 0x81, 0x4c, 0x51, 0x23, 0x2d, 0x48, 0x04, 0xc5, 0x9d, + 0x17, 0x1d, 0x50, 0x0e, 0x29, 0x2f, 0xc9, 0x11, 0x0e, 0x2b, 0x26, 0x85, + 0x6b, 0x9d, 0xb7, 0xd7, 0x44, 0x6a, 0x7a, 0x9a, +}; +static const unsigned char kat708_addin0[] = { + 0x85, 0x5f, 0xe1, 0xcb, 0x8d, 0x50, 0x72, 0xf0, 0x3d, 0xb8, 0xe9, 0xc4, + 0xaa, 0xc8, 0xeb, 0x82, 0x9c, 0x47, 0xbf, 0x9a, 0xcb, 0xdc, 0x88, 0x8e, + 0x77, 0x3e, 0x36, 0x58, 0x0f, 0xa2, 0x4f, 0x34, +}; +static const unsigned char kat708_addin1[] = { + 0x64, 0x94, 0xd5, 0xec, 0x3f, 0x17, 0xd7, 0x3b, 0xb6, 0x52, 0x14, 0x27, + 0x64, 0x08, 0x14, 0xf7, 0xb4, 0xee, 0x40, 0x70, 0x14, 0x56, 0x61, 0x63, + 0x7d, 0x2f, 0x79, 0xb2, 0xef, 0x18, 0xb4, 0xf5, +}; +static const unsigned char kat708_retbits[] = { + 0x25, 0xac, 0x0a, 0xec, 0x11, 0x98, 0x03, 0xfe, 0x7d, 0x26, 0xcd, 0x76, + 0x35, 0xf4, 0x1f, 0x82, 0xd0, 0xed, 0x63, 0x4a, 0x30, 0x35, 0x88, 0x6e, + 0x25, 0x4c, 0xe4, 0x0f, 0x09, 0x74, 0x75, 0x64, 0x29, 0x04, 0xea, 0xf3, + 0xbe, 0x5b, 0xec, 0xb7, 0x40, 0x43, 0xbe, 0x3f, 0x33, 0xdc, 0x29, 0x40, + 0x63, 0x2a, 0x9e, 0x6a, 0xef, 0x8c, 0x83, 0x67, 0x55, 0x75, 0xb7, 0xc8, + 0x30, 0x74, 0x49, 0x49, +}; +static const struct drbg_kat_no_reseed kat708_t = { + 2, kat708_entropyin, kat708_nonce, kat708_persstr, + kat708_addin0, kat708_addin1, kat708_retbits +}; +static const struct drbg_kat kat708 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat708_t +}; + +static const unsigned char kat709_entropyin[] = { + 0xaf, 0x29, 0x59, 0xb0, 0xb4, 0x42, 0xee, 0xa3, 0xa4, 0x70, 0xfd, 0x2e, + 0x65, 0x31, 0x74, 0x8d, 0xb6, 0x80, 0xf5, 0x43, 0x1f, 0x97, 0x9e, 0x40, + 0xef, 0x40, 0x2f, 0x7e, 0xe0, 0x6b, 0xe2, 0x75, +}; +static const unsigned char kat709_nonce[] = { + 0x14, 0x7f, 0xf9, 0xec, 0xd9, 0x1a, 0x62, 0x2e, 0xb7, 0x54, 0x99, 0xd9, + 0x86, 0xe5, 0x07, 0xaf, +}; +static const unsigned char kat709_persstr[] = { + 0x02, 0xde, 0xde, 0x56, 0x8c, 0x8e, 0xec, 0x1b, 0x34, 0xa0, 0x42, 0xae, + 0x65, 0x1d, 0x6e, 0x06, 0x87, 0xd1, 0x26, 0x1f, 0x54, 0xf3, 0xf3, 0x9e, + 0xd7, 0xe0, 0xef, 0x4d, 0x1c, 0x1c, 0xad, 0x05, +}; +static const unsigned char kat709_addin0[] = { + 0x43, 0x75, 0x7f, 0x98, 0x6a, 0x40, 0x91, 0x5e, 0xa7, 0xcb, 0x7d, 0x51, + 0xec, 0xd4, 0xdc, 0x8e, 0x2e, 0x2f, 0x39, 0xe1, 0xad, 0x7f, 0x22, 0xd1, + 0x67, 0xad, 0x48, 0x6c, 0x90, 0xa7, 0x6b, 0xc1, +}; +static const unsigned char kat709_addin1[] = { + 0x2b, 0x1d, 0x19, 0xf3, 0xc7, 0xff, 0xe7, 0x63, 0xf2, 0xaf, 0x14, 0xbd, + 0xc6, 0xc6, 0xec, 0xac, 0x15, 0x65, 0x69, 0x76, 0xa1, 0x81, 0x17, 0xe7, + 0x04, 0x49, 0x0b, 0xdd, 0xd1, 0x5d, 0xa3, 0x7b, +}; +static const unsigned char kat709_retbits[] = { + 0x57, 0xf2, 0xc0, 0x0b, 0xe6, 0x2f, 0x8a, 0x88, 0x1a, 0xbf, 0x8f, 0x0a, + 0xdc, 0xcb, 0xfc, 0xf5, 0x42, 0x77, 0x51, 0x08, 0x1a, 0xbc, 0x87, 0xea, + 0x0a, 0x87, 0xf2, 0x60, 0xf9, 0xba, 0xe5, 0x7f, 0xe5, 0xab, 0x04, 0xbf, + 0xd8, 0x25, 0x64, 0x01, 0x2c, 0xd3, 0x99, 0x75, 0xb9, 0x24, 0xb4, 0x17, + 0xa1, 0xfb, 0x3f, 0xf8, 0x88, 0x16, 0xd2, 0x64, 0x27, 0x70, 0x21, 0x51, + 0x3a, 0xfa, 0x0f, 0x4c, +}; +static const struct drbg_kat_no_reseed kat709_t = { + 3, kat709_entropyin, kat709_nonce, kat709_persstr, + kat709_addin0, kat709_addin1, kat709_retbits +}; +static const struct drbg_kat kat709 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat709_t +}; + +static const unsigned char kat710_entropyin[] = { + 0x55, 0x64, 0x87, 0x45, 0x7a, 0x05, 0x58, 0xa1, 0x3f, 0x90, 0xa7, 0xe9, + 0xb0, 0x5c, 0x73, 0xc5, 0xc8, 0x54, 0xc6, 0x1c, 0xa2, 0x0f, 0x89, 0xf5, + 0x00, 0x57, 0x05, 0x36, 0x8a, 0xfd, 0x1a, 0xb2, +}; +static const unsigned char kat710_nonce[] = { + 0x85, 0xbc, 0x55, 0x9b, 0xfc, 0xd5, 0x4d, 0xd3, 0x39, 0x5f, 0x6e, 0x65, + 0xb7, 0xcb, 0x3c, 0xa3, +}; +static const unsigned char kat710_persstr[] = { + 0xc6, 0x0f, 0x02, 0x6d, 0xa9, 0x4e, 0xe1, 0xa8, 0x49, 0x56, 0x92, 0x47, + 0xc4, 0x91, 0x35, 0x55, 0x2e, 0x79, 0x77, 0xfd, 0x2a, 0xfc, 0xcb, 0xc7, + 0x0b, 0x2b, 0xf0, 0x65, 0xaf, 0xf4, 0x05, 0xd3, +}; +static const unsigned char kat710_addin0[] = { + 0x5b, 0x09, 0x52, 0xeb, 0xdf, 0x3b, 0x34, 0x0e, 0xe0, 0x56, 0xbe, 0x2a, + 0xab, 0x09, 0xb4, 0xaf, 0x54, 0x18, 0x5d, 0x5d, 0x53, 0x5c, 0xb2, 0x52, + 0xb0, 0xf5, 0xc6, 0x65, 0x9f, 0x31, 0x15, 0x40, +}; +static const unsigned char kat710_addin1[] = { + 0x16, 0x0a, 0xf1, 0xff, 0xe3, 0x7e, 0xb9, 0xcd, 0x0f, 0xe7, 0x26, 0x04, + 0x42, 0x0c, 0xa1, 0x99, 0x89, 0x1c, 0xcd, 0x44, 0x46, 0x6f, 0xc5, 0xa2, + 0x19, 0x37, 0xdd, 0xe0, 0x6a, 0x5e, 0xe8, 0xa8, +}; +static const unsigned char kat710_retbits[] = { + 0x5c, 0x83, 0x2d, 0x5c, 0xb1, 0x53, 0xf2, 0x12, 0xa1, 0x5b, 0xc6, 0x91, + 0x09, 0xb2, 0xbd, 0x93, 0x7f, 0x16, 0xf4, 0x0d, 0x00, 0x07, 0xf9, 0x57, + 0x4d, 0xfb, 0x99, 0x8f, 0x34, 0x91, 0xc1, 0x40, 0x94, 0x8b, 0xd8, 0xa3, + 0xde, 0xe1, 0xc4, 0x41, 0x82, 0x3f, 0x4c, 0xfd, 0x84, 0x05, 0xc4, 0x29, + 0xa5, 0xfc, 0x47, 0x7a, 0xaf, 0xa2, 0x1c, 0x00, 0x23, 0xa9, 0xbe, 0x35, + 0x06, 0x46, 0xc5, 0x54, +}; +static const struct drbg_kat_no_reseed kat710_t = { + 4, kat710_entropyin, kat710_nonce, kat710_persstr, + kat710_addin0, kat710_addin1, kat710_retbits +}; +static const struct drbg_kat kat710 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat710_t +}; + +static const unsigned char kat711_entropyin[] = { + 0x3a, 0x82, 0x0e, 0xf6, 0x05, 0xb4, 0xba, 0xc4, 0xc2, 0x76, 0x6f, 0xc3, + 0x93, 0xb7, 0x65, 0x69, 0x9c, 0x15, 0x3a, 0xa3, 0x7b, 0xe5, 0x75, 0x30, + 0x36, 0xd4, 0xbd, 0x3b, 0x72, 0xc4, 0x15, 0x07, +}; +static const unsigned char kat711_nonce[] = { + 0x01, 0x8d, 0x9f, 0xed, 0x42, 0xf2, 0xd2, 0xfa, 0xa1, 0x8f, 0x73, 0xb3, + 0x45, 0x18, 0xad, 0xdc, +}; +static const unsigned char kat711_persstr[] = { + 0xff, 0x3d, 0xa2, 0x77, 0x3e, 0x7a, 0x6b, 0x0f, 0x09, 0xea, 0xc7, 0xa9, + 0x9a, 0xda, 0xf1, 0x2c, 0x0b, 0xd9, 0xba, 0x07, 0xaf, 0xd1, 0x38, 0x4b, + 0x00, 0x24, 0x8e, 0xde, 0x8d, 0x63, 0x3d, 0x41, +}; +static const unsigned char kat711_addin0[] = { + 0xb5, 0xd4, 0x23, 0x03, 0x02, 0xcc, 0xa8, 0x87, 0x87, 0xf6, 0x57, 0xc3, + 0x12, 0x28, 0xec, 0xfe, 0xa6, 0x66, 0x66, 0x94, 0x67, 0xd9, 0x5e, 0xd5, + 0x16, 0x82, 0x8e, 0xa0, 0xc6, 0xcc, 0xb6, 0xb5, +}; +static const unsigned char kat711_addin1[] = { + 0xb6, 0x25, 0x7d, 0xa8, 0x39, 0x6d, 0x91, 0x59, 0x72, 0x06, 0x2f, 0xbb, + 0x30, 0xb6, 0x60, 0x3a, 0x4d, 0x57, 0x1b, 0x85, 0x6b, 0x05, 0x71, 0x38, + 0x02, 0x1d, 0xee, 0x14, 0x2c, 0xf1, 0xf5, 0xd9, +}; +static const unsigned char kat711_retbits[] = { + 0xcc, 0x8b, 0xa6, 0xd2, 0x4b, 0xfb, 0x07, 0xd8, 0x3b, 0x93, 0x76, 0xff, + 0x07, 0xee, 0x9e, 0x19, 0x92, 0x54, 0xa9, 0x6d, 0x4c, 0x45, 0xbe, 0x1d, + 0x4f, 0xe8, 0xda, 0x7f, 0xa7, 0x30, 0x20, 0x8b, 0x26, 0x1d, 0xfc, 0x8d, + 0xb3, 0x1f, 0x40, 0x8f, 0x27, 0xfd, 0x6f, 0xe0, 0x44, 0xf4, 0x80, 0xbf, + 0x43, 0xc1, 0xae, 0xdc, 0x01, 0xc1, 0xdf, 0xff, 0x03, 0x40, 0xd7, 0x4a, + 0x41, 0x60, 0x0d, 0x1b, +}; +static const struct drbg_kat_no_reseed kat711_t = { + 5, kat711_entropyin, kat711_nonce, kat711_persstr, + kat711_addin0, kat711_addin1, kat711_retbits +}; +static const struct drbg_kat kat711 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat711_t +}; + +static const unsigned char kat712_entropyin[] = { + 0x57, 0x6d, 0x5b, 0x5a, 0x86, 0xd1, 0x9f, 0x70, 0x2a, 0x07, 0x0e, 0xa2, + 0xc2, 0xbd, 0x26, 0xc2, 0x32, 0x20, 0xf2, 0x2a, 0x2b, 0xd2, 0x43, 0x3a, + 0xd9, 0xdf, 0xde, 0x96, 0x4b, 0x4c, 0x92, 0x69, +}; +static const unsigned char kat712_nonce[] = { + 0xc5, 0x15, 0x04, 0x49, 0xbc, 0x5b, 0x9e, 0xa1, 0xa6, 0xd5, 0x48, 0x34, + 0xc6, 0xfe, 0x55, 0xe4, +}; +static const unsigned char kat712_persstr[] = { + 0x32, 0x5d, 0xb7, 0x77, 0x1f, 0xf2, 0x51, 0xd5, 0xb3, 0x3a, 0x83, 0xb4, + 0x19, 0x71, 0x62, 0x71, 0x48, 0x70, 0xbe, 0x81, 0x09, 0x55, 0x8b, 0xe4, + 0x34, 0x4f, 0xbf, 0x21, 0x5a, 0x0f, 0x14, 0xb4, +}; +static const unsigned char kat712_addin0[] = { + 0x03, 0x9a, 0x99, 0x0b, 0x3d, 0xef, 0x70, 0x06, 0xda, 0x9e, 0x12, 0x9e, + 0x86, 0x33, 0x99, 0x49, 0xb1, 0x91, 0x95, 0xe7, 0xd5, 0x20, 0xf7, 0xf7, + 0xe3, 0xec, 0x1d, 0x0e, 0x2f, 0x5f, 0x7c, 0xea, +}; +static const unsigned char kat712_addin1[] = { + 0xd4, 0x53, 0x96, 0x04, 0x40, 0x71, 0x9a, 0x68, 0xb2, 0xe1, 0x2f, 0x95, + 0x7f, 0x66, 0x41, 0x4c, 0xa7, 0xb2, 0x1b, 0x7f, 0xfe, 0xaa, 0x95, 0xd5, + 0x82, 0x2f, 0x74, 0xd2, 0x20, 0xa7, 0x84, 0xf6, +}; +static const unsigned char kat712_retbits[] = { + 0xe8, 0xdd, 0x79, 0x58, 0xd2, 0xc0, 0x63, 0x22, 0x25, 0x57, 0x78, 0xe6, + 0x03, 0x6f, 0x17, 0x29, 0x19, 0xe5, 0x2a, 0xb5, 0x19, 0x7d, 0x62, 0x0b, + 0xab, 0xc6, 0xaf, 0x85, 0xaa, 0x6a, 0xff, 0xdc, 0x75, 0x45, 0x0d, 0xa3, + 0x43, 0x86, 0x5d, 0xd2, 0x34, 0xd3, 0xe7, 0xbc, 0xb9, 0x04, 0xa7, 0x2b, + 0x4e, 0xa0, 0x64, 0x50, 0xd5, 0x74, 0xd2, 0x8b, 0x5d, 0x33, 0x74, 0xb1, + 0xac, 0xf1, 0xee, 0x21, +}; +static const struct drbg_kat_no_reseed kat712_t = { + 6, kat712_entropyin, kat712_nonce, kat712_persstr, + kat712_addin0, kat712_addin1, kat712_retbits +}; +static const struct drbg_kat kat712 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat712_t +}; + +static const unsigned char kat713_entropyin[] = { + 0x06, 0xd1, 0xae, 0x8d, 0xfa, 0x79, 0xca, 0x5b, 0xaa, 0x17, 0xc4, 0x51, + 0xb2, 0xf1, 0xa4, 0x5f, 0x29, 0xd6, 0x93, 0xbc, 0x56, 0x5d, 0x1a, 0xd7, + 0x47, 0x5f, 0x48, 0xd8, 0x55, 0x57, 0x81, 0x27, +}; +static const unsigned char kat713_nonce[] = { + 0x91, 0xa2, 0xdf, 0x1c, 0x8f, 0x01, 0xba, 0x16, 0xa8, 0x3a, 0x22, 0x4e, + 0x39, 0xf4, 0xaa, 0x30, +}; +static const unsigned char kat713_persstr[] = { + 0x94, 0x29, 0x8f, 0xd4, 0xad, 0x50, 0x96, 0x0c, 0x6b, 0xcf, 0xf3, 0xf4, + 0x0c, 0xd6, 0xca, 0x99, 0xa2, 0x82, 0x1c, 0x56, 0x43, 0x6f, 0x29, 0x69, + 0xe8, 0x47, 0xb9, 0x7c, 0x12, 0xd3, 0x76, 0x4c, +}; +static const unsigned char kat713_addin0[] = { + 0x6c, 0x1d, 0x46, 0x91, 0x4e, 0x2b, 0xc5, 0xb5, 0x6b, 0x58, 0x89, 0xad, + 0xc0, 0xae, 0x03, 0xbc, 0x60, 0x74, 0x9a, 0x9a, 0x09, 0x2a, 0x14, 0xc5, + 0x1f, 0xcc, 0xf2, 0xa2, 0x7c, 0xb1, 0xe4, 0xc3, +}; +static const unsigned char kat713_addin1[] = { + 0x26, 0xd2, 0xda, 0x54, 0xb6, 0xe1, 0x66, 0xda, 0x72, 0xa2, 0x3b, 0x64, + 0x02, 0x3c, 0x55, 0x15, 0xb0, 0x01, 0x0a, 0x83, 0x37, 0xaa, 0xe0, 0x19, + 0xf8, 0x9c, 0x22, 0x7b, 0xbb, 0x4b, 0x18, 0xde, +}; +static const unsigned char kat713_retbits[] = { + 0x75, 0xb5, 0x46, 0xc2, 0xfe, 0x1b, 0x40, 0x13, 0xc7, 0xbc, 0x31, 0xe0, + 0xc8, 0x0b, 0xb1, 0x08, 0x9c, 0xd9, 0x46, 0xf1, 0xb0, 0x35, 0x61, 0x1f, + 0x91, 0x26, 0xa0, 0xe3, 0x30, 0xb8, 0xfd, 0xb0, 0x89, 0x52, 0x0a, 0xa7, + 0x36, 0x8e, 0x12, 0x43, 0x70, 0x88, 0x9b, 0x31, 0x55, 0xd3, 0x9b, 0x62, + 0x47, 0x2f, 0xba, 0xe7, 0x1e, 0xb2, 0x69, 0x17, 0x71, 0x04, 0xbb, 0x61, + 0xaf, 0x3d, 0xde, 0x39, +}; +static const struct drbg_kat_no_reseed kat713_t = { + 7, kat713_entropyin, kat713_nonce, kat713_persstr, + kat713_addin0, kat713_addin1, kat713_retbits +}; +static const struct drbg_kat kat713 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat713_t +}; + +static const unsigned char kat714_entropyin[] = { + 0x12, 0xbd, 0x36, 0x67, 0x67, 0xea, 0x35, 0x2d, 0x61, 0xf0, 0x59, 0xde, + 0xb3, 0x8c, 0x8a, 0xa4, 0x8e, 0xff, 0x1e, 0xa8, 0x2e, 0xa4, 0xd6, 0x24, + 0xac, 0x4d, 0x0b, 0x9a, 0x85, 0x40, 0x2b, 0xc7, +}; +static const unsigned char kat714_nonce[] = { + 0x1f, 0xc6, 0x06, 0xb0, 0xcb, 0x2b, 0xcd, 0x60, 0x51, 0x90, 0x21, 0x8c, + 0x3a, 0xfe, 0xcf, 0x2c, +}; +static const unsigned char kat714_persstr[] = { + 0x79, 0x55, 0x43, 0x81, 0x96, 0x87, 0x50, 0xff, 0x21, 0xa6, 0x24, 0x9a, + 0xb6, 0x56, 0x1c, 0x13, 0x2c, 0xed, 0x11, 0x17, 0xc8, 0x12, 0xfd, 0xfe, + 0x17, 0x9f, 0x96, 0xd0, 0x96, 0x09, 0xf2, 0x6c, +}; +static const unsigned char kat714_addin0[] = { + 0x11, 0x56, 0xea, 0x54, 0xe2, 0xd4, 0x9a, 0xf0, 0xd9, 0xc3, 0x97, 0x5f, + 0x3e, 0xd8, 0xfe, 0x12, 0xa5, 0x7b, 0xf1, 0xd7, 0x21, 0x5d, 0x7f, 0x7e, + 0xa7, 0xd5, 0xb8, 0x02, 0xdf, 0x53, 0x3e, 0xcb, +}; +static const unsigned char kat714_addin1[] = { + 0x9e, 0x17, 0x1c, 0x51, 0xfa, 0x0d, 0x85, 0xbf, 0x63, 0x7f, 0x44, 0xe5, + 0x00, 0xa2, 0x32, 0x77, 0xd7, 0x54, 0x83, 0x6e, 0xbc, 0x72, 0x76, 0xca, + 0x7f, 0xbe, 0x99, 0x50, 0xc8, 0xf8, 0x00, 0xa1, +}; +static const unsigned char kat714_retbits[] = { + 0xb3, 0xbb, 0x70, 0x0f, 0x1e, 0x81, 0x05, 0x5b, 0x25, 0xb1, 0xb2, 0xd7, + 0x87, 0xdf, 0x3c, 0x5e, 0x8e, 0x68, 0x8d, 0xcb, 0xbb, 0xca, 0x7c, 0x5c, + 0x97, 0x5a, 0xb8, 0xa6, 0xe7, 0x82, 0xd4, 0xac, 0x19, 0x69, 0xaf, 0x4f, + 0x9a, 0x79, 0xf7, 0x5a, 0xd8, 0x8b, 0xcb, 0x82, 0x86, 0xf3, 0x1b, 0x1a, + 0x4a, 0x3a, 0xfb, 0xc3, 0xf5, 0x75, 0xac, 0x61, 0x6b, 0x59, 0xce, 0x62, + 0x63, 0x69, 0x08, 0x74, +}; +static const struct drbg_kat_no_reseed kat714_t = { + 8, kat714_entropyin, kat714_nonce, kat714_persstr, + kat714_addin0, kat714_addin1, kat714_retbits +}; +static const struct drbg_kat kat714 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat714_t +}; + +static const unsigned char kat715_entropyin[] = { + 0x9e, 0x7a, 0x21, 0x01, 0x6a, 0xce, 0xce, 0x94, 0x13, 0xf1, 0x22, 0x46, + 0xe9, 0x6a, 0x33, 0x2a, 0x03, 0x9e, 0x94, 0x07, 0x3f, 0x70, 0x21, 0xec, + 0xcf, 0xdb, 0x2b, 0xb0, 0x56, 0x61, 0x04, 0x89, +}; +static const unsigned char kat715_nonce[] = { + 0x5d, 0x47, 0xa5, 0x9e, 0x42, 0x8b, 0xba, 0x41, 0x66, 0x13, 0x11, 0x0d, + 0xbc, 0x36, 0xf0, 0xd4, +}; +static const unsigned char kat715_persstr[] = { + 0xf6, 0xfd, 0x57, 0x99, 0x46, 0xd0, 0xb6, 0xca, 0x24, 0x13, 0x13, 0x10, + 0x3d, 0x68, 0xcb, 0x91, 0x52, 0x87, 0xaa, 0x57, 0x11, 0x38, 0xc2, 0x70, + 0x2b, 0x3a, 0x17, 0xe4, 0x35, 0x20, 0x34, 0x8b, +}; +static const unsigned char kat715_addin0[] = { + 0xa4, 0x5f, 0xc7, 0x3e, 0x01, 0x51, 0x0f, 0xee, 0x62, 0x40, 0x78, 0x7e, + 0x16, 0x6c, 0x74, 0x36, 0x35, 0xfb, 0x55, 0xd1, 0x27, 0x6c, 0x03, 0x67, + 0x2e, 0x3b, 0x4a, 0xa8, 0x43, 0x4d, 0x8a, 0xf0, +}; +static const unsigned char kat715_addin1[] = { + 0x06, 0xa7, 0xb5, 0x7b, 0x49, 0x7e, 0xe6, 0x6f, 0xfe, 0xcc, 0xa0, 0xa6, + 0x2b, 0xb4, 0x7b, 0x6d, 0x56, 0x3e, 0x69, 0xd8, 0x6a, 0x39, 0xbe, 0x2c, + 0xee, 0x67, 0x33, 0xdb, 0xc9, 0xcf, 0xc5, 0x95, +}; +static const unsigned char kat715_retbits[] = { + 0x7f, 0xae, 0xde, 0x53, 0x72, 0x62, 0xcf, 0xfd, 0xad, 0x9f, 0xce, 0x2b, + 0xe2, 0xb3, 0xb6, 0xee, 0x03, 0x18, 0x52, 0x56, 0x1c, 0x70, 0x88, 0x15, + 0x0f, 0x77, 0x65, 0x80, 0xf5, 0x6f, 0xbf, 0x0b, 0x83, 0xe1, 0x92, 0xdb, + 0xf5, 0x45, 0x5f, 0xfd, 0x8d, 0xf9, 0x51, 0x59, 0x9c, 0x17, 0x58, 0x68, + 0x7e, 0x76, 0xb1, 0xbe, 0xb7, 0x4a, 0x74, 0x7a, 0x7f, 0xb6, 0x51, 0xd0, + 0x52, 0xc4, 0x91, 0x69, +}; +static const struct drbg_kat_no_reseed kat715_t = { + 9, kat715_entropyin, kat715_nonce, kat715_persstr, + kat715_addin0, kat715_addin1, kat715_retbits +}; +static const struct drbg_kat kat715 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat715_t +}; + +static const unsigned char kat716_entropyin[] = { + 0x5f, 0x3d, 0x88, 0x84, 0x87, 0x37, 0x0e, 0x4b, 0x7c, 0xde, 0xc8, 0x83, + 0x37, 0x16, 0x55, 0x23, 0x89, 0x82, 0x90, 0xfa, 0xf6, 0xbf, 0x73, 0xe3, + 0x80, 0x12, 0xd3, 0x55, 0x62, 0x58, 0x79, 0xa5, +}; +static const unsigned char kat716_nonce[] = { + 0xc8, 0xc1, 0x4e, 0x48, 0x18, 0xd8, 0x6a, 0xf2, 0xc8, 0x87, 0x47, 0x24, + 0x75, 0xc7, 0x5f, 0x3b, +}; +static const unsigned char kat716_persstr[] = { + 0xdd, 0x92, 0x51, 0x7b, 0x87, 0x19, 0xfb, 0xe7, 0x0f, 0xea, 0xa8, 0x2e, + 0xb8, 0x5c, 0x7f, 0x11, 0xad, 0xd3, 0x46, 0xe3, 0x52, 0x43, 0xf0, 0x47, + 0xe1, 0x72, 0xfd, 0xc2, 0xc3, 0x7f, 0x25, 0xc4, +}; +static const unsigned char kat716_addin0[] = { + 0x0a, 0x4b, 0xdd, 0x43, 0x1b, 0xbc, 0xb6, 0x50, 0xa5, 0xe6, 0xae, 0xca, + 0xb5, 0x96, 0x49, 0xe4, 0x1b, 0x8c, 0x1a, 0xc5, 0x01, 0x11, 0xd1, 0x2b, + 0xdd, 0x3e, 0x0b, 0x9c, 0xf6, 0x67, 0xd2, 0xff, +}; +static const unsigned char kat716_addin1[] = { + 0xcf, 0xab, 0xd6, 0x2c, 0x4b, 0xd2, 0x30, 0x69, 0x57, 0x39, 0xde, 0x22, + 0x15, 0x17, 0xcf, 0x9e, 0xe0, 0x64, 0x98, 0x7c, 0xe6, 0x3e, 0xd1, 0xd4, + 0xb4, 0xa8, 0x8b, 0x3b, 0x14, 0xff, 0xae, 0xbe, +}; +static const unsigned char kat716_retbits[] = { + 0x89, 0x0c, 0x6b, 0x5c, 0x1e, 0x7b, 0x47, 0x82, 0x26, 0xa2, 0x0f, 0xef, + 0xaa, 0x4c, 0x03, 0xe8, 0x78, 0x53, 0x4d, 0x86, 0xa6, 0x07, 0x5f, 0x99, + 0x11, 0xde, 0x98, 0xa4, 0xe9, 0xac, 0xd6, 0x48, 0xe7, 0x42, 0x98, 0xb3, + 0xe7, 0x49, 0xf6, 0xda, 0xd9, 0x92, 0x59, 0x76, 0xe7, 0xb6, 0x92, 0x06, + 0x12, 0x9e, 0x76, 0x63, 0xe2, 0x9c, 0xaa, 0x3e, 0x3e, 0x92, 0xf7, 0x50, + 0xc7, 0x46, 0x65, 0xfb, +}; +static const struct drbg_kat_no_reseed kat716_t = { + 10, kat716_entropyin, kat716_nonce, kat716_persstr, + kat716_addin0, kat716_addin1, kat716_retbits +}; +static const struct drbg_kat kat716 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat716_t +}; + +static const unsigned char kat717_entropyin[] = { + 0x49, 0xc7, 0xfc, 0x5f, 0xa4, 0x5f, 0x41, 0x65, 0xdc, 0xda, 0xdb, 0x6c, + 0x45, 0xe0, 0x9d, 0x1d, 0x96, 0x5c, 0x52, 0x93, 0x32, 0x98, 0x15, 0x04, + 0xa5, 0xd3, 0xda, 0x21, 0x12, 0x4b, 0x85, 0x65, +}; +static const unsigned char kat717_nonce[] = { + 0x34, 0x67, 0x45, 0xf1, 0x8e, 0x41, 0x66, 0x6a, 0x2e, 0x24, 0x09, 0xac, + 0x7b, 0x36, 0xa2, 0x44, +}; +static const unsigned char kat717_persstr[] = { + 0xd8, 0x9f, 0x11, 0x6d, 0x8c, 0x3b, 0xe3, 0x08, 0x78, 0xea, 0xfe, 0x8f, + 0xab, 0xa4, 0xbf, 0xf3, 0x51, 0x9b, 0x14, 0x4c, 0x08, 0xc0, 0x38, 0xc6, + 0xed, 0x3c, 0xcf, 0xbc, 0x89, 0x00, 0xde, 0x3c, +}; +static const unsigned char kat717_addin0[] = { + 0xaa, 0x45, 0x0c, 0xa2, 0x9e, 0xa6, 0x90, 0xe4, 0x25, 0x8a, 0xf9, 0x3f, + 0x46, 0x2e, 0x08, 0x49, 0xa1, 0xfe, 0x52, 0x0a, 0xea, 0xd9, 0x6c, 0x54, + 0x88, 0xa2, 0xf6, 0x9c, 0xca, 0xd7, 0x33, 0xca, +}; +static const unsigned char kat717_addin1[] = { + 0xde, 0x18, 0x86, 0x4a, 0x44, 0xc5, 0xfa, 0x8e, 0xeb, 0x11, 0x16, 0x69, + 0x6a, 0xa9, 0xc7, 0x5d, 0x57, 0xcc, 0x8c, 0xe0, 0x7b, 0x76, 0x93, 0xba, + 0xbb, 0x22, 0xf3, 0xf8, 0x83, 0x14, 0xf2, 0x2f, +}; +static const unsigned char kat717_retbits[] = { + 0xcd, 0x18, 0x78, 0xca, 0x2e, 0x9b, 0x29, 0x34, 0x89, 0x94, 0x64, 0x8b, + 0x95, 0x78, 0x92, 0x33, 0x32, 0xa6, 0x2f, 0xdc, 0xc8, 0x0c, 0x7d, 0x8e, + 0x20, 0x28, 0x15, 0xf9, 0xf4, 0x8d, 0x2a, 0x75, 0xae, 0xc7, 0x8e, 0x70, + 0x94, 0x20, 0x17, 0xd8, 0xa0, 0xb5, 0x34, 0xde, 0x1f, 0x8f, 0xfe, 0x5d, + 0xb5, 0x02, 0xac, 0xb3, 0xab, 0xd4, 0x73, 0x83, 0x77, 0xd9, 0x8d, 0x26, + 0xb1, 0x63, 0xe6, 0x07, +}; +static const struct drbg_kat_no_reseed kat717_t = { + 11, kat717_entropyin, kat717_nonce, kat717_persstr, + kat717_addin0, kat717_addin1, kat717_retbits +}; +static const struct drbg_kat kat717 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat717_t +}; + +static const unsigned char kat718_entropyin[] = { + 0xc9, 0x4d, 0x90, 0x7a, 0x28, 0x64, 0x0e, 0xff, 0x37, 0x74, 0x56, 0xef, + 0xba, 0xee, 0x67, 0xfe, 0x52, 0x16, 0xcf, 0x97, 0xd1, 0xad, 0xf7, 0xdf, + 0x4d, 0xb6, 0xe1, 0x8b, 0x59, 0x6e, 0x7b, 0xe0, +}; +static const unsigned char kat718_nonce[] = { + 0x57, 0x3c, 0xe3, 0xb9, 0xd4, 0xfd, 0x83, 0x0a, 0xfb, 0x99, 0xda, 0x3b, + 0xae, 0x14, 0xcc, 0x18, +}; +static const unsigned char kat718_persstr[] = { + 0x68, 0xcb, 0x89, 0xdf, 0x07, 0x3d, 0x0e, 0x79, 0x36, 0x77, 0x43, 0xaf, + 0x1c, 0x14, 0x70, 0xaa, 0x65, 0x7d, 0xd6, 0x79, 0x24, 0xd9, 0x64, 0xee, + 0x80, 0xbe, 0x72, 0xd9, 0x91, 0x98, 0xe4, 0xd9, +}; +static const unsigned char kat718_addin0[] = { + 0xe4, 0xc5, 0xa3, 0x39, 0xdb, 0xfa, 0xd8, 0x03, 0x6a, 0x3b, 0x05, 0x75, + 0xbd, 0xfa, 0x3c, 0x7d, 0x2f, 0x55, 0xab, 0x64, 0x2f, 0xc8, 0xce, 0xdd, + 0xa1, 0x2d, 0x90, 0x0d, 0x8f, 0x0f, 0x74, 0x49, +}; +static const unsigned char kat718_addin1[] = { + 0x86, 0x05, 0xc7, 0x13, 0xcd, 0x3b, 0x0e, 0xb8, 0x3d, 0xcc, 0xdc, 0x42, + 0x27, 0x8c, 0x0e, 0x40, 0x2c, 0xfb, 0x83, 0xba, 0x5a, 0x5a, 0xd8, 0x86, + 0x4d, 0xa6, 0x62, 0x2b, 0x2a, 0x72, 0x58, 0x34, +}; +static const unsigned char kat718_retbits[] = { + 0x14, 0x57, 0xa5, 0xd3, 0x63, 0xd5, 0x7f, 0xa3, 0x6c, 0x01, 0x00, 0x6f, + 0x1e, 0x95, 0x0f, 0x14, 0x40, 0x9a, 0xba, 0x72, 0xa1, 0x43, 0xb1, 0x84, + 0x70, 0xc4, 0x6a, 0xd1, 0xc2, 0xe3, 0x19, 0xb6, 0x4e, 0xa5, 0x88, 0xd6, + 0x83, 0xfc, 0x8a, 0xf7, 0x44, 0x23, 0x74, 0x22, 0x7b, 0x8f, 0x42, 0x4c, + 0x4f, 0x03, 0x0b, 0x56, 0x15, 0x91, 0x54, 0x65, 0xea, 0xe7, 0xfa, 0xa0, + 0x6a, 0xb9, 0xd2, 0x96, +}; +static const struct drbg_kat_no_reseed kat718_t = { + 12, kat718_entropyin, kat718_nonce, kat718_persstr, + kat718_addin0, kat718_addin1, kat718_retbits +}; +static const struct drbg_kat kat718 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat718_t +}; + +static const unsigned char kat719_entropyin[] = { + 0xd8, 0xc2, 0x8c, 0x04, 0xa7, 0x4e, 0xdd, 0xdb, 0xfe, 0xcb, 0x4b, 0x1a, + 0x23, 0x20, 0x79, 0x3d, 0x9e, 0x22, 0x82, 0x04, 0x68, 0x6c, 0x97, 0x3c, + 0xd0, 0x1c, 0x95, 0xbe, 0x37, 0x29, 0x7a, 0x57, +}; +static const unsigned char kat719_nonce[] = { + 0x12, 0x1d, 0x67, 0x3e, 0xc1, 0xd9, 0x62, 0x41, 0x33, 0xe4, 0x2e, 0x2f, + 0xa7, 0xc7, 0xa7, 0x51, +}; +static const unsigned char kat719_persstr[] = { + 0x33, 0x97, 0x80, 0xb0, 0x25, 0x37, 0x0e, 0x43, 0x9b, 0x7c, 0x92, 0x70, + 0x3b, 0x66, 0xeb, 0xd5, 0x90, 0x4e, 0xad, 0x35, 0xe2, 0x64, 0x0a, 0x85, + 0x96, 0x5a, 0xa0, 0xc4, 0x60, 0x8c, 0x5a, 0x09, +}; +static const unsigned char kat719_addin0[] = { + 0x9a, 0xe1, 0x74, 0x55, 0xaf, 0x94, 0xa8, 0xd9, 0xeb, 0x2d, 0x0c, 0x52, + 0x6d, 0x2e, 0x70, 0xbb, 0x97, 0xde, 0xe5, 0x05, 0xed, 0x5a, 0x9a, 0xa9, + 0x33, 0x33, 0xc0, 0x79, 0x68, 0xdf, 0xa1, 0xac, +}; +static const unsigned char kat719_addin1[] = { + 0xd5, 0xfa, 0x73, 0x55, 0xfd, 0x2f, 0x14, 0x4f, 0x3f, 0xeb, 0x64, 0x2b, + 0xee, 0xc1, 0xfb, 0x49, 0x40, 0xe5, 0xd2, 0xd1, 0xda, 0x0d, 0xbf, 0xa1, + 0xe5, 0xf5, 0x9a, 0x08, 0x60, 0xfa, 0xca, 0x6a, +}; +static const unsigned char kat719_retbits[] = { + 0x96, 0xcb, 0x4a, 0xda, 0xcb, 0x8b, 0xb1, 0xca, 0xf1, 0xcb, 0x1e, 0x09, + 0xb4, 0x21, 0xcb, 0x52, 0xb1, 0x14, 0xcf, 0x6b, 0xc4, 0xb9, 0x4e, 0x3d, + 0xe2, 0x1f, 0x14, 0x0b, 0xf5, 0xda, 0xc2, 0xbf, 0x10, 0x39, 0x94, 0xb8, + 0x59, 0xe2, 0x0e, 0x38, 0x43, 0x1d, 0x7a, 0x91, 0x2f, 0xa9, 0x86, 0xb2, + 0x88, 0x98, 0x41, 0x24, 0x1c, 0x8e, 0xc9, 0x42, 0x29, 0x8a, 0x89, 0xfd, + 0x68, 0x30, 0x69, 0x5a, +}; +static const struct drbg_kat_no_reseed kat719_t = { + 13, kat719_entropyin, kat719_nonce, kat719_persstr, + kat719_addin0, kat719_addin1, kat719_retbits +}; +static const struct drbg_kat kat719 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat719_t +}; + +static const unsigned char kat720_entropyin[] = { + 0x5f, 0xc1, 0xa4, 0x6b, 0x9b, 0x53, 0xe8, 0x3a, 0xdd, 0xd6, 0x16, 0x51, + 0x79, 0x32, 0xad, 0x8a, 0x84, 0xe5, 0x50, 0xa5, 0x83, 0x27, 0xee, 0x24, + 0x5a, 0xef, 0x20, 0x82, 0x64, 0xc5, 0xb9, 0x1c, +}; +static const unsigned char kat720_nonce[] = { + 0x9c, 0xe7, 0x4e, 0x2b, 0x3c, 0x43, 0xba, 0x1d, 0x98, 0xf7, 0xd4, 0xe8, + 0xeb, 0x5c, 0x9b, 0x3e, +}; +static const unsigned char kat720_persstr[] = { + 0x5f, 0xe0, 0x1c, 0x84, 0xf8, 0x24, 0xc1, 0x7e, 0x4d, 0xfb, 0xfd, 0xb7, + 0x5c, 0x32, 0x12, 0xcb, 0x2b, 0xfd, 0xf2, 0xda, 0x7c, 0x49, 0x7f, 0xeb, + 0xc0, 0x96, 0x74, 0x75, 0xeb, 0xe2, 0x91, 0xf7, +}; +static const unsigned char kat720_addin0[] = { + 0x84, 0x92, 0x2c, 0x03, 0x35, 0xa0, 0xea, 0xd6, 0x09, 0xe5, 0xa9, 0x2c, + 0xfc, 0x4a, 0x22, 0x5b, 0xd3, 0xc7, 0xc0, 0x1a, 0xb4, 0x58, 0x0b, 0x78, + 0x63, 0x38, 0xe1, 0xca, 0xa3, 0x62, 0x2f, 0x44, +}; +static const unsigned char kat720_addin1[] = { + 0x34, 0xb0, 0x34, 0xca, 0x64, 0x3b, 0xbf, 0xd2, 0xfc, 0xc5, 0x7c, 0x9b, + 0x53, 0xe0, 0xf9, 0xb3, 0xfd, 0x6a, 0x73, 0x45, 0x4f, 0x18, 0x23, 0xdf, + 0xe7, 0xb7, 0x07, 0x6e, 0xc7, 0x3f, 0xd9, 0x56, +}; +static const unsigned char kat720_retbits[] = { + 0x6c, 0xaa, 0x44, 0x75, 0x18, 0x9e, 0xe0, 0x0d, 0xdc, 0x54, 0x91, 0x0f, + 0x87, 0x23, 0xb0, 0xe5, 0xb8, 0xd3, 0xd0, 0xc3, 0x21, 0xce, 0x7f, 0x2a, + 0xc7, 0x19, 0x4d, 0x13, 0x4a, 0x0a, 0x31, 0xd9, 0x6b, 0x10, 0x2d, 0xd5, + 0x8e, 0x09, 0x2e, 0x08, 0xf8, 0xa0, 0x08, 0xf0, 0x5c, 0x4f, 0x2a, 0xfb, + 0x29, 0x01, 0xc6, 0xe2, 0x95, 0x49, 0xd3, 0xa7, 0x20, 0xaa, 0x2b, 0x1d, + 0x1f, 0x46, 0x1b, 0xb9, +}; +static const struct drbg_kat_no_reseed kat720_t = { + 14, kat720_entropyin, kat720_nonce, kat720_persstr, + kat720_addin0, kat720_addin1, kat720_retbits +}; +static const struct drbg_kat kat720 = { + NO_RESEED, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat720_t +}; + +static const unsigned char kat721_entropyin[] = { + 0xce, 0x50, 0xf3, 0x3d, 0xa5, 0xd4, 0xc1, 0xd3, 0xd4, 0x00, 0x4e, 0xb3, + 0x52, 0x44, 0xb7, 0xf2, 0xcd, 0x7f, 0x2e, 0x50, 0x76, 0xfb, 0xf6, 0x78, + 0x0a, 0x7f, 0xf6, 0x34, 0xb2, 0x49, 0xa5, 0xfc, +}; +static const unsigned char kat721_nonce[] = {0}; +static const unsigned char kat721_persstr[] = {0}; +static const unsigned char kat721_addin0[] = {0}; +static const unsigned char kat721_addin1[] = {0}; +static const unsigned char kat721_retbits[] = { + 0x65, 0x45, 0xc0, 0x52, 0x9d, 0x37, 0x24, 0x43, 0xb3, 0x92, 0xce, 0xb3, + 0xae, 0x3a, 0x99, 0xa3, 0x0f, 0x96, 0x3e, 0xaf, 0x31, 0x32, 0x80, 0xf1, + 0xd1, 0xa1, 0xe8, 0x7f, 0x9d, 0xb3, 0x73, 0xd3, 0x61, 0xe7, 0x5d, 0x18, + 0x01, 0x82, 0x66, 0x49, 0x9c, 0xcc, 0xd6, 0x4d, 0x9b, 0xbb, 0x8d, 0xe0, + 0x18, 0x5f, 0x21, 0x33, 0x83, 0x08, 0x0f, 0xad, 0xde, 0xc4, 0x6b, 0xae, + 0x1f, 0x78, 0x4e, 0x5a, +}; +static const struct drbg_kat_no_reseed kat721_t = { + 0, kat721_entropyin, kat721_nonce, kat721_persstr, + kat721_addin0, kat721_addin1, kat721_retbits +}; +static const struct drbg_kat kat721 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat721_t +}; + +static const unsigned char kat722_entropyin[] = { + 0xa3, 0x85, 0xf7, 0x0a, 0x4d, 0x45, 0x03, 0x21, 0xdf, 0xd1, 0x8d, 0x83, + 0x79, 0xef, 0x8e, 0x77, 0x36, 0xfe, 0xe5, 0xfb, 0xf0, 0xa0, 0xae, 0xa5, + 0x3b, 0x76, 0x69, 0x60, 0x94, 0xe8, 0xaa, 0x93, +}; +static const unsigned char kat722_nonce[] = {0}; +static const unsigned char kat722_persstr[] = {0}; +static const unsigned char kat722_addin0[] = {0}; +static const unsigned char kat722_addin1[] = {0}; +static const unsigned char kat722_retbits[] = { + 0x1a, 0x06, 0x25, 0x53, 0xab, 0x60, 0x45, 0x7e, 0xd1, 0xf1, 0xc5, 0x2f, + 0x5a, 0xca, 0x5a, 0x3b, 0xe5, 0x64, 0xa2, 0x75, 0x45, 0x35, 0x8c, 0x11, + 0x2e, 0xd9, 0x2c, 0x6e, 0xae, 0x2c, 0xb7, 0x59, 0x7c, 0xfc, 0xc2, 0xe0, + 0xa5, 0xdd, 0x81, 0xc5, 0xbf, 0xec, 0xc9, 0x41, 0xda, 0x5e, 0x81, 0x52, + 0xa9, 0x01, 0x0d, 0x48, 0x45, 0x17, 0x07, 0x34, 0x67, 0x6c, 0x8c, 0x1b, + 0x6b, 0x30, 0x73, 0xa5, +}; +static const struct drbg_kat_no_reseed kat722_t = { + 1, kat722_entropyin, kat722_nonce, kat722_persstr, + kat722_addin0, kat722_addin1, kat722_retbits +}; +static const struct drbg_kat kat722 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat722_t +}; + +static const unsigned char kat723_entropyin[] = { + 0xd4, 0xf4, 0x7c, 0x38, 0x5e, 0x5e, 0xe3, 0x69, 0x15, 0x97, 0x83, 0x86, + 0xa0, 0x74, 0xd4, 0x13, 0xd0, 0x4a, 0x1c, 0xe3, 0xa1, 0x3a, 0x0f, 0xe2, + 0xb1, 0x7f, 0x3f, 0x20, 0xf8, 0x3a, 0x93, 0xfd, +}; +static const unsigned char kat723_nonce[] = {0}; +static const unsigned char kat723_persstr[] = {0}; +static const unsigned char kat723_addin0[] = {0}; +static const unsigned char kat723_addin1[] = {0}; +static const unsigned char kat723_retbits[] = { + 0x27, 0xf8, 0x80, 0xdf, 0x4c, 0x29, 0x07, 0x69, 0x7f, 0xb2, 0xf5, 0x94, + 0xe3, 0x11, 0x55, 0x9c, 0xea, 0x82, 0x70, 0x49, 0x32, 0x7a, 0xf3, 0x1f, + 0xa7, 0xf0, 0xcb, 0xf3, 0x32, 0xc4, 0x62, 0x06, 0x74, 0xf5, 0x03, 0xd7, + 0xdc, 0x37, 0x83, 0x20, 0xd2, 0x28, 0x90, 0x71, 0x51, 0xd3, 0x2e, 0xe5, + 0xe3, 0xf5, 0xc5, 0xec, 0xcb, 0x13, 0xaf, 0xe5, 0x8b, 0xf6, 0xa6, 0x01, + 0x92, 0xe6, 0xd7, 0x0e, +}; +static const struct drbg_kat_no_reseed kat723_t = { + 2, kat723_entropyin, kat723_nonce, kat723_persstr, + kat723_addin0, kat723_addin1, kat723_retbits +}; +static const struct drbg_kat kat723 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat723_t +}; + +static const unsigned char kat724_entropyin[] = { + 0x12, 0x3d, 0xd8, 0x2c, 0x6a, 0x8d, 0x6a, 0x5f, 0x23, 0x06, 0x77, 0x02, + 0xe8, 0x22, 0x27, 0x33, 0xa3, 0x9c, 0x48, 0x96, 0x5b, 0xac, 0xcd, 0x9b, + 0xff, 0xed, 0x5d, 0xc5, 0x1c, 0xb7, 0x89, 0xb6, +}; +static const unsigned char kat724_nonce[] = {0}; +static const unsigned char kat724_persstr[] = {0}; +static const unsigned char kat724_addin0[] = {0}; +static const unsigned char kat724_addin1[] = {0}; +static const unsigned char kat724_retbits[] = { + 0x12, 0xdd, 0x6a, 0x87, 0x4a, 0x46, 0x56, 0xc7, 0xd5, 0xa2, 0x1c, 0xb1, + 0x17, 0x9b, 0x3c, 0x4a, 0x99, 0x82, 0xae, 0x00, 0xfc, 0x1b, 0xf2, 0x6c, + 0xb3, 0xa1, 0x39, 0xcb, 0x21, 0xc4, 0x50, 0x50, 0x45, 0xff, 0x5e, 0x22, + 0x3e, 0x2d, 0x08, 0x1f, 0xee, 0x52, 0xb2, 0x22, 0x46, 0xd4, 0x85, 0xb9, + 0xf1, 0x27, 0x4a, 0xef, 0x79, 0xa3, 0x30, 0x1d, 0x26, 0x36, 0x99, 0x97, + 0x99, 0xaa, 0xd3, 0x1d, +}; +static const struct drbg_kat_no_reseed kat724_t = { + 3, kat724_entropyin, kat724_nonce, kat724_persstr, + kat724_addin0, kat724_addin1, kat724_retbits +}; +static const struct drbg_kat kat724 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat724_t +}; + +static const unsigned char kat725_entropyin[] = { + 0xf1, 0xa6, 0x9a, 0xf8, 0x90, 0xb2, 0xc9, 0x79, 0xfa, 0xe0, 0x46, 0xa2, + 0xb5, 0x8d, 0x00, 0xa8, 0x33, 0x1c, 0x53, 0x22, 0x47, 0x2b, 0x0e, 0x61, + 0x9b, 0xb3, 0x72, 0xbf, 0xd0, 0x27, 0xf7, 0x05, +}; +static const unsigned char kat725_nonce[] = {0}; +static const unsigned char kat725_persstr[] = {0}; +static const unsigned char kat725_addin0[] = {0}; +static const unsigned char kat725_addin1[] = {0}; +static const unsigned char kat725_retbits[] = { + 0x96, 0x09, 0x12, 0x58, 0xc4, 0x22, 0x4e, 0x3b, 0x03, 0xd6, 0x5c, 0x93, + 0x8c, 0x97, 0x83, 0x2b, 0x55, 0x14, 0x30, 0x69, 0xdb, 0x57, 0x55, 0x19, + 0x6d, 0x52, 0xf5, 0x25, 0xbe, 0x95, 0x9d, 0x51, 0x9b, 0x1e, 0x02, 0xe5, + 0xf2, 0xda, 0xbf, 0x4d, 0xd2, 0x16, 0x4f, 0x9b, 0xb0, 0x6a, 0x16, 0xa6, + 0x35, 0x76, 0xff, 0x6d, 0xeb, 0x04, 0x2d, 0xab, 0x74, 0x03, 0x39, 0x16, + 0xc9, 0x54, 0x98, 0xc1, +}; +static const struct drbg_kat_no_reseed kat725_t = { + 4, kat725_entropyin, kat725_nonce, kat725_persstr, + kat725_addin0, kat725_addin1, kat725_retbits +}; +static const struct drbg_kat kat725 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat725_t +}; + +static const unsigned char kat726_entropyin[] = { + 0x14, 0xa9, 0xa1, 0xe2, 0x0c, 0xa3, 0x68, 0x6f, 0x3e, 0xc0, 0x96, 0x03, + 0xf6, 0x73, 0x0b, 0xdd, 0x73, 0xa9, 0xcc, 0x8c, 0x32, 0x38, 0x8e, 0xc0, + 0x0b, 0xc2, 0x8e, 0x6c, 0x9e, 0xc6, 0x5d, 0x87, +}; +static const unsigned char kat726_nonce[] = {0}; +static const unsigned char kat726_persstr[] = {0}; +static const unsigned char kat726_addin0[] = {0}; +static const unsigned char kat726_addin1[] = {0}; +static const unsigned char kat726_retbits[] = { + 0xc1, 0x29, 0x46, 0x45, 0x7a, 0xd8, 0x9d, 0xde, 0x78, 0x8e, 0x13, 0xc5, + 0x09, 0x2b, 0xbf, 0x3e, 0x9c, 0x7f, 0x61, 0xea, 0xc7, 0x32, 0x61, 0xd0, + 0x1d, 0x39, 0x6a, 0x1d, 0x9d, 0x11, 0x63, 0xee, 0xe8, 0x47, 0xa5, 0x61, + 0xd8, 0xe5, 0x20, 0x80, 0xcd, 0x9b, 0xdc, 0xe5, 0x70, 0x14, 0x17, 0x82, + 0xeb, 0xf1, 0x67, 0xc4, 0x70, 0x0a, 0x66, 0xac, 0xa6, 0xfd, 0x5c, 0x91, + 0x16, 0xa7, 0xbe, 0x49, +}; +static const struct drbg_kat_no_reseed kat726_t = { + 5, kat726_entropyin, kat726_nonce, kat726_persstr, + kat726_addin0, kat726_addin1, kat726_retbits +}; +static const struct drbg_kat kat726 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat726_t +}; + +static const unsigned char kat727_entropyin[] = { + 0x97, 0x26, 0x1a, 0x2c, 0x19, 0xc6, 0xdc, 0x36, 0xa6, 0xd0, 0x28, 0x3a, + 0x17, 0x7e, 0xb9, 0x66, 0x6c, 0x21, 0x81, 0x7f, 0xc0, 0xfc, 0xa4, 0x62, + 0xc5, 0x3d, 0x90, 0xb3, 0xd8, 0x14, 0xcd, 0x92, +}; +static const unsigned char kat727_nonce[] = {0}; +static const unsigned char kat727_persstr[] = {0}; +static const unsigned char kat727_addin0[] = {0}; +static const unsigned char kat727_addin1[] = {0}; +static const unsigned char kat727_retbits[] = { + 0xb4, 0x74, 0xf2, 0x74, 0x3b, 0x61, 0x82, 0xb0, 0x51, 0xfc, 0x7c, 0x76, + 0xc6, 0xb4, 0x08, 0x5b, 0x2f, 0x59, 0x76, 0x39, 0xca, 0x19, 0xc1, 0xee, + 0xe0, 0x5c, 0x1c, 0xf4, 0x39, 0xbb, 0x8e, 0xdb, 0xe0, 0x93, 0xd0, 0xb2, + 0x23, 0x9d, 0xe5, 0xd0, 0xf7, 0x9b, 0xeb, 0xf0, 0xe6, 0x22, 0xfe, 0x04, + 0xb5, 0x13, 0x59, 0x7e, 0xd1, 0xd8, 0xa0, 0x28, 0x21, 0xa0, 0xbc, 0xa4, + 0x35, 0xd1, 0xfb, 0xde, +}; +static const struct drbg_kat_no_reseed kat727_t = { + 6, kat727_entropyin, kat727_nonce, kat727_persstr, + kat727_addin0, kat727_addin1, kat727_retbits +}; +static const struct drbg_kat kat727 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat727_t +}; + +static const unsigned char kat728_entropyin[] = { + 0x9f, 0xdd, 0xe0, 0xf7, 0xeb, 0xa6, 0x53, 0x81, 0xbf, 0x63, 0x7d, 0x7b, + 0x7e, 0x6f, 0xbc, 0x20, 0xde, 0xef, 0x90, 0x60, 0x13, 0x01, 0x86, 0x55, + 0xf8, 0xd1, 0x2d, 0x74, 0x7d, 0xb8, 0xe2, 0x25, +}; +static const unsigned char kat728_nonce[] = {0}; +static const unsigned char kat728_persstr[] = {0}; +static const unsigned char kat728_addin0[] = {0}; +static const unsigned char kat728_addin1[] = {0}; +static const unsigned char kat728_retbits[] = { + 0xf4, 0xa5, 0x5a, 0xa4, 0xc2, 0x45, 0xcd, 0x42, 0xa1, 0xb6, 0x42, 0x96, + 0x37, 0xb0, 0x77, 0x41, 0x89, 0xef, 0x4e, 0x50, 0x53, 0xbe, 0xf0, 0x6b, + 0xbf, 0x42, 0x2b, 0x2f, 0x10, 0x39, 0x9e, 0x18, 0xb9, 0xf8, 0x6d, 0xcc, + 0x56, 0xaa, 0xa6, 0x97, 0x5e, 0xa1, 0x56, 0x22, 0xcd, 0xeb, 0xf3, 0x6a, + 0x3f, 0x47, 0x78, 0x44, 0x7b, 0xb2, 0x3a, 0x20, 0x44, 0xc2, 0x83, 0xa7, + 0x99, 0x03, 0xbe, 0xac, +}; +static const struct drbg_kat_no_reseed kat728_t = { + 7, kat728_entropyin, kat728_nonce, kat728_persstr, + kat728_addin0, kat728_addin1, kat728_retbits +}; +static const struct drbg_kat kat728 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat728_t +}; + +static const unsigned char kat729_entropyin[] = { + 0xaf, 0x62, 0x29, 0x9f, 0x37, 0x89, 0x53, 0x32, 0xd2, 0x83, 0xff, 0x9f, + 0x3b, 0x0c, 0xa2, 0x9f, 0x90, 0x03, 0x57, 0x18, 0x93, 0xdd, 0xd1, 0xbc, + 0x2d, 0x28, 0x63, 0x3a, 0x33, 0x99, 0x2b, 0x4a, +}; +static const unsigned char kat729_nonce[] = {0}; +static const unsigned char kat729_persstr[] = {0}; +static const unsigned char kat729_addin0[] = {0}; +static const unsigned char kat729_addin1[] = {0}; +static const unsigned char kat729_retbits[] = { + 0xb9, 0x17, 0x19, 0xf2, 0xd1, 0x29, 0x7f, 0xa9, 0xc5, 0x17, 0x20, 0xab, + 0x94, 0x48, 0x22, 0x8e, 0x33, 0x35, 0x94, 0xa7, 0xa1, 0xc0, 0xa5, 0xd7, + 0xa1, 0x0a, 0xe8, 0x82, 0x49, 0xdc, 0x0c, 0xc5, 0xd0, 0x7a, 0xbe, 0x20, + 0xb7, 0x91, 0x5d, 0x2a, 0x87, 0xf1, 0x2e, 0xc4, 0xbc, 0xdf, 0x44, 0xef, + 0xa9, 0x11, 0xf2, 0x8c, 0x5e, 0x9e, 0x39, 0x09, 0x01, 0x8e, 0x4a, 0x6b, + 0xd1, 0xb5, 0x36, 0x3b, +}; +static const struct drbg_kat_no_reseed kat729_t = { + 8, kat729_entropyin, kat729_nonce, kat729_persstr, + kat729_addin0, kat729_addin1, kat729_retbits +}; +static const struct drbg_kat kat729 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat729_t +}; + +static const unsigned char kat730_entropyin[] = { + 0x42, 0xfe, 0x0a, 0xd0, 0x88, 0xd5, 0xc1, 0xd6, 0xbe, 0x9e, 0x02, 0xc1, + 0x47, 0xd5, 0x77, 0x0c, 0x9a, 0xa0, 0xa9, 0x77, 0xc6, 0x30, 0x0c, 0xd9, + 0xae, 0xc9, 0x40, 0xcd, 0x15, 0xec, 0xfb, 0x8d, +}; +static const unsigned char kat730_nonce[] = {0}; +static const unsigned char kat730_persstr[] = {0}; +static const unsigned char kat730_addin0[] = {0}; +static const unsigned char kat730_addin1[] = {0}; +static const unsigned char kat730_retbits[] = { + 0xbd, 0x1a, 0x65, 0xbb, 0x65, 0xb5, 0x5e, 0xc4, 0xd6, 0x27, 0x9c, 0xb9, + 0x4d, 0xbf, 0x3b, 0xcd, 0x82, 0xbc, 0xe0, 0x9f, 0xa2, 0x77, 0xbf, 0xea, + 0x50, 0xb5, 0xda, 0xb6, 0x4b, 0x06, 0xc0, 0x18, 0x15, 0x70, 0x03, 0x2a, + 0x3a, 0x6f, 0x7d, 0xee, 0x5b, 0x2c, 0xce, 0xa3, 0x4b, 0xc6, 0x92, 0x8d, + 0xb1, 0x1d, 0xec, 0x93, 0x29, 0xed, 0x90, 0xd1, 0x09, 0xc0, 0xbc, 0xca, + 0x7c, 0xe7, 0xa4, 0x28, +}; +static const struct drbg_kat_no_reseed kat730_t = { + 9, kat730_entropyin, kat730_nonce, kat730_persstr, + kat730_addin0, kat730_addin1, kat730_retbits +}; +static const struct drbg_kat kat730 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat730_t +}; + +static const unsigned char kat731_entropyin[] = { + 0x74, 0x4e, 0xd7, 0x4d, 0x83, 0xba, 0xcf, 0x92, 0xd4, 0xbd, 0x4d, 0xd0, + 0x52, 0x45, 0x8b, 0xd8, 0xaf, 0x10, 0x39, 0x1c, 0x66, 0xfc, 0x89, 0xe1, + 0x39, 0x74, 0x42, 0x63, 0x20, 0xaa, 0x47, 0x4a, +}; +static const unsigned char kat731_nonce[] = {0}; +static const unsigned char kat731_persstr[] = {0}; +static const unsigned char kat731_addin0[] = {0}; +static const unsigned char kat731_addin1[] = {0}; +static const unsigned char kat731_retbits[] = { + 0x8d, 0xdd, 0x02, 0x70, 0xb0, 0x7f, 0xbb, 0xd3, 0x39, 0xbc, 0x83, 0xea, + 0x7a, 0x1d, 0x98, 0x6e, 0xe8, 0xe1, 0xa0, 0x61, 0xc7, 0xe3, 0x1c, 0x5d, + 0xbd, 0xcc, 0xab, 0xc8, 0xf2, 0x52, 0x27, 0x83, 0x2e, 0xc4, 0x5f, 0x5e, + 0xf9, 0xf2, 0x8c, 0xa0, 0x44, 0x6d, 0x84, 0x4d, 0xaa, 0xdd, 0x19, 0x20, + 0x24, 0xc4, 0xd3, 0x68, 0x54, 0xfa, 0x23, 0xb5, 0x8a, 0x8b, 0x97, 0x94, + 0xdb, 0x6d, 0x3a, 0xcb, +}; +static const struct drbg_kat_no_reseed kat731_t = { + 10, kat731_entropyin, kat731_nonce, kat731_persstr, + kat731_addin0, kat731_addin1, kat731_retbits +}; +static const struct drbg_kat kat731 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat731_t +}; + +static const unsigned char kat732_entropyin[] = { + 0x88, 0x4e, 0x9f, 0xaa, 0x66, 0x1d, 0xce, 0xcc, 0x37, 0x65, 0xc7, 0x97, + 0xa2, 0xaf, 0x89, 0x06, 0xfb, 0x89, 0x38, 0x13, 0xa3, 0x96, 0xe0, 0x2b, + 0x94, 0x99, 0x38, 0x26, 0x28, 0x8d, 0x2a, 0x6d, +}; +static const unsigned char kat732_nonce[] = {0}; +static const unsigned char kat732_persstr[] = {0}; +static const unsigned char kat732_addin0[] = {0}; +static const unsigned char kat732_addin1[] = {0}; +static const unsigned char kat732_retbits[] = { + 0x18, 0x48, 0x1d, 0xc4, 0x5c, 0xa3, 0xf1, 0x89, 0x6f, 0xe6, 0x39, 0x4a, + 0x23, 0x67, 0xd4, 0x4c, 0x4e, 0x45, 0x8b, 0x45, 0x5c, 0x9f, 0x36, 0xa5, + 0xd5, 0xac, 0x2b, 0x6a, 0x74, 0x75, 0xcf, 0x75, 0x99, 0xa9, 0x37, 0x8f, + 0x9c, 0xc7, 0x2f, 0xfc, 0xdb, 0xea, 0x71, 0xf0, 0x9c, 0x9a, 0x24, 0x4a, + 0x36, 0xcd, 0x66, 0x0b, 0x72, 0x25, 0x46, 0xea, 0x2a, 0xf4, 0xf3, 0xe7, + 0x75, 0x96, 0xec, 0x25, +}; +static const struct drbg_kat_no_reseed kat732_t = { + 11, kat732_entropyin, kat732_nonce, kat732_persstr, + kat732_addin0, kat732_addin1, kat732_retbits +}; +static const struct drbg_kat kat732 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat732_t +}; + +static const unsigned char kat733_entropyin[] = { + 0x31, 0xd1, 0x08, 0xfe, 0x0d, 0x40, 0xfe, 0x05, 0xc9, 0xed, 0x83, 0x72, + 0xc3, 0xbc, 0x09, 0xd1, 0x05, 0x8b, 0x39, 0x7b, 0x90, 0x06, 0xfb, 0x37, + 0x3c, 0xdd, 0x16, 0xa5, 0xa4, 0x0e, 0x2c, 0xc1, +}; +static const unsigned char kat733_nonce[] = {0}; +static const unsigned char kat733_persstr[] = {0}; +static const unsigned char kat733_addin0[] = {0}; +static const unsigned char kat733_addin1[] = {0}; +static const unsigned char kat733_retbits[] = { + 0x80, 0x82, 0x24, 0x50, 0xb0, 0x48, 0x7e, 0x70, 0xad, 0xa9, 0x48, 0xda, + 0x0b, 0x25, 0xcc, 0x49, 0xa3, 0x7d, 0xc5, 0x8e, 0x0d, 0xad, 0x92, 0x33, + 0xba, 0xdd, 0x0e, 0x88, 0xdf, 0x52, 0x0d, 0x36, 0x54, 0x30, 0x0f, 0x08, + 0x1b, 0x02, 0xe8, 0x54, 0x5d, 0x6d, 0x68, 0x18, 0xb8, 0x2e, 0x45, 0x96, + 0x4d, 0xb8, 0x63, 0x3f, 0xc7, 0x69, 0xaf, 0x84, 0xa9, 0x79, 0x9e, 0x92, + 0xa1, 0xbb, 0x0d, 0x61, +}; +static const struct drbg_kat_no_reseed kat733_t = { + 12, kat733_entropyin, kat733_nonce, kat733_persstr, + kat733_addin0, kat733_addin1, kat733_retbits +}; +static const struct drbg_kat kat733 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat733_t +}; + +static const unsigned char kat734_entropyin[] = { + 0xd5, 0x46, 0x4a, 0x18, 0xaa, 0xb8, 0x87, 0x3d, 0x63, 0xf5, 0x72, 0xf6, + 0x73, 0x8e, 0xf2, 0x7a, 0x39, 0x84, 0x5a, 0x31, 0xa2, 0x11, 0x70, 0x03, + 0x10, 0x32, 0x1e, 0x42, 0xb6, 0x62, 0x0b, 0x4a, +}; +static const unsigned char kat734_nonce[] = {0}; +static const unsigned char kat734_persstr[] = {0}; +static const unsigned char kat734_addin0[] = {0}; +static const unsigned char kat734_addin1[] = {0}; +static const unsigned char kat734_retbits[] = { + 0xe2, 0xb5, 0x31, 0xea, 0x43, 0xc5, 0x13, 0xa1, 0x56, 0x4f, 0xa6, 0x5e, + 0x9a, 0x68, 0xd4, 0x3c, 0x87, 0x51, 0x37, 0x77, 0x31, 0x02, 0x94, 0x1d, + 0x0e, 0xf5, 0x44, 0xc8, 0x4e, 0x36, 0x89, 0xb8, 0x2e, 0xac, 0x32, 0xd8, + 0xe2, 0x9c, 0xce, 0x42, 0xea, 0xe3, 0x93, 0xe0, 0x86, 0xab, 0x81, 0xf7, + 0x05, 0x20, 0x17, 0x92, 0x88, 0xc5, 0x2c, 0xbb, 0x64, 0x48, 0x69, 0x97, + 0x23, 0x86, 0x5b, 0x49, +}; +static const struct drbg_kat_no_reseed kat734_t = { + 13, kat734_entropyin, kat734_nonce, kat734_persstr, + kat734_addin0, kat734_addin1, kat734_retbits +}; +static const struct drbg_kat kat734 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat734_t +}; + +static const unsigned char kat735_entropyin[] = { + 0x72, 0x7c, 0x0a, 0xc7, 0x5a, 0x99, 0xbb, 0x1a, 0x31, 0x8e, 0x4f, 0xe2, + 0xfe, 0x0f, 0x2e, 0x31, 0x2b, 0x3b, 0x61, 0xd8, 0x2b, 0x2e, 0x50, 0x71, + 0xac, 0xfb, 0x4a, 0x36, 0xbc, 0x82, 0x58, 0xc1, +}; +static const unsigned char kat735_nonce[] = {0}; +static const unsigned char kat735_persstr[] = {0}; +static const unsigned char kat735_addin0[] = {0}; +static const unsigned char kat735_addin1[] = {0}; +static const unsigned char kat735_retbits[] = { + 0xf5, 0x95, 0xee, 0x1a, 0xf4, 0x37, 0xfe, 0x1b, 0xed, 0x8d, 0x45, 0x10, + 0x88, 0xb7, 0x88, 0xf1, 0xcd, 0x59, 0x9f, 0x2b, 0x0c, 0x47, 0xfe, 0xac, + 0x1f, 0xb5, 0xc6, 0xef, 0xbf, 0x7a, 0x14, 0xa8, 0xab, 0x0e, 0xa1, 0x1a, + 0x35, 0x69, 0xa3, 0xc2, 0x3b, 0x2a, 0x97, 0x02, 0xb4, 0x15, 0xbd, 0xa3, + 0x55, 0xc1, 0x5a, 0xfd, 0x27, 0x5c, 0x0d, 0x67, 0xb3, 0x8b, 0xcf, 0xb5, + 0x4a, 0xb1, 0x3f, 0x70, +}; +static const struct drbg_kat_no_reseed kat735_t = { + 14, kat735_entropyin, kat735_nonce, kat735_persstr, + kat735_addin0, kat735_addin1, kat735_retbits +}; +static const struct drbg_kat kat735 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat735_t +}; + +static const unsigned char kat736_entropyin[] = { + 0x6b, 0xd4, 0xf2, 0xae, 0x64, 0x9f, 0xc9, 0x93, 0x50, 0x95, 0x1f, 0xf0, + 0xc5, 0xd4, 0x60, 0xc1, 0xa9, 0x21, 0x41, 0x54, 0xe7, 0x38, 0x49, 0x75, + 0xee, 0x54, 0xb3, 0x4b, 0x7c, 0xae, 0x07, 0x04, +}; +static const unsigned char kat736_nonce[] = {0}; +static const unsigned char kat736_persstr[] = {0}; +static const unsigned char kat736_addin0[] = { + 0xec, 0xd4, 0x89, 0x3b, 0x97, 0x9a, 0xc9, 0x2d, 0xb1, 0x89, 0x4a, 0xe3, + 0x72, 0x45, 0x18, 0xa2, 0xf7, 0x8c, 0xf2, 0xdb, 0xe2, 0xf6, 0xbb, 0xc6, + 0xfd, 0xa5, 0x96, 0xdf, 0x87, 0xc7, 0xa4, 0xae, +}; +static const unsigned char kat736_addin1[] = { + 0xb2, 0x3e, 0x91, 0x88, 0x68, 0x7c, 0x88, 0x76, 0x8b, 0x26, 0x73, 0x88, + 0x62, 0xc4, 0x79, 0x1f, 0xa5, 0x2f, 0x92, 0x50, 0x2e, 0x1f, 0x94, 0xbf, + 0x66, 0xaf, 0x01, 0x7c, 0x42, 0x28, 0xa0, 0xdc, +}; +static const unsigned char kat736_retbits[] = { + 0x5b, 0x2b, 0xf7, 0xa5, 0xc6, 0x0d, 0x8a, 0xb6, 0x59, 0x11, 0x10, 0xcb, + 0xd6, 0x1c, 0xd3, 0x87, 0xb0, 0x2d, 0xe1, 0x97, 0x84, 0xf4, 0x96, 0xd1, + 0xa1, 0x09, 0x12, 0x3d, 0x8b, 0x35, 0x62, 0xa5, 0xde, 0x2d, 0xd6, 0xd5, + 0xd1, 0xae, 0xf9, 0x57, 0xa6, 0xc4, 0xf3, 0x71, 0xce, 0xcd, 0x93, 0xc1, + 0x57, 0x99, 0xd8, 0x2e, 0x34, 0xd6, 0xa0, 0xdb, 0xa7, 0xe9, 0x15, 0xa2, + 0x7d, 0x8e, 0x65, 0xf3, +}; +static const struct drbg_kat_no_reseed kat736_t = { + 0, kat736_entropyin, kat736_nonce, kat736_persstr, + kat736_addin0, kat736_addin1, kat736_retbits +}; +static const struct drbg_kat kat736 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat736_t +}; + +static const unsigned char kat737_entropyin[] = { + 0xe2, 0xad, 0xdb, 0xde, 0x2a, 0x76, 0xe7, 0x69, 0xfc, 0x7a, 0xa3, 0xf4, + 0x5b, 0x31, 0x40, 0x2f, 0x48, 0x2b, 0x73, 0xbb, 0xe7, 0x06, 0x7a, 0xd6, + 0x25, 0x46, 0x21, 0xf0, 0x6d, 0x3e, 0xf6, 0x8b, +}; +static const unsigned char kat737_nonce[] = {0}; +static const unsigned char kat737_persstr[] = {0}; +static const unsigned char kat737_addin0[] = { + 0xad, 0x11, 0x64, 0x3b, 0x01, 0x9e, 0x31, 0x24, 0x5e, 0x4e, 0xa4, 0x1f, + 0x18, 0xf7, 0x68, 0x04, 0x58, 0x31, 0x05, 0x80, 0xfa, 0x6e, 0xfa, 0xd2, + 0x75, 0xc5, 0x83, 0x3e, 0x7f, 0x80, 0x0d, 0xae, +}; +static const unsigned char kat737_addin1[] = { + 0xb5, 0xd8, 0x49, 0x61, 0x6b, 0x31, 0x23, 0xc9, 0x72, 0x5d, 0x18, 0x8c, + 0xd0, 0x00, 0x50, 0x03, 0x22, 0x07, 0x68, 0xd1, 0x20, 0x0f, 0x9e, 0x7c, + 0xc2, 0x9e, 0xf6, 0xd8, 0x8a, 0xfb, 0x7b, 0x9a, +}; +static const unsigned char kat737_retbits[] = { + 0x13, 0x2d, 0x0d, 0x50, 0xc8, 0x47, 0x7a, 0x40, 0x0b, 0xb8, 0x93, 0x5b, + 0xe5, 0x92, 0x8f, 0x91, 0x6a, 0x85, 0xda, 0x9f, 0xfc, 0xf1, 0xa8, 0xf6, + 0xe9, 0xf9, 0xa1, 0x4c, 0xca, 0x86, 0x10, 0x36, 0xcd, 0xa1, 0x4c, 0xf6, + 0x6d, 0x89, 0x53, 0xda, 0xb4, 0x56, 0xb6, 0x32, 0xcf, 0x68, 0x7c, 0xd5, + 0x39, 0xb4, 0xb8, 0x07, 0x92, 0x65, 0x61, 0xd0, 0xb3, 0x56, 0x2b, 0x9d, + 0x33, 0x34, 0xfb, 0x61, +}; +static const struct drbg_kat_no_reseed kat737_t = { + 1, kat737_entropyin, kat737_nonce, kat737_persstr, + kat737_addin0, kat737_addin1, kat737_retbits +}; +static const struct drbg_kat kat737 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat737_t +}; + +static const unsigned char kat738_entropyin[] = { + 0x7e, 0xca, 0x92, 0xb1, 0x13, 0x13, 0xe2, 0xeb, 0x67, 0xe8, 0x08, 0xd2, + 0x12, 0x72, 0x94, 0x5b, 0xe4, 0x32, 0xe9, 0x89, 0x33, 0x00, 0x0f, 0xce, + 0x65, 0x5c, 0xce, 0x06, 0x8d, 0xba, 0x42, 0x8b, +}; +static const unsigned char kat738_nonce[] = {0}; +static const unsigned char kat738_persstr[] = {0}; +static const unsigned char kat738_addin0[] = { + 0x03, 0x46, 0xce, 0x8a, 0xa1, 0xa4, 0x52, 0x02, 0x7a, 0x9b, 0x5f, 0xb0, + 0xac, 0xa4, 0x18, 0xf4, 0x34, 0x96, 0xfd, 0x97, 0xb3, 0xad, 0x3f, 0xcd, + 0xce, 0x17, 0xc4, 0xe3, 0xee, 0x27, 0xb3, 0x22, +}; +static const unsigned char kat738_addin1[] = { + 0x78, 0xec, 0xfb, 0xac, 0xec, 0x06, 0xfc, 0x61, 0xda, 0x03, 0x52, 0x27, + 0x45, 0xac, 0x4f, 0xb1, 0xfb, 0x6d, 0xee, 0x64, 0x66, 0x72, 0x0c, 0x02, + 0xa8, 0x35, 0x87, 0x71, 0x8a, 0x0d, 0x76, 0x3a, +}; +static const unsigned char kat738_retbits[] = { + 0x90, 0x4c, 0xd7, 0x90, 0x4d, 0x59, 0x33, 0x5b, 0xf5, 0x55, 0x20, 0x23, + 0xb6, 0x68, 0x9c, 0x8d, 0x61, 0xec, 0xa2, 0x48, 0x51, 0x86, 0x6a, 0x83, + 0x77, 0xae, 0xc9, 0x0d, 0xd8, 0x7e, 0x31, 0x1c, 0x62, 0x2d, 0x50, 0x7e, + 0x67, 0x85, 0x81, 0x51, 0x39, 0x35, 0xbd, 0xe1, 0x2c, 0x8b, 0x35, 0x1f, + 0x8d, 0x9a, 0x8e, 0xfc, 0xfc, 0xc1, 0xf1, 0xff, 0x76, 0xc0, 0x61, 0x3b, + 0xff, 0xe7, 0xb4, 0x55, +}; +static const struct drbg_kat_no_reseed kat738_t = { + 2, kat738_entropyin, kat738_nonce, kat738_persstr, + kat738_addin0, kat738_addin1, kat738_retbits +}; +static const struct drbg_kat kat738 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat738_t +}; + +static const unsigned char kat739_entropyin[] = { + 0x69, 0x0e, 0x1f, 0xfa, 0xa9, 0x69, 0xbd, 0x3a, 0xad, 0x20, 0xb2, 0xd6, + 0x46, 0xa6, 0xc6, 0x93, 0x75, 0x34, 0x67, 0x52, 0x8d, 0x1d, 0xc1, 0xfc, + 0x74, 0xe9, 0x06, 0xf4, 0x9d, 0x07, 0x5d, 0x89, +}; +static const unsigned char kat739_nonce[] = {0}; +static const unsigned char kat739_persstr[] = {0}; +static const unsigned char kat739_addin0[] = { + 0x4a, 0x43, 0x45, 0xdb, 0x4f, 0xed, 0x24, 0xca, 0xc4, 0x98, 0x22, 0xca, + 0xc5, 0x8d, 0xc4, 0x4e, 0xdc, 0xdf, 0x9c, 0x63, 0xd1, 0xdc, 0xba, 0x9f, + 0x46, 0x0a, 0xf9, 0xdf, 0xa2, 0xb5, 0x55, 0xb6, +}; +static const unsigned char kat739_addin1[] = { + 0xe2, 0xa5, 0x65, 0xb0, 0xf9, 0x70, 0xd2, 0xd0, 0x9d, 0x1b, 0x59, 0xa6, + 0x25, 0x9b, 0x86, 0x69, 0x12, 0xb2, 0x66, 0xb7, 0x6c, 0x3f, 0x09, 0xa7, + 0xb6, 0xf0, 0xdf, 0xae, 0xfd, 0x46, 0x07, 0x4d, +}; +static const unsigned char kat739_retbits[] = { + 0x27, 0xb4, 0xcf, 0x56, 0xe9, 0xd4, 0x1f, 0xe1, 0x1d, 0xc2, 0x93, 0x31, + 0x10, 0xcf, 0xcf, 0xd4, 0x02, 0xce, 0x6b, 0xc8, 0x74, 0x06, 0xcd, 0xe7, + 0xf0, 0xaa, 0xc0, 0xb2, 0xdf, 0x41, 0x0e, 0xec, 0x96, 0x66, 0xff, 0x52, + 0xe1, 0xa7, 0x4f, 0x32, 0x24, 0x74, 0x2a, 0xf5, 0x8d, 0xa2, 0x3b, 0xf5, + 0xea, 0xbb, 0x12, 0xd2, 0x89, 0xe4, 0x13, 0x47, 0xb6, 0xd2, 0x5e, 0xe0, + 0xd2, 0xb3, 0x72, 0x67, +}; +static const struct drbg_kat_no_reseed kat739_t = { + 3, kat739_entropyin, kat739_nonce, kat739_persstr, + kat739_addin0, kat739_addin1, kat739_retbits +}; +static const struct drbg_kat kat739 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat739_t +}; + +static const unsigned char kat740_entropyin[] = { + 0xbd, 0xfa, 0x5e, 0xbb, 0x4e, 0x3c, 0x31, 0xe6, 0x3a, 0x9f, 0xf1, 0x4c, + 0x3e, 0x80, 0xea, 0x35, 0xf8, 0x6e, 0xff, 0x02, 0x69, 0xf3, 0x38, 0x9f, + 0x9f, 0x2e, 0x9a, 0x51, 0x91, 0xb6, 0x06, 0x5e, +}; +static const unsigned char kat740_nonce[] = {0}; +static const unsigned char kat740_persstr[] = {0}; +static const unsigned char kat740_addin0[] = { + 0xde, 0x02, 0x56, 0x5f, 0x25, 0x64, 0xbe, 0xc8, 0x69, 0x80, 0x0a, 0x81, + 0x8b, 0xa7, 0x9b, 0xdd, 0x37, 0xc9, 0xb0, 0xab, 0x7f, 0xbb, 0x9c, 0xfe, + 0x95, 0x3e, 0xb1, 0x4f, 0x02, 0x18, 0xec, 0x21, +}; +static const unsigned char kat740_addin1[] = { + 0xab, 0x7b, 0x1c, 0xc8, 0xb8, 0x9b, 0xfe, 0x19, 0x02, 0x93, 0xfb, 0x80, + 0x3a, 0x63, 0x76, 0x75, 0x94, 0x0c, 0xf2, 0xc3, 0x86, 0x11, 0x96, 0x8f, + 0x77, 0x06, 0x21, 0xdf, 0xb0, 0xae, 0x35, 0xc2, +}; +static const unsigned char kat740_retbits[] = { + 0xdd, 0x63, 0x9a, 0xff, 0x72, 0x76, 0xf1, 0x9d, 0x80, 0xfc, 0xa5, 0x64, + 0x1f, 0xf9, 0x0a, 0x20, 0x26, 0xff, 0xce, 0x0f, 0x7e, 0x1b, 0xf4, 0xd5, + 0x03, 0x98, 0xb8, 0xae, 0xa0, 0x52, 0xe6, 0xb0, 0x71, 0x4f, 0x52, 0xa3, + 0xe7, 0x6c, 0x82, 0xa9, 0x27, 0x36, 0xd3, 0x07, 0xf1, 0xb7, 0x32, 0xd0, + 0x45, 0x70, 0x9d, 0x84, 0x55, 0xba, 0x89, 0xaa, 0xe1, 0x08, 0xda, 0xee, + 0x9f, 0x65, 0xcc, 0x4f, +}; +static const struct drbg_kat_no_reseed kat740_t = { + 4, kat740_entropyin, kat740_nonce, kat740_persstr, + kat740_addin0, kat740_addin1, kat740_retbits +}; +static const struct drbg_kat kat740 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat740_t +}; + +static const unsigned char kat741_entropyin[] = { + 0xc1, 0x6d, 0xc7, 0x08, 0x49, 0x11, 0x75, 0x95, 0xcf, 0xe2, 0x06, 0xc2, + 0x70, 0xc9, 0xa7, 0x53, 0x35, 0x5e, 0x1e, 0xf2, 0x3b, 0xeb, 0xd3, 0xc3, + 0x41, 0xe5, 0xb5, 0x64, 0xaa, 0xf7, 0x31, 0x56, +}; +static const unsigned char kat741_nonce[] = {0}; +static const unsigned char kat741_persstr[] = {0}; +static const unsigned char kat741_addin0[] = { + 0xed, 0xe7, 0x92, 0x7d, 0xd3, 0x74, 0xcf, 0x97, 0x9d, 0x00, 0x72, 0x40, + 0x29, 0x16, 0x9e, 0xcd, 0x94, 0x20, 0xa0, 0xe4, 0xa4, 0xf1, 0x23, 0x3a, + 0x46, 0x69, 0x70, 0x89, 0xf7, 0xea, 0xb4, 0x09, +}; +static const unsigned char kat741_addin1[] = { + 0x05, 0x06, 0x89, 0x41, 0x44, 0x05, 0x88, 0x25, 0x27, 0x4e, 0xc9, 0x22, + 0x90, 0x71, 0x4b, 0x33, 0x52, 0x82, 0x09, 0xbe, 0xea, 0x30, 0x10, 0xe2, + 0x2a, 0xe9, 0x11, 0x93, 0x81, 0xb8, 0xfe, 0x58, +}; +static const unsigned char kat741_retbits[] = { + 0xa2, 0xcc, 0x30, 0xe9, 0xbd, 0x52, 0x0d, 0x3f, 0xfc, 0x80, 0x63, 0x98, + 0xf8, 0x1f, 0xff, 0x95, 0xb6, 0x53, 0x77, 0x7a, 0xb0, 0x3a, 0xff, 0xdc, + 0x2c, 0xeb, 0x9a, 0x30, 0x57, 0x05, 0x65, 0x99, 0x5b, 0x42, 0x1a, 0x9f, + 0xaa, 0xf7, 0xa5, 0xbf, 0x83, 0xbf, 0x81, 0x29, 0x13, 0xf6, 0x8b, 0x95, + 0xad, 0xbb, 0x4c, 0x46, 0x31, 0x8b, 0x2a, 0x9f, 0x45, 0x7c, 0xd3, 0x27, + 0x8d, 0x4a, 0x53, 0x2b, +}; +static const struct drbg_kat_no_reseed kat741_t = { + 5, kat741_entropyin, kat741_nonce, kat741_persstr, + kat741_addin0, kat741_addin1, kat741_retbits +}; +static const struct drbg_kat kat741 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat741_t +}; + +static const unsigned char kat742_entropyin[] = { + 0xb2, 0x8c, 0xb5, 0xe2, 0x0f, 0xb7, 0x70, 0xbd, 0x1c, 0xd5, 0x74, 0x33, + 0xbd, 0x0b, 0x19, 0xeb, 0x05, 0xe3, 0x19, 0xf7, 0x7e, 0x2b, 0x46, 0x6d, + 0x83, 0x5a, 0xf8, 0x95, 0x52, 0x22, 0x25, 0x6b, +}; +static const unsigned char kat742_nonce[] = {0}; +static const unsigned char kat742_persstr[] = {0}; +static const unsigned char kat742_addin0[] = { + 0xff, 0xb0, 0xf8, 0x4a, 0x08, 0xa5, 0xa8, 0x44, 0x33, 0xc7, 0xac, 0x57, + 0x04, 0xad, 0xdb, 0xce, 0x0c, 0x29, 0x68, 0xb6, 0xf8, 0x3d, 0xf2, 0x95, + 0x49, 0xf4, 0x31, 0xca, 0x3d, 0xf3, 0xa3, 0x2c, +}; +static const unsigned char kat742_addin1[] = { + 0x89, 0x7a, 0x57, 0x0f, 0x51, 0x4a, 0x03, 0xfb, 0x60, 0xcd, 0x8a, 0xf5, + 0x83, 0x06, 0x57, 0x71, 0xc2, 0xfe, 0x93, 0xa6, 0xad, 0x51, 0x53, 0xe7, + 0x72, 0x7c, 0x79, 0x1a, 0x95, 0x23, 0x9d, 0xc7, +}; +static const unsigned char kat742_retbits[] = { + 0x9a, 0xe7, 0x0e, 0x0f, 0x02, 0xbf, 0xe7, 0x5c, 0xe8, 0x20, 0xeb, 0x8f, + 0xd1, 0xce, 0x18, 0xb4, 0x0e, 0x1f, 0x37, 0x19, 0x77, 0x3c, 0x97, 0x35, + 0xed, 0xb2, 0x93, 0x87, 0x08, 0xcf, 0xba, 0x2a, 0x80, 0x1a, 0xbc, 0x72, + 0xc4, 0x45, 0xab, 0x0c, 0x43, 0x6d, 0xf5, 0x31, 0x82, 0xdd, 0x90, 0xb4, + 0x6c, 0x1e, 0x35, 0x77, 0x87, 0xf1, 0x5c, 0xe1, 0x00, 0xe4, 0x3c, 0x3c, + 0xf7, 0xf9, 0xd5, 0xb5, +}; +static const struct drbg_kat_no_reseed kat742_t = { + 6, kat742_entropyin, kat742_nonce, kat742_persstr, + kat742_addin0, kat742_addin1, kat742_retbits +}; +static const struct drbg_kat kat742 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat742_t +}; + +static const unsigned char kat743_entropyin[] = { + 0xf9, 0x99, 0xe2, 0x25, 0xa5, 0x13, 0xb3, 0xa9, 0x7d, 0x72, 0xb8, 0x26, + 0x33, 0x85, 0xd5, 0xdc, 0x8b, 0xc9, 0x8f, 0x08, 0x8e, 0xce, 0x74, 0xd2, + 0x27, 0x4b, 0xc2, 0xf4, 0xe3, 0x43, 0xae, 0x62, +}; +static const unsigned char kat743_nonce[] = {0}; +static const unsigned char kat743_persstr[] = {0}; +static const unsigned char kat743_addin0[] = { + 0xfc, 0xe8, 0x52, 0x94, 0xca, 0xaf, 0x4c, 0xcd, 0x08, 0xc2, 0x7f, 0xe0, + 0x53, 0x4d, 0xc8, 0x82, 0xa3, 0xcc, 0x0f, 0xaa, 0x12, 0x3e, 0x7f, 0x5e, + 0x92, 0x43, 0x2e, 0x0c, 0xb1, 0x2f, 0x48, 0xc6, +}; +static const unsigned char kat743_addin1[] = { + 0xf7, 0xb3, 0x93, 0xd3, 0xea, 0xc0, 0xd2, 0xda, 0xa3, 0x53, 0x35, 0xa3, + 0xad, 0x89, 0xd6, 0x66, 0xcd, 0x94, 0xb8, 0x5c, 0x45, 0x77, 0x8f, 0xeb, + 0xd7, 0x5f, 0x32, 0xcb, 0xc5, 0x77, 0xde, 0x9d, +}; +static const unsigned char kat743_retbits[] = { + 0xe9, 0xf7, 0xbb, 0xa7, 0x9e, 0x22, 0x35, 0x01, 0x50, 0x99, 0x12, 0x57, + 0x5d, 0xba, 0x64, 0xf0, 0x83, 0x0c, 0xd3, 0x21, 0xcb, 0xb6, 0xf7, 0x5e, + 0xd2, 0xd3, 0x19, 0x60, 0x5d, 0x74, 0x4c, 0xda, 0xad, 0x7e, 0xb7, 0x40, + 0x9d, 0x40, 0x00, 0xe7, 0x67, 0x97, 0x6d, 0x2f, 0x0b, 0x1e, 0x66, 0x53, + 0xf9, 0x4b, 0x05, 0x33, 0xe4, 0xe6, 0xe7, 0x96, 0xdc, 0x6a, 0x22, 0x58, + 0x67, 0x44, 0x23, 0x14, +}; +static const struct drbg_kat_no_reseed kat743_t = { + 7, kat743_entropyin, kat743_nonce, kat743_persstr, + kat743_addin0, kat743_addin1, kat743_retbits +}; +static const struct drbg_kat kat743 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat743_t +}; + +static const unsigned char kat744_entropyin[] = { + 0x01, 0xb0, 0x9c, 0xbb, 0x44, 0xab, 0x39, 0xf7, 0xdb, 0xfd, 0x3e, 0x8b, + 0x4d, 0x17, 0x3b, 0x5b, 0x54, 0x33, 0x32, 0x5a, 0x34, 0x19, 0x36, 0x4f, + 0x45, 0x1b, 0x7f, 0xfb, 0x6e, 0xb3, 0x51, 0xdb, +}; +static const unsigned char kat744_nonce[] = {0}; +static const unsigned char kat744_persstr[] = {0}; +static const unsigned char kat744_addin0[] = { + 0xde, 0x95, 0xe4, 0x48, 0x4c, 0x98, 0x32, 0x4f, 0x3c, 0x77, 0x71, 0xf9, + 0x52, 0x5c, 0x11, 0xee, 0x26, 0x8e, 0x73, 0x95, 0xd4, 0xdd, 0x80, 0x46, + 0xac, 0x23, 0xae, 0x5d, 0xb8, 0xe3, 0x61, 0xcf, +}; +static const unsigned char kat744_addin1[] = { + 0x7d, 0x37, 0x6e, 0x9d, 0x31, 0x9a, 0x27, 0x53, 0x51, 0xfb, 0x27, 0x32, + 0x74, 0xb6, 0xfa, 0xd9, 0xe1, 0x42, 0x0e, 0xe6, 0xb1, 0x0e, 0xe1, 0xae, + 0x33, 0x06, 0x98, 0xa1, 0xd1, 0x5c, 0xd7, 0xfd, +}; +static const unsigned char kat744_retbits[] = { + 0x43, 0x15, 0xec, 0x46, 0xef, 0x98, 0x36, 0x76, 0xee, 0x61, 0xb6, 0x1d, + 0x36, 0x23, 0xc3, 0xb6, 0x73, 0x13, 0x89, 0xb1, 0x2c, 0x7d, 0x27, 0xc8, + 0x7d, 0x07, 0xcc, 0xa2, 0x2b, 0xd9, 0x1d, 0x53, 0xef, 0x80, 0x70, 0x5a, + 0xca, 0x37, 0x40, 0xaf, 0x2d, 0x5d, 0xd8, 0x45, 0x2e, 0xc0, 0xd0, 0x68, + 0x79, 0xf1, 0xbc, 0xef, 0x01, 0x32, 0xd7, 0x7d, 0x3c, 0x31, 0x1e, 0x1b, + 0x34, 0xa0, 0xdc, 0x5f, +}; +static const struct drbg_kat_no_reseed kat744_t = { + 8, kat744_entropyin, kat744_nonce, kat744_persstr, + kat744_addin0, kat744_addin1, kat744_retbits +}; +static const struct drbg_kat kat744 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat744_t +}; + +static const unsigned char kat745_entropyin[] = { + 0x6c, 0xfa, 0xca, 0x3c, 0x03, 0xb0, 0xd9, 0x8f, 0x69, 0xdf, 0xc9, 0xf2, + 0x85, 0x9f, 0x0d, 0xb1, 0x28, 0xd0, 0x55, 0x34, 0xa0, 0xe2, 0x7f, 0xe7, + 0x43, 0x3f, 0x6a, 0xfc, 0x2d, 0xde, 0xdb, 0x75, +}; +static const unsigned char kat745_nonce[] = {0}; +static const unsigned char kat745_persstr[] = {0}; +static const unsigned char kat745_addin0[] = { + 0x20, 0x3b, 0x29, 0xaa, 0x54, 0xfe, 0xe3, 0xae, 0x86, 0x68, 0x5c, 0x5c, + 0xdf, 0x03, 0x47, 0x77, 0x33, 0x01, 0xdb, 0x03, 0x04, 0x3a, 0x91, 0x0e, + 0xd0, 0x63, 0xbb, 0xd2, 0x49, 0x27, 0x18, 0x87, +}; +static const unsigned char kat745_addin1[] = { + 0x57, 0xde, 0xd4, 0xf3, 0xae, 0x76, 0x8b, 0x10, 0x0c, 0x36, 0x03, 0x5e, + 0xc5, 0xec, 0xbc, 0x09, 0x3e, 0x14, 0x1e, 0x5b, 0xfb, 0x87, 0x46, 0xd3, + 0x44, 0x55, 0x4c, 0xa6, 0x4b, 0xcc, 0xe0, 0x16, +}; +static const unsigned char kat745_retbits[] = { + 0x03, 0x99, 0x0f, 0x68, 0xca, 0x84, 0xdc, 0x13, 0xb9, 0x2e, 0x76, 0x64, + 0x7f, 0xa2, 0x4d, 0xba, 0x47, 0xf3, 0x6d, 0xa6, 0xf1, 0xdf, 0xa9, 0xc4, + 0x12, 0x4d, 0xe8, 0x67, 0x62, 0x70, 0x3c, 0xb3, 0x3d, 0xf7, 0x30, 0xce, + 0xe6, 0x8a, 0x6a, 0xcf, 0x8a, 0x4a, 0x42, 0x53, 0xa5, 0x75, 0xd8, 0x70, + 0x91, 0x11, 0xca, 0x6b, 0xae, 0x80, 0x50, 0x7c, 0x24, 0x8e, 0xbe, 0x4f, + 0xf5, 0x2c, 0xb9, 0x59, +}; +static const struct drbg_kat_no_reseed kat745_t = { + 9, kat745_entropyin, kat745_nonce, kat745_persstr, + kat745_addin0, kat745_addin1, kat745_retbits +}; +static const struct drbg_kat kat745 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat745_t +}; + +static const unsigned char kat746_entropyin[] = { + 0xb0, 0x96, 0x7a, 0x4a, 0xea, 0x35, 0x0f, 0x67, 0xe7, 0x08, 0x15, 0x37, + 0xa2, 0x51, 0x9f, 0x4f, 0x60, 0x8f, 0x31, 0x7e, 0xdd, 0x14, 0xa2, 0x4a, + 0x75, 0xba, 0x43, 0x69, 0xd2, 0x24, 0x78, 0x6d, +}; +static const unsigned char kat746_nonce[] = {0}; +static const unsigned char kat746_persstr[] = {0}; +static const unsigned char kat746_addin0[] = { + 0x8b, 0x48, 0xef, 0xfd, 0x79, 0x12, 0x38, 0xb8, 0x32, 0x9b, 0x9d, 0xb8, + 0x51, 0x76, 0x74, 0xf5, 0x9c, 0x60, 0xb2, 0xbb, 0x9a, 0xb0, 0x6e, 0xa1, + 0xc5, 0xd5, 0x4e, 0xe4, 0x71, 0xca, 0xaf, 0x89, +}; +static const unsigned char kat746_addin1[] = { + 0xc5, 0x5b, 0xbd, 0xc2, 0xaa, 0xea, 0x7d, 0xbd, 0x84, 0x0a, 0x72, 0x96, + 0xe2, 0x22, 0x95, 0xae, 0x2b, 0x95, 0xb0, 0xca, 0x61, 0x92, 0x23, 0x7c, + 0x12, 0x5d, 0xa1, 0x70, 0x7f, 0xe8, 0xcd, 0x0f, +}; +static const unsigned char kat746_retbits[] = { + 0x28, 0xf4, 0xfb, 0x5d, 0x85, 0xe5, 0xb8, 0xb1, 0x51, 0xce, 0xaa, 0xf3, + 0x3b, 0x2a, 0xcb, 0x02, 0xb0, 0xb2, 0x5d, 0x9c, 0xf2, 0x76, 0x05, 0x67, + 0xfb, 0x54, 0xb0, 0xb0, 0xf5, 0x60, 0xbc, 0x89, 0x26, 0x66, 0x3c, 0xec, + 0x6c, 0x84, 0xe3, 0x56, 0x0c, 0x46, 0x2e, 0x80, 0x25, 0x84, 0xba, 0x3a, + 0xd5, 0x8c, 0xac, 0xe1, 0xda, 0x96, 0x48, 0x99, 0xc5, 0x25, 0x92, 0xa9, + 0xac, 0x61, 0x97, 0x9c, +}; +static const struct drbg_kat_no_reseed kat746_t = { + 10, kat746_entropyin, kat746_nonce, kat746_persstr, + kat746_addin0, kat746_addin1, kat746_retbits +}; +static const struct drbg_kat kat746 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat746_t +}; + +static const unsigned char kat747_entropyin[] = { + 0xb3, 0x7c, 0xd1, 0xd2, 0x27, 0xf3, 0xc8, 0x17, 0xd2, 0x39, 0x82, 0x63, + 0x0b, 0x19, 0xaa, 0x8a, 0x81, 0xc0, 0x41, 0x5f, 0x60, 0x2d, 0x27, 0x11, + 0x12, 0xd4, 0xe3, 0x16, 0x89, 0xc8, 0xe9, 0x79, +}; +static const unsigned char kat747_nonce[] = {0}; +static const unsigned char kat747_persstr[] = {0}; +static const unsigned char kat747_addin0[] = { + 0x1f, 0x25, 0x51, 0x7a, 0xb6, 0x77, 0xbd, 0x8c, 0x4b, 0xf2, 0x04, 0xc4, + 0xf3, 0xfd, 0xe5, 0x9b, 0x6f, 0x33, 0x73, 0x88, 0x38, 0x5f, 0x28, 0xca, + 0x8d, 0xac, 0x2b, 0xce, 0x27, 0xe1, 0xdf, 0x67, +}; +static const unsigned char kat747_addin1[] = { + 0x0a, 0xca, 0xcc, 0x50, 0x53, 0x3c, 0x77, 0xbf, 0xe0, 0x9d, 0xe6, 0x85, + 0xb5, 0x16, 0xd1, 0xd9, 0xf2, 0xb0, 0x38, 0x74, 0x97, 0x51, 0x31, 0xac, + 0x85, 0x91, 0x8b, 0xce, 0xbe, 0xbb, 0xd5, 0x43, +}; +static const unsigned char kat747_retbits[] = { + 0x90, 0x31, 0xb7, 0x7d, 0xb5, 0xbe, 0x9b, 0x79, 0x15, 0x0d, 0x62, 0x34, + 0x74, 0xc2, 0x1b, 0xf5, 0x19, 0x7b, 0xa4, 0x14, 0x4d, 0x73, 0x7d, 0x26, + 0x1f, 0x77, 0xeb, 0x6e, 0xf0, 0x7b, 0x74, 0xc2, 0xd4, 0xb4, 0xed, 0x61, + 0x77, 0x48, 0x04, 0x23, 0x42, 0x1f, 0x19, 0x25, 0xd6, 0x1e, 0x97, 0x74, + 0x11, 0x55, 0xcb, 0xd5, 0xd3, 0xbf, 0xcf, 0x5e, 0x1f, 0x1d, 0x30, 0xf3, + 0xfc, 0xfd, 0x7b, 0xe9, +}; +static const struct drbg_kat_no_reseed kat747_t = { + 11, kat747_entropyin, kat747_nonce, kat747_persstr, + kat747_addin0, kat747_addin1, kat747_retbits +}; +static const struct drbg_kat kat747 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat747_t +}; + +static const unsigned char kat748_entropyin[] = { + 0xf3, 0x34, 0xc9, 0x70, 0xa2, 0x13, 0x75, 0x9a, 0x03, 0xce, 0xf1, 0x6d, + 0x3b, 0x3a, 0x44, 0x01, 0x43, 0x24, 0x2a, 0xf5, 0x7d, 0xad, 0xe4, 0x33, + 0x25, 0x88, 0x35, 0x1e, 0x24, 0x15, 0x2e, 0x60, +}; +static const unsigned char kat748_nonce[] = {0}; +static const unsigned char kat748_persstr[] = {0}; +static const unsigned char kat748_addin0[] = { + 0xff, 0x35, 0x67, 0x67, 0x4f, 0xe5, 0xc8, 0xdc, 0x44, 0xd4, 0xf9, 0x19, + 0x62, 0x46, 0x40, 0x2b, 0x9b, 0xf3, 0xe7, 0x1c, 0xd0, 0x0b, 0xdd, 0x1f, + 0x0d, 0xb0, 0x24, 0x23, 0x47, 0xea, 0x2a, 0x1c, +}; +static const unsigned char kat748_addin1[] = { + 0x7d, 0x4c, 0x24, 0x24, 0x38, 0x61, 0x7e, 0x5d, 0x26, 0x90, 0xa8, 0x77, + 0x6f, 0x3f, 0xd9, 0xcf, 0x27, 0xd3, 0x2a, 0x9c, 0x57, 0x44, 0xa9, 0xf2, + 0xbd, 0x5c, 0xf1, 0x16, 0xf6, 0x66, 0x64, 0xa0, +}; +static const unsigned char kat748_retbits[] = { + 0xd1, 0xb6, 0x31, 0xf7, 0xff, 0x94, 0x5c, 0xc7, 0xe2, 0x95, 0x4f, 0x68, + 0x95, 0xb4, 0x39, 0xe9, 0x9c, 0xa1, 0xff, 0xf7, 0x5e, 0xe1, 0x9c, 0x14, + 0xf2, 0x7f, 0x44, 0x46, 0xf6, 0x27, 0xc1, 0xe4, 0x5b, 0xc5, 0x63, 0x50, + 0xb4, 0x32, 0xf7, 0x18, 0xce, 0x83, 0xf0, 0x9c, 0xa4, 0x93, 0x95, 0x9e, + 0xcd, 0xbc, 0xa3, 0xdc, 0x24, 0xb3, 0xef, 0x96, 0xe0, 0x1f, 0xc4, 0xda, + 0x22, 0x9d, 0x22, 0xdf, +}; +static const struct drbg_kat_no_reseed kat748_t = { + 12, kat748_entropyin, kat748_nonce, kat748_persstr, + kat748_addin0, kat748_addin1, kat748_retbits +}; +static const struct drbg_kat kat748 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat748_t +}; + +static const unsigned char kat749_entropyin[] = { + 0x72, 0x7c, 0xfb, 0x51, 0x10, 0x0a, 0x98, 0xcc, 0x70, 0x82, 0xb1, 0x81, + 0xdb, 0xa3, 0xfd, 0xad, 0x2d, 0xd1, 0x97, 0xbc, 0x00, 0x65, 0xd9, 0x70, + 0x47, 0x66, 0x79, 0xa4, 0x0a, 0xc1, 0x97, 0x66, +}; +static const unsigned char kat749_nonce[] = {0}; +static const unsigned char kat749_persstr[] = {0}; +static const unsigned char kat749_addin0[] = { + 0x03, 0x92, 0x02, 0x23, 0x90, 0x0c, 0xb0, 0xab, 0xaa, 0x95, 0xfd, 0xb8, + 0xeb, 0x36, 0x9f, 0xf6, 0x63, 0x99, 0xcf, 0x65, 0x7e, 0x71, 0xf2, 0xfc, + 0x9e, 0x4b, 0x8d, 0x46, 0x82, 0x78, 0x1a, 0xf5, +}; +static const unsigned char kat749_addin1[] = { + 0x19, 0x82, 0x46, 0xd1, 0xfa, 0x95, 0xff, 0x48, 0x0b, 0xe0, 0xb8, 0x4f, + 0x2a, 0x10, 0x7b, 0xaa, 0xdf, 0xaf, 0x73, 0x33, 0x98, 0x0a, 0xb6, 0x28, + 0xc7, 0x82, 0x32, 0xcc, 0xd8, 0x99, 0xdc, 0x4b, +}; +static const unsigned char kat749_retbits[] = { + 0x86, 0x25, 0xa8, 0x0c, 0xbe, 0xfd, 0xf7, 0xb8, 0x22, 0xe8, 0x2a, 0x1e, + 0x71, 0x10, 0x4d, 0x44, 0x9d, 0x8c, 0xef, 0x6a, 0x40, 0x0f, 0xa7, 0x69, + 0x70, 0x1d, 0x1c, 0xf6, 0x0f, 0x5f, 0x1a, 0x14, 0x7d, 0x94, 0x65, 0xf7, + 0xf3, 0xcd, 0xc7, 0xd2, 0xf0, 0x60, 0x6f, 0xe4, 0x59, 0xe4, 0x31, 0xfc, + 0xc3, 0x6d, 0xf4, 0x1a, 0x51, 0xe8, 0x76, 0x50, 0xf5, 0x85, 0xcb, 0x62, + 0x6a, 0xc3, 0xe2, 0x20, +}; +static const struct drbg_kat_no_reseed kat749_t = { + 13, kat749_entropyin, kat749_nonce, kat749_persstr, + kat749_addin0, kat749_addin1, kat749_retbits +}; +static const struct drbg_kat kat749 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat749_t +}; + +static const unsigned char kat750_entropyin[] = { + 0x02, 0xfb, 0xc1, 0x08, 0x1c, 0x13, 0x13, 0x4d, 0x2d, 0x68, 0xea, 0x58, + 0x6e, 0xcf, 0x4a, 0x59, 0x8c, 0xaf, 0x7b, 0xf4, 0x2e, 0xc0, 0xa3, 0xcd, + 0x30, 0x01, 0x8e, 0x01, 0xc2, 0x64, 0xc8, 0x4b, +}; +static const unsigned char kat750_nonce[] = {0}; +static const unsigned char kat750_persstr[] = {0}; +static const unsigned char kat750_addin0[] = { + 0x17, 0x0a, 0x92, 0xd0, 0x93, 0xd3, 0x0f, 0x93, 0x9b, 0x3e, 0xac, 0x62, + 0x8a, 0x18, 0xba, 0xb5, 0xfa, 0xf8, 0x6b, 0x3a, 0x5d, 0x91, 0xf3, 0x0c, + 0xfd, 0x0b, 0xea, 0xfd, 0xec, 0x41, 0x19, 0x1c, +}; +static const unsigned char kat750_addin1[] = { + 0xfd, 0x03, 0x49, 0xaf, 0x01, 0x50, 0x37, 0xcd, 0xbb, 0x52, 0x98, 0x31, + 0x55, 0xc8, 0x9f, 0xc5, 0x9f, 0x37, 0xd5, 0x12, 0x54, 0x35, 0x59, 0xc3, + 0xee, 0x65, 0x89, 0xf7, 0xb9, 0x38, 0x61, 0xf6, +}; +static const unsigned char kat750_retbits[] = { + 0x02, 0x73, 0xa1, 0x31, 0x7f, 0x3d, 0xd3, 0x68, 0x77, 0xa5, 0x05, 0xca, + 0x2e, 0x44, 0x04, 0x45, 0x09, 0x4d, 0x3c, 0x70, 0x2c, 0x4f, 0xf5, 0xf4, + 0xa0, 0x7d, 0xaa, 0x3f, 0x81, 0x0d, 0x8d, 0x7a, 0x4f, 0x4b, 0x9c, 0x54, + 0xdc, 0xe1, 0x69, 0xa1, 0x30, 0x7f, 0xbd, 0xc5, 0xd1, 0x97, 0xe6, 0xa3, + 0xed, 0xc3, 0xea, 0x73, 0x7b, 0xed, 0xc1, 0xc9, 0x85, 0x7a, 0xa0, 0xe9, + 0xf8, 0x79, 0x43, 0xe2, +}; +static const struct drbg_kat_no_reseed kat750_t = { + 14, kat750_entropyin, kat750_nonce, kat750_persstr, + kat750_addin0, kat750_addin1, kat750_retbits +}; +static const struct drbg_kat kat750 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat750_t +}; + +static const unsigned char kat751_entropyin[] = { + 0xce, 0xe2, 0x3d, 0xe8, 0x6a, 0x69, 0xc7, 0xef, 0x57, 0xf6, 0xe1, 0xe1, + 0x2b, 0xd1, 0x6e, 0x35, 0xe5, 0x16, 0x24, 0x22, 0x6f, 0xa1, 0x95, 0x97, + 0xbf, 0x93, 0xec, 0x47, 0x6a, 0x44, 0xb0, 0xf2, +}; +static const unsigned char kat751_nonce[] = {0}; +static const unsigned char kat751_persstr[] = { + 0xa2, 0xef, 0x16, 0xf2, 0x26, 0xea, 0x32, 0x4f, 0x23, 0xab, 0xd5, 0x9d, + 0x5e, 0x3c, 0x66, 0x05, 0x61, 0xc2, 0x5e, 0x73, 0x63, 0x8f, 0xe2, 0x1c, + 0x87, 0x56, 0x6e, 0x86, 0xa9, 0xe0, 0x4c, 0x3e, +}; +static const unsigned char kat751_addin0[] = {0}; +static const unsigned char kat751_addin1[] = {0}; +static const unsigned char kat751_retbits[] = { + 0x2a, 0x76, 0xd7, 0x1b, 0x32, 0x9f, 0x44, 0x9c, 0x98, 0xdc, 0x08, 0xff, + 0xf1, 0xd2, 0x05, 0xa2, 0xfb, 0xd9, 0xe4, 0xad, 0xe1, 0x20, 0xc7, 0x61, + 0x1c, 0x22, 0x5c, 0x98, 0x4e, 0xac, 0x85, 0x31, 0x28, 0x8d, 0xd3, 0x04, + 0x9f, 0x3d, 0xc3, 0xbb, 0x36, 0x71, 0x50, 0x1a, 0xb8, 0xfb, 0xf9, 0xad, + 0x49, 0xc8, 0x6c, 0xce, 0x30, 0x76, 0x53, 0xbd, 0x8c, 0xaf, 0x29, 0xcb, + 0x0c, 0xf0, 0x77, 0x64, +}; +static const struct drbg_kat_no_reseed kat751_t = { + 0, kat751_entropyin, kat751_nonce, kat751_persstr, + kat751_addin0, kat751_addin1, kat751_retbits +}; +static const struct drbg_kat kat751 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat751_t +}; + +static const unsigned char kat752_entropyin[] = { + 0xb0, 0x9e, 0xb4, 0xa8, 0x2a, 0x39, 0x06, 0x6e, 0xc9, 0x45, 0xbb, 0x7c, + 0x6a, 0xef, 0x6a, 0x06, 0x82, 0xa6, 0x2c, 0x3e, 0x67, 0x4b, 0xd9, 0x00, + 0x29, 0x7d, 0x42, 0x71, 0xa5, 0xf2, 0x5b, 0x49, +}; +static const unsigned char kat752_nonce[] = {0}; +static const unsigned char kat752_persstr[] = { + 0xa3, 0xb7, 0x68, 0xad, 0xcf, 0xe7, 0x6d, 0x61, 0xc9, 0x72, 0xd9, 0x00, + 0xda, 0x8d, 0xff, 0xee, 0xb2, 0xa4, 0x2e, 0x74, 0x02, 0x47, 0xaa, 0x71, + 0x9e, 0xd1, 0xc9, 0x24, 0xd2, 0xd1, 0x0b, 0xd4, +}; +static const unsigned char kat752_addin0[] = {0}; +static const unsigned char kat752_addin1[] = {0}; +static const unsigned char kat752_retbits[] = { + 0x5a, 0x1c, 0x26, 0x80, 0x3f, 0x3f, 0xfd, 0x4d, 0xaf, 0x32, 0x04, 0x2f, + 0xdc, 0xc3, 0x2c, 0x38, 0x12, 0xbb, 0x5e, 0xf1, 0x3b, 0xc2, 0x08, 0xce, + 0xf8, 0x2e, 0xa0, 0x47, 0xd2, 0x89, 0x0a, 0x6f, 0x5d, 0xce, 0xcf, 0x32, + 0xbc, 0xc3, 0x2a, 0x25, 0x85, 0x77, 0x5a, 0xc5, 0xe1, 0xff, 0xaa, 0x8d, + 0xe0, 0x06, 0x64, 0xc5, 0x4f, 0xe0, 0x0a, 0x76, 0x74, 0xb9, 0x85, 0x61, + 0x9e, 0x95, 0x3c, 0x3a, +}; +static const struct drbg_kat_no_reseed kat752_t = { + 1, kat752_entropyin, kat752_nonce, kat752_persstr, + kat752_addin0, kat752_addin1, kat752_retbits +}; +static const struct drbg_kat kat752 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat752_t +}; + +static const unsigned char kat753_entropyin[] = { + 0x0b, 0xbc, 0x89, 0x8f, 0x8d, 0xaf, 0x3f, 0x12, 0xfc, 0x00, 0x9c, 0x84, + 0x6f, 0xe2, 0xce, 0xa2, 0x2f, 0x68, 0x3a, 0x43, 0x2e, 0xea, 0x29, 0x72, + 0x57, 0x31, 0x2d, 0x5a, 0x44, 0xba, 0xc1, 0x31, +}; +static const unsigned char kat753_nonce[] = {0}; +static const unsigned char kat753_persstr[] = { + 0x8d, 0x34, 0xbe, 0x9d, 0x81, 0x10, 0xb8, 0x4b, 0x02, 0xa6, 0x05, 0x08, + 0xde, 0xae, 0x77, 0x3c, 0x1a, 0x80, 0x8f, 0x4e, 0x2a, 0x0e, 0xc8, 0x17, + 0x47, 0xae, 0x2e, 0xc9, 0x23, 0xfe, 0x99, 0xa9, +}; +static const unsigned char kat753_addin0[] = {0}; +static const unsigned char kat753_addin1[] = {0}; +static const unsigned char kat753_retbits[] = { + 0xda, 0x49, 0xe2, 0x4a, 0x6c, 0xb1, 0xd9, 0xe5, 0x1b, 0x98, 0xea, 0x61, + 0x03, 0x62, 0x7d, 0x9a, 0xd0, 0x35, 0x77, 0x0b, 0x7b, 0xdc, 0x76, 0x06, + 0x06, 0xe2, 0xb5, 0xf3, 0x5a, 0xfd, 0x13, 0xb7, 0xa6, 0x1a, 0x4a, 0x18, + 0xfa, 0xc2, 0x52, 0x58, 0x98, 0x5f, 0xa1, 0xfb, 0x2b, 0x88, 0xa7, 0xcc, + 0x17, 0x27, 0x8b, 0x05, 0x39, 0xd7, 0xcf, 0x74, 0xf9, 0x40, 0xf0, 0x08, + 0xee, 0x2c, 0xf4, 0xcd, +}; +static const struct drbg_kat_no_reseed kat753_t = { + 2, kat753_entropyin, kat753_nonce, kat753_persstr, + kat753_addin0, kat753_addin1, kat753_retbits +}; +static const struct drbg_kat kat753 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat753_t +}; + +static const unsigned char kat754_entropyin[] = { + 0x3e, 0xa1, 0xf3, 0xfb, 0x15, 0x36, 0x36, 0xc3, 0x39, 0x82, 0x46, 0x4f, + 0x0e, 0x5b, 0x0d, 0xae, 0xba, 0x59, 0xc3, 0xf1, 0xee, 0x91, 0xa6, 0x12, + 0xc4, 0xf6, 0xa9, 0xdc, 0xfc, 0xd0, 0xa9, 0x78, +}; +static const unsigned char kat754_nonce[] = {0}; +static const unsigned char kat754_persstr[] = { + 0xea, 0x86, 0x71, 0xfc, 0x9c, 0x02, 0x58, 0x4d, 0x69, 0xaf, 0x91, 0xde, + 0x2a, 0xda, 0xce, 0xc1, 0x40, 0x8d, 0x91, 0xd5, 0x12, 0x71, 0x89, 0x45, + 0xed, 0x1e, 0x7d, 0xc0, 0xb6, 0x20, 0xb3, 0x23, +}; +static const unsigned char kat754_addin0[] = {0}; +static const unsigned char kat754_addin1[] = {0}; +static const unsigned char kat754_retbits[] = { + 0x24, 0x29, 0xe7, 0xd8, 0x17, 0xcf, 0xd4, 0xf8, 0x50, 0x09, 0x48, 0xd2, + 0xec, 0x2d, 0xec, 0x02, 0xb7, 0xd0, 0x35, 0xb4, 0xbb, 0x98, 0x61, 0x44, + 0xbb, 0x91, 0x8a, 0x31, 0xbf, 0xd2, 0x26, 0x9e, 0x69, 0x07, 0xc3, 0x4a, + 0xc8, 0xbe, 0xab, 0x69, 0x50, 0x88, 0x69, 0xa4, 0xf0, 0x4b, 0xc3, 0xc2, + 0x3c, 0xcf, 0xba, 0xe5, 0xd5, 0x9e, 0xab, 0x85, 0x7e, 0xce, 0x00, 0x0d, + 0x55, 0x4b, 0x27, 0x3a, +}; +static const struct drbg_kat_no_reseed kat754_t = { + 3, kat754_entropyin, kat754_nonce, kat754_persstr, + kat754_addin0, kat754_addin1, kat754_retbits +}; +static const struct drbg_kat kat754 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat754_t +}; + +static const unsigned char kat755_entropyin[] = { + 0xb6, 0xb2, 0x03, 0x3e, 0x38, 0x2d, 0xec, 0xd2, 0x1e, 0x4e, 0xab, 0xd8, + 0xf1, 0x17, 0x77, 0x61, 0xd0, 0x6a, 0x12, 0xba, 0xe1, 0xcf, 0xed, 0x00, + 0x59, 0xb7, 0xe1, 0x6b, 0xd9, 0xba, 0xb8, 0xd7, +}; +static const unsigned char kat755_nonce[] = {0}; +static const unsigned char kat755_persstr[] = { + 0xc9, 0x9a, 0x49, 0x13, 0x25, 0x43, 0xfc, 0xe4, 0x9b, 0x80, 0x4e, 0x9f, + 0x41, 0x7d, 0x22, 0xe4, 0x9c, 0x46, 0x0b, 0xc4, 0xe6, 0x0a, 0x6d, 0x36, + 0x70, 0x1f, 0xea, 0x56, 0x1b, 0x93, 0x20, 0x3d, +}; +static const unsigned char kat755_addin0[] = {0}; +static const unsigned char kat755_addin1[] = {0}; +static const unsigned char kat755_retbits[] = { + 0x63, 0x62, 0x66, 0x08, 0xb4, 0x46, 0xc7, 0xd0, 0x22, 0x12, 0x20, 0x9d, + 0x0a, 0x38, 0x88, 0xe4, 0x05, 0x34, 0x86, 0x4d, 0x8f, 0x5c, 0xd2, 0x8a, + 0xaf, 0xf0, 0x95, 0x05, 0xee, 0x5e, 0x89, 0x47, 0x51, 0xe5, 0xcb, 0x84, + 0x67, 0xa5, 0xd8, 0x5d, 0x87, 0xa6, 0x75, 0xb7, 0x85, 0x27, 0x24, 0xde, + 0xb0, 0xd1, 0x20, 0x38, 0x03, 0x54, 0x00, 0xc3, 0x40, 0x5f, 0xaf, 0xb1, + 0xa4, 0x7f, 0x88, 0xc8, +}; +static const struct drbg_kat_no_reseed kat755_t = { + 4, kat755_entropyin, kat755_nonce, kat755_persstr, + kat755_addin0, kat755_addin1, kat755_retbits +}; +static const struct drbg_kat kat755 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat755_t +}; + +static const unsigned char kat756_entropyin[] = { + 0xac, 0xc4, 0x65, 0xd1, 0xbf, 0x94, 0xcc, 0xde, 0xec, 0x06, 0xc7, 0x4c, + 0x81, 0x2d, 0xb3, 0xa9, 0x93, 0xc4, 0x08, 0xb5, 0xc2, 0xef, 0x7e, 0xbe, + 0x9b, 0xde, 0xb6, 0xa1, 0xa5, 0x19, 0x76, 0xa7, +}; +static const unsigned char kat756_nonce[] = {0}; +static const unsigned char kat756_persstr[] = { + 0x77, 0x27, 0x8d, 0x47, 0xa1, 0x69, 0xc5, 0x59, 0x51, 0x8d, 0x46, 0xff, + 0xb2, 0x3a, 0xa5, 0x94, 0xef, 0xda, 0xeb, 0xb0, 0x67, 0xc4, 0x8d, 0x4a, + 0x39, 0x2f, 0x60, 0xb9, 0x4c, 0xc1, 0x5b, 0x36, +}; +static const unsigned char kat756_addin0[] = {0}; +static const unsigned char kat756_addin1[] = {0}; +static const unsigned char kat756_retbits[] = { + 0xe0, 0xe6, 0xe4, 0x17, 0xde, 0x8f, 0xc5, 0xd2, 0x12, 0xbd, 0xda, 0x4c, + 0x02, 0x6a, 0x13, 0xd6, 0xea, 0xe4, 0x02, 0x87, 0x4d, 0x62, 0xc3, 0x05, + 0x77, 0xee, 0x4c, 0x34, 0x45, 0xac, 0xe8, 0x54, 0x79, 0xcb, 0xc3, 0xb5, + 0x5b, 0xbb, 0xe1, 0x57, 0x3c, 0x13, 0xf9, 0xb0, 0x24, 0x2d, 0x7e, 0x3f, + 0x6e, 0x7e, 0x91, 0xd9, 0x32, 0xb3, 0xd5, 0xa6, 0xdc, 0xa8, 0xdf, 0x43, + 0xc1, 0x88, 0xae, 0x5e, +}; +static const struct drbg_kat_no_reseed kat756_t = { + 5, kat756_entropyin, kat756_nonce, kat756_persstr, + kat756_addin0, kat756_addin1, kat756_retbits +}; +static const struct drbg_kat kat756 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat756_t +}; + +static const unsigned char kat757_entropyin[] = { + 0x14, 0xb3, 0x34, 0x15, 0xd2, 0x32, 0x1f, 0xbb, 0x10, 0xa7, 0x68, 0xce, + 0xd7, 0x12, 0xc8, 0x99, 0x9f, 0xf2, 0xf1, 0x9b, 0x63, 0x26, 0x4a, 0x81, + 0xad, 0xc2, 0xfd, 0xc1, 0x63, 0x70, 0xb1, 0x85, +}; +static const unsigned char kat757_nonce[] = {0}; +static const unsigned char kat757_persstr[] = { + 0x02, 0x9b, 0x48, 0x80, 0x52, 0x85, 0x34, 0x9c, 0x29, 0x2a, 0x99, 0xee, + 0x68, 0xfc, 0xef, 0xda, 0x1f, 0x61, 0xdd, 0x60, 0xa0, 0x9f, 0x46, 0x16, + 0xcb, 0x2e, 0xfe, 0x4f, 0x8b, 0x14, 0x00, 0x56, +}; +static const unsigned char kat757_addin0[] = {0}; +static const unsigned char kat757_addin1[] = {0}; +static const unsigned char kat757_retbits[] = { + 0x8a, 0x69, 0xfe, 0xb2, 0x6b, 0xe0, 0x25, 0xa3, 0x84, 0x9b, 0xb0, 0xb6, + 0x09, 0x59, 0x71, 0x7d, 0xaa, 0x59, 0xc8, 0x89, 0xc3, 0x83, 0x59, 0x3d, + 0x1f, 0x8d, 0xeb, 0xf5, 0x80, 0x51, 0xeb, 0x46, 0x3d, 0x07, 0xc6, 0x59, + 0xcf, 0xbe, 0x47, 0xe9, 0x42, 0x24, 0xba, 0x18, 0x83, 0x3b, 0x71, 0xd9, + 0x59, 0x05, 0xe0, 0xcd, 0xe7, 0x85, 0x36, 0x4a, 0x87, 0x70, 0x6e, 0x31, + 0x29, 0x7f, 0xb3, 0x23, +}; +static const struct drbg_kat_no_reseed kat757_t = { + 6, kat757_entropyin, kat757_nonce, kat757_persstr, + kat757_addin0, kat757_addin1, kat757_retbits +}; +static const struct drbg_kat kat757 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat757_t +}; + +static const unsigned char kat758_entropyin[] = { + 0x5a, 0x83, 0xaf, 0x23, 0xca, 0xfb, 0x30, 0xe3, 0xa1, 0x8e, 0x28, 0x65, + 0x1b, 0x3c, 0x1b, 0xd0, 0x18, 0x13, 0xc4, 0x42, 0x16, 0xe7, 0xe4, 0x4b, + 0x79, 0x0d, 0x66, 0x64, 0xe2, 0xc3, 0x83, 0x9a, +}; +static const unsigned char kat758_nonce[] = {0}; +static const unsigned char kat758_persstr[] = { + 0xd0, 0xf1, 0x08, 0xae, 0x7c, 0x65, 0xe1, 0x6c, 0xfa, 0x13, 0xe5, 0x58, + 0x22, 0x04, 0xeb, 0x8c, 0xd6, 0xeb, 0xb0, 0x8f, 0x1f, 0x6a, 0x5d, 0x47, + 0x6c, 0x27, 0x52, 0x47, 0xc1, 0xa8, 0x3e, 0xb5, +}; +static const unsigned char kat758_addin0[] = {0}; +static const unsigned char kat758_addin1[] = {0}; +static const unsigned char kat758_retbits[] = { + 0xe6, 0x43, 0x97, 0xf0, 0xee, 0xa0, 0xd3, 0x3d, 0x97, 0x15, 0xbc, 0xef, + 0x2e, 0xe7, 0xee, 0xc2, 0x2a, 0x86, 0xe8, 0xd0, 0x66, 0xa2, 0x5e, 0x44, + 0x70, 0x6d, 0xc6, 0x88, 0xc4, 0x99, 0xbd, 0x7e, 0xf0, 0x81, 0x72, 0xc8, + 0xcf, 0x36, 0xe3, 0xbd, 0xdf, 0x79, 0xf2, 0xbe, 0xc1, 0x36, 0xa0, 0x1a, + 0xad, 0x84, 0x49, 0x30, 0xe4, 0x8a, 0x16, 0xfe, 0x18, 0x00, 0xd6, 0x9f, + 0xb0, 0xf4, 0xe1, 0x63, +}; +static const struct drbg_kat_no_reseed kat758_t = { + 7, kat758_entropyin, kat758_nonce, kat758_persstr, + kat758_addin0, kat758_addin1, kat758_retbits +}; +static const struct drbg_kat kat758 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat758_t +}; + +static const unsigned char kat759_entropyin[] = { + 0x1d, 0xc2, 0x4d, 0xd9, 0xd6, 0xa4, 0x05, 0xa0, 0x07, 0xbd, 0x08, 0x2c, + 0xfb, 0xdb, 0xd8, 0x63, 0x18, 0x5e, 0x07, 0x2b, 0x67, 0xd6, 0x63, 0xb1, + 0x4d, 0x7e, 0x8f, 0x16, 0x90, 0x0c, 0xfc, 0xe6, +}; +static const unsigned char kat759_nonce[] = {0}; +static const unsigned char kat759_persstr[] = { + 0x0e, 0xca, 0x85, 0xdd, 0xcb, 0x6f, 0x38, 0xff, 0x36, 0x83, 0x96, 0x8e, + 0xf9, 0x8b, 0x52, 0x40, 0x84, 0x28, 0xdc, 0xae, 0x2e, 0xc3, 0xb0, 0xfa, + 0x4c, 0x68, 0x90, 0x6c, 0x1b, 0x64, 0x81, 0xcd, +}; +static const unsigned char kat759_addin0[] = {0}; +static const unsigned char kat759_addin1[] = {0}; +static const unsigned char kat759_retbits[] = { + 0x15, 0x69, 0x38, 0x56, 0x6f, 0xc2, 0x5d, 0x49, 0x3c, 0x1c, 0x60, 0xd8, + 0x92, 0x58, 0x19, 0xa6, 0xe5, 0x9a, 0x24, 0x79, 0xd7, 0x5f, 0x3e, 0xff, + 0xf1, 0x6d, 0x46, 0xaa, 0xda, 0x68, 0x40, 0x31, 0x40, 0x40, 0x79, 0x55, + 0xc1, 0xfd, 0x9d, 0x2a, 0x89, 0x0b, 0xcf, 0x67, 0xac, 0x9b, 0x3b, 0x82, + 0xd1, 0xd6, 0xcf, 0x78, 0x8f, 0xd8, 0x63, 0xda, 0x3d, 0x41, 0xac, 0x6e, + 0x34, 0xf2, 0x17, 0xa0, +}; +static const struct drbg_kat_no_reseed kat759_t = { + 8, kat759_entropyin, kat759_nonce, kat759_persstr, + kat759_addin0, kat759_addin1, kat759_retbits +}; +static const struct drbg_kat kat759 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat759_t +}; + +static const unsigned char kat760_entropyin[] = { + 0xec, 0xb7, 0xe6, 0x1a, 0x47, 0x92, 0xa2, 0x11, 0x52, 0x13, 0xd1, 0x41, + 0xd2, 0x07, 0x10, 0xe8, 0xa3, 0x21, 0x2d, 0x78, 0x47, 0xdd, 0x53, 0xdf, + 0xa5, 0xd4, 0xd7, 0x77, 0x7d, 0x10, 0xd9, 0x7e, +}; +static const unsigned char kat760_nonce[] = {0}; +static const unsigned char kat760_persstr[] = { + 0xbf, 0x09, 0x23, 0x5d, 0x30, 0xcd, 0x69, 0xad, 0xa2, 0x85, 0x94, 0x8f, + 0xe1, 0xbe, 0x2e, 0x0c, 0x4e, 0x14, 0x5a, 0xc8, 0x48, 0x5d, 0x12, 0xca, + 0x7b, 0x82, 0x39, 0x13, 0x6d, 0xa1, 0xc6, 0x38, +}; +static const unsigned char kat760_addin0[] = {0}; +static const unsigned char kat760_addin1[] = {0}; +static const unsigned char kat760_retbits[] = { + 0x86, 0x8d, 0xb5, 0x83, 0x2b, 0x2e, 0x9c, 0x3d, 0x2c, 0x97, 0x94, 0xb1, + 0x74, 0xb3, 0x28, 0xed, 0x2c, 0xc8, 0x6e, 0x41, 0x01, 0x78, 0x63, 0xea, + 0xbc, 0x4a, 0x7c, 0x09, 0x6a, 0x48, 0x7b, 0xfe, 0x4d, 0x67, 0xcc, 0xf9, + 0x3a, 0x5e, 0x2c, 0x67, 0xd8, 0x8d, 0xbd, 0x8f, 0x14, 0x19, 0xb2, 0xa9, + 0xf1, 0x29, 0x3e, 0x7a, 0x70, 0xe8, 0xe8, 0xfe, 0x93, 0xe2, 0x15, 0x64, + 0x96, 0xb0, 0xfa, 0x54, +}; +static const struct drbg_kat_no_reseed kat760_t = { + 9, kat760_entropyin, kat760_nonce, kat760_persstr, + kat760_addin0, kat760_addin1, kat760_retbits +}; +static const struct drbg_kat kat760 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat760_t +}; + +static const unsigned char kat761_entropyin[] = { + 0xe5, 0x57, 0x27, 0xc5, 0x90, 0xec, 0x3a, 0xc1, 0x08, 0xf4, 0xe5, 0xfe, + 0xc3, 0x9a, 0x2d, 0x34, 0xbf, 0x89, 0xae, 0xe4, 0xe2, 0x15, 0xdc, 0xc9, + 0x70, 0xdb, 0x8a, 0xe8, 0xf6, 0xa0, 0xe4, 0xa8, +}; +static const unsigned char kat761_nonce[] = {0}; +static const unsigned char kat761_persstr[] = { + 0xad, 0xe3, 0xd2, 0x8a, 0x8e, 0x43, 0xaa, 0xb8, 0xfd, 0x31, 0xde, 0xc8, + 0xbd, 0xbe, 0x5c, 0x41, 0xc0, 0xb3, 0xf7, 0xf6, 0x9a, 0x2d, 0x0a, 0xad, + 0xa5, 0x60, 0x8a, 0xb0, 0xe5, 0x7c, 0x8b, 0xb0, +}; +static const unsigned char kat761_addin0[] = {0}; +static const unsigned char kat761_addin1[] = {0}; +static const unsigned char kat761_retbits[] = { + 0x19, 0x87, 0x42, 0x29, 0x9f, 0xee, 0xcf, 0x60, 0x83, 0xe3, 0xa0, 0xbe, + 0xf7, 0x5a, 0xc2, 0xb9, 0x3d, 0xe2, 0xde, 0xfa, 0x65, 0x25, 0x88, 0x3a, + 0x55, 0xf8, 0x82, 0x47, 0xdc, 0x69, 0x02, 0x27, 0x9f, 0x79, 0x24, 0x02, + 0xfa, 0xff, 0xe4, 0xa8, 0x12, 0x13, 0xe4, 0x0f, 0xac, 0xb8, 0x73, 0xcd, + 0x49, 0x9e, 0x4b, 0x0f, 0x7f, 0x0f, 0xf5, 0x92, 0xbc, 0x06, 0x69, 0x9d, + 0xb7, 0x73, 0xb8, 0x99, +}; +static const struct drbg_kat_no_reseed kat761_t = { + 10, kat761_entropyin, kat761_nonce, kat761_persstr, + kat761_addin0, kat761_addin1, kat761_retbits +}; +static const struct drbg_kat kat761 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat761_t +}; + +static const unsigned char kat762_entropyin[] = { + 0xc3, 0x80, 0xda, 0xfd, 0x84, 0xf2, 0x78, 0x2b, 0x75, 0x39, 0xca, 0x1c, + 0x3a, 0xd9, 0x71, 0x5f, 0xe6, 0xb1, 0x80, 0x53, 0x10, 0xa5, 0x78, 0xaf, + 0xcf, 0xfc, 0x92, 0x10, 0xac, 0x12, 0x7d, 0xed, +}; +static const unsigned char kat762_nonce[] = {0}; +static const unsigned char kat762_persstr[] = { + 0xb2, 0x98, 0x53, 0x3d, 0x9c, 0x74, 0xa0, 0xd9, 0xb9, 0xaa, 0x0d, 0x82, + 0xed, 0xc4, 0x34, 0x00, 0x2b, 0x4d, 0x13, 0x72, 0x31, 0x8c, 0x28, 0x65, + 0xb7, 0x70, 0x0a, 0x5b, 0x7e, 0xbe, 0xab, 0xf0, +}; +static const unsigned char kat762_addin0[] = {0}; +static const unsigned char kat762_addin1[] = {0}; +static const unsigned char kat762_retbits[] = { + 0x9a, 0xec, 0x7a, 0x5b, 0xa3, 0xe0, 0x91, 0xe6, 0xa6, 0xc9, 0x9e, 0x04, + 0x39, 0x5a, 0xf2, 0xab, 0x2e, 0xea, 0xa1, 0xef, 0x08, 0x9b, 0xaa, 0x51, + 0xdc, 0x23, 0xea, 0x31, 0x60, 0x3b, 0x89, 0x9e, 0xa2, 0x98, 0x31, 0x76, + 0x03, 0x35, 0x4f, 0x38, 0xfd, 0x9c, 0x36, 0xc2, 0xa5, 0x3a, 0x05, 0xc1, + 0xe4, 0x68, 0xc6, 0xae, 0x32, 0xfe, 0x4c, 0x3b, 0x00, 0x56, 0xec, 0x0d, + 0x5e, 0xff, 0x22, 0xb6, +}; +static const struct drbg_kat_no_reseed kat762_t = { + 11, kat762_entropyin, kat762_nonce, kat762_persstr, + kat762_addin0, kat762_addin1, kat762_retbits +}; +static const struct drbg_kat kat762 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat762_t +}; + +static const unsigned char kat763_entropyin[] = { + 0xf1, 0x58, 0x21, 0x05, 0x35, 0xa4, 0x04, 0xf6, 0xcb, 0x4f, 0x95, 0x50, + 0xb3, 0xf2, 0x6e, 0x3f, 0x77, 0x7a, 0x9f, 0xaa, 0x16, 0x47, 0x74, 0x74, + 0x9f, 0x48, 0xef, 0x4a, 0x8c, 0xe0, 0x94, 0x49, +}; +static const unsigned char kat763_nonce[] = {0}; +static const unsigned char kat763_persstr[] = { + 0xd5, 0x6f, 0xa8, 0x73, 0xcc, 0x76, 0x2f, 0x64, 0xb3, 0xab, 0x31, 0xb6, + 0x29, 0x1e, 0x24, 0x7e, 0xfc, 0xa7, 0x1f, 0xca, 0x90, 0x45, 0x3c, 0xff, + 0xf1, 0xf2, 0xb0, 0xb3, 0xe2, 0x65, 0xc4, 0x75, +}; +static const unsigned char kat763_addin0[] = {0}; +static const unsigned char kat763_addin1[] = {0}; +static const unsigned char kat763_retbits[] = { + 0x03, 0x4b, 0x41, 0xb2, 0xa9, 0xa6, 0x76, 0x4e, 0x5e, 0xd1, 0xed, 0xb0, + 0x0a, 0xea, 0x31, 0x85, 0xfe, 0x43, 0xeb, 0x81, 0xb4, 0x25, 0x3e, 0x7c, + 0xad, 0xe9, 0x79, 0x56, 0xfc, 0xcd, 0x9f, 0xc5, 0x78, 0x23, 0x28, 0xfa, + 0xda, 0x8e, 0xd5, 0x20, 0x8f, 0x1d, 0x46, 0xb1, 0xf8, 0x72, 0xe3, 0x33, + 0xb9, 0xe2, 0xf0, 0x36, 0xa5, 0x17, 0x46, 0xcc, 0xaf, 0x39, 0xe1, 0xa8, + 0x5a, 0xf8, 0xeb, 0x23, +}; +static const struct drbg_kat_no_reseed kat763_t = { + 12, kat763_entropyin, kat763_nonce, kat763_persstr, + kat763_addin0, kat763_addin1, kat763_retbits +}; +static const struct drbg_kat kat763 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat763_t +}; + +static const unsigned char kat764_entropyin[] = { + 0x97, 0x3a, 0x99, 0xb7, 0xe0, 0x3b, 0x39, 0x3e, 0xf6, 0x89, 0xaf, 0x8c, + 0xb9, 0x0d, 0x74, 0x36, 0xca, 0xe1, 0x0e, 0x48, 0x14, 0x81, 0x4a, 0xed, + 0x34, 0x2d, 0xd3, 0x8e, 0x2a, 0x73, 0x46, 0xe3, +}; +static const unsigned char kat764_nonce[] = {0}; +static const unsigned char kat764_persstr[] = { + 0x30, 0x0d, 0x3d, 0x2a, 0xdb, 0xac, 0x6d, 0x7d, 0xda, 0xdd, 0xe0, 0x7e, + 0x08, 0xb0, 0xd7, 0x2b, 0x5b, 0x39, 0xff, 0x36, 0x03, 0x1e, 0x81, 0xd8, + 0x30, 0x39, 0x58, 0x24, 0x2e, 0x3c, 0xf0, 0x3f, +}; +static const unsigned char kat764_addin0[] = {0}; +static const unsigned char kat764_addin1[] = {0}; +static const unsigned char kat764_retbits[] = { + 0x62, 0x01, 0x28, 0x42, 0x99, 0x1f, 0xe3, 0x22, 0x0f, 0x1d, 0x96, 0x10, + 0x45, 0xf0, 0x28, 0xa3, 0xb6, 0xa7, 0x29, 0xf5, 0xa4, 0x51, 0xb8, 0xc2, + 0xec, 0x90, 0xe1, 0xc1, 0xe2, 0xb1, 0xe4, 0x04, 0x2e, 0x97, 0x26, 0x7e, + 0x1b, 0xfa, 0x17, 0x82, 0xa1, 0x0c, 0x3c, 0x29, 0x50, 0x9b, 0xc8, 0xf2, + 0xad, 0xff, 0xd3, 0xd6, 0x95, 0x86, 0x1e, 0x15, 0x94, 0xda, 0x91, 0x70, + 0x28, 0x30, 0xfa, 0xf7, +}; +static const struct drbg_kat_no_reseed kat764_t = { + 13, kat764_entropyin, kat764_nonce, kat764_persstr, + kat764_addin0, kat764_addin1, kat764_retbits +}; +static const struct drbg_kat kat764 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat764_t +}; + +static const unsigned char kat765_entropyin[] = { + 0x22, 0xd1, 0xd8, 0xc8, 0xbd, 0xe7, 0x6a, 0x23, 0x9d, 0x03, 0x28, 0x04, + 0x71, 0x7f, 0xac, 0xe1, 0x6d, 0x77, 0xb5, 0x11, 0x70, 0xd0, 0xf5, 0x3c, + 0xcb, 0xcc, 0xa4, 0xea, 0xff, 0x4f, 0xb3, 0x15, +}; +static const unsigned char kat765_nonce[] = {0}; +static const unsigned char kat765_persstr[] = { + 0x5d, 0x3a, 0x7d, 0x40, 0xfd, 0xf9, 0x5b, 0x98, 0x45, 0x4b, 0xca, 0x03, + 0xc6, 0xfc, 0xbf, 0x6a, 0xbf, 0x38, 0x07, 0xde, 0x75, 0x17, 0x1b, 0x55, + 0xba, 0xb2, 0xdb, 0x5a, 0x3f, 0x5f, 0x12, 0xf2, +}; +static const unsigned char kat765_addin0[] = {0}; +static const unsigned char kat765_addin1[] = {0}; +static const unsigned char kat765_retbits[] = { + 0x10, 0x07, 0xe1, 0x1f, 0x48, 0xe3, 0xc4, 0x81, 0x3f, 0xdd, 0xd6, 0x73, + 0x10, 0xdb, 0x56, 0xd6, 0x7a, 0x49, 0xfe, 0x93, 0xe4, 0x5e, 0x61, 0xb3, + 0x7b, 0xa8, 0x14, 0x85, 0xdf, 0x6a, 0x62, 0xee, 0x57, 0xca, 0x41, 0xfa, + 0x1d, 0x98, 0x7f, 0x46, 0x7c, 0x29, 0x39, 0x79, 0x0a, 0x20, 0x42, 0x1c, + 0x2b, 0x4f, 0x70, 0xb2, 0x8f, 0xb0, 0xb9, 0x0b, 0xbe, 0xab, 0x1a, 0xc0, + 0xae, 0x88, 0x4f, 0x1a, +}; +static const struct drbg_kat_no_reseed kat765_t = { + 14, kat765_entropyin, kat765_nonce, kat765_persstr, + kat765_addin0, kat765_addin1, kat765_retbits +}; +static const struct drbg_kat kat765 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat765_t +}; + +static const unsigned char kat766_entropyin[] = { + 0x50, 0xb9, 0x65, 0x42, 0xa1, 0xf2, 0xb8, 0xb0, 0x50, 0x74, 0x05, 0x1f, + 0xe8, 0xfb, 0x0e, 0x45, 0xad, 0xbb, 0xd5, 0x56, 0x0e, 0x35, 0x94, 0xe1, + 0x2d, 0x48, 0x5f, 0xe1, 0xbf, 0xcb, 0x74, 0x1f, +}; +static const unsigned char kat766_nonce[] = {0}; +static const unsigned char kat766_persstr[] = { + 0x82, 0x0c, 0x30, 0x30, 0xf9, 0x7b, 0x3e, 0xad, 0x81, 0xa9, 0x3b, 0x88, + 0xb8, 0x71, 0x93, 0x72, 0x78, 0xfd, 0x3d, 0x71, 0x1d, 0x20, 0x85, 0xd9, + 0x28, 0x0c, 0xba, 0x39, 0x46, 0x73, 0xb1, 0x7e, +}; +static const unsigned char kat766_addin0[] = { + 0x1f, 0x16, 0x32, 0x05, 0x88, 0x06, 0xd6, 0xd8, 0xe2, 0x31, 0x28, 0x8f, + 0x3b, 0x15, 0xa3, 0xc3, 0x24, 0xe9, 0x0c, 0xce, 0xf4, 0x89, 0x1b, 0xd5, + 0x95, 0xf0, 0x9c, 0x3e, 0x80, 0xe2, 0x74, 0x69, +}; +static const unsigned char kat766_addin1[] = { + 0x5c, 0xad, 0xc8, 0xbf, 0xd8, 0x6d, 0x2a, 0x5d, 0x44, 0xf9, 0x21, 0xf6, + 0x4c, 0x7d, 0x15, 0x30, 0x01, 0xb9, 0xbd, 0xd7, 0xca, 0xa6, 0x61, 0x86, + 0x39, 0xb9, 0x48, 0xeb, 0xfa, 0xd5, 0xcb, 0x8a, +}; +static const unsigned char kat766_retbits[] = { + 0x02, 0xb7, 0x6a, 0x66, 0xf1, 0x03, 0xe9, 0x8d, 0x45, 0x0e, 0x25, 0xe0, + 0x9c, 0x35, 0x33, 0x77, 0x47, 0xd9, 0x87, 0x47, 0x1d, 0x2b, 0x3d, 0x81, + 0xe0, 0x3b, 0xe2, 0x4c, 0x7e, 0x98, 0x54, 0x17, 0xa3, 0x2a, 0xcd, 0x72, + 0xbc, 0x0a, 0x6e, 0xdd, 0xd9, 0x87, 0x14, 0x10, 0xda, 0xcb, 0x92, 0x1c, + 0x65, 0x92, 0x49, 0xb4, 0xe2, 0xb3, 0x68, 0xc4, 0xac, 0x85, 0x80, 0xfb, + 0x5d, 0xb5, 0x59, 0xbc, +}; +static const struct drbg_kat_no_reseed kat766_t = { + 0, kat766_entropyin, kat766_nonce, kat766_persstr, + kat766_addin0, kat766_addin1, kat766_retbits +}; +static const struct drbg_kat kat766 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat766_t +}; + +static const unsigned char kat767_entropyin[] = { + 0xff, 0x5f, 0x4b, 0x75, 0x4e, 0x8b, 0x36, 0x4f, 0x6d, 0xf0, 0xc5, 0xef, + 0xfb, 0xa5, 0xf1, 0xc0, 0x36, 0xde, 0x49, 0xc4, 0xb3, 0x8c, 0xd8, 0xd2, + 0x30, 0xee, 0x1f, 0x14, 0xd7, 0x23, 0x4e, 0xf5, +}; +static const unsigned char kat767_nonce[] = {0}; +static const unsigned char kat767_persstr[] = { + 0x99, 0x4e, 0xb3, 0x39, 0xf6, 0x40, 0x34, 0x00, 0x5d, 0x2e, 0x18, 0x35, + 0x28, 0x99, 0xe7, 0x7d, 0xf4, 0x46, 0xe2, 0x85, 0xc3, 0x43, 0x06, 0x31, + 0xd5, 0x57, 0x49, 0x8a, 0xac, 0x4f, 0x42, 0x80, +}; +static const unsigned char kat767_addin0[] = { + 0xe1, 0x82, 0x48, 0x32, 0xd5, 0xfc, 0x2a, 0x6d, 0xea, 0x54, 0x4c, 0xac, + 0x2a, 0xb7, 0x33, 0x06, 0xd6, 0x56, 0x6b, 0xde, 0x98, 0xcc, 0x8f, 0x94, + 0x25, 0xd0, 0x64, 0xb8, 0x60, 0xa9, 0xb2, 0x18, +}; +static const unsigned char kat767_addin1[] = { + 0xc0, 0x8b, 0x42, 0x43, 0x3a, 0x78, 0xfd, 0x39, 0x3a, 0x34, 0xff, 0xc2, + 0x47, 0x24, 0xd4, 0x79, 0xaf, 0x08, 0xc3, 0x68, 0x82, 0x79, 0x9c, 0x13, + 0x41, 0x65, 0xd9, 0x8b, 0x28, 0x66, 0xdc, 0x0a, +}; +static const unsigned char kat767_retbits[] = { + 0x1e, 0xfa, 0x34, 0xae, 0xd0, 0x7d, 0xd5, 0x7b, 0xde, 0x97, 0x41, 0xb8, + 0xd1, 0x90, 0x7d, 0x28, 0xe8, 0xc1, 0xac, 0x71, 0x60, 0x1d, 0xf3, 0x7e, + 0xf4, 0x29, 0x5e, 0x6f, 0xfb, 0x67, 0xf6, 0xa1, 0xc4, 0xc1, 0x3e, 0x5d, + 0xef, 0x65, 0xd5, 0x05, 0xe2, 0x40, 0x8a, 0xeb, 0x82, 0x94, 0x89, 0x99, + 0xca, 0x1f, 0x9c, 0x91, 0x13, 0xb9, 0x9a, 0x6b, 0x59, 0xff, 0x7f, 0x0c, + 0xc3, 0xdc, 0x6e, 0x92, +}; +static const struct drbg_kat_no_reseed kat767_t = { + 1, kat767_entropyin, kat767_nonce, kat767_persstr, + kat767_addin0, kat767_addin1, kat767_retbits +}; +static const struct drbg_kat kat767 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat767_t +}; + +static const unsigned char kat768_entropyin[] = { + 0x82, 0x85, 0x98, 0x8e, 0x78, 0x65, 0xd0, 0xa0, 0xfe, 0x1e, 0xeb, 0xf7, + 0xec, 0x00, 0x2b, 0x0b, 0x49, 0xd0, 0x1b, 0x8f, 0x88, 0x05, 0x86, 0x6b, + 0x27, 0xc7, 0xf2, 0x7f, 0xc2, 0xb1, 0x46, 0x29, +}; +static const unsigned char kat768_nonce[] = {0}; +static const unsigned char kat768_persstr[] = { + 0x11, 0x61, 0x77, 0xa6, 0x4b, 0xa2, 0x70, 0x97, 0xcc, 0xa8, 0xe4, 0x42, + 0x07, 0x7b, 0x11, 0x96, 0x10, 0x39, 0xef, 0x37, 0xaa, 0xc9, 0x59, 0x3b, + 0x43, 0x0b, 0x9a, 0xa2, 0xc7, 0x3f, 0xfb, 0x27, +}; +static const unsigned char kat768_addin0[] = { + 0x3c, 0xf5, 0x97, 0x52, 0x47, 0xcc, 0x5c, 0x28, 0xf2, 0x10, 0xa1, 0x48, + 0x9a, 0xa4, 0x92, 0x76, 0x8e, 0x57, 0xac, 0x2a, 0x97, 0xf3, 0x99, 0xbe, + 0xed, 0x36, 0x81, 0x73, 0xea, 0x35, 0x6c, 0x13, +}; +static const unsigned char kat768_addin1[] = { + 0x1a, 0x78, 0x05, 0x5c, 0xd3, 0xf2, 0x90, 0x74, 0x50, 0x7a, 0x23, 0x2f, + 0x0d, 0x03, 0xe0, 0x9c, 0x0b, 0x56, 0x9d, 0xba, 0x24, 0xda, 0x1b, 0x96, + 0x71, 0x24, 0x2d, 0x94, 0x0d, 0x8f, 0x46, 0x43, +}; +static const unsigned char kat768_retbits[] = { + 0x90, 0x3d, 0x49, 0x8f, 0x58, 0x85, 0x65, 0xb2, 0x5b, 0xa9, 0x77, 0x40, + 0xc3, 0x4a, 0x3c, 0x57, 0x3e, 0x64, 0x34, 0x65, 0xc7, 0xd1, 0x28, 0xd9, + 0xc1, 0xf8, 0x76, 0x3c, 0x77, 0x96, 0x05, 0x64, 0x85, 0xc6, 0x57, 0xe7, + 0x32, 0xb1, 0xa0, 0x60, 0x32, 0x59, 0x93, 0x11, 0x6c, 0xde, 0xdd, 0xe7, + 0x1b, 0x1a, 0x84, 0x68, 0xce, 0x56, 0x54, 0x0f, 0xbe, 0xd0, 0xe7, 0x18, + 0x67, 0x20, 0xcf, 0x76, +}; +static const struct drbg_kat_no_reseed kat768_t = { + 2, kat768_entropyin, kat768_nonce, kat768_persstr, + kat768_addin0, kat768_addin1, kat768_retbits +}; +static const struct drbg_kat kat768 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat768_t +}; + +static const unsigned char kat769_entropyin[] = { + 0xc4, 0xd1, 0xd1, 0xfd, 0x1e, 0x19, 0x8f, 0xcb, 0x07, 0xb9, 0x1d, 0x50, + 0x9e, 0x2d, 0x16, 0xf7, 0xbb, 0x65, 0x28, 0xbc, 0xa5, 0x75, 0xf4, 0x64, + 0x32, 0x15, 0x8e, 0x32, 0x17, 0xaf, 0x75, 0x92, +}; +static const unsigned char kat769_nonce[] = {0}; +static const unsigned char kat769_persstr[] = { + 0xf6, 0x85, 0x11, 0xdd, 0xea, 0x28, 0x88, 0x21, 0x6d, 0x45, 0x51, 0x99, + 0x0c, 0xae, 0xaf, 0x02, 0x0a, 0xe8, 0x37, 0x1b, 0x73, 0x48, 0x20, 0x5b, + 0xf6, 0x28, 0x66, 0xae, 0x38, 0x99, 0xca, 0xb5, +}; +static const unsigned char kat769_addin0[] = { + 0x4a, 0x3e, 0xdd, 0xf9, 0xa9, 0x35, 0xa1, 0xac, 0x41, 0x7e, 0xdf, 0xd7, + 0x53, 0x8d, 0xcc, 0xbd, 0xe1, 0xc1, 0x99, 0x9d, 0x8a, 0x8e, 0x4e, 0x1f, + 0x26, 0x7d, 0xb7, 0x16, 0x5a, 0x98, 0x19, 0x0b, +}; +static const unsigned char kat769_addin1[] = { + 0x55, 0xde, 0x69, 0x00, 0xc6, 0x5d, 0x57, 0xb3, 0x5b, 0xa1, 0x99, 0x45, + 0xbe, 0x54, 0x53, 0xe7, 0x37, 0x4f, 0x94, 0x68, 0x06, 0x61, 0x85, 0x07, + 0x29, 0x02, 0xc3, 0xd0, 0x85, 0x66, 0x3e, 0xd5, +}; +static const unsigned char kat769_retbits[] = { + 0xdf, 0x69, 0xb3, 0xdd, 0xd2, 0x42, 0xda, 0x1c, 0x06, 0x2f, 0x13, 0x10, + 0x96, 0xeb, 0xa5, 0xaf, 0x63, 0x3e, 0x4a, 0xe9, 0xff, 0x2e, 0xab, 0x57, + 0xc7, 0x0b, 0x96, 0x10, 0x18, 0x49, 0x62, 0x80, 0x0b, 0xad, 0x8c, 0x4b, + 0x90, 0x83, 0x14, 0x53, 0x9a, 0x30, 0x50, 0x43, 0xa4, 0x1d, 0x6e, 0x9e, + 0x4f, 0x11, 0x9c, 0x48, 0x02, 0x0c, 0xf7, 0x27, 0xc9, 0x09, 0x90, 0x14, + 0x36, 0x27, 0xb0, 0x9d, +}; +static const struct drbg_kat_no_reseed kat769_t = { + 3, kat769_entropyin, kat769_nonce, kat769_persstr, + kat769_addin0, kat769_addin1, kat769_retbits +}; +static const struct drbg_kat kat769 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat769_t +}; + +static const unsigned char kat770_entropyin[] = { + 0xc6, 0xc6, 0xcb, 0xe9, 0x64, 0xc9, 0xce, 0xb9, 0x45, 0x72, 0x62, 0x3b, + 0x12, 0xcc, 0x9a, 0xdd, 0x6c, 0x7c, 0xef, 0x72, 0x92, 0x49, 0x8a, 0x22, + 0x18, 0x47, 0x75, 0x4c, 0x3d, 0xef, 0x00, 0xc1, +}; +static const unsigned char kat770_nonce[] = {0}; +static const unsigned char kat770_persstr[] = { + 0x99, 0xd3, 0xb0, 0xfd, 0x7b, 0xe5, 0x4d, 0xb4, 0xba, 0x45, 0x72, 0xf9, + 0x63, 0x62, 0x1a, 0x88, 0xf2, 0x9e, 0x97, 0xe8, 0x94, 0xa2, 0x4c, 0xd5, + 0xa1, 0x3f, 0xe7, 0xb3, 0x51, 0x32, 0xaa, 0xf5, +}; +static const unsigned char kat770_addin0[] = { + 0x31, 0x71, 0xa5, 0x92, 0x55, 0x07, 0xac, 0xf8, 0x26, 0x4b, 0x1f, 0x37, + 0x3f, 0xf2, 0xdf, 0x36, 0xa1, 0x8f, 0xb0, 0x96, 0xb8, 0x3e, 0xc7, 0x9e, + 0xd4, 0x8e, 0x03, 0x51, 0xa2, 0xd7, 0xc7, 0x48, +}; +static const unsigned char kat770_addin1[] = { + 0xcb, 0xb6, 0x29, 0xb1, 0xb0, 0xa0, 0x4c, 0x71, 0xd2, 0x17, 0x3b, 0x24, + 0x5c, 0x23, 0xb9, 0x76, 0x79, 0xd7, 0x75, 0xce, 0x05, 0x15, 0x07, 0xe3, + 0x61, 0xf8, 0x52, 0x7f, 0xc6, 0x20, 0xd7, 0x8b, +}; +static const unsigned char kat770_retbits[] = { + 0x28, 0xb9, 0x83, 0xf6, 0x3d, 0xc5, 0x63, 0x14, 0xe5, 0x39, 0xcd, 0xfd, + 0xb6, 0x6d, 0xa6, 0xb0, 0x6d, 0xb6, 0x34, 0x8f, 0x0d, 0x28, 0x47, 0x5d, + 0x12, 0x42, 0x1d, 0x91, 0x04, 0xba, 0x74, 0xec, 0x0f, 0xcb, 0x85, 0x1c, + 0xca, 0xdd, 0x82, 0xc4, 0xaf, 0x57, 0x78, 0xef, 0xbc, 0x82, 0xe1, 0x86, + 0x3a, 0x0c, 0xb5, 0xba, 0x4b, 0x9a, 0x94, 0x27, 0x37, 0x9c, 0x06, 0xe9, + 0x73, 0x27, 0x87, 0xe6, +}; +static const struct drbg_kat_no_reseed kat770_t = { + 4, kat770_entropyin, kat770_nonce, kat770_persstr, + kat770_addin0, kat770_addin1, kat770_retbits +}; +static const struct drbg_kat kat770 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat770_t +}; + +static const unsigned char kat771_entropyin[] = { + 0x67, 0x64, 0x26, 0xa8, 0x2f, 0x58, 0x28, 0x9e, 0xcd, 0xf7, 0x68, 0x03, + 0xab, 0x0b, 0xd7, 0x5f, 0x18, 0xe4, 0x4c, 0x4d, 0x0e, 0x26, 0x4e, 0x4a, + 0x59, 0x29, 0x2a, 0x9b, 0x6d, 0xd4, 0x5e, 0x6e, +}; +static const unsigned char kat771_nonce[] = {0}; +static const unsigned char kat771_persstr[] = { + 0xc6, 0xdf, 0xcc, 0xc3, 0xd2, 0x3c, 0x5c, 0x4c, 0xfd, 0x1f, 0xb9, 0x98, + 0xf4, 0xa3, 0xcf, 0xb1, 0x6c, 0xfc, 0xb0, 0x5a, 0xb3, 0x0e, 0xee, 0x37, + 0xc1, 0xd3, 0xef, 0x62, 0xdc, 0x66, 0xbc, 0xee, +}; +static const unsigned char kat771_addin0[] = { + 0xc5, 0x49, 0xac, 0x10, 0x4d, 0x3d, 0xdf, 0xb3, 0x6e, 0xd9, 0xda, 0x29, + 0x29, 0x7f, 0x30, 0x23, 0x5f, 0x9a, 0x14, 0xc5, 0x1f, 0x24, 0x12, 0xb7, + 0x3a, 0x16, 0x4d, 0x2b, 0x3d, 0x37, 0xb0, 0x2b, +}; +static const unsigned char kat771_addin1[] = { + 0x6d, 0x54, 0xf9, 0x4e, 0x3a, 0x2f, 0x26, 0x3a, 0x05, 0x17, 0x20, 0x66, + 0x8c, 0x9c, 0xeb, 0x2e, 0xe9, 0xb4, 0x63, 0x6f, 0xe5, 0x4c, 0x10, 0x51, + 0x23, 0xf1, 0x5b, 0xad, 0xfc, 0x8e, 0xde, 0x33, +}; +static const unsigned char kat771_retbits[] = { + 0xd4, 0x93, 0xc5, 0xda, 0xa9, 0x36, 0x18, 0xb4, 0x45, 0x26, 0xb6, 0xa0, + 0x91, 0xb3, 0x7a, 0x4c, 0x62, 0xc4, 0x22, 0xcc, 0x05, 0x69, 0xb8, 0x8a, + 0xfb, 0xf5, 0x96, 0xd5, 0x68, 0xf3, 0xbf, 0xc5, 0x13, 0x62, 0xab, 0xf1, + 0x2e, 0xb9, 0xb6, 0x23, 0xe7, 0x06, 0x59, 0x06, 0xe8, 0x8e, 0x52, 0xff, + 0x67, 0x1d, 0xbe, 0xb3, 0x74, 0x26, 0xbf, 0x0c, 0x2d, 0x75, 0x8e, 0xfe, + 0xab, 0x5c, 0x66, 0x3f, +}; +static const struct drbg_kat_no_reseed kat771_t = { + 5, kat771_entropyin, kat771_nonce, kat771_persstr, + kat771_addin0, kat771_addin1, kat771_retbits +}; +static const struct drbg_kat kat771 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat771_t +}; + +static const unsigned char kat772_entropyin[] = { + 0x17, 0x9c, 0x71, 0x22, 0x1d, 0xe3, 0xeb, 0x24, 0x45, 0x01, 0xe0, 0x74, + 0xe0, 0x04, 0xd6, 0x1f, 0x46, 0x6f, 0xab, 0xfc, 0x8e, 0x7c, 0x7b, 0xd5, + 0x75, 0xfa, 0x25, 0x61, 0x7d, 0x32, 0xd3, 0xe3, +}; +static const unsigned char kat772_nonce[] = {0}; +static const unsigned char kat772_persstr[] = { + 0xbb, 0x4c, 0x9f, 0x74, 0xc3, 0xe8, 0x18, 0xff, 0xfe, 0xfd, 0x55, 0x26, + 0x46, 0xf5, 0xe6, 0x59, 0xe4, 0xee, 0x4a, 0x8b, 0xe7, 0x88, 0xf1, 0x3d, + 0x3e, 0xdd, 0xd3, 0x61, 0x92, 0x79, 0x06, 0x50, +}; +static const unsigned char kat772_addin0[] = { + 0x4f, 0x60, 0x29, 0xce, 0xdf, 0x4e, 0x2a, 0xe0, 0x7d, 0xd9, 0x9e, 0x7a, + 0xdb, 0x75, 0x69, 0x60, 0xb0, 0x67, 0xba, 0x96, 0xc4, 0x4f, 0x72, 0x37, + 0x1a, 0x1c, 0x5f, 0xb3, 0x1e, 0xab, 0x80, 0x8a, +}; +static const unsigned char kat772_addin1[] = { + 0xe1, 0x7b, 0x61, 0x06, 0x0b, 0xd3, 0xba, 0x35, 0x51, 0xf6, 0x29, 0xde, + 0x6b, 0xf3, 0x71, 0x0c, 0xc6, 0xaa, 0xe8, 0x71, 0xed, 0xe7, 0x0d, 0xe5, + 0x09, 0x92, 0x2a, 0xcf, 0xa6, 0x58, 0x31, 0x8c, +}; +static const unsigned char kat772_retbits[] = { + 0x55, 0x2f, 0x7f, 0x55, 0xe5, 0xe5, 0x8b, 0xf6, 0xff, 0x72, 0x69, 0x27, + 0xa1, 0xd9, 0x3d, 0xa5, 0x5e, 0xc3, 0x86, 0xcc, 0x38, 0xca, 0x65, 0xb1, + 0x51, 0x39, 0xad, 0x22, 0x59, 0xc0, 0x22, 0x16, 0xea, 0xcd, 0x48, 0x77, + 0x82, 0xc3, 0x77, 0x85, 0x26, 0x43, 0x85, 0xe0, 0x33, 0x1c, 0x7f, 0x88, + 0x2a, 0x18, 0x84, 0xf4, 0x40, 0xa6, 0x7f, 0xac, 0xcc, 0x37, 0x01, 0x8b, + 0x62, 0x00, 0xab, 0x08, +}; +static const struct drbg_kat_no_reseed kat772_t = { + 6, kat772_entropyin, kat772_nonce, kat772_persstr, + kat772_addin0, kat772_addin1, kat772_retbits +}; +static const struct drbg_kat kat772 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat772_t +}; + +static const unsigned char kat773_entropyin[] = { + 0x31, 0x9c, 0x01, 0xd6, 0xf0, 0x8f, 0x08, 0x09, 0xc1, 0x79, 0x58, 0xfa, + 0x41, 0x69, 0xa7, 0x6e, 0xa1, 0xd0, 0x5c, 0x83, 0x68, 0x16, 0x88, 0x24, + 0xfc, 0xff, 0xcc, 0x0c, 0x4c, 0xa6, 0xdb, 0xeb, +}; +static const unsigned char kat773_nonce[] = {0}; +static const unsigned char kat773_persstr[] = { + 0xdb, 0xd6, 0x71, 0xde, 0x6a, 0x7c, 0x61, 0xeb, 0xf5, 0x8b, 0xfd, 0x32, + 0x3b, 0x1c, 0x73, 0x8c, 0xdb, 0x18, 0x35, 0xb8, 0xbc, 0xeb, 0x37, 0x37, + 0x8f, 0x62, 0x33, 0x3c, 0xb8, 0xe1, 0x60, 0x9d, +}; +static const unsigned char kat773_addin0[] = { + 0x97, 0x39, 0xdf, 0x64, 0xb9, 0xca, 0x61, 0xbe, 0x36, 0x40, 0xdd, 0xc8, + 0x8b, 0x2b, 0xb1, 0x95, 0xe3, 0x22, 0xab, 0x6d, 0x43, 0x5e, 0xc3, 0x97, + 0x35, 0xec, 0x88, 0x34, 0x38, 0x2f, 0x43, 0x7b, +}; +static const unsigned char kat773_addin1[] = { + 0x5d, 0x4a, 0xc8, 0xdd, 0xbf, 0x73, 0x15, 0x4f, 0xea, 0x78, 0x8d, 0xa9, + 0x4f, 0x9f, 0x91, 0x7f, 0xa4, 0x21, 0x67, 0xeb, 0x0e, 0x97, 0xd6, 0x29, + 0x76, 0x87, 0xf0, 0x8a, 0xad, 0xf1, 0x7c, 0x4d, +}; +static const unsigned char kat773_retbits[] = { + 0xb7, 0xd5, 0x2b, 0x16, 0xf4, 0xbd, 0xf8, 0xcb, 0x76, 0x5c, 0x58, 0x09, + 0x1b, 0x99, 0xb0, 0xef, 0x65, 0xd1, 0x37, 0xd6, 0xc1, 0x0c, 0xe8, 0x01, + 0xe7, 0x35, 0xeb, 0x2b, 0x43, 0xad, 0xf6, 0xcc, 0x01, 0x4b, 0x1a, 0x42, + 0x36, 0x39, 0x0b, 0xe2, 0x64, 0xf7, 0xc8, 0xb9, 0x99, 0xf8, 0x21, 0xbd, + 0x66, 0x0b, 0x0a, 0x62, 0x62, 0xb1, 0x1c, 0x7f, 0xb5, 0x8c, 0x0a, 0xb6, + 0xf1, 0x20, 0x53, 0xff, +}; +static const struct drbg_kat_no_reseed kat773_t = { + 7, kat773_entropyin, kat773_nonce, kat773_persstr, + kat773_addin0, kat773_addin1, kat773_retbits +}; +static const struct drbg_kat kat773 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat773_t +}; + +static const unsigned char kat774_entropyin[] = { + 0x77, 0xc5, 0x16, 0x9b, 0xcd, 0xcb, 0x99, 0x6a, 0x63, 0x00, 0xfa, 0x36, + 0xa3, 0x0a, 0x02, 0x83, 0x8f, 0xe0, 0x3b, 0x99, 0x0c, 0x74, 0xcb, 0xff, + 0x6f, 0x05, 0x17, 0xf3, 0x31, 0x93, 0xba, 0x54, +}; +static const unsigned char kat774_nonce[] = {0}; +static const unsigned char kat774_persstr[] = { + 0x6b, 0x1c, 0x51, 0xa3, 0x49, 0xae, 0xc6, 0xe5, 0x3a, 0xb5, 0x8f, 0x0a, + 0x7d, 0x93, 0x02, 0xfd, 0xde, 0xd3, 0xe6, 0x50, 0x9c, 0xee, 0x36, 0x20, + 0x14, 0xd9, 0x77, 0x7e, 0x4c, 0x57, 0x99, 0xde, +}; +static const unsigned char kat774_addin0[] = { + 0x27, 0x00, 0xc0, 0x46, 0x35, 0x31, 0x16, 0x63, 0x3e, 0xf1, 0x14, 0x66, + 0x8e, 0x7d, 0x3b, 0xf1, 0x22, 0x32, 0xd8, 0x83, 0x78, 0x45, 0xf1, 0x5f, + 0xac, 0x02, 0x2a, 0x32, 0x39, 0x26, 0xfc, 0x18, +}; +static const unsigned char kat774_addin1[] = { + 0x54, 0x48, 0x47, 0x4d, 0x53, 0x01, 0x6b, 0x27, 0xab, 0x76, 0xc3, 0xae, + 0x0a, 0x71, 0x2f, 0xaa, 0x07, 0x2a, 0x3c, 0x68, 0xde, 0x51, 0xb4, 0xdd, + 0x21, 0xf9, 0xb1, 0x42, 0x4f, 0x51, 0x80, 0x0f, +}; +static const unsigned char kat774_retbits[] = { + 0x98, 0x5f, 0x77, 0x30, 0x48, 0x78, 0x27, 0x4f, 0xa5, 0x02, 0x34, 0x53, + 0x65, 0x91, 0x3b, 0x23, 0x64, 0x2c, 0x7b, 0x00, 0x36, 0xc4, 0xe8, 0x25, + 0x96, 0x9c, 0x3c, 0xa2, 0x32, 0x40, 0x67, 0xae, 0x40, 0x35, 0x08, 0x44, + 0x15, 0x8a, 0xbb, 0xab, 0x11, 0x11, 0x61, 0xa7, 0xa3, 0x61, 0x68, 0xb9, + 0x97, 0xc1, 0x97, 0x26, 0x1a, 0x60, 0xef, 0x5b, 0x64, 0x49, 0x9e, 0xdd, + 0xd6, 0x4a, 0x50, 0x96, +}; +static const struct drbg_kat_no_reseed kat774_t = { + 8, kat774_entropyin, kat774_nonce, kat774_persstr, + kat774_addin0, kat774_addin1, kat774_retbits +}; +static const struct drbg_kat kat774 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat774_t +}; + +static const unsigned char kat775_entropyin[] = { + 0xee, 0xa7, 0x97, 0x2a, 0x92, 0x52, 0xe0, 0x9e, 0xea, 0xca, 0x82, 0xcf, + 0x28, 0xed, 0xc6, 0xf6, 0xb0, 0x20, 0x3f, 0xbc, 0x47, 0xa7, 0xd1, 0x3a, + 0x03, 0xda, 0x7f, 0x8c, 0xa2, 0x1e, 0xc6, 0x13, +}; +static const unsigned char kat775_nonce[] = {0}; +static const unsigned char kat775_persstr[] = { + 0xd6, 0x62, 0x89, 0x0e, 0x01, 0xa7, 0x30, 0x27, 0xfd, 0x80, 0xfd, 0x54, + 0xd4, 0xe4, 0xdc, 0x2f, 0x03, 0xc3, 0x50, 0xb7, 0x7f, 0x13, 0x25, 0x0d, + 0xa3, 0x5a, 0x4e, 0xcc, 0x2f, 0x77, 0x79, 0xf4, +}; +static const unsigned char kat775_addin0[] = { + 0x6e, 0xc7, 0x42, 0xb2, 0x6f, 0x58, 0x8b, 0x4f, 0x72, 0x96, 0x7c, 0xda, + 0x67, 0xaa, 0x1d, 0x09, 0x73, 0xa7, 0x42, 0x88, 0x0d, 0xa8, 0xb1, 0xe1, + 0x4e, 0x9a, 0xa5, 0xf2, 0x4a, 0x41, 0xc3, 0x66, +}; +static const unsigned char kat775_addin1[] = { + 0x06, 0xd5, 0x93, 0xdb, 0xe8, 0x78, 0xed, 0x6c, 0x3b, 0xed, 0x8d, 0xcb, + 0xef, 0xa4, 0x03, 0x6f, 0xcf, 0xd0, 0x6f, 0x48, 0x4c, 0x00, 0x6c, 0x03, + 0xef, 0x6d, 0xcb, 0x15, 0xb6, 0x84, 0x17, 0xf5, +}; +static const unsigned char kat775_retbits[] = { + 0x27, 0xed, 0x08, 0xe7, 0x8b, 0x6e, 0xc1, 0xa7, 0xff, 0xa2, 0x40, 0x65, + 0x09, 0x0f, 0x56, 0x99, 0xcd, 0x83, 0xb5, 0x64, 0x69, 0x66, 0x19, 0x58, + 0x00, 0xee, 0x47, 0xcd, 0xa4, 0x82, 0x7e, 0xd0, 0xe2, 0x1f, 0x1b, 0xd8, + 0x2a, 0x41, 0xcb, 0x06, 0x49, 0x8b, 0x49, 0x08, 0xc5, 0x38, 0x82, 0xb0, + 0xf9, 0x3c, 0xf9, 0x18, 0x04, 0xba, 0x2a, 0xdb, 0x01, 0x84, 0x86, 0x11, + 0xc7, 0xa8, 0x87, 0x0b, +}; +static const struct drbg_kat_no_reseed kat775_t = { + 9, kat775_entropyin, kat775_nonce, kat775_persstr, + kat775_addin0, kat775_addin1, kat775_retbits +}; +static const struct drbg_kat kat775 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat775_t +}; + +static const unsigned char kat776_entropyin[] = { + 0xda, 0x52, 0x0c, 0x33, 0xe8, 0xa0, 0x26, 0xd6, 0x44, 0x84, 0xbb, 0x6f, + 0x78, 0x61, 0x3a, 0x7e, 0xec, 0xa0, 0x13, 0xa9, 0xb6, 0xa2, 0x4c, 0x2f, + 0x5e, 0xa9, 0x99, 0x3d, 0x9f, 0x26, 0x6e, 0x3e, +}; +static const unsigned char kat776_nonce[] = {0}; +static const unsigned char kat776_persstr[] = { + 0xf4, 0x12, 0xdc, 0x9f, 0x3d, 0xbd, 0x1f, 0x9c, 0x24, 0xe4, 0x0b, 0xcd, + 0x09, 0x51, 0x4e, 0x02, 0xd6, 0x6b, 0x33, 0x88, 0xc1, 0xec, 0x3c, 0x80, + 0xf6, 0x09, 0x21, 0xfb, 0x57, 0x68, 0x73, 0xc6, +}; +static const unsigned char kat776_addin0[] = { + 0xa1, 0x7d, 0x88, 0xa8, 0x4f, 0x13, 0xd1, 0xe9, 0x0a, 0x6e, 0x34, 0x1d, + 0x7f, 0x3d, 0x7f, 0xbc, 0x3f, 0x27, 0x3c, 0x41, 0x80, 0xff, 0xb5, 0x2c, + 0x7b, 0x63, 0x7c, 0x30, 0x85, 0x5d, 0x19, 0xe3, +}; +static const unsigned char kat776_addin1[] = { + 0x11, 0x50, 0x76, 0x30, 0x6e, 0x8f, 0xce, 0x2c, 0x18, 0x90, 0xc8, 0x07, + 0x4d, 0x1f, 0xa6, 0x01, 0xa0, 0x57, 0xcb, 0xcc, 0xd6, 0x3c, 0x62, 0xa9, + 0xc1, 0x18, 0x87, 0x8f, 0x1f, 0xbc, 0xf5, 0xcd, +}; +static const unsigned char kat776_retbits[] = { + 0xbb, 0xff, 0x4d, 0x39, 0xba, 0x04, 0x06, 0x1a, 0x1b, 0x6e, 0x2f, 0x26, + 0xdd, 0x0c, 0x13, 0x2e, 0xa4, 0x38, 0x1a, 0xfa, 0xf8, 0x4d, 0xc2, 0x4e, + 0x52, 0xe1, 0x96, 0xc4, 0xd7, 0xda, 0x51, 0xc5, 0x8b, 0xe5, 0xf7, 0xdd, + 0xd9, 0x89, 0x34, 0x0f, 0x1e, 0x0d, 0x8c, 0xf6, 0x2c, 0x63, 0x02, 0xe0, + 0xec, 0xdd, 0xba, 0xde, 0x87, 0xef, 0x50, 0x04, 0x6d, 0x3a, 0x0d, 0xd8, + 0x93, 0x68, 0x1c, 0x8c, +}; +static const struct drbg_kat_no_reseed kat776_t = { + 10, kat776_entropyin, kat776_nonce, kat776_persstr, + kat776_addin0, kat776_addin1, kat776_retbits +}; +static const struct drbg_kat kat776 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat776_t +}; + +static const unsigned char kat777_entropyin[] = { + 0xe4, 0x95, 0x09, 0xa9, 0x07, 0x83, 0x99, 0x2f, 0x48, 0x12, 0x1d, 0x5d, + 0x7d, 0x6c, 0xbf, 0xc2, 0x8d, 0x77, 0xbc, 0xd1, 0xe6, 0xd6, 0xe6, 0xeb, + 0x0a, 0xec, 0xa2, 0x55, 0x5d, 0x9e, 0x4b, 0x89, +}; +static const unsigned char kat777_nonce[] = {0}; +static const unsigned char kat777_persstr[] = { + 0x13, 0xe9, 0xa3, 0xf9, 0xbf, 0xcb, 0x09, 0xc3, 0x32, 0xb6, 0xd3, 0xa1, + 0x61, 0x5c, 0xd9, 0xce, 0xa5, 0x7b, 0x61, 0x54, 0x5a, 0x93, 0x51, 0x22, + 0x79, 0x95, 0xae, 0x64, 0xc2, 0x33, 0x32, 0x50, +}; +static const unsigned char kat777_addin0[] = { + 0xe6, 0x9b, 0xac, 0x85, 0x22, 0x8a, 0xfc, 0x41, 0xd8, 0x6d, 0x58, 0x46, + 0x41, 0xcb, 0xaf, 0x86, 0x28, 0x18, 0x6b, 0x20, 0x5b, 0x21, 0x1f, 0xd4, + 0x28, 0xe3, 0x98, 0x49, 0x23, 0x7a, 0x39, 0x39, +}; +static const unsigned char kat777_addin1[] = { + 0x51, 0xee, 0x8d, 0x0c, 0x02, 0x42, 0xf1, 0x38, 0x2f, 0x1e, 0x2d, 0x38, + 0xcc, 0x9d, 0xbb, 0xd5, 0x06, 0xa8, 0x01, 0x05, 0xb4, 0xb7, 0x48, 0xf5, + 0x63, 0xac, 0x94, 0x1c, 0x41, 0x4e, 0x9c, 0x44, +}; +static const unsigned char kat777_retbits[] = { + 0x89, 0x53, 0xbc, 0xae, 0x34, 0x3b, 0x43, 0x0d, 0x8d, 0x49, 0x18, 0x40, + 0xa4, 0x40, 0xad, 0xc6, 0xea, 0xaa, 0x20, 0xd4, 0xb9, 0x77, 0x3b, 0xca, + 0xbc, 0xf1, 0xc8, 0xa9, 0xca, 0x3a, 0xf3, 0x9d, 0xe4, 0x58, 0x62, 0xc6, + 0x96, 0x3f, 0x48, 0xff, 0xa0, 0x51, 0xa1, 0x41, 0xde, 0x70, 0xc3, 0x3f, + 0xed, 0x42, 0x07, 0x11, 0x26, 0x86, 0x07, 0xc9, 0xd2, 0x05, 0x73, 0xc9, + 0xb5, 0x28, 0xdb, 0x20, +}; +static const struct drbg_kat_no_reseed kat777_t = { + 11, kat777_entropyin, kat777_nonce, kat777_persstr, + kat777_addin0, kat777_addin1, kat777_retbits +}; +static const struct drbg_kat kat777 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat777_t +}; + +static const unsigned char kat778_entropyin[] = { + 0xe9, 0xe1, 0x20, 0xc9, 0x56, 0x92, 0x4a, 0xbc, 0xb6, 0x55, 0x4e, 0x4f, + 0xb4, 0x40, 0x4a, 0xdf, 0x2b, 0xf4, 0xba, 0x06, 0x9b, 0x92, 0xcc, 0xb7, + 0x8b, 0x92, 0xfe, 0xf8, 0xf7, 0x8e, 0x05, 0x6a, +}; +static const unsigned char kat778_nonce[] = {0}; +static const unsigned char kat778_persstr[] = { + 0x20, 0xf0, 0x13, 0x26, 0xb8, 0x7f, 0xf6, 0xa1, 0x4b, 0x91, 0xc5, 0x92, + 0x7b, 0xed, 0x1d, 0x9a, 0xea, 0x85, 0x81, 0xb9, 0xa5, 0x39, 0xa8, 0x4f, + 0xb7, 0xf2, 0xe5, 0x4b, 0xa7, 0x85, 0xd8, 0xbc, +}; +static const unsigned char kat778_addin0[] = { + 0x26, 0x04, 0x95, 0xcc, 0xd9, 0xea, 0xff, 0x4c, 0x2d, 0x87, 0xd5, 0x42, + 0xd4, 0x9d, 0x48, 0xfe, 0x75, 0x3c, 0xba, 0x70, 0x10, 0x8d, 0x93, 0x87, + 0x65, 0xf7, 0x7d, 0xad, 0xb5, 0x76, 0xb7, 0x11, +}; +static const unsigned char kat778_addin1[] = { + 0x47, 0xf0, 0xa2, 0x1f, 0x12, 0xac, 0x66, 0xdd, 0x13, 0x8a, 0x00, 0x3f, + 0xa0, 0xf7, 0x62, 0xda, 0x06, 0xe8, 0x1d, 0xac, 0xee, 0x14, 0xa9, 0x9c, + 0xf5, 0x2b, 0xb5, 0xb9, 0xab, 0x35, 0x30, 0x4a, +}; +static const unsigned char kat778_retbits[] = { + 0xea, 0x64, 0x74, 0xcb, 0x86, 0xde, 0x13, 0x31, 0x82, 0xd8, 0x46, 0xb0, + 0x93, 0x77, 0x51, 0x2a, 0x58, 0x8c, 0xb2, 0x40, 0x1c, 0x1d, 0x20, 0xa5, + 0x42, 0xe9, 0x00, 0x4a, 0xc4, 0xc2, 0xd5, 0xe6, 0x2f, 0xcd, 0xf3, 0x57, + 0xe7, 0x4f, 0x12, 0x74, 0x47, 0x60, 0x8e, 0xc6, 0xb4, 0xba, 0x2f, 0x5b, + 0x7e, 0xf4, 0xd2, 0x50, 0x9d, 0xc5, 0x17, 0x48, 0x5c, 0x16, 0x2a, 0xb7, + 0xf9, 0xc9, 0x67, 0x13, +}; +static const struct drbg_kat_no_reseed kat778_t = { + 12, kat778_entropyin, kat778_nonce, kat778_persstr, + kat778_addin0, kat778_addin1, kat778_retbits +}; +static const struct drbg_kat kat778 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat778_t +}; + +static const unsigned char kat779_entropyin[] = { + 0xee, 0x99, 0xd4, 0xf7, 0x05, 0xbe, 0xbb, 0xc8, 0xff, 0xad, 0x98, 0x2b, + 0x0a, 0xd4, 0xd7, 0x42, 0x0e, 0x8f, 0xd1, 0x27, 0x6b, 0x9c, 0xe3, 0x62, + 0x99, 0x15, 0xf2, 0x92, 0x52, 0x45, 0x9d, 0x31, +}; +static const unsigned char kat779_nonce[] = {0}; +static const unsigned char kat779_persstr[] = { + 0x91, 0xe7, 0x39, 0x30, 0xdf, 0xe4, 0x47, 0x4f, 0x9c, 0x03, 0x84, 0xdd, + 0xb3, 0xe9, 0xae, 0x45, 0x7c, 0x15, 0x99, 0x79, 0xd2, 0x53, 0x0d, 0xa5, + 0x02, 0x55, 0x0b, 0x4c, 0x56, 0xb7, 0xb9, 0x19, +}; +static const unsigned char kat779_addin0[] = { + 0x95, 0x7b, 0x9d, 0x93, 0x8d, 0x90, 0x67, 0x62, 0x65, 0xc9, 0x0e, 0x93, + 0x9f, 0x8b, 0xfa, 0xee, 0x7e, 0xb8, 0x04, 0xf3, 0x9c, 0x81, 0x9b, 0x9c, + 0x52, 0xbc, 0xc2, 0x05, 0x26, 0xca, 0xdc, 0x8c, +}; +static const unsigned char kat779_addin1[] = { + 0x51, 0x14, 0xa0, 0xde, 0xa8, 0x22, 0xe4, 0x4d, 0xc8, 0x70, 0xee, 0x63, + 0xa5, 0xe6, 0xbb, 0x16, 0xa1, 0x6c, 0x9d, 0x2c, 0x51, 0x71, 0x86, 0x14, + 0xdf, 0xe5, 0x88, 0x21, 0x71, 0xa1, 0xec, 0x54, +}; +static const unsigned char kat779_retbits[] = { + 0x73, 0x34, 0x66, 0x52, 0x0b, 0xb8, 0x90, 0x8e, 0x3e, 0x21, 0x89, 0x9e, + 0x20, 0xf7, 0x92, 0x76, 0x48, 0xde, 0x00, 0x6e, 0xa9, 0x39, 0x8f, 0x33, + 0xbc, 0x50, 0x15, 0x68, 0x8b, 0x43, 0xd5, 0x86, 0xe2, 0xd9, 0xf8, 0x29, + 0x4c, 0xa7, 0x81, 0x1f, 0xd4, 0x91, 0x56, 0xd0, 0xdb, 0xee, 0x67, 0x65, + 0xbb, 0xf4, 0xa1, 0xb5, 0x97, 0x77, 0x41, 0x01, 0x2d, 0x73, 0xe1, 0xe0, + 0xf4, 0x68, 0x20, 0x6f, +}; +static const struct drbg_kat_no_reseed kat779_t = { + 13, kat779_entropyin, kat779_nonce, kat779_persstr, + kat779_addin0, kat779_addin1, kat779_retbits +}; +static const struct drbg_kat kat779 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat779_t +}; + +static const unsigned char kat780_entropyin[] = { + 0xf4, 0xcb, 0xf9, 0x2e, 0x63, 0x48, 0x54, 0x2b, 0xc1, 0x08, 0xe7, 0xa6, + 0x64, 0x16, 0x18, 0x31, 0xf9, 0x92, 0x6d, 0xed, 0xfa, 0x8d, 0x4f, 0xa7, + 0xde, 0x94, 0x8c, 0x3a, 0x5d, 0xe0, 0x45, 0x74, +}; +static const unsigned char kat780_nonce[] = {0}; +static const unsigned char kat780_persstr[] = { + 0x24, 0x70, 0x9b, 0xd4, 0x70, 0x13, 0xc1, 0xd5, 0xf3, 0xe3, 0x2c, 0x60, + 0xe7, 0x89, 0xdd, 0x07, 0x3c, 0x70, 0x44, 0x1e, 0x43, 0x49, 0x9b, 0xae, + 0x31, 0x8b, 0xbb, 0x41, 0x71, 0x87, 0xa5, 0xbd, +}; +static const unsigned char kat780_addin0[] = { + 0x1e, 0xed, 0x74, 0x63, 0xc0, 0x04, 0xc9, 0x4b, 0x60, 0x02, 0x45, 0xf4, + 0x96, 0x7a, 0xf9, 0x55, 0x91, 0x9d, 0x0f, 0x32, 0x5a, 0x2b, 0xaf, 0x2e, + 0x9c, 0x5f, 0x6e, 0x15, 0x04, 0xbb, 0x6a, 0xf1, +}; +static const unsigned char kat780_addin1[] = { + 0x6e, 0xac, 0xe0, 0xfd, 0xab, 0xf1, 0xbc, 0x84, 0xd0, 0x8e, 0xaa, 0x4a, + 0xfc, 0xbe, 0xbd, 0x50, 0x2f, 0x1d, 0x83, 0x84, 0x7d, 0x2e, 0x86, 0xa1, + 0xe6, 0x81, 0x47, 0xb3, 0xb1, 0x5a, 0x76, 0xcf, +}; +static const unsigned char kat780_retbits[] = { + 0xda, 0x59, 0xc0, 0x92, 0x59, 0xec, 0xc1, 0xd6, 0x1e, 0x05, 0xd3, 0x19, + 0x8f, 0x34, 0x99, 0x04, 0xdf, 0x14, 0x68, 0xff, 0xaf, 0x85, 0xf5, 0xd6, + 0xcc, 0x57, 0x48, 0x9e, 0x27, 0x85, 0xe5, 0x4e, 0x71, 0x04, 0x13, 0x67, + 0x4b, 0xd2, 0xac, 0x41, 0x89, 0x6c, 0xe9, 0x01, 0x0d, 0x95, 0x88, 0x44, + 0x6e, 0x75, 0x40, 0xb3, 0x55, 0x19, 0xc4, 0x68, 0x9a, 0x58, 0x18, 0xac, + 0xe7, 0xdb, 0xe0, 0xa8, +}; +static const struct drbg_kat_no_reseed kat780_t = { + 14, kat780_entropyin, kat780_nonce, kat780_persstr, + kat780_addin0, kat780_addin1, kat780_retbits +}; +static const struct drbg_kat kat780 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat780_t +}; + +static const unsigned char kat781_entropyin[] = { + 0x69, 0xa0, 0x9f, 0x6b, 0xf5, 0xdd, 0xa1, 0x5c, 0xd4, 0xaf, 0x29, 0xe1, + 0x4c, 0xf5, 0xe0, 0xcd, 0xdd, 0x7d, 0x07, 0xac, 0x39, 0xbb, 0xa5, 0x87, + 0xf8, 0xbc, 0x33, 0x11, 0x04, 0xf9, 0xc4, 0x48, +}; +static const unsigned char kat781_nonce[] = {0}; +static const unsigned char kat781_persstr[] = {0}; +static const unsigned char kat781_addin0[] = {0}; +static const unsigned char kat781_addin1[] = {0}; +static const unsigned char kat781_retbits[] = { + 0xf7, 0x8a, 0x49, 0x19, 0xa6, 0xec, 0x89, 0x9f, 0x7b, 0x6c, 0x69, 0x38, + 0x1f, 0xeb, 0xbb, 0xe0, 0x83, 0x31, 0x5f, 0x3d, 0x28, 0x9e, 0x70, 0x34, + 0x6d, 0xb0, 0xe4, 0xec, 0x43, 0x60, 0x47, 0x3a, 0xe0, 0xb3, 0xd9, 0x16, + 0xe9, 0xb6, 0xb9, 0x64, 0x30, 0x9f, 0x75, 0x3e, 0xd6, 0x6a, 0xe5, 0x9d, + 0xe4, 0x8d, 0xa3, 0x16, 0xcc, 0x19, 0x44, 0xbc, 0x8d, 0xfd, 0x0e, 0x25, + 0x75, 0xd0, 0xff, 0x6d, +}; +static const struct drbg_kat_no_reseed kat781_t = { + 0, kat781_entropyin, kat781_nonce, kat781_persstr, + kat781_addin0, kat781_addin1, kat781_retbits +}; +static const struct drbg_kat kat781 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat781_t +}; + +static const unsigned char kat782_entropyin[] = { + 0x80, 0xbf, 0xbd, 0x34, 0x0d, 0x79, 0x88, 0x8f, 0x34, 0xf0, 0x43, 0xed, + 0x68, 0x07, 0xa9, 0xf2, 0x8b, 0x72, 0xb6, 0x64, 0x4d, 0x9d, 0x9e, 0x9d, + 0x77, 0x71, 0x09, 0x48, 0x2b, 0x80, 0x78, 0x8a, +}; +static const unsigned char kat782_nonce[] = {0}; +static const unsigned char kat782_persstr[] = {0}; +static const unsigned char kat782_addin0[] = {0}; +static const unsigned char kat782_addin1[] = {0}; +static const unsigned char kat782_retbits[] = { + 0x80, 0xdb, 0x04, 0x8d, 0x2f, 0x13, 0x0d, 0x86, 0x4b, 0x19, 0xbf, 0xc5, + 0x47, 0xc9, 0x25, 0x03, 0xe5, 0x80, 0xcb, 0x1a, 0x8e, 0x1f, 0x74, 0xf3, + 0xd9, 0x7f, 0xdd, 0xa6, 0x50, 0x1f, 0xb1, 0xaa, 0x81, 0xfc, 0xed, 0xac, + 0x0d, 0xd1, 0x8b, 0x6c, 0xcf, 0xdc, 0x18, 0x3c, 0xa2, 0x8a, 0x44, 0xfc, + 0x9f, 0x3a, 0x08, 0x83, 0x4b, 0xa8, 0x75, 0x1a, 0x2f, 0x44, 0x95, 0x36, + 0x7c, 0x54, 0xa1, 0x85, +}; +static const struct drbg_kat_no_reseed kat782_t = { + 1, kat782_entropyin, kat782_nonce, kat782_persstr, + kat782_addin0, kat782_addin1, kat782_retbits +}; +static const struct drbg_kat kat782 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat782_t +}; + +static const unsigned char kat783_entropyin[] = { + 0xa5, 0x59, 0xac, 0x98, 0x72, 0x79, 0x1d, 0x79, 0x19, 0x7e, 0x54, 0xda, + 0x70, 0xa8, 0xd8, 0x58, 0xfb, 0xe3, 0x9e, 0x85, 0x14, 0xd2, 0xc8, 0x6a, + 0x7b, 0xcf, 0xfa, 0xdc, 0x68, 0x78, 0x2e, 0xdf, +}; +static const unsigned char kat783_nonce[] = {0}; +static const unsigned char kat783_persstr[] = {0}; +static const unsigned char kat783_addin0[] = {0}; +static const unsigned char kat783_addin1[] = {0}; +static const unsigned char kat783_retbits[] = { + 0xd1, 0x4b, 0x72, 0xe1, 0x7c, 0x2f, 0x6f, 0x77, 0xb4, 0x6d, 0x07, 0x17, + 0xb7, 0x88, 0x42, 0x0e, 0x50, 0x3b, 0xb1, 0x8d, 0xe5, 0x42, 0x13, 0x5f, + 0x58, 0x6a, 0x90, 0xc5, 0xc7, 0x3f, 0xce, 0xee, 0xe5, 0x0f, 0xd1, 0x63, + 0x3b, 0x5b, 0x09, 0xab, 0x06, 0x1b, 0x93, 0x67, 0xca, 0x78, 0x5e, 0xcb, + 0x40, 0x0e, 0x1f, 0x36, 0x81, 0x58, 0x36, 0x61, 0xaa, 0xf8, 0x35, 0x21, + 0x84, 0x45, 0x4a, 0xe6, +}; +static const struct drbg_kat_no_reseed kat783_t = { + 2, kat783_entropyin, kat783_nonce, kat783_persstr, + kat783_addin0, kat783_addin1, kat783_retbits +}; +static const struct drbg_kat kat783 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat783_t +}; + +static const unsigned char kat784_entropyin[] = { + 0x30, 0x0f, 0xe1, 0x48, 0xdd, 0x39, 0xde, 0x1e, 0xdb, 0x99, 0x3c, 0xa5, + 0x26, 0x03, 0x73, 0xb3, 0xf5, 0xf0, 0x9a, 0x5c, 0xf7, 0xa3, 0x2b, 0x0c, + 0x41, 0xfe, 0x62, 0x24, 0xf9, 0x81, 0xd3, 0xb1, +}; +static const unsigned char kat784_nonce[] = {0}; +static const unsigned char kat784_persstr[] = {0}; +static const unsigned char kat784_addin0[] = {0}; +static const unsigned char kat784_addin1[] = {0}; +static const unsigned char kat784_retbits[] = { + 0xde, 0xea, 0x89, 0xb5, 0x12, 0x8f, 0xb9, 0x92, 0x69, 0x6d, 0x7b, 0x97, + 0xeb, 0xc2, 0xc0, 0x79, 0x36, 0x14, 0xb1, 0x72, 0xf4, 0xc7, 0x5b, 0xb8, + 0x3c, 0x12, 0xa1, 0xb3, 0x89, 0xba, 0xc3, 0xbf, 0xec, 0xb7, 0x73, 0xcd, + 0x77, 0x17, 0x58, 0x3c, 0x2b, 0x61, 0xb3, 0xb2, 0x43, 0xac, 0x96, 0x83, + 0xdb, 0xa4, 0xfb, 0xc0, 0x71, 0x82, 0xba, 0xd8, 0x27, 0x1a, 0x7f, 0x16, + 0xd8, 0x33, 0xe4, 0xd9, +}; +static const struct drbg_kat_no_reseed kat784_t = { + 3, kat784_entropyin, kat784_nonce, kat784_persstr, + kat784_addin0, kat784_addin1, kat784_retbits +}; +static const struct drbg_kat kat784 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat784_t +}; + +static const unsigned char kat785_entropyin[] = { + 0x0c, 0x6e, 0xe2, 0xa5, 0xd4, 0x63, 0x25, 0xba, 0xa8, 0xe9, 0xa3, 0xf6, + 0xb5, 0x98, 0xfc, 0x79, 0x0c, 0x51, 0x3d, 0x38, 0x7d, 0x47, 0x00, 0x11, + 0x16, 0xd1, 0x9a, 0x61, 0x4d, 0x20, 0x38, 0xc4, +}; +static const unsigned char kat785_nonce[] = {0}; +static const unsigned char kat785_persstr[] = {0}; +static const unsigned char kat785_addin0[] = {0}; +static const unsigned char kat785_addin1[] = {0}; +static const unsigned char kat785_retbits[] = { + 0xf1, 0xee, 0x11, 0xbe, 0x18, 0x92, 0x63, 0xfe, 0xd9, 0x93, 0x2c, 0x11, + 0x92, 0x21, 0x9d, 0x00, 0x37, 0x8e, 0x36, 0xce, 0x81, 0xa4, 0x31, 0x31, + 0x85, 0x45, 0xda, 0x9f, 0x81, 0xf5, 0x0c, 0x29, 0x13, 0xd1, 0xf7, 0xbe, + 0x49, 0x9c, 0xe9, 0xe1, 0xe3, 0x9f, 0x93, 0xee, 0x23, 0x60, 0x66, 0x8f, + 0x12, 0x73, 0x40, 0x69, 0x1c, 0x17, 0x71, 0x17, 0x07, 0xcf, 0x5f, 0x1f, + 0x8a, 0x4d, 0x93, 0xee, +}; +static const struct drbg_kat_no_reseed kat785_t = { + 4, kat785_entropyin, kat785_nonce, kat785_persstr, + kat785_addin0, kat785_addin1, kat785_retbits +}; +static const struct drbg_kat kat785 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat785_t +}; + +static const unsigned char kat786_entropyin[] = { + 0xbd, 0xbb, 0xa1, 0xad, 0x48, 0x03, 0xfd, 0xc7, 0x83, 0xef, 0x5d, 0x6e, + 0x2a, 0xa6, 0x6d, 0xc9, 0x48, 0xe9, 0x60, 0xbc, 0x11, 0xcc, 0xa8, 0x9a, + 0x60, 0xcf, 0xf5, 0xc6, 0x0e, 0x98, 0x43, 0x02, +}; +static const unsigned char kat786_nonce[] = {0}; +static const unsigned char kat786_persstr[] = {0}; +static const unsigned char kat786_addin0[] = {0}; +static const unsigned char kat786_addin1[] = {0}; +static const unsigned char kat786_retbits[] = { + 0x26, 0x0a, 0x32, 0xc3, 0x97, 0x37, 0x50, 0xe0, 0xc1, 0x0f, 0x7f, 0x74, + 0x95, 0xd4, 0x6e, 0x7c, 0x36, 0x91, 0xc2, 0x7a, 0x58, 0xe8, 0x28, 0xcd, + 0xef, 0x48, 0xef, 0x66, 0x07, 0x16, 0xf7, 0x71, 0xd6, 0x1c, 0x3c, 0x76, + 0xdb, 0x40, 0x7d, 0x81, 0x60, 0x66, 0xf5, 0xaf, 0xbf, 0x16, 0x99, 0x34, + 0x85, 0xcd, 0xb6, 0x53, 0xd4, 0x18, 0xdd, 0x65, 0xff, 0xa5, 0xd3, 0x82, + 0x57, 0x32, 0xb8, 0xcb, +}; +static const struct drbg_kat_no_reseed kat786_t = { + 5, kat786_entropyin, kat786_nonce, kat786_persstr, + kat786_addin0, kat786_addin1, kat786_retbits +}; +static const struct drbg_kat kat786 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat786_t +}; + +static const unsigned char kat787_entropyin[] = { + 0x22, 0x58, 0x7b, 0xfd, 0xce, 0x62, 0xf4, 0xaf, 0xc1, 0xdd, 0x26, 0x73, + 0xf5, 0x30, 0x83, 0x64, 0xf2, 0x7d, 0xb9, 0x91, 0x2a, 0xd0, 0x1b, 0x04, + 0x5e, 0x74, 0xdb, 0x45, 0x18, 0x43, 0x59, 0x59, +}; +static const unsigned char kat787_nonce[] = {0}; +static const unsigned char kat787_persstr[] = {0}; +static const unsigned char kat787_addin0[] = {0}; +static const unsigned char kat787_addin1[] = {0}; +static const unsigned char kat787_retbits[] = { + 0xc9, 0x04, 0xd0, 0x30, 0x89, 0xb7, 0xdd, 0x1f, 0x17, 0x56, 0x4a, 0x7e, + 0xf7, 0x0b, 0x17, 0xbb, 0x1b, 0x29, 0xc0, 0xc1, 0x79, 0x3c, 0xc8, 0xd9, + 0x2b, 0x8c, 0x15, 0x8c, 0x04, 0xca, 0x53, 0x66, 0x91, 0x9f, 0x8c, 0xaf, + 0x54, 0x4d, 0x5d, 0x07, 0xc2, 0x8a, 0xbe, 0x6d, 0x14, 0xba, 0xaa, 0x0c, + 0x56, 0x60, 0x2d, 0xf1, 0xc3, 0x73, 0xe9, 0xac, 0xc4, 0x19, 0xe3, 0xc9, + 0x32, 0xe5, 0x77, 0xe6, +}; +static const struct drbg_kat_no_reseed kat787_t = { + 6, kat787_entropyin, kat787_nonce, kat787_persstr, + kat787_addin0, kat787_addin1, kat787_retbits +}; +static const struct drbg_kat kat787 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat787_t +}; + +static const unsigned char kat788_entropyin[] = { + 0x8a, 0xbe, 0xfb, 0xb2, 0x3d, 0xfd, 0x58, 0xd8, 0x2b, 0x88, 0xa4, 0xc4, + 0xfc, 0xfc, 0xee, 0x18, 0x3c, 0xe0, 0x1d, 0xb9, 0x75, 0xed, 0xee, 0xb4, + 0x04, 0xbd, 0x21, 0x6e, 0x61, 0x77, 0xea, 0x0d, +}; +static const unsigned char kat788_nonce[] = {0}; +static const unsigned char kat788_persstr[] = {0}; +static const unsigned char kat788_addin0[] = {0}; +static const unsigned char kat788_addin1[] = {0}; +static const unsigned char kat788_retbits[] = { + 0x8a, 0x70, 0x8e, 0x8a, 0x99, 0x03, 0x53, 0x89, 0xa4, 0xd6, 0x6d, 0x57, + 0xd1, 0x2f, 0x48, 0x8e, 0xcb, 0xa5, 0x7a, 0x3b, 0x2c, 0xa7, 0x80, 0x15, + 0xbe, 0xda, 0xe0, 0x6a, 0xaa, 0x41, 0x4d, 0x79, 0x11, 0x96, 0xe2, 0x62, + 0xb2, 0x8f, 0xbd, 0x74, 0x5d, 0xff, 0x94, 0xf8, 0xfe, 0x60, 0x06, 0x87, + 0xc9, 0xce, 0x2f, 0x50, 0xcf, 0x6d, 0x79, 0xd3, 0x9b, 0x8c, 0x5e, 0xa3, + 0x65, 0x33, 0x75, 0x5d, +}; +static const struct drbg_kat_no_reseed kat788_t = { + 7, kat788_entropyin, kat788_nonce, kat788_persstr, + kat788_addin0, kat788_addin1, kat788_retbits +}; +static const struct drbg_kat kat788 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat788_t +}; + +static const unsigned char kat789_entropyin[] = { + 0xc4, 0x5c, 0x9f, 0xec, 0x6b, 0xb8, 0x3f, 0xb0, 0x80, 0x08, 0x87, 0x7c, + 0x70, 0xb6, 0x32, 0xd7, 0x92, 0x11, 0x9a, 0x35, 0xc4, 0xc5, 0x98, 0x8c, + 0x40, 0x26, 0xcf, 0x3f, 0x86, 0x12, 0xb8, 0x00, +}; +static const unsigned char kat789_nonce[] = {0}; +static const unsigned char kat789_persstr[] = {0}; +static const unsigned char kat789_addin0[] = {0}; +static const unsigned char kat789_addin1[] = {0}; +static const unsigned char kat789_retbits[] = { + 0x84, 0x43, 0x0e, 0x49, 0xa9, 0xb4, 0xd3, 0x95, 0xd0, 0x55, 0xca, 0x0e, + 0xfd, 0xf2, 0x85, 0xa7, 0x55, 0x1c, 0x5f, 0x71, 0x19, 0xdb, 0xea, 0x5c, + 0x10, 0xda, 0xaa, 0x9e, 0x8b, 0xe0, 0x41, 0xe2, 0x3e, 0x9b, 0xc8, 0x93, + 0xc9, 0x0a, 0x35, 0xb7, 0x7b, 0x19, 0xdc, 0x20, 0x2e, 0xc8, 0x34, 0x17, + 0x2e, 0x6c, 0x8c, 0xea, 0x97, 0xc9, 0xd7, 0xc6, 0x8d, 0xf1, 0x37, 0x4a, + 0xee, 0xa9, 0x45, 0x37, +}; +static const struct drbg_kat_no_reseed kat789_t = { + 8, kat789_entropyin, kat789_nonce, kat789_persstr, + kat789_addin0, kat789_addin1, kat789_retbits +}; +static const struct drbg_kat kat789 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat789_t +}; + +static const unsigned char kat790_entropyin[] = { + 0x58, 0xcb, 0xcc, 0xd7, 0xf8, 0x6e, 0x5f, 0x04, 0x72, 0xdc, 0xb3, 0x77, + 0xf5, 0x98, 0xf2, 0xd4, 0x2e, 0xd9, 0x6a, 0xfd, 0xf0, 0xc8, 0xe4, 0x5f, + 0x12, 0xc4, 0xff, 0x4a, 0x96, 0x9c, 0x5b, 0x6b, +}; +static const unsigned char kat790_nonce[] = {0}; +static const unsigned char kat790_persstr[] = {0}; +static const unsigned char kat790_addin0[] = {0}; +static const unsigned char kat790_addin1[] = {0}; +static const unsigned char kat790_retbits[] = { + 0x41, 0xff, 0x55, 0xd0, 0x58, 0xbe, 0xaa, 0x04, 0x30, 0x8b, 0xd0, 0xb3, + 0x9d, 0x48, 0x01, 0xf7, 0x0f, 0x23, 0xd8, 0x29, 0x03, 0x7e, 0x4c, 0xc9, + 0xb2, 0xea, 0x0e, 0xac, 0xf5, 0xae, 0xf9, 0xb8, 0xe3, 0x3f, 0xc5, 0x9c, + 0x52, 0x8b, 0x53, 0xbc, 0xe0, 0x8d, 0x2b, 0x53, 0x6d, 0x37, 0xbf, 0x19, + 0x4c, 0x79, 0x7f, 0x03, 0x29, 0x04, 0x94, 0xdd, 0x00, 0xef, 0x24, 0x4a, + 0xc2, 0x23, 0xe3, 0x50, +}; +static const struct drbg_kat_no_reseed kat790_t = { + 9, kat790_entropyin, kat790_nonce, kat790_persstr, + kat790_addin0, kat790_addin1, kat790_retbits +}; +static const struct drbg_kat kat790 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat790_t +}; + +static const unsigned char kat791_entropyin[] = { + 0xd5, 0x05, 0x58, 0xdf, 0xb7, 0xa8, 0x96, 0x6c, 0x63, 0xb3, 0xa1, 0xd0, + 0xa8, 0x37, 0x97, 0x0a, 0xd0, 0xbf, 0xf5, 0xad, 0xbd, 0x8a, 0xda, 0xca, + 0xe5, 0xd3, 0xac, 0xcf, 0xde, 0x64, 0xcd, 0x4d, +}; +static const unsigned char kat791_nonce[] = {0}; +static const unsigned char kat791_persstr[] = {0}; +static const unsigned char kat791_addin0[] = {0}; +static const unsigned char kat791_addin1[] = {0}; +static const unsigned char kat791_retbits[] = { + 0xe9, 0x13, 0x61, 0x51, 0x1d, 0x92, 0x6b, 0xe4, 0xd9, 0x97, 0xfc, 0x97, + 0x0b, 0x1a, 0x5d, 0xcd, 0xb3, 0x3a, 0x71, 0x1f, 0x21, 0x5c, 0xbd, 0xbf, + 0xfa, 0xbf, 0xcd, 0xaa, 0x62, 0x48, 0x59, 0x68, 0x91, 0xd5, 0x5a, 0x9e, + 0x64, 0xf4, 0xe9, 0xf5, 0x18, 0x5e, 0xd7, 0x05, 0x6f, 0x7c, 0xbb, 0x42, + 0xf4, 0x74, 0xa2, 0x35, 0x42, 0xfe, 0x9e, 0x9c, 0x24, 0x95, 0x18, 0x2c, + 0xef, 0xb3, 0x8a, 0x6a, +}; +static const struct drbg_kat_no_reseed kat791_t = { + 10, kat791_entropyin, kat791_nonce, kat791_persstr, + kat791_addin0, kat791_addin1, kat791_retbits +}; +static const struct drbg_kat kat791 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat791_t +}; + +static const unsigned char kat792_entropyin[] = { + 0xf7, 0x0c, 0xe2, 0x83, 0xef, 0xd5, 0xba, 0x36, 0xc2, 0x84, 0xcb, 0x26, + 0x7d, 0x22, 0xe2, 0x3d, 0xc4, 0x16, 0x71, 0xb2, 0xaa, 0xae, 0x98, 0xe6, + 0x38, 0xc6, 0xe4, 0x51, 0xbc, 0x9c, 0x3c, 0xbb, +}; +static const unsigned char kat792_nonce[] = {0}; +static const unsigned char kat792_persstr[] = {0}; +static const unsigned char kat792_addin0[] = {0}; +static const unsigned char kat792_addin1[] = {0}; +static const unsigned char kat792_retbits[] = { + 0xfd, 0x9b, 0x3b, 0x53, 0xe1, 0x2b, 0x67, 0x02, 0xe4, 0xc6, 0xe4, 0xac, + 0xac, 0x33, 0xae, 0xae, 0x5c, 0xeb, 0x34, 0xce, 0xbf, 0xff, 0xa7, 0x00, + 0x7c, 0xb1, 0xab, 0x1c, 0x3b, 0x4b, 0xe1, 0xa3, 0x8e, 0x5c, 0x86, 0xde, + 0xa0, 0x77, 0x5a, 0xb0, 0xc8, 0x9a, 0xe1, 0x35, 0xe0, 0xb3, 0x6d, 0xa0, + 0x87, 0x92, 0x1d, 0x3f, 0xf2, 0x75, 0xff, 0xc8, 0xe5, 0xdc, 0xee, 0x6e, + 0x3d, 0x66, 0xee, 0x43, +}; +static const struct drbg_kat_no_reseed kat792_t = { + 11, kat792_entropyin, kat792_nonce, kat792_persstr, + kat792_addin0, kat792_addin1, kat792_retbits +}; +static const struct drbg_kat kat792 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat792_t +}; + +static const unsigned char kat793_entropyin[] = { + 0x58, 0xeb, 0x54, 0x4f, 0x44, 0xdf, 0xe1, 0x04, 0x8a, 0x81, 0x13, 0xd4, + 0xb6, 0x90, 0x90, 0x50, 0xab, 0xf9, 0x01, 0x00, 0x36, 0x23, 0x3b, 0xe7, + 0xf8, 0xfc, 0xc4, 0x1f, 0x39, 0xba, 0xff, 0x9c, +}; +static const unsigned char kat793_nonce[] = {0}; +static const unsigned char kat793_persstr[] = {0}; +static const unsigned char kat793_addin0[] = {0}; +static const unsigned char kat793_addin1[] = {0}; +static const unsigned char kat793_retbits[] = { + 0x5c, 0x6a, 0xed, 0xc0, 0x20, 0xe7, 0x64, 0xf4, 0xd3, 0xbb, 0x8a, 0xbc, + 0x29, 0x07, 0xc9, 0xc6, 0x04, 0xdd, 0x98, 0xe1, 0xcf, 0xc2, 0x88, 0x2e, + 0xa7, 0x2d, 0x55, 0x4e, 0x39, 0xfe, 0x86, 0x46, 0x3a, 0x51, 0x88, 0x6d, + 0x98, 0x0a, 0xc8, 0xcd, 0xda, 0x0f, 0x4e, 0x58, 0x42, 0x26, 0xd4, 0x53, + 0x44, 0xe4, 0x3d, 0xd8, 0x4e, 0x84, 0x30, 0xf5, 0x8c, 0x38, 0x80, 0xa0, + 0xce, 0x93, 0x08, 0x63, +}; +static const struct drbg_kat_no_reseed kat793_t = { + 12, kat793_entropyin, kat793_nonce, kat793_persstr, + kat793_addin0, kat793_addin1, kat793_retbits +}; +static const struct drbg_kat kat793 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat793_t +}; + +static const unsigned char kat794_entropyin[] = { + 0xb6, 0x94, 0xce, 0x5f, 0x4d, 0x9a, 0xf4, 0xce, 0x93, 0x62, 0x66, 0x36, + 0xc9, 0xec, 0xb3, 0x41, 0xf3, 0xf5, 0x15, 0x2f, 0xd5, 0x80, 0x74, 0x52, + 0x02, 0xcd, 0x0c, 0x83, 0xf4, 0xd5, 0xb4, 0xc5, +}; +static const unsigned char kat794_nonce[] = {0}; +static const unsigned char kat794_persstr[] = {0}; +static const unsigned char kat794_addin0[] = {0}; +static const unsigned char kat794_addin1[] = {0}; +static const unsigned char kat794_retbits[] = { + 0x78, 0xb3, 0x2d, 0x39, 0x6f, 0x5a, 0x91, 0x9f, 0x5c, 0xcb, 0x9b, 0xe2, + 0xaf, 0xaf, 0x5f, 0x62, 0x12, 0xd7, 0x5b, 0xf0, 0x84, 0xe9, 0x93, 0x57, + 0xe2, 0x8c, 0xcc, 0x98, 0xd4, 0x33, 0x69, 0x64, 0x55, 0xb1, 0x0a, 0x85, + 0xec, 0xaf, 0x61, 0x68, 0x6a, 0x96, 0x60, 0x6f, 0xf3, 0xe8, 0x96, 0x23, + 0x21, 0x35, 0x8a, 0x56, 0xfa, 0x53, 0xca, 0xbb, 0xf1, 0x6c, 0x65, 0xc1, + 0xc3, 0x2d, 0xeb, 0xcd, +}; +static const struct drbg_kat_no_reseed kat794_t = { + 13, kat794_entropyin, kat794_nonce, kat794_persstr, + kat794_addin0, kat794_addin1, kat794_retbits +}; +static const struct drbg_kat kat794 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat794_t +}; + +static const unsigned char kat795_entropyin[] = { + 0x42, 0xcb, 0x18, 0x3d, 0x2a, 0x04, 0xc8, 0x9c, 0x69, 0xef, 0xbc, 0xec, + 0x08, 0xbe, 0xe2, 0x00, 0x3b, 0x9a, 0x1c, 0xd5, 0x68, 0x78, 0xa7, 0x74, + 0xf0, 0x16, 0x2b, 0xf7, 0x0f, 0x2c, 0x70, 0x8f, +}; +static const unsigned char kat795_nonce[] = {0}; +static const unsigned char kat795_persstr[] = {0}; +static const unsigned char kat795_addin0[] = {0}; +static const unsigned char kat795_addin1[] = {0}; +static const unsigned char kat795_retbits[] = { + 0xcb, 0x4a, 0xfd, 0xec, 0x03, 0x3b, 0x42, 0x94, 0x9e, 0xbb, 0xb2, 0x72, + 0x45, 0xfd, 0x33, 0xc1, 0x50, 0x3c, 0x12, 0x78, 0x02, 0x7e, 0x11, 0xa1, + 0xf0, 0x50, 0xe0, 0x40, 0x80, 0xab, 0xe4, 0x85, 0x08, 0x21, 0xb7, 0x1e, + 0xd5, 0xa6, 0xbd, 0x83, 0xda, 0x6b, 0xde, 0x8e, 0x56, 0xc5, 0xfa, 0xed, + 0x49, 0xda, 0x26, 0x88, 0x70, 0x28, 0xba, 0xb8, 0x07, 0xd1, 0xad, 0x05, + 0x5e, 0x2a, 0x8a, 0x27, +}; +static const struct drbg_kat_no_reseed kat795_t = { + 14, kat795_entropyin, kat795_nonce, kat795_persstr, + kat795_addin0, kat795_addin1, kat795_retbits +}; +static const struct drbg_kat kat795 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat795_t +}; + +static const unsigned char kat796_entropyin[] = { + 0x7f, 0x40, 0x80, 0x46, 0x93, 0x55, 0x2e, 0x31, 0x75, 0x23, 0xfd, 0xa6, + 0x93, 0x5a, 0x5b, 0xc8, 0x14, 0x35, 0x3b, 0x1f, 0xbb, 0x7d, 0x33, 0x49, + 0x64, 0xac, 0x4d, 0x1d, 0x12, 0xdd, 0xcc, 0xce, +}; +static const unsigned char kat796_nonce[] = {0}; +static const unsigned char kat796_persstr[] = {0}; +static const unsigned char kat796_addin0[] = { + 0x95, 0xc0, 0x42, 0x59, 0xf6, 0x4f, 0xcd, 0x1f, 0xe0, 0x0c, 0x18, 0x3a, + 0xa3, 0xfb, 0x76, 0xb8, 0xa7, 0x3b, 0x4d, 0x12, 0x43, 0xb8, 0x00, 0xd7, + 0x70, 0xe3, 0x85, 0x15, 0xbc, 0x41, 0x14, 0x3c, +}; +static const unsigned char kat796_addin1[] = { + 0x55, 0x23, 0x10, 0x2d, 0xbd, 0x7f, 0xe1, 0x22, 0x84, 0x36, 0xb9, 0x1a, + 0x76, 0x5b, 0x16, 0x5a, 0xe6, 0x40, 0x5e, 0xb0, 0x23, 0x6e, 0x23, 0x7a, + 0xfa, 0xd4, 0x75, 0x9c, 0xf0, 0x88, 0x89, 0x41, +}; +static const unsigned char kat796_retbits[] = { + 0x1a, 0xbf, 0x6b, 0xcc, 0xb4, 0xc2, 0xd6, 0x4e, 0x51, 0x87, 0xb1, 0xe2, + 0xe3, 0x4e, 0x49, 0x3e, 0xca, 0x20, 0x4e, 0xe4, 0xee, 0xf0, 0xd9, 0x64, + 0x26, 0x7e, 0x38, 0x22, 0x8f, 0x5f, 0x20, 0xef, 0xba, 0x37, 0x64, 0x30, + 0xa2, 0x66, 0xf3, 0x83, 0x29, 0x16, 0xd0, 0xa4, 0x5b, 0x27, 0x03, 0xf4, + 0x64, 0x01, 0xdf, 0xd1, 0x45, 0xe4, 0x47, 0xa0, 0xa1, 0x66, 0x7e, 0xbd, + 0x8b, 0x6e, 0xe7, 0x48, +}; +static const struct drbg_kat_no_reseed kat796_t = { + 0, kat796_entropyin, kat796_nonce, kat796_persstr, + kat796_addin0, kat796_addin1, kat796_retbits +}; +static const struct drbg_kat kat796 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat796_t +}; + +static const unsigned char kat797_entropyin[] = { + 0x35, 0x0d, 0xf6, 0x77, 0x40, 0x9a, 0x1d, 0xc2, 0x97, 0xd0, 0x1d, 0x37, + 0x16, 0xa2, 0xab, 0xdf, 0xa6, 0x27, 0x2c, 0xd0, 0x30, 0xab, 0x75, 0xf7, + 0x68, 0x39, 0x64, 0x85, 0x82, 0xb4, 0x71, 0x13, +}; +static const unsigned char kat797_nonce[] = {0}; +static const unsigned char kat797_persstr[] = {0}; +static const unsigned char kat797_addin0[] = { + 0xba, 0x57, 0x09, 0xa1, 0x2a, 0xe6, 0x63, 0x4a, 0x54, 0x36, 0xb7, 0xea, + 0x06, 0x83, 0x8b, 0x48, 0xf7, 0xb8, 0x47, 0xa2, 0x37, 0xf6, 0x65, 0x4a, + 0x0e, 0x27, 0xc7, 0x76, 0xeb, 0xee, 0x95, 0x11, +}; +static const unsigned char kat797_addin1[] = { + 0xf1, 0xb2, 0xc7, 0x17, 0xc5, 0xe3, 0xa9, 0x34, 0x12, 0x7e, 0x10, 0x47, + 0x1d, 0x67, 0xac, 0xcc, 0x65, 0xf4, 0xa4, 0x50, 0x10, 0xca, 0x53, 0xb3, + 0x5f, 0x54, 0xc8, 0x88, 0x33, 0xdb, 0xd8, 0xe7, +}; +static const unsigned char kat797_retbits[] = { + 0x1e, 0xf1, 0xea, 0x27, 0x98, 0x12, 0xe8, 0xab, 0xe5, 0x4f, 0x7f, 0xfd, + 0x12, 0xd0, 0x4c, 0x80, 0xae, 0x40, 0x74, 0x1f, 0x4c, 0xcf, 0xe2, 0x32, + 0xa5, 0xfb, 0xa3, 0xa7, 0x8d, 0xfd, 0x3e, 0x2e, 0xd4, 0x19, 0xb8, 0x8e, + 0xe9, 0x18, 0x8d, 0xf7, 0x24, 0x16, 0x0c, 0xbb, 0x3a, 0xea, 0x0f, 0x27, + 0x6e, 0x84, 0xa3, 0xc0, 0xff, 0x01, 0xe3, 0xb8, 0x9f, 0xe3, 0x0e, 0xbc, + 0xfa, 0x64, 0xcb, 0x86, +}; +static const struct drbg_kat_no_reseed kat797_t = { + 1, kat797_entropyin, kat797_nonce, kat797_persstr, + kat797_addin0, kat797_addin1, kat797_retbits +}; +static const struct drbg_kat kat797 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat797_t +}; + +static const unsigned char kat798_entropyin[] = { + 0xd6, 0x2a, 0xa5, 0x85, 0xb3, 0x44, 0xad, 0xaf, 0xfb, 0x31, 0x01, 0x0b, + 0xce, 0xf4, 0x0a, 0x1d, 0x6e, 0xc6, 0x29, 0xc4, 0xf4, 0xc5, 0xa2, 0x4c, + 0x37, 0x87, 0x7f, 0x19, 0xcc, 0x05, 0xb3, 0xb4, +}; +static const unsigned char kat798_nonce[] = {0}; +static const unsigned char kat798_persstr[] = {0}; +static const unsigned char kat798_addin0[] = { + 0x7f, 0x98, 0x0b, 0x7b, 0x8c, 0x72, 0x5c, 0x92, 0xc2, 0xc3, 0xdc, 0x73, + 0x5b, 0xc2, 0x16, 0xcb, 0x46, 0x62, 0xb0, 0xb8, 0x90, 0x52, 0x89, 0xa8, + 0xf3, 0xf2, 0xe3, 0x99, 0x96, 0xa1, 0x03, 0xdb, +}; +static const unsigned char kat798_addin1[] = { + 0xe1, 0xd3, 0xa1, 0x41, 0xbc, 0xda, 0xec, 0x1b, 0x11, 0x5c, 0x9a, 0x7b, + 0xf7, 0x6d, 0xed, 0xc7, 0x8d, 0xf6, 0x83, 0xe7, 0x42, 0x7f, 0x04, 0xd1, + 0x0e, 0xdd, 0xa1, 0x8f, 0xd9, 0x3d, 0x68, 0xe3, +}; +static const unsigned char kat798_retbits[] = { + 0x60, 0xca, 0xfc, 0xd5, 0x28, 0x63, 0xc6, 0xeb, 0x2d, 0xee, 0x96, 0x48, + 0x13, 0x3a, 0x42, 0x06, 0x46, 0xae, 0xda, 0xc5, 0xe2, 0x69, 0x7e, 0x50, + 0x31, 0x80, 0xdf, 0xde, 0x1c, 0xa2, 0xd1, 0xa2, 0xfc, 0xb1, 0x9b, 0x05, + 0x9c, 0x3b, 0x6b, 0xf8, 0xe4, 0xb2, 0x76, 0x77, 0x78, 0x28, 0xb1, 0x38, + 0x4d, 0x86, 0xe8, 0x7d, 0xfc, 0x9d, 0x69, 0xed, 0x3e, 0x27, 0x61, 0x0c, + 0x2b, 0x5e, 0xc8, 0x42, +}; +static const struct drbg_kat_no_reseed kat798_t = { + 2, kat798_entropyin, kat798_nonce, kat798_persstr, + kat798_addin0, kat798_addin1, kat798_retbits +}; +static const struct drbg_kat kat798 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat798_t +}; + +static const unsigned char kat799_entropyin[] = { + 0x9c, 0x65, 0x30, 0x5b, 0x5b, 0xf8, 0x23, 0x44, 0x05, 0x68, 0x22, 0x7e, + 0x45, 0x8d, 0x7f, 0xc1, 0x07, 0xef, 0xd6, 0x6f, 0xc6, 0x3e, 0x27, 0xac, + 0xce, 0x90, 0x02, 0x0b, 0x6c, 0x0b, 0xe2, 0x56, +}; +static const unsigned char kat799_nonce[] = {0}; +static const unsigned char kat799_persstr[] = {0}; +static const unsigned char kat799_addin0[] = { + 0x64, 0xff, 0xc1, 0x7e, 0x8c, 0x9d, 0xd2, 0x44, 0xe8, 0x63, 0x40, 0x52, + 0x65, 0xf4, 0x8e, 0x0b, 0xb2, 0x51, 0x8f, 0x7e, 0x5d, 0xc0, 0x1a, 0x99, + 0xec, 0x83, 0x81, 0x99, 0x8f, 0x78, 0x19, 0x0f, +}; +static const unsigned char kat799_addin1[] = { + 0xcd, 0x62, 0xc9, 0xf0, 0xe4, 0xdb, 0x01, 0x1f, 0x60, 0x68, 0x75, 0x79, + 0x9e, 0x3f, 0xfe, 0x12, 0x9b, 0xeb, 0x1f, 0xd6, 0x80, 0x15, 0xf5, 0x97, + 0x2f, 0x1b, 0x98, 0x46, 0x96, 0x84, 0xef, 0xec, +}; +static const unsigned char kat799_retbits[] = { + 0xc4, 0xe9, 0xac, 0xc0, 0xb6, 0x58, 0xa0, 0x4f, 0xb3, 0xea, 0xdb, 0xf9, + 0x84, 0x40, 0x47, 0x3a, 0x3a, 0xaf, 0x4b, 0x05, 0xf7, 0xcd, 0x39, 0xe4, + 0x60, 0xb7, 0xf4, 0x64, 0x8c, 0xbd, 0x45, 0x2a, 0x9f, 0x21, 0x91, 0x32, + 0x0c, 0x69, 0x32, 0x89, 0x2a, 0x08, 0xf5, 0x8a, 0x68, 0x5b, 0x7d, 0x52, + 0x5b, 0x08, 0x75, 0x66, 0xad, 0xd4, 0x53, 0x4e, 0x0c, 0x13, 0x07, 0x94, + 0x22, 0x55, 0x22, 0x04, +}; +static const struct drbg_kat_no_reseed kat799_t = { + 3, kat799_entropyin, kat799_nonce, kat799_persstr, + kat799_addin0, kat799_addin1, kat799_retbits +}; +static const struct drbg_kat kat799 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat799_t +}; + +static const unsigned char kat800_entropyin[] = { + 0xa5, 0xc7, 0x81, 0x32, 0xf4, 0x31, 0xc1, 0x6e, 0xed, 0x01, 0xf5, 0x6b, + 0x60, 0x0d, 0x62, 0x8e, 0xeb, 0xbd, 0xd9, 0xf1, 0xe2, 0x73, 0xc7, 0x3d, + 0x8d, 0x9c, 0x8e, 0x51, 0x72, 0x38, 0x79, 0x1a, +}; +static const unsigned char kat800_nonce[] = {0}; +static const unsigned char kat800_persstr[] = {0}; +static const unsigned char kat800_addin0[] = { + 0x47, 0xc2, 0xe6, 0xa9, 0x1a, 0x44, 0xc6, 0x3e, 0x86, 0x81, 0x7c, 0xcb, + 0xc8, 0x3e, 0xb2, 0x20, 0x53, 0x45, 0xcc, 0x47, 0x1a, 0xac, 0x3e, 0xb8, + 0x04, 0xb3, 0xc1, 0x29, 0x75, 0x74, 0xd8, 0x18, +}; +static const unsigned char kat800_addin1[] = { + 0x33, 0xb2, 0x8b, 0x7a, 0xfa, 0x3d, 0xb3, 0xc9, 0x65, 0x47, 0x1e, 0xe9, + 0x9b, 0xe5, 0x95, 0xa5, 0x6b, 0x85, 0x5b, 0x4a, 0x43, 0x13, 0x6f, 0x4d, + 0xdd, 0x6d, 0x17, 0x57, 0x6d, 0x7a, 0x5f, 0x29, +}; +static const unsigned char kat800_retbits[] = { + 0xa1, 0x9e, 0xa9, 0x9b, 0x55, 0x08, 0x5f, 0x38, 0x3d, 0x7d, 0x35, 0xaf, + 0x58, 0x54, 0xbe, 0x11, 0x5e, 0xf5, 0x06, 0xe0, 0x7a, 0xf4, 0x98, 0x82, + 0x05, 0xbf, 0x9d, 0xe8, 0x78, 0xa4, 0x52, 0x83, 0x1a, 0x3d, 0xb3, 0x3b, + 0x9b, 0x5c, 0x96, 0x59, 0x39, 0xa7, 0x22, 0x59, 0x9d, 0x97, 0x6a, 0xed, + 0x32, 0x6b, 0x2b, 0xe6, 0xd2, 0x14, 0xdf, 0x49, 0x11, 0xd3, 0x8e, 0xaa, + 0xb8, 0xb0, 0x6c, 0x0d, +}; +static const struct drbg_kat_no_reseed kat800_t = { + 4, kat800_entropyin, kat800_nonce, kat800_persstr, + kat800_addin0, kat800_addin1, kat800_retbits +}; +static const struct drbg_kat kat800 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat800_t +}; + +static const unsigned char kat801_entropyin[] = { + 0x7b, 0x2f, 0xbc, 0x29, 0xb3, 0x1c, 0x2a, 0xe4, 0xb0, 0x4e, 0x3a, 0xfa, + 0x80, 0x16, 0xd3, 0x9a, 0x36, 0x4c, 0x51, 0x55, 0x55, 0xc7, 0x49, 0xbe, + 0xe4, 0xd9, 0xcf, 0xba, 0x78, 0x62, 0x53, 0x29, +}; +static const unsigned char kat801_nonce[] = {0}; +static const unsigned char kat801_persstr[] = {0}; +static const unsigned char kat801_addin0[] = { + 0x50, 0x0c, 0x5a, 0x69, 0xbd, 0xac, 0x31, 0x9f, 0xa7, 0xbf, 0x3d, 0x14, + 0xc0, 0x2a, 0xef, 0xfd, 0x7e, 0xad, 0x71, 0x89, 0x5e, 0x08, 0xd6, 0x08, + 0xba, 0xf0, 0x39, 0x77, 0xe5, 0x96, 0xc1, 0xeb, +}; +static const unsigned char kat801_addin1[] = { + 0xf0, 0xbe, 0x7f, 0x9d, 0x86, 0xbc, 0x91, 0x6a, 0xa4, 0x95, 0x00, 0x41, + 0xb0, 0x0a, 0x2d, 0x22, 0x85, 0x68, 0xf5, 0x08, 0x0d, 0xf8, 0x1a, 0x8a, + 0xd8, 0x89, 0x3a, 0xfc, 0x76, 0xa1, 0xfd, 0x7a, +}; +static const unsigned char kat801_retbits[] = { + 0x92, 0x59, 0x11, 0xee, 0x20, 0x8d, 0x75, 0xb3, 0x68, 0xc1, 0x9b, 0x84, + 0x3d, 0x17, 0x6b, 0x24, 0xf2, 0xa0, 0xea, 0x8b, 0x07, 0x0b, 0xed, 0xeb, + 0x70, 0x75, 0x3c, 0xf6, 0x2a, 0xaf, 0x70, 0x48, 0x0d, 0x65, 0x2c, 0x16, + 0x95, 0x5e, 0x96, 0x1a, 0xc8, 0x40, 0x64, 0x8e, 0xa6, 0xcb, 0xa2, 0x1c, + 0x4d, 0xe0, 0xb3, 0x01, 0x65, 0xf2, 0xd0, 0x3c, 0x85, 0xbb, 0x9e, 0x31, + 0xa9, 0xea, 0x03, 0x6f, +}; +static const struct drbg_kat_no_reseed kat801_t = { + 5, kat801_entropyin, kat801_nonce, kat801_persstr, + kat801_addin0, kat801_addin1, kat801_retbits +}; +static const struct drbg_kat kat801 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat801_t +}; + +static const unsigned char kat802_entropyin[] = { + 0x32, 0xa8, 0x12, 0xab, 0xbf, 0xdd, 0xd3, 0x55, 0xe2, 0xf7, 0x43, 0x95, + 0x4f, 0x28, 0xf4, 0x14, 0x25, 0xf1, 0x76, 0xc3, 0xc6, 0x38, 0x7f, 0x0c, + 0xcd, 0x9b, 0x99, 0x25, 0x03, 0x97, 0xcf, 0x3e, +}; +static const unsigned char kat802_nonce[] = {0}; +static const unsigned char kat802_persstr[] = {0}; +static const unsigned char kat802_addin0[] = { + 0x60, 0xcd, 0x7a, 0xf1, 0xe2, 0xae, 0xdd, 0x65, 0xbd, 0x1f, 0x1d, 0xf0, + 0x8f, 0x76, 0xab, 0xaf, 0x7c, 0x09, 0xe5, 0x8e, 0x32, 0x17, 0x28, 0x12, + 0x6a, 0xc6, 0x5b, 0xb1, 0x14, 0x3e, 0xd1, 0x9e, +}; +static const unsigned char kat802_addin1[] = { + 0x6c, 0x4b, 0xb5, 0x48, 0x32, 0x70, 0x65, 0x5c, 0x50, 0xe0, 0xe0, 0x58, + 0x4c, 0xb9, 0xb1, 0xd4, 0xfa, 0x85, 0x4f, 0xd2, 0x2a, 0x8d, 0x72, 0x13, + 0x05, 0x05, 0xdf, 0x37, 0x38, 0x08, 0x3e, 0x35, +}; +static const unsigned char kat802_retbits[] = { + 0x39, 0x05, 0x6f, 0x33, 0xda, 0x2f, 0x31, 0xa9, 0x63, 0xd9, 0x7f, 0xb8, + 0xd8, 0xc7, 0x4f, 0x89, 0xc4, 0x05, 0x57, 0x4b, 0x4d, 0xc4, 0x19, 0x6c, + 0xfc, 0x22, 0xba, 0x6f, 0xa9, 0x62, 0xe6, 0xc7, 0xcc, 0xbb, 0x96, 0x75, + 0x5e, 0x15, 0x82, 0xd4, 0x1e, 0xe9, 0x10, 0x45, 0x1d, 0xaa, 0x5b, 0x3a, + 0x33, 0x57, 0x9e, 0x42, 0x8e, 0x3c, 0x45, 0x7c, 0x9a, 0x8b, 0xe6, 0x09, + 0xc3, 0xfb, 0x71, 0x0e, +}; +static const struct drbg_kat_no_reseed kat802_t = { + 6, kat802_entropyin, kat802_nonce, kat802_persstr, + kat802_addin0, kat802_addin1, kat802_retbits +}; +static const struct drbg_kat kat802 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat802_t +}; + +static const unsigned char kat803_entropyin[] = { + 0xb6, 0xd8, 0x01, 0xb3, 0xfe, 0xa2, 0x8a, 0xfa, 0x07, 0xd0, 0x90, 0x73, + 0x10, 0x87, 0xa5, 0xe5, 0x3f, 0x83, 0xcf, 0x9d, 0x98, 0x0d, 0x99, 0xb8, + 0xec, 0x5f, 0x05, 0x23, 0x1c, 0x7a, 0x7f, 0xdd, +}; +static const unsigned char kat803_nonce[] = {0}; +static const unsigned char kat803_persstr[] = {0}; +static const unsigned char kat803_addin0[] = { + 0x2e, 0xd2, 0xa9, 0xdb, 0x70, 0xa8, 0xe0, 0xe1, 0x44, 0x29, 0xdf, 0x36, + 0x31, 0x42, 0x95, 0x11, 0xc3, 0xc0, 0xb9, 0x10, 0xad, 0xb0, 0x81, 0x36, + 0xba, 0x39, 0xc6, 0xbd, 0xd0, 0xaa, 0x5c, 0x99, +}; +static const unsigned char kat803_addin1[] = { + 0xd4, 0x75, 0x2a, 0x12, 0x07, 0x92, 0xd4, 0x04, 0x70, 0x3c, 0x33, 0xa4, + 0xd0, 0x3c, 0x74, 0x58, 0x71, 0xc0, 0xf1, 0x20, 0xe2, 0x9b, 0xf6, 0x16, + 0xe1, 0x56, 0x05, 0xa4, 0x93, 0x2a, 0xad, 0x2e, +}; +static const unsigned char kat803_retbits[] = { + 0x83, 0x65, 0x75, 0x89, 0x8c, 0xce, 0x37, 0x93, 0x41, 0xb6, 0x89, 0xd5, + 0x1c, 0x59, 0x7d, 0xc7, 0xc2, 0xd9, 0x3e, 0x2b, 0x73, 0xb6, 0xff, 0xfb, + 0xe0, 0xd8, 0x5e, 0x0c, 0x91, 0x78, 0xa2, 0x9b, 0xe4, 0xb5, 0xc9, 0x5d, + 0xf1, 0xc1, 0x23, 0x88, 0xdd, 0x9a, 0xa9, 0x71, 0x4a, 0x73, 0x31, 0xef, + 0x0d, 0x70, 0xd2, 0x04, 0xe9, 0xca, 0x73, 0x67, 0x9a, 0x80, 0x59, 0x95, + 0x9c, 0xe0, 0x98, 0x28, +}; +static const struct drbg_kat_no_reseed kat803_t = { + 7, kat803_entropyin, kat803_nonce, kat803_persstr, + kat803_addin0, kat803_addin1, kat803_retbits +}; +static const struct drbg_kat kat803 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat803_t +}; + +static const unsigned char kat804_entropyin[] = { + 0x02, 0x73, 0x74, 0x94, 0xaf, 0xfe, 0xb7, 0xdc, 0x7f, 0xc2, 0x41, 0x70, + 0x3b, 0x7c, 0x62, 0xe8, 0x2f, 0x74, 0x8e, 0x3f, 0xe9, 0xad, 0x5a, 0xbe, + 0x44, 0x6d, 0x01, 0x4e, 0xf3, 0x5d, 0xb3, 0x4b, +}; +static const unsigned char kat804_nonce[] = {0}; +static const unsigned char kat804_persstr[] = {0}; +static const unsigned char kat804_addin0[] = { + 0xe6, 0x6b, 0x9a, 0xec, 0x28, 0xb2, 0x07, 0x81, 0xd6, 0x73, 0xe7, 0x2c, + 0x47, 0x6a, 0xad, 0x99, 0xe8, 0xa6, 0xe3, 0x46, 0x24, 0xbe, 0x7d, 0x1d, + 0x5a, 0xab, 0x7d, 0xd3, 0xe4, 0x3b, 0x90, 0x16, +}; +static const unsigned char kat804_addin1[] = { + 0x9a, 0x91, 0x02, 0x95, 0xc1, 0x50, 0x1b, 0xfd, 0xd0, 0x75, 0xe8, 0xe6, + 0x62, 0xb9, 0x13, 0xbc, 0x22, 0x9e, 0x87, 0xd6, 0xf3, 0xfd, 0xf6, 0xd2, + 0x4f, 0x1b, 0xfb, 0x6c, 0x55, 0x98, 0x7c, 0x0f, +}; +static const unsigned char kat804_retbits[] = { + 0x52, 0x7b, 0x31, 0xc1, 0x59, 0x55, 0x75, 0xaa, 0x9a, 0x01, 0x77, 0x5b, + 0x48, 0x4d, 0xb0, 0xa5, 0xb4, 0x5d, 0x7c, 0x2e, 0x25, 0xc6, 0xf4, 0xf0, + 0xf3, 0x1e, 0x12, 0xa3, 0x71, 0xf8, 0x85, 0x0b, 0x7e, 0x1b, 0xdd, 0xc7, + 0xd9, 0x70, 0xe3, 0x5d, 0x85, 0x73, 0xaa, 0xd4, 0xd2, 0x68, 0xd8, 0x5c, + 0x05, 0xac, 0xd3, 0x26, 0xcc, 0x53, 0xbe, 0x46, 0x5b, 0xec, 0x8d, 0xdd, + 0x94, 0xe6, 0x58, 0xaa, +}; +static const struct drbg_kat_no_reseed kat804_t = { + 8, kat804_entropyin, kat804_nonce, kat804_persstr, + kat804_addin0, kat804_addin1, kat804_retbits +}; +static const struct drbg_kat kat804 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat804_t +}; + +static const unsigned char kat805_entropyin[] = { + 0x8c, 0x53, 0x18, 0xcb, 0x8e, 0x6e, 0x50, 0xb7, 0x7e, 0xf0, 0x89, 0x12, + 0x85, 0x50, 0x6f, 0xff, 0x94, 0xd7, 0x86, 0xa7, 0x11, 0x19, 0x5d, 0xc0, + 0x95, 0x24, 0x57, 0x84, 0xad, 0x1a, 0x4d, 0x09, +}; +static const unsigned char kat805_nonce[] = {0}; +static const unsigned char kat805_persstr[] = {0}; +static const unsigned char kat805_addin0[] = { + 0x07, 0xb7, 0xaa, 0x1e, 0xbc, 0x3c, 0xe5, 0x3e, 0x93, 0xf4, 0xce, 0x07, + 0x63, 0x43, 0x8e, 0xe6, 0x90, 0x53, 0xe3, 0x2b, 0x5e, 0x9b, 0xa3, 0x7b, + 0xfb, 0xbc, 0x34, 0x41, 0x05, 0x49, 0xc8, 0xe6, +}; +static const unsigned char kat805_addin1[] = { + 0x5a, 0x6b, 0x6d, 0xe7, 0x8e, 0xfa, 0x9c, 0x73, 0xac, 0xcd, 0x4f, 0x96, + 0xf9, 0xe1, 0xa2, 0xff, 0x9a, 0x1b, 0xba, 0x02, 0xf1, 0x27, 0xe5, 0xe5, + 0xbc, 0x25, 0x72, 0xf8, 0x46, 0xce, 0xb2, 0x2f, +}; +static const unsigned char kat805_retbits[] = { + 0xaf, 0x02, 0x59, 0x4e, 0x48, 0x23, 0x85, 0x93, 0x59, 0x4e, 0x60, 0x07, + 0xf7, 0x49, 0x4e, 0x64, 0xec, 0xe2, 0x2b, 0x5b, 0x66, 0x2b, 0xe4, 0x4d, + 0x91, 0x23, 0xed, 0x42, 0x58, 0x9f, 0xdd, 0xea, 0xce, 0x37, 0x73, 0xd9, + 0x27, 0x9c, 0x0e, 0x1c, 0xc8, 0xec, 0x41, 0x95, 0x85, 0x89, 0x58, 0x69, + 0x99, 0xa7, 0x4d, 0xe2, 0x36, 0x4e, 0x47, 0x8a, 0x91, 0x93, 0x38, 0x00, + 0x1b, 0x37, 0xc8, 0xdf, +}; +static const struct drbg_kat_no_reseed kat805_t = { + 9, kat805_entropyin, kat805_nonce, kat805_persstr, + kat805_addin0, kat805_addin1, kat805_retbits +}; +static const struct drbg_kat kat805 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat805_t +}; + +static const unsigned char kat806_entropyin[] = { + 0xf6, 0x01, 0x4c, 0x31, 0xae, 0x35, 0x81, 0xee, 0xad, 0x6f, 0x83, 0x36, + 0x8e, 0x33, 0xb3, 0xf3, 0x3d, 0x01, 0xe2, 0xf0, 0x2e, 0xb7, 0xfc, 0xc2, + 0x8d, 0x44, 0x77, 0xfc, 0x60, 0xfa, 0x96, 0x93, +}; +static const unsigned char kat806_nonce[] = {0}; +static const unsigned char kat806_persstr[] = {0}; +static const unsigned char kat806_addin0[] = { + 0x6b, 0xfa, 0xcf, 0xe8, 0xea, 0x4c, 0xd9, 0xe0, 0x6b, 0x4a, 0xff, 0xa4, + 0x18, 0xf6, 0x7d, 0x5d, 0xd9, 0xde, 0x84, 0x3f, 0x4d, 0x64, 0xae, 0x89, + 0x50, 0x57, 0x62, 0xf4, 0x24, 0x54, 0x54, 0x73, +}; +static const unsigned char kat806_addin1[] = { + 0xb6, 0xbc, 0xa6, 0x89, 0xa1, 0x2e, 0x05, 0x24, 0xc7, 0x56, 0x5b, 0xe1, + 0xff, 0xd8, 0x15, 0x2e, 0xaa, 0x8d, 0x08, 0x5b, 0x59, 0xc9, 0xe0, 0x4a, + 0xbc, 0xf3, 0xd9, 0x87, 0xba, 0xbe, 0x7b, 0x52, +}; +static const unsigned char kat806_retbits[] = { + 0x8e, 0x87, 0x22, 0x80, 0x0e, 0x6d, 0x83, 0xff, 0xad, 0x46, 0xd8, 0xe7, + 0x21, 0x0f, 0x9a, 0x49, 0x00, 0xa4, 0x18, 0xb9, 0x68, 0x13, 0x8f, 0xab, + 0x14, 0x9e, 0x17, 0x2d, 0xbf, 0xce, 0xc9, 0x51, 0xa2, 0xf0, 0x42, 0x8a, + 0xa8, 0xa2, 0x21, 0xeb, 0xb3, 0xcc, 0x49, 0x51, 0x82, 0x0d, 0x15, 0xe2, + 0x69, 0x91, 0x8b, 0xe9, 0x30, 0x67, 0xba, 0xf1, 0xce, 0x51, 0x97, 0x16, + 0x18, 0x99, 0x89, 0x42, +}; +static const struct drbg_kat_no_reseed kat806_t = { + 10, kat806_entropyin, kat806_nonce, kat806_persstr, + kat806_addin0, kat806_addin1, kat806_retbits +}; +static const struct drbg_kat kat806 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat806_t +}; + +static const unsigned char kat807_entropyin[] = { + 0x54, 0x44, 0x73, 0x37, 0x51, 0xa8, 0x10, 0x16, 0x10, 0xd7, 0xed, 0x86, + 0x2b, 0xcc, 0x4e, 0x64, 0xc4, 0xf8, 0xdd, 0xd2, 0x60, 0x8d, 0x9b, 0x4b, + 0xd6, 0xc5, 0x7c, 0x60, 0xf8, 0x8e, 0xde, 0xea, +}; +static const unsigned char kat807_nonce[] = {0}; +static const unsigned char kat807_persstr[] = {0}; +static const unsigned char kat807_addin0[] = { + 0x66, 0x26, 0x1a, 0x57, 0x65, 0x35, 0x11, 0x8d, 0x1a, 0x8f, 0x79, 0xd8, + 0x8b, 0x43, 0x38, 0x58, 0x88, 0xb2, 0x4a, 0x47, 0x24, 0xcd, 0x30, 0x9d, + 0xec, 0xe6, 0x66, 0xfb, 0xe2, 0x28, 0x27, 0x61, +}; +static const unsigned char kat807_addin1[] = { + 0x69, 0xff, 0xeb, 0x48, 0x17, 0xff, 0x31, 0x92, 0xf8, 0x02, 0x85, 0x83, + 0x73, 0xde, 0x1b, 0xaa, 0x45, 0x39, 0xb0, 0xe0, 0x66, 0x0b, 0x41, 0x24, + 0x3d, 0x77, 0xc5, 0xa2, 0x50, 0xbe, 0x34, 0xff, +}; +static const unsigned char kat807_retbits[] = { + 0xf0, 0xfc, 0x3d, 0x67, 0x89, 0x76, 0xe9, 0x29, 0x00, 0x1f, 0x87, 0x04, + 0x75, 0x94, 0xff, 0x5e, 0xcf, 0xb7, 0x9f, 0xf0, 0xcb, 0x1d, 0xbe, 0xad, + 0x84, 0x95, 0x0c, 0x4e, 0x7d, 0xcf, 0x3d, 0xd6, 0xd7, 0xfa, 0xe0, 0x22, + 0x64, 0x11, 0xc9, 0xf6, 0xc0, 0xff, 0x8f, 0xf8, 0xa9, 0xcb, 0xa6, 0xe3, + 0x78, 0x7b, 0x67, 0x96, 0xde, 0xa5, 0xd8, 0x3c, 0xb5, 0x4a, 0x08, 0xb3, + 0x2e, 0x15, 0xb7, 0x72, +}; +static const struct drbg_kat_no_reseed kat807_t = { + 11, kat807_entropyin, kat807_nonce, kat807_persstr, + kat807_addin0, kat807_addin1, kat807_retbits +}; +static const struct drbg_kat kat807 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat807_t +}; + +static const unsigned char kat808_entropyin[] = { + 0x1d, 0x4e, 0xf9, 0xf3, 0xc1, 0x95, 0x25, 0x97, 0xd3, 0xd6, 0x9a, 0x4c, + 0x2d, 0x1a, 0x05, 0xc8, 0xbf, 0xb1, 0x44, 0x54, 0x90, 0x0d, 0x95, 0x18, + 0xcc, 0x7f, 0xdf, 0x7c, 0x14, 0xbf, 0x6f, 0x68, +}; +static const unsigned char kat808_nonce[] = {0}; +static const unsigned char kat808_persstr[] = {0}; +static const unsigned char kat808_addin0[] = { + 0x6e, 0x24, 0x2a, 0xa9, 0xd9, 0xf5, 0x4f, 0xfa, 0xda, 0x21, 0xf4, 0xc9, + 0xf5, 0x9e, 0x48, 0xc4, 0xdb, 0x5b, 0x46, 0x4f, 0x0b, 0xeb, 0x88, 0x81, + 0x81, 0x5e, 0xa2, 0x0a, 0xaa, 0xb0, 0xf3, 0x25, +}; +static const unsigned char kat808_addin1[] = { + 0xc7, 0xe4, 0x01, 0x0f, 0x08, 0xc7, 0x8a, 0x61, 0x99, 0x51, 0x73, 0xc6, + 0x4c, 0xf2, 0x10, 0x4b, 0xe0, 0x39, 0x5f, 0x56, 0x60, 0x86, 0x98, 0xbf, + 0x8b, 0x0d, 0xd1, 0xb4, 0x89, 0x52, 0xff, 0x10, +}; +static const unsigned char kat808_retbits[] = { + 0xbb, 0x9d, 0x11, 0x9e, 0x29, 0xdd, 0x8b, 0xff, 0x19, 0x04, 0x21, 0xcf, + 0x33, 0xc6, 0xbd, 0x92, 0xc8, 0x81, 0x4f, 0xfe, 0x18, 0xad, 0xf4, 0x31, + 0x8a, 0xe8, 0xed, 0x48, 0xe5, 0xf0, 0xfe, 0x12, 0x53, 0xab, 0x79, 0xe9, + 0x12, 0xc3, 0xbf, 0x72, 0xa3, 0x73, 0x52, 0xfc, 0xc0, 0xac, 0x2c, 0x4c, + 0xee, 0xa1, 0xf9, 0x2b, 0xb5, 0xd1, 0x5c, 0x29, 0x66, 0xb9, 0x54, 0x2f, + 0x4e, 0xd3, 0xcc, 0x42, +}; +static const struct drbg_kat_no_reseed kat808_t = { + 12, kat808_entropyin, kat808_nonce, kat808_persstr, + kat808_addin0, kat808_addin1, kat808_retbits +}; +static const struct drbg_kat kat808 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat808_t +}; + +static const unsigned char kat809_entropyin[] = { + 0x2e, 0xbe, 0x17, 0x39, 0x77, 0xff, 0x27, 0xc8, 0xcf, 0xba, 0x5f, 0xd6, + 0x40, 0x65, 0x96, 0xbd, 0x6f, 0xfd, 0x39, 0x0c, 0xe3, 0xc5, 0x8a, 0x51, + 0xdd, 0xc8, 0xf4, 0x0d, 0x66, 0xf7, 0x4d, 0xed, +}; +static const unsigned char kat809_nonce[] = {0}; +static const unsigned char kat809_persstr[] = {0}; +static const unsigned char kat809_addin0[] = { + 0xdb, 0x2b, 0x2c, 0x32, 0x21, 0x28, 0xd4, 0x7f, 0x9d, 0x4e, 0x5e, 0x9c, + 0x2f, 0x00, 0x87, 0x15, 0x44, 0x0f, 0x91, 0x76, 0x65, 0xba, 0x8b, 0x0b, + 0x5d, 0x0f, 0x16, 0x9b, 0xf5, 0xd7, 0xe1, 0x83, +}; +static const unsigned char kat809_addin1[] = { + 0x13, 0xde, 0xb1, 0x8c, 0x70, 0x25, 0x09, 0x55, 0x9f, 0x3b, 0xde, 0x24, + 0xcb, 0xff, 0xf1, 0xe7, 0xec, 0x16, 0xb5, 0x00, 0x93, 0x45, 0xa9, 0x9f, + 0xd8, 0x6e, 0x0e, 0xe4, 0x1c, 0x27, 0x2c, 0xd6, +}; +static const unsigned char kat809_retbits[] = { + 0x42, 0xf0, 0x28, 0x74, 0xcf, 0xd5, 0xeb, 0x59, 0x87, 0xd6, 0x46, 0x93, + 0x72, 0xbc, 0xdc, 0x17, 0xfc, 0x00, 0x62, 0x52, 0x2a, 0x9f, 0x3b, 0x87, + 0x13, 0x71, 0x5b, 0x8e, 0xa2, 0xe6, 0x3a, 0x3a, 0x6f, 0x73, 0x6d, 0x95, + 0x7b, 0x1e, 0x7a, 0xec, 0xc7, 0x7f, 0x39, 0x04, 0x4e, 0x81, 0xe4, 0x61, + 0x12, 0x61, 0xa1, 0xeb, 0xb4, 0x6e, 0xbf, 0xee, 0xb5, 0x2c, 0x40, 0x58, + 0x73, 0xfb, 0x0d, 0xd6, +}; +static const struct drbg_kat_no_reseed kat809_t = { + 13, kat809_entropyin, kat809_nonce, kat809_persstr, + kat809_addin0, kat809_addin1, kat809_retbits +}; +static const struct drbg_kat kat809 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat809_t +}; + +static const unsigned char kat810_entropyin[] = { + 0xb1, 0xa2, 0xfd, 0x70, 0x84, 0xb0, 0x15, 0x0f, 0xe0, 0xa9, 0x15, 0x5c, + 0xa8, 0xe4, 0x62, 0x24, 0x56, 0x51, 0x18, 0xe7, 0x02, 0xec, 0x64, 0x21, + 0x53, 0x04, 0x91, 0x93, 0x97, 0x3e, 0x3a, 0x98, +}; +static const unsigned char kat810_nonce[] = {0}; +static const unsigned char kat810_persstr[] = {0}; +static const unsigned char kat810_addin0[] = { + 0xeb, 0x28, 0x88, 0x11, 0x9b, 0x00, 0x20, 0xcf, 0xf3, 0xac, 0x53, 0xcb, + 0xb8, 0x1d, 0x85, 0x76, 0x45, 0x7a, 0x86, 0x3f, 0xb0, 0x87, 0xf9, 0x1c, + 0x79, 0x5c, 0x29, 0x7f, 0x68, 0xd3, 0x26, 0x04, +}; +static const unsigned char kat810_addin1[] = { + 0xad, 0x80, 0xf4, 0xec, 0xff, 0x75, 0x8d, 0xa0, 0xa5, 0xbe, 0xed, 0x20, + 0xa9, 0xd8, 0x51, 0xfc, 0xca, 0x2a, 0xd4, 0xea, 0x0d, 0x54, 0xaf, 0x61, + 0x94, 0x70, 0xe3, 0xcf, 0x30, 0x33, 0xa0, 0x4a, +}; +static const unsigned char kat810_retbits[] = { + 0xe2, 0x10, 0x5e, 0x60, 0xf2, 0xf2, 0xfc, 0xeb, 0x27, 0xc8, 0x82, 0xca, + 0xeb, 0xb0, 0xc1, 0xec, 0xa5, 0x43, 0xc3, 0x59, 0x94, 0x7c, 0x43, 0x19, + 0xc5, 0x03, 0xef, 0xa8, 0x2e, 0xd5, 0xcb, 0x63, 0x64, 0x0f, 0x62, 0x7c, + 0x82, 0x21, 0x72, 0x60, 0xf0, 0x20, 0x32, 0x20, 0x43, 0x5c, 0x84, 0x2d, + 0x79, 0x93, 0x62, 0x3a, 0x2b, 0x05, 0xe2, 0x6e, 0x1e, 0xd1, 0xd0, 0x3f, + 0x68, 0xab, 0x3c, 0xb1, +}; +static const struct drbg_kat_no_reseed kat810_t = { + 14, kat810_entropyin, kat810_nonce, kat810_persstr, + kat810_addin0, kat810_addin1, kat810_retbits +}; +static const struct drbg_kat kat810 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat810_t +}; + +static const unsigned char kat811_entropyin[] = { + 0x3f, 0xef, 0x76, 0x2f, 0x0a, 0xa0, 0x67, 0x7f, 0x61, 0xc6, 0x5d, 0x74, + 0x9e, 0xeb, 0x10, 0xb0, 0x13, 0xff, 0x68, 0xcc, 0xc6, 0x31, 0x4f, 0x15, + 0x0c, 0xfe, 0xe7, 0x52, 0xdc, 0xd8, 0xf9, 0x87, +}; +static const unsigned char kat811_nonce[] = {0}; +static const unsigned char kat811_persstr[] = { + 0xf5, 0x6d, 0xb0, 0x99, 0x24, 0x0c, 0x75, 0x90, 0xda, 0xc3, 0x96, 0x37, + 0x2b, 0x87, 0x37, 0x40, 0x4d, 0x41, 0x8b, 0x28, 0x64, 0xa3, 0xdf, 0x96, + 0xa8, 0xa3, 0x97, 0x96, 0x72, 0x45, 0x73, 0x5f, +}; +static const unsigned char kat811_addin0[] = {0}; +static const unsigned char kat811_addin1[] = {0}; +static const unsigned char kat811_retbits[] = { + 0xaf, 0x0a, 0xfe, 0x08, 0x37, 0x44, 0x21, 0x36, 0xfb, 0xb1, 0x95, 0x9a, + 0x1c, 0x91, 0xa9, 0x29, 0x1c, 0x1d, 0x81, 0x88, 0xed, 0xe0, 0x7c, 0x67, + 0xd0, 0xe4, 0xdd, 0x65, 0x41, 0x30, 0x34, 0x15, 0xe7, 0xa6, 0x79, 0x99, + 0xc3, 0x02, 0xba, 0x0d, 0xf5, 0x55, 0x32, 0x4c, 0x26, 0x07, 0x75, 0x14, + 0x59, 0x2a, 0x9b, 0x6d, 0xb6, 0xbe, 0x2f, 0x15, 0x3f, 0xad, 0x22, 0x50, + 0x16, 0x11, 0x64, 0xe4, +}; +static const struct drbg_kat_no_reseed kat811_t = { + 0, kat811_entropyin, kat811_nonce, kat811_persstr, + kat811_addin0, kat811_addin1, kat811_retbits +}; +static const struct drbg_kat kat811 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat811_t +}; + +static const unsigned char kat812_entropyin[] = { + 0x3e, 0xeb, 0xe7, 0x7d, 0xb4, 0x63, 0x18, 0x62, 0xe3, 0xeb, 0x7e, 0x39, + 0x37, 0x05, 0x15, 0xb8, 0xba, 0xa1, 0xcd, 0xd7, 0x1a, 0x5b, 0x1b, 0x0c, + 0xda, 0x79, 0xc1, 0x4d, 0x0b, 0x5f, 0x48, 0xea, +}; +static const unsigned char kat812_nonce[] = {0}; +static const unsigned char kat812_persstr[] = { + 0x4b, 0xe5, 0x6a, 0x9b, 0x9c, 0x21, 0x24, 0x27, 0x39, 0xc9, 0x85, 0xef, + 0x12, 0xaa, 0x4d, 0x98, 0xe8, 0xc7, 0xda, 0x07, 0xc4, 0xc1, 0xdc, 0x68, + 0x29, 0xf2, 0xe0, 0x68, 0x33, 0xcf, 0xa1, 0x48, +}; +static const unsigned char kat812_addin0[] = {0}; +static const unsigned char kat812_addin1[] = {0}; +static const unsigned char kat812_retbits[] = { + 0xbe, 0x9e, 0x18, 0xa7, 0x53, 0xdf, 0x26, 0x19, 0x27, 0x47, 0x3c, 0x8b, + 0xb5, 0xfb, 0x7c, 0x3e, 0xa6, 0xe8, 0x21, 0xdf, 0x5a, 0xb4, 0x9a, 0xdc, + 0x56, 0x6a, 0x4e, 0xbf, 0x44, 0xf7, 0x5f, 0xa8, 0x25, 0xb1, 0xf9, 0xd8, + 0xc1, 0x54, 0xbc, 0xd4, 0x69, 0x13, 0x4c, 0x0b, 0xb6, 0x88, 0xe0, 0x7e, + 0x3c, 0x3e, 0x45, 0x40, 0x7c, 0xa3, 0x50, 0xd5, 0x40, 0xe1, 0x52, 0x8c, + 0xc2, 0xe6, 0x40, 0x68, +}; +static const struct drbg_kat_no_reseed kat812_t = { + 1, kat812_entropyin, kat812_nonce, kat812_persstr, + kat812_addin0, kat812_addin1, kat812_retbits +}; +static const struct drbg_kat kat812 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat812_t +}; + +static const unsigned char kat813_entropyin[] = { + 0x3a, 0x2a, 0x99, 0xb6, 0xcb, 0x3d, 0xdb, 0xe4, 0x11, 0xd6, 0xd5, 0xa2, + 0x68, 0xc5, 0x6f, 0xb3, 0x14, 0x41, 0xec, 0xd8, 0xba, 0x47, 0x85, 0x31, + 0x95, 0x86, 0x9e, 0x91, 0x2d, 0x3c, 0xbf, 0xff, +}; +static const unsigned char kat813_nonce[] = {0}; +static const unsigned char kat813_persstr[] = { + 0xbd, 0x1e, 0x82, 0x2b, 0x66, 0x18, 0x0e, 0xa2, 0x9a, 0x0d, 0x9e, 0x60, + 0x1e, 0x98, 0x3c, 0x1f, 0x7f, 0x54, 0x87, 0x5e, 0x8c, 0x9c, 0xd8, 0x34, + 0x63, 0x30, 0x9d, 0x14, 0xdb, 0xef, 0x0b, 0x82, +}; +static const unsigned char kat813_addin0[] = {0}; +static const unsigned char kat813_addin1[] = {0}; +static const unsigned char kat813_retbits[] = { + 0x04, 0xd1, 0xaa, 0xa8, 0x1c, 0xe4, 0xd2, 0xf5, 0xcc, 0xa3, 0x58, 0x1c, + 0x3a, 0xf5, 0xac, 0x81, 0xcd, 0xf0, 0x79, 0x70, 0xab, 0xe9, 0x80, 0x86, + 0x05, 0xb1, 0x74, 0x23, 0xb3, 0x55, 0xe1, 0xe2, 0x3a, 0x19, 0x34, 0x95, + 0xa9, 0x25, 0xe7, 0x62, 0x9a, 0xfe, 0x76, 0xf9, 0xb7, 0x3b, 0xcd, 0xd9, + 0x92, 0xc9, 0x63, 0x0c, 0x2e, 0xc6, 0x49, 0x1b, 0xd4, 0x82, 0xec, 0xe5, + 0xa4, 0x43, 0x84, 0xd0, +}; +static const struct drbg_kat_no_reseed kat813_t = { + 2, kat813_entropyin, kat813_nonce, kat813_persstr, + kat813_addin0, kat813_addin1, kat813_retbits +}; +static const struct drbg_kat kat813 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat813_t +}; + +static const unsigned char kat814_entropyin[] = { + 0xf9, 0xd7, 0xe6, 0x02, 0x60, 0x49, 0xbe, 0x4a, 0xd5, 0x1a, 0xe3, 0xea, + 0x23, 0xdf, 0x50, 0x43, 0x5b, 0x9e, 0x28, 0x41, 0x13, 0xaf, 0x4d, 0xe6, + 0x8a, 0x69, 0xc1, 0xd8, 0x68, 0xaa, 0x57, 0x2d, +}; +static const unsigned char kat814_nonce[] = {0}; +static const unsigned char kat814_persstr[] = { + 0x2b, 0x33, 0x7d, 0x90, 0xfe, 0x80, 0xe8, 0xe2, 0x06, 0x5e, 0xc3, 0x11, + 0x5f, 0x40, 0x4d, 0x44, 0x62, 0x2c, 0xcb, 0xad, 0x48, 0x6c, 0xf6, 0x37, + 0x98, 0xa2, 0x26, 0x83, 0xcc, 0xd4, 0x80, 0x87, +}; +static const unsigned char kat814_addin0[] = {0}; +static const unsigned char kat814_addin1[] = {0}; +static const unsigned char kat814_retbits[] = { + 0x21, 0x67, 0x49, 0xdb, 0xa2, 0xb9, 0xa5, 0x54, 0x71, 0xb1, 0xeb, 0x7f, + 0x39, 0x5c, 0x9a, 0x1d, 0x10, 0x5d, 0xb1, 0x54, 0x74, 0x9e, 0xf5, 0x1f, + 0xef, 0x1e, 0x67, 0x82, 0x66, 0xa5, 0xe4, 0x80, 0xc7, 0x5d, 0xc5, 0xac, + 0x4c, 0xc9, 0xde, 0xd2, 0x02, 0x21, 0x67, 0x08, 0x86, 0x0f, 0x41, 0x27, + 0x0a, 0xba, 0xdb, 0xc0, 0x94, 0xcd, 0x6c, 0x2c, 0xa3, 0xa0, 0xa3, 0xd9, + 0xa7, 0x0a, 0x1d, 0x70, +}; +static const struct drbg_kat_no_reseed kat814_t = { + 3, kat814_entropyin, kat814_nonce, kat814_persstr, + kat814_addin0, kat814_addin1, kat814_retbits +}; +static const struct drbg_kat kat814 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat814_t +}; + +static const unsigned char kat815_entropyin[] = { + 0x12, 0xcf, 0xd7, 0xda, 0xf1, 0x68, 0xd0, 0x90, 0x6d, 0xf0, 0xbc, 0x01, + 0xed, 0x5e, 0xd9, 0x39, 0x92, 0xbc, 0xb6, 0xc8, 0x5b, 0xef, 0xf2, 0xcd, + 0x3d, 0x2d, 0xff, 0x21, 0xff, 0x34, 0x80, 0xd5, +}; +static const unsigned char kat815_nonce[] = {0}; +static const unsigned char kat815_persstr[] = { + 0xdd, 0x85, 0x5c, 0xee, 0x76, 0x09, 0xaa, 0x1b, 0x76, 0xba, 0x7a, 0xa9, + 0xf3, 0x12, 0x5a, 0x1b, 0x68, 0x30, 0x79, 0x8c, 0x1a, 0x23, 0x97, 0xe5, + 0x02, 0xf5, 0x57, 0x47, 0xff, 0x35, 0x61, 0xca, +}; +static const unsigned char kat815_addin0[] = {0}; +static const unsigned char kat815_addin1[] = {0}; +static const unsigned char kat815_retbits[] = { + 0x25, 0xe0, 0x22, 0x50, 0x85, 0x0d, 0x1a, 0xc8, 0x2f, 0xdf, 0xc1, 0xb1, + 0x0b, 0xc0, 0xc5, 0x68, 0xa3, 0xbc, 0xfe, 0xe6, 0x91, 0x63, 0xe3, 0x02, + 0x1d, 0x5c, 0x5c, 0xe7, 0x6d, 0xdd, 0xe1, 0x06, 0xe6, 0x95, 0x6d, 0xf4, + 0x00, 0xcd, 0xf6, 0xf3, 0x68, 0x68, 0xff, 0xa4, 0x11, 0x1e, 0x76, 0x76, + 0x14, 0x1b, 0xea, 0x28, 0x79, 0x10, 0x81, 0x38, 0x7b, 0x3e, 0x5d, 0xce, + 0x69, 0x27, 0x2a, 0xae, +}; +static const struct drbg_kat_no_reseed kat815_t = { + 4, kat815_entropyin, kat815_nonce, kat815_persstr, + kat815_addin0, kat815_addin1, kat815_retbits +}; +static const struct drbg_kat kat815 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat815_t +}; + +static const unsigned char kat816_entropyin[] = { + 0x04, 0x9b, 0x16, 0x03, 0xf3, 0x86, 0x18, 0xac, 0x46, 0x31, 0x98, 0xe2, + 0x45, 0x16, 0x32, 0x7a, 0x59, 0x3a, 0x22, 0x10, 0xf9, 0xb8, 0xf1, 0x6a, + 0x91, 0xf5, 0x4c, 0x81, 0xc1, 0xd3, 0xba, 0xe2, +}; +static const unsigned char kat816_nonce[] = {0}; +static const unsigned char kat816_persstr[] = { + 0x04, 0x05, 0x65, 0xcd, 0xdb, 0x45, 0x31, 0x2e, 0x43, 0x37, 0xc9, 0x09, + 0xae, 0x83, 0xdd, 0xe2, 0xc5, 0x51, 0x18, 0xae, 0x94, 0xbf, 0x54, 0x94, + 0x38, 0x1c, 0x15, 0x7d, 0x66, 0xe4, 0x75, 0x53, +}; +static const unsigned char kat816_addin0[] = {0}; +static const unsigned char kat816_addin1[] = {0}; +static const unsigned char kat816_retbits[] = { + 0x65, 0x0d, 0x95, 0xd6, 0x08, 0x5b, 0x87, 0x56, 0xb4, 0xc8, 0xfe, 0x2b, + 0x16, 0x11, 0x90, 0xdf, 0x1d, 0xd6, 0xc3, 0x49, 0xbd, 0xee, 0x3e, 0x5d, + 0x6c, 0x1d, 0xda, 0x80, 0xc9, 0x0d, 0xb5, 0xf4, 0xe8, 0x55, 0xd6, 0x13, + 0x34, 0x7c, 0xb9, 0xbd, 0xb8, 0xcc, 0x7b, 0xe1, 0x50, 0x6d, 0x88, 0xaf, + 0x68, 0x63, 0xa4, 0xbb, 0xa5, 0x97, 0xb7, 0x57, 0x7f, 0x3b, 0x41, 0x84, + 0x02, 0xc8, 0x47, 0x24, +}; +static const struct drbg_kat_no_reseed kat816_t = { + 5, kat816_entropyin, kat816_nonce, kat816_persstr, + kat816_addin0, kat816_addin1, kat816_retbits +}; +static const struct drbg_kat kat816 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat816_t +}; + +static const unsigned char kat817_entropyin[] = { + 0x9e, 0x61, 0x99, 0xad, 0x25, 0xa5, 0x89, 0x71, 0xe7, 0x6e, 0x48, 0xdb, + 0x30, 0xab, 0x0b, 0xcf, 0xed, 0xb5, 0x7a, 0x97, 0x4d, 0x33, 0x34, 0x51, + 0x4a, 0x4e, 0x03, 0x4a, 0x59, 0x1c, 0xc3, 0xdc, +}; +static const unsigned char kat817_nonce[] = {0}; +static const unsigned char kat817_persstr[] = { + 0x40, 0x84, 0x1d, 0x2a, 0xcf, 0xe9, 0x51, 0x61, 0x71, 0x27, 0xfc, 0x08, + 0x55, 0x73, 0xf6, 0x26, 0x60, 0x5c, 0xbd, 0xb2, 0xab, 0x08, 0x5a, 0x77, + 0xcb, 0x08, 0x0a, 0x99, 0xa9, 0x2e, 0x22, 0xf5, +}; +static const unsigned char kat817_addin0[] = {0}; +static const unsigned char kat817_addin1[] = {0}; +static const unsigned char kat817_retbits[] = { + 0x60, 0x3a, 0x3b, 0xd8, 0x5b, 0xce, 0xa4, 0xb8, 0x7c, 0xdf, 0xf4, 0xeb, + 0xc6, 0xba, 0xa9, 0x81, 0x31, 0x80, 0xc2, 0x2b, 0x1c, 0x48, 0x27, 0x0a, + 0xad, 0x93, 0x88, 0x2b, 0x63, 0x76, 0xa6, 0x60, 0x89, 0x8a, 0x11, 0x9c, + 0xc9, 0x96, 0x41, 0xfd, 0x5f, 0x75, 0xe0, 0xd1, 0x8f, 0xac, 0xe1, 0x32, + 0x41, 0xc5, 0x42, 0x66, 0x8e, 0x46, 0xc9, 0xe0, 0x43, 0xbf, 0x8a, 0x2f, + 0xfe, 0x98, 0x76, 0x5f, +}; +static const struct drbg_kat_no_reseed kat817_t = { + 6, kat817_entropyin, kat817_nonce, kat817_persstr, + kat817_addin0, kat817_addin1, kat817_retbits +}; +static const struct drbg_kat kat817 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat817_t +}; + +static const unsigned char kat818_entropyin[] = { + 0x4a, 0x01, 0xfb, 0x95, 0xff, 0xfe, 0x41, 0x17, 0xa7, 0x1a, 0x52, 0x0a, + 0x0b, 0x7d, 0x23, 0xa3, 0xc3, 0x12, 0x0d, 0x4b, 0x20, 0xa8, 0x49, 0x6d, + 0x65, 0x01, 0xbf, 0x36, 0xd6, 0x94, 0xba, 0xbb, +}; +static const unsigned char kat818_nonce[] = {0}; +static const unsigned char kat818_persstr[] = { + 0x59, 0xb8, 0x7f, 0x1c, 0x1b, 0xd9, 0xaf, 0x79, 0xba, 0xd4, 0x11, 0xec, + 0x61, 0xcb, 0xd5, 0x91, 0xf2, 0xcf, 0x35, 0xf6, 0x60, 0x66, 0xe1, 0x8e, + 0x17, 0xb4, 0xf5, 0xd4, 0x19, 0xd1, 0x32, 0x7b, +}; +static const unsigned char kat818_addin0[] = {0}; +static const unsigned char kat818_addin1[] = {0}; +static const unsigned char kat818_retbits[] = { + 0x7b, 0xfa, 0x6a, 0xfb, 0xfc, 0x32, 0x29, 0xc2, 0x77, 0xb4, 0x13, 0x96, + 0x47, 0x7a, 0xc4, 0x1b, 0x84, 0x7a, 0x2e, 0x58, 0x15, 0x9b, 0xc3, 0x33, + 0x7b, 0xdc, 0x98, 0x7b, 0x4a, 0x68, 0x47, 0x91, 0x67, 0x1a, 0x5d, 0xcb, + 0x12, 0x49, 0xbd, 0x39, 0x07, 0xe6, 0x8a, 0x5a, 0x87, 0xd4, 0x53, 0x57, + 0xe7, 0xc5, 0x4c, 0x53, 0xda, 0x78, 0x21, 0xb5, 0x5d, 0xaa, 0xb7, 0x63, + 0xe9, 0xaa, 0xf3, 0xbb, +}; +static const struct drbg_kat_no_reseed kat818_t = { + 7, kat818_entropyin, kat818_nonce, kat818_persstr, + kat818_addin0, kat818_addin1, kat818_retbits +}; +static const struct drbg_kat kat818 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat818_t +}; + +static const unsigned char kat819_entropyin[] = { + 0xe7, 0x22, 0x1b, 0x71, 0x0d, 0x0e, 0x91, 0xd3, 0x94, 0x3d, 0x42, 0x94, + 0x30, 0x29, 0xf0, 0xc9, 0x5f, 0xbd, 0xfd, 0xd9, 0x76, 0xb5, 0xc0, 0x76, + 0x71, 0x56, 0xba, 0x45, 0x03, 0xfd, 0x26, 0xa0, +}; +static const unsigned char kat819_nonce[] = {0}; +static const unsigned char kat819_persstr[] = { + 0x62, 0x55, 0x9c, 0x1e, 0x44, 0x2d, 0x84, 0x6d, 0x16, 0xdd, 0xcd, 0x60, + 0x1c, 0x17, 0xff, 0x37, 0x0c, 0xff, 0x58, 0x28, 0x74, 0xa6, 0x19, 0xda, + 0xc6, 0x20, 0x67, 0x48, 0x07, 0x6d, 0x8d, 0x32, +}; +static const unsigned char kat819_addin0[] = {0}; +static const unsigned char kat819_addin1[] = {0}; +static const unsigned char kat819_retbits[] = { + 0x89, 0x66, 0x41, 0x5c, 0x21, 0x6d, 0xe8, 0x3d, 0x75, 0xf7, 0x36, 0x26, + 0x30, 0x3f, 0x91, 0x4f, 0x8d, 0x75, 0xe9, 0xbf, 0xc2, 0x9d, 0x68, 0xf8, + 0x9c, 0x54, 0x92, 0x89, 0x80, 0x59, 0xa1, 0xf6, 0x4e, 0xcd, 0xbe, 0x23, + 0x42, 0xa4, 0xfb, 0xfe, 0x63, 0x17, 0xd5, 0xbe, 0x13, 0x25, 0xa7, 0x04, + 0xb9, 0xe3, 0xd2, 0xe8, 0x6c, 0x54, 0x6a, 0x81, 0x90, 0x60, 0x42, 0xb6, + 0x0d, 0x02, 0xcc, 0x0c, +}; +static const struct drbg_kat_no_reseed kat819_t = { + 8, kat819_entropyin, kat819_nonce, kat819_persstr, + kat819_addin0, kat819_addin1, kat819_retbits +}; +static const struct drbg_kat kat819 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat819_t +}; + +static const unsigned char kat820_entropyin[] = { + 0x57, 0x15, 0x80, 0xa5, 0x72, 0x4b, 0x11, 0xe4, 0xb3, 0x12, 0xdf, 0x42, + 0x0f, 0xa2, 0x60, 0xcd, 0xdf, 0x8c, 0xcd, 0xc4, 0xcc, 0x81, 0xca, 0xc7, + 0x5a, 0x2a, 0xdf, 0xb7, 0x36, 0x57, 0xba, 0xdc, +}; +static const unsigned char kat820_nonce[] = {0}; +static const unsigned char kat820_persstr[] = { + 0x17, 0x0d, 0x0d, 0x64, 0x02, 0xaa, 0x7c, 0xd2, 0x6a, 0xfd, 0x26, 0xe4, + 0xcb, 0x11, 0xd4, 0x6f, 0xe4, 0xaa, 0xc4, 0x8d, 0xf2, 0x3c, 0x69, 0xb0, + 0x6d, 0xe7, 0xc0, 0xcd, 0x70, 0x2c, 0x78, 0xb4, +}; +static const unsigned char kat820_addin0[] = {0}; +static const unsigned char kat820_addin1[] = {0}; +static const unsigned char kat820_retbits[] = { + 0x93, 0x29, 0xe9, 0x15, 0xd3, 0xd8, 0x91, 0xc9, 0x1c, 0x16, 0x1c, 0xc3, + 0x91, 0x48, 0xd8, 0xba, 0x37, 0x19, 0x3d, 0x78, 0x40, 0x18, 0x3a, 0x96, + 0x72, 0xc7, 0x9f, 0x29, 0xf8, 0xca, 0x56, 0xa2, 0x7f, 0x2c, 0x86, 0x92, + 0x05, 0xd3, 0xef, 0xbe, 0xa7, 0x0e, 0x4b, 0x8b, 0x24, 0x5f, 0x49, 0x0c, + 0x81, 0x01, 0x73, 0x70, 0xd6, 0xa1, 0x73, 0xb3, 0xf6, 0xef, 0x99, 0x24, + 0x23, 0x0f, 0x2d, 0x69, +}; +static const struct drbg_kat_no_reseed kat820_t = { + 9, kat820_entropyin, kat820_nonce, kat820_persstr, + kat820_addin0, kat820_addin1, kat820_retbits +}; +static const struct drbg_kat kat820 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat820_t +}; + +static const unsigned char kat821_entropyin[] = { + 0x26, 0xfd, 0xa9, 0x30, 0xbc, 0x9c, 0x08, 0xa1, 0x69, 0x1f, 0x02, 0x3f, + 0x34, 0x8e, 0x96, 0x56, 0x34, 0x6c, 0xe5, 0x7d, 0x74, 0xd4, 0x6e, 0x81, + 0x50, 0xd3, 0x43, 0xb5, 0x2d, 0xf5, 0xfe, 0x89, +}; +static const unsigned char kat821_nonce[] = {0}; +static const unsigned char kat821_persstr[] = { + 0xc6, 0xb0, 0x8d, 0x04, 0xf3, 0xd3, 0x5b, 0x07, 0xca, 0x64, 0x51, 0xd2, + 0xef, 0xe5, 0xff, 0x8c, 0x54, 0x5a, 0x73, 0x42, 0x28, 0xfc, 0xa3, 0x38, + 0x80, 0x6f, 0x1d, 0xae, 0x93, 0x38, 0x1f, 0x22, +}; +static const unsigned char kat821_addin0[] = {0}; +static const unsigned char kat821_addin1[] = {0}; +static const unsigned char kat821_retbits[] = { + 0x18, 0xbc, 0x44, 0x8e, 0x8c, 0xd5, 0xa2, 0x57, 0x2d, 0x6f, 0xaa, 0x70, + 0x9f, 0x1f, 0x75, 0x74, 0x33, 0xff, 0xf9, 0x3e, 0x1a, 0x63, 0x3a, 0x8b, + 0x67, 0x1e, 0x97, 0x5a, 0x43, 0xf3, 0xa3, 0xa3, 0x50, 0x6c, 0x4c, 0xe9, + 0x76, 0xa9, 0x25, 0xf0, 0x6d, 0x7a, 0x26, 0xcb, 0x20, 0x83, 0xa8, 0x0f, + 0x56, 0x5f, 0xea, 0x05, 0x24, 0xc4, 0x5d, 0x36, 0x72, 0xf3, 0xc0, 0x9d, + 0x6a, 0x7f, 0x30, 0x8a, +}; +static const struct drbg_kat_no_reseed kat821_t = { + 10, kat821_entropyin, kat821_nonce, kat821_persstr, + kat821_addin0, kat821_addin1, kat821_retbits +}; +static const struct drbg_kat kat821 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat821_t +}; + +static const unsigned char kat822_entropyin[] = { + 0xba, 0x59, 0x5a, 0x79, 0x16, 0x33, 0xaa, 0xda, 0x59, 0xda, 0xa3, 0x53, + 0x53, 0x3b, 0x0a, 0x92, 0x48, 0x73, 0x14, 0x0a, 0xf8, 0x26, 0xf4, 0x74, + 0x33, 0xe8, 0x1a, 0xed, 0x88, 0xeb, 0x87, 0xc0, +}; +static const unsigned char kat822_nonce[] = {0}; +static const unsigned char kat822_persstr[] = { + 0x5a, 0x3f, 0x43, 0x1c, 0x98, 0x40, 0xe0, 0x56, 0x5e, 0x49, 0xa1, 0x2d, + 0xd7, 0xcd, 0x65, 0x04, 0x91, 0x2c, 0x43, 0x59, 0xb1, 0x50, 0x8f, 0x6c, + 0x84, 0xb2, 0xc7, 0x18, 0xa3, 0x7f, 0xe3, 0xa3, +}; +static const unsigned char kat822_addin0[] = {0}; +static const unsigned char kat822_addin1[] = {0}; +static const unsigned char kat822_retbits[] = { + 0x22, 0x84, 0x93, 0x92, 0x01, 0xb1, 0xae, 0xa4, 0x76, 0x06, 0xcf, 0xd6, + 0x23, 0xc6, 0xe0, 0x45, 0x4b, 0x4e, 0x7d, 0x2c, 0x9f, 0xd5, 0x0d, 0x15, + 0x87, 0x36, 0x0e, 0x83, 0x8a, 0x19, 0x0d, 0x97, 0xc8, 0x48, 0x28, 0x65, + 0xb9, 0x9d, 0x59, 0xa8, 0x19, 0xdd, 0xc8, 0x9c, 0xae, 0x0b, 0x00, 0x52, + 0x41, 0xe7, 0x69, 0x9f, 0xbc, 0x66, 0x24, 0x42, 0xcb, 0xef, 0x84, 0x72, + 0x97, 0xdb, 0x15, 0xcf, +}; +static const struct drbg_kat_no_reseed kat822_t = { + 11, kat822_entropyin, kat822_nonce, kat822_persstr, + kat822_addin0, kat822_addin1, kat822_retbits +}; +static const struct drbg_kat kat822 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat822_t +}; + +static const unsigned char kat823_entropyin[] = { + 0x94, 0x04, 0x3d, 0x90, 0x09, 0x52, 0xe2, 0x5c, 0x04, 0x25, 0x2f, 0xff, + 0xfd, 0x1f, 0xe4, 0xe8, 0xa5, 0x4a, 0x3c, 0x04, 0x7e, 0x3c, 0x27, 0x68, + 0xc0, 0x32, 0x4d, 0x1f, 0xe3, 0x24, 0x07, 0xdf, +}; +static const unsigned char kat823_nonce[] = {0}; +static const unsigned char kat823_persstr[] = { + 0xfb, 0x51, 0xb2, 0x6a, 0x7e, 0x7f, 0x87, 0xd8, 0xda, 0x7c, 0x54, 0xab, + 0x1f, 0xad, 0x3d, 0x08, 0xc2, 0xc1, 0x31, 0x12, 0xfc, 0x17, 0xb3, 0xf3, + 0x1d, 0xda, 0x72, 0xfd, 0x5b, 0x61, 0xeb, 0x01, +}; +static const unsigned char kat823_addin0[] = {0}; +static const unsigned char kat823_addin1[] = {0}; +static const unsigned char kat823_retbits[] = { + 0x7a, 0x27, 0x66, 0x6f, 0x38, 0x46, 0xbb, 0x36, 0xf8, 0x33, 0xea, 0x63, + 0x87, 0x23, 0xe4, 0xcf, 0x95, 0xd6, 0x92, 0xe0, 0xa6, 0xa3, 0x7f, 0xac, + 0x88, 0xa7, 0xcd, 0x5e, 0x4b, 0xcc, 0x3c, 0xcb, 0x73, 0x5c, 0x0c, 0xfe, + 0x40, 0x27, 0x59, 0x72, 0xb2, 0xfd, 0xf5, 0x30, 0x45, 0x9a, 0x2a, 0x63, + 0xee, 0x13, 0x84, 0x74, 0x60, 0xee, 0x09, 0xea, 0x63, 0xa8, 0x49, 0x01, + 0xbc, 0xa8, 0x74, 0xbe, +}; +static const struct drbg_kat_no_reseed kat823_t = { + 12, kat823_entropyin, kat823_nonce, kat823_persstr, + kat823_addin0, kat823_addin1, kat823_retbits +}; +static const struct drbg_kat kat823 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat823_t +}; + +static const unsigned char kat824_entropyin[] = { + 0x57, 0x22, 0x04, 0x6e, 0xdf, 0x9b, 0x2b, 0x84, 0xf2, 0x88, 0x6e, 0xa9, + 0x30, 0x2a, 0xc3, 0x8a, 0x1f, 0xea, 0xd8, 0xed, 0xf6, 0xb3, 0xfa, 0xae, + 0xca, 0x23, 0xff, 0xdd, 0x95, 0x99, 0x74, 0x31, +}; +static const unsigned char kat824_nonce[] = {0}; +static const unsigned char kat824_persstr[] = { + 0x37, 0xda, 0x9a, 0x6f, 0xb1, 0xee, 0xc7, 0x23, 0x41, 0x56, 0xb0, 0xf5, + 0x21, 0x0b, 0xa4, 0x7c, 0x3c, 0xa6, 0xc0, 0x3a, 0x34, 0xb6, 0x9d, 0xe3, + 0xfe, 0xe1, 0xf5, 0x26, 0x9a, 0x92, 0x9e, 0x1e, +}; +static const unsigned char kat824_addin0[] = {0}; +static const unsigned char kat824_addin1[] = {0}; +static const unsigned char kat824_retbits[] = { + 0x0b, 0x03, 0xd2, 0x15, 0xfc, 0x30, 0xbb, 0xce, 0x8d, 0xc2, 0xaa, 0x3d, + 0x49, 0x68, 0x68, 0x2d, 0x58, 0x6f, 0x10, 0x60, 0x07, 0x57, 0xb0, 0x52, + 0x93, 0xc2, 0x63, 0xfc, 0xf1, 0x5e, 0xbc, 0x09, 0xbd, 0xec, 0xd2, 0x81, + 0x8d, 0x62, 0x6a, 0x43, 0x98, 0x2f, 0x90, 0x09, 0xf2, 0x97, 0x4f, 0xcd, + 0x01, 0x21, 0x4f, 0x6b, 0xe6, 0xec, 0xb2, 0xaa, 0x7d, 0x9d, 0x10, 0x16, + 0x98, 0xec, 0x08, 0xe9, +}; +static const struct drbg_kat_no_reseed kat824_t = { + 13, kat824_entropyin, kat824_nonce, kat824_persstr, + kat824_addin0, kat824_addin1, kat824_retbits +}; +static const struct drbg_kat kat824 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat824_t +}; + +static const unsigned char kat825_entropyin[] = { + 0x3a, 0xcd, 0x2c, 0x23, 0xbb, 0xae, 0x4d, 0x02, 0xcc, 0x9e, 0x4b, 0xb5, + 0x48, 0xe2, 0x64, 0xf4, 0x3e, 0x35, 0x76, 0x4b, 0x44, 0x65, 0x95, 0xbf, + 0xe1, 0xe4, 0x51, 0x65, 0xd4, 0x2c, 0x77, 0x0a, +}; +static const unsigned char kat825_nonce[] = {0}; +static const unsigned char kat825_persstr[] = { + 0xaf, 0xb8, 0x20, 0x3d, 0x4f, 0x79, 0x00, 0xc3, 0x5d, 0x7b, 0xb4, 0x54, + 0xa8, 0x3c, 0x5f, 0x26, 0x67, 0xab, 0x50, 0x6a, 0x68, 0xb7, 0x10, 0x01, + 0x1c, 0x0b, 0xe6, 0x70, 0x55, 0xdf, 0xc3, 0xeb, +}; +static const unsigned char kat825_addin0[] = {0}; +static const unsigned char kat825_addin1[] = {0}; +static const unsigned char kat825_retbits[] = { + 0x02, 0x66, 0x4c, 0x05, 0x70, 0xc4, 0xd3, 0xc4, 0x68, 0xd1, 0x6c, 0xc7, + 0xc8, 0xb9, 0x9d, 0xa7, 0xa7, 0xf1, 0x75, 0x22, 0x49, 0xe3, 0x0f, 0x28, + 0x33, 0xb1, 0xb7, 0xcd, 0x32, 0xa4, 0xdf, 0x3c, 0x23, 0x45, 0x46, 0x21, + 0xd7, 0x91, 0x19, 0xa9, 0xaa, 0xcc, 0xc5, 0x2d, 0x3f, 0x90, 0x55, 0xdb, + 0xde, 0x98, 0xe7, 0x73, 0xc2, 0x6d, 0x4d, 0xac, 0xe0, 0x9c, 0xe9, 0xbe, + 0x1f, 0x1f, 0x61, 0xb2, +}; +static const struct drbg_kat_no_reseed kat825_t = { + 14, kat825_entropyin, kat825_nonce, kat825_persstr, + kat825_addin0, kat825_addin1, kat825_retbits +}; +static const struct drbg_kat kat825 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat825_t +}; + +static const unsigned char kat826_entropyin[] = { + 0xc1, 0x29, 0xc2, 0x73, 0x20, 0x03, 0xbb, 0xf1, 0xd1, 0xde, 0xc2, 0x44, + 0xa9, 0x33, 0xcd, 0x04, 0xcb, 0x47, 0x19, 0x9b, 0xbc, 0xe9, 0x8f, 0xe0, + 0x80, 0xa1, 0xbe, 0x88, 0x0a, 0xfb, 0x21, 0x55, +}; +static const unsigned char kat826_nonce[] = {0}; +static const unsigned char kat826_persstr[] = { + 0x64, 0xe2, 0xb9, 0xac, 0x5c, 0x20, 0x64, 0x2e, 0x3e, 0x3e, 0xe4, 0x54, + 0xb7, 0x46, 0x38, 0x61, 0xa7, 0xe9, 0x3e, 0x0d, 0xd1, 0xbb, 0xf8, 0xc4, + 0xa0, 0xc2, 0x8a, 0x6c, 0xb3, 0xd8, 0x11, 0xba, +}; +static const unsigned char kat826_addin0[] = { + 0xf9, 0x4f, 0x09, 0x75, 0x76, 0x0d, 0x52, 0xf4, 0x7b, 0xd4, 0x90, 0xd1, + 0x62, 0x3a, 0x99, 0x07, 0xe4, 0xdf, 0x70, 0x1f, 0x60, 0x1c, 0xf2, 0xd5, + 0x73, 0xab, 0xa8, 0x03, 0xa2, 0x9d, 0x2b, 0x51, +}; +static const unsigned char kat826_addin1[] = { + 0x6f, 0x99, 0x72, 0x0b, 0x18, 0x6e, 0x20, 0x28, 0xa5, 0xfc, 0xc5, 0x86, + 0xb3, 0xea, 0x51, 0x84, 0x58, 0xe4, 0x37, 0xff, 0x44, 0x9c, 0x7c, 0x5a, + 0x31, 0x8e, 0x6d, 0x13, 0xf7, 0x5b, 0x5d, 0xb7, +}; +static const unsigned char kat826_retbits[] = { + 0x7b, 0x8b, 0x33, 0x78, 0xb9, 0x03, 0x1a, 0xb3, 0x10, 0x1c, 0xec, 0x8a, + 0xf5, 0xb8, 0xba, 0x5a, 0x9c, 0xa2, 0xa9, 0xaf, 0x41, 0x43, 0x2c, 0xd5, + 0xf2, 0xe5, 0xe1, 0x97, 0x16, 0x14, 0x0b, 0xb2, 0x19, 0xed, 0x7f, 0x4b, + 0xa8, 0x8f, 0xc3, 0x7b, 0x2d, 0x7e, 0x14, 0x60, 0x37, 0xd2, 0xca, 0xc1, + 0x12, 0x8f, 0xfe, 0x14, 0x13, 0x1c, 0x86, 0x91, 0xe5, 0x81, 0x06, 0x7a, + 0x29, 0xca, 0xcf, 0x80, +}; +static const struct drbg_kat_no_reseed kat826_t = { + 0, kat826_entropyin, kat826_nonce, kat826_persstr, + kat826_addin0, kat826_addin1, kat826_retbits +}; +static const struct drbg_kat kat826 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat826_t +}; + +static const unsigned char kat827_entropyin[] = { + 0x76, 0x67, 0x64, 0x36, 0x70, 0x25, 0x4b, 0x35, 0x30, 0xe8, 0x0a, 0x17, + 0xb1, 0x6b, 0x22, 0x40, 0x6e, 0x84, 0xef, 0xa6, 0xa4, 0xb5, 0xce, 0xef, + 0x3e, 0xbc, 0x87, 0x74, 0x95, 0xfc, 0x60, 0x48, +}; +static const unsigned char kat827_nonce[] = {0}; +static const unsigned char kat827_persstr[] = { + 0x40, 0xb9, 0x29, 0x69, 0x95, 0x3a, 0xcd, 0xe7, 0x56, 0x74, 0x70, 0x05, + 0x11, 0x7e, 0x46, 0xef, 0xf6, 0x89, 0x3d, 0x71, 0x32, 0xa8, 0x31, 0x1f, + 0xfb, 0x10, 0x62, 0x28, 0x03, 0x67, 0x32, 0x6b, +}; +static const unsigned char kat827_addin0[] = { + 0x79, 0x7a, 0x02, 0xff, 0xbe, 0x8f, 0xf2, 0xc9, 0x4e, 0xd0, 0xe5, 0xd3, + 0x9e, 0xbd, 0xc7, 0x84, 0x7a, 0xda, 0xa7, 0x62, 0xa8, 0x82, 0x38, 0x24, + 0x2e, 0xd8, 0xf7, 0x1f, 0x56, 0x35, 0xb1, 0x94, +}; +static const unsigned char kat827_addin1[] = { + 0xd6, 0x17, 0xf0, 0xf0, 0xe6, 0x09, 0xe9, 0x0d, 0x81, 0x41, 0x92, 0xba, + 0x2e, 0x52, 0x14, 0x29, 0x3d, 0x48, 0x54, 0x02, 0xcd, 0xf9, 0xf7, 0x89, + 0xcc, 0x78, 0xb0, 0x5e, 0x8c, 0x37, 0x4f, 0x18, +}; +static const unsigned char kat827_retbits[] = { + 0xe8, 0xd6, 0xf8, 0x9d, 0xca, 0x98, 0x25, 0xae, 0xd8, 0x92, 0x7b, 0x43, + 0x18, 0x74, 0x92, 0xa9, 0x8c, 0xa8, 0x64, 0x8d, 0xb3, 0x0f, 0x0a, 0xc7, + 0x09, 0x55, 0x6d, 0x40, 0x1a, 0x8a, 0xc2, 0xb9, 0x59, 0xc8, 0x13, 0x50, + 0xfc, 0x64, 0x33, 0x2c, 0x4c, 0x0d, 0xeb, 0x55, 0x9a, 0x28, 0x6a, 0x72, + 0xe6, 0x5d, 0xbb, 0x46, 0x2b, 0xd8, 0x72, 0xf9, 0xb2, 0x8c, 0x07, 0x28, + 0xf3, 0x53, 0xdc, 0x10, +}; +static const struct drbg_kat_no_reseed kat827_t = { + 1, kat827_entropyin, kat827_nonce, kat827_persstr, + kat827_addin0, kat827_addin1, kat827_retbits +}; +static const struct drbg_kat kat827 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat827_t +}; + +static const unsigned char kat828_entropyin[] = { + 0x74, 0x98, 0x68, 0xea, 0xec, 0xe2, 0x94, 0xa1, 0xec, 0x7e, 0xc9, 0xe3, + 0xf3, 0x93, 0xdf, 0xed, 0xaa, 0xab, 0x2f, 0xf0, 0x4e, 0xce, 0x79, 0xe5, + 0x04, 0xf2, 0x7e, 0x2e, 0x58, 0x67, 0x9a, 0xfa, +}; +static const unsigned char kat828_nonce[] = {0}; +static const unsigned char kat828_persstr[] = { + 0x9c, 0x9b, 0x45, 0xe3, 0x91, 0x93, 0x74, 0x7c, 0xba, 0x32, 0xfe, 0x67, + 0x69, 0x2c, 0x0a, 0xd8, 0xdf, 0xcf, 0x75, 0xf6, 0xd8, 0x8a, 0xa7, 0x9a, + 0x2d, 0xcb, 0xa0, 0x2c, 0xf1, 0xbc, 0x0f, 0xc8, +}; +static const unsigned char kat828_addin0[] = { + 0x27, 0x73, 0x16, 0xb3, 0x95, 0x92, 0x03, 0x47, 0xc6, 0xcc, 0xc4, 0x1e, + 0x60, 0xba, 0x38, 0x0f, 0x36, 0x72, 0xac, 0x4c, 0xca, 0x3c, 0x25, 0x1b, + 0xc0, 0x6a, 0x39, 0x36, 0xc3, 0x62, 0x01, 0xa6, +}; +static const unsigned char kat828_addin1[] = { + 0xe5, 0xd3, 0xc8, 0x15, 0x58, 0x52, 0x79, 0x91, 0x33, 0xe4, 0xc0, 0xf8, + 0xfe, 0xef, 0x81, 0x86, 0x17, 0xd5, 0xe6, 0x14, 0xfe, 0x5b, 0x24, 0xeb, + 0x68, 0x02, 0x3c, 0x92, 0x97, 0xe8, 0xb5, 0x2c, +}; +static const unsigned char kat828_retbits[] = { + 0x27, 0xb9, 0x25, 0xbf, 0xa5, 0x56, 0xf7, 0x89, 0xe9, 0xa3, 0x10, 0x32, + 0x8d, 0x28, 0x52, 0x60, 0x38, 0x8f, 0x4c, 0x3a, 0x33, 0x89, 0x88, 0xe9, + 0x60, 0x44, 0x6e, 0x5c, 0xd7, 0xfd, 0x19, 0xe8, 0x83, 0x1b, 0x80, 0xa8, + 0x29, 0x73, 0x14, 0x97, 0xcc, 0xdd, 0x1a, 0x74, 0xf9, 0x36, 0xef, 0xbf, + 0x4c, 0x80, 0x03, 0x49, 0xb4, 0xfb, 0x9a, 0x0e, 0xf2, 0x91, 0xe1, 0x40, + 0x02, 0x82, 0x5c, 0x65, +}; +static const struct drbg_kat_no_reseed kat828_t = { + 2, kat828_entropyin, kat828_nonce, kat828_persstr, + kat828_addin0, kat828_addin1, kat828_retbits +}; +static const struct drbg_kat kat828 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat828_t +}; + +static const unsigned char kat829_entropyin[] = { + 0x94, 0xab, 0xdc, 0x4c, 0x57, 0x82, 0x1e, 0x4c, 0x1c, 0x9a, 0x17, 0x75, + 0xc1, 0xe3, 0xd9, 0xdc, 0xf8, 0xea, 0x9b, 0x9b, 0x2f, 0x60, 0xd6, 0x81, + 0x87, 0xfd, 0x7e, 0xc6, 0xdf, 0x8d, 0x48, 0x8e, +}; +static const unsigned char kat829_nonce[] = {0}; +static const unsigned char kat829_persstr[] = { + 0x88, 0xe1, 0x19, 0x6a, 0xf3, 0x00, 0xad, 0xf9, 0x53, 0x20, 0x3e, 0x5a, + 0x69, 0x9d, 0x0d, 0x38, 0xb3, 0xd4, 0x13, 0x54, 0x2f, 0x41, 0x4e, 0x6e, + 0xfb, 0x31, 0x8d, 0x5a, 0x50, 0x74, 0xc8, 0xbe, +}; +static const unsigned char kat829_addin0[] = { + 0x74, 0xdc, 0x1a, 0xa3, 0xb2, 0x17, 0x11, 0x33, 0xff, 0x3e, 0xca, 0x69, + 0x10, 0x69, 0xb0, 0x61, 0x68, 0x06, 0x61, 0xbd, 0x5e, 0x50, 0x33, 0x92, + 0x07, 0xe5, 0xab, 0x3d, 0x85, 0xed, 0x35, 0xdb, +}; +static const unsigned char kat829_addin1[] = { + 0x7a, 0xe3, 0x37, 0x79, 0xef, 0xdb, 0xf5, 0x30, 0xdf, 0xf9, 0x75, 0x82, + 0x96, 0x2d, 0xe9, 0x37, 0xac, 0xc7, 0x41, 0x45, 0x7a, 0xc6, 0x8f, 0x0e, + 0xac, 0xbb, 0x31, 0xa9, 0xd2, 0x25, 0xb4, 0x7f, +}; +static const unsigned char kat829_retbits[] = { + 0xa6, 0x13, 0x82, 0x3c, 0x56, 0x05, 0x7c, 0xd0, 0x01, 0xda, 0x13, 0x06, + 0x4e, 0xe1, 0x9f, 0xc1, 0xeb, 0x3a, 0x1e, 0x39, 0x68, 0x0e, 0x5c, 0x95, + 0x7a, 0x6a, 0xe4, 0x4d, 0x73, 0xba, 0xd9, 0xc0, 0xf0, 0xb9, 0xc0, 0x49, + 0xe8, 0xf1, 0xd3, 0xde, 0x5f, 0x5b, 0x9a, 0xf9, 0x8e, 0x3c, 0x0e, 0x11, + 0xae, 0x27, 0xec, 0x09, 0xc1, 0xc6, 0x20, 0x33, 0x13, 0x99, 0xd3, 0x08, + 0xdf, 0x89, 0x85, 0x62, +}; +static const struct drbg_kat_no_reseed kat829_t = { + 3, kat829_entropyin, kat829_nonce, kat829_persstr, + kat829_addin0, kat829_addin1, kat829_retbits +}; +static const struct drbg_kat kat829 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat829_t +}; + +static const unsigned char kat830_entropyin[] = { + 0x4b, 0x5f, 0xea, 0xc2, 0x4a, 0xc3, 0x5f, 0x40, 0x03, 0xf7, 0xfe, 0x15, + 0x9f, 0xe6, 0x28, 0x1e, 0x8f, 0x65, 0x52, 0xbf, 0xfc, 0xbe, 0xdb, 0x5f, + 0xf0, 0xf6, 0x1d, 0x82, 0x2b, 0x5f, 0x06, 0x0a, +}; +static const unsigned char kat830_nonce[] = {0}; +static const unsigned char kat830_persstr[] = { + 0x67, 0x64, 0x58, 0xba, 0x8e, 0x2a, 0xb7, 0x1a, 0x3d, 0x7a, 0x14, 0x28, + 0xfe, 0x50, 0xe3, 0x08, 0x1e, 0x01, 0x8e, 0x4c, 0x2c, 0x73, 0xe1, 0xd7, + 0xc0, 0x36, 0xa8, 0x23, 0x48, 0x6a, 0x58, 0x10, +}; +static const unsigned char kat830_addin0[] = { + 0x95, 0xba, 0x78, 0x62, 0x3e, 0x5d, 0x36, 0xfd, 0x64, 0xdd, 0xad, 0xe6, + 0x6a, 0x65, 0x10, 0x08, 0xe9, 0xb5, 0x7c, 0x84, 0x76, 0x02, 0xaf, 0x7f, + 0x71, 0xbc, 0x4d, 0x87, 0x7b, 0xab, 0x62, 0x0b, +}; +static const unsigned char kat830_addin1[] = { + 0xf5, 0xf9, 0xdc, 0x93, 0x2d, 0x69, 0xce, 0x35, 0x1c, 0x90, 0x83, 0x68, + 0xd9, 0xc3, 0xce, 0xf5, 0x23, 0x1d, 0xc2, 0x41, 0x7b, 0x53, 0x14, 0xe4, + 0xeb, 0x80, 0xc4, 0xaf, 0x60, 0xbe, 0x05, 0x0f, +}; +static const unsigned char kat830_retbits[] = { + 0xd8, 0xd7, 0x95, 0x0a, 0xd8, 0xb8, 0xf3, 0x2a, 0x0c, 0x20, 0x9c, 0x8e, + 0x8e, 0xd5, 0xa1, 0x67, 0x24, 0xe2, 0x68, 0xdb, 0xd5, 0xbf, 0x8d, 0xf8, + 0xbc, 0xc1, 0x39, 0x6a, 0xfa, 0x11, 0xe2, 0x79, 0xb0, 0xc2, 0xe0, 0x1e, + 0x12, 0x28, 0xd4, 0x7c, 0xa0, 0x42, 0x03, 0x8b, 0xd5, 0xf5, 0xc1, 0x59, + 0xd1, 0x44, 0x19, 0x84, 0x62, 0xf7, 0x52, 0x72, 0x86, 0xba, 0xbe, 0x72, + 0xcf, 0xfb, 0xa9, 0x9a, +}; +static const struct drbg_kat_no_reseed kat830_t = { + 4, kat830_entropyin, kat830_nonce, kat830_persstr, + kat830_addin0, kat830_addin1, kat830_retbits +}; +static const struct drbg_kat kat830 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat830_t +}; + +static const unsigned char kat831_entropyin[] = { + 0x66, 0x89, 0xdc, 0xfc, 0xd6, 0xff, 0xcc, 0xa2, 0x74, 0x44, 0xce, 0x9f, + 0xef, 0x0e, 0x0a, 0x11, 0x90, 0x25, 0xba, 0x99, 0xbf, 0x52, 0x9a, 0xcd, + 0xf2, 0x16, 0xf4, 0x69, 0x35, 0x53, 0x0e, 0xee, +}; +static const unsigned char kat831_nonce[] = {0}; +static const unsigned char kat831_persstr[] = { + 0x7e, 0xc6, 0xa1, 0x95, 0xc2, 0xb1, 0x44, 0x92, 0x42, 0xbc, 0xc9, 0x18, + 0xf5, 0xdb, 0x25, 0x62, 0x5e, 0x59, 0xe6, 0xae, 0x06, 0x37, 0x23, 0x92, + 0xe5, 0x38, 0xf7, 0xfd, 0xd2, 0x10, 0xe2, 0xaf, +}; +static const unsigned char kat831_addin0[] = { + 0xb2, 0x60, 0x33, 0x74, 0x62, 0x20, 0x97, 0x3d, 0x84, 0x21, 0x93, 0x34, + 0x0d, 0xb0, 0xe3, 0x00, 0xce, 0x0e, 0xbf, 0xf3, 0x6a, 0x66, 0x09, 0x9d, + 0x68, 0x28, 0xbf, 0x91, 0xba, 0x5d, 0x2d, 0x4e, +}; +static const unsigned char kat831_addin1[] = { + 0x9a, 0x54, 0xf8, 0xf8, 0xaf, 0x43, 0x02, 0x06, 0x10, 0x4b, 0xfc, 0xf2, + 0xc0, 0x3a, 0x3c, 0xf6, 0xda, 0x74, 0xca, 0x57, 0x1f, 0xf4, 0xf9, 0xaf, + 0xac, 0x41, 0x5e, 0x86, 0xe9, 0x5e, 0xf5, 0xa9, +}; +static const unsigned char kat831_retbits[] = { + 0xca, 0xaa, 0x27, 0x0c, 0x0d, 0xd4, 0x22, 0xaf, 0x2f, 0x7d, 0x7d, 0xbe, + 0x06, 0x9a, 0xb4, 0x58, 0x99, 0x5d, 0x00, 0xf0, 0xa9, 0x9f, 0x43, 0xe2, + 0xb1, 0x09, 0xd4, 0xd9, 0xa6, 0x8f, 0x39, 0x78, 0x2a, 0x2b, 0x6c, 0xbb, + 0x3f, 0xe8, 0xcb, 0x9b, 0x38, 0xde, 0xdc, 0xb5, 0x6c, 0x0a, 0x9a, 0x4f, + 0x71, 0x52, 0xf5, 0xa0, 0x59, 0xee, 0x40, 0x5d, 0x25, 0x48, 0xea, 0x3b, + 0xe4, 0x42, 0xce, 0x56, +}; +static const struct drbg_kat_no_reseed kat831_t = { + 5, kat831_entropyin, kat831_nonce, kat831_persstr, + kat831_addin0, kat831_addin1, kat831_retbits +}; +static const struct drbg_kat kat831 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat831_t +}; + +static const unsigned char kat832_entropyin[] = { + 0xa5, 0xad, 0xfa, 0x74, 0xd1, 0x7a, 0x39, 0xc6, 0xab, 0x28, 0xa6, 0xd8, + 0xef, 0x36, 0x4d, 0x5e, 0x2f, 0x95, 0x81, 0xbc, 0xbe, 0xa7, 0x1b, 0x0b, + 0x04, 0x8f, 0x1f, 0x1c, 0x7f, 0xea, 0x3c, 0x24, +}; +static const unsigned char kat832_nonce[] = {0}; +static const unsigned char kat832_persstr[] = { + 0x90, 0xa9, 0x2c, 0x76, 0xdf, 0xd9, 0x52, 0xaf, 0x62, 0x96, 0xe0, 0x15, + 0xb6, 0x59, 0x2c, 0xc0, 0x56, 0x33, 0xb6, 0xe2, 0x8f, 0x3f, 0x5e, 0xe6, + 0x0f, 0xad, 0x92, 0x7d, 0x67, 0xaf, 0x81, 0xf8, +}; +static const unsigned char kat832_addin0[] = { + 0x8f, 0x76, 0xad, 0x33, 0x0e, 0x11, 0x8c, 0xb3, 0x87, 0xb5, 0x46, 0x78, + 0x49, 0x9a, 0x37, 0xf6, 0x03, 0x21, 0x2b, 0xae, 0xac, 0x25, 0x57, 0xd2, + 0x2d, 0x5a, 0x4e, 0xbf, 0xcd, 0x31, 0xcd, 0x2b, +}; +static const unsigned char kat832_addin1[] = { + 0xc3, 0x7f, 0x90, 0x3c, 0x99, 0x16, 0x6d, 0xf3, 0x0c, 0x5a, 0x02, 0xf2, + 0x62, 0x10, 0x8e, 0x6f, 0xd6, 0xec, 0x3d, 0x2a, 0xf7, 0xa9, 0xdc, 0x66, + 0x22, 0xc0, 0xe9, 0x3c, 0x97, 0x24, 0xd3, 0xff, +}; +static const unsigned char kat832_retbits[] = { + 0x1a, 0xce, 0xc7, 0x4b, 0x9b, 0x96, 0x10, 0x87, 0xcd, 0x8d, 0xe8, 0x5c, + 0x96, 0xeb, 0x74, 0x34, 0x6d, 0xab, 0x26, 0x09, 0x93, 0x89, 0xc9, 0xdf, + 0x24, 0x25, 0x0c, 0x32, 0x1f, 0x0d, 0x87, 0xf5, 0x2c, 0x55, 0x78, 0x67, + 0xa6, 0x00, 0xd9, 0x31, 0x20, 0x89, 0xe7, 0x8d, 0x96, 0x53, 0xd4, 0xd0, + 0x77, 0xf3, 0xad, 0x59, 0xca, 0x0e, 0x3f, 0xaa, 0xc6, 0x17, 0x27, 0x76, + 0x77, 0xcf, 0x9a, 0xe5, +}; +static const struct drbg_kat_no_reseed kat832_t = { + 6, kat832_entropyin, kat832_nonce, kat832_persstr, + kat832_addin0, kat832_addin1, kat832_retbits +}; +static const struct drbg_kat kat832 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat832_t +}; + +static const unsigned char kat833_entropyin[] = { + 0x94, 0x37, 0x40, 0x42, 0x39, 0x16, 0x40, 0x16, 0x45, 0x79, 0x90, 0x08, + 0x55, 0x62, 0xca, 0x14, 0x86, 0x5c, 0x7e, 0x8b, 0x9f, 0xda, 0xb3, 0x8b, + 0xe9, 0x31, 0x01, 0xfd, 0x57, 0x86, 0x68, 0xd4, +}; +static const unsigned char kat833_nonce[] = {0}; +static const unsigned char kat833_persstr[] = { + 0xa3, 0x8b, 0xe2, 0xf1, 0x73, 0x8b, 0x5f, 0x08, 0xe7, 0x94, 0x69, 0x80, + 0xb2, 0x08, 0xf4, 0xe3, 0xc0, 0xcb, 0xcc, 0xef, 0x60, 0x89, 0x8f, 0x57, + 0xab, 0x5b, 0xa8, 0xb5, 0x4c, 0xf3, 0xc1, 0x1c, +}; +static const unsigned char kat833_addin0[] = { + 0x56, 0xb3, 0xb5, 0xf0, 0x53, 0xb8, 0xb2, 0xbc, 0x58, 0x26, 0x78, 0x0d, + 0x73, 0x01, 0xe2, 0xc0, 0x46, 0x21, 0x83, 0x92, 0xcd, 0x82, 0xb6, 0x2e, + 0xc1, 0x6f, 0x37, 0xbc, 0x87, 0xb6, 0x51, 0xea, +}; +static const unsigned char kat833_addin1[] = { + 0xf2, 0x2c, 0xfd, 0x51, 0x88, 0x64, 0x66, 0x0a, 0x99, 0xdc, 0xb0, 0x6e, + 0xdd, 0x4a, 0x15, 0xea, 0xe3, 0x07, 0x4e, 0x7b, 0xb1, 0x87, 0xaa, 0xd5, + 0x87, 0xfc, 0x57, 0x0f, 0x54, 0xed, 0xa5, 0x1e, +}; +static const unsigned char kat833_retbits[] = { + 0xc8, 0x61, 0x2d, 0x5f, 0xcb, 0x05, 0x3a, 0xe3, 0x1a, 0x68, 0x84, 0x24, + 0x87, 0x09, 0xe2, 0xfb, 0x2e, 0x9b, 0x2d, 0x9f, 0xc1, 0x8c, 0xce, 0x82, + 0xcd, 0xe9, 0xf9, 0x41, 0xa0, 0x64, 0xba, 0xab, 0xa2, 0x19, 0x70, 0x01, + 0x91, 0x78, 0xa6, 0x2d, 0x17, 0xa4, 0x19, 0x8d, 0x26, 0xc3, 0x92, 0xc0, + 0x22, 0xc3, 0x2c, 0xe4, 0x7d, 0x74, 0x8c, 0x5b, 0x29, 0xb6, 0xf0, 0x32, + 0x80, 0x34, 0x18, 0xaa, +}; +static const struct drbg_kat_no_reseed kat833_t = { + 7, kat833_entropyin, kat833_nonce, kat833_persstr, + kat833_addin0, kat833_addin1, kat833_retbits +}; +static const struct drbg_kat kat833 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat833_t +}; + +static const unsigned char kat834_entropyin[] = { + 0x37, 0x22, 0x24, 0xba, 0x26, 0x89, 0x40, 0x2f, 0x22, 0x2f, 0x67, 0xda, + 0x94, 0xb4, 0xc2, 0x96, 0x70, 0x86, 0x7c, 0x5c, 0xb2, 0x16, 0xb5, 0x1e, + 0xbf, 0xdc, 0xa4, 0xcf, 0x55, 0x4b, 0x0f, 0x8a, +}; +static const unsigned char kat834_nonce[] = {0}; +static const unsigned char kat834_persstr[] = { + 0x57, 0x94, 0x48, 0x44, 0xde, 0xe0, 0x20, 0x16, 0x85, 0x4c, 0xf8, 0x44, + 0x86, 0x35, 0x7e, 0x34, 0x70, 0x06, 0x91, 0x96, 0xe4, 0x28, 0xd8, 0x17, + 0x8c, 0xa2, 0x22, 0x5a, 0xb7, 0xdb, 0xcb, 0x95, +}; +static const unsigned char kat834_addin0[] = { + 0x1e, 0x6f, 0x7f, 0xdf, 0x0b, 0x6c, 0xa8, 0x78, 0x12, 0xe3, 0x56, 0x6a, + 0xd3, 0x38, 0x72, 0x28, 0xe4, 0xb2, 0xc4, 0x02, 0xa6, 0x18, 0xf0, 0x26, + 0xcd, 0x84, 0xa1, 0x40, 0x34, 0xad, 0xa0, 0xab, +}; +static const unsigned char kat834_addin1[] = { + 0x38, 0x66, 0xb9, 0x14, 0xe9, 0x75, 0xb2, 0x5c, 0xe9, 0xfd, 0xb0, 0xb5, + 0xd3, 0xcf, 0x74, 0xcb, 0xa1, 0x96, 0xe2, 0x6e, 0x67, 0xdf, 0x11, 0x02, + 0x7b, 0xc1, 0xb4, 0x48, 0x90, 0xdb, 0xc7, 0x6e, +}; +static const unsigned char kat834_retbits[] = { + 0xa2, 0xa1, 0x82, 0x94, 0x4d, 0x52, 0x18, 0xb1, 0x98, 0x25, 0x9b, 0xa9, + 0x14, 0xbf, 0x16, 0x15, 0x14, 0x4f, 0x7e, 0x64, 0x76, 0xf2, 0x36, 0x29, + 0x08, 0x15, 0x00, 0x6c, 0xd2, 0x7d, 0xf3, 0x11, 0x47, 0xe1, 0xd0, 0xa9, + 0xc3, 0xf8, 0xa2, 0x53, 0x8f, 0xc1, 0xfe, 0xf5, 0xcf, 0xa6, 0x7a, 0x3c, + 0xd6, 0x89, 0xd5, 0x66, 0xb7, 0xdd, 0xd0, 0x6b, 0x3b, 0x20, 0x55, 0xb4, + 0x0d, 0xca, 0xb6, 0x80, +}; +static const struct drbg_kat_no_reseed kat834_t = { + 8, kat834_entropyin, kat834_nonce, kat834_persstr, + kat834_addin0, kat834_addin1, kat834_retbits +}; +static const struct drbg_kat kat834 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat834_t +}; + +static const unsigned char kat835_entropyin[] = { + 0xef, 0x5f, 0xd7, 0x74, 0x09, 0xee, 0x7c, 0x11, 0x34, 0xe7, 0xbf, 0x8c, + 0x43, 0x2b, 0x72, 0x65, 0x96, 0x57, 0xc2, 0xff, 0x1c, 0x0e, 0x4d, 0xaa, + 0xc9, 0x69, 0xac, 0xcf, 0x93, 0xec, 0x06, 0x87, +}; +static const unsigned char kat835_nonce[] = {0}; +static const unsigned char kat835_persstr[] = { + 0x14, 0x6d, 0x6e, 0x37, 0x11, 0x86, 0x14, 0xd7, 0x31, 0x02, 0xfe, 0xb2, + 0xd6, 0x60, 0x14, 0x50, 0x4f, 0xfe, 0xcc, 0x0f, 0x02, 0x7b, 0x5b, 0xe6, + 0x9e, 0x89, 0x45, 0xe6, 0xf3, 0x09, 0xec, 0x5b, +}; +static const unsigned char kat835_addin0[] = { + 0xf2, 0xea, 0xe6, 0x6e, 0x9c, 0x69, 0xcc, 0xa6, 0xad, 0x87, 0xb4, 0xfb, + 0x20, 0xd1, 0x80, 0x2b, 0xfd, 0x9b, 0x8f, 0xd8, 0xe9, 0xe6, 0x9a, 0xba, + 0x30, 0x2c, 0x2c, 0x3e, 0x80, 0x5b, 0x91, 0x17, +}; +static const unsigned char kat835_addin1[] = { + 0x93, 0x81, 0xfc, 0xc0, 0x6d, 0xf1, 0x80, 0x81, 0x75, 0x67, 0x26, 0x56, + 0x04, 0xd1, 0x30, 0x9c, 0xa7, 0xa5, 0xce, 0x51, 0x14, 0x04, 0xc1, 0x5c, + 0xfd, 0xb2, 0xc5, 0x92, 0x0b, 0xfc, 0x44, 0x40, +}; +static const unsigned char kat835_retbits[] = { + 0x74, 0x0f, 0x8e, 0x34, 0x65, 0x57, 0xf3, 0xed, 0x8f, 0x99, 0xe3, 0x3e, + 0xe1, 0x42, 0x6e, 0x80, 0x95, 0xb4, 0x3b, 0x88, 0x5d, 0x3c, 0xf8, 0x63, + 0x7d, 0x0d, 0x41, 0x94, 0xab, 0x2c, 0x8d, 0x37, 0x4d, 0xa6, 0xd0, 0x01, + 0x41, 0xa3, 0x99, 0x57, 0xec, 0x6c, 0x9f, 0xbe, 0xa1, 0x3c, 0xf5, 0xc1, + 0xe6, 0x29, 0x66, 0x44, 0xc6, 0xc3, 0x64, 0x9e, 0xd8, 0x5a, 0xed, 0x5d, + 0xf8, 0x4e, 0x98, 0x62, +}; +static const struct drbg_kat_no_reseed kat835_t = { + 9, kat835_entropyin, kat835_nonce, kat835_persstr, + kat835_addin0, kat835_addin1, kat835_retbits +}; +static const struct drbg_kat kat835 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat835_t +}; + +static const unsigned char kat836_entropyin[] = { + 0x11, 0x3b, 0xaf, 0xed, 0xbd, 0x62, 0xa9, 0x65, 0x47, 0xdf, 0xed, 0xc5, + 0x08, 0xa9, 0xc8, 0x5f, 0x58, 0x43, 0xf2, 0xa8, 0x13, 0xc3, 0x3b, 0xc8, + 0x03, 0xd5, 0xcf, 0xb6, 0x2c, 0x97, 0x19, 0x66, +}; +static const unsigned char kat836_nonce[] = {0}; +static const unsigned char kat836_persstr[] = { + 0xb1, 0x70, 0x84, 0xec, 0xfd, 0x6e, 0x3f, 0x41, 0x1b, 0x82, 0x37, 0x9d, + 0x30, 0x01, 0xaf, 0x3a, 0x17, 0xde, 0xbd, 0xea, 0xb5, 0xfe, 0x2d, 0x01, + 0x07, 0x90, 0x28, 0x60, 0x8e, 0xbf, 0x60, 0x25, +}; +static const unsigned char kat836_addin0[] = { + 0x65, 0xd4, 0x03, 0x75, 0x48, 0x1c, 0x48, 0xb9, 0x90, 0x9c, 0x84, 0x1e, + 0x55, 0x0e, 0x82, 0xf4, 0x8d, 0x5d, 0x46, 0x68, 0xd6, 0xf6, 0x6f, 0x8b, + 0x59, 0x80, 0xa8, 0xed, 0x23, 0x33, 0x00, 0x8d, +}; +static const unsigned char kat836_addin1[] = { + 0x69, 0x1f, 0xc8, 0x26, 0x05, 0x64, 0x99, 0xd3, 0x77, 0x1e, 0x89, 0x9b, + 0x24, 0xcd, 0x2e, 0xc8, 0x6f, 0xd7, 0x6f, 0x46, 0xc9, 0xd2, 0xe7, 0x3c, + 0xa1, 0xb5, 0x49, 0xf2, 0x89, 0xb7, 0xf7, 0x25, +}; +static const unsigned char kat836_retbits[] = { + 0x87, 0x8b, 0x16, 0x0b, 0x83, 0x20, 0x0f, 0xdd, 0x35, 0x78, 0x34, 0xa4, + 0xef, 0xa7, 0xeb, 0x2d, 0xae, 0x7f, 0xc8, 0x6a, 0x48, 0x72, 0xe6, 0x0f, + 0x68, 0x2c, 0xf5, 0xf7, 0x32, 0xfb, 0xf4, 0xb5, 0xeb, 0xa7, 0xf5, 0x5c, + 0xc9, 0x66, 0xe0, 0x19, 0x96, 0x6f, 0x5d, 0x64, 0xf9, 0xfc, 0x34, 0x47, + 0xb9, 0xd8, 0xd2, 0xc2, 0xea, 0x6c, 0xa2, 0x1f, 0xd4, 0x4b, 0x19, 0x03, + 0xb4, 0x57, 0xea, 0xba, +}; +static const struct drbg_kat_no_reseed kat836_t = { + 10, kat836_entropyin, kat836_nonce, kat836_persstr, + kat836_addin0, kat836_addin1, kat836_retbits +}; +static const struct drbg_kat kat836 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat836_t +}; + +static const unsigned char kat837_entropyin[] = { + 0xa0, 0xd2, 0xb9, 0xb4, 0x76, 0x07, 0xd4, 0x56, 0x4a, 0xf2, 0xa4, 0x43, + 0x06, 0x7d, 0x6f, 0x18, 0xc6, 0x00, 0x15, 0x54, 0x85, 0x02, 0x31, 0x21, + 0x02, 0x89, 0x21, 0x39, 0x6b, 0xb1, 0x01, 0x28, +}; +static const unsigned char kat837_nonce[] = {0}; +static const unsigned char kat837_persstr[] = { + 0xf6, 0x63, 0x79, 0x9e, 0x37, 0x99, 0x5a, 0xb3, 0x22, 0x0e, 0xfd, 0xe0, + 0x2d, 0xe4, 0x33, 0xed, 0x4c, 0xcc, 0x56, 0xc5, 0x07, 0x5c, 0x9a, 0x5e, + 0xe6, 0xc4, 0xe9, 0xc5, 0x5f, 0xe9, 0xd3, 0xbc, +}; +static const unsigned char kat837_addin0[] = { + 0x86, 0x90, 0x12, 0x49, 0x7a, 0x06, 0x07, 0xf9, 0x20, 0x56, 0x92, 0x07, + 0x63, 0xee, 0x4f, 0x40, 0x46, 0x1f, 0x30, 0x03, 0xa2, 0xea, 0x67, 0xec, + 0x0c, 0x26, 0xbb, 0xd9, 0x55, 0xb4, 0x01, 0xde, +}; +static const unsigned char kat837_addin1[] = { + 0x1b, 0x23, 0x17, 0x0f, 0x86, 0xa0, 0xdb, 0xb7, 0x85, 0xa3, 0xc3, 0x61, + 0x94, 0x37, 0xa1, 0x1f, 0xb6, 0xb6, 0xe2, 0x96, 0x1c, 0x54, 0x89, 0x87, + 0x01, 0x95, 0x31, 0xf5, 0x4e, 0xe3, 0x22, 0xc8, +}; +static const unsigned char kat837_retbits[] = { + 0x4a, 0x8c, 0xca, 0x2b, 0x46, 0xdb, 0x41, 0x25, 0xe6, 0x80, 0x9c, 0xdc, + 0xf1, 0x21, 0xdc, 0x54, 0x9f, 0x59, 0x14, 0x94, 0xd4, 0x68, 0x3a, 0xb2, + 0xcb, 0xbe, 0x7d, 0x14, 0xcc, 0x82, 0x3c, 0xde, 0x91, 0x6b, 0x5c, 0xb0, + 0xa1, 0x10, 0x83, 0xee, 0xa8, 0xfc, 0x30, 0x1b, 0x93, 0xfb, 0x0b, 0xca, + 0xa6, 0xc8, 0xea, 0xcc, 0xf2, 0x10, 0xa7, 0xbf, 0xd8, 0x0d, 0x02, 0x4f, + 0x7a, 0xec, 0xe1, 0x80, +}; +static const struct drbg_kat_no_reseed kat837_t = { + 11, kat837_entropyin, kat837_nonce, kat837_persstr, + kat837_addin0, kat837_addin1, kat837_retbits +}; +static const struct drbg_kat kat837 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat837_t +}; + +static const unsigned char kat838_entropyin[] = { + 0xb5, 0x91, 0x70, 0xdd, 0xb5, 0x8c, 0xca, 0x49, 0xa0, 0x9e, 0xf1, 0x0c, + 0x35, 0xe0, 0xcb, 0x0f, 0xc3, 0x06, 0x73, 0xbb, 0x89, 0xcd, 0x0a, 0xbd, + 0x4b, 0x40, 0xdc, 0xc8, 0xfd, 0x8d, 0x0f, 0x26, +}; +static const unsigned char kat838_nonce[] = {0}; +static const unsigned char kat838_persstr[] = { + 0xc3, 0xe4, 0x1a, 0xd9, 0xdd, 0x38, 0x94, 0x43, 0x2f, 0xa5, 0xb0, 0xc0, + 0xd0, 0xd9, 0xa5, 0xab, 0x8e, 0x44, 0x7e, 0xf5, 0x22, 0x4a, 0x8b, 0xc6, + 0xb1, 0x31, 0x82, 0xea, 0xdd, 0x7b, 0x08, 0x6a, +}; +static const unsigned char kat838_addin0[] = { + 0xfe, 0x6d, 0xa3, 0xc0, 0x23, 0x11, 0x8d, 0xd6, 0x91, 0x98, 0x8d, 0xb2, + 0xd7, 0x67, 0x00, 0xb3, 0x84, 0x35, 0x73, 0xce, 0xf4, 0x05, 0xf5, 0xaf, + 0x17, 0x30, 0xe6, 0x14, 0xa8, 0xee, 0xfd, 0x29, +}; +static const unsigned char kat838_addin1[] = { + 0x90, 0xc7, 0x99, 0xce, 0x14, 0x93, 0xf9, 0x08, 0xae, 0x6d, 0x16, 0x73, + 0xab, 0x44, 0xa2, 0xf1, 0x47, 0xf4, 0xb8, 0xf1, 0xab, 0xbe, 0x41, 0x57, + 0xc4, 0xb4, 0x90, 0xbb, 0x75, 0xf2, 0x93, 0xbd, +}; +static const unsigned char kat838_retbits[] = { + 0x56, 0xc3, 0x40, 0x70, 0xc2, 0x51, 0x5c, 0x74, 0x29, 0xcc, 0x64, 0xbf, + 0xfa, 0xc6, 0xea, 0x11, 0x04, 0xdb, 0x76, 0xe4, 0x14, 0x6f, 0x58, 0x62, + 0x4d, 0x8d, 0xda, 0x3d, 0xbd, 0x1b, 0xf6, 0xf6, 0x2b, 0xb7, 0x44, 0xd4, + 0x1f, 0x6c, 0x26, 0x48, 0x9e, 0x24, 0x8b, 0x81, 0xcf, 0x64, 0x1a, 0x7b, + 0xfa, 0xbb, 0x36, 0x10, 0x9c, 0x2b, 0xb0, 0x8e, 0xda, 0x66, 0xeb, 0x2d, + 0x44, 0x37, 0xa8, 0xcd, +}; +static const struct drbg_kat_no_reseed kat838_t = { + 12, kat838_entropyin, kat838_nonce, kat838_persstr, + kat838_addin0, kat838_addin1, kat838_retbits +}; +static const struct drbg_kat kat838 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat838_t +}; + +static const unsigned char kat839_entropyin[] = { + 0x9b, 0xd5, 0x7e, 0x72, 0xca, 0x9c, 0xb4, 0x92, 0xa8, 0x8c, 0x3d, 0xbe, + 0x49, 0xc8, 0x51, 0xef, 0x04, 0xe1, 0xda, 0x87, 0x45, 0x78, 0x91, 0xad, + 0xdb, 0x06, 0xc2, 0x7a, 0xb9, 0x7f, 0xd9, 0x68, +}; +static const unsigned char kat839_nonce[] = {0}; +static const unsigned char kat839_persstr[] = { + 0xac, 0x1f, 0xfe, 0x64, 0xec, 0xff, 0x56, 0x76, 0xfe, 0x8e, 0x31, 0x07, + 0xfe, 0xe9, 0xc9, 0x19, 0x8b, 0x63, 0x18, 0x8a, 0x89, 0x9a, 0x76, 0x6a, + 0x1e, 0xd2, 0x8c, 0x84, 0xa9, 0x89, 0x8e, 0xc6, +}; +static const unsigned char kat839_addin0[] = { + 0xa9, 0xb6, 0xa2, 0x9c, 0x4a, 0xf4, 0x12, 0xc1, 0x07, 0xba, 0xad, 0xc5, + 0xbe, 0x0a, 0xc0, 0xa4, 0x57, 0x28, 0xb8, 0x61, 0xfc, 0xc2, 0xb1, 0x00, + 0xb0, 0x07, 0xc1, 0xcd, 0xa9, 0x90, 0x8a, 0x75, +}; +static const unsigned char kat839_addin1[] = { + 0xf3, 0xf7, 0xcc, 0xc0, 0xd9, 0x69, 0x18, 0x28, 0x9d, 0x2c, 0xe9, 0x90, + 0xb8, 0xf7, 0xb9, 0xcc, 0xb2, 0x17, 0xc9, 0xcd, 0x6e, 0x59, 0x72, 0x93, + 0x6b, 0xbb, 0x1c, 0x99, 0x07, 0x3c, 0x60, 0xb5, +}; +static const unsigned char kat839_retbits[] = { + 0xf1, 0x34, 0xa4, 0x5c, 0x20, 0xef, 0x4a, 0x61, 0xf4, 0x33, 0xd4, 0xfb, + 0x26, 0x73, 0x40, 0x75, 0xc6, 0xad, 0x66, 0x6a, 0x0d, 0x4f, 0x9c, 0xcb, + 0x06, 0x4b, 0x83, 0xde, 0x4e, 0x98, 0xff, 0x96, 0xbd, 0x20, 0x1e, 0xc5, + 0x2e, 0xbf, 0x00, 0xdc, 0x6a, 0xd6, 0xcb, 0x7d, 0x50, 0xd7, 0xc3, 0xe8, + 0xb1, 0x82, 0xb5, 0xf5, 0xb7, 0x00, 0xdc, 0x5b, 0x3b, 0xd1, 0x57, 0xa4, + 0xe8, 0x66, 0xbc, 0x6d, +}; +static const struct drbg_kat_no_reseed kat839_t = { + 13, kat839_entropyin, kat839_nonce, kat839_persstr, + kat839_addin0, kat839_addin1, kat839_retbits +}; +static const struct drbg_kat kat839 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat839_t +}; + +static const unsigned char kat840_entropyin[] = { + 0xdd, 0xb6, 0xe1, 0x09, 0x06, 0x65, 0x0b, 0xbf, 0x1c, 0xf7, 0x8d, 0x9e, + 0x80, 0x40, 0xb3, 0xb0, 0x2a, 0x60, 0x88, 0xe9, 0x4f, 0x84, 0xae, 0xfe, + 0xd1, 0x00, 0xa5, 0xe8, 0x0c, 0x16, 0xa4, 0xc8, +}; +static const unsigned char kat840_nonce[] = {0}; +static const unsigned char kat840_persstr[] = { + 0x05, 0xb6, 0xda, 0x01, 0x04, 0x47, 0xe7, 0x0c, 0x56, 0x66, 0x95, 0xa3, + 0xb2, 0x06, 0x64, 0xd6, 0xe7, 0x62, 0xd1, 0x22, 0x3c, 0xe4, 0x31, 0x5e, + 0xde, 0x31, 0x15, 0x18, 0x88, 0x3e, 0x2b, 0x5c, +}; +static const unsigned char kat840_addin0[] = { + 0xf5, 0x7c, 0xf3, 0x14, 0x18, 0x8b, 0x39, 0x77, 0x97, 0xca, 0xa3, 0x07, + 0x33, 0xcd, 0xab, 0xd5, 0xab, 0x2a, 0x90, 0x56, 0x2c, 0xab, 0x9b, 0xe5, + 0xf8, 0x12, 0xbb, 0xd4, 0x82, 0x52, 0x37, 0x1b, +}; +static const unsigned char kat840_addin1[] = { + 0x93, 0x83, 0x9a, 0xca, 0xa2, 0x71, 0xaf, 0x55, 0xec, 0x6c, 0x84, 0x64, + 0xac, 0x2b, 0xa8, 0xbc, 0x1c, 0x61, 0x58, 0x40, 0x08, 0xb5, 0xd9, 0x08, + 0xb2, 0x00, 0xd8, 0x04, 0x8e, 0xdc, 0x05, 0x62, +}; +static const unsigned char kat840_retbits[] = { + 0x38, 0xa3, 0xdd, 0x58, 0x4a, 0x68, 0xbd, 0x03, 0x7c, 0x5d, 0x5b, 0xe4, + 0xa1, 0x03, 0x08, 0x3e, 0x1d, 0x4b, 0xbd, 0x8a, 0x84, 0x5a, 0xc1, 0x83, + 0x2e, 0x4c, 0x54, 0x5e, 0x94, 0x2b, 0xb5, 0x23, 0x2c, 0xce, 0xc9, 0xdf, + 0x2a, 0xba, 0xaf, 0x08, 0x70, 0xd1, 0xf7, 0x5d, 0x3b, 0xf8, 0x5a, 0xa9, + 0x32, 0x3b, 0x5e, 0xed, 0xc2, 0x6a, 0x73, 0xad, 0xe2, 0xdd, 0xad, 0xe6, + 0x9f, 0xca, 0xf6, 0xd4, +}; +static const struct drbg_kat_no_reseed kat840_t = { + 14, kat840_entropyin, kat840_nonce, kat840_persstr, + kat840_addin0, kat840_addin1, kat840_retbits +}; +static const struct drbg_kat kat840 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat840_t +}; + +static const unsigned char kat841_entropyin[] = { + 0x48, 0xe8, 0x27, 0x1c, 0x4b, 0x55, 0x4d, 0x9d, 0xa3, 0xf8, 0x8c, 0x82, + 0x0d, 0x07, 0x8f, 0x6a, 0x3f, 0x66, 0xac, 0xf0, 0x07, 0xcc, 0x98, 0x84, + 0x0e, 0x03, 0xe2, 0x6c, 0x62, 0x52, 0x7f, 0x91, +}; +static const unsigned char kat841_nonce[] = {0}; +static const unsigned char kat841_persstr[] = {0}; +static const unsigned char kat841_addin0[] = {0}; +static const unsigned char kat841_addin1[] = {0}; +static const unsigned char kat841_retbits[] = { + 0xb9, 0xa9, 0x56, 0xa6, 0xe3, 0xd1, 0x03, 0x10, 0xe5, 0x7e, 0x28, 0x7c, + 0x28, 0x4c, 0x68, 0x67, 0xed, 0x9e, 0x80, 0x84, 0xa6, 0x2b, 0x25, 0xc4, + 0x92, 0x18, 0xfa, 0x3a, 0xed, 0xe7, 0xc6, 0xea, 0xec, 0x16, 0x22, 0x69, + 0x66, 0x40, 0xf6, 0xb4, 0xad, 0x53, 0x79, 0xc6, 0xfb, 0x8f, 0x9b, 0x5d, + 0x72, 0x02, 0xad, 0x89, 0x10, 0x5d, 0x03, 0x17, 0x34, 0x87, 0xe2, 0x9d, + 0xa9, 0x73, 0x93, 0x90, +}; +static const struct drbg_kat_no_reseed kat841_t = { + 0, kat841_entropyin, kat841_nonce, kat841_persstr, + kat841_addin0, kat841_addin1, kat841_retbits +}; +static const struct drbg_kat kat841 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat841_t +}; + +static const unsigned char kat842_entropyin[] = { + 0xb1, 0xc3, 0x47, 0xb0, 0x96, 0x65, 0x31, 0x0d, 0x0d, 0x04, 0x87, 0x93, + 0x5e, 0xa8, 0x1b, 0x4f, 0x73, 0x44, 0x83, 0x86, 0xcf, 0x08, 0x01, 0xcc, + 0x9d, 0x6a, 0x0b, 0xb6, 0x55, 0x60, 0x2c, 0x29, +}; +static const unsigned char kat842_nonce[] = {0}; +static const unsigned char kat842_persstr[] = {0}; +static const unsigned char kat842_addin0[] = {0}; +static const unsigned char kat842_addin1[] = {0}; +static const unsigned char kat842_retbits[] = { + 0xa6, 0x19, 0xe2, 0x6d, 0x7a, 0xcf, 0x6b, 0x82, 0x84, 0x51, 0x56, 0x2f, + 0x51, 0x75, 0xc2, 0xa9, 0xaf, 0xb7, 0x3c, 0xe3, 0xa7, 0x26, 0x5b, 0xea, + 0x38, 0xb8, 0xf3, 0xbd, 0xe9, 0xf4, 0x26, 0xcf, 0x55, 0x2f, 0xff, 0x34, + 0x35, 0xea, 0xbb, 0xfb, 0x72, 0x44, 0x6d, 0x90, 0x76, 0xee, 0x00, 0x45, + 0xbf, 0x82, 0xca, 0xff, 0x76, 0xd9, 0x01, 0x23, 0x7f, 0x7b, 0x6e, 0x33, + 0xe6, 0xac, 0xdf, 0x9a, +}; +static const struct drbg_kat_no_reseed kat842_t = { + 1, kat842_entropyin, kat842_nonce, kat842_persstr, + kat842_addin0, kat842_addin1, kat842_retbits +}; +static const struct drbg_kat kat842 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat842_t +}; + +static const unsigned char kat843_entropyin[] = { + 0x4a, 0xdf, 0x8e, 0xbf, 0xf3, 0x58, 0x8c, 0x1d, 0x86, 0xf8, 0xb0, 0xa7, + 0x0f, 0x55, 0x85, 0xcd, 0x7f, 0xa6, 0xe1, 0xa1, 0x17, 0x6e, 0x79, 0x1b, + 0xeb, 0x37, 0xb5, 0xa2, 0x51, 0x25, 0xd2, 0xab, +}; +static const unsigned char kat843_nonce[] = {0}; +static const unsigned char kat843_persstr[] = {0}; +static const unsigned char kat843_addin0[] = {0}; +static const unsigned char kat843_addin1[] = {0}; +static const unsigned char kat843_retbits[] = { + 0x8b, 0xfd, 0x73, 0xea, 0x99, 0x09, 0xcb, 0x62, 0x24, 0x8f, 0x97, 0x2c, + 0xa7, 0x7f, 0xd6, 0x53, 0x79, 0x24, 0xfb, 0xf5, 0x84, 0x7b, 0xd6, 0xb2, + 0x9b, 0x2f, 0xe3, 0x67, 0xf8, 0xdd, 0x2f, 0xe2, 0x2c, 0xad, 0xeb, 0x8b, + 0x6e, 0x32, 0x85, 0x6d, 0xcf, 0xf8, 0x11, 0xda, 0x72, 0x48, 0x3e, 0xf1, + 0x64, 0xcf, 0xa6, 0x78, 0xde, 0xb4, 0xf9, 0xaf, 0x38, 0x1e, 0xfe, 0x2d, + 0x70, 0x28, 0x82, 0x92, +}; +static const struct drbg_kat_no_reseed kat843_t = { + 2, kat843_entropyin, kat843_nonce, kat843_persstr, + kat843_addin0, kat843_addin1, kat843_retbits +}; +static const struct drbg_kat kat843 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat843_t +}; + +static const unsigned char kat844_entropyin[] = { + 0x28, 0x5d, 0xe6, 0x16, 0xb8, 0xba, 0x8b, 0xb5, 0xf6, 0x46, 0xfe, 0x43, + 0x60, 0x16, 0x45, 0x45, 0x4e, 0xc7, 0xd7, 0x08, 0xf4, 0x42, 0xfb, 0x1f, + 0xfd, 0xea, 0x09, 0xae, 0x10, 0xac, 0xc0, 0x64, +}; +static const unsigned char kat844_nonce[] = {0}; +static const unsigned char kat844_persstr[] = {0}; +static const unsigned char kat844_addin0[] = {0}; +static const unsigned char kat844_addin1[] = {0}; +static const unsigned char kat844_retbits[] = { + 0x31, 0xbe, 0x55, 0x8c, 0xa1, 0x3f, 0x23, 0x8d, 0x59, 0x6e, 0xc5, 0xdb, + 0x02, 0xd4, 0xf0, 0xb9, 0x23, 0xbf, 0x01, 0x64, 0x9d, 0x1a, 0x51, 0xf4, + 0xcd, 0x27, 0xfc, 0xd7, 0x7b, 0xa2, 0x9e, 0x46, 0x30, 0xef, 0xc9, 0x13, + 0xbd, 0xa1, 0xdb, 0xed, 0x32, 0x0c, 0x7f, 0x4c, 0x8d, 0x69, 0xac, 0x7f, + 0xb3, 0xec, 0xcc, 0x25, 0x9b, 0xca, 0x82, 0xe4, 0x79, 0x59, 0x9f, 0x3a, + 0x67, 0xb1, 0x79, 0x22, +}; +static const struct drbg_kat_no_reseed kat844_t = { + 3, kat844_entropyin, kat844_nonce, kat844_persstr, + kat844_addin0, kat844_addin1, kat844_retbits +}; +static const struct drbg_kat kat844 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat844_t +}; + +static const unsigned char kat845_entropyin[] = { + 0x14, 0x5b, 0x3c, 0x65, 0xaf, 0xb2, 0xfb, 0xae, 0x1c, 0xd7, 0x65, 0x25, + 0xb2, 0xd5, 0x32, 0x5c, 0xc4, 0x30, 0xcd, 0x4e, 0x1c, 0x8a, 0x63, 0x76, + 0xbf, 0xc7, 0xa3, 0x02, 0x3b, 0xb8, 0xf5, 0x9d, +}; +static const unsigned char kat845_nonce[] = {0}; +static const unsigned char kat845_persstr[] = {0}; +static const unsigned char kat845_addin0[] = {0}; +static const unsigned char kat845_addin1[] = {0}; +static const unsigned char kat845_retbits[] = { + 0x56, 0x60, 0x03, 0x5f, 0x34, 0xbc, 0xc6, 0xcc, 0xab, 0xae, 0xcb, 0x15, + 0x83, 0x82, 0x7c, 0x9f, 0x0f, 0xf4, 0x3e, 0x0e, 0xcb, 0x22, 0x26, 0x9c, + 0x06, 0x93, 0x63, 0xc0, 0x5e, 0xc2, 0x82, 0xbc, 0x5f, 0x4d, 0x4a, 0x42, + 0x62, 0xe1, 0xe0, 0xa0, 0xfb, 0x66, 0x7a, 0x28, 0x5a, 0x3f, 0xde, 0x69, + 0x05, 0x2c, 0x91, 0xc7, 0x3d, 0x04, 0x32, 0xd9, 0x12, 0x35, 0xbf, 0x4f, + 0x90, 0x37, 0x3a, 0x22, +}; +static const struct drbg_kat_no_reseed kat845_t = { + 4, kat845_entropyin, kat845_nonce, kat845_persstr, + kat845_addin0, kat845_addin1, kat845_retbits +}; +static const struct drbg_kat kat845 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat845_t +}; + +static const unsigned char kat846_entropyin[] = { + 0xb8, 0x0c, 0x0a, 0x02, 0xb6, 0xfc, 0x7b, 0xfc, 0x05, 0x15, 0x88, 0x00, + 0x05, 0xc0, 0xa2, 0xc1, 0x8e, 0xf5, 0xb8, 0x12, 0x99, 0x15, 0xfd, 0xac, + 0x34, 0xbc, 0x94, 0x6c, 0xb4, 0x80, 0xc0, 0xfd, +}; +static const unsigned char kat846_nonce[] = {0}; +static const unsigned char kat846_persstr[] = {0}; +static const unsigned char kat846_addin0[] = {0}; +static const unsigned char kat846_addin1[] = {0}; +static const unsigned char kat846_retbits[] = { + 0x82, 0xef, 0x2a, 0xf1, 0x4b, 0x58, 0xfc, 0xe2, 0x9d, 0x33, 0xf9, 0xf1, + 0xb5, 0x26, 0x18, 0xf2, 0x30, 0x24, 0xdd, 0x17, 0xdc, 0x81, 0x33, 0x74, + 0x9b, 0x59, 0x98, 0x15, 0x0f, 0x44, 0xf4, 0xde, 0x8f, 0xa2, 0x8f, 0x62, + 0xc4, 0xdf, 0xeb, 0x2b, 0xb7, 0xbc, 0xc4, 0xf5, 0x14, 0xaf, 0x9a, 0xd2, + 0xc7, 0x64, 0x20, 0xd3, 0xe4, 0xcf, 0x7c, 0xc5, 0x35, 0xc5, 0x56, 0xe1, + 0xe7, 0x3a, 0xcc, 0x54, +}; +static const struct drbg_kat_no_reseed kat846_t = { + 5, kat846_entropyin, kat846_nonce, kat846_persstr, + kat846_addin0, kat846_addin1, kat846_retbits +}; +static const struct drbg_kat kat846 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat846_t +}; + +static const unsigned char kat847_entropyin[] = { + 0x1a, 0xea, 0x93, 0x80, 0xee, 0x1c, 0x38, 0x37, 0xfd, 0x57, 0xb6, 0xae, + 0x69, 0xca, 0xe7, 0xd1, 0xa8, 0x16, 0x63, 0xc2, 0xc3, 0x69, 0x19, 0xa8, + 0xfb, 0x46, 0x39, 0x8a, 0x77, 0x57, 0xd7, 0xbf, +}; +static const unsigned char kat847_nonce[] = {0}; +static const unsigned char kat847_persstr[] = {0}; +static const unsigned char kat847_addin0[] = {0}; +static const unsigned char kat847_addin1[] = {0}; +static const unsigned char kat847_retbits[] = { + 0x9b, 0xf9, 0xe4, 0xee, 0xee, 0xf1, 0x18, 0xd6, 0x75, 0x49, 0x44, 0xb8, + 0xed, 0xd4, 0x6d, 0xea, 0x37, 0x97, 0xd8, 0x21, 0x9d, 0xfb, 0x9d, 0xec, + 0x11, 0x86, 0xbb, 0xe2, 0xa9, 0x87, 0x6e, 0x60, 0x4a, 0xd5, 0x2c, 0x02, + 0xd0, 0x2e, 0xa0, 0xa9, 0x80, 0x29, 0xe8, 0x83, 0xff, 0xf8, 0xb6, 0x04, + 0x39, 0xe6, 0xc3, 0x58, 0xb2, 0x6c, 0xb0, 0xea, 0x40, 0xf0, 0x31, 0x9a, + 0x37, 0xf3, 0xea, 0x87, +}; +static const struct drbg_kat_no_reseed kat847_t = { + 6, kat847_entropyin, kat847_nonce, kat847_persstr, + kat847_addin0, kat847_addin1, kat847_retbits +}; +static const struct drbg_kat kat847 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat847_t +}; + +static const unsigned char kat848_entropyin[] = { + 0xf2, 0xa7, 0x11, 0xe4, 0xe5, 0xf0, 0x55, 0x1a, 0xe7, 0xc7, 0x91, 0x6a, + 0x95, 0xe7, 0x65, 0x42, 0xa4, 0x4c, 0x9a, 0x02, 0xc7, 0x15, 0x35, 0xfd, + 0x02, 0x0b, 0x2d, 0xb1, 0x68, 0xf4, 0x3d, 0x31, +}; +static const unsigned char kat848_nonce[] = {0}; +static const unsigned char kat848_persstr[] = {0}; +static const unsigned char kat848_addin0[] = {0}; +static const unsigned char kat848_addin1[] = {0}; +static const unsigned char kat848_retbits[] = { + 0xcb, 0x8a, 0xc7, 0x86, 0x03, 0xa6, 0xb4, 0x4f, 0x05, 0x7f, 0x8f, 0xa3, + 0x48, 0xe1, 0x98, 0x71, 0x06, 0xd5, 0xaf, 0x6b, 0x92, 0x93, 0xff, 0xe3, + 0x72, 0x6b, 0x46, 0x24, 0xba, 0x04, 0xc6, 0x0a, 0x27, 0xb2, 0x1a, 0x62, + 0x62, 0x24, 0x74, 0x8e, 0xcc, 0x11, 0x1c, 0xd1, 0xef, 0x10, 0x2d, 0x62, + 0xd8, 0xe9, 0x0c, 0xd5, 0x14, 0xef, 0x04, 0x51, 0x67, 0x18, 0x53, 0x05, + 0x00, 0x67, 0x8f, 0x20, +}; +static const struct drbg_kat_no_reseed kat848_t = { + 7, kat848_entropyin, kat848_nonce, kat848_persstr, + kat848_addin0, kat848_addin1, kat848_retbits +}; +static const struct drbg_kat kat848 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat848_t +}; + +static const unsigned char kat849_entropyin[] = { + 0x15, 0x9c, 0xc9, 0xeb, 0x22, 0xaa, 0xfb, 0x9c, 0xe3, 0x1a, 0x7e, 0xe2, + 0xf8, 0xe6, 0x17, 0x15, 0x24, 0xc7, 0xd7, 0xbc, 0x04, 0x56, 0x32, 0xad, + 0x04, 0x3d, 0x73, 0x1d, 0x00, 0xfb, 0x2a, 0x67, +}; +static const unsigned char kat849_nonce[] = {0}; +static const unsigned char kat849_persstr[] = {0}; +static const unsigned char kat849_addin0[] = {0}; +static const unsigned char kat849_addin1[] = {0}; +static const unsigned char kat849_retbits[] = { + 0xa2, 0x31, 0xa1, 0xab, 0x27, 0x3a, 0x29, 0x7b, 0xd4, 0x43, 0xf1, 0x43, + 0x59, 0x92, 0x35, 0xcf, 0xdf, 0xc7, 0x23, 0x59, 0xbb, 0x69, 0x39, 0x4a, + 0xf0, 0x91, 0x79, 0x60, 0xec, 0x43, 0xae, 0x17, 0xaa, 0xe4, 0x62, 0x32, + 0xf8, 0x27, 0x3e, 0xdd, 0x86, 0x4b, 0x8b, 0x07, 0xa6, 0x13, 0xe9, 0xfc, + 0x26, 0x56, 0xe8, 0x95, 0x30, 0x0f, 0xd1, 0x7a, 0x9e, 0x28, 0x60, 0xd4, + 0x5d, 0xb6, 0x1e, 0x8c, +}; +static const struct drbg_kat_no_reseed kat849_t = { + 8, kat849_entropyin, kat849_nonce, kat849_persstr, + kat849_addin0, kat849_addin1, kat849_retbits +}; +static const struct drbg_kat kat849 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat849_t +}; + +static const unsigned char kat850_entropyin[] = { + 0x1e, 0xbc, 0xcb, 0x0d, 0xd5, 0x03, 0xec, 0x20, 0xe5, 0x8b, 0xb4, 0xd8, + 0xc2, 0xec, 0x67, 0xf2, 0xe8, 0xdc, 0x3a, 0x04, 0x36, 0x1d, 0xaf, 0xc8, + 0x1c, 0x0c, 0x0b, 0x61, 0x1a, 0xf2, 0x76, 0xa2, +}; +static const unsigned char kat850_nonce[] = {0}; +static const unsigned char kat850_persstr[] = {0}; +static const unsigned char kat850_addin0[] = {0}; +static const unsigned char kat850_addin1[] = {0}; +static const unsigned char kat850_retbits[] = { + 0xc6, 0x4d, 0xb3, 0x84, 0xb4, 0xb7, 0xb0, 0x54, 0xb0, 0x0d, 0x31, 0xbb, + 0x94, 0xc0, 0x27, 0x35, 0x0e, 0x7a, 0x5c, 0x2f, 0xe0, 0x0e, 0xef, 0x37, + 0x15, 0x6c, 0x94, 0x63, 0x9c, 0xdb, 0x04, 0x33, 0xfb, 0x31, 0xbe, 0x02, + 0x37, 0x01, 0x9b, 0xfa, 0xf6, 0xf9, 0xc5, 0x49, 0xff, 0x77, 0xd5, 0x23, + 0xb5, 0xb5, 0x3c, 0x07, 0xd1, 0xe0, 0x0f, 0x79, 0xb0, 0x74, 0xb7, 0xfb, + 0x5c, 0x78, 0x14, 0xe4, +}; +static const struct drbg_kat_no_reseed kat850_t = { + 9, kat850_entropyin, kat850_nonce, kat850_persstr, + kat850_addin0, kat850_addin1, kat850_retbits +}; +static const struct drbg_kat kat850 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat850_t +}; + +static const unsigned char kat851_entropyin[] = { + 0x6d, 0xbf, 0x76, 0xe7, 0x8b, 0x9a, 0xf7, 0x74, 0x4c, 0x84, 0xa2, 0x4e, + 0x5d, 0x9a, 0x4b, 0x42, 0x49, 0x32, 0xb1, 0x9e, 0x6a, 0x62, 0xa9, 0xab, + 0x3a, 0x04, 0xb3, 0x2c, 0x76, 0xee, 0xf7, 0xde, +}; +static const unsigned char kat851_nonce[] = {0}; +static const unsigned char kat851_persstr[] = {0}; +static const unsigned char kat851_addin0[] = {0}; +static const unsigned char kat851_addin1[] = {0}; +static const unsigned char kat851_retbits[] = { + 0xea, 0x09, 0xfc, 0x60, 0x69, 0xb9, 0x9c, 0x9e, 0xd1, 0x16, 0xdf, 0x49, + 0x47, 0x1b, 0xe2, 0xd7, 0x26, 0x17, 0x10, 0xa8, 0xaf, 0xba, 0x1c, 0xf3, + 0xa0, 0xd3, 0xf3, 0xd2, 0x2d, 0x80, 0x72, 0xb0, 0xb5, 0x0e, 0x00, 0x3d, + 0x7f, 0xab, 0x02, 0x11, 0xd5, 0xa4, 0x4d, 0x6f, 0x75, 0xf4, 0x54, 0x1f, + 0x5b, 0x97, 0x3e, 0x72, 0x71, 0x05, 0xe0, 0x29, 0x7c, 0x3b, 0x9f, 0x0c, + 0xa9, 0x4e, 0x00, 0x43, +}; +static const struct drbg_kat_no_reseed kat851_t = { + 10, kat851_entropyin, kat851_nonce, kat851_persstr, + kat851_addin0, kat851_addin1, kat851_retbits +}; +static const struct drbg_kat kat851 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat851_t +}; + +static const unsigned char kat852_entropyin[] = { + 0xb0, 0xa4, 0xfa, 0x9c, 0xc2, 0xa5, 0xb4, 0x28, 0xdd, 0x92, 0x4c, 0x31, + 0x2d, 0xcc, 0x05, 0x4b, 0xfb, 0xf7, 0x4c, 0x0f, 0x9c, 0x38, 0xed, 0x02, + 0x40, 0x04, 0x6f, 0x35, 0x4d, 0x2f, 0xc6, 0xb2, +}; +static const unsigned char kat852_nonce[] = {0}; +static const unsigned char kat852_persstr[] = {0}; +static const unsigned char kat852_addin0[] = {0}; +static const unsigned char kat852_addin1[] = {0}; +static const unsigned char kat852_retbits[] = { + 0x6f, 0x51, 0x33, 0x61, 0xb3, 0x07, 0x6f, 0x5e, 0xac, 0x6c, 0xa5, 0x40, + 0x86, 0x9b, 0xdc, 0x40, 0x11, 0x88, 0xf9, 0xe4, 0xbe, 0x25, 0x34, 0x8e, + 0x22, 0xa6, 0xb8, 0xda, 0xa0, 0x43, 0x11, 0xb5, 0x27, 0x84, 0xba, 0xff, + 0x3c, 0x2a, 0x11, 0xca, 0xf0, 0x3d, 0xea, 0xc3, 0x64, 0x31, 0x74, 0xb0, + 0xc8, 0xe4, 0x4b, 0x54, 0x4c, 0x0b, 0xbb, 0x4d, 0xa7, 0x24, 0x1b, 0xbf, + 0x65, 0x7e, 0xc1, 0x76, +}; +static const struct drbg_kat_no_reseed kat852_t = { + 11, kat852_entropyin, kat852_nonce, kat852_persstr, + kat852_addin0, kat852_addin1, kat852_retbits +}; +static const struct drbg_kat kat852 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat852_t +}; + +static const unsigned char kat853_entropyin[] = { + 0x85, 0x7a, 0x11, 0x86, 0xa0, 0x82, 0xd7, 0x7e, 0xd7, 0x89, 0x3b, 0xb4, + 0x67, 0xda, 0xa7, 0x95, 0x76, 0xd1, 0xfc, 0x66, 0x7e, 0x07, 0x11, 0x74, + 0x90, 0x52, 0x2f, 0x87, 0xee, 0x19, 0xbb, 0x9f, +}; +static const unsigned char kat853_nonce[] = {0}; +static const unsigned char kat853_persstr[] = {0}; +static const unsigned char kat853_addin0[] = {0}; +static const unsigned char kat853_addin1[] = {0}; +static const unsigned char kat853_retbits[] = { + 0xfb, 0x88, 0x89, 0xbf, 0xe0, 0x08, 0xf0, 0xd4, 0x50, 0x34, 0xc2, 0x6b, + 0xb0, 0x41, 0x4f, 0xf1, 0x95, 0x13, 0xb6, 0xc4, 0x44, 0x5a, 0xcc, 0x4a, + 0x56, 0x3f, 0x6d, 0xf9, 0x55, 0x2e, 0xc5, 0xdf, 0x95, 0xf8, 0xcc, 0x71, + 0x43, 0x75, 0x7e, 0x74, 0x06, 0xfe, 0xb4, 0xf5, 0xbe, 0x7f, 0x1b, 0x65, + 0x76, 0x04, 0x90, 0xdf, 0x90, 0x29, 0x8e, 0x73, 0x05, 0x58, 0x30, 0x94, + 0x3d, 0xbd, 0x7c, 0x38, +}; +static const struct drbg_kat_no_reseed kat853_t = { + 12, kat853_entropyin, kat853_nonce, kat853_persstr, + kat853_addin0, kat853_addin1, kat853_retbits +}; +static const struct drbg_kat kat853 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat853_t +}; + +static const unsigned char kat854_entropyin[] = { + 0xb2, 0x78, 0xae, 0xf0, 0x58, 0x9b, 0xa4, 0x9f, 0x91, 0xd3, 0xce, 0x6e, + 0xf0, 0xaf, 0x69, 0x8b, 0xbf, 0x28, 0x2e, 0xd6, 0xc1, 0x12, 0xca, 0xd9, + 0xe8, 0x66, 0x46, 0xd0, 0x10, 0x76, 0x31, 0xdd, +}; +static const unsigned char kat854_nonce[] = {0}; +static const unsigned char kat854_persstr[] = {0}; +static const unsigned char kat854_addin0[] = {0}; +static const unsigned char kat854_addin1[] = {0}; +static const unsigned char kat854_retbits[] = { + 0xe6, 0xe3, 0x45, 0xa5, 0x0c, 0xed, 0x3c, 0xc6, 0x8a, 0xe2, 0x4e, 0xd9, + 0xad, 0x8c, 0xdb, 0x48, 0x28, 0x15, 0x28, 0x4e, 0x66, 0xf9, 0xb0, 0x15, + 0x1f, 0xdd, 0x75, 0xd1, 0x3c, 0x97, 0x58, 0x66, 0x3c, 0x4d, 0xf9, 0xab, + 0x99, 0xce, 0xf4, 0xfe, 0xd8, 0xae, 0x86, 0xfd, 0x18, 0x68, 0xbe, 0x6c, + 0x5e, 0xae, 0xad, 0x7a, 0x6a, 0x9d, 0xe7, 0x22, 0xf1, 0x2d, 0xa1, 0xe9, + 0x55, 0xdb, 0xc6, 0x41, +}; +static const struct drbg_kat_no_reseed kat854_t = { + 13, kat854_entropyin, kat854_nonce, kat854_persstr, + kat854_addin0, kat854_addin1, kat854_retbits +}; +static const struct drbg_kat kat854 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat854_t +}; + +static const unsigned char kat855_entropyin[] = { + 0xab, 0x87, 0x58, 0x86, 0x82, 0x71, 0x97, 0xb7, 0x84, 0xb1, 0x37, 0x72, + 0x6f, 0x1f, 0x58, 0x62, 0xc0, 0x16, 0xe2, 0xc8, 0x78, 0x04, 0x52, 0xfe, + 0x98, 0xf4, 0xee, 0xb6, 0x8f, 0x71, 0xac, 0xa5, +}; +static const unsigned char kat855_nonce[] = {0}; +static const unsigned char kat855_persstr[] = {0}; +static const unsigned char kat855_addin0[] = {0}; +static const unsigned char kat855_addin1[] = {0}; +static const unsigned char kat855_retbits[] = { + 0xb6, 0x63, 0x44, 0x52, 0x66, 0x1b, 0x01, 0x9a, 0xfb, 0xf2, 0xe9, 0xb6, + 0xe2, 0x0b, 0x8b, 0xe7, 0xd9, 0xca, 0xb7, 0x39, 0x38, 0x3d, 0xe8, 0x63, + 0x64, 0x04, 0xc2, 0x75, 0xdc, 0x49, 0x5f, 0x54, 0xfb, 0xf2, 0x32, 0x05, + 0xdb, 0xf8, 0x43, 0xaf, 0xeb, 0xbc, 0x4e, 0x88, 0xc6, 0xee, 0x12, 0x6f, + 0x72, 0x9c, 0xc4, 0x07, 0xcc, 0xbb, 0xe7, 0x92, 0xe3, 0x31, 0x92, 0x30, + 0xf2, 0x30, 0x23, 0xd1, +}; +static const struct drbg_kat_no_reseed kat855_t = { + 14, kat855_entropyin, kat855_nonce, kat855_persstr, + kat855_addin0, kat855_addin1, kat855_retbits +}; +static const struct drbg_kat kat855 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat855_t +}; + +static const unsigned char kat856_entropyin[] = { + 0xca, 0xa9, 0x43, 0x6e, 0xe5, 0xf8, 0x8b, 0xf3, 0x20, 0xe8, 0xed, 0x3a, + 0x77, 0x89, 0xc8, 0x23, 0x63, 0xd0, 0xbf, 0xd4, 0xdd, 0x5d, 0x3e, 0x10, + 0xea, 0x14, 0xba, 0x0f, 0x05, 0x6f, 0x21, 0x22, +}; +static const unsigned char kat856_nonce[] = {0}; +static const unsigned char kat856_persstr[] = {0}; +static const unsigned char kat856_addin0[] = { + 0x20, 0xcc, 0x01, 0x75, 0xa5, 0x46, 0x21, 0x12, 0x2a, 0xac, 0xa0, 0xf0, + 0x65, 0x30, 0x34, 0xa3, 0x6d, 0x40, 0x37, 0xe9, 0x3d, 0x43, 0x99, 0x3c, + 0x97, 0x83, 0x6a, 0xe9, 0x15, 0xcc, 0x74, 0x77, +}; +static const unsigned char kat856_addin1[] = { + 0x60, 0x44, 0x64, 0xac, 0x87, 0x08, 0x1e, 0x0e, 0x8d, 0x46, 0x52, 0x11, + 0xf9, 0xa9, 0xc9, 0x9d, 0x07, 0x10, 0x45, 0xc1, 0x43, 0x0a, 0x31, 0x74, + 0x14, 0x6a, 0x09, 0x40, 0x84, 0x06, 0xa2, 0x96, +}; +static const unsigned char kat856_retbits[] = { + 0x1d, 0x1c, 0xac, 0x3f, 0x1f, 0x7d, 0x3f, 0xc6, 0xed, 0xd2, 0x01, 0x93, + 0x8f, 0x63, 0x38, 0xbc, 0x2c, 0x97, 0x6a, 0x43, 0x05, 0xbb, 0xe7, 0xbc, + 0x37, 0xb1, 0x28, 0xc5, 0x6e, 0xda, 0x97, 0x47, 0x8d, 0xaa, 0x7d, 0x81, + 0x2d, 0xb1, 0x88, 0xbd, 0xcc, 0x86, 0xfc, 0x44, 0xc7, 0x05, 0x44, 0x1f, + 0x95, 0x2f, 0x3c, 0x54, 0x86, 0x0a, 0x0f, 0xc2, 0x01, 0xdd, 0xff, 0x26, + 0x98, 0x48, 0xea, 0x44, +}; +static const struct drbg_kat_no_reseed kat856_t = { + 0, kat856_entropyin, kat856_nonce, kat856_persstr, + kat856_addin0, kat856_addin1, kat856_retbits +}; +static const struct drbg_kat kat856 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat856_t +}; + +static const unsigned char kat857_entropyin[] = { + 0xd7, 0x8f, 0x64, 0x0c, 0x60, 0xa2, 0x8a, 0xea, 0x35, 0xe6, 0xbc, 0xf2, + 0x88, 0xf2, 0xc8, 0xbd, 0x0e, 0x71, 0xf7, 0x74, 0x23, 0x0b, 0xc8, 0xfb, + 0x06, 0xc6, 0x41, 0xb4, 0xe9, 0x7e, 0x24, 0x8d, +}; +static const unsigned char kat857_nonce[] = {0}; +static const unsigned char kat857_persstr[] = {0}; +static const unsigned char kat857_addin0[] = { + 0x88, 0x4e, 0xc6, 0xcd, 0x46, 0x25, 0xf4, 0xb6, 0x9a, 0x3f, 0xde, 0xc9, + 0x8f, 0x38, 0x41, 0xaf, 0x85, 0x47, 0x02, 0x91, 0x06, 0xd6, 0xdd, 0xde, + 0x5e, 0xc4, 0x81, 0xfb, 0x12, 0xb7, 0x8a, 0x3d, +}; +static const unsigned char kat857_addin1[] = { + 0x9b, 0xb6, 0xa9, 0x5d, 0xe1, 0xb4, 0xbe, 0x88, 0x41, 0xb7, 0x2e, 0xa4, + 0x1e, 0xb4, 0x46, 0xb4, 0x3b, 0x26, 0x9d, 0x0b, 0x9e, 0x39, 0x4b, 0x35, + 0x6e, 0x68, 0x83, 0xc3, 0x1d, 0x8d, 0x66, 0xcf, +}; +static const unsigned char kat857_retbits[] = { + 0x82, 0x69, 0x5f, 0xe6, 0x01, 0x42, 0xc6, 0x6f, 0xb6, 0x66, 0x5b, 0xf9, + 0x0e, 0x6f, 0x52, 0x83, 0x9b, 0x95, 0x6f, 0xe2, 0x6e, 0xcf, 0xb7, 0xfb, + 0x02, 0xd1, 0xff, 0x59, 0xf8, 0x23, 0x1d, 0x30, 0x7e, 0x1a, 0xe3, 0x8a, + 0x52, 0x86, 0x39, 0x45, 0xda, 0xda, 0x62, 0x6d, 0x6e, 0x32, 0xa0, 0xc2, + 0x16, 0xdf, 0x0a, 0x72, 0x24, 0x0a, 0xf2, 0x87, 0x14, 0x48, 0x3f, 0x0e, + 0xc8, 0x63, 0xee, 0x7c, +}; +static const struct drbg_kat_no_reseed kat857_t = { + 1, kat857_entropyin, kat857_nonce, kat857_persstr, + kat857_addin0, kat857_addin1, kat857_retbits +}; +static const struct drbg_kat kat857 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat857_t +}; + +static const unsigned char kat858_entropyin[] = { + 0x79, 0x4a, 0xbe, 0x2c, 0x9f, 0x06, 0x5b, 0xfc, 0xae, 0x64, 0x7a, 0xa6, + 0x2c, 0xf6, 0x88, 0xfd, 0x69, 0x41, 0x60, 0x56, 0x5d, 0x87, 0xf2, 0xfb, + 0xd5, 0x9f, 0xa1, 0xe4, 0x26, 0x20, 0x60, 0x33, +}; +static const unsigned char kat858_nonce[] = {0}; +static const unsigned char kat858_persstr[] = {0}; +static const unsigned char kat858_addin0[] = { + 0xff, 0x50, 0x9f, 0xa4, 0x60, 0x00, 0x0b, 0x3c, 0xa3, 0xe2, 0x93, 0x0d, + 0x1a, 0x3d, 0xd1, 0x70, 0xc1, 0xb8, 0xca, 0x18, 0x25, 0x03, 0xec, 0x12, + 0xd4, 0x9d, 0x70, 0x83, 0xf6, 0xa9, 0xda, 0xed, +}; +static const unsigned char kat858_addin1[] = { + 0x6a, 0xcc, 0xd0, 0x03, 0x1e, 0x49, 0xe4, 0xeb, 0x08, 0x5d, 0x0e, 0x18, + 0xa0, 0x7d, 0x89, 0xa0, 0x5d, 0x6a, 0x1b, 0x15, 0x24, 0x68, 0x25, 0xd8, + 0x65, 0xc0, 0x0a, 0xb0, 0x42, 0x9b, 0xb3, 0x3b, +}; +static const unsigned char kat858_retbits[] = { + 0x5b, 0x5c, 0xa6, 0x75, 0xf5, 0xe2, 0x46, 0xb8, 0x5a, 0xd3, 0x1a, 0xba, + 0xf2, 0x66, 0x04, 0x51, 0x50, 0x30, 0x9d, 0x39, 0xb1, 0x8d, 0x30, 0x19, + 0x0c, 0x18, 0x60, 0xde, 0xf3, 0xe0, 0x75, 0x01, 0xcb, 0x0b, 0xed, 0x8c, + 0x57, 0xf5, 0x36, 0x69, 0xc0, 0xb4, 0xf5, 0x9b, 0xf1, 0xe3, 0x0e, 0x24, + 0x1b, 0x59, 0x37, 0xd6, 0xf8, 0x85, 0x2c, 0xcb, 0x0b, 0x62, 0x35, 0x70, + 0x20, 0x52, 0xd9, 0x5a, +}; +static const struct drbg_kat_no_reseed kat858_t = { + 2, kat858_entropyin, kat858_nonce, kat858_persstr, + kat858_addin0, kat858_addin1, kat858_retbits +}; +static const struct drbg_kat kat858 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat858_t +}; + +static const unsigned char kat859_entropyin[] = { + 0xa0, 0xcd, 0x3d, 0x5f, 0x72, 0x6a, 0x1a, 0x84, 0x7e, 0x3d, 0x8f, 0xa0, + 0x29, 0x31, 0x98, 0xfe, 0xe6, 0x7c, 0xee, 0x2f, 0xe6, 0xfa, 0x6b, 0xd2, + 0xc9, 0x0b, 0x17, 0x22, 0x88, 0xe0, 0xfb, 0x0d, +}; +static const unsigned char kat859_nonce[] = {0}; +static const unsigned char kat859_persstr[] = {0}; +static const unsigned char kat859_addin0[] = { + 0xb7, 0x68, 0x33, 0x1b, 0x82, 0xe4, 0x52, 0x72, 0xca, 0x84, 0x1d, 0x38, + 0x67, 0x45, 0x77, 0x88, 0xd1, 0x94, 0x9a, 0xf1, 0xfe, 0x1c, 0x2e, 0x01, + 0x84, 0xa8, 0xcf, 0x91, 0xdb, 0xda, 0x63, 0xfb, +}; +static const unsigned char kat859_addin1[] = { + 0x83, 0x25, 0x75, 0x4c, 0x9a, 0xee, 0x9b, 0xd5, 0x86, 0x2e, 0x42, 0x92, + 0xe2, 0x95, 0x69, 0xaa, 0x37, 0xd3, 0x59, 0x8e, 0x38, 0xe1, 0x20, 0x3c, + 0x61, 0x7f, 0x04, 0x30, 0xf8, 0x6c, 0x02, 0x51, +}; +static const unsigned char kat859_retbits[] = { + 0x74, 0x1a, 0x10, 0x3e, 0x00, 0xaa, 0x20, 0x21, 0x0b, 0xbb, 0x0a, 0x90, + 0x1f, 0x77, 0xfa, 0x35, 0x44, 0x2f, 0xfa, 0x90, 0xf4, 0xc1, 0x71, 0x19, + 0x4e, 0xc9, 0xa5, 0x44, 0x64, 0x4f, 0x8c, 0x40, 0xd1, 0x22, 0xb8, 0x36, + 0x43, 0x00, 0x2e, 0xa5, 0x0d, 0xce, 0x14, 0xfa, 0xf7, 0x64, 0xa7, 0x93, + 0x72, 0x54, 0x43, 0x2c, 0x7d, 0xa7, 0xe5, 0xc3, 0xf8, 0x93, 0x6f, 0x32, + 0xb5, 0xc2, 0x1c, 0x9e, +}; +static const struct drbg_kat_no_reseed kat859_t = { + 3, kat859_entropyin, kat859_nonce, kat859_persstr, + kat859_addin0, kat859_addin1, kat859_retbits +}; +static const struct drbg_kat kat859 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat859_t +}; + +static const unsigned char kat860_entropyin[] = { + 0x45, 0xf8, 0xca, 0xde, 0xc2, 0xfa, 0x44, 0x72, 0x34, 0x7f, 0x6a, 0xce, + 0x4a, 0xb0, 0x4c, 0x04, 0xa9, 0x19, 0x1f, 0x79, 0x4b, 0x03, 0x1e, 0x61, + 0x5b, 0xbc, 0xf9, 0xe7, 0x16, 0xc9, 0x41, 0xdd, +}; +static const unsigned char kat860_nonce[] = {0}; +static const unsigned char kat860_persstr[] = {0}; +static const unsigned char kat860_addin0[] = { + 0xd8, 0x84, 0xd5, 0x90, 0x1e, 0xd1, 0xc6, 0xdc, 0x3f, 0xcd, 0x54, 0xac, + 0xe3, 0xe3, 0x58, 0x57, 0x32, 0x60, 0xd7, 0x33, 0xa6, 0x93, 0x05, 0x66, + 0x39, 0x40, 0x32, 0x8c, 0x45, 0xd3, 0x11, 0xe0, +}; +static const unsigned char kat860_addin1[] = { + 0x11, 0xf0, 0xd7, 0xa4, 0x0b, 0x12, 0x44, 0x18, 0xa5, 0x0e, 0xb5, 0x02, + 0x41, 0x09, 0x5f, 0x0c, 0x6a, 0x89, 0xac, 0xb4, 0xc1, 0x6a, 0x20, 0x57, + 0x19, 0xc5, 0x15, 0x58, 0xde, 0x07, 0x7e, 0x6c, +}; +static const unsigned char kat860_retbits[] = { + 0x35, 0x59, 0xd5, 0xff, 0x99, 0x95, 0xe5, 0x5d, 0x04, 0x7f, 0x43, 0xa6, + 0xb3, 0xa2, 0x97, 0x2b, 0x76, 0x6f, 0xdf, 0xec, 0xbb, 0xa5, 0x7f, 0xc9, + 0x2a, 0xc0, 0x6f, 0xcd, 0x66, 0x72, 0xb9, 0x86, 0x03, 0x19, 0x91, 0x60, + 0x69, 0x8c, 0x04, 0x52, 0x60, 0x85, 0xc0, 0x30, 0x5d, 0xb2, 0x04, 0x11, + 0xac, 0x56, 0x14, 0xa5, 0xeb, 0xc2, 0x74, 0x4c, 0x11, 0xb9, 0x12, 0x1c, + 0xd5, 0x68, 0x45, 0x27, +}; +static const struct drbg_kat_no_reseed kat860_t = { + 4, kat860_entropyin, kat860_nonce, kat860_persstr, + kat860_addin0, kat860_addin1, kat860_retbits +}; +static const struct drbg_kat kat860 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat860_t +}; + +static const unsigned char kat861_entropyin[] = { + 0xe9, 0xe8, 0xdf, 0x90, 0xbf, 0xf8, 0x56, 0xeb, 0x0b, 0x2c, 0xbf, 0x46, + 0x53, 0x91, 0xec, 0x55, 0x4e, 0xf3, 0xef, 0x4e, 0x16, 0xfb, 0xcd, 0xe0, + 0x67, 0xae, 0xf8, 0x38, 0x6e, 0xe7, 0x34, 0x28, +}; +static const unsigned char kat861_nonce[] = {0}; +static const unsigned char kat861_persstr[] = {0}; +static const unsigned char kat861_addin0[] = { + 0x0c, 0x1d, 0xcd, 0x0a, 0x54, 0x71, 0x47, 0x65, 0xab, 0xf5, 0x01, 0x7c, + 0xac, 0xd1, 0xb1, 0x5b, 0x20, 0x9f, 0x2d, 0x6c, 0x19, 0xc7, 0xfc, 0xbf, + 0xf7, 0x22, 0xb7, 0xa5, 0x7f, 0xab, 0x4e, 0x94, +}; +static const unsigned char kat861_addin1[] = { + 0x5b, 0xa7, 0xcf, 0xa9, 0xc3, 0x61, 0x95, 0x65, 0xe7, 0x70, 0xb9, 0x0c, + 0x17, 0xae, 0x60, 0xfe, 0x73, 0x6d, 0xd8, 0x79, 0x22, 0xc2, 0xc6, 0xca, + 0x0d, 0x4c, 0xac, 0x99, 0xc0, 0x82, 0x21, 0x8e, +}; +static const unsigned char kat861_retbits[] = { + 0x80, 0x15, 0x9b, 0xd9, 0xbd, 0x26, 0x97, 0x05, 0xcf, 0xcd, 0xc2, 0x80, + 0xe7, 0x20, 0x02, 0x4f, 0x8a, 0x29, 0x99, 0x83, 0x32, 0x22, 0xac, 0x61, + 0xf8, 0x0f, 0x6c, 0xaf, 0xcd, 0x7f, 0x92, 0x0d, 0xe1, 0x68, 0xfb, 0x95, + 0xcb, 0x89, 0xd0, 0xa8, 0x0a, 0x84, 0x1d, 0xff, 0x92, 0xda, 0x31, 0x66, + 0xcc, 0xb0, 0xf8, 0x6d, 0x7a, 0x67, 0x80, 0x21, 0xd1, 0x1c, 0x0e, 0x99, + 0x91, 0x39, 0x01, 0x7a, +}; +static const struct drbg_kat_no_reseed kat861_t = { + 5, kat861_entropyin, kat861_nonce, kat861_persstr, + kat861_addin0, kat861_addin1, kat861_retbits +}; +static const struct drbg_kat kat861 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat861_t +}; + +static const unsigned char kat862_entropyin[] = { + 0x99, 0xb7, 0x33, 0x81, 0xc4, 0xe5, 0x30, 0xed, 0xcd, 0x22, 0xc7, 0x8d, + 0x69, 0x5e, 0x3d, 0x49, 0xa8, 0x08, 0xb3, 0x12, 0xb7, 0x20, 0x7e, 0xa0, + 0xc5, 0x81, 0x77, 0x1e, 0x14, 0xf1, 0xf0, 0x4f, +}; +static const unsigned char kat862_nonce[] = {0}; +static const unsigned char kat862_persstr[] = {0}; +static const unsigned char kat862_addin0[] = { + 0xd8, 0x65, 0x17, 0x81, 0xef, 0x93, 0x53, 0x37, 0x65, 0x33, 0x15, 0x2c, + 0xdf, 0x05, 0xc6, 0x88, 0x6b, 0x9d, 0xd7, 0xd8, 0x8a, 0xab, 0xa6, 0x69, + 0x71, 0x52, 0x07, 0xe4, 0x8c, 0x12, 0x26, 0x36, +}; +static const unsigned char kat862_addin1[] = { + 0x63, 0xd4, 0x5c, 0x3d, 0xcd, 0xac, 0xc4, 0x7d, 0x7f, 0x54, 0x99, 0x92, + 0xd0, 0xe3, 0x58, 0xaa, 0x96, 0xc5, 0xb7, 0xf2, 0x93, 0xa7, 0x7e, 0x82, + 0xcc, 0xc3, 0xd2, 0xbb, 0xfc, 0x9f, 0x61, 0xda, +}; +static const unsigned char kat862_retbits[] = { + 0xa4, 0xb1, 0xa4, 0xf3, 0x24, 0xe9, 0x1a, 0x41, 0x0a, 0xdd, 0x56, 0xf0, + 0x4d, 0xb8, 0xac, 0xbc, 0xfc, 0xe7, 0xa4, 0x34, 0xb9, 0x50, 0x98, 0xc0, + 0x99, 0x4d, 0x9c, 0xa7, 0xf0, 0x44, 0x09, 0x5c, 0x82, 0xc9, 0x7d, 0xac, + 0xd1, 0x0a, 0xc7, 0xdf, 0x03, 0x2b, 0x6c, 0x46, 0xcd, 0x48, 0xc1, 0x93, + 0x3c, 0xbd, 0x4e, 0x64, 0x5d, 0x6f, 0x0b, 0x2c, 0x54, 0x9d, 0x8f, 0x67, + 0xe7, 0xf8, 0xb6, 0x2c, +}; +static const struct drbg_kat_no_reseed kat862_t = { + 6, kat862_entropyin, kat862_nonce, kat862_persstr, + kat862_addin0, kat862_addin1, kat862_retbits +}; +static const struct drbg_kat kat862 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat862_t +}; + +static const unsigned char kat863_entropyin[] = { + 0x73, 0xed, 0x99, 0x42, 0xec, 0xab, 0xfa, 0x13, 0x2b, 0x22, 0x5d, 0x37, + 0xe9, 0x3c, 0x49, 0xec, 0x74, 0x4d, 0xc1, 0x24, 0x3d, 0x60, 0x68, 0xf4, + 0xbc, 0x53, 0x8d, 0xcc, 0x7e, 0x97, 0x2c, 0x36, +}; +static const unsigned char kat863_nonce[] = {0}; +static const unsigned char kat863_persstr[] = {0}; +static const unsigned char kat863_addin0[] = { + 0x63, 0x45, 0xf9, 0x47, 0x92, 0xf9, 0x0a, 0x0d, 0x78, 0x34, 0x27, 0x9c, + 0xa9, 0xce, 0xc7, 0x5f, 0xc7, 0x82, 0x49, 0xbf, 0xf3, 0xfc, 0xbb, 0xe9, + 0x4e, 0xbb, 0xa8, 0x6a, 0xd7, 0x9b, 0xe0, 0x54, +}; +static const unsigned char kat863_addin1[] = { + 0x6a, 0x81, 0x7e, 0xfb, 0x5c, 0x93, 0x0c, 0x14, 0xed, 0xd9, 0x6d, 0x4c, + 0xe8, 0x8e, 0x86, 0x36, 0xd3, 0x99, 0xc1, 0xd2, 0x97, 0xf3, 0xde, 0x59, + 0x30, 0x25, 0x29, 0x23, 0x02, 0x1e, 0x69, 0x37, +}; +static const unsigned char kat863_retbits[] = { + 0x35, 0x38, 0x21, 0xf8, 0xc8, 0xd4, 0xb6, 0x83, 0xc0, 0x82, 0xcf, 0xf6, + 0x89, 0xc3, 0xa8, 0xf9, 0xc8, 0x1e, 0xb8, 0x9f, 0xa7, 0x01, 0x1b, 0xcb, + 0x81, 0xc1, 0x62, 0x17, 0x26, 0x20, 0x30, 0xe9, 0x34, 0x1e, 0x98, 0x5c, + 0xa1, 0xd4, 0xf6, 0x01, 0x97, 0xe8, 0x66, 0x02, 0x26, 0xa4, 0x75, 0x6f, + 0xd0, 0x62, 0x10, 0x65, 0x5f, 0xf4, 0xe9, 0x8d, 0x7d, 0x0e, 0x70, 0x29, + 0x7b, 0x84, 0x91, 0xe8, +}; +static const struct drbg_kat_no_reseed kat863_t = { + 7, kat863_entropyin, kat863_nonce, kat863_persstr, + kat863_addin0, kat863_addin1, kat863_retbits +}; +static const struct drbg_kat kat863 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat863_t +}; + +static const unsigned char kat864_entropyin[] = { + 0x9b, 0x52, 0xae, 0x68, 0x2c, 0x64, 0x19, 0x1d, 0x58, 0x88, 0x79, 0xee, + 0x9c, 0x73, 0x6a, 0xb2, 0xc2, 0xbc, 0x51, 0x5c, 0xb0, 0x3c, 0xb6, 0xdf, + 0x7b, 0x62, 0x81, 0xa1, 0x25, 0x34, 0xb7, 0xb7, +}; +static const unsigned char kat864_nonce[] = {0}; +static const unsigned char kat864_persstr[] = {0}; +static const unsigned char kat864_addin0[] = { + 0x30, 0xeb, 0xa1, 0x91, 0xb8, 0x53, 0xfb, 0xe8, 0x38, 0xd0, 0x7e, 0x07, + 0x80, 0x5c, 0x0a, 0x17, 0x18, 0xd9, 0xd1, 0x40, 0x98, 0x26, 0x91, 0xd1, + 0xf0, 0x3f, 0x17, 0x9d, 0x59, 0x4c, 0xaa, 0xa7, +}; +static const unsigned char kat864_addin1[] = { + 0xd7, 0x2d, 0x15, 0x68, 0xbf, 0x4f, 0x91, 0x94, 0x63, 0x44, 0x0b, 0xb6, + 0x8e, 0x96, 0x6a, 0x0a, 0x23, 0xbc, 0x44, 0xe9, 0x9d, 0xa9, 0x0f, 0x0e, + 0xb7, 0x5c, 0xec, 0xc2, 0xdf, 0x47, 0x15, 0x31, +}; +static const unsigned char kat864_retbits[] = { + 0xd4, 0x18, 0xa9, 0xed, 0xb9, 0xe6, 0xd1, 0xa1, 0x85, 0xf9, 0xb4, 0x19, + 0xe8, 0x54, 0x8f, 0xa8, 0x49, 0x5e, 0x55, 0x9a, 0xb7, 0x51, 0xc4, 0xb2, + 0x86, 0xfd, 0x8b, 0x2e, 0x7d, 0xb9, 0x39, 0x2d, 0xd1, 0x93, 0x6f, 0x8c, + 0xc1, 0xe7, 0x11, 0xaa, 0x86, 0xdc, 0x83, 0x54, 0xbb, 0x97, 0xcc, 0xfe, + 0x2b, 0xcd, 0x9e, 0xdb, 0xbb, 0x38, 0x3f, 0x1c, 0xab, 0xe5, 0xb4, 0x4a, + 0xa1, 0x4e, 0x2a, 0x7d, +}; +static const struct drbg_kat_no_reseed kat864_t = { + 8, kat864_entropyin, kat864_nonce, kat864_persstr, + kat864_addin0, kat864_addin1, kat864_retbits +}; +static const struct drbg_kat kat864 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat864_t +}; + +static const unsigned char kat865_entropyin[] = { + 0xcd, 0x70, 0x34, 0x83, 0x9b, 0x3e, 0x9f, 0xb2, 0x8b, 0xdb, 0x0c, 0xeb, + 0x99, 0x64, 0xe8, 0x68, 0x54, 0xe4, 0x7c, 0x8c, 0x00, 0xd2, 0x4e, 0x82, + 0x91, 0x5f, 0x80, 0x4d, 0xbb, 0x93, 0x2c, 0xfc, +}; +static const unsigned char kat865_nonce[] = {0}; +static const unsigned char kat865_persstr[] = {0}; +static const unsigned char kat865_addin0[] = { + 0x49, 0xb9, 0x95, 0xf3, 0x95, 0x18, 0x54, 0x72, 0xef, 0x60, 0xde, 0xe3, + 0x27, 0xa6, 0xe7, 0xc6, 0xaf, 0x92, 0xa3, 0x5a, 0x61, 0x14, 0xaa, 0x52, + 0xe3, 0xf7, 0xb2, 0x35, 0xd5, 0x0d, 0x35, 0x4d, +}; +static const unsigned char kat865_addin1[] = { + 0x03, 0xfc, 0x0e, 0x03, 0xae, 0xbd, 0xf5, 0x94, 0x12, 0x8f, 0x35, 0x8d, + 0xbb, 0xd8, 0x46, 0xae, 0x02, 0x38, 0xc4, 0x23, 0x54, 0xf8, 0xd2, 0x60, + 0x1d, 0x52, 0x23, 0x78, 0x06, 0xab, 0x87, 0x2e, +}; +static const unsigned char kat865_retbits[] = { + 0xc4, 0xf3, 0x55, 0x0b, 0x9f, 0xc5, 0x9c, 0x01, 0xc6, 0x51, 0x9b, 0xbc, + 0x8f, 0xb5, 0xef, 0xda, 0x4d, 0xfc, 0x69, 0x89, 0x00, 0xa7, 0x74, 0xb0, + 0x58, 0xdd, 0xa7, 0xd5, 0xe1, 0x30, 0x99, 0xd7, 0x34, 0x8f, 0xa0, 0x78, + 0x37, 0x2a, 0x3b, 0x8c, 0xca, 0xa7, 0x5c, 0xee, 0xfc, 0x4f, 0x46, 0xa2, + 0x63, 0x78, 0xcf, 0x7e, 0x8a, 0x64, 0xef, 0x7f, 0x98, 0xbe, 0x70, 0xdc, + 0x05, 0x40, 0xe5, 0xb7, +}; +static const struct drbg_kat_no_reseed kat865_t = { + 9, kat865_entropyin, kat865_nonce, kat865_persstr, + kat865_addin0, kat865_addin1, kat865_retbits +}; +static const struct drbg_kat kat865 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat865_t +}; + +static const unsigned char kat866_entropyin[] = { + 0x54, 0x62, 0x78, 0xab, 0x02, 0xcb, 0x86, 0x87, 0x01, 0xe0, 0xfd, 0x1f, + 0xf0, 0xcd, 0x90, 0x18, 0x25, 0x96, 0xda, 0x85, 0xe8, 0xd1, 0x47, 0xda, + 0xd0, 0xe7, 0x83, 0x74, 0x65, 0x6c, 0x17, 0x2a, +}; +static const unsigned char kat866_nonce[] = {0}; +static const unsigned char kat866_persstr[] = {0}; +static const unsigned char kat866_addin0[] = { + 0x4c, 0xb5, 0x45, 0x97, 0xdb, 0x1c, 0x8c, 0xd5, 0x24, 0x1a, 0x57, 0x2d, + 0x5d, 0x4a, 0x29, 0xb6, 0x0e, 0x70, 0x0e, 0xce, 0x3a, 0xcf, 0x32, 0x44, + 0x74, 0x87, 0xbe, 0xe5, 0x1d, 0x6c, 0x0f, 0xff, +}; +static const unsigned char kat866_addin1[] = { + 0x28, 0xaa, 0x5b, 0x18, 0x43, 0x63, 0x44, 0x57, 0xb3, 0x87, 0x33, 0xa3, + 0x97, 0x79, 0x78, 0x7d, 0x81, 0x48, 0xe7, 0x59, 0x7d, 0xe0, 0x83, 0x1a, + 0x0c, 0x78, 0x19, 0xfb, 0x23, 0xc2, 0x47, 0xbb, +}; +static const unsigned char kat866_retbits[] = { + 0x12, 0x1b, 0xf6, 0x34, 0x3b, 0x38, 0x7e, 0x49, 0x22, 0xa8, 0x55, 0xd2, + 0x9c, 0x42, 0xb1, 0xf3, 0xb6, 0x5d, 0xef, 0xe5, 0x9e, 0xe9, 0xb7, 0xd9, + 0x3a, 0x60, 0x12, 0xec, 0x8a, 0x97, 0x6f, 0xd7, 0x2f, 0x98, 0x44, 0xfa, + 0xce, 0x7f, 0xdd, 0x25, 0xdb, 0xaa, 0x3e, 0xf6, 0x17, 0x46, 0xc9, 0x4a, + 0x0f, 0x0e, 0xf0, 0x19, 0x5d, 0x5c, 0x20, 0x95, 0x05, 0xee, 0xc7, 0x16, + 0xbe, 0x33, 0x67, 0x1c, +}; +static const struct drbg_kat_no_reseed kat866_t = { + 10, kat866_entropyin, kat866_nonce, kat866_persstr, + kat866_addin0, kat866_addin1, kat866_retbits +}; +static const struct drbg_kat kat866 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat866_t +}; + +static const unsigned char kat867_entropyin[] = { + 0x12, 0xbe, 0x28, 0x86, 0x30, 0x27, 0x64, 0x84, 0x5e, 0x40, 0x1a, 0x63, + 0x8a, 0x73, 0x6d, 0xb7, 0xd8, 0xbc, 0xc3, 0xe4, 0x57, 0xfd, 0x71, 0xe5, + 0xa4, 0x73, 0xc9, 0xa2, 0x4d, 0xf9, 0x04, 0x2c, +}; +static const unsigned char kat867_nonce[] = {0}; +static const unsigned char kat867_persstr[] = {0}; +static const unsigned char kat867_addin0[] = { + 0x15, 0xee, 0x34, 0x16, 0x68, 0x13, 0x92, 0xe7, 0xc5, 0xc9, 0x8e, 0xcf, + 0xc6, 0xef, 0x5b, 0x98, 0x65, 0x8f, 0x8b, 0x0d, 0x98, 0x74, 0x3d, 0x9c, + 0x72, 0xe8, 0x2a, 0x4f, 0x61, 0x14, 0xc8, 0x3a, +}; +static const unsigned char kat867_addin1[] = { + 0x72, 0x64, 0x34, 0xbe, 0x41, 0xc4, 0x09, 0xd1, 0xa2, 0xac, 0x05, 0x3d, + 0x8b, 0x8d, 0x00, 0x9d, 0x0b, 0x97, 0x85, 0xb0, 0xc7, 0xff, 0x15, 0x22, + 0x0e, 0x48, 0x43, 0x6f, 0xf0, 0xa3, 0x9e, 0xe6, +}; +static const unsigned char kat867_retbits[] = { + 0x34, 0xa2, 0x92, 0xfe, 0xe0, 0x5c, 0xac, 0xd7, 0x89, 0x74, 0xb5, 0x73, + 0x62, 0xf5, 0x93, 0x7b, 0x1c, 0xaf, 0x5d, 0x0c, 0xc4, 0xe5, 0x2b, 0xc3, + 0xed, 0x9c, 0x20, 0xa8, 0x13, 0xf6, 0x86, 0xab, 0x74, 0x64, 0x39, 0x2c, + 0x8e, 0xb4, 0x60, 0x76, 0x72, 0xc9, 0x7c, 0x2f, 0x40, 0xfd, 0xf9, 0x19, + 0x39, 0x0b, 0xac, 0xa1, 0xd3, 0x95, 0x67, 0x64, 0x66, 0x81, 0x3c, 0x82, + 0x2c, 0xcd, 0x3f, 0xa1, +}; +static const struct drbg_kat_no_reseed kat867_t = { + 11, kat867_entropyin, kat867_nonce, kat867_persstr, + kat867_addin0, kat867_addin1, kat867_retbits +}; +static const struct drbg_kat kat867 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat867_t +}; + +static const unsigned char kat868_entropyin[] = { + 0x6f, 0x02, 0x1d, 0xc9, 0x32, 0x49, 0xca, 0xb7, 0xdb, 0x93, 0xd5, 0xdd, + 0x24, 0x5a, 0xe9, 0x01, 0xd2, 0xa9, 0x49, 0x7f, 0xc9, 0xc1, 0x52, 0x81, + 0x1a, 0x4a, 0x1a, 0x9e, 0xeb, 0xcc, 0x28, 0xc9, +}; +static const unsigned char kat868_nonce[] = {0}; +static const unsigned char kat868_persstr[] = {0}; +static const unsigned char kat868_addin0[] = { + 0xfa, 0xca, 0xce, 0x92, 0x63, 0xb0, 0xee, 0x3b, 0x22, 0x90, 0x80, 0xf0, + 0x2f, 0xc9, 0x08, 0x3c, 0x2c, 0xfe, 0xf7, 0xb6, 0xe1, 0xe6, 0xd7, 0x64, + 0x82, 0x50, 0x71, 0x50, 0x17, 0x20, 0xdb, 0xe8, +}; +static const unsigned char kat868_addin1[] = { + 0xd2, 0xeb, 0xd0, 0xd8, 0x53, 0x7a, 0xc9, 0xc3, 0x7f, 0x62, 0x08, 0xcb, + 0x20, 0x74, 0xd7, 0xe7, 0x25, 0xa2, 0x12, 0x7d, 0xae, 0x15, 0x04, 0x25, + 0xe7, 0xaa, 0x29, 0xd8, 0xef, 0xb3, 0xcd, 0x05, +}; +static const unsigned char kat868_retbits[] = { + 0xf7, 0x6b, 0xf3, 0xb1, 0x91, 0x42, 0xd8, 0x29, 0x4f, 0xc4, 0x47, 0x64, + 0xb1, 0x8c, 0xe6, 0x92, 0x30, 0xac, 0xa3, 0xa9, 0x6d, 0xee, 0xf4, 0xfc, + 0x20, 0x8e, 0x61, 0x20, 0x5c, 0x5a, 0x67, 0xa4, 0xfc, 0x85, 0x1a, 0x4d, + 0x47, 0x06, 0xc0, 0xf4, 0x02, 0xff, 0xb0, 0xf7, 0xad, 0xbd, 0xe4, 0xd4, + 0x58, 0x48, 0x40, 0x5b, 0x66, 0x2f, 0x45, 0x4e, 0x5f, 0xbc, 0x11, 0xe4, + 0xa3, 0x33, 0x37, 0x35, +}; +static const struct drbg_kat_no_reseed kat868_t = { + 12, kat868_entropyin, kat868_nonce, kat868_persstr, + kat868_addin0, kat868_addin1, kat868_retbits +}; +static const struct drbg_kat kat868 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat868_t +}; + +static const unsigned char kat869_entropyin[] = { + 0xfb, 0x91, 0x31, 0x08, 0x67, 0x43, 0xa2, 0x0e, 0x48, 0x0a, 0x42, 0x60, + 0xe2, 0x2d, 0xdf, 0xb0, 0xed, 0xae, 0xd1, 0x47, 0xab, 0x70, 0x8c, 0x25, + 0x36, 0xc1, 0x7a, 0xcf, 0x1b, 0xd6, 0xeb, 0x1d, +}; +static const unsigned char kat869_nonce[] = {0}; +static const unsigned char kat869_persstr[] = {0}; +static const unsigned char kat869_addin0[] = { + 0x04, 0x11, 0x7f, 0x27, 0xfe, 0xc1, 0xf4, 0x4d, 0x44, 0xd0, 0xb8, 0x6a, + 0x23, 0x18, 0x20, 0xc0, 0x9a, 0x6d, 0xc7, 0xb6, 0x41, 0x81, 0x75, 0x55, + 0x8f, 0xb6, 0xa0, 0x28, 0xf8, 0x35, 0xcb, 0xbb, +}; +static const unsigned char kat869_addin1[] = { + 0x81, 0x31, 0x89, 0x58, 0xf1, 0xd8, 0x05, 0x9f, 0xf7, 0xd3, 0xc5, 0x92, + 0xee, 0x24, 0x90, 0x1c, 0x61, 0x9d, 0x3b, 0x74, 0xd9, 0x6b, 0xaf, 0xc5, + 0x11, 0x75, 0x7a, 0x7b, 0x1b, 0xde, 0x40, 0x5e, +}; +static const unsigned char kat869_retbits[] = { + 0x4b, 0x16, 0x09, 0x41, 0x29, 0xe4, 0x1c, 0xf3, 0x06, 0x1c, 0xcc, 0x8e, + 0x25, 0x7a, 0x83, 0x6c, 0x3c, 0x3d, 0x09, 0x97, 0x21, 0x3c, 0xda, 0xb3, + 0x2a, 0x18, 0x8c, 0x7c, 0x8c, 0x37, 0x58, 0xb4, 0xb9, 0x22, 0x4e, 0x38, + 0x44, 0xa3, 0xa8, 0x85, 0x56, 0xc9, 0xcf, 0xa6, 0x29, 0xe3, 0xce, 0x0b, + 0x0b, 0x43, 0x65, 0x28, 0xb2, 0x6a, 0x1d, 0xd5, 0x81, 0x1f, 0xe1, 0xca, + 0xf8, 0x8b, 0xa0, 0x33, +}; +static const struct drbg_kat_no_reseed kat869_t = { + 13, kat869_entropyin, kat869_nonce, kat869_persstr, + kat869_addin0, kat869_addin1, kat869_retbits +}; +static const struct drbg_kat kat869 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat869_t +}; + +static const unsigned char kat870_entropyin[] = { + 0x73, 0xd9, 0x63, 0x4c, 0xef, 0x19, 0x14, 0x44, 0xbf, 0x3e, 0xd4, 0x98, + 0xc3, 0x34, 0x3e, 0x6a, 0xef, 0x97, 0x88, 0x54, 0x93, 0xe0, 0x80, 0x5e, + 0xd0, 0x11, 0x07, 0xdd, 0xd3, 0xd1, 0x94, 0xb7, +}; +static const unsigned char kat870_nonce[] = {0}; +static const unsigned char kat870_persstr[] = {0}; +static const unsigned char kat870_addin0[] = { + 0xda, 0xcd, 0xc1, 0xa5, 0xc9, 0xb4, 0x21, 0x5d, 0xa6, 0xb1, 0x52, 0x0c, + 0x22, 0x77, 0x24, 0xff, 0xc8, 0x88, 0x94, 0x5a, 0x3c, 0xf1, 0xdb, 0x2d, + 0x2f, 0xf5, 0xc4, 0x82, 0x66, 0x95, 0xaf, 0xd3, +}; +static const unsigned char kat870_addin1[] = { + 0xf2, 0x91, 0xea, 0xc0, 0x29, 0x5f, 0x5e, 0x09, 0x36, 0x54, 0x20, 0x10, + 0xdf, 0x7c, 0xa9, 0xc4, 0x17, 0xcd, 0x78, 0xf7, 0xa1, 0x09, 0x65, 0x5e, + 0x90, 0x50, 0xfd, 0x50, 0x2a, 0xd9, 0x1d, 0x4c, +}; +static const unsigned char kat870_retbits[] = { + 0x70, 0xb8, 0x81, 0xac, 0xd4, 0x34, 0xf9, 0x0d, 0xa8, 0x78, 0x8b, 0xfe, + 0x77, 0x22, 0x61, 0x32, 0xc8, 0xa3, 0xf2, 0x54, 0x42, 0x93, 0xb0, 0xef, + 0x74, 0x08, 0x55, 0x95, 0x75, 0xff, 0x0e, 0x52, 0xa1, 0x7a, 0xff, 0x11, + 0xb9, 0x60, 0x1a, 0x47, 0x65, 0xe2, 0xab, 0x0c, 0xc9, 0x0f, 0x19, 0xf6, + 0x9f, 0xb4, 0x48, 0x55, 0x54, 0xec, 0x0b, 0x17, 0xce, 0xab, 0xde, 0x96, + 0x0a, 0x56, 0x65, 0x5d, +}; +static const struct drbg_kat_no_reseed kat870_t = { + 14, kat870_entropyin, kat870_nonce, kat870_persstr, + kat870_addin0, kat870_addin1, kat870_retbits +}; +static const struct drbg_kat kat870 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat870_t +}; + +static const unsigned char kat871_entropyin[] = { + 0x52, 0x54, 0x4b, 0xe6, 0xee, 0xbf, 0xd2, 0x27, 0x80, 0x9c, 0xde, 0x95, + 0xf1, 0x9a, 0x06, 0x2b, 0xdf, 0xf8, 0xad, 0xf9, 0x4a, 0xfa, 0xdf, 0xb6, + 0x01, 0x2c, 0x8c, 0x3d, 0x99, 0xd1, 0x7b, 0x8b, +}; +static const unsigned char kat871_nonce[] = {0}; +static const unsigned char kat871_persstr[] = { + 0xb4, 0xad, 0x54, 0x42, 0xe7, 0xbb, 0xba, 0x49, 0x9c, 0x36, 0xfa, 0x52, + 0x05, 0x03, 0x79, 0x5e, 0x7f, 0x2a, 0x31, 0xbe, 0x8d, 0x95, 0x94, 0x3e, + 0xb3, 0x4d, 0xb5, 0x38, 0xd6, 0x67, 0x23, 0xee, +}; +static const unsigned char kat871_addin0[] = {0}; +static const unsigned char kat871_addin1[] = {0}; +static const unsigned char kat871_retbits[] = { + 0x91, 0xcf, 0x40, 0x38, 0x78, 0xec, 0xca, 0x1f, 0xd4, 0x5d, 0x31, 0xdc, + 0x67, 0x63, 0x02, 0xe0, 0x2e, 0x92, 0xd4, 0x47, 0x10, 0xbf, 0x92, 0x00, + 0x49, 0x2a, 0xee, 0x1d, 0xe6, 0xd1, 0xb6, 0x4f, 0x34, 0x2c, 0x1a, 0xd8, + 0x07, 0xc8, 0x45, 0xb5, 0x39, 0x65, 0x2c, 0xab, 0xe0, 0x34, 0xb6, 0x9f, + 0x2e, 0x84, 0xb4, 0x22, 0x0c, 0xf7, 0xcc, 0x1b, 0xa6, 0xee, 0xdd, 0xf8, + 0x6d, 0x8f, 0x3d, 0x99, +}; +static const struct drbg_kat_no_reseed kat871_t = { + 0, kat871_entropyin, kat871_nonce, kat871_persstr, + kat871_addin0, kat871_addin1, kat871_retbits +}; +static const struct drbg_kat kat871 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat871_t +}; + +static const unsigned char kat872_entropyin[] = { + 0x25, 0xf5, 0xec, 0x23, 0x69, 0x5d, 0xb8, 0x15, 0x13, 0x14, 0xd7, 0x9d, + 0x5f, 0x8d, 0x3a, 0x6d, 0x2f, 0x1c, 0xf7, 0x44, 0xa0, 0x2c, 0xff, 0x05, + 0x8a, 0x31, 0x09, 0x3a, 0xa2, 0x95, 0x0d, 0x5e, +}; +static const unsigned char kat872_nonce[] = {0}; +static const unsigned char kat872_persstr[] = { + 0x6b, 0xc7, 0x75, 0x68, 0x17, 0x6a, 0xd5, 0x9c, 0x72, 0xcb, 0x06, 0x4e, + 0x81, 0xc8, 0x0f, 0x8f, 0xf3, 0xbe, 0x2d, 0x4e, 0x2e, 0x1a, 0x46, 0x7d, + 0x60, 0x03, 0x1c, 0x6c, 0x19, 0x05, 0xcd, 0xc4, +}; +static const unsigned char kat872_addin0[] = {0}; +static const unsigned char kat872_addin1[] = {0}; +static const unsigned char kat872_retbits[] = { + 0x8a, 0xd6, 0x7e, 0x6d, 0xee, 0x16, 0x8d, 0xa8, 0x30, 0x27, 0x0c, 0x84, + 0xfe, 0x6f, 0x54, 0xf2, 0x85, 0x27, 0x06, 0x91, 0xa9, 0x82, 0xaa, 0x32, + 0xf0, 0x40, 0xba, 0xf4, 0x3d, 0xea, 0x48, 0x23, 0x87, 0x3a, 0x08, 0xa0, + 0xb3, 0xbe, 0xe2, 0x78, 0x4d, 0xb0, 0xf9, 0x38, 0x5c, 0xd8, 0x46, 0xde, + 0x32, 0xb4, 0xf4, 0x17, 0xae, 0xb2, 0x3e, 0xfb, 0x85, 0x51, 0xdd, 0xf4, + 0xac, 0x1c, 0xff, 0x6a, +}; +static const struct drbg_kat_no_reseed kat872_t = { + 1, kat872_entropyin, kat872_nonce, kat872_persstr, + kat872_addin0, kat872_addin1, kat872_retbits +}; +static const struct drbg_kat kat872 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat872_t +}; + +static const unsigned char kat873_entropyin[] = { + 0xae, 0xc2, 0xcd, 0x6f, 0x65, 0x78, 0x1d, 0x4e, 0x11, 0x68, 0xba, 0x57, + 0x19, 0x12, 0x80, 0x09, 0x8c, 0x39, 0xe3, 0x48, 0xaf, 0x42, 0xb3, 0xf4, + 0x5a, 0x79, 0x90, 0x3c, 0x29, 0xde, 0x70, 0xb3, +}; +static const unsigned char kat873_nonce[] = {0}; +static const unsigned char kat873_persstr[] = { + 0xc7, 0x22, 0xc7, 0xd8, 0xc1, 0xfa, 0xd0, 0xd4, 0xff, 0xeb, 0x4f, 0xfc, + 0x0c, 0x0f, 0xf0, 0xfb, 0x5a, 0x98, 0xdf, 0x29, 0x5e, 0x32, 0x43, 0x70, + 0x7a, 0xce, 0x3c, 0x97, 0x48, 0x3c, 0x4c, 0x17, +}; +static const unsigned char kat873_addin0[] = {0}; +static const unsigned char kat873_addin1[] = {0}; +static const unsigned char kat873_retbits[] = { + 0xa8, 0xe1, 0xfd, 0x99, 0xf1, 0x8a, 0x3b, 0x31, 0x32, 0x25, 0xc9, 0xf6, + 0xaf, 0x0c, 0xe0, 0x32, 0x6a, 0x90, 0x71, 0x44, 0xd0, 0x91, 0xb4, 0xdf, + 0x1b, 0xf8, 0x44, 0x25, 0x66, 0x58, 0x70, 0xa8, 0x08, 0x01, 0xb0, 0x7f, + 0xf7, 0x4c, 0x0f, 0x74, 0x98, 0xf3, 0x7d, 0xcd, 0x34, 0x23, 0x20, 0x70, + 0x73, 0x4f, 0x76, 0x0e, 0xb1, 0x9c, 0x96, 0x61, 0x40, 0xe3, 0x56, 0x5a, + 0xcc, 0x7c, 0x9c, 0x32, +}; +static const struct drbg_kat_no_reseed kat873_t = { + 2, kat873_entropyin, kat873_nonce, kat873_persstr, + kat873_addin0, kat873_addin1, kat873_retbits +}; +static const struct drbg_kat kat873 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat873_t +}; + +static const unsigned char kat874_entropyin[] = { + 0x30, 0xe4, 0xa1, 0x76, 0x5b, 0xe1, 0x24, 0x9e, 0xea, 0x46, 0xf2, 0x98, + 0xa6, 0x7c, 0x27, 0x1c, 0x2b, 0x34, 0xc6, 0xb5, 0xb7, 0xa5, 0xfb, 0xe9, + 0x74, 0x0f, 0xc3, 0x72, 0x9a, 0x80, 0x75, 0x8a, +}; +static const unsigned char kat874_nonce[] = {0}; +static const unsigned char kat874_persstr[] = { + 0x18, 0x35, 0xea, 0xd1, 0xd8, 0x6c, 0x79, 0xc3, 0x36, 0x24, 0xfc, 0xae, + 0x73, 0xdb, 0x91, 0xe8, 0x58, 0x31, 0xc1, 0x88, 0x2d, 0x72, 0x8a, 0x3c, + 0x19, 0xa0, 0x5f, 0x90, 0x53, 0x3e, 0xbe, 0x8b, +}; +static const unsigned char kat874_addin0[] = {0}; +static const unsigned char kat874_addin1[] = {0}; +static const unsigned char kat874_retbits[] = { + 0x86, 0x69, 0xf2, 0xc2, 0x59, 0x65, 0x94, 0x8b, 0x61, 0xf6, 0x38, 0x8a, + 0x0f, 0x0e, 0x0c, 0xb8, 0xb2, 0x86, 0xef, 0x44, 0x42, 0x01, 0xd3, 0xb9, + 0x8d, 0x68, 0x45, 0xa7, 0xe1, 0x4d, 0x14, 0x5b, 0xde, 0x1d, 0x01, 0x42, + 0x0e, 0x59, 0x0d, 0xff, 0xb6, 0x45, 0xe6, 0xc9, 0x0e, 0x30, 0x56, 0x86, + 0xcf, 0x9b, 0x68, 0x5c, 0xa9, 0x5c, 0x97, 0xeb, 0xff, 0x38, 0x64, 0xc6, + 0x2a, 0x00, 0x4b, 0xd6, +}; +static const struct drbg_kat_no_reseed kat874_t = { + 3, kat874_entropyin, kat874_nonce, kat874_persstr, + kat874_addin0, kat874_addin1, kat874_retbits +}; +static const struct drbg_kat kat874 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat874_t +}; + +static const unsigned char kat875_entropyin[] = { + 0xce, 0x80, 0xf4, 0x9a, 0x95, 0x12, 0xb7, 0x64, 0x77, 0xbd, 0x40, 0xac, + 0xf3, 0x20, 0xd1, 0xcc, 0xe7, 0x42, 0x56, 0x59, 0x04, 0xef, 0x45, 0xc8, + 0x01, 0xd5, 0xbb, 0xd6, 0x20, 0x6d, 0xd2, 0x0f, +}; +static const unsigned char kat875_nonce[] = {0}; +static const unsigned char kat875_persstr[] = { + 0xd2, 0x12, 0x10, 0x1d, 0x3f, 0x55, 0x8c, 0x33, 0x91, 0x5a, 0xca, 0x3f, + 0x7c, 0xa3, 0x2b, 0x65, 0xd8, 0xe6, 0x74, 0xc1, 0xa8, 0xc8, 0x80, 0x45, + 0x7b, 0xfb, 0xea, 0xe5, 0x9b, 0x87, 0x67, 0x78, +}; +static const unsigned char kat875_addin0[] = {0}; +static const unsigned char kat875_addin1[] = {0}; +static const unsigned char kat875_retbits[] = { + 0x5f, 0xed, 0x82, 0xf1, 0xd1, 0x0b, 0x8c, 0xe1, 0xdf, 0xb5, 0x97, 0xc9, + 0x05, 0xe4, 0x11, 0xe8, 0x1f, 0xb9, 0x62, 0x63, 0x84, 0x22, 0x99, 0xa1, + 0x9a, 0x0a, 0xfc, 0xaa, 0xaf, 0x6f, 0x40, 0xc1, 0x18, 0xad, 0x0a, 0x3f, + 0x2b, 0x5f, 0xdc, 0xa0, 0x79, 0x53, 0x8c, 0x35, 0x41, 0x62, 0xae, 0xde, + 0x2a, 0x49, 0xd5, 0x29, 0xd3, 0x70, 0xb6, 0xad, 0x1c, 0x56, 0x18, 0xd3, + 0xf8, 0x07, 0xb3, 0x2c, +}; +static const struct drbg_kat_no_reseed kat875_t = { + 4, kat875_entropyin, kat875_nonce, kat875_persstr, + kat875_addin0, kat875_addin1, kat875_retbits +}; +static const struct drbg_kat kat875 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat875_t +}; + +static const unsigned char kat876_entropyin[] = { + 0xcf, 0x9d, 0x04, 0x88, 0x7a, 0x64, 0xdf, 0x7e, 0x2a, 0x4d, 0x10, 0x7d, + 0x48, 0x7d, 0x3b, 0x14, 0x6e, 0xe8, 0x49, 0x38, 0x8f, 0x96, 0x0d, 0x0a, + 0x14, 0xef, 0x2a, 0x5e, 0x26, 0xa3, 0x2b, 0x92, +}; +static const unsigned char kat876_nonce[] = {0}; +static const unsigned char kat876_persstr[] = { + 0x39, 0x50, 0xf0, 0x9d, 0x6b, 0x56, 0x4c, 0xa2, 0x49, 0x6d, 0x74, 0x0a, + 0x92, 0xc2, 0x3f, 0xe0, 0x9f, 0xf8, 0x75, 0xce, 0xae, 0xa5, 0x8a, 0x3e, + 0xc6, 0x8d, 0x12, 0xbc, 0x84, 0x94, 0x7d, 0x74, +}; +static const unsigned char kat876_addin0[] = {0}; +static const unsigned char kat876_addin1[] = {0}; +static const unsigned char kat876_retbits[] = { + 0x8c, 0xaf, 0x1a, 0x41, 0xdf, 0x0e, 0xd4, 0x8e, 0x05, 0xbd, 0x57, 0xd7, + 0xe8, 0xb1, 0xd7, 0x84, 0xfe, 0x4c, 0x55, 0xc7, 0xc0, 0x8e, 0x0c, 0x2f, + 0xeb, 0x56, 0xda, 0x99, 0xcb, 0xb6, 0x0b, 0x82, 0x42, 0xdc, 0xbb, 0x2e, + 0x23, 0x6d, 0x48, 0x13, 0x28, 0xc0, 0x35, 0x2e, 0x3c, 0x20, 0x60, 0x68, + 0x80, 0xe1, 0xf0, 0x9b, 0x68, 0x47, 0x03, 0x98, 0x4b, 0x33, 0x2b, 0x7c, + 0x59, 0xbd, 0x86, 0x67, +}; +static const struct drbg_kat_no_reseed kat876_t = { + 5, kat876_entropyin, kat876_nonce, kat876_persstr, + kat876_addin0, kat876_addin1, kat876_retbits +}; +static const struct drbg_kat kat876 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat876_t +}; + +static const unsigned char kat877_entropyin[] = { + 0xc6, 0x1f, 0x9c, 0xfd, 0xc7, 0xea, 0x70, 0xe4, 0x03, 0xd4, 0x97, 0x2a, + 0x23, 0x43, 0x78, 0xbb, 0x6a, 0xc9, 0x9c, 0x13, 0xfe, 0xe4, 0x35, 0x9b, + 0xa8, 0x70, 0xfa, 0xe2, 0x9d, 0x22, 0xa8, 0xb8, +}; +static const unsigned char kat877_nonce[] = {0}; +static const unsigned char kat877_persstr[] = { + 0x86, 0xee, 0xb3, 0x3b, 0x00, 0x86, 0x77, 0x0f, 0x72, 0xee, 0x97, 0x1b, + 0x8e, 0x84, 0xda, 0x92, 0xce, 0x90, 0x97, 0x4e, 0x37, 0x42, 0x63, 0x1a, + 0x0a, 0x21, 0x95, 0xb8, 0x87, 0x66, 0xa5, 0x33, +}; +static const unsigned char kat877_addin0[] = {0}; +static const unsigned char kat877_addin1[] = {0}; +static const unsigned char kat877_retbits[] = { + 0x76, 0x00, 0x7d, 0x13, 0x43, 0x06, 0x42, 0x5f, 0x4d, 0x1b, 0x1f, 0xc8, + 0x1c, 0x01, 0x4b, 0x6f, 0x69, 0x71, 0x89, 0x18, 0x57, 0x69, 0x6e, 0x7c, + 0x7e, 0xa1, 0xf8, 0x73, 0x14, 0x07, 0x55, 0x0a, 0x2d, 0x88, 0x64, 0x46, + 0x36, 0x9f, 0x70, 0x3f, 0x97, 0xba, 0x3d, 0x1a, 0x3a, 0x86, 0x51, 0x3e, + 0x6e, 0x2a, 0xf4, 0x06, 0x86, 0x9c, 0xe7, 0x7c, 0x16, 0x96, 0x85, 0x55, + 0x06, 0x40, 0xe4, 0x4d, +}; +static const struct drbg_kat_no_reseed kat877_t = { + 6, kat877_entropyin, kat877_nonce, kat877_persstr, + kat877_addin0, kat877_addin1, kat877_retbits +}; +static const struct drbg_kat kat877 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat877_t +}; + +static const unsigned char kat878_entropyin[] = { + 0x05, 0x41, 0xd6, 0xf9, 0x91, 0x66, 0x87, 0x7f, 0x14, 0xe2, 0xec, 0x40, + 0xd3, 0x7d, 0xcd, 0x69, 0x3a, 0x53, 0x9f, 0xee, 0x18, 0x75, 0x2d, 0xcc, + 0x16, 0x68, 0x56, 0x94, 0xef, 0x86, 0x53, 0xa7, +}; +static const unsigned char kat878_nonce[] = {0}; +static const unsigned char kat878_persstr[] = { + 0xc2, 0xb8, 0x91, 0xc8, 0xe8, 0xf8, 0x5f, 0x13, 0xb0, 0xf8, 0x20, 0x68, + 0x20, 0x19, 0x45, 0xbd, 0x6f, 0xec, 0x9d, 0x10, 0x2b, 0x8e, 0x20, 0xa5, + 0xbc, 0xa1, 0x00, 0xdd, 0x9b, 0x1c, 0x25, 0x7d, +}; +static const unsigned char kat878_addin0[] = {0}; +static const unsigned char kat878_addin1[] = {0}; +static const unsigned char kat878_retbits[] = { + 0x47, 0xeb, 0x4f, 0x0f, 0x7d, 0x57, 0xe0, 0xd3, 0x60, 0xfe, 0x51, 0xd6, + 0xb2, 0xaa, 0x54, 0xb6, 0x2f, 0x05, 0xcd, 0xd6, 0x2a, 0x78, 0x9c, 0xd6, + 0x39, 0xf6, 0x3d, 0x90, 0xb5, 0xb5, 0xc5, 0xcc, 0x1b, 0xaf, 0xbe, 0x06, + 0x16, 0x3b, 0x84, 0x42, 0x30, 0xa9, 0xf5, 0x28, 0x75, 0xeb, 0xdc, 0x34, + 0x2f, 0x84, 0x14, 0x9d, 0x80, 0xd4, 0x81, 0x89, 0x2f, 0x6e, 0x31, 0x62, + 0x21, 0x04, 0x4d, 0x9b, +}; +static const struct drbg_kat_no_reseed kat878_t = { + 7, kat878_entropyin, kat878_nonce, kat878_persstr, + kat878_addin0, kat878_addin1, kat878_retbits +}; +static const struct drbg_kat kat878 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat878_t +}; + +static const unsigned char kat879_entropyin[] = { + 0x07, 0x43, 0x67, 0xca, 0x90, 0xc0, 0x4e, 0xe7, 0x88, 0x06, 0x18, 0x68, + 0x3d, 0x02, 0x01, 0x7f, 0xe5, 0x82, 0x90, 0x34, 0xed, 0xf5, 0xef, 0xb8, + 0x0d, 0x85, 0xd2, 0x37, 0x31, 0xec, 0x16, 0x7a, +}; +static const unsigned char kat879_nonce[] = {0}; +static const unsigned char kat879_persstr[] = { + 0x21, 0x67, 0xff, 0xee, 0x68, 0x63, 0xe6, 0xe9, 0xa8, 0xd7, 0x70, 0x3b, + 0x4e, 0x92, 0xee, 0xe3, 0x1a, 0x73, 0x66, 0x09, 0xd9, 0x2f, 0x90, 0xb9, + 0xe3, 0xdf, 0xf4, 0x55, 0x6e, 0x12, 0xb7, 0x7b, +}; +static const unsigned char kat879_addin0[] = {0}; +static const unsigned char kat879_addin1[] = {0}; +static const unsigned char kat879_retbits[] = { + 0x8e, 0xb4, 0xe9, 0x30, 0x79, 0x96, 0xa6, 0xd1, 0x7e, 0x91, 0x37, 0xa1, + 0xab, 0xa5, 0x2c, 0x51, 0x8a, 0xa5, 0x60, 0xd5, 0x93, 0x8d, 0x9c, 0xf5, + 0x7f, 0x2f, 0x20, 0x09, 0xa0, 0x7c, 0x82, 0xed, 0x54, 0x0d, 0x1c, 0xb4, + 0x0b, 0x70, 0x97, 0xf7, 0x7d, 0x6d, 0xd2, 0xe4, 0x90, 0x08, 0xdf, 0x8c, + 0x98, 0x97, 0x9c, 0xe3, 0x7e, 0xd3, 0xf7, 0x63, 0xc3, 0x07, 0xe2, 0xd7, + 0x9c, 0x7a, 0xe6, 0x16, +}; +static const struct drbg_kat_no_reseed kat879_t = { + 8, kat879_entropyin, kat879_nonce, kat879_persstr, + kat879_addin0, kat879_addin1, kat879_retbits +}; +static const struct drbg_kat kat879 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat879_t +}; + +static const unsigned char kat880_entropyin[] = { + 0x4f, 0x68, 0xa0, 0xa4, 0xac, 0xa7, 0x11, 0x55, 0x0d, 0x02, 0xcf, 0xef, + 0x7b, 0xaf, 0x55, 0x5e, 0x45, 0x2a, 0x10, 0xcc, 0xb7, 0xe6, 0x32, 0x9c, + 0xed, 0x3a, 0xff, 0x01, 0x96, 0x34, 0xe4, 0x15, +}; +static const unsigned char kat880_nonce[] = {0}; +static const unsigned char kat880_persstr[] = { + 0x77, 0xe2, 0xd6, 0x22, 0x99, 0x68, 0xc8, 0xa1, 0x6a, 0xc9, 0xbb, 0x1e, + 0xf0, 0x42, 0x0e, 0xb0, 0x84, 0xd9, 0xfc, 0xd0, 0x10, 0x89, 0x2a, 0xcc, + 0x79, 0xba, 0xab, 0x89, 0x9d, 0x19, 0xce, 0x2b, +}; +static const unsigned char kat880_addin0[] = {0}; +static const unsigned char kat880_addin1[] = {0}; +static const unsigned char kat880_retbits[] = { + 0x4d, 0xce, 0x9d, 0xc3, 0xb2, 0x02, 0x05, 0x95, 0xad, 0x97, 0x23, 0x14, + 0xa1, 0x19, 0x46, 0x75, 0xca, 0xa7, 0x0c, 0xcb, 0xee, 0xb0, 0x23, 0xaa, + 0xda, 0x1b, 0xd9, 0x91, 0xaa, 0xa9, 0x66, 0xb4, 0xef, 0x5e, 0x0d, 0xaf, + 0x46, 0xca, 0xe5, 0x16, 0x53, 0x7b, 0x35, 0x18, 0x1e, 0x66, 0x84, 0xeb, + 0x0d, 0x73, 0x1b, 0x91, 0x9e, 0x14, 0x70, 0x3f, 0x12, 0x19, 0x60, 0x35, + 0x2d, 0xbd, 0xfe, 0x78, +}; +static const struct drbg_kat_no_reseed kat880_t = { + 9, kat880_entropyin, kat880_nonce, kat880_persstr, + kat880_addin0, kat880_addin1, kat880_retbits +}; +static const struct drbg_kat kat880 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat880_t +}; + +static const unsigned char kat881_entropyin[] = { + 0xc2, 0xd0, 0x01, 0x2e, 0xdd, 0xe1, 0x41, 0xae, 0xa2, 0xe9, 0x45, 0x4c, + 0xa0, 0x4d, 0x5c, 0xdb, 0xd8, 0xa2, 0x93, 0xaf, 0xf9, 0x6c, 0xde, 0x59, + 0xe4, 0x0d, 0xe0, 0x68, 0xf9, 0xda, 0xb8, 0xf9, +}; +static const unsigned char kat881_nonce[] = {0}; +static const unsigned char kat881_persstr[] = { + 0xd8, 0x0e, 0x1d, 0xdb, 0x2e, 0x39, 0x0b, 0xac, 0x90, 0x08, 0xf1, 0xf4, + 0xcf, 0xa1, 0xd5, 0xcf, 0x13, 0xa9, 0x41, 0xcb, 0x46, 0x69, 0xeb, 0x6a, + 0x9b, 0x1d, 0xd2, 0x33, 0x58, 0x39, 0x02, 0x86, +}; +static const unsigned char kat881_addin0[] = {0}; +static const unsigned char kat881_addin1[] = {0}; +static const unsigned char kat881_retbits[] = { + 0x5d, 0x40, 0x3a, 0x36, 0xe5, 0xee, 0xa6, 0x06, 0x7c, 0x6b, 0x28, 0xb1, + 0xcb, 0xc4, 0x8e, 0x9d, 0xad, 0x76, 0xc6, 0x6f, 0x6d, 0x14, 0xba, 0xd9, + 0xc6, 0x86, 0x11, 0xfe, 0xf9, 0x77, 0x58, 0xec, 0x6f, 0x5c, 0x79, 0x87, + 0x60, 0xe6, 0x71, 0x0d, 0x8b, 0xea, 0x3c, 0x8d, 0xd2, 0x04, 0x5c, 0xa8, + 0x92, 0xfa, 0x01, 0x5e, 0x39, 0xe9, 0x38, 0x5d, 0x29, 0xbb, 0xa9, 0x08, + 0xd7, 0x00, 0x5a, 0x6c, +}; +static const struct drbg_kat_no_reseed kat881_t = { + 10, kat881_entropyin, kat881_nonce, kat881_persstr, + kat881_addin0, kat881_addin1, kat881_retbits +}; +static const struct drbg_kat kat881 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat881_t +}; + +static const unsigned char kat882_entropyin[] = { + 0x10, 0x33, 0x3b, 0xc1, 0x06, 0xe9, 0xee, 0xa9, 0x36, 0xab, 0x55, 0xe3, + 0x4c, 0x5f, 0x28, 0x33, 0xad, 0x23, 0x95, 0xc4, 0x66, 0x12, 0x5b, 0xeb, + 0x40, 0x00, 0xd4, 0x2b, 0x1c, 0x0a, 0x80, 0xd3, +}; +static const unsigned char kat882_nonce[] = {0}; +static const unsigned char kat882_persstr[] = { + 0xa1, 0xa7, 0x77, 0x5e, 0xf0, 0xff, 0x03, 0xd7, 0xad, 0xab, 0x74, 0xb1, + 0xb8, 0xf0, 0x5b, 0xf3, 0xd7, 0xb6, 0x2e, 0xda, 0x1d, 0x29, 0x68, 0x5e, + 0x86, 0x1c, 0x5e, 0x28, 0xf1, 0x6d, 0x91, 0x48, +}; +static const unsigned char kat882_addin0[] = {0}; +static const unsigned char kat882_addin1[] = {0}; +static const unsigned char kat882_retbits[] = { + 0xd1, 0x22, 0x39, 0xdf, 0x3f, 0x0a, 0x25, 0xe3, 0x84, 0xba, 0x01, 0xe9, + 0x2e, 0xf4, 0x84, 0x02, 0x72, 0xcb, 0x82, 0x57, 0x9c, 0xe6, 0xe5, 0xc1, + 0x12, 0x5b, 0xa1, 0x91, 0xf2, 0xba, 0xe8, 0xea, 0x86, 0x38, 0xd4, 0xfe, + 0x02, 0x0c, 0x20, 0xe2, 0x36, 0xda, 0x8d, 0x6a, 0x83, 0x0c, 0xcd, 0xb8, + 0x4e, 0x53, 0x1a, 0x27, 0xf8, 0xcf, 0x9f, 0x16, 0x75, 0xa6, 0x0e, 0x95, + 0x7a, 0x15, 0xf7, 0xa4, +}; +static const struct drbg_kat_no_reseed kat882_t = { + 11, kat882_entropyin, kat882_nonce, kat882_persstr, + kat882_addin0, kat882_addin1, kat882_retbits +}; +static const struct drbg_kat kat882 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat882_t +}; + +static const unsigned char kat883_entropyin[] = { + 0x3d, 0x4e, 0x96, 0x66, 0x72, 0x3c, 0x05, 0xdd, 0xd2, 0xc1, 0x3a, 0xaa, + 0x26, 0xda, 0xdb, 0x43, 0xcb, 0xc1, 0x88, 0xb0, 0xc2, 0x05, 0x7c, 0xeb, + 0x1f, 0x0a, 0xc7, 0x8b, 0xc8, 0x57, 0x5c, 0x9e, +}; +static const unsigned char kat883_nonce[] = {0}; +static const unsigned char kat883_persstr[] = { + 0xdb, 0x9e, 0x87, 0x0d, 0x9c, 0xe2, 0xba, 0x3c, 0x7b, 0x26, 0x1f, 0x7e, + 0xbe, 0x29, 0x48, 0x2b, 0x0f, 0x12, 0xeb, 0xee, 0xea, 0xe3, 0xf6, 0xfe, + 0xce, 0xe4, 0xc0, 0x49, 0x0c, 0x05, 0xe3, 0xeb, +}; +static const unsigned char kat883_addin0[] = {0}; +static const unsigned char kat883_addin1[] = {0}; +static const unsigned char kat883_retbits[] = { + 0xf8, 0x66, 0x42, 0xda, 0xde, 0x14, 0x93, 0xc2, 0x89, 0xc1, 0x6a, 0x21, + 0x0c, 0xdf, 0xa7, 0x23, 0x98, 0x8c, 0x72, 0x00, 0xce, 0xbb, 0x36, 0x11, + 0x61, 0x6e, 0xa8, 0xa6, 0x36, 0x75, 0x57, 0x6c, 0x64, 0xf6, 0xf4, 0xa9, + 0x95, 0xca, 0x22, 0x0f, 0x85, 0x6e, 0x72, 0x5f, 0x30, 0x23, 0xd3, 0xae, + 0xce, 0x61, 0xf2, 0x37, 0x54, 0xf0, 0x58, 0x5d, 0xdd, 0x1e, 0x03, 0x31, + 0x1c, 0xf5, 0xcb, 0x16, +}; +static const struct drbg_kat_no_reseed kat883_t = { + 12, kat883_entropyin, kat883_nonce, kat883_persstr, + kat883_addin0, kat883_addin1, kat883_retbits +}; +static const struct drbg_kat kat883 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat883_t +}; + +static const unsigned char kat884_entropyin[] = { + 0xd9, 0x5f, 0x81, 0xf1, 0x98, 0xd9, 0x73, 0x57, 0x7f, 0x90, 0x2d, 0xca, + 0xf7, 0x07, 0xd9, 0x3f, 0x5e, 0x9e, 0x0f, 0x4d, 0xa5, 0x0f, 0x48, 0xd3, + 0xa1, 0xa2, 0xb6, 0xa0, 0x16, 0x66, 0x41, 0x60, +}; +static const unsigned char kat884_nonce[] = {0}; +static const unsigned char kat884_persstr[] = { + 0xc5, 0xe4, 0x22, 0x56, 0xb2, 0xd0, 0x23, 0x9d, 0x20, 0x40, 0x93, 0xca, + 0x5f, 0x99, 0xd1, 0x88, 0x0c, 0xeb, 0xc9, 0x6b, 0x67, 0x07, 0xb6, 0xc2, + 0x09, 0xea, 0x2d, 0xa0, 0xd2, 0x6a, 0x41, 0x1e, +}; +static const unsigned char kat884_addin0[] = {0}; +static const unsigned char kat884_addin1[] = {0}; +static const unsigned char kat884_retbits[] = { + 0xc4, 0x35, 0x44, 0xc9, 0x52, 0x28, 0xcb, 0x76, 0xd7, 0xc5, 0xa4, 0x99, + 0x37, 0xfe, 0x69, 0x38, 0xd2, 0x20, 0x45, 0x80, 0x04, 0x77, 0x9b, 0x02, + 0xcb, 0x7a, 0xa2, 0x8f, 0x8f, 0xb0, 0xc7, 0x95, 0x11, 0x5e, 0x94, 0x2a, + 0x65, 0x78, 0xdd, 0xc0, 0xb5, 0x67, 0x9c, 0x0c, 0x9f, 0x54, 0x47, 0x8b, + 0x8a, 0x33, 0x53, 0xeb, 0x39, 0x0e, 0x31, 0x77, 0x4e, 0xab, 0xb9, 0xcc, + 0x6b, 0x80, 0x33, 0x4d, +}; +static const struct drbg_kat_no_reseed kat884_t = { + 13, kat884_entropyin, kat884_nonce, kat884_persstr, + kat884_addin0, kat884_addin1, kat884_retbits +}; +static const struct drbg_kat kat884 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat884_t +}; + +static const unsigned char kat885_entropyin[] = { + 0x0c, 0x45, 0x64, 0xba, 0x25, 0x44, 0x55, 0xb6, 0x55, 0x7a, 0xec, 0x1c, + 0xfe, 0xe2, 0xb2, 0xb7, 0x26, 0xd2, 0xc4, 0xf4, 0x53, 0x79, 0x26, 0x7f, + 0x0e, 0x27, 0xd1, 0x1c, 0x6f, 0x1e, 0xdc, 0x7f, +}; +static const unsigned char kat885_nonce[] = {0}; +static const unsigned char kat885_persstr[] = { + 0x46, 0xae, 0xfb, 0x02, 0x4c, 0x6a, 0xcd, 0xc9, 0x29, 0x7d, 0x50, 0x19, + 0x10, 0x93, 0x10, 0xde, 0x55, 0x8f, 0x6a, 0xfc, 0xca, 0x73, 0x0c, 0x84, + 0x14, 0xc5, 0x4f, 0x4e, 0x57, 0x4f, 0xab, 0x1e, +}; +static const unsigned char kat885_addin0[] = {0}; +static const unsigned char kat885_addin1[] = {0}; +static const unsigned char kat885_retbits[] = { + 0xc9, 0x48, 0x94, 0xd5, 0x69, 0x85, 0xd7, 0x3a, 0xc5, 0x16, 0xc1, 0x24, + 0x9c, 0xea, 0x3d, 0x8e, 0x79, 0xb6, 0x7d, 0xcd, 0xb2, 0xbf, 0x24, 0xb8, + 0x30, 0xd5, 0x2f, 0x9e, 0x1f, 0xbd, 0xd8, 0xbd, 0xb3, 0x7a, 0x54, 0x6c, + 0x4f, 0xfe, 0x13, 0x18, 0x6c, 0xeb, 0x0a, 0x23, 0x0a, 0x14, 0xee, 0x1b, + 0xe0, 0xe4, 0x09, 0xeb, 0x19, 0xee, 0xf0, 0x18, 0xe5, 0x4f, 0x79, 0xc3, + 0xdd, 0xd4, 0xfb, 0xd4, +}; +static const struct drbg_kat_no_reseed kat885_t = { + 14, kat885_entropyin, kat885_nonce, kat885_persstr, + kat885_addin0, kat885_addin1, kat885_retbits +}; +static const struct drbg_kat kat885 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat885_t +}; + +static const unsigned char kat886_entropyin[] = { + 0x51, 0x48, 0x67, 0x4d, 0xa1, 0x23, 0xe8, 0x09, 0x43, 0x1d, 0x84, 0x87, + 0x2c, 0x8b, 0x78, 0x35, 0x66, 0xce, 0xae, 0xff, 0xb2, 0xa2, 0xed, 0x1f, + 0x85, 0xe4, 0x74, 0x52, 0x75, 0x17, 0x3c, 0x01, +}; +static const unsigned char kat886_nonce[] = {0}; +static const unsigned char kat886_persstr[] = { + 0xe4, 0xbb, 0xc1, 0x86, 0xbb, 0xd3, 0x4a, 0x9e, 0x3d, 0xdb, 0x56, 0x2a, + 0xec, 0xd3, 0x90, 0xbe, 0xdb, 0x77, 0xe3, 0x79, 0xe7, 0x1e, 0x1d, 0xcb, + 0x4f, 0xb6, 0xdc, 0xfe, 0x58, 0x1d, 0x09, 0xcc, +}; +static const unsigned char kat886_addin0[] = { + 0x4c, 0xf3, 0x16, 0x55, 0xc6, 0xfa, 0xcd, 0x20, 0x9e, 0xf9, 0x9d, 0x1b, + 0xa9, 0xf5, 0xe2, 0x9c, 0x1e, 0xe9, 0xa7, 0xa1, 0x01, 0xf3, 0xdd, 0xdc, + 0xbe, 0x38, 0x41, 0x07, 0xda, 0x52, 0xaa, 0xf0, +}; +static const unsigned char kat886_addin1[] = { + 0xc7, 0x7b, 0xc7, 0x95, 0x24, 0x23, 0xa2, 0xec, 0x3b, 0x1f, 0x7f, 0x68, + 0x67, 0x5f, 0x9a, 0xda, 0x5a, 0x32, 0xd1, 0xb4, 0x94, 0x14, 0x30, 0x78, + 0x80, 0xd6, 0x35, 0xda, 0x80, 0xc5, 0x9c, 0x83, +}; +static const unsigned char kat886_retbits[] = { + 0x98, 0xa6, 0xa6, 0x64, 0x51, 0xce, 0x9b, 0xd3, 0x48, 0x25, 0x69, 0x2f, + 0xdd, 0x65, 0x24, 0xee, 0xe8, 0x2e, 0xa1, 0xf5, 0x50, 0xf5, 0xc3, 0x2a, + 0xa9, 0x73, 0x5e, 0xd5, 0x21, 0x19, 0xb2, 0x2d, 0xbb, 0xad, 0x9d, 0x42, + 0x82, 0x57, 0x7c, 0xb8, 0x00, 0x31, 0x5b, 0xa7, 0xc9, 0x07, 0x25, 0x50, + 0x84, 0x7e, 0xdc, 0x23, 0xb5, 0x0a, 0x19, 0x79, 0xed, 0x34, 0x1c, 0x37, + 0x75, 0x92, 0x22, 0xdc, +}; +static const struct drbg_kat_no_reseed kat886_t = { + 0, kat886_entropyin, kat886_nonce, kat886_persstr, + kat886_addin0, kat886_addin1, kat886_retbits +}; +static const struct drbg_kat kat886 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat886_t +}; + +static const unsigned char kat887_entropyin[] = { + 0xae, 0xd2, 0xfe, 0x2c, 0x23, 0xf5, 0x81, 0x2e, 0x6b, 0xdb, 0xa3, 0xb4, + 0xec, 0x78, 0x2f, 0x33, 0x17, 0xbc, 0x25, 0xaf, 0x7c, 0xad, 0x0e, 0xff, + 0xa8, 0xdd, 0xd7, 0xea, 0xa8, 0xbe, 0xa0, 0xf2, +}; +static const unsigned char kat887_nonce[] = {0}; +static const unsigned char kat887_persstr[] = { + 0x29, 0x2c, 0xd5, 0x28, 0xfa, 0x53, 0xda, 0x05, 0x03, 0x2c, 0x1c, 0x0c, + 0xbd, 0xeb, 0x52, 0xec, 0xac, 0xb8, 0x19, 0xb6, 0x51, 0xc2, 0x8c, 0x4d, + 0x0a, 0x1d, 0x75, 0x24, 0x8d, 0x46, 0x8c, 0xd5, +}; +static const unsigned char kat887_addin0[] = { + 0x36, 0x3c, 0xc4, 0x7e, 0x33, 0x92, 0xec, 0x7c, 0x28, 0xa9, 0xae, 0x72, + 0x39, 0x16, 0x7b, 0xed, 0xd6, 0x2d, 0xd1, 0xf0, 0x2c, 0x38, 0xaf, 0x47, + 0xb3, 0xb0, 0x80, 0x38, 0x52, 0x80, 0xc3, 0x68, +}; +static const unsigned char kat887_addin1[] = { + 0x63, 0x37, 0x14, 0x53, 0xc3, 0x2e, 0x2e, 0xb3, 0xe7, 0xbc, 0x1e, 0x96, + 0x1e, 0x5f, 0x33, 0x32, 0x24, 0xdc, 0x96, 0x3f, 0xdd, 0x6a, 0xbf, 0x71, + 0xfb, 0xf8, 0x15, 0x9b, 0xe4, 0x0a, 0xad, 0xc2, +}; +static const unsigned char kat887_retbits[] = { + 0x9d, 0x52, 0xd1, 0x1f, 0xdf, 0x3f, 0x9b, 0x3c, 0x4c, 0xa9, 0xa4, 0x18, + 0x4b, 0x4d, 0x4a, 0x58, 0x16, 0xce, 0xdc, 0x75, 0x5e, 0x03, 0x3e, 0x40, + 0x6e, 0xd3, 0x57, 0x87, 0xb7, 0x92, 0xa7, 0x7f, 0x73, 0x22, 0xd4, 0x39, + 0x24, 0x8c, 0x91, 0xaf, 0xbf, 0x67, 0xde, 0x47, 0x33, 0x31, 0xaa, 0x0e, + 0x0f, 0xa0, 0x00, 0xbf, 0xfe, 0xc1, 0x0d, 0x16, 0xaf, 0xca, 0xf4, 0xc0, + 0xfe, 0x73, 0xa3, 0x9d, +}; +static const struct drbg_kat_no_reseed kat887_t = { + 1, kat887_entropyin, kat887_nonce, kat887_persstr, + kat887_addin0, kat887_addin1, kat887_retbits +}; +static const struct drbg_kat kat887 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat887_t +}; + +static const unsigned char kat888_entropyin[] = { + 0xf3, 0x56, 0xf1, 0xc6, 0x3c, 0x5c, 0x00, 0xbe, 0x96, 0x60, 0xc6, 0x8d, + 0xbf, 0x00, 0xeb, 0x5a, 0x4c, 0x02, 0x08, 0x59, 0x98, 0xd5, 0x08, 0x4d, + 0x75, 0xf5, 0x4a, 0x86, 0xe2, 0xbb, 0x07, 0xd6, +}; +static const unsigned char kat888_nonce[] = {0}; +static const unsigned char kat888_persstr[] = { + 0xa4, 0x43, 0xd0, 0x52, 0x6d, 0x57, 0x98, 0x2a, 0x66, 0x1d, 0x1a, 0xe3, + 0xc6, 0xfb, 0x09, 0x51, 0xf4, 0xe7, 0x24, 0xe8, 0xfb, 0xe3, 0xa5, 0xef, + 0xfe, 0x9f, 0x71, 0x8b, 0xe9, 0x88, 0xfd, 0x9d, +}; +static const unsigned char kat888_addin0[] = { + 0x15, 0xf2, 0x27, 0x57, 0x1e, 0x83, 0x69, 0x3a, 0xa9, 0x34, 0x65, 0x8a, + 0x13, 0xc6, 0x50, 0xc1, 0xe6, 0x63, 0xc0, 0xc7, 0x4e, 0x52, 0x9c, 0xd4, + 0x86, 0x65, 0x00, 0x44, 0xef, 0xe2, 0x52, 0x3d, +}; +static const unsigned char kat888_addin1[] = { + 0x3e, 0xd2, 0x05, 0x08, 0xcb, 0xc9, 0x10, 0x45, 0xb5, 0x55, 0x35, 0x8e, + 0x3f, 0x71, 0x89, 0xa0, 0x52, 0x2a, 0xd4, 0x3d, 0x5d, 0x7f, 0xd0, 0xd6, + 0xd8, 0x8f, 0x47, 0x5c, 0xda, 0xe1, 0x77, 0xcf, +}; +static const unsigned char kat888_retbits[] = { + 0x86, 0x8b, 0xf4, 0xfe, 0x9d, 0x7a, 0x7c, 0x65, 0x6a, 0x1e, 0xa0, 0x2d, + 0xd3, 0x53, 0xa7, 0xdd, 0xea, 0x6a, 0x9e, 0xd1, 0xeb, 0x4c, 0x0d, 0xe9, + 0x28, 0xeb, 0x03, 0xf3, 0xe7, 0x8f, 0x06, 0x9d, 0x5b, 0x22, 0xd8, 0x24, + 0x75, 0xa9, 0xc5, 0x2e, 0xfe, 0x52, 0x4e, 0x4c, 0xd4, 0xbf, 0x10, 0x32, + 0x6c, 0x6f, 0xe2, 0xfd, 0x60, 0x40, 0xd6, 0x1a, 0xee, 0x34, 0xb7, 0x4f, + 0xb7, 0xcb, 0xbb, 0xd7, +}; +static const struct drbg_kat_no_reseed kat888_t = { + 2, kat888_entropyin, kat888_nonce, kat888_persstr, + kat888_addin0, kat888_addin1, kat888_retbits +}; +static const struct drbg_kat kat888 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat888_t +}; + +static const unsigned char kat889_entropyin[] = { + 0xb1, 0x94, 0xf4, 0x92, 0xba, 0x4b, 0x20, 0xfa, 0x65, 0xbe, 0x37, 0x32, + 0x41, 0x24, 0x25, 0x19, 0x8e, 0x78, 0x2d, 0x04, 0x24, 0xc2, 0x63, 0xc5, + 0xd3, 0xef, 0x3e, 0x1a, 0x99, 0x08, 0xfa, 0x8d, +}; +static const unsigned char kat889_nonce[] = {0}; +static const unsigned char kat889_persstr[] = { + 0x91, 0x2c, 0x64, 0x8e, 0x82, 0xd7, 0xf4, 0x07, 0x7f, 0xbd, 0xd4, 0x55, + 0xf4, 0xb1, 0x2c, 0xe9, 0xde, 0x47, 0x44, 0x60, 0x4d, 0x24, 0xf9, 0x44, + 0x07, 0x02, 0x0e, 0x56, 0xe8, 0x55, 0x28, 0x6d, +}; +static const unsigned char kat889_addin0[] = { + 0x25, 0xbe, 0x6e, 0x16, 0xcf, 0x62, 0x56, 0x2b, 0x19, 0xe6, 0xe6, 0x73, + 0x75, 0x43, 0x72, 0x4d, 0xc9, 0xe0, 0x3d, 0x86, 0xe9, 0x7e, 0x89, 0x6a, + 0xb2, 0xea, 0xe1, 0xfb, 0x3f, 0x1e, 0x20, 0x7e, +}; +static const unsigned char kat889_addin1[] = { + 0x2c, 0xe5, 0x41, 0xfc, 0x48, 0x69, 0x44, 0x9c, 0x11, 0x97, 0x4f, 0x1b, + 0x88, 0xb1, 0x7f, 0x8f, 0xfe, 0x7a, 0x7d, 0x3d, 0x43, 0xe8, 0xd6, 0xcf, + 0x0e, 0xec, 0xbe, 0xa2, 0x54, 0x7f, 0xd7, 0xd4, +}; +static const unsigned char kat889_retbits[] = { + 0x55, 0x0e, 0x76, 0xc2, 0xde, 0x2c, 0x79, 0x96, 0x12, 0xec, 0x81, 0x61, + 0x41, 0x28, 0x97, 0x76, 0xa7, 0x30, 0xea, 0xa9, 0x78, 0x26, 0x10, 0xbe, + 0x58, 0xee, 0x4f, 0xe9, 0x48, 0x47, 0xbc, 0xa5, 0x6e, 0xe8, 0xa3, 0x3c, + 0x3a, 0xea, 0xa4, 0x0f, 0x5f, 0x71, 0xfe, 0xb4, 0xa9, 0xdf, 0x8d, 0x01, + 0xa2, 0x8a, 0x8f, 0x80, 0xa6, 0x66, 0xef, 0x77, 0x73, 0xf3, 0x02, 0xe9, + 0xa8, 0xcb, 0x54, 0xdb, +}; +static const struct drbg_kat_no_reseed kat889_t = { + 3, kat889_entropyin, kat889_nonce, kat889_persstr, + kat889_addin0, kat889_addin1, kat889_retbits +}; +static const struct drbg_kat kat889 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat889_t +}; + +static const unsigned char kat890_entropyin[] = { + 0x1a, 0xd7, 0x35, 0x9e, 0x36, 0x2d, 0xfa, 0x16, 0x9d, 0x5f, 0x39, 0x1b, + 0x57, 0x0c, 0x26, 0x57, 0xf1, 0x2f, 0x80, 0xcd, 0x2c, 0xf2, 0x2e, 0x6c, + 0x34, 0x0c, 0x9f, 0xfd, 0x1a, 0xe9, 0x5c, 0xda, +}; +static const unsigned char kat890_nonce[] = {0}; +static const unsigned char kat890_persstr[] = { + 0x0b, 0x60, 0xa5, 0x87, 0x44, 0xf7, 0x75, 0x3b, 0xaa, 0x2b, 0x2a, 0x81, + 0x7d, 0x73, 0x8e, 0x08, 0x78, 0x24, 0x46, 0xf1, 0xc8, 0xea, 0xc8, 0x48, + 0xac, 0xd3, 0xba, 0xa6, 0x83, 0xb0, 0x45, 0xa7, +}; +static const unsigned char kat890_addin0[] = { + 0xef, 0xf6, 0x58, 0x2f, 0x25, 0x45, 0xb6, 0x7f, 0x5e, 0x18, 0x09, 0xb8, + 0x7f, 0x7b, 0x7e, 0x27, 0x53, 0x62, 0xf3, 0x52, 0x15, 0x79, 0x3a, 0xcc, + 0x1e, 0x3b, 0xec, 0x93, 0xa7, 0xda, 0x31, 0xd3, +}; +static const unsigned char kat890_addin1[] = { + 0x33, 0x57, 0xe1, 0x26, 0x2f, 0x9d, 0x44, 0x76, 0x6e, 0x48, 0x5c, 0x3e, + 0xd9, 0x67, 0x9d, 0x7c, 0x54, 0x4d, 0xed, 0xa0, 0x1c, 0xab, 0xe1, 0xc5, + 0x5a, 0x4d, 0xf6, 0x96, 0x1c, 0x0b, 0x96, 0xee, +}; +static const unsigned char kat890_retbits[] = { + 0xc1, 0x16, 0x8b, 0x39, 0xc0, 0xf9, 0xa6, 0xc5, 0x84, 0xa4, 0x4d, 0xf7, + 0xa7, 0x04, 0xdf, 0x41, 0x41, 0xbc, 0x55, 0x3e, 0x7a, 0xbc, 0xbe, 0xd2, + 0x9a, 0xda, 0x29, 0xb5, 0xd9, 0xd3, 0x33, 0x10, 0x4e, 0xd5, 0xf9, 0x68, + 0x86, 0x23, 0xac, 0x77, 0x1b, 0xd7, 0x12, 0x58, 0xec, 0x09, 0x0c, 0xfb, + 0x31, 0xab, 0x96, 0x85, 0x81, 0x25, 0x53, 0xd6, 0x87, 0xa7, 0x12, 0x26, + 0x5e, 0x5a, 0x2e, 0x0e, +}; +static const struct drbg_kat_no_reseed kat890_t = { + 4, kat890_entropyin, kat890_nonce, kat890_persstr, + kat890_addin0, kat890_addin1, kat890_retbits +}; +static const struct drbg_kat kat890 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat890_t +}; + +static const unsigned char kat891_entropyin[] = { + 0x91, 0xaf, 0xeb, 0x9f, 0xba, 0x80, 0xf7, 0xf0, 0x5e, 0x2e, 0xd4, 0x0f, + 0x54, 0x8a, 0xf6, 0xf7, 0x36, 0x95, 0xb8, 0xa3, 0xdf, 0x98, 0x09, 0x5c, + 0xc3, 0x29, 0x48, 0xda, 0xc0, 0xab, 0x91, 0xec, +}; +static const unsigned char kat891_nonce[] = {0}; +static const unsigned char kat891_persstr[] = { + 0xbf, 0x08, 0x33, 0x42, 0xd0, 0xae, 0x63, 0xd3, 0x50, 0x9d, 0xe2, 0x24, + 0x25, 0xed, 0xd3, 0x25, 0xc7, 0xe2, 0x66, 0x02, 0x98, 0x89, 0x4f, 0x67, + 0x7f, 0x7a, 0xe5, 0xb3, 0x0c, 0x5a, 0x37, 0x59, +}; +static const unsigned char kat891_addin0[] = { + 0x08, 0x5b, 0xdc, 0xf8, 0x6f, 0x2d, 0x89, 0xed, 0xcc, 0x72, 0x7f, 0x5b, + 0xe5, 0xba, 0x12, 0x55, 0x67, 0x5e, 0x6f, 0xe6, 0x11, 0x74, 0x6f, 0xcc, + 0xa4, 0xcb, 0x37, 0x2c, 0xeb, 0x7c, 0x9f, 0xba, +}; +static const unsigned char kat891_addin1[] = { + 0xd3, 0x8d, 0xd8, 0xae, 0xf2, 0x35, 0xc7, 0xba, 0xbc, 0x68, 0x2e, 0xa4, + 0x6d, 0x83, 0xfd, 0xbb, 0xd2, 0xb1, 0xc5, 0x3a, 0xdf, 0x18, 0xec, 0x26, + 0x6c, 0xc5, 0x3f, 0x01, 0xc9, 0x09, 0x12, 0x49, +}; +static const unsigned char kat891_retbits[] = { + 0xf4, 0xe3, 0x7f, 0xb2, 0x2b, 0xc0, 0xc6, 0xb9, 0xa9, 0x72, 0xfa, 0xdc, + 0x91, 0x4d, 0x7e, 0xbf, 0x16, 0x42, 0x80, 0x68, 0xee, 0x20, 0xa5, 0x05, + 0x5e, 0x7b, 0x5c, 0x54, 0xfe, 0x36, 0xcb, 0x11, 0x51, 0x88, 0x90, 0xe4, + 0x36, 0xad, 0x1e, 0x2e, 0x2f, 0x8c, 0x64, 0x8e, 0xb9, 0x50, 0x7a, 0x49, + 0xe5, 0x22, 0x02, 0xdf, 0x44, 0x6a, 0xa5, 0xc6, 0x34, 0x2a, 0xda, 0x65, + 0xf0, 0xa2, 0x26, 0x47, +}; +static const struct drbg_kat_no_reseed kat891_t = { + 5, kat891_entropyin, kat891_nonce, kat891_persstr, + kat891_addin0, kat891_addin1, kat891_retbits +}; +static const struct drbg_kat kat891 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat891_t +}; + +static const unsigned char kat892_entropyin[] = { + 0x79, 0xe2, 0x01, 0x1d, 0x49, 0xc3, 0x34, 0xd9, 0x77, 0xbd, 0xac, 0x54, + 0xe3, 0xf4, 0xd8, 0x72, 0x19, 0xc6, 0xeb, 0x38, 0xb0, 0xd2, 0x31, 0x83, + 0x77, 0x16, 0xf3, 0xd6, 0xf4, 0xd7, 0x36, 0xb6, +}; +static const unsigned char kat892_nonce[] = {0}; +static const unsigned char kat892_persstr[] = { + 0xdb, 0xb3, 0xaf, 0xec, 0xd8, 0x1f, 0xb9, 0x4b, 0x6f, 0xde, 0x7b, 0x9e, + 0x5d, 0x12, 0x9d, 0x80, 0x57, 0x73, 0x7f, 0xab, 0x78, 0x28, 0x12, 0x7c, + 0xce, 0x2e, 0xaf, 0x82, 0xa5, 0xa0, 0xa5, 0x05, +}; +static const unsigned char kat892_addin0[] = { + 0xb5, 0x6c, 0xe9, 0xf1, 0xaf, 0xb8, 0xe5, 0x87, 0x09, 0xc1, 0xb2, 0xf8, + 0xe5, 0x0e, 0x58, 0x52, 0x60, 0x4d, 0x1b, 0x34, 0x1d, 0x04, 0x65, 0x84, + 0xd0, 0x88, 0xfb, 0xfc, 0xad, 0x74, 0x6a, 0x09, +}; +static const unsigned char kat892_addin1[] = { + 0xff, 0x45, 0xe7, 0x93, 0x4f, 0x8b, 0x17, 0x91, 0xfd, 0x3d, 0x3d, 0x03, + 0x92, 0x40, 0x77, 0xa9, 0xf0, 0xc4, 0x3e, 0xa5, 0x65, 0x71, 0xb9, 0xdb, + 0x8f, 0x74, 0x8f, 0x4d, 0xd2, 0x55, 0xe7, 0x32, +}; +static const unsigned char kat892_retbits[] = { + 0xbc, 0x8d, 0xe3, 0x40, 0xb7, 0x03, 0xc7, 0x5d, 0x8e, 0x95, 0xc6, 0x61, + 0x05, 0x59, 0xc9, 0xe7, 0x09, 0xec, 0x0e, 0xc6, 0x2c, 0x32, 0x2f, 0x7c, + 0xd5, 0xef, 0x46, 0x7f, 0x99, 0x9f, 0xcd, 0x45, 0x7a, 0x4d, 0x0e, 0xa4, + 0xb3, 0xa6, 0x3f, 0x93, 0x41, 0xa4, 0xdf, 0x5b, 0x51, 0xce, 0x72, 0xc7, + 0x97, 0x70, 0xa7, 0x3b, 0x3d, 0x8d, 0xc4, 0x21, 0x16, 0xf9, 0xbe, 0x19, + 0x4a, 0x22, 0x2c, 0x4d, +}; +static const struct drbg_kat_no_reseed kat892_t = { + 6, kat892_entropyin, kat892_nonce, kat892_persstr, + kat892_addin0, kat892_addin1, kat892_retbits +}; +static const struct drbg_kat kat892 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat892_t +}; + +static const unsigned char kat893_entropyin[] = { + 0x8e, 0xe9, 0x91, 0x00, 0xc8, 0xe3, 0xb4, 0x4c, 0x8e, 0x07, 0xbf, 0x87, + 0xc2, 0x4f, 0x76, 0x13, 0x46, 0xf8, 0xf4, 0x88, 0xef, 0xd8, 0x6b, 0x33, + 0x52, 0x8a, 0x17, 0xbc, 0x9a, 0xb9, 0x5c, 0xc4, +}; +static const unsigned char kat893_nonce[] = {0}; +static const unsigned char kat893_persstr[] = { + 0x01, 0xb9, 0x5a, 0x46, 0xce, 0xbc, 0x95, 0xe0, 0xec, 0x82, 0x1c, 0x92, + 0x15, 0x69, 0xd8, 0x07, 0x99, 0xed, 0x2a, 0x13, 0x32, 0xb7, 0xfd, 0x08, + 0x07, 0x07, 0x59, 0x0a, 0x51, 0x1a, 0x55, 0x83, +}; +static const unsigned char kat893_addin0[] = { + 0x02, 0xf5, 0x20, 0xd9, 0x9b, 0x93, 0xa6, 0x22, 0xe8, 0xef, 0xcb, 0xb0, + 0x73, 0xf8, 0xb6, 0x4a, 0x89, 0xec, 0x07, 0x5d, 0x70, 0x13, 0x1a, 0x63, + 0x50, 0x9b, 0x04, 0xfe, 0x50, 0x69, 0xf4, 0x7a, +}; +static const unsigned char kat893_addin1[] = { + 0xba, 0x6b, 0x22, 0x67, 0x2a, 0x1f, 0xdc, 0x95, 0x92, 0x03, 0x3a, 0xe8, + 0x96, 0x64, 0x21, 0xf9, 0xe8, 0x4d, 0x98, 0xd6, 0x0a, 0x1c, 0xad, 0x8b, + 0x0d, 0x04, 0x2d, 0xc6, 0xc3, 0x44, 0x8a, 0x28, +}; +static const unsigned char kat893_retbits[] = { + 0x88, 0x20, 0x42, 0xc9, 0x30, 0x2b, 0x67, 0x14, 0xad, 0x5b, 0xe7, 0xe4, + 0xfb, 0xbe, 0xec, 0x06, 0xf7, 0xc3, 0x8f, 0x84, 0x62, 0x0c, 0xdb, 0x9b, + 0x30, 0x0e, 0x02, 0xb5, 0xca, 0x58, 0xda, 0x80, 0x80, 0xf8, 0x29, 0x0c, + 0xab, 0xd9, 0xed, 0x8e, 0x62, 0xce, 0x81, 0x02, 0x69, 0xbd, 0x2f, 0xae, + 0x3a, 0x64, 0x27, 0xd3, 0x11, 0x7e, 0x45, 0xf0, 0xa8, 0x3c, 0x53, 0x58, + 0xbf, 0x9c, 0x49, 0xf2, +}; +static const struct drbg_kat_no_reseed kat893_t = { + 7, kat893_entropyin, kat893_nonce, kat893_persstr, + kat893_addin0, kat893_addin1, kat893_retbits +}; +static const struct drbg_kat kat893 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat893_t +}; + +static const unsigned char kat894_entropyin[] = { + 0xfa, 0xe4, 0x6d, 0x54, 0x6b, 0x12, 0x53, 0x23, 0xb2, 0x81, 0x56, 0x92, + 0xf5, 0xb6, 0xc7, 0x30, 0x57, 0xb7, 0x26, 0xb2, 0x0f, 0x39, 0x27, 0x33, + 0x9e, 0xe6, 0x35, 0x97, 0x51, 0x0f, 0x6c, 0x64, +}; +static const unsigned char kat894_nonce[] = {0}; +static const unsigned char kat894_persstr[] = { + 0xe7, 0x61, 0x2f, 0xaa, 0x26, 0x2a, 0xe7, 0xfb, 0x8b, 0x81, 0xd3, 0xe8, + 0xfe, 0x01, 0xd5, 0x00, 0x12, 0x35, 0x4c, 0xf9, 0xe1, 0x8d, 0x10, 0x8a, + 0xe0, 0x78, 0x0c, 0x33, 0x4f, 0x8b, 0xc6, 0xb3, +}; +static const unsigned char kat894_addin0[] = { + 0x9f, 0xa5, 0xfc, 0x12, 0x7d, 0x26, 0x6b, 0xfd, 0x68, 0x52, 0xa5, 0x32, + 0xe4, 0xd5, 0x18, 0xd0, 0xac, 0x36, 0x14, 0xc6, 0x77, 0xb6, 0x61, 0xd5, + 0xdb, 0x62, 0x00, 0xcc, 0x2d, 0xeb, 0x5f, 0x4b, +}; +static const unsigned char kat894_addin1[] = { + 0x8e, 0x1c, 0x0b, 0x5d, 0x0a, 0x2a, 0xfe, 0x84, 0xf4, 0xe2, 0x32, 0x6b, + 0x87, 0x14, 0xc1, 0x5b, 0x21, 0xae, 0x55, 0x7f, 0x93, 0x1d, 0xbb, 0x14, + 0xec, 0xb6, 0xef, 0x67, 0xc5, 0xb7, 0xde, 0x8d, +}; +static const unsigned char kat894_retbits[] = { + 0x25, 0xbf, 0x43, 0xc9, 0x55, 0x55, 0x97, 0xe2, 0xb1, 0xb2, 0x7d, 0x4b, + 0xfd, 0xd8, 0x27, 0x78, 0x5d, 0x80, 0xbe, 0x5e, 0x09, 0xfd, 0x6b, 0x6d, + 0xca, 0x62, 0x9d, 0xf7, 0x3f, 0xaa, 0xe1, 0xc1, 0xf0, 0xab, 0x22, 0x8b, + 0x05, 0x8a, 0x7a, 0x3a, 0x8a, 0xdf, 0xa4, 0x5f, 0x4b, 0x8f, 0x67, 0x9e, + 0x17, 0x26, 0x0d, 0x25, 0xd8, 0x7d, 0x9c, 0x01, 0xbe, 0x4d, 0xc2, 0x42, + 0x58, 0x1d, 0x97, 0x7f, +}; +static const struct drbg_kat_no_reseed kat894_t = { + 8, kat894_entropyin, kat894_nonce, kat894_persstr, + kat894_addin0, kat894_addin1, kat894_retbits +}; +static const struct drbg_kat kat894 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat894_t +}; + +static const unsigned char kat895_entropyin[] = { + 0x00, 0x17, 0x01, 0xb4, 0x4d, 0x0d, 0x95, 0xf1, 0x87, 0x8b, 0x3e, 0xee, + 0xfb, 0xcc, 0xd7, 0x47, 0x7d, 0x7d, 0x71, 0x9e, 0x1a, 0xe8, 0x69, 0xc8, + 0x04, 0x92, 0xbf, 0x64, 0x6d, 0x1b, 0x05, 0x56, +}; +static const unsigned char kat895_nonce[] = {0}; +static const unsigned char kat895_persstr[] = { + 0x4a, 0x8d, 0xae, 0xf8, 0x09, 0xda, 0xa4, 0x6d, 0x8f, 0x95, 0x07, 0x02, + 0x01, 0xaf, 0x13, 0xf2, 0xc9, 0x2e, 0x61, 0xda, 0x77, 0xa6, 0x2e, 0x8e, + 0x1c, 0x83, 0x67, 0x10, 0x7d, 0xfd, 0x18, 0xb8, +}; +static const unsigned char kat895_addin0[] = { + 0x2b, 0x24, 0x18, 0x37, 0xdc, 0xcb, 0x29, 0x2b, 0x5f, 0x1f, 0x55, 0xd8, + 0x14, 0xd6, 0x19, 0x75, 0x15, 0x15, 0x3a, 0x27, 0x6f, 0x36, 0x6b, 0x40, + 0x6f, 0x92, 0xea, 0xa8, 0xa5, 0x82, 0x29, 0xfa, +}; +static const unsigned char kat895_addin1[] = { + 0x04, 0x12, 0x6b, 0x3f, 0xef, 0xe0, 0x44, 0x86, 0x25, 0x4a, 0x4a, 0x0b, + 0xa5, 0xc4, 0xa3, 0xd5, 0x0b, 0x20, 0x8d, 0x45, 0xda, 0xc5, 0xce, 0xd1, + 0x73, 0x93, 0x7f, 0xf4, 0xa3, 0x15, 0x22, 0x16, +}; +static const unsigned char kat895_retbits[] = { + 0xd8, 0xaa, 0x27, 0x19, 0x09, 0x45, 0x9f, 0xf4, 0x0c, 0xeb, 0xef, 0x22, + 0x3f, 0x2c, 0x8b, 0xbf, 0x32, 0x72, 0x48, 0xc9, 0x88, 0xdc, 0xe9, 0xe5, + 0x0a, 0x57, 0xc2, 0x11, 0x94, 0xca, 0x45, 0xf9, 0xc7, 0x58, 0x17, 0x8e, + 0xb3, 0x72, 0xd2, 0xc1, 0x5b, 0x8a, 0xcb, 0x45, 0x93, 0x73, 0x47, 0x46, + 0x95, 0x0c, 0xb9, 0x12, 0x3a, 0x67, 0x98, 0x7f, 0xed, 0x82, 0xd5, 0xfa, + 0x8a, 0x51, 0x67, 0x49, +}; +static const struct drbg_kat_no_reseed kat895_t = { + 9, kat895_entropyin, kat895_nonce, kat895_persstr, + kat895_addin0, kat895_addin1, kat895_retbits +}; +static const struct drbg_kat kat895 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat895_t +}; + +static const unsigned char kat896_entropyin[] = { + 0x85, 0x42, 0x5a, 0x96, 0xdc, 0x61, 0x09, 0xaa, 0xb7, 0xf9, 0x6c, 0xa7, + 0x38, 0x56, 0xcb, 0x51, 0xe5, 0xa0, 0x6d, 0x0f, 0xdf, 0xcb, 0xa4, 0x68, + 0x76, 0xff, 0x75, 0x54, 0x2b, 0xc1, 0x56, 0x59, +}; +static const unsigned char kat896_nonce[] = {0}; +static const unsigned char kat896_persstr[] = { + 0x7d, 0x34, 0xea, 0xb3, 0xa4, 0x9a, 0x00, 0x54, 0xa0, 0x53, 0x3c, 0x36, + 0xe4, 0xbe, 0xfc, 0x81, 0xe8, 0x57, 0x6d, 0xba, 0x7b, 0xf2, 0xcf, 0xf8, + 0xc8, 0xf3, 0x9d, 0xd1, 0x91, 0x08, 0x9c, 0x8d, +}; +static const unsigned char kat896_addin0[] = { + 0xa2, 0xb1, 0x2d, 0x04, 0x61, 0xe2, 0x85, 0x59, 0x68, 0xb2, 0xe9, 0x39, + 0x4b, 0xb5, 0x81, 0xd3, 0xad, 0x63, 0x18, 0x30, 0xd7, 0x41, 0x6f, 0x6e, + 0xfe, 0x69, 0x68, 0xba, 0x1b, 0xf4, 0x4f, 0xf6, +}; +static const unsigned char kat896_addin1[] = { + 0x14, 0xd2, 0x50, 0x1c, 0x43, 0x41, 0x16, 0x49, 0xad, 0xf5, 0x57, 0x70, + 0x73, 0x90, 0xe3, 0x73, 0xac, 0x06, 0x9a, 0xf6, 0x52, 0x00, 0x20, 0xcf, + 0x02, 0x21, 0x2e, 0xec, 0x64, 0x77, 0xc2, 0x88, +}; +static const unsigned char kat896_retbits[] = { + 0x71, 0x13, 0x06, 0x92, 0xbb, 0xa5, 0xd1, 0xa3, 0x68, 0x4b, 0xcd, 0x6c, + 0x03, 0x28, 0x1f, 0xf9, 0x72, 0x0a, 0x9f, 0x4f, 0xd6, 0x28, 0x60, 0xeb, + 0x74, 0xfd, 0xe2, 0x98, 0x98, 0x7f, 0x61, 0x2c, 0xae, 0xe2, 0x51, 0xc1, + 0x37, 0x61, 0x92, 0xa6, 0x8a, 0xa2, 0x9b, 0x93, 0x8b, 0x10, 0x3a, 0x16, + 0xa8, 0xfb, 0x0f, 0xb5, 0x59, 0x4b, 0x72, 0x8a, 0x54, 0x59, 0x60, 0x1e, + 0xb1, 0x4c, 0xaf, 0x10, +}; +static const struct drbg_kat_no_reseed kat896_t = { + 10, kat896_entropyin, kat896_nonce, kat896_persstr, + kat896_addin0, kat896_addin1, kat896_retbits +}; +static const struct drbg_kat kat896 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat896_t +}; + +static const unsigned char kat897_entropyin[] = { + 0x16, 0x7b, 0x70, 0x2d, 0x7a, 0x96, 0xea, 0xa8, 0x81, 0x4d, 0x98, 0xb7, + 0xb8, 0xec, 0x59, 0x6c, 0x6c, 0x75, 0x97, 0xb1, 0x9f, 0xae, 0xad, 0x69, + 0xc6, 0x3b, 0xc2, 0x98, 0x8a, 0x8d, 0x39, 0xa1, +}; +static const unsigned char kat897_nonce[] = {0}; +static const unsigned char kat897_persstr[] = { + 0x20, 0xe7, 0xd6, 0xd1, 0x90, 0x87, 0xa8, 0x7e, 0xa1, 0x75, 0xba, 0xad, + 0x5b, 0x2b, 0x3a, 0x4c, 0x01, 0x73, 0x85, 0xef, 0x0f, 0x7d, 0x1d, 0x32, + 0x20, 0x9a, 0x8b, 0xe6, 0xe0, 0x7e, 0x8d, 0x88, +}; +static const unsigned char kat897_addin0[] = { + 0xf6, 0x3f, 0x9a, 0xb7, 0xf2, 0x67, 0x9b, 0xd2, 0x4e, 0x78, 0x51, 0xd3, + 0xbb, 0x5d, 0x82, 0x6b, 0xd2, 0x3d, 0x41, 0xac, 0xf3, 0x87, 0xf9, 0x0c, + 0x8c, 0x9d, 0xbb, 0x7e, 0x18, 0xdf, 0xbe, 0x96, +}; +static const unsigned char kat897_addin1[] = { + 0x23, 0x5e, 0xcf, 0xca, 0x1e, 0x66, 0x36, 0x0c, 0xdc, 0xe6, 0x0b, 0x4b, + 0xeb, 0x13, 0x9d, 0x08, 0xc2, 0xdf, 0x8b, 0x60, 0xc3, 0x04, 0x3b, 0xc8, + 0xbe, 0x7b, 0x2a, 0x88, 0x3d, 0xe1, 0x78, 0x0b, +}; +static const unsigned char kat897_retbits[] = { + 0x41, 0xbf, 0x3e, 0x50, 0x88, 0x35, 0x3b, 0xf9, 0x26, 0xca, 0x40, 0xa9, + 0x50, 0x78, 0xbe, 0x13, 0xaa, 0x2c, 0x70, 0x32, 0xa0, 0x5c, 0x55, 0xf6, + 0x9c, 0x6d, 0x45, 0x68, 0x97, 0x30, 0x79, 0xda, 0x0d, 0x45, 0x96, 0x0d, + 0x8c, 0x4e, 0x37, 0xca, 0x6a, 0xe6, 0x46, 0x27, 0xcd, 0x94, 0xab, 0xeb, + 0x09, 0xc5, 0x6a, 0xb8, 0xd5, 0x7f, 0xdc, 0xae, 0x92, 0x3a, 0x9e, 0x99, + 0x11, 0xe5, 0x69, 0xad, +}; +static const struct drbg_kat_no_reseed kat897_t = { + 11, kat897_entropyin, kat897_nonce, kat897_persstr, + kat897_addin0, kat897_addin1, kat897_retbits +}; +static const struct drbg_kat kat897 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat897_t +}; + +static const unsigned char kat898_entropyin[] = { + 0xa1, 0xef, 0x83, 0x7d, 0x29, 0xee, 0xcb, 0x1f, 0x85, 0x71, 0x87, 0x0e, + 0xb0, 0x6f, 0x64, 0x23, 0xae, 0x72, 0xcc, 0xec, 0x87, 0x38, 0x5e, 0xd6, + 0xcb, 0xc6, 0x00, 0xcf, 0x62, 0x91, 0x16, 0x6c, +}; +static const unsigned char kat898_nonce[] = {0}; +static const unsigned char kat898_persstr[] = { + 0xa9, 0x4c, 0x80, 0xc1, 0xb7, 0xc0, 0x7d, 0x58, 0xb1, 0x55, 0x6f, 0x3c, + 0x50, 0x16, 0x67, 0x80, 0xfd, 0x26, 0x51, 0xe1, 0xe7, 0x3b, 0x97, 0xac, + 0xec, 0x4f, 0x92, 0xd1, 0xca, 0x9e, 0xab, 0xc3, +}; +static const unsigned char kat898_addin0[] = { + 0x8e, 0xc6, 0x01, 0xce, 0xcd, 0x34, 0x09, 0xec, 0xfe, 0x91, 0x5c, 0x3a, + 0xd4, 0x0c, 0x86, 0x14, 0x65, 0x50, 0x6e, 0x46, 0x31, 0xdc, 0xe4, 0x01, + 0x0f, 0x8b, 0xff, 0xd0, 0x78, 0x7b, 0x33, 0xa6, +}; +static const unsigned char kat898_addin1[] = { + 0xf1, 0x7d, 0x26, 0x44, 0xfa, 0xf4, 0x34, 0x03, 0xb1, 0x87, 0xc7, 0x95, + 0x77, 0xe5, 0xa6, 0xcc, 0x66, 0xe4, 0x73, 0x78, 0x16, 0x40, 0x97, 0x87, + 0xf4, 0x6b, 0x48, 0xb1, 0xd4, 0xa0, 0xad, 0x1f, +}; +static const unsigned char kat898_retbits[] = { + 0x7f, 0x52, 0xcb, 0xd4, 0xae, 0xa2, 0x83, 0x23, 0xaf, 0xf2, 0xf6, 0x33, + 0xb4, 0x2a, 0xdb, 0x0a, 0x90, 0x3e, 0xbe, 0xd0, 0x89, 0xc8, 0x50, 0xcd, + 0x53, 0x1e, 0xb2, 0xaa, 0x11, 0x7a, 0xb8, 0xa9, 0xc2, 0x43, 0x17, 0xf8, + 0x52, 0xf5, 0xf9, 0x99, 0xa3, 0x44, 0x38, 0x94, 0x88, 0x98, 0xb8, 0x97, + 0x69, 0xb5, 0x10, 0x09, 0xad, 0x42, 0x98, 0xb7, 0xe5, 0xb4, 0x8c, 0xaa, + 0x64, 0x13, 0x1d, 0xe5, +}; +static const struct drbg_kat_no_reseed kat898_t = { + 12, kat898_entropyin, kat898_nonce, kat898_persstr, + kat898_addin0, kat898_addin1, kat898_retbits +}; +static const struct drbg_kat kat898 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat898_t +}; + +static const unsigned char kat899_entropyin[] = { + 0x65, 0xfa, 0x09, 0x83, 0xad, 0x3a, 0x6f, 0x34, 0xb6, 0x0c, 0x2c, 0x5f, + 0x42, 0x3e, 0x96, 0xfb, 0x62, 0x06, 0x68, 0xee, 0x6c, 0x61, 0x7c, 0xb3, + 0x97, 0x98, 0x9e, 0x7c, 0x8d, 0x22, 0xfd, 0x6e, +}; +static const unsigned char kat899_nonce[] = {0}; +static const unsigned char kat899_persstr[] = { + 0x40, 0xa9, 0x5f, 0x2e, 0x17, 0x00, 0x3c, 0x0f, 0x0d, 0x42, 0x06, 0x94, + 0x72, 0x7d, 0x44, 0x60, 0xdb, 0xe2, 0xfd, 0x12, 0xa7, 0x65, 0x59, 0x4c, + 0x9b, 0x3f, 0x08, 0x51, 0x44, 0x3e, 0x6c, 0xb0, +}; +static const unsigned char kat899_addin0[] = { + 0x0c, 0x38, 0x03, 0x83, 0x00, 0x9c, 0x16, 0x18, 0xd1, 0x6f, 0x3b, 0x8b, + 0x4f, 0x7c, 0xfe, 0x3c, 0x77, 0x6a, 0xf7, 0xc4, 0xa5, 0xff, 0xc5, 0x36, + 0x58, 0xe0, 0x51, 0x92, 0x90, 0x02, 0x2f, 0xdd, +}; +static const unsigned char kat899_addin1[] = { + 0xd9, 0xc3, 0x20, 0x88, 0x20, 0xbc, 0x29, 0xe0, 0xfd, 0x8b, 0xea, 0x1f, + 0x31, 0xbf, 0x16, 0x8f, 0xcb, 0x23, 0xaa, 0x4b, 0x7b, 0x58, 0x37, 0x82, + 0xb8, 0x8a, 0x93, 0x63, 0x88, 0xbf, 0x94, 0x67, +}; +static const unsigned char kat899_retbits[] = { + 0x61, 0xa0, 0x02, 0x5c, 0x46, 0x03, 0xd6, 0xd4, 0x4a, 0xe1, 0x5a, 0x93, + 0x9c, 0x9d, 0x96, 0x54, 0xe9, 0x85, 0xe7, 0xd5, 0x95, 0x31, 0x9f, 0xb2, + 0x00, 0x74, 0xfb, 0x32, 0xf2, 0xb7, 0xd7, 0xa7, 0x81, 0xa4, 0x52, 0x3a, + 0xb5, 0x62, 0xb0, 0x43, 0x74, 0xc1, 0x08, 0x3b, 0x52, 0x0f, 0x33, 0x57, + 0x56, 0xaf, 0xa6, 0xea, 0x4b, 0x05, 0xac, 0x3e, 0xa5, 0x97, 0xe9, 0x04, + 0xf3, 0x42, 0x49, 0x19, +}; +static const struct drbg_kat_no_reseed kat899_t = { + 13, kat899_entropyin, kat899_nonce, kat899_persstr, + kat899_addin0, kat899_addin1, kat899_retbits +}; +static const struct drbg_kat kat899 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat899_t +}; + +static const unsigned char kat900_entropyin[] = { + 0x57, 0x38, 0x21, 0xa1, 0x92, 0xae, 0x7c, 0x82, 0x27, 0x9f, 0x4c, 0x51, + 0x9d, 0x92, 0x69, 0x55, 0x0f, 0x68, 0xaf, 0x4a, 0x67, 0x79, 0xb7, 0x0a, + 0x1e, 0xa5, 0x3e, 0x6a, 0x31, 0x85, 0xfd, 0x0c, +}; +static const unsigned char kat900_nonce[] = {0}; +static const unsigned char kat900_persstr[] = { + 0x9f, 0x38, 0x0e, 0x16, 0xbc, 0xc7, 0x74, 0xcc, 0x3d, 0x22, 0x4b, 0x58, + 0x27, 0x7d, 0x44, 0x01, 0x22, 0x5b, 0x94, 0x36, 0xff, 0x9e, 0x40, 0x02, + 0x1b, 0x79, 0x07, 0x6e, 0x22, 0x89, 0x14, 0xb9, +}; +static const unsigned char kat900_addin0[] = { + 0x95, 0x9a, 0x1a, 0xed, 0x8c, 0x1b, 0x0a, 0xf6, 0x37, 0xb8, 0xc0, 0xd0, + 0xdf, 0xd6, 0x00, 0xb0, 0xd5, 0xdc, 0xbc, 0xac, 0x12, 0xbc, 0x8c, 0xb1, + 0x60, 0xa2, 0xa0, 0xee, 0x7f, 0x2f, 0xdf, 0x9f, +}; +static const unsigned char kat900_addin1[] = { + 0xfd, 0xbb, 0x47, 0x2c, 0x9f, 0x36, 0x8a, 0x44, 0xf9, 0x2b, 0xab, 0x4b, + 0xd9, 0x93, 0xc7, 0xf3, 0x9d, 0x4e, 0x61, 0xc6, 0x50, 0x3f, 0x69, 0xc2, + 0x05, 0x19, 0x1d, 0x86, 0xbc, 0x1b, 0x29, 0x44, +}; +static const unsigned char kat900_retbits[] = { + 0xfa, 0x2f, 0x2a, 0x56, 0x6b, 0x99, 0xae, 0x81, 0x0b, 0x2b, 0x95, 0x09, + 0x2d, 0xa6, 0x7b, 0xb1, 0x6f, 0xa1, 0x85, 0x01, 0x3a, 0xd0, 0xc8, 0x3a, + 0x84, 0x5b, 0x48, 0xcf, 0x4f, 0xa5, 0x5f, 0x70, 0x17, 0xed, 0x94, 0x4d, + 0x08, 0xb5, 0x7d, 0x68, 0x13, 0x70, 0x0f, 0xb6, 0x0a, 0x30, 0xa2, 0xa2, + 0xf9, 0x76, 0xf8, 0xb9, 0x76, 0x15, 0x16, 0xef, 0x13, 0x7e, 0x3e, 0x3a, + 0x07, 0x83, 0x12, 0xf9, +}; +static const struct drbg_kat_no_reseed kat900_t = { + 14, kat900_entropyin, kat900_nonce, kat900_persstr, + kat900_addin0, kat900_addin1, kat900_retbits +}; +static const struct drbg_kat kat900 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat900_t +}; + +static const unsigned char kat901_entropyin[] = { + 0x08, 0x4b, 0x35, 0x2f, 0x38, 0xab, 0x28, 0xd9, 0xc1, 0xc7, 0xff, 0x16, + 0x55, 0x8e, 0x0a, 0x12, 0x37, 0x7d, 0x82, 0x0c, 0xd6, 0xec, 0xa3, 0xa3, + 0x52, 0xa6, 0xfe, 0xc3, 0x81, 0xf3, 0x58, 0x44, +}; +static const unsigned char kat901_nonce[] = {0}; +static const unsigned char kat901_persstr[] = {0}; +static const unsigned char kat901_addin0[] = {0}; +static const unsigned char kat901_addin1[] = {0}; +static const unsigned char kat901_retbits[] = { + 0xcb, 0xdf, 0xff, 0x95, 0xde, 0x29, 0x06, 0xf3, 0x42, 0x3e, 0xb4, 0x42, + 0x2b, 0xd3, 0xb0, 0xe6, 0xed, 0x55, 0xa7, 0x84, 0x3a, 0xb6, 0xeb, 0xed, + 0xf5, 0x2a, 0xca, 0xf2, 0x8e, 0x7a, 0x5a, 0xe0, 0x61, 0xae, 0xdb, 0x49, + 0xe7, 0x47, 0x67, 0x83, 0xf5, 0xcf, 0x29, 0x54, 0x16, 0x8c, 0x8e, 0xbc, + 0x3c, 0x9a, 0xb0, 0xb1, 0xa1, 0xcb, 0x87, 0x90, 0x76, 0xb4, 0x76, 0x97, + 0xb3, 0x6f, 0x95, 0x40, +}; +static const struct drbg_kat_no_reseed kat901_t = { + 0, kat901_entropyin, kat901_nonce, kat901_persstr, + kat901_addin0, kat901_addin1, kat901_retbits +}; +static const struct drbg_kat kat901 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat901_t +}; + +static const unsigned char kat902_entropyin[] = { + 0x8c, 0x25, 0x66, 0xac, 0x86, 0x0f, 0x23, 0x2f, 0xa3, 0x17, 0x08, 0x7f, + 0x84, 0xf0, 0x17, 0x6f, 0x98, 0xf5, 0x7e, 0xc0, 0x87, 0xae, 0x8c, 0xae, + 0x97, 0x52, 0x7b, 0xea, 0x92, 0x24, 0xab, 0xf1, +}; +static const unsigned char kat902_nonce[] = {0}; +static const unsigned char kat902_persstr[] = {0}; +static const unsigned char kat902_addin0[] = {0}; +static const unsigned char kat902_addin1[] = {0}; +static const unsigned char kat902_retbits[] = { + 0xa6, 0x64, 0xd3, 0x1a, 0x2f, 0xa0, 0x8d, 0xd1, 0x6a, 0x2b, 0x89, 0xf6, + 0xbc, 0x60, 0xeb, 0x52, 0xe4, 0x7d, 0x99, 0x78, 0x23, 0x94, 0x04, 0x1e, + 0x39, 0x1d, 0x9f, 0x56, 0x86, 0x24, 0x7a, 0xa2, 0x43, 0x00, 0xe4, 0x87, + 0xa7, 0x30, 0xd5, 0x20, 0x0d, 0xfd, 0xec, 0xcc, 0x47, 0x4d, 0x22, 0xf5, + 0xaa, 0x8e, 0xd5, 0x23, 0xc3, 0xa0, 0xf6, 0x29, 0x7d, 0xc5, 0x33, 0x93, + 0x65, 0x92, 0xac, 0x3f, +}; +static const struct drbg_kat_no_reseed kat902_t = { + 1, kat902_entropyin, kat902_nonce, kat902_persstr, + kat902_addin0, kat902_addin1, kat902_retbits +}; +static const struct drbg_kat kat902 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat902_t +}; + +static const unsigned char kat903_entropyin[] = { + 0x09, 0xc8, 0xe3, 0x92, 0x2a, 0x75, 0x6b, 0xfa, 0x74, 0x0d, 0x09, 0x23, + 0x42, 0x55, 0xe0, 0xfc, 0x4b, 0x1b, 0x46, 0xe3, 0x51, 0x39, 0x69, 0xd2, + 0x42, 0x44, 0xb0, 0xd9, 0xb4, 0x92, 0xfb, 0x26, +}; +static const unsigned char kat903_nonce[] = {0}; +static const unsigned char kat903_persstr[] = {0}; +static const unsigned char kat903_addin0[] = {0}; +static const unsigned char kat903_addin1[] = {0}; +static const unsigned char kat903_retbits[] = { + 0x31, 0xc5, 0x02, 0xfe, 0x08, 0x77, 0x5f, 0x53, 0xfb, 0xaa, 0x52, 0xde, + 0x6e, 0xc5, 0x3e, 0xd9, 0x68, 0x87, 0xee, 0x6c, 0x49, 0x74, 0x3b, 0xc5, + 0xa8, 0x8b, 0x01, 0x6f, 0x46, 0x95, 0xa6, 0xf5, 0x35, 0x2c, 0xd6, 0xf1, + 0x82, 0xb2, 0x7a, 0x50, 0xb3, 0x75, 0x50, 0x64, 0x4a, 0x51, 0x8e, 0xfc, + 0xcc, 0xc8, 0x47, 0xae, 0x08, 0x78, 0x07, 0x66, 0xaa, 0xb2, 0xd0, 0x98, + 0x4d, 0xc1, 0x37, 0xe6, +}; +static const struct drbg_kat_no_reseed kat903_t = { + 2, kat903_entropyin, kat903_nonce, kat903_persstr, + kat903_addin0, kat903_addin1, kat903_retbits +}; +static const struct drbg_kat kat903 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat903_t +}; + +static const unsigned char kat904_entropyin[] = { + 0x6e, 0xb0, 0x55, 0xa3, 0x30, 0xf2, 0xc1, 0x81, 0x77, 0x48, 0x18, 0x5d, + 0x5c, 0xf1, 0x18, 0x62, 0xe2, 0x7a, 0x17, 0x3c, 0x7c, 0xaa, 0x98, 0x31, + 0x28, 0xac, 0x7d, 0x35, 0x6d, 0x39, 0xf4, 0x40, +}; +static const unsigned char kat904_nonce[] = {0}; +static const unsigned char kat904_persstr[] = {0}; +static const unsigned char kat904_addin0[] = {0}; +static const unsigned char kat904_addin1[] = {0}; +static const unsigned char kat904_retbits[] = { + 0x3a, 0x34, 0xb6, 0x91, 0x1f, 0xe2, 0x7f, 0x5d, 0x5b, 0x4d, 0xa7, 0x56, + 0x1f, 0xb5, 0x7d, 0xb8, 0xfc, 0xee, 0x03, 0x93, 0x88, 0xca, 0x9b, 0xba, + 0x1f, 0xf1, 0xdb, 0x8f, 0xf5, 0x80, 0x96, 0x26, 0x3e, 0x96, 0xb0, 0xb0, + 0x67, 0xe2, 0xc6, 0xea, 0xf4, 0x88, 0xf2, 0x99, 0xd3, 0x70, 0x51, 0xc5, + 0x95, 0x05, 0x87, 0x26, 0x01, 0xe2, 0x8b, 0x9d, 0x2a, 0xf7, 0xdb, 0xd8, + 0x9f, 0x23, 0x54, 0x07, +}; +static const struct drbg_kat_no_reseed kat904_t = { + 3, kat904_entropyin, kat904_nonce, kat904_persstr, + kat904_addin0, kat904_addin1, kat904_retbits +}; +static const struct drbg_kat kat904 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat904_t +}; + +static const unsigned char kat905_entropyin[] = { + 0x70, 0xb3, 0x40, 0x65, 0x29, 0x9c, 0xab, 0xb6, 0x72, 0x89, 0x09, 0xfa, + 0xfe, 0x37, 0xd6, 0xb2, 0x68, 0xfe, 0x9f, 0xdc, 0xff, 0x83, 0x3e, 0x63, + 0x8f, 0x13, 0x4c, 0x02, 0xd2, 0x32, 0xb4, 0xee, +}; +static const unsigned char kat905_nonce[] = {0}; +static const unsigned char kat905_persstr[] = {0}; +static const unsigned char kat905_addin0[] = {0}; +static const unsigned char kat905_addin1[] = {0}; +static const unsigned char kat905_retbits[] = { + 0xcb, 0x78, 0xab, 0x06, 0x75, 0x91, 0x15, 0x5f, 0xcd, 0x3a, 0x89, 0x20, + 0x53, 0xd9, 0xb2, 0x71, 0xac, 0x05, 0xa8, 0xc7, 0xc3, 0x23, 0x38, 0xbf, + 0x63, 0x90, 0x18, 0x4a, 0x46, 0xf0, 0x7f, 0x8a, 0x47, 0x57, 0xb0, 0xe0, + 0x3e, 0x94, 0x75, 0x8b, 0x14, 0x3d, 0x5a, 0x23, 0x30, 0xc6, 0xb8, 0xf8, + 0x8a, 0xa6, 0x21, 0xeb, 0x10, 0x20, 0x50, 0x96, 0x29, 0x40, 0x78, 0x8a, + 0xec, 0x9b, 0xe6, 0x54, +}; +static const struct drbg_kat_no_reseed kat905_t = { + 4, kat905_entropyin, kat905_nonce, kat905_persstr, + kat905_addin0, kat905_addin1, kat905_retbits +}; +static const struct drbg_kat kat905 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat905_t +}; + +static const unsigned char kat906_entropyin[] = { + 0x61, 0xba, 0x1e, 0xd5, 0x28, 0xe5, 0xa6, 0x07, 0x09, 0x81, 0xcd, 0x5c, + 0x11, 0xb4, 0xbe, 0x2c, 0x2c, 0x57, 0x35, 0x9d, 0xf0, 0x61, 0xc3, 0x05, + 0x3c, 0x5a, 0x1c, 0x6a, 0x20, 0x06, 0xee, 0x26, +}; +static const unsigned char kat906_nonce[] = {0}; +static const unsigned char kat906_persstr[] = {0}; +static const unsigned char kat906_addin0[] = {0}; +static const unsigned char kat906_addin1[] = {0}; +static const unsigned char kat906_retbits[] = { + 0x86, 0xad, 0xa4, 0xfa, 0xb2, 0xbc, 0xf5, 0xd0, 0x64, 0x18, 0x97, 0xe6, + 0xb7, 0x28, 0xb1, 0x3c, 0xe6, 0x85, 0xde, 0x59, 0xf8, 0x59, 0xae, 0xe2, + 0xbc, 0x15, 0xca, 0x0b, 0xab, 0x67, 0x03, 0xf8, 0xd1, 0x99, 0x1a, 0x4a, + 0x60, 0x33, 0xe4, 0x0c, 0x58, 0xfb, 0xc1, 0x9b, 0xe5, 0x3a, 0x13, 0x39, + 0x8e, 0x53, 0x7b, 0xf9, 0x03, 0xfe, 0x19, 0xea, 0x0a, 0xac, 0x55, 0xb2, + 0x72, 0xa8, 0xa3, 0x46, +}; +static const struct drbg_kat_no_reseed kat906_t = { + 5, kat906_entropyin, kat906_nonce, kat906_persstr, + kat906_addin0, kat906_addin1, kat906_retbits +}; +static const struct drbg_kat kat906 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat906_t +}; + +static const unsigned char kat907_entropyin[] = { + 0x5b, 0xe7, 0x68, 0x7f, 0xb7, 0xd0, 0xee, 0x62, 0xbf, 0x62, 0xf0, 0x6f, + 0xac, 0x2e, 0xee, 0x25, 0x21, 0xbe, 0x7e, 0x73, 0x0c, 0x1e, 0xcc, 0x63, + 0x37, 0x1f, 0x5d, 0x87, 0x87, 0xbb, 0xce, 0x75, +}; +static const unsigned char kat907_nonce[] = {0}; +static const unsigned char kat907_persstr[] = {0}; +static const unsigned char kat907_addin0[] = {0}; +static const unsigned char kat907_addin1[] = {0}; +static const unsigned char kat907_retbits[] = { + 0x28, 0x5c, 0xa1, 0xfe, 0x69, 0xb8, 0xbb, 0x0a, 0x7b, 0x78, 0x78, 0x23, + 0xf4, 0x6c, 0xcc, 0x9f, 0x8e, 0xc6, 0xac, 0xcf, 0x8b, 0xe1, 0x7e, 0xaf, + 0x95, 0xe6, 0x3c, 0x4a, 0x1d, 0x27, 0xd4, 0x69, 0x9f, 0x9a, 0xe9, 0xb5, + 0x94, 0x33, 0x87, 0xb5, 0x76, 0x27, 0x6e, 0x45, 0x9f, 0x2d, 0x57, 0x92, + 0xcc, 0x51, 0xa1, 0xba, 0xe1, 0x32, 0x48, 0xc3, 0x55, 0x60, 0xbf, 0x21, + 0x1c, 0xc1, 0xd7, 0x81, +}; +static const struct drbg_kat_no_reseed kat907_t = { + 6, kat907_entropyin, kat907_nonce, kat907_persstr, + kat907_addin0, kat907_addin1, kat907_retbits +}; +static const struct drbg_kat kat907 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat907_t +}; + +static const unsigned char kat908_entropyin[] = { + 0x07, 0x9a, 0x18, 0x3f, 0x31, 0x2e, 0x9b, 0xd4, 0xd2, 0x3c, 0xb9, 0x97, + 0x54, 0x80, 0x28, 0xb0, 0x31, 0x01, 0x0e, 0x80, 0xbd, 0x59, 0xd5, 0x67, + 0x34, 0x14, 0xe4, 0xeb, 0xc1, 0x0d, 0xd9, 0x9d, +}; +static const unsigned char kat908_nonce[] = {0}; +static const unsigned char kat908_persstr[] = {0}; +static const unsigned char kat908_addin0[] = {0}; +static const unsigned char kat908_addin1[] = {0}; +static const unsigned char kat908_retbits[] = { + 0xe8, 0x29, 0x02, 0xb5, 0x88, 0x1d, 0x6a, 0x8d, 0x4d, 0x42, 0xc1, 0x52, + 0xae, 0x60, 0xea, 0x1c, 0x81, 0xa6, 0xfd, 0x17, 0x16, 0x76, 0xd1, 0x6b, + 0x7e, 0x94, 0xe4, 0xa8, 0x5f, 0xaf, 0x46, 0x28, 0x79, 0xc6, 0x67, 0x25, + 0x40, 0x42, 0x59, 0xaf, 0x44, 0x13, 0xc4, 0x28, 0xb8, 0x58, 0x51, 0x8e, + 0x46, 0x74, 0x78, 0x8f, 0xc5, 0x35, 0x6b, 0xb9, 0xb6, 0x00, 0xf9, 0x6b, + 0x88, 0xed, 0x47, 0x06, +}; +static const struct drbg_kat_no_reseed kat908_t = { + 7, kat908_entropyin, kat908_nonce, kat908_persstr, + kat908_addin0, kat908_addin1, kat908_retbits +}; +static const struct drbg_kat kat908 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat908_t +}; + +static const unsigned char kat909_entropyin[] = { + 0x0a, 0x55, 0xa5, 0x79, 0xdc, 0xcc, 0x4b, 0xf1, 0x1b, 0x59, 0xfa, 0x85, + 0xdb, 0x6e, 0x33, 0xed, 0xa0, 0x69, 0x25, 0x72, 0x06, 0xfd, 0x62, 0x34, + 0x54, 0x45, 0xcc, 0xba, 0x20, 0x32, 0x70, 0x43, +}; +static const unsigned char kat909_nonce[] = {0}; +static const unsigned char kat909_persstr[] = {0}; +static const unsigned char kat909_addin0[] = {0}; +static const unsigned char kat909_addin1[] = {0}; +static const unsigned char kat909_retbits[] = { + 0xf9, 0x62, 0x01, 0xa7, 0xe0, 0xdd, 0x00, 0xd5, 0x9b, 0x9b, 0x64, 0xeb, + 0xed, 0x6a, 0xc9, 0xa7, 0xd5, 0x10, 0x8d, 0xa0, 0xaf, 0xef, 0xb6, 0xfa, + 0x86, 0x90, 0x59, 0x14, 0xa3, 0x37, 0x87, 0x85, 0x24, 0x07, 0x08, 0xfc, + 0xf6, 0x7d, 0xe0, 0x48, 0x1b, 0x35, 0x18, 0xcc, 0x4a, 0x8b, 0xf0, 0x5f, + 0xfa, 0x4f, 0x82, 0xea, 0x87, 0x43, 0xdb, 0x32, 0x1f, 0x7d, 0xaf, 0x86, + 0x67, 0x94, 0xcf, 0x93, +}; +static const struct drbg_kat_no_reseed kat909_t = { + 8, kat909_entropyin, kat909_nonce, kat909_persstr, + kat909_addin0, kat909_addin1, kat909_retbits +}; +static const struct drbg_kat kat909 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat909_t +}; + +static const unsigned char kat910_entropyin[] = { + 0xc7, 0x9f, 0xdb, 0xd9, 0xdb, 0xe4, 0x94, 0xbe, 0x55, 0x97, 0xac, 0xf6, + 0x6c, 0xc5, 0x8d, 0x54, 0x87, 0xf0, 0x32, 0xfb, 0xda, 0x9a, 0x73, 0x70, + 0x28, 0x3c, 0x41, 0x50, 0x28, 0xb3, 0x35, 0x41, +}; +static const unsigned char kat910_nonce[] = {0}; +static const unsigned char kat910_persstr[] = {0}; +static const unsigned char kat910_addin0[] = {0}; +static const unsigned char kat910_addin1[] = {0}; +static const unsigned char kat910_retbits[] = { + 0x76, 0x68, 0xfb, 0x8d, 0x9b, 0xc2, 0x79, 0xae, 0xfa, 0xfc, 0x0c, 0x39, + 0xc0, 0xad, 0x66, 0x53, 0xb9, 0xbc, 0x3d, 0xd1, 0x73, 0x7c, 0xe1, 0x9b, + 0x18, 0x07, 0x44, 0x54, 0x46, 0x05, 0xab, 0x8c, 0x70, 0xf4, 0x61, 0xac, + 0xbb, 0x33, 0x7d, 0x68, 0x6a, 0xeb, 0x27, 0x83, 0xb5, 0x03, 0x63, 0xff, + 0xfe, 0xa0, 0x76, 0x4d, 0xe4, 0x6d, 0x1a, 0x6d, 0x51, 0x1c, 0x5e, 0xc0, + 0x24, 0xe5, 0xa7, 0x3b, +}; +static const struct drbg_kat_no_reseed kat910_t = { + 9, kat910_entropyin, kat910_nonce, kat910_persstr, + kat910_addin0, kat910_addin1, kat910_retbits +}; +static const struct drbg_kat kat910 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat910_t +}; + +static const unsigned char kat911_entropyin[] = { + 0xad, 0xad, 0x3e, 0x00, 0x63, 0xdf, 0x27, 0x1a, 0xbb, 0x77, 0xb2, 0xa0, + 0xd5, 0x28, 0x63, 0x8d, 0xeb, 0x4d, 0xeb, 0x5e, 0xe1, 0x4d, 0x00, 0x25, + 0x3c, 0x1b, 0xbe, 0x7e, 0x3f, 0xf9, 0xb6, 0xd4, +}; +static const unsigned char kat911_nonce[] = {0}; +static const unsigned char kat911_persstr[] = {0}; +static const unsigned char kat911_addin0[] = {0}; +static const unsigned char kat911_addin1[] = {0}; +static const unsigned char kat911_retbits[] = { + 0x4a, 0x19, 0xa0, 0xb8, 0x97, 0x52, 0x43, 0xa3, 0xad, 0x46, 0xf2, 0x9a, + 0x2a, 0x02, 0x4d, 0x47, 0x7b, 0xca, 0xfd, 0xfb, 0x50, 0xf1, 0x7a, 0xac, + 0xa5, 0x66, 0x00, 0x39, 0xfc, 0xed, 0x2f, 0x07, 0x64, 0x72, 0x06, 0x20, + 0xdc, 0xfb, 0x7c, 0xcd, 0x25, 0x01, 0xfa, 0x13, 0x83, 0x9f, 0x79, 0x87, + 0xbd, 0x33, 0x9d, 0xba, 0xa2, 0xeb, 0xe5, 0x1e, 0x90, 0x57, 0x83, 0x7f, + 0xf5, 0x10, 0x38, 0x0f, +}; +static const struct drbg_kat_no_reseed kat911_t = { + 10, kat911_entropyin, kat911_nonce, kat911_persstr, + kat911_addin0, kat911_addin1, kat911_retbits +}; +static const struct drbg_kat kat911 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat911_t +}; + +static const unsigned char kat912_entropyin[] = { + 0xf8, 0xf6, 0x2d, 0x35, 0xef, 0xab, 0x49, 0x93, 0xf8, 0x99, 0xeb, 0xa7, + 0x5e, 0x02, 0x19, 0xc8, 0x65, 0x13, 0x49, 0xc9, 0xe8, 0xf8, 0xe7, 0x46, + 0x77, 0x9c, 0xb5, 0xb1, 0x20, 0x3a, 0x3b, 0x0d, +}; +static const unsigned char kat912_nonce[] = {0}; +static const unsigned char kat912_persstr[] = {0}; +static const unsigned char kat912_addin0[] = {0}; +static const unsigned char kat912_addin1[] = {0}; +static const unsigned char kat912_retbits[] = { + 0x59, 0x40, 0x00, 0x43, 0x44, 0xe5, 0x7a, 0x3a, 0x9f, 0xcc, 0x53, 0x31, + 0x34, 0x38, 0x07, 0xdf, 0xea, 0x44, 0x26, 0xa8, 0x61, 0xe9, 0xbf, 0x0e, + 0xcb, 0x07, 0xf4, 0xb4, 0x75, 0x72, 0x58, 0xff, 0xee, 0xf5, 0x03, 0x37, + 0x9d, 0xe2, 0x78, 0xb2, 0x73, 0x6e, 0xf0, 0x6a, 0xf1, 0xf7, 0x82, 0x66, + 0xbf, 0xec, 0xf1, 0x14, 0xd4, 0x52, 0xde, 0x8a, 0xfe, 0x1a, 0x31, 0xd3, + 0x5d, 0x96, 0x1f, 0x4a, +}; +static const struct drbg_kat_no_reseed kat912_t = { + 11, kat912_entropyin, kat912_nonce, kat912_persstr, + kat912_addin0, kat912_addin1, kat912_retbits +}; +static const struct drbg_kat kat912 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat912_t +}; + +static const unsigned char kat913_entropyin[] = { + 0x7c, 0x32, 0x1c, 0xc7, 0xa0, 0x27, 0x10, 0xf4, 0x2f, 0x5c, 0x64, 0xf7, + 0xd5, 0x0e, 0x1c, 0xca, 0x13, 0x9f, 0x91, 0x81, 0x50, 0x21, 0x47, 0x6c, + 0xb3, 0xb6, 0x53, 0x36, 0xec, 0x0a, 0x8c, 0x64, +}; +static const unsigned char kat913_nonce[] = {0}; +static const unsigned char kat913_persstr[] = {0}; +static const unsigned char kat913_addin0[] = {0}; +static const unsigned char kat913_addin1[] = {0}; +static const unsigned char kat913_retbits[] = { + 0xc8, 0x60, 0xe9, 0xe0, 0x9b, 0x4e, 0x36, 0x38, 0x1a, 0x4d, 0x8b, 0x0b, + 0x24, 0x73, 0x38, 0x92, 0x4a, 0xa7, 0x82, 0xeb, 0x79, 0x60, 0x3a, 0x26, + 0x89, 0x02, 0x50, 0xf5, 0x66, 0xab, 0x11, 0xde, 0x34, 0xda, 0xca, 0x00, + 0x56, 0x40, 0x3c, 0x49, 0xc0, 0x74, 0x72, 0x14, 0x81, 0xc2, 0xc0, 0xb0, + 0x6c, 0xb4, 0x66, 0x9f, 0xf9, 0xa3, 0xdf, 0xbf, 0xcb, 0x73, 0xc6, 0x22, + 0x80, 0xe5, 0x32, 0xbe, +}; +static const struct drbg_kat_no_reseed kat913_t = { + 12, kat913_entropyin, kat913_nonce, kat913_persstr, + kat913_addin0, kat913_addin1, kat913_retbits +}; +static const struct drbg_kat kat913 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat913_t +}; + +static const unsigned char kat914_entropyin[] = { + 0xff, 0xfc, 0xe2, 0x29, 0xdc, 0xc8, 0xf7, 0x7e, 0x3b, 0x71, 0x49, 0x80, + 0x4e, 0x94, 0xb2, 0x9c, 0x8c, 0x3d, 0x85, 0x1c, 0x12, 0x9d, 0x1a, 0x41, + 0x7e, 0x18, 0x1a, 0xde, 0xdf, 0x8d, 0xd1, 0x2b, +}; +static const unsigned char kat914_nonce[] = {0}; +static const unsigned char kat914_persstr[] = {0}; +static const unsigned char kat914_addin0[] = {0}; +static const unsigned char kat914_addin1[] = {0}; +static const unsigned char kat914_retbits[] = { + 0x9a, 0xb8, 0xf2, 0x73, 0x0c, 0xd5, 0x03, 0x9a, 0x1c, 0x78, 0xf8, 0x37, + 0xcc, 0xaf, 0x77, 0x47, 0xb2, 0x7c, 0xa4, 0x25, 0xb0, 0x77, 0x28, 0x93, + 0x3e, 0x61, 0xbc, 0x39, 0xb5, 0xc0, 0x9f, 0xd6, 0x3a, 0x0f, 0x5e, 0x75, + 0x86, 0xfb, 0xb0, 0x0f, 0xe4, 0xfb, 0xea, 0x80, 0x93, 0x92, 0xa7, 0xf9, + 0x52, 0x06, 0x34, 0x5c, 0x64, 0x0c, 0xeb, 0xb9, 0x89, 0x97, 0xd5, 0x3c, + 0xd1, 0xbe, 0xa4, 0xbc, +}; +static const struct drbg_kat_no_reseed kat914_t = { + 13, kat914_entropyin, kat914_nonce, kat914_persstr, + kat914_addin0, kat914_addin1, kat914_retbits +}; +static const struct drbg_kat kat914 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat914_t +}; + +static const unsigned char kat915_entropyin[] = { + 0x39, 0x74, 0x27, 0xac, 0xb3, 0x68, 0x3a, 0xf1, 0x36, 0x36, 0xa7, 0x0f, + 0xa2, 0xd9, 0xff, 0x5b, 0x6d, 0x03, 0x2f, 0x9f, 0xc6, 0x19, 0x7d, 0x62, + 0xce, 0x10, 0x27, 0x51, 0x7c, 0xb6, 0x62, 0x68, +}; +static const unsigned char kat915_nonce[] = {0}; +static const unsigned char kat915_persstr[] = {0}; +static const unsigned char kat915_addin0[] = {0}; +static const unsigned char kat915_addin1[] = {0}; +static const unsigned char kat915_retbits[] = { + 0x2c, 0x6b, 0x5c, 0x56, 0x82, 0x18, 0x77, 0x40, 0xfb, 0x56, 0x6c, 0xa6, + 0x06, 0x44, 0x05, 0x2b, 0x2e, 0x0b, 0xc3, 0x28, 0x5a, 0x39, 0x9e, 0x81, + 0x27, 0xae, 0x53, 0xfa, 0xfa, 0x3d, 0x52, 0x86, 0x68, 0x04, 0x16, 0x77, + 0x2e, 0x55, 0x2a, 0x2c, 0xbc, 0xe4, 0xa5, 0x23, 0xf2, 0x6e, 0x7e, 0x7e, + 0x45, 0x82, 0x7a, 0x29, 0x1b, 0x61, 0xa8, 0xb6, 0xfc, 0x78, 0x36, 0xe3, + 0xa1, 0x4e, 0x69, 0x4a, +}; +static const struct drbg_kat_no_reseed kat915_t = { + 14, kat915_entropyin, kat915_nonce, kat915_persstr, + kat915_addin0, kat915_addin1, kat915_retbits +}; +static const struct drbg_kat kat915 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat915_t +}; + +static const unsigned char kat916_entropyin[] = { + 0x15, 0x08, 0x7d, 0x76, 0xde, 0xba, 0x6d, 0x1b, 0xb1, 0x89, 0x01, 0xe8, + 0x16, 0x88, 0x71, 0x78, 0xdb, 0x28, 0x11, 0xbe, 0x02, 0xf0, 0x47, 0xfc, + 0xdc, 0xd9, 0x3f, 0xd0, 0x64, 0x81, 0x7b, 0x0c, +}; +static const unsigned char kat916_nonce[] = {0}; +static const unsigned char kat916_persstr[] = {0}; +static const unsigned char kat916_addin0[] = { + 0xe4, 0xf2, 0xd4, 0x34, 0x2d, 0xdc, 0x85, 0xc2, 0x57, 0xcb, 0x6c, 0x17, + 0x67, 0xcb, 0x69, 0x65, 0x2f, 0x1c, 0x30, 0xa8, 0x2f, 0xe8, 0xc0, 0x55, + 0x0e, 0xca, 0x19, 0x37, 0x42, 0x8e, 0x1d, 0x90, +}; +static const unsigned char kat916_addin1[] = { + 0xeb, 0x5f, 0x7d, 0x3e, 0xfc, 0x4b, 0xee, 0x04, 0x95, 0x12, 0xb2, 0x46, + 0x25, 0x14, 0x6a, 0x3f, 0xc5, 0x76, 0xfb, 0xbf, 0x0f, 0x0e, 0x7b, 0xe4, + 0xf8, 0x07, 0x8b, 0x51, 0xd4, 0x89, 0xf9, 0x53, +}; +static const unsigned char kat916_retbits[] = { + 0x08, 0x30, 0x84, 0x7c, 0x46, 0x97, 0xb6, 0x78, 0xf3, 0x5e, 0x1c, 0x65, + 0x7a, 0x23, 0x74, 0xeb, 0x75, 0x56, 0xeb, 0xda, 0xf8, 0xf9, 0x86, 0x81, + 0xa3, 0xe7, 0xae, 0x87, 0x26, 0xc2, 0xf6, 0x70, 0xd0, 0x57, 0xc3, 0x8f, + 0x5f, 0x2a, 0x0c, 0x23, 0xf6, 0xd5, 0x36, 0x68, 0xc6, 0xd1, 0x0a, 0x97, + 0x55, 0xb4, 0xc3, 0x89, 0x5d, 0x96, 0x51, 0xe7, 0xc9, 0xd6, 0x88, 0x80, + 0x9c, 0xef, 0x94, 0x22, +}; +static const struct drbg_kat_no_reseed kat916_t = { + 0, kat916_entropyin, kat916_nonce, kat916_persstr, + kat916_addin0, kat916_addin1, kat916_retbits +}; +static const struct drbg_kat kat916 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat916_t +}; + +static const unsigned char kat917_entropyin[] = { + 0x6e, 0x53, 0x15, 0xd8, 0x72, 0x42, 0x8c, 0x26, 0xdd, 0x63, 0xf3, 0x7c, + 0x2a, 0xde, 0xe9, 0xa8, 0x8a, 0xc7, 0x1b, 0xc5, 0x2d, 0xbf, 0xe2, 0x9f, + 0x55, 0xba, 0x0c, 0x91, 0x03, 0x81, 0x73, 0x1a, +}; +static const unsigned char kat917_nonce[] = {0}; +static const unsigned char kat917_persstr[] = {0}; +static const unsigned char kat917_addin0[] = { + 0x27, 0x39, 0x75, 0x28, 0xf4, 0x76, 0x1c, 0xfa, 0x2e, 0x2a, 0x58, 0x58, + 0x27, 0x90, 0x9f, 0x15, 0xe1, 0xf6, 0xb0, 0x7b, 0x10, 0x55, 0x6c, 0xaa, + 0xc6, 0x2f, 0x91, 0x89, 0xaa, 0x52, 0xde, 0xd7, +}; +static const unsigned char kat917_addin1[] = { + 0x7f, 0xc7, 0x93, 0x2c, 0x7a, 0xa0, 0xee, 0xbe, 0xed, 0xe7, 0x14, 0xdb, + 0xa7, 0x47, 0xef, 0x4f, 0x61, 0x51, 0xab, 0x2f, 0xa5, 0x71, 0xdf, 0xb7, + 0x32, 0xba, 0x02, 0x05, 0xd1, 0xad, 0x66, 0xb2, +}; +static const unsigned char kat917_retbits[] = { + 0x8f, 0xc9, 0xb0, 0xb2, 0x74, 0x47, 0xd5, 0x5c, 0x29, 0xa9, 0xe8, 0x87, + 0xa2, 0x4f, 0xdd, 0xfa, 0x89, 0xa9, 0xa3, 0x59, 0x46, 0x70, 0x63, 0x59, + 0xb8, 0xff, 0xd8, 0x3a, 0x04, 0x50, 0xf7, 0x07, 0xd4, 0xf5, 0x0c, 0xa2, + 0x60, 0xca, 0x7f, 0x1f, 0x41, 0xec, 0x69, 0x3f, 0x7f, 0x48, 0x9c, 0xdb, + 0xfc, 0x10, 0xf8, 0x2e, 0x20, 0x34, 0xf3, 0x23, 0x32, 0x50, 0x61, 0xf0, + 0x69, 0xb6, 0x77, 0x6e, +}; +static const struct drbg_kat_no_reseed kat917_t = { + 1, kat917_entropyin, kat917_nonce, kat917_persstr, + kat917_addin0, kat917_addin1, kat917_retbits +}; +static const struct drbg_kat kat917 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat917_t +}; + +static const unsigned char kat918_entropyin[] = { + 0x5d, 0x3f, 0x0c, 0xcd, 0xb0, 0x88, 0x22, 0xb3, 0x47, 0x01, 0xe1, 0x4e, + 0xb5, 0x70, 0xa3, 0xfa, 0x63, 0xa9, 0xeb, 0x31, 0xf9, 0x22, 0x24, 0x4e, + 0xb9, 0x51, 0xab, 0x31, 0xe5, 0x50, 0x80, 0xe7, +}; +static const unsigned char kat918_nonce[] = {0}; +static const unsigned char kat918_persstr[] = {0}; +static const unsigned char kat918_addin0[] = { + 0xfa, 0x6f, 0x24, 0x78, 0xfd, 0xa9, 0xad, 0xa8, 0x27, 0xb9, 0xb2, 0x0c, + 0x99, 0x07, 0x33, 0x26, 0x66, 0x97, 0xbc, 0x57, 0x1c, 0x83, 0x4d, 0xde, + 0x59, 0x93, 0xf3, 0x9a, 0x31, 0x80, 0xc3, 0x66, +}; +static const unsigned char kat918_addin1[] = { + 0x07, 0x97, 0x13, 0xb0, 0x43, 0xab, 0x9f, 0xf2, 0xf3, 0x0f, 0xfa, 0x7c, + 0x22, 0x10, 0x44, 0xf0, 0xfe, 0x59, 0x04, 0x2c, 0xc5, 0xf1, 0x46, 0x6c, + 0xcb, 0x07, 0x62, 0xc1, 0xfe, 0x7c, 0x77, 0xa8, +}; +static const unsigned char kat918_retbits[] = { + 0x11, 0x93, 0xa4, 0x6b, 0x18, 0x2e, 0x39, 0x66, 0xda, 0xdd, 0x2a, 0xa7, + 0xe9, 0x19, 0x8b, 0xa6, 0x51, 0xd6, 0x14, 0x46, 0x13, 0xae, 0x51, 0x6a, + 0x7f, 0xfb, 0xe3, 0xc6, 0x10, 0xd0, 0x4c, 0x08, 0x23, 0x7b, 0x08, 0xc2, + 0xc4, 0x9b, 0x2e, 0x3f, 0x39, 0x80, 0x15, 0x69, 0x3a, 0xb5, 0xfc, 0xc8, + 0xcb, 0x00, 0x0a, 0xb7, 0x12, 0x2d, 0x7f, 0xe2, 0xa0, 0x72, 0xf6, 0x0a, + 0x07, 0x7b, 0xec, 0xed, +}; +static const struct drbg_kat_no_reseed kat918_t = { + 2, kat918_entropyin, kat918_nonce, kat918_persstr, + kat918_addin0, kat918_addin1, kat918_retbits +}; +static const struct drbg_kat kat918 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat918_t +}; + +static const unsigned char kat919_entropyin[] = { + 0x67, 0x7c, 0x91, 0x1b, 0x85, 0x8d, 0x63, 0x80, 0xd7, 0x28, 0xf9, 0x37, + 0x54, 0x07, 0xd6, 0x67, 0xc6, 0xea, 0x78, 0x54, 0xc9, 0x2d, 0x7d, 0x7d, + 0xb7, 0xfe, 0xe7, 0xa3, 0x9c, 0xc3, 0x88, 0x64, +}; +static const unsigned char kat919_nonce[] = {0}; +static const unsigned char kat919_persstr[] = {0}; +static const unsigned char kat919_addin0[] = { + 0xbf, 0x93, 0xc0, 0xb7, 0xe5, 0x96, 0xc7, 0xe6, 0xec, 0xd2, 0xa1, 0x6e, + 0xf4, 0x2a, 0xbd, 0xc6, 0x93, 0xb5, 0x11, 0x80, 0x4e, 0x54, 0x7a, 0x44, + 0xff, 0xb8, 0x4c, 0xfb, 0x53, 0xcc, 0x5b, 0xe1, +}; +static const unsigned char kat919_addin1[] = { + 0x1c, 0xc2, 0x9a, 0x2e, 0x81, 0xae, 0xd2, 0x08, 0x13, 0xa6, 0xb9, 0xe9, + 0xf6, 0xb6, 0x2d, 0x62, 0x29, 0xf7, 0xb0, 0xf6, 0xa2, 0x4b, 0x85, 0x47, + 0x16, 0xff, 0x01, 0x0c, 0xd4, 0x00, 0x0d, 0x72, +}; +static const unsigned char kat919_retbits[] = { + 0x8c, 0x15, 0x63, 0xeb, 0x92, 0x51, 0xf9, 0x88, 0x46, 0x6e, 0xa6, 0x75, + 0x22, 0x71, 0x15, 0x19, 0x27, 0xf3, 0x27, 0x33, 0x95, 0x13, 0x89, 0xae, + 0x0e, 0x89, 0xc8, 0xfd, 0x4d, 0x63, 0x90, 0x5b, 0x91, 0x4e, 0xb5, 0x49, + 0x8f, 0xb8, 0x71, 0x91, 0xd4, 0xda, 0xd7, 0x37, 0x3c, 0x8f, 0xb4, 0xd5, + 0x96, 0xd8, 0x74, 0x3a, 0xed, 0x3e, 0xec, 0x9d, 0x2f, 0x1f, 0xc4, 0x3c, + 0xeb, 0x2e, 0x63, 0x56, +}; +static const struct drbg_kat_no_reseed kat919_t = { + 3, kat919_entropyin, kat919_nonce, kat919_persstr, + kat919_addin0, kat919_addin1, kat919_retbits +}; +static const struct drbg_kat kat919 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat919_t +}; + +static const unsigned char kat920_entropyin[] = { + 0xd0, 0x15, 0x04, 0xc5, 0xc5, 0xd0, 0xb5, 0x89, 0x3e, 0x75, 0x9b, 0x5b, + 0xac, 0x17, 0x3f, 0x65, 0x45, 0xa1, 0x3a, 0xcb, 0xff, 0xd5, 0xf9, 0xa4, + 0x9a, 0x0c, 0x02, 0x00, 0xdc, 0x19, 0xe6, 0x34, +}; +static const unsigned char kat920_nonce[] = {0}; +static const unsigned char kat920_persstr[] = {0}; +static const unsigned char kat920_addin0[] = { + 0x52, 0xc6, 0xd2, 0xe8, 0xec, 0xd1, 0xb0, 0xd8, 0x3a, 0xd2, 0x5e, 0xee, + 0xb7, 0x2f, 0xce, 0xae, 0x95, 0x8a, 0x17, 0x7e, 0x8c, 0xc0, 0x51, 0x1c, + 0xcc, 0x40, 0x49, 0xde, 0xf8, 0x7a, 0x47, 0xe1, +}; +static const unsigned char kat920_addin1[] = { + 0x64, 0x5d, 0x9e, 0xe2, 0xaf, 0x91, 0x40, 0xfd, 0x10, 0x19, 0xf2, 0x08, + 0xad, 0xad, 0x12, 0x21, 0xaa, 0x88, 0xcb, 0x8b, 0x58, 0x1e, 0xe9, 0xf3, + 0x96, 0x57, 0x3f, 0x7a, 0x9c, 0xf6, 0xba, 0x9e, +}; +static const unsigned char kat920_retbits[] = { + 0x36, 0x5b, 0x0b, 0x4c, 0x25, 0xcf, 0xb9, 0x2b, 0x87, 0xc3, 0x3f, 0x5c, + 0xbd, 0x36, 0x85, 0xda, 0x3e, 0x4a, 0xf8, 0xa1, 0x76, 0xf2, 0x6d, 0xb1, + 0xf1, 0x27, 0x60, 0x4a, 0x0c, 0xe8, 0xa5, 0x91, 0x84, 0x1c, 0x93, 0xa7, + 0xc3, 0x63, 0x57, 0xe7, 0xc6, 0x5f, 0xdc, 0x3c, 0x2d, 0x1e, 0x14, 0xad, + 0x73, 0xa2, 0xc1, 0x38, 0x39, 0x87, 0x42, 0xcb, 0xd4, 0xfa, 0x91, 0x84, + 0x87, 0x8c, 0xa9, 0xaf, +}; +static const struct drbg_kat_no_reseed kat920_t = { + 4, kat920_entropyin, kat920_nonce, kat920_persstr, + kat920_addin0, kat920_addin1, kat920_retbits +}; +static const struct drbg_kat kat920 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat920_t +}; + +static const unsigned char kat921_entropyin[] = { + 0x72, 0x8d, 0x5e, 0x16, 0x38, 0x3b, 0x89, 0xb3, 0x06, 0x89, 0xd9, 0x6a, + 0xe0, 0xff, 0xa2, 0x5d, 0x08, 0x70, 0x18, 0x0b, 0xbf, 0x9a, 0xa7, 0x84, + 0xc0, 0xbe, 0xcb, 0x83, 0x0d, 0x1a, 0x33, 0xe3, +}; +static const unsigned char kat921_nonce[] = {0}; +static const unsigned char kat921_persstr[] = {0}; +static const unsigned char kat921_addin0[] = { + 0x7e, 0xe4, 0x93, 0xd5, 0xa2, 0x0a, 0x1a, 0xff, 0xd0, 0xa1, 0xec, 0xc7, + 0xf9, 0x48, 0xcd, 0x32, 0x85, 0x10, 0xc6, 0x78, 0x0f, 0xba, 0xb6, 0xdf, + 0xbb, 0x89, 0x67, 0xd5, 0x47, 0x12, 0x06, 0x85, +}; +static const unsigned char kat921_addin1[] = { + 0x8b, 0xc7, 0x21, 0xb2, 0x66, 0x00, 0x19, 0x74, 0x54, 0x19, 0xee, 0x62, + 0x79, 0x48, 0x08, 0x10, 0x11, 0x42, 0x34, 0x07, 0xf7, 0xee, 0x88, 0xd0, + 0x8d, 0xe3, 0xc8, 0xd2, 0xc7, 0x41, 0x58, 0x56, +}; +static const unsigned char kat921_retbits[] = { + 0xeb, 0x6f, 0xeb, 0xae, 0x38, 0x9d, 0x39, 0x6a, 0xc3, 0xe2, 0x27, 0x11, + 0x11, 0xf6, 0x63, 0xcc, 0x2d, 0x5c, 0x35, 0x5f, 0x9b, 0x2f, 0x98, 0x3e, + 0x0a, 0xd9, 0x70, 0x42, 0x88, 0x2e, 0x52, 0xbf, 0x5e, 0x3b, 0x72, 0xfa, + 0x02, 0x4d, 0xec, 0x84, 0xdc, 0xb8, 0xd6, 0x60, 0x2f, 0x7a, 0xb3, 0x4d, + 0xe5, 0xaa, 0x02, 0xa2, 0xbe, 0xf9, 0x85, 0xb4, 0x1b, 0x6a, 0xe3, 0xbd, + 0x36, 0xb4, 0xeb, 0x43, +}; +static const struct drbg_kat_no_reseed kat921_t = { + 5, kat921_entropyin, kat921_nonce, kat921_persstr, + kat921_addin0, kat921_addin1, kat921_retbits +}; +static const struct drbg_kat kat921 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat921_t +}; + +static const unsigned char kat922_entropyin[] = { + 0xdb, 0x1b, 0xc1, 0x89, 0xf4, 0xae, 0x4c, 0xc9, 0x0b, 0x36, 0xa1, 0x5a, + 0xc6, 0x86, 0xad, 0x05, 0xdc, 0xf9, 0xfc, 0xcf, 0xca, 0xa8, 0x5a, 0xc0, + 0xe1, 0xf7, 0xf3, 0xba, 0x0b, 0xc9, 0xdf, 0xde, +}; +static const unsigned char kat922_nonce[] = {0}; +static const unsigned char kat922_persstr[] = {0}; +static const unsigned char kat922_addin0[] = { + 0x4d, 0xcb, 0x24, 0x17, 0x23, 0x4c, 0xae, 0xb0, 0xe5, 0x8c, 0x5b, 0x37, + 0xc3, 0x97, 0x31, 0xe6, 0x79, 0x1e, 0x62, 0x18, 0x3b, 0x8f, 0x4f, 0x05, + 0x98, 0xb3, 0x14, 0x96, 0x43, 0xa4, 0xfb, 0x1b, +}; +static const unsigned char kat922_addin1[] = { + 0x24, 0xd4, 0x24, 0x92, 0x3e, 0x78, 0xf5, 0xc5, 0xa2, 0x29, 0x57, 0x8b, + 0x88, 0x29, 0x33, 0xeb, 0x4f, 0xb2, 0x90, 0x55, 0xf5, 0x5b, 0x82, 0x5b, + 0x40, 0xc9, 0x05, 0xbf, 0xbe, 0x2b, 0x43, 0x6e, +}; +static const unsigned char kat922_retbits[] = { + 0x13, 0x9d, 0x71, 0x52, 0xf8, 0x05, 0xc4, 0x53, 0x81, 0xcf, 0x4f, 0xa9, + 0xda, 0x6f, 0x5c, 0x7b, 0x99, 0x85, 0xfe, 0x50, 0x39, 0x91, 0x14, 0x8c, + 0xc4, 0x35, 0x7c, 0x85, 0x69, 0x98, 0x62, 0x32, 0x5e, 0x41, 0xf4, 0x67, + 0xba, 0xa0, 0x84, 0x05, 0x7c, 0x43, 0x45, 0x74, 0xa9, 0xee, 0x49, 0xe0, + 0x3c, 0xcd, 0x6c, 0x93, 0xb7, 0xec, 0x6e, 0x75, 0xb4, 0xaa, 0xeb, 0x88, + 0x58, 0x23, 0xa1, 0xb1, +}; +static const struct drbg_kat_no_reseed kat922_t = { + 6, kat922_entropyin, kat922_nonce, kat922_persstr, + kat922_addin0, kat922_addin1, kat922_retbits +}; +static const struct drbg_kat kat922 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat922_t +}; + +static const unsigned char kat923_entropyin[] = { + 0x01, 0x0e, 0x72, 0x11, 0xff, 0xcd, 0x4a, 0x6c, 0x36, 0x8b, 0xe3, 0x98, + 0xd9, 0xff, 0xb4, 0x0d, 0xa8, 0xa3, 0xbc, 0xdf, 0xe5, 0x09, 0x8f, 0xb8, + 0x5a, 0xfa, 0xec, 0x13, 0x74, 0x9b, 0xa7, 0xc7, +}; +static const unsigned char kat923_nonce[] = {0}; +static const unsigned char kat923_persstr[] = {0}; +static const unsigned char kat923_addin0[] = { + 0x3d, 0xcd, 0x8f, 0x39, 0x80, 0xb3, 0x15, 0xb5, 0x69, 0xc1, 0x9c, 0x0d, + 0xf8, 0xb8, 0x0d, 0x48, 0xd7, 0x51, 0xc7, 0x04, 0x42, 0x38, 0x15, 0xda, + 0xbe, 0x9d, 0xfb, 0x6a, 0x0e, 0xca, 0x14, 0xbd, +}; +static const unsigned char kat923_addin1[] = { + 0xae, 0x8b, 0x70, 0x7d, 0xe9, 0x92, 0xca, 0xb2, 0xd7, 0x53, 0xab, 0x42, + 0x36, 0x81, 0x12, 0x7d, 0x76, 0xd4, 0x3b, 0xef, 0xf6, 0xeb, 0x59, 0x62, + 0xa7, 0x7b, 0x86, 0x42, 0x63, 0x99, 0x23, 0xb3, +}; +static const unsigned char kat923_retbits[] = { + 0x6b, 0x92, 0xe9, 0xfd, 0xa9, 0xaf, 0x63, 0xf1, 0x45, 0x56, 0x47, 0x66, + 0x97, 0x59, 0x12, 0x54, 0xa9, 0x93, 0xa1, 0xe3, 0x6b, 0x3b, 0xed, 0xcb, + 0xeb, 0xfc, 0x28, 0xdb, 0xf8, 0x5c, 0xf5, 0x95, 0x99, 0x01, 0xb4, 0x42, + 0x93, 0xd8, 0x66, 0x5c, 0xf9, 0x59, 0x22, 0xff, 0x17, 0x2d, 0x9c, 0x70, + 0x39, 0xb7, 0xc2, 0x1a, 0xbb, 0x96, 0x45, 0x87, 0xd4, 0x81, 0x17, 0xf3, + 0x85, 0xc7, 0xe0, 0x7d, +}; +static const struct drbg_kat_no_reseed kat923_t = { + 7, kat923_entropyin, kat923_nonce, kat923_persstr, + kat923_addin0, kat923_addin1, kat923_retbits +}; +static const struct drbg_kat kat923 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat923_t +}; + +static const unsigned char kat924_entropyin[] = { + 0x06, 0x65, 0x6e, 0xf7, 0x27, 0xd1, 0x3e, 0x9b, 0x2a, 0x49, 0xb3, 0x0e, + 0xa9, 0xcd, 0x4d, 0x9b, 0x57, 0x4d, 0xcb, 0xf4, 0xc1, 0xda, 0xf5, 0xd5, + 0x00, 0x16, 0x7f, 0x3f, 0x4b, 0xf2, 0x3e, 0x57, +}; +static const unsigned char kat924_nonce[] = {0}; +static const unsigned char kat924_persstr[] = {0}; +static const unsigned char kat924_addin0[] = { + 0xfc, 0xce, 0x04, 0x65, 0xf3, 0xc7, 0x6b, 0x16, 0x3f, 0x64, 0xd4, 0xc3, + 0x4b, 0xea, 0x91, 0xe7, 0xae, 0x91, 0xc6, 0xd7, 0x9e, 0x01, 0x94, 0x2f, + 0x4b, 0x5e, 0x6b, 0xcc, 0x67, 0x22, 0x99, 0xe5, +}; +static const unsigned char kat924_addin1[] = { + 0xdd, 0x4f, 0x6b, 0x33, 0xd8, 0x94, 0x47, 0x65, 0x62, 0x89, 0x0d, 0xb4, + 0xb8, 0xee, 0x7d, 0x49, 0x0b, 0xe9, 0x92, 0x33, 0xaa, 0x81, 0xd0, 0x72, + 0xdd, 0xa3, 0x2e, 0x29, 0x57, 0xa3, 0x94, 0x4b, +}; +static const unsigned char kat924_retbits[] = { + 0x1a, 0x6e, 0x60, 0x06, 0x19, 0xb6, 0xde, 0x94, 0x3b, 0xb1, 0x4f, 0xbe, + 0x87, 0x90, 0xb5, 0xf3, 0x8e, 0xb7, 0xf2, 0xdf, 0x6e, 0x8d, 0xfa, 0x0d, + 0x1e, 0x54, 0xa6, 0xab, 0xa1, 0xe3, 0x49, 0x42, 0x96, 0x78, 0x42, 0x08, + 0xd0, 0x4f, 0xab, 0x7f, 0x64, 0x02, 0x98, 0x6f, 0x5f, 0x25, 0xe3, 0x5a, + 0x20, 0x2a, 0x3f, 0x98, 0x37, 0x6e, 0xd4, 0x48, 0xc3, 0xa1, 0xc2, 0x4e, + 0x79, 0x57, 0xe0, 0x95, +}; +static const struct drbg_kat_no_reseed kat924_t = { + 8, kat924_entropyin, kat924_nonce, kat924_persstr, + kat924_addin0, kat924_addin1, kat924_retbits +}; +static const struct drbg_kat kat924 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat924_t +}; + +static const unsigned char kat925_entropyin[] = { + 0x5a, 0x00, 0x24, 0x20, 0x3d, 0x45, 0xeb, 0xba, 0x4e, 0x21, 0x7f, 0xc6, + 0x18, 0x24, 0x68, 0x57, 0x19, 0x7a, 0x9a, 0x12, 0xb2, 0x04, 0xad, 0xdf, + 0xf9, 0xc6, 0x5e, 0x4c, 0x8e, 0xf6, 0xcf, 0xad, +}; +static const unsigned char kat925_nonce[] = {0}; +static const unsigned char kat925_persstr[] = {0}; +static const unsigned char kat925_addin0[] = { + 0x46, 0xa9, 0x1c, 0x23, 0x56, 0x36, 0xd0, 0xaa, 0x0d, 0x8d, 0x86, 0x7f, + 0x80, 0xd3, 0x51, 0xf6, 0xb9, 0xc2, 0x0e, 0x9d, 0xeb, 0xe3, 0xf5, 0xe5, + 0xa3, 0x08, 0x61, 0xf9, 0x2d, 0x74, 0x1e, 0x75, +}; +static const unsigned char kat925_addin1[] = { + 0xaf, 0x79, 0x31, 0xc4, 0x4b, 0x7a, 0x1c, 0x32, 0xce, 0xca, 0x3c, 0x54, + 0x9c, 0x4c, 0x6e, 0x5d, 0xbd, 0x91, 0x48, 0x4e, 0x68, 0x1e, 0x19, 0x9e, + 0x2a, 0x7a, 0x08, 0xe2, 0x6c, 0xa3, 0x60, 0x15, +}; +static const unsigned char kat925_retbits[] = { + 0x4d, 0xcc, 0x58, 0x78, 0xea, 0xb9, 0x32, 0xe2, 0xcf, 0x2c, 0x51, 0xaf, + 0xd4, 0x3f, 0x10, 0x1f, 0xf7, 0x51, 0x53, 0xae, 0xb9, 0x96, 0x4a, 0x65, + 0x3e, 0xb9, 0xbc, 0x01, 0x71, 0x5e, 0x13, 0x26, 0xee, 0x3c, 0xd4, 0xdc, + 0x59, 0x0a, 0xe7, 0xfd, 0xc6, 0x39, 0xed, 0x9e, 0x01, 0xdf, 0xfc, 0x3b, + 0x11, 0x11, 0x25, 0x8c, 0xd5, 0x34, 0x2a, 0xd5, 0xac, 0xf4, 0x34, 0x18, + 0x91, 0x0a, 0x3c, 0x4e, +}; +static const struct drbg_kat_no_reseed kat925_t = { + 9, kat925_entropyin, kat925_nonce, kat925_persstr, + kat925_addin0, kat925_addin1, kat925_retbits +}; +static const struct drbg_kat kat925 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat925_t +}; + +static const unsigned char kat926_entropyin[] = { + 0xbf, 0x24, 0x1a, 0xd7, 0x92, 0x51, 0xed, 0x64, 0xc9, 0xc6, 0x92, 0xe0, + 0x9d, 0xb7, 0xec, 0x33, 0x84, 0x6c, 0xae, 0x82, 0xb0, 0xca, 0xfe, 0xdd, + 0xcd, 0xc9, 0xea, 0x3c, 0x21, 0x8a, 0x91, 0xba, +}; +static const unsigned char kat926_nonce[] = {0}; +static const unsigned char kat926_persstr[] = {0}; +static const unsigned char kat926_addin0[] = { + 0x47, 0x10, 0x19, 0xcd, 0xb4, 0x99, 0x66, 0xcb, 0x96, 0xcf, 0x05, 0x09, + 0x85, 0xbe, 0x39, 0xeb, 0xcb, 0x98, 0x18, 0xf7, 0xf8, 0x7d, 0x88, 0x1d, + 0xcf, 0x4e, 0x72, 0x45, 0xfd, 0xd3, 0x45, 0xe1, +}; +static const unsigned char kat926_addin1[] = { + 0x48, 0x31, 0x48, 0x18, 0x64, 0x04, 0x5b, 0xe2, 0x76, 0x50, 0x82, 0x19, + 0xa6, 0x19, 0xa0, 0x39, 0xe2, 0x2f, 0xf2, 0x6a, 0xea, 0x3f, 0x3e, 0x5a, + 0xc4, 0xf7, 0x66, 0xf2, 0xdc, 0x3a, 0x14, 0x70, +}; +static const unsigned char kat926_retbits[] = { + 0xb8, 0xde, 0x52, 0xf6, 0x65, 0x1e, 0xc1, 0x68, 0xb4, 0xd0, 0xb5, 0xff, + 0xe0, 0xa4, 0x6e, 0xc4, 0x36, 0x65, 0x31, 0xb2, 0xcc, 0x97, 0x01, 0x73, + 0x98, 0xc5, 0x68, 0x8c, 0x27, 0x7d, 0xbe, 0xa7, 0xdb, 0xcd, 0xff, 0x62, + 0x2f, 0x79, 0xf9, 0x01, 0x4e, 0x3f, 0x64, 0xa1, 0x3d, 0x3d, 0xc8, 0x53, + 0x72, 0x47, 0x7f, 0xc3, 0x23, 0x54, 0x36, 0x2f, 0x18, 0xf8, 0xf9, 0x0a, + 0x35, 0x1b, 0x48, 0x5b, +}; +static const struct drbg_kat_no_reseed kat926_t = { + 10, kat926_entropyin, kat926_nonce, kat926_persstr, + kat926_addin0, kat926_addin1, kat926_retbits +}; +static const struct drbg_kat kat926 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat926_t +}; + +static const unsigned char kat927_entropyin[] = { + 0x6c, 0xaa, 0x44, 0xf9, 0x44, 0xc8, 0x88, 0xaa, 0xd0, 0xa3, 0x6f, 0x82, + 0x80, 0x00, 0x86, 0xef, 0x8c, 0xb7, 0x3a, 0xd7, 0xca, 0x63, 0x1e, 0x24, + 0x23, 0xa7, 0x0a, 0x8f, 0x83, 0xe0, 0x40, 0xed, +}; +static const unsigned char kat927_nonce[] = {0}; +static const unsigned char kat927_persstr[] = {0}; +static const unsigned char kat927_addin0[] = { + 0xaa, 0xd9, 0x38, 0x08, 0xcc, 0x90, 0x48, 0xae, 0xd8, 0xb0, 0xe9, 0xbb, + 0x62, 0x42, 0xf4, 0x28, 0x86, 0xb7, 0xfb, 0xac, 0x2c, 0x4a, 0xc1, 0x1d, + 0xbc, 0x83, 0x4a, 0xd1, 0xf8, 0x76, 0x8d, 0xd3, +}; +static const unsigned char kat927_addin1[] = { + 0x59, 0xea, 0xf7, 0x23, 0x5f, 0xd5, 0x4e, 0x51, 0x6d, 0x18, 0xc3, 0x4e, + 0xe9, 0x74, 0x46, 0x4c, 0x0c, 0x93, 0xc9, 0xe9, 0x44, 0x62, 0xb0, 0xd3, + 0x78, 0x6e, 0xac, 0x46, 0x50, 0xdf, 0x2e, 0xf0, +}; +static const unsigned char kat927_retbits[] = { + 0xc0, 0xa2, 0x7e, 0x1b, 0xc2, 0x7f, 0xab, 0xbb, 0x1c, 0x1a, 0xe2, 0xa5, + 0xea, 0xac, 0x92, 0x5e, 0xa9, 0x8b, 0x77, 0xa8, 0x49, 0xb9, 0x4b, 0xc1, + 0x18, 0x44, 0xcd, 0x8e, 0xac, 0x81, 0x5d, 0xd2, 0x53, 0xa0, 0x81, 0x02, + 0x33, 0x56, 0xc5, 0x53, 0x9c, 0x7e, 0x45, 0x32, 0x2a, 0x12, 0x51, 0x70, + 0x61, 0xdd, 0x86, 0xad, 0xcf, 0xc3, 0x3f, 0xe3, 0xc3, 0x93, 0x86, 0x4b, + 0x2b, 0xfc, 0x84, 0xd2, +}; +static const struct drbg_kat_no_reseed kat927_t = { + 11, kat927_entropyin, kat927_nonce, kat927_persstr, + kat927_addin0, kat927_addin1, kat927_retbits +}; +static const struct drbg_kat kat927 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat927_t +}; + +static const unsigned char kat928_entropyin[] = { + 0x5f, 0xc8, 0x90, 0x6e, 0x14, 0xb1, 0x6c, 0x9e, 0x2e, 0xf1, 0xe7, 0xf8, + 0x1c, 0x47, 0xb3, 0x68, 0x3a, 0xec, 0x26, 0x54, 0x81, 0x55, 0x44, 0x5f, + 0x0d, 0xda, 0x33, 0x3b, 0x45, 0xb3, 0x4c, 0x77, +}; +static const unsigned char kat928_nonce[] = {0}; +static const unsigned char kat928_persstr[] = {0}; +static const unsigned char kat928_addin0[] = { + 0xc9, 0x7d, 0xbf, 0x3a, 0x29, 0xb2, 0x09, 0xcd, 0xc4, 0xd3, 0x1d, 0xd9, + 0xec, 0x7d, 0xd1, 0xf4, 0x27, 0xce, 0x4b, 0xe0, 0x14, 0xa5, 0x60, 0x65, + 0x4d, 0xde, 0xa5, 0x1e, 0xa9, 0x65, 0x59, 0x57, +}; +static const unsigned char kat928_addin1[] = { + 0x4a, 0x0d, 0x74, 0x64, 0xff, 0x87, 0x42, 0xb3, 0xeb, 0xd6, 0x48, 0x74, + 0xd1, 0x36, 0x2d, 0x44, 0xe0, 0xdd, 0xce, 0x28, 0x63, 0x0d, 0x56, 0xf0, + 0x61, 0xe5, 0x44, 0xf4, 0x96, 0x4b, 0x03, 0xe2, +}; +static const unsigned char kat928_retbits[] = { + 0xe9, 0x17, 0xb8, 0x43, 0xe5, 0x35, 0x6a, 0x03, 0xf4, 0xcf, 0x27, 0xcb, + 0xa4, 0x77, 0xd0, 0xb3, 0xd9, 0x29, 0x3a, 0x2e, 0x63, 0x39, 0xf3, 0xe2, + 0x77, 0xb1, 0x3e, 0x0c, 0xa9, 0xb3, 0xa9, 0xd1, 0x6d, 0xe3, 0x81, 0xa9, + 0x07, 0x41, 0x8d, 0x33, 0x72, 0x6f, 0xaf, 0x07, 0x8b, 0x6c, 0x94, 0x3f, + 0x2c, 0x0c, 0xc0, 0xb7, 0x30, 0xf5, 0x6e, 0x54, 0xde, 0x4c, 0x74, 0xbd, + 0xd0, 0x51, 0xd7, 0xac, +}; +static const struct drbg_kat_no_reseed kat928_t = { + 12, kat928_entropyin, kat928_nonce, kat928_persstr, + kat928_addin0, kat928_addin1, kat928_retbits +}; +static const struct drbg_kat kat928 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat928_t +}; + +static const unsigned char kat929_entropyin[] = { + 0x75, 0xbc, 0xab, 0x2c, 0xca, 0xa2, 0x90, 0x70, 0xd4, 0x1e, 0xa9, 0x89, + 0xdc, 0x1b, 0xa2, 0x25, 0x95, 0x11, 0x66, 0x5e, 0xbe, 0x81, 0x02, 0x7f, + 0xa2, 0x09, 0x7d, 0x69, 0xfe, 0x2a, 0xde, 0xec, +}; +static const unsigned char kat929_nonce[] = {0}; +static const unsigned char kat929_persstr[] = {0}; +static const unsigned char kat929_addin0[] = { + 0x78, 0x29, 0xdc, 0xe7, 0x6e, 0x1d, 0x87, 0x00, 0xfa, 0x46, 0xec, 0x3e, + 0x80, 0x46, 0x03, 0x6f, 0xdf, 0xaf, 0x6d, 0x36, 0xc2, 0xde, 0xe5, 0x9f, + 0x6c, 0xd9, 0x74, 0x0a, 0xdf, 0x94, 0xa3, 0xc3, +}; +static const unsigned char kat929_addin1[] = { + 0x03, 0x7a, 0x8f, 0xf9, 0x05, 0xd3, 0x4e, 0xe2, 0xc6, 0x91, 0x02, 0xa3, + 0xe9, 0x90, 0xb1, 0x78, 0x0d, 0x49, 0xe7, 0x9a, 0xcd, 0x1f, 0x2a, 0x60, + 0x10, 0x42, 0x32, 0xcc, 0x02, 0x0f, 0x38, 0x55, +}; +static const unsigned char kat929_retbits[] = { + 0xa6, 0x27, 0x8f, 0xb0, 0x1d, 0x3f, 0x1d, 0x5c, 0x25, 0x99, 0x22, 0xc9, + 0xf3, 0xaf, 0x41, 0x07, 0x5c, 0x77, 0x28, 0xf3, 0x4a, 0xeb, 0x41, 0xb7, + 0xa6, 0x35, 0x16, 0xdb, 0x50, 0xd3, 0xf4, 0xad, 0x23, 0x38, 0xfb, 0xe4, + 0x5c, 0xe8, 0x10, 0xfb, 0x37, 0x21, 0xa4, 0xf4, 0x55, 0xf4, 0x2e, 0x01, + 0x13, 0xc5, 0x6f, 0x0f, 0xf9, 0x70, 0x9d, 0xf7, 0x14, 0xeb, 0xb8, 0xa4, + 0xa2, 0x98, 0xe7, 0x25, +}; +static const struct drbg_kat_no_reseed kat929_t = { + 13, kat929_entropyin, kat929_nonce, kat929_persstr, + kat929_addin0, kat929_addin1, kat929_retbits +}; +static const struct drbg_kat kat929 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat929_t +}; + +static const unsigned char kat930_entropyin[] = { + 0x05, 0x87, 0x30, 0xb7, 0x25, 0x64, 0x96, 0x5e, 0x80, 0x2a, 0xa3, 0x79, + 0x2a, 0x7d, 0xb2, 0x62, 0xd9, 0x4d, 0x4f, 0x10, 0xf9, 0x09, 0x8a, 0x86, + 0x30, 0x0e, 0xdf, 0x8b, 0xce, 0x91, 0xc2, 0xab, +}; +static const unsigned char kat930_nonce[] = {0}; +static const unsigned char kat930_persstr[] = {0}; +static const unsigned char kat930_addin0[] = { + 0x53, 0x45, 0x89, 0x89, 0x57, 0x77, 0xf5, 0x02, 0xaa, 0x37, 0x12, 0xae, + 0xed, 0x80, 0x13, 0xd3, 0x43, 0xa8, 0x24, 0x58, 0x47, 0x74, 0xd9, 0x2f, + 0x9b, 0x06, 0x68, 0x20, 0x1d, 0x56, 0x24, 0x89, +}; +static const unsigned char kat930_addin1[] = { + 0xa9, 0x77, 0x42, 0xc1, 0xe0, 0xc8, 0x16, 0x62, 0x6e, 0x67, 0xeb, 0xc8, + 0x1b, 0xa3, 0x98, 0x73, 0x78, 0x49, 0x9b, 0x75, 0x21, 0x2b, 0x19, 0x4b, + 0xb5, 0x6a, 0x67, 0x46, 0x02, 0x98, 0x66, 0xb0, +}; +static const unsigned char kat930_retbits[] = { + 0x80, 0x57, 0xf9, 0x7b, 0x49, 0x70, 0x0e, 0xdc, 0x8e, 0xbf, 0x7b, 0xbc, + 0x79, 0x8e, 0x6e, 0xae, 0x63, 0x9a, 0x44, 0x3e, 0x4c, 0x8e, 0x93, 0x5c, + 0xd0, 0x6e, 0xbf, 0x9e, 0x9b, 0xdb, 0x80, 0x3c, 0xd3, 0x12, 0x1a, 0x06, + 0x02, 0xb3, 0x2f, 0x08, 0x8e, 0x79, 0x06, 0xab, 0xaa, 0x68, 0xb2, 0x8b, + 0x94, 0x2e, 0x84, 0xbb, 0x09, 0xd1, 0x3d, 0x56, 0x54, 0x90, 0xd2, 0x02, + 0x95, 0xc5, 0x20, 0xa6, +}; +static const struct drbg_kat_no_reseed kat930_t = { + 14, kat930_entropyin, kat930_nonce, kat930_persstr, + kat930_addin0, kat930_addin1, kat930_retbits +}; +static const struct drbg_kat kat930 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat930_t +}; + +static const unsigned char kat931_entropyin[] = { + 0xc4, 0x55, 0xc4, 0x67, 0x01, 0x37, 0xc6, 0x5c, 0x0c, 0x58, 0x21, 0x01, + 0x5e, 0x78, 0x5f, 0x84, 0x88, 0x71, 0xf9, 0x8f, 0x57, 0xe5, 0x56, 0x31, + 0x42, 0xf0, 0x15, 0x22, 0x3c, 0xd3, 0x95, 0x23, +}; +static const unsigned char kat931_nonce[] = {0}; +static const unsigned char kat931_persstr[] = { + 0x3e, 0xd6, 0x37, 0x5b, 0x5b, 0x58, 0x23, 0x81, 0xc0, 0x5e, 0xb9, 0xa9, + 0xf4, 0x0f, 0xef, 0x0d, 0x9d, 0xc5, 0xdb, 0xe3, 0xb4, 0xaf, 0x3c, 0x9d, + 0x15, 0x49, 0xe6, 0x2e, 0x75, 0x61, 0x7e, 0xdc, +}; +static const unsigned char kat931_addin0[] = {0}; +static const unsigned char kat931_addin1[] = {0}; +static const unsigned char kat931_retbits[] = { + 0x18, 0x21, 0x7c, 0x3a, 0xff, 0x49, 0x74, 0x0e, 0x09, 0x30, 0xbf, 0x33, + 0xb4, 0xae, 0xfd, 0x42, 0x20, 0xc5, 0xb7, 0x7c, 0xf3, 0xb2, 0x45, 0xfd, + 0xff, 0x3f, 0x57, 0x0a, 0x46, 0x0a, 0x59, 0xb9, 0x9f, 0x52, 0xe9, 0x65, + 0x66, 0xc0, 0xd6, 0xfd, 0xdd, 0x37, 0xe4, 0xce, 0xe0, 0x60, 0x31, 0x9a, + 0x14, 0xc2, 0xf3, 0x39, 0x4e, 0xf0, 0xd4, 0x29, 0xbe, 0x54, 0x15, 0x92, + 0x5f, 0x18, 0x85, 0x1c, +}; +static const struct drbg_kat_no_reseed kat931_t = { + 0, kat931_entropyin, kat931_nonce, kat931_persstr, + kat931_addin0, kat931_addin1, kat931_retbits +}; +static const struct drbg_kat kat931 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat931_t +}; + +static const unsigned char kat932_entropyin[] = { + 0x38, 0xe0, 0xe5, 0xf8, 0x82, 0xb5, 0x4e, 0xb0, 0xf8, 0x20, 0x85, 0xed, + 0x01, 0x77, 0xde, 0x9f, 0xac, 0x81, 0x50, 0x1f, 0x95, 0xbb, 0x9b, 0x59, + 0x56, 0x38, 0x20, 0xdb, 0xa6, 0x5d, 0xb3, 0x20, +}; +static const unsigned char kat932_nonce[] = {0}; +static const unsigned char kat932_persstr[] = { + 0x1b, 0xce, 0x11, 0x40, 0xba, 0xd4, 0x5a, 0x5e, 0xdd, 0x24, 0xf0, 0x1a, + 0x5d, 0xe1, 0xe2, 0xf8, 0x58, 0x08, 0xe1, 0x61, 0x8a, 0x34, 0x78, 0xc1, + 0x3c, 0x79, 0xe6, 0x85, 0xeb, 0x7b, 0x89, 0x94, +}; +static const unsigned char kat932_addin0[] = {0}; +static const unsigned char kat932_addin1[] = {0}; +static const unsigned char kat932_retbits[] = { + 0xaa, 0x88, 0xe2, 0xdb, 0x42, 0x5f, 0x79, 0x9a, 0xf1, 0x5d, 0xb9, 0xef, + 0x26, 0x16, 0x4f, 0x62, 0xe9, 0x06, 0xe9, 0x42, 0xe5, 0xed, 0x52, 0x10, + 0xc7, 0xd2, 0x25, 0x45, 0x32, 0x6c, 0x29, 0x7b, 0xea, 0x0e, 0x6a, 0x09, + 0x72, 0x03, 0x8e, 0x4c, 0x33, 0xfb, 0x15, 0x47, 0x9f, 0x68, 0xb0, 0x1e, + 0xfb, 0x0b, 0xae, 0x77, 0x82, 0x9c, 0xd1, 0xb2, 0x9f, 0xe9, 0xc8, 0x6a, + 0x64, 0xe3, 0x3f, 0x67, +}; +static const struct drbg_kat_no_reseed kat932_t = { + 1, kat932_entropyin, kat932_nonce, kat932_persstr, + kat932_addin0, kat932_addin1, kat932_retbits +}; +static const struct drbg_kat kat932 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat932_t +}; + +static const unsigned char kat933_entropyin[] = { + 0x9b, 0x5e, 0x7e, 0x5f, 0x42, 0x4b, 0xdd, 0x71, 0x98, 0x79, 0xf8, 0x28, + 0x57, 0x78, 0x97, 0xda, 0x33, 0x0d, 0x5a, 0xcf, 0xb0, 0xe0, 0x00, 0xe7, + 0xc5, 0xa4, 0xc5, 0x7d, 0xd6, 0x39, 0xea, 0x8c, +}; +static const unsigned char kat933_nonce[] = {0}; +static const unsigned char kat933_persstr[] = { + 0xec, 0xe4, 0xf7, 0x1c, 0x95, 0x87, 0x6c, 0xa7, 0xef, 0x40, 0x5a, 0xf4, + 0x2a, 0x3a, 0x56, 0xe3, 0x3d, 0x58, 0x5f, 0x8a, 0x73, 0x21, 0x57, 0xae, + 0x50, 0xc5, 0xf4, 0x6a, 0x30, 0xee, 0x89, 0xb3, +}; +static const unsigned char kat933_addin0[] = {0}; +static const unsigned char kat933_addin1[] = {0}; +static const unsigned char kat933_retbits[] = { + 0x1e, 0xf7, 0x94, 0xcb, 0xe0, 0x45, 0x5c, 0xf7, 0x67, 0xb5, 0xa8, 0x93, + 0x60, 0xe8, 0xce, 0xed, 0x86, 0x1d, 0x43, 0x7c, 0x64, 0xaa, 0xde, 0x0f, + 0xf4, 0xbb, 0x51, 0xc2, 0x28, 0xa3, 0x66, 0xfe, 0xaa, 0x29, 0x19, 0x95, + 0x8a, 0x72, 0xbf, 0x2c, 0xf2, 0xbb, 0x0a, 0x3a, 0x72, 0xb3, 0x23, 0x90, + 0x61, 0x3e, 0xeb, 0xb3, 0x0f, 0x54, 0x4e, 0xf1, 0x2a, 0xba, 0xde, 0x70, + 0xa2, 0x90, 0xe9, 0x84, +}; +static const struct drbg_kat_no_reseed kat933_t = { + 2, kat933_entropyin, kat933_nonce, kat933_persstr, + kat933_addin0, kat933_addin1, kat933_retbits +}; +static const struct drbg_kat kat933 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat933_t +}; + +static const unsigned char kat934_entropyin[] = { + 0xa1, 0xea, 0xe6, 0x72, 0x63, 0xa8, 0xed, 0x5e, 0x5b, 0x44, 0x6e, 0xbb, + 0x46, 0x3d, 0xf9, 0xc9, 0x72, 0x32, 0x29, 0x7d, 0x41, 0xdf, 0x8a, 0xae, + 0x4b, 0x2b, 0x26, 0x95, 0xaa, 0x5d, 0x75, 0xe0, +}; +static const unsigned char kat934_nonce[] = {0}; +static const unsigned char kat934_persstr[] = { + 0x56, 0x95, 0xc8, 0x98, 0x8e, 0xce, 0x97, 0x4e, 0xc4, 0x1c, 0x57, 0xea, + 0x45, 0x59, 0xa1, 0x0b, 0x4e, 0x81, 0x42, 0x9d, 0x59, 0xf5, 0x0a, 0xa1, + 0x72, 0xcc, 0x5e, 0x42, 0x8b, 0x5a, 0x7d, 0x3b, +}; +static const unsigned char kat934_addin0[] = {0}; +static const unsigned char kat934_addin1[] = {0}; +static const unsigned char kat934_retbits[] = { + 0xa4, 0xe4, 0x8a, 0x82, 0x29, 0xe9, 0x3d, 0x4c, 0xea, 0x55, 0x83, 0x53, + 0xe1, 0x28, 0x7a, 0x05, 0xcb, 0x4b, 0xe8, 0xe3, 0x45, 0xf6, 0x42, 0x49, + 0x69, 0x4d, 0x85, 0xcc, 0xeb, 0x06, 0x0f, 0x4f, 0x60, 0xe3, 0x5c, 0x72, + 0x13, 0xc8, 0xbd, 0x6e, 0x54, 0x0a, 0xf1, 0xef, 0x48, 0xe0, 0x6f, 0x78, + 0x35, 0xce, 0x82, 0x92, 0x35, 0x9f, 0x24, 0xea, 0xcd, 0xa1, 0xf8, 0x25, + 0xbc, 0x5b, 0xc9, 0x86, +}; +static const struct drbg_kat_no_reseed kat934_t = { + 3, kat934_entropyin, kat934_nonce, kat934_persstr, + kat934_addin0, kat934_addin1, kat934_retbits +}; +static const struct drbg_kat kat934 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat934_t +}; + +static const unsigned char kat935_entropyin[] = { + 0x42, 0x2d, 0xb7, 0xfa, 0x67, 0x03, 0x4d, 0x9b, 0x77, 0xa6, 0x64, 0x31, + 0x9f, 0x3a, 0x9d, 0xbe, 0x1e, 0x9c, 0x96, 0x64, 0xca, 0x7c, 0x9b, 0x3a, + 0xcd, 0x8d, 0x47, 0xa8, 0x34, 0xfc, 0xcc, 0x2f, +}; +static const unsigned char kat935_nonce[] = {0}; +static const unsigned char kat935_persstr[] = { + 0x95, 0xce, 0x4f, 0x75, 0x4e, 0xa4, 0x40, 0x59, 0x54, 0xfc, 0x05, 0x5f, + 0xbb, 0x8b, 0x7e, 0x9a, 0x6b, 0x25, 0x17, 0xef, 0x97, 0xbc, 0xcc, 0xfc, + 0xb3, 0x9a, 0xee, 0x8e, 0x9f, 0x7a, 0x34, 0x2f, +}; +static const unsigned char kat935_addin0[] = {0}; +static const unsigned char kat935_addin1[] = {0}; +static const unsigned char kat935_retbits[] = { + 0x99, 0x8f, 0x5b, 0x9e, 0x2d, 0xac, 0xe2, 0x4a, 0x46, 0x5f, 0xdf, 0xd0, + 0x26, 0x28, 0xfa, 0xda, 0xdd, 0xfb, 0x42, 0x8d, 0x7a, 0xc5, 0x0c, 0xd0, + 0x35, 0x03, 0xaa, 0xe7, 0x77, 0x9f, 0xca, 0x70, 0x18, 0x23, 0xf2, 0xe0, + 0x5d, 0x1b, 0xe3, 0xe6, 0xe0, 0xd6, 0x61, 0xcd, 0x57, 0xcb, 0xf5, 0xda, + 0x8e, 0x08, 0xa6, 0x41, 0xb0, 0x01, 0x8e, 0x56, 0xd7, 0x57, 0x97, 0x4d, + 0x40, 0xfe, 0x25, 0xe4, +}; +static const struct drbg_kat_no_reseed kat935_t = { + 4, kat935_entropyin, kat935_nonce, kat935_persstr, + kat935_addin0, kat935_addin1, kat935_retbits +}; +static const struct drbg_kat kat935 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat935_t +}; + +static const unsigned char kat936_entropyin[] = { + 0xe5, 0xb2, 0xf8, 0x2d, 0xaf, 0x26, 0x3b, 0x34, 0xb8, 0xc2, 0x1b, 0xdf, + 0xf1, 0x10, 0x37, 0x2a, 0xdd, 0x43, 0xc7, 0xd8, 0xd0, 0xe8, 0x2c, 0x22, + 0xc8, 0xfb, 0xb4, 0x44, 0xda, 0x61, 0xd9, 0xc4, +}; +static const unsigned char kat936_nonce[] = {0}; +static const unsigned char kat936_persstr[] = { + 0x19, 0x11, 0x35, 0x23, 0x55, 0x6c, 0x74, 0xa7, 0xbb, 0x31, 0x32, 0x80, + 0x98, 0xea, 0xa2, 0x5a, 0xc8, 0xb4, 0x2c, 0x47, 0x80, 0x52, 0x47, 0xa0, + 0x16, 0xae, 0x2c, 0xdd, 0x91, 0x39, 0xf5, 0xbf, +}; +static const unsigned char kat936_addin0[] = {0}; +static const unsigned char kat936_addin1[] = {0}; +static const unsigned char kat936_retbits[] = { + 0xb3, 0xb8, 0xab, 0x1d, 0x48, 0x0e, 0x61, 0x23, 0xbf, 0xaa, 0x85, 0xf5, + 0x26, 0xdd, 0x8a, 0x8d, 0xb1, 0x0b, 0xf0, 0xc4, 0xa8, 0x2e, 0x3b, 0x09, + 0xed, 0x73, 0x30, 0x25, 0xb1, 0x9c, 0x08, 0xe4, 0x9f, 0xa3, 0x2a, 0x9a, + 0x6e, 0x8d, 0x52, 0x07, 0xc5, 0xab, 0xcc, 0x9d, 0xcf, 0x5e, 0x36, 0x66, + 0x28, 0x19, 0xdd, 0x6a, 0x50, 0x30, 0x88, 0xf0, 0xd1, 0x8e, 0x48, 0xba, + 0x8d, 0x71, 0xf5, 0x3f, +}; +static const struct drbg_kat_no_reseed kat936_t = { + 5, kat936_entropyin, kat936_nonce, kat936_persstr, + kat936_addin0, kat936_addin1, kat936_retbits +}; +static const struct drbg_kat kat936 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat936_t +}; + +static const unsigned char kat937_entropyin[] = { + 0xc0, 0x82, 0x65, 0x7d, 0xa3, 0xa6, 0x6b, 0x0a, 0xb1, 0x7c, 0x64, 0x79, + 0x27, 0x6a, 0xec, 0xbb, 0x67, 0x98, 0xf0, 0xcc, 0x79, 0x1a, 0xf2, 0xe9, + 0x71, 0x3d, 0x2b, 0x7a, 0x90, 0x45, 0x4f, 0xa6, +}; +static const unsigned char kat937_nonce[] = {0}; +static const unsigned char kat937_persstr[] = { + 0x33, 0x6b, 0xcb, 0x3a, 0x62, 0x37, 0x33, 0xf6, 0x2e, 0xae, 0xa9, 0x70, + 0x22, 0x9c, 0xb4, 0x26, 0xf6, 0x17, 0xa2, 0xca, 0x77, 0xa6, 0x85, 0x86, + 0x58, 0x91, 0x18, 0x84, 0x2c, 0x9f, 0x31, 0x5f, +}; +static const unsigned char kat937_addin0[] = {0}; +static const unsigned char kat937_addin1[] = {0}; +static const unsigned char kat937_retbits[] = { + 0xbb, 0xa3, 0x37, 0xdc, 0xc4, 0xef, 0xa6, 0xc1, 0xe0, 0xb2, 0x4b, 0xad, + 0x11, 0xf9, 0x23, 0x08, 0x05, 0x44, 0xbd, 0x6d, 0x58, 0xf7, 0x9e, 0xa0, + 0x59, 0x23, 0x27, 0xbe, 0x33, 0xb0, 0x53, 0x04, 0xb1, 0x97, 0xa6, 0x77, + 0x0f, 0x9d, 0x2c, 0x17, 0x47, 0xc3, 0x2c, 0x79, 0x2f, 0x80, 0xd7, 0xb0, + 0x48, 0x8b, 0x6c, 0xf8, 0x49, 0x60, 0x48, 0xd4, 0xe4, 0xd5, 0xc6, 0x05, + 0x1b, 0xbd, 0x06, 0xf9, +}; +static const struct drbg_kat_no_reseed kat937_t = { + 6, kat937_entropyin, kat937_nonce, kat937_persstr, + kat937_addin0, kat937_addin1, kat937_retbits +}; +static const struct drbg_kat kat937 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat937_t +}; + +static const unsigned char kat938_entropyin[] = { + 0x20, 0x7c, 0x2e, 0x64, 0xe9, 0x08, 0xf3, 0x0f, 0x83, 0xd3, 0x5d, 0x2a, + 0x1e, 0x78, 0x30, 0x41, 0xfb, 0xab, 0x4a, 0x8e, 0x1a, 0x19, 0xda, 0xb7, + 0x00, 0xf3, 0x02, 0x03, 0x11, 0x58, 0xa2, 0x6b, +}; +static const unsigned char kat938_nonce[] = {0}; +static const unsigned char kat938_persstr[] = { + 0x7b, 0xc5, 0xcf, 0x5c, 0x52, 0x5a, 0x3d, 0x06, 0x19, 0x15, 0x13, 0x53, + 0x41, 0x95, 0xb9, 0x7c, 0x89, 0x68, 0x64, 0x84, 0xbf, 0x04, 0x92, 0xe0, + 0x8a, 0x18, 0xe4, 0xe1, 0xb9, 0x99, 0x15, 0x56, +}; +static const unsigned char kat938_addin0[] = {0}; +static const unsigned char kat938_addin1[] = {0}; +static const unsigned char kat938_retbits[] = { + 0xb0, 0x76, 0x1b, 0x36, 0xa7, 0xd5, 0xd5, 0xb4, 0x7a, 0x72, 0xe5, 0xda, + 0xff, 0xf3, 0x1d, 0xa8, 0xac, 0x15, 0xee, 0xd0, 0x77, 0x99, 0x57, 0x43, + 0x92, 0x2d, 0xf4, 0xdc, 0x11, 0x02, 0xc7, 0xe9, 0xb6, 0x4d, 0xb6, 0x58, + 0x57, 0x35, 0xf0, 0x11, 0xa7, 0x6a, 0x37, 0x8d, 0x8a, 0x7f, 0xff, 0x8e, + 0xda, 0x0f, 0x0a, 0x13, 0x60, 0x54, 0x25, 0xe3, 0x44, 0xbb, 0x50, 0x27, + 0xa2, 0x3c, 0x23, 0x84, +}; +static const struct drbg_kat_no_reseed kat938_t = { + 7, kat938_entropyin, kat938_nonce, kat938_persstr, + kat938_addin0, kat938_addin1, kat938_retbits +}; +static const struct drbg_kat kat938 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat938_t +}; + +static const unsigned char kat939_entropyin[] = { + 0xf2, 0xd9, 0x17, 0x76, 0x69, 0x5a, 0x50, 0x02, 0xaa, 0x86, 0x63, 0x54, + 0x0f, 0x32, 0x9a, 0xd7, 0x24, 0x0a, 0x4a, 0x1b, 0x1e, 0x7d, 0xfc, 0x89, + 0x19, 0xca, 0x0e, 0x83, 0x14, 0x5d, 0xa0, 0x9b, +}; +static const unsigned char kat939_nonce[] = {0}; +static const unsigned char kat939_persstr[] = { + 0x80, 0xc0, 0x30, 0x6c, 0x1f, 0xc4, 0xa5, 0x6b, 0x7c, 0xf8, 0x5c, 0x06, + 0x65, 0xd0, 0x7d, 0xcf, 0x77, 0x61, 0x05, 0x53, 0xd3, 0xbe, 0xb4, 0xcf, + 0xf4, 0x55, 0x93, 0x24, 0x0a, 0x98, 0x63, 0x16, +}; +static const unsigned char kat939_addin0[] = {0}; +static const unsigned char kat939_addin1[] = {0}; +static const unsigned char kat939_retbits[] = { + 0x10, 0x26, 0x23, 0xf2, 0x58, 0xd2, 0x7f, 0xe2, 0x74, 0xd0, 0xbe, 0xe7, + 0x6f, 0x6c, 0xc2, 0x0a, 0x79, 0x04, 0xf7, 0xc8, 0xa1, 0x99, 0x1d, 0xff, + 0x15, 0xb5, 0x5b, 0xaa, 0x92, 0xf1, 0x89, 0x47, 0xbc, 0xd4, 0x00, 0x41, + 0x4b, 0x28, 0x03, 0x77, 0xb3, 0x7a, 0x1d, 0x13, 0x14, 0x07, 0x34, 0x3a, + 0x87, 0xf1, 0x0a, 0x42, 0xbd, 0x60, 0x01, 0x0a, 0xd7, 0xb8, 0x58, 0x0a, + 0x49, 0x80, 0xdf, 0x14, +}; +static const struct drbg_kat_no_reseed kat939_t = { + 8, kat939_entropyin, kat939_nonce, kat939_persstr, + kat939_addin0, kat939_addin1, kat939_retbits +}; +static const struct drbg_kat kat939 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat939_t +}; + +static const unsigned char kat940_entropyin[] = { + 0x73, 0x45, 0x6d, 0xf4, 0xea, 0x33, 0xf0, 0x93, 0x15, 0xf5, 0x52, 0x7f, + 0xdd, 0xb2, 0x7f, 0x19, 0x5f, 0xa6, 0x22, 0x98, 0xd2, 0x98, 0xf6, 0xca, + 0x5f, 0x40, 0x23, 0x75, 0x8f, 0x35, 0xeb, 0xbf, +}; +static const unsigned char kat940_nonce[] = {0}; +static const unsigned char kat940_persstr[] = { + 0x5b, 0xdc, 0x81, 0x79, 0x75, 0xa6, 0x24, 0x15, 0xad, 0x32, 0x27, 0xc3, + 0xef, 0x89, 0x06, 0x09, 0x98, 0xfc, 0x91, 0x30, 0xb3, 0x00, 0x8c, 0x7b, + 0xb9, 0x83, 0x07, 0xc9, 0x64, 0xc5, 0x63, 0x19, +}; +static const unsigned char kat940_addin0[] = {0}; +static const unsigned char kat940_addin1[] = {0}; +static const unsigned char kat940_retbits[] = { + 0xfc, 0x88, 0x67, 0x1d, 0x75, 0x83, 0x34, 0xf2, 0x8d, 0x97, 0xc4, 0x34, + 0x60, 0x79, 0xba, 0xf8, 0x0a, 0x3a, 0xc5, 0x19, 0x19, 0xd5, 0xb2, 0x47, + 0x67, 0x00, 0x73, 0x19, 0x9c, 0x89, 0xaf, 0xc8, 0xfb, 0xda, 0x22, 0x19, + 0x37, 0xc0, 0x6a, 0x78, 0xd3, 0x66, 0x3e, 0x67, 0x94, 0xe6, 0x64, 0x3c, + 0x4f, 0x4a, 0x78, 0x28, 0x79, 0xca, 0xda, 0x5c, 0x76, 0x5b, 0xf6, 0xb7, + 0xbd, 0xf0, 0x0a, 0x8b, +}; +static const struct drbg_kat_no_reseed kat940_t = { + 9, kat940_entropyin, kat940_nonce, kat940_persstr, + kat940_addin0, kat940_addin1, kat940_retbits +}; +static const struct drbg_kat kat940 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat940_t +}; + +static const unsigned char kat941_entropyin[] = { + 0xfe, 0x48, 0x32, 0xc4, 0x93, 0xc5, 0x36, 0x55, 0x85, 0x9c, 0x05, 0xd0, + 0x50, 0x1e, 0xb0, 0x01, 0x56, 0x10, 0xc4, 0x25, 0x76, 0x9c, 0x9b, 0x66, + 0xff, 0xfb, 0x13, 0x63, 0xab, 0x8c, 0xf8, 0x59, +}; +static const unsigned char kat941_nonce[] = {0}; +static const unsigned char kat941_persstr[] = { + 0x65, 0x40, 0xeb, 0xcc, 0xad, 0xf8, 0x32, 0x8b, 0x7b, 0x4a, 0x34, 0xc3, + 0x2b, 0x7f, 0x01, 0xf9, 0x81, 0x88, 0x90, 0x37, 0xd0, 0x45, 0x15, 0x9a, + 0x37, 0x9b, 0xe9, 0xcc, 0xd6, 0x80, 0x0e, 0x33, +}; +static const unsigned char kat941_addin0[] = {0}; +static const unsigned char kat941_addin1[] = {0}; +static const unsigned char kat941_retbits[] = { + 0xa8, 0x5b, 0x86, 0x8b, 0x92, 0x0b, 0x7a, 0x24, 0xcd, 0xe0, 0xb8, 0xc8, + 0xbd, 0x65, 0x64, 0x38, 0xe6, 0x11, 0x3e, 0x7e, 0xb3, 0x1a, 0xf1, 0x6f, + 0x63, 0x61, 0x35, 0xf9, 0x1b, 0x52, 0x87, 0xd4, 0xbe, 0x39, 0xe4, 0xac, + 0xca, 0x8c, 0xac, 0xf2, 0x1b, 0x3d, 0x7f, 0xf5, 0x17, 0xeb, 0xf6, 0xf9, + 0xff, 0xd3, 0x97, 0x99, 0xff, 0x48, 0x9b, 0x5d, 0xac, 0x62, 0x8e, 0x24, + 0xc2, 0x23, 0x63, 0x5a, +}; +static const struct drbg_kat_no_reseed kat941_t = { + 10, kat941_entropyin, kat941_nonce, kat941_persstr, + kat941_addin0, kat941_addin1, kat941_retbits +}; +static const struct drbg_kat kat941 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat941_t +}; + +static const unsigned char kat942_entropyin[] = { + 0x47, 0x2f, 0x8a, 0xd0, 0x42, 0x8a, 0xa5, 0xa5, 0xb6, 0x33, 0x62, 0x28, + 0xf8, 0x83, 0x9b, 0xe6, 0x61, 0x92, 0x1e, 0xb7, 0xf5, 0xc7, 0xec, 0x24, + 0x06, 0xec, 0x4f, 0x74, 0x7b, 0xa4, 0x8e, 0x68, +}; +static const unsigned char kat942_nonce[] = {0}; +static const unsigned char kat942_persstr[] = { + 0x46, 0xb3, 0xb7, 0xb9, 0xcf, 0xed, 0xd0, 0x9f, 0x4a, 0x51, 0xea, 0xbd, + 0x0b, 0x54, 0x00, 0xcf, 0xe5, 0xeb, 0xf1, 0x5a, 0x5f, 0xf3, 0x86, 0x50, + 0x6c, 0x13, 0xd6, 0x55, 0xf5, 0x91, 0x0e, 0x91, +}; +static const unsigned char kat942_addin0[] = {0}; +static const unsigned char kat942_addin1[] = {0}; +static const unsigned char kat942_retbits[] = { + 0xd9, 0xaf, 0x4c, 0x41, 0x24, 0xb8, 0x8c, 0x0e, 0x76, 0x92, 0x1f, 0x79, + 0x7e, 0x0c, 0xd3, 0x12, 0xf2, 0x38, 0xde, 0x7c, 0xaa, 0xf8, 0x09, 0xa1, + 0x0b, 0xc0, 0xdf, 0x90, 0x90, 0xb2, 0x13, 0x25, 0xf7, 0x52, 0x30, 0x9d, + 0x9a, 0xa6, 0xbb, 0x2c, 0x6f, 0xc5, 0x0d, 0x40, 0xf4, 0x9c, 0xe0, 0xa1, + 0x59, 0x5c, 0x0d, 0xea, 0x0f, 0xd2, 0xca, 0x9c, 0x1f, 0x3f, 0x91, 0x0e, + 0x03, 0x8a, 0x55, 0x82, +}; +static const struct drbg_kat_no_reseed kat942_t = { + 11, kat942_entropyin, kat942_nonce, kat942_persstr, + kat942_addin0, kat942_addin1, kat942_retbits +}; +static const struct drbg_kat kat942 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat942_t +}; + +static const unsigned char kat943_entropyin[] = { + 0xe2, 0x2c, 0x61, 0xbe, 0xe8, 0x33, 0x39, 0xfa, 0x8f, 0x72, 0xb0, 0x19, + 0x1c, 0xa5, 0xcd, 0x13, 0x56, 0xd9, 0x12, 0x75, 0xd3, 0x74, 0xf0, 0x40, + 0x14, 0x5e, 0x96, 0xae, 0x45, 0x0e, 0x6a, 0x9b, +}; +static const unsigned char kat943_nonce[] = {0}; +static const unsigned char kat943_persstr[] = { + 0xe5, 0x4a, 0xe2, 0xd8, 0xa4, 0xcd, 0x7e, 0x61, 0x4f, 0xe7, 0x78, 0x2c, + 0xf9, 0x6f, 0xce, 0x02, 0x33, 0x11, 0x1e, 0x2d, 0xa3, 0x48, 0x29, 0x82, + 0x6f, 0x7b, 0xe8, 0x4c, 0x17, 0x74, 0x4a, 0xba, +}; +static const unsigned char kat943_addin0[] = {0}; +static const unsigned char kat943_addin1[] = {0}; +static const unsigned char kat943_retbits[] = { + 0x37, 0x10, 0x39, 0x09, 0x40, 0xf6, 0x41, 0xc9, 0x9f, 0x03, 0x2c, 0x1a, + 0x1b, 0x9a, 0xdd, 0xf6, 0xbb, 0x91, 0xeb, 0xc4, 0xab, 0x27, 0x8f, 0x7a, + 0x1e, 0xaf, 0xa8, 0x60, 0x92, 0xb5, 0x5b, 0x52, 0xb9, 0x72, 0x1f, 0x4b, + 0x5e, 0xa3, 0x79, 0x3b, 0x4c, 0xfb, 0x4b, 0xa8, 0xbd, 0xb4, 0x94, 0x29, + 0x33, 0x1a, 0xc7, 0xf1, 0x7c, 0x66, 0xa4, 0x77, 0x1b, 0x29, 0xfa, 0x2f, + 0xf0, 0xe1, 0x39, 0x09, +}; +static const struct drbg_kat_no_reseed kat943_t = { + 12, kat943_entropyin, kat943_nonce, kat943_persstr, + kat943_addin0, kat943_addin1, kat943_retbits +}; +static const struct drbg_kat kat943 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat943_t +}; + +static const unsigned char kat944_entropyin[] = { + 0xf8, 0x51, 0xb7, 0xec, 0xef, 0x38, 0x42, 0x2b, 0x43, 0x7d, 0x4d, 0xbd, + 0xd6, 0x3a, 0x11, 0x86, 0xa1, 0x5b, 0x3b, 0xac, 0xe8, 0x50, 0x8a, 0x2a, + 0x81, 0xd5, 0xca, 0xcc, 0x5a, 0xc5, 0xa9, 0x68, +}; +static const unsigned char kat944_nonce[] = {0}; +static const unsigned char kat944_persstr[] = { + 0x83, 0xe4, 0x31, 0x5a, 0x6c, 0x4c, 0xfa, 0x98, 0x52, 0xc9, 0x10, 0x69, + 0xa9, 0xa1, 0xc9, 0x14, 0x0a, 0xd6, 0x7f, 0xe9, 0x3e, 0xe3, 0x63, 0x3e, + 0x27, 0x93, 0x7f, 0x78, 0xfc, 0x8a, 0x11, 0xa1, +}; +static const unsigned char kat944_addin0[] = {0}; +static const unsigned char kat944_addin1[] = {0}; +static const unsigned char kat944_retbits[] = { + 0xd1, 0xa4, 0x12, 0xcc, 0x86, 0xf7, 0x9a, 0xe7, 0xc4, 0x79, 0xcf, 0xed, + 0x85, 0x90, 0xf3, 0x10, 0xe2, 0x2a, 0x68, 0x84, 0x51, 0xb6, 0x0a, 0xa8, + 0x63, 0x0f, 0xc8, 0xc2, 0xb1, 0xee, 0x0f, 0x94, 0x80, 0x6f, 0x75, 0x97, + 0x5c, 0x29, 0xdc, 0xe0, 0xe3, 0x68, 0x54, 0xfa, 0x7b, 0x86, 0x04, 0xc5, + 0xf5, 0x4d, 0xb9, 0xf6, 0x9c, 0x8e, 0x19, 0x78, 0x47, 0x2d, 0x50, 0x81, + 0xec, 0x7e, 0x15, 0x53, +}; +static const struct drbg_kat_no_reseed kat944_t = { + 13, kat944_entropyin, kat944_nonce, kat944_persstr, + kat944_addin0, kat944_addin1, kat944_retbits +}; +static const struct drbg_kat kat944 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat944_t +}; + +static const unsigned char kat945_entropyin[] = { + 0x31, 0x5b, 0xbe, 0x53, 0x0e, 0xcf, 0xa4, 0x4e, 0xb2, 0x72, 0x50, 0xf6, + 0xd2, 0x0f, 0x4b, 0x6c, 0x64, 0x8e, 0x42, 0xc6, 0x1f, 0x6f, 0xae, 0xd6, + 0xfe, 0x48, 0x3f, 0x26, 0xf6, 0xf8, 0x42, 0x7f, +}; +static const unsigned char kat945_nonce[] = {0}; +static const unsigned char kat945_persstr[] = { + 0xef, 0xa1, 0x0f, 0xa5, 0xbc, 0x1e, 0x44, 0x5c, 0x03, 0x16, 0x20, 0xeb, + 0xb3, 0x7e, 0x75, 0x52, 0xc2, 0xdf, 0xa0, 0x83, 0x07, 0xdf, 0xe5, 0x3c, + 0x1b, 0x8e, 0x74, 0xec, 0x55, 0x05, 0x03, 0x56, +}; +static const unsigned char kat945_addin0[] = {0}; +static const unsigned char kat945_addin1[] = {0}; +static const unsigned char kat945_retbits[] = { + 0xc5, 0x92, 0xd9, 0xe7, 0xb6, 0x74, 0x15, 0xd0, 0x9d, 0xfc, 0x46, 0xd3, + 0x03, 0x9b, 0x3a, 0xfc, 0x1c, 0xe6, 0x6a, 0xfa, 0x98, 0xe8, 0x79, 0x34, + 0x37, 0xcf, 0xcb, 0x5a, 0xb3, 0xa1, 0x22, 0xc6, 0x36, 0xf0, 0xa8, 0x4e, + 0xdc, 0x04, 0x09, 0x9d, 0x38, 0x19, 0xd7, 0xfa, 0x30, 0xd1, 0x96, 0x88, + 0x0d, 0x91, 0x99, 0xde, 0x17, 0xf7, 0x17, 0x0d, 0xe7, 0x25, 0xf3, 0x65, + 0x0e, 0xf3, 0x4b, 0x19, +}; +static const struct drbg_kat_no_reseed kat945_t = { + 14, kat945_entropyin, kat945_nonce, kat945_persstr, + kat945_addin0, kat945_addin1, kat945_retbits +}; +static const struct drbg_kat kat945 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat945_t +}; + +static const unsigned char kat946_entropyin[] = { + 0xb4, 0xc7, 0x40, 0xb2, 0xf8, 0xf2, 0xb7, 0x14, 0xcc, 0xdb, 0x8c, 0x58, + 0xb9, 0x76, 0x0d, 0xc6, 0xc7, 0x5d, 0xc4, 0x64, 0x54, 0x27, 0xf3, 0xd4, + 0x24, 0x13, 0x13, 0xda, 0x26, 0x43, 0x06, 0x4b, +}; +static const unsigned char kat946_nonce[] = {0}; +static const unsigned char kat946_persstr[] = { + 0xd1, 0xb2, 0x1b, 0x78, 0xca, 0x31, 0x2c, 0x96, 0xcf, 0xf6, 0x73, 0xf0, + 0x8c, 0x4b, 0xc7, 0x8b, 0x06, 0x85, 0x22, 0xc6, 0x01, 0xf5, 0x39, 0x41, + 0x04, 0x6d, 0x9a, 0xae, 0xe0, 0xf4, 0x28, 0x98, +}; +static const unsigned char kat946_addin0[] = { + 0x8c, 0x16, 0xff, 0x82, 0xbd, 0x60, 0xf9, 0x2c, 0x73, 0x7c, 0x77, 0x83, + 0x6f, 0x7c, 0x66, 0x3a, 0xc9, 0x73, 0x9d, 0x3e, 0x74, 0xd1, 0xcf, 0x5f, + 0x17, 0x35, 0x22, 0x7d, 0x83, 0x2b, 0xc0, 0xe8, +}; +static const unsigned char kat946_addin1[] = { + 0x13, 0xfa, 0x8e, 0x83, 0xc9, 0xe9, 0xa5, 0x58, 0x22, 0xd9, 0xfe, 0xf7, + 0xe6, 0x9f, 0x7c, 0xd0, 0x48, 0x03, 0x6b, 0x75, 0xdf, 0x0c, 0xac, 0x04, + 0xa2, 0x81, 0x56, 0xd2, 0x98, 0x6a, 0x19, 0xa1, +}; +static const unsigned char kat946_retbits[] = { + 0x4d, 0x73, 0xd7, 0xb7, 0x51, 0xd9, 0x09, 0x59, 0xcf, 0x09, 0x63, 0x60, + 0x52, 0x59, 0x47, 0xc2, 0xcb, 0x54, 0x56, 0x5f, 0x24, 0x1a, 0xca, 0xbd, + 0x77, 0xbc, 0x16, 0xd9, 0x18, 0x9f, 0x70, 0xb7, 0x6b, 0x58, 0xfd, 0xa7, + 0x12, 0x00, 0xb0, 0xb4, 0x90, 0x2d, 0x10, 0x06, 0x77, 0x8d, 0xd1, 0xba, + 0x76, 0x3b, 0x03, 0xfb, 0xca, 0xd6, 0xe6, 0x05, 0x16, 0x22, 0x1f, 0xd8, + 0x4a, 0xd2, 0x34, 0xfc, +}; +static const struct drbg_kat_no_reseed kat946_t = { + 0, kat946_entropyin, kat946_nonce, kat946_persstr, + kat946_addin0, kat946_addin1, kat946_retbits +}; +static const struct drbg_kat kat946 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat946_t +}; + +static const unsigned char kat947_entropyin[] = { + 0x63, 0x21, 0x08, 0x97, 0x6c, 0x11, 0xa9, 0x0e, 0x03, 0x0e, 0x4c, 0x6c, + 0xb1, 0x5d, 0x56, 0xbd, 0x79, 0xed, 0x3a, 0x94, 0x42, 0x41, 0x61, 0x09, + 0x3d, 0xca, 0xca, 0x09, 0x3b, 0x05, 0x13, 0xa3, +}; +static const unsigned char kat947_nonce[] = {0}; +static const unsigned char kat947_persstr[] = { + 0x96, 0xf9, 0xc2, 0x50, 0x76, 0x37, 0x9a, 0x4d, 0x52, 0xab, 0x9e, 0x6c, + 0xc6, 0x2c, 0x7a, 0xcd, 0x32, 0x91, 0xe3, 0x88, 0x58, 0xaf, 0xf9, 0x8f, + 0x8c, 0x52, 0xfb, 0xdb, 0xcc, 0x4c, 0x5f, 0xef, +}; +static const unsigned char kat947_addin0[] = { + 0x4e, 0x8d, 0x8f, 0xef, 0x9e, 0x5c, 0xae, 0x9f, 0x8e, 0xa2, 0x32, 0xf8, + 0x01, 0x21, 0x08, 0x71, 0xa2, 0xb4, 0xcb, 0xf1, 0x1b, 0x75, 0xea, 0x11, + 0xac, 0xd7, 0xa1, 0x01, 0xfa, 0xee, 0x75, 0x6f, +}; +static const unsigned char kat947_addin1[] = { + 0x41, 0x9f, 0x71, 0x7f, 0x34, 0x24, 0x9a, 0x0b, 0xb9, 0xa8, 0x1b, 0x27, + 0x3f, 0x52, 0x8c, 0x2a, 0x46, 0x00, 0x7f, 0x3d, 0xef, 0x9f, 0xbc, 0xd2, + 0x96, 0x89, 0xcf, 0x25, 0x10, 0x52, 0x63, 0x47, +}; +static const unsigned char kat947_retbits[] = { + 0xfe, 0x0f, 0xbb, 0x55, 0x04, 0xc5, 0xbb, 0xe4, 0xe4, 0xbe, 0xa2, 0xc5, + 0x91, 0x3b, 0x90, 0x55, 0x19, 0x78, 0x77, 0x1c, 0xf3, 0x19, 0x98, 0x2d, + 0x7e, 0xb7, 0xb7, 0x6a, 0x64, 0x49, 0x02, 0xef, 0x91, 0x12, 0xd9, 0x39, + 0x7c, 0x9c, 0x78, 0x4e, 0x33, 0xa1, 0x7c, 0xd5, 0x92, 0xe9, 0x24, 0xa8, + 0x7d, 0xde, 0xb5, 0x17, 0xff, 0x75, 0x28, 0x3d, 0xdd, 0x9b, 0x25, 0xb3, + 0x16, 0xd7, 0x5f, 0x8b, +}; +static const struct drbg_kat_no_reseed kat947_t = { + 1, kat947_entropyin, kat947_nonce, kat947_persstr, + kat947_addin0, kat947_addin1, kat947_retbits +}; +static const struct drbg_kat kat947 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat947_t +}; + +static const unsigned char kat948_entropyin[] = { + 0xca, 0xd4, 0x37, 0x3e, 0xb1, 0x8b, 0xf4, 0x91, 0x4f, 0x09, 0x73, 0x74, + 0xff, 0x20, 0x98, 0x78, 0x9b, 0x05, 0xa0, 0x4a, 0x9d, 0x1b, 0xf6, 0xf5, + 0xdb, 0x95, 0x71, 0x08, 0x08, 0xde, 0x96, 0xc0, +}; +static const unsigned char kat948_nonce[] = {0}; +static const unsigned char kat948_persstr[] = { + 0xca, 0x24, 0x00, 0xae, 0xe4, 0x98, 0xa7, 0x1f, 0xac, 0xe7, 0x34, 0x51, + 0x2a, 0x43, 0xff, 0xfb, 0x89, 0xe7, 0x4c, 0xf8, 0x18, 0xee, 0x5b, 0x2b, + 0x01, 0x7c, 0xf8, 0xb7, 0x4a, 0xa7, 0x16, 0x96, +}; +static const unsigned char kat948_addin0[] = { + 0x43, 0x0b, 0x47, 0x54, 0x0c, 0x77, 0x1f, 0x70, 0x86, 0x15, 0xd2, 0xa5, + 0x2e, 0x9f, 0x2a, 0x16, 0x7e, 0x5b, 0x08, 0x14, 0x21, 0x17, 0x83, 0x32, + 0x87, 0xd5, 0xff, 0x0e, 0x39, 0xfb, 0x44, 0x98, +}; +static const unsigned char kat948_addin1[] = { + 0x47, 0x4a, 0x3d, 0xfe, 0x1c, 0x10, 0x49, 0x38, 0x55, 0x67, 0xb9, 0x6e, + 0xb9, 0x92, 0x70, 0x93, 0x0f, 0x11, 0x81, 0xe3, 0x7d, 0x5e, 0x37, 0xd1, + 0xd0, 0x49, 0x5b, 0x98, 0x5b, 0xf1, 0x5d, 0xb7, +}; +static const unsigned char kat948_retbits[] = { + 0x17, 0x62, 0x79, 0x95, 0x9f, 0xee, 0xb2, 0x6e, 0xce, 0x7e, 0x3b, 0x83, + 0x0a, 0x2b, 0xb1, 0x4f, 0xee, 0xbb, 0x0b, 0xcc, 0xfd, 0x2f, 0x4c, 0x75, + 0xd1, 0xe1, 0xe8, 0x30, 0xb3, 0xd7, 0x82, 0xdd, 0xca, 0xf9, 0x5d, 0xfe, + 0x3d, 0x5c, 0x4d, 0x3c, 0xd2, 0xb1, 0xe6, 0x71, 0x50, 0x5d, 0xa3, 0xf6, + 0x17, 0xc5, 0xe0, 0x2a, 0x80, 0x4d, 0xa2, 0xac, 0x48, 0x42, 0xe8, 0x6a, + 0x37, 0x90, 0x1b, 0xc9, +}; +static const struct drbg_kat_no_reseed kat948_t = { + 2, kat948_entropyin, kat948_nonce, kat948_persstr, + kat948_addin0, kat948_addin1, kat948_retbits +}; +static const struct drbg_kat kat948 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat948_t +}; + +static const unsigned char kat949_entropyin[] = { + 0xa8, 0x0c, 0x79, 0xd3, 0x10, 0xab, 0xec, 0x8a, 0xe3, 0x3b, 0x0d, 0x37, + 0x09, 0x22, 0xea, 0x2f, 0xed, 0x11, 0x0a, 0x40, 0xe1, 0xb7, 0x4b, 0xcc, + 0x17, 0xf7, 0xcc, 0xa3, 0xfc, 0x26, 0x11, 0x37, +}; +static const unsigned char kat949_nonce[] = {0}; +static const unsigned char kat949_persstr[] = { + 0xbb, 0x89, 0x1b, 0x0c, 0xb5, 0xd0, 0x02, 0xaf, 0xa5, 0x09, 0xab, 0xff, + 0xca, 0xeb, 0x7b, 0x18, 0xb5, 0x96, 0x6e, 0xfb, 0x43, 0x5d, 0x13, 0x9e, + 0x79, 0x2e, 0xb3, 0x02, 0xb1, 0x08, 0x9a, 0x67, +}; +static const unsigned char kat949_addin0[] = { + 0xa9, 0xc9, 0x16, 0xc2, 0xd6, 0x68, 0xfa, 0x11, 0x2f, 0x2a, 0x43, 0xb2, + 0x2d, 0x14, 0x31, 0xca, 0xde, 0x79, 0x5e, 0xcc, 0x34, 0x00, 0x21, 0xd2, + 0x9f, 0x4a, 0x4a, 0xa9, 0x72, 0x04, 0x69, 0x61, +}; +static const unsigned char kat949_addin1[] = { + 0xb2, 0xdb, 0x3f, 0x33, 0xb6, 0xb5, 0xe4, 0x8b, 0x30, 0x59, 0x69, 0x61, + 0x79, 0xf4, 0x78, 0xcf, 0x53, 0x9a, 0x60, 0x03, 0x8d, 0xef, 0x7f, 0xc7, + 0xd9, 0x9b, 0xaa, 0x4f, 0x86, 0x7f, 0x8d, 0xea, +}; +static const unsigned char kat949_retbits[] = { + 0x6b, 0xe8, 0x7a, 0xf7, 0x44, 0xde, 0xbf, 0x0b, 0xda, 0x8a, 0xea, 0x3d, + 0x9a, 0x76, 0x14, 0x31, 0xeb, 0x25, 0xb7, 0xf4, 0xfd, 0xa2, 0xbf, 0xe0, + 0xb6, 0xd3, 0x54, 0x2c, 0x5c, 0x66, 0x4c, 0x80, 0x29, 0x9c, 0x5c, 0x53, + 0xf3, 0x2c, 0x01, 0x8b, 0x3e, 0xac, 0x9a, 0xa7, 0xfb, 0xba, 0xd4, 0xb0, + 0x1c, 0x1f, 0x3b, 0xad, 0x0b, 0x8c, 0x71, 0xb0, 0x71, 0x85, 0xc8, 0x0d, + 0xa8, 0xf1, 0x9a, 0xda, +}; +static const struct drbg_kat_no_reseed kat949_t = { + 3, kat949_entropyin, kat949_nonce, kat949_persstr, + kat949_addin0, kat949_addin1, kat949_retbits +}; +static const struct drbg_kat kat949 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat949_t +}; + +static const unsigned char kat950_entropyin[] = { + 0x5d, 0xbb, 0xa4, 0xe2, 0xfd, 0xff, 0xc9, 0x55, 0x18, 0xdc, 0xcb, 0xa9, + 0xfb, 0x68, 0x5d, 0x40, 0xd6, 0xf9, 0x54, 0xf9, 0x30, 0x41, 0x15, 0x9c, + 0xb0, 0x1b, 0xe8, 0x2a, 0xf5, 0xa7, 0x0e, 0xe0, +}; +static const unsigned char kat950_nonce[] = {0}; +static const unsigned char kat950_persstr[] = { + 0x2a, 0x4c, 0x18, 0x58, 0xd9, 0x8f, 0x46, 0x6b, 0x7e, 0x51, 0xf9, 0xe2, + 0xd0, 0xfe, 0x34, 0x79, 0xa9, 0x40, 0xe6, 0x15, 0x5d, 0x33, 0xf4, 0x0f, + 0x4c, 0x00, 0x90, 0xb8, 0x71, 0xd4, 0xc8, 0xfd, +}; +static const unsigned char kat950_addin0[] = { + 0x2a, 0x54, 0xc5, 0x2f, 0x84, 0x57, 0xc3, 0x71, 0x9d, 0xdb, 0xb9, 0x0f, + 0x31, 0xdf, 0x49, 0x23, 0x87, 0x33, 0x5a, 0x24, 0xe1, 0x75, 0x6b, 0xdd, + 0x18, 0x77, 0x37, 0xf9, 0xf4, 0x33, 0x09, 0xd2, +}; +static const unsigned char kat950_addin1[] = { + 0xfc, 0xd0, 0x84, 0xe2, 0xf3, 0x77, 0x79, 0xab, 0x82, 0x8d, 0xb9, 0x2e, + 0xf6, 0x4d, 0xb4, 0x08, 0x8b, 0xfa, 0x66, 0xda, 0xf1, 0x62, 0xc9, 0x62, + 0xfa, 0x9d, 0xdd, 0x12, 0x43, 0xc1, 0x27, 0x4e, +}; +static const unsigned char kat950_retbits[] = { + 0xad, 0x0a, 0x66, 0x1c, 0x1e, 0x5c, 0x3f, 0x44, 0x64, 0x20, 0xc0, 0x76, + 0x1f, 0x34, 0xfe, 0xb4, 0x12, 0xac, 0xe4, 0xa3, 0x7c, 0x2c, 0xdb, 0xe3, + 0x64, 0x79, 0x27, 0xb1, 0x0c, 0xa5, 0xe7, 0x68, 0x90, 0xc8, 0xba, 0xc1, + 0x0a, 0x98, 0xbe, 0xfb, 0x1b, 0xc0, 0xd0, 0xab, 0x78, 0xab, 0xd6, 0xbe, + 0xf5, 0x88, 0xe6, 0x3c, 0x91, 0x0d, 0x76, 0xc9, 0xf1, 0xbd, 0x40, 0xb8, + 0xbe, 0x35, 0x3f, 0x3d, +}; +static const struct drbg_kat_no_reseed kat950_t = { + 4, kat950_entropyin, kat950_nonce, kat950_persstr, + kat950_addin0, kat950_addin1, kat950_retbits +}; +static const struct drbg_kat kat950 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat950_t +}; + +static const unsigned char kat951_entropyin[] = { + 0xb0, 0x67, 0x3a, 0xca, 0xef, 0x01, 0x00, 0x18, 0x10, 0x45, 0x8e, 0x7e, + 0x3b, 0xf7, 0x38, 0x6f, 0xfa, 0xb4, 0x94, 0x8a, 0x68, 0x1a, 0x0a, 0x34, + 0xca, 0xe5, 0x8e, 0x9e, 0xc3, 0xed, 0xf6, 0xca, +}; +static const unsigned char kat951_nonce[] = {0}; +static const unsigned char kat951_persstr[] = { + 0xeb, 0x85, 0xb2, 0x1d, 0x4c, 0xf1, 0x17, 0x1c, 0x22, 0xf2, 0xe5, 0xb4, + 0x57, 0x3b, 0x03, 0x6f, 0x6b, 0x63, 0x76, 0x3e, 0x9f, 0xb1, 0x86, 0x7c, + 0x7e, 0xac, 0x3c, 0x4d, 0x01, 0x99, 0xb1, 0x09, +}; +static const unsigned char kat951_addin0[] = { + 0xab, 0xda, 0x36, 0x99, 0x13, 0x39, 0x04, 0x00, 0x23, 0x22, 0x2e, 0x2f, + 0x38, 0xf9, 0xe5, 0x1d, 0xe3, 0x3d, 0x8e, 0x61, 0x3e, 0xe5, 0xdc, 0x2a, + 0xdc, 0x2d, 0x9c, 0xd2, 0x87, 0x12, 0x2f, 0xc2, +}; +static const unsigned char kat951_addin1[] = { + 0xc2, 0x7e, 0x58, 0x99, 0xbd, 0x61, 0xfa, 0x08, 0x5b, 0x1f, 0x02, 0xf7, + 0x41, 0x12, 0x54, 0x3f, 0xfe, 0xb3, 0x54, 0xb6, 0x6c, 0x00, 0x5b, 0x37, + 0xf4, 0x65, 0x83, 0x67, 0x9b, 0xdd, 0x5f, 0x07, +}; +static const unsigned char kat951_retbits[] = { + 0x3f, 0x41, 0x2c, 0xba, 0x59, 0x8f, 0xac, 0x33, 0xbf, 0x9e, 0x00, 0x17, + 0x69, 0x1f, 0xf4, 0xb7, 0x19, 0x00, 0x47, 0x5b, 0x31, 0x15, 0x59, 0x84, + 0xbb, 0x6c, 0xee, 0x49, 0x1d, 0x3b, 0x65, 0xf7, 0xc1, 0x71, 0x22, 0xdf, + 0xe2, 0x3a, 0x26, 0xe1, 0x69, 0xa1, 0x6f, 0xe9, 0x91, 0xba, 0x12, 0x88, + 0x47, 0xdd, 0x2d, 0xb9, 0xe6, 0x44, 0xe9, 0xc6, 0x0b, 0xb5, 0x52, 0x46, + 0x13, 0xf3, 0x77, 0x6c, +}; +static const struct drbg_kat_no_reseed kat951_t = { + 5, kat951_entropyin, kat951_nonce, kat951_persstr, + kat951_addin0, kat951_addin1, kat951_retbits +}; +static const struct drbg_kat kat951 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat951_t +}; + +static const unsigned char kat952_entropyin[] = { + 0xd8, 0xad, 0x4c, 0x58, 0x08, 0xcf, 0xe0, 0xd9, 0x56, 0x29, 0xaf, 0x69, + 0xa9, 0x98, 0xdb, 0x8d, 0xf8, 0x7c, 0x17, 0x6b, 0x81, 0x28, 0xcb, 0x1c, + 0xf8, 0x22, 0xcd, 0x7a, 0x35, 0xf5, 0x36, 0xe4, +}; +static const unsigned char kat952_nonce[] = {0}; +static const unsigned char kat952_persstr[] = { + 0x6d, 0xff, 0x97, 0x10, 0x0c, 0xa5, 0x3e, 0x51, 0xe9, 0x81, 0x35, 0x13, + 0x88, 0xba, 0x48, 0xf2, 0xb8, 0x58, 0xd2, 0xf2, 0x0c, 0x2d, 0x60, 0xf8, + 0x60, 0xdb, 0x42, 0x01, 0xa9, 0x90, 0x2c, 0x11, +}; +static const unsigned char kat952_addin0[] = { + 0x43, 0x9e, 0xb8, 0xeb, 0x10, 0x01, 0xe1, 0xc9, 0x8d, 0x55, 0xfc, 0x69, + 0x99, 0x6e, 0x17, 0x6d, 0x30, 0xc2, 0xb5, 0x5d, 0x40, 0xe0, 0xce, 0x3a, + 0x4e, 0x40, 0xff, 0xed, 0x6f, 0xb9, 0xf5, 0x48, +}; +static const unsigned char kat952_addin1[] = { + 0xae, 0xf5, 0x77, 0xdc, 0xd6, 0x98, 0xba, 0x8e, 0xed, 0x6f, 0x7a, 0x8f, + 0x75, 0x63, 0xa7, 0xc1, 0xc0, 0xa1, 0x53, 0xce, 0x83, 0x6b, 0x2f, 0x6b, + 0xb2, 0x4b, 0x3c, 0xef, 0x81, 0xc2, 0x03, 0x43, +}; +static const unsigned char kat952_retbits[] = { + 0x04, 0x9c, 0x36, 0xad, 0x78, 0x4d, 0x2c, 0x3f, 0xe0, 0x09, 0x35, 0x13, + 0xb2, 0x96, 0x48, 0xeb, 0x8f, 0x43, 0xbe, 0xa9, 0x19, 0xf2, 0xf5, 0x26, + 0x19, 0x7f, 0x99, 0x14, 0xbe, 0x45, 0xe1, 0x63, 0xe8, 0x7e, 0xd1, 0xcf, + 0xcf, 0x88, 0xef, 0x16, 0x2c, 0xdf, 0x58, 0x7a, 0xe2, 0x2f, 0xbe, 0x08, + 0x74, 0x42, 0x25, 0x8b, 0x9c, 0x4e, 0x07, 0x68, 0x3e, 0x00, 0x5d, 0x96, + 0x34, 0x73, 0x61, 0x03, +}; +static const struct drbg_kat_no_reseed kat952_t = { + 6, kat952_entropyin, kat952_nonce, kat952_persstr, + kat952_addin0, kat952_addin1, kat952_retbits +}; +static const struct drbg_kat kat952 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat952_t +}; + +static const unsigned char kat953_entropyin[] = { + 0xff, 0x0a, 0xb6, 0x9d, 0xb9, 0xfc, 0x39, 0x48, 0x35, 0x3a, 0xcf, 0x8b, + 0xde, 0x34, 0xb8, 0x84, 0x2b, 0x57, 0x16, 0x94, 0xed, 0x10, 0xe2, 0xad, + 0xfe, 0x61, 0x6b, 0xa1, 0x62, 0x73, 0xce, 0x88, +}; +static const unsigned char kat953_nonce[] = {0}; +static const unsigned char kat953_persstr[] = { + 0x3d, 0x6a, 0x74, 0xd6, 0x92, 0xc9, 0x0c, 0xc7, 0x71, 0xd3, 0xec, 0x37, + 0x4a, 0xca, 0x83, 0xbb, 0xa7, 0xe3, 0x15, 0x33, 0x1f, 0xde, 0x42, 0xdd, + 0x73, 0x56, 0xd1, 0x61, 0x66, 0x51, 0x47, 0x36, +}; +static const unsigned char kat953_addin0[] = { + 0x7b, 0xf5, 0x23, 0x30, 0xec, 0x81, 0x79, 0xae, 0xa2, 0xc2, 0x7f, 0x1c, + 0x5f, 0x67, 0x50, 0x66, 0xd1, 0x34, 0x07, 0x73, 0xfb, 0x4d, 0x5b, 0xb3, + 0x17, 0x9a, 0x38, 0x2b, 0x6c, 0x7b, 0xa0, 0x39, +}; +static const unsigned char kat953_addin1[] = { + 0xee, 0x1c, 0xae, 0x7f, 0x1c, 0x94, 0x04, 0x8b, 0x75, 0xbf, 0x78, 0xce, + 0xaf, 0xf6, 0x32, 0xd2, 0x18, 0x4d, 0x72, 0x40, 0x91, 0xb4, 0x57, 0x2a, + 0xba, 0x23, 0xe8, 0xaf, 0x32, 0x56, 0x8a, 0x5a, +}; +static const unsigned char kat953_retbits[] = { + 0x73, 0x7c, 0xb9, 0x85, 0xf8, 0x2f, 0x30, 0x3a, 0x76, 0x32, 0x5b, 0xda, + 0x0d, 0x80, 0xa5, 0xab, 0xc5, 0x45, 0xd2, 0x54, 0x66, 0x82, 0x2f, 0x19, + 0x5c, 0xdf, 0x58, 0xae, 0x8c, 0x98, 0x8d, 0x34, 0x4f, 0x35, 0x64, 0xef, + 0x75, 0xe4, 0xde, 0x37, 0xea, 0xb3, 0x12, 0x39, 0xb7, 0x2f, 0x66, 0xe3, + 0x17, 0x45, 0x2b, 0xcd, 0xfa, 0x42, 0xfc, 0xab, 0x3b, 0x1e, 0x20, 0x79, + 0x4a, 0x12, 0xc0, 0xad, +}; +static const struct drbg_kat_no_reseed kat953_t = { + 7, kat953_entropyin, kat953_nonce, kat953_persstr, + kat953_addin0, kat953_addin1, kat953_retbits +}; +static const struct drbg_kat kat953 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat953_t +}; + +static const unsigned char kat954_entropyin[] = { + 0x43, 0x64, 0x16, 0xca, 0xa8, 0xa5, 0x46, 0xfa, 0x5c, 0xa8, 0xe0, 0x37, + 0xa8, 0x5c, 0x7c, 0x6e, 0x2f, 0xf7, 0x5e, 0xed, 0x0f, 0x83, 0x98, 0x22, + 0x1e, 0xfb, 0xc0, 0x26, 0xa9, 0xb5, 0xc3, 0xd1, +}; +static const unsigned char kat954_nonce[] = {0}; +static const unsigned char kat954_persstr[] = { + 0xaf, 0x10, 0x5d, 0xab, 0x25, 0x16, 0xaa, 0xc2, 0x90, 0x05, 0xe2, 0x1f, + 0xcf, 0xd8, 0x1c, 0xde, 0x71, 0x37, 0x80, 0xda, 0xdb, 0x36, 0x8b, 0xbf, + 0x70, 0xea, 0xa0, 0x01, 0xc5, 0x24, 0xa8, 0x41, +}; +static const unsigned char kat954_addin0[] = { + 0x4c, 0xba, 0x4a, 0x6f, 0xd0, 0x53, 0x8f, 0x15, 0x0d, 0x77, 0x02, 0xb4, + 0x21, 0x07, 0xf0, 0xc3, 0xac, 0x39, 0x63, 0x00, 0xf2, 0x1b, 0x65, 0x1c, + 0x2d, 0x3b, 0x3c, 0x40, 0x94, 0x6b, 0xd3, 0x10, +}; +static const unsigned char kat954_addin1[] = { + 0x72, 0x3c, 0x7d, 0x85, 0xcb, 0x1f, 0xd5, 0xa1, 0xcd, 0x18, 0x4d, 0x0c, + 0x85, 0x39, 0xc1, 0xe5, 0x74, 0x15, 0xc8, 0xf3, 0x7e, 0xab, 0x76, 0x41, + 0x4d, 0x58, 0x49, 0xfc, 0x00, 0xa4, 0x5c, 0x21, +}; +static const unsigned char kat954_retbits[] = { + 0x40, 0x88, 0x8d, 0x83, 0x95, 0x85, 0xcc, 0xe4, 0x66, 0x42, 0xcf, 0xc4, + 0x64, 0x2c, 0x17, 0x07, 0xda, 0x64, 0xba, 0xa6, 0x7d, 0x67, 0x25, 0x0c, + 0x55, 0x38, 0xe9, 0x89, 0x6c, 0x98, 0xed, 0x0f, 0x35, 0xdc, 0x9b, 0xc0, + 0x4c, 0xdb, 0x34, 0x95, 0x10, 0x8b, 0xbe, 0xb4, 0xde, 0x81, 0x4a, 0x11, + 0x5b, 0x37, 0x4e, 0xa4, 0x69, 0xf0, 0x19, 0x84, 0x8a, 0xa1, 0xc2, 0x36, + 0xa8, 0xc3, 0x64, 0xdb, +}; +static const struct drbg_kat_no_reseed kat954_t = { + 8, kat954_entropyin, kat954_nonce, kat954_persstr, + kat954_addin0, kat954_addin1, kat954_retbits +}; +static const struct drbg_kat kat954 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat954_t +}; + +static const unsigned char kat955_entropyin[] = { + 0xb3, 0x37, 0x58, 0xe3, 0x05, 0x47, 0x1b, 0x87, 0x46, 0x4e, 0xfd, 0x41, + 0x2a, 0x46, 0xd7, 0x25, 0xae, 0x5b, 0x12, 0x2a, 0xcb, 0xff, 0x2e, 0xec, + 0x04, 0x27, 0x4c, 0x60, 0xb4, 0xdb, 0x7f, 0xe9, +}; +static const unsigned char kat955_nonce[] = {0}; +static const unsigned char kat955_persstr[] = { + 0x07, 0x42, 0xec, 0x33, 0xd5, 0x70, 0x9b, 0x95, 0xba, 0x5f, 0xfa, 0x4d, + 0x75, 0xcc, 0x81, 0xa8, 0xd5, 0xc7, 0x9d, 0x70, 0x41, 0xff, 0x81, 0xc9, + 0xaf, 0x85, 0xf7, 0x28, 0x04, 0x74, 0x54, 0xa5, +}; +static const unsigned char kat955_addin0[] = { + 0xbc, 0x73, 0x1f, 0xda, 0xb1, 0xfe, 0x45, 0x84, 0xcf, 0xc4, 0xd2, 0x61, + 0xfc, 0xee, 0x0b, 0x02, 0x29, 0xec, 0x96, 0x1a, 0xf2, 0x0c, 0xfd, 0x14, + 0x06, 0x9a, 0x1f, 0xff, 0x48, 0x73, 0x6c, 0x28, +}; +static const unsigned char kat955_addin1[] = { + 0x2c, 0xe2, 0xff, 0x0b, 0xc7, 0xc3, 0x79, 0x66, 0x60, 0x80, 0x6a, 0xdc, + 0xfb, 0x3e, 0x49, 0x5f, 0x9b, 0x1f, 0xb9, 0x4d, 0x64, 0x52, 0xb8, 0x44, + 0x37, 0xcb, 0x97, 0x2c, 0xdd, 0x48, 0xc9, 0xdb, +}; +static const unsigned char kat955_retbits[] = { + 0x9c, 0x6f, 0xdd, 0xf4, 0xd8, 0xfd, 0xa2, 0x64, 0x11, 0x53, 0x46, 0x49, + 0x94, 0x89, 0x23, 0x16, 0xd4, 0xc5, 0x74, 0xba, 0xdd, 0xed, 0x64, 0x66, + 0xa5, 0x53, 0x5e, 0x36, 0x29, 0xe0, 0x42, 0xbe, 0x35, 0xc6, 0xf0, 0x1b, + 0xb2, 0x30, 0x70, 0x8f, 0x93, 0x4b, 0x52, 0x60, 0xd0, 0xe3, 0x1d, 0x33, + 0xa7, 0x11, 0x70, 0x28, 0x7f, 0x14, 0x8b, 0xed, 0x2b, 0xeb, 0x6a, 0xbd, + 0x57, 0xe1, 0xe2, 0xa2, +}; +static const struct drbg_kat_no_reseed kat955_t = { + 9, kat955_entropyin, kat955_nonce, kat955_persstr, + kat955_addin0, kat955_addin1, kat955_retbits +}; +static const struct drbg_kat kat955 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat955_t +}; + +static const unsigned char kat956_entropyin[] = { + 0x28, 0x56, 0xac, 0x3c, 0xff, 0xae, 0x8f, 0x23, 0x57, 0x5a, 0x10, 0x21, + 0xf1, 0xb3, 0x93, 0x65, 0xb6, 0x71, 0xab, 0x4c, 0xcf, 0xbf, 0xb9, 0x39, + 0x6e, 0xc0, 0xf1, 0xad, 0xe2, 0x61, 0xe1, 0xfb, +}; +static const unsigned char kat956_nonce[] = {0}; +static const unsigned char kat956_persstr[] = { + 0xa8, 0x10, 0x44, 0x56, 0x97, 0xe5, 0x05, 0xac, 0x0a, 0x9e, 0xdf, 0x58, + 0xce, 0xb3, 0xa0, 0x88, 0x95, 0x30, 0xe9, 0xc7, 0x75, 0x7a, 0x2b, 0x8b, + 0xe8, 0x8c, 0x52, 0xc8, 0x1d, 0xfb, 0x0d, 0x32, +}; +static const unsigned char kat956_addin0[] = { + 0xe1, 0xf3, 0x95, 0x83, 0x54, 0xc6, 0x6a, 0x0c, 0xd1, 0xc0, 0xac, 0x4c, + 0xa8, 0x64, 0x85, 0x24, 0xb7, 0x5b, 0xbb, 0x67, 0x73, 0xc9, 0xa7, 0x51, + 0xec, 0x9d, 0xc9, 0x29, 0x57, 0x42, 0x00, 0x84, +}; +static const unsigned char kat956_addin1[] = { + 0x8f, 0x3b, 0xb3, 0x13, 0xc3, 0x56, 0x66, 0xab, 0xbe, 0x27, 0x9b, 0x2e, + 0xc4, 0x5d, 0xa5, 0xcd, 0x41, 0xc4, 0x0f, 0x3d, 0x93, 0x89, 0xf4, 0x78, + 0xd7, 0xa2, 0x23, 0xcf, 0x73, 0x83, 0x9b, 0x71, +}; +static const unsigned char kat956_retbits[] = { + 0x04, 0x8e, 0x37, 0xf4, 0x3f, 0x1f, 0xe8, 0x78, 0xa9, 0xad, 0xd9, 0xaa, + 0xee, 0x37, 0x71, 0x22, 0x97, 0xd9, 0xd3, 0xc4, 0x62, 0x65, 0xb2, 0x27, + 0x21, 0xeb, 0x50, 0x7c, 0x60, 0x1a, 0x52, 0xae, 0x54, 0x95, 0x2f, 0x88, + 0x0c, 0xae, 0xf6, 0xea, 0x5c, 0x5d, 0xde, 0xd8, 0xc8, 0xd7, 0xf0, 0x94, + 0x18, 0xca, 0xf3, 0x24, 0xff, 0xa4, 0xfd, 0x99, 0xcb, 0xec, 0x48, 0x4a, + 0x79, 0x89, 0x6c, 0x7e, +}; +static const struct drbg_kat_no_reseed kat956_t = { + 10, kat956_entropyin, kat956_nonce, kat956_persstr, + kat956_addin0, kat956_addin1, kat956_retbits +}; +static const struct drbg_kat kat956 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat956_t +}; + +static const unsigned char kat957_entropyin[] = { + 0x80, 0x85, 0xbc, 0x19, 0xcc, 0x02, 0x55, 0x8e, 0x7e, 0x70, 0x4b, 0xca, + 0x1a, 0x79, 0xde, 0x7d, 0x53, 0x2a, 0x9f, 0x85, 0xfd, 0x65, 0x0b, 0x86, + 0x14, 0xb4, 0xd0, 0xbf, 0x03, 0x17, 0x27, 0xd1, +}; +static const unsigned char kat957_nonce[] = {0}; +static const unsigned char kat957_persstr[] = { + 0x66, 0xec, 0x26, 0xed, 0x7c, 0x8a, 0x16, 0x89, 0xd1, 0x46, 0x0d, 0x06, + 0x87, 0x5d, 0x7d, 0xdb, 0xa2, 0xde, 0xe5, 0xd8, 0xed, 0xc5, 0x09, 0xb9, + 0x8c, 0x97, 0x2a, 0x65, 0xab, 0x90, 0xb7, 0x2c, +}; +static const unsigned char kat957_addin0[] = { + 0xdb, 0x50, 0x6e, 0x35, 0x73, 0x0e, 0x4f, 0x5f, 0xaa, 0x68, 0x9f, 0xd1, + 0x5b, 0x88, 0x51, 0xdc, 0x4d, 0xbf, 0xcf, 0x64, 0xb8, 0x4f, 0xc0, 0xfb, + 0x3d, 0xc1, 0x39, 0x0b, 0x3a, 0x86, 0x76, 0x55, +}; +static const unsigned char kat957_addin1[] = { + 0xe1, 0x99, 0x06, 0xf2, 0x0b, 0x43, 0x22, 0xfd, 0xb4, 0xcb, 0xf1, 0xa5, + 0x1c, 0xa8, 0x26, 0x93, 0x35, 0xed, 0xd7, 0x20, 0xe1, 0x3d, 0x79, 0xe9, + 0x17, 0xb3, 0xdb, 0x0e, 0x04, 0xde, 0x7b, 0x7a, +}; +static const unsigned char kat957_retbits[] = { + 0x4a, 0x01, 0xe8, 0x6a, 0x5f, 0x05, 0x52, 0xd4, 0xf2, 0x0c, 0x27, 0x33, + 0x91, 0x53, 0x3f, 0xfb, 0x23, 0x83, 0x81, 0x24, 0x30, 0x01, 0xcd, 0x34, + 0xdc, 0x01, 0x1b, 0x2f, 0x83, 0xcc, 0x79, 0xa6, 0xeb, 0x85, 0x07, 0x24, + 0x10, 0xe8, 0x37, 0x46, 0xe8, 0x31, 0x8c, 0xce, 0xb2, 0x92, 0xb6, 0x10, + 0x3d, 0x83, 0x00, 0x85, 0x4a, 0x73, 0xb3, 0x4b, 0x97, 0x01, 0xa5, 0x26, + 0xb1, 0xe1, 0x4c, 0xc9, +}; +static const struct drbg_kat_no_reseed kat957_t = { + 11, kat957_entropyin, kat957_nonce, kat957_persstr, + kat957_addin0, kat957_addin1, kat957_retbits +}; +static const struct drbg_kat kat957 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat957_t +}; + +static const unsigned char kat958_entropyin[] = { + 0x47, 0x54, 0x58, 0x92, 0x8a, 0x2c, 0xf4, 0xde, 0x75, 0x29, 0x68, 0xa7, + 0x6b, 0xb7, 0x0a, 0x00, 0xeb, 0x4f, 0xc1, 0x05, 0xae, 0xca, 0xa2, 0x9c, + 0x68, 0x59, 0xbd, 0x6a, 0x50, 0x16, 0x8a, 0x52, +}; +static const unsigned char kat958_nonce[] = {0}; +static const unsigned char kat958_persstr[] = { + 0x71, 0x2e, 0x52, 0x94, 0xb5, 0x4b, 0xbd, 0xf8, 0x92, 0x36, 0x54, 0x66, + 0x0b, 0x1b, 0x6e, 0x0e, 0x66, 0x40, 0xf3, 0x98, 0x81, 0x2e, 0xeb, 0x00, + 0x16, 0xda, 0x4f, 0x26, 0x59, 0x8a, 0xaa, 0xdd, +}; +static const unsigned char kat958_addin0[] = { + 0xe4, 0xce, 0x3c, 0x57, 0x92, 0xfc, 0x12, 0xe9, 0x67, 0x32, 0xb4, 0xfa, + 0xe9, 0x91, 0x8c, 0x13, 0x2e, 0xb3, 0xaf, 0x41, 0x42, 0xcd, 0xdb, 0x96, + 0xc8, 0xa2, 0x44, 0x84, 0x58, 0xba, 0x7c, 0xa5, +}; +static const unsigned char kat958_addin1[] = { + 0x0a, 0x84, 0x95, 0xe9, 0x75, 0xbf, 0xfc, 0x3e, 0xec, 0x8e, 0x71, 0xdd, + 0xc9, 0x34, 0xdb, 0x19, 0xf2, 0xd1, 0x57, 0x50, 0xcb, 0x4a, 0x0b, 0xb2, + 0xab, 0x12, 0x9f, 0xcb, 0x7d, 0xa2, 0xb3, 0x7b, +}; +static const unsigned char kat958_retbits[] = { + 0x10, 0x16, 0xba, 0x86, 0x0d, 0xc6, 0x0b, 0x59, 0xe1, 0x2b, 0x64, 0xef, + 0xd7, 0x8a, 0x30, 0xe4, 0xd3, 0xf0, 0xaf, 0x5f, 0xaa, 0xe6, 0xe4, 0x58, + 0x84, 0xc1, 0x85, 0xfe, 0xe0, 0x31, 0x5d, 0xaf, 0xdb, 0x98, 0xd2, 0x44, + 0xcf, 0x6c, 0x3a, 0xb8, 0xd6, 0x2d, 0x8d, 0x3d, 0x01, 0x5a, 0xf5, 0x3d, + 0xc6, 0xf0, 0xc2, 0x5d, 0x0c, 0x25, 0x48, 0x01, 0xff, 0x60, 0x0f, 0xa4, + 0xe8, 0xcd, 0x08, 0xd3, +}; +static const struct drbg_kat_no_reseed kat958_t = { + 12, kat958_entropyin, kat958_nonce, kat958_persstr, + kat958_addin0, kat958_addin1, kat958_retbits +}; +static const struct drbg_kat kat958 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat958_t +}; + +static const unsigned char kat959_entropyin[] = { + 0x9d, 0x6b, 0x6f, 0xad, 0x86, 0xa5, 0xa5, 0x28, 0xcb, 0xd3, 0x46, 0x94, + 0x9e, 0x85, 0x41, 0xe3, 0x9c, 0x62, 0xa2, 0x34, 0x41, 0x3b, 0x15, 0x0c, + 0x3b, 0x6e, 0x3c, 0xf5, 0x25, 0x18, 0x57, 0xf5, +}; +static const unsigned char kat959_nonce[] = {0}; +static const unsigned char kat959_persstr[] = { + 0xce, 0x19, 0x85, 0x1b, 0xb5, 0xc7, 0x2a, 0xcd, 0xf8, 0x60, 0x95, 0x2d, + 0xe6, 0x05, 0x22, 0x7e, 0x81, 0x80, 0x3d, 0x44, 0x48, 0x5f, 0xbd, 0x00, + 0xff, 0x87, 0xcc, 0x80, 0xeb, 0x17, 0x58, 0xb9, +}; +static const unsigned char kat959_addin0[] = { + 0x39, 0x50, 0xa8, 0x9a, 0xc6, 0xcf, 0x27, 0xd8, 0x26, 0x42, 0xef, 0x05, + 0x4a, 0x5a, 0xeb, 0x9f, 0x93, 0x10, 0x56, 0x84, 0xcd, 0xe4, 0xac, 0xd2, + 0x89, 0x94, 0x63, 0x60, 0xde, 0x78, 0x7a, 0x4f, +}; +static const unsigned char kat959_addin1[] = { + 0x67, 0xc8, 0x3a, 0x5c, 0xac, 0x25, 0xd2, 0x8b, 0x8b, 0x16, 0xe8, 0xb9, + 0xb4, 0xfa, 0x7d, 0x09, 0xd9, 0x76, 0x57, 0x34, 0x20, 0xbf, 0xb0, 0x92, + 0xfe, 0xf7, 0x9f, 0xc4, 0xb6, 0xe8, 0x31, 0x10, +}; +static const unsigned char kat959_retbits[] = { + 0x19, 0x98, 0xdd, 0x01, 0x33, 0x70, 0x17, 0x43, 0xff, 0x6c, 0xba, 0xfd, + 0x05, 0x19, 0x01, 0x93, 0xef, 0x65, 0x04, 0xdf, 0xc5, 0xee, 0x8f, 0x8f, + 0xb3, 0x14, 0x77, 0x6b, 0x65, 0x67, 0xca, 0x84, 0x83, 0x0d, 0x2e, 0xd3, + 0x15, 0xd6, 0xb5, 0x04, 0xb8, 0xab, 0x80, 0xe7, 0x2c, 0xd7, 0x3b, 0x09, + 0x18, 0x0e, 0x0b, 0x6f, 0x9f, 0x19, 0x49, 0x7b, 0x72, 0xe9, 0xcd, 0x6b, + 0x6a, 0xbd, 0x06, 0x77, +}; +static const struct drbg_kat_no_reseed kat959_t = { + 13, kat959_entropyin, kat959_nonce, kat959_persstr, + kat959_addin0, kat959_addin1, kat959_retbits +}; +static const struct drbg_kat kat959 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat959_t +}; + +static const unsigned char kat960_entropyin[] = { + 0x22, 0x54, 0x60, 0x44, 0xdf, 0x54, 0xe2, 0xbf, 0xe7, 0x46, 0x93, 0x18, + 0xc5, 0x7c, 0x15, 0x9d, 0x0f, 0x25, 0xa5, 0x8b, 0xcf, 0x4f, 0xbe, 0x70, + 0xae, 0x21, 0x4b, 0x66, 0x9b, 0x2e, 0x63, 0x14, +}; +static const unsigned char kat960_nonce[] = {0}; +static const unsigned char kat960_persstr[] = { + 0x28, 0xcf, 0x3c, 0xa7, 0xdf, 0x24, 0xcd, 0x72, 0x70, 0x4c, 0xc7, 0x3b, + 0x4a, 0x61, 0x8c, 0xad, 0xb6, 0xac, 0x93, 0xf2, 0x16, 0x8c, 0x47, 0x9c, + 0x35, 0x8d, 0xe1, 0x90, 0x7c, 0x0a, 0x0c, 0x82, +}; +static const unsigned char kat960_addin0[] = { + 0x36, 0x55, 0x1e, 0xf0, 0x92, 0x32, 0xd2, 0x19, 0x95, 0x47, 0xaa, 0xef, + 0xec, 0xaa, 0xad, 0x21, 0x74, 0x43, 0xd6, 0x16, 0x43, 0x3d, 0x9d, 0x16, + 0x9b, 0xd8, 0xcd, 0x3e, 0xae, 0x7f, 0x91, 0xe2, +}; +static const unsigned char kat960_addin1[] = { + 0x9e, 0x57, 0xa4, 0xe9, 0x6a, 0xce, 0x48, 0x3d, 0xbc, 0x3c, 0x22, 0x6d, + 0x27, 0x23, 0xc9, 0x25, 0x80, 0x63, 0x27, 0x81, 0x40, 0xd2, 0x20, 0xc4, + 0xfd, 0x02, 0x3c, 0x77, 0xfb, 0x20, 0xb8, 0x4c, +}; +static const unsigned char kat960_retbits[] = { + 0xca, 0x43, 0xdc, 0xec, 0xda, 0xb6, 0x89, 0x54, 0x9b, 0xc4, 0x49, 0x3a, + 0x38, 0xa6, 0xa0, 0x17, 0xf6, 0x04, 0x82, 0x70, 0xe5, 0xd7, 0x0d, 0x0d, + 0x75, 0x76, 0xa2, 0xab, 0x76, 0x4d, 0x92, 0x2b, 0xc3, 0x46, 0xe3, 0x0f, + 0x42, 0xdc, 0x5a, 0x73, 0xea, 0x6a, 0x21, 0x0d, 0x2e, 0xba, 0x9b, 0xee, + 0x5b, 0x5a, 0xfe, 0x3c, 0x66, 0x86, 0x7a, 0x68, 0xab, 0x3f, 0xe0, 0xd0, + 0x8f, 0x51, 0x11, 0x01, +}; +static const struct drbg_kat_no_reseed kat960_t = { + 14, kat960_entropyin, kat960_nonce, kat960_persstr, + kat960_addin0, kat960_addin1, kat960_retbits +}; +static const struct drbg_kat kat960 = { + NO_RESEED, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat960_t +}; + +static const unsigned char kat961_entropyin[] = { + 0xf1, 0xef, 0x7e, 0xb3, 0x11, 0xc8, 0x50, 0xe1, 0x89, 0xbe, 0x22, 0x9d, + 0xf7, 0xe6, 0xd6, 0x8f, 0x17, 0x95, 0xaa, 0x8e, 0x21, 0xd9, 0x35, 0x04, + 0xe7, 0x5a, 0xbe, 0x78, 0xf0, 0x41, 0x39, 0x58, 0x73, 0x54, 0x03, 0x86, + 0x81, 0x2a, 0x9a, 0x2a, +}; +static const unsigned char kat961_nonce[] = {0}; +static const unsigned char kat961_persstr[] = {0}; +static const unsigned char kat961_addin0[] = {0}; +static const unsigned char kat961_addin1[] = {0}; +static const unsigned char kat961_retbits[] = { + 0x6b, 0xb0, 0xaa, 0x5b, 0x4b, 0x97, 0xee, 0x83, 0x76, 0x57, 0x36, 0xad, + 0x0e, 0x90, 0x68, 0xdf, 0xef, 0x0c, 0xcf, 0xc9, 0x3b, 0x71, 0xc1, 0xd3, + 0x42, 0x53, 0x02, 0xef, 0x7b, 0xa4, 0x63, 0x5f, 0xfc, 0x09, 0x98, 0x1d, + 0x26, 0x21, 0x77, 0xe2, 0x08, 0xa7, 0xec, 0x90, 0xa5, 0x57, 0xb6, 0xd7, + 0x61, 0x12, 0xd5, 0x6c, 0x40, 0x89, 0x38, 0x92, 0xc3, 0x03, 0x48, 0x35, + 0x03, 0x6d, 0x7a, 0x69, +}; +static const struct drbg_kat_no_reseed kat961_t = { + 0, kat961_entropyin, kat961_nonce, kat961_persstr, + kat961_addin0, kat961_addin1, kat961_retbits +}; +static const struct drbg_kat kat961 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat961_t +}; + +static const unsigned char kat962_entropyin[] = { + 0x81, 0x8d, 0x5b, 0x46, 0x0c, 0xf0, 0xe1, 0x8f, 0xaf, 0x24, 0x41, 0xc9, + 0x7e, 0xef, 0x12, 0xeb, 0xa4, 0xec, 0xa4, 0xbe, 0x95, 0xa2, 0x77, 0xc4, + 0xf7, 0xca, 0x90, 0x4d, 0xa1, 0x98, 0x1c, 0xb9, 0x05, 0xa2, 0x90, 0x60, + 0x1d, 0xb8, 0xb6, 0x77, +}; +static const unsigned char kat962_nonce[] = {0}; +static const unsigned char kat962_persstr[] = {0}; +static const unsigned char kat962_addin0[] = {0}; +static const unsigned char kat962_addin1[] = {0}; +static const unsigned char kat962_retbits[] = { + 0x6f, 0xd7, 0x54, 0x98, 0xe5, 0xf3, 0x8c, 0x40, 0xe7, 0x2a, 0x0a, 0x3c, + 0x2e, 0x22, 0x47, 0xca, 0x13, 0x39, 0x31, 0xbf, 0xed, 0x42, 0x37, 0xf0, + 0xc9, 0xa1, 0x9f, 0x6b, 0xbf, 0x6a, 0xb8, 0x38, 0x1f, 0x92, 0x71, 0x33, + 0x7f, 0x6d, 0xe6, 0xaf, 0x53, 0xd7, 0xd5, 0xf6, 0x72, 0x57, 0xfc, 0xe6, + 0xbc, 0x8e, 0x60, 0x2a, 0xf8, 0xb9, 0x84, 0x4f, 0x04, 0x3c, 0x78, 0xf2, + 0xd2, 0x4e, 0x4f, 0xfb, +}; +static const struct drbg_kat_no_reseed kat962_t = { + 1, kat962_entropyin, kat962_nonce, kat962_persstr, + kat962_addin0, kat962_addin1, kat962_retbits +}; +static const struct drbg_kat kat962 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat962_t +}; + +static const unsigned char kat963_entropyin[] = { + 0xe4, 0x5d, 0xc4, 0x11, 0x3f, 0x01, 0xb5, 0x89, 0xe5, 0x03, 0xe7, 0xc5, + 0x8f, 0x6a, 0x7c, 0x91, 0x0d, 0x8a, 0x34, 0x58, 0xb7, 0x1f, 0xb3, 0x22, + 0xbb, 0xbf, 0xee, 0x17, 0x5e, 0x15, 0x06, 0x0b, 0x27, 0x8a, 0xe6, 0x92, + 0xfb, 0x39, 0xd4, 0x6e, +}; +static const unsigned char kat963_nonce[] = {0}; +static const unsigned char kat963_persstr[] = {0}; +static const unsigned char kat963_addin0[] = {0}; +static const unsigned char kat963_addin1[] = {0}; +static const unsigned char kat963_retbits[] = { + 0x65, 0xc6, 0x96, 0xc8, 0xcd, 0x52, 0x49, 0x77, 0xea, 0xef, 0x54, 0xb5, + 0xf7, 0x59, 0x6f, 0x84, 0xd9, 0x68, 0x1e, 0xfc, 0x7f, 0xee, 0x5a, 0x41, + 0xc1, 0x47, 0x9c, 0x04, 0xb1, 0x81, 0x75, 0xe2, 0xec, 0x02, 0x96, 0xc9, + 0x77, 0x7c, 0xe4, 0x60, 0xeb, 0xb6, 0xe2, 0xc5, 0x06, 0x30, 0x31, 0x42, + 0x02, 0x58, 0x39, 0x1c, 0x70, 0xf5, 0x92, 0x6b, 0xe1, 0x15, 0x03, 0x5d, + 0xd9, 0x51, 0x55, 0xbb, +}; +static const struct drbg_kat_no_reseed kat963_t = { + 2, kat963_entropyin, kat963_nonce, kat963_persstr, + kat963_addin0, kat963_addin1, kat963_retbits +}; +static const struct drbg_kat kat963 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat963_t +}; + +static const unsigned char kat964_entropyin[] = { + 0x6f, 0x1c, 0xce, 0x67, 0xd7, 0xb6, 0x37, 0x4d, 0x3c, 0x0f, 0x08, 0x4b, + 0xca, 0xd9, 0xdb, 0xd4, 0x5d, 0x6e, 0x50, 0xb9, 0x89, 0x89, 0x1a, 0x57, + 0x82, 0x71, 0x9a, 0x7b, 0xa0, 0xa9, 0xc3, 0xc2, 0x1f, 0x06, 0x77, 0x3e, + 0x76, 0x7a, 0x97, 0x31, +}; +static const unsigned char kat964_nonce[] = {0}; +static const unsigned char kat964_persstr[] = {0}; +static const unsigned char kat964_addin0[] = {0}; +static const unsigned char kat964_addin1[] = {0}; +static const unsigned char kat964_retbits[] = { + 0x61, 0x9d, 0x8d, 0x8a, 0x12, 0x13, 0xf3, 0x56, 0x60, 0x88, 0x5d, 0xe1, + 0xee, 0xf5, 0x92, 0x86, 0x9a, 0xea, 0x27, 0xa6, 0x1e, 0x79, 0x1a, 0x0c, + 0xb4, 0xfa, 0x5a, 0x68, 0x39, 0xf4, 0xf2, 0xa7, 0xfe, 0x4d, 0xe5, 0x24, + 0xc9, 0x8f, 0x12, 0x1b, 0x06, 0x52, 0x48, 0xf2, 0xc3, 0xbd, 0xe6, 0x50, + 0x93, 0x34, 0xea, 0xfe, 0xbc, 0xd5, 0x0e, 0x77, 0x21, 0xfd, 0x80, 0x80, + 0xf5, 0x0d, 0x00, 0xf7, +}; +static const struct drbg_kat_no_reseed kat964_t = { + 3, kat964_entropyin, kat964_nonce, kat964_persstr, + kat964_addin0, kat964_addin1, kat964_retbits +}; +static const struct drbg_kat kat964 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat964_t +}; + +static const unsigned char kat965_entropyin[] = { + 0x40, 0xef, 0xaa, 0x49, 0x98, 0x6a, 0xa9, 0x0e, 0x98, 0xf3, 0xb8, 0x4a, + 0x7d, 0x21, 0x28, 0x27, 0xd2, 0x15, 0xaf, 0x86, 0x15, 0x63, 0xe4, 0xe2, + 0xb7, 0xae, 0xfb, 0x8b, 0xb4, 0xf2, 0x74, 0x84, 0x8b, 0xd0, 0x7a, 0xf0, + 0x4d, 0xfb, 0xb9, 0x98, +}; +static const unsigned char kat965_nonce[] = {0}; +static const unsigned char kat965_persstr[] = {0}; +static const unsigned char kat965_addin0[] = {0}; +static const unsigned char kat965_addin1[] = {0}; +static const unsigned char kat965_retbits[] = { + 0x44, 0xba, 0xb6, 0x94, 0x29, 0xd1, 0x96, 0x00, 0xa3, 0x10, 0x30, 0x21, + 0x66, 0x78, 0x84, 0x91, 0x8a, 0x45, 0x55, 0x07, 0xda, 0x16, 0x6e, 0xbe, + 0x7c, 0xbe, 0x03, 0xbb, 0xad, 0x90, 0x49, 0x38, 0x65, 0x9a, 0x9a, 0x27, + 0xdf, 0x6c, 0xa4, 0xa1, 0x67, 0x59, 0x7e, 0x74, 0xb0, 0x5a, 0x2e, 0xd3, + 0x0b, 0x92, 0x65, 0x36, 0xb4, 0x1d, 0x03, 0xaa, 0x68, 0xb3, 0xea, 0xb1, + 0xf2, 0x33, 0x15, 0xa7, +}; +static const struct drbg_kat_no_reseed kat965_t = { + 4, kat965_entropyin, kat965_nonce, kat965_persstr, + kat965_addin0, kat965_addin1, kat965_retbits +}; +static const struct drbg_kat kat965 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat965_t +}; + +static const unsigned char kat966_entropyin[] = { + 0xf2, 0xb9, 0xf3, 0x7f, 0x53, 0xdd, 0xe8, 0x7a, 0x03, 0xf4, 0x18, 0x4e, + 0x9f, 0x25, 0x0e, 0xe6, 0x02, 0xb6, 0x1c, 0x29, 0x4e, 0xa3, 0x21, 0x4d, + 0x94, 0x9f, 0x7b, 0x55, 0x64, 0xc9, 0x62, 0xcb, 0xdc, 0x70, 0xa6, 0xf8, + 0x1e, 0xf6, 0x6a, 0x5d, +}; +static const unsigned char kat966_nonce[] = {0}; +static const unsigned char kat966_persstr[] = {0}; +static const unsigned char kat966_addin0[] = {0}; +static const unsigned char kat966_addin1[] = {0}; +static const unsigned char kat966_retbits[] = { + 0xb0, 0x40, 0x9f, 0xc5, 0x1b, 0x5d, 0x25, 0x5d, 0x0b, 0x7a, 0x1f, 0xed, + 0x2a, 0x60, 0x67, 0x8b, 0x35, 0xc6, 0x4d, 0xf7, 0x79, 0xd0, 0xcf, 0xba, + 0x95, 0x43, 0x92, 0x4e, 0x75, 0x52, 0xbc, 0x6d, 0x9b, 0xf4, 0x6e, 0xce, + 0xdc, 0xef, 0xe9, 0x16, 0x01, 0x6f, 0xb5, 0xdb, 0xd2, 0x37, 0xa4, 0x50, + 0xf5, 0x40, 0x68, 0xb1, 0x4c, 0x67, 0xf4, 0x73, 0xd8, 0xf6, 0xdf, 0x08, + 0x28, 0x52, 0xb1, 0x5b, +}; +static const struct drbg_kat_no_reseed kat966_t = { + 5, kat966_entropyin, kat966_nonce, kat966_persstr, + kat966_addin0, kat966_addin1, kat966_retbits +}; +static const struct drbg_kat kat966 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat966_t +}; + +static const unsigned char kat967_entropyin[] = { + 0x7f, 0xbb, 0xba, 0x28, 0x45, 0xdd, 0xe1, 0x8c, 0x0b, 0xfa, 0x21, 0x5f, + 0x83, 0x70, 0x59, 0xcc, 0xf4, 0x77, 0xce, 0xca, 0xcb, 0x88, 0x45, 0x2d, + 0x61, 0xca, 0x3b, 0xe2, 0x7b, 0x7d, 0xde, 0x56, 0x37, 0xc4, 0x85, 0x3e, + 0xd1, 0xc7, 0x29, 0xdf, +}; +static const unsigned char kat967_nonce[] = {0}; +static const unsigned char kat967_persstr[] = {0}; +static const unsigned char kat967_addin0[] = {0}; +static const unsigned char kat967_addin1[] = {0}; +static const unsigned char kat967_retbits[] = { + 0x05, 0xb6, 0xa3, 0x6d, 0xb2, 0x4c, 0x06, 0x9e, 0xf5, 0x83, 0x51, 0x48, + 0x82, 0x45, 0x1f, 0xcf, 0x30, 0x42, 0xf8, 0x30, 0x63, 0xec, 0x03, 0xb0, + 0xdc, 0x83, 0x22, 0x1c, 0x8f, 0x0d, 0xce, 0xa9, 0x0f, 0x76, 0x92, 0xa8, + 0x89, 0x45, 0xc1, 0xd2, 0x8f, 0xd6, 0x21, 0x8a, 0x67, 0x57, 0xae, 0x66, + 0x5a, 0x21, 0xd1, 0x49, 0xb7, 0xba, 0xb4, 0x96, 0xf6, 0xe1, 0x06, 0x6c, + 0xcf, 0x1f, 0xbd, 0xb7, +}; +static const struct drbg_kat_no_reseed kat967_t = { + 6, kat967_entropyin, kat967_nonce, kat967_persstr, + kat967_addin0, kat967_addin1, kat967_retbits +}; +static const struct drbg_kat kat967 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat967_t +}; + +static const unsigned char kat968_entropyin[] = { + 0x2f, 0x85, 0xae, 0x86, 0xc3, 0x8a, 0x54, 0x68, 0x97, 0xa8, 0x2f, 0xd2, + 0x20, 0x49, 0x60, 0x99, 0xc9, 0x4b, 0x81, 0xa6, 0x5a, 0x2b, 0xd5, 0xa2, + 0xd6, 0xe6, 0x6b, 0x17, 0x28, 0xef, 0xd5, 0xe2, 0xa9, 0x9a, 0xf8, 0x50, + 0xa1, 0x7c, 0x08, 0x9b, +}; +static const unsigned char kat968_nonce[] = {0}; +static const unsigned char kat968_persstr[] = {0}; +static const unsigned char kat968_addin0[] = {0}; +static const unsigned char kat968_addin1[] = {0}; +static const unsigned char kat968_retbits[] = { + 0x30, 0xb5, 0x5d, 0x02, 0xb0, 0xfd, 0xcc, 0x1f, 0x37, 0x5c, 0xe1, 0xf2, + 0x29, 0xf5, 0x4e, 0x7c, 0xb8, 0x91, 0xf3, 0x55, 0x1e, 0xbd, 0x3c, 0x74, + 0x73, 0xe6, 0x10, 0x8f, 0x87, 0x65, 0x5b, 0x8c, 0x10, 0x13, 0x7e, 0x77, + 0x0a, 0xd5, 0x46, 0x6c, 0x61, 0xc1, 0x21, 0xdd, 0x48, 0x9c, 0x2b, 0x8f, + 0xe4, 0x50, 0x6b, 0x0c, 0x90, 0xdd, 0x49, 0x7e, 0x00, 0x52, 0x88, 0xff, + 0x1a, 0x03, 0x00, 0x52, +}; +static const struct drbg_kat_no_reseed kat968_t = { + 7, kat968_entropyin, kat968_nonce, kat968_persstr, + kat968_addin0, kat968_addin1, kat968_retbits +}; +static const struct drbg_kat kat968 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat968_t +}; + +static const unsigned char kat969_entropyin[] = { + 0x15, 0xbd, 0x0f, 0x42, 0xca, 0x57, 0xba, 0xeb, 0xa4, 0x4c, 0x71, 0xc6, + 0x9b, 0xbf, 0x29, 0x9c, 0x5d, 0x8b, 0xc0, 0x52, 0xc0, 0xd9, 0x84, 0x29, + 0xa0, 0x79, 0x4f, 0x15, 0xd2, 0xc1, 0xc6, 0x73, 0x01, 0x8b, 0xf9, 0xe4, + 0xe6, 0xb3, 0x8a, 0x53, +}; +static const unsigned char kat969_nonce[] = {0}; +static const unsigned char kat969_persstr[] = {0}; +static const unsigned char kat969_addin0[] = {0}; +static const unsigned char kat969_addin1[] = {0}; +static const unsigned char kat969_retbits[] = { + 0x5e, 0x57, 0x71, 0x80, 0xd6, 0x45, 0x4e, 0x58, 0x5c, 0x72, 0x57, 0x2e, + 0xa1, 0x45, 0x1c, 0x28, 0xd0, 0x50, 0x6e, 0xcd, 0xec, 0xc6, 0x6f, 0x20, + 0xf5, 0x7b, 0x57, 0xd7, 0x39, 0xd8, 0x93, 0x84, 0x19, 0x0f, 0x9e, 0x97, + 0xae, 0x02, 0x56, 0xcb, 0x62, 0x56, 0xd7, 0x70, 0x3d, 0x3d, 0xa0, 0xb1, + 0x1a, 0x0a, 0xc9, 0x57, 0x58, 0x0a, 0xe9, 0xa3, 0xcb, 0xb4, 0xfd, 0xb7, + 0x30, 0xac, 0xe6, 0x3f, +}; +static const struct drbg_kat_no_reseed kat969_t = { + 8, kat969_entropyin, kat969_nonce, kat969_persstr, + kat969_addin0, kat969_addin1, kat969_retbits +}; +static const struct drbg_kat kat969 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat969_t +}; + +static const unsigned char kat970_entropyin[] = { + 0xa9, 0x88, 0x28, 0x5b, 0x9e, 0xa1, 0x1c, 0xcc, 0x14, 0x37, 0xc5, 0x19, + 0x60, 0x70, 0x93, 0xbc, 0x6a, 0xed, 0x41, 0xb5, 0x09, 0xbb, 0xe0, 0x0b, + 0x70, 0x00, 0x58, 0x43, 0x7e, 0x8a, 0x52, 0xe9, 0x0b, 0xb0, 0x43, 0xcc, + 0x67, 0x13, 0x3a, 0x0d, +}; +static const unsigned char kat970_nonce[] = {0}; +static const unsigned char kat970_persstr[] = {0}; +static const unsigned char kat970_addin0[] = {0}; +static const unsigned char kat970_addin1[] = {0}; +static const unsigned char kat970_retbits[] = { + 0x94, 0x9a, 0x6e, 0xed, 0xb8, 0x42, 0xd9, 0xb6, 0x5a, 0x49, 0x6a, 0xa4, + 0xb8, 0x02, 0xf8, 0x20, 0x23, 0x42, 0x17, 0xc4, 0x83, 0x42, 0x24, 0xfc, + 0xe9, 0xfb, 0xaa, 0x72, 0x11, 0xd0, 0x74, 0x75, 0xf4, 0xc1, 0x2e, 0x1d, + 0xb7, 0x28, 0x92, 0x50, 0x94, 0xde, 0x32, 0xb1, 0x9b, 0x3e, 0xe0, 0xfb, + 0x36, 0xcf, 0x00, 0xd5, 0x66, 0x13, 0x79, 0xca, 0x76, 0xf1, 0x98, 0xfa, + 0xad, 0x76, 0x16, 0xec, +}; +static const struct drbg_kat_no_reseed kat970_t = { + 9, kat970_entropyin, kat970_nonce, kat970_persstr, + kat970_addin0, kat970_addin1, kat970_retbits +}; +static const struct drbg_kat kat970 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat970_t +}; + +static const unsigned char kat971_entropyin[] = { + 0xd7, 0xd5, 0x62, 0xd6, 0xc9, 0xcc, 0x96, 0x0a, 0x49, 0xc0, 0xb7, 0xc8, + 0x51, 0xcd, 0xfd, 0x6f, 0x53, 0x95, 0x61, 0xdc, 0xf1, 0x84, 0xef, 0x4c, + 0x96, 0x8e, 0x57, 0xf2, 0xac, 0xd7, 0x2b, 0x43, 0x2e, 0xf1, 0x1d, 0xf3, + 0xe0, 0xa0, 0xbb, 0x19, +}; +static const unsigned char kat971_nonce[] = {0}; +static const unsigned char kat971_persstr[] = {0}; +static const unsigned char kat971_addin0[] = {0}; +static const unsigned char kat971_addin1[] = {0}; +static const unsigned char kat971_retbits[] = { + 0xd8, 0xa6, 0xe5, 0x7f, 0x2a, 0xcb, 0x7b, 0x5a, 0xe9, 0x90, 0x36, 0x38, + 0x2c, 0x83, 0x18, 0x22, 0x62, 0xc1, 0x55, 0xdb, 0xed, 0x02, 0x0b, 0x5e, + 0x8f, 0x3d, 0xd4, 0x96, 0x66, 0xfe, 0xc4, 0x6a, 0x20, 0x22, 0xb1, 0x82, + 0x46, 0xae, 0x99, 0x2c, 0xbd, 0xe9, 0x78, 0xf4, 0x44, 0x1d, 0x64, 0x39, + 0x60, 0x67, 0xed, 0x03, 0x17, 0x39, 0xa3, 0x30, 0x2f, 0x15, 0x6e, 0xb8, + 0x93, 0x92, 0xc7, 0x67, +}; +static const struct drbg_kat_no_reseed kat971_t = { + 10, kat971_entropyin, kat971_nonce, kat971_persstr, + kat971_addin0, kat971_addin1, kat971_retbits +}; +static const struct drbg_kat kat971 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat971_t +}; + +static const unsigned char kat972_entropyin[] = { + 0x07, 0xd9, 0x96, 0x26, 0x93, 0x8c, 0x9f, 0x30, 0xa9, 0x96, 0x68, 0xd9, + 0x68, 0x81, 0x62, 0xba, 0xf3, 0x09, 0x3c, 0x6f, 0xbf, 0xa7, 0x83, 0xc9, + 0x9b, 0x9d, 0x92, 0x9e, 0x4b, 0x3b, 0xd4, 0x8e, 0xee, 0x1a, 0xb4, 0x94, + 0xa7, 0xd8, 0x51, 0xaa, +}; +static const unsigned char kat972_nonce[] = {0}; +static const unsigned char kat972_persstr[] = {0}; +static const unsigned char kat972_addin0[] = {0}; +static const unsigned char kat972_addin1[] = {0}; +static const unsigned char kat972_retbits[] = { + 0x50, 0x2e, 0x41, 0x25, 0x96, 0xd1, 0x88, 0x63, 0xff, 0xd5, 0x38, 0xbd, + 0x30, 0x47, 0xa1, 0xd2, 0x73, 0xe0, 0x52, 0x69, 0x94, 0xf4, 0xec, 0xa5, + 0x33, 0x8b, 0xc3, 0x1e, 0x41, 0xc5, 0xd6, 0xaf, 0x27, 0x3a, 0xe3, 0x09, + 0x28, 0x24, 0xa1, 0x4c, 0x10, 0x71, 0x66, 0x63, 0x1b, 0x5a, 0x8a, 0x94, + 0xcb, 0xf4, 0x9a, 0x7f, 0xdf, 0x9c, 0xad, 0xc1, 0x2c, 0xd1, 0x4b, 0x31, + 0x64, 0x2e, 0x70, 0x1f, +}; +static const struct drbg_kat_no_reseed kat972_t = { + 11, kat972_entropyin, kat972_nonce, kat972_persstr, + kat972_addin0, kat972_addin1, kat972_retbits +}; +static const struct drbg_kat kat972 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat972_t +}; + +static const unsigned char kat973_entropyin[] = { + 0xc5, 0x49, 0x35, 0x74, 0x29, 0xb4, 0x2c, 0xb2, 0x9b, 0x49, 0xf5, 0x7c, + 0x8e, 0xf8, 0x77, 0xca, 0x1c, 0xf1, 0xa4, 0x3c, 0x0b, 0xa7, 0xe0, 0xc6, + 0x0e, 0x54, 0x93, 0x52, 0xae, 0x84, 0x30, 0x84, 0x44, 0xe9, 0xe7, 0x03, + 0x5b, 0x49, 0x4f, 0xce, +}; +static const unsigned char kat973_nonce[] = {0}; +static const unsigned char kat973_persstr[] = {0}; +static const unsigned char kat973_addin0[] = {0}; +static const unsigned char kat973_addin1[] = {0}; +static const unsigned char kat973_retbits[] = { + 0x5d, 0x34, 0x19, 0x06, 0xe6, 0x87, 0x66, 0x36, 0xd7, 0x2c, 0x0e, 0x9c, + 0x78, 0x9d, 0x52, 0xea, 0x6e, 0x82, 0x7d, 0x10, 0xe4, 0xae, 0x2c, 0x8e, + 0xaf, 0x6b, 0x20, 0x3c, 0x3a, 0x26, 0xc7, 0x18, 0xc7, 0x64, 0x60, 0x85, + 0x39, 0xc5, 0x7f, 0x8c, 0x15, 0x81, 0x9a, 0xda, 0xb1, 0xb0, 0xbc, 0x3d, + 0x9a, 0x13, 0x2f, 0xf0, 0x13, 0x78, 0x1f, 0x22, 0xce, 0xe4, 0xb7, 0x3a, + 0xdd, 0xb5, 0x0b, 0x96, +}; +static const struct drbg_kat_no_reseed kat973_t = { + 12, kat973_entropyin, kat973_nonce, kat973_persstr, + kat973_addin0, kat973_addin1, kat973_retbits +}; +static const struct drbg_kat kat973 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat973_t +}; + +static const unsigned char kat974_entropyin[] = { + 0x2c, 0x7d, 0x6a, 0x54, 0x49, 0x3e, 0xc7, 0x62, 0x38, 0x86, 0x45, 0x62, + 0x31, 0x26, 0x4d, 0x25, 0x80, 0xfc, 0x08, 0x1e, 0xd0, 0xb9, 0x7f, 0xa5, + 0x73, 0x20, 0xef, 0x34, 0x03, 0x40, 0xba, 0xd5, 0x60, 0x16, 0x4e, 0xf2, + 0x65, 0x62, 0x9b, 0xec, +}; +static const unsigned char kat974_nonce[] = {0}; +static const unsigned char kat974_persstr[] = {0}; +static const unsigned char kat974_addin0[] = {0}; +static const unsigned char kat974_addin1[] = {0}; +static const unsigned char kat974_retbits[] = { + 0x20, 0xd7, 0x34, 0xab, 0x56, 0x11, 0xa3, 0x9d, 0x6c, 0xca, 0xf8, 0x94, + 0x1d, 0x25, 0x48, 0x04, 0xc3, 0x6b, 0xa8, 0xbf, 0x20, 0x6b, 0xf1, 0x0d, + 0x82, 0xf7, 0x21, 0xba, 0x95, 0x48, 0xb9, 0xf7, 0xcc, 0x10, 0x0f, 0x94, + 0x8a, 0xaf, 0xe3, 0xf3, 0x24, 0xca, 0x49, 0x43, 0x78, 0x32, 0x56, 0x64, + 0x1d, 0x5a, 0x1f, 0xb2, 0x3f, 0xd6, 0x06, 0x13, 0xfc, 0x0f, 0xbe, 0x30, + 0xc9, 0xca, 0xa8, 0xfa, +}; +static const struct drbg_kat_no_reseed kat974_t = { + 13, kat974_entropyin, kat974_nonce, kat974_persstr, + kat974_addin0, kat974_addin1, kat974_retbits +}; +static const struct drbg_kat kat974 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat974_t +}; + +static const unsigned char kat975_entropyin[] = { + 0x8d, 0xc5, 0xa9, 0xe8, 0xe9, 0x45, 0x8f, 0x84, 0x1d, 0xae, 0x78, 0x8d, + 0x24, 0xbb, 0x5f, 0xb1, 0x92, 0xef, 0x1f, 0xfa, 0xcc, 0xd9, 0x91, 0xf8, + 0x9f, 0x2b, 0x5d, 0x3b, 0xa5, 0x7c, 0x14, 0x71, 0x61, 0x24, 0x96, 0xc7, + 0xd9, 0xcd, 0xd1, 0x74, +}; +static const unsigned char kat975_nonce[] = {0}; +static const unsigned char kat975_persstr[] = {0}; +static const unsigned char kat975_addin0[] = {0}; +static const unsigned char kat975_addin1[] = {0}; +static const unsigned char kat975_retbits[] = { + 0xfd, 0x74, 0xa7, 0xb1, 0x5c, 0x9a, 0xf2, 0xea, 0x14, 0x0a, 0x2d, 0x0e, + 0x35, 0x3c, 0x33, 0x87, 0xb3, 0x89, 0x14, 0x4d, 0xda, 0x57, 0x79, 0xc6, + 0x9f, 0x29, 0x99, 0x17, 0xdf, 0xb1, 0x9d, 0xe6, 0xad, 0x60, 0xdd, 0x44, + 0x0c, 0x14, 0xc0, 0x10, 0xca, 0x16, 0x14, 0x36, 0x24, 0x3b, 0xf9, 0xd3, + 0x3a, 0x66, 0x49, 0x33, 0x9a, 0x35, 0x43, 0xb8, 0xe7, 0x17, 0x89, 0x62, + 0x1d, 0xa7, 0xab, 0x7b, +}; +static const struct drbg_kat_no_reseed kat975_t = { + 14, kat975_entropyin, kat975_nonce, kat975_persstr, + kat975_addin0, kat975_addin1, kat975_retbits +}; +static const struct drbg_kat kat975 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat975_t +}; + +static const unsigned char kat976_entropyin[] = { + 0xb8, 0x95, 0xb8, 0x91, 0xf0, 0x39, 0x05, 0x28, 0x21, 0xfb, 0xb4, 0xa8, + 0x89, 0xfc, 0xed, 0x86, 0x1b, 0x96, 0xc3, 0x7e, 0x36, 0xa5, 0xf4, 0xf7, + 0xaa, 0x20, 0x8a, 0x2b, 0xf3, 0x3a, 0x89, 0x6f, 0xe7, 0xe2, 0x9f, 0x3f, + 0x6c, 0xf0, 0x04, 0x1f, +}; +static const unsigned char kat976_nonce[] = {0}; +static const unsigned char kat976_persstr[] = {0}; +static const unsigned char kat976_addin0[] = { + 0x87, 0x11, 0xdf, 0x39, 0x31, 0xa9, 0x03, 0x59, 0x05, 0xeb, 0xdf, 0x51, + 0x0b, 0x3e, 0xa3, 0xf3, 0x44, 0x92, 0x3b, 0x2f, 0x20, 0xa5, 0x61, 0x70, + 0x9c, 0x0d, 0xef, 0x03, 0xb9, 0x57, 0x0b, 0xe2, 0x67, 0xe9, 0x76, 0x57, + 0x19, 0xa2, 0x5d, 0x8a, +}; +static const unsigned char kat976_addin1[] = { + 0x03, 0x90, 0x8b, 0x9f, 0xd5, 0x6b, 0xad, 0x5a, 0x16, 0x45, 0xb6, 0x88, + 0xa4, 0xf9, 0xc2, 0x34, 0x2b, 0xc0, 0xf8, 0x1f, 0xed, 0x6f, 0x74, 0x49, + 0xaf, 0x14, 0xe9, 0x29, 0x60, 0xd6, 0x01, 0x27, 0xdd, 0xa4, 0xe2, 0x74, + 0x87, 0xe7, 0x74, 0x91, +}; +static const unsigned char kat976_retbits[] = { + 0x13, 0x85, 0x39, 0x7b, 0x1a, 0x24, 0x5b, 0xd0, 0x6b, 0xbb, 0x4b, 0xcf, + 0x65, 0x1a, 0x52, 0xb2, 0xd3, 0x08, 0x67, 0xd3, 0xe2, 0xf9, 0x8e, 0x9c, + 0x7a, 0x9e, 0xe9, 0x59, 0xd2, 0xe1, 0xbb, 0xd6, 0x3a, 0x10, 0x05, 0x4f, + 0xc0, 0x81, 0xcd, 0x22, 0xa7, 0xf3, 0xb6, 0x5e, 0xd2, 0xf0, 0xb3, 0xa3, + 0xde, 0xb3, 0x89, 0xd2, 0xf3, 0x36, 0xe5, 0x0b, 0x35, 0x9a, 0x6c, 0x3e, + 0x83, 0x66, 0x7f, 0xb1, +}; +static const struct drbg_kat_no_reseed kat976_t = { + 0, kat976_entropyin, kat976_nonce, kat976_persstr, + kat976_addin0, kat976_addin1, kat976_retbits +}; +static const struct drbg_kat kat976 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat976_t +}; + +static const unsigned char kat977_entropyin[] = { + 0x3d, 0x64, 0x3a, 0xc8, 0xb8, 0xf2, 0x73, 0x2b, 0x29, 0x28, 0x61, 0xd0, + 0x82, 0xb2, 0x31, 0x41, 0x5f, 0xd6, 0x7e, 0xe5, 0x4f, 0x1e, 0xf5, 0xfd, + 0xcd, 0x9d, 0xbf, 0xe7, 0x07, 0x92, 0xd7, 0xd8, 0x77, 0x81, 0x54, 0x6d, + 0x97, 0xe9, 0x62, 0xf5, +}; +static const unsigned char kat977_nonce[] = {0}; +static const unsigned char kat977_persstr[] = {0}; +static const unsigned char kat977_addin0[] = { + 0x5a, 0xd6, 0xb5, 0xcd, 0x05, 0x3b, 0x08, 0x17, 0x50, 0xfd, 0x1a, 0x8e, + 0x9b, 0x70, 0x59, 0xac, 0x15, 0x0a, 0xe4, 0x80, 0x50, 0x33, 0xd0, 0x01, + 0x98, 0x8b, 0x18, 0xcb, 0xbc, 0xab, 0x76, 0xd9, 0xa0, 0xd3, 0x2b, 0x33, + 0xa1, 0xcc, 0xd6, 0x5f, +}; +static const unsigned char kat977_addin1[] = { + 0x7e, 0xdd, 0x5d, 0x19, 0x26, 0x98, 0xaa, 0x5b, 0xf4, 0xee, 0x25, 0xda, + 0xf8, 0x6d, 0x8e, 0x50, 0xaa, 0x4b, 0xdb, 0x03, 0xbf, 0x04, 0x3e, 0xe9, + 0x9e, 0x09, 0x56, 0xf1, 0x5e, 0xbc, 0x82, 0x76, 0xf0, 0x1d, 0x04, 0xce, + 0x14, 0x4e, 0x97, 0xf3, +}; +static const unsigned char kat977_retbits[] = { + 0x66, 0x42, 0x70, 0x4d, 0x9c, 0xf7, 0x2c, 0xf6, 0x08, 0xe8, 0x2d, 0x32, + 0xae, 0xc4, 0x53, 0x66, 0xbd, 0x09, 0xb5, 0xbb, 0x1d, 0x71, 0xd9, 0x9d, + 0x43, 0xae, 0x7b, 0x10, 0x9c, 0x82, 0x18, 0x6b, 0xca, 0x37, 0x1c, 0x96, + 0xa0, 0xd0, 0xd2, 0x93, 0xd1, 0xe7, 0xae, 0x45, 0xf3, 0xc7, 0x50, 0xa5, + 0x48, 0x6a, 0xcf, 0x30, 0xb8, 0x2a, 0xcd, 0x49, 0x22, 0xb1, 0xd5, 0xcc, + 0x7e, 0x07, 0xf4, 0x09, +}; +static const struct drbg_kat_no_reseed kat977_t = { + 1, kat977_entropyin, kat977_nonce, kat977_persstr, + kat977_addin0, kat977_addin1, kat977_retbits +}; +static const struct drbg_kat kat977 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat977_t +}; + +static const unsigned char kat978_entropyin[] = { + 0xb8, 0x2a, 0xbe, 0x82, 0xcd, 0x65, 0xe2, 0x94, 0x03, 0xe8, 0x3a, 0x05, + 0x1d, 0xf4, 0x60, 0x54, 0x52, 0x7b, 0x85, 0xfa, 0xe6, 0x53, 0xdc, 0xdd, + 0x5e, 0x1c, 0xda, 0x27, 0x59, 0x46, 0xff, 0x25, 0x53, 0x07, 0xb0, 0xe4, + 0xac, 0xd4, 0xf4, 0x9e, +}; +static const unsigned char kat978_nonce[] = {0}; +static const unsigned char kat978_persstr[] = {0}; +static const unsigned char kat978_addin0[] = { + 0x22, 0xa3, 0x9c, 0x8f, 0x9b, 0xab, 0x96, 0x67, 0x97, 0x8f, 0xbb, 0x68, + 0xf8, 0xf7, 0x1d, 0x95, 0x64, 0x85, 0xd7, 0x67, 0xd9, 0xd5, 0x2c, 0xfd, + 0xdc, 0x0c, 0xe1, 0x86, 0xc2, 0x35, 0x33, 0x51, 0xe8, 0xff, 0x1f, 0x41, + 0xe6, 0x4f, 0xff, 0xb0, +}; +static const unsigned char kat978_addin1[] = { + 0x99, 0x75, 0xe9, 0x92, 0xd7, 0x80, 0x18, 0xa4, 0x15, 0xb3, 0x16, 0xfc, + 0x54, 0xf0, 0x25, 0x82, 0x72, 0x70, 0xbc, 0x8f, 0xaf, 0xad, 0x2d, 0x59, + 0x2c, 0xb6, 0x72, 0xad, 0x49, 0x9e, 0x94, 0x46, 0x30, 0x7b, 0xce, 0xe4, + 0xd5, 0x8d, 0xeb, 0xd1, +}; +static const unsigned char kat978_retbits[] = { + 0xe3, 0x74, 0x24, 0x85, 0x87, 0xe5, 0x3a, 0xaa, 0x59, 0x7c, 0xef, 0x1f, + 0xeb, 0xdb, 0x61, 0x1b, 0xef, 0xe7, 0x18, 0x8a, 0xa6, 0xd6, 0xe4, 0x58, + 0x4e, 0x1e, 0x3e, 0x72, 0x02, 0x9b, 0xd8, 0x48, 0xae, 0x56, 0xd4, 0x1e, + 0x8f, 0x6e, 0x73, 0xd8, 0x98, 0x8d, 0x94, 0x27, 0xaa, 0xeb, 0x08, 0xe2, + 0x4e, 0x45, 0xe0, 0x42, 0xcd, 0x1e, 0x41, 0xef, 0x8d, 0x71, 0x2a, 0x66, + 0x19, 0x70, 0x88, 0x76, +}; +static const struct drbg_kat_no_reseed kat978_t = { + 2, kat978_entropyin, kat978_nonce, kat978_persstr, + kat978_addin0, kat978_addin1, kat978_retbits +}; +static const struct drbg_kat kat978 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat978_t +}; + +static const unsigned char kat979_entropyin[] = { + 0xf9, 0x07, 0x5a, 0x56, 0x01, 0x89, 0xae, 0xdb, 0x89, 0xbd, 0xb8, 0x5a, + 0x9c, 0xb9, 0xff, 0x3b, 0xcc, 0x61, 0x5e, 0x9f, 0x7d, 0x35, 0x59, 0xa6, + 0xb6, 0xcb, 0x14, 0x32, 0x16, 0xd3, 0x48, 0x09, 0x65, 0xc5, 0x66, 0x52, + 0x42, 0x77, 0x0f, 0x82, +}; +static const unsigned char kat979_nonce[] = {0}; +static const unsigned char kat979_persstr[] = {0}; +static const unsigned char kat979_addin0[] = { + 0x9b, 0x90, 0x3d, 0xed, 0xb0, 0x49, 0x2c, 0x36, 0x63, 0x22, 0xa5, 0x3b, + 0x74, 0xff, 0xb2, 0x9d, 0x2f, 0x46, 0xfd, 0x81, 0x3e, 0x3c, 0x93, 0xda, + 0x6d, 0x9e, 0xca, 0xe8, 0xa5, 0x79, 0x89, 0x14, 0xb0, 0x97, 0xf6, 0xf0, + 0xbc, 0xf7, 0x81, 0x25, +}; +static const unsigned char kat979_addin1[] = { + 0x2e, 0x45, 0xbd, 0x77, 0x1a, 0x77, 0x65, 0xef, 0x10, 0x6d, 0xc3, 0x2e, + 0x74, 0xab, 0x44, 0xf3, 0x53, 0x48, 0x7b, 0xa3, 0xc6, 0x48, 0xa2, 0x78, + 0xaf, 0xe7, 0x3f, 0x5a, 0xe0, 0xe0, 0x1b, 0xa5, 0x10, 0x36, 0x0a, 0x3c, + 0x8a, 0x1e, 0x0a, 0x36, +}; +static const unsigned char kat979_retbits[] = { + 0xb8, 0xc8, 0x86, 0x6f, 0x5a, 0x16, 0x51, 0x64, 0xfc, 0x66, 0xfb, 0x9a, + 0xb9, 0xeb, 0x96, 0xb4, 0x4f, 0x0d, 0xc3, 0x69, 0xa6, 0xb5, 0x6e, 0xbc, + 0x6f, 0xa1, 0x86, 0x96, 0xe0, 0xdd, 0x63, 0x76, 0x2c, 0x52, 0x98, 0xb8, + 0x03, 0xde, 0x06, 0x5c, 0x05, 0xdd, 0xdb, 0x1f, 0xb7, 0xd8, 0xfd, 0x95, + 0x20, 0x20, 0x11, 0x50, 0x30, 0xd9, 0x1d, 0x14, 0xa1, 0xc0, 0xcd, 0xc2, + 0x43, 0xf8, 0x99, 0xee, +}; +static const struct drbg_kat_no_reseed kat979_t = { + 3, kat979_entropyin, kat979_nonce, kat979_persstr, + kat979_addin0, kat979_addin1, kat979_retbits +}; +static const struct drbg_kat kat979 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat979_t +}; + +static const unsigned char kat980_entropyin[] = { + 0x11, 0x53, 0x2e, 0xcd, 0x67, 0xc8, 0x96, 0xe1, 0x84, 0x3c, 0x3f, 0x9e, + 0x41, 0x4e, 0x99, 0xd8, 0x65, 0xe3, 0x32, 0x08, 0x80, 0xb8, 0x20, 0x6d, + 0xfb, 0xe9, 0xe2, 0xd2, 0x3b, 0x1d, 0x02, 0xa0, 0x39, 0xd6, 0x93, 0x6d, + 0xc4, 0x7d, 0xcf, 0xf7, +}; +static const unsigned char kat980_nonce[] = {0}; +static const unsigned char kat980_persstr[] = {0}; +static const unsigned char kat980_addin0[] = { + 0x88, 0xe2, 0x2d, 0x83, 0x18, 0xf8, 0x51, 0xbd, 0xe6, 0xa5, 0x9d, 0x8b, + 0x24, 0x43, 0x1c, 0xfa, 0xfa, 0x45, 0xd7, 0xb0, 0x3a, 0xf1, 0x37, 0xc5, + 0x25, 0x73, 0x11, 0xee, 0x74, 0xaa, 0x16, 0x13, 0xed, 0xf7, 0xb3, 0xbb, + 0x02, 0x4d, 0x03, 0x52, +}; +static const unsigned char kat980_addin1[] = { + 0x8d, 0xeb, 0x0d, 0x99, 0xa4, 0x68, 0x72, 0xcb, 0x82, 0x54, 0x4f, 0xe0, + 0x93, 0xe5, 0xe3, 0xe8, 0xe8, 0x23, 0xea, 0x20, 0x19, 0xae, 0x40, 0x0b, + 0x32, 0x88, 0xb6, 0xd3, 0xb9, 0x51, 0x1d, 0x37, 0xce, 0x6e, 0xec, 0x97, + 0x9d, 0xe4, 0x3f, 0xe7, +}; +static const unsigned char kat980_retbits[] = { + 0xa7, 0x7a, 0xc4, 0xfa, 0x8e, 0x11, 0x70, 0x43, 0xc2, 0x84, 0xe6, 0x7e, + 0x85, 0xd5, 0xab, 0x87, 0xc6, 0xfe, 0x5a, 0x09, 0xd6, 0xfb, 0x83, 0xd9, + 0x2b, 0x17, 0x9b, 0xb4, 0xb0, 0xa2, 0xcc, 0x24, 0xab, 0xdd, 0xef, 0x2d, + 0xa4, 0xc8, 0x0e, 0x86, 0x7e, 0xa2, 0xff, 0x07, 0x12, 0x90, 0x20, 0x92, + 0x13, 0x92, 0x86, 0x38, 0x26, 0x9c, 0xe4, 0xc8, 0x5e, 0x41, 0x57, 0xff, + 0xcd, 0xff, 0x01, 0x4c, +}; +static const struct drbg_kat_no_reseed kat980_t = { + 4, kat980_entropyin, kat980_nonce, kat980_persstr, + kat980_addin0, kat980_addin1, kat980_retbits +}; +static const struct drbg_kat kat980 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat980_t +}; + +static const unsigned char kat981_entropyin[] = { + 0xc2, 0x11, 0x94, 0x53, 0xce, 0x99, 0xf3, 0x9d, 0x06, 0x5d, 0x81, 0xc4, + 0x6a, 0x41, 0xe0, 0xeb, 0xbc, 0x2b, 0x97, 0xe4, 0xe6, 0xc4, 0xfe, 0xd4, + 0x95, 0x83, 0x6b, 0xec, 0xbf, 0x74, 0x04, 0x31, 0x06, 0x67, 0xf0, 0x04, + 0xb4, 0xf6, 0x24, 0x33, +}; +static const unsigned char kat981_nonce[] = {0}; +static const unsigned char kat981_persstr[] = {0}; +static const unsigned char kat981_addin0[] = { + 0xe8, 0x58, 0xd3, 0xa3, 0xc2, 0x73, 0xc1, 0xb2, 0xd5, 0xc6, 0x15, 0xb1, + 0x75, 0x7a, 0xaf, 0x8e, 0x01, 0xaa, 0x38, 0xc0, 0x13, 0x18, 0xb3, 0x02, + 0x70, 0x0f, 0x50, 0x99, 0xe1, 0xe4, 0xcd, 0x13, 0x67, 0xae, 0x74, 0x6b, + 0xaa, 0xcc, 0x33, 0xde, +}; +static const unsigned char kat981_addin1[] = { + 0xf3, 0x12, 0xcb, 0xf2, 0x12, 0x57, 0x61, 0x53, 0x39, 0xb3, 0x96, 0xdc, + 0x07, 0xae, 0x88, 0x95, 0x9e, 0x5b, 0x7e, 0x9a, 0x97, 0x37, 0x47, 0x76, + 0x83, 0xd8, 0x00, 0xe3, 0xa6, 0x03, 0x38, 0x44, 0xcc, 0x67, 0xf0, 0xc9, + 0xa6, 0x9e, 0x2f, 0xce, +}; +static const unsigned char kat981_retbits[] = { + 0xee, 0x06, 0xe9, 0xa2, 0x24, 0x10, 0x6e, 0x1d, 0x41, 0xdd, 0x12, 0x08, + 0x4d, 0xed, 0x2a, 0x9e, 0xe0, 0x76, 0xc1, 0xe2, 0xb8, 0x29, 0xf1, 0x79, + 0x73, 0x2a, 0x72, 0x29, 0xaa, 0xd5, 0xeb, 0xe3, 0xfc, 0xef, 0x34, 0x33, + 0x2e, 0xd9, 0x35, 0x55, 0xd6, 0x75, 0xc3, 0x6c, 0x7d, 0xb3, 0x37, 0xfe, + 0x6a, 0xd8, 0xca, 0x3a, 0xcf, 0x97, 0xaa, 0xf3, 0x36, 0x31, 0xb7, 0x2a, + 0xd7, 0x6a, 0x30, 0x0a, +}; +static const struct drbg_kat_no_reseed kat981_t = { + 5, kat981_entropyin, kat981_nonce, kat981_persstr, + kat981_addin0, kat981_addin1, kat981_retbits +}; +static const struct drbg_kat kat981 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat981_t +}; + +static const unsigned char kat982_entropyin[] = { + 0x78, 0x89, 0x0b, 0xa4, 0xb4, 0x8d, 0x48, 0xc1, 0xe0, 0x70, 0xd9, 0x6d, + 0x95, 0x80, 0xc9, 0xb5, 0x14, 0xbb, 0x74, 0x20, 0xa3, 0x02, 0x57, 0xcf, + 0xcf, 0x2d, 0x28, 0x95, 0x84, 0x6e, 0x9e, 0x82, 0x1b, 0xcb, 0xc6, 0x3d, + 0xac, 0xea, 0xd9, 0x0c, +}; +static const unsigned char kat982_nonce[] = {0}; +static const unsigned char kat982_persstr[] = {0}; +static const unsigned char kat982_addin0[] = { + 0x5a, 0x1a, 0x0b, 0x67, 0xbf, 0x74, 0xfe, 0xb1, 0x58, 0xe2, 0x66, 0xd3, + 0xf5, 0x73, 0xf6, 0x94, 0xac, 0x20, 0xc8, 0x98, 0x93, 0x22, 0x9a, 0xc5, + 0x29, 0x7d, 0x5b, 0x0f, 0xc3, 0x12, 0x2c, 0x9c, 0xc9, 0x85, 0x14, 0x98, + 0xd4, 0xdb, 0x25, 0x16, +}; +static const unsigned char kat982_addin1[] = { + 0xb9, 0xd7, 0x83, 0x7a, 0xed, 0x40, 0x14, 0xc8, 0x62, 0xc1, 0x8f, 0x26, + 0x85, 0x96, 0xa0, 0x22, 0x04, 0xe1, 0xae, 0xe4, 0x9f, 0x1a, 0x29, 0xd5, + 0xe8, 0x7f, 0x05, 0xe8, 0xac, 0xa5, 0xbe, 0x80, 0x51, 0x00, 0xc3, 0x0c, + 0x16, 0xbd, 0x1a, 0x71, +}; +static const unsigned char kat982_retbits[] = { + 0x96, 0x6a, 0xdb, 0xe2, 0xd8, 0x9e, 0x66, 0x35, 0x75, 0x8e, 0x08, 0x02, + 0x69, 0x86, 0xc3, 0x03, 0xe2, 0x11, 0x49, 0xf6, 0xe1, 0xd9, 0x62, 0xd1, + 0x76, 0x49, 0xee, 0x43, 0xcb, 0x20, 0x81, 0x9a, 0x13, 0x6b, 0x42, 0xcd, + 0x86, 0x2c, 0x24, 0x5d, 0x6a, 0x35, 0x73, 0xb1, 0x91, 0x21, 0x20, 0x92, + 0xd0, 0x59, 0x5c, 0x9b, 0xda, 0x6b, 0xcf, 0xcc, 0xa7, 0x94, 0xce, 0x6b, + 0xf8, 0xc9, 0x26, 0xd8, +}; +static const struct drbg_kat_no_reseed kat982_t = { + 6, kat982_entropyin, kat982_nonce, kat982_persstr, + kat982_addin0, kat982_addin1, kat982_retbits +}; +static const struct drbg_kat kat982 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat982_t +}; + +static const unsigned char kat983_entropyin[] = { + 0xfc, 0x0f, 0x59, 0xee, 0x83, 0x3c, 0xf9, 0xfd, 0x13, 0x00, 0xbf, 0x1f, + 0x77, 0xcd, 0xe4, 0x7b, 0x94, 0x32, 0xe9, 0x12, 0x86, 0x6c, 0xe8, 0xb3, + 0xec, 0xcb, 0x3d, 0xf9, 0x1c, 0xf5, 0x39, 0x66, 0x80, 0x27, 0xfa, 0xc3, + 0x8e, 0x0b, 0x80, 0x5e, +}; +static const unsigned char kat983_nonce[] = {0}; +static const unsigned char kat983_persstr[] = {0}; +static const unsigned char kat983_addin0[] = { + 0x49, 0x26, 0x7f, 0x05, 0x83, 0xff, 0x8d, 0xb1, 0xf9, 0x7b, 0x97, 0xc1, + 0xaf, 0x0e, 0x64, 0x57, 0x9f, 0x22, 0x72, 0x2e, 0xd3, 0x15, 0x3b, 0xa5, + 0x05, 0x7f, 0x0e, 0x15, 0x5d, 0xaf, 0xb7, 0xd7, 0xcc, 0x55, 0xa1, 0x7d, + 0x76, 0xe9, 0x89, 0x73, +}; +static const unsigned char kat983_addin1[] = { + 0xb4, 0x59, 0xbb, 0xc3, 0x53, 0xc4, 0x79, 0xd5, 0x2c, 0x1d, 0xf5, 0xfb, + 0xed, 0x65, 0x3a, 0x14, 0xda, 0x09, 0x2c, 0x4b, 0x9c, 0x33, 0x98, 0x1d, + 0x96, 0x17, 0x81, 0x72, 0xe2, 0x82, 0xf5, 0x70, 0xab, 0x59, 0x94, 0x2e, + 0x33, 0x47, 0x2e, 0x23, +}; +static const unsigned char kat983_retbits[] = { + 0x2a, 0x47, 0xd5, 0x77, 0x22, 0xc7, 0x9b, 0xda, 0x6d, 0x54, 0xe2, 0x88, + 0xdb, 0x36, 0xb2, 0xad, 0xe9, 0xb6, 0x44, 0x98, 0x99, 0x5e, 0x49, 0xee, + 0xbc, 0x06, 0xf0, 0xf8, 0xf3, 0x0a, 0x5f, 0xc6, 0x2b, 0x35, 0x40, 0x34, + 0xf7, 0xe6, 0x98, 0x7c, 0x93, 0x0d, 0x2c, 0x4d, 0x1a, 0xf3, 0xc6, 0x66, + 0x2f, 0x4f, 0xc1, 0x09, 0x29, 0x8d, 0xa2, 0x36, 0x87, 0x40, 0x0f, 0x6b, + 0xd9, 0xcb, 0x30, 0x2a, +}; +static const struct drbg_kat_no_reseed kat983_t = { + 7, kat983_entropyin, kat983_nonce, kat983_persstr, + kat983_addin0, kat983_addin1, kat983_retbits +}; +static const struct drbg_kat kat983 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat983_t +}; + +static const unsigned char kat984_entropyin[] = { + 0xd8, 0x40, 0x7e, 0x1d, 0x31, 0x74, 0xe0, 0x60, 0x5d, 0x89, 0x08, 0x13, + 0xfe, 0x50, 0xc0, 0x38, 0x3e, 0xd3, 0xd9, 0xd4, 0xbd, 0x05, 0xa3, 0x73, + 0xf8, 0x97, 0x15, 0x88, 0x12, 0x70, 0xbc, 0xac, 0xd6, 0x14, 0x56, 0x94, + 0xf7, 0xed, 0x80, 0xf4, +}; +static const unsigned char kat984_nonce[] = {0}; +static const unsigned char kat984_persstr[] = {0}; +static const unsigned char kat984_addin0[] = { + 0xea, 0x1d, 0x2e, 0x12, 0x82, 0x24, 0x4e, 0xe3, 0x18, 0xf5, 0x27, 0x89, + 0xe3, 0xbb, 0xba, 0x48, 0x4c, 0x33, 0xa2, 0xd8, 0x5a, 0xff, 0x68, 0xdc, + 0x60, 0x26, 0x24, 0xe5, 0xae, 0xff, 0x7d, 0x77, 0x07, 0xbe, 0x6e, 0xf8, + 0x0a, 0xc6, 0x74, 0xef, +}; +static const unsigned char kat984_addin1[] = { + 0x32, 0x8e, 0xf9, 0xe1, 0xb6, 0xea, 0xab, 0x46, 0x74, 0x6a, 0x46, 0xe6, + 0xf5, 0x76, 0x0e, 0xf2, 0x3a, 0x6f, 0xb7, 0x8e, 0x6c, 0x5b, 0x66, 0x32, + 0xdc, 0x25, 0xfa, 0xeb, 0xc3, 0x97, 0x81, 0x3c, 0xa4, 0x25, 0xda, 0x4e, + 0x71, 0xa8, 0x75, 0x35, +}; +static const unsigned char kat984_retbits[] = { + 0x3f, 0x66, 0x61, 0xa2, 0xfd, 0xa1, 0x7a, 0x48, 0x63, 0x58, 0x7f, 0x59, + 0xc0, 0x04, 0x58, 0x80, 0xf4, 0x02, 0x18, 0x18, 0x47, 0x7b, 0x1c, 0x83, + 0x65, 0xec, 0x58, 0xe5, 0xb2, 0x05, 0x89, 0xef, 0xae, 0xf8, 0x02, 0x6f, + 0x34, 0xee, 0xe0, 0x87, 0x01, 0xfd, 0x51, 0x2a, 0x79, 0x9c, 0x3e, 0xd5, + 0x0a, 0xe7, 0x21, 0x22, 0xc2, 0xcc, 0x3d, 0x3d, 0x27, 0x4c, 0x5c, 0x3d, + 0xa3, 0x08, 0xbf, 0xce, +}; +static const struct drbg_kat_no_reseed kat984_t = { + 8, kat984_entropyin, kat984_nonce, kat984_persstr, + kat984_addin0, kat984_addin1, kat984_retbits +}; +static const struct drbg_kat kat984 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat984_t +}; + +static const unsigned char kat985_entropyin[] = { + 0xd2, 0x3b, 0x7b, 0xae, 0x79, 0x8f, 0xcb, 0x9a, 0x68, 0x9c, 0x36, 0x88, + 0xec, 0x69, 0xa5, 0x1b, 0x27, 0xd4, 0x68, 0x40, 0x3d, 0xe1, 0x95, 0xa9, + 0x25, 0xeb, 0x5a, 0xe8, 0xec, 0xf6, 0xef, 0x1c, 0x69, 0xee, 0xcc, 0xe1, + 0x82, 0x4f, 0x9c, 0x7f, +}; +static const unsigned char kat985_nonce[] = {0}; +static const unsigned char kat985_persstr[] = {0}; +static const unsigned char kat985_addin0[] = { + 0x41, 0x82, 0x06, 0xc8, 0xd6, 0xcf, 0xde, 0x44, 0xfd, 0xa2, 0xff, 0x2b, + 0x60, 0xba, 0x44, 0xa4, 0x2e, 0x11, 0x6c, 0xbf, 0x34, 0x3b, 0x39, 0x63, + 0xd9, 0x84, 0x95, 0x04, 0xa4, 0xb5, 0xb8, 0x70, 0xad, 0x71, 0xf4, 0xbe, + 0x3c, 0x04, 0x46, 0xe9, +}; +static const unsigned char kat985_addin1[] = { + 0xe2, 0xb1, 0x37, 0x86, 0xd5, 0xc4, 0x08, 0x69, 0xb4, 0xd5, 0xaf, 0xb9, + 0xfa, 0x1a, 0x09, 0xc2, 0x04, 0xa3, 0xa1, 0x13, 0xdb, 0x3f, 0x3c, 0xef, + 0x9c, 0xec, 0xab, 0xeb, 0x96, 0xb9, 0x5e, 0xed, 0x2d, 0x8c, 0xff, 0x11, + 0x71, 0x7a, 0x77, 0x67, +}; +static const unsigned char kat985_retbits[] = { + 0xd4, 0xcf, 0x8c, 0x4c, 0x4d, 0x5d, 0x67, 0x2b, 0xfd, 0x21, 0xfa, 0xf1, + 0x94, 0x40, 0x43, 0xf2, 0x95, 0x55, 0x8a, 0xef, 0x43, 0x00, 0x8e, 0xd7, + 0x00, 0x3e, 0xa0, 0xba, 0x0f, 0xa7, 0xc5, 0xbb, 0x98, 0x1e, 0x90, 0x8d, + 0x6c, 0x17, 0xb6, 0xd0, 0xa9, 0xd5, 0xa4, 0x1d, 0x0d, 0x2b, 0x39, 0x0b, + 0x81, 0xcb, 0xd8, 0xe2, 0x37, 0xec, 0xe7, 0xb8, 0xeb, 0x40, 0xff, 0xa0, + 0x80, 0xfe, 0xdd, 0x06, +}; +static const struct drbg_kat_no_reseed kat985_t = { + 9, kat985_entropyin, kat985_nonce, kat985_persstr, + kat985_addin0, kat985_addin1, kat985_retbits +}; +static const struct drbg_kat kat985 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat985_t +}; + +static const unsigned char kat986_entropyin[] = { + 0x8d, 0x4e, 0x1c, 0x0f, 0x18, 0x49, 0xe5, 0xa6, 0xf0, 0x03, 0xa2, 0xab, + 0x24, 0x5e, 0xd5, 0xc0, 0xe6, 0x8f, 0x2a, 0x5b, 0x64, 0x3c, 0x28, 0x8e, + 0x6e, 0x3d, 0x84, 0x17, 0xd2, 0x46, 0xb9, 0x13, 0x26, 0xd9, 0xfe, 0xcb, + 0x56, 0xec, 0x34, 0x08, +}; +static const unsigned char kat986_nonce[] = {0}; +static const unsigned char kat986_persstr[] = {0}; +static const unsigned char kat986_addin0[] = { + 0x6e, 0x0c, 0xb3, 0xfe, 0xc6, 0x3e, 0xfe, 0x94, 0xe4, 0x05, 0x00, 0xeb, + 0x58, 0x03, 0xc0, 0x14, 0xec, 0x16, 0x11, 0x98, 0xc5, 0x5b, 0xd0, 0x61, + 0xab, 0xf7, 0x23, 0xa3, 0x8d, 0xe6, 0x43, 0xcc, 0x3b, 0xae, 0xa3, 0x0e, + 0x31, 0x22, 0x65, 0x58, +}; +static const unsigned char kat986_addin1[] = { + 0x39, 0x1b, 0x8d, 0x09, 0xb6, 0x00, 0x35, 0xed, 0xc7, 0xc6, 0x32, 0xca, + 0xda, 0x8b, 0x0d, 0xe5, 0x3f, 0xd1, 0x41, 0x0e, 0x7b, 0x45, 0xa3, 0x5a, + 0x89, 0xd3, 0x97, 0xd6, 0x80, 0x90, 0x96, 0x0b, 0xa7, 0xc5, 0x2f, 0x56, + 0x5e, 0x85, 0x8c, 0xc4, +}; +static const unsigned char kat986_retbits[] = { + 0x72, 0x7d, 0x6d, 0x67, 0x31, 0xf7, 0x3d, 0x80, 0xe5, 0x58, 0x12, 0x99, + 0xac, 0x91, 0x1d, 0x21, 0x2d, 0x11, 0x34, 0x1e, 0xad, 0xb7, 0x72, 0x4a, + 0x35, 0x1a, 0x04, 0x63, 0x5c, 0xca, 0x4e, 0xab, 0x5b, 0x02, 0x3b, 0x35, + 0x40, 0x41, 0x7c, 0xf8, 0x97, 0xe3, 0xf0, 0xa3, 0xfb, 0x91, 0x31, 0x1e, + 0x8f, 0x4b, 0x5a, 0x83, 0xc9, 0xb9, 0x85, 0x4b, 0xb1, 0xb0, 0xcb, 0x0e, + 0x38, 0x13, 0x98, 0x99, +}; +static const struct drbg_kat_no_reseed kat986_t = { + 10, kat986_entropyin, kat986_nonce, kat986_persstr, + kat986_addin0, kat986_addin1, kat986_retbits +}; +static const struct drbg_kat kat986 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat986_t +}; + +static const unsigned char kat987_entropyin[] = { + 0xb6, 0x41, 0xb1, 0x0e, 0x3f, 0xb8, 0x77, 0x69, 0x8d, 0x6c, 0x85, 0xab, + 0xd1, 0xf3, 0x05, 0xa4, 0x85, 0x8b, 0x9e, 0x5f, 0x8b, 0x78, 0xbe, 0x71, + 0x4f, 0xf1, 0x8b, 0x6c, 0x55, 0x61, 0x37, 0xce, 0xbd, 0x94, 0xef, 0x35, + 0x7d, 0x06, 0xd3, 0x9e, +}; +static const unsigned char kat987_nonce[] = {0}; +static const unsigned char kat987_persstr[] = {0}; +static const unsigned char kat987_addin0[] = { + 0x09, 0x1e, 0x03, 0x9b, 0xfa, 0x7c, 0x41, 0xb8, 0x76, 0x57, 0xc4, 0x24, + 0xf0, 0xd9, 0xbc, 0x57, 0x59, 0xe0, 0x7e, 0xe5, 0x13, 0x86, 0xcd, 0x20, + 0xc8, 0x17, 0x61, 0x1c, 0x4f, 0x71, 0xc3, 0x1e, 0x7d, 0xba, 0x1d, 0x06, + 0xc2, 0xfd, 0x3c, 0x53, +}; +static const unsigned char kat987_addin1[] = { + 0x73, 0x4a, 0xa5, 0x10, 0x94, 0xd2, 0x97, 0xe4, 0xcb, 0x8f, 0xcc, 0xd5, + 0x15, 0x2c, 0x05, 0xd2, 0xfe, 0x25, 0x27, 0x21, 0x49, 0x9f, 0x0a, 0x51, + 0x9e, 0xff, 0x69, 0x9a, 0x52, 0x88, 0x87, 0x4d, 0x8d, 0xc8, 0x6d, 0xbc, + 0xf8, 0x41, 0xe5, 0x98, +}; +static const unsigned char kat987_retbits[] = { + 0xd0, 0xc8, 0xe1, 0xc5, 0xd9, 0x5e, 0x9e, 0x79, 0x96, 0xe4, 0xf0, 0x18, + 0x66, 0x1f, 0x9b, 0x08, 0xa5, 0xd4, 0xbe, 0xdf, 0x3a, 0x69, 0xc0, 0xc5, + 0xdf, 0x18, 0x24, 0xd4, 0xba, 0xa0, 0xa1, 0xfb, 0x14, 0xa1, 0x24, 0x89, + 0x34, 0x0c, 0xf3, 0x9a, 0x4c, 0x50, 0x80, 0x07, 0x6e, 0x8a, 0xb9, 0x40, + 0xf7, 0xa5, 0x28, 0xa5, 0x64, 0x41, 0x4d, 0x0b, 0x0e, 0x15, 0xfd, 0x61, + 0x06, 0xa5, 0xc3, 0x1f, +}; +static const struct drbg_kat_no_reseed kat987_t = { + 11, kat987_entropyin, kat987_nonce, kat987_persstr, + kat987_addin0, kat987_addin1, kat987_retbits +}; +static const struct drbg_kat kat987 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat987_t +}; + +static const unsigned char kat988_entropyin[] = { + 0xdd, 0x72, 0xbd, 0xa9, 0xee, 0x04, 0xf6, 0xdd, 0x9a, 0x56, 0x7d, 0x65, + 0x1c, 0x6d, 0xdb, 0xf1, 0x82, 0xf4, 0xd7, 0xb9, 0x7f, 0xae, 0xbf, 0x97, + 0x25, 0xc2, 0x51, 0xe6, 0x49, 0xfb, 0xfc, 0xc2, 0x65, 0x0d, 0x64, 0x19, + 0xd5, 0x72, 0xa4, 0x42, +}; +static const unsigned char kat988_nonce[] = {0}; +static const unsigned char kat988_persstr[] = {0}; +static const unsigned char kat988_addin0[] = { + 0xf1, 0x08, 0xe9, 0xd7, 0x79, 0x6d, 0xb7, 0x40, 0xc1, 0x72, 0x9b, 0x16, + 0xc0, 0x58, 0x6c, 0x94, 0x59, 0xfe, 0xab, 0x01, 0x39, 0x08, 0x23, 0xa1, + 0x96, 0xf4, 0x06, 0x80, 0x46, 0x1d, 0x41, 0x4f, 0xce, 0x09, 0x92, 0x15, + 0x5b, 0x2b, 0x3b, 0xd1, +}; +static const unsigned char kat988_addin1[] = { + 0xf7, 0x23, 0x8f, 0x4f, 0x4f, 0xd6, 0x32, 0x8b, 0x6c, 0xd0, 0xaa, 0x35, + 0xbb, 0xbc, 0x0c, 0x35, 0x5d, 0x41, 0xe0, 0x2a, 0xa6, 0x29, 0xfb, 0x54, + 0xeb, 0x22, 0xa6, 0xb4, 0x5b, 0x39, 0xb3, 0x72, 0xe5, 0x7c, 0xa0, 0x95, + 0x80, 0x40, 0x99, 0x6a, +}; +static const unsigned char kat988_retbits[] = { + 0x27, 0x1e, 0xfc, 0x67, 0xc3, 0xcc, 0x27, 0xb5, 0xee, 0xbf, 0x75, 0xcc, + 0xe6, 0x5b, 0xf4, 0x79, 0x1e, 0xb9, 0x92, 0xec, 0x24, 0xe5, 0x35, 0x74, + 0x3b, 0xcf, 0x00, 0x5e, 0xe0, 0x13, 0x7a, 0xe6, 0x56, 0x4a, 0xf6, 0x18, + 0x11, 0x67, 0xae, 0x7f, 0xff, 0x2c, 0xbd, 0x08, 0x0e, 0x92, 0x65, 0xdf, + 0xcc, 0x01, 0xe2, 0x14, 0xc4, 0x7d, 0x40, 0x2b, 0x74, 0xb5, 0xe2, 0x03, + 0x82, 0xd2, 0x1d, 0xfd, +}; +static const struct drbg_kat_no_reseed kat988_t = { + 12, kat988_entropyin, kat988_nonce, kat988_persstr, + kat988_addin0, kat988_addin1, kat988_retbits +}; +static const struct drbg_kat kat988 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat988_t +}; + +static const unsigned char kat989_entropyin[] = { + 0xa4, 0x88, 0x9e, 0xc0, 0xca, 0x94, 0x2c, 0x85, 0x14, 0xc6, 0x51, 0x25, + 0xf3, 0xc3, 0xc6, 0x88, 0xb0, 0xbb, 0xdf, 0xe8, 0x7a, 0xb6, 0xa9, 0x1f, + 0xf7, 0x5d, 0x4f, 0x07, 0x39, 0x3e, 0x6b, 0x38, 0xe6, 0x42, 0x3c, 0xc8, + 0xf9, 0xe1, 0x4e, 0x94, +}; +static const unsigned char kat989_nonce[] = {0}; +static const unsigned char kat989_persstr[] = {0}; +static const unsigned char kat989_addin0[] = { + 0xd2, 0x4e, 0x58, 0xd8, 0x78, 0x24, 0x0b, 0xb7, 0xc7, 0x70, 0xd8, 0xb1, + 0xb6, 0xe2, 0x5f, 0x2b, 0x1c, 0xe1, 0x19, 0x1e, 0x1f, 0xee, 0x7e, 0x44, + 0xa2, 0x66, 0x49, 0xef, 0x58, 0xe5, 0xa2, 0x12, 0x1d, 0x04, 0x83, 0x7b, + 0x9d, 0xb4, 0x2a, 0xe8, +}; +static const unsigned char kat989_addin1[] = { + 0x9f, 0x3c, 0xad, 0xb2, 0x0c, 0x77, 0xe6, 0x57, 0x24, 0xd8, 0x5a, 0x37, + 0xb0, 0xb9, 0x76, 0x63, 0x35, 0x81, 0xa1, 0xb8, 0xeb, 0x52, 0x6e, 0x7a, + 0xb7, 0x95, 0xe8, 0xcf, 0xfd, 0x1d, 0xbb, 0x83, 0xa0, 0x56, 0x73, 0x32, + 0x06, 0xfe, 0x73, 0x2a, +}; +static const unsigned char kat989_retbits[] = { + 0x5a, 0xf3, 0x6e, 0x40, 0x19, 0xd8, 0xfe, 0xf1, 0x11, 0x25, 0x62, 0x32, + 0x2a, 0x32, 0xd0, 0x3d, 0x49, 0x92, 0xc5, 0x07, 0x01, 0x77, 0xf7, 0xbd, + 0x31, 0x7b, 0x4a, 0xad, 0x03, 0x47, 0x59, 0x34, 0x15, 0x25, 0xe7, 0x97, + 0xb1, 0x7f, 0x08, 0xfe, 0xee, 0x8d, 0x16, 0x6e, 0x46, 0x1e, 0x9e, 0x77, + 0xac, 0x40, 0xc4, 0x64, 0x2b, 0xfe, 0x7a, 0x53, 0xb9, 0x1b, 0x1d, 0xba, + 0xca, 0x11, 0xeb, 0x83, +}; +static const struct drbg_kat_no_reseed kat989_t = { + 13, kat989_entropyin, kat989_nonce, kat989_persstr, + kat989_addin0, kat989_addin1, kat989_retbits +}; +static const struct drbg_kat kat989 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat989_t +}; + +static const unsigned char kat990_entropyin[] = { + 0x09, 0x19, 0x66, 0xc3, 0x42, 0x66, 0x7e, 0xaf, 0xb6, 0xd3, 0xd2, 0xd0, + 0x7c, 0x23, 0xfa, 0xb0, 0xa3, 0xf4, 0x35, 0xd7, 0x02, 0x29, 0x3f, 0xcc, + 0x2c, 0xcf, 0x8d, 0x22, 0x18, 0xf7, 0x11, 0x32, 0xc2, 0xb9, 0x70, 0xfd, + 0x5c, 0x50, 0x6f, 0xdf, +}; +static const unsigned char kat990_nonce[] = {0}; +static const unsigned char kat990_persstr[] = {0}; +static const unsigned char kat990_addin0[] = { + 0x79, 0xb7, 0x5f, 0xe1, 0x04, 0xf0, 0xd7, 0xc8, 0x6b, 0xbe, 0x31, 0x15, + 0x85, 0x19, 0x8f, 0x82, 0x35, 0x0a, 0x13, 0xc4, 0xa7, 0xe4, 0x50, 0xcf, + 0xb8, 0x6e, 0x44, 0x0c, 0x00, 0xfc, 0x6f, 0x26, 0xa5, 0x08, 0xe4, 0xbc, + 0x73, 0x10, 0x7e, 0x2c, +}; +static const unsigned char kat990_addin1[] = { + 0x6f, 0x20, 0x13, 0x45, 0x64, 0xe7, 0x9c, 0x7e, 0xb5, 0x30, 0x72, 0x7f, + 0x5b, 0x64, 0x99, 0x96, 0xc8, 0x9d, 0x7b, 0xd5, 0x4e, 0xba, 0xc0, 0x95, + 0xc1, 0x9a, 0x16, 0x23, 0x48, 0xfc, 0xe4, 0x68, 0x78, 0x2f, 0x03, 0x24, + 0xf2, 0x13, 0x8c, 0x84, +}; +static const unsigned char kat990_retbits[] = { + 0xd0, 0x0f, 0x78, 0x4a, 0x96, 0x13, 0x67, 0x70, 0x23, 0xd2, 0x7a, 0x43, + 0x50, 0xef, 0xc4, 0xcc, 0x28, 0xf9, 0x5a, 0x39, 0x28, 0xc4, 0xc8, 0xda, + 0x67, 0x06, 0x3e, 0xe5, 0x9d, 0xe5, 0xd2, 0xda, 0x13, 0xa3, 0x09, 0x0f, + 0x58, 0x0e, 0x61, 0xff, 0xf1, 0xaf, 0x27, 0xa8, 0xf4, 0xba, 0x94, 0x18, + 0xe0, 0x7d, 0x85, 0x6a, 0x99, 0x6e, 0x83, 0x6a, 0x89, 0x06, 0x20, 0x64, + 0xba, 0xc7, 0xa9, 0xcc, +}; +static const struct drbg_kat_no_reseed kat990_t = { + 14, kat990_entropyin, kat990_nonce, kat990_persstr, + kat990_addin0, kat990_addin1, kat990_retbits +}; +static const struct drbg_kat kat990 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat990_t +}; + +static const unsigned char kat991_entropyin[] = { + 0xd7, 0x66, 0x97, 0x49, 0x5a, 0xdd, 0x9b, 0xaa, 0xc8, 0xcf, 0xdf, 0x90, + 0xe0, 0xa6, 0xf3, 0x38, 0x1a, 0x52, 0xb2, 0x88, 0x9f, 0x84, 0x0a, 0x24, + 0xcf, 0xc9, 0x60, 0x6f, 0x97, 0xc4, 0x94, 0x46, 0x20, 0x2e, 0x70, 0x58, + 0x3f, 0xde, 0x09, 0xdc, +}; +static const unsigned char kat991_nonce[] = {0}; +static const unsigned char kat991_persstr[] = { + 0xd6, 0x4e, 0x54, 0x65, 0x23, 0xfb, 0x08, 0x2b, 0x5e, 0x87, 0xbb, 0xe6, + 0xb6, 0x6a, 0x8e, 0x6a, 0x79, 0x40, 0xbb, 0x06, 0xed, 0x17, 0xfe, 0x83, + 0x3c, 0x4e, 0x9b, 0xbb, 0x21, 0x13, 0x96, 0xc2, 0x27, 0xf8, 0x36, 0x71, + 0xc9, 0x24, 0x24, 0x0e, +}; +static const unsigned char kat991_addin0[] = {0}; +static const unsigned char kat991_addin1[] = {0}; +static const unsigned char kat991_retbits[] = { + 0x56, 0x93, 0xf6, 0x8e, 0xc7, 0xa8, 0xd2, 0x63, 0x1d, 0xee, 0x9d, 0x37, + 0x15, 0x03, 0xe0, 0x5c, 0xbd, 0x5f, 0xb8, 0x72, 0x50, 0x6f, 0x04, 0x00, + 0x50, 0xb1, 0xd4, 0x41, 0xa9, 0x4b, 0xd7, 0x4e, 0xc0, 0x6f, 0x24, 0xc1, + 0xcc, 0x43, 0x63, 0xec, 0xe1, 0xd8, 0xb2, 0x29, 0x5e, 0x74, 0x38, 0x9b, + 0x6d, 0xd8, 0xb1, 0xe5, 0x43, 0x8b, 0xce, 0xab, 0x2f, 0x2b, 0xc2, 0xaf, + 0x5a, 0x9d, 0x8d, 0xa8, +}; +static const struct drbg_kat_no_reseed kat991_t = { + 0, kat991_entropyin, kat991_nonce, kat991_persstr, + kat991_addin0, kat991_addin1, kat991_retbits +}; +static const struct drbg_kat kat991 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat991_t +}; + +static const unsigned char kat992_entropyin[] = { + 0xc2, 0x97, 0xf7, 0x68, 0xf7, 0xff, 0x47, 0x41, 0x87, 0x6c, 0x90, 0xd3, + 0xeb, 0x15, 0x60, 0x0f, 0x11, 0x68, 0x5f, 0x9b, 0x93, 0x1e, 0x62, 0xec, + 0x58, 0x0a, 0xc0, 0x5d, 0xc8, 0xf1, 0x22, 0xf6, 0xa7, 0xa0, 0x5e, 0x09, + 0xc9, 0x43, 0x23, 0xae, +}; +static const unsigned char kat992_nonce[] = {0}; +static const unsigned char kat992_persstr[] = { + 0x0d, 0x47, 0xaa, 0x43, 0xac, 0x1c, 0xc6, 0x7a, 0x75, 0x4b, 0x0a, 0x5a, + 0xfa, 0xcd, 0xff, 0x9e, 0x78, 0x4c, 0x9e, 0xcd, 0x18, 0x4a, 0xd3, 0x1b, + 0x07, 0x65, 0x74, 0xc5, 0x6a, 0x48, 0x55, 0x0b, 0xcd, 0x7d, 0x32, 0xb3, + 0xe9, 0xb3, 0xa1, 0x14, +}; +static const unsigned char kat992_addin0[] = {0}; +static const unsigned char kat992_addin1[] = {0}; +static const unsigned char kat992_retbits[] = { + 0x85, 0x8c, 0x54, 0x20, 0x88, 0x0d, 0x2d, 0x22, 0xc9, 0xa3, 0xd2, 0x27, + 0x0c, 0xc8, 0xfb, 0xfe, 0x2c, 0x7b, 0x53, 0xb2, 0x11, 0x07, 0xb9, 0xe4, + 0x56, 0xe6, 0x46, 0x15, 0x7e, 0xe7, 0x48, 0xfd, 0xaf, 0xcc, 0xd8, 0x28, + 0x15, 0x42, 0x3f, 0xe6, 0x18, 0xc4, 0x45, 0xc8, 0x10, 0xda, 0x9a, 0x32, + 0x3c, 0xdb, 0x95, 0xde, 0xf4, 0x8e, 0x8b, 0xca, 0xf3, 0xb7, 0x28, 0x1a, + 0xcd, 0x49, 0x42, 0x2a, +}; +static const struct drbg_kat_no_reseed kat992_t = { + 1, kat992_entropyin, kat992_nonce, kat992_persstr, + kat992_addin0, kat992_addin1, kat992_retbits +}; +static const struct drbg_kat kat992 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat992_t +}; + +static const unsigned char kat993_entropyin[] = { + 0xbd, 0x71, 0x61, 0xdb, 0x32, 0x82, 0xde, 0x22, 0x58, 0xea, 0xc2, 0xbb, + 0x30, 0x40, 0x02, 0xfc, 0xc9, 0x6f, 0x87, 0xf9, 0x96, 0xae, 0x00, 0xe3, + 0x5b, 0xe3, 0xd8, 0x4f, 0xcb, 0x04, 0x83, 0x5e, 0xb7, 0x5f, 0x84, 0x3e, + 0x67, 0x99, 0xf7, 0xfd, +}; +static const unsigned char kat993_nonce[] = {0}; +static const unsigned char kat993_persstr[] = { + 0x28, 0xb6, 0xdb, 0x39, 0x36, 0x0d, 0xd5, 0xb1, 0x9d, 0x9f, 0x4b, 0x86, + 0x2a, 0x8b, 0xc5, 0xc0, 0x61, 0x7c, 0xcf, 0x3c, 0x80, 0xd0, 0x2c, 0xbc, + 0xe1, 0xbd, 0xf9, 0xb3, 0x0e, 0x46, 0x64, 0x7e, 0xf5, 0x4f, 0x6b, 0x5c, + 0xe3, 0x47, 0x3e, 0x91, +}; +static const unsigned char kat993_addin0[] = {0}; +static const unsigned char kat993_addin1[] = {0}; +static const unsigned char kat993_retbits[] = { + 0xca, 0xb8, 0x9f, 0x54, 0x88, 0x71, 0x69, 0x75, 0x8c, 0x26, 0xfa, 0xb0, + 0xf8, 0x33, 0x97, 0x2d, 0x0c, 0x07, 0x81, 0x01, 0x5b, 0x71, 0xef, 0xf1, + 0xa2, 0x28, 0x46, 0x05, 0xc7, 0xed, 0x98, 0x75, 0x52, 0xf0, 0xbc, 0xf1, + 0x7a, 0x59, 0x56, 0xcb, 0xbf, 0xf1, 0x80, 0x52, 0x84, 0x28, 0x5d, 0x53, + 0x8b, 0xec, 0x14, 0xf4, 0x14, 0xf3, 0xb2, 0xbc, 0x01, 0x6b, 0xfa, 0xc8, + 0x05, 0xdb, 0x96, 0xf8, +}; +static const struct drbg_kat_no_reseed kat993_t = { + 2, kat993_entropyin, kat993_nonce, kat993_persstr, + kat993_addin0, kat993_addin1, kat993_retbits +}; +static const struct drbg_kat kat993 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat993_t +}; + +static const unsigned char kat994_entropyin[] = { + 0x82, 0xf1, 0xc5, 0xee, 0xc1, 0x63, 0x7e, 0xc6, 0x63, 0x2b, 0xc9, 0x6c, + 0x8f, 0x70, 0x96, 0x27, 0x56, 0x1d, 0xe6, 0xb5, 0x6b, 0x88, 0x5c, 0x12, + 0x1d, 0x4f, 0x82, 0x0e, 0xd2, 0x2c, 0x21, 0x14, 0xde, 0x94, 0x67, 0x15, + 0x0f, 0x0e, 0x98, 0x19, +}; +static const unsigned char kat994_nonce[] = {0}; +static const unsigned char kat994_persstr[] = { + 0x0a, 0x6d, 0x16, 0x49, 0xba, 0x34, 0x0d, 0xa7, 0xd7, 0x9f, 0x6f, 0x09, + 0x8b, 0xa2, 0x28, 0x4c, 0xf7, 0xf5, 0x7b, 0x28, 0x72, 0x5b, 0x21, 0x11, + 0x75, 0x5e, 0x36, 0xe7, 0x79, 0x8c, 0x5b, 0x66, 0x79, 0x4c, 0x8b, 0x10, + 0x9c, 0xd2, 0x99, 0x71, +}; +static const unsigned char kat994_addin0[] = {0}; +static const unsigned char kat994_addin1[] = {0}; +static const unsigned char kat994_retbits[] = { + 0x2e, 0x33, 0x81, 0x68, 0xab, 0xba, 0xba, 0x95, 0xa5, 0x87, 0xcd, 0xc6, + 0xd9, 0xb1, 0x1e, 0x8b, 0x55, 0x5d, 0x89, 0x52, 0x65, 0x5d, 0x6d, 0xe4, + 0xed, 0x02, 0x6b, 0x05, 0x82, 0x37, 0xf5, 0xd7, 0xd0, 0x22, 0x14, 0xba, + 0x08, 0x48, 0xe5, 0x01, 0xc0, 0xa0, 0xb7, 0xe3, 0x8f, 0x98, 0xff, 0x32, + 0x78, 0x5c, 0xc5, 0x29, 0xb0, 0xa2, 0x67, 0x91, 0x83, 0x14, 0x73, 0xd1, + 0x88, 0xb0, 0x24, 0x87, +}; +static const struct drbg_kat_no_reseed kat994_t = { + 3, kat994_entropyin, kat994_nonce, kat994_persstr, + kat994_addin0, kat994_addin1, kat994_retbits +}; +static const struct drbg_kat kat994 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat994_t +}; + +static const unsigned char kat995_entropyin[] = { + 0x96, 0x43, 0xdf, 0x0b, 0x92, 0xd8, 0xcf, 0x95, 0x7b, 0xb6, 0x7e, 0xd8, + 0x6b, 0xdc, 0x02, 0x0b, 0xbf, 0xae, 0xbf, 0x53, 0x40, 0xac, 0xd2, 0xf3, + 0x44, 0x91, 0x9f, 0xd6, 0x3a, 0xf0, 0x75, 0x75, 0xa0, 0xe0, 0x1a, 0x8b, + 0x50, 0x07, 0x49, 0x4c, +}; +static const unsigned char kat995_nonce[] = {0}; +static const unsigned char kat995_persstr[] = { + 0x8a, 0xa8, 0x4e, 0x2a, 0x29, 0xed, 0x39, 0x36, 0x3a, 0x80, 0x10, 0xf7, + 0x32, 0xcd, 0xe9, 0xc4, 0x6e, 0x86, 0x31, 0x4b, 0x69, 0x04, 0xd6, 0x90, + 0xa4, 0x0e, 0x65, 0xc6, 0x13, 0x86, 0xa2, 0x6d, 0x9e, 0x9c, 0x88, 0x21, + 0xee, 0x68, 0xaf, 0xa8, +}; +static const unsigned char kat995_addin0[] = {0}; +static const unsigned char kat995_addin1[] = {0}; +static const unsigned char kat995_retbits[] = { + 0x89, 0x5c, 0x49, 0x95, 0x17, 0x7a, 0xfa, 0x56, 0xfc, 0x49, 0x00, 0x37, + 0xc2, 0x3e, 0xf8, 0x30, 0x7b, 0xe1, 0x04, 0x9d, 0xa8, 0xa0, 0xba, 0x32, + 0x9a, 0x25, 0xb4, 0x89, 0xe5, 0xbd, 0x26, 0xb7, 0xd5, 0x0c, 0x29, 0xdd, + 0xe0, 0xe7, 0x98, 0x02, 0xa1, 0x3c, 0x70, 0x26, 0x40, 0x32, 0xff, 0xad, + 0x06, 0xbb, 0x91, 0xcb, 0xa9, 0xcb, 0xd7, 0xdf, 0x36, 0x1f, 0x74, 0xbd, + 0x83, 0x09, 0xaa, 0x8a, +}; +static const struct drbg_kat_no_reseed kat995_t = { + 4, kat995_entropyin, kat995_nonce, kat995_persstr, + kat995_addin0, kat995_addin1, kat995_retbits +}; +static const struct drbg_kat kat995 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat995_t +}; + +static const unsigned char kat996_entropyin[] = { + 0x98, 0xb1, 0x95, 0x35, 0xdc, 0xce, 0xb0, 0xa0, 0x07, 0xdd, 0x62, 0xfe, + 0x75, 0x0b, 0xe5, 0x4d, 0x1e, 0x58, 0xf7, 0xae, 0x75, 0xac, 0x42, 0x91, + 0x9d, 0x6b, 0xd7, 0x69, 0xda, 0x73, 0xf8, 0xe4, 0x60, 0xb9, 0xd0, 0x38, + 0x95, 0x3c, 0xc0, 0xdd, +}; +static const unsigned char kat996_nonce[] = {0}; +static const unsigned char kat996_persstr[] = { + 0x8c, 0x43, 0x81, 0xf6, 0x1b, 0x04, 0x8c, 0x25, 0x8c, 0x4b, 0x30, 0x9e, + 0x13, 0x2e, 0x21, 0x7b, 0xe9, 0x2e, 0x58, 0xf8, 0xc5, 0xa5, 0xdd, 0x15, + 0x38, 0x7a, 0xfc, 0xfb, 0x10, 0xab, 0x9f, 0xaf, 0xde, 0xd9, 0xc2, 0xd1, + 0xce, 0x48, 0x32, 0xc0, +}; +static const unsigned char kat996_addin0[] = {0}; +static const unsigned char kat996_addin1[] = {0}; +static const unsigned char kat996_retbits[] = { + 0x14, 0x56, 0xfd, 0xdb, 0x09, 0xdb, 0x4d, 0xd4, 0x43, 0xf1, 0xbe, 0x27, + 0x0c, 0xbe, 0x1f, 0xeb, 0x7e, 0xa8, 0xeb, 0xdd, 0xc8, 0x79, 0x68, 0xb1, + 0x3c, 0x5d, 0x37, 0xe8, 0xeb, 0x51, 0x5f, 0xd5, 0x15, 0xca, 0x5a, 0xd8, + 0x37, 0xc4, 0x24, 0x38, 0x9d, 0x0b, 0x60, 0xfb, 0x06, 0x70, 0x20, 0xa4, + 0x94, 0x2d, 0x3d, 0x4b, 0x6f, 0x3c, 0xe1, 0x77, 0x8b, 0x35, 0x42, 0x0b, + 0x9d, 0xb1, 0xf8, 0xf3, +}; +static const struct drbg_kat_no_reseed kat996_t = { + 5, kat996_entropyin, kat996_nonce, kat996_persstr, + kat996_addin0, kat996_addin1, kat996_retbits +}; +static const struct drbg_kat kat996 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat996_t +}; + +static const unsigned char kat997_entropyin[] = { + 0xa6, 0x74, 0x41, 0x7c, 0x5b, 0x05, 0x6b, 0x1a, 0x04, 0x71, 0x9f, 0xac, + 0x10, 0x12, 0xfc, 0x42, 0x64, 0xb8, 0xc4, 0x43, 0x47, 0x86, 0xfb, 0xb3, + 0xf3, 0x29, 0x0d, 0xd3, 0xb2, 0xc6, 0x2b, 0xba, 0x1d, 0x21, 0x88, 0x29, + 0x2a, 0x8a, 0x82, 0x30, +}; +static const unsigned char kat997_nonce[] = {0}; +static const unsigned char kat997_persstr[] = { + 0x19, 0xaa, 0x3b, 0xbf, 0x14, 0x8b, 0x88, 0x07, 0xa7, 0xb3, 0x1e, 0xa8, + 0xf0, 0xfa, 0x67, 0x0c, 0x68, 0x51, 0x7b, 0xb7, 0x81, 0xd9, 0xbe, 0xa5, + 0x46, 0xce, 0x43, 0xa7, 0x07, 0x74, 0xb9, 0xa8, 0x15, 0xc3, 0xd6, 0xd5, + 0xb6, 0x4c, 0x1e, 0x27, +}; +static const unsigned char kat997_addin0[] = {0}; +static const unsigned char kat997_addin1[] = {0}; +static const unsigned char kat997_retbits[] = { + 0xfe, 0xf3, 0xf3, 0x83, 0x72, 0x8a, 0x86, 0x8c, 0x90, 0x08, 0x3a, 0xce, + 0x7b, 0x41, 0xe9, 0xd0, 0x55, 0xd2, 0x87, 0xe1, 0x0f, 0xad, 0x82, 0xc4, + 0xae, 0x3f, 0xec, 0xe1, 0x8b, 0x5c, 0xa6, 0x7f, 0x29, 0x63, 0x88, 0x39, + 0xe2, 0x41, 0xae, 0xc6, 0xda, 0xaa, 0x8c, 0xbf, 0x26, 0x30, 0xbe, 0x42, + 0xe7, 0x3b, 0x24, 0x3a, 0x5e, 0x69, 0x7d, 0xd9, 0x03, 0x6f, 0xa9, 0x9d, + 0x0e, 0xf3, 0x30, 0xdb, +}; +static const struct drbg_kat_no_reseed kat997_t = { + 6, kat997_entropyin, kat997_nonce, kat997_persstr, + kat997_addin0, kat997_addin1, kat997_retbits +}; +static const struct drbg_kat kat997 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat997_t +}; + +static const unsigned char kat998_entropyin[] = { + 0xde, 0x22, 0x98, 0x37, 0x31, 0x40, 0xa3, 0xe3, 0x76, 0x30, 0x22, 0xb6, + 0xaa, 0x22, 0x50, 0x0e, 0x74, 0xb0, 0xd8, 0xc1, 0x63, 0x7f, 0x77, 0x8e, + 0x14, 0x24, 0x0b, 0x2b, 0x23, 0xff, 0x65, 0xd5, 0x8e, 0xb3, 0xef, 0x42, + 0x43, 0xbc, 0x40, 0x7b, +}; +static const unsigned char kat998_nonce[] = {0}; +static const unsigned char kat998_persstr[] = { + 0x96, 0xfb, 0xc0, 0xe7, 0x51, 0x9f, 0xf5, 0xe3, 0x36, 0xad, 0x3b, 0x52, + 0xf9, 0xd0, 0x29, 0x25, 0xee, 0xd5, 0xa5, 0xa2, 0xe0, 0x5f, 0xa5, 0x43, + 0xd9, 0xaa, 0x3a, 0x10, 0x3a, 0x48, 0xf0, 0x55, 0x82, 0x02, 0x3a, 0xa1, + 0xc3, 0x91, 0xc1, 0xc7, +}; +static const unsigned char kat998_addin0[] = {0}; +static const unsigned char kat998_addin1[] = {0}; +static const unsigned char kat998_retbits[] = { + 0x28, 0x3a, 0x1b, 0x1f, 0x36, 0xcf, 0x5d, 0x65, 0x4a, 0x92, 0x66, 0xa8, + 0x47, 0xf2, 0x45, 0x98, 0x5e, 0x8d, 0x40, 0x47, 0x3e, 0x6c, 0x9e, 0xfd, + 0xcc, 0xe1, 0xba, 0xe3, 0x20, 0x18, 0x4e, 0x1b, 0x81, 0x70, 0x2e, 0xf0, + 0x41, 0x28, 0x88, 0x8a, 0xdf, 0xc5, 0xb1, 0x42, 0xb8, 0xd0, 0xb1, 0xf2, + 0xe6, 0xa1, 0x71, 0xb8, 0xd1, 0xa0, 0x79, 0x56, 0x19, 0x2d, 0x67, 0x1a, + 0x9f, 0x55, 0x77, 0xe6, +}; +static const struct drbg_kat_no_reseed kat998_t = { + 7, kat998_entropyin, kat998_nonce, kat998_persstr, + kat998_addin0, kat998_addin1, kat998_retbits +}; +static const struct drbg_kat kat998 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat998_t +}; + +static const unsigned char kat999_entropyin[] = { + 0x7b, 0xc9, 0x2d, 0x09, 0x2d, 0x7c, 0x03, 0x08, 0x33, 0x1c, 0xa5, 0x7a, + 0x1e, 0x8e, 0xf1, 0x3e, 0x92, 0x86, 0x7e, 0x74, 0x9d, 0xbe, 0x1b, 0xd7, + 0x0e, 0x82, 0x2e, 0x39, 0x10, 0xd8, 0x97, 0x70, 0xfd, 0x72, 0x32, 0x25, + 0x95, 0x40, 0x2f, 0x6f, +}; +static const unsigned char kat999_nonce[] = {0}; +static const unsigned char kat999_persstr[] = { + 0x74, 0x5f, 0x63, 0x68, 0xad, 0x6a, 0xf8, 0x15, 0x5a, 0x2d, 0x03, 0x26, + 0xfc, 0x26, 0x08, 0x03, 0xbd, 0x43, 0xd4, 0x7e, 0x0d, 0x71, 0xed, 0x66, + 0x18, 0xf5, 0xfe, 0x85, 0x21, 0x79, 0x88, 0x96, 0xe8, 0x3e, 0xd1, 0xac, + 0xe8, 0xc8, 0x98, 0xf8, +}; +static const unsigned char kat999_addin0[] = {0}; +static const unsigned char kat999_addin1[] = {0}; +static const unsigned char kat999_retbits[] = { + 0xe6, 0x07, 0xd5, 0x97, 0x77, 0x34, 0x49, 0x8f, 0xb3, 0x2d, 0x27, 0x42, + 0x04, 0xe3, 0xc7, 0x88, 0xb1, 0x99, 0xf3, 0xec, 0xc6, 0x44, 0x5a, 0xfc, + 0xea, 0x5a, 0x56, 0x4d, 0x86, 0xaf, 0xa5, 0x89, 0x14, 0xf6, 0xad, 0x36, + 0xc4, 0x5f, 0xca, 0xec, 0x2f, 0xcb, 0x8b, 0x82, 0x56, 0x0d, 0x81, 0x47, + 0x4b, 0xa3, 0x33, 0x8b, 0xa4, 0x7c, 0x1b, 0x7d, 0x94, 0xbf, 0x69, 0xb5, + 0xcc, 0x55, 0x31, 0x80, +}; +static const struct drbg_kat_no_reseed kat999_t = { + 8, kat999_entropyin, kat999_nonce, kat999_persstr, + kat999_addin0, kat999_addin1, kat999_retbits +}; +static const struct drbg_kat kat999 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat999_t +}; + +static const unsigned char kat1000_entropyin[] = { + 0xaf, 0x9e, 0x55, 0x67, 0x75, 0x9f, 0x9f, 0x57, 0x0a, 0x5e, 0xcf, 0xc1, + 0xb2, 0x12, 0x53, 0x03, 0x4f, 0xec, 0x65, 0x4e, 0x91, 0x36, 0x5d, 0x99, + 0x02, 0x58, 0x5a, 0x18, 0x94, 0xd6, 0xb6, 0x33, 0x44, 0xd9, 0x5b, 0x6e, + 0x88, 0xfd, 0x75, 0xb6, +}; +static const unsigned char kat1000_nonce[] = {0}; +static const unsigned char kat1000_persstr[] = { + 0xe6, 0x47, 0x86, 0x31, 0xbd, 0xcd, 0x52, 0x19, 0xa5, 0x16, 0x83, 0x91, + 0x95, 0x24, 0x9c, 0xda, 0x75, 0x72, 0x4f, 0xd6, 0x31, 0x5c, 0xe3, 0x95, + 0xd2, 0x10, 0xf4, 0x35, 0x01, 0x00, 0x94, 0xfa, 0x28, 0xd5, 0x08, 0xca, + 0xfe, 0xfe, 0xcb, 0xab, +}; +static const unsigned char kat1000_addin0[] = {0}; +static const unsigned char kat1000_addin1[] = {0}; +static const unsigned char kat1000_retbits[] = { + 0x58, 0xa9, 0xeb, 0x36, 0x3c, 0xde, 0x49, 0xd7, 0x6c, 0x9e, 0xfa, 0x45, + 0xfc, 0xdc, 0x4d, 0x01, 0x02, 0x92, 0xaa, 0x1f, 0x41, 0x30, 0x9e, 0xbc, + 0xd7, 0xbc, 0xb7, 0x76, 0x47, 0x64, 0xcf, 0x1e, 0x39, 0xc3, 0xf2, 0x5d, + 0x64, 0x0b, 0xdd, 0xae, 0x78, 0x57, 0x0f, 0xc6, 0x96, 0xf0, 0x41, 0x9c, + 0x07, 0xa1, 0x97, 0x9b, 0xc3, 0xcb, 0xff, 0xc4, 0x58, 0x9f, 0x23, 0xbd, + 0xa8, 0x96, 0xf6, 0x17, +}; +static const struct drbg_kat_no_reseed kat1000_t = { + 9, kat1000_entropyin, kat1000_nonce, kat1000_persstr, + kat1000_addin0, kat1000_addin1, kat1000_retbits +}; +static const struct drbg_kat kat1000 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1000_t +}; + +static const unsigned char kat1001_entropyin[] = { + 0xb1, 0xf6, 0x92, 0xd2, 0x4d, 0xa2, 0xf9, 0xed, 0x26, 0x4f, 0x3f, 0xc1, + 0xb2, 0x39, 0x37, 0x19, 0x8d, 0xf7, 0x14, 0x05, 0xbf, 0xc9, 0xa6, 0xcc, + 0xf2, 0x5c, 0xe3, 0x70, 0x9d, 0xe3, 0xb5, 0x33, 0x4a, 0x0f, 0x88, 0x5e, + 0x2b, 0xae, 0xa4, 0xd7, +}; +static const unsigned char kat1001_nonce[] = {0}; +static const unsigned char kat1001_persstr[] = { + 0x2b, 0x75, 0x08, 0xf8, 0x3b, 0xea, 0xd9, 0x00, 0xb0, 0x40, 0x24, 0xdb, + 0xf8, 0x1a, 0xeb, 0xc0, 0x0e, 0x6a, 0x03, 0xc9, 0xb7, 0xd6, 0x0d, 0x83, + 0xb0, 0x76, 0x6d, 0x31, 0x09, 0x63, 0x0d, 0xff, 0x15, 0x1d, 0xf1, 0x79, + 0x75, 0x16, 0x49, 0x12, +}; +static const unsigned char kat1001_addin0[] = {0}; +static const unsigned char kat1001_addin1[] = {0}; +static const unsigned char kat1001_retbits[] = { + 0xcc, 0x5b, 0x65, 0xb7, 0x12, 0xd9, 0x6e, 0x83, 0x17, 0x2e, 0xb7, 0xe3, + 0x0a, 0x22, 0xac, 0xfc, 0xc9, 0x96, 0x0a, 0x75, 0xa5, 0xf5, 0x04, 0x08, + 0x26, 0x5b, 0x8b, 0xd8, 0x57, 0x11, 0xf9, 0xb6, 0xc2, 0xae, 0x08, 0xab, + 0x1f, 0x33, 0x12, 0xcc, 0x58, 0xac, 0xff, 0xf5, 0xf4, 0x90, 0x1b, 0xcb, + 0xba, 0xf4, 0xbe, 0xe0, 0x8f, 0x29, 0x89, 0xf1, 0x32, 0x4d, 0x91, 0xfc, + 0x71, 0xdf, 0xb0, 0xf0, +}; +static const struct drbg_kat_no_reseed kat1001_t = { + 10, kat1001_entropyin, kat1001_nonce, kat1001_persstr, + kat1001_addin0, kat1001_addin1, kat1001_retbits +}; +static const struct drbg_kat kat1001 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1001_t +}; + +static const unsigned char kat1002_entropyin[] = { + 0x14, 0xfe, 0x15, 0xd3, 0x5f, 0x4c, 0x97, 0xb6, 0xdd, 0xe6, 0xf0, 0xc1, + 0x5e, 0x77, 0x48, 0x6c, 0xf8, 0xd6, 0xd2, 0x16, 0x4f, 0xd0, 0x93, 0x49, + 0xd8, 0x3c, 0xb9, 0x6b, 0x6b, 0x2b, 0x9a, 0x9c, 0x4e, 0xb7, 0x46, 0x11, + 0x72, 0xa9, 0x29, 0x09, +}; +static const unsigned char kat1002_nonce[] = {0}; +static const unsigned char kat1002_persstr[] = { + 0x5b, 0xa3, 0x98, 0x63, 0x58, 0xb7, 0x30, 0x8d, 0x24, 0xac, 0x9f, 0x50, + 0x2e, 0xe1, 0x00, 0x5b, 0x6a, 0x2a, 0x02, 0xca, 0xfc, 0x30, 0x2b, 0x1a, + 0xf6, 0x96, 0x1d, 0x10, 0xb7, 0xd3, 0xf5, 0x2b, 0xa5, 0x03, 0x37, 0x9c, + 0xe0, 0xb6, 0x72, 0xc1, +}; +static const unsigned char kat1002_addin0[] = {0}; +static const unsigned char kat1002_addin1[] = {0}; +static const unsigned char kat1002_retbits[] = { + 0xff, 0xf1, 0x48, 0xe0, 0xf5, 0x77, 0xf9, 0x73, 0xe8, 0xed, 0x6e, 0x77, + 0xbe, 0xd7, 0xa9, 0xa5, 0xbc, 0x6a, 0xd2, 0xda, 0x48, 0x91, 0x45, 0x13, + 0xa2, 0xb4, 0xfc, 0x57, 0x3b, 0x99, 0x09, 0xf4, 0x58, 0x08, 0x68, 0x32, + 0x87, 0x71, 0x75, 0x18, 0x15, 0xce, 0x7d, 0x5a, 0x20, 0x72, 0x60, 0x49, + 0x9c, 0x76, 0x90, 0xbf, 0x44, 0x97, 0x96, 0xb1, 0x67, 0xc9, 0xdf, 0xae, + 0x4d, 0xf2, 0x4f, 0x86, +}; +static const struct drbg_kat_no_reseed kat1002_t = { + 11, kat1002_entropyin, kat1002_nonce, kat1002_persstr, + kat1002_addin0, kat1002_addin1, kat1002_retbits +}; +static const struct drbg_kat kat1002 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1002_t +}; + +static const unsigned char kat1003_entropyin[] = { + 0xd6, 0xf4, 0x9e, 0x52, 0x6e, 0x35, 0xff, 0x25, 0x61, 0x62, 0xf1, 0x7c, + 0xc9, 0xfa, 0xa9, 0x12, 0x63, 0x4f, 0x5e, 0xd9, 0x23, 0x1a, 0x7a, 0x0a, + 0xf4, 0x7d, 0x59, 0x76, 0x6c, 0xd2, 0xbc, 0x83, 0xe8, 0xd4, 0x38, 0xe7, + 0x02, 0x91, 0xb6, 0xb8, +}; +static const unsigned char kat1003_nonce[] = {0}; +static const unsigned char kat1003_persstr[] = { + 0x02, 0xd1, 0xf3, 0xa6, 0xc2, 0x0f, 0xb7, 0xc9, 0x07, 0xce, 0x6d, 0x82, + 0x2d, 0xc3, 0x6b, 0x7c, 0xe1, 0x7e, 0x1c, 0x71, 0xa3, 0x07, 0xd1, 0xec, + 0x24, 0x06, 0xdf, 0xeb, 0x45, 0x8f, 0xa0, 0xe8, 0xf2, 0x7c, 0x1c, 0x39, + 0xae, 0x6d, 0xbc, 0x65, +}; +static const unsigned char kat1003_addin0[] = {0}; +static const unsigned char kat1003_addin1[] = {0}; +static const unsigned char kat1003_retbits[] = { + 0x1f, 0x34, 0xb7, 0x1b, 0x51, 0x5b, 0x3e, 0x6a, 0xa6, 0x7e, 0x45, 0xca, + 0xc0, 0x0d, 0x1d, 0x70, 0xe1, 0x9c, 0x03, 0xb7, 0x28, 0xd0, 0x00, 0x13, + 0x10, 0x9b, 0x5d, 0x98, 0x11, 0xee, 0x90, 0xeb, 0x7c, 0xf5, 0x01, 0xc9, + 0x32, 0x65, 0xce, 0x7f, 0x80, 0xa8, 0x16, 0xc4, 0xd1, 0x0a, 0x57, 0x25, + 0x0c, 0x08, 0x2f, 0xc4, 0x98, 0x50, 0xa2, 0x69, 0x15, 0x20, 0x59, 0x80, + 0x84, 0xe3, 0x4f, 0x07, +}; +static const struct drbg_kat_no_reseed kat1003_t = { + 12, kat1003_entropyin, kat1003_nonce, kat1003_persstr, + kat1003_addin0, kat1003_addin1, kat1003_retbits +}; +static const struct drbg_kat kat1003 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1003_t +}; + +static const unsigned char kat1004_entropyin[] = { + 0x53, 0x94, 0x5c, 0x28, 0x4c, 0x47, 0x14, 0x0b, 0xc5, 0x3f, 0x90, 0x88, + 0xa5, 0xf0, 0xfd, 0x25, 0x2e, 0x83, 0xca, 0x50, 0xb7, 0x8f, 0xd7, 0x39, + 0xe0, 0x54, 0x52, 0xc5, 0x0d, 0xcc, 0x39, 0xf2, 0x15, 0x25, 0x6d, 0x2d, + 0xe0, 0xda, 0xd0, 0xd9, +}; +static const unsigned char kat1004_nonce[] = {0}; +static const unsigned char kat1004_persstr[] = { + 0x37, 0x61, 0x40, 0x61, 0x05, 0xbf, 0x94, 0x1f, 0xe1, 0xd9, 0x80, 0x03, + 0xdb, 0x68, 0xd4, 0x13, 0x26, 0x04, 0xab, 0x59, 0x83, 0x6b, 0x81, 0xae, + 0x15, 0x60, 0xab, 0xe0, 0xbf, 0x8f, 0x4d, 0xde, 0x22, 0xb6, 0xf4, 0xe9, + 0x8e, 0x52, 0x31, 0xf2, +}; +static const unsigned char kat1004_addin0[] = {0}; +static const unsigned char kat1004_addin1[] = {0}; +static const unsigned char kat1004_retbits[] = { + 0x42, 0xb0, 0x0b, 0x0b, 0xb3, 0xee, 0x68, 0x44, 0x6b, 0x10, 0x28, 0xc5, + 0x9a, 0x00, 0x90, 0x9b, 0xd1, 0xdc, 0xf3, 0xed, 0x67, 0x54, 0x56, 0x52, + 0xe4, 0x26, 0x6e, 0x8e, 0xbb, 0x06, 0x40, 0x8e, 0x40, 0xd2, 0x0e, 0x2d, + 0xa9, 0x4c, 0x34, 0x92, 0xd6, 0x3e, 0x33, 0x27, 0x19, 0x3d, 0x54, 0x81, + 0x33, 0xad, 0xe2, 0xb5, 0x22, 0xde, 0x9f, 0xb0, 0xe2, 0x3f, 0x41, 0xd5, + 0xee, 0x74, 0x91, 0x24, +}; +static const struct drbg_kat_no_reseed kat1004_t = { + 13, kat1004_entropyin, kat1004_nonce, kat1004_persstr, + kat1004_addin0, kat1004_addin1, kat1004_retbits +}; +static const struct drbg_kat kat1004 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1004_t +}; + +static const unsigned char kat1005_entropyin[] = { + 0x0a, 0xc6, 0x27, 0x69, 0x2b, 0x28, 0xd3, 0x1e, 0x34, 0x71, 0x79, 0xc8, + 0xee, 0x9e, 0x50, 0x8e, 0x2b, 0x3f, 0xfb, 0xed, 0xae, 0x40, 0x09, 0x41, + 0x4b, 0x3b, 0x72, 0xe7, 0x6a, 0x37, 0x39, 0xf0, 0x29, 0x27, 0x8a, 0xd1, + 0x5d, 0xc1, 0xc9, 0x45, +}; +static const unsigned char kat1005_nonce[] = {0}; +static const unsigned char kat1005_persstr[] = { + 0x94, 0x6f, 0xb7, 0xe5, 0xc3, 0xcb, 0xf3, 0xd1, 0x98, 0xf1, 0x91, 0x35, + 0xb1, 0xa7, 0x1a, 0x24, 0x1e, 0xe8, 0x92, 0xac, 0x5a, 0x03, 0x16, 0xf5, + 0x7e, 0xae, 0x70, 0x76, 0xa4, 0xd9, 0x9b, 0xf0, 0xe7, 0x7f, 0xe2, 0x3e, + 0x81, 0x25, 0x8c, 0xca, +}; +static const unsigned char kat1005_addin0[] = {0}; +static const unsigned char kat1005_addin1[] = {0}; +static const unsigned char kat1005_retbits[] = { + 0x00, 0x00, 0x7f, 0x40, 0x7f, 0x75, 0x33, 0x5a, 0x35, 0x1d, 0x31, 0xd2, + 0x75, 0x43, 0x66, 0xf8, 0xf2, 0x20, 0xef, 0x2f, 0x96, 0x88, 0xa8, 0x7e, + 0x9d, 0x6a, 0xac, 0x59, 0xfa, 0x9f, 0x36, 0xbe, 0x82, 0x4b, 0x9b, 0xc7, + 0x40, 0x9e, 0xa9, 0x91, 0xd3, 0xe0, 0xa7, 0xc4, 0x11, 0x85, 0x4b, 0x37, + 0x01, 0xc8, 0x4a, 0xbd, 0xd7, 0xa6, 0x96, 0x40, 0x6d, 0xd1, 0x33, 0x31, + 0xe2, 0x78, 0x54, 0x55, +}; +static const struct drbg_kat_no_reseed kat1005_t = { + 14, kat1005_entropyin, kat1005_nonce, kat1005_persstr, + kat1005_addin0, kat1005_addin1, kat1005_retbits +}; +static const struct drbg_kat kat1005 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1005_t +}; + +static const unsigned char kat1006_entropyin[] = { + 0x8d, 0xb4, 0x7c, 0xa2, 0x84, 0x29, 0x4d, 0xae, 0xb3, 0x03, 0xe6, 0x45, + 0x94, 0x22, 0xe3, 0x25, 0x77, 0xca, 0x53, 0x9c, 0x00, 0xfe, 0xad, 0x88, + 0x39, 0xd4, 0x29, 0x46, 0xba, 0xd8, 0xeb, 0x30, 0xe4, 0x89, 0xc6, 0xd8, + 0x58, 0x76, 0x3a, 0x28, +}; +static const unsigned char kat1006_nonce[] = {0}; +static const unsigned char kat1006_persstr[] = { + 0xc2, 0x49, 0x1a, 0x6c, 0xe1, 0xef, 0x9b, 0xd1, 0x3e, 0xb6, 0x6a, 0x86, + 0xc0, 0xf5, 0xbe, 0x3d, 0x2f, 0x32, 0x39, 0xbf, 0x7f, 0x71, 0x3e, 0x83, + 0x0e, 0x8a, 0xe8, 0x90, 0x7a, 0x20, 0x84, 0xf8, 0x73, 0xed, 0x3f, 0x5e, + 0xdd, 0xf5, 0xb5, 0x69, +}; +static const unsigned char kat1006_addin0[] = { + 0xe9, 0xa3, 0xf2, 0x41, 0x80, 0x34, 0x5a, 0x0c, 0x06, 0x80, 0xaa, 0xcd, + 0xb8, 0x9c, 0xe7, 0xcf, 0x84, 0x1c, 0x7a, 0xd5, 0x47, 0xef, 0x92, 0xda, + 0xd5, 0x4f, 0x82, 0x62, 0x44, 0x5e, 0x2f, 0x0c, 0x54, 0xc8, 0xf8, 0xe4, + 0x23, 0x50, 0xf7, 0x9c, +}; +static const unsigned char kat1006_addin1[] = { + 0xe2, 0x42, 0x7b, 0x93, 0x73, 0x84, 0x24, 0xc0, 0xfc, 0xe1, 0x4c, 0xb6, + 0xc5, 0xf1, 0xd6, 0xb6, 0xa0, 0x53, 0x27, 0x87, 0x15, 0x7b, 0x6d, 0x90, + 0x7b, 0xc5, 0x5d, 0x1c, 0x9a, 0x67, 0x04, 0x94, 0x77, 0x62, 0x12, 0xa6, + 0x43, 0xa9, 0xfb, 0x2c, +}; +static const unsigned char kat1006_retbits[] = { + 0x49, 0x4b, 0x19, 0x57, 0xab, 0x38, 0x2b, 0x38, 0x20, 0x54, 0xf5, 0x4b, + 0xb6, 0x2f, 0x0b, 0x5b, 0x46, 0x4a, 0xfb, 0x3b, 0x18, 0x49, 0x2c, 0x60, + 0x80, 0x9c, 0x26, 0xe8, 0x6e, 0x45, 0xb6, 0xb9, 0xfa, 0x44, 0x52, 0x4d, + 0xd8, 0x9e, 0xcd, 0xca, 0x99, 0xc6, 0x0e, 0x68, 0xed, 0x10, 0x7f, 0xf3, + 0x36, 0xbe, 0x15, 0x91, 0xca, 0xdd, 0x6f, 0xd7, 0xe3, 0x5f, 0x74, 0x26, + 0x11, 0x80, 0x9f, 0x2e, +}; +static const struct drbg_kat_no_reseed kat1006_t = { + 0, kat1006_entropyin, kat1006_nonce, kat1006_persstr, + kat1006_addin0, kat1006_addin1, kat1006_retbits +}; +static const struct drbg_kat kat1006 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1006_t +}; + +static const unsigned char kat1007_entropyin[] = { + 0x09, 0xe7, 0xeb, 0x92, 0xda, 0x93, 0x12, 0x19, 0xc1, 0x08, 0x73, 0x36, + 0xb7, 0xd8, 0x15, 0x7c, 0x13, 0xfc, 0x4d, 0x9d, 0x64, 0x9b, 0x56, 0xa4, + 0x9b, 0x30, 0xb0, 0x38, 0xa1, 0xc8, 0xd0, 0xa4, 0x2e, 0xb4, 0x95, 0xf8, + 0x2c, 0x00, 0x14, 0x4c, +}; +static const unsigned char kat1007_nonce[] = {0}; +static const unsigned char kat1007_persstr[] = { + 0x20, 0xec, 0x1e, 0x92, 0x71, 0x33, 0xa2, 0xf3, 0x9e, 0xf9, 0x94, 0xe4, + 0xf7, 0x75, 0x37, 0x54, 0x8f, 0xc6, 0x83, 0x55, 0xd5, 0x54, 0x91, 0x94, + 0x2c, 0xea, 0x33, 0xce, 0xbc, 0xa7, 0x59, 0xde, 0x51, 0x61, 0x18, 0x71, + 0x64, 0x15, 0xb4, 0x67, +}; +static const unsigned char kat1007_addin0[] = { + 0x47, 0x5b, 0x2b, 0xf5, 0xec, 0xd1, 0xfe, 0x76, 0xd0, 0xda, 0x19, 0x81, + 0xb0, 0x75, 0xc4, 0x90, 0x71, 0x3f, 0xfb, 0x7b, 0x95, 0x73, 0x3b, 0xb9, + 0xda, 0x6b, 0x5e, 0xf5, 0x15, 0xd5, 0x38, 0x66, 0xe6, 0xdf, 0xd8, 0xab, + 0xb0, 0xaa, 0x84, 0x62, +}; +static const unsigned char kat1007_addin1[] = { + 0x93, 0xa3, 0xbf, 0xc0, 0xa8, 0x0d, 0xc0, 0x4e, 0xd1, 0xae, 0x93, 0x7c, + 0xf0, 0x76, 0x21, 0xc0, 0x4e, 0x21, 0xb5, 0x5a, 0xdd, 0x83, 0x6a, 0xfe, + 0xec, 0x03, 0xb7, 0x12, 0x5e, 0xa2, 0xe7, 0xef, 0x3e, 0x06, 0xf4, 0x21, + 0xb8, 0xd7, 0x99, 0x8c, +}; +static const unsigned char kat1007_retbits[] = { + 0xac, 0x68, 0x06, 0xb5, 0x32, 0x1f, 0x10, 0xb8, 0xa5, 0x6b, 0xf3, 0xa8, + 0xd3, 0x48, 0xdd, 0xc7, 0x3a, 0x3b, 0xc9, 0x98, 0x5d, 0xa7, 0x16, 0x00, + 0x57, 0x77, 0xf6, 0xc1, 0xf8, 0x1f, 0x94, 0x65, 0x97, 0xaf, 0x27, 0xba, + 0xc0, 0x16, 0xb6, 0x30, 0xcf, 0xd9, 0xdc, 0x3e, 0xde, 0x7f, 0xf2, 0xa2, + 0x16, 0xc8, 0xfe, 0x14, 0x69, 0xe7, 0xd7, 0x24, 0x2d, 0x16, 0x1a, 0x4a, + 0x23, 0x58, 0x23, 0x5b, +}; +static const struct drbg_kat_no_reseed kat1007_t = { + 1, kat1007_entropyin, kat1007_nonce, kat1007_persstr, + kat1007_addin0, kat1007_addin1, kat1007_retbits +}; +static const struct drbg_kat kat1007 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1007_t +}; + +static const unsigned char kat1008_entropyin[] = { + 0x0e, 0x0a, 0xe6, 0xcc, 0x9e, 0xdc, 0xe4, 0x68, 0xd9, 0x00, 0x91, 0xa4, + 0xd9, 0x6d, 0xc3, 0xee, 0xa7, 0x23, 0xdf, 0x98, 0xb8, 0x16, 0x14, 0xcb, + 0xf2, 0x9e, 0x1a, 0xbd, 0x47, 0x57, 0xeb, 0x55, 0x08, 0x55, 0xee, 0x95, + 0x5b, 0x45, 0x4f, 0xbe, +}; +static const unsigned char kat1008_nonce[] = {0}; +static const unsigned char kat1008_persstr[] = { + 0xc7, 0x97, 0x58, 0x4d, 0xdd, 0x4e, 0x66, 0x79, 0x4e, 0x22, 0x88, 0xe1, + 0x6d, 0xb0, 0x53, 0x30, 0xc7, 0x5c, 0xee, 0x8e, 0x4a, 0x6d, 0x87, 0x47, + 0x27, 0x4c, 0xbc, 0x76, 0x32, 0x5d, 0xf4, 0xf9, 0xdf, 0x30, 0xf5, 0x42, + 0x39, 0x1b, 0x9c, 0xbb, +}; +static const unsigned char kat1008_addin0[] = { + 0x98, 0x6a, 0x74, 0xe7, 0x19, 0xd3, 0x04, 0x77, 0x68, 0x06, 0x60, 0xb6, + 0x5a, 0xc2, 0x33, 0x00, 0x28, 0x24, 0xf0, 0x66, 0xef, 0x83, 0x60, 0x1c, + 0x09, 0xe8, 0x99, 0xa2, 0x99, 0xcb, 0x3c, 0x53, 0x86, 0xb6, 0xf1, 0xe8, + 0xc1, 0x8b, 0x08, 0x77, +}; +static const unsigned char kat1008_addin1[] = { + 0xc3, 0x39, 0x33, 0x21, 0xaa, 0xcf, 0x82, 0x37, 0x57, 0xde, 0xa3, 0x97, + 0x79, 0xca, 0x9b, 0xab, 0xbc, 0x73, 0x3a, 0x55, 0xc5, 0x9c, 0xcf, 0x13, + 0x0c, 0xbc, 0xf9, 0x92, 0x2c, 0xa3, 0x5d, 0xd2, 0x8b, 0x0e, 0xc2, 0xef, + 0x11, 0xf1, 0xb4, 0x74, +}; +static const unsigned char kat1008_retbits[] = { + 0xe9, 0x53, 0x81, 0xd1, 0x00, 0x2c, 0x7b, 0x5e, 0x94, 0x88, 0x4f, 0x09, + 0xcd, 0xea, 0x1f, 0x50, 0x60, 0x6e, 0x2c, 0xa4, 0xb7, 0x4c, 0x85, 0xbf, + 0x79, 0xd6, 0x86, 0x4f, 0xb4, 0x6e, 0x4c, 0x08, 0xab, 0x8a, 0xc3, 0xe5, + 0x84, 0x86, 0x8a, 0x50, 0x98, 0x59, 0x18, 0x5b, 0x31, 0xec, 0xf3, 0x31, + 0x4a, 0xaf, 0x47, 0x06, 0x08, 0x22, 0xe4, 0x91, 0xa6, 0xe8, 0x7f, 0x9b, + 0x16, 0x07, 0x6b, 0x88, +}; +static const struct drbg_kat_no_reseed kat1008_t = { + 2, kat1008_entropyin, kat1008_nonce, kat1008_persstr, + kat1008_addin0, kat1008_addin1, kat1008_retbits +}; +static const struct drbg_kat kat1008 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1008_t +}; + +static const unsigned char kat1009_entropyin[] = { + 0xe6, 0x57, 0x7b, 0x32, 0x6e, 0x60, 0x01, 0x64, 0x0c, 0xc7, 0x1e, 0x49, + 0x97, 0x2a, 0x8b, 0xfe, 0x78, 0x64, 0x5e, 0x6d, 0xba, 0x9d, 0x29, 0xf8, + 0x45, 0xd7, 0x9f, 0x35, 0x0c, 0x7e, 0xcd, 0x90, 0xf3, 0x4d, 0xf8, 0xa7, + 0x4b, 0x70, 0xfe, 0xab, +}; +static const unsigned char kat1009_nonce[] = {0}; +static const unsigned char kat1009_persstr[] = { + 0xaf, 0xa8, 0x0b, 0xa7, 0xe1, 0x80, 0xec, 0xad, 0x94, 0xde, 0x06, 0x94, + 0x84, 0xe7, 0xb8, 0x40, 0x1b, 0x97, 0xb2, 0xbe, 0xd9, 0xe8, 0xd9, 0xf3, + 0x00, 0xab, 0x9b, 0x21, 0x09, 0x66, 0x0d, 0x1f, 0x07, 0x0e, 0xea, 0xdb, + 0x5e, 0xa0, 0xc6, 0xf0, +}; +static const unsigned char kat1009_addin0[] = { + 0x88, 0xec, 0x9e, 0x47, 0x6e, 0x65, 0xa6, 0xc4, 0x24, 0xd0, 0xf2, 0x50, + 0xac, 0xcb, 0x17, 0x85, 0x83, 0x6b, 0x7c, 0x7b, 0x02, 0x86, 0x7d, 0xbd, + 0xd3, 0xcf, 0x9c, 0x09, 0x13, 0xcb, 0x11, 0xbf, 0x19, 0xe6, 0xa6, 0x0a, + 0x85, 0xd7, 0xe7, 0x3a, +}; +static const unsigned char kat1009_addin1[] = { + 0x61, 0xcc, 0x72, 0xc1, 0x41, 0xa4, 0x2f, 0x38, 0x9c, 0xcf, 0x9c, 0x15, + 0xea, 0x31, 0xbe, 0x87, 0x13, 0x64, 0x44, 0xeb, 0x7d, 0xcf, 0x93, 0x87, + 0x1d, 0xac, 0xa3, 0xc2, 0xae, 0xc3, 0x53, 0x03, 0xca, 0xce, 0x86, 0xff, + 0x0c, 0x3c, 0x96, 0xb0, +}; +static const unsigned char kat1009_retbits[] = { + 0x68, 0xcc, 0x04, 0x7e, 0x83, 0xea, 0x08, 0xbc, 0xbf, 0xb2, 0x0f, 0x2c, + 0x9f, 0x24, 0x05, 0x07, 0xe4, 0xea, 0xf2, 0x32, 0x4d, 0x11, 0x6c, 0x53, + 0xc8, 0x76, 0x11, 0x95, 0xba, 0x25, 0x5a, 0x51, 0x08, 0x98, 0x51, 0xc4, + 0xa5, 0x31, 0xb4, 0x02, 0x69, 0x1e, 0xbf, 0xa4, 0x23, 0x5a, 0x78, 0x86, + 0x3f, 0xa9, 0xd6, 0x26, 0x95, 0x6b, 0xaa, 0x18, 0x57, 0x05, 0x75, 0xa4, + 0xd5, 0x03, 0x1b, 0x85, +}; +static const struct drbg_kat_no_reseed kat1009_t = { + 3, kat1009_entropyin, kat1009_nonce, kat1009_persstr, + kat1009_addin0, kat1009_addin1, kat1009_retbits +}; +static const struct drbg_kat kat1009 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1009_t +}; + +static const unsigned char kat1010_entropyin[] = { + 0xed, 0x76, 0x8d, 0x7e, 0xe7, 0xee, 0x98, 0x8b, 0xe1, 0x2a, 0x46, 0x3e, + 0x50, 0x06, 0x40, 0x47, 0x1b, 0x0f, 0x21, 0x41, 0xd5, 0x4e, 0x38, 0xc9, + 0x46, 0x1c, 0x79, 0xa3, 0x0b, 0x57, 0xc6, 0x98, 0x3a, 0x39, 0x8f, 0xd5, + 0x2c, 0xe0, 0x39, 0xd0, +}; +static const unsigned char kat1010_nonce[] = {0}; +static const unsigned char kat1010_persstr[] = { + 0xaa, 0xc5, 0x6f, 0xf0, 0xa4, 0x36, 0xb6, 0x3a, 0x54, 0x8e, 0x9a, 0x24, + 0x41, 0x0d, 0x61, 0xfc, 0x7c, 0x8e, 0xa0, 0xa6, 0x07, 0xc9, 0x01, 0x29, + 0x85, 0x18, 0x47, 0x62, 0x35, 0x69, 0xb8, 0x63, 0xb1, 0x26, 0x7c, 0xc8, + 0xfc, 0x3e, 0xf8, 0x97, +}; +static const unsigned char kat1010_addin0[] = { + 0x1f, 0xd6, 0x14, 0xa7, 0x77, 0x62, 0x6f, 0xb4, 0x3b, 0x23, 0x28, 0xeb, + 0x67, 0xa6, 0x32, 0xfa, 0x77, 0x5f, 0xb8, 0xbf, 0x39, 0xac, 0x61, 0x09, + 0x71, 0xb3, 0x6b, 0x42, 0xd7, 0xbe, 0xe6, 0x16, 0x81, 0x19, 0xa3, 0xdd, + 0xc7, 0xa9, 0x68, 0x7a, +}; +static const unsigned char kat1010_addin1[] = { + 0x49, 0x61, 0x1c, 0x47, 0xda, 0x3d, 0xd5, 0x7f, 0xa4, 0xad, 0x96, 0x66, + 0x37, 0xe9, 0x4d, 0xa5, 0x19, 0x5e, 0x9e, 0xe8, 0xab, 0x71, 0x03, 0xe5, + 0xfe, 0xbf, 0xa5, 0x9b, 0x23, 0xfa, 0x07, 0x15, 0x78, 0x58, 0x42, 0xf6, + 0x57, 0xe2, 0x10, 0x2f, +}; +static const unsigned char kat1010_retbits[] = { + 0x36, 0x83, 0xa7, 0xe4, 0x36, 0x64, 0x29, 0x34, 0x45, 0x50, 0xba, 0xa4, + 0xe5, 0x27, 0x8f, 0x0d, 0x99, 0x32, 0xc1, 0x65, 0x8d, 0xd8, 0xb2, 0xd8, + 0x1f, 0x82, 0x8c, 0x19, 0x4c, 0x33, 0x10, 0xc3, 0xcb, 0xd7, 0xa2, 0x1c, + 0x91, 0x19, 0xaf, 0x9b, 0x60, 0x88, 0xa4, 0x1e, 0x1a, 0xc5, 0x92, 0x85, + 0x45, 0xce, 0x5f, 0xe2, 0xeb, 0xda, 0xce, 0x32, 0xaa, 0x4f, 0xbb, 0x20, + 0x70, 0x48, 0x9a, 0x34, +}; +static const struct drbg_kat_no_reseed kat1010_t = { + 4, kat1010_entropyin, kat1010_nonce, kat1010_persstr, + kat1010_addin0, kat1010_addin1, kat1010_retbits +}; +static const struct drbg_kat kat1010 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1010_t +}; + +static const unsigned char kat1011_entropyin[] = { + 0x2c, 0x9a, 0xd8, 0xd0, 0xc4, 0xd2, 0x8f, 0xc4, 0xbe, 0x9b, 0x27, 0x49, + 0xd2, 0x84, 0xc4, 0x8d, 0xdb, 0xd8, 0x6a, 0x2a, 0xb4, 0x71, 0xee, 0xd2, + 0x67, 0xad, 0x80, 0xd0, 0xa6, 0xd3, 0x58, 0x27, 0xbd, 0x90, 0xe8, 0xe9, + 0x9a, 0xe0, 0x8a, 0xf1, +}; +static const unsigned char kat1011_nonce[] = {0}; +static const unsigned char kat1011_persstr[] = { + 0x0b, 0xf3, 0x0f, 0xf8, 0x11, 0xa1, 0xe1, 0x5a, 0x66, 0x11, 0xa3, 0x55, + 0x97, 0xc3, 0xf3, 0x48, 0x16, 0x4a, 0xda, 0xd4, 0x69, 0x12, 0x73, 0x40, + 0x5f, 0x1f, 0x79, 0xe2, 0x9c, 0xae, 0x87, 0x57, 0xb8, 0xa3, 0x76, 0xf2, + 0xda, 0xf6, 0x65, 0xa4, +}; +static const unsigned char kat1011_addin0[] = { + 0x11, 0x28, 0x59, 0x91, 0x34, 0x84, 0x7e, 0xb7, 0xe2, 0xd9, 0x54, 0x12, + 0x46, 0x76, 0x8b, 0xbc, 0xc9, 0x11, 0x82, 0xc8, 0x57, 0x54, 0x4a, 0x03, + 0x2b, 0x5b, 0xee, 0x56, 0xb0, 0x62, 0x23, 0x1f, 0xb6, 0xa0, 0x0f, 0xf1, + 0x53, 0x0e, 0x4c, 0x5b, +}; +static const unsigned char kat1011_addin1[] = { + 0x62, 0x22, 0xc6, 0x4f, 0x81, 0xa9, 0x00, 0xf1, 0x97, 0xd7, 0x11, 0x02, + 0x23, 0x66, 0x2e, 0xfa, 0x50, 0xc0, 0xe1, 0xb5, 0xfe, 0xbf, 0x65, 0x4f, + 0xfd, 0xfb, 0xa8, 0x07, 0xc5, 0x73, 0x76, 0x32, 0x5e, 0x2c, 0x38, 0xb8, + 0xfc, 0x32, 0xfd, 0x1b, +}; +static const unsigned char kat1011_retbits[] = { + 0xe0, 0x64, 0x7d, 0xd7, 0x76, 0x1f, 0x40, 0xec, 0xd2, 0xd1, 0x31, 0x95, + 0x23, 0x70, 0x41, 0xc0, 0x6b, 0x1e, 0x92, 0x1a, 0x7d, 0x07, 0xf1, 0xb0, + 0x41, 0x80, 0xac, 0x47, 0xa9, 0x9f, 0x27, 0xd1, 0x7f, 0xbc, 0x4a, 0x3a, + 0x50, 0xa1, 0xd1, 0xfd, 0x82, 0x6a, 0x0e, 0x84, 0x89, 0xac, 0x38, 0x67, + 0x03, 0x2a, 0x40, 0x51, 0x7e, 0x1b, 0x5f, 0xd1, 0xe2, 0x6a, 0xc8, 0x1b, + 0xdc, 0x8b, 0xf5, 0xc8, +}; +static const struct drbg_kat_no_reseed kat1011_t = { + 5, kat1011_entropyin, kat1011_nonce, kat1011_persstr, + kat1011_addin0, kat1011_addin1, kat1011_retbits +}; +static const struct drbg_kat kat1011 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1011_t +}; + +static const unsigned char kat1012_entropyin[] = { + 0x23, 0x77, 0x45, 0x5b, 0xd3, 0x4a, 0xc4, 0xcb, 0xf9, 0xc1, 0xf5, 0xa2, + 0x5a, 0xed, 0xb7, 0x2b, 0xf3, 0xde, 0x72, 0x51, 0x63, 0x73, 0x5b, 0x06, + 0xd9, 0x38, 0x46, 0x2c, 0x90, 0x15, 0x6b, 0x9d, 0x5d, 0x00, 0x3c, 0xd4, + 0x7d, 0x2e, 0x91, 0x89, +}; +static const unsigned char kat1012_nonce[] = {0}; +static const unsigned char kat1012_persstr[] = { + 0x84, 0xe3, 0x20, 0x5b, 0xcd, 0xb9, 0x3c, 0x0a, 0x01, 0xac, 0xa3, 0x86, + 0xb0, 0xb4, 0x8a, 0xb6, 0x04, 0x6d, 0x91, 0x3d, 0x33, 0x25, 0xc8, 0xc6, + 0x35, 0xce, 0x02, 0x75, 0x05, 0x37, 0x23, 0x65, 0x79, 0xbf, 0xc7, 0x5f, + 0xaa, 0x26, 0xbd, 0x34, +}; +static const unsigned char kat1012_addin0[] = { + 0xd3, 0x50, 0xcb, 0xf5, 0x26, 0x39, 0x4a, 0x9b, 0x59, 0x25, 0xbb, 0x7e, + 0xc8, 0xaf, 0x62, 0xe3, 0xc2, 0xfc, 0x44, 0x33, 0xf6, 0x71, 0xd1, 0xd7, + 0x97, 0x8e, 0x8b, 0x5a, 0xb4, 0xfc, 0xdd, 0x18, 0xce, 0x97, 0x2e, 0xb7, + 0xd6, 0x05, 0x8e, 0x2a, +}; +static const unsigned char kat1012_addin1[] = { + 0x87, 0xf8, 0x8d, 0x41, 0x09, 0x5d, 0xb3, 0xf4, 0x68, 0xb3, 0x32, 0xbd, + 0x7f, 0x24, 0xe8, 0x48, 0x29, 0x9e, 0xae, 0x94, 0x6d, 0x43, 0x8d, 0x22, + 0x9e, 0xdb, 0xea, 0x03, 0x55, 0xc8, 0x06, 0x3d, 0x67, 0x81, 0x31, 0xc9, + 0x45, 0xee, 0x6f, 0x1b, +}; +static const unsigned char kat1012_retbits[] = { + 0xdc, 0xcb, 0x3d, 0x65, 0x2b, 0xd3, 0x58, 0x35, 0x39, 0x09, 0x1c, 0x61, + 0x15, 0x99, 0x6f, 0xb7, 0x56, 0x3b, 0xae, 0x73, 0x7f, 0x3f, 0x7e, 0xdc, + 0x0d, 0xbf, 0x72, 0x98, 0x48, 0xef, 0x60, 0x6d, 0xf0, 0x9d, 0xc5, 0xe3, + 0xc2, 0xb2, 0xa4, 0x23, 0x66, 0x8f, 0xc8, 0x1e, 0xf0, 0xfe, 0xa8, 0x12, + 0x07, 0x43, 0x0a, 0xb3, 0x67, 0x4d, 0x11, 0x7a, 0x69, 0x81, 0x0b, 0x2b, + 0x0a, 0x92, 0xe7, 0xee, +}; +static const struct drbg_kat_no_reseed kat1012_t = { + 6, kat1012_entropyin, kat1012_nonce, kat1012_persstr, + kat1012_addin0, kat1012_addin1, kat1012_retbits +}; +static const struct drbg_kat kat1012 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1012_t +}; + +static const unsigned char kat1013_entropyin[] = { + 0x80, 0xa1, 0xd1, 0x8c, 0x87, 0xbb, 0x35, 0xed, 0xb9, 0x37, 0x16, 0xc9, + 0x6c, 0x95, 0x77, 0x9c, 0xbb, 0x24, 0xbd, 0x4f, 0x1b, 0x49, 0x4c, 0xee, + 0x3b, 0x4d, 0x3d, 0x31, 0x99, 0xf1, 0x0b, 0x08, 0xf6, 0x58, 0xcb, 0x2a, + 0x08, 0x95, 0x6b, 0x83, +}; +static const unsigned char kat1013_nonce[] = {0}; +static const unsigned char kat1013_persstr[] = { + 0xee, 0x0a, 0xfb, 0x96, 0x60, 0x08, 0x8e, 0x66, 0xc5, 0x88, 0x81, 0x3a, + 0x01, 0xa9, 0xda, 0x00, 0x1b, 0x78, 0xbe, 0x45, 0x5c, 0x62, 0x7a, 0x37, + 0x20, 0x90, 0x3d, 0xed, 0x5a, 0xe8, 0x51, 0xd6, 0x64, 0xe4, 0xbc, 0x3c, + 0xf6, 0xb9, 0x1b, 0x59, +}; +static const unsigned char kat1013_addin0[] = { + 0xa8, 0x48, 0x72, 0x6a, 0xbb, 0xc0, 0xaf, 0x04, 0x20, 0x9f, 0xc5, 0x24, + 0x08, 0x8f, 0x5b, 0xc5, 0x3f, 0x16, 0x50, 0xd9, 0xea, 0x14, 0x0a, 0x72, + 0xe0, 0x43, 0xc3, 0xc7, 0xe1, 0x07, 0xca, 0xe0, 0x5f, 0xa2, 0xe0, 0xed, + 0xeb, 0x8e, 0xad, 0x0d, +}; +static const unsigned char kat1013_addin1[] = { + 0xad, 0x33, 0x68, 0x69, 0xb2, 0xe2, 0x21, 0x07, 0x06, 0x0a, 0xbe, 0x50, + 0xf5, 0x44, 0xb9, 0x6c, 0x43, 0x43, 0x07, 0xa6, 0x45, 0xc0, 0x3f, 0xd5, + 0x72, 0x2f, 0xf1, 0x16, 0x8d, 0x51, 0x8f, 0xf5, 0x28, 0xd2, 0xf5, 0x3c, + 0x7c, 0x88, 0xb0, 0x8f, +}; +static const unsigned char kat1013_retbits[] = { + 0xf2, 0x5d, 0xd7, 0xeb, 0x2c, 0x7a, 0xb6, 0x05, 0xc7, 0x1b, 0xff, 0x4e, + 0xb4, 0x92, 0x4b, 0x05, 0x95, 0x05, 0x70, 0xf5, 0x4b, 0xd6, 0xea, 0x6f, + 0x85, 0x07, 0x33, 0x93, 0x08, 0x3e, 0x4f, 0xc4, 0x04, 0x31, 0x4a, 0x19, + 0xa7, 0x2f, 0x9e, 0xf5, 0x14, 0x77, 0xd3, 0x6b, 0x66, 0x13, 0x98, 0x5a, + 0xb0, 0x2b, 0x68, 0xac, 0x1d, 0x90, 0xce, 0xf8, 0x0a, 0x9a, 0xcd, 0x77, + 0x65, 0x53, 0x7a, 0x17, +}; +static const struct drbg_kat_no_reseed kat1013_t = { + 7, kat1013_entropyin, kat1013_nonce, kat1013_persstr, + kat1013_addin0, kat1013_addin1, kat1013_retbits +}; +static const struct drbg_kat kat1013 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1013_t +}; + +static const unsigned char kat1014_entropyin[] = { + 0x98, 0xda, 0xbf, 0xe2, 0x63, 0x5c, 0x6f, 0x88, 0xf1, 0x56, 0xa1, 0xb5, + 0x7d, 0x92, 0x49, 0x39, 0xa8, 0xb5, 0x8b, 0x5a, 0x9a, 0xb5, 0x5d, 0x2a, + 0x85, 0x5b, 0xde, 0x86, 0x9a, 0x95, 0x03, 0x89, 0x17, 0x99, 0xc7, 0xa7, + 0x37, 0xd2, 0xc4, 0xca, +}; +static const unsigned char kat1014_nonce[] = {0}; +static const unsigned char kat1014_persstr[] = { + 0x91, 0x20, 0x7a, 0x04, 0x2e, 0x31, 0x0d, 0x2d, 0x64, 0xe4, 0x3d, 0xbd, + 0xba, 0xee, 0x9d, 0x04, 0xfe, 0x49, 0x27, 0xf3, 0xae, 0x72, 0x16, 0xd3, + 0x1a, 0x09, 0xcd, 0x18, 0x7b, 0x0e, 0x1b, 0xc9, 0xef, 0xbf, 0x60, 0x00, + 0xff, 0xbe, 0x88, 0x24, +}; +static const unsigned char kat1014_addin0[] = { + 0x48, 0xde, 0x31, 0xd7, 0xd9, 0x77, 0xe9, 0xc9, 0x98, 0x4f, 0x3e, 0x03, + 0xc4, 0x71, 0xbf, 0x0a, 0x37, 0xbe, 0xf7, 0xcd, 0x2e, 0xbe, 0xb8, 0x48, + 0x08, 0x47, 0xd0, 0xa4, 0x20, 0x3d, 0x9d, 0x79, 0x33, 0x0d, 0xef, 0x0b, + 0x25, 0x7d, 0x41, 0xdb, +}; +static const unsigned char kat1014_addin1[] = { + 0x96, 0x4c, 0x5b, 0x9e, 0x0e, 0x20, 0x88, 0x4f, 0x5d, 0x56, 0xd5, 0xd2, + 0x6d, 0x0d, 0x4b, 0xca, 0xb0, 0x01, 0x4c, 0x0f, 0x47, 0x52, 0xe5, 0xc8, + 0x08, 0x7b, 0xe7, 0x4b, 0x0d, 0x90, 0xfc, 0xf5, 0x6e, 0x74, 0xd6, 0xae, + 0x0e, 0xbd, 0xb4, 0xbb, +}; +static const unsigned char kat1014_retbits[] = { + 0xb7, 0xb6, 0x2a, 0xb2, 0x85, 0xb5, 0x0f, 0xaa, 0x98, 0x86, 0x95, 0xbb, + 0xf0, 0x6e, 0x19, 0xcf, 0xdb, 0x0e, 0xbb, 0xcc, 0x4b, 0x53, 0x03, 0x17, + 0x6b, 0x79, 0x55, 0x26, 0x32, 0x2f, 0x10, 0x0e, 0x90, 0x87, 0x66, 0x4d, + 0xf3, 0xe4, 0x6e, 0x24, 0x7e, 0x08, 0xb0, 0xd5, 0x1f, 0xcf, 0x28, 0x0b, + 0xff, 0x78, 0x29, 0xcc, 0x2e, 0x46, 0xe3, 0x6e, 0x10, 0xb8, 0x86, 0x43, + 0x37, 0xda, 0x8f, 0x5c, +}; +static const struct drbg_kat_no_reseed kat1014_t = { + 8, kat1014_entropyin, kat1014_nonce, kat1014_persstr, + kat1014_addin0, kat1014_addin1, kat1014_retbits +}; +static const struct drbg_kat kat1014 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1014_t +}; + +static const unsigned char kat1015_entropyin[] = { + 0x85, 0xf5, 0x09, 0xf2, 0xee, 0x6e, 0x8f, 0x96, 0x4d, 0x92, 0x33, 0xdb, + 0xf5, 0x98, 0x75, 0x6e, 0xc4, 0x14, 0x72, 0x73, 0xfc, 0xa0, 0x82, 0x82, + 0x3b, 0x75, 0xe1, 0xac, 0xf7, 0x74, 0xe2, 0x94, 0x4e, 0x6f, 0xec, 0xd8, + 0xda, 0x9f, 0xd7, 0x82, +}; +static const unsigned char kat1015_nonce[] = {0}; +static const unsigned char kat1015_persstr[] = { + 0x3e, 0x28, 0x4f, 0xc7, 0x94, 0x87, 0x42, 0xf9, 0x8c, 0x61, 0x22, 0x20, + 0xfb, 0x47, 0xae, 0xb2, 0x4f, 0x38, 0x7a, 0x46, 0x76, 0x6f, 0x05, 0x24, + 0x75, 0xb3, 0x28, 0x62, 0x9c, 0xce, 0x30, 0x73, 0xf5, 0x3e, 0xdf, 0xd9, + 0x0a, 0x38, 0x4e, 0x84, +}; +static const unsigned char kat1015_addin0[] = { + 0xa2, 0xe6, 0xc7, 0xd8, 0xdd, 0x2e, 0xdb, 0xc5, 0xcd, 0x1f, 0x5a, 0x0d, + 0xb8, 0x66, 0x14, 0x98, 0x98, 0x69, 0x50, 0x49, 0xa3, 0x4f, 0x0a, 0x18, + 0x86, 0x8f, 0x2e, 0xcc, 0xe8, 0xb2, 0x70, 0xef, 0x05, 0xdd, 0x4e, 0x40, + 0xad, 0x06, 0x81, 0x38, +}; +static const unsigned char kat1015_addin1[] = { + 0x12, 0xcc, 0x0a, 0x88, 0xf2, 0xe8, 0x65, 0xd5, 0xbe, 0xb5, 0x63, 0x74, + 0x01, 0x62, 0xfc, 0x80, 0xdb, 0xb1, 0x6a, 0x81, 0x62, 0x7c, 0x17, 0x81, + 0x6a, 0xe6, 0x81, 0xb1, 0xbb, 0xb7, 0xbc, 0xdd, 0xb9, 0xb6, 0xc4, 0xe0, + 0xde, 0x70, 0x5f, 0x24, +}; +static const unsigned char kat1015_retbits[] = { + 0xb6, 0x42, 0x3c, 0x53, 0xca, 0xe7, 0xa2, 0x65, 0xb2, 0xd4, 0x28, 0x24, + 0x7c, 0xe8, 0xfc, 0x0a, 0x60, 0x91, 0x13, 0x8d, 0xc1, 0x7e, 0x2f, 0x36, + 0x42, 0x3c, 0x59, 0x0b, 0xb8, 0xb8, 0xe2, 0xea, 0x2f, 0x3d, 0xf4, 0x17, + 0xcf, 0x2d, 0x82, 0x0d, 0x61, 0x35, 0x5b, 0xf4, 0x31, 0x6f, 0xe0, 0x8f, + 0x77, 0x83, 0x00, 0x67, 0xc3, 0x74, 0xed, 0xa5, 0x0a, 0x92, 0x46, 0x3b, + 0xac, 0xd0, 0xae, 0x7d, +}; +static const struct drbg_kat_no_reseed kat1015_t = { + 9, kat1015_entropyin, kat1015_nonce, kat1015_persstr, + kat1015_addin0, kat1015_addin1, kat1015_retbits +}; +static const struct drbg_kat kat1015 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1015_t +}; + +static const unsigned char kat1016_entropyin[] = { + 0xf1, 0xde, 0x48, 0xab, 0x29, 0x59, 0x9b, 0x83, 0xba, 0xe0, 0xe2, 0x77, + 0x85, 0xf2, 0x08, 0xfc, 0x31, 0x76, 0x1d, 0x08, 0xc6, 0x9f, 0x7e, 0x05, + 0x6c, 0x52, 0xd6, 0x59, 0x5c, 0xfd, 0xa8, 0xfb, 0xfc, 0x0e, 0x90, 0x96, + 0x6b, 0xf3, 0x5d, 0xd5, +}; +static const unsigned char kat1016_nonce[] = {0}; +static const unsigned char kat1016_persstr[] = { + 0x9a, 0xda, 0xad, 0x41, 0x9c, 0x82, 0xab, 0x72, 0x89, 0xac, 0x28, 0xfa, + 0x0e, 0x5a, 0x07, 0x84, 0x5c, 0x28, 0x24, 0x8c, 0xc8, 0x26, 0x8f, 0xbe, + 0x20, 0x18, 0x47, 0xbe, 0xe4, 0x19, 0x1a, 0x43, 0x87, 0x8d, 0x9d, 0xf2, + 0x78, 0x16, 0x89, 0xf9, +}; +static const unsigned char kat1016_addin0[] = { + 0xc1, 0xc3, 0xbd, 0xd0, 0x81, 0xed, 0x99, 0x58, 0xb1, 0xe7, 0xed, 0xa7, + 0x52, 0xe1, 0x46, 0x78, 0xf8, 0x19, 0x00, 0x79, 0xdd, 0xa0, 0x4f, 0x04, + 0x2b, 0xdd, 0xb2, 0x0f, 0x79, 0x82, 0x2d, 0x2e, 0x0c, 0x29, 0xc4, 0x69, + 0xcc, 0x08, 0x83, 0xef, +}; +static const unsigned char kat1016_addin1[] = { + 0x30, 0xce, 0xf7, 0x32, 0xc1, 0x27, 0x9f, 0xeb, 0xd8, 0x57, 0x33, 0x7e, + 0x0f, 0x6c, 0x3b, 0xef, 0x92, 0xb2, 0x48, 0x39, 0x3e, 0x9c, 0x10, 0x79, + 0x58, 0x19, 0xa0, 0x33, 0xe3, 0x21, 0x8e, 0xec, 0x47, 0x75, 0x8c, 0xfa, + 0x88, 0x93, 0x53, 0xec, +}; +static const unsigned char kat1016_retbits[] = { + 0x04, 0x37, 0x71, 0xa5, 0xac, 0x38, 0x33, 0xea, 0xca, 0xa0, 0x5b, 0xd6, + 0xff, 0x0d, 0xbc, 0xd4, 0x84, 0x77, 0x07, 0x0a, 0xec, 0x69, 0xd5, 0xc0, + 0x3f, 0x40, 0x9d, 0xb1, 0x12, 0xf9, 0xf1, 0xc8, 0x0e, 0x8c, 0x23, 0x8d, + 0x57, 0xbe, 0xcf, 0x7a, 0xdb, 0x90, 0x02, 0x43, 0x95, 0x31, 0x31, 0x09, + 0xdb, 0x08, 0x29, 0x68, 0x1d, 0x3a, 0x42, 0x07, 0xa2, 0x52, 0x30, 0xa6, + 0x29, 0x10, 0x62, 0xf0, +}; +static const struct drbg_kat_no_reseed kat1016_t = { + 10, kat1016_entropyin, kat1016_nonce, kat1016_persstr, + kat1016_addin0, kat1016_addin1, kat1016_retbits +}; +static const struct drbg_kat kat1016 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1016_t +}; + +static const unsigned char kat1017_entropyin[] = { + 0x08, 0x76, 0x69, 0xed, 0x86, 0xc1, 0xb2, 0x77, 0x66, 0x72, 0x78, 0x6e, + 0x61, 0x75, 0xab, 0xfa, 0xb4, 0x22, 0xad, 0xc4, 0x73, 0x7c, 0xc8, 0xfb, + 0x39, 0x76, 0x39, 0x5d, 0x85, 0x9a, 0xc7, 0xd3, 0x7e, 0xc7, 0x6e, 0x00, + 0xa8, 0x11, 0x28, 0x25, +}; +static const unsigned char kat1017_nonce[] = {0}; +static const unsigned char kat1017_persstr[] = { + 0xba, 0x9a, 0xbf, 0x3c, 0x49, 0x9a, 0xda, 0x3b, 0x36, 0x56, 0x97, 0x85, + 0xdb, 0xe7, 0xdb, 0x41, 0x83, 0x22, 0xde, 0x1a, 0x32, 0xbc, 0xc4, 0x03, + 0xdf, 0xdc, 0x31, 0xc3, 0xb5, 0x2f, 0x2c, 0xb5, 0x7f, 0x90, 0x0b, 0xdf, + 0x15, 0xf3, 0x80, 0x56, +}; +static const unsigned char kat1017_addin0[] = { + 0x73, 0x9e, 0x72, 0x8d, 0x8e, 0x34, 0x9b, 0xc7, 0x4f, 0x2c, 0x82, 0xec, + 0x91, 0x13, 0x1f, 0xa7, 0xce, 0xeb, 0x5f, 0x99, 0x46, 0x81, 0x4d, 0x67, + 0x6e, 0x82, 0x68, 0x7b, 0xaf, 0xca, 0x08, 0xe9, 0x7d, 0xa1, 0x3f, 0x72, + 0x47, 0xc6, 0x8b, 0x4f, +}; +static const unsigned char kat1017_addin1[] = { + 0x9f, 0x7e, 0x45, 0xf9, 0x01, 0x9d, 0x46, 0x9c, 0x96, 0x49, 0xea, 0x3b, + 0x88, 0xbb, 0x65, 0x50, 0xa0, 0x4e, 0xab, 0xdf, 0xbc, 0x8c, 0x52, 0xee, + 0xcc, 0xc1, 0xd9, 0x2a, 0x80, 0x10, 0xb2, 0xb5, 0xf3, 0x64, 0x60, 0x30, + 0x60, 0x4c, 0x91, 0x86, +}; +static const unsigned char kat1017_retbits[] = { + 0x23, 0x1c, 0xff, 0x0d, 0x4b, 0x97, 0x7f, 0x7b, 0x1b, 0x6a, 0xa8, 0xc1, + 0x27, 0xa7, 0xc4, 0xc1, 0x5c, 0x20, 0x05, 0x05, 0xed, 0xf6, 0x85, 0x65, + 0x10, 0x9f, 0x8e, 0xad, 0xc6, 0x1e, 0x83, 0xef, 0xf8, 0x44, 0x7c, 0x5c, + 0xf6, 0x34, 0xd7, 0x90, 0x7a, 0x9e, 0xde, 0xe5, 0x7d, 0xcb, 0xbd, 0x38, + 0xfa, 0xd7, 0xb7, 0xc0, 0x3d, 0x63, 0x07, 0x35, 0xbf, 0xa5, 0x27, 0x1f, + 0x75, 0x5c, 0x40, 0x11, +}; +static const struct drbg_kat_no_reseed kat1017_t = { + 11, kat1017_entropyin, kat1017_nonce, kat1017_persstr, + kat1017_addin0, kat1017_addin1, kat1017_retbits +}; +static const struct drbg_kat kat1017 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1017_t +}; + +static const unsigned char kat1018_entropyin[] = { + 0xa6, 0x7b, 0x15, 0x97, 0xdb, 0x8e, 0x04, 0xc4, 0x7c, 0x78, 0x4c, 0x55, + 0xd2, 0xd8, 0x55, 0xc5, 0xf1, 0xda, 0x48, 0x1b, 0xb9, 0x3a, 0x60, 0x42, + 0x42, 0xc7, 0xf8, 0xcd, 0xb2, 0xd0, 0xfe, 0xba, 0xed, 0xd9, 0xa7, 0xa1, + 0x62, 0x7a, 0x52, 0x86, +}; +static const unsigned char kat1018_nonce[] = {0}; +static const unsigned char kat1018_persstr[] = { + 0xfb, 0xaa, 0xc1, 0x70, 0xa1, 0x1b, 0x0f, 0xac, 0x54, 0xed, 0x43, 0x29, + 0xf8, 0x98, 0x2b, 0x2c, 0xa8, 0x7f, 0x6e, 0x2f, 0x01, 0xe0, 0x74, 0x34, + 0x95, 0x20, 0x39, 0xf1, 0x64, 0x77, 0xe7, 0x8c, 0xb4, 0x62, 0x78, 0x46, + 0x13, 0xa6, 0xff, 0x7c, +}; +static const unsigned char kat1018_addin0[] = { + 0xb1, 0x65, 0x10, 0xcf, 0x03, 0xb1, 0x41, 0xec, 0x60, 0x89, 0x82, 0x43, + 0x2a, 0x59, 0xb0, 0xc2, 0xa9, 0x71, 0x68, 0x2f, 0xe8, 0x8f, 0xc2, 0x88, + 0xd5, 0xa0, 0x9b, 0x64, 0xb0, 0xf8, 0xf3, 0x38, 0x42, 0x7e, 0x0f, 0x5f, + 0x96, 0x3e, 0x64, 0x92, +}; +static const unsigned char kat1018_addin1[] = { + 0x6d, 0xe9, 0x41, 0xdc, 0x9a, 0xd6, 0x32, 0xaf, 0xe7, 0xae, 0xc7, 0x5e, + 0x90, 0x66, 0x48, 0xaa, 0xf6, 0x37, 0x94, 0xfa, 0x97, 0xbd, 0x83, 0x50, + 0xe7, 0x56, 0x42, 0x04, 0xcd, 0x6e, 0x0f, 0xe1, 0xea, 0x5f, 0xa7, 0x56, + 0xd9, 0xae, 0xe3, 0x7d, +}; +static const unsigned char kat1018_retbits[] = { + 0xc2, 0xa4, 0x22, 0x49, 0x81, 0x12, 0xe8, 0xe8, 0x50, 0xce, 0x43, 0xce, + 0x6d, 0xdb, 0xc3, 0xd1, 0x5c, 0x68, 0x15, 0xb1, 0xf4, 0xa2, 0x33, 0x0c, + 0x84, 0xbc, 0xbf, 0xc3, 0x41, 0x5e, 0x7f, 0xe0, 0x20, 0x74, 0x44, 0x61, + 0x76, 0xc0, 0x88, 0xa4, 0xb9, 0xa4, 0xc3, 0xe4, 0xee, 0x55, 0xec, 0xaa, + 0x2d, 0xb3, 0x98, 0x0d, 0x90, 0x28, 0xd6, 0x4f, 0xa8, 0xa6, 0xbb, 0xb5, + 0x1b, 0x8d, 0x20, 0x51, +}; +static const struct drbg_kat_no_reseed kat1018_t = { + 12, kat1018_entropyin, kat1018_nonce, kat1018_persstr, + kat1018_addin0, kat1018_addin1, kat1018_retbits +}; +static const struct drbg_kat kat1018 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1018_t +}; + +static const unsigned char kat1019_entropyin[] = { + 0x30, 0x36, 0x37, 0xc0, 0x37, 0xf7, 0x12, 0xaa, 0x82, 0x8a, 0x0d, 0x6f, + 0xfb, 0x37, 0x65, 0x13, 0x21, 0x5d, 0xb7, 0x3d, 0x4b, 0xc4, 0x56, 0x82, + 0xa4, 0xc0, 0x06, 0x16, 0x8b, 0x70, 0xcd, 0x2e, 0xb3, 0x21, 0x59, 0x43, + 0x17, 0x27, 0x77, 0xb5, +}; +static const unsigned char kat1019_nonce[] = {0}; +static const unsigned char kat1019_persstr[] = { + 0x9c, 0xf5, 0xa1, 0x8f, 0x1b, 0x2c, 0x2a, 0xf9, 0x6c, 0x63, 0xfd, 0xf2, + 0xd6, 0x58, 0x22, 0x53, 0x7e, 0x90, 0x7a, 0xa5, 0xe1, 0x79, 0xe1, 0x88, + 0x97, 0x63, 0x7b, 0x84, 0xbd, 0x9c, 0xb2, 0x4f, 0x41, 0xfe, 0x01, 0xcd, + 0xd3, 0x1c, 0xec, 0x07, +}; +static const unsigned char kat1019_addin0[] = { + 0x3c, 0x45, 0x46, 0x28, 0xff, 0x13, 0xa6, 0x05, 0x03, 0x79, 0xb4, 0xd3, + 0xa7, 0x83, 0xbe, 0xbd, 0x1a, 0x30, 0x01, 0xf7, 0x0e, 0x0f, 0x20, 0x61, + 0x9f, 0x1d, 0x90, 0x0e, 0x9e, 0xb1, 0x52, 0xea, 0xc7, 0x15, 0xd2, 0x77, + 0x9f, 0x16, 0x51, 0x67, +}; +static const unsigned char kat1019_addin1[] = { + 0x16, 0x93, 0xe9, 0x3b, 0x42, 0xad, 0x41, 0x08, 0xef, 0x3c, 0xaa, 0xb6, + 0xbd, 0x69, 0x87, 0xb1, 0xa7, 0xdc, 0x5f, 0x05, 0x96, 0x8d, 0xd8, 0xee, + 0x6f, 0xfb, 0x2f, 0xc6, 0x5c, 0x25, 0x16, 0x27, 0x7a, 0xb4, 0x2f, 0x7e, + 0xf7, 0x06, 0x69, 0xe3, +}; +static const unsigned char kat1019_retbits[] = { + 0x39, 0xf0, 0xf2, 0x21, 0xdf, 0x9c, 0xf7, 0x3c, 0xb4, 0x8e, 0x32, 0x76, + 0xf0, 0x16, 0x50, 0x73, 0x19, 0xf4, 0x53, 0x75, 0x88, 0xf2, 0xc7, 0x1f, + 0xcb, 0x20, 0xe0, 0x9d, 0xdf, 0xb1, 0x9a, 0x91, 0x70, 0xcc, 0x3c, 0x8f, + 0x76, 0xf3, 0x49, 0xe1, 0xa9, 0xa0, 0x53, 0x30, 0x3d, 0x4c, 0x91, 0x19, + 0x5d, 0xed, 0x47, 0x9e, 0x8b, 0xec, 0x7e, 0x4b, 0x95, 0x25, 0x41, 0x4b, + 0x38, 0xf9, 0x01, 0x21, +}; +static const struct drbg_kat_no_reseed kat1019_t = { + 13, kat1019_entropyin, kat1019_nonce, kat1019_persstr, + kat1019_addin0, kat1019_addin1, kat1019_retbits +}; +static const struct drbg_kat kat1019 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1019_t +}; + +static const unsigned char kat1020_entropyin[] = { + 0x14, 0xb9, 0xc7, 0x96, 0x22, 0xaf, 0x2c, 0xb6, 0xbb, 0x65, 0xa8, 0xf0, + 0xf6, 0x1a, 0x8f, 0xc0, 0xe5, 0x9f, 0x26, 0xdc, 0x69, 0x78, 0x9e, 0x6e, + 0xae, 0xe1, 0x3f, 0x03, 0xad, 0x30, 0x6d, 0x93, 0xc7, 0xa3, 0x5b, 0x9e, + 0x69, 0xa2, 0x42, 0x1c, +}; +static const unsigned char kat1020_nonce[] = {0}; +static const unsigned char kat1020_persstr[] = { + 0xb2, 0xe2, 0x51, 0x7a, 0x5c, 0x15, 0x73, 0x80, 0x0e, 0x3f, 0x5f, 0x31, + 0x44, 0xa2, 0xc7, 0x6f, 0x70, 0xbf, 0x4d, 0x36, 0xef, 0xd9, 0xe8, 0x62, + 0x6a, 0xd4, 0x5e, 0x5c, 0xda, 0x7f, 0x00, 0x9b, 0xfb, 0x6b, 0xde, 0x96, + 0x2a, 0x62, 0x61, 0x0c, +}; +static const unsigned char kat1020_addin0[] = { + 0x15, 0x64, 0xd7, 0x0c, 0x91, 0xa7, 0xf7, 0x21, 0x51, 0xa4, 0x48, 0x3b, + 0x9e, 0xba, 0x35, 0xb5, 0x2c, 0x19, 0x66, 0x56, 0xff, 0x96, 0x87, 0x5d, + 0x7c, 0x59, 0xc6, 0xd1, 0x16, 0xff, 0xfa, 0x3f, 0xeb, 0xf1, 0x86, 0x0a, + 0x39, 0x81, 0xd6, 0x4b, +}; +static const unsigned char kat1020_addin1[] = { + 0xc2, 0x73, 0x1f, 0xd3, 0x8e, 0x65, 0xf8, 0xe7, 0x24, 0x37, 0x8a, 0xd4, + 0xe0, 0x13, 0x59, 0x51, 0x2c, 0xb4, 0x73, 0xdd, 0x98, 0x54, 0xfc, 0x23, + 0x03, 0xe6, 0x1c, 0x2d, 0x19, 0x7c, 0xaa, 0xd6, 0x9b, 0x12, 0xfd, 0xe1, + 0x4a, 0xed, 0x66, 0xb6, +}; +static const unsigned char kat1020_retbits[] = { + 0xc6, 0x8d, 0x3e, 0x56, 0x97, 0xf3, 0x6c, 0x9d, 0xb2, 0x53, 0x5b, 0x05, + 0x22, 0x6a, 0xa1, 0x18, 0xe0, 0x0f, 0xda, 0xb9, 0x5c, 0xa2, 0xcd, 0xbd, + 0x37, 0x42, 0x12, 0x98, 0xd4, 0x6d, 0x20, 0x54, 0xe9, 0x00, 0xb8, 0x2c, + 0xcb, 0x63, 0x22, 0x7a, 0x23, 0x38, 0x0e, 0x4a, 0x2e, 0x93, 0x32, 0x77, + 0x18, 0xcc, 0xa3, 0xb9, 0xf5, 0xfc, 0x9c, 0x39, 0x49, 0xad, 0xab, 0xd7, + 0x23, 0xbd, 0x43, 0x13, +}; +static const struct drbg_kat_no_reseed kat1020_t = { + 14, kat1020_entropyin, kat1020_nonce, kat1020_persstr, + kat1020_addin0, kat1020_addin1, kat1020_retbits +}; +static const struct drbg_kat kat1020 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1020_t +}; + +static const unsigned char kat1021_entropyin[] = { + 0x0a, 0x3e, 0x45, 0xd9, 0x2c, 0xa0, 0x0e, 0x1f, 0x65, 0x3e, 0x0f, 0x6b, + 0x24, 0x6c, 0xa6, 0xfc, 0xda, 0x82, 0x6f, 0x3d, 0x7a, 0x8b, 0xc6, 0x93, + 0x73, 0xd1, 0xf4, 0x58, 0x40, 0x8b, 0xf2, 0x98, 0x99, 0x85, 0xc8, 0x9c, + 0x2d, 0x03, 0x9b, 0x4d, +}; +static const unsigned char kat1021_nonce[] = {0}; +static const unsigned char kat1021_persstr[] = {0}; +static const unsigned char kat1021_addin0[] = {0}; +static const unsigned char kat1021_addin1[] = {0}; +static const unsigned char kat1021_retbits[] = { + 0x00, 0xee, 0xd8, 0x60, 0x01, 0x9b, 0x5a, 0x23, 0xb5, 0xd2, 0xf5, 0xa1, + 0xe1, 0x9c, 0xcc, 0xf4, 0x71, 0xf1, 0xee, 0x35, 0x84, 0x45, 0x01, 0xca, + 0xf0, 0xb2, 0xef, 0xdd, 0xdd, 0x69, 0xee, 0xd7, 0x14, 0x7a, 0x03, 0x48, + 0xb2, 0x22, 0xb3, 0x6e, 0x0e, 0xe3, 0x87, 0x90, 0xaf, 0xe3, 0xb9, 0x25, + 0x4b, 0x65, 0xfe, 0x9c, 0x09, 0xb9, 0x0e, 0xec, 0x33, 0x69, 0xff, 0x5c, + 0x66, 0x63, 0x4e, 0x0c, +}; +static const struct drbg_kat_no_reseed kat1021_t = { + 0, kat1021_entropyin, kat1021_nonce, kat1021_persstr, + kat1021_addin0, kat1021_addin1, kat1021_retbits +}; +static const struct drbg_kat kat1021 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1021_t +}; + +static const unsigned char kat1022_entropyin[] = { + 0x2c, 0x75, 0xf9, 0x24, 0x3a, 0x85, 0x92, 0x1c, 0x5d, 0xb7, 0xff, 0xdb, + 0x7a, 0x27, 0xe5, 0xf6, 0x8b, 0x71, 0xc1, 0x76, 0x97, 0x3b, 0x78, 0x1b, + 0xa1, 0x6d, 0xa1, 0x46, 0x95, 0xbc, 0x4e, 0x81, 0x4e, 0xa0, 0x7b, 0xd2, + 0xc7, 0xf4, 0x24, 0x31, +}; +static const unsigned char kat1022_nonce[] = {0}; +static const unsigned char kat1022_persstr[] = {0}; +static const unsigned char kat1022_addin0[] = {0}; +static const unsigned char kat1022_addin1[] = {0}; +static const unsigned char kat1022_retbits[] = { + 0x9d, 0xdf, 0x7e, 0x53, 0x2f, 0x2e, 0x9f, 0x4b, 0xce, 0xb9, 0x81, 0x73, + 0x93, 0x1d, 0xef, 0x69, 0xa3, 0x5f, 0x44, 0x6e, 0xad, 0x44, 0xbd, 0xe3, + 0x17, 0x6d, 0x8f, 0xb8, 0x17, 0x0d, 0xf6, 0xfe, 0x49, 0x6b, 0x12, 0xe6, + 0x40, 0xb6, 0x41, 0x81, 0x0d, 0xcb, 0xea, 0x1a, 0x84, 0x42, 0xc5, 0x03, + 0xce, 0x23, 0x89, 0x39, 0xa0, 0xd1, 0x99, 0x69, 0x1d, 0xc9, 0xba, 0xaf, + 0xca, 0x4c, 0xd4, 0x46, +}; +static const struct drbg_kat_no_reseed kat1022_t = { + 1, kat1022_entropyin, kat1022_nonce, kat1022_persstr, + kat1022_addin0, kat1022_addin1, kat1022_retbits +}; +static const struct drbg_kat kat1022 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1022_t +}; + +static const unsigned char kat1023_entropyin[] = { + 0xe3, 0x28, 0xe0, 0x30, 0xbb, 0xb4, 0xb9, 0xef, 0x5a, 0x7e, 0x91, 0xec, + 0x66, 0x3e, 0x61, 0xa8, 0x8f, 0xef, 0x4d, 0xf9, 0x37, 0x5a, 0x07, 0x78, + 0x89, 0xda, 0xfa, 0x7f, 0x19, 0xc8, 0x78, 0x02, 0x8e, 0x9d, 0xc4, 0x29, + 0x02, 0x0c, 0x9a, 0xd9, +}; +static const unsigned char kat1023_nonce[] = {0}; +static const unsigned char kat1023_persstr[] = {0}; +static const unsigned char kat1023_addin0[] = {0}; +static const unsigned char kat1023_addin1[] = {0}; +static const unsigned char kat1023_retbits[] = { + 0x1e, 0x5d, 0x47, 0x99, 0x14, 0xf9, 0x4b, 0xdf, 0x19, 0x94, 0x78, 0x6b, + 0x55, 0xad, 0x05, 0x58, 0x31, 0x8f, 0xeb, 0xd0, 0xca, 0xf2, 0x54, 0xdc, + 0x3b, 0x44, 0x70, 0xf2, 0xaf, 0x01, 0xa6, 0xb1, 0x8d, 0x01, 0xe0, 0x93, + 0xbf, 0xbe, 0x84, 0x80, 0x7b, 0x7f, 0x28, 0x91, 0x8a, 0xec, 0xdb, 0x8f, + 0x0f, 0x58, 0x24, 0xdd, 0x98, 0x27, 0xbb, 0x76, 0x05, 0xbd, 0xbd, 0x81, + 0xee, 0x47, 0xe4, 0x8f, +}; +static const struct drbg_kat_no_reseed kat1023_t = { + 2, kat1023_entropyin, kat1023_nonce, kat1023_persstr, + kat1023_addin0, kat1023_addin1, kat1023_retbits +}; +static const struct drbg_kat kat1023 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1023_t +}; + +static const unsigned char kat1024_entropyin[] = { + 0xf6, 0x0d, 0x85, 0xc8, 0x8e, 0x8d, 0x61, 0xd6, 0x7f, 0x8a, 0xb1, 0x4d, + 0xfd, 0x10, 0xe1, 0xda, 0x11, 0xf5, 0x9c, 0x90, 0xfd, 0x87, 0x68, 0xad, + 0xeb, 0xb9, 0xa3, 0x5b, 0xbe, 0x6e, 0xbe, 0xa1, 0x44, 0xb7, 0x1f, 0x99, + 0x0a, 0x7f, 0x01, 0x1f, +}; +static const unsigned char kat1024_nonce[] = {0}; +static const unsigned char kat1024_persstr[] = {0}; +static const unsigned char kat1024_addin0[] = {0}; +static const unsigned char kat1024_addin1[] = {0}; +static const unsigned char kat1024_retbits[] = { + 0x4b, 0x66, 0x69, 0x12, 0x88, 0x35, 0x06, 0x33, 0x12, 0x85, 0x97, 0xb2, + 0x45, 0xb2, 0xe9, 0xcc, 0x7e, 0xfc, 0xcd, 0x84, 0x72, 0xfd, 0xd0, 0xaa, + 0xb0, 0x8e, 0xdb, 0x01, 0x25, 0xb2, 0x2b, 0x4e, 0xd8, 0xb3, 0x3a, 0x50, + 0x2a, 0xca, 0x88, 0xc3, 0x53, 0xb9, 0x00, 0xe1, 0xc4, 0x30, 0x87, 0x59, + 0x93, 0xae, 0xc1, 0x49, 0x98, 0xa7, 0x88, 0x47, 0xaa, 0x27, 0x7d, 0xbb, + 0x51, 0x5e, 0xd6, 0x0b, +}; +static const struct drbg_kat_no_reseed kat1024_t = { + 3, kat1024_entropyin, kat1024_nonce, kat1024_persstr, + kat1024_addin0, kat1024_addin1, kat1024_retbits +}; +static const struct drbg_kat kat1024 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1024_t +}; + +static const unsigned char kat1025_entropyin[] = { + 0x34, 0xdd, 0xfd, 0x1a, 0xcb, 0xf3, 0x48, 0xe1, 0x7e, 0x7b, 0x5e, 0x13, + 0x39, 0x13, 0xa6, 0x89, 0xcd, 0xc2, 0x4e, 0x6d, 0x46, 0x80, 0x1d, 0x70, + 0xcc, 0xac, 0x49, 0xec, 0x30, 0xd8, 0xc5, 0x8f, 0xcc, 0x3a, 0xeb, 0x9f, + 0x45, 0x70, 0x0e, 0x05, +}; +static const unsigned char kat1025_nonce[] = {0}; +static const unsigned char kat1025_persstr[] = {0}; +static const unsigned char kat1025_addin0[] = {0}; +static const unsigned char kat1025_addin1[] = {0}; +static const unsigned char kat1025_retbits[] = { + 0xcb, 0x4e, 0x1f, 0x9c, 0x60, 0x13, 0x70, 0xa2, 0x3c, 0x78, 0xe7, 0xfc, + 0x33, 0xdd, 0x61, 0x9c, 0xb6, 0x17, 0x42, 0x78, 0x2b, 0x75, 0x6c, 0x8c, + 0xf9, 0x79, 0xae, 0x46, 0xa7, 0xd7, 0x51, 0x58, 0xaf, 0x70, 0x6a, 0x03, + 0x63, 0x1d, 0xbf, 0x7b, 0x17, 0x11, 0xcc, 0xd6, 0xaa, 0xe6, 0x0e, 0x78, + 0x5f, 0xff, 0x42, 0x12, 0x1c, 0xa7, 0x56, 0xe8, 0x26, 0x00, 0x75, 0xfc, + 0x27, 0xc3, 0x90, 0x43, +}; +static const struct drbg_kat_no_reseed kat1025_t = { + 4, kat1025_entropyin, kat1025_nonce, kat1025_persstr, + kat1025_addin0, kat1025_addin1, kat1025_retbits +}; +static const struct drbg_kat kat1025 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1025_t +}; + +static const unsigned char kat1026_entropyin[] = { + 0x00, 0xd9, 0x70, 0xb9, 0x3b, 0xee, 0xcf, 0x7f, 0x9c, 0x64, 0xda, 0xcd, + 0x11, 0xd4, 0xce, 0xba, 0xde, 0x39, 0x56, 0x24, 0x22, 0xf0, 0x47, 0x14, + 0x67, 0xfc, 0x22, 0x4c, 0xa3, 0x70, 0xf4, 0x65, 0xb7, 0x69, 0xbb, 0x25, + 0x02, 0x49, 0xf2, 0x1e, +}; +static const unsigned char kat1026_nonce[] = {0}; +static const unsigned char kat1026_persstr[] = {0}; +static const unsigned char kat1026_addin0[] = {0}; +static const unsigned char kat1026_addin1[] = {0}; +static const unsigned char kat1026_retbits[] = { + 0xc4, 0xd3, 0xb5, 0xd4, 0x5a, 0x9b, 0x65, 0xe8, 0x52, 0x88, 0xb7, 0x7b, + 0x78, 0x0a, 0x66, 0x58, 0xdf, 0x86, 0x22, 0x7b, 0x8d, 0x38, 0x11, 0xbf, + 0x71, 0x02, 0x18, 0xb6, 0x7a, 0x58, 0x8b, 0x2b, 0x72, 0xe9, 0x54, 0x5f, + 0xc7, 0x0a, 0xcd, 0x76, 0x25, 0xd2, 0xc4, 0xb3, 0x62, 0x72, 0x5d, 0xe4, + 0x5e, 0x83, 0x3e, 0xf4, 0xb1, 0xe1, 0x13, 0xf5, 0xee, 0x59, 0x75, 0x3d, + 0xb5, 0xad, 0x74, 0xa0, +}; +static const struct drbg_kat_no_reseed kat1026_t = { + 5, kat1026_entropyin, kat1026_nonce, kat1026_persstr, + kat1026_addin0, kat1026_addin1, kat1026_retbits +}; +static const struct drbg_kat kat1026 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1026_t +}; + +static const unsigned char kat1027_entropyin[] = { + 0x24, 0x11, 0x49, 0x53, 0x02, 0xfb, 0x00, 0xcb, 0xab, 0x99, 0xd1, 0xfb, + 0x14, 0xdf, 0x40, 0x2c, 0x8e, 0x66, 0xd7, 0x87, 0xdd, 0x52, 0x7c, 0x46, + 0x40, 0xa6, 0x74, 0xcb, 0xf7, 0xff, 0xd1, 0x96, 0x7d, 0x7f, 0x69, 0xd2, + 0x78, 0x5d, 0xda, 0x01, +}; +static const unsigned char kat1027_nonce[] = {0}; +static const unsigned char kat1027_persstr[] = {0}; +static const unsigned char kat1027_addin0[] = {0}; +static const unsigned char kat1027_addin1[] = {0}; +static const unsigned char kat1027_retbits[] = { + 0x67, 0x9c, 0x87, 0x96, 0x91, 0x9e, 0x10, 0xce, 0x44, 0x66, 0xe7, 0xe4, + 0x49, 0xf7, 0x65, 0xdf, 0x82, 0x1b, 0x06, 0xa9, 0x7a, 0xc5, 0xb3, 0xc8, + 0xf5, 0xa1, 0x6f, 0xdc, 0x66, 0x6f, 0x4b, 0x19, 0xdd, 0xda, 0x66, 0x0b, + 0xfc, 0xf7, 0x8f, 0x5f, 0x5e, 0x39, 0xa6, 0xb6, 0xf2, 0x6a, 0x22, 0x38, + 0xc9, 0xaf, 0xf6, 0x98, 0x50, 0xcf, 0xaf, 0x6d, 0x87, 0x82, 0x85, 0x1f, + 0x62, 0xf1, 0x86, 0x84, +}; +static const struct drbg_kat_no_reseed kat1027_t = { + 6, kat1027_entropyin, kat1027_nonce, kat1027_persstr, + kat1027_addin0, kat1027_addin1, kat1027_retbits +}; +static const struct drbg_kat kat1027 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1027_t +}; + +static const unsigned char kat1028_entropyin[] = { + 0xf4, 0xe8, 0x5a, 0xc5, 0x45, 0x3f, 0x16, 0xee, 0x6e, 0x26, 0x87, 0x89, + 0xe6, 0xf8, 0x1e, 0xe6, 0x71, 0x91, 0xf1, 0xfc, 0xc9, 0xc7, 0x6e, 0xc3, + 0x54, 0x36, 0x30, 0xac, 0x17, 0x71, 0x3f, 0x70, 0xe0, 0x0b, 0x6c, 0x54, + 0xf6, 0x3f, 0x9f, 0xe5, +}; +static const unsigned char kat1028_nonce[] = {0}; +static const unsigned char kat1028_persstr[] = {0}; +static const unsigned char kat1028_addin0[] = {0}; +static const unsigned char kat1028_addin1[] = {0}; +static const unsigned char kat1028_retbits[] = { + 0xc3, 0x59, 0xfc, 0x26, 0xe8, 0x8d, 0xc6, 0x34, 0x11, 0xab, 0xa0, 0x0a, + 0xed, 0xcf, 0xbc, 0x92, 0x8f, 0x70, 0x2a, 0xb2, 0x38, 0xa9, 0x9b, 0xaf, + 0xe8, 0xdd, 0x30, 0xf3, 0x80, 0x30, 0xe6, 0xd9, 0xa3, 0x61, 0xb5, 0x6c, + 0xe3, 0x4c, 0xe4, 0x23, 0x0e, 0xa5, 0x75, 0x17, 0x82, 0xf2, 0x93, 0x82, + 0xcc, 0x67, 0x3b, 0xad, 0xb1, 0xf6, 0xe7, 0x18, 0x3b, 0x08, 0x18, 0x04, + 0x32, 0x45, 0x40, 0xc0, +}; +static const struct drbg_kat_no_reseed kat1028_t = { + 7, kat1028_entropyin, kat1028_nonce, kat1028_persstr, + kat1028_addin0, kat1028_addin1, kat1028_retbits +}; +static const struct drbg_kat kat1028 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1028_t +}; + +static const unsigned char kat1029_entropyin[] = { + 0x97, 0xf8, 0x6f, 0x72, 0x79, 0xa4, 0x17, 0xba, 0x7e, 0x65, 0x5b, 0x8c, + 0x89, 0x57, 0x62, 0x6f, 0x25, 0x5c, 0x88, 0x40, 0xed, 0x0e, 0x7e, 0xac, + 0xbf, 0xef, 0xcb, 0x3a, 0x6e, 0xe2, 0x41, 0xe4, 0x42, 0x46, 0x15, 0x42, + 0x07, 0x5b, 0xe9, 0x72, +}; +static const unsigned char kat1029_nonce[] = {0}; +static const unsigned char kat1029_persstr[] = {0}; +static const unsigned char kat1029_addin0[] = {0}; +static const unsigned char kat1029_addin1[] = {0}; +static const unsigned char kat1029_retbits[] = { + 0xa5, 0x8a, 0xb9, 0xad, 0xf4, 0x3a, 0x2e, 0xfa, 0x9b, 0xa0, 0x92, 0x54, + 0x23, 0x60, 0xb5, 0x47, 0xfd, 0x77, 0x55, 0xa9, 0xf5, 0x8c, 0xcf, 0x95, + 0x3a, 0x5e, 0x92, 0xc8, 0xd1, 0x4a, 0x81, 0x64, 0x2e, 0x3d, 0x9f, 0x61, + 0xa2, 0x14, 0x3f, 0x3c, 0x95, 0x0a, 0x89, 0x45, 0x3b, 0xa5, 0x8c, 0x39, + 0x96, 0x07, 0xcc, 0x3a, 0x45, 0x2b, 0xaa, 0x4d, 0x9a, 0x5f, 0x56, 0x01, + 0x39, 0x90, 0x1c, 0xca, +}; +static const struct drbg_kat_no_reseed kat1029_t = { + 8, kat1029_entropyin, kat1029_nonce, kat1029_persstr, + kat1029_addin0, kat1029_addin1, kat1029_retbits +}; +static const struct drbg_kat kat1029 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1029_t +}; + +static const unsigned char kat1030_entropyin[] = { + 0x4a, 0x7e, 0x87, 0x52, 0xf8, 0x66, 0xf6, 0x12, 0x15, 0x38, 0xe4, 0x8f, + 0x84, 0x5d, 0xe5, 0xd4, 0xd9, 0x88, 0x6b, 0xe3, 0x7c, 0x05, 0x83, 0xfc, + 0xfc, 0x20, 0x0a, 0xde, 0xe0, 0x67, 0x91, 0xa4, 0x93, 0xc0, 0x57, 0x1f, + 0xb6, 0x18, 0x46, 0xf6, +}; +static const unsigned char kat1030_nonce[] = {0}; +static const unsigned char kat1030_persstr[] = {0}; +static const unsigned char kat1030_addin0[] = {0}; +static const unsigned char kat1030_addin1[] = {0}; +static const unsigned char kat1030_retbits[] = { + 0xe7, 0x06, 0xe2, 0xf5, 0x9c, 0xcb, 0xb6, 0x8a, 0xbe, 0xd1, 0x62, 0x90, + 0x33, 0x33, 0xc7, 0xab, 0xc4, 0x14, 0x4b, 0xc3, 0xf6, 0x5a, 0x3c, 0x75, + 0x6a, 0xd6, 0xd0, 0xe4, 0x07, 0x8d, 0x95, 0x9d, 0x80, 0x84, 0x0e, 0x12, + 0x50, 0xfc, 0x69, 0x10, 0x74, 0xad, 0xcb, 0x52, 0x03, 0x75, 0x75, 0x5c, + 0x26, 0xd5, 0x44, 0xa4, 0xaf, 0xae, 0x3a, 0xed, 0x35, 0x7b, 0xe9, 0xeb, + 0x24, 0x4f, 0xae, 0xb1, +}; +static const struct drbg_kat_no_reseed kat1030_t = { + 9, kat1030_entropyin, kat1030_nonce, kat1030_persstr, + kat1030_addin0, kat1030_addin1, kat1030_retbits +}; +static const struct drbg_kat kat1030 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1030_t +}; + +static const unsigned char kat1031_entropyin[] = { + 0xb2, 0xa0, 0x2a, 0x26, 0xde, 0xc8, 0x81, 0x67, 0x28, 0x53, 0xec, 0xa2, + 0x67, 0x1c, 0xfb, 0xa6, 0x11, 0x5c, 0x4d, 0x5a, 0x6d, 0x39, 0xad, 0x55, + 0x73, 0xa2, 0x90, 0x53, 0xe8, 0x7f, 0xb5, 0x72, 0x15, 0xe8, 0x19, 0x57, + 0xd9, 0xe5, 0xe3, 0x0f, +}; +static const unsigned char kat1031_nonce[] = {0}; +static const unsigned char kat1031_persstr[] = {0}; +static const unsigned char kat1031_addin0[] = {0}; +static const unsigned char kat1031_addin1[] = {0}; +static const unsigned char kat1031_retbits[] = { + 0x87, 0x20, 0xf7, 0x34, 0x92, 0xc6, 0xd6, 0x3f, 0x8e, 0x94, 0xa2, 0x4c, + 0x81, 0x75, 0x74, 0x58, 0x3d, 0x3b, 0xfe, 0x78, 0x3b, 0x27, 0xdf, 0x8e, + 0xb6, 0xd7, 0xd3, 0x0f, 0x2c, 0x65, 0xd6, 0xa0, 0xfb, 0x53, 0x17, 0x3a, + 0x47, 0x37, 0xf2, 0xce, 0x30, 0x55, 0x02, 0x85, 0x0d, 0xa8, 0xc3, 0x01, + 0x78, 0x50, 0xf7, 0x04, 0x58, 0x5d, 0x87, 0x86, 0x0d, 0xa1, 0xcf, 0xd5, + 0x0a, 0xf2, 0x72, 0x5d, +}; +static const struct drbg_kat_no_reseed kat1031_t = { + 10, kat1031_entropyin, kat1031_nonce, kat1031_persstr, + kat1031_addin0, kat1031_addin1, kat1031_retbits +}; +static const struct drbg_kat kat1031 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1031_t +}; + +static const unsigned char kat1032_entropyin[] = { + 0x97, 0x25, 0x59, 0x9c, 0x6b, 0x24, 0x6e, 0x22, 0xfb, 0x81, 0xcf, 0x9e, + 0x46, 0x80, 0xe1, 0x0f, 0x0b, 0x5f, 0x08, 0x40, 0xd8, 0x41, 0xf9, 0x9a, + 0x6f, 0xae, 0xfe, 0xd9, 0x87, 0x06, 0x3b, 0x24, 0x9d, 0xab, 0x1c, 0xda, + 0x59, 0x64, 0x2a, 0xeb, +}; +static const unsigned char kat1032_nonce[] = {0}; +static const unsigned char kat1032_persstr[] = {0}; +static const unsigned char kat1032_addin0[] = {0}; +static const unsigned char kat1032_addin1[] = {0}; +static const unsigned char kat1032_retbits[] = { + 0x19, 0x51, 0x5e, 0xac, 0x64, 0x4a, 0x70, 0x61, 0x9a, 0x17, 0x24, 0x9d, + 0x61, 0x8d, 0xad, 0x87, 0x5a, 0x29, 0x4c, 0xb3, 0xe5, 0x9a, 0xc8, 0xdc, + 0x73, 0x6a, 0xa7, 0x22, 0xbd, 0xf7, 0x1c, 0x6e, 0x6a, 0xad, 0x53, 0x8e, + 0x85, 0xcd, 0xb0, 0x77, 0x18, 0x5f, 0x40, 0x32, 0xe1, 0x8d, 0xbf, 0xf4, + 0x3b, 0x91, 0x49, 0x93, 0x5b, 0x08, 0x38, 0xbf, 0x9e, 0x2c, 0x08, 0x42, + 0x73, 0x03, 0x87, 0xaa, +}; +static const struct drbg_kat_no_reseed kat1032_t = { + 11, kat1032_entropyin, kat1032_nonce, kat1032_persstr, + kat1032_addin0, kat1032_addin1, kat1032_retbits +}; +static const struct drbg_kat kat1032 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1032_t +}; + +static const unsigned char kat1033_entropyin[] = { + 0xd5, 0x35, 0x67, 0xfd, 0x91, 0xff, 0x24, 0xe8, 0x56, 0x5a, 0x79, 0xfd, + 0xf7, 0xf8, 0x15, 0x16, 0x26, 0x1f, 0x03, 0xbd, 0x7e, 0x5a, 0x45, 0xaf, + 0xd5, 0x0c, 0x7a, 0xbd, 0xc8, 0x63, 0x0b, 0x45, 0x2e, 0xac, 0xe6, 0x49, + 0xe4, 0x18, 0xa6, 0x87, +}; +static const unsigned char kat1033_nonce[] = {0}; +static const unsigned char kat1033_persstr[] = {0}; +static const unsigned char kat1033_addin0[] = {0}; +static const unsigned char kat1033_addin1[] = {0}; +static const unsigned char kat1033_retbits[] = { + 0x06, 0x4f, 0xa6, 0xa5, 0x2c, 0x4a, 0x5e, 0x89, 0xf4, 0xb4, 0xd0, 0x43, + 0x66, 0x24, 0xfd, 0x40, 0x3e, 0x84, 0x9c, 0x10, 0xf2, 0xc0, 0x77, 0x8f, + 0x5d, 0x81, 0xc7, 0x9a, 0x71, 0x9d, 0x1b, 0x4b, 0x68, 0x00, 0xd9, 0xcf, + 0x1d, 0x60, 0x19, 0xb5, 0x7e, 0xf2, 0xa9, 0xe3, 0x60, 0x47, 0xef, 0x47, + 0x37, 0x95, 0x53, 0xff, 0xf5, 0x4d, 0xb4, 0xfb, 0xa0, 0x46, 0xb1, 0x9d, + 0xf7, 0x89, 0x0c, 0x26, +}; +static const struct drbg_kat_no_reseed kat1033_t = { + 12, kat1033_entropyin, kat1033_nonce, kat1033_persstr, + kat1033_addin0, kat1033_addin1, kat1033_retbits +}; +static const struct drbg_kat kat1033 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1033_t +}; + +static const unsigned char kat1034_entropyin[] = { + 0x3f, 0x88, 0x05, 0xf4, 0x5c, 0x57, 0x45, 0x5f, 0xcd, 0xda, 0xad, 0x83, + 0x88, 0x54, 0x3c, 0xe3, 0x69, 0xf0, 0xe3, 0x57, 0xa6, 0x2b, 0xbe, 0x40, + 0xb0, 0x4a, 0x19, 0x90, 0x61, 0x51, 0x46, 0x38, 0xdc, 0x51, 0x40, 0x9b, + 0x9e, 0x4a, 0xca, 0x6d, +}; +static const unsigned char kat1034_nonce[] = {0}; +static const unsigned char kat1034_persstr[] = {0}; +static const unsigned char kat1034_addin0[] = {0}; +static const unsigned char kat1034_addin1[] = {0}; +static const unsigned char kat1034_retbits[] = { + 0xba, 0x66, 0x49, 0xf5, 0x27, 0xef, 0x2d, 0x09, 0xca, 0xcf, 0x92, 0x6d, + 0x81, 0xab, 0xd4, 0x56, 0xd4, 0xb4, 0x38, 0x00, 0xdb, 0xf7, 0x7d, 0xe6, + 0x9b, 0xb9, 0xe2, 0x22, 0x9c, 0xb6, 0xe3, 0xac, 0x29, 0xc7, 0xc3, 0xd6, + 0xb5, 0xf7, 0x22, 0xd6, 0xd6, 0x69, 0x3b, 0xdc, 0x99, 0xd0, 0xf9, 0xaf, + 0xfa, 0x78, 0x85, 0x04, 0x18, 0x19, 0xcd, 0x43, 0xe3, 0x07, 0xf8, 0xaa, + 0x41, 0x8f, 0xc3, 0x1c, +}; +static const struct drbg_kat_no_reseed kat1034_t = { + 13, kat1034_entropyin, kat1034_nonce, kat1034_persstr, + kat1034_addin0, kat1034_addin1, kat1034_retbits +}; +static const struct drbg_kat kat1034 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1034_t +}; + +static const unsigned char kat1035_entropyin[] = { + 0x62, 0xef, 0xa3, 0x59, 0xeb, 0xd3, 0x1d, 0x3c, 0x49, 0x93, 0x53, 0xa5, + 0xab, 0x5f, 0x3b, 0x70, 0xa3, 0x4c, 0x5f, 0x39, 0xc5, 0x08, 0x23, 0x1e, + 0xae, 0x5f, 0x3e, 0xe2, 0x0e, 0x17, 0x83, 0x4b, 0x88, 0xfb, 0x80, 0x4a, + 0x32, 0xa2, 0x68, 0xa1, +}; +static const unsigned char kat1035_nonce[] = {0}; +static const unsigned char kat1035_persstr[] = {0}; +static const unsigned char kat1035_addin0[] = {0}; +static const unsigned char kat1035_addin1[] = {0}; +static const unsigned char kat1035_retbits[] = { + 0x20, 0xdb, 0xd7, 0x57, 0x31, 0x72, 0x20, 0xa9, 0xa5, 0xb2, 0x39, 0x4b, + 0x49, 0x5e, 0xfe, 0x5e, 0x12, 0xcc, 0x7b, 0x75, 0x9c, 0x87, 0x7b, 0xfe, + 0xed, 0x64, 0x25, 0xcd, 0x64, 0x14, 0x6e, 0xe9, 0x0c, 0x45, 0x5c, 0x50, + 0xb2, 0x24, 0x39, 0x72, 0xb4, 0x30, 0x15, 0xf6, 0x9a, 0x01, 0x5f, 0x1a, + 0x49, 0x53, 0xe8, 0x4a, 0x08, 0x9d, 0x38, 0x17, 0x1f, 0x9a, 0x6f, 0xd4, + 0x7b, 0x8d, 0x48, 0x70, +}; +static const struct drbg_kat_no_reseed kat1035_t = { + 14, kat1035_entropyin, kat1035_nonce, kat1035_persstr, + kat1035_addin0, kat1035_addin1, kat1035_retbits +}; +static const struct drbg_kat kat1035 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1035_t +}; + +static const unsigned char kat1036_entropyin[] = { + 0x5c, 0xd0, 0x9f, 0x68, 0x4e, 0x1f, 0xff, 0xa8, 0x9f, 0x00, 0x3a, 0x00, + 0x95, 0x54, 0x01, 0xf0, 0xc1, 0xc6, 0x15, 0xda, 0x99, 0xc1, 0x91, 0x23, + 0xd9, 0xf2, 0x36, 0x65, 0xc3, 0xf1, 0x14, 0xf9, 0xc3, 0x9d, 0x95, 0x8c, + 0xf7, 0x62, 0x09, 0x8b, +}; +static const unsigned char kat1036_nonce[] = {0}; +static const unsigned char kat1036_persstr[] = {0}; +static const unsigned char kat1036_addin0[] = { + 0xc7, 0xcc, 0x6f, 0x2e, 0x9f, 0x88, 0x5a, 0xb5, 0xad, 0x8c, 0xe9, 0x24, + 0xc9, 0x50, 0x9e, 0xab, 0x89, 0x75, 0x03, 0x21, 0xcb, 0xb5, 0x72, 0xb2, + 0x80, 0xdf, 0x8e, 0xc6, 0xf5, 0x09, 0x5f, 0x2b, 0x42, 0xa5, 0x58, 0x5f, + 0x75, 0xce, 0xac, 0xc2, +}; +static const unsigned char kat1036_addin1[] = { + 0xce, 0x46, 0xb5, 0x3d, 0x21, 0xb8, 0x8e, 0x4e, 0xc9, 0x0f, 0xe5, 0x81, + 0x60, 0x81, 0xea, 0xc5, 0x50, 0x4d, 0xdb, 0x8a, 0xd3, 0x34, 0x15, 0xfd, + 0xf8, 0x2a, 0xc6, 0xb9, 0x7b, 0xa0, 0x4a, 0xf5, 0x21, 0x3f, 0x3e, 0x15, + 0x30, 0xb3, 0x4c, 0xac, +}; +static const unsigned char kat1036_retbits[] = { + 0xe0, 0xab, 0x1d, 0x4e, 0x22, 0x21, 0x02, 0x7f, 0x91, 0x74, 0x84, 0x36, + 0xdf, 0x0e, 0x29, 0x0e, 0x6d, 0x2a, 0xb8, 0xc0, 0xdb, 0xfa, 0xf6, 0x38, + 0xf9, 0x75, 0x5f, 0x2a, 0x2c, 0xf8, 0x91, 0x58, 0xd4, 0x65, 0xfa, 0xcd, + 0xff, 0x74, 0x30, 0x3f, 0x0b, 0x64, 0x85, 0xb2, 0xe6, 0x09, 0xc3, 0x09, + 0xd7, 0x65, 0xbb, 0xed, 0x7e, 0xcf, 0xb3, 0xc5, 0x34, 0x10, 0xc6, 0x22, + 0x73, 0x36, 0xc6, 0x98, +}; +static const struct drbg_kat_no_reseed kat1036_t = { + 0, kat1036_entropyin, kat1036_nonce, kat1036_persstr, + kat1036_addin0, kat1036_addin1, kat1036_retbits +}; +static const struct drbg_kat kat1036 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1036_t +}; + +static const unsigned char kat1037_entropyin[] = { + 0x96, 0x7d, 0x1c, 0x60, 0x2e, 0xa0, 0xac, 0xed, 0x53, 0x71, 0x4a, 0x31, + 0x4d, 0x87, 0x7c, 0xfe, 0xa4, 0xb5, 0x52, 0xea, 0x2a, 0xac, 0xde, 0xf9, + 0xfa, 0xff, 0xa1, 0xf5, 0x43, 0xc7, 0x9f, 0x2f, 0xf6, 0xc0, 0x60, 0xe8, + 0x61, 0x14, 0x6e, 0xfd, +}; +static const unsigned char kat1037_nonce[] = {0}; +static const unsigned char kat1037_persstr[] = {0}; +static const unsigned char kat1037_addin0[] = { + 0x9f, 0xcd, 0x6e, 0x0d, 0xbf, 0xef, 0xd8, 0x57, 0x81, 0x77, 0x1f, 0x58, + 0x67, 0x77, 0x26, 0xa5, 0xbe, 0x9a, 0x14, 0x60, 0xbd, 0x7c, 0x15, 0x7f, + 0xf4, 0xd6, 0x02, 0x87, 0xbf, 0xd2, 0x50, 0xf5, 0x0d, 0x3c, 0x7a, 0x25, + 0x74, 0xd4, 0xb8, 0x59, +}; +static const unsigned char kat1037_addin1[] = { + 0x8f, 0x73, 0x4f, 0x57, 0xd4, 0x93, 0x84, 0xb4, 0x77, 0xa5, 0xd1, 0x8d, + 0xc2, 0xe2, 0x96, 0x1f, 0xa5, 0xe5, 0x55, 0x33, 0x4f, 0xe9, 0x30, 0x97, + 0x5c, 0xee, 0x93, 0xb6, 0xb3, 0x8e, 0xbc, 0x7e, 0xaf, 0xfa, 0x43, 0x80, + 0xdb, 0x65, 0xdd, 0x2b, +}; +static const unsigned char kat1037_retbits[] = { + 0x1d, 0x80, 0x1c, 0x5e, 0x3c, 0xdc, 0x15, 0xa5, 0xb6, 0xf6, 0xfc, 0x69, + 0x89, 0xcd, 0xc6, 0x70, 0x0f, 0xf0, 0x03, 0xf7, 0xc7, 0xe3, 0x01, 0xc5, + 0x7c, 0xe9, 0xe0, 0xd2, 0x1d, 0xbb, 0xe5, 0x8c, 0xe3, 0xdf, 0xd4, 0xbf, + 0x46, 0x1f, 0x5c, 0xbb, 0xe6, 0x62, 0xfb, 0x8b, 0xd8, 0x69, 0xa6, 0x9b, + 0xa0, 0xfa, 0x1c, 0xd3, 0x95, 0x6d, 0x8e, 0xf6, 0xf1, 0x9c, 0x05, 0x8f, + 0x0f, 0x97, 0x8c, 0x85, +}; +static const struct drbg_kat_no_reseed kat1037_t = { + 1, kat1037_entropyin, kat1037_nonce, kat1037_persstr, + kat1037_addin0, kat1037_addin1, kat1037_retbits +}; +static const struct drbg_kat kat1037 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1037_t +}; + +static const unsigned char kat1038_entropyin[] = { + 0x4b, 0xa5, 0x74, 0xb5, 0x24, 0x63, 0xfb, 0xb3, 0xfe, 0x7e, 0x52, 0xa6, + 0xb3, 0xcb, 0x80, 0xa5, 0x52, 0xd2, 0xc0, 0xd6, 0xbe, 0x81, 0xde, 0xc6, + 0xfb, 0xa1, 0x20, 0x50, 0xca, 0x6f, 0xca, 0x25, 0x8a, 0x9a, 0xd5, 0x4e, + 0x88, 0xc4, 0x9d, 0x92, +}; +static const unsigned char kat1038_nonce[] = {0}; +static const unsigned char kat1038_persstr[] = {0}; +static const unsigned char kat1038_addin0[] = { + 0xcb, 0xa4, 0x03, 0x4b, 0x3c, 0xf9, 0x8f, 0xa6, 0x6e, 0x5b, 0x00, 0xad, + 0xda, 0x6f, 0xca, 0x44, 0xb0, 0x5a, 0x79, 0x25, 0xe8, 0xae, 0x1a, 0x21, + 0xfa, 0x51, 0xbb, 0x11, 0x0f, 0x1c, 0x9e, 0xc4, 0x9a, 0x15, 0xc6, 0x55, + 0x0b, 0xbf, 0x96, 0x0c, +}; +static const unsigned char kat1038_addin1[] = { + 0xe7, 0xe8, 0x1a, 0x90, 0xee, 0x93, 0x10, 0x63, 0x86, 0x03, 0x49, 0xb8, + 0x79, 0x7e, 0x29, 0x86, 0x1e, 0xfd, 0x69, 0x38, 0xc1, 0x3e, 0x04, 0x00, + 0x28, 0x03, 0xf8, 0xfb, 0xea, 0x2f, 0x71, 0x53, 0x3e, 0xbc, 0x24, 0xba, + 0xaa, 0x8a, 0x98, 0x74, +}; +static const unsigned char kat1038_retbits[] = { + 0xa4, 0x12, 0x20, 0x7d, 0xa8, 0xb8, 0x56, 0xd6, 0x62, 0x94, 0xd5, 0x50, + 0xdf, 0xea, 0xda, 0x32, 0x8b, 0xdd, 0xd1, 0xed, 0xa4, 0x51, 0xeb, 0x03, + 0x93, 0xb9, 0x8e, 0x09, 0x69, 0x99, 0x62, 0x93, 0x88, 0x1b, 0xb7, 0x67, + 0xd0, 0x11, 0x14, 0x3c, 0x0a, 0x6d, 0x30, 0x48, 0xa8, 0x35, 0x34, 0x5b, + 0xe3, 0x1e, 0xaf, 0x3d, 0xa3, 0xe2, 0x66, 0x5a, 0xa6, 0xe4, 0xbb, 0x2d, + 0xfd, 0x35, 0xd6, 0x6b, +}; +static const struct drbg_kat_no_reseed kat1038_t = { + 2, kat1038_entropyin, kat1038_nonce, kat1038_persstr, + kat1038_addin0, kat1038_addin1, kat1038_retbits +}; +static const struct drbg_kat kat1038 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1038_t +}; + +static const unsigned char kat1039_entropyin[] = { + 0x6a, 0xda, 0x67, 0x0a, 0xe2, 0x4b, 0xc5, 0x3a, 0x23, 0x8d, 0xa5, 0x81, + 0x67, 0x92, 0x22, 0x30, 0x72, 0x15, 0x13, 0xb3, 0x35, 0xf6, 0xb1, 0x96, + 0x09, 0x8d, 0x36, 0xf6, 0x57, 0x4f, 0x96, 0x9c, 0x8d, 0x57, 0xc2, 0x28, + 0x12, 0x92, 0xb8, 0xb2, +}; +static const unsigned char kat1039_nonce[] = {0}; +static const unsigned char kat1039_persstr[] = {0}; +static const unsigned char kat1039_addin0[] = { + 0x5e, 0x24, 0x3e, 0x2f, 0x7f, 0xea, 0x65, 0x9b, 0xd0, 0x51, 0xdc, 0xd5, + 0x09, 0x5f, 0x7d, 0x12, 0x63, 0xed, 0x80, 0xe9, 0xf3, 0x2b, 0xc7, 0x68, + 0x26, 0x6d, 0xbb, 0xd4, 0x36, 0xbc, 0x81, 0x65, 0xcb, 0xc0, 0x41, 0x69, + 0x76, 0x69, 0xde, 0xfc, +}; +static const unsigned char kat1039_addin1[] = { + 0x5a, 0x35, 0xf0, 0xae, 0xaf, 0xc5, 0xbf, 0x88, 0xf0, 0x19, 0x79, 0xc6, + 0xaa, 0x54, 0xeb, 0xa1, 0x0f, 0xcd, 0x17, 0xc3, 0xbf, 0x04, 0x0d, 0xfe, + 0xd5, 0x4a, 0x0c, 0xdf, 0x49, 0xcc, 0x1e, 0x88, 0x53, 0x00, 0x94, 0x87, + 0x3c, 0x43, 0x66, 0xd6, +}; +static const unsigned char kat1039_retbits[] = { + 0x92, 0x2f, 0x07, 0xf5, 0x9e, 0xdf, 0xd5, 0xb6, 0xa3, 0x6d, 0x44, 0x37, + 0x75, 0x3a, 0xa1, 0xb4, 0x30, 0x90, 0xf0, 0x64, 0x9c, 0x63, 0x96, 0x73, + 0xe0, 0x28, 0x9b, 0xaa, 0xf1, 0xaa, 0xec, 0x57, 0x30, 0x6f, 0xc4, 0xf4, + 0x19, 0x69, 0x7f, 0x21, 0x56, 0x18, 0x73, 0xd1, 0xe4, 0x28, 0xe4, 0x88, + 0x37, 0x43, 0xca, 0xd5, 0x35, 0xe3, 0xf5, 0x63, 0xbf, 0x12, 0x95, 0xe1, + 0x38, 0xc7, 0xd0, 0xa5, +}; +static const struct drbg_kat_no_reseed kat1039_t = { + 3, kat1039_entropyin, kat1039_nonce, kat1039_persstr, + kat1039_addin0, kat1039_addin1, kat1039_retbits +}; +static const struct drbg_kat kat1039 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1039_t +}; + +static const unsigned char kat1040_entropyin[] = { + 0x8b, 0x06, 0x63, 0xd7, 0x16, 0x30, 0xab, 0x64, 0x96, 0x6b, 0x92, 0xa6, + 0xee, 0x7b, 0xf9, 0x4b, 0x07, 0x7f, 0xbe, 0x55, 0x89, 0x88, 0xa5, 0x0e, + 0xe8, 0x03, 0x27, 0x6d, 0x83, 0x8b, 0xaf, 0x9a, 0xec, 0x73, 0x41, 0x92, + 0x69, 0xda, 0xa0, 0x64, +}; +static const unsigned char kat1040_nonce[] = {0}; +static const unsigned char kat1040_persstr[] = {0}; +static const unsigned char kat1040_addin0[] = { + 0x47, 0x82, 0xc2, 0xd4, 0xef, 0x37, 0x7d, 0x36, 0x98, 0xda, 0x71, 0x0d, + 0x75, 0xfc, 0x83, 0xf4, 0xb2, 0x44, 0x8a, 0x79, 0x53, 0x9f, 0x5d, 0x65, + 0x52, 0xf7, 0x30, 0xd2, 0x3e, 0x47, 0xf4, 0x98, 0x90, 0xd9, 0x7b, 0xbb, + 0x4c, 0xaf, 0x30, 0x3d, +}; +static const unsigned char kat1040_addin1[] = { + 0x08, 0xcd, 0xa2, 0xb6, 0x39, 0xdb, 0x41, 0x90, 0x83, 0xac, 0x9c, 0xd2, + 0x51, 0xad, 0xf4, 0x1e, 0x75, 0x4f, 0x1f, 0xc7, 0xad, 0x0d, 0x73, 0xbf, + 0x4a, 0x54, 0x4c, 0xff, 0x1b, 0x8e, 0x5b, 0x41, 0x62, 0xd8, 0x2d, 0x95, + 0x3d, 0xf3, 0x49, 0xa7, +}; +static const unsigned char kat1040_retbits[] = { + 0x26, 0xe9, 0xdd, 0xa5, 0x85, 0x00, 0x6c, 0x71, 0xcf, 0x90, 0x40, 0xad, + 0x2b, 0x1e, 0x54, 0xc9, 0xa8, 0xd0, 0xbc, 0x94, 0xea, 0x84, 0x71, 0x6b, + 0xb4, 0x9d, 0xa1, 0xe4, 0x7a, 0x91, 0x0a, 0x6b, 0x56, 0x08, 0xa7, 0x82, + 0x65, 0x1e, 0x3f, 0x38, 0x8e, 0x7a, 0x25, 0x39, 0xa8, 0x4d, 0x27, 0x6c, + 0xda, 0x5f, 0xd9, 0xc4, 0x5c, 0xab, 0xbd, 0x02, 0x6d, 0xf5, 0xe1, 0x29, + 0x5d, 0x03, 0xfd, 0x5e, +}; +static const struct drbg_kat_no_reseed kat1040_t = { + 4, kat1040_entropyin, kat1040_nonce, kat1040_persstr, + kat1040_addin0, kat1040_addin1, kat1040_retbits +}; +static const struct drbg_kat kat1040 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1040_t +}; + +static const unsigned char kat1041_entropyin[] = { + 0x48, 0x93, 0x64, 0xb0, 0x57, 0xd9, 0xdf, 0xfc, 0xe0, 0xde, 0x0e, 0x92, + 0xbe, 0xc4, 0x86, 0x43, 0xa4, 0x12, 0xb0, 0x95, 0xb7, 0x9b, 0x61, 0x1e, + 0x79, 0x9f, 0x57, 0x88, 0x9a, 0x4b, 0x00, 0x81, 0xd6, 0x98, 0x4b, 0x83, + 0x60, 0xb6, 0xca, 0x02, +}; +static const unsigned char kat1041_nonce[] = {0}; +static const unsigned char kat1041_persstr[] = {0}; +static const unsigned char kat1041_addin0[] = { + 0xde, 0xad, 0x84, 0x8d, 0x39, 0xa2, 0xc0, 0x95, 0x73, 0x35, 0xd5, 0x35, + 0x7e, 0xd5, 0xf9, 0xaa, 0xa4, 0x3e, 0xec, 0xf0, 0x36, 0xed, 0x9a, 0x07, + 0x8a, 0xd7, 0xa9, 0x46, 0xba, 0x86, 0xc8, 0x5a, 0x5f, 0x19, 0x2f, 0x32, + 0x4f, 0x71, 0xc3, 0x0d, +}; +static const unsigned char kat1041_addin1[] = { + 0x84, 0xc6, 0xa7, 0x05, 0x7a, 0xe6, 0x79, 0x2a, 0xe9, 0xdb, 0x18, 0xb4, + 0x29, 0xbf, 0xb6, 0x5b, 0xff, 0x19, 0xc0, 0x3b, 0x03, 0x84, 0xa6, 0x42, + 0x37, 0x43, 0xa6, 0xa2, 0xd5, 0x26, 0x3e, 0x45, 0xaa, 0xce, 0x0e, 0x5e, + 0x6d, 0x53, 0xd8, 0x8c, +}; +static const unsigned char kat1041_retbits[] = { + 0x92, 0x74, 0x2a, 0xa7, 0xdc, 0x8d, 0x76, 0xa8, 0xfc, 0x4a, 0x28, 0xd0, + 0x3f, 0xd1, 0x13, 0x12, 0xd2, 0x07, 0xe6, 0xb6, 0xb1, 0xdf, 0xeb, 0x16, + 0x66, 0x53, 0x11, 0x2f, 0x58, 0xc3, 0xe3, 0x9e, 0x0b, 0xeb, 0x07, 0x0b, + 0x40, 0x13, 0x97, 0xab, 0x7d, 0x52, 0xe4, 0xb2, 0x4d, 0xd5, 0xc3, 0x90, + 0xaf, 0x5f, 0x36, 0xd4, 0x4b, 0x7c, 0xaa, 0x1a, 0x4e, 0x1b, 0x0d, 0xc1, + 0xa8, 0xc9, 0x74, 0xfd, +}; +static const struct drbg_kat_no_reseed kat1041_t = { + 5, kat1041_entropyin, kat1041_nonce, kat1041_persstr, + kat1041_addin0, kat1041_addin1, kat1041_retbits +}; +static const struct drbg_kat kat1041 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1041_t +}; + +static const unsigned char kat1042_entropyin[] = { + 0x1e, 0x64, 0xe3, 0xb4, 0xa3, 0xdd, 0xee, 0x08, 0x93, 0x68, 0x7b, 0xe2, + 0x40, 0x1b, 0xac, 0xb1, 0xb3, 0xdc, 0x1e, 0x14, 0x05, 0x00, 0xf9, 0xaa, + 0x70, 0x90, 0x8c, 0x52, 0xc9, 0x1b, 0x2c, 0x49, 0xf8, 0xd0, 0xd9, 0xc1, + 0x2c, 0xb8, 0x47, 0x73, +}; +static const unsigned char kat1042_nonce[] = {0}; +static const unsigned char kat1042_persstr[] = {0}; +static const unsigned char kat1042_addin0[] = { + 0x53, 0x58, 0x90, 0x29, 0x05, 0xdc, 0xb0, 0xbc, 0x36, 0x99, 0x9b, 0x65, + 0x73, 0x8b, 0x70, 0x7f, 0x91, 0x22, 0x6d, 0x14, 0x25, 0x82, 0xd2, 0xb9, + 0xd8, 0x23, 0x79, 0xc0, 0x76, 0x82, 0xb3, 0xa1, 0xe5, 0x41, 0x9e, 0x32, + 0xa8, 0x86, 0x9d, 0x6f, +}; +static const unsigned char kat1042_addin1[] = { + 0x0c, 0x32, 0xa5, 0x72, 0x6d, 0xab, 0xab, 0x03, 0x30, 0x7b, 0xff, 0x1b, + 0xe5, 0x24, 0xc0, 0x86, 0x20, 0x0e, 0x85, 0x5c, 0xf3, 0xca, 0x7a, 0x78, + 0xa5, 0xd6, 0x1f, 0xdd, 0x62, 0x88, 0x6a, 0xbc, 0xa7, 0xf8, 0x69, 0x38, + 0x16, 0xd2, 0x26, 0xc0, +}; +static const unsigned char kat1042_retbits[] = { + 0x2a, 0x3f, 0x0a, 0x6c, 0x58, 0x14, 0x24, 0xd5, 0x76, 0x1a, 0x32, 0x17, + 0x8f, 0x0e, 0x76, 0x62, 0xaa, 0xcd, 0xba, 0xd7, 0x39, 0xce, 0x3f, 0x18, + 0xcb, 0x5d, 0x04, 0xba, 0x69, 0xdc, 0x75, 0xc5, 0x45, 0xab, 0x80, 0x73, + 0x5a, 0xe2, 0xd4, 0x4a, 0x8e, 0x52, 0xff, 0x37, 0x43, 0xdb, 0x2d, 0xe1, + 0x53, 0x4e, 0x55, 0x35, 0x92, 0x02, 0xec, 0x11, 0xde, 0xb0, 0x67, 0xd9, + 0x1e, 0x7f, 0x0a, 0xe6, +}; +static const struct drbg_kat_no_reseed kat1042_t = { + 6, kat1042_entropyin, kat1042_nonce, kat1042_persstr, + kat1042_addin0, kat1042_addin1, kat1042_retbits +}; +static const struct drbg_kat kat1042 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1042_t +}; + +static const unsigned char kat1043_entropyin[] = { + 0xe8, 0xdc, 0xf5, 0x1a, 0xdb, 0x2e, 0xff, 0x85, 0xa3, 0xbe, 0x9c, 0xdd, + 0x83, 0xc4, 0xcb, 0x3e, 0x4a, 0x45, 0x0d, 0x2e, 0x36, 0x37, 0x74, 0x24, + 0x0b, 0xef, 0xa1, 0x56, 0x80, 0x3f, 0xa4, 0xe4, 0x89, 0xb3, 0x24, 0x9f, + 0xdf, 0x94, 0xc7, 0x06, +}; +static const unsigned char kat1043_nonce[] = {0}; +static const unsigned char kat1043_persstr[] = {0}; +static const unsigned char kat1043_addin0[] = { + 0xd8, 0x51, 0x49, 0x08, 0x01, 0x6a, 0x20, 0xac, 0xc5, 0x4a, 0x98, 0xe8, + 0xee, 0x09, 0x03, 0xf6, 0x2b, 0xd8, 0xdf, 0x4d, 0x62, 0x3c, 0x76, 0x8f, + 0xd6, 0xee, 0x43, 0x84, 0xff, 0x84, 0x19, 0xe8, 0x2d, 0xb7, 0xaf, 0x12, + 0x4b, 0x49, 0x63, 0x11, +}; +static const unsigned char kat1043_addin1[] = { + 0x76, 0x34, 0x23, 0x4f, 0x2e, 0x36, 0x5e, 0x6b, 0x59, 0x8d, 0xab, 0xbe, + 0xf4, 0x24, 0x7f, 0xa2, 0x63, 0x6f, 0x14, 0x95, 0x25, 0x29, 0xc1, 0x5d, + 0x0a, 0x9a, 0x47, 0x5a, 0x77, 0x53, 0x0d, 0xde, 0x63, 0x94, 0x03, 0x7f, + 0x2b, 0x86, 0x4b, 0xcc, +}; +static const unsigned char kat1043_retbits[] = { + 0xb8, 0xb5, 0x1f, 0x71, 0x7e, 0x97, 0x3c, 0xc6, 0xf7, 0x36, 0x15, 0x18, + 0xa7, 0xdf, 0xb8, 0xf9, 0x79, 0xe6, 0xaa, 0x76, 0x13, 0x21, 0x5d, 0x3a, + 0x72, 0xff, 0xfc, 0x0b, 0x80, 0x5d, 0x65, 0x4e, 0x1e, 0x81, 0xf4, 0x36, + 0x32, 0xac, 0xb7, 0xb1, 0xca, 0xcb, 0x9f, 0xe8, 0xed, 0x5c, 0x29, 0x02, + 0x9e, 0x9a, 0xcd, 0x7a, 0x39, 0x7d, 0xe8, 0x3c, 0x90, 0xfb, 0x55, 0x75, + 0x31, 0xd9, 0xdf, 0x37, +}; +static const struct drbg_kat_no_reseed kat1043_t = { + 7, kat1043_entropyin, kat1043_nonce, kat1043_persstr, + kat1043_addin0, kat1043_addin1, kat1043_retbits +}; +static const struct drbg_kat kat1043 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1043_t +}; + +static const unsigned char kat1044_entropyin[] = { + 0xe7, 0x18, 0xb5, 0xd8, 0xfb, 0x73, 0x26, 0x0b, 0xf4, 0x6f, 0x1d, 0x4b, + 0x50, 0x44, 0xeb, 0x44, 0x69, 0x30, 0x25, 0x3f, 0xe6, 0x9b, 0xc1, 0x6e, + 0x1c, 0x73, 0x87, 0xb3, 0x26, 0xc2, 0x4f, 0xd1, 0x4e, 0xb5, 0x75, 0x15, + 0xe5, 0x39, 0x4e, 0x88, +}; +static const unsigned char kat1044_nonce[] = {0}; +static const unsigned char kat1044_persstr[] = {0}; +static const unsigned char kat1044_addin0[] = { + 0x97, 0x8c, 0xa8, 0x24, 0xc6, 0x52, 0xdc, 0xd5, 0x41, 0xaa, 0x5d, 0xba, + 0xf5, 0xf1, 0xc3, 0x16, 0x7c, 0x1d, 0x02, 0x09, 0x15, 0xe8, 0x5a, 0x6c, + 0x28, 0x7a, 0xff, 0x4b, 0x17, 0x65, 0x80, 0x4a, 0xb3, 0x49, 0x25, 0xeb, + 0xef, 0x77, 0x47, 0x2d, +}; +static const unsigned char kat1044_addin1[] = { + 0x3d, 0x59, 0x40, 0x97, 0xd7, 0x88, 0x69, 0x9f, 0xb1, 0x4b, 0x69, 0x26, + 0x88, 0x2f, 0x77, 0xb8, 0x38, 0x7d, 0xb9, 0xc4, 0xd9, 0x43, 0xb7, 0x0e, + 0x34, 0x1d, 0x73, 0x85, 0x37, 0xc8, 0x2f, 0x10, 0x6e, 0xb4, 0x5c, 0x25, + 0xcd, 0x9b, 0x88, 0x31, +}; +static const unsigned char kat1044_retbits[] = { + 0xfc, 0xaf, 0xc3, 0xd5, 0x96, 0x75, 0x37, 0xb8, 0xea, 0x3a, 0xce, 0x6d, + 0xa0, 0x21, 0xd5, 0xcf, 0xba, 0xfe, 0x35, 0x56, 0x59, 0xb9, 0xb5, 0xd1, + 0x4c, 0xed, 0x17, 0xe0, 0x8f, 0x1f, 0x9c, 0x17, 0x0c, 0x2c, 0xd9, 0x45, + 0xd6, 0x05, 0x4d, 0xa5, 0x40, 0xef, 0xcb, 0x1c, 0x20, 0xe2, 0x80, 0xff, + 0x60, 0x2e, 0x43, 0x60, 0x71, 0xcc, 0xce, 0x38, 0x47, 0x49, 0x66, 0xd9, + 0x6f, 0x94, 0x9f, 0x9b, +}; +static const struct drbg_kat_no_reseed kat1044_t = { + 8, kat1044_entropyin, kat1044_nonce, kat1044_persstr, + kat1044_addin0, kat1044_addin1, kat1044_retbits +}; +static const struct drbg_kat kat1044 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1044_t +}; + +static const unsigned char kat1045_entropyin[] = { + 0xc8, 0x5a, 0xa4, 0x5a, 0xcb, 0xc7, 0xcf, 0xd4, 0x09, 0x9e, 0x3a, 0x79, + 0xfb, 0x8c, 0x10, 0x7c, 0xac, 0x25, 0x3f, 0xbb, 0x17, 0x10, 0x13, 0x91, + 0x2e, 0x36, 0xae, 0x73, 0x18, 0xc3, 0x0d, 0x42, 0x53, 0x09, 0x99, 0x84, + 0x16, 0x7b, 0x83, 0xb8, +}; +static const unsigned char kat1045_nonce[] = {0}; +static const unsigned char kat1045_persstr[] = {0}; +static const unsigned char kat1045_addin0[] = { + 0xe3, 0x43, 0xf3, 0x3d, 0x7d, 0x30, 0x5d, 0x36, 0xc9, 0x74, 0xb5, 0xf1, + 0x3f, 0xbb, 0xb6, 0xa0, 0x38, 0xa5, 0x4b, 0x3d, 0xfc, 0x4c, 0x63, 0xd4, + 0xbb, 0x35, 0xb9, 0xa1, 0x02, 0x53, 0x63, 0x61, 0x3a, 0xfc, 0xb1, 0xe9, + 0x3f, 0x76, 0xeb, 0x25, +}; +static const unsigned char kat1045_addin1[] = { + 0xd3, 0xd9, 0xe1, 0x98, 0xd9, 0xa1, 0xc7, 0x1e, 0x12, 0x4e, 0x47, 0x06, + 0x54, 0xae, 0x8f, 0x8a, 0x4b, 0x0d, 0xff, 0xc5, 0xdc, 0x04, 0x81, 0x51, + 0x84, 0xc9, 0x16, 0xb4, 0x76, 0xcb, 0xb5, 0x8e, 0x86, 0xce, 0x40, 0xf3, + 0x1a, 0x09, 0x04, 0x47, +}; +static const unsigned char kat1045_retbits[] = { + 0xe0, 0x54, 0x73, 0x47, 0x02, 0x4b, 0x75, 0x93, 0x84, 0x86, 0xe4, 0x6c, + 0xef, 0x39, 0x2d, 0x51, 0x93, 0x6d, 0xc8, 0xe8, 0x35, 0x08, 0x34, 0xab, + 0x97, 0x60, 0xd2, 0xd5, 0xfc, 0x44, 0xa6, 0x7e, 0xec, 0xa4, 0xcc, 0xc6, + 0x6c, 0x88, 0xac, 0x4a, 0x92, 0xed, 0x74, 0x8b, 0x77, 0x8e, 0x55, 0xd8, + 0x61, 0x64, 0x51, 0x26, 0xae, 0x76, 0x4f, 0x37, 0x1a, 0x78, 0x6b, 0x0a, + 0x6b, 0x30, 0x58, 0x00, +}; +static const struct drbg_kat_no_reseed kat1045_t = { + 9, kat1045_entropyin, kat1045_nonce, kat1045_persstr, + kat1045_addin0, kat1045_addin1, kat1045_retbits +}; +static const struct drbg_kat kat1045 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1045_t +}; + +static const unsigned char kat1046_entropyin[] = { + 0x9b, 0xa9, 0xf7, 0x51, 0x1c, 0x1c, 0x6f, 0x06, 0xac, 0xd4, 0xa6, 0x47, + 0xea, 0xb8, 0x22, 0x72, 0x43, 0x39, 0x23, 0x6a, 0x6e, 0x3f, 0x0f, 0xd2, + 0x61, 0x50, 0xc3, 0xa2, 0x12, 0x7b, 0x49, 0xc6, 0xbe, 0xe3, 0xb9, 0xc5, + 0xb7, 0x01, 0xd4, 0xb6, +}; +static const unsigned char kat1046_nonce[] = {0}; +static const unsigned char kat1046_persstr[] = {0}; +static const unsigned char kat1046_addin0[] = { + 0xc7, 0xd3, 0x1b, 0xb6, 0x1a, 0x45, 0x48, 0x42, 0xa6, 0xb6, 0x63, 0x6a, + 0x38, 0x7d, 0xf9, 0x6d, 0x16, 0x39, 0x05, 0xa9, 0xbd, 0x24, 0x50, 0x25, + 0x1d, 0xba, 0xc9, 0xd9, 0x9d, 0x85, 0x8f, 0x22, 0x23, 0x69, 0xde, 0xd3, + 0x9c, 0xba, 0x5f, 0xc6, +}; +static const unsigned char kat1046_addin1[] = { + 0x83, 0x2a, 0x61, 0x5d, 0xf5, 0x75, 0x7a, 0x5a, 0x6a, 0x78, 0x47, 0xcf, + 0xb6, 0x74, 0x31, 0xf0, 0x77, 0xf9, 0xcf, 0x28, 0xc5, 0x97, 0xf1, 0xfc, + 0x6d, 0x1f, 0xe9, 0x0a, 0xca, 0x9b, 0xba, 0x61, 0x60, 0x65, 0xd5, 0xcd, + 0x01, 0x37, 0x46, 0xc9, +}; +static const unsigned char kat1046_retbits[] = { + 0x26, 0x30, 0x41, 0x54, 0xa2, 0x19, 0x8e, 0xeb, 0xb7, 0x9f, 0xac, 0xab, + 0x9a, 0x96, 0x72, 0xdb, 0x80, 0x9f, 0x2e, 0xa0, 0xae, 0x3d, 0xac, 0x36, + 0x92, 0x85, 0x72, 0xa5, 0x5c, 0xae, 0xe0, 0xd6, 0xb6, 0xf3, 0x2f, 0x17, + 0xa9, 0x31, 0xa6, 0xe7, 0xf0, 0x96, 0x11, 0x9e, 0xf3, 0x17, 0xd1, 0x38, + 0x4d, 0x47, 0xff, 0x8a, 0xfa, 0x5c, 0x6e, 0xea, 0x31, 0xc6, 0xf0, 0x28, + 0xc7, 0x0b, 0xc6, 0x46, +}; +static const struct drbg_kat_no_reseed kat1046_t = { + 10, kat1046_entropyin, kat1046_nonce, kat1046_persstr, + kat1046_addin0, kat1046_addin1, kat1046_retbits +}; +static const struct drbg_kat kat1046 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1046_t +}; + +static const unsigned char kat1047_entropyin[] = { + 0x8b, 0xea, 0xbd, 0xfb, 0xd4, 0xf5, 0xb1, 0x6b, 0xdc, 0x4b, 0x94, 0x17, + 0x80, 0x26, 0xed, 0x50, 0xcb, 0x1f, 0xc6, 0x5d, 0xde, 0xd2, 0x18, 0xae, + 0xea, 0xf5, 0x58, 0x60, 0x1b, 0xd7, 0xf5, 0x58, 0x5f, 0x48, 0x58, 0xde, + 0x7a, 0x98, 0xd4, 0xdd, +}; +static const unsigned char kat1047_nonce[] = {0}; +static const unsigned char kat1047_persstr[] = {0}; +static const unsigned char kat1047_addin0[] = { + 0x1d, 0x95, 0xe1, 0xb5, 0xd0, 0x77, 0xfc, 0x7d, 0x5d, 0x14, 0x97, 0x55, + 0xe2, 0x98, 0x7a, 0xbc, 0x28, 0x55, 0xda, 0xba, 0x34, 0xec, 0xae, 0x5e, + 0x83, 0x58, 0x12, 0x44, 0x80, 0x46, 0x0a, 0x25, 0x53, 0x80, 0x32, 0x08, + 0xd0, 0x15, 0x1a, 0x53, +}; +static const unsigned char kat1047_addin1[] = { + 0x73, 0xe6, 0x53, 0x5b, 0xda, 0xf0, 0x79, 0xe4, 0xf1, 0xda, 0x57, 0x69, + 0x6c, 0x0a, 0x95, 0xc6, 0x53, 0xea, 0x7d, 0x73, 0x8d, 0x4b, 0x52, 0xf0, + 0x1e, 0xe6, 0x83, 0x18, 0x9a, 0x6a, 0x3c, 0xf1, 0xcb, 0x22, 0xa3, 0x28, + 0xb9, 0xbc, 0x36, 0xed, +}; +static const unsigned char kat1047_retbits[] = { + 0x45, 0x2a, 0x3a, 0x8f, 0xbb, 0x39, 0x12, 0x1a, 0x54, 0x54, 0x76, 0x9f, + 0xa7, 0x5b, 0x10, 0xde, 0x00, 0x7a, 0x9e, 0xcc, 0x85, 0x0b, 0x6a, 0xea, + 0xe2, 0x31, 0x82, 0x74, 0xea, 0x3d, 0x1f, 0x91, 0xde, 0xf5, 0x9d, 0x58, + 0x91, 0x5e, 0x43, 0x39, 0xf8, 0x88, 0x0d, 0xa3, 0x49, 0xab, 0x96, 0x2a, + 0xa8, 0x77, 0xef, 0x00, 0xb8, 0x26, 0xfe, 0xe4, 0x98, 0xb0, 0x62, 0x9f, + 0x32, 0x55, 0xa2, 0xa8, +}; +static const struct drbg_kat_no_reseed kat1047_t = { + 11, kat1047_entropyin, kat1047_nonce, kat1047_persstr, + kat1047_addin0, kat1047_addin1, kat1047_retbits +}; +static const struct drbg_kat kat1047 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1047_t +}; + +static const unsigned char kat1048_entropyin[] = { + 0xad, 0x73, 0x04, 0x05, 0xc8, 0xa9, 0x66, 0xf4, 0xd3, 0x37, 0xfe, 0x0a, + 0x2d, 0x3e, 0x27, 0xbb, 0x89, 0x33, 0xa7, 0x9b, 0x20, 0x1f, 0x0c, 0xb2, + 0xc9, 0x43, 0x21, 0x59, 0xd2, 0xcf, 0xd9, 0x92, 0xd2, 0x26, 0xeb, 0x1e, + 0xad, 0x4e, 0x99, 0x73, +}; +static const unsigned char kat1048_nonce[] = {0}; +static const unsigned char kat1048_persstr[] = {0}; +static const unsigned char kat1048_addin0[] = { + 0xef, 0x60, 0x7d, 0x3c, 0x90, 0x9c, 0x55, 0xbe, 0x2f, 0xe8, 0x7b, 0x1b, + 0x72, 0xee, 0x66, 0x33, 0x24, 0x97, 0xaf, 0xa3, 0x94, 0xe3, 0x02, 0x90, + 0x22, 0xab, 0xbc, 0x0c, 0x2a, 0x9f, 0x75, 0x2b, 0x8a, 0x9d, 0x5d, 0xb8, + 0xa3, 0x86, 0xcd, 0x58, +}; +static const unsigned char kat1048_addin1[] = { + 0x97, 0x55, 0x25, 0xaa, 0x37, 0xa3, 0xcc, 0x6a, 0xe7, 0xcc, 0xad, 0x13, + 0xf2, 0x40, 0xbf, 0x4f, 0x65, 0xc1, 0x0e, 0x2e, 0x8a, 0xda, 0x05, 0x9a, + 0xf9, 0xb9, 0x16, 0x7e, 0x08, 0x94, 0xca, 0xbb, 0x62, 0xe3, 0xa6, 0xb5, + 0x60, 0xf4, 0xc7, 0x95, +}; +static const unsigned char kat1048_retbits[] = { + 0xf9, 0x31, 0x82, 0x44, 0x79, 0xce, 0x47, 0xd2, 0x1f, 0x07, 0x36, 0x72, + 0xfe, 0x81, 0xa3, 0x7a, 0x17, 0xef, 0xed, 0xae, 0x5e, 0x87, 0x25, 0x5c, + 0x17, 0xd9, 0x79, 0x6f, 0xc7, 0xcc, 0x78, 0x92, 0x34, 0xf5, 0x2b, 0x3a, + 0x91, 0x64, 0x3a, 0xc7, 0xf3, 0x37, 0x82, 0x8a, 0x77, 0x6a, 0x24, 0x2e, + 0x1d, 0xed, 0xf0, 0x1d, 0x99, 0xda, 0x9c, 0x6f, 0xa6, 0x00, 0x93, 0xcb, + 0xed, 0x5f, 0x7c, 0x61, +}; +static const struct drbg_kat_no_reseed kat1048_t = { + 12, kat1048_entropyin, kat1048_nonce, kat1048_persstr, + kat1048_addin0, kat1048_addin1, kat1048_retbits +}; +static const struct drbg_kat kat1048 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1048_t +}; + +static const unsigned char kat1049_entropyin[] = { + 0x7a, 0xb3, 0x9c, 0xaf, 0x3a, 0x92, 0x73, 0xf4, 0x29, 0x7d, 0x93, 0xae, + 0xbd, 0x0a, 0xe6, 0x84, 0x00, 0x4e, 0x66, 0x7d, 0x21, 0xce, 0x9f, 0x63, + 0xf1, 0x49, 0x0b, 0x49, 0x1f, 0x60, 0xbb, 0x47, 0x8d, 0x71, 0x73, 0x22, + 0x1d, 0xf5, 0x5b, 0x13, +}; +static const unsigned char kat1049_nonce[] = {0}; +static const unsigned char kat1049_persstr[] = {0}; +static const unsigned char kat1049_addin0[] = { + 0x5a, 0xd5, 0x4c, 0x7c, 0xae, 0x0c, 0x80, 0x55, 0xed, 0x85, 0x0c, 0x5b, + 0x0d, 0xa2, 0xd5, 0xd6, 0xdc, 0x89, 0x9f, 0x10, 0xe9, 0xa7, 0xa3, 0x00, + 0x88, 0xe1, 0x2a, 0x55, 0x38, 0x6e, 0x96, 0x45, 0x4a, 0xa2, 0x72, 0xc1, + 0x27, 0x71, 0x9f, 0xf5, +}; +static const unsigned char kat1049_addin1[] = { + 0x9e, 0x79, 0xe2, 0x90, 0x7c, 0x52, 0x40, 0xba, 0xb4, 0x97, 0x00, 0xdc, + 0xe8, 0x21, 0xc4, 0x2d, 0x01, 0x89, 0xe0, 0xc6, 0xaa, 0xa2, 0x0c, 0x65, + 0x6e, 0x83, 0x72, 0x96, 0x51, 0xcc, 0xb4, 0x99, 0x19, 0xa1, 0xcb, 0x0d, + 0x4d, 0x9b, 0xbb, 0xbb, +}; +static const unsigned char kat1049_retbits[] = { + 0xab, 0x40, 0x74, 0x01, 0x50, 0xb0, 0xf8, 0xd3, 0xe3, 0xfb, 0xf3, 0xb5, + 0x58, 0x45, 0xa7, 0x7e, 0x8f, 0x79, 0x6b, 0xff, 0xf1, 0x88, 0x42, 0xdc, + 0x7c, 0x71, 0x9d, 0x45, 0xaf, 0x3c, 0x55, 0xc2, 0xa4, 0xfd, 0x2a, 0xfc, + 0x92, 0x3d, 0xc7, 0x9e, 0x99, 0x89, 0x9c, 0x34, 0xb6, 0xb1, 0x25, 0xd3, + 0xff, 0x7e, 0x5e, 0x78, 0x9f, 0xda, 0xb7, 0x57, 0x74, 0x40, 0xeb, 0x2c, + 0x49, 0xe7, 0x55, 0x5f, +}; +static const struct drbg_kat_no_reseed kat1049_t = { + 13, kat1049_entropyin, kat1049_nonce, kat1049_persstr, + kat1049_addin0, kat1049_addin1, kat1049_retbits +}; +static const struct drbg_kat kat1049 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1049_t +}; + +static const unsigned char kat1050_entropyin[] = { + 0x77, 0x34, 0x44, 0xf5, 0x4d, 0xc1, 0x7a, 0x15, 0x4b, 0xd3, 0x1b, 0x69, + 0x45, 0x0a, 0x13, 0x97, 0xfe, 0x16, 0x8f, 0x62, 0x8c, 0x80, 0x13, 0xce, + 0x3a, 0x97, 0xa8, 0x77, 0xd4, 0x83, 0xc8, 0xc9, 0x79, 0x73, 0x62, 0x11, + 0x49, 0x89, 0x13, 0x1b, +}; +static const unsigned char kat1050_nonce[] = {0}; +static const unsigned char kat1050_persstr[] = {0}; +static const unsigned char kat1050_addin0[] = { + 0x61, 0x2b, 0x0f, 0xa8, 0x6e, 0x20, 0xfc, 0xfa, 0xaf, 0xb1, 0x44, 0x24, + 0xd1, 0xea, 0x30, 0x92, 0xc9, 0xbe, 0x13, 0x1e, 0xfa, 0xdd, 0xff, 0x1b, + 0xd9, 0xbf, 0x0c, 0x9f, 0x53, 0xcf, 0x03, 0x8b, 0xf4, 0x74, 0x4b, 0x98, + 0x0a, 0x73, 0xc9, 0x82, +}; +static const unsigned char kat1050_addin1[] = { + 0xaf, 0xc2, 0x44, 0xf8, 0xc9, 0x3d, 0xd4, 0x57, 0x8b, 0xd1, 0x93, 0x22, + 0x6d, 0x7e, 0xd3, 0x21, 0xf9, 0x6d, 0xfe, 0xaf, 0xe8, 0xb4, 0x91, 0x68, + 0x4e, 0x53, 0xa0, 0xfa, 0x7d, 0x5c, 0xfb, 0x95, 0xdc, 0x3c, 0xb7, 0x73, + 0x9d, 0xf8, 0x02, 0x79, +}; +static const unsigned char kat1050_retbits[] = { + 0x64, 0x80, 0x6f, 0xeb, 0x8e, 0x21, 0x2b, 0x2b, 0x5d, 0xef, 0x33, 0x75, + 0xd8, 0x30, 0x75, 0xa0, 0xcc, 0xce, 0xcf, 0x2a, 0x8f, 0x0f, 0xd3, 0x8a, + 0x8f, 0xf4, 0x70, 0x0a, 0x31, 0x52, 0xd2, 0x04, 0x4b, 0x65, 0xe5, 0x55, + 0xf5, 0xa6, 0x17, 0x1b, 0x10, 0xd7, 0x2b, 0x6b, 0x61, 0x39, 0xec, 0xd2, + 0x93, 0x09, 0xdd, 0x09, 0xe1, 0x32, 0xae, 0x88, 0xfa, 0x9a, 0x6a, 0xdb, + 0x50, 0x0a, 0x03, 0xdb, +}; +static const struct drbg_kat_no_reseed kat1050_t = { + 14, kat1050_entropyin, kat1050_nonce, kat1050_persstr, + kat1050_addin0, kat1050_addin1, kat1050_retbits +}; +static const struct drbg_kat kat1050 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1050_t +}; + +static const unsigned char kat1051_entropyin[] = { + 0xbe, 0x69, 0x0e, 0x78, 0x91, 0xa5, 0x04, 0xbc, 0xe0, 0x31, 0x6d, 0x6f, + 0x82, 0x12, 0x5f, 0xc9, 0x24, 0x2e, 0x71, 0xf7, 0xdb, 0xb7, 0x77, 0x4f, + 0x46, 0x5b, 0x03, 0x81, 0xa3, 0x19, 0xb6, 0xdc, 0x96, 0x5c, 0xdd, 0xb8, + 0xb9, 0x29, 0xf7, 0x3e, +}; +static const unsigned char kat1051_nonce[] = {0}; +static const unsigned char kat1051_persstr[] = { + 0x3d, 0xd8, 0x50, 0xef, 0xe8, 0x90, 0xdf, 0x5a, 0x26, 0xec, 0x51, 0x05, + 0x38, 0xf6, 0x37, 0x65, 0x21, 0x27, 0x4b, 0x05, 0xe7, 0xbc, 0x31, 0xa3, + 0xad, 0x23, 0xcd, 0x00, 0x0d, 0x3f, 0x76, 0x0b, 0x16, 0x42, 0x4c, 0xd2, + 0x57, 0xb9, 0x6a, 0x91, +}; +static const unsigned char kat1051_addin0[] = {0}; +static const unsigned char kat1051_addin1[] = {0}; +static const unsigned char kat1051_retbits[] = { + 0x4c, 0xce, 0x78, 0xb1, 0x37, 0xeb, 0xad, 0xde, 0x86, 0x42, 0xed, 0x27, + 0x12, 0xfb, 0x6a, 0x80, 0xb6, 0x34, 0x48, 0x5a, 0x6c, 0x1d, 0xc4, 0xc9, + 0x3e, 0xf3, 0x0d, 0x1a, 0x06, 0xf4, 0x01, 0xa0, 0xf8, 0x39, 0x61, 0x5d, + 0xd7, 0x55, 0xef, 0xce, 0x00, 0xba, 0x33, 0x3b, 0xe0, 0xf8, 0x02, 0xe6, + 0x26, 0xbc, 0x8f, 0x1f, 0xc9, 0x64, 0x9c, 0xbc, 0x16, 0x8f, 0xe8, 0x66, + 0xd4, 0xd1, 0x42, 0x29, +}; +static const struct drbg_kat_no_reseed kat1051_t = { + 0, kat1051_entropyin, kat1051_nonce, kat1051_persstr, + kat1051_addin0, kat1051_addin1, kat1051_retbits +}; +static const struct drbg_kat kat1051 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1051_t +}; + +static const unsigned char kat1052_entropyin[] = { + 0x3b, 0x95, 0x9b, 0xaa, 0xc2, 0x0b, 0x21, 0x73, 0x92, 0xbc, 0xcc, 0xb2, + 0x7d, 0xc5, 0xcd, 0xa5, 0xc7, 0x59, 0x26, 0xb5, 0x7d, 0xd0, 0xda, 0x25, + 0xc2, 0x07, 0xa0, 0xcf, 0x30, 0x8c, 0x38, 0x51, 0x62, 0xba, 0x7b, 0x5e, + 0x87, 0xbd, 0xba, 0xf2, +}; +static const unsigned char kat1052_nonce[] = {0}; +static const unsigned char kat1052_persstr[] = { + 0x8a, 0x9a, 0x56, 0x49, 0xf9, 0x2c, 0x0f, 0xe1, 0x92, 0xd4, 0xb6, 0x44, + 0x8d, 0x06, 0x6a, 0x00, 0x63, 0x72, 0xe2, 0x4c, 0xdf, 0x1d, 0xe8, 0x42, + 0x77, 0xd7, 0xb3, 0xf1, 0x69, 0x3c, 0x3f, 0x8f, 0x70, 0xd1, 0x08, 0x8d, + 0x17, 0x22, 0x6f, 0x44, +}; +static const unsigned char kat1052_addin0[] = {0}; +static const unsigned char kat1052_addin1[] = {0}; +static const unsigned char kat1052_retbits[] = { + 0x86, 0xc5, 0x17, 0xd9, 0xe9, 0x2e, 0x64, 0x5a, 0xa2, 0x18, 0x7f, 0xbb, + 0x34, 0xc6, 0x74, 0xdc, 0xb7, 0x9a, 0x43, 0xad, 0x25, 0x70, 0xf9, 0xe9, + 0x45, 0xd9, 0x6e, 0xe7, 0x6d, 0x83, 0xfd, 0x36, 0xb3, 0x5c, 0x46, 0x0f, + 0x54, 0x4a, 0x8e, 0x3f, 0x00, 0x15, 0x0d, 0x12, 0x9c, 0xd5, 0x02, 0xe4, + 0xd3, 0xee, 0x3a, 0x77, 0x2a, 0x1a, 0x3a, 0x7b, 0xc5, 0x9d, 0x0a, 0x52, + 0x1b, 0xf8, 0xa0, 0xb7, +}; +static const struct drbg_kat_no_reseed kat1052_t = { + 1, kat1052_entropyin, kat1052_nonce, kat1052_persstr, + kat1052_addin0, kat1052_addin1, kat1052_retbits +}; +static const struct drbg_kat kat1052 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1052_t +}; + +static const unsigned char kat1053_entropyin[] = { + 0xa0, 0xca, 0xa2, 0xfe, 0xf5, 0x56, 0x79, 0x91, 0x7e, 0x5a, 0x27, 0x24, + 0x5e, 0xeb, 0x54, 0x5a, 0x7a, 0xe9, 0x8f, 0x3d, 0x2b, 0x45, 0x4d, 0xae, + 0xb7, 0x00, 0xf9, 0xf3, 0x05, 0x6c, 0x8b, 0x2f, 0x4a, 0x5b, 0xce, 0x17, + 0x4e, 0x60, 0xe4, 0x1e, +}; +static const unsigned char kat1053_nonce[] = {0}; +static const unsigned char kat1053_persstr[] = { + 0x26, 0x03, 0x31, 0x3a, 0xce, 0x04, 0xdc, 0x1c, 0x8e, 0x7d, 0x90, 0xe9, + 0x91, 0x1d, 0xb1, 0x32, 0x65, 0x60, 0xb3, 0x55, 0x6a, 0xe8, 0x1f, 0x6b, + 0xf7, 0x9a, 0x5a, 0x76, 0x1b, 0x2a, 0xf2, 0x70, 0x35, 0x87, 0x5f, 0xbc, + 0x9a, 0xe6, 0x02, 0xb4, +}; +static const unsigned char kat1053_addin0[] = {0}; +static const unsigned char kat1053_addin1[] = {0}; +static const unsigned char kat1053_retbits[] = { + 0x34, 0x6e, 0xe8, 0x6c, 0xc8, 0xea, 0x99, 0x04, 0xca, 0x2c, 0x1c, 0x2c, + 0x61, 0xf1, 0xcd, 0xf7, 0x34, 0xd6, 0x9c, 0xff, 0xb1, 0x46, 0x07, 0x3a, + 0xb8, 0xb5, 0xe6, 0x68, 0xad, 0x58, 0x9d, 0x63, 0xb3, 0x22, 0xb8, 0x10, + 0xad, 0x4c, 0x87, 0xef, 0x66, 0xb9, 0x17, 0x75, 0x33, 0xd8, 0x14, 0xa9, + 0xd4, 0xf6, 0x5e, 0x1f, 0x1d, 0x5b, 0x14, 0x30, 0x77, 0x31, 0xcd, 0xa2, + 0xc5, 0x1d, 0x90, 0x14, +}; +static const struct drbg_kat_no_reseed kat1053_t = { + 2, kat1053_entropyin, kat1053_nonce, kat1053_persstr, + kat1053_addin0, kat1053_addin1, kat1053_retbits +}; +static const struct drbg_kat kat1053 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1053_t +}; + +static const unsigned char kat1054_entropyin[] = { + 0xeb, 0xd5, 0x35, 0x90, 0x4c, 0x3d, 0xc5, 0x0d, 0x29, 0x4a, 0x7d, 0x46, + 0x22, 0xd5, 0xfc, 0x8d, 0x11, 0x45, 0x3e, 0xaa, 0x47, 0x64, 0x09, 0x0f, + 0xc5, 0xb5, 0x32, 0xe7, 0x65, 0xdf, 0x70, 0x2f, 0xe9, 0x40, 0xc7, 0xaf, + 0xc6, 0x11, 0x11, 0x59, +}; +static const unsigned char kat1054_nonce[] = {0}; +static const unsigned char kat1054_persstr[] = { + 0x19, 0x8b, 0x39, 0x55, 0x63, 0x31, 0x38, 0x76, 0x65, 0x9e, 0xe6, 0xf2, + 0x84, 0x3f, 0x75, 0x0c, 0x4a, 0x46, 0x25, 0xe7, 0x70, 0x48, 0x14, 0x78, + 0xa3, 0x00, 0xb7, 0x0c, 0xe7, 0x72, 0x48, 0x7a, 0x4f, 0xd3, 0xf1, 0x71, + 0xd0, 0xc6, 0xc5, 0x3e, +}; +static const unsigned char kat1054_addin0[] = {0}; +static const unsigned char kat1054_addin1[] = {0}; +static const unsigned char kat1054_retbits[] = { + 0x2e, 0x52, 0xdf, 0xdf, 0x1e, 0xd5, 0x53, 0x2a, 0x69, 0x8a, 0xc1, 0x0a, + 0x73, 0x4a, 0x65, 0x2c, 0x8c, 0x73, 0x5c, 0x70, 0x00, 0x27, 0x63, 0x90, + 0x70, 0xb0, 0x0a, 0xfd, 0x0b, 0x1c, 0x1c, 0xa6, 0x59, 0x50, 0x57, 0x39, + 0x97, 0x38, 0x72, 0x2f, 0x15, 0xf4, 0x23, 0x4a, 0x79, 0x42, 0xb8, 0x57, + 0x11, 0x88, 0x91, 0xe9, 0xc5, 0x00, 0x0e, 0xcc, 0xda, 0xed, 0x68, 0x98, + 0x5e, 0x5a, 0x6b, 0x5a, +}; +static const struct drbg_kat_no_reseed kat1054_t = { + 3, kat1054_entropyin, kat1054_nonce, kat1054_persstr, + kat1054_addin0, kat1054_addin1, kat1054_retbits +}; +static const struct drbg_kat kat1054 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1054_t +}; + +static const unsigned char kat1055_entropyin[] = { + 0x6a, 0xc0, 0xc9, 0x94, 0xb6, 0x3c, 0x26, 0xec, 0xc2, 0x03, 0x5a, 0xb5, + 0xdc, 0x6a, 0xb5, 0x6b, 0xc3, 0xbb, 0xd8, 0x11, 0xb2, 0xb9, 0x5c, 0x49, + 0x44, 0x8f, 0x11, 0xfe, 0x5b, 0xb4, 0x57, 0x88, 0x28, 0x40, 0x16, 0x46, + 0x01, 0xe0, 0x89, 0xc6, +}; +static const unsigned char kat1055_nonce[] = {0}; +static const unsigned char kat1055_persstr[] = { + 0xe9, 0xaa, 0x6c, 0x05, 0x64, 0xf4, 0xf8, 0x70, 0x42, 0x16, 0xd9, 0x4e, + 0x34, 0x2c, 0xb7, 0xe1, 0xf7, 0xbd, 0xd2, 0x2f, 0x5d, 0xa3, 0x80, 0x54, + 0x4b, 0xee, 0xe7, 0x79, 0x24, 0xc7, 0xef, 0xc1, 0xea, 0xbf, 0x62, 0x89, + 0xc4, 0x05, 0xba, 0x42, +}; +static const unsigned char kat1055_addin0[] = {0}; +static const unsigned char kat1055_addin1[] = {0}; +static const unsigned char kat1055_retbits[] = { + 0x42, 0xa9, 0x79, 0x19, 0x50, 0xf9, 0xce, 0xb7, 0xa5, 0x51, 0xed, 0xf3, + 0x23, 0x36, 0x46, 0x7f, 0x12, 0x2b, 0x09, 0xab, 0x53, 0xaf, 0xfb, 0x1f, + 0xc2, 0x4c, 0xc1, 0x4c, 0x8c, 0x22, 0xf4, 0x75, 0xab, 0xbd, 0xf2, 0xab, + 0x68, 0xcf, 0x06, 0xa4, 0xed, 0xd2, 0xb8, 0xd9, 0xac, 0x7c, 0x74, 0x44, + 0x60, 0xeb, 0x54, 0x80, 0xc1, 0x1f, 0x22, 0x01, 0x9c, 0x3f, 0xaf, 0x36, + 0x8a, 0xba, 0x20, 0xe9, +}; +static const struct drbg_kat_no_reseed kat1055_t = { + 4, kat1055_entropyin, kat1055_nonce, kat1055_persstr, + kat1055_addin0, kat1055_addin1, kat1055_retbits +}; +static const struct drbg_kat kat1055 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1055_t +}; + +static const unsigned char kat1056_entropyin[] = { + 0xf0, 0x2e, 0xe9, 0x85, 0xb4, 0x33, 0x09, 0x86, 0x62, 0xf2, 0x52, 0xb7, + 0x99, 0x2d, 0x6f, 0xc9, 0x80, 0xdb, 0x58, 0x4d, 0xad, 0xc3, 0x85, 0xeb, + 0x05, 0xe7, 0x59, 0x42, 0xa4, 0xce, 0x2e, 0x2a, 0x28, 0x33, 0xb9, 0xe7, + 0xa3, 0xa4, 0x46, 0x76, +}; +static const unsigned char kat1056_nonce[] = {0}; +static const unsigned char kat1056_persstr[] = { + 0x36, 0x73, 0x69, 0x02, 0xb0, 0x7a, 0xb9, 0x3f, 0xbf, 0x5d, 0x66, 0x3b, + 0xa2, 0xdc, 0x86, 0xa9, 0x22, 0x9e, 0xc8, 0x85, 0x08, 0x61, 0x69, 0x7c, + 0xdf, 0x6e, 0xa9, 0xbf, 0xd8, 0x1c, 0x4d, 0x00, 0x87, 0x94, 0xd3, 0xf2, + 0x15, 0x7f, 0xc1, 0x9d, +}; +static const unsigned char kat1056_addin0[] = {0}; +static const unsigned char kat1056_addin1[] = {0}; +static const unsigned char kat1056_retbits[] = { + 0x0c, 0xe7, 0x63, 0x98, 0xb3, 0x72, 0x37, 0x18, 0x84, 0x54, 0x10, 0x9a, + 0x2f, 0xad, 0xe5, 0xd4, 0x72, 0x8b, 0x19, 0x35, 0x72, 0x0e, 0xf3, 0x4f, + 0x92, 0xbd, 0xab, 0x4a, 0x7d, 0xc7, 0x69, 0xca, 0xd7, 0x49, 0x34, 0x47, + 0xc7, 0x0c, 0x9b, 0x17, 0xac, 0x68, 0x18, 0x84, 0x38, 0x09, 0x3a, 0x8a, + 0x61, 0x76, 0xfc, 0x4a, 0x49, 0xe7, 0x3d, 0x6d, 0x13, 0x17, 0x15, 0x7f, + 0x14, 0x8d, 0x5b, 0xd5, +}; +static const struct drbg_kat_no_reseed kat1056_t = { + 5, kat1056_entropyin, kat1056_nonce, kat1056_persstr, + kat1056_addin0, kat1056_addin1, kat1056_retbits +}; +static const struct drbg_kat kat1056 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1056_t +}; + +static const unsigned char kat1057_entropyin[] = { + 0xe6, 0x8a, 0x85, 0xbf, 0xbd, 0x44, 0x3b, 0x0f, 0x89, 0x51, 0x38, 0x59, + 0xe4, 0x4e, 0xc8, 0xd6, 0x15, 0x0e, 0xc7, 0x60, 0xa7, 0x78, 0xf3, 0x2b, + 0xd6, 0x0f, 0xeb, 0xa2, 0xa1, 0xd2, 0x5c, 0x8e, 0x62, 0x01, 0xcf, 0x62, + 0xdb, 0xf4, 0xfa, 0xe8, +}; +static const unsigned char kat1057_nonce[] = {0}; +static const unsigned char kat1057_persstr[] = { + 0x9f, 0xa1, 0xb2, 0xf6, 0xbc, 0x59, 0xf8, 0x07, 0x63, 0xa3, 0x2d, 0x69, + 0x92, 0xa1, 0xb4, 0xf6, 0xa2, 0x38, 0xb3, 0x91, 0xdb, 0x93, 0x45, 0x02, + 0xac, 0x83, 0x77, 0x69, 0x59, 0xac, 0x95, 0x2c, 0x51, 0xd1, 0xb3, 0x86, + 0x90, 0x28, 0x30, 0x54, +}; +static const unsigned char kat1057_addin0[] = {0}; +static const unsigned char kat1057_addin1[] = {0}; +static const unsigned char kat1057_retbits[] = { + 0xbc, 0x4d, 0xe4, 0xe5, 0x44, 0x2a, 0xc6, 0xa3, 0x9b, 0x5a, 0x4f, 0x14, + 0x1c, 0x5c, 0xb2, 0xe5, 0xa6, 0xe5, 0xd8, 0x6c, 0xa6, 0x64, 0x00, 0xcb, + 0x81, 0x44, 0x2c, 0xc1, 0x2b, 0xcc, 0x58, 0x60, 0x18, 0xde, 0x89, 0xd9, + 0x5b, 0x40, 0x4d, 0xba, 0xea, 0x1d, 0x82, 0x8c, 0xf9, 0xa1, 0xa2, 0x8e, + 0xb4, 0xf4, 0x3e, 0xfc, 0x8e, 0x93, 0x80, 0x33, 0xac, 0xa4, 0x46, 0x78, + 0xff, 0x17, 0xdc, 0xe6, +}; +static const struct drbg_kat_no_reseed kat1057_t = { + 6, kat1057_entropyin, kat1057_nonce, kat1057_persstr, + kat1057_addin0, kat1057_addin1, kat1057_retbits +}; +static const struct drbg_kat kat1057 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1057_t +}; + +static const unsigned char kat1058_entropyin[] = { + 0x69, 0xf9, 0x80, 0x36, 0x76, 0xd4, 0x47, 0xeb, 0xc6, 0xcb, 0xaa, 0x52, + 0x4f, 0x1a, 0xc1, 0x37, 0x55, 0x38, 0xa1, 0xe7, 0x7b, 0x4c, 0xc2, 0x4f, + 0xae, 0x2e, 0x51, 0x5f, 0x73, 0xc2, 0xde, 0x76, 0x70, 0x28, 0x86, 0xea, + 0xcd, 0xba, 0xde, 0xce, +}; +static const unsigned char kat1058_nonce[] = {0}; +static const unsigned char kat1058_persstr[] = { + 0x64, 0xa9, 0xfb, 0x09, 0x22, 0xef, 0x02, 0xd4, 0xa1, 0x1e, 0xb3, 0x23, + 0x8a, 0xbd, 0x58, 0x5d, 0x88, 0xcf, 0xe4, 0xdd, 0xc5, 0x10, 0xc4, 0x0f, + 0xd3, 0x1b, 0xe4, 0xe7, 0xd4, 0xa2, 0x82, 0x4c, 0x79, 0x5b, 0x91, 0x8d, + 0x9a, 0x3e, 0xb6, 0x62, +}; +static const unsigned char kat1058_addin0[] = {0}; +static const unsigned char kat1058_addin1[] = {0}; +static const unsigned char kat1058_retbits[] = { + 0xc6, 0x41, 0x6b, 0x85, 0xaa, 0xd6, 0xa1, 0x12, 0x7c, 0x94, 0xce, 0x45, + 0x8f, 0x35, 0x00, 0xa4, 0x6f, 0x3b, 0x8f, 0xd1, 0xe6, 0x07, 0xc7, 0xf4, + 0xdc, 0xc9, 0x66, 0x29, 0xb6, 0x58, 0x2f, 0x2d, 0x78, 0xa1, 0xd1, 0x0e, + 0xc7, 0x3f, 0xbe, 0x23, 0xb8, 0x0b, 0x3f, 0xd8, 0x2f, 0x60, 0x4c, 0xf6, + 0x92, 0xff, 0x42, 0x30, 0xbf, 0x43, 0xcd, 0x7c, 0x22, 0x14, 0xfb, 0x56, + 0x21, 0x4a, 0x63, 0xdd, +}; +static const struct drbg_kat_no_reseed kat1058_t = { + 7, kat1058_entropyin, kat1058_nonce, kat1058_persstr, + kat1058_addin0, kat1058_addin1, kat1058_retbits +}; +static const struct drbg_kat kat1058 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1058_t +}; + +static const unsigned char kat1059_entropyin[] = { + 0xa8, 0x06, 0x6e, 0xc1, 0xa8, 0x96, 0xd3, 0xc2, 0x60, 0x7e, 0x93, 0x6a, + 0x3a, 0x0d, 0x0f, 0x8a, 0x56, 0xc5, 0x26, 0xaf, 0x33, 0x29, 0x0f, 0x52, + 0xf8, 0x07, 0x9a, 0x7e, 0xa2, 0x40, 0x8e, 0x89, 0xaf, 0x6d, 0xdc, 0x7d, + 0x34, 0xc0, 0x27, 0x54, +}; +static const unsigned char kat1059_nonce[] = {0}; +static const unsigned char kat1059_persstr[] = { + 0x31, 0x51, 0x74, 0xa8, 0x6b, 0xb5, 0x03, 0x86, 0x80, 0xaf, 0xa6, 0xa1, + 0x20, 0x2b, 0xa3, 0x74, 0x7d, 0x33, 0x63, 0xf7, 0xd0, 0x0d, 0xfb, 0xc6, + 0xd1, 0xe8, 0x6b, 0x6d, 0xfc, 0xd4, 0xd5, 0xc3, 0xa6, 0x7e, 0xbd, 0xeb, + 0x52, 0x66, 0xa2, 0x33, +}; +static const unsigned char kat1059_addin0[] = {0}; +static const unsigned char kat1059_addin1[] = {0}; +static const unsigned char kat1059_retbits[] = { + 0x56, 0x23, 0xec, 0x4e, 0xfd, 0x2a, 0xe7, 0x65, 0xf5, 0x4c, 0x80, 0x0c, + 0x1e, 0xfb, 0xe0, 0xc8, 0x66, 0xe2, 0x04, 0x78, 0xec, 0x37, 0x8e, 0x5f, + 0xe9, 0x61, 0xaf, 0x6b, 0x1b, 0x6f, 0x91, 0xdd, 0x15, 0xd2, 0xf9, 0x4d, + 0xb8, 0x7e, 0x92, 0xbd, 0xb5, 0x78, 0x18, 0x8e, 0x0f, 0x77, 0x1d, 0xad, + 0x9e, 0xae, 0x47, 0xa2, 0xa1, 0xe7, 0xeb, 0xe1, 0xf4, 0xb8, 0xa5, 0x15, + 0x3d, 0x0d, 0x83, 0x52, +}; +static const struct drbg_kat_no_reseed kat1059_t = { + 8, kat1059_entropyin, kat1059_nonce, kat1059_persstr, + kat1059_addin0, kat1059_addin1, kat1059_retbits +}; +static const struct drbg_kat kat1059 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1059_t +}; + +static const unsigned char kat1060_entropyin[] = { + 0x26, 0x69, 0x61, 0xe3, 0x4f, 0x05, 0x5a, 0xff, 0x69, 0xfe, 0xfb, 0x99, + 0x35, 0x67, 0x35, 0x73, 0x8f, 0x8d, 0xd9, 0xd0, 0x92, 0xba, 0x55, 0x89, + 0x13, 0xa6, 0x4a, 0xea, 0x72, 0x57, 0xa5, 0x0a, 0xa1, 0x51, 0x8c, 0xa5, + 0x07, 0xe6, 0xdc, 0xf0, +}; +static const unsigned char kat1060_nonce[] = {0}; +static const unsigned char kat1060_persstr[] = { + 0x55, 0x1b, 0x32, 0x9c, 0xc5, 0x72, 0xec, 0x75, 0x6e, 0x0c, 0xb4, 0xa7, + 0x44, 0x48, 0x8c, 0x3d, 0xcb, 0x81, 0x33, 0x84, 0x7c, 0x6a, 0xa5, 0x74, + 0xd2, 0x38, 0xf2, 0x5f, 0xf9, 0x5d, 0xe8, 0x37, 0x96, 0xa8, 0x00, 0x5c, + 0xb7, 0x8e, 0xe2, 0xc2, +}; +static const unsigned char kat1060_addin0[] = {0}; +static const unsigned char kat1060_addin1[] = {0}; +static const unsigned char kat1060_retbits[] = { + 0xf8, 0x04, 0xf0, 0xc1, 0xaa, 0x78, 0x69, 0xc6, 0x1f, 0x69, 0x20, 0x8b, + 0xfc, 0x04, 0x9c, 0x03, 0xbc, 0xe7, 0xc1, 0x49, 0xc2, 0x86, 0x7f, 0xb9, + 0x66, 0x27, 0x86, 0x0b, 0x70, 0x1c, 0xf1, 0x13, 0xf3, 0xcb, 0x80, 0x19, + 0xf3, 0x63, 0x6e, 0x78, 0xf6, 0x04, 0x56, 0x82, 0x7b, 0xab, 0x49, 0x33, + 0x2b, 0x89, 0x4d, 0xd1, 0x2b, 0x62, 0x53, 0xed, 0x74, 0x16, 0x3d, 0xb5, + 0xb2, 0xbd, 0x55, 0x20, +}; +static const struct drbg_kat_no_reseed kat1060_t = { + 9, kat1060_entropyin, kat1060_nonce, kat1060_persstr, + kat1060_addin0, kat1060_addin1, kat1060_retbits +}; +static const struct drbg_kat kat1060 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1060_t +}; + +static const unsigned char kat1061_entropyin[] = { + 0xdb, 0xbd, 0x85, 0x58, 0x5b, 0x2a, 0x39, 0xe9, 0xc9, 0xe9, 0xaf, 0x9c, + 0x5f, 0xeb, 0x6c, 0x96, 0x48, 0x33, 0xed, 0x2b, 0x93, 0x97, 0x30, 0xa9, + 0xcd, 0x5b, 0x04, 0x35, 0xe5, 0xb2, 0x28, 0xfc, 0x65, 0x50, 0xef, 0x4c, + 0x6e, 0xf1, 0x29, 0x50, +}; +static const unsigned char kat1061_nonce[] = {0}; +static const unsigned char kat1061_persstr[] = { + 0x0a, 0x5e, 0x98, 0x76, 0x46, 0xac, 0x86, 0x7a, 0xa1, 0x20, 0x0d, 0x49, + 0x2c, 0x32, 0x5c, 0x1d, 0xdd, 0x53, 0xb2, 0x0c, 0x4d, 0x05, 0x94, 0x49, + 0x39, 0x79, 0xf8, 0xd4, 0x87, 0xac, 0x2d, 0x7a, 0x1a, 0x8a, 0x1d, 0x7a, + 0x90, 0xc2, 0x95, 0xcc, +}; +static const unsigned char kat1061_addin0[] = {0}; +static const unsigned char kat1061_addin1[] = {0}; +static const unsigned char kat1061_retbits[] = { + 0x9d, 0x38, 0x1a, 0x77, 0xc7, 0x69, 0x1b, 0xad, 0x70, 0xf2, 0x36, 0x93, + 0xc7, 0x1e, 0x68, 0xf7, 0x55, 0x89, 0x02, 0x96, 0xf6, 0xca, 0x78, 0x5b, + 0x0a, 0xd4, 0xdb, 0x3f, 0x14, 0x86, 0x30, 0x9a, 0xe2, 0x1d, 0xb8, 0xfc, + 0x19, 0xab, 0x95, 0x03, 0x66, 0x7d, 0x95, 0x88, 0x86, 0x26, 0x2f, 0x0b, + 0xf2, 0xb2, 0xfe, 0xb7, 0x62, 0x7e, 0xde, 0xf0, 0x3a, 0x6c, 0x20, 0xdc, + 0x83, 0x70, 0x5e, 0x62, +}; +static const struct drbg_kat_no_reseed kat1061_t = { + 10, kat1061_entropyin, kat1061_nonce, kat1061_persstr, + kat1061_addin0, kat1061_addin1, kat1061_retbits +}; +static const struct drbg_kat kat1061 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1061_t +}; + +static const unsigned char kat1062_entropyin[] = { + 0x0d, 0x0d, 0x4a, 0xd1, 0xe1, 0xf7, 0xab, 0x02, 0x7a, 0x81, 0x06, 0xeb, + 0xa4, 0xde, 0x0e, 0x77, 0xa5, 0xbc, 0xe1, 0xb4, 0x3e, 0xe8, 0x65, 0x66, + 0x3e, 0xc2, 0x4a, 0x5b, 0x94, 0xae, 0xf5, 0x8e, 0x85, 0x56, 0xe1, 0x84, + 0x11, 0x0a, 0x76, 0xdd, +}; +static const unsigned char kat1062_nonce[] = {0}; +static const unsigned char kat1062_persstr[] = { + 0x67, 0xda, 0x8f, 0xca, 0x5f, 0x5d, 0x29, 0x08, 0xe8, 0xee, 0x15, 0x64, + 0x7a, 0x86, 0x10, 0x20, 0xdf, 0xfa, 0xd6, 0xfe, 0xe2, 0x15, 0xd3, 0xd5, + 0x28, 0x22, 0xa3, 0xd0, 0xac, 0x3c, 0x59, 0x25, 0x96, 0xa2, 0xad, 0x5d, + 0x7a, 0xf7, 0xd7, 0x58, +}; +static const unsigned char kat1062_addin0[] = {0}; +static const unsigned char kat1062_addin1[] = {0}; +static const unsigned char kat1062_retbits[] = { + 0xa1, 0xd5, 0x17, 0x3b, 0x76, 0x81, 0xb1, 0x01, 0x05, 0x85, 0x3f, 0xc5, + 0xc9, 0xab, 0x0b, 0x8e, 0x44, 0x8e, 0x9c, 0x1c, 0xd8, 0xed, 0x0d, 0x4b, + 0xfb, 0x13, 0x05, 0x73, 0x14, 0x96, 0xde, 0x3c, 0x86, 0x6e, 0x94, 0x69, + 0x25, 0xef, 0x6b, 0x75, 0xaf, 0x12, 0xa0, 0xda, 0xb9, 0xd0, 0x1a, 0x38, + 0x20, 0xe1, 0x40, 0x46, 0xe4, 0x94, 0xbf, 0x07, 0x59, 0x95, 0xd7, 0x49, + 0x02, 0xe2, 0x7b, 0x0d, +}; +static const struct drbg_kat_no_reseed kat1062_t = { + 11, kat1062_entropyin, kat1062_nonce, kat1062_persstr, + kat1062_addin0, kat1062_addin1, kat1062_retbits +}; +static const struct drbg_kat kat1062 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1062_t +}; + +static const unsigned char kat1063_entropyin[] = { + 0xf7, 0x60, 0xc2, 0xe6, 0xa6, 0x23, 0xe1, 0xaa, 0x65, 0xb2, 0xcb, 0xe0, + 0x0c, 0x94, 0xee, 0xd6, 0x13, 0xa9, 0xa4, 0x00, 0x68, 0x40, 0x16, 0x6e, + 0xcb, 0x62, 0xce, 0x75, 0xa0, 0x25, 0x1f, 0x1f, 0x08, 0x78, 0x3c, 0xcf, + 0x63, 0x36, 0x3c, 0xc4, +}; +static const unsigned char kat1063_nonce[] = {0}; +static const unsigned char kat1063_persstr[] = { + 0xb8, 0xe2, 0xf7, 0x17, 0x95, 0x93, 0xe1, 0xf8, 0x3c, 0x43, 0xac, 0x3d, + 0x13, 0x25, 0x21, 0x5a, 0x2c, 0x89, 0x8e, 0x11, 0x93, 0xd9, 0x73, 0x2b, + 0xf4, 0x43, 0xae, 0x4f, 0x10, 0x54, 0x0d, 0x67, 0x60, 0xdf, 0x97, 0x2f, + 0x0d, 0x27, 0x76, 0xde, +}; +static const unsigned char kat1063_addin0[] = {0}; +static const unsigned char kat1063_addin1[] = {0}; +static const unsigned char kat1063_retbits[] = { + 0xf1, 0x8d, 0x00, 0x2b, 0x00, 0xf8, 0x0a, 0xe1, 0x9c, 0xb9, 0x51, 0xab, + 0x42, 0x79, 0xf4, 0x4c, 0x3e, 0xdb, 0xdc, 0xbb, 0xfb, 0xc6, 0x80, 0xa2, + 0x2f, 0x44, 0x19, 0xa8, 0x3c, 0x9c, 0x79, 0xa8, 0x99, 0x7b, 0x6d, 0xe6, + 0x24, 0x62, 0x3e, 0xd6, 0xc8, 0xae, 0x69, 0x24, 0xae, 0x6b, 0xb0, 0xc5, + 0xcd, 0x6e, 0xc5, 0x58, 0xfc, 0xf6, 0x2f, 0x86, 0x99, 0x78, 0x37, 0xde, + 0x52, 0x87, 0x90, 0x0e, +}; +static const struct drbg_kat_no_reseed kat1063_t = { + 12, kat1063_entropyin, kat1063_nonce, kat1063_persstr, + kat1063_addin0, kat1063_addin1, kat1063_retbits +}; +static const struct drbg_kat kat1063 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1063_t +}; + +static const unsigned char kat1064_entropyin[] = { + 0x2c, 0xcd, 0x0d, 0xb7, 0x7c, 0xae, 0xd9, 0x60, 0x7b, 0xab, 0x8d, 0xe9, + 0x01, 0xa1, 0xe8, 0x16, 0x83, 0xd3, 0x6d, 0x00, 0xe1, 0xf8, 0x7d, 0x62, + 0x74, 0xd2, 0x0d, 0x5c, 0x54, 0xde, 0x3f, 0x84, 0x14, 0xa9, 0x96, 0x5c, + 0xde, 0xe9, 0x58, 0x4d, +}; +static const unsigned char kat1064_nonce[] = {0}; +static const unsigned char kat1064_persstr[] = { + 0x6b, 0x5e, 0x48, 0x0c, 0x5b, 0xf7, 0x82, 0xe1, 0x6b, 0x64, 0xbb, 0xa7, + 0x63, 0x83, 0xa2, 0xde, 0x7a, 0xb5, 0x16, 0xba, 0x43, 0xe2, 0x23, 0x58, + 0xa2, 0xeb, 0xba, 0x96, 0x09, 0x72, 0xbb, 0x74, 0xf0, 0x9c, 0x94, 0xc7, + 0xfc, 0x89, 0x3a, 0xa5, +}; +static const unsigned char kat1064_addin0[] = {0}; +static const unsigned char kat1064_addin1[] = {0}; +static const unsigned char kat1064_retbits[] = { + 0x02, 0x75, 0x4b, 0x47, 0x0a, 0x5a, 0xfd, 0x2a, 0x86, 0x00, 0xf8, 0x3c, + 0xd7, 0x1f, 0xd0, 0x88, 0x7b, 0xee, 0xe4, 0x99, 0x67, 0xe5, 0x26, 0x8a, + 0x73, 0xb6, 0x01, 0xb8, 0x89, 0x7f, 0x8e, 0x4f, 0xd8, 0xa6, 0xa0, 0xdb, + 0x3d, 0x5d, 0xdb, 0x62, 0x04, 0xfd, 0xeb, 0x96, 0xcd, 0x18, 0x38, 0x50, + 0x13, 0xc6, 0xe5, 0x0c, 0xd8, 0xbe, 0x40, 0x09, 0xb0, 0x06, 0x29, 0xe2, + 0x08, 0x69, 0xcb, 0xcc, +}; +static const struct drbg_kat_no_reseed kat1064_t = { + 13, kat1064_entropyin, kat1064_nonce, kat1064_persstr, + kat1064_addin0, kat1064_addin1, kat1064_retbits +}; +static const struct drbg_kat kat1064 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1064_t +}; + +static const unsigned char kat1065_entropyin[] = { + 0xa5, 0x9c, 0x31, 0xd7, 0x35, 0x4e, 0xec, 0x79, 0x9e, 0xca, 0xba, 0x81, + 0x93, 0x46, 0x6a, 0xaa, 0x92, 0x80, 0x25, 0xb1, 0x62, 0xff, 0x44, 0x2a, + 0xd2, 0xa4, 0xe0, 0xf9, 0xb6, 0x54, 0x09, 0xf1, 0x05, 0xd7, 0x28, 0xaf, + 0x3a, 0xb4, 0xd5, 0xd2, +}; +static const unsigned char kat1065_nonce[] = {0}; +static const unsigned char kat1065_persstr[] = { + 0x7b, 0x56, 0xfc, 0x01, 0x6f, 0x55, 0xfe, 0x0b, 0xa2, 0x1f, 0x9c, 0xc5, + 0x3b, 0x96, 0x2e, 0x21, 0x5e, 0x4e, 0xcd, 0x3d, 0xff, 0x48, 0x7a, 0xf6, + 0x7b, 0x27, 0x5a, 0x19, 0xcd, 0xe4, 0xaf, 0xa7, 0x47, 0x24, 0xa7, 0x47, + 0x35, 0x8f, 0xd1, 0xfb, +}; +static const unsigned char kat1065_addin0[] = {0}; +static const unsigned char kat1065_addin1[] = {0}; +static const unsigned char kat1065_retbits[] = { + 0xaa, 0xcf, 0xaf, 0x03, 0x60, 0xc4, 0x15, 0xde, 0x87, 0xb9, 0x2d, 0x74, + 0x38, 0x1b, 0xe9, 0x91, 0xf4, 0xa4, 0x1b, 0xdd, 0x61, 0x17, 0x5b, 0xcc, + 0xdd, 0x7c, 0x8d, 0xd1, 0x9c, 0xd3, 0xf7, 0x07, 0x6b, 0x48, 0x5e, 0x95, + 0xb1, 0xe9, 0xae, 0x60, 0xff, 0xb9, 0xb7, 0x78, 0xf6, 0x47, 0x0e, 0x5f, + 0xe3, 0xa5, 0x40, 0x92, 0xc6, 0xdb, 0x3b, 0x90, 0x9a, 0x4d, 0x9e, 0x5a, + 0x8c, 0xb9, 0x6e, 0xf5, +}; +static const struct drbg_kat_no_reseed kat1065_t = { + 14, kat1065_entropyin, kat1065_nonce, kat1065_persstr, + kat1065_addin0, kat1065_addin1, kat1065_retbits +}; +static const struct drbg_kat kat1065 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1065_t +}; + +static const unsigned char kat1066_entropyin[] = { + 0x00, 0xeb, 0x69, 0x04, 0x4b, 0x11, 0x7a, 0xf9, 0x66, 0xbf, 0x5e, 0x17, + 0xdd, 0xaa, 0x19, 0x99, 0x12, 0x07, 0xeb, 0x44, 0xc0, 0xdd, 0xab, 0x7c, + 0x2f, 0x9e, 0x2b, 0x7b, 0x99, 0x32, 0x85, 0x13, 0x0f, 0x43, 0x07, 0x31, + 0xb9, 0xb6, 0x3c, 0x5d, +}; +static const unsigned char kat1066_nonce[] = {0}; +static const unsigned char kat1066_persstr[] = { + 0x9a, 0x98, 0xfa, 0xfa, 0x90, 0xfd, 0xa5, 0x9e, 0xd1, 0xb5, 0x31, 0x27, + 0x30, 0x4b, 0xd1, 0x7b, 0xac, 0x75, 0x44, 0xe0, 0xde, 0x4a, 0x94, 0x75, + 0x3c, 0xcf, 0xda, 0x9c, 0x39, 0xbe, 0x98, 0xbc, 0x62, 0x53, 0x41, 0xdb, + 0x13, 0xe8, 0x6c, 0xd4, +}; +static const unsigned char kat1066_addin0[] = { + 0x8c, 0x2b, 0xa4, 0x0d, 0x88, 0xe9, 0xe3, 0xb5, 0x0b, 0x0d, 0x32, 0x43, + 0xfa, 0x38, 0xc2, 0xc5, 0x64, 0x18, 0x63, 0xaf, 0x44, 0x6f, 0x0a, 0x3b, + 0x94, 0x37, 0x31, 0x9c, 0xdc, 0xcf, 0x16, 0x5c, 0x36, 0x3c, 0x04, 0xcc, + 0x27, 0xbe, 0x27, 0x6e, +}; +static const unsigned char kat1066_addin1[] = { + 0xac, 0x73, 0x35, 0xb5, 0x94, 0x20, 0x85, 0xf0, 0x51, 0x95, 0xd0, 0x16, + 0xff, 0x5c, 0xd5, 0x45, 0xe8, 0x08, 0xb7, 0xe6, 0xf9, 0xfa, 0xed, 0xbe, + 0x8f, 0x64, 0xfa, 0xa1, 0x32, 0xd4, 0xb6, 0x1b, 0xd4, 0xa8, 0xe8, 0xda, + 0xc9, 0x67, 0x01, 0xcc, +}; +static const unsigned char kat1066_retbits[] = { + 0x89, 0x92, 0x83, 0x4d, 0xef, 0xf2, 0xd9, 0xe5, 0x53, 0xc1, 0x02, 0x15, + 0xd3, 0x09, 0x33, 0x24, 0x52, 0x42, 0xa4, 0xb7, 0x06, 0xdf, 0x1a, 0x31, + 0x24, 0xc3, 0x26, 0xce, 0x4a, 0x6b, 0x67, 0xfc, 0x7f, 0xe0, 0xf1, 0xfa, + 0x60, 0xd0, 0x6b, 0x7e, 0xd1, 0xf6, 0x06, 0xd3, 0xb7, 0x93, 0x96, 0xaf, + 0x7d, 0xba, 0xce, 0xef, 0xed, 0x44, 0x06, 0xd7, 0xa8, 0xc3, 0x9a, 0x0b, + 0xbe, 0xc3, 0x9b, 0x2e, +}; +static const struct drbg_kat_no_reseed kat1066_t = { + 0, kat1066_entropyin, kat1066_nonce, kat1066_persstr, + kat1066_addin0, kat1066_addin1, kat1066_retbits +}; +static const struct drbg_kat kat1066 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1066_t +}; + +static const unsigned char kat1067_entropyin[] = { + 0xb2, 0xdd, 0x9f, 0x3e, 0xd9, 0xb8, 0x41, 0xc8, 0xc6, 0x4c, 0x5c, 0x87, + 0x4b, 0x32, 0x61, 0xbe, 0x37, 0x15, 0x74, 0x10, 0xe4, 0xdd, 0x0d, 0x6c, + 0x35, 0xa6, 0x14, 0x20, 0xff, 0x0c, 0x9d, 0x10, 0x1e, 0xf6, 0x31, 0xc6, + 0xf0, 0x01, 0x19, 0x2a, +}; +static const unsigned char kat1067_nonce[] = {0}; +static const unsigned char kat1067_persstr[] = { + 0x58, 0x51, 0x3b, 0x0c, 0xee, 0xe0, 0xb0, 0x46, 0xf1, 0x33, 0x8d, 0x1d, + 0x0c, 0xe4, 0xdb, 0x50, 0x50, 0xb8, 0x8f, 0xca, 0x61, 0xc1, 0xba, 0xe8, + 0xad, 0x8c, 0x4f, 0x4c, 0x5b, 0x2e, 0x1a, 0x17, 0x1a, 0xfd, 0x01, 0x51, + 0x31, 0x78, 0x92, 0xaa, +}; +static const unsigned char kat1067_addin0[] = { + 0x7a, 0x20, 0x63, 0x2a, 0x05, 0x15, 0x53, 0x2c, 0xff, 0xe1, 0x9d, 0x24, + 0xc5, 0x5d, 0xc1, 0x97, 0x4a, 0x33, 0x81, 0x20, 0xf6, 0xd8, 0xef, 0x6a, + 0xd0, 0x3a, 0x1e, 0x11, 0x01, 0x0b, 0x6d, 0x62, 0x34, 0x84, 0x86, 0x79, + 0x39, 0x3c, 0x48, 0x93, +}; +static const unsigned char kat1067_addin1[] = { + 0x1b, 0x6c, 0x55, 0x89, 0xaf, 0xf5, 0x10, 0x2a, 0x14, 0x95, 0xaa, 0x99, + 0x61, 0x10, 0x2b, 0x8d, 0x92, 0x23, 0xa1, 0xa7, 0x96, 0x7d, 0xc0, 0x3b, + 0x53, 0xa4, 0x72, 0x6d, 0x4e, 0x80, 0xe0, 0xdd, 0x91, 0x6a, 0xf9, 0xe8, + 0x5c, 0x3c, 0x27, 0x38, +}; +static const unsigned char kat1067_retbits[] = { + 0x15, 0x15, 0xb9, 0x42, 0xe9, 0x94, 0x03, 0x93, 0xde, 0xd2, 0xa6, 0x4c, + 0x62, 0xec, 0xd8, 0x54, 0x40, 0x78, 0x5a, 0x33, 0xc8, 0x6d, 0x41, 0xfb, + 0xf1, 0xf5, 0x62, 0xcf, 0x51, 0xe0, 0x29, 0xaf, 0x90, 0x7a, 0xd4, 0xd8, + 0xa7, 0x51, 0x4a, 0x2b, 0x7e, 0x2e, 0x9a, 0x39, 0xaa, 0xdc, 0xda, 0x05, + 0xd2, 0x1f, 0x05, 0x6f, 0xef, 0xed, 0xaa, 0x4a, 0x3a, 0xa2, 0xd4, 0x50, + 0x39, 0xe9, 0xdd, 0xc7, +}; +static const struct drbg_kat_no_reseed kat1067_t = { + 1, kat1067_entropyin, kat1067_nonce, kat1067_persstr, + kat1067_addin0, kat1067_addin1, kat1067_retbits +}; +static const struct drbg_kat kat1067 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1067_t +}; + +static const unsigned char kat1068_entropyin[] = { + 0xb2, 0x59, 0xae, 0x09, 0xd2, 0x56, 0xb2, 0x80, 0xdb, 0x49, 0x59, 0xf9, + 0x04, 0x18, 0x68, 0x36, 0x1b, 0x1e, 0x1c, 0xa6, 0xed, 0xf0, 0xa6, 0x7d, + 0xb0, 0x55, 0x12, 0x13, 0xa3, 0x5c, 0xb0, 0x33, 0x30, 0x4d, 0xe1, 0x93, + 0x4e, 0xb4, 0xcf, 0x96, +}; +static const unsigned char kat1068_nonce[] = {0}; +static const unsigned char kat1068_persstr[] = { + 0xa7, 0x78, 0x5c, 0xba, 0xbc, 0x0d, 0x43, 0x20, 0x78, 0x98, 0x66, 0xaa, + 0xc2, 0x9c, 0x2b, 0xfa, 0x36, 0xa0, 0x09, 0x5d, 0x07, 0x2c, 0xc5, 0xba, + 0xdd, 0x01, 0x9e, 0xe3, 0x43, 0x3c, 0x42, 0x6d, 0x4d, 0x25, 0x08, 0x96, + 0x0a, 0x08, 0x91, 0xd1, +}; +static const unsigned char kat1068_addin0[] = { + 0x95, 0xce, 0xa7, 0x1d, 0x06, 0xaa, 0x28, 0x9f, 0x77, 0x5f, 0xe3, 0x8d, + 0xd4, 0x36, 0xd3, 0x25, 0x12, 0x0d, 0x7d, 0x0f, 0x5f, 0xa3, 0x68, 0x38, + 0x0f, 0x75, 0xec, 0xfa, 0x5d, 0x53, 0xda, 0x0f, 0x8f, 0x12, 0x4d, 0x91, + 0x2f, 0x0f, 0x2f, 0x11, +}; +static const unsigned char kat1068_addin1[] = { + 0xa3, 0xee, 0xde, 0x21, 0xcc, 0x35, 0xde, 0xaa, 0xbb, 0x90, 0x18, 0xb4, + 0x62, 0x2d, 0xe9, 0x25, 0xb6, 0xdd, 0xc6, 0x83, 0x00, 0xd6, 0x0c, 0x6c, + 0x8a, 0x63, 0x0a, 0x77, 0x99, 0x3a, 0x2d, 0x03, 0xa6, 0x39, 0x18, 0x24, + 0x99, 0x25, 0x6d, 0x3e, +}; +static const unsigned char kat1068_retbits[] = { + 0xf9, 0x9d, 0xc7, 0xfe, 0xfe, 0x1d, 0xe4, 0xa5, 0xa2, 0x2a, 0x59, 0x28, + 0x5e, 0x93, 0x98, 0x74, 0xd6, 0x60, 0xe3, 0x5a, 0x16, 0x81, 0x90, 0xe2, + 0x7b, 0x51, 0xb2, 0x1e, 0x32, 0xb7, 0x13, 0xad, 0x3c, 0xbc, 0x07, 0x56, + 0x2c, 0x91, 0xb3, 0x88, 0xae, 0x2f, 0xa5, 0x37, 0x3b, 0xde, 0x74, 0xad, + 0x30, 0x3b, 0xf6, 0x16, 0xb0, 0xfc, 0x80, 0x07, 0x0a, 0x71, 0xc7, 0xf0, + 0xc4, 0xdb, 0x2e, 0xf1, +}; +static const struct drbg_kat_no_reseed kat1068_t = { + 2, kat1068_entropyin, kat1068_nonce, kat1068_persstr, + kat1068_addin0, kat1068_addin1, kat1068_retbits +}; +static const struct drbg_kat kat1068 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1068_t +}; + +static const unsigned char kat1069_entropyin[] = { + 0x95, 0xa9, 0xa0, 0x00, 0x6f, 0x67, 0x5c, 0x6b, 0xd8, 0x34, 0x7b, 0x37, + 0x18, 0x96, 0x7a, 0xee, 0xa9, 0x14, 0x3c, 0x0f, 0xd5, 0xa5, 0x6d, 0x1d, + 0x02, 0xc3, 0x6b, 0x28, 0x03, 0x3e, 0x12, 0x29, 0x40, 0xc6, 0x16, 0xa4, + 0x2d, 0xa0, 0x30, 0xf0, +}; +static const unsigned char kat1069_nonce[] = {0}; +static const unsigned char kat1069_persstr[] = { + 0xc3, 0x2d, 0x10, 0x8e, 0x80, 0xcc, 0x7c, 0xd1, 0x5e, 0x28, 0xf6, 0xae, + 0xd9, 0x62, 0x97, 0x2d, 0x50, 0x70, 0xbb, 0xe3, 0x3a, 0x04, 0xdb, 0xe8, + 0x2b, 0xdd, 0xb3, 0xc0, 0x34, 0xf3, 0xe3, 0x39, 0x6b, 0x49, 0xea, 0x69, + 0xdb, 0x6c, 0x26, 0xe7, +}; +static const unsigned char kat1069_addin0[] = { + 0xed, 0x32, 0x9f, 0x12, 0xd6, 0xef, 0xb8, 0x0f, 0xc5, 0xc9, 0x2e, 0x86, + 0x67, 0x4a, 0x7c, 0x75, 0x7b, 0x6f, 0xad, 0x21, 0x76, 0x03, 0x2e, 0x88, + 0xe6, 0x42, 0xd8, 0x4b, 0x60, 0x6a, 0x29, 0x66, 0xa5, 0x35, 0x1e, 0x3d, + 0x54, 0x02, 0x01, 0x2b, +}; +static const unsigned char kat1069_addin1[] = { + 0x6d, 0x7d, 0x5f, 0x88, 0x5d, 0x89, 0x52, 0xe7, 0x7b, 0x67, 0xe5, 0x31, + 0x05, 0xa7, 0x4c, 0x2f, 0xc3, 0xd9, 0xa3, 0x8d, 0x64, 0x15, 0x36, 0xb1, + 0xc2, 0x45, 0x09, 0x4b, 0x5b, 0x5f, 0xc3, 0x7c, 0xe5, 0xe1, 0xb9, 0x23, + 0xd4, 0x80, 0x31, 0xb0, +}; +static const unsigned char kat1069_retbits[] = { + 0xb4, 0x8a, 0x8c, 0xf1, 0x7a, 0x69, 0x26, 0xdd, 0x20, 0xf7, 0xb0, 0xbe, + 0xa0, 0x6e, 0xaf, 0xcd, 0x5d, 0x3c, 0x4d, 0x96, 0x1b, 0x6c, 0xdc, 0xe9, + 0xb4, 0x93, 0xd6, 0x6b, 0xfd, 0x33, 0x1d, 0x95, 0x2f, 0x23, 0xbc, 0xc4, + 0x84, 0x6e, 0x63, 0x94, 0xae, 0x1b, 0xc0, 0xbc, 0x18, 0x3b, 0xcc, 0x2d, + 0xce, 0xf2, 0x5d, 0x93, 0x61, 0x0b, 0x33, 0xa1, 0x92, 0xff, 0x0e, 0xeb, + 0x88, 0x5a, 0x5a, 0x64, +}; +static const struct drbg_kat_no_reseed kat1069_t = { + 3, kat1069_entropyin, kat1069_nonce, kat1069_persstr, + kat1069_addin0, kat1069_addin1, kat1069_retbits +}; +static const struct drbg_kat kat1069 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1069_t +}; + +static const unsigned char kat1070_entropyin[] = { + 0x3f, 0x90, 0xce, 0x94, 0xad, 0xa9, 0x34, 0xc8, 0x3f, 0x6c, 0x6e, 0xab, + 0x8c, 0x0e, 0xef, 0x4b, 0xe3, 0x45, 0x6b, 0xb6, 0x75, 0xf1, 0xc8, 0x35, + 0x96, 0x4e, 0x2b, 0x80, 0x8f, 0x54, 0x17, 0x80, 0x66, 0xf7, 0xf3, 0xaa, + 0x0f, 0x79, 0x9b, 0x0d, +}; +static const unsigned char kat1070_nonce[] = {0}; +static const unsigned char kat1070_persstr[] = { + 0xeb, 0x0f, 0x54, 0xf5, 0xfb, 0x20, 0x6f, 0xa2, 0x0d, 0xd0, 0x1c, 0xf2, + 0x14, 0x0a, 0x93, 0x14, 0xff, 0x91, 0xec, 0x1c, 0x1b, 0xc0, 0x31, 0xe3, + 0x9c, 0xbd, 0xbf, 0x8d, 0x15, 0xef, 0x3d, 0x3d, 0x9c, 0x7f, 0xd7, 0xe2, + 0x5c, 0x35, 0x5c, 0x91, +}; +static const unsigned char kat1070_addin0[] = { + 0xda, 0x10, 0x32, 0x97, 0x8b, 0xd1, 0x82, 0x39, 0x2d, 0x75, 0xef, 0x8e, + 0x30, 0x1b, 0x37, 0xd3, 0x72, 0xd9, 0xf9, 0x63, 0xaa, 0x5a, 0xa2, 0x91, + 0xda, 0xc9, 0x41, 0xb3, 0x78, 0x53, 0xe8, 0xd4, 0x26, 0xe7, 0x40, 0x16, + 0xb5, 0x79, 0x5a, 0x1e, +}; +static const unsigned char kat1070_addin1[] = { + 0xd9, 0x75, 0xef, 0x40, 0x49, 0x1f, 0x48, 0x47, 0x04, 0x18, 0x74, 0xb0, + 0x24, 0x82, 0x74, 0x55, 0x61, 0x82, 0x57, 0xb9, 0x70, 0x48, 0x9f, 0x97, + 0x2b, 0x24, 0x31, 0x44, 0x50, 0xf7, 0x3a, 0xc4, 0x69, 0x97, 0xa4, 0x46, + 0x71, 0x33, 0xaa, 0x53, +}; +static const unsigned char kat1070_retbits[] = { + 0x93, 0x23, 0x0b, 0xd7, 0xf0, 0x45, 0x38, 0x45, 0x62, 0x27, 0x8f, 0x63, + 0xfd, 0xde, 0x51, 0xaa, 0xcc, 0xa0, 0x71, 0x3a, 0x84, 0x45, 0xcf, 0xb6, + 0x41, 0x75, 0x1f, 0x1e, 0x68, 0x9d, 0x4e, 0x35, 0x3d, 0xa2, 0xaf, 0x1a, + 0xad, 0xc4, 0x7a, 0x1a, 0x83, 0x3f, 0x0b, 0x44, 0xc8, 0x00, 0xc6, 0x55, + 0x2d, 0xe1, 0x8a, 0xfe, 0xb1, 0xbf, 0xd4, 0x84, 0xbb, 0x80, 0xd3, 0xc2, + 0x5e, 0x4b, 0x5c, 0x38, +}; +static const struct drbg_kat_no_reseed kat1070_t = { + 4, kat1070_entropyin, kat1070_nonce, kat1070_persstr, + kat1070_addin0, kat1070_addin1, kat1070_retbits +}; +static const struct drbg_kat kat1070 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1070_t +}; + +static const unsigned char kat1071_entropyin[] = { + 0x36, 0x59, 0x47, 0xb9, 0x4c, 0xe4, 0xf5, 0x6c, 0x58, 0x42, 0x2b, 0xb3, + 0x13, 0x50, 0x11, 0x1b, 0x4c, 0xaa, 0xf7, 0x87, 0xf7, 0x7c, 0x6e, 0xbe, + 0x46, 0xd3, 0x97, 0x87, 0x23, 0x13, 0x3c, 0xdc, 0x36, 0x34, 0xe5, 0xa8, + 0xcd, 0xfc, 0x21, 0x1f, +}; +static const unsigned char kat1071_nonce[] = {0}; +static const unsigned char kat1071_persstr[] = { + 0xc2, 0xaa, 0x05, 0x24, 0xbe, 0xca, 0x81, 0x71, 0xa1, 0xd0, 0x80, 0xfa, + 0xc6, 0xb8, 0xbe, 0x00, 0xc9, 0x2e, 0x38, 0xce, 0x7c, 0xc7, 0x5d, 0x66, + 0x21, 0x7c, 0x13, 0x8e, 0xdd, 0x7f, 0xca, 0xe6, 0x6d, 0x93, 0x50, 0x29, + 0xf2, 0x07, 0x21, 0xa3, +}; +static const unsigned char kat1071_addin0[] = { + 0xb1, 0x05, 0xfe, 0x49, 0xec, 0x71, 0xef, 0x6f, 0x80, 0x86, 0xff, 0xef, + 0xb1, 0xed, 0x37, 0x0c, 0xa1, 0x7f, 0xdc, 0x2a, 0xaf, 0xc7, 0xd2, 0xf1, + 0xdd, 0xb1, 0x05, 0x84, 0x68, 0xb7, 0x51, 0x05, 0x27, 0xa9, 0xc1, 0x89, + 0x69, 0x5d, 0xce, 0x82, +}; +static const unsigned char kat1071_addin1[] = { + 0x5b, 0x62, 0xb2, 0xb7, 0xf9, 0x88, 0x70, 0xa6, 0xf0, 0xfc, 0x56, 0x73, + 0x2f, 0xcf, 0x45, 0xb2, 0xb3, 0x4d, 0xa2, 0x08, 0x3b, 0x03, 0x7c, 0x87, + 0xed, 0xce, 0xd1, 0xa0, 0xbc, 0x57, 0xef, 0xfb, 0x5c, 0xa6, 0x06, 0x2b, + 0x0a, 0x84, 0xfb, 0xf5, +}; +static const unsigned char kat1071_retbits[] = { + 0xc3, 0x32, 0xf5, 0x7c, 0x3b, 0x0b, 0x83, 0x24, 0xf8, 0x0f, 0xe9, 0xd1, + 0x73, 0xb2, 0x6f, 0x96, 0x9b, 0xd4, 0xdd, 0xde, 0x8e, 0x15, 0xfd, 0xca, + 0xbc, 0x7d, 0x2c, 0xf3, 0x6f, 0xac, 0x23, 0x9b, 0x42, 0xd8, 0x95, 0xe8, + 0xb5, 0xa9, 0xad, 0x46, 0x24, 0xec, 0x62, 0xd1, 0x4c, 0xdd, 0x08, 0xf4, + 0x73, 0x8a, 0xe1, 0x86, 0x36, 0x1d, 0x2e, 0xad, 0x37, 0x6e, 0xe1, 0xb0, + 0x64, 0xba, 0xdb, 0x87, +}; +static const struct drbg_kat_no_reseed kat1071_t = { + 5, kat1071_entropyin, kat1071_nonce, kat1071_persstr, + kat1071_addin0, kat1071_addin1, kat1071_retbits +}; +static const struct drbg_kat kat1071 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1071_t +}; + +static const unsigned char kat1072_entropyin[] = { + 0x36, 0x12, 0x18, 0x2e, 0x7d, 0x2e, 0xf2, 0x9e, 0xc8, 0x28, 0x38, 0x95, + 0x72, 0xc3, 0x00, 0xb9, 0xee, 0x2c, 0xed, 0x58, 0x84, 0xba, 0x8f, 0x8b, + 0x41, 0xaf, 0x05, 0x1e, 0x9e, 0xec, 0x40, 0xbe, 0xf8, 0xe3, 0xbf, 0x07, + 0x93, 0xa5, 0x3b, 0xc9, +}; +static const unsigned char kat1072_nonce[] = {0}; +static const unsigned char kat1072_persstr[] = { + 0x5c, 0xeb, 0xa7, 0x00, 0xfe, 0x74, 0xbc, 0xbf, 0x68, 0xf3, 0xdb, 0xe7, + 0xd6, 0xc4, 0x2c, 0xa1, 0x77, 0x8e, 0x17, 0x45, 0xf3, 0xa6, 0x8d, 0x4c, + 0x0f, 0x52, 0xf9, 0x49, 0x86, 0x81, 0xe9, 0x32, 0x8b, 0xc5, 0x7f, 0x76, + 0xf3, 0xbe, 0xce, 0xb0, +}; +static const unsigned char kat1072_addin0[] = { + 0xc2, 0xf4, 0x7a, 0x66, 0x09, 0x0b, 0x08, 0x77, 0xee, 0xb4, 0x7d, 0x45, + 0xe0, 0x6b, 0x13, 0x99, 0xd2, 0xbd, 0xa0, 0x1f, 0xc2, 0xbe, 0x9d, 0xdc, + 0x25, 0x08, 0x27, 0x1d, 0x73, 0x9b, 0x9e, 0x29, 0xbc, 0xb5, 0xa8, 0xaf, + 0xff, 0x16, 0xaf, 0x19, +}; +static const unsigned char kat1072_addin1[] = { + 0x8d, 0x5b, 0x75, 0x47, 0x90, 0xb3, 0x97, 0x94, 0x23, 0x07, 0x5e, 0xd7, + 0x10, 0x43, 0x37, 0x07, 0xaa, 0x88, 0x76, 0x4b, 0x60, 0xd1, 0x06, 0x24, + 0x3a, 0x40, 0x73, 0x95, 0xa6, 0xc5, 0x9a, 0xd9, 0xd0, 0x01, 0x6b, 0x94, + 0xd3, 0xc2, 0x3b, 0xfe, +}; +static const unsigned char kat1072_retbits[] = { + 0x6b, 0x1c, 0x41, 0x1a, 0x29, 0x39, 0x33, 0x01, 0xd7, 0x30, 0x53, 0x3f, + 0xf5, 0x35, 0x90, 0xdc, 0x68, 0x4f, 0x81, 0xbd, 0x04, 0x42, 0x8f, 0x3d, + 0x26, 0x5e, 0xab, 0xc2, 0x39, 0x41, 0x25, 0x4a, 0x7d, 0x6a, 0xae, 0x85, + 0x85, 0x82, 0x2e, 0x5a, 0xd1, 0xa4, 0xa8, 0xac, 0x97, 0xe7, 0x90, 0xb7, + 0x15, 0x2c, 0x66, 0xd2, 0xd0, 0x3d, 0xb6, 0xef, 0xc9, 0x91, 0x16, 0xca, + 0x46, 0x72, 0xac, 0x8b, +}; +static const struct drbg_kat_no_reseed kat1072_t = { + 6, kat1072_entropyin, kat1072_nonce, kat1072_persstr, + kat1072_addin0, kat1072_addin1, kat1072_retbits +}; +static const struct drbg_kat kat1072 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1072_t +}; + +static const unsigned char kat1073_entropyin[] = { + 0x1d, 0x5f, 0x82, 0x35, 0x53, 0xf1, 0x0d, 0xdf, 0x2b, 0x62, 0x5e, 0xed, + 0x6d, 0xea, 0x76, 0xd0, 0x6b, 0xa8, 0xc9, 0x19, 0xe1, 0x8d, 0x25, 0x0f, + 0xe4, 0xf1, 0xe2, 0xd6, 0x24, 0xc3, 0xd9, 0xaf, 0x8a, 0x3e, 0xfb, 0xce, + 0x08, 0xa1, 0x1f, 0xde, +}; +static const unsigned char kat1073_nonce[] = {0}; +static const unsigned char kat1073_persstr[] = { + 0xba, 0xe1, 0x50, 0xd1, 0xc0, 0x59, 0xef, 0x31, 0x4f, 0x47, 0x81, 0x90, + 0xfd, 0x84, 0x78, 0xa7, 0xd2, 0xb8, 0xec, 0xbd, 0x74, 0xfd, 0x48, 0x0a, + 0x50, 0xe3, 0x51, 0x12, 0x97, 0x57, 0x86, 0x4a, 0xf8, 0x27, 0x31, 0x8a, + 0xf8, 0x92, 0xe6, 0xc2, +}; +static const unsigned char kat1073_addin0[] = { + 0x46, 0xc4, 0x28, 0xb8, 0xf3, 0xd6, 0x62, 0xbd, 0x73, 0xe8, 0x08, 0x9a, + 0xcc, 0x48, 0x09, 0x7d, 0x0d, 0xe2, 0xe2, 0x07, 0x02, 0x6c, 0x44, 0xc4, + 0x21, 0x7c, 0x3b, 0x46, 0xc5, 0x4e, 0x83, 0xa8, 0xd2, 0xd3, 0x57, 0x64, + 0x21, 0xc3, 0x13, 0x2a, +}; +static const unsigned char kat1073_addin1[] = { + 0xd0, 0xad, 0x82, 0x21, 0xe9, 0xc3, 0x8d, 0xb6, 0x0b, 0x06, 0x35, 0x2b, + 0x77, 0xee, 0xe4, 0xd4, 0x94, 0x72, 0xe6, 0x75, 0x3c, 0xfb, 0x35, 0x87, + 0x42, 0xbf, 0xb0, 0xb9, 0xd1, 0x3e, 0xba, 0xb4, 0x63, 0x7d, 0xc3, 0x55, + 0xdb, 0x8c, 0x14, 0x7e, +}; +static const unsigned char kat1073_retbits[] = { + 0x6b, 0x91, 0x92, 0x3f, 0x9c, 0xa4, 0x95, 0xef, 0xec, 0x6d, 0xc8, 0xdd, + 0xe0, 0x16, 0x3f, 0x05, 0x11, 0xb0, 0x74, 0xde, 0x76, 0x6c, 0x44, 0xf3, + 0x88, 0xa8, 0x29, 0xd5, 0x06, 0xc0, 0xb3, 0x1b, 0x4e, 0x09, 0x70, 0x40, + 0x86, 0xc3, 0x13, 0x82, 0xe7, 0xb7, 0x0c, 0xff, 0xd9, 0x42, 0xe5, 0x6a, + 0x82, 0xb6, 0xaa, 0x34, 0x3b, 0x44, 0x09, 0x49, 0x8b, 0xae, 0xde, 0x18, + 0x6a, 0x76, 0x65, 0xe1, +}; +static const struct drbg_kat_no_reseed kat1073_t = { + 7, kat1073_entropyin, kat1073_nonce, kat1073_persstr, + kat1073_addin0, kat1073_addin1, kat1073_retbits +}; +static const struct drbg_kat kat1073 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1073_t +}; + +static const unsigned char kat1074_entropyin[] = { + 0xed, 0x61, 0x66, 0x1a, 0xb1, 0x3f, 0xec, 0x20, 0x02, 0x15, 0x6f, 0x23, + 0x9c, 0x96, 0x2c, 0x03, 0x84, 0x4e, 0xc2, 0x1c, 0x25, 0x2a, 0x13, 0xf7, + 0x88, 0xd4, 0xc8, 0x5e, 0xa7, 0xea, 0x5f, 0x2c, 0x87, 0xc7, 0x6a, 0x72, + 0x7f, 0x77, 0x63, 0x0e, +}; +static const unsigned char kat1074_nonce[] = {0}; +static const unsigned char kat1074_persstr[] = { + 0x06, 0x45, 0x43, 0x54, 0x5e, 0x7f, 0x8f, 0x15, 0x3c, 0xbc, 0xd0, 0x86, + 0x3e, 0xde, 0x5c, 0x9c, 0xe7, 0x90, 0x87, 0xd6, 0xcc, 0x0e, 0x4c, 0x20, + 0xd5, 0xea, 0x42, 0x74, 0x9f, 0x75, 0x64, 0x44, 0x9a, 0xfc, 0x33, 0xd8, + 0xca, 0xa1, 0xc4, 0x64, +}; +static const unsigned char kat1074_addin0[] = { + 0x87, 0x8a, 0xae, 0xc1, 0x6a, 0xb0, 0x97, 0x45, 0x47, 0xaa, 0xa0, 0x9a, + 0xde, 0xb3, 0xac, 0x16, 0xea, 0x5e, 0x92, 0x43, 0x08, 0xf8, 0x29, 0x9c, + 0x4f, 0x14, 0xcb, 0x47, 0xf3, 0x5f, 0x1d, 0x1a, 0x24, 0xd9, 0xe2, 0x54, + 0x6c, 0x52, 0x64, 0xe1, +}; +static const unsigned char kat1074_addin1[] = { + 0xa7, 0xa2, 0x08, 0x62, 0x4c, 0x9a, 0x69, 0xd5, 0x16, 0xd2, 0x71, 0xa9, + 0xd1, 0x18, 0x91, 0xc6, 0xc3, 0x5e, 0x89, 0x2a, 0x7b, 0xdf, 0x7b, 0xe3, + 0xce, 0xbc, 0x18, 0x01, 0x24, 0x19, 0x0b, 0x4a, 0xe7, 0xb2, 0xfc, 0x89, + 0xca, 0x86, 0xc7, 0x56, +}; +static const unsigned char kat1074_retbits[] = { + 0x22, 0x01, 0x98, 0x87, 0x5b, 0x6d, 0x81, 0x22, 0xc2, 0xaa, 0xbd, 0xc7, + 0x5f, 0x02, 0x9f, 0x12, 0xb8, 0xa6, 0x77, 0x0f, 0xf0, 0x34, 0x5d, 0xc7, + 0x44, 0x92, 0xb5, 0x1b, 0xd2, 0x42, 0xf9, 0x88, 0xd9, 0x65, 0xc7, 0x87, + 0xc2, 0x40, 0xbb, 0x1e, 0x59, 0x63, 0x25, 0x2c, 0xaf, 0xcc, 0xc8, 0x6f, + 0x93, 0x20, 0x8b, 0x50, 0x99, 0x87, 0x9d, 0x1a, 0x56, 0x52, 0xc2, 0x1f, + 0xf9, 0xfe, 0x2f, 0x7c, +}; +static const struct drbg_kat_no_reseed kat1074_t = { + 8, kat1074_entropyin, kat1074_nonce, kat1074_persstr, + kat1074_addin0, kat1074_addin1, kat1074_retbits +}; +static const struct drbg_kat kat1074 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1074_t +}; + +static const unsigned char kat1075_entropyin[] = { + 0x47, 0xa3, 0xcd, 0xd7, 0x35, 0x77, 0xb4, 0xe7, 0xa7, 0x27, 0x46, 0x27, + 0x7e, 0x4e, 0x64, 0xab, 0xea, 0x20, 0xde, 0x39, 0x62, 0x25, 0xa0, 0x6b, + 0x0a, 0xa3, 0x9f, 0xaa, 0x66, 0x35, 0x6d, 0x34, 0xa9, 0xa6, 0x16, 0x25, + 0x15, 0x9d, 0x4f, 0x5f, +}; +static const unsigned char kat1075_nonce[] = {0}; +static const unsigned char kat1075_persstr[] = { + 0x2a, 0xba, 0x79, 0x72, 0x88, 0x06, 0xa9, 0xc2, 0x2b, 0x56, 0xa2, 0x58, + 0x9a, 0x2f, 0xfb, 0x6f, 0x9c, 0xeb, 0x0f, 0xa0, 0x3c, 0x5c, 0xf5, 0x2b, + 0x42, 0x8f, 0xe9, 0x71, 0x42, 0x38, 0x83, 0xdc, 0x29, 0x65, 0xe9, 0xfc, + 0x78, 0xb6, 0x42, 0xe2, +}; +static const unsigned char kat1075_addin0[] = { + 0x50, 0x0f, 0x92, 0xf4, 0xcb, 0x0d, 0x38, 0xb9, 0xc9, 0x52, 0x8c, 0xad, + 0x5f, 0xa2, 0x28, 0x03, 0x73, 0x0e, 0x9f, 0xc6, 0xfe, 0xa9, 0xf2, 0xa6, + 0xa7, 0xd1, 0xfd, 0x42, 0x51, 0xe9, 0x97, 0x47, 0x6e, 0xbd, 0x4a, 0xe4, + 0x52, 0xd8, 0x35, 0x16, +}; +static const unsigned char kat1075_addin1[] = { + 0xb9, 0xfe, 0x2c, 0x2a, 0xce, 0x55, 0x71, 0x42, 0x6b, 0xe7, 0x96, 0x2a, + 0x81, 0x90, 0x74, 0xbb, 0xbf, 0x91, 0xfd, 0xe2, 0xcc, 0x12, 0x16, 0xec, + 0xbc, 0x08, 0xe1, 0x64, 0xd9, 0x86, 0x62, 0x4d, 0x3d, 0x53, 0xdd, 0x50, + 0x95, 0x31, 0x98, 0x52, +}; +static const unsigned char kat1075_retbits[] = { + 0x2e, 0x42, 0x79, 0x19, 0xb4, 0xc0, 0x40, 0x32, 0x77, 0xc2, 0xc0, 0xe5, + 0x32, 0x37, 0x5b, 0x82, 0x6c, 0xe3, 0x64, 0xbe, 0x00, 0xca, 0xd2, 0x39, + 0x1e, 0xab, 0xdf, 0x8e, 0xac, 0xb5, 0x98, 0x2c, 0x49, 0xa3, 0x3e, 0x69, + 0xda, 0x49, 0x85, 0xaa, 0x80, 0xf6, 0xf2, 0xe4, 0xf3, 0x7d, 0xca, 0x3f, + 0x3d, 0xe1, 0xb4, 0x3b, 0x0f, 0x73, 0xea, 0xe7, 0xee, 0x65, 0xa1, 0x06, + 0x53, 0xaf, 0x33, 0xac, +}; +static const struct drbg_kat_no_reseed kat1075_t = { + 9, kat1075_entropyin, kat1075_nonce, kat1075_persstr, + kat1075_addin0, kat1075_addin1, kat1075_retbits +}; +static const struct drbg_kat kat1075 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1075_t +}; + +static const unsigned char kat1076_entropyin[] = { + 0x45, 0x5a, 0xa0, 0x04, 0xe9, 0x22, 0x4e, 0xaa, 0x70, 0x0b, 0xef, 0xee, + 0xe5, 0x2f, 0x6a, 0x7b, 0x1a, 0x1d, 0xf7, 0x9b, 0x0b, 0xb2, 0x1b, 0x7a, + 0x71, 0xd3, 0xc5, 0x32, 0xc3, 0x7d, 0xd7, 0x1b, 0x14, 0x35, 0xd9, 0x07, + 0x6a, 0x49, 0x17, 0x95, +}; +static const unsigned char kat1076_nonce[] = {0}; +static const unsigned char kat1076_persstr[] = { + 0x78, 0x06, 0xdc, 0x9b, 0x9c, 0xec, 0xbc, 0xa2, 0xeb, 0x7a, 0x8f, 0xc1, + 0x9a, 0xb5, 0x39, 0x63, 0x58, 0x6e, 0x70, 0xaf, 0x48, 0x72, 0xee, 0x5c, + 0x39, 0x24, 0x98, 0xba, 0x86, 0x9a, 0xdd, 0xdf, 0xec, 0x44, 0xc0, 0xe4, + 0x2b, 0xc4, 0xe6, 0x0a, +}; +static const unsigned char kat1076_addin0[] = { + 0x28, 0xac, 0x9b, 0x8e, 0x22, 0x73, 0x55, 0x6c, 0xab, 0x94, 0xff, 0x66, + 0x5a, 0x3c, 0xf0, 0x60, 0xd4, 0x7f, 0xe9, 0x40, 0x63, 0xb7, 0x6b, 0xaf, + 0xde, 0xfa, 0x44, 0x8c, 0x71, 0xba, 0x18, 0x0f, 0xb7, 0x37, 0xb3, 0x05, + 0x9e, 0xad, 0x3f, 0xca, +}; +static const unsigned char kat1076_addin1[] = { + 0x61, 0xf8, 0x1f, 0x1f, 0x2a, 0xb6, 0xdb, 0x27, 0xf2, 0xe7, 0x9f, 0xfb, + 0xc2, 0x47, 0xe3, 0xfb, 0x39, 0x4a, 0x54, 0xff, 0x2e, 0x44, 0x86, 0xe1, + 0x6b, 0x03, 0xd5, 0x78, 0xbb, 0xf9, 0xc5, 0xc9, 0x74, 0x00, 0x21, 0x52, + 0x1b, 0x59, 0xdd, 0x0d, +}; +static const unsigned char kat1076_retbits[] = { + 0xab, 0xf4, 0xd8, 0x28, 0x71, 0xe2, 0xa9, 0xd5, 0xd2, 0xf7, 0xdb, 0x1b, + 0xe6, 0xb2, 0xa1, 0xf2, 0x3c, 0x65, 0x17, 0x91, 0xd8, 0x73, 0x1c, 0xef, + 0x4d, 0x10, 0x5c, 0x29, 0x33, 0x86, 0x2f, 0x16, 0x16, 0xe1, 0x95, 0x16, + 0x61, 0x37, 0xb1, 0x4b, 0x0b, 0xde, 0xc9, 0x3e, 0xe2, 0x98, 0x8d, 0xac, + 0x89, 0xe0, 0xcd, 0x5a, 0x79, 0xea, 0x7e, 0x0e, 0xa3, 0xbe, 0xe7, 0x0a, + 0xa0, 0xc0, 0xc1, 0xf7, +}; +static const struct drbg_kat_no_reseed kat1076_t = { + 10, kat1076_entropyin, kat1076_nonce, kat1076_persstr, + kat1076_addin0, kat1076_addin1, kat1076_retbits +}; +static const struct drbg_kat kat1076 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1076_t +}; + +static const unsigned char kat1077_entropyin[] = { + 0xaa, 0x12, 0x44, 0x80, 0x5e, 0x22, 0x6d, 0x9b, 0xb4, 0xf0, 0x8c, 0xc6, + 0x8d, 0x5a, 0x82, 0x07, 0x48, 0x08, 0xee, 0x5b, 0x71, 0x8e, 0xdc, 0x65, + 0x64, 0x37, 0x65, 0x48, 0x81, 0x7a, 0x12, 0x80, 0x13, 0x24, 0xfb, 0x9d, + 0x48, 0xf9, 0x50, 0xb3, +}; +static const unsigned char kat1077_nonce[] = {0}; +static const unsigned char kat1077_persstr[] = { + 0xd0, 0x82, 0xe8, 0xd5, 0x76, 0x6d, 0x36, 0x95, 0x7a, 0x3f, 0x2f, 0x7e, + 0xbe, 0x16, 0x6c, 0x12, 0x31, 0x5a, 0x28, 0xe5, 0x6d, 0xff, 0xb8, 0xd2, + 0xb4, 0xc8, 0x6a, 0xb2, 0x43, 0x9c, 0x23, 0xf4, 0xb7, 0xb0, 0x99, 0x12, + 0x48, 0xcc, 0xaf, 0xdf, +}; +static const unsigned char kat1077_addin0[] = { + 0x63, 0xfc, 0xfe, 0x9a, 0x28, 0x6c, 0x7e, 0xfa, 0xd0, 0x8e, 0x02, 0x1c, + 0x03, 0x3a, 0x67, 0x84, 0xa8, 0x92, 0x55, 0xf7, 0x6f, 0x3e, 0x41, 0xd2, + 0x3c, 0xb0, 0xcf, 0x15, 0xb4, 0x33, 0x47, 0xa8, 0xa1, 0xae, 0x95, 0x3c, + 0x07, 0xbb, 0x68, 0x30, +}; +static const unsigned char kat1077_addin1[] = { + 0xf6, 0xa8, 0xa7, 0xc5, 0x70, 0x73, 0xd2, 0x89, 0x95, 0xc3, 0x41, 0x2f, + 0xce, 0x59, 0x7c, 0x67, 0xca, 0xa8, 0xc8, 0xc0, 0x73, 0x45, 0xbd, 0x5e, + 0x42, 0xb9, 0x91, 0x62, 0x4f, 0xc2, 0x68, 0x88, 0xf8, 0xed, 0xbe, 0xab, + 0xaa, 0x71, 0xf6, 0x3e, +}; +static const unsigned char kat1077_retbits[] = { + 0x19, 0x5b, 0x9b, 0x0a, 0x08, 0xab, 0x0e, 0xe5, 0x82, 0x4e, 0x39, 0xf9, + 0x22, 0x78, 0xef, 0x06, 0xe4, 0x62, 0x9d, 0x50, 0x45, 0x15, 0xb5, 0xb8, + 0x89, 0x6b, 0xe8, 0x7c, 0xaf, 0xd4, 0xe7, 0xcc, 0xf9, 0xa5, 0xb1, 0x84, + 0x4d, 0xb2, 0x78, 0xe1, 0x09, 0x09, 0x6d, 0x84, 0x8d, 0xa5, 0xa9, 0xf0, + 0x74, 0xd5, 0x93, 0x55, 0xbe, 0xa5, 0x02, 0x57, 0x08, 0xe0, 0x3f, 0xe6, + 0x95, 0x1c, 0xf7, 0xbf, +}; +static const struct drbg_kat_no_reseed kat1077_t = { + 11, kat1077_entropyin, kat1077_nonce, kat1077_persstr, + kat1077_addin0, kat1077_addin1, kat1077_retbits +}; +static const struct drbg_kat kat1077 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1077_t +}; + +static const unsigned char kat1078_entropyin[] = { + 0x0f, 0xa2, 0xcf, 0x0e, 0xe2, 0xa8, 0xf5, 0x85, 0xfd, 0x8e, 0xd9, 0xdf, + 0xfc, 0x39, 0x75, 0xe7, 0x1c, 0x2e, 0x35, 0x47, 0xb1, 0xe7, 0xa0, 0xbe, + 0x40, 0xff, 0xfc, 0x25, 0xe2, 0x72, 0x23, 0x4a, 0x61, 0x55, 0x6d, 0x2b, + 0x8d, 0xe4, 0x4f, 0x45, +}; +static const unsigned char kat1078_nonce[] = {0}; +static const unsigned char kat1078_persstr[] = { + 0xef, 0x3c, 0x20, 0xa9, 0x0c, 0xfe, 0x29, 0xfc, 0xb7, 0x8c, 0xd7, 0x02, + 0x3b, 0xad, 0xee, 0xdd, 0xa4, 0xcd, 0xbe, 0xd5, 0x6e, 0x86, 0x77, 0x73, + 0x76, 0xcf, 0x26, 0x72, 0x4c, 0xa1, 0x7f, 0x8b, 0x1a, 0x3f, 0x4b, 0x7f, + 0xce, 0xab, 0x46, 0x5b, +}; +static const unsigned char kat1078_addin0[] = { + 0x07, 0x70, 0x1f, 0x10, 0xbd, 0xd4, 0x44, 0x01, 0x51, 0x09, 0x9a, 0x38, + 0xdc, 0x34, 0xeb, 0x09, 0x32, 0x29, 0xfc, 0x40, 0x8c, 0x34, 0xd9, 0xb7, + 0xa2, 0x65, 0x48, 0xdd, 0x6d, 0x71, 0x4f, 0xa5, 0xbe, 0xac, 0x1d, 0xfb, + 0x6e, 0x6d, 0xcb, 0x84, +}; +static const unsigned char kat1078_addin1[] = { + 0x3d, 0x41, 0xf6, 0x28, 0x52, 0x08, 0x2c, 0xf1, 0x75, 0x35, 0xb6, 0xe8, + 0x52, 0x98, 0x3b, 0x3e, 0x64, 0xcc, 0x95, 0xfa, 0x51, 0xf8, 0x64, 0x68, + 0x19, 0x69, 0x69, 0x01, 0x88, 0xd0, 0xfd, 0x24, 0x60, 0x10, 0x29, 0x03, + 0x99, 0xa6, 0x87, 0x1a, +}; +static const unsigned char kat1078_retbits[] = { + 0x61, 0x1e, 0x25, 0x3b, 0x08, 0x5e, 0x5b, 0x30, 0x0f, 0xdd, 0x37, 0x30, + 0x24, 0xa1, 0xa4, 0x40, 0xce, 0x7c, 0x74, 0x49, 0xd3, 0xdb, 0xfe, 0x8f, + 0xa8, 0x9d, 0x81, 0x8c, 0xd0, 0x4e, 0x7a, 0x06, 0x46, 0xcb, 0xa5, 0xe1, + 0xe4, 0xab, 0x97, 0xc3, 0x9a, 0x5b, 0x12, 0x99, 0x81, 0xc2, 0xb1, 0xb3, + 0x00, 0x2a, 0xe3, 0x2f, 0x0f, 0xf8, 0x49, 0x99, 0xc1, 0xf7, 0xb5, 0xac, + 0xfb, 0xaf, 0x8e, 0x57, +}; +static const struct drbg_kat_no_reseed kat1078_t = { + 12, kat1078_entropyin, kat1078_nonce, kat1078_persstr, + kat1078_addin0, kat1078_addin1, kat1078_retbits +}; +static const struct drbg_kat kat1078 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1078_t +}; + +static const unsigned char kat1079_entropyin[] = { + 0x08, 0x13, 0x48, 0x20, 0xc6, 0xdb, 0x2b, 0x51, 0x11, 0xff, 0x6b, 0xcc, + 0xcc, 0x69, 0x75, 0x8a, 0x5d, 0x75, 0x0a, 0xf0, 0xd1, 0x14, 0x4e, 0xd5, + 0xab, 0x80, 0x05, 0x55, 0xb6, 0x31, 0xd0, 0xc1, 0xb3, 0xd8, 0x19, 0x2e, + 0x07, 0x5a, 0xa3, 0x80, +}; +static const unsigned char kat1079_nonce[] = {0}; +static const unsigned char kat1079_persstr[] = { + 0xb4, 0xda, 0x34, 0x29, 0x61, 0xaa, 0x4b, 0x9b, 0x5f, 0xdd, 0xd9, 0x49, + 0x05, 0xc3, 0x1c, 0xf6, 0xf3, 0x2c, 0x14, 0x2c, 0x92, 0xb6, 0xde, 0x6e, + 0xb8, 0x2b, 0xd5, 0x8c, 0xfe, 0x3f, 0x7d, 0x66, 0x6a, 0x3f, 0x6f, 0xd7, + 0x4c, 0x2c, 0x80, 0x82, +}; +static const unsigned char kat1079_addin0[] = { + 0x0e, 0x2a, 0xb9, 0x61, 0x5b, 0x07, 0xd3, 0xee, 0xb9, 0x93, 0xa4, 0xea, + 0x1d, 0x34, 0xe5, 0xc1, 0x6b, 0xf5, 0xc2, 0x87, 0x77, 0x30, 0xfa, 0x32, + 0x94, 0x3c, 0xf3, 0x78, 0x37, 0xa9, 0x29, 0xd2, 0x25, 0x47, 0x9d, 0x0e, + 0x47, 0xbd, 0x8b, 0xd8, +}; +static const unsigned char kat1079_addin1[] = { + 0xa5, 0x0e, 0xb3, 0x73, 0x39, 0x14, 0x55, 0xe2, 0x33, 0x82, 0xa8, 0xff, + 0xab, 0xcf, 0xf1, 0x1d, 0xd4, 0x1b, 0x36, 0xe1, 0x1a, 0x6a, 0x36, 0x45, + 0xf4, 0xbf, 0xef, 0xd2, 0x67, 0xa7, 0xcd, 0x80, 0xd3, 0x78, 0x39, 0xc8, + 0xf7, 0x04, 0xb8, 0xc5, +}; +static const unsigned char kat1079_retbits[] = { + 0x6a, 0xba, 0x01, 0x66, 0x0a, 0xac, 0xcb, 0x5f, 0x5f, 0xd3, 0x2f, 0xb6, + 0xa5, 0x41, 0xcb, 0x3b, 0x85, 0xd0, 0xaa, 0xba, 0x47, 0x6c, 0x63, 0x96, + 0x2d, 0xa4, 0x89, 0xee, 0xa9, 0x44, 0x7d, 0x7c, 0x3c, 0x11, 0x59, 0x60, + 0x8c, 0x0a, 0x64, 0x7d, 0x64, 0x16, 0x48, 0x56, 0x68, 0xec, 0x3a, 0xbc, + 0x4b, 0x22, 0xa9, 0x19, 0xca, 0xdf, 0x5e, 0x8c, 0x87, 0xe9, 0xf3, 0x59, + 0x0a, 0xc5, 0x8a, 0xa8, +}; +static const struct drbg_kat_no_reseed kat1079_t = { + 13, kat1079_entropyin, kat1079_nonce, kat1079_persstr, + kat1079_addin0, kat1079_addin1, kat1079_retbits +}; +static const struct drbg_kat kat1079 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1079_t +}; + +static const unsigned char kat1080_entropyin[] = { + 0x41, 0xff, 0x15, 0x6a, 0xc9, 0x1b, 0xb7, 0xed, 0x33, 0xa4, 0x46, 0x5d, + 0x08, 0xa1, 0x5f, 0x10, 0x46, 0xea, 0x01, 0x42, 0x62, 0xcc, 0xc0, 0xe2, + 0xdd, 0x7a, 0x99, 0x9e, 0x27, 0x63, 0x2e, 0xad, 0x96, 0x77, 0x51, 0x1d, + 0x93, 0x63, 0x29, 0xc5, +}; +static const unsigned char kat1080_nonce[] = {0}; +static const unsigned char kat1080_persstr[] = { + 0x39, 0xb8, 0xee, 0x59, 0x82, 0x18, 0x58, 0xdc, 0xb8, 0x9c, 0x0f, 0x9d, + 0xa6, 0xd7, 0x98, 0xf9, 0x25, 0xac, 0xba, 0xad, 0x0d, 0xd2, 0xa9, 0x0b, + 0x1a, 0xe6, 0x33, 0x4c, 0x4e, 0x4b, 0xad, 0xd3, 0x80, 0x43, 0xe7, 0x0d, + 0xe7, 0x46, 0xdb, 0xdc, +}; +static const unsigned char kat1080_addin0[] = { + 0x6c, 0xff, 0x75, 0x28, 0xb8, 0x43, 0xb2, 0xef, 0xb4, 0x03, 0x36, 0xbd, + 0xca, 0xa9, 0x62, 0x9b, 0xe2, 0x72, 0x0b, 0xfa, 0x50, 0x9a, 0x33, 0x04, + 0x30, 0xc3, 0x6d, 0x59, 0x35, 0xe6, 0xec, 0x68, 0x56, 0x9c, 0xb6, 0x45, + 0x96, 0x71, 0xfc, 0x97, +}; +static const unsigned char kat1080_addin1[] = { + 0xe0, 0x84, 0x3c, 0xa3, 0x38, 0x5e, 0xd5, 0x5f, 0x56, 0xd5, 0x13, 0x43, + 0xdd, 0x71, 0x8d, 0xbd, 0x1a, 0x37, 0x05, 0xd7, 0xb8, 0xa3, 0xa5, 0xcb, + 0x7b, 0x95, 0x5c, 0x90, 0x70, 0xef, 0x1f, 0xaf, 0x74, 0x38, 0x2a, 0x91, + 0x30, 0xa6, 0x80, 0x3c, +}; +static const unsigned char kat1080_retbits[] = { + 0x90, 0x52, 0xa7, 0x5e, 0xb2, 0x25, 0xac, 0x75, 0x22, 0xcb, 0x14, 0x12, + 0x45, 0xe0, 0x59, 0x2a, 0x33, 0x4c, 0xdc, 0x8e, 0x19, 0x4f, 0x52, 0x49, + 0xa5, 0x84, 0x3e, 0x6e, 0xfb, 0x63, 0x98, 0xdb, 0x1b, 0x8a, 0xe9, 0x7a, + 0x15, 0x82, 0x9e, 0xfa, 0x46, 0x85, 0xcb, 0x4f, 0x14, 0x35, 0xd0, 0x22, + 0x42, 0x4c, 0xc7, 0x85, 0x4d, 0x34, 0x74, 0x3b, 0xb2, 0xd8, 0x61, 0x86, + 0x6f, 0xff, 0x51, 0xc1, +}; +static const struct drbg_kat_no_reseed kat1080_t = { + 14, kat1080_entropyin, kat1080_nonce, kat1080_persstr, + kat1080_addin0, kat1080_addin1, kat1080_retbits +}; +static const struct drbg_kat kat1080 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1080_t +}; + +static const unsigned char kat1081_entropyin[] = { + 0x40, 0x97, 0x88, 0x36, 0xf2, 0x3c, 0xdb, 0x54, 0x5a, 0x48, 0x89, 0x39, + 0x26, 0xa0, 0xdd, 0x81, 0x0f, 0x79, 0x19, 0xf1, 0x22, 0x14, 0x56, 0x7b, + 0xd8, 0x9f, 0x21, 0x87, 0x61, 0x9b, 0xae, 0x46, 0x98, 0xb4, 0x07, 0x00, + 0x27, 0xa3, 0xfd, 0xa7, +}; +static const unsigned char kat1081_nonce[] = {0}; +static const unsigned char kat1081_persstr[] = {0}; +static const unsigned char kat1081_addin0[] = {0}; +static const unsigned char kat1081_addin1[] = {0}; +static const unsigned char kat1081_retbits[] = { + 0xe5, 0x8a, 0xa7, 0xfa, 0x7f, 0x63, 0x9a, 0x9d, 0x14, 0xc6, 0x7a, 0xbe, + 0xb2, 0xca, 0x52, 0xdc, 0x04, 0xa0, 0x6e, 0x4c, 0xe8, 0xce, 0x18, 0xfc, + 0x71, 0x37, 0x5a, 0x1a, 0xa2, 0x17, 0xdb, 0x17, 0x26, 0x6f, 0xe0, 0xeb, + 0xe1, 0x5d, 0xc1, 0x3d, 0x35, 0x2a, 0xf0, 0x4d, 0x56, 0x8e, 0x80, 0xf3, + 0xba, 0x76, 0xde, 0x25, 0x7e, 0xc7, 0xba, 0xd0, 0xb1, 0x25, 0xa9, 0x1f, + 0xe1, 0x7e, 0x87, 0xd0, +}; +static const struct drbg_kat_no_reseed kat1081_t = { + 0, kat1081_entropyin, kat1081_nonce, kat1081_persstr, + kat1081_addin0, kat1081_addin1, kat1081_retbits +}; +static const struct drbg_kat kat1081 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1081_t +}; + +static const unsigned char kat1082_entropyin[] = { + 0x85, 0x2e, 0x1a, 0xd0, 0x7a, 0xa5, 0xd9, 0x77, 0xd7, 0x1e, 0xf3, 0x7a, + 0xc9, 0x35, 0x0e, 0xd7, 0x43, 0x53, 0x2a, 0x2d, 0xfe, 0xf5, 0xc4, 0xc6, + 0x96, 0xe6, 0x36, 0x31, 0x22, 0xf8, 0x4e, 0x13, 0xed, 0x1d, 0x7e, 0xa1, + 0xa1, 0xa0, 0x4c, 0xea, +}; +static const unsigned char kat1082_nonce[] = {0}; +static const unsigned char kat1082_persstr[] = {0}; +static const unsigned char kat1082_addin0[] = {0}; +static const unsigned char kat1082_addin1[] = {0}; +static const unsigned char kat1082_retbits[] = { + 0x7e, 0x9a, 0x5c, 0xf9, 0x9a, 0xb4, 0xd4, 0x36, 0x04, 0x86, 0x39, 0xf5, + 0x4d, 0xb7, 0xde, 0x46, 0x7f, 0x04, 0x10, 0x7a, 0xaf, 0x2f, 0xd5, 0x82, + 0x43, 0xac, 0x57, 0x38, 0x21, 0x23, 0x6a, 0x81, 0xa0, 0x6e, 0x03, 0x07, + 0xd3, 0x45, 0x5e, 0xac, 0x6e, 0x69, 0x1b, 0xe8, 0x24, 0x3d, 0xbc, 0x83, + 0xbb, 0xf5, 0xd5, 0xbb, 0x13, 0x1e, 0x4c, 0x67, 0x31, 0x93, 0xba, 0xf0, + 0x93, 0x81, 0xf6, 0x3b, +}; +static const struct drbg_kat_no_reseed kat1082_t = { + 1, kat1082_entropyin, kat1082_nonce, kat1082_persstr, + kat1082_addin0, kat1082_addin1, kat1082_retbits +}; +static const struct drbg_kat kat1082 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1082_t +}; + +static const unsigned char kat1083_entropyin[] = { + 0x53, 0x13, 0x9b, 0x71, 0x1c, 0xd6, 0x29, 0x70, 0xb6, 0x12, 0x3d, 0xc4, + 0x09, 0x70, 0xf3, 0x0c, 0xd0, 0x3d, 0x98, 0x63, 0xe7, 0x8a, 0x3d, 0x05, + 0xeb, 0xc4, 0xd9, 0x3a, 0xfc, 0x92, 0xd6, 0x6c, 0x4e, 0x67, 0xb6, 0x15, + 0x12, 0x64, 0xf2, 0x2e, +}; +static const unsigned char kat1083_nonce[] = {0}; +static const unsigned char kat1083_persstr[] = {0}; +static const unsigned char kat1083_addin0[] = {0}; +static const unsigned char kat1083_addin1[] = {0}; +static const unsigned char kat1083_retbits[] = { + 0xc1, 0x6d, 0x33, 0x7f, 0x97, 0xed, 0x4c, 0x44, 0x58, 0x68, 0xea, 0x0d, + 0x63, 0xae, 0xe5, 0xa7, 0xec, 0x74, 0x8a, 0x22, 0xf1, 0x6b, 0xa6, 0x11, + 0xe2, 0x2b, 0x9c, 0x03, 0x50, 0x67, 0x17, 0xa2, 0x9e, 0x00, 0xbb, 0x56, + 0xac, 0x86, 0x5e, 0xb1, 0x96, 0xe2, 0x87, 0x4b, 0xbc, 0xe6, 0x8e, 0x88, + 0x4e, 0xd9, 0x70, 0x23, 0xa0, 0xbd, 0x97, 0xcc, 0x3f, 0xb1, 0x17, 0xc9, + 0x1b, 0x55, 0xaa, 0xd6, +}; +static const struct drbg_kat_no_reseed kat1083_t = { + 2, kat1083_entropyin, kat1083_nonce, kat1083_persstr, + kat1083_addin0, kat1083_addin1, kat1083_retbits +}; +static const struct drbg_kat kat1083 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1083_t +}; + +static const unsigned char kat1084_entropyin[] = { + 0xc4, 0x27, 0xba, 0x92, 0xc6, 0xec, 0xbf, 0x09, 0xea, 0x50, 0x2b, 0x8b, + 0xdf, 0x5f, 0xcd, 0xe3, 0xdf, 0x79, 0xef, 0xcf, 0x80, 0xd0, 0x0d, 0x31, + 0x19, 0x7a, 0x48, 0xe3, 0x8d, 0xd1, 0xdb, 0x04, 0x3d, 0x44, 0xfe, 0x5b, + 0x1b, 0x53, 0x5e, 0x82, +}; +static const unsigned char kat1084_nonce[] = {0}; +static const unsigned char kat1084_persstr[] = {0}; +static const unsigned char kat1084_addin0[] = {0}; +static const unsigned char kat1084_addin1[] = {0}; +static const unsigned char kat1084_retbits[] = { + 0xce, 0xca, 0x2b, 0x90, 0xc9, 0x42, 0x1b, 0x71, 0x6f, 0xe6, 0xab, 0xfd, + 0x08, 0x65, 0x79, 0x5c, 0xec, 0xc2, 0x07, 0xb7, 0xe4, 0x2e, 0xae, 0xf2, + 0xd9, 0xcd, 0x61, 0xec, 0x83, 0x3b, 0x94, 0x61, 0x51, 0x3a, 0x62, 0x0b, + 0x58, 0x08, 0x21, 0x6f, 0x78, 0x3b, 0x56, 0x45, 0x03, 0x2c, 0x00, 0xac, + 0x62, 0x75, 0xbc, 0xbe, 0x60, 0x9c, 0xaa, 0x31, 0x86, 0xb1, 0xd4, 0xa3, + 0x9d, 0x5a, 0x99, 0x02, +}; +static const struct drbg_kat_no_reseed kat1084_t = { + 3, kat1084_entropyin, kat1084_nonce, kat1084_persstr, + kat1084_addin0, kat1084_addin1, kat1084_retbits +}; +static const struct drbg_kat kat1084 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1084_t +}; + +static const unsigned char kat1085_entropyin[] = { + 0x08, 0x38, 0xfa, 0x42, 0x28, 0xcb, 0x87, 0xa5, 0xd2, 0x55, 0x6b, 0xe9, + 0x4c, 0x25, 0x7f, 0xfd, 0xb9, 0xbf, 0xa6, 0x52, 0x90, 0xdf, 0xf3, 0x3d, + 0x3b, 0x7f, 0xab, 0x98, 0x21, 0x68, 0x4a, 0xf1, 0x5a, 0x06, 0xc2, 0x83, + 0xf0, 0xdc, 0x3e, 0xc9, +}; +static const unsigned char kat1085_nonce[] = {0}; +static const unsigned char kat1085_persstr[] = {0}; +static const unsigned char kat1085_addin0[] = {0}; +static const unsigned char kat1085_addin1[] = {0}; +static const unsigned char kat1085_retbits[] = { + 0xa1, 0x70, 0x04, 0xa3, 0xe6, 0x09, 0x21, 0x90, 0x72, 0x9d, 0x86, 0xd8, + 0xcd, 0xcb, 0xb9, 0xa9, 0xe8, 0xd5, 0x24, 0x5f, 0x23, 0x8f, 0xf6, 0x93, + 0xf6, 0x63, 0x37, 0xe4, 0xa7, 0xb1, 0x7a, 0xb8, 0xb1, 0x3c, 0xa1, 0x3c, + 0x69, 0x6f, 0xe4, 0x64, 0x55, 0x73, 0x81, 0x7e, 0x05, 0x40, 0xc5, 0xf4, + 0xe7, 0x4a, 0x4a, 0xde, 0x17, 0xe8, 0x1e, 0xd8, 0x12, 0xa5, 0x88, 0x21, + 0xcf, 0xdf, 0xb9, 0x00, +}; +static const struct drbg_kat_no_reseed kat1085_t = { + 4, kat1085_entropyin, kat1085_nonce, kat1085_persstr, + kat1085_addin0, kat1085_addin1, kat1085_retbits +}; +static const struct drbg_kat kat1085 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1085_t +}; + +static const unsigned char kat1086_entropyin[] = { + 0xd5, 0xf5, 0x0d, 0xc6, 0x70, 0x8b, 0xd3, 0x89, 0x97, 0x39, 0xcf, 0xdd, + 0xe9, 0x5d, 0x9f, 0x41, 0x44, 0xf9, 0x18, 0xe4, 0x93, 0x9a, 0x5d, 0x7a, + 0x28, 0x8f, 0x1b, 0x35, 0x73, 0x3d, 0x5a, 0x96, 0x88, 0x23, 0x96, 0x9f, + 0x3f, 0x42, 0x0f, 0xf0, +}; +static const unsigned char kat1086_nonce[] = {0}; +static const unsigned char kat1086_persstr[] = {0}; +static const unsigned char kat1086_addin0[] = {0}; +static const unsigned char kat1086_addin1[] = {0}; +static const unsigned char kat1086_retbits[] = { + 0x6c, 0xea, 0x50, 0x6c, 0x3a, 0xe4, 0xf8, 0xfa, 0xd3, 0x6e, 0xdb, 0x01, + 0x8c, 0x26, 0x8e, 0x2d, 0x25, 0x4d, 0xe7, 0xfb, 0xbe, 0x32, 0xa5, 0x00, + 0xd4, 0x31, 0x35, 0x29, 0xdf, 0x16, 0x8f, 0x3d, 0x15, 0xc7, 0xcb, 0xd2, + 0xd9, 0x80, 0xee, 0x04, 0xd2, 0x95, 0x24, 0x22, 0x49, 0xc7, 0x19, 0xe8, + 0x0d, 0x4e, 0x55, 0xb4, 0x7f, 0x54, 0xe3, 0x14, 0x0b, 0x23, 0xe6, 0x1e, + 0xaa, 0xcc, 0x67, 0xb0, +}; +static const struct drbg_kat_no_reseed kat1086_t = { + 5, kat1086_entropyin, kat1086_nonce, kat1086_persstr, + kat1086_addin0, kat1086_addin1, kat1086_retbits +}; +static const struct drbg_kat kat1086 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1086_t +}; + +static const unsigned char kat1087_entropyin[] = { + 0x37, 0x18, 0x1f, 0xd5, 0x41, 0xda, 0x6c, 0x06, 0x78, 0xd0, 0x58, 0xf4, + 0x86, 0xdf, 0x84, 0x2b, 0x36, 0xb5, 0x68, 0x73, 0xa7, 0x08, 0x80, 0xae, + 0x4a, 0xf1, 0xcb, 0x58, 0x60, 0x23, 0xe2, 0x31, 0x04, 0x1d, 0xe0, 0x2e, + 0xf2, 0xa2, 0x92, 0x4b, +}; +static const unsigned char kat1087_nonce[] = {0}; +static const unsigned char kat1087_persstr[] = {0}; +static const unsigned char kat1087_addin0[] = {0}; +static const unsigned char kat1087_addin1[] = {0}; +static const unsigned char kat1087_retbits[] = { + 0x72, 0x3b, 0x05, 0x21, 0xbb, 0x53, 0x48, 0xbf, 0x6e, 0xcc, 0xbd, 0xf0, + 0xa4, 0xd1, 0x6d, 0xec, 0xe4, 0x72, 0xa2, 0xbf, 0xfb, 0xf9, 0x05, 0x03, + 0x5e, 0x0e, 0x62, 0xad, 0x30, 0x4b, 0xbb, 0x07, 0xc5, 0x3a, 0xd4, 0x49, + 0x88, 0xc5, 0xc6, 0x53, 0x60, 0x30, 0x52, 0xf4, 0xd8, 0xd4, 0x41, 0xfa, + 0x88, 0x1d, 0x2d, 0xbf, 0xa6, 0x7b, 0x96, 0x8e, 0x77, 0xa4, 0x68, 0xf9, + 0xfb, 0x66, 0xf7, 0x8d, +}; +static const struct drbg_kat_no_reseed kat1087_t = { + 6, kat1087_entropyin, kat1087_nonce, kat1087_persstr, + kat1087_addin0, kat1087_addin1, kat1087_retbits +}; +static const struct drbg_kat kat1087 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1087_t +}; + +static const unsigned char kat1088_entropyin[] = { + 0x11, 0x8f, 0x6e, 0xa3, 0x24, 0x83, 0x13, 0x2a, 0x52, 0x59, 0xb8, 0x28, + 0xc0, 0xf2, 0x99, 0x9d, 0xcf, 0x3c, 0x24, 0xe5, 0x00, 0x12, 0xe9, 0xd6, + 0xa5, 0xca, 0x86, 0x6d, 0x15, 0x43, 0x1e, 0xc7, 0xd0, 0x9c, 0x35, 0xe2, + 0xcf, 0xe2, 0xbb, 0xd6, +}; +static const unsigned char kat1088_nonce[] = {0}; +static const unsigned char kat1088_persstr[] = {0}; +static const unsigned char kat1088_addin0[] = {0}; +static const unsigned char kat1088_addin1[] = {0}; +static const unsigned char kat1088_retbits[] = { + 0xe9, 0x94, 0x06, 0x3d, 0x1a, 0x66, 0x83, 0xa2, 0x6e, 0x21, 0x3c, 0x6c, + 0x29, 0x08, 0xae, 0x89, 0x64, 0xa1, 0xe4, 0x94, 0x77, 0x9e, 0x30, 0xc9, + 0x77, 0xc9, 0xee, 0x7b, 0xed, 0x60, 0x44, 0x9f, 0xa3, 0xc2, 0x8c, 0xb3, + 0x0a, 0x92, 0xe7, 0xf2, 0x87, 0x71, 0xc6, 0xa6, 0x72, 0x78, 0x9c, 0xaa, + 0x73, 0x9f, 0x05, 0xb5, 0x81, 0xd7, 0x18, 0xd8, 0x64, 0xbd, 0x22, 0x02, + 0x8e, 0x41, 0x9e, 0xef, +}; +static const struct drbg_kat_no_reseed kat1088_t = { + 7, kat1088_entropyin, kat1088_nonce, kat1088_persstr, + kat1088_addin0, kat1088_addin1, kat1088_retbits +}; +static const struct drbg_kat kat1088 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1088_t +}; + +static const unsigned char kat1089_entropyin[] = { + 0xf1, 0x87, 0x49, 0x0e, 0xba, 0xec, 0x72, 0xe6, 0x85, 0x0a, 0xe2, 0xe8, + 0xe9, 0x40, 0xc0, 0x69, 0x04, 0x0f, 0x89, 0xe1, 0x9b, 0x4d, 0x91, 0x93, + 0xc2, 0x27, 0xa8, 0x1b, 0x98, 0xa4, 0xce, 0x4e, 0xd0, 0x0b, 0x2a, 0x3a, + 0x9e, 0xfd, 0x00, 0xb7, +}; +static const unsigned char kat1089_nonce[] = {0}; +static const unsigned char kat1089_persstr[] = {0}; +static const unsigned char kat1089_addin0[] = {0}; +static const unsigned char kat1089_addin1[] = {0}; +static const unsigned char kat1089_retbits[] = { + 0xd6, 0x4c, 0x92, 0xc8, 0x64, 0xdc, 0x6f, 0x7c, 0xfe, 0xab, 0x50, 0x9b, + 0xd5, 0x1c, 0x73, 0x66, 0xab, 0x54, 0x68, 0x26, 0xa5, 0x31, 0xba, 0x31, + 0x51, 0x43, 0x91, 0xf1, 0x1d, 0x97, 0x60, 0xd4, 0x77, 0xc7, 0xec, 0x39, + 0x01, 0xc4, 0xd1, 0x54, 0x1a, 0x70, 0x3a, 0xdc, 0xc2, 0x52, 0x63, 0x25, + 0x7f, 0x3e, 0x5b, 0xbe, 0xca, 0xa5, 0x9b, 0x61, 0x8c, 0x1b, 0x4a, 0x1d, + 0xf8, 0x82, 0x06, 0x6b, +}; +static const struct drbg_kat_no_reseed kat1089_t = { + 8, kat1089_entropyin, kat1089_nonce, kat1089_persstr, + kat1089_addin0, kat1089_addin1, kat1089_retbits +}; +static const struct drbg_kat kat1089 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1089_t +}; + +static const unsigned char kat1090_entropyin[] = { + 0x9e, 0x26, 0x4d, 0x7e, 0xe3, 0x5b, 0x20, 0xfe, 0x27, 0x41, 0x16, 0x92, + 0x01, 0x32, 0x16, 0x7f, 0xd3, 0xb9, 0x5d, 0xdf, 0x6a, 0x2b, 0xf8, 0x36, + 0x89, 0x79, 0x99, 0xe8, 0x75, 0xa7, 0xdb, 0xb0, 0xac, 0x52, 0x02, 0xbf, + 0x45, 0x30, 0xc9, 0x2e, +}; +static const unsigned char kat1090_nonce[] = {0}; +static const unsigned char kat1090_persstr[] = {0}; +static const unsigned char kat1090_addin0[] = {0}; +static const unsigned char kat1090_addin1[] = {0}; +static const unsigned char kat1090_retbits[] = { + 0x0f, 0x79, 0x82, 0xf5, 0x4e, 0x43, 0xab, 0xc5, 0x75, 0x11, 0x11, 0x4f, + 0x95, 0xd1, 0x03, 0xb7, 0xbd, 0xed, 0xf4, 0x11, 0x53, 0x64, 0x36, 0x0d, + 0x1c, 0x95, 0xdf, 0x04, 0xc4, 0xb4, 0x00, 0x83, 0x76, 0x74, 0xca, 0xe0, + 0x21, 0x2b, 0x77, 0x6c, 0x0b, 0xaa, 0x05, 0xd3, 0x42, 0x8d, 0x4f, 0xe3, + 0xfb, 0xa2, 0x8a, 0xab, 0x4f, 0xd3, 0x5a, 0x1e, 0x32, 0xfc, 0xc2, 0xb9, + 0x27, 0x8c, 0x11, 0xb0, +}; +static const struct drbg_kat_no_reseed kat1090_t = { + 9, kat1090_entropyin, kat1090_nonce, kat1090_persstr, + kat1090_addin0, kat1090_addin1, kat1090_retbits +}; +static const struct drbg_kat kat1090 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1090_t +}; + +static const unsigned char kat1091_entropyin[] = { + 0x21, 0x37, 0xf2, 0x91, 0xe5, 0x0f, 0xb5, 0xaa, 0x45, 0x9a, 0x2f, 0x00, + 0x17, 0xe1, 0x2f, 0x4d, 0x10, 0x7a, 0x03, 0x0a, 0x1f, 0x14, 0xff, 0x9a, + 0xc3, 0x30, 0x35, 0xd0, 0xcb, 0xba, 0xe0, 0xce, 0x79, 0x10, 0xfa, 0x7e, + 0x86, 0xd7, 0x0c, 0xff, +}; +static const unsigned char kat1091_nonce[] = {0}; +static const unsigned char kat1091_persstr[] = {0}; +static const unsigned char kat1091_addin0[] = {0}; +static const unsigned char kat1091_addin1[] = {0}; +static const unsigned char kat1091_retbits[] = { + 0x6f, 0x78, 0x50, 0xa6, 0x76, 0x2e, 0xaf, 0x49, 0xbb, 0x93, 0xc1, 0x2f, + 0xd1, 0xf2, 0xb6, 0x2f, 0x24, 0xfd, 0x21, 0x7e, 0x0c, 0xb2, 0x9e, 0x73, + 0xac, 0x6e, 0x93, 0x20, 0xb5, 0x9c, 0x2c, 0xb5, 0xcd, 0x4b, 0x02, 0xa4, + 0xac, 0x99, 0xcb, 0xe6, 0x5e, 0x3a, 0x12, 0x2d, 0x69, 0xef, 0xd5, 0xa8, + 0x6f, 0x4d, 0xf4, 0x66, 0x68, 0xdb, 0xb8, 0x4b, 0x14, 0x50, 0x88, 0xec, + 0x72, 0x67, 0x1f, 0x32, +}; +static const struct drbg_kat_no_reseed kat1091_t = { + 10, kat1091_entropyin, kat1091_nonce, kat1091_persstr, + kat1091_addin0, kat1091_addin1, kat1091_retbits +}; +static const struct drbg_kat kat1091 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1091_t +}; + +static const unsigned char kat1092_entropyin[] = { + 0xc4, 0xe3, 0x4b, 0xeb, 0x50, 0x14, 0x3a, 0x19, 0x1d, 0x07, 0x5d, 0x2b, + 0x51, 0x0d, 0xdf, 0xd9, 0xf8, 0x07, 0xf4, 0x98, 0xf1, 0x86, 0x3c, 0x96, + 0xff, 0x08, 0xb4, 0x1b, 0x0c, 0xe2, 0x86, 0xc8, 0xf2, 0x18, 0x0a, 0xfe, + 0x8b, 0xbf, 0x97, 0x3e, +}; +static const unsigned char kat1092_nonce[] = {0}; +static const unsigned char kat1092_persstr[] = {0}; +static const unsigned char kat1092_addin0[] = {0}; +static const unsigned char kat1092_addin1[] = {0}; +static const unsigned char kat1092_retbits[] = { + 0xe1, 0x9f, 0xbe, 0xe2, 0xe7, 0xe5, 0xed, 0x55, 0x3c, 0x40, 0x9e, 0x60, + 0x99, 0x8a, 0xa4, 0xcf, 0x6d, 0xe6, 0x55, 0x71, 0xa8, 0x78, 0x4c, 0x0c, + 0xda, 0xdc, 0x80, 0xde, 0x2f, 0x8b, 0x90, 0xa3, 0xa0, 0xb5, 0x21, 0x2c, + 0x8b, 0xaa, 0xaa, 0xb4, 0x1c, 0x95, 0x55, 0x4c, 0x4a, 0x61, 0x68, 0x85, + 0x19, 0xd7, 0x59, 0x76, 0x9c, 0xbd, 0x64, 0xf6, 0x41, 0x17, 0x3f, 0x51, + 0x34, 0x27, 0x15, 0xdf, +}; +static const struct drbg_kat_no_reseed kat1092_t = { + 11, kat1092_entropyin, kat1092_nonce, kat1092_persstr, + kat1092_addin0, kat1092_addin1, kat1092_retbits +}; +static const struct drbg_kat kat1092 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1092_t +}; + +static const unsigned char kat1093_entropyin[] = { + 0x5c, 0x3b, 0xa5, 0x23, 0x0b, 0xc7, 0x13, 0xc4, 0x91, 0xb7, 0xe1, 0x84, + 0x95, 0x50, 0xc3, 0x5c, 0x5e, 0x89, 0x25, 0xdd, 0xc0, 0x36, 0x40, 0x73, + 0x59, 0x66, 0xb1, 0x95, 0x42, 0x3d, 0x17, 0xbc, 0x73, 0xf7, 0x55, 0xde, + 0x48, 0x3e, 0xbf, 0x1f, +}; +static const unsigned char kat1093_nonce[] = {0}; +static const unsigned char kat1093_persstr[] = {0}; +static const unsigned char kat1093_addin0[] = {0}; +static const unsigned char kat1093_addin1[] = {0}; +static const unsigned char kat1093_retbits[] = { + 0x15, 0x7d, 0xce, 0x31, 0x8c, 0x3e, 0x92, 0x81, 0x0d, 0x64, 0x34, 0xd0, + 0x2c, 0x43, 0xad, 0xc9, 0x27, 0xea, 0xc5, 0xc0, 0x58, 0x0d, 0x74, 0x44, + 0x36, 0x6a, 0x1a, 0x44, 0xdb, 0xe8, 0x65, 0xfb, 0x0a, 0xd0, 0x52, 0xfa, + 0xcd, 0x0c, 0x6c, 0x6d, 0x47, 0x51, 0x53, 0x47, 0x16, 0x30, 0xb3, 0x49, + 0x1b, 0x81, 0x8c, 0x34, 0x61, 0xde, 0x33, 0x62, 0x9a, 0x49, 0x15, 0xe6, + 0x0f, 0xe7, 0xc5, 0x59, +}; +static const struct drbg_kat_no_reseed kat1093_t = { + 12, kat1093_entropyin, kat1093_nonce, kat1093_persstr, + kat1093_addin0, kat1093_addin1, kat1093_retbits +}; +static const struct drbg_kat kat1093 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1093_t +}; + +static const unsigned char kat1094_entropyin[] = { + 0xe8, 0xc2, 0x4b, 0xa9, 0x2a, 0xb5, 0xd7, 0x39, 0xb9, 0xec, 0xad, 0xb9, + 0x50, 0x5a, 0xc5, 0x6c, 0xf5, 0x99, 0x0f, 0x14, 0x50, 0xe5, 0x6f, 0x4f, + 0xb3, 0x34, 0xf1, 0x15, 0xc1, 0x49, 0x48, 0xcb, 0x40, 0x4e, 0x54, 0x1a, + 0x37, 0xbf, 0xa6, 0xdc, +}; +static const unsigned char kat1094_nonce[] = {0}; +static const unsigned char kat1094_persstr[] = {0}; +static const unsigned char kat1094_addin0[] = {0}; +static const unsigned char kat1094_addin1[] = {0}; +static const unsigned char kat1094_retbits[] = { + 0x2c, 0xb6, 0x51, 0x52, 0x4a, 0x6b, 0x09, 0x4c, 0x93, 0xe8, 0xd1, 0xca, + 0xf3, 0x3b, 0xef, 0x26, 0x9d, 0x26, 0x7e, 0xaa, 0xe0, 0x84, 0x9c, 0x35, + 0x9b, 0x52, 0xd3, 0x46, 0x40, 0xf1, 0x4a, 0xd4, 0xa7, 0xfe, 0x1c, 0x02, + 0x1f, 0xbc, 0xdc, 0xe6, 0x65, 0x0e, 0xb6, 0x16, 0xae, 0xc4, 0xa0, 0x57, + 0x39, 0xce, 0x3d, 0xd1, 0xd6, 0x5e, 0x9f, 0x46, 0x66, 0x57, 0x5e, 0x01, + 0x2c, 0x50, 0xf0, 0x85, +}; +static const struct drbg_kat_no_reseed kat1094_t = { + 13, kat1094_entropyin, kat1094_nonce, kat1094_persstr, + kat1094_addin0, kat1094_addin1, kat1094_retbits +}; +static const struct drbg_kat kat1094 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1094_t +}; + +static const unsigned char kat1095_entropyin[] = { + 0x68, 0x9f, 0x2f, 0x61, 0x67, 0x03, 0x60, 0x47, 0x2b, 0x24, 0xf8, 0xad, + 0x36, 0x0f, 0xe0, 0x8e, 0x24, 0x9b, 0x59, 0xec, 0x0c, 0xc4, 0x67, 0x5b, + 0x08, 0xac, 0x07, 0x93, 0xda, 0xe6, 0x95, 0x6d, 0xb8, 0xf6, 0x31, 0x08, + 0x57, 0x4e, 0xf0, 0xc2, +}; +static const unsigned char kat1095_nonce[] = {0}; +static const unsigned char kat1095_persstr[] = {0}; +static const unsigned char kat1095_addin0[] = {0}; +static const unsigned char kat1095_addin1[] = {0}; +static const unsigned char kat1095_retbits[] = { + 0x08, 0x97, 0x85, 0x61, 0x29, 0xa4, 0x2d, 0x78, 0x5b, 0x60, 0xd7, 0x70, + 0x83, 0x6a, 0x68, 0x19, 0x8b, 0xc7, 0x6e, 0x29, 0x84, 0x0a, 0xbb, 0x08, + 0x02, 0xba, 0x9d, 0x47, 0x1a, 0xcf, 0x8b, 0x8b, 0xff, 0x3f, 0x02, 0xe1, + 0xa1, 0xc3, 0x40, 0x15, 0xad, 0x51, 0xce, 0x85, 0x96, 0x9b, 0x12, 0xea, + 0x65, 0x23, 0x6b, 0xc1, 0x2d, 0x34, 0x9c, 0x03, 0xf2, 0x03, 0x1f, 0xde, + 0x19, 0xcb, 0x22, 0xc2, +}; +static const struct drbg_kat_no_reseed kat1095_t = { + 14, kat1095_entropyin, kat1095_nonce, kat1095_persstr, + kat1095_addin0, kat1095_addin1, kat1095_retbits +}; +static const struct drbg_kat kat1095 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1095_t +}; + +static const unsigned char kat1096_entropyin[] = { + 0xbb, 0x15, 0x47, 0xeb, 0x67, 0x4b, 0x42, 0xdf, 0xd1, 0xa5, 0x62, 0x38, + 0xe8, 0x5f, 0x48, 0x30, 0x56, 0x8b, 0xcf, 0x63, 0x43, 0x80, 0xdf, 0xd0, + 0x46, 0xd9, 0xeb, 0x02, 0x9c, 0xaf, 0xe8, 0xe8, 0xb4, 0x5d, 0x9d, 0x7d, + 0xbe, 0x80, 0x2a, 0x5a, +}; +static const unsigned char kat1096_nonce[] = {0}; +static const unsigned char kat1096_persstr[] = {0}; +static const unsigned char kat1096_addin0[] = { + 0x45, 0x2c, 0x84, 0x64, 0x47, 0x6e, 0x0f, 0x34, 0xf6, 0x7d, 0xd0, 0x10, + 0x8b, 0xa2, 0x02, 0x45, 0xd7, 0xb5, 0xe3, 0xd8, 0x2f, 0xdf, 0x95, 0x46, + 0x19, 0x02, 0x62, 0x29, 0x62, 0x43, 0x24, 0xf3, 0x19, 0xb1, 0x68, 0xf2, + 0xf4, 0x46, 0x31, 0x59, +}; +static const unsigned char kat1096_addin1[] = { + 0xe5, 0x9a, 0x88, 0xdb, 0x5a, 0xc9, 0x14, 0x9b, 0xe7, 0x2f, 0xe0, 0xda, + 0x55, 0x03, 0x9c, 0xe2, 0xd0, 0x85, 0x97, 0x91, 0x6d, 0xa2, 0xc3, 0x5d, + 0x90, 0x0d, 0x9a, 0x6a, 0xde, 0x37, 0x23, 0xca, 0x2e, 0x43, 0x51, 0x07, + 0x99, 0xc1, 0x1f, 0xdc, +}; +static const unsigned char kat1096_retbits[] = { + 0x42, 0x6f, 0x28, 0x62, 0x26, 0x06, 0x7a, 0x1d, 0xd0, 0xd2, 0x0e, 0x2a, + 0x04, 0x80, 0x20, 0xfc, 0x87, 0xb3, 0xbf, 0xd5, 0x50, 0x09, 0x3c, 0x90, + 0xf4, 0x9b, 0xd5, 0x23, 0x01, 0xe2, 0x3e, 0xc5, 0x29, 0xff, 0xe7, 0x34, + 0x9f, 0x7a, 0xb5, 0x13, 0x6b, 0xff, 0xbc, 0xfc, 0x29, 0x4a, 0x2a, 0x6d, + 0x5d, 0x45, 0x9d, 0x91, 0xaf, 0x89, 0x36, 0x7c, 0xd7, 0xf7, 0x0a, 0x6b, + 0xbc, 0x76, 0xb4, 0x00, +}; +static const struct drbg_kat_no_reseed kat1096_t = { + 0, kat1096_entropyin, kat1096_nonce, kat1096_persstr, + kat1096_addin0, kat1096_addin1, kat1096_retbits +}; +static const struct drbg_kat kat1096 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1096_t +}; + +static const unsigned char kat1097_entropyin[] = { + 0x54, 0x77, 0x42, 0xbf, 0x41, 0x98, 0x50, 0x5e, 0x52, 0x2a, 0x5e, 0x92, + 0xf4, 0x32, 0x87, 0x1c, 0x20, 0xa1, 0x69, 0xd0, 0xfb, 0x80, 0x9b, 0xbf, + 0x7c, 0xa3, 0x55, 0x3d, 0x31, 0x54, 0x6f, 0xaf, 0xbe, 0xc4, 0xc4, 0xdc, + 0x43, 0x46, 0x1e, 0x28, +}; +static const unsigned char kat1097_nonce[] = {0}; +static const unsigned char kat1097_persstr[] = {0}; +static const unsigned char kat1097_addin0[] = { + 0x14, 0x16, 0xb9, 0xc0, 0xe4, 0x45, 0x98, 0x01, 0xb3, 0x9a, 0x8e, 0xbb, + 0xd1, 0x1b, 0x1c, 0xf7, 0xda, 0xe4, 0x24, 0x56, 0xcf, 0xca, 0x76, 0x88, + 0x59, 0x53, 0x0e, 0x35, 0xba, 0x9a, 0x95, 0xcc, 0xde, 0xa5, 0x64, 0x80, + 0x44, 0x6f, 0xac, 0x7d, +}; +static const unsigned char kat1097_addin1[] = { + 0xab, 0x40, 0x90, 0x1b, 0x3a, 0xa3, 0xa3, 0xeb, 0xcc, 0xb0, 0x1e, 0xc6, + 0x0f, 0xd2, 0x34, 0x96, 0x22, 0x5e, 0xa5, 0xcd, 0x6d, 0x6c, 0x0a, 0x83, + 0x4b, 0xb8, 0x0d, 0x5e, 0x82, 0x2d, 0xec, 0xa0, 0x13, 0xca, 0x52, 0xaf, + 0x44, 0x86, 0x6f, 0x40, +}; +static const unsigned char kat1097_retbits[] = { + 0x23, 0x26, 0x32, 0x42, 0x8a, 0x8b, 0xba, 0xbd, 0x61, 0x48, 0xea, 0x48, + 0xf1, 0xfe, 0x7e, 0xf9, 0xa3, 0x01, 0xcf, 0x39, 0xf5, 0xf4, 0x06, 0x80, + 0xbf, 0x84, 0x6e, 0x31, 0x92, 0xb2, 0xeb, 0x92, 0x24, 0x26, 0x2a, 0x01, + 0xdb, 0xbb, 0xc6, 0x63, 0x62, 0xce, 0x7c, 0x11, 0x69, 0x9e, 0x0f, 0xdd, + 0xca, 0xd5, 0x78, 0xf0, 0x61, 0x22, 0xa6, 0xd1, 0x93, 0x51, 0x6f, 0x6a, + 0x40, 0x30, 0xf2, 0xb5, +}; +static const struct drbg_kat_no_reseed kat1097_t = { + 1, kat1097_entropyin, kat1097_nonce, kat1097_persstr, + kat1097_addin0, kat1097_addin1, kat1097_retbits +}; +static const struct drbg_kat kat1097 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1097_t +}; + +static const unsigned char kat1098_entropyin[] = { + 0xe9, 0x9e, 0x0b, 0x8c, 0x29, 0xc3, 0x92, 0xd5, 0x96, 0x08, 0xb1, 0x7d, + 0xcb, 0x51, 0x68, 0xea, 0xe5, 0xc4, 0xe8, 0x2e, 0x0d, 0x13, 0xa1, 0x6e, + 0x68, 0xa5, 0x48, 0xdf, 0x41, 0xc5, 0x9e, 0xc0, 0x9b, 0xb2, 0xaf, 0x61, + 0x95, 0x73, 0xbf, 0x12, +}; +static const unsigned char kat1098_nonce[] = {0}; +static const unsigned char kat1098_persstr[] = {0}; +static const unsigned char kat1098_addin0[] = { + 0xf5, 0x19, 0x91, 0xa5, 0x60, 0xbf, 0x08, 0x48, 0x95, 0x9d, 0xe7, 0x02, + 0x9a, 0x35, 0x7c, 0xc1, 0xcc, 0x88, 0xd5, 0x9c, 0x5e, 0x5b, 0x8d, 0xa8, + 0x24, 0x95, 0x43, 0xb8, 0xdf, 0xc0, 0xec, 0xa6, 0x8a, 0x39, 0x2f, 0x10, + 0xde, 0x8a, 0xea, 0x45, +}; +static const unsigned char kat1098_addin1[] = { + 0xc2, 0xed, 0x95, 0x3d, 0xc9, 0x50, 0xfb, 0x8d, 0x66, 0x9f, 0x3a, 0x0d, + 0xea, 0xbc, 0x9f, 0x03, 0x62, 0x05, 0xce, 0x67, 0xbc, 0x43, 0xd9, 0x8a, + 0x35, 0xaf, 0x87, 0x51, 0x96, 0xa0, 0x40, 0xd8, 0xf2, 0x78, 0xb9, 0x79, + 0xf9, 0x06, 0x70, 0x71, +}; +static const unsigned char kat1098_retbits[] = { + 0xad, 0x5e, 0xd9, 0x4b, 0x0d, 0xc5, 0x25, 0xf4, 0x0a, 0xaf, 0xa5, 0xf5, + 0xe9, 0x58, 0xfd, 0x78, 0x51, 0x0d, 0x8f, 0x50, 0x3e, 0x45, 0x16, 0xbc, + 0x96, 0x79, 0x06, 0xad, 0x3b, 0x32, 0x06, 0x6e, 0x02, 0x26, 0x2e, 0x49, + 0x90, 0xe6, 0xe1, 0x41, 0x7e, 0xd0, 0x21, 0xe4, 0x25, 0xc3, 0xc7, 0xda, + 0xa2, 0x60, 0x49, 0xce, 0x23, 0xcf, 0x28, 0xbb, 0xd3, 0x33, 0x4c, 0x6c, + 0x95, 0x24, 0xf0, 0x75, +}; +static const struct drbg_kat_no_reseed kat1098_t = { + 2, kat1098_entropyin, kat1098_nonce, kat1098_persstr, + kat1098_addin0, kat1098_addin1, kat1098_retbits +}; +static const struct drbg_kat kat1098 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1098_t +}; + +static const unsigned char kat1099_entropyin[] = { + 0x74, 0x27, 0x26, 0xfa, 0x37, 0xe1, 0x61, 0x6f, 0x66, 0x1f, 0x71, 0xca, + 0xe2, 0x59, 0xb6, 0xe5, 0x02, 0x5d, 0x7d, 0x9d, 0xfa, 0xf2, 0x39, 0x88, + 0x95, 0xec, 0x4b, 0xe2, 0x00, 0x40, 0xae, 0xad, 0x9a, 0x9a, 0x14, 0x2e, + 0x70, 0x2e, 0x9f, 0xfd, +}; +static const unsigned char kat1099_nonce[] = {0}; +static const unsigned char kat1099_persstr[] = {0}; +static const unsigned char kat1099_addin0[] = { + 0x13, 0x43, 0x7a, 0xa4, 0x8e, 0x4a, 0xa3, 0x2d, 0x87, 0x5b, 0x7d, 0x5d, + 0xd0, 0xc9, 0x0e, 0x52, 0xcc, 0x39, 0x72, 0xc0, 0x66, 0x90, 0x59, 0xb6, + 0xa2, 0x3d, 0xd0, 0x47, 0x9d, 0x14, 0xb7, 0x77, 0x60, 0xb1, 0x49, 0xf4, + 0xff, 0xdc, 0xf3, 0xa8, +}; +static const unsigned char kat1099_addin1[] = { + 0x94, 0x23, 0xca, 0xd2, 0x8e, 0x9a, 0x54, 0x8d, 0xed, 0x0b, 0x0b, 0xcd, + 0x04, 0xa6, 0xfc, 0x35, 0xbc, 0x4e, 0x6b, 0x03, 0x24, 0x0e, 0x2c, 0xc3, + 0x37, 0x54, 0x70, 0x2e, 0xce, 0x84, 0xca, 0xb9, 0xdf, 0xdd, 0xaa, 0xbd, + 0xf8, 0x83, 0x7a, 0x44, +}; +static const unsigned char kat1099_retbits[] = { + 0x49, 0x6a, 0x31, 0x68, 0x8b, 0xea, 0xe1, 0x47, 0xd3, 0x20, 0xb7, 0xcf, + 0x5f, 0x70, 0x22, 0x6a, 0x76, 0x5c, 0x53, 0xe0, 0xc2, 0xe6, 0x0c, 0xb0, + 0x2b, 0xd0, 0xaa, 0xdf, 0xd3, 0x6b, 0x75, 0xdd, 0x8d, 0xe2, 0x18, 0x10, + 0xea, 0xa8, 0x6b, 0x7a, 0xdd, 0xfd, 0x86, 0x26, 0xa0, 0xb4, 0xa5, 0x47, + 0xe2, 0x1b, 0xef, 0xd2, 0x0e, 0x30, 0x1f, 0xf5, 0x99, 0x01, 0x3a, 0x95, + 0xf8, 0x26, 0xe7, 0x7b, +}; +static const struct drbg_kat_no_reseed kat1099_t = { + 3, kat1099_entropyin, kat1099_nonce, kat1099_persstr, + kat1099_addin0, kat1099_addin1, kat1099_retbits +}; +static const struct drbg_kat kat1099 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1099_t +}; + +static const unsigned char kat1100_entropyin[] = { + 0x34, 0xcb, 0xbb, 0xc0, 0xb0, 0xd1, 0x7d, 0xfa, 0x5b, 0xfa, 0x5c, 0x24, + 0xf4, 0xb5, 0x94, 0x65, 0x99, 0xd8, 0xad, 0x1c, 0x2a, 0x97, 0xcd, 0x55, + 0xd4, 0x67, 0x9e, 0xf0, 0xf2, 0x91, 0xbb, 0x12, 0xcb, 0x52, 0x8b, 0x54, + 0x13, 0x98, 0x34, 0xab, +}; +static const unsigned char kat1100_nonce[] = {0}; +static const unsigned char kat1100_persstr[] = {0}; +static const unsigned char kat1100_addin0[] = { + 0x48, 0x20, 0x4f, 0xed, 0x9e, 0x52, 0xe2, 0x5c, 0x9d, 0x44, 0x23, 0x64, + 0x00, 0x71, 0x0a, 0x1b, 0xc4, 0x6c, 0x40, 0x2b, 0x68, 0x5f, 0x62, 0xbc, + 0x9f, 0x74, 0xc8, 0x14, 0x68, 0xbe, 0x4f, 0x16, 0xb7, 0x76, 0x09, 0xfa, + 0x2b, 0x26, 0x73, 0x81, +}; +static const unsigned char kat1100_addin1[] = { + 0x40, 0xca, 0x82, 0x16, 0xb9, 0x9c, 0x04, 0x42, 0x82, 0xd7, 0xc4, 0x05, + 0x5f, 0x23, 0x90, 0x39, 0x43, 0xb4, 0xfc, 0xce, 0x60, 0xa5, 0x9c, 0x77, + 0xeb, 0xf6, 0x52, 0x6a, 0x50, 0x6d, 0x69, 0xe7, 0xaa, 0xe6, 0x67, 0x75, + 0x9f, 0x2c, 0xc4, 0xb3, +}; +static const unsigned char kat1100_retbits[] = { + 0x05, 0xd0, 0x4f, 0x03, 0x97, 0x12, 0x32, 0x9e, 0xbc, 0x09, 0x56, 0x48, + 0x35, 0xc9, 0x58, 0x5b, 0x51, 0x04, 0x32, 0xa3, 0x13, 0x63, 0x41, 0xd0, + 0x4f, 0x9b, 0x8a, 0x46, 0xf1, 0xa4, 0xfe, 0x4b, 0xb0, 0x91, 0x54, 0x13, + 0x18, 0x36, 0x72, 0x81, 0x66, 0x5f, 0x63, 0xc1, 0x20, 0x63, 0xa3, 0xa9, + 0x1c, 0xa5, 0x31, 0x38, 0xb9, 0x75, 0x6b, 0x8d, 0x67, 0xa7, 0x7a, 0x35, + 0x82, 0x4e, 0x2b, 0xa7, +}; +static const struct drbg_kat_no_reseed kat1100_t = { + 4, kat1100_entropyin, kat1100_nonce, kat1100_persstr, + kat1100_addin0, kat1100_addin1, kat1100_retbits +}; +static const struct drbg_kat kat1100 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1100_t +}; + +static const unsigned char kat1101_entropyin[] = { + 0xc0, 0x56, 0x4c, 0xf0, 0xe8, 0x76, 0x34, 0xee, 0x0b, 0x78, 0x47, 0xf0, + 0x23, 0xaf, 0x21, 0xb3, 0xd3, 0xd4, 0x96, 0xea, 0x2e, 0x19, 0x38, 0x92, + 0x4f, 0xe7, 0xec, 0x42, 0x1f, 0x3a, 0xa1, 0x3a, 0xae, 0x27, 0x72, 0x08, + 0xdc, 0xa1, 0x40, 0x35, +}; +static const unsigned char kat1101_nonce[] = {0}; +static const unsigned char kat1101_persstr[] = {0}; +static const unsigned char kat1101_addin0[] = { + 0xa0, 0xf9, 0x93, 0x6e, 0xe1, 0xe9, 0x26, 0x82, 0xfc, 0x43, 0x42, 0xae, + 0x23, 0x74, 0xaa, 0x25, 0x90, 0xcb, 0xe3, 0xc6, 0x24, 0x34, 0x2c, 0xac, + 0x01, 0xdd, 0x19, 0x6b, 0x48, 0x11, 0xb4, 0x47, 0xff, 0xb6, 0x94, 0xb3, + 0x07, 0x89, 0xf8, 0x23, +}; +static const unsigned char kat1101_addin1[] = { + 0x6f, 0x94, 0xee, 0xec, 0x17, 0x61, 0xb8, 0x47, 0x80, 0x86, 0x6b, 0x40, + 0x32, 0x13, 0x94, 0x8c, 0xcd, 0x10, 0x65, 0x12, 0xb0, 0xbd, 0x09, 0xd2, + 0x10, 0xcc, 0x9c, 0x2d, 0x62, 0x20, 0x07, 0x2c, 0x32, 0xb0, 0x60, 0xf5, + 0x13, 0x64, 0x85, 0xb6, +}; +static const unsigned char kat1101_retbits[] = { + 0xa0, 0xa8, 0x96, 0x18, 0x28, 0xde, 0xc5, 0x9b, 0x3b, 0x0f, 0x8b, 0x63, + 0x17, 0xd3, 0xd1, 0x72, 0x2e, 0xf7, 0x05, 0xaa, 0x32, 0x7f, 0x52, 0x49, + 0xeb, 0x69, 0x87, 0xe5, 0xdf, 0x07, 0xf1, 0xdf, 0x2d, 0x90, 0x51, 0xb3, + 0xe7, 0x23, 0x93, 0x52, 0x49, 0x0e, 0x01, 0xdd, 0x77, 0x8d, 0x01, 0x22, + 0xe1, 0x2e, 0x6e, 0x51, 0xab, 0x8c, 0xd0, 0xd9, 0x4c, 0x65, 0x24, 0xa2, + 0x58, 0x41, 0xad, 0x96, +}; +static const struct drbg_kat_no_reseed kat1101_t = { + 5, kat1101_entropyin, kat1101_nonce, kat1101_persstr, + kat1101_addin0, kat1101_addin1, kat1101_retbits +}; +static const struct drbg_kat kat1101 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1101_t +}; + +static const unsigned char kat1102_entropyin[] = { + 0xd0, 0xa3, 0x2b, 0x50, 0xab, 0x62, 0x7f, 0xbe, 0xe1, 0x61, 0xa5, 0x79, + 0xce, 0x3a, 0xbe, 0xbb, 0x2b, 0xb8, 0x80, 0xba, 0xf2, 0xd9, 0x58, 0xdf, + 0xe5, 0x2e, 0x3f, 0x3c, 0x15, 0xe2, 0x98, 0x43, 0x39, 0xf2, 0x8a, 0x53, + 0x83, 0x34, 0x75, 0x84, +}; +static const unsigned char kat1102_nonce[] = {0}; +static const unsigned char kat1102_persstr[] = {0}; +static const unsigned char kat1102_addin0[] = { + 0x92, 0x0a, 0x6a, 0x0e, 0x74, 0xc9, 0xbc, 0x27, 0x5d, 0xee, 0x10, 0x18, + 0x98, 0x9e, 0x87, 0xcf, 0xd7, 0x03, 0xc3, 0x0f, 0x1b, 0x4b, 0x88, 0x92, + 0x33, 0x3e, 0x08, 0xf9, 0xfc, 0x50, 0xbe, 0x87, 0x4b, 0xca, 0x0a, 0x40, + 0xac, 0x2e, 0x3b, 0xe3, +}; +static const unsigned char kat1102_addin1[] = { + 0x53, 0xd7, 0xb7, 0x17, 0x9f, 0x3a, 0x50, 0xf6, 0x27, 0xc5, 0xcc, 0x18, + 0x13, 0xd0, 0x4c, 0x81, 0x32, 0xcc, 0x92, 0xd9, 0x22, 0xd2, 0x1f, 0x60, + 0x7e, 0x41, 0xb6, 0x82, 0xd0, 0x10, 0x70, 0x26, 0x3d, 0xdb, 0x34, 0x72, + 0x1f, 0x87, 0x89, 0x46, +}; +static const unsigned char kat1102_retbits[] = { + 0x3b, 0x74, 0x76, 0x6a, 0x5c, 0x88, 0x27, 0x76, 0xe7, 0xea, 0x62, 0x2b, + 0x06, 0x09, 0x6b, 0x81, 0x43, 0x97, 0x80, 0x02, 0x88, 0x3a, 0xaa, 0x64, + 0xa1, 0x8d, 0xe1, 0x59, 0x7e, 0x83, 0xa4, 0x40, 0x27, 0x16, 0x55, 0xc7, + 0x71, 0xcb, 0x71, 0x7e, 0x0f, 0x80, 0x4d, 0x7f, 0x6d, 0xfd, 0x88, 0x71, + 0x53, 0x07, 0x33, 0xcc, 0x55, 0xc8, 0xe2, 0x09, 0x47, 0xd7, 0x2a, 0xb3, + 0xa1, 0x5d, 0xa7, 0x89, +}; +static const struct drbg_kat_no_reseed kat1102_t = { + 6, kat1102_entropyin, kat1102_nonce, kat1102_persstr, + kat1102_addin0, kat1102_addin1, kat1102_retbits +}; +static const struct drbg_kat kat1102 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1102_t +}; + +static const unsigned char kat1103_entropyin[] = { + 0xb1, 0xd5, 0x93, 0xc0, 0xb0, 0x7d, 0x76, 0xc3, 0x34, 0x5e, 0x87, 0x84, + 0x29, 0xae, 0xaa, 0x60, 0x0e, 0x5c, 0x5a, 0x1e, 0xdd, 0xb3, 0x23, 0xd1, + 0x41, 0xb7, 0xa7, 0xa0, 0xfa, 0xa6, 0xd6, 0x93, 0x8b, 0x96, 0x63, 0x42, + 0x50, 0xd6, 0x27, 0x79, +}; +static const unsigned char kat1103_nonce[] = {0}; +static const unsigned char kat1103_persstr[] = {0}; +static const unsigned char kat1103_addin0[] = { + 0xdc, 0x64, 0x1f, 0x51, 0xfc, 0x6c, 0x76, 0x2a, 0xa8, 0x91, 0xf1, 0xf6, + 0xd5, 0x60, 0x5c, 0xfe, 0x5a, 0xd0, 0x8c, 0x0c, 0xc8, 0xe7, 0x71, 0xda, + 0x25, 0x4f, 0x69, 0x12, 0x15, 0x98, 0xa3, 0x5d, 0xe6, 0x19, 0xf5, 0x27, + 0x03, 0xf1, 0x16, 0x72, +}; +static const unsigned char kat1103_addin1[] = { + 0x48, 0xf2, 0x28, 0x6a, 0x84, 0xca, 0x06, 0x21, 0xb4, 0x58, 0x02, 0xe6, + 0x7b, 0x54, 0xa3, 0xa8, 0xe1, 0x8a, 0x64, 0x73, 0x13, 0xcd, 0x45, 0xe3, + 0xf0, 0x0c, 0xc9, 0x92, 0x41, 0x3b, 0xb0, 0x6c, 0xbb, 0x3d, 0x59, 0x8f, + 0x7e, 0xa3, 0xb9, 0x78, +}; +static const unsigned char kat1103_retbits[] = { + 0xb2, 0x4f, 0xdf, 0x5b, 0x20, 0x4b, 0x8a, 0xe7, 0xc5, 0x9d, 0xae, 0x3e, + 0x9e, 0x77, 0x3b, 0xbc, 0x29, 0x27, 0x28, 0x98, 0x38, 0x05, 0xc8, 0x05, + 0x68, 0xe2, 0xbd, 0x85, 0xfe, 0x0e, 0x3d, 0x0a, 0x52, 0xef, 0xd9, 0xc4, + 0x31, 0x23, 0x6e, 0x32, 0xd2, 0x8b, 0x7c, 0x0d, 0x2f, 0x7e, 0x8b, 0x0b, + 0x92, 0xed, 0x51, 0x8f, 0x3a, 0x93, 0x30, 0x16, 0x2e, 0xa3, 0xac, 0xf9, + 0x73, 0xf7, 0xec, 0x6d, +}; +static const struct drbg_kat_no_reseed kat1103_t = { + 7, kat1103_entropyin, kat1103_nonce, kat1103_persstr, + kat1103_addin0, kat1103_addin1, kat1103_retbits +}; +static const struct drbg_kat kat1103 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1103_t +}; + +static const unsigned char kat1104_entropyin[] = { + 0x65, 0xbb, 0xe4, 0x0f, 0x73, 0x83, 0xcc, 0x24, 0x65, 0x9c, 0x02, 0xd2, + 0x2f, 0x8c, 0xb6, 0x29, 0x7d, 0x85, 0x93, 0xd5, 0x16, 0x88, 0xea, 0xed, + 0xcd, 0x85, 0xbc, 0x59, 0xd9, 0x55, 0x2d, 0x7e, 0x7a, 0x00, 0xdb, 0x3b, + 0xb7, 0xff, 0x09, 0x1b, +}; +static const unsigned char kat1104_nonce[] = {0}; +static const unsigned char kat1104_persstr[] = {0}; +static const unsigned char kat1104_addin0[] = { + 0x7a, 0x51, 0xee, 0x23, 0x2f, 0xa7, 0x78, 0x20, 0x41, 0xc0, 0xb5, 0xc5, + 0x8e, 0x43, 0xd7, 0x75, 0x4d, 0xe3, 0x5d, 0x51, 0xec, 0xa8, 0x77, 0x9b, + 0x88, 0x9d, 0x97, 0x04, 0xca, 0x7a, 0xd8, 0x8f, 0x08, 0x5e, 0x2b, 0xe4, + 0x91, 0xf7, 0xc3, 0x31, +}; +static const unsigned char kat1104_addin1[] = { + 0xa2, 0x2d, 0x84, 0xc0, 0x28, 0x37, 0x43, 0x4f, 0xef, 0x33, 0xe6, 0x08, + 0x45, 0x57, 0x8e, 0x88, 0x14, 0xa9, 0x79, 0xee, 0x49, 0x3d, 0xaa, 0xba, + 0xca, 0xd8, 0x82, 0x03, 0xdf, 0xa0, 0x5b, 0x8e, 0x03, 0xb6, 0xa3, 0xff, + 0x51, 0x18, 0x09, 0x83, +}; +static const unsigned char kat1104_retbits[] = { + 0x0b, 0x12, 0x9a, 0x15, 0x02, 0x17, 0xca, 0xcc, 0x25, 0x15, 0xde, 0x01, + 0xa7, 0xd5, 0xf7, 0xa9, 0xdc, 0xb7, 0x64, 0xbd, 0x2f, 0x57, 0x95, 0x83, + 0x37, 0x2d, 0x37, 0x3e, 0x7f, 0xe9, 0x1e, 0xc5, 0xc8, 0xcb, 0xb2, 0xf0, + 0x1c, 0xcd, 0x07, 0xf3, 0x27, 0x76, 0x83, 0x00, 0xb8, 0xb7, 0x53, 0x92, + 0xd0, 0x5b, 0xd8, 0xa4, 0x11, 0x27, 0xbe, 0xe1, 0x93, 0xbe, 0x2e, 0xba, + 0xbb, 0xe2, 0xf6, 0x92, +}; +static const struct drbg_kat_no_reseed kat1104_t = { + 8, kat1104_entropyin, kat1104_nonce, kat1104_persstr, + kat1104_addin0, kat1104_addin1, kat1104_retbits +}; +static const struct drbg_kat kat1104 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1104_t +}; + +static const unsigned char kat1105_entropyin[] = { + 0x47, 0xf2, 0x94, 0x17, 0xb0, 0x7b, 0x4a, 0x21, 0xf8, 0xa9, 0x0c, 0x4d, + 0x32, 0x40, 0x81, 0x00, 0xbd, 0xac, 0x0d, 0x21, 0xc9, 0x38, 0xc4, 0x4f, + 0x4f, 0x2d, 0x03, 0x65, 0x06, 0x47, 0xef, 0x6d, 0xea, 0x50, 0x11, 0xa1, + 0x99, 0xba, 0x12, 0x79, +}; +static const unsigned char kat1105_nonce[] = {0}; +static const unsigned char kat1105_persstr[] = {0}; +static const unsigned char kat1105_addin0[] = { + 0x9f, 0x67, 0x2d, 0xdf, 0x59, 0xd1, 0xf1, 0x1f, 0x95, 0x50, 0xc3, 0x9d, + 0xa5, 0xcc, 0x6c, 0x3d, 0x78, 0x79, 0xd5, 0xa6, 0x1d, 0x90, 0x16, 0x3b, + 0x6d, 0xa9, 0xf8, 0x17, 0x09, 0xe1, 0xde, 0x6d, 0xf5, 0x0d, 0x46, 0x05, + 0x7c, 0x27, 0xf8, 0xd0, +}; +static const unsigned char kat1105_addin1[] = { + 0xa0, 0x08, 0x31, 0x14, 0x50, 0x49, 0x55, 0xae, 0x43, 0xe7, 0x9a, 0x31, + 0xf1, 0x9c, 0x6b, 0xce, 0xe6, 0x1c, 0x66, 0x14, 0xf9, 0x90, 0xbc, 0xab, + 0xba, 0xc2, 0x05, 0x9f, 0x21, 0x40, 0xf7, 0x02, 0xc5, 0x6c, 0x23, 0xe9, + 0x04, 0x79, 0x8a, 0xca, +}; +static const unsigned char kat1105_retbits[] = { + 0x5e, 0xda, 0xfa, 0xb7, 0x17, 0xdf, 0xee, 0x41, 0xbf, 0xde, 0xf1, 0x24, + 0x60, 0x7f, 0x4c, 0x9e, 0xe4, 0x50, 0xe0, 0xeb, 0xd4, 0x77, 0xb0, 0xb3, + 0x6f, 0xdf, 0xb1, 0x7a, 0xaf, 0x8d, 0x18, 0x94, 0x8f, 0x37, 0x7a, 0x94, + 0xf5, 0xc8, 0x78, 0xa6, 0x04, 0x6d, 0x4d, 0xcf, 0xbc, 0x78, 0xe7, 0x88, + 0xdc, 0x25, 0xff, 0xd1, 0x62, 0x3e, 0xdf, 0xcb, 0x03, 0x8f, 0xbe, 0x35, + 0xd8, 0xe1, 0x63, 0xa3, +}; +static const struct drbg_kat_no_reseed kat1105_t = { + 9, kat1105_entropyin, kat1105_nonce, kat1105_persstr, + kat1105_addin0, kat1105_addin1, kat1105_retbits +}; +static const struct drbg_kat kat1105 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1105_t +}; + +static const unsigned char kat1106_entropyin[] = { + 0xe3, 0x15, 0xb3, 0xb2, 0x7d, 0xec, 0x3b, 0x59, 0xc2, 0x6d, 0x9c, 0x1c, + 0xe4, 0x22, 0x14, 0x6b, 0x20, 0x62, 0x1e, 0x5d, 0x67, 0x74, 0x9a, 0x7f, + 0xa0, 0x86, 0x19, 0x79, 0x7f, 0xd4, 0xde, 0x0e, 0xe5, 0x32, 0x83, 0xa7, + 0x2a, 0x9c, 0x65, 0x5f, +}; +static const unsigned char kat1106_nonce[] = {0}; +static const unsigned char kat1106_persstr[] = {0}; +static const unsigned char kat1106_addin0[] = { + 0x5d, 0x3c, 0x0e, 0xc0, 0xa2, 0x34, 0x4f, 0x72, 0x57, 0x4e, 0x62, 0x07, + 0x9d, 0x60, 0x51, 0x68, 0x73, 0x9d, 0x37, 0xe9, 0xa2, 0xeb, 0x9e, 0x44, + 0xd3, 0xd7, 0xe4, 0x66, 0x90, 0x39, 0x21, 0x9a, 0x25, 0xce, 0x58, 0x96, + 0x5d, 0xdb, 0x1a, 0xc3, +}; +static const unsigned char kat1106_addin1[] = { + 0xe2, 0x2f, 0x87, 0xe9, 0x99, 0x77, 0x46, 0x8e, 0x23, 0x12, 0x6e, 0x52, + 0x80, 0xa7, 0x75, 0x06, 0xa9, 0x90, 0x3c, 0xc4, 0x2f, 0xb3, 0x6c, 0x00, + 0x4e, 0x67, 0xd1, 0xa7, 0x23, 0xc8, 0xfb, 0xc8, 0x9c, 0x30, 0xbb, 0xc7, + 0x4f, 0x2b, 0x59, 0xa4, +}; +static const unsigned char kat1106_retbits[] = { + 0xd0, 0xf8, 0xfa, 0xa5, 0x52, 0x99, 0x68, 0x52, 0x74, 0xba, 0x49, 0x9d, + 0xe5, 0xbc, 0xaf, 0x58, 0x19, 0xdc, 0x9a, 0x5e, 0xe4, 0x0e, 0x89, 0xe9, + 0x41, 0x08, 0x2e, 0xd1, 0x02, 0xc6, 0x34, 0x30, 0x27, 0x4d, 0xfc, 0x60, + 0xf2, 0xdc, 0x25, 0xf8, 0x04, 0x95, 0x8a, 0xf5, 0xa3, 0xdc, 0x95, 0x57, + 0x6e, 0x11, 0x9c, 0x6d, 0xc3, 0x59, 0xba, 0xe7, 0x3b, 0xde, 0x1d, 0x2e, + 0x2b, 0xf4, 0x4f, 0xce, +}; +static const struct drbg_kat_no_reseed kat1106_t = { + 10, kat1106_entropyin, kat1106_nonce, kat1106_persstr, + kat1106_addin0, kat1106_addin1, kat1106_retbits +}; +static const struct drbg_kat kat1106 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1106_t +}; + +static const unsigned char kat1107_entropyin[] = { + 0x9b, 0x6f, 0xd5, 0x98, 0x50, 0x63, 0x60, 0x11, 0x9d, 0xd1, 0xcc, 0x9d, + 0xd9, 0xe0, 0x66, 0x3d, 0xa1, 0x5c, 0xa6, 0x01, 0x5b, 0x17, 0x26, 0x9c, + 0x6a, 0x38, 0x5c, 0xa1, 0x22, 0xa9, 0x85, 0x46, 0x00, 0xb8, 0x1d, 0x59, + 0x8a, 0xe2, 0xec, 0x9c, +}; +static const unsigned char kat1107_nonce[] = {0}; +static const unsigned char kat1107_persstr[] = {0}; +static const unsigned char kat1107_addin0[] = { + 0x4a, 0xd6, 0x87, 0xbf, 0x39, 0x63, 0x54, 0x5b, 0xd5, 0x77, 0x80, 0x0d, + 0x11, 0xc0, 0x8a, 0x3e, 0xb0, 0x68, 0x64, 0x30, 0x6a, 0x07, 0xc3, 0xe1, + 0x60, 0x5d, 0x3b, 0xf0, 0x9e, 0x61, 0xf1, 0xcb, 0xdb, 0x66, 0x88, 0x56, + 0xdd, 0x56, 0xcd, 0xc3, +}; +static const unsigned char kat1107_addin1[] = { + 0x9c, 0x6e, 0x72, 0xd6, 0xfb, 0x4d, 0x33, 0x9a, 0xbd, 0xfa, 0x0f, 0x78, + 0xdf, 0xf2, 0x59, 0xc2, 0x5f, 0x79, 0x71, 0x2c, 0x86, 0x43, 0xaf, 0xe3, + 0x74, 0x60, 0xa3, 0x5d, 0xc8, 0x40, 0x1d, 0x11, 0x27, 0x3c, 0x64, 0xb9, + 0x13, 0x0e, 0xbe, 0x85, +}; +static const unsigned char kat1107_retbits[] = { + 0x51, 0x64, 0xf5, 0xf3, 0xc4, 0xab, 0x12, 0x2d, 0xd2, 0xd8, 0xb6, 0xfa, + 0x24, 0x6d, 0xbf, 0x1e, 0xb2, 0x5b, 0x12, 0x04, 0x3a, 0x0f, 0x7a, 0x66, + 0xe8, 0x11, 0xf4, 0xbc, 0x55, 0x58, 0x2a, 0x31, 0x37, 0xa8, 0x39, 0x4b, + 0xfa, 0x05, 0xe8, 0xa5, 0x3d, 0x3c, 0x89, 0xe5, 0x6f, 0x77, 0xf7, 0x32, + 0x1d, 0x4a, 0x75, 0x72, 0xbd, 0x2e, 0xbf, 0x08, 0x86, 0xbe, 0xbc, 0xd0, + 0x1b, 0xce, 0x30, 0x31, +}; +static const struct drbg_kat_no_reseed kat1107_t = { + 11, kat1107_entropyin, kat1107_nonce, kat1107_persstr, + kat1107_addin0, kat1107_addin1, kat1107_retbits +}; +static const struct drbg_kat kat1107 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1107_t +}; + +static const unsigned char kat1108_entropyin[] = { + 0xd8, 0x76, 0x88, 0x96, 0x24, 0xfa, 0x9e, 0x06, 0x52, 0x16, 0x1d, 0x37, + 0xa7, 0x5f, 0xd9, 0x33, 0xfa, 0x98, 0x19, 0x23, 0xd1, 0x6b, 0xbf, 0x3f, + 0x2a, 0x54, 0xea, 0x0f, 0x60, 0x05, 0x21, 0x0e, 0xf4, 0x38, 0xd3, 0x6f, + 0xea, 0xc1, 0x0d, 0x99, +}; +static const unsigned char kat1108_nonce[] = {0}; +static const unsigned char kat1108_persstr[] = {0}; +static const unsigned char kat1108_addin0[] = { + 0xe7, 0x26, 0x58, 0x27, 0x62, 0x05, 0x33, 0x15, 0xae, 0x88, 0x65, 0x02, + 0x12, 0xb3, 0xdc, 0x83, 0x25, 0x02, 0x05, 0x94, 0xeb, 0xa0, 0xc5, 0x62, + 0xf3, 0x4a, 0xbb, 0x81, 0x1c, 0x8c, 0x27, 0x2f, 0xd1, 0x0f, 0x25, 0x47, + 0x39, 0xff, 0x2f, 0x33, +}; +static const unsigned char kat1108_addin1[] = { + 0x6d, 0xb3, 0x00, 0xb3, 0x6d, 0x44, 0xcc, 0x2d, 0x5d, 0x7e, 0x9f, 0xfc, + 0x1c, 0x8f, 0xb8, 0xda, 0x01, 0x7f, 0x66, 0xf7, 0xd5, 0xf4, 0x15, 0xa6, + 0xbf, 0x66, 0xfb, 0x1d, 0x37, 0x72, 0xb5, 0xad, 0xbd, 0x4b, 0xcc, 0x7b, + 0xe7, 0x7b, 0x6a, 0x4c, +}; +static const unsigned char kat1108_retbits[] = { + 0x37, 0xdc, 0xd8, 0x3c, 0xa5, 0xd4, 0x95, 0xe6, 0x32, 0xe7, 0xb0, 0x11, + 0xba, 0x80, 0xbb, 0xf3, 0x53, 0xff, 0x55, 0x22, 0x63, 0x2f, 0x73, 0x33, + 0xe8, 0x02, 0xd4, 0xce, 0x27, 0xc9, 0x17, 0x0f, 0x82, 0x39, 0xc9, 0x48, + 0x60, 0xf8, 0x11, 0xea, 0xfd, 0x0e, 0xe4, 0x4d, 0x50, 0x43, 0x72, 0x3a, + 0x15, 0xee, 0xd2, 0xb6, 0x24, 0x26, 0xaf, 0xb8, 0x93, 0xca, 0xaa, 0xde, + 0x08, 0x76, 0x2f, 0xb5, +}; +static const struct drbg_kat_no_reseed kat1108_t = { + 12, kat1108_entropyin, kat1108_nonce, kat1108_persstr, + kat1108_addin0, kat1108_addin1, kat1108_retbits +}; +static const struct drbg_kat kat1108 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1108_t +}; + +static const unsigned char kat1109_entropyin[] = { + 0x29, 0xcc, 0xe7, 0x0c, 0x6c, 0x9e, 0xc1, 0x9b, 0xe2, 0xad, 0x29, 0x55, + 0xc0, 0xd8, 0xf0, 0x27, 0xdc, 0x4d, 0x25, 0xd5, 0xfe, 0x4f, 0x66, 0xc4, + 0x64, 0x27, 0x23, 0x47, 0xf7, 0xb2, 0x2b, 0x83, 0x25, 0x2a, 0x91, 0xf0, + 0x37, 0xb6, 0x6a, 0x6b, +}; +static const unsigned char kat1109_nonce[] = {0}; +static const unsigned char kat1109_persstr[] = {0}; +static const unsigned char kat1109_addin0[] = { + 0xb6, 0x1a, 0xad, 0x7e, 0x7c, 0x4d, 0x3d, 0x83, 0xdf, 0x69, 0x20, 0x7e, + 0x5b, 0xa7, 0x5b, 0x5c, 0xd2, 0x68, 0xcb, 0x4b, 0x7b, 0xe5, 0x2b, 0x76, + 0x00, 0x8f, 0xc8, 0x89, 0x4e, 0xb0, 0x79, 0xdb, 0x4b, 0x4c, 0x0b, 0x3a, + 0x5a, 0x07, 0xf4, 0x09, +}; +static const unsigned char kat1109_addin1[] = { + 0x8a, 0xe0, 0xb1, 0x7a, 0x28, 0x70, 0x11, 0x92, 0xef, 0xbc, 0x60, 0xb3, + 0x75, 0x5f, 0x34, 0xdc, 0xc8, 0xca, 0x8d, 0x47, 0xd3, 0x5e, 0x71, 0x48, + 0xe2, 0xe9, 0x2a, 0x64, 0x94, 0x4e, 0xd2, 0xfa, 0xe6, 0x70, 0xe5, 0x7d, + 0x90, 0xaa, 0x2e, 0x81, +}; +static const unsigned char kat1109_retbits[] = { + 0x37, 0x31, 0x04, 0x1d, 0x50, 0x1f, 0x71, 0xb9, 0x83, 0x10, 0x5e, 0x48, + 0xa0, 0xfc, 0x60, 0x40, 0x41, 0xb5, 0x7f, 0xc4, 0x1f, 0x07, 0xff, 0xa6, + 0xa6, 0xc8, 0x88, 0x10, 0x38, 0x82, 0x9c, 0xb3, 0x2a, 0x96, 0x2f, 0x96, + 0x11, 0x0d, 0xbf, 0x5e, 0x18, 0x0a, 0x28, 0x4e, 0xf6, 0xa5, 0xfe, 0x7a, + 0x12, 0xa5, 0x38, 0x1c, 0x6e, 0xdb, 0x57, 0xb0, 0xd9, 0xb6, 0xf6, 0xef, + 0xe8, 0x0a, 0x51, 0xa4, +}; +static const struct drbg_kat_no_reseed kat1109_t = { + 13, kat1109_entropyin, kat1109_nonce, kat1109_persstr, + kat1109_addin0, kat1109_addin1, kat1109_retbits +}; +static const struct drbg_kat kat1109 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1109_t +}; + +static const unsigned char kat1110_entropyin[] = { + 0xd5, 0x5f, 0x35, 0xb4, 0xd2, 0xa0, 0xb5, 0x25, 0xfe, 0xe7, 0x4a, 0xef, + 0xbc, 0x3c, 0x00, 0x1c, 0xba, 0x7e, 0x4c, 0x3e, 0xe4, 0x7c, 0x5a, 0x0f, + 0x03, 0xa1, 0x55, 0xa0, 0x04, 0x79, 0xc0, 0x81, 0x56, 0x19, 0x0a, 0x00, + 0x1f, 0xe6, 0x92, 0x8d, +}; +static const unsigned char kat1110_nonce[] = {0}; +static const unsigned char kat1110_persstr[] = {0}; +static const unsigned char kat1110_addin0[] = { + 0xa0, 0xc8, 0xfb, 0x5b, 0xc6, 0x32, 0xce, 0xc6, 0xf7, 0xf7, 0xa3, 0x85, + 0x58, 0x7f, 0x27, 0xee, 0x3e, 0xf3, 0xdf, 0xeb, 0x5a, 0xa1, 0x3d, 0x97, + 0x80, 0x49, 0xc3, 0xd4, 0xa8, 0xe2, 0xff, 0x9b, 0xd3, 0x6d, 0x0e, 0xac, + 0xdf, 0x50, 0x29, 0xb8, +}; +static const unsigned char kat1110_addin1[] = { + 0xd2, 0xc1, 0xec, 0x49, 0xb1, 0xb0, 0xf8, 0x10, 0xae, 0x9a, 0x71, 0xfe, + 0x5d, 0x93, 0xff, 0xa4, 0x00, 0x4e, 0x05, 0xcf, 0x8f, 0xfb, 0x1e, 0x1e, + 0xac, 0xc1, 0x46, 0xc3, 0x7b, 0x3a, 0xf5, 0x25, 0x8b, 0x4e, 0x46, 0x22, + 0x2c, 0xf3, 0x39, 0x14, +}; +static const unsigned char kat1110_retbits[] = { + 0xf3, 0xef, 0x4c, 0x19, 0x2e, 0x85, 0xdc, 0xcd, 0x2d, 0xf5, 0xb1, 0xc5, + 0xf7, 0x91, 0xda, 0xca, 0x65, 0x36, 0x3d, 0x5f, 0x79, 0xbd, 0x49, 0x0b, + 0x7d, 0x92, 0x32, 0xb1, 0x9c, 0x60, 0x59, 0xaa, 0xeb, 0xc4, 0x94, 0xde, + 0xa3, 0x61, 0x52, 0x95, 0xf4, 0x07, 0xae, 0xc1, 0xaf, 0x3b, 0x86, 0x7a, + 0x6d, 0x94, 0xab, 0xdc, 0xc4, 0x1f, 0x68, 0xd2, 0xd9, 0xaf, 0xbe, 0xe1, + 0x96, 0x47, 0xf7, 0x48, +}; +static const struct drbg_kat_no_reseed kat1110_t = { + 14, kat1110_entropyin, kat1110_nonce, kat1110_persstr, + kat1110_addin0, kat1110_addin1, kat1110_retbits +}; +static const struct drbg_kat kat1110 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1110_t +}; + +static const unsigned char kat1111_entropyin[] = { + 0x73, 0xbc, 0x77, 0xfa, 0xae, 0x57, 0x5f, 0x53, 0x00, 0x91, 0x72, 0x66, + 0x95, 0xa1, 0x0f, 0xa8, 0xf3, 0x76, 0xdf, 0x07, 0x22, 0xd5, 0x6a, 0xe5, + 0xa2, 0xe9, 0xd7, 0xaf, 0x20, 0xbf, 0x52, 0xe8, 0x64, 0x97, 0x76, 0x1a, + 0xa9, 0x47, 0xcc, 0x04, +}; +static const unsigned char kat1111_nonce[] = {0}; +static const unsigned char kat1111_persstr[] = { + 0xc2, 0xd2, 0x78, 0xf6, 0xbb, 0x39, 0xd3, 0x44, 0x52, 0xaf, 0xe6, 0xa7, + 0xbb, 0xf5, 0x9c, 0x8e, 0xff, 0xc7, 0xeb, 0xbb, 0x9b, 0x45, 0xc1, 0x29, + 0x59, 0x0a, 0x23, 0x7a, 0x74, 0x37, 0x54, 0x2a, 0x4c, 0x72, 0xd6, 0xcf, + 0xfb, 0x3f, 0x80, 0x40, +}; +static const unsigned char kat1111_addin0[] = {0}; +static const unsigned char kat1111_addin1[] = {0}; +static const unsigned char kat1111_retbits[] = { + 0x41, 0x2d, 0x61, 0x65, 0xd5, 0x34, 0x6b, 0xd5, 0xbf, 0xa0, 0x19, 0xcf, + 0x25, 0x77, 0x39, 0x87, 0xd2, 0x7c, 0x9a, 0x6e, 0x6a, 0xd2, 0x67, 0x47, + 0xaa, 0x73, 0x6c, 0xc0, 0xdb, 0xcb, 0xeb, 0xff, 0x6a, 0x16, 0xde, 0x02, + 0x6b, 0xd4, 0x24, 0x9e, 0x69, 0xf0, 0x02, 0x8e, 0x2b, 0x7e, 0x0a, 0x7d, + 0x0d, 0x0e, 0x43, 0x8b, 0x3d, 0x6d, 0xe2, 0x7f, 0xf6, 0x67, 0x53, 0x99, + 0x8b, 0x5c, 0x33, 0x4b, +}; +static const struct drbg_kat_no_reseed kat1111_t = { + 0, kat1111_entropyin, kat1111_nonce, kat1111_persstr, + kat1111_addin0, kat1111_addin1, kat1111_retbits +}; +static const struct drbg_kat kat1111 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1111_t +}; + +static const unsigned char kat1112_entropyin[] = { + 0x73, 0x06, 0x0e, 0x14, 0x4b, 0xa6, 0x64, 0xad, 0x49, 0xfd, 0xe5, 0xc2, + 0xa5, 0xb6, 0x7c, 0x4a, 0x4a, 0x39, 0x49, 0x55, 0xc8, 0x4f, 0xbb, 0xbe, + 0x96, 0xe1, 0xf4, 0x5f, 0x0e, 0xe5, 0x45, 0x99, 0x79, 0x5f, 0x9b, 0x98, + 0xdd, 0x54, 0x8b, 0xb8, +}; +static const unsigned char kat1112_nonce[] = {0}; +static const unsigned char kat1112_persstr[] = { + 0x06, 0x87, 0x8e, 0x81, 0x90, 0x54, 0xf8, 0x22, 0x8d, 0x66, 0xca, 0x5b, + 0x50, 0x28, 0x89, 0x97, 0x2c, 0x6c, 0x5e, 0x5e, 0xdb, 0x9a, 0xc9, 0x16, + 0x11, 0x87, 0xf9, 0x91, 0x22, 0x91, 0xf7, 0x04, 0x65, 0x69, 0xe7, 0xd9, + 0x0c, 0xcd, 0x0b, 0xee, +}; +static const unsigned char kat1112_addin0[] = {0}; +static const unsigned char kat1112_addin1[] = {0}; +static const unsigned char kat1112_retbits[] = { + 0x17, 0x0b, 0x91, 0xb9, 0x99, 0x08, 0xfc, 0x54, 0xf3, 0x49, 0xd0, 0x8c, + 0x25, 0xc1, 0x0e, 0xa3, 0x2b, 0xc5, 0x3e, 0x85, 0x7e, 0x66, 0x0a, 0x29, + 0x1c, 0xc7, 0x2c, 0x47, 0x85, 0xcc, 0x30, 0xb4, 0x57, 0x4c, 0x48, 0x88, + 0xea, 0xd8, 0xbb, 0xbb, 0x88, 0x25, 0x49, 0x48, 0x70, 0xc7, 0xe8, 0x56, + 0xda, 0x12, 0xdf, 0xe4, 0x2e, 0xe9, 0x9a, 0x6b, 0x55, 0x90, 0x19, 0x68, + 0x57, 0x13, 0x9f, 0xa8, +}; +static const struct drbg_kat_no_reseed kat1112_t = { + 1, kat1112_entropyin, kat1112_nonce, kat1112_persstr, + kat1112_addin0, kat1112_addin1, kat1112_retbits +}; +static const struct drbg_kat kat1112 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1112_t +}; + +static const unsigned char kat1113_entropyin[] = { + 0x0c, 0x81, 0xbc, 0xec, 0x33, 0x66, 0xc0, 0x22, 0x9f, 0x43, 0xdb, 0xcd, + 0x23, 0x26, 0x99, 0xcd, 0x38, 0x84, 0xbf, 0xe5, 0xdc, 0x93, 0x98, 0x85, + 0xf9, 0x37, 0xa4, 0x63, 0x71, 0xd1, 0xf8, 0x21, 0x98, 0xc0, 0x0e, 0x34, + 0x71, 0xe5, 0x98, 0x6d, +}; +static const unsigned char kat1113_nonce[] = {0}; +static const unsigned char kat1113_persstr[] = { + 0x8b, 0x4e, 0x90, 0x22, 0x06, 0x74, 0x7c, 0xf3, 0x5a, 0x7a, 0xd6, 0x4b, + 0x77, 0xe8, 0x56, 0xcc, 0xf1, 0x2d, 0x18, 0x70, 0xff, 0x82, 0x43, 0xb6, + 0x78, 0x3c, 0x70, 0x8e, 0xcd, 0x93, 0x62, 0x77, 0x5a, 0x26, 0xf4, 0x07, + 0x0e, 0x8b, 0x71, 0x64, +}; +static const unsigned char kat1113_addin0[] = {0}; +static const unsigned char kat1113_addin1[] = {0}; +static const unsigned char kat1113_retbits[] = { + 0xa4, 0x2c, 0x8c, 0xc3, 0x3d, 0x7b, 0x86, 0x6b, 0xe1, 0xd8, 0x30, 0xaa, + 0x97, 0xcb, 0xbf, 0x05, 0xf2, 0x88, 0x7e, 0x9e, 0x5b, 0xda, 0x4f, 0x4f, + 0x9f, 0x08, 0xd1, 0x75, 0xfe, 0xee, 0x72, 0xd5, 0xe2, 0x66, 0xc0, 0x6b, + 0x23, 0xe3, 0xb2, 0x9e, 0xbe, 0xb1, 0x4e, 0x25, 0xa8, 0x1b, 0x85, 0x36, + 0x64, 0x57, 0x26, 0xfb, 0xa9, 0x1f, 0x68, 0xf8, 0x34, 0x79, 0x62, 0x23, + 0xd8, 0xdb, 0x94, 0xec, +}; +static const struct drbg_kat_no_reseed kat1113_t = { + 2, kat1113_entropyin, kat1113_nonce, kat1113_persstr, + kat1113_addin0, kat1113_addin1, kat1113_retbits +}; +static const struct drbg_kat kat1113 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1113_t +}; + +static const unsigned char kat1114_entropyin[] = { + 0xc9, 0xd6, 0x91, 0xfc, 0x04, 0x44, 0x80, 0x43, 0xae, 0x13, 0x75, 0x35, + 0x63, 0x95, 0x11, 0x9d, 0xe1, 0xc6, 0xb8, 0xc0, 0x95, 0x75, 0xad, 0x1c, + 0x69, 0x5f, 0x23, 0x1b, 0xb4, 0x2f, 0x4e, 0x17, 0xf2, 0x63, 0x36, 0xc3, + 0x2c, 0xfd, 0x22, 0x5a, +}; +static const unsigned char kat1114_nonce[] = {0}; +static const unsigned char kat1114_persstr[] = { + 0xef, 0xc8, 0x6a, 0x95, 0x0e, 0xb4, 0xf7, 0x5f, 0x3d, 0xf0, 0x36, 0x10, + 0x99, 0xef, 0x05, 0xac, 0xec, 0x57, 0xd7, 0xff, 0x36, 0x56, 0x16, 0x13, + 0x39, 0x78, 0x52, 0x5d, 0x11, 0x4c, 0xdf, 0x7f, 0x91, 0x79, 0x00, 0x72, + 0x52, 0xb1, 0x32, 0x01, +}; +static const unsigned char kat1114_addin0[] = {0}; +static const unsigned char kat1114_addin1[] = {0}; +static const unsigned char kat1114_retbits[] = { + 0xa7, 0x6f, 0x38, 0x1b, 0x9f, 0x37, 0x9d, 0x9e, 0xc1, 0x7a, 0x88, 0xd4, + 0xbc, 0x42, 0xa7, 0xf4, 0x4e, 0x94, 0xc8, 0xf0, 0xc4, 0xd6, 0xf1, 0xac, + 0x9d, 0x23, 0x0e, 0x17, 0x4b, 0x01, 0x56, 0xcc, 0x56, 0xa1, 0xc2, 0x38, + 0x55, 0x05, 0x97, 0x94, 0x26, 0x95, 0x47, 0x6b, 0x26, 0xaf, 0x27, 0x02, + 0xb5, 0x9c, 0x24, 0x20, 0x59, 0x52, 0x15, 0x5a, 0x2f, 0xa0, 0x00, 0xf4, + 0x80, 0x98, 0x65, 0xa2, +}; +static const struct drbg_kat_no_reseed kat1114_t = { + 3, kat1114_entropyin, kat1114_nonce, kat1114_persstr, + kat1114_addin0, kat1114_addin1, kat1114_retbits +}; +static const struct drbg_kat kat1114 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1114_t +}; + +static const unsigned char kat1115_entropyin[] = { + 0x83, 0x86, 0xad, 0x92, 0x45, 0x79, 0xed, 0xd8, 0x0c, 0x5d, 0x7a, 0x6f, + 0x40, 0xad, 0x2e, 0x6a, 0x42, 0x96, 0x7a, 0x02, 0x70, 0xe6, 0x7d, 0x80, + 0xd4, 0x31, 0xfa, 0x15, 0xb3, 0x7d, 0xcd, 0x03, 0x02, 0x04, 0x4c, 0x4b, + 0xe2, 0xa6, 0x1d, 0x25, +}; +static const unsigned char kat1115_nonce[] = {0}; +static const unsigned char kat1115_persstr[] = { + 0x2e, 0xdb, 0x37, 0xbf, 0xf0, 0xfa, 0xec, 0x67, 0xdc, 0x14, 0x9d, 0x34, + 0x5f, 0x64, 0xa9, 0xc0, 0xa1, 0xdb, 0x6e, 0x6d, 0x52, 0x48, 0xfe, 0xa5, + 0x50, 0x10, 0x91, 0xc5, 0xca, 0x64, 0xde, 0x96, 0x43, 0x27, 0x78, 0x34, + 0xd7, 0x38, 0x29, 0x5c, +}; +static const unsigned char kat1115_addin0[] = {0}; +static const unsigned char kat1115_addin1[] = {0}; +static const unsigned char kat1115_retbits[] = { + 0xa4, 0x2d, 0x0b, 0xc8, 0x9f, 0x10, 0x6f, 0x61, 0xbb, 0x3d, 0xd0, 0xa2, + 0x7e, 0x30, 0x5c, 0xf4, 0xdd, 0x2a, 0x84, 0xb4, 0x5d, 0x50, 0x6d, 0x55, + 0x2f, 0xd5, 0x70, 0x26, 0xbd, 0xd7, 0x35, 0xb9, 0x30, 0xc0, 0x13, 0x3c, + 0xa1, 0xd2, 0xee, 0x7c, 0x7f, 0x9e, 0x3a, 0x81, 0xae, 0x7d, 0xf5, 0xb3, + 0xc1, 0x0b, 0x34, 0xec, 0xaf, 0xab, 0xfa, 0xcd, 0x55, 0x53, 0xbd, 0x8b, + 0x75, 0x20, 0x9e, 0x63, +}; +static const struct drbg_kat_no_reseed kat1115_t = { + 4, kat1115_entropyin, kat1115_nonce, kat1115_persstr, + kat1115_addin0, kat1115_addin1, kat1115_retbits +}; +static const struct drbg_kat kat1115 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1115_t +}; + +static const unsigned char kat1116_entropyin[] = { + 0xc1, 0xf8, 0xa8, 0x00, 0x7d, 0x63, 0x2f, 0xa0, 0xcd, 0x3e, 0xda, 0xf1, + 0x8d, 0xce, 0x55, 0xe8, 0x70, 0xfc, 0x1f, 0xd2, 0xfe, 0x1e, 0xa3, 0x32, + 0x10, 0x3b, 0x4b, 0x0c, 0xd8, 0xbf, 0x55, 0x91, 0xc2, 0x58, 0xab, 0x8b, + 0x46, 0xc6, 0xa8, 0x8e, +}; +static const unsigned char kat1116_nonce[] = {0}; +static const unsigned char kat1116_persstr[] = { + 0x1c, 0x25, 0x1c, 0x41, 0x9e, 0x7c, 0x0b, 0x99, 0x97, 0xd8, 0xe7, 0xc8, + 0x66, 0x13, 0x03, 0x3a, 0x8f, 0x01, 0x2b, 0xdd, 0xd4, 0xbd, 0x25, 0x49, + 0x68, 0x31, 0x98, 0x8f, 0xe9, 0x9d, 0x87, 0x32, 0x51, 0x0d, 0x42, 0x60, + 0x76, 0x3c, 0x0e, 0x52, +}; +static const unsigned char kat1116_addin0[] = {0}; +static const unsigned char kat1116_addin1[] = {0}; +static const unsigned char kat1116_retbits[] = { + 0xc7, 0x0a, 0x9f, 0x55, 0x75, 0xfc, 0xba, 0xe8, 0xf7, 0x88, 0x97, 0x6b, + 0x5e, 0xc6, 0x0f, 0x2a, 0xb3, 0x5e, 0x5b, 0x0d, 0x2e, 0x30, 0xaf, 0xfd, + 0xcb, 0xae, 0xb4, 0xc2, 0x4f, 0xc2, 0xbd, 0x26, 0x1b, 0x44, 0x20, 0x22, + 0x57, 0x04, 0x4e, 0x50, 0xf3, 0xc5, 0xc5, 0xe4, 0x11, 0xeb, 0xb2, 0xf0, + 0x79, 0x00, 0xd9, 0x78, 0xf4, 0xfe, 0x66, 0x88, 0x5d, 0x36, 0xb0, 0x1e, + 0xd9, 0x27, 0xda, 0xbf, +}; +static const struct drbg_kat_no_reseed kat1116_t = { + 5, kat1116_entropyin, kat1116_nonce, kat1116_persstr, + kat1116_addin0, kat1116_addin1, kat1116_retbits +}; +static const struct drbg_kat kat1116 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1116_t +}; + +static const unsigned char kat1117_entropyin[] = { + 0x92, 0x68, 0x0c, 0xdb, 0x8e, 0x3b, 0xac, 0x00, 0xca, 0x0c, 0xa2, 0x5e, + 0x98, 0x8f, 0x6f, 0xbc, 0x3c, 0xe2, 0xa6, 0xec, 0x27, 0x6d, 0x8b, 0x30, + 0xb9, 0xee, 0x5d, 0x79, 0x33, 0xde, 0xcd, 0x3f, 0x90, 0xb3, 0x39, 0xf0, + 0x86, 0x1b, 0x49, 0x3c, +}; +static const unsigned char kat1117_nonce[] = {0}; +static const unsigned char kat1117_persstr[] = { + 0xd7, 0x07, 0xff, 0x05, 0x26, 0xdf, 0xc0, 0xc7, 0xea, 0xfa, 0x3d, 0x76, + 0xf5, 0xad, 0x0e, 0x9d, 0x98, 0x19, 0x2e, 0xce, 0x08, 0x55, 0xce, 0x09, + 0xed, 0xba, 0x0a, 0xef, 0xe8, 0x19, 0xb9, 0x40, 0x58, 0x5b, 0x5d, 0xf8, + 0xca, 0x43, 0x7e, 0xad, +}; +static const unsigned char kat1117_addin0[] = {0}; +static const unsigned char kat1117_addin1[] = {0}; +static const unsigned char kat1117_retbits[] = { + 0xfe, 0xab, 0x4a, 0x78, 0x23, 0x96, 0x63, 0x89, 0x7e, 0x66, 0x15, 0x71, + 0x84, 0xbf, 0xe8, 0x56, 0x8e, 0x3c, 0xc4, 0x60, 0x12, 0x90, 0x8e, 0x8d, + 0x96, 0xf2, 0x1c, 0xdb, 0xeb, 0x79, 0x41, 0xe4, 0x30, 0x58, 0x17, 0x87, + 0xe0, 0x8d, 0xd9, 0x19, 0x8b, 0xda, 0xf5, 0x8f, 0xf8, 0x84, 0xd8, 0x34, + 0xc0, 0x82, 0x7b, 0xf9, 0x31, 0x11, 0x3c, 0x00, 0xc3, 0x4f, 0x98, 0x8f, + 0x1d, 0x7b, 0x05, 0xed, +}; +static const struct drbg_kat_no_reseed kat1117_t = { + 6, kat1117_entropyin, kat1117_nonce, kat1117_persstr, + kat1117_addin0, kat1117_addin1, kat1117_retbits +}; +static const struct drbg_kat kat1117 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1117_t +}; + +static const unsigned char kat1118_entropyin[] = { + 0x7b, 0x53, 0xfe, 0x45, 0xe5, 0xb6, 0x1c, 0x13, 0x0a, 0x42, 0xfc, 0xe9, + 0x2a, 0x66, 0xa9, 0x5d, 0xca, 0x41, 0x7c, 0x17, 0x23, 0x3b, 0x68, 0xe2, + 0xd8, 0xba, 0x7d, 0x18, 0xa0, 0x2a, 0xcb, 0x57, 0x4d, 0xa2, 0xc0, 0x48, + 0xbc, 0x29, 0xdb, 0x9a, +}; +static const unsigned char kat1118_nonce[] = {0}; +static const unsigned char kat1118_persstr[] = { + 0x14, 0x63, 0xa8, 0xe6, 0x30, 0x64, 0xf6, 0xbd, 0xf4, 0xf4, 0x2b, 0xfa, + 0x7c, 0x74, 0x85, 0xab, 0x7b, 0xa6, 0xad, 0xa5, 0xb0, 0xe5, 0xe8, 0x7d, + 0xc8, 0x8a, 0x36, 0xe9, 0xbd, 0xf3, 0x9f, 0x70, 0xa7, 0xe9, 0x95, 0xd2, + 0xde, 0xd3, 0xc2, 0xb5, +}; +static const unsigned char kat1118_addin0[] = {0}; +static const unsigned char kat1118_addin1[] = {0}; +static const unsigned char kat1118_retbits[] = { + 0x09, 0xc8, 0x69, 0xac, 0x97, 0xef, 0xce, 0x03, 0x78, 0xa8, 0x78, 0xf7, + 0x76, 0x42, 0xd5, 0x02, 0x72, 0x50, 0x48, 0xc9, 0x50, 0x52, 0xc8, 0x22, + 0x0f, 0x25, 0xf0, 0x3b, 0xd9, 0xbd, 0x60, 0xa1, 0x19, 0x8e, 0x45, 0xd4, + 0x99, 0x40, 0xae, 0x35, 0xc2, 0x57, 0x1a, 0x72, 0xcd, 0xea, 0xe2, 0x97, + 0xd0, 0x23, 0xec, 0x4c, 0xdc, 0x10, 0x47, 0x2f, 0x11, 0x12, 0xa8, 0x79, + 0x6f, 0xa2, 0x53, 0x26, +}; +static const struct drbg_kat_no_reseed kat1118_t = { + 7, kat1118_entropyin, kat1118_nonce, kat1118_persstr, + kat1118_addin0, kat1118_addin1, kat1118_retbits +}; +static const struct drbg_kat kat1118 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1118_t +}; + +static const unsigned char kat1119_entropyin[] = { + 0x8a, 0xdf, 0xc0, 0x4d, 0xdb, 0x2f, 0x8a, 0x3b, 0x13, 0xde, 0xf4, 0x12, + 0x8d, 0x10, 0x29, 0xa7, 0x02, 0x76, 0xc5, 0x3e, 0x69, 0x0a, 0xe2, 0x1a, + 0x1e, 0xe9, 0xc3, 0x6e, 0x4a, 0x26, 0xf8, 0x92, 0x82, 0x68, 0xa4, 0xc5, + 0xa8, 0xbb, 0xc9, 0xea, +}; +static const unsigned char kat1119_nonce[] = {0}; +static const unsigned char kat1119_persstr[] = { + 0xab, 0x5c, 0x19, 0x85, 0x7a, 0xd9, 0x10, 0x4f, 0xbe, 0x12, 0x6b, 0xd5, + 0x94, 0x1d, 0xb3, 0x1a, 0x61, 0x1d, 0xfc, 0x5a, 0xdb, 0xda, 0x9b, 0x1b, + 0x77, 0x2e, 0xd2, 0xb0, 0x8c, 0x01, 0x53, 0x61, 0x38, 0xf0, 0x83, 0x78, + 0x2d, 0xf6, 0xe2, 0x22, +}; +static const unsigned char kat1119_addin0[] = {0}; +static const unsigned char kat1119_addin1[] = {0}; +static const unsigned char kat1119_retbits[] = { + 0xb5, 0x62, 0x69, 0x5d, 0xc1, 0xa0, 0x88, 0xb1, 0xb7, 0xf5, 0xe3, 0xee, + 0x69, 0xd6, 0xc9, 0xe7, 0x67, 0xa6, 0xc7, 0x6f, 0x8c, 0x48, 0x3c, 0x8c, + 0xce, 0x4a, 0x8e, 0xf8, 0xe5, 0x88, 0xe5, 0x3a, 0xab, 0x1d, 0x2a, 0xc4, + 0xdb, 0xab, 0x12, 0x4f, 0x30, 0x7d, 0xef, 0x49, 0x1b, 0xf8, 0x43, 0xd6, + 0x16, 0x8c, 0x88, 0xb5, 0x28, 0xad, 0x4c, 0x41, 0x7d, 0xbf, 0xb6, 0x16, + 0xcc, 0x0a, 0x7c, 0xcb, +}; +static const struct drbg_kat_no_reseed kat1119_t = { + 8, kat1119_entropyin, kat1119_nonce, kat1119_persstr, + kat1119_addin0, kat1119_addin1, kat1119_retbits +}; +static const struct drbg_kat kat1119 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1119_t +}; + +static const unsigned char kat1120_entropyin[] = { + 0x39, 0x94, 0xd9, 0x21, 0xe9, 0xb2, 0x4e, 0xbe, 0xea, 0xa2, 0xb3, 0xf1, + 0x5e, 0x74, 0x9b, 0x00, 0x35, 0x3a, 0xbb, 0xb4, 0xf0, 0x58, 0x38, 0xe6, + 0x55, 0x95, 0x66, 0x53, 0xad, 0xbc, 0x27, 0xc5, 0x80, 0xc0, 0x9c, 0xd6, + 0xeb, 0x8c, 0xde, 0x30, +}; +static const unsigned char kat1120_nonce[] = {0}; +static const unsigned char kat1120_persstr[] = { + 0x71, 0xeb, 0x26, 0xe6, 0x11, 0x12, 0xb1, 0x1f, 0x21, 0x8d, 0x01, 0x6a, + 0x67, 0x86, 0x84, 0xb8, 0xaa, 0xab, 0x65, 0x19, 0xea, 0x41, 0xaf, 0x21, + 0xfc, 0x71, 0x3c, 0x4a, 0xfa, 0x14, 0xf3, 0x9d, 0x49, 0xa5, 0xa7, 0x47, + 0x23, 0x44, 0xde, 0xf1, +}; +static const unsigned char kat1120_addin0[] = {0}; +static const unsigned char kat1120_addin1[] = {0}; +static const unsigned char kat1120_retbits[] = { + 0x59, 0xde, 0x04, 0xbc, 0x36, 0x02, 0x49, 0x61, 0x7d, 0x96, 0x9c, 0xe7, + 0xdd, 0xe7, 0xb6, 0x38, 0xdb, 0xf0, 0xd1, 0x04, 0xe0, 0xd3, 0xc9, 0xce, + 0x0a, 0x63, 0xa4, 0xa7, 0x37, 0x69, 0x76, 0xa3, 0x38, 0xf9, 0xe5, 0xb3, + 0x06, 0x08, 0xc2, 0xe1, 0xb8, 0x81, 0xd8, 0x2f, 0xc6, 0xdd, 0x5a, 0xe2, + 0x51, 0x84, 0xd6, 0xf0, 0x7c, 0xb0, 0xdc, 0x2f, 0x5d, 0x99, 0x89, 0xea, + 0x49, 0x10, 0x0c, 0x01, +}; +static const struct drbg_kat_no_reseed kat1120_t = { + 9, kat1120_entropyin, kat1120_nonce, kat1120_persstr, + kat1120_addin0, kat1120_addin1, kat1120_retbits +}; +static const struct drbg_kat kat1120 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1120_t +}; + +static const unsigned char kat1121_entropyin[] = { + 0x2a, 0x3d, 0x16, 0xa9, 0x6d, 0xaa, 0xc4, 0xb6, 0xc9, 0xa6, 0x47, 0x47, + 0x29, 0x75, 0x22, 0x04, 0xb3, 0xf1, 0x97, 0xe9, 0x39, 0x61, 0x80, 0xc9, + 0x85, 0x51, 0xcd, 0x36, 0xf0, 0xfc, 0x68, 0xb7, 0xfd, 0xf5, 0x33, 0x11, + 0x5d, 0xa6, 0xb2, 0xc6, +}; +static const unsigned char kat1121_nonce[] = {0}; +static const unsigned char kat1121_persstr[] = { + 0x54, 0x7e, 0x34, 0x34, 0x00, 0x65, 0xfd, 0xbe, 0xb4, 0x09, 0xff, 0xf4, + 0x9f, 0x2d, 0x9a, 0x97, 0xc5, 0x20, 0x2a, 0xa1, 0x48, 0xaa, 0x7e, 0x85, + 0x19, 0x61, 0x07, 0x99, 0xa6, 0x82, 0xde, 0x81, 0xc5, 0x03, 0xbb, 0x52, + 0xad, 0xdd, 0x50, 0xac, +}; +static const unsigned char kat1121_addin0[] = {0}; +static const unsigned char kat1121_addin1[] = {0}; +static const unsigned char kat1121_retbits[] = { + 0x21, 0x56, 0x1c, 0x15, 0xd0, 0x24, 0x05, 0x0a, 0x5c, 0xbf, 0x8d, 0x31, + 0x47, 0x2c, 0xd5, 0x20, 0x10, 0xba, 0x0a, 0x73, 0x85, 0xb5, 0xf6, 0xf0, + 0xea, 0x03, 0xbd, 0xbf, 0x52, 0x3a, 0x82, 0x8f, 0x7a, 0x75, 0xde, 0x85, + 0x86, 0xfe, 0xee, 0xa9, 0x8a, 0xdc, 0x56, 0xc9, 0x15, 0xb5, 0xcf, 0xba, + 0x41, 0x6d, 0xd3, 0x66, 0x1c, 0x2c, 0xee, 0x54, 0x14, 0x3f, 0xee, 0x22, + 0x87, 0xbb, 0x3f, 0x90, +}; +static const struct drbg_kat_no_reseed kat1121_t = { + 10, kat1121_entropyin, kat1121_nonce, kat1121_persstr, + kat1121_addin0, kat1121_addin1, kat1121_retbits +}; +static const struct drbg_kat kat1121 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1121_t +}; + +static const unsigned char kat1122_entropyin[] = { + 0xc9, 0xdb, 0x6c, 0x55, 0x9b, 0xe9, 0xae, 0xc8, 0xe2, 0xc4, 0x6c, 0x57, + 0x5e, 0xff, 0x25, 0x75, 0x3b, 0xfa, 0x9d, 0x88, 0x6e, 0x93, 0x4b, 0x8c, + 0x2d, 0x22, 0x6d, 0xed, 0xa6, 0xe8, 0xc8, 0xbe, 0x8b, 0xea, 0x68, 0xae, + 0xc4, 0x01, 0x53, 0x74, +}; +static const unsigned char kat1122_nonce[] = {0}; +static const unsigned char kat1122_persstr[] = { + 0xf5, 0x63, 0xde, 0xb7, 0x0b, 0xd6, 0x58, 0x73, 0xb8, 0x33, 0xb2, 0xca, + 0xba, 0x74, 0x6f, 0x78, 0x97, 0x39, 0x4f, 0xab, 0x8b, 0x13, 0xc3, 0xf9, + 0x84, 0xc0, 0x9b, 0x33, 0xbd, 0xbe, 0x8e, 0x95, 0x49, 0xd9, 0x40, 0x70, + 0xdd, 0xbb, 0x95, 0x34, +}; +static const unsigned char kat1122_addin0[] = {0}; +static const unsigned char kat1122_addin1[] = {0}; +static const unsigned char kat1122_retbits[] = { + 0xd0, 0x85, 0xdd, 0xff, 0x1a, 0x1f, 0x8b, 0x9d, 0x38, 0xd4, 0x13, 0xa6, + 0x6c, 0x92, 0x44, 0x4d, 0xe1, 0x4f, 0x5e, 0x76, 0x2d, 0x77, 0x12, 0x7c, + 0x83, 0x03, 0x8a, 0x77, 0x53, 0xf0, 0x21, 0x00, 0x20, 0xec, 0xd6, 0x48, + 0x13, 0xf0, 0xf8, 0x8d, 0xc6, 0xa7, 0x14, 0x42, 0x8e, 0xa6, 0xbe, 0xbe, + 0x9a, 0x9e, 0x73, 0x8e, 0x7a, 0xfb, 0xea, 0x47, 0x4c, 0x1f, 0xf7, 0x55, + 0x3a, 0x31, 0xbf, 0x8c, +}; +static const struct drbg_kat_no_reseed kat1122_t = { + 11, kat1122_entropyin, kat1122_nonce, kat1122_persstr, + kat1122_addin0, kat1122_addin1, kat1122_retbits +}; +static const struct drbg_kat kat1122 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1122_t +}; + +static const unsigned char kat1123_entropyin[] = { + 0xbd, 0x59, 0x8f, 0xec, 0x98, 0xb3, 0x55, 0xc4, 0xca, 0x8b, 0x8f, 0x12, + 0x9e, 0x71, 0x17, 0x9b, 0x57, 0x5c, 0x64, 0x93, 0x3d, 0x04, 0xb1, 0xd7, + 0x2a, 0x3e, 0x57, 0xd0, 0x4f, 0x50, 0x7c, 0x33, 0x7c, 0x64, 0xf7, 0x28, + 0xe7, 0x6c, 0xbd, 0xda, +}; +static const unsigned char kat1123_nonce[] = {0}; +static const unsigned char kat1123_persstr[] = { + 0x7d, 0xe3, 0xa8, 0x49, 0x20, 0xd4, 0xbe, 0xe4, 0xf3, 0x3e, 0x18, 0xf0, + 0x60, 0xad, 0x9a, 0x00, 0xd6, 0x8d, 0xec, 0xd0, 0x02, 0xa3, 0x6c, 0xb8, + 0x5d, 0x9b, 0x9d, 0xaf, 0x46, 0x27, 0x12, 0x75, 0x31, 0xea, 0xef, 0xb2, + 0xd4, 0xdd, 0x40, 0x6d, +}; +static const unsigned char kat1123_addin0[] = {0}; +static const unsigned char kat1123_addin1[] = {0}; +static const unsigned char kat1123_retbits[] = { + 0xd1, 0x98, 0xdc, 0xac, 0xfa, 0xc4, 0x72, 0x19, 0x9d, 0xe0, 0x2a, 0x74, + 0xfd, 0x1a, 0x09, 0xee, 0x94, 0x12, 0xeb, 0x31, 0xf0, 0x06, 0xbf, 0x9d, + 0xc7, 0x76, 0x7f, 0xca, 0x43, 0xd8, 0xdf, 0xc8, 0x3c, 0x9e, 0xac, 0xc3, + 0xbd, 0xc8, 0x2f, 0x2a, 0x08, 0x3a, 0x7a, 0xad, 0xd8, 0xa5, 0xc7, 0x1a, + 0xac, 0xd4, 0xaa, 0xb6, 0x9e, 0x11, 0x60, 0xcb, 0xb7, 0x55, 0x8f, 0xd1, + 0xb3, 0x7f, 0xb1, 0xdd, +}; +static const struct drbg_kat_no_reseed kat1123_t = { + 12, kat1123_entropyin, kat1123_nonce, kat1123_persstr, + kat1123_addin0, kat1123_addin1, kat1123_retbits +}; +static const struct drbg_kat kat1123 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1123_t +}; + +static const unsigned char kat1124_entropyin[] = { + 0x75, 0x55, 0xaa, 0x70, 0x03, 0x9f, 0x91, 0x21, 0x42, 0xcb, 0xb9, 0x9f, + 0xcd, 0x54, 0xb6, 0x06, 0x7a, 0x55, 0x1a, 0xfe, 0xfc, 0x82, 0x70, 0x66, + 0xe2, 0xba, 0x03, 0x81, 0x6f, 0x76, 0xb0, 0xfd, 0xbc, 0xa8, 0x60, 0x91, + 0x19, 0xc2, 0x1d, 0x33, +}; +static const unsigned char kat1124_nonce[] = {0}; +static const unsigned char kat1124_persstr[] = { + 0x8c, 0x3d, 0x8c, 0x10, 0x18, 0x4d, 0x41, 0x7e, 0xcc, 0x7b, 0xed, 0x28, + 0x32, 0x94, 0x6d, 0xe1, 0x30, 0x1f, 0x3a, 0x28, 0x1a, 0x73, 0xfd, 0x60, + 0x03, 0x0c, 0x74, 0x8a, 0xf7, 0xf2, 0x79, 0x95, 0xa3, 0xbe, 0x31, 0xb7, + 0x9e, 0x7f, 0x0c, 0xb5, +}; +static const unsigned char kat1124_addin0[] = {0}; +static const unsigned char kat1124_addin1[] = {0}; +static const unsigned char kat1124_retbits[] = { + 0x27, 0xd7, 0x29, 0xeb, 0x9a, 0x22, 0xd6, 0x7b, 0xf8, 0x30, 0x8b, 0x2e, + 0xdd, 0xdb, 0x4d, 0xfb, 0x2c, 0x22, 0xff, 0xcd, 0x17, 0xef, 0x40, 0x45, + 0xbc, 0x63, 0xdd, 0x6f, 0xd9, 0xf6, 0x68, 0xa7, 0x4c, 0x23, 0x0b, 0x44, + 0x27, 0x7d, 0x9e, 0xe5, 0x04, 0x55, 0x6b, 0x6f, 0xa9, 0xda, 0x96, 0xa8, + 0x1b, 0x20, 0x4b, 0x74, 0x09, 0x78, 0x66, 0xb5, 0xfa, 0x62, 0xef, 0x8e, + 0x87, 0x3c, 0x55, 0x47, +}; +static const struct drbg_kat_no_reseed kat1124_t = { + 13, kat1124_entropyin, kat1124_nonce, kat1124_persstr, + kat1124_addin0, kat1124_addin1, kat1124_retbits +}; +static const struct drbg_kat kat1124 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1124_t +}; + +static const unsigned char kat1125_entropyin[] = { + 0x2d, 0x0c, 0x45, 0xbd, 0xcc, 0xac, 0x3a, 0x97, 0x2f, 0xe4, 0x01, 0x60, + 0x13, 0x79, 0xd5, 0xe5, 0xf6, 0x17, 0x3e, 0xde, 0xa8, 0x23, 0xd5, 0x31, + 0x86, 0x82, 0x9f, 0x34, 0x3c, 0x0d, 0x1c, 0x84, 0x3a, 0x6d, 0x7a, 0x82, + 0x55, 0xc1, 0x5c, 0x9e, +}; +static const unsigned char kat1125_nonce[] = {0}; +static const unsigned char kat1125_persstr[] = { + 0x93, 0x45, 0xdc, 0x1e, 0xe7, 0xc4, 0x28, 0xa9, 0x61, 0xf2, 0xb7, 0x87, + 0xe6, 0xf9, 0x48, 0x7f, 0x93, 0x80, 0x62, 0xaf, 0xd5, 0xfe, 0x3b, 0x3c, + 0xeb, 0x04, 0xba, 0x84, 0x45, 0xb1, 0x11, 0x8a, 0x8e, 0x2e, 0x30, 0xb3, + 0xf0, 0xbc, 0xc2, 0x99, +}; +static const unsigned char kat1125_addin0[] = {0}; +static const unsigned char kat1125_addin1[] = {0}; +static const unsigned char kat1125_retbits[] = { + 0x3d, 0x6f, 0x91, 0x40, 0xfd, 0xb4, 0x6c, 0xc1, 0xa0, 0x4a, 0xe9, 0x87, + 0xdd, 0xa9, 0x1a, 0x18, 0xa7, 0xeb, 0x59, 0x24, 0x0c, 0x6b, 0x42, 0x92, + 0xf6, 0x4c, 0x84, 0x45, 0xf2, 0x7f, 0x1f, 0x72, 0xa2, 0xd8, 0x0e, 0x84, + 0x63, 0xda, 0x01, 0x40, 0x9c, 0xbf, 0x28, 0x41, 0x69, 0x86, 0xed, 0x8a, + 0x85, 0xe8, 0xb9, 0xc4, 0xca, 0xa4, 0x54, 0x16, 0x88, 0xae, 0xde, 0x1b, + 0x69, 0x05, 0xb3, 0x84, +}; +static const struct drbg_kat_no_reseed kat1125_t = { + 14, kat1125_entropyin, kat1125_nonce, kat1125_persstr, + kat1125_addin0, kat1125_addin1, kat1125_retbits +}; +static const struct drbg_kat kat1125 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1125_t +}; + +static const unsigned char kat1126_entropyin[] = { + 0x86, 0xa6, 0x37, 0xcf, 0xa2, 0x62, 0x7d, 0x56, 0x76, 0xb6, 0x92, 0x1b, + 0x86, 0xa9, 0x66, 0x1f, 0x82, 0x03, 0xc4, 0xd9, 0x60, 0x60, 0x24, 0x80, + 0x3f, 0x36, 0x88, 0xc8, 0x87, 0xe0, 0x91, 0xf8, 0xe1, 0x64, 0x40, 0xe6, + 0xfe, 0x92, 0xac, 0x6e, +}; +static const unsigned char kat1126_nonce[] = {0}; +static const unsigned char kat1126_persstr[] = { + 0xb3, 0x5b, 0xbc, 0x23, 0x8f, 0x15, 0x8b, 0x9e, 0xd4, 0x5d, 0xcd, 0x7c, + 0xc3, 0x08, 0x8e, 0xa4, 0xef, 0xfa, 0x04, 0x49, 0x29, 0x62, 0x98, 0x85, + 0x45, 0x98, 0xb6, 0xe3, 0x12, 0xe5, 0x9a, 0x83, 0x08, 0xac, 0x80, 0x19, + 0x74, 0xe3, 0x80, 0x6c, +}; +static const unsigned char kat1126_addin0[] = { + 0x47, 0x8b, 0xb6, 0x9c, 0x78, 0xea, 0xc1, 0x63, 0x49, 0x68, 0x83, 0xc5, + 0xb2, 0xd5, 0x98, 0x75, 0xcd, 0x8a, 0x63, 0x19, 0x03, 0xe4, 0x47, 0xde, + 0x54, 0x34, 0xc7, 0x74, 0xd7, 0x21, 0xe9, 0x1a, 0x82, 0x8e, 0xcd, 0xa6, + 0x0f, 0xb4, 0x4b, 0x7b, +}; +static const unsigned char kat1126_addin1[] = { + 0x75, 0xa8, 0x47, 0x9f, 0xee, 0xa4, 0x02, 0x6e, 0x4c, 0xd1, 0x0c, 0xf5, + 0x82, 0x74, 0xf7, 0x5d, 0xc8, 0x38, 0x89, 0x4c, 0x44, 0xcb, 0x22, 0xc2, + 0xef, 0xbc, 0xe5, 0x27, 0x4e, 0xcc, 0x08, 0x1e, 0x6a, 0x68, 0x76, 0xb6, + 0xba, 0x3d, 0xf8, 0x6f, +}; +static const unsigned char kat1126_retbits[] = { + 0xee, 0x9d, 0x75, 0xd1, 0x23, 0x57, 0x8a, 0x17, 0xa5, 0x7d, 0xee, 0xed, + 0xff, 0x09, 0x3e, 0x6d, 0x69, 0xf5, 0x41, 0x8b, 0x7b, 0xa3, 0x58, 0x1f, + 0xf3, 0x06, 0xee, 0xbf, 0x29, 0x92, 0x71, 0x16, 0x8a, 0xd0, 0x49, 0x4d, + 0x6f, 0x7e, 0x45, 0x6e, 0x71, 0x8b, 0xfe, 0x5a, 0xc7, 0x93, 0x29, 0xd3, + 0x20, 0x4d, 0x56, 0xe8, 0xd2, 0x9b, 0x6d, 0xd8, 0x89, 0x8f, 0xb3, 0x10, + 0x3e, 0xaa, 0x4b, 0x08, +}; +static const struct drbg_kat_no_reseed kat1126_t = { + 0, kat1126_entropyin, kat1126_nonce, kat1126_persstr, + kat1126_addin0, kat1126_addin1, kat1126_retbits +}; +static const struct drbg_kat kat1126 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1126_t +}; + +static const unsigned char kat1127_entropyin[] = { + 0xd7, 0x0c, 0x9e, 0x27, 0x28, 0x20, 0x11, 0x81, 0x15, 0x02, 0x77, 0x23, + 0x63, 0xef, 0xab, 0x57, 0x14, 0xad, 0x29, 0xd6, 0x3a, 0xfe, 0x46, 0x70, + 0x9b, 0xe5, 0x4b, 0xb7, 0x5e, 0x66, 0x9b, 0x7c, 0xb2, 0x9f, 0x05, 0x9a, + 0x14, 0x77, 0xbd, 0xf9, +}; +static const unsigned char kat1127_nonce[] = {0}; +static const unsigned char kat1127_persstr[] = { + 0x68, 0x42, 0x31, 0xb3, 0x1f, 0xaf, 0xf4, 0x40, 0x6c, 0x5c, 0xee, 0x7e, + 0xfd, 0x76, 0x27, 0xa0, 0x61, 0x00, 0x5e, 0x94, 0xf2, 0x8e, 0x7b, 0x33, + 0xaf, 0xdb, 0x65, 0x64, 0x51, 0x37, 0xd4, 0x8e, 0x98, 0x27, 0xe4, 0x3e, + 0x80, 0x36, 0x1d, 0x44, +}; +static const unsigned char kat1127_addin0[] = { + 0x73, 0x0c, 0xca, 0xd6, 0x11, 0x9f, 0x8a, 0xed, 0xa4, 0xc3, 0x6a, 0x11, + 0x01, 0xaa, 0xd4, 0xf1, 0x5f, 0xe2, 0x11, 0x42, 0x0c, 0xa3, 0x53, 0x87, + 0xbe, 0x0e, 0xb3, 0x6f, 0xa8, 0x5e, 0x55, 0x5d, 0xf2, 0x5b, 0x3b, 0xf0, + 0x11, 0x01, 0x29, 0xc9, +}; +static const unsigned char kat1127_addin1[] = { + 0xe3, 0x8a, 0x65, 0x71, 0x1b, 0x71, 0xd4, 0x40, 0x0d, 0xc3, 0xb9, 0x0d, + 0x74, 0x2f, 0x30, 0x1e, 0xc1, 0x46, 0x9f, 0xb9, 0xbb, 0x0e, 0x9f, 0xc5, + 0x7e, 0xc2, 0x3f, 0xf1, 0x25, 0xb8, 0xa7, 0xe5, 0x26, 0xee, 0x09, 0x32, + 0x60, 0x87, 0x5e, 0xe7, +}; +static const unsigned char kat1127_retbits[] = { + 0x76, 0x43, 0x84, 0x03, 0xd0, 0xe5, 0xb9, 0xcf, 0x0a, 0x6f, 0x3f, 0xf3, + 0xdb, 0xad, 0xac, 0x9a, 0x57, 0x76, 0xb5, 0xbe, 0x63, 0x5f, 0xac, 0x09, + 0x1e, 0xcb, 0xe6, 0xd5, 0xc3, 0x00, 0x5b, 0x54, 0xdc, 0x9a, 0x34, 0xe3, + 0xbb, 0x1b, 0xf3, 0xc2, 0x46, 0x48, 0x4a, 0x91, 0x34, 0xc4, 0x30, 0x60, + 0x4e, 0x30, 0x80, 0xa0, 0x57, 0x01, 0x24, 0xfc, 0x9e, 0x5e, 0x6f, 0x4d, + 0x97, 0x7f, 0x59, 0xd2, +}; +static const struct drbg_kat_no_reseed kat1127_t = { + 1, kat1127_entropyin, kat1127_nonce, kat1127_persstr, + kat1127_addin0, kat1127_addin1, kat1127_retbits +}; +static const struct drbg_kat kat1127 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1127_t +}; + +static const unsigned char kat1128_entropyin[] = { + 0x71, 0xb1, 0x9f, 0x72, 0xaf, 0x5d, 0x76, 0x77, 0x6e, 0x37, 0x36, 0x91, + 0xe1, 0x9a, 0xa2, 0xe3, 0xc9, 0xe8, 0x4e, 0xaa, 0x2d, 0x7d, 0x33, 0x50, + 0xb7, 0x7e, 0x22, 0x91, 0xc0, 0x00, 0xfa, 0x4c, 0x50, 0xe1, 0x17, 0x6b, + 0x01, 0xc0, 0x18, 0x39, +}; +static const unsigned char kat1128_nonce[] = {0}; +static const unsigned char kat1128_persstr[] = { + 0x2a, 0x6f, 0x83, 0x41, 0x22, 0xbf, 0x08, 0xfb, 0xfd, 0x1c, 0x7c, 0xa3, + 0x1c, 0x6a, 0xea, 0x08, 0xda, 0x21, 0x94, 0x2d, 0x88, 0xc4, 0x1d, 0x44, + 0x52, 0x80, 0xc1, 0xad, 0xbf, 0x84, 0x1e, 0xde, 0x1c, 0x94, 0x2b, 0xb0, + 0xa1, 0x65, 0xe6, 0xfd, +}; +static const unsigned char kat1128_addin0[] = { + 0x5a, 0x80, 0x30, 0xfa, 0xe3, 0x21, 0x16, 0x2e, 0x2c, 0x42, 0xb1, 0x37, + 0x8a, 0x7b, 0xfd, 0x79, 0xcc, 0x7a, 0xb6, 0x0a, 0xfc, 0x49, 0x8f, 0xe8, + 0x5c, 0x39, 0xef, 0x3c, 0x57, 0x75, 0xc1, 0x2b, 0x75, 0x55, 0x97, 0xa1, + 0x72, 0xbb, 0xfd, 0xd9, +}; +static const unsigned char kat1128_addin1[] = { + 0x5c, 0x23, 0xfd, 0xa8, 0xf8, 0xad, 0x32, 0xbd, 0x6b, 0xbd, 0x6e, 0x49, + 0x87, 0xa4, 0xde, 0x87, 0x77, 0x54, 0xc3, 0x97, 0xd9, 0x25, 0xf3, 0xd6, + 0x99, 0x33, 0x8a, 0x96, 0x83, 0xdb, 0x27, 0x50, 0x2d, 0xe5, 0xd5, 0xdd, + 0xaa, 0xf9, 0xf8, 0xfd, +}; +static const unsigned char kat1128_retbits[] = { + 0x44, 0x5d, 0x75, 0x54, 0xae, 0x0f, 0xc0, 0x81, 0x17, 0xb1, 0x3e, 0x46, + 0x58, 0x5d, 0xf3, 0x42, 0xa0, 0x34, 0xcb, 0x7c, 0xff, 0x51, 0x90, 0xee, + 0xfc, 0x18, 0x07, 0xc0, 0xae, 0xc3, 0xd4, 0x79, 0x32, 0x5a, 0x05, 0xb1, + 0x8e, 0x0c, 0x65, 0xc0, 0x72, 0x91, 0x78, 0xc1, 0x3f, 0xbc, 0xf4, 0x85, + 0x5c, 0x24, 0x8e, 0xc9, 0xdc, 0x7f, 0xef, 0x3c, 0xc3, 0xa8, 0x8e, 0xdf, + 0xe8, 0x2a, 0xb9, 0x99, +}; +static const struct drbg_kat_no_reseed kat1128_t = { + 2, kat1128_entropyin, kat1128_nonce, kat1128_persstr, + kat1128_addin0, kat1128_addin1, kat1128_retbits +}; +static const struct drbg_kat kat1128 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1128_t +}; + +static const unsigned char kat1129_entropyin[] = { + 0xc0, 0xfc, 0x3d, 0x62, 0x7b, 0x4a, 0xe0, 0xdf, 0x05, 0x12, 0x46, 0x97, + 0x24, 0x90, 0x76, 0x65, 0x7a, 0x4c, 0x62, 0xaf, 0x16, 0x2c, 0xcb, 0x9f, + 0xdb, 0xa6, 0x5e, 0x61, 0xe6, 0xba, 0x31, 0x16, 0x5a, 0xfd, 0xc1, 0xd1, + 0x7e, 0xfd, 0x0c, 0xcb, +}; +static const unsigned char kat1129_nonce[] = {0}; +static const unsigned char kat1129_persstr[] = { + 0x59, 0x1a, 0x31, 0x94, 0xf3, 0xa3, 0x47, 0x18, 0x87, 0x24, 0x5d, 0x33, + 0x01, 0x9d, 0xde, 0xef, 0x09, 0x3f, 0x37, 0xb2, 0x82, 0x7a, 0xe1, 0x7a, + 0x56, 0x6e, 0xef, 0xe6, 0x24, 0x81, 0x1c, 0x9c, 0xc6, 0x79, 0x4a, 0x6a, + 0xe7, 0x84, 0x12, 0xc1, +}; +static const unsigned char kat1129_addin0[] = { + 0xd5, 0x39, 0xde, 0x74, 0x65, 0x2c, 0xe1, 0xeb, 0xfa, 0xb5, 0xb4, 0x0c, + 0x1a, 0xac, 0x71, 0x55, 0xf6, 0x96, 0x74, 0xea, 0x89, 0xcb, 0xf2, 0xb3, + 0xb8, 0x3a, 0x97, 0x6c, 0x44, 0x8a, 0x61, 0x43, 0x0c, 0xc8, 0x50, 0xff, + 0x75, 0x32, 0xa5, 0x55, +}; +static const unsigned char kat1129_addin1[] = { + 0xfd, 0x3d, 0x71, 0xc3, 0x41, 0x13, 0x03, 0xad, 0x37, 0xed, 0xcb, 0x96, + 0x35, 0x0c, 0x36, 0xa7, 0x22, 0x53, 0x32, 0x6f, 0xfb, 0x1e, 0xb9, 0xb0, + 0x6e, 0xb4, 0x41, 0x90, 0xf5, 0xc6, 0x25, 0x0a, 0xf5, 0x03, 0x2a, 0xb8, + 0xba, 0xe7, 0x1a, 0xc4, +}; +static const unsigned char kat1129_retbits[] = { + 0x84, 0x78, 0x40, 0xed, 0xda, 0x6e, 0xcb, 0x54, 0x3e, 0x6c, 0x25, 0x81, + 0xd1, 0xa3, 0x26, 0x27, 0x98, 0x73, 0x82, 0x29, 0x78, 0x78, 0x8a, 0xe0, + 0x86, 0x31, 0x71, 0x25, 0x9c, 0xb2, 0x9b, 0xb0, 0xf7, 0x68, 0x74, 0x5d, + 0xfe, 0x41, 0xb9, 0xb6, 0xae, 0x8c, 0x37, 0x76, 0x9d, 0x95, 0x0c, 0x61, + 0x4c, 0x64, 0x4b, 0xd0, 0x43, 0x65, 0x54, 0x00, 0xce, 0x53, 0x41, 0x75, + 0x52, 0x72, 0x4d, 0x78, +}; +static const struct drbg_kat_no_reseed kat1129_t = { + 3, kat1129_entropyin, kat1129_nonce, kat1129_persstr, + kat1129_addin0, kat1129_addin1, kat1129_retbits +}; +static const struct drbg_kat kat1129 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1129_t +}; + +static const unsigned char kat1130_entropyin[] = { + 0x9e, 0xee, 0x03, 0xbb, 0x24, 0x30, 0xde, 0x56, 0xec, 0x78, 0xd4, 0x12, + 0xfd, 0x91, 0x7d, 0x1b, 0xf3, 0xd1, 0x08, 0xa7, 0xb0, 0x72, 0x68, 0xf3, + 0xf5, 0xdd, 0x6b, 0x3b, 0xfa, 0x18, 0x8d, 0x40, 0x06, 0x15, 0x0e, 0x69, + 0x19, 0x4a, 0x01, 0x68, +}; +static const unsigned char kat1130_nonce[] = {0}; +static const unsigned char kat1130_persstr[] = { + 0x23, 0x2d, 0x59, 0xd3, 0xf2, 0x2b, 0x4e, 0xa5, 0x30, 0x52, 0x7a, 0x54, + 0xbc, 0xe5, 0xc0, 0x4f, 0x44, 0xdc, 0x25, 0xe1, 0xc6, 0x8a, 0x14, 0x59, + 0xe2, 0xeb, 0x14, 0xe8, 0x7f, 0x49, 0x69, 0x4f, 0xef, 0x87, 0x90, 0xe0, + 0xed, 0x25, 0x73, 0xa2, +}; +static const unsigned char kat1130_addin0[] = { + 0x84, 0x0a, 0x90, 0xb0, 0x5b, 0x85, 0x2f, 0x8d, 0x8e, 0x33, 0x0c, 0xef, + 0x55, 0xbe, 0xd5, 0xa4, 0x0e, 0x5b, 0x4d, 0x45, 0x2d, 0x77, 0xee, 0x4d, + 0x5f, 0x89, 0x25, 0xe5, 0x4c, 0x3b, 0x0d, 0xd8, 0xf1, 0x0b, 0xc8, 0x5d, + 0xe9, 0x89, 0x09, 0x36, +}; +static const unsigned char kat1130_addin1[] = { + 0xb7, 0x89, 0xc5, 0x03, 0xf6, 0x3c, 0x4b, 0x48, 0x75, 0xc9, 0xfc, 0x29, + 0x16, 0x94, 0x88, 0x5a, 0x5c, 0x2e, 0x16, 0x97, 0x62, 0x01, 0xd1, 0x81, + 0xff, 0xf3, 0x94, 0xa4, 0x69, 0x5e, 0xbf, 0x8d, 0xfc, 0x44, 0x19, 0x18, + 0x07, 0x58, 0x3d, 0x3d, +}; +static const unsigned char kat1130_retbits[] = { + 0x5a, 0x69, 0x12, 0xeb, 0x82, 0xed, 0x76, 0xaf, 0xbe, 0x45, 0x5b, 0x93, + 0xbd, 0xd8, 0x1d, 0x75, 0x49, 0xea, 0xee, 0x7b, 0x99, 0x2c, 0x92, 0x2a, + 0x63, 0x35, 0x6e, 0xb3, 0x24, 0x26, 0x24, 0xec, 0x01, 0xd1, 0x4e, 0x64, + 0x23, 0x85, 0xec, 0xae, 0xd5, 0x0a, 0x89, 0x02, 0xa9, 0x6c, 0x9f, 0x5d, + 0xbb, 0x92, 0xe2, 0x68, 0x91, 0xa9, 0x7a, 0x00, 0xf8, 0x19, 0x1b, 0xa6, + 0x18, 0x81, 0xaa, 0x20, +}; +static const struct drbg_kat_no_reseed kat1130_t = { + 4, kat1130_entropyin, kat1130_nonce, kat1130_persstr, + kat1130_addin0, kat1130_addin1, kat1130_retbits +}; +static const struct drbg_kat kat1130 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1130_t +}; + +static const unsigned char kat1131_entropyin[] = { + 0x50, 0x3e, 0x6f, 0xe0, 0xac, 0xdd, 0x4e, 0x64, 0xed, 0xdc, 0xf5, 0x9c, + 0x88, 0x6c, 0x7a, 0x85, 0x15, 0x91, 0x59, 0x0e, 0x48, 0x23, 0x46, 0xf3, + 0x8c, 0x46, 0x1c, 0xe5, 0xbf, 0xa3, 0xeb, 0x1b, 0x78, 0x43, 0xdc, 0x9b, + 0x3d, 0x19, 0x7d, 0x06, +}; +static const unsigned char kat1131_nonce[] = {0}; +static const unsigned char kat1131_persstr[] = { + 0xc3, 0xc0, 0x7b, 0x2c, 0xd5, 0xb3, 0x12, 0x07, 0xdc, 0x17, 0x11, 0x2b, + 0x27, 0xf7, 0xb7, 0xbe, 0xd1, 0x88, 0xc5, 0x2c, 0x0b, 0x8c, 0xcb, 0x55, + 0xe9, 0x62, 0xb7, 0x51, 0x26, 0x04, 0x30, 0xa5, 0x5f, 0x63, 0xd9, 0x2d, + 0xcf, 0x18, 0x75, 0xb7, +}; +static const unsigned char kat1131_addin0[] = { + 0xd8, 0xcb, 0x98, 0xd2, 0x11, 0x77, 0x96, 0x28, 0x8c, 0x61, 0x6b, 0x27, + 0xe0, 0xa3, 0x66, 0xb9, 0x39, 0xea, 0xcf, 0xcf, 0x0c, 0x9a, 0x0e, 0xf8, + 0x14, 0x6d, 0xed, 0x82, 0x98, 0x13, 0xcf, 0xa3, 0x77, 0xc1, 0x44, 0x67, + 0x79, 0xee, 0xed, 0xf5, +}; +static const unsigned char kat1131_addin1[] = { + 0xbc, 0x36, 0x78, 0x2d, 0x3a, 0x74, 0x36, 0x78, 0x3f, 0x07, 0x1e, 0xd8, + 0x19, 0x27, 0x64, 0x6a, 0xa7, 0xdf, 0xda, 0x1c, 0x87, 0xcd, 0x1f, 0xdd, + 0xf6, 0x7b, 0x59, 0xd3, 0xc0, 0x25, 0xb5, 0x8c, 0xbe, 0x18, 0x52, 0x63, + 0x54, 0x7d, 0x35, 0x37, +}; +static const unsigned char kat1131_retbits[] = { + 0x1a, 0xf7, 0xf9, 0xc7, 0x69, 0xc2, 0xc6, 0xa9, 0x6f, 0x80, 0x87, 0x20, + 0x25, 0x22, 0x0b, 0x6c, 0xc5, 0xca, 0x2b, 0xee, 0x66, 0x64, 0xa0, 0x1f, + 0xff, 0x47, 0x62, 0xb0, 0x72, 0x0e, 0xe2, 0xa9, 0x84, 0x32, 0xcb, 0xc4, + 0x84, 0x59, 0x09, 0xf7, 0x01, 0xd8, 0x10, 0x93, 0x45, 0x90, 0x1d, 0xf5, + 0x37, 0xfb, 0xab, 0xcf, 0x75, 0xf4, 0x6c, 0xc3, 0xa1, 0x8a, 0x7c, 0x07, + 0x60, 0x94, 0x11, 0x05, +}; +static const struct drbg_kat_no_reseed kat1131_t = { + 5, kat1131_entropyin, kat1131_nonce, kat1131_persstr, + kat1131_addin0, kat1131_addin1, kat1131_retbits +}; +static const struct drbg_kat kat1131 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1131_t +}; + +static const unsigned char kat1132_entropyin[] = { + 0x99, 0xfc, 0xa5, 0x5c, 0x7e, 0x8d, 0x75, 0xa5, 0x4c, 0x2c, 0xbf, 0xb8, + 0x3a, 0xc5, 0x7e, 0xf2, 0x66, 0x4c, 0x49, 0x82, 0x70, 0xd3, 0x7b, 0xb5, + 0x37, 0x7f, 0x1e, 0x8f, 0x07, 0x5b, 0x9b, 0xba, 0x8e, 0xa0, 0xcc, 0x3f, + 0x92, 0x21, 0xcc, 0x76, +}; +static const unsigned char kat1132_nonce[] = {0}; +static const unsigned char kat1132_persstr[] = { + 0xa0, 0xd7, 0x59, 0x87, 0xba, 0xcf, 0x99, 0xf2, 0xbc, 0x06, 0x1b, 0x8b, + 0x7d, 0x7e, 0x31, 0x9d, 0x68, 0x49, 0xbd, 0x01, 0x01, 0x2a, 0x05, 0xf0, + 0xc2, 0x63, 0xd5, 0x6f, 0xf5, 0x1d, 0x1a, 0x5e, 0x62, 0xe0, 0x88, 0x16, + 0xb5, 0x03, 0x3d, 0x62, +}; +static const unsigned char kat1132_addin0[] = { + 0xa2, 0x9c, 0x00, 0x6a, 0x4e, 0x8c, 0xb8, 0x9c, 0xf1, 0x0e, 0x2a, 0x13, + 0xe7, 0xa7, 0x94, 0xfa, 0x8d, 0x9a, 0xd6, 0x3b, 0x18, 0x4b, 0xdd, 0x59, + 0xb2, 0xf4, 0xed, 0x81, 0x58, 0x2a, 0x6a, 0xbd, 0xef, 0x11, 0x95, 0xb5, + 0x3f, 0xc4, 0xa2, 0x66, +}; +static const unsigned char kat1132_addin1[] = { + 0x82, 0x7e, 0x3d, 0x24, 0xb0, 0x2f, 0x0d, 0xe9, 0xad, 0xca, 0xca, 0x7d, + 0x22, 0x4b, 0xbd, 0x8d, 0x6d, 0xf5, 0x0d, 0x18, 0xcf, 0x41, 0x42, 0x57, + 0xb6, 0xd5, 0x53, 0xa4, 0x2b, 0x14, 0xe8, 0x3f, 0x2f, 0x54, 0xe2, 0x55, + 0x5e, 0x3f, 0xe1, 0x06, +}; +static const unsigned char kat1132_retbits[] = { + 0x67, 0xa2, 0xc4, 0x48, 0x48, 0x8a, 0x1f, 0xc1, 0xe6, 0xbc, 0x64, 0xa3, + 0x38, 0x71, 0xc1, 0x5d, 0x89, 0x81, 0x91, 0x4f, 0x4b, 0x06, 0x3f, 0x78, + 0x1c, 0x9d, 0xd1, 0x03, 0xd6, 0xf9, 0x28, 0x2e, 0xdb, 0xcc, 0x14, 0x97, + 0xe4, 0xbd, 0x1a, 0xb3, 0x70, 0xad, 0xfa, 0x17, 0x0e, 0x25, 0xa7, 0x07, + 0xe1, 0xe4, 0x3e, 0x0c, 0xbd, 0x95, 0x02, 0xda, 0x6e, 0x6b, 0xb8, 0xe4, + 0xe4, 0x55, 0xd1, 0xc1, +}; +static const struct drbg_kat_no_reseed kat1132_t = { + 6, kat1132_entropyin, kat1132_nonce, kat1132_persstr, + kat1132_addin0, kat1132_addin1, kat1132_retbits +}; +static const struct drbg_kat kat1132 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1132_t +}; + +static const unsigned char kat1133_entropyin[] = { + 0xc5, 0x34, 0x42, 0xf6, 0x79, 0xca, 0xaa, 0xbb, 0x9c, 0x99, 0xaa, 0x01, + 0x9e, 0x6c, 0x63, 0xba, 0xde, 0xb8, 0xbf, 0x2d, 0xaf, 0x98, 0x4b, 0x9e, + 0x9c, 0xb7, 0x9c, 0x2b, 0x02, 0x5a, 0x40, 0xd2, 0x08, 0x70, 0x4d, 0x73, + 0x86, 0xb0, 0x7a, 0x8c, +}; +static const unsigned char kat1133_nonce[] = {0}; +static const unsigned char kat1133_persstr[] = { + 0xbb, 0x12, 0x18, 0xbe, 0xb2, 0x9c, 0xdc, 0xb6, 0x8e, 0x38, 0x72, 0xdb, + 0x28, 0x68, 0x2d, 0x45, 0x91, 0x3a, 0xfb, 0x76, 0xb6, 0xd3, 0x5d, 0x8b, + 0x2b, 0x95, 0x07, 0xba, 0xe9, 0x12, 0x4f, 0x81, 0x93, 0x4d, 0x96, 0xaa, + 0x68, 0xf1, 0x90, 0xdb, +}; +static const unsigned char kat1133_addin0[] = { + 0xce, 0x35, 0x39, 0x9e, 0x1f, 0x43, 0xb2, 0x61, 0x1d, 0x41, 0xe2, 0x4f, + 0x41, 0x7d, 0x42, 0xec, 0x86, 0xfa, 0xbe, 0x8f, 0x25, 0x3b, 0x87, 0xba, + 0xc6, 0x3d, 0xe8, 0x17, 0xab, 0x22, 0x81, 0xf6, 0x7a, 0xe6, 0x88, 0x8d, + 0x7a, 0x9d, 0xfe, 0xde, +}; +static const unsigned char kat1133_addin1[] = { + 0x0a, 0x27, 0x8a, 0x9a, 0x22, 0x5c, 0xd0, 0xff, 0x6f, 0x2e, 0x97, 0x15, + 0x78, 0x96, 0x20, 0x36, 0xf5, 0xef, 0xc7, 0xeb, 0xfa, 0x24, 0xc2, 0xd0, + 0x35, 0xb5, 0xdd, 0x28, 0x75, 0xab, 0x81, 0x44, 0x08, 0xda, 0x49, 0x9b, + 0x98, 0xfe, 0x31, 0x6f, +}; +static const unsigned char kat1133_retbits[] = { + 0x1e, 0xc0, 0x0d, 0x83, 0xfa, 0x60, 0xf4, 0x87, 0x43, 0x89, 0xac, 0xa5, + 0x4e, 0xae, 0x3d, 0xcb, 0x00, 0x56, 0x27, 0x62, 0x58, 0xdc, 0x08, 0x52, + 0xde, 0x98, 0x25, 0xdb, 0xa1, 0x04, 0x97, 0xdf, 0xb7, 0xfe, 0xb3, 0x19, + 0xb2, 0x8b, 0xa1, 0xdc, 0x5a, 0xa4, 0x0a, 0x5f, 0x12, 0x2e, 0xcc, 0xc6, + 0x74, 0x3b, 0xf2, 0xf1, 0x24, 0xcb, 0xf2, 0x82, 0xac, 0x8a, 0x89, 0x9f, + 0x85, 0xf1, 0xa7, 0xa6, +}; +static const struct drbg_kat_no_reseed kat1133_t = { + 7, kat1133_entropyin, kat1133_nonce, kat1133_persstr, + kat1133_addin0, kat1133_addin1, kat1133_retbits +}; +static const struct drbg_kat kat1133 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1133_t +}; + +static const unsigned char kat1134_entropyin[] = { + 0x1b, 0xd8, 0x0f, 0x2e, 0x67, 0x5d, 0x87, 0x59, 0x1c, 0x60, 0x89, 0xf4, + 0x78, 0x89, 0xd0, 0x72, 0x0f, 0xa7, 0xa8, 0x46, 0x7c, 0x9d, 0xc2, 0x98, + 0x00, 0x65, 0x06, 0x57, 0x9e, 0x9d, 0xe7, 0x25, 0xbe, 0x11, 0x3b, 0x0e, + 0x21, 0x9a, 0x9f, 0x67, +}; +static const unsigned char kat1134_nonce[] = {0}; +static const unsigned char kat1134_persstr[] = { + 0x90, 0x1b, 0x44, 0x91, 0xda, 0x7f, 0x84, 0x92, 0xb6, 0xea, 0x91, 0x46, + 0x30, 0xaf, 0x93, 0xe7, 0xa1, 0xc1, 0xb2, 0x99, 0x05, 0xe1, 0x48, 0x4d, + 0x6a, 0x1b, 0x9a, 0x04, 0x3c, 0x22, 0xbd, 0xba, 0x3a, 0x02, 0xbf, 0x6a, + 0xb1, 0x62, 0x7c, 0xb5, +}; +static const unsigned char kat1134_addin0[] = { + 0xcf, 0x2c, 0x31, 0x01, 0xdd, 0x6a, 0xaf, 0x06, 0x84, 0xd1, 0xe4, 0x98, + 0xfc, 0xce, 0x47, 0xa8, 0x35, 0xd6, 0x4b, 0x9b, 0xd1, 0x5c, 0xe6, 0x06, + 0x9c, 0x8a, 0xce, 0x6f, 0xb1, 0x7b, 0x36, 0x92, 0xc4, 0x76, 0xdd, 0xde, + 0xb5, 0x65, 0xec, 0x0d, +}; +static const unsigned char kat1134_addin1[] = { + 0xe5, 0x82, 0x34, 0xd0, 0xd8, 0x82, 0x67, 0x05, 0xf4, 0x00, 0xfe, 0xff, + 0x72, 0x64, 0x1c, 0xb4, 0x2c, 0x02, 0x07, 0x9c, 0xc4, 0xd9, 0x75, 0x1c, + 0x00, 0x37, 0x78, 0xbe, 0xd4, 0x5f, 0x2d, 0x50, 0xc3, 0x97, 0xd6, 0x99, + 0xc6, 0x53, 0x00, 0x3d, +}; +static const unsigned char kat1134_retbits[] = { + 0x74, 0x4d, 0x1f, 0xca, 0x65, 0xaf, 0x43, 0x6a, 0x0c, 0x55, 0x5a, 0xf1, + 0x97, 0x00, 0x17, 0xe1, 0xba, 0x4c, 0x37, 0xf0, 0x85, 0xf7, 0x3b, 0xf4, + 0xe6, 0x69, 0x96, 0x36, 0x9f, 0x5a, 0x6b, 0x52, 0xbd, 0x93, 0xa5, 0xe0, + 0x68, 0x4a, 0xd1, 0x1c, 0xae, 0x56, 0x91, 0xe7, 0x65, 0x49, 0x6c, 0x35, + 0x08, 0xbc, 0x1e, 0x50, 0x90, 0x37, 0xc2, 0xbe, 0x83, 0x55, 0xa2, 0x9c, + 0x6b, 0x32, 0x61, 0x12, +}; +static const struct drbg_kat_no_reseed kat1134_t = { + 8, kat1134_entropyin, kat1134_nonce, kat1134_persstr, + kat1134_addin0, kat1134_addin1, kat1134_retbits +}; +static const struct drbg_kat kat1134 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1134_t +}; + +static const unsigned char kat1135_entropyin[] = { + 0xb5, 0x59, 0x81, 0xbe, 0x58, 0xa1, 0xdf, 0x6c, 0x69, 0xfc, 0x91, 0x05, + 0xa5, 0x47, 0x57, 0x40, 0xef, 0xe9, 0xcf, 0x09, 0xe1, 0xb3, 0xfc, 0xe2, + 0x49, 0xaa, 0xdb, 0x46, 0x1f, 0x1f, 0xfc, 0xac, 0xc1, 0xac, 0xd8, 0x29, + 0x0b, 0xff, 0x03, 0xd3, +}; +static const unsigned char kat1135_nonce[] = {0}; +static const unsigned char kat1135_persstr[] = { + 0xae, 0x53, 0x33, 0xfa, 0x93, 0xc5, 0x32, 0xda, 0x50, 0x3e, 0x58, 0x00, + 0xaf, 0x99, 0x4e, 0x0d, 0xc2, 0x57, 0x0e, 0x5a, 0x32, 0xa8, 0x02, 0xc2, + 0x12, 0x06, 0x18, 0x5a, 0x79, 0x56, 0x44, 0x33, 0xb5, 0x81, 0x1c, 0x42, + 0x71, 0x55, 0x55, 0x94, +}; +static const unsigned char kat1135_addin0[] = { + 0x98, 0xcb, 0x86, 0x0a, 0x53, 0xe7, 0xb6, 0xe6, 0x4e, 0x87, 0x4b, 0x07, + 0xf3, 0x1b, 0x36, 0x44, 0xff, 0x37, 0x99, 0x4a, 0x67, 0x6e, 0x31, 0xe6, + 0x24, 0x52, 0x15, 0xe3, 0xff, 0x0d, 0x5f, 0x34, 0xdd, 0x98, 0xda, 0xe1, + 0x53, 0x5c, 0x96, 0x5a, +}; +static const unsigned char kat1135_addin1[] = { + 0x37, 0x67, 0x95, 0x31, 0xc9, 0xfd, 0xd3, 0x65, 0x51, 0x4f, 0x57, 0x8d, + 0x0e, 0xdb, 0x19, 0xc2, 0x5e, 0xc6, 0x13, 0x24, 0x23, 0x4b, 0x96, 0x3f, + 0x9b, 0x0f, 0xac, 0xba, 0xc3, 0xcb, 0xe3, 0x83, 0xed, 0xaa, 0xb2, 0xfd, + 0x8d, 0x0a, 0xfb, 0x0c, +}; +static const unsigned char kat1135_retbits[] = { + 0xec, 0x49, 0x1d, 0xe0, 0x75, 0x88, 0xf7, 0x5b, 0x9a, 0x88, 0xdb, 0x02, + 0xb4, 0x11, 0x5f, 0xbb, 0xe3, 0xda, 0x26, 0xe8, 0xb7, 0x53, 0xb8, 0x65, + 0x47, 0xc2, 0x3f, 0xe7, 0x08, 0x85, 0xf2, 0x2a, 0x0c, 0xe0, 0x7a, 0x54, + 0xa3, 0xca, 0xc1, 0xa2, 0x6f, 0x82, 0xff, 0x84, 0x58, 0xb8, 0x20, 0xb6, + 0xd6, 0x0b, 0xc3, 0xb3, 0xe3, 0xba, 0x82, 0xf2, 0x10, 0xdd, 0xd0, 0x4d, + 0x95, 0x17, 0xe9, 0x7f, +}; +static const struct drbg_kat_no_reseed kat1135_t = { + 9, kat1135_entropyin, kat1135_nonce, kat1135_persstr, + kat1135_addin0, kat1135_addin1, kat1135_retbits +}; +static const struct drbg_kat kat1135 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1135_t +}; + +static const unsigned char kat1136_entropyin[] = { + 0x92, 0xa2, 0x9d, 0x6e, 0x9d, 0xd7, 0x82, 0x56, 0xa6, 0xf8, 0xe5, 0x3c, + 0x80, 0x5d, 0x2c, 0xd6, 0x0e, 0x56, 0xab, 0x68, 0x8b, 0xe2, 0xae, 0x3c, + 0x86, 0xc8, 0x40, 0x7b, 0x57, 0x1a, 0x22, 0xa6, 0xdc, 0xd9, 0x82, 0xd4, + 0xd2, 0x6d, 0xd9, 0xdf, +}; +static const unsigned char kat1136_nonce[] = {0}; +static const unsigned char kat1136_persstr[] = { + 0x5c, 0x0d, 0x2c, 0xfd, 0x68, 0xcf, 0x33, 0xf2, 0x3b, 0x53, 0x92, 0x77, + 0x8d, 0x4f, 0x55, 0x62, 0x22, 0xbf, 0xd8, 0x28, 0x9a, 0xcb, 0x45, 0x8d, + 0x7c, 0xdb, 0xbe, 0x9e, 0xde, 0x29, 0x44, 0xee, 0x80, 0xdb, 0x79, 0x6c, + 0x0d, 0x24, 0xb6, 0xe9, +}; +static const unsigned char kat1136_addin0[] = { + 0xd8, 0xed, 0xe8, 0x2f, 0x04, 0x22, 0x99, 0xfe, 0xb1, 0xe7, 0xf5, 0xfe, + 0xbd, 0x1e, 0x16, 0x22, 0xd4, 0x61, 0x13, 0xcf, 0x3f, 0xc1, 0xac, 0xfb, + 0xb8, 0xcd, 0xdc, 0x4b, 0x49, 0x9a, 0x35, 0x9e, 0x14, 0xcc, 0xc9, 0x4f, + 0xda, 0x1d, 0xa8, 0x3b, +}; +static const unsigned char kat1136_addin1[] = { + 0xc5, 0x93, 0x79, 0x9d, 0x69, 0xdd, 0x85, 0x11, 0x91, 0xd9, 0xc9, 0xb3, + 0xba, 0x00, 0xbd, 0xdb, 0x50, 0x83, 0x16, 0x0b, 0x5d, 0x32, 0xcb, 0xbb, + 0x6d, 0xdc, 0xe7, 0x68, 0x20, 0x65, 0x2b, 0x04, 0x70, 0x2a, 0x80, 0xfb, + 0x8e, 0x11, 0xd3, 0x84, +}; +static const unsigned char kat1136_retbits[] = { + 0x70, 0x20, 0x86, 0x99, 0x10, 0x2b, 0x6b, 0x7f, 0xe9, 0x55, 0x7c, 0x31, + 0xf8, 0x02, 0xc1, 0xf5, 0xa9, 0xb9, 0x4e, 0x4c, 0xe4, 0x03, 0xb9, 0x1e, + 0xd8, 0xb1, 0x09, 0xa8, 0x4c, 0x88, 0x60, 0x61, 0x30, 0xff, 0x5d, 0x29, + 0xa6, 0xd3, 0xc9, 0x87, 0xaf, 0xba, 0xa4, 0xd7, 0x73, 0x03, 0x0b, 0x29, + 0xc6, 0xc6, 0x20, 0x47, 0x31, 0x14, 0xa2, 0xff, 0x9c, 0x2e, 0xc3, 0xf2, + 0x8b, 0x21, 0x1f, 0xd7, +}; +static const struct drbg_kat_no_reseed kat1136_t = { + 10, kat1136_entropyin, kat1136_nonce, kat1136_persstr, + kat1136_addin0, kat1136_addin1, kat1136_retbits +}; +static const struct drbg_kat kat1136 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1136_t +}; + +static const unsigned char kat1137_entropyin[] = { + 0x5b, 0x02, 0x9c, 0x45, 0x71, 0xfd, 0x64, 0x3b, 0x7e, 0x90, 0x46, 0xbf, + 0xa0, 0xb7, 0x74, 0x1c, 0x49, 0x48, 0x12, 0x5e, 0x1a, 0xfc, 0x3a, 0xdc, + 0xa4, 0x43, 0xa5, 0x10, 0xa2, 0x80, 0x0d, 0x4c, 0xc2, 0xed, 0x4e, 0x7d, + 0x97, 0xa7, 0x1f, 0x27, +}; +static const unsigned char kat1137_nonce[] = {0}; +static const unsigned char kat1137_persstr[] = { + 0xcf, 0x92, 0xf9, 0xc2, 0x01, 0x0a, 0xcf, 0xc6, 0xd2, 0xd8, 0xf1, 0x51, + 0xc8, 0x35, 0xf0, 0x96, 0xd5, 0xc8, 0xaa, 0x20, 0xcf, 0x9f, 0x84, 0xe1, + 0x59, 0x10, 0xf7, 0xc9, 0x1d, 0xba, 0xf1, 0xd2, 0x57, 0x1d, 0xc2, 0x1a, + 0x57, 0x8d, 0x02, 0x0c, +}; +static const unsigned char kat1137_addin0[] = { + 0x31, 0x0e, 0x3f, 0xcf, 0x56, 0x03, 0xa5, 0x1e, 0x8a, 0x75, 0x30, 0xed, + 0x5c, 0x1d, 0x9b, 0x4f, 0x66, 0x8d, 0xc2, 0x0f, 0x8d, 0x2f, 0xae, 0x75, + 0x22, 0x14, 0x39, 0x1f, 0x42, 0xba, 0x7c, 0xc5, 0x33, 0xd9, 0x4a, 0x20, + 0xc8, 0x17, 0x25, 0x6d, +}; +static const unsigned char kat1137_addin1[] = { + 0xcc, 0x00, 0xf2, 0xb0, 0x76, 0x22, 0xad, 0x7b, 0x40, 0xae, 0xf5, 0x64, + 0x42, 0xee, 0xfc, 0x10, 0x0c, 0x68, 0xd1, 0xdd, 0xc4, 0xc4, 0x7d, 0xfa, + 0xf7, 0x80, 0x46, 0xcd, 0x6f, 0x5e, 0x2e, 0x09, 0x19, 0xe1, 0xff, 0xd4, + 0x04, 0x06, 0xd9, 0x0e, +}; +static const unsigned char kat1137_retbits[] = { + 0xc7, 0xa0, 0xf3, 0x02, 0xc7, 0x00, 0x5c, 0x10, 0x10, 0xf3, 0x79, 0x78, + 0x75, 0xfb, 0x4d, 0xaa, 0x0f, 0x44, 0x1d, 0x84, 0x28, 0x86, 0xec, 0x14, + 0xe8, 0x38, 0xfc, 0x90, 0x41, 0x36, 0x4e, 0x4e, 0x8a, 0x31, 0x55, 0x64, + 0xdf, 0x67, 0x1b, 0xad, 0xef, 0x5f, 0xc6, 0x5e, 0x13, 0xa3, 0xb8, 0xed, + 0xce, 0x4c, 0x89, 0x21, 0xeb, 0xa4, 0x48, 0x24, 0x7b, 0xe6, 0xae, 0x02, + 0xac, 0xfc, 0x95, 0xc9, +}; +static const struct drbg_kat_no_reseed kat1137_t = { + 11, kat1137_entropyin, kat1137_nonce, kat1137_persstr, + kat1137_addin0, kat1137_addin1, kat1137_retbits +}; +static const struct drbg_kat kat1137 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1137_t +}; + +static const unsigned char kat1138_entropyin[] = { + 0xc6, 0x41, 0xe9, 0xda, 0xc4, 0x08, 0xe8, 0xd6, 0x99, 0xe8, 0x95, 0x50, + 0x01, 0x94, 0xe0, 0xd6, 0xe2, 0xf6, 0xd5, 0x20, 0xae, 0x00, 0x67, 0x66, + 0x2c, 0xc4, 0x95, 0x13, 0x76, 0xe5, 0x49, 0xa2, 0xc5, 0x58, 0x5e, 0xa1, + 0x3d, 0x00, 0x71, 0x5c, +}; +static const unsigned char kat1138_nonce[] = {0}; +static const unsigned char kat1138_persstr[] = { + 0x84, 0xa5, 0x85, 0xa8, 0xef, 0x75, 0x85, 0xc5, 0x85, 0x8d, 0x41, 0x54, + 0xb5, 0xa6, 0x4b, 0xd1, 0x2c, 0xe2, 0x28, 0x6f, 0xb9, 0x53, 0x58, 0x6d, + 0x17, 0x50, 0xcf, 0xc1, 0xab, 0xbc, 0x32, 0xac, 0x7c, 0xec, 0x77, 0x01, + 0x46, 0x4f, 0x2f, 0x69, +}; +static const unsigned char kat1138_addin0[] = { + 0x3d, 0x20, 0x44, 0x7e, 0x1a, 0x80, 0xa8, 0x24, 0x0c, 0x91, 0xf3, 0xb7, + 0x38, 0x2f, 0x61, 0x49, 0x8c, 0xd8, 0xe0, 0x84, 0xc7, 0x4b, 0x18, 0x88, + 0xeb, 0xc9, 0x8d, 0xfd, 0xff, 0x3e, 0xe7, 0xcf, 0xe1, 0x12, 0xe7, 0x20, + 0x48, 0x8d, 0xf2, 0x4e, +}; +static const unsigned char kat1138_addin1[] = { + 0xdf, 0xb0, 0x06, 0x04, 0x9a, 0xe7, 0x72, 0x7d, 0x44, 0xba, 0xae, 0xa5, + 0x3d, 0x6f, 0x87, 0xe7, 0x35, 0x80, 0x6b, 0x77, 0x43, 0x2f, 0x0b, 0x47, + 0x43, 0xda, 0xaa, 0xd7, 0x49, 0xca, 0x73, 0x7e, 0xc4, 0x6e, 0x92, 0xcd, + 0x15, 0x93, 0xe5, 0x82, +}; +static const unsigned char kat1138_retbits[] = { + 0x9a, 0xbe, 0x0d, 0x01, 0x19, 0xb7, 0xf3, 0xef, 0x7d, 0xc1, 0x7b, 0x18, + 0xa4, 0x1a, 0xd9, 0x33, 0x4c, 0x91, 0x89, 0xbd, 0x1d, 0x51, 0x2f, 0x75, + 0x64, 0xef, 0x67, 0xb8, 0x68, 0xd5, 0xf8, 0x88, 0x16, 0x81, 0x2d, 0x8f, + 0x58, 0x54, 0x45, 0x59, 0xfd, 0x0f, 0x4b, 0x4b, 0xc6, 0x7a, 0x60, 0x51, + 0xf3, 0x25, 0x05, 0xde, 0x38, 0x24, 0xcb, 0x57, 0x7d, 0x21, 0x5e, 0x51, + 0x6b, 0xf9, 0x1d, 0x6e, +}; +static const struct drbg_kat_no_reseed kat1138_t = { + 12, kat1138_entropyin, kat1138_nonce, kat1138_persstr, + kat1138_addin0, kat1138_addin1, kat1138_retbits +}; +static const struct drbg_kat kat1138 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1138_t +}; + +static const unsigned char kat1139_entropyin[] = { + 0x36, 0xf4, 0xa1, 0xb0, 0x30, 0x04, 0xf7, 0x07, 0x06, 0xeb, 0x81, 0xf3, + 0x87, 0xa2, 0x30, 0x68, 0xb8, 0xdf, 0xde, 0x8d, 0xfe, 0xc8, 0x7d, 0xed, + 0xc9, 0xa5, 0xc7, 0xc9, 0x96, 0x49, 0x69, 0x62, 0x76, 0x4d, 0x7c, 0x8f, + 0xa7, 0x1e, 0x64, 0xef, +}; +static const unsigned char kat1139_nonce[] = {0}; +static const unsigned char kat1139_persstr[] = { + 0xb3, 0x49, 0x17, 0x1a, 0xb7, 0xbd, 0x18, 0xe2, 0x8f, 0x61, 0x2b, 0xe9, + 0x95, 0x5c, 0x05, 0x8e, 0x6a, 0x92, 0xd3, 0x89, 0x28, 0x62, 0x0b, 0x09, + 0x33, 0x0d, 0x2a, 0x7b, 0xcf, 0xea, 0x43, 0x5f, 0xea, 0x11, 0x54, 0x94, + 0x3f, 0xd0, 0xa8, 0x89, +}; +static const unsigned char kat1139_addin0[] = { + 0x3d, 0x84, 0x17, 0x4d, 0x19, 0x2e, 0xf0, 0x2c, 0xbc, 0xf0, 0x57, 0x65, + 0x22, 0x8f, 0x21, 0xc7, 0x96, 0xcd, 0x09, 0xf9, 0x68, 0x90, 0xea, 0x6d, + 0x45, 0x87, 0x9a, 0x11, 0x99, 0x1e, 0xe1, 0x6a, 0xa6, 0x19, 0xc8, 0x55, + 0xbd, 0x53, 0x07, 0x87, +}; +static const unsigned char kat1139_addin1[] = { + 0x68, 0xac, 0x7f, 0x7b, 0x56, 0x89, 0x68, 0x3a, 0xb3, 0x47, 0x39, 0x80, + 0x82, 0x19, 0x5f, 0xc4, 0x18, 0x1b, 0x7f, 0x3a, 0x51, 0xa9, 0x80, 0xbf, + 0x7e, 0x21, 0xde, 0xa7, 0x56, 0xad, 0xa3, 0xc9, 0x02, 0x04, 0x48, 0x94, + 0x95, 0x1b, 0x96, 0x4b, +}; +static const unsigned char kat1139_retbits[] = { + 0xf4, 0x30, 0xda, 0x38, 0xec, 0xa9, 0x52, 0x74, 0x48, 0x3b, 0xea, 0xc0, + 0x3d, 0x6a, 0xb7, 0xc9, 0x78, 0x21, 0x98, 0x2f, 0x9e, 0xe5, 0xd5, 0x6c, + 0x9c, 0xfe, 0x34, 0x5a, 0x38, 0xcf, 0xe5, 0x84, 0xc4, 0xa2, 0x89, 0x98, + 0x8a, 0x19, 0x6e, 0x80, 0x27, 0x2c, 0x7c, 0xfe, 0x8d, 0xae, 0x88, 0xda, + 0x76, 0x53, 0x46, 0x51, 0x78, 0x09, 0x47, 0xd6, 0xff, 0xfb, 0xc3, 0x1e, + 0x1b, 0x00, 0xd5, 0x1a, +}; +static const struct drbg_kat_no_reseed kat1139_t = { + 13, kat1139_entropyin, kat1139_nonce, kat1139_persstr, + kat1139_addin0, kat1139_addin1, kat1139_retbits +}; +static const struct drbg_kat kat1139 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1139_t +}; + +static const unsigned char kat1140_entropyin[] = { + 0x0f, 0x1a, 0xfc, 0x90, 0xbb, 0x04, 0xe2, 0x7d, 0xf4, 0x8e, 0x0a, 0xf7, + 0xdb, 0xdb, 0x65, 0xee, 0x68, 0x83, 0x72, 0xbe, 0x1b, 0x7e, 0x9d, 0xab, + 0xe2, 0x6f, 0x03, 0x4d, 0xb1, 0xbf, 0xeb, 0x1b, 0x14, 0xda, 0x62, 0x80, + 0xb2, 0x88, 0xf5, 0x95, +}; +static const unsigned char kat1140_nonce[] = {0}; +static const unsigned char kat1140_persstr[] = { + 0x4c, 0xf6, 0x9b, 0xaf, 0x93, 0x94, 0x8a, 0xba, 0x55, 0xfb, 0x49, 0x47, + 0x1c, 0x79, 0xc7, 0xc4, 0xb2, 0x30, 0xdc, 0x06, 0x1c, 0x28, 0xd4, 0xb5, + 0x11, 0x34, 0xe1, 0xef, 0xba, 0x84, 0xc1, 0x24, 0x02, 0xc2, 0xd2, 0x4a, + 0x12, 0x39, 0xf0, 0x3e, +}; +static const unsigned char kat1140_addin0[] = { + 0x28, 0xcb, 0x3c, 0xec, 0xec, 0x57, 0x05, 0xc0, 0x20, 0xd8, 0xa3, 0xed, + 0xb8, 0x07, 0x9e, 0x00, 0x40, 0x50, 0xd4, 0x80, 0xef, 0xee, 0x70, 0xfa, + 0xec, 0x7e, 0x1b, 0x00, 0xe2, 0x56, 0xd0, 0x00, 0x20, 0x7e, 0x51, 0x19, + 0x23, 0xce, 0xdb, 0x93, +}; +static const unsigned char kat1140_addin1[] = { + 0xbf, 0x2d, 0x13, 0x8b, 0x18, 0xcd, 0x6f, 0x6c, 0x69, 0x89, 0x01, 0xdb, + 0x8b, 0x60, 0x5b, 0x59, 0x8b, 0x0c, 0x3e, 0xc9, 0xfb, 0x0b, 0x14, 0xf9, + 0xb5, 0x86, 0xb7, 0x91, 0xab, 0x69, 0x76, 0x71, 0x7f, 0xcd, 0xda, 0x68, + 0xe4, 0x2e, 0x08, 0x3c, +}; +static const unsigned char kat1140_retbits[] = { + 0xfe, 0xbe, 0x35, 0x8e, 0x4d, 0xaf, 0x7e, 0x19, 0x38, 0xd8, 0xc0, 0x75, + 0x6a, 0xe3, 0x95, 0x31, 0xb1, 0xbc, 0x49, 0x7e, 0x60, 0x3f, 0x91, 0xc7, + 0xaa, 0x22, 0x03, 0x32, 0x76, 0x04, 0x14, 0x4e, 0xb4, 0x42, 0xad, 0x2e, + 0xfe, 0xe1, 0xfe, 0x9b, 0x1b, 0xbc, 0xf3, 0x3a, 0x5e, 0xaf, 0xa9, 0x4c, + 0x3c, 0x04, 0xd5, 0x83, 0x63, 0x1b, 0x91, 0xfe, 0x55, 0x0d, 0xaf, 0x22, + 0x7d, 0x5c, 0xc0, 0x5d, +}; +static const struct drbg_kat_no_reseed kat1140_t = { + 14, kat1140_entropyin, kat1140_nonce, kat1140_persstr, + kat1140_addin0, kat1140_addin1, kat1140_retbits +}; +static const struct drbg_kat kat1140 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1140_t +}; + +static const unsigned char kat1141_entropyin[] = { + 0x57, 0xba, 0xaf, 0xe6, 0x34, 0x5d, 0xb0, 0x9f, 0x64, 0xa6, 0xdc, 0xfc, + 0xd0, 0x15, 0x02, 0x67, 0x27, 0xde, 0x8d, 0x67, 0xbd, 0x6e, 0x90, 0x8a, + 0xbd, 0xde, 0x11, 0xe9, 0xea, 0x07, 0xbf, 0x03, 0x7c, 0x92, 0x61, 0xfd, + 0x0f, 0xa9, 0x1f, 0xf9, +}; +static const unsigned char kat1141_nonce[] = {0}; +static const unsigned char kat1141_persstr[] = {0}; +static const unsigned char kat1141_addin0[] = {0}; +static const unsigned char kat1141_addin1[] = {0}; +static const unsigned char kat1141_retbits[] = { + 0xe3, 0x79, 0xa1, 0x00, 0x8a, 0x57, 0x1c, 0xc7, 0xfb, 0x1f, 0x71, 0x76, + 0x4c, 0x1c, 0x1a, 0x7e, 0xe8, 0xe0, 0x75, 0x2d, 0xf4, 0xc0, 0x38, 0xb2, + 0xb1, 0x62, 0xe0, 0x21, 0x7c, 0x56, 0xde, 0x4e, 0x5d, 0x2a, 0x52, 0xb8, + 0x5b, 0x98, 0x8e, 0xce, 0x21, 0xb2, 0x11, 0x01, 0xbb, 0x13, 0xf2, 0x3c, + 0x38, 0x2f, 0x81, 0x2c, 0xe3, 0x11, 0x0d, 0x94, 0x4a, 0x59, 0x4b, 0xf6, + 0x83, 0x12, 0x73, 0xdc, +}; +static const struct drbg_kat_no_reseed kat1141_t = { + 0, kat1141_entropyin, kat1141_nonce, kat1141_persstr, + kat1141_addin0, kat1141_addin1, kat1141_retbits +}; +static const struct drbg_kat kat1141 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1141_t +}; + +static const unsigned char kat1142_entropyin[] = { + 0x1a, 0x58, 0x63, 0x78, 0xc3, 0x66, 0xaf, 0x5c, 0xe0, 0x03, 0xae, 0x0c, + 0x0b, 0x97, 0x0b, 0xa8, 0xb4, 0xcf, 0x98, 0x18, 0x17, 0xd5, 0x01, 0x24, + 0xcb, 0x47, 0xb8, 0x39, 0xda, 0x20, 0x8e, 0x92, 0x9f, 0x59, 0x27, 0x23, + 0x21, 0x98, 0x0a, 0xb4, +}; +static const unsigned char kat1142_nonce[] = {0}; +static const unsigned char kat1142_persstr[] = {0}; +static const unsigned char kat1142_addin0[] = {0}; +static const unsigned char kat1142_addin1[] = {0}; +static const unsigned char kat1142_retbits[] = { + 0xdd, 0x4f, 0x02, 0xfe, 0x69, 0xef, 0xb5, 0xcc, 0x00, 0x76, 0xda, 0x25, + 0x13, 0x6f, 0x73, 0x67, 0x3c, 0xf2, 0xba, 0x38, 0x63, 0x5b, 0x5b, 0x1d, + 0xd7, 0x9b, 0xab, 0xd6, 0x21, 0xeb, 0x4c, 0x2b, 0x6b, 0xe3, 0xe9, 0xde, + 0xbf, 0x43, 0xa7, 0xa2, 0xa7, 0x47, 0xf4, 0xd6, 0xd6, 0x86, 0x1e, 0xa1, + 0xad, 0x32, 0xef, 0x70, 0x8f, 0xc9, 0x8d, 0x7b, 0xcf, 0xe1, 0xdc, 0xd3, + 0xc7, 0x15, 0x17, 0x5f, +}; +static const struct drbg_kat_no_reseed kat1142_t = { + 1, kat1142_entropyin, kat1142_nonce, kat1142_persstr, + kat1142_addin0, kat1142_addin1, kat1142_retbits +}; +static const struct drbg_kat kat1142 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1142_t +}; + +static const unsigned char kat1143_entropyin[] = { + 0x7f, 0xfe, 0x0a, 0x1a, 0x9d, 0x05, 0xe3, 0xac, 0xc9, 0x69, 0x80, 0x88, + 0xbb, 0x03, 0x4d, 0x6f, 0xf7, 0x9a, 0x4c, 0x45, 0xd2, 0x3a, 0x15, 0x44, + 0xcc, 0xbf, 0x94, 0xe4, 0xd4, 0xe5, 0xbe, 0x2b, 0x8c, 0x90, 0x2d, 0x63, + 0xb7, 0x5e, 0xc9, 0x76, +}; +static const unsigned char kat1143_nonce[] = {0}; +static const unsigned char kat1143_persstr[] = {0}; +static const unsigned char kat1143_addin0[] = {0}; +static const unsigned char kat1143_addin1[] = {0}; +static const unsigned char kat1143_retbits[] = { + 0x09, 0x78, 0x45, 0xf0, 0x9c, 0x3e, 0x70, 0xd9, 0x57, 0xaa, 0x6b, 0x21, + 0x1f, 0xdf, 0xbc, 0x83, 0xab, 0xc4, 0xe5, 0x22, 0x4d, 0x0d, 0x40, 0x12, + 0x3e, 0xf8, 0xc9, 0x44, 0x3a, 0xf4, 0x6a, 0x27, 0x3b, 0x6f, 0x99, 0x85, + 0xb9, 0x02, 0x53, 0x74, 0x4f, 0x37, 0x60, 0x2c, 0x9b, 0x71, 0x66, 0x45, + 0x8c, 0x37, 0x0a, 0xbb, 0xa3, 0xc9, 0x70, 0x1f, 0xec, 0x7c, 0xe3, 0xe7, + 0x8f, 0x34, 0x0e, 0x44, +}; +static const struct drbg_kat_no_reseed kat1143_t = { + 2, kat1143_entropyin, kat1143_nonce, kat1143_persstr, + kat1143_addin0, kat1143_addin1, kat1143_retbits +}; +static const struct drbg_kat kat1143 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1143_t +}; + +static const unsigned char kat1144_entropyin[] = { + 0xe9, 0x34, 0x75, 0x96, 0xbb, 0xae, 0x3b, 0x2b, 0x2f, 0x8f, 0xd1, 0xd9, + 0xef, 0xe8, 0xa1, 0x66, 0xe2, 0x99, 0xf3, 0x7a, 0xdb, 0xc2, 0xcc, 0x0b, + 0x3c, 0xd6, 0x32, 0xda, 0x86, 0x0e, 0xf7, 0xbe, 0x44, 0xae, 0xc3, 0xf2, + 0x5a, 0x74, 0xea, 0xa8, +}; +static const unsigned char kat1144_nonce[] = {0}; +static const unsigned char kat1144_persstr[] = {0}; +static const unsigned char kat1144_addin0[] = {0}; +static const unsigned char kat1144_addin1[] = {0}; +static const unsigned char kat1144_retbits[] = { + 0xab, 0x53, 0xf7, 0xee, 0x10, 0xf3, 0xd8, 0xcd, 0x4d, 0x47, 0x50, 0x35, + 0x61, 0x1b, 0xa5, 0x18, 0x2f, 0x08, 0x56, 0x71, 0x49, 0x4c, 0x71, 0x50, + 0xbb, 0x02, 0xb1, 0xe5, 0x9e, 0xf4, 0xfb, 0x2a, 0x86, 0x0f, 0x72, 0xc4, + 0xde, 0x85, 0xbc, 0x68, 0xbe, 0x37, 0x2d, 0x72, 0x74, 0x33, 0xa3, 0xe2, + 0x41, 0x6c, 0x43, 0x1f, 0x6f, 0xc5, 0x3b, 0xd5, 0xcb, 0xe3, 0xd2, 0x67, + 0x9d, 0x00, 0xe1, 0xd3, +}; +static const struct drbg_kat_no_reseed kat1144_t = { + 3, kat1144_entropyin, kat1144_nonce, kat1144_persstr, + kat1144_addin0, kat1144_addin1, kat1144_retbits +}; +static const struct drbg_kat kat1144 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1144_t +}; + +static const unsigned char kat1145_entropyin[] = { + 0x34, 0xa6, 0xed, 0xe9, 0xf5, 0xbb, 0x07, 0x11, 0x52, 0xe9, 0x4b, 0x84, + 0xb3, 0x68, 0xb4, 0xd0, 0xd6, 0x2a, 0x63, 0xac, 0xd7, 0x2a, 0xe5, 0x6a, + 0x42, 0x40, 0x21, 0x77, 0x69, 0x03, 0x87, 0xa4, 0xbd, 0xb8, 0xfd, 0x82, + 0xbe, 0xa0, 0xd1, 0x71, +}; +static const unsigned char kat1145_nonce[] = {0}; +static const unsigned char kat1145_persstr[] = {0}; +static const unsigned char kat1145_addin0[] = {0}; +static const unsigned char kat1145_addin1[] = {0}; +static const unsigned char kat1145_retbits[] = { + 0xee, 0x87, 0x63, 0x99, 0xe8, 0xc2, 0x41, 0x50, 0x8a, 0x8f, 0xfb, 0xbe, + 0x51, 0x53, 0x82, 0x17, 0x07, 0xcd, 0x06, 0x48, 0x94, 0x34, 0x6e, 0xe7, + 0xfb, 0x88, 0xac, 0x30, 0xfa, 0x62, 0xd4, 0x94, 0xcd, 0xd4, 0xf8, 0x97, + 0x64, 0x80, 0xe5, 0x07, 0xc6, 0xa6, 0xc9, 0x48, 0x40, 0x57, 0x46, 0xc9, + 0x6c, 0xc4, 0xf0, 0x0d, 0x04, 0x1b, 0xe9, 0x18, 0x21, 0x54, 0xe8, 0x68, + 0x2d, 0xe2, 0x83, 0xe4, +}; +static const struct drbg_kat_no_reseed kat1145_t = { + 4, kat1145_entropyin, kat1145_nonce, kat1145_persstr, + kat1145_addin0, kat1145_addin1, kat1145_retbits +}; +static const struct drbg_kat kat1145 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1145_t +}; + +static const unsigned char kat1146_entropyin[] = { + 0xfa, 0x58, 0xbf, 0xb2, 0xce, 0x5f, 0x12, 0x1c, 0x5f, 0x13, 0xf2, 0x99, + 0x1d, 0x3f, 0xb0, 0x73, 0x6a, 0x3a, 0xb6, 0xec, 0x1c, 0xd7, 0xec, 0xd0, + 0x42, 0x66, 0x72, 0x72, 0x0c, 0xb0, 0xb0, 0x7d, 0x1f, 0xbb, 0xd7, 0x6e, + 0x5a, 0xc9, 0x31, 0xc9, +}; +static const unsigned char kat1146_nonce[] = {0}; +static const unsigned char kat1146_persstr[] = {0}; +static const unsigned char kat1146_addin0[] = {0}; +static const unsigned char kat1146_addin1[] = {0}; +static const unsigned char kat1146_retbits[] = { + 0x47, 0xa8, 0x6c, 0xa5, 0x30, 0xd6, 0xcc, 0xae, 0xfe, 0xad, 0x5a, 0x7e, + 0xc0, 0xd0, 0x19, 0x83, 0x2c, 0x99, 0xe3, 0xb5, 0x7a, 0xed, 0x50, 0xaf, + 0x0c, 0xac, 0x75, 0x19, 0x5f, 0x77, 0x2c, 0xde, 0x34, 0x35, 0x3e, 0x96, + 0x53, 0x38, 0xf1, 0xd6, 0x0f, 0xbf, 0xa0, 0xa7, 0xe0, 0xb3, 0x81, 0x6f, + 0x84, 0xc9, 0x05, 0xf7, 0xbd, 0xc1, 0xfc, 0x07, 0xb7, 0xb0, 0xc4, 0x28, + 0x35, 0x0d, 0x4d, 0xa0, +}; +static const struct drbg_kat_no_reseed kat1146_t = { + 5, kat1146_entropyin, kat1146_nonce, kat1146_persstr, + kat1146_addin0, kat1146_addin1, kat1146_retbits +}; +static const struct drbg_kat kat1146 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1146_t +}; + +static const unsigned char kat1147_entropyin[] = { + 0x4e, 0xb1, 0xee, 0x44, 0x7c, 0x05, 0x84, 0x4a, 0x85, 0xe7, 0x70, 0xad, + 0x94, 0x78, 0xfb, 0xd7, 0x12, 0x5e, 0xa6, 0x37, 0x75, 0x61, 0xf5, 0xe8, + 0x82, 0x47, 0x0c, 0x2e, 0xab, 0x03, 0x07, 0xec, 0xc0, 0xf0, 0x89, 0xd9, + 0xa5, 0x9a, 0x2f, 0x6e, +}; +static const unsigned char kat1147_nonce[] = {0}; +static const unsigned char kat1147_persstr[] = {0}; +static const unsigned char kat1147_addin0[] = {0}; +static const unsigned char kat1147_addin1[] = {0}; +static const unsigned char kat1147_retbits[] = { + 0x2f, 0xbe, 0xcb, 0x74, 0x9c, 0x54, 0xaa, 0x7e, 0xbd, 0xda, 0x64, 0xff, + 0x25, 0x33, 0x48, 0xb9, 0x81, 0x80, 0xb7, 0x89, 0x3d, 0xeb, 0x49, 0xd1, + 0x8a, 0x0f, 0x9a, 0x16, 0x2b, 0xcb, 0x0e, 0x3f, 0xd1, 0xea, 0xc4, 0xbb, + 0x8a, 0x6b, 0xb5, 0xff, 0xef, 0x8d, 0x42, 0x45, 0xb1, 0x29, 0x1f, 0xd4, + 0x0d, 0x4e, 0xce, 0x23, 0xe0, 0x2e, 0x78, 0x78, 0x56, 0x90, 0xd6, 0x39, + 0x87, 0x87, 0x9f, 0x39, +}; +static const struct drbg_kat_no_reseed kat1147_t = { + 6, kat1147_entropyin, kat1147_nonce, kat1147_persstr, + kat1147_addin0, kat1147_addin1, kat1147_retbits +}; +static const struct drbg_kat kat1147 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1147_t +}; + +static const unsigned char kat1148_entropyin[] = { + 0x77, 0x61, 0x65, 0xc8, 0x7c, 0xc4, 0x17, 0x1f, 0xdf, 0x11, 0x01, 0x6f, + 0x3b, 0x5b, 0x7f, 0x0a, 0xca, 0xff, 0xb6, 0x78, 0x92, 0xcb, 0x48, 0x15, + 0x67, 0x1f, 0xe6, 0xa7, 0x76, 0x6e, 0xfe, 0x4e, 0x1c, 0x9f, 0x2e, 0x4e, + 0x09, 0x01, 0x7e, 0xf1, +}; +static const unsigned char kat1148_nonce[] = {0}; +static const unsigned char kat1148_persstr[] = {0}; +static const unsigned char kat1148_addin0[] = {0}; +static const unsigned char kat1148_addin1[] = {0}; +static const unsigned char kat1148_retbits[] = { + 0x97, 0x28, 0x97, 0x3e, 0xc6, 0x2f, 0x1b, 0x4b, 0x3b, 0x2d, 0xb9, 0x05, + 0xf0, 0xc1, 0x99, 0x15, 0x79, 0x5f, 0x9b, 0xae, 0xe4, 0x7a, 0x36, 0xcd, + 0x0a, 0xa0, 0x2f, 0x02, 0xdd, 0x9b, 0x4d, 0xd9, 0x10, 0xb2, 0xc0, 0xa9, + 0xaf, 0xef, 0x7b, 0x29, 0x0d, 0x1f, 0x7b, 0xee, 0xa3, 0xc6, 0xf2, 0x8b, + 0x5b, 0x27, 0x6e, 0x2f, 0x45, 0xc0, 0x3a, 0xb6, 0x05, 0xa3, 0x43, 0x7f, + 0x6e, 0x39, 0x89, 0x81, +}; +static const struct drbg_kat_no_reseed kat1148_t = { + 7, kat1148_entropyin, kat1148_nonce, kat1148_persstr, + kat1148_addin0, kat1148_addin1, kat1148_retbits +}; +static const struct drbg_kat kat1148 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1148_t +}; + +static const unsigned char kat1149_entropyin[] = { + 0x13, 0xd4, 0x85, 0xf3, 0x61, 0xe6, 0x8c, 0xaa, 0x91, 0xa9, 0xc2, 0x7f, + 0xa4, 0xc8, 0x37, 0x2d, 0xb3, 0xb5, 0xb8, 0xb9, 0x5c, 0x44, 0xc4, 0x0c, + 0x8d, 0x61, 0x07, 0x1a, 0x6d, 0x9e, 0xb0, 0xf8, 0x2a, 0x7a, 0xae, 0xb1, + 0x1d, 0x76, 0xd9, 0x40, +}; +static const unsigned char kat1149_nonce[] = {0}; +static const unsigned char kat1149_persstr[] = {0}; +static const unsigned char kat1149_addin0[] = {0}; +static const unsigned char kat1149_addin1[] = {0}; +static const unsigned char kat1149_retbits[] = { + 0xa0, 0x97, 0x95, 0xc7, 0x46, 0x50, 0xdc, 0xbc, 0x1a, 0x75, 0x07, 0x2b, + 0x87, 0x87, 0xd7, 0x85, 0x89, 0x46, 0x66, 0xdd, 0x24, 0xd8, 0xf6, 0x21, + 0x91, 0x2d, 0xaa, 0xfe, 0x7d, 0x34, 0x16, 0xb9, 0xd7, 0x6d, 0x7b, 0xd5, + 0xf9, 0xac, 0xac, 0x96, 0x0c, 0x03, 0x7d, 0x00, 0xd0, 0xd9, 0x70, 0x3e, + 0x4f, 0x8a, 0x2b, 0x19, 0x1a, 0x7e, 0x28, 0x3c, 0x0d, 0xb9, 0xea, 0x57, + 0xba, 0x8f, 0x6a, 0x6d, +}; +static const struct drbg_kat_no_reseed kat1149_t = { + 8, kat1149_entropyin, kat1149_nonce, kat1149_persstr, + kat1149_addin0, kat1149_addin1, kat1149_retbits +}; +static const struct drbg_kat kat1149 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1149_t +}; + +static const unsigned char kat1150_entropyin[] = { + 0xc0, 0xeb, 0xc2, 0x57, 0xf6, 0xd3, 0xf5, 0x6f, 0x86, 0x08, 0x7b, 0xf1, + 0xea, 0xcf, 0xec, 0x3f, 0x46, 0x48, 0x1a, 0xfc, 0xe7, 0x92, 0xb0, 0x7b, + 0x7f, 0xda, 0x4d, 0x19, 0xcf, 0x0e, 0x3d, 0xa7, 0x1d, 0x52, 0x31, 0x8a, + 0x50, 0x77, 0x5e, 0x9b, +}; +static const unsigned char kat1150_nonce[] = {0}; +static const unsigned char kat1150_persstr[] = {0}; +static const unsigned char kat1150_addin0[] = {0}; +static const unsigned char kat1150_addin1[] = {0}; +static const unsigned char kat1150_retbits[] = { + 0x10, 0x2d, 0xb8, 0xa2, 0x33, 0x8c, 0x29, 0xd0, 0x17, 0xbe, 0xec, 0x79, + 0x3b, 0xad, 0x93, 0x73, 0x8e, 0x25, 0x0a, 0x43, 0x94, 0x0d, 0xdb, 0xbc, + 0x30, 0xc9, 0xf0, 0xcb, 0xd0, 0x53, 0x42, 0xb4, 0x7c, 0xff, 0xe0, 0x3f, + 0xba, 0x8e, 0xad, 0x13, 0x81, 0xea, 0x36, 0x5f, 0x4e, 0xb6, 0x14, 0xeb, + 0x00, 0xaf, 0x42, 0x70, 0xf8, 0xf7, 0x41, 0xdb, 0xd8, 0xb0, 0x4f, 0x9e, + 0x67, 0x26, 0xf7, 0xa7, +}; +static const struct drbg_kat_no_reseed kat1150_t = { + 9, kat1150_entropyin, kat1150_nonce, kat1150_persstr, + kat1150_addin0, kat1150_addin1, kat1150_retbits +}; +static const struct drbg_kat kat1150 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1150_t +}; + +static const unsigned char kat1151_entropyin[] = { + 0x40, 0x34, 0x7a, 0x0b, 0x9b, 0x62, 0x6f, 0x0d, 0x37, 0x53, 0xae, 0x00, + 0x14, 0xa0, 0xde, 0xc0, 0x1c, 0x51, 0xe2, 0x30, 0xe4, 0x09, 0xba, 0x6b, + 0xc3, 0xaa, 0x01, 0x68, 0x72, 0xe7, 0x51, 0xb7, 0xaa, 0x7b, 0xc8, 0xa2, + 0xac, 0xf6, 0xe5, 0x51, +}; +static const unsigned char kat1151_nonce[] = {0}; +static const unsigned char kat1151_persstr[] = {0}; +static const unsigned char kat1151_addin0[] = {0}; +static const unsigned char kat1151_addin1[] = {0}; +static const unsigned char kat1151_retbits[] = { + 0xda, 0x36, 0xb3, 0x6e, 0x21, 0xef, 0x4c, 0x31, 0xb1, 0x63, 0x42, 0x99, + 0x1b, 0x80, 0x7c, 0xd6, 0x1b, 0x73, 0x94, 0x27, 0xa5, 0x0d, 0xef, 0x5b, + 0x0b, 0x77, 0x35, 0xa5, 0xf1, 0xae, 0xa3, 0xe8, 0x22, 0x91, 0x24, 0xb6, + 0x7d, 0x31, 0xce, 0x62, 0xd7, 0x86, 0xc9, 0x13, 0xc2, 0x85, 0xbb, 0x3e, + 0x1b, 0xaa, 0x39, 0x37, 0x16, 0xed, 0x1c, 0xbf, 0x0c, 0xa1, 0x92, 0x93, + 0xc1, 0x05, 0x56, 0x53, +}; +static const struct drbg_kat_no_reseed kat1151_t = { + 10, kat1151_entropyin, kat1151_nonce, kat1151_persstr, + kat1151_addin0, kat1151_addin1, kat1151_retbits +}; +static const struct drbg_kat kat1151 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1151_t +}; + +static const unsigned char kat1152_entropyin[] = { + 0x6f, 0xb7, 0x90, 0xf1, 0x5d, 0x63, 0xd4, 0xfe, 0x49, 0x2d, 0xbe, 0x2f, + 0xe1, 0x7d, 0xa1, 0xb7, 0x09, 0xe6, 0x26, 0x3c, 0xbb, 0xb9, 0x43, 0xaa, + 0xab, 0xe1, 0x37, 0x2d, 0x1b, 0xe2, 0x34, 0x5c, 0x4e, 0x56, 0x67, 0x13, + 0xf5, 0xd8, 0xdb, 0xaa, +}; +static const unsigned char kat1152_nonce[] = {0}; +static const unsigned char kat1152_persstr[] = {0}; +static const unsigned char kat1152_addin0[] = {0}; +static const unsigned char kat1152_addin1[] = {0}; +static const unsigned char kat1152_retbits[] = { + 0x8b, 0x34, 0x5a, 0xf7, 0xa0, 0x88, 0xb4, 0xe2, 0x45, 0x53, 0xc7, 0xc3, + 0x4c, 0xad, 0xc8, 0xb0, 0x8d, 0x15, 0xd6, 0xb1, 0x45, 0x42, 0x00, 0x29, + 0x18, 0xa1, 0x3c, 0x4d, 0x63, 0x99, 0x8f, 0xca, 0xda, 0xe1, 0x68, 0xf2, + 0x58, 0x2d, 0x48, 0x11, 0x12, 0xb0, 0xbb, 0x0c, 0x89, 0xc0, 0x0d, 0xc6, + 0x0e, 0x6c, 0xc3, 0xe8, 0x01, 0x89, 0xe5, 0x7c, 0xb4, 0xcd, 0x82, 0xed, + 0x00, 0x48, 0x74, 0x38, +}; +static const struct drbg_kat_no_reseed kat1152_t = { + 11, kat1152_entropyin, kat1152_nonce, kat1152_persstr, + kat1152_addin0, kat1152_addin1, kat1152_retbits +}; +static const struct drbg_kat kat1152 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1152_t +}; + +static const unsigned char kat1153_entropyin[] = { + 0x97, 0x7c, 0x1f, 0x93, 0x1f, 0x8e, 0xcc, 0xa7, 0xd0, 0x0f, 0x61, 0xa1, + 0x4f, 0x50, 0xa3, 0x8a, 0xb9, 0x18, 0xf5, 0x66, 0xce, 0x4a, 0x06, 0xa7, + 0x0a, 0x58, 0x4a, 0x42, 0x3f, 0x70, 0xe7, 0xde, 0x75, 0x33, 0xd8, 0x64, + 0x28, 0xa7, 0x01, 0x70, +}; +static const unsigned char kat1153_nonce[] = {0}; +static const unsigned char kat1153_persstr[] = {0}; +static const unsigned char kat1153_addin0[] = {0}; +static const unsigned char kat1153_addin1[] = {0}; +static const unsigned char kat1153_retbits[] = { + 0xf1, 0xe6, 0xec, 0x7f, 0x2b, 0x20, 0xf3, 0xd2, 0x77, 0xc4, 0x90, 0x48, + 0xc9, 0xef, 0x51, 0xce, 0xb9, 0x3e, 0xce, 0x91, 0x30, 0x88, 0x6c, 0x9e, + 0xe9, 0x34, 0x30, 0x20, 0xa3, 0xdc, 0xd1, 0x9f, 0xdf, 0x62, 0xde, 0x24, + 0x35, 0xdd, 0x0e, 0xd9, 0xb4, 0xa4, 0x72, 0x8a, 0x1d, 0xc5, 0x6b, 0x72, + 0x5b, 0xf2, 0x7e, 0x33, 0xbd, 0x90, 0x13, 0xfe, 0xbc, 0xa4, 0x45, 0xc4, + 0x07, 0xdf, 0xed, 0xe2, +}; +static const struct drbg_kat_no_reseed kat1153_t = { + 12, kat1153_entropyin, kat1153_nonce, kat1153_persstr, + kat1153_addin0, kat1153_addin1, kat1153_retbits +}; +static const struct drbg_kat kat1153 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1153_t +}; + +static const unsigned char kat1154_entropyin[] = { + 0x58, 0x94, 0xf4, 0xef, 0x7e, 0xa2, 0x39, 0x29, 0x27, 0xcf, 0xa2, 0x1f, + 0x61, 0xfa, 0xa0, 0xe1, 0xb1, 0x2e, 0xe4, 0x45, 0x8c, 0x76, 0xc3, 0x80, + 0x28, 0x0e, 0x0d, 0xaf, 0x3d, 0xe2, 0x21, 0x51, 0x2c, 0x87, 0xda, 0x31, + 0xdf, 0x07, 0x3b, 0xfb, +}; +static const unsigned char kat1154_nonce[] = {0}; +static const unsigned char kat1154_persstr[] = {0}; +static const unsigned char kat1154_addin0[] = {0}; +static const unsigned char kat1154_addin1[] = {0}; +static const unsigned char kat1154_retbits[] = { + 0x0a, 0xd3, 0xc8, 0xe5, 0xad, 0x0c, 0xd1, 0xf3, 0x30, 0x8f, 0x88, 0x2f, + 0x9a, 0xa0, 0xaa, 0x5f, 0x29, 0x0d, 0x93, 0xb4, 0xa2, 0x04, 0x5c, 0xeb, + 0x86, 0x79, 0x91, 0xf2, 0x64, 0x0c, 0x52, 0x76, 0x15, 0x6b, 0xfb, 0xcc, + 0xad, 0xa5, 0x70, 0x31, 0xaa, 0x8e, 0x27, 0x13, 0x21, 0xa6, 0xff, 0x1e, + 0xb2, 0x5f, 0xdd, 0xde, 0x4f, 0x40, 0xa1, 0x06, 0xc6, 0x87, 0x5a, 0x99, + 0x81, 0x6c, 0x4a, 0x0d, +}; +static const struct drbg_kat_no_reseed kat1154_t = { + 13, kat1154_entropyin, kat1154_nonce, kat1154_persstr, + kat1154_addin0, kat1154_addin1, kat1154_retbits +}; +static const struct drbg_kat kat1154 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1154_t +}; + +static const unsigned char kat1155_entropyin[] = { + 0x1f, 0x5f, 0x78, 0x45, 0x89, 0x59, 0xb3, 0xca, 0xbd, 0x57, 0xa5, 0x56, + 0xa8, 0xe7, 0x0c, 0x36, 0x4b, 0xab, 0x26, 0x0a, 0xd5, 0x57, 0x2f, 0xca, + 0x41, 0xfc, 0x2b, 0xb6, 0x43, 0x35, 0xfb, 0x88, 0x8a, 0x31, 0xcd, 0xb3, + 0x7d, 0xee, 0xf5, 0xd1, +}; +static const unsigned char kat1155_nonce[] = {0}; +static const unsigned char kat1155_persstr[] = {0}; +static const unsigned char kat1155_addin0[] = {0}; +static const unsigned char kat1155_addin1[] = {0}; +static const unsigned char kat1155_retbits[] = { + 0x0c, 0x44, 0x36, 0xf7, 0x54, 0x15, 0xd0, 0xee, 0xc4, 0x11, 0xf5, 0xba, + 0x0d, 0x96, 0xfe, 0x33, 0x31, 0x61, 0xc2, 0xd6, 0xfa, 0xa3, 0x0f, 0x6d, + 0x80, 0x6d, 0xc4, 0x57, 0xb4, 0x12, 0x3b, 0x7b, 0x2b, 0x65, 0xcf, 0x7b, + 0xd8, 0xf4, 0xe6, 0x99, 0xc5, 0x63, 0xec, 0x0c, 0x6f, 0x45, 0xee, 0x37, + 0xc3, 0x1b, 0x3c, 0x6c, 0x11, 0xc2, 0x89, 0x27, 0xb7, 0x7d, 0x53, 0x05, + 0x3b, 0x00, 0x57, 0xa7, +}; +static const struct drbg_kat_no_reseed kat1155_t = { + 14, kat1155_entropyin, kat1155_nonce, kat1155_persstr, + kat1155_addin0, kat1155_addin1, kat1155_retbits +}; +static const struct drbg_kat kat1155 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat1155_t +}; + +static const unsigned char kat1156_entropyin[] = { + 0xcc, 0x74, 0xff, 0xbe, 0x7e, 0x6f, 0x6f, 0xe7, 0xd1, 0xb6, 0x2b, 0x79, + 0x4d, 0x68, 0x08, 0xba, 0x25, 0x48, 0xb5, 0x08, 0x71, 0x9d, 0x09, 0x6b, + 0xc1, 0xf9, 0x50, 0x36, 0x04, 0x41, 0x00, 0xdd, 0x1f, 0x21, 0x21, 0x57, + 0xf2, 0xc9, 0x06, 0x04, +}; +static const unsigned char kat1156_nonce[] = {0}; +static const unsigned char kat1156_persstr[] = {0}; +static const unsigned char kat1156_addin0[] = { + 0x27, 0xa7, 0x46, 0x78, 0x60, 0x72, 0x66, 0xb1, 0x2b, 0x58, 0x11, 0x9b, + 0xee, 0x78, 0xd2, 0x9a, 0x75, 0xe7, 0x8a, 0xda, 0xf0, 0x10, 0x44, 0x37, + 0x5e, 0xc0, 0xb2, 0x8b, 0x16, 0x7f, 0x0d, 0x6b, 0x0a, 0xb5, 0x8b, 0x29, + 0xd9, 0x8d, 0x4c, 0x4e, +}; +static const unsigned char kat1156_addin1[] = { + 0xdb, 0x32, 0x0c, 0x06, 0xee, 0x06, 0xcb, 0xf3, 0x3a, 0x2a, 0x6a, 0x1f, + 0x9d, 0x07, 0x6a, 0x87, 0x4e, 0x9c, 0xcc, 0xd8, 0xd5, 0x27, 0x12, 0xb0, + 0x96, 0x58, 0xa9, 0x0e, 0xa3, 0xca, 0x47, 0x3a, 0x01, 0xe3, 0xa6, 0x47, + 0xdc, 0xd5, 0xdc, 0xa0, +}; +static const unsigned char kat1156_retbits[] = { + 0xdd, 0xdc, 0x9d, 0xce, 0xc1, 0xf2, 0xd3, 0x11, 0xef, 0x2b, 0xf4, 0x8a, + 0x7c, 0xe0, 0x7b, 0x91, 0xf8, 0x6e, 0x5c, 0x6e, 0x10, 0x53, 0xbb, 0xd5, + 0x26, 0x13, 0xf0, 0x55, 0x91, 0x98, 0x5c, 0xa8, 0x64, 0x45, 0xb5, 0x7d, + 0x68, 0xb0, 0xb3, 0x8c, 0x23, 0x48, 0x04, 0xb8, 0x0a, 0x0b, 0x83, 0x77, + 0x45, 0x25, 0x4d, 0x7b, 0x09, 0xe0, 0x0d, 0x45, 0x52, 0xd0, 0xfd, 0x82, + 0x56, 0xfb, 0x40, 0xb4, +}; +static const struct drbg_kat_no_reseed kat1156_t = { + 0, kat1156_entropyin, kat1156_nonce, kat1156_persstr, + kat1156_addin0, kat1156_addin1, kat1156_retbits +}; +static const struct drbg_kat kat1156 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1156_t +}; + +static const unsigned char kat1157_entropyin[] = { + 0x54, 0x57, 0x20, 0xe8, 0xca, 0xee, 0xce, 0x16, 0x66, 0xe3, 0x12, 0xf0, + 0x3d, 0x1d, 0x2d, 0x47, 0x35, 0xef, 0x88, 0x99, 0x01, 0x34, 0x30, 0x40, + 0x54, 0xf2, 0xa8, 0x37, 0xae, 0x12, 0xfd, 0x00, 0x54, 0x3e, 0x74, 0x0c, + 0x18, 0x4b, 0xb6, 0x00, +}; +static const unsigned char kat1157_nonce[] = {0}; +static const unsigned char kat1157_persstr[] = {0}; +static const unsigned char kat1157_addin0[] = { + 0x80, 0xc3, 0x87, 0x38, 0x8c, 0xac, 0x8b, 0xb6, 0x90, 0xa0, 0x3f, 0x4f, + 0xb9, 0x5f, 0x5a, 0xdf, 0x07, 0x90, 0x5d, 0xf8, 0x85, 0xdc, 0x10, 0x0d, + 0x83, 0x9b, 0x22, 0x14, 0x33, 0xdb, 0x3a, 0x06, 0xde, 0xa5, 0xbd, 0xf8, + 0xfd, 0xf4, 0x68, 0xda, +}; +static const unsigned char kat1157_addin1[] = { + 0xb0, 0x78, 0xfa, 0xfc, 0xb5, 0xb1, 0x31, 0x35, 0xc8, 0x28, 0x1f, 0xc9, + 0xa3, 0xc6, 0x76, 0x44, 0x54, 0x87, 0xf2, 0xe8, 0xf2, 0x35, 0x9b, 0xd9, + 0xb0, 0x52, 0xb2, 0x17, 0xb4, 0xbc, 0x9b, 0xca, 0xe8, 0xd8, 0xab, 0x49, + 0x9c, 0x7e, 0xb5, 0x64, +}; +static const unsigned char kat1157_retbits[] = { + 0xa5, 0x1d, 0xd0, 0x6c, 0x6c, 0xc5, 0xdf, 0xa8, 0xb6, 0x5b, 0x52, 0x8c, + 0x45, 0x81, 0x74, 0xa4, 0x5d, 0xf0, 0x73, 0xe2, 0x37, 0x0a, 0xef, 0x58, + 0x0b, 0xda, 0xf3, 0x0e, 0xd5, 0x9c, 0xff, 0x7e, 0x67, 0x78, 0xcf, 0x55, + 0x76, 0x69, 0xeb, 0x89, 0x55, 0x38, 0x1b, 0x02, 0x27, 0xfd, 0xb3, 0x1d, + 0xac, 0x2b, 0x8c, 0x9e, 0x5c, 0x9b, 0x73, 0x4d, 0x36, 0x15, 0x32, 0x63, + 0xde, 0xcb, 0x8e, 0xab, +}; +static const struct drbg_kat_no_reseed kat1157_t = { + 1, kat1157_entropyin, kat1157_nonce, kat1157_persstr, + kat1157_addin0, kat1157_addin1, kat1157_retbits +}; +static const struct drbg_kat kat1157 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1157_t +}; + +static const unsigned char kat1158_entropyin[] = { + 0x85, 0x2e, 0x30, 0x56, 0x59, 0x12, 0x54, 0xab, 0x4e, 0xf3, 0x4b, 0x76, + 0xd6, 0x9d, 0x64, 0xf2, 0x5a, 0x0c, 0x93, 0xf0, 0xe6, 0x51, 0x5b, 0x8e, + 0x08, 0x6c, 0xd4, 0xde, 0x08, 0xa9, 0x8d, 0x6e, 0xd8, 0xc3, 0x07, 0x04, + 0x33, 0xc9, 0xb9, 0x03, +}; +static const unsigned char kat1158_nonce[] = {0}; +static const unsigned char kat1158_persstr[] = {0}; +static const unsigned char kat1158_addin0[] = { + 0x43, 0xfe, 0xe0, 0x83, 0xc3, 0xc4, 0x36, 0xd5, 0x29, 0x3d, 0xb7, 0xfb, + 0xd8, 0x10, 0x56, 0x78, 0x7f, 0x9c, 0x08, 0x74, 0xd9, 0x59, 0xc2, 0xed, + 0x70, 0x31, 0x0d, 0xbd, 0xe6, 0x28, 0xcf, 0x34, 0x75, 0x95, 0xa4, 0x8d, + 0xb8, 0xc4, 0x68, 0xe6, +}; +static const unsigned char kat1158_addin1[] = { + 0x68, 0x13, 0x75, 0x98, 0x12, 0xb8, 0x68, 0x94, 0x1e, 0xf9, 0x44, 0xef, + 0x6c, 0x26, 0xd5, 0xf7, 0xdf, 0xc8, 0x08, 0x8e, 0x96, 0x44, 0x25, 0x96, + 0x58, 0xee, 0x14, 0x2a, 0x21, 0x6b, 0x39, 0x56, 0x79, 0x58, 0xbd, 0x75, + 0x50, 0x9a, 0xd3, 0xe4, +}; +static const unsigned char kat1158_retbits[] = { + 0x4c, 0x1c, 0xca, 0x36, 0x73, 0xa0, 0x90, 0x32, 0xc8, 0x25, 0x29, 0xed, + 0x1a, 0x03, 0xe4, 0x44, 0xa5, 0xe1, 0x8f, 0x39, 0x19, 0x07, 0x45, 0x83, + 0x9d, 0xfe, 0x0e, 0xbd, 0x0a, 0x58, 0x53, 0x87, 0x96, 0x28, 0x85, 0x3b, + 0x18, 0x11, 0x76, 0xc4, 0xce, 0x25, 0xc2, 0xac, 0x6c, 0xa4, 0x3a, 0xf5, + 0x0c, 0xf3, 0x1e, 0x5f, 0xa8, 0x6d, 0xa3, 0xa2, 0x6c, 0x97, 0x74, 0xf7, + 0x6d, 0xd3, 0x86, 0x34, +}; +static const struct drbg_kat_no_reseed kat1158_t = { + 2, kat1158_entropyin, kat1158_nonce, kat1158_persstr, + kat1158_addin0, kat1158_addin1, kat1158_retbits +}; +static const struct drbg_kat kat1158 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1158_t +}; + +static const unsigned char kat1159_entropyin[] = { + 0xfd, 0x42, 0xb0, 0xdd, 0x9c, 0xfd, 0xbf, 0xd4, 0x65, 0x7c, 0x0c, 0xd3, + 0xe0, 0x7b, 0xb9, 0xd2, 0x72, 0x07, 0xe1, 0x55, 0x85, 0x21, 0x3c, 0x28, + 0x70, 0x04, 0x7d, 0xb0, 0xcf, 0xbf, 0x95, 0x1d, 0x07, 0x4e, 0x06, 0x1d, + 0xcc, 0x9b, 0x74, 0xd3, +}; +static const unsigned char kat1159_nonce[] = {0}; +static const unsigned char kat1159_persstr[] = {0}; +static const unsigned char kat1159_addin0[] = { + 0x5b, 0x57, 0x9a, 0xf6, 0x43, 0xe8, 0x0e, 0x6f, 0xcd, 0xc4, 0xd0, 0xa2, + 0x6b, 0x25, 0x48, 0x9c, 0x53, 0x36, 0xc6, 0x92, 0xf2, 0xf8, 0x1d, 0x8f, + 0xa7, 0x9f, 0x1e, 0x05, 0xf2, 0x5d, 0x50, 0x90, 0xe1, 0x1c, 0xa3, 0x9c, + 0x39, 0x49, 0xd1, 0x03, +}; +static const unsigned char kat1159_addin1[] = { + 0x6a, 0x1d, 0x8a, 0x4a, 0xc6, 0x35, 0x28, 0xc9, 0xde, 0x6f, 0x94, 0xb2, + 0xf2, 0x80, 0x5a, 0xa0, 0x3d, 0x75, 0xee, 0x57, 0x19, 0x8e, 0xff, 0x33, + 0x59, 0x7b, 0x44, 0xed, 0xa7, 0xb8, 0x46, 0xad, 0x6f, 0x80, 0xf9, 0xb6, + 0x9b, 0xac, 0xf5, 0x18, +}; +static const unsigned char kat1159_retbits[] = { + 0x9c, 0x0f, 0x52, 0xc5, 0xec, 0xe0, 0xea, 0x75, 0x33, 0x73, 0xff, 0x21, + 0xde, 0x63, 0x1c, 0xae, 0xe3, 0xf1, 0x23, 0x8e, 0x29, 0x4d, 0x2c, 0x23, + 0x78, 0x65, 0x5c, 0xcb, 0xe7, 0xb7, 0x37, 0xf7, 0x60, 0xde, 0xa0, 0xfd, + 0x5a, 0xb7, 0xe8, 0x76, 0x16, 0xba, 0x4f, 0xe4, 0x7f, 0xdc, 0xf4, 0x39, + 0x11, 0xff, 0xd2, 0x66, 0x2b, 0x81, 0x1c, 0xd9, 0x0a, 0x03, 0x4d, 0x65, + 0xb0, 0x70, 0xc8, 0xda, +}; +static const struct drbg_kat_no_reseed kat1159_t = { + 3, kat1159_entropyin, kat1159_nonce, kat1159_persstr, + kat1159_addin0, kat1159_addin1, kat1159_retbits +}; +static const struct drbg_kat kat1159 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1159_t +}; + +static const unsigned char kat1160_entropyin[] = { + 0xee, 0xce, 0x18, 0xcb, 0x9a, 0x75, 0x08, 0x08, 0x4d, 0x22, 0xd7, 0xf2, + 0x1d, 0xd5, 0xc6, 0xb6, 0x02, 0x79, 0xaa, 0x45, 0x20, 0x34, 0x3e, 0x2f, + 0x73, 0xcd, 0x33, 0x49, 0xfc, 0xe5, 0xd3, 0x9e, 0xe0, 0x54, 0xbc, 0x9f, + 0x22, 0x40, 0xa0, 0x97, +}; +static const unsigned char kat1160_nonce[] = {0}; +static const unsigned char kat1160_persstr[] = {0}; +static const unsigned char kat1160_addin0[] = { + 0x06, 0x7a, 0x5f, 0x0d, 0x24, 0xb9, 0x3c, 0x08, 0x02, 0x3d, 0x05, 0xdf, + 0x31, 0x86, 0x77, 0xbc, 0x9e, 0x5a, 0x5d, 0xe7, 0x7a, 0x23, 0x47, 0x14, + 0xfb, 0x90, 0x34, 0x7e, 0x05, 0x7d, 0xd2, 0x3d, 0x4e, 0x06, 0x90, 0x2a, + 0x9b, 0x74, 0x2e, 0xc1, +}; +static const unsigned char kat1160_addin1[] = { + 0x1a, 0x65, 0x3e, 0x47, 0x2b, 0xb3, 0xc6, 0x21, 0x09, 0xa6, 0xca, 0xbb, + 0x84, 0xda, 0x8e, 0x2f, 0xfd, 0x14, 0x66, 0xb3, 0xc5, 0x6b, 0x60, 0x07, + 0x17, 0xd7, 0x64, 0xc2, 0xa3, 0x6d, 0x45, 0xd8, 0xa3, 0xee, 0xfe, 0xfc, + 0x81, 0xb0, 0x4f, 0xc2, +}; +static const unsigned char kat1160_retbits[] = { + 0x3b, 0xd4, 0xb4, 0xb9, 0xa6, 0x18, 0x69, 0xe2, 0xa6, 0x21, 0x5e, 0x62, + 0xbe, 0xbc, 0x15, 0x1a, 0xca, 0x27, 0x89, 0x49, 0x1d, 0x4f, 0x46, 0xd1, + 0x96, 0xdd, 0xc4, 0x84, 0x29, 0x33, 0x5e, 0x60, 0x2b, 0xca, 0xe2, 0x97, + 0x97, 0x2c, 0x7a, 0x27, 0x5e, 0x24, 0xf0, 0xd3, 0x28, 0x2a, 0xeb, 0x1d, + 0xca, 0xc0, 0x19, 0x0c, 0x1c, 0xfa, 0x2a, 0x39, 0xab, 0xb7, 0x89, 0x84, + 0xc3, 0x26, 0x89, 0x81, +}; +static const struct drbg_kat_no_reseed kat1160_t = { + 4, kat1160_entropyin, kat1160_nonce, kat1160_persstr, + kat1160_addin0, kat1160_addin1, kat1160_retbits +}; +static const struct drbg_kat kat1160 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1160_t +}; + +static const unsigned char kat1161_entropyin[] = { + 0x78, 0x69, 0xc8, 0x38, 0x1d, 0x5b, 0x5a, 0xcf, 0xdd, 0x65, 0x0d, 0x24, + 0x7f, 0xdd, 0x92, 0xad, 0x45, 0xeb, 0x9e, 0x73, 0x42, 0x5d, 0x6c, 0x07, + 0x85, 0xa3, 0x82, 0x79, 0x7c, 0xa0, 0x6f, 0x03, 0x85, 0xa7, 0x5f, 0x61, + 0xb7, 0x57, 0x77, 0x15, +}; +static const unsigned char kat1161_nonce[] = {0}; +static const unsigned char kat1161_persstr[] = {0}; +static const unsigned char kat1161_addin0[] = { + 0x1b, 0xb9, 0xb7, 0x7b, 0x0f, 0x81, 0x99, 0x9e, 0x23, 0x4b, 0x83, 0x41, + 0x7a, 0xde, 0xbf, 0x5c, 0x88, 0x1c, 0x09, 0x4e, 0xe0, 0x0c, 0x61, 0x30, + 0xb1, 0x8e, 0x89, 0x1a, 0x3b, 0x2a, 0xe7, 0x3a, 0x72, 0x7e, 0xec, 0x0a, + 0x60, 0x99, 0x39, 0xa6, +}; +static const unsigned char kat1161_addin1[] = { + 0x69, 0x43, 0x3a, 0xcb, 0xcf, 0x7a, 0x4e, 0x4e, 0x81, 0xf6, 0x28, 0x74, + 0xc4, 0x67, 0xa4, 0x33, 0xe3, 0xe7, 0x0c, 0x0e, 0xb3, 0x88, 0x91, 0x0f, + 0x69, 0x0b, 0xbc, 0x0f, 0xf2, 0xd0, 0xe0, 0x31, 0xf2, 0x4c, 0xf9, 0x5c, + 0xda, 0x40, 0x19, 0xae, +}; +static const unsigned char kat1161_retbits[] = { + 0x79, 0xa0, 0x32, 0x40, 0x8c, 0xac, 0x31, 0xa8, 0xae, 0x17, 0x2f, 0x3e, + 0x50, 0x53, 0x06, 0x72, 0x70, 0x35, 0x3a, 0xdb, 0xb8, 0x6a, 0xb0, 0x9f, + 0xca, 0x3e, 0xa2, 0x8b, 0x00, 0x01, 0x88, 0xe3, 0x04, 0x50, 0x88, 0xd9, + 0x93, 0x55, 0x14, 0xc2, 0x0e, 0x45, 0xb0, 0x62, 0xa9, 0x31, 0xc3, 0xef, + 0xb2, 0x6b, 0xc6, 0x75, 0x27, 0xce, 0x45, 0x10, 0x22, 0x97, 0x64, 0x3a, + 0x61, 0x32, 0xdb, 0xc5, +}; +static const struct drbg_kat_no_reseed kat1161_t = { + 5, kat1161_entropyin, kat1161_nonce, kat1161_persstr, + kat1161_addin0, kat1161_addin1, kat1161_retbits +}; +static const struct drbg_kat kat1161 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1161_t +}; + +static const unsigned char kat1162_entropyin[] = { + 0x6e, 0xd5, 0x45, 0x82, 0xe1, 0x84, 0x3b, 0xf7, 0x3c, 0x64, 0x0a, 0x8c, + 0x2c, 0x21, 0x55, 0x5e, 0x53, 0xd3, 0x33, 0x6b, 0x90, 0x72, 0x61, 0xcd, + 0xdc, 0xe6, 0x41, 0x6d, 0x7c, 0x0f, 0x30, 0xc0, 0x17, 0x2d, 0x73, 0xb3, + 0xca, 0x07, 0x58, 0x88, +}; +static const unsigned char kat1162_nonce[] = {0}; +static const unsigned char kat1162_persstr[] = {0}; +static const unsigned char kat1162_addin0[] = { + 0x62, 0x1d, 0x44, 0xc3, 0x64, 0x78, 0x64, 0xfd, 0xf2, 0x65, 0x37, 0xc9, + 0xc3, 0xcc, 0xfa, 0x67, 0x3d, 0xff, 0x50, 0xdc, 0x12, 0xdf, 0xc0, 0xfc, + 0xaf, 0x25, 0x95, 0x36, 0x8b, 0x9e, 0x98, 0x1a, 0x8b, 0xff, 0x77, 0x0b, + 0x13, 0xe0, 0x51, 0xb7, +}; +static const unsigned char kat1162_addin1[] = { + 0xdc, 0x20, 0xfa, 0xd6, 0x15, 0x51, 0x0c, 0x67, 0x0f, 0x05, 0x0f, 0xcd, + 0x2e, 0x8d, 0xbb, 0x21, 0xb7, 0x9b, 0x5c, 0x8b, 0x23, 0x21, 0x1b, 0x38, + 0xb5, 0x14, 0x08, 0xde, 0x1d, 0x3e, 0xfd, 0x6c, 0x02, 0xcd, 0xdc, 0x37, + 0x6f, 0x2a, 0x64, 0x66, +}; +static const unsigned char kat1162_retbits[] = { + 0x20, 0x62, 0xe1, 0x60, 0xa8, 0x05, 0x8f, 0xb2, 0x5b, 0xc3, 0xa7, 0xbd, + 0xd3, 0xe7, 0x79, 0xb3, 0xcc, 0xe1, 0x02, 0x31, 0x82, 0xce, 0xd4, 0x92, + 0xc2, 0xfa, 0x72, 0x3c, 0xba, 0xbd, 0x18, 0x7e, 0x1d, 0xd0, 0xa1, 0x6f, + 0x90, 0x90, 0x61, 0xaf, 0x6c, 0xb2, 0x70, 0x48, 0xab, 0x04, 0xe7, 0x42, + 0xb0, 0x1b, 0x8d, 0x73, 0xfd, 0xa2, 0xb5, 0xe7, 0x62, 0xe0, 0xe8, 0xde, + 0xae, 0xe4, 0x79, 0x9d, +}; +static const struct drbg_kat_no_reseed kat1162_t = { + 6, kat1162_entropyin, kat1162_nonce, kat1162_persstr, + kat1162_addin0, kat1162_addin1, kat1162_retbits +}; +static const struct drbg_kat kat1162 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1162_t +}; + +static const unsigned char kat1163_entropyin[] = { + 0x20, 0x1f, 0xc4, 0x0b, 0xed, 0x94, 0x04, 0x1b, 0x70, 0x9e, 0x15, 0x69, + 0xd9, 0xe5, 0x6b, 0x7e, 0x09, 0x93, 0x7e, 0x90, 0x2a, 0x98, 0x14, 0x1e, + 0x4b, 0x39, 0x23, 0x1a, 0xe6, 0x29, 0x21, 0xe3, 0xaf, 0xa5, 0x98, 0x06, + 0x4f, 0x1c, 0x21, 0x1a, +}; +static const unsigned char kat1163_nonce[] = {0}; +static const unsigned char kat1163_persstr[] = {0}; +static const unsigned char kat1163_addin0[] = { + 0xf1, 0xe7, 0x8c, 0x5c, 0x60, 0x1a, 0x0a, 0xff, 0xda, 0x21, 0x35, 0x7c, + 0xb7, 0xa5, 0xf8, 0x8f, 0x43, 0x3c, 0x39, 0xc7, 0x33, 0x1f, 0x29, 0xa9, + 0x5d, 0x83, 0x8d, 0x34, 0xe2, 0x0e, 0x1b, 0xc8, 0x94, 0x28, 0x30, 0xef, + 0x49, 0x73, 0x8e, 0xb3, +}; +static const unsigned char kat1163_addin1[] = { + 0xd5, 0x7b, 0x5d, 0xb4, 0xcb, 0x0e, 0xa1, 0xe6, 0x9a, 0xff, 0x38, 0xe3, + 0x00, 0xef, 0xc9, 0xa0, 0xef, 0x0e, 0xd9, 0x71, 0xa3, 0xfd, 0x1d, 0xfa, + 0x52, 0x12, 0xa3, 0x11, 0x16, 0x78, 0xd9, 0xdf, 0xbe, 0x3e, 0x2f, 0xe6, + 0xb1, 0x88, 0x91, 0x63, +}; +static const unsigned char kat1163_retbits[] = { + 0xb7, 0xe4, 0xff, 0x93, 0xe5, 0x4a, 0x4b, 0x66, 0xa3, 0xff, 0xab, 0x37, + 0x8a, 0xb2, 0x9b, 0xb0, 0xc8, 0xda, 0xfb, 0xbb, 0x92, 0xbd, 0x22, 0x8f, + 0x50, 0x35, 0x79, 0xfb, 0xb7, 0x5c, 0x0a, 0xd6, 0xd3, 0xb5, 0x62, 0x86, + 0xc6, 0xd0, 0x7f, 0x19, 0x4d, 0x53, 0xb1, 0xab, 0x89, 0xf3, 0x02, 0x1b, + 0xea, 0xd4, 0x80, 0x66, 0x50, 0x06, 0xbc, 0x48, 0x9a, 0xa9, 0x46, 0x54, + 0x8d, 0x8b, 0xc8, 0xeb, +}; +static const struct drbg_kat_no_reseed kat1163_t = { + 7, kat1163_entropyin, kat1163_nonce, kat1163_persstr, + kat1163_addin0, kat1163_addin1, kat1163_retbits +}; +static const struct drbg_kat kat1163 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1163_t +}; + +static const unsigned char kat1164_entropyin[] = { + 0x5f, 0x09, 0x2c, 0x7a, 0x9e, 0xd3, 0x52, 0x4d, 0xd4, 0x19, 0x34, 0x79, + 0x8c, 0x77, 0x3d, 0xfb, 0x45, 0x3e, 0x3b, 0x85, 0xb9, 0xa9, 0x97, 0x77, + 0xdc, 0xd5, 0x01, 0xed, 0x86, 0x62, 0x8a, 0x67, 0x9c, 0x19, 0x07, 0x1c, + 0x2f, 0xb4, 0xaf, 0x61, +}; +static const unsigned char kat1164_nonce[] = {0}; +static const unsigned char kat1164_persstr[] = {0}; +static const unsigned char kat1164_addin0[] = { + 0xb9, 0x51, 0xd1, 0xac, 0xbb, 0xf1, 0x5b, 0x51, 0x89, 0x38, 0x31, 0x07, + 0x26, 0x18, 0x86, 0xe1, 0x1f, 0x29, 0x39, 0x42, 0x04, 0xa7, 0xb4, 0x5f, + 0xed, 0xc9, 0x86, 0x8f, 0x52, 0x92, 0x21, 0xf0, 0x60, 0xe8, 0xc0, 0x8b, + 0x10, 0x95, 0x2c, 0x3c, +}; +static const unsigned char kat1164_addin1[] = { + 0xed, 0xc5, 0x75, 0x38, 0x0c, 0x88, 0xc1, 0xed, 0x0f, 0x73, 0xe8, 0x9c, + 0x99, 0xf5, 0x31, 0xa9, 0xff, 0xc9, 0x99, 0xd3, 0x02, 0x9a, 0xa5, 0x80, + 0x4c, 0xea, 0xd2, 0xbc, 0xcd, 0x21, 0x17, 0x7f, 0xe4, 0x0c, 0xcf, 0xa2, + 0xbe, 0x7e, 0x9d, 0xb0, +}; +static const unsigned char kat1164_retbits[] = { + 0xa4, 0xfd, 0xf4, 0xa0, 0xad, 0x50, 0xe6, 0x29, 0x09, 0x2c, 0x75, 0xc7, + 0x0d, 0x5b, 0x54, 0x04, 0xdd, 0xbd, 0xe6, 0x87, 0x72, 0xd1, 0xb8, 0xbf, + 0xa4, 0xe0, 0x7d, 0x27, 0x1a, 0xa0, 0xf6, 0x40, 0xcb, 0xd6, 0x29, 0xba, + 0xf0, 0x70, 0x8a, 0x0c, 0x43, 0x54, 0x3f, 0x48, 0xca, 0x98, 0xe3, 0x9c, + 0xfa, 0x0c, 0xf3, 0xf5, 0xf7, 0xf2, 0xeb, 0xfb, 0x34, 0xaf, 0x46, 0x47, + 0x5d, 0xf5, 0x2c, 0x36, +}; +static const struct drbg_kat_no_reseed kat1164_t = { + 8, kat1164_entropyin, kat1164_nonce, kat1164_persstr, + kat1164_addin0, kat1164_addin1, kat1164_retbits +}; +static const struct drbg_kat kat1164 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1164_t +}; + +static const unsigned char kat1165_entropyin[] = { + 0xe7, 0xe4, 0xf7, 0x69, 0x95, 0xb0, 0x62, 0x98, 0x82, 0x84, 0xa5, 0x53, + 0x4d, 0x43, 0x88, 0x02, 0x2f, 0xe7, 0x55, 0xc1, 0x1f, 0x4b, 0xaf, 0xcc, + 0x16, 0x73, 0x51, 0x41, 0x02, 0xc1, 0x26, 0xf8, 0x08, 0xa0, 0x92, 0x62, + 0xea, 0x16, 0x0c, 0xab, +}; +static const unsigned char kat1165_nonce[] = {0}; +static const unsigned char kat1165_persstr[] = {0}; +static const unsigned char kat1165_addin0[] = { + 0x6a, 0xa4, 0x3b, 0x7f, 0xeb, 0xd3, 0xdf, 0xc9, 0x99, 0x42, 0xe2, 0xc9, + 0x4e, 0x54, 0xdd, 0x77, 0x62, 0x9b, 0x92, 0x18, 0x12, 0x28, 0x17, 0x9d, + 0x6d, 0x93, 0x3b, 0xd0, 0x58, 0x41, 0xfd, 0x77, 0x09, 0x79, 0xe8, 0x0a, + 0x92, 0x9b, 0x69, 0x32, +}; +static const unsigned char kat1165_addin1[] = { + 0x41, 0x26, 0x2a, 0xbb, 0xb4, 0x2a, 0x1d, 0xb3, 0x20, 0x59, 0x20, 0x94, + 0x55, 0xfe, 0xa4, 0x41, 0x60, 0x3b, 0x5a, 0x1a, 0xbe, 0x50, 0xb0, 0x3d, + 0xa6, 0x77, 0x7f, 0xd3, 0x94, 0x7e, 0x09, 0x6c, 0xd2, 0x1f, 0x92, 0x0e, + 0xda, 0x49, 0x32, 0xf9, +}; +static const unsigned char kat1165_retbits[] = { + 0xe4, 0xec, 0x77, 0xed, 0x64, 0x9c, 0x10, 0x93, 0xb8, 0x41, 0x6a, 0x67, + 0xb6, 0x3b, 0xd2, 0x2c, 0xa8, 0x83, 0x00, 0x01, 0x6d, 0xa5, 0xf1, 0x8d, + 0x76, 0x19, 0x7e, 0x06, 0xcb, 0xfb, 0x84, 0xc0, 0x54, 0x25, 0x90, 0x5c, + 0x96, 0x0d, 0x6b, 0xbc, 0x1f, 0x12, 0x7c, 0x18, 0x3d, 0x41, 0x23, 0x6f, + 0x2a, 0x68, 0xb3, 0x3b, 0x72, 0x2f, 0xa0, 0x62, 0x77, 0x75, 0xce, 0xad, + 0xe2, 0x58, 0x70, 0xfd, +}; +static const struct drbg_kat_no_reseed kat1165_t = { + 9, kat1165_entropyin, kat1165_nonce, kat1165_persstr, + kat1165_addin0, kat1165_addin1, kat1165_retbits +}; +static const struct drbg_kat kat1165 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1165_t +}; + +static const unsigned char kat1166_entropyin[] = { + 0x64, 0x80, 0xa0, 0xe5, 0x84, 0x51, 0x50, 0x33, 0x71, 0x2b, 0xed, 0x8b, + 0xe6, 0x42, 0x97, 0x05, 0xb5, 0xc8, 0xef, 0x0f, 0x7d, 0x3b, 0x15, 0xc2, + 0xc5, 0x19, 0x50, 0xd6, 0xd7, 0xcc, 0x0a, 0x79, 0xcb, 0xcd, 0xd7, 0x10, + 0x4c, 0x19, 0x17, 0x1d, +}; +static const unsigned char kat1166_nonce[] = {0}; +static const unsigned char kat1166_persstr[] = {0}; +static const unsigned char kat1166_addin0[] = { + 0x4a, 0x52, 0x82, 0xfc, 0xd8, 0x02, 0x00, 0xc9, 0x49, 0xc1, 0xdc, 0x89, + 0xa5, 0x82, 0x7e, 0x06, 0xcc, 0x17, 0x60, 0xdb, 0x53, 0x91, 0x55, 0x2c, + 0x41, 0x12, 0xeb, 0x4f, 0x92, 0xf3, 0x44, 0x97, 0xed, 0x04, 0x4d, 0x21, + 0x3e, 0xb7, 0x90, 0x21, +}; +static const unsigned char kat1166_addin1[] = { + 0xeb, 0x4c, 0x2d, 0x77, 0xf5, 0x8b, 0xf8, 0x26, 0x7c, 0x78, 0xea, 0x8f, + 0x85, 0x6a, 0xff, 0x89, 0x57, 0xb4, 0x6f, 0x30, 0xc7, 0xa0, 0xfc, 0x8b, + 0x8c, 0xcb, 0x60, 0x50, 0xe5, 0x15, 0xc3, 0xe6, 0xb0, 0x2b, 0x05, 0xf3, + 0x36, 0x34, 0xae, 0xeb, +}; +static const unsigned char kat1166_retbits[] = { + 0xee, 0x37, 0x11, 0x7c, 0xa5, 0xe1, 0x4c, 0x4e, 0xa5, 0xa8, 0x19, 0xb1, + 0x73, 0x75, 0x7a, 0x53, 0xf8, 0xaf, 0x9c, 0x4a, 0xfd, 0x8e, 0x8b, 0xee, + 0xb1, 0x10, 0x46, 0xd9, 0x88, 0xf3, 0x4f, 0xa0, 0x7b, 0xb0, 0xef, 0x4a, + 0x4c, 0xe4, 0xd2, 0x08, 0x87, 0xd1, 0x83, 0x54, 0x7c, 0x59, 0x7a, 0xd2, + 0xa6, 0x21, 0x37, 0x75, 0x0c, 0x07, 0xe5, 0xc7, 0x8f, 0xaa, 0xfa, 0xb1, + 0x02, 0x46, 0x17, 0x86, +}; +static const struct drbg_kat_no_reseed kat1166_t = { + 10, kat1166_entropyin, kat1166_nonce, kat1166_persstr, + kat1166_addin0, kat1166_addin1, kat1166_retbits +}; +static const struct drbg_kat kat1166 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1166_t +}; + +static const unsigned char kat1167_entropyin[] = { + 0xa2, 0x8b, 0x27, 0x22, 0xc0, 0x92, 0xe5, 0xc0, 0x45, 0xc6, 0x4b, 0x39, + 0xd9, 0xb9, 0x67, 0xcc, 0x78, 0xff, 0xed, 0xf3, 0x4d, 0xf7, 0x4b, 0x46, + 0x46, 0x57, 0x67, 0xb3, 0x7f, 0x26, 0x3f, 0xec, 0x5b, 0x31, 0xa0, 0xef, + 0x98, 0x67, 0x71, 0x51, +}; +static const unsigned char kat1167_nonce[] = {0}; +static const unsigned char kat1167_persstr[] = {0}; +static const unsigned char kat1167_addin0[] = { + 0x97, 0x94, 0x6f, 0x86, 0xe4, 0xfc, 0xa6, 0x4f, 0x74, 0xaa, 0x0e, 0x72, + 0xb4, 0x5e, 0xb3, 0xc1, 0x67, 0x55, 0x99, 0xe7, 0x3e, 0xb6, 0xbb, 0x0d, + 0xde, 0x32, 0x6a, 0x3a, 0x22, 0x32, 0xbe, 0xaa, 0xa9, 0xc7, 0x38, 0x63, + 0x9e, 0x98, 0x14, 0xf6, +}; +static const unsigned char kat1167_addin1[] = { + 0x38, 0xbf, 0x98, 0xb3, 0xa8, 0xdb, 0x1a, 0x6d, 0xce, 0xd8, 0x08, 0xc1, + 0x7e, 0x80, 0xd6, 0xdf, 0x5f, 0x06, 0x3e, 0xf9, 0x0c, 0xc6, 0x6c, 0xcc, + 0x12, 0x32, 0x17, 0x77, 0xc4, 0xee, 0xf9, 0x25, 0x75, 0x8d, 0x26, 0x6f, + 0x8d, 0x68, 0x23, 0xd4, +}; +static const unsigned char kat1167_retbits[] = { + 0x13, 0x71, 0xf0, 0x4c, 0x59, 0x41, 0xf9, 0xa1, 0x43, 0xd3, 0x29, 0x4b, + 0x03, 0x2d, 0xaa, 0x20, 0xf1, 0x47, 0x5d, 0x26, 0xd1, 0x7a, 0xe5, 0x13, + 0xdb, 0x95, 0xa6, 0xb5, 0x1e, 0xa8, 0xc2, 0x72, 0x0b, 0x5c, 0xf6, 0xb9, + 0x47, 0xb9, 0x3d, 0x4e, 0x47, 0x52, 0x77, 0x77, 0x3b, 0xb1, 0x43, 0x65, + 0x57, 0x26, 0xc2, 0x20, 0x25, 0xe6, 0xe8, 0x8e, 0x1d, 0xb2, 0xbf, 0x28, + 0x63, 0xdd, 0x8d, 0xc5, +}; +static const struct drbg_kat_no_reseed kat1167_t = { + 11, kat1167_entropyin, kat1167_nonce, kat1167_persstr, + kat1167_addin0, kat1167_addin1, kat1167_retbits +}; +static const struct drbg_kat kat1167 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1167_t +}; + +static const unsigned char kat1168_entropyin[] = { + 0x00, 0xc2, 0xfe, 0x57, 0xd0, 0xfd, 0x5e, 0x19, 0x41, 0x60, 0x38, 0x29, + 0x4a, 0x85, 0x06, 0x53, 0xe4, 0xb0, 0x6b, 0x09, 0x9f, 0xbf, 0xa7, 0x38, + 0x2f, 0x17, 0xae, 0xd4, 0x36, 0x9a, 0x2f, 0x66, 0x91, 0xe6, 0xdb, 0xc9, + 0x6e, 0xc4, 0x74, 0x2c, +}; +static const unsigned char kat1168_nonce[] = {0}; +static const unsigned char kat1168_persstr[] = {0}; +static const unsigned char kat1168_addin0[] = { + 0x23, 0xf4, 0xd4, 0x8e, 0x72, 0x74, 0xe8, 0x78, 0xed, 0xea, 0xa6, 0xc0, + 0xce, 0x19, 0x45, 0xa5, 0x53, 0xb1, 0x8f, 0xd9, 0x5f, 0xa0, 0xbb, 0x69, + 0x79, 0x04, 0xb1, 0x34, 0x93, 0xa0, 0x87, 0x24, 0x64, 0xc2, 0x6f, 0x7e, + 0x73, 0x1b, 0xc5, 0x76, +}; +static const unsigned char kat1168_addin1[] = { + 0x93, 0x10, 0xa5, 0xfa, 0x97, 0x08, 0x60, 0xfd, 0xac, 0x7e, 0xac, 0x59, + 0x56, 0xbf, 0xdf, 0xe5, 0x52, 0x74, 0x76, 0x2f, 0x86, 0x32, 0xdf, 0x4e, + 0xd0, 0xeb, 0x26, 0x99, 0xcc, 0xbc, 0xc4, 0x01, 0x98, 0xcb, 0x9a, 0xe5, + 0x4d, 0x3d, 0xb2, 0x9a, +}; +static const unsigned char kat1168_retbits[] = { + 0x15, 0x8a, 0x65, 0xe3, 0x86, 0xfa, 0xe7, 0xfc, 0x7b, 0x7e, 0x02, 0x19, + 0xee, 0x4b, 0x64, 0x9c, 0x19, 0xd7, 0x91, 0xc0, 0x87, 0xc5, 0xa4, 0xef, + 0x7c, 0xca, 0x64, 0x3e, 0xcc, 0xb7, 0x92, 0xcd, 0xa9, 0x70, 0x69, 0x3e, + 0xde, 0x58, 0x8b, 0x38, 0x52, 0x72, 0x57, 0xea, 0xb8, 0xd5, 0xc0, 0x6b, + 0x17, 0x7f, 0xf5, 0xc2, 0x5d, 0x6b, 0x01, 0x44, 0xd3, 0xb7, 0x42, 0x11, + 0x56, 0x9d, 0x64, 0x01, +}; +static const struct drbg_kat_no_reseed kat1168_t = { + 12, kat1168_entropyin, kat1168_nonce, kat1168_persstr, + kat1168_addin0, kat1168_addin1, kat1168_retbits +}; +static const struct drbg_kat kat1168 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1168_t +}; + +static const unsigned char kat1169_entropyin[] = { + 0xa5, 0x8f, 0x5e, 0xc7, 0x2b, 0x92, 0x79, 0x2d, 0x74, 0x02, 0xa6, 0x8f, + 0x56, 0xe1, 0x9a, 0xf2, 0x8a, 0xb9, 0x10, 0x35, 0xde, 0x48, 0x8c, 0xaa, + 0x6b, 0x60, 0x4c, 0x21, 0xbf, 0xb1, 0xa2, 0x8d, 0xf5, 0xeb, 0x40, 0xfa, + 0x92, 0x0f, 0xad, 0x89, +}; +static const unsigned char kat1169_nonce[] = {0}; +static const unsigned char kat1169_persstr[] = {0}; +static const unsigned char kat1169_addin0[] = { + 0xf8, 0x10, 0x86, 0x53, 0x97, 0xd9, 0x01, 0x43, 0xab, 0xc8, 0xba, 0x97, + 0x67, 0x2d, 0x3c, 0x56, 0x3b, 0xe3, 0xab, 0x43, 0xc6, 0xdd, 0x20, 0x44, + 0x52, 0x2b, 0x48, 0x2c, 0x92, 0xd7, 0xa4, 0xc3, 0xf8, 0x5e, 0x8d, 0x5f, + 0x08, 0x9d, 0xfd, 0x2b, +}; +static const unsigned char kat1169_addin1[] = { + 0x4c, 0x4d, 0x43, 0x15, 0x39, 0x2e, 0x71, 0x1f, 0xbc, 0x97, 0xdd, 0xb0, + 0xb1, 0x89, 0xcc, 0xbb, 0xeb, 0x0e, 0xe7, 0x1f, 0x65, 0x77, 0xb4, 0x10, + 0x9a, 0x62, 0x4e, 0x5a, 0xae, 0xaf, 0x90, 0xf9, 0xd8, 0x61, 0x9e, 0x89, + 0x7f, 0xbd, 0xa4, 0x6d, +}; +static const unsigned char kat1169_retbits[] = { + 0xef, 0x3c, 0x1b, 0x44, 0x5d, 0x23, 0x7b, 0xe9, 0x58, 0x85, 0x36, 0x2d, + 0x70, 0xec, 0x03, 0xa0, 0x57, 0x6b, 0x4b, 0xfe, 0xb6, 0x33, 0x6f, 0x20, + 0x3b, 0x0f, 0x02, 0xb6, 0x8e, 0xb7, 0x41, 0x01, 0xd3, 0x58, 0x42, 0x5a, + 0xf5, 0x0b, 0x2e, 0xb0, 0xd7, 0xd3, 0xde, 0xfe, 0xf2, 0x13, 0x4b, 0xcc, + 0x46, 0x51, 0xfa, 0xee, 0x75, 0x1b, 0xca, 0xc8, 0x60, 0x97, 0x58, 0x68, + 0xaf, 0x9b, 0xf5, 0x33, +}; +static const struct drbg_kat_no_reseed kat1169_t = { + 13, kat1169_entropyin, kat1169_nonce, kat1169_persstr, + kat1169_addin0, kat1169_addin1, kat1169_retbits +}; +static const struct drbg_kat kat1169 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1169_t +}; + +static const unsigned char kat1170_entropyin[] = { + 0x78, 0xd1, 0x23, 0xf6, 0x52, 0x4e, 0x52, 0x8d, 0xe8, 0xce, 0x80, 0x11, + 0x88, 0xc0, 0x8d, 0x85, 0xf6, 0xf1, 0x94, 0xc9, 0xfe, 0x54, 0x6f, 0xb4, + 0x40, 0x71, 0x46, 0x86, 0x96, 0x5d, 0x3c, 0xa8, 0x14, 0x80, 0xb5, 0x21, + 0xb4, 0x8d, 0x0c, 0x90, +}; +static const unsigned char kat1170_nonce[] = {0}; +static const unsigned char kat1170_persstr[] = {0}; +static const unsigned char kat1170_addin0[] = { + 0x32, 0x0c, 0x32, 0x02, 0xd7, 0x10, 0xd6, 0x2b, 0x04, 0xbe, 0xd6, 0xcc, + 0x1d, 0x45, 0xb6, 0xa3, 0xfa, 0x30, 0x65, 0x22, 0xb9, 0x4c, 0xb7, 0x03, + 0x7a, 0xe7, 0xed, 0x66, 0x09, 0x78, 0xfc, 0x3c, 0x05, 0xf6, 0xc2, 0x69, + 0xc8, 0x06, 0xad, 0xac, +}; +static const unsigned char kat1170_addin1[] = { + 0xbf, 0x6b, 0x78, 0xf3, 0x55, 0x2f, 0xab, 0x90, 0x33, 0x31, 0x17, 0xfd, + 0x2f, 0xcf, 0xac, 0x3a, 0xf1, 0x0c, 0x5e, 0x4d, 0xc0, 0xde, 0xdc, 0x58, + 0x1b, 0x0b, 0x15, 0xb6, 0xaa, 0x57, 0x9e, 0x57, 0x6f, 0xd8, 0xb1, 0x0a, + 0x09, 0x9d, 0x05, 0xe1, +}; +static const unsigned char kat1170_retbits[] = { + 0xe9, 0x69, 0x0c, 0xf3, 0xa6, 0xa6, 0x9e, 0x92, 0xe5, 0x6b, 0x8f, 0x79, + 0x3c, 0x2a, 0x27, 0xd2, 0xed, 0x3c, 0x32, 0x1e, 0x61, 0xc2, 0xe5, 0x9b, + 0x99, 0xb8, 0xae, 0xba, 0xe7, 0x4a, 0xeb, 0x9f, 0x81, 0x03, 0x48, 0x52, + 0x93, 0x86, 0x03, 0x7f, 0xf4, 0xf1, 0xa9, 0xf5, 0x25, 0xaf, 0xf4, 0x94, + 0xf8, 0x81, 0x7b, 0x08, 0x7d, 0x67, 0x81, 0x7c, 0x9a, 0x75, 0x47, 0xe5, + 0x61, 0x09, 0x22, 0x4a, +}; +static const struct drbg_kat_no_reseed kat1170_t = { + 14, kat1170_entropyin, kat1170_nonce, kat1170_persstr, + kat1170_addin0, kat1170_addin1, kat1170_retbits +}; +static const struct drbg_kat kat1170 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat1170_t +}; + +static const unsigned char kat1171_entropyin[] = { + 0x56, 0xe7, 0x81, 0x09, 0x09, 0x43, 0x68, 0x56, 0xc9, 0x2d, 0xbf, 0x07, + 0xd1, 0x26, 0x9c, 0xa5, 0x87, 0x83, 0x84, 0x3d, 0x26, 0x4e, 0xf6, 0x84, + 0x2f, 0xab, 0xfd, 0x3d, 0xb2, 0xf6, 0x6f, 0x37, 0x45, 0x15, 0x86, 0xe0, + 0x94, 0x1e, 0xf2, 0x98, +}; +static const unsigned char kat1171_nonce[] = {0}; +static const unsigned char kat1171_persstr[] = { + 0x51, 0xb6, 0xf2, 0xe1, 0x65, 0x3e, 0xca, 0x3b, 0x36, 0xd7, 0x6f, 0xd8, + 0x89, 0xf7, 0xd0, 0x2f, 0xbf, 0xd6, 0x4c, 0xdd, 0xd4, 0x04, 0x47, 0xf8, + 0x4a, 0xb2, 0x04, 0x4f, 0x49, 0xb0, 0xfa, 0x5c, 0x1e, 0xce, 0x0c, 0xfc, + 0xa4, 0x66, 0xae, 0x49, +}; +static const unsigned char kat1171_addin0[] = {0}; +static const unsigned char kat1171_addin1[] = {0}; +static const unsigned char kat1171_retbits[] = { + 0x4f, 0x61, 0x10, 0x1e, 0xb1, 0x41, 0xf4, 0x84, 0xc6, 0x99, 0x77, 0x9a, + 0x92, 0x95, 0x3a, 0x36, 0x29, 0x03, 0x5e, 0xc2, 0xbd, 0xf1, 0x04, 0x53, + 0x29, 0x55, 0xaa, 0xfc, 0x14, 0x0b, 0xb1, 0xf3, 0x77, 0x07, 0x80, 0x62, + 0x08, 0x4d, 0x91, 0xe8, 0x0b, 0x7f, 0xa9, 0xc0, 0xf1, 0x71, 0xe5, 0xfb, + 0x09, 0x70, 0xd1, 0xa8, 0x48, 0x70, 0x4f, 0xf9, 0xa0, 0xed, 0xb8, 0xef, + 0x84, 0xa7, 0xa1, 0x04, +}; +static const struct drbg_kat_no_reseed kat1171_t = { + 0, kat1171_entropyin, kat1171_nonce, kat1171_persstr, + kat1171_addin0, kat1171_addin1, kat1171_retbits +}; +static const struct drbg_kat kat1171 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1171_t +}; + +static const unsigned char kat1172_entropyin[] = { + 0x78, 0x19, 0xfa, 0x7e, 0xec, 0x40, 0xed, 0x26, 0xd4, 0xa1, 0xe8, 0xfc, + 0xec, 0x1c, 0x0c, 0x57, 0x90, 0x82, 0x82, 0xef, 0xf6, 0x66, 0x67, 0x0a, + 0xf8, 0xaa, 0x30, 0x85, 0x51, 0x1d, 0xa8, 0x31, 0xf1, 0x2b, 0x24, 0xaf, + 0xc7, 0x72, 0x8c, 0x1d, +}; +static const unsigned char kat1172_nonce[] = {0}; +static const unsigned char kat1172_persstr[] = { + 0x95, 0x56, 0x2e, 0x4c, 0x1a, 0x1b, 0x8e, 0x1d, 0x02, 0x26, 0x06, 0x35, + 0x7c, 0xf1, 0x3d, 0x6c, 0xe2, 0x80, 0xa5, 0x25, 0x31, 0x5e, 0x89, 0x9b, + 0x33, 0xef, 0xb5, 0xd6, 0x76, 0x5c, 0xb1, 0xeb, 0x3d, 0xa2, 0xd7, 0xab, + 0xdc, 0xb0, 0x16, 0x58, +}; +static const unsigned char kat1172_addin0[] = {0}; +static const unsigned char kat1172_addin1[] = {0}; +static const unsigned char kat1172_retbits[] = { + 0x81, 0xf9, 0x87, 0x7a, 0x41, 0x37, 0x1b, 0xaf, 0x63, 0xf7, 0xe4, 0xde, + 0xeb, 0x2d, 0xa1, 0x09, 0x85, 0xfd, 0xa9, 0xf5, 0x01, 0x6f, 0x9f, 0x4d, + 0xb0, 0x8e, 0xc6, 0xde, 0xf8, 0x10, 0x84, 0x63, 0x81, 0x18, 0x3f, 0xde, + 0xd8, 0x77, 0xcf, 0xe4, 0x11, 0x12, 0x77, 0x45, 0x12, 0xc2, 0xb0, 0x35, + 0x01, 0xe7, 0xf3, 0xda, 0xf6, 0xd3, 0xa5, 0x8a, 0x0c, 0xbf, 0xd7, 0x40, + 0xfe, 0x02, 0x43, 0x2a, +}; +static const struct drbg_kat_no_reseed kat1172_t = { + 1, kat1172_entropyin, kat1172_nonce, kat1172_persstr, + kat1172_addin0, kat1172_addin1, kat1172_retbits +}; +static const struct drbg_kat kat1172 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1172_t +}; + +static const unsigned char kat1173_entropyin[] = { + 0x89, 0x12, 0x1d, 0x4c, 0x10, 0xa8, 0x9d, 0x43, 0x92, 0xdc, 0x9b, 0x0a, + 0xe5, 0x70, 0x55, 0xa5, 0xdf, 0x5b, 0x9b, 0xde, 0xdc, 0xaf, 0xe1, 0xc7, + 0x37, 0x4f, 0xc4, 0xbb, 0x17, 0xb5, 0xf0, 0x68, 0xab, 0xd2, 0x2d, 0x57, + 0x68, 0x82, 0xeb, 0x66, +}; +static const unsigned char kat1173_nonce[] = {0}; +static const unsigned char kat1173_persstr[] = { + 0x3c, 0x2f, 0x07, 0x98, 0xee, 0x67, 0x61, 0x39, 0x11, 0x29, 0xee, 0xdf, + 0xaa, 0x48, 0x3d, 0xb1, 0xcd, 0x3c, 0x18, 0xc2, 0x7f, 0x38, 0x06, 0x33, + 0x4f, 0x7d, 0xb3, 0xc1, 0x02, 0x22, 0xbb, 0x8b, 0xc5, 0xfc, 0xaa, 0xc2, + 0x38, 0x79, 0x19, 0x41, +}; +static const unsigned char kat1173_addin0[] = {0}; +static const unsigned char kat1173_addin1[] = {0}; +static const unsigned char kat1173_retbits[] = { + 0x7e, 0xe7, 0x4c, 0x8b, 0x6d, 0xa5, 0x46, 0x47, 0x48, 0x80, 0x1c, 0xb5, + 0xdc, 0x16, 0x2c, 0x40, 0x71, 0x3d, 0xe8, 0x0b, 0x81, 0x0f, 0x5b, 0x01, + 0xfd, 0x63, 0xb0, 0xa5, 0xdc, 0x27, 0x10, 0xf4, 0x90, 0xf2, 0x41, 0xf9, + 0xfb, 0x47, 0x9c, 0x70, 0x51, 0x2c, 0xf7, 0x79, 0xbc, 0x57, 0xca, 0x02, + 0xaf, 0x85, 0xd9, 0x56, 0x03, 0x92, 0x2e, 0xe5, 0x79, 0xb9, 0x01, 0x6a, + 0x54, 0x34, 0xfe, 0x71, +}; +static const struct drbg_kat_no_reseed kat1173_t = { + 2, kat1173_entropyin, kat1173_nonce, kat1173_persstr, + kat1173_addin0, kat1173_addin1, kat1173_retbits +}; +static const struct drbg_kat kat1173 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1173_t +}; + +static const unsigned char kat1174_entropyin[] = { + 0x72, 0xe2, 0xd6, 0x3d, 0x87, 0x99, 0x4b, 0x5d, 0x55, 0xfb, 0x25, 0x77, + 0xd1, 0x01, 0xad, 0x23, 0xb6, 0x44, 0x7c, 0xfc, 0xe6, 0xb2, 0x70, 0x0c, + 0x03, 0x70, 0xf7, 0x7d, 0xed, 0x60, 0x80, 0x92, 0xc8, 0x74, 0x60, 0x12, + 0x47, 0x2f, 0xab, 0x02, +}; +static const unsigned char kat1174_nonce[] = {0}; +static const unsigned char kat1174_persstr[] = { + 0x0e, 0x5f, 0x57, 0x9a, 0x1a, 0xa4, 0xfe, 0xf3, 0x5a, 0x70, 0x1a, 0x7a, + 0xb3, 0x66, 0x4a, 0x4f, 0xd0, 0x83, 0xe1, 0x37, 0xd9, 0xcc, 0x13, 0xbd, + 0xf0, 0xbf, 0xb0, 0xed, 0xdf, 0x0b, 0x09, 0x52, 0x5a, 0xa1, 0x5d, 0x14, + 0x7f, 0x0e, 0xee, 0xd8, +}; +static const unsigned char kat1174_addin0[] = {0}; +static const unsigned char kat1174_addin1[] = {0}; +static const unsigned char kat1174_retbits[] = { + 0x63, 0xf2, 0xf8, 0x59, 0x1d, 0x71, 0x0d, 0xb0, 0xda, 0x15, 0x3f, 0xda, + 0x01, 0xdf, 0x95, 0xf5, 0x0e, 0x7d, 0xe3, 0x2e, 0xc2, 0xea, 0x06, 0xf8, + 0x9b, 0x11, 0x9a, 0xce, 0x8f, 0x28, 0x24, 0xa5, 0x60, 0x2c, 0x65, 0xf8, + 0x22, 0x5a, 0x64, 0x36, 0xef, 0xa3, 0x10, 0xa6, 0x06, 0x60, 0xaf, 0xee, + 0x3e, 0x60, 0x2b, 0x6c, 0xb7, 0x87, 0x24, 0x9b, 0x35, 0x88, 0xf6, 0x38, + 0x13, 0xb5, 0xed, 0x1b, +}; +static const struct drbg_kat_no_reseed kat1174_t = { + 3, kat1174_entropyin, kat1174_nonce, kat1174_persstr, + kat1174_addin0, kat1174_addin1, kat1174_retbits +}; +static const struct drbg_kat kat1174 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1174_t +}; + +static const unsigned char kat1175_entropyin[] = { + 0x07, 0x97, 0x2b, 0x0b, 0x37, 0x64, 0x6c, 0x12, 0x22, 0xdf, 0x2b, 0xa0, + 0xd8, 0x51, 0x81, 0xf6, 0x52, 0xd4, 0x01, 0x13, 0xa6, 0xbd, 0x5a, 0x28, + 0x3b, 0x7b, 0x97, 0x08, 0x7a, 0xa3, 0x91, 0xad, 0x3e, 0x9a, 0x2c, 0x29, + 0x47, 0xd2, 0x61, 0xc1, +}; +static const unsigned char kat1175_nonce[] = {0}; +static const unsigned char kat1175_persstr[] = { + 0xa9, 0x4c, 0xcb, 0x58, 0xb7, 0xdd, 0x4e, 0xa1, 0x9d, 0x32, 0x71, 0x99, + 0xba, 0x1a, 0x68, 0x59, 0x77, 0x57, 0xc5, 0x18, 0xff, 0x96, 0x8e, 0x18, + 0x21, 0xa7, 0x41, 0xf3, 0x0c, 0xea, 0xa4, 0xe0, 0x66, 0x4d, 0x04, 0x29, + 0xb6, 0x09, 0xba, 0x68, +}; +static const unsigned char kat1175_addin0[] = {0}; +static const unsigned char kat1175_addin1[] = {0}; +static const unsigned char kat1175_retbits[] = { + 0x46, 0x94, 0x46, 0x5c, 0xdc, 0xf2, 0xf6, 0xbc, 0xe8, 0x7f, 0x38, 0x91, + 0x30, 0x9d, 0x20, 0x3f, 0x2c, 0xa7, 0x34, 0xc2, 0x8a, 0x25, 0xef, 0xc0, + 0x9b, 0x73, 0x3b, 0xd5, 0xd7, 0x77, 0xfe, 0xe9, 0xc0, 0xbf, 0x64, 0x36, + 0x27, 0x1e, 0xa2, 0x0e, 0x61, 0xc8, 0x59, 0x35, 0x9c, 0x05, 0xf0, 0x32, + 0x0f, 0xe9, 0xb2, 0xcc, 0xe5, 0x44, 0x78, 0x88, 0x3d, 0xde, 0xf7, 0x01, + 0xa4, 0xb7, 0x55, 0x64, +}; +static const struct drbg_kat_no_reseed kat1175_t = { + 4, kat1175_entropyin, kat1175_nonce, kat1175_persstr, + kat1175_addin0, kat1175_addin1, kat1175_retbits +}; +static const struct drbg_kat kat1175 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1175_t +}; + +static const unsigned char kat1176_entropyin[] = { + 0x76, 0x09, 0xaf, 0x59, 0xf9, 0x7a, 0x0c, 0xf9, 0xc0, 0x11, 0x9c, 0xf6, + 0x10, 0x4f, 0x73, 0xfd, 0x69, 0x7d, 0x50, 0xca, 0x3d, 0xb1, 0x24, 0xf2, + 0xc5, 0x81, 0x31, 0xb9, 0xfd, 0xb9, 0x41, 0x69, 0x78, 0xd1, 0xc8, 0xe8, + 0xad, 0xa4, 0xea, 0x2f, +}; +static const unsigned char kat1176_nonce[] = {0}; +static const unsigned char kat1176_persstr[] = { + 0x6f, 0xf5, 0x64, 0x30, 0x9e, 0xcb, 0x6d, 0x90, 0x23, 0x3f, 0x8a, 0x3b, + 0xc5, 0x2b, 0xdd, 0xa6, 0x89, 0xe5, 0x0c, 0xd4, 0xef, 0x42, 0xd4, 0x8d, + 0xd9, 0x3a, 0x81, 0xc5, 0x5b, 0xce, 0xa4, 0x2c, 0xb8, 0xfb, 0x73, 0x02, + 0x4a, 0x20, 0xde, 0x2b, +}; +static const unsigned char kat1176_addin0[] = {0}; +static const unsigned char kat1176_addin1[] = {0}; +static const unsigned char kat1176_retbits[] = { + 0x17, 0x5c, 0xa6, 0xd0, 0xea, 0x7c, 0x12, 0x3e, 0x7f, 0x0e, 0x1e, 0x2f, + 0xed, 0xd5, 0x6a, 0x5a, 0xfa, 0x3a, 0x25, 0x2b, 0x9e, 0x2d, 0x8f, 0xc4, + 0x5b, 0xc3, 0x27, 0xe2, 0x4e, 0x60, 0x1e, 0x7d, 0x4c, 0x00, 0xfd, 0xe7, + 0xc9, 0x5f, 0x75, 0x13, 0xb9, 0xd6, 0x41, 0xc1, 0x38, 0x26, 0x87, 0xf9, + 0x07, 0x94, 0x0f, 0xcf, 0xd2, 0x61, 0x29, 0xc6, 0x62, 0x0d, 0xf4, 0xf5, + 0x9c, 0x55, 0x2b, 0x35, +}; +static const struct drbg_kat_no_reseed kat1176_t = { + 5, kat1176_entropyin, kat1176_nonce, kat1176_persstr, + kat1176_addin0, kat1176_addin1, kat1176_retbits +}; +static const struct drbg_kat kat1176 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1176_t +}; + +static const unsigned char kat1177_entropyin[] = { + 0x7d, 0x4a, 0x89, 0xb5, 0x32, 0x99, 0x64, 0xf3, 0xa4, 0xe5, 0x22, 0x3e, + 0xd6, 0x01, 0x7e, 0xd5, 0x3e, 0x5d, 0x76, 0x57, 0xde, 0x24, 0xad, 0x8b, + 0xa5, 0x04, 0x9c, 0x3f, 0x57, 0x92, 0xe0, 0x16, 0x23, 0xa6, 0x52, 0x6e, + 0x61, 0xe9, 0x46, 0x8d, +}; +static const unsigned char kat1177_nonce[] = {0}; +static const unsigned char kat1177_persstr[] = { + 0xed, 0xd4, 0xcf, 0x25, 0x4a, 0xd4, 0xae, 0xc6, 0xae, 0x61, 0xb5, 0xb9, + 0xe0, 0xcc, 0x32, 0x2a, 0x58, 0x24, 0xa0, 0xec, 0x0f, 0xb5, 0x73, 0xf7, + 0x60, 0x10, 0x47, 0x6d, 0x11, 0x26, 0x22, 0x1f, 0xe0, 0xb8, 0xf2, 0xb9, + 0x40, 0x6b, 0x91, 0xcd, +}; +static const unsigned char kat1177_addin0[] = {0}; +static const unsigned char kat1177_addin1[] = {0}; +static const unsigned char kat1177_retbits[] = { + 0x8b, 0x92, 0x3d, 0x80, 0x12, 0xf3, 0x4e, 0xda, 0xc5, 0xe4, 0x6a, 0x98, + 0x1b, 0x0b, 0xd2, 0x21, 0xbf, 0x04, 0x0d, 0x04, 0xc1, 0x7d, 0x01, 0xb4, + 0xfa, 0x5b, 0xc2, 0xfc, 0xcd, 0x12, 0x38, 0x25, 0xa5, 0xe1, 0x70, 0x08, + 0xcc, 0xff, 0x41, 0x5a, 0x1e, 0x4f, 0x2c, 0x8c, 0x52, 0x1c, 0x8f, 0xfd, + 0x8d, 0x36, 0x48, 0x05, 0x0c, 0x9c, 0x89, 0x67, 0x1f, 0xfe, 0xeb, 0xa5, + 0x18, 0xa2, 0xc1, 0xd9, +}; +static const struct drbg_kat_no_reseed kat1177_t = { + 6, kat1177_entropyin, kat1177_nonce, kat1177_persstr, + kat1177_addin0, kat1177_addin1, kat1177_retbits +}; +static const struct drbg_kat kat1177 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1177_t +}; + +static const unsigned char kat1178_entropyin[] = { + 0x78, 0x7e, 0xdd, 0x7a, 0xac, 0xe3, 0x06, 0xad, 0x6d, 0x0c, 0x6d, 0xf8, + 0x08, 0x8f, 0x32, 0x74, 0x2b, 0xcf, 0x5f, 0x32, 0x1f, 0xd5, 0xf7, 0xfe, + 0xd9, 0x57, 0x28, 0x28, 0x25, 0x9f, 0xd0, 0x6c, 0x91, 0x21, 0xc7, 0x8d, + 0xd1, 0xc0, 0x5b, 0x52, +}; +static const unsigned char kat1178_nonce[] = {0}; +static const unsigned char kat1178_persstr[] = { + 0x85, 0xef, 0x86, 0xd2, 0x98, 0xfe, 0xb9, 0x5f, 0x72, 0x35, 0x77, 0xd5, + 0xd2, 0x6f, 0xa2, 0x2b, 0xcf, 0xa6, 0x16, 0x98, 0x1e, 0x0e, 0x9e, 0x1a, + 0xc1, 0xd5, 0x44, 0xec, 0x3d, 0xf7, 0x65, 0x70, 0xce, 0x7d, 0xa8, 0xc4, + 0xe4, 0xa9, 0x58, 0xdb, +}; +static const unsigned char kat1178_addin0[] = {0}; +static const unsigned char kat1178_addin1[] = {0}; +static const unsigned char kat1178_retbits[] = { + 0x1e, 0x8a, 0xf0, 0xd2, 0x12, 0xda, 0x56, 0x6f, 0x13, 0x3a, 0x88, 0x37, + 0x22, 0xd8, 0xe1, 0x72, 0xd6, 0xad, 0xb1, 0xf8, 0x8e, 0x29, 0xd6, 0xef, + 0xee, 0x44, 0x7c, 0x30, 0xfe, 0x60, 0x3a, 0x63, 0x01, 0x7e, 0x62, 0x27, + 0xea, 0x9d, 0xfa, 0xa8, 0xde, 0x09, 0x3d, 0xc1, 0x7c, 0x81, 0xa3, 0x31, + 0x0d, 0xfc, 0x86, 0xb3, 0x21, 0x1d, 0x9e, 0x19, 0x81, 0xe8, 0x53, 0xb0, + 0xd3, 0x47, 0xcd, 0xa7, +}; +static const struct drbg_kat_no_reseed kat1178_t = { + 7, kat1178_entropyin, kat1178_nonce, kat1178_persstr, + kat1178_addin0, kat1178_addin1, kat1178_retbits +}; +static const struct drbg_kat kat1178 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1178_t +}; + +static const unsigned char kat1179_entropyin[] = { + 0x01, 0x14, 0x6f, 0x8c, 0x69, 0x7d, 0xdc, 0xd7, 0xf8, 0x5a, 0x59, 0xad, + 0xbd, 0xfd, 0x19, 0x23, 0xf0, 0xec, 0xfa, 0xae, 0x88, 0x9c, 0x48, 0x8d, + 0xb4, 0x3f, 0x9d, 0x4c, 0x36, 0x7b, 0x62, 0x6b, 0x33, 0x7e, 0xed, 0xf9, + 0x17, 0xc3, 0x19, 0x77, +}; +static const unsigned char kat1179_nonce[] = {0}; +static const unsigned char kat1179_persstr[] = { + 0xf6, 0x78, 0xa4, 0x3a, 0xc0, 0x53, 0x83, 0xdb, 0xca, 0x92, 0x67, 0xff, + 0x23, 0x05, 0x05, 0x2e, 0x57, 0x06, 0x4b, 0x69, 0x51, 0xc9, 0xe7, 0xe9, + 0xc8, 0x26, 0xed, 0x86, 0x8a, 0x34, 0xfb, 0x0d, 0x0b, 0x26, 0x16, 0x0f, + 0x06, 0x3c, 0x58, 0x04, +}; +static const unsigned char kat1179_addin0[] = {0}; +static const unsigned char kat1179_addin1[] = {0}; +static const unsigned char kat1179_retbits[] = { + 0x40, 0x20, 0x40, 0x34, 0x83, 0x72, 0xf9, 0xde, 0x0e, 0xa4, 0x47, 0x8a, + 0x52, 0xde, 0xba, 0x7c, 0xc5, 0x5c, 0xae, 0xf5, 0x7b, 0x7f, 0x19, 0x3b, + 0xa8, 0x2a, 0xf5, 0x29, 0xe0, 0xbf, 0x75, 0x2f, 0xbb, 0x28, 0x3d, 0xec, + 0xe6, 0x87, 0x66, 0xc8, 0x48, 0xdb, 0x0d, 0xd5, 0xc4, 0x9a, 0x2a, 0xb1, + 0xdd, 0xf6, 0x25, 0x55, 0x5a, 0x4f, 0xd1, 0xc3, 0x19, 0x9a, 0xa1, 0xf4, + 0x02, 0xcb, 0xc2, 0xbb, +}; +static const struct drbg_kat_no_reseed kat1179_t = { + 8, kat1179_entropyin, kat1179_nonce, kat1179_persstr, + kat1179_addin0, kat1179_addin1, kat1179_retbits +}; +static const struct drbg_kat kat1179 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1179_t +}; + +static const unsigned char kat1180_entropyin[] = { + 0xb0, 0x0a, 0x90, 0x60, 0x86, 0x1e, 0x78, 0xf8, 0x23, 0xd0, 0x3f, 0x31, + 0x92, 0x92, 0xb6, 0x12, 0xb5, 0x5a, 0x4c, 0x90, 0xa1, 0xdc, 0xf3, 0xc4, + 0x5d, 0xeb, 0x94, 0x55, 0xcf, 0x8d, 0x2a, 0x42, 0x3c, 0xfb, 0xe7, 0xbb, + 0x24, 0xa5, 0xdf, 0x04, +}; +static const unsigned char kat1180_nonce[] = {0}; +static const unsigned char kat1180_persstr[] = { + 0x61, 0x1f, 0x2d, 0x5b, 0x2d, 0x00, 0x04, 0x61, 0x7a, 0x8b, 0xb0, 0x2c, + 0x8e, 0x4b, 0x08, 0x3a, 0xbf, 0xfa, 0xd6, 0xb6, 0xbd, 0x75, 0x56, 0xa7, + 0xc2, 0x7d, 0xcf, 0x5c, 0x7c, 0x6c, 0x83, 0x30, 0xec, 0xf7, 0xa9, 0xe8, + 0x83, 0xcf, 0x49, 0xe1, +}; +static const unsigned char kat1180_addin0[] = {0}; +static const unsigned char kat1180_addin1[] = {0}; +static const unsigned char kat1180_retbits[] = { + 0xe0, 0x51, 0x87, 0x2f, 0x5e, 0xa1, 0x3c, 0xde, 0xb7, 0xe6, 0x1c, 0xe0, + 0x45, 0x09, 0xce, 0x3d, 0x45, 0x39, 0xb2, 0x8c, 0x05, 0x29, 0xcf, 0xef, + 0xbf, 0xae, 0x12, 0xa7, 0x50, 0x87, 0x0b, 0x68, 0xfe, 0xd8, 0x9b, 0x31, + 0xe8, 0x7f, 0x0d, 0xc3, 0xd5, 0x89, 0xf9, 0xd1, 0xa8, 0x1a, 0xc4, 0xa9, + 0xd4, 0xb3, 0x56, 0xc1, 0xcb, 0x1f, 0xdc, 0x14, 0xf0, 0x3a, 0x2b, 0x67, + 0x58, 0xcd, 0x9d, 0xb3, +}; +static const struct drbg_kat_no_reseed kat1180_t = { + 9, kat1180_entropyin, kat1180_nonce, kat1180_persstr, + kat1180_addin0, kat1180_addin1, kat1180_retbits +}; +static const struct drbg_kat kat1180 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1180_t +}; + +static const unsigned char kat1181_entropyin[] = { + 0x34, 0x62, 0xa9, 0x2c, 0xd9, 0xff, 0x51, 0x67, 0x97, 0xb6, 0x47, 0x0d, + 0xa1, 0xed, 0xdb, 0x45, 0xad, 0xb8, 0x6b, 0x54, 0x49, 0x16, 0x21, 0x11, + 0x29, 0xb8, 0xeb, 0xc7, 0xf4, 0x40, 0x6d, 0x02, 0x21, 0x46, 0x75, 0xd4, + 0xf9, 0xb1, 0xb1, 0xee, +}; +static const unsigned char kat1181_nonce[] = {0}; +static const unsigned char kat1181_persstr[] = { + 0xa3, 0x92, 0x36, 0x1e, 0x61, 0x15, 0xba, 0xa4, 0xa5, 0x81, 0x06, 0x8a, + 0x6e, 0x37, 0x66, 0x5b, 0xdc, 0x12, 0xd4, 0x5b, 0x8e, 0xe6, 0x56, 0xfc, + 0x3b, 0x90, 0xb1, 0xed, 0x01, 0x35, 0xb7, 0xd2, 0xf5, 0x07, 0x6b, 0x68, + 0x0d, 0xde, 0x61, 0xb4, +}; +static const unsigned char kat1181_addin0[] = {0}; +static const unsigned char kat1181_addin1[] = {0}; +static const unsigned char kat1181_retbits[] = { + 0xde, 0x08, 0xa5, 0xac, 0xb6, 0x75, 0xa7, 0x9a, 0xbd, 0xc3, 0x06, 0xda, + 0x7c, 0xc6, 0xb7, 0xd4, 0x8d, 0x88, 0x93, 0x0d, 0x77, 0x92, 0xc2, 0xed, + 0x35, 0xb0, 0x7c, 0x4f, 0x9a, 0x4d, 0x3a, 0x6d, 0xbe, 0x77, 0x0d, 0x47, + 0x45, 0x69, 0x1c, 0x76, 0x00, 0x80, 0x7c, 0x78, 0xb0, 0x6c, 0x1c, 0xf4, + 0xf4, 0xe0, 0xde, 0x88, 0x55, 0x2b, 0x74, 0xc8, 0x7c, 0x37, 0x57, 0x2d, + 0x3f, 0x0f, 0x9f, 0xe9, +}; +static const struct drbg_kat_no_reseed kat1181_t = { + 10, kat1181_entropyin, kat1181_nonce, kat1181_persstr, + kat1181_addin0, kat1181_addin1, kat1181_retbits +}; +static const struct drbg_kat kat1181 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1181_t +}; + +static const unsigned char kat1182_entropyin[] = { + 0xe8, 0x67, 0x36, 0x0a, 0x53, 0xe8, 0x1b, 0xe2, 0xae, 0x58, 0xc4, 0x6d, + 0x96, 0xa3, 0xee, 0x7c, 0xf7, 0xbe, 0xf4, 0xb1, 0xfa, 0xd3, 0x5f, 0xa7, + 0x17, 0x06, 0x35, 0x37, 0xb4, 0x00, 0xd4, 0x69, 0x18, 0x69, 0x5f, 0xd3, + 0x3c, 0xc4, 0xd3, 0x4a, +}; +static const unsigned char kat1182_nonce[] = {0}; +static const unsigned char kat1182_persstr[] = { + 0xdd, 0x54, 0xd9, 0x82, 0xb7, 0x63, 0xd9, 0x82, 0x16, 0x11, 0x63, 0x0f, + 0x50, 0x6a, 0x20, 0x21, 0x6b, 0x29, 0x54, 0xa2, 0x03, 0x2e, 0x31, 0xff, + 0xc6, 0x39, 0x56, 0x79, 0x83, 0x2e, 0x9b, 0x3f, 0x56, 0x8a, 0x82, 0x29, + 0xd3, 0x0a, 0x1c, 0xb3, +}; +static const unsigned char kat1182_addin0[] = {0}; +static const unsigned char kat1182_addin1[] = {0}; +static const unsigned char kat1182_retbits[] = { + 0xb5, 0xc9, 0x04, 0xec, 0x3a, 0x17, 0xad, 0x53, 0xa7, 0x5c, 0x50, 0xea, + 0xfc, 0xbe, 0x6b, 0x5f, 0x6e, 0xa0, 0xaa, 0x87, 0xc1, 0x2e, 0x2d, 0x2f, + 0x8f, 0x00, 0x3f, 0x53, 0x6e, 0x63, 0xc1, 0xb0, 0x43, 0xe0, 0xb5, 0x5a, + 0x7a, 0x5c, 0x15, 0x9f, 0xa3, 0x9c, 0xc5, 0xe4, 0x60, 0xde, 0xf5, 0x04, + 0x05, 0x74, 0xa4, 0x68, 0xc5, 0xe4, 0x20, 0x36, 0xb5, 0xa0, 0xb5, 0x76, + 0xfe, 0xa6, 0xdf, 0xf3, +}; +static const struct drbg_kat_no_reseed kat1182_t = { + 11, kat1182_entropyin, kat1182_nonce, kat1182_persstr, + kat1182_addin0, kat1182_addin1, kat1182_retbits +}; +static const struct drbg_kat kat1182 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1182_t +}; + +static const unsigned char kat1183_entropyin[] = { + 0x8f, 0xd9, 0x4c, 0x6a, 0x49, 0x8e, 0x59, 0xe0, 0xe0, 0xcb, 0x2f, 0x3c, + 0x18, 0x9c, 0xf6, 0xa0, 0x5a, 0xaa, 0x38, 0x34, 0xeb, 0xb1, 0x9f, 0xde, + 0xaf, 0x1c, 0x90, 0x25, 0x39, 0x94, 0x5c, 0xc6, 0xec, 0x6b, 0x2d, 0x94, + 0x14, 0x79, 0x96, 0x2e, +}; +static const unsigned char kat1183_nonce[] = {0}; +static const unsigned char kat1183_persstr[] = { + 0xba, 0x96, 0xa9, 0x07, 0x1c, 0x21, 0x52, 0x72, 0x9f, 0x78, 0x84, 0xe9, + 0xfe, 0xfb, 0x1f, 0x95, 0x8f, 0xbf, 0x32, 0x83, 0x77, 0xe2, 0x51, 0x18, + 0xd6, 0xf9, 0xcd, 0xd9, 0x01, 0x30, 0xd4, 0x1b, 0x59, 0x38, 0xed, 0x5d, + 0x5e, 0x82, 0x6f, 0xb4, +}; +static const unsigned char kat1183_addin0[] = {0}; +static const unsigned char kat1183_addin1[] = {0}; +static const unsigned char kat1183_retbits[] = { + 0x58, 0xe1, 0x82, 0x9d, 0xc5, 0x31, 0xaf, 0x06, 0xc3, 0x26, 0x65, 0xbf, + 0xfa, 0x77, 0xff, 0x9a, 0x71, 0x09, 0x3c, 0x17, 0x68, 0x12, 0x79, 0xa7, + 0x14, 0x5e, 0xed, 0x54, 0x90, 0xbc, 0xc3, 0x45, 0xb3, 0x30, 0xca, 0x5d, + 0xc3, 0x44, 0x82, 0x49, 0xfb, 0xa1, 0x9f, 0xa4, 0xa9, 0x28, 0x17, 0x5f, + 0x2b, 0xce, 0x81, 0x5b, 0x56, 0xc9, 0x1a, 0xe9, 0x65, 0x85, 0x2b, 0x09, + 0xa9, 0x9b, 0x01, 0x5e, +}; +static const struct drbg_kat_no_reseed kat1183_t = { + 12, kat1183_entropyin, kat1183_nonce, kat1183_persstr, + kat1183_addin0, kat1183_addin1, kat1183_retbits +}; +static const struct drbg_kat kat1183 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1183_t +}; + +static const unsigned char kat1184_entropyin[] = { + 0x27, 0xd6, 0xff, 0x3a, 0x4f, 0xc4, 0x69, 0x8a, 0x9a, 0xc2, 0x40, 0xf0, + 0x98, 0x9b, 0x3d, 0x59, 0x0b, 0x75, 0x2d, 0x2f, 0xfb, 0xc5, 0xf3, 0x3e, + 0x2f, 0x49, 0x5a, 0xce, 0xde, 0x1c, 0xb9, 0xf1, 0x73, 0x2f, 0x53, 0x8b, + 0x51, 0x59, 0x1c, 0x3e, +}; +static const unsigned char kat1184_nonce[] = {0}; +static const unsigned char kat1184_persstr[] = { + 0xcb, 0xd7, 0x76, 0xe0, 0x7d, 0xbf, 0x3f, 0x91, 0x8f, 0x38, 0x05, 0xf3, + 0x9c, 0x8c, 0xea, 0x89, 0xcb, 0x7a, 0xd6, 0xd2, 0x0f, 0x51, 0x1b, 0x8b, + 0x2a, 0xd5, 0x84, 0x84, 0x74, 0x12, 0x88, 0xc4, 0xd2, 0xbe, 0x96, 0x54, + 0xf5, 0xb6, 0x79, 0x12, +}; +static const unsigned char kat1184_addin0[] = {0}; +static const unsigned char kat1184_addin1[] = {0}; +static const unsigned char kat1184_retbits[] = { + 0x95, 0x8f, 0x9f, 0x61, 0xad, 0xd6, 0xbf, 0xc9, 0x85, 0x09, 0x35, 0x0b, + 0x60, 0x52, 0x01, 0x42, 0x6f, 0xc8, 0x3f, 0xc4, 0x5b, 0x53, 0x83, 0xa5, + 0x8d, 0xc8, 0x4e, 0x3e, 0xf8, 0xcb, 0x91, 0x1c, 0xae, 0x5a, 0x3b, 0xc6, + 0xf8, 0x55, 0x63, 0xdf, 0x0c, 0x21, 0x6f, 0xe8, 0xcb, 0xc8, 0xea, 0x07, + 0x53, 0x79, 0x42, 0x18, 0x60, 0x91, 0x3c, 0xc6, 0xcc, 0x5c, 0xf8, 0x1a, + 0xc5, 0x70, 0x67, 0x10, +}; +static const struct drbg_kat_no_reseed kat1184_t = { + 13, kat1184_entropyin, kat1184_nonce, kat1184_persstr, + kat1184_addin0, kat1184_addin1, kat1184_retbits +}; +static const struct drbg_kat kat1184 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1184_t +}; + +static const unsigned char kat1185_entropyin[] = { + 0xcf, 0x94, 0x77, 0xba, 0x03, 0x3c, 0x5d, 0x23, 0x24, 0xdd, 0x97, 0xb6, + 0x9c, 0xfe, 0x59, 0xd6, 0x6a, 0xe7, 0xf7, 0x32, 0x7a, 0xa9, 0x28, 0xed, + 0x1a, 0xd3, 0x6c, 0x2d, 0x9d, 0x63, 0xbe, 0x73, 0x1f, 0xf2, 0xde, 0x9b, + 0x29, 0xaa, 0x87, 0xb9, +}; +static const unsigned char kat1185_nonce[] = {0}; +static const unsigned char kat1185_persstr[] = { + 0x21, 0x5a, 0x3e, 0x63, 0x8f, 0xa6, 0xa7, 0x4d, 0x91, 0x59, 0x2b, 0x07, + 0xfa, 0x08, 0xf8, 0xd4, 0x98, 0x3c, 0x6a, 0xd0, 0x82, 0x0a, 0x90, 0x8b, + 0xa7, 0x35, 0xac, 0x5b, 0xce, 0xe6, 0x8c, 0x3f, 0x67, 0x0f, 0x6f, 0xcf, + 0x4d, 0x05, 0xb2, 0x5c, +}; +static const unsigned char kat1185_addin0[] = {0}; +static const unsigned char kat1185_addin1[] = {0}; +static const unsigned char kat1185_retbits[] = { + 0xac, 0xad, 0xe1, 0x90, 0x50, 0x8f, 0x25, 0x72, 0x4a, 0x3c, 0x7d, 0xd4, + 0xd9, 0x60, 0xbe, 0xe0, 0x88, 0xcb, 0x61, 0x52, 0xf3, 0x1a, 0x53, 0x72, + 0x95, 0xa8, 0xff, 0x4b, 0x85, 0xaf, 0x94, 0xa0, 0xff, 0x00, 0x6b, 0xe9, + 0xce, 0x2f, 0x54, 0x1b, 0x82, 0x37, 0xf6, 0xa7, 0xfc, 0x62, 0xa4, 0xbb, + 0x8e, 0x41, 0xac, 0x69, 0x79, 0xa6, 0xf1, 0x12, 0xb5, 0x71, 0x58, 0xaa, + 0x6e, 0xca, 0x34, 0x7f, +}; +static const struct drbg_kat_no_reseed kat1185_t = { + 14, kat1185_entropyin, kat1185_nonce, kat1185_persstr, + kat1185_addin0, kat1185_addin1, kat1185_retbits +}; +static const struct drbg_kat kat1185 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat1185_t +}; + +static const unsigned char kat1186_entropyin[] = { + 0x65, 0x75, 0x07, 0xb8, 0xad, 0x59, 0x39, 0xed, 0x5e, 0xac, 0x21, 0x41, + 0x51, 0xfa, 0x9c, 0x0d, 0x64, 0x4f, 0x2c, 0x6f, 0xf7, 0xcd, 0xd9, 0x33, + 0xe3, 0xee, 0x0d, 0xc5, 0xae, 0xb9, 0xa3, 0x64, 0xaa, 0xa0, 0x9a, 0x35, + 0x26, 0xcc, 0x7d, 0xb0, +}; +static const unsigned char kat1186_nonce[] = {0}; +static const unsigned char kat1186_persstr[] = { + 0xf2, 0xf9, 0x5e, 0xbd, 0xbd, 0x47, 0xd0, 0x62, 0x12, 0x63, 0xb1, 0x21, + 0x5c, 0xd1, 0x07, 0xe3, 0x7a, 0x77, 0x2d, 0xd9, 0x91, 0x16, 0x0d, 0x40, + 0xb8, 0x28, 0x8d, 0x47, 0xa1, 0xa9, 0x90, 0x35, 0x14, 0x49, 0x9d, 0x05, + 0x5b, 0x68, 0xaa, 0x6a, +}; +static const unsigned char kat1186_addin0[] = { + 0xe8, 0xe9, 0x68, 0xd2, 0x49, 0xe1, 0x65, 0xf4, 0x10, 0xc7, 0x57, 0x84, + 0x2e, 0xc1, 0xa6, 0xbb, 0xcd, 0x40, 0x56, 0x6d, 0xb5, 0x86, 0x53, 0xb2, + 0xeb, 0x45, 0x02, 0xe7, 0x51, 0x13, 0xd8, 0x1d, 0x9a, 0x20, 0xdc, 0x09, + 0x9a, 0x20, 0x24, 0xee, +}; +static const unsigned char kat1186_addin1[] = { + 0x46, 0x45, 0xd7, 0x32, 0x6d, 0x1f, 0x39, 0xd0, 0x4a, 0x14, 0xfc, 0x39, + 0x5a, 0xcd, 0x19, 0xfd, 0xa6, 0xd1, 0xaa, 0x75, 0x59, 0x95, 0x47, 0x6e, + 0xb9, 0x6a, 0x19, 0x2b, 0x89, 0x63, 0xc5, 0x89, 0x07, 0x98, 0xbd, 0xff, + 0xa1, 0x85, 0x59, 0x8e, +}; +static const unsigned char kat1186_retbits[] = { + 0x28, 0x24, 0x05, 0x9c, 0x8c, 0x55, 0xc6, 0x48, 0x41, 0x44, 0x14, 0x2c, + 0xdf, 0x7f, 0x5f, 0xe1, 0x0c, 0xa7, 0xba, 0x04, 0x73, 0x0e, 0xd3, 0x24, + 0x16, 0x6a, 0xac, 0xad, 0x30, 0x40, 0x97, 0x18, 0x41, 0x83, 0x55, 0x32, + 0x8e, 0xd6, 0xf2, 0x99, 0xd1, 0xfb, 0x25, 0x11, 0xbc, 0x06, 0x96, 0xba, + 0x99, 0xd1, 0x30, 0x5e, 0x94, 0x41, 0x1d, 0x8f, 0x5b, 0xc7, 0x63, 0xb5, + 0x7f, 0x0c, 0xcc, 0x8d, +}; +static const struct drbg_kat_no_reseed kat1186_t = { + 0, kat1186_entropyin, kat1186_nonce, kat1186_persstr, + kat1186_addin0, kat1186_addin1, kat1186_retbits +}; +static const struct drbg_kat kat1186 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1186_t +}; + +static const unsigned char kat1187_entropyin[] = { + 0x3b, 0x99, 0xff, 0x3c, 0xd7, 0x2e, 0xb3, 0xc7, 0x34, 0x37, 0x62, 0xa4, + 0x49, 0x75, 0x58, 0xdb, 0x4b, 0x61, 0x62, 0x4d, 0xcd, 0x7e, 0x08, 0xb4, + 0x46, 0xb1, 0xa6, 0x7e, 0xbf, 0x60, 0x22, 0x46, 0x01, 0x8d, 0x88, 0xcb, + 0x30, 0xb9, 0x04, 0x8d, +}; +static const unsigned char kat1187_nonce[] = {0}; +static const unsigned char kat1187_persstr[] = { + 0xee, 0x5a, 0xc1, 0x65, 0xd9, 0xcf, 0x67, 0x98, 0x16, 0x62, 0x8b, 0xd9, + 0xb1, 0xd8, 0x44, 0xb6, 0xf7, 0xe8, 0x13, 0x5f, 0x7d, 0xfb, 0x50, 0x52, + 0x73, 0x75, 0x02, 0x64, 0x4f, 0xd7, 0x70, 0xa9, 0xe6, 0x13, 0x75, 0xe6, + 0xc3, 0x52, 0xef, 0xb2, +}; +static const unsigned char kat1187_addin0[] = { + 0xbf, 0x59, 0x3e, 0x6d, 0xbe, 0x9d, 0x7d, 0x6d, 0xb2, 0x9d, 0x0e, 0xf3, + 0x54, 0xfa, 0x6f, 0x80, 0xb8, 0x76, 0x44, 0x0b, 0x28, 0x0d, 0x78, 0xd7, + 0x42, 0x55, 0x6d, 0x64, 0x7e, 0x6b, 0xa8, 0x92, 0x0b, 0xa2, 0xa8, 0xa3, + 0x4e, 0x93, 0x51, 0x1c, +}; +static const unsigned char kat1187_addin1[] = { + 0xaf, 0xd1, 0x31, 0x1c, 0x6c, 0x6e, 0x9b, 0xa3, 0xdb, 0x07, 0x0d, 0xae, + 0x8c, 0x67, 0x21, 0x59, 0x80, 0x6d, 0xae, 0x15, 0x4e, 0xfc, 0xc7, 0x09, + 0x6c, 0x57, 0xf7, 0x75, 0x31, 0x19, 0x16, 0xab, 0x5b, 0x86, 0xde, 0x16, + 0x96, 0x47, 0x6e, 0x64, +}; +static const unsigned char kat1187_retbits[] = { + 0x4b, 0x06, 0x96, 0x25, 0xac, 0x3d, 0x76, 0x5e, 0xb5, 0x8e, 0xb2, 0xa3, + 0xa5, 0x06, 0x8d, 0xc1, 0xa1, 0xaa, 0x7b, 0xcb, 0x12, 0x36, 0xd1, 0xca, + 0xf9, 0x9d, 0x1b, 0x8d, 0xf9, 0x27, 0xd4, 0x11, 0xa3, 0x7c, 0xfa, 0x28, + 0x02, 0x19, 0xde, 0xdc, 0x82, 0xe8, 0x4d, 0x73, 0xca, 0xeb, 0x5a, 0x40, + 0xe9, 0x38, 0x33, 0x33, 0x1f, 0x1f, 0x7d, 0x9d, 0xe6, 0x9b, 0x5c, 0x15, + 0xf9, 0x15, 0xcb, 0xb6, +}; +static const struct drbg_kat_no_reseed kat1187_t = { + 1, kat1187_entropyin, kat1187_nonce, kat1187_persstr, + kat1187_addin0, kat1187_addin1, kat1187_retbits +}; +static const struct drbg_kat kat1187 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1187_t +}; + +static const unsigned char kat1188_entropyin[] = { + 0x64, 0x4e, 0x16, 0x37, 0xb6, 0x7c, 0x74, 0x5b, 0x01, 0x37, 0x98, 0xc1, + 0x43, 0x65, 0xdf, 0x4a, 0xaa, 0x55, 0xa1, 0x96, 0x40, 0x16, 0x3c, 0x40, + 0x1c, 0x0e, 0x1e, 0xd5, 0xea, 0x37, 0xe4, 0x5e, 0xbb, 0xd7, 0x43, 0x0d, + 0x5d, 0xd2, 0x9c, 0x54, +}; +static const unsigned char kat1188_nonce[] = {0}; +static const unsigned char kat1188_persstr[] = { + 0x72, 0x60, 0xea, 0xd1, 0xea, 0x11, 0xbd, 0xec, 0x9c, 0x34, 0xb2, 0x59, + 0x4b, 0x61, 0x4f, 0x91, 0x6c, 0x1e, 0xb2, 0x07, 0xa4, 0x59, 0x80, 0x8e, + 0xaa, 0xdd, 0x20, 0x03, 0x8c, 0xd8, 0xd6, 0x6a, 0x97, 0x4e, 0x15, 0x10, + 0x30, 0xe7, 0xee, 0xd6, +}; +static const unsigned char kat1188_addin0[] = { + 0xd1, 0xd6, 0x52, 0x42, 0xfe, 0x65, 0xa0, 0x34, 0x92, 0x42, 0x21, 0xca, + 0x0c, 0xfd, 0xc9, 0x41, 0x2e, 0xce, 0x33, 0x72, 0x6b, 0x20, 0xf5, 0x75, + 0x88, 0xe6, 0xf4, 0xeb, 0xa1, 0x62, 0x46, 0x1e, 0xd2, 0x9e, 0xf3, 0x29, + 0x5e, 0x2e, 0x45, 0x8f, +}; +static const unsigned char kat1188_addin1[] = { + 0x1d, 0x3a, 0xf3, 0x6b, 0x4a, 0x38, 0x6f, 0xdc, 0x63, 0x18, 0xd1, 0x60, + 0x57, 0xed, 0x5a, 0x16, 0x73, 0xd5, 0x4b, 0x96, 0xbe, 0xf3, 0xde, 0x9b, + 0x62, 0xb9, 0x43, 0x07, 0x22, 0x08, 0x48, 0xb5, 0x41, 0x15, 0x5d, 0x7c, + 0x3e, 0x73, 0x9b, 0xbf, +}; +static const unsigned char kat1188_retbits[] = { + 0xe0, 0xaf, 0xa3, 0xa2, 0x07, 0x37, 0xe4, 0x0a, 0xd7, 0xc7, 0x6b, 0xa1, + 0x8a, 0xff, 0xc2, 0xe7, 0x37, 0xa6, 0x62, 0x46, 0xf6, 0x16, 0x68, 0xb7, + 0x05, 0xda, 0x53, 0xf6, 0xd3, 0xee, 0x50, 0x41, 0x41, 0x40, 0xa4, 0x23, + 0x14, 0x5d, 0x64, 0x6b, 0xd1, 0xb8, 0x49, 0x67, 0x86, 0x79, 0x23, 0xe6, + 0xc2, 0x1d, 0x57, 0x50, 0xa9, 0x79, 0x62, 0x60, 0xb9, 0xbc, 0xc2, 0x0d, + 0xc5, 0xc8, 0xa0, 0x4f, +}; +static const struct drbg_kat_no_reseed kat1188_t = { + 2, kat1188_entropyin, kat1188_nonce, kat1188_persstr, + kat1188_addin0, kat1188_addin1, kat1188_retbits +}; +static const struct drbg_kat kat1188 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1188_t +}; + +static const unsigned char kat1189_entropyin[] = { + 0x43, 0x3c, 0x28, 0xd6, 0x82, 0xef, 0x86, 0x11, 0xf2, 0x22, 0x7e, 0xbb, + 0x95, 0xff, 0x18, 0x61, 0x04, 0xa6, 0xd6, 0xfa, 0x72, 0x5b, 0x9a, 0x44, + 0xab, 0x19, 0x25, 0xce, 0x60, 0x50, 0xef, 0xa2, 0x6c, 0x94, 0x19, 0x6b, + 0xaa, 0x71, 0xc3, 0x1c, +}; +static const unsigned char kat1189_nonce[] = {0}; +static const unsigned char kat1189_persstr[] = { + 0x9c, 0xca, 0xfe, 0x81, 0x55, 0xa2, 0xf7, 0x93, 0x6e, 0xab, 0x14, 0x59, + 0x37, 0xd8, 0x4e, 0x26, 0x8e, 0xce, 0xeb, 0x1a, 0xcb, 0xe5, 0x6b, 0xc0, + 0x50, 0x07, 0x9c, 0x00, 0x0e, 0xc0, 0xa3, 0x23, 0x74, 0x9f, 0xb0, 0x46, + 0xb3, 0xb7, 0xe6, 0xa0, +}; +static const unsigned char kat1189_addin0[] = { + 0x3f, 0x42, 0xe8, 0x4a, 0x41, 0x91, 0x7c, 0xb6, 0xfa, 0xe0, 0x4b, 0xb7, + 0xd0, 0xf7, 0xf1, 0x5b, 0xe7, 0x8b, 0xca, 0x18, 0x7b, 0x96, 0x22, 0xd7, + 0xbd, 0x57, 0x8e, 0xa2, 0xb4, 0x5a, 0x01, 0x95, 0xea, 0xef, 0x5a, 0x4e, + 0xaa, 0x34, 0xe6, 0x41, +}; +static const unsigned char kat1189_addin1[] = { + 0xc3, 0x38, 0x7a, 0x63, 0xb7, 0xc7, 0xde, 0xf0, 0xb6, 0x3a, 0x3c, 0x49, + 0x28, 0xa6, 0x93, 0x94, 0x3b, 0x18, 0x4c, 0x71, 0x96, 0x05, 0xf6, 0x1d, + 0xa5, 0x27, 0x5a, 0x49, 0x13, 0xf9, 0x7c, 0x39, 0xd1, 0x9a, 0xd1, 0x4a, + 0x87, 0x27, 0x1e, 0x97, +}; +static const unsigned char kat1189_retbits[] = { + 0x9b, 0x81, 0x84, 0x5c, 0xac, 0x19, 0x15, 0x50, 0xcb, 0xf4, 0x25, 0xb9, + 0x90, 0x98, 0x86, 0x27, 0xe4, 0xf7, 0xd4, 0x21, 0x43, 0x72, 0x78, 0x0f, + 0xfd, 0x4f, 0xc9, 0x0c, 0x4c, 0xb2, 0x11, 0xf1, 0x45, 0xe3, 0x8a, 0x68, + 0x79, 0x43, 0x06, 0x5e, 0x59, 0xe2, 0x71, 0x5a, 0x1d, 0x70, 0x73, 0x0a, + 0x80, 0x4e, 0xaa, 0x17, 0xc3, 0x74, 0xa6, 0x56, 0x97, 0x19, 0x32, 0x12, + 0x36, 0xfa, 0x5a, 0x67, +}; +static const struct drbg_kat_no_reseed kat1189_t = { + 3, kat1189_entropyin, kat1189_nonce, kat1189_persstr, + kat1189_addin0, kat1189_addin1, kat1189_retbits +}; +static const struct drbg_kat kat1189 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1189_t +}; + +static const unsigned char kat1190_entropyin[] = { + 0x5d, 0x13, 0x36, 0x72, 0xc8, 0x96, 0xc7, 0x05, 0x4d, 0xdc, 0x1b, 0x1e, + 0x46, 0x0e, 0x32, 0x5e, 0x4f, 0x40, 0x5e, 0xdc, 0x2b, 0x18, 0x8a, 0x48, + 0x3b, 0xa9, 0x45, 0x5f, 0x0c, 0x55, 0x6e, 0x95, 0x38, 0xef, 0xc7, 0xb7, + 0x5b, 0x87, 0x1f, 0x10, +}; +static const unsigned char kat1190_nonce[] = {0}; +static const unsigned char kat1190_persstr[] = { + 0x4d, 0x07, 0x83, 0x3b, 0xf8, 0xa6, 0x3e, 0xfd, 0x78, 0x21, 0x71, 0x10, + 0xcd, 0x60, 0x8d, 0x41, 0x6b, 0x12, 0x80, 0x7b, 0xcb, 0x37, 0x9e, 0xed, + 0x98, 0x5a, 0x9d, 0xb4, 0xcd, 0xe8, 0x57, 0x45, 0x39, 0x1d, 0x5e, 0x29, + 0x79, 0x9a, 0x8c, 0xe7, +}; +static const unsigned char kat1190_addin0[] = { + 0xcc, 0x43, 0xf8, 0x20, 0xe2, 0x53, 0x8b, 0xd7, 0xd0, 0x4e, 0x8c, 0xb6, + 0x46, 0x63, 0x27, 0x74, 0xaf, 0x1e, 0x33, 0x39, 0x6d, 0xc8, 0x16, 0x11, + 0x8b, 0x7d, 0x06, 0xec, 0x5c, 0x56, 0x4d, 0x79, 0x25, 0xe1, 0x8a, 0xd0, + 0x02, 0x0e, 0x97, 0x05, +}; +static const unsigned char kat1190_addin1[] = { + 0xb5, 0xd3, 0x25, 0x8d, 0xdb, 0x84, 0xb3, 0x0e, 0xf6, 0xfa, 0x82, 0xd9, + 0x86, 0xc7, 0x29, 0x54, 0x0a, 0x84, 0x43, 0x78, 0xc5, 0x32, 0xbd, 0x1e, + 0x2e, 0x6e, 0xc2, 0x97, 0x0d, 0x0e, 0x61, 0x10, 0x3c, 0x63, 0x57, 0x43, + 0xed, 0x01, 0x67, 0x19, +}; +static const unsigned char kat1190_retbits[] = { + 0x99, 0xe3, 0x64, 0xb9, 0xdc, 0x10, 0x41, 0x28, 0x2c, 0x85, 0x35, 0x8a, + 0xeb, 0x6a, 0xfb, 0x95, 0xee, 0x62, 0x2d, 0x6d, 0xb4, 0x71, 0xb9, 0xe3, + 0xa9, 0x22, 0xfb, 0xde, 0x4b, 0xa2, 0x89, 0xbd, 0xc7, 0x9b, 0xc7, 0x1f, + 0x77, 0x30, 0xb9, 0xdf, 0x0d, 0x92, 0x5f, 0xd9, 0xb8, 0x8f, 0x4b, 0xe8, + 0x34, 0x7b, 0x72, 0xfb, 0x5e, 0x67, 0x83, 0x04, 0x1a, 0x8a, 0xba, 0x5d, + 0xa5, 0x65, 0xea, 0x58, +}; +static const struct drbg_kat_no_reseed kat1190_t = { + 4, kat1190_entropyin, kat1190_nonce, kat1190_persstr, + kat1190_addin0, kat1190_addin1, kat1190_retbits +}; +static const struct drbg_kat kat1190 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1190_t +}; + +static const unsigned char kat1191_entropyin[] = { + 0x8b, 0x51, 0xe4, 0x7e, 0x97, 0xfe, 0x04, 0xec, 0x18, 0x54, 0xd0, 0x98, + 0xd8, 0x53, 0x53, 0x20, 0x2e, 0xa8, 0xd5, 0x63, 0x35, 0x16, 0x56, 0x59, + 0x46, 0xd5, 0x97, 0x7b, 0x62, 0x87, 0xef, 0xf5, 0x23, 0x3f, 0x60, 0xa5, + 0xf1, 0xed, 0xe3, 0x25, +}; +static const unsigned char kat1191_nonce[] = {0}; +static const unsigned char kat1191_persstr[] = { + 0xdb, 0xb3, 0x5b, 0x39, 0x52, 0xab, 0x97, 0x1e, 0xc0, 0xdc, 0x57, 0x3a, + 0xe0, 0xda, 0x64, 0x4b, 0x26, 0x68, 0x46, 0x9e, 0x8e, 0x6b, 0x62, 0x21, + 0x61, 0xd6, 0xe1, 0x98, 0x3f, 0x95, 0x6e, 0x81, 0x17, 0xa9, 0x72, 0x4e, + 0xc3, 0x18, 0xf2, 0x57, +}; +static const unsigned char kat1191_addin0[] = { + 0x75, 0x92, 0x2b, 0x8c, 0xdf, 0x29, 0x35, 0x2c, 0x08, 0x4b, 0xa0, 0x76, + 0x4e, 0x0a, 0xfb, 0xfb, 0x51, 0x37, 0x6b, 0x6a, 0x9b, 0x62, 0xfd, 0xb7, + 0x1d, 0x85, 0x0e, 0x72, 0xfd, 0x00, 0xd2, 0x5c, 0x2f, 0x08, 0xc9, 0x46, + 0xb5, 0xf2, 0x88, 0x74, +}; +static const unsigned char kat1191_addin1[] = { + 0x9e, 0x64, 0x1b, 0x0d, 0x60, 0x11, 0xbf, 0x4e, 0xed, 0xa6, 0xc9, 0x38, + 0xc2, 0xe3, 0xb2, 0xda, 0x24, 0x28, 0x46, 0xed, 0x7e, 0xc4, 0x7c, 0x54, + 0xa1, 0x61, 0x85, 0xec, 0xd4, 0x81, 0x06, 0xfd, 0xf4, 0xc7, 0xb9, 0xf1, + 0x42, 0x92, 0xcf, 0xb8, +}; +static const unsigned char kat1191_retbits[] = { + 0x99, 0x13, 0x86, 0x55, 0xec, 0x9b, 0x57, 0x67, 0xad, 0x48, 0xac, 0xf3, + 0xab, 0x18, 0x0d, 0x1a, 0xf1, 0xdc, 0x1f, 0xb1, 0x91, 0x19, 0xeb, 0x30, + 0xde, 0xe3, 0x1e, 0x31, 0xf8, 0xb5, 0xf5, 0xe0, 0x32, 0x77, 0x70, 0xa1, + 0xb0, 0x40, 0xca, 0x54, 0x75, 0x84, 0xec, 0xd5, 0x7e, 0xe2, 0xa4, 0x59, + 0xe2, 0x66, 0x1d, 0x23, 0xd9, 0x0b, 0xb9, 0x9f, 0x20, 0x73, 0x1c, 0xa6, + 0x42, 0xa8, 0xc7, 0x82, +}; +static const struct drbg_kat_no_reseed kat1191_t = { + 5, kat1191_entropyin, kat1191_nonce, kat1191_persstr, + kat1191_addin0, kat1191_addin1, kat1191_retbits +}; +static const struct drbg_kat kat1191 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1191_t +}; + +static const unsigned char kat1192_entropyin[] = { + 0x80, 0x1d, 0x68, 0x4b, 0x98, 0x1c, 0x8c, 0x77, 0x35, 0x1b, 0x88, 0x5f, + 0x52, 0xe6, 0x8e, 0x02, 0x6f, 0x7b, 0xf1, 0xce, 0x1f, 0x41, 0x83, 0xfe, + 0x78, 0x7e, 0x85, 0x24, 0x31, 0xa7, 0x64, 0x47, 0x90, 0x76, 0x72, 0x9c, + 0xe5, 0x81, 0x81, 0x3b, +}; +static const unsigned char kat1192_nonce[] = {0}; +static const unsigned char kat1192_persstr[] = { + 0x1b, 0xa2, 0x22, 0x32, 0x58, 0xa2, 0x9f, 0xa5, 0xd7, 0xf1, 0x93, 0x92, + 0x5d, 0xd2, 0x69, 0x03, 0x81, 0x63, 0x06, 0xf3, 0x30, 0x07, 0xb6, 0xd6, + 0xb9, 0xe0, 0x66, 0xbc, 0x96, 0xc8, 0xc0, 0xb0, 0x22, 0xf9, 0xcd, 0x9f, + 0x88, 0x12, 0x10, 0xd3, +}; +static const unsigned char kat1192_addin0[] = { + 0x52, 0x5d, 0xec, 0x25, 0xa2, 0x93, 0xe5, 0x90, 0xfd, 0x8f, 0x77, 0x6a, + 0xf2, 0x2b, 0x54, 0x02, 0x7a, 0x8d, 0x80, 0x9a, 0x35, 0xac, 0x3a, 0x5e, + 0x46, 0x99, 0xdb, 0x1d, 0x75, 0x59, 0x8c, 0x1f, 0xc0, 0xc1, 0x1f, 0x9a, + 0x20, 0x1f, 0xa1, 0x73, +}; +static const unsigned char kat1192_addin1[] = { + 0xe0, 0x08, 0xda, 0xb1, 0x84, 0xd7, 0xeb, 0x4b, 0x39, 0xed, 0xa3, 0x84, + 0x5f, 0x2c, 0xf6, 0xf2, 0x39, 0x69, 0xea, 0xe1, 0xfd, 0xef, 0x34, 0x33, + 0x33, 0x2c, 0x9d, 0x6f, 0x37, 0x96, 0xe7, 0x80, 0xa0, 0x5c, 0x39, 0x27, + 0x57, 0x1a, 0x41, 0x24, +}; +static const unsigned char kat1192_retbits[] = { + 0x89, 0x5c, 0xef, 0xdc, 0x9f, 0xd1, 0x9c, 0x50, 0xb2, 0x05, 0xff, 0x5b, + 0x68, 0x81, 0xfa, 0xfc, 0xc0, 0x89, 0x2a, 0x96, 0xb6, 0xf7, 0x3e, 0x1a, + 0x4b, 0x74, 0xc7, 0x06, 0x15, 0x3b, 0x8f, 0x5d, 0xf5, 0x18, 0xcc, 0xda, + 0xc2, 0x8d, 0x38, 0xb8, 0x2f, 0xca, 0xaa, 0xd7, 0xbe, 0x82, 0x8c, 0xcf, + 0x9a, 0xbb, 0xd5, 0xb5, 0xb1, 0x1c, 0x84, 0x92, 0x12, 0x1e, 0x8b, 0x63, + 0x94, 0x17, 0x37, 0xed, +}; +static const struct drbg_kat_no_reseed kat1192_t = { + 6, kat1192_entropyin, kat1192_nonce, kat1192_persstr, + kat1192_addin0, kat1192_addin1, kat1192_retbits +}; +static const struct drbg_kat kat1192 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1192_t +}; + +static const unsigned char kat1193_entropyin[] = { + 0xd1, 0x57, 0x14, 0xd5, 0xd3, 0xf8, 0x0e, 0x19, 0xe0, 0x04, 0x83, 0xb2, + 0x9a, 0xd6, 0x55, 0xa3, 0x68, 0xa1, 0xd0, 0xe5, 0x57, 0x64, 0x2f, 0x81, + 0xf8, 0x4a, 0xe0, 0xc3, 0x67, 0x3b, 0x74, 0x1c, 0x0b, 0x31, 0x3e, 0xd3, + 0xdc, 0xd4, 0x75, 0xf9, +}; +static const unsigned char kat1193_nonce[] = {0}; +static const unsigned char kat1193_persstr[] = { + 0xf2, 0x82, 0xb3, 0x2b, 0xe8, 0x07, 0xb5, 0x78, 0x7d, 0x89, 0x1e, 0x58, + 0xfd, 0x60, 0xf4, 0xc2, 0x9d, 0x26, 0x37, 0x32, 0x87, 0x4e, 0x38, 0xbc, + 0x34, 0xee, 0x28, 0x46, 0x73, 0x03, 0x85, 0xdb, 0x06, 0xa1, 0xa4, 0xac, + 0x64, 0x87, 0x8e, 0x26, +}; +static const unsigned char kat1193_addin0[] = { + 0x8a, 0xdc, 0xe4, 0x45, 0xcb, 0x08, 0xc3, 0x45, 0xf9, 0x9c, 0x11, 0x96, + 0x43, 0x74, 0x34, 0xdd, 0x75, 0xc2, 0x19, 0x79, 0xfb, 0x44, 0x84, 0x59, + 0xf7, 0xd8, 0x1b, 0x0f, 0x2e, 0x21, 0xbe, 0x1f, 0x48, 0xce, 0x46, 0x24, + 0x1b, 0xea, 0x4a, 0x37, +}; +static const unsigned char kat1193_addin1[] = { + 0xd9, 0x3f, 0x0c, 0x51, 0x79, 0xb4, 0x48, 0x1b, 0xa3, 0x48, 0xf3, 0x7d, + 0x7c, 0x32, 0x0b, 0xef, 0xd2, 0x09, 0xb7, 0x4b, 0xee, 0x45, 0x1d, 0x88, + 0x21, 0x1c, 0x99, 0x76, 0x02, 0xc9, 0xfb, 0x6c, 0x3b, 0x2f, 0x77, 0xa2, + 0x50, 0x6f, 0x5f, 0xed, +}; +static const unsigned char kat1193_retbits[] = { + 0x34, 0x70, 0x7a, 0xd1, 0xe4, 0x93, 0xe4, 0xa8, 0x13, 0x2e, 0x1c, 0x0e, + 0x4d, 0x36, 0xd6, 0x90, 0x16, 0x8a, 0x91, 0xca, 0x79, 0x7f, 0x24, 0x96, + 0x04, 0xc2, 0xd1, 0xb3, 0x20, 0x4c, 0x17, 0x71, 0x52, 0x93, 0xc3, 0x67, + 0xbc, 0xb8, 0xee, 0x00, 0x9b, 0x3f, 0x1a, 0x65, 0xef, 0x83, 0x29, 0xfa, + 0x13, 0x7a, 0x12, 0x9b, 0x8f, 0x7e, 0xd6, 0xb3, 0x6d, 0xee, 0x08, 0xad, + 0x8d, 0x7d, 0x39, 0xac, +}; +static const struct drbg_kat_no_reseed kat1193_t = { + 7, kat1193_entropyin, kat1193_nonce, kat1193_persstr, + kat1193_addin0, kat1193_addin1, kat1193_retbits +}; +static const struct drbg_kat kat1193 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1193_t +}; + +static const unsigned char kat1194_entropyin[] = { + 0x08, 0x33, 0x1c, 0x1c, 0x32, 0xf0, 0xb3, 0xe8, 0x7a, 0x9a, 0x0e, 0x09, + 0x2e, 0x92, 0x3a, 0x8a, 0x50, 0x77, 0xa7, 0xf0, 0xa9, 0x7a, 0x87, 0x99, + 0xb8, 0x64, 0x58, 0x7e, 0x67, 0x4b, 0x1c, 0xf6, 0x5b, 0xc5, 0xc9, 0x28, + 0xdc, 0x9e, 0x55, 0x57, +}; +static const unsigned char kat1194_nonce[] = {0}; +static const unsigned char kat1194_persstr[] = { + 0x87, 0xca, 0xc9, 0x11, 0x7f, 0x06, 0x77, 0xeb, 0x95, 0x87, 0x70, 0x89, + 0x3c, 0xe2, 0x94, 0x26, 0x21, 0x18, 0x8a, 0xa9, 0x5a, 0x10, 0x96, 0xf6, + 0xf3, 0x7d, 0x1b, 0xee, 0xe1, 0xc7, 0x6c, 0xa4, 0x0c, 0xe9, 0x53, 0xeb, + 0x73, 0x3f, 0x81, 0x9c, +}; +static const unsigned char kat1194_addin0[] = { + 0x2b, 0x28, 0x71, 0x5e, 0xfd, 0x8d, 0xf9, 0x36, 0xb3, 0x96, 0xbf, 0x9e, + 0x4a, 0xe6, 0x43, 0x97, 0x75, 0x34, 0xdc, 0xe1, 0xa4, 0x9b, 0xea, 0x8f, + 0x1c, 0xfd, 0x50, 0x17, 0xc2, 0x82, 0x5a, 0xe2, 0x1f, 0xa5, 0x2f, 0xc8, + 0x52, 0x55, 0xf4, 0xbe, +}; +static const unsigned char kat1194_addin1[] = { + 0x9c, 0xc6, 0x33, 0x5e, 0xde, 0xbc, 0x66, 0x41, 0x31, 0xf7, 0xf4, 0x42, + 0xcf, 0xb5, 0x15, 0x51, 0xe3, 0xcc, 0x7f, 0x65, 0x43, 0xd2, 0xac, 0x15, + 0x73, 0xcd, 0x77, 0xf4, 0xfd, 0x7a, 0x5c, 0xa6, 0x4f, 0x94, 0x5d, 0xeb, + 0xb4, 0x60, 0xbe, 0x1b, +}; +static const unsigned char kat1194_retbits[] = { + 0x26, 0xce, 0xb5, 0xa4, 0x86, 0xa3, 0x2f, 0xb5, 0xbc, 0xfb, 0xfb, 0x6f, + 0x49, 0x48, 0x35, 0x7d, 0x9c, 0xe7, 0xb7, 0x63, 0xb7, 0x36, 0x9a, 0x67, + 0x6a, 0x0e, 0x82, 0xdc, 0x08, 0xd3, 0x8c, 0xfa, 0x55, 0x01, 0x30, 0x00, + 0x48, 0xcb, 0xf3, 0xaf, 0x88, 0x0b, 0x98, 0x71, 0xf7, 0x9d, 0xdd, 0x42, + 0x65, 0x28, 0x60, 0x68, 0xea, 0x26, 0x17, 0xe9, 0xff, 0xc6, 0xc2, 0xdd, + 0xf0, 0xd8, 0xc2, 0x1b, +}; +static const struct drbg_kat_no_reseed kat1194_t = { + 8, kat1194_entropyin, kat1194_nonce, kat1194_persstr, + kat1194_addin0, kat1194_addin1, kat1194_retbits +}; +static const struct drbg_kat kat1194 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1194_t +}; + +static const unsigned char kat1195_entropyin[] = { + 0x9b, 0x4b, 0x55, 0x87, 0xac, 0x11, 0x9f, 0xc8, 0x5f, 0x33, 0x2e, 0xe3, + 0xb9, 0x32, 0x79, 0xda, 0x42, 0xdd, 0xc5, 0x6e, 0x45, 0xdb, 0xea, 0x0c, + 0x37, 0xb7, 0xe8, 0x82, 0x3f, 0x1a, 0xd6, 0x40, 0xaa, 0xd4, 0x98, 0xac, + 0x8c, 0x82, 0x9c, 0xa2, +}; +static const unsigned char kat1195_nonce[] = {0}; +static const unsigned char kat1195_persstr[] = { + 0x30, 0x92, 0xce, 0xba, 0x2c, 0xff, 0x80, 0xae, 0x30, 0x03, 0x81, 0xc2, + 0x73, 0x37, 0x8e, 0x82, 0xf4, 0xc0, 0x94, 0xc8, 0x5a, 0x3a, 0xc4, 0x82, + 0xeb, 0x71, 0x93, 0x3a, 0x6d, 0xd7, 0xef, 0x48, 0x92, 0xe7, 0xb0, 0x52, + 0x7d, 0x92, 0x1b, 0xcd, +}; +static const unsigned char kat1195_addin0[] = { + 0x99, 0xa3, 0xa0, 0x35, 0x6a, 0xd4, 0x62, 0x97, 0x31, 0x55, 0x15, 0x0c, + 0xd9, 0xad, 0x83, 0x32, 0xad, 0x30, 0xa6, 0x01, 0x50, 0x4b, 0x28, 0x95, + 0x47, 0x20, 0x2f, 0x9c, 0x3d, 0xd3, 0xc5, 0x48, 0x4b, 0x9e, 0x39, 0x5d, + 0x50, 0x52, 0x8b, 0x8c, +}; +static const unsigned char kat1195_addin1[] = { + 0x02, 0xe8, 0x7c, 0x36, 0x3e, 0xde, 0x7d, 0xc9, 0xbc, 0xac, 0x1e, 0xd6, + 0xc5, 0x8d, 0x26, 0xb1, 0xe8, 0x85, 0xbd, 0x2e, 0x98, 0x16, 0x20, 0xb5, + 0x72, 0x51, 0x20, 0x5f, 0xc7, 0x96, 0xe8, 0xed, 0x85, 0xa8, 0xec, 0x62, + 0x53, 0xf5, 0xdb, 0xbf, +}; +static const unsigned char kat1195_retbits[] = { + 0xab, 0x07, 0x2e, 0xdf, 0xc8, 0x38, 0x28, 0xf1, 0x71, 0x6e, 0x82, 0x20, + 0xbd, 0x5b, 0x17, 0xac, 0x68, 0x4e, 0x93, 0xe4, 0xaa, 0x22, 0x57, 0xe8, + 0x99, 0x21, 0x05, 0xf9, 0x94, 0x85, 0x1e, 0x11, 0x42, 0xa0, 0xbc, 0x08, + 0xc0, 0x76, 0xf0, 0xcd, 0x16, 0x49, 0xad, 0x44, 0x74, 0x68, 0x64, 0x74, + 0x63, 0x8d, 0x8f, 0xf5, 0x08, 0x2b, 0x9a, 0x49, 0x40, 0x1d, 0x47, 0x9a, + 0x0c, 0x41, 0xaf, 0x9d, +}; +static const struct drbg_kat_no_reseed kat1195_t = { + 9, kat1195_entropyin, kat1195_nonce, kat1195_persstr, + kat1195_addin0, kat1195_addin1, kat1195_retbits +}; +static const struct drbg_kat kat1195 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1195_t +}; + +static const unsigned char kat1196_entropyin[] = { + 0xcd, 0xaf, 0xec, 0x56, 0x39, 0x07, 0x3a, 0xe7, 0x33, 0x40, 0xe0, 0x8a, + 0xd9, 0xb1, 0x48, 0xdd, 0xb3, 0x96, 0xa9, 0xcd, 0xc5, 0xaa, 0x36, 0x98, + 0x71, 0x04, 0x6c, 0x1d, 0x9f, 0x2f, 0x39, 0x21, 0x34, 0x3c, 0xff, 0xe8, + 0x6e, 0x94, 0xed, 0x64, +}; +static const unsigned char kat1196_nonce[] = {0}; +static const unsigned char kat1196_persstr[] = { + 0x36, 0xb4, 0x61, 0xe5, 0xef, 0xe0, 0x53, 0xb2, 0x44, 0x8b, 0x5b, 0x5a, + 0x35, 0xc0, 0xe9, 0xef, 0x53, 0x77, 0x13, 0x15, 0x6c, 0x4c, 0x2f, 0x3e, + 0x6d, 0xbc, 0x53, 0x32, 0x02, 0xd5, 0x84, 0x62, 0x58, 0x14, 0x4f, 0xb2, + 0xe2, 0xda, 0x59, 0x21, +}; +static const unsigned char kat1196_addin0[] = { + 0x6f, 0x16, 0xf4, 0xfe, 0xc2, 0x08, 0xbb, 0x8f, 0x38, 0x21, 0x08, 0xf0, + 0xa1, 0x37, 0x30, 0xab, 0xcd, 0x61, 0xd7, 0xfd, 0xee, 0xd5, 0x3b, 0x50, + 0xd6, 0x62, 0xbf, 0x9a, 0x97, 0x23, 0xf3, 0x8c, 0x62, 0xbc, 0x3a, 0x23, + 0xe7, 0x6f, 0x8f, 0x4c, +}; +static const unsigned char kat1196_addin1[] = { + 0x39, 0x3a, 0x1d, 0x49, 0x23, 0x3e, 0xda, 0xfb, 0xfe, 0xfd, 0x3c, 0x51, + 0x97, 0x1e, 0x0e, 0xee, 0x1c, 0x09, 0xca, 0xa2, 0x2d, 0x90, 0x36, 0x06, + 0x0c, 0x70, 0xcd, 0x8e, 0x9f, 0xe0, 0xc3, 0x04, 0x22, 0x3e, 0xbf, 0x88, + 0x14, 0x4f, 0x92, 0x8e, +}; +static const unsigned char kat1196_retbits[] = { + 0x49, 0xa5, 0xe9, 0x5a, 0xb4, 0xad, 0x79, 0x25, 0x1a, 0x7c, 0x39, 0x3b, + 0x50, 0x44, 0x3b, 0xca, 0xe1, 0x33, 0xfd, 0x30, 0xcc, 0x06, 0xe6, 0xae, + 0x14, 0x69, 0xd2, 0xba, 0x83, 0xb5, 0xa2, 0x0c, 0xa3, 0x5d, 0x91, 0x22, + 0x4c, 0x01, 0x85, 0xe4, 0xaa, 0x6e, 0x52, 0x4a, 0xb7, 0xec, 0x91, 0x64, + 0xe3, 0xb7, 0x3d, 0xd0, 0x6a, 0xa6, 0x5c, 0x99, 0xf9, 0x57, 0xad, 0x56, + 0xd6, 0x1c, 0x62, 0xe2, +}; +static const struct drbg_kat_no_reseed kat1196_t = { + 10, kat1196_entropyin, kat1196_nonce, kat1196_persstr, + kat1196_addin0, kat1196_addin1, kat1196_retbits +}; +static const struct drbg_kat kat1196 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1196_t +}; + +static const unsigned char kat1197_entropyin[] = { + 0xe4, 0xd0, 0xc3, 0x05, 0x8c, 0xea, 0x48, 0x14, 0x2d, 0x47, 0xfe, 0xa3, + 0xf6, 0xf0, 0x26, 0x1f, 0x3f, 0x57, 0x2a, 0xca, 0x43, 0x9a, 0x0c, 0x74, + 0x05, 0xb7, 0xd2, 0x3e, 0xaf, 0x07, 0x53, 0xd9, 0x3f, 0x6f, 0x98, 0x53, + 0x5d, 0x81, 0x8d, 0x3d, +}; +static const unsigned char kat1197_nonce[] = {0}; +static const unsigned char kat1197_persstr[] = { + 0xe7, 0x97, 0x91, 0x0f, 0xf6, 0xfc, 0x40, 0x2a, 0xdf, 0xbe, 0x0c, 0x0c, + 0x44, 0x22, 0x0d, 0x77, 0xfa, 0x75, 0x2a, 0x8b, 0xdd, 0x3b, 0xec, 0x9a, + 0xd3, 0x08, 0x8f, 0x4e, 0x97, 0x18, 0x61, 0xe9, 0x53, 0x51, 0x26, 0x8e, + 0xd6, 0x68, 0x45, 0xd2, +}; +static const unsigned char kat1197_addin0[] = { + 0x68, 0xe9, 0xc9, 0x9b, 0x09, 0x7a, 0x9e, 0x1c, 0x12, 0xa9, 0x8f, 0x6e, + 0xcb, 0x6b, 0xf0, 0xc4, 0xfc, 0xdd, 0xbe, 0x77, 0x40, 0x29, 0xe5, 0x5f, + 0x95, 0xd1, 0x41, 0x99, 0xf9, 0xd7, 0xb4, 0xd2, 0xc1, 0x2d, 0xcf, 0x3b, + 0x94, 0xeb, 0x88, 0x60, +}; +static const unsigned char kat1197_addin1[] = { + 0xb1, 0x2f, 0x83, 0x1f, 0xed, 0x05, 0x56, 0x7c, 0x7c, 0xa3, 0x08, 0xa9, + 0x6b, 0x0b, 0xe3, 0x54, 0xd8, 0xb3, 0x0f, 0x08, 0xa5, 0x08, 0xb1, 0xff, + 0x10, 0xce, 0xff, 0xd3, 0x25, 0x28, 0x4b, 0x8c, 0x69, 0x09, 0xdc, 0xfe, + 0x16, 0x83, 0xd0, 0x6b, +}; +static const unsigned char kat1197_retbits[] = { + 0x05, 0x6e, 0xf8, 0xbb, 0x57, 0x41, 0x19, 0x83, 0x20, 0x40, 0xbf, 0xfa, + 0x19, 0x47, 0xca, 0xec, 0xc5, 0x6c, 0x4b, 0x57, 0xdb, 0x9d, 0x30, 0x56, + 0x7b, 0x19, 0x55, 0x93, 0xd7, 0x7f, 0xa8, 0xb5, 0x07, 0x40, 0x8b, 0x36, + 0x5a, 0x1a, 0x0a, 0x77, 0xc4, 0xeb, 0xc1, 0x4d, 0x55, 0xe0, 0x95, 0x87, + 0x49, 0x41, 0x83, 0xe0, 0xbf, 0xca, 0xf6, 0x58, 0x3a, 0xc8, 0x81, 0x00, + 0x5b, 0x86, 0xaa, 0xf9, +}; +static const struct drbg_kat_no_reseed kat1197_t = { + 11, kat1197_entropyin, kat1197_nonce, kat1197_persstr, + kat1197_addin0, kat1197_addin1, kat1197_retbits +}; +static const struct drbg_kat kat1197 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1197_t +}; + +static const unsigned char kat1198_entropyin[] = { + 0x9a, 0xeb, 0xa4, 0x1a, 0x33, 0xed, 0x68, 0x3c, 0xb8, 0xe6, 0x9d, 0xd3, + 0xc6, 0x6b, 0x61, 0x86, 0x69, 0xff, 0x64, 0x65, 0x40, 0x51, 0xb0, 0xb7, + 0xad, 0x3d, 0x80, 0x99, 0xc0, 0x69, 0x8b, 0x47, 0xbe, 0x31, 0x21, 0xd0, + 0xa1, 0x6a, 0xf8, 0xf2, +}; +static const unsigned char kat1198_nonce[] = {0}; +static const unsigned char kat1198_persstr[] = { + 0xdb, 0x20, 0xdb, 0x8d, 0x22, 0xbc, 0x90, 0x40, 0x02, 0x3d, 0xb3, 0x76, + 0xe0, 0x05, 0x0a, 0x4c, 0x08, 0x26, 0x8e, 0xbd, 0x22, 0xa9, 0x02, 0x51, + 0x1e, 0x5e, 0x7b, 0xa4, 0xd0, 0x0e, 0xbb, 0xfe, 0x20, 0xc4, 0x1c, 0xfd, + 0x6c, 0x5f, 0x4f, 0x22, +}; +static const unsigned char kat1198_addin0[] = { + 0xc5, 0xb6, 0xd7, 0xc5, 0xa1, 0x5d, 0x12, 0x07, 0x37, 0xef, 0x09, 0x1e, + 0xd7, 0x9e, 0x11, 0xcd, 0xef, 0x50, 0x1e, 0xd4, 0x44, 0x38, 0x61, 0x92, + 0x16, 0xca, 0xf9, 0x08, 0x21, 0xfa, 0x98, 0x78, 0xf5, 0xe7, 0x61, 0x2b, + 0x89, 0x2f, 0xbd, 0x14, +}; +static const unsigned char kat1198_addin1[] = { + 0x9c, 0x9a, 0xff, 0x5f, 0x6a, 0x5d, 0xa0, 0xc0, 0x67, 0x21, 0x86, 0x2b, + 0x9e, 0x04, 0x12, 0x1e, 0xd2, 0x2f, 0x39, 0x02, 0x84, 0xf1, 0xfb, 0x69, + 0x85, 0xa4, 0x95, 0x09, 0x2f, 0xbf, 0xff, 0xf2, 0x00, 0x01, 0x18, 0x71, + 0xae, 0xcc, 0x3b, 0x38, +}; +static const unsigned char kat1198_retbits[] = { + 0x30, 0x1b, 0x7f, 0x2f, 0x5e, 0xa8, 0xc1, 0x5f, 0x7f, 0x64, 0x8a, 0x97, + 0x9d, 0xa2, 0xa8, 0x1d, 0xef, 0x9e, 0xd4, 0x8b, 0xcd, 0xc6, 0x8c, 0x73, + 0x97, 0xd6, 0x9b, 0x24, 0x74, 0x4a, 0x3d, 0xe5, 0x32, 0x85, 0xf4, 0xd1, + 0x3e, 0x41, 0xa5, 0x67, 0x99, 0x01, 0x88, 0x76, 0x50, 0x0b, 0xda, 0x8c, + 0x44, 0x4d, 0xf1, 0x03, 0x84, 0x13, 0x3c, 0xd4, 0xcf, 0x6a, 0x8e, 0x86, + 0xe6, 0xbf, 0x5c, 0x2d, +}; +static const struct drbg_kat_no_reseed kat1198_t = { + 12, kat1198_entropyin, kat1198_nonce, kat1198_persstr, + kat1198_addin0, kat1198_addin1, kat1198_retbits +}; +static const struct drbg_kat kat1198 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1198_t +}; + +static const unsigned char kat1199_entropyin[] = { + 0x74, 0x97, 0x3e, 0x54, 0x20, 0x38, 0x1d, 0xa3, 0x16, 0xdd, 0x04, 0x93, + 0x97, 0x48, 0x23, 0x2b, 0x61, 0x73, 0x14, 0x95, 0xf2, 0x6f, 0x92, 0xba, + 0xfc, 0x84, 0xe2, 0x73, 0xf7, 0x26, 0x6e, 0xc3, 0xe3, 0x28, 0x2e, 0xb2, + 0xf6, 0x9e, 0x1d, 0xc9, +}; +static const unsigned char kat1199_nonce[] = {0}; +static const unsigned char kat1199_persstr[] = { + 0x83, 0x0f, 0x27, 0xcc, 0x55, 0x57, 0x93, 0x77, 0xff, 0xe6, 0x0a, 0x73, + 0x19, 0x84, 0x08, 0xeb, 0x69, 0x65, 0x9e, 0x9f, 0xae, 0x44, 0x4f, 0xd5, + 0x9a, 0xc2, 0x6d, 0xd4, 0x04, 0x9d, 0x65, 0x7c, 0x01, 0xc9, 0x93, 0x94, + 0x57, 0xff, 0xc7, 0x72, +}; +static const unsigned char kat1199_addin0[] = { + 0xec, 0x46, 0x60, 0xa8, 0xe4, 0xf2, 0x7f, 0xd9, 0xe7, 0x04, 0xcd, 0xa7, + 0x88, 0xbd, 0xb5, 0x99, 0x56, 0x4b, 0xab, 0xc4, 0x47, 0x4e, 0x5f, 0xe6, + 0xae, 0xe7, 0xb4, 0x93, 0x70, 0x59, 0x09, 0x18, 0x32, 0xb4, 0x07, 0x19, + 0x55, 0xa3, 0x13, 0x41, +}; +static const unsigned char kat1199_addin1[] = { + 0x47, 0xcd, 0x23, 0x81, 0x0f, 0x80, 0xeb, 0x3b, 0xcf, 0xd0, 0x7a, 0x4b, + 0x22, 0x4c, 0xe4, 0x81, 0xf4, 0xec, 0x2a, 0x24, 0x91, 0x73, 0xd3, 0x98, + 0x26, 0x5e, 0x29, 0x0e, 0x37, 0x66, 0xee, 0xe0, 0xa5, 0x84, 0x7d, 0x91, + 0x9a, 0xd9, 0x9c, 0x48, +}; +static const unsigned char kat1199_retbits[] = { + 0x09, 0x95, 0xbc, 0x60, 0x18, 0xab, 0x49, 0x55, 0xd4, 0xe6, 0x62, 0xe7, + 0x33, 0x5b, 0x9e, 0x1c, 0x81, 0x46, 0xf3, 0x90, 0x60, 0x65, 0xb3, 0xf7, + 0x21, 0x4e, 0xff, 0xe1, 0x23, 0xcb, 0x0f, 0xcb, 0x3c, 0x92, 0x54, 0x67, + 0xda, 0xec, 0x15, 0x64, 0x35, 0xbf, 0x7e, 0xc8, 0xb2, 0xac, 0x3d, 0x98, + 0x8b, 0x57, 0x90, 0xdb, 0x3c, 0x96, 0x0c, 0xea, 0xf7, 0x00, 0xd7, 0x4a, + 0x0b, 0x8b, 0x38, 0xf0, +}; +static const struct drbg_kat_no_reseed kat1199_t = { + 13, kat1199_entropyin, kat1199_nonce, kat1199_persstr, + kat1199_addin0, kat1199_addin1, kat1199_retbits +}; +static const struct drbg_kat kat1199 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1199_t +}; + +static const unsigned char kat1200_entropyin[] = { + 0x52, 0x40, 0x12, 0xbf, 0xc4, 0x7b, 0xed, 0x3d, 0xa7, 0xa3, 0x54, 0x88, + 0xe8, 0x26, 0xc4, 0x2a, 0x76, 0x60, 0x7c, 0x0d, 0x98, 0x0c, 0xa0, 0x21, + 0xc9, 0xea, 0x9c, 0xe0, 0xcf, 0x6d, 0xce, 0xd5, 0xc8, 0xea, 0x0c, 0x61, + 0x77, 0x2e, 0x4d, 0x64, +}; +static const unsigned char kat1200_nonce[] = {0}; +static const unsigned char kat1200_persstr[] = { + 0x3a, 0x27, 0xc2, 0x5e, 0xb5, 0x94, 0x30, 0x28, 0xc0, 0x19, 0x96, 0xb5, + 0x76, 0x6a, 0xf3, 0x39, 0x06, 0x1b, 0xee, 0xd2, 0xc8, 0xd8, 0xe7, 0x73, + 0xfe, 0x08, 0xba, 0xde, 0x72, 0x80, 0x25, 0xd4, 0x73, 0xe2, 0x73, 0x39, + 0xb6, 0x8d, 0xe5, 0xe6, +}; +static const unsigned char kat1200_addin0[] = { + 0x8b, 0x98, 0x1e, 0xc9, 0xca, 0x88, 0xb1, 0x49, 0x3e, 0x7f, 0xf3, 0xb9, + 0x0c, 0x02, 0xda, 0x6f, 0x47, 0x8b, 0xfa, 0x57, 0x3f, 0x5a, 0x03, 0x54, + 0x94, 0x1d, 0xfe, 0xdb, 0x86, 0x3c, 0xa9, 0xd0, 0x5e, 0xfe, 0xa9, 0xd8, + 0x83, 0x54, 0x59, 0xad, +}; +static const unsigned char kat1200_addin1[] = { + 0x82, 0x9e, 0x75, 0xa5, 0x8e, 0xdd, 0x00, 0xd8, 0x62, 0x69, 0xef, 0x33, + 0x2e, 0x67, 0x44, 0x72, 0x3b, 0x28, 0x9f, 0x7d, 0xf8, 0xf1, 0xc0, 0xbb, + 0xf7, 0x02, 0x22, 0xb5, 0x42, 0xb9, 0x01, 0x4e, 0x2d, 0x0c, 0xdd, 0x6a, + 0xae, 0xc8, 0xc1, 0x94, +}; +static const unsigned char kat1200_retbits[] = { + 0x8c, 0x4a, 0xa7, 0x94, 0xaf, 0x3d, 0x7d, 0x4d, 0x68, 0x40, 0x06, 0x80, + 0x8c, 0x98, 0xc1, 0x1d, 0x81, 0x46, 0xb1, 0x1f, 0xd0, 0x62, 0xc6, 0x9c, + 0xac, 0x01, 0x9f, 0x19, 0x13, 0xc4, 0x57, 0xb4, 0x9d, 0x42, 0x3b, 0x5e, + 0xc6, 0x83, 0xf1, 0x91, 0x43, 0xea, 0xb3, 0x72, 0x07, 0x9a, 0x6d, 0xf5, + 0x51, 0xfc, 0x68, 0x6d, 0x9d, 0x6f, 0x9c, 0xe5, 0xf6, 0x4e, 0xf6, 0x19, + 0x18, 0x6f, 0x81, 0x6b, +}; +static const struct drbg_kat_no_reseed kat1200_t = { + 14, kat1200_entropyin, kat1200_nonce, kat1200_persstr, + kat1200_addin0, kat1200_addin1, kat1200_retbits +}; +static const struct drbg_kat kat1200 = { + NO_RESEED, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat1200_t +}; + +static const unsigned char kat1201_entropyin[] = { + 0xdf, 0x5d, 0x73, 0xfa, 0xa4, 0x68, 0x64, 0x9e, 0xdd, 0xa3, 0x3b, 0x5c, + 0xca, 0x79, 0xb0, 0xb0, 0x56, 0x00, 0x41, 0x9c, 0xcb, 0x7a, 0x87, 0x9d, + 0xdf, 0xec, 0x9d, 0xb3, 0x2e, 0xe4, 0x94, 0xe5, 0x53, 0x1b, 0x51, 0xde, + 0x16, 0xa3, 0x0f, 0x76, 0x92, 0x62, 0x47, 0x4c, 0x73, 0xbe, 0xc0, 0x10, +}; +static const unsigned char kat1201_nonce[] = {0}; +static const unsigned char kat1201_persstr[] = {0}; +static const unsigned char kat1201_addin0[] = {0}; +static const unsigned char kat1201_addin1[] = {0}; +static const unsigned char kat1201_retbits[] = { + 0xd1, 0xc0, 0x7c, 0xd9, 0x5a, 0xf8, 0xa7, 0xf1, 0x10, 0x12, 0xc8, 0x4c, + 0xe4, 0x8b, 0xb8, 0xcb, 0x87, 0x18, 0x9e, 0x99, 0xd4, 0x0f, 0xcc, 0xb1, + 0x77, 0x1c, 0x61, 0x9b, 0xdf, 0x82, 0xab, 0x22, 0x80, 0xb1, 0xdc, 0x2f, + 0x25, 0x81, 0xf3, 0x91, 0x64, 0xf7, 0xac, 0x0c, 0x51, 0x04, 0x94, 0xb3, + 0xa4, 0x3c, 0x41, 0xb7, 0xdb, 0x17, 0x51, 0x4c, 0x87, 0xb1, 0x07, 0xae, + 0x79, 0x3e, 0x01, 0xc5, +}; +static const struct drbg_kat_no_reseed kat1201_t = { + 0, kat1201_entropyin, kat1201_nonce, kat1201_persstr, + kat1201_addin0, kat1201_addin1, kat1201_retbits +}; +static const struct drbg_kat kat1201 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1201_t +}; + +static const unsigned char kat1202_entropyin[] = { + 0x3b, 0x6f, 0xb6, 0x34, 0xd3, 0x5b, 0xb3, 0x86, 0x92, 0x73, 0x74, 0xf9, + 0x91, 0xc1, 0xcb, 0xc9, 0xfa, 0xfb, 0xa3, 0xa4, 0x3c, 0x43, 0x2d, 0xc4, + 0x11, 0xb7, 0xb2, 0xfa, 0x96, 0xcf, 0xcc, 0xe8, 0xd3, 0x05, 0xe1, 0x35, + 0xff, 0x9b, 0xc4, 0x60, 0xdb, 0xc7, 0xba, 0x39, 0x90, 0xbf, 0x80, 0x60, +}; +static const unsigned char kat1202_nonce[] = {0}; +static const unsigned char kat1202_persstr[] = {0}; +static const unsigned char kat1202_addin0[] = {0}; +static const unsigned char kat1202_addin1[] = {0}; +static const unsigned char kat1202_retbits[] = { + 0x08, 0x3a, 0x83, 0x6f, 0xe1, 0xcd, 0xe0, 0x53, 0x16, 0x45, 0x55, 0x52, + 0x94, 0x09, 0x33, 0x7d, 0xc4, 0xfe, 0xc6, 0x84, 0x45, 0x94, 0xfd, 0xf1, + 0x50, 0x83, 0xba, 0x9d, 0x10, 0x01, 0xeb, 0x94, 0x5c, 0x3b, 0x96, 0xa1, + 0xbc, 0xee, 0x39, 0x90, 0xe1, 0xe5, 0x1f, 0x85, 0xc8, 0x0e, 0x9f, 0x4e, + 0x04, 0xde, 0x34, 0xe5, 0x7b, 0x64, 0x0f, 0x6c, 0xae, 0x8e, 0xd6, 0x8e, + 0x99, 0x62, 0x47, 0x12, +}; +static const struct drbg_kat_no_reseed kat1202_t = { + 1, kat1202_entropyin, kat1202_nonce, kat1202_persstr, + kat1202_addin0, kat1202_addin1, kat1202_retbits +}; +static const struct drbg_kat kat1202 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1202_t +}; + +static const unsigned char kat1203_entropyin[] = { + 0x02, 0x17, 0xa8, 0xac, 0xf2, 0xf8, 0xe2, 0xc4, 0xab, 0x7b, 0xdc, 0xd5, + 0xa6, 0x94, 0xbc, 0xa2, 0x8d, 0x03, 0x80, 0x18, 0x86, 0x9d, 0xcb, 0xe2, + 0x16, 0x0d, 0x1c, 0xe0, 0xb4, 0xc7, 0x8e, 0xad, 0x55, 0x92, 0xef, 0xed, + 0x98, 0x66, 0x2f, 0x2d, 0xff, 0x87, 0xf3, 0x2f, 0x48, 0x35, 0xc6, 0x77, +}; +static const unsigned char kat1203_nonce[] = {0}; +static const unsigned char kat1203_persstr[] = {0}; +static const unsigned char kat1203_addin0[] = {0}; +static const unsigned char kat1203_addin1[] = {0}; +static const unsigned char kat1203_retbits[] = { + 0xaa, 0x36, 0x77, 0x97, 0x26, 0xf5, 0x28, 0x75, 0x31, 0x25, 0x07, 0xfb, + 0x08, 0x47, 0x44, 0xd4, 0xd7, 0xf3, 0xf9, 0x46, 0x8a, 0x5b, 0x24, 0x6c, + 0xcd, 0xe3, 0x16, 0xd2, 0xab, 0x91, 0x87, 0x9c, 0x2e, 0x29, 0xf5, 0xa0, + 0x93, 0x8a, 0x3b, 0xcd, 0x72, 0x2b, 0xb7, 0x18, 0xd0, 0x1b, 0xbf, 0xc3, + 0x58, 0x31, 0xc9, 0xe6, 0x4f, 0x5b, 0x64, 0x10, 0xae, 0x90, 0x8d, 0x30, + 0x61, 0xf7, 0x6c, 0x84, +}; +static const struct drbg_kat_no_reseed kat1203_t = { + 2, kat1203_entropyin, kat1203_nonce, kat1203_persstr, + kat1203_addin0, kat1203_addin1, kat1203_retbits +}; +static const struct drbg_kat kat1203 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1203_t +}; + +static const unsigned char kat1204_entropyin[] = { + 0x37, 0xd8, 0x51, 0xfb, 0x20, 0xab, 0x3b, 0xa7, 0x3b, 0x1d, 0x8d, 0x81, + 0xf3, 0x23, 0x90, 0x1a, 0x55, 0x52, 0x9c, 0x26, 0xa8, 0xf7, 0x53, 0xd3, + 0x29, 0x80, 0xd6, 0xd2, 0xab, 0xa3, 0xda, 0x27, 0x8b, 0x90, 0x74, 0x00, + 0xa1, 0x94, 0x06, 0xe2, 0x55, 0x20, 0x6e, 0x1d, 0x08, 0x58, 0xf3, 0x84, +}; +static const unsigned char kat1204_nonce[] = {0}; +static const unsigned char kat1204_persstr[] = {0}; +static const unsigned char kat1204_addin0[] = {0}; +static const unsigned char kat1204_addin1[] = {0}; +static const unsigned char kat1204_retbits[] = { + 0x96, 0xea, 0xba, 0xfb, 0x45, 0xc7, 0x79, 0x67, 0xb1, 0x4a, 0x66, 0x63, + 0xa3, 0x92, 0x38, 0x30, 0x6c, 0xe5, 0x80, 0x38, 0xa3, 0xdc, 0x0b, 0x8a, + 0xec, 0xaf, 0x02, 0x31, 0xc4, 0x04, 0xec, 0xba, 0x50, 0xf1, 0xab, 0x0a, + 0x17, 0xb1, 0x89, 0x4c, 0xf6, 0xac, 0xb6, 0x30, 0xfe, 0x16, 0x5f, 0x8a, + 0x9d, 0x7c, 0x54, 0x12, 0xe1, 0xba, 0xb4, 0xeb, 0x4e, 0xfe, 0x9a, 0xe8, + 0x4f, 0x5b, 0x4a, 0x03, +}; +static const struct drbg_kat_no_reseed kat1204_t = { + 3, kat1204_entropyin, kat1204_nonce, kat1204_persstr, + kat1204_addin0, kat1204_addin1, kat1204_retbits +}; +static const struct drbg_kat kat1204 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1204_t +}; + +static const unsigned char kat1205_entropyin[] = { + 0xe6, 0x2e, 0xab, 0x30, 0xb9, 0x33, 0x85, 0x93, 0x07, 0x61, 0x04, 0xee, + 0x9c, 0x14, 0x8a, 0x6c, 0x22, 0xf7, 0x96, 0xda, 0xed, 0xb7, 0x1b, 0xac, + 0xdd, 0xa2, 0x07, 0xb1, 0x97, 0x68, 0xb5, 0xfe, 0xd5, 0xd2, 0x0c, 0x9e, + 0xea, 0x12, 0xed, 0x5a, 0xb9, 0x59, 0xc1, 0x43, 0xf7, 0x73, 0xcd, 0xa6, +}; +static const unsigned char kat1205_nonce[] = {0}; +static const unsigned char kat1205_persstr[] = {0}; +static const unsigned char kat1205_addin0[] = {0}; +static const unsigned char kat1205_addin1[] = {0}; +static const unsigned char kat1205_retbits[] = { + 0xf5, 0xea, 0x04, 0x0c, 0x67, 0x0f, 0x83, 0xc2, 0x6f, 0xf2, 0xc3, 0x8f, + 0x66, 0x16, 0x9b, 0x57, 0x2f, 0xec, 0xc7, 0x28, 0x3e, 0x90, 0x2f, 0x0f, + 0x4b, 0x2f, 0x6a, 0x44, 0x40, 0xf5, 0xb8, 0x97, 0x08, 0x07, 0xd5, 0x8c, + 0xa0, 0x14, 0x66, 0xce, 0xc7, 0xfb, 0x68, 0xb4, 0xcf, 0x95, 0x23, 0x55, + 0xe7, 0x80, 0x05, 0x0b, 0xf4, 0x8a, 0xd5, 0xb2, 0x0c, 0x17, 0xc7, 0x8a, + 0xa0, 0xfc, 0x03, 0x52, +}; +static const struct drbg_kat_no_reseed kat1205_t = { + 4, kat1205_entropyin, kat1205_nonce, kat1205_persstr, + kat1205_addin0, kat1205_addin1, kat1205_retbits +}; +static const struct drbg_kat kat1205 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1205_t +}; + +static const unsigned char kat1206_entropyin[] = { + 0x62, 0x45, 0x75, 0x5c, 0xb0, 0x2a, 0xe8, 0x83, 0x91, 0x1c, 0x0d, 0x82, + 0x00, 0x90, 0x35, 0x71, 0x5b, 0x23, 0x04, 0xf7, 0x8c, 0xe2, 0xa0, 0xd8, + 0xfa, 0x22, 0xd4, 0x7e, 0x7e, 0x1e, 0x39, 0x4f, 0xd9, 0xa7, 0xa1, 0x38, + 0x62, 0xef, 0x23, 0x93, 0xbb, 0x38, 0x18, 0xec, 0x49, 0xcb, 0x70, 0xf2, +}; +static const unsigned char kat1206_nonce[] = {0}; +static const unsigned char kat1206_persstr[] = {0}; +static const unsigned char kat1206_addin0[] = {0}; +static const unsigned char kat1206_addin1[] = {0}; +static const unsigned char kat1206_retbits[] = { + 0x3c, 0xd5, 0x90, 0xa0, 0xdf, 0xec, 0xe3, 0x09, 0x40, 0xc1, 0x1f, 0xf2, + 0x43, 0xd9, 0x9e, 0x55, 0x2b, 0x53, 0x1a, 0xe1, 0x1b, 0x31, 0xa4, 0x54, + 0xb4, 0x2e, 0xd0, 0x4f, 0x2c, 0x77, 0xf2, 0xe2, 0xf5, 0x8f, 0x9b, 0xd1, + 0xcd, 0x0a, 0x36, 0x48, 0x0f, 0x84, 0x52, 0x56, 0xbc, 0x82, 0x72, 0x3c, + 0x2d, 0xe5, 0xc6, 0xd1, 0x5b, 0xc8, 0xbe, 0x20, 0x40, 0xe5, 0xae, 0x8b, + 0x53, 0x31, 0x51, 0x6e, +}; +static const struct drbg_kat_no_reseed kat1206_t = { + 5, kat1206_entropyin, kat1206_nonce, kat1206_persstr, + kat1206_addin0, kat1206_addin1, kat1206_retbits +}; +static const struct drbg_kat kat1206 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1206_t +}; + +static const unsigned char kat1207_entropyin[] = { + 0xbc, 0x10, 0xb0, 0x98, 0x5a, 0x1d, 0xa8, 0xd0, 0xbc, 0xbc, 0xed, 0x02, + 0x9c, 0xf5, 0x2f, 0x0f, 0xe1, 0x2b, 0x6d, 0x6b, 0xc5, 0x00, 0xdd, 0xff, + 0xba, 0xf3, 0x7a, 0x20, 0x90, 0x35, 0x6c, 0xf1, 0xaa, 0xcb, 0x1b, 0xf3, + 0x0a, 0xd9, 0x48, 0xf8, 0x7f, 0x89, 0x9c, 0x54, 0x4d, 0x11, 0x57, 0x16, +}; +static const unsigned char kat1207_nonce[] = {0}; +static const unsigned char kat1207_persstr[] = {0}; +static const unsigned char kat1207_addin0[] = {0}; +static const unsigned char kat1207_addin1[] = {0}; +static const unsigned char kat1207_retbits[] = { + 0x85, 0x75, 0xf0, 0xf1, 0xf9, 0x59, 0x58, 0x9e, 0x26, 0x95, 0x89, 0x1d, + 0xfa, 0xc5, 0x6d, 0xb7, 0x2b, 0x79, 0x98, 0x1c, 0x60, 0x77, 0xde, 0x92, + 0x15, 0x4c, 0x55, 0x57, 0xc3, 0xe8, 0x9a, 0xb7, 0x73, 0x78, 0x27, 0x06, + 0x9e, 0xcc, 0x70, 0x0d, 0xe1, 0x83, 0x17, 0xb5, 0xa1, 0xfa, 0x38, 0xc1, + 0x1d, 0x67, 0x5b, 0xbb, 0x9b, 0xa2, 0x35, 0xf1, 0x53, 0xc4, 0xf9, 0x89, + 0x9b, 0xc4, 0xbb, 0x8f, +}; +static const struct drbg_kat_no_reseed kat1207_t = { + 6, kat1207_entropyin, kat1207_nonce, kat1207_persstr, + kat1207_addin0, kat1207_addin1, kat1207_retbits +}; +static const struct drbg_kat kat1207 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1207_t +}; + +static const unsigned char kat1208_entropyin[] = { + 0x03, 0x98, 0xb1, 0xbb, 0x37, 0xf9, 0x67, 0x3a, 0x2d, 0x88, 0xef, 0x41, + 0x8b, 0x4c, 0xca, 0x3d, 0x60, 0x09, 0x95, 0x0f, 0xae, 0x93, 0xf0, 0x80, + 0x95, 0xa4, 0x96, 0x02, 0x83, 0x32, 0x9c, 0xe7, 0x53, 0x12, 0xbb, 0x21, + 0xc3, 0x0d, 0x26, 0xb0, 0xdd, 0xfa, 0xbf, 0x29, 0x60, 0x06, 0x06, 0x5c, +}; +static const unsigned char kat1208_nonce[] = {0}; +static const unsigned char kat1208_persstr[] = {0}; +static const unsigned char kat1208_addin0[] = {0}; +static const unsigned char kat1208_addin1[] = {0}; +static const unsigned char kat1208_retbits[] = { + 0x22, 0x81, 0x6b, 0x8c, 0x4b, 0xcf, 0x34, 0xf8, 0xd5, 0x42, 0x57, 0xc2, + 0x17, 0xb5, 0x29, 0xcf, 0x03, 0x8b, 0x6f, 0x6f, 0xb1, 0x86, 0x30, 0x17, + 0xa3, 0x43, 0xd5, 0x0c, 0x88, 0x36, 0x96, 0xd4, 0x43, 0xfa, 0x76, 0xc2, + 0x59, 0xda, 0xae, 0x46, 0xa7, 0x63, 0x38, 0x2b, 0xcc, 0x28, 0x9d, 0xe5, + 0x5b, 0x22, 0x4f, 0x8d, 0xb9, 0x9d, 0x46, 0x83, 0x8c, 0x95, 0x1b, 0x3e, + 0x18, 0xa9, 0xfc, 0x26, +}; +static const struct drbg_kat_no_reseed kat1208_t = { + 7, kat1208_entropyin, kat1208_nonce, kat1208_persstr, + kat1208_addin0, kat1208_addin1, kat1208_retbits +}; +static const struct drbg_kat kat1208 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1208_t +}; + +static const unsigned char kat1209_entropyin[] = { + 0x4b, 0xfa, 0x09, 0x83, 0x9d, 0xa4, 0x60, 0xe5, 0xb0, 0x88, 0x41, 0x1e, + 0xb3, 0x12, 0xa3, 0xc8, 0x9a, 0x85, 0x8e, 0xe8, 0x8c, 0xf3, 0xcb, 0x2a, + 0xd4, 0xf8, 0xf9, 0x89, 0x6b, 0xcf, 0xca, 0xe7, 0x2f, 0xbd, 0x28, 0xf6, + 0xbb, 0x42, 0x88, 0x11, 0xba, 0x34, 0xfb, 0xe4, 0xf8, 0xc8, 0xf5, 0x18, +}; +static const unsigned char kat1209_nonce[] = {0}; +static const unsigned char kat1209_persstr[] = {0}; +static const unsigned char kat1209_addin0[] = {0}; +static const unsigned char kat1209_addin1[] = {0}; +static const unsigned char kat1209_retbits[] = { + 0x46, 0xa5, 0x74, 0xeb, 0xbd, 0x56, 0x68, 0x61, 0x75, 0x76, 0x80, 0xa5, + 0xa3, 0xa0, 0x50, 0xbe, 0xca, 0x92, 0xfa, 0x69, 0x93, 0xba, 0x72, 0xbc, + 0xed, 0x22, 0xbc, 0x0a, 0x46, 0xed, 0x00, 0x58, 0x4e, 0x61, 0xdb, 0x69, + 0x8e, 0x35, 0x2e, 0x31, 0xc7, 0x4a, 0xf4, 0xf5, 0x71, 0x1b, 0x0a, 0xa1, + 0xd9, 0xd4, 0x18, 0x94, 0xff, 0xdb, 0x9c, 0x88, 0x37, 0xc3, 0x8b, 0x1b, + 0x37, 0x82, 0xe3, 0x81, +}; +static const struct drbg_kat_no_reseed kat1209_t = { + 8, kat1209_entropyin, kat1209_nonce, kat1209_persstr, + kat1209_addin0, kat1209_addin1, kat1209_retbits +}; +static const struct drbg_kat kat1209 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1209_t +}; + +static const unsigned char kat1210_entropyin[] = { + 0x86, 0xd1, 0x15, 0xf1, 0xd3, 0xa1, 0x54, 0xc5, 0x0b, 0x45, 0x56, 0x2a, + 0x02, 0xc9, 0x55, 0xe3, 0x07, 0xc1, 0x7f, 0xeb, 0xec, 0xab, 0x4d, 0x13, + 0xe0, 0xd5, 0xb6, 0xc7, 0x25, 0x8b, 0x4b, 0xfe, 0xb9, 0x1e, 0x31, 0x6a, + 0xd0, 0xf8, 0x7b, 0xbc, 0x0a, 0xe1, 0xd0, 0x9d, 0x4d, 0x60, 0xd3, 0x1a, +}; +static const unsigned char kat1210_nonce[] = {0}; +static const unsigned char kat1210_persstr[] = {0}; +static const unsigned char kat1210_addin0[] = {0}; +static const unsigned char kat1210_addin1[] = {0}; +static const unsigned char kat1210_retbits[] = { + 0xff, 0x02, 0x50, 0xe0, 0x26, 0xef, 0x96, 0x64, 0x34, 0x06, 0x2c, 0x87, + 0x55, 0x45, 0xbc, 0x43, 0x66, 0x05, 0xbb, 0x5d, 0x02, 0x87, 0x7a, 0x1b, + 0xd3, 0xfd, 0x03, 0xab, 0x87, 0x52, 0xb1, 0x96, 0x37, 0x49, 0xea, 0x20, + 0x8d, 0xf5, 0x3f, 0x6c, 0x51, 0x82, 0x64, 0x34, 0xf5, 0xc6, 0xe6, 0xd9, + 0x91, 0x84, 0x5c, 0x61, 0x54, 0xf6, 0xb2, 0x00, 0x0d, 0xe6, 0x40, 0xd0, + 0x30, 0x28, 0x89, 0x65, +}; +static const struct drbg_kat_no_reseed kat1210_t = { + 9, kat1210_entropyin, kat1210_nonce, kat1210_persstr, + kat1210_addin0, kat1210_addin1, kat1210_retbits +}; +static const struct drbg_kat kat1210 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1210_t +}; + +static const unsigned char kat1211_entropyin[] = { + 0xce, 0x4c, 0x6c, 0x49, 0x8e, 0x5d, 0xf8, 0xb6, 0x1d, 0xeb, 0xfa, 0xf1, + 0xc2, 0x4c, 0x47, 0x91, 0x09, 0xc8, 0x7c, 0x7d, 0x38, 0x78, 0x2f, 0x50, + 0xbb, 0x60, 0x87, 0x71, 0x27, 0xa5, 0x48, 0x05, 0x94, 0x42, 0x8b, 0xd7, + 0xa9, 0xfd, 0x71, 0xff, 0xf2, 0xfe, 0x0d, 0x1d, 0xb3, 0xce, 0x6e, 0x2f, +}; +static const unsigned char kat1211_nonce[] = {0}; +static const unsigned char kat1211_persstr[] = {0}; +static const unsigned char kat1211_addin0[] = {0}; +static const unsigned char kat1211_addin1[] = {0}; +static const unsigned char kat1211_retbits[] = { + 0x13, 0x89, 0xf2, 0xa6, 0x13, 0x42, 0x35, 0xe0, 0x8e, 0x7a, 0x0b, 0x41, + 0xc4, 0xa1, 0xb5, 0xfd, 0x77, 0xbc, 0xe4, 0x69, 0xfb, 0x68, 0x45, 0xe5, + 0x19, 0xcc, 0xad, 0x38, 0x5d, 0x74, 0x64, 0x9f, 0x22, 0x07, 0xc8, 0x44, + 0x88, 0x55, 0x67, 0x41, 0xd2, 0x7d, 0x64, 0x35, 0x43, 0x7a, 0xd0, 0x88, + 0xd1, 0x1f, 0x52, 0x26, 0x5b, 0x88, 0x2e, 0x47, 0x64, 0x24, 0x02, 0xd1, + 0xc0, 0x88, 0x25, 0x62, +}; +static const struct drbg_kat_no_reseed kat1211_t = { + 10, kat1211_entropyin, kat1211_nonce, kat1211_persstr, + kat1211_addin0, kat1211_addin1, kat1211_retbits +}; +static const struct drbg_kat kat1211 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1211_t +}; + +static const unsigned char kat1212_entropyin[] = { + 0xc1, 0xda, 0xd0, 0xe3, 0x76, 0xaa, 0x2c, 0x35, 0x0e, 0x0d, 0x89, 0xfc, + 0xd2, 0x40, 0x40, 0x99, 0x2c, 0x08, 0xc1, 0x41, 0xad, 0xc3, 0x73, 0xd4, + 0x36, 0x07, 0x86, 0xa0, 0x88, 0x12, 0xd2, 0x91, 0x93, 0x29, 0xb4, 0xf5, + 0xa5, 0xfa, 0xe4, 0x01, 0x6c, 0xb7, 0x69, 0x9b, 0x06, 0x47, 0xed, 0xfa, +}; +static const unsigned char kat1212_nonce[] = {0}; +static const unsigned char kat1212_persstr[] = {0}; +static const unsigned char kat1212_addin0[] = {0}; +static const unsigned char kat1212_addin1[] = {0}; +static const unsigned char kat1212_retbits[] = { + 0xd3, 0x89, 0x91, 0x53, 0x6f, 0xb0, 0x35, 0x09, 0x53, 0x1f, 0xfa, 0xe4, + 0x4c, 0x74, 0x94, 0xf0, 0x5a, 0x73, 0x03, 0x09, 0x20, 0xc2, 0xba, 0xfd, + 0x83, 0x3b, 0xe1, 0xa8, 0xc7, 0xf6, 0xd7, 0x41, 0x60, 0x77, 0xd0, 0x08, + 0x9b, 0xb6, 0x51, 0xb9, 0x6a, 0xd9, 0x64, 0xc2, 0x6f, 0x11, 0xb3, 0x1b, + 0xb0, 0x36, 0x4b, 0x4f, 0x5e, 0x0d, 0xc7, 0xe1, 0x15, 0x04, 0x05, 0x4b, + 0x51, 0x10, 0x21, 0x1a, +}; +static const struct drbg_kat_no_reseed kat1212_t = { + 11, kat1212_entropyin, kat1212_nonce, kat1212_persstr, + kat1212_addin0, kat1212_addin1, kat1212_retbits +}; +static const struct drbg_kat kat1212 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1212_t +}; + +static const unsigned char kat1213_entropyin[] = { + 0x75, 0x17, 0x3e, 0x81, 0xce, 0x87, 0xe7, 0xc8, 0xd0, 0x34, 0x57, 0x61, + 0xee, 0x59, 0xa3, 0xfd, 0x1c, 0x55, 0x5f, 0x37, 0xf7, 0xc2, 0x36, 0xf7, + 0xe3, 0xaa, 0xa5, 0xf5, 0xdd, 0xcb, 0x80, 0x89, 0x46, 0x2e, 0x8e, 0xdb, + 0xe4, 0xe1, 0x9a, 0xec, 0x24, 0x67, 0x68, 0x4a, 0x57, 0x71, 0x67, 0x88, +}; +static const unsigned char kat1213_nonce[] = {0}; +static const unsigned char kat1213_persstr[] = {0}; +static const unsigned char kat1213_addin0[] = {0}; +static const unsigned char kat1213_addin1[] = {0}; +static const unsigned char kat1213_retbits[] = { + 0x58, 0xbb, 0xc5, 0xce, 0x5c, 0x2d, 0x8b, 0x63, 0x30, 0xc5, 0x85, 0x7a, + 0x88, 0x8e, 0xe6, 0xb3, 0xd7, 0x4b, 0x2b, 0xa0, 0x09, 0xc8, 0x55, 0x3c, + 0xc7, 0xb8, 0xad, 0xb5, 0x17, 0x93, 0x86, 0x2e, 0x9c, 0x9c, 0x93, 0x39, + 0x59, 0xea, 0x73, 0xd7, 0x20, 0x78, 0x6e, 0x47, 0x1d, 0xfd, 0xd2, 0xbe, + 0xd5, 0x72, 0xe2, 0x5f, 0x68, 0x3d, 0xcd, 0x6f, 0x7e, 0x72, 0x9d, 0xb0, + 0x25, 0x4f, 0x74, 0xad, +}; +static const struct drbg_kat_no_reseed kat1213_t = { + 12, kat1213_entropyin, kat1213_nonce, kat1213_persstr, + kat1213_addin0, kat1213_addin1, kat1213_retbits +}; +static const struct drbg_kat kat1213 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1213_t +}; + +static const unsigned char kat1214_entropyin[] = { + 0xa7, 0xc5, 0x7c, 0x5a, 0xf2, 0x8a, 0x25, 0x89, 0x26, 0x83, 0x8c, 0x39, + 0xae, 0x62, 0x19, 0x40, 0x05, 0xc9, 0x3a, 0xff, 0xfe, 0x55, 0x92, 0xa6, + 0x85, 0xb1, 0x50, 0xc9, 0xde, 0x3c, 0xcf, 0x79, 0xc2, 0x23, 0x61, 0x66, + 0x74, 0xd6, 0x76, 0x51, 0x7f, 0x4b, 0xd1, 0xa2, 0xfc, 0x3b, 0xd6, 0xec, +}; +static const unsigned char kat1214_nonce[] = {0}; +static const unsigned char kat1214_persstr[] = {0}; +static const unsigned char kat1214_addin0[] = {0}; +static const unsigned char kat1214_addin1[] = {0}; +static const unsigned char kat1214_retbits[] = { + 0xa0, 0xea, 0x3a, 0xf0, 0xcc, 0x95, 0x10, 0x3b, 0xa3, 0xe8, 0x9e, 0x5e, + 0x4a, 0x6b, 0x79, 0x2b, 0xfb, 0x19, 0xee, 0xf9, 0x58, 0x02, 0x55, 0xed, + 0x76, 0xe7, 0x1e, 0xd0, 0xe5, 0x32, 0x58, 0x48, 0x49, 0x7d, 0x77, 0x57, + 0xeb, 0x5c, 0xb3, 0x19, 0x47, 0x5b, 0x77, 0x92, 0x6a, 0xbb, 0x6a, 0x2b, + 0xfb, 0x44, 0x37, 0xcc, 0xff, 0x0c, 0x83, 0x56, 0xc1, 0xb5, 0x70, 0x5d, + 0x85, 0x84, 0x2d, 0x93, +}; +static const struct drbg_kat_no_reseed kat1214_t = { + 13, kat1214_entropyin, kat1214_nonce, kat1214_persstr, + kat1214_addin0, kat1214_addin1, kat1214_retbits +}; +static const struct drbg_kat kat1214 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1214_t +}; + +static const unsigned char kat1215_entropyin[] = { + 0xb7, 0xf7, 0xe4, 0xe6, 0x83, 0x56, 0xb2, 0xac, 0x2c, 0x2c, 0x00, 0x75, + 0xc0, 0xef, 0x5e, 0xc6, 0xf5, 0xa6, 0xf2, 0x25, 0xa1, 0x8d, 0xb0, 0x08, + 0x30, 0x26, 0x1a, 0x95, 0x76, 0x57, 0x71, 0xeb, 0xa7, 0x39, 0xa7, 0xcf, + 0x8a, 0x11, 0x26, 0xc5, 0x89, 0x94, 0xc4, 0x3b, 0x2d, 0x28, 0x02, 0x4a, +}; +static const unsigned char kat1215_nonce[] = {0}; +static const unsigned char kat1215_persstr[] = {0}; +static const unsigned char kat1215_addin0[] = {0}; +static const unsigned char kat1215_addin1[] = {0}; +static const unsigned char kat1215_retbits[] = { + 0xa1, 0x5e, 0x8c, 0xc4, 0x37, 0xa6, 0x00, 0xa5, 0x1d, 0xcf, 0xb7, 0x78, + 0xaf, 0xa2, 0x3d, 0x57, 0x7d, 0x0e, 0x56, 0xb0, 0x04, 0xf5, 0x6e, 0xeb, + 0x28, 0x6e, 0x6c, 0x94, 0x9d, 0x98, 0x2b, 0xdb, 0x93, 0x53, 0xcb, 0xc6, + 0x3d, 0x33, 0xd7, 0xd3, 0x97, 0xce, 0xb4, 0xfe, 0xa5, 0x1a, 0x6d, 0xf0, + 0xb4, 0xd6, 0xd4, 0xcd, 0x32, 0xb9, 0x06, 0x5b, 0xc4, 0x11, 0x0d, 0x79, + 0x0c, 0x61, 0x0e, 0x44, +}; +static const struct drbg_kat_no_reseed kat1215_t = { + 14, kat1215_entropyin, kat1215_nonce, kat1215_persstr, + kat1215_addin0, kat1215_addin1, kat1215_retbits +}; +static const struct drbg_kat kat1215 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1215_t +}; + +static const unsigned char kat1216_entropyin[] = { + 0xf4, 0x5e, 0x9d, 0x04, 0x0c, 0x14, 0x56, 0xf1, 0xc7, 0xf2, 0x6e, 0x7f, + 0x14, 0x64, 0x69, 0xfb, 0xe3, 0x97, 0x30, 0x07, 0xfe, 0x03, 0x72, 0x39, + 0xad, 0x57, 0x62, 0x30, 0x46, 0xe7, 0xec, 0x52, 0x22, 0x1b, 0x22, 0xee, + 0xc2, 0x08, 0xb2, 0x2a, 0xc4, 0xcf, 0x4c, 0xa8, 0xd6, 0x25, 0x38, 0x74, +}; +static const unsigned char kat1216_nonce[] = {0}; +static const unsigned char kat1216_persstr[] = {0}; +static const unsigned char kat1216_addin0[] = { + 0x28, 0x81, 0x9b, 0xc7, 0x9b, 0x92, 0xfc, 0x87, 0x90, 0xeb, 0xdc, 0x99, + 0x81, 0x2c, 0xdc, 0xea, 0x5c, 0x96, 0xe6, 0xfe, 0xab, 0x32, 0x80, 0x1e, + 0xc1, 0x85, 0x1b, 0x9f, 0x46, 0xe8, 0x0e, 0xb6, 0x80, 0x00, 0x28, 0xe6, + 0x1f, 0xbc, 0xcb, 0x6c, 0xcb, 0xe4, 0x2b, 0x06, 0xbf, 0x5a, 0x08, 0x64, +}; +static const unsigned char kat1216_addin1[] = { + 0x41, 0x8c, 0xa8, 0x48, 0x02, 0x7e, 0x1b, 0x3c, 0x84, 0xd6, 0x67, 0x17, + 0xe6, 0xf3, 0x1b, 0xf8, 0x96, 0x84, 0xd5, 0xdb, 0x94, 0xcd, 0x2d, 0x57, + 0x92, 0x33, 0xf7, 0x16, 0xac, 0x70, 0xab, 0x66, 0xcc, 0x7b, 0x01, 0xa6, + 0xf9, 0xab, 0x8c, 0x76, 0x65, 0xfc, 0xc3, 0x7d, 0xba, 0x4a, 0xf1, 0xad, +}; +static const unsigned char kat1216_retbits[] = { + 0x4f, 0x11, 0x40, 0x6b, 0xd3, 0x03, 0xc1, 0x04, 0x24, 0x34, 0x41, 0xa8, + 0xf8, 0x28, 0xbf, 0x02, 0x93, 0xcb, 0x20, 0xac, 0x39, 0x39, 0x20, 0x61, + 0x42, 0x9c, 0x3f, 0x56, 0xc1, 0xf4, 0x26, 0x23, 0x9f, 0x8f, 0x0c, 0x68, + 0x7b, 0x69, 0x89, 0x7a, 0x2c, 0x7c, 0x8c, 0x2b, 0x4f, 0xb5, 0x20, 0xb6, + 0x27, 0x41, 0xff, 0xdd, 0x29, 0xf0, 0x38, 0xb7, 0xc8, 0x2a, 0x9d, 0x00, + 0xa8, 0x90, 0xa3, 0xed, +}; +static const struct drbg_kat_no_reseed kat1216_t = { + 0, kat1216_entropyin, kat1216_nonce, kat1216_persstr, + kat1216_addin0, kat1216_addin1, kat1216_retbits +}; +static const struct drbg_kat kat1216 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1216_t +}; + +static const unsigned char kat1217_entropyin[] = { + 0x93, 0x30, 0x15, 0xbe, 0x05, 0x2c, 0x11, 0x7a, 0xd3, 0xd3, 0x8d, 0xd2, + 0xd1, 0xd5, 0x2b, 0xda, 0x42, 0xd7, 0xf3, 0x69, 0x46, 0x41, 0x8b, 0x00, + 0x6c, 0x67, 0xaa, 0xd4, 0x9d, 0x81, 0x30, 0xe5, 0xec, 0x3f, 0x0c, 0x1d, + 0x6f, 0xfb, 0x0b, 0x6d, 0xa0, 0x02, 0x70, 0xf7, 0x7a, 0xe1, 0x83, 0x62, +}; +static const unsigned char kat1217_nonce[] = {0}; +static const unsigned char kat1217_persstr[] = {0}; +static const unsigned char kat1217_addin0[] = { + 0x0e, 0x5e, 0xcc, 0xdf, 0x74, 0x85, 0x49, 0xf9, 0x4c, 0xab, 0x63, 0xd6, + 0x49, 0x14, 0x5d, 0x4c, 0x3b, 0x84, 0xc7, 0x4a, 0x22, 0x76, 0xd5, 0xc1, + 0x88, 0xcd, 0xeb, 0xf4, 0x17, 0xbc, 0xc9, 0xf5, 0xf1, 0x9d, 0x48, 0x57, + 0xe7, 0x68, 0x23, 0xe0, 0x0b, 0x8f, 0x08, 0xf8, 0xd5, 0x83, 0xa6, 0x5d, +}; +static const unsigned char kat1217_addin1[] = { + 0x12, 0xa0, 0xed, 0x9a, 0xfc, 0x1a, 0x74, 0x56, 0xf8, 0x43, 0x0d, 0x5a, + 0xca, 0x4c, 0xab, 0x30, 0xf7, 0x5e, 0x39, 0xad, 0x70, 0x12, 0x56, 0x6c, + 0x32, 0xd8, 0xc7, 0x53, 0xae, 0x6a, 0x9c, 0x59, 0xe8, 0xee, 0x87, 0x83, + 0x2f, 0xaa, 0xc3, 0xd1, 0x26, 0x05, 0x6b, 0xc9, 0x55, 0x47, 0x93, 0xdb, +}; +static const unsigned char kat1217_retbits[] = { + 0x06, 0x15, 0x80, 0x3d, 0x2a, 0xa2, 0x88, 0x23, 0x44, 0x57, 0x86, 0xa7, + 0xac, 0x99, 0x51, 0xb1, 0x46, 0x19, 0xf2, 0x07, 0x2e, 0x8d, 0xe4, 0x4a, + 0xcf, 0xe0, 0x06, 0x74, 0xa3, 0xd4, 0x0f, 0xea, 0xec, 0x07, 0xaa, 0xee, + 0xee, 0x94, 0x7b, 0x71, 0xc7, 0x53, 0x1c, 0x3a, 0x93, 0x73, 0x7f, 0x34, + 0x15, 0xfc, 0xce, 0x87, 0x35, 0x3c, 0x85, 0x25, 0x8e, 0x23, 0x01, 0xd2, + 0x84, 0x2b, 0x40, 0x8e, +}; +static const struct drbg_kat_no_reseed kat1217_t = { + 1, kat1217_entropyin, kat1217_nonce, kat1217_persstr, + kat1217_addin0, kat1217_addin1, kat1217_retbits +}; +static const struct drbg_kat kat1217 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1217_t +}; + +static const unsigned char kat1218_entropyin[] = { + 0xbd, 0xdc, 0xa8, 0xa3, 0x12, 0x7e, 0xd5, 0x1e, 0xdc, 0x00, 0x8a, 0xcf, + 0x98, 0x9f, 0x5d, 0xa8, 0x2e, 0xa0, 0xa8, 0x5b, 0x7b, 0xb6, 0x8f, 0x66, + 0x55, 0x7e, 0xae, 0xe7, 0x08, 0xfc, 0x37, 0x29, 0xa5, 0x6e, 0xb8, 0xf4, + 0x51, 0x76, 0xb3, 0x9a, 0xec, 0xfc, 0xca, 0xfa, 0xcf, 0x2a, 0xbc, 0x47, +}; +static const unsigned char kat1218_nonce[] = {0}; +static const unsigned char kat1218_persstr[] = {0}; +static const unsigned char kat1218_addin0[] = { + 0xab, 0x75, 0xd2, 0xba, 0xcd, 0xf1, 0x32, 0x35, 0x90, 0x12, 0xaf, 0xf3, + 0x6e, 0xc8, 0x67, 0x95, 0xde, 0xf2, 0x62, 0xc8, 0xf4, 0xb2, 0x3c, 0x23, + 0x1b, 0x26, 0x77, 0x07, 0xd9, 0x4a, 0x7a, 0x50, 0x13, 0x2f, 0xea, 0x85, + 0x70, 0x2e, 0x7a, 0x64, 0xf9, 0x05, 0x17, 0xb4, 0x04, 0x14, 0xda, 0x24, +}; +static const unsigned char kat1218_addin1[] = { + 0x72, 0x17, 0xec, 0x49, 0x7a, 0x68, 0x70, 0x05, 0x00, 0xbb, 0x44, 0x91, + 0x20, 0x66, 0xc2, 0xb2, 0xc8, 0x88, 0xfe, 0xf1, 0x01, 0xe0, 0x0c, 0x32, + 0x0e, 0x3c, 0x28, 0x4e, 0xb1, 0xd4, 0x91, 0x47, 0xc8, 0x64, 0x4a, 0x85, + 0xfb, 0xb5, 0xc1, 0xcf, 0xe1, 0x18, 0xea, 0x43, 0xe5, 0xd5, 0x85, 0xb6, +}; +static const unsigned char kat1218_retbits[] = { + 0x61, 0xfc, 0x09, 0x56, 0x7d, 0x29, 0x77, 0xe5, 0x18, 0xf2, 0x5e, 0x68, + 0xe3, 0x98, 0xb7, 0xbd, 0x2f, 0x73, 0x4b, 0xd5, 0xe1, 0x4e, 0x75, 0xd1, + 0xe9, 0x0b, 0xa1, 0x86, 0xc9, 0xe4, 0x78, 0xe9, 0x80, 0xc9, 0x35, 0x3e, + 0xbf, 0x2b, 0xa6, 0x50, 0x6a, 0x98, 0xe2, 0xb7, 0x28, 0xa2, 0x05, 0xe4, + 0x07, 0x0b, 0xe2, 0xa2, 0x37, 0x2d, 0x68, 0x88, 0x4c, 0xb9, 0x00, 0x08, + 0xcb, 0x60, 0x02, 0xb4, +}; +static const struct drbg_kat_no_reseed kat1218_t = { + 2, kat1218_entropyin, kat1218_nonce, kat1218_persstr, + kat1218_addin0, kat1218_addin1, kat1218_retbits +}; +static const struct drbg_kat kat1218 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1218_t +}; + +static const unsigned char kat1219_entropyin[] = { + 0xb2, 0x14, 0xce, 0x72, 0xad, 0xc2, 0xdc, 0x03, 0x08, 0x52, 0xe8, 0xca, + 0x0d, 0xf4, 0x20, 0x9d, 0x26, 0x92, 0x1c, 0xad, 0x57, 0xa6, 0x7c, 0xa3, + 0x7a, 0xd5, 0xd7, 0x9d, 0xac, 0x3a, 0xd5, 0xca, 0x3b, 0x64, 0x96, 0x84, + 0xbd, 0xfc, 0xf1, 0xc3, 0xd3, 0x94, 0x5a, 0x47, 0x08, 0x18, 0x28, 0x8c, +}; +static const unsigned char kat1219_nonce[] = {0}; +static const unsigned char kat1219_persstr[] = {0}; +static const unsigned char kat1219_addin0[] = { + 0x2f, 0xc2, 0x07, 0xab, 0x0f, 0xc3, 0x09, 0xbb, 0xcf, 0xf4, 0x31, 0x4c, + 0xf4, 0x1e, 0xa1, 0x7f, 0xa1, 0x04, 0xc8, 0x84, 0x9d, 0xdd, 0xba, 0x8a, + 0xd7, 0x0f, 0x3b, 0x01, 0x93, 0xb3, 0x26, 0xd4, 0x0d, 0xb3, 0x3a, 0xfe, + 0xa7, 0x7b, 0x01, 0x0b, 0x7d, 0x31, 0x41, 0xb5, 0x8b, 0xf9, 0x36, 0x8f, +}; +static const unsigned char kat1219_addin1[] = { + 0x8d, 0xfc, 0x72, 0x35, 0x3e, 0x97, 0x10, 0xb3, 0xc5, 0x5c, 0x83, 0x85, + 0xe0, 0x5f, 0xdf, 0x99, 0x2f, 0x47, 0x99, 0xf8, 0x07, 0x62, 0xcc, 0x8e, + 0x70, 0x57, 0x13, 0xd5, 0x28, 0xdf, 0x27, 0xb2, 0xf5, 0x18, 0x8d, 0x79, + 0x39, 0x4c, 0x7d, 0x65, 0x9e, 0x27, 0xc8, 0x11, 0xda, 0xf7, 0xc3, 0xd2, +}; +static const unsigned char kat1219_retbits[] = { + 0x42, 0x83, 0xe9, 0xde, 0x3c, 0xfd, 0x1b, 0x99, 0x54, 0x13, 0xae, 0xa2, + 0x74, 0x78, 0xa3, 0x30, 0x5e, 0xbb, 0x86, 0xc2, 0x5b, 0x91, 0xd0, 0x20, + 0x74, 0x5a, 0x76, 0x38, 0xf4, 0x04, 0x48, 0x4b, 0x87, 0x39, 0x45, 0x0f, + 0x00, 0x65, 0x5b, 0xa8, 0x35, 0x07, 0xf8, 0xa5, 0xbd, 0xff, 0x72, 0x91, + 0x34, 0xf1, 0x5d, 0x40, 0x60, 0x34, 0xa4, 0x58, 0x4b, 0x12, 0x65, 0x5a, + 0x6e, 0xa4, 0xd6, 0x9f, +}; +static const struct drbg_kat_no_reseed kat1219_t = { + 3, kat1219_entropyin, kat1219_nonce, kat1219_persstr, + kat1219_addin0, kat1219_addin1, kat1219_retbits +}; +static const struct drbg_kat kat1219 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1219_t +}; + +static const unsigned char kat1220_entropyin[] = { + 0x65, 0xc2, 0x08, 0xb7, 0x3d, 0xdb, 0x55, 0x50, 0x9a, 0x4c, 0x50, 0x01, + 0x92, 0x02, 0x56, 0xfa, 0xa4, 0x2c, 0xae, 0xa9, 0xd7, 0x87, 0xcb, 0x18, + 0x9e, 0xcb, 0x39, 0x35, 0x7f, 0xe8, 0x90, 0xd6, 0xbe, 0x98, 0x2b, 0xb9, + 0x5d, 0xa4, 0xa6, 0xbd, 0x6b, 0x3f, 0x92, 0xc9, 0xba, 0xab, 0x35, 0x37, +}; +static const unsigned char kat1220_nonce[] = {0}; +static const unsigned char kat1220_persstr[] = {0}; +static const unsigned char kat1220_addin0[] = { + 0x89, 0x9a, 0x22, 0xa7, 0x68, 0xfb, 0xe6, 0x47, 0x3e, 0x4b, 0xc7, 0x04, + 0x8a, 0x1c, 0x3e, 0x73, 0x3f, 0xc4, 0x61, 0xad, 0xe4, 0x71, 0x69, 0x37, + 0x24, 0x06, 0x0b, 0x77, 0x45, 0x82, 0xfa, 0xf2, 0x50, 0x1b, 0x00, 0x6e, + 0xcd, 0x9b, 0x33, 0xee, 0x46, 0x49, 0x75, 0xda, 0x57, 0xe8, 0xe3, 0x49, +}; +static const unsigned char kat1220_addin1[] = { + 0x51, 0xbe, 0x21, 0x81, 0xd7, 0x90, 0xcf, 0x22, 0x9f, 0x24, 0x68, 0xb8, + 0x3d, 0xaa, 0x0f, 0x0b, 0xc7, 0x2c, 0x33, 0x6f, 0xf6, 0x8b, 0x45, 0xc2, + 0xb2, 0x22, 0x89, 0x8e, 0x43, 0xdb, 0xf8, 0x6a, 0xac, 0x37, 0x9f, 0x75, + 0x09, 0x25, 0x2f, 0x73, 0x57, 0x38, 0x31, 0x4b, 0x6e, 0x85, 0xdc, 0x50, +}; +static const unsigned char kat1220_retbits[] = { + 0x24, 0xca, 0xef, 0x40, 0x25, 0xcc, 0xab, 0xc2, 0xb6, 0x38, 0x5b, 0xef, + 0xb5, 0xef, 0x17, 0xd5, 0x4a, 0x59, 0x0c, 0x6f, 0x08, 0x14, 0xdd, 0x59, + 0x13, 0x1d, 0xa6, 0xd5, 0xb8, 0x3d, 0x08, 0xcf, 0x8e, 0xaa, 0xb0, 0xb3, + 0xd5, 0x10, 0xa4, 0x26, 0x58, 0xd1, 0xe8, 0x9e, 0x08, 0x48, 0xef, 0x84, + 0x46, 0x29, 0xc7, 0x9e, 0x62, 0xf6, 0x8c, 0xce, 0x76, 0x5b, 0x7e, 0x9a, + 0x4d, 0x63, 0x60, 0x79, +}; +static const struct drbg_kat_no_reseed kat1220_t = { + 4, kat1220_entropyin, kat1220_nonce, kat1220_persstr, + kat1220_addin0, kat1220_addin1, kat1220_retbits +}; +static const struct drbg_kat kat1220 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1220_t +}; + +static const unsigned char kat1221_entropyin[] = { + 0xdf, 0x9d, 0xcc, 0x7a, 0x7c, 0x42, 0x78, 0x42, 0x31, 0x13, 0x19, 0x6d, + 0x35, 0x94, 0x40, 0x60, 0x55, 0xca, 0xaa, 0xa8, 0x8b, 0xd1, 0xe4, 0x88, + 0xf0, 0x30, 0xd1, 0xf9, 0x42, 0xed, 0x1f, 0x4e, 0xa4, 0x0e, 0x40, 0xde, + 0x2c, 0x90, 0xc6, 0xda, 0x2a, 0xe3, 0xd5, 0xc5, 0x40, 0xc8, 0x0c, 0xb3, +}; +static const unsigned char kat1221_nonce[] = {0}; +static const unsigned char kat1221_persstr[] = {0}; +static const unsigned char kat1221_addin0[] = { + 0xce, 0x1c, 0x87, 0xf0, 0xfa, 0x74, 0xd2, 0x60, 0x2c, 0xdc, 0x75, 0x0f, + 0xbd, 0xaf, 0xcd, 0x13, 0x62, 0x0e, 0x4c, 0x70, 0xf6, 0xe8, 0x1f, 0x09, + 0x5d, 0xb0, 0x16, 0x2e, 0x95, 0x59, 0xd2, 0x00, 0x46, 0xd5, 0xf3, 0x10, + 0xe0, 0x94, 0xc6, 0x79, 0x37, 0x14, 0x03, 0xd2, 0x94, 0x62, 0x11, 0x1c, +}; +static const unsigned char kat1221_addin1[] = { + 0x03, 0xbe, 0x90, 0xc8, 0xde, 0xe4, 0xb3, 0x52, 0x3c, 0x46, 0xcd, 0x70, + 0xdb, 0x02, 0x73, 0xa5, 0x08, 0x45, 0x79, 0x54, 0xe7, 0x58, 0x30, 0x11, + 0xe5, 0xfa, 0x3e, 0xf1, 0x2c, 0xd1, 0xc0, 0xb3, 0x79, 0xaa, 0xba, 0x71, + 0x36, 0xb2, 0x75, 0x5f, 0xf6, 0x33, 0x82, 0x99, 0x3f, 0x4f, 0x91, 0xc1, +}; +static const unsigned char kat1221_retbits[] = { + 0xc3, 0x86, 0x03, 0x41, 0x92, 0xfc, 0x36, 0x92, 0xa3, 0x44, 0xef, 0x39, + 0xe6, 0x82, 0xe0, 0x5d, 0xa1, 0xf5, 0x83, 0x59, 0x12, 0x50, 0x41, 0x6f, + 0x74, 0x06, 0x0f, 0x26, 0x92, 0x00, 0x5e, 0xb9, 0xb6, 0x9a, 0xa6, 0xa8, + 0x2d, 0xc2, 0x14, 0x8d, 0x9c, 0x74, 0xb8, 0x89, 0xeb, 0xfc, 0x2a, 0xc0, + 0x11, 0x13, 0x79, 0x72, 0x0a, 0x3d, 0xd8, 0x87, 0x09, 0xf5, 0x6e, 0xc6, + 0xde, 0xb9, 0x77, 0x8f, +}; +static const struct drbg_kat_no_reseed kat1221_t = { + 5, kat1221_entropyin, kat1221_nonce, kat1221_persstr, + kat1221_addin0, kat1221_addin1, kat1221_retbits +}; +static const struct drbg_kat kat1221 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1221_t +}; + +static const unsigned char kat1222_entropyin[] = { + 0xaa, 0x70, 0x8c, 0x17, 0x13, 0x9d, 0xe7, 0x47, 0x8c, 0xc3, 0x16, 0xf3, + 0x7e, 0x25, 0xd7, 0x5b, 0xea, 0x23, 0xaf, 0x27, 0x94, 0x0c, 0x0d, 0x60, + 0xca, 0xab, 0x4c, 0xcb, 0xa6, 0xd2, 0xf9, 0x0e, 0xab, 0xa8, 0x15, 0x7b, + 0x09, 0xc1, 0x05, 0x71, 0x9f, 0x0d, 0xb5, 0x50, 0xd1, 0x78, 0x48, 0xe8, +}; +static const unsigned char kat1222_nonce[] = {0}; +static const unsigned char kat1222_persstr[] = {0}; +static const unsigned char kat1222_addin0[] = { + 0x07, 0xe3, 0x64, 0x96, 0x49, 0x64, 0x1f, 0x56, 0x0f, 0x32, 0x56, 0xfd, + 0x0e, 0xca, 0xa1, 0x9e, 0xed, 0xa4, 0xc0, 0x51, 0xf9, 0xdc, 0xd9, 0x8c, + 0xe0, 0xb1, 0x4d, 0x0d, 0xec, 0x81, 0x30, 0x42, 0xd9, 0x7c, 0x0f, 0x8f, + 0xd3, 0x9b, 0x2c, 0x8a, 0xf2, 0x5c, 0xe9, 0x4c, 0xaa, 0xa1, 0x23, 0x9c, +}; +static const unsigned char kat1222_addin1[] = { + 0xc2, 0x1d, 0x7a, 0xf7, 0x97, 0x78, 0xb3, 0x3d, 0xb5, 0x12, 0x71, 0x9c, + 0x54, 0xc1, 0xfc, 0x3f, 0xd5, 0x16, 0xf0, 0x17, 0x3f, 0xb8, 0x71, 0x6c, + 0x2b, 0xd9, 0xed, 0xef, 0x3c, 0x41, 0x3c, 0x34, 0x46, 0xf5, 0x93, 0xc5, + 0x78, 0xb4, 0x2c, 0x84, 0x9c, 0x9f, 0xcd, 0x4b, 0x47, 0x0e, 0x9c, 0xa6, +}; +static const unsigned char kat1222_retbits[] = { + 0xf8, 0xbd, 0x6c, 0x9e, 0x55, 0xc6, 0x95, 0x1a, 0x19, 0x3a, 0x1a, 0x69, + 0x4c, 0x6e, 0x15, 0x11, 0x79, 0xce, 0x06, 0xa7, 0xac, 0x9c, 0x50, 0xc2, + 0xaa, 0x33, 0xa5, 0x73, 0x0e, 0x47, 0x2b, 0xd6, 0x2c, 0xa4, 0x8f, 0x52, + 0x3e, 0x96, 0x55, 0x4d, 0x4e, 0xb7, 0x96, 0x97, 0x52, 0x5c, 0x40, 0x95, + 0x61, 0xa5, 0x16, 0xd3, 0xb1, 0x6f, 0xb5, 0x16, 0x65, 0x8d, 0x51, 0x57, + 0x48, 0x3b, 0x54, 0x92, +}; +static const struct drbg_kat_no_reseed kat1222_t = { + 6, kat1222_entropyin, kat1222_nonce, kat1222_persstr, + kat1222_addin0, kat1222_addin1, kat1222_retbits +}; +static const struct drbg_kat kat1222 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1222_t +}; + +static const unsigned char kat1223_entropyin[] = { + 0x4d, 0xda, 0x7c, 0x88, 0x8b, 0x97, 0x8b, 0xaa, 0x0d, 0xa8, 0x16, 0x34, + 0xd3, 0x54, 0xca, 0x96, 0x34, 0x55, 0xff, 0x7a, 0x7a, 0x04, 0xba, 0xf5, + 0xe6, 0x66, 0xd6, 0x18, 0xb3, 0xb9, 0x39, 0x74, 0x8c, 0x55, 0x44, 0xb2, + 0x33, 0xa7, 0x3a, 0x2a, 0x36, 0x06, 0xa9, 0xf4, 0x3a, 0x79, 0x95, 0xf9, +}; +static const unsigned char kat1223_nonce[] = {0}; +static const unsigned char kat1223_persstr[] = {0}; +static const unsigned char kat1223_addin0[] = { + 0x35, 0x10, 0xd9, 0x64, 0xec, 0x19, 0xc0, 0x95, 0x99, 0x49, 0xcd, 0x4c, + 0xa8, 0x92, 0x75, 0x89, 0xf9, 0xda, 0x23, 0x27, 0xea, 0x48, 0xac, 0xaa, + 0x88, 0x0e, 0xa1, 0xe7, 0x06, 0xcb, 0x61, 0xa6, 0xd0, 0x0a, 0xc5, 0x97, + 0xf1, 0x81, 0x23, 0xc8, 0xd2, 0x3f, 0xe4, 0x90, 0xc2, 0x22, 0x94, 0x7d, +}; +static const unsigned char kat1223_addin1[] = { + 0xfd, 0xf3, 0xd5, 0x07, 0x8f, 0xd4, 0x6c, 0x8f, 0xb6, 0x58, 0xe7, 0xed, + 0xd6, 0x6d, 0xf6, 0x5d, 0xa2, 0xfd, 0xca, 0x4a, 0xe3, 0x8a, 0xac, 0x93, + 0x18, 0xd9, 0x4f, 0xc6, 0x31, 0x22, 0x19, 0x86, 0x15, 0x19, 0x69, 0xca, + 0xe0, 0x02, 0x97, 0x2e, 0x6e, 0x61, 0x15, 0x74, 0xdd, 0x33, 0xdd, 0x2d, +}; +static const unsigned char kat1223_retbits[] = { + 0x9c, 0x83, 0xba, 0x18, 0x80, 0xa7, 0x57, 0x87, 0x01, 0x98, 0xcd, 0xe8, + 0x6e, 0x02, 0x52, 0xaa, 0x93, 0x89, 0xff, 0xd9, 0x7d, 0xbb, 0x3c, 0x3f, + 0xdb, 0x29, 0x02, 0xba, 0x90, 0x28, 0xbd, 0xbf, 0x75, 0xcf, 0xdf, 0x34, + 0x8b, 0xdc, 0x80, 0x71, 0xef, 0x33, 0xb2, 0x64, 0xe2, 0xbb, 0x74, 0xc1, + 0x61, 0x3b, 0x78, 0xb7, 0x6e, 0x56, 0x33, 0x12, 0x6e, 0xdc, 0xec, 0x29, + 0x61, 0x94, 0x02, 0x8a, +}; +static const struct drbg_kat_no_reseed kat1223_t = { + 7, kat1223_entropyin, kat1223_nonce, kat1223_persstr, + kat1223_addin0, kat1223_addin1, kat1223_retbits +}; +static const struct drbg_kat kat1223 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1223_t +}; + +static const unsigned char kat1224_entropyin[] = { + 0x38, 0x31, 0xae, 0x24, 0x36, 0x8f, 0xb0, 0xda, 0x37, 0xa0, 0xc7, 0xe9, + 0x6d, 0x4b, 0x93, 0x1d, 0xda, 0xcb, 0x4b, 0x46, 0xb4, 0x89, 0xbe, 0x10, + 0xff, 0x71, 0xf6, 0x1f, 0xfd, 0xe5, 0xf4, 0xd7, 0x6c, 0x9f, 0x17, 0xa3, + 0x42, 0x36, 0xe7, 0x4c, 0xfa, 0x49, 0x4e, 0x1f, 0xd6, 0x1f, 0xfa, 0xbc, +}; +static const unsigned char kat1224_nonce[] = {0}; +static const unsigned char kat1224_persstr[] = {0}; +static const unsigned char kat1224_addin0[] = { + 0xef, 0x0e, 0xbb, 0x9f, 0x24, 0x70, 0x39, 0xf3, 0x09, 0xf7, 0x54, 0x66, + 0xb4, 0x98, 0xed, 0x67, 0xa4, 0x03, 0x40, 0x24, 0xbe, 0x38, 0x2e, 0x0a, + 0x42, 0x0f, 0xc3, 0x46, 0xd6, 0xf4, 0x22, 0x2e, 0x87, 0xcb, 0xe0, 0x80, + 0xf7, 0x5f, 0x23, 0x82, 0xd7, 0x6f, 0xb7, 0x9b, 0x8f, 0xb6, 0x86, 0x41, +}; +static const unsigned char kat1224_addin1[] = { + 0x5a, 0xb7, 0x86, 0xc4, 0x63, 0x19, 0xd8, 0xd9, 0xd6, 0xb7, 0x4e, 0xc6, + 0xf4, 0x13, 0x1d, 0x48, 0x37, 0xb7, 0xec, 0xaa, 0xd3, 0xce, 0xe7, 0x14, + 0x07, 0xf1, 0xb8, 0x69, 0x71, 0x16, 0xa1, 0x73, 0xab, 0x17, 0x64, 0x09, + 0x8b, 0xe9, 0xaa, 0x53, 0xca, 0x9e, 0xf2, 0xee, 0x1c, 0x6d, 0x55, 0x63, +}; +static const unsigned char kat1224_retbits[] = { + 0x1d, 0x60, 0x74, 0xd6, 0x34, 0xec, 0x13, 0xd5, 0xf8, 0xa0, 0x84, 0x20, + 0x5a, 0x04, 0x8b, 0x42, 0x00, 0xf1, 0xed, 0xb2, 0xa1, 0x54, 0x21, 0x97, + 0x07, 0xc2, 0xcb, 0xdf, 0x64, 0xab, 0x77, 0xff, 0x9d, 0xfa, 0xb0, 0xba, + 0xb1, 0xd2, 0xae, 0x14, 0x14, 0x93, 0x11, 0x50, 0x53, 0x03, 0x1f, 0xcf, + 0xb4, 0x2a, 0xd0, 0x15, 0x84, 0x42, 0xa4, 0x63, 0x2d, 0x76, 0xf6, 0x96, + 0x14, 0x2c, 0x98, 0xce, +}; +static const struct drbg_kat_no_reseed kat1224_t = { + 8, kat1224_entropyin, kat1224_nonce, kat1224_persstr, + kat1224_addin0, kat1224_addin1, kat1224_retbits +}; +static const struct drbg_kat kat1224 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1224_t +}; + +static const unsigned char kat1225_entropyin[] = { + 0x13, 0x87, 0xff, 0x2f, 0x0c, 0x25, 0x0f, 0x60, 0x1b, 0xab, 0xa3, 0xb6, + 0x04, 0xca, 0x92, 0xc6, 0x08, 0xbd, 0xd8, 0xed, 0xb6, 0x2a, 0xe7, 0xfd, + 0x57, 0xb1, 0xfa, 0xd7, 0x46, 0x34, 0x3a, 0xe7, 0x23, 0x73, 0x5d, 0xc5, + 0x6c, 0xa1, 0x54, 0x2c, 0x9a, 0x94, 0x3b, 0xef, 0x58, 0xaa, 0x6f, 0xa6, +}; +static const unsigned char kat1225_nonce[] = {0}; +static const unsigned char kat1225_persstr[] = {0}; +static const unsigned char kat1225_addin0[] = { + 0xc8, 0xc2, 0x54, 0x9f, 0xe7, 0x74, 0xea, 0x88, 0x38, 0x35, 0xb9, 0xfb, + 0xf8, 0x40, 0xd3, 0x87, 0x34, 0x4d, 0xe9, 0x1d, 0xee, 0xe6, 0xb5, 0x60, + 0x7a, 0xf7, 0x2c, 0xed, 0x77, 0x1e, 0x76, 0x60, 0x9c, 0x46, 0x20, 0xd3, + 0xfd, 0x78, 0x87, 0x75, 0xd1, 0xd2, 0xe1, 0x6e, 0xde, 0x8e, 0x49, 0xa2, +}; +static const unsigned char kat1225_addin1[] = { + 0x57, 0xe3, 0x30, 0xfd, 0xca, 0xcc, 0x74, 0x89, 0xe5, 0xda, 0x1e, 0x73, + 0x16, 0xc0, 0x46, 0xc5, 0xc3, 0xe7, 0x51, 0xa3, 0x12, 0x07, 0x7c, 0x0e, + 0xa1, 0x7c, 0x2a, 0xf9, 0x27, 0xe0, 0xdc, 0x87, 0x4b, 0x45, 0x6b, 0x5d, + 0x18, 0x3f, 0x04, 0x32, 0xb8, 0x5f, 0xad, 0xd6, 0xba, 0x5a, 0xbc, 0x8f, +}; +static const unsigned char kat1225_retbits[] = { + 0xc4, 0xe9, 0xac, 0xd5, 0xea, 0x34, 0xe4, 0x56, 0xea, 0xbc, 0x8e, 0xaf, + 0x7d, 0xc3, 0xb7, 0x9f, 0x57, 0x60, 0x20, 0x92, 0x59, 0xd0, 0xea, 0x69, + 0xb2, 0xba, 0x91, 0x47, 0xe8, 0xc1, 0x72, 0xa4, 0xde, 0xc8, 0xd2, 0xc2, + 0x15, 0xe4, 0x09, 0x3c, 0xb7, 0x69, 0x9b, 0x68, 0xc7, 0xf8, 0xb7, 0xa5, + 0xfe, 0x54, 0x71, 0xd6, 0xc5, 0x17, 0xf1, 0x52, 0x3b, 0x10, 0xca, 0xbc, + 0x19, 0xd2, 0x81, 0xb3, +}; +static const struct drbg_kat_no_reseed kat1225_t = { + 9, kat1225_entropyin, kat1225_nonce, kat1225_persstr, + kat1225_addin0, kat1225_addin1, kat1225_retbits +}; +static const struct drbg_kat kat1225 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1225_t +}; + +static const unsigned char kat1226_entropyin[] = { + 0xc4, 0x0f, 0x66, 0x94, 0x7a, 0x04, 0x12, 0x8a, 0xbf, 0x91, 0x42, 0x71, + 0x66, 0x28, 0xbb, 0x43, 0x84, 0xb1, 0x5c, 0x71, 0x40, 0xa4, 0x10, 0xf2, + 0xee, 0x30, 0xe2, 0xd8, 0x55, 0xe1, 0x15, 0x3d, 0x8e, 0xaf, 0x6f, 0xd4, + 0xef, 0x24, 0xaa, 0xd9, 0x3f, 0x0f, 0x85, 0xe1, 0x7b, 0xbe, 0xa5, 0x30, +}; +static const unsigned char kat1226_nonce[] = {0}; +static const unsigned char kat1226_persstr[] = {0}; +static const unsigned char kat1226_addin0[] = { + 0xb6, 0x57, 0xd5, 0xf9, 0x61, 0x7b, 0xdb, 0xd2, 0x6b, 0xfa, 0x68, 0x30, + 0xa8, 0xc1, 0x81, 0x9c, 0xba, 0xaa, 0x4a, 0x95, 0x53, 0x2c, 0xb7, 0xbe, + 0x6b, 0xf2, 0xc3, 0x24, 0x2e, 0x3f, 0xb0, 0x12, 0x4c, 0xec, 0x3f, 0xb2, + 0xa9, 0x8d, 0x0d, 0x4d, 0xee, 0x0d, 0x52, 0x1f, 0xae, 0xef, 0xb0, 0xf3, +}; +static const unsigned char kat1226_addin1[] = { + 0xaf, 0x43, 0x7f, 0xa2, 0x36, 0x25, 0x6f, 0x5d, 0xfe, 0x2f, 0x00, 0x58, + 0x77, 0x24, 0xd6, 0xed, 0x2a, 0xb7, 0x0b, 0x63, 0x0e, 0x7f, 0x89, 0x8e, + 0xa1, 0x5f, 0x7d, 0x40, 0xb2, 0xc7, 0x19, 0x75, 0x41, 0x73, 0x48, 0x89, + 0x3a, 0x5d, 0xc6, 0x2f, 0x8a, 0x43, 0xa1, 0x7a, 0x16, 0xcd, 0xb1, 0x98, +}; +static const unsigned char kat1226_retbits[] = { + 0xf5, 0x91, 0x69, 0x30, 0xe9, 0x9f, 0x8a, 0x26, 0x07, 0xb1, 0x03, 0xe4, + 0x72, 0x18, 0x15, 0xf5, 0x64, 0xc7, 0x94, 0xb7, 0x99, 0x2d, 0x17, 0x8a, + 0xf9, 0x92, 0x44, 0xdc, 0x6d, 0x42, 0x1d, 0x09, 0x5d, 0xe1, 0xac, 0x72, + 0x14, 0x6b, 0xf3, 0x74, 0xd9, 0x6f, 0x92, 0x1d, 0xb5, 0x6d, 0xff, 0x7f, + 0xcd, 0xca, 0xd9, 0xf5, 0x9e, 0x4e, 0x8b, 0x1f, 0xc5, 0xb1, 0x36, 0x46, + 0x45, 0xe6, 0x5c, 0x4f, +}; +static const struct drbg_kat_no_reseed kat1226_t = { + 10, kat1226_entropyin, kat1226_nonce, kat1226_persstr, + kat1226_addin0, kat1226_addin1, kat1226_retbits +}; +static const struct drbg_kat kat1226 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1226_t +}; + +static const unsigned char kat1227_entropyin[] = { + 0x9c, 0x21, 0x8d, 0x82, 0x6c, 0xaa, 0x82, 0x7a, 0xd2, 0xe4, 0x80, 0x24, + 0x38, 0x0b, 0xd6, 0x90, 0x2d, 0xfb, 0x09, 0x74, 0x6f, 0x3a, 0xdb, 0x8e, + 0x12, 0x61, 0xa5, 0x43, 0xf9, 0x6e, 0xa3, 0xca, 0x9c, 0x76, 0xad, 0x1b, + 0x5e, 0xff, 0xd0, 0x58, 0x08, 0xbd, 0x75, 0xdb, 0xa0, 0xf3, 0x98, 0xd2, +}; +static const unsigned char kat1227_nonce[] = {0}; +static const unsigned char kat1227_persstr[] = {0}; +static const unsigned char kat1227_addin0[] = { + 0x1b, 0x8b, 0x55, 0x2e, 0x26, 0x25, 0x6b, 0x8f, 0x6b, 0xc6, 0x7d, 0x71, + 0xa2, 0x56, 0x0c, 0x4e, 0x40, 0x74, 0xff, 0x8b, 0x56, 0x9e, 0x5f, 0x35, + 0x4e, 0x0e, 0xf5, 0x22, 0xbc, 0x2d, 0x63, 0x20, 0x3c, 0x8b, 0x2e, 0x52, + 0xe1, 0x14, 0x9c, 0x68, 0xd2, 0x36, 0xa2, 0x6a, 0xf0, 0xfe, 0x7c, 0xb1, +}; +static const unsigned char kat1227_addin1[] = { + 0xeb, 0x8e, 0x4d, 0xf9, 0xeb, 0x7a, 0x70, 0xbd, 0x99, 0x96, 0xfb, 0x92, + 0xdc, 0x51, 0x5e, 0x2f, 0xb1, 0x05, 0x93, 0x81, 0x37, 0x03, 0x9a, 0x70, + 0xed, 0xa8, 0x4b, 0xed, 0xb6, 0x57, 0x37, 0xc9, 0xf2, 0x17, 0x5e, 0xe6, + 0xa5, 0x0e, 0x6a, 0x8b, 0xda, 0x9d, 0xe1, 0xf0, 0x42, 0xe2, 0x8f, 0xa5, +}; +static const unsigned char kat1227_retbits[] = { + 0xfa, 0xa7, 0x49, 0xb8, 0x44, 0xe5, 0x94, 0x24, 0x96, 0xb8, 0x73, 0x6e, + 0xa7, 0x73, 0x92, 0x28, 0xbf, 0xa8, 0xf2, 0x4a, 0x91, 0xf4, 0xc4, 0x05, + 0x5c, 0x0b, 0x55, 0x01, 0x93, 0xa6, 0xd6, 0x5e, 0xa9, 0x81, 0x80, 0x93, + 0x2f, 0x59, 0x3e, 0x95, 0xef, 0xf3, 0x55, 0xbb, 0xab, 0x37, 0x7e, 0x30, + 0xca, 0xc1, 0x51, 0x0a, 0x38, 0xa8, 0x7f, 0x0d, 0x0a, 0x78, 0xd4, 0x90, + 0x95, 0xc7, 0x30, 0x51, +}; +static const struct drbg_kat_no_reseed kat1227_t = { + 11, kat1227_entropyin, kat1227_nonce, kat1227_persstr, + kat1227_addin0, kat1227_addin1, kat1227_retbits +}; +static const struct drbg_kat kat1227 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1227_t +}; + +static const unsigned char kat1228_entropyin[] = { + 0x4f, 0x51, 0x8c, 0x59, 0x42, 0x83, 0xe1, 0xf0, 0x3f, 0x22, 0xab, 0x88, + 0xc3, 0x52, 0x5b, 0x1e, 0xb9, 0x3b, 0x7c, 0x00, 0x22, 0x8b, 0xb5, 0xc1, + 0x5b, 0x90, 0x0f, 0x35, 0x8c, 0x34, 0x70, 0x98, 0x13, 0x5d, 0x84, 0x6a, + 0xed, 0xc3, 0xc4, 0x39, 0x0d, 0x9b, 0x09, 0xa0, 0xfc, 0x2e, 0x3e, 0x7f, +}; +static const unsigned char kat1228_nonce[] = {0}; +static const unsigned char kat1228_persstr[] = {0}; +static const unsigned char kat1228_addin0[] = { + 0x8f, 0xe6, 0x64, 0xe9, 0x01, 0xbb, 0x97, 0x87, 0x97, 0x80, 0x01, 0xc3, + 0xa8, 0xf1, 0x71, 0x5f, 0xf9, 0xe3, 0xff, 0x6b, 0x52, 0xfa, 0x9d, 0xd4, + 0x68, 0x03, 0xfd, 0xc1, 0x16, 0x3f, 0x61, 0x23, 0x15, 0x8e, 0x6e, 0x31, + 0xe9, 0xdb, 0x4f, 0x6f, 0x9e, 0xba, 0x42, 0xcb, 0xf8, 0x82, 0xec, 0xe1, +}; +static const unsigned char kat1228_addin1[] = { + 0xac, 0xac, 0xde, 0xbe, 0x5e, 0xeb, 0xb9, 0x15, 0x60, 0x72, 0xde, 0x7e, + 0x08, 0xe1, 0x2c, 0x80, 0x2f, 0xd0, 0x1b, 0xd2, 0xac, 0x14, 0x64, 0x2c, + 0xe9, 0x09, 0x6b, 0x7c, 0x6c, 0x11, 0xdd, 0x5a, 0x5e, 0xfb, 0x59, 0xd9, + 0x08, 0xfe, 0xa7, 0x51, 0xeb, 0x11, 0x1a, 0x27, 0x94, 0x4a, 0x01, 0x99, +}; +static const unsigned char kat1228_retbits[] = { + 0x0e, 0x8c, 0x6d, 0x1e, 0xa3, 0x28, 0xd1, 0x4e, 0x8f, 0x0d, 0x66, 0x32, + 0xd4, 0xb4, 0xea, 0x71, 0x9f, 0xa5, 0x08, 0xcb, 0x3d, 0x34, 0x0b, 0x18, + 0x4f, 0xdf, 0xf2, 0x3f, 0xa2, 0xf2, 0x4f, 0x71, 0xa6, 0x95, 0x47, 0x5e, + 0xc9, 0x21, 0x9a, 0x76, 0x3b, 0x1f, 0x3e, 0x4f, 0x59, 0xfe, 0x10, 0x95, + 0xa2, 0x04, 0xcb, 0xe5, 0x0d, 0xb8, 0xb2, 0x7d, 0x29, 0xad, 0xb7, 0xcd, + 0x2d, 0xb4, 0x5e, 0xce, +}; +static const struct drbg_kat_no_reseed kat1228_t = { + 12, kat1228_entropyin, kat1228_nonce, kat1228_persstr, + kat1228_addin0, kat1228_addin1, kat1228_retbits +}; +static const struct drbg_kat kat1228 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1228_t +}; + +static const unsigned char kat1229_entropyin[] = { + 0x65, 0xa0, 0x36, 0x17, 0xcb, 0x07, 0x51, 0xa2, 0x6a, 0x23, 0x65, 0x6e, + 0xd9, 0xc4, 0xec, 0x35, 0xfb, 0x29, 0xf1, 0x70, 0xbe, 0x8d, 0x12, 0x53, + 0xb2, 0x0b, 0x2a, 0xa5, 0x00, 0xdc, 0xb6, 0x00, 0x6e, 0xa6, 0x77, 0x89, + 0xf2, 0xc9, 0xa6, 0x97, 0x52, 0x52, 0xe4, 0x91, 0xcd, 0xfd, 0xa1, 0xe6, +}; +static const unsigned char kat1229_nonce[] = {0}; +static const unsigned char kat1229_persstr[] = {0}; +static const unsigned char kat1229_addin0[] = { + 0x5d, 0x1e, 0x05, 0x26, 0x5d, 0x4f, 0xf7, 0x43, 0xfa, 0x62, 0xa8, 0xc1, + 0x90, 0x66, 0x4b, 0xe5, 0x83, 0xde, 0xb7, 0x3e, 0x18, 0x0b, 0xba, 0x99, + 0x74, 0x77, 0xd4, 0xec, 0x6c, 0xa7, 0x4d, 0x23, 0x46, 0x93, 0xc3, 0x77, + 0x67, 0x7e, 0xdb, 0xff, 0xf4, 0x49, 0x6c, 0x7d, 0x79, 0x87, 0xd1, 0xb4, +}; +static const unsigned char kat1229_addin1[] = { + 0xbb, 0x6e, 0x80, 0x53, 0x97, 0xcc, 0xe7, 0x0a, 0x17, 0x1f, 0x4e, 0xfc, + 0xa4, 0x27, 0x2c, 0x80, 0xfa, 0x94, 0x67, 0xdb, 0xe8, 0xb8, 0x5d, 0xc7, + 0xd1, 0xa5, 0x43, 0x76, 0xab, 0xe5, 0x3b, 0x34, 0x52, 0x20, 0xbe, 0x90, + 0xf2, 0xe5, 0x28, 0xea, 0xf9, 0xee, 0x8d, 0x54, 0x71, 0x7d, 0x79, 0x4a, +}; +static const unsigned char kat1229_retbits[] = { + 0xe3, 0x9c, 0xb1, 0xa9, 0x43, 0x00, 0x36, 0xbb, 0xfa, 0xf6, 0x0c, 0x20, + 0x7e, 0xb5, 0x35, 0x6e, 0xa4, 0x02, 0x81, 0xec, 0x30, 0x54, 0x67, 0x8a, + 0x0a, 0xa8, 0x11, 0xb7, 0xc1, 0x90, 0x64, 0xef, 0x98, 0xda, 0x77, 0x66, + 0x9b, 0x6f, 0x64, 0x92, 0x91, 0x33, 0x12, 0x65, 0x14, 0xf0, 0xcb, 0xe1, + 0x5e, 0xfe, 0x44, 0xd0, 0xb2, 0x33, 0x09, 0xe2, 0x45, 0x9e, 0x40, 0xb4, + 0x67, 0x4d, 0x7e, 0x78, +}; +static const struct drbg_kat_no_reseed kat1229_t = { + 13, kat1229_entropyin, kat1229_nonce, kat1229_persstr, + kat1229_addin0, kat1229_addin1, kat1229_retbits +}; +static const struct drbg_kat kat1229 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1229_t +}; + +static const unsigned char kat1230_entropyin[] = { + 0x2d, 0xc3, 0x5e, 0x79, 0x8e, 0x7c, 0xbb, 0x05, 0xd1, 0x44, 0x37, 0xa4, + 0xd8, 0x5f, 0x52, 0x9f, 0x81, 0x3e, 0x88, 0x46, 0xe4, 0x0e, 0xee, 0xe2, + 0x07, 0x9c, 0x02, 0x3a, 0xd2, 0x28, 0xb8, 0x4a, 0x7e, 0xc9, 0x11, 0xa4, + 0x77, 0x71, 0x0f, 0xd1, 0x82, 0x88, 0x37, 0x2b, 0x3b, 0x4e, 0x4d, 0x71, +}; +static const unsigned char kat1230_nonce[] = {0}; +static const unsigned char kat1230_persstr[] = {0}; +static const unsigned char kat1230_addin0[] = { + 0x67, 0xcd, 0x37, 0xe1, 0x42, 0x22, 0xe5, 0x96, 0x6d, 0x24, 0x3b, 0xb4, + 0x4a, 0xab, 0xb3, 0x2b, 0x07, 0x50, 0x22, 0x0f, 0x75, 0x54, 0x69, 0x53, + 0x98, 0x16, 0x31, 0xb9, 0x48, 0x6a, 0x37, 0x3b, 0xd6, 0x92, 0x14, 0xbf, + 0xa1, 0xda, 0x28, 0x3c, 0xc7, 0x30, 0xec, 0x66, 0xaf, 0x1b, 0xe6, 0xc0, +}; +static const unsigned char kat1230_addin1[] = { + 0x1c, 0x0f, 0x67, 0xce, 0x45, 0x90, 0x99, 0xf3, 0x99, 0x3b, 0xc8, 0xee, + 0x4a, 0x45, 0x50, 0xd3, 0xe7, 0xde, 0xc1, 0xa5, 0x22, 0x52, 0x80, 0xec, + 0xdb, 0x00, 0xac, 0x68, 0xe1, 0x7c, 0x7c, 0xf4, 0x0a, 0xfc, 0x5e, 0x67, + 0x94, 0x20, 0x8e, 0x57, 0x42, 0xc0, 0x01, 0x2e, 0x87, 0xd5, 0x71, 0x1c, +}; +static const unsigned char kat1230_retbits[] = { + 0x26, 0x16, 0x7f, 0xf9, 0x82, 0x0a, 0xa2, 0x3a, 0xb6, 0x1f, 0x78, 0x72, + 0xe0, 0x07, 0xdd, 0x25, 0xd5, 0x8c, 0x7f, 0x82, 0xea, 0xcb, 0x94, 0x74, + 0x28, 0x07, 0x31, 0xa5, 0x50, 0xc8, 0xb8, 0x99, 0xe0, 0x80, 0x74, 0xd9, + 0x10, 0xd5, 0x76, 0x93, 0x9f, 0x87, 0xe9, 0x00, 0x18, 0x98, 0x7e, 0x0b, + 0xff, 0x48, 0xda, 0x03, 0xaa, 0xab, 0xaa, 0x9b, 0x7f, 0xae, 0xad, 0xdd, + 0x65, 0xfd, 0xf5, 0xe2, +}; +static const struct drbg_kat_no_reseed kat1230_t = { + 14, kat1230_entropyin, kat1230_nonce, kat1230_persstr, + kat1230_addin0, kat1230_addin1, kat1230_retbits +}; +static const struct drbg_kat kat1230 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1230_t +}; + +static const unsigned char kat1231_entropyin[] = { + 0x22, 0xa8, 0x9e, 0xe0, 0xe3, 0x7b, 0x54, 0xea, 0x63, 0x68, 0x63, 0xd9, + 0xfe, 0xd1, 0x08, 0x21, 0xf1, 0x95, 0x2a, 0x42, 0x84, 0x88, 0xd5, 0x28, + 0xec, 0xeb, 0x9d, 0x2e, 0xc6, 0x9d, 0x57, 0x3e, 0xc6, 0x21, 0x62, 0x16, + 0xfb, 0x3e, 0x8f, 0x72, 0xa1, 0x48, 0xa5, 0xad, 0xa9, 0xd6, 0x20, 0xb1, +}; +static const unsigned char kat1231_nonce[] = {0}; +static const unsigned char kat1231_persstr[] = { + 0x95, 0x3c, 0x10, 0xba, 0xdc, 0xbc, 0xd4, 0x5f, 0xb4, 0xe5, 0x47, 0x58, + 0x26, 0x47, 0x7f, 0xc1, 0x37, 0xac, 0x96, 0xa4, 0x9a, 0xd5, 0x00, 0x5f, + 0xb1, 0x4b, 0xda, 0xf6, 0x46, 0x8a, 0xe7, 0xf4, 0x6c, 0x5d, 0x0d, 0xe2, + 0x2d, 0x30, 0x4a, 0xfc, 0x67, 0x98, 0x96, 0x15, 0xad, 0xc2, 0xe9, 0x83, +}; +static const unsigned char kat1231_addin0[] = {0}; +static const unsigned char kat1231_addin1[] = {0}; +static const unsigned char kat1231_retbits[] = { + 0xf7, 0xfa, 0xb6, 0xa6, 0xfc, 0xf4, 0x45, 0xf0, 0xa0, 0x43, 0x4b, 0x2a, + 0xa0, 0xc6, 0x10, 0xbd, 0xef, 0x54, 0x89, 0xec, 0xd9, 0x54, 0x14, 0x63, + 0x46, 0x23, 0xad, 0xd1, 0x8a, 0x9f, 0x88, 0x8b, 0xca, 0x6b, 0xe1, 0x51, + 0x31, 0x2d, 0x1b, 0x9e, 0x8f, 0x83, 0xbd, 0x0a, 0xca, 0xd6, 0x23, 0x4d, + 0x3b, 0xcc, 0xc1, 0x1b, 0x63, 0xa4, 0x0d, 0x6f, 0xbf, 0xf4, 0x48, 0xf6, + 0x7d, 0xb0, 0xb9, 0x1f, +}; +static const struct drbg_kat_no_reseed kat1231_t = { + 0, kat1231_entropyin, kat1231_nonce, kat1231_persstr, + kat1231_addin0, kat1231_addin1, kat1231_retbits +}; +static const struct drbg_kat kat1231 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1231_t +}; + +static const unsigned char kat1232_entropyin[] = { + 0xa5, 0xca, 0x32, 0xff, 0x18, 0x30, 0x55, 0x55, 0xd3, 0x2e, 0x27, 0x0f, + 0x17, 0x05, 0x29, 0x23, 0x2c, 0x45, 0x87, 0x79, 0xea, 0xac, 0xe2, 0x21, + 0xac, 0x49, 0x58, 0xb4, 0x22, 0x6d, 0xf8, 0x18, 0x9e, 0x42, 0xb0, 0x84, + 0x4f, 0xc7, 0x65, 0x75, 0x1a, 0x62, 0x91, 0xa6, 0x0a, 0x35, 0xd8, 0xb4, +}; +static const unsigned char kat1232_nonce[] = {0}; +static const unsigned char kat1232_persstr[] = { + 0xf4, 0x2a, 0x3a, 0x32, 0xdc, 0x92, 0xa3, 0xee, 0xff, 0x65, 0x8c, 0x34, + 0x9e, 0xb2, 0xe1, 0x81, 0x56, 0x44, 0x58, 0xc2, 0x02, 0xaa, 0x92, 0x2e, + 0xc4, 0x36, 0x4e, 0x3a, 0x93, 0xb2, 0xeb, 0xdf, 0xb5, 0x8e, 0xf7, 0x8f, + 0xc7, 0x23, 0x7b, 0x70, 0xd8, 0xa2, 0x61, 0xbc, 0xf3, 0x0b, 0xd1, 0xb6, +}; +static const unsigned char kat1232_addin0[] = {0}; +static const unsigned char kat1232_addin1[] = {0}; +static const unsigned char kat1232_retbits[] = { + 0x00, 0x85, 0x1c, 0xac, 0x32, 0x04, 0x32, 0x6d, 0x97, 0xb5, 0xf2, 0x6c, + 0xd0, 0xbc, 0x05, 0xfe, 0xaf, 0xc3, 0x4f, 0x56, 0xb5, 0xb7, 0xde, 0xf2, + 0x64, 0x0b, 0xf5, 0xa1, 0x2d, 0xa0, 0x09, 0x0d, 0x85, 0x32, 0x0f, 0x31, + 0x32, 0xfe, 0x72, 0x12, 0xc8, 0x6d, 0x65, 0xf3, 0xb9, 0x38, 0x36, 0x6e, + 0xae, 0x25, 0xcd, 0x92, 0x33, 0xc0, 0xf9, 0x94, 0x1a, 0x70, 0xf9, 0x9e, + 0x79, 0x5c, 0xde, 0x4c, +}; +static const struct drbg_kat_no_reseed kat1232_t = { + 1, kat1232_entropyin, kat1232_nonce, kat1232_persstr, + kat1232_addin0, kat1232_addin1, kat1232_retbits +}; +static const struct drbg_kat kat1232 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1232_t +}; + +static const unsigned char kat1233_entropyin[] = { + 0x2e, 0x90, 0xb2, 0xda, 0xff, 0xc3, 0xdd, 0xda, 0x43, 0x8c, 0x38, 0xc1, + 0xbd, 0xd6, 0xe0, 0x7d, 0x78, 0xc8, 0x62, 0x22, 0x5d, 0x9d, 0x10, 0xb5, + 0x0a, 0x4d, 0x8e, 0x3e, 0x32, 0xcb, 0x63, 0xe2, 0x81, 0x01, 0xc0, 0x6d, + 0xd2, 0x0e, 0x2d, 0x17, 0x4d, 0x0f, 0x4e, 0xa1, 0xbd, 0xde, 0xe4, 0x0a, +}; +static const unsigned char kat1233_nonce[] = {0}; +static const unsigned char kat1233_persstr[] = { + 0xf3, 0x49, 0xed, 0x3b, 0x77, 0x91, 0x84, 0xb8, 0x04, 0x8f, 0x83, 0x3e, + 0x79, 0x75, 0x15, 0x74, 0xc4, 0x85, 0xde, 0x0b, 0x8f, 0x6e, 0xc7, 0x3b, + 0xf0, 0x8b, 0x3e, 0xa4, 0xb8, 0x2e, 0xee, 0xc4, 0xe7, 0x36, 0xce, 0x5a, + 0x80, 0x93, 0xf9, 0x6b, 0x4d, 0x7c, 0x7c, 0xe8, 0x0f, 0x5c, 0xf6, 0x06, +}; +static const unsigned char kat1233_addin0[] = {0}; +static const unsigned char kat1233_addin1[] = {0}; +static const unsigned char kat1233_retbits[] = { + 0x84, 0x7f, 0x61, 0x14, 0x8d, 0xaa, 0x5d, 0x82, 0x90, 0xda, 0xe7, 0xf7, + 0x29, 0x1b, 0xed, 0x58, 0xa1, 0xa4, 0xa7, 0x62, 0xc8, 0x1d, 0x73, 0xea, + 0xbc, 0xa9, 0x15, 0x42, 0xa5, 0xae, 0x22, 0x00, 0xe1, 0x8a, 0xfc, 0x93, + 0x97, 0xa1, 0x40, 0x19, 0x56, 0x92, 0x68, 0x26, 0xf6, 0x5d, 0xa3, 0x47, + 0x0b, 0x40, 0xfa, 0x91, 0x47, 0x84, 0x2b, 0xb4, 0x9d, 0x4e, 0x0d, 0x83, + 0xbf, 0x77, 0xcd, 0x31, +}; +static const struct drbg_kat_no_reseed kat1233_t = { + 2, kat1233_entropyin, kat1233_nonce, kat1233_persstr, + kat1233_addin0, kat1233_addin1, kat1233_retbits +}; +static const struct drbg_kat kat1233 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1233_t +}; + +static const unsigned char kat1234_entropyin[] = { + 0x8a, 0xb4, 0xfb, 0x1b, 0xa8, 0x3e, 0x1e, 0x4e, 0x7f, 0x8a, 0xda, 0x84, + 0x75, 0xbf, 0xa3, 0x26, 0x31, 0x5d, 0xed, 0x59, 0x6e, 0x21, 0xab, 0x80, + 0x4a, 0x90, 0xd5, 0x0b, 0x23, 0x55, 0xd4, 0xb9, 0x6c, 0x8d, 0x37, 0xee, + 0x06, 0x28, 0xf8, 0xf2, 0xc2, 0xa0, 0x24, 0x52, 0x55, 0xa0, 0x4b, 0xc5, +}; +static const unsigned char kat1234_nonce[] = {0}; +static const unsigned char kat1234_persstr[] = { + 0xb8, 0x38, 0xdd, 0xdb, 0xbd, 0x18, 0xf3, 0x7c, 0x35, 0x2d, 0xf3, 0x01, + 0xa0, 0x79, 0x86, 0xfb, 0x4c, 0xce, 0x42, 0xd8, 0xf9, 0x14, 0x54, 0x7f, + 0x49, 0xdb, 0x31, 0x72, 0x1a, 0x8b, 0xf4, 0xa4, 0xd4, 0x52, 0x56, 0xf1, + 0xa4, 0x04, 0x99, 0x4d, 0x30, 0x88, 0xba, 0x09, 0x5a, 0xd8, 0x8c, 0x92, +}; +static const unsigned char kat1234_addin0[] = {0}; +static const unsigned char kat1234_addin1[] = {0}; +static const unsigned char kat1234_retbits[] = { + 0x0d, 0x55, 0xde, 0xfb, 0xb1, 0x13, 0x8e, 0xe3, 0x35, 0x57, 0xc7, 0xf9, + 0x25, 0x04, 0xd0, 0xcd, 0x32, 0x51, 0x40, 0xc0, 0x88, 0x03, 0x50, 0x44, + 0xb3, 0xfb, 0x1c, 0x2f, 0x64, 0x69, 0xd8, 0x50, 0x5e, 0x97, 0xe5, 0x1d, + 0x0d, 0xc9, 0x77, 0x98, 0xd5, 0x5b, 0x35, 0xf5, 0xb7, 0x7e, 0x8a, 0xd2, + 0x4d, 0xd4, 0x2b, 0xb9, 0xd7, 0x6f, 0x9d, 0x10, 0x22, 0x7a, 0xe4, 0xf0, + 0x5d, 0x09, 0xa0, 0x10, +}; +static const struct drbg_kat_no_reseed kat1234_t = { + 3, kat1234_entropyin, kat1234_nonce, kat1234_persstr, + kat1234_addin0, kat1234_addin1, kat1234_retbits +}; +static const struct drbg_kat kat1234 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1234_t +}; + +static const unsigned char kat1235_entropyin[] = { + 0x29, 0x71, 0x37, 0xef, 0x2d, 0x57, 0x04, 0xec, 0x08, 0xc8, 0xf6, 0x45, + 0x02, 0xaa, 0xdb, 0x69, 0x20, 0x02, 0x70, 0x89, 0xe7, 0x10, 0xb3, 0xde, + 0x31, 0x74, 0xb4, 0xaa, 0xf7, 0x56, 0xb7, 0xa0, 0xb1, 0x08, 0x71, 0x95, + 0xc7, 0x14, 0x28, 0xf3, 0x41, 0x12, 0x73, 0x0d, 0x10, 0xd3, 0x15, 0x6a, +}; +static const unsigned char kat1235_nonce[] = {0}; +static const unsigned char kat1235_persstr[] = { + 0xe4, 0x70, 0x98, 0x7f, 0x17, 0x99, 0xcc, 0xae, 0xc5, 0xd2, 0xe7, 0x3b, + 0x0c, 0x2d, 0xf2, 0x60, 0xd1, 0xc1, 0x9f, 0xf0, 0x75, 0xbb, 0x97, 0xa6, + 0x5c, 0xcb, 0x8c, 0xd7, 0xdc, 0x94, 0x63, 0x7c, 0xa7, 0xa9, 0xf4, 0x69, + 0x48, 0xaf, 0xc6, 0xcb, 0xb5, 0xe4, 0x50, 0x94, 0x64, 0x68, 0xd7, 0x9d, +}; +static const unsigned char kat1235_addin0[] = {0}; +static const unsigned char kat1235_addin1[] = {0}; +static const unsigned char kat1235_retbits[] = { + 0x55, 0x74, 0x16, 0x00, 0x3e, 0x92, 0x6f, 0xb5, 0xfb, 0xae, 0xf5, 0x0b, + 0xd4, 0x8c, 0x26, 0x5f, 0x74, 0xbb, 0x85, 0xa2, 0x95, 0x02, 0xfd, 0x01, + 0x53, 0x24, 0x0b, 0x88, 0xee, 0x5b, 0x95, 0xba, 0xdc, 0xe5, 0x81, 0x3c, + 0x2a, 0xb2, 0x6d, 0xee, 0xb3, 0xa5, 0xbb, 0x9d, 0x9f, 0x01, 0x85, 0x22, + 0x23, 0x86, 0x4b, 0x55, 0x26, 0x62, 0x10, 0xa4, 0xbe, 0x24, 0xe4, 0xe9, + 0xc0, 0x2e, 0xf3, 0x2b, +}; +static const struct drbg_kat_no_reseed kat1235_t = { + 4, kat1235_entropyin, kat1235_nonce, kat1235_persstr, + kat1235_addin0, kat1235_addin1, kat1235_retbits +}; +static const struct drbg_kat kat1235 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1235_t +}; + +static const unsigned char kat1236_entropyin[] = { + 0x2c, 0x3a, 0x24, 0x01, 0x3a, 0x7c, 0x8b, 0x64, 0x23, 0x85, 0x07, 0xf4, + 0x51, 0x27, 0xdd, 0xab, 0xf6, 0x38, 0xdd, 0x69, 0xc8, 0x9f, 0x26, 0x8b, + 0xb4, 0x1f, 0x20, 0xf6, 0xed, 0xbf, 0x14, 0x15, 0x74, 0x88, 0x07, 0x2c, + 0x17, 0x1a, 0x1c, 0x99, 0xe7, 0xe0, 0x5f, 0xd5, 0x15, 0x41, 0xdf, 0x31, +}; +static const unsigned char kat1236_nonce[] = {0}; +static const unsigned char kat1236_persstr[] = { + 0x88, 0x69, 0x2b, 0xbe, 0xde, 0xc9, 0xfb, 0x0f, 0xa2, 0xbd, 0x85, 0x73, + 0x41, 0x32, 0x8a, 0x0e, 0xea, 0x7a, 0xf1, 0x84, 0xc7, 0x99, 0x90, 0xe0, + 0x71, 0x4d, 0x41, 0xd8, 0x4a, 0x11, 0x97, 0x15, 0x53, 0x36, 0xf8, 0x92, + 0x43, 0xfa, 0xb6, 0xa3, 0x0b, 0xc9, 0xe3, 0x4a, 0xca, 0x44, 0x6a, 0x6a, +}; +static const unsigned char kat1236_addin0[] = {0}; +static const unsigned char kat1236_addin1[] = {0}; +static const unsigned char kat1236_retbits[] = { + 0xe9, 0x57, 0xb7, 0x17, 0x17, 0x79, 0xc4, 0x69, 0x9f, 0xf4, 0xc3, 0xb7, + 0x42, 0x74, 0xc2, 0x85, 0x26, 0x10, 0x69, 0x46, 0xbe, 0x77, 0xa3, 0x2f, + 0xe6, 0x96, 0xef, 0x41, 0xaa, 0x89, 0x73, 0x50, 0x78, 0x21, 0x5a, 0xab, + 0x20, 0x18, 0x19, 0x09, 0x9d, 0x61, 0x0f, 0xd5, 0x68, 0x0b, 0x51, 0x98, + 0x2e, 0xe8, 0x32, 0xdf, 0x56, 0x1a, 0xe9, 0x7c, 0xca, 0x25, 0x64, 0xf9, + 0x59, 0x5b, 0x4c, 0x4b, +}; +static const struct drbg_kat_no_reseed kat1236_t = { + 5, kat1236_entropyin, kat1236_nonce, kat1236_persstr, + kat1236_addin0, kat1236_addin1, kat1236_retbits +}; +static const struct drbg_kat kat1236 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1236_t +}; + +static const unsigned char kat1237_entropyin[] = { + 0x25, 0x58, 0x70, 0x4b, 0xe3, 0x2a, 0x8d, 0xf4, 0x33, 0xd8, 0x76, 0x8c, + 0xbd, 0x55, 0x74, 0xc2, 0x4d, 0xd0, 0x9d, 0xe3, 0x15, 0x64, 0xb9, 0xa0, + 0xf4, 0x49, 0x5f, 0xc1, 0xee, 0x55, 0x1e, 0x44, 0x8d, 0xf4, 0xfe, 0x8b, + 0x14, 0x59, 0xd6, 0xb2, 0xb6, 0x14, 0x4e, 0x1f, 0x4a, 0x10, 0x90, 0xcf, +}; +static const unsigned char kat1237_nonce[] = {0}; +static const unsigned char kat1237_persstr[] = { + 0x44, 0x2c, 0x2e, 0x1d, 0x96, 0xfe, 0x08, 0xd8, 0x90, 0x54, 0xb6, 0x3a, + 0x05, 0xb7, 0x12, 0x2f, 0xf7, 0x93, 0x6f, 0x83, 0x7f, 0x4a, 0xc9, 0x5d, + 0x8d, 0xc3, 0xa1, 0xac, 0xa3, 0xe3, 0x68, 0x0b, 0x56, 0xab, 0xb0, 0xe0, + 0x22, 0xfd, 0x0b, 0xe9, 0xd0, 0xc1, 0x1f, 0x5a, 0xcd, 0xfa, 0xa8, 0xb7, +}; +static const unsigned char kat1237_addin0[] = {0}; +static const unsigned char kat1237_addin1[] = {0}; +static const unsigned char kat1237_retbits[] = { + 0xb7, 0xf5, 0xd4, 0x86, 0x2b, 0x47, 0x41, 0x99, 0x74, 0xee, 0x09, 0xa2, + 0x2c, 0x1c, 0x5e, 0x0e, 0xa5, 0xb0, 0xbf, 0x1f, 0x2e, 0x12, 0x92, 0x32, + 0x1e, 0x86, 0x4d, 0x9d, 0x2e, 0xdf, 0x3e, 0x36, 0x71, 0x2d, 0xa8, 0x9b, + 0xa4, 0x55, 0x7c, 0xde, 0xdf, 0x03, 0xc6, 0xa3, 0x96, 0xbc, 0x3b, 0x84, + 0xc4, 0xa6, 0xe6, 0x64, 0xd6, 0xcb, 0x8d, 0x94, 0xd8, 0x61, 0xfb, 0xe4, + 0x72, 0xf2, 0xee, 0x08, +}; +static const struct drbg_kat_no_reseed kat1237_t = { + 6, kat1237_entropyin, kat1237_nonce, kat1237_persstr, + kat1237_addin0, kat1237_addin1, kat1237_retbits +}; +static const struct drbg_kat kat1237 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1237_t +}; + +static const unsigned char kat1238_entropyin[] = { + 0x04, 0xd8, 0xac, 0xa2, 0x54, 0x24, 0xaf, 0x21, 0xb3, 0xe4, 0x44, 0x96, + 0x38, 0xd3, 0x1e, 0x0d, 0x80, 0xa3, 0xee, 0x45, 0x72, 0x78, 0x8c, 0xa8, + 0x66, 0x40, 0xf9, 0xb8, 0x7e, 0x4e, 0x07, 0xd9, 0xf7, 0x55, 0xfc, 0x2e, + 0x66, 0x6c, 0x59, 0xb0, 0xa9, 0x5f, 0xa1, 0xee, 0x7d, 0xc4, 0x7e, 0xde, +}; +static const unsigned char kat1238_nonce[] = {0}; +static const unsigned char kat1238_persstr[] = { + 0x0e, 0xa4, 0x21, 0x03, 0x96, 0xf9, 0x86, 0x12, 0x26, 0x1f, 0x80, 0x77, + 0x7d, 0x3a, 0xd5, 0x16, 0x6f, 0x7b, 0x60, 0xc0, 0xbf, 0x82, 0x1f, 0xd1, + 0x05, 0xeb, 0xd1, 0x61, 0xef, 0x1c, 0x1c, 0x5d, 0xb9, 0x11, 0xbc, 0x59, + 0xbf, 0x29, 0x44, 0x1f, 0x13, 0x22, 0x8e, 0x80, 0x0a, 0xd1, 0x09, 0x9d, +}; +static const unsigned char kat1238_addin0[] = {0}; +static const unsigned char kat1238_addin1[] = {0}; +static const unsigned char kat1238_retbits[] = { + 0xc9, 0x65, 0xc6, 0x21, 0xa3, 0xab, 0x4b, 0x37, 0x58, 0x54, 0xd4, 0xc2, + 0xd5, 0x2f, 0x28, 0xde, 0xbc, 0x07, 0xf7, 0xcf, 0xb7, 0x60, 0x04, 0x89, + 0xeb, 0xd9, 0xc7, 0xb6, 0x4b, 0x42, 0x75, 0x57, 0x74, 0x74, 0xbe, 0x07, + 0x09, 0x50, 0xfc, 0xa5, 0x62, 0x8f, 0x12, 0x8a, 0x8d, 0xdd, 0xd9, 0x24, + 0x0a, 0x43, 0x53, 0x73, 0x95, 0x1d, 0x9a, 0x62, 0x52, 0xb5, 0x20, 0x23, + 0x01, 0x0f, 0x6b, 0xdb, +}; +static const struct drbg_kat_no_reseed kat1238_t = { + 7, kat1238_entropyin, kat1238_nonce, kat1238_persstr, + kat1238_addin0, kat1238_addin1, kat1238_retbits +}; +static const struct drbg_kat kat1238 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1238_t +}; + +static const unsigned char kat1239_entropyin[] = { + 0xa0, 0xa5, 0x1c, 0x6e, 0x80, 0x11, 0xf2, 0x6d, 0xb5, 0x35, 0x33, 0xe6, + 0xbe, 0x87, 0x58, 0xdd, 0x7c, 0xd3, 0xc6, 0xcd, 0x00, 0xce, 0xb4, 0xf4, + 0x29, 0xac, 0xd4, 0x0b, 0x19, 0x3b, 0xeb, 0x18, 0x89, 0x13, 0x66, 0x18, + 0xc7, 0x82, 0x6a, 0xcd, 0x0b, 0x7e, 0xd1, 0x0e, 0xef, 0x05, 0x51, 0xe5, +}; +static const unsigned char kat1239_nonce[] = {0}; +static const unsigned char kat1239_persstr[] = { + 0x10, 0x2c, 0xd6, 0xed, 0x39, 0xce, 0x04, 0x8b, 0x3c, 0xac, 0x4d, 0x53, + 0x59, 0x89, 0xbe, 0xf8, 0xd4, 0xb5, 0x13, 0x11, 0x94, 0x8c, 0x86, 0xce, + 0xa4, 0x21, 0xe2, 0x68, 0xd3, 0x6b, 0xdb, 0x03, 0xba, 0x12, 0x29, 0x02, + 0x60, 0x81, 0x78, 0x3f, 0x8c, 0x05, 0xe2, 0xe7, 0x3c, 0xdd, 0x3e, 0x72, +}; +static const unsigned char kat1239_addin0[] = {0}; +static const unsigned char kat1239_addin1[] = {0}; +static const unsigned char kat1239_retbits[] = { + 0xb5, 0xd4, 0x4c, 0xf2, 0x19, 0xe2, 0x6f, 0xc3, 0x14, 0x72, 0x86, 0x95, + 0xcf, 0x08, 0x31, 0x3c, 0x2c, 0xe4, 0xd0, 0x5c, 0x9c, 0xf7, 0xd4, 0x46, + 0xc5, 0x07, 0x55, 0x0b, 0x46, 0x2c, 0x5d, 0x31, 0x3b, 0x6c, 0xeb, 0x27, + 0x54, 0xe2, 0x57, 0x0d, 0x37, 0x53, 0x8d, 0xf9, 0xbe, 0x45, 0xd7, 0x1f, + 0x2c, 0xa9, 0xc8, 0xe2, 0x4b, 0x80, 0x75, 0xfe, 0x6c, 0x1a, 0x44, 0xce, + 0xed, 0xe8, 0x4a, 0x5f, +}; +static const struct drbg_kat_no_reseed kat1239_t = { + 8, kat1239_entropyin, kat1239_nonce, kat1239_persstr, + kat1239_addin0, kat1239_addin1, kat1239_retbits +}; +static const struct drbg_kat kat1239 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1239_t +}; + +static const unsigned char kat1240_entropyin[] = { + 0x13, 0xe7, 0xf8, 0x0b, 0xb8, 0x3f, 0x94, 0x45, 0x3b, 0xb5, 0x85, 0x90, + 0x79, 0x20, 0x6d, 0x7c, 0x76, 0x44, 0x14, 0x88, 0xa3, 0x04, 0x4f, 0x20, + 0xb0, 0xee, 0xdc, 0x5d, 0x06, 0xd3, 0xd8, 0xf8, 0xa6, 0x33, 0xe8, 0x0c, + 0xdd, 0x61, 0x04, 0xd8, 0xae, 0x51, 0x54, 0xce, 0xce, 0x90, 0x84, 0x75, +}; +static const unsigned char kat1240_nonce[] = {0}; +static const unsigned char kat1240_persstr[] = { + 0x0a, 0xbf, 0x50, 0x1a, 0x53, 0x71, 0x11, 0xf9, 0x92, 0xaf, 0x58, 0xa1, + 0x10, 0x74, 0x90, 0x67, 0xb2, 0xb4, 0x76, 0x5d, 0x37, 0xf0, 0xfe, 0x95, + 0x1c, 0xfa, 0x6e, 0xda, 0x03, 0xd4, 0x10, 0x02, 0x7d, 0xf0, 0x34, 0xe3, + 0x73, 0x98, 0xdf, 0xb6, 0x4d, 0x50, 0xda, 0x51, 0x5d, 0x38, 0x68, 0xa7, +}; +static const unsigned char kat1240_addin0[] = {0}; +static const unsigned char kat1240_addin1[] = {0}; +static const unsigned char kat1240_retbits[] = { + 0xb4, 0xb4, 0x1a, 0xfe, 0x5a, 0xcd, 0x66, 0x6b, 0xe6, 0x7f, 0x9d, 0xc4, + 0x52, 0x09, 0xf6, 0x2b, 0x0a, 0x45, 0x0a, 0x16, 0xf3, 0x9e, 0xe2, 0xfb, + 0x28, 0xec, 0x36, 0x28, 0xb8, 0x09, 0xf7, 0x07, 0xf0, 0x9e, 0x5e, 0x6d, + 0x7b, 0xad, 0xc1, 0xa5, 0xe7, 0xa2, 0xc5, 0xae, 0x8b, 0x8f, 0xc5, 0x75, + 0x88, 0xef, 0x11, 0x0a, 0xed, 0x15, 0x7c, 0x8d, 0x84, 0xc8, 0xb4, 0xbe, + 0xdb, 0x43, 0x54, 0x51, +}; +static const struct drbg_kat_no_reseed kat1240_t = { + 9, kat1240_entropyin, kat1240_nonce, kat1240_persstr, + kat1240_addin0, kat1240_addin1, kat1240_retbits +}; +static const struct drbg_kat kat1240 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1240_t +}; + +static const unsigned char kat1241_entropyin[] = { + 0x59, 0x7a, 0x5c, 0xa7, 0xe1, 0xde, 0xb5, 0x43, 0x3e, 0x0a, 0x7c, 0x6b, + 0x18, 0x85, 0x30, 0xe2, 0x16, 0x6f, 0x3c, 0x8c, 0x16, 0xcc, 0xfc, 0x75, + 0x78, 0xc8, 0xd9, 0x93, 0x1d, 0x70, 0xb4, 0xa3, 0x33, 0xa5, 0x36, 0xab, + 0xdb, 0x07, 0x25, 0xb6, 0xc8, 0x6f, 0xe3, 0xd2, 0xb2, 0x97, 0x4e, 0x17, +}; +static const unsigned char kat1241_nonce[] = {0}; +static const unsigned char kat1241_persstr[] = { + 0x80, 0xc2, 0x28, 0x3d, 0xf1, 0x56, 0x19, 0x74, 0x50, 0x68, 0x72, 0xff, + 0xc3, 0x3b, 0xc7, 0x32, 0x0a, 0xe2, 0xac, 0x2d, 0x31, 0xe3, 0x2d, 0x9c, + 0x04, 0xbb, 0x75, 0xdd, 0x8a, 0x8c, 0xfa, 0x4c, 0x89, 0x59, 0x7c, 0x90, + 0x78, 0x62, 0x2e, 0xb4, 0xd2, 0x90, 0x04, 0x66, 0x62, 0x5c, 0x0c, 0x9e, +}; +static const unsigned char kat1241_addin0[] = {0}; +static const unsigned char kat1241_addin1[] = {0}; +static const unsigned char kat1241_retbits[] = { + 0xc1, 0xb9, 0x22, 0x6e, 0x77, 0x18, 0xad, 0xdc, 0xdd, 0xdb, 0xa2, 0x1d, + 0x7b, 0x55, 0x39, 0xb4, 0x46, 0x47, 0x75, 0x38, 0x80, 0x34, 0xb5, 0xff, + 0x17, 0xf8, 0xb5, 0x12, 0xc6, 0x57, 0x25, 0xce, 0xda, 0x4a, 0x20, 0xff, + 0x94, 0x35, 0xa3, 0xaf, 0x06, 0x20, 0x82, 0xbc, 0xfa, 0xf2, 0x9e, 0xc1, + 0xab, 0x8f, 0x42, 0xc7, 0x28, 0x56, 0xef, 0x59, 0xd8, 0x81, 0xdf, 0x85, + 0xd4, 0x65, 0xc1, 0x4a, +}; +static const struct drbg_kat_no_reseed kat1241_t = { + 10, kat1241_entropyin, kat1241_nonce, kat1241_persstr, + kat1241_addin0, kat1241_addin1, kat1241_retbits +}; +static const struct drbg_kat kat1241 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1241_t +}; + +static const unsigned char kat1242_entropyin[] = { + 0x32, 0x75, 0x82, 0x41, 0xcc, 0x57, 0x2b, 0xb8, 0x82, 0x19, 0xe9, 0xc8, + 0x28, 0x0c, 0x3d, 0x99, 0xfd, 0xae, 0x0c, 0xd8, 0xe8, 0x78, 0xf8, 0xc0, + 0xcd, 0xf1, 0x12, 0xf1, 0x7c, 0xcc, 0xb0, 0x12, 0x1f, 0xbf, 0xb0, 0x85, + 0x9d, 0x27, 0xa0, 0x73, 0x4d, 0xa2, 0xe8, 0xc6, 0xde, 0x4c, 0xd8, 0x0a, +}; +static const unsigned char kat1242_nonce[] = {0}; +static const unsigned char kat1242_persstr[] = { + 0x62, 0x8c, 0xb6, 0x71, 0x76, 0xe1, 0x87, 0xed, 0x10, 0x1f, 0x9f, 0x72, + 0xa5, 0x23, 0x68, 0xc2, 0x47, 0x5b, 0x38, 0xe6, 0x92, 0x29, 0x72, 0x21, + 0xc2, 0x4c, 0xe9, 0x5f, 0x28, 0x01, 0xfa, 0xb1, 0xc2, 0x9a, 0x40, 0x85, + 0x66, 0x4b, 0xe4, 0xf7, 0x51, 0xb5, 0xa6, 0x4d, 0x78, 0x7f, 0xce, 0x29, +}; +static const unsigned char kat1242_addin0[] = {0}; +static const unsigned char kat1242_addin1[] = {0}; +static const unsigned char kat1242_retbits[] = { + 0xf6, 0xff, 0x29, 0x50, 0x4d, 0xd7, 0xae, 0x63, 0xd6, 0x01, 0x6a, 0x62, + 0xd7, 0x7e, 0xd0, 0x14, 0x86, 0xd0, 0x22, 0xe1, 0x4e, 0x2b, 0x72, 0x81, + 0x95, 0x6a, 0xa2, 0xf9, 0xd5, 0x70, 0xda, 0x3a, 0x3e, 0xec, 0x8a, 0x74, + 0x45, 0x29, 0x56, 0x4f, 0x55, 0x60, 0x89, 0x05, 0xb0, 0x9a, 0x08, 0xfa, + 0x78, 0x1c, 0xda, 0x39, 0x83, 0x62, 0x07, 0xf6, 0xf5, 0xc1, 0x65, 0xd2, + 0x71, 0x53, 0xfc, 0xdd, +}; +static const struct drbg_kat_no_reseed kat1242_t = { + 11, kat1242_entropyin, kat1242_nonce, kat1242_persstr, + kat1242_addin0, kat1242_addin1, kat1242_retbits +}; +static const struct drbg_kat kat1242 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1242_t +}; + +static const unsigned char kat1243_entropyin[] = { + 0x10, 0x1f, 0x19, 0xed, 0x66, 0x58, 0x74, 0x16, 0x17, 0x9b, 0xaa, 0x90, + 0x1d, 0x8b, 0x88, 0x8b, 0x75, 0x77, 0x0f, 0xfe, 0x67, 0x91, 0x17, 0xf1, + 0x0f, 0x25, 0xb4, 0x6f, 0x65, 0x9a, 0x57, 0x0d, 0xdb, 0xde, 0xf0, 0x85, + 0x57, 0x8d, 0xed, 0x5e, 0x0d, 0x74, 0xfa, 0xda, 0x68, 0x37, 0xfb, 0x5f, +}; +static const unsigned char kat1243_nonce[] = {0}; +static const unsigned char kat1243_persstr[] = { + 0xff, 0xeb, 0xb3, 0xda, 0x75, 0x65, 0x94, 0x6e, 0xd3, 0x8a, 0x4d, 0x5c, + 0x85, 0x0c, 0x06, 0x8f, 0x0c, 0xb1, 0x0f, 0x6c, 0xe5, 0x03, 0x44, 0x00, + 0x06, 0xf9, 0x72, 0xa3, 0x66, 0xdd, 0x61, 0xc3, 0xe9, 0xe1, 0xb0, 0x0c, + 0x65, 0x66, 0xba, 0xf8, 0xee, 0xbe, 0x0f, 0xc8, 0x68, 0xce, 0x36, 0x3d, +}; +static const unsigned char kat1243_addin0[] = {0}; +static const unsigned char kat1243_addin1[] = {0}; +static const unsigned char kat1243_retbits[] = { + 0x7f, 0x61, 0x38, 0x44, 0xa6, 0xe1, 0x06, 0x36, 0xfb, 0x27, 0xd8, 0xb1, + 0x46, 0x25, 0x7d, 0x10, 0x93, 0x2c, 0x37, 0xc7, 0x61, 0x60, 0x99, 0x89, + 0x39, 0x28, 0xd2, 0xd4, 0x58, 0xf2, 0x94, 0xae, 0x16, 0x5d, 0xef, 0x19, + 0xf7, 0x17, 0x5e, 0x79, 0x8c, 0x0d, 0xce, 0xd4, 0xab, 0x7d, 0x96, 0xde, + 0xf8, 0x8c, 0xd6, 0x53, 0xb3, 0x26, 0x4f, 0x41, 0xe7, 0x56, 0xa0, 0x43, + 0xaf, 0x6f, 0x39, 0xc2, +}; +static const struct drbg_kat_no_reseed kat1243_t = { + 12, kat1243_entropyin, kat1243_nonce, kat1243_persstr, + kat1243_addin0, kat1243_addin1, kat1243_retbits +}; +static const struct drbg_kat kat1243 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1243_t +}; + +static const unsigned char kat1244_entropyin[] = { + 0x22, 0x48, 0x09, 0xc4, 0x3b, 0xcd, 0xb4, 0x6c, 0x52, 0xfe, 0x30, 0x98, + 0xcc, 0x2d, 0x88, 0xd0, 0xd2, 0x6c, 0x34, 0xe7, 0x6e, 0x58, 0xf9, 0x70, + 0x47, 0x02, 0x7a, 0xdf, 0xe9, 0x3f, 0x8b, 0xfa, 0x01, 0xc5, 0x5d, 0x5b, + 0x3c, 0x26, 0x7b, 0xc6, 0x02, 0x89, 0xec, 0x82, 0xd2, 0xfa, 0x21, 0xbc, +}; +static const unsigned char kat1244_nonce[] = {0}; +static const unsigned char kat1244_persstr[] = { + 0x1b, 0xde, 0x6b, 0xbd, 0xcc, 0xe0, 0x20, 0xec, 0xe3, 0x7f, 0xe2, 0x93, + 0x1a, 0x70, 0xa8, 0x8c, 0x5c, 0x36, 0xb8, 0xd2, 0x9c, 0xb0, 0x75, 0x90, + 0xc9, 0xdf, 0xd2, 0x3f, 0x8d, 0xa8, 0x67, 0x76, 0x46, 0x04, 0x6d, 0xfe, + 0xef, 0xeb, 0x17, 0xb4, 0x5a, 0x09, 0xe6, 0x21, 0xe2, 0x63, 0xd4, 0x06, +}; +static const unsigned char kat1244_addin0[] = {0}; +static const unsigned char kat1244_addin1[] = {0}; +static const unsigned char kat1244_retbits[] = { + 0x48, 0xa5, 0x1f, 0xb3, 0xc3, 0x5b, 0x31, 0x30, 0x58, 0x98, 0x7b, 0xc1, + 0x0f, 0x67, 0x23, 0xae, 0x5d, 0xf0, 0x51, 0xe1, 0x80, 0xbf, 0x9b, 0x5b, + 0x0f, 0xd8, 0xb4, 0xc4, 0xf1, 0x2e, 0xe4, 0x57, 0xf4, 0xd1, 0x76, 0x81, + 0x38, 0x18, 0x65, 0x79, 0x7b, 0x2f, 0x76, 0x1f, 0xb0, 0x5f, 0x12, 0xe6, + 0xa9, 0xeb, 0x18, 0xb1, 0xf9, 0x5d, 0x63, 0x9a, 0x4a, 0xf5, 0xb1, 0x61, + 0x31, 0x68, 0xc1, 0xfe, +}; +static const struct drbg_kat_no_reseed kat1244_t = { + 13, kat1244_entropyin, kat1244_nonce, kat1244_persstr, + kat1244_addin0, kat1244_addin1, kat1244_retbits +}; +static const struct drbg_kat kat1244 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1244_t +}; + +static const unsigned char kat1245_entropyin[] = { + 0x4e, 0x37, 0xee, 0x86, 0x49, 0xa8, 0x6d, 0xd0, 0xba, 0xb8, 0x78, 0x5a, + 0x1e, 0x3a, 0xcb, 0xd2, 0xc3, 0xa5, 0x7c, 0xa3, 0x46, 0xd0, 0xe3, 0x14, + 0x76, 0x49, 0x0e, 0x49, 0xb5, 0x88, 0xb9, 0x28, 0x23, 0x2d, 0xfa, 0x50, + 0xcb, 0x1d, 0x96, 0x07, 0x8f, 0x70, 0x68, 0x56, 0x1b, 0x97, 0xe2, 0xf1, +}; +static const unsigned char kat1245_nonce[] = {0}; +static const unsigned char kat1245_persstr[] = { + 0x61, 0x33, 0x4c, 0xdc, 0x87, 0x35, 0x33, 0x29, 0x25, 0x22, 0x1a, 0x63, + 0x18, 0x98, 0x74, 0x03, 0xa4, 0xc1, 0xc9, 0x36, 0xc0, 0xa8, 0x06, 0x6c, + 0xbf, 0xbb, 0x1a, 0x84, 0x51, 0x0b, 0xac, 0x2b, 0xb3, 0x7e, 0xa5, 0x2d, + 0x6b, 0xa9, 0xf4, 0xe1, 0xa9, 0x32, 0x69, 0x47, 0x3f, 0x45, 0x66, 0xcb, +}; +static const unsigned char kat1245_addin0[] = {0}; +static const unsigned char kat1245_addin1[] = {0}; +static const unsigned char kat1245_retbits[] = { + 0x8b, 0xf9, 0xc2, 0x63, 0xc1, 0x2a, 0x19, 0xc5, 0x05, 0x25, 0xfb, 0x70, + 0xcf, 0xe5, 0x69, 0x80, 0xb2, 0x69, 0x57, 0xe5, 0xc2, 0x95, 0xf7, 0x54, + 0x62, 0x44, 0xce, 0x6b, 0x7b, 0x1b, 0x90, 0xb2, 0x4c, 0xe3, 0xcf, 0xfc, + 0x55, 0x36, 0xe9, 0x6d, 0x97, 0x3b, 0x19, 0x2a, 0x77, 0xf8, 0x78, 0xeb, + 0x5e, 0x69, 0x87, 0xe1, 0x05, 0x54, 0x75, 0xa0, 0xab, 0xd0, 0x03, 0x12, + 0xd7, 0xa6, 0x5d, 0xd3, +}; +static const struct drbg_kat_no_reseed kat1245_t = { + 14, kat1245_entropyin, kat1245_nonce, kat1245_persstr, + kat1245_addin0, kat1245_addin1, kat1245_retbits +}; +static const struct drbg_kat kat1245 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1245_t +}; + +static const unsigned char kat1246_entropyin[] = { + 0x0d, 0xd4, 0xd8, 0x00, 0x62, 0xec, 0xc0, 0xf3, 0x59, 0xef, 0xbe, 0x77, + 0x23, 0x02, 0x0b, 0xe9, 0xb8, 0x8b, 0x55, 0x0f, 0xe7, 0x40, 0x88, 0x09, + 0x40, 0x69, 0xe7, 0x44, 0x28, 0x39, 0x58, 0x56, 0xf6, 0x3e, 0xed, 0x4f, + 0x5b, 0x0e, 0x7d, 0x1e, 0x00, 0x6f, 0x0e, 0xaf, 0xf7, 0x4f, 0x63, 0x8c, +}; +static const unsigned char kat1246_nonce[] = {0}; +static const unsigned char kat1246_persstr[] = { + 0xd2, 0xaa, 0x2c, 0xcd, 0x4b, 0xc6, 0x53, 0x7e, 0x51, 0xf6, 0x55, 0x0a, + 0xb6, 0xd6, 0x29, 0x45, 0x47, 0xbe, 0xf3, 0xe9, 0x71, 0xa7, 0xf1, 0x28, + 0xe4, 0x43, 0x6f, 0x95, 0x7d, 0xe9, 0x98, 0x2c, 0x93, 0xee, 0x22, 0x11, + 0x0b, 0x0e, 0x40, 0xab, 0x33, 0xa7, 0xd3, 0xdf, 0xa2, 0x2f, 0x59, 0x9d, +}; +static const unsigned char kat1246_addin0[] = { + 0x0b, 0x08, 0x1b, 0xab, 0x6c, 0x74, 0xd8, 0x6b, 0x4a, 0x01, 0x0e, 0x2d, + 0xed, 0x99, 0xd1, 0x4e, 0x0c, 0x98, 0x38, 0xf7, 0xc3, 0xd6, 0x9a, 0xfd, + 0x64, 0xf1, 0xb6, 0x63, 0x77, 0xd9, 0x5c, 0xdc, 0xb7, 0xf6, 0xec, 0x53, + 0x58, 0xe3, 0x51, 0x60, 0x34, 0xc3, 0x33, 0x9c, 0xed, 0x7e, 0x16, 0x38, +}; +static const unsigned char kat1246_addin1[] = { + 0xca, 0x81, 0x8f, 0x93, 0x8a, 0xe0, 0xc7, 0xf4, 0xf5, 0x07, 0xe4, 0xcf, + 0xec, 0x10, 0xe7, 0xba, 0xf5, 0x1f, 0xe3, 0x4b, 0x89, 0xa5, 0x02, 0xf7, + 0x54, 0xd2, 0xd2, 0xbe, 0x73, 0x95, 0x12, 0x0f, 0xe1, 0xfb, 0x01, 0x3c, + 0x67, 0xac, 0x25, 0x00, 0xb3, 0xd1, 0x7b, 0x73, 0x5d, 0xa0, 0x9a, 0x6e, +}; +static const unsigned char kat1246_retbits[] = { + 0x68, 0x08, 0x26, 0x8b, 0x13, 0xe2, 0x36, 0xf6, 0x42, 0xc0, 0x6d, 0xeb, + 0xa2, 0x49, 0x44, 0x96, 0xe7, 0x00, 0x3c, 0x93, 0x7e, 0xbf, 0x6f, 0x7c, + 0xb7, 0xc9, 0x21, 0x04, 0xea, 0x09, 0x0f, 0x18, 0x48, 0x4a, 0xa0, 0x75, + 0x56, 0x0d, 0x78, 0x44, 0xa0, 0x6e, 0xb5, 0x59, 0x94, 0x8c, 0x93, 0xb2, + 0x6a, 0xe4, 0x0f, 0x2d, 0xb9, 0x8e, 0xcb, 0x53, 0xad, 0x59, 0x3e, 0xb4, + 0xc7, 0x8f, 0x82, 0xb1, +}; +static const struct drbg_kat_no_reseed kat1246_t = { + 0, kat1246_entropyin, kat1246_nonce, kat1246_persstr, + kat1246_addin0, kat1246_addin1, kat1246_retbits +}; +static const struct drbg_kat kat1246 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1246_t +}; + +static const unsigned char kat1247_entropyin[] = { + 0xca, 0x0a, 0xb9, 0xb2, 0x2d, 0x0d, 0xf4, 0xe6, 0x80, 0xda, 0xa8, 0xdb, + 0xab, 0x56, 0x2c, 0x59, 0x4b, 0xd0, 0x79, 0xc3, 0x94, 0x64, 0x7a, 0xf3, + 0x9d, 0xc1, 0xc6, 0x16, 0xa6, 0xbd, 0x85, 0xc5, 0x8f, 0x2d, 0x52, 0xa0, + 0x2f, 0x4b, 0x02, 0x43, 0x5b, 0xbd, 0xe8, 0x0b, 0x33, 0xd4, 0x05, 0xed, +}; +static const unsigned char kat1247_nonce[] = {0}; +static const unsigned char kat1247_persstr[] = { + 0x16, 0x95, 0xf8, 0x3e, 0xc7, 0xf4, 0xf1, 0x74, 0x2b, 0x7f, 0x13, 0xeb, + 0x62, 0xcb, 0xbf, 0x17, 0x80, 0x49, 0x65, 0xed, 0x0a, 0xcd, 0x3f, 0x0f, + 0xba, 0x0c, 0xaf, 0xc3, 0xcd, 0x55, 0xf3, 0x06, 0x80, 0x03, 0x39, 0xba, + 0xf2, 0x56, 0x7b, 0xb8, 0x4f, 0xc3, 0x7c, 0xa3, 0x0a, 0xe2, 0x20, 0x5d, +}; +static const unsigned char kat1247_addin0[] = { + 0x6f, 0x88, 0xfa, 0xa9, 0x30, 0x4a, 0x91, 0x5b, 0x2b, 0x19, 0x88, 0xd4, + 0x08, 0x9b, 0xf0, 0xda, 0x10, 0xbf, 0x9f, 0x4d, 0xfa, 0x2f, 0xe3, 0xcc, + 0xb1, 0xcd, 0x21, 0x20, 0x2c, 0x06, 0x91, 0x9c, 0x14, 0x2d, 0x41, 0x32, + 0x4e, 0x51, 0xa5, 0xae, 0xfe, 0xef, 0xd0, 0x5a, 0x66, 0x4f, 0x70, 0x1b, +}; +static const unsigned char kat1247_addin1[] = { + 0x13, 0x5e, 0xad, 0x8f, 0x09, 0x03, 0x44, 0xd1, 0xe9, 0x67, 0xe7, 0x20, + 0xcb, 0xd6, 0x75, 0x6d, 0x3b, 0x11, 0xe3, 0x90, 0xcf, 0x20, 0x78, 0xbc, + 0xfa, 0x53, 0x44, 0x94, 0x46, 0x85, 0xa7, 0x59, 0x0f, 0xaa, 0x52, 0x24, + 0x2a, 0x20, 0x7d, 0x0b, 0x9f, 0x33, 0xe2, 0xfc, 0x14, 0xc5, 0xa6, 0x1e, +}; +static const unsigned char kat1247_retbits[] = { + 0x7f, 0x7e, 0x6f, 0x08, 0x97, 0x22, 0xa0, 0x6b, 0x74, 0x1b, 0x38, 0x5c, + 0xdf, 0xf7, 0x90, 0x2f, 0x04, 0xf2, 0xe7, 0x2d, 0xca, 0x7c, 0xbb, 0x64, + 0xd6, 0xa4, 0xf3, 0x73, 0xa9, 0xf6, 0x93, 0xec, 0x42, 0xff, 0xf7, 0x6d, + 0x11, 0x48, 0x8b, 0xa8, 0x6a, 0x3a, 0xcc, 0x03, 0x95, 0xc0, 0x2b, 0x73, + 0x01, 0x24, 0x9d, 0x02, 0x25, 0x7d, 0xa9, 0x4e, 0x60, 0xf8, 0xef, 0x9a, + 0x3d, 0x84, 0x43, 0x07, +}; +static const struct drbg_kat_no_reseed kat1247_t = { + 1, kat1247_entropyin, kat1247_nonce, kat1247_persstr, + kat1247_addin0, kat1247_addin1, kat1247_retbits +}; +static const struct drbg_kat kat1247 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1247_t +}; + +static const unsigned char kat1248_entropyin[] = { + 0x74, 0x57, 0x17, 0x89, 0xed, 0xf9, 0x21, 0x7a, 0x13, 0x5f, 0x61, 0x74, + 0x7b, 0x2a, 0x75, 0x6d, 0xc8, 0x31, 0x0e, 0xc0, 0xf4, 0x44, 0x35, 0xfa, + 0xda, 0xd5, 0x27, 0xb3, 0xd4, 0x3c, 0xe0, 0xa4, 0xf0, 0x36, 0x1b, 0xb7, + 0x5a, 0x90, 0x77, 0x44, 0xd3, 0xd9, 0x5f, 0x65, 0xb0, 0x42, 0x8b, 0xde, +}; +static const unsigned char kat1248_nonce[] = {0}; +static const unsigned char kat1248_persstr[] = { + 0x4d, 0x12, 0x7c, 0x55, 0x96, 0xeb, 0x67, 0x23, 0x34, 0x32, 0x5d, 0xd5, + 0xbf, 0x2c, 0x6c, 0x25, 0x56, 0xd4, 0xea, 0x13, 0xb2, 0xcd, 0x26, 0x3e, + 0xa6, 0x0d, 0x74, 0xe8, 0xdc, 0xaf, 0xa6, 0xb1, 0x17, 0x00, 0xf9, 0xf4, + 0x78, 0x42, 0x89, 0x99, 0xf5, 0x76, 0x2e, 0x36, 0x5b, 0x19, 0x3c, 0x05, +}; +static const unsigned char kat1248_addin0[] = { + 0xc5, 0x76, 0x7c, 0x7a, 0x29, 0xd0, 0xf4, 0x34, 0xca, 0x1a, 0x17, 0x30, + 0x84, 0xa0, 0x90, 0x86, 0x7b, 0xee, 0x9d, 0x18, 0x21, 0x5a, 0x79, 0xd3, + 0x37, 0x83, 0x5f, 0xaf, 0xd3, 0x08, 0xd1, 0x11, 0x6f, 0x1d, 0xcd, 0xd1, + 0xad, 0x5d, 0x80, 0xac, 0x18, 0xef, 0x15, 0xd6, 0x1b, 0x80, 0x0c, 0x35, +}; +static const unsigned char kat1248_addin1[] = { + 0x5a, 0xd8, 0xa5, 0xbd, 0x2e, 0xe4, 0x60, 0x42, 0xba, 0x91, 0xd9, 0xac, + 0x9b, 0x91, 0x1e, 0x7a, 0x0a, 0x68, 0xeb, 0x25, 0x70, 0x46, 0x41, 0x5b, + 0x47, 0x1e, 0xcb, 0xeb, 0x05, 0xed, 0xd1, 0x6c, 0xc4, 0x5b, 0x03, 0x59, + 0x3d, 0xe9, 0x10, 0xb0, 0xa0, 0x46, 0xdc, 0x5c, 0x21, 0x3e, 0x62, 0x88, +}; +static const unsigned char kat1248_retbits[] = { + 0xa0, 0xdf, 0x87, 0x1e, 0xfb, 0x02, 0xeb, 0xe3, 0xdb, 0x39, 0x2f, 0xca, + 0x41, 0x06, 0x05, 0x0a, 0x61, 0xa9, 0x3e, 0x3b, 0xce, 0xb4, 0x40, 0x5f, + 0xfa, 0x3b, 0x0e, 0x71, 0xd1, 0x4d, 0x5e, 0x33, 0x73, 0xc8, 0xf4, 0x9c, + 0x21, 0xf4, 0xc9, 0xb6, 0x6a, 0xb4, 0xdf, 0xb1, 0xa5, 0xc6, 0x6a, 0x58, + 0xf8, 0xc5, 0xbe, 0x9a, 0xc1, 0x78, 0x86, 0x02, 0x16, 0x9c, 0xbe, 0xad, + 0x2d, 0xbb, 0x18, 0xd8, +}; +static const struct drbg_kat_no_reseed kat1248_t = { + 2, kat1248_entropyin, kat1248_nonce, kat1248_persstr, + kat1248_addin0, kat1248_addin1, kat1248_retbits +}; +static const struct drbg_kat kat1248 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1248_t +}; + +static const unsigned char kat1249_entropyin[] = { + 0x55, 0x9f, 0xca, 0x54, 0xa1, 0xee, 0xdb, 0x1f, 0x5d, 0x36, 0x4a, 0x10, + 0x36, 0x40, 0x62, 0x04, 0x49, 0x04, 0xb3, 0x31, 0xa2, 0x09, 0xf0, 0xd4, + 0x17, 0x2d, 0xf8, 0x4b, 0x33, 0xab, 0xf7, 0x78, 0x94, 0xf4, 0xb9, 0x03, + 0xd9, 0xe2, 0xc1, 0xa4, 0x61, 0xad, 0xe1, 0x1a, 0xa6, 0x3d, 0xf9, 0xd7, +}; +static const unsigned char kat1249_nonce[] = {0}; +static const unsigned char kat1249_persstr[] = { + 0xf5, 0x39, 0xda, 0x5e, 0x3c, 0x53, 0x5d, 0xb1, 0xe7, 0x88, 0xf2, 0x18, + 0x8e, 0x23, 0x8f, 0x2f, 0x1c, 0x76, 0xad, 0xda, 0x24, 0x36, 0x08, 0xf8, + 0xbc, 0x58, 0xd9, 0x90, 0x6f, 0xa9, 0xc6, 0x22, 0x18, 0xd0, 0x49, 0xae, + 0xfa, 0x1d, 0xdd, 0x0b, 0xd6, 0x93, 0x4d, 0x3f, 0x97, 0x72, 0xdd, 0x02, +}; +static const unsigned char kat1249_addin0[] = { + 0xb1, 0x78, 0x31, 0x7d, 0xd4, 0x8f, 0x36, 0xfc, 0xa0, 0xe8, 0x05, 0x64, + 0x2f, 0x97, 0x87, 0xe7, 0xce, 0xb6, 0x4a, 0x92, 0xa0, 0x98, 0xf9, 0x2e, + 0x02, 0xab, 0x25, 0x47, 0x60, 0x59, 0xf6, 0x64, 0xa0, 0x32, 0x9c, 0x50, + 0x76, 0xa7, 0x43, 0x1e, 0x46, 0x0d, 0x3c, 0x7e, 0xb2, 0xdc, 0xc9, 0xc3, +}; +static const unsigned char kat1249_addin1[] = { + 0xb6, 0x45, 0xf0, 0xdc, 0xe8, 0xeb, 0xe3, 0x1b, 0x7c, 0x05, 0x06, 0x1b, + 0xd5, 0x67, 0x41, 0x00, 0xe4, 0xff, 0xe6, 0x7c, 0xfa, 0x86, 0x43, 0x0a, + 0xa8, 0x00, 0x19, 0xdf, 0x00, 0x25, 0xda, 0xfd, 0x55, 0x87, 0x77, 0xb5, + 0xa1, 0xf7, 0x32, 0xaf, 0x6a, 0x27, 0xc2, 0x6c, 0xa6, 0x8b, 0xfc, 0x7c, +}; +static const unsigned char kat1249_retbits[] = { + 0x7b, 0x9c, 0xb5, 0xc3, 0x8b, 0x07, 0x1e, 0x5c, 0x2c, 0x18, 0x95, 0x2d, + 0x80, 0x73, 0x19, 0x25, 0xc3, 0x26, 0x17, 0xc8, 0x0e, 0xb1, 0x37, 0x4e, + 0x42, 0xf9, 0xbd, 0xd7, 0x0b, 0xb6, 0x0c, 0x1d, 0x37, 0x81, 0xd0, 0xa3, + 0x58, 0x90, 0x09, 0x52, 0x8c, 0xaa, 0x11, 0x18, 0x8a, 0x50, 0x92, 0x46, + 0x23, 0xbc, 0xe3, 0xd1, 0x45, 0xb0, 0x14, 0xac, 0x64, 0xfd, 0x1d, 0x27, + 0xc9, 0x61, 0x1d, 0x33, +}; +static const struct drbg_kat_no_reseed kat1249_t = { + 3, kat1249_entropyin, kat1249_nonce, kat1249_persstr, + kat1249_addin0, kat1249_addin1, kat1249_retbits +}; +static const struct drbg_kat kat1249 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1249_t +}; + +static const unsigned char kat1250_entropyin[] = { + 0xe5, 0x84, 0x93, 0x2d, 0x66, 0x12, 0x68, 0x62, 0x5b, 0x51, 0xd1, 0x1c, + 0xf8, 0x59, 0xe8, 0x81, 0x53, 0x41, 0x8d, 0x15, 0x41, 0xfd, 0x72, 0x66, + 0xf2, 0x7e, 0xe1, 0x8e, 0x4c, 0x3c, 0xe3, 0xcc, 0xd6, 0x15, 0xf3, 0x21, + 0xaf, 0x1b, 0x23, 0xef, 0xc6, 0xf3, 0x6d, 0x03, 0x91, 0x51, 0x14, 0x92, +}; +static const unsigned char kat1250_nonce[] = {0}; +static const unsigned char kat1250_persstr[] = { + 0x00, 0xaa, 0x2d, 0x44, 0xb1, 0xf5, 0xf8, 0x17, 0x29, 0xe4, 0x0c, 0x34, + 0x11, 0xe4, 0x75, 0xcd, 0x2f, 0x87, 0x0d, 0x14, 0x93, 0xda, 0xc9, 0x51, + 0xf3, 0x67, 0xbc, 0x9b, 0x8b, 0xa2, 0x8d, 0xed, 0x34, 0xe1, 0xfc, 0xc1, + 0x6c, 0x29, 0xbc, 0x63, 0x13, 0xae, 0xaf, 0xf1, 0xe1, 0xde, 0xb4, 0x3a, +}; +static const unsigned char kat1250_addin0[] = { + 0xa3, 0x83, 0xa6, 0x5c, 0x12, 0x1c, 0xa5, 0x9b, 0x9c, 0x03, 0x14, 0xdc, + 0x9f, 0xbe, 0x46, 0xb5, 0x70, 0x8c, 0xb7, 0x8f, 0x0f, 0x8a, 0x1a, 0xcb, + 0x77, 0x83, 0x3f, 0x19, 0x28, 0xf3, 0x5d, 0x70, 0xd3, 0x77, 0x97, 0x23, + 0x40, 0x35, 0xc9, 0x62, 0xb9, 0x38, 0x74, 0xdd, 0x81, 0xf7, 0x05, 0x3f, +}; +static const unsigned char kat1250_addin1[] = { + 0x28, 0xb7, 0x1e, 0x47, 0xa7, 0x81, 0xcc, 0x86, 0xaf, 0xc5, 0x66, 0x1c, + 0x53, 0x36, 0x6c, 0xc5, 0xb1, 0xe7, 0x77, 0xd7, 0x9d, 0x46, 0xa9, 0x7a, + 0x4c, 0x16, 0x07, 0x7e, 0xf3, 0x00, 0x4e, 0xbd, 0x81, 0x31, 0x14, 0xd7, + 0x1f, 0x76, 0xa4, 0x48, 0xe3, 0x19, 0x6d, 0x98, 0x75, 0x4e, 0x16, 0x58, +}; +static const unsigned char kat1250_retbits[] = { + 0x90, 0xfd, 0xb7, 0x19, 0xa0, 0xd6, 0x23, 0x66, 0x99, 0xeb, 0xe7, 0xe5, + 0x37, 0xbe, 0x11, 0x40, 0x03, 0xa9, 0x30, 0x2a, 0xca, 0x98, 0x27, 0xbc, + 0x7e, 0xed, 0x73, 0xf9, 0x0a, 0x3c, 0xeb, 0xd5, 0x19, 0x96, 0x15, 0x50, + 0x61, 0x63, 0xe0, 0x8a, 0x8d, 0x2e, 0x29, 0x6f, 0x17, 0xde, 0x92, 0x21, + 0x45, 0x02, 0x50, 0x5c, 0x8d, 0x29, 0x18, 0xb1, 0x3c, 0x21, 0x77, 0x03, + 0xf5, 0x68, 0x43, 0xdd, +}; +static const struct drbg_kat_no_reseed kat1250_t = { + 4, kat1250_entropyin, kat1250_nonce, kat1250_persstr, + kat1250_addin0, kat1250_addin1, kat1250_retbits +}; +static const struct drbg_kat kat1250 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1250_t +}; + +static const unsigned char kat1251_entropyin[] = { + 0x87, 0x25, 0xbc, 0xbe, 0x38, 0x68, 0xdc, 0x96, 0xf6, 0xf4, 0xf7, 0xa8, + 0xc5, 0xee, 0x2f, 0x88, 0x1b, 0x7a, 0x4d, 0x41, 0xb9, 0xba, 0xd3, 0x32, + 0xfe, 0xfb, 0xd6, 0x79, 0x75, 0x88, 0x70, 0x5e, 0xd0, 0x3d, 0xef, 0x3b, + 0x32, 0x40, 0x67, 0x82, 0x4a, 0x63, 0x09, 0xf4, 0x2c, 0xf9, 0x8b, 0xda, +}; +static const unsigned char kat1251_nonce[] = {0}; +static const unsigned char kat1251_persstr[] = { + 0xd0, 0xb3, 0x01, 0x2f, 0xed, 0x05, 0x40, 0xf0, 0x24, 0x6d, 0x6f, 0xd6, + 0x24, 0xda, 0x58, 0x41, 0x92, 0x4b, 0xae, 0x4a, 0x76, 0xea, 0x59, 0x46, + 0x3d, 0x57, 0x77, 0xca, 0x8d, 0x12, 0x1f, 0x7c, 0xed, 0x98, 0x91, 0xca, + 0xa9, 0x21, 0x19, 0xec, 0x02, 0xc0, 0xee, 0x8d, 0xed, 0x2b, 0x26, 0x5f, +}; +static const unsigned char kat1251_addin0[] = { + 0x9f, 0x36, 0x01, 0xe0, 0xdf, 0x19, 0x53, 0xd8, 0xba, 0xe7, 0x00, 0xf3, + 0x98, 0x3e, 0x47, 0x9e, 0x1f, 0xec, 0x44, 0x3d, 0x6f, 0xfa, 0x12, 0xd6, + 0x87, 0x52, 0xcc, 0x68, 0xa6, 0x6a, 0x27, 0x48, 0xf7, 0xc6, 0xee, 0x0c, + 0x32, 0xa6, 0xda, 0xe3, 0xa4, 0x86, 0x15, 0x3c, 0x0c, 0xc4, 0x5b, 0x33, +}; +static const unsigned char kat1251_addin1[] = { + 0x3b, 0x32, 0xd8, 0x6f, 0xc3, 0xcd, 0x88, 0xdd, 0x6e, 0x3d, 0x7f, 0xb9, + 0x8a, 0x0c, 0x77, 0x3a, 0xee, 0x1a, 0xe4, 0x81, 0xb5, 0xdf, 0x91, 0x54, + 0x71, 0x7b, 0x22, 0x31, 0x61, 0x96, 0x08, 0x69, 0x53, 0x3c, 0x0d, 0x16, + 0x00, 0xbc, 0xea, 0xb0, 0xf6, 0x64, 0x15, 0x84, 0xae, 0xd6, 0xd4, 0xb0, +}; +static const unsigned char kat1251_retbits[] = { + 0x9c, 0x5f, 0x4d, 0xbc, 0xcd, 0x21, 0xef, 0xf9, 0x27, 0x60, 0x0f, 0x3f, + 0xa8, 0x37, 0x18, 0x9a, 0x81, 0x06, 0x34, 0x25, 0xd3, 0x16, 0x2a, 0x40, + 0x60, 0x4d, 0x3f, 0xbd, 0xb0, 0x76, 0x00, 0xc5, 0xff, 0xc1, 0xdb, 0x5f, + 0xd7, 0xe6, 0x3c, 0x20, 0x46, 0x64, 0x0c, 0x5b, 0x42, 0xdb, 0xfb, 0x85, + 0xfb, 0xf8, 0x24, 0x50, 0xae, 0x48, 0xf2, 0x95, 0x67, 0x95, 0x7f, 0xaa, + 0x74, 0x20, 0xf9, 0x69, +}; +static const struct drbg_kat_no_reseed kat1251_t = { + 5, kat1251_entropyin, kat1251_nonce, kat1251_persstr, + kat1251_addin0, kat1251_addin1, kat1251_retbits +}; +static const struct drbg_kat kat1251 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1251_t +}; + +static const unsigned char kat1252_entropyin[] = { + 0xcc, 0x7f, 0xf3, 0x44, 0x24, 0x97, 0x33, 0x10, 0x5d, 0x31, 0x6a, 0xdb, + 0x11, 0x54, 0xf5, 0xd8, 0xc7, 0x31, 0xc9, 0x3f, 0x84, 0xb7, 0x8e, 0xb2, + 0x33, 0xe6, 0xe8, 0xc7, 0xa1, 0x2f, 0x6c, 0xf7, 0xf5, 0x0e, 0x19, 0x20, + 0x9d, 0x6d, 0x06, 0xf7, 0x38, 0x48, 0xdb, 0xa0, 0xcb, 0x77, 0x0a, 0xd5, +}; +static const unsigned char kat1252_nonce[] = {0}; +static const unsigned char kat1252_persstr[] = { + 0x30, 0xcc, 0xac, 0x1e, 0x61, 0x58, 0xbc, 0xdc, 0xe5, 0xd1, 0xd4, 0xbb, + 0xdb, 0xf0, 0x4f, 0xe2, 0x6b, 0x3e, 0x92, 0x88, 0xd0, 0x06, 0xa1, 0x94, + 0x50, 0x35, 0x93, 0xfb, 0xd2, 0x43, 0x8e, 0x4f, 0x9b, 0x12, 0xbb, 0x39, + 0xcf, 0xa1, 0x8f, 0xcf, 0x20, 0x95, 0x55, 0x80, 0xc4, 0xaf, 0xcd, 0xd0, +}; +static const unsigned char kat1252_addin0[] = { + 0xd6, 0x88, 0x47, 0xe5, 0xfd, 0x92, 0xdc, 0x2c, 0x2b, 0x7d, 0x2a, 0xfe, + 0xc1, 0x3d, 0x25, 0x1a, 0x26, 0x8f, 0x3b, 0xe6, 0xde, 0x60, 0x64, 0xb4, + 0xd7, 0x6b, 0xb9, 0x49, 0x38, 0x69, 0xa0, 0xe9, 0xa0, 0x40, 0xb3, 0xd1, + 0xc0, 0xdf, 0x43, 0x7e, 0xba, 0xd7, 0x86, 0x13, 0x96, 0x3c, 0x0c, 0xbe, +}; +static const unsigned char kat1252_addin1[] = { + 0x3a, 0x4c, 0x85, 0x2a, 0x7f, 0x9e, 0x0e, 0x9e, 0xd6, 0x81, 0xa6, 0x3c, + 0xab, 0x1d, 0x94, 0xaa, 0x1c, 0x60, 0xdd, 0x4e, 0x72, 0x6b, 0x39, 0x01, + 0x2e, 0x38, 0xbc, 0xc3, 0x28, 0x9c, 0x1f, 0x92, 0x29, 0xbf, 0xdb, 0xaa, + 0xd0, 0x8d, 0x39, 0xc7, 0x38, 0x3b, 0xd0, 0x04, 0xff, 0xa9, 0x5b, 0x1d, +}; +static const unsigned char kat1252_retbits[] = { + 0x01, 0x97, 0x19, 0x1d, 0x1c, 0xd9, 0x66, 0x6b, 0xe7, 0x00, 0x3b, 0xf7, + 0xac, 0x77, 0xb9, 0xf6, 0x9a, 0x91, 0x88, 0x9e, 0xb0, 0xf7, 0x72, 0x0f, + 0x8b, 0xa4, 0x7e, 0xb5, 0xa9, 0xc1, 0x76, 0x1a, 0xe6, 0xfc, 0x6c, 0x7c, + 0xef, 0x13, 0x81, 0x9a, 0xe0, 0x87, 0x18, 0xa9, 0xa0, 0x88, 0xe9, 0xe9, + 0x95, 0x12, 0xb9, 0xc1, 0x66, 0x47, 0xa8, 0xb7, 0xdf, 0x47, 0xd4, 0xbe, + 0xae, 0xfa, 0x4f, 0xf7, +}; +static const struct drbg_kat_no_reseed kat1252_t = { + 6, kat1252_entropyin, kat1252_nonce, kat1252_persstr, + kat1252_addin0, kat1252_addin1, kat1252_retbits +}; +static const struct drbg_kat kat1252 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1252_t +}; + +static const unsigned char kat1253_entropyin[] = { + 0xe3, 0x37, 0x1d, 0x3b, 0x3c, 0x26, 0x4e, 0x10, 0xd2, 0x70, 0xf4, 0xce, + 0xca, 0xa0, 0x9a, 0xd2, 0x02, 0xee, 0x91, 0xee, 0x2d, 0xdd, 0x14, 0xf8, + 0x0e, 0xa8, 0x5d, 0x32, 0x33, 0x88, 0x71, 0x29, 0xa4, 0x15, 0x80, 0x9d, + 0x42, 0xd3, 0x68, 0xee, 0xe4, 0xc9, 0x41, 0xe4, 0xe9, 0x35, 0x45, 0x82, +}; +static const unsigned char kat1253_nonce[] = {0}; +static const unsigned char kat1253_persstr[] = { + 0x68, 0x95, 0x79, 0x2f, 0xdb, 0xe0, 0xf0, 0x2a, 0xde, 0x39, 0x6a, 0x50, + 0xd2, 0xb9, 0xa7, 0xc3, 0xd6, 0x03, 0x09, 0x2f, 0x35, 0x4e, 0x46, 0x67, + 0x4a, 0x7d, 0x41, 0x20, 0x50, 0xdc, 0xaa, 0x39, 0xde, 0xaf, 0xf4, 0xe0, + 0x5d, 0xa8, 0x4a, 0xed, 0xdf, 0x37, 0xd2, 0x58, 0x3b, 0xcf, 0x1a, 0x35, +}; +static const unsigned char kat1253_addin0[] = { + 0xc2, 0x18, 0xa0, 0x40, 0x4d, 0x23, 0x4c, 0xb1, 0xca, 0x5e, 0xa2, 0xeb, + 0xf7, 0x1d, 0x82, 0x9c, 0xab, 0x7a, 0xd0, 0x71, 0x50, 0x13, 0xac, 0x13, + 0x33, 0x08, 0x17, 0x2b, 0xd4, 0xa7, 0xcd, 0x79, 0xa7, 0x0c, 0xe0, 0xec, + 0x21, 0x3a, 0xd8, 0x98, 0xe5, 0x0b, 0x0a, 0xdb, 0xfa, 0x39, 0x39, 0x4f, +}; +static const unsigned char kat1253_addin1[] = { + 0xc4, 0x38, 0x73, 0x1a, 0xed, 0x46, 0xd4, 0x9a, 0x54, 0x2d, 0x2f, 0x7c, + 0x4f, 0x09, 0x04, 0xaf, 0x49, 0x14, 0x5d, 0x21, 0xf0, 0x53, 0xd7, 0x4d, + 0x0f, 0xd5, 0x99, 0x1d, 0x3c, 0x09, 0xcc, 0x93, 0xf2, 0xb4, 0x17, 0x2f, + 0x34, 0xeb, 0xaa, 0xd8, 0x73, 0xce, 0xb6, 0x76, 0x55, 0x1b, 0x90, 0xea, +}; +static const unsigned char kat1253_retbits[] = { + 0x8e, 0xf2, 0x93, 0xae, 0x0c, 0xd3, 0xec, 0x81, 0xce, 0x8d, 0x7f, 0xf7, + 0xc8, 0x9b, 0x3d, 0x22, 0x11, 0x23, 0x69, 0x9d, 0xc7, 0xf4, 0x68, 0x64, + 0x92, 0x27, 0xeb, 0x2a, 0xc2, 0x39, 0x5a, 0x24, 0x05, 0x62, 0xa1, 0x25, + 0xc7, 0x36, 0x10, 0xc6, 0x6b, 0x73, 0x9e, 0x22, 0x49, 0x8b, 0x42, 0xce, + 0x35, 0xff, 0xd0, 0x18, 0xa9, 0x93, 0x68, 0xdd, 0x4d, 0xd6, 0x91, 0xf8, + 0x73, 0xfd, 0xaf, 0x16, +}; +static const struct drbg_kat_no_reseed kat1253_t = { + 7, kat1253_entropyin, kat1253_nonce, kat1253_persstr, + kat1253_addin0, kat1253_addin1, kat1253_retbits +}; +static const struct drbg_kat kat1253 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1253_t +}; + +static const unsigned char kat1254_entropyin[] = { + 0x6e, 0xf9, 0xe7, 0x38, 0xc7, 0xad, 0x40, 0x54, 0x02, 0x31, 0x00, 0xe6, + 0x98, 0x4c, 0xc0, 0x63, 0x9c, 0xe0, 0x79, 0xae, 0xbd, 0xef, 0xe7, 0xc2, + 0x26, 0xef, 0x2e, 0x5e, 0xf2, 0x18, 0x7c, 0x92, 0x13, 0x61, 0xea, 0xf4, + 0x54, 0x8f, 0x69, 0xd4, 0x87, 0x3e, 0x62, 0xe5, 0x57, 0x09, 0x6c, 0xa3, +}; +static const unsigned char kat1254_nonce[] = {0}; +static const unsigned char kat1254_persstr[] = { + 0xc7, 0xfb, 0x77, 0x43, 0xf2, 0xea, 0x10, 0xee, 0x3b, 0xc9, 0x58, 0x20, + 0x27, 0x19, 0x6c, 0x58, 0xf9, 0x4b, 0xde, 0x40, 0x07, 0x4d, 0xed, 0x73, + 0xd8, 0x45, 0x6b, 0xac, 0xfd, 0x75, 0x40, 0xf0, 0x52, 0xa2, 0x65, 0x91, + 0x1e, 0x67, 0x6e, 0x7a, 0xa8, 0xde, 0x1e, 0x7e, 0xe9, 0x74, 0xb2, 0xf6, +}; +static const unsigned char kat1254_addin0[] = { + 0x2e, 0xf8, 0xf4, 0x53, 0x59, 0x61, 0x5e, 0x61, 0x36, 0xad, 0xf2, 0x72, + 0xad, 0x68, 0x5d, 0x90, 0xc8, 0xa6, 0x5f, 0x17, 0x64, 0x88, 0x9a, 0x11, + 0x02, 0xe2, 0x18, 0xf5, 0x9d, 0xf6, 0xe9, 0x8f, 0xad, 0x7d, 0x8f, 0xe3, + 0xf0, 0x84, 0x51, 0x7c, 0xfd, 0x8a, 0x7a, 0x70, 0x88, 0x49, 0x05, 0x38, +}; +static const unsigned char kat1254_addin1[] = { + 0x02, 0xf2, 0x55, 0xfc, 0xa2, 0x2b, 0x75, 0x0e, 0x71, 0x96, 0xc8, 0x4a, + 0x48, 0x21, 0xe7, 0x60, 0x7b, 0x9d, 0x09, 0x57, 0xd6, 0x2a, 0xb9, 0x1d, + 0x82, 0xa8, 0x4f, 0x2f, 0xd3, 0x63, 0x03, 0xb7, 0x90, 0x06, 0xf7, 0xc3, + 0xeb, 0xd7, 0x9e, 0x36, 0x71, 0xba, 0x33, 0xa2, 0x7f, 0xfc, 0x72, 0x59, +}; +static const unsigned char kat1254_retbits[] = { + 0x12, 0xbe, 0x8e, 0x5e, 0xb5, 0x42, 0x2a, 0x3b, 0x2c, 0xbb, 0x95, 0x1e, + 0x04, 0x3c, 0x2b, 0xb4, 0xe2, 0xc8, 0xf3, 0x62, 0xa1, 0xd7, 0xb6, 0x2d, + 0x45, 0x9c, 0xae, 0xd4, 0x74, 0x5c, 0x1d, 0xf9, 0x26, 0xf6, 0xd5, 0xac, + 0xce, 0x2d, 0x74, 0x80, 0xe0, 0x4c, 0x83, 0xc5, 0xb1, 0x5f, 0x6f, 0x9e, + 0x5d, 0xca, 0xd6, 0x76, 0x99, 0x75, 0xa9, 0xaf, 0x0d, 0xbf, 0xf4, 0xbb, + 0x34, 0xb0, 0xee, 0xd9, +}; +static const struct drbg_kat_no_reseed kat1254_t = { + 8, kat1254_entropyin, kat1254_nonce, kat1254_persstr, + kat1254_addin0, kat1254_addin1, kat1254_retbits +}; +static const struct drbg_kat kat1254 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1254_t +}; + +static const unsigned char kat1255_entropyin[] = { + 0x00, 0x80, 0x0c, 0xc4, 0x76, 0x1f, 0xc1, 0xca, 0x30, 0x98, 0x2f, 0x4d, + 0xc2, 0xf7, 0x03, 0xca, 0x44, 0x97, 0xb8, 0x25, 0x1f, 0xbe, 0x72, 0x71, + 0x04, 0xfd, 0x0c, 0x0f, 0x5f, 0x9c, 0x7d, 0xce, 0xa7, 0x0b, 0x1a, 0x39, + 0x16, 0xeb, 0xc1, 0x9d, 0x1b, 0x68, 0xa4, 0xd2, 0xda, 0x4f, 0x10, 0x31, +}; +static const unsigned char kat1255_nonce[] = {0}; +static const unsigned char kat1255_persstr[] = { + 0x37, 0x3c, 0x0d, 0xfe, 0x24, 0x9c, 0xf4, 0xc9, 0xcc, 0x73, 0xc2, 0x4c, + 0x17, 0x0f, 0x70, 0x78, 0x65, 0xe3, 0xec, 0x1d, 0x91, 0x97, 0x2f, 0xf3, + 0xfd, 0x77, 0xfe, 0xbe, 0xa8, 0xb6, 0xc1, 0x2d, 0x2d, 0xcd, 0x9d, 0x4d, + 0xa7, 0xcb, 0x65, 0x3d, 0xda, 0x2f, 0xd1, 0xff, 0x58, 0xdf, 0x2b, 0x8e, +}; +static const unsigned char kat1255_addin0[] = { + 0xdd, 0xd0, 0x45, 0x8d, 0x64, 0x90, 0xb0, 0x79, 0x35, 0x1e, 0xee, 0x99, + 0x8b, 0x88, 0xd1, 0xd0, 0x1a, 0x17, 0x19, 0xdf, 0xa6, 0x9c, 0x9b, 0x72, + 0xa3, 0x60, 0x5d, 0xe5, 0x71, 0xe5, 0x9f, 0xdd, 0x34, 0x2e, 0x85, 0x6a, + 0x09, 0x0a, 0x13, 0x23, 0x93, 0xe7, 0xe5, 0x61, 0x6e, 0x95, 0x90, 0xe0, +}; +static const unsigned char kat1255_addin1[] = { + 0xaf, 0x7a, 0xdb, 0xbc, 0xbd, 0x4a, 0x1d, 0xc1, 0xb9, 0x6b, 0x88, 0x83, + 0xa3, 0x71, 0xc4, 0x31, 0x40, 0x42, 0xa2, 0x86, 0xd4, 0x02, 0x32, 0xef, + 0x2c, 0x98, 0xac, 0xe4, 0x62, 0xc7, 0xce, 0xa2, 0x9c, 0x20, 0xc6, 0xd7, + 0xb6, 0x42, 0x4c, 0x0c, 0x45, 0x36, 0xdd, 0x2f, 0x89, 0x90, 0xf6, 0x32, +}; +static const unsigned char kat1255_retbits[] = { + 0x3e, 0xc1, 0x8d, 0xd0, 0x38, 0xd1, 0xfd, 0x71, 0x47, 0x23, 0xf9, 0x06, + 0xb2, 0x51, 0xa1, 0x72, 0xa3, 0xd3, 0xee, 0x30, 0x8f, 0xbf, 0x51, 0xb9, + 0x2f, 0x8f, 0x0c, 0x16, 0x74, 0x38, 0x3e, 0x8c, 0xe8, 0x51, 0x07, 0x95, + 0x96, 0xdd, 0x6e, 0xcc, 0xfb, 0x4f, 0xac, 0xde, 0x7a, 0x23, 0x59, 0x57, + 0x51, 0x37, 0x07, 0x9a, 0x9f, 0xf5, 0x7d, 0x6e, 0xe7, 0xf8, 0x56, 0x74, + 0x93, 0xe8, 0xfa, 0x02, +}; +static const struct drbg_kat_no_reseed kat1255_t = { + 9, kat1255_entropyin, kat1255_nonce, kat1255_persstr, + kat1255_addin0, kat1255_addin1, kat1255_retbits +}; +static const struct drbg_kat kat1255 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1255_t +}; + +static const unsigned char kat1256_entropyin[] = { + 0x2f, 0x94, 0xc1, 0x29, 0xbc, 0x75, 0xe9, 0x83, 0x5a, 0xda, 0xcf, 0x73, + 0xb7, 0x31, 0xb6, 0x62, 0x48, 0xf9, 0x69, 0x63, 0x6f, 0xa0, 0x61, 0x8b, + 0x98, 0x6d, 0x0e, 0x9e, 0xb6, 0x22, 0xb6, 0xc0, 0x59, 0x66, 0xfd, 0x11, + 0x58, 0xdc, 0x1b, 0xc5, 0xc1, 0x39, 0x8c, 0xd8, 0x03, 0x1e, 0x99, 0x60, +}; +static const unsigned char kat1256_nonce[] = {0}; +static const unsigned char kat1256_persstr[] = { + 0xc3, 0x20, 0x43, 0x5c, 0xad, 0x09, 0x9d, 0xcb, 0xa1, 0xaa, 0xed, 0x51, + 0x62, 0x39, 0x77, 0xba, 0xb7, 0x06, 0x71, 0xd9, 0x34, 0xf6, 0xa0, 0x2c, + 0x7e, 0x96, 0x44, 0x84, 0xda, 0xee, 0xee, 0xc2, 0xd1, 0xfa, 0xfa, 0x3c, + 0xa7, 0xa3, 0xc8, 0x63, 0x37, 0x15, 0xef, 0x7e, 0x9b, 0xd8, 0x76, 0x91, +}; +static const unsigned char kat1256_addin0[] = { + 0xfa, 0x41, 0x5e, 0xf8, 0x27, 0x07, 0x58, 0xc8, 0xda, 0x17, 0x24, 0x8b, + 0xd3, 0xa6, 0xb1, 0x19, 0xbe, 0x74, 0xf6, 0xa4, 0x2f, 0x28, 0x48, 0x41, + 0x06, 0x57, 0x83, 0xfd, 0xfb, 0xaa, 0x53, 0xe3, 0xfa, 0xcc, 0xe0, 0x12, + 0x85, 0xc1, 0x0e, 0xe1, 0xc5, 0xc9, 0xfd, 0xb8, 0x99, 0x40, 0xbb, 0x47, +}; +static const unsigned char kat1256_addin1[] = { + 0xfa, 0x58, 0x11, 0x1b, 0x4c, 0x6d, 0x5f, 0x7f, 0x2b, 0x00, 0x42, 0x2e, + 0xfb, 0x5e, 0xd9, 0x83, 0x2c, 0xf4, 0x2f, 0x3c, 0xdc, 0x83, 0x13, 0x0a, + 0xa3, 0x35, 0x5c, 0x26, 0x75, 0x31, 0x99, 0x88, 0x61, 0xe4, 0x06, 0x7b, + 0xf3, 0xfb, 0x9f, 0x28, 0xbe, 0x36, 0x40, 0x8c, 0x2c, 0x51, 0x56, 0x01, +}; +static const unsigned char kat1256_retbits[] = { + 0x89, 0x70, 0xa2, 0x0b, 0x8b, 0xfc, 0xbf, 0x45, 0xf6, 0x41, 0xe3, 0xba, + 0x8f, 0x28, 0xa0, 0x8b, 0xd1, 0xc1, 0x51, 0xea, 0x8f, 0x5f, 0x09, 0xea, + 0xc0, 0xab, 0x71, 0x5d, 0x2a, 0x52, 0xe0, 0x60, 0x9b, 0xe1, 0xfd, 0xa1, + 0x3b, 0xe3, 0x18, 0x16, 0x67, 0x0e, 0x43, 0x3f, 0xbc, 0x38, 0xa8, 0x43, + 0x70, 0x1f, 0xd9, 0x35, 0xe2, 0xcd, 0xcd, 0xbb, 0x2c, 0xc5, 0xe2, 0x04, + 0x54, 0xe5, 0x63, 0x81, +}; +static const struct drbg_kat_no_reseed kat1256_t = { + 10, kat1256_entropyin, kat1256_nonce, kat1256_persstr, + kat1256_addin0, kat1256_addin1, kat1256_retbits +}; +static const struct drbg_kat kat1256 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1256_t +}; + +static const unsigned char kat1257_entropyin[] = { + 0xde, 0x2c, 0x94, 0x55, 0x8a, 0xda, 0xbf, 0xb2, 0x86, 0xc9, 0x51, 0x38, + 0xab, 0x25, 0x30, 0x4b, 0x8e, 0x3d, 0x15, 0xc8, 0x96, 0x13, 0x52, 0x88, + 0x02, 0xb4, 0x30, 0xcd, 0x14, 0xd1, 0x68, 0x5d, 0x09, 0x8a, 0x92, 0x82, + 0xea, 0xfe, 0x09, 0x68, 0x27, 0xef, 0x4f, 0x8b, 0xb7, 0x02, 0xe2, 0x91, +}; +static const unsigned char kat1257_nonce[] = {0}; +static const unsigned char kat1257_persstr[] = { + 0xa4, 0x66, 0x94, 0x20, 0xac, 0xda, 0x7a, 0x25, 0x2e, 0x8a, 0x46, 0xd3, + 0xcf, 0xc9, 0x76, 0xe7, 0xd3, 0xba, 0xa6, 0xf6, 0x83, 0x27, 0x27, 0xe4, + 0x28, 0x0e, 0x57, 0xe6, 0x97, 0x05, 0x13, 0x25, 0x83, 0x31, 0x35, 0x74, + 0xbd, 0x97, 0x5d, 0xab, 0x44, 0xf2, 0x2c, 0x10, 0xa6, 0x92, 0xab, 0x03, +}; +static const unsigned char kat1257_addin0[] = { + 0x7b, 0xe3, 0xd0, 0x34, 0x00, 0xea, 0x13, 0x8a, 0x6f, 0x39, 0x8b, 0xfa, + 0xd6, 0xd0, 0xb7, 0x11, 0x16, 0xca, 0xd9, 0xa0, 0xc5, 0x93, 0x27, 0xc7, + 0x62, 0x2d, 0xe0, 0x04, 0x5b, 0x0a, 0x1e, 0x20, 0x6c, 0xf1, 0x7c, 0x91, + 0xf3, 0x36, 0xa5, 0x3e, 0x11, 0x42, 0x5a, 0x24, 0xa4, 0xa3, 0xac, 0x92, +}; +static const unsigned char kat1257_addin1[] = { + 0x1b, 0x17, 0x94, 0x3c, 0x88, 0x3a, 0x5f, 0x3f, 0x2a, 0x76, 0xbe, 0x46, + 0xb6, 0xcf, 0xe1, 0xe1, 0x67, 0x4e, 0x06, 0xbb, 0x08, 0x7d, 0x8d, 0x60, + 0xca, 0x28, 0x13, 0x21, 0x43, 0x65, 0x8c, 0x76, 0xd9, 0x59, 0xb8, 0x55, + 0x30, 0xa8, 0x8f, 0xe0, 0x05, 0x6c, 0xcd, 0x16, 0xc5, 0xf9, 0x84, 0x7f, +}; +static const unsigned char kat1257_retbits[] = { + 0x5e, 0x44, 0x89, 0x67, 0x1c, 0x6d, 0x92, 0xb1, 0x9e, 0x93, 0x9d, 0xe8, + 0x7e, 0xbe, 0x03, 0x36, 0x7c, 0xd0, 0xa9, 0x48, 0x6e, 0xef, 0x0a, 0x46, + 0xa7, 0x2d, 0x5f, 0x71, 0xd2, 0x0c, 0x38, 0x73, 0x55, 0xc2, 0x28, 0x58, + 0xac, 0x4e, 0x87, 0x95, 0x80, 0xb4, 0xbf, 0x0e, 0x14, 0x9d, 0x4c, 0x5b, + 0x6b, 0xe0, 0x91, 0xbb, 0x3a, 0x5d, 0x64, 0x95, 0xba, 0x83, 0xf4, 0x7c, + 0x1b, 0xcb, 0x4d, 0x45, +}; +static const struct drbg_kat_no_reseed kat1257_t = { + 11, kat1257_entropyin, kat1257_nonce, kat1257_persstr, + kat1257_addin0, kat1257_addin1, kat1257_retbits +}; +static const struct drbg_kat kat1257 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1257_t +}; + +static const unsigned char kat1258_entropyin[] = { + 0x77, 0x6f, 0x8e, 0x34, 0xca, 0xc2, 0x75, 0x7e, 0x83, 0xe9, 0x5e, 0xf1, + 0x07, 0x54, 0x10, 0x36, 0x0d, 0x8b, 0x85, 0x20, 0xb8, 0x77, 0x56, 0x65, + 0x0c, 0x4e, 0x4e, 0x26, 0x16, 0x84, 0xfc, 0x40, 0x13, 0xcf, 0x6c, 0x93, + 0x04, 0xd9, 0xe8, 0x10, 0x0c, 0xa9, 0xe2, 0x6c, 0x97, 0x54, 0xb3, 0xfd, +}; +static const unsigned char kat1258_nonce[] = {0}; +static const unsigned char kat1258_persstr[] = { + 0x14, 0xb4, 0x34, 0xb1, 0x24, 0x52, 0x30, 0x90, 0x75, 0x69, 0x3e, 0x6e, + 0x5d, 0x56, 0x3e, 0x5c, 0x93, 0xea, 0xda, 0x6b, 0xec, 0xb2, 0xba, 0x91, + 0x19, 0xe7, 0x45, 0x3b, 0xa0, 0xc7, 0x67, 0x3f, 0xbe, 0x82, 0xc6, 0x19, + 0xa3, 0x17, 0x2d, 0x29, 0x78, 0xef, 0x5c, 0x5b, 0x93, 0x82, 0x87, 0xf9, +}; +static const unsigned char kat1258_addin0[] = { + 0x51, 0xda, 0x28, 0x22, 0x9d, 0xfa, 0xd4, 0x66, 0x56, 0xb2, 0x89, 0x20, + 0xe5, 0x90, 0xf8, 0x49, 0xcb, 0x6f, 0x74, 0xd4, 0x76, 0x39, 0x94, 0x06, + 0x10, 0xe4, 0x70, 0xc5, 0xd5, 0x20, 0x90, 0xe1, 0xab, 0x77, 0x44, 0x0a, + 0x4e, 0x49, 0x5d, 0x10, 0xf0, 0xee, 0x9f, 0xee, 0x8e, 0x65, 0xd9, 0xd4, +}; +static const unsigned char kat1258_addin1[] = { + 0x44, 0x60, 0xcb, 0x1e, 0x89, 0x0b, 0xf3, 0x4e, 0x94, 0xf2, 0x5c, 0xe6, + 0x51, 0x71, 0x0e, 0xba, 0x56, 0xea, 0xe5, 0x85, 0xfa, 0xe2, 0x85, 0x34, + 0xa9, 0xd0, 0x4b, 0x9d, 0x2b, 0xca, 0xde, 0x08, 0xfd, 0xbd, 0x04, 0xc2, + 0xb3, 0x63, 0x58, 0x3f, 0x94, 0xb2, 0x43, 0x7a, 0x8c, 0x7e, 0x65, 0xd2, +}; +static const unsigned char kat1258_retbits[] = { + 0xff, 0xef, 0xb1, 0xdc, 0x31, 0x6c, 0x12, 0x65, 0x9d, 0x33, 0xc3, 0xce, + 0x2d, 0x90, 0xf9, 0x63, 0x03, 0xc4, 0x7f, 0xae, 0x68, 0x84, 0x31, 0xc1, + 0x4b, 0x39, 0x2b, 0x18, 0x96, 0x09, 0x6a, 0x5f, 0x29, 0x99, 0xbc, 0x31, + 0x06, 0xb9, 0x63, 0xdd, 0x7a, 0x7f, 0x7c, 0x55, 0x54, 0x4f, 0x72, 0xd3, + 0x7c, 0xc9, 0xa3, 0xd2, 0x76, 0x7a, 0xf5, 0xa8, 0xeb, 0x81, 0xe3, 0x22, + 0xff, 0x5f, 0xd6, 0x05, +}; +static const struct drbg_kat_no_reseed kat1258_t = { + 12, kat1258_entropyin, kat1258_nonce, kat1258_persstr, + kat1258_addin0, kat1258_addin1, kat1258_retbits +}; +static const struct drbg_kat kat1258 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1258_t +}; + +static const unsigned char kat1259_entropyin[] = { + 0x7f, 0x4f, 0xa1, 0xbf, 0xa3, 0xa0, 0x30, 0x1d, 0xab, 0x9c, 0x0d, 0x9d, + 0x93, 0xfa, 0x67, 0xe9, 0x6b, 0x76, 0x16, 0xf2, 0x83, 0x21, 0xb6, 0x81, + 0xeb, 0xe4, 0xea, 0x00, 0x2e, 0x88, 0xee, 0x58, 0xdc, 0xa7, 0x6d, 0xc5, + 0x5b, 0x23, 0x24, 0xed, 0x5b, 0xe7, 0x8c, 0xd3, 0x36, 0x3f, 0xe4, 0x47, +}; +static const unsigned char kat1259_nonce[] = {0}; +static const unsigned char kat1259_persstr[] = { + 0x8f, 0x68, 0x95, 0xf8, 0x1f, 0x28, 0x95, 0x4e, 0x4f, 0x40, 0x03, 0xb3, + 0x61, 0x88, 0x74, 0xfe, 0x7d, 0x49, 0x70, 0x9c, 0x43, 0x02, 0xa8, 0x67, + 0x8d, 0x29, 0xa6, 0x7e, 0xe5, 0xbe, 0xa6, 0xdf, 0x2c, 0x70, 0xbd, 0x93, + 0x84, 0x71, 0xbe, 0x77, 0x0c, 0x90, 0x1a, 0xdf, 0xc9, 0xf6, 0x90, 0x51, +}; +static const unsigned char kat1259_addin0[] = { + 0xcd, 0x7d, 0x83, 0xad, 0x85, 0xf2, 0x37, 0x94, 0x10, 0x82, 0x11, 0xb9, + 0xb0, 0xe6, 0x02, 0x98, 0xb8, 0x6b, 0x9a, 0x84, 0xa1, 0x11, 0x07, 0x73, + 0x71, 0xf0, 0x45, 0xf6, 0x69, 0x2f, 0xd0, 0xb7, 0xb9, 0x07, 0x21, 0x67, + 0xb4, 0x68, 0x62, 0xa8, 0x3f, 0x67, 0xad, 0x5d, 0x02, 0xfa, 0x39, 0x34, +}; +static const unsigned char kat1259_addin1[] = { + 0x7c, 0x64, 0x0a, 0xd1, 0xab, 0x50, 0x56, 0x0a, 0x33, 0xa8, 0x0f, 0xe6, + 0x12, 0xf3, 0xdc, 0x8b, 0xe1, 0x57, 0x0e, 0x5b, 0xe2, 0x69, 0x21, 0xd9, + 0x2e, 0xbf, 0xc7, 0x2c, 0x33, 0xed, 0x3e, 0x93, 0x9f, 0x12, 0x23, 0xc4, + 0x95, 0xeb, 0xe2, 0x78, 0xc0, 0x43, 0x63, 0xb7, 0x4f, 0xa7, 0x8d, 0xc8, +}; +static const unsigned char kat1259_retbits[] = { + 0x18, 0x1e, 0x2d, 0x61, 0xf8, 0xa6, 0x2d, 0xe8, 0x53, 0xc9, 0xd4, 0x05, + 0xfa, 0x79, 0x12, 0x3f, 0x26, 0xdb, 0xac, 0x74, 0xe5, 0x8a, 0x71, 0xd5, + 0x46, 0x48, 0x7e, 0x55, 0xee, 0x76, 0xe9, 0xe2, 0x6c, 0xd1, 0x82, 0xa7, + 0xac, 0x4f, 0x29, 0xdc, 0xe7, 0xaf, 0x7c, 0x39, 0x9a, 0x85, 0x5f, 0x37, + 0x5b, 0x6f, 0x61, 0x51, 0xc4, 0xc6, 0x8d, 0xf9, 0x2b, 0x7f, 0xc7, 0x3f, + 0x4f, 0x7c, 0x13, 0x4e, +}; +static const struct drbg_kat_no_reseed kat1259_t = { + 13, kat1259_entropyin, kat1259_nonce, kat1259_persstr, + kat1259_addin0, kat1259_addin1, kat1259_retbits +}; +static const struct drbg_kat kat1259 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1259_t +}; + +static const unsigned char kat1260_entropyin[] = { + 0x5c, 0x3f, 0x7f, 0x41, 0xe6, 0x87, 0x56, 0x83, 0xfb, 0x25, 0x51, 0x5a, + 0x08, 0x77, 0xf1, 0xc3, 0x85, 0xaf, 0xc1, 0x86, 0xd1, 0xc7, 0xe8, 0xdd, + 0x83, 0x80, 0x24, 0xf9, 0xb4, 0x7f, 0x8b, 0xcd, 0xda, 0x99, 0x44, 0x13, + 0x54, 0x99, 0x90, 0x7c, 0xed, 0x45, 0x83, 0x39, 0x76, 0x76, 0x78, 0x07, +}; +static const unsigned char kat1260_nonce[] = {0}; +static const unsigned char kat1260_persstr[] = { + 0x05, 0x5b, 0xa2, 0x9f, 0x50, 0xe5, 0x01, 0x35, 0xef, 0x62, 0x9d, 0x2a, + 0x9d, 0x35, 0x57, 0x29, 0x6a, 0x29, 0xa0, 0x7f, 0x8c, 0xe9, 0xc4, 0x91, + 0x3c, 0x2e, 0x55, 0x25, 0x18, 0x45, 0x9f, 0x9e, 0x46, 0x26, 0x01, 0xb4, + 0xfb, 0x90, 0x96, 0x40, 0xde, 0x1d, 0xd5, 0xcb, 0x22, 0x90, 0xf3, 0xe2, +}; +static const unsigned char kat1260_addin0[] = { + 0x78, 0x1c, 0x24, 0x41, 0x57, 0x7a, 0xc0, 0x5f, 0xc0, 0x69, 0xf0, 0xf9, + 0x88, 0xe1, 0x50, 0xd7, 0xe9, 0x83, 0xbb, 0xb4, 0x98, 0x10, 0xee, 0xac, + 0x8b, 0x5d, 0x98, 0xfc, 0x5d, 0xac, 0x18, 0x34, 0x46, 0x63, 0xe4, 0x6f, + 0xde, 0x48, 0xf7, 0xf2, 0xcc, 0xa0, 0x96, 0xfb, 0x2c, 0x9d, 0xb5, 0x7a, +}; +static const unsigned char kat1260_addin1[] = { + 0x75, 0x98, 0xea, 0xbe, 0xa8, 0xe5, 0x16, 0xeb, 0x2d, 0x11, 0x14, 0x41, + 0xe9, 0x4a, 0x98, 0xbb, 0x37, 0x91, 0x6f, 0x29, 0x1e, 0x31, 0x07, 0xdd, + 0x99, 0x1e, 0x77, 0x98, 0xed, 0x89, 0x6d, 0xc9, 0x9b, 0x1a, 0x40, 0x54, + 0x43, 0xf7, 0xc7, 0x81, 0xb9, 0x8a, 0xdc, 0x8b, 0xa9, 0x75, 0x06, 0x96, +}; +static const unsigned char kat1260_retbits[] = { + 0xea, 0xe9, 0x35, 0xbf, 0x9e, 0xa3, 0x17, 0x4c, 0x0d, 0x7d, 0xa0, 0x35, + 0x9c, 0x17, 0x5c, 0xc6, 0xbb, 0xb9, 0x1e, 0xcf, 0x93, 0x57, 0xe7, 0x74, + 0x80, 0x11, 0xfb, 0xa0, 0x2f, 0xd5, 0x22, 0x05, 0xdf, 0x0a, 0x87, 0xa4, + 0x4e, 0xb4, 0xcc, 0xb6, 0x01, 0x5b, 0x26, 0x6e, 0xd3, 0xbb, 0x9b, 0xe4, + 0xd0, 0xd4, 0x03, 0x83, 0x8b, 0xac, 0xd4, 0x27, 0x57, 0xcd, 0x34, 0x21, + 0x6d, 0x71, 0x98, 0x9f, +}; +static const struct drbg_kat_no_reseed kat1260_t = { + 14, kat1260_entropyin, kat1260_nonce, kat1260_persstr, + kat1260_addin0, kat1260_addin1, kat1260_retbits +}; +static const struct drbg_kat kat1260 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1260_t +}; + +static const unsigned char kat1261_entropyin[] = { + 0xfc, 0x7f, 0x26, 0x29, 0xc9, 0xd8, 0x86, 0x72, 0xf8, 0x12, 0x29, 0xbb, + 0xcc, 0x0c, 0x7e, 0x75, 0xc4, 0xb7, 0xd8, 0xe5, 0xd9, 0x38, 0x07, 0x02, + 0xea, 0x52, 0xdc, 0x49, 0x56, 0x00, 0xa5, 0x6e, 0x4a, 0xe5, 0xf0, 0xa5, + 0xc2, 0x5f, 0xb5, 0xd7, 0xe3, 0x1f, 0x5a, 0xef, 0x47, 0x12, 0xbc, 0x19, +}; +static const unsigned char kat1261_nonce[] = {0}; +static const unsigned char kat1261_persstr[] = {0}; +static const unsigned char kat1261_addin0[] = {0}; +static const unsigned char kat1261_addin1[] = {0}; +static const unsigned char kat1261_retbits[] = { + 0xc6, 0x77, 0x5c, 0x9c, 0x64, 0x13, 0x7c, 0x01, 0x84, 0x18, 0xc4, 0xf0, + 0x01, 0xd0, 0xe4, 0xd1, 0xf2, 0xdc, 0x44, 0x11, 0xd3, 0x79, 0xa6, 0x78, + 0xf1, 0xd7, 0x1e, 0xee, 0x0b, 0xdc, 0x28, 0xc6, 0x6e, 0xac, 0xbd, 0x38, + 0xf7, 0x6b, 0xe4, 0x5b, 0xf9, 0x92, 0xa7, 0x09, 0xaf, 0x14, 0xd1, 0x46, + 0xc3, 0x5f, 0x91, 0x70, 0x2d, 0x27, 0xa1, 0xf4, 0x17, 0x63, 0x32, 0xeb, + 0xd9, 0x03, 0xff, 0xf9, +}; +static const struct drbg_kat_no_reseed kat1261_t = { + 0, kat1261_entropyin, kat1261_nonce, kat1261_persstr, + kat1261_addin0, kat1261_addin1, kat1261_retbits +}; +static const struct drbg_kat kat1261 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1261_t +}; + +static const unsigned char kat1262_entropyin[] = { + 0xc3, 0x2c, 0xba, 0x5e, 0xe6, 0x42, 0x91, 0xed, 0x1d, 0x7d, 0xc5, 0x1f, + 0x8a, 0xd3, 0xad, 0x40, 0xae, 0x24, 0xc8, 0xfd, 0x2f, 0x78, 0x94, 0x35, + 0x93, 0xc8, 0xf0, 0xa0, 0xb5, 0xa5, 0x38, 0x07, 0x98, 0x24, 0x2e, 0xe8, + 0x8c, 0xee, 0xba, 0x0d, 0x87, 0x5b, 0x35, 0xa2, 0xd4, 0xfd, 0x8d, 0x19, +}; +static const unsigned char kat1262_nonce[] = {0}; +static const unsigned char kat1262_persstr[] = {0}; +static const unsigned char kat1262_addin0[] = {0}; +static const unsigned char kat1262_addin1[] = {0}; +static const unsigned char kat1262_retbits[] = { + 0x15, 0x73, 0x66, 0xfc, 0x87, 0x77, 0xf6, 0xf0, 0xb7, 0x6a, 0x12, 0xf7, + 0xbe, 0x0c, 0xf0, 0x59, 0x9c, 0x7a, 0x2a, 0x39, 0x9d, 0x54, 0xac, 0xba, + 0x60, 0x64, 0x26, 0x02, 0x6e, 0x1c, 0x0a, 0x11, 0xb4, 0x38, 0x01, 0xfa, + 0x9f, 0x0f, 0x47, 0x06, 0x48, 0xf7, 0xcd, 0x2f, 0x83, 0xd2, 0x58, 0xc7, + 0xed, 0x72, 0x34, 0xed, 0x3e, 0xe9, 0xc9, 0xf6, 0x1d, 0x93, 0xda, 0x57, + 0x8a, 0x07, 0x0a, 0x4b, +}; +static const struct drbg_kat_no_reseed kat1262_t = { + 1, kat1262_entropyin, kat1262_nonce, kat1262_persstr, + kat1262_addin0, kat1262_addin1, kat1262_retbits +}; +static const struct drbg_kat kat1262 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1262_t +}; + +static const unsigned char kat1263_entropyin[] = { + 0x87, 0x9e, 0x28, 0x6b, 0x7d, 0xe4, 0xf4, 0x89, 0x8a, 0x96, 0xd9, 0x99, + 0xd1, 0x8d, 0xba, 0x01, 0x55, 0x73, 0x8b, 0xa0, 0x6b, 0xa9, 0xd4, 0x4f, + 0x07, 0x55, 0x9a, 0x14, 0xcc, 0x4f, 0x98, 0x4b, 0x7d, 0x1e, 0x3e, 0x93, + 0xd6, 0x71, 0x54, 0xa4, 0x6b, 0xcf, 0x90, 0x8d, 0x7f, 0x79, 0xe3, 0xa9, +}; +static const unsigned char kat1263_nonce[] = {0}; +static const unsigned char kat1263_persstr[] = {0}; +static const unsigned char kat1263_addin0[] = {0}; +static const unsigned char kat1263_addin1[] = {0}; +static const unsigned char kat1263_retbits[] = { + 0xa0, 0x77, 0x46, 0x5e, 0x8c, 0x7c, 0x66, 0x52, 0x66, 0xfe, 0x64, 0x31, + 0x9c, 0x01, 0xdb, 0x66, 0x34, 0x74, 0xcb, 0x16, 0xb1, 0x61, 0xab, 0xcb, + 0x3d, 0xa6, 0x45, 0xf6, 0x2b, 0x46, 0x8f, 0x5e, 0x3b, 0xde, 0x2e, 0x35, + 0xd1, 0xca, 0xbc, 0xea, 0xdb, 0x80, 0x1a, 0x15, 0x1b, 0x91, 0xf5, 0xfb, + 0xc8, 0x4b, 0x10, 0x91, 0x73, 0x76, 0x5b, 0x17, 0x78, 0xfb, 0xe4, 0xbc, + 0x18, 0x79, 0x24, 0x2c, +}; +static const struct drbg_kat_no_reseed kat1263_t = { + 2, kat1263_entropyin, kat1263_nonce, kat1263_persstr, + kat1263_addin0, kat1263_addin1, kat1263_retbits +}; +static const struct drbg_kat kat1263 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1263_t +}; + +static const unsigned char kat1264_entropyin[] = { + 0xd2, 0xf9, 0x5e, 0x3a, 0x82, 0x41, 0xd5, 0x01, 0xf0, 0xfa, 0x38, 0xe8, + 0xdc, 0x32, 0xf1, 0x5c, 0x71, 0xf7, 0x75, 0x24, 0x6b, 0x05, 0x20, 0x97, + 0xfd, 0x02, 0xbe, 0xaf, 0xc8, 0x78, 0xce, 0x8b, 0x47, 0x87, 0xd7, 0x43, + 0x2c, 0x65, 0x4a, 0xdc, 0x97, 0x70, 0xa0, 0x3c, 0x6f, 0x6f, 0x1c, 0x3b, +}; +static const unsigned char kat1264_nonce[] = {0}; +static const unsigned char kat1264_persstr[] = {0}; +static const unsigned char kat1264_addin0[] = {0}; +static const unsigned char kat1264_addin1[] = {0}; +static const unsigned char kat1264_retbits[] = { + 0x73, 0x3d, 0x5b, 0xbc, 0x54, 0xfa, 0xd3, 0x27, 0x11, 0x0a, 0xea, 0x87, + 0xb9, 0x23, 0xdb, 0x0e, 0x36, 0x59, 0xc0, 0x76, 0xdf, 0x36, 0xa6, 0x63, + 0x73, 0xd6, 0xe4, 0xe7, 0x1b, 0xa0, 0x1e, 0xe6, 0x82, 0xab, 0x4a, 0x87, + 0xe9, 0x10, 0x3c, 0x78, 0xe4, 0xba, 0x76, 0x89, 0xd3, 0x53, 0xc7, 0x72, + 0x54, 0x82, 0xf2, 0x9e, 0xd2, 0x11, 0xf1, 0x05, 0xbd, 0xa9, 0xcd, 0xc3, + 0xd1, 0x9d, 0xbc, 0x7b, +}; +static const struct drbg_kat_no_reseed kat1264_t = { + 3, kat1264_entropyin, kat1264_nonce, kat1264_persstr, + kat1264_addin0, kat1264_addin1, kat1264_retbits +}; +static const struct drbg_kat kat1264 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1264_t +}; + +static const unsigned char kat1265_entropyin[] = { + 0x08, 0xc6, 0xfb, 0x63, 0x3a, 0x9c, 0x44, 0xf5, 0xb3, 0xb8, 0x78, 0x33, + 0x94, 0x0a, 0xc0, 0xeb, 0xc3, 0x4c, 0x63, 0xc3, 0xbc, 0xef, 0x7e, 0x60, + 0x0a, 0x09, 0xb5, 0x3b, 0x47, 0x9c, 0x1c, 0xa9, 0xff, 0xd1, 0x4c, 0xda, + 0x6b, 0x62, 0x53, 0xfe, 0x97, 0x43, 0x07, 0x81, 0xd3, 0x0f, 0x6d, 0xb0, +}; +static const unsigned char kat1265_nonce[] = {0}; +static const unsigned char kat1265_persstr[] = {0}; +static const unsigned char kat1265_addin0[] = {0}; +static const unsigned char kat1265_addin1[] = {0}; +static const unsigned char kat1265_retbits[] = { + 0xbf, 0xb9, 0x60, 0xbe, 0x98, 0xac, 0x12, 0xdf, 0xcc, 0x9f, 0xe4, 0x54, + 0xe4, 0x6b, 0x8c, 0x02, 0x31, 0x17, 0x1b, 0xcd, 0x20, 0xeb, 0x52, 0xfe, + 0x86, 0xe4, 0x50, 0x64, 0x92, 0x46, 0xd2, 0xb4, 0x2c, 0x8f, 0x90, 0x18, + 0x40, 0x7a, 0x23, 0x24, 0x88, 0xd1, 0x64, 0x47, 0x3c, 0x20, 0x2f, 0xcb, + 0x2d, 0xa6, 0xfd, 0x20, 0x7f, 0xdc, 0x7a, 0xf9, 0x27, 0xcb, 0x03, 0x72, + 0x24, 0x2b, 0x03, 0xcb, +}; +static const struct drbg_kat_no_reseed kat1265_t = { + 4, kat1265_entropyin, kat1265_nonce, kat1265_persstr, + kat1265_addin0, kat1265_addin1, kat1265_retbits +}; +static const struct drbg_kat kat1265 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1265_t +}; + +static const unsigned char kat1266_entropyin[] = { + 0x88, 0xee, 0xe4, 0x06, 0x79, 0xe4, 0x65, 0xdf, 0xf3, 0x84, 0x1a, 0x2f, + 0x0d, 0x22, 0x49, 0xd7, 0x50, 0x8b, 0x1e, 0xb2, 0xe3, 0x00, 0x9f, 0x93, + 0xb9, 0x2b, 0x62, 0x8b, 0xec, 0x52, 0xe9, 0xba, 0xa9, 0x22, 0xb6, 0x0e, + 0xef, 0x9d, 0x26, 0xa4, 0x8b, 0x33, 0x63, 0x70, 0x10, 0xf5, 0xa7, 0x62, +}; +static const unsigned char kat1266_nonce[] = {0}; +static const unsigned char kat1266_persstr[] = {0}; +static const unsigned char kat1266_addin0[] = {0}; +static const unsigned char kat1266_addin1[] = {0}; +static const unsigned char kat1266_retbits[] = { + 0x0d, 0xad, 0x2a, 0x6b, 0x43, 0x80, 0x75, 0xc4, 0xb2, 0xdc, 0x6a, 0x2b, + 0xa7, 0xbc, 0x31, 0xfd, 0x54, 0x33, 0x72, 0xd9, 0x7b, 0xd4, 0x09, 0xba, + 0x38, 0x1d, 0x48, 0x1c, 0xce, 0xee, 0x4e, 0x81, 0xf6, 0x98, 0xbb, 0x87, + 0x30, 0x12, 0x3b, 0x54, 0xca, 0x5c, 0xea, 0xd0, 0x22, 0x68, 0x83, 0x7b, + 0xb3, 0xb3, 0x98, 0x79, 0xd9, 0xce, 0x14, 0x71, 0xac, 0x0f, 0xfc, 0x33, + 0xc4, 0xd4, 0xf8, 0xf5, +}; +static const struct drbg_kat_no_reseed kat1266_t = { + 5, kat1266_entropyin, kat1266_nonce, kat1266_persstr, + kat1266_addin0, kat1266_addin1, kat1266_retbits +}; +static const struct drbg_kat kat1266 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1266_t +}; + +static const unsigned char kat1267_entropyin[] = { + 0x6a, 0xf8, 0xa2, 0xd4, 0x82, 0x13, 0x94, 0x98, 0xf9, 0x53, 0x5d, 0xd3, + 0x28, 0x75, 0xac, 0x4a, 0x11, 0x11, 0xf2, 0x4c, 0x99, 0x23, 0x3b, 0x0e, + 0x0a, 0xa0, 0xd6, 0xc2, 0x80, 0x32, 0x9b, 0x5d, 0xa4, 0x2d, 0x81, 0xee, + 0xf5, 0x4d, 0x71, 0x6e, 0xb2, 0x95, 0xf9, 0x71, 0x89, 0x30, 0x4e, 0x9e, +}; +static const unsigned char kat1267_nonce[] = {0}; +static const unsigned char kat1267_persstr[] = {0}; +static const unsigned char kat1267_addin0[] = {0}; +static const unsigned char kat1267_addin1[] = {0}; +static const unsigned char kat1267_retbits[] = { + 0x5a, 0x41, 0xdd, 0x0e, 0xba, 0x5e, 0x6c, 0x37, 0xb4, 0x05, 0x0c, 0x3f, + 0x8f, 0x93, 0x6a, 0x32, 0x02, 0xe3, 0x3c, 0x3e, 0x4e, 0xf9, 0xdf, 0x75, + 0x49, 0xbc, 0xf4, 0x11, 0x20, 0x4b, 0x4a, 0x81, 0x43, 0x97, 0x9b, 0xc9, + 0xf9, 0xca, 0x7e, 0xfe, 0xaf, 0xa4, 0xfe, 0xb2, 0x1f, 0xec, 0xaa, 0xe0, + 0x4c, 0x85, 0xc0, 0xc7, 0x75, 0x7c, 0xc6, 0x67, 0x6f, 0x78, 0xff, 0xf1, + 0x42, 0x67, 0xe7, 0x26, +}; +static const struct drbg_kat_no_reseed kat1267_t = { + 6, kat1267_entropyin, kat1267_nonce, kat1267_persstr, + kat1267_addin0, kat1267_addin1, kat1267_retbits +}; +static const struct drbg_kat kat1267 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1267_t +}; + +static const unsigned char kat1268_entropyin[] = { + 0xcb, 0xbf, 0xf5, 0x7b, 0xf9, 0x8a, 0x6c, 0xd4, 0x28, 0xcb, 0xd6, 0x61, + 0x0d, 0x54, 0x3b, 0xe6, 0x78, 0x16, 0x80, 0xea, 0x29, 0x19, 0xca, 0x90, + 0xfc, 0x78, 0xe7, 0x4d, 0x29, 0x93, 0x99, 0x31, 0x9d, 0xff, 0x36, 0x64, + 0x7b, 0x4a, 0x6a, 0x4a, 0x82, 0x09, 0xbe, 0x1f, 0x78, 0x3f, 0xc1, 0x9d, +}; +static const unsigned char kat1268_nonce[] = {0}; +static const unsigned char kat1268_persstr[] = {0}; +static const unsigned char kat1268_addin0[] = {0}; +static const unsigned char kat1268_addin1[] = {0}; +static const unsigned char kat1268_retbits[] = { + 0x5e, 0x2e, 0x2f, 0xd2, 0xe6, 0xfa, 0x9a, 0x72, 0x73, 0xa6, 0xc3, 0x5e, + 0x12, 0x02, 0x7a, 0x8c, 0xa6, 0x7f, 0xd9, 0x1f, 0xd4, 0xa0, 0x35, 0x2a, + 0x05, 0xbc, 0xfe, 0x70, 0x8f, 0x56, 0xd6, 0x0f, 0x2c, 0x94, 0x4b, 0x69, + 0xa1, 0x08, 0xeb, 0x21, 0x98, 0xd3, 0x6f, 0xd6, 0xfd, 0x05, 0xec, 0x13, + 0x14, 0xb4, 0x06, 0x0e, 0x1a, 0x5b, 0x52, 0x96, 0x12, 0x87, 0xa5, 0xaf, + 0x0a, 0x08, 0x10, 0xec, +}; +static const struct drbg_kat_no_reseed kat1268_t = { + 7, kat1268_entropyin, kat1268_nonce, kat1268_persstr, + kat1268_addin0, kat1268_addin1, kat1268_retbits +}; +static const struct drbg_kat kat1268 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1268_t +}; + +static const unsigned char kat1269_entropyin[] = { + 0x06, 0xb4, 0xc6, 0x06, 0x00, 0x9b, 0xf1, 0x1d, 0xd4, 0xb8, 0x6f, 0xed, + 0x54, 0x4f, 0x67, 0x2c, 0x12, 0xee, 0x0d, 0x1a, 0xb7, 0xd9, 0x99, 0xf4, + 0x92, 0xa7, 0xc1, 0x37, 0x86, 0x0f, 0x28, 0x02, 0x6a, 0xb9, 0x9e, 0x1f, + 0x19, 0xc8, 0xaa, 0x4f, 0xaa, 0xed, 0x86, 0x10, 0xa2, 0xd8, 0x9b, 0xf5, +}; +static const unsigned char kat1269_nonce[] = {0}; +static const unsigned char kat1269_persstr[] = {0}; +static const unsigned char kat1269_addin0[] = {0}; +static const unsigned char kat1269_addin1[] = {0}; +static const unsigned char kat1269_retbits[] = { + 0x11, 0x8f, 0xc4, 0xbb, 0xeb, 0x0e, 0x58, 0x92, 0x03, 0xc5, 0x68, 0xca, + 0x65, 0xf5, 0x36, 0xa8, 0x98, 0x88, 0xb2, 0xfa, 0x6a, 0x9a, 0x2d, 0xe6, + 0x12, 0x12, 0xb0, 0xa1, 0x1d, 0x06, 0x55, 0xea, 0xd9, 0x4c, 0xfc, 0x30, + 0x93, 0x66, 0x56, 0x11, 0x7a, 0xf2, 0xfe, 0xeb, 0xe5, 0xdd, 0x07, 0xf1, + 0x9e, 0xe1, 0x6a, 0xd0, 0x5a, 0x7b, 0x4c, 0xae, 0x06, 0xb4, 0x4e, 0x5e, + 0xc2, 0x2d, 0x63, 0x97, +}; +static const struct drbg_kat_no_reseed kat1269_t = { + 8, kat1269_entropyin, kat1269_nonce, kat1269_persstr, + kat1269_addin0, kat1269_addin1, kat1269_retbits +}; +static const struct drbg_kat kat1269 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1269_t +}; + +static const unsigned char kat1270_entropyin[] = { + 0x30, 0xdc, 0xe1, 0x11, 0x2c, 0x85, 0x90, 0xe2, 0x25, 0x14, 0xe6, 0xcf, + 0x57, 0x03, 0x04, 0xbd, 0x40, 0xc9, 0x62, 0xf3, 0x68, 0x40, 0xb5, 0x29, + 0x13, 0x45, 0x47, 0x66, 0xdf, 0x4d, 0x0d, 0x74, 0x56, 0x00, 0xd6, 0x52, + 0x00, 0x5f, 0xfb, 0x25, 0x76, 0x05, 0x69, 0x97, 0x3f, 0x2f, 0xce, 0x28, +}; +static const unsigned char kat1270_nonce[] = {0}; +static const unsigned char kat1270_persstr[] = {0}; +static const unsigned char kat1270_addin0[] = {0}; +static const unsigned char kat1270_addin1[] = {0}; +static const unsigned char kat1270_retbits[] = { + 0x75, 0x79, 0x4c, 0x59, 0xa4, 0x79, 0x01, 0x9c, 0x0c, 0x66, 0xa4, 0x26, + 0xb5, 0x5a, 0x73, 0x50, 0x17, 0x32, 0xd5, 0x3a, 0x1f, 0x58, 0xc9, 0x06, + 0xc8, 0x77, 0xa7, 0x33, 0x49, 0xbe, 0x25, 0x2b, 0xb9, 0x91, 0xc4, 0xd1, + 0x13, 0xf2, 0xf4, 0x4f, 0x41, 0x21, 0xde, 0xe9, 0x0d, 0x72, 0xc2, 0x88, + 0x7e, 0x49, 0x19, 0x6a, 0x06, 0x10, 0x10, 0x88, 0x18, 0x55, 0xb6, 0xcc, + 0x09, 0x2d, 0xe8, 0x97, +}; +static const struct drbg_kat_no_reseed kat1270_t = { + 9, kat1270_entropyin, kat1270_nonce, kat1270_persstr, + kat1270_addin0, kat1270_addin1, kat1270_retbits +}; +static const struct drbg_kat kat1270 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1270_t +}; + +static const unsigned char kat1271_entropyin[] = { + 0x80, 0xcf, 0x2e, 0xcf, 0x96, 0xd1, 0x80, 0xd6, 0xa5, 0x5c, 0xff, 0x12, + 0xd3, 0x35, 0xb5, 0x52, 0x4f, 0x08, 0xe0, 0x64, 0x85, 0x49, 0x5a, 0x21, + 0xee, 0xcd, 0x74, 0xb6, 0xc2, 0x07, 0xb0, 0x86, 0xc7, 0xce, 0xda, 0x69, + 0x3e, 0x28, 0xfe, 0x40, 0xd1, 0xc7, 0xc0, 0xb7, 0xed, 0x5e, 0xc2, 0x1c, +}; +static const unsigned char kat1271_nonce[] = {0}; +static const unsigned char kat1271_persstr[] = {0}; +static const unsigned char kat1271_addin0[] = {0}; +static const unsigned char kat1271_addin1[] = {0}; +static const unsigned char kat1271_retbits[] = { + 0x3b, 0xa3, 0x73, 0xb5, 0xd7, 0x27, 0xce, 0xb0, 0x89, 0x0a, 0xbd, 0x97, + 0x07, 0x3a, 0x4f, 0x5b, 0x49, 0xef, 0xe1, 0x42, 0x64, 0x83, 0x6c, 0xef, + 0x68, 0xe2, 0x98, 0x4e, 0x23, 0x9d, 0x3d, 0x29, 0x2a, 0xaf, 0x4b, 0x1a, + 0x28, 0xc9, 0x09, 0x22, 0x55, 0x4e, 0xc1, 0x7b, 0x6f, 0xb3, 0x2f, 0x92, + 0xf8, 0xc5, 0x2c, 0x15, 0x2f, 0x98, 0x04, 0x9a, 0x7e, 0x80, 0x4d, 0x44, + 0x51, 0xa6, 0x84, 0x1d, +}; +static const struct drbg_kat_no_reseed kat1271_t = { + 10, kat1271_entropyin, kat1271_nonce, kat1271_persstr, + kat1271_addin0, kat1271_addin1, kat1271_retbits +}; +static const struct drbg_kat kat1271 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1271_t +}; + +static const unsigned char kat1272_entropyin[] = { + 0x1c, 0x77, 0xe9, 0xb3, 0x97, 0x29, 0x09, 0xa4, 0x0e, 0x22, 0x25, 0x3a, + 0x4a, 0x8b, 0xcc, 0x25, 0xf0, 0xb5, 0xf1, 0x4b, 0x45, 0xef, 0xc1, 0x0c, + 0x7c, 0x0e, 0xf7, 0xd9, 0x74, 0x94, 0xf0, 0xc2, 0x5e, 0x0b, 0xa9, 0x6e, + 0x0a, 0x65, 0xdf, 0x07, 0x22, 0x9c, 0xf2, 0xfb, 0x41, 0xa9, 0xab, 0x72, +}; +static const unsigned char kat1272_nonce[] = {0}; +static const unsigned char kat1272_persstr[] = {0}; +static const unsigned char kat1272_addin0[] = {0}; +static const unsigned char kat1272_addin1[] = {0}; +static const unsigned char kat1272_retbits[] = { + 0x09, 0xe7, 0x4c, 0x99, 0x83, 0x95, 0x54, 0xbe, 0x80, 0x0a, 0x3e, 0xbb, + 0xff, 0x12, 0xdc, 0x6b, 0xe1, 0x5c, 0xce, 0x42, 0x5d, 0x72, 0x05, 0x52, + 0x38, 0xed, 0x94, 0xc3, 0xac, 0xc0, 0xaf, 0xc1, 0x67, 0x4a, 0x3b, 0x29, + 0x50, 0x65, 0xd2, 0x9c, 0xff, 0x73, 0xc8, 0xd1, 0x8c, 0x9d, 0x9e, 0x7c, + 0x2f, 0xfe, 0x36, 0xcd, 0xed, 0xe7, 0x18, 0x42, 0x6d, 0x4c, 0xad, 0xe0, + 0x01, 0x58, 0x40, 0xff, +}; +static const struct drbg_kat_no_reseed kat1272_t = { + 11, kat1272_entropyin, kat1272_nonce, kat1272_persstr, + kat1272_addin0, kat1272_addin1, kat1272_retbits +}; +static const struct drbg_kat kat1272 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1272_t +}; + +static const unsigned char kat1273_entropyin[] = { + 0x1d, 0x43, 0xb8, 0x2a, 0x55, 0x45, 0xf9, 0xa2, 0x37, 0x8f, 0xed, 0xb8, + 0x6b, 0x53, 0x0f, 0xd2, 0xfa, 0xdb, 0xf9, 0x7f, 0x2b, 0xc0, 0x2f, 0x87, + 0x7d, 0x1a, 0xfb, 0xa7, 0xe4, 0xbb, 0x8c, 0x0c, 0x29, 0xd4, 0x34, 0xfd, + 0x56, 0x5c, 0x8d, 0x1a, 0x26, 0x2b, 0xb8, 0x69, 0x4d, 0xa1, 0x9a, 0x64, +}; +static const unsigned char kat1273_nonce[] = {0}; +static const unsigned char kat1273_persstr[] = {0}; +static const unsigned char kat1273_addin0[] = {0}; +static const unsigned char kat1273_addin1[] = {0}; +static const unsigned char kat1273_retbits[] = { + 0x29, 0x53, 0x1c, 0xe7, 0x7a, 0x4f, 0x47, 0xb7, 0xda, 0x26, 0xad, 0x6f, + 0xbc, 0xb0, 0x99, 0x5b, 0xb3, 0x3a, 0x0f, 0x70, 0x2c, 0xcb, 0x7c, 0x5b, + 0x09, 0x1b, 0x1e, 0xb6, 0x56, 0x2a, 0x7f, 0xf3, 0xc8, 0xa4, 0xaa, 0xe7, + 0x3b, 0xdb, 0x24, 0x7b, 0xf3, 0x27, 0xc7, 0x1f, 0x16, 0xe5, 0xbf, 0xff, + 0xd8, 0x27, 0x58, 0xcf, 0x0b, 0x82, 0xcc, 0x58, 0x96, 0x01, 0x7a, 0xb8, + 0x51, 0xab, 0x52, 0xb0, +}; +static const struct drbg_kat_no_reseed kat1273_t = { + 12, kat1273_entropyin, kat1273_nonce, kat1273_persstr, + kat1273_addin0, kat1273_addin1, kat1273_retbits +}; +static const struct drbg_kat kat1273 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1273_t +}; + +static const unsigned char kat1274_entropyin[] = { + 0x37, 0x5d, 0xec, 0x29, 0xf8, 0xa6, 0xff, 0xbe, 0xb7, 0x1c, 0xbe, 0x3a, + 0x2a, 0x37, 0x79, 0xa3, 0x71, 0x49, 0x63, 0x90, 0xd4, 0xcd, 0x5d, 0xf1, + 0xdf, 0x87, 0x2b, 0x63, 0x2f, 0x14, 0xa9, 0x1e, 0xac, 0xf8, 0xda, 0x77, + 0xf6, 0x24, 0xed, 0x03, 0x23, 0xc8, 0x03, 0x88, 0x6c, 0xa8, 0xda, 0x09, +}; +static const unsigned char kat1274_nonce[] = {0}; +static const unsigned char kat1274_persstr[] = {0}; +static const unsigned char kat1274_addin0[] = {0}; +static const unsigned char kat1274_addin1[] = {0}; +static const unsigned char kat1274_retbits[] = { + 0xd3, 0x9c, 0xb6, 0x6a, 0xe6, 0x42, 0x19, 0xa8, 0xde, 0x99, 0xb4, 0xf6, + 0x3d, 0xaa, 0x85, 0x36, 0xde, 0xfe, 0xaa, 0x53, 0xa0, 0x55, 0xa6, 0x6e, + 0xc3, 0xde, 0x18, 0xc4, 0x16, 0x73, 0xfc, 0x92, 0x6b, 0x1a, 0x24, 0x6c, + 0x78, 0x42, 0x61, 0xf0, 0x2b, 0x22, 0x48, 0x68, 0x87, 0x85, 0x8c, 0xa1, + 0xdf, 0x59, 0x3b, 0x4e, 0xa4, 0x33, 0xf6, 0x5d, 0x0b, 0x5b, 0xb8, 0x52, + 0x87, 0xde, 0xe8, 0xb5, +}; +static const struct drbg_kat_no_reseed kat1274_t = { + 13, kat1274_entropyin, kat1274_nonce, kat1274_persstr, + kat1274_addin0, kat1274_addin1, kat1274_retbits +}; +static const struct drbg_kat kat1274 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1274_t +}; + +static const unsigned char kat1275_entropyin[] = { + 0x10, 0x0e, 0x17, 0x65, 0x74, 0xbd, 0x55, 0x43, 0x84, 0x77, 0xf0, 0x15, + 0x3e, 0xd0, 0x4b, 0x6c, 0xf2, 0x21, 0xbf, 0x6c, 0x1f, 0xcd, 0x71, 0x41, + 0xab, 0xa1, 0x0c, 0x80, 0xd7, 0x1e, 0xb2, 0xe1, 0x6b, 0xc8, 0x21, 0x3a, + 0xed, 0x68, 0x9f, 0x44, 0xef, 0x57, 0x80, 0x73, 0x34, 0xdc, 0x3d, 0x12, +}; +static const unsigned char kat1275_nonce[] = {0}; +static const unsigned char kat1275_persstr[] = {0}; +static const unsigned char kat1275_addin0[] = {0}; +static const unsigned char kat1275_addin1[] = {0}; +static const unsigned char kat1275_retbits[] = { + 0xb4, 0x31, 0x5c, 0xc4, 0x47, 0x0d, 0x4c, 0x50, 0xa1, 0x58, 0x36, 0xf2, + 0x18, 0xb2, 0x1c, 0x96, 0x66, 0x8d, 0x32, 0xea, 0xfc, 0x16, 0x49, 0xcf, + 0x6c, 0x92, 0xb9, 0x6f, 0x07, 0x16, 0xaa, 0x54, 0x58, 0x2a, 0x31, 0xa1, + 0xc5, 0xf5, 0x97, 0xb8, 0x0f, 0x62, 0x10, 0x26, 0x22, 0x36, 0x9e, 0x42, + 0x2d, 0x98, 0xc3, 0x4d, 0x14, 0x98, 0xcb, 0x9b, 0xc0, 0x1d, 0x41, 0x8a, + 0x4d, 0x23, 0x20, 0x74, +}; +static const struct drbg_kat_no_reseed kat1275_t = { + 14, kat1275_entropyin, kat1275_nonce, kat1275_persstr, + kat1275_addin0, kat1275_addin1, kat1275_retbits +}; +static const struct drbg_kat kat1275 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1275_t +}; + +static const unsigned char kat1276_entropyin[] = { + 0xe9, 0xcd, 0xe3, 0xf9, 0xce, 0x03, 0x66, 0xde, 0xb1, 0x61, 0xc4, 0x0b, + 0x16, 0x21, 0x64, 0x1e, 0x58, 0x3b, 0xb5, 0x51, 0x14, 0xd9, 0x12, 0xc4, + 0x0b, 0x7a, 0x7e, 0x7e, 0x2e, 0xa5, 0x3e, 0x50, 0x66, 0x5c, 0xa1, 0x33, + 0xa5, 0x0e, 0x93, 0x4c, 0xc1, 0xb4, 0xdb, 0xbf, 0x89, 0xc0, 0x72, 0xe0, +}; +static const unsigned char kat1276_nonce[] = {0}; +static const unsigned char kat1276_persstr[] = {0}; +static const unsigned char kat1276_addin0[] = { + 0xbe, 0x3d, 0xfb, 0xe5, 0xc9, 0x07, 0x9f, 0x16, 0x1b, 0x21, 0xb7, 0xa0, + 0x78, 0x1b, 0x60, 0x73, 0x63, 0xa6, 0x53, 0x35, 0x0a, 0xf6, 0x8d, 0x82, + 0xe2, 0x1c, 0xe1, 0x49, 0xc2, 0xfc, 0x3b, 0x98, 0xca, 0xc3, 0x9e, 0x72, + 0x75, 0x1a, 0x61, 0xda, 0x13, 0xa0, 0x61, 0x6e, 0x31, 0x11, 0x8e, 0x96, +}; +static const unsigned char kat1276_addin1[] = { + 0x7e, 0x16, 0x27, 0xe9, 0x8f, 0xaa, 0x46, 0x2e, 0xf6, 0x31, 0x4d, 0x45, + 0xa2, 0x31, 0xb7, 0xf1, 0xa1, 0x4a, 0x54, 0xce, 0x86, 0x15, 0x50, 0x0d, + 0x14, 0x44, 0x74, 0xa9, 0x2d, 0x25, 0x9f, 0xcc, 0x23, 0x0f, 0xfb, 0x90, + 0x98, 0x53, 0xc1, 0x68, 0xbd, 0x93, 0x53, 0x16, 0x31, 0xde, 0x25, 0xd1, +}; +static const unsigned char kat1276_retbits[] = { + 0x2f, 0x26, 0x5f, 0xbe, 0x14, 0x62, 0x01, 0x48, 0x43, 0xa1, 0x65, 0x48, + 0xe1, 0x72, 0x46, 0x40, 0x60, 0xc4, 0x15, 0x91, 0xb9, 0xad, 0xf1, 0xb7, + 0x6a, 0x79, 0xae, 0x51, 0xc9, 0xa4, 0x52, 0x23, 0xe6, 0xef, 0x39, 0xa1, + 0xec, 0xa2, 0x61, 0x3c, 0xe9, 0xd6, 0x82, 0x54, 0x5d, 0x96, 0x7d, 0x88, + 0xb3, 0x48, 0x08, 0xeb, 0x4d, 0x9a, 0x8e, 0x42, 0xcf, 0xed, 0x82, 0xea, + 0xfc, 0x33, 0x4d, 0x62, +}; +static const struct drbg_kat_no_reseed kat1276_t = { + 0, kat1276_entropyin, kat1276_nonce, kat1276_persstr, + kat1276_addin0, kat1276_addin1, kat1276_retbits +}; +static const struct drbg_kat kat1276 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1276_t +}; + +static const unsigned char kat1277_entropyin[] = { + 0x06, 0xce, 0x94, 0x61, 0xe3, 0xce, 0xfc, 0xda, 0x7a, 0x9d, 0xa3, 0xc0, + 0xf0, 0x40, 0xba, 0xc0, 0x82, 0x57, 0xdd, 0x41, 0x35, 0x84, 0x8a, 0x0a, + 0xa0, 0x52, 0xf6, 0x27, 0x6a, 0x3e, 0x18, 0xf0, 0xca, 0x88, 0x17, 0x07, + 0x0a, 0x63, 0xcc, 0xf2, 0xd9, 0xbf, 0xc1, 0x56, 0x5c, 0x99, 0xfb, 0x10, +}; +static const unsigned char kat1277_nonce[] = {0}; +static const unsigned char kat1277_persstr[] = {0}; +static const unsigned char kat1277_addin0[] = { + 0xfd, 0xf8, 0x95, 0xd5, 0x06, 0x96, 0x66, 0x21, 0xa0, 0x1e, 0x96, 0x72, + 0x0f, 0x9e, 0x21, 0xb7, 0xea, 0xc2, 0x75, 0x8f, 0x06, 0x87, 0x28, 0x39, + 0x36, 0x6d, 0x97, 0xfa, 0xe1, 0xcd, 0xfb, 0x4d, 0x01, 0x90, 0x21, 0x28, + 0xfe, 0x8c, 0x61, 0x8e, 0x9c, 0x72, 0x74, 0xcb, 0x5c, 0x47, 0xed, 0x54, +}; +static const unsigned char kat1277_addin1[] = { + 0x79, 0x7d, 0x1d, 0x08, 0xca, 0xc4, 0xb4, 0xd1, 0x0a, 0x99, 0x90, 0x16, + 0xc8, 0xb1, 0x48, 0xc5, 0x8b, 0x1d, 0xac, 0xca, 0x0a, 0x8e, 0x21, 0x11, + 0xa7, 0xee, 0x5a, 0xc2, 0xd1, 0x12, 0x56, 0x20, 0xf6, 0x0e, 0xe5, 0x5a, + 0xf0, 0x9b, 0x92, 0x0e, 0x87, 0x16, 0xfe, 0xef, 0x7c, 0x05, 0x72, 0x85, +}; +static const unsigned char kat1277_retbits[] = { + 0xfd, 0x10, 0xda, 0x70, 0x96, 0xbb, 0x83, 0x1e, 0x96, 0x8a, 0x5d, 0xd4, + 0xb5, 0x51, 0xda, 0x38, 0x74, 0x05, 0xc3, 0xfc, 0xb9, 0xa3, 0x29, 0x8c, + 0x62, 0x66, 0x44, 0xb6, 0x6c, 0x19, 0xfc, 0x6d, 0xe8, 0x60, 0x8c, 0x81, + 0xa7, 0xf7, 0x99, 0x71, 0xda, 0x39, 0x03, 0x02, 0xb2, 0x1f, 0x34, 0xc9, + 0xcd, 0x3a, 0xde, 0xed, 0xe8, 0x71, 0x46, 0x9a, 0x4a, 0xa5, 0x57, 0xa4, + 0xed, 0xa5, 0x4e, 0x74, +}; +static const struct drbg_kat_no_reseed kat1277_t = { + 1, kat1277_entropyin, kat1277_nonce, kat1277_persstr, + kat1277_addin0, kat1277_addin1, kat1277_retbits +}; +static const struct drbg_kat kat1277 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1277_t +}; + +static const unsigned char kat1278_entropyin[] = { + 0x96, 0x19, 0xf3, 0xe7, 0x03, 0x8d, 0xec, 0x4e, 0xd5, 0x62, 0x27, 0xa1, + 0x79, 0xd9, 0xb2, 0x40, 0x02, 0x67, 0x8c, 0x16, 0x7e, 0x81, 0x55, 0x37, + 0xc4, 0xef, 0xd5, 0x01, 0xea, 0xf6, 0xda, 0x93, 0x2d, 0x77, 0x20, 0x66, + 0xe2, 0xc1, 0xea, 0x7b, 0xd0, 0x66, 0x16, 0x9b, 0x40, 0xb7, 0x37, 0x87, +}; +static const unsigned char kat1278_nonce[] = {0}; +static const unsigned char kat1278_persstr[] = {0}; +static const unsigned char kat1278_addin0[] = { + 0x93, 0xeb, 0x47, 0x15, 0xf8, 0x74, 0xc3, 0xf4, 0x48, 0x32, 0x36, 0xb1, + 0x78, 0x5d, 0x6b, 0xa9, 0x0a, 0xdb, 0x25, 0xde, 0xd4, 0xfa, 0xcd, 0xa2, + 0x42, 0x56, 0xd7, 0xdb, 0x45, 0x02, 0x12, 0x6e, 0x00, 0xbf, 0xd0, 0x11, + 0x9d, 0xde, 0x79, 0x7f, 0x1d, 0xb8, 0x75, 0x50, 0xd0, 0xe5, 0x8e, 0xf2, +}; +static const unsigned char kat1278_addin1[] = { + 0x39, 0xd0, 0x52, 0x3e, 0x8a, 0xea, 0x73, 0xcb, 0x05, 0x84, 0xd9, 0xc3, + 0xab, 0x11, 0xf7, 0x95, 0x3f, 0xd1, 0x5d, 0x4e, 0xa9, 0x53, 0xc6, 0xf7, + 0x92, 0x4a, 0x8f, 0x98, 0x9f, 0x28, 0x5c, 0x51, 0x62, 0xbc, 0x50, 0xab, + 0xc0, 0xfa, 0x29, 0xd2, 0xce, 0x70, 0x02, 0xee, 0x4f, 0x6a, 0x3b, 0x16, +}; +static const unsigned char kat1278_retbits[] = { + 0xb3, 0xff, 0xe4, 0xf6, 0x0a, 0xcd, 0x48, 0x4e, 0xf3, 0x31, 0x90, 0x1d, + 0x93, 0x20, 0xe4, 0x97, 0x48, 0x63, 0x22, 0x55, 0x7c, 0x0d, 0x2f, 0x05, + 0x88, 0xb9, 0xbe, 0xcf, 0xa9, 0x7d, 0x4e, 0x36, 0xae, 0xd9, 0x1b, 0xe3, + 0xa4, 0xba, 0x90, 0x0f, 0xfb, 0x12, 0x6f, 0x52, 0xb5, 0x12, 0xca, 0x3b, + 0x3b, 0x15, 0xd6, 0x0c, 0x1d, 0xb4, 0x43, 0xc8, 0x4b, 0xf1, 0x3a, 0x9c, + 0x9e, 0x9c, 0x3d, 0xd3, +}; +static const struct drbg_kat_no_reseed kat1278_t = { + 2, kat1278_entropyin, kat1278_nonce, kat1278_persstr, + kat1278_addin0, kat1278_addin1, kat1278_retbits +}; +static const struct drbg_kat kat1278 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1278_t +}; + +static const unsigned char kat1279_entropyin[] = { + 0xf9, 0xf4, 0x15, 0x1b, 0xc7, 0xc9, 0x01, 0x72, 0x6b, 0x44, 0x04, 0x40, + 0x72, 0xb0, 0x1d, 0x79, 0x18, 0x2d, 0xc5, 0xa1, 0x90, 0xe9, 0x74, 0x4b, + 0x2e, 0xf8, 0x22, 0xe8, 0x0b, 0x8c, 0xbb, 0xd1, 0xeb, 0x18, 0x14, 0xbb, + 0x94, 0x8d, 0xa6, 0x6e, 0xb1, 0xc1, 0xd3, 0xa9, 0x65, 0x42, 0x73, 0x79, +}; +static const unsigned char kat1279_nonce[] = {0}; +static const unsigned char kat1279_persstr[] = {0}; +static const unsigned char kat1279_addin0[] = { + 0xd5, 0x7d, 0xa7, 0xb6, 0x02, 0x33, 0xe3, 0x5b, 0xe5, 0x0c, 0xb7, 0x93, + 0x88, 0x94, 0x66, 0x83, 0x08, 0x25, 0x0a, 0x46, 0xd0, 0x32, 0xde, 0xb6, + 0x67, 0xf6, 0xbc, 0x01, 0x41, 0x89, 0xb9, 0x53, 0x92, 0xf6, 0x1c, 0x73, + 0xe6, 0xfd, 0x19, 0x1d, 0x7a, 0xeb, 0xf1, 0x2a, 0x99, 0x10, 0xbc, 0xf6, +}; +static const unsigned char kat1279_addin1[] = { + 0x23, 0x5f, 0xf3, 0xd2, 0xcf, 0x24, 0x27, 0x6e, 0xad, 0x6c, 0xe9, 0x6e, + 0x7d, 0x36, 0x44, 0xab, 0x93, 0xfe, 0xd7, 0xfb, 0x5a, 0xb4, 0x5a, 0x01, + 0x16, 0x8e, 0xc9, 0x17, 0x50, 0xeb, 0x15, 0x59, 0xfc, 0xb2, 0x21, 0x9c, + 0x5c, 0xed, 0x59, 0xe5, 0xd7, 0x2e, 0x7b, 0xa4, 0xa6, 0x90, 0x49, 0xba, +}; +static const unsigned char kat1279_retbits[] = { + 0xfc, 0x44, 0x4c, 0x8f, 0x78, 0x78, 0xee, 0xb5, 0xc7, 0xcf, 0xcc, 0x48, + 0xdc, 0x0b, 0x9a, 0xaa, 0x45, 0xc8, 0x9f, 0x99, 0xa8, 0xa6, 0x2e, 0xb1, + 0xb2, 0xd0, 0x0d, 0xc6, 0xda, 0x06, 0xdc, 0x8b, 0x1f, 0x18, 0xfa, 0x1c, + 0xc9, 0x21, 0x85, 0x99, 0x66, 0xb3, 0x6b, 0x6c, 0x64, 0x54, 0x87, 0x6c, + 0x49, 0xb0, 0x06, 0xe1, 0x65, 0x83, 0x8c, 0x98, 0x28, 0x83, 0x47, 0x15, + 0x9a, 0x9a, 0xa2, 0xc1, +}; +static const struct drbg_kat_no_reseed kat1279_t = { + 3, kat1279_entropyin, kat1279_nonce, kat1279_persstr, + kat1279_addin0, kat1279_addin1, kat1279_retbits +}; +static const struct drbg_kat kat1279 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1279_t +}; + +static const unsigned char kat1280_entropyin[] = { + 0xec, 0xf1, 0x4d, 0x2e, 0xbb, 0x58, 0xf9, 0x1f, 0x45, 0xad, 0xc3, 0xba, + 0xbc, 0xe2, 0xe6, 0x0e, 0xe4, 0xac, 0x24, 0xbd, 0x79, 0x90, 0x72, 0x78, + 0x1b, 0x7f, 0x44, 0x25, 0x09, 0xfe, 0x40, 0xe0, 0x55, 0x33, 0x74, 0xa0, + 0x6a, 0x08, 0xfe, 0x65, 0x2d, 0x75, 0xa0, 0xd5, 0x25, 0x4b, 0xb6, 0x56, +}; +static const unsigned char kat1280_nonce[] = {0}; +static const unsigned char kat1280_persstr[] = {0}; +static const unsigned char kat1280_addin0[] = { + 0xcf, 0x26, 0x9f, 0x6b, 0xd6, 0xd2, 0x88, 0x0e, 0x62, 0x2d, 0x1d, 0xdd, + 0x3e, 0xbb, 0xa2, 0x1a, 0x98, 0x84, 0x62, 0x28, 0xd4, 0x0a, 0x7f, 0x13, + 0x66, 0x9b, 0x96, 0x4e, 0xe9, 0x56, 0xd9, 0x5e, 0xd9, 0xce, 0x41, 0x29, + 0x6a, 0xfb, 0xa0, 0x5d, 0x0c, 0xd1, 0x96, 0x49, 0x94, 0xd1, 0xb5, 0xa5, +}; +static const unsigned char kat1280_addin1[] = { + 0x55, 0x97, 0x76, 0x73, 0x8f, 0x7b, 0x50, 0x7a, 0xfb, 0x03, 0x0b, 0x15, + 0x27, 0x04, 0x9d, 0xdc, 0x72, 0x13, 0xd5, 0xd1, 0x6b, 0xb9, 0xe8, 0xe1, + 0x58, 0x09, 0xe6, 0x7e, 0xa5, 0xd8, 0x9f, 0x5d, 0xf4, 0xf4, 0xdb, 0x50, + 0x11, 0xac, 0x4c, 0x5f, 0x2d, 0x19, 0x61, 0x96, 0xdb, 0x6f, 0xb6, 0x01, +}; +static const unsigned char kat1280_retbits[] = { + 0xb0, 0xc0, 0x56, 0x61, 0x09, 0x22, 0x60, 0xeb, 0xb3, 0x48, 0x96, 0x99, + 0xd6, 0x1d, 0x59, 0xc9, 0x75, 0x51, 0x82, 0xde, 0x1c, 0x56, 0x45, 0xb7, + 0x57, 0x5e, 0x0b, 0x62, 0x39, 0x55, 0xbd, 0x04, 0x59, 0x3d, 0x04, 0xa2, + 0x29, 0x34, 0x9c, 0x6d, 0xa9, 0x15, 0xb4, 0x52, 0x4b, 0x51, 0xa5, 0x5e, + 0x8e, 0xc3, 0x5f, 0x30, 0x3b, 0xcc, 0x42, 0x6a, 0x62, 0xbc, 0xc6, 0xf0, + 0xda, 0x68, 0x01, 0x25, +}; +static const struct drbg_kat_no_reseed kat1280_t = { + 4, kat1280_entropyin, kat1280_nonce, kat1280_persstr, + kat1280_addin0, kat1280_addin1, kat1280_retbits +}; +static const struct drbg_kat kat1280 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1280_t +}; + +static const unsigned char kat1281_entropyin[] = { + 0x1c, 0xc9, 0x91, 0xbe, 0x74, 0x33, 0xc1, 0x2b, 0x89, 0x9f, 0x7a, 0x07, + 0x57, 0x71, 0x1e, 0x27, 0xb6, 0x59, 0x59, 0x8d, 0x58, 0x6f, 0xb2, 0x35, + 0x5e, 0xbb, 0xe6, 0xe7, 0xe9, 0x0f, 0x63, 0x46, 0x54, 0xee, 0xc4, 0xeb, + 0x34, 0xe6, 0x48, 0xc2, 0xf3, 0xe6, 0x86, 0x60, 0xd5, 0x8c, 0xb3, 0xa8, +}; +static const unsigned char kat1281_nonce[] = {0}; +static const unsigned char kat1281_persstr[] = {0}; +static const unsigned char kat1281_addin0[] = { + 0xbd, 0xde, 0x52, 0x7b, 0xdc, 0xbc, 0xb2, 0x3e, 0x55, 0xc4, 0x1a, 0x94, + 0x86, 0xa4, 0xc5, 0x3f, 0x8c, 0x64, 0x68, 0x76, 0xd0, 0x67, 0xf8, 0x32, + 0x31, 0xa7, 0xdf, 0xc6, 0x74, 0x4f, 0x5a, 0xce, 0x3e, 0x69, 0x1e, 0x93, + 0x30, 0xee, 0x6f, 0x85, 0x17, 0x9e, 0xc7, 0x53, 0xd7, 0x0c, 0xe6, 0xaa, +}; +static const unsigned char kat1281_addin1[] = { + 0x4a, 0xf6, 0x44, 0x42, 0xff, 0xa4, 0xe4, 0xbd, 0x61, 0xb4, 0xf4, 0x52, + 0x7f, 0x60, 0xd7, 0x2f, 0x33, 0x63, 0x3c, 0xac, 0xa4, 0x86, 0x14, 0xf2, + 0xeb, 0x26, 0x28, 0x1b, 0x2d, 0x54, 0x5e, 0x1f, 0xea, 0x3e, 0x46, 0x04, + 0x8e, 0x6c, 0xca, 0x0a, 0x83, 0x4e, 0xef, 0x19, 0x24, 0x0e, 0x4b, 0xf3, +}; +static const unsigned char kat1281_retbits[] = { + 0xfa, 0x4e, 0x89, 0x14, 0x1d, 0x4a, 0xc2, 0x8a, 0xb5, 0x7a, 0xab, 0xb1, + 0x87, 0x65, 0x77, 0x43, 0x98, 0x5c, 0xf4, 0x31, 0xe7, 0x3f, 0x58, 0xd7, + 0x09, 0x51, 0x8d, 0x66, 0xcf, 0xa9, 0x81, 0xa7, 0x15, 0x8f, 0xcc, 0xca, + 0x26, 0x92, 0xcf, 0x04, 0xaa, 0xb7, 0x23, 0x0e, 0x77, 0x0e, 0x7f, 0xc2, + 0xad, 0xe2, 0x40, 0x79, 0xa9, 0x4f, 0x75, 0x0b, 0x08, 0xd7, 0xf6, 0x25, + 0xfb, 0xcc, 0x17, 0x3d, +}; +static const struct drbg_kat_no_reseed kat1281_t = { + 5, kat1281_entropyin, kat1281_nonce, kat1281_persstr, + kat1281_addin0, kat1281_addin1, kat1281_retbits +}; +static const struct drbg_kat kat1281 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1281_t +}; + +static const unsigned char kat1282_entropyin[] = { + 0x17, 0x59, 0x32, 0xfb, 0x8d, 0x93, 0x6b, 0xa3, 0xae, 0x66, 0xf9, 0xb9, + 0xb3, 0x3c, 0x23, 0xac, 0x92, 0x9d, 0xbe, 0x6e, 0x7f, 0x42, 0x67, 0x4c, + 0xc8, 0x96, 0x9b, 0xc9, 0x3a, 0xc4, 0x8f, 0x61, 0x3e, 0x50, 0xcb, 0xec, + 0x79, 0x3d, 0xd8, 0x97, 0x0f, 0xa4, 0xa9, 0x91, 0xaa, 0x91, 0x71, 0x33, +}; +static const unsigned char kat1282_nonce[] = {0}; +static const unsigned char kat1282_persstr[] = {0}; +static const unsigned char kat1282_addin0[] = { + 0x17, 0xe2, 0x59, 0x1b, 0xb9, 0x5b, 0xc5, 0x14, 0xcb, 0xe4, 0xd1, 0x1a, + 0x65, 0x06, 0x80, 0x04, 0xa9, 0x25, 0xc7, 0x48, 0x5d, 0xfb, 0x0f, 0x6c, + 0xb4, 0x0e, 0x25, 0xf2, 0xd2, 0x11, 0x12, 0x20, 0xe5, 0x34, 0x1d, 0x5a, + 0x16, 0x90, 0x45, 0xf9, 0xc8, 0x75, 0x43, 0x07, 0xdf, 0xd4, 0xa4, 0x8c, +}; +static const unsigned char kat1282_addin1[] = { + 0x8b, 0xf4, 0xef, 0xee, 0xfe, 0xaa, 0x24, 0x00, 0x95, 0x77, 0xa4, 0x17, + 0x3a, 0x79, 0x7c, 0x5b, 0x1e, 0x66, 0xa8, 0xa6, 0x68, 0xbd, 0x2e, 0x7c, + 0xfa, 0x94, 0xf8, 0x12, 0x0e, 0x1c, 0x00, 0x20, 0xa9, 0x74, 0xc9, 0x6e, + 0x6b, 0x2c, 0xa1, 0x2b, 0x21, 0x80, 0x1a, 0xac, 0x14, 0x10, 0x5e, 0x23, +}; +static const unsigned char kat1282_retbits[] = { + 0xb2, 0x1a, 0xbf, 0xac, 0xe1, 0x5f, 0x06, 0x6b, 0xcb, 0x7e, 0xfe, 0xc2, + 0x02, 0xcf, 0x83, 0xcb, 0x14, 0x37, 0xb6, 0x4e, 0x8b, 0xc7, 0x35, 0x37, + 0xdf, 0xd8, 0xe0, 0xd8, 0x90, 0xcf, 0xf3, 0x85, 0x04, 0x7b, 0xfe, 0x8c, + 0xa6, 0x6d, 0x7f, 0xb3, 0xa8, 0x0f, 0x4a, 0xf1, 0x0e, 0xd4, 0xeb, 0xd3, + 0xfa, 0xd5, 0x05, 0x48, 0xd9, 0xa3, 0x89, 0x72, 0x79, 0x26, 0x57, 0x4f, + 0x8d, 0x2c, 0x0e, 0x38, +}; +static const struct drbg_kat_no_reseed kat1282_t = { + 6, kat1282_entropyin, kat1282_nonce, kat1282_persstr, + kat1282_addin0, kat1282_addin1, kat1282_retbits +}; +static const struct drbg_kat kat1282 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1282_t +}; + +static const unsigned char kat1283_entropyin[] = { + 0x0c, 0x17, 0xd2, 0x1f, 0x3a, 0x7d, 0xfe, 0x38, 0x65, 0x6c, 0x4b, 0x2b, + 0x49, 0x0e, 0x50, 0xae, 0x8a, 0x77, 0x43, 0x08, 0x9a, 0xdc, 0x74, 0x0b, + 0x0c, 0xc3, 0x75, 0x10, 0x44, 0x9d, 0x3b, 0x02, 0xaf, 0x17, 0xb2, 0x28, + 0xf3, 0x1b, 0x3b, 0xe7, 0xd7, 0xe7, 0x3f, 0x06, 0xe3, 0xb4, 0xed, 0xe3, +}; +static const unsigned char kat1283_nonce[] = {0}; +static const unsigned char kat1283_persstr[] = {0}; +static const unsigned char kat1283_addin0[] = { + 0x8e, 0xda, 0x53, 0x6c, 0x00, 0xe1, 0x2b, 0x25, 0xea, 0x64, 0x64, 0xdf, + 0xae, 0x57, 0x51, 0x48, 0x7c, 0x55, 0x1d, 0x8b, 0xbd, 0x1d, 0x3e, 0x3f, + 0xfc, 0x73, 0x0c, 0x40, 0x45, 0xd4, 0x12, 0x7d, 0xac, 0x04, 0x75, 0x9d, + 0x8a, 0x2e, 0xf4, 0x88, 0x60, 0x34, 0x56, 0x20, 0xc8, 0xb5, 0xeb, 0xf3, +}; +static const unsigned char kat1283_addin1[] = { + 0xbc, 0x96, 0x41, 0xa1, 0x43, 0x11, 0x00, 0x8a, 0x09, 0x69, 0xcf, 0xfa, + 0xdc, 0x22, 0xe1, 0xe7, 0x46, 0x61, 0xf9, 0x70, 0x48, 0x1d, 0x5c, 0x12, + 0xcf, 0xf6, 0x37, 0x27, 0x8d, 0xfa, 0x95, 0xb8, 0x2b, 0xab, 0xa4, 0x31, + 0xbb, 0xe2, 0x55, 0x8b, 0xab, 0xee, 0xdf, 0xcc, 0xd7, 0x1d, 0x96, 0xc7, +}; +static const unsigned char kat1283_retbits[] = { + 0x46, 0xcf, 0x33, 0x45, 0x03, 0x11, 0xd9, 0x70, 0x1b, 0xc2, 0x5f, 0x51, + 0x2c, 0xa5, 0xbe, 0x2d, 0xc6, 0x06, 0x8f, 0x99, 0xa8, 0xb5, 0xe7, 0x07, + 0x6c, 0x49, 0x69, 0x22, 0x7b, 0x7e, 0x73, 0xf8, 0x69, 0xc2, 0xeb, 0x01, + 0x5a, 0x09, 0xd3, 0xf6, 0xed, 0xb1, 0xd5, 0xd9, 0x2d, 0xd3, 0xb6, 0xd4, + 0x61, 0x78, 0xbe, 0xa2, 0xc5, 0xba, 0x7d, 0x38, 0x14, 0x24, 0xd0, 0xe8, + 0x09, 0xf2, 0x20, 0xce, +}; +static const struct drbg_kat_no_reseed kat1283_t = { + 7, kat1283_entropyin, kat1283_nonce, kat1283_persstr, + kat1283_addin0, kat1283_addin1, kat1283_retbits +}; +static const struct drbg_kat kat1283 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1283_t +}; + +static const unsigned char kat1284_entropyin[] = { + 0x7d, 0x45, 0x11, 0x4f, 0x41, 0x7b, 0x3d, 0xc1, 0xee, 0xcb, 0x00, 0x80, + 0xf4, 0xd8, 0x83, 0xa4, 0x1c, 0x2f, 0x9b, 0x8d, 0x48, 0x6e, 0x95, 0x1e, + 0x61, 0x3a, 0x9d, 0x0f, 0x25, 0x15, 0xd1, 0x48, 0x15, 0x5f, 0xa4, 0xe3, + 0xae, 0x1f, 0x15, 0x9e, 0xdf, 0xba, 0xe5, 0x81, 0x1f, 0xc4, 0x2b, 0x22, +}; +static const unsigned char kat1284_nonce[] = {0}; +static const unsigned char kat1284_persstr[] = {0}; +static const unsigned char kat1284_addin0[] = { + 0x33, 0x74, 0xce, 0xdc, 0x43, 0x20, 0x6c, 0x36, 0xd8, 0x67, 0x27, 0x35, + 0xd4, 0xee, 0x0e, 0xca, 0x7d, 0xfe, 0x53, 0x98, 0xb0, 0xc1, 0x1e, 0x6c, + 0x1e, 0x13, 0xb3, 0xe7, 0x95, 0x76, 0x6f, 0x0c, 0xa1, 0xc1, 0xc6, 0x3f, + 0x0f, 0xa6, 0x8c, 0x8f, 0x2b, 0x25, 0xcf, 0x98, 0x34, 0x0f, 0xc4, 0xc6, +}; +static const unsigned char kat1284_addin1[] = { + 0x9e, 0x63, 0xc2, 0x9f, 0xb3, 0x5b, 0xd2, 0x7f, 0x39, 0xf4, 0x20, 0xbe, + 0x15, 0x05, 0xb1, 0xee, 0x6d, 0xe9, 0xf6, 0x91, 0x9c, 0x0e, 0xba, 0x3d, + 0xf1, 0xe8, 0x35, 0x7a, 0x97, 0x08, 0x94, 0x3f, 0x7f, 0x43, 0x65, 0xe2, + 0x85, 0xae, 0x12, 0x54, 0xf3, 0xa6, 0x3c, 0xe2, 0x26, 0xc6, 0x4a, 0x8a, +}; +static const unsigned char kat1284_retbits[] = { + 0x94, 0x6a, 0x8c, 0x99, 0xee, 0x1e, 0xdc, 0x87, 0x77, 0x0c, 0x8e, 0xf1, + 0x07, 0x96, 0xbf, 0x14, 0x20, 0x1f, 0x58, 0xeb, 0xde, 0x3f, 0xac, 0x71, + 0xae, 0x00, 0x0f, 0xcb, 0x55, 0x3f, 0x99, 0xc8, 0x90, 0xc2, 0x28, 0xe7, + 0xa1, 0x80, 0x27, 0xf2, 0x25, 0xa5, 0x26, 0x95, 0x56, 0xe5, 0xd4, 0x0f, + 0x34, 0x85, 0xe6, 0xdc, 0x32, 0xa6, 0x97, 0xf1, 0xc6, 0xb7, 0x86, 0x35, + 0xd7, 0xf0, 0xa5, 0x72, +}; +static const struct drbg_kat_no_reseed kat1284_t = { + 8, kat1284_entropyin, kat1284_nonce, kat1284_persstr, + kat1284_addin0, kat1284_addin1, kat1284_retbits +}; +static const struct drbg_kat kat1284 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1284_t +}; + +static const unsigned char kat1285_entropyin[] = { + 0x82, 0x17, 0x16, 0xf8, 0x9f, 0xc9, 0xf3, 0x18, 0x87, 0x34, 0xfb, 0x4b, + 0x93, 0x38, 0x82, 0xed, 0xdd, 0x36, 0xa3, 0xb4, 0xfa, 0x92, 0x0d, 0xde, + 0xfc, 0xba, 0x2f, 0xa6, 0x52, 0x7a, 0xbb, 0xd8, 0xac, 0x8f, 0xee, 0xc7, + 0x3f, 0x71, 0xd0, 0x3f, 0xcf, 0x2e, 0x07, 0xf5, 0xc7, 0x90, 0x0d, 0x3f, +}; +static const unsigned char kat1285_nonce[] = {0}; +static const unsigned char kat1285_persstr[] = {0}; +static const unsigned char kat1285_addin0[] = { + 0x9f, 0xd4, 0xf9, 0x83, 0xc4, 0xa0, 0x56, 0x12, 0x26, 0x8d, 0x76, 0x41, + 0x70, 0x45, 0xb6, 0xcd, 0xfb, 0xcb, 0x4e, 0x0f, 0x25, 0x53, 0x99, 0xed, + 0x51, 0xb1, 0xaf, 0xcf, 0x9e, 0x8a, 0x0f, 0xd2, 0xe9, 0x56, 0xb3, 0xd7, + 0x34, 0x25, 0x0e, 0xe3, 0x32, 0x4f, 0x67, 0xb6, 0xcc, 0xd6, 0xad, 0x9d, +}; +static const unsigned char kat1285_addin1[] = { + 0xdf, 0x89, 0x35, 0x8c, 0xf9, 0xd7, 0x92, 0x7a, 0xab, 0x11, 0xe7, 0x22, + 0x6c, 0xa6, 0x55, 0xa8, 0x3e, 0x3f, 0x05, 0x89, 0x7c, 0xf7, 0x26, 0x91, + 0xaa, 0x5f, 0xa6, 0xc2, 0x7f, 0x84, 0x6e, 0xd5, 0x12, 0x3f, 0x47, 0xe1, + 0x4b, 0x9c, 0x2a, 0xea, 0x5e, 0x52, 0xa2, 0xd0, 0x96, 0x72, 0x79, 0xee, +}; +static const unsigned char kat1285_retbits[] = { + 0xa9, 0x9a, 0x41, 0x63, 0x3a, 0xe7, 0x3b, 0xbf, 0xd6, 0x8b, 0x54, 0x93, + 0x70, 0xdf, 0x8b, 0xd0, 0x10, 0xe1, 0xc0, 0xa7, 0xc7, 0x92, 0xb8, 0x32, + 0x9b, 0xbb, 0x1c, 0x66, 0x91, 0x65, 0x91, 0xcc, 0x40, 0x6f, 0xbd, 0x7a, + 0x54, 0x9a, 0x04, 0x30, 0xdc, 0x06, 0x03, 0x78, 0xe9, 0x8b, 0xd3, 0xeb, + 0x76, 0x36, 0xf6, 0x35, 0xbb, 0x9e, 0x97, 0x23, 0xcc, 0x39, 0x4a, 0x76, + 0x20, 0x5b, 0x62, 0x8a, +}; +static const struct drbg_kat_no_reseed kat1285_t = { + 9, kat1285_entropyin, kat1285_nonce, kat1285_persstr, + kat1285_addin0, kat1285_addin1, kat1285_retbits +}; +static const struct drbg_kat kat1285 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1285_t +}; + +static const unsigned char kat1286_entropyin[] = { + 0x0b, 0xcc, 0xc9, 0xc0, 0xd2, 0x6c, 0x49, 0x71, 0x6d, 0x22, 0xbd, 0xd8, + 0x32, 0xd8, 0x21, 0x50, 0xf2, 0x0c, 0xd0, 0xcc, 0x44, 0xa3, 0xfa, 0x0a, + 0x43, 0xdc, 0xe8, 0x70, 0x3b, 0x87, 0xe5, 0x72, 0x52, 0x66, 0x2c, 0xdd, + 0x1f, 0x8f, 0xee, 0x29, 0x62, 0xc3, 0x0e, 0x5f, 0xc5, 0xc8, 0x66, 0xc1, +}; +static const unsigned char kat1286_nonce[] = {0}; +static const unsigned char kat1286_persstr[] = {0}; +static const unsigned char kat1286_addin0[] = { + 0x1e, 0x4e, 0xd5, 0x91, 0xc1, 0xc7, 0x33, 0x7f, 0x57, 0x01, 0x29, 0x90, + 0x75, 0xf6, 0xd6, 0x15, 0x3a, 0x55, 0xd1, 0x3d, 0x7d, 0x34, 0xcc, 0x18, + 0x17, 0x00, 0x4d, 0x9e, 0x0c, 0x16, 0x51, 0x7f, 0x78, 0x87, 0x17, 0xdd, + 0xb1, 0x37, 0xe1, 0xc7, 0xf1, 0xac, 0x7a, 0x24, 0x24, 0xb0, 0x95, 0x3d, +}; +static const unsigned char kat1286_addin1[] = { + 0xfc, 0x36, 0x74, 0x79, 0x41, 0xd6, 0x28, 0x85, 0x79, 0xf2, 0xb6, 0xa4, + 0x15, 0xc8, 0x97, 0x18, 0x90, 0xb6, 0x6a, 0xc5, 0x14, 0xb1, 0xe4, 0x94, + 0x46, 0xdd, 0x94, 0xfd, 0x00, 0xa2, 0xa2, 0x22, 0x2e, 0xec, 0xe0, 0x93, + 0x46, 0x78, 0x8b, 0x39, 0x2a, 0x8e, 0xa8, 0x26, 0xe5, 0xe1, 0x94, 0xb3, +}; +static const unsigned char kat1286_retbits[] = { + 0xcf, 0x51, 0xbe, 0x2e, 0x26, 0x62, 0x05, 0x67, 0xcb, 0x35, 0x8d, 0x63, + 0x80, 0x8f, 0x9c, 0xfc, 0x18, 0xa0, 0xd7, 0xe5, 0x49, 0x5d, 0x8e, 0xc4, + 0xdc, 0x0c, 0x3a, 0xa9, 0xbf, 0x7b, 0xda, 0xb0, 0xae, 0x09, 0xb8, 0x44, + 0x4c, 0xba, 0x57, 0x7f, 0x19, 0xee, 0xc9, 0xfb, 0xa5, 0xd2, 0xd0, 0x28, + 0x5e, 0x92, 0x3e, 0xb2, 0x49, 0x2a, 0xb8, 0x08, 0xa4, 0xbc, 0x73, 0xda, + 0x25, 0xd8, 0x19, 0x5e, +}; +static const struct drbg_kat_no_reseed kat1286_t = { + 10, kat1286_entropyin, kat1286_nonce, kat1286_persstr, + kat1286_addin0, kat1286_addin1, kat1286_retbits +}; +static const struct drbg_kat kat1286 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1286_t +}; + +static const unsigned char kat1287_entropyin[] = { + 0x04, 0x40, 0x24, 0xfd, 0x37, 0x9b, 0x7f, 0x05, 0x57, 0x63, 0x2f, 0x4c, + 0x8e, 0x57, 0xf8, 0x0d, 0xc9, 0x43, 0x73, 0x5d, 0xef, 0x34, 0xd0, 0x5b, + 0xa5, 0xff, 0x35, 0x23, 0x78, 0x73, 0x87, 0x77, 0x73, 0xec, 0xdd, 0x2d, + 0x07, 0xc4, 0x98, 0x66, 0xa7, 0xc6, 0x41, 0x92, 0xb9, 0x8e, 0x57, 0xa0, +}; +static const unsigned char kat1287_nonce[] = {0}; +static const unsigned char kat1287_persstr[] = {0}; +static const unsigned char kat1287_addin0[] = { + 0x6e, 0x91, 0x35, 0x1d, 0xd5, 0xb5, 0x8b, 0xb1, 0x9f, 0x21, 0x0d, 0x51, + 0x25, 0xb3, 0xae, 0xc7, 0xf3, 0x11, 0xf1, 0xe2, 0xff, 0xb8, 0x58, 0x9d, + 0x49, 0xe0, 0xa0, 0x4b, 0xd9, 0xba, 0x6c, 0x53, 0x0a, 0xec, 0xb9, 0x4b, + 0x38, 0x94, 0x6a, 0x16, 0x2b, 0xf1, 0x46, 0xd7, 0xa9, 0xf7, 0xb1, 0xab, +}; +static const unsigned char kat1287_addin1[] = { + 0xab, 0x39, 0xa2, 0x78, 0x45, 0xab, 0x09, 0xe5, 0x77, 0xb6, 0xdc, 0xf9, + 0xed, 0x4e, 0xd7, 0x76, 0x99, 0x59, 0x5d, 0x35, 0x9a, 0x78, 0x94, 0x8f, + 0xa5, 0xa8, 0xcc, 0x63, 0x58, 0xe3, 0xea, 0x8e, 0x9a, 0x88, 0x77, 0xb6, + 0x0b, 0x6a, 0xe0, 0xfd, 0x7d, 0xbf, 0x37, 0xc9, 0x3d, 0xbd, 0xa8, 0x8c, +}; +static const unsigned char kat1287_retbits[] = { + 0x7f, 0x64, 0x91, 0x17, 0x76, 0xe2, 0xc0, 0x4e, 0x4a, 0x08, 0xad, 0x90, + 0xc8, 0xdb, 0xbf, 0x51, 0xee, 0x34, 0xbd, 0xe4, 0xba, 0x6a, 0x3b, 0x7b, + 0x29, 0x83, 0x52, 0x0b, 0xf4, 0x69, 0x24, 0xa9, 0xbd, 0x76, 0xe7, 0xa3, + 0x14, 0x1d, 0x8b, 0x44, 0x74, 0xb5, 0xd2, 0xe5, 0x73, 0x17, 0x3f, 0xdd, + 0x90, 0xc2, 0x37, 0x43, 0xa9, 0x0a, 0x1a, 0xef, 0x81, 0xb3, 0x49, 0x4f, + 0xef, 0xef, 0x98, 0x34, +}; +static const struct drbg_kat_no_reseed kat1287_t = { + 11, kat1287_entropyin, kat1287_nonce, kat1287_persstr, + kat1287_addin0, kat1287_addin1, kat1287_retbits +}; +static const struct drbg_kat kat1287 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1287_t +}; + +static const unsigned char kat1288_entropyin[] = { + 0xa0, 0x53, 0x9e, 0x0a, 0x45, 0x44, 0x64, 0x25, 0x1d, 0x9e, 0xcc, 0x45, + 0x09, 0xbd, 0x7f, 0x54, 0xa9, 0x0a, 0x26, 0x1d, 0x2e, 0x62, 0x5b, 0x38, + 0xbf, 0x76, 0xec, 0x90, 0x1c, 0x14, 0x2f, 0x7c, 0x28, 0x51, 0xef, 0x00, + 0x3a, 0xa1, 0xa7, 0xbe, 0x60, 0xb6, 0x0a, 0xbe, 0xf0, 0x2d, 0xe3, 0x84, +}; +static const unsigned char kat1288_nonce[] = {0}; +static const unsigned char kat1288_persstr[] = {0}; +static const unsigned char kat1288_addin0[] = { + 0x1e, 0x79, 0x4d, 0x68, 0x96, 0xf4, 0xcc, 0x9c, 0x2a, 0x45, 0x9e, 0x98, + 0xc2, 0xe0, 0xd4, 0x52, 0x78, 0x2b, 0x07, 0x2b, 0x42, 0x42, 0xe6, 0xee, + 0xe1, 0xec, 0x3b, 0x86, 0xb6, 0x40, 0x4f, 0xbf, 0x30, 0x15, 0x95, 0x9d, + 0x80, 0x06, 0xf2, 0x63, 0xf6, 0x82, 0xd0, 0x28, 0x11, 0x90, 0xb7, 0xbb, +}; +static const unsigned char kat1288_addin1[] = { + 0xca, 0x57, 0x3e, 0x98, 0xcc, 0x43, 0xed, 0x3e, 0x4e, 0x59, 0x61, 0x2b, + 0xa5, 0x0a, 0x6d, 0xfe, 0x62, 0xc3, 0xca, 0xeb, 0x95, 0x5a, 0xc5, 0xdb, + 0x60, 0xee, 0xf2, 0xce, 0xd5, 0xb6, 0x3f, 0x39, 0xdb, 0x91, 0x89, 0xef, + 0xed, 0x83, 0x06, 0xb6, 0x4b, 0xc7, 0xe0, 0x11, 0x04, 0xc7, 0xe8, 0x47, +}; +static const unsigned char kat1288_retbits[] = { + 0x71, 0x26, 0x0c, 0xdb, 0x48, 0x60, 0x94, 0xa1, 0x41, 0x6f, 0xb0, 0x6c, + 0x4d, 0xe7, 0xb5, 0xfe, 0xdf, 0x07, 0x37, 0xac, 0xdf, 0x35, 0x85, 0x12, + 0x97, 0xd1, 0xf1, 0x0d, 0xf1, 0x50, 0x14, 0xb1, 0x03, 0x04, 0xde, 0x05, + 0xb7, 0xcd, 0xb8, 0x4e, 0x59, 0xe9, 0x0a, 0xe8, 0x53, 0x65, 0xd6, 0xfd, + 0x1b, 0x2f, 0x6c, 0xae, 0x10, 0x26, 0x50, 0xb6, 0x89, 0x0e, 0xf5, 0x48, + 0x33, 0x46, 0x8f, 0x06, +}; +static const struct drbg_kat_no_reseed kat1288_t = { + 12, kat1288_entropyin, kat1288_nonce, kat1288_persstr, + kat1288_addin0, kat1288_addin1, kat1288_retbits +}; +static const struct drbg_kat kat1288 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1288_t +}; + +static const unsigned char kat1289_entropyin[] = { + 0xbb, 0x40, 0x53, 0x76, 0x98, 0x7e, 0x5a, 0x73, 0xb9, 0x36, 0x6b, 0x26, + 0x5f, 0xe6, 0x4c, 0x38, 0x32, 0x2c, 0xec, 0x5c, 0xdf, 0x59, 0xef, 0x04, + 0x56, 0x10, 0x77, 0xf5, 0x6a, 0x3b, 0xe5, 0x73, 0xe8, 0x94, 0x39, 0xda, + 0x5a, 0xc8, 0x52, 0x35, 0x05, 0x20, 0xce, 0x2b, 0x88, 0x87, 0x6e, 0xcb, +}; +static const unsigned char kat1289_nonce[] = {0}; +static const unsigned char kat1289_persstr[] = {0}; +static const unsigned char kat1289_addin0[] = { + 0x75, 0x09, 0x01, 0x5c, 0x0d, 0x48, 0x00, 0x39, 0x4a, 0x47, 0xc6, 0xe0, + 0x40, 0x9f, 0x47, 0x86, 0xf1, 0x76, 0xa4, 0x95, 0xd0, 0xc7, 0xfb, 0xa1, + 0x4b, 0x24, 0x07, 0xe2, 0x92, 0xb8, 0x45, 0x94, 0xb6, 0x02, 0xa4, 0x8a, + 0x4e, 0x01, 0x7f, 0x96, 0xdf, 0xf9, 0x3e, 0x82, 0x48, 0x4e, 0x40, 0x37, +}; +static const unsigned char kat1289_addin1[] = { + 0x86, 0x44, 0x54, 0x6a, 0xae, 0x7b, 0xdd, 0xda, 0x28, 0x10, 0xba, 0x9d, + 0xee, 0x8e, 0xaf, 0x8a, 0xe5, 0x0f, 0xa4, 0xa2, 0x52, 0xde, 0x5d, 0xf1, + 0x7f, 0x6a, 0x55, 0x54, 0x08, 0x75, 0xab, 0x73, 0xce, 0xd9, 0xf9, 0x20, + 0x48, 0x3f, 0x5c, 0xc5, 0xf9, 0xf7, 0x6a, 0x94, 0xb2, 0x53, 0xb4, 0xc1, +}; +static const unsigned char kat1289_retbits[] = { + 0x71, 0x13, 0xa5, 0x71, 0x07, 0x52, 0xf3, 0xb2, 0x62, 0x77, 0x1f, 0x65, + 0x23, 0x74, 0x77, 0x11, 0xf8, 0x40, 0x2c, 0x36, 0xcc, 0xd3, 0x7d, 0xda, + 0x36, 0x6b, 0x46, 0xd9, 0xe7, 0xd7, 0x83, 0x08, 0x12, 0xe0, 0xf9, 0x35, + 0xb3, 0x6a, 0x15, 0x16, 0x4f, 0xdb, 0xd4, 0xc3, 0xb4, 0xe4, 0x6f, 0xd1, + 0xfe, 0x43, 0xee, 0x25, 0xe8, 0x3c, 0x4d, 0x94, 0x09, 0xf7, 0x0d, 0xfd, + 0x4b, 0x85, 0x1e, 0x06, +}; +static const struct drbg_kat_no_reseed kat1289_t = { + 13, kat1289_entropyin, kat1289_nonce, kat1289_persstr, + kat1289_addin0, kat1289_addin1, kat1289_retbits +}; +static const struct drbg_kat kat1289 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1289_t +}; + +static const unsigned char kat1290_entropyin[] = { + 0xf6, 0x1b, 0x23, 0xf1, 0x49, 0xd5, 0x46, 0xdb, 0x95, 0xf2, 0xee, 0x33, + 0x34, 0x68, 0xde, 0xbc, 0xf2, 0xe4, 0x44, 0xf7, 0x11, 0x95, 0x77, 0xb4, + 0x23, 0x2c, 0x03, 0x17, 0x31, 0x33, 0x56, 0x97, 0xe0, 0x76, 0x85, 0x61, + 0x0c, 0xd6, 0x2b, 0xc8, 0x38, 0x33, 0x80, 0x76, 0x53, 0x6e, 0xc3, 0x55, +}; +static const unsigned char kat1290_nonce[] = {0}; +static const unsigned char kat1290_persstr[] = {0}; +static const unsigned char kat1290_addin0[] = { + 0xcd, 0x4c, 0xb3, 0xa8, 0xe0, 0xf1, 0xf8, 0xa6, 0x75, 0x77, 0xd7, 0x13, + 0x39, 0xe6, 0xc4, 0xf4, 0x0a, 0x29, 0x1c, 0xdd, 0x22, 0xd5, 0xa1, 0x9a, + 0xaf, 0xe0, 0xf7, 0xc9, 0x9e, 0x2b, 0x85, 0x78, 0x9d, 0x16, 0xb6, 0x3f, + 0xda, 0xb2, 0xff, 0x56, 0x27, 0x35, 0x3a, 0x73, 0x51, 0xb6, 0x53, 0xe8, +}; +static const unsigned char kat1290_addin1[] = { + 0x02, 0x03, 0xe7, 0x5c, 0xce, 0x2d, 0x2e, 0x81, 0xec, 0x44, 0x1b, 0xa7, + 0x3b, 0x31, 0x29, 0xc6, 0xae, 0x50, 0x67, 0x73, 0x3b, 0xc0, 0x03, 0x16, + 0x14, 0xcb, 0xc8, 0xfc, 0x92, 0xd5, 0x99, 0x52, 0x3a, 0xd3, 0x0d, 0xa2, + 0xea, 0x25, 0x3c, 0x06, 0xc4, 0x82, 0x93, 0xbe, 0xfb, 0x14, 0xab, 0x71, +}; +static const unsigned char kat1290_retbits[] = { + 0x92, 0x7c, 0x1e, 0x64, 0xd9, 0xf3, 0xac, 0xfd, 0xd7, 0x4e, 0x7a, 0xfe, + 0xb9, 0xab, 0x22, 0x80, 0xf3, 0x7c, 0xe9, 0xc1, 0x83, 0x9f, 0x8c, 0xec, + 0x8c, 0x32, 0xdb, 0x76, 0x76, 0xfa, 0xb0, 0x57, 0x62, 0x01, 0x44, 0xd3, + 0x4c, 0x83, 0x82, 0xbc, 0xb9, 0x04, 0xe8, 0x5a, 0xf4, 0x5d, 0x34, 0x8e, + 0x10, 0xbb, 0x2e, 0x57, 0x08, 0x26, 0x83, 0x43, 0x59, 0x5f, 0xfc, 0x08, + 0xdd, 0x25, 0x8c, 0x00, +}; +static const struct drbg_kat_no_reseed kat1290_t = { + 14, kat1290_entropyin, kat1290_nonce, kat1290_persstr, + kat1290_addin0, kat1290_addin1, kat1290_retbits +}; +static const struct drbg_kat kat1290 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1290_t +}; + +static const unsigned char kat1291_entropyin[] = { + 0xd8, 0x07, 0x8f, 0x99, 0xd5, 0xda, 0x1b, 0x31, 0x2e, 0x45, 0x12, 0xac, + 0xbc, 0xcc, 0x19, 0x89, 0x30, 0x45, 0x39, 0x75, 0xd3, 0xd5, 0x0f, 0xb5, + 0xa1, 0x3f, 0x25, 0xfd, 0xb1, 0x1a, 0x5f, 0xed, 0x1a, 0x24, 0x6e, 0x6b, + 0xc1, 0x53, 0x95, 0x2a, 0x16, 0x62, 0x3c, 0x23, 0x3e, 0x13, 0xe2, 0x41, +}; +static const unsigned char kat1291_nonce[] = {0}; +static const unsigned char kat1291_persstr[] = { + 0xdf, 0x1b, 0x8b, 0x21, 0x72, 0x5f, 0xf8, 0x86, 0xaf, 0x4c, 0x64, 0x7a, + 0xf1, 0xa5, 0x87, 0xb1, 0x33, 0x9e, 0x09, 0x73, 0x78, 0x2e, 0x95, 0xc9, + 0x3f, 0x3b, 0x40, 0xbf, 0x42, 0x1d, 0x5d, 0x03, 0xce, 0xc2, 0xb0, 0xb4, + 0x1f, 0x90, 0x58, 0xd7, 0x30, 0xeb, 0x0f, 0xb5, 0x35, 0x68, 0xd0, 0x0a, +}; +static const unsigned char kat1291_addin0[] = {0}; +static const unsigned char kat1291_addin1[] = {0}; +static const unsigned char kat1291_retbits[] = { + 0x5e, 0xdb, 0x9b, 0x25, 0x28, 0x7f, 0x2b, 0x5b, 0x1e, 0x5f, 0xd8, 0x1f, + 0x69, 0x77, 0x1c, 0xca, 0xb3, 0xb9, 0x87, 0x6b, 0xf2, 0xec, 0xdd, 0x64, + 0x4c, 0x9c, 0x6c, 0x5f, 0xe8, 0xdd, 0x98, 0x8e, 0x0d, 0x76, 0x22, 0xde, + 0xe9, 0x02, 0x36, 0x64, 0x49, 0xf2, 0x06, 0x3e, 0x3f, 0x82, 0x6d, 0xf9, + 0x97, 0x43, 0x80, 0x6b, 0x82, 0x5f, 0xe8, 0xc8, 0x59, 0x46, 0xaf, 0x3b, + 0x47, 0x81, 0xd6, 0xaa, +}; +static const struct drbg_kat_no_reseed kat1291_t = { + 0, kat1291_entropyin, kat1291_nonce, kat1291_persstr, + kat1291_addin0, kat1291_addin1, kat1291_retbits +}; +static const struct drbg_kat kat1291 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1291_t +}; + +static const unsigned char kat1292_entropyin[] = { + 0xe5, 0xb0, 0x0f, 0x72, 0x1b, 0xbb, 0xf0, 0x81, 0xd3, 0x50, 0x43, 0x35, + 0x92, 0xf6, 0xd2, 0xda, 0xb3, 0x62, 0x21, 0x7f, 0x0c, 0x0c, 0x49, 0x51, + 0x5d, 0x1f, 0x7f, 0x45, 0x99, 0x9c, 0xf5, 0xac, 0xd5, 0x2b, 0x0e, 0x81, + 0x6d, 0x10, 0x2d, 0x60, 0x63, 0x4a, 0x24, 0x61, 0xf4, 0x30, 0x01, 0x03, +}; +static const unsigned char kat1292_nonce[] = {0}; +static const unsigned char kat1292_persstr[] = { + 0x65, 0x4a, 0x93, 0x5d, 0x0c, 0x43, 0xaf, 0xfc, 0xa9, 0x28, 0x0a, 0xc1, + 0x52, 0xa3, 0x42, 0x42, 0xfb, 0x64, 0x00, 0xd2, 0x08, 0x36, 0xaa, 0xbd, + 0x13, 0x91, 0x77, 0x19, 0x02, 0x5c, 0x1e, 0x0d, 0x65, 0xa9, 0x6a, 0xf7, + 0x56, 0x14, 0xe0, 0x58, 0x67, 0xd5, 0x19, 0x4a, 0xa8, 0xe7, 0x1c, 0x72, +}; +static const unsigned char kat1292_addin0[] = {0}; +static const unsigned char kat1292_addin1[] = {0}; +static const unsigned char kat1292_retbits[] = { + 0x46, 0x47, 0x96, 0xa7, 0x72, 0x8e, 0xbc, 0x3b, 0x14, 0xda, 0x92, 0x5a, + 0xc9, 0x07, 0x3e, 0x28, 0x19, 0xb6, 0x49, 0x30, 0xb9, 0xce, 0x62, 0x95, + 0x4c, 0xf9, 0xa0, 0x4c, 0x3b, 0x7d, 0xd2, 0xa3, 0xc3, 0x57, 0x80, 0xa5, + 0x75, 0xd7, 0xb9, 0x2e, 0x40, 0x23, 0x08, 0x6a, 0xba, 0x0b, 0x4d, 0xcc, + 0x26, 0x71, 0x97, 0xdc, 0xeb, 0x14, 0x81, 0xe4, 0x3e, 0xdf, 0x4c, 0xc0, + 0x30, 0xd5, 0x45, 0xe5, +}; +static const struct drbg_kat_no_reseed kat1292_t = { + 1, kat1292_entropyin, kat1292_nonce, kat1292_persstr, + kat1292_addin0, kat1292_addin1, kat1292_retbits +}; +static const struct drbg_kat kat1292 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1292_t +}; + +static const unsigned char kat1293_entropyin[] = { + 0x0e, 0xe0, 0xf3, 0xef, 0xf0, 0x1d, 0x6b, 0xf3, 0xcc, 0x5a, 0x81, 0x40, + 0xfd, 0xa7, 0xab, 0x26, 0x21, 0xe5, 0xcc, 0x7f, 0x12, 0x35, 0xfb, 0x43, + 0x11, 0x0e, 0x46, 0x51, 0x7f, 0xde, 0xb0, 0xa2, 0x9a, 0xa1, 0x79, 0xc5, + 0x5b, 0x8f, 0xe5, 0x60, 0x76, 0x41, 0xe7, 0xdf, 0xc3, 0xcd, 0x24, 0xa0, +}; +static const unsigned char kat1293_nonce[] = {0}; +static const unsigned char kat1293_persstr[] = { + 0xd1, 0xf7, 0x49, 0x3b, 0xa4, 0xed, 0x0d, 0xb1, 0x23, 0x5a, 0x5e, 0xfe, + 0x38, 0xb8, 0xe6, 0x8f, 0xf0, 0x3f, 0x71, 0x8d, 0x84, 0x07, 0x1e, 0xad, + 0x8f, 0xf4, 0xeb, 0x8c, 0x2e, 0x06, 0x36, 0x5c, 0x4c, 0x11, 0xe7, 0x86, + 0x91, 0xce, 0x17, 0x6c, 0x2b, 0x2d, 0xbd, 0xe0, 0x3f, 0xc7, 0x3f, 0x3d, +}; +static const unsigned char kat1293_addin0[] = {0}; +static const unsigned char kat1293_addin1[] = {0}; +static const unsigned char kat1293_retbits[] = { + 0xa1, 0xfd, 0xd8, 0xa3, 0x59, 0xf5, 0xe9, 0xde, 0xa8, 0x1f, 0xdf, 0x83, + 0xc7, 0x00, 0xca, 0xcf, 0x04, 0xb4, 0xf8, 0x3c, 0x73, 0x27, 0x58, 0xe2, + 0x65, 0x54, 0x8a, 0xaf, 0x1d, 0x79, 0x60, 0x84, 0x25, 0xc6, 0x37, 0x20, + 0x89, 0x68, 0x96, 0x8b, 0x3b, 0x56, 0xbb, 0xb6, 0x12, 0x2f, 0x12, 0x71, + 0xe4, 0x02, 0x31, 0x4e, 0xd9, 0xcb, 0xa2, 0x4a, 0xcf, 0x71, 0x45, 0x7f, + 0xf7, 0x54, 0xe8, 0x5a, +}; +static const struct drbg_kat_no_reseed kat1293_t = { + 2, kat1293_entropyin, kat1293_nonce, kat1293_persstr, + kat1293_addin0, kat1293_addin1, kat1293_retbits +}; +static const struct drbg_kat kat1293 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1293_t +}; + +static const unsigned char kat1294_entropyin[] = { + 0xf4, 0x3e, 0x4b, 0x7d, 0x33, 0x17, 0xce, 0x49, 0x4b, 0x0a, 0x68, 0xcb, + 0x6e, 0x11, 0xe6, 0x11, 0xbb, 0xfe, 0x7b, 0x61, 0xbc, 0x37, 0xf6, 0xef, + 0x1e, 0x6b, 0x45, 0xb3, 0xbd, 0x6d, 0x67, 0x97, 0xd3, 0x95, 0x52, 0xab, + 0xb4, 0x90, 0x92, 0x9d, 0x0d, 0xc9, 0x67, 0xea, 0x04, 0x70, 0xd3, 0xae, +}; +static const unsigned char kat1294_nonce[] = {0}; +static const unsigned char kat1294_persstr[] = { + 0xda, 0xa5, 0xb6, 0x16, 0x66, 0x3c, 0x91, 0x05, 0x4d, 0x58, 0x38, 0x88, + 0xe6, 0x83, 0xc6, 0xfc, 0x93, 0x55, 0xd5, 0xc3, 0x2e, 0xc2, 0xb8, 0x63, + 0x2a, 0x63, 0xdd, 0xc4, 0xfb, 0x46, 0xdd, 0x93, 0x6d, 0xaa, 0xcd, 0x86, + 0x00, 0x6f, 0x1e, 0x63, 0x92, 0x28, 0xb0, 0xe3, 0x0a, 0x6c, 0x2c, 0x08, +}; +static const unsigned char kat1294_addin0[] = {0}; +static const unsigned char kat1294_addin1[] = {0}; +static const unsigned char kat1294_retbits[] = { + 0x99, 0x57, 0x3c, 0xd5, 0xe7, 0xce, 0x4a, 0x0d, 0xa1, 0xd5, 0x60, 0xfb, + 0x5e, 0x99, 0x2f, 0x0b, 0xe2, 0x87, 0x36, 0xad, 0x9c, 0x2f, 0x14, 0x49, + 0xf7, 0x21, 0x26, 0x1d, 0xcf, 0x3d, 0xf6, 0x7b, 0xec, 0x1c, 0x3d, 0x49, + 0xa6, 0xe4, 0xf9, 0x9f, 0xf4, 0xbc, 0x9a, 0xee, 0x0e, 0xcf, 0x4d, 0x5f, + 0x97, 0xed, 0x0d, 0x37, 0xd9, 0x77, 0x6e, 0x7f, 0x63, 0xed, 0xb8, 0xce, + 0xce, 0xf7, 0x2c, 0x4b, +}; +static const struct drbg_kat_no_reseed kat1294_t = { + 3, kat1294_entropyin, kat1294_nonce, kat1294_persstr, + kat1294_addin0, kat1294_addin1, kat1294_retbits +}; +static const struct drbg_kat kat1294 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1294_t +}; + +static const unsigned char kat1295_entropyin[] = { + 0x11, 0xec, 0xf1, 0x0f, 0x25, 0x9b, 0xbd, 0x81, 0x7b, 0x23, 0x67, 0xea, + 0x80, 0x36, 0xec, 0x29, 0xe0, 0x32, 0xe4, 0x86, 0x9c, 0xd9, 0xd9, 0xe4, + 0xc5, 0x30, 0x55, 0xb1, 0x34, 0x43, 0x4b, 0xbd, 0xad, 0xdc, 0x32, 0x7b, + 0x13, 0x7a, 0x61, 0xe8, 0xab, 0x60, 0xf0, 0xcf, 0x29, 0x6f, 0x2c, 0x35, +}; +static const unsigned char kat1295_nonce[] = {0}; +static const unsigned char kat1295_persstr[] = { + 0xeb, 0x07, 0x19, 0xf1, 0x3b, 0x2d, 0xd9, 0xf0, 0x8d, 0xd0, 0xd0, 0x6c, + 0xad, 0xc4, 0x59, 0xc3, 0x1b, 0x4a, 0x15, 0x36, 0xc7, 0x9d, 0xa5, 0xd2, + 0x5e, 0xed, 0x53, 0x73, 0xd9, 0xa4, 0x6c, 0xb0, 0xb5, 0xce, 0x11, 0x60, + 0x72, 0x95, 0x4b, 0x77, 0xeb, 0x6f, 0x84, 0xbf, 0x94, 0x14, 0x43, 0x22, +}; +static const unsigned char kat1295_addin0[] = {0}; +static const unsigned char kat1295_addin1[] = {0}; +static const unsigned char kat1295_retbits[] = { + 0x5c, 0x4a, 0x42, 0x6e, 0xce, 0x1b, 0x6e, 0xd0, 0xb5, 0xba, 0xc7, 0x59, + 0xa4, 0xab, 0xde, 0xf1, 0xb6, 0x2b, 0x83, 0x9e, 0xc4, 0x74, 0xf4, 0x26, + 0xf6, 0xa5, 0x38, 0x6b, 0x04, 0xd1, 0x10, 0xe1, 0x35, 0x95, 0x08, 0x1e, + 0x7d, 0xb1, 0x01, 0x64, 0x89, 0xda, 0x2d, 0x2e, 0x3f, 0xea, 0x04, 0xbd, + 0x7f, 0xc3, 0x7d, 0xaf, 0x87, 0xca, 0x98, 0x64, 0xf3, 0x43, 0x0c, 0x00, + 0x5f, 0xcc, 0xad, 0x26, +}; +static const struct drbg_kat_no_reseed kat1295_t = { + 4, kat1295_entropyin, kat1295_nonce, kat1295_persstr, + kat1295_addin0, kat1295_addin1, kat1295_retbits +}; +static const struct drbg_kat kat1295 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1295_t +}; + +static const unsigned char kat1296_entropyin[] = { + 0x42, 0x17, 0xfe, 0xba, 0xcb, 0xbc, 0x1c, 0x25, 0x04, 0xc8, 0x2e, 0xf6, + 0x0f, 0x20, 0xc7, 0x4a, 0x61, 0xa0, 0x08, 0x0a, 0x12, 0x44, 0x49, 0x70, + 0xf9, 0xe6, 0xc1, 0x7c, 0xab, 0x0b, 0x56, 0x04, 0xd0, 0x8f, 0xe8, 0xda, + 0xaa, 0x66, 0x21, 0x38, 0x04, 0xab, 0x08, 0x56, 0x2e, 0x13, 0x64, 0x6a, +}; +static const unsigned char kat1296_nonce[] = {0}; +static const unsigned char kat1296_persstr[] = { + 0x08, 0xc6, 0x07, 0x59, 0x89, 0xdd, 0x93, 0x2c, 0x51, 0x61, 0x60, 0x74, + 0x07, 0x10, 0xf5, 0xd1, 0x6c, 0x38, 0xd2, 0x05, 0xfb, 0xdf, 0xaf, 0xf7, + 0x44, 0x49, 0x68, 0x79, 0x1b, 0x6e, 0x9a, 0x43, 0xee, 0x9a, 0x79, 0xcc, + 0x5e, 0xb3, 0xe5, 0x8e, 0xa2, 0x92, 0x1f, 0x9c, 0x1f, 0x13, 0xdd, 0x25, +}; +static const unsigned char kat1296_addin0[] = {0}; +static const unsigned char kat1296_addin1[] = {0}; +static const unsigned char kat1296_retbits[] = { + 0xe4, 0xf5, 0x46, 0x3c, 0xd4, 0xd7, 0x7d, 0xa2, 0x3b, 0xfe, 0xd0, 0xf6, + 0x2f, 0x29, 0x23, 0xbe, 0xad, 0x6a, 0x46, 0x4d, 0x16, 0x6d, 0xda, 0x84, + 0xcc, 0xfd, 0xdb, 0x0f, 0xd3, 0x6a, 0x32, 0xa0, 0xe8, 0xc0, 0xdc, 0xcf, + 0xa1, 0x54, 0x8a, 0xfa, 0xf2, 0x9a, 0xbb, 0xd8, 0x53, 0xad, 0x8d, 0x37, + 0xa8, 0x2f, 0x3c, 0x16, 0xb2, 0x9f, 0x5b, 0x67, 0x93, 0xeb, 0x35, 0x96, + 0xe1, 0xb3, 0x5c, 0x0a, +}; +static const struct drbg_kat_no_reseed kat1296_t = { + 5, kat1296_entropyin, kat1296_nonce, kat1296_persstr, + kat1296_addin0, kat1296_addin1, kat1296_retbits +}; +static const struct drbg_kat kat1296 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1296_t +}; + +static const unsigned char kat1297_entropyin[] = { + 0x80, 0xf7, 0x10, 0xdd, 0xab, 0x86, 0xa0, 0xd0, 0x9b, 0xa9, 0xff, 0x80, + 0x98, 0x51, 0x2c, 0x41, 0xe2, 0x0c, 0x54, 0x87, 0x84, 0x18, 0xae, 0x7a, + 0x67, 0x00, 0xb7, 0x78, 0x0c, 0xf6, 0x7a, 0x4e, 0x30, 0x56, 0x5e, 0xfc, + 0xd6, 0xbd, 0x50, 0xe0, 0xae, 0x1a, 0x77, 0x8d, 0x5a, 0x18, 0xfd, 0x2d, +}; +static const unsigned char kat1297_nonce[] = {0}; +static const unsigned char kat1297_persstr[] = { + 0xa0, 0x30, 0xe8, 0x34, 0x5f, 0xdf, 0xa9, 0x67, 0xa1, 0x84, 0x41, 0x3a, + 0x4d, 0x48, 0x1d, 0x88, 0x7f, 0xa6, 0x47, 0xbc, 0x46, 0x04, 0x3c, 0x6f, + 0x40, 0x57, 0xe7, 0x01, 0x1b, 0xaa, 0x9e, 0xd1, 0x15, 0xf3, 0x96, 0x88, + 0xa4, 0xfe, 0x5c, 0xda, 0xef, 0x98, 0xec, 0x51, 0x8d, 0xdb, 0x04, 0x0c, +}; +static const unsigned char kat1297_addin0[] = {0}; +static const unsigned char kat1297_addin1[] = {0}; +static const unsigned char kat1297_retbits[] = { + 0x3b, 0xbc, 0xe7, 0x04, 0x1f, 0xad, 0x98, 0x8f, 0x05, 0x59, 0x69, 0xf4, + 0xb5, 0x3a, 0x2f, 0xdd, 0xb6, 0xe4, 0xd0, 0x41, 0x0c, 0x08, 0x0d, 0xa3, + 0xda, 0xd0, 0x5b, 0xce, 0x8e, 0xca, 0x10, 0xb7, 0xed, 0x4e, 0x36, 0x7e, + 0x86, 0x11, 0xb8, 0xde, 0x28, 0x48, 0x4f, 0xe6, 0x42, 0xd5, 0x75, 0xda, + 0xf2, 0x54, 0x25, 0x98, 0x58, 0xaa, 0x22, 0xb8, 0xcb, 0xfc, 0x96, 0x29, + 0x96, 0x05, 0x82, 0x0d, +}; +static const struct drbg_kat_no_reseed kat1297_t = { + 6, kat1297_entropyin, kat1297_nonce, kat1297_persstr, + kat1297_addin0, kat1297_addin1, kat1297_retbits +}; +static const struct drbg_kat kat1297 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1297_t +}; + +static const unsigned char kat1298_entropyin[] = { + 0xbb, 0xc1, 0x91, 0x5e, 0x62, 0x3f, 0x50, 0xff, 0x17, 0x68, 0x56, 0x41, + 0xeb, 0xe7, 0xb1, 0xd5, 0x5b, 0xb8, 0xb6, 0xf2, 0xd9, 0x6e, 0x56, 0xe8, + 0x2a, 0x01, 0x3a, 0xe4, 0x22, 0x63, 0xe7, 0x07, 0xec, 0x8f, 0xc7, 0x3d, + 0xb4, 0x58, 0x86, 0x0b, 0xa4, 0x76, 0x49, 0x33, 0x2b, 0xc4, 0xbc, 0x26, +}; +static const unsigned char kat1298_nonce[] = {0}; +static const unsigned char kat1298_persstr[] = { + 0x3f, 0xa6, 0x42, 0xef, 0x2b, 0x0e, 0xa9, 0x38, 0xad, 0x67, 0xc4, 0xf7, + 0xa1, 0x98, 0xd1, 0xbe, 0xbb, 0x06, 0x89, 0xec, 0x5d, 0x90, 0x65, 0xec, + 0xea, 0x59, 0x06, 0xa4, 0xcb, 0xc6, 0xd2, 0x8e, 0x63, 0x78, 0xac, 0xcc, + 0x67, 0xf5, 0xb0, 0x81, 0x10, 0xb4, 0x53, 0x22, 0x9c, 0xe6, 0x94, 0x9f, +}; +static const unsigned char kat1298_addin0[] = {0}; +static const unsigned char kat1298_addin1[] = {0}; +static const unsigned char kat1298_retbits[] = { + 0xa4, 0x50, 0x7a, 0x66, 0x72, 0x59, 0x7e, 0x41, 0xc6, 0xc9, 0x25, 0xc6, + 0x10, 0x44, 0x6f, 0x8e, 0xd1, 0x16, 0x0f, 0x44, 0x79, 0x7f, 0xfa, 0x6b, + 0x35, 0x6e, 0x2a, 0x02, 0x66, 0x0d, 0xe3, 0xe6, 0x3a, 0x87, 0xa1, 0x82, + 0x11, 0x58, 0x79, 0xef, 0xe8, 0x98, 0x10, 0x8b, 0xc6, 0x51, 0xd9, 0xa5, + 0xe3, 0x5d, 0xe2, 0x63, 0x19, 0x0d, 0x89, 0x11, 0x3d, 0x7e, 0xab, 0x4c, + 0x03, 0x57, 0xc7, 0x8d, +}; +static const struct drbg_kat_no_reseed kat1298_t = { + 7, kat1298_entropyin, kat1298_nonce, kat1298_persstr, + kat1298_addin0, kat1298_addin1, kat1298_retbits +}; +static const struct drbg_kat kat1298 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1298_t +}; + +static const unsigned char kat1299_entropyin[] = { + 0xd2, 0x6f, 0xde, 0xf7, 0x05, 0xb3, 0xf0, 0x0a, 0x0f, 0x99, 0xc5, 0xa2, + 0x09, 0xa7, 0x3e, 0x12, 0xaa, 0x0b, 0xb6, 0xb3, 0x61, 0x2b, 0x63, 0xd6, + 0xa4, 0x9f, 0x2b, 0x55, 0x1b, 0x02, 0x08, 0x30, 0x85, 0xd7, 0xd4, 0x9b, + 0xf8, 0x1d, 0x2c, 0x37, 0x35, 0x90, 0xcd, 0xb5, 0xdb, 0x60, 0x06, 0xeb, +}; +static const unsigned char kat1299_nonce[] = {0}; +static const unsigned char kat1299_persstr[] = { + 0x1c, 0x62, 0xb5, 0xd0, 0x7f, 0x7c, 0xa8, 0xc6, 0x0b, 0x69, 0x12, 0x61, + 0x18, 0x34, 0x1d, 0xb5, 0x5e, 0x5a, 0x2c, 0xb2, 0xba, 0xf3, 0x59, 0xd2, + 0x97, 0x19, 0x67, 0x57, 0x06, 0xb8, 0x93, 0x8b, 0xb6, 0x39, 0x8d, 0xd0, + 0x91, 0xc3, 0xf9, 0x11, 0x81, 0x33, 0xa6, 0x39, 0x69, 0x78, 0xbd, 0xf6, +}; +static const unsigned char kat1299_addin0[] = {0}; +static const unsigned char kat1299_addin1[] = {0}; +static const unsigned char kat1299_retbits[] = { + 0x10, 0xf3, 0x33, 0xdd, 0xcd, 0xfa, 0xd0, 0xf8, 0x20, 0x5a, 0x0c, 0x53, + 0xa7, 0x89, 0x52, 0xd1, 0x0d, 0xba, 0x34, 0x15, 0x33, 0xe9, 0xd4, 0xb0, + 0xc3, 0x64, 0x0e, 0xcb, 0x2f, 0x59, 0xc0, 0x1a, 0x94, 0xc1, 0xed, 0xf0, + 0x5e, 0xb5, 0xb2, 0x98, 0x2c, 0x0d, 0x76, 0x02, 0xd6, 0xaa, 0x9c, 0xbc, + 0x16, 0x6b, 0x0f, 0x42, 0x90, 0x10, 0xd6, 0x92, 0xdf, 0xc2, 0x15, 0x83, + 0x96, 0x8b, 0x84, 0x1f, +}; +static const struct drbg_kat_no_reseed kat1299_t = { + 8, kat1299_entropyin, kat1299_nonce, kat1299_persstr, + kat1299_addin0, kat1299_addin1, kat1299_retbits +}; +static const struct drbg_kat kat1299 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1299_t +}; + +static const unsigned char kat1300_entropyin[] = { + 0x8d, 0xa9, 0x23, 0x05, 0x68, 0xf5, 0x62, 0xa4, 0x4c, 0xe6, 0x52, 0x63, + 0x63, 0x48, 0xcc, 0x9f, 0xee, 0xea, 0x46, 0x72, 0x63, 0x81, 0xed, 0x95, + 0x55, 0x72, 0x14, 0xad, 0xf5, 0xad, 0xac, 0x0d, 0x94, 0xe2, 0x00, 0x83, + 0xd8, 0xd3, 0x27, 0xee, 0xfe, 0xe3, 0x83, 0xa2, 0x18, 0x91, 0xb4, 0x2a, +}; +static const unsigned char kat1300_nonce[] = {0}; +static const unsigned char kat1300_persstr[] = { + 0x74, 0x36, 0x3f, 0xd1, 0x9c, 0xaa, 0x5c, 0x2e, 0x13, 0x0e, 0x5c, 0xba, + 0xea, 0x8f, 0xc1, 0x8a, 0x04, 0xde, 0x26, 0x15, 0xd9, 0xbf, 0xca, 0x07, + 0x1e, 0xaa, 0xe9, 0xc1, 0x6f, 0x26, 0xfb, 0x9e, 0xe8, 0xbe, 0xd9, 0x8c, + 0x61, 0x5d, 0xc4, 0xfd, 0xcc, 0x68, 0x23, 0x3b, 0x16, 0x6e, 0x8f, 0x89, +}; +static const unsigned char kat1300_addin0[] = {0}; +static const unsigned char kat1300_addin1[] = {0}; +static const unsigned char kat1300_retbits[] = { + 0x3f, 0xc8, 0x59, 0x13, 0x0c, 0xa0, 0xd9, 0x50, 0x0e, 0x79, 0x77, 0xd1, + 0x29, 0x50, 0x64, 0x06, 0xa2, 0xe1, 0x4a, 0x77, 0x33, 0xc1, 0x49, 0x0f, + 0x7e, 0x4d, 0x93, 0x69, 0x0d, 0x4f, 0xab, 0x90, 0x4c, 0xdb, 0x3a, 0x84, + 0x7e, 0x4d, 0x40, 0xa2, 0x58, 0x18, 0xa8, 0x08, 0xde, 0x7f, 0x14, 0x62, + 0x12, 0x1b, 0x13, 0x6c, 0x84, 0x6e, 0x57, 0x80, 0x9f, 0x42, 0x07, 0x26, + 0x5a, 0x13, 0xe2, 0x37, +}; +static const struct drbg_kat_no_reseed kat1300_t = { + 9, kat1300_entropyin, kat1300_nonce, kat1300_persstr, + kat1300_addin0, kat1300_addin1, kat1300_retbits +}; +static const struct drbg_kat kat1300 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1300_t +}; + +static const unsigned char kat1301_entropyin[] = { + 0x85, 0x94, 0x86, 0x20, 0xa7, 0x8d, 0xeb, 0x45, 0x44, 0x9c, 0x84, 0x82, + 0x78, 0x67, 0x70, 0x25, 0xb5, 0x96, 0xb6, 0x27, 0xd1, 0xf0, 0x61, 0xbf, + 0x44, 0x9b, 0x14, 0x2b, 0x5f, 0x8b, 0x84, 0x3c, 0x3c, 0x04, 0x9d, 0xe2, + 0x53, 0xb8, 0x46, 0xd3, 0x3b, 0xd0, 0x73, 0x3f, 0xc9, 0x2f, 0x34, 0x54, +}; +static const unsigned char kat1301_nonce[] = {0}; +static const unsigned char kat1301_persstr[] = { + 0xa5, 0x47, 0x71, 0xc0, 0xd1, 0xa5, 0xc6, 0xdf, 0x3e, 0x7f, 0x30, 0xa6, + 0x20, 0x8e, 0x35, 0xaa, 0x4d, 0x65, 0xc5, 0xb6, 0x54, 0x80, 0x23, 0x60, + 0xce, 0xbe, 0xb8, 0x0d, 0x2c, 0xd0, 0x50, 0x9c, 0xa3, 0x7b, 0x7e, 0xa8, + 0x49, 0xf9, 0x43, 0x9f, 0x3e, 0xc5, 0x07, 0x15, 0x40, 0x82, 0xc4, 0x28, +}; +static const unsigned char kat1301_addin0[] = {0}; +static const unsigned char kat1301_addin1[] = {0}; +static const unsigned char kat1301_retbits[] = { + 0x02, 0x8e, 0x0e, 0x6a, 0x5a, 0xb8, 0x7d, 0x46, 0x99, 0xbe, 0x8b, 0x29, + 0x0b, 0x9e, 0x45, 0x84, 0x73, 0x42, 0x00, 0x69, 0xee, 0x61, 0x8e, 0x04, + 0xc3, 0x46, 0xe0, 0xa6, 0x23, 0x15, 0x8f, 0xbc, 0x91, 0x5d, 0x36, 0x36, + 0x8f, 0xea, 0x88, 0x7e, 0x2c, 0x48, 0x20, 0x2c, 0x1b, 0xea, 0xfe, 0x8c, + 0xee, 0x27, 0x07, 0x4c, 0x73, 0x2f, 0x12, 0x34, 0x4e, 0x90, 0x4f, 0x55, + 0xf5, 0x81, 0xca, 0xbc, +}; +static const struct drbg_kat_no_reseed kat1301_t = { + 10, kat1301_entropyin, kat1301_nonce, kat1301_persstr, + kat1301_addin0, kat1301_addin1, kat1301_retbits +}; +static const struct drbg_kat kat1301 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1301_t +}; + +static const unsigned char kat1302_entropyin[] = { + 0xea, 0xa3, 0xaa, 0x6a, 0x7e, 0x87, 0x2c, 0x85, 0xcf, 0x48, 0xf2, 0x90, + 0x94, 0x4c, 0x3e, 0x2c, 0x17, 0xf6, 0x76, 0xe6, 0xbf, 0x5c, 0x93, 0x5c, + 0xb9, 0x31, 0x7c, 0x97, 0xac, 0x29, 0x4e, 0x31, 0xad, 0xfb, 0x10, 0xbb, + 0xd2, 0x44, 0x36, 0x1e, 0xdc, 0xe9, 0x3c, 0x17, 0x31, 0x53, 0xcc, 0xf6, +}; +static const unsigned char kat1302_nonce[] = {0}; +static const unsigned char kat1302_persstr[] = { + 0x66, 0xed, 0x47, 0x05, 0x72, 0xd9, 0x15, 0xd8, 0x12, 0x01, 0xc3, 0xdf, + 0xec, 0x4d, 0x0b, 0x7d, 0xfe, 0xab, 0x8f, 0x8b, 0x7d, 0x63, 0x58, 0x43, + 0x02, 0x06, 0xbb, 0x03, 0xcb, 0x94, 0xd8, 0x5f, 0x27, 0xb0, 0x3e, 0xb5, + 0x7d, 0xe4, 0x6e, 0x75, 0x95, 0x23, 0xc4, 0x46, 0x96, 0x57, 0x20, 0x76, +}; +static const unsigned char kat1302_addin0[] = {0}; +static const unsigned char kat1302_addin1[] = {0}; +static const unsigned char kat1302_retbits[] = { + 0x12, 0xe8, 0xf9, 0xa3, 0x29, 0xb0, 0xaf, 0x70, 0x5c, 0x6c, 0x43, 0xf5, + 0xc4, 0x0a, 0x82, 0x33, 0x05, 0xed, 0x82, 0x77, 0x9d, 0x40, 0x76, 0x59, + 0x78, 0x2b, 0x47, 0x41, 0x62, 0x46, 0xd9, 0x62, 0x4c, 0xfd, 0xee, 0x72, + 0x03, 0x90, 0x33, 0xc0, 0xad, 0x56, 0x7a, 0xd0, 0xa8, 0x2c, 0xd1, 0x87, + 0x2c, 0xd4, 0x60, 0xc6, 0x8b, 0x5c, 0xdb, 0xaa, 0x43, 0x86, 0x15, 0xbf, + 0xd1, 0x3c, 0x97, 0x69, +}; +static const struct drbg_kat_no_reseed kat1302_t = { + 11, kat1302_entropyin, kat1302_nonce, kat1302_persstr, + kat1302_addin0, kat1302_addin1, kat1302_retbits +}; +static const struct drbg_kat kat1302 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1302_t +}; + +static const unsigned char kat1303_entropyin[] = { + 0xa2, 0x3e, 0xa0, 0xbf, 0x45, 0xc9, 0xad, 0x04, 0xbc, 0x95, 0x6d, 0xc6, + 0xb9, 0x9c, 0xae, 0x49, 0x43, 0xf2, 0x87, 0xe2, 0xc0, 0xff, 0x9f, 0xcc, + 0xb6, 0xf8, 0xbc, 0xf0, 0x95, 0x84, 0xe0, 0x68, 0x69, 0x74, 0x6b, 0x8b, + 0x02, 0x7a, 0x02, 0x7a, 0x2b, 0xfe, 0xf9, 0x75, 0x52, 0x2b, 0xc3, 0x7a, +}; +static const unsigned char kat1303_nonce[] = {0}; +static const unsigned char kat1303_persstr[] = { + 0xaf, 0x35, 0x59, 0x4b, 0xd4, 0x92, 0x60, 0xa3, 0xd3, 0xee, 0xcd, 0xef, + 0x26, 0x0d, 0x1f, 0x73, 0x26, 0x6c, 0xdf, 0x25, 0x6f, 0x11, 0x65, 0x9e, + 0x76, 0x49, 0xc3, 0x7d, 0x7f, 0xb2, 0xd7, 0xc6, 0xe5, 0x4c, 0xd4, 0xb5, + 0x21, 0x8f, 0x05, 0x4b, 0x63, 0xed, 0x28, 0x23, 0xab, 0x67, 0xa1, 0x80, +}; +static const unsigned char kat1303_addin0[] = {0}; +static const unsigned char kat1303_addin1[] = {0}; +static const unsigned char kat1303_retbits[] = { + 0xaa, 0x7f, 0x07, 0x0d, 0x79, 0x72, 0xcd, 0x15, 0x6e, 0xc9, 0xb3, 0xd1, + 0xdc, 0x37, 0xe1, 0xbd, 0x9c, 0x2b, 0x6d, 0x51, 0x2f, 0xa3, 0x18, 0xf2, + 0x2c, 0x42, 0xd5, 0x30, 0x92, 0xfd, 0x05, 0x36, 0x5b, 0x35, 0xe0, 0xd0, + 0x35, 0x41, 0xf9, 0x48, 0xc3, 0x2f, 0xc3, 0x10, 0x7e, 0x4f, 0x9e, 0xae, + 0xc3, 0x4f, 0xc2, 0xf4, 0xf9, 0xd7, 0x8a, 0x26, 0x37, 0xb2, 0xec, 0xf7, + 0xe2, 0xec, 0x10, 0xf2, +}; +static const struct drbg_kat_no_reseed kat1303_t = { + 12, kat1303_entropyin, kat1303_nonce, kat1303_persstr, + kat1303_addin0, kat1303_addin1, kat1303_retbits +}; +static const struct drbg_kat kat1303 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1303_t +}; + +static const unsigned char kat1304_entropyin[] = { + 0x39, 0x6d, 0x78, 0x8f, 0xbb, 0x82, 0x8c, 0x29, 0x64, 0x3b, 0xbf, 0x7e, + 0x42, 0x34, 0xd4, 0xb3, 0x43, 0xbc, 0x99, 0x77, 0xeb, 0xd0, 0xc0, 0x8d, + 0x17, 0x29, 0x6c, 0xad, 0x99, 0x58, 0x7a, 0x8d, 0x29, 0x90, 0x39, 0xb0, + 0x37, 0xbc, 0xc5, 0x1d, 0xcf, 0xaa, 0x14, 0x5d, 0x03, 0x4c, 0x6b, 0x51, +}; +static const unsigned char kat1304_nonce[] = {0}; +static const unsigned char kat1304_persstr[] = { + 0x90, 0x88, 0x2c, 0x27, 0x59, 0xf6, 0x10, 0xac, 0xaf, 0xc6, 0xbc, 0xe6, + 0xf9, 0x08, 0xcf, 0x31, 0x11, 0x73, 0x23, 0xc4, 0x38, 0x77, 0xa9, 0x31, + 0xfd, 0xe2, 0x7a, 0x25, 0xc1, 0xa9, 0x75, 0xff, 0xc4, 0x83, 0xc2, 0x4e, + 0x00, 0xe3, 0x8e, 0x7a, 0x20, 0xd1, 0xda, 0x24, 0xb9, 0x40, 0xc3, 0xb3, +}; +static const unsigned char kat1304_addin0[] = {0}; +static const unsigned char kat1304_addin1[] = {0}; +static const unsigned char kat1304_retbits[] = { + 0x67, 0x9d, 0x9a, 0xe0, 0xeb, 0x82, 0xa4, 0x0d, 0x29, 0x4b, 0x65, 0x80, + 0x6f, 0x1e, 0x2f, 0xdf, 0x2c, 0x5d, 0xf5, 0xc3, 0xe2, 0x0f, 0xbc, 0x06, + 0xcd, 0x16, 0xbb, 0xfb, 0x64, 0x77, 0xd1, 0x49, 0xf1, 0xe5, 0x91, 0xf8, + 0x92, 0x31, 0x81, 0x18, 0xdb, 0xac, 0x4f, 0x2d, 0x7e, 0x5d, 0x63, 0x54, + 0x97, 0x41, 0x13, 0xb2, 0xc2, 0x5f, 0x52, 0x80, 0xa0, 0x86, 0x28, 0x98, + 0xe2, 0xcd, 0x02, 0xe8, +}; +static const struct drbg_kat_no_reseed kat1304_t = { + 13, kat1304_entropyin, kat1304_nonce, kat1304_persstr, + kat1304_addin0, kat1304_addin1, kat1304_retbits +}; +static const struct drbg_kat kat1304 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1304_t +}; + +static const unsigned char kat1305_entropyin[] = { + 0x4e, 0x67, 0x68, 0xb6, 0x63, 0xb1, 0x83, 0x8f, 0xbd, 0x56, 0xc7, 0x8b, + 0x00, 0x2c, 0x08, 0xc2, 0x81, 0x21, 0x66, 0x22, 0x38, 0x45, 0x6e, 0xa9, + 0x3c, 0x4b, 0x28, 0x6f, 0x4a, 0x1d, 0x6a, 0xa2, 0xa1, 0xf5, 0xd2, 0xcf, + 0x8e, 0x59, 0xd4, 0x64, 0xed, 0x37, 0xa6, 0x22, 0x80, 0x01, 0xf7, 0xf8, +}; +static const unsigned char kat1305_nonce[] = {0}; +static const unsigned char kat1305_persstr[] = { + 0x47, 0xc2, 0x40, 0x38, 0x73, 0x2c, 0x32, 0xba, 0xf7, 0xe1, 0xe7, 0x1f, + 0xb0, 0xb7, 0x4b, 0x74, 0xec, 0x05, 0x5a, 0xdb, 0x88, 0xf8, 0xcf, 0x11, + 0x1f, 0xc2, 0x75, 0x98, 0xea, 0x74, 0x87, 0x2f, 0xde, 0x60, 0x82, 0x66, + 0xa8, 0xf4, 0x91, 0x05, 0x28, 0x2c, 0x2c, 0xa7, 0x09, 0x3a, 0xce, 0xa2, +}; +static const unsigned char kat1305_addin0[] = {0}; +static const unsigned char kat1305_addin1[] = {0}; +static const unsigned char kat1305_retbits[] = { + 0xb1, 0xce, 0x96, 0xd8, 0x6e, 0x77, 0xa2, 0x51, 0xc4, 0xff, 0xfe, 0x5d, + 0xe3, 0x1e, 0x91, 0x99, 0xa1, 0x9f, 0xa2, 0x42, 0xb0, 0x3b, 0x00, 0x5c, + 0xf0, 0xb6, 0xa2, 0x3e, 0xa3, 0xa0, 0xc5, 0xb8, 0x7e, 0xdc, 0xbc, 0x77, + 0xd0, 0x01, 0x9f, 0x24, 0xd8, 0xc0, 0x59, 0x4a, 0x4e, 0xdb, 0xa0, 0x54, + 0xb3, 0x2d, 0x2c, 0x9e, 0x5e, 0x2f, 0x08, 0x93, 0xc4, 0x24, 0xb1, 0x18, + 0x87, 0xb0, 0xbe, 0x48, +}; +static const struct drbg_kat_no_reseed kat1305_t = { + 14, kat1305_entropyin, kat1305_nonce, kat1305_persstr, + kat1305_addin0, kat1305_addin1, kat1305_retbits +}; +static const struct drbg_kat kat1305 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1305_t +}; + +static const unsigned char kat1306_entropyin[] = { + 0xb9, 0x12, 0x80, 0xba, 0xb6, 0x8e, 0x28, 0x27, 0xd9, 0xe1, 0x51, 0xa4, + 0x8e, 0x4b, 0x6a, 0x08, 0x12, 0xfe, 0x29, 0x7d, 0xcb, 0x40, 0xc5, 0xfb, + 0x91, 0x95, 0x6f, 0x32, 0x6c, 0xf9, 0x98, 0xf5, 0xe6, 0x14, 0x48, 0x86, + 0x70, 0x05, 0x41, 0xb0, 0xb6, 0xc2, 0x6a, 0xd7, 0xa7, 0xaa, 0xac, 0xae, +}; +static const unsigned char kat1306_nonce[] = {0}; +static const unsigned char kat1306_persstr[] = { + 0x24, 0x40, 0x41, 0xd6, 0x2b, 0x3a, 0xe7, 0x09, 0x71, 0x90, 0xe1, 0xe4, + 0x3a, 0x40, 0xcb, 0xbb, 0x2d, 0x10, 0x2b, 0xa2, 0x04, 0xbe, 0x6b, 0xa3, + 0x52, 0xe7, 0x87, 0xb1, 0xef, 0x50, 0x8c, 0xd1, 0x97, 0x48, 0x6b, 0x5e, + 0xa7, 0xcb, 0x17, 0xec, 0xb0, 0x00, 0xbd, 0xc9, 0x76, 0xb3, 0xe2, 0x0a, +}; +static const unsigned char kat1306_addin0[] = { + 0x01, 0x5f, 0x53, 0xd7, 0xb4, 0xe6, 0x41, 0x56, 0x46, 0x99, 0x44, 0x56, + 0x6a, 0x21, 0x95, 0x79, 0xd5, 0x4b, 0x49, 0x8d, 0x5e, 0x3f, 0xbe, 0x42, + 0x00, 0x1d, 0xdb, 0x13, 0x3e, 0x1a, 0x91, 0x37, 0xb8, 0x4f, 0x57, 0xde, + 0xa8, 0xb9, 0x15, 0xbc, 0x5f, 0xe4, 0xf6, 0x6e, 0x8e, 0x71, 0xb1, 0x3f, +}; +static const unsigned char kat1306_addin1[] = { + 0xed, 0x1f, 0x74, 0xc1, 0xdb, 0xbb, 0x5b, 0x30, 0x94, 0xfe, 0x5d, 0x01, + 0xf1, 0x05, 0xd4, 0x12, 0xd5, 0x7e, 0x5c, 0xd1, 0x7e, 0xeb, 0xcf, 0x5c, + 0xfc, 0x43, 0x79, 0x72, 0x0f, 0xdd, 0x26, 0x9c, 0xd9, 0x39, 0x47, 0xad, + 0x1e, 0xcd, 0xc8, 0xd8, 0x8a, 0x8d, 0x4d, 0x3e, 0xd3, 0x87, 0x13, 0x8e, +}; +static const unsigned char kat1306_retbits[] = { + 0x54, 0xbb, 0x9c, 0x7d, 0xf6, 0x5e, 0xd9, 0x5d, 0xff, 0xf1, 0x17, 0x8b, + 0xdf, 0x09, 0x8f, 0xca, 0x7b, 0x55, 0x59, 0xbf, 0xe8, 0xfe, 0x97, 0x6c, + 0x1c, 0x83, 0x86, 0x40, 0x93, 0x58, 0x3a, 0x1a, 0x18, 0x1e, 0xf5, 0x5a, + 0x0d, 0x31, 0x71, 0x11, 0x97, 0xb8, 0x23, 0x5f, 0x8f, 0x79, 0x9c, 0x3c, + 0x1e, 0xc4, 0xa0, 0x19, 0x4c, 0x72, 0x59, 0xf8, 0x0c, 0xa1, 0x50, 0x08, + 0x21, 0xd2, 0x95, 0x3f, +}; +static const struct drbg_kat_no_reseed kat1306_t = { + 0, kat1306_entropyin, kat1306_nonce, kat1306_persstr, + kat1306_addin0, kat1306_addin1, kat1306_retbits +}; +static const struct drbg_kat kat1306 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1306_t +}; + +static const unsigned char kat1307_entropyin[] = { + 0x5a, 0x04, 0x78, 0xe7, 0x86, 0xd9, 0x47, 0x25, 0x05, 0x19, 0x6a, 0x46, + 0xd2, 0xd8, 0xb9, 0x14, 0x4b, 0x71, 0xca, 0x6c, 0x4b, 0x9f, 0xff, 0xe1, + 0xc1, 0xea, 0x5f, 0xb7, 0x53, 0x3f, 0x72, 0x0d, 0x84, 0xc6, 0x72, 0xe6, + 0x51, 0x1d, 0x53, 0xdf, 0xd3, 0x7e, 0xee, 0x61, 0x14, 0xca, 0x41, 0x72, +}; +static const unsigned char kat1307_nonce[] = {0}; +static const unsigned char kat1307_persstr[] = { + 0xc3, 0x7d, 0x59, 0x5b, 0x7c, 0x28, 0x6a, 0xe5, 0x0e, 0xa5, 0x38, 0xb8, + 0xab, 0x5f, 0x6d, 0xe9, 0x14, 0x79, 0x88, 0x10, 0x3b, 0x24, 0xce, 0x94, + 0x61, 0x5e, 0x15, 0x30, 0x14, 0xaf, 0xbf, 0x9b, 0x5e, 0x02, 0x5c, 0xf8, + 0xec, 0x00, 0xf1, 0x30, 0x7d, 0xcc, 0xe0, 0x0c, 0x6e, 0xd9, 0x7d, 0x39, +}; +static const unsigned char kat1307_addin0[] = { + 0xbf, 0x19, 0xc0, 0xee, 0x9a, 0x8b, 0xe1, 0xa5, 0x0f, 0x71, 0xdc, 0x20, + 0x9e, 0x32, 0x7b, 0xb8, 0x82, 0xf2, 0xc4, 0x5e, 0xf1, 0xb7, 0xf9, 0xaf, + 0xde, 0xa9, 0x50, 0x27, 0x2d, 0x11, 0x22, 0x3f, 0x3e, 0xbf, 0xc7, 0x71, + 0x6d, 0xcf, 0x4c, 0xa2, 0x6d, 0x9a, 0xf8, 0x33, 0x38, 0xbb, 0x9f, 0x4e, +}; +static const unsigned char kat1307_addin1[] = { + 0x66, 0xf6, 0x68, 0xa0, 0xec, 0x07, 0x88, 0xe7, 0x72, 0x77, 0x93, 0x88, + 0x83, 0xd9, 0x46, 0xf8, 0x71, 0xc8, 0xfb, 0xfd, 0xc8, 0x25, 0x57, 0x99, + 0xb7, 0x34, 0x62, 0x1e, 0x92, 0xcd, 0xac, 0x2a, 0x20, 0x5b, 0xdc, 0x7d, + 0x9e, 0x18, 0x00, 0xe5, 0xda, 0x48, 0x31, 0xe1, 0xd9, 0x2d, 0x66, 0x7e, +}; +static const unsigned char kat1307_retbits[] = { + 0x63, 0xc9, 0x14, 0xb7, 0x31, 0x70, 0x6e, 0x6c, 0x61, 0xf8, 0x6d, 0x0b, + 0x69, 0x70, 0x3f, 0x48, 0x21, 0xe1, 0xe4, 0xe9, 0xf9, 0xa9, 0x78, 0x95, + 0x68, 0x18, 0xfe, 0x5f, 0x3b, 0x49, 0xa2, 0xa4, 0xe8, 0x17, 0x0a, 0xf0, + 0x83, 0x1d, 0x68, 0x67, 0x97, 0x6c, 0x03, 0xa7, 0xd9, 0xa8, 0xd8, 0xd0, + 0x5f, 0x12, 0x0e, 0x0c, 0x95, 0xa5, 0xbd, 0xa7, 0xd5, 0x05, 0xd8, 0x39, + 0x49, 0xdd, 0x1f, 0xa1, +}; +static const struct drbg_kat_no_reseed kat1307_t = { + 1, kat1307_entropyin, kat1307_nonce, kat1307_persstr, + kat1307_addin0, kat1307_addin1, kat1307_retbits +}; +static const struct drbg_kat kat1307 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1307_t +}; + +static const unsigned char kat1308_entropyin[] = { + 0x7c, 0x5d, 0x90, 0x70, 0x3b, 0x8a, 0xc7, 0x0f, 0x23, 0x73, 0x24, 0x9c, + 0xa7, 0x15, 0x41, 0x71, 0x7a, 0x31, 0xea, 0x32, 0xfc, 0x28, 0x0d, 0xd7, + 0x5b, 0x09, 0x01, 0x98, 0x1b, 0xe2, 0xa5, 0x53, 0xd9, 0x05, 0x32, 0x97, + 0xec, 0xbe, 0x86, 0xfd, 0x1c, 0x1c, 0x71, 0x4c, 0x52, 0x29, 0x9e, 0x52, +}; +static const unsigned char kat1308_nonce[] = {0}; +static const unsigned char kat1308_persstr[] = { + 0xdc, 0x07, 0x2f, 0x68, 0xfa, 0x77, 0x03, 0x23, 0x42, 0xb0, 0xf5, 0xa2, + 0xd9, 0xad, 0xa1, 0xd0, 0xad, 0xa2, 0x14, 0xb4, 0xd0, 0x8e, 0xfb, 0x39, + 0xdd, 0xc2, 0xac, 0xfb, 0x98, 0xdf, 0x7f, 0xce, 0x4c, 0x75, 0x56, 0x45, + 0xcd, 0x86, 0x93, 0x74, 0x90, 0x6e, 0xf6, 0x9e, 0x85, 0x7e, 0xfb, 0xc3, +}; +static const unsigned char kat1308_addin0[] = { + 0x52, 0x25, 0xc4, 0x2f, 0x03, 0xce, 0x29, 0x71, 0xc5, 0x0b, 0xc3, 0x4e, + 0xad, 0x8d, 0x6f, 0x17, 0x82, 0xe1, 0xf3, 0xfd, 0xfd, 0x9b, 0x94, 0x9a, + 0x1d, 0xac, 0xd0, 0xd4, 0x3f, 0x2b, 0xe3, 0xab, 0x7c, 0x3d, 0x3e, 0x5a, + 0x68, 0xbb, 0xa4, 0x74, 0x68, 0x1a, 0xc6, 0x27, 0xff, 0xe0, 0xc0, 0x6c, +}; +static const unsigned char kat1308_addin1[] = { + 0xdc, 0x91, 0xd7, 0xb7, 0xb9, 0x94, 0x79, 0x0f, 0x06, 0xc4, 0x70, 0x19, + 0x33, 0x25, 0x7c, 0x96, 0x01, 0xa0, 0x62, 0xb0, 0x50, 0xe6, 0xc0, 0x3a, + 0x56, 0x8f, 0xc5, 0x50, 0x48, 0xc6, 0xf4, 0x49, 0xe5, 0x70, 0x16, 0x2e, + 0xae, 0xf2, 0x99, 0xb4, 0x2d, 0x70, 0x18, 0x16, 0xcd, 0xe0, 0x24, 0xe4, +}; +static const unsigned char kat1308_retbits[] = { + 0xde, 0xf8, 0x91, 0x1b, 0xf1, 0xe1, 0xa9, 0x97, 0xd8, 0x61, 0x84, 0xe2, + 0xdb, 0x83, 0x3e, 0x60, 0x45, 0xcd, 0xc8, 0x66, 0x93, 0x28, 0xc8, 0x92, + 0xbc, 0x25, 0xae, 0xe8, 0xb0, 0xed, 0xed, 0x16, 0x3d, 0xa5, 0xf9, 0x0f, + 0xb3, 0x72, 0x08, 0x84, 0xac, 0x3c, 0x3b, 0xaa, 0x5f, 0xf9, 0x7d, 0x63, + 0x3e, 0xde, 0x59, 0x37, 0x0e, 0x40, 0x12, 0x2b, 0xbc, 0x6c, 0x96, 0x53, + 0x26, 0x32, 0xd0, 0xb8, +}; +static const struct drbg_kat_no_reseed kat1308_t = { + 2, kat1308_entropyin, kat1308_nonce, kat1308_persstr, + kat1308_addin0, kat1308_addin1, kat1308_retbits +}; +static const struct drbg_kat kat1308 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1308_t +}; + +static const unsigned char kat1309_entropyin[] = { + 0x44, 0x25, 0x96, 0xe3, 0x8d, 0x93, 0x07, 0x80, 0x70, 0x6a, 0x05, 0xf3, + 0x2c, 0x88, 0xde, 0x80, 0xa4, 0x74, 0x10, 0xfd, 0x36, 0x0f, 0x4d, 0x66, + 0x43, 0xde, 0x98, 0xcc, 0xf4, 0x58, 0x72, 0x4a, 0xe7, 0x72, 0xf8, 0x12, + 0x91, 0x2f, 0x51, 0xbd, 0xb4, 0xc2, 0x67, 0xc9, 0x44, 0x47, 0x1a, 0x4b, +}; +static const unsigned char kat1309_nonce[] = {0}; +static const unsigned char kat1309_persstr[] = { + 0x97, 0x4c, 0x8b, 0x9c, 0x77, 0x5c, 0x67, 0x3a, 0x21, 0x27, 0x26, 0x54, + 0xa6, 0x60, 0x48, 0x55, 0xe7, 0x77, 0x5a, 0x2a, 0x63, 0x25, 0x0e, 0x2b, + 0xbe, 0x12, 0xc3, 0x90, 0xa9, 0x9d, 0x3c, 0x51, 0xb2, 0x5a, 0xb5, 0x22, + 0xcb, 0x3f, 0x69, 0xa3, 0x63, 0x24, 0x6e, 0x12, 0x5d, 0x8c, 0xbf, 0xea, +}; +static const unsigned char kat1309_addin0[] = { + 0x48, 0xe7, 0xe4, 0x7b, 0x56, 0x92, 0x69, 0xef, 0x82, 0xcb, 0xa9, 0xa8, + 0x2c, 0x67, 0x3f, 0x0a, 0x36, 0x0d, 0xb8, 0x8b, 0x09, 0x47, 0x51, 0x66, + 0x95, 0x2e, 0xbd, 0x6f, 0xe6, 0x56, 0x2b, 0x2e, 0xf1, 0x0e, 0xc4, 0x66, + 0x4d, 0x74, 0xa9, 0xdf, 0xf4, 0x07, 0x16, 0x29, 0xc0, 0x77, 0xd2, 0xab, +}; +static const unsigned char kat1309_addin1[] = { + 0x09, 0x49, 0xbc, 0x89, 0x2c, 0x06, 0xcc, 0xe1, 0x13, 0x60, 0x94, 0xfb, + 0xbc, 0x3c, 0x55, 0x46, 0x24, 0x56, 0x67, 0xf0, 0xdc, 0x5b, 0xf6, 0x06, + 0xcb, 0x6c, 0x20, 0xdb, 0x6c, 0xa3, 0xd3, 0xd6, 0xfb, 0xa8, 0xe0, 0xd0, + 0x99, 0x62, 0x68, 0x06, 0x6a, 0xcb, 0xd9, 0x09, 0x6c, 0xc9, 0xbe, 0x49, +}; +static const unsigned char kat1309_retbits[] = { + 0x8e, 0x0e, 0x4d, 0xf0, 0xa1, 0x9e, 0x60, 0xe8, 0xfa, 0xcb, 0xaa, 0x8f, + 0x95, 0xbf, 0x03, 0xc0, 0x89, 0x0b, 0xf8, 0xf4, 0x21, 0xdc, 0x6f, 0x0a, + 0xe8, 0x7b, 0x2e, 0x08, 0xd4, 0x51, 0x61, 0x43, 0xe2, 0xa6, 0xa0, 0xa5, + 0xa6, 0x80, 0x0d, 0xe7, 0x89, 0x04, 0xe9, 0x57, 0xe7, 0xc2, 0xe9, 0xe0, + 0x7d, 0x57, 0xf0, 0xbb, 0x1b, 0x0c, 0x68, 0x54, 0x0e, 0xd7, 0xd6, 0x64, + 0xa7, 0x1e, 0x8b, 0x94, +}; +static const struct drbg_kat_no_reseed kat1309_t = { + 3, kat1309_entropyin, kat1309_nonce, kat1309_persstr, + kat1309_addin0, kat1309_addin1, kat1309_retbits +}; +static const struct drbg_kat kat1309 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1309_t +}; + +static const unsigned char kat1310_entropyin[] = { + 0x7f, 0x85, 0x1c, 0x0c, 0x00, 0xe7, 0x66, 0x13, 0xc6, 0x7f, 0xa4, 0x67, + 0x18, 0x37, 0x7e, 0xc6, 0x52, 0xf5, 0x60, 0xd3, 0x8a, 0xb5, 0xa7, 0x62, + 0x93, 0xa4, 0x17, 0x8e, 0x24, 0x45, 0x28, 0x93, 0x62, 0x3c, 0xe4, 0xc4, + 0x23, 0xef, 0x44, 0x3c, 0xe9, 0xf8, 0xee, 0xa9, 0x37, 0x9e, 0xe1, 0x07, +}; +static const unsigned char kat1310_nonce[] = {0}; +static const unsigned char kat1310_persstr[] = { + 0xf3, 0x7c, 0xd0, 0x91, 0x36, 0xc1, 0xcf, 0x3d, 0x21, 0x62, 0xe3, 0x84, + 0x67, 0x3e, 0x54, 0x66, 0x34, 0xa9, 0xb8, 0xdc, 0x93, 0x28, 0x8f, 0xea, + 0xb9, 0x7b, 0x3a, 0x63, 0x34, 0xc9, 0xd3, 0xba, 0x25, 0x6c, 0x9f, 0xcc, + 0xd9, 0x10, 0xbb, 0x4c, 0x71, 0x28, 0x64, 0x51, 0x97, 0x7b, 0x5d, 0x0f, +}; +static const unsigned char kat1310_addin0[] = { + 0x45, 0x7a, 0x05, 0x94, 0xc3, 0x08, 0xc4, 0x3c, 0x24, 0x96, 0x3e, 0x02, + 0x96, 0xac, 0x71, 0x82, 0x8b, 0x37, 0x32, 0x2c, 0x1e, 0x5e, 0xa1, 0x7b, + 0xa8, 0xc4, 0xa3, 0x9c, 0xdb, 0xf4, 0x92, 0x1e, 0xfb, 0x12, 0x40, 0x7c, + 0x90, 0x7a, 0xca, 0x9d, 0x2b, 0xbb, 0xb2, 0x96, 0x09, 0xc3, 0xbe, 0x6a, +}; +static const unsigned char kat1310_addin1[] = { + 0xa5, 0x3c, 0x52, 0x22, 0x19, 0x20, 0x19, 0x52, 0x48, 0x65, 0xd6, 0x52, + 0x2b, 0xef, 0xb0, 0x4d, 0x68, 0xaf, 0xe9, 0xf9, 0x50, 0xfd, 0xa1, 0xdf, + 0x9a, 0xee, 0xe5, 0x59, 0xd7, 0x29, 0x36, 0x65, 0x8b, 0xc6, 0x6e, 0x2f, + 0x61, 0xee, 0x30, 0x93, 0xea, 0x4b, 0xb1, 0x47, 0xa0, 0x7a, 0xcf, 0x39, +}; +static const unsigned char kat1310_retbits[] = { + 0x3b, 0x1b, 0x02, 0x8c, 0x2d, 0x85, 0x4f, 0x28, 0xd3, 0x50, 0xdc, 0xea, + 0xbc, 0x3b, 0x7d, 0xbe, 0xc4, 0xfb, 0x52, 0xbe, 0xd9, 0x42, 0x12, 0xb9, + 0x79, 0x6c, 0x4a, 0x30, 0x85, 0x7c, 0xf7, 0x65, 0xfa, 0x46, 0x95, 0x41, + 0xa9, 0xbc, 0x22, 0x33, 0xb3, 0xc6, 0xfd, 0x14, 0x32, 0xcd, 0xe6, 0x5c, + 0xb5, 0x78, 0x51, 0x49, 0x4d, 0xc4, 0xf5, 0x30, 0xa6, 0x85, 0xc6, 0x86, + 0x04, 0x79, 0xf7, 0xc4, +}; +static const struct drbg_kat_no_reseed kat1310_t = { + 4, kat1310_entropyin, kat1310_nonce, kat1310_persstr, + kat1310_addin0, kat1310_addin1, kat1310_retbits +}; +static const struct drbg_kat kat1310 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1310_t +}; + +static const unsigned char kat1311_entropyin[] = { + 0x94, 0xbe, 0xe5, 0x99, 0x32, 0x9c, 0x14, 0x16, 0xfd, 0x2b, 0x50, 0xc0, + 0xfe, 0x40, 0x3f, 0x0e, 0x55, 0xdd, 0xd7, 0x44, 0xe4, 0xe8, 0xf5, 0xee, + 0x5f, 0x3e, 0xba, 0x8e, 0x8b, 0xcf, 0xec, 0x31, 0xe6, 0xf3, 0xa2, 0x54, + 0xaa, 0x67, 0x3b, 0xd6, 0xf4, 0x6b, 0xc2, 0x41, 0x85, 0x04, 0x33, 0xcc, +}; +static const unsigned char kat1311_nonce[] = {0}; +static const unsigned char kat1311_persstr[] = { + 0x3e, 0xb2, 0x03, 0x41, 0x58, 0x1c, 0xf8, 0x8a, 0x3d, 0x77, 0xea, 0x84, + 0x7d, 0xfa, 0x0f, 0x04, 0xc0, 0x7b, 0xf2, 0xbc, 0x09, 0x75, 0x50, 0x40, + 0x92, 0x3e, 0xf2, 0x38, 0xe8, 0x3c, 0x6f, 0x7f, 0x28, 0xa7, 0x5b, 0xbd, + 0x87, 0x5e, 0xc4, 0x59, 0x8d, 0x9b, 0x2d, 0x17, 0x8b, 0x7d, 0xfd, 0x90, +}; +static const unsigned char kat1311_addin0[] = { + 0xd6, 0x6e, 0xe5, 0x77, 0xd5, 0x0d, 0x6f, 0x46, 0xe7, 0x7c, 0x2c, 0x5d, + 0xf2, 0x86, 0x41, 0x28, 0xe5, 0x1e, 0xa4, 0xc4, 0x6a, 0xcc, 0xb7, 0xa4, + 0x71, 0xce, 0xf7, 0x5e, 0x88, 0xff, 0xb9, 0x60, 0x8d, 0x8c, 0xe1, 0x49, + 0x6a, 0xb8, 0xf1, 0x82, 0x09, 0x79, 0x1d, 0x70, 0xeb, 0x6c, 0x39, 0xac, +}; +static const unsigned char kat1311_addin1[] = { + 0xd2, 0x3e, 0x7b, 0x37, 0x40, 0x1d, 0xd3, 0x21, 0x43, 0xf1, 0xe5, 0x5b, + 0x41, 0x92, 0xef, 0x24, 0xdf, 0x81, 0x16, 0x83, 0xa3, 0x04, 0x38, 0xe7, + 0xa3, 0x42, 0xbe, 0x7b, 0x0e, 0x01, 0x4c, 0x6b, 0xd9, 0x98, 0xbd, 0x19, + 0xfa, 0xb2, 0xbf, 0x23, 0x1f, 0x60, 0x33, 0x1c, 0x3f, 0xe3, 0xbe, 0x09, +}; +static const unsigned char kat1311_retbits[] = { + 0x62, 0x2f, 0x4f, 0x90, 0x77, 0x00, 0x71, 0xb0, 0x84, 0x4d, 0xf8, 0x9b, + 0x53, 0xcf, 0xc7, 0x4c, 0xec, 0xb8, 0xe8, 0x95, 0x55, 0x7d, 0xbd, 0x7f, + 0x57, 0x7a, 0x9a, 0xef, 0x51, 0xdd, 0xba, 0x11, 0x5f, 0x7d, 0x11, 0x6a, + 0xec, 0x0e, 0x2e, 0xa1, 0xc9, 0x75, 0xea, 0x87, 0x10, 0xb5, 0xd2, 0x68, + 0x8f, 0xd7, 0x59, 0x00, 0x31, 0xa0, 0xfe, 0x82, 0xab, 0x37, 0xf8, 0x31, + 0x4c, 0x0a, 0xfb, 0x12, +}; +static const struct drbg_kat_no_reseed kat1311_t = { + 5, kat1311_entropyin, kat1311_nonce, kat1311_persstr, + kat1311_addin0, kat1311_addin1, kat1311_retbits +}; +static const struct drbg_kat kat1311 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1311_t +}; + +static const unsigned char kat1312_entropyin[] = { + 0xb7, 0xaa, 0x7a, 0x99, 0xab, 0x1d, 0x6b, 0x2d, 0x95, 0xd2, 0xe3, 0xc3, + 0xe8, 0x09, 0xaf, 0x25, 0xad, 0xd1, 0x10, 0x27, 0x0d, 0xd3, 0x28, 0x71, + 0x31, 0x73, 0xae, 0xd7, 0x09, 0xad, 0x23, 0x6c, 0x8e, 0x5e, 0xca, 0x47, + 0x7f, 0xe5, 0x38, 0x0a, 0x1d, 0xee, 0x60, 0x93, 0x71, 0x4d, 0xf5, 0x6d, +}; +static const unsigned char kat1312_nonce[] = {0}; +static const unsigned char kat1312_persstr[] = { + 0x0a, 0xc4, 0xda, 0xbf, 0xeb, 0xa7, 0xd6, 0xd7, 0x86, 0x86, 0xe0, 0x85, + 0x06, 0x7e, 0x35, 0x49, 0x5f, 0x83, 0x60, 0x0a, 0x9c, 0xe3, 0x13, 0x9b, + 0xac, 0x52, 0x19, 0x75, 0xe6, 0x1b, 0x04, 0x2e, 0xa4, 0x72, 0x28, 0x60, + 0x22, 0x8d, 0x14, 0xb5, 0x7e, 0xca, 0xf2, 0x31, 0x8e, 0xa9, 0x5c, 0xc8, +}; +static const unsigned char kat1312_addin0[] = { + 0x84, 0xad, 0x42, 0x6f, 0xe4, 0x27, 0x33, 0x5f, 0xd6, 0x9f, 0x39, 0x7b, + 0xb9, 0xb6, 0xb0, 0x57, 0xda, 0x85, 0x73, 0x19, 0xc4, 0xfb, 0xa9, 0x40, + 0x38, 0x80, 0x9f, 0x95, 0xcf, 0x1c, 0x72, 0x09, 0x5e, 0xbf, 0x85, 0x34, + 0x68, 0xdc, 0xc2, 0x4d, 0xa4, 0xad, 0xa9, 0xa7, 0x37, 0x60, 0xa6, 0x6c, +}; +static const unsigned char kat1312_addin1[] = { + 0x4b, 0x2e, 0x5a, 0xd8, 0x71, 0x14, 0x37, 0xd2, 0x24, 0x13, 0xce, 0xa1, + 0x66, 0x5c, 0x66, 0xb8, 0x27, 0xbb, 0x7b, 0xe5, 0xcc, 0x4d, 0x3a, 0x92, + 0xc7, 0x6a, 0x29, 0xb6, 0xd1, 0x11, 0xc3, 0xed, 0x7d, 0x22, 0x07, 0x39, + 0x9e, 0x51, 0x48, 0x92, 0x5f, 0x49, 0x3d, 0xfb, 0x39, 0x8f, 0x63, 0xb0, +}; +static const unsigned char kat1312_retbits[] = { + 0x3c, 0x5e, 0x1a, 0x29, 0x93, 0x13, 0xc7, 0xfa, 0x5c, 0xe4, 0x1f, 0xd7, + 0x76, 0x21, 0xe8, 0xd4, 0x97, 0x8b, 0x08, 0x54, 0x4b, 0x0d, 0x45, 0xbb, + 0xd5, 0x9b, 0x5c, 0xd9, 0xc2, 0x60, 0xcf, 0x55, 0xe0, 0x8c, 0x1c, 0x8a, + 0x96, 0xc6, 0xa8, 0xb3, 0x03, 0xf7, 0xf1, 0x74, 0x1d, 0x06, 0x28, 0x05, + 0x84, 0xd6, 0x67, 0x17, 0x97, 0x17, 0x9e, 0x32, 0xbd, 0xb4, 0x5d, 0x28, + 0xa6, 0x56, 0x1e, 0xdf, +}; +static const struct drbg_kat_no_reseed kat1312_t = { + 6, kat1312_entropyin, kat1312_nonce, kat1312_persstr, + kat1312_addin0, kat1312_addin1, kat1312_retbits +}; +static const struct drbg_kat kat1312 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1312_t +}; + +static const unsigned char kat1313_entropyin[] = { + 0x3b, 0x03, 0xba, 0x5b, 0x25, 0xa6, 0x8f, 0x5b, 0x29, 0x84, 0xdd, 0x93, + 0xd0, 0xba, 0x69, 0xa9, 0x0c, 0xac, 0x54, 0x1c, 0x54, 0xe1, 0x7c, 0x5b, + 0x6d, 0x45, 0xeb, 0x7f, 0x19, 0x43, 0x95, 0x21, 0xe1, 0x72, 0x43, 0xbb, + 0x81, 0xb2, 0x68, 0xf9, 0x4f, 0x8c, 0x2e, 0xd8, 0x6b, 0x02, 0x3e, 0x5c, +}; +static const unsigned char kat1313_nonce[] = {0}; +static const unsigned char kat1313_persstr[] = { + 0x0b, 0x92, 0x99, 0x39, 0x9d, 0xb9, 0xc1, 0xbb, 0x05, 0x05, 0x11, 0x25, + 0xee, 0x2d, 0x1c, 0xbb, 0xaa, 0x44, 0x7b, 0xce, 0x70, 0x5a, 0xc1, 0x40, + 0x11, 0xb7, 0x55, 0xd5, 0x5b, 0xb2, 0xa5, 0x21, 0x35, 0xc1, 0xd6, 0x3c, + 0x49, 0x7f, 0x80, 0x77, 0x74, 0xbc, 0xc1, 0x98, 0x33, 0x54, 0xbd, 0x75, +}; +static const unsigned char kat1313_addin0[] = { + 0x4e, 0x41, 0x8c, 0x85, 0xda, 0x70, 0xd1, 0xb7, 0x23, 0x1b, 0xfb, 0x52, + 0x7d, 0xf0, 0x1e, 0xae, 0x33, 0xbd, 0xce, 0xa3, 0x9a, 0x28, 0x0b, 0x72, + 0x93, 0xdc, 0x89, 0x94, 0x22, 0xa5, 0x49, 0x7a, 0xc0, 0x76, 0x5b, 0xf4, + 0x32, 0x34, 0xac, 0xf5, 0xc7, 0x74, 0xec, 0x36, 0x64, 0xc5, 0x6c, 0x9d, +}; +static const unsigned char kat1313_addin1[] = { + 0xa4, 0x18, 0xa9, 0x0d, 0xd6, 0x98, 0x5c, 0x6e, 0x64, 0x48, 0x95, 0x89, + 0x9d, 0x44, 0x34, 0x45, 0xec, 0xa3, 0x5a, 0x7e, 0x26, 0xc7, 0x91, 0x9f, + 0x36, 0x12, 0x93, 0x85, 0xa3, 0xf1, 0x5a, 0xe2, 0x1e, 0x4d, 0xa6, 0x0b, + 0x2d, 0xdb, 0xb7, 0xe1, 0x10, 0x6f, 0x81, 0x0c, 0xf8, 0x54, 0x3c, 0xdd, +}; +static const unsigned char kat1313_retbits[] = { + 0x3c, 0xe6, 0xe5, 0x2a, 0x12, 0xda, 0x13, 0x8a, 0x09, 0x64, 0xa5, 0xff, + 0xa3, 0xf7, 0x43, 0x46, 0x35, 0xea, 0x12, 0x48, 0xfc, 0x68, 0x23, 0xc6, + 0xe8, 0xec, 0x73, 0x84, 0x74, 0xbd, 0x32, 0x02, 0xf0, 0x9f, 0xee, 0x91, + 0x7d, 0xfd, 0xcc, 0x90, 0xc1, 0x28, 0x23, 0x38, 0x8d, 0x17, 0x3b, 0xcf, + 0x04, 0xfb, 0x5a, 0xf3, 0x33, 0xed, 0x2c, 0x88, 0xc7, 0x4a, 0x54, 0x09, + 0xa1, 0x60, 0x91, 0x0b, +}; +static const struct drbg_kat_no_reseed kat1313_t = { + 7, kat1313_entropyin, kat1313_nonce, kat1313_persstr, + kat1313_addin0, kat1313_addin1, kat1313_retbits +}; +static const struct drbg_kat kat1313 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1313_t +}; + +static const unsigned char kat1314_entropyin[] = { + 0xf2, 0x45, 0x79, 0xcb, 0x1b, 0xcc, 0xf3, 0xc1, 0x1c, 0x02, 0x9d, 0xb2, + 0x81, 0xa5, 0x53, 0x37, 0xaf, 0x7c, 0xea, 0x6e, 0xbd, 0x60, 0x6a, 0x74, + 0x57, 0x37, 0x40, 0x51, 0x9f, 0x44, 0x5d, 0xaf, 0x8c, 0x6c, 0x9f, 0x2a, + 0xce, 0xba, 0x6f, 0xbb, 0xe8, 0xbb, 0xd7, 0x20, 0x73, 0x69, 0x3a, 0x87, +}; +static const unsigned char kat1314_nonce[] = {0}; +static const unsigned char kat1314_persstr[] = { + 0xf3, 0x80, 0x1e, 0x0e, 0xc8, 0x44, 0xca, 0xb0, 0xaa, 0x38, 0xb5, 0x7c, + 0xac, 0x9f, 0x64, 0xad, 0x86, 0xc1, 0x48, 0x5e, 0x24, 0x92, 0xb8, 0xd9, + 0x96, 0x36, 0x18, 0x6b, 0x26, 0x1e, 0xf4, 0x7f, 0x5e, 0xd6, 0x7a, 0x0c, + 0xff, 0xb2, 0xe3, 0x9b, 0x2e, 0x93, 0x4f, 0x77, 0x42, 0x42, 0xab, 0x48, +}; +static const unsigned char kat1314_addin0[] = { + 0xec, 0xd8, 0xf1, 0xf9, 0x7e, 0xf7, 0x42, 0xdd, 0xca, 0x7d, 0x35, 0xb0, + 0x7f, 0xc0, 0xb4, 0x2e, 0xc4, 0x55, 0x08, 0x79, 0x98, 0x7b, 0xdf, 0xb3, + 0x00, 0x36, 0x60, 0x93, 0xcb, 0x25, 0x8d, 0x6e, 0xde, 0x44, 0x31, 0x66, + 0x95, 0xd7, 0xc3, 0x5b, 0x71, 0x08, 0x00, 0x36, 0xcc, 0x3a, 0x54, 0x96, +}; +static const unsigned char kat1314_addin1[] = { + 0x9f, 0x97, 0xe2, 0xe5, 0xd7, 0x3c, 0x71, 0x42, 0xbb, 0x85, 0x28, 0xd3, + 0x64, 0xd0, 0x55, 0x6b, 0x0b, 0x9c, 0x19, 0xbc, 0xaa, 0x92, 0x78, 0x40, + 0x3c, 0x22, 0xf1, 0xda, 0x5f, 0x31, 0xfe, 0x02, 0xfb, 0x53, 0xbf, 0xb6, + 0xe4, 0xf2, 0xe9, 0x25, 0x72, 0x9a, 0xef, 0xcd, 0x1a, 0x66, 0x7c, 0x42, +}; +static const unsigned char kat1314_retbits[] = { + 0x18, 0x19, 0xec, 0x28, 0x98, 0xf4, 0x2f, 0x08, 0xe3, 0x78, 0x0a, 0xfe, + 0x3a, 0xa4, 0x2e, 0xc4, 0x03, 0xf5, 0x02, 0x72, 0x98, 0x89, 0x98, 0x46, + 0x55, 0x8e, 0xda, 0xd2, 0xde, 0x69, 0x00, 0x6f, 0xe8, 0xf8, 0xc1, 0x22, + 0x29, 0xc4, 0xaf, 0xf8, 0xb0, 0x6a, 0x0f, 0xbe, 0xbc, 0xfd, 0x2c, 0x4b, + 0x17, 0x48, 0x35, 0xc0, 0xc3, 0xdf, 0x1c, 0x69, 0x82, 0xdb, 0x20, 0x3a, + 0xe4, 0x6c, 0x5c, 0x06, +}; +static const struct drbg_kat_no_reseed kat1314_t = { + 8, kat1314_entropyin, kat1314_nonce, kat1314_persstr, + kat1314_addin0, kat1314_addin1, kat1314_retbits +}; +static const struct drbg_kat kat1314 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1314_t +}; + +static const unsigned char kat1315_entropyin[] = { + 0x3c, 0x45, 0xf9, 0x35, 0x19, 0x80, 0xda, 0xf3, 0x81, 0xe2, 0x5e, 0x59, + 0xff, 0x23, 0xda, 0xf5, 0x4d, 0x69, 0xa0, 0x65, 0x05, 0xbb, 0x1e, 0xca, + 0x6c, 0x98, 0xa7, 0x42, 0xdb, 0x28, 0xfd, 0xf4, 0x62, 0x22, 0x2d, 0x22, + 0xf3, 0xc9, 0x1a, 0x59, 0xb5, 0x31, 0x16, 0xc7, 0xd1, 0x73, 0x62, 0xdb, +}; +static const unsigned char kat1315_nonce[] = {0}; +static const unsigned char kat1315_persstr[] = { + 0x83, 0x16, 0xc2, 0x44, 0xc5, 0x07, 0x4d, 0x09, 0x50, 0xd0, 0x33, 0x20, + 0x42, 0x78, 0x58, 0xaa, 0xe9, 0xe8, 0xd9, 0xe8, 0xff, 0x56, 0x46, 0x9e, + 0x1b, 0xee, 0xf1, 0x4a, 0x99, 0xab, 0xad, 0x23, 0xd8, 0xfa, 0xb5, 0x50, + 0xcd, 0xee, 0x28, 0x76, 0x8f, 0x02, 0x33, 0x31, 0xd5, 0x7e, 0x77, 0xc6, +}; +static const unsigned char kat1315_addin0[] = { + 0x19, 0xc3, 0xdd, 0x60, 0x33, 0xf1, 0x09, 0x57, 0xf8, 0x25, 0x72, 0x31, + 0x06, 0xf2, 0xa8, 0x94, 0x7a, 0xed, 0x22, 0xd9, 0x6b, 0xa4, 0xc1, 0xda, + 0x2e, 0x0a, 0x86, 0x2e, 0xab, 0x5f, 0x6e, 0x2f, 0x33, 0x76, 0xbb, 0xe2, + 0x52, 0x00, 0xcc, 0x17, 0x09, 0x5f, 0x61, 0x4b, 0x26, 0x4c, 0xc8, 0x7f, +}; +static const unsigned char kat1315_addin1[] = { + 0x5a, 0xba, 0x98, 0x9d, 0x2e, 0x8c, 0xb2, 0x8d, 0x96, 0x34, 0x87, 0x16, + 0x8f, 0x31, 0x91, 0x64, 0x73, 0x31, 0x5f, 0x28, 0x1b, 0x40, 0x14, 0x0f, + 0x73, 0x8a, 0x55, 0xed, 0x4d, 0x49, 0x9d, 0x2e, 0x3d, 0xf2, 0x61, 0x95, + 0xa6, 0x13, 0x9d, 0x70, 0xf8, 0xdf, 0x91, 0x8a, 0x1e, 0xc3, 0x37, 0xc6, +}; +static const unsigned char kat1315_retbits[] = { + 0xe9, 0x62, 0x06, 0x70, 0xe9, 0x71, 0xf5, 0xc9, 0xec, 0x68, 0x3c, 0x2c, + 0xaf, 0xc9, 0xa5, 0x51, 0xe5, 0xe9, 0x80, 0x6e, 0x5b, 0xd3, 0x20, 0x1f, + 0x3a, 0x1d, 0x62, 0xc7, 0xf2, 0xfa, 0x95, 0x33, 0x3b, 0x02, 0x6f, 0x01, + 0x5b, 0xc9, 0x75, 0x59, 0x45, 0x04, 0x86, 0xae, 0x2c, 0x61, 0x67, 0x7f, + 0xd3, 0x10, 0xd2, 0x42, 0xfd, 0x04, 0xdb, 0x51, 0xda, 0x14, 0x2f, 0xd9, + 0x0f, 0xba, 0x8f, 0x27, +}; +static const struct drbg_kat_no_reseed kat1315_t = { + 9, kat1315_entropyin, kat1315_nonce, kat1315_persstr, + kat1315_addin0, kat1315_addin1, kat1315_retbits +}; +static const struct drbg_kat kat1315 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1315_t +}; + +static const unsigned char kat1316_entropyin[] = { + 0x0e, 0x31, 0x4c, 0xa8, 0x55, 0x5e, 0xc7, 0xcb, 0x98, 0x14, 0xa4, 0x51, + 0x9b, 0xbb, 0xa9, 0x58, 0xe4, 0xd1, 0xa7, 0xe0, 0xe8, 0xee, 0x60, 0xe6, + 0x97, 0x74, 0x16, 0xf0, 0x8e, 0x98, 0xdc, 0x05, 0xcc, 0x96, 0xde, 0xda, + 0x28, 0x3d, 0xd6, 0x89, 0x1c, 0x9a, 0x91, 0x0f, 0x15, 0x15, 0x53, 0x2d, +}; +static const unsigned char kat1316_nonce[] = {0}; +static const unsigned char kat1316_persstr[] = { + 0x35, 0xee, 0xf7, 0x00, 0xcd, 0xc6, 0x46, 0x83, 0x49, 0xbb, 0x0e, 0xdd, + 0x62, 0xa3, 0xeb, 0x82, 0x49, 0xcc, 0x06, 0x72, 0x60, 0x26, 0x1c, 0x4d, + 0x06, 0x3a, 0xff, 0xeb, 0xe6, 0x39, 0x45, 0xb4, 0xa0, 0xf1, 0xc1, 0x0e, + 0x0f, 0x17, 0x8d, 0x6c, 0xea, 0xbb, 0xe7, 0xf1, 0x5c, 0x5d, 0xa4, 0x60, +}; +static const unsigned char kat1316_addin0[] = { + 0xcd, 0x68, 0xd3, 0x1a, 0x3d, 0xae, 0x76, 0xbf, 0xbc, 0xa8, 0x1d, 0xc2, + 0xed, 0xd5, 0xab, 0xbd, 0x99, 0x76, 0xd5, 0x51, 0x61, 0xe6, 0x0a, 0xd4, + 0x8f, 0xf0, 0x69, 0x37, 0x9f, 0x60, 0x0c, 0x17, 0x18, 0xec, 0xeb, 0xf8, + 0x4c, 0x16, 0x92, 0x34, 0x11, 0x3d, 0x38, 0x3c, 0x7c, 0x43, 0xe5, 0xbb, +}; +static const unsigned char kat1316_addin1[] = { + 0xab, 0x3c, 0x67, 0x6e, 0xd3, 0x4c, 0x83, 0x64, 0xfa, 0xc5, 0xe4, 0xf7, + 0x3c, 0x64, 0xb7, 0x8d, 0xc8, 0x70, 0x06, 0xca, 0x0a, 0x15, 0x99, 0x3d, + 0x9b, 0xce, 0xf2, 0x3c, 0x76, 0x71, 0xd7, 0x39, 0x6b, 0x04, 0xa5, 0xb6, + 0xb6, 0x65, 0x99, 0x95, 0xf8, 0x9e, 0xaa, 0x02, 0xb9, 0x64, 0xb9, 0x80, +}; +static const unsigned char kat1316_retbits[] = { + 0x5c, 0xf6, 0x98, 0x63, 0x83, 0xdc, 0xd9, 0x7d, 0xbf, 0xbb, 0x2d, 0x06, + 0x66, 0xb4, 0xe5, 0x7b, 0x51, 0x6e, 0x77, 0x37, 0x77, 0xa7, 0x3b, 0x0f, + 0xc6, 0xaa, 0x4f, 0x75, 0x0d, 0x8e, 0x62, 0x21, 0x77, 0x26, 0x68, 0xd9, + 0xe5, 0x8c, 0x4d, 0x4b, 0x63, 0x35, 0xc0, 0xab, 0xca, 0xb0, 0xe6, 0xa5, + 0x02, 0x91, 0xf0, 0x60, 0x10, 0x89, 0x33, 0xc3, 0x38, 0x0c, 0xa2, 0x79, + 0x07, 0xfc, 0xb2, 0x32, +}; +static const struct drbg_kat_no_reseed kat1316_t = { + 10, kat1316_entropyin, kat1316_nonce, kat1316_persstr, + kat1316_addin0, kat1316_addin1, kat1316_retbits +}; +static const struct drbg_kat kat1316 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1316_t +}; + +static const unsigned char kat1317_entropyin[] = { + 0x7d, 0xd7, 0xd6, 0x93, 0xa2, 0xb6, 0x6c, 0xe2, 0x52, 0x89, 0xa7, 0xb4, + 0xce, 0x5f, 0x89, 0x70, 0xc4, 0x62, 0x79, 0xfb, 0x97, 0x3c, 0x48, 0xd0, + 0x11, 0x98, 0x89, 0x57, 0x90, 0x15, 0x08, 0xd7, 0x23, 0x5e, 0xca, 0x41, + 0xc5, 0x80, 0xf9, 0xac, 0xa0, 0x0e, 0xa1, 0x7e, 0xae, 0x48, 0x0c, 0x4e, +}; +static const unsigned char kat1317_nonce[] = {0}; +static const unsigned char kat1317_persstr[] = { + 0xc0, 0x0a, 0xf4, 0xb3, 0x71, 0xb7, 0xee, 0xb3, 0x96, 0xa3, 0x75, 0xb6, + 0x2d, 0x52, 0x49, 0xf6, 0xd0, 0x14, 0xfe, 0x2b, 0x6b, 0xdd, 0xcb, 0x6d, + 0x10, 0x06, 0xee, 0xa1, 0xc9, 0x50, 0xa0, 0x2e, 0x72, 0x63, 0xe3, 0xfc, + 0x5c, 0x1f, 0x92, 0x97, 0x02, 0x04, 0xfd, 0x15, 0x24, 0x82, 0xb0, 0x64, +}; +static const unsigned char kat1317_addin0[] = { + 0xf0, 0x78, 0x6d, 0x58, 0xce, 0x09, 0xc3, 0x35, 0xfe, 0xb0, 0xd1, 0xf5, + 0x20, 0x15, 0xc3, 0x51, 0x94, 0x3d, 0x64, 0xad, 0x20, 0xf3, 0xb9, 0xe2, + 0xb5, 0x0b, 0xfc, 0x82, 0xc3, 0x92, 0x0a, 0x9c, 0x7e, 0x04, 0xcd, 0x50, + 0xb3, 0xf3, 0xb3, 0xcf, 0x18, 0xea, 0x9d, 0x9e, 0xf5, 0x56, 0x81, 0xdf, +}; +static const unsigned char kat1317_addin1[] = { + 0xea, 0x80, 0x97, 0x89, 0xbd, 0x9e, 0x88, 0x5a, 0x2e, 0x8a, 0xe7, 0x8f, + 0xd3, 0x05, 0xb1, 0x22, 0xaa, 0x05, 0x0a, 0x1a, 0x83, 0xed, 0x7c, 0x3d, + 0x82, 0xe8, 0x2f, 0x0c, 0xd3, 0xc7, 0xa4, 0x8c, 0x53, 0xeb, 0x18, 0x9a, + 0xab, 0xef, 0x35, 0xde, 0x05, 0xaa, 0x26, 0x2b, 0xcb, 0xf8, 0x57, 0x00, +}; +static const unsigned char kat1317_retbits[] = { + 0x72, 0xb5, 0x5c, 0x04, 0x15, 0x6b, 0x45, 0x9d, 0xa2, 0x11, 0xe5, 0x4b, + 0x1f, 0xeb, 0xc7, 0xf6, 0xdd, 0x41, 0x39, 0xaf, 0xea, 0x35, 0x20, 0xaa, + 0x8c, 0xac, 0x3b, 0x27, 0x90, 0x06, 0xd0, 0x90, 0xa5, 0x77, 0x21, 0xa6, + 0xa1, 0x51, 0x57, 0x07, 0x0e, 0xf3, 0xe2, 0x8c, 0xdd, 0xb6, 0xda, 0xe9, + 0x47, 0x8d, 0xec, 0xab, 0xd7, 0x8a, 0x39, 0xd9, 0xf2, 0x17, 0xd1, 0x53, + 0x27, 0x6b, 0x83, 0x36, +}; +static const struct drbg_kat_no_reseed kat1317_t = { + 11, kat1317_entropyin, kat1317_nonce, kat1317_persstr, + kat1317_addin0, kat1317_addin1, kat1317_retbits +}; +static const struct drbg_kat kat1317 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1317_t +}; + +static const unsigned char kat1318_entropyin[] = { + 0x82, 0x36, 0xb6, 0xfb, 0x88, 0x17, 0xc2, 0x7f, 0x4f, 0x18, 0x16, 0x0a, + 0x2f, 0xcb, 0xb5, 0x13, 0x6e, 0x93, 0xd2, 0x17, 0xb0, 0xfd, 0xe5, 0x24, + 0x5c, 0xc2, 0x96, 0x4d, 0x2e, 0xf9, 0xaa, 0x69, 0x0b, 0x70, 0x6c, 0xab, + 0xaf, 0x42, 0x17, 0xb5, 0x40, 0xfa, 0x26, 0x7f, 0xac, 0x6b, 0x49, 0xe7, +}; +static const unsigned char kat1318_nonce[] = {0}; +static const unsigned char kat1318_persstr[] = { + 0x92, 0x26, 0x02, 0x19, 0x57, 0xf9, 0x54, 0xfb, 0xc8, 0x39, 0xef, 0xfd, + 0x03, 0x10, 0xab, 0xa0, 0x29, 0xb0, 0xc7, 0x13, 0x98, 0x8b, 0xcb, 0x03, + 0x11, 0x0f, 0x90, 0x84, 0x20, 0x7a, 0x8a, 0x30, 0xb2, 0x5e, 0xe0, 0x93, + 0x0e, 0x38, 0x1b, 0xc2, 0xf6, 0x81, 0x15, 0x75, 0x16, 0xe7, 0x97, 0x00, +}; +static const unsigned char kat1318_addin0[] = { + 0x34, 0x30, 0xbd, 0x3d, 0xb1, 0x69, 0xcf, 0x3b, 0x56, 0xbc, 0x64, 0x8f, + 0xe7, 0x97, 0xb1, 0x34, 0x22, 0x8f, 0xa5, 0x5c, 0x55, 0x46, 0x34, 0xe1, + 0x52, 0x32, 0xe3, 0x2d, 0x64, 0xf4, 0x24, 0xef, 0x19, 0x5e, 0xcf, 0x8c, + 0x73, 0x66, 0x95, 0xc6, 0x20, 0xce, 0x1f, 0x97, 0x8e, 0x49, 0x08, 0x3c, +}; +static const unsigned char kat1318_addin1[] = { + 0xa6, 0x20, 0xc5, 0x2d, 0xed, 0x0a, 0x3d, 0xa5, 0xc9, 0xe7, 0x17, 0x29, + 0x1a, 0x39, 0xd1, 0x26, 0x1e, 0xf3, 0x8e, 0x87, 0xc3, 0x43, 0x72, 0x8c, + 0x05, 0x44, 0x31, 0xa6, 0x93, 0x30, 0x92, 0x77, 0x97, 0xd3, 0x50, 0x82, + 0x6e, 0x93, 0xaa, 0xba, 0xe1, 0xf3, 0xcf, 0x2a, 0x61, 0x14, 0x67, 0x4c, +}; +static const unsigned char kat1318_retbits[] = { + 0x4b, 0xfb, 0xbc, 0xf8, 0xce, 0x6b, 0x0c, 0x74, 0x3d, 0x62, 0xa0, 0x80, + 0x66, 0xb3, 0x25, 0xbc, 0xe9, 0x36, 0x3c, 0xf4, 0x07, 0xb2, 0xf0, 0x44, + 0x22, 0xe3, 0xee, 0x8f, 0x19, 0xd5, 0x53, 0x21, 0x36, 0x53, 0x2d, 0xd5, + 0x96, 0xe5, 0x21, 0x25, 0x9e, 0xb0, 0x9c, 0xff, 0xad, 0xbb, 0xdb, 0x2c, + 0xc8, 0x92, 0x7d, 0x79, 0xb8, 0xb5, 0xb8, 0x03, 0x03, 0xc8, 0xf9, 0x6f, + 0xb6, 0x25, 0x4b, 0x1d, +}; +static const struct drbg_kat_no_reseed kat1318_t = { + 12, kat1318_entropyin, kat1318_nonce, kat1318_persstr, + kat1318_addin0, kat1318_addin1, kat1318_retbits +}; +static const struct drbg_kat kat1318 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1318_t +}; + +static const unsigned char kat1319_entropyin[] = { + 0x4d, 0xa4, 0xe4, 0x6d, 0xdb, 0x2e, 0xbb, 0xdf, 0xbd, 0x19, 0xd3, 0x32, + 0x3e, 0x75, 0xd4, 0x2e, 0xb9, 0x67, 0xcb, 0xe3, 0x79, 0xf6, 0xb0, 0x0f, + 0x86, 0x93, 0xe9, 0xce, 0xc9, 0xb8, 0x59, 0x83, 0x3c, 0x6d, 0x1f, 0x49, + 0xd4, 0x79, 0x21, 0xad, 0xcf, 0x1f, 0x1b, 0x8f, 0xf0, 0x29, 0x0c, 0x4a, +}; +static const unsigned char kat1319_nonce[] = {0}; +static const unsigned char kat1319_persstr[] = { + 0x6f, 0xa6, 0xf5, 0xe1, 0xa8, 0xaf, 0xa8, 0x15, 0x58, 0xb5, 0x09, 0x20, + 0x91, 0x88, 0x6a, 0xed, 0xc2, 0x7a, 0xc8, 0x4d, 0x24, 0xd4, 0x10, 0x3f, + 0x9c, 0x08, 0x69, 0x17, 0xdc, 0x4a, 0x73, 0xca, 0x4e, 0x56, 0xa5, 0xa7, + 0xd3, 0x9a, 0xeb, 0x2b, 0xb4, 0x5c, 0x0b, 0x30, 0x74, 0x54, 0x42, 0x26, +}; +static const unsigned char kat1319_addin0[] = { + 0x9d, 0xe8, 0x7f, 0xf8, 0x61, 0x58, 0xf8, 0x70, 0x24, 0xd5, 0x29, 0xea, + 0xfb, 0x86, 0x06, 0xa8, 0x29, 0xee, 0x2d, 0xcb, 0x48, 0x68, 0xe4, 0xf4, + 0x7e, 0x4b, 0x6d, 0x12, 0x29, 0x44, 0x00, 0x97, 0x50, 0x49, 0xf8, 0x30, + 0xef, 0x61, 0x26, 0xf6, 0xf9, 0x5e, 0xea, 0xce, 0xde, 0x03, 0x1a, 0xb2, +}; +static const unsigned char kat1319_addin1[] = { + 0x5d, 0x15, 0x26, 0xdf, 0x0b, 0xdd, 0x64, 0x3e, 0xe7, 0x23, 0x29, 0x63, + 0xad, 0xb3, 0x4a, 0xd4, 0x81, 0x8b, 0x1f, 0x81, 0xb5, 0x01, 0x01, 0x29, + 0xe1, 0x59, 0x7a, 0xa9, 0x0a, 0x8e, 0x5f, 0xc9, 0xe2, 0xd7, 0x2a, 0x04, + 0xe7, 0x67, 0x07, 0x4f, 0x6d, 0xde, 0xb2, 0x3f, 0xa7, 0xf9, 0x21, 0xe3, +}; +static const unsigned char kat1319_retbits[] = { + 0x3a, 0x73, 0x37, 0x4f, 0xc5, 0x19, 0x61, 0xb0, 0x17, 0xd5, 0x11, 0xfd, + 0x0f, 0x72, 0x9c, 0xb2, 0x1d, 0x44, 0xd4, 0xa6, 0x80, 0xff, 0x05, 0xc7, + 0x48, 0xe3, 0x88, 0xcc, 0xef, 0x8a, 0x47, 0x06, 0xeb, 0x91, 0x48, 0x37, + 0xd9, 0x1f, 0x23, 0xdb, 0x1c, 0xc6, 0xc9, 0xe8, 0x50, 0xb0, 0xc6, 0xe6, + 0x04, 0x1c, 0x81, 0x97, 0xe0, 0x57, 0x1a, 0xce, 0xd3, 0x0a, 0x88, 0xb8, + 0x18, 0xc6, 0x78, 0xf0, +}; +static const struct drbg_kat_no_reseed kat1319_t = { + 13, kat1319_entropyin, kat1319_nonce, kat1319_persstr, + kat1319_addin0, kat1319_addin1, kat1319_retbits +}; +static const struct drbg_kat kat1319 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1319_t +}; + +static const unsigned char kat1320_entropyin[] = { + 0x22, 0x0d, 0x0d, 0x2c, 0xd6, 0xe4, 0x24, 0xb9, 0x7a, 0x37, 0xdf, 0x3b, + 0x32, 0x2d, 0x55, 0x93, 0x10, 0x0e, 0xd9, 0x4e, 0x0a, 0x3a, 0xbb, 0x7a, + 0x3b, 0x84, 0x36, 0x21, 0xdc, 0x2b, 0x76, 0x45, 0x2f, 0xec, 0x13, 0x1a, + 0x2d, 0x6b, 0x4e, 0xe5, 0x1f, 0x26, 0xd1, 0x61, 0x1c, 0x3c, 0xb1, 0xe5, +}; +static const unsigned char kat1320_nonce[] = {0}; +static const unsigned char kat1320_persstr[] = { + 0x43, 0x89, 0x2d, 0xd3, 0xd8, 0xf3, 0x17, 0x20, 0x82, 0x07, 0x98, 0x30, + 0x39, 0x15, 0x8f, 0x98, 0x33, 0xf1, 0xc0, 0x97, 0x05, 0xd2, 0x96, 0xfe, + 0x45, 0xe7, 0x2a, 0x9d, 0x6a, 0xfc, 0x08, 0xb9, 0x9a, 0x86, 0x6b, 0x95, + 0x42, 0xfa, 0x3d, 0xb4, 0xd3, 0x3a, 0x9c, 0x1e, 0x7c, 0x3e, 0x88, 0xac, +}; +static const unsigned char kat1320_addin0[] = { + 0x0e, 0x2e, 0xc4, 0x84, 0xd8, 0x86, 0x6a, 0xdc, 0x06, 0x5b, 0x4f, 0x11, + 0xd3, 0x76, 0x0b, 0x4d, 0x27, 0x6e, 0x2c, 0xf9, 0xc0, 0x66, 0xb2, 0x26, + 0x31, 0x1e, 0x7c, 0x78, 0x06, 0x89, 0xe8, 0x40, 0xfb, 0xaf, 0x4f, 0x67, + 0xf3, 0xda, 0x0e, 0xfb, 0xb0, 0x34, 0xd5, 0x60, 0xbb, 0x73, 0xa1, 0xf4, +}; +static const unsigned char kat1320_addin1[] = { + 0x9f, 0xdf, 0xcb, 0x74, 0x60, 0xce, 0x5b, 0x99, 0x13, 0xff, 0xb9, 0x88, + 0x96, 0x96, 0xdf, 0x7a, 0xbe, 0x28, 0xaa, 0xd4, 0x0e, 0xba, 0x3b, 0x67, + 0x5d, 0x75, 0x08, 0xcc, 0xa1, 0xc9, 0x8f, 0xaa, 0xa2, 0x7d, 0xd5, 0xf5, + 0x29, 0x97, 0xdd, 0x6f, 0x25, 0x1a, 0x68, 0xe8, 0x6f, 0x96, 0x6f, 0xb1, +}; +static const unsigned char kat1320_retbits[] = { + 0x66, 0xd6, 0xb1, 0x69, 0x3a, 0x3c, 0xa1, 0xcb, 0x61, 0x69, 0x85, 0x83, + 0x90, 0x74, 0x1b, 0xae, 0x32, 0x85, 0xe0, 0xc2, 0x86, 0x04, 0xd0, 0x64, + 0xb5, 0x7f, 0x3a, 0xa2, 0xef, 0x9a, 0x56, 0x9b, 0xec, 0x22, 0x88, 0x4c, + 0xcc, 0x5c, 0xd3, 0x15, 0xd3, 0xf3, 0x84, 0x7c, 0x68, 0x0c, 0x34, 0x81, + 0xbc, 0xae, 0x42, 0x3c, 0xb1, 0x05, 0xea, 0x47, 0x95, 0x6f, 0x62, 0xcf, + 0x8c, 0x2c, 0x5d, 0x29, +}; +static const struct drbg_kat_no_reseed kat1320_t = { + 14, kat1320_entropyin, kat1320_nonce, kat1320_persstr, + kat1320_addin0, kat1320_addin1, kat1320_retbits +}; +static const struct drbg_kat kat1320 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1320_t +}; + +static const unsigned char kat1321_entropyin[] = { + 0xd2, 0xbe, 0x2d, 0xc7, 0x52, 0x0e, 0x5a, 0xb1, 0x09, 0x75, 0xe2, 0xed, + 0xdd, 0x0a, 0x8d, 0xd6, 0xdc, 0xed, 0x9e, 0x36, 0x4d, 0xfb, 0x47, 0xbf, + 0x26, 0x3d, 0x25, 0xe7, 0x5c, 0x6f, 0x8c, 0x9e, 0xbf, 0x38, 0x6f, 0x02, + 0xff, 0x0a, 0x72, 0x26, 0x76, 0xb1, 0xcd, 0xa1, 0x8a, 0xba, 0x0c, 0xc4, +}; +static const unsigned char kat1321_nonce[] = {0}; +static const unsigned char kat1321_persstr[] = {0}; +static const unsigned char kat1321_addin0[] = {0}; +static const unsigned char kat1321_addin1[] = {0}; +static const unsigned char kat1321_retbits[] = { + 0x2c, 0x1d, 0xb4, 0x2f, 0x45, 0xfd, 0x2f, 0xd6, 0xcc, 0xaf, 0x48, 0xd4, + 0x5f, 0x54, 0x4b, 0x14, 0x9b, 0x44, 0x6c, 0xdc, 0xd0, 0xe8, 0x8f, 0xd5, + 0x11, 0xf3, 0x88, 0x7a, 0x2d, 0x19, 0x69, 0x06, 0x0b, 0x26, 0xcc, 0x00, + 0x45, 0x59, 0xbf, 0x17, 0xe8, 0xbe, 0x81, 0xb8, 0xd4, 0x80, 0xfd, 0x72, + 0x8b, 0x32, 0x17, 0xce, 0x10, 0xdd, 0x8b, 0xf8, 0x0e, 0x62, 0x27, 0x78, + 0xdb, 0x76, 0xde, 0x77, +}; +static const struct drbg_kat_no_reseed kat1321_t = { + 0, kat1321_entropyin, kat1321_nonce, kat1321_persstr, + kat1321_addin0, kat1321_addin1, kat1321_retbits +}; +static const struct drbg_kat kat1321 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1321_t +}; + +static const unsigned char kat1322_entropyin[] = { + 0xf7, 0x8f, 0x74, 0x97, 0x95, 0x41, 0x97, 0x62, 0x88, 0x03, 0x2f, 0x13, + 0x07, 0x46, 0x74, 0x4c, 0x3f, 0xff, 0xe9, 0x06, 0x8c, 0xa1, 0x59, 0x2d, + 0x0f, 0xe6, 0x1e, 0x4c, 0x94, 0x6e, 0x41, 0xbc, 0x3f, 0xfd, 0xa0, 0x03, + 0x3d, 0x01, 0xad, 0xb5, 0xf5, 0x2c, 0xe0, 0x27, 0xa7, 0x9e, 0xed, 0xa3, +}; +static const unsigned char kat1322_nonce[] = {0}; +static const unsigned char kat1322_persstr[] = {0}; +static const unsigned char kat1322_addin0[] = {0}; +static const unsigned char kat1322_addin1[] = {0}; +static const unsigned char kat1322_retbits[] = { + 0x13, 0x7b, 0xc8, 0x75, 0xed, 0xe8, 0x00, 0x9a, 0x77, 0x83, 0xe9, 0x7d, + 0x11, 0xd4, 0x94, 0x66, 0x01, 0x01, 0x75, 0xc1, 0x38, 0xb8, 0x94, 0x57, + 0xa9, 0xa0, 0x71, 0x11, 0x41, 0x7c, 0xa3, 0xf8, 0x49, 0x10, 0x21, 0x82, + 0x93, 0xef, 0xac, 0xd6, 0x92, 0x6a, 0xdf, 0xf9, 0x16, 0x78, 0xe8, 0x7e, + 0x6c, 0xe1, 0x29, 0x96, 0x13, 0x5e, 0xef, 0xa5, 0x8d, 0x4f, 0xa3, 0x31, + 0xe9, 0x1a, 0xfa, 0x8d, +}; +static const struct drbg_kat_no_reseed kat1322_t = { + 1, kat1322_entropyin, kat1322_nonce, kat1322_persstr, + kat1322_addin0, kat1322_addin1, kat1322_retbits +}; +static const struct drbg_kat kat1322 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1322_t +}; + +static const unsigned char kat1323_entropyin[] = { + 0xc6, 0xbe, 0x83, 0x86, 0xac, 0xe7, 0x40, 0x5a, 0xc5, 0x13, 0xf0, 0xaa, + 0x2b, 0xf3, 0xa9, 0xcc, 0x81, 0xa1, 0x73, 0x2a, 0xf4, 0xf0, 0x77, 0x69, + 0x2e, 0xeb, 0x34, 0x82, 0x3e, 0x75, 0x5c, 0x66, 0x98, 0x48, 0x32, 0x9f, + 0x9d, 0x98, 0x3f, 0x53, 0x6b, 0x36, 0x6b, 0xf8, 0x9f, 0x6a, 0x57, 0x91, +}; +static const unsigned char kat1323_nonce[] = {0}; +static const unsigned char kat1323_persstr[] = {0}; +static const unsigned char kat1323_addin0[] = {0}; +static const unsigned char kat1323_addin1[] = {0}; +static const unsigned char kat1323_retbits[] = { + 0x46, 0xb2, 0x30, 0x78, 0x44, 0x6a, 0x7e, 0x7c, 0xc5, 0x42, 0xfb, 0x8e, + 0x4d, 0x04, 0x10, 0x27, 0x0f, 0xe8, 0xa1, 0xe1, 0x7b, 0x82, 0x5d, 0x86, + 0xe0, 0xe6, 0x09, 0x54, 0xbc, 0xe0, 0xc2, 0x4b, 0x66, 0x84, 0x51, 0x00, + 0x25, 0x89, 0xc3, 0x04, 0xe1, 0x52, 0xf5, 0x33, 0x50, 0xee, 0x19, 0x78, + 0x2d, 0x97, 0x69, 0x82, 0x03, 0xda, 0xde, 0xde, 0x78, 0xb1, 0x77, 0x95, + 0x87, 0x3b, 0x0e, 0xd5, +}; +static const struct drbg_kat_no_reseed kat1323_t = { + 2, kat1323_entropyin, kat1323_nonce, kat1323_persstr, + kat1323_addin0, kat1323_addin1, kat1323_retbits +}; +static const struct drbg_kat kat1323 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1323_t +}; + +static const unsigned char kat1324_entropyin[] = { + 0xee, 0x1f, 0x42, 0x91, 0x8d, 0x6c, 0x76, 0x9c, 0xa9, 0x3d, 0x02, 0x4d, + 0x36, 0x0c, 0x0f, 0x5e, 0x64, 0x87, 0x24, 0x23, 0x7b, 0xd9, 0x0d, 0xe8, + 0xcb, 0x5a, 0x35, 0x89, 0xc2, 0x4e, 0x31, 0x07, 0x3b, 0x39, 0xc6, 0xff, + 0x11, 0x69, 0x41, 0x70, 0xea, 0x7b, 0x3d, 0x68, 0x41, 0x66, 0x60, 0x28, +}; +static const unsigned char kat1324_nonce[] = {0}; +static const unsigned char kat1324_persstr[] = {0}; +static const unsigned char kat1324_addin0[] = {0}; +static const unsigned char kat1324_addin1[] = {0}; +static const unsigned char kat1324_retbits[] = { + 0xc5, 0xc5, 0x64, 0x13, 0xc3, 0x5f, 0x5a, 0xe0, 0x10, 0xa6, 0x56, 0x46, + 0x9a, 0x9f, 0x18, 0x8d, 0xec, 0x9f, 0x1f, 0x0b, 0x25, 0xaa, 0xfe, 0x8b, + 0x0a, 0x77, 0xca, 0xc9, 0xf9, 0x11, 0xc4, 0x57, 0xbf, 0x7b, 0x9a, 0x75, + 0x17, 0x8c, 0x2d, 0x42, 0x75, 0xac, 0x8f, 0xd7, 0x40, 0xb0, 0xf8, 0x96, + 0x7a, 0x72, 0x16, 0x1d, 0xf7, 0x87, 0xd5, 0x33, 0x30, 0x92, 0xd7, 0x10, + 0x52, 0x5e, 0xc8, 0x47, +}; +static const struct drbg_kat_no_reseed kat1324_t = { + 3, kat1324_entropyin, kat1324_nonce, kat1324_persstr, + kat1324_addin0, kat1324_addin1, kat1324_retbits +}; +static const struct drbg_kat kat1324 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1324_t +}; + +static const unsigned char kat1325_entropyin[] = { + 0xd3, 0x33, 0x8a, 0x25, 0x25, 0x27, 0x16, 0xa9, 0x18, 0x9f, 0x17, 0x99, + 0x55, 0x1e, 0x6b, 0x8e, 0xfe, 0x37, 0x72, 0x0a, 0x03, 0x73, 0x49, 0x6d, + 0x3c, 0x9d, 0x9f, 0x57, 0xf4, 0x68, 0x56, 0x7d, 0xdf, 0x04, 0xfc, 0xe3, + 0xe6, 0x72, 0x50, 0x40, 0x3f, 0x9c, 0xd8, 0xea, 0xe4, 0x74, 0xf2, 0x39, +}; +static const unsigned char kat1325_nonce[] = {0}; +static const unsigned char kat1325_persstr[] = {0}; +static const unsigned char kat1325_addin0[] = {0}; +static const unsigned char kat1325_addin1[] = {0}; +static const unsigned char kat1325_retbits[] = { + 0xbb, 0x24, 0x5a, 0xc6, 0x50, 0x40, 0xbe, 0x1a, 0x71, 0x46, 0xfc, 0x22, + 0x9a, 0x3b, 0x08, 0xab, 0xfa, 0xbc, 0x69, 0x1b, 0xf2, 0xdf, 0x37, 0x3c, + 0x49, 0x2a, 0x4a, 0xda, 0x1d, 0x33, 0x9e, 0x5d, 0xf8, 0x49, 0xa5, 0x21, + 0x04, 0x2d, 0x65, 0x75, 0x24, 0x40, 0x3f, 0x9a, 0x48, 0xf5, 0xf7, 0x53, + 0xc6, 0x7e, 0xe0, 0x81, 0x02, 0xb5, 0xa1, 0xb9, 0x04, 0x83, 0x7b, 0x41, + 0xe4, 0xdb, 0xe9, 0xb7, +}; +static const struct drbg_kat_no_reseed kat1325_t = { + 4, kat1325_entropyin, kat1325_nonce, kat1325_persstr, + kat1325_addin0, kat1325_addin1, kat1325_retbits +}; +static const struct drbg_kat kat1325 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1325_t +}; + +static const unsigned char kat1326_entropyin[] = { + 0x8d, 0xf9, 0xbf, 0xb8, 0x4e, 0xb8, 0x70, 0xfc, 0x33, 0x59, 0xe2, 0x8e, + 0xee, 0xea, 0xe7, 0xac, 0x73, 0xb0, 0x55, 0x14, 0x68, 0x82, 0xab, 0x11, + 0x9b, 0xae, 0x7e, 0x2b, 0x90, 0x11, 0x54, 0x16, 0x9a, 0xb0, 0x3c, 0x8f, + 0xa7, 0x56, 0x68, 0x9c, 0x02, 0xfb, 0xde, 0xea, 0x16, 0x55, 0xd9, 0x74, +}; +static const unsigned char kat1326_nonce[] = {0}; +static const unsigned char kat1326_persstr[] = {0}; +static const unsigned char kat1326_addin0[] = {0}; +static const unsigned char kat1326_addin1[] = {0}; +static const unsigned char kat1326_retbits[] = { + 0x14, 0x26, 0xc1, 0x3d, 0xc2, 0x9a, 0xfc, 0x3c, 0xb7, 0x29, 0x9c, 0x81, + 0x92, 0xc6, 0x6e, 0x26, 0x3e, 0x6f, 0x36, 0x68, 0xd8, 0xdb, 0x49, 0x5d, + 0x4e, 0x29, 0x4a, 0xba, 0xf0, 0x49, 0x63, 0x9c, 0xbb, 0x47, 0x34, 0xaa, + 0xe0, 0x79, 0xa8, 0xa2, 0xf3, 0x81, 0x26, 0x3a, 0x37, 0xc9, 0xa2, 0x40, + 0x63, 0x62, 0xd3, 0x10, 0xf5, 0x8c, 0xca, 0x08, 0x82, 0x9a, 0x7a, 0x4b, + 0x07, 0xbd, 0x62, 0x1f, +}; +static const struct drbg_kat_no_reseed kat1326_t = { + 5, kat1326_entropyin, kat1326_nonce, kat1326_persstr, + kat1326_addin0, kat1326_addin1, kat1326_retbits +}; +static const struct drbg_kat kat1326 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1326_t +}; + +static const unsigned char kat1327_entropyin[] = { + 0xc9, 0xe9, 0x0d, 0x1f, 0x40, 0xfd, 0x6e, 0xee, 0xaa, 0xab, 0x16, 0x09, + 0x16, 0xee, 0xf3, 0x3e, 0xff, 0x12, 0x88, 0x12, 0x0d, 0x16, 0x5d, 0x9c, + 0xe8, 0x98, 0x4f, 0x68, 0x42, 0x1c, 0x98, 0x94, 0x74, 0x57, 0x2a, 0x61, + 0xa0, 0xa0, 0x37, 0x3d, 0x65, 0xb0, 0x06, 0xf8, 0x37, 0x0d, 0xd9, 0x26, +}; +static const unsigned char kat1327_nonce[] = {0}; +static const unsigned char kat1327_persstr[] = {0}; +static const unsigned char kat1327_addin0[] = {0}; +static const unsigned char kat1327_addin1[] = {0}; +static const unsigned char kat1327_retbits[] = { + 0xb6, 0x15, 0x7b, 0xb5, 0x7c, 0x19, 0x69, 0xe2, 0x24, 0x83, 0xdf, 0x3e, + 0x8c, 0x2c, 0x38, 0xda, 0xad, 0xc2, 0x94, 0xe6, 0xac, 0xd2, 0xb5, 0x1a, + 0xe6, 0x3d, 0x6d, 0xdd, 0x58, 0x9a, 0x63, 0x17, 0x42, 0xcb, 0x39, 0x12, + 0xbe, 0x32, 0x20, 0x19, 0x51, 0xe1, 0xe3, 0x72, 0x3d, 0x3c, 0x5a, 0x59, + 0x1e, 0x79, 0x6b, 0x3a, 0xb7, 0xd4, 0xec, 0x8e, 0x37, 0x60, 0x5b, 0x04, + 0x38, 0xe1, 0x5a, 0x45, +}; +static const struct drbg_kat_no_reseed kat1327_t = { + 6, kat1327_entropyin, kat1327_nonce, kat1327_persstr, + kat1327_addin0, kat1327_addin1, kat1327_retbits +}; +static const struct drbg_kat kat1327 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1327_t +}; + +static const unsigned char kat1328_entropyin[] = { + 0x25, 0x14, 0x49, 0x8a, 0xbf, 0xac, 0xda, 0x89, 0x42, 0x5e, 0xbf, 0xb4, + 0x34, 0x3c, 0x5c, 0xa8, 0xc3, 0x4c, 0x18, 0x43, 0x30, 0x05, 0xb6, 0xed, + 0x60, 0x38, 0xa3, 0x14, 0x66, 0x52, 0x51, 0x13, 0xfd, 0x97, 0x75, 0x0f, + 0x7e, 0xb8, 0xc8, 0xba, 0x22, 0x4d, 0x77, 0xf8, 0xb2, 0x0c, 0xf2, 0xd9, +}; +static const unsigned char kat1328_nonce[] = {0}; +static const unsigned char kat1328_persstr[] = {0}; +static const unsigned char kat1328_addin0[] = {0}; +static const unsigned char kat1328_addin1[] = {0}; +static const unsigned char kat1328_retbits[] = { + 0xf0, 0x36, 0x25, 0x0e, 0x0a, 0x60, 0x1d, 0x91, 0xc5, 0xb8, 0x02, 0x9f, + 0xc6, 0x98, 0x29, 0x47, 0x9b, 0x08, 0x6d, 0x61, 0x6e, 0x8d, 0xde, 0x2b, + 0x62, 0xcb, 0x98, 0xf7, 0x07, 0x85, 0x10, 0x1b, 0x00, 0x1a, 0xb9, 0xe5, + 0x83, 0x25, 0x08, 0xf6, 0x57, 0xd9, 0xf5, 0x2e, 0x9f, 0x9b, 0x3f, 0xa5, + 0xfb, 0x3c, 0x02, 0xcc, 0x09, 0xf9, 0x7a, 0x1c, 0xd4, 0x69, 0x84, 0x04, + 0xa7, 0xfd, 0x96, 0x7d, +}; +static const struct drbg_kat_no_reseed kat1328_t = { + 7, kat1328_entropyin, kat1328_nonce, kat1328_persstr, + kat1328_addin0, kat1328_addin1, kat1328_retbits +}; +static const struct drbg_kat kat1328 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1328_t +}; + +static const unsigned char kat1329_entropyin[] = { + 0x8b, 0xd4, 0x2f, 0x21, 0xb2, 0xb8, 0x1f, 0x42, 0x81, 0x3d, 0xd2, 0x91, + 0xe2, 0xaa, 0xbb, 0x37, 0x2d, 0x25, 0x68, 0x7d, 0x2f, 0xa0, 0xf3, 0x0b, + 0xdf, 0xa9, 0x63, 0x2d, 0xb9, 0x0c, 0x81, 0x2a, 0xe5, 0xa2, 0x5d, 0x8f, + 0x8a, 0xd3, 0xe0, 0x33, 0xfa, 0x5a, 0x0c, 0x98, 0x1d, 0xf2, 0xc5, 0x86, +}; +static const unsigned char kat1329_nonce[] = {0}; +static const unsigned char kat1329_persstr[] = {0}; +static const unsigned char kat1329_addin0[] = {0}; +static const unsigned char kat1329_addin1[] = {0}; +static const unsigned char kat1329_retbits[] = { + 0x9a, 0x58, 0x9e, 0x69, 0x62, 0x2c, 0x1d, 0x66, 0x80, 0xe3, 0xcf, 0x38, + 0xe8, 0x64, 0x00, 0x97, 0x9c, 0xd8, 0xf6, 0x83, 0x47, 0xc6, 0xc4, 0xb6, + 0xb9, 0xd0, 0x4d, 0x45, 0x48, 0xda, 0x23, 0xab, 0xec, 0x08, 0xb6, 0xfe, + 0xaa, 0x6a, 0x7e, 0x53, 0x6b, 0x2c, 0x8b, 0xed, 0x28, 0xc6, 0x13, 0x6f, + 0xc5, 0xb3, 0x10, 0x01, 0x7d, 0x81, 0x8a, 0xff, 0xc4, 0x07, 0x71, 0xd4, + 0xb1, 0x5e, 0x27, 0x89, +}; +static const struct drbg_kat_no_reseed kat1329_t = { + 8, kat1329_entropyin, kat1329_nonce, kat1329_persstr, + kat1329_addin0, kat1329_addin1, kat1329_retbits +}; +static const struct drbg_kat kat1329 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1329_t +}; + +static const unsigned char kat1330_entropyin[] = { + 0x4d, 0x31, 0x97, 0xc9, 0x96, 0x12, 0xc5, 0xcb, 0x62, 0x16, 0x01, 0x68, + 0x86, 0x92, 0x16, 0x4c, 0x23, 0x95, 0x69, 0xbd, 0xf3, 0x9e, 0xe5, 0xe7, + 0x7e, 0x08, 0xa0, 0x59, 0xe8, 0x71, 0xd9, 0x71, 0x0b, 0x72, 0x59, 0x27, + 0xa3, 0xa2, 0xc9, 0xa2, 0xa0, 0x5b, 0xc8, 0x4d, 0xf3, 0x81, 0x85, 0xda, +}; +static const unsigned char kat1330_nonce[] = {0}; +static const unsigned char kat1330_persstr[] = {0}; +static const unsigned char kat1330_addin0[] = {0}; +static const unsigned char kat1330_addin1[] = {0}; +static const unsigned char kat1330_retbits[] = { + 0xe3, 0x90, 0x5d, 0x94, 0x3e, 0x16, 0x0a, 0x76, 0xab, 0xaa, 0xef, 0x2d, + 0x23, 0x49, 0x15, 0xc0, 0xc7, 0xad, 0x78, 0xf8, 0x75, 0x9f, 0x4c, 0x92, + 0x05, 0xa8, 0xb1, 0x23, 0x0a, 0x0c, 0xc5, 0xf9, 0x72, 0x45, 0x6c, 0xa0, + 0xd8, 0xf4, 0x7e, 0x06, 0x63, 0xa6, 0xc3, 0x18, 0xb2, 0x2c, 0xac, 0xe2, + 0x53, 0xce, 0xbb, 0x5f, 0x0f, 0x2a, 0x58, 0xed, 0x6a, 0xb4, 0xed, 0x6d, + 0x9c, 0xac, 0x25, 0xa6, +}; +static const struct drbg_kat_no_reseed kat1330_t = { + 9, kat1330_entropyin, kat1330_nonce, kat1330_persstr, + kat1330_addin0, kat1330_addin1, kat1330_retbits +}; +static const struct drbg_kat kat1330 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1330_t +}; + +static const unsigned char kat1331_entropyin[] = { + 0xd3, 0x46, 0x08, 0x24, 0x7d, 0x7d, 0x03, 0x61, 0xe6, 0xba, 0x5f, 0x68, + 0xbe, 0x39, 0xca, 0x77, 0xda, 0x43, 0xd5, 0x5e, 0x35, 0xad, 0x5a, 0x34, + 0x88, 0xfa, 0xca, 0x63, 0x45, 0xa0, 0xbe, 0x8b, 0x0c, 0x19, 0xe9, 0x07, + 0xa4, 0x28, 0xb3, 0x16, 0x4f, 0x45, 0xc8, 0xdd, 0xf9, 0x97, 0x70, 0x21, +}; +static const unsigned char kat1331_nonce[] = {0}; +static const unsigned char kat1331_persstr[] = {0}; +static const unsigned char kat1331_addin0[] = {0}; +static const unsigned char kat1331_addin1[] = {0}; +static const unsigned char kat1331_retbits[] = { + 0x44, 0xdc, 0x77, 0x05, 0x4f, 0xbe, 0x30, 0xe8, 0x89, 0x63, 0x0f, 0x48, + 0xd7, 0xb1, 0x0e, 0x71, 0x15, 0x57, 0xc7, 0x95, 0x15, 0x71, 0xcf, 0x1f, + 0xeb, 0x7e, 0x20, 0x23, 0x8a, 0xca, 0xd4, 0x59, 0x3d, 0xca, 0x7f, 0x7e, + 0xe7, 0x1a, 0x2b, 0xc1, 0xe0, 0x36, 0x2b, 0x96, 0x17, 0x54, 0xba, 0x68, + 0xa7, 0xca, 0x3b, 0x83, 0xad, 0x36, 0xdc, 0xe2, 0x0b, 0x76, 0x3e, 0x70, + 0x92, 0x8a, 0x38, 0xd8, +}; +static const struct drbg_kat_no_reseed kat1331_t = { + 10, kat1331_entropyin, kat1331_nonce, kat1331_persstr, + kat1331_addin0, kat1331_addin1, kat1331_retbits +}; +static const struct drbg_kat kat1331 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1331_t +}; + +static const unsigned char kat1332_entropyin[] = { + 0xb5, 0x98, 0xf2, 0x82, 0xad, 0xec, 0xf9, 0xd0, 0x60, 0xae, 0xd6, 0xcc, + 0x69, 0x7a, 0xb8, 0xd5, 0xee, 0xdf, 0x40, 0x04, 0xa7, 0x74, 0xd4, 0xb6, + 0xd4, 0x36, 0x5c, 0x44, 0x2e, 0x63, 0xff, 0x1c, 0x4a, 0xc7, 0xee, 0x99, + 0xf4, 0xb0, 0x5f, 0x34, 0x9b, 0x77, 0x0b, 0x77, 0xa2, 0x1a, 0xf1, 0xb3, +}; +static const unsigned char kat1332_nonce[] = {0}; +static const unsigned char kat1332_persstr[] = {0}; +static const unsigned char kat1332_addin0[] = {0}; +static const unsigned char kat1332_addin1[] = {0}; +static const unsigned char kat1332_retbits[] = { + 0x28, 0x3c, 0x19, 0x05, 0xa7, 0x6a, 0x7f, 0x3c, 0x66, 0x6e, 0x68, 0x03, + 0x95, 0x0c, 0xad, 0xaf, 0x18, 0xd5, 0xfb, 0x58, 0x90, 0xe7, 0x7c, 0x48, + 0xcb, 0xc6, 0xea, 0x13, 0x5f, 0xe7, 0xc5, 0x63, 0xfe, 0x26, 0x84, 0x74, + 0x7b, 0x55, 0x04, 0x99, 0x21, 0xa8, 0x9d, 0x34, 0xbb, 0x84, 0x57, 0xa4, + 0x6b, 0x78, 0xf0, 0xe8, 0xe1, 0x02, 0x21, 0x1f, 0x4c, 0x64, 0xf4, 0xc4, + 0x50, 0x07, 0xe0, 0x6b, +}; +static const struct drbg_kat_no_reseed kat1332_t = { + 11, kat1332_entropyin, kat1332_nonce, kat1332_persstr, + kat1332_addin0, kat1332_addin1, kat1332_retbits +}; +static const struct drbg_kat kat1332 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1332_t +}; + +static const unsigned char kat1333_entropyin[] = { + 0xe2, 0xb9, 0xff, 0xc6, 0xb1, 0x3c, 0x61, 0x35, 0xd7, 0x60, 0x87, 0xbf, + 0x6e, 0xa2, 0x84, 0x60, 0xfb, 0x9f, 0x18, 0xc4, 0xe7, 0x12, 0x78, 0x50, + 0x39, 0x44, 0x39, 0x70, 0x92, 0x4a, 0xe9, 0x23, 0xf1, 0x8e, 0xe4, 0x5b, + 0x87, 0x90, 0x9d, 0xca, 0xc7, 0x03, 0xc6, 0x2d, 0x58, 0x75, 0xba, 0xbb, +}; +static const unsigned char kat1333_nonce[] = {0}; +static const unsigned char kat1333_persstr[] = {0}; +static const unsigned char kat1333_addin0[] = {0}; +static const unsigned char kat1333_addin1[] = {0}; +static const unsigned char kat1333_retbits[] = { + 0x61, 0x91, 0x66, 0xb4, 0x07, 0x11, 0x98, 0xc4, 0x78, 0x42, 0x7a, 0x1a, + 0xc0, 0xc2, 0x1a, 0x09, 0x93, 0xed, 0x36, 0x5b, 0x78, 0x01, 0xc0, 0x2a, + 0x06, 0xb8, 0x04, 0xf4, 0xb0, 0xbe, 0x55, 0x3c, 0x0d, 0x04, 0x87, 0x21, + 0x8e, 0x5e, 0x20, 0x61, 0x2b, 0xb4, 0x45, 0x3a, 0xb5, 0x9c, 0x8e, 0x4b, + 0x8d, 0xbf, 0xc3, 0x28, 0x2e, 0xfb, 0x34, 0xaa, 0x94, 0x3b, 0xa1, 0x7b, + 0xa6, 0x5d, 0xfa, 0x28, +}; +static const struct drbg_kat_no_reseed kat1333_t = { + 12, kat1333_entropyin, kat1333_nonce, kat1333_persstr, + kat1333_addin0, kat1333_addin1, kat1333_retbits +}; +static const struct drbg_kat kat1333 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1333_t +}; + +static const unsigned char kat1334_entropyin[] = { + 0x38, 0xb4, 0x9f, 0xe3, 0x9f, 0x04, 0xbd, 0x4e, 0xc3, 0x12, 0x08, 0xe9, + 0x51, 0x08, 0x16, 0x63, 0xc0, 0x6a, 0x93, 0xf0, 0x26, 0xe2, 0xf0, 0x91, + 0x5b, 0x36, 0xe4, 0x4c, 0x15, 0x96, 0x9f, 0x6a, 0x9c, 0xab, 0xca, 0x17, + 0x74, 0xa5, 0x86, 0xaa, 0x00, 0x64, 0xa1, 0x61, 0xfa, 0xcf, 0x72, 0x3f, +}; +static const unsigned char kat1334_nonce[] = {0}; +static const unsigned char kat1334_persstr[] = {0}; +static const unsigned char kat1334_addin0[] = {0}; +static const unsigned char kat1334_addin1[] = {0}; +static const unsigned char kat1334_retbits[] = { + 0x47, 0xb6, 0xdc, 0x1f, 0x9f, 0xc7, 0xba, 0x68, 0x97, 0x3e, 0x15, 0xb4, + 0x89, 0xe4, 0x6b, 0x94, 0xb4, 0xba, 0x58, 0xe2, 0x3d, 0x66, 0x91, 0xa6, + 0xe8, 0x31, 0x1d, 0xd8, 0x2a, 0x61, 0x87, 0x25, 0x2e, 0x10, 0x10, 0x28, + 0x65, 0x95, 0x5e, 0xa7, 0x8c, 0x6b, 0x79, 0x53, 0xc5, 0xd0, 0xa7, 0x91, + 0x9c, 0xed, 0xd2, 0x01, 0x1f, 0x85, 0xea, 0xcd, 0x29, 0x89, 0x34, 0x28, + 0x90, 0x83, 0xdd, 0x58, +}; +static const struct drbg_kat_no_reseed kat1334_t = { + 13, kat1334_entropyin, kat1334_nonce, kat1334_persstr, + kat1334_addin0, kat1334_addin1, kat1334_retbits +}; +static const struct drbg_kat kat1334 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1334_t +}; + +static const unsigned char kat1335_entropyin[] = { + 0x80, 0xff, 0xec, 0xca, 0xdd, 0xab, 0x35, 0x22, 0x1c, 0xba, 0x00, 0xff, + 0x37, 0x47, 0x28, 0xda, 0xb8, 0xf9, 0x1f, 0x3e, 0x54, 0x98, 0x62, 0x27, + 0x04, 0xc0, 0x50, 0xe3, 0xe1, 0x3a, 0x2b, 0x0b, 0xdd, 0x2f, 0x91, 0x36, + 0x72, 0xe8, 0x96, 0xa9, 0x79, 0x97, 0x4c, 0x52, 0x06, 0x7e, 0x2a, 0x05, +}; +static const unsigned char kat1335_nonce[] = {0}; +static const unsigned char kat1335_persstr[] = {0}; +static const unsigned char kat1335_addin0[] = {0}; +static const unsigned char kat1335_addin1[] = {0}; +static const unsigned char kat1335_retbits[] = { + 0x02, 0x92, 0xbd, 0xaf, 0x72, 0x5f, 0x46, 0x93, 0x07, 0xe7, 0x6e, 0x3e, + 0xf5, 0xbe, 0xd0, 0x34, 0x70, 0xf6, 0xbd, 0xfc, 0x22, 0xe4, 0xd7, 0xf0, + 0x66, 0x1b, 0xd1, 0xb8, 0x76, 0x96, 0xc9, 0xda, 0x20, 0x1b, 0xbb, 0xdc, + 0xa6, 0xa2, 0x23, 0x44, 0xea, 0x88, 0xff, 0xc7, 0x32, 0x53, 0x70, 0x86, + 0x3b, 0x4c, 0xfb, 0x10, 0x57, 0x40, 0x16, 0x5e, 0xae, 0xd9, 0xc6, 0xe7, + 0x3b, 0x06, 0xa4, 0xe8, +}; +static const struct drbg_kat_no_reseed kat1335_t = { + 14, kat1335_entropyin, kat1335_nonce, kat1335_persstr, + kat1335_addin0, kat1335_addin1, kat1335_retbits +}; +static const struct drbg_kat kat1335 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1335_t +}; + +static const unsigned char kat1336_entropyin[] = { + 0x5e, 0xaf, 0x1f, 0xd9, 0xf7, 0xd7, 0x3f, 0x8c, 0xa3, 0xa3, 0x74, 0x49, + 0xab, 0x60, 0x5d, 0x88, 0x76, 0x3f, 0x9d, 0x8f, 0xce, 0x14, 0x25, 0xce, + 0xc8, 0xe7, 0x26, 0x7b, 0x89, 0x05, 0x1f, 0xf9, 0xeb, 0xdd, 0xed, 0x7c, + 0x24, 0x41, 0xfa, 0x64, 0x86, 0x5a, 0xd9, 0x8e, 0x57, 0xd6, 0xdd, 0x8a, +}; +static const unsigned char kat1336_nonce[] = {0}; +static const unsigned char kat1336_persstr[] = {0}; +static const unsigned char kat1336_addin0[] = { + 0x1b, 0x4b, 0x26, 0x2e, 0x31, 0x64, 0x46, 0xc8, 0x40, 0x21, 0x1d, 0xc3, + 0xf7, 0xfd, 0x10, 0x71, 0xcd, 0xe1, 0x79, 0xee, 0x9d, 0x27, 0x83, 0x70, + 0x6c, 0x07, 0x91, 0x35, 0x9c, 0x7b, 0xf6, 0x8b, 0x07, 0xba, 0x88, 0x0e, + 0xdc, 0xf4, 0xb7, 0x61, 0x23, 0x9e, 0x6b, 0xcf, 0x69, 0xbf, 0x8c, 0xfc, +}; +static const unsigned char kat1336_addin1[] = { + 0x73, 0x9f, 0xd8, 0x58, 0x04, 0xe5, 0xb8, 0x48, 0x26, 0x7d, 0xa4, 0xdb, + 0xc8, 0xf0, 0x26, 0x6d, 0xe1, 0x19, 0x56, 0x3e, 0xd6, 0x8c, 0xad, 0x57, + 0x77, 0xb4, 0xf8, 0xd0, 0x7e, 0x58, 0xbe, 0xdb, 0xcc, 0xa5, 0xf2, 0xc9, + 0xaf, 0x33, 0x93, 0x28, 0xe5, 0xcb, 0x23, 0x8a, 0x21, 0xb1, 0x63, 0x60, +}; +static const unsigned char kat1336_retbits[] = { + 0x8e, 0x13, 0x36, 0xb3, 0x02, 0xf1, 0x2b, 0x21, 0x01, 0xd1, 0x81, 0x59, + 0x07, 0x2d, 0xd1, 0x50, 0xfb, 0xfc, 0x8d, 0x79, 0x4f, 0xfe, 0x5d, 0x7e, + 0x54, 0xdd, 0x9f, 0xb8, 0x0c, 0x09, 0xf5, 0x05, 0x01, 0xc6, 0xd1, 0x79, + 0xad, 0xff, 0x45, 0x6c, 0x15, 0x15, 0x6d, 0x16, 0xdc, 0x38, 0x61, 0x07, + 0xf2, 0x46, 0xd1, 0x5b, 0xfa, 0x2a, 0x99, 0xc8, 0x72, 0xf9, 0x84, 0x47, + 0x50, 0x55, 0xa6, 0x31, +}; +static const struct drbg_kat_no_reseed kat1336_t = { + 0, kat1336_entropyin, kat1336_nonce, kat1336_persstr, + kat1336_addin0, kat1336_addin1, kat1336_retbits +}; +static const struct drbg_kat kat1336 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1336_t +}; + +static const unsigned char kat1337_entropyin[] = { + 0x55, 0x62, 0x60, 0xf4, 0xb1, 0xb7, 0xea, 0x2a, 0x63, 0x7a, 0x3c, 0x3d, + 0xd5, 0xf3, 0x84, 0xde, 0xb0, 0xe8, 0x3d, 0xd2, 0xaf, 0x5c, 0x6b, 0xc6, + 0x0f, 0xfa, 0xc9, 0xdc, 0x4b, 0x43, 0xb5, 0x9c, 0xac, 0xfe, 0x17, 0x3d, + 0x2b, 0x04, 0x1c, 0x8f, 0x31, 0x5c, 0x07, 0x5e, 0x0e, 0x8f, 0xdd, 0xb8, +}; +static const unsigned char kat1337_nonce[] = {0}; +static const unsigned char kat1337_persstr[] = {0}; +static const unsigned char kat1337_addin0[] = { + 0x32, 0xd2, 0xc4, 0xca, 0xfd, 0x82, 0x71, 0xaa, 0x93, 0x8e, 0x9b, 0x64, + 0x7e, 0x5d, 0x9b, 0x91, 0x6d, 0x9b, 0x3e, 0xf7, 0x89, 0xe2, 0x43, 0xfa, + 0x8b, 0x8c, 0x62, 0x3c, 0xa8, 0xd6, 0x4b, 0xcd, 0x7c, 0x7b, 0xc4, 0x2a, + 0xa8, 0x16, 0x9a, 0x2e, 0x6d, 0x53, 0xfb, 0x39, 0x76, 0x3f, 0x59, 0x69, +}; +static const unsigned char kat1337_addin1[] = { + 0x54, 0x7a, 0x3a, 0x11, 0x41, 0x38, 0x0f, 0xe4, 0x41, 0xfe, 0x01, 0xec, + 0xeb, 0xa9, 0x71, 0x93, 0xab, 0x56, 0x6b, 0x0c, 0x86, 0x27, 0xbe, 0xa2, + 0x6c, 0xf9, 0x56, 0xac, 0x8c, 0xbd, 0x78, 0x9a, 0x72, 0xd1, 0x5b, 0xb5, + 0x26, 0xce, 0xec, 0x83, 0x53, 0x2d, 0xf7, 0xa2, 0x76, 0xfb, 0x57, 0xc0, +}; +static const unsigned char kat1337_retbits[] = { + 0x1b, 0xe1, 0xa0, 0x0c, 0x36, 0xdf, 0xc2, 0x3c, 0xd8, 0xfa, 0x4b, 0xd0, + 0x60, 0xba, 0xfa, 0x30, 0x6a, 0x03, 0x32, 0xa3, 0xbe, 0xb0, 0x33, 0x1a, + 0xf0, 0x81, 0x9d, 0x8f, 0x70, 0xd7, 0x71, 0xcc, 0xe6, 0x86, 0x7f, 0xf6, + 0xd2, 0xfb, 0x45, 0xfd, 0x99, 0xd9, 0xe7, 0x52, 0x98, 0xba, 0x04, 0x37, + 0xd6, 0xe9, 0x58, 0x43, 0x68, 0x64, 0xc1, 0x8e, 0xb6, 0x88, 0x21, 0xac, + 0xfe, 0x07, 0xb2, 0x08, +}; +static const struct drbg_kat_no_reseed kat1337_t = { + 1, kat1337_entropyin, kat1337_nonce, kat1337_persstr, + kat1337_addin0, kat1337_addin1, kat1337_retbits +}; +static const struct drbg_kat kat1337 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1337_t +}; + +static const unsigned char kat1338_entropyin[] = { + 0x14, 0x7a, 0x27, 0x01, 0x96, 0x1b, 0xac, 0x03, 0x73, 0x04, 0xea, 0xc1, + 0xdf, 0x10, 0xb1, 0x57, 0x1a, 0x60, 0x0d, 0xc9, 0xa2, 0x26, 0x6a, 0x7c, + 0xaf, 0xc1, 0x80, 0x30, 0xfc, 0xb8, 0x3a, 0xd5, 0x60, 0x32, 0x5e, 0x0a, + 0x6f, 0x4b, 0x76, 0x72, 0xb4, 0x39, 0xd6, 0xca, 0x02, 0x84, 0x85, 0x1a, +}; +static const unsigned char kat1338_nonce[] = {0}; +static const unsigned char kat1338_persstr[] = {0}; +static const unsigned char kat1338_addin0[] = { + 0x2a, 0xe8, 0x22, 0x0a, 0xe2, 0x30, 0xfe, 0x6b, 0x00, 0xc5, 0x1d, 0xda, + 0xcd, 0x3e, 0x1f, 0x08, 0xdd, 0x1f, 0xac, 0xab, 0x94, 0x85, 0x25, 0x82, + 0x5f, 0xda, 0x86, 0xd8, 0xbb, 0x79, 0x3a, 0x5c, 0x85, 0x73, 0x26, 0x97, + 0xd8, 0x32, 0xc0, 0x81, 0x34, 0xc2, 0x0c, 0x12, 0x61, 0xda, 0x6d, 0x86, +}; +static const unsigned char kat1338_addin1[] = { + 0x10, 0x9f, 0xbe, 0x0c, 0xda, 0x90, 0xbf, 0x61, 0x09, 0x40, 0x1d, 0xaf, + 0x3e, 0x3d, 0xb8, 0xdf, 0xbb, 0xfe, 0x48, 0x89, 0xe6, 0x6c, 0x7f, 0x4a, + 0x44, 0x7c, 0xfe, 0xa5, 0x9a, 0x21, 0x68, 0x6e, 0xae, 0x41, 0x8b, 0x75, + 0x0e, 0xad, 0x8b, 0xbe, 0x67, 0x29, 0xdd, 0xf5, 0xff, 0xf6, 0xb0, 0x76, +}; +static const unsigned char kat1338_retbits[] = { + 0x44, 0x8e, 0x0c, 0xa2, 0x89, 0x76, 0xd2, 0x12, 0x1f, 0xc7, 0x0d, 0x76, + 0x54, 0xfe, 0x57, 0x41, 0xe5, 0x78, 0x1d, 0xb4, 0x15, 0x17, 0x17, 0x62, + 0x4f, 0xbc, 0xe5, 0xff, 0x29, 0x77, 0xd9, 0x44, 0x04, 0x41, 0xf4, 0x8f, + 0x07, 0xf3, 0x19, 0x8f, 0x67, 0x50, 0x85, 0x69, 0xf7, 0x1c, 0x90, 0xd5, + 0x6d, 0x8e, 0x73, 0xe6, 0x1b, 0x81, 0x80, 0xe6, 0x06, 0x16, 0x4e, 0xe8, + 0x8b, 0x40, 0x20, 0xbf, +}; +static const struct drbg_kat_no_reseed kat1338_t = { + 2, kat1338_entropyin, kat1338_nonce, kat1338_persstr, + kat1338_addin0, kat1338_addin1, kat1338_retbits +}; +static const struct drbg_kat kat1338 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1338_t +}; + +static const unsigned char kat1339_entropyin[] = { + 0xec, 0x41, 0x5f, 0xf0, 0x4d, 0x0d, 0x5f, 0x11, 0x0b, 0xd1, 0x94, 0x79, + 0x45, 0x33, 0x4e, 0x37, 0xb3, 0x3f, 0xdd, 0x7e, 0x01, 0xb8, 0xa4, 0x0a, + 0xe4, 0xfc, 0x57, 0x3a, 0xc2, 0xa4, 0xc9, 0xae, 0x98, 0x31, 0x20, 0x4b, + 0x6e, 0x97, 0xd6, 0x06, 0x65, 0x42, 0xc3, 0x9c, 0x92, 0x26, 0x55, 0x67, +}; +static const unsigned char kat1339_nonce[] = {0}; +static const unsigned char kat1339_persstr[] = {0}; +static const unsigned char kat1339_addin0[] = { + 0x4b, 0x45, 0x48, 0x17, 0xe5, 0xfb, 0x50, 0xd0, 0x57, 0xd8, 0xd8, 0x18, + 0x84, 0x61, 0x68, 0xe3, 0xaf, 0x52, 0x8d, 0x5c, 0x21, 0x30, 0xed, 0x65, + 0xcb, 0x5d, 0x18, 0x77, 0x3f, 0x69, 0xed, 0xc9, 0x64, 0x9f, 0xe1, 0x6b, + 0x1c, 0x47, 0x0d, 0x5b, 0xc8, 0x56, 0x47, 0xb2, 0xb9, 0x2d, 0xfc, 0x03, +}; +static const unsigned char kat1339_addin1[] = { + 0x61, 0xd9, 0x13, 0x23, 0x28, 0x5a, 0x6a, 0x7e, 0x91, 0x42, 0xb1, 0xde, + 0x1c, 0xec, 0x0a, 0x5d, 0x4f, 0x6a, 0x01, 0x5f, 0x2c, 0xe2, 0x8c, 0x60, + 0x5c, 0x5d, 0x07, 0x8c, 0x80, 0xfe, 0x38, 0x58, 0x43, 0xe0, 0x49, 0x98, + 0x46, 0x40, 0x42, 0xda, 0xbb, 0x52, 0x68, 0x64, 0xa7, 0xb6, 0xaf, 0x24, +}; +static const unsigned char kat1339_retbits[] = { + 0x4e, 0xc6, 0xae, 0xcb, 0x7c, 0x52, 0x07, 0xe6, 0xb6, 0x82, 0xa2, 0xd6, + 0x32, 0xcb, 0x1e, 0x95, 0x39, 0x60, 0x21, 0xe4, 0xb5, 0x94, 0x71, 0x1c, + 0xed, 0x37, 0xe8, 0x45, 0x67, 0xc1, 0x10, 0x00, 0x6d, 0x51, 0x51, 0x59, + 0x17, 0xb6, 0x95, 0x4c, 0x54, 0x25, 0xba, 0x70, 0xe3, 0x4a, 0x27, 0x57, + 0xf3, 0x5f, 0x58, 0xee, 0x44, 0xfa, 0xe2, 0x16, 0x4b, 0x6b, 0x18, 0x53, + 0x35, 0x30, 0x0d, 0x7c, +}; +static const struct drbg_kat_no_reseed kat1339_t = { + 3, kat1339_entropyin, kat1339_nonce, kat1339_persstr, + kat1339_addin0, kat1339_addin1, kat1339_retbits +}; +static const struct drbg_kat kat1339 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1339_t +}; + +static const unsigned char kat1340_entropyin[] = { + 0xb4, 0x8c, 0x76, 0xbe, 0x8a, 0x6d, 0xc1, 0x4d, 0x69, 0x9f, 0x5d, 0x6b, + 0x3b, 0xf8, 0x33, 0x0b, 0x87, 0x82, 0x7d, 0x82, 0x83, 0x67, 0xa1, 0x2c, + 0x82, 0xc8, 0x73, 0xc3, 0x0e, 0x3a, 0x0f, 0x94, 0x1d, 0xd6, 0xf0, 0xac, + 0x1a, 0x69, 0x6b, 0x74, 0x25, 0x6d, 0x0b, 0x5f, 0x28, 0x54, 0x4b, 0xa0, +}; +static const unsigned char kat1340_nonce[] = {0}; +static const unsigned char kat1340_persstr[] = {0}; +static const unsigned char kat1340_addin0[] = { + 0x98, 0x53, 0x43, 0x38, 0x2e, 0x88, 0x44, 0xb1, 0xeb, 0xac, 0xd5, 0x72, + 0x41, 0x37, 0xa4, 0x14, 0xf2, 0xf8, 0x55, 0xd0, 0x8e, 0x6a, 0x92, 0xa6, + 0xb7, 0xb3, 0xa8, 0xf1, 0x1a, 0xe5, 0xc3, 0x0a, 0x62, 0x70, 0x06, 0x44, + 0x19, 0xa7, 0xf4, 0x41, 0xff, 0xfe, 0x83, 0x1e, 0x51, 0x41, 0xa0, 0xf4, +}; +static const unsigned char kat1340_addin1[] = { + 0x0c, 0x50, 0x83, 0xeb, 0x44, 0xd4, 0xb6, 0x67, 0xe6, 0xe0, 0xdb, 0x37, + 0xaf, 0x5e, 0xb5, 0xf9, 0x36, 0x44, 0xe1, 0xab, 0x26, 0x97, 0x80, 0xf1, + 0xfb, 0x53, 0x5f, 0xee, 0xeb, 0x0e, 0x19, 0xf1, 0xb5, 0x0f, 0x4c, 0x76, + 0x3c, 0x1e, 0x9d, 0x16, 0xd8, 0xa8, 0xda, 0x08, 0xc9, 0x29, 0x45, 0x6d, +}; +static const unsigned char kat1340_retbits[] = { + 0x3e, 0xfd, 0x43, 0x75, 0xb2, 0x29, 0x4c, 0x35, 0x6d, 0x5b, 0xc3, 0x68, + 0x46, 0xc4, 0xc4, 0x4d, 0xd2, 0x1c, 0x01, 0x2b, 0x50, 0xd8, 0xf3, 0x34, + 0x66, 0x4d, 0x1c, 0x4c, 0x3f, 0x44, 0x22, 0x09, 0x74, 0x1d, 0xba, 0x07, + 0x90, 0xb4, 0x90, 0x40, 0xb3, 0x56, 0x03, 0xd6, 0x1e, 0x29, 0xca, 0xe4, + 0xd3, 0xe4, 0x7a, 0xe0, 0x7f, 0x72, 0x63, 0x83, 0xac, 0xcd, 0xcb, 0xd3, + 0x5f, 0xce, 0xe8, 0xf5, +}; +static const struct drbg_kat_no_reseed kat1340_t = { + 4, kat1340_entropyin, kat1340_nonce, kat1340_persstr, + kat1340_addin0, kat1340_addin1, kat1340_retbits +}; +static const struct drbg_kat kat1340 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1340_t +}; + +static const unsigned char kat1341_entropyin[] = { + 0xa1, 0x20, 0xc2, 0xbb, 0x5c, 0x4e, 0xd3, 0x3a, 0x5e, 0xaf, 0x42, 0x84, + 0x79, 0xf5, 0x58, 0x6f, 0xc7, 0x4e, 0xd4, 0x7d, 0x7d, 0xb6, 0xae, 0x29, + 0x82, 0xb8, 0xa3, 0x71, 0x08, 0x99, 0xb4, 0xac, 0x23, 0x22, 0x4f, 0xaa, + 0x5b, 0x21, 0x5d, 0x9a, 0xd5, 0x8a, 0x85, 0x84, 0x75, 0xe8, 0xf7, 0xd8, +}; +static const unsigned char kat1341_nonce[] = {0}; +static const unsigned char kat1341_persstr[] = {0}; +static const unsigned char kat1341_addin0[] = { + 0xa3, 0x4e, 0x7d, 0x52, 0x34, 0xad, 0x35, 0x33, 0xf1, 0xd4, 0x26, 0x93, + 0x35, 0xa4, 0xde, 0x5d, 0x0c, 0x17, 0x23, 0x2e, 0xcb, 0xf5, 0x54, 0x6f, + 0xab, 0x23, 0xb2, 0x8c, 0xa2, 0x18, 0x9b, 0x4d, 0x06, 0xf6, 0x98, 0x0c, + 0xcb, 0xbc, 0x2c, 0xb5, 0x90, 0x66, 0x29, 0xd8, 0xb1, 0xb0, 0x80, 0x35, +}; +static const unsigned char kat1341_addin1[] = { + 0x25, 0xbd, 0x3b, 0xea, 0x3e, 0x5a, 0x01, 0x19, 0xe3, 0xeb, 0x60, 0xd5, + 0xa6, 0x20, 0x19, 0x5e, 0xf8, 0x29, 0x4b, 0x83, 0xe3, 0x1f, 0x03, 0xce, + 0xa2, 0xda, 0x93, 0xf2, 0x33, 0xcd, 0x25, 0x29, 0xde, 0xcc, 0x86, 0x42, + 0x6e, 0xe2, 0x20, 0x99, 0x7a, 0x53, 0xcc, 0xb9, 0xb3, 0x64, 0x0b, 0xa9, +}; +static const unsigned char kat1341_retbits[] = { + 0xb4, 0xd0, 0x19, 0xa1, 0x35, 0x7c, 0xb2, 0x51, 0x79, 0x3c, 0xe7, 0x20, + 0x05, 0x95, 0x75, 0x76, 0xd4, 0x8c, 0x5b, 0x7d, 0x20, 0x1e, 0xa2, 0x58, + 0x1a, 0x57, 0xdc, 0x65, 0xc9, 0x75, 0xb0, 0x8d, 0x4f, 0x17, 0x58, 0xbf, + 0xcf, 0xba, 0xea, 0x85, 0x57, 0x08, 0xc6, 0x52, 0xba, 0x9e, 0x9c, 0xe2, + 0x8b, 0xc4, 0x2d, 0xff, 0xdf, 0xa9, 0x46, 0xbd, 0x67, 0xc7, 0xe7, 0x65, + 0x30, 0xed, 0x57, 0x58, +}; +static const struct drbg_kat_no_reseed kat1341_t = { + 5, kat1341_entropyin, kat1341_nonce, kat1341_persstr, + kat1341_addin0, kat1341_addin1, kat1341_retbits +}; +static const struct drbg_kat kat1341 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1341_t +}; + +static const unsigned char kat1342_entropyin[] = { + 0x88, 0x58, 0x61, 0xe6, 0x19, 0xe7, 0x1a, 0x1c, 0xcf, 0xac, 0xa3, 0xb5, + 0xa9, 0x20, 0x2b, 0x63, 0x17, 0x06, 0x0b, 0x60, 0xe2, 0x7c, 0xed, 0xd5, + 0xc1, 0xc9, 0xda, 0xba, 0xea, 0x7e, 0x22, 0x57, 0x79, 0xa6, 0xda, 0xef, + 0x56, 0xbb, 0x9c, 0xf9, 0x0e, 0x77, 0x93, 0xbd, 0xc5, 0x3f, 0x2d, 0xed, +}; +static const unsigned char kat1342_nonce[] = {0}; +static const unsigned char kat1342_persstr[] = {0}; +static const unsigned char kat1342_addin0[] = { + 0xdd, 0x89, 0x1a, 0x6a, 0x79, 0xfd, 0xa1, 0x70, 0x80, 0x91, 0x01, 0x9e, + 0x1c, 0x89, 0x87, 0x79, 0x8a, 0x0b, 0x43, 0x0b, 0x3b, 0x8b, 0x29, 0x11, + 0x45, 0x74, 0xa6, 0xaf, 0xc8, 0x7b, 0x15, 0x82, 0x04, 0x85, 0x09, 0x59, + 0x26, 0xf4, 0x11, 0x4b, 0xda, 0x7a, 0x27, 0xb5, 0x56, 0x36, 0x09, 0x49, +}; +static const unsigned char kat1342_addin1[] = { + 0x34, 0x25, 0xec, 0xa9, 0xca, 0xaa, 0x52, 0xf4, 0x05, 0xd2, 0xd5, 0x78, + 0xa3, 0xbe, 0xe3, 0x97, 0x05, 0xef, 0xd1, 0x3e, 0xfc, 0x10, 0x68, 0x0c, + 0x42, 0x3d, 0x7e, 0xdf, 0x14, 0x31, 0x65, 0xb4, 0x7b, 0xe8, 0x80, 0x95, + 0xc1, 0x52, 0x9f, 0x01, 0x19, 0xb5, 0x05, 0x81, 0x36, 0x38, 0x94, 0x38, +}; +static const unsigned char kat1342_retbits[] = { + 0x49, 0xe8, 0x1f, 0x87, 0xbe, 0x29, 0x76, 0xcb, 0xbe, 0x62, 0xe4, 0x9b, + 0xc6, 0xc6, 0xc0, 0x42, 0x44, 0x65, 0x45, 0xb7, 0x9b, 0x19, 0x12, 0x3c, + 0x3b, 0x0d, 0x85, 0x5f, 0x0e, 0x9c, 0xed, 0xd7, 0xc0, 0x05, 0xfb, 0xb1, + 0x3f, 0x83, 0x12, 0x52, 0xd7, 0x4d, 0x97, 0xa2, 0x9e, 0xbc, 0xca, 0x96, + 0xd3, 0xa4, 0xc6, 0x53, 0xcc, 0x3d, 0x55, 0x63, 0x19, 0xbd, 0xad, 0xc1, + 0x1b, 0x48, 0xcd, 0x1d, +}; +static const struct drbg_kat_no_reseed kat1342_t = { + 6, kat1342_entropyin, kat1342_nonce, kat1342_persstr, + kat1342_addin0, kat1342_addin1, kat1342_retbits +}; +static const struct drbg_kat kat1342 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1342_t +}; + +static const unsigned char kat1343_entropyin[] = { + 0xff, 0x65, 0x6c, 0x9b, 0x04, 0x42, 0x70, 0x28, 0x9e, 0xb8, 0xbb, 0x0c, + 0xf7, 0x92, 0x36, 0x0a, 0xfb, 0x51, 0xa2, 0xc1, 0x2f, 0xa9, 0x43, 0xb6, + 0xde, 0x1f, 0x66, 0xf9, 0x70, 0x8e, 0xf3, 0xa2, 0x69, 0xf4, 0xb4, 0x0c, + 0xa7, 0x7f, 0xce, 0x41, 0xe5, 0x51, 0xa3, 0x4e, 0x0f, 0xa7, 0x47, 0x7f, +}; +static const unsigned char kat1343_nonce[] = {0}; +static const unsigned char kat1343_persstr[] = {0}; +static const unsigned char kat1343_addin0[] = { + 0xda, 0xd3, 0x51, 0x0e, 0x96, 0x43, 0x9f, 0x02, 0x39, 0xec, 0x53, 0x05, + 0x6e, 0xe9, 0x02, 0x7f, 0x53, 0x70, 0xcc, 0xcf, 0xc2, 0x15, 0x8e, 0xd9, + 0x2b, 0x0b, 0xa0, 0xc2, 0x6b, 0x77, 0x69, 0x05, 0xc8, 0xae, 0x43, 0xeb, + 0xfb, 0x3a, 0x82, 0x8d, 0x44, 0x4d, 0xfe, 0x6d, 0x51, 0x07, 0xf5, 0xf0, +}; +static const unsigned char kat1343_addin1[] = { + 0x51, 0xc0, 0x55, 0x18, 0x61, 0xdf, 0x38, 0xaf, 0xb8, 0x67, 0xf2, 0xf4, + 0x4c, 0x4f, 0xc7, 0x6f, 0x7b, 0xd1, 0xd7, 0x75, 0x50, 0x0a, 0x0d, 0x55, + 0x93, 0x1a, 0xe0, 0xcc, 0x00, 0xf3, 0x3c, 0x76, 0xae, 0x8b, 0xfa, 0x90, + 0x22, 0x19, 0xb7, 0x01, 0xd3, 0x1c, 0x5d, 0x31, 0x0a, 0x8a, 0x5b, 0x78, +}; +static const unsigned char kat1343_retbits[] = { + 0x92, 0xc3, 0x86, 0x3d, 0x9f, 0xca, 0xa9, 0x00, 0x3d, 0x2f, 0x8c, 0x36, + 0xff, 0xa1, 0x43, 0x50, 0x64, 0xc6, 0xc7, 0xf1, 0x6e, 0x57, 0x2b, 0x1e, + 0x49, 0xba, 0x72, 0x35, 0xef, 0x87, 0x85, 0x4f, 0x7e, 0x0e, 0xe5, 0xda, + 0xb4, 0x1b, 0xee, 0x0e, 0x87, 0x14, 0xe7, 0x2f, 0xfa, 0x7f, 0x64, 0x64, + 0x0b, 0xfb, 0xb8, 0x25, 0x15, 0x8f, 0xb7, 0x00, 0x0b, 0x28, 0xb8, 0xd3, + 0x85, 0xe6, 0x5a, 0x44, +}; +static const struct drbg_kat_no_reseed kat1343_t = { + 7, kat1343_entropyin, kat1343_nonce, kat1343_persstr, + kat1343_addin0, kat1343_addin1, kat1343_retbits +}; +static const struct drbg_kat kat1343 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1343_t +}; + +static const unsigned char kat1344_entropyin[] = { + 0xf6, 0x2d, 0xca, 0xf8, 0x2e, 0xfa, 0xe3, 0xeb, 0x03, 0x7f, 0x46, 0xed, + 0x2d, 0x12, 0xe2, 0xfe, 0x92, 0x5d, 0x04, 0x40, 0x76, 0x9b, 0xad, 0x68, + 0xb8, 0x57, 0xa2, 0x4b, 0xe0, 0xfe, 0x95, 0x68, 0x1e, 0x19, 0x34, 0x05, + 0xfe, 0x61, 0xd5, 0xd8, 0xf7, 0xe8, 0x0b, 0xfd, 0x59, 0xfa, 0xac, 0xf4, +}; +static const unsigned char kat1344_nonce[] = {0}; +static const unsigned char kat1344_persstr[] = {0}; +static const unsigned char kat1344_addin0[] = { + 0x27, 0x4a, 0x3d, 0xc4, 0xe4, 0xe8, 0x6d, 0x8e, 0x06, 0x52, 0x50, 0x2d, + 0xb2, 0xfc, 0xca, 0xbf, 0xaa, 0x54, 0x2b, 0xfb, 0xb7, 0xd6, 0x10, 0x19, + 0x36, 0xb7, 0x69, 0xa7, 0xe4, 0x60, 0xf5, 0x4b, 0x9a, 0x93, 0xeb, 0xa1, + 0x47, 0xb4, 0x11, 0x51, 0x0f, 0x4c, 0x77, 0x92, 0x62, 0x39, 0xd7, 0x1d, +}; +static const unsigned char kat1344_addin1[] = { + 0x30, 0xf7, 0x40, 0xe9, 0x02, 0xc5, 0xd3, 0x0c, 0x92, 0x76, 0x13, 0x26, + 0x72, 0xcc, 0x19, 0x4f, 0x2b, 0xd8, 0x38, 0xff, 0xb1, 0x64, 0x5b, 0xc9, + 0x45, 0x2e, 0xe0, 0xe9, 0xfa, 0x98, 0x20, 0x24, 0xbf, 0x7b, 0xcb, 0x82, + 0xca, 0xa1, 0xce, 0x83, 0xbf, 0x6d, 0xb6, 0xa4, 0x12, 0x81, 0xbe, 0xa3, +}; +static const unsigned char kat1344_retbits[] = { + 0xdf, 0xd9, 0x39, 0xd5, 0xd5, 0x53, 0xb1, 0xf9, 0xfa, 0x99, 0x5a, 0x70, + 0xa7, 0xb7, 0x82, 0x0b, 0x48, 0x9e, 0x30, 0xf4, 0x59, 0x44, 0xf2, 0x13, + 0x6d, 0x2d, 0x2e, 0x2a, 0x76, 0xf2, 0x9f, 0xe9, 0x7f, 0x92, 0x44, 0x08, + 0x8e, 0xd1, 0x3a, 0x2a, 0xcf, 0x0d, 0x5f, 0xd2, 0xca, 0x51, 0x61, 0xd2, + 0x15, 0xf5, 0x94, 0xb7, 0xfa, 0xbe, 0xa1, 0x71, 0xb1, 0x17, 0xf5, 0x91, + 0x26, 0xbb, 0xca, 0xab, +}; +static const struct drbg_kat_no_reseed kat1344_t = { + 8, kat1344_entropyin, kat1344_nonce, kat1344_persstr, + kat1344_addin0, kat1344_addin1, kat1344_retbits +}; +static const struct drbg_kat kat1344 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1344_t +}; + +static const unsigned char kat1345_entropyin[] = { + 0x51, 0x7a, 0xa7, 0x7a, 0x77, 0xe5, 0x53, 0x8f, 0xd7, 0xa1, 0x3a, 0x4f, + 0x5c, 0x0c, 0x9e, 0x7e, 0xe8, 0x02, 0xea, 0xbb, 0x65, 0x63, 0x6d, 0x2c, + 0x01, 0x40, 0xe8, 0xa6, 0x28, 0x74, 0x4e, 0x1f, 0x71, 0xce, 0x4c, 0x27, + 0x9c, 0x77, 0x1b, 0xd8, 0x4f, 0x35, 0x2d, 0x89, 0xff, 0x52, 0xd2, 0x54, +}; +static const unsigned char kat1345_nonce[] = {0}; +static const unsigned char kat1345_persstr[] = {0}; +static const unsigned char kat1345_addin0[] = { + 0x86, 0xd6, 0x4d, 0x0a, 0xef, 0x2f, 0x0b, 0xd3, 0xe2, 0x7e, 0x18, 0x40, + 0x4d, 0x3d, 0xdd, 0x83, 0xa6, 0x1b, 0x0e, 0x7d, 0x4b, 0x03, 0xb7, 0xb4, + 0xfd, 0xda, 0x43, 0xb0, 0xf1, 0x04, 0x7a, 0x62, 0xe4, 0x2a, 0x71, 0xe1, + 0x70, 0x51, 0xd5, 0x02, 0xac, 0x1d, 0x2b, 0x66, 0x4f, 0x24, 0x62, 0x41, +}; +static const unsigned char kat1345_addin1[] = { + 0x4e, 0x98, 0xe3, 0x8d, 0xc2, 0xb3, 0xd8, 0xbf, 0x03, 0x5b, 0xd3, 0x6a, + 0xd4, 0x55, 0xee, 0x61, 0x50, 0xc9, 0x8d, 0x99, 0xf9, 0xaf, 0x5a, 0x42, + 0xcf, 0xcb, 0x93, 0x31, 0x46, 0xd2, 0xee, 0xc8, 0x98, 0x22, 0x1e, 0x22, + 0x8c, 0x97, 0x61, 0x7d, 0x6e, 0xc4, 0x8f, 0x22, 0x3b, 0x52, 0xe9, 0x49, +}; +static const unsigned char kat1345_retbits[] = { + 0xcc, 0xa2, 0xd8, 0x65, 0x31, 0x2c, 0x0e, 0x5e, 0xfb, 0x86, 0x99, 0x84, + 0x86, 0x5b, 0x95, 0xb7, 0xe3, 0x40, 0xe7, 0x4f, 0x90, 0x51, 0x61, 0xea, + 0x6a, 0xa3, 0x14, 0x11, 0x6a, 0xa4, 0x94, 0x47, 0x48, 0x1c, 0xe9, 0xdd, + 0xef, 0xff, 0x1d, 0x2c, 0x33, 0xd9, 0x1c, 0x7f, 0xb4, 0x9f, 0x7d, 0xad, + 0x56, 0xef, 0xcb, 0xf2, 0x41, 0x44, 0x45, 0x6b, 0xe2, 0x28, 0x10, 0x7a, + 0xad, 0xae, 0x80, 0x1c, +}; +static const struct drbg_kat_no_reseed kat1345_t = { + 9, kat1345_entropyin, kat1345_nonce, kat1345_persstr, + kat1345_addin0, kat1345_addin1, kat1345_retbits +}; +static const struct drbg_kat kat1345 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1345_t +}; + +static const unsigned char kat1346_entropyin[] = { + 0xfe, 0xf1, 0xe5, 0x7a, 0x77, 0x0a, 0x7f, 0xee, 0xf1, 0x9f, 0xab, 0x12, + 0xc0, 0xff, 0x7b, 0xd7, 0x89, 0x24, 0xce, 0xa8, 0x3e, 0x5a, 0x5e, 0x0d, + 0x6d, 0x0a, 0x73, 0x0c, 0x17, 0xc3, 0x92, 0x06, 0x32, 0x71, 0xf4, 0xa8, + 0x63, 0x76, 0xb8, 0x12, 0xfd, 0x31, 0xea, 0x9f, 0xf4, 0x3d, 0xb4, 0x0b, +}; +static const unsigned char kat1346_nonce[] = {0}; +static const unsigned char kat1346_persstr[] = {0}; +static const unsigned char kat1346_addin0[] = { + 0xd6, 0xbf, 0xd7, 0xab, 0x6e, 0xdc, 0x1f, 0x8d, 0xd4, 0x12, 0xa7, 0x47, + 0x4d, 0xef, 0x9c, 0xe5, 0x34, 0xe7, 0xc3, 0x5e, 0xcd, 0xa3, 0xbf, 0xea, + 0x57, 0xa9, 0x8a, 0xaa, 0xc7, 0xbc, 0x25, 0x1b, 0x9d, 0x1a, 0xe4, 0xc1, + 0xd6, 0xfd, 0x91, 0x1e, 0xfa, 0x61, 0x13, 0x0f, 0xb8, 0x4e, 0x4c, 0x74, +}; +static const unsigned char kat1346_addin1[] = { + 0x72, 0xed, 0x24, 0xf1, 0x04, 0xf5, 0x51, 0x3d, 0x27, 0x77, 0xc7, 0xf1, + 0xb6, 0x23, 0x73, 0x63, 0x08, 0x12, 0x60, 0xa2, 0xb2, 0x3d, 0xa3, 0xdb, + 0x0e, 0x01, 0xb1, 0x4e, 0x8a, 0xc7, 0x23, 0x66, 0xf6, 0x61, 0x6b, 0x4d, + 0x92, 0xaf, 0x99, 0xb4, 0x9b, 0x5c, 0x84, 0xc9, 0x59, 0xb9, 0x82, 0xc3, +}; +static const unsigned char kat1346_retbits[] = { + 0x87, 0x95, 0x13, 0xa1, 0xea, 0x37, 0x89, 0xed, 0x39, 0x15, 0xdc, 0xe9, + 0x69, 0x7b, 0x9e, 0x76, 0xc6, 0x75, 0xb9, 0x39, 0xeb, 0x80, 0x93, 0xd4, + 0x1d, 0x0a, 0xdc, 0x3e, 0xd3, 0xae, 0xb9, 0x8b, 0x67, 0xe2, 0x4c, 0x0c, + 0x3f, 0x6a, 0xe8, 0xa6, 0x1f, 0x0b, 0x77, 0x2b, 0xd4, 0x0a, 0xcb, 0x6c, + 0x85, 0x63, 0x32, 0x33, 0x35, 0x7a, 0xf5, 0x32, 0x9f, 0xc7, 0xa0, 0x32, + 0x98, 0x87, 0x58, 0xa3, +}; +static const struct drbg_kat_no_reseed kat1346_t = { + 10, kat1346_entropyin, kat1346_nonce, kat1346_persstr, + kat1346_addin0, kat1346_addin1, kat1346_retbits +}; +static const struct drbg_kat kat1346 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1346_t +}; + +static const unsigned char kat1347_entropyin[] = { + 0x22, 0x0f, 0xe6, 0x9b, 0x9a, 0x50, 0x52, 0xa5, 0x2e, 0x58, 0xa2, 0x6a, + 0x79, 0xe3, 0x9e, 0x0b, 0x48, 0x6c, 0xfc, 0xa7, 0x13, 0x95, 0xa5, 0x89, + 0xcd, 0x4a, 0xd3, 0x96, 0x2c, 0x03, 0xd2, 0x78, 0x99, 0x7f, 0x35, 0x94, + 0x7a, 0xd6, 0x9e, 0x37, 0xb3, 0x0a, 0x7e, 0xf8, 0xeb, 0x12, 0x67, 0x97, +}; +static const unsigned char kat1347_nonce[] = {0}; +static const unsigned char kat1347_persstr[] = {0}; +static const unsigned char kat1347_addin0[] = { + 0xa5, 0x2b, 0xc9, 0x27, 0x9f, 0x5e, 0x0a, 0x70, 0xe4, 0x73, 0xaf, 0x3f, + 0x76, 0x89, 0x9b, 0xb9, 0xe5, 0xee, 0xe8, 0x46, 0x84, 0x8f, 0xd1, 0x81, + 0x2b, 0x76, 0xa5, 0xfc, 0xa6, 0x18, 0xcb, 0x43, 0x30, 0x3b, 0xfc, 0x93, + 0x75, 0x38, 0x99, 0xae, 0x92, 0x58, 0x5d, 0x90, 0xd6, 0x48, 0x50, 0x1f, +}; +static const unsigned char kat1347_addin1[] = { + 0x9c, 0x37, 0x5f, 0xa7, 0x53, 0x41, 0xaa, 0xb2, 0xda, 0x8b, 0x02, 0x40, + 0x75, 0x23, 0x8f, 0x17, 0x88, 0xef, 0x1d, 0x2e, 0x64, 0x67, 0x8a, 0x64, + 0x74, 0x36, 0x6a, 0x29, 0x80, 0x12, 0xae, 0x75, 0x72, 0xe3, 0x09, 0xf3, + 0x82, 0x08, 0x94, 0x1d, 0x5d, 0xac, 0x4c, 0x61, 0xd8, 0xf2, 0x72, 0xfd, +}; +static const unsigned char kat1347_retbits[] = { + 0x7d, 0x06, 0x7c, 0x72, 0x0b, 0xfe, 0x15, 0x80, 0x5f, 0x3d, 0xfd, 0xe2, + 0x39, 0x64, 0xe8, 0xce, 0xf1, 0x18, 0x83, 0x42, 0x84, 0x00, 0x86, 0x56, + 0xf3, 0x2a, 0xcb, 0xfc, 0x20, 0xba, 0x52, 0xb7, 0x81, 0x88, 0xd8, 0x77, + 0x48, 0x67, 0x20, 0x34, 0x1d, 0xc9, 0x71, 0xfe, 0x78, 0x61, 0x9d, 0xb5, + 0xf1, 0x77, 0xba, 0x61, 0x55, 0x3d, 0x41, 0xda, 0x2f, 0x4e, 0xc6, 0xdf, + 0x82, 0x67, 0xaf, 0xd7, +}; +static const struct drbg_kat_no_reseed kat1347_t = { + 11, kat1347_entropyin, kat1347_nonce, kat1347_persstr, + kat1347_addin0, kat1347_addin1, kat1347_retbits +}; +static const struct drbg_kat kat1347 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1347_t +}; + +static const unsigned char kat1348_entropyin[] = { + 0x7c, 0x75, 0xed, 0xd1, 0x67, 0x5f, 0x4a, 0xc8, 0x44, 0xb9, 0xde, 0xad, + 0x1f, 0x8f, 0x74, 0x3e, 0x8f, 0xa6, 0x37, 0x2b, 0xe5, 0x7e, 0xc6, 0xb7, + 0x2e, 0x7a, 0x01, 0xec, 0x6b, 0x93, 0x71, 0xde, 0xd2, 0xe6, 0x4d, 0x8f, + 0x4b, 0x11, 0xd4, 0x08, 0x9a, 0xcc, 0x47, 0x3b, 0x59, 0x50, 0x76, 0x02, +}; +static const unsigned char kat1348_nonce[] = {0}; +static const unsigned char kat1348_persstr[] = {0}; +static const unsigned char kat1348_addin0[] = { + 0xc6, 0x56, 0x4c, 0x3c, 0x43, 0xfd, 0x2c, 0x74, 0xb9, 0xd4, 0x8c, 0x4f, + 0x8e, 0xde, 0xcc, 0x8f, 0xc0, 0x0a, 0xf0, 0x6b, 0x34, 0x36, 0x33, 0x02, + 0xf8, 0x17, 0x1e, 0xe4, 0x93, 0xcd, 0xf1, 0x43, 0xd0, 0xdb, 0x6d, 0x61, + 0xd8, 0xaa, 0xe4, 0xf0, 0xc6, 0x58, 0x53, 0xde, 0xea, 0x50, 0xee, 0x90, +}; +static const unsigned char kat1348_addin1[] = { + 0xe8, 0x62, 0x66, 0xb8, 0x3f, 0x16, 0x8f, 0xe6, 0x16, 0xdb, 0x77, 0x03, + 0x6b, 0xc1, 0xd0, 0x1d, 0xda, 0xb1, 0x4f, 0x13, 0x25, 0x35, 0xe9, 0x98, + 0x1b, 0x77, 0xa6, 0x87, 0xd7, 0x58, 0xe8, 0x45, 0x44, 0x0b, 0xaa, 0x8b, + 0xf0, 0x8b, 0x91, 0xa2, 0xd8, 0x40, 0x8b, 0x89, 0xf6, 0xbc, 0x5a, 0x60, +}; +static const unsigned char kat1348_retbits[] = { + 0xd4, 0xcd, 0x79, 0x0f, 0x30, 0x64, 0xe4, 0xb6, 0x9c, 0x59, 0xdb, 0x69, + 0xfc, 0xb7, 0x16, 0x8f, 0x13, 0x52, 0xc2, 0xff, 0xc7, 0x03, 0xec, 0xc2, + 0x23, 0x31, 0x07, 0x91, 0x1f, 0x22, 0x4d, 0x79, 0x29, 0x4c, 0xe6, 0x35, + 0x47, 0xa8, 0xd9, 0x69, 0x14, 0x17, 0xac, 0x3a, 0x98, 0x96, 0x0e, 0xeb, + 0x6a, 0x1d, 0xf2, 0xd9, 0xbe, 0xa6, 0x62, 0x06, 0xf5, 0x43, 0x43, 0x35, + 0xe2, 0x53, 0x3e, 0xc3, +}; +static const struct drbg_kat_no_reseed kat1348_t = { + 12, kat1348_entropyin, kat1348_nonce, kat1348_persstr, + kat1348_addin0, kat1348_addin1, kat1348_retbits +}; +static const struct drbg_kat kat1348 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1348_t +}; + +static const unsigned char kat1349_entropyin[] = { + 0xfb, 0x16, 0x6b, 0xe7, 0x29, 0xfd, 0x92, 0x5d, 0x5a, 0xa8, 0xa0, 0x3f, + 0x63, 0x56, 0xd2, 0xb2, 0x24, 0x24, 0xf0, 0x12, 0xc5, 0x99, 0xbe, 0x84, + 0xc2, 0xd6, 0xcf, 0x9c, 0x82, 0xd9, 0xbc, 0xc3, 0x83, 0xda, 0xe4, 0x90, + 0x48, 0x48, 0x56, 0xe0, 0xab, 0x53, 0x78, 0x9e, 0x15, 0x67, 0x84, 0x26, +}; +static const unsigned char kat1349_nonce[] = {0}; +static const unsigned char kat1349_persstr[] = {0}; +static const unsigned char kat1349_addin0[] = { + 0x57, 0x16, 0xe5, 0x59, 0xc6, 0xac, 0xaf, 0x47, 0x4f, 0xec, 0x9c, 0x6e, + 0xe9, 0x15, 0x24, 0xa7, 0x49, 0x66, 0x8a, 0x6f, 0xcc, 0xd2, 0x98, 0x1d, + 0xe4, 0x4b, 0x05, 0x40, 0x2a, 0x23, 0x21, 0x7b, 0x8d, 0x03, 0x08, 0xbf, + 0x73, 0x85, 0xfa, 0xb4, 0xa8, 0x33, 0xfb, 0x68, 0x45, 0x19, 0xce, 0x75, +}; +static const unsigned char kat1349_addin1[] = { + 0x0b, 0xd4, 0x80, 0x09, 0x5b, 0xf6, 0x4d, 0x19, 0x36, 0x6d, 0xa2, 0x8d, + 0x9a, 0x04, 0xfb, 0xc6, 0x03, 0x4c, 0xba, 0x8c, 0x9d, 0x6e, 0xd1, 0xbb, + 0x38, 0x6b, 0x54, 0xdf, 0x5f, 0x83, 0x68, 0xc0, 0x75, 0x9c, 0x64, 0x46, + 0xc7, 0x32, 0x53, 0x0c, 0x8d, 0xc8, 0xca, 0x37, 0xab, 0x06, 0x25, 0x0a, +}; +static const unsigned char kat1349_retbits[] = { + 0xd7, 0x89, 0x6e, 0x5a, 0x85, 0x1c, 0xff, 0x76, 0x32, 0x8a, 0xd4, 0x99, + 0xfa, 0x3e, 0xe2, 0x8c, 0x74, 0xce, 0xdf, 0x99, 0x84, 0x0c, 0xc9, 0x21, + 0x6a, 0xe8, 0x6a, 0x0e, 0xc3, 0xdf, 0x2f, 0x0d, 0x9e, 0x7c, 0xa1, 0x4c, + 0x40, 0xf9, 0x4e, 0x17, 0xae, 0xd5, 0xa9, 0xea, 0x2b, 0xa1, 0xd1, 0x7b, + 0x06, 0xcf, 0x17, 0x24, 0x01, 0xd9, 0xe3, 0x46, 0x73, 0xb8, 0xcb, 0x98, + 0x9c, 0xd8, 0xd8, 0x55, +}; +static const struct drbg_kat_no_reseed kat1349_t = { + 13, kat1349_entropyin, kat1349_nonce, kat1349_persstr, + kat1349_addin0, kat1349_addin1, kat1349_retbits +}; +static const struct drbg_kat kat1349 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1349_t +}; + +static const unsigned char kat1350_entropyin[] = { + 0x93, 0x7b, 0xc5, 0x2b, 0x85, 0x33, 0x1a, 0xac, 0x7c, 0x3e, 0x19, 0x8b, + 0x6e, 0x8f, 0x4a, 0x53, 0x62, 0xb2, 0xe3, 0x89, 0x66, 0x2b, 0x5a, 0xd7, + 0xd7, 0xce, 0x7e, 0x6f, 0x27, 0x4d, 0x3f, 0xbd, 0x5d, 0x1a, 0x3a, 0x83, + 0x47, 0x45, 0x5b, 0x01, 0x9d, 0xdb, 0xb5, 0x75, 0x3d, 0x3f, 0x0f, 0x29, +}; +static const unsigned char kat1350_nonce[] = {0}; +static const unsigned char kat1350_persstr[] = {0}; +static const unsigned char kat1350_addin0[] = { + 0x8c, 0xa6, 0x25, 0xe0, 0xda, 0xf6, 0x5e, 0xcb, 0x70, 0xcc, 0xc6, 0x3b, + 0xbe, 0x88, 0x72, 0x0e, 0xce, 0x7a, 0x41, 0x5b, 0x12, 0x54, 0x2c, 0x59, + 0xdb, 0x48, 0x8b, 0xd0, 0x56, 0x23, 0x74, 0x12, 0x1f, 0x25, 0x6c, 0x0d, + 0x2e, 0x55, 0xb3, 0x5f, 0xf7, 0xef, 0x9e, 0x57, 0x00, 0x68, 0xf4, 0xa3, +}; +static const unsigned char kat1350_addin1[] = { + 0xe5, 0x11, 0xe7, 0x7b, 0x98, 0xdf, 0x72, 0xd3, 0xe4, 0xc1, 0x75, 0xb5, + 0x8b, 0x71, 0x82, 0xfa, 0x72, 0x9a, 0x61, 0x64, 0x96, 0x59, 0xff, 0x11, + 0x7d, 0x9b, 0x4c, 0x51, 0x4c, 0xf6, 0x94, 0xfe, 0xa2, 0x73, 0x1b, 0x17, + 0x0d, 0x0b, 0xab, 0xbf, 0x6b, 0x6b, 0xf8, 0x19, 0x8b, 0xe6, 0xd9, 0x32, +}; +static const unsigned char kat1350_retbits[] = { + 0xd9, 0xd3, 0xac, 0x14, 0x80, 0x32, 0x34, 0x39, 0xe9, 0xf8, 0xf0, 0x9a, + 0x54, 0xb3, 0x66, 0x86, 0x84, 0x89, 0x0f, 0xad, 0x51, 0xad, 0x31, 0x4c, + 0x8e, 0x14, 0xbf, 0x0f, 0xdb, 0x42, 0x97, 0x38, 0xb8, 0x95, 0x5e, 0x3d, + 0x2d, 0x92, 0x8f, 0x24, 0x03, 0xf2, 0x0c, 0xac, 0xa2, 0x06, 0x57, 0x95, + 0xc0, 0xad, 0xaa, 0x30, 0xa5, 0xc4, 0x68, 0x3a, 0x08, 0xd8, 0x30, 0x74, + 0x63, 0x3b, 0xe8, 0xf2, +}; +static const struct drbg_kat_no_reseed kat1350_t = { + 14, kat1350_entropyin, kat1350_nonce, kat1350_persstr, + kat1350_addin0, kat1350_addin1, kat1350_retbits +}; +static const struct drbg_kat kat1350 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1350_t +}; + +static const unsigned char kat1351_entropyin[] = { + 0x31, 0xd9, 0xb2, 0x6b, 0x6e, 0xb7, 0xfb, 0x56, 0x9c, 0x1d, 0x32, 0x42, + 0xb5, 0x0a, 0x19, 0xe1, 0x3f, 0x7b, 0xfc, 0xf0, 0xb1, 0x5e, 0xa7, 0x39, + 0x97, 0xac, 0xac, 0x84, 0x7b, 0x3a, 0xb8, 0x40, 0xa7, 0x2d, 0x03, 0xff, + 0x21, 0xf6, 0xb5, 0x2e, 0x4f, 0x65, 0x55, 0xfb, 0x8a, 0x4c, 0xa9, 0x7d, +}; +static const unsigned char kat1351_nonce[] = {0}; +static const unsigned char kat1351_persstr[] = { + 0xdf, 0x36, 0x22, 0x28, 0x2c, 0x7d, 0x1c, 0xcd, 0xd1, 0x78, 0x4e, 0x50, + 0x81, 0x37, 0xc2, 0xd0, 0xc9, 0x12, 0xb7, 0x90, 0x8c, 0xa7, 0x5e, 0x28, + 0x32, 0x94, 0x55, 0xe3, 0x6d, 0x91, 0x74, 0x53, 0x05, 0x18, 0xd2, 0x83, + 0x95, 0x11, 0x4d, 0x1c, 0xc8, 0xaf, 0x71, 0xac, 0xe5, 0x25, 0x3e, 0x03, +}; +static const unsigned char kat1351_addin0[] = {0}; +static const unsigned char kat1351_addin1[] = {0}; +static const unsigned char kat1351_retbits[] = { + 0xbc, 0xcd, 0x3f, 0xea, 0x43, 0xdf, 0x70, 0xaf, 0xe2, 0xd9, 0x57, 0x8f, + 0x4a, 0xc4, 0xb4, 0x08, 0x7a, 0x0e, 0xd3, 0x72, 0xa6, 0x74, 0x87, 0x08, + 0x9d, 0x9d, 0xe9, 0x38, 0x69, 0x93, 0x65, 0xae, 0xfc, 0x92, 0x4b, 0x7d, + 0xc9, 0xd8, 0x38, 0x84, 0xbe, 0x27, 0x46, 0xe1, 0x96, 0xce, 0x89, 0xe0, + 0x7e, 0xde, 0x23, 0x3d, 0x16, 0x34, 0x2d, 0x22, 0x75, 0x71, 0xf0, 0x89, + 0x71, 0x60, 0x95, 0x22, +}; +static const struct drbg_kat_no_reseed kat1351_t = { + 0, kat1351_entropyin, kat1351_nonce, kat1351_persstr, + kat1351_addin0, kat1351_addin1, kat1351_retbits +}; +static const struct drbg_kat kat1351 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1351_t +}; + +static const unsigned char kat1352_entropyin[] = { + 0xd2, 0x35, 0x6c, 0x94, 0xec, 0x89, 0x86, 0x9e, 0x29, 0x40, 0x07, 0x26, + 0x00, 0x2d, 0xa7, 0x2c, 0xa8, 0x25, 0xa5, 0xf1, 0x12, 0xf0, 0xc5, 0xff, + 0xf6, 0xbb, 0x08, 0xa8, 0x97, 0x58, 0xdd, 0x51, 0xd0, 0xfc, 0x84, 0xb8, + 0x10, 0xeb, 0xed, 0xe6, 0xb6, 0x2f, 0x1b, 0x40, 0x3e, 0xd7, 0x82, 0xe0, +}; +static const unsigned char kat1352_nonce[] = {0}; +static const unsigned char kat1352_persstr[] = { + 0x12, 0xa8, 0x85, 0xaf, 0x97, 0x5d, 0xac, 0xff, 0x4c, 0x4c, 0x7d, 0x55, + 0x56, 0x1f, 0xf5, 0x49, 0xa5, 0x65, 0xf1, 0xd7, 0xf6, 0x06, 0x07, 0xd8, + 0xfb, 0x9d, 0xde, 0x53, 0xe1, 0x08, 0xe9, 0x2c, 0x8b, 0x99, 0xf5, 0x88, + 0x19, 0x23, 0x68, 0xca, 0xfa, 0x62, 0x9e, 0x52, 0xb2, 0xd4, 0x2b, 0xc0, +}; +static const unsigned char kat1352_addin0[] = {0}; +static const unsigned char kat1352_addin1[] = {0}; +static const unsigned char kat1352_retbits[] = { + 0x2f, 0x8b, 0x37, 0xe4, 0x31, 0x9e, 0x72, 0x82, 0x6b, 0xdb, 0x3a, 0x40, + 0xe5, 0x32, 0x90, 0x74, 0xa9, 0x01, 0x56, 0x56, 0xfc, 0xae, 0xe5, 0x93, + 0x3d, 0x01, 0x7e, 0x2f, 0x3f, 0x3b, 0xf5, 0x67, 0x13, 0x75, 0xbe, 0x0c, + 0x89, 0xbc, 0xab, 0xc2, 0x03, 0x7e, 0x58, 0x77, 0x2b, 0xf5, 0x87, 0x7c, + 0x41, 0x42, 0xc0, 0xb8, 0xd9, 0xf0, 0x28, 0x6e, 0x12, 0xe5, 0x6a, 0x38, + 0xb7, 0xa4, 0xf0, 0xff, +}; +static const struct drbg_kat_no_reseed kat1352_t = { + 1, kat1352_entropyin, kat1352_nonce, kat1352_persstr, + kat1352_addin0, kat1352_addin1, kat1352_retbits +}; +static const struct drbg_kat kat1352 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1352_t +}; + +static const unsigned char kat1353_entropyin[] = { + 0x48, 0x41, 0x6d, 0xf6, 0xc4, 0x9b, 0x85, 0xfc, 0x18, 0xcd, 0xe3, 0x1c, + 0xab, 0x33, 0x7a, 0xc4, 0xe6, 0x14, 0xcd, 0xed, 0xb6, 0xb5, 0xf7, 0x08, + 0x0a, 0xd8, 0x15, 0xad, 0xe9, 0x58, 0xdd, 0x3a, 0x12, 0x11, 0x16, 0x51, + 0x1e, 0xd3, 0x36, 0x2c, 0xe3, 0x56, 0xe2, 0x86, 0x1c, 0x79, 0x7f, 0x3b, +}; +static const unsigned char kat1353_nonce[] = {0}; +static const unsigned char kat1353_persstr[] = { + 0xd7, 0x28, 0x50, 0x32, 0x3c, 0xc6, 0x3c, 0xba, 0x56, 0x6d, 0xcb, 0xdd, + 0xde, 0x35, 0xa7, 0x0c, 0x69, 0x09, 0x78, 0x92, 0xe6, 0x1e, 0x04, 0x1a, + 0xc6, 0x47, 0x39, 0x68, 0x9a, 0x22, 0x5a, 0xf0, 0x8a, 0x4e, 0x46, 0x6a, + 0xf7, 0x89, 0xb0, 0x40, 0xa0, 0x97, 0x54, 0x54, 0x5c, 0x24, 0xc7, 0x09, +}; +static const unsigned char kat1353_addin0[] = {0}; +static const unsigned char kat1353_addin1[] = {0}; +static const unsigned char kat1353_retbits[] = { + 0x0c, 0x44, 0x98, 0x85, 0x2f, 0x8b, 0x8a, 0x75, 0x46, 0xe0, 0xa2, 0x4c, + 0x18, 0xd6, 0xa3, 0x27, 0x21, 0x4f, 0x00, 0x79, 0x94, 0xfd, 0xbf, 0xad, + 0x72, 0xbf, 0x91, 0xf6, 0x7c, 0x2e, 0x2e, 0xc4, 0x1c, 0x83, 0x5b, 0x47, + 0xe1, 0x1a, 0xa7, 0x66, 0x3e, 0xb2, 0xaa, 0xb4, 0x23, 0xe8, 0xfb, 0xa7, + 0x3b, 0xf7, 0xb0, 0x01, 0x15, 0x56, 0x16, 0xe5, 0x80, 0x0c, 0x79, 0xdd, + 0x27, 0x79, 0xbe, 0x47, +}; +static const struct drbg_kat_no_reseed kat1353_t = { + 2, kat1353_entropyin, kat1353_nonce, kat1353_persstr, + kat1353_addin0, kat1353_addin1, kat1353_retbits +}; +static const struct drbg_kat kat1353 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1353_t +}; + +static const unsigned char kat1354_entropyin[] = { + 0xbc, 0x26, 0x44, 0xdf, 0xa4, 0xeb, 0x26, 0xab, 0xea, 0x11, 0xb5, 0xc8, + 0xc2, 0xb7, 0x53, 0x74, 0xc0, 0x56, 0x92, 0x78, 0x09, 0xfa, 0x35, 0x7b, + 0xfe, 0xd4, 0xa1, 0x4f, 0xbe, 0x17, 0xe8, 0x28, 0x6c, 0x6b, 0x34, 0x5e, + 0xac, 0x5b, 0x5b, 0x6c, 0x80, 0xc0, 0x74, 0x4f, 0x4c, 0x48, 0xc4, 0x00, +}; +static const unsigned char kat1354_nonce[] = {0}; +static const unsigned char kat1354_persstr[] = { + 0xe8, 0xf9, 0x35, 0x4d, 0x45, 0xe3, 0x6c, 0x31, 0x7d, 0xbf, 0xaf, 0x60, + 0xfa, 0xc9, 0x03, 0x53, 0xa2, 0x0b, 0x96, 0x36, 0xae, 0xc3, 0xae, 0x3d, + 0xc4, 0x4a, 0x28, 0x7b, 0x3c, 0x9e, 0x52, 0xbf, 0x0a, 0x1e, 0x99, 0x9f, + 0xcb, 0x2a, 0x92, 0xab, 0x35, 0x20, 0x06, 0xc8, 0xab, 0x36, 0xbc, 0x1e, +}; +static const unsigned char kat1354_addin0[] = {0}; +static const unsigned char kat1354_addin1[] = {0}; +static const unsigned char kat1354_retbits[] = { + 0xfc, 0xb1, 0x6f, 0x5c, 0x46, 0x57, 0xcd, 0x83, 0x55, 0xdb, 0x7a, 0x35, + 0x93, 0xd3, 0x45, 0xd0, 0x36, 0xe0, 0xea, 0x4e, 0xdb, 0x37, 0x78, 0x1e, + 0x2b, 0xb6, 0xe5, 0x0d, 0x04, 0x80, 0xfb, 0x82, 0x0f, 0xcb, 0x94, 0x44, + 0x9c, 0x69, 0x5d, 0x2c, 0xf4, 0xc9, 0xc3, 0x11, 0x2d, 0x41, 0xbe, 0xb5, + 0xcc, 0x05, 0x80, 0x8f, 0x1c, 0x93, 0x5d, 0xa6, 0xda, 0x03, 0x57, 0x36, + 0xba, 0xc8, 0x83, 0xaa, +}; +static const struct drbg_kat_no_reseed kat1354_t = { + 3, kat1354_entropyin, kat1354_nonce, kat1354_persstr, + kat1354_addin0, kat1354_addin1, kat1354_retbits +}; +static const struct drbg_kat kat1354 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1354_t +}; + +static const unsigned char kat1355_entropyin[] = { + 0x28, 0xaf, 0x8c, 0x2a, 0x47, 0xa3, 0x7d, 0x7e, 0xcd, 0x46, 0x7e, 0x4c, + 0xc2, 0x3e, 0xc0, 0xa9, 0x25, 0xb3, 0x25, 0x28, 0x7f, 0xeb, 0xb1, 0x03, + 0x60, 0x60, 0xd3, 0x72, 0x98, 0x55, 0xc2, 0x76, 0x0d, 0x2c, 0xfa, 0xfd, + 0x42, 0x3b, 0xac, 0x1b, 0xa1, 0x68, 0x40, 0x6b, 0x0b, 0x0e, 0xc7, 0x94, +}; +static const unsigned char kat1355_nonce[] = {0}; +static const unsigned char kat1355_persstr[] = { + 0xc8, 0xc0, 0x74, 0xae, 0x56, 0x06, 0xab, 0xdf, 0x47, 0x17, 0xfa, 0x73, + 0x08, 0xc6, 0x0f, 0xa9, 0x72, 0x7d, 0x81, 0x73, 0xb5, 0xf2, 0x2e, 0x50, + 0xc9, 0x58, 0x5a, 0x10, 0x12, 0x22, 0x5e, 0xe0, 0x42, 0x1d, 0x47, 0x86, + 0x33, 0x64, 0x8d, 0x0e, 0xc9, 0xf6, 0x1d, 0x94, 0x5b, 0xfa, 0x42, 0xcc, +}; +static const unsigned char kat1355_addin0[] = {0}; +static const unsigned char kat1355_addin1[] = {0}; +static const unsigned char kat1355_retbits[] = { + 0x0f, 0x28, 0x75, 0x67, 0x5e, 0x05, 0x4b, 0xd6, 0xfd, 0xe2, 0x94, 0x8b, + 0x72, 0xf3, 0xa2, 0x60, 0x38, 0x5f, 0xd4, 0x6b, 0x90, 0xe3, 0x0f, 0xd5, + 0x64, 0xa0, 0xbd, 0x14, 0xe5, 0x15, 0x61, 0xb4, 0x0f, 0x1f, 0xe1, 0xe3, + 0x1c, 0x7a, 0xe7, 0xcc, 0xe8, 0x51, 0xa6, 0x1a, 0x85, 0xf0, 0x6a, 0xb0, + 0xd9, 0xa4, 0x94, 0xda, 0x82, 0xc0, 0xbf, 0x68, 0x08, 0x11, 0x39, 0x40, + 0x2b, 0x2b, 0xe6, 0x4f, +}; +static const struct drbg_kat_no_reseed kat1355_t = { + 4, kat1355_entropyin, kat1355_nonce, kat1355_persstr, + kat1355_addin0, kat1355_addin1, kat1355_retbits +}; +static const struct drbg_kat kat1355 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1355_t +}; + +static const unsigned char kat1356_entropyin[] = { + 0xe6, 0x1c, 0xb2, 0xc1, 0x7c, 0x1e, 0xeb, 0x30, 0xff, 0x49, 0xd1, 0x49, + 0x54, 0x17, 0x1f, 0xad, 0xae, 0x3a, 0xec, 0xf9, 0xa2, 0xa3, 0x9b, 0x7e, + 0xce, 0x60, 0x66, 0xcd, 0x85, 0xe3, 0xa0, 0x8e, 0x2a, 0xec, 0xe5, 0x6b, + 0x2b, 0x82, 0x1a, 0x35, 0x7e, 0xa2, 0x0c, 0x28, 0x60, 0xdf, 0xf7, 0x94, +}; +static const unsigned char kat1356_nonce[] = {0}; +static const unsigned char kat1356_persstr[] = { + 0xa1, 0x0b, 0x0a, 0xce, 0x38, 0x52, 0x24, 0x34, 0x6e, 0x8d, 0x61, 0xf4, + 0xcf, 0x2b, 0xd5, 0x8c, 0xba, 0x38, 0xfb, 0xf9, 0x69, 0xcc, 0x5d, 0xe3, + 0x40, 0x2f, 0x6f, 0x85, 0xa5, 0x55, 0x70, 0x4c, 0x01, 0x6b, 0x5c, 0x3d, + 0x21, 0x95, 0x50, 0xc5, 0x1d, 0x96, 0x71, 0x3d, 0x5f, 0x06, 0x7f, 0x37, +}; +static const unsigned char kat1356_addin0[] = {0}; +static const unsigned char kat1356_addin1[] = {0}; +static const unsigned char kat1356_retbits[] = { + 0x0c, 0x01, 0xe9, 0x21, 0x7f, 0x5a, 0xde, 0x5e, 0xd2, 0x16, 0x0b, 0x7d, + 0xa9, 0xdb, 0xf7, 0xb4, 0x86, 0x08, 0x12, 0x05, 0x83, 0xfb, 0xda, 0x0d, + 0x97, 0xc6, 0x4e, 0xad, 0xf8, 0x14, 0xd3, 0x08, 0x9a, 0x5c, 0x83, 0xef, + 0x6f, 0x38, 0xfa, 0xd7, 0xae, 0x3c, 0x6a, 0x12, 0x0a, 0x9d, 0x4a, 0x6b, + 0xee, 0xff, 0x52, 0x35, 0xae, 0xcf, 0x61, 0x0d, 0x43, 0xe4, 0x2f, 0x33, + 0x2d, 0x4a, 0x0d, 0x77, +}; +static const struct drbg_kat_no_reseed kat1356_t = { + 5, kat1356_entropyin, kat1356_nonce, kat1356_persstr, + kat1356_addin0, kat1356_addin1, kat1356_retbits +}; +static const struct drbg_kat kat1356 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1356_t +}; + +static const unsigned char kat1357_entropyin[] = { + 0x17, 0xc1, 0x89, 0x10, 0xa6, 0x7e, 0x7c, 0x61, 0x08, 0x0c, 0xe2, 0x4c, + 0xee, 0x2c, 0xf2, 0xda, 0x92, 0xef, 0xa7, 0x03, 0xbc, 0x13, 0x60, 0x69, + 0xe0, 0x21, 0x54, 0x90, 0x73, 0x1f, 0x05, 0xd5, 0x66, 0xac, 0x86, 0x42, + 0x58, 0xcb, 0x02, 0x8d, 0x32, 0x80, 0x8a, 0xbc, 0x7f, 0x18, 0xe0, 0xef, +}; +static const unsigned char kat1357_nonce[] = {0}; +static const unsigned char kat1357_persstr[] = { + 0x4e, 0x0a, 0xcc, 0x75, 0x03, 0x13, 0xc2, 0x06, 0x13, 0x52, 0x5b, 0x8c, + 0x22, 0xd0, 0x75, 0x95, 0x82, 0xbd, 0x65, 0x64, 0x84, 0x05, 0x1d, 0xa4, + 0x61, 0xa3, 0x36, 0xcb, 0xd8, 0x5c, 0x74, 0x05, 0x6d, 0xb8, 0x62, 0xb5, + 0x96, 0x75, 0xb8, 0x11, 0x7a, 0x2a, 0x17, 0x8a, 0xec, 0x41, 0x5d, 0xe9, +}; +static const unsigned char kat1357_addin0[] = {0}; +static const unsigned char kat1357_addin1[] = {0}; +static const unsigned char kat1357_retbits[] = { + 0xfd, 0x46, 0x7f, 0x8a, 0xc5, 0xc3, 0x7a, 0x92, 0xbd, 0x62, 0xc0, 0xa9, + 0x98, 0xce, 0x8b, 0x22, 0x52, 0x9a, 0x2d, 0xce, 0xd2, 0x01, 0x50, 0xac, + 0xb9, 0xfc, 0xaa, 0xb1, 0xd4, 0x92, 0x76, 0x8e, 0xf1, 0x4e, 0x9d, 0x17, + 0x10, 0xf4, 0xc4, 0x6d, 0x45, 0x66, 0x2a, 0x43, 0x97, 0x26, 0xbd, 0x4e, + 0xc1, 0x57, 0xe3, 0x36, 0x40, 0x0f, 0x82, 0x1d, 0xf2, 0x7c, 0x28, 0xbd, + 0xa1, 0xf2, 0x56, 0x91, +}; +static const struct drbg_kat_no_reseed kat1357_t = { + 6, kat1357_entropyin, kat1357_nonce, kat1357_persstr, + kat1357_addin0, kat1357_addin1, kat1357_retbits +}; +static const struct drbg_kat kat1357 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1357_t +}; + +static const unsigned char kat1358_entropyin[] = { + 0xe7, 0xf7, 0x05, 0xa3, 0x87, 0x5c, 0xd6, 0x00, 0x7f, 0x28, 0xd5, 0x26, + 0xf2, 0xd9, 0xdb, 0xfb, 0x36, 0xfd, 0xea, 0x2e, 0xa6, 0x18, 0x1e, 0xa5, + 0xb7, 0x37, 0xcd, 0x77, 0x8b, 0x53, 0xff, 0xe1, 0x5a, 0x43, 0xd7, 0xfa, + 0x95, 0x8d, 0xd0, 0x70, 0x45, 0xef, 0x53, 0xbe, 0x08, 0x09, 0xac, 0x00, +}; +static const unsigned char kat1358_nonce[] = {0}; +static const unsigned char kat1358_persstr[] = { + 0x6a, 0x74, 0x3b, 0xea, 0xc5, 0x19, 0xf6, 0xfd, 0x67, 0xc9, 0xb5, 0xe5, + 0x78, 0xa0, 0x66, 0x22, 0x1c, 0x20, 0x46, 0xb8, 0x31, 0x4f, 0x98, 0x77, + 0xa9, 0x6e, 0x66, 0x7c, 0x35, 0x4b, 0xca, 0xb0, 0x1e, 0xd5, 0xe6, 0xda, + 0xb1, 0xaf, 0xb1, 0x1f, 0x2c, 0xe0, 0x35, 0x87, 0x8e, 0x14, 0x58, 0x67, +}; +static const unsigned char kat1358_addin0[] = {0}; +static const unsigned char kat1358_addin1[] = {0}; +static const unsigned char kat1358_retbits[] = { + 0x7e, 0x3d, 0x3c, 0x54, 0x8c, 0xad, 0x22, 0xeb, 0x9a, 0xfe, 0x4f, 0x79, + 0x8a, 0x85, 0x34, 0x6a, 0x61, 0x1b, 0x08, 0xe9, 0x30, 0xfc, 0xb3, 0x3b, + 0x46, 0xe7, 0x67, 0x02, 0x0e, 0xb8, 0x96, 0xb2, 0xc9, 0x14, 0xc0, 0x44, + 0x8e, 0x17, 0x55, 0x61, 0x5e, 0xa2, 0xfe, 0xce, 0x6c, 0x98, 0xca, 0x8e, + 0xd1, 0x75, 0x17, 0x77, 0xc0, 0x56, 0xf3, 0x2c, 0xb6, 0xc1, 0x1a, 0x72, + 0xb3, 0xff, 0x50, 0xf3, +}; +static const struct drbg_kat_no_reseed kat1358_t = { + 7, kat1358_entropyin, kat1358_nonce, kat1358_persstr, + kat1358_addin0, kat1358_addin1, kat1358_retbits +}; +static const struct drbg_kat kat1358 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1358_t +}; + +static const unsigned char kat1359_entropyin[] = { + 0x8f, 0xa5, 0x0b, 0x4f, 0x91, 0x94, 0x30, 0x6e, 0xe6, 0xe4, 0xd7, 0xde, + 0x35, 0x61, 0x55, 0x3d, 0x4a, 0x98, 0xbd, 0xce, 0x2c, 0x17, 0xfe, 0xe3, + 0x46, 0xd6, 0xc1, 0x77, 0x98, 0x3e, 0xb3, 0x90, 0xa9, 0x03, 0x1b, 0xb8, + 0x8d, 0x82, 0xe1, 0x05, 0xc7, 0x3f, 0xa7, 0x16, 0xec, 0x40, 0xfa, 0x3a, +}; +static const unsigned char kat1359_nonce[] = {0}; +static const unsigned char kat1359_persstr[] = { + 0x1e, 0xfe, 0xe8, 0xb7, 0x66, 0x43, 0xd4, 0xfa, 0x2d, 0x34, 0xd0, 0x76, + 0x1d, 0x29, 0x24, 0x4b, 0x42, 0x68, 0x91, 0x7b, 0x57, 0x0e, 0xef, 0x2a, + 0x95, 0x8e, 0xc6, 0x8d, 0x9e, 0xfa, 0x07, 0x1e, 0xc7, 0x96, 0xb6, 0x29, + 0x91, 0x34, 0x3a, 0x43, 0x03, 0xa0, 0xb9, 0xe8, 0x30, 0xc3, 0x48, 0x39, +}; +static const unsigned char kat1359_addin0[] = {0}; +static const unsigned char kat1359_addin1[] = {0}; +static const unsigned char kat1359_retbits[] = { + 0x2c, 0x8e, 0x0d, 0xc8, 0x9b, 0x8f, 0xa1, 0xa0, 0x4e, 0x85, 0x31, 0x0e, + 0xd0, 0xb9, 0x5d, 0xf6, 0x7e, 0x65, 0xee, 0x03, 0x7b, 0x3a, 0x8a, 0xfc, + 0x55, 0xde, 0x18, 0x0c, 0x20, 0x7f, 0x19, 0xb7, 0x56, 0x9f, 0x2c, 0x95, + 0x2d, 0x0b, 0xfa, 0xdb, 0x78, 0x07, 0x22, 0x50, 0x38, 0xd7, 0x59, 0xff, + 0xd9, 0x99, 0x1a, 0xed, 0x1e, 0xef, 0x56, 0xdb, 0x14, 0xed, 0xb8, 0x81, + 0xbb, 0xb7, 0xc0, 0x33, +}; +static const struct drbg_kat_no_reseed kat1359_t = { + 8, kat1359_entropyin, kat1359_nonce, kat1359_persstr, + kat1359_addin0, kat1359_addin1, kat1359_retbits +}; +static const struct drbg_kat kat1359 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1359_t +}; + +static const unsigned char kat1360_entropyin[] = { + 0x3b, 0x22, 0x1d, 0x43, 0x7c, 0xa1, 0xd9, 0xbd, 0x91, 0x5e, 0xa8, 0x69, + 0xa9, 0x7c, 0xad, 0x87, 0x54, 0x1f, 0x80, 0x21, 0xf2, 0xd1, 0xd0, 0x33, + 0x18, 0xa1, 0x1e, 0x08, 0xc5, 0x67, 0xa9, 0xbb, 0x9c, 0x9d, 0xd0, 0x74, + 0xca, 0x08, 0x73, 0xe8, 0x9c, 0x1d, 0x6b, 0x7d, 0x88, 0x16, 0x57, 0xf7, +}; +static const unsigned char kat1360_nonce[] = {0}; +static const unsigned char kat1360_persstr[] = { + 0x64, 0x29, 0xf3, 0x84, 0xa7, 0x53, 0x54, 0x9d, 0x2a, 0x22, 0xb1, 0xb0, + 0x30, 0xdc, 0x82, 0x08, 0xb0, 0x39, 0x1d, 0x62, 0x90, 0x70, 0xa8, 0x56, + 0x40, 0xfd, 0x1d, 0xc0, 0x92, 0xba, 0x87, 0xfd, 0xe2, 0xcb, 0x46, 0xc6, + 0x9f, 0xf2, 0xc6, 0x4d, 0xbb, 0xb3, 0x2f, 0xea, 0x11, 0x36, 0x33, 0x6d, +}; +static const unsigned char kat1360_addin0[] = {0}; +static const unsigned char kat1360_addin1[] = {0}; +static const unsigned char kat1360_retbits[] = { + 0xe6, 0x54, 0xd0, 0x4b, 0x43, 0xd7, 0xbd, 0xcc, 0x64, 0x36, 0x34, 0x7d, + 0xe9, 0x1a, 0x72, 0x6c, 0xd6, 0x26, 0x8b, 0x28, 0xcc, 0xdc, 0xb9, 0x30, + 0xb6, 0x65, 0xfe, 0x9e, 0xf1, 0x65, 0x4e, 0xe3, 0x1b, 0x83, 0xbd, 0x3d, + 0x92, 0x30, 0x00, 0xc7, 0x3e, 0xc7, 0xc7, 0x1f, 0x81, 0x18, 0xd2, 0x03, + 0xcf, 0x13, 0x1b, 0x8b, 0x16, 0xd2, 0x05, 0xe9, 0x51, 0x80, 0x72, 0x30, + 0xab, 0x44, 0x88, 0xe1, +}; +static const struct drbg_kat_no_reseed kat1360_t = { + 9, kat1360_entropyin, kat1360_nonce, kat1360_persstr, + kat1360_addin0, kat1360_addin1, kat1360_retbits +}; +static const struct drbg_kat kat1360 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1360_t +}; + +static const unsigned char kat1361_entropyin[] = { + 0xaa, 0x35, 0x05, 0xf5, 0x6a, 0x23, 0x53, 0xc9, 0x77, 0x97, 0xf0, 0x04, + 0xfb, 0xab, 0x55, 0x60, 0xf9, 0x50, 0x33, 0xa7, 0x4c, 0xcb, 0x58, 0x41, + 0x08, 0x7d, 0x8c, 0x23, 0x35, 0xde, 0xed, 0x81, 0x99, 0x45, 0xf6, 0xe2, + 0x6e, 0xb2, 0xae, 0x1f, 0x86, 0x0d, 0x5e, 0xa2, 0x55, 0x74, 0xb9, 0xe0, +}; +static const unsigned char kat1361_nonce[] = {0}; +static const unsigned char kat1361_persstr[] = { + 0x95, 0x2f, 0xda, 0x2a, 0xfa, 0x92, 0x57, 0xb6, 0xbc, 0x0c, 0xe0, 0x8d, + 0xd1, 0x71, 0x27, 0xe8, 0x5b, 0xcf, 0xbb, 0xf5, 0x15, 0x95, 0x8e, 0x2e, + 0x1e, 0x09, 0xa5, 0x33, 0x0e, 0xf8, 0xdc, 0x78, 0xfe, 0x7c, 0x9a, 0xad, + 0x42, 0xd5, 0x47, 0x1e, 0x84, 0xc6, 0xcc, 0x74, 0x8b, 0x1b, 0x37, 0xbe, +}; +static const unsigned char kat1361_addin0[] = {0}; +static const unsigned char kat1361_addin1[] = {0}; +static const unsigned char kat1361_retbits[] = { + 0x96, 0x65, 0x03, 0xf5, 0xf8, 0x5f, 0x50, 0xf9, 0x4e, 0x18, 0x85, 0xca, + 0x2a, 0x32, 0x03, 0x4a, 0xc1, 0x95, 0xa8, 0x19, 0x9c, 0x12, 0x2b, 0x71, + 0xe2, 0x68, 0xb2, 0xd3, 0x04, 0xc8, 0xcf, 0x7a, 0xf8, 0xd1, 0xd2, 0x7c, + 0xeb, 0x2a, 0x46, 0xbd, 0xa7, 0x0a, 0x1e, 0x5f, 0xfa, 0xc0, 0xa6, 0x52, + 0x10, 0x89, 0x8b, 0x27, 0x4a, 0x5b, 0xa5, 0x36, 0xee, 0x07, 0xa2, 0x08, + 0x63, 0xa0, 0x11, 0x52, +}; +static const struct drbg_kat_no_reseed kat1361_t = { + 10, kat1361_entropyin, kat1361_nonce, kat1361_persstr, + kat1361_addin0, kat1361_addin1, kat1361_retbits +}; +static const struct drbg_kat kat1361 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1361_t +}; + +static const unsigned char kat1362_entropyin[] = { + 0x15, 0x27, 0x5e, 0x31, 0xbe, 0x7f, 0x9e, 0x27, 0x0c, 0x4e, 0x4b, 0x26, + 0xe8, 0xea, 0x85, 0x0f, 0x31, 0xfd, 0xf9, 0x40, 0x35, 0x9e, 0x47, 0xe6, + 0x39, 0xd9, 0x8e, 0x86, 0x86, 0x0a, 0x6a, 0x95, 0x39, 0x01, 0x69, 0x11, + 0xf1, 0x9d, 0x39, 0x20, 0x8e, 0xdc, 0xb8, 0x99, 0xf4, 0x55, 0x67, 0x7b, +}; +static const unsigned char kat1362_nonce[] = {0}; +static const unsigned char kat1362_persstr[] = { + 0x2c, 0x1f, 0x62, 0x03, 0x4b, 0x31, 0x46, 0x00, 0xef, 0x44, 0xe0, 0x40, + 0x22, 0x07, 0xaa, 0xbf, 0xd6, 0x17, 0xbc, 0x3d, 0x08, 0xc3, 0xb3, 0x9a, + 0x90, 0xb3, 0x84, 0x77, 0x5f, 0x02, 0x18, 0x1b, 0x9b, 0x41, 0x03, 0x2e, + 0x4a, 0xb5, 0xd3, 0x2d, 0xd2, 0xab, 0x28, 0xcd, 0x14, 0xa1, 0x73, 0x68, +}; +static const unsigned char kat1362_addin0[] = {0}; +static const unsigned char kat1362_addin1[] = {0}; +static const unsigned char kat1362_retbits[] = { + 0x60, 0x6b, 0xe9, 0xe1, 0x42, 0x64, 0xc0, 0x1a, 0xfd, 0xa7, 0xaa, 0x71, + 0xe3, 0xc2, 0x34, 0xcc, 0x06, 0x8e, 0xe6, 0x9e, 0x98, 0x7a, 0x83, 0x8a, + 0x21, 0x40, 0xdf, 0x02, 0x8b, 0xfe, 0x74, 0xf8, 0x18, 0x8a, 0xe4, 0x41, + 0x8f, 0x10, 0xfd, 0x09, 0x9b, 0x8b, 0x99, 0x4a, 0x27, 0x0e, 0x23, 0x9a, + 0x52, 0x6f, 0x2d, 0x03, 0xb3, 0x05, 0x99, 0x65, 0x08, 0x46, 0x8c, 0x07, + 0xd4, 0x4b, 0xf5, 0x4c, +}; +static const struct drbg_kat_no_reseed kat1362_t = { + 11, kat1362_entropyin, kat1362_nonce, kat1362_persstr, + kat1362_addin0, kat1362_addin1, kat1362_retbits +}; +static const struct drbg_kat kat1362 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1362_t +}; + +static const unsigned char kat1363_entropyin[] = { + 0x31, 0x25, 0xc3, 0xea, 0xce, 0x58, 0xb3, 0x49, 0x18, 0x6e, 0x70, 0xed, + 0xf8, 0x25, 0xc5, 0x15, 0x8f, 0x19, 0xd5, 0x3d, 0x55, 0x6a, 0x57, 0x37, + 0x08, 0x8c, 0x72, 0x3d, 0x84, 0xed, 0xfc, 0x62, 0x7e, 0xdf, 0x2e, 0xae, + 0x60, 0x2d, 0xfc, 0xe5, 0xa9, 0xad, 0x35, 0xe0, 0xb9, 0x5f, 0x40, 0x96, +}; +static const unsigned char kat1363_nonce[] = {0}; +static const unsigned char kat1363_persstr[] = { + 0xbe, 0x9f, 0xe1, 0xde, 0x0b, 0x44, 0x81, 0x47, 0xc4, 0x9b, 0x41, 0x2d, + 0x8d, 0x72, 0x2f, 0xa0, 0xd6, 0xb6, 0xcb, 0x99, 0x8f, 0xf7, 0x7e, 0xbb, + 0xe2, 0x39, 0x84, 0x82, 0xb0, 0xf9, 0xe8, 0x9b, 0x10, 0xe8, 0xe5, 0x02, + 0x6f, 0xcc, 0x8a, 0x2f, 0x4b, 0x9f, 0xaa, 0x33, 0x8c, 0x45, 0xf8, 0xcd, +}; +static const unsigned char kat1363_addin0[] = {0}; +static const unsigned char kat1363_addin1[] = {0}; +static const unsigned char kat1363_retbits[] = { + 0x5b, 0x6a, 0x62, 0xc7, 0x0e, 0x98, 0x51, 0x70, 0x28, 0xb1, 0x78, 0x49, + 0x78, 0xbf, 0x1f, 0x76, 0x42, 0xa0, 0x5f, 0xd5, 0x86, 0x68, 0x4a, 0x4f, + 0xda, 0x2c, 0x98, 0xc0, 0xb8, 0xb6, 0x98, 0x61, 0xb0, 0xd6, 0x5a, 0x4f, + 0x96, 0x06, 0x10, 0x61, 0x87, 0x4c, 0xdc, 0xd5, 0xd9, 0x0d, 0xc0, 0xe9, + 0xc7, 0x4b, 0x04, 0x86, 0x41, 0x28, 0x0f, 0xd7, 0xf6, 0x89, 0x24, 0x43, + 0x92, 0xf2, 0x0d, 0x0a, +}; +static const struct drbg_kat_no_reseed kat1363_t = { + 12, kat1363_entropyin, kat1363_nonce, kat1363_persstr, + kat1363_addin0, kat1363_addin1, kat1363_retbits +}; +static const struct drbg_kat kat1363 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1363_t +}; + +static const unsigned char kat1364_entropyin[] = { + 0x12, 0x13, 0xf4, 0x66, 0x1f, 0x4c, 0xd3, 0x63, 0xbb, 0xf1, 0x6f, 0x5b, + 0xa4, 0xce, 0x4f, 0x33, 0x02, 0x96, 0x17, 0x97, 0x77, 0x2f, 0xc8, 0xe4, + 0x12, 0xc2, 0x61, 0x0b, 0x4b, 0x42, 0xd4, 0xcd, 0xeb, 0x14, 0xed, 0x19, + 0xb5, 0x0b, 0x6a, 0xd9, 0x68, 0x62, 0x51, 0x69, 0xb4, 0xeb, 0x5d, 0xec, +}; +static const unsigned char kat1364_nonce[] = {0}; +static const unsigned char kat1364_persstr[] = { + 0x98, 0xa1, 0xc8, 0x14, 0xae, 0xc3, 0xdf, 0x5b, 0xb4, 0xfb, 0x17, 0x77, + 0x8d, 0x58, 0xe7, 0x88, 0x4a, 0x69, 0xde, 0xa0, 0x9a, 0x83, 0xbe, 0x26, + 0x43, 0xd1, 0x69, 0xc1, 0x50, 0xd0, 0x6a, 0x9c, 0xdd, 0x47, 0x7e, 0x20, + 0x62, 0x39, 0x93, 0xc7, 0x50, 0x5e, 0xa1, 0x04, 0xb6, 0x2c, 0x87, 0x53, +}; +static const unsigned char kat1364_addin0[] = {0}; +static const unsigned char kat1364_addin1[] = {0}; +static const unsigned char kat1364_retbits[] = { + 0x3c, 0x0f, 0xf2, 0xad, 0x45, 0x58, 0x58, 0x5e, 0xce, 0x97, 0x43, 0x44, + 0xb5, 0xad, 0x70, 0x45, 0xa0, 0xfc, 0xa9, 0xef, 0x1f, 0x25, 0xe4, 0x25, + 0x1d, 0xc8, 0x00, 0xd4, 0x1a, 0xbc, 0x3e, 0xd0, 0x0c, 0x3a, 0xda, 0xb5, + 0xdb, 0xa1, 0x41, 0xfb, 0x1f, 0x95, 0xc3, 0xc2, 0x17, 0x32, 0xd4, 0xb6, + 0x3c, 0x19, 0x2f, 0xb4, 0x92, 0x4c, 0x6f, 0x7f, 0x98, 0x4b, 0xaa, 0x88, + 0xe4, 0xdc, 0x90, 0x91, +}; +static const struct drbg_kat_no_reseed kat1364_t = { + 13, kat1364_entropyin, kat1364_nonce, kat1364_persstr, + kat1364_addin0, kat1364_addin1, kat1364_retbits +}; +static const struct drbg_kat kat1364 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1364_t +}; + +static const unsigned char kat1365_entropyin[] = { + 0x40, 0x9b, 0xc3, 0x72, 0xb8, 0x73, 0x8c, 0x80, 0xac, 0x35, 0x72, 0x1b, + 0xbb, 0x8e, 0x80, 0x6d, 0xdc, 0x93, 0xe8, 0x16, 0xc8, 0xfa, 0xb9, 0x8d, + 0x1d, 0x0f, 0x2a, 0x05, 0x3f, 0x95, 0x96, 0x01, 0x66, 0x70, 0x93, 0x80, + 0x69, 0x5b, 0x0e, 0x8a, 0x54, 0x8f, 0xe4, 0x8e, 0x4c, 0x12, 0xdc, 0x01, +}; +static const unsigned char kat1365_nonce[] = {0}; +static const unsigned char kat1365_persstr[] = { + 0x97, 0x5d, 0xa7, 0x43, 0x9d, 0xf9, 0xa5, 0xb7, 0x6f, 0x8a, 0xe5, 0x20, + 0x1d, 0xa3, 0x56, 0x92, 0xfd, 0x46, 0xd2, 0x77, 0x78, 0x7f, 0x8a, 0x73, + 0xb0, 0x82, 0x01, 0xe6, 0x54, 0x7b, 0xa7, 0x2d, 0xe2, 0x6b, 0xa7, 0x72, + 0x5a, 0xd4, 0x4a, 0x11, 0xf7, 0x42, 0xe6, 0xc2, 0xb5, 0x7c, 0x0e, 0x9f, +}; +static const unsigned char kat1365_addin0[] = {0}; +static const unsigned char kat1365_addin1[] = {0}; +static const unsigned char kat1365_retbits[] = { + 0x01, 0xfe, 0x7c, 0x18, 0xb8, 0x5e, 0xde, 0x51, 0x97, 0x40, 0xed, 0x40, + 0x68, 0xaf, 0x24, 0xb4, 0xba, 0xaa, 0xa7, 0xd7, 0x27, 0xb0, 0x52, 0x41, + 0xaf, 0x48, 0x1e, 0xc8, 0x43, 0xc2, 0x0b, 0xfc, 0xe4, 0x1e, 0x4b, 0xb1, + 0x31, 0xcf, 0x03, 0xa5, 0x04, 0xae, 0xcd, 0x54, 0x09, 0xd0, 0x3f, 0x6b, + 0x5b, 0x84, 0xd2, 0x2f, 0x0e, 0x10, 0x42, 0xb6, 0x6e, 0x5d, 0x99, 0xd4, + 0x33, 0x97, 0x42, 0xfd, +}; +static const struct drbg_kat_no_reseed kat1365_t = { + 14, kat1365_entropyin, kat1365_nonce, kat1365_persstr, + kat1365_addin0, kat1365_addin1, kat1365_retbits +}; +static const struct drbg_kat kat1365 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1365_t +}; + +static const unsigned char kat1366_entropyin[] = { + 0xce, 0x8a, 0xa7, 0x44, 0x79, 0x68, 0x98, 0x91, 0x1e, 0xd6, 0x77, 0x4d, + 0x06, 0xdd, 0x45, 0x29, 0x8e, 0xe7, 0x40, 0x3f, 0x08, 0x40, 0x78, 0xbe, + 0x9b, 0x50, 0x2f, 0x4d, 0xf8, 0x12, 0x8c, 0x71, 0xcf, 0xb6, 0xde, 0x3d, + 0xde, 0x92, 0xf5, 0x41, 0x9a, 0x44, 0x5f, 0x55, 0x25, 0x9d, 0x23, 0x02, +}; +static const unsigned char kat1366_nonce[] = {0}; +static const unsigned char kat1366_persstr[] = { + 0xf2, 0x75, 0xe2, 0xc6, 0xc2, 0xa5, 0xb9, 0x0c, 0xd5, 0xb8, 0xec, 0xf0, + 0x26, 0x94, 0xf8, 0xca, 0x77, 0xd3, 0xbf, 0xd6, 0x2b, 0xca, 0x6b, 0xae, + 0x33, 0xe3, 0xb7, 0xa0, 0x35, 0xc2, 0x1e, 0xf2, 0x09, 0x47, 0x10, 0x0f, + 0xa9, 0x36, 0xde, 0xf4, 0xa8, 0x60, 0x87, 0x88, 0xab, 0xf3, 0x4e, 0xcf, +}; +static const unsigned char kat1366_addin0[] = { + 0x07, 0xa3, 0xa7, 0x81, 0xee, 0x4a, 0x17, 0xd1, 0x10, 0xba, 0x89, 0x64, + 0x38, 0xd3, 0x65, 0xda, 0x36, 0x4b, 0xbb, 0xeb, 0xee, 0x04, 0xc1, 0x89, + 0x2c, 0xc9, 0x3b, 0x59, 0xfc, 0xf3, 0x1a, 0xaa, 0x78, 0x0c, 0xb6, 0x64, + 0xb9, 0xb0, 0x54, 0xe4, 0x0a, 0x20, 0xb0, 0xdd, 0x43, 0x5a, 0x4e, 0x3a, +}; +static const unsigned char kat1366_addin1[] = { + 0x4e, 0x17, 0xf0, 0x13, 0x80, 0x89, 0xdc, 0x31, 0xe1, 0xcd, 0xd3, 0x77, + 0xf1, 0xeb, 0x4c, 0xb4, 0xda, 0x47, 0x45, 0xe7, 0x98, 0x43, 0xf3, 0x60, + 0x82, 0xdb, 0xae, 0xd6, 0x92, 0x72, 0x34, 0xc6, 0x75, 0xa0, 0x61, 0x11, + 0x1d, 0x5f, 0xe9, 0x1b, 0x38, 0x3a, 0x8b, 0x4e, 0x3e, 0xcd, 0xb5, 0x9d, +}; +static const unsigned char kat1366_retbits[] = { + 0xa0, 0xbd, 0x4e, 0xbc, 0x1f, 0x2e, 0x28, 0xe9, 0x59, 0x39, 0x82, 0xaf, + 0x69, 0x4a, 0xeb, 0x45, 0x43, 0x7c, 0x20, 0xf7, 0x88, 0x70, 0x90, 0xb9, + 0x47, 0xbe, 0x33, 0xfb, 0x8d, 0x62, 0x25, 0x5b, 0x2f, 0x3b, 0xe7, 0xd5, + 0xd6, 0x7e, 0x52, 0xf5, 0xe8, 0x26, 0x20, 0xeb, 0x40, 0xa3, 0xe1, 0x12, + 0xaf, 0x15, 0x93, 0xaa, 0xe5, 0xfa, 0x59, 0x2a, 0x16, 0x30, 0x96, 0x6f, + 0x8c, 0xa4, 0x55, 0xa7, +}; +static const struct drbg_kat_no_reseed kat1366_t = { + 0, kat1366_entropyin, kat1366_nonce, kat1366_persstr, + kat1366_addin0, kat1366_addin1, kat1366_retbits +}; +static const struct drbg_kat kat1366 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1366_t +}; + +static const unsigned char kat1367_entropyin[] = { + 0xc9, 0x32, 0x5a, 0x14, 0xbb, 0x47, 0x0f, 0xff, 0x0d, 0x68, 0x30, 0xa7, + 0x05, 0x8d, 0xb8, 0xb8, 0xad, 0x4b, 0xe7, 0x24, 0x81, 0x8d, 0xbb, 0x25, + 0xad, 0xf6, 0x6b, 0x00, 0x27, 0xa0, 0x2c, 0xa9, 0xeb, 0x4c, 0xe8, 0x5c, + 0x63, 0x4c, 0x5a, 0x48, 0x69, 0x49, 0xb1, 0xef, 0x9c, 0x02, 0xa5, 0xc2, +}; +static const unsigned char kat1367_nonce[] = {0}; +static const unsigned char kat1367_persstr[] = { + 0x45, 0xce, 0xeb, 0x6b, 0x0f, 0xc3, 0xc1, 0xe4, 0xa9, 0x77, 0x80, 0xd4, + 0xf8, 0x6d, 0xac, 0x9a, 0x42, 0xde, 0x89, 0x9c, 0xdc, 0x52, 0xbf, 0x26, + 0x85, 0xbb, 0xcc, 0x8d, 0xe9, 0x52, 0x6f, 0xbb, 0x4b, 0xb5, 0x83, 0x9e, + 0x00, 0xb3, 0x8d, 0xe8, 0x64, 0x15, 0x2c, 0x32, 0x99, 0x0a, 0xff, 0x7e, +}; +static const unsigned char kat1367_addin0[] = { + 0x2f, 0xa1, 0x01, 0x8c, 0xcc, 0x64, 0x2b, 0x03, 0x46, 0xb2, 0x58, 0x7a, + 0x43, 0x7d, 0xf1, 0xe8, 0xb0, 0xb2, 0x87, 0x1a, 0x46, 0x93, 0x10, 0xbe, + 0x29, 0xbd, 0x1f, 0xea, 0x86, 0x77, 0xb3, 0x33, 0x01, 0x88, 0x53, 0x8b, + 0x5a, 0xb7, 0xb8, 0x0d, 0x22, 0x82, 0x0c, 0xe2, 0xb1, 0xe8, 0xa6, 0x25, +}; +static const unsigned char kat1367_addin1[] = { + 0x13, 0xff, 0x66, 0xa6, 0xcd, 0xba, 0x89, 0xdc, 0x7f, 0xab, 0x39, 0x06, + 0x3b, 0x6e, 0x02, 0x67, 0x1f, 0x6f, 0x3c, 0x35, 0x57, 0x15, 0xfa, 0x63, + 0x20, 0x59, 0x9f, 0x2e, 0x6a, 0x00, 0x13, 0x2e, 0x43, 0x30, 0xf1, 0x22, + 0x9c, 0xe2, 0x42, 0xc0, 0xfd, 0xb9, 0x0c, 0xa2, 0xa9, 0x1c, 0xee, 0x13, +}; +static const unsigned char kat1367_retbits[] = { + 0x7d, 0x5a, 0x9a, 0x20, 0x4f, 0x28, 0x8e, 0xb8, 0xc0, 0x26, 0x04, 0x66, + 0x8c, 0x1e, 0x61, 0xe2, 0xa6, 0x51, 0x91, 0xed, 0x98, 0xb5, 0x97, 0x07, + 0xa5, 0x76, 0xd2, 0x73, 0xde, 0x11, 0xba, 0x46, 0x35, 0xd6, 0xe2, 0xb7, + 0x21, 0x24, 0x36, 0xf4, 0x6b, 0x19, 0xea, 0xa0, 0x2b, 0xb9, 0x73, 0x84, + 0x15, 0x8f, 0x7e, 0x80, 0x07, 0x42, 0xc1, 0x9a, 0xdc, 0x86, 0x1b, 0x10, + 0x15, 0x5b, 0x88, 0x35, +}; +static const struct drbg_kat_no_reseed kat1367_t = { + 1, kat1367_entropyin, kat1367_nonce, kat1367_persstr, + kat1367_addin0, kat1367_addin1, kat1367_retbits +}; +static const struct drbg_kat kat1367 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1367_t +}; + +static const unsigned char kat1368_entropyin[] = { + 0x8f, 0xae, 0xe8, 0x60, 0x70, 0x86, 0x43, 0x2d, 0xf0, 0x86, 0x81, 0x34, + 0x27, 0x69, 0x7f, 0xd2, 0x27, 0x74, 0xdc, 0xac, 0x0a, 0xed, 0xb9, 0x1c, + 0x7a, 0x5a, 0x75, 0xe3, 0xd8, 0x9d, 0x94, 0x18, 0x9d, 0x80, 0x9f, 0xf7, + 0x11, 0x11, 0x73, 0x5e, 0x25, 0xbc, 0xe8, 0xc1, 0x24, 0x63, 0x9c, 0x4d, +}; +static const unsigned char kat1368_nonce[] = {0}; +static const unsigned char kat1368_persstr[] = { + 0x2b, 0x06, 0x97, 0xb8, 0x1e, 0x98, 0xa3, 0x5a, 0x51, 0xb3, 0x4b, 0xb4, + 0xdb, 0xca, 0xee, 0xaa, 0xed, 0x08, 0x17, 0xbd, 0x3d, 0x01, 0x54, 0x31, + 0x2d, 0xde, 0x12, 0x58, 0x0b, 0xa8, 0x40, 0x12, 0x8b, 0x8a, 0xbf, 0xff, + 0x3b, 0x92, 0xde, 0x96, 0xa2, 0x9b, 0xe4, 0x0b, 0x08, 0xca, 0xd4, 0x81, +}; +static const unsigned char kat1368_addin0[] = { + 0x63, 0xd8, 0x41, 0xc3, 0xc7, 0x5e, 0x76, 0x98, 0x60, 0x9b, 0x8a, 0x06, + 0x12, 0x40, 0x4f, 0xa0, 0xf6, 0xdc, 0xdd, 0xd3, 0x93, 0xb4, 0x60, 0xe9, + 0x74, 0xf4, 0x0e, 0x3b, 0x7f, 0x03, 0x3f, 0x4e, 0xae, 0xbc, 0x3e, 0x90, + 0xaf, 0x90, 0x5f, 0x70, 0x4a, 0x81, 0x0f, 0x2d, 0xcb, 0xa3, 0x2d, 0x7a, +}; +static const unsigned char kat1368_addin1[] = { + 0xfd, 0xcb, 0x88, 0x7b, 0xed, 0x67, 0x36, 0xab, 0xa7, 0xbc, 0xc3, 0xd1, + 0x6d, 0x7f, 0x89, 0x4b, 0x3e, 0x85, 0x6d, 0x96, 0xd7, 0xb1, 0xf5, 0x83, + 0x39, 0xc1, 0xfe, 0xd9, 0xbf, 0x3d, 0x4f, 0xc4, 0x53, 0xfe, 0xb7, 0x3d, + 0x49, 0x14, 0xa2, 0xd9, 0x0b, 0x2a, 0x62, 0xe0, 0xc3, 0xb1, 0x33, 0xfb, +}; +static const unsigned char kat1368_retbits[] = { + 0x50, 0xf4, 0x4f, 0xbb, 0xea, 0xa7, 0xbf, 0x65, 0xff, 0xa6, 0x0f, 0x5d, + 0xbd, 0x44, 0x25, 0x67, 0xe0, 0x5b, 0xd8, 0x76, 0x3b, 0xe6, 0xf4, 0x83, + 0x4b, 0xf0, 0xe0, 0xe6, 0x1f, 0x7f, 0x79, 0x15, 0xb4, 0x77, 0x60, 0x93, + 0x16, 0x01, 0xdd, 0xcb, 0xe5, 0x50, 0x96, 0x2c, 0x5d, 0x5a, 0xc2, 0x43, + 0xbd, 0xe5, 0x9a, 0xb1, 0xb0, 0xca, 0x7f, 0x19, 0x66, 0xb4, 0xbd, 0x2e, + 0x83, 0x75, 0xad, 0x0f, +}; +static const struct drbg_kat_no_reseed kat1368_t = { + 2, kat1368_entropyin, kat1368_nonce, kat1368_persstr, + kat1368_addin0, kat1368_addin1, kat1368_retbits +}; +static const struct drbg_kat kat1368 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1368_t +}; + +static const unsigned char kat1369_entropyin[] = { + 0x6b, 0xed, 0x86, 0x1a, 0x20, 0x1e, 0x45, 0x9b, 0x08, 0x6f, 0xe0, 0xfc, + 0x40, 0x84, 0xda, 0xf6, 0x2b, 0xbe, 0xcc, 0x73, 0x7d, 0xce, 0x72, 0x1d, + 0xc4, 0x71, 0xed, 0x2a, 0xfd, 0x87, 0x37, 0x8e, 0x7a, 0x59, 0xde, 0x2e, + 0xcd, 0xef, 0x21, 0x54, 0xa3, 0x0d, 0xf2, 0xfa, 0xbd, 0x51, 0xd5, 0x60, +}; +static const unsigned char kat1369_nonce[] = {0}; +static const unsigned char kat1369_persstr[] = { + 0x26, 0x7b, 0x4e, 0xd1, 0xef, 0xab, 0x86, 0xab, 0x54, 0x59, 0xad, 0xed, + 0x62, 0x81, 0x10, 0x71, 0xdf, 0x41, 0x3c, 0x1c, 0xbf, 0x2b, 0xb2, 0xa1, + 0x04, 0x95, 0x38, 0x39, 0x9e, 0x13, 0xcb, 0xfd, 0xf8, 0xfb, 0x87, 0x0f, + 0x3b, 0x17, 0x84, 0xcf, 0xaf, 0x91, 0x6e, 0xb3, 0x2b, 0x46, 0xfd, 0xc5, +}; +static const unsigned char kat1369_addin0[] = { + 0x10, 0x2d, 0x2b, 0x70, 0x59, 0x7d, 0x63, 0xa4, 0x42, 0x56, 0x23, 0xdb, + 0xb3, 0x0c, 0xe5, 0xf7, 0xc7, 0xe1, 0x14, 0x06, 0x47, 0x98, 0x2a, 0x4a, + 0x17, 0x8d, 0xc7, 0x1e, 0x7f, 0xa1, 0xfb, 0x33, 0xe2, 0xd6, 0x1e, 0xae, + 0x0f, 0x0e, 0x0a, 0xa1, 0x01, 0x3b, 0x20, 0xbd, 0x59, 0x33, 0x47, 0x59, +}; +static const unsigned char kat1369_addin1[] = { + 0x3c, 0x8b, 0x81, 0xbf, 0xac, 0x10, 0x99, 0xc5, 0x79, 0xf3, 0x06, 0x7d, + 0x01, 0x8b, 0xf2, 0xdd, 0x34, 0xe2, 0x68, 0xe2, 0xce, 0x57, 0x89, 0x63, + 0xc0, 0x1d, 0x38, 0xb5, 0x45, 0x69, 0xe4, 0xe7, 0xff, 0xd2, 0x12, 0xcf, + 0x0d, 0x7f, 0x43, 0x60, 0x12, 0x45, 0xe6, 0x51, 0x3c, 0x03, 0x4a, 0x9a, +}; +static const unsigned char kat1369_retbits[] = { + 0x3a, 0xfb, 0xfe, 0x4f, 0xcd, 0xc8, 0xf5, 0xdb, 0xf9, 0xbe, 0x2f, 0x23, + 0xf5, 0x7f, 0x25, 0xc6, 0xcd, 0x06, 0x1a, 0xe5, 0x92, 0xbf, 0xde, 0xa8, + 0xa7, 0xea, 0xb9, 0x42, 0xa4, 0x0f, 0xea, 0x75, 0xd2, 0xa9, 0x38, 0x86, + 0x06, 0xd6, 0x06, 0x2c, 0x41, 0x44, 0xed, 0x8e, 0x19, 0x7e, 0x15, 0x7e, + 0xd7, 0xfa, 0x76, 0xd3, 0xe8, 0x24, 0x53, 0x21, 0x2d, 0x1d, 0x16, 0x2f, + 0x55, 0x41, 0xe5, 0xaf, +}; +static const struct drbg_kat_no_reseed kat1369_t = { + 3, kat1369_entropyin, kat1369_nonce, kat1369_persstr, + kat1369_addin0, kat1369_addin1, kat1369_retbits +}; +static const struct drbg_kat kat1369 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1369_t +}; + +static const unsigned char kat1370_entropyin[] = { + 0xda, 0xe4, 0x10, 0x51, 0x05, 0x32, 0x6a, 0x25, 0xbf, 0xa8, 0xa1, 0x99, + 0x50, 0x2c, 0xc8, 0x79, 0xf6, 0x68, 0x92, 0x26, 0xf2, 0x69, 0x64, 0x9f, + 0xc4, 0x6c, 0x36, 0xa0, 0x25, 0xb4, 0x0c, 0xfe, 0x0f, 0x9a, 0x0e, 0x9c, + 0xb1, 0xcc, 0x18, 0x48, 0x03, 0x0e, 0x9b, 0x8b, 0xf2, 0x07, 0x18, 0xd3, +}; +static const unsigned char kat1370_nonce[] = {0}; +static const unsigned char kat1370_persstr[] = { + 0x76, 0xe6, 0xb9, 0xe8, 0x48, 0xb0, 0x7d, 0xb7, 0xdc, 0x39, 0x78, 0xf4, + 0x56, 0x42, 0x4c, 0x21, 0xdc, 0xe6, 0xc0, 0x43, 0xfe, 0x9e, 0xc8, 0xdd, + 0x55, 0xe3, 0x4c, 0x17, 0x8b, 0x29, 0xdd, 0x97, 0x39, 0x65, 0x9b, 0x37, + 0xc1, 0xe0, 0xf4, 0x42, 0x00, 0xce, 0xed, 0x7f, 0xfe, 0x73, 0x1f, 0xf9, +}; +static const unsigned char kat1370_addin0[] = { + 0xea, 0x26, 0xcd, 0x19, 0x5c, 0x9d, 0xb0, 0xcf, 0x8d, 0x95, 0xc6, 0x5a, + 0xea, 0x07, 0x81, 0x31, 0xbb, 0xbb, 0x9a, 0x83, 0xb3, 0xb7, 0x51, 0x1e, + 0x85, 0x22, 0xc3, 0x15, 0xa8, 0x77, 0x43, 0x8d, 0x0b, 0x85, 0xe1, 0x49, + 0x07, 0xaf, 0xb7, 0x1b, 0x3d, 0xd4, 0xa9, 0x32, 0x5d, 0x28, 0xfa, 0x78, +}; +static const unsigned char kat1370_addin1[] = { + 0xca, 0x29, 0x88, 0x56, 0x63, 0x1a, 0xa2, 0x5a, 0xfd, 0x19, 0x22, 0xcd, + 0x57, 0xaa, 0x73, 0xf0, 0x3c, 0x6f, 0x0a, 0x3a, 0x07, 0xce, 0xe6, 0xab, + 0x06, 0x76, 0x92, 0x61, 0x05, 0xa0, 0x68, 0x16, 0x87, 0xda, 0xa2, 0x87, + 0x77, 0x14, 0x2c, 0x38, 0x06, 0x84, 0x96, 0x98, 0x86, 0x3e, 0xea, 0xf1, +}; +static const unsigned char kat1370_retbits[] = { + 0x67, 0x8b, 0xc8, 0x6e, 0xe8, 0xc2, 0xc9, 0xb5, 0x7d, 0x3a, 0x4e, 0x27, + 0x41, 0x2a, 0x0e, 0xa8, 0xaa, 0xde, 0x79, 0x93, 0xd7, 0x87, 0x45, 0x2d, + 0x6e, 0xe7, 0x9f, 0x51, 0x96, 0x78, 0x81, 0x40, 0xf6, 0x83, 0x2e, 0x82, + 0x5d, 0x8a, 0xa3, 0x94, 0x34, 0x99, 0x47, 0x0f, 0xf1, 0x44, 0x94, 0xf5, + 0x02, 0x41, 0x39, 0x75, 0xc5, 0x4f, 0xfc, 0xf6, 0x50, 0xda, 0xa3, 0x32, + 0x50, 0x46, 0x88, 0x3f, +}; +static const struct drbg_kat_no_reseed kat1370_t = { + 4, kat1370_entropyin, kat1370_nonce, kat1370_persstr, + kat1370_addin0, kat1370_addin1, kat1370_retbits +}; +static const struct drbg_kat kat1370 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1370_t +}; + +static const unsigned char kat1371_entropyin[] = { + 0xbd, 0x9a, 0xa1, 0xfb, 0x14, 0xf2, 0x37, 0xae, 0xc0, 0x46, 0xdf, 0x3d, + 0x63, 0x20, 0xd4, 0x19, 0x22, 0x76, 0x79, 0x51, 0x6d, 0xeb, 0xd7, 0xcb, + 0x6a, 0x1e, 0x2a, 0xb8, 0xbe, 0x25, 0xb2, 0xda, 0x03, 0xdf, 0xd2, 0x18, + 0x5b, 0x9b, 0x4b, 0x6f, 0xa9, 0xae, 0x0b, 0xc7, 0xef, 0xff, 0x12, 0xd4, +}; +static const unsigned char kat1371_nonce[] = {0}; +static const unsigned char kat1371_persstr[] = { + 0x76, 0xf9, 0xe1, 0x91, 0x1b, 0xdf, 0xfe, 0xe4, 0x9a, 0xf8, 0x02, 0x81, + 0xce, 0x3c, 0xbc, 0x40, 0xce, 0xe7, 0x6b, 0xf5, 0xef, 0xeb, 0xd9, 0xf0, + 0xc7, 0x1f, 0xc5, 0x15, 0xd1, 0x8d, 0xbf, 0x82, 0x04, 0x30, 0xd1, 0x18, + 0x36, 0xa0, 0x1b, 0x88, 0x70, 0x5d, 0xd9, 0x1a, 0x82, 0x78, 0xc2, 0xd3, +}; +static const unsigned char kat1371_addin0[] = { + 0x38, 0x79, 0xcc, 0xe7, 0xb8, 0x94, 0xd8, 0x05, 0x2a, 0x8e, 0x69, 0xfa, + 0xdb, 0xc1, 0x54, 0xd0, 0xf1, 0xc5, 0x25, 0x39, 0xe1, 0xe0, 0x74, 0xdb, + 0x55, 0x75, 0xc5, 0xb0, 0x96, 0x70, 0xc5, 0x74, 0x8e, 0xd8, 0x0e, 0x7c, + 0x76, 0x55, 0x00, 0x5d, 0x77, 0xec, 0xb7, 0xc3, 0x20, 0xf6, 0x77, 0xb2, +}; +static const unsigned char kat1371_addin1[] = { + 0xe9, 0x99, 0xc8, 0x1a, 0x8c, 0x14, 0x03, 0x92, 0x0e, 0xa3, 0x42, 0xf8, + 0xe0, 0xf8, 0xa8, 0xb6, 0xd7, 0xc1, 0x43, 0xd7, 0x45, 0x27, 0x0b, 0xa5, + 0x75, 0xef, 0x35, 0x7e, 0x26, 0x88, 0x4a, 0x67, 0x60, 0xd1, 0xc7, 0xd1, + 0x65, 0x15, 0x23, 0x81, 0x06, 0x42, 0x53, 0x1d, 0x2d, 0x3b, 0x88, 0x32, +}; +static const unsigned char kat1371_retbits[] = { + 0x27, 0xcb, 0x56, 0x28, 0x56, 0x08, 0xa8, 0xb3, 0xd0, 0xe2, 0x3e, 0xad, + 0x3c, 0x2e, 0x16, 0x95, 0xbb, 0x51, 0x0e, 0x7e, 0x53, 0xb0, 0xf2, 0x77, + 0x3d, 0xcd, 0xbf, 0x1c, 0xb0, 0x61, 0xdb, 0xe2, 0x09, 0x9b, 0x37, 0x47, + 0x4b, 0xb2, 0x7f, 0x01, 0xd4, 0x8c, 0x8c, 0x1d, 0xa8, 0x57, 0xe1, 0x5b, + 0xb4, 0xef, 0xcd, 0x8c, 0xe4, 0x90, 0xb4, 0xf3, 0x38, 0x54, 0x02, 0x7d, + 0x8d, 0x76, 0xeb, 0xf9, +}; +static const struct drbg_kat_no_reseed kat1371_t = { + 5, kat1371_entropyin, kat1371_nonce, kat1371_persstr, + kat1371_addin0, kat1371_addin1, kat1371_retbits +}; +static const struct drbg_kat kat1371 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1371_t +}; + +static const unsigned char kat1372_entropyin[] = { + 0xe1, 0x45, 0xa1, 0x08, 0x20, 0x37, 0x13, 0x4e, 0xa2, 0x44, 0x3e, 0x00, + 0xe6, 0xe1, 0x76, 0x70, 0x4e, 0xd8, 0xb8, 0x87, 0x73, 0xd1, 0x15, 0xe0, + 0x4d, 0xc4, 0xc8, 0x46, 0x1e, 0x4d, 0x67, 0x3a, 0xe8, 0x27, 0x72, 0xed, + 0xe2, 0xa7, 0x78, 0x95, 0xc5, 0xd5, 0xaa, 0x94, 0x9a, 0x1f, 0x52, 0xea, +}; +static const unsigned char kat1372_nonce[] = {0}; +static const unsigned char kat1372_persstr[] = { + 0x06, 0xba, 0x16, 0xb3, 0x60, 0xbe, 0xc8, 0xa8, 0xba, 0x7d, 0x48, 0xab, + 0xc3, 0x07, 0xf4, 0x09, 0xbe, 0xde, 0x71, 0x71, 0x3c, 0x38, 0x39, 0x74, + 0x2c, 0x51, 0x8a, 0x5f, 0x0f, 0xd8, 0x25, 0x38, 0x3e, 0x40, 0x90, 0x96, + 0xa9, 0xa7, 0x1d, 0x5e, 0x2a, 0xe7, 0x00, 0x2c, 0xc6, 0x2f, 0x4f, 0xa7, +}; +static const unsigned char kat1372_addin0[] = { + 0x23, 0x0c, 0xe9, 0x51, 0x39, 0xb4, 0xbb, 0xcd, 0xf2, 0x0a, 0x02, 0x14, + 0xac, 0x95, 0x69, 0xaa, 0xbd, 0xe7, 0x18, 0x21, 0x3a, 0x73, 0x17, 0xa9, + 0x7b, 0xc9, 0x0e, 0x96, 0x74, 0xc1, 0xf1, 0x4e, 0x71, 0xfb, 0x0a, 0xd9, + 0x1b, 0x13, 0x70, 0x06, 0x81, 0xe6, 0x1c, 0x5b, 0x52, 0xa8, 0xce, 0x31, +}; +static const unsigned char kat1372_addin1[] = { + 0x5a, 0xbf, 0x26, 0x54, 0xf4, 0xeb, 0x3e, 0x85, 0x87, 0x81, 0x9f, 0x48, + 0x51, 0xa2, 0x41, 0x12, 0xbc, 0x71, 0x1a, 0x93, 0xd1, 0xf3, 0x6f, 0x1a, + 0x96, 0xe0, 0xdf, 0xd6, 0x09, 0xec, 0x1b, 0xfe, 0x00, 0xd6, 0x98, 0x44, + 0xd8, 0x05, 0x79, 0xdc, 0x55, 0x17, 0x50, 0x3c, 0xfd, 0x53, 0xea, 0x6a, +}; +static const unsigned char kat1372_retbits[] = { + 0xc5, 0x24, 0xdd, 0x2b, 0xcf, 0x49, 0x2f, 0x00, 0x87, 0x92, 0x80, 0x7b, + 0xbb, 0x96, 0x8f, 0x2d, 0xa7, 0xe2, 0xd7, 0x94, 0x87, 0x02, 0x96, 0x19, + 0xcd, 0x47, 0x52, 0xb0, 0x3c, 0x6c, 0xfc, 0x68, 0xfa, 0x90, 0xc6, 0x51, + 0xb4, 0x48, 0x0b, 0x65, 0x6f, 0xbb, 0xa3, 0x2a, 0x1a, 0xa0, 0xf2, 0x10, + 0xf5, 0xd8, 0x30, 0x4b, 0x5b, 0xc5, 0x7a, 0x27, 0x2f, 0x69, 0x78, 0x1a, + 0xa6, 0xac, 0xf3, 0x92, +}; +static const struct drbg_kat_no_reseed kat1372_t = { + 6, kat1372_entropyin, kat1372_nonce, kat1372_persstr, + kat1372_addin0, kat1372_addin1, kat1372_retbits +}; +static const struct drbg_kat kat1372 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1372_t +}; + +static const unsigned char kat1373_entropyin[] = { + 0x19, 0x23, 0xcd, 0x77, 0x47, 0x22, 0xc2, 0x35, 0xb8, 0x5f, 0x68, 0xc2, + 0x20, 0xa0, 0xf6, 0x75, 0xac, 0xb8, 0xfe, 0x4a, 0x2f, 0x3c, 0xdf, 0x56, + 0xb7, 0x29, 0x58, 0x63, 0x22, 0x78, 0x45, 0x33, 0x87, 0x2b, 0x8b, 0xc1, + 0xa6, 0x57, 0x09, 0x60, 0x47, 0xf6, 0x8f, 0x52, 0x48, 0x5a, 0x92, 0xee, +}; +static const unsigned char kat1373_nonce[] = {0}; +static const unsigned char kat1373_persstr[] = { + 0x98, 0x06, 0xa8, 0x7d, 0x7d, 0xc0, 0x47, 0xf0, 0x2c, 0xd8, 0x8d, 0xb5, + 0x6d, 0xdf, 0xc4, 0xe6, 0x8c, 0x42, 0xb4, 0xa9, 0x15, 0xfe, 0xe1, 0xc0, + 0x63, 0xaf, 0xf6, 0xa6, 0x2d, 0xef, 0x1a, 0xd7, 0x0c, 0xe2, 0xf1, 0xbb, + 0xd0, 0x68, 0xeb, 0xe1, 0xba, 0x01, 0xec, 0xf9, 0xcc, 0xd2, 0xdb, 0x17, +}; +static const unsigned char kat1373_addin0[] = { + 0x48, 0x3e, 0x45, 0xd4, 0xf3, 0xfc, 0x93, 0x07, 0xbb, 0xa3, 0x73, 0xb7, + 0x0e, 0x80, 0xb9, 0x85, 0xed, 0x1a, 0x93, 0x25, 0x7b, 0x0f, 0x62, 0x16, + 0x4e, 0xa4, 0x06, 0x5c, 0xb3, 0xb2, 0xac, 0x62, 0x7c, 0x7a, 0x02, 0x71, + 0xd0, 0x2c, 0x37, 0x09, 0x54, 0xc1, 0xd7, 0x95, 0x6b, 0x9f, 0x5d, 0x40, +}; +static const unsigned char kat1373_addin1[] = { + 0xc4, 0x6b, 0x57, 0x61, 0x64, 0x21, 0xa3, 0x72, 0x78, 0xc1, 0x1c, 0x3a, + 0xbf, 0xa1, 0x41, 0xf1, 0x7b, 0xdc, 0xf5, 0xe6, 0xbb, 0x9c, 0x66, 0x83, + 0xcc, 0x11, 0x60, 0xd2, 0x64, 0x68, 0x4a, 0x28, 0xab, 0x42, 0xd9, 0x39, + 0x07, 0x5e, 0xd5, 0xed, 0xd9, 0x46, 0xdd, 0x67, 0x42, 0x46, 0xd2, 0xc1, +}; +static const unsigned char kat1373_retbits[] = { + 0x8d, 0x87, 0x60, 0x73, 0xb9, 0x38, 0x46, 0xca, 0xb1, 0x38, 0xbd, 0xa1, + 0xa6, 0x77, 0xc0, 0xed, 0x06, 0xb2, 0xff, 0x77, 0x17, 0x1a, 0x5b, 0x71, + 0x33, 0x97, 0x04, 0xa6, 0x13, 0x9c, 0x2d, 0xf4, 0x70, 0xe1, 0x86, 0x93, + 0xf9, 0xaa, 0xf1, 0xc8, 0x83, 0x31, 0xd1, 0x9a, 0xc3, 0x9f, 0xd5, 0x2c, + 0x22, 0x63, 0x36, 0x4c, 0x99, 0xa3, 0xfc, 0x9a, 0x41, 0xbc, 0x93, 0x6a, + 0x35, 0xb7, 0x3f, 0x1f, +}; +static const struct drbg_kat_no_reseed kat1373_t = { + 7, kat1373_entropyin, kat1373_nonce, kat1373_persstr, + kat1373_addin0, kat1373_addin1, kat1373_retbits +}; +static const struct drbg_kat kat1373 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1373_t +}; + +static const unsigned char kat1374_entropyin[] = { + 0xf1, 0x49, 0xeb, 0x1c, 0x85, 0xa2, 0x04, 0xff, 0xab, 0x73, 0xe7, 0x72, + 0x8e, 0x46, 0x4c, 0x11, 0x59, 0x6e, 0xa6, 0xe8, 0x91, 0xb1, 0x43, 0xc1, + 0xa5, 0xfb, 0x4a, 0xf5, 0x69, 0x7b, 0x8f, 0xa3, 0xfc, 0x85, 0xaf, 0x22, + 0xb5, 0xd8, 0xe1, 0xbf, 0xc3, 0x79, 0xb5, 0x17, 0xf4, 0x01, 0x47, 0x0e, +}; +static const unsigned char kat1374_nonce[] = {0}; +static const unsigned char kat1374_persstr[] = { + 0x6d, 0x77, 0xa5, 0x5a, 0x69, 0x13, 0x85, 0xe5, 0x56, 0x73, 0x48, 0x0e, + 0x2f, 0x30, 0x2b, 0x57, 0x74, 0x95, 0xa3, 0x78, 0x15, 0x88, 0x94, 0xca, + 0xaa, 0xda, 0x3d, 0x08, 0xb7, 0x24, 0xf5, 0x66, 0x7c, 0x12, 0x18, 0x4e, + 0x5b, 0xe5, 0x4d, 0x1b, 0x36, 0xca, 0x2b, 0x33, 0xf8, 0xe6, 0xca, 0xfa, +}; +static const unsigned char kat1374_addin0[] = { + 0x13, 0xdf, 0x4c, 0xfc, 0xb7, 0x12, 0x3a, 0xeb, 0xfd, 0xa0, 0x2d, 0x39, + 0xee, 0x95, 0xba, 0x5c, 0xbc, 0x32, 0xb1, 0x89, 0x24, 0xe8, 0x7f, 0x34, + 0x57, 0x5f, 0xb1, 0xa3, 0x2c, 0xdd, 0x33, 0xd0, 0x49, 0x2c, 0x34, 0x14, + 0x68, 0x97, 0xcd, 0xa8, 0x65, 0xae, 0xd5, 0xb1, 0xce, 0xba, 0x8a, 0xc0, +}; +static const unsigned char kat1374_addin1[] = { + 0x14, 0xcc, 0x99, 0x01, 0xbd, 0xd0, 0xd1, 0x25, 0x2b, 0x19, 0xc0, 0x88, + 0x94, 0x77, 0x79, 0x27, 0xd3, 0x87, 0x41, 0xd0, 0xeb, 0xd4, 0x51, 0xca, + 0x59, 0x2c, 0x0c, 0x75, 0xe8, 0xfc, 0x12, 0x06, 0x25, 0xc5, 0x7d, 0x9e, + 0xfe, 0xfd, 0x19, 0x03, 0xd5, 0xca, 0x90, 0x2c, 0x73, 0x10, 0xfe, 0x51, +}; +static const unsigned char kat1374_retbits[] = { + 0xcf, 0x76, 0x4a, 0x67, 0xa7, 0x4c, 0xc0, 0x66, 0xfe, 0x70, 0x49, 0xa3, + 0x05, 0x59, 0x40, 0xf1, 0x10, 0x7b, 0x91, 0x8f, 0x82, 0xc7, 0x00, 0x55, + 0x84, 0xa3, 0x5d, 0x3e, 0x3b, 0xd6, 0x93, 0x3e, 0x3e, 0x92, 0x8d, 0xdc, + 0x8c, 0x93, 0xf5, 0xac, 0x54, 0xd0, 0x0e, 0x7e, 0xe4, 0x2e, 0xdd, 0x03, + 0x0c, 0x0e, 0xa6, 0x37, 0x25, 0x38, 0x8e, 0x1c, 0xcb, 0x99, 0xa5, 0x78, + 0x05, 0x85, 0x87, 0xe6, +}; +static const struct drbg_kat_no_reseed kat1374_t = { + 8, kat1374_entropyin, kat1374_nonce, kat1374_persstr, + kat1374_addin0, kat1374_addin1, kat1374_retbits +}; +static const struct drbg_kat kat1374 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1374_t +}; + +static const unsigned char kat1375_entropyin[] = { + 0x4f, 0x91, 0x6b, 0x44, 0xea, 0x32, 0xb5, 0x0c, 0x9e, 0xfd, 0xd1, 0x6d, + 0x9e, 0x5f, 0x28, 0xd8, 0x0f, 0x17, 0xee, 0xd3, 0x05, 0xda, 0x49, 0x8f, + 0x4e, 0xa9, 0xaf, 0xf0, 0xea, 0x2e, 0xc7, 0xc1, 0x5b, 0x59, 0x4a, 0x6f, + 0x8d, 0x80, 0xfa, 0xc7, 0xef, 0xab, 0x98, 0x86, 0xd6, 0xd5, 0xbf, 0xf7, +}; +static const unsigned char kat1375_nonce[] = {0}; +static const unsigned char kat1375_persstr[] = { + 0x07, 0x59, 0x3a, 0x0f, 0x2e, 0xc2, 0x94, 0xcb, 0x10, 0x3d, 0xcf, 0xde, + 0x66, 0x0b, 0x5b, 0x4a, 0x50, 0x1c, 0x7b, 0x50, 0x94, 0x24, 0x0a, 0x4d, + 0xd0, 0x4f, 0x7b, 0x89, 0x02, 0xc0, 0x1b, 0xac, 0x75, 0x4a, 0xf8, 0x50, + 0x34, 0xcc, 0x1c, 0x0e, 0x34, 0x13, 0x51, 0x1d, 0x14, 0xb3, 0xb7, 0xab, +}; +static const unsigned char kat1375_addin0[] = { + 0x51, 0x09, 0x28, 0x10, 0xd2, 0xc7, 0x64, 0x9f, 0xb2, 0xf1, 0xd7, 0x8e, + 0x0e, 0x06, 0xd8, 0x79, 0xc3, 0x86, 0x14, 0x1f, 0x8b, 0xf6, 0xee, 0x8c, + 0xe4, 0x45, 0xfc, 0xfc, 0x46, 0x9a, 0xf6, 0xb0, 0xce, 0x8c, 0xf5, 0x6d, + 0xa0, 0x37, 0xa3, 0xf1, 0xf5, 0x1b, 0xbd, 0x2f, 0x88, 0xb5, 0xe8, 0x09, +}; +static const unsigned char kat1375_addin1[] = { + 0x6a, 0x21, 0x41, 0xd8, 0x33, 0x31, 0xe5, 0x79, 0xb1, 0x6e, 0x37, 0xd3, + 0xc1, 0xc5, 0x51, 0xe4, 0xa6, 0x80, 0x55, 0xde, 0xab, 0xea, 0x83, 0xfd, + 0x23, 0x82, 0xc4, 0x18, 0xd4, 0x85, 0xb6, 0xa7, 0x3e, 0xfa, 0x85, 0x0c, + 0x0a, 0xa5, 0x64, 0x0c, 0x3b, 0x3b, 0x72, 0x64, 0x79, 0xff, 0xfe, 0x70, +}; +static const unsigned char kat1375_retbits[] = { + 0x64, 0x04, 0xe0, 0x65, 0x55, 0x8c, 0x18, 0xdc, 0xc3, 0x9b, 0x78, 0xac, + 0x60, 0xd7, 0x07, 0xab, 0xb1, 0xf6, 0x4a, 0xb6, 0x07, 0x0d, 0x3b, 0xc3, + 0xa5, 0xda, 0x00, 0x0f, 0xdf, 0x02, 0x49, 0x15, 0x40, 0xf7, 0x34, 0x8b, + 0x98, 0xa1, 0x59, 0x57, 0x1b, 0xc1, 0x36, 0x19, 0x6e, 0x17, 0xd8, 0x3d, + 0xa7, 0x3c, 0x39, 0x71, 0x8a, 0xff, 0x15, 0xda, 0x24, 0x69, 0xee, 0x57, + 0x26, 0x3f, 0x5d, 0x69, +}; +static const struct drbg_kat_no_reseed kat1375_t = { + 9, kat1375_entropyin, kat1375_nonce, kat1375_persstr, + kat1375_addin0, kat1375_addin1, kat1375_retbits +}; +static const struct drbg_kat kat1375 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1375_t +}; + +static const unsigned char kat1376_entropyin[] = { + 0x05, 0x27, 0x0c, 0x75, 0x41, 0xf5, 0x60, 0xeb, 0x0c, 0x8f, 0xd7, 0x08, + 0x8d, 0x60, 0x85, 0x60, 0x04, 0xf3, 0xf5, 0x60, 0x3d, 0xe9, 0x6d, 0x25, + 0xab, 0x49, 0x80, 0x5e, 0x23, 0xe2, 0x38, 0xb1, 0xcd, 0xc6, 0xa6, 0xaa, + 0xc5, 0xf9, 0x05, 0x32, 0x5b, 0x92, 0xc1, 0xe5, 0x93, 0xd6, 0xd2, 0x7d, +}; +static const unsigned char kat1376_nonce[] = {0}; +static const unsigned char kat1376_persstr[] = { + 0x7b, 0x34, 0xf3, 0xe2, 0xeb, 0xb0, 0x77, 0x9d, 0xbf, 0x26, 0xb6, 0x28, + 0x77, 0xcb, 0x67, 0x99, 0xf0, 0xbd, 0xff, 0x1b, 0xe8, 0xcd, 0x8f, 0x98, + 0x81, 0x2a, 0xe4, 0x1b, 0x06, 0xa8, 0xa7, 0x3d, 0x20, 0x2e, 0x93, 0xd8, + 0xc7, 0x63, 0x8b, 0x02, 0x8d, 0xa1, 0x92, 0x88, 0x2d, 0x97, 0x71, 0x58, +}; +static const unsigned char kat1376_addin0[] = { + 0xc2, 0x6a, 0xbc, 0x11, 0x09, 0x65, 0xae, 0x83, 0xd0, 0x27, 0x29, 0x66, + 0x00, 0x4a, 0x93, 0x8d, 0x0c, 0x05, 0x83, 0xf5, 0x06, 0x52, 0x2a, 0x3c, + 0x32, 0xdd, 0xc6, 0xdb, 0xcd, 0x8d, 0x64, 0x58, 0xdb, 0x70, 0x3d, 0x3e, + 0x2b, 0x30, 0xcc, 0x02, 0x3e, 0xc7, 0x65, 0x2e, 0xdd, 0x74, 0x7f, 0xdd, +}; +static const unsigned char kat1376_addin1[] = { + 0xf5, 0xc3, 0x8a, 0x59, 0xcc, 0xe7, 0xe8, 0xe2, 0x9d, 0x87, 0x67, 0xa0, + 0x9c, 0xc6, 0x56, 0xd3, 0x3e, 0xdf, 0xf4, 0x70, 0x3f, 0x7c, 0x98, 0x49, + 0x45, 0xf6, 0x64, 0x10, 0xfb, 0x19, 0x0b, 0xbe, 0x43, 0x82, 0xa4, 0x73, + 0xf4, 0xb3, 0x6f, 0xd1, 0x0d, 0x61, 0xd1, 0x6d, 0x30, 0x44, 0x66, 0xe6, +}; +static const unsigned char kat1376_retbits[] = { + 0x8d, 0x0e, 0x2e, 0x33, 0x7f, 0xbc, 0x86, 0x32, 0x58, 0x74, 0x22, 0x7e, + 0x48, 0xe9, 0xe3, 0xd8, 0xe7, 0x82, 0xb6, 0x95, 0x47, 0xac, 0x44, 0x45, + 0xce, 0x7c, 0x19, 0xa5, 0x8a, 0x63, 0xb5, 0xec, 0xb0, 0xf3, 0x67, 0x9f, + 0x0c, 0x43, 0x9e, 0xf0, 0x47, 0x9a, 0xc9, 0xaf, 0x22, 0xd0, 0x4f, 0x4f, + 0x57, 0x77, 0xcd, 0xa1, 0x31, 0x1c, 0x6c, 0x46, 0x37, 0xf3, 0x1d, 0xf8, + 0x60, 0xa6, 0x32, 0xac, +}; +static const struct drbg_kat_no_reseed kat1376_t = { + 10, kat1376_entropyin, kat1376_nonce, kat1376_persstr, + kat1376_addin0, kat1376_addin1, kat1376_retbits +}; +static const struct drbg_kat kat1376 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1376_t +}; + +static const unsigned char kat1377_entropyin[] = { + 0x0b, 0xe9, 0x52, 0x80, 0x22, 0x67, 0x17, 0xae, 0xe6, 0x50, 0xd2, 0xb8, + 0x49, 0x8a, 0x10, 0x74, 0xcf, 0xb5, 0x1e, 0xbc, 0x5c, 0x6f, 0x8b, 0x50, + 0xd7, 0x1c, 0x35, 0x6c, 0xe3, 0x7d, 0x67, 0x16, 0x70, 0x39, 0x12, 0x75, + 0x83, 0x81, 0xaf, 0x21, 0x0a, 0x70, 0x67, 0x0c, 0x70, 0x88, 0xa9, 0xc6, +}; +static const unsigned char kat1377_nonce[] = {0}; +static const unsigned char kat1377_persstr[] = { + 0x32, 0xe6, 0x8d, 0x6f, 0x66, 0x46, 0x22, 0x9b, 0x75, 0x1f, 0xf7, 0xa7, + 0x78, 0xba, 0xdc, 0xb7, 0xe7, 0x86, 0xfc, 0x35, 0x4a, 0xc1, 0x81, 0x46, + 0x02, 0x5b, 0xda, 0x69, 0x65, 0x16, 0x18, 0x48, 0x78, 0xa7, 0x11, 0x43, + 0x83, 0x4f, 0x0d, 0xe8, 0xef, 0x99, 0xa7, 0x3a, 0xe1, 0xb5, 0x12, 0xba, +}; +static const unsigned char kat1377_addin0[] = { + 0x72, 0x18, 0x96, 0xc4, 0x4c, 0xfb, 0x83, 0x21, 0x26, 0xa9, 0xf4, 0xcd, + 0x76, 0xab, 0x3a, 0x04, 0x1e, 0xeb, 0x14, 0x0e, 0xe1, 0x70, 0xed, 0xb8, + 0xb1, 0x0d, 0xe8, 0xe2, 0xe4, 0x39, 0xea, 0x66, 0x12, 0xaf, 0xb0, 0x6d, + 0x51, 0x83, 0xe7, 0x9e, 0x9f, 0x3b, 0x16, 0x4f, 0x27, 0xd3, 0x6c, 0x8f, +}; +static const unsigned char kat1377_addin1[] = { + 0xdc, 0x61, 0xfb, 0x8c, 0x38, 0x33, 0x01, 0x4f, 0xa8, 0x2b, 0x64, 0x0e, + 0x3b, 0xa8, 0xe8, 0x6f, 0x32, 0xc1, 0xfe, 0x90, 0xa5, 0x99, 0x68, 0x9d, + 0xab, 0xa0, 0xb9, 0x37, 0x8e, 0x75, 0x7f, 0x3d, 0x1e, 0x03, 0x9d, 0x53, + 0xf6, 0x25, 0xc9, 0x5c, 0x63, 0x96, 0x03, 0x40, 0xad, 0x6d, 0x4c, 0x57, +}; +static const unsigned char kat1377_retbits[] = { + 0xeb, 0xad, 0x75, 0x4d, 0xca, 0x66, 0xfc, 0x09, 0xc2, 0xe7, 0x73, 0x8c, + 0x14, 0x4b, 0x24, 0x57, 0x5e, 0x71, 0x85, 0xa4, 0x29, 0x50, 0xf9, 0xa1, + 0x9f, 0x73, 0x59, 0xc3, 0x39, 0xd9, 0xe6, 0xd0, 0x83, 0x71, 0x6e, 0x0a, + 0x9b, 0x5f, 0x3e, 0x2e, 0xea, 0x19, 0x2a, 0xdd, 0x56, 0xcc, 0x0c, 0xe9, + 0x1d, 0x5b, 0x30, 0x60, 0x85, 0xc1, 0x93, 0xc1, 0xd4, 0xaf, 0xa7, 0xa4, + 0x14, 0x80, 0xaa, 0x0c, +}; +static const struct drbg_kat_no_reseed kat1377_t = { + 11, kat1377_entropyin, kat1377_nonce, kat1377_persstr, + kat1377_addin0, kat1377_addin1, kat1377_retbits +}; +static const struct drbg_kat kat1377 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1377_t +}; + +static const unsigned char kat1378_entropyin[] = { + 0x0e, 0xb5, 0x9f, 0x84, 0x39, 0x58, 0x3e, 0xe5, 0xa8, 0xe7, 0xd3, 0x2d, + 0x40, 0xfb, 0x0a, 0xce, 0xef, 0x2f, 0xae, 0xc6, 0x76, 0xee, 0x46, 0x3e, + 0x7e, 0x7f, 0xba, 0xb1, 0xd5, 0xec, 0x8f, 0x25, 0xcf, 0x42, 0xfc, 0xc2, + 0xd0, 0xf3, 0xbb, 0xac, 0xc6, 0xa9, 0xbf, 0x75, 0xd9, 0x6c, 0x7d, 0x63, +}; +static const unsigned char kat1378_nonce[] = {0}; +static const unsigned char kat1378_persstr[] = { + 0x2f, 0xa9, 0x98, 0x94, 0x69, 0x03, 0xfc, 0xac, 0x98, 0xcb, 0x16, 0xdb, + 0xf3, 0xdb, 0xa9, 0x0a, 0x2d, 0xe7, 0xf8, 0xdd, 0x95, 0x34, 0x71, 0x88, + 0x19, 0xfa, 0x1a, 0xca, 0x97, 0x27, 0xb3, 0xfb, 0xd3, 0x91, 0x0e, 0x77, + 0x19, 0x29, 0x53, 0x1d, 0x12, 0x3c, 0x98, 0xd2, 0x13, 0x00, 0x97, 0x8b, +}; +static const unsigned char kat1378_addin0[] = { + 0xba, 0xa5, 0x9e, 0x86, 0x6e, 0x03, 0xf2, 0xa1, 0x2c, 0x36, 0x38, 0x7d, + 0xae, 0xa0, 0x69, 0xcc, 0x21, 0x6c, 0x7e, 0x94, 0x71, 0x4c, 0x49, 0xa7, + 0xd5, 0x0b, 0x60, 0x0d, 0xed, 0x65, 0xa7, 0x98, 0x65, 0xdc, 0xd2, 0x9c, + 0x46, 0xb6, 0xb6, 0x20, 0xe8, 0x7c, 0xd0, 0xa1, 0xe7, 0x08, 0x8e, 0x7c, +}; +static const unsigned char kat1378_addin1[] = { + 0x20, 0x35, 0xd7, 0x30, 0xdc, 0x18, 0x20, 0xac, 0x4d, 0xb5, 0x61, 0xdd, + 0xeb, 0xe8, 0xde, 0x44, 0x86, 0xad, 0x19, 0x48, 0xba, 0x4c, 0x34, 0xd9, + 0x0b, 0xcf, 0x3a, 0xd6, 0x4c, 0x60, 0x33, 0x78, 0xb5, 0x94, 0xb6, 0x39, + 0x9f, 0x34, 0x90, 0x98, 0xe6, 0x3b, 0x07, 0xe9, 0x38, 0x62, 0x16, 0x16, +}; +static const unsigned char kat1378_retbits[] = { + 0x56, 0x96, 0x97, 0x46, 0xdc, 0xee, 0xc4, 0x1f, 0xcc, 0x59, 0x5a, 0xbe, + 0x22, 0xdc, 0x43, 0x8e, 0x73, 0x9c, 0x50, 0x4f, 0x65, 0x18, 0x58, 0x0e, + 0x68, 0x2c, 0x52, 0xbd, 0x86, 0xcd, 0xa6, 0xf6, 0xe1, 0xfd, 0x46, 0x62, + 0xe8, 0x59, 0xf6, 0xa9, 0xc6, 0x80, 0x9a, 0xf4, 0xfd, 0x52, 0x4d, 0xe4, + 0x5a, 0xf6, 0x40, 0x27, 0x35, 0xf4, 0xc4, 0x3c, 0xdc, 0x4c, 0x4f, 0x4a, + 0x94, 0x62, 0x4e, 0xbf, +}; +static const struct drbg_kat_no_reseed kat1378_t = { + 12, kat1378_entropyin, kat1378_nonce, kat1378_persstr, + kat1378_addin0, kat1378_addin1, kat1378_retbits +}; +static const struct drbg_kat kat1378 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1378_t +}; + +static const unsigned char kat1379_entropyin[] = { + 0x2d, 0x09, 0x82, 0x62, 0xdc, 0x82, 0x8b, 0x18, 0x26, 0x0f, 0xf7, 0x0f, + 0x28, 0xe5, 0xcd, 0x0e, 0x00, 0x81, 0x75, 0x58, 0x36, 0xd1, 0x0f, 0xfd, + 0xe9, 0x08, 0xa1, 0xed, 0xf3, 0x12, 0x8b, 0x28, 0xe2, 0x74, 0x29, 0xa6, + 0x49, 0x34, 0x1e, 0xf0, 0x8e, 0xb7, 0x42, 0x73, 0xc8, 0x91, 0xc0, 0x40, +}; +static const unsigned char kat1379_nonce[] = {0}; +static const unsigned char kat1379_persstr[] = { + 0xf8, 0xa0, 0x3c, 0xb1, 0xae, 0x84, 0xb4, 0x96, 0xa8, 0x2a, 0x40, 0x6d, + 0x34, 0x05, 0x64, 0x40, 0x0f, 0x26, 0x11, 0x80, 0x83, 0x66, 0x48, 0x02, + 0x64, 0x15, 0x45, 0xb5, 0x7c, 0xf7, 0x55, 0x07, 0x09, 0xb6, 0x92, 0xe3, + 0xbc, 0xa2, 0xfc, 0xd8, 0xac, 0x72, 0x33, 0xf0, 0xf5, 0x4b, 0xe8, 0xb1, +}; +static const unsigned char kat1379_addin0[] = { + 0xd3, 0xdd, 0x72, 0x4c, 0x73, 0x5e, 0x63, 0xf5, 0xa4, 0x9a, 0x03, 0xba, + 0x5c, 0x31, 0x67, 0xb0, 0xc2, 0x1d, 0x95, 0x97, 0x6a, 0x4a, 0x91, 0xc2, + 0xc6, 0x64, 0x8c, 0xf2, 0xee, 0x01, 0x9d, 0x9d, 0x08, 0xc0, 0x33, 0xb2, + 0xed, 0x02, 0x3d, 0xe5, 0x46, 0x20, 0xb2, 0x37, 0x2e, 0x3f, 0x3b, 0x5d, +}; +static const unsigned char kat1379_addin1[] = { + 0xcf, 0xee, 0x61, 0xaa, 0x41, 0xdc, 0x59, 0xe7, 0x5c, 0xe9, 0x3e, 0xd3, + 0xa9, 0x2e, 0xc5, 0x06, 0xdc, 0x6d, 0x14, 0xc8, 0x0c, 0x56, 0x79, 0x13, + 0x15, 0x3a, 0xec, 0xbe, 0x5b, 0x9d, 0x8f, 0xfc, 0xe8, 0x9a, 0x8d, 0x73, + 0x44, 0x21, 0xda, 0xd0, 0xd4, 0x8a, 0xff, 0xab, 0x3e, 0xac, 0x0a, 0x2b, +}; +static const unsigned char kat1379_retbits[] = { + 0xee, 0xba, 0x82, 0x49, 0x46, 0x88, 0x83, 0x0e, 0x5f, 0x24, 0x41, 0x8e, + 0x38, 0xdc, 0xf5, 0x5e, 0x32, 0xa1, 0xd4, 0xb0, 0x43, 0x06, 0x6a, 0x99, + 0x6a, 0x7e, 0x8f, 0x11, 0xb7, 0x2a, 0x38, 0xd7, 0xfe, 0x27, 0xc7, 0xe5, + 0xbd, 0xdf, 0xa7, 0xc5, 0x6d, 0xf1, 0x18, 0x6f, 0x1c, 0xa5, 0x7d, 0xcb, + 0x33, 0x15, 0x96, 0x08, 0x00, 0x3a, 0xe1, 0xf2, 0xa4, 0x8d, 0x7a, 0x84, + 0x24, 0x9c, 0xa4, 0x65, +}; +static const struct drbg_kat_no_reseed kat1379_t = { + 13, kat1379_entropyin, kat1379_nonce, kat1379_persstr, + kat1379_addin0, kat1379_addin1, kat1379_retbits +}; +static const struct drbg_kat kat1379 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1379_t +}; + +static const unsigned char kat1380_entropyin[] = { + 0x93, 0x36, 0x3e, 0x22, 0xb3, 0x8f, 0x87, 0x89, 0x50, 0x71, 0x8c, 0x72, + 0x9c, 0xb3, 0xff, 0xb0, 0xfd, 0xf2, 0x15, 0x36, 0xe7, 0x19, 0x33, 0x35, + 0x83, 0x98, 0xaa, 0x41, 0x99, 0x81, 0x05, 0x24, 0xa7, 0x46, 0x3f, 0x2a, + 0x41, 0x4b, 0x5a, 0xbd, 0xe7, 0xc1, 0xa6, 0xd2, 0x2b, 0x1d, 0xf2, 0x5d, +}; +static const unsigned char kat1380_nonce[] = {0}; +static const unsigned char kat1380_persstr[] = { + 0x7a, 0x03, 0x29, 0xa3, 0xfe, 0xee, 0x3b, 0x0a, 0x55, 0x84, 0xeb, 0xf9, + 0x2e, 0x33, 0x67, 0x5e, 0x11, 0xea, 0x98, 0x47, 0xce, 0x52, 0xcc, 0x0d, + 0xf4, 0xea, 0x5c, 0x4f, 0x2b, 0x36, 0x62, 0x12, 0x19, 0x10, 0x86, 0x47, + 0x17, 0xbe, 0xe9, 0xf0, 0xbb, 0x6d, 0x02, 0x4e, 0xb2, 0xab, 0xed, 0x4e, +}; +static const unsigned char kat1380_addin0[] = { + 0xb0, 0xbf, 0x3a, 0xe2, 0xcf, 0xe4, 0xd3, 0xfa, 0xe5, 0x57, 0x37, 0x81, + 0x45, 0x6b, 0x37, 0x25, 0xa5, 0x95, 0x98, 0xd5, 0x2f, 0xfd, 0xd0, 0x81, + 0xb4, 0x12, 0x10, 0x64, 0x81, 0xeb, 0x04, 0x49, 0xc6, 0xf6, 0x80, 0x71, + 0x7a, 0x72, 0x55, 0x4f, 0x3a, 0xbd, 0x7e, 0xcb, 0x00, 0xa5, 0xb9, 0x76, +}; +static const unsigned char kat1380_addin1[] = { + 0xb9, 0x4a, 0x91, 0x34, 0x25, 0x70, 0x79, 0xc1, 0x61, 0x92, 0x06, 0x6b, + 0x6e, 0x3e, 0x50, 0xd6, 0x3d, 0x58, 0xde, 0xc6, 0x63, 0x25, 0x24, 0x11, + 0x4e, 0x6b, 0xce, 0x34, 0x15, 0xdb, 0x5a, 0xbf, 0xe0, 0xc8, 0x91, 0x08, + 0xcf, 0x2f, 0xd6, 0x47, 0x8a, 0x97, 0x07, 0x9f, 0x51, 0x90, 0xf1, 0xc5, +}; +static const unsigned char kat1380_retbits[] = { + 0xac, 0x7c, 0x1a, 0x00, 0x22, 0x8f, 0x6a, 0x7a, 0x06, 0x20, 0xd0, 0x0d, + 0xca, 0x7d, 0xd3, 0x8e, 0x53, 0xc7, 0x1d, 0x31, 0xaa, 0xce, 0x47, 0x07, + 0x03, 0xe4, 0xd8, 0x91, 0x1b, 0x07, 0x1b, 0x5a, 0xe5, 0x17, 0xaf, 0x60, + 0xff, 0x9f, 0x2a, 0xa5, 0x70, 0xb1, 0x8d, 0x35, 0xb2, 0xdc, 0xf8, 0xaf, + 0x0e, 0xe1, 0x4b, 0xa6, 0x46, 0xf2, 0xbe, 0x35, 0x57, 0x1c, 0x7c, 0xec, + 0x44, 0xec, 0x88, 0xd4, +}; +static const struct drbg_kat_no_reseed kat1380_t = { + 14, kat1380_entropyin, kat1380_nonce, kat1380_persstr, + kat1380_addin0, kat1380_addin1, kat1380_retbits +}; +static const struct drbg_kat kat1380 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1380_t +}; + +static const unsigned char kat1381_entropyin[] = { + 0x56, 0x67, 0xdf, 0x8e, 0x81, 0x47, 0xf0, 0xd5, 0x93, 0x98, 0x9c, 0x0b, + 0x28, 0xbe, 0x74, 0x97, 0xfa, 0x9e, 0x28, 0xf4, 0x6c, 0x00, 0xbd, 0xe1, + 0x2e, 0x53, 0xaa, 0x26, 0xdc, 0x3d, 0x07, 0xdc, 0x8d, 0x76, 0x08, 0xb5, + 0x5a, 0x16, 0xe9, 0x27, 0x09, 0x76, 0x2c, 0x2c, 0x1d, 0xee, 0x64, 0xb3, +}; +static const unsigned char kat1381_nonce[] = {0}; +static const unsigned char kat1381_persstr[] = {0}; +static const unsigned char kat1381_addin0[] = {0}; +static const unsigned char kat1381_addin1[] = {0}; +static const unsigned char kat1381_retbits[] = { + 0x63, 0x9e, 0x53, 0x94, 0xb5, 0x39, 0xda, 0x7b, 0xe7, 0xe3, 0x65, 0x84, + 0x9c, 0x69, 0x53, 0x38, 0xc2, 0x96, 0x95, 0x49, 0x39, 0xe4, 0xd6, 0x05, + 0xc8, 0x8f, 0x60, 0x56, 0xca, 0xb6, 0x36, 0x83, 0x8e, 0x2a, 0x51, 0xfb, + 0xd0, 0x99, 0x63, 0x84, 0x4b, 0x04, 0x4e, 0x83, 0xb4, 0x54, 0xc8, 0x7a, + 0x52, 0xd2, 0x5d, 0xad, 0x86, 0xcd, 0x52, 0xb9, 0xfe, 0x8a, 0x66, 0xe1, + 0xb0, 0x1f, 0xd4, 0xe3, +}; +static const struct drbg_kat_no_reseed kat1381_t = { + 0, kat1381_entropyin, kat1381_nonce, kat1381_persstr, + kat1381_addin0, kat1381_addin1, kat1381_retbits +}; +static const struct drbg_kat kat1381 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1381_t +}; + +static const unsigned char kat1382_entropyin[] = { + 0x81, 0x2b, 0x0a, 0xd3, 0x10, 0x61, 0xe2, 0xee, 0x11, 0xf6, 0x8f, 0xba, + 0x7c, 0x6e, 0xa4, 0xce, 0xe8, 0xce, 0xb4, 0xea, 0xe5, 0x0f, 0x11, 0xed, + 0xa7, 0xb1, 0xf3, 0x8b, 0x52, 0xd2, 0xf4, 0x9e, 0x06, 0x1a, 0xcd, 0x25, + 0xcc, 0x55, 0x81, 0x9e, 0x72, 0x16, 0x0b, 0x31, 0x09, 0x45, 0xfc, 0x8e, +}; +static const unsigned char kat1382_nonce[] = {0}; +static const unsigned char kat1382_persstr[] = {0}; +static const unsigned char kat1382_addin0[] = {0}; +static const unsigned char kat1382_addin1[] = {0}; +static const unsigned char kat1382_retbits[] = { + 0x61, 0x48, 0x21, 0xe0, 0x84, 0x1d, 0xcf, 0x02, 0xb4, 0x97, 0x9d, 0xf0, + 0xd9, 0x07, 0x9b, 0xd6, 0x33, 0x4a, 0xcb, 0xef, 0xd0, 0x91, 0x21, 0xe5, + 0x12, 0x39, 0x8f, 0x6b, 0x21, 0x17, 0x8c, 0x1e, 0x99, 0x8d, 0x19, 0x9d, + 0x33, 0x0a, 0xf4, 0xdd, 0x16, 0x2e, 0xe1, 0xad, 0xb6, 0x1e, 0xcf, 0x28, + 0xee, 0xec, 0xde, 0x8a, 0x89, 0x59, 0x93, 0xc2, 0x71, 0x14, 0x27, 0xa3, + 0xbb, 0xe9, 0x09, 0x32, +}; +static const struct drbg_kat_no_reseed kat1382_t = { + 1, kat1382_entropyin, kat1382_nonce, kat1382_persstr, + kat1382_addin0, kat1382_addin1, kat1382_retbits +}; +static const struct drbg_kat kat1382 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1382_t +}; + +static const unsigned char kat1383_entropyin[] = { + 0x87, 0xb8, 0x33, 0xc1, 0xdf, 0x6c, 0x73, 0xd7, 0x78, 0x0b, 0x29, 0x7d, + 0xcd, 0x08, 0xbd, 0x12, 0x2f, 0x3e, 0x4a, 0xbd, 0x4d, 0xca, 0x67, 0x38, + 0xc5, 0x5e, 0x51, 0xd6, 0x70, 0x9e, 0x92, 0x65, 0x6a, 0x17, 0x9d, 0x16, + 0x35, 0x2a, 0xf0, 0xbf, 0x13, 0xf0, 0xeb, 0xd2, 0x83, 0x33, 0x34, 0x95, +}; +static const unsigned char kat1383_nonce[] = {0}; +static const unsigned char kat1383_persstr[] = {0}; +static const unsigned char kat1383_addin0[] = {0}; +static const unsigned char kat1383_addin1[] = {0}; +static const unsigned char kat1383_retbits[] = { + 0xa3, 0xd0, 0xe6, 0xfd, 0x6d, 0xc3, 0xec, 0x6c, 0x7e, 0x18, 0xeb, 0xfc, + 0x4b, 0x4b, 0xb3, 0x8a, 0x83, 0x5b, 0x95, 0xe0, 0x1a, 0x68, 0xda, 0x4d, + 0x4c, 0x72, 0xd3, 0x86, 0x3c, 0x0e, 0x39, 0x36, 0x5d, 0x4c, 0xa4, 0x60, + 0xac, 0x0b, 0xdb, 0xb0, 0xbc, 0xfa, 0xdb, 0x0c, 0x07, 0xd1, 0xf8, 0xd5, + 0xf1, 0x7e, 0xdb, 0x04, 0x3d, 0x0e, 0xc5, 0xa9, 0xfe, 0xa4, 0x9f, 0xf3, + 0x9d, 0x4f, 0xe1, 0xb7, +}; +static const struct drbg_kat_no_reseed kat1383_t = { + 2, kat1383_entropyin, kat1383_nonce, kat1383_persstr, + kat1383_addin0, kat1383_addin1, kat1383_retbits +}; +static const struct drbg_kat kat1383 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1383_t +}; + +static const unsigned char kat1384_entropyin[] = { + 0x97, 0x4a, 0x99, 0x93, 0xcb, 0xef, 0xeb, 0x61, 0x45, 0xaf, 0x84, 0x22, + 0x7a, 0x7f, 0x41, 0xe0, 0x12, 0x7d, 0x2a, 0xf7, 0xf0, 0x3c, 0x8d, 0x30, + 0xd8, 0xfc, 0x5e, 0x2b, 0x53, 0x32, 0x27, 0x85, 0xb5, 0x5b, 0xfc, 0x48, + 0x48, 0x9b, 0xce, 0x8c, 0xbc, 0xd6, 0x2b, 0x0f, 0x63, 0x0a, 0x0d, 0x26, +}; +static const unsigned char kat1384_nonce[] = {0}; +static const unsigned char kat1384_persstr[] = {0}; +static const unsigned char kat1384_addin0[] = {0}; +static const unsigned char kat1384_addin1[] = {0}; +static const unsigned char kat1384_retbits[] = { + 0xb8, 0xd3, 0xa4, 0x16, 0x6d, 0xc1, 0x30, 0x3b, 0x12, 0x02, 0x24, 0x77, + 0xbb, 0x95, 0x4c, 0xb1, 0x8f, 0x26, 0xc1, 0x5e, 0xe3, 0x21, 0x26, 0x4e, + 0x26, 0x96, 0xe1, 0x9a, 0x05, 0xdd, 0x77, 0xc7, 0xf6, 0x6d, 0x15, 0xfc, + 0xa1, 0xa9, 0xa3, 0x9e, 0xc6, 0x80, 0x64, 0x96, 0x0b, 0x2a, 0x81, 0xa9, + 0x67, 0x29, 0xf9, 0xfd, 0x30, 0xdc, 0x3c, 0x17, 0xa4, 0x88, 0x5f, 0xa8, + 0x57, 0x84, 0xfe, 0x88, +}; +static const struct drbg_kat_no_reseed kat1384_t = { + 3, kat1384_entropyin, kat1384_nonce, kat1384_persstr, + kat1384_addin0, kat1384_addin1, kat1384_retbits +}; +static const struct drbg_kat kat1384 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1384_t +}; + +static const unsigned char kat1385_entropyin[] = { + 0xe4, 0xbf, 0x9e, 0xdc, 0x2a, 0x80, 0xb8, 0x2b, 0x9c, 0xed, 0xcf, 0xc2, + 0x4a, 0xad, 0xcc, 0x1c, 0x86, 0x87, 0xb2, 0x83, 0xd2, 0xc8, 0xd7, 0xa2, + 0xe8, 0xe6, 0xe3, 0x21, 0xd8, 0x2b, 0xca, 0x7f, 0x39, 0x52, 0x2f, 0x16, + 0xf0, 0xeb, 0xe0, 0x5d, 0x9f, 0x34, 0xa6, 0x79, 0xba, 0xab, 0xda, 0xbf, +}; +static const unsigned char kat1385_nonce[] = {0}; +static const unsigned char kat1385_persstr[] = {0}; +static const unsigned char kat1385_addin0[] = {0}; +static const unsigned char kat1385_addin1[] = {0}; +static const unsigned char kat1385_retbits[] = { + 0x03, 0x4e, 0x73, 0xc2, 0xd0, 0x87, 0xc0, 0xc8, 0x56, 0x0b, 0xe9, 0x1b, + 0xce, 0x03, 0x5f, 0x21, 0x01, 0x05, 0xc3, 0xa0, 0x55, 0x57, 0x32, 0x38, + 0xe5, 0xf7, 0xd3, 0xff, 0x81, 0xc4, 0x34, 0x69, 0x2e, 0x73, 0x1f, 0xf9, + 0x24, 0x60, 0x9a, 0xb3, 0x65, 0x5b, 0x82, 0xab, 0xc0, 0x11, 0xce, 0xba, + 0x4f, 0xad, 0x2d, 0x66, 0xa1, 0x52, 0x23, 0x96, 0x11, 0xcf, 0xc5, 0x80, + 0xe0, 0x5f, 0xa5, 0x4c, +}; +static const struct drbg_kat_no_reseed kat1385_t = { + 4, kat1385_entropyin, kat1385_nonce, kat1385_persstr, + kat1385_addin0, kat1385_addin1, kat1385_retbits +}; +static const struct drbg_kat kat1385 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1385_t +}; + +static const unsigned char kat1386_entropyin[] = { + 0x5c, 0xe9, 0xed, 0xc1, 0x2b, 0xe6, 0xc7, 0x8d, 0xb3, 0xf1, 0xb9, 0x8a, + 0xe5, 0x35, 0xa3, 0xc8, 0x95, 0x8b, 0xee, 0xbd, 0xa0, 0x59, 0x4f, 0x23, + 0x9b, 0x62, 0x65, 0xff, 0x81, 0x21, 0x6c, 0x59, 0x8b, 0xbb, 0x67, 0x38, + 0x2e, 0xfc, 0x01, 0x91, 0xe8, 0x62, 0x66, 0xd7, 0xe6, 0x2a, 0xad, 0xf1, +}; +static const unsigned char kat1386_nonce[] = {0}; +static const unsigned char kat1386_persstr[] = {0}; +static const unsigned char kat1386_addin0[] = {0}; +static const unsigned char kat1386_addin1[] = {0}; +static const unsigned char kat1386_retbits[] = { + 0x2e, 0xbc, 0xbb, 0x47, 0x08, 0xf6, 0x32, 0x5f, 0xd3, 0x8d, 0x46, 0x3f, + 0x45, 0x1a, 0xcb, 0x2b, 0x2d, 0x58, 0xd7, 0xa8, 0x56, 0x65, 0x26, 0x25, + 0x4b, 0x47, 0x2e, 0x33, 0x90, 0xd5, 0x90, 0xa0, 0x11, 0xc6, 0x7f, 0xac, + 0x45, 0x14, 0x12, 0x6f, 0xce, 0x0c, 0xf9, 0xd7, 0x50, 0x60, 0xa2, 0xfb, + 0xa8, 0xc3, 0x8e, 0x0f, 0xfa, 0x69, 0x0f, 0x8d, 0xc7, 0x43, 0x2b, 0x94, + 0x28, 0x57, 0x87, 0xd3, +}; +static const struct drbg_kat_no_reseed kat1386_t = { + 5, kat1386_entropyin, kat1386_nonce, kat1386_persstr, + kat1386_addin0, kat1386_addin1, kat1386_retbits +}; +static const struct drbg_kat kat1386 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1386_t +}; + +static const unsigned char kat1387_entropyin[] = { + 0xa7, 0xd0, 0xdb, 0x93, 0xe7, 0x7f, 0xf1, 0xd1, 0xae, 0x04, 0xa8, 0x2b, + 0x7f, 0xb1, 0xc1, 0xdc, 0xf3, 0x3a, 0x1a, 0x63, 0x5b, 0xf5, 0x76, 0xbd, + 0x4a, 0xca, 0x14, 0x8e, 0xfb, 0xf9, 0x9c, 0x20, 0x00, 0x0e, 0xc4, 0x93, + 0x1b, 0x4c, 0xc3, 0xcd, 0x33, 0xe9, 0x0f, 0xac, 0x35, 0x1e, 0xed, 0xae, +}; +static const unsigned char kat1387_nonce[] = {0}; +static const unsigned char kat1387_persstr[] = {0}; +static const unsigned char kat1387_addin0[] = {0}; +static const unsigned char kat1387_addin1[] = {0}; +static const unsigned char kat1387_retbits[] = { + 0x06, 0x10, 0xcf, 0x7d, 0xb6, 0x03, 0x86, 0xba, 0x11, 0xb4, 0xee, 0x09, + 0x14, 0xf4, 0xda, 0x29, 0x04, 0x13, 0xa4, 0x5a, 0x2e, 0xc5, 0x52, 0x96, + 0x32, 0x8c, 0xf4, 0xe9, 0xcc, 0xe0, 0x13, 0x5e, 0xcc, 0x8f, 0x4d, 0x79, + 0x15, 0xf1, 0x3f, 0xd5, 0xb1, 0xcf, 0x7c, 0x93, 0x3e, 0xf4, 0xa1, 0x6e, + 0xa6, 0x72, 0x7e, 0xc7, 0x8e, 0xa4, 0x2a, 0x1e, 0x5b, 0xb0, 0x0b, 0x49, + 0x30, 0x10, 0xac, 0xfe, +}; +static const struct drbg_kat_no_reseed kat1387_t = { + 6, kat1387_entropyin, kat1387_nonce, kat1387_persstr, + kat1387_addin0, kat1387_addin1, kat1387_retbits +}; +static const struct drbg_kat kat1387 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1387_t +}; + +static const unsigned char kat1388_entropyin[] = { + 0xb3, 0xbb, 0xa7, 0x1d, 0x87, 0xb1, 0x11, 0x15, 0xa8, 0x37, 0x3c, 0x1c, + 0x82, 0xef, 0x2d, 0x03, 0x5c, 0x47, 0xd1, 0x85, 0x8f, 0x6f, 0xea, 0x1c, + 0xae, 0xe3, 0x4a, 0x9e, 0xde, 0x78, 0x21, 0x5f, 0x27, 0xa5, 0xd5, 0x1f, + 0xbe, 0x6a, 0x54, 0x21, 0xbe, 0x5b, 0xa7, 0xa3, 0x48, 0xf4, 0x11, 0x5b, +}; +static const unsigned char kat1388_nonce[] = {0}; +static const unsigned char kat1388_persstr[] = {0}; +static const unsigned char kat1388_addin0[] = {0}; +static const unsigned char kat1388_addin1[] = {0}; +static const unsigned char kat1388_retbits[] = { + 0x0e, 0x56, 0x84, 0xcf, 0x87, 0x4f, 0x96, 0xb2, 0x62, 0xd7, 0x98, 0x84, + 0xde, 0x6e, 0xa2, 0x18, 0x62, 0xb0, 0x1d, 0x07, 0x6e, 0x47, 0xbe, 0x99, + 0x69, 0xd5, 0x54, 0x79, 0x1e, 0xb8, 0x10, 0x59, 0x83, 0xb0, 0x36, 0x49, + 0x76, 0xee, 0xe0, 0x3a, 0x7a, 0xf1, 0xc3, 0x7f, 0x8d, 0xc7, 0x31, 0xe7, + 0xd3, 0x76, 0x19, 0xfe, 0x98, 0x97, 0x7f, 0x60, 0x7e, 0xdb, 0x1a, 0x18, + 0xa0, 0xc9, 0x6d, 0xdb, +}; +static const struct drbg_kat_no_reseed kat1388_t = { + 7, kat1388_entropyin, kat1388_nonce, kat1388_persstr, + kat1388_addin0, kat1388_addin1, kat1388_retbits +}; +static const struct drbg_kat kat1388 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1388_t +}; + +static const unsigned char kat1389_entropyin[] = { + 0x65, 0xf0, 0x4b, 0x9f, 0x59, 0xc0, 0x1d, 0x80, 0xb5, 0xba, 0x9b, 0x17, + 0x12, 0x2e, 0x9c, 0xfe, 0x9b, 0xa5, 0x4f, 0x70, 0x8b, 0xc7, 0x60, 0x8a, + 0x0b, 0xcb, 0x96, 0x0c, 0xd4, 0x12, 0x41, 0x65, 0xac, 0x88, 0x6f, 0xf0, + 0xde, 0x77, 0x06, 0x4b, 0x01, 0xee, 0x4d, 0x18, 0x3c, 0xdd, 0xd3, 0x52, +}; +static const unsigned char kat1389_nonce[] = {0}; +static const unsigned char kat1389_persstr[] = {0}; +static const unsigned char kat1389_addin0[] = {0}; +static const unsigned char kat1389_addin1[] = {0}; +static const unsigned char kat1389_retbits[] = { + 0x23, 0x7a, 0x26, 0x29, 0x58, 0xa1, 0x6c, 0x52, 0x21, 0x0b, 0xc6, 0xfb, + 0xa0, 0xa0, 0x5b, 0x79, 0x5b, 0x6f, 0x86, 0x6f, 0x97, 0x69, 0xaa, 0xfa, + 0x0c, 0xc2, 0x6d, 0x15, 0x7f, 0x28, 0xee, 0x0b, 0xdb, 0x10, 0xc2, 0x64, + 0x2b, 0xdc, 0x15, 0xdf, 0xb2, 0x51, 0xa1, 0xf0, 0x09, 0x48, 0xec, 0x97, + 0x42, 0x05, 0xdb, 0x45, 0xc0, 0xe5, 0x51, 0xd6, 0x6e, 0xf5, 0xa2, 0x9e, + 0x06, 0xe8, 0x72, 0x01, +}; +static const struct drbg_kat_no_reseed kat1389_t = { + 8, kat1389_entropyin, kat1389_nonce, kat1389_persstr, + kat1389_addin0, kat1389_addin1, kat1389_retbits +}; +static const struct drbg_kat kat1389 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1389_t +}; + +static const unsigned char kat1390_entropyin[] = { + 0xea, 0x43, 0xc2, 0x91, 0xee, 0xb5, 0xdc, 0xe5, 0x5c, 0x76, 0x33, 0x92, + 0x86, 0x26, 0x0a, 0x7c, 0xe4, 0x1c, 0x24, 0x6b, 0x7f, 0x84, 0xff, 0x5c, + 0x83, 0x41, 0x8f, 0x01, 0x39, 0x7e, 0x46, 0xad, 0xe4, 0xfc, 0x95, 0x10, + 0xc2, 0xb8, 0xc7, 0xd6, 0x8d, 0xcf, 0xa1, 0x35, 0x8c, 0x3f, 0xa1, 0x29, +}; +static const unsigned char kat1390_nonce[] = {0}; +static const unsigned char kat1390_persstr[] = {0}; +static const unsigned char kat1390_addin0[] = {0}; +static const unsigned char kat1390_addin1[] = {0}; +static const unsigned char kat1390_retbits[] = { + 0x7e, 0xdd, 0x8b, 0xdc, 0x5e, 0x83, 0x69, 0xe5, 0x1d, 0x9d, 0x55, 0x11, + 0x03, 0xab, 0xeb, 0x91, 0x0c, 0x73, 0xed, 0x10, 0xfe, 0xd4, 0x12, 0x22, + 0x40, 0x03, 0x96, 0xab, 0xea, 0x1c, 0x18, 0x03, 0x44, 0x09, 0x6e, 0xb4, + 0x1b, 0xd4, 0x4a, 0x59, 0xda, 0xab, 0x19, 0xfc, 0xb9, 0xff, 0x40, 0x62, + 0x96, 0x9e, 0x11, 0xf3, 0xcf, 0xa7, 0x96, 0x09, 0x1b, 0x60, 0x88, 0x14, + 0xcc, 0xc2, 0xe7, 0x13, +}; +static const struct drbg_kat_no_reseed kat1390_t = { + 9, kat1390_entropyin, kat1390_nonce, kat1390_persstr, + kat1390_addin0, kat1390_addin1, kat1390_retbits +}; +static const struct drbg_kat kat1390 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1390_t +}; + +static const unsigned char kat1391_entropyin[] = { + 0x57, 0xd2, 0xb1, 0xcb, 0x0e, 0x13, 0x7e, 0x3b, 0xe1, 0x50, 0xa9, 0xf4, + 0x0c, 0x89, 0x6c, 0xba, 0x0a, 0x58, 0x33, 0x5c, 0x0d, 0x92, 0x70, 0x59, + 0xd3, 0xc9, 0xb6, 0x3a, 0xb9, 0x80, 0x0e, 0x81, 0xcd, 0x98, 0x03, 0xd1, + 0x62, 0x5f, 0x3f, 0xe5, 0x53, 0xa6, 0x90, 0xc2, 0x87, 0x87, 0xc4, 0x5f, +}; +static const unsigned char kat1391_nonce[] = {0}; +static const unsigned char kat1391_persstr[] = {0}; +static const unsigned char kat1391_addin0[] = {0}; +static const unsigned char kat1391_addin1[] = {0}; +static const unsigned char kat1391_retbits[] = { + 0xef, 0x27, 0x8d, 0x11, 0xa6, 0xd6, 0x94, 0xb3, 0x0e, 0xd5, 0xa1, 0x08, + 0x1e, 0xb2, 0xbf, 0x3d, 0x2e, 0xd7, 0x87, 0x25, 0xa6, 0x7e, 0xd7, 0xe0, + 0x14, 0xf7, 0x9e, 0x5b, 0xe2, 0xef, 0xfe, 0x68, 0x71, 0xaf, 0x2b, 0xdf, + 0xef, 0xfc, 0xc6, 0xca, 0x99, 0x9c, 0x09, 0x7c, 0x62, 0x01, 0x84, 0xfc, + 0x60, 0x71, 0x3a, 0xa3, 0x99, 0x07, 0x90, 0x9d, 0x6e, 0xb1, 0x53, 0xd2, + 0xb6, 0x11, 0x67, 0x3c, +}; +static const struct drbg_kat_no_reseed kat1391_t = { + 10, kat1391_entropyin, kat1391_nonce, kat1391_persstr, + kat1391_addin0, kat1391_addin1, kat1391_retbits +}; +static const struct drbg_kat kat1391 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1391_t +}; + +static const unsigned char kat1392_entropyin[] = { + 0xf5, 0x4d, 0x75, 0xfe, 0x5e, 0x7f, 0xe6, 0xd8, 0x5a, 0x6b, 0x47, 0x22, + 0x88, 0xb4, 0x63, 0x3b, 0xd5, 0x43, 0x77, 0xb8, 0xb4, 0xe5, 0x6a, 0x4a, + 0xc0, 0x47, 0xba, 0x7c, 0xa2, 0x04, 0x01, 0x37, 0x2a, 0xe2, 0x4c, 0x4b, + 0xd1, 0x29, 0x5a, 0xf9, 0xb9, 0x9c, 0xdc, 0xc8, 0xd0, 0xd8, 0x37, 0xb1, +}; +static const unsigned char kat1392_nonce[] = {0}; +static const unsigned char kat1392_persstr[] = {0}; +static const unsigned char kat1392_addin0[] = {0}; +static const unsigned char kat1392_addin1[] = {0}; +static const unsigned char kat1392_retbits[] = { + 0xc8, 0xb5, 0xcb, 0x19, 0xfd, 0x44, 0x34, 0x22, 0x53, 0x3d, 0xa7, 0x4d, + 0xaf, 0xb2, 0xe3, 0xa7, 0x3b, 0xef, 0x13, 0xb9, 0xcf, 0x1c, 0x1c, 0xe6, + 0x10, 0x40, 0x78, 0x55, 0x71, 0x35, 0x32, 0x20, 0xca, 0xab, 0x0b, 0x4e, + 0xd1, 0xfa, 0x37, 0x30, 0x2a, 0x30, 0x8a, 0x31, 0xe1, 0xc7, 0xe4, 0x4d, + 0xb4, 0x66, 0x9a, 0x86, 0x8d, 0xa8, 0x53, 0x6e, 0x68, 0x89, 0xbe, 0x3e, + 0xc6, 0x15, 0x45, 0xfe, +}; +static const struct drbg_kat_no_reseed kat1392_t = { + 11, kat1392_entropyin, kat1392_nonce, kat1392_persstr, + kat1392_addin0, kat1392_addin1, kat1392_retbits +}; +static const struct drbg_kat kat1392 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1392_t +}; + +static const unsigned char kat1393_entropyin[] = { + 0x1f, 0x2f, 0xd9, 0x79, 0x65, 0x6d, 0x5a, 0xf3, 0xcb, 0x2b, 0xf9, 0xa4, + 0x49, 0xb2, 0xe0, 0x78, 0x35, 0xb9, 0x59, 0xe2, 0x18, 0x31, 0x74, 0x18, + 0xdb, 0xd1, 0x0a, 0x01, 0x67, 0x96, 0xe2, 0x1a, 0x64, 0x45, 0x3c, 0x76, + 0x51, 0x30, 0xb7, 0xd8, 0x26, 0x81, 0xa7, 0x0c, 0xfa, 0x43, 0x89, 0x75, +}; +static const unsigned char kat1393_nonce[] = {0}; +static const unsigned char kat1393_persstr[] = {0}; +static const unsigned char kat1393_addin0[] = {0}; +static const unsigned char kat1393_addin1[] = {0}; +static const unsigned char kat1393_retbits[] = { + 0x40, 0x88, 0x42, 0xf1, 0x5a, 0x33, 0x51, 0x92, 0x89, 0x64, 0xe7, 0x79, + 0x28, 0xbf, 0xec, 0xb8, 0xdc, 0x0c, 0x27, 0x25, 0xa0, 0xb4, 0x70, 0xed, + 0xb7, 0x4a, 0x13, 0x91, 0xfe, 0xd9, 0x1b, 0x40, 0x01, 0x04, 0x31, 0xe4, + 0x76, 0x7c, 0xf8, 0xe8, 0x6b, 0x3f, 0x64, 0x0f, 0x4e, 0x98, 0xa1, 0xef, + 0x4e, 0x54, 0xf5, 0xa5, 0xd3, 0xbb, 0xf6, 0x9c, 0x4c, 0x7a, 0x46, 0x2a, + 0xd6, 0x7a, 0x6a, 0xe5, +}; +static const struct drbg_kat_no_reseed kat1393_t = { + 12, kat1393_entropyin, kat1393_nonce, kat1393_persstr, + kat1393_addin0, kat1393_addin1, kat1393_retbits +}; +static const struct drbg_kat kat1393 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1393_t +}; + +static const unsigned char kat1394_entropyin[] = { + 0x72, 0x79, 0x67, 0x6c, 0xff, 0x67, 0x61, 0xdd, 0x73, 0x8a, 0x34, 0x7b, + 0x64, 0x4e, 0x69, 0x1e, 0x0f, 0xec, 0xbc, 0xd8, 0x2c, 0x2f, 0x07, 0x36, + 0xa2, 0x61, 0xda, 0x3a, 0x66, 0x33, 0x25, 0x9f, 0x56, 0xbd, 0xc4, 0x4d, + 0xcf, 0x0d, 0x0b, 0xda, 0x35, 0xbf, 0xe7, 0x74, 0x63, 0x26, 0x5c, 0x0a, +}; +static const unsigned char kat1394_nonce[] = {0}; +static const unsigned char kat1394_persstr[] = {0}; +static const unsigned char kat1394_addin0[] = {0}; +static const unsigned char kat1394_addin1[] = {0}; +static const unsigned char kat1394_retbits[] = { + 0xdb, 0xeb, 0x1d, 0xe3, 0x4b, 0x0e, 0x6f, 0x1c, 0x96, 0xcf, 0x4a, 0xfd, + 0x1e, 0x12, 0x30, 0xe4, 0x34, 0xbc, 0xb1, 0xa5, 0x49, 0x7f, 0x79, 0x78, + 0x71, 0xe1, 0x6a, 0xa3, 0xf6, 0x0f, 0x8d, 0xbc, 0xb4, 0xb3, 0xf0, 0x20, + 0xbc, 0xa9, 0x4f, 0x23, 0xe3, 0x5d, 0x49, 0x40, 0x62, 0x23, 0x8b, 0x45, + 0x8e, 0xf3, 0xd3, 0xd9, 0xfc, 0xb2, 0xb5, 0x1a, 0xa1, 0x1c, 0xa6, 0xb8, + 0x3a, 0x20, 0x6c, 0x1e, +}; +static const struct drbg_kat_no_reseed kat1394_t = { + 13, kat1394_entropyin, kat1394_nonce, kat1394_persstr, + kat1394_addin0, kat1394_addin1, kat1394_retbits +}; +static const struct drbg_kat kat1394 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1394_t +}; + +static const unsigned char kat1395_entropyin[] = { + 0xc1, 0xfd, 0xb2, 0x16, 0x7e, 0x6d, 0xb3, 0x31, 0xa3, 0xe7, 0x96, 0xc8, + 0x3c, 0x8b, 0x10, 0x35, 0x26, 0x50, 0xc2, 0x0c, 0xdc, 0xc4, 0x1b, 0x85, + 0x9f, 0x8b, 0x00, 0x59, 0xf2, 0x63, 0x8b, 0xdc, 0xec, 0xa6, 0x12, 0x09, + 0x28, 0xc3, 0x31, 0x1b, 0x6b, 0x8d, 0x76, 0x4a, 0x67, 0xb4, 0x71, 0x92, +}; +static const unsigned char kat1395_nonce[] = {0}; +static const unsigned char kat1395_persstr[] = {0}; +static const unsigned char kat1395_addin0[] = {0}; +static const unsigned char kat1395_addin1[] = {0}; +static const unsigned char kat1395_retbits[] = { + 0xb9, 0xec, 0x75, 0x3c, 0xa4, 0x6b, 0xdc, 0x10, 0x58, 0xf5, 0xb7, 0x7a, + 0x9d, 0x1d, 0x9d, 0x70, 0x90, 0xd0, 0xb7, 0x0f, 0x8b, 0x99, 0x95, 0x65, + 0x8b, 0x8d, 0x5a, 0xbc, 0xb6, 0x84, 0x62, 0xa0, 0x9c, 0x59, 0xcf, 0x40, + 0x4b, 0xc4, 0xa6, 0x25, 0x03, 0x7b, 0x52, 0xba, 0x10, 0xe3, 0x36, 0xc2, + 0xbb, 0xd0, 0x49, 0xa5, 0x07, 0xfd, 0xb9, 0x5e, 0x32, 0xd0, 0x99, 0x04, + 0xa2, 0x48, 0x2f, 0x97, +}; +static const struct drbg_kat_no_reseed kat1395_t = { + 14, kat1395_entropyin, kat1395_nonce, kat1395_persstr, + kat1395_addin0, kat1395_addin1, kat1395_retbits +}; +static const struct drbg_kat kat1395 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat1395_t +}; + +static const unsigned char kat1396_entropyin[] = { + 0x17, 0xf5, 0x9a, 0x45, 0x48, 0x0d, 0xc7, 0x4b, 0xc3, 0x5c, 0x52, 0xc5, + 0xba, 0xcc, 0x06, 0xde, 0xa9, 0xce, 0x7e, 0x4a, 0x6e, 0x1f, 0x3a, 0xd9, + 0x2f, 0x92, 0xcc, 0x12, 0xc7, 0x01, 0x85, 0xee, 0xa5, 0xec, 0xb2, 0x92, + 0x43, 0x42, 0x70, 0x0c, 0xe0, 0xff, 0x74, 0x81, 0xab, 0x1a, 0x01, 0xa2, +}; +static const unsigned char kat1396_nonce[] = {0}; +static const unsigned char kat1396_persstr[] = {0}; +static const unsigned char kat1396_addin0[] = { + 0x03, 0x47, 0xd6, 0x94, 0x41, 0xec, 0x40, 0x54, 0x30, 0x06, 0xc0, 0x41, + 0x33, 0x75, 0xfc, 0xb1, 0x0b, 0x81, 0x23, 0xc0, 0x86, 0x43, 0x87, 0x87, + 0x69, 0x21, 0x91, 0x6c, 0x7b, 0x08, 0xaa, 0x8f, 0x04, 0x73, 0xa2, 0x1f, + 0x91, 0xcc, 0x5e, 0x7c, 0x94, 0x34, 0x53, 0x03, 0x09, 0x82, 0xd1, 0x04, +}; +static const unsigned char kat1396_addin1[] = { + 0x03, 0xf6, 0x2d, 0x5f, 0xb8, 0x8b, 0xd8, 0x12, 0xd3, 0xee, 0x02, 0x72, + 0xad, 0xb5, 0x39, 0x36, 0x17, 0xce, 0x5e, 0x70, 0x51, 0xda, 0x23, 0x54, + 0xd3, 0xfd, 0x79, 0x81, 0x86, 0x3b, 0x18, 0x4e, 0x8f, 0x4a, 0x56, 0x7b, + 0x2a, 0xaa, 0x48, 0xd2, 0xb3, 0x7a, 0x80, 0xbf, 0x9c, 0x09, 0x04, 0x36, +}; +static const unsigned char kat1396_retbits[] = { + 0x32, 0xbb, 0x42, 0x43, 0x25, 0x5b, 0x23, 0xe9, 0x6e, 0x02, 0x14, 0x2a, + 0x4f, 0xa8, 0x9b, 0x2b, 0xd8, 0x53, 0xf2, 0x6a, 0x3e, 0x6d, 0x4c, 0xc6, + 0xab, 0x9b, 0x2c, 0x1f, 0xe9, 0xd4, 0x4b, 0xea, 0xb8, 0xb6, 0x18, 0xee, + 0x8d, 0xb1, 0x7f, 0x02, 0x66, 0x8d, 0xca, 0xf9, 0xf7, 0xf2, 0x08, 0x00, + 0x9a, 0x92, 0x47, 0xeb, 0x65, 0xf7, 0x8f, 0xf7, 0xd0, 0xb6, 0xbe, 0x1f, + 0x7a, 0xa0, 0x2f, 0x83, +}; +static const struct drbg_kat_no_reseed kat1396_t = { + 0, kat1396_entropyin, kat1396_nonce, kat1396_persstr, + kat1396_addin0, kat1396_addin1, kat1396_retbits +}; +static const struct drbg_kat kat1396 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1396_t +}; + +static const unsigned char kat1397_entropyin[] = { + 0x97, 0x75, 0x4e, 0x2d, 0x56, 0x40, 0x01, 0xe3, 0x53, 0x27, 0x08, 0x87, + 0xbb, 0xc2, 0x47, 0x8c, 0x92, 0xbb, 0xd9, 0x12, 0x17, 0x3a, 0x68, 0x76, + 0x55, 0xad, 0x17, 0x88, 0x83, 0xc6, 0xc3, 0x64, 0xbb, 0x5c, 0x96, 0xc8, + 0x40, 0x90, 0x07, 0x94, 0x34, 0xb1, 0x2d, 0x65, 0xb2, 0xcd, 0xd7, 0xd3, +}; +static const unsigned char kat1397_nonce[] = {0}; +static const unsigned char kat1397_persstr[] = {0}; +static const unsigned char kat1397_addin0[] = { + 0xbf, 0x3e, 0x3c, 0xce, 0xf1, 0xa7, 0x94, 0x81, 0x8d, 0x7f, 0x10, 0x01, + 0xe0, 0xe5, 0xe6, 0x03, 0x62, 0x00, 0x0a, 0xa2, 0x19, 0x3b, 0x4f, 0x48, + 0x7c, 0xc4, 0x61, 0xb8, 0xbd, 0x0e, 0x07, 0xab, 0x33, 0x99, 0x36, 0x25, + 0x80, 0x8f, 0x3f, 0x70, 0x5c, 0x37, 0xbe, 0xd8, 0x56, 0x3b, 0x4a, 0x3d, +}; +static const unsigned char kat1397_addin1[] = { + 0x2f, 0xe2, 0x78, 0x8a, 0x5c, 0x9c, 0xd1, 0x52, 0x73, 0x2c, 0x14, 0x6c, + 0xc8, 0x0a, 0x67, 0xf1, 0x0e, 0xee, 0xc3, 0xfd, 0x1d, 0x45, 0xe0, 0x42, + 0xd5, 0xea, 0x1b, 0x08, 0x83, 0xee, 0x32, 0x48, 0x7a, 0x01, 0x98, 0x9f, + 0xf2, 0x96, 0x69, 0x89, 0x3f, 0x0c, 0x1f, 0x96, 0xb0, 0x31, 0xd2, 0x68, +}; +static const unsigned char kat1397_retbits[] = { + 0x3f, 0x98, 0xbf, 0xa8, 0xde, 0x8c, 0x71, 0x30, 0xbc, 0x6c, 0xdf, 0x5c, + 0x01, 0xe6, 0x06, 0xb9, 0x5b, 0x3d, 0xaa, 0x38, 0xeb, 0x6d, 0x6f, 0xf7, + 0x3a, 0xd2, 0x2f, 0xa7, 0x0f, 0x5a, 0xf3, 0x0d, 0x98, 0x70, 0x27, 0xae, + 0xea, 0xa5, 0x95, 0x8b, 0x8e, 0x12, 0x0e, 0xc0, 0x45, 0xa8, 0x90, 0x7b, + 0x3a, 0xf3, 0x1c, 0x3d, 0x38, 0x33, 0x1b, 0x5d, 0xa3, 0x42, 0xc5, 0xee, + 0x61, 0x4b, 0xb2, 0x05, +}; +static const struct drbg_kat_no_reseed kat1397_t = { + 1, kat1397_entropyin, kat1397_nonce, kat1397_persstr, + kat1397_addin0, kat1397_addin1, kat1397_retbits +}; +static const struct drbg_kat kat1397 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1397_t +}; + +static const unsigned char kat1398_entropyin[] = { + 0x56, 0x33, 0x05, 0x51, 0x6e, 0xc2, 0x02, 0xd9, 0x4e, 0x04, 0x73, 0x25, + 0x2f, 0x02, 0x2f, 0xa6, 0x6a, 0x91, 0x99, 0xd0, 0x91, 0xae, 0xf9, 0x4e, + 0xce, 0xa7, 0xc6, 0xe5, 0xec, 0x23, 0x57, 0x14, 0xc5, 0xee, 0xfb, 0x0d, + 0x15, 0x96, 0xb5, 0xf8, 0x53, 0x52, 0x32, 0x2c, 0xab, 0xe1, 0x18, 0xe1, +}; +static const unsigned char kat1398_nonce[] = {0}; +static const unsigned char kat1398_persstr[] = {0}; +static const unsigned char kat1398_addin0[] = { + 0xe0, 0xa1, 0x55, 0x73, 0x9a, 0xe9, 0x9b, 0xd9, 0x15, 0x8d, 0x4a, 0x68, + 0x6f, 0x6f, 0x0c, 0x1d, 0x58, 0xd0, 0x07, 0xf8, 0xfd, 0xfb, 0x4a, 0x20, + 0x8d, 0x55, 0x2f, 0x7e, 0x2d, 0x45, 0x0c, 0xc5, 0x5a, 0xdf, 0x3c, 0x1e, + 0x65, 0x13, 0xac, 0x2b, 0x84, 0x92, 0x27, 0xef, 0xa0, 0x82, 0xfb, 0x66, +}; +static const unsigned char kat1398_addin1[] = { + 0x88, 0x54, 0xfe, 0x62, 0xdb, 0xd2, 0x36, 0xaa, 0x13, 0xc9, 0x4f, 0x29, + 0xfe, 0xd7, 0x92, 0xd6, 0x0b, 0x90, 0x24, 0x0d, 0x20, 0xf8, 0x87, 0x86, + 0x4e, 0xe9, 0x1b, 0x06, 0x21, 0xf1, 0xa1, 0x5f, 0x1b, 0x16, 0x94, 0x60, + 0x87, 0xfc, 0xe5, 0x19, 0x6a, 0x03, 0x77, 0x45, 0x02, 0x59, 0x6d, 0x36, +}; +static const unsigned char kat1398_retbits[] = { + 0xce, 0x71, 0x4f, 0xa9, 0x12, 0x7a, 0x97, 0x99, 0x0c, 0xff, 0xa4, 0x15, + 0x04, 0x38, 0x51, 0x37, 0xd7, 0x7c, 0xde, 0x49, 0x08, 0x6b, 0x85, 0xd0, + 0xe3, 0x0c, 0xc2, 0xe9, 0xb6, 0xff, 0x38, 0x16, 0xc6, 0x24, 0x38, 0x76, + 0x4f, 0x4c, 0xfb, 0x3c, 0xa4, 0x1b, 0x5e, 0xf5, 0xcd, 0x76, 0x57, 0x2a, + 0x5b, 0x1a, 0x4b, 0xf4, 0x13, 0x42, 0x50, 0x00, 0x08, 0x42, 0x55, 0xde, + 0x7f, 0x52, 0x93, 0x5c, +}; +static const struct drbg_kat_no_reseed kat1398_t = { + 2, kat1398_entropyin, kat1398_nonce, kat1398_persstr, + kat1398_addin0, kat1398_addin1, kat1398_retbits +}; +static const struct drbg_kat kat1398 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1398_t +}; + +static const unsigned char kat1399_entropyin[] = { + 0x0f, 0xf0, 0xbe, 0x15, 0xbd, 0x51, 0x71, 0x89, 0x50, 0x53, 0xc0, 0xb4, + 0x41, 0x31, 0x4a, 0x9b, 0x50, 0x47, 0xc9, 0xbc, 0x3f, 0x3f, 0x2c, 0xda, + 0xa2, 0x47, 0x20, 0xbf, 0x1f, 0xaf, 0x9a, 0x00, 0xeb, 0x4b, 0x4e, 0x08, + 0x67, 0x3a, 0xee, 0x5b, 0xd7, 0xb8, 0x85, 0x79, 0xc0, 0xcc, 0xc9, 0x52, +}; +static const unsigned char kat1399_nonce[] = {0}; +static const unsigned char kat1399_persstr[] = {0}; +static const unsigned char kat1399_addin0[] = { + 0xcb, 0x56, 0x73, 0xb8, 0x9d, 0xd9, 0xc5, 0x7c, 0xd9, 0x7d, 0x59, 0xc4, + 0x0f, 0xdd, 0xb5, 0xbc, 0xf5, 0x31, 0xbd, 0xfa, 0x97, 0xe9, 0x82, 0x0e, + 0x21, 0xe2, 0x1e, 0xc4, 0xa7, 0xf6, 0x08, 0xf4, 0x8f, 0x5f, 0xcf, 0x66, + 0x33, 0x7d, 0xc4, 0x8c, 0xa6, 0xa8, 0xb3, 0x47, 0x19, 0x0c, 0x8f, 0x85, +}; +static const unsigned char kat1399_addin1[] = { + 0x23, 0xff, 0xda, 0xa3, 0x6a, 0xcd, 0x09, 0x1f, 0x5a, 0x7b, 0x79, 0x23, + 0xa1, 0x99, 0x09, 0xc5, 0x28, 0x32, 0x87, 0xcc, 0x47, 0x05, 0x74, 0xac, + 0x00, 0x34, 0x4c, 0x4b, 0xff, 0x3c, 0x6a, 0xe7, 0xb7, 0xb0, 0x4d, 0xad, + 0x9e, 0x20, 0xe9, 0x14, 0x71, 0xb4, 0x29, 0x01, 0x13, 0xd6, 0xa0, 0x56, +}; +static const unsigned char kat1399_retbits[] = { + 0x96, 0xa0, 0xa2, 0xf4, 0x5b, 0x05, 0x49, 0xcb, 0xf0, 0x29, 0x36, 0x31, + 0x07, 0x49, 0xb1, 0x7b, 0x39, 0x30, 0xe4, 0xe4, 0xab, 0x49, 0xa0, 0xcb, + 0x44, 0x95, 0x34, 0x4f, 0xf8, 0x48, 0x98, 0xf4, 0xae, 0x30, 0x0f, 0x13, + 0x1a, 0xfc, 0xeb, 0x1f, 0x52, 0x66, 0x44, 0x97, 0xf9, 0x31, 0xd8, 0xae, + 0xa4, 0x8c, 0x3d, 0xec, 0x0f, 0x48, 0xb0, 0x6e, 0xa4, 0xb5, 0x8c, 0x3a, + 0x40, 0x12, 0xac, 0xd1, +}; +static const struct drbg_kat_no_reseed kat1399_t = { + 3, kat1399_entropyin, kat1399_nonce, kat1399_persstr, + kat1399_addin0, kat1399_addin1, kat1399_retbits +}; +static const struct drbg_kat kat1399 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1399_t +}; + +static const unsigned char kat1400_entropyin[] = { + 0x94, 0xcb, 0x0b, 0x45, 0x4e, 0x26, 0x98, 0x6f, 0xb3, 0x7a, 0xb7, 0x8e, + 0xa3, 0x52, 0x14, 0x75, 0x6c, 0x1f, 0x40, 0x16, 0xae, 0x3b, 0xd6, 0x90, + 0x5d, 0xbd, 0x2a, 0x58, 0x34, 0xc4, 0x7b, 0x72, 0x32, 0xf8, 0x0d, 0x30, + 0x43, 0x57, 0xca, 0x0b, 0xf3, 0xf4, 0xaa, 0x5d, 0xac, 0x19, 0x4f, 0x33, +}; +static const unsigned char kat1400_nonce[] = {0}; +static const unsigned char kat1400_persstr[] = {0}; +static const unsigned char kat1400_addin0[] = { + 0xd3, 0x66, 0xde, 0xad, 0x7d, 0x7b, 0xf9, 0x82, 0x5a, 0x38, 0xf4, 0x52, + 0xa0, 0x9f, 0xe2, 0x82, 0x82, 0x49, 0xd4, 0x42, 0xe2, 0x23, 0xe0, 0x45, + 0xd2, 0x00, 0x6a, 0x2d, 0xc6, 0xd2, 0xb7, 0x80, 0xd2, 0x53, 0x3e, 0x01, + 0x23, 0xb1, 0xe0, 0xb1, 0xc4, 0x53, 0x10, 0xb6, 0x03, 0x00, 0xc6, 0xa7, +}; +static const unsigned char kat1400_addin1[] = { + 0x1f, 0x8f, 0xcc, 0x4f, 0x5f, 0x35, 0xbc, 0xf2, 0x0b, 0xe3, 0x1e, 0xfa, + 0x7f, 0xf6, 0x2e, 0x72, 0x8c, 0x94, 0x9a, 0x73, 0x7a, 0x72, 0x8f, 0xf8, + 0xda, 0x40, 0x9f, 0x4e, 0xf6, 0xd3, 0x16, 0xd8, 0x3f, 0x34, 0x0c, 0x10, + 0x8b, 0xc9, 0xe1, 0x65, 0xb9, 0x04, 0x54, 0x87, 0xa9, 0xf5, 0x57, 0xfd, +}; +static const unsigned char kat1400_retbits[] = { + 0xfd, 0x24, 0x5b, 0xa6, 0xfd, 0x85, 0x75, 0xa0, 0xa3, 0xa9, 0xae, 0xf7, + 0xf7, 0xe3, 0x4e, 0x0e, 0x33, 0xad, 0xd8, 0x74, 0xbe, 0xe4, 0x30, 0x2f, + 0xce, 0x98, 0x69, 0x83, 0x39, 0xf6, 0xe1, 0x58, 0xfa, 0x48, 0x2a, 0x4b, + 0xd2, 0x05, 0x62, 0x78, 0xa1, 0x57, 0xb2, 0x86, 0xf8, 0xf0, 0xc4, 0xbb, + 0x45, 0x60, 0x21, 0xc8, 0xa3, 0xcb, 0x4c, 0xcf, 0x19, 0x10, 0xd9, 0x54, + 0xaf, 0xa8, 0xf3, 0x57, +}; +static const struct drbg_kat_no_reseed kat1400_t = { + 4, kat1400_entropyin, kat1400_nonce, kat1400_persstr, + kat1400_addin0, kat1400_addin1, kat1400_retbits +}; +static const struct drbg_kat kat1400 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1400_t +}; + +static const unsigned char kat1401_entropyin[] = { + 0x35, 0x11, 0x28, 0x18, 0x09, 0x39, 0x44, 0x9e, 0x8a, 0x30, 0xca, 0xe8, + 0x8f, 0x56, 0xef, 0x82, 0xd3, 0xa7, 0x12, 0x61, 0x4a, 0x84, 0x3a, 0x91, + 0x19, 0xa5, 0x17, 0x7c, 0x66, 0xc9, 0x87, 0xbf, 0x65, 0xe5, 0x78, 0x79, + 0x19, 0x59, 0xec, 0x94, 0x65, 0xa4, 0xa3, 0x00, 0xe5, 0x2c, 0xdf, 0x39, +}; +static const unsigned char kat1401_nonce[] = {0}; +static const unsigned char kat1401_persstr[] = {0}; +static const unsigned char kat1401_addin0[] = { + 0x90, 0x29, 0x7a, 0x2b, 0x82, 0x79, 0x80, 0x3f, 0xc8, 0xbc, 0xfc, 0xc3, + 0xe8, 0xb6, 0xe6, 0x6d, 0x0e, 0x4d, 0xb3, 0x6b, 0x77, 0xfa, 0x2d, 0xb7, + 0xb6, 0x35, 0x59, 0x79, 0x0d, 0xfd, 0x0a, 0x6a, 0x78, 0x3a, 0xdf, 0xbe, + 0xfe, 0xf6, 0xfe, 0xcf, 0x98, 0x43, 0x8a, 0x71, 0x3d, 0x77, 0xa2, 0x03, +}; +static const unsigned char kat1401_addin1[] = { + 0x35, 0xd4, 0x31, 0x71, 0xf2, 0x14, 0x33, 0x46, 0xa4, 0xc5, 0x4b, 0x27, + 0x29, 0x16, 0xcd, 0xcc, 0x48, 0x48, 0xa9, 0x58, 0x37, 0xe6, 0xea, 0x0d, + 0x04, 0x8a, 0xc2, 0xfa, 0xc3, 0xae, 0xa5, 0xf9, 0x0c, 0xbf, 0x03, 0x34, + 0x87, 0xc8, 0x64, 0xc3, 0x32, 0xbe, 0x79, 0xca, 0x51, 0x96, 0xec, 0x2b, +}; +static const unsigned char kat1401_retbits[] = { + 0x8a, 0x86, 0x74, 0x80, 0x10, 0xfb, 0x25, 0x5d, 0x01, 0x24, 0xdb, 0xdf, + 0xc3, 0x03, 0x23, 0x21, 0x94, 0xc7, 0xc0, 0x66, 0xe1, 0xbd, 0x26, 0xc8, + 0x65, 0xf0, 0x7f, 0x19, 0xae, 0x09, 0xfd, 0xdf, 0xa5, 0x3e, 0x9c, 0x96, + 0x4d, 0xcc, 0x55, 0x27, 0x01, 0x63, 0x95, 0xa8, 0x16, 0x4c, 0x5a, 0x5f, + 0x24, 0x8d, 0xf6, 0x0f, 0x41, 0xdb, 0x6d, 0xcb, 0x50, 0xd6, 0x85, 0x02, + 0xb9, 0x00, 0x17, 0xfc, +}; +static const struct drbg_kat_no_reseed kat1401_t = { + 5, kat1401_entropyin, kat1401_nonce, kat1401_persstr, + kat1401_addin0, kat1401_addin1, kat1401_retbits +}; +static const struct drbg_kat kat1401 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1401_t +}; + +static const unsigned char kat1402_entropyin[] = { + 0xa6, 0x56, 0x74, 0x26, 0x8f, 0x03, 0xab, 0x24, 0x8c, 0x3a, 0x29, 0xf8, + 0x89, 0xfd, 0x62, 0x5b, 0x2b, 0x13, 0xd1, 0xd1, 0xcf, 0xe9, 0xde, 0x10, + 0xc9, 0x9f, 0x3a, 0x43, 0x2a, 0xdc, 0x0d, 0xd0, 0x95, 0x5b, 0x7c, 0x98, + 0x7b, 0x70, 0x0b, 0x83, 0x65, 0x23, 0x54, 0x8c, 0x42, 0xa1, 0x37, 0xc7, +}; +static const unsigned char kat1402_nonce[] = {0}; +static const unsigned char kat1402_persstr[] = {0}; +static const unsigned char kat1402_addin0[] = { + 0xb5, 0x45, 0xb1, 0x4c, 0xd7, 0x62, 0x55, 0x3d, 0xe0, 0x89, 0x42, 0x95, + 0xdf, 0x7c, 0xf3, 0xa5, 0x25, 0x77, 0x08, 0x2c, 0x24, 0x59, 0xba, 0xef, + 0xa3, 0xf6, 0x1d, 0x05, 0x80, 0xe2, 0xbf, 0x6c, 0x09, 0xef, 0x25, 0x24, + 0x59, 0x6a, 0xeb, 0x83, 0xa2, 0xb6, 0xf8, 0xc5, 0xd4, 0x63, 0x42, 0xea, +}; +static const unsigned char kat1402_addin1[] = { + 0x98, 0x02, 0x25, 0xf5, 0xa6, 0x43, 0xb9, 0xa0, 0xf2, 0xaa, 0x5f, 0x2c, + 0x1c, 0x2a, 0xa6, 0x08, 0x9d, 0x07, 0x06, 0xd1, 0x76, 0xcd, 0xb3, 0x18, + 0xb5, 0xbe, 0x7c, 0x42, 0x51, 0xb3, 0xb0, 0x22, 0x5d, 0x83, 0x15, 0x94, + 0x74, 0x37, 0xef, 0x7f, 0x4f, 0x55, 0x1b, 0xb6, 0x6a, 0xd5, 0x9b, 0x73, +}; +static const unsigned char kat1402_retbits[] = { + 0x28, 0x0a, 0xf4, 0xb1, 0xe2, 0xaf, 0x04, 0xca, 0x4c, 0xef, 0x06, 0x32, + 0x53, 0x99, 0x57, 0xec, 0x4f, 0xd5, 0xfa, 0x4d, 0x14, 0xfd, 0x6d, 0xd4, + 0xe3, 0xbb, 0x6d, 0x5d, 0x5c, 0xf4, 0x10, 0xec, 0x0e, 0x97, 0x8d, 0xed, + 0x48, 0x77, 0x04, 0xdb, 0xac, 0x16, 0x3f, 0xc3, 0xf2, 0xb7, 0x78, 0xce, + 0x67, 0xa5, 0x6f, 0x49, 0x7f, 0x72, 0xfa, 0x69, 0xf8, 0x12, 0x2b, 0x8e, + 0xb2, 0x3d, 0xb3, 0xdd, +}; +static const struct drbg_kat_no_reseed kat1402_t = { + 6, kat1402_entropyin, kat1402_nonce, kat1402_persstr, + kat1402_addin0, kat1402_addin1, kat1402_retbits +}; +static const struct drbg_kat kat1402 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1402_t +}; + +static const unsigned char kat1403_entropyin[] = { + 0x36, 0xb8, 0x10, 0x02, 0xe0, 0xff, 0x7e, 0xf2, 0x77, 0x17, 0x8d, 0x04, + 0x20, 0x17, 0x42, 0xe8, 0x44, 0xf5, 0xba, 0x93, 0xce, 0x4b, 0xb0, 0xe7, + 0x7c, 0x00, 0xee, 0xff, 0x8d, 0xbe, 0x9d, 0x97, 0x4a, 0x56, 0x15, 0x31, + 0x6b, 0x24, 0x2b, 0xb2, 0x44, 0xb1, 0x24, 0x9b, 0xbf, 0x14, 0x35, 0x6f, +}; +static const unsigned char kat1403_nonce[] = {0}; +static const unsigned char kat1403_persstr[] = {0}; +static const unsigned char kat1403_addin0[] = { + 0x9b, 0xb3, 0xd9, 0xd6, 0x0d, 0x98, 0x5c, 0x71, 0xac, 0xd2, 0xf0, 0x4e, + 0x8c, 0x92, 0xae, 0x7b, 0x7f, 0x89, 0x80, 0x59, 0x81, 0x34, 0x14, 0x0d, + 0x2a, 0x12, 0xea, 0x46, 0xcc, 0x47, 0xba, 0x30, 0xbb, 0x11, 0xc8, 0xee, + 0x55, 0x4e, 0x17, 0x0b, 0x61, 0x29, 0x54, 0x63, 0xcf, 0x0c, 0x50, 0x7f, +}; +static const unsigned char kat1403_addin1[] = { + 0x30, 0xbb, 0x3d, 0xdc, 0xfa, 0x03, 0x5b, 0x76, 0x08, 0x94, 0x58, 0x98, + 0xfe, 0x05, 0x31, 0x1a, 0x57, 0xa4, 0xfa, 0xd4, 0x81, 0x18, 0x4d, 0xa1, + 0x88, 0xe2, 0xdd, 0x11, 0x40, 0x3c, 0x51, 0x0b, 0x6f, 0xe8, 0xe1, 0xe4, + 0x4f, 0x6e, 0x07, 0x39, 0x73, 0x8e, 0xf8, 0x9c, 0x7c, 0xf8, 0x58, 0x7e, +}; +static const unsigned char kat1403_retbits[] = { + 0x6c, 0x6f, 0xfa, 0x11, 0x40, 0xcd, 0x3e, 0x5f, 0x44, 0x95, 0xcd, 0x5f, + 0xa2, 0x3b, 0xcf, 0xbe, 0x06, 0xe6, 0x94, 0x36, 0x4a, 0x3a, 0x61, 0x54, + 0xb2, 0x1c, 0xea, 0x21, 0xb8, 0xf2, 0xe1, 0x06, 0x28, 0xef, 0x35, 0x96, + 0x9c, 0x31, 0xb8, 0x06, 0x7a, 0xb7, 0x7f, 0xe2, 0x63, 0x1b, 0x53, 0xd3, + 0xa4, 0x4e, 0xfc, 0x94, 0x38, 0x3b, 0xee, 0xdd, 0x85, 0x56, 0x7d, 0x96, + 0x9c, 0xb4, 0x30, 0x11, +}; +static const struct drbg_kat_no_reseed kat1403_t = { + 7, kat1403_entropyin, kat1403_nonce, kat1403_persstr, + kat1403_addin0, kat1403_addin1, kat1403_retbits +}; +static const struct drbg_kat kat1403 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1403_t +}; + +static const unsigned char kat1404_entropyin[] = { + 0x03, 0x91, 0x41, 0x20, 0x48, 0x53, 0x75, 0xee, 0x8c, 0x46, 0x95, 0x63, + 0xad, 0xfe, 0xdd, 0x27, 0x48, 0x73, 0xb1, 0x1a, 0x83, 0x4d, 0xfd, 0x41, + 0x6a, 0xc7, 0x62, 0xc1, 0xec, 0xa7, 0x22, 0x29, 0x68, 0x37, 0x4e, 0x24, + 0xe4, 0x44, 0x66, 0x60, 0xd3, 0x49, 0xb0, 0xd7, 0x7f, 0xbc, 0xa9, 0x26, +}; +static const unsigned char kat1404_nonce[] = {0}; +static const unsigned char kat1404_persstr[] = {0}; +static const unsigned char kat1404_addin0[] = { + 0x48, 0x5e, 0x2e, 0x1f, 0x60, 0x3c, 0x5c, 0x58, 0x90, 0xfb, 0xbe, 0x44, + 0xfa, 0x6f, 0x17, 0x22, 0x8e, 0x93, 0x40, 0xc2, 0x05, 0x07, 0xb1, 0xe2, + 0xc9, 0x3d, 0x31, 0xd8, 0x66, 0x72, 0xc0, 0x51, 0x1d, 0xf5, 0xdb, 0x29, + 0xec, 0x00, 0x60, 0x63, 0xeb, 0xfa, 0xe1, 0xa3, 0x9e, 0x95, 0xcc, 0x95, +}; +static const unsigned char kat1404_addin1[] = { + 0xff, 0xe6, 0x9d, 0x1a, 0xce, 0x62, 0xde, 0x2f, 0x9f, 0x74, 0x68, 0xfc, + 0x7d, 0x4b, 0xe7, 0xc0, 0x9a, 0x71, 0x92, 0x5c, 0x8c, 0x4b, 0x75, 0x74, + 0x61, 0xac, 0x96, 0x33, 0x78, 0x4a, 0x27, 0x58, 0x8a, 0x81, 0xf5, 0xd6, + 0xc3, 0x9a, 0x0c, 0x78, 0xa3, 0x0f, 0x6a, 0xf9, 0xa8, 0xa7, 0x5b, 0x6f, +}; +static const unsigned char kat1404_retbits[] = { + 0x64, 0xd6, 0x4e, 0x78, 0x88, 0xa6, 0x7e, 0x3a, 0xae, 0xea, 0xe3, 0xcb, + 0xf1, 0x3d, 0x3d, 0x23, 0xc7, 0x0b, 0x39, 0xf0, 0x3b, 0x88, 0x5d, 0x32, + 0x95, 0x98, 0x6a, 0xb4, 0xa2, 0x20, 0x8f, 0x86, 0xb5, 0x56, 0xc8, 0x6c, + 0x66, 0x92, 0x5d, 0x88, 0x0d, 0x66, 0x6c, 0xc0, 0xdd, 0x32, 0x73, 0x08, + 0x8c, 0x28, 0x31, 0xc9, 0x6f, 0x3a, 0x39, 0xce, 0xe7, 0x53, 0x0b, 0xfc, + 0xdc, 0x56, 0x5b, 0x48, +}; +static const struct drbg_kat_no_reseed kat1404_t = { + 8, kat1404_entropyin, kat1404_nonce, kat1404_persstr, + kat1404_addin0, kat1404_addin1, kat1404_retbits +}; +static const struct drbg_kat kat1404 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1404_t +}; + +static const unsigned char kat1405_entropyin[] = { + 0xfa, 0x84, 0x7e, 0xa8, 0x04, 0x47, 0x32, 0xf6, 0x54, 0x05, 0x6c, 0x36, + 0xce, 0xdf, 0x98, 0x17, 0x1b, 0xed, 0xf9, 0xb4, 0x3d, 0xb5, 0x1b, 0x91, + 0x26, 0xde, 0xd2, 0x0c, 0x3d, 0xc1, 0xd9, 0x24, 0x00, 0x97, 0x8e, 0x6e, + 0x2c, 0x5f, 0xf9, 0x96, 0x93, 0x2d, 0x35, 0x1a, 0x3d, 0x67, 0x33, 0x1b, +}; +static const unsigned char kat1405_nonce[] = {0}; +static const unsigned char kat1405_persstr[] = {0}; +static const unsigned char kat1405_addin0[] = { + 0xfe, 0x92, 0x72, 0x44, 0xa9, 0xc1, 0xdd, 0x81, 0x44, 0x56, 0x25, 0x93, + 0xa3, 0x88, 0x99, 0x14, 0x1c, 0x2d, 0xc0, 0x27, 0xd9, 0x40, 0x22, 0x6a, + 0x28, 0xfa, 0xba, 0xfe, 0xd6, 0xc0, 0x19, 0xb4, 0xc9, 0x4f, 0xe7, 0x98, + 0x7c, 0x41, 0x8c, 0x4d, 0xc1, 0x48, 0x4c, 0x7c, 0x87, 0x72, 0x19, 0x52, +}; +static const unsigned char kat1405_addin1[] = { + 0x04, 0xe1, 0x62, 0x19, 0xb5, 0x72, 0x83, 0x12, 0xf0, 0x59, 0x56, 0xfd, + 0x6a, 0x09, 0x3e, 0x74, 0xa3, 0x62, 0xbb, 0xed, 0xc3, 0xc9, 0x44, 0x36, + 0x68, 0xcc, 0xcd, 0xff, 0x29, 0x50, 0x14, 0x55, 0x61, 0x44, 0x2f, 0x17, + 0xda, 0x93, 0x00, 0x30, 0x83, 0xc5, 0x82, 0x4f, 0x3d, 0xc6, 0x8e, 0xc1, +}; +static const unsigned char kat1405_retbits[] = { + 0xbb, 0x24, 0xb4, 0x6a, 0x12, 0xb4, 0x82, 0xf0, 0xcb, 0xce, 0x27, 0x8a, + 0x2b, 0x6c, 0x01, 0x2d, 0x7c, 0xfa, 0xc2, 0xc4, 0x15, 0x90, 0x80, 0x3c, + 0x56, 0x5f, 0xca, 0xdd, 0xfc, 0xa8, 0x52, 0xa5, 0x69, 0x91, 0x12, 0xb1, + 0x0c, 0xe2, 0xc0, 0xa8, 0x4d, 0x45, 0x54, 0x3a, 0x89, 0x3f, 0xbf, 0x2c, + 0x9f, 0xbf, 0x94, 0x50, 0x20, 0x10, 0xd7, 0x21, 0x32, 0x18, 0xa8, 0x28, + 0x33, 0x04, 0xf6, 0x59, +}; +static const struct drbg_kat_no_reseed kat1405_t = { + 9, kat1405_entropyin, kat1405_nonce, kat1405_persstr, + kat1405_addin0, kat1405_addin1, kat1405_retbits +}; +static const struct drbg_kat kat1405 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1405_t +}; + +static const unsigned char kat1406_entropyin[] = { + 0x85, 0xe4, 0xeb, 0x58, 0xa3, 0x4e, 0xed, 0xec, 0xdf, 0x53, 0x46, 0x48, + 0x3c, 0x1a, 0x79, 0x37, 0x31, 0x55, 0x11, 0x46, 0x14, 0x4d, 0xec, 0x78, + 0x2d, 0xea, 0xec, 0x62, 0xea, 0xd1, 0xf1, 0x68, 0xb2, 0xfb, 0x4c, 0x1c, + 0xce, 0x5a, 0xc8, 0xae, 0xc8, 0x95, 0xd7, 0x1a, 0x30, 0xd9, 0x1f, 0xbf, +}; +static const unsigned char kat1406_nonce[] = {0}; +static const unsigned char kat1406_persstr[] = {0}; +static const unsigned char kat1406_addin0[] = { + 0x81, 0xe2, 0x9a, 0x57, 0x6b, 0x77, 0x0a, 0x58, 0xfa, 0x55, 0x95, 0x0c, + 0xb2, 0x6c, 0x4b, 0xe8, 0xa0, 0x29, 0x65, 0x74, 0x53, 0x8e, 0xb9, 0xaf, + 0x80, 0x68, 0xcd, 0x15, 0xb3, 0xad, 0xc8, 0x7e, 0x23, 0xc1, 0x04, 0xfc, + 0x60, 0x7a, 0xb5, 0x7e, 0x09, 0xaa, 0xea, 0xf6, 0x53, 0xf6, 0x9e, 0x03, +}; +static const unsigned char kat1406_addin1[] = { + 0x99, 0x4c, 0x97, 0x6e, 0x25, 0x94, 0x8d, 0x7c, 0x11, 0xad, 0x89, 0x51, + 0x0e, 0xbc, 0x80, 0xcd, 0xe4, 0x41, 0xdd, 0xac, 0xa0, 0x0a, 0xc7, 0xfd, + 0x8a, 0xdf, 0x96, 0x5b, 0x0a, 0xed, 0x4f, 0x57, 0xa1, 0x50, 0xc2, 0x8a, + 0xd0, 0x6d, 0xc0, 0x3d, 0xfd, 0x75, 0x44, 0x3f, 0xde, 0xa5, 0x10, 0x9d, +}; +static const unsigned char kat1406_retbits[] = { + 0x45, 0xd8, 0xc6, 0x9c, 0x96, 0xee, 0x1d, 0x3c, 0xa7, 0x3f, 0xf8, 0x9d, + 0x79, 0x52, 0x4b, 0xc1, 0x18, 0xbf, 0x49, 0xe2, 0xae, 0x10, 0x73, 0x56, + 0xa2, 0x44, 0xcb, 0xde, 0xf9, 0x2c, 0xb7, 0x38, 0xec, 0xed, 0x64, 0xb9, + 0x95, 0x60, 0xb0, 0x3e, 0x8e, 0x6c, 0x60, 0x82, 0xe5, 0x4f, 0xa3, 0x79, + 0xa6, 0xac, 0xe7, 0xba, 0x05, 0xda, 0x18, 0x09, 0x4d, 0x6e, 0x46, 0x41, + 0x5e, 0x46, 0xc4, 0xd0, +}; +static const struct drbg_kat_no_reseed kat1406_t = { + 10, kat1406_entropyin, kat1406_nonce, kat1406_persstr, + kat1406_addin0, kat1406_addin1, kat1406_retbits +}; +static const struct drbg_kat kat1406 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1406_t +}; + +static const unsigned char kat1407_entropyin[] = { + 0x6f, 0xf2, 0xb3, 0x54, 0x7c, 0x02, 0x85, 0x8f, 0x94, 0xda, 0x9a, 0x07, + 0x57, 0x87, 0x76, 0x71, 0xd6, 0x8a, 0x9d, 0x91, 0x8a, 0x58, 0x0c, 0x9e, + 0xd4, 0x25, 0x99, 0xa7, 0xb5, 0xe9, 0x7e, 0x44, 0xe2, 0xca, 0x79, 0x5e, + 0x94, 0x4e, 0x51, 0xe0, 0x56, 0x5c, 0x77, 0xb9, 0x57, 0x84, 0x9f, 0x7d, +}; +static const unsigned char kat1407_nonce[] = {0}; +static const unsigned char kat1407_persstr[] = {0}; +static const unsigned char kat1407_addin0[] = { + 0x52, 0x7e, 0x2f, 0x26, 0x8a, 0xd3, 0xff, 0x9a, 0x68, 0x2e, 0xd6, 0x1e, + 0x6b, 0x24, 0x06, 0x01, 0x89, 0x70, 0x72, 0x3f, 0x2b, 0x9f, 0x01, 0x68, + 0x4b, 0xb0, 0x18, 0x12, 0x7e, 0xdd, 0x53, 0x96, 0xef, 0x2e, 0x0c, 0xea, + 0x5c, 0xbd, 0x04, 0x32, 0x2c, 0xdc, 0xb9, 0xa1, 0x99, 0xa1, 0xa9, 0x8a, +}; +static const unsigned char kat1407_addin1[] = { + 0xa8, 0x43, 0xcb, 0xd6, 0x8f, 0x92, 0x92, 0x5d, 0x31, 0x4c, 0x70, 0xcb, + 0x86, 0x05, 0xab, 0xb3, 0x4d, 0xc8, 0xa6, 0xe4, 0xae, 0xa1, 0x46, 0xdd, + 0x02, 0x94, 0xdd, 0x4d, 0xe7, 0x9b, 0x46, 0x76, 0x81, 0xe5, 0x21, 0x41, + 0x13, 0x79, 0xec, 0x9d, 0x1a, 0xc1, 0xc6, 0x68, 0xec, 0x06, 0x5e, 0xf6, +}; +static const unsigned char kat1407_retbits[] = { + 0xa8, 0xab, 0x4d, 0xb7, 0x57, 0xb2, 0x81, 0x43, 0xf7, 0x35, 0x8c, 0xd3, + 0x7c, 0x78, 0x9f, 0xca, 0x8d, 0xa5, 0x64, 0xfd, 0xd9, 0x32, 0x67, 0xad, + 0x55, 0x7e, 0xad, 0x34, 0xad, 0x71, 0xb2, 0xc7, 0x6c, 0xad, 0x69, 0x11, + 0x8b, 0x3f, 0x5b, 0x40, 0x3d, 0xf1, 0x92, 0x4e, 0x5c, 0x46, 0xd3, 0xb2, + 0x9f, 0x9c, 0xc8, 0x54, 0xab, 0x91, 0xdf, 0x0f, 0x68, 0xbc, 0xc1, 0xc4, + 0x42, 0xc9, 0x01, 0x02, +}; +static const struct drbg_kat_no_reseed kat1407_t = { + 11, kat1407_entropyin, kat1407_nonce, kat1407_persstr, + kat1407_addin0, kat1407_addin1, kat1407_retbits +}; +static const struct drbg_kat kat1407 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1407_t +}; + +static const unsigned char kat1408_entropyin[] = { + 0xde, 0x36, 0x68, 0x05, 0x14, 0x6d, 0x94, 0x30, 0x2a, 0xb6, 0x14, 0x60, + 0x28, 0xd6, 0x97, 0xb2, 0x92, 0x62, 0x3b, 0x15, 0x98, 0xb3, 0xc2, 0xd4, + 0x9e, 0xd6, 0xcb, 0xdf, 0x78, 0x8e, 0xb8, 0xc6, 0xcd, 0x98, 0x4f, 0x2b, + 0xb4, 0xfc, 0xb5, 0xd5, 0x0e, 0xf0, 0x23, 0x55, 0x05, 0x83, 0x0b, 0x85, +}; +static const unsigned char kat1408_nonce[] = {0}; +static const unsigned char kat1408_persstr[] = {0}; +static const unsigned char kat1408_addin0[] = { + 0xf6, 0xf9, 0x62, 0x5e, 0x71, 0x6c, 0xa2, 0x17, 0xcf, 0x9c, 0xaf, 0x8d, + 0x48, 0x55, 0xba, 0x49, 0x12, 0xcf, 0xf4, 0x9e, 0x17, 0xec, 0xe9, 0x9a, + 0xfe, 0xdc, 0x7d, 0xcb, 0xeb, 0x2a, 0x6e, 0x38, 0x6a, 0x80, 0x14, 0xb4, + 0x5a, 0xe0, 0xe3, 0xab, 0x26, 0x64, 0x77, 0x11, 0x46, 0x1e, 0xc8, 0x06, +}; +static const unsigned char kat1408_addin1[] = { + 0xdf, 0xd6, 0x65, 0x3f, 0xd0, 0x10, 0x8c, 0x4e, 0x46, 0xc4, 0xdc, 0x46, + 0x2f, 0xe9, 0x59, 0xb9, 0xa4, 0x21, 0x61, 0x75, 0x09, 0x10, 0x10, 0xce, + 0x46, 0x43, 0xa1, 0xed, 0x9d, 0x23, 0x22, 0x30, 0x54, 0x7d, 0xe9, 0x0f, + 0x73, 0xe2, 0x42, 0x73, 0x40, 0xe1, 0x26, 0x66, 0xfe, 0x38, 0x9e, 0xd4, +}; +static const unsigned char kat1408_retbits[] = { + 0x4a, 0x3e, 0xb3, 0xde, 0x53, 0x68, 0xc1, 0x8b, 0xa3, 0xe9, 0x58, 0x51, + 0x12, 0xd7, 0x73, 0x5c, 0xf2, 0x04, 0xe8, 0x1d, 0xa6, 0x28, 0x77, 0x75, + 0xdc, 0x7e, 0x56, 0xfd, 0x81, 0x4d, 0x85, 0xd8, 0xf4, 0xff, 0xe6, 0x51, + 0x4f, 0xcb, 0x47, 0x22, 0x0c, 0x95, 0x8f, 0x8f, 0x41, 0x5c, 0x77, 0x8e, + 0x2e, 0x44, 0xfe, 0xa9, 0x68, 0xec, 0xb0, 0x2a, 0xae, 0x47, 0xf0, 0x14, + 0x7b, 0x91, 0x40, 0xac, +}; +static const struct drbg_kat_no_reseed kat1408_t = { + 12, kat1408_entropyin, kat1408_nonce, kat1408_persstr, + kat1408_addin0, kat1408_addin1, kat1408_retbits +}; +static const struct drbg_kat kat1408 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1408_t +}; + +static const unsigned char kat1409_entropyin[] = { + 0xe5, 0xf6, 0x17, 0xe8, 0x77, 0x8f, 0x00, 0x76, 0x59, 0x8d, 0x52, 0x64, + 0x22, 0xb0, 0x95, 0xc3, 0xdf, 0x14, 0x08, 0x55, 0xf0, 0x87, 0xe3, 0x6d, + 0xdd, 0x5b, 0x76, 0x23, 0xed, 0x4a, 0x63, 0x5a, 0x7e, 0x19, 0xaf, 0xda, + 0xa2, 0xe7, 0xe5, 0x03, 0xc3, 0x0f, 0x71, 0x79, 0xc2, 0x79, 0xf0, 0x73, +}; +static const unsigned char kat1409_nonce[] = {0}; +static const unsigned char kat1409_persstr[] = {0}; +static const unsigned char kat1409_addin0[] = { + 0x65, 0x9b, 0xf1, 0xfe, 0x2f, 0xca, 0x26, 0x00, 0x5d, 0xcd, 0xcb, 0x25, + 0x33, 0xca, 0x9e, 0x10, 0x1f, 0x14, 0x0e, 0x2c, 0x08, 0x04, 0x22, 0xf9, + 0x44, 0x8a, 0xdc, 0x9e, 0x7a, 0x7a, 0x9a, 0xa0, 0x6b, 0xdb, 0xb0, 0x34, + 0xee, 0x66, 0xe9, 0xc2, 0x6e, 0xfb, 0x02, 0x09, 0x24, 0x31, 0xcf, 0x5e, +}; +static const unsigned char kat1409_addin1[] = { + 0xcd, 0xa0, 0xe4, 0xff, 0x69, 0xb9, 0xa2, 0xa8, 0xd5, 0x05, 0x64, 0x8a, + 0x60, 0x26, 0xda, 0x9c, 0xb1, 0xcb, 0xe9, 0xd0, 0xaf, 0x9b, 0xd4, 0x22, + 0xf2, 0xe5, 0xef, 0x8f, 0xe2, 0x85, 0x2d, 0xbf, 0x0a, 0xbf, 0x75, 0x74, + 0x95, 0x8d, 0x96, 0x74, 0x49, 0x47, 0xdd, 0xd5, 0xbd, 0x24, 0xaa, 0x95, +}; +static const unsigned char kat1409_retbits[] = { + 0x19, 0x89, 0xf0, 0x0f, 0x2a, 0xfb, 0xf4, 0x9b, 0xdd, 0xa1, 0x97, 0x33, + 0xc2, 0x94, 0x19, 0x6a, 0x41, 0x58, 0x74, 0xca, 0x12, 0xcb, 0x89, 0xd7, + 0xf5, 0xaa, 0xae, 0x66, 0xba, 0x6e, 0x9d, 0x5a, 0x8d, 0xf0, 0xea, 0x17, + 0xff, 0x8c, 0x30, 0x7f, 0xb6, 0xd1, 0x3d, 0x9e, 0x91, 0x30, 0x4a, 0x3d, + 0x89, 0xe9, 0x9b, 0xad, 0xeb, 0xb4, 0x43, 0x52, 0xa6, 0x17, 0x90, 0x39, + 0x82, 0x19, 0x78, 0x50, +}; +static const struct drbg_kat_no_reseed kat1409_t = { + 13, kat1409_entropyin, kat1409_nonce, kat1409_persstr, + kat1409_addin0, kat1409_addin1, kat1409_retbits +}; +static const struct drbg_kat kat1409 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1409_t +}; + +static const unsigned char kat1410_entropyin[] = { + 0x60, 0xc2, 0x47, 0xdd, 0x6d, 0x8a, 0x4c, 0xab, 0x04, 0xd6, 0x04, 0x5d, + 0x26, 0x55, 0x15, 0x3e, 0x82, 0x56, 0xa6, 0xfb, 0xb5, 0x2f, 0xaf, 0x60, + 0x51, 0x7b, 0xc9, 0xcd, 0x86, 0xaf, 0x8f, 0x6d, 0xd5, 0x53, 0x18, 0x14, + 0x22, 0xd2, 0x94, 0xbf, 0x4d, 0x70, 0x84, 0x11, 0x19, 0xa1, 0xc4, 0x58, +}; +static const unsigned char kat1410_nonce[] = {0}; +static const unsigned char kat1410_persstr[] = {0}; +static const unsigned char kat1410_addin0[] = { + 0xc8, 0x39, 0x97, 0x3b, 0x79, 0xc3, 0xee, 0xa5, 0xdb, 0x71, 0x07, 0xca, + 0x7c, 0xae, 0x1c, 0x01, 0x2c, 0xdd, 0x59, 0xa5, 0x0e, 0x58, 0xb7, 0x46, + 0x1e, 0xd7, 0x92, 0x11, 0x78, 0x37, 0x25, 0xe9, 0x55, 0x10, 0x4e, 0x30, + 0xa0, 0x04, 0x0d, 0xcc, 0x73, 0xd5, 0xe2, 0xb9, 0x7b, 0x4b, 0x8f, 0x84, +}; +static const unsigned char kat1410_addin1[] = { + 0x3c, 0xde, 0x5a, 0x2f, 0x6e, 0x19, 0xfb, 0x4a, 0x44, 0x93, 0x83, 0x00, + 0x16, 0xcd, 0x86, 0xaf, 0xcb, 0x7a, 0x8d, 0xb4, 0x9a, 0x2a, 0xbf, 0x60, + 0x77, 0xeb, 0xb5, 0x31, 0x4d, 0xd1, 0x2a, 0x2d, 0x1f, 0xe9, 0xd3, 0x60, + 0x1c, 0x12, 0x5c, 0x41, 0xc3, 0xe9, 0xaf, 0x46, 0x03, 0xee, 0x8f, 0x8b, +}; +static const unsigned char kat1410_retbits[] = { + 0xe6, 0x1a, 0x4d, 0x43, 0x9b, 0x4b, 0xb1, 0xcc, 0xdc, 0x81, 0x0e, 0xf7, + 0xa0, 0x01, 0x9e, 0x5e, 0x88, 0x32, 0x1a, 0xb6, 0x68, 0x7f, 0x65, 0x64, + 0xd5, 0xf7, 0x0c, 0x0a, 0xfb, 0x16, 0x33, 0xd5, 0x0d, 0xa6, 0x3d, 0x6d, + 0x1b, 0x19, 0x19, 0xb7, 0x24, 0xb5, 0x7e, 0xe9, 0x26, 0xd6, 0x3a, 0x80, + 0xac, 0x20, 0xf1, 0xff, 0x06, 0xc4, 0x93, 0x24, 0x56, 0xc7, 0x0e, 0x8b, + 0x64, 0xdb, 0x43, 0xf8, +}; +static const struct drbg_kat_no_reseed kat1410_t = { + 14, kat1410_entropyin, kat1410_nonce, kat1410_persstr, + kat1410_addin0, kat1410_addin1, kat1410_retbits +}; +static const struct drbg_kat kat1410 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat1410_t +}; + +static const unsigned char kat1411_entropyin[] = { + 0xbc, 0x87, 0x8e, 0x4f, 0xb5, 0x9b, 0xf4, 0x3c, 0xc7, 0xf8, 0x65, 0x25, + 0xa0, 0xdb, 0x68, 0x84, 0x5b, 0x88, 0xee, 0x48, 0x4b, 0x4b, 0x6e, 0x59, + 0xa4, 0xe0, 0x16, 0xac, 0x61, 0xcb, 0xf1, 0x54, 0x29, 0xdc, 0x50, 0x91, + 0x6e, 0x5b, 0xdb, 0x38, 0x4c, 0xc1, 0x7d, 0x19, 0xb7, 0xb6, 0xdf, 0xcb, +}; +static const unsigned char kat1411_nonce[] = {0}; +static const unsigned char kat1411_persstr[] = { + 0x92, 0xc5, 0x22, 0x1d, 0x5c, 0xcb, 0xc3, 0x9e, 0x4a, 0xd3, 0xa7, 0x9c, + 0x93, 0x62, 0x09, 0x18, 0x57, 0xa7, 0xad, 0x45, 0x69, 0x66, 0x0a, 0x78, + 0x6b, 0xda, 0xce, 0x18, 0xd5, 0x74, 0xd1, 0x8d, 0xfb, 0xa4, 0xcc, 0x10, + 0xf7, 0xa4, 0xc8, 0x22, 0x30, 0x08, 0x9b, 0xe7, 0xc0, 0xd8, 0x65, 0x7f, +}; +static const unsigned char kat1411_addin0[] = {0}; +static const unsigned char kat1411_addin1[] = {0}; +static const unsigned char kat1411_retbits[] = { + 0xd9, 0x46, 0x15, 0xf9, 0xb2, 0x3b, 0x17, 0x29, 0x3b, 0x9a, 0xe8, 0xe1, + 0x5f, 0x36, 0x3e, 0xc0, 0x7b, 0xfc, 0xce, 0x20, 0xd9, 0x18, 0x3c, 0x0c, + 0xa9, 0xbf, 0xd2, 0x5d, 0x67, 0xa8, 0x52, 0x03, 0x64, 0x51, 0x62, 0xad, + 0x91, 0x04, 0x55, 0x2e, 0x7c, 0xd1, 0xfb, 0x87, 0x13, 0xbd, 0xdd, 0x57, + 0x9b, 0x70, 0x5a, 0x80, 0x74, 0xa9, 0xaf, 0x93, 0x17, 0x19, 0x72, 0xc8, + 0x51, 0x22, 0x1f, 0x4d, +}; +static const struct drbg_kat_no_reseed kat1411_t = { + 0, kat1411_entropyin, kat1411_nonce, kat1411_persstr, + kat1411_addin0, kat1411_addin1, kat1411_retbits +}; +static const struct drbg_kat kat1411 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1411_t +}; + +static const unsigned char kat1412_entropyin[] = { + 0x30, 0x3d, 0x58, 0x96, 0xd6, 0x05, 0x26, 0xf7, 0xde, 0xcb, 0x2b, 0x77, + 0x6b, 0xd5, 0x8e, 0x5c, 0x2c, 0x5b, 0x89, 0x56, 0xfc, 0x29, 0xf6, 0x8a, + 0xec, 0xba, 0xf8, 0x48, 0xc9, 0x3a, 0xbb, 0x54, 0x31, 0x59, 0xa8, 0x7d, + 0x5f, 0x73, 0x30, 0x3a, 0x82, 0xd3, 0xa7, 0x34, 0xe3, 0x1d, 0x7c, 0x2b, +}; +static const unsigned char kat1412_nonce[] = {0}; +static const unsigned char kat1412_persstr[] = { + 0x0a, 0x66, 0xbb, 0xef, 0x02, 0x25, 0xa5, 0x5a, 0x61, 0x52, 0xd3, 0x6f, + 0x3a, 0x54, 0xe3, 0x42, 0x36, 0x79, 0x94, 0x20, 0xbc, 0x1c, 0xe1, 0xb6, + 0xf7, 0x32, 0x28, 0xa5, 0x7c, 0x9b, 0xca, 0x79, 0x2b, 0xb0, 0xd3, 0x0f, + 0x58, 0xb6, 0x04, 0x6b, 0xac, 0x73, 0xeb, 0xb5, 0xbe, 0x92, 0xd6, 0x09, +}; +static const unsigned char kat1412_addin0[] = {0}; +static const unsigned char kat1412_addin1[] = {0}; +static const unsigned char kat1412_retbits[] = { + 0x72, 0xcf, 0x7c, 0x85, 0xb9, 0x53, 0x1d, 0x6c, 0xa5, 0x03, 0x62, 0xbb, + 0x9b, 0xa6, 0xd6, 0xbe, 0x72, 0x3a, 0x68, 0x8d, 0x8a, 0xbc, 0x87, 0x17, + 0xab, 0x5c, 0xf9, 0x4b, 0x1d, 0xbe, 0xf0, 0x8f, 0x4b, 0x50, 0xee, 0x11, + 0xaf, 0x4b, 0x80, 0x3a, 0xac, 0xc3, 0x9e, 0x44, 0x23, 0x89, 0x92, 0x92, + 0xa3, 0x99, 0x38, 0x4d, 0x11, 0x8f, 0xe0, 0xc4, 0xe9, 0x54, 0x98, 0x1c, + 0xff, 0xd4, 0xac, 0x44, +}; +static const struct drbg_kat_no_reseed kat1412_t = { + 1, kat1412_entropyin, kat1412_nonce, kat1412_persstr, + kat1412_addin0, kat1412_addin1, kat1412_retbits +}; +static const struct drbg_kat kat1412 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1412_t +}; + +static const unsigned char kat1413_entropyin[] = { + 0x39, 0xbc, 0xf4, 0xd3, 0x13, 0x5e, 0x1d, 0x80, 0xd0, 0x87, 0xa1, 0x1d, + 0x7b, 0x9b, 0xbe, 0x02, 0xab, 0xf2, 0x53, 0x10, 0x12, 0xe5, 0x5f, 0xd1, + 0x71, 0x01, 0xdc, 0x2f, 0x58, 0x61, 0x34, 0xf5, 0x53, 0x98, 0xba, 0xe3, + 0x9b, 0x1b, 0xdf, 0x87, 0x3d, 0x2c, 0x42, 0xe3, 0x4b, 0x59, 0xd7, 0x31, +}; +static const unsigned char kat1413_nonce[] = {0}; +static const unsigned char kat1413_persstr[] = { + 0x1c, 0xc5, 0x46, 0xdb, 0x68, 0x3b, 0xc3, 0xd9, 0xa4, 0xcf, 0x21, 0x4e, + 0x90, 0x14, 0x3b, 0x74, 0x95, 0xda, 0x36, 0x11, 0x4e, 0x22, 0x3f, 0x13, + 0x14, 0x90, 0x09, 0x58, 0x4a, 0x07, 0x0b, 0x24, 0x71, 0xae, 0x7a, 0x7c, + 0x16, 0xf4, 0x97, 0xa0, 0x4b, 0x06, 0xfa, 0xbf, 0x69, 0xf4, 0x87, 0x8c, +}; +static const unsigned char kat1413_addin0[] = {0}; +static const unsigned char kat1413_addin1[] = {0}; +static const unsigned char kat1413_retbits[] = { + 0xaa, 0x7e, 0x7c, 0x9d, 0x69, 0x1e, 0xc5, 0x2a, 0xb0, 0x3b, 0x60, 0x24, + 0xa3, 0xbc, 0xd7, 0x4f, 0xe8, 0x28, 0x98, 0x72, 0x89, 0xbe, 0xa1, 0x33, + 0x09, 0xb3, 0x7b, 0xd6, 0x4a, 0x48, 0x16, 0xcf, 0x18, 0x39, 0x2c, 0xe4, + 0x93, 0x83, 0x02, 0x9a, 0x46, 0x40, 0xd8, 0xed, 0xd4, 0x79, 0xd0, 0x4e, + 0x32, 0x8f, 0xfe, 0x33, 0xf6, 0x3d, 0xaa, 0x40, 0x7b, 0x15, 0x34, 0xa6, + 0x7a, 0xb3, 0x9b, 0x15, +}; +static const struct drbg_kat_no_reseed kat1413_t = { + 2, kat1413_entropyin, kat1413_nonce, kat1413_persstr, + kat1413_addin0, kat1413_addin1, kat1413_retbits +}; +static const struct drbg_kat kat1413 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1413_t +}; + +static const unsigned char kat1414_entropyin[] = { + 0xa9, 0x4e, 0x58, 0x43, 0x4c, 0x8a, 0xe4, 0xa0, 0xdb, 0x42, 0xf4, 0xc4, + 0xe8, 0x27, 0xd3, 0xad, 0x4d, 0xfd, 0xc6, 0xaf, 0xa9, 0x43, 0x39, 0xa4, + 0xc8, 0x1a, 0x55, 0xef, 0x38, 0xaf, 0x7b, 0x20, 0xc2, 0x34, 0x3f, 0xee, + 0xc4, 0xf9, 0xed, 0xd9, 0xfd, 0x5b, 0x3f, 0x9b, 0x3d, 0xc4, 0x98, 0xd7, +}; +static const unsigned char kat1414_nonce[] = {0}; +static const unsigned char kat1414_persstr[] = { + 0x80, 0xfe, 0x06, 0x54, 0x18, 0x94, 0x20, 0x96, 0xeb, 0x9b, 0xa9, 0x43, + 0x48, 0xfc, 0x64, 0xfb, 0x03, 0x40, 0xae, 0x8a, 0x21, 0x50, 0x4f, 0xb5, + 0x05, 0x2d, 0x1a, 0xbb, 0xff, 0x35, 0x17, 0x2b, 0xdc, 0x95, 0x94, 0x7d, + 0xc6, 0x5b, 0xaa, 0x79, 0x2f, 0x58, 0xad, 0x88, 0x13, 0xe5, 0xbe, 0x1a, +}; +static const unsigned char kat1414_addin0[] = {0}; +static const unsigned char kat1414_addin1[] = {0}; +static const unsigned char kat1414_retbits[] = { + 0x95, 0x37, 0x68, 0x99, 0xe2, 0x57, 0xd3, 0xf8, 0x1a, 0x03, 0x4f, 0x1a, + 0x2d, 0x9b, 0xc7, 0x73, 0x55, 0xdd, 0xbb, 0x8e, 0x62, 0xdf, 0xe2, 0x74, + 0x50, 0x1e, 0x4d, 0xa7, 0x1f, 0x55, 0x93, 0xad, 0x59, 0x63, 0xb4, 0x30, + 0x3f, 0x29, 0x00, 0xd3, 0xc8, 0x60, 0x8e, 0x9c, 0x49, 0xe7, 0xcb, 0x61, + 0x8c, 0xa6, 0x80, 0xc6, 0xfb, 0xe9, 0x1e, 0xf0, 0x01, 0x46, 0xc2, 0x60, + 0x35, 0xd8, 0x87, 0x5c, +}; +static const struct drbg_kat_no_reseed kat1414_t = { + 3, kat1414_entropyin, kat1414_nonce, kat1414_persstr, + kat1414_addin0, kat1414_addin1, kat1414_retbits +}; +static const struct drbg_kat kat1414 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1414_t +}; + +static const unsigned char kat1415_entropyin[] = { + 0x37, 0xda, 0xc4, 0xa5, 0x1c, 0x64, 0x2f, 0x08, 0x39, 0x20, 0xfd, 0x50, + 0x42, 0xf8, 0x3b, 0x4c, 0xf3, 0xdc, 0xdf, 0xa9, 0xe2, 0xcb, 0x92, 0x54, + 0x4d, 0x88, 0xa8, 0x7b, 0x4f, 0x8e, 0xb6, 0x91, 0xd8, 0xe5, 0x3a, 0xc0, + 0xc0, 0x7a, 0x67, 0x91, 0xa9, 0x44, 0xb0, 0x2e, 0x43, 0x3a, 0xf9, 0xdf, +}; +static const unsigned char kat1415_nonce[] = {0}; +static const unsigned char kat1415_persstr[] = { + 0x9e, 0x30, 0xeb, 0x98, 0x70, 0xfa, 0xe6, 0x70, 0x9a, 0xa4, 0xdd, 0xe6, + 0x3c, 0x2b, 0xdf, 0x57, 0x8c, 0xa0, 0xc3, 0x4c, 0xae, 0x99, 0x43, 0x6f, + 0x80, 0xf2, 0x6c, 0x31, 0xb4, 0x72, 0xeb, 0x54, 0x01, 0xb2, 0xeb, 0x9f, + 0xfb, 0x01, 0x3d, 0x65, 0x59, 0xc9, 0x81, 0x9e, 0x96, 0xde, 0x47, 0xa3, +}; +static const unsigned char kat1415_addin0[] = {0}; +static const unsigned char kat1415_addin1[] = {0}; +static const unsigned char kat1415_retbits[] = { + 0xb6, 0xb3, 0x2d, 0xe5, 0x24, 0xce, 0x8a, 0x90, 0xe9, 0xeb, 0xe9, 0x21, + 0xfa, 0x88, 0x34, 0x50, 0x1d, 0x51, 0xed, 0x40, 0xd8, 0x1c, 0x28, 0x82, + 0x44, 0x94, 0x8b, 0xc1, 0xbd, 0x6e, 0x76, 0x1b, 0xb3, 0x9c, 0xc6, 0xd0, + 0x71, 0x15, 0x79, 0xc1, 0x44, 0xca, 0x3d, 0x5e, 0x1d, 0x2d, 0x23, 0x67, + 0xc5, 0xb8, 0x42, 0x04, 0x81, 0x0f, 0xb4, 0x85, 0x59, 0x07, 0x7f, 0xbb, + 0x99, 0x61, 0x2d, 0x67, +}; +static const struct drbg_kat_no_reseed kat1415_t = { + 4, kat1415_entropyin, kat1415_nonce, kat1415_persstr, + kat1415_addin0, kat1415_addin1, kat1415_retbits +}; +static const struct drbg_kat kat1415 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1415_t +}; + +static const unsigned char kat1416_entropyin[] = { + 0x59, 0xf2, 0x5f, 0xc1, 0xf5, 0x44, 0x95, 0x22, 0x59, 0x48, 0xa1, 0xee, + 0x19, 0x2f, 0xb0, 0x71, 0x49, 0xef, 0x61, 0xfd, 0x36, 0x88, 0x6b, 0x8d, + 0x59, 0x04, 0xf2, 0x40, 0xeb, 0x15, 0x7e, 0xbc, 0x44, 0xf0, 0xc7, 0x1f, + 0xcf, 0xb0, 0xd5, 0xc6, 0x35, 0x38, 0xd0, 0x57, 0xf2, 0x93, 0x69, 0x70, +}; +static const unsigned char kat1416_nonce[] = {0}; +static const unsigned char kat1416_persstr[] = { + 0xe4, 0xd9, 0x7c, 0x71, 0x30, 0xdb, 0x6c, 0xfc, 0xea, 0xdb, 0x31, 0x34, + 0x74, 0x8c, 0x92, 0x1d, 0x4b, 0x44, 0x43, 0xcb, 0x97, 0x69, 0xab, 0x9e, + 0x8c, 0x30, 0x1f, 0x6a, 0xa0, 0xa1, 0x49, 0xd4, 0x43, 0xd7, 0x55, 0x6c, + 0xf7, 0xf3, 0xb5, 0x7a, 0x29, 0x80, 0x60, 0xa8, 0x88, 0x7b, 0xef, 0xe7, +}; +static const unsigned char kat1416_addin0[] = {0}; +static const unsigned char kat1416_addin1[] = {0}; +static const unsigned char kat1416_retbits[] = { + 0x44, 0x67, 0x3a, 0x86, 0xb1, 0x43, 0x22, 0xcc, 0x02, 0x88, 0x4b, 0x0a, + 0x7c, 0xee, 0xb7, 0x40, 0x03, 0x25, 0xe0, 0x05, 0xbc, 0xb1, 0xa8, 0x84, + 0xc4, 0x6f, 0x44, 0x73, 0x30, 0x1e, 0xf5, 0xec, 0xce, 0x27, 0x55, 0xe5, + 0x0b, 0x00, 0x57, 0x88, 0x3f, 0x74, 0x89, 0xd7, 0xfe, 0x3a, 0x21, 0x59, + 0x86, 0xfd, 0x8d, 0x09, 0x62, 0xae, 0xeb, 0xf0, 0xcc, 0xac, 0xc3, 0x0c, + 0x46, 0xbc, 0x29, 0x1c, +}; +static const struct drbg_kat_no_reseed kat1416_t = { + 5, kat1416_entropyin, kat1416_nonce, kat1416_persstr, + kat1416_addin0, kat1416_addin1, kat1416_retbits +}; +static const struct drbg_kat kat1416 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1416_t +}; + +static const unsigned char kat1417_entropyin[] = { + 0x8d, 0x0e, 0xc8, 0x74, 0xea, 0xe0, 0x08, 0xc7, 0xeb, 0x97, 0x89, 0x3a, + 0xcd, 0x39, 0x64, 0xf9, 0xcd, 0xaa, 0x11, 0x2f, 0x12, 0xf7, 0x57, 0x8a, + 0xe7, 0x73, 0xfd, 0x5e, 0x82, 0x2e, 0xd5, 0x18, 0xdf, 0x68, 0xcc, 0x65, + 0x91, 0xd3, 0xee, 0x60, 0xa3, 0xd7, 0x40, 0x88, 0x8e, 0x83, 0xf5, 0x66, +}; +static const unsigned char kat1417_nonce[] = {0}; +static const unsigned char kat1417_persstr[] = { + 0xa0, 0x95, 0xe5, 0x2c, 0x8b, 0x40, 0xe7, 0x59, 0x58, 0x79, 0x23, 0x1e, + 0x1b, 0x31, 0x97, 0x5a, 0xf4, 0x98, 0x7d, 0x29, 0xc0, 0x72, 0xe4, 0x98, + 0x98, 0xcd, 0x01, 0x9e, 0x6f, 0x69, 0xee, 0xba, 0x10, 0x0a, 0x61, 0x9f, + 0xd9, 0x56, 0xc6, 0x76, 0xdf, 0xee, 0x8e, 0x30, 0xec, 0x85, 0xff, 0x21, +}; +static const unsigned char kat1417_addin0[] = {0}; +static const unsigned char kat1417_addin1[] = {0}; +static const unsigned char kat1417_retbits[] = { + 0x92, 0xe1, 0xc3, 0xa8, 0x01, 0xef, 0xd1, 0x3b, 0xcd, 0xbd, 0x60, 0xd4, + 0xc4, 0xc9, 0xf9, 0xd6, 0xc2, 0x31, 0x99, 0x9a, 0xe0, 0xc2, 0x73, 0x7a, + 0x97, 0x1d, 0x6b, 0x2d, 0x2b, 0xce, 0x9a, 0xfd, 0x82, 0xa7, 0x4a, 0xb0, + 0x14, 0x11, 0xd9, 0x7f, 0x2b, 0xb5, 0x9a, 0xd6, 0x6f, 0x14, 0xde, 0x25, + 0x6b, 0xdc, 0x12, 0x46, 0x5b, 0x95, 0x30, 0x6a, 0x83, 0xce, 0xfe, 0x95, + 0xa0, 0xeb, 0xe1, 0xd9, +}; +static const struct drbg_kat_no_reseed kat1417_t = { + 6, kat1417_entropyin, kat1417_nonce, kat1417_persstr, + kat1417_addin0, kat1417_addin1, kat1417_retbits +}; +static const struct drbg_kat kat1417 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1417_t +}; + +static const unsigned char kat1418_entropyin[] = { + 0xf0, 0x3a, 0xa7, 0x12, 0xde, 0xd0, 0x60, 0xc9, 0x18, 0xae, 0xc2, 0x58, + 0xcd, 0x32, 0x9d, 0xd6, 0x51, 0x1b, 0x25, 0x15, 0x90, 0x2a, 0xd4, 0xb9, + 0x80, 0xf0, 0xc3, 0xde, 0x5c, 0x45, 0x3c, 0x19, 0x6d, 0x55, 0xde, 0x00, + 0xe5, 0xa9, 0x02, 0x83, 0x06, 0x4b, 0x02, 0xc5, 0xa9, 0xda, 0xc5, 0xcc, +}; +static const unsigned char kat1418_nonce[] = {0}; +static const unsigned char kat1418_persstr[] = { + 0xad, 0x6a, 0x88, 0xc5, 0x8a, 0xf7, 0x80, 0x3e, 0x1b, 0x3f, 0x41, 0x56, + 0x8b, 0xd0, 0x0f, 0x69, 0x99, 0xc5, 0x2d, 0x70, 0x6a, 0x45, 0xf0, 0x34, + 0x50, 0xd9, 0xfa, 0xd8, 0xc6, 0xd5, 0x41, 0x12, 0xb7, 0x2d, 0xbd, 0xc9, + 0x92, 0x46, 0x98, 0x7e, 0x82, 0x3c, 0x19, 0x92, 0x63, 0x77, 0x87, 0x9d, +}; +static const unsigned char kat1418_addin0[] = {0}; +static const unsigned char kat1418_addin1[] = {0}; +static const unsigned char kat1418_retbits[] = { + 0x9a, 0x62, 0x4c, 0x85, 0x9e, 0x78, 0xa5, 0x4f, 0x82, 0xf0, 0x37, 0x1c, + 0xbc, 0x09, 0x5d, 0x7f, 0x1b, 0x9f, 0xbb, 0x9f, 0xf8, 0x7d, 0xf9, 0xff, + 0x7b, 0x94, 0x99, 0xbc, 0xf8, 0x9b, 0x6e, 0x37, 0x6b, 0xa1, 0xee, 0x77, + 0x69, 0xd3, 0x3c, 0x6c, 0x59, 0x88, 0x57, 0x52, 0xea, 0x46, 0xa9, 0xd0, + 0x2e, 0xda, 0xf2, 0x2e, 0x30, 0x06, 0xd5, 0xc7, 0x82, 0x24, 0x43, 0x07, + 0x8e, 0xbd, 0xb7, 0x93, +}; +static const struct drbg_kat_no_reseed kat1418_t = { + 7, kat1418_entropyin, kat1418_nonce, kat1418_persstr, + kat1418_addin0, kat1418_addin1, kat1418_retbits +}; +static const struct drbg_kat kat1418 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1418_t +}; + +static const unsigned char kat1419_entropyin[] = { + 0xb6, 0xf3, 0x71, 0xbb, 0x2b, 0x8b, 0x13, 0xb8, 0x5a, 0xdf, 0x5f, 0xeb, + 0x05, 0x19, 0xf4, 0x01, 0x39, 0xfd, 0x22, 0x94, 0x86, 0xfb, 0xe5, 0x79, + 0x53, 0xe3, 0xac, 0x54, 0x1c, 0xb1, 0xbc, 0x85, 0x3a, 0x51, 0xad, 0x15, + 0x7a, 0xbd, 0x27, 0xaf, 0x38, 0xf6, 0x2e, 0x1c, 0xcb, 0x27, 0x12, 0x58, +}; +static const unsigned char kat1419_nonce[] = {0}; +static const unsigned char kat1419_persstr[] = { + 0x7e, 0x56, 0x47, 0x3a, 0xac, 0xd1, 0x3c, 0xc7, 0x30, 0xce, 0xb5, 0x98, + 0xa0, 0xe4, 0xae, 0x73, 0x1f, 0xc4, 0xbb, 0xa5, 0x8e, 0x1e, 0x2b, 0xa2, + 0x16, 0xaa, 0x84, 0x6c, 0x83, 0xeb, 0x90, 0xc2, 0x14, 0xb0, 0x2a, 0x1a, + 0x08, 0xc2, 0x68, 0xb5, 0xea, 0xe8, 0xa4, 0x7d, 0x28, 0x78, 0x83, 0x3f, +}; +static const unsigned char kat1419_addin0[] = {0}; +static const unsigned char kat1419_addin1[] = {0}; +static const unsigned char kat1419_retbits[] = { + 0x6c, 0xae, 0xd1, 0x6e, 0x8a, 0x03, 0x4b, 0x14, 0x78, 0x5d, 0xf2, 0xa1, + 0xab, 0x95, 0xcc, 0x48, 0xfc, 0x61, 0xf5, 0x47, 0x9d, 0x73, 0xac, 0x0c, + 0x92, 0x38, 0xc9, 0xab, 0xcc, 0x26, 0x70, 0x5e, 0xb6, 0x00, 0x16, 0x4d, + 0xac, 0x29, 0xe9, 0xc6, 0xba, 0x2c, 0xb3, 0xc4, 0x90, 0x6e, 0x76, 0xe5, + 0x28, 0xf9, 0x5a, 0x51, 0x2c, 0x8f, 0xda, 0x76, 0xfe, 0x2d, 0x77, 0xc5, + 0x5f, 0x02, 0x59, 0xb2, +}; +static const struct drbg_kat_no_reseed kat1419_t = { + 8, kat1419_entropyin, kat1419_nonce, kat1419_persstr, + kat1419_addin0, kat1419_addin1, kat1419_retbits +}; +static const struct drbg_kat kat1419 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1419_t +}; + +static const unsigned char kat1420_entropyin[] = { + 0xf7, 0x50, 0x15, 0xae, 0x8c, 0x9e, 0xf8, 0xca, 0x5f, 0x82, 0xd9, 0xf3, + 0x14, 0x77, 0xa9, 0x3b, 0x0c, 0x25, 0x93, 0x00, 0xe4, 0x78, 0x9b, 0x12, + 0x16, 0xb7, 0x9d, 0x33, 0xe3, 0x01, 0xfa, 0xdc, 0x10, 0x20, 0x12, 0xdf, + 0x02, 0xf7, 0xa7, 0xad, 0xf5, 0x1c, 0x20, 0xf9, 0x92, 0x11, 0x94, 0x59, +}; +static const unsigned char kat1420_nonce[] = {0}; +static const unsigned char kat1420_persstr[] = { + 0x2e, 0x6a, 0x2b, 0x62, 0x7d, 0xc6, 0xda, 0x85, 0x21, 0x46, 0x97, 0xb8, + 0x41, 0x3d, 0x01, 0xde, 0xe9, 0x1d, 0x32, 0x5f, 0x59, 0x18, 0x1f, 0xd0, + 0x2b, 0xdf, 0x1a, 0xc2, 0xd9, 0x6e, 0x83, 0xb3, 0x53, 0x32, 0x82, 0x1e, + 0x9f, 0x4f, 0x7c, 0x9b, 0x63, 0x99, 0xf2, 0x02, 0x60, 0xa5, 0xd0, 0xa9, +}; +static const unsigned char kat1420_addin0[] = {0}; +static const unsigned char kat1420_addin1[] = {0}; +static const unsigned char kat1420_retbits[] = { + 0x7e, 0x4b, 0x05, 0x96, 0x87, 0xbc, 0x22, 0x00, 0x3c, 0xd0, 0xaa, 0x93, + 0x6d, 0x30, 0x5c, 0xe0, 0x9e, 0xad, 0xe4, 0xf3, 0xa5, 0x4e, 0xc9, 0x52, + 0x3b, 0x8b, 0xfc, 0x68, 0x32, 0xd2, 0xc0, 0x10, 0x5c, 0xa2, 0x65, 0x2c, + 0x74, 0x98, 0x08, 0x06, 0x9c, 0x11, 0xab, 0xa3, 0xbf, 0x39, 0x20, 0x57, + 0x61, 0x6d, 0x48, 0x36, 0x5d, 0x15, 0xb7, 0xcc, 0x42, 0x89, 0xfa, 0xb9, + 0xf9, 0x36, 0x1e, 0xd2, +}; +static const struct drbg_kat_no_reseed kat1420_t = { + 9, kat1420_entropyin, kat1420_nonce, kat1420_persstr, + kat1420_addin0, kat1420_addin1, kat1420_retbits +}; +static const struct drbg_kat kat1420 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1420_t +}; + +static const unsigned char kat1421_entropyin[] = { + 0x78, 0x14, 0x71, 0xb8, 0xd6, 0xd6, 0x6e, 0xdb, 0x77, 0x8b, 0x54, 0x74, + 0x2c, 0xc9, 0x04, 0x07, 0xa9, 0xa3, 0x25, 0xd9, 0x02, 0xa5, 0x96, 0xc3, + 0x70, 0x80, 0xcf, 0xbe, 0xc6, 0x57, 0x52, 0x59, 0x87, 0x04, 0xc4, 0x5d, + 0x9e, 0x75, 0x7e, 0xda, 0x57, 0xe8, 0x81, 0x9c, 0x04, 0x7b, 0x36, 0xc7, +}; +static const unsigned char kat1421_nonce[] = {0}; +static const unsigned char kat1421_persstr[] = { + 0xc3, 0x58, 0xa3, 0xc4, 0xaa, 0x33, 0x84, 0xe0, 0x53, 0xbf, 0xa4, 0xa3, + 0xb3, 0x32, 0xdf, 0xd1, 0xdf, 0x79, 0xf3, 0x41, 0xa3, 0xe5, 0x9f, 0x0e, + 0x50, 0x15, 0xe8, 0x87, 0x1f, 0xe7, 0x4f, 0xcf, 0x9b, 0x4a, 0xc9, 0xfd, + 0x54, 0x56, 0xf9, 0x72, 0xea, 0x24, 0xaa, 0x19, 0xcf, 0x59, 0xce, 0xde, +}; +static const unsigned char kat1421_addin0[] = {0}; +static const unsigned char kat1421_addin1[] = {0}; +static const unsigned char kat1421_retbits[] = { + 0xbf, 0x12, 0xdf, 0xf4, 0xe3, 0xab, 0x3b, 0x09, 0x41, 0x65, 0x80, 0x3d, + 0xa0, 0xc1, 0xa8, 0xde, 0x2a, 0xce, 0x25, 0x4a, 0x1d, 0x65, 0xe4, 0xbb, + 0x8f, 0xf3, 0x9d, 0xb9, 0x32, 0x7b, 0xf1, 0xeb, 0xcd, 0xe3, 0x24, 0xd9, + 0x51, 0x27, 0x26, 0xd5, 0x19, 0x63, 0x4f, 0x8d, 0x72, 0x4e, 0xd5, 0xa7, + 0x93, 0x5d, 0xb5, 0x09, 0xba, 0x03, 0x72, 0x00, 0x34, 0x7c, 0xfb, 0x7c, + 0x00, 0xb0, 0x46, 0xd7, +}; +static const struct drbg_kat_no_reseed kat1421_t = { + 10, kat1421_entropyin, kat1421_nonce, kat1421_persstr, + kat1421_addin0, kat1421_addin1, kat1421_retbits +}; +static const struct drbg_kat kat1421 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1421_t +}; + +static const unsigned char kat1422_entropyin[] = { + 0xe0, 0x6d, 0xd4, 0x40, 0xdb, 0x6e, 0x8c, 0x16, 0x01, 0x49, 0xc9, 0xe3, + 0x00, 0x29, 0x89, 0x5f, 0x91, 0x27, 0x20, 0x1b, 0xe7, 0xdc, 0xbe, 0x33, + 0xa8, 0x45, 0xfe, 0x1e, 0x4c, 0x3d, 0x84, 0xab, 0x26, 0xb1, 0x9c, 0xb6, + 0x46, 0x6b, 0x89, 0x45, 0xca, 0xce, 0xa0, 0x9c, 0xd6, 0xd6, 0x99, 0xd9, +}; +static const unsigned char kat1422_nonce[] = {0}; +static const unsigned char kat1422_persstr[] = { + 0x5b, 0x49, 0x42, 0xfe, 0x42, 0x63, 0xbf, 0x21, 0x65, 0x9e, 0x85, 0xbd, + 0x1a, 0xc4, 0xbb, 0xb5, 0x0b, 0x94, 0x1d, 0xfc, 0xed, 0x77, 0xf4, 0x15, + 0x1b, 0x8e, 0x7b, 0x52, 0x16, 0xe8, 0x21, 0xb5, 0x4c, 0x91, 0xa8, 0xe8, + 0x3d, 0x9f, 0xc4, 0x75, 0x80, 0x99, 0xc8, 0xdb, 0x34, 0xd6, 0xc0, 0xfe, +}; +static const unsigned char kat1422_addin0[] = {0}; +static const unsigned char kat1422_addin1[] = {0}; +static const unsigned char kat1422_retbits[] = { + 0xe6, 0xc6, 0xac, 0x76, 0xf5, 0x02, 0xf0, 0x25, 0xdd, 0x26, 0x16, 0x83, + 0x69, 0xf0, 0xf7, 0xe6, 0xf4, 0x05, 0x21, 0x3a, 0xa0, 0x2f, 0x6d, 0xb3, + 0xb3, 0x82, 0x3c, 0x18, 0x13, 0xc8, 0xb6, 0xee, 0xd9, 0x5f, 0x71, 0xf4, + 0xa7, 0x1c, 0xb8, 0x27, 0x0f, 0xfa, 0x8a, 0xc3, 0xce, 0x53, 0x66, 0xd7, + 0x15, 0x67, 0x86, 0x45, 0x65, 0xee, 0xfb, 0xa7, 0x12, 0x0e, 0x2e, 0xdc, + 0xc3, 0xb6, 0xec, 0x80, +}; +static const struct drbg_kat_no_reseed kat1422_t = { + 11, kat1422_entropyin, kat1422_nonce, kat1422_persstr, + kat1422_addin0, kat1422_addin1, kat1422_retbits +}; +static const struct drbg_kat kat1422 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1422_t +}; + +static const unsigned char kat1423_entropyin[] = { + 0x69, 0xe7, 0xd2, 0xb5, 0xc0, 0x32, 0x43, 0xc7, 0x52, 0xed, 0x07, 0xae, + 0xb0, 0x6f, 0xdd, 0x3c, 0x8c, 0xbe, 0x05, 0xb0, 0xb4, 0x2c, 0x20, 0x59, + 0xe4, 0xae, 0x01, 0x24, 0x1d, 0xa7, 0x7d, 0x17, 0x89, 0x0f, 0x0f, 0xa5, + 0x6c, 0x79, 0x40, 0xf6, 0x79, 0x94, 0x17, 0x38, 0x0a, 0x22, 0x88, 0xf0, +}; +static const unsigned char kat1423_nonce[] = {0}; +static const unsigned char kat1423_persstr[] = { + 0xfd, 0x7a, 0x2d, 0x8b, 0xae, 0x61, 0x0a, 0x2b, 0xfb, 0xf2, 0x06, 0xc9, + 0x01, 0x96, 0x01, 0xbc, 0x02, 0x75, 0x80, 0xde, 0x8f, 0x85, 0xf6, 0x02, + 0x46, 0xb5, 0x12, 0x6b, 0xd5, 0xe3, 0x6f, 0x30, 0xd7, 0xf4, 0xe9, 0x0d, + 0x0c, 0x46, 0xcd, 0x3a, 0x63, 0xf9, 0xd2, 0xed, 0xcf, 0x67, 0x19, 0x32, +}; +static const unsigned char kat1423_addin0[] = {0}; +static const unsigned char kat1423_addin1[] = {0}; +static const unsigned char kat1423_retbits[] = { + 0x75, 0xfc, 0x75, 0x72, 0x93, 0x35, 0x1c, 0x54, 0x5b, 0x1f, 0x73, 0x0f, + 0xd4, 0xec, 0x82, 0x06, 0x1d, 0x85, 0xe8, 0x0f, 0x8b, 0x77, 0x12, 0x2a, + 0xdb, 0x53, 0x72, 0x2b, 0x50, 0x9d, 0x7f, 0x27, 0xae, 0xbc, 0x8a, 0x5b, + 0x15, 0x45, 0xb6, 0xe6, 0xbc, 0xef, 0x2c, 0x9c, 0x28, 0x0f, 0xb3, 0x07, + 0xdc, 0x5a, 0xf0, 0x9b, 0x63, 0xbc, 0x86, 0x59, 0xeb, 0x6c, 0x90, 0x55, + 0x07, 0xa2, 0x0e, 0x57, +}; +static const struct drbg_kat_no_reseed kat1423_t = { + 12, kat1423_entropyin, kat1423_nonce, kat1423_persstr, + kat1423_addin0, kat1423_addin1, kat1423_retbits +}; +static const struct drbg_kat kat1423 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1423_t +}; + +static const unsigned char kat1424_entropyin[] = { + 0x32, 0x2a, 0x46, 0xb1, 0x03, 0xd6, 0xd1, 0x76, 0x5c, 0x90, 0x82, 0x9a, + 0xd0, 0x6c, 0x8b, 0x80, 0xe3, 0x66, 0xb4, 0x34, 0xc2, 0x92, 0x76, 0xde, + 0x3c, 0x60, 0x8d, 0xab, 0x02, 0xed, 0x03, 0x0c, 0x95, 0xa6, 0xf5, 0x79, + 0xca, 0x98, 0xc0, 0xf3, 0xf9, 0x77, 0x1c, 0xba, 0x09, 0x9b, 0xfe, 0x29, +}; +static const unsigned char kat1424_nonce[] = {0}; +static const unsigned char kat1424_persstr[] = { + 0x3c, 0x86, 0xe0, 0xab, 0x0c, 0x20, 0xc6, 0x76, 0x55, 0x95, 0xce, 0x82, + 0xcc, 0x54, 0xf3, 0x69, 0x25, 0x80, 0x74, 0xab, 0x2d, 0x4b, 0x8b, 0x5d, + 0x9f, 0xca, 0xb7, 0xdc, 0x38, 0xfa, 0x88, 0x66, 0x07, 0x3a, 0xf3, 0xa7, + 0x33, 0x54, 0x6f, 0x68, 0x5c, 0x68, 0xee, 0x68, 0x15, 0x49, 0x26, 0x91, +}; +static const unsigned char kat1424_addin0[] = {0}; +static const unsigned char kat1424_addin1[] = {0}; +static const unsigned char kat1424_retbits[] = { + 0x6c, 0x99, 0x54, 0x63, 0xad, 0xdd, 0xec, 0x73, 0xb6, 0xc0, 0x3e, 0xec, + 0xac, 0x07, 0xdb, 0x82, 0x42, 0x56, 0xa7, 0x91, 0xa1, 0xd0, 0xf4, 0xd7, + 0x86, 0xe9, 0x49, 0xf0, 0xd1, 0x98, 0x7e, 0xa4, 0xae, 0xdf, 0xd3, 0xbd, + 0x06, 0xb1, 0x62, 0x2c, 0xc8, 0x5a, 0x23, 0x70, 0xcd, 0x30, 0x55, 0x3e, + 0xe3, 0x54, 0x3d, 0x38, 0xd1, 0xc8, 0x7c, 0xea, 0x73, 0x1e, 0x68, 0x72, + 0xe7, 0x1f, 0x9d, 0xdb, +}; +static const struct drbg_kat_no_reseed kat1424_t = { + 13, kat1424_entropyin, kat1424_nonce, kat1424_persstr, + kat1424_addin0, kat1424_addin1, kat1424_retbits +}; +static const struct drbg_kat kat1424 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1424_t +}; + +static const unsigned char kat1425_entropyin[] = { + 0x7c, 0xe9, 0x97, 0x7c, 0xb8, 0x06, 0x34, 0xf0, 0x50, 0x3d, 0xee, 0xe2, + 0xaf, 0xb8, 0x23, 0x0c, 0x57, 0x40, 0x8c, 0x83, 0xbf, 0x5b, 0xf4, 0x1d, + 0x2d, 0x62, 0xd4, 0xda, 0xa4, 0xc4, 0x92, 0xfa, 0x60, 0xbe, 0x92, 0x74, + 0xf5, 0x39, 0xef, 0x37, 0xad, 0x3b, 0x83, 0xbd, 0xac, 0xdf, 0x70, 0x2c, +}; +static const unsigned char kat1425_nonce[] = {0}; +static const unsigned char kat1425_persstr[] = { + 0xd8, 0x62, 0x03, 0x9c, 0xc2, 0xc2, 0x97, 0xd6, 0x35, 0x29, 0xa3, 0x3f, + 0x38, 0xa6, 0xe5, 0x66, 0x0a, 0x06, 0x91, 0x9a, 0x04, 0x4c, 0x7e, 0x74, + 0x6f, 0xf2, 0x38, 0xb6, 0x53, 0x21, 0xd2, 0xa2, 0x33, 0xa9, 0xa9, 0xc7, + 0xb3, 0x53, 0x4c, 0x93, 0x2a, 0x88, 0x81, 0xad, 0x38, 0xd3, 0x1f, 0x65, +}; +static const unsigned char kat1425_addin0[] = {0}; +static const unsigned char kat1425_addin1[] = {0}; +static const unsigned char kat1425_retbits[] = { + 0xf1, 0x7b, 0x61, 0xf1, 0xc3, 0xca, 0xae, 0x33, 0x11, 0x60, 0xb7, 0x14, + 0x50, 0x4b, 0x9c, 0x05, 0x8a, 0xc3, 0x45, 0xf0, 0x7a, 0x5a, 0x26, 0x03, + 0x4d, 0xbf, 0xd7, 0xfe, 0xf5, 0x01, 0x3b, 0x52, 0xca, 0xe3, 0xe2, 0xcd, + 0x35, 0x70, 0x95, 0xb6, 0x23, 0x06, 0x5e, 0xc5, 0xcb, 0x55, 0x70, 0x01, + 0x88, 0x7b, 0x17, 0xf9, 0xb6, 0xf9, 0x47, 0x6d, 0x54, 0x49, 0xac, 0x7d, + 0x81, 0xd5, 0xab, 0xd3, +}; +static const struct drbg_kat_no_reseed kat1425_t = { + 14, kat1425_entropyin, kat1425_nonce, kat1425_persstr, + kat1425_addin0, kat1425_addin1, kat1425_retbits +}; +static const struct drbg_kat kat1425 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat1425_t +}; + +static const unsigned char kat1426_entropyin[] = { + 0x9c, 0x2a, 0xa3, 0x03, 0x49, 0xa0, 0x25, 0x3b, 0x3a, 0x97, 0xcc, 0xf9, + 0x24, 0xf8, 0xbc, 0xaf, 0xe1, 0xe1, 0x36, 0x46, 0x00, 0xb4, 0x90, 0x5a, + 0x4d, 0x9a, 0x0d, 0x54, 0xf7, 0xf5, 0x6e, 0xbd, 0x00, 0x07, 0x9f, 0xcc, + 0x12, 0xf8, 0x3d, 0xfa, 0xc7, 0x1a, 0xa1, 0xf2, 0xc8, 0x47, 0x12, 0x7e, +}; +static const unsigned char kat1426_nonce[] = {0}; +static const unsigned char kat1426_persstr[] = { + 0x57, 0x16, 0x4c, 0xea, 0x95, 0x82, 0x23, 0x96, 0x4e, 0x94, 0xb3, 0x59, + 0x6c, 0x1a, 0xfc, 0x06, 0x81, 0x8d, 0xfe, 0x90, 0x84, 0x11, 0x32, 0xc3, + 0x27, 0x34, 0x2b, 0xbb, 0x65, 0x4b, 0x74, 0xf2, 0x0e, 0x5f, 0x50, 0x65, + 0x83, 0x24, 0x06, 0x12, 0x05, 0xa8, 0xee, 0xa2, 0x1d, 0xdd, 0xcf, 0x48, +}; +static const unsigned char kat1426_addin0[] = { + 0x41, 0x25, 0xbe, 0xc3, 0x17, 0x43, 0x14, 0xc6, 0x03, 0xcf, 0x05, 0x2a, + 0xf4, 0x7b, 0xeb, 0xf6, 0x43, 0x3a, 0x17, 0xcd, 0x8a, 0x8f, 0xcb, 0x18, + 0x6f, 0x14, 0xcb, 0xd5, 0x76, 0x1c, 0x09, 0x21, 0x6d, 0x48, 0xb4, 0x1d, + 0x4f, 0xb1, 0x74, 0x81, 0xaf, 0xaf, 0x4d, 0xbc, 0x08, 0x68, 0x1a, 0xe9, +}; +static const unsigned char kat1426_addin1[] = { + 0xda, 0xbf, 0x91, 0x35, 0xae, 0x5d, 0x14, 0x28, 0x0f, 0x2e, 0x26, 0x9e, + 0xa8, 0x3f, 0x44, 0xdc, 0x2e, 0xb4, 0xd7, 0x61, 0x3e, 0x59, 0x64, 0xcb, + 0x1d, 0x49, 0x9f, 0x7b, 0x5b, 0xdc, 0xe4, 0x54, 0x02, 0x54, 0x6e, 0x86, + 0xa7, 0x86, 0x80, 0xbc, 0xd8, 0xce, 0x1f, 0xe9, 0xd7, 0x1e, 0xe7, 0x58, +}; +static const unsigned char kat1426_retbits[] = { + 0xec, 0x2e, 0x92, 0x97, 0x6c, 0x00, 0xb2, 0x36, 0x48, 0x38, 0xbd, 0x6c, + 0xae, 0x8f, 0x4c, 0xc6, 0x19, 0x4f, 0x39, 0xd7, 0x22, 0xd8, 0x8d, 0x99, + 0x0b, 0x32, 0xe5, 0x95, 0xaa, 0x82, 0xde, 0x66, 0x15, 0x34, 0xa0, 0x24, + 0x8d, 0xe6, 0xda, 0xf4, 0xdc, 0x36, 0x98, 0xb7, 0xa0, 0xee, 0xf0, 0x2d, + 0xbc, 0x9e, 0x33, 0x1c, 0x7c, 0xf4, 0xc0, 0x29, 0xf5, 0x5c, 0xa7, 0xab, + 0xeb, 0xd0, 0x62, 0xdb, +}; +static const struct drbg_kat_no_reseed kat1426_t = { + 0, kat1426_entropyin, kat1426_nonce, kat1426_persstr, + kat1426_addin0, kat1426_addin1, kat1426_retbits +}; +static const struct drbg_kat kat1426 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1426_t +}; + +static const unsigned char kat1427_entropyin[] = { + 0xa2, 0x86, 0x7d, 0xd3, 0xbc, 0xcf, 0x77, 0x59, 0x3d, 0x05, 0xcd, 0x04, + 0xd7, 0x87, 0x70, 0x03, 0xf6, 0x57, 0x1c, 0x6c, 0x93, 0x6e, 0x89, 0x48, + 0x6d, 0xb0, 0x8e, 0x81, 0xa4, 0x05, 0x99, 0x8c, 0x16, 0xae, 0xb4, 0x3c, + 0xd2, 0x28, 0x5c, 0x76, 0xf5, 0xd0, 0x5c, 0x6c, 0x00, 0xd8, 0x92, 0xda, +}; +static const unsigned char kat1427_nonce[] = {0}; +static const unsigned char kat1427_persstr[] = { + 0xce, 0xdb, 0x0c, 0x88, 0xce, 0x2d, 0xe1, 0x7c, 0x5a, 0xde, 0x8c, 0x4b, + 0x05, 0x22, 0x20, 0x0b, 0x24, 0x8e, 0x47, 0xde, 0xb2, 0x19, 0x0e, 0xda, + 0xe3, 0xff, 0xe1, 0xbf, 0xee, 0xb3, 0xd5, 0x68, 0x46, 0x68, 0xbb, 0xa1, + 0x6a, 0x32, 0xa1, 0xaa, 0xb9, 0xdc, 0x46, 0xa9, 0x88, 0xb5, 0x31, 0x68, +}; +static const unsigned char kat1427_addin0[] = { + 0x17, 0x5f, 0x33, 0x73, 0xee, 0xf6, 0xc4, 0xe6, 0xa3, 0xa0, 0xfe, 0xd7, + 0x2b, 0x67, 0xcd, 0xc5, 0x64, 0xc3, 0xda, 0x9c, 0xe5, 0x42, 0xcb, 0xff, + 0x68, 0x7a, 0xa8, 0x2a, 0xeb, 0x98, 0xd7, 0xd1, 0x17, 0x9d, 0xde, 0xd2, + 0xeb, 0x8e, 0x33, 0x93, 0x89, 0xa6, 0xc2, 0x4c, 0x15, 0xc7, 0x26, 0xeb, +}; +static const unsigned char kat1427_addin1[] = { + 0xfd, 0xdd, 0xca, 0x75, 0x5a, 0x66, 0xc7, 0xb6, 0x40, 0x5b, 0xf8, 0x8d, + 0xbf, 0xcc, 0x19, 0x9e, 0x98, 0xd1, 0xfe, 0xe9, 0x04, 0xb8, 0xb3, 0xad, + 0xb1, 0xf7, 0x52, 0xa2, 0x06, 0xaf, 0x3d, 0x82, 0xd1, 0xe2, 0x7d, 0x99, + 0xb6, 0xdf, 0x80, 0xce, 0x24, 0x32, 0x8d, 0x02, 0xa5, 0x75, 0x93, 0x2f, +}; +static const unsigned char kat1427_retbits[] = { + 0x75, 0x57, 0xd1, 0x03, 0x3e, 0x82, 0x69, 0xa4, 0x64, 0x86, 0xf9, 0x1e, + 0xd0, 0x62, 0x2d, 0x2f, 0xde, 0xf5, 0xba, 0xc0, 0x8b, 0x66, 0x3d, 0x13, + 0x67, 0x39, 0x26, 0x2a, 0xb1, 0x4b, 0x25, 0x4a, 0x86, 0x00, 0xfb, 0xfe, + 0xa2, 0x82, 0x9e, 0x86, 0x67, 0xaf, 0x3c, 0x79, 0x0a, 0x61, 0xb8, 0xae, + 0x26, 0x3d, 0x6e, 0xd0, 0x24, 0x8c, 0xe1, 0xdd, 0x1b, 0x33, 0x76, 0x2d, + 0xde, 0x51, 0x9d, 0xc8, +}; +static const struct drbg_kat_no_reseed kat1427_t = { + 1, kat1427_entropyin, kat1427_nonce, kat1427_persstr, + kat1427_addin0, kat1427_addin1, kat1427_retbits +}; +static const struct drbg_kat kat1427 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1427_t +}; + +static const unsigned char kat1428_entropyin[] = { + 0xe6, 0xa0, 0xc6, 0xb9, 0xc5, 0x46, 0xf7, 0xf7, 0xbd, 0x5c, 0x7e, 0x5d, + 0xeb, 0x3e, 0x86, 0xf6, 0xd7, 0x27, 0x8b, 0x79, 0x99, 0x93, 0x0d, 0x58, + 0x54, 0xf9, 0xab, 0xa5, 0x56, 0xad, 0xd7, 0x5d, 0xc2, 0xa0, 0xc8, 0x01, + 0xe1, 0x4f, 0xf2, 0xbc, 0xe5, 0xc4, 0x26, 0x35, 0x43, 0xb6, 0x42, 0x0d, +}; +static const unsigned char kat1428_nonce[] = {0}; +static const unsigned char kat1428_persstr[] = { + 0x33, 0xb7, 0xe9, 0x00, 0x5d, 0x32, 0x83, 0x5d, 0x73, 0x3d, 0xc7, 0x66, + 0x68, 0x31, 0xc3, 0x72, 0x12, 0x74, 0x48, 0x2b, 0x4d, 0x3a, 0xc4, 0x38, + 0xd0, 0xd7, 0xca, 0x8e, 0x87, 0x46, 0x19, 0x9e, 0x11, 0x2f, 0xd9, 0xd2, + 0x3e, 0xa1, 0xa7, 0x4a, 0x20, 0x1e, 0x8b, 0x0d, 0xe1, 0xc3, 0x82, 0xd4, +}; +static const unsigned char kat1428_addin0[] = { + 0x4d, 0xe2, 0x9f, 0xc6, 0x08, 0x3b, 0xa3, 0x00, 0xd7, 0xd5, 0x3e, 0x32, + 0xfa, 0xae, 0xd8, 0xae, 0x82, 0xea, 0x42, 0x1f, 0x88, 0x6f, 0x3d, 0xaf, + 0x54, 0xa3, 0x32, 0xdf, 0x5e, 0x51, 0xf9, 0x65, 0x87, 0xe1, 0x4b, 0xff, + 0x81, 0x93, 0x0f, 0x20, 0xd9, 0x5d, 0xde, 0x89, 0x94, 0xe2, 0x22, 0x39, +}; +static const unsigned char kat1428_addin1[] = { + 0xa2, 0x53, 0x9b, 0x0f, 0x07, 0x50, 0xa5, 0x0e, 0xf4, 0x36, 0x07, 0x84, + 0x6f, 0x1a, 0x2c, 0x1f, 0x88, 0x8b, 0x87, 0xdc, 0xec, 0x07, 0x22, 0x43, + 0xce, 0x3d, 0x74, 0xe1, 0xac, 0x95, 0x4c, 0x6a, 0x12, 0xcf, 0xe7, 0x43, + 0x8e, 0x4f, 0x39, 0x28, 0x84, 0xb6, 0x86, 0x3d, 0x68, 0xc5, 0x91, 0x76, +}; +static const unsigned char kat1428_retbits[] = { + 0x6f, 0xde, 0x60, 0x4d, 0x9e, 0x8b, 0x86, 0x6c, 0x76, 0x36, 0xb4, 0xdc, + 0x40, 0x1f, 0x99, 0xf5, 0xf7, 0x42, 0x97, 0x64, 0x5d, 0xf0, 0xe6, 0x1d, + 0xf7, 0x31, 0x1b, 0xcf, 0xd7, 0x40, 0xe0, 0xfb, 0xec, 0xe8, 0xc6, 0x82, + 0x96, 0xaa, 0x26, 0xec, 0x53, 0x7c, 0x82, 0x85, 0x82, 0x23, 0x02, 0xfc, + 0xcb, 0xce, 0x05, 0xfc, 0x80, 0x81, 0x78, 0xa3, 0x9b, 0x2f, 0xf4, 0x8b, + 0xd6, 0xb0, 0x36, 0x41, +}; +static const struct drbg_kat_no_reseed kat1428_t = { + 2, kat1428_entropyin, kat1428_nonce, kat1428_persstr, + kat1428_addin0, kat1428_addin1, kat1428_retbits +}; +static const struct drbg_kat kat1428 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1428_t +}; + +static const unsigned char kat1429_entropyin[] = { + 0xb4, 0x16, 0xd3, 0x75, 0xcc, 0xb7, 0x91, 0xc1, 0x67, 0xd8, 0xd7, 0xf9, + 0xbb, 0x8f, 0xdb, 0xdc, 0xed, 0xc0, 0x01, 0xa1, 0x75, 0x51, 0xa3, 0x9f, + 0x2a, 0x4d, 0x0a, 0xad, 0xd1, 0x3b, 0x3d, 0xc8, 0xcb, 0x93, 0x77, 0x00, + 0x60, 0xd6, 0xcb, 0x3b, 0xf2, 0x34, 0x21, 0xff, 0x0e, 0x34, 0x5a, 0xf4, +}; +static const unsigned char kat1429_nonce[] = {0}; +static const unsigned char kat1429_persstr[] = { + 0x35, 0xb7, 0x7c, 0x86, 0x3c, 0xb8, 0x78, 0x58, 0xa8, 0xd1, 0x2a, 0x81, + 0xd6, 0x9e, 0x03, 0xbc, 0x20, 0x5b, 0xcd, 0x9f, 0x32, 0xdb, 0x58, 0xfb, + 0x7b, 0xa6, 0x53, 0xca, 0xfa, 0x12, 0x20, 0x68, 0x22, 0x5a, 0xed, 0xc0, + 0xba, 0x12, 0x51, 0x25, 0xaf, 0x81, 0xf0, 0x08, 0x46, 0x8a, 0x05, 0x22, +}; +static const unsigned char kat1429_addin0[] = { + 0x52, 0x0c, 0x5f, 0x1b, 0x3c, 0x73, 0x6b, 0x83, 0xe9, 0xd5, 0xfd, 0x78, + 0xce, 0xb4, 0xe4, 0x4b, 0xa1, 0xd0, 0x7a, 0xea, 0x39, 0x58, 0x63, 0x14, + 0xc3, 0xac, 0x7d, 0xd1, 0x18, 0x13, 0xc5, 0x79, 0x8e, 0x2c, 0xce, 0xa8, + 0xd3, 0xb4, 0xcf, 0x40, 0xea, 0xa2, 0x54, 0x66, 0x04, 0x4a, 0xb9, 0x04, +}; +static const unsigned char kat1429_addin1[] = { + 0x28, 0xe7, 0x31, 0x3d, 0x63, 0xb9, 0xd4, 0x66, 0x69, 0x75, 0xd5, 0xd3, + 0xc0, 0xe7, 0x10, 0xd2, 0x47, 0xe4, 0x30, 0x2d, 0x7d, 0x01, 0x76, 0x29, + 0x37, 0xa0, 0x10, 0x98, 0x9a, 0xd3, 0xe4, 0x39, 0x44, 0x21, 0xa4, 0xa3, + 0x0c, 0xa3, 0x42, 0x31, 0xaf, 0x95, 0x65, 0x38, 0xd3, 0x02, 0x57, 0x2b, +}; +static const unsigned char kat1429_retbits[] = { + 0x6d, 0x8d, 0xae, 0x54, 0x89, 0x03, 0xcf, 0x1f, 0x8d, 0xc2, 0x05, 0x57, + 0x25, 0xc9, 0x61, 0x51, 0x61, 0xef, 0x7e, 0x84, 0x6f, 0xd8, 0x78, 0x24, + 0xf7, 0xff, 0xc1, 0x72, 0xc2, 0xaa, 0x20, 0xba, 0x8c, 0xfe, 0x40, 0x86, + 0xd4, 0xd7, 0x7d, 0x4c, 0x6b, 0x92, 0x51, 0x6b, 0x59, 0x76, 0x91, 0x62, + 0x72, 0x17, 0x62, 0x65, 0xc7, 0x75, 0xce, 0xb0, 0xfc, 0x14, 0x2e, 0x6e, + 0x84, 0xdb, 0xe7, 0x60, +}; +static const struct drbg_kat_no_reseed kat1429_t = { + 3, kat1429_entropyin, kat1429_nonce, kat1429_persstr, + kat1429_addin0, kat1429_addin1, kat1429_retbits +}; +static const struct drbg_kat kat1429 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1429_t +}; + +static const unsigned char kat1430_entropyin[] = { + 0x1e, 0xb8, 0x9e, 0x39, 0x3b, 0x55, 0x75, 0xe9, 0x6e, 0x14, 0xb9, 0x0c, + 0x77, 0x34, 0x97, 0xbd, 0x57, 0x61, 0xb4, 0x89, 0x83, 0xb9, 0xf2, 0x5e, + 0x77, 0x87, 0x0c, 0x04, 0xf8, 0xe5, 0xaf, 0x2e, 0x3b, 0x3d, 0xc3, 0x06, + 0x06, 0x73, 0x44, 0xb9, 0x8e, 0xee, 0x51, 0x0b, 0xa4, 0x25, 0x16, 0x41, +}; +static const unsigned char kat1430_nonce[] = {0}; +static const unsigned char kat1430_persstr[] = { + 0x3e, 0x54, 0x1e, 0xcc, 0x77, 0x50, 0xd0, 0x22, 0xe5, 0x47, 0xa3, 0x8b, + 0x22, 0xbd, 0x35, 0xd3, 0xd0, 0x08, 0x82, 0xd9, 0x7c, 0xc2, 0x88, 0x6f, + 0x51, 0x62, 0xc5, 0xee, 0x49, 0xa9, 0x5f, 0x93, 0x47, 0xf8, 0x05, 0xc6, + 0xb5, 0xb8, 0x1d, 0xb4, 0xc0, 0xaf, 0x0b, 0x19, 0xf0, 0x33, 0xfd, 0x5e, +}; +static const unsigned char kat1430_addin0[] = { + 0xd6, 0xf9, 0xda, 0x8e, 0x38, 0xe9, 0x62, 0x2f, 0x3e, 0x4d, 0x9c, 0x73, + 0xe5, 0x06, 0x85, 0x81, 0x1c, 0xb7, 0xe8, 0x7f, 0x9d, 0x71, 0xe7, 0xb9, + 0x59, 0xe3, 0x98, 0x6c, 0xa0, 0x2c, 0x74, 0x88, 0x7f, 0xf0, 0xdc, 0xfd, + 0x49, 0x6d, 0xfe, 0x3a, 0xab, 0x63, 0x63, 0x77, 0xe3, 0x39, 0x09, 0x10, +}; +static const unsigned char kat1430_addin1[] = { + 0xb1, 0x93, 0x2a, 0xc6, 0xc0, 0xbb, 0x26, 0xe3, 0x6e, 0x2a, 0xef, 0x89, + 0x8d, 0xb3, 0xf6, 0x3a, 0xd7, 0x2a, 0x4a, 0xb8, 0x2f, 0x43, 0x3b, 0x69, + 0x21, 0xf6, 0xec, 0x0c, 0xbb, 0x1b, 0x20, 0xba, 0xeb, 0xd6, 0xeb, 0x24, + 0x69, 0xba, 0x48, 0x7d, 0xea, 0xec, 0x51, 0x08, 0x2d, 0x06, 0xb1, 0x69, +}; +static const unsigned char kat1430_retbits[] = { + 0x47, 0x0e, 0x8f, 0x1f, 0x67, 0xc3, 0x12, 0xdd, 0x8e, 0x62, 0xf1, 0x86, + 0x51, 0x1f, 0x9d, 0x78, 0xf3, 0x8c, 0x6f, 0xa6, 0x2a, 0xae, 0x07, 0x4b, + 0x1e, 0xe1, 0x8b, 0x43, 0x84, 0x30, 0xf0, 0x1c, 0xab, 0x31, 0x38, 0x34, + 0xe4, 0xe4, 0xc1, 0xc8, 0xd5, 0xf5, 0xd0, 0x45, 0x03, 0xa2, 0x7c, 0xbe, + 0x1b, 0x86, 0x20, 0xd6, 0x00, 0x42, 0x49, 0x2f, 0x90, 0xd5, 0x98, 0xb1, + 0x22, 0x70, 0xef, 0x0f, +}; +static const struct drbg_kat_no_reseed kat1430_t = { + 4, kat1430_entropyin, kat1430_nonce, kat1430_persstr, + kat1430_addin0, kat1430_addin1, kat1430_retbits +}; +static const struct drbg_kat kat1430 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1430_t +}; + +static const unsigned char kat1431_entropyin[] = { + 0xd8, 0x3a, 0x62, 0x4c, 0x5d, 0x62, 0x8d, 0xe8, 0x3e, 0x80, 0xe6, 0x63, + 0x10, 0x0e, 0x2c, 0x9e, 0x46, 0x2a, 0x87, 0x5c, 0xa3, 0x40, 0xa3, 0xcc, + 0x5f, 0x5f, 0x9c, 0xa4, 0x01, 0x78, 0x07, 0x78, 0x28, 0x8f, 0x67, 0x48, + 0x82, 0xa6, 0x8e, 0xbf, 0x40, 0xa2, 0x93, 0x08, 0x6f, 0xc6, 0xa4, 0x3d, +}; +static const unsigned char kat1431_nonce[] = {0}; +static const unsigned char kat1431_persstr[] = { + 0xba, 0x87, 0x04, 0xa5, 0x4e, 0x24, 0x76, 0x79, 0xa5, 0xbd, 0xb7, 0x0d, + 0x3b, 0x29, 0xe5, 0x8f, 0x44, 0x20, 0x77, 0x35, 0x52, 0xcf, 0xc9, 0x9e, + 0x04, 0x1a, 0x86, 0x2d, 0x12, 0xea, 0x92, 0x9a, 0xd4, 0x4c, 0x16, 0x09, + 0xcf, 0xa2, 0x48, 0x74, 0x94, 0xd5, 0x5a, 0xf2, 0x20, 0xe9, 0x5a, 0x9a, +}; +static const unsigned char kat1431_addin0[] = { + 0xfe, 0x69, 0x35, 0x5e, 0x0e, 0x4d, 0x9b, 0xd8, 0x5a, 0x93, 0xfb, 0xfc, + 0x6f, 0xce, 0x30, 0x55, 0x1e, 0x31, 0xff, 0xa8, 0xd4, 0x66, 0x81, 0x26, + 0xf3, 0x75, 0x47, 0xec, 0xca, 0xb4, 0x06, 0x4a, 0x02, 0xa5, 0xdc, 0xc8, + 0xf5, 0xbb, 0x07, 0xcd, 0x4d, 0x64, 0x6c, 0xcc, 0xd8, 0x34, 0x23, 0x5e, +}; +static const unsigned char kat1431_addin1[] = { + 0xa6, 0xde, 0xd7, 0x59, 0x23, 0x89, 0x68, 0x48, 0x43, 0xd5, 0xcf, 0xff, + 0x28, 0xd2, 0xbd, 0xe9, 0x13, 0xef, 0x68, 0x62, 0x12, 0xe0, 0xf5, 0x4d, + 0x7b, 0x7d, 0x90, 0x73, 0x63, 0x96, 0x7a, 0x55, 0x52, 0x3c, 0x3b, 0x15, + 0x27, 0xb1, 0x15, 0x7c, 0xe9, 0x12, 0xb6, 0x63, 0x12, 0xeb, 0x46, 0x97, +}; +static const unsigned char kat1431_retbits[] = { + 0x0b, 0xca, 0x25, 0x98, 0xd8, 0xb0, 0xce, 0x06, 0xc3, 0x6f, 0xee, 0xf8, + 0xf9, 0xa5, 0x68, 0xbe, 0x89, 0xeb, 0xad, 0x5e, 0x1d, 0xf2, 0x0e, 0x7a, + 0x02, 0x34, 0x09, 0xc8, 0xa0, 0x29, 0xc4, 0x2b, 0x6e, 0x15, 0xb0, 0x24, + 0x47, 0x24, 0x45, 0xc3, 0xeb, 0x7a, 0x0c, 0x8c, 0x50, 0xf7, 0x22, 0x9b, + 0x9d, 0x76, 0xb8, 0x60, 0x9b, 0xf4, 0xa3, 0x56, 0x59, 0x47, 0x5c, 0xb3, + 0x00, 0x80, 0xb4, 0x59, +}; +static const struct drbg_kat_no_reseed kat1431_t = { + 5, kat1431_entropyin, kat1431_nonce, kat1431_persstr, + kat1431_addin0, kat1431_addin1, kat1431_retbits +}; +static const struct drbg_kat kat1431 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1431_t +}; + +static const unsigned char kat1432_entropyin[] = { + 0x94, 0x57, 0xd6, 0x03, 0x0d, 0xe6, 0xae, 0x6d, 0x3a, 0xc1, 0xf6, 0x3b, + 0xb7, 0x09, 0x4c, 0x4f, 0xfc, 0xb3, 0x3d, 0x71, 0x78, 0xa4, 0xba, 0xbf, + 0xf5, 0x7d, 0x54, 0x9a, 0x58, 0xb6, 0xfd, 0x4f, 0x8b, 0x6b, 0x1c, 0xac, + 0x51, 0x85, 0x9f, 0x17, 0x1f, 0xd6, 0x2b, 0x76, 0xe6, 0x3e, 0xbc, 0xf4, +}; +static const unsigned char kat1432_nonce[] = {0}; +static const unsigned char kat1432_persstr[] = { + 0x62, 0x44, 0xe0, 0x33, 0xb0, 0x3f, 0x7b, 0xfa, 0xdc, 0x50, 0xf2, 0x93, + 0x73, 0x03, 0x3d, 0x87, 0x3e, 0x55, 0xf2, 0xbb, 0x06, 0x92, 0x17, 0xde, + 0x4d, 0x51, 0xf5, 0x08, 0x98, 0x15, 0xf1, 0x4f, 0x1e, 0x00, 0x9f, 0xec, + 0x55, 0xb7, 0x2e, 0x06, 0xf2, 0xb2, 0xff, 0xa8, 0x7e, 0x10, 0x17, 0x4f, +}; +static const unsigned char kat1432_addin0[] = { + 0x92, 0xf7, 0xbd, 0x2b, 0xe6, 0x76, 0xcf, 0x3e, 0x3e, 0x3a, 0x7f, 0x9f, + 0xe2, 0x07, 0xa3, 0x1b, 0xa6, 0xad, 0x98, 0x3d, 0x06, 0x5d, 0x68, 0xa8, + 0xef, 0x5e, 0x79, 0x98, 0x17, 0x64, 0x9d, 0x8d, 0x47, 0x5a, 0x2f, 0xad, + 0x2b, 0xf9, 0x0d, 0xc2, 0x54, 0x21, 0x61, 0xa8, 0x67, 0xa7, 0x1a, 0xe0, +}; +static const unsigned char kat1432_addin1[] = { + 0x0a, 0x6e, 0x31, 0x6a, 0x18, 0xc5, 0x6d, 0x0f, 0xca, 0x17, 0x29, 0x8b, + 0xc5, 0xcd, 0xc7, 0xba, 0xb3, 0x46, 0x4a, 0x08, 0x50, 0xb1, 0x41, 0x98, + 0xa7, 0x1c, 0x44, 0x91, 0xab, 0x36, 0xf5, 0x07, 0xf9, 0x4c, 0xda, 0x0f, + 0x07, 0x78, 0xf8, 0x6a, 0x87, 0xb7, 0x19, 0xc9, 0x60, 0xf9, 0xb1, 0x0a, +}; +static const unsigned char kat1432_retbits[] = { + 0x49, 0x1f, 0x2f, 0x91, 0x81, 0x50, 0x51, 0xc7, 0xdf, 0xc6, 0xf8, 0xc3, + 0x6d, 0x3c, 0x9a, 0x44, 0x3d, 0x9e, 0x54, 0x89, 0x79, 0x88, 0x79, 0xb0, + 0x65, 0x85, 0x93, 0x90, 0x11, 0x0e, 0x65, 0xc0, 0x5b, 0xe1, 0x2b, 0xd9, + 0x5e, 0x45, 0xb2, 0x10, 0x30, 0x7d, 0x51, 0x4d, 0xa2, 0x1d, 0x66, 0x68, + 0xac, 0x82, 0x96, 0x80, 0x88, 0x8c, 0x2f, 0xac, 0x12, 0x77, 0x61, 0xb7, + 0xfb, 0x57, 0x96, 0xad, +}; +static const struct drbg_kat_no_reseed kat1432_t = { + 6, kat1432_entropyin, kat1432_nonce, kat1432_persstr, + kat1432_addin0, kat1432_addin1, kat1432_retbits +}; +static const struct drbg_kat kat1432 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1432_t +}; + +static const unsigned char kat1433_entropyin[] = { + 0x6b, 0x8a, 0x85, 0xd0, 0xa9, 0xe6, 0xd9, 0x0c, 0x61, 0xfb, 0x20, 0xbf, + 0xd0, 0xb2, 0x8a, 0xbc, 0xa2, 0xe5, 0x2d, 0x34, 0x96, 0x67, 0x57, 0xeb, + 0xbc, 0xb8, 0x39, 0xee, 0x27, 0x0d, 0xc2, 0xb0, 0x99, 0x94, 0x16, 0x6b, + 0x59, 0x9a, 0xa4, 0x2b, 0x09, 0xa1, 0x9b, 0x71, 0x72, 0x14, 0x62, 0xa0, +}; +static const unsigned char kat1433_nonce[] = {0}; +static const unsigned char kat1433_persstr[] = { + 0x40, 0x7c, 0xd2, 0x57, 0xf6, 0x68, 0x4a, 0x87, 0x57, 0x1a, 0x31, 0xb9, + 0x89, 0x4c, 0x7c, 0xe5, 0x4f, 0xe0, 0x10, 0x51, 0x61, 0xe5, 0x2b, 0x02, + 0x32, 0xd8, 0xb2, 0x3a, 0x4b, 0xeb, 0x74, 0xa8, 0x1d, 0xac, 0xe4, 0xbe, + 0xb4, 0x36, 0x2b, 0xf4, 0x96, 0xe7, 0xa6, 0xe6, 0x77, 0x6b, 0x0f, 0x8e, +}; +static const unsigned char kat1433_addin0[] = { + 0x83, 0x52, 0xbc, 0xda, 0x2c, 0xea, 0xb1, 0xdc, 0x83, 0x6e, 0xb4, 0x51, + 0x87, 0x1f, 0xcd, 0xb1, 0x4c, 0x82, 0xe3, 0x25, 0xa7, 0x34, 0xac, 0x54, + 0xc9, 0x74, 0x1a, 0xa7, 0x89, 0x48, 0xf6, 0x31, 0xff, 0xe7, 0x58, 0x05, + 0xb8, 0xa4, 0xda, 0x6c, 0xc9, 0xae, 0xca, 0x8d, 0x27, 0xd1, 0x36, 0x07, +}; +static const unsigned char kat1433_addin1[] = { + 0xa9, 0xdc, 0x73, 0xf7, 0x29, 0x91, 0x81, 0x10, 0x45, 0xaf, 0x83, 0x47, + 0x07, 0x8f, 0x27, 0xcc, 0xe0, 0x29, 0x7a, 0x93, 0x43, 0x23, 0xde, 0xe6, + 0xcd, 0x9d, 0x06, 0xb0, 0x02, 0x51, 0x2a, 0xef, 0x9a, 0xc0, 0x62, 0xe8, + 0x77, 0x0e, 0x7a, 0xa7, 0x43, 0x6a, 0x55, 0xfc, 0xee, 0x00, 0xb9, 0x77, +}; +static const unsigned char kat1433_retbits[] = { + 0x15, 0x10, 0xe2, 0x4c, 0xd1, 0x69, 0x48, 0x70, 0x4e, 0x3e, 0x32, 0x50, + 0x0f, 0x3e, 0x0b, 0x70, 0x6d, 0x16, 0xa6, 0x8f, 0xb5, 0x2f, 0x33, 0x29, + 0x94, 0x28, 0x06, 0x88, 0x63, 0x60, 0xa0, 0xb3, 0x7f, 0x7a, 0x20, 0xea, + 0x46, 0x71, 0xcd, 0xe1, 0x3f, 0x6f, 0xc3, 0xb7, 0x53, 0x0d, 0x2e, 0x6f, + 0x8d, 0x06, 0x52, 0xc5, 0xed, 0x8e, 0x5a, 0x4d, 0xd5, 0x24, 0x49, 0x4a, + 0x64, 0x97, 0x1a, 0x73, +}; +static const struct drbg_kat_no_reseed kat1433_t = { + 7, kat1433_entropyin, kat1433_nonce, kat1433_persstr, + kat1433_addin0, kat1433_addin1, kat1433_retbits +}; +static const struct drbg_kat kat1433 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1433_t +}; + +static const unsigned char kat1434_entropyin[] = { + 0x69, 0xf5, 0xdb, 0xe0, 0x59, 0x71, 0xdd, 0xa9, 0x23, 0x67, 0x92, 0x54, + 0x9c, 0x24, 0x8d, 0x6b, 0xf6, 0xe3, 0x15, 0xd4, 0x04, 0x65, 0xae, 0xe2, + 0x64, 0xba, 0x8e, 0xdb, 0x79, 0x88, 0x75, 0x10, 0x1f, 0xf3, 0x2c, 0xe7, + 0x3d, 0xae, 0x0e, 0x47, 0xcd, 0x50, 0x6e, 0x07, 0x8b, 0x8e, 0x99, 0xa0, +}; +static const unsigned char kat1434_nonce[] = {0}; +static const unsigned char kat1434_persstr[] = { + 0xf3, 0x42, 0x74, 0x75, 0x83, 0x2b, 0xa4, 0x71, 0xe2, 0x60, 0xe2, 0xff, + 0xc9, 0x67, 0xcb, 0xee, 0x71, 0x4a, 0x54, 0xfc, 0x20, 0x84, 0x12, 0x47, + 0x4f, 0xf2, 0x03, 0xeb, 0x92, 0xed, 0xad, 0x9a, 0x5e, 0x61, 0x1a, 0x99, + 0xe7, 0x15, 0x3b, 0xba, 0x52, 0x5f, 0x8a, 0x17, 0x33, 0x29, 0xaa, 0xde, +}; +static const unsigned char kat1434_addin0[] = { + 0x9d, 0x96, 0x01, 0xc9, 0x92, 0x75, 0xcc, 0x69, 0x80, 0x84, 0x3e, 0x20, + 0xbd, 0x42, 0x04, 0xb2, 0x3e, 0xb5, 0xca, 0x73, 0x24, 0xf4, 0xbf, 0x90, + 0x8f, 0x5b, 0xd0, 0xeb, 0x4a, 0x37, 0xc2, 0x98, 0x2f, 0x7f, 0xbd, 0xbb, + 0x7c, 0x85, 0x91, 0xd5, 0x41, 0x47, 0x07, 0x89, 0x5e, 0xf8, 0x65, 0x2b, +}; +static const unsigned char kat1434_addin1[] = { + 0x55, 0x3e, 0x5d, 0x18, 0x8e, 0xc4, 0x14, 0x36, 0xd0, 0xb3, 0x84, 0xcd, + 0x77, 0x73, 0xc9, 0x04, 0x52, 0xa1, 0x86, 0x55, 0x80, 0xa5, 0x2d, 0xf9, + 0x0f, 0x6a, 0xe1, 0x1b, 0x1a, 0xa1, 0x3a, 0xd5, 0x85, 0x1c, 0x6b, 0xc6, + 0x86, 0x7d, 0xf5, 0xa8, 0xd0, 0x32, 0x13, 0xe3, 0xfd, 0x56, 0xad, 0xe9, +}; +static const unsigned char kat1434_retbits[] = { + 0xc6, 0x77, 0x78, 0x0e, 0x0c, 0xc5, 0xea, 0xe9, 0xc8, 0x12, 0xc1, 0x92, + 0xb2, 0x71, 0x63, 0x5f, 0x74, 0xbf, 0xd2, 0x52, 0xe7, 0x82, 0xe8, 0xba, + 0x38, 0x72, 0x7c, 0x4a, 0xfc, 0x7b, 0x47, 0xa6, 0xd9, 0xd5, 0x52, 0x04, + 0x59, 0xe1, 0x34, 0x01, 0x3e, 0xc3, 0x14, 0x40, 0x10, 0xb5, 0xd3, 0xd4, + 0xe4, 0x74, 0x75, 0x26, 0xf0, 0x3c, 0x61, 0x4f, 0x18, 0x63, 0xf2, 0x98, + 0x3e, 0x18, 0x68, 0x5b, +}; +static const struct drbg_kat_no_reseed kat1434_t = { + 8, kat1434_entropyin, kat1434_nonce, kat1434_persstr, + kat1434_addin0, kat1434_addin1, kat1434_retbits +}; +static const struct drbg_kat kat1434 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1434_t +}; + +static const unsigned char kat1435_entropyin[] = { + 0x2d, 0x52, 0xbd, 0xe0, 0xd6, 0x97, 0x26, 0x20, 0xc4, 0x21, 0x9f, 0x05, + 0xfc, 0x95, 0xd0, 0xbc, 0x25, 0x30, 0x02, 0x44, 0x45, 0xd5, 0xc9, 0x10, + 0x7a, 0x06, 0x84, 0xdb, 0x39, 0x04, 0xc5, 0x97, 0xe0, 0xd3, 0x14, 0x12, + 0xd9, 0xb8, 0x85, 0x14, 0xc9, 0xac, 0xa7, 0x45, 0xa3, 0x2b, 0x5f, 0x65, +}; +static const unsigned char kat1435_nonce[] = {0}; +static const unsigned char kat1435_persstr[] = { + 0x45, 0x36, 0x0c, 0x8e, 0xc1, 0xd2, 0x27, 0xf3, 0xb2, 0x75, 0x1f, 0x16, + 0x10, 0xd1, 0x97, 0x7c, 0x14, 0x6f, 0x54, 0xc7, 0x42, 0x2c, 0xa7, 0xa6, + 0x74, 0x1a, 0x06, 0x4a, 0x5d, 0x12, 0xd7, 0xe1, 0x7e, 0x85, 0x03, 0x3a, + 0xba, 0x20, 0x19, 0xd9, 0xee, 0x7a, 0x5d, 0xae, 0x5d, 0x11, 0x75, 0x37, +}; +static const unsigned char kat1435_addin0[] = { + 0xa7, 0xd5, 0xa7, 0xe8, 0xb1, 0xc5, 0x6a, 0x91, 0x69, 0x22, 0x69, 0xf9, + 0xe9, 0x57, 0xdd, 0xfd, 0x2e, 0x8a, 0xfa, 0xe9, 0xfb, 0x88, 0x4f, 0x2f, + 0x2b, 0xba, 0x61, 0x6c, 0x43, 0xb0, 0xe8, 0x01, 0x28, 0xaf, 0x25, 0xe7, + 0xcc, 0x46, 0x1a, 0x94, 0x11, 0x68, 0xe5, 0x06, 0xcf, 0xb2, 0xcd, 0x80, +}; +static const unsigned char kat1435_addin1[] = { + 0x1f, 0xf6, 0x12, 0x6a, 0x73, 0x8e, 0x7b, 0xc1, 0x00, 0x04, 0x2c, 0x65, + 0xb1, 0xaa, 0x0f, 0xa5, 0xf4, 0xd7, 0x9b, 0x58, 0x79, 0x4c, 0x3a, 0x08, + 0x70, 0xd7, 0xdf, 0x1e, 0x15, 0x32, 0x9a, 0x35, 0xd5, 0x6a, 0x17, 0xff, + 0xf6, 0x42, 0x99, 0x21, 0xd0, 0xfd, 0x9d, 0xa9, 0x49, 0xae, 0x52, 0xb8, +}; +static const unsigned char kat1435_retbits[] = { + 0xe9, 0x9c, 0xcd, 0x90, 0xcc, 0x3c, 0x61, 0xa9, 0xbf, 0x92, 0x50, 0x97, + 0x68, 0x23, 0x6f, 0x2a, 0xe1, 0xba, 0x5c, 0x6b, 0xd7, 0x9e, 0xd6, 0xde, + 0x13, 0xb5, 0x80, 0x5b, 0x04, 0x85, 0x79, 0xf8, 0x6f, 0xed, 0x1b, 0x38, + 0x32, 0x27, 0xef, 0x27, 0xe2, 0x74, 0x54, 0xae, 0x1c, 0x63, 0x42, 0x11, + 0x44, 0x71, 0x1c, 0x3c, 0x30, 0x5d, 0x61, 0xd0, 0x78, 0xa4, 0x72, 0x49, + 0xd6, 0x8a, 0x45, 0x87, +}; +static const struct drbg_kat_no_reseed kat1435_t = { + 9, kat1435_entropyin, kat1435_nonce, kat1435_persstr, + kat1435_addin0, kat1435_addin1, kat1435_retbits +}; +static const struct drbg_kat kat1435 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1435_t +}; + +static const unsigned char kat1436_entropyin[] = { + 0xdd, 0x3c, 0xdd, 0x9b, 0x28, 0xf7, 0x5c, 0xcb, 0x5b, 0x77, 0xe1, 0x9a, + 0xa8, 0x08, 0xc8, 0xf3, 0x17, 0x05, 0x8f, 0x26, 0xce, 0x26, 0x2f, 0xfe, + 0xf9, 0x9a, 0xd0, 0x99, 0x3f, 0x7d, 0x9e, 0x3b, 0x71, 0x0f, 0x02, 0x3e, + 0x64, 0x24, 0xa3, 0x93, 0xc7, 0xf1, 0x78, 0x75, 0x15, 0x1a, 0x8c, 0xe2, +}; +static const unsigned char kat1436_nonce[] = {0}; +static const unsigned char kat1436_persstr[] = { + 0xe9, 0x52, 0xf4, 0xed, 0x56, 0x1d, 0xbe, 0x37, 0xba, 0x3c, 0xf5, 0x29, + 0x18, 0xa7, 0xa4, 0x62, 0x05, 0xbb, 0x22, 0xc5, 0xd7, 0x54, 0xa4, 0xd6, + 0x05, 0x9c, 0xee, 0x71, 0xbf, 0x5b, 0x1c, 0x55, 0xa0, 0x41, 0x71, 0x5f, + 0x99, 0x32, 0xca, 0x06, 0x89, 0xe8, 0x4f, 0x43, 0x32, 0x25, 0xb2, 0xb6, +}; +static const unsigned char kat1436_addin0[] = { + 0xad, 0x07, 0x82, 0xde, 0x0d, 0xda, 0xd9, 0x98, 0xc5, 0x35, 0x96, 0x27, + 0xc9, 0xfd, 0x4e, 0x8b, 0x41, 0xb9, 0xae, 0xbf, 0x01, 0xb7, 0x5e, 0x36, + 0x00, 0x03, 0xe3, 0x8f, 0x23, 0x9b, 0x43, 0x14, 0x12, 0x67, 0x22, 0x69, + 0xd9, 0x1e, 0x51, 0x62, 0x39, 0xfc, 0x5b, 0xb9, 0x1f, 0xbc, 0x01, 0x36, +}; +static const unsigned char kat1436_addin1[] = { + 0xe0, 0xb0, 0x04, 0x84, 0x9d, 0x31, 0xe6, 0x9b, 0xe8, 0x8f, 0xc4, 0x8a, + 0xb8, 0x81, 0x4b, 0x43, 0x8b, 0x69, 0x5b, 0x10, 0xad, 0x20, 0xf5, 0x0f, + 0x8c, 0xbb, 0xce, 0x03, 0x4f, 0x29, 0xbb, 0x74, 0x49, 0x94, 0x8b, 0xb2, + 0xd9, 0x9f, 0x5c, 0x86, 0xbb, 0xbf, 0x0b, 0x17, 0x37, 0x6d, 0xc1, 0x89, +}; +static const unsigned char kat1436_retbits[] = { + 0xbf, 0x7d, 0xa7, 0xd1, 0x07, 0xc1, 0x29, 0xbf, 0x20, 0x7f, 0xf1, 0xa1, + 0x13, 0x67, 0xb3, 0xc1, 0x66, 0x1f, 0x26, 0x04, 0x44, 0x0e, 0xde, 0x09, + 0xd3, 0xa9, 0x20, 0x85, 0x4a, 0xd2, 0x7b, 0x79, 0x05, 0x01, 0xc9, 0x06, + 0x60, 0x67, 0x92, 0xc5, 0x96, 0x86, 0x6f, 0xd8, 0x7e, 0x68, 0x8c, 0xc6, + 0xb9, 0xee, 0xea, 0x45, 0x5d, 0x9e, 0xdc, 0x13, 0x9f, 0xdb, 0x3f, 0x76, + 0xb7, 0x6e, 0xfe, 0x57, +}; +static const struct drbg_kat_no_reseed kat1436_t = { + 10, kat1436_entropyin, kat1436_nonce, kat1436_persstr, + kat1436_addin0, kat1436_addin1, kat1436_retbits +}; +static const struct drbg_kat kat1436 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1436_t +}; + +static const unsigned char kat1437_entropyin[] = { + 0xd7, 0x0c, 0xc8, 0x7c, 0xcf, 0x0e, 0x3e, 0x51, 0x1a, 0x6c, 0x07, 0xbb, + 0x42, 0x47, 0xac, 0x22, 0x3b, 0xd8, 0xe6, 0x9a, 0x83, 0xa3, 0x7a, 0xce, + 0xa1, 0x7b, 0xbc, 0x05, 0x72, 0x1d, 0xcf, 0x77, 0xbc, 0xbf, 0xe3, 0x9f, + 0x93, 0x72, 0x02, 0x1f, 0x99, 0xe1, 0xc7, 0x60, 0x15, 0xd1, 0x30, 0xd0, +}; +static const unsigned char kat1437_nonce[] = {0}; +static const unsigned char kat1437_persstr[] = { + 0xe1, 0x8c, 0x99, 0x6f, 0xad, 0xf1, 0x39, 0x5d, 0xd0, 0x66, 0x3b, 0x1b, + 0xbf, 0x52, 0x59, 0xf6, 0xd5, 0x61, 0x10, 0x11, 0x5f, 0x8e, 0x06, 0x52, + 0x05, 0xed, 0xe5, 0xd4, 0x1d, 0x76, 0x87, 0x5f, 0xa1, 0x78, 0x2d, 0xbe, + 0xdc, 0xa7, 0x05, 0x45, 0x0c, 0xb9, 0xc2, 0x1d, 0xba, 0x9e, 0xf9, 0x83, +}; +static const unsigned char kat1437_addin0[] = { + 0x4f, 0xe4, 0x66, 0x8d, 0xfa, 0xd3, 0xdf, 0x81, 0x75, 0xc8, 0xc3, 0x9f, + 0xed, 0xe0, 0xbe, 0x23, 0xcf, 0x0b, 0xda, 0xff, 0xc8, 0xf7, 0xf1, 0x58, + 0xfe, 0xb9, 0x73, 0x66, 0xe5, 0x9e, 0x84, 0xff, 0x25, 0x14, 0x4c, 0x6f, + 0xf9, 0x91, 0x11, 0xa2, 0x35, 0x5c, 0xfb, 0xc1, 0xf5, 0xc1, 0x67, 0xd6, +}; +static const unsigned char kat1437_addin1[] = { + 0x7a, 0x56, 0xc2, 0x62, 0x06, 0xf5, 0xeb, 0xc3, 0xb7, 0x0c, 0x49, 0x57, + 0x4a, 0xc8, 0x9b, 0x07, 0x10, 0x46, 0x74, 0x09, 0x7a, 0x6a, 0x11, 0x94, + 0x6f, 0x1b, 0x92, 0x36, 0x76, 0xc5, 0x96, 0xeb, 0x09, 0xfd, 0x5f, 0x98, + 0x24, 0xef, 0xba, 0x19, 0x48, 0x35, 0x9c, 0xdf, 0x24, 0x28, 0xcd, 0x9f, +}; +static const unsigned char kat1437_retbits[] = { + 0x84, 0x72, 0xe6, 0x71, 0xdb, 0xcc, 0x41, 0xa4, 0xef, 0x46, 0xe1, 0x9d, + 0x46, 0x42, 0x86, 0x46, 0xe5, 0xf5, 0x40, 0x2d, 0x46, 0x02, 0x0d, 0xbd, + 0xd0, 0xd0, 0x78, 0x3a, 0x70, 0xda, 0x54, 0xb3, 0xa5, 0xa8, 0xfa, 0x8a, + 0xb5, 0xc1, 0xc9, 0x0f, 0xea, 0x5e, 0x2c, 0x6d, 0xb6, 0x89, 0x67, 0x90, + 0x1c, 0xf6, 0xcf, 0x5f, 0xc6, 0xf5, 0x4b, 0xb6, 0x71, 0x7c, 0xb7, 0xb3, + 0xc7, 0x76, 0x40, 0xb3, +}; +static const struct drbg_kat_no_reseed kat1437_t = { + 11, kat1437_entropyin, kat1437_nonce, kat1437_persstr, + kat1437_addin0, kat1437_addin1, kat1437_retbits +}; +static const struct drbg_kat kat1437 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1437_t +}; + +static const unsigned char kat1438_entropyin[] = { + 0x1e, 0x17, 0xd4, 0x33, 0x0e, 0xbb, 0x4d, 0x06, 0xab, 0x2c, 0xa5, 0xee, + 0xea, 0x4c, 0xd5, 0x97, 0x81, 0x38, 0x6f, 0x07, 0x39, 0x47, 0xbf, 0x8e, + 0x04, 0xd8, 0x6c, 0x8c, 0x10, 0xdf, 0xca, 0x02, 0x99, 0xf6, 0x9c, 0x00, + 0x59, 0xd4, 0xa0, 0x0e, 0x53, 0x6e, 0xe0, 0xec, 0x52, 0x6b, 0xfa, 0xbf, +}; +static const unsigned char kat1438_nonce[] = {0}; +static const unsigned char kat1438_persstr[] = { + 0xa6, 0x1f, 0x6a, 0x69, 0x9d, 0x16, 0x3d, 0x15, 0x9c, 0x1d, 0x87, 0x41, + 0x44, 0x4f, 0xf4, 0xd6, 0x17, 0x2b, 0xf8, 0x17, 0xfa, 0xcb, 0x07, 0x4c, + 0x15, 0x50, 0xc3, 0x5a, 0x7d, 0x47, 0x57, 0xee, 0xfc, 0x3e, 0x24, 0xba, + 0xd5, 0x64, 0xb8, 0x6a, 0x49, 0xd5, 0x57, 0x39, 0x77, 0x42, 0xae, 0xdf, +}; +static const unsigned char kat1438_addin0[] = { + 0x46, 0x82, 0xfa, 0xca, 0x35, 0x08, 0x3a, 0xa6, 0x72, 0xb8, 0xdd, 0x1d, + 0x3c, 0xcc, 0xe9, 0xf5, 0x52, 0xfb, 0x06, 0xe2, 0xa8, 0x52, 0x8d, 0x79, + 0x6c, 0xdc, 0x05, 0xfd, 0x1b, 0x56, 0x95, 0x3d, 0xab, 0x67, 0xa5, 0x1f, + 0x8b, 0x9e, 0xfa, 0x8f, 0x1a, 0x4f, 0x6d, 0x76, 0x7f, 0xec, 0xe8, 0x4d, +}; +static const unsigned char kat1438_addin1[] = { + 0x44, 0x7e, 0x0e, 0x0e, 0x87, 0xcb, 0x82, 0x58, 0x63, 0x60, 0x0d, 0x25, + 0xb3, 0x52, 0xed, 0x4e, 0xfe, 0x5a, 0x75, 0xa2, 0xbd, 0x39, 0x13, 0x7c, + 0x19, 0x0d, 0x42, 0x32, 0x18, 0x9f, 0xe9, 0x24, 0x90, 0x04, 0xd1, 0x16, + 0xf1, 0x43, 0x56, 0x13, 0xfd, 0xaa, 0xee, 0x22, 0x1e, 0xd4, 0x48, 0xdf, +}; +static const unsigned char kat1438_retbits[] = { + 0x54, 0xd0, 0x98, 0x12, 0x4d, 0xc7, 0xdf, 0x57, 0xa6, 0xa4, 0xc0, 0x67, + 0x9f, 0x76, 0xc0, 0x1d, 0x67, 0x4c, 0x7e, 0x5e, 0x27, 0x0a, 0xf8, 0xae, + 0x61, 0xdc, 0xb7, 0xd8, 0xcb, 0xed, 0xbd, 0xde, 0x1b, 0x92, 0x89, 0x87, + 0xb2, 0xb8, 0xd2, 0x41, 0x0a, 0x04, 0x70, 0x5d, 0x8d, 0xd2, 0x12, 0x8f, + 0xc6, 0x15, 0x9d, 0xfa, 0x30, 0xea, 0x0f, 0x75, 0x92, 0x40, 0x61, 0x0c, + 0x86, 0xd8, 0x8a, 0x5f, +}; +static const struct drbg_kat_no_reseed kat1438_t = { + 12, kat1438_entropyin, kat1438_nonce, kat1438_persstr, + kat1438_addin0, kat1438_addin1, kat1438_retbits +}; +static const struct drbg_kat kat1438 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1438_t +}; + +static const unsigned char kat1439_entropyin[] = { + 0xfd, 0xfe, 0x01, 0xe5, 0x15, 0xd1, 0x93, 0xdc, 0x04, 0x69, 0x81, 0xb3, + 0xff, 0xe3, 0x4d, 0xde, 0x3b, 0x48, 0xf7, 0xd9, 0xd4, 0x27, 0x43, 0x1d, + 0x1b, 0x11, 0xe1, 0x96, 0x9f, 0x6c, 0x9b, 0x52, 0x62, 0x34, 0xd9, 0xc9, + 0x5d, 0x3a, 0x19, 0xfc, 0xb6, 0xa6, 0x3a, 0xef, 0xd3, 0x7e, 0xae, 0x89, +}; +static const unsigned char kat1439_nonce[] = {0}; +static const unsigned char kat1439_persstr[] = { + 0x3c, 0xa6, 0xad, 0x90, 0x59, 0x3f, 0xca, 0xa9, 0x2b, 0x99, 0x89, 0x4a, + 0x5e, 0x7f, 0x55, 0xb1, 0xc2, 0x3f, 0xc4, 0x7a, 0x58, 0xc7, 0x15, 0x7f, + 0xf3, 0x34, 0xce, 0x2a, 0x75, 0x8a, 0x57, 0x1e, 0xcb, 0xb9, 0xf4, 0x7c, + 0x3f, 0x9f, 0x8b, 0xf3, 0xc4, 0xf5, 0xf6, 0xf4, 0x5b, 0x2e, 0xf1, 0xbe, +}; +static const unsigned char kat1439_addin0[] = { + 0xe9, 0xbb, 0x42, 0x66, 0x5b, 0xba, 0x29, 0x96, 0x1c, 0x6f, 0xb2, 0x73, + 0xfc, 0x59, 0x65, 0xcd, 0x94, 0x59, 0x4b, 0xc5, 0x3d, 0xc9, 0x19, 0x3b, + 0xa0, 0x4d, 0x7b, 0x18, 0x06, 0x95, 0x04, 0x21, 0xc5, 0xa8, 0x28, 0x57, + 0x63, 0x45, 0xb0, 0xd0, 0x98, 0x52, 0xf1, 0x6e, 0x70, 0x5f, 0x1a, 0xb6, +}; +static const unsigned char kat1439_addin1[] = { + 0x94, 0x4d, 0xe5, 0x8b, 0xf8, 0x2b, 0xc8, 0x01, 0xf0, 0x13, 0xe5, 0xac, + 0x2f, 0xed, 0x93, 0xa4, 0xdb, 0xdc, 0xb5, 0x8b, 0x88, 0x83, 0x76, 0x9e, + 0x88, 0x29, 0x48, 0xcc, 0x5c, 0xdd, 0x0e, 0x4d, 0x8f, 0x5c, 0xc7, 0xe8, + 0x0b, 0x3a, 0x4c, 0x26, 0x0b, 0xbc, 0x10, 0xb5, 0xc0, 0x09, 0x4c, 0x51, +}; +static const unsigned char kat1439_retbits[] = { + 0xd7, 0x45, 0xbd, 0xa3, 0x2d, 0x47, 0xbc, 0x9f, 0xc8, 0xd0, 0x0d, 0x69, + 0xb4, 0x6e, 0x54, 0xac, 0xdf, 0x79, 0xb7, 0xf9, 0x28, 0x16, 0x0d, 0x0d, + 0xfe, 0xe5, 0xd3, 0x3e, 0x40, 0x38, 0x7f, 0x68, 0x10, 0x37, 0x14, 0xd3, + 0x7a, 0xda, 0x08, 0xb8, 0xd4, 0xaa, 0x0f, 0x5e, 0x62, 0xbe, 0xfa, 0xde, + 0x2c, 0x11, 0x21, 0xda, 0xa8, 0xd5, 0x65, 0x9d, 0xb7, 0xdb, 0xe6, 0xe1, + 0x7c, 0x16, 0xb9, 0xe0, +}; +static const struct drbg_kat_no_reseed kat1439_t = { + 13, kat1439_entropyin, kat1439_nonce, kat1439_persstr, + kat1439_addin0, kat1439_addin1, kat1439_retbits +}; +static const struct drbg_kat kat1439 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1439_t +}; + +static const unsigned char kat1440_entropyin[] = { + 0x65, 0x62, 0xbb, 0xb3, 0x98, 0xc0, 0x2c, 0x7d, 0xdf, 0x0b, 0xdc, 0xbf, + 0xea, 0xcd, 0x5a, 0xfe, 0x31, 0xc7, 0x75, 0xbd, 0xa5, 0x3b, 0x4c, 0xb2, + 0xa3, 0x89, 0x6a, 0x89, 0x81, 0x49, 0xbb, 0x19, 0x5f, 0xa3, 0xdd, 0x69, + 0x23, 0x7b, 0xfa, 0xbe, 0x3a, 0x4c, 0x2d, 0xae, 0xbf, 0x30, 0xdc, 0x17, +}; +static const unsigned char kat1440_nonce[] = {0}; +static const unsigned char kat1440_persstr[] = { + 0x96, 0x3e, 0x80, 0xb8, 0x4c, 0xeb, 0x20, 0x45, 0xf9, 0xb5, 0x21, 0x92, + 0x39, 0xb4, 0x21, 0x39, 0xaa, 0xc6, 0x75, 0xca, 0x0b, 0x59, 0x1b, 0x25, + 0x53, 0xe8, 0x39, 0x64, 0x7a, 0xba, 0x20, 0x84, 0x99, 0x3b, 0x07, 0x65, + 0x45, 0x6a, 0xe9, 0x07, 0xaa, 0x5d, 0x6d, 0xa3, 0x44, 0x87, 0x43, 0x2a, +}; +static const unsigned char kat1440_addin0[] = { + 0x59, 0xcc, 0xb9, 0x0f, 0xb7, 0xe9, 0xae, 0x3a, 0x53, 0x2f, 0x95, 0x6b, + 0xc0, 0x03, 0x8c, 0xe0, 0xae, 0x32, 0xfa, 0x71, 0x4d, 0x88, 0x36, 0xc4, + 0x78, 0x91, 0x98, 0x3a, 0xfb, 0x68, 0x2e, 0xd2, 0x33, 0x56, 0x00, 0x63, + 0x9d, 0xa1, 0xd2, 0xa9, 0xe8, 0x9a, 0x95, 0x7a, 0xbc, 0x5b, 0x3d, 0x50, +}; +static const unsigned char kat1440_addin1[] = { + 0x91, 0x16, 0x5e, 0x46, 0x01, 0x6f, 0x2d, 0x56, 0x19, 0xcd, 0x45, 0x49, + 0xf5, 0xac, 0x20, 0x56, 0x39, 0x6b, 0xee, 0x73, 0x16, 0xa3, 0x66, 0xec, + 0x60, 0x51, 0xf3, 0xbd, 0x26, 0x77, 0x0b, 0x3f, 0xd6, 0x3c, 0x16, 0x34, + 0x94, 0xfb, 0x7e, 0x9d, 0x32, 0x6e, 0xca, 0xd9, 0xbf, 0xc1, 0x71, 0xa8, +}; +static const unsigned char kat1440_retbits[] = { + 0x87, 0xed, 0x4a, 0xef, 0x26, 0x4f, 0x2a, 0xc5, 0x45, 0x10, 0xb8, 0x3b, + 0x98, 0xf7, 0x58, 0x5a, 0xef, 0x7f, 0x38, 0x29, 0x47, 0xcb, 0x49, 0x80, + 0x37, 0x84, 0xa2, 0x7c, 0xfb, 0xbc, 0x58, 0x74, 0x56, 0x2b, 0x6d, 0x6c, + 0xb5, 0x7b, 0x75, 0x48, 0xa1, 0xbe, 0x46, 0x4a, 0xbb, 0x20, 0x28, 0xc3, + 0x44, 0x07, 0x45, 0x27, 0xe8, 0xec, 0x56, 0xad, 0x6e, 0x2b, 0x3b, 0x8f, + 0xc5, 0x6f, 0x17, 0x7c, +}; +static const struct drbg_kat_no_reseed kat1440_t = { + 14, kat1440_entropyin, kat1440_nonce, kat1440_persstr, + kat1440_addin0, kat1440_addin1, kat1440_retbits +}; +static const struct drbg_kat kat1440 = { + NO_RESEED, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat1440_t +}; + +static const unsigned char kat1441_entropyin[] = { + 0x0f, 0x65, 0xda, 0x13, 0xdc, 0xa4, 0x07, 0x99, 0x9d, 0x47, 0x73, 0xc2, + 0xb4, 0xa1, 0x1d, 0x85, +}; +static const unsigned char kat1441_nonce[] = { + 0x52, 0x09, 0xe5, 0xb4, 0xed, 0x82, 0xa2, 0x34, +}; +static const unsigned char kat1441_persstr[] = {0}; +static const unsigned char kat1441_entropyinreseed[] = { + 0x1d, 0xea, 0x0a, 0x12, 0xc5, 0x2b, 0xf6, 0x43, 0x39, 0xdd, 0x29, 0x1c, + 0x80, 0xd8, 0xca, 0x89, +}; +static const unsigned char kat1441_addinreseed[] = {0}; +static const unsigned char kat1441_addin0[] = {0}; +static const unsigned char kat1441_addin1[] = {0}; +static const unsigned char kat1441_retbits[] = { + 0x28, 0x59, 0xcc, 0x46, 0x8a, 0x76, 0xb0, 0x86, 0x61, 0xff, 0xd2, 0x3b, + 0x28, 0x54, 0x7f, 0xfd, 0x09, 0x97, 0xad, 0x52, 0x6a, 0x0f, 0x51, 0x26, + 0x1b, 0x99, 0xed, 0x3a, 0x37, 0xbd, 0x40, 0x7b, 0xf4, 0x18, 0xdb, 0xe6, + 0xc6, 0xc3, 0xe2, 0x6e, 0xd0, 0xdd, 0xef, 0xcb, 0x74, 0x74, 0xd8, 0x99, + 0xbd, 0x99, 0xf3, 0x65, 0x54, 0x27, 0x51, 0x9f, 0xc5, 0xb4, 0x05, 0x7b, + 0xca, 0xf3, 0x06, 0xd4, +}; +static const struct drbg_kat_pr_false kat1441_t = { + 0, kat1441_entropyin, kat1441_nonce, kat1441_persstr, + kat1441_entropyinreseed, kat1441_addinreseed, kat1441_addin0, + kat1441_addin1, kat1441_retbits +}; +static const struct drbg_kat kat1441 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1441_t +}; + +static const unsigned char kat1442_entropyin[] = { + 0x1f, 0xf8, 0xf4, 0xa8, 0x5d, 0xbf, 0x2f, 0x6b, 0xb2, 0x64, 0x89, 0x67, + 0x41, 0x9b, 0xb2, 0x70, +}; +static const unsigned char kat1442_nonce[] = { + 0xb0, 0xcd, 0xf7, 0xbc, 0x47, 0xca, 0x5f, 0x8b, +}; +static const unsigned char kat1442_persstr[] = {0}; +static const unsigned char kat1442_entropyinreseed[] = { + 0xf9, 0x06, 0x99, 0x44, 0x1c, 0x1e, 0xce, 0x41, 0xcf, 0x1f, 0x6a, 0x32, + 0xe4, 0x94, 0x86, 0x56, +}; +static const unsigned char kat1442_addinreseed[] = {0}; +static const unsigned char kat1442_addin0[] = {0}; +static const unsigned char kat1442_addin1[] = {0}; +static const unsigned char kat1442_retbits[] = { + 0xd9, 0xae, 0x8b, 0x33, 0xf1, 0xa1, 0x0c, 0xbf, 0x51, 0x6d, 0x97, 0xb9, + 0xad, 0x7b, 0xaf, 0x0d, 0x59, 0x6a, 0x08, 0x1a, 0x0f, 0xf0, 0xf4, 0x71, + 0x76, 0x74, 0x23, 0x9b, 0x9e, 0x33, 0x93, 0x54, 0xd8, 0x13, 0xb2, 0xbb, + 0x71, 0xc1, 0x0f, 0x7d, 0x2e, 0x34, 0x99, 0x4e, 0x00, 0x30, 0xe4, 0xfb, + 0xfb, 0xa6, 0x43, 0x8d, 0x07, 0x7c, 0x36, 0x17, 0x45, 0x99, 0x3b, 0x9d, + 0x6f, 0x66, 0x9b, 0x24, +}; +static const struct drbg_kat_pr_false kat1442_t = { + 1, kat1442_entropyin, kat1442_nonce, kat1442_persstr, + kat1442_entropyinreseed, kat1442_addinreseed, kat1442_addin0, + kat1442_addin1, kat1442_retbits +}; +static const struct drbg_kat kat1442 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1442_t +}; + +static const unsigned char kat1443_entropyin[] = { + 0x7a, 0x3b, 0x24, 0xc1, 0x7b, 0x87, 0x51, 0x36, 0x75, 0xc4, 0x31, 0x51, + 0x9e, 0x77, 0x1c, 0xe6, +}; +static const unsigned char kat1443_nonce[] = { + 0xab, 0xe4, 0x78, 0x00, 0x41, 0x4d, 0x25, 0xdd, +}; +static const unsigned char kat1443_persstr[] = {0}; +static const unsigned char kat1443_entropyinreseed[] = { + 0xb6, 0xff, 0xef, 0xc4, 0x08, 0xe4, 0x1f, 0x77, 0xe2, 0xca, 0xd4, 0x79, + 0xa6, 0x69, 0x27, 0x4d, +}; +static const unsigned char kat1443_addinreseed[] = {0}; +static const unsigned char kat1443_addin0[] = {0}; +static const unsigned char kat1443_addin1[] = {0}; +static const unsigned char kat1443_retbits[] = { + 0xcd, 0xc4, 0x69, 0xc1, 0x54, 0x79, 0x03, 0xb9, 0xfe, 0xe5, 0x83, 0x40, + 0x9d, 0x41, 0x1e, 0x0a, 0xc7, 0x63, 0xa0, 0x0c, 0xd6, 0x87, 0xd4, 0xf8, + 0xc8, 0x11, 0xe9, 0xc7, 0x4d, 0xc3, 0xb7, 0x8b, 0x27, 0xb6, 0x6f, 0xe6, + 0x6a, 0x24, 0x9b, 0x41, 0x78, 0xbd, 0x3b, 0xd0, 0x80, 0x08, 0xea, 0x25, + 0x8c, 0x5a, 0x90, 0x8d, 0x2e, 0xa7, 0x37, 0x15, 0x8d, 0x16, 0x3d, 0x1f, + 0x34, 0xf9, 0x3e, 0xa3, +}; +static const struct drbg_kat_pr_false kat1443_t = { + 2, kat1443_entropyin, kat1443_nonce, kat1443_persstr, + kat1443_entropyinreseed, kat1443_addinreseed, kat1443_addin0, + kat1443_addin1, kat1443_retbits +}; +static const struct drbg_kat kat1443 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1443_t +}; + +static const unsigned char kat1444_entropyin[] = { + 0x10, 0x2e, 0x34, 0x28, 0xb2, 0x5f, 0xda, 0x75, 0x29, 0x24, 0x8b, 0x67, + 0xbd, 0x1b, 0xdc, 0x93, +}; +static const unsigned char kat1444_nonce[] = { + 0x62, 0xd6, 0xaa, 0x84, 0xcf, 0x51, 0xad, 0x73, +}; +static const unsigned char kat1444_persstr[] = {0}; +static const unsigned char kat1444_entropyinreseed[] = { + 0x00, 0xd7, 0xaf, 0x7d, 0x1f, 0x9e, 0x36, 0x27, 0x9d, 0x07, 0x03, 0x44, + 0x27, 0xa9, 0xb5, 0xd0, +}; +static const unsigned char kat1444_addinreseed[] = {0}; +static const unsigned char kat1444_addin0[] = {0}; +static const unsigned char kat1444_addin1[] = {0}; +static const unsigned char kat1444_retbits[] = { + 0x6d, 0x7b, 0xa7, 0x25, 0xc8, 0x1f, 0xb0, 0xc8, 0xde, 0x32, 0xf8, 0x28, + 0x84, 0x18, 0x5b, 0x9e, 0xb2, 0x73, 0xbc, 0x1e, 0xc1, 0x3e, 0x4c, 0xa1, + 0xa0, 0x37, 0x05, 0x94, 0xcf, 0x9c, 0x5b, 0xd6, 0xc2, 0x7c, 0x37, 0x18, + 0x26, 0xad, 0x86, 0xbb, 0x8f, 0x5d, 0x78, 0xc6, 0x97, 0xaa, 0x9e, 0x29, + 0x27, 0xe1, 0xc9, 0xb2, 0x30, 0x4a, 0xf0, 0x28, 0x8e, 0xfe, 0x62, 0x9e, + 0xff, 0x13, 0x7c, 0x43, +}; +static const struct drbg_kat_pr_false kat1444_t = { + 3, kat1444_entropyin, kat1444_nonce, kat1444_persstr, + kat1444_entropyinreseed, kat1444_addinreseed, kat1444_addin0, + kat1444_addin1, kat1444_retbits +}; +static const struct drbg_kat kat1444 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1444_t +}; + +static const unsigned char kat1445_entropyin[] = { + 0x08, 0x87, 0xab, 0x2c, 0x94, 0xdc, 0x3b, 0xf4, 0x3f, 0xfe, 0x8a, 0x1b, + 0xad, 0xbd, 0x5b, 0xf2, +}; +static const unsigned char kat1445_nonce[] = { + 0x51, 0x18, 0x53, 0xd9, 0x74, 0x31, 0x05, 0x7d, +}; +static const unsigned char kat1445_persstr[] = {0}; +static const unsigned char kat1445_entropyinreseed[] = { + 0x17, 0x33, 0xe3, 0x82, 0x8a, 0x48, 0xfd, 0x80, 0xad, 0xec, 0xaa, 0x90, + 0x38, 0x23, 0xac, 0x5b, +}; +static const unsigned char kat1445_addinreseed[] = {0}; +static const unsigned char kat1445_addin0[] = {0}; +static const unsigned char kat1445_addin1[] = {0}; +static const unsigned char kat1445_retbits[] = { + 0x79, 0xdf, 0x1b, 0x08, 0x32, 0xde, 0xdd, 0xe9, 0x45, 0xed, 0x59, 0x3c, + 0xe7, 0xeb, 0xe2, 0x79, 0xca, 0x28, 0xa3, 0x73, 0x86, 0xd4, 0xc2, 0x08, + 0x10, 0xed, 0xed, 0x12, 0x37, 0xca, 0xb0, 0xb4, 0x6f, 0x1b, 0x6b, 0x2a, + 0x21, 0x2e, 0x91, 0xab, 0x21, 0x50, 0xae, 0x77, 0xcb, 0xc0, 0xaa, 0xf7, + 0xbb, 0xbc, 0x3e, 0x6a, 0x77, 0x6a, 0x44, 0xea, 0xe1, 0xef, 0x30, 0x16, + 0x5a, 0x3b, 0x6c, 0x41, +}; +static const struct drbg_kat_pr_false kat1445_t = { + 4, kat1445_entropyin, kat1445_nonce, kat1445_persstr, + kat1445_entropyinreseed, kat1445_addinreseed, kat1445_addin0, + kat1445_addin1, kat1445_retbits +}; +static const struct drbg_kat kat1445 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1445_t +}; + +static const unsigned char kat1446_entropyin[] = { + 0xa2, 0x8a, 0x05, 0xfd, 0xc6, 0x4d, 0xa8, 0x3e, 0xcf, 0x4d, 0x11, 0xff, + 0xb6, 0x17, 0x36, 0x45, +}; +static const unsigned char kat1446_nonce[] = { + 0x2a, 0x89, 0xe8, 0xa1, 0xcb, 0x26, 0x91, 0xeb, +}; +static const unsigned char kat1446_persstr[] = {0}; +static const unsigned char kat1446_entropyinreseed[] = { + 0x9b, 0x82, 0xf2, 0x96, 0xbf, 0x1d, 0xef, 0xa8, 0x64, 0x2c, 0xbe, 0x5f, + 0xc4, 0xc7, 0xc8, 0x68, +}; +static const unsigned char kat1446_addinreseed[] = {0}; +static const unsigned char kat1446_addin0[] = {0}; +static const unsigned char kat1446_addin1[] = {0}; +static const unsigned char kat1446_retbits[] = { + 0x60, 0x6e, 0xea, 0xcb, 0x0e, 0x6d, 0x8f, 0x8e, 0x0f, 0x67, 0x41, 0xcf, + 0x42, 0x7a, 0x93, 0x5a, 0xa6, 0xc7, 0x89, 0xe8, 0xde, 0xeb, 0x84, 0x50, + 0xca, 0x8f, 0x66, 0xbc, 0xa8, 0x6e, 0x92, 0x4f, 0x42, 0xfc, 0x3c, 0x61, + 0xc7, 0xf6, 0x90, 0x04, 0xe2, 0x47, 0xb6, 0x76, 0xf5, 0x5f, 0x49, 0x06, + 0xd2, 0x15, 0x8c, 0xea, 0x35, 0x2c, 0x60, 0x7f, 0x7f, 0xa0, 0x29, 0x9e, + 0xd0, 0x9e, 0x6f, 0x05, +}; +static const struct drbg_kat_pr_false kat1446_t = { + 5, kat1446_entropyin, kat1446_nonce, kat1446_persstr, + kat1446_entropyinreseed, kat1446_addinreseed, kat1446_addin0, + kat1446_addin1, kat1446_retbits +}; +static const struct drbg_kat kat1446 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1446_t +}; + +static const unsigned char kat1447_entropyin[] = { + 0x71, 0xf0, 0x05, 0xdf, 0x03, 0x3a, 0xdf, 0x9e, 0x11, 0x95, 0x91, 0x16, + 0x11, 0xca, 0x51, 0xc9, +}; +static const unsigned char kat1447_nonce[] = { + 0x9a, 0x33, 0x20, 0x9f, 0xdf, 0xc4, 0x1a, 0x3c, +}; +static const unsigned char kat1447_persstr[] = {0}; +static const unsigned char kat1447_entropyinreseed[] = { + 0x88, 0xd1, 0xad, 0xa2, 0x99, 0x0d, 0xbf, 0xb6, 0x91, 0x6a, 0x9e, 0xce, + 0x78, 0x78, 0x56, 0x89, +}; +static const unsigned char kat1447_addinreseed[] = {0}; +static const unsigned char kat1447_addin0[] = {0}; +static const unsigned char kat1447_addin1[] = {0}; +static const unsigned char kat1447_retbits[] = { + 0xa2, 0x49, 0x82, 0x36, 0x9e, 0xe6, 0x58, 0x68, 0x64, 0x6c, 0x8e, 0x0c, + 0x27, 0x9d, 0xff, 0x30, 0x11, 0x60, 0x5d, 0x33, 0x99, 0x59, 0x5c, 0x45, + 0x5f, 0xe2, 0x0e, 0xd3, 0x38, 0xf8, 0xc2, 0xa5, 0x10, 0x61, 0xaa, 0x7b, + 0x40, 0xf4, 0xe0, 0x7e, 0x86, 0x37, 0x8e, 0x89, 0x66, 0x23, 0xd4, 0x6f, + 0x85, 0xaa, 0xcf, 0xa6, 0xaf, 0x3a, 0x1d, 0x66, 0xe2, 0x2e, 0x7c, 0xb5, + 0x61, 0xe1, 0x35, 0xd4, +}; +static const struct drbg_kat_pr_false kat1447_t = { + 6, kat1447_entropyin, kat1447_nonce, kat1447_persstr, + kat1447_entropyinreseed, kat1447_addinreseed, kat1447_addin0, + kat1447_addin1, kat1447_retbits +}; +static const struct drbg_kat kat1447 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1447_t +}; + +static const unsigned char kat1448_entropyin[] = { + 0xd5, 0xef, 0xee, 0x24, 0xd6, 0xb8, 0x1f, 0x49, 0x75, 0x39, 0x3f, 0x7b, + 0x82, 0x60, 0x32, 0x47, +}; +static const unsigned char kat1448_nonce[] = { + 0xb3, 0xab, 0x7c, 0x0e, 0x7c, 0x28, 0x09, 0x09, +}; +static const unsigned char kat1448_persstr[] = {0}; +static const unsigned char kat1448_entropyinreseed[] = { + 0x7d, 0x8c, 0xdc, 0x5f, 0x4f, 0xe6, 0x07, 0xef, 0x6b, 0xc1, 0xe2, 0x93, + 0x8c, 0x27, 0xf0, 0xf8, +}; +static const unsigned char kat1448_addinreseed[] = {0}; +static const unsigned char kat1448_addin0[] = {0}; +static const unsigned char kat1448_addin1[] = {0}; +static const unsigned char kat1448_retbits[] = { + 0x33, 0x5e, 0x13, 0x85, 0x20, 0x19, 0x62, 0xe6, 0x36, 0x11, 0x6d, 0x6d, + 0x5f, 0xf5, 0xfb, 0x91, 0xed, 0x26, 0x83, 0x88, 0xa2, 0x6a, 0xea, 0x34, + 0xcf, 0xd3, 0x54, 0x89, 0x5d, 0x9b, 0x76, 0xa5, 0x14, 0xf3, 0x4c, 0xbe, + 0x9d, 0x3c, 0x86, 0x31, 0x78, 0x15, 0x6b, 0xb6, 0xfe, 0xd7, 0x36, 0x8a, + 0x94, 0xb0, 0x37, 0x10, 0x1b, 0x26, 0xdb, 0x0d, 0x7e, 0x6a, 0x8a, 0x00, + 0x92, 0x56, 0xdb, 0x35, +}; +static const struct drbg_kat_pr_false kat1448_t = { + 7, kat1448_entropyin, kat1448_nonce, kat1448_persstr, + kat1448_entropyinreseed, kat1448_addinreseed, kat1448_addin0, + kat1448_addin1, kat1448_retbits +}; +static const struct drbg_kat kat1448 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1448_t +}; + +static const unsigned char kat1449_entropyin[] = { + 0x00, 0x6f, 0xe4, 0xc4, 0xc4, 0xc0, 0x16, 0xa5, 0x1a, 0x0e, 0xb0, 0xf3, + 0x54, 0x95, 0x23, 0x9f, +}; +static const unsigned char kat1449_nonce[] = { + 0x99, 0x0d, 0x27, 0x5f, 0x3c, 0x27, 0xc6, 0x91, +}; +static const unsigned char kat1449_persstr[] = {0}; +static const unsigned char kat1449_entropyinreseed[] = { + 0xdd, 0x4b, 0x17, 0xe7, 0xd3, 0x00, 0x4c, 0x53, 0x24, 0xab, 0x0b, 0x98, + 0xb7, 0x5b, 0x04, 0xfb, +}; +static const unsigned char kat1449_addinreseed[] = {0}; +static const unsigned char kat1449_addin0[] = {0}; +static const unsigned char kat1449_addin1[] = {0}; +static const unsigned char kat1449_retbits[] = { + 0x51, 0x3f, 0x69, 0x96, 0xd9, 0x56, 0xee, 0xad, 0xb5, 0xc3, 0x30, 0xc3, + 0x42, 0x05, 0x8f, 0xcc, 0x46, 0x57, 0x93, 0xb6, 0x36, 0xfa, 0xb7, 0x4b, + 0x1b, 0xb5, 0x6e, 0x49, 0x6c, 0xd2, 0x5e, 0x5a, 0xfc, 0x7b, 0xfb, 0x3c, + 0xd3, 0x04, 0xbb, 0x81, 0x7b, 0xda, 0xfe, 0x7e, 0x8d, 0x66, 0x62, 0x60, + 0xf8, 0x13, 0xec, 0x57, 0x01, 0xb6, 0xb4, 0xe1, 0xb7, 0xf8, 0x72, 0xae, + 0xee, 0x09, 0xf3, 0x63, +}; +static const struct drbg_kat_pr_false kat1449_t = { + 8, kat1449_entropyin, kat1449_nonce, kat1449_persstr, + kat1449_entropyinreseed, kat1449_addinreseed, kat1449_addin0, + kat1449_addin1, kat1449_retbits +}; +static const struct drbg_kat kat1449 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1449_t +}; + +static const unsigned char kat1450_entropyin[] = { + 0x3b, 0x0e, 0x73, 0x80, 0x24, 0x00, 0x61, 0xe3, 0x8f, 0x6c, 0xb8, 0x1c, + 0xbe, 0xe4, 0xbc, 0xb4, +}; +static const unsigned char kat1450_nonce[] = { + 0xe8, 0x82, 0xe8, 0x0e, 0x0a, 0x2f, 0xb7, 0xcf, +}; +static const unsigned char kat1450_persstr[] = {0}; +static const unsigned char kat1450_entropyinreseed[] = { + 0xb1, 0x85, 0x97, 0x90, 0x4c, 0x54, 0xa8, 0x82, 0x67, 0xcb, 0x26, 0x51, + 0xbd, 0x5a, 0x92, 0x03, +}; +static const unsigned char kat1450_addinreseed[] = {0}; +static const unsigned char kat1450_addin0[] = {0}; +static const unsigned char kat1450_addin1[] = {0}; +static const unsigned char kat1450_retbits[] = { + 0x56, 0x3b, 0x0b, 0x8d, 0xcc, 0x82, 0x8e, 0x42, 0x93, 0x56, 0x3f, 0xf6, + 0xbe, 0x31, 0x4d, 0x0c, 0xa8, 0xff, 0xfd, 0x17, 0x6b, 0x4a, 0xda, 0x8d, + 0x27, 0x00, 0x40, 0x86, 0x3b, 0xe6, 0x32, 0x54, 0x05, 0x67, 0x55, 0x67, + 0x02, 0x81, 0x5a, 0x0a, 0xab, 0x40, 0xcd, 0xc9, 0x23, 0xeb, 0xa1, 0xf5, + 0xa1, 0xc9, 0x92, 0x84, 0x94, 0xd4, 0x01, 0x1b, 0x63, 0xf1, 0x73, 0x72, + 0xc5, 0xbd, 0x48, 0xe7, +}; +static const struct drbg_kat_pr_false kat1450_t = { + 9, kat1450_entropyin, kat1450_nonce, kat1450_persstr, + kat1450_entropyinreseed, kat1450_addinreseed, kat1450_addin0, + kat1450_addin1, kat1450_retbits +}; +static const struct drbg_kat kat1450 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1450_t +}; + +static const unsigned char kat1451_entropyin[] = { + 0x60, 0xf5, 0xfe, 0x65, 0xd5, 0xce, 0xfb, 0x73, 0x1b, 0x28, 0x17, 0x9c, + 0x35, 0xb2, 0xaa, 0x3d, +}; +static const unsigned char kat1451_nonce[] = { + 0x72, 0x91, 0x9f, 0x9e, 0x09, 0x7e, 0x73, 0x85, +}; +static const unsigned char kat1451_persstr[] = {0}; +static const unsigned char kat1451_entropyinreseed[] = { + 0xf3, 0x54, 0x12, 0xd4, 0xdd, 0xfd, 0xe3, 0x8d, 0xfa, 0x3f, 0x61, 0xaa, + 0x8f, 0x6e, 0xb8, 0x05, +}; +static const unsigned char kat1451_addinreseed[] = {0}; +static const unsigned char kat1451_addin0[] = {0}; +static const unsigned char kat1451_addin1[] = {0}; +static const unsigned char kat1451_retbits[] = { + 0xeb, 0x7a, 0xec, 0xb6, 0xbc, 0xd3, 0x6d, 0xd2, 0xfd, 0xd3, 0x24, 0x72, + 0xa6, 0x9c, 0x02, 0xf9, 0xe7, 0x1a, 0xff, 0x13, 0xa3, 0xe0, 0x47, 0xb5, + 0x87, 0x69, 0x52, 0x2d, 0x98, 0x4b, 0x60, 0x8d, 0x33, 0x4e, 0x51, 0x39, + 0x20, 0xf8, 0x71, 0x3d, 0x63, 0x14, 0x3c, 0x97, 0x18, 0x75, 0xb7, 0x81, + 0xf3, 0x58, 0x4b, 0xc7, 0xde, 0x35, 0x2a, 0xdd, 0x78, 0x78, 0x20, 0xc5, + 0xf8, 0xaa, 0xc0, 0x29, +}; +static const struct drbg_kat_pr_false kat1451_t = { + 10, kat1451_entropyin, kat1451_nonce, kat1451_persstr, + kat1451_entropyinreseed, kat1451_addinreseed, kat1451_addin0, + kat1451_addin1, kat1451_retbits +}; +static const struct drbg_kat kat1451 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1451_t +}; + +static const unsigned char kat1452_entropyin[] = { + 0x52, 0x92, 0x6e, 0x41, 0x4f, 0x4c, 0x17, 0x2b, 0x8c, 0x49, 0x0e, 0xf1, + 0x3f, 0x34, 0x5f, 0x08, +}; +static const unsigned char kat1452_nonce[] = { + 0x41, 0xd1, 0xfa, 0x4b, 0x9b, 0x06, 0x0f, 0x3e, +}; +static const unsigned char kat1452_persstr[] = {0}; +static const unsigned char kat1452_entropyinreseed[] = { + 0xfa, 0x91, 0x52, 0x73, 0x1e, 0x26, 0xd3, 0x74, 0xc5, 0x20, 0x41, 0xab, + 0xe1, 0x78, 0xcb, 0x26, +}; +static const unsigned char kat1452_addinreseed[] = {0}; +static const unsigned char kat1452_addin0[] = {0}; +static const unsigned char kat1452_addin1[] = {0}; +static const unsigned char kat1452_retbits[] = { + 0x38, 0xb9, 0x4e, 0x8c, 0xb5, 0xcd, 0x2e, 0x49, 0x07, 0x0a, 0xf8, 0x9c, + 0xf2, 0x08, 0xb9, 0x9f, 0x40, 0xb0, 0xa7, 0x80, 0x57, 0x8f, 0x11, 0x46, + 0x52, 0x19, 0xc7, 0xc9, 0xb2, 0x93, 0x60, 0x92, 0x70, 0x79, 0x2e, 0x6d, + 0x9f, 0x45, 0x7e, 0x62, 0x9d, 0xb3, 0x72, 0xdd, 0x0f, 0x7c, 0xee, 0x23, + 0x00, 0xe7, 0xb9, 0x7a, 0x35, 0xae, 0x47, 0xa2, 0xf7, 0x5c, 0xf9, 0x22, + 0xee, 0x5e, 0x29, 0x06, +}; +static const struct drbg_kat_pr_false kat1452_t = { + 11, kat1452_entropyin, kat1452_nonce, kat1452_persstr, + kat1452_entropyinreseed, kat1452_addinreseed, kat1452_addin0, + kat1452_addin1, kat1452_retbits +}; +static const struct drbg_kat kat1452 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1452_t +}; + +static const unsigned char kat1453_entropyin[] = { + 0xa7, 0x6d, 0x0c, 0x66, 0xbe, 0x9a, 0xbb, 0x60, 0x81, 0xb5, 0x2f, 0xa5, + 0xbb, 0xba, 0x76, 0x00, +}; +static const unsigned char kat1453_nonce[] = { + 0x34, 0x0f, 0x89, 0xb7, 0x6e, 0x46, 0x7b, 0xb1, +}; +static const unsigned char kat1453_persstr[] = {0}; +static const unsigned char kat1453_entropyinreseed[] = { + 0xbe, 0xaa, 0xfe, 0x74, 0xdd, 0xa0, 0xb4, 0xe7, 0xcd, 0x9a, 0x24, 0xae, + 0xb8, 0x2a, 0x15, 0xea, +}; +static const unsigned char kat1453_addinreseed[] = {0}; +static const unsigned char kat1453_addin0[] = {0}; +static const unsigned char kat1453_addin1[] = {0}; +static const unsigned char kat1453_retbits[] = { + 0x0f, 0x06, 0xf4, 0x35, 0x6e, 0xc3, 0x0e, 0x46, 0x2b, 0x1d, 0xad, 0x33, + 0x47, 0xa9, 0x29, 0xa7, 0xd7, 0xfe, 0x93, 0x1a, 0x37, 0x7f, 0x09, 0xe3, + 0xc3, 0xf6, 0xd2, 0x81, 0x18, 0x1c, 0x07, 0x9d, 0x25, 0x20, 0xf7, 0x8d, + 0xf1, 0xd5, 0x0c, 0x6b, 0xb7, 0x3a, 0x29, 0xdb, 0xba, 0x58, 0xe1, 0x6a, + 0x39, 0x4f, 0x8b, 0xc7, 0xf1, 0xdc, 0xad, 0x3b, 0xa8, 0xc4, 0x60, 0xf1, + 0x44, 0x3f, 0x07, 0xab, +}; +static const struct drbg_kat_pr_false kat1453_t = { + 12, kat1453_entropyin, kat1453_nonce, kat1453_persstr, + kat1453_entropyinreseed, kat1453_addinreseed, kat1453_addin0, + kat1453_addin1, kat1453_retbits +}; +static const struct drbg_kat kat1453 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1453_t +}; + +static const unsigned char kat1454_entropyin[] = { + 0x08, 0x41, 0x8b, 0xb6, 0x47, 0x64, 0x55, 0x94, 0x8c, 0xb8, 0x85, 0x21, + 0xd1, 0x51, 0x5d, 0xc0, +}; +static const unsigned char kat1454_nonce[] = { + 0x84, 0x84, 0x16, 0x4b, 0x1a, 0xfc, 0x42, 0xf1, +}; +static const unsigned char kat1454_persstr[] = {0}; +static const unsigned char kat1454_entropyinreseed[] = { + 0xae, 0x4a, 0x02, 0xa4, 0x06, 0x36, 0x02, 0x4f, 0xce, 0x89, 0x33, 0x5f, + 0x6e, 0xe1, 0x1d, 0xf2, +}; +static const unsigned char kat1454_addinreseed[] = {0}; +static const unsigned char kat1454_addin0[] = {0}; +static const unsigned char kat1454_addin1[] = {0}; +static const unsigned char kat1454_retbits[] = { + 0x59, 0xb3, 0x45, 0xad, 0x05, 0xa9, 0xd2, 0xf5, 0xc4, 0x2a, 0xda, 0xb3, + 0xe7, 0x90, 0xe1, 0xe7, 0x2d, 0x00, 0x22, 0xa2, 0xcf, 0x83, 0x40, 0xcb, + 0x5c, 0xea, 0x93, 0x82, 0xad, 0x97, 0xe1, 0xac, 0x63, 0x17, 0xfc, 0x02, + 0x85, 0x09, 0x51, 0xfa, 0x05, 0xb9, 0x11, 0x9d, 0x82, 0xaf, 0x59, 0xdc, + 0x24, 0x1d, 0xfb, 0x62, 0x4d, 0x8c, 0xc4, 0x37, 0xf9, 0xa8, 0xae, 0xe3, + 0xe1, 0xc6, 0x4e, 0x9c, +}; +static const struct drbg_kat_pr_false kat1454_t = { + 13, kat1454_entropyin, kat1454_nonce, kat1454_persstr, + kat1454_entropyinreseed, kat1454_addinreseed, kat1454_addin0, + kat1454_addin1, kat1454_retbits +}; +static const struct drbg_kat kat1454 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1454_t +}; + +static const unsigned char kat1455_entropyin[] = { + 0xc9, 0xb8, 0xd7, 0xeb, 0x0a, 0xfa, 0x58, 0x89, 0xe7, 0xf9, 0xb7, 0x8a, + 0x50, 0xed, 0x45, 0x3c, +}; +static const unsigned char kat1455_nonce[] = { + 0x30, 0x58, 0xba, 0x34, 0x7e, 0xcd, 0x11, 0xb1, +}; +static const unsigned char kat1455_persstr[] = {0}; +static const unsigned char kat1455_entropyinreseed[] = { + 0x64, 0x36, 0x86, 0xb8, 0x62, 0x66, 0xd9, 0x11, 0x1f, 0x29, 0xeb, 0x38, + 0x9e, 0x11, 0x84, 0xb4, +}; +static const unsigned char kat1455_addinreseed[] = {0}; +static const unsigned char kat1455_addin0[] = {0}; +static const unsigned char kat1455_addin1[] = {0}; +static const unsigned char kat1455_retbits[] = { + 0x0a, 0x8c, 0xca, 0xdc, 0x1c, 0x5c, 0xbd, 0x20, 0xb8, 0xce, 0x32, 0xf9, + 0x42, 0x50, 0x5e, 0x65, 0x4b, 0x91, 0xa4, 0xe9, 0x41, 0x0e, 0x0e, 0xa6, + 0x27, 0xc9, 0x61, 0xd6, 0x32, 0xd3, 0xbe, 0x71, 0xd6, 0xa7, 0xdf, 0xd6, + 0x4b, 0x8f, 0x70, 0xd2, 0x8f, 0xf9, 0x18, 0x69, 0xb9, 0x2c, 0xed, 0x90, + 0x8b, 0x45, 0x49, 0x36, 0xb6, 0xd1, 0x8f, 0xcd, 0xdd, 0x7f, 0xb7, 0x72, + 0x16, 0xcc, 0xc4, 0x04, +}; +static const struct drbg_kat_pr_false kat1455_t = { + 14, kat1455_entropyin, kat1455_nonce, kat1455_persstr, + kat1455_entropyinreseed, kat1455_addinreseed, kat1455_addin0, + kat1455_addin1, kat1455_retbits +}; +static const struct drbg_kat kat1455 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1455_t +}; + +static const unsigned char kat1456_entropyin[] = { + 0x28, 0x5d, 0xa6, 0xcf, 0x76, 0x25, 0x52, 0x63, 0x46, 0x36, 0xbf, 0xee, + 0x34, 0x00, 0xb1, 0x56, +}; +static const unsigned char kat1456_nonce[] = { + 0x8f, 0x8b, 0xad, 0xa7, 0x48, 0x20, 0xcb, 0x43, +}; +static const unsigned char kat1456_persstr[] = {0}; +static const unsigned char kat1456_entropyinreseed[] = { + 0xb4, 0x69, 0x9b, 0x33, 0x35, 0x4a, 0x83, 0xbf, 0xed, 0x11, 0x5f, 0x77, + 0x0f, 0x32, 0xdb, 0x0b, +}; +static const unsigned char kat1456_addinreseed[] = { + 0x38, 0xbf, 0xec, 0x9a, 0x10, 0xe6, 0xe4, 0x0c, 0x10, 0x68, 0x41, 0xda, + 0xe4, 0x8d, 0xc3, 0xb8, +}; +static const unsigned char kat1456_addin0[] = { + 0x62, 0x9e, 0xad, 0x5b, 0xac, 0xfa, 0xc8, 0x23, 0x57, 0x11, 0xff, 0xeb, + 0x22, 0xf5, 0x75, 0x58, +}; +static const unsigned char kat1456_addin1[] = { + 0xdd, 0x8a, 0x02, 0xee, 0x66, 0x8c, 0xa3, 0xe0, 0x39, 0x49, 0xb3, 0x8c, + 0xb6, 0xe6, 0xb4, 0xdf, +}; +static const unsigned char kat1456_retbits[] = { + 0xe5, 0x55, 0xaa, 0x44, 0x32, 0xbd, 0xe0, 0x4d, 0xcf, 0x0f, 0x0b, 0x03, + 0xea, 0xd1, 0x87, 0xb3, 0x1d, 0xf0, 0x66, 0x53, 0xd4, 0x44, 0x23, 0x4b, + 0x5c, 0x1b, 0xfc, 0x11, 0xb2, 0x24, 0x28, 0x5f, 0x2f, 0xb2, 0xb6, 0xcd, + 0xd5, 0xa9, 0xae, 0x6f, 0x13, 0xd9, 0x9b, 0xd0, 0x2c, 0x3c, 0x9f, 0xe9, + 0xc3, 0xc1, 0xbe, 0x46, 0xa6, 0x00, 0xf5, 0xf7, 0x57, 0xab, 0x45, 0x74, + 0xaf, 0x89, 0x35, 0x01, +}; +static const struct drbg_kat_pr_false kat1456_t = { + 0, kat1456_entropyin, kat1456_nonce, kat1456_persstr, + kat1456_entropyinreseed, kat1456_addinreseed, kat1456_addin0, + kat1456_addin1, kat1456_retbits +}; +static const struct drbg_kat kat1456 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1456_t +}; + +static const unsigned char kat1457_entropyin[] = { + 0x80, 0x09, 0x4b, 0x91, 0xc3, 0x45, 0x07, 0xfc, 0x55, 0xfd, 0xd0, 0x9a, + 0xde, 0x25, 0xf2, 0x75, +}; +static const unsigned char kat1457_nonce[] = { + 0x72, 0x59, 0x34, 0x93, 0xd4, 0x47, 0xee, 0x20, +}; +static const unsigned char kat1457_persstr[] = {0}; +static const unsigned char kat1457_entropyinreseed[] = { + 0x7a, 0xb8, 0x6c, 0x3a, 0xd6, 0x71, 0x0f, 0xd4, 0x9e, 0x92, 0x3d, 0xae, + 0xfd, 0x4a, 0x8e, 0xf7, +}; +static const unsigned char kat1457_addinreseed[] = { + 0xdf, 0x5b, 0x78, 0x93, 0x06, 0xbc, 0xf3, 0x20, 0xb7, 0x6f, 0xa3, 0x74, + 0xe5, 0x71, 0x08, 0x29, +}; +static const unsigned char kat1457_addin0[] = { + 0x36, 0x2a, 0x4c, 0x6e, 0x92, 0x88, 0x5f, 0x44, 0x4a, 0x49, 0x53, 0x3f, + 0xc5, 0x1d, 0x17, 0x11, +}; +static const unsigned char kat1457_addin1[] = { + 0x42, 0x14, 0x53, 0x27, 0x18, 0x7e, 0x1b, 0x57, 0x08, 0x69, 0xba, 0x8f, + 0xa4, 0xfa, 0x94, 0x2e, +}; +static const unsigned char kat1457_retbits[] = { + 0x98, 0x49, 0x57, 0x3c, 0xd8, 0xbc, 0x10, 0x3e, 0x7d, 0x62, 0x24, 0xe7, + 0x99, 0x73, 0xdb, 0x79, 0xc2, 0x0b, 0x0a, 0x31, 0xf7, 0x3d, 0x8a, 0xf3, + 0x57, 0xcb, 0x1c, 0x79, 0x7a, 0x84, 0x35, 0x09, 0x66, 0x7a, 0x53, 0xa6, + 0xe2, 0x21, 0xc3, 0x36, 0x97, 0x9f, 0x52, 0x55, 0x19, 0x27, 0x74, 0xc6, + 0x5f, 0x3e, 0xba, 0x7a, 0x30, 0x16, 0x39, 0xc0, 0x2b, 0x8a, 0x52, 0x36, + 0x25, 0x19, 0x5d, 0xf4, +}; +static const struct drbg_kat_pr_false kat1457_t = { + 1, kat1457_entropyin, kat1457_nonce, kat1457_persstr, + kat1457_entropyinreseed, kat1457_addinreseed, kat1457_addin0, + kat1457_addin1, kat1457_retbits +}; +static const struct drbg_kat kat1457 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1457_t +}; + +static const unsigned char kat1458_entropyin[] = { + 0x25, 0xc9, 0x0d, 0x87, 0xe7, 0x7d, 0x6c, 0x27, 0x97, 0xe5, 0xdc, 0x27, + 0xd0, 0x4c, 0xf7, 0x32, +}; +static const unsigned char kat1458_nonce[] = { + 0x64, 0xe9, 0xf6, 0x73, 0x3d, 0x25, 0x1c, 0x65, +}; +static const unsigned char kat1458_persstr[] = {0}; +static const unsigned char kat1458_entropyinreseed[] = { + 0x13, 0xcb, 0x8b, 0xa8, 0xb3, 0x46, 0xc4, 0xef, 0xaf, 0xaa, 0xf8, 0x4e, + 0x6a, 0xbf, 0xaa, 0x4a, +}; +static const unsigned char kat1458_addinreseed[] = { + 0x30, 0x62, 0x7e, 0x21, 0xe4, 0x58, 0x90, 0xb7, 0xa9, 0xb3, 0xf3, 0x19, + 0x21, 0x0c, 0x28, 0xb4, +}; +static const unsigned char kat1458_addin0[] = { + 0xd6, 0x09, 0x04, 0x86, 0xba, 0xa3, 0xb3, 0x6f, 0x41, 0x90, 0x30, 0xd5, + 0x49, 0x4f, 0xe2, 0x4f, +}; +static const unsigned char kat1458_addin1[] = { + 0x23, 0x1f, 0x2a, 0xa8, 0xf0, 0xe2, 0x54, 0xf9, 0x2d, 0xaa, 0x38, 0xc0, + 0x4e, 0x8d, 0xc9, 0xaa, +}; +static const unsigned char kat1458_retbits[] = { + 0xda, 0x1f, 0x07, 0xfb, 0x23, 0x29, 0x5e, 0xc1, 0x7e, 0x31, 0x43, 0xfd, + 0xc0, 0x3a, 0xa3, 0x99, 0x4c, 0xd5, 0xa8, 0x8d, 0xcd, 0xa3, 0xb5, 0x0e, + 0x17, 0xa9, 0xc1, 0x3d, 0x85, 0x9c, 0xf2, 0xd7, 0xc9, 0x0d, 0x0d, 0x39, + 0xe0, 0x4e, 0x13, 0xd3, 0x18, 0x03, 0xd7, 0xf1, 0xc9, 0xec, 0x47, 0xbe, + 0x15, 0xa5, 0x56, 0x02, 0x1e, 0x83, 0xde, 0x46, 0x4b, 0x18, 0x3d, 0x43, + 0x61, 0x71, 0xff, 0x72, +}; +static const struct drbg_kat_pr_false kat1458_t = { + 2, kat1458_entropyin, kat1458_nonce, kat1458_persstr, + kat1458_entropyinreseed, kat1458_addinreseed, kat1458_addin0, + kat1458_addin1, kat1458_retbits +}; +static const struct drbg_kat kat1458 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1458_t +}; + +static const unsigned char kat1459_entropyin[] = { + 0x68, 0x5d, 0x89, 0xe5, 0x47, 0xbd, 0x79, 0x7f, 0xc0, 0xb7, 0x86, 0x62, + 0x82, 0x5e, 0xc5, 0x30, +}; +static const unsigned char kat1459_nonce[] = { + 0x29, 0x47, 0x67, 0x58, 0xb4, 0xcd, 0x07, 0x27, +}; +static const unsigned char kat1459_persstr[] = {0}; +static const unsigned char kat1459_entropyinreseed[] = { + 0x82, 0xd8, 0xf6, 0x2b, 0x1d, 0x15, 0x93, 0x22, 0x4c, 0x26, 0x9f, 0x49, + 0xf3, 0xf2, 0xed, 0x95, +}; +static const unsigned char kat1459_addinreseed[] = { + 0x1a, 0xbc, 0xa0, 0xdf, 0xea, 0x4b, 0x28, 0x65, 0x97, 0x64, 0xa8, 0x5a, + 0x30, 0xb5, 0x90, 0xc1, +}; +static const unsigned char kat1459_addin0[] = { + 0xb8, 0x47, 0x89, 0x14, 0xd9, 0x19, 0xec, 0x5c, 0xc4, 0xd3, 0xb4, 0xf8, + 0x3b, 0xf2, 0x4e, 0xe1, +}; +static const unsigned char kat1459_addin1[] = { + 0xac, 0x57, 0xc3, 0x88, 0xd1, 0xa9, 0x59, 0x90, 0x24, 0xc3, 0x01, 0xf7, + 0xe1, 0x6d, 0xd7, 0x6c, +}; +static const unsigned char kat1459_retbits[] = { + 0x0d, 0xb2, 0x21, 0x81, 0x9e, 0xcc, 0xb0, 0x9c, 0xc0, 0x79, 0xb8, 0x87, + 0xf5, 0xb7, 0x73, 0x81, 0xd4, 0x89, 0xf9, 0xfe, 0x9e, 0x25, 0xe5, 0x7f, + 0xb1, 0xc8, 0x82, 0x3f, 0xc8, 0xeb, 0x12, 0xea, 0xef, 0x5d, 0xce, 0x0e, + 0x1a, 0x91, 0xc2, 0xa6, 0x98, 0x3c, 0x8b, 0x20, 0x11, 0x5e, 0x54, 0x47, + 0xd9, 0xfc, 0x67, 0x19, 0xea, 0x22, 0x9d, 0x98, 0xa6, 0x8c, 0x79, 0xc5, + 0xca, 0x26, 0x94, 0x0e, +}; +static const struct drbg_kat_pr_false kat1459_t = { + 3, kat1459_entropyin, kat1459_nonce, kat1459_persstr, + kat1459_entropyinreseed, kat1459_addinreseed, kat1459_addin0, + kat1459_addin1, kat1459_retbits +}; +static const struct drbg_kat kat1459 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1459_t +}; + +static const unsigned char kat1460_entropyin[] = { + 0x5a, 0x37, 0x06, 0x86, 0x0a, 0x27, 0x7e, 0x90, 0x90, 0x06, 0x79, 0x2b, + 0xe9, 0x89, 0xd6, 0xae, +}; +static const unsigned char kat1460_nonce[] = { + 0x73, 0x9c, 0x68, 0x13, 0xda, 0xbf, 0x35, 0x0c, +}; +static const unsigned char kat1460_persstr[] = {0}; +static const unsigned char kat1460_entropyinreseed[] = { + 0x5e, 0xa8, 0x03, 0x01, 0x1a, 0x5e, 0xe4, 0xd4, 0x26, 0xc1, 0x28, 0x58, + 0x89, 0xa1, 0xad, 0xc6, +}; +static const unsigned char kat1460_addinreseed[] = { + 0xd3, 0x73, 0x8e, 0xa4, 0x96, 0x66, 0x79, 0xa2, 0xb4, 0xfd, 0x28, 0x59, + 0x4c, 0x0b, 0xfe, 0x31, +}; +static const unsigned char kat1460_addin0[] = { + 0x9f, 0xf2, 0x4c, 0xd5, 0xb8, 0xe9, 0x71, 0x6f, 0xfc, 0x96, 0x51, 0x2d, + 0x84, 0xe1, 0x9e, 0xca, +}; +static const unsigned char kat1460_addin1[] = { + 0x4e, 0xe9, 0xd4, 0x68, 0xca, 0x01, 0x6d, 0x92, 0xef, 0x40, 0xa8, 0x8b, + 0xb4, 0x16, 0x87, 0xb7, +}; +static const unsigned char kat1460_retbits[] = { + 0x28, 0x95, 0xa3, 0x3b, 0x3a, 0x46, 0xd7, 0x30, 0xd3, 0x3c, 0x0d, 0xc7, + 0x09, 0xda, 0x66, 0x68, 0x23, 0x6c, 0xf7, 0x02, 0xa4, 0xc8, 0xbb, 0xb7, + 0x0c, 0x7d, 0xfe, 0x18, 0x2a, 0xb9, 0xf5, 0x16, 0x30, 0xb6, 0x19, 0x3f, + 0x3a, 0x05, 0x86, 0xd5, 0x56, 0x97, 0x59, 0xff, 0xb0, 0x7c, 0xf3, 0xfa, + 0x57, 0x23, 0x5e, 0x84, 0x18, 0x8b, 0xc1, 0x7f, 0xf3, 0xb1, 0x40, 0x2a, + 0x26, 0x2e, 0x5f, 0x5d, +}; +static const struct drbg_kat_pr_false kat1460_t = { + 4, kat1460_entropyin, kat1460_nonce, kat1460_persstr, + kat1460_entropyinreseed, kat1460_addinreseed, kat1460_addin0, + kat1460_addin1, kat1460_retbits +}; +static const struct drbg_kat kat1460 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1460_t +}; + +static const unsigned char kat1461_entropyin[] = { + 0xfa, 0x23, 0x2a, 0x56, 0xf2, 0x40, 0x71, 0xf5, 0xbb, 0x27, 0x4d, 0x08, + 0xf3, 0x0d, 0xbb, 0xcd, +}; +static const unsigned char kat1461_nonce[] = { + 0x39, 0x49, 0x71, 0x4e, 0x12, 0x0b, 0xc1, 0xa2, +}; +static const unsigned char kat1461_persstr[] = {0}; +static const unsigned char kat1461_entropyinreseed[] = { + 0x7a, 0xee, 0xd4, 0xb2, 0x0a, 0x2f, 0xf2, 0x1b, 0x04, 0x06, 0x4b, 0xd4, + 0xf7, 0xc6, 0xc7, 0xbf, +}; +static const unsigned char kat1461_addinreseed[] = { + 0x0d, 0x51, 0x2a, 0x99, 0x8c, 0x51, 0x73, 0xc7, 0x1a, 0xae, 0x64, 0xf9, + 0xcd, 0x37, 0xad, 0xa8, +}; +static const unsigned char kat1461_addin0[] = { + 0x78, 0x4c, 0x95, 0x23, 0xfc, 0xc8, 0xec, 0x23, 0x8a, 0x40, 0xe7, 0xf2, + 0xf1, 0x64, 0xde, 0x49, +}; +static const unsigned char kat1461_addin1[] = { + 0x97, 0xfc, 0xea, 0x81, 0x96, 0xb1, 0xe4, 0x2c, 0x6b, 0xc9, 0x14, 0x5e, + 0xf9, 0xf8, 0x4e, 0x63, +}; +static const unsigned char kat1461_retbits[] = { + 0x7c, 0x21, 0xd0, 0x6a, 0xf2, 0xe5, 0xde, 0x04, 0xc5, 0x84, 0x5a, 0x63, + 0xe1, 0x8a, 0xc7, 0xc2, 0x6c, 0xbe, 0x8a, 0xa4, 0x83, 0x91, 0x83, 0xf5, + 0x2c, 0x0a, 0x65, 0xc2, 0x96, 0x58, 0x4d, 0x22, 0x3d, 0xad, 0x6f, 0x46, + 0xb5, 0xeb, 0xaa, 0x24, 0xcc, 0xb3, 0xef, 0x9e, 0xf5, 0x52, 0xa6, 0x86, + 0xeb, 0xba, 0xcd, 0x49, 0x00, 0x7e, 0x50, 0x18, 0x51, 0x6d, 0x47, 0x78, + 0xac, 0x56, 0x59, 0xc4, +}; +static const struct drbg_kat_pr_false kat1461_t = { + 5, kat1461_entropyin, kat1461_nonce, kat1461_persstr, + kat1461_entropyinreseed, kat1461_addinreseed, kat1461_addin0, + kat1461_addin1, kat1461_retbits +}; +static const struct drbg_kat kat1461 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1461_t +}; + +static const unsigned char kat1462_entropyin[] = { + 0x85, 0xf2, 0xfa, 0x44, 0xbb, 0xb7, 0xdc, 0xa1, 0xbb, 0x39, 0x07, 0x58, + 0x57, 0x7d, 0xb4, 0x23, +}; +static const unsigned char kat1462_nonce[] = { + 0x94, 0x10, 0xd4, 0x60, 0xfe, 0xe6, 0x94, 0x33, +}; +static const unsigned char kat1462_persstr[] = {0}; +static const unsigned char kat1462_entropyinreseed[] = { + 0x22, 0xbb, 0x05, 0x70, 0xe4, 0x62, 0xa6, 0x35, 0x64, 0x35, 0x9c, 0xbc, + 0x80, 0x5f, 0x21, 0x87, +}; +static const unsigned char kat1462_addinreseed[] = { + 0x9a, 0x49, 0xe3, 0xcd, 0x41, 0x33, 0x84, 0x3c, 0x38, 0x7b, 0x4d, 0xa9, + 0xc6, 0xb0, 0x48, 0xe1, +}; +static const unsigned char kat1462_addin0[] = { + 0xf5, 0x5b, 0xfa, 0xc5, 0xb9, 0x3b, 0x60, 0xcb, 0xe6, 0x5e, 0x81, 0x8e, + 0xcd, 0xd5, 0xb8, 0x85, +}; +static const unsigned char kat1462_addin1[] = { + 0x4a, 0x25, 0xf1, 0xfd, 0xba, 0x66, 0xa5, 0x2e, 0xa2, 0x26, 0xa9, 0x84, + 0x10, 0x13, 0x99, 0x66, +}; +static const unsigned char kat1462_retbits[] = { + 0x90, 0xb2, 0x0a, 0xcd, 0x62, 0x03, 0xf7, 0xe9, 0x45, 0x99, 0x35, 0x92, + 0xbc, 0x16, 0x85, 0x09, 0x98, 0x76, 0xc6, 0xe3, 0xb7, 0x01, 0x6b, 0xdd, + 0x35, 0xff, 0x40, 0xd0, 0x93, 0x62, 0x76, 0x50, 0x13, 0x8c, 0xb5, 0x5d, + 0x0d, 0x9d, 0x90, 0x73, 0x39, 0xb1, 0xca, 0x28, 0x0c, 0x38, 0x37, 0x4f, + 0x85, 0xde, 0x1d, 0x59, 0x05, 0x65, 0xf9, 0x57, 0x15, 0x82, 0xa9, 0xb9, + 0x2c, 0x66, 0x39, 0x04, +}; +static const struct drbg_kat_pr_false kat1462_t = { + 6, kat1462_entropyin, kat1462_nonce, kat1462_persstr, + kat1462_entropyinreseed, kat1462_addinreseed, kat1462_addin0, + kat1462_addin1, kat1462_retbits +}; +static const struct drbg_kat kat1462 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1462_t +}; + +static const unsigned char kat1463_entropyin[] = { + 0xd3, 0x79, 0x39, 0x53, 0x75, 0xd6, 0x1d, 0xdb, 0x6e, 0xc6, 0xa1, 0x56, + 0xdb, 0xed, 0x82, 0xf4, +}; +static const unsigned char kat1463_nonce[] = { + 0x02, 0x3d, 0x15, 0xf0, 0xc2, 0xe6, 0x52, 0x0f, +}; +static const unsigned char kat1463_persstr[] = {0}; +static const unsigned char kat1463_entropyinreseed[] = { + 0xbd, 0x64, 0x6f, 0x98, 0xfd, 0x89, 0xf2, 0xda, 0xf0, 0xbc, 0x2d, 0xbf, + 0x98, 0xc1, 0x63, 0xb8, +}; +static const unsigned char kat1463_addinreseed[] = { + 0xb3, 0xcb, 0x86, 0x2d, 0x24, 0x1a, 0x39, 0x0a, 0xcc, 0xcf, 0x1e, 0x52, + 0x15, 0xb6, 0x85, 0x68, +}; +static const unsigned char kat1463_addin0[] = { + 0xac, 0x3f, 0x73, 0x9d, 0x30, 0x52, 0x6a, 0x58, 0xb2, 0x3a, 0x7c, 0xb7, + 0xde, 0x91, 0x5c, 0x55, +}; +static const unsigned char kat1463_addin1[] = { + 0x35, 0x93, 0xa0, 0x16, 0x4a, 0x6b, 0xcb, 0x02, 0xfa, 0x32, 0xa4, 0x52, + 0xd2, 0x68, 0xd1, 0x99, +}; +static const unsigned char kat1463_retbits[] = { + 0x12, 0x24, 0xce, 0x5b, 0x56, 0x85, 0x30, 0x64, 0xb7, 0x62, 0x62, 0x41, + 0x7c, 0xcf, 0xd5, 0x2d, 0x18, 0xc2, 0x55, 0x1c, 0x2c, 0x1f, 0x1d, 0xd5, + 0x9d, 0x6d, 0x70, 0x74, 0x29, 0x3a, 0xfe, 0x35, 0x12, 0x90, 0xcc, 0xa1, + 0x8e, 0x14, 0x8e, 0x12, 0xfd, 0x2d, 0x0c, 0x03, 0x50, 0x6f, 0x69, 0x3a, + 0xbf, 0xcc, 0x28, 0xd0, 0xf2, 0x15, 0x67, 0x63, 0x4f, 0xe2, 0x16, 0x6d, + 0xd3, 0x10, 0xb6, 0x0e, +}; +static const struct drbg_kat_pr_false kat1463_t = { + 7, kat1463_entropyin, kat1463_nonce, kat1463_persstr, + kat1463_entropyinreseed, kat1463_addinreseed, kat1463_addin0, + kat1463_addin1, kat1463_retbits +}; +static const struct drbg_kat kat1463 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1463_t +}; + +static const unsigned char kat1464_entropyin[] = { + 0x19, 0x17, 0xad, 0xc4, 0x0a, 0x5e, 0x12, 0x44, 0xba, 0x80, 0xb1, 0x41, + 0x32, 0x2e, 0x5c, 0xc0, +}; +static const unsigned char kat1464_nonce[] = { + 0x0e, 0x6b, 0xf2, 0xe2, 0x97, 0xd6, 0x54, 0xb2, +}; +static const unsigned char kat1464_persstr[] = {0}; +static const unsigned char kat1464_entropyinreseed[] = { + 0xbe, 0x43, 0xba, 0xc3, 0x69, 0xfa, 0x80, 0xde, 0x6a, 0x20, 0xb7, 0x84, + 0xca, 0x1e, 0x46, 0xa1, +}; +static const unsigned char kat1464_addinreseed[] = { + 0xc9, 0x0e, 0x30, 0x31, 0x0f, 0x33, 0xee, 0x1a, 0x92, 0xc6, 0x2a, 0x4c, + 0x34, 0x5e, 0x0d, 0x97, +}; +static const unsigned char kat1464_addin0[] = { + 0xcb, 0x46, 0xd6, 0xd4, 0x01, 0x3d, 0xbe, 0x30, 0x46, 0xa6, 0xc8, 0x1f, + 0x4f, 0xb1, 0x40, 0x5f, +}; +static const unsigned char kat1464_addin1[] = { + 0x2a, 0xea, 0x60, 0x3c, 0xfb, 0xb4, 0x2c, 0x55, 0xf6, 0x41, 0x90, 0x33, + 0x44, 0xe2, 0x8a, 0x78, +}; +static const unsigned char kat1464_retbits[] = { + 0xe0, 0x8a, 0xaa, 0x8a, 0x1b, 0xdd, 0x54, 0x1b, 0xb3, 0xa1, 0x21, 0x6b, + 0xb9, 0x9b, 0xfb, 0xa3, 0x8c, 0x9a, 0x91, 0x71, 0x83, 0xc7, 0x3f, 0x62, + 0x37, 0x35, 0xe5, 0xd9, 0xf5, 0xcd, 0xd3, 0x05, 0xc3, 0x39, 0x75, 0xcc, + 0xc6, 0x99, 0xe1, 0x8a, 0x69, 0x9d, 0x55, 0xdf, 0xc8, 0xa7, 0x2c, 0x2d, + 0xf0, 0xd6, 0x66, 0x03, 0x22, 0x15, 0xcf, 0x79, 0xd2, 0xe8, 0x79, 0x30, + 0xef, 0x86, 0x50, 0xa0, +}; +static const struct drbg_kat_pr_false kat1464_t = { + 8, kat1464_entropyin, kat1464_nonce, kat1464_persstr, + kat1464_entropyinreseed, kat1464_addinreseed, kat1464_addin0, + kat1464_addin1, kat1464_retbits +}; +static const struct drbg_kat kat1464 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1464_t +}; + +static const unsigned char kat1465_entropyin[] = { + 0xc9, 0x96, 0x3a, 0x15, 0x51, 0x76, 0x4f, 0xe0, 0x45, 0x82, 0x8a, 0x64, + 0x87, 0xbe, 0xaa, 0xc0, +}; +static const unsigned char kat1465_nonce[] = { + 0x08, 0xcd, 0x69, 0x39, 0xf8, 0x58, 0x9a, 0x85, +}; +static const unsigned char kat1465_persstr[] = {0}; +static const unsigned char kat1465_entropyinreseed[] = { + 0x16, 0xcc, 0x35, 0x15, 0xb1, 0x17, 0xf5, 0x33, 0x80, 0x9a, 0x80, 0xc5, + 0x1f, 0x4b, 0x7b, 0x51, +}; +static const unsigned char kat1465_addinreseed[] = { + 0xf5, 0x3d, 0xf1, 0x2e, 0xdb, 0x28, 0x1c, 0x00, 0x7b, 0xcb, 0xb6, 0x12, + 0x61, 0x9f, 0x26, 0x5f, +}; +static const unsigned char kat1465_addin0[] = { + 0xe2, 0x67, 0x06, 0x62, 0x09, 0xa7, 0xcf, 0xd6, 0x84, 0x8c, 0x20, 0xf6, + 0x10, 0x5a, 0x73, 0x9c, +}; +static const unsigned char kat1465_addin1[] = { + 0x26, 0xfa, 0x50, 0xe1, 0xb3, 0xcb, 0x65, 0xed, 0xbc, 0x6d, 0xda, 0x18, + 0x47, 0x99, 0x1f, 0xeb, +}; +static const unsigned char kat1465_retbits[] = { + 0xf9, 0x47, 0xc6, 0xb0, 0x58, 0xa8, 0x66, 0x8a, 0xf5, 0x2b, 0x2a, 0x6d, + 0x4e, 0x24, 0x6f, 0x65, 0xbf, 0x51, 0x22, 0xbf, 0xe8, 0x8d, 0x6c, 0xeb, + 0xf9, 0x68, 0x7f, 0xed, 0x3b, 0xdd, 0x6b, 0xd5, 0x28, 0x47, 0x56, 0x52, + 0xda, 0x50, 0xf0, 0x90, 0x73, 0x95, 0x06, 0x58, 0xaf, 0x08, 0x98, 0x6e, + 0x24, 0x18, 0xfd, 0x2f, 0x48, 0x72, 0x57, 0xd6, 0x59, 0xab, 0xe9, 0x41, + 0x58, 0xdb, 0x27, 0xba, +}; +static const struct drbg_kat_pr_false kat1465_t = { + 9, kat1465_entropyin, kat1465_nonce, kat1465_persstr, + kat1465_entropyinreseed, kat1465_addinreseed, kat1465_addin0, + kat1465_addin1, kat1465_retbits +}; +static const struct drbg_kat kat1465 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1465_t +}; + +static const unsigned char kat1466_entropyin[] = { + 0x39, 0xec, 0xf1, 0xb6, 0xa0, 0xb4, 0xcc, 0x2f, 0xf0, 0x9f, 0x57, 0x00, + 0x56, 0xd1, 0xa8, 0xcf, +}; +static const unsigned char kat1466_nonce[] = { + 0xb3, 0x15, 0xf7, 0x64, 0x0b, 0xcc, 0xc2, 0xa0, +}; +static const unsigned char kat1466_persstr[] = {0}; +static const unsigned char kat1466_entropyinreseed[] = { + 0xd7, 0x45, 0xe6, 0x14, 0xcc, 0x56, 0x31, 0x5a, 0xc7, 0x5c, 0x7a, 0xae, + 0x55, 0x30, 0x26, 0xb9, +}; +static const unsigned char kat1466_addinreseed[] = { + 0xc3, 0xc6, 0x61, 0x9e, 0x82, 0x9b, 0x70, 0x2c, 0x84, 0x5b, 0x89, 0x14, + 0xb1, 0x57, 0xae, 0x7d, +}; +static const unsigned char kat1466_addin0[] = { + 0xac, 0x85, 0x82, 0x3f, 0xc3, 0x64, 0x59, 0x17, 0x05, 0x83, 0xfc, 0x37, + 0x13, 0xcf, 0x90, 0xb7, +}; +static const unsigned char kat1466_addin1[] = { + 0x5e, 0x0f, 0x42, 0x29, 0xcf, 0xd0, 0x12, 0x41, 0x68, 0x5a, 0xe1, 0x8b, + 0x93, 0xd7, 0x0b, 0xed, +}; +static const unsigned char kat1466_retbits[] = { + 0x46, 0x0c, 0xfe, 0xbc, 0x9d, 0x30, 0x1c, 0x5e, 0x5a, 0xa6, 0x83, 0x28, + 0xb3, 0xb5, 0x11, 0x43, 0xde, 0x26, 0xeb, 0xb4, 0x79, 0xff, 0x92, 0xdb, + 0x1d, 0x6b, 0x49, 0x7e, 0x68, 0x50, 0x90, 0x08, 0xab, 0xc4, 0xfd, 0x69, + 0x0e, 0x61, 0x10, 0x7e, 0x2a, 0xfa, 0x15, 0x36, 0x7f, 0x5d, 0x74, 0x1b, + 0x3a, 0x0f, 0xb0, 0x04, 0x51, 0x31, 0xc0, 0x50, 0x41, 0xb2, 0xd8, 0x05, + 0xca, 0xf7, 0xef, 0xcb, +}; +static const struct drbg_kat_pr_false kat1466_t = { + 10, kat1466_entropyin, kat1466_nonce, kat1466_persstr, + kat1466_entropyinreseed, kat1466_addinreseed, kat1466_addin0, + kat1466_addin1, kat1466_retbits +}; +static const struct drbg_kat kat1466 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1466_t +}; + +static const unsigned char kat1467_entropyin[] = { + 0x88, 0xfe, 0x06, 0x58, 0x04, 0x7c, 0xfb, 0x81, 0xa7, 0xae, 0x0d, 0x84, + 0xcd, 0xba, 0x01, 0x41, +}; +static const unsigned char kat1467_nonce[] = { + 0xf8, 0x87, 0x91, 0xd3, 0x2b, 0x88, 0xd3, 0xaf, +}; +static const unsigned char kat1467_persstr[] = {0}; +static const unsigned char kat1467_entropyinreseed[] = { + 0xad, 0x77, 0x4c, 0xf5, 0xa5, 0x17, 0x28, 0x4a, 0xd9, 0x8b, 0xd9, 0xc4, + 0xe6, 0xbc, 0xac, 0x4b, +}; +static const unsigned char kat1467_addinreseed[] = { + 0xe6, 0x3c, 0x91, 0x63, 0x3b, 0xfa, 0x70, 0xce, 0x95, 0xae, 0x76, 0x74, + 0x18, 0x3e, 0x13, 0x7a, +}; +static const unsigned char kat1467_addin0[] = { + 0xe0, 0x3e, 0x1f, 0xa7, 0xb6, 0x4e, 0x47, 0x5f, 0x12, 0x6b, 0xec, 0x1d, + 0xb0, 0x2c, 0xa9, 0x9d, +}; +static const unsigned char kat1467_addin1[] = { + 0xc2, 0xe7, 0x52, 0xef, 0x80, 0xdb, 0x56, 0xc5, 0x7f, 0x60, 0xc2, 0x96, + 0x12, 0xb8, 0xf9, 0xff, +}; +static const unsigned char kat1467_retbits[] = { + 0x8f, 0xbe, 0x91, 0x06, 0x0a, 0x48, 0x0f, 0xea, 0xcd, 0x4c, 0x63, 0xf9, + 0x2b, 0x31, 0x8f, 0x97, 0x03, 0xf8, 0x88, 0x9a, 0xe9, 0xf4, 0xd5, 0xa1, + 0xd0, 0x25, 0x3f, 0x90, 0xf5, 0xa3, 0xe7, 0x8a, 0xa6, 0x0b, 0xbf, 0xac, + 0x0e, 0xc1, 0x5e, 0x97, 0x24, 0x4e, 0xff, 0x29, 0x46, 0xec, 0x14, 0xe6, + 0x99, 0xd0, 0x6f, 0xf9, 0xcc, 0x87, 0x06, 0xc0, 0x58, 0x2d, 0xfd, 0x08, + 0xb5, 0x13, 0x84, 0x85, +}; +static const struct drbg_kat_pr_false kat1467_t = { + 11, kat1467_entropyin, kat1467_nonce, kat1467_persstr, + kat1467_entropyinreseed, kat1467_addinreseed, kat1467_addin0, + kat1467_addin1, kat1467_retbits +}; +static const struct drbg_kat kat1467 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1467_t +}; + +static const unsigned char kat1468_entropyin[] = { + 0xa3, 0x26, 0xb3, 0x55, 0x7e, 0xc1, 0xc1, 0xf9, 0xe8, 0x72, 0x21, 0x1d, + 0x0e, 0xe4, 0x8e, 0x81, +}; +static const unsigned char kat1468_nonce[] = { + 0xfc, 0xc9, 0x33, 0x6b, 0x24, 0x6f, 0x54, 0x8c, +}; +static const unsigned char kat1468_persstr[] = {0}; +static const unsigned char kat1468_entropyinreseed[] = { + 0x00, 0x06, 0x2d, 0xac, 0xc2, 0x7f, 0x5f, 0x67, 0x23, 0x45, 0x88, 0xd6, + 0x8b, 0x85, 0x47, 0xe6, +}; +static const unsigned char kat1468_addinreseed[] = { + 0xc5, 0xe4, 0xb9, 0x29, 0x06, 0x93, 0xf3, 0x56, 0xea, 0xb6, 0x55, 0xda, + 0x19, 0xd5, 0xa6, 0xf9, +}; +static const unsigned char kat1468_addin0[] = { + 0xf9, 0xc7, 0x91, 0xd8, 0x74, 0x11, 0xa7, 0xe7, 0xc6, 0x7d, 0x9a, 0xb8, + 0x98, 0x7e, 0x05, 0x5d, +}; +static const unsigned char kat1468_addin1[] = { + 0x94, 0xf8, 0xba, 0xb2, 0xda, 0xa9, 0xe0, 0xbd, 0x50, 0x78, 0xcd, 0xed, + 0x05, 0xdf, 0x26, 0x94, +}; +static const unsigned char kat1468_retbits[] = { + 0x3d, 0x0a, 0xea, 0x7e, 0x34, 0x7d, 0x33, 0x15, 0xc5, 0x56, 0x1c, 0x4a, + 0x7d, 0xbd, 0xfe, 0x1b, 0x13, 0x52, 0xc1, 0xa4, 0x76, 0xea, 0x58, 0xcb, + 0x35, 0xa4, 0x95, 0x3d, 0x53, 0xda, 0x74, 0x85, 0x3a, 0xdd, 0xf4, 0xd2, + 0x3c, 0xfc, 0xa3, 0xb2, 0x6e, 0x76, 0xc0, 0xef, 0xaa, 0x83, 0x0d, 0x1c, + 0x8d, 0xc2, 0x32, 0xd4, 0x2e, 0xe8, 0xb9, 0x61, 0x42, 0x8a, 0x8a, 0x52, + 0xb7, 0xde, 0xa8, 0x89, +}; +static const struct drbg_kat_pr_false kat1468_t = { + 12, kat1468_entropyin, kat1468_nonce, kat1468_persstr, + kat1468_entropyinreseed, kat1468_addinreseed, kat1468_addin0, + kat1468_addin1, kat1468_retbits +}; +static const struct drbg_kat kat1468 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1468_t +}; + +static const unsigned char kat1469_entropyin[] = { + 0x69, 0xbc, 0x64, 0x17, 0x57, 0x03, 0xd4, 0x09, 0x62, 0x78, 0xd7, 0x16, + 0x00, 0x2a, 0x4c, 0x6d, +}; +static const unsigned char kat1469_nonce[] = { + 0x06, 0x30, 0xcb, 0xea, 0x0b, 0xf1, 0x23, 0x71, +}; +static const unsigned char kat1469_persstr[] = {0}; +static const unsigned char kat1469_entropyinreseed[] = { + 0xe0, 0x97, 0xef, 0x5e, 0xb7, 0x39, 0x99, 0x83, 0xd3, 0xea, 0x0a, 0x13, + 0x08, 0x79, 0xee, 0x0b, +}; +static const unsigned char kat1469_addinreseed[] = { + 0xa2, 0x39, 0x61, 0xca, 0x15, 0x17, 0xb2, 0xe7, 0x68, 0x1c, 0xd5, 0x03, + 0xde, 0x2a, 0x94, 0x75, +}; +static const unsigned char kat1469_addin0[] = { + 0x7c, 0x34, 0xeb, 0xe6, 0x7e, 0xc4, 0x79, 0xff, 0x68, 0xba, 0x2f, 0x1c, + 0x9f, 0x30, 0x1a, 0xac, +}; +static const unsigned char kat1469_addin1[] = { + 0xe3, 0x89, 0x6b, 0x79, 0xa8, 0xbf, 0x25, 0x33, 0x25, 0xbb, 0xa6, 0x32, + 0xe2, 0x1b, 0x90, 0x20, +}; +static const unsigned char kat1469_retbits[] = { + 0xbc, 0x9a, 0x7c, 0x15, 0x7b, 0x4d, 0xcc, 0xe9, 0xdf, 0x14, 0x1f, 0x49, + 0xdb, 0x83, 0x9e, 0x4b, 0x40, 0xcc, 0x72, 0x5b, 0xb2, 0xf4, 0x18, 0x7b, + 0xfe, 0x07, 0xb6, 0xc3, 0xbe, 0xc4, 0x6e, 0xa6, 0x34, 0x3f, 0x4a, 0x73, + 0xf4, 0xc1, 0x9f, 0x17, 0xf6, 0x7b, 0xb0, 0x40, 0x96, 0xe0, 0xae, 0xba, + 0x64, 0x57, 0xcb, 0x51, 0x75, 0xfe, 0x66, 0x87, 0xd8, 0xe5, 0x66, 0xee, + 0x1d, 0x91, 0xca, 0x16, +}; +static const struct drbg_kat_pr_false kat1469_t = { + 13, kat1469_entropyin, kat1469_nonce, kat1469_persstr, + kat1469_entropyinreseed, kat1469_addinreseed, kat1469_addin0, + kat1469_addin1, kat1469_retbits +}; +static const struct drbg_kat kat1469 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1469_t +}; + +static const unsigned char kat1470_entropyin[] = { + 0x7d, 0x65, 0x9c, 0xf5, 0xe1, 0x83, 0x75, 0xf8, 0x0b, 0xb2, 0x9e, 0x58, + 0xd8, 0xeb, 0xe5, 0x08, +}; +static const unsigned char kat1470_nonce[] = { + 0xf7, 0x11, 0x42, 0x3c, 0x8a, 0x3b, 0x0d, 0x2d, +}; +static const unsigned char kat1470_persstr[] = {0}; +static const unsigned char kat1470_entropyinreseed[] = { + 0x61, 0x57, 0x04, 0x70, 0xa9, 0xfb, 0x75, 0x61, 0x13, 0xd3, 0x23, 0x77, + 0xd4, 0x99, 0x65, 0xf8, +}; +static const unsigned char kat1470_addinreseed[] = { + 0x0d, 0x3d, 0x3c, 0xb2, 0xd4, 0xd3, 0xc4, 0x30, 0x0c, 0x58, 0x08, 0x1e, + 0xbd, 0x37, 0x85, 0xeb, +}; +static const unsigned char kat1470_addin0[] = { + 0x73, 0x58, 0xcc, 0xaf, 0xf3, 0x70, 0x94, 0xc3, 0xc1, 0xa6, 0x88, 0x00, + 0x11, 0xa7, 0x20, 0x69, +}; +static const unsigned char kat1470_addin1[] = { + 0x48, 0xca, 0x1a, 0x7f, 0x96, 0xdc, 0x59, 0x18, 0xf9, 0xd9, 0xab, 0xd6, + 0x42, 0x3f, 0xdb, 0x8d, +}; +static const unsigned char kat1470_retbits[] = { + 0x69, 0x37, 0x79, 0x68, 0x13, 0x8d, 0x3d, 0x4e, 0xa4, 0x34, 0x26, 0xa0, + 0x25, 0x34, 0x2a, 0x58, 0x58, 0x6b, 0xef, 0x7a, 0xb2, 0x60, 0x2f, 0xe0, + 0x7d, 0x70, 0x50, 0x9e, 0x43, 0xd4, 0xc2, 0xf4, 0x96, 0x0c, 0x8e, 0xab, + 0x40, 0xb0, 0x0b, 0xbf, 0x0e, 0xb1, 0x20, 0x22, 0x34, 0x73, 0x76, 0x5f, + 0x48, 0x33, 0xbf, 0x22, 0x8b, 0x90, 0x7b, 0x79, 0x27, 0xb0, 0xf5, 0x36, + 0x42, 0x45, 0x2a, 0x81, +}; +static const struct drbg_kat_pr_false kat1470_t = { + 14, kat1470_entropyin, kat1470_nonce, kat1470_persstr, + kat1470_entropyinreseed, kat1470_addinreseed, kat1470_addin0, + kat1470_addin1, kat1470_retbits +}; +static const struct drbg_kat kat1470 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1470_t +}; + +static const unsigned char kat1471_entropyin[] = { + 0x07, 0x0d, 0x59, 0x63, 0x98, 0x73, 0xa5, 0x45, 0x27, 0x38, 0x22, 0x7b, + 0x76, 0x85, 0xd1, 0xa9, +}; +static const unsigned char kat1471_nonce[] = { + 0x74, 0x18, 0x1f, 0x3c, 0x22, 0xf6, 0x49, 0x20, +}; +static const unsigned char kat1471_persstr[] = { + 0x4e, 0x61, 0x79, 0xd4, 0xc2, 0x72, 0xa1, 0x4c, 0xf1, 0x3d, 0xf6, 0x5e, + 0xa3, 0xa6, 0xe5, 0x0f, +}; +static const unsigned char kat1471_entropyinreseed[] = { + 0x4a, 0x47, 0xc2, 0xf3, 0x85, 0x16, 0xb4, 0x6f, 0x00, 0x2e, 0x71, 0xda, + 0xed, 0x16, 0x9b, 0x5c, +}; +static const unsigned char kat1471_addinreseed[] = {0}; +static const unsigned char kat1471_addin0[] = {0}; +static const unsigned char kat1471_addin1[] = {0}; +static const unsigned char kat1471_retbits[] = { + 0x31, 0xc9, 0x91, 0x09, 0xf8, 0xc5, 0x10, 0x13, 0x3c, 0xd3, 0x96, 0xf9, + 0xbc, 0x2c, 0x12, 0xc0, 0x7c, 0xc1, 0x61, 0x5f, 0xa3, 0x09, 0x99, 0xaf, + 0xd7, 0xf2, 0x36, 0xfd, 0x40, 0x1a, 0x8b, 0xf2, 0x33, 0x38, 0xee, 0x1d, + 0x03, 0x5f, 0x83, 0xb7, 0xa2, 0x53, 0xdc, 0xee, 0x18, 0xfc, 0xa7, 0xf2, + 0xee, 0x96, 0xc6, 0xc2, 0xcd, 0x0c, 0xff, 0x02, 0x76, 0x70, 0x69, 0xaa, + 0x69, 0xd1, 0x3b, 0xe8, +}; +static const struct drbg_kat_pr_false kat1471_t = { + 0, kat1471_entropyin, kat1471_nonce, kat1471_persstr, + kat1471_entropyinreseed, kat1471_addinreseed, kat1471_addin0, + kat1471_addin1, kat1471_retbits +}; +static const struct drbg_kat kat1471 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1471_t +}; + +static const unsigned char kat1472_entropyin[] = { + 0xc6, 0xc0, 0x85, 0x3c, 0x72, 0x5e, 0x9d, 0xee, 0x29, 0xe9, 0x43, 0x1e, + 0x8d, 0xeb, 0x2c, 0x99, +}; +static const unsigned char kat1472_nonce[] = { + 0xe2, 0xbe, 0x4b, 0x86, 0xf6, 0x2a, 0x85, 0x6b, +}; +static const unsigned char kat1472_persstr[] = { + 0x5f, 0xb7, 0x25, 0x46, 0x2a, 0x22, 0x8c, 0x20, 0x26, 0xc1, 0xb8, 0x89, + 0x4d, 0xd3, 0x40, 0x6d, +}; +static const unsigned char kat1472_entropyinreseed[] = { + 0xb8, 0xb4, 0xb4, 0x43, 0x24, 0xa8, 0x12, 0x0c, 0x04, 0xd6, 0xea, 0xff, + 0xd0, 0x17, 0xfd, 0xa9, +}; +static const unsigned char kat1472_addinreseed[] = {0}; +static const unsigned char kat1472_addin0[] = {0}; +static const unsigned char kat1472_addin1[] = {0}; +static const unsigned char kat1472_retbits[] = { + 0xe3, 0xe7, 0x1a, 0x8d, 0xfe, 0x79, 0x99, 0x57, 0x0c, 0x94, 0xf7, 0x84, + 0x2a, 0x0f, 0xf9, 0x75, 0xf0, 0xe0, 0x3c, 0x32, 0x52, 0x9d, 0x69, 0x44, + 0x4c, 0x24, 0x6e, 0x82, 0x45, 0x8c, 0x87, 0x4a, 0x95, 0x1f, 0x2f, 0xe6, + 0xeb, 0xa3, 0x66, 0x71, 0x46, 0x09, 0x47, 0x3d, 0x59, 0x9e, 0x75, 0xb5, + 0xcd, 0x96, 0x93, 0xf7, 0x69, 0x69, 0x21, 0x44, 0x65, 0x2c, 0xc8, 0xfa, + 0x39, 0x36, 0x83, 0x00, +}; +static const struct drbg_kat_pr_false kat1472_t = { + 1, kat1472_entropyin, kat1472_nonce, kat1472_persstr, + kat1472_entropyinreseed, kat1472_addinreseed, kat1472_addin0, + kat1472_addin1, kat1472_retbits +}; +static const struct drbg_kat kat1472 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1472_t +}; + +static const unsigned char kat1473_entropyin[] = { + 0xb5, 0x18, 0x6d, 0xbe, 0x9a, 0x09, 0x9a, 0x85, 0xf5, 0xa3, 0x53, 0x43, + 0x71, 0x69, 0x38, 0x9b, +}; +static const unsigned char kat1473_nonce[] = { + 0xc6, 0x58, 0x10, 0xe4, 0xbe, 0xad, 0x9f, 0x2a, +}; +static const unsigned char kat1473_persstr[] = { + 0x4b, 0x0c, 0xc2, 0xed, 0x08, 0x99, 0xfa, 0xc0, 0x25, 0x37, 0x0a, 0x79, + 0x6f, 0xe8, 0x24, 0xe2, +}; +static const unsigned char kat1473_entropyinreseed[] = { + 0xb9, 0xe7, 0x03, 0xda, 0xa6, 0xba, 0x64, 0xe3, 0x3c, 0x68, 0x68, 0x00, + 0x9e, 0x65, 0xd3, 0x92, +}; +static const unsigned char kat1473_addinreseed[] = {0}; +static const unsigned char kat1473_addin0[] = {0}; +static const unsigned char kat1473_addin1[] = {0}; +static const unsigned char kat1473_retbits[] = { + 0x05, 0xe4, 0x52, 0xe3, 0xb8, 0xbc, 0x0b, 0x60, 0x01, 0x4f, 0x38, 0xc3, + 0x24, 0xcc, 0x02, 0xc5, 0x43, 0xa0, 0x0c, 0xaf, 0x49, 0x44, 0xb8, 0xa3, + 0x81, 0x55, 0x9c, 0x9d, 0x50, 0xd9, 0xc2, 0xf3, 0x42, 0xf5, 0x45, 0xad, + 0xf8, 0x7d, 0x86, 0x22, 0xed, 0x18, 0xf7, 0x06, 0x42, 0xa6, 0xdb, 0xe3, + 0xb5, 0xc7, 0xa0, 0x7a, 0xa0, 0x70, 0xec, 0xf4, 0x6a, 0xce, 0xa8, 0x13, + 0x53, 0xf7, 0x4d, 0xe9, +}; +static const struct drbg_kat_pr_false kat1473_t = { + 2, kat1473_entropyin, kat1473_nonce, kat1473_persstr, + kat1473_entropyinreseed, kat1473_addinreseed, kat1473_addin0, + kat1473_addin1, kat1473_retbits +}; +static const struct drbg_kat kat1473 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1473_t +}; + +static const unsigned char kat1474_entropyin[] = { + 0xc2, 0xf0, 0xcf, 0x9a, 0x5e, 0xae, 0x59, 0xb0, 0xcf, 0x9a, 0x2e, 0x72, + 0xb3, 0x65, 0x9f, 0x20, +}; +static const unsigned char kat1474_nonce[] = { + 0x85, 0x76, 0xf1, 0xf1, 0x74, 0x4e, 0x3a, 0x02, +}; +static const unsigned char kat1474_persstr[] = { + 0x7a, 0xb4, 0x46, 0x9c, 0x27, 0x13, 0x33, 0x62, 0x9c, 0x51, 0xa7, 0xc2, + 0xad, 0xce, 0x91, 0x32, +}; +static const unsigned char kat1474_entropyinreseed[] = { + 0x1c, 0xbb, 0xe2, 0xe1, 0x5d, 0x42, 0xb4, 0xea, 0x08, 0x6e, 0x70, 0x1e, + 0x25, 0xb5, 0x41, 0x52, +}; +static const unsigned char kat1474_addinreseed[] = {0}; +static const unsigned char kat1474_addin0[] = {0}; +static const unsigned char kat1474_addin1[] = {0}; +static const unsigned char kat1474_retbits[] = { + 0xba, 0x01, 0x0d, 0xe5, 0xf9, 0x0c, 0xfe, 0xee, 0x93, 0xd5, 0x87, 0x77, + 0x73, 0xca, 0x60, 0xcb, 0x3b, 0xed, 0x7c, 0xdc, 0x86, 0xa6, 0xb1, 0xed, + 0x67, 0xbf, 0xe2, 0xa0, 0x9c, 0x92, 0x80, 0xa9, 0xb1, 0x63, 0x5d, 0x6f, + 0x60, 0x05, 0xd0, 0x2b, 0x22, 0xb2, 0x20, 0x26, 0x18, 0x2d, 0x4c, 0xdb, + 0x86, 0x07, 0xd1, 0xe8, 0x5b, 0x92, 0xc5, 0xf3, 0xc5, 0x63, 0x85, 0xf9, + 0xce, 0x71, 0xe6, 0x49, +}; +static const struct drbg_kat_pr_false kat1474_t = { + 3, kat1474_entropyin, kat1474_nonce, kat1474_persstr, + kat1474_entropyinreseed, kat1474_addinreseed, kat1474_addin0, + kat1474_addin1, kat1474_retbits +}; +static const struct drbg_kat kat1474 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1474_t +}; + +static const unsigned char kat1475_entropyin[] = { + 0xf2, 0x9f, 0x11, 0x3e, 0x28, 0x1c, 0x1f, 0x9d, 0xd4, 0xa9, 0x07, 0xa5, + 0x8c, 0x32, 0xf2, 0x38, +}; +static const unsigned char kat1475_nonce[] = { + 0xce, 0xe1, 0x2a, 0xfb, 0xd1, 0x6b, 0xfb, 0xbf, +}; +static const unsigned char kat1475_persstr[] = { + 0x10, 0x37, 0x67, 0x76, 0x99, 0x2d, 0x0a, 0xef, 0x05, 0x87, 0xb3, 0x68, + 0x4a, 0x9a, 0x8a, 0x0d, +}; +static const unsigned char kat1475_entropyinreseed[] = { + 0xcd, 0xc7, 0xbe, 0xc4, 0x32, 0x90, 0x99, 0xf7, 0x8b, 0xb1, 0xc3, 0xf4, + 0xde, 0x17, 0x8c, 0x33, +}; +static const unsigned char kat1475_addinreseed[] = {0}; +static const unsigned char kat1475_addin0[] = {0}; +static const unsigned char kat1475_addin1[] = {0}; +static const unsigned char kat1475_retbits[] = { + 0xf9, 0xee, 0x43, 0x43, 0x0d, 0x02, 0x8d, 0xe1, 0xd4, 0x95, 0xd6, 0x1f, + 0x28, 0x26, 0x0a, 0x49, 0xd5, 0x2c, 0x64, 0xa1, 0x2f, 0x52, 0xdd, 0x38, + 0x46, 0x87, 0xef, 0x57, 0xf8, 0xb9, 0x8d, 0xbf, 0x95, 0x76, 0x71, 0x0e, + 0xe6, 0x03, 0x3f, 0xa5, 0x25, 0x5b, 0x0d, 0x03, 0x8b, 0x22, 0x6a, 0x36, + 0x16, 0x6a, 0x0c, 0x27, 0x8a, 0xa3, 0xa4, 0x32, 0xaa, 0x28, 0x11, 0xd3, + 0xe1, 0x18, 0xbe, 0xa6, +}; +static const struct drbg_kat_pr_false kat1475_t = { + 4, kat1475_entropyin, kat1475_nonce, kat1475_persstr, + kat1475_entropyinreseed, kat1475_addinreseed, kat1475_addin0, + kat1475_addin1, kat1475_retbits +}; +static const struct drbg_kat kat1475 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1475_t +}; + +static const unsigned char kat1476_entropyin[] = { + 0x59, 0xe8, 0xc9, 0xa8, 0xca, 0x4e, 0x44, 0xf3, 0x0d, 0xb4, 0x7b, 0xd0, + 0x93, 0x27, 0x41, 0x09, +}; +static const unsigned char kat1476_nonce[] = { + 0xc3, 0x6a, 0xdd, 0x93, 0xb4, 0x96, 0xf6, 0x5e, +}; +static const unsigned char kat1476_persstr[] = { + 0x15, 0xa1, 0x9b, 0xd5, 0x96, 0xcd, 0x9c, 0x13, 0x40, 0xb6, 0x69, 0x19, + 0xa1, 0x4a, 0xd9, 0xa0, +}; +static const unsigned char kat1476_entropyinreseed[] = { + 0x9a, 0x46, 0x06, 0xbb, 0xf7, 0x6f, 0x92, 0xc4, 0xdd, 0xc7, 0x20, 0xee, + 0x6e, 0x4a, 0xc1, 0x00, +}; +static const unsigned char kat1476_addinreseed[] = {0}; +static const unsigned char kat1476_addin0[] = {0}; +static const unsigned char kat1476_addin1[] = {0}; +static const unsigned char kat1476_retbits[] = { + 0x05, 0x12, 0x43, 0x20, 0xc6, 0xdf, 0xdb, 0x80, 0x34, 0x41, 0xe7, 0x9c, + 0xc9, 0x7e, 0x85, 0xf3, 0x06, 0x6b, 0x49, 0xc0, 0x45, 0x42, 0xeb, 0xd3, + 0xfd, 0x7b, 0xb1, 0x05, 0x31, 0x9b, 0x24, 0x4c, 0xed, 0x54, 0x9f, 0x0d, + 0x69, 0xca, 0x46, 0xbb, 0x3a, 0x7b, 0xef, 0x33, 0x85, 0x45, 0x21, 0xdd, + 0x8e, 0x82, 0x9c, 0xcb, 0x63, 0x20, 0xbf, 0xb1, 0x0d, 0x0b, 0x3e, 0xc2, + 0xa1, 0x88, 0x15, 0xb3, +}; +static const struct drbg_kat_pr_false kat1476_t = { + 5, kat1476_entropyin, kat1476_nonce, kat1476_persstr, + kat1476_entropyinreseed, kat1476_addinreseed, kat1476_addin0, + kat1476_addin1, kat1476_retbits +}; +static const struct drbg_kat kat1476 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1476_t +}; + +static const unsigned char kat1477_entropyin[] = { + 0x60, 0xfd, 0xf3, 0x42, 0x4d, 0x6c, 0xe2, 0x29, 0xc8, 0x77, 0x3e, 0xbe, + 0xa2, 0xa7, 0x2f, 0xb0, +}; +static const unsigned char kat1477_nonce[] = { + 0x0b, 0x62, 0x80, 0xf6, 0x78, 0xbb, 0xfe, 0xaa, +}; +static const unsigned char kat1477_persstr[] = { + 0xf3, 0x9e, 0x34, 0x76, 0x35, 0x5c, 0xae, 0x16, 0x0a, 0xaf, 0x29, 0x68, + 0x28, 0x7e, 0xb9, 0x38, +}; +static const unsigned char kat1477_entropyinreseed[] = { + 0x41, 0x51, 0x27, 0xca, 0x26, 0xbd, 0xa6, 0xe2, 0xc2, 0x88, 0xa4, 0xc0, + 0xf5, 0x15, 0xfb, 0x16, +}; +static const unsigned char kat1477_addinreseed[] = {0}; +static const unsigned char kat1477_addin0[] = {0}; +static const unsigned char kat1477_addin1[] = {0}; +static const unsigned char kat1477_retbits[] = { + 0x9c, 0x07, 0xcc, 0xd7, 0xd3, 0x9f, 0xe9, 0xe5, 0xf2, 0x19, 0x87, 0xba, + 0x48, 0x2c, 0x2d, 0x97, 0xd7, 0x79, 0x81, 0x18, 0xf5, 0xb5, 0x93, 0x6a, + 0xd1, 0xd9, 0x87, 0x04, 0x4a, 0xa7, 0x9e, 0xd4, 0xf3, 0x68, 0x34, 0x29, + 0xd6, 0x2a, 0x2c, 0xff, 0xb8, 0x0c, 0xdb, 0xa7, 0xe0, 0xad, 0xb8, 0x00, + 0xed, 0x6f, 0x8e, 0x99, 0x23, 0xbb, 0x4b, 0x91, 0x8a, 0x1e, 0xb5, 0xc9, + 0x23, 0x68, 0xc1, 0x51, +}; +static const struct drbg_kat_pr_false kat1477_t = { + 6, kat1477_entropyin, kat1477_nonce, kat1477_persstr, + kat1477_entropyinreseed, kat1477_addinreseed, kat1477_addin0, + kat1477_addin1, kat1477_retbits +}; +static const struct drbg_kat kat1477 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1477_t +}; + +static const unsigned char kat1478_entropyin[] = { + 0xa4, 0x9b, 0xeb, 0x27, 0xf8, 0xe2, 0x33, 0x33, 0x21, 0x86, 0x92, 0x2f, + 0x3b, 0x20, 0xea, 0xac, +}; +static const unsigned char kat1478_nonce[] = { + 0xbe, 0xa2, 0x4f, 0x9a, 0x50, 0x12, 0x69, 0x2a, +}; +static const unsigned char kat1478_persstr[] = { + 0x11, 0x50, 0x45, 0xea, 0x5b, 0x7a, 0x6f, 0x7f, 0xf6, 0x89, 0x41, 0x88, + 0x29, 0x8e, 0xd2, 0x79, +}; +static const unsigned char kat1478_entropyinreseed[] = { + 0xd2, 0x73, 0xac, 0xa1, 0xb2, 0x1e, 0x79, 0x27, 0xee, 0xcd, 0xc0, 0x23, + 0xf0, 0x40, 0x2a, 0x3e, +}; +static const unsigned char kat1478_addinreseed[] = {0}; +static const unsigned char kat1478_addin0[] = {0}; +static const unsigned char kat1478_addin1[] = {0}; +static const unsigned char kat1478_retbits[] = { + 0x39, 0xb2, 0x34, 0x85, 0xd8, 0x26, 0xc7, 0xf5, 0xce, 0xd4, 0x23, 0x1e, + 0xf9, 0xb1, 0xa1, 0xe8, 0x6c, 0x3d, 0xe1, 0x91, 0xc4, 0xc2, 0x49, 0x28, + 0x3e, 0x61, 0x20, 0xbf, 0x55, 0x24, 0xa4, 0xe4, 0x26, 0x15, 0x3d, 0xa7, + 0x6e, 0x09, 0x88, 0x07, 0xda, 0x0d, 0x75, 0x33, 0x9d, 0x3c, 0x02, 0x0c, + 0x4f, 0x14, 0x84, 0x2e, 0x60, 0x49, 0x0c, 0x6f, 0x44, 0xe9, 0x28, 0x3d, + 0xf6, 0xbf, 0x28, 0xb8, +}; +static const struct drbg_kat_pr_false kat1478_t = { + 7, kat1478_entropyin, kat1478_nonce, kat1478_persstr, + kat1478_entropyinreseed, kat1478_addinreseed, kat1478_addin0, + kat1478_addin1, kat1478_retbits +}; +static const struct drbg_kat kat1478 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1478_t +}; + +static const unsigned char kat1479_entropyin[] = { + 0x1b, 0x2f, 0xc3, 0xee, 0xc1, 0x16, 0xb5, 0x55, 0x99, 0x64, 0xd6, 0xd2, + 0x65, 0x3d, 0x66, 0xc6, +}; +static const unsigned char kat1479_nonce[] = { + 0x6e, 0x04, 0x94, 0x1d, 0xde, 0xf5, 0x6e, 0x69, +}; +static const unsigned char kat1479_persstr[] = { + 0x68, 0xbe, 0x57, 0x97, 0x4c, 0x6c, 0x74, 0xc1, 0xc5, 0xbe, 0x0d, 0xa1, + 0xc6, 0x36, 0x0e, 0x30, +}; +static const unsigned char kat1479_entropyinreseed[] = { + 0xe4, 0x93, 0xc7, 0xd9, 0x91, 0xd0, 0x43, 0x0f, 0x93, 0xc2, 0x0a, 0xe0, + 0xfb, 0x15, 0xa1, 0x66, +}; +static const unsigned char kat1479_addinreseed[] = {0}; +static const unsigned char kat1479_addin0[] = {0}; +static const unsigned char kat1479_addin1[] = {0}; +static const unsigned char kat1479_retbits[] = { + 0x27, 0x94, 0x9a, 0x3d, 0xc0, 0x5a, 0xba, 0x02, 0xa6, 0x24, 0xae, 0x00, + 0x2c, 0x45, 0xa7, 0x9a, 0x65, 0xcf, 0x60, 0x40, 0xac, 0xca, 0x61, 0xa0, + 0xbd, 0x5f, 0x2e, 0xf0, 0x6a, 0x9c, 0xf6, 0xf8, 0x24, 0xa0, 0x66, 0x65, + 0x6c, 0x1b, 0x6a, 0xac, 0x65, 0x9e, 0xe7, 0xa9, 0xd3, 0x30, 0x80, 0x50, + 0xcc, 0x87, 0x63, 0xd9, 0x1e, 0x48, 0xd1, 0x9d, 0xc1, 0xdf, 0x20, 0xaf, + 0x14, 0x92, 0x65, 0x23, +}; +static const struct drbg_kat_pr_false kat1479_t = { + 8, kat1479_entropyin, kat1479_nonce, kat1479_persstr, + kat1479_entropyinreseed, kat1479_addinreseed, kat1479_addin0, + kat1479_addin1, kat1479_retbits +}; +static const struct drbg_kat kat1479 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1479_t +}; + +static const unsigned char kat1480_entropyin[] = { + 0xaf, 0x51, 0xc4, 0xb1, 0xb4, 0xbd, 0x21, 0x19, 0xe0, 0xb4, 0x93, 0x11, + 0x27, 0x9b, 0xbe, 0xc0, +}; +static const unsigned char kat1480_nonce[] = { + 0x41, 0x94, 0xf0, 0x0b, 0xb0, 0xcd, 0x83, 0xc7, +}; +static const unsigned char kat1480_persstr[] = { + 0xfd, 0x05, 0x2b, 0xfd, 0x73, 0xfe, 0x71, 0x2f, 0x4a, 0x06, 0x9d, 0x2b, + 0xc1, 0xdc, 0x4b, 0xc7, +}; +static const unsigned char kat1480_entropyinreseed[] = { + 0xc1, 0x40, 0xc4, 0xce, 0x45, 0xbf, 0x3b, 0xfd, 0x0a, 0x47, 0x3e, 0x57, + 0x54, 0x35, 0x5b, 0x0a, +}; +static const unsigned char kat1480_addinreseed[] = {0}; +static const unsigned char kat1480_addin0[] = {0}; +static const unsigned char kat1480_addin1[] = {0}; +static const unsigned char kat1480_retbits[] = { + 0x68, 0x58, 0xd2, 0x63, 0x42, 0x14, 0xa4, 0x6e, 0xc0, 0x77, 0xf8, 0x6e, + 0x66, 0x7b, 0x6f, 0x3c, 0x48, 0x2c, 0x79, 0x73, 0x67, 0xae, 0x01, 0xd5, + 0x0f, 0xc0, 0x18, 0x38, 0x87, 0xff, 0x9b, 0xac, 0x32, 0x93, 0xce, 0x67, + 0x64, 0x3b, 0xe1, 0x46, 0xb8, 0x6d, 0xfb, 0x09, 0x3a, 0x57, 0x18, 0xab, + 0x8c, 0x12, 0xf7, 0x13, 0xef, 0x0c, 0xea, 0x0d, 0x04, 0x95, 0x8c, 0xe7, + 0xa8, 0xd8, 0x77, 0x7b, +}; +static const struct drbg_kat_pr_false kat1480_t = { + 9, kat1480_entropyin, kat1480_nonce, kat1480_persstr, + kat1480_entropyinreseed, kat1480_addinreseed, kat1480_addin0, + kat1480_addin1, kat1480_retbits +}; +static const struct drbg_kat kat1480 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1480_t +}; + +static const unsigned char kat1481_entropyin[] = { + 0xfb, 0x70, 0xa8, 0x06, 0x5e, 0xae, 0x00, 0x62, 0x70, 0x17, 0x90, 0x98, + 0xa6, 0xb6, 0x7e, 0xea, +}; +static const unsigned char kat1481_nonce[] = { + 0xbc, 0x00, 0x01, 0xc0, 0xde, 0x38, 0x7f, 0x1d, +}; +static const unsigned char kat1481_persstr[] = { + 0x80, 0x4f, 0x5f, 0x90, 0xbf, 0x5a, 0x4d, 0x7a, 0x99, 0xf8, 0x50, 0xb8, + 0x82, 0xbc, 0x70, 0x01, +}; +static const unsigned char kat1481_entropyinreseed[] = { + 0xab, 0xc7, 0x7b, 0x6f, 0x10, 0xd0, 0xa8, 0x94, 0x52, 0xe0, 0x63, 0xfe, + 0x97, 0xf4, 0x00, 0x0a, +}; +static const unsigned char kat1481_addinreseed[] = {0}; +static const unsigned char kat1481_addin0[] = {0}; +static const unsigned char kat1481_addin1[] = {0}; +static const unsigned char kat1481_retbits[] = { + 0xb9, 0xf6, 0xf5, 0x1d, 0x0d, 0xe5, 0xff, 0xa1, 0xfd, 0x42, 0xef, 0x9a, + 0x7a, 0xd2, 0xe6, 0x02, 0x01, 0xdc, 0x3e, 0x4b, 0x15, 0x53, 0x63, 0x64, + 0xc1, 0xbb, 0xea, 0x2f, 0xcd, 0x7c, 0x35, 0xa7, 0x7f, 0xb8, 0x24, 0xbd, + 0xdc, 0x67, 0xa6, 0x90, 0xac, 0x51, 0xdc, 0x2e, 0x34, 0xcb, 0x7e, 0xfe, + 0x9f, 0x61, 0xd5, 0xd6, 0xd0, 0x09, 0xd9, 0x61, 0xc6, 0x61, 0xde, 0x44, + 0xb9, 0x8a, 0x5e, 0x98, +}; +static const struct drbg_kat_pr_false kat1481_t = { + 10, kat1481_entropyin, kat1481_nonce, kat1481_persstr, + kat1481_entropyinreseed, kat1481_addinreseed, kat1481_addin0, + kat1481_addin1, kat1481_retbits +}; +static const struct drbg_kat kat1481 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1481_t +}; + +static const unsigned char kat1482_entropyin[] = { + 0x92, 0x84, 0x7e, 0x86, 0xe6, 0x56, 0xeb, 0x7f, 0x90, 0xde, 0x26, 0x66, + 0xba, 0x07, 0xd9, 0xfd, +}; +static const unsigned char kat1482_nonce[] = { + 0xb7, 0x1f, 0x25, 0x1d, 0x20, 0x6c, 0xcf, 0x6c, +}; +static const unsigned char kat1482_persstr[] = { + 0x74, 0xba, 0x97, 0x24, 0xa8, 0xe8, 0xc9, 0xe9, 0x98, 0xca, 0x49, 0x6d, + 0x35, 0x92, 0xbd, 0x99, +}; +static const unsigned char kat1482_entropyinreseed[] = { + 0xae, 0xed, 0x26, 0x0b, 0x73, 0x0d, 0x8f, 0x32, 0xaa, 0xeb, 0x0d, 0x9b, + 0xe7, 0x97, 0x83, 0x5a, +}; +static const unsigned char kat1482_addinreseed[] = {0}; +static const unsigned char kat1482_addin0[] = {0}; +static const unsigned char kat1482_addin1[] = {0}; +static const unsigned char kat1482_retbits[] = { + 0xf6, 0xa2, 0x5d, 0x68, 0xea, 0xee, 0xbf, 0x57, 0xd2, 0xd8, 0x70, 0xc8, + 0x17, 0x81, 0x90, 0x5c, 0xcc, 0x69, 0xef, 0x7f, 0x84, 0xf0, 0x2c, 0x7f, + 0xfa, 0xf9, 0x86, 0x8c, 0x08, 0xa0, 0xe4, 0x43, 0xff, 0xf0, 0x19, 0xc7, + 0xb7, 0xb6, 0x49, 0xfc, 0x50, 0xf0, 0xe4, 0xa9, 0x5c, 0x25, 0xeb, 0xcd, + 0x86, 0xf9, 0x4c, 0x84, 0x03, 0xc8, 0xa7, 0x86, 0x19, 0x70, 0x94, 0x62, + 0x6a, 0x98, 0xa8, 0xa3, +}; +static const struct drbg_kat_pr_false kat1482_t = { + 11, kat1482_entropyin, kat1482_nonce, kat1482_persstr, + kat1482_entropyinreseed, kat1482_addinreseed, kat1482_addin0, + kat1482_addin1, kat1482_retbits +}; +static const struct drbg_kat kat1482 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1482_t +}; + +static const unsigned char kat1483_entropyin[] = { + 0x29, 0x7e, 0xfb, 0x11, 0x18, 0x09, 0x93, 0x9e, 0xde, 0xbc, 0xdf, 0x93, + 0x71, 0xcf, 0x32, 0xd2, +}; +static const unsigned char kat1483_nonce[] = { + 0xb3, 0x3f, 0x34, 0x05, 0x3d, 0xb7, 0xc9, 0xf0, +}; +static const unsigned char kat1483_persstr[] = { + 0xd3, 0x79, 0x9c, 0x84, 0xd3, 0x15, 0x90, 0xfb, 0xd0, 0xd3, 0xc4, 0xec, + 0xe3, 0x68, 0x0e, 0x33, +}; +static const unsigned char kat1483_entropyinreseed[] = { + 0xc5, 0xfe, 0x86, 0xee, 0x68, 0xe4, 0x59, 0xca, 0x3b, 0x06, 0xe4, 0x45, + 0xea, 0x5e, 0x0b, 0x2f, +}; +static const unsigned char kat1483_addinreseed[] = {0}; +static const unsigned char kat1483_addin0[] = {0}; +static const unsigned char kat1483_addin1[] = {0}; +static const unsigned char kat1483_retbits[] = { + 0xb1, 0x83, 0x5e, 0xef, 0x69, 0xd5, 0x40, 0x6c, 0x36, 0x48, 0x45, 0x03, + 0x07, 0xae, 0x27, 0xd3, 0x92, 0xbd, 0xd4, 0x4a, 0x0f, 0xa7, 0xa7, 0x0a, + 0xf6, 0xc3, 0x02, 0xab, 0x1c, 0x3c, 0x3c, 0xc7, 0xc6, 0x81, 0xe1, 0x90, + 0x76, 0x7a, 0x38, 0xc3, 0xff, 0x6b, 0x68, 0x7f, 0x3e, 0xe1, 0x2f, 0x85, + 0x55, 0xa9, 0xd2, 0xb4, 0x69, 0x65, 0x85, 0xf1, 0xc8, 0x11, 0xd1, 0x32, + 0x94, 0x30, 0xa5, 0x1b, +}; +static const struct drbg_kat_pr_false kat1483_t = { + 12, kat1483_entropyin, kat1483_nonce, kat1483_persstr, + kat1483_entropyinreseed, kat1483_addinreseed, kat1483_addin0, + kat1483_addin1, kat1483_retbits +}; +static const struct drbg_kat kat1483 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1483_t +}; + +static const unsigned char kat1484_entropyin[] = { + 0xed, 0x8b, 0x28, 0xfc, 0x95, 0x03, 0x6e, 0x5e, 0x61, 0x86, 0x95, 0xe4, + 0x90, 0xb7, 0x25, 0x6c, +}; +static const unsigned char kat1484_nonce[] = { + 0xb9, 0x95, 0xe7, 0xc1, 0xa8, 0x8d, 0x09, 0xce, +}; +static const unsigned char kat1484_persstr[] = { + 0xa4, 0x3e, 0x37, 0x08, 0x74, 0x4c, 0x8a, 0x7c, 0x5f, 0xea, 0xbe, 0x66, + 0xc2, 0x5c, 0x81, 0xf1, +}; +static const unsigned char kat1484_entropyinreseed[] = { + 0xa2, 0xa5, 0x98, 0x98, 0xf4, 0x53, 0xe6, 0x3f, 0xc6, 0x46, 0xaf, 0x13, + 0x48, 0x53, 0xe9, 0xac, +}; +static const unsigned char kat1484_addinreseed[] = {0}; +static const unsigned char kat1484_addin0[] = {0}; +static const unsigned char kat1484_addin1[] = {0}; +static const unsigned char kat1484_retbits[] = { + 0xff, 0xff, 0x0f, 0x15, 0x91, 0xaa, 0x10, 0x4b, 0xa8, 0xc5, 0x52, 0xda, + 0x01, 0xc8, 0x70, 0xc5, 0x1f, 0x7d, 0xc2, 0xa1, 0xcc, 0x22, 0x30, 0x05, + 0x08, 0xcb, 0x4f, 0x63, 0x10, 0x19, 0x45, 0x75, 0x09, 0x9a, 0xa4, 0xab, + 0xe7, 0xf2, 0x91, 0x87, 0x31, 0x66, 0x73, 0x94, 0xda, 0x8b, 0x79, 0xae, + 0x14, 0x7c, 0xaf, 0x38, 0x9f, 0x43, 0x96, 0xb5, 0xba, 0xa8, 0x8f, 0x19, + 0x17, 0xb6, 0x16, 0xf6, +}; +static const struct drbg_kat_pr_false kat1484_t = { + 13, kat1484_entropyin, kat1484_nonce, kat1484_persstr, + kat1484_entropyinreseed, kat1484_addinreseed, kat1484_addin0, + kat1484_addin1, kat1484_retbits +}; +static const struct drbg_kat kat1484 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1484_t +}; + +static const unsigned char kat1485_entropyin[] = { + 0x74, 0x30, 0xa6, 0x58, 0x60, 0x82, 0x13, 0x04, 0x5e, 0x4c, 0xcc, 0x24, + 0xa0, 0x56, 0x8e, 0xf3, +}; +static const unsigned char kat1485_nonce[] = { + 0x3f, 0xd7, 0x7a, 0xd5, 0xb3, 0x6f, 0x25, 0x54, +}; +static const unsigned char kat1485_persstr[] = { + 0xc1, 0xad, 0x90, 0x31, 0xef, 0xb0, 0xfc, 0x15, 0x36, 0x15, 0x43, 0x3f, + 0xbb, 0xa1, 0x08, 0x7f, +}; +static const unsigned char kat1485_entropyinreseed[] = { + 0xae, 0xca, 0x96, 0x70, 0x0a, 0x3d, 0x66, 0x46, 0x7b, 0x25, 0x61, 0xa3, + 0x07, 0x7e, 0x6f, 0x72, +}; +static const unsigned char kat1485_addinreseed[] = {0}; +static const unsigned char kat1485_addin0[] = {0}; +static const unsigned char kat1485_addin1[] = {0}; +static const unsigned char kat1485_retbits[] = { + 0xc4, 0xb2, 0x48, 0xc1, 0x8f, 0xa8, 0x38, 0xac, 0xec, 0xdf, 0x9c, 0xc3, + 0x36, 0x35, 0x00, 0x9c, 0x19, 0x88, 0x5b, 0x86, 0xb7, 0xd1, 0xf6, 0x5c, + 0x06, 0xda, 0xb9, 0x06, 0x30, 0x4d, 0xa6, 0x9f, 0x43, 0x70, 0xac, 0x8f, + 0xc8, 0x3e, 0x4b, 0x47, 0x21, 0xc0, 0x73, 0x51, 0xa2, 0x18, 0xaf, 0xcd, + 0xaf, 0x30, 0xd4, 0x70, 0x63, 0x24, 0x58, 0x9b, 0xf9, 0x18, 0xbe, 0x20, + 0xb4, 0xdb, 0xbe, 0x3a, +}; +static const struct drbg_kat_pr_false kat1485_t = { + 14, kat1485_entropyin, kat1485_nonce, kat1485_persstr, + kat1485_entropyinreseed, kat1485_addinreseed, kat1485_addin0, + kat1485_addin1, kat1485_retbits +}; +static const struct drbg_kat kat1485 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1485_t +}; + +static const unsigned char kat1486_entropyin[] = { + 0xe1, 0x4e, 0xd7, 0x06, 0x4a, 0x97, 0x81, 0x4d, 0xd3, 0x26, 0xb9, 0xa0, + 0x5b, 0xc4, 0x45, 0x43, +}; +static const unsigned char kat1486_nonce[] = { + 0x87, 0x62, 0x40, 0xc1, 0xf7, 0xde, 0x3d, 0xba, +}; +static const unsigned char kat1486_persstr[] = { + 0x26, 0xcc, 0xf5, 0x68, 0x48, 0xa0, 0x48, 0x72, 0x1d, 0x0a, 0xad, 0x87, + 0xd6, 0xfc, 0x65, 0xf0, +}; +static const unsigned char kat1486_entropyinreseed[] = { + 0x7e, 0xc4, 0xac, 0x66, 0x0f, 0xa0, 0xbb, 0xfa, 0x66, 0xac, 0x38, 0x02, + 0xe5, 0x11, 0x90, 0x1f, +}; +static const unsigned char kat1486_addinreseed[] = { + 0x88, 0x35, 0xd2, 0x8e, 0x7f, 0x85, 0xa4, 0xe9, 0x50, 0x87, 0xbd, 0xd1, + 0xbb, 0x7a, 0xd5, 0x7e, +}; +static const unsigned char kat1486_addin0[] = { + 0x2a, 0x9b, 0xd5, 0x0b, 0xbb, 0x20, 0xfe, 0xfe, 0x24, 0x64, 0x9f, 0x5f, + 0x80, 0xee, 0xde, 0x66, +}; +static const unsigned char kat1486_addin1[] = { + 0xf7, 0xce, 0x3d, 0x5c, 0x6c, 0x38, 0x1e, 0x56, 0xb2, 0x54, 0x10, 0xc6, + 0x90, 0x9c, 0x10, 0x74, +}; +static const unsigned char kat1486_retbits[] = { + 0xd2, 0xf3, 0x13, 0x0d, 0x30, 0x9b, 0xed, 0x1d, 0xa6, 0x55, 0x45, 0xb9, + 0xd7, 0x93, 0xe0, 0x35, 0xfd, 0x25, 0x64, 0x30, 0x3d, 0x1f, 0xdc, 0xfb, + 0x6c, 0x7f, 0xee, 0x01, 0x95, 0x00, 0xd9, 0xf5, 0xd4, 0x34, 0xfa, 0xb2, + 0xd3, 0xc8, 0xd1, 0x5e, 0x39, 0xa2, 0x5f, 0x96, 0x5a, 0xaa, 0x80, 0x4c, + 0x71, 0x41, 0x40, 0x7e, 0x90, 0xc4, 0xa8, 0x6a, 0x6c, 0x8d, 0x30, 0x3c, + 0xe8, 0x3b, 0xfb, 0x34, +}; +static const struct drbg_kat_pr_false kat1486_t = { + 0, kat1486_entropyin, kat1486_nonce, kat1486_persstr, + kat1486_entropyinreseed, kat1486_addinreseed, kat1486_addin0, + kat1486_addin1, kat1486_retbits +}; +static const struct drbg_kat kat1486 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1486_t +}; + +static const unsigned char kat1487_entropyin[] = { + 0x4d, 0x61, 0xd9, 0x17, 0xe5, 0xb7, 0x15, 0x65, 0xd2, 0x7c, 0xb8, 0xbc, + 0xe5, 0x26, 0x6e, 0x84, +}; +static const unsigned char kat1487_nonce[] = { + 0xf1, 0x01, 0x50, 0xae, 0x95, 0xcc, 0x14, 0xdd, +}; +static const unsigned char kat1487_persstr[] = { + 0x85, 0x5b, 0x14, 0x54, 0x5d, 0xab, 0x54, 0xe7, 0x35, 0x93, 0x92, 0xd2, + 0xbd, 0x05, 0x08, 0xfc, +}; +static const unsigned char kat1487_entropyinreseed[] = { + 0xdf, 0xe0, 0x1d, 0xe7, 0x86, 0xb4, 0xbd, 0xff, 0xcb, 0xfa, 0x47, 0xf1, + 0x3a, 0xb7, 0x5b, 0xd9, +}; +static const unsigned char kat1487_addinreseed[] = { + 0x8b, 0x0f, 0x5f, 0x42, 0xaa, 0x8a, 0x84, 0xc2, 0x4d, 0x11, 0xa0, 0x23, + 0xaa, 0x28, 0x8a, 0x89, +}; +static const unsigned char kat1487_addin0[] = { + 0xbf, 0x32, 0xbd, 0xe3, 0xc5, 0xbb, 0xe4, 0xed, 0xdd, 0x4e, 0x5c, 0x33, + 0x09, 0xb8, 0x7e, 0x7d, +}; +static const unsigned char kat1487_addin1[] = { + 0x7e, 0xe1, 0xee, 0xbb, 0x46, 0x0f, 0xa1, 0x82, 0x1a, 0xb5, 0x94, 0x07, + 0xf0, 0xb7, 0x29, 0x1c, +}; +static const unsigned char kat1487_retbits[] = { + 0xfb, 0x92, 0xc1, 0xe9, 0x10, 0x58, 0x9a, 0xcf, 0xda, 0x9a, 0xda, 0xbe, + 0x59, 0x21, 0x4e, 0x02, 0x7b, 0xc4, 0x4f, 0xcb, 0xc0, 0xfe, 0xa5, 0xf2, + 0x31, 0xf2, 0xe9, 0xb9, 0x23, 0x6d, 0x3b, 0x87, 0x2e, 0x4b, 0x9d, 0x87, + 0x90, 0x7c, 0x41, 0xef, 0x71, 0xf0, 0x41, 0xa5, 0x2e, 0xb8, 0x26, 0xa3, + 0x8b, 0xd4, 0x4f, 0xa1, 0x5f, 0x60, 0x95, 0xe4, 0x1b, 0x3f, 0xf3, 0x02, + 0x61, 0xa6, 0xe7, 0xc6, +}; +static const struct drbg_kat_pr_false kat1487_t = { + 1, kat1487_entropyin, kat1487_nonce, kat1487_persstr, + kat1487_entropyinreseed, kat1487_addinreseed, kat1487_addin0, + kat1487_addin1, kat1487_retbits +}; +static const struct drbg_kat kat1487 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1487_t +}; + +static const unsigned char kat1488_entropyin[] = { + 0x89, 0xfa, 0x82, 0xad, 0xdf, 0xc9, 0x39, 0x96, 0x5a, 0xba, 0x18, 0x49, + 0x4c, 0xd5, 0x29, 0x9a, +}; +static const unsigned char kat1488_nonce[] = { + 0x30, 0x5c, 0x4c, 0x0a, 0xd7, 0x86, 0x58, 0x6c, +}; +static const unsigned char kat1488_persstr[] = { + 0x62, 0x5c, 0xf5, 0xf4, 0x4f, 0x83, 0x2b, 0x3b, 0xdb, 0xb6, 0x9a, 0x4e, + 0x9a, 0xf2, 0xb1, 0x77, +}; +static const unsigned char kat1488_entropyinreseed[] = { + 0x27, 0x38, 0xf5, 0xda, 0x3c, 0x5a, 0xc9, 0x9d, 0x91, 0x83, 0x3a, 0x02, + 0xa9, 0xdd, 0x9d, 0x4c, +}; +static const unsigned char kat1488_addinreseed[] = { + 0x49, 0xeb, 0xb2, 0xfb, 0xa3, 0xfe, 0x7c, 0x3e, 0x1e, 0x7b, 0xff, 0x95, + 0x74, 0x03, 0x75, 0x62, +}; +static const unsigned char kat1488_addin0[] = { + 0xc5, 0xff, 0x2c, 0xc8, 0xb8, 0xaf, 0x7b, 0xbc, 0x9a, 0xda, 0x35, 0xa3, + 0x98, 0x03, 0xd4, 0xd2, +}; +static const unsigned char kat1488_addin1[] = { + 0xfe, 0x0d, 0x79, 0x86, 0x01, 0xca, 0x1f, 0x49, 0xec, 0xc5, 0xd2, 0x1f, + 0xb3, 0x89, 0x32, 0xfd, +}; +static const unsigned char kat1488_retbits[] = { + 0x3a, 0x95, 0x58, 0xf2, 0xf4, 0xc5, 0x48, 0x13, 0xc4, 0xe4, 0x62, 0x25, + 0x0b, 0xab, 0xcc, 0x80, 0xf7, 0x5a, 0x4c, 0x54, 0x86, 0xa8, 0x1c, 0x76, + 0xbf, 0x18, 0x7d, 0x92, 0x40, 0xa6, 0xe4, 0x36, 0x4e, 0xe5, 0xae, 0x0b, + 0x9d, 0xe5, 0x3a, 0xcf, 0xb1, 0x45, 0x28, 0xa0, 0x53, 0x9f, 0x50, 0x0c, + 0x67, 0xf0, 0x37, 0x2d, 0xa8, 0xd6, 0x1e, 0x70, 0xb7, 0x7a, 0x4a, 0xd4, + 0x47, 0x8b, 0x3f, 0xda, +}; +static const struct drbg_kat_pr_false kat1488_t = { + 2, kat1488_entropyin, kat1488_nonce, kat1488_persstr, + kat1488_entropyinreseed, kat1488_addinreseed, kat1488_addin0, + kat1488_addin1, kat1488_retbits +}; +static const struct drbg_kat kat1488 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1488_t +}; + +static const unsigned char kat1489_entropyin[] = { + 0x01, 0xd4, 0x95, 0x86, 0x0e, 0x54, 0x6e, 0x69, 0x66, 0x84, 0xf2, 0x79, + 0x5c, 0x18, 0x27, 0x77, +}; +static const unsigned char kat1489_nonce[] = { + 0x20, 0x3f, 0x78, 0x98, 0x74, 0x6c, 0xeb, 0x65, +}; +static const unsigned char kat1489_persstr[] = { + 0x1d, 0xd5, 0xa0, 0xd8, 0x86, 0x91, 0x64, 0x32, 0x3d, 0xd7, 0x8b, 0x46, + 0x86, 0xd5, 0x01, 0x25, +}; +static const unsigned char kat1489_entropyinreseed[] = { + 0x52, 0xf8, 0x05, 0x7f, 0x5d, 0x91, 0x3b, 0xcc, 0xff, 0xba, 0xc8, 0x1b, + 0xa8, 0xd8, 0x4c, 0xb2, +}; +static const unsigned char kat1489_addinreseed[] = { + 0xb2, 0x00, 0xd3, 0xe4, 0xd9, 0x30, 0xe9, 0x51, 0xe0, 0xc4, 0x79, 0x44, + 0x65, 0x54, 0x04, 0x34, +}; +static const unsigned char kat1489_addin0[] = { + 0xe8, 0x1c, 0xc7, 0xec, 0x3a, 0xf3, 0xea, 0x3a, 0x32, 0x16, 0x45, 0x16, + 0x05, 0xd9, 0xa8, 0x21, +}; +static const unsigned char kat1489_addin1[] = { + 0x04, 0xaa, 0x31, 0x1f, 0x7c, 0x20, 0x9c, 0xb1, 0x9c, 0x29, 0x84, 0xbf, + 0xe2, 0xfa, 0x48, 0xbb, +}; +static const unsigned char kat1489_retbits[] = { + 0xdf, 0x2e, 0x12, 0x58, 0xc4, 0xe1, 0x9d, 0xbf, 0x1a, 0x01, 0xa0, 0x2a, + 0x45, 0x24, 0xa6, 0x23, 0xf6, 0x94, 0x33, 0x34, 0x5b, 0x34, 0xcf, 0xa7, + 0xdc, 0x9f, 0x82, 0x80, 0xaa, 0x8d, 0x88, 0x8e, 0x0d, 0x7c, 0x47, 0x7e, + 0x4e, 0xf9, 0xd2, 0x66, 0x26, 0xbf, 0x6b, 0xb9, 0x21, 0xf0, 0x4b, 0x42, + 0xe3, 0xf1, 0xfd, 0xfd, 0x07, 0xa9, 0x33, 0x92, 0x2e, 0x5e, 0x40, 0x1d, + 0x46, 0xe6, 0xbc, 0xf1, +}; +static const struct drbg_kat_pr_false kat1489_t = { + 3, kat1489_entropyin, kat1489_nonce, kat1489_persstr, + kat1489_entropyinreseed, kat1489_addinreseed, kat1489_addin0, + kat1489_addin1, kat1489_retbits +}; +static const struct drbg_kat kat1489 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1489_t +}; + +static const unsigned char kat1490_entropyin[] = { + 0xd9, 0x6b, 0xf7, 0x4b, 0x08, 0x5d, 0x53, 0x25, 0x1e, 0x2b, 0xab, 0x12, + 0x5e, 0x46, 0x60, 0xb1, +}; +static const unsigned char kat1490_nonce[] = { + 0x9a, 0x24, 0x0c, 0xaa, 0x05, 0x5e, 0x8c, 0xff, +}; +static const unsigned char kat1490_persstr[] = { + 0x16, 0x4b, 0x91, 0x37, 0x2e, 0x9d, 0xd0, 0xd4, 0xc6, 0xa0, 0xb8, 0x40, + 0xb5, 0xb9, 0x87, 0x45, +}; +static const unsigned char kat1490_entropyinreseed[] = { + 0xa0, 0x76, 0x45, 0x09, 0x3e, 0xc9, 0x58, 0x3b, 0x3b, 0xc7, 0xb4, 0x5d, + 0x56, 0xda, 0xee, 0x6f, +}; +static const unsigned char kat1490_addinreseed[] = { + 0xde, 0xd2, 0x61, 0xa7, 0xc1, 0x09, 0xe1, 0xfe, 0x0d, 0xb0, 0x91, 0x81, + 0x96, 0x2a, 0x9b, 0x6f, +}; +static const unsigned char kat1490_addin0[] = { + 0xe1, 0xe6, 0x73, 0xd0, 0xf5, 0x52, 0xf0, 0x15, 0xa9, 0x00, 0x67, 0xd1, + 0x23, 0x16, 0x21, 0x4a, +}; +static const unsigned char kat1490_addin1[] = { + 0x59, 0xb6, 0xd6, 0x68, 0x1b, 0x9a, 0xf4, 0x3c, 0xa6, 0x4e, 0x71, 0x0c, + 0xd8, 0x1b, 0x5d, 0x36, +}; +static const unsigned char kat1490_retbits[] = { + 0xb2, 0x7f, 0x08, 0xc1, 0x2b, 0xb8, 0xbe, 0xe5, 0x0b, 0xf4, 0xda, 0x1b, + 0xbb, 0x87, 0x04, 0xec, 0x9b, 0x38, 0x3d, 0xf8, 0x45, 0x16, 0x76, 0x4d, + 0xff, 0x13, 0xbe, 0xd0, 0xf2, 0xe7, 0xba, 0x21, 0x6b, 0xcb, 0x57, 0xec, + 0x31, 0x55, 0x1c, 0x46, 0x91, 0x46, 0x57, 0x2e, 0x4c, 0x43, 0x04, 0x79, + 0x16, 0xeb, 0x7f, 0xaf, 0x0c, 0x76, 0xe0, 0x17, 0x03, 0x31, 0x0d, 0xa6, + 0x61, 0x81, 0xf7, 0x54, +}; +static const struct drbg_kat_pr_false kat1490_t = { + 4, kat1490_entropyin, kat1490_nonce, kat1490_persstr, + kat1490_entropyinreseed, kat1490_addinreseed, kat1490_addin0, + kat1490_addin1, kat1490_retbits +}; +static const struct drbg_kat kat1490 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1490_t +}; + +static const unsigned char kat1491_entropyin[] = { + 0x41, 0x1c, 0x63, 0xbf, 0x97, 0x55, 0xd9, 0x6d, 0xf4, 0x14, 0xda, 0x1e, + 0xde, 0x04, 0xf2, 0x5d, +}; +static const unsigned char kat1491_nonce[] = { + 0x75, 0x62, 0x63, 0x08, 0x91, 0xcb, 0x0c, 0xa7, +}; +static const unsigned char kat1491_persstr[] = { + 0xf6, 0x9b, 0x3c, 0x68, 0x88, 0xd2, 0x87, 0xb7, 0xd5, 0xbe, 0xea, 0x03, + 0xab, 0x7d, 0x01, 0xe5, +}; +static const unsigned char kat1491_entropyinreseed[] = { + 0x78, 0xac, 0xe2, 0x3b, 0xdb, 0x31, 0xe4, 0x3d, 0xee, 0xed, 0xf8, 0xa5, + 0x07, 0xc1, 0x21, 0xa3, +}; +static const unsigned char kat1491_addinreseed[] = { + 0xf7, 0xdc, 0xad, 0x9d, 0x6d, 0x31, 0xf2, 0x12, 0xfc, 0x3b, 0xee, 0xef, + 0x0d, 0xf9, 0x43, 0x85, +}; +static const unsigned char kat1491_addin0[] = { + 0x02, 0xad, 0x67, 0xc8, 0x86, 0x55, 0xfb, 0x1e, 0x6e, 0x8a, 0xad, 0x0d, + 0xb6, 0xf9, 0x7e, 0xd5, +}; +static const unsigned char kat1491_addin1[] = { + 0x17, 0x2e, 0xc6, 0xd5, 0xb4, 0xc0, 0x1d, 0x1e, 0x40, 0x15, 0xf6, 0x67, + 0x7f, 0xde, 0x0f, 0xfd, +}; +static const unsigned char kat1491_retbits[] = { + 0xde, 0x06, 0x5f, 0x8f, 0xed, 0x81, 0xaf, 0x94, 0x8b, 0x34, 0x0a, 0xcc, + 0xb2, 0x97, 0x10, 0x89, 0xa9, 0xe2, 0x3d, 0x62, 0x1b, 0xa2, 0xb6, 0xd5, + 0x84, 0xcd, 0x9d, 0xa4, 0x25, 0xc5, 0xc9, 0xa4, 0xba, 0x80, 0x2b, 0x7b, + 0x36, 0x15, 0x88, 0x4f, 0xa9, 0x67, 0xc1, 0x18, 0xec, 0x2e, 0xd1, 0x42, + 0x56, 0xa0, 0x47, 0x9c, 0x24, 0xcc, 0xc5, 0x91, 0x7e, 0xcd, 0x63, 0xcc, + 0x4d, 0xde, 0x74, 0x0c, +}; +static const struct drbg_kat_pr_false kat1491_t = { + 5, kat1491_entropyin, kat1491_nonce, kat1491_persstr, + kat1491_entropyinreseed, kat1491_addinreseed, kat1491_addin0, + kat1491_addin1, kat1491_retbits +}; +static const struct drbg_kat kat1491 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1491_t +}; + +static const unsigned char kat1492_entropyin[] = { + 0xa1, 0x7c, 0x96, 0x64, 0xbd, 0x0e, 0xc6, 0xa6, 0x89, 0x53, 0xf5, 0xd8, + 0x16, 0xa4, 0xae, 0x00, +}; +static const unsigned char kat1492_nonce[] = { + 0xef, 0x8d, 0x4b, 0xa4, 0x15, 0x2d, 0x0d, 0x61, +}; +static const unsigned char kat1492_persstr[] = { + 0x01, 0xac, 0x06, 0x5c, 0x62, 0x18, 0x2f, 0x51, 0xcc, 0x86, 0x27, 0xdd, + 0x1c, 0x15, 0x38, 0xe0, +}; +static const unsigned char kat1492_entropyinreseed[] = { + 0x34, 0x5f, 0xb9, 0x87, 0x29, 0x17, 0x72, 0x80, 0xa7, 0x00, 0x18, 0xd6, + 0x7f, 0x49, 0x74, 0xe3, +}; +static const unsigned char kat1492_addinreseed[] = { + 0x58, 0x73, 0xbc, 0x53, 0x07, 0x5d, 0x4b, 0x8a, 0x11, 0xbf, 0xac, 0x36, + 0x8b, 0x91, 0x36, 0xed, +}; +static const unsigned char kat1492_addin0[] = { + 0x49, 0x7b, 0x88, 0x70, 0x51, 0x76, 0x13, 0xe9, 0x4b, 0x8c, 0x4b, 0x5d, + 0xdb, 0xd7, 0x46, 0x62, +}; +static const unsigned char kat1492_addin1[] = { + 0x5e, 0x8b, 0x41, 0xfb, 0x2e, 0x07, 0x80, 0x32, 0xfd, 0xef, 0xc3, 0x77, + 0xe5, 0x04, 0x4b, 0x68, +}; +static const unsigned char kat1492_retbits[] = { + 0xc6, 0x8c, 0x92, 0x6c, 0x32, 0xb6, 0x94, 0xd4, 0xab, 0xa7, 0xb7, 0xd5, + 0x8b, 0x2a, 0x8f, 0x0f, 0x1d, 0x20, 0x97, 0xfe, 0xb7, 0xb9, 0x25, 0x69, + 0xb3, 0x38, 0xc1, 0xae, 0x76, 0x43, 0x00, 0x48, 0x67, 0x1c, 0xd4, 0x5b, + 0x23, 0xcc, 0x6e, 0xc8, 0x22, 0xc8, 0xf4, 0x07, 0xa8, 0x4a, 0x55, 0x61, + 0x1f, 0xeb, 0x4f, 0x9b, 0xb0, 0x80, 0xa0, 0xe9, 0xa4, 0x35, 0x59, 0x9a, + 0xf8, 0xb7, 0x92, 0xca, +}; +static const struct drbg_kat_pr_false kat1492_t = { + 6, kat1492_entropyin, kat1492_nonce, kat1492_persstr, + kat1492_entropyinreseed, kat1492_addinreseed, kat1492_addin0, + kat1492_addin1, kat1492_retbits +}; +static const struct drbg_kat kat1492 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1492_t +}; + +static const unsigned char kat1493_entropyin[] = { + 0xa3, 0x30, 0x11, 0x7c, 0x45, 0xe0, 0x66, 0x24, 0x49, 0x4e, 0x7c, 0xf3, + 0x18, 0x1a, 0x5b, 0x1b, +}; +static const unsigned char kat1493_nonce[] = { + 0xdb, 0x39, 0x34, 0x44, 0xf6, 0x27, 0xa2, 0x17, +}; +static const unsigned char kat1493_persstr[] = { + 0x56, 0xc3, 0x7d, 0x50, 0xac, 0xca, 0xef, 0xf9, 0x94, 0xba, 0x28, 0x7e, + 0xe7, 0x6a, 0xc5, 0x38, +}; +static const unsigned char kat1493_entropyinreseed[] = { + 0x77, 0x06, 0xae, 0xdb, 0xcf, 0x72, 0xb4, 0xa8, 0x03, 0x5f, 0xc9, 0xa1, + 0x34, 0xad, 0x27, 0xd3, +}; +static const unsigned char kat1493_addinreseed[] = { + 0xec, 0xf8, 0x4c, 0xb0, 0xb4, 0x6b, 0xa4, 0xbf, 0xd5, 0x2b, 0x36, 0xd4, + 0xb8, 0x96, 0x43, 0x13, +}; +static const unsigned char kat1493_addin0[] = { + 0xbf, 0x9b, 0xb5, 0x15, 0xd6, 0x15, 0xa2, 0xb3, 0xb6, 0x72, 0x67, 0xc6, + 0x9e, 0x71, 0xf0, 0x18, +}; +static const unsigned char kat1493_addin1[] = { + 0x3e, 0x69, 0xa8, 0x94, 0x69, 0x45, 0x70, 0x26, 0x95, 0xa5, 0xa3, 0x75, + 0x1b, 0xba, 0xe8, 0x55, +}; +static const unsigned char kat1493_retbits[] = { + 0x60, 0xec, 0x02, 0xf1, 0x15, 0x20, 0x57, 0x9e, 0x42, 0xa2, 0x6c, 0x1f, + 0x25, 0x95, 0x2e, 0xb2, 0xa3, 0x68, 0xb8, 0x05, 0xcd, 0x74, 0xb6, 0xed, + 0x6b, 0x28, 0x02, 0x9d, 0x76, 0x0d, 0x29, 0x7c, 0xb2, 0xe3, 0xdc, 0x8b, + 0x91, 0x56, 0x27, 0xd2, 0x5a, 0xcb, 0x94, 0xdc, 0x0c, 0x9d, 0xc1, 0xb2, + 0x73, 0x2c, 0xdb, 0xb0, 0x10, 0x15, 0x55, 0xf7, 0xfb, 0x41, 0x6e, 0xd4, + 0xf2, 0xea, 0x07, 0xe1, +}; +static const struct drbg_kat_pr_false kat1493_t = { + 7, kat1493_entropyin, kat1493_nonce, kat1493_persstr, + kat1493_entropyinreseed, kat1493_addinreseed, kat1493_addin0, + kat1493_addin1, kat1493_retbits +}; +static const struct drbg_kat kat1493 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1493_t +}; + +static const unsigned char kat1494_entropyin[] = { + 0x35, 0x56, 0xfb, 0x87, 0x29, 0xbf, 0x4c, 0xc9, 0x82, 0x14, 0x13, 0x42, + 0x71, 0x45, 0x2e, 0x56, +}; +static const unsigned char kat1494_nonce[] = { + 0x67, 0x1c, 0x10, 0xfe, 0xd8, 0xb4, 0xcf, 0x40, +}; +static const unsigned char kat1494_persstr[] = { + 0x9e, 0x85, 0x59, 0x99, 0xaa, 0xcb, 0xa3, 0x2f, 0x91, 0x65, 0xd9, 0x65, + 0x23, 0xa2, 0x3a, 0xec, +}; +static const unsigned char kat1494_entropyinreseed[] = { + 0x6d, 0x85, 0x7a, 0x10, 0x61, 0x1f, 0x53, 0xb3, 0xa9, 0x77, 0x15, 0x1c, + 0x8f, 0xa2, 0x86, 0x07, +}; +static const unsigned char kat1494_addinreseed[] = { + 0xda, 0xbd, 0x11, 0x41, 0xbe, 0x9d, 0xea, 0xb1, 0x63, 0x6b, 0x32, 0xbc, + 0x3a, 0xbc, 0xfd, 0xbd, +}; +static const unsigned char kat1494_addin0[] = { + 0xe6, 0x5c, 0xc2, 0xe5, 0xdb, 0x61, 0x6f, 0x72, 0x88, 0xe9, 0x60, 0xfb, + 0xcf, 0x66, 0xf3, 0xc6, +}; +static const unsigned char kat1494_addin1[] = { + 0x4e, 0x6b, 0xa4, 0x15, 0x74, 0xca, 0xd7, 0x6b, 0x3c, 0x30, 0x5b, 0x4f, + 0x26, 0x21, 0xbd, 0xa5, +}; +static const unsigned char kat1494_retbits[] = { + 0x55, 0x17, 0xc5, 0x33, 0xa0, 0x61, 0x28, 0x3b, 0x9b, 0x6d, 0x73, 0xd3, + 0x3c, 0xd8, 0x54, 0x05, 0x85, 0x6d, 0x8a, 0x4e, 0xb2, 0x0e, 0x84, 0xbf, + 0xf2, 0x35, 0xb4, 0x1f, 0xcc, 0xee, 0xdd, 0xb0, 0xb4, 0x4b, 0xbb, 0x7e, + 0x69, 0x36, 0xc3, 0xe3, 0xc0, 0x2c, 0xd0, 0x0b, 0x19, 0xa2, 0xaf, 0x6f, + 0x34, 0xdc, 0xb2, 0x13, 0x41, 0xfa, 0xf7, 0x66, 0x19, 0xd6, 0x22, 0x6f, + 0xb6, 0x05, 0x74, 0x62, +}; +static const struct drbg_kat_pr_false kat1494_t = { + 8, kat1494_entropyin, kat1494_nonce, kat1494_persstr, + kat1494_entropyinreseed, kat1494_addinreseed, kat1494_addin0, + kat1494_addin1, kat1494_retbits +}; +static const struct drbg_kat kat1494 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1494_t +}; + +static const unsigned char kat1495_entropyin[] = { + 0xab, 0xe8, 0xb1, 0xce, 0xae, 0x3d, 0x3d, 0xb5, 0x29, 0xf9, 0x5d, 0x64, + 0x4e, 0x9f, 0x55, 0xcc, +}; +static const unsigned char kat1495_nonce[] = { + 0x5b, 0xe2, 0x69, 0x1f, 0xad, 0x7f, 0x23, 0x0f, +}; +static const unsigned char kat1495_persstr[] = { + 0x29, 0xe0, 0x71, 0x71, 0xa1, 0x7e, 0x7d, 0xc2, 0xe9, 0xad, 0x9e, 0xf7, + 0xcc, 0x23, 0xd9, 0xcb, +}; +static const unsigned char kat1495_entropyinreseed[] = { + 0xd3, 0x8f, 0xcb, 0x2f, 0x07, 0xb2, 0x66, 0x88, 0x8f, 0xfe, 0x56, 0xfc, + 0xc9, 0xaa, 0x5a, 0x1f, +}; +static const unsigned char kat1495_addinreseed[] = { + 0x6b, 0x87, 0x85, 0x79, 0x90, 0x8e, 0x78, 0xe8, 0x31, 0x02, 0x35, 0x75, + 0x6a, 0x77, 0xf9, 0x93, +}; +static const unsigned char kat1495_addin0[] = { + 0x1d, 0x3f, 0xf6, 0xcd, 0x95, 0x7b, 0x54, 0x21, 0x0b, 0xe6, 0x44, 0xe6, + 0xd0, 0x30, 0xa6, 0xa1, +}; +static const unsigned char kat1495_addin1[] = { + 0x77, 0x3d, 0xc5, 0xb3, 0x96, 0x70, 0x42, 0x23, 0xe7, 0xcc, 0xa2, 0xcd, + 0x60, 0x8b, 0xce, 0xb8, +}; +static const unsigned char kat1495_retbits[] = { + 0x53, 0x74, 0xa2, 0xbc, 0x46, 0xb5, 0x2d, 0x3e, 0xdc, 0x6e, 0xd1, 0xa1, + 0x75, 0x65, 0xe7, 0x48, 0xc5, 0xe8, 0x98, 0x8d, 0x5f, 0xab, 0x84, 0x60, + 0xa8, 0x8c, 0x2d, 0x8d, 0xb6, 0xe8, 0x50, 0xb3, 0x3c, 0x0c, 0x87, 0x46, + 0xb3, 0x22, 0x27, 0x87, 0x32, 0xf9, 0xcf, 0x0b, 0x73, 0x60, 0x5b, 0xb3, + 0x73, 0xc2, 0x5c, 0x68, 0xbe, 0x04, 0x58, 0x91, 0x02, 0xe5, 0x84, 0xe6, + 0xac, 0x1b, 0x19, 0x6e, +}; +static const struct drbg_kat_pr_false kat1495_t = { + 9, kat1495_entropyin, kat1495_nonce, kat1495_persstr, + kat1495_entropyinreseed, kat1495_addinreseed, kat1495_addin0, + kat1495_addin1, kat1495_retbits +}; +static const struct drbg_kat kat1495 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1495_t +}; + +static const unsigned char kat1496_entropyin[] = { + 0x79, 0xff, 0xe8, 0xb7, 0xd3, 0xd4, 0x9d, 0xb9, 0x11, 0xfd, 0x30, 0xef, + 0x93, 0x46, 0xd5, 0x7d, +}; +static const unsigned char kat1496_nonce[] = { + 0x1b, 0x78, 0x80, 0x42, 0xcd, 0x20, 0x43, 0xdc, +}; +static const unsigned char kat1496_persstr[] = { + 0xd0, 0xec, 0x0d, 0x2f, 0x76, 0x6a, 0x14, 0x14, 0x34, 0x77, 0x17, 0xc3, + 0x4c, 0xaf, 0x05, 0xe7, +}; +static const unsigned char kat1496_entropyinreseed[] = { + 0x56, 0x37, 0xac, 0x60, 0x4b, 0x75, 0xc1, 0xb8, 0x73, 0x16, 0x3b, 0xca, + 0x73, 0xde, 0xed, 0x55, +}; +static const unsigned char kat1496_addinreseed[] = { + 0x46, 0x9e, 0x7c, 0xae, 0xb9, 0x62, 0x54, 0x1f, 0x1a, 0x91, 0xed, 0xae, + 0x0c, 0x23, 0x17, 0xd9, +}; +static const unsigned char kat1496_addin0[] = { + 0x61, 0xc4, 0xaf, 0x6e, 0x27, 0x4d, 0xb9, 0xaf, 0xd8, 0x68, 0x04, 0x12, + 0x7c, 0x61, 0xfa, 0xd1, +}; +static const unsigned char kat1496_addin1[] = { + 0xbc, 0x2b, 0x9c, 0xba, 0xf0, 0xc3, 0xf0, 0xd5, 0x70, 0x3f, 0x1f, 0x77, + 0x3a, 0xa2, 0xc9, 0x97, +}; +static const unsigned char kat1496_retbits[] = { + 0x7a, 0xa0, 0x68, 0x59, 0xe4, 0x29, 0xae, 0x4c, 0xa7, 0xe9, 0x1f, 0x0e, + 0xf8, 0x53, 0x82, 0x33, 0x48, 0xce, 0x39, 0x64, 0x01, 0xcd, 0x54, 0x33, + 0x51, 0xfd, 0x01, 0xd9, 0xe2, 0xd7, 0x1d, 0x60, 0xe8, 0x33, 0x5f, 0x1c, + 0x1e, 0x5e, 0xb1, 0x4c, 0xca, 0x17, 0xfd, 0xb8, 0x8a, 0x7c, 0xf9, 0x8b, + 0x76, 0xc6, 0x6d, 0x0e, 0x9e, 0xe1, 0x9b, 0xd3, 0xc8, 0xd9, 0x49, 0x7c, + 0x76, 0xe4, 0x91, 0x73, +}; +static const struct drbg_kat_pr_false kat1496_t = { + 10, kat1496_entropyin, kat1496_nonce, kat1496_persstr, + kat1496_entropyinreseed, kat1496_addinreseed, kat1496_addin0, + kat1496_addin1, kat1496_retbits +}; +static const struct drbg_kat kat1496 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1496_t +}; + +static const unsigned char kat1497_entropyin[] = { + 0xcc, 0xb9, 0xd8, 0xb8, 0x68, 0x15, 0xe2, 0x10, 0xff, 0x4a, 0xb2, 0xcc, + 0x2e, 0x67, 0x31, 0xa4, +}; +static const unsigned char kat1497_nonce[] = { + 0xdb, 0x60, 0x11, 0xe5, 0xf0, 0x97, 0xa6, 0x12, +}; +static const unsigned char kat1497_persstr[] = { + 0x49, 0xac, 0x61, 0x3a, 0x4f, 0x2c, 0x9e, 0x98, 0x64, 0x9d, 0x30, 0x42, + 0x3f, 0x49, 0x5d, 0xd0, +}; +static const unsigned char kat1497_entropyinreseed[] = { + 0x26, 0x82, 0xd8, 0xad, 0xaa, 0xfa, 0x99, 0x5b, 0xba, 0xc4, 0x3d, 0xc1, + 0xcb, 0xc0, 0x45, 0x18, +}; +static const unsigned char kat1497_addinreseed[] = { + 0xed, 0x13, 0x7c, 0x1b, 0x55, 0x02, 0xc4, 0xf1, 0xe2, 0x01, 0xed, 0xb0, + 0x5e, 0xa7, 0x7a, 0x17, +}; +static const unsigned char kat1497_addin0[] = { + 0x3c, 0x00, 0x07, 0xa5, 0xe2, 0x30, 0xf7, 0x71, 0xd7, 0xf7, 0x48, 0x64, + 0x2c, 0x5f, 0x5a, 0x99, +}; +static const unsigned char kat1497_addin1[] = { + 0xfa, 0x22, 0xdd, 0x67, 0xea, 0xbf, 0x64, 0xcf, 0x83, 0xa3, 0x7b, 0xc4, + 0x5e, 0xcc, 0x2c, 0x88, +}; +static const unsigned char kat1497_retbits[] = { + 0x13, 0x58, 0xde, 0xc3, 0xa9, 0xf4, 0x57, 0x5e, 0x6e, 0xcf, 0x0d, 0x7d, + 0x59, 0x78, 0x20, 0x00, 0x4a, 0x18, 0xcf, 0x9c, 0x7e, 0x3d, 0xc9, 0xf7, + 0x14, 0x0e, 0x55, 0x4a, 0x7f, 0x82, 0xf7, 0xf9, 0xb6, 0x60, 0x56, 0x07, + 0x8a, 0xcb, 0xbc, 0x01, 0x84, 0x1f, 0x15, 0x54, 0x4a, 0xc5, 0x82, 0x2f, + 0x2f, 0xf0, 0xa8, 0x49, 0xca, 0xf6, 0xea, 0x89, 0x87, 0x17, 0x5b, 0x10, + 0x23, 0x1d, 0x23, 0xd1, +}; +static const struct drbg_kat_pr_false kat1497_t = { + 11, kat1497_entropyin, kat1497_nonce, kat1497_persstr, + kat1497_entropyinreseed, kat1497_addinreseed, kat1497_addin0, + kat1497_addin1, kat1497_retbits +}; +static const struct drbg_kat kat1497 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1497_t +}; + +static const unsigned char kat1498_entropyin[] = { + 0xf9, 0x4f, 0xfc, 0xa8, 0x16, 0x78, 0x20, 0x85, 0xe9, 0xd0, 0x16, 0xa4, + 0x2f, 0x84, 0xde, 0x8d, +}; +static const unsigned char kat1498_nonce[] = { + 0x32, 0x58, 0x62, 0x4b, 0xe8, 0xb3, 0x2e, 0x05, +}; +static const unsigned char kat1498_persstr[] = { + 0x94, 0x10, 0x1d, 0x2a, 0x9c, 0x6e, 0xf3, 0xa6, 0xf0, 0xc6, 0x49, 0x56, + 0x3a, 0x02, 0x97, 0xa4, +}; +static const unsigned char kat1498_entropyinreseed[] = { + 0x36, 0x32, 0xf0, 0xcb, 0x9f, 0xd4, 0x6d, 0x92, 0xb6, 0xf9, 0x29, 0x0a, + 0x49, 0xe1, 0xde, 0x52, +}; +static const unsigned char kat1498_addinreseed[] = { + 0xdb, 0xd2, 0x22, 0x23, 0x36, 0xea, 0x62, 0x5f, 0xfb, 0x44, 0xd6, 0x12, + 0xe2, 0xd1, 0xeb, 0x6d, +}; +static const unsigned char kat1498_addin0[] = { + 0x47, 0x8a, 0xfb, 0x77, 0x6c, 0x66, 0x81, 0x35, 0xa2, 0xbc, 0x52, 0x46, + 0x84, 0x3b, 0x68, 0xea, +}; +static const unsigned char kat1498_addin1[] = { + 0x16, 0xa4, 0x77, 0x8d, 0xb1, 0x68, 0x16, 0x89, 0x8f, 0x96, 0x07, 0x82, + 0x16, 0xd8, 0x31, 0x99, +}; +static const unsigned char kat1498_retbits[] = { + 0xa8, 0x9a, 0x30, 0xc5, 0xbb, 0x0f, 0x1e, 0x90, 0x7e, 0x99, 0xf3, 0x60, + 0x01, 0xf5, 0x08, 0x70, 0x91, 0xb2, 0xd4, 0xaf, 0x6e, 0x60, 0xa7, 0xf8, + 0x7b, 0x56, 0xf6, 0x94, 0xdc, 0x19, 0x45, 0x53, 0x1c, 0xd1, 0x34, 0x77, + 0x6b, 0xb3, 0x53, 0x69, 0xb4, 0x19, 0xed, 0xde, 0x4f, 0x75, 0xb6, 0x62, + 0x64, 0x02, 0x5b, 0xad, 0x47, 0x74, 0xe8, 0x67, 0x7d, 0x64, 0x57, 0x91, + 0x8e, 0x57, 0x5c, 0xe4, +}; +static const struct drbg_kat_pr_false kat1498_t = { + 12, kat1498_entropyin, kat1498_nonce, kat1498_persstr, + kat1498_entropyinreseed, kat1498_addinreseed, kat1498_addin0, + kat1498_addin1, kat1498_retbits +}; +static const struct drbg_kat kat1498 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1498_t +}; + +static const unsigned char kat1499_entropyin[] = { + 0x7f, 0xa4, 0xed, 0x36, 0x28, 0x6d, 0xed, 0x64, 0xbf, 0x49, 0x79, 0xa7, + 0x1f, 0x91, 0xbc, 0xed, +}; +static const unsigned char kat1499_nonce[] = { + 0x58, 0x6d, 0x02, 0xa8, 0x69, 0x2f, 0xd6, 0x0a, +}; +static const unsigned char kat1499_persstr[] = { + 0xdd, 0x1e, 0xf2, 0xe4, 0xdf, 0xcc, 0x03, 0x70, 0x33, 0x90, 0x13, 0x6d, + 0xd7, 0x40, 0xcd, 0xe7, +}; +static const unsigned char kat1499_entropyinreseed[] = { + 0x1a, 0xaf, 0xe1, 0x45, 0x12, 0x8f, 0xd1, 0xee, 0x74, 0x39, 0x3a, 0x6f, + 0x82, 0xcb, 0x65, 0x03, +}; +static const unsigned char kat1499_addinreseed[] = { + 0xcf, 0xbe, 0x4f, 0x09, 0xb2, 0xcb, 0x97, 0x41, 0x7e, 0xc7, 0xce, 0x81, + 0x8b, 0x15, 0x0f, 0x0b, +}; +static const unsigned char kat1499_addin0[] = { + 0x91, 0x69, 0xf9, 0xd1, 0x58, 0x00, 0xe7, 0x4b, 0x53, 0xdc, 0x41, 0x5a, + 0xfa, 0x49, 0x88, 0x39, +}; +static const unsigned char kat1499_addin1[] = { + 0x8d, 0xbe, 0xa4, 0xf4, 0x65, 0x25, 0xef, 0x21, 0xbf, 0xce, 0x86, 0xaa, + 0x52, 0x2f, 0xfb, 0x4a, +}; +static const unsigned char kat1499_retbits[] = { + 0x3e, 0xc9, 0xa5, 0x02, 0xb0, 0x21, 0xfa, 0xf3, 0x6c, 0x23, 0x31, 0xcb, + 0xf0, 0x31, 0x60, 0x50, 0x39, 0xab, 0x24, 0x8b, 0x3e, 0xbd, 0xf7, 0xc1, + 0x55, 0x37, 0x07, 0xc7, 0xc2, 0xfa, 0x63, 0x2a, 0xc6, 0x60, 0x2f, 0x3d, + 0x61, 0xcc, 0xe2, 0x5d, 0xc2, 0x1a, 0x3b, 0x48, 0xf3, 0x86, 0x5e, 0xb8, + 0x9c, 0xf2, 0x4e, 0xb3, 0x27, 0x40, 0x71, 0x8a, 0x2d, 0x50, 0xff, 0x22, + 0x49, 0x41, 0x4f, 0x3d, +}; +static const struct drbg_kat_pr_false kat1499_t = { + 13, kat1499_entropyin, kat1499_nonce, kat1499_persstr, + kat1499_entropyinreseed, kat1499_addinreseed, kat1499_addin0, + kat1499_addin1, kat1499_retbits +}; +static const struct drbg_kat kat1499 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1499_t +}; + +static const unsigned char kat1500_entropyin[] = { + 0x02, 0xf5, 0x6e, 0xa0, 0x27, 0x87, 0x5a, 0xda, 0xf7, 0x2f, 0xac, 0x22, + 0xd6, 0x1c, 0xd1, 0x7d, +}; +static const unsigned char kat1500_nonce[] = { + 0x50, 0xdd, 0x72, 0x48, 0xa6, 0x55, 0x9a, 0xf6, +}; +static const unsigned char kat1500_persstr[] = { + 0x1e, 0x2f, 0x36, 0x4b, 0x23, 0xba, 0x3c, 0xc5, 0x81, 0x5c, 0x13, 0x84, + 0xae, 0x22, 0xda, 0xc7, +}; +static const unsigned char kat1500_entropyinreseed[] = { + 0xc2, 0x08, 0x26, 0x28, 0x4e, 0x8f, 0xc9, 0x28, 0x54, 0x8f, 0x60, 0xc6, + 0x3b, 0x38, 0x6d, 0xda, +}; +static const unsigned char kat1500_addinreseed[] = { + 0x98, 0x66, 0x92, 0x20, 0xd5, 0x65, 0x71, 0xf2, 0xf2, 0xeb, 0x17, 0xaf, + 0x75, 0xb6, 0xac, 0x1a, +}; +static const unsigned char kat1500_addin0[] = { + 0x0d, 0x85, 0x9d, 0x1d, 0x9c, 0x91, 0x1f, 0x7e, 0x6d, 0x4e, 0xa8, 0x4a, + 0x9f, 0x77, 0x68, 0x7e, +}; +static const unsigned char kat1500_addin1[] = { + 0xe1, 0xcd, 0x4d, 0x47, 0x4c, 0x98, 0x5b, 0xa5, 0x62, 0xdc, 0x41, 0x00, + 0xec, 0x01, 0x15, 0x5a, +}; +static const unsigned char kat1500_retbits[] = { + 0xe8, 0x3f, 0x1f, 0x0f, 0xe0, 0xad, 0x9a, 0x8b, 0x6c, 0x0b, 0xee, 0x71, + 0x48, 0x4f, 0x03, 0xb2, 0x2c, 0xde, 0x5e, 0xf9, 0x90, 0xaf, 0x0f, 0xa4, + 0x9e, 0x45, 0xf9, 0xe8, 0xd0, 0xb1, 0xcd, 0x9c, 0x05, 0x8f, 0xf5, 0xc6, + 0x2f, 0x40, 0x9b, 0xad, 0x00, 0x5e, 0xa4, 0xf0, 0x0c, 0xae, 0xca, 0xc1, + 0xde, 0x6f, 0x6f, 0x89, 0x6f, 0x0d, 0xab, 0xe0, 0x20, 0xfd, 0xa5, 0x83, + 0x75, 0xe6, 0xca, 0x19, +}; +static const struct drbg_kat_pr_false kat1500_t = { + 14, kat1500_entropyin, kat1500_nonce, kat1500_persstr, + kat1500_entropyinreseed, kat1500_addinreseed, kat1500_addin0, + kat1500_addin1, kat1500_retbits +}; +static const struct drbg_kat kat1500 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1500_t +}; + +static const unsigned char kat1501_entropyin[] = { + 0x8f, 0xb9, 0x57, 0x3a, 0x54, 0x62, 0x53, 0xcd, 0xbf, 0x62, 0x15, 0xa1, + 0x80, 0x5a, 0x41, 0x38, +}; +static const unsigned char kat1501_nonce[] = { + 0x7c, 0x2c, 0xe6, 0x54, 0x02, 0xbc, 0xa6, 0x83, +}; +static const unsigned char kat1501_persstr[] = {0}; +static const unsigned char kat1501_entropyinreseed[] = { + 0xbc, 0x5a, 0xd8, 0x9a, 0xe1, 0x8c, 0x49, 0x1f, 0x90, 0xa2, 0xae, 0x9e, + 0x7e, 0x2c, 0xf9, 0x9d, +}; +static const unsigned char kat1501_addinreseed[] = {0}; +static const unsigned char kat1501_addin0[] = {0}; +static const unsigned char kat1501_addin1[] = {0}; +static const unsigned char kat1501_retbits[] = { + 0x07, 0x62, 0x82, 0xe8, 0x0e, 0x65, 0xd7, 0x70, 0x1a, 0x35, 0xb3, 0x44, + 0x63, 0x68, 0xb6, 0x16, 0xf8, 0xd9, 0x62, 0x23, 0xb9, 0xb5, 0x11, 0x64, + 0x23, 0xa3, 0xa2, 0x32, 0xc7, 0x2c, 0xea, 0xbf, 0x4a, 0xcc, 0xc4, 0x0a, + 0xc6, 0x19, 0xd6, 0xaa, 0x68, 0xae, 0xdb, 0x8b, 0x26, 0x70, 0xb8, 0x07, + 0xcc, 0xe9, 0x9f, 0xc2, 0x1b, 0x8f, 0xa5, 0x16, 0xef, 0x75, 0xb6, 0x8f, + 0xc0, 0x6c, 0x87, 0xc7, +}; +static const struct drbg_kat_pr_false kat1501_t = { + 0, kat1501_entropyin, kat1501_nonce, kat1501_persstr, + kat1501_entropyinreseed, kat1501_addinreseed, kat1501_addin0, + kat1501_addin1, kat1501_retbits +}; +static const struct drbg_kat kat1501 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1501_t +}; + +static const unsigned char kat1502_entropyin[] = { + 0xa3, 0x56, 0xf3, 0x9a, 0xce, 0x48, 0x59, 0xb1, 0xe1, 0x99, 0x49, 0x40, + 0x22, 0x8e, 0xa4, 0xeb, +}; +static const unsigned char kat1502_nonce[] = { + 0xff, 0x33, 0xe9, 0x51, 0x39, 0xf7, 0x67, 0xf1, +}; +static const unsigned char kat1502_persstr[] = {0}; +static const unsigned char kat1502_entropyinreseed[] = { + 0x66, 0x8f, 0x0f, 0xe2, 0xd8, 0xa9, 0xa9, 0x29, 0x20, 0xfc, 0xb9, 0xf3, + 0x55, 0xd6, 0xc3, 0x4c, +}; +static const unsigned char kat1502_addinreseed[] = {0}; +static const unsigned char kat1502_addin0[] = {0}; +static const unsigned char kat1502_addin1[] = {0}; +static const unsigned char kat1502_retbits[] = { + 0xa1, 0x06, 0x61, 0x65, 0x7b, 0x98, 0x0f, 0xac, 0xce, 0x77, 0x91, 0xde, + 0x7f, 0x6f, 0xe6, 0x1e, 0x88, 0x15, 0xe5, 0xe2, 0x4c, 0xce, 0xb8, 0xa6, + 0x63, 0xf2, 0xe8, 0x2f, 0x5b, 0xfb, 0x16, 0x92, 0x06, 0x2a, 0xf3, 0xa8, + 0x59, 0x05, 0xe0, 0x5a, 0x92, 0x9a, 0x07, 0x65, 0xc7, 0x41, 0x29, 0x3a, + 0x4b, 0x1d, 0x15, 0x3e, 0x02, 0x14, 0x7b, 0xdd, 0x74, 0x5e, 0xbd, 0x70, + 0x07, 0x4d, 0x6c, 0x08, +}; +static const struct drbg_kat_pr_false kat1502_t = { + 1, kat1502_entropyin, kat1502_nonce, kat1502_persstr, + kat1502_entropyinreseed, kat1502_addinreseed, kat1502_addin0, + kat1502_addin1, kat1502_retbits +}; +static const struct drbg_kat kat1502 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1502_t +}; + +static const unsigned char kat1503_entropyin[] = { + 0x9d, 0x44, 0xa6, 0x10, 0xec, 0x17, 0x51, 0xcb, 0x16, 0x9a, 0x5d, 0x83, + 0x20, 0x8c, 0xce, 0xe6, +}; +static const unsigned char kat1503_nonce[] = { + 0x7a, 0x50, 0x71, 0x58, 0xc9, 0x89, 0xc3, 0x23, +}; +static const unsigned char kat1503_persstr[] = {0}; +static const unsigned char kat1503_entropyinreseed[] = { + 0xd8, 0x0a, 0x20, 0x89, 0x7c, 0x16, 0x78, 0x06, 0xf2, 0xe2, 0x91, 0x99, + 0xa2, 0x7c, 0xe7, 0xc5, +}; +static const unsigned char kat1503_addinreseed[] = {0}; +static const unsigned char kat1503_addin0[] = {0}; +static const unsigned char kat1503_addin1[] = {0}; +static const unsigned char kat1503_retbits[] = { + 0x08, 0xe6, 0x18, 0xad, 0xca, 0x11, 0x34, 0xcb, 0x45, 0xa7, 0x38, 0x99, + 0x86, 0x5d, 0xf3, 0xab, 0x33, 0xeb, 0x31, 0xa7, 0x51, 0xb4, 0x29, 0x8f, + 0x98, 0xcd, 0x1f, 0xc8, 0xd2, 0xcb, 0x7c, 0x3c, 0xa1, 0x9a, 0xac, 0xd6, + 0x2b, 0x37, 0x55, 0x67, 0xd6, 0xba, 0x0c, 0xe1, 0xc0, 0x8f, 0x5f, 0xa6, + 0xe6, 0x8f, 0xfb, 0xe7, 0x6b, 0x8e, 0xae, 0xcd, 0xf6, 0x83, 0xdc, 0x34, + 0xe7, 0xf8, 0xd6, 0xd5, +}; +static const struct drbg_kat_pr_false kat1503_t = { + 2, kat1503_entropyin, kat1503_nonce, kat1503_persstr, + kat1503_entropyinreseed, kat1503_addinreseed, kat1503_addin0, + kat1503_addin1, kat1503_retbits +}; +static const struct drbg_kat kat1503 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1503_t +}; + +static const unsigned char kat1504_entropyin[] = { + 0xd0, 0x73, 0x0d, 0x39, 0xd5, 0xb5, 0xa5, 0x45, 0xd8, 0x15, 0x62, 0xfa, + 0xfa, 0xa1, 0x2b, 0xa0, +}; +static const unsigned char kat1504_nonce[] = { + 0x68, 0x37, 0xef, 0x68, 0x00, 0xd0, 0xe7, 0x4e, +}; +static const unsigned char kat1504_persstr[] = {0}; +static const unsigned char kat1504_entropyinreseed[] = { + 0x9b, 0xbe, 0x65, 0x33, 0x97, 0x4a, 0x7b, 0x1a, 0x6f, 0xab, 0x4e, 0xad, + 0x39, 0x35, 0x8a, 0xbe, +}; +static const unsigned char kat1504_addinreseed[] = {0}; +static const unsigned char kat1504_addin0[] = {0}; +static const unsigned char kat1504_addin1[] = {0}; +static const unsigned char kat1504_retbits[] = { + 0xf4, 0x42, 0xe8, 0xc6, 0xfa, 0x95, 0x34, 0x3c, 0x33, 0xf7, 0x9e, 0x32, + 0xb9, 0x72, 0xe4, 0x06, 0x91, 0xe2, 0x37, 0xa2, 0x5d, 0x55, 0x26, 0xf5, + 0x77, 0x24, 0xe7, 0x18, 0x41, 0x72, 0x5c, 0xba, 0x94, 0xa5, 0xd4, 0x5b, + 0x43, 0x3e, 0x80, 0xd2, 0xf2, 0x81, 0xae, 0x5a, 0xb2, 0x45, 0x5b, 0xa7, + 0x77, 0x9c, 0xf6, 0xf3, 0x37, 0x00, 0xf4, 0xa1, 0x3e, 0x4d, 0xdf, 0x77, + 0x43, 0xd9, 0xfe, 0x7b, +}; +static const struct drbg_kat_pr_false kat1504_t = { + 3, kat1504_entropyin, kat1504_nonce, kat1504_persstr, + kat1504_entropyinreseed, kat1504_addinreseed, kat1504_addin0, + kat1504_addin1, kat1504_retbits +}; +static const struct drbg_kat kat1504 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1504_t +}; + +static const unsigned char kat1505_entropyin[] = { + 0xbf, 0xa9, 0x11, 0xf9, 0x19, 0x52, 0xb0, 0x25, 0xae, 0xc0, 0xd1, 0xa5, + 0x6a, 0xb1, 0xd0, 0x7c, +}; +static const unsigned char kat1505_nonce[] = { + 0xa5, 0x04, 0x39, 0xc8, 0x03, 0xdd, 0xf0, 0x40, +}; +static const unsigned char kat1505_persstr[] = {0}; +static const unsigned char kat1505_entropyinreseed[] = { + 0x42, 0x92, 0x0c, 0x5e, 0x7c, 0x08, 0x15, 0x4f, 0xdd, 0x80, 0xc5, 0x26, + 0x31, 0x04, 0x38, 0x85, +}; +static const unsigned char kat1505_addinreseed[] = {0}; +static const unsigned char kat1505_addin0[] = {0}; +static const unsigned char kat1505_addin1[] = {0}; +static const unsigned char kat1505_retbits[] = { + 0x8c, 0x1d, 0x40, 0x8d, 0x7a, 0x3d, 0x0d, 0x30, 0x5c, 0x13, 0x4f, 0xda, + 0x0b, 0xf8, 0x3c, 0xb8, 0x2f, 0x00, 0xcd, 0x7c, 0x36, 0xa0, 0xc9, 0xb6, + 0x16, 0xeb, 0xb2, 0x3b, 0xaa, 0x62, 0x54, 0x46, 0x7f, 0x95, 0xc8, 0x4c, + 0xdb, 0x77, 0xc5, 0x96, 0xa7, 0x54, 0xcc, 0x3b, 0xd1, 0x04, 0x7a, 0xf7, + 0x8f, 0x0e, 0xe0, 0x64, 0xfb, 0x04, 0xb5, 0xe0, 0xf3, 0x0b, 0x4a, 0x5e, + 0x45, 0x69, 0x01, 0xbd, +}; +static const struct drbg_kat_pr_false kat1505_t = { + 4, kat1505_entropyin, kat1505_nonce, kat1505_persstr, + kat1505_entropyinreseed, kat1505_addinreseed, kat1505_addin0, + kat1505_addin1, kat1505_retbits +}; +static const struct drbg_kat kat1505 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1505_t +}; + +static const unsigned char kat1506_entropyin[] = { + 0xd0, 0xf7, 0x9a, 0x4a, 0xcb, 0x76, 0x76, 0x07, 0x1e, 0xf7, 0x71, 0xb5, + 0x95, 0x01, 0x63, 0x04, +}; +static const unsigned char kat1506_nonce[] = { + 0x5b, 0xc0, 0xfd, 0xdf, 0x69, 0xa1, 0x03, 0x90, +}; +static const unsigned char kat1506_persstr[] = {0}; +static const unsigned char kat1506_entropyinreseed[] = { + 0x27, 0x9e, 0xac, 0xfc, 0xff, 0xbb, 0x3f, 0xdb, 0xaf, 0x4b, 0x9e, 0xb5, + 0xa6, 0x6f, 0x5c, 0xb2, +}; +static const unsigned char kat1506_addinreseed[] = {0}; +static const unsigned char kat1506_addin0[] = {0}; +static const unsigned char kat1506_addin1[] = {0}; +static const unsigned char kat1506_retbits[] = { + 0xfe, 0x5d, 0x3a, 0x28, 0xe5, 0x1f, 0xb8, 0xa8, 0xab, 0xd0, 0xd9, 0xc9, + 0x58, 0xf1, 0x8c, 0xdb, 0x49, 0x89, 0xe4, 0xd5, 0xae, 0xab, 0x6c, 0x79, + 0xed, 0xb5, 0xa4, 0x3e, 0x7d, 0xe9, 0x09, 0xaa, 0xc1, 0x57, 0xd9, 0x09, + 0x4c, 0x18, 0xc5, 0xe5, 0xdd, 0x04, 0x3b, 0xaf, 0x06, 0x5e, 0xa2, 0x00, + 0x73, 0x32, 0xec, 0x2e, 0x62, 0x08, 0x6b, 0x0a, 0x61, 0xee, 0x49, 0xa2, + 0x5f, 0x01, 0xa2, 0x38, +}; +static const struct drbg_kat_pr_false kat1506_t = { + 5, kat1506_entropyin, kat1506_nonce, kat1506_persstr, + kat1506_entropyinreseed, kat1506_addinreseed, kat1506_addin0, + kat1506_addin1, kat1506_retbits +}; +static const struct drbg_kat kat1506 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1506_t +}; + +static const unsigned char kat1507_entropyin[] = { + 0xb5, 0xa2, 0x2a, 0x22, 0x03, 0x64, 0x4b, 0xfb, 0x3f, 0x2d, 0x70, 0x05, + 0x30, 0xe3, 0xf6, 0x54, +}; +static const unsigned char kat1507_nonce[] = { + 0x06, 0x74, 0x7e, 0x42, 0x67, 0xca, 0xbc, 0xb3, +}; +static const unsigned char kat1507_persstr[] = {0}; +static const unsigned char kat1507_entropyinreseed[] = { + 0xe8, 0xa0, 0xf9, 0x95, 0x24, 0x13, 0x72, 0xd7, 0xa3, 0x06, 0xd6, 0x8c, + 0xa1, 0x54, 0xde, 0x3f, +}; +static const unsigned char kat1507_addinreseed[] = {0}; +static const unsigned char kat1507_addin0[] = {0}; +static const unsigned char kat1507_addin1[] = {0}; +static const unsigned char kat1507_retbits[] = { + 0xc4, 0x56, 0xb4, 0x04, 0x91, 0x5e, 0x2d, 0x9c, 0xf9, 0x07, 0xc3, 0xcc, + 0x15, 0xd5, 0x47, 0x2d, 0xd3, 0xf5, 0x59, 0x2e, 0x8b, 0x15, 0x55, 0x70, + 0x30, 0x09, 0xe2, 0xc9, 0xc3, 0x11, 0x83, 0x9e, 0xcd, 0xc5, 0x7f, 0xcf, + 0xc7, 0x25, 0x56, 0x1c, 0x87, 0xf6, 0x74, 0x8f, 0xf4, 0x1c, 0xd7, 0xcd, + 0x40, 0x58, 0xc7, 0x91, 0xb7, 0xb3, 0xcc, 0x5d, 0x7b, 0xde, 0xf9, 0xb5, + 0x25, 0x81, 0x62, 0x63, +}; +static const struct drbg_kat_pr_false kat1507_t = { + 6, kat1507_entropyin, kat1507_nonce, kat1507_persstr, + kat1507_entropyinreseed, kat1507_addinreseed, kat1507_addin0, + kat1507_addin1, kat1507_retbits +}; +static const struct drbg_kat kat1507 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1507_t +}; + +static const unsigned char kat1508_entropyin[] = { + 0x50, 0x46, 0x48, 0x44, 0x48, 0xd2, 0x00, 0x97, 0xde, 0x1a, 0x5b, 0xc3, + 0x12, 0x8a, 0x92, 0xae, +}; +static const unsigned char kat1508_nonce[] = { + 0x3a, 0xbc, 0x3d, 0xdb, 0xe2, 0x0e, 0xce, 0xea, +}; +static const unsigned char kat1508_persstr[] = {0}; +static const unsigned char kat1508_entropyinreseed[] = { + 0x1a, 0xfb, 0xbf, 0x98, 0x99, 0x27, 0x1c, 0xfc, 0x4d, 0x0d, 0x5e, 0x1a, + 0x59, 0x26, 0xdd, 0x6e, +}; +static const unsigned char kat1508_addinreseed[] = {0}; +static const unsigned char kat1508_addin0[] = {0}; +static const unsigned char kat1508_addin1[] = {0}; +static const unsigned char kat1508_retbits[] = { + 0x8c, 0x4a, 0xfb, 0x37, 0x64, 0x12, 0x5f, 0x68, 0x62, 0xb1, 0x62, 0x19, + 0xab, 0x4d, 0x97, 0x1c, 0x8d, 0x11, 0x47, 0x0b, 0x45, 0xab, 0x31, 0x6a, + 0x0c, 0x02, 0xa1, 0x77, 0x00, 0x78, 0x16, 0xa4, 0x44, 0xec, 0x25, 0x85, + 0xe9, 0x46, 0x6b, 0xed, 0xc2, 0x7b, 0x69, 0x64, 0x7a, 0x4c, 0x9d, 0xdc, + 0x00, 0xd7, 0x14, 0x2e, 0x53, 0x82, 0x4f, 0x94, 0xc8, 0x59, 0x9a, 0x8f, + 0xe0, 0x49, 0x3f, 0xd8, +}; +static const struct drbg_kat_pr_false kat1508_t = { + 7, kat1508_entropyin, kat1508_nonce, kat1508_persstr, + kat1508_entropyinreseed, kat1508_addinreseed, kat1508_addin0, + kat1508_addin1, kat1508_retbits +}; +static const struct drbg_kat kat1508 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1508_t +}; + +static const unsigned char kat1509_entropyin[] = { + 0xca, 0x13, 0x7d, 0xcc, 0x62, 0x95, 0x61, 0x8b, 0x1f, 0xd0, 0x02, 0x96, + 0xb9, 0xf5, 0x12, 0x80, +}; +static const unsigned char kat1509_nonce[] = { + 0xe4, 0x22, 0x0e, 0xf8, 0x72, 0xa2, 0x08, 0x00, +}; +static const unsigned char kat1509_persstr[] = {0}; +static const unsigned char kat1509_entropyinreseed[] = { + 0x50, 0x9d, 0x1a, 0x2b, 0xbb, 0x90, 0x6a, 0x9c, 0xc3, 0x6b, 0xd8, 0x12, + 0x07, 0x83, 0xf2, 0x9b, +}; +static const unsigned char kat1509_addinreseed[] = {0}; +static const unsigned char kat1509_addin0[] = {0}; +static const unsigned char kat1509_addin1[] = {0}; +static const unsigned char kat1509_retbits[] = { + 0xf7, 0x07, 0xb1, 0xc7, 0x09, 0x8b, 0x23, 0x79, 0xe7, 0x54, 0xa0, 0x68, + 0x49, 0xf7, 0xe4, 0x55, 0x45, 0x31, 0x99, 0x2e, 0x97, 0x6f, 0xf1, 0xf9, + 0xd1, 0x86, 0x34, 0x9f, 0x56, 0xac, 0x34, 0x5f, 0x3a, 0x9b, 0x18, 0x0b, + 0x4d, 0x30, 0x52, 0x13, 0x12, 0x17, 0x18, 0x36, 0x98, 0x97, 0x63, 0x9b, + 0x6e, 0x96, 0x53, 0x7b, 0x55, 0x75, 0x44, 0x84, 0x0a, 0x70, 0x05, 0x31, + 0x02, 0xad, 0x8a, 0xf9, +}; +static const struct drbg_kat_pr_false kat1509_t = { + 8, kat1509_entropyin, kat1509_nonce, kat1509_persstr, + kat1509_entropyinreseed, kat1509_addinreseed, kat1509_addin0, + kat1509_addin1, kat1509_retbits +}; +static const struct drbg_kat kat1509 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1509_t +}; + +static const unsigned char kat1510_entropyin[] = { + 0x08, 0x5e, 0x0e, 0x3d, 0xee, 0xa0, 0x7d, 0xd7, 0x3f, 0x59, 0xf1, 0x4e, + 0x5b, 0x7f, 0x2f, 0xf0, +}; +static const unsigned char kat1510_nonce[] = { + 0x0c, 0xd8, 0x41, 0x7b, 0xe4, 0xb4, 0xc4, 0xdd, +}; +static const unsigned char kat1510_persstr[] = {0}; +static const unsigned char kat1510_entropyinreseed[] = { + 0x1c, 0xfd, 0xfb, 0xe2, 0x7d, 0x16, 0xe5, 0xcf, 0x1f, 0x40, 0xb1, 0x33, + 0x8c, 0xa8, 0x8b, 0x68, +}; +static const unsigned char kat1510_addinreseed[] = {0}; +static const unsigned char kat1510_addin0[] = {0}; +static const unsigned char kat1510_addin1[] = {0}; +static const unsigned char kat1510_retbits[] = { + 0x41, 0xae, 0x72, 0xd7, 0xcc, 0xcb, 0xc3, 0xc5, 0x49, 0x8d, 0xfe, 0xa8, + 0x95, 0x39, 0xfa, 0xb8, 0xbc, 0x41, 0x32, 0xfe, 0x97, 0xa4, 0x07, 0x81, + 0x55, 0xa6, 0x02, 0xc4, 0x8a, 0x59, 0xaf, 0xcf, 0xf8, 0x52, 0x1c, 0x9f, + 0x8b, 0x98, 0xcc, 0xe8, 0x04, 0x83, 0x3d, 0xf1, 0x0e, 0xd7, 0x24, 0x32, + 0xad, 0x55, 0x53, 0x32, 0xb4, 0x45, 0x15, 0x97, 0x05, 0xca, 0x4f, 0x08, + 0x3b, 0x8c, 0x47, 0x50, +}; +static const struct drbg_kat_pr_false kat1510_t = { + 9, kat1510_entropyin, kat1510_nonce, kat1510_persstr, + kat1510_entropyinreseed, kat1510_addinreseed, kat1510_addin0, + kat1510_addin1, kat1510_retbits +}; +static const struct drbg_kat kat1510 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1510_t +}; + +static const unsigned char kat1511_entropyin[] = { + 0x34, 0x1e, 0x1c, 0x73, 0xa6, 0xea, 0x1f, 0x26, 0x56, 0xf5, 0xa1, 0xfb, + 0x1d, 0x37, 0x47, 0x68, +}; +static const unsigned char kat1511_nonce[] = { + 0x9d, 0xa8, 0xa5, 0x0c, 0xd2, 0xed, 0x65, 0x6d, +}; +static const unsigned char kat1511_persstr[] = {0}; +static const unsigned char kat1511_entropyinreseed[] = { + 0x06, 0x0c, 0x46, 0x77, 0x0b, 0x91, 0x7e, 0x1e, 0x52, 0xae, 0xf5, 0x79, + 0x59, 0xdd, 0x21, 0x5c, +}; +static const unsigned char kat1511_addinreseed[] = {0}; +static const unsigned char kat1511_addin0[] = {0}; +static const unsigned char kat1511_addin1[] = {0}; +static const unsigned char kat1511_retbits[] = { + 0xce, 0xe3, 0x33, 0x6f, 0xc4, 0xe3, 0xd7, 0x1c, 0x6b, 0xc3, 0x8a, 0x64, + 0xdd, 0x1c, 0x63, 0xb7, 0xce, 0xf0, 0x2d, 0x1f, 0x7c, 0x74, 0x47, 0xe6, + 0x25, 0x87, 0xe5, 0x5b, 0xe3, 0x4b, 0x3a, 0xf1, 0x13, 0x86, 0xf5, 0xee, + 0x74, 0x97, 0x8b, 0xaf, 0xd9, 0x77, 0x1a, 0x2c, 0xc3, 0xec, 0x5c, 0xea, + 0x1e, 0xa1, 0x2a, 0xd9, 0x72, 0xb4, 0xf4, 0xc3, 0x21, 0x9c, 0xa0, 0x6c, + 0xfd, 0xa3, 0x4e, 0x71, +}; +static const struct drbg_kat_pr_false kat1511_t = { + 10, kat1511_entropyin, kat1511_nonce, kat1511_persstr, + kat1511_entropyinreseed, kat1511_addinreseed, kat1511_addin0, + kat1511_addin1, kat1511_retbits +}; +static const struct drbg_kat kat1511 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1511_t +}; + +static const unsigned char kat1512_entropyin[] = { + 0x97, 0x03, 0x15, 0x4e, 0x41, 0x37, 0x83, 0x70, 0x0f, 0x00, 0x8d, 0xd7, + 0x63, 0x8b, 0x67, 0xbb, +}; +static const unsigned char kat1512_nonce[] = { + 0x12, 0x1e, 0x51, 0x2a, 0x31, 0x8f, 0xd5, 0x7e, +}; +static const unsigned char kat1512_persstr[] = {0}; +static const unsigned char kat1512_entropyinreseed[] = { + 0x7c, 0xcf, 0x5c, 0xe2, 0x43, 0xa0, 0x6f, 0x5d, 0x81, 0x43, 0xa7, 0x71, + 0x25, 0x89, 0x01, 0xdc, +}; +static const unsigned char kat1512_addinreseed[] = {0}; +static const unsigned char kat1512_addin0[] = {0}; +static const unsigned char kat1512_addin1[] = {0}; +static const unsigned char kat1512_retbits[] = { + 0xb2, 0xf5, 0xeb, 0xe6, 0xd2, 0xa3, 0xdf, 0x80, 0xa6, 0x50, 0x81, 0x3c, + 0xef, 0xd8, 0x5e, 0x13, 0x9d, 0x32, 0x68, 0x13, 0xdf, 0x86, 0xb5, 0xd2, + 0x44, 0x12, 0x16, 0x0c, 0x42, 0x7e, 0xad, 0x56, 0xd7, 0x54, 0xa4, 0xcc, + 0x9c, 0x47, 0xa2, 0x38, 0xf1, 0xbd, 0xdf, 0x23, 0x4f, 0xaf, 0x22, 0xcf, + 0x04, 0x48, 0x41, 0x3c, 0x1b, 0x0f, 0x6e, 0xbe, 0x76, 0x81, 0x56, 0x07, + 0xea, 0xf5, 0x0c, 0xde, +}; +static const struct drbg_kat_pr_false kat1512_t = { + 11, kat1512_entropyin, kat1512_nonce, kat1512_persstr, + kat1512_entropyinreseed, kat1512_addinreseed, kat1512_addin0, + kat1512_addin1, kat1512_retbits +}; +static const struct drbg_kat kat1512 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1512_t +}; + +static const unsigned char kat1513_entropyin[] = { + 0xc2, 0x1f, 0x5b, 0xa9, 0x60, 0x56, 0x05, 0x48, 0xe0, 0xe2, 0x1c, 0x5f, + 0x7e, 0xc6, 0x73, 0xd9, +}; +static const unsigned char kat1513_nonce[] = { + 0xf8, 0x4e, 0x7b, 0xd5, 0xbd, 0x4b, 0xfb, 0xf1, +}; +static const unsigned char kat1513_persstr[] = {0}; +static const unsigned char kat1513_entropyinreseed[] = { + 0x26, 0x7c, 0xc9, 0x91, 0x06, 0xd5, 0x78, 0x5c, 0xdf, 0x30, 0x71, 0xc3, + 0xdc, 0xec, 0xf4, 0x91, +}; +static const unsigned char kat1513_addinreseed[] = {0}; +static const unsigned char kat1513_addin0[] = {0}; +static const unsigned char kat1513_addin1[] = {0}; +static const unsigned char kat1513_retbits[] = { + 0x0a, 0x65, 0x00, 0xca, 0xfa, 0x9b, 0x84, 0x70, 0x17, 0x42, 0xc0, 0xfb, + 0x62, 0x7e, 0x74, 0x4a, 0x6d, 0x4a, 0x5c, 0x56, 0x0e, 0x69, 0x49, 0xaa, + 0x18, 0x21, 0x32, 0x1f, 0x66, 0x1e, 0x5e, 0x1c, 0x52, 0xa3, 0x83, 0x94, + 0xab, 0xa1, 0x3b, 0x35, 0xdc, 0xb5, 0x14, 0x28, 0x9f, 0xc8, 0xc2, 0x84, + 0xb2, 0x03, 0x6d, 0xcd, 0x81, 0x91, 0x93, 0x7c, 0x84, 0x05, 0x57, 0x23, + 0xf1, 0x6a, 0x90, 0x8b, +}; +static const struct drbg_kat_pr_false kat1513_t = { + 12, kat1513_entropyin, kat1513_nonce, kat1513_persstr, + kat1513_entropyinreseed, kat1513_addinreseed, kat1513_addin0, + kat1513_addin1, kat1513_retbits +}; +static const struct drbg_kat kat1513 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1513_t +}; + +static const unsigned char kat1514_entropyin[] = { + 0x28, 0x4a, 0x67, 0xba, 0xe2, 0x7a, 0xb3, 0x2b, 0xc5, 0x01, 0x62, 0xc0, + 0x04, 0xcb, 0x92, 0xae, +}; +static const unsigned char kat1514_nonce[] = { + 0x04, 0xbb, 0x32, 0x64, 0x59, 0xa8, 0x87, 0xd1, +}; +static const unsigned char kat1514_persstr[] = {0}; +static const unsigned char kat1514_entropyinreseed[] = { + 0x79, 0x70, 0x2b, 0x24, 0xdf, 0x8d, 0xf1, 0xbd, 0x7a, 0xba, 0x9c, 0x32, + 0xae, 0x59, 0x6e, 0x6e, +}; +static const unsigned char kat1514_addinreseed[] = {0}; +static const unsigned char kat1514_addin0[] = {0}; +static const unsigned char kat1514_addin1[] = {0}; +static const unsigned char kat1514_retbits[] = { + 0x18, 0x99, 0xd5, 0xee, 0xd8, 0xc2, 0xf5, 0x7e, 0x3e, 0xd1, 0x0e, 0x78, + 0x00, 0x43, 0xa8, 0x53, 0x66, 0xf1, 0xf7, 0xc2, 0xab, 0xc5, 0x15, 0xbc, + 0xed, 0xf6, 0x6d, 0x0b, 0x16, 0xd6, 0x98, 0x69, 0x48, 0x62, 0xad, 0xf1, + 0xa3, 0x38, 0xfb, 0x72, 0xda, 0xfa, 0xd4, 0x5e, 0x8b, 0xc9, 0x62, 0x40, + 0xd6, 0xac, 0x2f, 0x3d, 0x8b, 0xc1, 0x53, 0x74, 0xf5, 0xa8, 0xb4, 0x8b, + 0xf6, 0xbc, 0xfa, 0xe9, +}; +static const struct drbg_kat_pr_false kat1514_t = { + 13, kat1514_entropyin, kat1514_nonce, kat1514_persstr, + kat1514_entropyinreseed, kat1514_addinreseed, kat1514_addin0, + kat1514_addin1, kat1514_retbits +}; +static const struct drbg_kat kat1514 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1514_t +}; + +static const unsigned char kat1515_entropyin[] = { + 0xdd, 0x2c, 0x72, 0xa4, 0x39, 0x7b, 0x13, 0xbe, 0x45, 0x53, 0xb5, 0xc4, + 0x9a, 0x2f, 0x3b, 0xeb, +}; +static const unsigned char kat1515_nonce[] = { + 0xbc, 0xff, 0xaa, 0x34, 0xaa, 0xac, 0x32, 0x54, +}; +static const unsigned char kat1515_persstr[] = {0}; +static const unsigned char kat1515_entropyinreseed[] = { + 0x90, 0x87, 0x42, 0x87, 0xa6, 0x89, 0xbb, 0x9d, 0x68, 0x53, 0x33, 0x0e, + 0xf7, 0x74, 0xba, 0x2f, +}; +static const unsigned char kat1515_addinreseed[] = {0}; +static const unsigned char kat1515_addin0[] = {0}; +static const unsigned char kat1515_addin1[] = {0}; +static const unsigned char kat1515_retbits[] = { + 0xa1, 0x53, 0x34, 0x21, 0x97, 0x1e, 0x2c, 0xa2, 0x16, 0x0f, 0x2c, 0x50, + 0xc7, 0xd6, 0x09, 0xb1, 0xb6, 0xf5, 0x6b, 0xb7, 0xdd, 0x7f, 0xeb, 0x01, + 0x02, 0xd9, 0xa4, 0x99, 0x52, 0xf7, 0xaa, 0xb4, 0xa9, 0xaf, 0x4a, 0xb5, + 0x52, 0x04, 0x55, 0xad, 0x4b, 0xdb, 0x24, 0x2d, 0x68, 0x88, 0xda, 0xdd, + 0xb9, 0x23, 0xcf, 0x08, 0xff, 0x12, 0x1d, 0xf1, 0x14, 0xd8, 0xda, 0x43, + 0x75, 0xf3, 0xef, 0x00, +}; +static const struct drbg_kat_pr_false kat1515_t = { + 14, kat1515_entropyin, kat1515_nonce, kat1515_persstr, + kat1515_entropyinreseed, kat1515_addinreseed, kat1515_addin0, + kat1515_addin1, kat1515_retbits +}; +static const struct drbg_kat kat1515 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1515_t +}; + +static const unsigned char kat1516_entropyin[] = { + 0x0e, 0xbf, 0x2b, 0x35, 0xe3, 0xbb, 0x32, 0x47, 0x59, 0x43, 0x9b, 0x95, + 0xa2, 0x88, 0x06, 0x1f, +}; +static const unsigned char kat1516_nonce[] = { + 0x85, 0xa8, 0x2c, 0x13, 0xcc, 0x42, 0xd7, 0x12, +}; +static const unsigned char kat1516_persstr[] = {0}; +static const unsigned char kat1516_entropyinreseed[] = { + 0xdf, 0xfb, 0x5d, 0x11, 0x8b, 0xea, 0x70, 0x1d, 0x88, 0x51, 0xb3, 0x2c, + 0x87, 0xef, 0xf0, 0x1c, +}; +static const unsigned char kat1516_addinreseed[] = { + 0xa5, 0x38, 0x19, 0x20, 0x80, 0x57, 0x18, 0xf3, 0xf6, 0xb3, 0x06, 0x61, + 0x01, 0x1a, 0x57, 0x5d, +}; +static const unsigned char kat1516_addin0[] = { + 0x62, 0x90, 0x1f, 0xf5, 0xdb, 0xa5, 0x74, 0xf5, 0x3e, 0x13, 0xc6, 0xa6, + 0x2f, 0x89, 0xa2, 0x92, +}; +static const unsigned char kat1516_addin1[] = { + 0xf1, 0xd5, 0x09, 0x2b, 0xbb, 0x3f, 0xdf, 0x50, 0xca, 0x79, 0xf3, 0xd8, + 0xb7, 0x6c, 0xa7, 0x93, +}; +static const unsigned char kat1516_retbits[] = { + 0x0f, 0x24, 0x8a, 0xa8, 0x75, 0xfa, 0x2c, 0x12, 0xd5, 0x41, 0x1d, 0xdc, + 0xd3, 0xfb, 0x5b, 0x46, 0x6e, 0x14, 0xd9, 0x2b, 0xab, 0x2e, 0x02, 0x4e, + 0xed, 0x61, 0x2e, 0x98, 0x8c, 0xf5, 0x0d, 0xb1, 0xa7, 0x54, 0x5d, 0xf0, + 0x9f, 0x88, 0x6d, 0x51, 0x6d, 0xa5, 0xe0, 0x21, 0x12, 0x4d, 0xfc, 0x80, + 0xf6, 0x06, 0xfe, 0x08, 0xa6, 0x65, 0x37, 0x64, 0xab, 0xbc, 0xfa, 0x04, + 0x57, 0x5f, 0xb0, 0xc0, +}; +static const struct drbg_kat_pr_false kat1516_t = { + 0, kat1516_entropyin, kat1516_nonce, kat1516_persstr, + kat1516_entropyinreseed, kat1516_addinreseed, kat1516_addin0, + kat1516_addin1, kat1516_retbits +}; +static const struct drbg_kat kat1516 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1516_t +}; + +static const unsigned char kat1517_entropyin[] = { + 0x10, 0xee, 0x75, 0x33, 0x84, 0x5d, 0xc0, 0xf0, 0x23, 0x06, 0x1b, 0x20, + 0xaa, 0x73, 0x5e, 0xb7, +}; +static const unsigned char kat1517_nonce[] = { + 0x35, 0xfd, 0xf5, 0x31, 0xf1, 0x88, 0xa7, 0x92, +}; +static const unsigned char kat1517_persstr[] = {0}; +static const unsigned char kat1517_entropyinreseed[] = { + 0x31, 0xa2, 0x26, 0xc2, 0xbc, 0x57, 0x74, 0xfd, 0xb5, 0xe6, 0x8b, 0xf3, + 0xb0, 0xdc, 0x95, 0x14, +}; +static const unsigned char kat1517_addinreseed[] = { + 0xae, 0x85, 0x20, 0x20, 0x16, 0xbf, 0xfa, 0x9a, 0x3f, 0x7f, 0x5a, 0x9a, + 0xd4, 0x03, 0xc8, 0x80, +}; +static const unsigned char kat1517_addin0[] = { + 0xec, 0xda, 0x1e, 0xe2, 0xf9, 0xdf, 0xa3, 0x0a, 0x43, 0x6d, 0x7d, 0x14, + 0xe3, 0xe0, 0xa5, 0xaa, +}; +static const unsigned char kat1517_addin1[] = { + 0x95, 0xa6, 0x32, 0xef, 0x2f, 0x1f, 0xb0, 0x35, 0x67, 0x43, 0xda, 0xb7, + 0xd6, 0x8b, 0x84, 0x10, +}; +static const unsigned char kat1517_retbits[] = { + 0x47, 0x5f, 0x26, 0x22, 0x12, 0xa8, 0xfa, 0x70, 0x7d, 0x98, 0x3e, 0xbc, + 0x32, 0x21, 0xd4, 0x0f, 0xe5, 0xaf, 0xd0, 0xd5, 0x7f, 0x3f, 0x6c, 0xca, + 0x17, 0x32, 0x98, 0xa0, 0x12, 0x95, 0xd3, 0xd4, 0xd8, 0xfe, 0x9c, 0x08, + 0x77, 0x48, 0x49, 0x98, 0x7c, 0xa7, 0x6b, 0x02, 0x68, 0xdc, 0x38, 0x1c, + 0x66, 0xb2, 0xdf, 0xf1, 0x4d, 0x6c, 0xdf, 0x47, 0x28, 0x3c, 0x4b, 0x0b, + 0x27, 0xbd, 0xad, 0x7d, +}; +static const struct drbg_kat_pr_false kat1517_t = { + 1, kat1517_entropyin, kat1517_nonce, kat1517_persstr, + kat1517_entropyinreseed, kat1517_addinreseed, kat1517_addin0, + kat1517_addin1, kat1517_retbits +}; +static const struct drbg_kat kat1517 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1517_t +}; + +static const unsigned char kat1518_entropyin[] = { + 0xfa, 0xfc, 0xae, 0xf2, 0xed, 0xba, 0x52, 0xd4, 0x3f, 0x54, 0x5c, 0xe1, + 0x14, 0x53, 0x31, 0xc0, +}; +static const unsigned char kat1518_nonce[] = { + 0xed, 0x9e, 0x93, 0x13, 0xc5, 0xa7, 0xe0, 0x22, +}; +static const unsigned char kat1518_persstr[] = {0}; +static const unsigned char kat1518_entropyinreseed[] = { + 0xf6, 0xe6, 0x97, 0xd6, 0x32, 0x58, 0x88, 0xe6, 0xdf, 0x3e, 0x4e, 0x47, + 0x2f, 0xee, 0x64, 0x0f, +}; +static const unsigned char kat1518_addinreseed[] = { + 0x04, 0xa7, 0x08, 0x33, 0xc5, 0xe9, 0x16, 0xa7, 0xfb, 0xd4, 0xa7, 0x95, + 0x67, 0x13, 0xa3, 0x05, +}; +static const unsigned char kat1518_addin0[] = { + 0x7a, 0xb9, 0xb4, 0x53, 0x6f, 0xc0, 0xdf, 0x7b, 0xa3, 0xc3, 0x0b, 0x5c, + 0x2c, 0x87, 0xcd, 0x77, +}; +static const unsigned char kat1518_addin1[] = { + 0xb7, 0x1b, 0x91, 0xc5, 0xa5, 0x5e, 0xa8, 0x36, 0x8e, 0x43, 0x8c, 0x94, + 0x3f, 0xf3, 0x9c, 0x3f, +}; +static const unsigned char kat1518_retbits[] = { + 0x6a, 0x11, 0x3a, 0x62, 0xa6, 0x70, 0x0f, 0xb9, 0x8c, 0x2c, 0xbb, 0xc9, + 0x73, 0x37, 0x85, 0x03, 0xd9, 0x10, 0xad, 0xa0, 0x5a, 0xa8, 0xa3, 0x8e, + 0x18, 0x04, 0xf0, 0xd1, 0xcb, 0xbf, 0xfa, 0xe1, 0x3b, 0xa2, 0xf3, 0xab, + 0xc3, 0x6d, 0xeb, 0x2b, 0x39, 0x78, 0x4c, 0x31, 0xc8, 0xc1, 0x31, 0x8c, + 0x4a, 0x4b, 0x19, 0x4d, 0x55, 0x18, 0xc3, 0x9b, 0x06, 0xd7, 0x05, 0x57, + 0x4c, 0xe7, 0x02, 0x80, +}; +static const struct drbg_kat_pr_false kat1518_t = { + 2, kat1518_entropyin, kat1518_nonce, kat1518_persstr, + kat1518_entropyinreseed, kat1518_addinreseed, kat1518_addin0, + kat1518_addin1, kat1518_retbits +}; +static const struct drbg_kat kat1518 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1518_t +}; + +static const unsigned char kat1519_entropyin[] = { + 0xda, 0x1e, 0x20, 0x47, 0xbc, 0x9a, 0xf0, 0x2b, 0x91, 0x47, 0x56, 0xe9, + 0x6f, 0xdc, 0x2f, 0x25, +}; +static const unsigned char kat1519_nonce[] = { + 0xb1, 0x67, 0xd6, 0x00, 0x1e, 0x06, 0x54, 0x0d, +}; +static const unsigned char kat1519_persstr[] = {0}; +static const unsigned char kat1519_entropyinreseed[] = { + 0x85, 0x18, 0x7c, 0x63, 0x83, 0x49, 0x3b, 0xd8, 0x90, 0x5a, 0x92, 0x23, + 0xa3, 0x09, 0x0e, 0x22, +}; +static const unsigned char kat1519_addinreseed[] = { + 0x36, 0xbe, 0xd8, 0x9a, 0x0e, 0xbe, 0x1c, 0x9d, 0x79, 0x79, 0x24, 0xf9, + 0xff, 0x44, 0x2d, 0x23, +}; +static const unsigned char kat1519_addin0[] = { + 0xf9, 0xbe, 0xa5, 0x6f, 0x2f, 0x3f, 0x48, 0xb3, 0x80, 0xc0, 0x4a, 0x39, + 0x30, 0xac, 0x7a, 0x8e, +}; +static const unsigned char kat1519_addin1[] = { + 0x5c, 0x29, 0xb5, 0xb5, 0x5a, 0x55, 0xa9, 0xb6, 0x84, 0x5a, 0xf9, 0xa1, + 0x7c, 0x67, 0xee, 0x45, +}; +static const unsigned char kat1519_retbits[] = { + 0xcd, 0x69, 0x84, 0x4e, 0xeb, 0x18, 0x4a, 0x70, 0xd0, 0x53, 0x4b, 0x51, + 0x4c, 0x5a, 0xf3, 0xd2, 0x2e, 0x3e, 0xb6, 0x79, 0x4d, 0x13, 0x3e, 0x89, + 0x84, 0xb9, 0xa9, 0xb5, 0xea, 0x35, 0xf5, 0x89, 0xc0, 0x67, 0x70, 0x83, + 0xc3, 0x9f, 0x3c, 0x60, 0xdb, 0x7c, 0xbe, 0x58, 0xcb, 0xf7, 0xdf, 0x6f, + 0xcb, 0x15, 0xb6, 0xd7, 0x21, 0xa7, 0xb6, 0xa9, 0x4e, 0x1d, 0xc4, 0x08, + 0x6b, 0xb1, 0x3e, 0x05, +}; +static const struct drbg_kat_pr_false kat1519_t = { + 3, kat1519_entropyin, kat1519_nonce, kat1519_persstr, + kat1519_entropyinreseed, kat1519_addinreseed, kat1519_addin0, + kat1519_addin1, kat1519_retbits +}; +static const struct drbg_kat kat1519 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1519_t +}; + +static const unsigned char kat1520_entropyin[] = { + 0x75, 0xfa, 0x45, 0xe3, 0x12, 0xfe, 0x40, 0x4b, 0x2c, 0x2d, 0x04, 0x6c, + 0x95, 0x7b, 0xe4, 0x75, +}; +static const unsigned char kat1520_nonce[] = { + 0x43, 0xf4, 0xab, 0xde, 0xc9, 0x95, 0x8a, 0x7b, +}; +static const unsigned char kat1520_persstr[] = {0}; +static const unsigned char kat1520_entropyinreseed[] = { + 0x37, 0xf9, 0xaf, 0x34, 0x4a, 0x6d, 0x05, 0x07, 0xb5, 0x2a, 0x9b, 0xa7, + 0xc5, 0x59, 0x1a, 0x8f, +}; +static const unsigned char kat1520_addinreseed[] = { + 0x60, 0xfe, 0x6b, 0xc8, 0xfe, 0x44, 0x0c, 0x77, 0xb8, 0x60, 0xe8, 0x0c, + 0xff, 0xff, 0xd0, 0xf9, +}; +static const unsigned char kat1520_addin0[] = { + 0xf4, 0x9a, 0x52, 0x42, 0x28, 0xc4, 0x29, 0x6f, 0xcf, 0x84, 0xdc, 0x89, + 0x35, 0xc8, 0x21, 0x32, +}; +static const unsigned char kat1520_addin1[] = { + 0x27, 0x2a, 0x13, 0xa8, 0xce, 0xfd, 0x6d, 0x53, 0x9c, 0x0b, 0xf7, 0x6b, + 0x22, 0xf7, 0xdc, 0x74, +}; +static const unsigned char kat1520_retbits[] = { + 0x79, 0x9e, 0xe6, 0x4e, 0x0b, 0x59, 0x2c, 0xf2, 0x94, 0x63, 0x66, 0x07, + 0x1f, 0x8a, 0xbe, 0xce, 0x86, 0xac, 0x22, 0x10, 0xb6, 0x8f, 0x03, 0x86, + 0xfb, 0xa3, 0x5f, 0x95, 0x56, 0xa9, 0xa3, 0xb6, 0x1e, 0xe6, 0x2f, 0x73, + 0x64, 0xf0, 0x87, 0x5e, 0x68, 0x06, 0xd4, 0x0e, 0x6a, 0x65, 0x35, 0x41, + 0xb3, 0x1c, 0xa3, 0x3f, 0xe7, 0x07, 0xb6, 0x6c, 0x74, 0xb2, 0xe1, 0x57, + 0x35, 0xa1, 0x0c, 0x53, +}; +static const struct drbg_kat_pr_false kat1520_t = { + 4, kat1520_entropyin, kat1520_nonce, kat1520_persstr, + kat1520_entropyinreseed, kat1520_addinreseed, kat1520_addin0, + kat1520_addin1, kat1520_retbits +}; +static const struct drbg_kat kat1520 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1520_t +}; + +static const unsigned char kat1521_entropyin[] = { + 0x28, 0xf3, 0xba, 0xc6, 0x9b, 0xac, 0xa7, 0x30, 0x95, 0x14, 0x78, 0x34, + 0x66, 0x30, 0x5a, 0x86, +}; +static const unsigned char kat1521_nonce[] = { + 0x37, 0x05, 0xb2, 0x1e, 0x2c, 0x31, 0xde, 0xe6, +}; +static const unsigned char kat1521_persstr[] = {0}; +static const unsigned char kat1521_entropyinreseed[] = { + 0x00, 0x13, 0x5b, 0x11, 0x10, 0x85, 0x41, 0xc6, 0x8c, 0x86, 0x81, 0x53, + 0x70, 0x2f, 0x9e, 0xa1, +}; +static const unsigned char kat1521_addinreseed[] = { + 0x98, 0x8b, 0x4e, 0x97, 0x77, 0x22, 0x6d, 0xb3, 0xad, 0x2f, 0xff, 0xb5, + 0x68, 0x64, 0xc1, 0x20, +}; +static const unsigned char kat1521_addin0[] = { + 0x0e, 0xe8, 0xa9, 0x98, 0xfc, 0xd4, 0x86, 0xa3, 0x0a, 0x35, 0xe7, 0xfe, + 0xcc, 0x7f, 0xff, 0xa6, +}; +static const unsigned char kat1521_addin1[] = { + 0x9e, 0x45, 0xcf, 0x0d, 0x81, 0x63, 0x75, 0x9e, 0x79, 0x12, 0x3b, 0xdd, + 0xea, 0x72, 0x05, 0xd9, +}; +static const unsigned char kat1521_retbits[] = { + 0x4f, 0x4e, 0x76, 0x2f, 0x1b, 0x6d, 0x4b, 0x8e, 0xaa, 0x15, 0x53, 0x29, + 0xab, 0x29, 0x9f, 0x52, 0x0e, 0x5e, 0xe1, 0x9e, 0x7a, 0x65, 0x75, 0xc0, + 0x46, 0x52, 0xda, 0x31, 0x94, 0x32, 0x66, 0x22, 0x5a, 0xa6, 0xeb, 0x36, + 0x38, 0x8a, 0x03, 0xf1, 0x7a, 0xeb, 0xd6, 0xc7, 0x45, 0xfc, 0x63, 0x7a, + 0xac, 0xdf, 0xc5, 0x09, 0x6e, 0x31, 0x03, 0x19, 0x6d, 0x3f, 0x03, 0x86, + 0xd4, 0x2c, 0x50, 0xb4, +}; +static const struct drbg_kat_pr_false kat1521_t = { + 5, kat1521_entropyin, kat1521_nonce, kat1521_persstr, + kat1521_entropyinreseed, kat1521_addinreseed, kat1521_addin0, + kat1521_addin1, kat1521_retbits +}; +static const struct drbg_kat kat1521 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1521_t +}; + +static const unsigned char kat1522_entropyin[] = { + 0x90, 0x02, 0xab, 0xe2, 0x29, 0x7b, 0x61, 0xab, 0xb3, 0xe4, 0xde, 0x54, + 0xed, 0xbd, 0x18, 0xcf, +}; +static const unsigned char kat1522_nonce[] = { + 0x46, 0xb1, 0x06, 0x13, 0x2b, 0x92, 0xb9, 0xd3, +}; +static const unsigned char kat1522_persstr[] = {0}; +static const unsigned char kat1522_entropyinreseed[] = { + 0x78, 0xd7, 0x0d, 0xd7, 0xd7, 0x21, 0x3e, 0x59, 0x9e, 0x4e, 0x7b, 0xbd, + 0x52, 0xa0, 0xf9, 0x52, +}; +static const unsigned char kat1522_addinreseed[] = { + 0x93, 0x19, 0x58, 0x6b, 0x5f, 0x89, 0x7a, 0x4a, 0x04, 0x0e, 0x3f, 0xa0, + 0x31, 0xdb, 0xb8, 0x91, +}; +static const unsigned char kat1522_addin0[] = { + 0x44, 0x73, 0xcc, 0xa8, 0x48, 0x1d, 0xdd, 0x85, 0x23, 0x5f, 0xba, 0x35, + 0xbe, 0xe5, 0x39, 0x59, +}; +static const unsigned char kat1522_addin1[] = { + 0x05, 0xc2, 0xa1, 0xc7, 0x1f, 0x0f, 0x42, 0x48, 0x1a, 0xfe, 0xc1, 0xbf, + 0xea, 0xca, 0x99, 0x0b, +}; +static const unsigned char kat1522_retbits[] = { + 0x9b, 0xc1, 0x2b, 0x39, 0x48, 0xf9, 0x83, 0x64, 0x9d, 0x87, 0x3d, 0xf9, + 0xe6, 0xfe, 0x87, 0x1a, 0xa1, 0x4c, 0x46, 0x80, 0xb7, 0x60, 0x85, 0xc4, + 0x25, 0x4e, 0xc5, 0x68, 0xc3, 0x32, 0x4f, 0xf7, 0x6a, 0xd0, 0x1d, 0xcb, + 0x29, 0x13, 0x5e, 0xa5, 0x45, 0x48, 0x88, 0x44, 0x25, 0x71, 0x0f, 0xcc, + 0xc2, 0x80, 0x02, 0xf2, 0xf5, 0x50, 0x83, 0x18, 0xab, 0xce, 0x77, 0x9e, + 0x5b, 0xaa, 0x19, 0x35, +}; +static const struct drbg_kat_pr_false kat1522_t = { + 6, kat1522_entropyin, kat1522_nonce, kat1522_persstr, + kat1522_entropyinreseed, kat1522_addinreseed, kat1522_addin0, + kat1522_addin1, kat1522_retbits +}; +static const struct drbg_kat kat1522 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1522_t +}; + +static const unsigned char kat1523_entropyin[] = { + 0x12, 0xe7, 0xfc, 0xb4, 0x32, 0xd1, 0xfe, 0x19, 0x04, 0x7d, 0x5e, 0xb9, + 0x8e, 0x45, 0xe0, 0x9e, +}; +static const unsigned char kat1523_nonce[] = { + 0xc6, 0x04, 0x1c, 0xda, 0xba, 0xa6, 0xa3, 0x94, +}; +static const unsigned char kat1523_persstr[] = {0}; +static const unsigned char kat1523_entropyinreseed[] = { + 0xea, 0xbd, 0xb2, 0x74, 0x49, 0x8d, 0x51, 0xf3, 0x3f, 0xcd, 0xb0, 0x1b, + 0xe8, 0x08, 0xbd, 0x7a, +}; +static const unsigned char kat1523_addinreseed[] = { + 0x6f, 0xd0, 0xa7, 0xbf, 0x2a, 0x25, 0xcc, 0xe7, 0xe5, 0xae, 0x19, 0x29, + 0x8b, 0x9d, 0x12, 0xa9, +}; +static const unsigned char kat1523_addin0[] = { + 0xd8, 0x21, 0x53, 0x33, 0x42, 0xb3, 0x72, 0xf2, 0x38, 0x55, 0x0a, 0xa4, + 0xb6, 0x1f, 0x7a, 0x4f, +}; +static const unsigned char kat1523_addin1[] = { + 0x80, 0x4c, 0x7f, 0xda, 0xae, 0x84, 0x30, 0xf3, 0xfb, 0xd8, 0xa2, 0xac, + 0x56, 0x15, 0x80, 0x25, +}; +static const unsigned char kat1523_retbits[] = { + 0xc5, 0x59, 0x14, 0x73, 0x0d, 0x08, 0x76, 0x25, 0x53, 0x13, 0x97, 0xe7, + 0x54, 0x3f, 0x07, 0x35, 0x20, 0xed, 0x06, 0x3c, 0x7b, 0x9a, 0x66, 0xa7, + 0xca, 0x65, 0x52, 0xbc, 0xf3, 0x2d, 0x37, 0xad, 0x96, 0x39, 0xf9, 0xc3, + 0xde, 0x76, 0x0c, 0x87, 0xab, 0x77, 0xf2, 0x4d, 0xf6, 0x41, 0x69, 0x66, + 0xc9, 0x77, 0x43, 0x99, 0x3c, 0x27, 0xce, 0xbc, 0x18, 0x88, 0xa4, 0xc6, + 0xb0, 0x7b, 0xb1, 0x98, +}; +static const struct drbg_kat_pr_false kat1523_t = { + 7, kat1523_entropyin, kat1523_nonce, kat1523_persstr, + kat1523_entropyinreseed, kat1523_addinreseed, kat1523_addin0, + kat1523_addin1, kat1523_retbits +}; +static const struct drbg_kat kat1523 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1523_t +}; + +static const unsigned char kat1524_entropyin[] = { + 0xbf, 0x10, 0x19, 0x43, 0x66, 0x5c, 0x5b, 0x27, 0x5a, 0xb6, 0xe0, 0xdd, + 0x1d, 0x56, 0x03, 0x04, +}; +static const unsigned char kat1524_nonce[] = { + 0xc5, 0x79, 0xf7, 0xdc, 0xc6, 0x41, 0x4c, 0xa5, +}; +static const unsigned char kat1524_persstr[] = {0}; +static const unsigned char kat1524_entropyinreseed[] = { + 0x26, 0x0d, 0x29, 0x3f, 0xf7, 0x9a, 0xda, 0x3d, 0xbf, 0x7d, 0x41, 0x8f, + 0x7e, 0x85, 0x10, 0x63, +}; +static const unsigned char kat1524_addinreseed[] = { + 0x8b, 0xde, 0x82, 0x7a, 0xaf, 0x12, 0x9c, 0x6a, 0xb5, 0xf6, 0x03, 0x9d, + 0x72, 0xb4, 0x94, 0x85, +}; +static const unsigned char kat1524_addin0[] = { + 0xe5, 0xb5, 0x93, 0xcb, 0xc8, 0x07, 0xf6, 0x29, 0x73, 0xbb, 0x1c, 0xee, + 0x06, 0x8c, 0xeb, 0xa6, +}; +static const unsigned char kat1524_addin1[] = { + 0x31, 0x66, 0xb0, 0x01, 0xf9, 0x24, 0x6c, 0xd3, 0x07, 0xa3, 0xe8, 0x08, + 0x22, 0xf7, 0x98, 0xa1, +}; +static const unsigned char kat1524_retbits[] = { + 0x1e, 0x8d, 0xc8, 0x7a, 0xed, 0xaf, 0xef, 0xf8, 0x79, 0x5a, 0xa2, 0x92, + 0x1a, 0xd9, 0x06, 0xa5, 0xb8, 0x33, 0x35, 0xe8, 0x07, 0x3d, 0x3d, 0x88, + 0x29, 0x6f, 0x31, 0x71, 0x62, 0x7e, 0x2f, 0x50, 0xe4, 0x4c, 0xa4, 0xba, + 0xce, 0x9d, 0x0c, 0xc9, 0xb0, 0xf5, 0x10, 0x5a, 0x70, 0xfb, 0xa9, 0x48, + 0xf1, 0x2b, 0x20, 0x57, 0x30, 0x32, 0x96, 0xf9, 0x56, 0xf6, 0x7d, 0x57, + 0x3c, 0xb4, 0x23, 0x61, +}; +static const struct drbg_kat_pr_false kat1524_t = { + 8, kat1524_entropyin, kat1524_nonce, kat1524_persstr, + kat1524_entropyinreseed, kat1524_addinreseed, kat1524_addin0, + kat1524_addin1, kat1524_retbits +}; +static const struct drbg_kat kat1524 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1524_t +}; + +static const unsigned char kat1525_entropyin[] = { + 0x6b, 0x18, 0xda, 0x3c, 0x0a, 0x96, 0x69, 0x70, 0x5f, 0xb2, 0x01, 0xdf, + 0x9a, 0x51, 0x73, 0xdb, +}; +static const unsigned char kat1525_nonce[] = { + 0x97, 0xcd, 0x95, 0x52, 0x25, 0xe9, 0xbc, 0x43, +}; +static const unsigned char kat1525_persstr[] = {0}; +static const unsigned char kat1525_entropyinreseed[] = { + 0x74, 0x96, 0xcd, 0x7c, 0x68, 0x9e, 0x6d, 0x15, 0xdc, 0xd0, 0xba, 0xf0, + 0x07, 0x9c, 0x3c, 0xc5, +}; +static const unsigned char kat1525_addinreseed[] = { + 0x0f, 0x22, 0x84, 0x24, 0xb9, 0xd2, 0x7a, 0x9f, 0x0c, 0x5c, 0x8b, 0x07, + 0x25, 0x87, 0x4f, 0x8d, +}; +static const unsigned char kat1525_addin0[] = { + 0x62, 0xde, 0x38, 0x01, 0x71, 0x2c, 0x16, 0x6f, 0xda, 0x68, 0x3f, 0xaf, + 0x15, 0x9e, 0x55, 0xa7, +}; +static const unsigned char kat1525_addin1[] = { + 0x9b, 0xc9, 0xaf, 0xdf, 0x65, 0xfe, 0x03, 0xf0, 0x86, 0x8c, 0xf5, 0xb1, + 0x13, 0x6d, 0xed, 0xf3, +}; +static const unsigned char kat1525_retbits[] = { + 0x31, 0x7c, 0x2a, 0xa9, 0x6f, 0x4d, 0x3c, 0xf7, 0x9b, 0xa8, 0x73, 0x6e, + 0x7a, 0xbc, 0xd9, 0x34, 0xa8, 0x74, 0x91, 0x92, 0xe4, 0xb2, 0x1e, 0xe0, + 0xd1, 0xfe, 0xb9, 0x30, 0x09, 0x3f, 0x98, 0x12, 0xab, 0x7c, 0xc6, 0xca, + 0x75, 0x50, 0xa0, 0x2d, 0xbe, 0xca, 0x65, 0x28, 0xa9, 0x1b, 0x88, 0xdf, + 0xdf, 0x04, 0xaf, 0x38, 0x31, 0xf7, 0xe5, 0x5c, 0xcd, 0x92, 0x71, 0x72, + 0xe4, 0x34, 0x01, 0xe8, +}; +static const struct drbg_kat_pr_false kat1525_t = { + 9, kat1525_entropyin, kat1525_nonce, kat1525_persstr, + kat1525_entropyinreseed, kat1525_addinreseed, kat1525_addin0, + kat1525_addin1, kat1525_retbits +}; +static const struct drbg_kat kat1525 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1525_t +}; + +static const unsigned char kat1526_entropyin[] = { + 0xf8, 0x1d, 0x07, 0x59, 0x38, 0xbc, 0x82, 0x68, 0x93, 0xc5, 0x75, 0x15, + 0x84, 0x06, 0x67, 0x07, +}; +static const unsigned char kat1526_nonce[] = { + 0x78, 0xae, 0x60, 0x37, 0xc7, 0x7f, 0x6c, 0xaf, +}; +static const unsigned char kat1526_persstr[] = {0}; +static const unsigned char kat1526_entropyinreseed[] = { + 0x61, 0xc2, 0xb1, 0x94, 0x9b, 0x10, 0x02, 0xb0, 0xcc, 0x08, 0xb3, 0x83, + 0xc4, 0x5e, 0x0c, 0xde, +}; +static const unsigned char kat1526_addinreseed[] = { + 0xf5, 0xc0, 0x00, 0x0c, 0xfe, 0xf6, 0xf9, 0x78, 0x8e, 0x89, 0xd6, 0x8a, + 0xdd, 0xc0, 0x98, 0x9a, +}; +static const unsigned char kat1526_addin0[] = { + 0xba, 0xd0, 0xe2, 0x8f, 0xeb, 0x48, 0xa9, 0x52, 0x34, 0x08, 0xd6, 0xb8, + 0xbd, 0x6a, 0xec, 0xbc, +}; +static const unsigned char kat1526_addin1[] = { + 0x9b, 0x8b, 0x1b, 0x6b, 0x21, 0x46, 0x43, 0x2f, 0xaa, 0xf3, 0xa4, 0xff, + 0x09, 0x85, 0xa1, 0x5a, +}; +static const unsigned char kat1526_retbits[] = { + 0xbd, 0xf6, 0x88, 0xb9, 0x71, 0x5c, 0xc4, 0xcb, 0xe7, 0x2e, 0x15, 0xdc, + 0xd8, 0xa6, 0x59, 0x6b, 0xa2, 0xbd, 0x00, 0x39, 0x53, 0xeb, 0xd2, 0xbf, + 0xe6, 0x92, 0x12, 0x90, 0x9a, 0xde, 0xf0, 0xc3, 0x67, 0xb4, 0x73, 0xed, + 0xb4, 0x5c, 0x41, 0xac, 0xdd, 0x22, 0x83, 0x6f, 0x5f, 0xc9, 0xfd, 0x47, + 0xcb, 0x35, 0x4b, 0x45, 0x7f, 0x25, 0xcc, 0x81, 0x27, 0xed, 0x16, 0x25, + 0xb8, 0xfa, 0x4a, 0xaf, +}; +static const struct drbg_kat_pr_false kat1526_t = { + 10, kat1526_entropyin, kat1526_nonce, kat1526_persstr, + kat1526_entropyinreseed, kat1526_addinreseed, kat1526_addin0, + kat1526_addin1, kat1526_retbits +}; +static const struct drbg_kat kat1526 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1526_t +}; + +static const unsigned char kat1527_entropyin[] = { + 0x57, 0xce, 0xb9, 0xee, 0x59, 0x5c, 0x6e, 0x37, 0x15, 0xd9, 0x01, 0x94, + 0x02, 0x1a, 0xea, 0x79, +}; +static const unsigned char kat1527_nonce[] = { + 0xfb, 0x51, 0x85, 0x69, 0x26, 0xf1, 0xb0, 0x68, +}; +static const unsigned char kat1527_persstr[] = {0}; +static const unsigned char kat1527_entropyinreseed[] = { + 0x04, 0x5b, 0x01, 0xa3, 0x47, 0xc6, 0x73, 0x0f, 0xce, 0xb1, 0xf2, 0xf5, + 0xba, 0x76, 0x03, 0x37, +}; +static const unsigned char kat1527_addinreseed[] = { + 0x63, 0xec, 0xa0, 0x7e, 0xb8, 0xf4, 0x9b, 0x54, 0xa5, 0x34, 0xe0, 0xb4, + 0x09, 0x25, 0x86, 0x17, +}; +static const unsigned char kat1527_addin0[] = { + 0x34, 0xee, 0x56, 0xa0, 0x83, 0xc0, 0xb5, 0xf7, 0xd0, 0xeb, 0x65, 0xbd, + 0x42, 0xda, 0x72, 0x7e, +}; +static const unsigned char kat1527_addin1[] = { + 0xa4, 0x87, 0x3d, 0x13, 0x09, 0x3c, 0x72, 0x54, 0x19, 0xca, 0xa4, 0x12, + 0x4d, 0xbf, 0xad, 0x6b, +}; +static const unsigned char kat1527_retbits[] = { + 0xf1, 0x55, 0x78, 0x39, 0x68, 0x90, 0xd4, 0xa0, 0xc0, 0xac, 0x22, 0xe5, + 0x56, 0x69, 0xa1, 0x84, 0xfd, 0xb5, 0x5c, 0xab, 0x33, 0x2a, 0xf7, 0xa6, + 0x21, 0x02, 0xc2, 0xd1, 0x81, 0xf1, 0x14, 0xfc, 0x34, 0xb3, 0xe5, 0x89, + 0xb8, 0xa8, 0xc0, 0x2e, 0xe3, 0x5e, 0x9e, 0x1a, 0xa8, 0xaf, 0x28, 0x6d, + 0xd1, 0xad, 0xdc, 0xc2, 0x4b, 0xad, 0x82, 0x11, 0xdc, 0x90, 0xd7, 0x38, + 0x09, 0xa4, 0x26, 0x70, +}; +static const struct drbg_kat_pr_false kat1527_t = { + 11, kat1527_entropyin, kat1527_nonce, kat1527_persstr, + kat1527_entropyinreseed, kat1527_addinreseed, kat1527_addin0, + kat1527_addin1, kat1527_retbits +}; +static const struct drbg_kat kat1527 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1527_t +}; + +static const unsigned char kat1528_entropyin[] = { + 0x2c, 0x43, 0xf1, 0x4c, 0xd4, 0xa2, 0x62, 0xdf, 0xa1, 0xf3, 0xa7, 0x3d, + 0x48, 0xf6, 0x78, 0xae, +}; +static const unsigned char kat1528_nonce[] = { + 0xe1, 0xdd, 0x9b, 0x8d, 0x98, 0x55, 0xd6, 0x47, +}; +static const unsigned char kat1528_persstr[] = {0}; +static const unsigned char kat1528_entropyinreseed[] = { + 0x67, 0xce, 0xbc, 0x59, 0xc1, 0x87, 0xaf, 0x25, 0x98, 0xea, 0x15, 0x8f, + 0x0d, 0x0c, 0xdc, 0xeb, +}; +static const unsigned char kat1528_addinreseed[] = { + 0xb0, 0x9c, 0xe2, 0xcf, 0xf6, 0xd8, 0xb3, 0x52, 0x22, 0x8c, 0x00, 0x8b, + 0x6a, 0xfb, 0x68, 0x20, +}; +static const unsigned char kat1528_addin0[] = { + 0xb6, 0xed, 0xfe, 0x4c, 0xbd, 0xab, 0x74, 0xe5, 0xf1, 0xea, 0x1f, 0x44, + 0x08, 0x4e, 0xf2, 0xaf, +}; +static const unsigned char kat1528_addin1[] = { + 0x27, 0x44, 0xba, 0x1a, 0x4d, 0x41, 0xcb, 0x78, 0xb1, 0xa0, 0x23, 0x02, + 0xbd, 0x72, 0x4e, 0x1e, +}; +static const unsigned char kat1528_retbits[] = { + 0x0c, 0xea, 0x1f, 0x4b, 0xbb, 0x78, 0x06, 0x01, 0x44, 0xb2, 0x21, 0x01, + 0x89, 0x83, 0x64, 0xa0, 0x9c, 0x86, 0x74, 0x1b, 0x2a, 0xa2, 0x51, 0x25, + 0xdd, 0x82, 0x5c, 0xd2, 0x8c, 0x74, 0x47, 0xbe, 0x68, 0x80, 0x1d, 0xe5, + 0xe8, 0xe2, 0x0a, 0x2b, 0xc8, 0xaa, 0xf3, 0x45, 0x9b, 0x8c, 0xc7, 0xc5, + 0xa0, 0x49, 0x30, 0x27, 0xb2, 0xae, 0x78, 0x88, 0xb3, 0x36, 0x8f, 0x19, + 0x00, 0x83, 0x1d, 0x9a, +}; +static const struct drbg_kat_pr_false kat1528_t = { + 12, kat1528_entropyin, kat1528_nonce, kat1528_persstr, + kat1528_entropyinreseed, kat1528_addinreseed, kat1528_addin0, + kat1528_addin1, kat1528_retbits +}; +static const struct drbg_kat kat1528 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1528_t +}; + +static const unsigned char kat1529_entropyin[] = { + 0x5b, 0xe3, 0xbb, 0x2a, 0x3f, 0xaa, 0x2e, 0x10, 0x7b, 0xe5, 0x50, 0x12, + 0xe9, 0x2d, 0xc6, 0x2f, +}; +static const unsigned char kat1529_nonce[] = { + 0x04, 0x5e, 0x50, 0x90, 0x15, 0x8d, 0x31, 0xcf, +}; +static const unsigned char kat1529_persstr[] = {0}; +static const unsigned char kat1529_entropyinreseed[] = { + 0x2b, 0x46, 0x2f, 0xf9, 0x72, 0x9c, 0x1b, 0x92, 0x90, 0xa8, 0x17, 0xb2, + 0xa1, 0xae, 0x3f, 0x94, +}; +static const unsigned char kat1529_addinreseed[] = { + 0xd9, 0x84, 0xae, 0xe6, 0xb0, 0xee, 0x03, 0x25, 0xba, 0x17, 0xb3, 0xc1, + 0x0a, 0x25, 0xf1, 0x8d, +}; +static const unsigned char kat1529_addin0[] = { + 0x86, 0x83, 0x20, 0xb8, 0x3f, 0x1b, 0x39, 0xe3, 0x94, 0x37, 0x7b, 0x5f, + 0xb5, 0x28, 0xdb, 0xbb, +}; +static const unsigned char kat1529_addin1[] = { + 0xd6, 0x90, 0xea, 0xa8, 0x0d, 0x28, 0xa5, 0x34, 0x1d, 0x75, 0x08, 0x94, + 0x01, 0x4d, 0xdd, 0x8d, +}; +static const unsigned char kat1529_retbits[] = { + 0xf9, 0xeb, 0x2a, 0x7a, 0x58, 0xc2, 0x46, 0x77, 0x39, 0x97, 0x2e, 0x1e, + 0x24, 0x56, 0x9c, 0x97, 0x62, 0x4e, 0xe0, 0xad, 0x5f, 0x79, 0xf1, 0x26, + 0x65, 0xce, 0x0c, 0x5a, 0x65, 0x01, 0x80, 0x46, 0x3d, 0xef, 0x3d, 0xc3, + 0x35, 0x15, 0x03, 0x04, 0x49, 0x70, 0x6a, 0x3d, 0x4e, 0xdc, 0x4c, 0x49, + 0x28, 0xf8, 0x55, 0x81, 0x49, 0xfe, 0xde, 0x30, 0xc5, 0xf3, 0x12, 0x23, + 0xd8, 0x65, 0x35, 0x4a, +}; +static const struct drbg_kat_pr_false kat1529_t = { + 13, kat1529_entropyin, kat1529_nonce, kat1529_persstr, + kat1529_entropyinreseed, kat1529_addinreseed, kat1529_addin0, + kat1529_addin1, kat1529_retbits +}; +static const struct drbg_kat kat1529 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1529_t +}; + +static const unsigned char kat1530_entropyin[] = { + 0x1d, 0x04, 0x36, 0xa5, 0xda, 0xd6, 0x6a, 0x81, 0x2e, 0x03, 0x52, 0xed, + 0x0c, 0x02, 0x91, 0xf6, +}; +static const unsigned char kat1530_nonce[] = { + 0xd1, 0xf2, 0xe9, 0x37, 0x24, 0x3d, 0xff, 0x92, +}; +static const unsigned char kat1530_persstr[] = {0}; +static const unsigned char kat1530_entropyinreseed[] = { + 0xa9, 0x1d, 0xc1, 0x81, 0xe9, 0x8d, 0x78, 0xe1, 0xc2, 0xc6, 0x39, 0xf9, + 0x65, 0x3c, 0x4c, 0x3b, +}; +static const unsigned char kat1530_addinreseed[] = { + 0x4b, 0xf6, 0xfc, 0xe2, 0x8e, 0x2a, 0xdf, 0x33, 0xa0, 0x86, 0x3d, 0xd3, + 0xdb, 0xda, 0x71, 0x72, +}; +static const unsigned char kat1530_addin0[] = { + 0x79, 0x74, 0xe5, 0xac, 0xed, 0x47, 0xec, 0x8b, 0x66, 0x99, 0x72, 0xd7, + 0xc5, 0xbd, 0xe5, 0xba, +}; +static const unsigned char kat1530_addin1[] = { + 0x89, 0x03, 0x3e, 0xfa, 0x2c, 0xc7, 0x09, 0x0e, 0x7a, 0x0d, 0x1f, 0x78, + 0xde, 0x1d, 0x87, 0x94, +}; +static const unsigned char kat1530_retbits[] = { + 0xf8, 0x57, 0x39, 0x76, 0xe2, 0xd1, 0x13, 0xcb, 0x16, 0x4f, 0x05, 0x00, + 0x3c, 0x11, 0x6f, 0x07, 0x88, 0x34, 0x6c, 0x85, 0x40, 0xd7, 0x66, 0x15, + 0xf6, 0x67, 0xed, 0x96, 0x8f, 0xde, 0x0f, 0x7d, 0x3f, 0xc0, 0x10, 0xfc, + 0xbe, 0x0d, 0xff, 0x8c, 0xb2, 0xb0, 0xcc, 0x33, 0xfa, 0xae, 0x9e, 0xb2, + 0x51, 0xf3, 0x84, 0x5a, 0xf1, 0xdf, 0x65, 0x45, 0x0c, 0xf5, 0x8c, 0x6e, + 0xe6, 0xe1, 0xb3, 0x82, +}; +static const struct drbg_kat_pr_false kat1530_t = { + 14, kat1530_entropyin, kat1530_nonce, kat1530_persstr, + kat1530_entropyinreseed, kat1530_addinreseed, kat1530_addin0, + kat1530_addin1, kat1530_retbits +}; +static const struct drbg_kat kat1530 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1530_t +}; + +static const unsigned char kat1531_entropyin[] = { + 0x13, 0xfa, 0x3e, 0x44, 0x5a, 0xa9, 0x61, 0xee, 0xfc, 0xf6, 0x01, 0x6e, + 0x49, 0x9f, 0x55, 0x9f, +}; +static const unsigned char kat1531_nonce[] = { + 0x30, 0xdc, 0x8d, 0x26, 0x04, 0xa5, 0x60, 0x05, +}; +static const unsigned char kat1531_persstr[] = { + 0xda, 0x20, 0x64, 0xc6, 0x59, 0xde, 0x89, 0xb4, 0xf0, 0xcf, 0x65, 0x8d, + 0x43, 0x54, 0xc2, 0x80, +}; +static const unsigned char kat1531_entropyinreseed[] = { + 0x0d, 0xd9, 0xfb, 0x5e, 0x7a, 0x47, 0xe2, 0x8c, 0xd4, 0x92, 0x97, 0xa6, + 0xc1, 0x3d, 0x9f, 0xa5, +}; +static const unsigned char kat1531_addinreseed[] = {0}; +static const unsigned char kat1531_addin0[] = {0}; +static const unsigned char kat1531_addin1[] = {0}; +static const unsigned char kat1531_retbits[] = { + 0x65, 0x9e, 0x92, 0x10, 0x05, 0x2d, 0x6c, 0x5b, 0x5f, 0xd5, 0xe4, 0x9c, + 0x7f, 0x6b, 0xb5, 0x34, 0xa5, 0x3e, 0x95, 0xf3, 0x1d, 0xf0, 0xec, 0xa7, + 0xb9, 0x96, 0x8e, 0x2c, 0xf3, 0xd5, 0xfe, 0x7b, 0x4d, 0x20, 0xb6, 0x97, + 0x26, 0xdb, 0x5e, 0x2c, 0x8a, 0x80, 0xe8, 0xb6, 0xf6, 0x0e, 0xee, 0x71, + 0x07, 0x4a, 0x9f, 0xcd, 0x26, 0x43, 0x20, 0xb1, 0xc5, 0x33, 0xaf, 0x92, + 0xc8, 0x23, 0xac, 0x7a, +}; +static const struct drbg_kat_pr_false kat1531_t = { + 0, kat1531_entropyin, kat1531_nonce, kat1531_persstr, + kat1531_entropyinreseed, kat1531_addinreseed, kat1531_addin0, + kat1531_addin1, kat1531_retbits +}; +static const struct drbg_kat kat1531 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1531_t +}; + +static const unsigned char kat1532_entropyin[] = { + 0x99, 0xac, 0xd5, 0x1a, 0xc4, 0xa7, 0x8e, 0xda, 0xe4, 0x41, 0xb4, 0xd1, + 0x18, 0x2c, 0xd9, 0x76, +}; +static const unsigned char kat1532_nonce[] = { + 0xfb, 0xaf, 0xfd, 0x77, 0x49, 0x57, 0x3b, 0xd0, +}; +static const unsigned char kat1532_persstr[] = { + 0x0a, 0x7f, 0x73, 0x96, 0x6d, 0xc7, 0xf9, 0xf4, 0x14, 0x82, 0xa8, 0x70, + 0xc3, 0xa8, 0xea, 0xce, +}; +static const unsigned char kat1532_entropyinreseed[] = { + 0x72, 0x5c, 0xf1, 0x81, 0x22, 0x9d, 0x41, 0x74, 0x1f, 0x02, 0xd1, 0x47, + 0xd7, 0xf0, 0xbc, 0x1c, +}; +static const unsigned char kat1532_addinreseed[] = {0}; +static const unsigned char kat1532_addin0[] = {0}; +static const unsigned char kat1532_addin1[] = {0}; +static const unsigned char kat1532_retbits[] = { + 0x7f, 0xd5, 0x50, 0x14, 0x7e, 0xc8, 0x24, 0x11, 0x8b, 0x64, 0x4f, 0x83, + 0xe6, 0xa0, 0x85, 0x5e, 0x41, 0x67, 0xa1, 0xf6, 0x49, 0x6f, 0xd6, 0xc0, + 0xd3, 0x42, 0xdb, 0x4a, 0xb1, 0x36, 0xcd, 0xe9, 0x6e, 0x9a, 0xbc, 0x5e, + 0x75, 0x9c, 0x7d, 0x28, 0xb7, 0x8a, 0xfd, 0x69, 0x71, 0x27, 0x94, 0x62, + 0x82, 0xa3, 0x20, 0x24, 0xe3, 0x85, 0x5f, 0xc0, 0xb5, 0x7b, 0x36, 0xaa, + 0x9d, 0x0e, 0xd3, 0xa1, +}; +static const struct drbg_kat_pr_false kat1532_t = { + 1, kat1532_entropyin, kat1532_nonce, kat1532_persstr, + kat1532_entropyinreseed, kat1532_addinreseed, kat1532_addin0, + kat1532_addin1, kat1532_retbits +}; +static const struct drbg_kat kat1532 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1532_t +}; + +static const unsigned char kat1533_entropyin[] = { + 0x3a, 0xf6, 0x7d, 0x00, 0xfd, 0xf0, 0xe7, 0x3f, 0x59, 0x59, 0x1d, 0x57, + 0xb8, 0xf6, 0x15, 0x3b, +}; +static const unsigned char kat1533_nonce[] = { + 0x69, 0x81, 0xc8, 0x84, 0x47, 0x61, 0x20, 0xc4, +}; +static const unsigned char kat1533_persstr[] = { + 0xf9, 0x52, 0x76, 0x30, 0x5a, 0x1c, 0x0e, 0x3d, 0xa2, 0xde, 0x5c, 0x70, + 0xa7, 0xba, 0x97, 0x0f, +}; +static const unsigned char kat1533_entropyinreseed[] = { + 0x8f, 0xe4, 0xa3, 0xd6, 0xa0, 0x19, 0x9b, 0x23, 0x54, 0x5d, 0xf9, 0x9c, + 0xa6, 0xef, 0x90, 0x0e, +}; +static const unsigned char kat1533_addinreseed[] = {0}; +static const unsigned char kat1533_addin0[] = {0}; +static const unsigned char kat1533_addin1[] = {0}; +static const unsigned char kat1533_retbits[] = { + 0x69, 0xaf, 0x02, 0xa4, 0x06, 0xf2, 0x63, 0xee, 0xea, 0xf7, 0xa4, 0xc4, + 0x80, 0x1b, 0xf3, 0x9c, 0x3f, 0x44, 0x0d, 0xb9, 0xbc, 0x31, 0xb5, 0x23, + 0x83, 0x17, 0x17, 0xf6, 0x94, 0x89, 0x87, 0x79, 0x7b, 0x34, 0x7f, 0x12, + 0xaf, 0x9b, 0x4b, 0x4f, 0xbe, 0xad, 0xa3, 0xa4, 0xd4, 0x16, 0xbf, 0x98, + 0x6a, 0xa9, 0x24, 0x89, 0x37, 0xc3, 0x18, 0xe9, 0x3e, 0x55, 0x03, 0x9b, + 0x64, 0x90, 0x24, 0xa2, +}; +static const struct drbg_kat_pr_false kat1533_t = { + 2, kat1533_entropyin, kat1533_nonce, kat1533_persstr, + kat1533_entropyinreseed, kat1533_addinreseed, kat1533_addin0, + kat1533_addin1, kat1533_retbits +}; +static const struct drbg_kat kat1533 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1533_t +}; + +static const unsigned char kat1534_entropyin[] = { + 0xa2, 0x13, 0x6b, 0x0d, 0x5c, 0xa7, 0x83, 0x49, 0x40, 0xd9, 0x06, 0x95, + 0x48, 0xf5, 0xdb, 0xa5, +}; +static const unsigned char kat1534_nonce[] = { + 0x90, 0xb0, 0x65, 0x92, 0xe2, 0x31, 0x54, 0x7a, +}; +static const unsigned char kat1534_persstr[] = { + 0xf9, 0xc2, 0xdf, 0xf3, 0x99, 0x2c, 0xa9, 0xae, 0xd0, 0x07, 0x85, 0xc2, + 0x16, 0xd2, 0xae, 0x18, +}; +static const unsigned char kat1534_entropyinreseed[] = { + 0xdd, 0xd3, 0x75, 0x74, 0x77, 0xd8, 0xe3, 0x25, 0x61, 0x84, 0x57, 0x0d, + 0xf1, 0xa6, 0xa4, 0x4b, +}; +static const unsigned char kat1534_addinreseed[] = {0}; +static const unsigned char kat1534_addin0[] = {0}; +static const unsigned char kat1534_addin1[] = {0}; +static const unsigned char kat1534_retbits[] = { + 0x0a, 0x72, 0x7d, 0x30, 0x17, 0xa4, 0x47, 0x71, 0xf9, 0x84, 0x42, 0xfd, + 0xf5, 0xf1, 0xba, 0xb0, 0x66, 0x65, 0xf9, 0x3f, 0x19, 0xd2, 0xe1, 0xe6, + 0xef, 0x91, 0x73, 0x8a, 0x03, 0x7b, 0x98, 0xb8, 0x3a, 0xac, 0x19, 0xe4, + 0x5b, 0xde, 0x47, 0x91, 0xcf, 0x74, 0x16, 0x8a, 0x26, 0x0e, 0xbb, 0x1e, + 0x05, 0x85, 0x56, 0xd3, 0x1e, 0x02, 0x7d, 0xb4, 0x37, 0xb8, 0x28, 0x22, + 0x2e, 0x51, 0x5b, 0x69, +}; +static const struct drbg_kat_pr_false kat1534_t = { + 3, kat1534_entropyin, kat1534_nonce, kat1534_persstr, + kat1534_entropyinreseed, kat1534_addinreseed, kat1534_addin0, + kat1534_addin1, kat1534_retbits +}; +static const struct drbg_kat kat1534 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1534_t +}; + +static const unsigned char kat1535_entropyin[] = { + 0x97, 0x16, 0x3a, 0xf4, 0x5a, 0xd8, 0x33, 0x60, 0x2f, 0x32, 0xf9, 0x38, + 0x85, 0x55, 0x46, 0xa9, +}; +static const unsigned char kat1535_nonce[] = { + 0x37, 0x93, 0x10, 0x74, 0xde, 0xd1, 0xf7, 0x78, +}; +static const unsigned char kat1535_persstr[] = { + 0x38, 0x6a, 0x07, 0xfe, 0x49, 0x3f, 0x90, 0xee, 0x72, 0xeb, 0x3a, 0x65, + 0x2c, 0x95, 0x58, 0xcb, +}; +static const unsigned char kat1535_entropyinreseed[] = { + 0x62, 0x51, 0x6c, 0x22, 0xa7, 0x36, 0xd6, 0x98, 0x4b, 0xd8, 0xd3, 0xf8, + 0xd9, 0xfa, 0xc1, 0xe7, +}; +static const unsigned char kat1535_addinreseed[] = {0}; +static const unsigned char kat1535_addin0[] = {0}; +static const unsigned char kat1535_addin1[] = {0}; +static const unsigned char kat1535_retbits[] = { + 0xb9, 0x05, 0x3e, 0x87, 0xe8, 0x28, 0x74, 0x15, 0x5e, 0x5d, 0xeb, 0x8f, + 0xc4, 0x49, 0x9a, 0xa8, 0x1b, 0xdf, 0x24, 0xba, 0xc3, 0xef, 0x39, 0x9a, + 0x29, 0x2b, 0x05, 0xd0, 0xb8, 0x79, 0xfb, 0x75, 0xa5, 0x3f, 0x71, 0xbb, + 0x48, 0xca, 0x5a, 0xbc, 0x55, 0x83, 0x47, 0xd6, 0xdb, 0x37, 0xb5, 0x53, + 0x4c, 0xcd, 0x7e, 0xf0, 0x8f, 0xeb, 0x3a, 0x0e, 0x8a, 0x74, 0x01, 0xa4, + 0xda, 0x3c, 0x9c, 0x59, +}; +static const struct drbg_kat_pr_false kat1535_t = { + 4, kat1535_entropyin, kat1535_nonce, kat1535_persstr, + kat1535_entropyinreseed, kat1535_addinreseed, kat1535_addin0, + kat1535_addin1, kat1535_retbits +}; +static const struct drbg_kat kat1535 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1535_t +}; + +static const unsigned char kat1536_entropyin[] = { + 0xe5, 0x41, 0x27, 0x5a, 0x47, 0x75, 0x5d, 0x4e, 0xf6, 0xab, 0x52, 0xb8, + 0x1b, 0x98, 0x4c, 0x99, +}; +static const unsigned char kat1536_nonce[] = { + 0x5d, 0x33, 0x83, 0x76, 0x79, 0xcd, 0x5d, 0xbb, +}; +static const unsigned char kat1536_persstr[] = { + 0x13, 0x5c, 0x22, 0xe4, 0xcb, 0xf8, 0x13, 0x7d, 0xab, 0xbf, 0x2c, 0xef, + 0xee, 0xb7, 0x6d, 0xb6, +}; +static const unsigned char kat1536_entropyinreseed[] = { + 0x0e, 0xc9, 0x42, 0x0c, 0x02, 0x81, 0x73, 0xb9, 0x7d, 0x1e, 0x96, 0x15, + 0x93, 0x8a, 0x61, 0x29, +}; +static const unsigned char kat1536_addinreseed[] = {0}; +static const unsigned char kat1536_addin0[] = {0}; +static const unsigned char kat1536_addin1[] = {0}; +static const unsigned char kat1536_retbits[] = { + 0xed, 0x76, 0x58, 0x14, 0xcd, 0xde, 0x16, 0x7b, 0x62, 0xe4, 0xb0, 0xfe, + 0x6e, 0xd8, 0x45, 0x0f, 0x14, 0xe6, 0xf1, 0x16, 0x45, 0x45, 0x70, 0xad, + 0xa2, 0xaf, 0x13, 0x94, 0xaa, 0xa5, 0xaf, 0x68, 0xbe, 0xec, 0x0e, 0x2f, + 0x70, 0x93, 0x3c, 0x5b, 0x97, 0x3b, 0x5e, 0x1a, 0x75, 0x59, 0x63, 0x43, + 0x18, 0xf4, 0xe6, 0x04, 0x28, 0xf9, 0x30, 0xac, 0xda, 0x51, 0x3c, 0x20, + 0x79, 0x5b, 0xf0, 0x59, +}; +static const struct drbg_kat_pr_false kat1536_t = { + 5, kat1536_entropyin, kat1536_nonce, kat1536_persstr, + kat1536_entropyinreseed, kat1536_addinreseed, kat1536_addin0, + kat1536_addin1, kat1536_retbits +}; +static const struct drbg_kat kat1536 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1536_t +}; + +static const unsigned char kat1537_entropyin[] = { + 0xd3, 0x5a, 0x70, 0xca, 0x82, 0x21, 0xc1, 0x86, 0x8f, 0x8d, 0x31, 0x8e, + 0x52, 0x17, 0x5b, 0xaa, +}; +static const unsigned char kat1537_nonce[] = { + 0xd7, 0x20, 0x9b, 0x94, 0x4b, 0xc4, 0xaa, 0x3a, +}; +static const unsigned char kat1537_persstr[] = { + 0x6f, 0x4e, 0x19, 0x87, 0x52, 0xd3, 0x42, 0x7a, 0x36, 0x2a, 0x1b, 0x01, + 0xfa, 0x41, 0x95, 0x0d, +}; +static const unsigned char kat1537_entropyinreseed[] = { + 0xa6, 0x84, 0x9c, 0x1c, 0xab, 0xa2, 0xf2, 0x62, 0x98, 0x58, 0x82, 0x7f, + 0x92, 0xda, 0x04, 0x9c, +}; +static const unsigned char kat1537_addinreseed[] = {0}; +static const unsigned char kat1537_addin0[] = {0}; +static const unsigned char kat1537_addin1[] = {0}; +static const unsigned char kat1537_retbits[] = { + 0x49, 0xdc, 0x87, 0x51, 0xe8, 0xfe, 0xa3, 0xf3, 0xf1, 0x5c, 0xfb, 0xf2, + 0x07, 0xc3, 0x77, 0xb4, 0x9a, 0x5a, 0x9a, 0xfd, 0x45, 0x3d, 0xee, 0x37, + 0x51, 0x89, 0x26, 0x0a, 0x62, 0x57, 0x8d, 0x18, 0xc4, 0xdb, 0x51, 0x57, + 0x91, 0x31, 0x9c, 0x45, 0x3e, 0x5b, 0x41, 0x2e, 0xb4, 0xe3, 0x69, 0x13, + 0x49, 0x40, 0xfe, 0x76, 0x2a, 0xaa, 0xc8, 0xf1, 0x31, 0x6e, 0xab, 0x8d, + 0x11, 0x30, 0x9a, 0x63, +}; +static const struct drbg_kat_pr_false kat1537_t = { + 6, kat1537_entropyin, kat1537_nonce, kat1537_persstr, + kat1537_entropyinreseed, kat1537_addinreseed, kat1537_addin0, + kat1537_addin1, kat1537_retbits +}; +static const struct drbg_kat kat1537 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1537_t +}; + +static const unsigned char kat1538_entropyin[] = { + 0x2e, 0x0e, 0xdf, 0x2c, 0x26, 0xba, 0x18, 0x7d, 0x9d, 0x40, 0x9d, 0x20, + 0x3b, 0x07, 0x86, 0xac, +}; +static const unsigned char kat1538_nonce[] = { + 0xdb, 0xb2, 0xe1, 0x42, 0xa8, 0x91, 0x6d, 0xb4, +}; +static const unsigned char kat1538_persstr[] = { + 0x32, 0x55, 0x96, 0xe2, 0xe1, 0x04, 0xf8, 0xf6, 0xc1, 0x05, 0x42, 0x36, + 0xeb, 0xb2, 0x0a, 0xd2, +}; +static const unsigned char kat1538_entropyinreseed[] = { + 0xf6, 0x1f, 0x1f, 0x5d, 0x07, 0xce, 0x98, 0xc6, 0xe8, 0xb0, 0x55, 0x0e, + 0x07, 0xf2, 0x2d, 0xfc, +}; +static const unsigned char kat1538_addinreseed[] = {0}; +static const unsigned char kat1538_addin0[] = {0}; +static const unsigned char kat1538_addin1[] = {0}; +static const unsigned char kat1538_retbits[] = { + 0xba, 0xbf, 0x1b, 0x48, 0x9b, 0x3d, 0x54, 0x09, 0x95, 0x90, 0x4a, 0xc0, + 0xc9, 0x3a, 0xab, 0x22, 0x82, 0x53, 0x82, 0x5f, 0x86, 0xf7, 0x9e, 0x0f, + 0xcf, 0x53, 0x0e, 0x32, 0xb2, 0xfe, 0x68, 0xeb, 0xf8, 0xcf, 0x3a, 0x8d, + 0xa3, 0x0a, 0x49, 0xaf, 0xa7, 0x2b, 0xae, 0x8b, 0x36, 0xe3, 0x5e, 0xcf, + 0x46, 0x6c, 0x67, 0x7e, 0x0e, 0x32, 0x8f, 0x57, 0x4b, 0xe9, 0x14, 0x07, + 0x26, 0xef, 0x21, 0x59, +}; +static const struct drbg_kat_pr_false kat1538_t = { + 7, kat1538_entropyin, kat1538_nonce, kat1538_persstr, + kat1538_entropyinreseed, kat1538_addinreseed, kat1538_addin0, + kat1538_addin1, kat1538_retbits +}; +static const struct drbg_kat kat1538 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1538_t +}; + +static const unsigned char kat1539_entropyin[] = { + 0x1d, 0x4e, 0x20, 0x1e, 0xa2, 0xa2, 0x75, 0xb4, 0xbc, 0x62, 0x01, 0x6f, + 0x90, 0x2c, 0x14, 0x6d, +}; +static const unsigned char kat1539_nonce[] = { + 0x13, 0x47, 0xf0, 0x44, 0xda, 0x76, 0xa4, 0x95, +}; +static const unsigned char kat1539_persstr[] = { + 0x8c, 0x93, 0x07, 0x8f, 0x9e, 0xdb, 0x99, 0x74, 0x54, 0x42, 0x89, 0x7e, + 0x7f, 0x40, 0x4c, 0x95, +}; +static const unsigned char kat1539_entropyinreseed[] = { + 0xf6, 0x6c, 0xb6, 0x78, 0xe4, 0xe3, 0x33, 0xf4, 0x58, 0xf3, 0x8c, 0x84, + 0xdc, 0x8c, 0x8b, 0xef, +}; +static const unsigned char kat1539_addinreseed[] = {0}; +static const unsigned char kat1539_addin0[] = {0}; +static const unsigned char kat1539_addin1[] = {0}; +static const unsigned char kat1539_retbits[] = { + 0xdd, 0xf7, 0x70, 0xd0, 0xb2, 0xeb, 0xb0, 0x19, 0x0d, 0x32, 0xda, 0xae, + 0x7e, 0x1e, 0x16, 0x77, 0x79, 0x74, 0x08, 0xd7, 0xc8, 0x26, 0xcf, 0xeb, + 0x45, 0xbd, 0xe2, 0xf7, 0xdb, 0xf2, 0x44, 0x73, 0xf1, 0xc6, 0xf3, 0x52, + 0x97, 0xf4, 0x98, 0xc3, 0xe7, 0x07, 0x8d, 0x78, 0x04, 0x8d, 0x6c, 0xda, + 0x7a, 0xfe, 0x9b, 0x6c, 0xe6, 0xff, 0x8d, 0x3f, 0x97, 0x2e, 0x8d, 0xce, + 0x76, 0x75, 0xa7, 0x8c, +}; +static const struct drbg_kat_pr_false kat1539_t = { + 8, kat1539_entropyin, kat1539_nonce, kat1539_persstr, + kat1539_entropyinreseed, kat1539_addinreseed, kat1539_addin0, + kat1539_addin1, kat1539_retbits +}; +static const struct drbg_kat kat1539 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1539_t +}; + +static const unsigned char kat1540_entropyin[] = { + 0xb0, 0x5f, 0x65, 0x56, 0x07, 0x06, 0xae, 0xc6, 0xaa, 0x69, 0xa5, 0x30, + 0x34, 0x98, 0x1a, 0x75, +}; +static const unsigned char kat1540_nonce[] = { + 0x97, 0x8d, 0x13, 0x96, 0x08, 0x7c, 0x79, 0x95, +}; +static const unsigned char kat1540_persstr[] = { + 0x75, 0x05, 0xc5, 0xae, 0xf5, 0x0b, 0x65, 0x56, 0x53, 0x5f, 0xf1, 0xe7, + 0x9a, 0x92, 0x85, 0xfa, +}; +static const unsigned char kat1540_entropyinreseed[] = { + 0xb2, 0x40, 0x16, 0xcc, 0xb9, 0xb5, 0x32, 0x17, 0x49, 0xd3, 0x82, 0xf7, + 0x88, 0x35, 0xad, 0xcf, +}; +static const unsigned char kat1540_addinreseed[] = {0}; +static const unsigned char kat1540_addin0[] = {0}; +static const unsigned char kat1540_addin1[] = {0}; +static const unsigned char kat1540_retbits[] = { + 0xea, 0xe3, 0x63, 0x2d, 0x8b, 0x22, 0x4c, 0xa6, 0x90, 0x3f, 0x64, 0xba, + 0xf5, 0xf7, 0x5d, 0x89, 0x16, 0x40, 0xbd, 0x38, 0xe5, 0x71, 0x4e, 0x5c, + 0xae, 0x75, 0xf7, 0x7f, 0x0c, 0xfc, 0x38, 0xf0, 0x6e, 0x5e, 0xb9, 0xc2, + 0x67, 0xdf, 0x6b, 0x22, 0x39, 0x33, 0xee, 0xa5, 0xb9, 0x73, 0x77, 0xf0, + 0x7a, 0x93, 0x63, 0xbd, 0x10, 0x68, 0x72, 0xdd, 0x86, 0xb1, 0x5e, 0xc3, + 0x32, 0xc8, 0xe9, 0x20, +}; +static const struct drbg_kat_pr_false kat1540_t = { + 9, kat1540_entropyin, kat1540_nonce, kat1540_persstr, + kat1540_entropyinreseed, kat1540_addinreseed, kat1540_addin0, + kat1540_addin1, kat1540_retbits +}; +static const struct drbg_kat kat1540 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1540_t +}; + +static const unsigned char kat1541_entropyin[] = { + 0x22, 0xa7, 0x86, 0xb9, 0x9e, 0xe8, 0xf8, 0x74, 0x31, 0x19, 0x21, 0xce, + 0xb0, 0x9b, 0x0b, 0x62, +}; +static const unsigned char kat1541_nonce[] = { + 0x02, 0x12, 0xc9, 0xfa, 0x22, 0x9e, 0x40, 0xc7, +}; +static const unsigned char kat1541_persstr[] = { + 0x4f, 0x02, 0x44, 0xe2, 0x7b, 0x08, 0x04, 0x30, 0x6c, 0x60, 0x1e, 0x84, + 0xcb, 0x91, 0x95, 0x66, +}; +static const unsigned char kat1541_entropyinreseed[] = { + 0xe7, 0x9e, 0x8e, 0x72, 0xb2, 0xcf, 0xf5, 0x00, 0x23, 0xf6, 0x43, 0xde, + 0xaf, 0x2f, 0xa3, 0x25, +}; +static const unsigned char kat1541_addinreseed[] = {0}; +static const unsigned char kat1541_addin0[] = {0}; +static const unsigned char kat1541_addin1[] = {0}; +static const unsigned char kat1541_retbits[] = { + 0xc2, 0x04, 0x95, 0x44, 0xb5, 0xc6, 0x39, 0x5d, 0x5f, 0xf8, 0xe3, 0xe4, + 0x1b, 0x05, 0xab, 0x6c, 0xc2, 0x72, 0x7d, 0x0d, 0x08, 0x28, 0xfb, 0x7f, + 0x9c, 0x46, 0xd9, 0xf9, 0x98, 0x97, 0x1f, 0x77, 0xf4, 0x88, 0x53, 0xe3, + 0x07, 0x39, 0x4b, 0x2f, 0xda, 0x28, 0x2f, 0xaa, 0xb5, 0x0c, 0xdc, 0x73, + 0x29, 0xa5, 0x27, 0x55, 0x20, 0x3d, 0x0b, 0x52, 0xb7, 0xf2, 0xa6, 0x35, + 0xcf, 0x42, 0xca, 0x04, +}; +static const struct drbg_kat_pr_false kat1541_t = { + 10, kat1541_entropyin, kat1541_nonce, kat1541_persstr, + kat1541_entropyinreseed, kat1541_addinreseed, kat1541_addin0, + kat1541_addin1, kat1541_retbits +}; +static const struct drbg_kat kat1541 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1541_t +}; + +static const unsigned char kat1542_entropyin[] = { + 0xef, 0x17, 0x9f, 0xed, 0x1a, 0x28, 0xc9, 0x1e, 0x89, 0x76, 0xa5, 0xfb, + 0x93, 0xd8, 0xa0, 0xdd, +}; +static const unsigned char kat1542_nonce[] = { + 0x1a, 0xed, 0x84, 0xce, 0xc7, 0xe6, 0xd7, 0x91, +}; +static const unsigned char kat1542_persstr[] = { + 0x7d, 0x9e, 0x67, 0xa8, 0xf0, 0x4a, 0x22, 0x03, 0x73, 0x2b, 0x4d, 0x3f, + 0x39, 0x9d, 0x22, 0x91, +}; +static const unsigned char kat1542_entropyinreseed[] = { + 0xdd, 0x3a, 0x49, 0x47, 0x89, 0x40, 0x05, 0xea, 0x82, 0xfd, 0xc3, 0xfa, + 0x14, 0x54, 0x93, 0x3b, +}; +static const unsigned char kat1542_addinreseed[] = {0}; +static const unsigned char kat1542_addin0[] = {0}; +static const unsigned char kat1542_addin1[] = {0}; +static const unsigned char kat1542_retbits[] = { + 0x09, 0x06, 0xcb, 0x88, 0x44, 0x14, 0x9e, 0xbb, 0x32, 0x6e, 0xc2, 0x99, + 0x8c, 0xe2, 0xbf, 0x1c, 0x69, 0x47, 0x4d, 0xb7, 0xda, 0x02, 0xbc, 0x86, + 0x62, 0x9e, 0x49, 0x70, 0xea, 0xfc, 0xfa, 0x02, 0x30, 0x19, 0xb6, 0x0a, + 0xfa, 0xca, 0xea, 0x1a, 0x2e, 0x10, 0xbd, 0x3f, 0xa1, 0x10, 0x7e, 0xe0, + 0x2c, 0xdf, 0x05, 0xf1, 0xd9, 0x30, 0xa3, 0xa8, 0xc6, 0x1a, 0x2c, 0xc7, + 0xc6, 0x3e, 0xa5, 0xf1, +}; +static const struct drbg_kat_pr_false kat1542_t = { + 11, kat1542_entropyin, kat1542_nonce, kat1542_persstr, + kat1542_entropyinreseed, kat1542_addinreseed, kat1542_addin0, + kat1542_addin1, kat1542_retbits +}; +static const struct drbg_kat kat1542 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1542_t +}; + +static const unsigned char kat1543_entropyin[] = { + 0xf1, 0x86, 0xbd, 0xff, 0x36, 0xbe, 0xab, 0x82, 0xea, 0x45, 0x18, 0x95, + 0x86, 0x4b, 0x3b, 0x35, +}; +static const unsigned char kat1543_nonce[] = { + 0x44, 0x49, 0xd1, 0x39, 0xce, 0xa2, 0x45, 0x8a, +}; +static const unsigned char kat1543_persstr[] = { + 0x4a, 0xed, 0x4e, 0x99, 0x55, 0x54, 0x09, 0x31, 0x9e, 0x9c, 0x52, 0x57, + 0x77, 0xab, 0xbd, 0x2a, +}; +static const unsigned char kat1543_entropyinreseed[] = { + 0x67, 0x48, 0x56, 0x99, 0xe3, 0x0b, 0xf2, 0x7e, 0xb6, 0x84, 0xd6, 0x66, + 0x3d, 0x05, 0x07, 0xcc, +}; +static const unsigned char kat1543_addinreseed[] = {0}; +static const unsigned char kat1543_addin0[] = {0}; +static const unsigned char kat1543_addin1[] = {0}; +static const unsigned char kat1543_retbits[] = { + 0xba, 0xa1, 0x41, 0x66, 0x0e, 0xad, 0x5a, 0x6e, 0xf4, 0x1d, 0x0a, 0xcc, + 0x13, 0xe5, 0x26, 0x19, 0xa5, 0x0e, 0x26, 0x2f, 0xa7, 0x1f, 0x92, 0x9b, + 0xb8, 0xe4, 0xd9, 0xf1, 0xce, 0x34, 0xe1, 0xca, 0xbc, 0xcf, 0xed, 0x60, + 0x53, 0xc2, 0x8c, 0xbf, 0x75, 0x89, 0xa6, 0x76, 0x96, 0x96, 0x5d, 0x01, + 0x31, 0xb2, 0x23, 0xee, 0x83, 0xc2, 0x70, 0x80, 0x04, 0x39, 0xc6, 0xc2, + 0x52, 0xfa, 0x5d, 0x82, +}; +static const struct drbg_kat_pr_false kat1543_t = { + 12, kat1543_entropyin, kat1543_nonce, kat1543_persstr, + kat1543_entropyinreseed, kat1543_addinreseed, kat1543_addin0, + kat1543_addin1, kat1543_retbits +}; +static const struct drbg_kat kat1543 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1543_t +}; + +static const unsigned char kat1544_entropyin[] = { + 0x0b, 0xa7, 0xd6, 0x25, 0xa1, 0xcf, 0xb9, 0x00, 0xe1, 0xcb, 0xc7, 0x80, + 0x96, 0x8a, 0x90, 0xf2, +}; +static const unsigned char kat1544_nonce[] = { + 0xf4, 0x15, 0x5d, 0xf4, 0x6d, 0xae, 0xe1, 0xa8, +}; +static const unsigned char kat1544_persstr[] = { + 0x2d, 0xd3, 0xb5, 0xdf, 0xe0, 0xce, 0xae, 0x7f, 0x38, 0x21, 0xd8, 0x7b, + 0xa0, 0x30, 0x8b, 0x92, +}; +static const unsigned char kat1544_entropyinreseed[] = { + 0x94, 0xa5, 0x62, 0x2b, 0xbf, 0xda, 0x81, 0x49, 0x39, 0x38, 0x52, 0xda, + 0xce, 0xee, 0x85, 0x5b, +}; +static const unsigned char kat1544_addinreseed[] = {0}; +static const unsigned char kat1544_addin0[] = {0}; +static const unsigned char kat1544_addin1[] = {0}; +static const unsigned char kat1544_retbits[] = { + 0x07, 0x89, 0x35, 0x71, 0x48, 0xb9, 0x64, 0x4c, 0xa0, 0xa5, 0x30, 0x8d, + 0xa2, 0xf0, 0xc5, 0x1f, 0xcb, 0x6a, 0x99, 0x1d, 0x09, 0xf9, 0x10, 0xb4, + 0x02, 0x15, 0x80, 0x59, 0xb7, 0x41, 0x25, 0xf7, 0x52, 0x89, 0x5d, 0xe0, + 0xb1, 0xc7, 0x07, 0x94, 0x34, 0x9b, 0x02, 0xd7, 0x21, 0x38, 0xad, 0x68, + 0x24, 0x1c, 0xf4, 0xc2, 0x8f, 0x83, 0x28, 0x31, 0x3c, 0x1f, 0xd2, 0x11, + 0xb1, 0xc7, 0xc2, 0x57, +}; +static const struct drbg_kat_pr_false kat1544_t = { + 13, kat1544_entropyin, kat1544_nonce, kat1544_persstr, + kat1544_entropyinreseed, kat1544_addinreseed, kat1544_addin0, + kat1544_addin1, kat1544_retbits +}; +static const struct drbg_kat kat1544 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1544_t +}; + +static const unsigned char kat1545_entropyin[] = { + 0xe2, 0x86, 0x6d, 0x63, 0xf6, 0xe4, 0x9e, 0x3b, 0xd4, 0xd9, 0x4f, 0x28, + 0xe7, 0x77, 0x55, 0xf0, +}; +static const unsigned char kat1545_nonce[] = { + 0xf3, 0x1f, 0x80, 0x9e, 0x82, 0x17, 0x74, 0x34, +}; +static const unsigned char kat1545_persstr[] = { + 0x05, 0xa4, 0xee, 0x9d, 0x4e, 0x41, 0xb1, 0xd9, 0x68, 0x5e, 0xc3, 0xa8, + 0xcd, 0xfa, 0x54, 0x2d, +}; +static const unsigned char kat1545_entropyinreseed[] = { + 0x01, 0xa4, 0xf6, 0xe4, 0x38, 0xbd, 0x52, 0x75, 0x1f, 0xb6, 0xdb, 0xa2, + 0x5e, 0x30, 0x1a, 0xe3, +}; +static const unsigned char kat1545_addinreseed[] = {0}; +static const unsigned char kat1545_addin0[] = {0}; +static const unsigned char kat1545_addin1[] = {0}; +static const unsigned char kat1545_retbits[] = { + 0x50, 0x9f, 0xd9, 0x08, 0x68, 0x02, 0xdf, 0xa8, 0xa6, 0x04, 0x2e, 0x21, + 0xc5, 0x88, 0xf7, 0x96, 0x06, 0xb2, 0x1e, 0x7e, 0x2e, 0x39, 0x85, 0x49, + 0x8b, 0xd2, 0xc2, 0x30, 0x98, 0xbe, 0x88, 0xfc, 0x8a, 0xfa, 0x2c, 0xaa, + 0xc0, 0xf4, 0x00, 0x4b, 0xe3, 0xd0, 0x3a, 0x2a, 0x6a, 0xbd, 0x5e, 0x90, + 0xe3, 0xaa, 0xb7, 0xe5, 0x79, 0x7e, 0xce, 0xaa, 0xf0, 0xe3, 0x83, 0x54, + 0x08, 0x17, 0x1d, 0x81, +}; +static const struct drbg_kat_pr_false kat1545_t = { + 14, kat1545_entropyin, kat1545_nonce, kat1545_persstr, + kat1545_entropyinreseed, kat1545_addinreseed, kat1545_addin0, + kat1545_addin1, kat1545_retbits +}; +static const struct drbg_kat kat1545 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1545_t +}; + +static const unsigned char kat1546_entropyin[] = { + 0xe9, 0x09, 0x5c, 0x18, 0x99, 0xe1, 0xea, 0x7d, 0xbd, 0x86, 0x7d, 0x91, + 0x5d, 0x8e, 0x3d, 0xef, +}; +static const unsigned char kat1546_nonce[] = { + 0xce, 0xa1, 0x57, 0x88, 0x9d, 0xaa, 0x5c, 0x09, +}; +static const unsigned char kat1546_persstr[] = { + 0xb9, 0xae, 0x88, 0x1d, 0x60, 0xb2, 0x44, 0x53, 0x30, 0xd1, 0xaa, 0x2d, + 0x49, 0xed, 0xb1, 0x68, +}; +static const unsigned char kat1546_entropyinreseed[] = { + 0x3c, 0x66, 0x90, 0x64, 0x19, 0x04, 0x7d, 0x58, 0xf4, 0x7a, 0xe7, 0x88, + 0xc4, 0x9c, 0x7a, 0x69, +}; +static const unsigned char kat1546_addinreseed[] = { + 0xb0, 0x19, 0x05, 0x79, 0xcc, 0x71, 0xc2, 0x14, 0x2e, 0x2b, 0x4b, 0x14, + 0x7b, 0x4f, 0x01, 0x49, +}; +static const unsigned char kat1546_addin0[] = { + 0xb2, 0xb4, 0x78, 0x91, 0x52, 0x53, 0xc7, 0x84, 0xe3, 0xae, 0xd9, 0x7b, + 0x26, 0xcb, 0xc9, 0xe5, +}; +static const unsigned char kat1546_addin1[] = { + 0xd2, 0x41, 0x9f, 0xcc, 0xe3, 0x64, 0x3b, 0xb4, 0x9c, 0xb7, 0xad, 0x93, + 0xec, 0x09, 0xc7, 0x69, +}; +static const unsigned char kat1546_retbits[] = { + 0x06, 0x41, 0x06, 0x39, 0x61, 0x35, 0x84, 0xb3, 0xb1, 0x45, 0x59, 0x19, + 0xb2, 0xe9, 0xdf, 0x5c, 0xb3, 0xc1, 0x90, 0xc6, 0x68, 0xa0, 0xab, 0x47, + 0x3d, 0xa4, 0xe7, 0x15, 0xf8, 0x1e, 0x44, 0x72, 0xb5, 0x7a, 0xfd, 0xe0, + 0x82, 0x72, 0x70, 0x90, 0xe3, 0xa0, 0xd0, 0x78, 0x29, 0xac, 0x71, 0x85, + 0x0d, 0xeb, 0xea, 0x34, 0xcf, 0x0f, 0x28, 0x99, 0xfc, 0x3b, 0x15, 0xda, + 0xb8, 0x41, 0x80, 0xe4, +}; +static const struct drbg_kat_pr_false kat1546_t = { + 0, kat1546_entropyin, kat1546_nonce, kat1546_persstr, + kat1546_entropyinreseed, kat1546_addinreseed, kat1546_addin0, + kat1546_addin1, kat1546_retbits +}; +static const struct drbg_kat kat1546 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1546_t +}; + +static const unsigned char kat1547_entropyin[] = { + 0xfc, 0x17, 0xa0, 0xda, 0x69, 0xce, 0x9e, 0x7a, 0x5b, 0x1f, 0x57, 0x53, + 0x49, 0xca, 0x48, 0xb2, +}; +static const unsigned char kat1547_nonce[] = { + 0x61, 0x68, 0xca, 0xf0, 0x73, 0x7a, 0x14, 0xf2, +}; +static const unsigned char kat1547_persstr[] = { + 0x0f, 0x04, 0x68, 0x14, 0x43, 0xad, 0xbe, 0xbc, 0x5c, 0x62, 0xfc, 0x83, + 0x30, 0x75, 0x59, 0xb8, +}; +static const unsigned char kat1547_entropyinreseed[] = { + 0x5e, 0x86, 0x35, 0xae, 0x3b, 0x30, 0x32, 0x36, 0x8e, 0xa8, 0xdd, 0x87, + 0x5a, 0x65, 0x6c, 0x58, +}; +static const unsigned char kat1547_addinreseed[] = { + 0x16, 0x14, 0x3e, 0x76, 0x2e, 0xd7, 0xc9, 0x2b, 0x07, 0x4b, 0xba, 0xb4, + 0xd1, 0xf7, 0xea, 0xcf, +}; +static const unsigned char kat1547_addin0[] = { + 0x34, 0x65, 0xc0, 0xeb, 0x01, 0x07, 0xe3, 0x91, 0xdd, 0xec, 0x0d, 0xbf, + 0xe9, 0xaa, 0x9e, 0xd1, +}; +static const unsigned char kat1547_addin1[] = { + 0xda, 0x94, 0x05, 0xea, 0x75, 0x62, 0xe0, 0xae, 0xb4, 0xfa, 0xd0, 0x5d, + 0xdb, 0xc2, 0x67, 0x3f, +}; +static const unsigned char kat1547_retbits[] = { + 0x93, 0x36, 0x9b, 0xe6, 0x68, 0xd3, 0x7e, 0x36, 0x13, 0x20, 0x84, 0xda, + 0xed, 0x4c, 0x63, 0x7d, 0xff, 0xd8, 0x4c, 0x0b, 0xa4, 0x72, 0x3c, 0x7a, + 0xfb, 0x1c, 0x7b, 0x03, 0x9e, 0x56, 0xd3, 0x02, 0x29, 0x4d, 0x6b, 0xc9, + 0xd2, 0x2c, 0xb2, 0xef, 0x05, 0x87, 0x9a, 0x0e, 0xd9, 0x84, 0x14, 0x09, + 0xbf, 0xdf, 0xfc, 0xb2, 0xec, 0x81, 0x7d, 0xfc, 0xad, 0x47, 0x72, 0x82, + 0x97, 0x87, 0x1f, 0xaf, +}; +static const struct drbg_kat_pr_false kat1547_t = { + 1, kat1547_entropyin, kat1547_nonce, kat1547_persstr, + kat1547_entropyinreseed, kat1547_addinreseed, kat1547_addin0, + kat1547_addin1, kat1547_retbits +}; +static const struct drbg_kat kat1547 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1547_t +}; + +static const unsigned char kat1548_entropyin[] = { + 0x79, 0x6e, 0x5c, 0x41, 0xa5, 0xf5, 0x2c, 0xe0, 0x46, 0x3f, 0xb3, 0xee, + 0xf0, 0x7a, 0x3e, 0x58, +}; +static const unsigned char kat1548_nonce[] = { + 0xdd, 0xdc, 0x93, 0x80, 0x14, 0xb9, 0x09, 0x16, +}; +static const unsigned char kat1548_persstr[] = { + 0x12, 0x6e, 0xd4, 0x4b, 0x14, 0xeb, 0x63, 0x10, 0xd6, 0xa4, 0xae, 0x6b, + 0x29, 0x8a, 0x47, 0x57, +}; +static const unsigned char kat1548_entropyinreseed[] = { + 0xcc, 0x8a, 0x0e, 0x9b, 0xc7, 0x9c, 0xa4, 0xa5, 0x80, 0x7c, 0xdc, 0xcd, + 0x8b, 0xce, 0x3e, 0x5c, +}; +static const unsigned char kat1548_addinreseed[] = { + 0xae, 0x43, 0x6f, 0x84, 0x0b, 0xfa, 0x4b, 0x37, 0x6e, 0x18, 0xc8, 0x56, + 0x56, 0x47, 0x04, 0x0a, +}; +static const unsigned char kat1548_addin0[] = { + 0x92, 0x5d, 0x97, 0xc3, 0x45, 0xee, 0xbe, 0xe3, 0xb9, 0x84, 0x02, 0xe4, + 0x62, 0xdb, 0x0e, 0x05, +}; +static const unsigned char kat1548_addin1[] = { + 0xd7, 0xfe, 0xa1, 0xee, 0x0f, 0xba, 0x88, 0x31, 0xd3, 0xab, 0xb0, 0x3c, + 0x0f, 0xd7, 0xa0, 0x02, +}; +static const unsigned char kat1548_retbits[] = { + 0x50, 0x07, 0xb3, 0x18, 0x52, 0x10, 0xdf, 0xe1, 0xc7, 0xf5, 0x57, 0x7d, + 0x38, 0x59, 0x3f, 0x6b, 0x8a, 0x2e, 0x8a, 0x61, 0x90, 0xb7, 0xe1, 0x4b, + 0x47, 0xd8, 0x6b, 0x0d, 0x90, 0x6f, 0x59, 0xed, 0xdd, 0x38, 0x35, 0xa7, + 0xb1, 0x67, 0xa3, 0x37, 0x44, 0x28, 0xad, 0x95, 0x76, 0x58, 0x8c, 0xd9, + 0xa7, 0x71, 0x2a, 0xd0, 0xbf, 0x71, 0x65, 0xde, 0xc4, 0x3d, 0xc3, 0xda, + 0x5f, 0x11, 0xd0, 0xb9, +}; +static const struct drbg_kat_pr_false kat1548_t = { + 2, kat1548_entropyin, kat1548_nonce, kat1548_persstr, + kat1548_entropyinreseed, kat1548_addinreseed, kat1548_addin0, + kat1548_addin1, kat1548_retbits +}; +static const struct drbg_kat kat1548 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1548_t +}; + +static const unsigned char kat1549_entropyin[] = { + 0x10, 0x25, 0xac, 0x69, 0xe9, 0x78, 0xe4, 0x13, 0x93, 0x9a, 0xcf, 0xd5, + 0x85, 0x9e, 0x95, 0xed, +}; +static const unsigned char kat1549_nonce[] = { + 0x63, 0x8b, 0x9c, 0x36, 0xe2, 0xc7, 0x4d, 0x96, +}; +static const unsigned char kat1549_persstr[] = { + 0x9e, 0xb4, 0x66, 0x76, 0x27, 0x4b, 0x96, 0x5e, 0x9b, 0xdb, 0x06, 0xa6, + 0xe8, 0x84, 0x74, 0xaa, +}; +static const unsigned char kat1549_entropyinreseed[] = { + 0x0b, 0x1f, 0xfa, 0x14, 0x20, 0x98, 0x08, 0x0a, 0xa6, 0xf7, 0xf3, 0x95, + 0x91, 0xcd, 0x29, 0x8b, +}; +static const unsigned char kat1549_addinreseed[] = { + 0xe0, 0x90, 0x18, 0xfa, 0x1e, 0xcc, 0x76, 0x99, 0xd2, 0x3a, 0x95, 0xd2, + 0xea, 0xa2, 0xb7, 0x63, +}; +static const unsigned char kat1549_addin0[] = { + 0x78, 0x89, 0x50, 0x23, 0x52, 0x3f, 0x16, 0xaf, 0x9b, 0x08, 0x53, 0xe8, + 0xe6, 0x88, 0xde, 0xca, +}; +static const unsigned char kat1549_addin1[] = { + 0x7a, 0x3d, 0x33, 0xd8, 0xc4, 0xa6, 0xdb, 0xf6, 0x26, 0x44, 0x07, 0xa5, + 0x43, 0x51, 0x0a, 0x95, +}; +static const unsigned char kat1549_retbits[] = { + 0x4e, 0xdd, 0x23, 0xf4, 0x37, 0x66, 0x46, 0x93, 0x68, 0x94, 0x51, 0xc7, + 0xfd, 0xd5, 0xb5, 0xe9, 0x46, 0x9a, 0x4a, 0xb0, 0xa7, 0x91, 0xdd, 0x69, + 0xa9, 0xc5, 0x5e, 0x6b, 0xc5, 0x18, 0xac, 0x72, 0x7f, 0x84, 0x42, 0x91, + 0xe4, 0x5e, 0xe4, 0x16, 0x13, 0x19, 0x69, 0x07, 0x05, 0x55, 0x3f, 0x1a, + 0x32, 0x0f, 0x78, 0x47, 0xc4, 0x18, 0x11, 0x6e, 0xe0, 0xe1, 0x1c, 0xa6, + 0x52, 0x77, 0xe5, 0xa3, +}; +static const struct drbg_kat_pr_false kat1549_t = { + 3, kat1549_entropyin, kat1549_nonce, kat1549_persstr, + kat1549_entropyinreseed, kat1549_addinreseed, kat1549_addin0, + kat1549_addin1, kat1549_retbits +}; +static const struct drbg_kat kat1549 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1549_t +}; + +static const unsigned char kat1550_entropyin[] = { + 0x31, 0xc2, 0xd2, 0xba, 0xa0, 0x8a, 0x1e, 0x84, 0x0f, 0xbd, 0x39, 0x45, + 0xb1, 0x79, 0x72, 0xfc, +}; +static const unsigned char kat1550_nonce[] = { + 0xa6, 0x2b, 0xb4, 0x53, 0x1b, 0x51, 0x20, 0x8b, +}; +static const unsigned char kat1550_persstr[] = { + 0x17, 0x83, 0x97, 0xb1, 0xee, 0x1e, 0x7c, 0x12, 0xc4, 0xc1, 0x6a, 0x53, + 0x89, 0x32, 0x98, 0x38, +}; +static const unsigned char kat1550_entropyinreseed[] = { + 0x45, 0x56, 0xec, 0x8a, 0xe5, 0xc6, 0x9c, 0x19, 0xa3, 0x97, 0x11, 0xd1, + 0x61, 0x93, 0x2c, 0x38, +}; +static const unsigned char kat1550_addinreseed[] = { + 0x58, 0x9a, 0xd7, 0x84, 0xd2, 0x34, 0x3d, 0x58, 0x89, 0x0e, 0xe6, 0x77, + 0x77, 0x2e, 0x42, 0x4a, +}; +static const unsigned char kat1550_addin0[] = { + 0xd5, 0x92, 0x68, 0x5e, 0x98, 0x55, 0x47, 0x38, 0xa3, 0xaf, 0xdb, 0x2a, + 0x90, 0xa4, 0xda, 0x5e, +}; +static const unsigned char kat1550_addin1[] = { + 0xba, 0x25, 0xfe, 0x15, 0xd5, 0x28, 0x9e, 0x3a, 0x44, 0xbe, 0x7c, 0x51, + 0xcc, 0x49, 0x58, 0xcb, +}; +static const unsigned char kat1550_retbits[] = { + 0xe2, 0x12, 0x01, 0x4a, 0x69, 0xb2, 0xfe, 0xdc, 0xf8, 0xa6, 0x43, 0x2a, + 0xe8, 0xfb, 0xd6, 0x87, 0x6d, 0x57, 0x3d, 0xe2, 0xcf, 0xa3, 0x50, 0x96, + 0x7e, 0x38, 0xee, 0xf5, 0x90, 0xdd, 0x09, 0x75, 0xbb, 0xd7, 0x80, 0xd0, + 0x9f, 0x4b, 0x86, 0x48, 0xd1, 0xbc, 0xe9, 0x61, 0xe7, 0xdb, 0x6f, 0x7a, + 0x91, 0x1b, 0x6b, 0x8d, 0xe2, 0x3f, 0x79, 0x0f, 0x8b, 0x5d, 0x5f, 0xf6, + 0xcb, 0x23, 0xae, 0x66, +}; +static const struct drbg_kat_pr_false kat1550_t = { + 4, kat1550_entropyin, kat1550_nonce, kat1550_persstr, + kat1550_entropyinreseed, kat1550_addinreseed, kat1550_addin0, + kat1550_addin1, kat1550_retbits +}; +static const struct drbg_kat kat1550 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1550_t +}; + +static const unsigned char kat1551_entropyin[] = { + 0xff, 0x59, 0x31, 0xdc, 0x8f, 0x62, 0xd0, 0xbd, 0x4a, 0x5f, 0xbf, 0x31, + 0x1a, 0xf9, 0x3d, 0xdb, +}; +static const unsigned char kat1551_nonce[] = { + 0x69, 0x2f, 0xfe, 0xf2, 0x6e, 0x04, 0xfa, 0x27, +}; +static const unsigned char kat1551_persstr[] = { + 0x57, 0xf9, 0x9c, 0x26, 0x23, 0x45, 0x12, 0xdf, 0x83, 0x5f, 0x3e, 0x39, + 0x1a, 0xca, 0xba, 0xb2, +}; +static const unsigned char kat1551_entropyinreseed[] = { + 0x5f, 0x42, 0x44, 0x76, 0x28, 0x65, 0xf5, 0x49, 0x3b, 0xe9, 0x1d, 0x56, + 0x90, 0xa3, 0x13, 0x91, +}; +static const unsigned char kat1551_addinreseed[] = { + 0x0f, 0x39, 0x87, 0x6d, 0x90, 0x67, 0x78, 0xcc, 0xc8, 0xa2, 0xb1, 0x1d, + 0x71, 0x43, 0x44, 0x2f, +}; +static const unsigned char kat1551_addin0[] = { + 0xd6, 0x1b, 0x39, 0x93, 0x13, 0xb4, 0xd1, 0x3d, 0x50, 0xf8, 0xb2, 0x07, + 0x62, 0xdf, 0x5f, 0x83, +}; +static const unsigned char kat1551_addin1[] = { + 0xe3, 0xca, 0xd6, 0x24, 0x0a, 0xce, 0x0f, 0xeb, 0x62, 0x61, 0xa4, 0x5b, + 0x4a, 0x96, 0x0e, 0x8e, +}; +static const unsigned char kat1551_retbits[] = { + 0xe3, 0x2f, 0xd4, 0x8a, 0x05, 0x02, 0x35, 0xa2, 0x60, 0x4b, 0x4f, 0x2e, + 0xe8, 0xda, 0xfa, 0x36, 0x13, 0x9b, 0x0a, 0xfa, 0x59, 0xcc, 0x64, 0x47, + 0x4c, 0x5c, 0x2c, 0x98, 0x86, 0x39, 0xfb, 0xda, 0x5b, 0xa2, 0x50, 0x7a, + 0x4b, 0x70, 0x56, 0x86, 0x5a, 0xd3, 0xd9, 0x7d, 0x52, 0x96, 0x5e, 0x57, + 0xeb, 0x5b, 0xac, 0x8f, 0xee, 0x26, 0xf1, 0x2d, 0x79, 0xd7, 0xa0, 0x62, + 0xae, 0x6b, 0x5f, 0x67, +}; +static const struct drbg_kat_pr_false kat1551_t = { + 5, kat1551_entropyin, kat1551_nonce, kat1551_persstr, + kat1551_entropyinreseed, kat1551_addinreseed, kat1551_addin0, + kat1551_addin1, kat1551_retbits +}; +static const struct drbg_kat kat1551 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1551_t +}; + +static const unsigned char kat1552_entropyin[] = { + 0x03, 0x22, 0x0b, 0x31, 0xbf, 0xa4, 0xae, 0xa7, 0xe0, 0x17, 0x26, 0x4f, + 0xf7, 0x0f, 0xcb, 0x21, +}; +static const unsigned char kat1552_nonce[] = { + 0xd1, 0x87, 0x3d, 0x93, 0x5f, 0xe6, 0x0d, 0xf4, +}; +static const unsigned char kat1552_persstr[] = { + 0x07, 0x69, 0xe8, 0x60, 0xef, 0x2c, 0x56, 0xff, 0xca, 0x9d, 0x59, 0x1b, + 0x62, 0x89, 0x3f, 0xd0, +}; +static const unsigned char kat1552_entropyinreseed[] = { + 0x81, 0x54, 0x6c, 0xbb, 0x72, 0x1c, 0xe8, 0x82, 0x4c, 0xda, 0x3a, 0x56, + 0xd0, 0x61, 0xac, 0xca, +}; +static const unsigned char kat1552_addinreseed[] = { + 0xf8, 0xf3, 0xed, 0x27, 0x70, 0x9e, 0xfa, 0xa5, 0x6e, 0x35, 0x4a, 0x83, + 0xfc, 0xfe, 0x31, 0x9c, +}; +static const unsigned char kat1552_addin0[] = { + 0xc8, 0xe3, 0x25, 0xcd, 0x78, 0x12, 0x0b, 0x51, 0xb3, 0x3a, 0xd7, 0xa6, + 0xbf, 0x9a, 0x59, 0x2c, +}; +static const unsigned char kat1552_addin1[] = { + 0xf7, 0xd4, 0x32, 0x06, 0xa8, 0x31, 0x3f, 0x7e, 0x12, 0x92, 0x50, 0x21, + 0x5c, 0xb4, 0x91, 0x1b, +}; +static const unsigned char kat1552_retbits[] = { + 0x48, 0xf8, 0x30, 0x2b, 0x5e, 0xaf, 0xc4, 0x51, 0x42, 0x4a, 0x49, 0xd9, + 0x17, 0xdd, 0x48, 0x92, 0x3c, 0x5c, 0xb8, 0x35, 0xff, 0xb1, 0x53, 0x3d, + 0x0f, 0xd0, 0xb2, 0x48, 0xab, 0x07, 0x22, 0xdb, 0xf0, 0xc9, 0xd5, 0x36, + 0x10, 0x77, 0x1a, 0xaa, 0xc9, 0xc0, 0x39, 0x93, 0xfa, 0x43, 0x29, 0x3c, + 0xc7, 0x08, 0x3f, 0xf1, 0x16, 0x8c, 0x23, 0xb2, 0xe6, 0x18, 0x76, 0x10, + 0x58, 0xaf, 0x79, 0x7b, +}; +static const struct drbg_kat_pr_false kat1552_t = { + 6, kat1552_entropyin, kat1552_nonce, kat1552_persstr, + kat1552_entropyinreseed, kat1552_addinreseed, kat1552_addin0, + kat1552_addin1, kat1552_retbits +}; +static const struct drbg_kat kat1552 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1552_t +}; + +static const unsigned char kat1553_entropyin[] = { + 0xc5, 0xdf, 0x14, 0x5c, 0xbc, 0x99, 0xc3, 0xfe, 0x24, 0x3e, 0x46, 0xa8, + 0xad, 0x5b, 0xe5, 0xd8, +}; +static const unsigned char kat1553_nonce[] = { + 0x81, 0xe5, 0x45, 0x62, 0x57, 0x9d, 0x40, 0x32, +}; +static const unsigned char kat1553_persstr[] = { + 0xb2, 0x8e, 0x1d, 0xa0, 0xaf, 0x72, 0x17, 0x6e, 0xc1, 0xf7, 0x67, 0xc9, + 0x72, 0xfd, 0x95, 0x58, +}; +static const unsigned char kat1553_entropyinreseed[] = { + 0x54, 0x6e, 0x46, 0x94, 0xc6, 0x13, 0x0c, 0x48, 0x3c, 0x36, 0xd6, 0x97, + 0x18, 0xac, 0x2b, 0x73, +}; +static const unsigned char kat1553_addinreseed[] = { + 0x78, 0xe0, 0x52, 0x40, 0xcf, 0xf4, 0x3b, 0x62, 0x86, 0x25, 0x85, 0x00, + 0x59, 0x68, 0xad, 0xf3, +}; +static const unsigned char kat1553_addin0[] = { + 0x56, 0x4c, 0x3f, 0xb6, 0x2e, 0x54, 0x22, 0x91, 0xfc, 0x3c, 0x6e, 0xdf, + 0xaa, 0x4d, 0x4d, 0xfb, +}; +static const unsigned char kat1553_addin1[] = { + 0x86, 0x96, 0x55, 0x63, 0x37, 0x3f, 0x3a, 0x49, 0x9c, 0x78, 0x39, 0x64, + 0x23, 0xe8, 0xd5, 0xdc, +}; +static const unsigned char kat1553_retbits[] = { + 0x3f, 0xf8, 0x22, 0x6d, 0x9a, 0x38, 0xaf, 0xaa, 0x89, 0x09, 0xbf, 0xbd, + 0xb3, 0xd8, 0x49, 0xab, 0xb3, 0x68, 0x96, 0xe3, 0x24, 0x1c, 0x96, 0x51, + 0x0d, 0x32, 0xea, 0x82, 0xcc, 0xd9, 0xa7, 0x7c, 0xf2, 0x6f, 0x30, 0xa0, + 0x49, 0x20, 0xfb, 0x2e, 0xdd, 0xb8, 0xe0, 0x6a, 0x32, 0xa6, 0xb1, 0x07, + 0xa2, 0xd2, 0x83, 0x53, 0x30, 0xb8, 0xf0, 0x3b, 0xf4, 0x03, 0x0d, 0xc2, + 0xc4, 0x45, 0xe0, 0xb7, +}; +static const struct drbg_kat_pr_false kat1553_t = { + 7, kat1553_entropyin, kat1553_nonce, kat1553_persstr, + kat1553_entropyinreseed, kat1553_addinreseed, kat1553_addin0, + kat1553_addin1, kat1553_retbits +}; +static const struct drbg_kat kat1553 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1553_t +}; + +static const unsigned char kat1554_entropyin[] = { + 0xdd, 0xb0, 0x6d, 0x7b, 0x03, 0x3f, 0xcf, 0x77, 0x0b, 0x11, 0x83, 0xc2, + 0xf1, 0x0d, 0x96, 0x86, +}; +static const unsigned char kat1554_nonce[] = { + 0xda, 0x0f, 0xc8, 0xb8, 0x90, 0x8c, 0xa9, 0x51, +}; +static const unsigned char kat1554_persstr[] = { + 0x7b, 0x6c, 0x6c, 0x25, 0x82, 0x96, 0x94, 0xd5, 0x01, 0x93, 0xc6, 0x9e, + 0xdc, 0xfc, 0x8b, 0xc8, +}; +static const unsigned char kat1554_entropyinreseed[] = { + 0xf1, 0x93, 0xe2, 0x16, 0x60, 0x1e, 0xce, 0x77, 0x0c, 0x56, 0xe8, 0x3f, + 0xb5, 0x9b, 0x80, 0xe1, +}; +static const unsigned char kat1554_addinreseed[] = { + 0xad, 0xbf, 0x18, 0xcd, 0xae, 0x2f, 0x01, 0x7b, 0x47, 0x41, 0xe6, 0x5b, + 0xa1, 0xc4, 0xd0, 0x67, +}; +static const unsigned char kat1554_addin0[] = { + 0x3d, 0x10, 0x96, 0x98, 0x43, 0x2a, 0xbb, 0x85, 0x6e, 0xab, 0xc1, 0x94, + 0x55, 0x91, 0xa4, 0x85, +}; +static const unsigned char kat1554_addin1[] = { + 0x98, 0xda, 0x85, 0x12, 0x63, 0xc0, 0x2a, 0xdd, 0x5c, 0xce, 0x6d, 0x0a, + 0x07, 0x6a, 0xb6, 0x58, +}; +static const unsigned char kat1554_retbits[] = { + 0x44, 0xff, 0xaa, 0x62, 0x77, 0xf2, 0x9d, 0xd7, 0x71, 0x02, 0x42, 0x80, + 0xdb, 0xed, 0x72, 0x8a, 0x29, 0x8c, 0x2b, 0x02, 0x54, 0xff, 0xa8, 0x77, + 0x40, 0x20, 0xf8, 0x49, 0xaf, 0x3d, 0x97, 0x9c, 0xbf, 0xa2, 0x6a, 0xbe, + 0x7f, 0x4a, 0x08, 0x02, 0x70, 0x38, 0x91, 0xd9, 0xf7, 0x91, 0xab, 0x5a, + 0x61, 0x80, 0x88, 0xbe, 0xfa, 0x3c, 0xc4, 0x30, 0x7b, 0x2f, 0x6a, 0xd4, + 0xa4, 0x39, 0x1b, 0xb4, +}; +static const struct drbg_kat_pr_false kat1554_t = { + 8, kat1554_entropyin, kat1554_nonce, kat1554_persstr, + kat1554_entropyinreseed, kat1554_addinreseed, kat1554_addin0, + kat1554_addin1, kat1554_retbits +}; +static const struct drbg_kat kat1554 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1554_t +}; + +static const unsigned char kat1555_entropyin[] = { + 0x55, 0x8e, 0x28, 0x13, 0x7d, 0xb0, 0xf6, 0x51, 0xdc, 0x66, 0x8e, 0x0f, + 0x7e, 0xa5, 0x90, 0x26, +}; +static const unsigned char kat1555_nonce[] = { + 0x82, 0xd6, 0x4d, 0xae, 0xd7, 0x73, 0x09, 0x63, +}; +static const unsigned char kat1555_persstr[] = { + 0x94, 0xaf, 0x43, 0x25, 0xec, 0x75, 0x22, 0x73, 0x9e, 0xb7, 0xb1, 0x44, + 0x59, 0x36, 0xd6, 0xea, +}; +static const unsigned char kat1555_entropyinreseed[] = { + 0x16, 0xea, 0xf7, 0xd9, 0x2a, 0xb4, 0xdc, 0x77, 0x63, 0x8c, 0xd7, 0x55, + 0xf3, 0x83, 0xef, 0x22, +}; +static const unsigned char kat1555_addinreseed[] = { + 0xa2, 0x96, 0x2f, 0xef, 0xf8, 0x92, 0x8b, 0x31, 0xfb, 0x53, 0xa0, 0x7f, + 0xd1, 0xce, 0xec, 0xcd, +}; +static const unsigned char kat1555_addin0[] = { + 0x0a, 0xd8, 0x33, 0x31, 0x71, 0xb7, 0xd8, 0xed, 0xe9, 0x00, 0xf7, 0xfc, + 0xa0, 0x3f, 0xd4, 0x49, +}; +static const unsigned char kat1555_addin1[] = { + 0x31, 0xad, 0xc1, 0x4d, 0xca, 0xe1, 0x50, 0x33, 0x1e, 0x7e, 0x02, 0xee, + 0x4c, 0x17, 0x70, 0x6b, +}; +static const unsigned char kat1555_retbits[] = { + 0x78, 0xb0, 0xff, 0x4c, 0xe1, 0x59, 0xdd, 0xd5, 0x03, 0x06, 0x2f, 0x55, + 0x3c, 0x68, 0x59, 0x4f, 0xec, 0x39, 0x4b, 0xf4, 0xb2, 0x5e, 0x64, 0xba, + 0x8a, 0xf4, 0xbb, 0x2b, 0x7c, 0xa5, 0xee, 0x87, 0x67, 0x63, 0x4c, 0xba, + 0x2f, 0xef, 0x9b, 0x32, 0xae, 0x28, 0x3d, 0x19, 0x51, 0xf4, 0xb9, 0x8d, + 0x46, 0xa9, 0x98, 0xe7, 0xf3, 0x58, 0xc7, 0x14, 0xa9, 0x5a, 0xff, 0xaf, + 0x41, 0xdf, 0xeb, 0x17, +}; +static const struct drbg_kat_pr_false kat1555_t = { + 9, kat1555_entropyin, kat1555_nonce, kat1555_persstr, + kat1555_entropyinreseed, kat1555_addinreseed, kat1555_addin0, + kat1555_addin1, kat1555_retbits +}; +static const struct drbg_kat kat1555 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1555_t +}; + +static const unsigned char kat1556_entropyin[] = { + 0xb7, 0xad, 0x56, 0x79, 0xf6, 0x81, 0x42, 0xa8, 0x47, 0x6c, 0x98, 0xab, + 0xc2, 0xbb, 0x1d, 0x83, +}; +static const unsigned char kat1556_nonce[] = { + 0x75, 0x79, 0xdc, 0x55, 0xc5, 0x05, 0xd7, 0x95, +}; +static const unsigned char kat1556_persstr[] = { + 0xa5, 0xa7, 0x3e, 0x8c, 0x50, 0x1b, 0x5f, 0xe5, 0x46, 0xc3, 0xc1, 0x9b, + 0x9d, 0x3c, 0xd0, 0x93, +}; +static const unsigned char kat1556_entropyinreseed[] = { + 0xe2, 0x66, 0xaf, 0x41, 0x00, 0x60, 0x10, 0xd3, 0xdd, 0x51, 0x64, 0x23, + 0xba, 0x80, 0x0d, 0x92, +}; +static const unsigned char kat1556_addinreseed[] = { + 0x15, 0x7a, 0x5e, 0x19, 0xf7, 0xe5, 0x58, 0xa4, 0x9f, 0x1f, 0x71, 0xb6, + 0xaa, 0xee, 0x14, 0xa3, +}; +static const unsigned char kat1556_addin0[] = { + 0x37, 0xd3, 0x49, 0x2c, 0xbe, 0xfc, 0xb8, 0x9b, 0x05, 0x6f, 0xe1, 0x29, + 0x0a, 0x09, 0x5f, 0x4a, +}; +static const unsigned char kat1556_addin1[] = { + 0xd2, 0x1d, 0x69, 0x26, 0x33, 0x48, 0x3a, 0x67, 0x6b, 0x0b, 0x30, 0xb3, + 0x56, 0x51, 0xdf, 0x96, +}; +static const unsigned char kat1556_retbits[] = { + 0xbc, 0x7e, 0x1f, 0x78, 0x74, 0xd0, 0x4f, 0xb0, 0x00, 0x59, 0x86, 0x9e, + 0x11, 0xd7, 0xf4, 0x7e, 0xb3, 0xc1, 0x75, 0x16, 0xa0, 0x58, 0xc1, 0x95, + 0x15, 0x1b, 0x33, 0x10, 0x92, 0x3e, 0x63, 0x15, 0x53, 0xca, 0x6b, 0x8f, + 0xe0, 0x70, 0x74, 0x2a, 0x07, 0xc2, 0xa2, 0x3c, 0x3c, 0x3a, 0xba, 0xc0, + 0x47, 0x34, 0x78, 0xc0, 0x4a, 0x06, 0x6e, 0x5e, 0x13, 0x77, 0x1f, 0xf7, + 0xd5, 0x17, 0x68, 0x6b, +}; +static const struct drbg_kat_pr_false kat1556_t = { + 10, kat1556_entropyin, kat1556_nonce, kat1556_persstr, + kat1556_entropyinreseed, kat1556_addinreseed, kat1556_addin0, + kat1556_addin1, kat1556_retbits +}; +static const struct drbg_kat kat1556 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1556_t +}; + +static const unsigned char kat1557_entropyin[] = { + 0x70, 0x10, 0xa5, 0x5c, 0x31, 0xbb, 0x9a, 0x36, 0x57, 0x8d, 0xcc, 0x9c, + 0xe3, 0xff, 0xe5, 0xd9, +}; +static const unsigned char kat1557_nonce[] = { + 0xce, 0x8b, 0x37, 0xc1, 0xf7, 0xb0, 0xd9, 0x79, +}; +static const unsigned char kat1557_persstr[] = { + 0x9a, 0xd0, 0xde, 0x6c, 0x71, 0x01, 0x73, 0x2f, 0xdc, 0x60, 0x0e, 0x51, + 0xfa, 0xd1, 0x39, 0x0c, +}; +static const unsigned char kat1557_entropyinreseed[] = { + 0xdc, 0x15, 0x7b, 0xf6, 0x8f, 0x16, 0x0b, 0x84, 0x82, 0x13, 0x19, 0xe6, + 0x9a, 0xee, 0xc3, 0x3b, +}; +static const unsigned char kat1557_addinreseed[] = { + 0x6e, 0x7a, 0x5c, 0x5f, 0x08, 0x29, 0x9f, 0xa4, 0xd4, 0x55, 0x6c, 0xea, + 0xa2, 0x52, 0x7b, 0x3f, +}; +static const unsigned char kat1557_addin0[] = { + 0x6e, 0x1f, 0x9c, 0xa8, 0xdc, 0x3d, 0x22, 0xa2, 0x6e, 0xca, 0x83, 0x59, + 0x53, 0xb5, 0xa8, 0xda, +}; +static const unsigned char kat1557_addin1[] = { + 0xb8, 0xb3, 0x8c, 0x7a, 0x3c, 0x5c, 0xd5, 0x87, 0xe9, 0xf1, 0xf9, 0x4e, + 0xb1, 0xf2, 0xdf, 0x41, +}; +static const unsigned char kat1557_retbits[] = { + 0xc8, 0x4e, 0x93, 0xd1, 0x68, 0xf8, 0x79, 0x55, 0xf1, 0x75, 0x13, 0x11, + 0x2f, 0xd1, 0xf4, 0xf2, 0xaf, 0x7f, 0xe6, 0x91, 0x53, 0xda, 0x7e, 0x50, + 0x5e, 0x83, 0x74, 0x0b, 0x29, 0x29, 0x85, 0x33, 0x67, 0x24, 0xdd, 0xf4, + 0x6c, 0x26, 0xec, 0x4d, 0x2c, 0x45, 0xfd, 0x88, 0x36, 0x9b, 0x5f, 0x65, + 0xdb, 0x8a, 0x87, 0x58, 0x93, 0x4c, 0x8a, 0x82, 0x9c, 0xc7, 0x86, 0x21, + 0x8d, 0x26, 0xe9, 0x71, +}; +static const struct drbg_kat_pr_false kat1557_t = { + 11, kat1557_entropyin, kat1557_nonce, kat1557_persstr, + kat1557_entropyinreseed, kat1557_addinreseed, kat1557_addin0, + kat1557_addin1, kat1557_retbits +}; +static const struct drbg_kat kat1557 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1557_t +}; + +static const unsigned char kat1558_entropyin[] = { + 0x72, 0xf6, 0x75, 0x87, 0xaa, 0x67, 0xc3, 0x48, 0xee, 0x5c, 0x01, 0xc9, + 0x88, 0xa0, 0x76, 0xfa, +}; +static const unsigned char kat1558_nonce[] = { + 0xab, 0x35, 0x82, 0x53, 0x87, 0x29, 0x5d, 0x4d, +}; +static const unsigned char kat1558_persstr[] = { + 0xa9, 0x1d, 0xb3, 0x2b, 0x93, 0xdd, 0x5c, 0xc3, 0xac, 0x4a, 0x61, 0x61, + 0xb2, 0x5b, 0xee, 0x77, +}; +static const unsigned char kat1558_entropyinreseed[] = { + 0x8f, 0xb8, 0x0d, 0x67, 0x70, 0x48, 0xd2, 0x56, 0x4d, 0x39, 0x49, 0xb9, + 0xb9, 0x57, 0x9c, 0xc4, +}; +static const unsigned char kat1558_addinreseed[] = { + 0x43, 0x06, 0xa4, 0xad, 0xbc, 0xd0, 0xdc, 0x8c, 0xc2, 0xf8, 0x19, 0x91, + 0xe1, 0x29, 0x11, 0xdc, +}; +static const unsigned char kat1558_addin0[] = { + 0x62, 0x0f, 0xdf, 0x28, 0x7f, 0x77, 0x7c, 0x67, 0xb6, 0x2d, 0xd0, 0x41, + 0x84, 0xc4, 0x88, 0xa8, +}; +static const unsigned char kat1558_addin1[] = { + 0x84, 0x28, 0xf2, 0x06, 0x7d, 0xfc, 0xda, 0xcc, 0xf5, 0x43, 0x99, 0xd0, + 0xb7, 0x93, 0x4a, 0xab, +}; +static const unsigned char kat1558_retbits[] = { + 0x5b, 0xfe, 0xf8, 0x58, 0x39, 0x87, 0x9d, 0x9e, 0x95, 0x53, 0xa2, 0xfd, + 0x24, 0xf3, 0x5a, 0xa8, 0x19, 0x9a, 0x09, 0x17, 0x75, 0xd2, 0xcd, 0x91, + 0x17, 0x32, 0x70, 0xe1, 0x41, 0xa5, 0x86, 0x69, 0xb1, 0x92, 0xe8, 0xe5, + 0xb3, 0x57, 0xc5, 0x7c, 0x02, 0xbd, 0x22, 0x80, 0xe2, 0x29, 0x82, 0x97, + 0x25, 0x59, 0x6c, 0xb9, 0x60, 0x86, 0xbb, 0x08, 0x38, 0x22, 0x7b, 0x00, + 0x20, 0x9c, 0x9a, 0x72, +}; +static const struct drbg_kat_pr_false kat1558_t = { + 12, kat1558_entropyin, kat1558_nonce, kat1558_persstr, + kat1558_entropyinreseed, kat1558_addinreseed, kat1558_addin0, + kat1558_addin1, kat1558_retbits +}; +static const struct drbg_kat kat1558 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1558_t +}; + +static const unsigned char kat1559_entropyin[] = { + 0x1d, 0x29, 0x22, 0xab, 0x37, 0x4b, 0xe1, 0xe7, 0x43, 0x69, 0x5d, 0xc9, + 0x99, 0x9d, 0xbf, 0x59, +}; +static const unsigned char kat1559_nonce[] = { + 0x30, 0x94, 0x60, 0xd3, 0xe0, 0xae, 0xe3, 0x22, +}; +static const unsigned char kat1559_persstr[] = { + 0x72, 0xbe, 0x1c, 0x15, 0xd3, 0xeb, 0x98, 0x56, 0x6b, 0x36, 0x7e, 0x72, + 0x70, 0xc4, 0xf9, 0xc8, +}; +static const unsigned char kat1559_entropyinreseed[] = { + 0x0d, 0x57, 0x20, 0x1d, 0x23, 0x0c, 0x4c, 0x88, 0xc7, 0x7f, 0x54, 0xe3, + 0xdb, 0x0d, 0xa7, 0xe7, +}; +static const unsigned char kat1559_addinreseed[] = { + 0x4f, 0x01, 0x9e, 0xaf, 0x1a, 0x93, 0xa2, 0xd5, 0xac, 0x3b, 0x68, 0xac, + 0xbf, 0x7f, 0xa5, 0x7a, +}; +static const unsigned char kat1559_addin0[] = { + 0x0c, 0xf8, 0x2b, 0x0c, 0x4d, 0xc6, 0xf6, 0x07, 0x0c, 0x89, 0x72, 0x7c, + 0x71, 0xa8, 0x70, 0xfa, +}; +static const unsigned char kat1559_addin1[] = { + 0x36, 0x7d, 0x49, 0x81, 0x61, 0x45, 0xff, 0x60, 0x79, 0x52, 0x81, 0x42, + 0xec, 0x98, 0x76, 0xc6, +}; +static const unsigned char kat1559_retbits[] = { + 0xf0, 0x38, 0xa7, 0x9f, 0x9f, 0x82, 0xe2, 0x61, 0x35, 0xf2, 0xe7, 0xaa, + 0x67, 0x8b, 0xe9, 0x26, 0x2a, 0x7b, 0xe0, 0xe3, 0xab, 0x1c, 0x2e, 0x6a, + 0x9c, 0x37, 0xfd, 0x6f, 0xc8, 0xf5, 0x8c, 0xb4, 0x90, 0xb5, 0x55, 0xa6, + 0xac, 0xb2, 0x4b, 0x35, 0x58, 0xca, 0x94, 0x11, 0x87, 0x35, 0x6f, 0x92, + 0xd0, 0xe7, 0xa5, 0xba, 0xd3, 0x01, 0xa9, 0x62, 0xf0, 0x61, 0x81, 0xbd, + 0x70, 0x07, 0x85, 0x65, +}; +static const struct drbg_kat_pr_false kat1559_t = { + 13, kat1559_entropyin, kat1559_nonce, kat1559_persstr, + kat1559_entropyinreseed, kat1559_addinreseed, kat1559_addin0, + kat1559_addin1, kat1559_retbits +}; +static const struct drbg_kat kat1559 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1559_t +}; + +static const unsigned char kat1560_entropyin[] = { + 0x10, 0xcb, 0xf4, 0x46, 0x08, 0xfd, 0xa4, 0x8f, 0xd6, 0xed, 0x57, 0x2f, + 0xa4, 0xff, 0xe7, 0xeb, +}; +static const unsigned char kat1560_nonce[] = { + 0x6a, 0xa3, 0x47, 0xc4, 0x8d, 0xc8, 0x09, 0xc3, +}; +static const unsigned char kat1560_persstr[] = { + 0x1b, 0x58, 0x98, 0xe0, 0xd1, 0x49, 0xe5, 0x03, 0x6a, 0x63, 0x96, 0xb8, + 0x54, 0xd2, 0xc4, 0xa6, +}; +static const unsigned char kat1560_entropyinreseed[] = { + 0x80, 0x2f, 0x1b, 0x3b, 0xea, 0x91, 0x62, 0xb6, 0x9b, 0x3b, 0x60, 0xfa, + 0xca, 0x95, 0xba, 0xcf, +}; +static const unsigned char kat1560_addinreseed[] = { + 0x72, 0x27, 0x29, 0x66, 0x4b, 0xe0, 0xae, 0x80, 0x77, 0x43, 0x7f, 0x59, + 0x22, 0x9e, 0xb5, 0x1d, +}; +static const unsigned char kat1560_addin0[] = { + 0x38, 0xc3, 0x91, 0x83, 0xea, 0xd3, 0x58, 0x59, 0xc7, 0xc7, 0x5e, 0xd1, + 0x04, 0x2b, 0x9c, 0xba, +}; +static const unsigned char kat1560_addin1[] = { + 0x0c, 0x75, 0xef, 0x35, 0x7c, 0x72, 0x16, 0x04, 0xef, 0x2e, 0x11, 0x86, + 0xf6, 0x56, 0xf5, 0x6a, +}; +static const unsigned char kat1560_retbits[] = { + 0xa7, 0x0e, 0xfa, 0x58, 0x9e, 0x73, 0xb5, 0xb5, 0x2d, 0xfa, 0x07, 0x7d, + 0xd0, 0x2b, 0x25, 0x6b, 0xc8, 0xb9, 0x71, 0x8f, 0x08, 0xd3, 0x54, 0x45, + 0x44, 0x56, 0xe1, 0xf1, 0xa5, 0x6c, 0x00, 0x52, 0x1c, 0x0d, 0x63, 0xfe, + 0xd3, 0x02, 0xcc, 0x67, 0x0f, 0xd5, 0x64, 0x6c, 0xec, 0x56, 0x91, 0xf8, + 0xb6, 0xae, 0x2e, 0xa8, 0x89, 0x27, 0xce, 0xcb, 0xd3, 0x48, 0xe2, 0xe7, + 0x74, 0x83, 0x01, 0x31, +}; +static const struct drbg_kat_pr_false kat1560_t = { + 14, kat1560_entropyin, kat1560_nonce, kat1560_persstr, + kat1560_entropyinreseed, kat1560_addinreseed, kat1560_addin0, + kat1560_addin1, kat1560_retbits +}; +static const struct drbg_kat kat1560 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1560_t +}; + +static const unsigned char kat1561_entropyin[] = { + 0x84, 0x52, 0x29, 0xe4, 0x2c, 0x4b, 0x39, 0xc4, 0x15, 0x73, 0x54, 0x4f, + 0xca, 0x83, 0x8c, 0x2f, +}; +static const unsigned char kat1561_nonce[] = { + 0xbc, 0xb2, 0x3a, 0x5b, 0x7b, 0x28, 0x0c, 0x41, +}; +static const unsigned char kat1561_persstr[] = {0}; +static const unsigned char kat1561_entropyinreseed[] = { + 0xe5, 0x49, 0xf5, 0x81, 0x5a, 0xd3, 0x29, 0x53, 0xb1, 0x15, 0xb8, 0xda, + 0x6d, 0x2c, 0x3d, 0xc9, +}; +static const unsigned char kat1561_addinreseed[] = {0}; +static const unsigned char kat1561_addin0[] = {0}; +static const unsigned char kat1561_addin1[] = {0}; +static const unsigned char kat1561_retbits[] = { + 0x45, 0x33, 0x8b, 0xb6, 0x7d, 0x27, 0x31, 0xc9, 0xf6, 0x2e, 0xad, 0x90, + 0x4a, 0x61, 0xeb, 0x81, 0x6f, 0x93, 0xef, 0xe0, 0x60, 0x5f, 0xb4, 0x49, + 0x5f, 0x92, 0x52, 0x1d, 0x95, 0x53, 0xad, 0xfc, 0x5c, 0x1b, 0x02, 0x30, + 0x21, 0x6d, 0x4c, 0x2a, 0x38, 0x4f, 0x7a, 0xe1, 0x62, 0xff, 0x63, 0x19, + 0xfb, 0xdc, 0x4e, 0x11, 0x08, 0x44, 0x6f, 0x33, 0x72, 0xfb, 0x6b, 0xa5, + 0xcd, 0x6d, 0xe2, 0x1e, +}; +static const struct drbg_kat_pr_false kat1561_t = { + 0, kat1561_entropyin, kat1561_nonce, kat1561_persstr, + kat1561_entropyinreseed, kat1561_addinreseed, kat1561_addin0, + kat1561_addin1, kat1561_retbits +}; +static const struct drbg_kat kat1561 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1561_t +}; + +static const unsigned char kat1562_entropyin[] = { + 0x61, 0x70, 0x1c, 0x00, 0xf4, 0x7f, 0x25, 0x49, 0x3a, 0xff, 0x86, 0x62, + 0x7e, 0x13, 0x40, 0x3a, +}; +static const unsigned char kat1562_nonce[] = { + 0x80, 0xae, 0x97, 0xde, 0x15, 0x47, 0x3f, 0x70, +}; +static const unsigned char kat1562_persstr[] = {0}; +static const unsigned char kat1562_entropyinreseed[] = { + 0x82, 0xb5, 0x77, 0x72, 0x75, 0x3d, 0xf2, 0xe7, 0x77, 0x6d, 0x63, 0xee, + 0x97, 0x51, 0x16, 0xb4, +}; +static const unsigned char kat1562_addinreseed[] = {0}; +static const unsigned char kat1562_addin0[] = {0}; +static const unsigned char kat1562_addin1[] = {0}; +static const unsigned char kat1562_retbits[] = { + 0x8a, 0x5b, 0x20, 0x99, 0xd2, 0x91, 0xbb, 0xd2, 0x1b, 0xcb, 0x47, 0x9d, + 0x37, 0xa4, 0x08, 0x2f, 0x02, 0x8d, 0xcd, 0xf1, 0xc0, 0x42, 0xce, 0xbd, + 0x5e, 0xc2, 0xdd, 0xbf, 0x58, 0x67, 0xb5, 0xee, 0x60, 0xef, 0xf1, 0xb1, + 0xdc, 0xdd, 0xd7, 0x6f, 0xe4, 0x41, 0x6f, 0x22, 0x9c, 0xab, 0x3a, 0xd6, + 0x5a, 0xbc, 0x9b, 0x57, 0xce, 0xbb, 0x31, 0x89, 0x09, 0xfe, 0xae, 0x4c, + 0x1a, 0x2d, 0xb1, 0xc6, +}; +static const struct drbg_kat_pr_false kat1562_t = { + 1, kat1562_entropyin, kat1562_nonce, kat1562_persstr, + kat1562_entropyinreseed, kat1562_addinreseed, kat1562_addin0, + kat1562_addin1, kat1562_retbits +}; +static const struct drbg_kat kat1562 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1562_t +}; + +static const unsigned char kat1563_entropyin[] = { + 0xb5, 0x79, 0xa2, 0x5f, 0x3d, 0x28, 0x5b, 0xf8, 0xe5, 0xc6, 0x52, 0xc2, + 0x43, 0x2f, 0x33, 0xae, +}; +static const unsigned char kat1563_nonce[] = { + 0x26, 0x12, 0x91, 0x69, 0x9d, 0x89, 0x18, 0x89, +}; +static const unsigned char kat1563_persstr[] = {0}; +static const unsigned char kat1563_entropyinreseed[] = { + 0x8a, 0x7d, 0xa7, 0xae, 0x82, 0x37, 0x2e, 0x50, 0xdc, 0xa2, 0xdd, 0x7c, + 0xbf, 0x4a, 0x97, 0xe8, +}; +static const unsigned char kat1563_addinreseed[] = {0}; +static const unsigned char kat1563_addin0[] = {0}; +static const unsigned char kat1563_addin1[] = {0}; +static const unsigned char kat1563_retbits[] = { + 0x8a, 0xb1, 0xe7, 0x5d, 0x31, 0x2a, 0xa8, 0xa1, 0xfd, 0x7d, 0x29, 0xf1, + 0x52, 0x70, 0xaf, 0xad, 0x72, 0xa4, 0x29, 0xa7, 0xd0, 0x9c, 0xc0, 0xf0, + 0xc3, 0x33, 0x16, 0xa7, 0x3e, 0x33, 0xb3, 0xa6, 0x15, 0x53, 0x2f, 0xf6, + 0x0c, 0xec, 0x57, 0x4b, 0x4c, 0x2f, 0x4e, 0xc3, 0xee, 0x8b, 0xda, 0xf9, + 0x18, 0x2b, 0x22, 0x50, 0xb7, 0x0e, 0xaa, 0x66, 0x51, 0x49, 0x52, 0xce, + 0xca, 0x9d, 0xfd, 0x87, +}; +static const struct drbg_kat_pr_false kat1563_t = { + 2, kat1563_entropyin, kat1563_nonce, kat1563_persstr, + kat1563_entropyinreseed, kat1563_addinreseed, kat1563_addin0, + kat1563_addin1, kat1563_retbits +}; +static const struct drbg_kat kat1563 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1563_t +}; + +static const unsigned char kat1564_entropyin[] = { + 0x76, 0x53, 0xfd, 0x17, 0xaa, 0xd2, 0x24, 0x50, 0x6e, 0x9d, 0x76, 0x70, + 0xf6, 0x50, 0x9d, 0x77, +}; +static const unsigned char kat1564_nonce[] = { + 0xb6, 0x20, 0x54, 0x11, 0xba, 0x31, 0x3c, 0xbb, +}; +static const unsigned char kat1564_persstr[] = {0}; +static const unsigned char kat1564_entropyinreseed[] = { + 0x40, 0x45, 0x5e, 0x2f, 0x14, 0x84, 0xc8, 0x9a, 0x0f, 0x54, 0x51, 0xab, + 0x09, 0xa9, 0x00, 0x08, +}; +static const unsigned char kat1564_addinreseed[] = {0}; +static const unsigned char kat1564_addin0[] = {0}; +static const unsigned char kat1564_addin1[] = {0}; +static const unsigned char kat1564_retbits[] = { + 0x39, 0xa4, 0x68, 0x70, 0xb1, 0x6f, 0xb1, 0x34, 0xa4, 0x4e, 0xe6, 0x23, + 0x9b, 0x0a, 0x16, 0x89, 0x91, 0x5b, 0x17, 0x5d, 0xe5, 0x1c, 0x8a, 0xcf, + 0x12, 0xac, 0x54, 0xd4, 0x2a, 0x90, 0x37, 0x65, 0x30, 0xd8, 0xd9, 0x9b, + 0x27, 0x74, 0xf2, 0xda, 0x48, 0xc6, 0xd0, 0xf0, 0x0d, 0x63, 0xec, 0x72, + 0x1b, 0x29, 0x2e, 0xd3, 0xf0, 0x60, 0xea, 0xb8, 0x49, 0x0d, 0x0e, 0xf3, + 0x84, 0x35, 0x72, 0xff, +}; +static const struct drbg_kat_pr_false kat1564_t = { + 3, kat1564_entropyin, kat1564_nonce, kat1564_persstr, + kat1564_entropyinreseed, kat1564_addinreseed, kat1564_addin0, + kat1564_addin1, kat1564_retbits +}; +static const struct drbg_kat kat1564 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1564_t +}; + +static const unsigned char kat1565_entropyin[] = { + 0xd3, 0x0a, 0xa7, 0x41, 0x44, 0xd9, 0xe9, 0x3d, 0x9d, 0x89, 0xfa, 0x4f, + 0x02, 0x96, 0x6c, 0x98, +}; +static const unsigned char kat1565_nonce[] = { + 0xfd, 0x1a, 0x5f, 0x8b, 0x22, 0xc1, 0xe3, 0x82, +}; +static const unsigned char kat1565_persstr[] = {0}; +static const unsigned char kat1565_entropyinreseed[] = { + 0x58, 0x28, 0xa6, 0x4e, 0xf3, 0x09, 0xec, 0x94, 0x45, 0xff, 0xeb, 0x42, + 0x84, 0xf2, 0x49, 0xed, +}; +static const unsigned char kat1565_addinreseed[] = {0}; +static const unsigned char kat1565_addin0[] = {0}; +static const unsigned char kat1565_addin1[] = {0}; +static const unsigned char kat1565_retbits[] = { + 0xa0, 0xae, 0xb5, 0x94, 0xe5, 0xff, 0xec, 0x52, 0x61, 0x07, 0x61, 0x20, + 0xa7, 0x95, 0x15, 0x0d, 0x41, 0x90, 0x23, 0x63, 0x31, 0xbf, 0x13, 0xcd, + 0x6b, 0x99, 0x4c, 0xbc, 0x61, 0xc3, 0xa7, 0x00, 0x62, 0x28, 0xc8, 0xa6, + 0x09, 0x0c, 0xcc, 0x63, 0x38, 0x77, 0xe3, 0x72, 0xe1, 0xfa, 0x46, 0x9a, + 0x75, 0x35, 0x04, 0xf0, 0xee, 0x9d, 0x79, 0x46, 0x73, 0x59, 0xf7, 0x1c, + 0x1d, 0xff, 0xd8, 0x1e, +}; +static const struct drbg_kat_pr_false kat1565_t = { + 4, kat1565_entropyin, kat1565_nonce, kat1565_persstr, + kat1565_entropyinreseed, kat1565_addinreseed, kat1565_addin0, + kat1565_addin1, kat1565_retbits +}; +static const struct drbg_kat kat1565 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1565_t +}; + +static const unsigned char kat1566_entropyin[] = { + 0x9c, 0x9b, 0xf9, 0xef, 0xf8, 0xfb, 0x95, 0xea, 0x6a, 0x44, 0x54, 0x06, + 0xdb, 0xf2, 0x58, 0xc6, +}; +static const unsigned char kat1566_nonce[] = { + 0xef, 0xa8, 0x3a, 0x3b, 0xab, 0x1f, 0x4c, 0x1b, +}; +static const unsigned char kat1566_persstr[] = {0}; +static const unsigned char kat1566_entropyinreseed[] = { + 0xc4, 0x09, 0x19, 0x3b, 0x18, 0x70, 0x75, 0xc5, 0x24, 0x03, 0xe6, 0x85, + 0x3f, 0x7b, 0x86, 0x6c, +}; +static const unsigned char kat1566_addinreseed[] = {0}; +static const unsigned char kat1566_addin0[] = {0}; +static const unsigned char kat1566_addin1[] = {0}; +static const unsigned char kat1566_retbits[] = { + 0x9c, 0xaf, 0xf0, 0x6f, 0x9b, 0x61, 0xb6, 0x00, 0xe2, 0x10, 0x8b, 0x0b, + 0x94, 0xfb, 0x82, 0x56, 0xc1, 0x36, 0xe5, 0xd7, 0x9a, 0x17, 0xec, 0x3a, + 0x50, 0x91, 0x17, 0x1a, 0xcc, 0xeb, 0xf1, 0x21, 0x6b, 0xb5, 0x29, 0xdd, + 0x4e, 0x9f, 0x9d, 0xeb, 0xce, 0xa9, 0xed, 0x32, 0x22, 0x3a, 0xcc, 0x55, + 0xd8, 0xdb, 0x1a, 0x55, 0x04, 0x1a, 0xee, 0x39, 0x22, 0x82, 0x51, 0xa5, + 0x49, 0x6e, 0xa4, 0x82, +}; +static const struct drbg_kat_pr_false kat1566_t = { + 5, kat1566_entropyin, kat1566_nonce, kat1566_persstr, + kat1566_entropyinreseed, kat1566_addinreseed, kat1566_addin0, + kat1566_addin1, kat1566_retbits +}; +static const struct drbg_kat kat1566 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1566_t +}; + +static const unsigned char kat1567_entropyin[] = { + 0xd3, 0x6d, 0x63, 0xbf, 0x82, 0x14, 0xc3, 0x60, 0xd9, 0xc8, 0x28, 0x77, + 0xb0, 0x71, 0x60, 0xbf, +}; +static const unsigned char kat1567_nonce[] = { + 0x3c, 0xc2, 0x10, 0x48, 0xa8, 0x1a, 0xba, 0x3c, +}; +static const unsigned char kat1567_persstr[] = {0}; +static const unsigned char kat1567_entropyinreseed[] = { + 0x2e, 0xa0, 0x84, 0x31, 0xc8, 0x4a, 0xd1, 0x35, 0x27, 0x27, 0x7a, 0x31, + 0x73, 0x09, 0xe5, 0xf4, +}; +static const unsigned char kat1567_addinreseed[] = {0}; +static const unsigned char kat1567_addin0[] = {0}; +static const unsigned char kat1567_addin1[] = {0}; +static const unsigned char kat1567_retbits[] = { + 0x9f, 0xec, 0x4b, 0x24, 0xa2, 0x1a, 0xaa, 0x36, 0x56, 0x19, 0x20, 0x2b, + 0x15, 0x8c, 0x85, 0x79, 0x7e, 0x64, 0x12, 0x9b, 0xb5, 0xa0, 0x95, 0xc7, + 0xa3, 0x5a, 0x2a, 0xd5, 0xbb, 0x4c, 0x58, 0x3f, 0x8c, 0xa0, 0x29, 0xb6, + 0x9f, 0x99, 0x2c, 0xe1, 0xa1, 0x77, 0x1e, 0xc3, 0x63, 0xb0, 0x16, 0xd2, + 0x0f, 0x9b, 0x01, 0x2b, 0x78, 0x69, 0x6c, 0xf2, 0x29, 0x9a, 0xcb, 0x69, + 0x57, 0xc0, 0x17, 0x77, +}; +static const struct drbg_kat_pr_false kat1567_t = { + 6, kat1567_entropyin, kat1567_nonce, kat1567_persstr, + kat1567_entropyinreseed, kat1567_addinreseed, kat1567_addin0, + kat1567_addin1, kat1567_retbits +}; +static const struct drbg_kat kat1567 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1567_t +}; + +static const unsigned char kat1568_entropyin[] = { + 0x89, 0xd2, 0xcf, 0x42, 0x58, 0xd7, 0x86, 0x36, 0xbf, 0xa8, 0x9d, 0xed, + 0xd6, 0x6e, 0xce, 0x30, +}; +static const unsigned char kat1568_nonce[] = { + 0x67, 0xba, 0x75, 0xac, 0x91, 0x95, 0x61, 0xf9, +}; +static const unsigned char kat1568_persstr[] = {0}; +static const unsigned char kat1568_entropyinreseed[] = { + 0xaa, 0x1f, 0x97, 0x8d, 0x93, 0xc7, 0x47, 0x93, 0x3e, 0x9f, 0x71, 0x7e, + 0x10, 0x1b, 0xf8, 0xa0, +}; +static const unsigned char kat1568_addinreseed[] = {0}; +static const unsigned char kat1568_addin0[] = {0}; +static const unsigned char kat1568_addin1[] = {0}; +static const unsigned char kat1568_retbits[] = { + 0xf9, 0x45, 0x1e, 0x03, 0x87, 0xbe, 0x0b, 0x51, 0x8c, 0x53, 0x84, 0x22, + 0xf4, 0xae, 0xb8, 0x0d, 0x77, 0x55, 0x61, 0x30, 0x45, 0x55, 0xc5, 0x95, + 0x7e, 0xc9, 0xc7, 0xd5, 0x2a, 0x8b, 0x77, 0x3c, 0x7b, 0xc1, 0x9a, 0x21, + 0xa8, 0x48, 0xd4, 0x74, 0x1c, 0x18, 0x83, 0x63, 0x96, 0xb3, 0x70, 0x11, + 0xfc, 0xb4, 0x54, 0xad, 0x87, 0xec, 0x06, 0x6e, 0x40, 0xa8, 0x61, 0xda, + 0xb4, 0x07, 0xef, 0x37, +}; +static const struct drbg_kat_pr_false kat1568_t = { + 7, kat1568_entropyin, kat1568_nonce, kat1568_persstr, + kat1568_entropyinreseed, kat1568_addinreseed, kat1568_addin0, + kat1568_addin1, kat1568_retbits +}; +static const struct drbg_kat kat1568 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1568_t +}; + +static const unsigned char kat1569_entropyin[] = { + 0xb1, 0x5a, 0x9e, 0xec, 0xbd, 0x33, 0xef, 0x60, 0x1f, 0xc4, 0x94, 0x6b, + 0x78, 0xb3, 0x18, 0x03, +}; +static const unsigned char kat1569_nonce[] = { + 0xb1, 0x45, 0xc3, 0xdb, 0x01, 0xc5, 0xdc, 0x45, +}; +static const unsigned char kat1569_persstr[] = {0}; +static const unsigned char kat1569_entropyinreseed[] = { + 0x64, 0xc7, 0xac, 0xf3, 0x47, 0x3d, 0x0c, 0x4a, 0xb3, 0xd9, 0xd2, 0x0e, + 0x42, 0x4b, 0x80, 0x82, +}; +static const unsigned char kat1569_addinreseed[] = {0}; +static const unsigned char kat1569_addin0[] = {0}; +static const unsigned char kat1569_addin1[] = {0}; +static const unsigned char kat1569_retbits[] = { + 0x59, 0x0e, 0xf8, 0xdf, 0x13, 0x09, 0xd1, 0xf2, 0xcf, 0xf2, 0x7e, 0x40, + 0x5c, 0x72, 0x23, 0x29, 0xf6, 0x99, 0xcb, 0x56, 0x72, 0x05, 0x31, 0x31, + 0x22, 0x80, 0x60, 0x28, 0x0f, 0x44, 0x8d, 0x1f, 0xef, 0x80, 0x91, 0xde, + 0x46, 0x9a, 0xa6, 0xc2, 0x6d, 0xce, 0x06, 0xde, 0xf9, 0x98, 0x33, 0x80, + 0x2b, 0x36, 0x3d, 0xea, 0x4d, 0x7c, 0x4b, 0x85, 0xbf, 0x28, 0x14, 0x9b, + 0xe9, 0x3d, 0x6c, 0x16, +}; +static const struct drbg_kat_pr_false kat1569_t = { + 8, kat1569_entropyin, kat1569_nonce, kat1569_persstr, + kat1569_entropyinreseed, kat1569_addinreseed, kat1569_addin0, + kat1569_addin1, kat1569_retbits +}; +static const struct drbg_kat kat1569 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1569_t +}; + +static const unsigned char kat1570_entropyin[] = { + 0x8d, 0x35, 0x7c, 0xf4, 0xee, 0xd0, 0xf1, 0x04, 0xe3, 0x93, 0xe8, 0x50, + 0xb9, 0x10, 0x48, 0xbb, +}; +static const unsigned char kat1570_nonce[] = { + 0xa9, 0x9f, 0x29, 0x50, 0x9b, 0xed, 0xb6, 0xdf, +}; +static const unsigned char kat1570_persstr[] = {0}; +static const unsigned char kat1570_entropyinreseed[] = { + 0x54, 0x89, 0xe4, 0x83, 0x8c, 0xe2, 0x4a, 0x12, 0xc5, 0x79, 0xfb, 0xc1, + 0x0f, 0xe7, 0x97, 0x24, +}; +static const unsigned char kat1570_addinreseed[] = {0}; +static const unsigned char kat1570_addin0[] = {0}; +static const unsigned char kat1570_addin1[] = {0}; +static const unsigned char kat1570_retbits[] = { + 0x55, 0xd7, 0x56, 0x86, 0x06, 0xd7, 0x6f, 0xcd, 0x23, 0x6e, 0x84, 0x3d, + 0xee, 0x34, 0x38, 0x90, 0x40, 0x54, 0x29, 0xb0, 0x56, 0xa8, 0xb6, 0x3f, + 0xf5, 0x2c, 0x08, 0x90, 0x78, 0x19, 0x5b, 0x54, 0x9d, 0xe6, 0x71, 0x8b, + 0x36, 0x2d, 0xdf, 0x2f, 0x6f, 0x4c, 0x97, 0x9c, 0xde, 0xbe, 0x2f, 0xe7, + 0x93, 0x33, 0x2b, 0x78, 0xb8, 0x92, 0xda, 0xc8, 0xed, 0xd2, 0x2c, 0x42, + 0xa5, 0xd0, 0x68, 0x80, +}; +static const struct drbg_kat_pr_false kat1570_t = { + 9, kat1570_entropyin, kat1570_nonce, kat1570_persstr, + kat1570_entropyinreseed, kat1570_addinreseed, kat1570_addin0, + kat1570_addin1, kat1570_retbits +}; +static const struct drbg_kat kat1570 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1570_t +}; + +static const unsigned char kat1571_entropyin[] = { + 0x62, 0x01, 0x55, 0x02, 0x44, 0xc1, 0xa4, 0x2a, 0x4c, 0x45, 0x7a, 0x75, + 0x91, 0xd2, 0x57, 0x43, +}; +static const unsigned char kat1571_nonce[] = { + 0xe8, 0x34, 0x27, 0xa9, 0xf4, 0x8d, 0x56, 0x7e, +}; +static const unsigned char kat1571_persstr[] = {0}; +static const unsigned char kat1571_entropyinreseed[] = { + 0x44, 0x49, 0x41, 0x0c, 0xfc, 0x18, 0x83, 0x0e, 0xc1, 0x85, 0x12, 0xff, + 0xbe, 0x64, 0xe5, 0x62, +}; +static const unsigned char kat1571_addinreseed[] = {0}; +static const unsigned char kat1571_addin0[] = {0}; +static const unsigned char kat1571_addin1[] = {0}; +static const unsigned char kat1571_retbits[] = { + 0x09, 0xa3, 0x44, 0x44, 0x99, 0x8a, 0x2c, 0x1c, 0xac, 0xed, 0x5d, 0x93, + 0x13, 0xa3, 0xb8, 0xe3, 0x9a, 0x13, 0xc8, 0xba, 0x98, 0xa3, 0x3e, 0x96, + 0xd7, 0x8a, 0x99, 0x10, 0x55, 0xac, 0xfb, 0x38, 0x46, 0x88, 0xb5, 0xb3, + 0xe1, 0xb8, 0x7c, 0x2c, 0x3d, 0x0c, 0x91, 0x0f, 0xb9, 0xa4, 0x20, 0x49, + 0x93, 0x84, 0xa4, 0x90, 0x70, 0x20, 0x1b, 0x76, 0xc1, 0x4a, 0x12, 0x68, + 0x51, 0xb8, 0xf4, 0x3d, +}; +static const struct drbg_kat_pr_false kat1571_t = { + 10, kat1571_entropyin, kat1571_nonce, kat1571_persstr, + kat1571_entropyinreseed, kat1571_addinreseed, kat1571_addin0, + kat1571_addin1, kat1571_retbits +}; +static const struct drbg_kat kat1571 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1571_t +}; + +static const unsigned char kat1572_entropyin[] = { + 0x5b, 0xd5, 0x4f, 0xaa, 0xc8, 0xf1, 0xb1, 0x1f, 0xe1, 0xd5, 0x0a, 0xfd, + 0x36, 0xb0, 0x58, 0x9c, +}; +static const unsigned char kat1572_nonce[] = { + 0xe3, 0x85, 0x78, 0x8e, 0x7b, 0x67, 0xfa, 0xe2, +}; +static const unsigned char kat1572_persstr[] = {0}; +static const unsigned char kat1572_entropyinreseed[] = { + 0x87, 0x26, 0x55, 0x03, 0x30, 0xd8, 0x52, 0x83, 0x8a, 0x99, 0x9f, 0xc9, + 0x89, 0xe4, 0xa1, 0xa6, +}; +static const unsigned char kat1572_addinreseed[] = {0}; +static const unsigned char kat1572_addin0[] = {0}; +static const unsigned char kat1572_addin1[] = {0}; +static const unsigned char kat1572_retbits[] = { + 0xe8, 0x7b, 0xd1, 0x88, 0xf3, 0xfe, 0xef, 0xb4, 0xd0, 0x58, 0xbd, 0x73, + 0x2a, 0x0f, 0x22, 0x56, 0x89, 0xb8, 0xeb, 0x31, 0xcb, 0xbb, 0x65, 0xb3, + 0x16, 0x1e, 0xb5, 0xf8, 0xd5, 0x23, 0xb1, 0xbe, 0xfc, 0x59, 0xb0, 0x05, + 0xc8, 0x82, 0x0d, 0x33, 0x5a, 0x06, 0x0c, 0xe2, 0xae, 0xfa, 0xba, 0xf7, + 0x4a, 0x6d, 0xd9, 0x94, 0xf8, 0x13, 0x4e, 0x78, 0x05, 0xac, 0x65, 0xe5, + 0x06, 0x57, 0x0a, 0xf7, +}; +static const struct drbg_kat_pr_false kat1572_t = { + 11, kat1572_entropyin, kat1572_nonce, kat1572_persstr, + kat1572_entropyinreseed, kat1572_addinreseed, kat1572_addin0, + kat1572_addin1, kat1572_retbits +}; +static const struct drbg_kat kat1572 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1572_t +}; + +static const unsigned char kat1573_entropyin[] = { + 0x47, 0x49, 0xf6, 0xae, 0x9d, 0x20, 0x0c, 0xe0, 0xff, 0xe5, 0xbc, 0xa2, + 0xf7, 0x00, 0x7c, 0x5b, +}; +static const unsigned char kat1573_nonce[] = { + 0x90, 0xdb, 0x60, 0xc7, 0x60, 0xe3, 0x00, 0x2c, +}; +static const unsigned char kat1573_persstr[] = {0}; +static const unsigned char kat1573_entropyinreseed[] = { + 0x54, 0xad, 0x4c, 0xa1, 0x94, 0x02, 0xfd, 0xbd, 0x37, 0x60, 0x06, 0x02, + 0x10, 0x40, 0xbd, 0xaa, +}; +static const unsigned char kat1573_addinreseed[] = {0}; +static const unsigned char kat1573_addin0[] = {0}; +static const unsigned char kat1573_addin1[] = {0}; +static const unsigned char kat1573_retbits[] = { + 0x37, 0x98, 0x01, 0x26, 0x2f, 0xdb, 0xda, 0x3b, 0x30, 0x37, 0x37, 0x19, + 0xea, 0x22, 0x41, 0xb8, 0xe8, 0x4f, 0xb1, 0x73, 0x56, 0x51, 0x63, 0xd9, + 0x63, 0x50, 0x22, 0x77, 0xfd, 0x41, 0xb6, 0x2c, 0x2f, 0x78, 0x50, 0x6d, + 0x23, 0xee, 0x80, 0xc7, 0xf2, 0xe8, 0xb9, 0x63, 0x54, 0xa6, 0xca, 0xa6, + 0x9d, 0xd6, 0x94, 0xd8, 0x04, 0x94, 0x67, 0x50, 0x46, 0x17, 0xf6, 0x94, + 0x89, 0x45, 0x74, 0xc2, +}; +static const struct drbg_kat_pr_false kat1573_t = { + 12, kat1573_entropyin, kat1573_nonce, kat1573_persstr, + kat1573_entropyinreseed, kat1573_addinreseed, kat1573_addin0, + kat1573_addin1, kat1573_retbits +}; +static const struct drbg_kat kat1573 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1573_t +}; + +static const unsigned char kat1574_entropyin[] = { + 0x18, 0x48, 0x45, 0xac, 0x4e, 0x88, 0x42, 0x13, 0x08, 0x1c, 0xb2, 0x94, + 0x23, 0xb5, 0x11, 0x6e, +}; +static const unsigned char kat1574_nonce[] = { + 0x29, 0x92, 0x07, 0xbc, 0xbc, 0xaa, 0x35, 0xbe, +}; +static const unsigned char kat1574_persstr[] = {0}; +static const unsigned char kat1574_entropyinreseed[] = { + 0x54, 0x60, 0xf7, 0x13, 0x93, 0xfe, 0x8a, 0xac, 0xba, 0x6a, 0xa2, 0xb6, + 0x90, 0xca, 0xc9, 0x78, +}; +static const unsigned char kat1574_addinreseed[] = {0}; +static const unsigned char kat1574_addin0[] = {0}; +static const unsigned char kat1574_addin1[] = {0}; +static const unsigned char kat1574_retbits[] = { + 0x01, 0x9e, 0xfa, 0xcf, 0x06, 0x0d, 0xe6, 0x89, 0x8d, 0xc2, 0x34, 0xad, + 0x02, 0xfa, 0xcc, 0x81, 0x79, 0xbf, 0xd7, 0xe4, 0xfb, 0x70, 0x8f, 0x1c, + 0x01, 0x51, 0x92, 0xd4, 0x3d, 0x95, 0x3e, 0x59, 0x0b, 0xf3, 0xe8, 0xa2, + 0x52, 0xfb, 0xfa, 0xed, 0x5d, 0x9b, 0x5d, 0x69, 0xc9, 0x9c, 0x23, 0x43, + 0xd9, 0xc3, 0x2c, 0x71, 0xa9, 0x01, 0x0a, 0x12, 0xd6, 0x9a, 0x8e, 0x6c, + 0x86, 0xe5, 0x89, 0x0c, +}; +static const struct drbg_kat_pr_false kat1574_t = { + 13, kat1574_entropyin, kat1574_nonce, kat1574_persstr, + kat1574_entropyinreseed, kat1574_addinreseed, kat1574_addin0, + kat1574_addin1, kat1574_retbits +}; +static const struct drbg_kat kat1574 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1574_t +}; + +static const unsigned char kat1575_entropyin[] = { + 0x37, 0x29, 0xfb, 0x44, 0x2b, 0xc3, 0x2e, 0x13, 0x2a, 0x5b, 0x3b, 0x6f, + 0x37, 0x9d, 0xca, 0x0c, +}; +static const unsigned char kat1575_nonce[] = { + 0x5b, 0xd4, 0xf3, 0xfb, 0x9e, 0xf3, 0x63, 0xbf, +}; +static const unsigned char kat1575_persstr[] = {0}; +static const unsigned char kat1575_entropyinreseed[] = { + 0xa5, 0x10, 0x80, 0xa3, 0x5e, 0x53, 0xe8, 0x0f, 0x63, 0x67, 0x82, 0x99, + 0xeb, 0x04, 0x6a, 0xab, +}; +static const unsigned char kat1575_addinreseed[] = {0}; +static const unsigned char kat1575_addin0[] = {0}; +static const unsigned char kat1575_addin1[] = {0}; +static const unsigned char kat1575_retbits[] = { + 0x4f, 0xd5, 0x86, 0xf7, 0x4c, 0x27, 0x8c, 0x14, 0x9d, 0x1b, 0xee, 0x67, + 0x14, 0xa5, 0xcb, 0x94, 0x10, 0xc2, 0x05, 0xd0, 0x42, 0x74, 0x0b, 0x45, + 0x4b, 0x7a, 0x84, 0x14, 0x70, 0xb7, 0xf9, 0x87, 0xf6, 0xaf, 0x8a, 0x68, + 0x0e, 0x91, 0xa3, 0xf2, 0xbd, 0x88, 0x11, 0x6c, 0x25, 0xd9, 0xe5, 0xec, + 0x8a, 0x78, 0xf2, 0xd1, 0x2a, 0x12, 0x89, 0xa0, 0x15, 0x74, 0xf2, 0xf7, + 0x51, 0x18, 0x1c, 0xd0, +}; +static const struct drbg_kat_pr_false kat1575_t = { + 14, kat1575_entropyin, kat1575_nonce, kat1575_persstr, + kat1575_entropyinreseed, kat1575_addinreseed, kat1575_addin0, + kat1575_addin1, kat1575_retbits +}; +static const struct drbg_kat kat1575 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1575_t +}; + +static const unsigned char kat1576_entropyin[] = { + 0x34, 0xd0, 0xf9, 0xf7, 0x14, 0xd1, 0x53, 0x9a, 0x29, 0x8b, 0x21, 0xd3, + 0xea, 0x18, 0x8d, 0x0e, +}; +static const unsigned char kat1576_nonce[] = { + 0xf2, 0xff, 0x4b, 0xd5, 0xf6, 0xcf, 0x78, 0x12, +}; +static const unsigned char kat1576_persstr[] = {0}; +static const unsigned char kat1576_entropyinreseed[] = { + 0xcd, 0x44, 0xf4, 0x1d, 0xc3, 0xfd, 0x07, 0xd8, 0x85, 0x00, 0xb4, 0x08, + 0x4a, 0x65, 0xa9, 0xa0, +}; +static const unsigned char kat1576_addinreseed[] = { + 0x19, 0xc3, 0xb7, 0x0b, 0xa9, 0x50, 0xac, 0x85, 0x35, 0xa4, 0xb5, 0x4e, + 0x11, 0x76, 0xe7, 0xe1, +}; +static const unsigned char kat1576_addin0[] = { + 0x23, 0x35, 0x69, 0x9d, 0x1e, 0x4d, 0xc4, 0xf7, 0x78, 0x13, 0x75, 0x75, + 0x0f, 0xd6, 0xdd, 0x86, +}; +static const unsigned char kat1576_addin1[] = { + 0x25, 0xa8, 0x4e, 0xe7, 0x46, 0x66, 0x5d, 0x8c, 0x50, 0xb0, 0xd6, 0x72, + 0x44, 0x5a, 0x9f, 0x04, +}; +static const unsigned char kat1576_retbits[] = { + 0x06, 0x40, 0x54, 0xac, 0x13, 0xc9, 0xda, 0xab, 0x59, 0x06, 0xb6, 0x48, + 0x31, 0x49, 0x79, 0x37, 0x60, 0x63, 0x50, 0x8b, 0xba, 0x87, 0x21, 0xff, + 0xf6, 0xfe, 0xdc, 0x45, 0x22, 0x19, 0x08, 0x1f, 0x6f, 0xe0, 0x3f, 0x7c, + 0xff, 0x48, 0xf6, 0xa5, 0x82, 0xdf, 0xe3, 0x3c, 0xa7, 0xe5, 0x76, 0x44, + 0xaf, 0x20, 0x88, 0xfd, 0x67, 0x74, 0xdf, 0xa5, 0x9c, 0xb9, 0x3c, 0x11, + 0x60, 0xed, 0xf8, 0xb3, +}; +static const struct drbg_kat_pr_false kat1576_t = { + 0, kat1576_entropyin, kat1576_nonce, kat1576_persstr, + kat1576_entropyinreseed, kat1576_addinreseed, kat1576_addin0, + kat1576_addin1, kat1576_retbits +}; +static const struct drbg_kat kat1576 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1576_t +}; + +static const unsigned char kat1577_entropyin[] = { + 0x97, 0x47, 0x59, 0x0c, 0xe4, 0x3b, 0x11, 0x8f, 0x68, 0x51, 0x2c, 0x8d, + 0xd6, 0x94, 0x5f, 0x2f, +}; +static const unsigned char kat1577_nonce[] = { + 0x57, 0x21, 0x36, 0xc8, 0x4f, 0x2b, 0x76, 0xf8, +}; +static const unsigned char kat1577_persstr[] = {0}; +static const unsigned char kat1577_entropyinreseed[] = { + 0x79, 0x18, 0x3d, 0x9f, 0x83, 0xbb, 0xf2, 0xe4, 0xdf, 0xa1, 0x1c, 0xc8, + 0xa4, 0xe5, 0x20, 0xd5, +}; +static const unsigned char kat1577_addinreseed[] = { + 0x07, 0x77, 0x48, 0xf5, 0x93, 0x51, 0x70, 0xc2, 0x4e, 0xe6, 0x4d, 0x53, + 0x05, 0x70, 0x14, 0x07, +}; +static const unsigned char kat1577_addin0[] = { + 0x55, 0xc3, 0x9d, 0xa1, 0x64, 0x97, 0xae, 0x1b, 0xaf, 0x68, 0x16, 0xe1, + 0x3f, 0x9e, 0xe2, 0x8a, +}; +static const unsigned char kat1577_addin1[] = { + 0x94, 0x95, 0x6b, 0xbe, 0x66, 0x19, 0x33, 0xd7, 0xc8, 0xf7, 0x02, 0x5d, + 0x75, 0x1b, 0x27, 0xb3, +}; +static const unsigned char kat1577_retbits[] = { + 0x7a, 0xaa, 0x55, 0xd5, 0x65, 0xfa, 0x40, 0x9a, 0xe9, 0x83, 0x12, 0xa6, + 0x5b, 0x8e, 0x6c, 0x46, 0x2f, 0x0b, 0xe0, 0xdb, 0x73, 0x9f, 0xe8, 0x62, + 0x90, 0xda, 0xc1, 0xb5, 0xe1, 0xb1, 0x92, 0x41, 0x44, 0x98, 0x80, 0x33, + 0xe8, 0x9e, 0x81, 0xbc, 0xc1, 0x2c, 0xda, 0x58, 0x6b, 0xf5, 0xc9, 0x54, + 0x7e, 0xe3, 0x2b, 0xd5, 0xcf, 0xce, 0x50, 0xdd, 0x21, 0x32, 0x95, 0xa4, + 0x7b, 0x2d, 0x54, 0xeb, +}; +static const struct drbg_kat_pr_false kat1577_t = { + 1, kat1577_entropyin, kat1577_nonce, kat1577_persstr, + kat1577_entropyinreseed, kat1577_addinreseed, kat1577_addin0, + kat1577_addin1, kat1577_retbits +}; +static const struct drbg_kat kat1577 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1577_t +}; + +static const unsigned char kat1578_entropyin[] = { + 0xa1, 0x8e, 0x30, 0x38, 0xd4, 0xbf, 0xb3, 0xfb, 0x19, 0x48, 0x34, 0xb6, + 0x5c, 0x3a, 0xf2, 0x80, +}; +static const unsigned char kat1578_nonce[] = { + 0x60, 0x42, 0xec, 0xe5, 0xc2, 0x16, 0xe0, 0xf3, +}; +static const unsigned char kat1578_persstr[] = {0}; +static const unsigned char kat1578_entropyinreseed[] = { + 0x39, 0xcd, 0x5e, 0xbc, 0x18, 0x3b, 0x7c, 0x85, 0x90, 0x8c, 0xba, 0xf4, + 0x5e, 0x1b, 0x17, 0x92, +}; +static const unsigned char kat1578_addinreseed[] = { + 0x1d, 0x78, 0x0d, 0x8e, 0x23, 0x06, 0x57, 0x70, 0xa6, 0xeb, 0xfc, 0x0c, + 0x11, 0xbd, 0xf8, 0xd1, +}; +static const unsigned char kat1578_addin0[] = { + 0x7b, 0xa2, 0x57, 0xad, 0x0b, 0x02, 0xb1, 0x56, 0xeb, 0xce, 0x64, 0x4e, + 0xc3, 0xb5, 0x90, 0xb5, +}; +static const unsigned char kat1578_addin1[] = { + 0xfa, 0x8c, 0xb5, 0xef, 0x31, 0x45, 0x0d, 0xae, 0xf8, 0x56, 0x0d, 0x48, + 0x4f, 0x9b, 0xd6, 0x38, +}; +static const unsigned char kat1578_retbits[] = { + 0x58, 0x56, 0x54, 0x5b, 0x1c, 0x44, 0x4e, 0x02, 0x03, 0x51, 0xed, 0x06, + 0x42, 0x0a, 0x41, 0x86, 0x89, 0x8b, 0xe0, 0x70, 0x90, 0x5d, 0x18, 0x2a, + 0x32, 0x29, 0x18, 0x8a, 0xfc, 0xa5, 0x5c, 0x24, 0x80, 0xb1, 0xf1, 0x2e, + 0x0a, 0xca, 0x0b, 0x68, 0x0c, 0x9c, 0x72, 0xc2, 0x00, 0x9c, 0xb3, 0xdc, + 0x0b, 0x9b, 0xe7, 0xd7, 0x24, 0xfc, 0xc9, 0xf2, 0x69, 0x37, 0xfc, 0x09, + 0xa5, 0xd7, 0x33, 0xd1, +}; +static const struct drbg_kat_pr_false kat1578_t = { + 2, kat1578_entropyin, kat1578_nonce, kat1578_persstr, + kat1578_entropyinreseed, kat1578_addinreseed, kat1578_addin0, + kat1578_addin1, kat1578_retbits +}; +static const struct drbg_kat kat1578 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1578_t +}; + +static const unsigned char kat1579_entropyin[] = { + 0xe1, 0x34, 0xcc, 0x13, 0x4a, 0x22, 0xb4, 0xd6, 0x22, 0xee, 0x6f, 0xb1, + 0xe8, 0x9a, 0x1c, 0x53, +}; +static const unsigned char kat1579_nonce[] = { + 0x14, 0x9f, 0x4e, 0xb0, 0x08, 0x00, 0x70, 0xd3, +}; +static const unsigned char kat1579_persstr[] = {0}; +static const unsigned char kat1579_entropyinreseed[] = { + 0x53, 0x36, 0x84, 0xbe, 0xcf, 0x30, 0xac, 0x8d, 0xef, 0x95, 0xb5, 0xe5, + 0x44, 0x99, 0x0c, 0x99, +}; +static const unsigned char kat1579_addinreseed[] = { + 0x1c, 0x61, 0xbc, 0x27, 0xf6, 0xd4, 0x5c, 0x7e, 0x06, 0x61, 0x37, 0x77, + 0xa6, 0xce, 0x14, 0x98, +}; +static const unsigned char kat1579_addin0[] = { + 0x65, 0xf6, 0x0c, 0xe8, 0xdf, 0xa6, 0xbc, 0xf8, 0x2f, 0x73, 0xf0, 0xa9, + 0x3f, 0xcf, 0x99, 0x11, +}; +static const unsigned char kat1579_addin1[] = { + 0xf2, 0xc1, 0xe2, 0xa1, 0xdb, 0xe9, 0xf1, 0x82, 0x8e, 0xc7, 0x73, 0x3c, + 0x18, 0xa1, 0x6b, 0xa5, +}; +static const unsigned char kat1579_retbits[] = { + 0x32, 0x2e, 0x86, 0x03, 0x79, 0xe6, 0x63, 0x84, 0xdf, 0x97, 0xf5, 0x21, + 0xeb, 0x6b, 0x8e, 0x85, 0x20, 0xb0, 0x37, 0x2e, 0x90, 0x89, 0x27, 0xe5, + 0x0e, 0x06, 0x07, 0x7e, 0x3b, 0xd3, 0x80, 0x51, 0x99, 0xfd, 0xd0, 0x5d, + 0x0b, 0x8a, 0xc6, 0x19, 0x82, 0xb1, 0x43, 0x21, 0x07, 0x86, 0x6e, 0x37, + 0xd4, 0x59, 0x6b, 0x42, 0xa3, 0x42, 0x15, 0x13, 0x63, 0x8a, 0x61, 0x96, + 0xe6, 0xa9, 0x2d, 0x61, +}; +static const struct drbg_kat_pr_false kat1579_t = { + 3, kat1579_entropyin, kat1579_nonce, kat1579_persstr, + kat1579_entropyinreseed, kat1579_addinreseed, kat1579_addin0, + kat1579_addin1, kat1579_retbits +}; +static const struct drbg_kat kat1579 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1579_t +}; + +static const unsigned char kat1580_entropyin[] = { + 0x32, 0x63, 0xfb, 0xac, 0x89, 0x3e, 0x72, 0xf1, 0x56, 0x04, 0x38, 0xda, + 0x0b, 0x4a, 0x9a, 0x34, +}; +static const unsigned char kat1580_nonce[] = { + 0x77, 0x70, 0xa4, 0x6c, 0x62, 0x71, 0x97, 0x59, +}; +static const unsigned char kat1580_persstr[] = {0}; +static const unsigned char kat1580_entropyinreseed[] = { + 0x5d, 0x36, 0x83, 0x22, 0x6f, 0x90, 0x4c, 0x8d, 0xba, 0x17, 0x59, 0x99, + 0x4b, 0xb8, 0x77, 0x60, +}; +static const unsigned char kat1580_addinreseed[] = { + 0xec, 0x8d, 0xd9, 0x2e, 0xec, 0xe7, 0xbc, 0x81, 0x0e, 0x4c, 0x7a, 0x6c, + 0x15, 0xf1, 0xe8, 0x04, +}; +static const unsigned char kat1580_addin0[] = { + 0x05, 0x1b, 0xd8, 0x3d, 0x0d, 0xe0, 0x52, 0x0b, 0xf9, 0x12, 0x55, 0x81, + 0x1e, 0x45, 0x4a, 0x43, +}; +static const unsigned char kat1580_addin1[] = { + 0x22, 0x84, 0x1d, 0xeb, 0x0d, 0x11, 0x78, 0x1d, 0xa5, 0x6f, 0xab, 0x8d, + 0x12, 0x2b, 0x39, 0x5c, +}; +static const unsigned char kat1580_retbits[] = { + 0x9e, 0x42, 0xab, 0xfa, 0x0c, 0x06, 0x2d, 0x8a, 0xd6, 0x94, 0x55, 0x0a, + 0x39, 0x5a, 0x7c, 0x36, 0x2f, 0x14, 0x91, 0xa2, 0xf4, 0x12, 0x9e, 0xe5, + 0xae, 0x5a, 0x17, 0xe3, 0x1d, 0xec, 0xa4, 0x12, 0xc8, 0x44, 0x46, 0x05, + 0xe9, 0x55, 0x90, 0x58, 0xdf, 0xde, 0xa5, 0xc4, 0x37, 0x65, 0x3d, 0x19, + 0x0c, 0x57, 0x19, 0x5b, 0x42, 0xd4, 0x4f, 0x1f, 0xd8, 0xfd, 0xaf, 0xa0, + 0xe8, 0xee, 0x40, 0x08, +}; +static const struct drbg_kat_pr_false kat1580_t = { + 4, kat1580_entropyin, kat1580_nonce, kat1580_persstr, + kat1580_entropyinreseed, kat1580_addinreseed, kat1580_addin0, + kat1580_addin1, kat1580_retbits +}; +static const struct drbg_kat kat1580 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1580_t +}; + +static const unsigned char kat1581_entropyin[] = { + 0xe6, 0x3e, 0xf8, 0xca, 0x16, 0x15, 0xf7, 0x3f, 0x0e, 0x0d, 0x35, 0xec, + 0xbe, 0x68, 0x1b, 0xdd, +}; +static const unsigned char kat1581_nonce[] = { + 0xe7, 0xf6, 0xc3, 0xf5, 0xac, 0x90, 0xff, 0xcf, +}; +static const unsigned char kat1581_persstr[] = {0}; +static const unsigned char kat1581_entropyinreseed[] = { + 0x7f, 0x89, 0x1c, 0x36, 0xf7, 0xe3, 0xf0, 0x13, 0xed, 0x05, 0x37, 0x9a, + 0xa9, 0x93, 0xb3, 0x81, +}; +static const unsigned char kat1581_addinreseed[] = { + 0xc9, 0x40, 0x45, 0xd4, 0x51, 0x4c, 0x74, 0x7a, 0x84, 0xe4, 0x1b, 0x06, + 0xa5, 0x55, 0xf8, 0x49, +}; +static const unsigned char kat1581_addin0[] = { + 0xae, 0xe6, 0x98, 0x06, 0xec, 0x57, 0xf6, 0x19, 0x33, 0xf6, 0x06, 0xc8, + 0xf1, 0x53, 0x92, 0x45, +}; +static const unsigned char kat1581_addin1[] = { + 0xa6, 0x7d, 0xc6, 0xb4, 0xee, 0x42, 0x7e, 0x0f, 0x6d, 0x2d, 0xa0, 0x66, + 0x3f, 0x0c, 0xe3, 0x82, +}; +static const unsigned char kat1581_retbits[] = { + 0x2a, 0x8c, 0x7c, 0xcc, 0x8c, 0x52, 0x42, 0xb1, 0x21, 0x4d, 0x19, 0x2e, + 0xc5, 0x02, 0x8d, 0xb9, 0xff, 0x42, 0xe7, 0x3a, 0x32, 0x11, 0x57, 0x1a, + 0x05, 0xe9, 0xb3, 0xd8, 0x79, 0x0a, 0x78, 0x7f, 0x2b, 0xcf, 0x80, 0x9b, + 0x8f, 0x02, 0xec, 0x8d, 0x3e, 0xd2, 0x1a, 0x57, 0x9e, 0x95, 0x5c, 0x42, + 0xfb, 0xdc, 0xf8, 0x58, 0x3e, 0xf6, 0x93, 0xbb, 0x7e, 0x00, 0x96, 0xb7, + 0xb9, 0x25, 0x1b, 0x2f, +}; +static const struct drbg_kat_pr_false kat1581_t = { + 5, kat1581_entropyin, kat1581_nonce, kat1581_persstr, + kat1581_entropyinreseed, kat1581_addinreseed, kat1581_addin0, + kat1581_addin1, kat1581_retbits +}; +static const struct drbg_kat kat1581 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1581_t +}; + +static const unsigned char kat1582_entropyin[] = { + 0x6d, 0x2c, 0x97, 0xd0, 0xc8, 0x88, 0xf4, 0x9c, 0x45, 0x53, 0x97, 0x53, + 0xe3, 0x8f, 0x4f, 0x93, +}; +static const unsigned char kat1582_nonce[] = { + 0x8d, 0x6a, 0x04, 0xaf, 0x07, 0xd2, 0x6f, 0x1e, +}; +static const unsigned char kat1582_persstr[] = {0}; +static const unsigned char kat1582_entropyinreseed[] = { + 0xf6, 0xd8, 0x0a, 0x65, 0xe2, 0xa4, 0x56, 0x9a, 0x9f, 0x64, 0x4f, 0x62, + 0x62, 0xae, 0x8b, 0xc3, +}; +static const unsigned char kat1582_addinreseed[] = { + 0xfd, 0x49, 0x1d, 0x4f, 0xee, 0xb2, 0x30, 0xda, 0x88, 0xf1, 0xc3, 0xb5, + 0x57, 0xef, 0x1d, 0xa0, +}; +static const unsigned char kat1582_addin0[] = { + 0x52, 0x26, 0x6b, 0x8c, 0x27, 0x9d, 0xbe, 0x61, 0x71, 0x84, 0x96, 0xc2, + 0x3f, 0x92, 0x62, 0xde, +}; +static const unsigned char kat1582_addin1[] = { + 0x0a, 0x2e, 0x54, 0x9d, 0x8d, 0x1b, 0x4f, 0x0f, 0x1a, 0x66, 0x3a, 0xfd, + 0xc5, 0x76, 0x28, 0x3a, +}; +static const unsigned char kat1582_retbits[] = { + 0x1f, 0x72, 0xb7, 0xdf, 0x97, 0xb3, 0x5d, 0x8d, 0xaf, 0x1e, 0x35, 0x96, + 0xe5, 0x8c, 0x72, 0x8d, 0xab, 0x6e, 0x72, 0x58, 0x56, 0x77, 0x41, 0x94, + 0x31, 0x85, 0xab, 0x7e, 0xdb, 0x0d, 0x41, 0xfc, 0x87, 0x77, 0x69, 0x83, + 0x4b, 0x3d, 0x01, 0xed, 0xf4, 0x69, 0x30, 0x18, 0xe5, 0x26, 0xab, 0x55, + 0xee, 0x12, 0x4f, 0xdc, 0x5d, 0xdf, 0x80, 0x58, 0x52, 0xd1, 0x44, 0x96, + 0x0d, 0x16, 0x66, 0xd9, +}; +static const struct drbg_kat_pr_false kat1582_t = { + 6, kat1582_entropyin, kat1582_nonce, kat1582_persstr, + kat1582_entropyinreseed, kat1582_addinreseed, kat1582_addin0, + kat1582_addin1, kat1582_retbits +}; +static const struct drbg_kat kat1582 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1582_t +}; + +static const unsigned char kat1583_entropyin[] = { + 0x17, 0x92, 0x1f, 0x57, 0xc0, 0xbf, 0x22, 0xa5, 0x13, 0xfd, 0xb0, 0x8d, + 0xe4, 0xfd, 0x67, 0x80, +}; +static const unsigned char kat1583_nonce[] = { + 0xa1, 0x89, 0x1a, 0x4e, 0x0a, 0xf5, 0x69, 0x4d, +}; +static const unsigned char kat1583_persstr[] = {0}; +static const unsigned char kat1583_entropyinreseed[] = { + 0xa4, 0x93, 0xc2, 0xae, 0x19, 0x6f, 0x9a, 0x2b, 0x66, 0x10, 0x9d, 0x95, + 0x8e, 0x8f, 0x9b, 0xe8, +}; +static const unsigned char kat1583_addinreseed[] = { + 0x31, 0x1c, 0x0e, 0x0f, 0xf4, 0x43, 0x3d, 0x40, 0x2a, 0x69, 0x95, 0x5b, + 0x54, 0xe8, 0xc1, 0xe0, +}; +static const unsigned char kat1583_addin0[] = { + 0xfb, 0x16, 0xe6, 0xed, 0x99, 0x53, 0x81, 0xcb, 0x9f, 0x93, 0xfb, 0x37, + 0x91, 0x23, 0xee, 0xcf, +}; +static const unsigned char kat1583_addin1[] = { + 0x80, 0x81, 0x7d, 0xce, 0x78, 0xd3, 0x0e, 0xef, 0xcb, 0xf1, 0xfb, 0xed, + 0x07, 0xc0, 0x8f, 0x2d, +}; +static const unsigned char kat1583_retbits[] = { + 0x9e, 0xe1, 0x1c, 0x5c, 0x7d, 0x77, 0xb9, 0xd3, 0xb0, 0x5c, 0xc8, 0x28, + 0x57, 0x2d, 0x3e, 0xdc, 0x79, 0x79, 0x1f, 0x30, 0x92, 0xb4, 0xcb, 0x6e, + 0xc0, 0x69, 0x07, 0xfa, 0xbd, 0x20, 0x2b, 0x67, 0x8c, 0xb4, 0x95, 0xe5, + 0x60, 0xc7, 0x50, 0xea, 0xb2, 0x8e, 0xc9, 0x1d, 0xec, 0x23, 0xbc, 0x46, + 0x21, 0xc3, 0x53, 0xdb, 0x91, 0xf0, 0xdf, 0xb1, 0xb9, 0x56, 0x14, 0xf2, + 0xf4, 0x1b, 0xff, 0xd5, +}; +static const struct drbg_kat_pr_false kat1583_t = { + 7, kat1583_entropyin, kat1583_nonce, kat1583_persstr, + kat1583_entropyinreseed, kat1583_addinreseed, kat1583_addin0, + kat1583_addin1, kat1583_retbits +}; +static const struct drbg_kat kat1583 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1583_t +}; + +static const unsigned char kat1584_entropyin[] = { + 0xd5, 0x0b, 0x76, 0x45, 0x7b, 0xdf, 0xc0, 0x71, 0xf7, 0x1f, 0xcd, 0x16, + 0x66, 0xd4, 0x47, 0xfb, +}; +static const unsigned char kat1584_nonce[] = { + 0x1c, 0x9a, 0xb7, 0x23, 0x74, 0x19, 0xb3, 0xae, +}; +static const unsigned char kat1584_persstr[] = {0}; +static const unsigned char kat1584_entropyinreseed[] = { + 0xb1, 0xe9, 0x4b, 0xc1, 0xdf, 0x60, 0xd5, 0x4f, 0x0e, 0xb2, 0x62, 0x93, + 0xbf, 0x17, 0x5a, 0xfd, +}; +static const unsigned char kat1584_addinreseed[] = { + 0xdf, 0x29, 0x3a, 0xe2, 0x85, 0xb9, 0xaf, 0x7a, 0x8e, 0x69, 0xff, 0x2f, + 0xcd, 0xfa, 0xc8, 0x5d, +}; +static const unsigned char kat1584_addin0[] = { + 0x0f, 0xac, 0xdb, 0x57, 0x41, 0x8e, 0x7a, 0x22, 0x8a, 0x7c, 0x56, 0x66, + 0x3d, 0xee, 0x72, 0xdc, +}; +static const unsigned char kat1584_addin1[] = { + 0x38, 0x31, 0xf9, 0x65, 0x96, 0x37, 0xfe, 0x2e, 0xce, 0x94, 0xf5, 0x24, + 0xa3, 0x8a, 0xe5, 0x76, +}; +static const unsigned char kat1584_retbits[] = { + 0x12, 0x96, 0x0a, 0x4d, 0x3f, 0x80, 0xdd, 0x22, 0x51, 0x02, 0x21, 0x53, + 0x52, 0x9d, 0x07, 0xf5, 0xe7, 0x2e, 0x15, 0x5f, 0x91, 0x2d, 0x9c, 0x42, + 0xc7, 0xc1, 0x34, 0x29, 0x57, 0x01, 0xe0, 0x25, 0x2e, 0x90, 0x30, 0x62, + 0x71, 0x8e, 0x08, 0x36, 0xb4, 0xbd, 0x4a, 0xf2, 0xc6, 0x5f, 0x45, 0xe6, + 0xc7, 0x36, 0x71, 0x0e, 0x5b, 0xaf, 0xb8, 0x42, 0x93, 0x6a, 0x23, 0x18, + 0x2e, 0x38, 0x88, 0xc4, +}; +static const struct drbg_kat_pr_false kat1584_t = { + 8, kat1584_entropyin, kat1584_nonce, kat1584_persstr, + kat1584_entropyinreseed, kat1584_addinreseed, kat1584_addin0, + kat1584_addin1, kat1584_retbits +}; +static const struct drbg_kat kat1584 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1584_t +}; + +static const unsigned char kat1585_entropyin[] = { + 0xaf, 0xdd, 0x79, 0xf7, 0x92, 0xe4, 0xbd, 0x30, 0x69, 0x4c, 0x4a, 0x04, + 0xdd, 0x9a, 0x28, 0xab, +}; +static const unsigned char kat1585_nonce[] = { + 0xeb, 0x33, 0x6d, 0x7a, 0x66, 0xa6, 0xf2, 0x9d, +}; +static const unsigned char kat1585_persstr[] = {0}; +static const unsigned char kat1585_entropyinreseed[] = { + 0xb8, 0xfd, 0x1f, 0xca, 0x74, 0x7e, 0x54, 0x09, 0x29, 0xd8, 0x80, 0x0a, + 0x33, 0x5d, 0x5c, 0x8f, +}; +static const unsigned char kat1585_addinreseed[] = { + 0x41, 0x8e, 0xdd, 0x80, 0xf3, 0x44, 0xbd, 0x88, 0x55, 0x6a, 0x4d, 0x90, + 0x1e, 0x62, 0x91, 0xb9, +}; +static const unsigned char kat1585_addin0[] = { + 0xcd, 0x16, 0x37, 0x51, 0x7c, 0xe6, 0x2f, 0xfb, 0xc5, 0x96, 0x98, 0xc8, + 0x81, 0x80, 0x69, 0x42, +}; +static const unsigned char kat1585_addin1[] = { + 0x12, 0xa4, 0xe4, 0x7e, 0x67, 0x27, 0xb0, 0x4a, 0xa9, 0x0a, 0xb4, 0x3e, + 0x39, 0xdc, 0xc3, 0x22, +}; +static const unsigned char kat1585_retbits[] = { + 0x25, 0xf7, 0x97, 0x2e, 0x9e, 0xf3, 0x40, 0xb1, 0x6f, 0x32, 0x98, 0x5e, + 0xf5, 0x09, 0x22, 0xab, 0x4b, 0x59, 0x60, 0x34, 0xb8, 0xae, 0xed, 0x3d, + 0xd6, 0x9a, 0xae, 0xeb, 0x98, 0xbb, 0xdd, 0x57, 0xa6, 0x02, 0xbc, 0xfb, + 0x42, 0xe0, 0x3a, 0x42, 0xb0, 0x0c, 0x9b, 0xe2, 0x87, 0x79, 0x64, 0xa0, + 0x6f, 0xe3, 0x1d, 0x36, 0x8f, 0x91, 0x1b, 0xcc, 0x97, 0x53, 0xbc, 0x3c, + 0xea, 0x05, 0x9d, 0xbe, +}; +static const struct drbg_kat_pr_false kat1585_t = { + 9, kat1585_entropyin, kat1585_nonce, kat1585_persstr, + kat1585_entropyinreseed, kat1585_addinreseed, kat1585_addin0, + kat1585_addin1, kat1585_retbits +}; +static const struct drbg_kat kat1585 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1585_t +}; + +static const unsigned char kat1586_entropyin[] = { + 0x2c, 0x11, 0x11, 0xf8, 0x55, 0x11, 0x5b, 0xa3, 0x5d, 0x49, 0xe6, 0x66, + 0xfc, 0x52, 0x8e, 0x56, +}; +static const unsigned char kat1586_nonce[] = { + 0x42, 0x96, 0xbd, 0xfe, 0x67, 0xde, 0x26, 0x01, +}; +static const unsigned char kat1586_persstr[] = {0}; +static const unsigned char kat1586_entropyinreseed[] = { + 0x85, 0x59, 0x62, 0x34, 0xf2, 0xb8, 0xd9, 0x87, 0x3a, 0xc2, 0x97, 0x44, + 0xaf, 0x1f, 0xa2, 0x1e, +}; +static const unsigned char kat1586_addinreseed[] = { + 0x5e, 0xc1, 0x2e, 0x10, 0x2e, 0xe5, 0x92, 0x98, 0xf6, 0x46, 0x6c, 0xd6, + 0xb9, 0x31, 0xad, 0x5f, +}; +static const unsigned char kat1586_addin0[] = { + 0x68, 0x1d, 0x63, 0xd5, 0x68, 0x93, 0xc0, 0xc8, 0x5b, 0x4c, 0x5b, 0x08, + 0x1b, 0x6b, 0x46, 0xad, +}; +static const unsigned char kat1586_addin1[] = { + 0x81, 0x7d, 0x54, 0xb8, 0xd6, 0xda, 0xa6, 0xe0, 0xf8, 0xf1, 0xc7, 0x01, + 0x8d, 0x7e, 0x18, 0x10, +}; +static const unsigned char kat1586_retbits[] = { + 0x09, 0x57, 0xd1, 0xa1, 0x0e, 0x59, 0x75, 0x8c, 0xd6, 0xa0, 0xc5, 0x07, + 0x50, 0x56, 0x17, 0xfc, 0xa5, 0x52, 0x03, 0x96, 0xd4, 0x34, 0x91, 0xe4, + 0xf0, 0xb9, 0x81, 0xf0, 0x23, 0xaf, 0x5e, 0x09, 0x80, 0x53, 0x04, 0xe8, + 0x87, 0xd7, 0x0a, 0x9f, 0x29, 0xbd, 0xa1, 0x5b, 0xff, 0x72, 0x5b, 0xff, + 0x3e, 0x54, 0xef, 0xca, 0xa4, 0x59, 0x63, 0x42, 0xde, 0xf1, 0x7d, 0xd9, + 0x1c, 0xcb, 0x50, 0x68, +}; +static const struct drbg_kat_pr_false kat1586_t = { + 10, kat1586_entropyin, kat1586_nonce, kat1586_persstr, + kat1586_entropyinreseed, kat1586_addinreseed, kat1586_addin0, + kat1586_addin1, kat1586_retbits +}; +static const struct drbg_kat kat1586 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1586_t +}; + +static const unsigned char kat1587_entropyin[] = { + 0xe8, 0x4c, 0x46, 0x6a, 0x54, 0x1d, 0xea, 0x2d, 0x42, 0x53, 0x36, 0x86, + 0x01, 0x1d, 0x8f, 0xea, +}; +static const unsigned char kat1587_nonce[] = { + 0xb6, 0x87, 0x15, 0x68, 0xd8, 0x83, 0x9e, 0xc5, +}; +static const unsigned char kat1587_persstr[] = {0}; +static const unsigned char kat1587_entropyinreseed[] = { + 0x73, 0x12, 0xed, 0xfa, 0x7a, 0xd5, 0x56, 0xf9, 0x44, 0x00, 0x38, 0x24, + 0x4a, 0x98, 0x4b, 0xf3, +}; +static const unsigned char kat1587_addinreseed[] = { + 0xb5, 0x13, 0x1e, 0xc3, 0x46, 0xe9, 0x70, 0xf2, 0xfe, 0x24, 0x8c, 0xc9, + 0xbb, 0x41, 0xc6, 0x64, +}; +static const unsigned char kat1587_addin0[] = { + 0xf1, 0x80, 0x30, 0x95, 0xa6, 0xe9, 0xe6, 0x29, 0x69, 0xd4, 0x40, 0x29, + 0x42, 0x05, 0x64, 0x73, +}; +static const unsigned char kat1587_addin1[] = { + 0x10, 0xa7, 0xea, 0x90, 0xea, 0x7b, 0x69, 0x75, 0xf0, 0x8a, 0x8d, 0xee, + 0xce, 0xca, 0xa4, 0xf8, +}; +static const unsigned char kat1587_retbits[] = { + 0x15, 0x8a, 0xed, 0xc7, 0x1d, 0xa0, 0x30, 0x4e, 0x1d, 0xfa, 0x23, 0x8d, + 0x30, 0x6f, 0xcc, 0x8b, 0xd7, 0xa7, 0x78, 0x02, 0x74, 0x9d, 0xc9, 0x28, + 0x26, 0x58, 0xfd, 0x9e, 0xed, 0xd5, 0x3f, 0x40, 0xd8, 0x26, 0x3f, 0x34, + 0xd0, 0x89, 0x78, 0x42, 0x67, 0x43, 0x49, 0x12, 0xc7, 0xe6, 0x34, 0xff, + 0xbc, 0x97, 0x90, 0x87, 0x00, 0xce, 0x2b, 0x59, 0x9f, 0x9b, 0x20, 0x0c, + 0x36, 0xad, 0x49, 0xa5, +}; +static const struct drbg_kat_pr_false kat1587_t = { + 11, kat1587_entropyin, kat1587_nonce, kat1587_persstr, + kat1587_entropyinreseed, kat1587_addinreseed, kat1587_addin0, + kat1587_addin1, kat1587_retbits +}; +static const struct drbg_kat kat1587 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1587_t +}; + +static const unsigned char kat1588_entropyin[] = { + 0xd3, 0x32, 0xc0, 0x65, 0x15, 0xe3, 0x66, 0x0a, 0x25, 0xe6, 0x9f, 0xad, + 0x54, 0xe5, 0x83, 0x7c, +}; +static const unsigned char kat1588_nonce[] = { + 0xca, 0x60, 0xe6, 0x71, 0x89, 0x36, 0xfb, 0xd7, +}; +static const unsigned char kat1588_persstr[] = {0}; +static const unsigned char kat1588_entropyinreseed[] = { + 0x50, 0xdc, 0x6d, 0xd9, 0x64, 0x4d, 0x79, 0xd2, 0x8f, 0x05, 0xba, 0xa9, + 0xe2, 0xae, 0x77, 0x2d, +}; +static const unsigned char kat1588_addinreseed[] = { + 0x7a, 0x48, 0xdd, 0x5e, 0xba, 0x3a, 0x69, 0x89, 0x9d, 0x32, 0x53, 0x79, + 0x78, 0x02, 0x43, 0x2f, +}; +static const unsigned char kat1588_addin0[] = { + 0xa5, 0x0c, 0xcb, 0x58, 0x12, 0x3b, 0x0c, 0x37, 0xfa, 0x54, 0x3d, 0x8a, + 0xe5, 0x23, 0xe8, 0xed, +}; +static const unsigned char kat1588_addin1[] = { + 0xce, 0x9e, 0x86, 0x08, 0x90, 0xeb, 0x6b, 0xcd, 0x91, 0xd9, 0x73, 0x3c, + 0xdc, 0xf9, 0x6e, 0x10, +}; +static const unsigned char kat1588_retbits[] = { + 0x06, 0x06, 0x26, 0x49, 0x9e, 0x14, 0x43, 0x85, 0x76, 0xd7, 0x62, 0x1d, + 0x71, 0xf0, 0x1e, 0x4b, 0xe8, 0x74, 0xa9, 0x55, 0x33, 0x0b, 0x0d, 0x5d, + 0x6f, 0xef, 0x37, 0x94, 0xee, 0xb7, 0x61, 0xb4, 0xd1, 0x1a, 0x88, 0xd1, + 0xce, 0x09, 0x94, 0x2e, 0x24, 0x4f, 0xde, 0x57, 0x6d, 0x7e, 0x96, 0x45, + 0x85, 0x42, 0x3d, 0x65, 0x84, 0x72, 0x6e, 0xb7, 0x98, 0xf3, 0x57, 0x72, + 0xca, 0xea, 0x1d, 0xf6, +}; +static const struct drbg_kat_pr_false kat1588_t = { + 12, kat1588_entropyin, kat1588_nonce, kat1588_persstr, + kat1588_entropyinreseed, kat1588_addinreseed, kat1588_addin0, + kat1588_addin1, kat1588_retbits +}; +static const struct drbg_kat kat1588 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1588_t +}; + +static const unsigned char kat1589_entropyin[] = { + 0x47, 0x5e, 0x49, 0x05, 0xd8, 0xc9, 0x68, 0xd8, 0x64, 0x37, 0x45, 0x3f, + 0x58, 0x88, 0x66, 0x93, +}; +static const unsigned char kat1589_nonce[] = { + 0x4a, 0x93, 0x66, 0xba, 0x7f, 0xe4, 0x10, 0x8e, +}; +static const unsigned char kat1589_persstr[] = {0}; +static const unsigned char kat1589_entropyinreseed[] = { + 0xf0, 0x0f, 0x3c, 0x00, 0xe3, 0x22, 0xb4, 0xa4, 0x38, 0x8d, 0x4b, 0x5c, + 0x81, 0xa7, 0x46, 0xb6, +}; +static const unsigned char kat1589_addinreseed[] = { + 0x8b, 0xae, 0x1a, 0x96, 0xca, 0x83, 0x9d, 0x48, 0xda, 0x80, 0xd2, 0xfd, + 0x65, 0x6d, 0x70, 0x80, +}; +static const unsigned char kat1589_addin0[] = { + 0x24, 0xef, 0x11, 0x25, 0x11, 0xb6, 0xfb, 0x0b, 0x0c, 0xe5, 0x69, 0xb6, + 0x42, 0xda, 0x3e, 0x41, +}; +static const unsigned char kat1589_addin1[] = { + 0xbf, 0x74, 0x39, 0x94, 0xd4, 0x9f, 0x01, 0x43, 0x5d, 0x3f, 0x65, 0x05, + 0xe4, 0x10, 0x8c, 0x06, +}; +static const unsigned char kat1589_retbits[] = { + 0x57, 0x98, 0x05, 0xd6, 0x4a, 0x46, 0x71, 0x44, 0x43, 0x42, 0x32, 0x92, + 0x14, 0x2e, 0x39, 0x04, 0x94, 0xd8, 0xec, 0x9f, 0x42, 0xa6, 0x5a, 0x48, + 0x11, 0x29, 0xf6, 0x54, 0x8a, 0x0b, 0xbd, 0x3d, 0xb2, 0x4b, 0x90, 0x2e, + 0x48, 0xc0, 0xd4, 0x97, 0x70, 0x27, 0x53, 0x8a, 0xb7, 0x54, 0x47, 0xe7, + 0x11, 0x53, 0x80, 0xfc, 0x45, 0x3d, 0x25, 0x25, 0x0a, 0x8c, 0x97, 0xda, + 0x5d, 0x0c, 0x86, 0xfb, +}; +static const struct drbg_kat_pr_false kat1589_t = { + 13, kat1589_entropyin, kat1589_nonce, kat1589_persstr, + kat1589_entropyinreseed, kat1589_addinreseed, kat1589_addin0, + kat1589_addin1, kat1589_retbits +}; +static const struct drbg_kat kat1589 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1589_t +}; + +static const unsigned char kat1590_entropyin[] = { + 0xc0, 0xe1, 0x8b, 0x81, 0x10, 0xf4, 0x92, 0xc5, 0x2e, 0xa1, 0x3a, 0x86, + 0x79, 0x9b, 0x5b, 0x23, +}; +static const unsigned char kat1590_nonce[] = { + 0x8c, 0x8d, 0x05, 0x21, 0xb4, 0x3e, 0x17, 0xf4, +}; +static const unsigned char kat1590_persstr[] = {0}; +static const unsigned char kat1590_entropyinreseed[] = { + 0x1c, 0x6d, 0x2c, 0x89, 0x90, 0x74, 0xc7, 0x6e, 0x08, 0xed, 0xc7, 0xbf, + 0xd8, 0xb8, 0xed, 0x06, +}; +static const unsigned char kat1590_addinreseed[] = { + 0x0c, 0xc1, 0xfc, 0xcd, 0x3b, 0x6c, 0x0d, 0x9a, 0xeb, 0x4a, 0xda, 0x6f, + 0x40, 0x00, 0x96, 0x03, +}; +static const unsigned char kat1590_addin0[] = { + 0xee, 0x07, 0x99, 0x55, 0x88, 0x6e, 0x85, 0xe7, 0xcb, 0x9d, 0x76, 0xb5, + 0xdd, 0xc4, 0x0c, 0x14, +}; +static const unsigned char kat1590_addin1[] = { + 0xb0, 0xc1, 0x05, 0x48, 0xfe, 0x95, 0x4e, 0x2d, 0x78, 0x89, 0x33, 0xcc, + 0xb3, 0x5f, 0x56, 0x1b, +}; +static const unsigned char kat1590_retbits[] = { + 0x92, 0x67, 0xed, 0x60, 0x5e, 0x90, 0xe1, 0x5a, 0x37, 0x03, 0xf1, 0x51, + 0x7d, 0xaa, 0x7c, 0xda, 0xa0, 0x3c, 0xfd, 0x8f, 0x0d, 0x96, 0xc5, 0x69, + 0xdd, 0xea, 0x42, 0x9c, 0xf8, 0x26, 0xb3, 0x9f, 0xa9, 0x7c, 0xdb, 0x81, + 0x03, 0xce, 0x59, 0x0c, 0x5e, 0x91, 0xb6, 0xa8, 0xd6, 0xbd, 0x93, 0x63, + 0x77, 0x58, 0xb5, 0x3b, 0xcf, 0x0f, 0xc6, 0xa0, 0xb4, 0x76, 0x24, 0x5f, + 0x94, 0xb5, 0x95, 0x4e, +}; +static const struct drbg_kat_pr_false kat1590_t = { + 14, kat1590_entropyin, kat1590_nonce, kat1590_persstr, + kat1590_entropyinreseed, kat1590_addinreseed, kat1590_addin0, + kat1590_addin1, kat1590_retbits +}; +static const struct drbg_kat kat1590 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1590_t +}; + +static const unsigned char kat1591_entropyin[] = { + 0xae, 0x5a, 0x2f, 0x97, 0x26, 0xea, 0x95, 0x3e, 0x4e, 0xc0, 0x57, 0xc4, + 0xc9, 0x6d, 0xdd, 0x83, +}; +static const unsigned char kat1591_nonce[] = { + 0x7f, 0xe8, 0x15, 0xf7, 0x35, 0x25, 0x3b, 0xf2, +}; +static const unsigned char kat1591_persstr[] = { + 0xd4, 0x91, 0x4e, 0x88, 0x70, 0xc2, 0x98, 0x36, 0x5c, 0x8c, 0x5d, 0xf2, + 0x16, 0xd2, 0x59, 0xf3, +}; +static const unsigned char kat1591_entropyinreseed[] = { + 0x2c, 0xf2, 0xfa, 0xd8, 0xc5, 0x9c, 0x50, 0x50, 0x86, 0x08, 0x55, 0x55, + 0x49, 0xcd, 0x61, 0x1e, +}; +static const unsigned char kat1591_addinreseed[] = {0}; +static const unsigned char kat1591_addin0[] = {0}; +static const unsigned char kat1591_addin1[] = {0}; +static const unsigned char kat1591_retbits[] = { + 0xf9, 0x12, 0x0e, 0xaa, 0x71, 0xe3, 0xd8, 0x54, 0x33, 0x33, 0xcb, 0xd0, + 0xa8, 0x3b, 0x46, 0xec, 0x86, 0xa2, 0x22, 0x00, 0x87, 0x86, 0x16, 0x10, + 0x6c, 0x86, 0x6e, 0x13, 0xa8, 0xcb, 0xd6, 0x46, 0x91, 0x5a, 0xd8, 0x1c, + 0x7a, 0x11, 0xae, 0xd8, 0x39, 0x6a, 0x25, 0xf9, 0x8b, 0x32, 0x4b, 0x53, + 0x52, 0xea, 0xff, 0xd5, 0x01, 0xfd, 0xc9, 0x92, 0x0b, 0x53, 0x53, 0x59, + 0x0e, 0xb0, 0x40, 0x9f, +}; +static const struct drbg_kat_pr_false kat1591_t = { + 0, kat1591_entropyin, kat1591_nonce, kat1591_persstr, + kat1591_entropyinreseed, kat1591_addinreseed, kat1591_addin0, + kat1591_addin1, kat1591_retbits +}; +static const struct drbg_kat kat1591 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1591_t +}; + +static const unsigned char kat1592_entropyin[] = { + 0x95, 0xee, 0x91, 0x7d, 0x26, 0x61, 0x31, 0xbf, 0xd6, 0x90, 0xce, 0xde, + 0x3e, 0x20, 0xfe, 0x6e, +}; +static const unsigned char kat1592_nonce[] = { + 0x37, 0x68, 0xc2, 0x91, 0x57, 0xe4, 0x19, 0x2e, +}; +static const unsigned char kat1592_persstr[] = { + 0x0f, 0x89, 0x37, 0x5d, 0xa6, 0xb2, 0xf7, 0xaa, 0x5e, 0x8e, 0x86, 0xc9, + 0x8e, 0x09, 0x28, 0x89, +}; +static const unsigned char kat1592_entropyinreseed[] = { + 0x78, 0xe5, 0x9c, 0x9b, 0x60, 0x28, 0x2f, 0xe5, 0x51, 0x08, 0xeb, 0x89, + 0x6c, 0x16, 0x27, 0xf4, +}; +static const unsigned char kat1592_addinreseed[] = {0}; +static const unsigned char kat1592_addin0[] = {0}; +static const unsigned char kat1592_addin1[] = {0}; +static const unsigned char kat1592_retbits[] = { + 0x21, 0xf4, 0x5f, 0x0f, 0x87, 0x95, 0x53, 0x85, 0xb3, 0xa6, 0x04, 0xf8, + 0x7f, 0x7a, 0x77, 0x0f, 0xdc, 0x4e, 0x4c, 0x2d, 0x6c, 0xcb, 0x7c, 0xf5, + 0x34, 0x87, 0xd9, 0x9c, 0x9e, 0x11, 0xbc, 0xfd, 0x88, 0x6f, 0x22, 0x23, + 0x45, 0x17, 0x77, 0x08, 0x0f, 0xe4, 0x9e, 0x3b, 0x8a, 0x40, 0x59, 0xa8, + 0x3c, 0x54, 0x66, 0x10, 0x10, 0x7c, 0x9a, 0xa9, 0xa1, 0x51, 0x52, 0x2c, + 0x72, 0x19, 0x63, 0x4a, +}; +static const struct drbg_kat_pr_false kat1592_t = { + 1, kat1592_entropyin, kat1592_nonce, kat1592_persstr, + kat1592_entropyinreseed, kat1592_addinreseed, kat1592_addin0, + kat1592_addin1, kat1592_retbits +}; +static const struct drbg_kat kat1592 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1592_t +}; + +static const unsigned char kat1593_entropyin[] = { + 0x24, 0x4b, 0x4a, 0xac, 0xc4, 0x03, 0xb0, 0x8f, 0x4f, 0xd8, 0x0d, 0xd6, + 0x55, 0xd2, 0x63, 0x9d, +}; +static const unsigned char kat1593_nonce[] = { + 0x41, 0x63, 0x9d, 0x03, 0x15, 0x11, 0x3f, 0xa6, +}; +static const unsigned char kat1593_persstr[] = { + 0xac, 0x58, 0x7a, 0x5c, 0x8d, 0xd7, 0x0b, 0x82, 0x38, 0xbb, 0x8a, 0xc6, + 0x73, 0xef, 0x8c, 0xbc, +}; +static const unsigned char kat1593_entropyinreseed[] = { + 0xa4, 0xbb, 0x89, 0xbd, 0x6b, 0xe8, 0x58, 0xc9, 0x28, 0x90, 0x53, 0xa2, + 0x45, 0xc4, 0x7c, 0xa1, +}; +static const unsigned char kat1593_addinreseed[] = {0}; +static const unsigned char kat1593_addin0[] = {0}; +static const unsigned char kat1593_addin1[] = {0}; +static const unsigned char kat1593_retbits[] = { + 0x90, 0xb5, 0x99, 0x89, 0x32, 0x5f, 0x3e, 0x7f, 0xda, 0x22, 0x5c, 0x21, + 0x89, 0xcf, 0x7f, 0x6c, 0xd4, 0xa4, 0xc4, 0x34, 0x86, 0xb4, 0x2b, 0xb7, + 0xaf, 0x90, 0xf6, 0xf2, 0xb1, 0x5f, 0x9d, 0xe5, 0x4a, 0x3f, 0xb4, 0xe1, + 0xc8, 0x4b, 0x76, 0x24, 0x91, 0x53, 0xcb, 0x6f, 0x6e, 0x2a, 0xad, 0x8d, + 0xed, 0xfd, 0x17, 0xb9, 0x02, 0x52, 0x22, 0x85, 0x59, 0xec, 0xc8, 0xa7, + 0xd7, 0x18, 0xde, 0xc4, +}; +static const struct drbg_kat_pr_false kat1593_t = { + 2, kat1593_entropyin, kat1593_nonce, kat1593_persstr, + kat1593_entropyinreseed, kat1593_addinreseed, kat1593_addin0, + kat1593_addin1, kat1593_retbits +}; +static const struct drbg_kat kat1593 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1593_t +}; + +static const unsigned char kat1594_entropyin[] = { + 0x6e, 0xc8, 0x2c, 0x6c, 0x91, 0x3e, 0x33, 0xa1, 0x17, 0x56, 0xee, 0xf8, + 0x44, 0x57, 0xb7, 0x66, +}; +static const unsigned char kat1594_nonce[] = { + 0x17, 0x74, 0xb2, 0x7c, 0xd4, 0xc3, 0x37, 0x84, +}; +static const unsigned char kat1594_persstr[] = { + 0x80, 0x8c, 0x58, 0xbc, 0xfe, 0xcd, 0x08, 0x26, 0xb2, 0x95, 0xf4, 0x01, + 0x08, 0xba, 0x20, 0xd4, +}; +static const unsigned char kat1594_entropyinreseed[] = { + 0xf8, 0xcb, 0x5b, 0xf5, 0xe6, 0x8c, 0xcd, 0xc4, 0x34, 0x88, 0xf2, 0x57, + 0x8b, 0xb4, 0xa5, 0xf0, +}; +static const unsigned char kat1594_addinreseed[] = {0}; +static const unsigned char kat1594_addin0[] = {0}; +static const unsigned char kat1594_addin1[] = {0}; +static const unsigned char kat1594_retbits[] = { + 0x11, 0xe8, 0xe8, 0x16, 0x05, 0x3b, 0xc0, 0x66, 0xbe, 0x8e, 0x97, 0x06, + 0xd3, 0xf9, 0x37, 0xcb, 0xf9, 0x8e, 0x50, 0xec, 0xa8, 0x05, 0x64, 0x61, + 0x38, 0xb4, 0x1f, 0xa6, 0xa6, 0xd4, 0xa3, 0x58, 0x07, 0x7f, 0xb7, 0x94, + 0xa6, 0x9f, 0xdf, 0xad, 0xdd, 0x75, 0xc4, 0xbb, 0xb5, 0xe6, 0xf7, 0x1d, + 0x7c, 0x5e, 0x8c, 0xb0, 0x88, 0xbb, 0x25, 0x16, 0x2e, 0x25, 0xea, 0xca, + 0xaa, 0x1c, 0x4d, 0x1c, +}; +static const struct drbg_kat_pr_false kat1594_t = { + 3, kat1594_entropyin, kat1594_nonce, kat1594_persstr, + kat1594_entropyinreseed, kat1594_addinreseed, kat1594_addin0, + kat1594_addin1, kat1594_retbits +}; +static const struct drbg_kat kat1594 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1594_t +}; + +static const unsigned char kat1595_entropyin[] = { + 0xe3, 0xf0, 0x25, 0x98, 0x4f, 0xa7, 0xc8, 0x78, 0xc0, 0xd1, 0xf9, 0x72, + 0x15, 0xab, 0xe4, 0x74, +}; +static const unsigned char kat1595_nonce[] = { + 0x33, 0xcc, 0xc2, 0xed, 0x46, 0x6c, 0x1e, 0x7b, +}; +static const unsigned char kat1595_persstr[] = { + 0x37, 0x30, 0x78, 0x36, 0xb1, 0x53, 0x55, 0x44, 0x7a, 0x63, 0x5f, 0x28, + 0xcc, 0xe0, 0x38, 0x88, +}; +static const unsigned char kat1595_entropyinreseed[] = { + 0x33, 0x46, 0xd3, 0x89, 0x74, 0x29, 0x20, 0xc8, 0x1e, 0xc7, 0xc9, 0x31, + 0x9f, 0x45, 0x7f, 0x85, +}; +static const unsigned char kat1595_addinreseed[] = {0}; +static const unsigned char kat1595_addin0[] = {0}; +static const unsigned char kat1595_addin1[] = {0}; +static const unsigned char kat1595_retbits[] = { + 0xb1, 0xc9, 0x19, 0x52, 0xea, 0xcb, 0x72, 0xb4, 0xf7, 0x3b, 0x96, 0x0c, + 0xe4, 0xf2, 0x28, 0xd1, 0x8e, 0xd3, 0xcb, 0x22, 0xe4, 0xa8, 0x70, 0x72, + 0xf8, 0x9c, 0xb8, 0x65, 0xad, 0xbf, 0x4d, 0x38, 0xe3, 0xd8, 0xa0, 0x9d, + 0x1c, 0x1b, 0xb3, 0xc7, 0x1d, 0x9e, 0x63, 0xd7, 0xcd, 0x59, 0xc2, 0x54, + 0x41, 0x86, 0xb8, 0x6e, 0xaf, 0x79, 0xfa, 0x16, 0x51, 0x44, 0xad, 0x9c, + 0x39, 0x09, 0x32, 0x1a, +}; +static const struct drbg_kat_pr_false kat1595_t = { + 4, kat1595_entropyin, kat1595_nonce, kat1595_persstr, + kat1595_entropyinreseed, kat1595_addinreseed, kat1595_addin0, + kat1595_addin1, kat1595_retbits +}; +static const struct drbg_kat kat1595 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1595_t +}; + +static const unsigned char kat1596_entropyin[] = { + 0x8f, 0xf3, 0x5a, 0x1a, 0xc0, 0x80, 0xdf, 0xf9, 0x7d, 0xed, 0x22, 0x16, + 0x21, 0x16, 0x6a, 0x86, +}; +static const unsigned char kat1596_nonce[] = { + 0xf7, 0x8a, 0xad, 0x37, 0x93, 0x9c, 0x78, 0x8c, +}; +static const unsigned char kat1596_persstr[] = { + 0xfb, 0xc5, 0xb6, 0x1a, 0x7c, 0x04, 0x85, 0x1f, 0x06, 0x90, 0xec, 0x4c, + 0xc8, 0x70, 0x27, 0x57, +}; +static const unsigned char kat1596_entropyinreseed[] = { + 0xe2, 0x51, 0xfd, 0x54, 0xe0, 0xe6, 0x66, 0x60, 0xd5, 0xea, 0x10, 0xa7, + 0xed, 0xd2, 0x20, 0x29, +}; +static const unsigned char kat1596_addinreseed[] = {0}; +static const unsigned char kat1596_addin0[] = {0}; +static const unsigned char kat1596_addin1[] = {0}; +static const unsigned char kat1596_retbits[] = { + 0xd4, 0xd3, 0x13, 0x90, 0x7b, 0x08, 0x29, 0x3c, 0x1a, 0x03, 0xcd, 0x3d, + 0x9a, 0x63, 0x19, 0x2f, 0x44, 0x67, 0x7d, 0x37, 0x0c, 0xe3, 0x20, 0x50, + 0x1b, 0x5f, 0xaf, 0x2c, 0xd6, 0x6f, 0xa8, 0xfa, 0x4f, 0xd1, 0xdd, 0x3f, + 0x34, 0x03, 0x26, 0xa9, 0x9b, 0x8b, 0x5e, 0x5b, 0x02, 0xa6, 0x36, 0xee, + 0xb0, 0x4f, 0xbb, 0x0f, 0x31, 0xf1, 0x93, 0xbe, 0x24, 0x34, 0x2e, 0x6f, + 0xaa, 0x3b, 0xc2, 0x33, +}; +static const struct drbg_kat_pr_false kat1596_t = { + 5, kat1596_entropyin, kat1596_nonce, kat1596_persstr, + kat1596_entropyinreseed, kat1596_addinreseed, kat1596_addin0, + kat1596_addin1, kat1596_retbits +}; +static const struct drbg_kat kat1596 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1596_t +}; + +static const unsigned char kat1597_entropyin[] = { + 0x8d, 0xff, 0x98, 0x53, 0xcc, 0xa3, 0x15, 0xff, 0x7e, 0x45, 0xa1, 0x3b, + 0x1d, 0xc2, 0x00, 0x95, +}; +static const unsigned char kat1597_nonce[] = { + 0x7e, 0x16, 0x07, 0x80, 0xd6, 0x97, 0x25, 0x5b, +}; +static const unsigned char kat1597_persstr[] = { + 0x62, 0x80, 0x55, 0xef, 0x3a, 0x08, 0x49, 0x67, 0xaa, 0x28, 0x7f, 0x62, + 0x6d, 0x0d, 0x8c, 0xaa, +}; +static const unsigned char kat1597_entropyinreseed[] = { + 0x8a, 0xd8, 0xeb, 0x28, 0xce, 0x1b, 0xad, 0x08, 0xf4, 0xa2, 0x4f, 0x3b, + 0x65, 0x3e, 0x45, 0x5e, +}; +static const unsigned char kat1597_addinreseed[] = {0}; +static const unsigned char kat1597_addin0[] = {0}; +static const unsigned char kat1597_addin1[] = {0}; +static const unsigned char kat1597_retbits[] = { + 0xd6, 0x57, 0x78, 0x08, 0x4c, 0xa5, 0x05, 0x56, 0x13, 0x55, 0xb8, 0xc3, + 0xc8, 0xcd, 0x08, 0x33, 0xcc, 0x94, 0xc6, 0x80, 0x38, 0xb0, 0x0f, 0x38, + 0xee, 0x59, 0x3f, 0x0b, 0xca, 0xd7, 0x97, 0xff, 0x6e, 0xd2, 0xdd, 0xd9, + 0x8f, 0x9c, 0x65, 0x31, 0x80, 0x94, 0xb4, 0x3c, 0x25, 0xdc, 0x59, 0xb6, + 0xbb, 0xb0, 0xd3, 0x1f, 0x79, 0xc0, 0x44, 0xf9, 0x10, 0xda, 0xbb, 0xd6, + 0xc1, 0xbc, 0xc5, 0x4b, +}; +static const struct drbg_kat_pr_false kat1597_t = { + 6, kat1597_entropyin, kat1597_nonce, kat1597_persstr, + kat1597_entropyinreseed, kat1597_addinreseed, kat1597_addin0, + kat1597_addin1, kat1597_retbits +}; +static const struct drbg_kat kat1597 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1597_t +}; + +static const unsigned char kat1598_entropyin[] = { + 0x11, 0x8e, 0x19, 0xa3, 0x1c, 0xcd, 0xd1, 0x4b, 0x84, 0x49, 0xe6, 0xb1, + 0x2e, 0x13, 0x40, 0xb0, +}; +static const unsigned char kat1598_nonce[] = { + 0x22, 0x18, 0x7a, 0x3a, 0xbb, 0x44, 0x77, 0xa0, +}; +static const unsigned char kat1598_persstr[] = { + 0xe7, 0xb8, 0x85, 0x95, 0x2c, 0x83, 0x88, 0x4e, 0xa6, 0xa9, 0x6c, 0x1a, + 0x51, 0xee, 0x7e, 0xd5, +}; +static const unsigned char kat1598_entropyinreseed[] = { + 0x8d, 0xb1, 0x4d, 0x02, 0xf1, 0xf6, 0x3c, 0x38, 0x5d, 0xfd, 0x55, 0x92, + 0xaa, 0xea, 0x1c, 0x2e, +}; +static const unsigned char kat1598_addinreseed[] = {0}; +static const unsigned char kat1598_addin0[] = {0}; +static const unsigned char kat1598_addin1[] = {0}; +static const unsigned char kat1598_retbits[] = { + 0x15, 0x47, 0x8c, 0xc9, 0xc1, 0x2d, 0xf7, 0x0e, 0x18, 0x20, 0x08, 0xb8, + 0x60, 0xe0, 0xc4, 0xde, 0x5d, 0x8d, 0xfc, 0x37, 0x5b, 0xb6, 0x86, 0xc5, + 0x8e, 0xb6, 0x94, 0xf4, 0x81, 0x7b, 0x4b, 0x0c, 0x37, 0x3d, 0xe5, 0x3c, + 0x49, 0x01, 0xb6, 0x4d, 0x91, 0x5b, 0xba, 0xf7, 0xa4, 0x1a, 0x43, 0x60, + 0xae, 0xa9, 0xcb, 0x99, 0x6e, 0xe3, 0xd5, 0x15, 0x56, 0xfb, 0xa9, 0xb0, + 0xc3, 0x19, 0x6b, 0xd4, +}; +static const struct drbg_kat_pr_false kat1598_t = { + 7, kat1598_entropyin, kat1598_nonce, kat1598_persstr, + kat1598_entropyinreseed, kat1598_addinreseed, kat1598_addin0, + kat1598_addin1, kat1598_retbits +}; +static const struct drbg_kat kat1598 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1598_t +}; + +static const unsigned char kat1599_entropyin[] = { + 0x83, 0xf3, 0xf7, 0xad, 0xeb, 0x93, 0x2e, 0x3b, 0x80, 0x3f, 0x43, 0x52, + 0x13, 0xa3, 0x28, 0x3e, +}; +static const unsigned char kat1599_nonce[] = { + 0x24, 0x8d, 0x7a, 0xf9, 0xce, 0x6e, 0x41, 0x67, +}; +static const unsigned char kat1599_persstr[] = { + 0x39, 0xfc, 0xae, 0x72, 0x6d, 0xbe, 0x65, 0x1b, 0xc8, 0x0e, 0x56, 0xa7, + 0xec, 0x19, 0xfa, 0x60, +}; +static const unsigned char kat1599_entropyinreseed[] = { + 0x0b, 0xfe, 0x69, 0xb9, 0xab, 0xc8, 0xa7, 0x6c, 0x06, 0x3e, 0x06, 0xd3, + 0x61, 0x7e, 0x41, 0x47, +}; +static const unsigned char kat1599_addinreseed[] = {0}; +static const unsigned char kat1599_addin0[] = {0}; +static const unsigned char kat1599_addin1[] = {0}; +static const unsigned char kat1599_retbits[] = { + 0x7e, 0x6f, 0x2e, 0xe5, 0x70, 0x13, 0x7a, 0xbe, 0x6c, 0x6e, 0x8d, 0xb2, + 0x55, 0x6b, 0x2d, 0x30, 0xf8, 0x7a, 0xea, 0x4f, 0xea, 0x5f, 0xa0, 0x63, + 0xa1, 0x10, 0xe9, 0x42, 0xae, 0xc4, 0xa2, 0x77, 0x0b, 0x57, 0x1b, 0xad, + 0x44, 0xf0, 0x7d, 0x39, 0x89, 0xe9, 0xad, 0xff, 0x29, 0x18, 0xbe, 0xbc, + 0x04, 0x62, 0x8a, 0x88, 0xee, 0xca, 0x6c, 0x6f, 0x2c, 0xea, 0x7c, 0xc3, + 0x38, 0xee, 0xb6, 0x70, +}; +static const struct drbg_kat_pr_false kat1599_t = { + 8, kat1599_entropyin, kat1599_nonce, kat1599_persstr, + kat1599_entropyinreseed, kat1599_addinreseed, kat1599_addin0, + kat1599_addin1, kat1599_retbits +}; +static const struct drbg_kat kat1599 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1599_t +}; + +static const unsigned char kat1600_entropyin[] = { + 0x2d, 0xe9, 0x89, 0xec, 0x6d, 0x0d, 0xa9, 0xeb, 0xcc, 0x02, 0xf7, 0x24, + 0xa4, 0x47, 0x67, 0x12, +}; +static const unsigned char kat1600_nonce[] = { + 0xf2, 0xf3, 0x79, 0x4d, 0x18, 0xac, 0x2b, 0xcd, +}; +static const unsigned char kat1600_persstr[] = { + 0xc5, 0x0a, 0xc1, 0x7e, 0x4a, 0x68, 0xf7, 0xf0, 0x2d, 0x68, 0x20, 0x65, + 0x3f, 0x0a, 0x71, 0xfd, +}; +static const unsigned char kat1600_entropyinreseed[] = { + 0x35, 0x09, 0x27, 0xee, 0xc6, 0x63, 0x63, 0x05, 0xba, 0xbd, 0x0f, 0xee, + 0xe2, 0x43, 0x08, 0x2f, +}; +static const unsigned char kat1600_addinreseed[] = {0}; +static const unsigned char kat1600_addin0[] = {0}; +static const unsigned char kat1600_addin1[] = {0}; +static const unsigned char kat1600_retbits[] = { + 0xda, 0xb2, 0x04, 0xce, 0x72, 0xaf, 0xd6, 0xcd, 0x25, 0x6a, 0x17, 0x54, + 0xab, 0x7e, 0xbe, 0x42, 0x4d, 0x4b, 0xfc, 0x6a, 0xee, 0xac, 0x9b, 0x6b, + 0xbd, 0x06, 0xe7, 0x9f, 0x21, 0x28, 0x63, 0x45, 0x45, 0x7b, 0x5f, 0xd4, + 0x62, 0x81, 0xc1, 0x45, 0xee, 0xc4, 0x50, 0x22, 0x58, 0x23, 0xc7, 0x59, + 0x6e, 0x18, 0xb7, 0xbc, 0xbb, 0x37, 0x98, 0x45, 0xa3, 0x84, 0xab, 0x48, + 0xd8, 0xa5, 0x55, 0xb3, +}; +static const struct drbg_kat_pr_false kat1600_t = { + 9, kat1600_entropyin, kat1600_nonce, kat1600_persstr, + kat1600_entropyinreseed, kat1600_addinreseed, kat1600_addin0, + kat1600_addin1, kat1600_retbits +}; +static const struct drbg_kat kat1600 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1600_t +}; + +static const unsigned char kat1601_entropyin[] = { + 0x76, 0x0f, 0xa0, 0x51, 0x53, 0x04, 0xe5, 0x24, 0x74, 0x3c, 0xa5, 0x63, + 0xba, 0xf2, 0x48, 0xf7, +}; +static const unsigned char kat1601_nonce[] = { + 0x46, 0x86, 0xbf, 0x04, 0x37, 0xa2, 0x86, 0xad, +}; +static const unsigned char kat1601_persstr[] = { + 0xb0, 0x39, 0x22, 0xe8, 0x92, 0x34, 0x93, 0xd2, 0x22, 0x7a, 0x1b, 0xff, + 0xc9, 0xee, 0x7c, 0x09, +}; +static const unsigned char kat1601_entropyinreseed[] = { + 0x70, 0x29, 0x4a, 0xab, 0xa8, 0x04, 0x2e, 0x77, 0x0e, 0x2e, 0xdd, 0x6a, + 0x02, 0xd3, 0x65, 0xaa, +}; +static const unsigned char kat1601_addinreseed[] = {0}; +static const unsigned char kat1601_addin0[] = {0}; +static const unsigned char kat1601_addin1[] = {0}; +static const unsigned char kat1601_retbits[] = { + 0xee, 0xc8, 0xb2, 0x57, 0x7c, 0xb1, 0x03, 0x75, 0xf5, 0x6f, 0x8a, 0xa8, + 0x78, 0x9c, 0xc8, 0x16, 0xc0, 0xbf, 0xd4, 0xb9, 0x28, 0xf2, 0xb5, 0xaf, + 0xdd, 0xbe, 0x8f, 0xdd, 0xb1, 0x4b, 0x0f, 0xaa, 0x1d, 0xfd, 0xba, 0x51, + 0x88, 0xa2, 0x86, 0x25, 0x23, 0xcf, 0x4c, 0x44, 0xce, 0x1d, 0x90, 0xe1, + 0x2a, 0x1f, 0xcd, 0x42, 0x26, 0x3b, 0x30, 0x5e, 0x2d, 0x85, 0xd3, 0xc4, + 0x0f, 0x56, 0x3b, 0x14, +}; +static const struct drbg_kat_pr_false kat1601_t = { + 10, kat1601_entropyin, kat1601_nonce, kat1601_persstr, + kat1601_entropyinreseed, kat1601_addinreseed, kat1601_addin0, + kat1601_addin1, kat1601_retbits +}; +static const struct drbg_kat kat1601 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1601_t +}; + +static const unsigned char kat1602_entropyin[] = { + 0xe1, 0x02, 0xad, 0x43, 0x7a, 0xa0, 0xa7, 0xdb, 0xd8, 0x50, 0x60, 0x83, + 0x77, 0xaf, 0xef, 0x1c, +}; +static const unsigned char kat1602_nonce[] = { + 0x0c, 0x12, 0x14, 0xcf, 0xc9, 0xb3, 0xb4, 0x50, +}; +static const unsigned char kat1602_persstr[] = { + 0x15, 0xa7, 0x9c, 0xbb, 0xd9, 0xec, 0x83, 0x9e, 0xfc, 0x49, 0xa1, 0x03, + 0x0e, 0x8c, 0x20, 0xae, +}; +static const unsigned char kat1602_entropyinreseed[] = { + 0x84, 0x64, 0xc0, 0xfb, 0x73, 0x35, 0x30, 0x5f, 0x54, 0x57, 0x1f, 0x29, + 0x51, 0x27, 0x21, 0x15, +}; +static const unsigned char kat1602_addinreseed[] = {0}; +static const unsigned char kat1602_addin0[] = {0}; +static const unsigned char kat1602_addin1[] = {0}; +static const unsigned char kat1602_retbits[] = { + 0xb6, 0xb1, 0x8e, 0x26, 0xd9, 0x0e, 0x70, 0xe0, 0xb7, 0x86, 0xff, 0x64, + 0x08, 0x40, 0x27, 0x3e, 0xe0, 0x86, 0xbf, 0x03, 0x20, 0x59, 0x05, 0xfe, + 0x1c, 0xdb, 0x2e, 0x9e, 0x89, 0x2f, 0x0b, 0x2a, 0xa2, 0xd6, 0xe7, 0x8e, + 0xcd, 0x3c, 0xee, 0x2d, 0x99, 0x28, 0x61, 0x60, 0xc2, 0x94, 0xdc, 0x36, + 0x8e, 0xd4, 0x5e, 0x2e, 0xb3, 0x31, 0xd0, 0x3b, 0xad, 0x58, 0xf4, 0xb5, + 0xcc, 0x50, 0x50, 0x53, +}; +static const struct drbg_kat_pr_false kat1602_t = { + 11, kat1602_entropyin, kat1602_nonce, kat1602_persstr, + kat1602_entropyinreseed, kat1602_addinreseed, kat1602_addin0, + kat1602_addin1, kat1602_retbits +}; +static const struct drbg_kat kat1602 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1602_t +}; + +static const unsigned char kat1603_entropyin[] = { + 0x90, 0xa9, 0xac, 0xc6, 0x56, 0x6b, 0x8b, 0xa0, 0xdb, 0x4e, 0xd5, 0xba, + 0x9b, 0x7d, 0x19, 0xd9, +}; +static const unsigned char kat1603_nonce[] = { + 0x74, 0xb6, 0xc9, 0x43, 0x76, 0x1b, 0x95, 0x68, +}; +static const unsigned char kat1603_persstr[] = { + 0x6b, 0xd1, 0x6b, 0xc6, 0xb0, 0x29, 0xab, 0x5f, 0x76, 0x68, 0x3b, 0xe7, + 0x12, 0xdc, 0x32, 0x72, +}; +static const unsigned char kat1603_entropyinreseed[] = { + 0xfe, 0xe3, 0xad, 0x6f, 0x48, 0x45, 0x84, 0xb3, 0x16, 0x3a, 0x21, 0x3f, + 0x19, 0x9a, 0x4d, 0x42, +}; +static const unsigned char kat1603_addinreseed[] = {0}; +static const unsigned char kat1603_addin0[] = {0}; +static const unsigned char kat1603_addin1[] = {0}; +static const unsigned char kat1603_retbits[] = { + 0xa3, 0xcc, 0x0d, 0xf5, 0x3f, 0x0d, 0x51, 0x6a, 0x27, 0x9a, 0x25, 0x3e, + 0x68, 0x53, 0xb1, 0x46, 0xa4, 0xbd, 0xed, 0x0c, 0x27, 0x0a, 0xe6, 0x61, + 0xe1, 0x9f, 0xaa, 0xcc, 0x5a, 0x76, 0x45, 0x15, 0xd0, 0x15, 0x66, 0x88, + 0x2f, 0x88, 0xde, 0x51, 0x60, 0xf4, 0x02, 0xe2, 0xce, 0x0e, 0xc4, 0x6d, + 0x1d, 0x7d, 0x50, 0x28, 0x94, 0x46, 0xde, 0x69, 0xac, 0x9d, 0x88, 0x9a, + 0xe1, 0x08, 0x82, 0xfa, +}; +static const struct drbg_kat_pr_false kat1603_t = { + 12, kat1603_entropyin, kat1603_nonce, kat1603_persstr, + kat1603_entropyinreseed, kat1603_addinreseed, kat1603_addin0, + kat1603_addin1, kat1603_retbits +}; +static const struct drbg_kat kat1603 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1603_t +}; + +static const unsigned char kat1604_entropyin[] = { + 0xa9, 0xc5, 0xfa, 0x1f, 0xd1, 0x5d, 0xc3, 0x5a, 0xcf, 0xd2, 0x59, 0x81, + 0xdd, 0x54, 0x7b, 0x56, +}; +static const unsigned char kat1604_nonce[] = { + 0x26, 0x74, 0x04, 0x71, 0x4f, 0x70, 0xa7, 0xcf, +}; +static const unsigned char kat1604_persstr[] = { + 0x61, 0x07, 0x14, 0x92, 0x22, 0x90, 0x36, 0x0d, 0x49, 0x19, 0xa9, 0xf1, + 0xf4, 0x71, 0xbb, 0xc6, +}; +static const unsigned char kat1604_entropyinreseed[] = { + 0x98, 0x34, 0x85, 0x9e, 0xcd, 0x85, 0x2a, 0x72, 0x69, 0x54, 0x6e, 0x82, + 0x5c, 0x01, 0xd6, 0x11, +}; +static const unsigned char kat1604_addinreseed[] = {0}; +static const unsigned char kat1604_addin0[] = {0}; +static const unsigned char kat1604_addin1[] = {0}; +static const unsigned char kat1604_retbits[] = { + 0xe7, 0x2e, 0xba, 0x34, 0xd4, 0x2b, 0x8e, 0xa6, 0x93, 0xbc, 0xe7, 0xe8, + 0x76, 0xc7, 0xb3, 0x38, 0xc1, 0xa7, 0x19, 0x1b, 0x07, 0xc9, 0xc5, 0x3e, + 0x1c, 0x0e, 0x27, 0xb0, 0x8b, 0xf0, 0x63, 0x65, 0x19, 0xa6, 0x5f, 0x63, + 0x4f, 0xea, 0xc5, 0x2e, 0x76, 0x0a, 0xe7, 0x81, 0x66, 0x99, 0xba, 0xbb, + 0x0c, 0x02, 0x68, 0xb1, 0x72, 0x38, 0xd8, 0x0c, 0xe6, 0x98, 0x30, 0x8e, + 0x6b, 0x36, 0x0c, 0xf9, +}; +static const struct drbg_kat_pr_false kat1604_t = { + 13, kat1604_entropyin, kat1604_nonce, kat1604_persstr, + kat1604_entropyinreseed, kat1604_addinreseed, kat1604_addin0, + kat1604_addin1, kat1604_retbits +}; +static const struct drbg_kat kat1604 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1604_t +}; + +static const unsigned char kat1605_entropyin[] = { + 0xe7, 0x61, 0x77, 0x8d, 0xfc, 0xf1, 0x2b, 0x16, 0x97, 0x95, 0x6b, 0xa1, + 0xf4, 0x96, 0x17, 0xbe, +}; +static const unsigned char kat1605_nonce[] = { + 0x8c, 0xe2, 0x52, 0xad, 0x4d, 0xc8, 0xa7, 0x02, +}; +static const unsigned char kat1605_persstr[] = { + 0xce, 0xae, 0x74, 0xc9, 0x76, 0x0f, 0xb4, 0x49, 0x5d, 0x33, 0x3f, 0x84, + 0x76, 0x1a, 0x8a, 0x30, +}; +static const unsigned char kat1605_entropyinreseed[] = { + 0x1a, 0x36, 0x53, 0xbc, 0xfa, 0x54, 0x9c, 0x1f, 0x98, 0xf1, 0x7f, 0x5b, + 0x26, 0xfc, 0x04, 0xb1, +}; +static const unsigned char kat1605_addinreseed[] = {0}; +static const unsigned char kat1605_addin0[] = {0}; +static const unsigned char kat1605_addin1[] = {0}; +static const unsigned char kat1605_retbits[] = { + 0x67, 0xad, 0x31, 0x84, 0x3d, 0x23, 0xd5, 0xb1, 0xb2, 0x1f, 0x70, 0x87, + 0x63, 0x51, 0xd5, 0x25, 0x2c, 0xf0, 0xcc, 0x93, 0xa9, 0x1a, 0x7a, 0x7c, + 0x8f, 0x78, 0x51, 0x89, 0xf8, 0x29, 0x34, 0x9b, 0xe6, 0x7a, 0xcb, 0xb9, + 0xda, 0xe0, 0x5d, 0x52, 0xb2, 0x14, 0xbc, 0xe4, 0xb3, 0x10, 0x19, 0x77, + 0x38, 0x37, 0x7a, 0x5f, 0x05, 0x0e, 0x25, 0x49, 0x20, 0x91, 0x0b, 0x44, + 0x97, 0xd6, 0x07, 0xba, +}; +static const struct drbg_kat_pr_false kat1605_t = { + 14, kat1605_entropyin, kat1605_nonce, kat1605_persstr, + kat1605_entropyinreseed, kat1605_addinreseed, kat1605_addin0, + kat1605_addin1, kat1605_retbits +}; +static const struct drbg_kat kat1605 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1605_t +}; + +static const unsigned char kat1606_entropyin[] = { + 0xb7, 0x02, 0x52, 0x64, 0xdc, 0xa8, 0x57, 0x6b, 0xd5, 0x2a, 0x26, 0xc2, + 0xd6, 0x4b, 0x50, 0x11, +}; +static const unsigned char kat1606_nonce[] = { + 0xe5, 0x9d, 0x54, 0xd2, 0xc0, 0x30, 0x32, 0xcd, +}; +static const unsigned char kat1606_persstr[] = { + 0x80, 0x1f, 0x88, 0xc6, 0x1c, 0x57, 0x7f, 0xa1, 0x61, 0x34, 0x05, 0x3d, + 0x07, 0xbf, 0x6f, 0x0f, +}; +static const unsigned char kat1606_entropyinreseed[] = { + 0x91, 0xae, 0x03, 0xa1, 0xb4, 0xb4, 0x31, 0x66, 0x11, 0x09, 0x43, 0x73, + 0xf9, 0x34, 0x9a, 0x57, +}; +static const unsigned char kat1606_addinreseed[] = { + 0x65, 0x2f, 0x24, 0xf9, 0x36, 0x55, 0x1b, 0x0b, 0xbe, 0xb3, 0xe8, 0x29, + 0xdd, 0x1e, 0xc9, 0xad, +}; +static const unsigned char kat1606_addin0[] = { + 0xc0, 0x7d, 0x36, 0x37, 0x5b, 0x0b, 0xa8, 0xe7, 0xd9, 0xbd, 0x7e, 0x9f, + 0x53, 0xe2, 0xd9, 0x8c, +}; +static const unsigned char kat1606_addin1[] = { + 0x20, 0x99, 0x53, 0xab, 0xe8, 0x50, 0x45, 0x9d, 0x83, 0xe5, 0xdd, 0xd1, + 0x5d, 0x21, 0x50, 0x5b, +}; +static const unsigned char kat1606_retbits[] = { + 0x4b, 0x15, 0x3e, 0x0a, 0xd2, 0xe8, 0xd2, 0x6e, 0xa0, 0x51, 0x72, 0x90, + 0xde, 0x36, 0x5e, 0x3e, 0x5b, 0xbe, 0xbf, 0x6e, 0x76, 0x00, 0x2b, 0x3e, + 0x8b, 0xbd, 0x4e, 0xe9, 0xed, 0xde, 0xf8, 0xcb, 0xc9, 0xc4, 0xdc, 0x85, + 0xac, 0xe2, 0x1d, 0x82, 0x17, 0xef, 0x25, 0xe6, 0x88, 0x34, 0x29, 0xc1, + 0x63, 0x21, 0xa4, 0x58, 0xb5, 0x0e, 0x6c, 0x15, 0xac, 0xc6, 0xd5, 0x32, + 0x4b, 0x55, 0xe5, 0xf3, +}; +static const struct drbg_kat_pr_false kat1606_t = { + 0, kat1606_entropyin, kat1606_nonce, kat1606_persstr, + kat1606_entropyinreseed, kat1606_addinreseed, kat1606_addin0, + kat1606_addin1, kat1606_retbits +}; +static const struct drbg_kat kat1606 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1606_t +}; + +static const unsigned char kat1607_entropyin[] = { + 0x17, 0x44, 0x36, 0xf2, 0x35, 0x26, 0x7b, 0x38, 0x93, 0x29, 0x40, 0x17, + 0xd4, 0xe6, 0x91, 0x28, +}; +static const unsigned char kat1607_nonce[] = { + 0x44, 0x20, 0xe5, 0x57, 0xde, 0xd3, 0xf7, 0xad, +}; +static const unsigned char kat1607_persstr[] = { + 0x44, 0x9f, 0x60, 0x38, 0x06, 0xef, 0x01, 0x20, 0xb8, 0xd5, 0x8a, 0x9a, + 0xa5, 0x1f, 0x60, 0x04, +}; +static const unsigned char kat1607_entropyinreseed[] = { + 0xc6, 0xa1, 0xa1, 0x32, 0x8b, 0x7a, 0x40, 0x73, 0x6b, 0xf9, 0xc7, 0xee, + 0xfe, 0xe9, 0xf2, 0xdf, +}; +static const unsigned char kat1607_addinreseed[] = { + 0xf0, 0x90, 0x19, 0xe8, 0xe6, 0x0b, 0x2c, 0x42, 0xbe, 0xc6, 0x11, 0x81, + 0x7b, 0x2b, 0x3b, 0xfc, +}; +static const unsigned char kat1607_addin0[] = { + 0x1e, 0xe6, 0xef, 0xa2, 0x42, 0xe6, 0x51, 0x12, 0xa3, 0xf0, 0xd2, 0xf1, + 0x70, 0x6a, 0xd3, 0x8f, +}; +static const unsigned char kat1607_addin1[] = { + 0xb1, 0x45, 0x9d, 0x42, 0x04, 0x99, 0x98, 0xd4, 0xda, 0x0b, 0x01, 0xff, + 0xee, 0x4e, 0x20, 0xdf, +}; +static const unsigned char kat1607_retbits[] = { + 0x11, 0xb0, 0xab, 0xbb, 0x76, 0x19, 0xb3, 0x7c, 0x19, 0x0f, 0x23, 0x98, + 0xe2, 0x62, 0xdf, 0xb7, 0x58, 0x6b, 0x63, 0x2b, 0x3e, 0x96, 0xc7, 0xae, + 0x09, 0x9a, 0x2f, 0xe0, 0xe1, 0xfb, 0xee, 0x70, 0xe4, 0x9b, 0x21, 0x64, + 0x2d, 0x37, 0xc3, 0x65, 0xef, 0x87, 0x8f, 0x63, 0xe8, 0x4e, 0x67, 0x21, + 0x05, 0xce, 0x2b, 0x81, 0x91, 0x1f, 0x18, 0xb6, 0x0a, 0xa6, 0xa4, 0x40, + 0xec, 0xce, 0xf5, 0x2b, +}; +static const struct drbg_kat_pr_false kat1607_t = { + 1, kat1607_entropyin, kat1607_nonce, kat1607_persstr, + kat1607_entropyinreseed, kat1607_addinreseed, kat1607_addin0, + kat1607_addin1, kat1607_retbits +}; +static const struct drbg_kat kat1607 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1607_t +}; + +static const unsigned char kat1608_entropyin[] = { + 0x2f, 0xcc, 0x99, 0xd4, 0x0a, 0xf5, 0xcb, 0xa1, 0x41, 0xb7, 0x92, 0xd1, + 0x86, 0xe6, 0x13, 0x43, +}; +static const unsigned char kat1608_nonce[] = { + 0xdc, 0xae, 0x59, 0x9d, 0xab, 0x13, 0x5c, 0x65, +}; +static const unsigned char kat1608_persstr[] = { + 0xbe, 0xe3, 0xfc, 0x60, 0x13, 0x16, 0x05, 0x7b, 0x12, 0xcf, 0x79, 0x1a, + 0x6f, 0xa3, 0x62, 0xbb, +}; +static const unsigned char kat1608_entropyinreseed[] = { + 0x71, 0x2f, 0xcb, 0x5b, 0x28, 0x36, 0xe6, 0xbd, 0xb9, 0x29, 0x35, 0x08, + 0xe0, 0x28, 0x3e, 0x8e, +}; +static const unsigned char kat1608_addinreseed[] = { + 0xb2, 0xe4, 0x6f, 0xb3, 0x9a, 0x3a, 0xd8, 0x9b, 0xdc, 0xc7, 0x8a, 0xde, + 0x62, 0x38, 0xc4, 0xd0, +}; +static const unsigned char kat1608_addin0[] = { + 0xe2, 0x56, 0x7f, 0x6e, 0xc2, 0x7b, 0xcb, 0x14, 0x97, 0xc2, 0xfe, 0x15, + 0x17, 0x39, 0xe8, 0xd0, +}; +static const unsigned char kat1608_addin1[] = { + 0x95, 0x86, 0xb4, 0xad, 0xa0, 0xa3, 0x00, 0xe8, 0x36, 0x97, 0x51, 0x7f, + 0x6f, 0x43, 0x46, 0x3c, +}; +static const unsigned char kat1608_retbits[] = { + 0x2b, 0x5c, 0xe7, 0x2c, 0x71, 0x7e, 0xe1, 0x0c, 0xcc, 0x34, 0xd8, 0x6e, + 0x39, 0x67, 0xaf, 0xdc, 0xe8, 0x3d, 0x48, 0x59, 0x97, 0xf6, 0xdc, 0x3d, + 0x3d, 0x40, 0xb5, 0x97, 0xe0, 0x74, 0x20, 0x65, 0x22, 0x10, 0x56, 0xea, + 0xd6, 0xa1, 0x6f, 0x39, 0x5e, 0x4d, 0x8c, 0x09, 0x47, 0x16, 0x7f, 0xf6, + 0x62, 0x90, 0x98, 0xf3, 0x3b, 0x92, 0x09, 0x12, 0x8c, 0xa7, 0xd7, 0x13, + 0xbe, 0xd2, 0x41, 0x77, +}; +static const struct drbg_kat_pr_false kat1608_t = { + 2, kat1608_entropyin, kat1608_nonce, kat1608_persstr, + kat1608_entropyinreseed, kat1608_addinreseed, kat1608_addin0, + kat1608_addin1, kat1608_retbits +}; +static const struct drbg_kat kat1608 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1608_t +}; + +static const unsigned char kat1609_entropyin[] = { + 0xab, 0x71, 0x23, 0x94, 0x4a, 0x2f, 0x46, 0x2a, 0x36, 0x8d, 0xa1, 0x71, + 0x27, 0x16, 0xb1, 0x14, +}; +static const unsigned char kat1609_nonce[] = { + 0x85, 0x1d, 0x50, 0x04, 0x9e, 0x1d, 0x4f, 0x1f, +}; +static const unsigned char kat1609_persstr[] = { + 0x8a, 0xd5, 0xac, 0x69, 0x4f, 0x28, 0x28, 0x1e, 0xaa, 0x42, 0x78, 0x44, + 0xfc, 0xff, 0xdf, 0x6e, +}; +static const unsigned char kat1609_entropyinreseed[] = { + 0xed, 0x59, 0xf0, 0x72, 0x06, 0x25, 0x38, 0x2b, 0xcf, 0x4e, 0x48, 0x57, + 0xf5, 0x36, 0x0f, 0x54, +}; +static const unsigned char kat1609_addinreseed[] = { + 0xe7, 0xac, 0x99, 0x66, 0x02, 0x0b, 0xe3, 0xeb, 0x21, 0xef, 0x18, 0x31, + 0xf3, 0xde, 0x23, 0x04, +}; +static const unsigned char kat1609_addin0[] = { + 0x1d, 0xa1, 0xbd, 0xe0, 0x9d, 0x7b, 0x44, 0xf6, 0xfa, 0x07, 0x4e, 0x55, + 0xa2, 0x69, 0x8f, 0x4e, +}; +static const unsigned char kat1609_addin1[] = { + 0x79, 0x53, 0x26, 0xf8, 0x3c, 0x85, 0x42, 0x21, 0x5b, 0x13, 0x15, 0xbf, + 0x3d, 0x7c, 0x98, 0x46, +}; +static const unsigned char kat1609_retbits[] = { + 0xcb, 0x65, 0x6e, 0x62, 0x41, 0x71, 0x88, 0xa7, 0x4d, 0x7a, 0xfa, 0x64, + 0x02, 0x56, 0x4b, 0x7d, 0x15, 0x72, 0x9b, 0x5b, 0x70, 0xb1, 0x4d, 0x8b, + 0x5c, 0x51, 0x30, 0xc6, 0x81, 0x6d, 0x05, 0x12, 0x86, 0xe5, 0xe2, 0x2f, + 0xf3, 0x6a, 0x45, 0x05, 0x8b, 0xc5, 0x0b, 0x7f, 0x0f, 0x53, 0xd8, 0x0c, + 0x95, 0x91, 0x3a, 0x32, 0x5a, 0xf9, 0x85, 0x02, 0xb2, 0xe0, 0x59, 0x15, + 0x24, 0xf9, 0xfc, 0xdd, +}; +static const struct drbg_kat_pr_false kat1609_t = { + 3, kat1609_entropyin, kat1609_nonce, kat1609_persstr, + kat1609_entropyinreseed, kat1609_addinreseed, kat1609_addin0, + kat1609_addin1, kat1609_retbits +}; +static const struct drbg_kat kat1609 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1609_t +}; + +static const unsigned char kat1610_entropyin[] = { + 0x87, 0x34, 0xae, 0xf1, 0x17, 0x2b, 0xac, 0xc3, 0xdc, 0x4a, 0x31, 0x81, + 0x77, 0x3b, 0x7f, 0xe8, +}; +static const unsigned char kat1610_nonce[] = { + 0x1d, 0x31, 0xdd, 0xf0, 0xc8, 0x80, 0xf0, 0x1a, +}; +static const unsigned char kat1610_persstr[] = { + 0xf2, 0x3a, 0x18, 0x47, 0x5c, 0xff, 0xd5, 0x71, 0xb9, 0x6d, 0x9b, 0xae, + 0x12, 0x84, 0xec, 0xf4, +}; +static const unsigned char kat1610_entropyinreseed[] = { + 0x10, 0x44, 0x77, 0x6a, 0x68, 0x0c, 0xdd, 0xc3, 0x8c, 0x7a, 0x9d, 0x0a, + 0x9d, 0x37, 0x3f, 0xc8, +}; +static const unsigned char kat1610_addinreseed[] = { + 0x4a, 0x6d, 0xab, 0xcf, 0x18, 0x1d, 0x43, 0x5d, 0xf7, 0xe3, 0x5b, 0x53, + 0x02, 0x2b, 0x60, 0x45, +}; +static const unsigned char kat1610_addin0[] = { + 0x0c, 0xb7, 0xc3, 0x61, 0x82, 0x15, 0x86, 0xd6, 0x40, 0x6c, 0xf0, 0xd0, + 0x74, 0x1b, 0xb3, 0xe6, +}; +static const unsigned char kat1610_addin1[] = { + 0x98, 0x4e, 0x88, 0x83, 0x6d, 0x0c, 0xfc, 0xb1, 0xb9, 0xad, 0xaa, 0x26, + 0xed, 0x04, 0x7a, 0x56, +}; +static const unsigned char kat1610_retbits[] = { + 0x97, 0xf5, 0xaa, 0x05, 0xfb, 0x16, 0x91, 0xe4, 0x34, 0xf8, 0x27, 0xb1, + 0xed, 0x0f, 0x67, 0xc6, 0xb0, 0x6a, 0x12, 0x9b, 0xbb, 0x64, 0x64, 0xd9, + 0xad, 0x03, 0xde, 0x5f, 0xe8, 0xb6, 0x36, 0x10, 0xc6, 0x96, 0x00, 0xd9, + 0x72, 0xd8, 0x3a, 0x75, 0xb7, 0x1e, 0x23, 0xcb, 0xd0, 0x5b, 0x30, 0x6e, + 0x57, 0x72, 0x12, 0x67, 0x03, 0x93, 0x1a, 0x80, 0x29, 0x32, 0xdd, 0x27, + 0x2d, 0xdc, 0x24, 0xec, +}; +static const struct drbg_kat_pr_false kat1610_t = { + 4, kat1610_entropyin, kat1610_nonce, kat1610_persstr, + kat1610_entropyinreseed, kat1610_addinreseed, kat1610_addin0, + kat1610_addin1, kat1610_retbits +}; +static const struct drbg_kat kat1610 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1610_t +}; + +static const unsigned char kat1611_entropyin[] = { + 0x08, 0xe2, 0xe7, 0x4d, 0x47, 0xdf, 0xb3, 0xc0, 0xed, 0x43, 0x64, 0x4d, + 0x98, 0x41, 0x39, 0x11, +}; +static const unsigned char kat1611_nonce[] = { + 0xdf, 0xe6, 0xf2, 0xb5, 0x61, 0x47, 0x11, 0x6e, +}; +static const unsigned char kat1611_persstr[] = { + 0x1e, 0xf4, 0xb3, 0x07, 0x4c, 0x24, 0x7b, 0x7c, 0x96, 0x2d, 0x49, 0xea, + 0x2e, 0x51, 0x95, 0x68, +}; +static const unsigned char kat1611_entropyinreseed[] = { + 0xd9, 0x1c, 0x7e, 0xaa, 0xe8, 0x9c, 0xe0, 0x7d, 0xe8, 0x57, 0x8d, 0x9f, + 0x46, 0x41, 0x11, 0x90, +}; +static const unsigned char kat1611_addinreseed[] = { + 0xa6, 0xf7, 0x3c, 0x36, 0xfd, 0x4b, 0x51, 0x0e, 0xde, 0x52, 0xbd, 0x81, + 0xef, 0xf1, 0x12, 0x03, +}; +static const unsigned char kat1611_addin0[] = { + 0x20, 0xda, 0xd8, 0x65, 0xc4, 0xe4, 0x21, 0xbb, 0x49, 0x67, 0xbc, 0x88, + 0xb3, 0x00, 0x53, 0xd5, +}; +static const unsigned char kat1611_addin1[] = { + 0x9a, 0xfa, 0x0a, 0x2c, 0x87, 0xef, 0x1a, 0x19, 0x20, 0xa2, 0x49, 0x0a, + 0xb9, 0x88, 0x05, 0xb5, +}; +static const unsigned char kat1611_retbits[] = { + 0xb8, 0xad, 0xce, 0x5f, 0xb7, 0xc2, 0x84, 0xa1, 0x8f, 0x4c, 0x9f, 0x15, + 0xfd, 0x66, 0x43, 0x50, 0x54, 0x51, 0xda, 0x4a, 0x05, 0xe2, 0xde, 0xe0, + 0xfd, 0x57, 0x23, 0xd1, 0x5a, 0xe5, 0xba, 0xec, 0x8e, 0x98, 0xd0, 0x88, + 0x38, 0xd4, 0x48, 0x9b, 0x37, 0x9c, 0xf3, 0x49, 0x0c, 0x7f, 0x61, 0xb5, + 0xb7, 0x8d, 0x59, 0x03, 0x77, 0x3d, 0x68, 0xd9, 0x14, 0x25, 0x3b, 0x33, + 0x9f, 0x26, 0x7c, 0x0e, +}; +static const struct drbg_kat_pr_false kat1611_t = { + 5, kat1611_entropyin, kat1611_nonce, kat1611_persstr, + kat1611_entropyinreseed, kat1611_addinreseed, kat1611_addin0, + kat1611_addin1, kat1611_retbits +}; +static const struct drbg_kat kat1611 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1611_t +}; + +static const unsigned char kat1612_entropyin[] = { + 0xd4, 0x24, 0xd8, 0x11, 0x23, 0xb1, 0x45, 0x47, 0x1d, 0x64, 0xac, 0x2d, + 0xe5, 0xe4, 0x11, 0xfa, +}; +static const unsigned char kat1612_nonce[] = { + 0x46, 0xbf, 0x21, 0x3d, 0xd4, 0x00, 0x48, 0x67, +}; +static const unsigned char kat1612_persstr[] = { + 0x8a, 0xe3, 0xf0, 0xa1, 0x88, 0xd1, 0xb5, 0xd3, 0x1b, 0xaa, 0xb8, 0xf9, + 0x2e, 0x60, 0x40, 0x79, +}; +static const unsigned char kat1612_entropyinreseed[] = { + 0xb3, 0xff, 0x4e, 0x4f, 0x5d, 0xbf, 0x58, 0x66, 0xa8, 0x6a, 0x5a, 0x60, + 0x0b, 0x69, 0x12, 0xf9, +}; +static const unsigned char kat1612_addinreseed[] = { + 0xd9, 0xb4, 0x30, 0xa4, 0xee, 0x9b, 0x1c, 0xf7, 0xbf, 0xc7, 0xcc, 0x4a, + 0x77, 0xeb, 0xcf, 0xe4, +}; +static const unsigned char kat1612_addin0[] = { + 0xcc, 0x67, 0x05, 0x56, 0xf4, 0xb5, 0x87, 0x1f, 0xf0, 0xbc, 0x15, 0xc7, + 0xf5, 0xd9, 0xc1, 0xce, +}; +static const unsigned char kat1612_addin1[] = { + 0xf4, 0x8b, 0x9c, 0x5f, 0xfc, 0xfa, 0x9d, 0xba, 0x23, 0x2d, 0xef, 0x34, + 0xcd, 0xfc, 0xe9, 0xf7, +}; +static const unsigned char kat1612_retbits[] = { + 0xa5, 0x2a, 0x74, 0xad, 0x01, 0xc9, 0xfb, 0xef, 0xce, 0x42, 0x46, 0x2b, + 0x18, 0x7f, 0xda, 0xba, 0x5b, 0xe7, 0x75, 0xac, 0x96, 0x1d, 0x6d, 0xab, + 0xc6, 0x96, 0x98, 0x82, 0x65, 0x67, 0x36, 0x2d, 0xcd, 0xb0, 0xcd, 0x11, + 0xbe, 0xb4, 0xd3, 0x8e, 0xe1, 0xbd, 0x79, 0x03, 0xae, 0xcf, 0x1a, 0xfc, + 0xb4, 0x2e, 0xe0, 0x27, 0x18, 0xeb, 0xe5, 0x1e, 0xec, 0x8a, 0xfb, 0x4f, + 0xf7, 0x8c, 0x07, 0xbd, +}; +static const struct drbg_kat_pr_false kat1612_t = { + 6, kat1612_entropyin, kat1612_nonce, kat1612_persstr, + kat1612_entropyinreseed, kat1612_addinreseed, kat1612_addin0, + kat1612_addin1, kat1612_retbits +}; +static const struct drbg_kat kat1612 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1612_t +}; + +static const unsigned char kat1613_entropyin[] = { + 0x09, 0xe6, 0xc2, 0x3a, 0x82, 0x6e, 0xff, 0xc9, 0xe9, 0x63, 0x10, 0x89, + 0xc6, 0xbe, 0xa1, 0x37, +}; +static const unsigned char kat1613_nonce[] = { + 0x2b, 0x70, 0x2f, 0xd9, 0x5a, 0xda, 0x52, 0x19, +}; +static const unsigned char kat1613_persstr[] = { + 0x44, 0x70, 0x0b, 0xd3, 0xd0, 0x49, 0xb6, 0xb6, 0xbb, 0x42, 0x6a, 0x3e, + 0xac, 0xd4, 0x1d, 0x64, +}; +static const unsigned char kat1613_entropyinreseed[] = { + 0x63, 0x1c, 0x3c, 0x7d, 0xbc, 0xf9, 0x03, 0x95, 0xd2, 0x2b, 0xe3, 0x58, + 0xdd, 0x67, 0x46, 0xe4, +}; +static const unsigned char kat1613_addinreseed[] = { + 0x9f, 0x9f, 0x8e, 0x2a, 0x8b, 0xf3, 0x4b, 0x4f, 0x2c, 0x52, 0xbe, 0xa9, + 0xa1, 0xa7, 0x4c, 0x28, +}; +static const unsigned char kat1613_addin0[] = { + 0xc7, 0xa5, 0xe5, 0x4b, 0x97, 0xe0, 0xb5, 0x83, 0xd0, 0xc3, 0x5a, 0xa6, + 0x44, 0x4d, 0x25, 0x8d, +}; +static const unsigned char kat1613_addin1[] = { + 0xa9, 0x9a, 0x5e, 0x8a, 0x6e, 0xf0, 0x62, 0xb8, 0xfd, 0xb6, 0x7c, 0x7f, + 0x96, 0x87, 0xff, 0xdd, +}; +static const unsigned char kat1613_retbits[] = { + 0x01, 0x1d, 0x23, 0xe5, 0x4e, 0xbe, 0x6a, 0xba, 0x2d, 0x19, 0xd0, 0x8a, + 0x48, 0x92, 0x04, 0x82, 0xe2, 0x81, 0x0c, 0x33, 0x63, 0xec, 0x54, 0x71, + 0x8f, 0x18, 0x01, 0x86, 0x6e, 0x76, 0x9c, 0x18, 0x02, 0x31, 0x11, 0x3d, + 0xaa, 0x31, 0xb2, 0xc1, 0xe7, 0xb1, 0x08, 0x0c, 0x7c, 0xbd, 0x73, 0x05, + 0x22, 0xcf, 0xe2, 0x0c, 0x16, 0xde, 0x1f, 0x48, 0xbf, 0xb0, 0xf2, 0x7e, + 0xa1, 0xbb, 0x96, 0xf3, +}; +static const struct drbg_kat_pr_false kat1613_t = { + 7, kat1613_entropyin, kat1613_nonce, kat1613_persstr, + kat1613_entropyinreseed, kat1613_addinreseed, kat1613_addin0, + kat1613_addin1, kat1613_retbits +}; +static const struct drbg_kat kat1613 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1613_t +}; + +static const unsigned char kat1614_entropyin[] = { + 0x82, 0x6f, 0xcf, 0x8c, 0xe7, 0x32, 0x58, 0xd0, 0x34, 0x16, 0xc1, 0x19, + 0xdd, 0x6f, 0xfb, 0x92, +}; +static const unsigned char kat1614_nonce[] = { + 0x33, 0xa7, 0x66, 0xd8, 0x2e, 0x3b, 0xda, 0xeb, +}; +static const unsigned char kat1614_persstr[] = { + 0xbf, 0xd2, 0xd1, 0xfe, 0xfb, 0x06, 0xf1, 0x5a, 0xe1, 0xc5, 0x15, 0xd3, + 0x1f, 0x6d, 0x29, 0x70, +}; +static const unsigned char kat1614_entropyinreseed[] = { + 0x54, 0xa6, 0x17, 0x72, 0xd5, 0x7a, 0x0f, 0x49, 0xcf, 0x71, 0xcc, 0x07, + 0xa8, 0x88, 0x52, 0xa2, +}; +static const unsigned char kat1614_addinreseed[] = { + 0x4b, 0x03, 0x82, 0x37, 0x68, 0x27, 0x48, 0xfe, 0x3d, 0xe0, 0x5c, 0x62, + 0xd3, 0x46, 0x27, 0xc7, +}; +static const unsigned char kat1614_addin0[] = { + 0x05, 0x61, 0x98, 0xe2, 0xfc, 0x30, 0x18, 0x53, 0x17, 0xab, 0xd3, 0xcb, + 0x27, 0x33, 0x7b, 0xaa, +}; +static const unsigned char kat1614_addin1[] = { + 0xfb, 0xb4, 0x85, 0xa9, 0xc3, 0xa8, 0x47, 0x24, 0xe9, 0x69, 0x5e, 0x39, + 0x5c, 0x59, 0x5e, 0x50, +}; +static const unsigned char kat1614_retbits[] = { + 0x01, 0x40, 0xd3, 0xd9, 0x2f, 0x1b, 0x41, 0x6a, 0x26, 0x29, 0x35, 0x5d, + 0x7a, 0x0b, 0xd6, 0x41, 0xd7, 0x65, 0xb8, 0x0d, 0x94, 0xca, 0xb4, 0x93, + 0x9a, 0x7d, 0xf2, 0x53, 0xd5, 0x6f, 0xf4, 0x3f, 0x15, 0x87, 0x9d, 0x1d, + 0x48, 0x16, 0x47, 0x2d, 0xe9, 0x3c, 0x62, 0xec, 0x96, 0x3d, 0x43, 0xf9, + 0x5e, 0xf4, 0x6c, 0xdd, 0xa3, 0xdd, 0x10, 0xdc, 0x63, 0x5d, 0xe7, 0xef, + 0xcd, 0x95, 0xde, 0x26, +}; +static const struct drbg_kat_pr_false kat1614_t = { + 8, kat1614_entropyin, kat1614_nonce, kat1614_persstr, + kat1614_entropyinreseed, kat1614_addinreseed, kat1614_addin0, + kat1614_addin1, kat1614_retbits +}; +static const struct drbg_kat kat1614 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1614_t +}; + +static const unsigned char kat1615_entropyin[] = { + 0x3b, 0x82, 0xcc, 0x6a, 0xc3, 0xcc, 0xbb, 0x15, 0x75, 0xa6, 0x2f, 0x13, + 0x13, 0x19, 0xcc, 0xd2, +}; +static const unsigned char kat1615_nonce[] = { + 0x27, 0xbb, 0xa0, 0xa7, 0xae, 0x72, 0xde, 0x41, +}; +static const unsigned char kat1615_persstr[] = { + 0x82, 0x5a, 0x89, 0xb6, 0x3c, 0xb2, 0x18, 0x78, 0xa5, 0x1d, 0x75, 0x06, + 0x3b, 0x5c, 0xdb, 0x60, +}; +static const unsigned char kat1615_entropyinreseed[] = { + 0x37, 0xf5, 0xd8, 0x1a, 0x34, 0x83, 0xfa, 0x8b, 0x56, 0x10, 0x2a, 0x09, + 0x51, 0xec, 0x16, 0x70, +}; +static const unsigned char kat1615_addinreseed[] = { + 0xd7, 0x86, 0x93, 0xf6, 0x8a, 0xe4, 0xcb, 0xa3, 0x8f, 0x3e, 0x18, 0x88, + 0x29, 0x64, 0xa7, 0x55, +}; +static const unsigned char kat1615_addin0[] = { + 0x74, 0xe4, 0xf0, 0x2b, 0x34, 0xc2, 0xbb, 0x5c, 0x11, 0xd2, 0xba, 0xda, + 0x96, 0x79, 0xa9, 0x60, +}; +static const unsigned char kat1615_addin1[] = { + 0x90, 0xcd, 0x8f, 0xdc, 0x9e, 0x34, 0x44, 0x55, 0x40, 0xa4, 0xd4, 0xe8, + 0xdd, 0x43, 0xd5, 0x0e, +}; +static const unsigned char kat1615_retbits[] = { + 0x29, 0xbf, 0x5c, 0xe9, 0x9f, 0xf2, 0x8a, 0x3c, 0xff, 0xc9, 0x9c, 0xa5, + 0xe4, 0xfe, 0x8e, 0x70, 0xb7, 0x38, 0x1f, 0xfa, 0xb6, 0xa6, 0xc6, 0xad, + 0x5a, 0xbf, 0x97, 0xe7, 0x3f, 0x1e, 0x4a, 0x9d, 0x3c, 0x74, 0xd5, 0x55, + 0xe6, 0x80, 0x85, 0x84, 0xb9, 0x4d, 0xdb, 0x1e, 0xfe, 0x04, 0x8f, 0x27, + 0xff, 0x70, 0x60, 0x6c, 0xa8, 0xab, 0x67, 0xc1, 0xd2, 0x62, 0xac, 0x38, + 0x08, 0x7c, 0x2d, 0x3c, +}; +static const struct drbg_kat_pr_false kat1615_t = { + 9, kat1615_entropyin, kat1615_nonce, kat1615_persstr, + kat1615_entropyinreseed, kat1615_addinreseed, kat1615_addin0, + kat1615_addin1, kat1615_retbits +}; +static const struct drbg_kat kat1615 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1615_t +}; + +static const unsigned char kat1616_entropyin[] = { + 0x9d, 0x8d, 0x93, 0x16, 0x20, 0xb5, 0xee, 0x39, 0x90, 0x63, 0xa7, 0x8e, + 0xea, 0x53, 0x26, 0x90, +}; +static const unsigned char kat1616_nonce[] = { + 0x9c, 0x7a, 0xe6, 0x55, 0xd5, 0xe7, 0x44, 0x46, +}; +static const unsigned char kat1616_persstr[] = { + 0xe8, 0x20, 0x63, 0x20, 0x27, 0xe1, 0x0f, 0xb5, 0xbc, 0xd4, 0x8a, 0xcb, + 0x42, 0x28, 0x89, 0x7b, +}; +static const unsigned char kat1616_entropyinreseed[] = { + 0xe3, 0x61, 0x8d, 0xb7, 0x9c, 0x92, 0x39, 0xc8, 0x83, 0x9c, 0xaf, 0xfd, + 0x15, 0xea, 0xad, 0x79, +}; +static const unsigned char kat1616_addinreseed[] = { + 0x9f, 0xbd, 0x70, 0xeb, 0x16, 0xbc, 0x44, 0x39, 0xa5, 0x76, 0x59, 0x14, + 0x49, 0xa8, 0x20, 0xee, +}; +static const unsigned char kat1616_addin0[] = { + 0x9a, 0xec, 0xcb, 0xdc, 0x45, 0x52, 0x49, 0x72, 0xc2, 0xb8, 0xcb, 0xfc, + 0x42, 0xad, 0x00, 0x6b, +}; +static const unsigned char kat1616_addin1[] = { + 0x44, 0x19, 0x9d, 0xd3, 0xe3, 0x97, 0xff, 0x4b, 0xb5, 0x57, 0x4d, 0x5e, + 0x1a, 0x86, 0xfc, 0xc0, +}; +static const unsigned char kat1616_retbits[] = { + 0xe1, 0xb7, 0x8f, 0xa3, 0xa4, 0x24, 0x43, 0xc7, 0x89, 0x63, 0x1f, 0x25, + 0x00, 0x63, 0x56, 0x16, 0xbd, 0x05, 0xc6, 0x2d, 0xb9, 0x8a, 0x76, 0xfc, + 0xe8, 0x4f, 0x63, 0xae, 0xcd, 0x84, 0x2e, 0xe3, 0x3d, 0xd9, 0x63, 0xc5, + 0xa4, 0x75, 0xf0, 0xdc, 0x6e, 0x0a, 0x01, 0xe8, 0xe4, 0x41, 0x32, 0x04, + 0x50, 0x44, 0xcb, 0x33, 0xef, 0xc0, 0xbb, 0xbf, 0xba, 0x11, 0x6c, 0x07, + 0x56, 0xcc, 0x3d, 0xca, +}; +static const struct drbg_kat_pr_false kat1616_t = { + 10, kat1616_entropyin, kat1616_nonce, kat1616_persstr, + kat1616_entropyinreseed, kat1616_addinreseed, kat1616_addin0, + kat1616_addin1, kat1616_retbits +}; +static const struct drbg_kat kat1616 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1616_t +}; + +static const unsigned char kat1617_entropyin[] = { + 0x62, 0xa8, 0x7e, 0x0f, 0xfc, 0x6f, 0x62, 0xea, 0x86, 0x8f, 0x82, 0xfc, + 0x4b, 0x49, 0x76, 0xd8, +}; +static const unsigned char kat1617_nonce[] = { + 0x98, 0x26, 0x8b, 0xa7, 0xa9, 0xf8, 0x0a, 0x81, +}; +static const unsigned char kat1617_persstr[] = { + 0x21, 0x25, 0x1e, 0xd8, 0x32, 0xf0, 0x78, 0xc0, 0x57, 0x4e, 0x28, 0x62, + 0xe5, 0xd6, 0xe4, 0x58, +}; +static const unsigned char kat1617_entropyinreseed[] = { + 0xe6, 0x3a, 0x86, 0x05, 0x64, 0x75, 0xab, 0x9b, 0x10, 0xf4, 0x6b, 0x07, + 0x32, 0xb5, 0x81, 0xd6, +}; +static const unsigned char kat1617_addinreseed[] = { + 0xc0, 0x2a, 0xa5, 0x62, 0x35, 0xea, 0x4a, 0x75, 0x2e, 0xb7, 0xd4, 0xff, + 0xb3, 0x4d, 0xde, 0xef, +}; +static const unsigned char kat1617_addin0[] = { + 0x13, 0x44, 0xf9, 0x7a, 0x17, 0xaf, 0xb3, 0xfb, 0xf8, 0x4f, 0x0b, 0xbf, + 0xee, 0x49, 0xba, 0x10, +}; +static const unsigned char kat1617_addin1[] = { + 0x30, 0x4f, 0xbd, 0xe8, 0xe0, 0x73, 0x4e, 0x63, 0x71, 0xb5, 0xb8, 0x0b, + 0xd2, 0x2d, 0xd4, 0x2e, +}; +static const unsigned char kat1617_retbits[] = { + 0xea, 0xb0, 0xc7, 0x66, 0x14, 0x25, 0x0b, 0xf3, 0xd0, 0xb1, 0x93, 0x7e, + 0x8b, 0x56, 0xcd, 0xe6, 0xbd, 0x01, 0xd6, 0x26, 0x44, 0xdc, 0x88, 0x55, + 0xf0, 0xd4, 0x44, 0xb1, 0x90, 0xc2, 0x1e, 0xb7, 0x43, 0x03, 0xeb, 0x5c, + 0x3b, 0x65, 0x12, 0x59, 0xed, 0x5c, 0x41, 0x50, 0x63, 0x3a, 0x92, 0xf0, + 0xeb, 0x52, 0xb9, 0x42, 0x2a, 0x5b, 0xc4, 0xa0, 0x94, 0xfd, 0xb6, 0xd0, + 0x74, 0x75, 0x8e, 0xc0, +}; +static const struct drbg_kat_pr_false kat1617_t = { + 11, kat1617_entropyin, kat1617_nonce, kat1617_persstr, + kat1617_entropyinreseed, kat1617_addinreseed, kat1617_addin0, + kat1617_addin1, kat1617_retbits +}; +static const struct drbg_kat kat1617 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1617_t +}; + +static const unsigned char kat1618_entropyin[] = { + 0xdc, 0x54, 0xc3, 0xca, 0xf3, 0x70, 0xe3, 0x8f, 0xc0, 0x70, 0x7b, 0xbc, + 0x19, 0x85, 0x1b, 0xe1, +}; +static const unsigned char kat1618_nonce[] = { + 0x9f, 0x39, 0x71, 0x06, 0xf6, 0xe7, 0x09, 0x6b, +}; +static const unsigned char kat1618_persstr[] = { + 0x05, 0xa4, 0x60, 0xe3, 0x68, 0xb5, 0xbe, 0xf6, 0x8d, 0x38, 0x32, 0x25, + 0x0a, 0x75, 0xa1, 0x1c, +}; +static const unsigned char kat1618_entropyinreseed[] = { + 0xd8, 0xae, 0x13, 0x47, 0x82, 0xa7, 0xda, 0x3e, 0x01, 0xd8, 0xb4, 0x6d, + 0x20, 0x30, 0x7b, 0x57, +}; +static const unsigned char kat1618_addinreseed[] = { + 0x11, 0xbf, 0x57, 0xa2, 0xca, 0xb8, 0x66, 0x51, 0x0f, 0x7a, 0xb7, 0x24, + 0xc7, 0x43, 0xc7, 0xd7, +}; +static const unsigned char kat1618_addin0[] = { + 0x00, 0xd7, 0x5e, 0x2b, 0x56, 0xb9, 0xcd, 0x45, 0xf1, 0xfb, 0x04, 0xe2, + 0xd3, 0x9d, 0xca, 0x0b, +}; +static const unsigned char kat1618_addin1[] = { + 0x57, 0x17, 0xb7, 0x01, 0xb9, 0x69, 0xad, 0x32, 0x52, 0xd9, 0x7f, 0x5f, + 0x2f, 0x89, 0x20, 0x99, +}; +static const unsigned char kat1618_retbits[] = { + 0x22, 0x11, 0xb8, 0xf7, 0xdd, 0x5c, 0xca, 0xd5, 0x20, 0x4c, 0xa9, 0x83, + 0x13, 0x1a, 0xa2, 0x15, 0x36, 0x4d, 0xae, 0xed, 0x60, 0x83, 0xf2, 0x42, + 0x14, 0x1a, 0x54, 0xdf, 0x64, 0xf6, 0xba, 0x95, 0x97, 0x76, 0x9d, 0xbf, + 0xc5, 0x43, 0x9c, 0x2a, 0xc2, 0x2a, 0x10, 0x61, 0xee, 0x12, 0x63, 0x1b, + 0x23, 0xdc, 0x26, 0x5e, 0x64, 0xde, 0xcf, 0xae, 0x4d, 0x7e, 0x53, 0x1f, + 0x04, 0xea, 0x01, 0x66, +}; +static const struct drbg_kat_pr_false kat1618_t = { + 12, kat1618_entropyin, kat1618_nonce, kat1618_persstr, + kat1618_entropyinreseed, kat1618_addinreseed, kat1618_addin0, + kat1618_addin1, kat1618_retbits +}; +static const struct drbg_kat kat1618 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1618_t +}; + +static const unsigned char kat1619_entropyin[] = { + 0xf5, 0x13, 0x72, 0x2a, 0x1f, 0xab, 0x9c, 0x61, 0xaa, 0xa3, 0xfc, 0x99, + 0x51, 0x30, 0xa3, 0x0c, +}; +static const unsigned char kat1619_nonce[] = { + 0xb3, 0x9d, 0x9c, 0x89, 0x5e, 0x74, 0x06, 0x43, +}; +static const unsigned char kat1619_persstr[] = { + 0x2e, 0xb5, 0x58, 0xba, 0x9e, 0xf0, 0x93, 0x60, 0xba, 0xdb, 0xc5, 0x0a, + 0xdf, 0xe9, 0x89, 0xe7, +}; +static const unsigned char kat1619_entropyinreseed[] = { + 0x0d, 0x39, 0x8b, 0xc9, 0x73, 0x16, 0x15, 0x3c, 0x2a, 0xee, 0x28, 0x0a, + 0xb9, 0x0f, 0xa6, 0xf2, +}; +static const unsigned char kat1619_addinreseed[] = { + 0xc5, 0xf0, 0x38, 0xa4, 0x36, 0x3e, 0xc1, 0x59, 0x5e, 0x56, 0xc5, 0x2d, + 0x12, 0xed, 0x4a, 0x7f, +}; +static const unsigned char kat1619_addin0[] = { + 0xb9, 0x83, 0xc3, 0x08, 0x62, 0xb0, 0x76, 0x1c, 0x60, 0x1b, 0x19, 0xb0, + 0x10, 0xa7, 0xc3, 0x6b, +}; +static const unsigned char kat1619_addin1[] = { + 0xa5, 0x13, 0x92, 0x0a, 0x6c, 0x6c, 0xd4, 0x0e, 0xc4, 0x6e, 0xd0, 0x77, + 0xab, 0xd0, 0xbb, 0x4c, +}; +static const unsigned char kat1619_retbits[] = { + 0x84, 0x68, 0x9e, 0xe8, 0x47, 0xb4, 0xae, 0x30, 0x1c, 0x36, 0x94, 0xb0, + 0x74, 0x63, 0x31, 0xe9, 0x07, 0xea, 0xf6, 0x0f, 0x8c, 0xdd, 0xf0, 0x89, + 0x95, 0x9b, 0xe7, 0xc9, 0x05, 0x72, 0xc3, 0xbf, 0x63, 0xec, 0x70, 0xd1, + 0x81, 0x24, 0xad, 0xad, 0x1f, 0xff, 0xbd, 0x0f, 0x00, 0xb6, 0x46, 0x99, + 0x8a, 0xc1, 0xe8, 0x64, 0x9a, 0x76, 0x9d, 0xc4, 0x50, 0x62, 0xb9, 0x74, + 0x1b, 0xd6, 0x86, 0x15, +}; +static const struct drbg_kat_pr_false kat1619_t = { + 13, kat1619_entropyin, kat1619_nonce, kat1619_persstr, + kat1619_entropyinreseed, kat1619_addinreseed, kat1619_addin0, + kat1619_addin1, kat1619_retbits +}; +static const struct drbg_kat kat1619 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1619_t +}; + +static const unsigned char kat1620_entropyin[] = { + 0x83, 0x5e, 0xe6, 0xc4, 0x44, 0xf5, 0xd7, 0x14, 0xa5, 0x2f, 0xc8, 0x2a, + 0xb2, 0x7a, 0x37, 0x19, +}; +static const unsigned char kat1620_nonce[] = { + 0xca, 0x12, 0x68, 0xda, 0x49, 0xf4, 0xf5, 0xf9, +}; +static const unsigned char kat1620_persstr[] = { + 0x09, 0x04, 0xaa, 0x87, 0xa1, 0xca, 0x57, 0xa2, 0x27, 0x41, 0xf8, 0x6b, + 0x5e, 0x7d, 0xb4, 0x0f, +}; +static const unsigned char kat1620_entropyinreseed[] = { + 0x33, 0xe8, 0xcf, 0x06, 0x47, 0x91, 0x59, 0x1c, 0xe4, 0xf3, 0x17, 0xb2, + 0xff, 0xbe, 0x34, 0xdd, +}; +static const unsigned char kat1620_addinreseed[] = { + 0x06, 0xa0, 0x62, 0xb0, 0x0e, 0xc4, 0xf9, 0x5f, 0xa4, 0x28, 0x4d, 0xd7, + 0xbb, 0x34, 0x41, 0xaa, +}; +static const unsigned char kat1620_addin0[] = { + 0xd4, 0x43, 0x4a, 0x19, 0xa8, 0xbf, 0xad, 0x8d, 0xd1, 0xc7, 0xa4, 0xd3, + 0x0d, 0x0c, 0x51, 0x1d, +}; +static const unsigned char kat1620_addin1[] = { + 0xe6, 0xc5, 0xe3, 0xc6, 0x12, 0x0b, 0x14, 0x53, 0x5f, 0x14, 0x9c, 0x6d, + 0x4d, 0x52, 0x3a, 0x0c, +}; +static const unsigned char kat1620_retbits[] = { + 0x94, 0x95, 0x22, 0xac, 0xa9, 0xd3, 0x5e, 0x73, 0xb2, 0x84, 0x48, 0xd4, + 0x22, 0x7e, 0xfc, 0xa8, 0xb2, 0x1c, 0xf0, 0x3e, 0xa0, 0x5e, 0x64, 0x83, + 0xdd, 0x77, 0x7a, 0xf1, 0xe4, 0x51, 0xd2, 0xb9, 0x8b, 0x6f, 0x61, 0xee, + 0xf5, 0x86, 0x22, 0x3a, 0x21, 0x2c, 0xf0, 0xe4, 0xad, 0xb5, 0x1c, 0x92, + 0xbc, 0xb6, 0x13, 0x68, 0xdc, 0x71, 0x1f, 0x3e, 0xf0, 0x9f, 0xe7, 0x56, + 0x66, 0x0f, 0xf2, 0xd9, +}; +static const struct drbg_kat_pr_false kat1620_t = { + 14, kat1620_entropyin, kat1620_nonce, kat1620_persstr, + kat1620_entropyinreseed, kat1620_addinreseed, kat1620_addin0, + kat1620_addin1, kat1620_retbits +}; +static const struct drbg_kat kat1620 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1620_t +}; + +static const unsigned char kat1621_entropyin[] = { + 0xb2, 0x5e, 0x5c, 0x41, 0x1c, 0x47, 0xc6, 0x87, 0x11, 0xf6, 0x2a, 0x1c, + 0x95, 0xc6, 0x09, 0x4d, +}; +static const unsigned char kat1621_nonce[] = { + 0xf4, 0x9d, 0xca, 0x3c, 0x2c, 0xd3, 0x16, 0x43, +}; +static const unsigned char kat1621_persstr[] = {0}; +static const unsigned char kat1621_entropyinreseed[] = { + 0x84, 0x80, 0x69, 0x41, 0x37, 0x80, 0x19, 0xab, 0x90, 0xb1, 0xe8, 0x45, + 0xf1, 0xb4, 0xaf, 0xa9, +}; +static const unsigned char kat1621_addinreseed[] = {0}; +static const unsigned char kat1621_addin0[] = {0}; +static const unsigned char kat1621_addin1[] = {0}; +static const unsigned char kat1621_retbits[] = { + 0x25, 0xe5, 0x48, 0x21, 0x8a, 0x2d, 0x85, 0x1d, 0x59, 0x6b, 0x02, 0xed, + 0x1c, 0x18, 0xac, 0xea, 0x5c, 0x5a, 0xbb, 0xf4, 0x38, 0xfb, 0x83, 0x8e, + 0xf4, 0x76, 0x2f, 0x73, 0x6e, 0xb8, 0x9f, 0xc8, 0x70, 0x68, 0xe1, 0x45, + 0x5c, 0x6a, 0xc3, 0x2d, 0x16, 0x2d, 0xc3, 0x2e, 0x54, 0x3c, 0xf5, 0xdf, + 0xf0, 0x9b, 0x9d, 0x3a, 0x19, 0xd7, 0x3b, 0x0d, 0xd2, 0x5c, 0x4e, 0x3f, + 0xbd, 0x0b, 0x93, 0x09, +}; +static const struct drbg_kat_pr_false kat1621_t = { + 0, kat1621_entropyin, kat1621_nonce, kat1621_persstr, + kat1621_entropyinreseed, kat1621_addinreseed, kat1621_addin0, + kat1621_addin1, kat1621_retbits +}; +static const struct drbg_kat kat1621 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1621_t +}; + +static const unsigned char kat1622_entropyin[] = { + 0x2d, 0x8a, 0xf5, 0x66, 0xa2, 0x07, 0x09, 0x5f, 0x36, 0x7c, 0xc2, 0xfd, + 0x6b, 0x55, 0x3f, 0x09, +}; +static const unsigned char kat1622_nonce[] = { + 0xcf, 0x04, 0x3e, 0x8a, 0xc5, 0x6a, 0xf0, 0x56, +}; +static const unsigned char kat1622_persstr[] = {0}; +static const unsigned char kat1622_entropyinreseed[] = { + 0x66, 0x7a, 0xb3, 0xc3, 0x12, 0xfe, 0x19, 0x62, 0xde, 0x00, 0xde, 0x64, + 0x71, 0x73, 0x58, 0x13, +}; +static const unsigned char kat1622_addinreseed[] = {0}; +static const unsigned char kat1622_addin0[] = {0}; +static const unsigned char kat1622_addin1[] = {0}; +static const unsigned char kat1622_retbits[] = { + 0xa9, 0x9d, 0x65, 0xd5, 0x2e, 0xb2, 0xa0, 0xbb, 0x62, 0x15, 0x11, 0x87, + 0x51, 0xfc, 0x3f, 0xcd, 0x3e, 0x59, 0x51, 0xfa, 0x17, 0x01, 0xbc, 0x1d, + 0x58, 0x33, 0x8a, 0x14, 0x81, 0x19, 0x91, 0xfe, 0x43, 0x17, 0x5c, 0x4f, + 0x7d, 0x8e, 0xd4, 0x9d, 0xc6, 0xbe, 0xa2, 0x28, 0x14, 0x70, 0x1e, 0x89, + 0x59, 0x39, 0x57, 0xe5, 0x54, 0x37, 0x33, 0xf9, 0xa5, 0xd7, 0x61, 0xeb, + 0xed, 0x5d, 0xf0, 0xaa, +}; +static const struct drbg_kat_pr_false kat1622_t = { + 1, kat1622_entropyin, kat1622_nonce, kat1622_persstr, + kat1622_entropyinreseed, kat1622_addinreseed, kat1622_addin0, + kat1622_addin1, kat1622_retbits +}; +static const struct drbg_kat kat1622 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1622_t +}; + +static const unsigned char kat1623_entropyin[] = { + 0xd2, 0x7e, 0x9d, 0xc5, 0x0d, 0x02, 0xc1, 0x5c, 0x94, 0xfb, 0x4c, 0x89, + 0xf0, 0xb6, 0x3f, 0x3b, +}; +static const unsigned char kat1623_nonce[] = { + 0x03, 0x70, 0x86, 0x37, 0xe5, 0x2d, 0xbc, 0x43, +}; +static const unsigned char kat1623_persstr[] = {0}; +static const unsigned char kat1623_entropyinreseed[] = { + 0x29, 0xfe, 0x20, 0x3f, 0x73, 0xd1, 0xec, 0x9d, 0x8b, 0x2d, 0xb8, 0x43, + 0xcf, 0x24, 0x93, 0x5c, +}; +static const unsigned char kat1623_addinreseed[] = {0}; +static const unsigned char kat1623_addin0[] = {0}; +static const unsigned char kat1623_addin1[] = {0}; +static const unsigned char kat1623_retbits[] = { + 0x6d, 0x05, 0x86, 0xb9, 0xbb, 0xf7, 0x84, 0x77, 0xd1, 0x76, 0x3a, 0x6b, + 0x13, 0x94, 0x6d, 0xd7, 0xff, 0x3b, 0x64, 0xe1, 0xa0, 0x81, 0x26, 0x53, + 0x27, 0x3b, 0x1b, 0x89, 0x24, 0xa6, 0x10, 0x37, 0xcc, 0x82, 0x47, 0x19, + 0xfa, 0x7a, 0x68, 0x82, 0x0d, 0x6b, 0xeb, 0xf9, 0xea, 0xd1, 0x6b, 0xd8, + 0xe9, 0xb1, 0x68, 0xef, 0x94, 0xfc, 0x0e, 0x8c, 0x10, 0xc7, 0xbd, 0x8e, + 0xee, 0xc0, 0x5e, 0x9e, +}; +static const struct drbg_kat_pr_false kat1623_t = { + 2, kat1623_entropyin, kat1623_nonce, kat1623_persstr, + kat1623_entropyinreseed, kat1623_addinreseed, kat1623_addin0, + kat1623_addin1, kat1623_retbits +}; +static const struct drbg_kat kat1623 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1623_t +}; + +static const unsigned char kat1624_entropyin[] = { + 0x9d, 0x35, 0xf5, 0xde, 0xe9, 0xdf, 0xea, 0x54, 0x3f, 0x12, 0x5e, 0x43, + 0x8b, 0x9d, 0x80, 0x85, +}; +static const unsigned char kat1624_nonce[] = { + 0xa0, 0x71, 0xd5, 0xcc, 0x08, 0x16, 0xf7, 0x70, +}; +static const unsigned char kat1624_persstr[] = {0}; +static const unsigned char kat1624_entropyinreseed[] = { + 0x72, 0x0e, 0xa8, 0x84, 0xc2, 0x53, 0xef, 0x23, 0x50, 0xc2, 0xb7, 0x37, + 0x57, 0xa7, 0xe5, 0x89, +}; +static const unsigned char kat1624_addinreseed[] = {0}; +static const unsigned char kat1624_addin0[] = {0}; +static const unsigned char kat1624_addin1[] = {0}; +static const unsigned char kat1624_retbits[] = { + 0x4d, 0x57, 0x1f, 0xec, 0x7a, 0xc3, 0x22, 0xd1, 0xe0, 0xda, 0x52, 0x57, + 0x13, 0x42, 0xd9, 0x75, 0x25, 0xf2, 0xa5, 0xdd, 0x06, 0x3b, 0xeb, 0x0d, + 0xbb, 0xa8, 0xf1, 0x59, 0x2c, 0xa3, 0x26, 0x3f, 0x46, 0x59, 0x6f, 0xbe, + 0x15, 0xbb, 0x21, 0x87, 0xb4, 0x23, 0x4e, 0x1d, 0x24, 0x9c, 0xab, 0x0b, + 0xd1, 0x8a, 0x70, 0x24, 0xac, 0xaa, 0x60, 0x25, 0x56, 0x56, 0x99, 0xec, + 0x88, 0xca, 0xef, 0xca, +}; +static const struct drbg_kat_pr_false kat1624_t = { + 3, kat1624_entropyin, kat1624_nonce, kat1624_persstr, + kat1624_entropyinreseed, kat1624_addinreseed, kat1624_addin0, + kat1624_addin1, kat1624_retbits +}; +static const struct drbg_kat kat1624 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1624_t +}; + +static const unsigned char kat1625_entropyin[] = { + 0x4f, 0x17, 0x02, 0xfe, 0x2a, 0x6a, 0x2f, 0xeb, 0xfb, 0xcc, 0x28, 0xa4, + 0xa3, 0xcc, 0xa8, 0x95, +}; +static const unsigned char kat1625_nonce[] = { + 0xa8, 0x60, 0x2c, 0x83, 0x29, 0xe5, 0xed, 0x59, +}; +static const unsigned char kat1625_persstr[] = {0}; +static const unsigned char kat1625_entropyinreseed[] = { + 0x7e, 0xac, 0x91, 0x89, 0xd1, 0x72, 0x3e, 0xcd, 0xdc, 0x4d, 0x4c, 0x9b, + 0x7d, 0xa7, 0x51, 0x25, +}; +static const unsigned char kat1625_addinreseed[] = {0}; +static const unsigned char kat1625_addin0[] = {0}; +static const unsigned char kat1625_addin1[] = {0}; +static const unsigned char kat1625_retbits[] = { + 0x17, 0x9a, 0xc5, 0x06, 0x5c, 0x44, 0x6b, 0xb0, 0x21, 0x3a, 0x0f, 0x7a, + 0x65, 0xea, 0x72, 0x87, 0xf0, 0x32, 0x21, 0xaa, 0x0a, 0x53, 0xe3, 0x83, + 0x8c, 0xeb, 0xf1, 0x09, 0xa0, 0x21, 0xb5, 0x20, 0xa3, 0x66, 0x39, 0x1f, + 0xf6, 0x7e, 0xa7, 0x80, 0x6b, 0x42, 0xd6, 0xfb, 0xe3, 0x29, 0xaa, 0x4c, + 0x7e, 0x47, 0x32, 0xd1, 0x6e, 0x32, 0x4a, 0xbe, 0xce, 0x03, 0x34, 0xf9, + 0x95, 0x0f, 0x59, 0xc7, +}; +static const struct drbg_kat_pr_false kat1625_t = { + 4, kat1625_entropyin, kat1625_nonce, kat1625_persstr, + kat1625_entropyinreseed, kat1625_addinreseed, kat1625_addin0, + kat1625_addin1, kat1625_retbits +}; +static const struct drbg_kat kat1625 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1625_t +}; + +static const unsigned char kat1626_entropyin[] = { + 0x5d, 0xf0, 0x1e, 0x87, 0xe1, 0x1d, 0xd2, 0x27, 0x12, 0x78, 0x20, 0xdc, + 0x1d, 0x28, 0x6c, 0xbe, +}; +static const unsigned char kat1626_nonce[] = { + 0x7f, 0xd3, 0xc3, 0xb3, 0x9a, 0xa9, 0x10, 0xd4, +}; +static const unsigned char kat1626_persstr[] = {0}; +static const unsigned char kat1626_entropyinreseed[] = { + 0x11, 0x4e, 0xc0, 0x94, 0x30, 0xb7, 0xc0, 0xf4, 0x3e, 0x41, 0xb6, 0x54, + 0x61, 0xc2, 0x8b, 0xaf, +}; +static const unsigned char kat1626_addinreseed[] = {0}; +static const unsigned char kat1626_addin0[] = {0}; +static const unsigned char kat1626_addin1[] = {0}; +static const unsigned char kat1626_retbits[] = { + 0x9b, 0xd4, 0x58, 0x79, 0xf0, 0xf0, 0xb9, 0xfa, 0xac, 0xd7, 0xc6, 0x47, + 0x43, 0xfd, 0xa1, 0xd0, 0x03, 0x74, 0x42, 0xc3, 0xc5, 0xc5, 0x81, 0xba, + 0xe0, 0x0a, 0x4f, 0xec, 0x9a, 0xd6, 0xa1, 0x17, 0x5a, 0x15, 0xfd, 0xbb, + 0xa5, 0x6e, 0x62, 0x37, 0x39, 0x92, 0x81, 0xf6, 0x87, 0x02, 0x2e, 0x4a, + 0x1c, 0xa0, 0xb4, 0x53, 0x20, 0xae, 0xd2, 0x68, 0xe6, 0x11, 0x1d, 0x92, + 0x60, 0x9a, 0x1b, 0x40, +}; +static const struct drbg_kat_pr_false kat1626_t = { + 5, kat1626_entropyin, kat1626_nonce, kat1626_persstr, + kat1626_entropyinreseed, kat1626_addinreseed, kat1626_addin0, + kat1626_addin1, kat1626_retbits +}; +static const struct drbg_kat kat1626 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1626_t +}; + +static const unsigned char kat1627_entropyin[] = { + 0x60, 0xbf, 0x7d, 0x60, 0x9d, 0x78, 0x10, 0xb0, 0xd4, 0x86, 0xad, 0x95, + 0x32, 0x1c, 0x3b, 0x76, +}; +static const unsigned char kat1627_nonce[] = { + 0xab, 0x8b, 0x81, 0x29, 0xc5, 0xb9, 0x99, 0xff, +}; +static const unsigned char kat1627_persstr[] = {0}; +static const unsigned char kat1627_entropyinreseed[] = { + 0xca, 0xed, 0x65, 0x4d, 0xd8, 0x79, 0x03, 0xa7, 0x84, 0x79, 0x8f, 0x70, + 0xae, 0xa3, 0xd5, 0xc7, +}; +static const unsigned char kat1627_addinreseed[] = {0}; +static const unsigned char kat1627_addin0[] = {0}; +static const unsigned char kat1627_addin1[] = {0}; +static const unsigned char kat1627_retbits[] = { + 0xa4, 0x42, 0x50, 0x7d, 0xc8, 0xe2, 0x3b, 0x83, 0xb9, 0x51, 0xaf, 0x0f, + 0x25, 0xc2, 0x07, 0xb7, 0x31, 0x48, 0xf4, 0x80, 0x0d, 0x45, 0xf3, 0x94, + 0x8a, 0x08, 0x8f, 0xf3, 0xd9, 0x61, 0xd2, 0x1d, 0x93, 0x75, 0x55, 0x80, + 0x56, 0xcd, 0xea, 0x12, 0x28, 0xf2, 0xe9, 0x3f, 0xcd, 0xe8, 0xc3, 0xa4, + 0xce, 0x8c, 0x8d, 0x7f, 0x98, 0x02, 0x8c, 0x8d, 0xcb, 0x1b, 0x38, 0xe7, + 0x95, 0xeb, 0xd4, 0x95, +}; +static const struct drbg_kat_pr_false kat1627_t = { + 6, kat1627_entropyin, kat1627_nonce, kat1627_persstr, + kat1627_entropyinreseed, kat1627_addinreseed, kat1627_addin0, + kat1627_addin1, kat1627_retbits +}; +static const struct drbg_kat kat1627 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1627_t +}; + +static const unsigned char kat1628_entropyin[] = { + 0x33, 0x83, 0x45, 0x50, 0xdb, 0xb5, 0x8b, 0x77, 0xf6, 0xa1, 0x1c, 0x50, + 0x43, 0xda, 0x2c, 0x35, +}; +static const unsigned char kat1628_nonce[] = { + 0x0b, 0x31, 0x57, 0x24, 0xf1, 0xd7, 0xd8, 0x8c, +}; +static const unsigned char kat1628_persstr[] = {0}; +static const unsigned char kat1628_entropyinreseed[] = { + 0xe2, 0xb0, 0x7a, 0x29, 0x0f, 0x04, 0x79, 0x61, 0xeb, 0x10, 0xc2, 0x6e, + 0x58, 0xfe, 0x32, 0xd3, +}; +static const unsigned char kat1628_addinreseed[] = {0}; +static const unsigned char kat1628_addin0[] = {0}; +static const unsigned char kat1628_addin1[] = {0}; +static const unsigned char kat1628_retbits[] = { + 0x28, 0xe7, 0x0d, 0x99, 0xb3, 0xef, 0xd0, 0xd9, 0xee, 0xc9, 0x3f, 0xc5, + 0x33, 0xe3, 0x35, 0xe5, 0x68, 0xee, 0xd5, 0x7c, 0x21, 0xd7, 0xfe, 0xd9, + 0x20, 0xe5, 0x54, 0x46, 0x67, 0xcf, 0xe1, 0x3f, 0xbc, 0x06, 0x3d, 0xd8, + 0x18, 0xf3, 0x1c, 0xc8, 0x31, 0x27, 0xb6, 0x39, 0x45, 0x8f, 0x66, 0x0f, + 0x74, 0x81, 0x66, 0x3a, 0xdc, 0x3b, 0xb1, 0xfd, 0xf9, 0x18, 0x7f, 0xef, + 0x0a, 0x7a, 0x9d, 0xf0, +}; +static const struct drbg_kat_pr_false kat1628_t = { + 7, kat1628_entropyin, kat1628_nonce, kat1628_persstr, + kat1628_entropyinreseed, kat1628_addinreseed, kat1628_addin0, + kat1628_addin1, kat1628_retbits +}; +static const struct drbg_kat kat1628 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1628_t +}; + +static const unsigned char kat1629_entropyin[] = { + 0x3e, 0xd5, 0x95, 0x77, 0xbc, 0xd9, 0xa0, 0x4f, 0x0d, 0x87, 0xf0, 0x97, + 0xb0, 0x6a, 0xad, 0x2c, +}; +static const unsigned char kat1629_nonce[] = { + 0x6a, 0xcc, 0x6c, 0xf7, 0x18, 0x5b, 0xa0, 0xb5, +}; +static const unsigned char kat1629_persstr[] = {0}; +static const unsigned char kat1629_entropyinreseed[] = { + 0x90, 0xd0, 0x4f, 0x84, 0x01, 0x72, 0xe5, 0xf5, 0xcc, 0xb3, 0x4a, 0x11, + 0x3e, 0xc7, 0xfe, 0x9a, +}; +static const unsigned char kat1629_addinreseed[] = {0}; +static const unsigned char kat1629_addin0[] = {0}; +static const unsigned char kat1629_addin1[] = {0}; +static const unsigned char kat1629_retbits[] = { + 0xe3, 0xb8, 0x76, 0x80, 0x23, 0x87, 0x5d, 0xf8, 0x1b, 0x9f, 0xca, 0xa4, + 0xdd, 0x55, 0xed, 0x53, 0x3e, 0xa8, 0xc0, 0x5b, 0x57, 0xf0, 0x2c, 0x2b, + 0xea, 0xd3, 0x27, 0x83, 0x0d, 0xe5, 0x29, 0x31, 0x76, 0x52, 0x3a, 0xea, + 0x97, 0x4b, 0xff, 0x83, 0x52, 0xa7, 0x84, 0x32, 0x1f, 0xe3, 0x08, 0xe1, + 0xb2, 0x89, 0x7b, 0x47, 0x07, 0x8d, 0x25, 0xc2, 0x4f, 0xb8, 0xa1, 0x71, + 0x63, 0x9d, 0x27, 0x6f, +}; +static const struct drbg_kat_pr_false kat1629_t = { + 8, kat1629_entropyin, kat1629_nonce, kat1629_persstr, + kat1629_entropyinreseed, kat1629_addinreseed, kat1629_addin0, + kat1629_addin1, kat1629_retbits +}; +static const struct drbg_kat kat1629 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1629_t +}; + +static const unsigned char kat1630_entropyin[] = { + 0xd1, 0x17, 0x76, 0x26, 0xcc, 0x06, 0x76, 0x73, 0x7d, 0x87, 0x92, 0x99, + 0xd0, 0x1a, 0x5a, 0x24, +}; +static const unsigned char kat1630_nonce[] = { + 0xef, 0x9e, 0xfb, 0x3a, 0x6e, 0xd4, 0x84, 0x8a, +}; +static const unsigned char kat1630_persstr[] = {0}; +static const unsigned char kat1630_entropyinreseed[] = { + 0x19, 0xbe, 0xeb, 0x41, 0xb5, 0x96, 0x9d, 0xf1, 0xab, 0xa6, 0x5d, 0xe8, + 0x54, 0x74, 0xf6, 0xc8, +}; +static const unsigned char kat1630_addinreseed[] = {0}; +static const unsigned char kat1630_addin0[] = {0}; +static const unsigned char kat1630_addin1[] = {0}; +static const unsigned char kat1630_retbits[] = { + 0xee, 0xfa, 0x3b, 0x05, 0xf8, 0x74, 0x2c, 0x2c, 0x31, 0xf7, 0x2f, 0x36, + 0x2a, 0xc9, 0x4e, 0x9c, 0x25, 0x4d, 0x39, 0x8c, 0x2c, 0x7b, 0x43, 0x15, + 0xb6, 0x06, 0x0e, 0x73, 0x3c, 0x80, 0x1f, 0xb9, 0x56, 0xff, 0x06, 0x48, + 0xfa, 0x87, 0x33, 0x8d, 0x5f, 0xeb, 0x1e, 0x33, 0x04, 0xfa, 0xbe, 0xc5, + 0x29, 0xa3, 0x37, 0xe2, 0x94, 0x62, 0xd3, 0x6c, 0x02, 0xa2, 0x75, 0x7d, + 0x0b, 0x31, 0xd4, 0xc6, +}; +static const struct drbg_kat_pr_false kat1630_t = { + 9, kat1630_entropyin, kat1630_nonce, kat1630_persstr, + kat1630_entropyinreseed, kat1630_addinreseed, kat1630_addin0, + kat1630_addin1, kat1630_retbits +}; +static const struct drbg_kat kat1630 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1630_t +}; + +static const unsigned char kat1631_entropyin[] = { + 0x92, 0x87, 0xcc, 0x2b, 0xb1, 0xfe, 0xe8, 0x2a, 0x6d, 0x74, 0xcc, 0xb8, + 0x53, 0x49, 0xc7, 0x5d, +}; +static const unsigned char kat1631_nonce[] = { + 0x22, 0x2d, 0x7a, 0x6f, 0xe2, 0xc1, 0x6c, 0x1f, +}; +static const unsigned char kat1631_persstr[] = {0}; +static const unsigned char kat1631_entropyinreseed[] = { + 0xf5, 0xf6, 0x01, 0xce, 0xbc, 0x5a, 0x7f, 0xb7, 0x3f, 0x14, 0xed, 0x29, + 0x08, 0x01, 0x6c, 0x7d, +}; +static const unsigned char kat1631_addinreseed[] = {0}; +static const unsigned char kat1631_addin0[] = {0}; +static const unsigned char kat1631_addin1[] = {0}; +static const unsigned char kat1631_retbits[] = { + 0xc5, 0x40, 0x51, 0xb9, 0xdb, 0xb9, 0x8b, 0x81, 0x2d, 0xcc, 0x41, 0x7b, + 0x67, 0x15, 0x26, 0x7a, 0x11, 0x72, 0x09, 0xd4, 0x73, 0x58, 0x77, 0xb4, + 0x9e, 0x68, 0xe9, 0x6f, 0x4f, 0xa7, 0x16, 0x7d, 0x6e, 0x13, 0x82, 0x69, + 0x17, 0x6f, 0xbb, 0x4d, 0x5e, 0xbe, 0x53, 0x28, 0x6d, 0xd0, 0xc0, 0xc3, + 0xbc, 0x6b, 0x7f, 0xc6, 0xd7, 0x42, 0x64, 0x45, 0x8a, 0x61, 0xcb, 0x67, + 0x41, 0x8b, 0xe4, 0xb1, +}; +static const struct drbg_kat_pr_false kat1631_t = { + 10, kat1631_entropyin, kat1631_nonce, kat1631_persstr, + kat1631_entropyinreseed, kat1631_addinreseed, kat1631_addin0, + kat1631_addin1, kat1631_retbits +}; +static const struct drbg_kat kat1631 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1631_t +}; + +static const unsigned char kat1632_entropyin[] = { + 0xd8, 0xbe, 0xea, 0x04, 0xe4, 0x55, 0xb1, 0x5c, 0x26, 0x87, 0x02, 0xc7, + 0x87, 0xa5, 0x46, 0xbb, +}; +static const unsigned char kat1632_nonce[] = { + 0xd3, 0x3f, 0x60, 0x34, 0x33, 0xf0, 0x97, 0xc4, +}; +static const unsigned char kat1632_persstr[] = {0}; +static const unsigned char kat1632_entropyinreseed[] = { + 0x3d, 0x0e, 0x20, 0x90, 0xdc, 0xab, 0xf5, 0x21, 0x16, 0x09, 0x62, 0xe5, + 0xee, 0x91, 0x21, 0x32, +}; +static const unsigned char kat1632_addinreseed[] = {0}; +static const unsigned char kat1632_addin0[] = {0}; +static const unsigned char kat1632_addin1[] = {0}; +static const unsigned char kat1632_retbits[] = { + 0x4e, 0xda, 0xaf, 0x5f, 0x46, 0x83, 0x82, 0xca, 0x0a, 0x8c, 0x9b, 0x51, + 0x17, 0x4d, 0x97, 0xc1, 0x06, 0xa2, 0xed, 0x2e, 0xc6, 0x36, 0xe9, 0xb4, + 0xd2, 0x9c, 0x25, 0x99, 0xc0, 0xe0, 0xd6, 0x80, 0xaa, 0xf7, 0xbd, 0xa1, + 0x5b, 0x26, 0x7f, 0x8f, 0x16, 0x18, 0x24, 0xa0, 0x1c, 0xc6, 0x0d, 0x41, + 0x8a, 0x8f, 0x13, 0xe7, 0xcd, 0xe3, 0x1f, 0xbd, 0x2a, 0x85, 0x27, 0x2c, + 0xb5, 0x57, 0x76, 0x79, +}; +static const struct drbg_kat_pr_false kat1632_t = { + 11, kat1632_entropyin, kat1632_nonce, kat1632_persstr, + kat1632_entropyinreseed, kat1632_addinreseed, kat1632_addin0, + kat1632_addin1, kat1632_retbits +}; +static const struct drbg_kat kat1632 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1632_t +}; + +static const unsigned char kat1633_entropyin[] = { + 0xf2, 0x41, 0xf0, 0x59, 0x8f, 0x93, 0x15, 0xdc, 0xad, 0x17, 0xe6, 0x09, + 0x8a, 0x7d, 0x5d, 0x72, +}; +static const unsigned char kat1633_nonce[] = { + 0x3a, 0x79, 0xda, 0x9a, 0xd1, 0x74, 0x9c, 0x15, +}; +static const unsigned char kat1633_persstr[] = {0}; +static const unsigned char kat1633_entropyinreseed[] = { + 0xc5, 0x04, 0x6a, 0x9d, 0x08, 0x79, 0x46, 0xe3, 0xac, 0x1c, 0x54, 0x12, + 0x77, 0x2d, 0x26, 0x2e, +}; +static const unsigned char kat1633_addinreseed[] = {0}; +static const unsigned char kat1633_addin0[] = {0}; +static const unsigned char kat1633_addin1[] = {0}; +static const unsigned char kat1633_retbits[] = { + 0x07, 0xd0, 0xb5, 0x65, 0x09, 0x41, 0x8f, 0xba, 0x49, 0xa3, 0x62, 0xeb, + 0x47, 0xc3, 0xe2, 0x30, 0xb9, 0x32, 0x93, 0x04, 0xc0, 0xa4, 0x47, 0x89, + 0x49, 0x58, 0x6c, 0xb1, 0xfe, 0x28, 0xb1, 0xd0, 0x48, 0x0c, 0x4f, 0x44, + 0x3b, 0x04, 0xb0, 0xa2, 0xdd, 0x12, 0xce, 0xd3, 0xd7, 0x21, 0xf1, 0x3e, + 0x7f, 0x1b, 0xc0, 0xed, 0x07, 0x4b, 0xcc, 0x08, 0x47, 0xca, 0x0e, 0xfe, + 0x7f, 0xcb, 0xc3, 0x63, +}; +static const struct drbg_kat_pr_false kat1633_t = { + 12, kat1633_entropyin, kat1633_nonce, kat1633_persstr, + kat1633_entropyinreseed, kat1633_addinreseed, kat1633_addin0, + kat1633_addin1, kat1633_retbits +}; +static const struct drbg_kat kat1633 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1633_t +}; + +static const unsigned char kat1634_entropyin[] = { + 0x8a, 0x40, 0xd5, 0x80, 0xe5, 0x3b, 0xdb, 0xbc, 0xfd, 0x9f, 0x49, 0xcb, + 0x76, 0x56, 0xe3, 0xa2, +}; +static const unsigned char kat1634_nonce[] = { + 0xd4, 0x12, 0x9f, 0xc3, 0x72, 0x4c, 0x6d, 0x41, +}; +static const unsigned char kat1634_persstr[] = {0}; +static const unsigned char kat1634_entropyinreseed[] = { + 0x88, 0xee, 0xad, 0xc3, 0x2c, 0x34, 0x87, 0xcb, 0x07, 0x45, 0x43, 0xab, + 0xf2, 0x24, 0x76, 0x43, +}; +static const unsigned char kat1634_addinreseed[] = {0}; +static const unsigned char kat1634_addin0[] = {0}; +static const unsigned char kat1634_addin1[] = {0}; +static const unsigned char kat1634_retbits[] = { + 0x6a, 0x02, 0xe4, 0xc3, 0xc8, 0x14, 0xf7, 0x5f, 0x65, 0x18, 0xfb, 0x2a, + 0x52, 0x95, 0xa0, 0x5c, 0x5a, 0xf4, 0x91, 0xb6, 0x43, 0x89, 0xf9, 0x16, + 0x11, 0x79, 0xaf, 0x54, 0x36, 0xa5, 0x2a, 0x5e, 0xcd, 0xbc, 0x07, 0x31, + 0xde, 0xda, 0xf9, 0x5a, 0x24, 0xdc, 0x56, 0xec, 0x63, 0x4c, 0x97, 0x45, + 0xb6, 0xcd, 0x33, 0x3a, 0x6d, 0xe9, 0x60, 0x4d, 0x18, 0xa5, 0x18, 0x7a, + 0xc7, 0xcc, 0x9a, 0x1d, +}; +static const struct drbg_kat_pr_false kat1634_t = { + 13, kat1634_entropyin, kat1634_nonce, kat1634_persstr, + kat1634_entropyinreseed, kat1634_addinreseed, kat1634_addin0, + kat1634_addin1, kat1634_retbits +}; +static const struct drbg_kat kat1634 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1634_t +}; + +static const unsigned char kat1635_entropyin[] = { + 0x07, 0x56, 0xb7, 0x33, 0x1d, 0x1c, 0x5b, 0x85, 0x52, 0xf1, 0x04, 0x73, + 0x4a, 0x4e, 0x4f, 0x5c, +}; +static const unsigned char kat1635_nonce[] = { + 0x17, 0x78, 0xbc, 0x41, 0x30, 0xec, 0xfd, 0x4f, +}; +static const unsigned char kat1635_persstr[] = {0}; +static const unsigned char kat1635_entropyinreseed[] = { + 0x48, 0x8e, 0xd1, 0x5d, 0xce, 0x02, 0xe3, 0xc2, 0xe3, 0xee, 0x57, 0x12, + 0x60, 0xfe, 0x73, 0x4c, +}; +static const unsigned char kat1635_addinreseed[] = {0}; +static const unsigned char kat1635_addin0[] = {0}; +static const unsigned char kat1635_addin1[] = {0}; +static const unsigned char kat1635_retbits[] = { + 0x8e, 0xa1, 0x97, 0x96, 0x34, 0x72, 0xda, 0x04, 0x30, 0xaa, 0xb9, 0xc3, + 0x1b, 0x91, 0xb5, 0xf9, 0x59, 0x24, 0xe7, 0xc8, 0xa3, 0x4c, 0x26, 0x25, + 0x27, 0x7d, 0xdb, 0xdf, 0xf5, 0x51, 0xb8, 0x37, 0xf4, 0x08, 0x96, 0xf1, + 0x33, 0xf7, 0xf6, 0x85, 0x5f, 0xbb, 0xbc, 0xb1, 0x97, 0xd4, 0xb2, 0x22, + 0xac, 0xb3, 0xc0, 0xd0, 0x4d, 0x1c, 0xff, 0xc3, 0x41, 0x19, 0x47, 0xa5, + 0x8b, 0x57, 0x16, 0x6b, +}; +static const struct drbg_kat_pr_false kat1635_t = { + 14, kat1635_entropyin, kat1635_nonce, kat1635_persstr, + kat1635_entropyinreseed, kat1635_addinreseed, kat1635_addin0, + kat1635_addin1, kat1635_retbits +}; +static const struct drbg_kat kat1635 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat1635_t +}; + +static const unsigned char kat1636_entropyin[] = { + 0x09, 0x6a, 0xf1, 0x70, 0x4b, 0xca, 0xb3, 0x13, 0xf8, 0xa4, 0xe9, 0xa2, + 0xb1, 0xed, 0x50, 0x6e, +}; +static const unsigned char kat1636_nonce[] = { + 0x58, 0xf0, 0xeb, 0x13, 0x75, 0xa0, 0xbd, 0x20, +}; +static const unsigned char kat1636_persstr[] = {0}; +static const unsigned char kat1636_entropyinreseed[] = { + 0x4b, 0x55, 0x79, 0xcd, 0x54, 0x8b, 0xf9, 0xea, 0xf3, 0xf1, 0x75, 0x45, + 0x96, 0x13, 0xf3, 0xc8, +}; +static const unsigned char kat1636_addinreseed[] = { + 0x2f, 0x23, 0x3b, 0x8d, 0x01, 0x24, 0xb7, 0xa0, 0xac, 0x81, 0xce, 0xe2, + 0xea, 0x1e, 0x7e, 0xf4, +}; +static const unsigned char kat1636_addin0[] = { + 0x19, 0xf8, 0xdb, 0xdc, 0xc7, 0x78, 0x51, 0xf3, 0x6b, 0x40, 0x05, 0x90, + 0x86, 0x20, 0xe4, 0x03, +}; +static const unsigned char kat1636_addin1[] = { + 0xeb, 0x89, 0x42, 0x22, 0x93, 0xb9, 0xc9, 0xaa, 0x20, 0xa5, 0x0c, 0x42, + 0x9e, 0xbd, 0xad, 0x6e, +}; +static const unsigned char kat1636_retbits[] = { + 0x82, 0x44, 0x51, 0xfd, 0x98, 0x19, 0xef, 0x4e, 0x30, 0x0e, 0xa6, 0xea, + 0xa1, 0xd2, 0x05, 0x12, 0xfa, 0xd1, 0xa6, 0xce, 0xa4, 0x3c, 0x47, 0xa9, + 0x2d, 0xc5, 0x07, 0x56, 0xb5, 0x91, 0x7b, 0x84, 0x88, 0x87, 0xe7, 0x05, + 0xb1, 0x7d, 0x71, 0x78, 0x15, 0xa5, 0xf6, 0xc3, 0xbb, 0xc0, 0xf4, 0xb3, + 0xe1, 0xb3, 0x92, 0x51, 0x9e, 0x5e, 0x71, 0x47, 0xda, 0x12, 0x6f, 0xd0, + 0xc5, 0x8a, 0x25, 0xbd, +}; +static const struct drbg_kat_pr_false kat1636_t = { + 0, kat1636_entropyin, kat1636_nonce, kat1636_persstr, + kat1636_entropyinreseed, kat1636_addinreseed, kat1636_addin0, + kat1636_addin1, kat1636_retbits +}; +static const struct drbg_kat kat1636 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1636_t +}; + +static const unsigned char kat1637_entropyin[] = { + 0x47, 0x96, 0x55, 0xc2, 0x06, 0x72, 0xdb, 0x0e, 0xaa, 0xbf, 0xd8, 0x9b, + 0x82, 0x2f, 0x03, 0x0f, +}; +static const unsigned char kat1637_nonce[] = { + 0xac, 0x04, 0x35, 0x95, 0x5c, 0x09, 0x76, 0xde, +}; +static const unsigned char kat1637_persstr[] = {0}; +static const unsigned char kat1637_entropyinreseed[] = { + 0xbe, 0x00, 0x06, 0x29, 0xc3, 0x1e, 0xb6, 0xd6, 0x6b, 0x09, 0x9d, 0xad, + 0x3a, 0xeb, 0xed, 0x35, +}; +static const unsigned char kat1637_addinreseed[] = { + 0xde, 0x2f, 0x66, 0x25, 0x0a, 0x05, 0x3f, 0x6f, 0x3f, 0xf1, 0xf1, 0xf3, + 0xe3, 0x1c, 0x0e, 0xdc, +}; +static const unsigned char kat1637_addin0[] = { + 0x6f, 0xf2, 0xba, 0x8f, 0xe3, 0x4c, 0x1d, 0x08, 0xe5, 0x5e, 0x70, 0x0a, + 0x77, 0x30, 0xc2, 0x3b, +}; +static const unsigned char kat1637_addin1[] = { + 0xa2, 0xc9, 0x66, 0x07, 0xa2, 0xe3, 0x1a, 0x5d, 0xd1, 0x0c, 0x82, 0x1e, + 0xc0, 0x53, 0xe2, 0xfe, +}; +static const unsigned char kat1637_retbits[] = { + 0xff, 0xcd, 0xde, 0x31, 0xbc, 0xce, 0x01, 0x6d, 0x9f, 0xba, 0xcb, 0xbe, + 0x8b, 0xe4, 0x62, 0x1b, 0xa8, 0x4f, 0x8c, 0x97, 0xfb, 0xd0, 0xa0, 0x37, + 0x8e, 0xe1, 0x34, 0xe8, 0xd4, 0x12, 0x4a, 0x5f, 0x12, 0x98, 0xa2, 0xcb, + 0x0e, 0x8c, 0x1b, 0xe8, 0xc6, 0x58, 0x7c, 0x60, 0x0a, 0xb2, 0x72, 0xfb, + 0xbe, 0x30, 0xbb, 0xb1, 0x5a, 0x8f, 0x8f, 0xab, 0x68, 0xc3, 0xe8, 0x22, + 0xfe, 0xe7, 0x10, 0x0d, +}; +static const struct drbg_kat_pr_false kat1637_t = { + 1, kat1637_entropyin, kat1637_nonce, kat1637_persstr, + kat1637_entropyinreseed, kat1637_addinreseed, kat1637_addin0, + kat1637_addin1, kat1637_retbits +}; +static const struct drbg_kat kat1637 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1637_t +}; + +static const unsigned char kat1638_entropyin[] = { + 0xf6, 0xcc, 0x98, 0x59, 0xa8, 0x81, 0x1d, 0x24, 0x7e, 0x93, 0x42, 0x58, + 0x78, 0x64, 0xd4, 0x53, +}; +static const unsigned char kat1638_nonce[] = { + 0x70, 0x2f, 0x64, 0xb7, 0x91, 0x2a, 0x61, 0xd9, +}; +static const unsigned char kat1638_persstr[] = {0}; +static const unsigned char kat1638_entropyinreseed[] = { + 0xbf, 0x7b, 0x10, 0x0a, 0x23, 0x54, 0xf6, 0x00, 0x62, 0x21, 0x23, 0xd2, + 0x1e, 0x61, 0xb2, 0x2d, +}; +static const unsigned char kat1638_addinreseed[] = { + 0x92, 0x50, 0xfe, 0x41, 0x9e, 0xbf, 0xba, 0xb0, 0xec, 0x7c, 0x5b, 0x8c, + 0xb9, 0xe1, 0x5e, 0x6f, +}; +static const unsigned char kat1638_addin0[] = { + 0xa2, 0xb1, 0xf0, 0xac, 0x23, 0x0e, 0xb0, 0x5f, 0x99, 0xc0, 0x0f, 0x02, + 0x8e, 0xa8, 0xfb, 0xf5, +}; +static const unsigned char kat1638_addin1[] = { + 0x02, 0xb1, 0x47, 0x1a, 0xce, 0x23, 0x30, 0xcb, 0x99, 0x90, 0xe2, 0xb3, + 0x3f, 0x7d, 0x2f, 0xe2, +}; +static const unsigned char kat1638_retbits[] = { + 0xd8, 0x65, 0xd2, 0x38, 0x47, 0xd0, 0xae, 0x11, 0x3b, 0xa0, 0x69, 0xb6, + 0x45, 0x64, 0x9b, 0x1e, 0x8d, 0x97, 0x64, 0xc4, 0xb8, 0x25, 0x6b, 0x90, + 0x64, 0x60, 0x14, 0x15, 0xdf, 0x62, 0x00, 0xed, 0x92, 0xab, 0x18, 0x65, + 0x24, 0x37, 0x7d, 0x0f, 0x97, 0x03, 0x61, 0xb6, 0x6d, 0x07, 0x48, 0x62, + 0xe7, 0x63, 0x89, 0x4f, 0xc1, 0xf9, 0x3a, 0x9c, 0xdb, 0x64, 0x5c, 0xa6, + 0xd8, 0xe4, 0x44, 0x9c, +}; +static const struct drbg_kat_pr_false kat1638_t = { + 2, kat1638_entropyin, kat1638_nonce, kat1638_persstr, + kat1638_entropyinreseed, kat1638_addinreseed, kat1638_addin0, + kat1638_addin1, kat1638_retbits +}; +static const struct drbg_kat kat1638 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1638_t +}; + +static const unsigned char kat1639_entropyin[] = { + 0xcc, 0xc6, 0xad, 0x2d, 0xd9, 0x31, 0x8d, 0x61, 0xbe, 0xf5, 0x39, 0x0e, + 0x0e, 0x5f, 0xe9, 0x1f, +}; +static const unsigned char kat1639_nonce[] = { + 0x6d, 0xdb, 0x3c, 0xd3, 0x78, 0xfa, 0x31, 0x7a, +}; +static const unsigned char kat1639_persstr[] = {0}; +static const unsigned char kat1639_entropyinreseed[] = { + 0x9e, 0xab, 0x54, 0xe7, 0x43, 0xac, 0x5e, 0xc4, 0x97, 0x7c, 0xad, 0x57, + 0x53, 0x2f, 0x81, 0xd1, +}; +static const unsigned char kat1639_addinreseed[] = { + 0xb0, 0x2c, 0x69, 0xda, 0x73, 0x58, 0xe8, 0x25, 0x25, 0xa5, 0x03, 0xd7, + 0xb7, 0x24, 0xd1, 0x5d, +}; +static const unsigned char kat1639_addin0[] = { + 0x1c, 0xd7, 0x22, 0xa3, 0x93, 0x2d, 0xb2, 0x12, 0xf9, 0x27, 0xa4, 0xe0, + 0x1f, 0x7e, 0x71, 0x32, +}; +static const unsigned char kat1639_addin1[] = { + 0x72, 0xc7, 0xfb, 0xbf, 0xb6, 0x6c, 0x1c, 0x74, 0x4f, 0xe1, 0x4f, 0x39, + 0xeb, 0x4f, 0x68, 0xaa, +}; +static const unsigned char kat1639_retbits[] = { + 0xe1, 0xae, 0xca, 0xd7, 0xb5, 0x8d, 0x69, 0x7a, 0xdb, 0x10, 0xfd, 0xf6, + 0x4b, 0x55, 0x0e, 0xbb, 0xdd, 0x72, 0x14, 0x6d, 0xcb, 0x97, 0x34, 0x64, + 0xf2, 0x3a, 0xde, 0x84, 0x56, 0xbc, 0x90, 0x37, 0x22, 0x72, 0xb0, 0xe0, + 0x41, 0xa7, 0x1d, 0x4e, 0x0b, 0x63, 0x5a, 0x13, 0xb5, 0x75, 0x16, 0x3a, + 0x81, 0x09, 0xe9, 0xc9, 0xab, 0xe6, 0x93, 0x29, 0x6d, 0x74, 0x85, 0xe7, + 0x2d, 0x58, 0x6c, 0x66, +}; +static const struct drbg_kat_pr_false kat1639_t = { + 3, kat1639_entropyin, kat1639_nonce, kat1639_persstr, + kat1639_entropyinreseed, kat1639_addinreseed, kat1639_addin0, + kat1639_addin1, kat1639_retbits +}; +static const struct drbg_kat kat1639 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1639_t +}; + +static const unsigned char kat1640_entropyin[] = { + 0xfb, 0x39, 0xe5, 0xb3, 0xd0, 0xd1, 0x3d, 0x19, 0xa9, 0xac, 0xa7, 0x61, + 0xe6, 0xd6, 0xda, 0xc1, +}; +static const unsigned char kat1640_nonce[] = { + 0xa8, 0x4c, 0x3d, 0xec, 0x8f, 0xd8, 0xd3, 0xd7, +}; +static const unsigned char kat1640_persstr[] = {0}; +static const unsigned char kat1640_entropyinreseed[] = { + 0xcb, 0x39, 0x17, 0xe8, 0x54, 0x11, 0x7b, 0x54, 0xf8, 0x72, 0xfe, 0x54, + 0xf3, 0x96, 0x42, 0x6e, +}; +static const unsigned char kat1640_addinreseed[] = { + 0x12, 0x01, 0xc0, 0x48, 0x86, 0xbe, 0xf5, 0xf8, 0x76, 0xae, 0x73, 0x29, + 0x70, 0x80, 0x33, 0x37, +}; +static const unsigned char kat1640_addin0[] = { + 0x04, 0xcc, 0xad, 0x68, 0xea, 0xe5, 0x72, 0x99, 0xee, 0x86, 0x3c, 0x73, + 0x61, 0x97, 0x83, 0x67, +}; +static const unsigned char kat1640_addin1[] = { + 0xc1, 0x1b, 0xa7, 0x99, 0x4d, 0xbf, 0xbe, 0x09, 0xec, 0x91, 0x11, 0x6e, + 0xc3, 0x7a, 0x26, 0xe0, +}; +static const unsigned char kat1640_retbits[] = { + 0x7b, 0x28, 0xab, 0x4b, 0x2d, 0x8f, 0xfe, 0x3c, 0x8a, 0x78, 0xdf, 0x52, + 0x2f, 0x2f, 0x66, 0xe5, 0x37, 0x3c, 0xdb, 0x13, 0xa2, 0xe7, 0xb9, 0x5f, + 0x80, 0xe1, 0x5f, 0xb1, 0x5e, 0x9e, 0xc8, 0x53, 0x81, 0x84, 0x83, 0x94, + 0xb9, 0x10, 0x58, 0xd9, 0xb1, 0x23, 0x0c, 0x1b, 0x52, 0xc7, 0x5d, 0x32, + 0x22, 0x6c, 0xc8, 0x20, 0x6f, 0x78, 0x44, 0x0e, 0x09, 0xf2, 0x93, 0x9f, + 0xa4, 0xd0, 0x95, 0x38, +}; +static const struct drbg_kat_pr_false kat1640_t = { + 4, kat1640_entropyin, kat1640_nonce, kat1640_persstr, + kat1640_entropyinreseed, kat1640_addinreseed, kat1640_addin0, + kat1640_addin1, kat1640_retbits +}; +static const struct drbg_kat kat1640 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1640_t +}; + +static const unsigned char kat1641_entropyin[] = { + 0x02, 0xa8, 0x96, 0xb4, 0x4a, 0x0b, 0xee, 0x21, 0xab, 0x76, 0xf2, 0xb3, + 0xb8, 0x1b, 0x82, 0x2b, +}; +static const unsigned char kat1641_nonce[] = { + 0xf8, 0x73, 0x32, 0xdf, 0x5d, 0x23, 0x4c, 0xc7, +}; +static const unsigned char kat1641_persstr[] = {0}; +static const unsigned char kat1641_entropyinreseed[] = { + 0x81, 0xa5, 0x59, 0x70, 0xbd, 0x1f, 0xfb, 0xcd, 0xc4, 0x4c, 0x05, 0x26, + 0xa3, 0x11, 0x73, 0xa7, +}; +static const unsigned char kat1641_addinreseed[] = { + 0x34, 0xb9, 0xbd, 0xfd, 0x1b, 0x35, 0xb3, 0xc3, 0xcf, 0x18, 0x3f, 0xfc, + 0x1d, 0xb7, 0xea, 0x64, +}; +static const unsigned char kat1641_addin0[] = { + 0xe3, 0x70, 0xda, 0xb5, 0xc5, 0x1f, 0x4e, 0xbe, 0xde, 0xc1, 0xce, 0x23, + 0x53, 0xba, 0x2d, 0x3e, +}; +static const unsigned char kat1641_addin1[] = { + 0x2a, 0x9c, 0xb1, 0x9b, 0x53, 0x7a, 0x18, 0xf8, 0x2d, 0xf6, 0xc3, 0x3a, + 0x0a, 0x4c, 0x27, 0x16, +}; +static const unsigned char kat1641_retbits[] = { + 0x9f, 0x54, 0x6c, 0x83, 0xaf, 0xe7, 0xfb, 0x8f, 0xa8, 0x19, 0x40, 0x77, + 0xf9, 0x91, 0x71, 0xe9, 0x78, 0x7a, 0xb3, 0xdd, 0x2c, 0x3b, 0xe0, 0xde, + 0xbb, 0x99, 0x20, 0xf9, 0x08, 0x4d, 0x0d, 0xd1, 0x77, 0xd1, 0x14, 0x3d, + 0x76, 0xfd, 0xea, 0xbe, 0x6c, 0x6d, 0x79, 0x41, 0x65, 0xea, 0x99, 0x60, + 0x26, 0x7d, 0x61, 0x6f, 0x6f, 0x0f, 0xfd, 0x57, 0xae, 0x16, 0xd0, 0x8e, + 0xf5, 0x65, 0x05, 0xc5, +}; +static const struct drbg_kat_pr_false kat1641_t = { + 5, kat1641_entropyin, kat1641_nonce, kat1641_persstr, + kat1641_entropyinreseed, kat1641_addinreseed, kat1641_addin0, + kat1641_addin1, kat1641_retbits +}; +static const struct drbg_kat kat1641 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1641_t +}; + +static const unsigned char kat1642_entropyin[] = { + 0x6b, 0x90, 0x99, 0x43, 0x98, 0xad, 0x0d, 0xaa, 0x3c, 0xa9, 0x82, 0xea, + 0x94, 0x5c, 0x56, 0xda, +}; +static const unsigned char kat1642_nonce[] = { + 0x6b, 0x31, 0xe0, 0x10, 0x15, 0x63, 0xd6, 0xcb, +}; +static const unsigned char kat1642_persstr[] = {0}; +static const unsigned char kat1642_entropyinreseed[] = { + 0x18, 0x90, 0x44, 0xb3, 0x3d, 0xf7, 0xc3, 0x2a, 0x63, 0xd0, 0xb5, 0x13, + 0xc9, 0xa0, 0x80, 0xe0, +}; +static const unsigned char kat1642_addinreseed[] = { + 0x5d, 0xdd, 0x33, 0x2b, 0xe7, 0xdd, 0xaa, 0xa8, 0x6d, 0x47, 0x6e, 0x5f, + 0x49, 0xe1, 0x69, 0xbb, +}; +static const unsigned char kat1642_addin0[] = { + 0x7c, 0xca, 0x79, 0xe6, 0xdc, 0xc0, 0xf1, 0x2c, 0xea, 0xd1, 0x89, 0xfe, + 0x61, 0xd5, 0xd4, 0xfe, +}; +static const unsigned char kat1642_addin1[] = { + 0x95, 0x7f, 0x2b, 0xc6, 0x7a, 0x24, 0x48, 0xaa, 0x69, 0x61, 0xa3, 0x35, + 0x76, 0x50, 0x30, 0x4a, +}; +static const unsigned char kat1642_retbits[] = { + 0x44, 0xef, 0x3b, 0xbd, 0x32, 0x75, 0x80, 0x0b, 0xbe, 0xff, 0xac, 0xa6, + 0xc9, 0x47, 0x93, 0xdc, 0xa2, 0xb0, 0x25, 0xf5, 0x0f, 0x13, 0xbc, 0x57, + 0x2d, 0x75, 0xe9, 0x09, 0xb6, 0xbf, 0xd4, 0xb7, 0xbd, 0xa2, 0x3e, 0x19, + 0xa3, 0x43, 0x46, 0x74, 0x93, 0xd2, 0x3c, 0x16, 0xd8, 0x81, 0x20, 0xfe, + 0x73, 0xe3, 0xa2, 0x46, 0xe5, 0x45, 0xaf, 0x09, 0xce, 0x2d, 0xf0, 0xff, + 0x4e, 0x09, 0x45, 0xda, +}; +static const struct drbg_kat_pr_false kat1642_t = { + 6, kat1642_entropyin, kat1642_nonce, kat1642_persstr, + kat1642_entropyinreseed, kat1642_addinreseed, kat1642_addin0, + kat1642_addin1, kat1642_retbits +}; +static const struct drbg_kat kat1642 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1642_t +}; + +static const unsigned char kat1643_entropyin[] = { + 0xdc, 0xb2, 0x07, 0x2b, 0xa7, 0x46, 0x6c, 0x37, 0x46, 0x1b, 0x75, 0x81, + 0xc4, 0xcd, 0x7a, 0xb2, +}; +static const unsigned char kat1643_nonce[] = { + 0xd5, 0xf8, 0x31, 0x70, 0x90, 0x12, 0x4c, 0xfe, +}; +static const unsigned char kat1643_persstr[] = {0}; +static const unsigned char kat1643_entropyinreseed[] = { + 0xf8, 0xd4, 0xf7, 0x77, 0x6f, 0x53, 0xa7, 0x04, 0x15, 0x35, 0xe6, 0xa2, + 0x16, 0x19, 0x13, 0x78, +}; +static const unsigned char kat1643_addinreseed[] = { + 0xb3, 0xcc, 0xe2, 0x11, 0xf1, 0x06, 0x1d, 0xbd, 0x0a, 0x59, 0x38, 0x4f, + 0x6b, 0xa1, 0x4a, 0x85, +}; +static const unsigned char kat1643_addin0[] = { + 0xfc, 0xfc, 0xd5, 0x5e, 0x35, 0x3b, 0x12, 0x94, 0x47, 0x6b, 0xa9, 0x82, + 0x80, 0xe5, 0x2e, 0x6c, +}; +static const unsigned char kat1643_addin1[] = { + 0xcc, 0x41, 0x57, 0x1b, 0x9a, 0x7e, 0x58, 0xad, 0xf9, 0x63, 0x39, 0x56, + 0x88, 0x7c, 0xab, 0x4d, +}; +static const unsigned char kat1643_retbits[] = { + 0x47, 0x26, 0x9a, 0x35, 0x51, 0x55, 0xdb, 0xd9, 0x9a, 0x6d, 0x9e, 0x5f, + 0x3f, 0x37, 0x79, 0xea, 0xbe, 0x60, 0xf3, 0x73, 0xa7, 0x27, 0x90, 0xd1, + 0x73, 0x46, 0xe8, 0x67, 0x26, 0xe6, 0xb3, 0xb4, 0x6a, 0x01, 0x74, 0xae, + 0x5c, 0x51, 0x59, 0xc0, 0x6c, 0xe9, 0xbe, 0x07, 0x77, 0xd3, 0xd3, 0x6e, + 0x5d, 0x1b, 0x37, 0xb8, 0x47, 0x2e, 0xbb, 0x09, 0x21, 0x3d, 0x3e, 0xd6, + 0x23, 0xfa, 0x3e, 0xf2, +}; +static const struct drbg_kat_pr_false kat1643_t = { + 7, kat1643_entropyin, kat1643_nonce, kat1643_persstr, + kat1643_entropyinreseed, kat1643_addinreseed, kat1643_addin0, + kat1643_addin1, kat1643_retbits +}; +static const struct drbg_kat kat1643 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1643_t +}; + +static const unsigned char kat1644_entropyin[] = { + 0xee, 0x89, 0x77, 0x21, 0xc7, 0x65, 0x8e, 0xdb, 0x43, 0xcb, 0x66, 0xd9, + 0x17, 0x9d, 0x03, 0x75, +}; +static const unsigned char kat1644_nonce[] = { + 0x6f, 0x0c, 0xf5, 0x07, 0x1c, 0x79, 0xb4, 0xa6, +}; +static const unsigned char kat1644_persstr[] = {0}; +static const unsigned char kat1644_entropyinreseed[] = { + 0x2a, 0xd2, 0xc8, 0x5a, 0x34, 0xe4, 0x44, 0x7d, 0x2d, 0xb6, 0x3e, 0x17, + 0x8d, 0xc7, 0x06, 0xc6, +}; +static const unsigned char kat1644_addinreseed[] = { + 0x6f, 0x9a, 0x15, 0x23, 0xcb, 0x3d, 0xde, 0x58, 0x8d, 0x80, 0xe5, 0x20, + 0x99, 0xdf, 0x13, 0xdc, +}; +static const unsigned char kat1644_addin0[] = { + 0xe6, 0x00, 0x88, 0xd6, 0xfe, 0xb5, 0xd7, 0xb8, 0x3a, 0x01, 0x06, 0x56, + 0xcf, 0x99, 0x6c, 0x65, +}; +static const unsigned char kat1644_addin1[] = { + 0x3a, 0x44, 0x43, 0xf3, 0xe9, 0xae, 0x8c, 0x59, 0x29, 0x8c, 0xb5, 0x3a, + 0x8b, 0xd6, 0x05, 0xd6, +}; +static const unsigned char kat1644_retbits[] = { + 0xfc, 0x73, 0x86, 0x29, 0xb7, 0xd5, 0x99, 0x13, 0x81, 0x0b, 0xab, 0x5d, + 0x53, 0xf7, 0xe9, 0xf8, 0x36, 0x9f, 0xf9, 0x27, 0xc4, 0xc3, 0xd7, 0xdc, + 0xb8, 0xc5, 0xd6, 0x16, 0x36, 0xd0, 0x62, 0x27, 0x97, 0x7a, 0x99, 0x7b, + 0x75, 0x77, 0x07, 0xe1, 0xe1, 0x45, 0x7b, 0x1b, 0x8f, 0xff, 0x3f, 0x7e, + 0x48, 0x30, 0xb8, 0x4c, 0x5a, 0xd6, 0xfc, 0x3d, 0x15, 0xac, 0x1a, 0x57, + 0xc5, 0x87, 0x67, 0xb0, +}; +static const struct drbg_kat_pr_false kat1644_t = { + 8, kat1644_entropyin, kat1644_nonce, kat1644_persstr, + kat1644_entropyinreseed, kat1644_addinreseed, kat1644_addin0, + kat1644_addin1, kat1644_retbits +}; +static const struct drbg_kat kat1644 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1644_t +}; + +static const unsigned char kat1645_entropyin[] = { + 0x0e, 0x45, 0xd8, 0xb4, 0xcc, 0x12, 0x23, 0xc0, 0xfa, 0x44, 0xcc, 0x4e, + 0x9b, 0xa0, 0x7a, 0x95, +}; +static const unsigned char kat1645_nonce[] = { + 0x1c, 0x73, 0xa3, 0xe3, 0x6d, 0xa2, 0x48, 0xb5, +}; +static const unsigned char kat1645_persstr[] = {0}; +static const unsigned char kat1645_entropyinreseed[] = { + 0xd8, 0x83, 0x53, 0xf7, 0x82, 0xfd, 0x4f, 0x77, 0xba, 0x5e, 0x4b, 0x74, + 0x15, 0xaa, 0xa7, 0x0d, +}; +static const unsigned char kat1645_addinreseed[] = { + 0x91, 0xd2, 0x2d, 0x86, 0x66, 0xe3, 0xa8, 0x8e, 0x21, 0x73, 0xc7, 0x64, + 0x61, 0x5c, 0x88, 0x48, +}; +static const unsigned char kat1645_addin0[] = { + 0xc1, 0xe7, 0xd9, 0xa0, 0x10, 0xbe, 0x5e, 0xcb, 0xbe, 0xb9, 0xbf, 0x6c, + 0x23, 0x42, 0xd3, 0x61, +}; +static const unsigned char kat1645_addin1[] = { + 0xf8, 0x1d, 0x44, 0xb9, 0x5a, 0x5c, 0x5a, 0x8a, 0x50, 0xb5, 0x85, 0x8b, + 0x98, 0x1e, 0x67, 0x6e, +}; +static const unsigned char kat1645_retbits[] = { + 0x32, 0xbe, 0x02, 0xe9, 0x68, 0x1c, 0x6d, 0xbf, 0xcb, 0x9b, 0xf6, 0x88, + 0xc2, 0xc5, 0x15, 0xd6, 0x36, 0x92, 0xfa, 0xae, 0x3f, 0x5f, 0x76, 0x08, + 0x35, 0x1e, 0xf2, 0x8c, 0x3a, 0xa1, 0xae, 0xdf, 0xe1, 0x0f, 0xab, 0xbb, + 0x2d, 0x69, 0x31, 0x92, 0x90, 0xf6, 0x3f, 0x0e, 0x5e, 0x5b, 0xeb, 0xa9, + 0x1f, 0x2a, 0x5c, 0x26, 0x9f, 0xa7, 0x33, 0x09, 0xf2, 0x32, 0x60, 0xd7, + 0x6d, 0xae, 0x3c, 0xe5, +}; +static const struct drbg_kat_pr_false kat1645_t = { + 9, kat1645_entropyin, kat1645_nonce, kat1645_persstr, + kat1645_entropyinreseed, kat1645_addinreseed, kat1645_addin0, + kat1645_addin1, kat1645_retbits +}; +static const struct drbg_kat kat1645 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1645_t +}; + +static const unsigned char kat1646_entropyin[] = { + 0xc7, 0xad, 0xf6, 0x03, 0x2c, 0xa8, 0x0c, 0x8a, 0xc0, 0xe6, 0x2f, 0x81, + 0x48, 0xca, 0x35, 0x73, +}; +static const unsigned char kat1646_nonce[] = { + 0x7e, 0x54, 0x68, 0x31, 0xf9, 0x48, 0xd5, 0xb1, +}; +static const unsigned char kat1646_persstr[] = {0}; +static const unsigned char kat1646_entropyinreseed[] = { + 0xf4, 0x8c, 0xe4, 0x98, 0xef, 0x65, 0xf5, 0xbb, 0x23, 0x29, 0x85, 0x7d, + 0xba, 0xe6, 0x6d, 0xff, +}; +static const unsigned char kat1646_addinreseed[] = { + 0x84, 0x02, 0x0b, 0x1e, 0xc2, 0xc2, 0xb2, 0xc9, 0x8e, 0x49, 0xcf, 0x7e, + 0x71, 0x60, 0x00, 0x49, +}; +static const unsigned char kat1646_addin0[] = { + 0x60, 0x36, 0xf9, 0x63, 0x89, 0xdb, 0x7c, 0xd1, 0x63, 0x49, 0xbf, 0xed, + 0xcb, 0x80, 0xf4, 0x73, +}; +static const unsigned char kat1646_addin1[] = { + 0x5f, 0x2c, 0xc7, 0x3c, 0x73, 0x12, 0x94, 0xee, 0x13, 0xfd, 0x23, 0x4b, + 0x29, 0xea, 0x10, 0xbd, +}; +static const unsigned char kat1646_retbits[] = { + 0xd2, 0xf2, 0xef, 0x17, 0x95, 0x5c, 0xb9, 0x33, 0x7b, 0x6f, 0xf6, 0x8b, + 0x8d, 0x38, 0xf6, 0x4c, 0x83, 0xca, 0x1e, 0x12, 0xd7, 0x8a, 0xd7, 0x8b, + 0x39, 0xff, 0xb2, 0xc7, 0xc6, 0xd5, 0x5f, 0xde, 0xad, 0xfc, 0x00, 0xbd, + 0x96, 0xd1, 0x23, 0x9f, 0xfd, 0x1a, 0x5f, 0x34, 0x60, 0x20, 0x7a, 0x2f, + 0xc1, 0x92, 0x47, 0x62, 0x77, 0x41, 0x56, 0x17, 0x3a, 0xb0, 0xf5, 0x14, + 0xa9, 0x3d, 0xa1, 0x0b, +}; +static const struct drbg_kat_pr_false kat1646_t = { + 10, kat1646_entropyin, kat1646_nonce, kat1646_persstr, + kat1646_entropyinreseed, kat1646_addinreseed, kat1646_addin0, + kat1646_addin1, kat1646_retbits +}; +static const struct drbg_kat kat1646 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1646_t +}; + +static const unsigned char kat1647_entropyin[] = { + 0x5b, 0x15, 0x45, 0x3c, 0x39, 0x6d, 0xde, 0x5a, 0x82, 0x63, 0xa2, 0x9c, + 0x3e, 0xc1, 0xd9, 0x71, +}; +static const unsigned char kat1647_nonce[] = { + 0xf6, 0xe9, 0x02, 0x60, 0x37, 0x0d, 0xb0, 0xd0, +}; +static const unsigned char kat1647_persstr[] = {0}; +static const unsigned char kat1647_entropyinreseed[] = { + 0x2e, 0x0e, 0x8f, 0xa6, 0x25, 0x41, 0xbd, 0x37, 0xcc, 0xb5, 0xb4, 0x45, + 0xc4, 0xc5, 0xfd, 0xdd, +}; +static const unsigned char kat1647_addinreseed[] = { + 0xb6, 0x15, 0xa8, 0x41, 0xea, 0x7c, 0xe4, 0xc0, 0xf8, 0x5f, 0xb0, 0xcd, + 0xaa, 0x60, 0x23, 0x94, +}; +static const unsigned char kat1647_addin0[] = { + 0xec, 0x2b, 0xa3, 0x53, 0x03, 0x5a, 0x90, 0x10, 0xcd, 0x99, 0xec, 0x92, + 0xfd, 0x8f, 0x26, 0x44, +}; +static const unsigned char kat1647_addin1[] = { + 0xac, 0xe2, 0x25, 0xa7, 0x88, 0xda, 0x7e, 0xfb, 0x41, 0xba, 0x15, 0x56, + 0x22, 0x2f, 0x62, 0x86, +}; +static const unsigned char kat1647_retbits[] = { + 0x3a, 0x92, 0xb2, 0x57, 0x0c, 0x78, 0xc5, 0xd5, 0x42, 0xb9, 0x5e, 0xbb, + 0x0c, 0xbc, 0x43, 0xa5, 0x22, 0x42, 0x6c, 0xaa, 0x84, 0x6f, 0x5a, 0x52, + 0xaf, 0x61, 0xc1, 0x07, 0x70, 0x74, 0x73, 0x36, 0x70, 0x55, 0xc4, 0x45, + 0x53, 0x33, 0x53, 0x16, 0x07, 0x98, 0x5c, 0xd8, 0x12, 0xdb, 0x42, 0xee, + 0x26, 0xfb, 0x2d, 0x69, 0xca, 0x02, 0x10, 0xc0, 0x44, 0x3f, 0xd8, 0xca, + 0x0f, 0xef, 0x1f, 0x89, +}; +static const struct drbg_kat_pr_false kat1647_t = { + 11, kat1647_entropyin, kat1647_nonce, kat1647_persstr, + kat1647_entropyinreseed, kat1647_addinreseed, kat1647_addin0, + kat1647_addin1, kat1647_retbits +}; +static const struct drbg_kat kat1647 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1647_t +}; + +static const unsigned char kat1648_entropyin[] = { + 0x96, 0x76, 0x44, 0xa1, 0x2c, 0x0c, 0xac, 0x92, 0xaa, 0x3c, 0x24, 0x61, + 0x5a, 0x90, 0x2a, 0x28, +}; +static const unsigned char kat1648_nonce[] = { + 0xd3, 0x8e, 0x61, 0x76, 0xc3, 0x7c, 0xee, 0x4c, +}; +static const unsigned char kat1648_persstr[] = {0}; +static const unsigned char kat1648_entropyinreseed[] = { + 0xfe, 0x42, 0xe0, 0x6c, 0x38, 0xa8, 0x1c, 0x45, 0x25, 0x08, 0xee, 0x3d, + 0x5d, 0xbf, 0x4b, 0x58, +}; +static const unsigned char kat1648_addinreseed[] = { + 0x72, 0x3b, 0xa4, 0x72, 0x0d, 0xae, 0x76, 0x09, 0x56, 0x12, 0x14, 0x21, + 0x52, 0xca, 0x8f, 0x79, +}; +static const unsigned char kat1648_addin0[] = { + 0x2b, 0x81, 0xc9, 0x8b, 0x29, 0x24, 0x93, 0x85, 0xb2, 0xce, 0x41, 0xa0, + 0x80, 0xe7, 0x2a, 0x76, +}; +static const unsigned char kat1648_addin1[] = { + 0x13, 0x61, 0x0d, 0x87, 0x45, 0x9c, 0xcc, 0x72, 0xa9, 0xe1, 0x0b, 0x45, + 0x2a, 0xba, 0xd9, 0xc8, +}; +static const unsigned char kat1648_retbits[] = { + 0xdd, 0xe7, 0x1d, 0x2d, 0xd1, 0x03, 0x52, 0x4f, 0x8a, 0x8b, 0xa7, 0xaf, + 0x12, 0xaf, 0xbd, 0xf5, 0x1a, 0xb5, 0x69, 0xc9, 0x97, 0x3e, 0x16, 0x13, + 0x94, 0x58, 0x63, 0x0b, 0x0d, 0xa1, 0x3d, 0x62, 0x40, 0x04, 0x2c, 0x3b, + 0x08, 0x92, 0x45, 0x7e, 0x90, 0x44, 0x63, 0x90, 0xf2, 0x2a, 0x6d, 0x85, + 0x6d, 0x3a, 0x21, 0x28, 0x4f, 0xea, 0x54, 0x68, 0x11, 0xd0, 0x1c, 0x33, + 0x89, 0x6a, 0x4a, 0x1e, +}; +static const struct drbg_kat_pr_false kat1648_t = { + 12, kat1648_entropyin, kat1648_nonce, kat1648_persstr, + kat1648_entropyinreseed, kat1648_addinreseed, kat1648_addin0, + kat1648_addin1, kat1648_retbits +}; +static const struct drbg_kat kat1648 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1648_t +}; + +static const unsigned char kat1649_entropyin[] = { + 0xb7, 0xf3, 0x99, 0xdd, 0x5a, 0x9b, 0x2c, 0x48, 0x69, 0xaa, 0x4a, 0xdd, + 0x46, 0xdb, 0xbe, 0x64, +}; +static const unsigned char kat1649_nonce[] = { + 0xc0, 0x7f, 0x6d, 0xf3, 0x50, 0x5f, 0xe2, 0xc9, +}; +static const unsigned char kat1649_persstr[] = {0}; +static const unsigned char kat1649_entropyinreseed[] = { + 0xa7, 0xc4, 0x9b, 0x25, 0xc4, 0xf4, 0x27, 0x62, 0x57, 0x37, 0x2d, 0x7b, + 0x29, 0xa7, 0xed, 0x64, +}; +static const unsigned char kat1649_addinreseed[] = { + 0x29, 0xc8, 0x86, 0xf9, 0x9c, 0x32, 0xf1, 0xea, 0xff, 0xf5, 0x68, 0x17, + 0x5d, 0x63, 0xc5, 0x8f, +}; +static const unsigned char kat1649_addin0[] = { + 0xaa, 0x3f, 0x8c, 0x15, 0x91, 0x54, 0xaf, 0x33, 0x53, 0x9b, 0xbc, 0xb8, + 0xfc, 0xa2, 0x83, 0x6b, +}; +static const unsigned char kat1649_addin1[] = { + 0x20, 0xe8, 0x40, 0xf7, 0x0e, 0x6d, 0x1d, 0x88, 0x83, 0xde, 0x53, 0xeb, + 0x0d, 0xfe, 0x2e, 0xb0, +}; +static const unsigned char kat1649_retbits[] = { + 0x43, 0xe4, 0x4d, 0x6b, 0xb5, 0x7b, 0x70, 0xfb, 0xc2, 0xe7, 0x4a, 0xf3, + 0x7b, 0xdf, 0x79, 0x11, 0x6f, 0x3e, 0xb0, 0xc0, 0x94, 0x5b, 0xe7, 0x3a, + 0x34, 0xee, 0x90, 0xc0, 0xa7, 0x44, 0x60, 0x09, 0xb4, 0x9f, 0x52, 0xaa, + 0x9c, 0x6a, 0x1d, 0xd9, 0x0d, 0x2b, 0x57, 0xe7, 0xe3, 0x0a, 0x65, 0xd4, + 0x62, 0x68, 0xcf, 0x26, 0x9c, 0xfd, 0x86, 0x23, 0xf7, 0xe2, 0xca, 0xb0, + 0xe0, 0xfb, 0xc6, 0x65, +}; +static const struct drbg_kat_pr_false kat1649_t = { + 13, kat1649_entropyin, kat1649_nonce, kat1649_persstr, + kat1649_entropyinreseed, kat1649_addinreseed, kat1649_addin0, + kat1649_addin1, kat1649_retbits +}; +static const struct drbg_kat kat1649 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1649_t +}; + +static const unsigned char kat1650_entropyin[] = { + 0x71, 0x28, 0x2c, 0x33, 0x99, 0x24, 0x43, 0x50, 0x6e, 0x38, 0x85, 0x54, + 0xad, 0x6f, 0xe8, 0xea, +}; +static const unsigned char kat1650_nonce[] = { + 0xdb, 0x21, 0x40, 0x73, 0xbc, 0xeb, 0xe1, 0x33, +}; +static const unsigned char kat1650_persstr[] = {0}; +static const unsigned char kat1650_entropyinreseed[] = { + 0xa3, 0xaa, 0xaf, 0x03, 0x74, 0x46, 0xf7, 0xc2, 0xaa, 0x1c, 0x20, 0x4a, + 0x33, 0x2d, 0xda, 0x01, +}; +static const unsigned char kat1650_addinreseed[] = { + 0xc9, 0x6f, 0xd8, 0xeb, 0xe8, 0x98, 0x54, 0x19, 0xde, 0x85, 0x89, 0x03, + 0x32, 0x04, 0x41, 0x9c, +}; +static const unsigned char kat1650_addin0[] = { + 0x21, 0x3b, 0x12, 0xdc, 0x91, 0x53, 0x56, 0xa1, 0x28, 0x1f, 0xa0, 0x62, + 0x48, 0x64, 0x1f, 0x93, +}; +static const unsigned char kat1650_addin1[] = { + 0xef, 0x7e, 0x08, 0xce, 0x74, 0x77, 0x0e, 0x30, 0xe5, 0xcc, 0xd8, 0x6a, + 0xb9, 0xfb, 0x06, 0x13, +}; +static const unsigned char kat1650_retbits[] = { + 0x8b, 0x77, 0xd5, 0x33, 0x2e, 0xe6, 0x11, 0x95, 0x28, 0x68, 0x00, 0x49, + 0xaf, 0xf5, 0x74, 0xd0, 0x21, 0x0f, 0x4e, 0x43, 0xf7, 0x58, 0x71, 0xcf, + 0xea, 0x4e, 0xee, 0x70, 0xaf, 0xac, 0x0e, 0x0d, 0xf9, 0x45, 0x78, 0x55, + 0x56, 0x75, 0x4c, 0x21, 0x04, 0x67, 0xdd, 0x58, 0x1e, 0x97, 0xfe, 0x68, + 0x81, 0xd9, 0xf7, 0x21, 0x15, 0xb6, 0x6b, 0xfd, 0xd7, 0x28, 0xe8, 0xf1, + 0x42, 0x5a, 0x40, 0x75, +}; +static const struct drbg_kat_pr_false kat1650_t = { + 14, kat1650_entropyin, kat1650_nonce, kat1650_persstr, + kat1650_entropyinreseed, kat1650_addinreseed, kat1650_addin0, + kat1650_addin1, kat1650_retbits +}; +static const struct drbg_kat kat1650 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat1650_t +}; + +static const unsigned char kat1651_entropyin[] = { + 0x81, 0x05, 0x2d, 0x33, 0x22, 0xa2, 0x60, 0xfc, 0xf3, 0x33, 0x9b, 0x53, + 0xf6, 0xcf, 0x5d, 0x6d, +}; +static const unsigned char kat1651_nonce[] = { + 0x57, 0x30, 0x39, 0x72, 0xab, 0x58, 0xf0, 0x64, +}; +static const unsigned char kat1651_persstr[] = { + 0xc3, 0xce, 0xe8, 0x56, 0x4d, 0x8b, 0xb2, 0xfb, 0x8e, 0xfe, 0x6b, 0x16, + 0xaa, 0x26, 0x16, 0xa6, +}; +static const unsigned char kat1651_entropyinreseed[] = { + 0xc9, 0xb1, 0x03, 0xf3, 0x77, 0x9a, 0xa6, 0x3e, 0x37, 0x98, 0x41, 0xb7, + 0x14, 0x19, 0x6c, 0xf6, +}; +static const unsigned char kat1651_addinreseed[] = {0}; +static const unsigned char kat1651_addin0[] = {0}; +static const unsigned char kat1651_addin1[] = {0}; +static const unsigned char kat1651_retbits[] = { + 0xd5, 0x37, 0x12, 0x48, 0x2c, 0x2b, 0x33, 0x36, 0x40, 0x3c, 0x40, 0xaa, + 0xe1, 0x56, 0x20, 0x3c, 0x58, 0x59, 0xa6, 0xb3, 0xfa, 0xe4, 0xb5, 0x53, + 0xe7, 0x2b, 0x8a, 0x66, 0x87, 0xc0, 0x15, 0x2b, 0xbd, 0xaf, 0xe4, 0x09, + 0x94, 0x39, 0xe1, 0x97, 0xe5, 0xd6, 0x0f, 0x8e, 0x60, 0x2e, 0x5b, 0x55, + 0x0a, 0xeb, 0x73, 0x87, 0xa4, 0x34, 0x7e, 0xcd, 0xe6, 0xe3, 0xa0, 0x42, + 0x88, 0x39, 0x0f, 0x13, +}; +static const struct drbg_kat_pr_false kat1651_t = { + 0, kat1651_entropyin, kat1651_nonce, kat1651_persstr, + kat1651_entropyinreseed, kat1651_addinreseed, kat1651_addin0, + kat1651_addin1, kat1651_retbits +}; +static const struct drbg_kat kat1651 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1651_t +}; + +static const unsigned char kat1652_entropyin[] = { + 0xd7, 0x12, 0xbe, 0x6d, 0xf1, 0xe2, 0x1d, 0xed, 0xd8, 0x88, 0x93, 0x03, + 0x1d, 0xa2, 0x00, 0x9b, +}; +static const unsigned char kat1652_nonce[] = { + 0xfe, 0x56, 0x0d, 0x21, 0x41, 0x84, 0x65, 0x40, +}; +static const unsigned char kat1652_persstr[] = { + 0x49, 0xec, 0x80, 0xb4, 0xf3, 0xf8, 0x53, 0x88, 0xd2, 0xea, 0x74, 0x54, + 0xac, 0x31, 0xbf, 0xcc, +}; +static const unsigned char kat1652_entropyinreseed[] = { + 0xb5, 0xed, 0x3d, 0xd2, 0xf5, 0xe1, 0x9c, 0xbe, 0xdb, 0x9d, 0xa7, 0xb0, + 0xf1, 0x40, 0xc1, 0x82, +}; +static const unsigned char kat1652_addinreseed[] = {0}; +static const unsigned char kat1652_addin0[] = {0}; +static const unsigned char kat1652_addin1[] = {0}; +static const unsigned char kat1652_retbits[] = { + 0x04, 0x22, 0xd6, 0x0c, 0xec, 0xea, 0x42, 0x66, 0x12, 0x04, 0x4a, 0x3e, + 0x97, 0xc4, 0xc9, 0x62, 0x97, 0x5c, 0x86, 0xf5, 0x9b, 0x27, 0x8f, 0x80, + 0xab, 0xb5, 0xb5, 0xd2, 0x05, 0x37, 0xb3, 0x9f, 0x97, 0x93, 0x94, 0xdc, + 0x34, 0x18, 0xd0, 0x04, 0xf3, 0x91, 0x29, 0x7a, 0xf0, 0xfe, 0x5a, 0x17, + 0x42, 0x16, 0x6b, 0xec, 0x5b, 0xc0, 0x13, 0xe2, 0xe7, 0x32, 0x9c, 0xe3, + 0x08, 0xd8, 0xa0, 0xae, +}; +static const struct drbg_kat_pr_false kat1652_t = { + 1, kat1652_entropyin, kat1652_nonce, kat1652_persstr, + kat1652_entropyinreseed, kat1652_addinreseed, kat1652_addin0, + kat1652_addin1, kat1652_retbits +}; +static const struct drbg_kat kat1652 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1652_t +}; + +static const unsigned char kat1653_entropyin[] = { + 0x63, 0x08, 0xf7, 0xcc, 0xbf, 0xe7, 0x46, 0x9b, 0x1a, 0x9d, 0x97, 0x27, + 0x4a, 0x94, 0x03, 0xbb, +}; +static const unsigned char kat1653_nonce[] = { + 0x4f, 0x63, 0xa8, 0x62, 0x80, 0x8a, 0x0b, 0x5a, +}; +static const unsigned char kat1653_persstr[] = { + 0x0a, 0xbf, 0x7c, 0x0b, 0x6e, 0xc5, 0x42, 0x38, 0x74, 0xc1, 0x70, 0x01, + 0xe1, 0x95, 0x34, 0x60, +}; +static const unsigned char kat1653_entropyinreseed[] = { + 0xf2, 0xf8, 0x87, 0x15, 0xe1, 0x98, 0xc7, 0xe3, 0xee, 0x46, 0x52, 0x50, + 0x40, 0xd8, 0xd7, 0xde, +}; +static const unsigned char kat1653_addinreseed[] = {0}; +static const unsigned char kat1653_addin0[] = {0}; +static const unsigned char kat1653_addin1[] = {0}; +static const unsigned char kat1653_retbits[] = { + 0x00, 0x8e, 0x17, 0xda, 0x77, 0x57, 0xaf, 0xbe, 0x5c, 0x5f, 0x2f, 0x79, + 0x08, 0x82, 0xe3, 0x10, 0x4e, 0x23, 0x43, 0x81, 0xba, 0x5a, 0xe3, 0xa9, + 0x9b, 0x7a, 0x45, 0x01, 0x47, 0x97, 0x3f, 0x54, 0x3c, 0x8a, 0xe0, 0x67, + 0x2e, 0xe7, 0x24, 0xea, 0xa4, 0x09, 0x73, 0xf0, 0xb7, 0x24, 0x61, 0x0f, + 0xc5, 0x12, 0x98, 0x12, 0x54, 0xa5, 0x45, 0x34, 0x43, 0xbd, 0x68, 0x25, + 0x3a, 0x67, 0x37, 0x83, +}; +static const struct drbg_kat_pr_false kat1653_t = { + 2, kat1653_entropyin, kat1653_nonce, kat1653_persstr, + kat1653_entropyinreseed, kat1653_addinreseed, kat1653_addin0, + kat1653_addin1, kat1653_retbits +}; +static const struct drbg_kat kat1653 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1653_t +}; + +static const unsigned char kat1654_entropyin[] = { + 0xe8, 0x9d, 0xac, 0x4d, 0x14, 0xab, 0xe1, 0x78, 0x3f, 0xe7, 0x9f, 0x9c, + 0xd7, 0x46, 0x6d, 0xfa, +}; +static const unsigned char kat1654_nonce[] = { + 0x63, 0x2c, 0x72, 0x69, 0x6a, 0x65, 0x75, 0xcf, +}; +static const unsigned char kat1654_persstr[] = { + 0xd1, 0x15, 0x42, 0x6c, 0x6a, 0xbc, 0xfc, 0x94, 0xdb, 0x8a, 0x03, 0x44, + 0x0f, 0xa6, 0x80, 0x69, +}; +static const unsigned char kat1654_entropyinreseed[] = { + 0x14, 0xa7, 0x67, 0xa1, 0x6c, 0x2c, 0xc3, 0x5c, 0x38, 0x99, 0x28, 0xcc, + 0x9c, 0xae, 0x2c, 0x6e, +}; +static const unsigned char kat1654_addinreseed[] = {0}; +static const unsigned char kat1654_addin0[] = {0}; +static const unsigned char kat1654_addin1[] = {0}; +static const unsigned char kat1654_retbits[] = { + 0x3a, 0x50, 0x4f, 0xd1, 0xc9, 0x5b, 0x6c, 0xdd, 0x10, 0x57, 0xb3, 0xaa, + 0x6e, 0xa9, 0xaf, 0xb0, 0xdd, 0x53, 0x47, 0x5f, 0x77, 0x4d, 0xf7, 0x79, + 0x7d, 0x94, 0x98, 0x53, 0xfc, 0xe5, 0x38, 0xe1, 0xa3, 0xf1, 0xbd, 0xfd, + 0x7b, 0xc8, 0x6f, 0xe0, 0xe4, 0x49, 0x6f, 0x21, 0x03, 0x51, 0xaf, 0xd0, + 0x64, 0x62, 0xc3, 0xe0, 0xfc, 0xb6, 0x6a, 0x54, 0x78, 0xcc, 0x54, 0xc8, + 0x54, 0x69, 0x0a, 0x69, +}; +static const struct drbg_kat_pr_false kat1654_t = { + 3, kat1654_entropyin, kat1654_nonce, kat1654_persstr, + kat1654_entropyinreseed, kat1654_addinreseed, kat1654_addin0, + kat1654_addin1, kat1654_retbits +}; +static const struct drbg_kat kat1654 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1654_t +}; + +static const unsigned char kat1655_entropyin[] = { + 0xa8, 0x5e, 0x33, 0xac, 0x6b, 0x70, 0x9b, 0x7d, 0xe2, 0xad, 0x77, 0x3f, + 0x77, 0x62, 0x8b, 0x32, +}; +static const unsigned char kat1655_nonce[] = { + 0x7e, 0x5b, 0x6a, 0x38, 0xb6, 0x66, 0x0c, 0x54, +}; +static const unsigned char kat1655_persstr[] = { + 0x1a, 0xbf, 0x0b, 0x86, 0x7a, 0xe7, 0x81, 0x0c, 0x52, 0xbc, 0x8b, 0xfe, + 0xd2, 0x43, 0x70, 0x59, +}; +static const unsigned char kat1655_entropyinreseed[] = { + 0x65, 0xa8, 0xd3, 0xd0, 0xfe, 0xa0, 0x1a, 0x05, 0x16, 0x81, 0x24, 0x18, + 0x4d, 0xea, 0xb4, 0xf1, +}; +static const unsigned char kat1655_addinreseed[] = {0}; +static const unsigned char kat1655_addin0[] = {0}; +static const unsigned char kat1655_addin1[] = {0}; +static const unsigned char kat1655_retbits[] = { + 0xb8, 0x7e, 0xba, 0x4b, 0xcf, 0x9b, 0x91, 0x48, 0x23, 0x81, 0x8b, 0xe7, + 0xd1, 0x3a, 0x73, 0xd7, 0xb2, 0xad, 0x39, 0xa0, 0xbb, 0x28, 0x95, 0x59, + 0xcb, 0x18, 0x62, 0x55, 0x26, 0x88, 0xe0, 0xd4, 0x22, 0x9a, 0x7b, 0x10, + 0x69, 0xe2, 0xd4, 0x59, 0xfb, 0xbe, 0x38, 0x52, 0xd5, 0x48, 0xfb, 0x31, + 0x60, 0x26, 0x02, 0x55, 0x19, 0x41, 0x52, 0xe6, 0x2a, 0x3c, 0xde, 0xb7, + 0xaf, 0x81, 0x6f, 0xf0, +}; +static const struct drbg_kat_pr_false kat1655_t = { + 4, kat1655_entropyin, kat1655_nonce, kat1655_persstr, + kat1655_entropyinreseed, kat1655_addinreseed, kat1655_addin0, + kat1655_addin1, kat1655_retbits +}; +static const struct drbg_kat kat1655 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1655_t +}; + +static const unsigned char kat1656_entropyin[] = { + 0x0f, 0xb4, 0x03, 0xce, 0x51, 0x3c, 0x91, 0x48, 0xef, 0xb4, 0x97, 0x31, + 0x39, 0xda, 0x3c, 0x1b, +}; +static const unsigned char kat1656_nonce[] = { + 0xbb, 0x37, 0xf7, 0x3d, 0xf2, 0x80, 0xc7, 0xba, +}; +static const unsigned char kat1656_persstr[] = { + 0xad, 0x71, 0x2e, 0xe9, 0x6e, 0xe9, 0x6a, 0xd8, 0x21, 0x08, 0x81, 0x5d, + 0x97, 0x5f, 0x0f, 0x74, +}; +static const unsigned char kat1656_entropyinreseed[] = { + 0xfb, 0xd8, 0x71, 0x7c, 0x36, 0xc2, 0xfa, 0x4d, 0xfe, 0x1d, 0x9a, 0x69, + 0x0b, 0x5d, 0x16, 0xaf, +}; +static const unsigned char kat1656_addinreseed[] = {0}; +static const unsigned char kat1656_addin0[] = {0}; +static const unsigned char kat1656_addin1[] = {0}; +static const unsigned char kat1656_retbits[] = { + 0xbc, 0x16, 0xda, 0x47, 0xe6, 0x4d, 0x48, 0x01, 0xc4, 0xc4, 0x74, 0x08, + 0x8a, 0xa5, 0x35, 0x64, 0x67, 0x32, 0x31, 0xda, 0xd9, 0xda, 0x7e, 0x76, + 0xb4, 0xff, 0x8e, 0x5b, 0xe6, 0x53, 0xd5, 0x61, 0xd5, 0x4a, 0xcf, 0xd2, + 0xa5, 0x5e, 0x0f, 0x4c, 0xae, 0x45, 0x33, 0x3e, 0xef, 0x0c, 0xcc, 0x28, + 0xab, 0xd9, 0x4f, 0x5e, 0x11, 0x8e, 0xfa, 0x7b, 0x3c, 0x51, 0x88, 0x39, + 0xb7, 0xe4, 0x09, 0xe0, +}; +static const struct drbg_kat_pr_false kat1656_t = { + 5, kat1656_entropyin, kat1656_nonce, kat1656_persstr, + kat1656_entropyinreseed, kat1656_addinreseed, kat1656_addin0, + kat1656_addin1, kat1656_retbits +}; +static const struct drbg_kat kat1656 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1656_t +}; + +static const unsigned char kat1657_entropyin[] = { + 0x2b, 0xa9, 0xc0, 0x9f, 0xa8, 0x33, 0xa4, 0xa1, 0x98, 0xff, 0x06, 0x79, + 0xa0, 0x22, 0x61, 0xa1, +}; +static const unsigned char kat1657_nonce[] = { + 0x76, 0x4e, 0x8c, 0x46, 0x05, 0x71, 0x1d, 0x49, +}; +static const unsigned char kat1657_persstr[] = { + 0x46, 0x54, 0x96, 0xdd, 0xad, 0xd1, 0x00, 0x86, 0xb7, 0xe6, 0xc7, 0x57, + 0x80, 0x41, 0x81, 0x77, +}; +static const unsigned char kat1657_entropyinreseed[] = { + 0xda, 0x68, 0x1a, 0x3f, 0x60, 0x3a, 0x2a, 0xd1, 0xea, 0xae, 0x2e, 0x7e, + 0xfd, 0xba, 0x51, 0x97, +}; +static const unsigned char kat1657_addinreseed[] = {0}; +static const unsigned char kat1657_addin0[] = {0}; +static const unsigned char kat1657_addin1[] = {0}; +static const unsigned char kat1657_retbits[] = { + 0xd6, 0x35, 0x28, 0xe2, 0x80, 0x46, 0x8c, 0x71, 0x92, 0xcf, 0x77, 0x39, + 0xdc, 0x3b, 0xcd, 0xf5, 0x6b, 0x3a, 0x85, 0x60, 0x92, 0x4c, 0x7d, 0x18, + 0x48, 0xd6, 0x4a, 0xe4, 0x0a, 0x0e, 0x5c, 0x12, 0x4b, 0x47, 0xd2, 0xd1, + 0xcc, 0x43, 0x9a, 0x04, 0xd7, 0x53, 0xb3, 0xb8, 0x85, 0x8f, 0xc2, 0x27, + 0xb5, 0xdf, 0x11, 0x86, 0x4b, 0xfa, 0x22, 0x4e, 0x46, 0xbf, 0x0a, 0x6a, + 0x01, 0xba, 0x68, 0x3e, +}; +static const struct drbg_kat_pr_false kat1657_t = { + 6, kat1657_entropyin, kat1657_nonce, kat1657_persstr, + kat1657_entropyinreseed, kat1657_addinreseed, kat1657_addin0, + kat1657_addin1, kat1657_retbits +}; +static const struct drbg_kat kat1657 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1657_t +}; + +static const unsigned char kat1658_entropyin[] = { + 0x79, 0x7b, 0x61, 0x23, 0x10, 0xf4, 0xd8, 0x97, 0x55, 0xef, 0x63, 0xd5, + 0x89, 0x51, 0xcc, 0x90, +}; +static const unsigned char kat1658_nonce[] = { + 0x21, 0xb8, 0x21, 0xf9, 0x37, 0xd6, 0xe6, 0x60, +}; +static const unsigned char kat1658_persstr[] = { + 0x9b, 0x92, 0x77, 0xb3, 0x68, 0x5d, 0xc0, 0x30, 0x12, 0xa4, 0x2d, 0x2f, + 0x01, 0xbb, 0x28, 0xfb, +}; +static const unsigned char kat1658_entropyinreseed[] = { + 0x60, 0x52, 0x3f, 0x67, 0x64, 0xd4, 0x2a, 0x6f, 0x94, 0x79, 0x39, 0xed, + 0x11, 0x51, 0x15, 0x86, +}; +static const unsigned char kat1658_addinreseed[] = {0}; +static const unsigned char kat1658_addin0[] = {0}; +static const unsigned char kat1658_addin1[] = {0}; +static const unsigned char kat1658_retbits[] = { + 0x4b, 0x2f, 0xa5, 0x53, 0x83, 0x97, 0xeb, 0x49, 0xf6, 0xb6, 0xd7, 0x6d, + 0x55, 0xe5, 0x32, 0xb5, 0x78, 0xbf, 0xc5, 0xa1, 0xf2, 0x88, 0xd7, 0xba, + 0x20, 0xc8, 0x51, 0x81, 0x66, 0x97, 0x5b, 0xee, 0x53, 0xe6, 0x3f, 0xe7, + 0xdf, 0x54, 0xcc, 0xf6, 0x9e, 0x0b, 0x3f, 0xfa, 0x07, 0x72, 0x78, 0xf9, + 0x2c, 0xc1, 0x44, 0x80, 0x00, 0xd9, 0x6d, 0x82, 0xcb, 0x45, 0xc0, 0x55, + 0xce, 0x6c, 0x00, 0xeb, +}; +static const struct drbg_kat_pr_false kat1658_t = { + 7, kat1658_entropyin, kat1658_nonce, kat1658_persstr, + kat1658_entropyinreseed, kat1658_addinreseed, kat1658_addin0, + kat1658_addin1, kat1658_retbits +}; +static const struct drbg_kat kat1658 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1658_t +}; + +static const unsigned char kat1659_entropyin[] = { + 0xd0, 0x85, 0x26, 0xc1, 0x78, 0x83, 0x93, 0x93, 0x24, 0xfa, 0x66, 0xfd, + 0xe8, 0x01, 0xa3, 0xbd, +}; +static const unsigned char kat1659_nonce[] = { + 0x21, 0xc2, 0x84, 0x91, 0xa8, 0xfe, 0x20, 0xd9, +}; +static const unsigned char kat1659_persstr[] = { + 0x6e, 0xf8, 0x10, 0x47, 0x7d, 0x4d, 0x96, 0x14, 0x39, 0x89, 0x46, 0x65, + 0x3f, 0xd3, 0x47, 0x12, +}; +static const unsigned char kat1659_entropyinreseed[] = { + 0x40, 0x64, 0x5b, 0xeb, 0x71, 0xb4, 0x0f, 0x95, 0x06, 0x3d, 0x49, 0x2e, + 0xd3, 0xbe, 0xd7, 0xc1, +}; +static const unsigned char kat1659_addinreseed[] = {0}; +static const unsigned char kat1659_addin0[] = {0}; +static const unsigned char kat1659_addin1[] = {0}; +static const unsigned char kat1659_retbits[] = { + 0x0b, 0x2c, 0x24, 0x31, 0x61, 0xc8, 0x38, 0x6e, 0xc9, 0x96, 0xa8, 0x69, + 0x3f, 0xc3, 0x07, 0xc0, 0xc5, 0xa0, 0x94, 0xa0, 0x23, 0xc8, 0x12, 0x33, + 0x7f, 0x8d, 0x47, 0x6b, 0xef, 0x8c, 0x96, 0xc6, 0xf7, 0x16, 0x87, 0x02, + 0x76, 0xb0, 0x90, 0x09, 0x49, 0x4d, 0x64, 0xdf, 0x31, 0xe6, 0x6f, 0xf6, + 0xd0, 0x67, 0xfe, 0x58, 0x9c, 0x35, 0x7e, 0xec, 0x5a, 0xc9, 0x9c, 0xc9, + 0xa8, 0x1b, 0x2d, 0x6e, +}; +static const struct drbg_kat_pr_false kat1659_t = { + 8, kat1659_entropyin, kat1659_nonce, kat1659_persstr, + kat1659_entropyinreseed, kat1659_addinreseed, kat1659_addin0, + kat1659_addin1, kat1659_retbits +}; +static const struct drbg_kat kat1659 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1659_t +}; + +static const unsigned char kat1660_entropyin[] = { + 0xb9, 0x1a, 0xfe, 0xe6, 0x05, 0x7b, 0xf4, 0xc6, 0x30, 0x69, 0x64, 0xb8, + 0x6f, 0xbb, 0xbc, 0xbe, +}; +static const unsigned char kat1660_nonce[] = { + 0x09, 0x06, 0x42, 0x79, 0x9a, 0x48, 0x0b, 0xe1, +}; +static const unsigned char kat1660_persstr[] = { + 0xfc, 0xf6, 0x3a, 0x6b, 0x30, 0xc2, 0xfd, 0xd9, 0xa5, 0x35, 0x55, 0x77, + 0x96, 0x05, 0x98, 0x4c, +}; +static const unsigned char kat1660_entropyinreseed[] = { + 0x1b, 0x47, 0x80, 0x0f, 0x5b, 0x61, 0x89, 0x11, 0x6c, 0x34, 0x1e, 0x9b, + 0x99, 0xc4, 0x3b, 0x01, +}; +static const unsigned char kat1660_addinreseed[] = {0}; +static const unsigned char kat1660_addin0[] = {0}; +static const unsigned char kat1660_addin1[] = {0}; +static const unsigned char kat1660_retbits[] = { + 0x9d, 0x85, 0xb2, 0xaa, 0xad, 0x31, 0xe0, 0x24, 0x79, 0xe2, 0xaf, 0x3a, + 0x59, 0xcc, 0x61, 0xda, 0x98, 0xcd, 0xc2, 0x46, 0x50, 0x53, 0x56, 0x18, + 0x31, 0x8d, 0x93, 0xda, 0xfc, 0x18, 0x59, 0x0d, 0x5a, 0xf6, 0xa4, 0x20, + 0x25, 0x3d, 0x74, 0xd5, 0x29, 0x91, 0xb1, 0x22, 0x83, 0x76, 0x19, 0x8b, + 0x1c, 0xab, 0x0e, 0x12, 0x18, 0x43, 0x85, 0xe7, 0xc0, 0x28, 0x92, 0x3c, + 0x93, 0x94, 0x93, 0x10, +}; +static const struct drbg_kat_pr_false kat1660_t = { + 9, kat1660_entropyin, kat1660_nonce, kat1660_persstr, + kat1660_entropyinreseed, kat1660_addinreseed, kat1660_addin0, + kat1660_addin1, kat1660_retbits +}; +static const struct drbg_kat kat1660 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1660_t +}; + +static const unsigned char kat1661_entropyin[] = { + 0xa9, 0xaa, 0xfd, 0x15, 0xd1, 0x09, 0xd3, 0x0c, 0xf8, 0x89, 0xe6, 0x54, + 0x57, 0x92, 0xb8, 0x69, +}; +static const unsigned char kat1661_nonce[] = { + 0x4d, 0xab, 0xcc, 0x8c, 0x29, 0x3b, 0x88, 0x16, +}; +static const unsigned char kat1661_persstr[] = { + 0xa0, 0xe5, 0x66, 0x63, 0x70, 0x74, 0xc9, 0x40, 0x7c, 0x2f, 0x18, 0xf5, + 0x7f, 0x8b, 0x0c, 0x3e, +}; +static const unsigned char kat1661_entropyinreseed[] = { + 0xd1, 0x8b, 0x43, 0x41, 0x3b, 0xc0, 0xc9, 0xbd, 0xc8, 0xb8, 0xca, 0x83, + 0xf2, 0x2b, 0x1c, 0x7b, +}; +static const unsigned char kat1661_addinreseed[] = {0}; +static const unsigned char kat1661_addin0[] = {0}; +static const unsigned char kat1661_addin1[] = {0}; +static const unsigned char kat1661_retbits[] = { + 0x40, 0x58, 0xa7, 0xd0, 0x33, 0x09, 0xc5, 0x49, 0x4b, 0xa6, 0x82, 0x69, + 0xb4, 0x87, 0xac, 0x6e, 0xed, 0x2a, 0x8f, 0x20, 0x3d, 0xb9, 0x1d, 0xa9, + 0xe0, 0x94, 0x13, 0x7e, 0x53, 0xcd, 0x48, 0x45, 0x3d, 0x50, 0xe3, 0xa6, + 0x41, 0xdb, 0xc1, 0x9a, 0x4a, 0x7e, 0x64, 0x09, 0xf4, 0xc1, 0xf7, 0x09, + 0x71, 0x9e, 0xf8, 0x35, 0xce, 0xcd, 0xb7, 0xf1, 0xe5, 0xc4, 0xa3, 0xe4, + 0x4f, 0x12, 0x5e, 0x22, +}; +static const struct drbg_kat_pr_false kat1661_t = { + 10, kat1661_entropyin, kat1661_nonce, kat1661_persstr, + kat1661_entropyinreseed, kat1661_addinreseed, kat1661_addin0, + kat1661_addin1, kat1661_retbits +}; +static const struct drbg_kat kat1661 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1661_t +}; + +static const unsigned char kat1662_entropyin[] = { + 0x8b, 0xd6, 0x76, 0x14, 0x99, 0x6c, 0x00, 0xfa, 0xe1, 0xc1, 0x51, 0xfa, + 0xe1, 0xb7, 0x8b, 0xbf, +}; +static const unsigned char kat1662_nonce[] = { + 0x32, 0xba, 0x6e, 0x01, 0x50, 0xa0, 0x8c, 0x02, +}; +static const unsigned char kat1662_persstr[] = { + 0x5a, 0x43, 0x28, 0xea, 0x5b, 0x5c, 0xf8, 0xe1, 0x6a, 0xe2, 0x1e, 0x8d, + 0xf0, 0x6d, 0xf9, 0x40, +}; +static const unsigned char kat1662_entropyinreseed[] = { + 0xcd, 0xd5, 0xe2, 0x49, 0xa7, 0x77, 0x09, 0xe0, 0x2d, 0x34, 0xae, 0x6a, + 0x4c, 0x71, 0x38, 0x76, +}; +static const unsigned char kat1662_addinreseed[] = {0}; +static const unsigned char kat1662_addin0[] = {0}; +static const unsigned char kat1662_addin1[] = {0}; +static const unsigned char kat1662_retbits[] = { + 0x61, 0x6c, 0xfe, 0x61, 0x27, 0xed, 0xdc, 0xca, 0xdd, 0xaa, 0xf8, 0x16, + 0x24, 0x82, 0x93, 0xa7, 0x1f, 0xed, 0x14, 0x66, 0x1a, 0xc0, 0x67, 0xeb, + 0xcb, 0xb8, 0xb3, 0x15, 0xc7, 0x73, 0xbd, 0x54, 0xe5, 0x41, 0x6c, 0xb1, + 0xf2, 0xf4, 0xe3, 0xf1, 0x5e, 0x78, 0x5b, 0x9a, 0x48, 0xb5, 0xa3, 0x10, + 0xcf, 0x24, 0x1d, 0x53, 0xb2, 0x11, 0xbc, 0x20, 0x70, 0xc7, 0x4f, 0x53, + 0xf3, 0x16, 0x31, 0x09, +}; +static const struct drbg_kat_pr_false kat1662_t = { + 11, kat1662_entropyin, kat1662_nonce, kat1662_persstr, + kat1662_entropyinreseed, kat1662_addinreseed, kat1662_addin0, + kat1662_addin1, kat1662_retbits +}; +static const struct drbg_kat kat1662 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1662_t +}; + +static const unsigned char kat1663_entropyin[] = { + 0x12, 0x3c, 0x43, 0x44, 0x43, 0x6c, 0xc0, 0x99, 0x0b, 0x3a, 0xde, 0x31, + 0x83, 0x0a, 0x97, 0x4b, +}; +static const unsigned char kat1663_nonce[] = { + 0xb5, 0xcd, 0x6c, 0x8b, 0xc4, 0x20, 0x25, 0x8b, +}; +static const unsigned char kat1663_persstr[] = { + 0xf9, 0xd9, 0xb8, 0xd8, 0xd1, 0xd3, 0xef, 0x2c, 0x3c, 0xec, 0x38, 0x96, + 0x8c, 0x40, 0x6c, 0x03, +}; +static const unsigned char kat1663_entropyinreseed[] = { + 0x94, 0x90, 0x60, 0x24, 0xe8, 0xb4, 0xf5, 0x73, 0x20, 0x88, 0x70, 0xc4, + 0x04, 0x26, 0x7d, 0x30, +}; +static const unsigned char kat1663_addinreseed[] = {0}; +static const unsigned char kat1663_addin0[] = {0}; +static const unsigned char kat1663_addin1[] = {0}; +static const unsigned char kat1663_retbits[] = { + 0x35, 0x11, 0xd4, 0x1a, 0xcf, 0x56, 0xd6, 0x37, 0xa8, 0x13, 0x80, 0x3d, + 0x1c, 0xdb, 0xed, 0xfa, 0xd5, 0xa2, 0xc3, 0x22, 0xea, 0x64, 0x49, 0x87, + 0x29, 0x01, 0x44, 0x68, 0xee, 0x2e, 0x7a, 0x26, 0x33, 0xfc, 0x37, 0xf3, + 0xca, 0x11, 0xbe, 0x7e, 0x49, 0x87, 0xf5, 0x30, 0xf1, 0xf9, 0xa9, 0x66, + 0x49, 0x82, 0x9e, 0xb6, 0xda, 0x52, 0x4c, 0xf9, 0xbd, 0x0c, 0x7f, 0x20, + 0xb2, 0x19, 0x94, 0x15, +}; +static const struct drbg_kat_pr_false kat1663_t = { + 12, kat1663_entropyin, kat1663_nonce, kat1663_persstr, + kat1663_entropyinreseed, kat1663_addinreseed, kat1663_addin0, + kat1663_addin1, kat1663_retbits +}; +static const struct drbg_kat kat1663 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1663_t +}; + +static const unsigned char kat1664_entropyin[] = { + 0x0c, 0xfc, 0x00, 0xd7, 0x72, 0xf3, 0x8e, 0x58, 0xa6, 0xef, 0xde, 0xde, + 0xf1, 0xfa, 0xc3, 0xd9, +}; +static const unsigned char kat1664_nonce[] = { + 0x46, 0x99, 0x6d, 0xce, 0xa6, 0xed, 0x65, 0x2f, +}; +static const unsigned char kat1664_persstr[] = { + 0x68, 0xe3, 0x9a, 0xe1, 0x43, 0xbd, 0x7a, 0xf7, 0x59, 0x33, 0x9d, 0xf9, + 0xcf, 0x86, 0x11, 0x22, +}; +static const unsigned char kat1664_entropyinreseed[] = { + 0x5c, 0x7e, 0xe1, 0x19, 0x2c, 0xb3, 0xb4, 0x3d, 0x30, 0x29, 0xee, 0x6c, + 0xe7, 0x85, 0x95, 0x34, +}; +static const unsigned char kat1664_addinreseed[] = {0}; +static const unsigned char kat1664_addin0[] = {0}; +static const unsigned char kat1664_addin1[] = {0}; +static const unsigned char kat1664_retbits[] = { + 0x6f, 0xb8, 0x87, 0x1f, 0xf3, 0x19, 0xf6, 0x31, 0x19, 0x08, 0x18, 0x30, + 0xd3, 0x8d, 0x43, 0xf3, 0x77, 0x40, 0xc3, 0xb8, 0x62, 0xd6, 0xb2, 0xa0, + 0x78, 0x0d, 0x89, 0xbc, 0xb3, 0x89, 0x21, 0xa0, 0x34, 0x96, 0xfe, 0x8a, + 0x09, 0x79, 0x2f, 0x4f, 0x64, 0xbd, 0x0c, 0xa1, 0xb6, 0x07, 0x1f, 0xfc, + 0x8d, 0xb7, 0x6d, 0xe1, 0xcd, 0xd0, 0xb0, 0x9c, 0x2a, 0x0e, 0xa1, 0x92, + 0x2e, 0xad, 0x60, 0x43, +}; +static const struct drbg_kat_pr_false kat1664_t = { + 13, kat1664_entropyin, kat1664_nonce, kat1664_persstr, + kat1664_entropyinreseed, kat1664_addinreseed, kat1664_addin0, + kat1664_addin1, kat1664_retbits +}; +static const struct drbg_kat kat1664 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1664_t +}; + +static const unsigned char kat1665_entropyin[] = { + 0x81, 0x3c, 0xe8, 0xc1, 0x5b, 0xe0, 0xee, 0xf6, 0xce, 0x6e, 0x11, 0x9a, + 0x5b, 0x3f, 0xa2, 0x3c, +}; +static const unsigned char kat1665_nonce[] = { + 0xe4, 0x71, 0x36, 0x67, 0x32, 0x80, 0x3f, 0x51, +}; +static const unsigned char kat1665_persstr[] = { + 0xa3, 0x5b, 0x7d, 0x70, 0x37, 0xf4, 0xe1, 0xa2, 0xbf, 0xe3, 0xff, 0x17, + 0xc2, 0xce, 0xe8, 0x7a, +}; +static const unsigned char kat1665_entropyinreseed[] = { + 0x8f, 0x8d, 0xae, 0xf2, 0x5b, 0x0c, 0x78, 0xae, 0x5a, 0xdd, 0x50, 0xce, + 0xa3, 0x05, 0x47, 0x20, +}; +static const unsigned char kat1665_addinreseed[] = {0}; +static const unsigned char kat1665_addin0[] = {0}; +static const unsigned char kat1665_addin1[] = {0}; +static const unsigned char kat1665_retbits[] = { + 0x01, 0x70, 0x65, 0x1e, 0x7e, 0xec, 0x1f, 0x00, 0x11, 0xc9, 0x57, 0x31, + 0x3a, 0x9c, 0x33, 0x20, 0x21, 0x96, 0x4a, 0xbe, 0xba, 0x2e, 0x62, 0x6e, + 0xfc, 0x59, 0xd8, 0xb0, 0x30, 0x22, 0xf8, 0xb2, 0x77, 0x2c, 0xe3, 0x54, + 0xe5, 0xdd, 0x7d, 0x6c, 0x20, 0x95, 0x1c, 0xb6, 0x34, 0x1c, 0xe9, 0x86, + 0x1b, 0x35, 0x34, 0x6e, 0x9d, 0x16, 0x6d, 0x92, 0xce, 0x11, 0xfb, 0xc0, + 0xad, 0x21, 0xb4, 0x64, +}; +static const struct drbg_kat_pr_false kat1665_t = { + 14, kat1665_entropyin, kat1665_nonce, kat1665_persstr, + kat1665_entropyinreseed, kat1665_addinreseed, kat1665_addin0, + kat1665_addin1, kat1665_retbits +}; +static const struct drbg_kat kat1665 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat1665_t +}; + +static const unsigned char kat1666_entropyin[] = { + 0xe7, 0x96, 0xb7, 0x28, 0xec, 0x69, 0xcf, 0x79, 0xf9, 0x7e, 0xaa, 0x2c, + 0x06, 0xe7, 0x18, 0x7f, +}; +static const unsigned char kat1666_nonce[] = { + 0x35, 0x68, 0xf0, 0x11, 0xc2, 0x82, 0xc0, 0x1d, +}; +static const unsigned char kat1666_persstr[] = { + 0xb5, 0xae, 0x69, 0x31, 0x92, 0xff, 0x05, 0x7e, 0x68, 0x2a, 0x62, 0x9b, + 0x84, 0xb8, 0xfe, 0xec, +}; +static const unsigned char kat1666_entropyinreseed[] = { + 0x31, 0xc4, 0xdb, 0x57, 0x13, 0xe0, 0x8e, 0x4e, 0x8c, 0xfb, 0xf7, 0x77, + 0xb9, 0x62, 0x1a, 0x04, +}; +static const unsigned char kat1666_addinreseed[] = { + 0xb6, 0x99, 0x76, 0x17, 0xe4, 0xe2, 0xc9, 0x4d, 0x8a, 0x3b, 0xf3, 0xc6, + 0x14, 0x39, 0xa5, 0x5e, +}; +static const unsigned char kat1666_addin0[] = { + 0xc3, 0x99, 0x8f, 0x9e, 0xdd, 0x93, 0x82, 0x86, 0xd7, 0xfa, 0xd2, 0xcc, + 0x75, 0x96, 0x3f, 0xdd, +}; +static const unsigned char kat1666_addin1[] = { + 0x64, 0x8f, 0xc7, 0x36, 0x0a, 0xe2, 0x70, 0x02, 0xe1, 0xaa, 0x77, 0xd8, + 0x58, 0x95, 0xb8, 0x9e, +}; +static const unsigned char kat1666_retbits[] = { + 0x6c, 0xe1, 0xeb, 0x64, 0xfd, 0xca, 0x9f, 0xd3, 0xb3, 0xef, 0x61, 0x91, + 0x3c, 0xc1, 0xc2, 0x14, 0xf9, 0x3b, 0xca, 0x0e, 0x51, 0x5d, 0x05, 0x14, + 0xfa, 0x48, 0x8d, 0x8a, 0xf5, 0x29, 0xf4, 0x98, 0x92, 0xbb, 0x7c, 0xd7, + 0xfb, 0xf5, 0x84, 0xeb, 0x02, 0x0f, 0xd8, 0xcb, 0x2a, 0xf9, 0xe6, 0xdb, + 0xfc, 0xe8, 0xa8, 0xa3, 0x43, 0x9b, 0xe8, 0x5d, 0x5c, 0xc4, 0xde, 0x76, + 0x40, 0xb4, 0xef, 0x7d, +}; +static const struct drbg_kat_pr_false kat1666_t = { + 0, kat1666_entropyin, kat1666_nonce, kat1666_persstr, + kat1666_entropyinreseed, kat1666_addinreseed, kat1666_addin0, + kat1666_addin1, kat1666_retbits +}; +static const struct drbg_kat kat1666 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1666_t +}; + +static const unsigned char kat1667_entropyin[] = { + 0x94, 0xa7, 0x99, 0xa2, 0xc3, 0x52, 0xbb, 0xc8, 0x24, 0x92, 0x1a, 0x75, + 0xdb, 0x0b, 0x15, 0x90, +}; +static const unsigned char kat1667_nonce[] = { + 0xf5, 0xfc, 0xd4, 0xcf, 0x35, 0x32, 0x7d, 0xbe, +}; +static const unsigned char kat1667_persstr[] = { + 0xde, 0xff, 0xfa, 0xfd, 0x85, 0xc8, 0x47, 0x35, 0xbe, 0xae, 0xe8, 0x7b, + 0x3d, 0x22, 0x66, 0x84, +}; +static const unsigned char kat1667_entropyinreseed[] = { + 0xe6, 0x95, 0x0d, 0x5b, 0xd3, 0x1c, 0x48, 0x2b, 0x6d, 0x83, 0xc6, 0x46, + 0xd7, 0xbf, 0xab, 0x07, +}; +static const unsigned char kat1667_addinreseed[] = { + 0x90, 0x3b, 0x9c, 0x07, 0x91, 0x79, 0x4c, 0xf5, 0xc8, 0x82, 0x48, 0x82, + 0x54, 0x22, 0xab, 0x79, +}; +static const unsigned char kat1667_addin0[] = { + 0x1d, 0x08, 0x7b, 0xde, 0x28, 0xb6, 0x63, 0x53, 0xe0, 0x26, 0x1d, 0xb4, + 0xf9, 0x9a, 0xc5, 0xf8, +}; +static const unsigned char kat1667_addin1[] = { + 0x90, 0x9a, 0x9f, 0x61, 0xa8, 0x7a, 0x68, 0x1d, 0x08, 0x44, 0x1c, 0x26, + 0x1e, 0x33, 0xed, 0xae, +}; +static const unsigned char kat1667_retbits[] = { + 0x55, 0x1f, 0x8b, 0x60, 0x71, 0xe4, 0xa1, 0xbd, 0xe5, 0x9b, 0x60, 0x6f, + 0x8e, 0x3d, 0xf0, 0x33, 0x50, 0x1c, 0x1e, 0x45, 0xa0, 0xf7, 0x18, 0xb6, + 0xbd, 0xf0, 0x6a, 0x64, 0xfc, 0xef, 0x9c, 0xda, 0xec, 0x65, 0xba, 0x60, + 0x89, 0x12, 0x5a, 0xd0, 0xa2, 0x5e, 0x61, 0x7a, 0x03, 0xac, 0xc2, 0x6a, + 0x26, 0x2f, 0xe4, 0xef, 0x4b, 0x64, 0x60, 0x52, 0x4c, 0xf6, 0xbf, 0x92, + 0x11, 0x08, 0xd5, 0xff, +}; +static const struct drbg_kat_pr_false kat1667_t = { + 1, kat1667_entropyin, kat1667_nonce, kat1667_persstr, + kat1667_entropyinreseed, kat1667_addinreseed, kat1667_addin0, + kat1667_addin1, kat1667_retbits +}; +static const struct drbg_kat kat1667 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1667_t +}; + +static const unsigned char kat1668_entropyin[] = { + 0xed, 0x3f, 0x63, 0x46, 0xca, 0x31, 0x6c, 0xea, 0x24, 0x55, 0x8d, 0x0f, + 0x1a, 0xaa, 0x4b, 0xac, +}; +static const unsigned char kat1668_nonce[] = { + 0xcf, 0xfb, 0xd0, 0xed, 0x03, 0x36, 0xfd, 0x69, +}; +static const unsigned char kat1668_persstr[] = { + 0x07, 0xd6, 0xfa, 0x69, 0x41, 0xfe, 0x2a, 0x4a, 0xf3, 0x5b, 0x4f, 0x93, + 0x9c, 0x2c, 0xa8, 0x9d, +}; +static const unsigned char kat1668_entropyinreseed[] = { + 0x1d, 0xad, 0xbf, 0xf4, 0xd9, 0x17, 0xba, 0x52, 0x36, 0x75, 0x2d, 0xe8, + 0xe0, 0x1e, 0x42, 0xa8, +}; +static const unsigned char kat1668_addinreseed[] = { + 0x03, 0x1f, 0x2b, 0x1f, 0x31, 0x30, 0xd0, 0xdb, 0x79, 0x80, 0x5d, 0x9c, + 0x78, 0x7c, 0x18, 0x99, +}; +static const unsigned char kat1668_addin0[] = { + 0xb2, 0xb2, 0xee, 0xa5, 0xfa, 0x8a, 0x18, 0x81, 0xe2, 0x61, 0x5b, 0x46, + 0x79, 0xec, 0x4d, 0x9c, +}; +static const unsigned char kat1668_addin1[] = { + 0x00, 0xf6, 0x1c, 0x3a, 0x37, 0x45, 0x36, 0xf8, 0x9b, 0xfc, 0xcf, 0x7e, + 0x43, 0xa3, 0xb0, 0x4b, +}; +static const unsigned char kat1668_retbits[] = { + 0x8c, 0xc6, 0xb6, 0xdb, 0xb0, 0x95, 0xc8, 0x7e, 0x0e, 0xde, 0x01, 0xf5, + 0xe8, 0x7b, 0x8a, 0xaf, 0x0e, 0xad, 0xdf, 0x43, 0xfd, 0x2d, 0xff, 0xc0, + 0x84, 0x39, 0xd1, 0x06, 0xeb, 0xbe, 0x51, 0x73, 0xd5, 0xb3, 0xeb, 0x61, + 0xf3, 0x89, 0x63, 0xc1, 0x9b, 0x5d, 0xb1, 0x83, 0x3b, 0xe1, 0x44, 0x2e, + 0x8a, 0x50, 0x99, 0x25, 0x1c, 0xc6, 0x6d, 0x75, 0x77, 0x3b, 0xc6, 0xfa, + 0x49, 0x36, 0x73, 0x2a, +}; +static const struct drbg_kat_pr_false kat1668_t = { + 2, kat1668_entropyin, kat1668_nonce, kat1668_persstr, + kat1668_entropyinreseed, kat1668_addinreseed, kat1668_addin0, + kat1668_addin1, kat1668_retbits +}; +static const struct drbg_kat kat1668 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1668_t +}; + +static const unsigned char kat1669_entropyin[] = { + 0x6b, 0x47, 0x6b, 0x20, 0x1b, 0x0c, 0xaa, 0x27, 0x0e, 0xef, 0x30, 0xb0, + 0x94, 0x06, 0x82, 0xa3, +}; +static const unsigned char kat1669_nonce[] = { + 0xa1, 0xd0, 0x95, 0x4c, 0x17, 0x16, 0x7b, 0x17, +}; +static const unsigned char kat1669_persstr[] = { + 0x65, 0x42, 0x79, 0xa6, 0x97, 0x2d, 0x0f, 0x18, 0xca, 0x99, 0x0f, 0xb9, + 0xe8, 0x7f, 0x40, 0x89, +}; +static const unsigned char kat1669_entropyinreseed[] = { + 0xf4, 0x36, 0x74, 0x80, 0x08, 0x6b, 0x48, 0x22, 0xa3, 0xb5, 0x4d, 0xd5, + 0xb1, 0xf4, 0xd3, 0x10, +}; +static const unsigned char kat1669_addinreseed[] = { + 0xde, 0x6e, 0x78, 0x40, 0x68, 0xb0, 0x51, 0xf6, 0x04, 0x27, 0xa3, 0xf4, + 0x9d, 0xde, 0x44, 0x6a, +}; +static const unsigned char kat1669_addin0[] = { + 0xa6, 0xa5, 0xd6, 0x1d, 0x96, 0x97, 0xd9, 0x33, 0x64, 0xe7, 0xe5, 0x50, + 0xa9, 0x3c, 0xf7, 0xd7, +}; +static const unsigned char kat1669_addin1[] = { + 0xa4, 0xe9, 0x48, 0x81, 0x1c, 0x45, 0x55, 0x00, 0x20, 0x62, 0xf5, 0xe7, + 0x6e, 0x89, 0x2f, 0xfc, +}; +static const unsigned char kat1669_retbits[] = { + 0x33, 0x2a, 0x38, 0x68, 0x36, 0x2a, 0xfe, 0xe0, 0x36, 0xe8, 0x07, 0x3f, + 0x1c, 0x83, 0x91, 0xff, 0xca, 0x33, 0xc7, 0x24, 0x32, 0x5a, 0xa3, 0xf6, + 0x6c, 0x79, 0x71, 0x52, 0xb9, 0x97, 0x8e, 0xab, 0xe8, 0x31, 0x92, 0x29, + 0xf8, 0xae, 0x3e, 0x52, 0x3f, 0x03, 0xb1, 0x47, 0xa8, 0x7b, 0xee, 0x27, + 0x8f, 0xa3, 0x35, 0x51, 0xd5, 0xf3, 0x04, 0x28, 0xb5, 0x6b, 0xb0, 0x1e, + 0x3b, 0x3c, 0x1c, 0xf3, +}; +static const struct drbg_kat_pr_false kat1669_t = { + 3, kat1669_entropyin, kat1669_nonce, kat1669_persstr, + kat1669_entropyinreseed, kat1669_addinreseed, kat1669_addin0, + kat1669_addin1, kat1669_retbits +}; +static const struct drbg_kat kat1669 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1669_t +}; + +static const unsigned char kat1670_entropyin[] = { + 0x70, 0xca, 0xd5, 0x57, 0xde, 0xfa, 0xa0, 0xc8, 0xb3, 0x7c, 0x16, 0x7c, + 0x97, 0x23, 0xdb, 0xc7, +}; +static const unsigned char kat1670_nonce[] = { + 0xdb, 0xe8, 0x9a, 0x10, 0x6f, 0x15, 0xd1, 0x12, +}; +static const unsigned char kat1670_persstr[] = { + 0x84, 0x6c, 0xdb, 0x83, 0x87, 0x2b, 0xe7, 0x90, 0x01, 0x04, 0xc1, 0x4c, + 0x1f, 0x88, 0xdd, 0x6b, +}; +static const unsigned char kat1670_entropyinreseed[] = { + 0xf0, 0x4c, 0x51, 0x9d, 0x94, 0xa0, 0xab, 0x7e, 0xaf, 0x35, 0x44, 0xec, + 0xd5, 0xf8, 0x5b, 0x95, +}; +static const unsigned char kat1670_addinreseed[] = { + 0x9f, 0xbd, 0x72, 0xce, 0x33, 0x2a, 0xbf, 0xf5, 0xf7, 0x46, 0x66, 0xd7, + 0xe6, 0x4f, 0x5a, 0xcd, +}; +static const unsigned char kat1670_addin0[] = { + 0xb0, 0x76, 0x87, 0xad, 0xba, 0xef, 0x6b, 0x11, 0x41, 0xae, 0xbd, 0x9e, + 0x78, 0x35, 0x84, 0x74, +}; +static const unsigned char kat1670_addin1[] = { + 0x53, 0x98, 0xf3, 0x1a, 0x34, 0xaf, 0x72, 0x0d, 0x2b, 0x2e, 0x30, 0xf6, + 0x5b, 0x8b, 0x05, 0x67, +}; +static const unsigned char kat1670_retbits[] = { + 0x0f, 0x29, 0xf6, 0xb2, 0x07, 0xc3, 0x82, 0xd3, 0x52, 0x44, 0x03, 0xde, + 0x0e, 0xdd, 0xe3, 0xbd, 0xca, 0x56, 0xab, 0x08, 0x10, 0x13, 0x74, 0x2b, + 0x40, 0xc9, 0x23, 0xa3, 0xe3, 0xc9, 0x5b, 0x9c, 0x3b, 0x36, 0x1c, 0x1c, + 0xff, 0x27, 0xbf, 0x2d, 0x2e, 0x60, 0xd8, 0x1f, 0x3b, 0x45, 0x06, 0xf8, + 0x8e, 0xe5, 0x58, 0xf7, 0x7f, 0x72, 0x48, 0xae, 0x3a, 0x68, 0xac, 0x29, + 0x1f, 0x00, 0x21, 0xe8, +}; +static const struct drbg_kat_pr_false kat1670_t = { + 4, kat1670_entropyin, kat1670_nonce, kat1670_persstr, + kat1670_entropyinreseed, kat1670_addinreseed, kat1670_addin0, + kat1670_addin1, kat1670_retbits +}; +static const struct drbg_kat kat1670 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1670_t +}; + +static const unsigned char kat1671_entropyin[] = { + 0x33, 0xba, 0x49, 0x4b, 0x54, 0x91, 0x84, 0x51, 0x03, 0xb5, 0x7a, 0xaa, + 0xce, 0xf0, 0xa6, 0x5d, +}; +static const unsigned char kat1671_nonce[] = { + 0x55, 0x38, 0x5b, 0x3e, 0xa7, 0xf3, 0xb4, 0xac, +}; +static const unsigned char kat1671_persstr[] = { + 0x92, 0x47, 0xdd, 0xa0, 0x3f, 0x2c, 0x31, 0x07, 0x93, 0xf3, 0xe5, 0xec, + 0x5d, 0x07, 0xd3, 0x97, +}; +static const unsigned char kat1671_entropyinreseed[] = { + 0x87, 0x89, 0x5e, 0xd4, 0x3a, 0xf7, 0x34, 0x51, 0x89, 0x91, 0x19, 0x77, + 0x48, 0x19, 0x8c, 0x0d, +}; +static const unsigned char kat1671_addinreseed[] = { + 0xde, 0x0e, 0xcc, 0xbf, 0xda, 0xbb, 0xae, 0xb7, 0xf9, 0xc5, 0x25, 0x80, + 0x49, 0x0c, 0xeb, 0x87, +}; +static const unsigned char kat1671_addin0[] = { + 0x6d, 0xea, 0x3b, 0x1b, 0xee, 0x14, 0x66, 0x6e, 0xd0, 0x53, 0xf0, 0xb5, + 0x12, 0x56, 0x53, 0x16, +}; +static const unsigned char kat1671_addin1[] = { + 0x1e, 0x3d, 0x49, 0xdf, 0x6e, 0x07, 0x9f, 0x9c, 0x8e, 0x79, 0x26, 0x0c, + 0x63, 0x12, 0x74, 0x45, +}; +static const unsigned char kat1671_retbits[] = { + 0x13, 0x9d, 0x25, 0x6f, 0x1c, 0xe3, 0xe4, 0xf2, 0xb6, 0xbf, 0x08, 0x6d, + 0x80, 0x9f, 0xaf, 0x19, 0x82, 0x0e, 0x79, 0x9f, 0x74, 0x4f, 0x7c, 0x36, + 0x58, 0x0c, 0xf8, 0x24, 0x19, 0xca, 0xef, 0x4d, 0xe7, 0x6e, 0x51, 0x10, + 0xe1, 0x1c, 0xa4, 0x75, 0x60, 0x4f, 0xc0, 0x4a, 0x55, 0xfe, 0x3b, 0x07, + 0x13, 0xcf, 0x19, 0x1a, 0x6d, 0xfb, 0x9d, 0x33, 0xde, 0xd0, 0xd5, 0xc6, + 0x1a, 0x6b, 0xa1, 0x60, +}; +static const struct drbg_kat_pr_false kat1671_t = { + 5, kat1671_entropyin, kat1671_nonce, kat1671_persstr, + kat1671_entropyinreseed, kat1671_addinreseed, kat1671_addin0, + kat1671_addin1, kat1671_retbits +}; +static const struct drbg_kat kat1671 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1671_t +}; + +static const unsigned char kat1672_entropyin[] = { + 0x26, 0xe3, 0xa5, 0x0f, 0x73, 0xa6, 0x06, 0x98, 0xb9, 0x4a, 0xd3, 0x93, + 0x15, 0xa6, 0x6a, 0xda, +}; +static const unsigned char kat1672_nonce[] = { + 0x6e, 0x53, 0xc2, 0xba, 0xa7, 0x17, 0x45, 0xca, +}; +static const unsigned char kat1672_persstr[] = { + 0xc4, 0x7b, 0xeb, 0x1a, 0x59, 0x0e, 0x06, 0x70, 0x77, 0x22, 0xe3, 0xf1, + 0x94, 0xfa, 0x5c, 0xee, +}; +static const unsigned char kat1672_entropyinreseed[] = { + 0x61, 0x81, 0x51, 0x42, 0x13, 0x45, 0xf7, 0x40, 0x0a, 0xce, 0x77, 0xeb, + 0x7f, 0xa4, 0xb0, 0xc8, +}; +static const unsigned char kat1672_addinreseed[] = { + 0xfd, 0x7e, 0xbb, 0x1e, 0xa4, 0xe7, 0x6d, 0x8e, 0x52, 0x28, 0xcd, 0xff, + 0x77, 0x86, 0xa5, 0x2a, +}; +static const unsigned char kat1672_addin0[] = { + 0x39, 0xe8, 0xc5, 0x78, 0xb7, 0xc9, 0x24, 0xc5, 0x6a, 0xfc, 0xdf, 0xfe, + 0xa3, 0x7f, 0xed, 0x4d, +}; +static const unsigned char kat1672_addin1[] = { + 0x24, 0x83, 0xb9, 0x6f, 0x21, 0x90, 0xed, 0x57, 0xb4, 0xa6, 0x8c, 0x7c, + 0xd0, 0x4a, 0x42, 0xcf, +}; +static const unsigned char kat1672_retbits[] = { + 0x94, 0x8c, 0x0a, 0xe1, 0x8f, 0x98, 0x9d, 0x2d, 0xe0, 0x70, 0x0b, 0x5f, + 0xf1, 0xcf, 0xb5, 0x39, 0xb9, 0x14, 0x67, 0x6e, 0xcb, 0x4e, 0x51, 0x6f, + 0x4f, 0xa0, 0x37, 0x69, 0x9b, 0x18, 0x14, 0x04, 0xa3, 0x00, 0x51, 0x3b, + 0xbb, 0x9a, 0xf3, 0xf5, 0x55, 0x53, 0xa6, 0xbe, 0x6e, 0x89, 0x41, 0x96, + 0x48, 0x57, 0x36, 0xe7, 0x53, 0x43, 0x2b, 0xfa, 0x67, 0x9d, 0x07, 0xbb, + 0x6c, 0x5b, 0xcd, 0xa8, +}; +static const struct drbg_kat_pr_false kat1672_t = { + 6, kat1672_entropyin, kat1672_nonce, kat1672_persstr, + kat1672_entropyinreseed, kat1672_addinreseed, kat1672_addin0, + kat1672_addin1, kat1672_retbits +}; +static const struct drbg_kat kat1672 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1672_t +}; + +static const unsigned char kat1673_entropyin[] = { + 0xb7, 0x51, 0x68, 0x65, 0xda, 0x6b, 0x6b, 0x49, 0x4e, 0x6b, 0x33, 0xb2, + 0x78, 0xfb, 0xa5, 0x88, +}; +static const unsigned char kat1673_nonce[] = { + 0xc6, 0x6f, 0x5d, 0x69, 0x9f, 0x36, 0x98, 0x1d, +}; +static const unsigned char kat1673_persstr[] = { + 0xbc, 0x64, 0x31, 0x50, 0x04, 0x95, 0xb2, 0xcf, 0x8f, 0x91, 0x05, 0x37, + 0xb2, 0x9e, 0x86, 0xc1, +}; +static const unsigned char kat1673_entropyinreseed[] = { + 0x4e, 0xf0, 0x7e, 0xde, 0xc9, 0x5e, 0x66, 0x2a, 0xd8, 0xec, 0x1a, 0xe3, + 0x0c, 0x77, 0x39, 0xf2, +}; +static const unsigned char kat1673_addinreseed[] = { + 0x5d, 0xb2, 0x75, 0x41, 0xe3, 0xb6, 0xdc, 0x48, 0x30, 0xe7, 0xaf, 0xb1, + 0x6b, 0x26, 0x7e, 0x42, +}; +static const unsigned char kat1673_addin0[] = { + 0x5a, 0x4b, 0xa4, 0xf6, 0xa1, 0xa7, 0x6d, 0x21, 0xa4, 0x16, 0x12, 0x04, + 0xd5, 0x82, 0xcd, 0x25, +}; +static const unsigned char kat1673_addin1[] = { + 0xd3, 0x5d, 0xef, 0x58, 0xfb, 0x9c, 0x13, 0xf2, 0x6f, 0x13, 0xdb, 0x4f, + 0x44, 0xf8, 0x43, 0xc8, +}; +static const unsigned char kat1673_retbits[] = { + 0xbc, 0x5a, 0x17, 0x4b, 0x9a, 0xf4, 0xc1, 0xb9, 0xb3, 0x77, 0xb3, 0x20, + 0xa9, 0x3b, 0xce, 0x84, 0x8d, 0xa3, 0x10, 0x6a, 0x14, 0x7c, 0xa6, 0xb8, + 0x84, 0x2e, 0x02, 0x0c, 0xe3, 0xad, 0x5b, 0x79, 0xd2, 0x6f, 0x7a, 0xdf, + 0x72, 0x10, 0x05, 0x18, 0x3a, 0x1b, 0x53, 0xce, 0x07, 0x64, 0xa7, 0xd4, + 0x73, 0x8d, 0xdb, 0x97, 0xcd, 0xcd, 0x0d, 0x6a, 0x76, 0xa3, 0x2d, 0xbf, + 0xa4, 0x96, 0xd2, 0xcb, +}; +static const struct drbg_kat_pr_false kat1673_t = { + 7, kat1673_entropyin, kat1673_nonce, kat1673_persstr, + kat1673_entropyinreseed, kat1673_addinreseed, kat1673_addin0, + kat1673_addin1, kat1673_retbits +}; +static const struct drbg_kat kat1673 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1673_t +}; + +static const unsigned char kat1674_entropyin[] = { + 0xbc, 0x08, 0x07, 0xf6, 0xcd, 0xae, 0x0e, 0x32, 0xb1, 0xbb, 0x0a, 0xc0, + 0xb4, 0x02, 0x81, 0x19, +}; +static const unsigned char kat1674_nonce[] = { + 0x76, 0xf5, 0x69, 0x4b, 0x0c, 0x85, 0x2d, 0x4b, +}; +static const unsigned char kat1674_persstr[] = { + 0x32, 0x49, 0x48, 0x22, 0x00, 0x2c, 0x74, 0xdc, 0x40, 0x6b, 0x88, 0xa2, + 0x13, 0xe2, 0x6d, 0x46, +}; +static const unsigned char kat1674_entropyinreseed[] = { + 0x16, 0xd4, 0x60, 0x23, 0x7a, 0x5f, 0x38, 0xa6, 0x49, 0xe6, 0x8f, 0xc1, + 0x11, 0xc1, 0xef, 0x56, +}; +static const unsigned char kat1674_addinreseed[] = { + 0xee, 0x95, 0xf1, 0x84, 0x34, 0x4b, 0xfb, 0x04, 0x55, 0xfa, 0x7f, 0x4d, + 0xb2, 0x32, 0x6d, 0x45, +}; +static const unsigned char kat1674_addin0[] = { + 0xbe, 0x4b, 0x33, 0x2e, 0x3c, 0xf2, 0x0a, 0x86, 0x8b, 0xa9, 0x90, 0xee, + 0xf3, 0xf8, 0x21, 0x2f, +}; +static const unsigned char kat1674_addin1[] = { + 0x43, 0x45, 0xac, 0xd4, 0x33, 0xee, 0xc5, 0x10, 0xaf, 0xde, 0x2f, 0xaf, + 0x2c, 0x51, 0xdc, 0x9a, +}; +static const unsigned char kat1674_retbits[] = { + 0xc7, 0xb5, 0x7b, 0x7e, 0x6d, 0xee, 0xb1, 0x32, 0x88, 0xb4, 0x8f, 0xc1, + 0x77, 0x5c, 0x0e, 0xb1, 0x22, 0x81, 0x1c, 0xe2, 0x7e, 0x33, 0x6d, 0xab, + 0xdc, 0xe3, 0xfa, 0x23, 0xdb, 0x31, 0x68, 0x82, 0xed, 0xe6, 0x93, 0x8a, + 0x44, 0x1f, 0xfe, 0x84, 0x8d, 0x82, 0xc0, 0xa1, 0xa3, 0x7a, 0x1e, 0x8b, + 0xbf, 0x12, 0xca, 0x3b, 0xb8, 0xb2, 0x26, 0x5c, 0xb5, 0xb3, 0xb3, 0x35, + 0xd4, 0xc7, 0x9f, 0x14, +}; +static const struct drbg_kat_pr_false kat1674_t = { + 8, kat1674_entropyin, kat1674_nonce, kat1674_persstr, + kat1674_entropyinreseed, kat1674_addinreseed, kat1674_addin0, + kat1674_addin1, kat1674_retbits +}; +static const struct drbg_kat kat1674 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1674_t +}; + +static const unsigned char kat1675_entropyin[] = { + 0xb5, 0x43, 0x14, 0x02, 0x3c, 0xb8, 0x82, 0xd7, 0x59, 0xe7, 0x4f, 0xd8, + 0x22, 0xd6, 0x14, 0x95, +}; +static const unsigned char kat1675_nonce[] = { + 0xb3, 0x3a, 0xd7, 0x16, 0x9c, 0x32, 0x64, 0xc0, +}; +static const unsigned char kat1675_persstr[] = { + 0x89, 0xbf, 0x26, 0x19, 0x0e, 0xaf, 0xec, 0x31, 0x7d, 0xae, 0x99, 0x49, + 0xff, 0x79, 0xaa, 0x20, +}; +static const unsigned char kat1675_entropyinreseed[] = { + 0x49, 0x00, 0x88, 0x22, 0x5d, 0x2a, 0x81, 0x64, 0x1b, 0xc0, 0x14, 0x7d, + 0x10, 0x8a, 0x79, 0x25, +}; +static const unsigned char kat1675_addinreseed[] = { + 0x47, 0x0b, 0x3f, 0x0a, 0xa0, 0xf2, 0x80, 0x59, 0x9f, 0xe9, 0x38, 0xcd, + 0x5a, 0xa1, 0xb9, 0xbd, +}; +static const unsigned char kat1675_addin0[] = { + 0x32, 0xf3, 0xb0, 0xf8, 0x61, 0x0b, 0x2f, 0xe6, 0x54, 0x94, 0x09, 0xa7, + 0x42, 0xae, 0x16, 0x38, +}; +static const unsigned char kat1675_addin1[] = { + 0xc8, 0x37, 0x68, 0x2d, 0x0a, 0x19, 0xdb, 0x10, 0xef, 0xc3, 0x4a, 0x44, + 0x47, 0x85, 0x12, 0xe2, +}; +static const unsigned char kat1675_retbits[] = { + 0x99, 0xab, 0x5f, 0xa6, 0x18, 0xbc, 0x7b, 0xd1, 0x52, 0x1b, 0xf3, 0xd0, + 0x5d, 0xb3, 0xcd, 0x08, 0x27, 0x24, 0x83, 0x6d, 0x29, 0x13, 0x61, 0x9d, + 0x18, 0xd0, 0x7a, 0xc4, 0x7d, 0x57, 0xf0, 0x5f, 0x4d, 0xf2, 0xeb, 0xe2, + 0xbd, 0x22, 0xde, 0x04, 0x87, 0xac, 0x6c, 0xb9, 0xba, 0xb7, 0x58, 0xf9, + 0xf4, 0x9e, 0xbf, 0x1a, 0xfd, 0xf7, 0xcf, 0x83, 0xe8, 0xae, 0x3b, 0x5f, + 0xb6, 0x9d, 0x62, 0x9f, +}; +static const struct drbg_kat_pr_false kat1675_t = { + 9, kat1675_entropyin, kat1675_nonce, kat1675_persstr, + kat1675_entropyinreseed, kat1675_addinreseed, kat1675_addin0, + kat1675_addin1, kat1675_retbits +}; +static const struct drbg_kat kat1675 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1675_t +}; + +static const unsigned char kat1676_entropyin[] = { + 0xb3, 0xcb, 0x56, 0xce, 0x6d, 0x01, 0xea, 0xc4, 0x58, 0x38, 0x66, 0xfd, + 0xf2, 0xa0, 0xcc, 0xe6, +}; +static const unsigned char kat1676_nonce[] = { + 0x13, 0x0d, 0x06, 0xc3, 0x5a, 0x72, 0xa8, 0x70, +}; +static const unsigned char kat1676_persstr[] = { + 0x5d, 0xe4, 0xb0, 0xc6, 0xc7, 0x1f, 0x9a, 0xd9, 0x1d, 0xf2, 0xee, 0x4c, + 0xa4, 0xca, 0xde, 0x6e, +}; +static const unsigned char kat1676_entropyinreseed[] = { + 0x7a, 0x91, 0x6f, 0xbc, 0x9f, 0x00, 0x39, 0x48, 0x55, 0x1b, 0x1c, 0x7e, + 0x61, 0xc5, 0xd1, 0x26, +}; +static const unsigned char kat1676_addinreseed[] = { + 0x63, 0x7d, 0x0c, 0x6e, 0xf1, 0x99, 0xc8, 0xe3, 0xe3, 0x09, 0x38, 0x7a, + 0x55, 0xea, 0x39, 0x86, +}; +static const unsigned char kat1676_addin0[] = { + 0x84, 0xb3, 0xaa, 0x93, 0xf8, 0x44, 0x47, 0xe2, 0xd3, 0x79, 0x2d, 0x2f, + 0x5f, 0xe0, 0xea, 0x61, +}; +static const unsigned char kat1676_addin1[] = { + 0xa0, 0x45, 0xf5, 0x0a, 0xa1, 0x7c, 0x94, 0xd1, 0xf5, 0x5c, 0x55, 0xd3, + 0xdd, 0x70, 0x59, 0x32, +}; +static const unsigned char kat1676_retbits[] = { + 0x22, 0x7e, 0x06, 0x77, 0x1d, 0x65, 0x80, 0x94, 0xc8, 0x24, 0xcc, 0x4b, + 0xbc, 0x1a, 0x98, 0x50, 0x58, 0xc5, 0xaf, 0xa3, 0x71, 0x06, 0xf3, 0xf0, + 0xfe, 0xd3, 0x70, 0xdf, 0x64, 0xbb, 0x22, 0x65, 0x11, 0x51, 0xe3, 0x33, + 0x2c, 0x60, 0x2d, 0x0a, 0x36, 0x48, 0x6c, 0x70, 0xed, 0x7f, 0xd1, 0xf5, + 0xaf, 0x6b, 0x52, 0xc3, 0xfb, 0xd2, 0x8b, 0x8a, 0x31, 0x03, 0x2b, 0xb1, + 0x0f, 0x79, 0xdf, 0x5d, +}; +static const struct drbg_kat_pr_false kat1676_t = { + 10, kat1676_entropyin, kat1676_nonce, kat1676_persstr, + kat1676_entropyinreseed, kat1676_addinreseed, kat1676_addin0, + kat1676_addin1, kat1676_retbits +}; +static const struct drbg_kat kat1676 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1676_t +}; + +static const unsigned char kat1677_entropyin[] = { + 0x7f, 0x24, 0x9f, 0x2b, 0x0a, 0xf7, 0xf6, 0xd2, 0xac, 0xcc, 0x53, 0x44, + 0x86, 0xff, 0x25, 0xd4, +}; +static const unsigned char kat1677_nonce[] = { + 0xb4, 0xa5, 0xeb, 0x9f, 0x06, 0x22, 0x75, 0x80, +}; +static const unsigned char kat1677_persstr[] = { + 0x26, 0x0f, 0x24, 0xcb, 0xf2, 0xc6, 0x6c, 0x31, 0xc8, 0x78, 0xba, 0x86, + 0x7a, 0x47, 0x04, 0xc0, +}; +static const unsigned char kat1677_entropyinreseed[] = { + 0x9b, 0xa2, 0x92, 0xc2, 0x92, 0x26, 0xaf, 0x77, 0x34, 0x2c, 0xa4, 0x6c, + 0xa8, 0x0d, 0x03, 0x20, +}; +static const unsigned char kat1677_addinreseed[] = { + 0x91, 0xa7, 0x7c, 0x7f, 0x13, 0x2f, 0x21, 0x03, 0x51, 0xbb, 0x51, 0xc6, + 0xc7, 0x32, 0x7f, 0x6f, +}; +static const unsigned char kat1677_addin0[] = { + 0x33, 0x61, 0xb4, 0x6f, 0xc0, 0x51, 0x20, 0x43, 0x02, 0x26, 0x4b, 0x97, + 0xb8, 0x54, 0x77, 0x07, +}; +static const unsigned char kat1677_addin1[] = { + 0x06, 0x47, 0x8f, 0xa6, 0x87, 0x46, 0x5e, 0x75, 0x94, 0x20, 0xea, 0xac, + 0x2c, 0x7d, 0x0a, 0xdd, +}; +static const unsigned char kat1677_retbits[] = { + 0x26, 0x05, 0xbb, 0xd7, 0xd0, 0xef, 0x8e, 0x2b, 0x3d, 0x8c, 0x57, 0x9e, + 0xb9, 0xf0, 0x60, 0x2c, 0xb0, 0x35, 0xcf, 0xd5, 0xe4, 0x66, 0xe4, 0xd5, + 0xa1, 0xe4, 0x0f, 0x92, 0x88, 0xbb, 0x06, 0xdc, 0x52, 0x89, 0x6c, 0xe3, + 0x41, 0xab, 0x39, 0xe2, 0x16, 0xce, 0x7b, 0x8b, 0x70, 0xd6, 0x2e, 0x1c, + 0xe0, 0x7b, 0xbc, 0x0a, 0x31, 0x17, 0x2f, 0xd1, 0x91, 0xf4, 0x00, 0xfd, + 0x2b, 0xfa, 0xfd, 0x47, +}; +static const struct drbg_kat_pr_false kat1677_t = { + 11, kat1677_entropyin, kat1677_nonce, kat1677_persstr, + kat1677_entropyinreseed, kat1677_addinreseed, kat1677_addin0, + kat1677_addin1, kat1677_retbits +}; +static const struct drbg_kat kat1677 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1677_t +}; + +static const unsigned char kat1678_entropyin[] = { + 0x7c, 0x5d, 0x54, 0x81, 0x65, 0x13, 0xa3, 0x18, 0xb3, 0x3a, 0xc6, 0x7e, + 0xd7, 0x14, 0x4d, 0x4c, +}; +static const unsigned char kat1678_nonce[] = { + 0x52, 0xbe, 0xc7, 0x8f, 0xae, 0xa5, 0xe1, 0xf6, +}; +static const unsigned char kat1678_persstr[] = { + 0x8a, 0x2f, 0x62, 0xb8, 0x33, 0x07, 0xbc, 0x52, 0xe7, 0xcf, 0xa4, 0xcf, + 0x81, 0x73, 0x6e, 0xfa, +}; +static const unsigned char kat1678_entropyinreseed[] = { + 0x19, 0x2f, 0x65, 0x31, 0x61, 0x7e, 0xc4, 0xba, 0xef, 0x6a, 0x30, 0x2e, + 0x18, 0xfe, 0x8a, 0x16, +}; +static const unsigned char kat1678_addinreseed[] = { + 0xf2, 0xac, 0xa1, 0xe5, 0xc0, 0x01, 0x77, 0x08, 0xfc, 0x78, 0x14, 0xcb, + 0x74, 0x8b, 0x09, 0x79, +}; +static const unsigned char kat1678_addin0[] = { + 0xff, 0x68, 0xc1, 0x94, 0x02, 0xe0, 0xcb, 0xae, 0x1a, 0x67, 0xf9, 0x8f, + 0xfd, 0x62, 0xf2, 0x5e, +}; +static const unsigned char kat1678_addin1[] = { + 0x2e, 0x89, 0x13, 0x4c, 0x16, 0xb5, 0xda, 0x0f, 0x57, 0x2a, 0x72, 0xe8, + 0xf7, 0x2b, 0xad, 0x03, +}; +static const unsigned char kat1678_retbits[] = { + 0x95, 0x9d, 0x50, 0x5f, 0x74, 0x2d, 0x5c, 0xfd, 0x4e, 0x57, 0x67, 0xab, + 0x75, 0xf4, 0x1a, 0x6a, 0x97, 0x86, 0x5b, 0x6a, 0x48, 0x91, 0x8a, 0x68, + 0xc9, 0x15, 0x5d, 0x9e, 0xe5, 0x61, 0x43, 0x96, 0x3c, 0x5f, 0xe0, 0x20, + 0x0e, 0xb3, 0xf7, 0x3e, 0x23, 0x4d, 0xdb, 0x0d, 0xf4, 0xbf, 0xe9, 0xa9, + 0x6b, 0x59, 0xc8, 0xd3, 0xdb, 0xc3, 0x24, 0xd4, 0x9a, 0x01, 0xe0, 0x11, + 0x3b, 0xfc, 0x0e, 0xae, +}; +static const struct drbg_kat_pr_false kat1678_t = { + 12, kat1678_entropyin, kat1678_nonce, kat1678_persstr, + kat1678_entropyinreseed, kat1678_addinreseed, kat1678_addin0, + kat1678_addin1, kat1678_retbits +}; +static const struct drbg_kat kat1678 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1678_t +}; + +static const unsigned char kat1679_entropyin[] = { + 0x59, 0x87, 0x0c, 0x27, 0x3d, 0x6d, 0x94, 0xa6, 0xa8, 0xa3, 0x8a, 0x2c, + 0x63, 0xba, 0x28, 0x82, +}; +static const unsigned char kat1679_nonce[] = { + 0x16, 0x76, 0x7b, 0x20, 0x36, 0x07, 0x63, 0x01, +}; +static const unsigned char kat1679_persstr[] = { + 0x1e, 0x4c, 0x01, 0xaf, 0x96, 0x95, 0x28, 0x84, 0x9f, 0xfa, 0xfb, 0x17, + 0x04, 0x4b, 0xbc, 0xd9, +}; +static const unsigned char kat1679_entropyinreseed[] = { + 0x4d, 0x83, 0x53, 0x75, 0x0d, 0xe1, 0x5b, 0xbc, 0x51, 0x0e, 0xe8, 0x9c, + 0x56, 0xd9, 0xb2, 0xcf, +}; +static const unsigned char kat1679_addinreseed[] = { + 0x58, 0xd4, 0x9d, 0x61, 0x04, 0x73, 0xcd, 0x1a, 0x0c, 0x02, 0x2e, 0x33, + 0x8e, 0x45, 0xc9, 0xc7, +}; +static const unsigned char kat1679_addin0[] = { + 0x2b, 0xc0, 0x10, 0x29, 0xd8, 0x19, 0x5d, 0x54, 0xf8, 0xac, 0xe2, 0x35, + 0x2c, 0x4b, 0xf1, 0x56, +}; +static const unsigned char kat1679_addin1[] = { + 0xdf, 0xdc, 0xb7, 0x8b, 0xcd, 0xa7, 0x7c, 0xf0, 0xa6, 0x36, 0xde, 0x21, + 0x84, 0x9b, 0xab, 0xc9, +}; +static const unsigned char kat1679_retbits[] = { + 0xdd, 0x24, 0xc8, 0x35, 0x59, 0x5f, 0xf6, 0x42, 0xfc, 0x2f, 0x23, 0x79, + 0xe3, 0x5f, 0x5c, 0xdd, 0x74, 0x95, 0x78, 0x38, 0x48, 0x61, 0x35, 0x64, + 0xd9, 0xb2, 0xbe, 0xf9, 0x62, 0x50, 0x4f, 0x2c, 0x76, 0x07, 0x50, 0x5e, + 0x09, 0x12, 0x2d, 0x63, 0xa2, 0xaa, 0x06, 0x78, 0xb9, 0x5f, 0x4d, 0x3c, + 0x3d, 0xd3, 0xc5, 0xf8, 0x5f, 0x1a, 0x1a, 0x0f, 0x55, 0x9e, 0xef, 0x23, + 0xdb, 0x00, 0x2f, 0xd7, +}; +static const struct drbg_kat_pr_false kat1679_t = { + 13, kat1679_entropyin, kat1679_nonce, kat1679_persstr, + kat1679_entropyinreseed, kat1679_addinreseed, kat1679_addin0, + kat1679_addin1, kat1679_retbits +}; +static const struct drbg_kat kat1679 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1679_t +}; + +static const unsigned char kat1680_entropyin[] = { + 0x03, 0xaf, 0x6c, 0x44, 0xc7, 0x10, 0x15, 0x44, 0xca, 0x78, 0x88, 0x83, + 0x1f, 0x3f, 0x9f, 0x95, +}; +static const unsigned char kat1680_nonce[] = { + 0x58, 0xd8, 0x0f, 0xc3, 0x78, 0x56, 0x93, 0x46, +}; +static const unsigned char kat1680_persstr[] = { + 0x7e, 0xc2, 0xb5, 0x97, 0xc8, 0x45, 0xae, 0x8b, 0xbb, 0x63, 0x60, 0x9a, + 0x80, 0xc2, 0xab, 0x4f, +}; +static const unsigned char kat1680_entropyinreseed[] = { + 0x41, 0x07, 0x37, 0xc3, 0xc6, 0x11, 0x2b, 0x51, 0x13, 0xf0, 0xef, 0x66, + 0xb0, 0xfa, 0x6a, 0x07, +}; +static const unsigned char kat1680_addinreseed[] = { + 0xae, 0x2c, 0xe6, 0xd1, 0xdb, 0xa5, 0x67, 0x75, 0xdb, 0x17, 0xb8, 0xc6, + 0xd9, 0x37, 0x9f, 0x14, +}; +static const unsigned char kat1680_addin0[] = { + 0x57, 0x86, 0x63, 0x75, 0x23, 0x8e, 0xa5, 0x6e, 0x97, 0xdd, 0x6a, 0xf8, + 0xc5, 0x01, 0x06, 0x18, +}; +static const unsigned char kat1680_addin1[] = { + 0x34, 0xa4, 0x49, 0xf8, 0x60, 0xc0, 0xc1, 0x8f, 0xdf, 0x85, 0x4b, 0x32, + 0xde, 0x57, 0x29, 0x17, +}; +static const unsigned char kat1680_retbits[] = { + 0x56, 0x4b, 0xd3, 0xb7, 0x7e, 0x4c, 0x3b, 0xdc, 0xb6, 0xc8, 0x5d, 0xb1, + 0x11, 0xf2, 0x94, 0x29, 0x3a, 0x47, 0x38, 0xd2, 0x00, 0x43, 0xda, 0x15, + 0x64, 0x9b, 0x8c, 0x94, 0xf1, 0x4e, 0xcd, 0xc7, 0x3f, 0xb7, 0x5d, 0x76, + 0x19, 0x71, 0xf3, 0xa8, 0xdc, 0x4f, 0x33, 0xf4, 0x5d, 0xf9, 0x7c, 0x0d, + 0x2b, 0xba, 0x4e, 0x4b, 0xe7, 0x4f, 0x52, 0x88, 0x73, 0x25, 0xb3, 0x00, + 0xff, 0x1e, 0x6d, 0x81, +}; +static const struct drbg_kat_pr_false kat1680_t = { + 14, kat1680_entropyin, kat1680_nonce, kat1680_persstr, + kat1680_entropyinreseed, kat1680_addinreseed, kat1680_addin0, + kat1680_addin1, kat1680_retbits +}; +static const struct drbg_kat kat1680 = { + PR_FALSE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat1680_t +}; + +static const unsigned char kat1681_entropyin[] = { + 0xb1, 0x1d, 0x8b, 0x10, 0x4a, 0x7c, 0xed, 0x9b, 0x9f, 0x37, 0xe5, 0xd9, + 0x2a, 0xd3, 0xdf, 0xcb, 0xb8, 0x17, 0x55, 0x2b, 0x1a, 0xe8, 0x8f, 0x6a, +}; +static const unsigned char kat1681_nonce[] = { + 0x01, 0x75, 0x10, 0xf2, 0x70, 0xc6, 0x65, 0x86, 0xa5, 0x13, 0x13, 0xea, + 0xdc, 0x32, 0xb0, 0x7e, +}; +static const unsigned char kat1681_persstr[] = {0}; +static const unsigned char kat1681_entropyinreseed[] = { + 0x6d, 0x14, 0xcf, 0xb3, 0x6f, 0x30, 0xc9, 0xc1, 0xa1, 0xba, 0x0e, 0x0a, + 0x32, 0xc2, 0xf9, 0x9d, 0x1b, 0x47, 0xf2, 0x19, 0xa3, 0xa8, 0xac, 0x14, +}; +static const unsigned char kat1681_addinreseed[] = {0}; +static const unsigned char kat1681_addin0[] = {0}; +static const unsigned char kat1681_addin1[] = {0}; +static const unsigned char kat1681_retbits[] = { + 0x53, 0xfb, 0xba, 0x56, 0x3a, 0xe0, 0x14, 0xeb, 0xc0, 0x80, 0x76, 0x7a, + 0xab, 0x84, 0x52, 0xa9, 0xf3, 0x6c, 0xe4, 0x0b, 0xbf, 0x68, 0xf1, 0xa1, + 0x2d, 0xc0, 0xa6, 0x38, 0x8c, 0x87, 0x0c, 0x8d, 0xfa, 0x42, 0x50, 0x52, + 0x6c, 0xbc, 0x8c, 0x98, 0x3f, 0xee, 0x64, 0x49, 0x90, 0x3c, 0x6b, 0xd7, + 0xc2, 0xc0, 0x2e, 0x32, 0x76, 0x80, 0xa6, 0x6b, 0x46, 0x42, 0x67, 0xed, + 0xbc, 0x4e, 0x67, 0x97, +}; +static const struct drbg_kat_pr_false kat1681_t = { + 0, kat1681_entropyin, kat1681_nonce, kat1681_persstr, + kat1681_entropyinreseed, kat1681_addinreseed, kat1681_addin0, + kat1681_addin1, kat1681_retbits +}; +static const struct drbg_kat kat1681 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1681_t +}; + +static const unsigned char kat1682_entropyin[] = { + 0x88, 0x0a, 0x7d, 0xee, 0x52, 0xba, 0x35, 0x83, 0x04, 0x42, 0x54, 0xbd, + 0xca, 0xe8, 0x9d, 0xb6, 0xf8, 0x45, 0x1e, 0x63, 0x19, 0x37, 0xfe, 0xcb, +}; +static const unsigned char kat1682_nonce[] = { + 0x82, 0x99, 0x9b, 0x1f, 0x66, 0x83, 0xa3, 0x0d, 0xdf, 0x52, 0x76, 0x59, + 0xdf, 0x47, 0x3e, 0x2f, +}; +static const unsigned char kat1682_persstr[] = {0}; +static const unsigned char kat1682_entropyinreseed[] = { + 0x11, 0x53, 0xcf, 0xd0, 0x90, 0x6d, 0x9d, 0x82, 0xf2, 0xb6, 0x73, 0xcc, + 0xdd, 0x92, 0x8e, 0xda, 0x89, 0x87, 0x05, 0x76, 0xc9, 0xc4, 0x78, 0xaf, +}; +static const unsigned char kat1682_addinreseed[] = {0}; +static const unsigned char kat1682_addin0[] = {0}; +static const unsigned char kat1682_addin1[] = {0}; +static const unsigned char kat1682_retbits[] = { + 0xa0, 0x79, 0x79, 0xb2, 0xae, 0xb6, 0xc4, 0x81, 0x95, 0xb9, 0x17, 0xeb, + 0xb4, 0xf3, 0xea, 0x4d, 0x24, 0x8e, 0x96, 0x24, 0xa9, 0x10, 0x01, 0x29, + 0x00, 0xeb, 0xbd, 0xff, 0x1a, 0xf4, 0xa9, 0x75, 0x40, 0x0d, 0xcc, 0x51, + 0x0a, 0x0f, 0x56, 0x6b, 0x02, 0x4a, 0x23, 0x82, 0x06, 0x28, 0x08, 0xcd, + 0x5b, 0x44, 0x39, 0xdc, 0xce, 0xaf, 0x7c, 0xe7, 0xe3, 0x83, 0x7d, 0xdf, + 0xc2, 0x5c, 0xb1, 0x66, +}; +static const struct drbg_kat_pr_false kat1682_t = { + 1, kat1682_entropyin, kat1682_nonce, kat1682_persstr, + kat1682_entropyinreseed, kat1682_addinreseed, kat1682_addin0, + kat1682_addin1, kat1682_retbits +}; +static const struct drbg_kat kat1682 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1682_t +}; + +static const unsigned char kat1683_entropyin[] = { + 0xb8, 0x5e, 0xa7, 0x67, 0x39, 0xba, 0xf8, 0x3c, 0x2c, 0xe4, 0x4c, 0x9c, + 0xb3, 0xb0, 0xd6, 0x55, 0xef, 0x36, 0x9c, 0x63, 0x14, 0x85, 0x05, 0xd2, +}; +static const unsigned char kat1683_nonce[] = { + 0xdc, 0xf5, 0xf6, 0x6c, 0x8d, 0xc3, 0xd9, 0x6e, 0x11, 0x7c, 0xa8, 0xb9, + 0x07, 0x56, 0x58, 0x79, +}; +static const unsigned char kat1683_persstr[] = {0}; +static const unsigned char kat1683_entropyinreseed[] = { + 0xbd, 0x67, 0xbd, 0x3f, 0xab, 0xaf, 0xd2, 0x98, 0xd8, 0xd2, 0xa3, 0x9e, + 0x7c, 0x88, 0x77, 0x88, 0x60, 0x9d, 0xc9, 0x0b, 0x00, 0xaa, 0xfa, 0xb3, +}; +static const unsigned char kat1683_addinreseed[] = {0}; +static const unsigned char kat1683_addin0[] = {0}; +static const unsigned char kat1683_addin1[] = {0}; +static const unsigned char kat1683_retbits[] = { + 0x7d, 0x6b, 0x36, 0x75, 0x26, 0xb2, 0xfc, 0xa3, 0x6b, 0x18, 0x43, 0xa5, + 0xf7, 0x43, 0xcf, 0xef, 0x02, 0xe1, 0xc4, 0x9f, 0x16, 0x07, 0x1d, 0x15, + 0x01, 0xf9, 0x1f, 0xfb, 0xd2, 0x4a, 0x03, 0xf5, 0xe0, 0xe6, 0x4f, 0xbf, + 0x55, 0x0b, 0x6c, 0x36, 0x6f, 0x5c, 0x05, 0x92, 0xbc, 0x83, 0xbd, 0xff, + 0xa5, 0xdb, 0x64, 0x89, 0x7b, 0xfc, 0x38, 0x42, 0x53, 0x54, 0xbe, 0xa3, + 0xe1, 0x78, 0x26, 0x1d, +}; +static const struct drbg_kat_pr_false kat1683_t = { + 2, kat1683_entropyin, kat1683_nonce, kat1683_persstr, + kat1683_entropyinreseed, kat1683_addinreseed, kat1683_addin0, + kat1683_addin1, kat1683_retbits +}; +static const struct drbg_kat kat1683 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1683_t +}; + +static const unsigned char kat1684_entropyin[] = { + 0x5c, 0x1c, 0x98, 0x76, 0x25, 0xe9, 0x1a, 0x8d, 0xa1, 0x4d, 0x9a, 0x48, + 0x27, 0xe8, 0x3e, 0x0a, 0x18, 0xb7, 0x15, 0x4c, 0xfc, 0xd2, 0xa2, 0xe6, +}; +static const unsigned char kat1684_nonce[] = { + 0xe7, 0x5d, 0x87, 0x38, 0xac, 0xef, 0x17, 0xff, 0x94, 0xa4, 0x80, 0x9e, + 0xde, 0xd5, 0xcc, 0x74, +}; +static const unsigned char kat1684_persstr[] = {0}; +static const unsigned char kat1684_entropyinreseed[] = { + 0x4d, 0xc9, 0xca, 0x6b, 0xf7, 0xc4, 0xe9, 0x14, 0xcc, 0xb7, 0x85, 0x63, + 0x9c, 0x80, 0xb0, 0x85, 0x38, 0xe6, 0x85, 0x9a, 0xe1, 0x60, 0xb1, 0xc1, +}; +static const unsigned char kat1684_addinreseed[] = {0}; +static const unsigned char kat1684_addin0[] = {0}; +static const unsigned char kat1684_addin1[] = {0}; +static const unsigned char kat1684_retbits[] = { + 0xd2, 0x3c, 0x44, 0xc8, 0x9c, 0xb4, 0xcf, 0x3a, 0x61, 0x9d, 0xf8, 0x0d, + 0xf7, 0x6c, 0x75, 0x25, 0xd3, 0x7f, 0x83, 0xbe, 0x93, 0xf7, 0x23, 0xf5, + 0x5f, 0x26, 0x63, 0x99, 0x69, 0xde, 0x8b, 0x12, 0xc6, 0x87, 0xf1, 0x7b, + 0x4d, 0x4c, 0x94, 0x7e, 0x6a, 0x53, 0xde, 0x7c, 0x0f, 0x7c, 0xdd, 0xde, + 0xf6, 0x21, 0x50, 0x21, 0x62, 0xa3, 0x4c, 0xee, 0x70, 0xd5, 0x1e, 0x14, + 0xe7, 0x9d, 0x85, 0x3c, +}; +static const struct drbg_kat_pr_false kat1684_t = { + 3, kat1684_entropyin, kat1684_nonce, kat1684_persstr, + kat1684_entropyinreseed, kat1684_addinreseed, kat1684_addin0, + kat1684_addin1, kat1684_retbits +}; +static const struct drbg_kat kat1684 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1684_t +}; + +static const unsigned char kat1685_entropyin[] = { + 0xcc, 0x15, 0xb7, 0x05, 0x89, 0xb3, 0xe4, 0x7b, 0x00, 0xa0, 0x8e, 0x17, + 0x18, 0x60, 0xcd, 0x24, 0x43, 0x55, 0xda, 0x6a, 0xd8, 0xe0, 0x5c, 0xac, +}; +static const unsigned char kat1685_nonce[] = { + 0x25, 0x65, 0x03, 0x30, 0x94, 0x68, 0x95, 0x5f, 0x40, 0x8d, 0xe1, 0xa1, + 0x88, 0x19, 0xe9, 0x8c, +}; +static const unsigned char kat1685_persstr[] = {0}; +static const unsigned char kat1685_entropyinreseed[] = { + 0x00, 0xd3, 0x94, 0xec, 0x9e, 0x37, 0xc1, 0x58, 0xb2, 0xb6, 0x5f, 0x43, + 0xf6, 0x91, 0x12, 0xe6, 0xb7, 0x5d, 0x6b, 0x19, 0x95, 0xd5, 0x6a, 0x2c, +}; +static const unsigned char kat1685_addinreseed[] = {0}; +static const unsigned char kat1685_addin0[] = {0}; +static const unsigned char kat1685_addin1[] = {0}; +static const unsigned char kat1685_retbits[] = { + 0x6c, 0xc2, 0x80, 0x59, 0x53, 0xbc, 0x5c, 0xfb, 0x9a, 0x26, 0x80, 0x8b, + 0x10, 0x93, 0x40, 0x01, 0xcf, 0xeb, 0x91, 0xa3, 0x7a, 0x2f, 0x7b, 0xb8, + 0xa9, 0x14, 0x13, 0x50, 0x0d, 0x69, 0x62, 0x02, 0x0b, 0x1a, 0xe0, 0xd1, + 0xea, 0xd6, 0x03, 0x89, 0x9e, 0xb2, 0x34, 0xa5, 0x1b, 0xeb, 0xea, 0x22, + 0x1a, 0x80, 0x3e, 0x1c, 0xec, 0x0f, 0x9c, 0xfd, 0x65, 0x06, 0x86, 0xee, + 0x14, 0xb0, 0xc5, 0xc3, +}; +static const struct drbg_kat_pr_false kat1685_t = { + 4, kat1685_entropyin, kat1685_nonce, kat1685_persstr, + kat1685_entropyinreseed, kat1685_addinreseed, kat1685_addin0, + kat1685_addin1, kat1685_retbits +}; +static const struct drbg_kat kat1685 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1685_t +}; + +static const unsigned char kat1686_entropyin[] = { + 0xf9, 0xb2, 0xfd, 0xd2, 0xed, 0xaa, 0x5f, 0x94, 0xef, 0xdc, 0xc3, 0xdc, + 0x97, 0xba, 0xfd, 0xa0, 0x14, 0x21, 0x0d, 0x62, 0xbe, 0x32, 0x9c, 0x18, +}; +static const unsigned char kat1686_nonce[] = { + 0x99, 0x86, 0x88, 0x05, 0xc0, 0xc3, 0x6b, 0xd2, 0x68, 0x65, 0x0a, 0x48, + 0xc6, 0xc8, 0x40, 0x83, +}; +static const unsigned char kat1686_persstr[] = {0}; +static const unsigned char kat1686_entropyinreseed[] = { + 0x95, 0xe4, 0x40, 0x07, 0xd9, 0xba, 0x0b, 0xeb, 0x99, 0xf8, 0x22, 0x08, + 0x52, 0xf8, 0x6f, 0xb3, 0x8c, 0xa6, 0x33, 0x31, 0xf8, 0x99, 0x15, 0xec, +}; +static const unsigned char kat1686_addinreseed[] = {0}; +static const unsigned char kat1686_addin0[] = {0}; +static const unsigned char kat1686_addin1[] = {0}; +static const unsigned char kat1686_retbits[] = { + 0xf6, 0x53, 0x8f, 0x8f, 0x69, 0x1a, 0xda, 0xa1, 0x17, 0x93, 0x8e, 0xfc, + 0x81, 0x88, 0x5f, 0x56, 0xff, 0xd9, 0xb4, 0x21, 0x03, 0x7b, 0x92, 0x4b, + 0xe2, 0xb6, 0xe2, 0x3d, 0x38, 0x51, 0xe4, 0x65, 0x0e, 0x03, 0xf0, 0xdd, + 0x7a, 0x44, 0xaf, 0xa4, 0x1a, 0x46, 0x0c, 0xce, 0xdc, 0x3b, 0x65, 0x96, + 0xdc, 0xb0, 0x49, 0xe9, 0x89, 0x56, 0x4b, 0x0f, 0xf5, 0xef, 0x6a, 0xdc, + 0xea, 0x82, 0xab, 0x01, +}; +static const struct drbg_kat_pr_false kat1686_t = { + 5, kat1686_entropyin, kat1686_nonce, kat1686_persstr, + kat1686_entropyinreseed, kat1686_addinreseed, kat1686_addin0, + kat1686_addin1, kat1686_retbits +}; +static const struct drbg_kat kat1686 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1686_t +}; + +static const unsigned char kat1687_entropyin[] = { + 0xa9, 0x79, 0x20, 0x82, 0x0f, 0x98, 0x69, 0xa4, 0x38, 0x75, 0xe3, 0xc2, + 0xc6, 0x46, 0x5a, 0xe5, 0xf8, 0xb0, 0x97, 0x6e, 0xc8, 0xb6, 0xf6, 0x56, +}; +static const unsigned char kat1687_nonce[] = { + 0x92, 0x7c, 0x2a, 0xad, 0x29, 0x09, 0x1d, 0x96, 0xa4, 0x5f, 0x28, 0x17, + 0x25, 0x30, 0xed, 0x77, +}; +static const unsigned char kat1687_persstr[] = {0}; +static const unsigned char kat1687_entropyinreseed[] = { + 0xdb, 0xdb, 0x21, 0x29, 0x8a, 0x35, 0x9c, 0x9c, 0xdf, 0x82, 0x0a, 0x04, + 0xb2, 0x86, 0xd8, 0x7c, 0xc0, 0xa0, 0x74, 0x96, 0xd9, 0xa4, 0x9a, 0x2e, +}; +static const unsigned char kat1687_addinreseed[] = {0}; +static const unsigned char kat1687_addin0[] = {0}; +static const unsigned char kat1687_addin1[] = {0}; +static const unsigned char kat1687_retbits[] = { + 0xde, 0x33, 0xef, 0xd6, 0x8a, 0x83, 0xc9, 0x1a, 0xdc, 0xdf, 0xe9, 0xbe, + 0x01, 0x97, 0xa7, 0x91, 0x2b, 0x0f, 0xf0, 0xc7, 0xff, 0x4d, 0x2f, 0xa3, + 0x8e, 0x6b, 0x1f, 0xe4, 0x27, 0xce, 0x77, 0x77, 0x5d, 0xd8, 0xa6, 0x6e, + 0x64, 0x06, 0x0a, 0x8e, 0x82, 0xfd, 0x3a, 0xfe, 0xf9, 0xa7, 0x3d, 0xea, + 0x82, 0xa5, 0x4a, 0x55, 0x4a, 0x20, 0xae, 0x31, 0x40, 0xc1, 0x6b, 0x8e, + 0xe3, 0x38, 0x95, 0x34, +}; +static const struct drbg_kat_pr_false kat1687_t = { + 6, kat1687_entropyin, kat1687_nonce, kat1687_persstr, + kat1687_entropyinreseed, kat1687_addinreseed, kat1687_addin0, + kat1687_addin1, kat1687_retbits +}; +static const struct drbg_kat kat1687 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1687_t +}; + +static const unsigned char kat1688_entropyin[] = { + 0x94, 0x85, 0x54, 0x25, 0xe8, 0x28, 0xce, 0x1f, 0x2e, 0x05, 0x11, 0x14, + 0xa9, 0x0f, 0xa1, 0xea, 0x86, 0xda, 0xfd, 0x8f, 0x2a, 0xa5, 0x8e, 0xba, +}; +static const unsigned char kat1688_nonce[] = { + 0x97, 0x9a, 0x8c, 0xdb, 0xad, 0xf8, 0x44, 0x66, 0x5b, 0x13, 0xad, 0x19, + 0x76, 0x9d, 0xa9, 0x09, +}; +static const unsigned char kat1688_persstr[] = {0}; +static const unsigned char kat1688_entropyinreseed[] = { + 0x69, 0x5a, 0x5c, 0xd7, 0x98, 0x66, 0xa7, 0x2e, 0x2b, 0xd2, 0xb4, 0xb6, + 0x1b, 0xe0, 0x70, 0x8a, 0x4e, 0xa7, 0x95, 0x80, 0x49, 0x4d, 0x1b, 0xd5, +}; +static const unsigned char kat1688_addinreseed[] = {0}; +static const unsigned char kat1688_addin0[] = {0}; +static const unsigned char kat1688_addin1[] = {0}; +static const unsigned char kat1688_retbits[] = { + 0x4b, 0x9f, 0x91, 0x05, 0x56, 0xcf, 0xb4, 0x5d, 0x3b, 0x3a, 0x0b, 0xa9, + 0x45, 0xe2, 0x72, 0xd8, 0x1e, 0x36, 0x15, 0x97, 0xe3, 0xa2, 0x60, 0x63, + 0xb3, 0x86, 0x2e, 0xc5, 0xba, 0x6a, 0x5e, 0x9e, 0xe7, 0xc7, 0xd7, 0x70, + 0xe7, 0xbb, 0xce, 0x70, 0x3e, 0x6e, 0xeb, 0x68, 0xd6, 0xeb, 0x12, 0x73, + 0x5a, 0x19, 0x6c, 0xd2, 0x01, 0xb5, 0xbc, 0x9f, 0x2c, 0xeb, 0x30, 0x4b, + 0xa6, 0x4b, 0x66, 0x5c, +}; +static const struct drbg_kat_pr_false kat1688_t = { + 7, kat1688_entropyin, kat1688_nonce, kat1688_persstr, + kat1688_entropyinreseed, kat1688_addinreseed, kat1688_addin0, + kat1688_addin1, kat1688_retbits +}; +static const struct drbg_kat kat1688 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1688_t +}; + +static const unsigned char kat1689_entropyin[] = { + 0xf1, 0xa7, 0x52, 0xeb, 0x2b, 0x86, 0x93, 0x23, 0x48, 0x48, 0x64, 0xe2, + 0x28, 0x5c, 0x08, 0xf2, 0x3b, 0xc5, 0x1c, 0xed, 0x55, 0x10, 0xc0, 0x53, +}; +static const unsigned char kat1689_nonce[] = { + 0xcb, 0xfb, 0x38, 0x85, 0xad, 0x9e, 0xb3, 0xdd, 0xb2, 0x88, 0x53, 0x29, + 0x03, 0x0c, 0x20, 0xb3, +}; +static const unsigned char kat1689_persstr[] = {0}; +static const unsigned char kat1689_entropyinreseed[] = { + 0x1a, 0xbe, 0x3a, 0xe3, 0x4c, 0x0a, 0x9b, 0x5d, 0xf6, 0x0f, 0xc7, 0xaf, + 0x7a, 0x8f, 0x65, 0xc3, 0xb7, 0x65, 0x70, 0x9c, 0x2f, 0xce, 0xed, 0x3b, +}; +static const unsigned char kat1689_addinreseed[] = {0}; +static const unsigned char kat1689_addin0[] = {0}; +static const unsigned char kat1689_addin1[] = {0}; +static const unsigned char kat1689_retbits[] = { + 0x75, 0xa3, 0xe6, 0xe4, 0x51, 0x7a, 0x30, 0x26, 0xf1, 0x1f, 0xc6, 0x19, + 0x1a, 0x32, 0x8a, 0xbd, 0xf9, 0x16, 0x6b, 0xf5, 0xe9, 0x00, 0x10, 0xc1, + 0xe8, 0x33, 0x2e, 0x4a, 0x59, 0x3e, 0x4e, 0x49, 0x31, 0xd6, 0xaf, 0x12, + 0x9e, 0xe2, 0x50, 0xd5, 0x65, 0x4c, 0x6a, 0x9b, 0x60, 0x1b, 0xe6, 0xee, + 0xd2, 0xd6, 0x71, 0x19, 0xa7, 0xcd, 0x22, 0x22, 0x1e, 0x68, 0xdb, 0xb9, + 0xd7, 0x13, 0xd1, 0x38, +}; +static const struct drbg_kat_pr_false kat1689_t = { + 8, kat1689_entropyin, kat1689_nonce, kat1689_persstr, + kat1689_entropyinreseed, kat1689_addinreseed, kat1689_addin0, + kat1689_addin1, kat1689_retbits +}; +static const struct drbg_kat kat1689 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1689_t +}; + +static const unsigned char kat1690_entropyin[] = { + 0xea, 0xc1, 0x5d, 0x41, 0x87, 0xdb, 0x3c, 0x65, 0x6f, 0x3c, 0xa8, 0x2c, + 0xad, 0xf3, 0xb8, 0x22, 0xe7, 0x92, 0xab, 0xd7, 0x7d, 0x07, 0x62, 0x09, +}; +static const unsigned char kat1690_nonce[] = { + 0x07, 0x94, 0xcd, 0x4c, 0x85, 0x6c, 0x3b, 0x06, 0xe5, 0xa0, 0x8c, 0x01, + 0xa2, 0xf7, 0x33, 0x9b, +}; +static const unsigned char kat1690_persstr[] = {0}; +static const unsigned char kat1690_entropyinreseed[] = { + 0xdf, 0x9f, 0x05, 0x09, 0x9f, 0x04, 0x92, 0xb2, 0x85, 0xd6, 0x79, 0x1d, + 0xb7, 0x03, 0x89, 0xa4, 0x12, 0xaf, 0x2e, 0x9b, 0xb4, 0x97, 0x18, 0xd9, +}; +static const unsigned char kat1690_addinreseed[] = {0}; +static const unsigned char kat1690_addin0[] = {0}; +static const unsigned char kat1690_addin1[] = {0}; +static const unsigned char kat1690_retbits[] = { + 0x38, 0x95, 0xe8, 0xb2, 0x75, 0x1c, 0xac, 0x3d, 0xcb, 0xaa, 0x9c, 0x06, + 0xb9, 0x8d, 0x4b, 0xb4, 0x8f, 0xc7, 0xdf, 0xf1, 0x75, 0xad, 0xb4, 0xfe, + 0x9e, 0x8d, 0xde, 0x5e, 0x76, 0x1f, 0x9c, 0x5f, 0x9d, 0x7c, 0x92, 0xc4, + 0xe8, 0x32, 0x0c, 0x9d, 0x6f, 0xd2, 0x7b, 0x48, 0x71, 0x3b, 0x39, 0x01, + 0x2b, 0x67, 0x15, 0x4c, 0x15, 0xea, 0x0b, 0xe1, 0xd0, 0xb9, 0xb4, 0x52, + 0x3c, 0xd8, 0x2e, 0x52, +}; +static const struct drbg_kat_pr_false kat1690_t = { + 9, kat1690_entropyin, kat1690_nonce, kat1690_persstr, + kat1690_entropyinreseed, kat1690_addinreseed, kat1690_addin0, + kat1690_addin1, kat1690_retbits +}; +static const struct drbg_kat kat1690 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1690_t +}; + +static const unsigned char kat1691_entropyin[] = { + 0x8e, 0xc7, 0x70, 0x27, 0x54, 0x86, 0x31, 0x64, 0x65, 0xf6, 0xdd, 0x0a, + 0x82, 0xd5, 0xa5, 0xf7, 0x52, 0x93, 0x92, 0xca, 0x59, 0xda, 0xe5, 0x72, +}; +static const unsigned char kat1691_nonce[] = { + 0x68, 0xe5, 0xb6, 0xbe, 0xf9, 0xb2, 0x21, 0x84, 0x87, 0x25, 0x04, 0xb2, + 0xb8, 0xb1, 0xbc, 0x63, +}; +static const unsigned char kat1691_persstr[] = {0}; +static const unsigned char kat1691_entropyinreseed[] = { + 0x06, 0x6b, 0xba, 0xb8, 0x85, 0xdb, 0xec, 0x60, 0xa4, 0x00, 0x5b, 0xdf, + 0x1b, 0x26, 0xae, 0x24, 0x05, 0xb0, 0xf0, 0x89, 0xcd, 0x72, 0xb4, 0x70, +}; +static const unsigned char kat1691_addinreseed[] = {0}; +static const unsigned char kat1691_addin0[] = {0}; +static const unsigned char kat1691_addin1[] = {0}; +static const unsigned char kat1691_retbits[] = { + 0xe2, 0x37, 0xd1, 0x4f, 0xa1, 0xde, 0x2d, 0xb1, 0xee, 0xed, 0x8d, 0x56, + 0x12, 0xe6, 0x40, 0x11, 0x61, 0x2b, 0x92, 0x9a, 0x59, 0x55, 0x8e, 0xb1, + 0x1a, 0xfa, 0xe1, 0xe8, 0xab, 0x01, 0x0f, 0x9a, 0xca, 0xf6, 0x97, 0x0b, + 0x86, 0x12, 0xd7, 0x6c, 0xb9, 0x82, 0xbf, 0x8b, 0xd0, 0x59, 0x7a, 0x6c, + 0xf1, 0x45, 0x0f, 0x5a, 0xf4, 0x60, 0x48, 0xf3, 0x76, 0x88, 0x96, 0x54, + 0x05, 0x18, 0xd3, 0x6e, +}; +static const struct drbg_kat_pr_false kat1691_t = { + 10, kat1691_entropyin, kat1691_nonce, kat1691_persstr, + kat1691_entropyinreseed, kat1691_addinreseed, kat1691_addin0, + kat1691_addin1, kat1691_retbits +}; +static const struct drbg_kat kat1691 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1691_t +}; + +static const unsigned char kat1692_entropyin[] = { + 0x4d, 0x8f, 0x48, 0xad, 0xd2, 0xe4, 0x3f, 0x33, 0xe9, 0x7b, 0xf4, 0xa0, + 0x47, 0xc0, 0xfb, 0xf4, 0xb6, 0x9f, 0xc6, 0x16, 0x95, 0x10, 0x26, 0x25, +}; +static const unsigned char kat1692_nonce[] = { + 0x7f, 0xb4, 0xe4, 0xb5, 0xe5, 0xc0, 0x25, 0x82, 0x26, 0x2f, 0x9c, 0x1a, + 0xe6, 0xe3, 0x21, 0x4e, +}; +static const unsigned char kat1692_persstr[] = {0}; +static const unsigned char kat1692_entropyinreseed[] = { + 0x38, 0x7a, 0x88, 0x88, 0x56, 0x59, 0x27, 0xa2, 0x26, 0x22, 0x51, 0xd1, + 0x37, 0x18, 0xe8, 0x97, 0xda, 0x8d, 0xdc, 0x41, 0xa5, 0x95, 0xa1, 0xc8, +}; +static const unsigned char kat1692_addinreseed[] = {0}; +static const unsigned char kat1692_addin0[] = {0}; +static const unsigned char kat1692_addin1[] = {0}; +static const unsigned char kat1692_retbits[] = { + 0x2b, 0x5c, 0x7c, 0x6d, 0x83, 0x9e, 0x83, 0xf5, 0x6e, 0x6e, 0x40, 0xe0, + 0x6f, 0xf1, 0x7f, 0xc2, 0x2e, 0xb1, 0x25, 0x0d, 0xd3, 0xa1, 0xda, 0x76, + 0xf2, 0xd6, 0xed, 0x8b, 0x23, 0x69, 0x6f, 0x2c, 0x10, 0x62, 0xdd, 0x1e, + 0x64, 0xae, 0xa7, 0x63, 0xe4, 0x55, 0x83, 0x5d, 0xbe, 0x68, 0xcb, 0x58, + 0xcc, 0xce, 0x0a, 0xc2, 0x61, 0x01, 0xa3, 0xed, 0xf0, 0xd6, 0x56, 0x0a, + 0x57, 0xbe, 0x2f, 0x28, +}; +static const struct drbg_kat_pr_false kat1692_t = { + 11, kat1692_entropyin, kat1692_nonce, kat1692_persstr, + kat1692_entropyinreseed, kat1692_addinreseed, kat1692_addin0, + kat1692_addin1, kat1692_retbits +}; +static const struct drbg_kat kat1692 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1692_t +}; + +static const unsigned char kat1693_entropyin[] = { + 0xe2, 0xa3, 0x0f, 0xa3, 0xcb, 0x3e, 0x33, 0xb9, 0x7d, 0x83, 0xd0, 0xd3, + 0xaa, 0x2d, 0xf4, 0x05, 0x37, 0x72, 0x91, 0xe9, 0x92, 0x0f, 0x3b, 0x26, +}; +static const unsigned char kat1693_nonce[] = { + 0x41, 0xa5, 0xe7, 0x4c, 0x8f, 0x19, 0x6a, 0x5d, 0xa2, 0xb4, 0xd9, 0x04, + 0x3e, 0x24, 0xcd, 0x42, +}; +static const unsigned char kat1693_persstr[] = {0}; +static const unsigned char kat1693_entropyinreseed[] = { + 0x15, 0xf0, 0x86, 0x37, 0xda, 0xa6, 0x57, 0x92, 0x70, 0xd8, 0x7b, 0x0c, + 0x7b, 0xeb, 0x81, 0xc3, 0x20, 0x98, 0x12, 0x15, 0xfd, 0x58, 0xa1, 0x06, +}; +static const unsigned char kat1693_addinreseed[] = {0}; +static const unsigned char kat1693_addin0[] = {0}; +static const unsigned char kat1693_addin1[] = {0}; +static const unsigned char kat1693_retbits[] = { + 0xaa, 0x1c, 0x37, 0x50, 0x3f, 0xea, 0x02, 0xa1, 0xc9, 0xd7, 0x72, 0x4b, + 0xc2, 0x8b, 0x82, 0x42, 0x46, 0xbf, 0x62, 0x03, 0x29, 0xba, 0x2f, 0x8b, + 0x4d, 0x3a, 0xa9, 0x9a, 0x8b, 0x5a, 0xd3, 0xaa, 0x47, 0x38, 0xd5, 0xb6, + 0x39, 0xa9, 0xe1, 0x73, 0x4e, 0x52, 0x08, 0x7f, 0x4d, 0xa1, 0x0f, 0x7c, + 0x29, 0x31, 0x54, 0x92, 0x3b, 0x60, 0x81, 0x90, 0xa2, 0x9e, 0x6a, 0x0d, + 0xf7, 0x6e, 0x56, 0x2f, +}; +static const struct drbg_kat_pr_false kat1693_t = { + 12, kat1693_entropyin, kat1693_nonce, kat1693_persstr, + kat1693_entropyinreseed, kat1693_addinreseed, kat1693_addin0, + kat1693_addin1, kat1693_retbits +}; +static const struct drbg_kat kat1693 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1693_t +}; + +static const unsigned char kat1694_entropyin[] = { + 0x91, 0xf9, 0x69, 0x7b, 0xb5, 0x08, 0x6f, 0x33, 0x15, 0xf5, 0xab, 0x85, + 0xde, 0x1e, 0x1f, 0xb3, 0xc1, 0xcf, 0xa8, 0x43, 0xdb, 0xae, 0x5a, 0x0e, +}; +static const unsigned char kat1694_nonce[] = { + 0xa2, 0xe5, 0xca, 0x73, 0x00, 0x77, 0x76, 0x9e, 0x3a, 0xb6, 0x52, 0xb5, + 0x03, 0x83, 0x02, 0x47, +}; +static const unsigned char kat1694_persstr[] = {0}; +static const unsigned char kat1694_entropyinreseed[] = { + 0xfe, 0x30, 0x47, 0x16, 0xbf, 0xe5, 0xa4, 0xf0, 0xc6, 0x12, 0x94, 0x6f, + 0x52, 0xb3, 0xbd, 0xea, 0x06, 0xf9, 0x12, 0xd2, 0x23, 0x15, 0x24, 0xd2, +}; +static const unsigned char kat1694_addinreseed[] = {0}; +static const unsigned char kat1694_addin0[] = {0}; +static const unsigned char kat1694_addin1[] = {0}; +static const unsigned char kat1694_retbits[] = { + 0xfc, 0xd9, 0x4f, 0x13, 0x8b, 0x88, 0xaa, 0x2e, 0x49, 0x8f, 0x75, 0x52, + 0x34, 0x5b, 0x25, 0x3a, 0xa6, 0xff, 0xe0, 0xbc, 0x15, 0x98, 0x80, 0x37, + 0x9f, 0xe7, 0x39, 0xc3, 0x60, 0x92, 0x29, 0x4d, 0xe2, 0x8d, 0x7f, 0xa7, + 0xbb, 0xb5, 0x74, 0x26, 0x6f, 0x50, 0x05, 0x99, 0x8b, 0x1a, 0xd1, 0xf2, + 0x94, 0x2b, 0x0e, 0x8f, 0xf1, 0x8c, 0xb6, 0xb3, 0x7e, 0x2f, 0x0c, 0xbf, + 0x45, 0xc0, 0x30, 0x1a, +}; +static const struct drbg_kat_pr_false kat1694_t = { + 13, kat1694_entropyin, kat1694_nonce, kat1694_persstr, + kat1694_entropyinreseed, kat1694_addinreseed, kat1694_addin0, + kat1694_addin1, kat1694_retbits +}; +static const struct drbg_kat kat1694 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1694_t +}; + +static const unsigned char kat1695_entropyin[] = { + 0xf3, 0x92, 0x2c, 0xf4, 0x22, 0x17, 0x4c, 0xe2, 0x6b, 0x0b, 0x69, 0x1d, + 0xf1, 0xc8, 0xd4, 0x4e, 0xfd, 0x46, 0xaa, 0xef, 0xa6, 0x20, 0xc2, 0x04, +}; +static const unsigned char kat1695_nonce[] = { + 0x54, 0x29, 0x0f, 0x52, 0x02, 0xde, 0x67, 0x1c, 0x30, 0xd7, 0x81, 0x97, + 0x55, 0x25, 0x74, 0x94, +}; +static const unsigned char kat1695_persstr[] = {0}; +static const unsigned char kat1695_entropyinreseed[] = { + 0xc7, 0xdb, 0xf7, 0xf1, 0x16, 0x1d, 0x35, 0x51, 0xc3, 0xb6, 0xe3, 0x60, + 0xca, 0x73, 0x21, 0x31, 0xc0, 0x4f, 0xd5, 0xe1, 0xa4, 0x3f, 0x9a, 0xff, +}; +static const unsigned char kat1695_addinreseed[] = {0}; +static const unsigned char kat1695_addin0[] = {0}; +static const unsigned char kat1695_addin1[] = {0}; +static const unsigned char kat1695_retbits[] = { + 0x11, 0x4e, 0xb9, 0x2d, 0x66, 0x78, 0x66, 0x79, 0xdc, 0xc9, 0xea, 0x1a, + 0xfa, 0x04, 0xe4, 0xba, 0xfb, 0x83, 0xab, 0x94, 0xf3, 0x38, 0xb3, 0xbd, + 0xc4, 0x0f, 0xf6, 0x6b, 0xeb, 0xf1, 0xc4, 0x6f, 0x73, 0x6d, 0x6a, 0x91, + 0x2a, 0xc3, 0xe3, 0xe7, 0x9c, 0x5b, 0x0e, 0x14, 0x92, 0x7f, 0xbe, 0xfb, + 0x59, 0xcd, 0x80, 0x5a, 0xd5, 0x51, 0x5c, 0x50, 0x19, 0x23, 0xdc, 0x47, + 0xd6, 0x45, 0x6e, 0x64, +}; +static const struct drbg_kat_pr_false kat1695_t = { + 14, kat1695_entropyin, kat1695_nonce, kat1695_persstr, + kat1695_entropyinreseed, kat1695_addinreseed, kat1695_addin0, + kat1695_addin1, kat1695_retbits +}; +static const struct drbg_kat kat1695 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1695_t +}; + +static const unsigned char kat1696_entropyin[] = { + 0x3a, 0x09, 0xc9, 0xcc, 0x5e, 0x01, 0xf1, 0x52, 0xea, 0x2e, 0xd3, 0x02, + 0x1d, 0x49, 0xb4, 0xd6, 0x38, 0x6a, 0xa6, 0xf0, 0x45, 0x21, 0xeb, 0xde, +}; +static const unsigned char kat1696_nonce[] = { + 0x49, 0x0b, 0xd4, 0xee, 0x62, 0x8c, 0xf9, 0x61, 0x50, 0x35, 0x54, 0x3e, + 0x70, 0xfc, 0xe4, 0xe2, +}; +static const unsigned char kat1696_persstr[] = {0}; +static const unsigned char kat1696_entropyinreseed[] = { + 0xdf, 0x06, 0xe5, 0x66, 0x8d, 0x41, 0xa6, 0xfa, 0x76, 0x60, 0xae, 0xf4, + 0x77, 0xef, 0xf7, 0xa0, 0xff, 0xc0, 0x54, 0x2c, 0x1c, 0xd4, 0x06, 0xd5, +}; +static const unsigned char kat1696_addinreseed[] = { + 0x59, 0xb8, 0xc2, 0x66, 0x26, 0xaa, 0xb6, 0x9e, 0x46, 0x27, 0x52, 0x72, + 0x2f, 0x19, 0x45, 0x0d, 0x12, 0xe2, 0xc0, 0xe9, 0x59, 0x88, 0x2d, 0x4d, + 0x06, 0xef, 0x41, 0x77, 0xe3, 0x96, 0x85, 0x5d, +}; +static const unsigned char kat1696_addin0[] = { + 0x28, 0xe5, 0x7a, 0x91, 0x28, 0xe4, 0x79, 0x98, 0x5c, 0xce, 0x39, 0x1e, + 0x98, 0x12, 0x7f, 0xd1, 0x26, 0xf3, 0x7a, 0xd0, 0xf3, 0x17, 0xfd, 0x5f, + 0x97, 0xb8, 0xc1, 0x8e, 0x76, 0x2f, 0x36, 0x0b, +}; +static const unsigned char kat1696_addin1[] = { + 0xd4, 0x88, 0x67, 0x2b, 0x52, 0xe8, 0x67, 0x81, 0x61, 0x78, 0x36, 0x9f, + 0x54, 0x21, 0x90, 0x68, 0x5b, 0xbe, 0x86, 0x72, 0x72, 0x0c, 0x19, 0x43, + 0xd8, 0xa4, 0x37, 0x8c, 0xc9, 0xb9, 0xdd, 0x0c, +}; +static const unsigned char kat1696_retbits[] = { + 0x5c, 0x23, 0x3e, 0x28, 0x50, 0xe4, 0x98, 0x1b, 0xab, 0x0f, 0x65, 0x13, + 0xa7, 0x6c, 0xa2, 0xc9, 0xf9, 0xf9, 0x7b, 0x89, 0xb7, 0xfe, 0xdd, 0x3d, + 0x9a, 0xaf, 0xfe, 0xcf, 0x30, 0x5d, 0x89, 0xfd, 0x53, 0x06, 0xcf, 0x24, + 0x71, 0x58, 0x95, 0xad, 0x9b, 0xa7, 0xda, 0xc8, 0xc3, 0x89, 0xfd, 0x87, + 0xf9, 0x5b, 0x49, 0x73, 0x00, 0x31, 0x50, 0x87, 0x1f, 0xa2, 0x81, 0xe9, + 0x62, 0xf2, 0x70, 0xcb, +}; +static const struct drbg_kat_pr_false kat1696_t = { + 0, kat1696_entropyin, kat1696_nonce, kat1696_persstr, + kat1696_entropyinreseed, kat1696_addinreseed, kat1696_addin0, + kat1696_addin1, kat1696_retbits +}; +static const struct drbg_kat kat1696 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1696_t +}; + +static const unsigned char kat1697_entropyin[] = { + 0x60, 0x2a, 0x92, 0x35, 0x7a, 0x43, 0x37, 0xc3, 0xd4, 0x2c, 0x29, 0x83, + 0x84, 0xc2, 0x9c, 0x1e, 0x04, 0x8d, 0x30, 0xc1, 0x14, 0x6d, 0xce, 0xd6, +}; +static const unsigned char kat1697_nonce[] = { + 0x86, 0x9e, 0x7d, 0x82, 0xde, 0xc9, 0xe9, 0x2c, 0x07, 0xd2, 0xc6, 0x58, + 0xbc, 0x86, 0x7d, 0xcd, +}; +static const unsigned char kat1697_persstr[] = {0}; +static const unsigned char kat1697_entropyinreseed[] = { + 0x08, 0x8c, 0x0a, 0xbf, 0x63, 0x34, 0x6b, 0xd6, 0xa7, 0xfc, 0x75, 0x42, + 0xdf, 0xf6, 0x0f, 0x12, 0xcf, 0x55, 0xfd, 0x32, 0x0f, 0xfb, 0x60, 0x75, +}; +static const unsigned char kat1697_addinreseed[] = { + 0xe2, 0x8e, 0xcb, 0xbe, 0x64, 0x61, 0xc6, 0xc1, 0x3b, 0x85, 0x6e, 0xb6, + 0xfd, 0x97, 0x1b, 0x00, 0x0d, 0xf6, 0xf4, 0xca, 0x6f, 0xad, 0xa0, 0x59, + 0xb6, 0x20, 0x1c, 0x65, 0x82, 0x66, 0x22, 0x5b, +}; +static const unsigned char kat1697_addin0[] = { + 0x1a, 0x1b, 0xfb, 0x70, 0x32, 0xf9, 0xaa, 0x19, 0x78, 0x42, 0xef, 0x9a, + 0x5b, 0xb3, 0x33, 0xd6, 0x4b, 0x23, 0xe5, 0x0b, 0x87, 0x8f, 0xe9, 0x6c, + 0x36, 0x34, 0x3e, 0x45, 0x64, 0x2f, 0x94, 0xd1, +}; +static const unsigned char kat1697_addin1[] = { + 0x6c, 0x59, 0x6c, 0x81, 0x94, 0xae, 0x83, 0x89, 0x04, 0x18, 0x8d, 0x3e, + 0x8c, 0xaf, 0x89, 0x5f, 0xa2, 0xb2, 0xf5, 0x23, 0x54, 0x45, 0x29, 0xa3, + 0xdf, 0x54, 0xad, 0x5e, 0xd7, 0x34, 0x97, 0x60, +}; +static const unsigned char kat1697_retbits[] = { + 0x1a, 0x40, 0xcd, 0xed, 0x46, 0xf0, 0xff, 0x78, 0x09, 0x14, 0x9e, 0x1e, + 0xd8, 0xfd, 0xa8, 0x3b, 0x18, 0xdc, 0xd1, 0xdb, 0xcb, 0x5d, 0xf7, 0xb2, + 0xb4, 0xe2, 0xeb, 0xd8, 0x76, 0xea, 0x6e, 0xf3, 0xdd, 0x53, 0x52, 0x8f, + 0x90, 0x96, 0x7b, 0xcd, 0x8f, 0xae, 0xb6, 0x3f, 0xbe, 0x5b, 0xe1, 0x83, + 0x8a, 0xf3, 0x78, 0x57, 0xc1, 0xd0, 0x10, 0x70, 0x4a, 0x59, 0x7d, 0x24, + 0x5d, 0xb5, 0x7e, 0x57, +}; +static const struct drbg_kat_pr_false kat1697_t = { + 1, kat1697_entropyin, kat1697_nonce, kat1697_persstr, + kat1697_entropyinreseed, kat1697_addinreseed, kat1697_addin0, + kat1697_addin1, kat1697_retbits +}; +static const struct drbg_kat kat1697 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1697_t +}; + +static const unsigned char kat1698_entropyin[] = { + 0xac, 0xce, 0xfe, 0x82, 0xaf, 0x41, 0x4c, 0x24, 0x92, 0xb0, 0x2d, 0xde, + 0x59, 0x70, 0x5f, 0x01, 0x5c, 0x78, 0x02, 0x7a, 0x8e, 0xec, 0x11, 0x3d, +}; +static const unsigned char kat1698_nonce[] = { + 0x51, 0x34, 0x07, 0x5d, 0x95, 0x14, 0xb4, 0x66, 0xce, 0x11, 0xf4, 0x73, + 0x29, 0x81, 0x81, 0x23, +}; +static const unsigned char kat1698_persstr[] = {0}; +static const unsigned char kat1698_entropyinreseed[] = { + 0x77, 0x95, 0x0e, 0x14, 0xe3, 0x2d, 0x96, 0x65, 0xec, 0x60, 0x30, 0x8c, + 0x1b, 0x47, 0x32, 0xfc, 0x51, 0xf7, 0xc6, 0xfd, 0xc2, 0x7a, 0x04, 0x37, +}; +static const unsigned char kat1698_addinreseed[] = { + 0xa4, 0x68, 0xa6, 0x85, 0xd2, 0x7e, 0xb4, 0xbf, 0x61, 0xfc, 0xff, 0x6c, + 0xe5, 0x91, 0xc5, 0x57, 0x9f, 0x9a, 0x22, 0x10, 0x48, 0x15, 0xbc, 0x34, + 0x1b, 0x41, 0x1e, 0xa1, 0x61, 0x0a, 0xb5, 0x1f, +}; +static const unsigned char kat1698_addin0[] = { + 0x13, 0xce, 0xdd, 0xac, 0x15, 0x04, 0x76, 0xa1, 0x36, 0x4b, 0x9f, 0x70, + 0x0e, 0xc7, 0xa3, 0xae, 0x02, 0x62, 0x9b, 0x9a, 0xa4, 0x41, 0xa5, 0x59, + 0x05, 0x7b, 0x65, 0x49, 0xa1, 0x33, 0xe4, 0x96, +}; +static const unsigned char kat1698_addin1[] = { + 0x90, 0x84, 0x2d, 0x71, 0xb9, 0xc5, 0x97, 0xff, 0xd3, 0x07, 0xb5, 0xa9, + 0xe1, 0xb7, 0x35, 0x5f, 0x73, 0x0f, 0xa3, 0x0b, 0xdc, 0x42, 0x42, 0x5c, + 0xb0, 0x1c, 0x9b, 0x94, 0x15, 0x21, 0xcc, 0x54, +}; +static const unsigned char kat1698_retbits[] = { + 0x77, 0x4f, 0xff, 0x12, 0x1f, 0x3b, 0x7c, 0x9b, 0xbc, 0xdf, 0x84, 0x44, + 0x97, 0x21, 0x2d, 0xa4, 0x7a, 0x83, 0xce, 0xc4, 0x76, 0xf0, 0x9b, 0xca, + 0x3e, 0x19, 0x89, 0xe5, 0x4d, 0xe0, 0x11, 0x6f, 0x3f, 0x25, 0xab, 0x24, + 0x76, 0x84, 0xfb, 0xd0, 0xb5, 0xb5, 0x9a, 0xd1, 0xbd, 0xa0, 0x77, 0x3f, + 0xa0, 0x06, 0xd6, 0x04, 0x9d, 0xfb, 0x0e, 0xaf, 0xdb, 0xab, 0xf4, 0xbe, + 0x05, 0xbe, 0xc4, 0x55, +}; +static const struct drbg_kat_pr_false kat1698_t = { + 2, kat1698_entropyin, kat1698_nonce, kat1698_persstr, + kat1698_entropyinreseed, kat1698_addinreseed, kat1698_addin0, + kat1698_addin1, kat1698_retbits +}; +static const struct drbg_kat kat1698 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1698_t +}; + +static const unsigned char kat1699_entropyin[] = { + 0xf8, 0xaf, 0x59, 0x4a, 0xf0, 0xd5, 0x73, 0x4e, 0x80, 0x2d, 0xc1, 0xf3, + 0x47, 0xc0, 0x2f, 0x5f, 0xad, 0x75, 0x3b, 0x9e, 0x4e, 0x2d, 0x8e, 0xaa, +}; +static const unsigned char kat1699_nonce[] = { + 0xf8, 0x67, 0x14, 0x4b, 0x4f, 0xd8, 0x28, 0x89, 0xd0, 0x74, 0x64, 0x09, + 0xbf, 0x8e, 0xad, 0x4b, +}; +static const unsigned char kat1699_persstr[] = {0}; +static const unsigned char kat1699_entropyinreseed[] = { + 0x39, 0x93, 0x80, 0x3f, 0xb8, 0xd4, 0x23, 0x34, 0x28, 0xaa, 0xb4, 0x60, + 0x83, 0x5a, 0xcc, 0x9a, 0xd4, 0xb2, 0xc0, 0xd5, 0xd2, 0x15, 0x71, 0x0b, +}; +static const unsigned char kat1699_addinreseed[] = { + 0xfc, 0x53, 0x85, 0x64, 0x78, 0xfd, 0xc9, 0x1c, 0xb2, 0x8a, 0x32, 0xf1, + 0xfb, 0x75, 0xe1, 0x73, 0x26, 0xe3, 0x88, 0x25, 0x78, 0x31, 0x71, 0xa2, + 0x07, 0x7f, 0x86, 0x21, 0x26, 0x8d, 0x7f, 0x63, +}; +static const unsigned char kat1699_addin0[] = { + 0x1f, 0xf0, 0x4a, 0x19, 0x18, 0x60, 0x7f, 0xda, 0xc6, 0x16, 0x60, 0xee, + 0x44, 0x0d, 0x1c, 0x1f, 0xdd, 0x05, 0x03, 0x8d, 0x03, 0xc6, 0x01, 0x1c, + 0x93, 0x26, 0x66, 0xa4, 0xb5, 0x4b, 0x03, 0x91, +}; +static const unsigned char kat1699_addin1[] = { + 0xd6, 0x7e, 0x82, 0xb2, 0x65, 0xe5, 0xee, 0xd3, 0x20, 0x62, 0x71, 0x4f, + 0x5a, 0xd2, 0x4e, 0x56, 0x63, 0xcb, 0x96, 0x18, 0x42, 0x1c, 0xc1, 0xb6, + 0x9c, 0xea, 0x37, 0x71, 0xed, 0x7a, 0xe4, 0xa5, +}; +static const unsigned char kat1699_retbits[] = { + 0xb4, 0xe2, 0x20, 0x34, 0xe1, 0x42, 0xc5, 0xd1, 0xad, 0xa2, 0x6b, 0x09, + 0x02, 0x78, 0xb7, 0x36, 0x0b, 0x5e, 0x1d, 0x9b, 0x0b, 0x56, 0xfb, 0x25, + 0x75, 0x15, 0xf5, 0xc3, 0xce, 0x34, 0x62, 0x16, 0x9a, 0xf1, 0xac, 0x86, + 0xfa, 0x2c, 0xfc, 0x58, 0x66, 0xe9, 0x73, 0xa9, 0x83, 0x0d, 0x65, 0x54, + 0x18, 0x6f, 0xb2, 0xd1, 0xf5, 0xf1, 0x11, 0x46, 0xa1, 0x5e, 0x78, 0xaf, + 0xeb, 0xd8, 0xc1, 0x20, +}; +static const struct drbg_kat_pr_false kat1699_t = { + 3, kat1699_entropyin, kat1699_nonce, kat1699_persstr, + kat1699_entropyinreseed, kat1699_addinreseed, kat1699_addin0, + kat1699_addin1, kat1699_retbits +}; +static const struct drbg_kat kat1699 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1699_t +}; + +static const unsigned char kat1700_entropyin[] = { + 0x85, 0x92, 0xce, 0xc1, 0xa3, 0xfb, 0x26, 0x15, 0xd8, 0xde, 0xb8, 0xfa, + 0x42, 0x51, 0xee, 0x2a, 0xf1, 0x7b, 0x52, 0xd3, 0x2c, 0xb8, 0x7e, 0xae, +}; +static const unsigned char kat1700_nonce[] = { + 0x35, 0x88, 0x82, 0x0f, 0x95, 0xa5, 0x16, 0xef, 0x5d, 0x24, 0x97, 0x56, + 0x22, 0xe0, 0x3d, 0xf7, +}; +static const unsigned char kat1700_persstr[] = {0}; +static const unsigned char kat1700_entropyinreseed[] = { + 0x58, 0x80, 0xbb, 0x7d, 0xe2, 0xce, 0xac, 0x8a, 0xf5, 0x3d, 0x24, 0x3a, + 0x74, 0xed, 0x5d, 0xef, 0x43, 0xb7, 0x63, 0xc5, 0xe2, 0x90, 0xe3, 0x9b, +}; +static const unsigned char kat1700_addinreseed[] = { + 0x92, 0x45, 0xb3, 0x2b, 0xe1, 0x81, 0xa9, 0x3c, 0x03, 0x77, 0x67, 0x57, + 0xdb, 0xbe, 0xd2, 0x56, 0x67, 0x70, 0xb0, 0x1f, 0xfb, 0xd2, 0xfa, 0x8b, + 0xea, 0x19, 0x4c, 0xf9, 0x7e, 0x1e, 0xbb, 0x39, +}; +static const unsigned char kat1700_addin0[] = { + 0xd4, 0xf6, 0x8a, 0x99, 0xe3, 0x22, 0xf7, 0x56, 0x0b, 0x5f, 0x60, 0x1a, + 0xbf, 0xf8, 0x99, 0x71, 0x1d, 0xf0, 0x66, 0x66, 0x69, 0x59, 0xf2, 0x31, + 0xaa, 0x3a, 0x63, 0x53, 0xad, 0x59, 0x74, 0xb1, +}; +static const unsigned char kat1700_addin1[] = { + 0xa2, 0x4d, 0x59, 0xdc, 0x5a, 0xff, 0x9b, 0xee, 0x69, 0xf7, 0x92, 0xc2, + 0x90, 0xd2, 0xf4, 0x98, 0xd8, 0x85, 0x0b, 0xb1, 0xec, 0x75, 0xed, 0xf5, + 0xe6, 0xfe, 0x0f, 0xd7, 0x14, 0xa8, 0xe2, 0x29, +}; +static const unsigned char kat1700_retbits[] = { + 0x94, 0x13, 0x69, 0x8a, 0x33, 0xff, 0xfd, 0x6c, 0x89, 0x8f, 0x20, 0x59, + 0xcf, 0xc7, 0xa6, 0x01, 0xb2, 0x2c, 0x34, 0x3a, 0x4f, 0x7b, 0x48, 0x45, + 0x73, 0x73, 0x67, 0x14, 0xbc, 0x3b, 0x85, 0x1a, 0x31, 0x64, 0xe2, 0xb3, + 0x05, 0x65, 0x34, 0x8e, 0x4d, 0x0d, 0x0b, 0xc0, 0xee, 0x6c, 0x50, 0xd2, + 0x52, 0x69, 0xb1, 0xa2, 0x89, 0x24, 0x7b, 0xe0, 0x90, 0x65, 0x14, 0x45, + 0x51, 0x31, 0xcf, 0x29, +}; +static const struct drbg_kat_pr_false kat1700_t = { + 4, kat1700_entropyin, kat1700_nonce, kat1700_persstr, + kat1700_entropyinreseed, kat1700_addinreseed, kat1700_addin0, + kat1700_addin1, kat1700_retbits +}; +static const struct drbg_kat kat1700 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1700_t +}; + +static const unsigned char kat1701_entropyin[] = { + 0x42, 0xa2, 0xac, 0xb0, 0x3c, 0x89, 0xd9, 0x66, 0x46, 0x85, 0x2d, 0xc2, + 0x79, 0x67, 0x94, 0x82, 0x81, 0xfa, 0xff, 0xe0, 0x54, 0xe1, 0xe7, 0x24, +}; +static const unsigned char kat1701_nonce[] = { + 0xec, 0x26, 0x08, 0x86, 0x4b, 0xac, 0xd3, 0xd6, 0x7b, 0x13, 0x5c, 0xaf, + 0x43, 0xbe, 0xa1, 0x21, +}; +static const unsigned char kat1701_persstr[] = {0}; +static const unsigned char kat1701_entropyinreseed[] = { + 0xfd, 0x61, 0x2c, 0xde, 0x9f, 0xa6, 0x53, 0xc3, 0x8a, 0x43, 0x83, 0x8d, + 0xab, 0xa2, 0x32, 0xd0, 0xd8, 0x35, 0x69, 0xb4, 0xc5, 0x00, 0xeb, 0x20, +}; +static const unsigned char kat1701_addinreseed[] = { + 0xa0, 0x87, 0x38, 0x8b, 0x6d, 0xb7, 0x55, 0x04, 0x58, 0x09, 0xae, 0x59, + 0x82, 0x25, 0xb5, 0xf3, 0xb2, 0x83, 0xc2, 0xf3, 0x3e, 0xa6, 0xa2, 0x21, + 0x6c, 0x34, 0xcf, 0x46, 0xe5, 0x07, 0x7d, 0x95, +}; +static const unsigned char kat1701_addin0[] = { + 0xb7, 0xb1, 0x3e, 0x5f, 0x55, 0x98, 0x02, 0x72, 0x90, 0x1e, 0xb1, 0x86, + 0xca, 0x61, 0xf5, 0xce, 0xcb, 0xaa, 0xd8, 0xe4, 0x00, 0x94, 0x5e, 0x47, + 0x46, 0xaa, 0x85, 0x9f, 0xe7, 0x23, 0xb9, 0xd3, +}; +static const unsigned char kat1701_addin1[] = { + 0xb8, 0x7f, 0xc6, 0xc1, 0x14, 0x50, 0xa6, 0xe6, 0x2e, 0x2b, 0x8c, 0x97, + 0x62, 0x3b, 0x9a, 0xa3, 0xec, 0x05, 0xfd, 0x24, 0x0a, 0xc9, 0xfa, 0xa5, + 0x4d, 0x61, 0xc7, 0x01, 0xd7, 0xd9, 0x66, 0x61, +}; +static const unsigned char kat1701_retbits[] = { + 0xb6, 0x0a, 0xc5, 0xc2, 0xdd, 0x9d, 0xa0, 0x55, 0x75, 0x44, 0x32, 0x55, + 0x21, 0x33, 0xb8, 0xd1, 0x73, 0x1c, 0x7b, 0xc3, 0x0d, 0x8f, 0x99, 0x58, + 0x59, 0x6a, 0x54, 0x3e, 0x95, 0x4f, 0xc2, 0x01, 0xa1, 0x63, 0x74, 0xb2, + 0xd6, 0xd4, 0x03, 0x33, 0x4a, 0xf6, 0x8d, 0x20, 0xec, 0x0d, 0x5a, 0xad, + 0x47, 0xb2, 0xc2, 0xc8, 0xeb, 0xb1, 0xf8, 0x02, 0x3b, 0x8c, 0x19, 0xeb, + 0x04, 0x1f, 0x3e, 0x3e, +}; +static const struct drbg_kat_pr_false kat1701_t = { + 5, kat1701_entropyin, kat1701_nonce, kat1701_persstr, + kat1701_entropyinreseed, kat1701_addinreseed, kat1701_addin0, + kat1701_addin1, kat1701_retbits +}; +static const struct drbg_kat kat1701 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1701_t +}; + +static const unsigned char kat1702_entropyin[] = { + 0x74, 0x3a, 0x00, 0xf3, 0x82, 0x80, 0x02, 0x87, 0xb2, 0x34, 0xd7, 0x4d, + 0x27, 0x46, 0x9b, 0x32, 0x22, 0x8f, 0x5f, 0xe3, 0xbd, 0xcf, 0xf4, 0x6f, +}; +static const unsigned char kat1702_nonce[] = { + 0xfc, 0x31, 0x97, 0x60, 0x29, 0x29, 0x66, 0x5f, 0xe0, 0x21, 0x2d, 0xba, + 0xb1, 0xf0, 0xf7, 0x25, +}; +static const unsigned char kat1702_persstr[] = {0}; +static const unsigned char kat1702_entropyinreseed[] = { + 0x2f, 0x85, 0x7a, 0x20, 0x33, 0x8c, 0x3d, 0x9a, 0xdd, 0xfb, 0xa4, 0xa7, + 0x9d, 0x84, 0xf9, 0xef, 0xec, 0x5a, 0xe8, 0x5d, 0xfa, 0xbb, 0x62, 0xd4, +}; +static const unsigned char kat1702_addinreseed[] = { + 0x4c, 0xa1, 0xf2, 0xb8, 0x6c, 0x8e, 0x61, 0x48, 0x66, 0x68, 0x77, 0x03, + 0x8c, 0x00, 0x96, 0x16, 0x16, 0xe4, 0x67, 0x1b, 0x76, 0x76, 0xa9, 0x64, + 0x7e, 0xb6, 0x51, 0x5d, 0x39, 0x22, 0x4d, 0x99, +}; +static const unsigned char kat1702_addin0[] = { + 0xaa, 0x19, 0x4d, 0x36, 0x6d, 0xfe, 0xf6, 0x2e, 0xcb, 0x94, 0x9a, 0xac, + 0x68, 0xcd, 0x32, 0xfb, 0x09, 0xd1, 0x3a, 0xe2, 0x9f, 0xf8, 0x46, 0x0f, + 0x66, 0x9b, 0xd7, 0xda, 0x6c, 0xaa, 0xfb, 0x9e, +}; +static const unsigned char kat1702_addin1[] = { + 0x2d, 0x25, 0x5f, 0x27, 0x3b, 0x8b, 0x7f, 0xa3, 0x94, 0x31, 0xb0, 0x56, + 0x8a, 0xdb, 0x4a, 0xef, 0xcb, 0xec, 0xf5, 0x7d, 0xce, 0x3f, 0x45, 0xf7, + 0x7e, 0x61, 0x1e, 0x97, 0xc6, 0xd5, 0x86, 0xb6, +}; +static const unsigned char kat1702_retbits[] = { + 0x28, 0x0d, 0xa4, 0xa8, 0xbd, 0x81, 0x58, 0x31, 0x8c, 0xe3, 0x2e, 0x92, + 0x6a, 0xd4, 0xf0, 0x31, 0x65, 0xbc, 0xd4, 0xff, 0x19, 0xc2, 0x74, 0x10, + 0x38, 0x38, 0xcd, 0xab, 0xed, 0x76, 0xdf, 0x4b, 0xa0, 0x64, 0x26, 0x77, + 0x03, 0xc2, 0x4b, 0xd1, 0x83, 0x9d, 0x18, 0xd0, 0x31, 0x18, 0x37, 0xc4, + 0xd7, 0xca, 0xbb, 0x7c, 0x22, 0x75, 0x1b, 0x63, 0x56, 0x14, 0x36, 0x99, + 0x3a, 0x14, 0xd4, 0x19, +}; +static const struct drbg_kat_pr_false kat1702_t = { + 6, kat1702_entropyin, kat1702_nonce, kat1702_persstr, + kat1702_entropyinreseed, kat1702_addinreseed, kat1702_addin0, + kat1702_addin1, kat1702_retbits +}; +static const struct drbg_kat kat1702 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1702_t +}; + +static const unsigned char kat1703_entropyin[] = { + 0xfd, 0x36, 0xf6, 0x1e, 0x82, 0xb1, 0x7a, 0xed, 0x18, 0xe7, 0x0f, 0x40, + 0x3a, 0xe5, 0xec, 0x89, 0xd1, 0xbe, 0xc1, 0xe6, 0xcc, 0x2c, 0x73, 0x9c, +}; +static const unsigned char kat1703_nonce[] = { + 0xb3, 0xa7, 0x9e, 0x1a, 0x78, 0xef, 0x63, 0x0f, 0x82, 0x74, 0xbb, 0x17, + 0x66, 0xfa, 0x2f, 0x4d, +}; +static const unsigned char kat1703_persstr[] = {0}; +static const unsigned char kat1703_entropyinreseed[] = { + 0x5d, 0xf9, 0x2b, 0xd6, 0x3a, 0x0d, 0x92, 0x10, 0xed, 0xef, 0xc4, 0x55, + 0x08, 0xf4, 0x76, 0xee, 0x97, 0xde, 0x02, 0xbf, 0x06, 0x75, 0x3a, 0x29, +}; +static const unsigned char kat1703_addinreseed[] = { + 0x0e, 0xe3, 0xd2, 0xcc, 0xf2, 0x34, 0x3e, 0x68, 0x47, 0x10, 0xb9, 0x4e, + 0x72, 0x1b, 0x23, 0xbd, 0x7a, 0x14, 0x66, 0x27, 0x92, 0x06, 0xb0, 0xb5, + 0xaa, 0x85, 0x4b, 0x03, 0xbe, 0x2a, 0x73, 0x60, +}; +static const unsigned char kat1703_addin0[] = { + 0x95, 0xfc, 0x87, 0x57, 0xdf, 0x7b, 0x89, 0xce, 0xf1, 0xdb, 0x5d, 0xbb, + 0xdd, 0xa2, 0xce, 0x45, 0x92, 0x84, 0x70, 0x5c, 0x9a, 0xc5, 0x68, 0xef, + 0xdb, 0x6f, 0xcf, 0xc6, 0x85, 0xfd, 0x13, 0x6d, +}; +static const unsigned char kat1703_addin1[] = { + 0xd1, 0x2a, 0xe9, 0xad, 0x44, 0x12, 0xde, 0x00, 0xef, 0xc5, 0x85, 0xf0, + 0x29, 0xbb, 0x36, 0x16, 0x55, 0x8e, 0x60, 0x80, 0x67, 0x85, 0xe3, 0x2b, + 0xe7, 0x08, 0x6d, 0x2c, 0x64, 0x09, 0xe2, 0xc8, +}; +static const unsigned char kat1703_retbits[] = { + 0x0d, 0x35, 0x9a, 0x5e, 0x94, 0xac, 0x6f, 0xf1, 0xfa, 0x3b, 0xc1, 0x5a, + 0xdc, 0x46, 0xd5, 0x48, 0x30, 0x11, 0x83, 0x10, 0xbc, 0x65, 0x0d, 0x61, + 0x35, 0x30, 0xe6, 0x29, 0xd3, 0x4a, 0x45, 0x9b, 0xe5, 0xb2, 0xa6, 0x29, + 0x06, 0x5b, 0x4e, 0x7f, 0x4c, 0x85, 0xf3, 0xb6, 0xac, 0xb8, 0x96, 0x2f, + 0xcb, 0xbc, 0x8a, 0x0f, 0xed, 0x24, 0x81, 0x84, 0x09, 0xf9, 0x42, 0x5f, + 0xff, 0xa3, 0xe1, 0x6a, +}; +static const struct drbg_kat_pr_false kat1703_t = { + 7, kat1703_entropyin, kat1703_nonce, kat1703_persstr, + kat1703_entropyinreseed, kat1703_addinreseed, kat1703_addin0, + kat1703_addin1, kat1703_retbits +}; +static const struct drbg_kat kat1703 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1703_t +}; + +static const unsigned char kat1704_entropyin[] = { + 0xde, 0xce, 0xa1, 0x8a, 0xbd, 0x55, 0x45, 0x50, 0x07, 0x75, 0x1b, 0xbd, + 0xff, 0x85, 0x01, 0xc4, 0x63, 0x05, 0xa7, 0xfa, 0xdf, 0x15, 0xe7, 0xa0, +}; +static const unsigned char kat1704_nonce[] = { + 0x9f, 0xf5, 0x32, 0xb8, 0x26, 0x85, 0xf9, 0xea, 0x4f, 0x91, 0x89, 0x47, + 0x08, 0x07, 0x86, 0xfc, +}; +static const unsigned char kat1704_persstr[] = {0}; +static const unsigned char kat1704_entropyinreseed[] = { + 0x2c, 0x06, 0xc5, 0xd4, 0x8a, 0x5f, 0xd3, 0x86, 0x99, 0x9d, 0x42, 0x8c, + 0xcc, 0x22, 0x7b, 0x55, 0xd7, 0x54, 0x9f, 0x57, 0xc4, 0xf3, 0xc1, 0x62, +}; +static const unsigned char kat1704_addinreseed[] = { + 0x82, 0x3b, 0x0e, 0xec, 0x04, 0x51, 0xa2, 0x89, 0xe8, 0x27, 0x21, 0xea, + 0x47, 0x94, 0x9b, 0x5b, 0x25, 0x8b, 0x85, 0x0a, 0x4f, 0xa1, 0x49, 0x83, + 0x92, 0x1e, 0x9e, 0xca, 0x70, 0xd6, 0x4d, 0x8c, +}; +static const unsigned char kat1704_addin0[] = { + 0x01, 0xe9, 0x0b, 0x33, 0xf3, 0x06, 0x7e, 0xbb, 0x73, 0x8d, 0xf3, 0x8f, + 0x6c, 0xcb, 0x08, 0x16, 0x4a, 0x0d, 0x8d, 0x92, 0x19, 0x01, 0x3f, 0xcf, + 0xbd, 0x05, 0x99, 0xdc, 0xfd, 0xd4, 0xfc, 0x40, +}; +static const unsigned char kat1704_addin1[] = { + 0x15, 0xdd, 0x70, 0xaf, 0xee, 0x05, 0x3c, 0x64, 0xc6, 0xe1, 0x80, 0xf4, + 0x3b, 0xf1, 0x56, 0x42, 0x00, 0x7f, 0x2f, 0x2d, 0xf6, 0xdb, 0x9e, 0xbe, + 0x75, 0xf4, 0x06, 0x43, 0x14, 0xaa, 0x61, 0xf6, +}; +static const unsigned char kat1704_retbits[] = { + 0x9a, 0x60, 0x83, 0xaa, 0x7a, 0x1f, 0xc1, 0xae, 0x11, 0xda, 0x9d, 0xa4, + 0x50, 0x60, 0xbe, 0xb1, 0x14, 0x2a, 0x57, 0xe0, 0xaa, 0x84, 0xf7, 0x5e, + 0x3d, 0xe1, 0x82, 0x88, 0xb1, 0x78, 0xfb, 0x20, 0x23, 0xfd, 0x30, 0xdc, + 0x42, 0x7f, 0xc9, 0x20, 0x16, 0x42, 0x90, 0x63, 0x56, 0x8a, 0xcc, 0xd4, + 0x92, 0x63, 0x9d, 0xe3, 0xd8, 0xd8, 0x07, 0xdc, 0x32, 0x40, 0x95, 0xa6, + 0xed, 0x01, 0xfe, 0x56, +}; +static const struct drbg_kat_pr_false kat1704_t = { + 8, kat1704_entropyin, kat1704_nonce, kat1704_persstr, + kat1704_entropyinreseed, kat1704_addinreseed, kat1704_addin0, + kat1704_addin1, kat1704_retbits +}; +static const struct drbg_kat kat1704 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1704_t +}; + +static const unsigned char kat1705_entropyin[] = { + 0x23, 0x98, 0x50, 0xb9, 0x49, 0x0a, 0x64, 0x03, 0x4e, 0x4b, 0x1d, 0xe3, + 0xd8, 0xdb, 0xf9, 0x37, 0x8c, 0x6e, 0xe8, 0x70, 0x2c, 0xc6, 0xa1, 0x34, +}; +static const unsigned char kat1705_nonce[] = { + 0x0c, 0xb7, 0x8b, 0xf0, 0xbd, 0x2a, 0xe2, 0x7e, 0xff, 0xdc, 0xd5, 0x56, + 0x4b, 0x13, 0x8c, 0x9a, +}; +static const unsigned char kat1705_persstr[] = {0}; +static const unsigned char kat1705_entropyinreseed[] = { + 0xe5, 0xcb, 0xac, 0xb9, 0x29, 0x64, 0xe9, 0xab, 0xd8, 0xff, 0x6d, 0xeb, + 0x1d, 0xae, 0x10, 0x21, 0x11, 0xf5, 0x29, 0x26, 0x7b, 0xcb, 0xb4, 0x3b, +}; +static const unsigned char kat1705_addinreseed[] = { + 0xd7, 0x3f, 0x98, 0x23, 0x59, 0x0b, 0xe4, 0x3e, 0x23, 0x89, 0x42, 0x7b, + 0xc7, 0x96, 0xbf, 0x7e, 0xe5, 0xef, 0x65, 0x82, 0x32, 0x33, 0x8b, 0x45, + 0x75, 0xfb, 0x57, 0x74, 0x89, 0x88, 0xdf, 0x3e, +}; +static const unsigned char kat1705_addin0[] = { + 0x1e, 0x48, 0x3f, 0x9a, 0xbe, 0xf8, 0x34, 0x66, 0xd2, 0x61, 0xce, 0x53, + 0x5a, 0xf9, 0x39, 0x4d, 0x11, 0x7c, 0x0d, 0xc0, 0x6b, 0x5b, 0xf5, 0x68, + 0x97, 0xe8, 0x1a, 0x98, 0xd8, 0x0a, 0x32, 0x54, +}; +static const unsigned char kat1705_addin1[] = { + 0xc3, 0x21, 0x29, 0xbf, 0xa5, 0x6d, 0x52, 0xed, 0x84, 0x83, 0x49, 0x15, + 0xc9, 0x08, 0x60, 0x84, 0x3a, 0x78, 0xa6, 0xd9, 0xbb, 0x5c, 0x47, 0x0e, + 0xbc, 0xe2, 0xe1, 0x38, 0xa3, 0x95, 0x5b, 0x24, +}; +static const unsigned char kat1705_retbits[] = { + 0xac, 0x61, 0x3d, 0x48, 0x58, 0x8a, 0x28, 0x00, 0xca, 0x6b, 0x77, 0xd5, + 0x6a, 0xf2, 0x1f, 0xa1, 0x36, 0x84, 0x76, 0x46, 0x78, 0x09, 0x9e, 0x51, + 0x76, 0x48, 0x97, 0xcf, 0x50, 0x8a, 0x12, 0xf9, 0xbb, 0xbb, 0xcf, 0x9a, + 0x72, 0x20, 0x91, 0x83, 0x41, 0x1c, 0x84, 0x6a, 0xe9, 0xb0, 0x12, 0x28, + 0xfc, 0x1d, 0xab, 0xc3, 0x41, 0xd6, 0x34, 0x50, 0xfc, 0xc0, 0x15, 0x93, + 0x2e, 0x8b, 0xd6, 0x45, +}; +static const struct drbg_kat_pr_false kat1705_t = { + 9, kat1705_entropyin, kat1705_nonce, kat1705_persstr, + kat1705_entropyinreseed, kat1705_addinreseed, kat1705_addin0, + kat1705_addin1, kat1705_retbits +}; +static const struct drbg_kat kat1705 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1705_t +}; + +static const unsigned char kat1706_entropyin[] = { + 0x1f, 0x7f, 0x04, 0xd9, 0xd5, 0x73, 0x35, 0xaf, 0xf4, 0x1e, 0xf2, 0x11, + 0x29, 0x9e, 0xd9, 0xe8, 0x8c, 0x95, 0x08, 0x3a, 0x93, 0xda, 0x76, 0x66, +}; +static const unsigned char kat1706_nonce[] = { + 0x2c, 0x08, 0x55, 0x5e, 0x92, 0x98, 0x21, 0x91, 0x52, 0x28, 0x50, 0xb7, + 0x77, 0xd6, 0x1c, 0xad, +}; +static const unsigned char kat1706_persstr[] = {0}; +static const unsigned char kat1706_entropyinreseed[] = { + 0xe1, 0xf4, 0x18, 0xc9, 0x9d, 0x81, 0x4e, 0x9e, 0x95, 0x96, 0xc2, 0x62, + 0xf8, 0x26, 0x61, 0x9f, 0xbc, 0x0a, 0x31, 0x43, 0x50, 0xe0, 0xbf, 0x64, +}; +static const unsigned char kat1706_addinreseed[] = { + 0x5d, 0x1c, 0xd9, 0x63, 0xcd, 0x8f, 0xef, 0x60, 0x52, 0x9a, 0x15, 0x7f, + 0x55, 0xcd, 0xb0, 0xea, 0x96, 0xa6, 0x0e, 0x84, 0x5e, 0x2f, 0xc6, 0x32, + 0x66, 0xb9, 0x13, 0x8e, 0xb2, 0xe2, 0xb4, 0xd7, +}; +static const unsigned char kat1706_addin0[] = { + 0xc9, 0xd5, 0x36, 0x69, 0x2e, 0x69, 0x91, 0x19, 0xae, 0x81, 0xb8, 0x89, + 0x6e, 0x78, 0xac, 0xe4, 0xf1, 0x34, 0x68, 0xb6, 0x26, 0x0a, 0xd8, 0xcf, + 0xa4, 0x8d, 0x16, 0x78, 0x1d, 0x34, 0x44, 0xef, +}; +static const unsigned char kat1706_addin1[] = { + 0x09, 0x93, 0x5f, 0x2c, 0x5f, 0x63, 0x13, 0x20, 0x63, 0x7f, 0xbf, 0x8c, + 0xbb, 0xd1, 0x0d, 0x9e, 0x08, 0x2d, 0x21, 0xe3, 0xf2, 0x6c, 0xcf, 0x9b, + 0x7f, 0xd5, 0x4c, 0xa9, 0xa3, 0x47, 0x38, 0x71, +}; +static const unsigned char kat1706_retbits[] = { + 0x59, 0x46, 0x4c, 0xa6, 0x8b, 0x54, 0xf4, 0xfa, 0x32, 0xe7, 0x64, 0x73, + 0x8c, 0x10, 0x73, 0xf9, 0xb8, 0xcc, 0x01, 0x4e, 0x2f, 0x57, 0x9e, 0x67, + 0xe1, 0xb1, 0x18, 0xf7, 0xf2, 0xf7, 0x8d, 0xad, 0x7f, 0x39, 0x92, 0xc5, + 0x3a, 0x45, 0xd6, 0x50, 0x7f, 0x88, 0x95, 0xa7, 0xbe, 0x7f, 0x76, 0x4d, + 0xc7, 0x2a, 0x88, 0xd4, 0x06, 0x64, 0x0b, 0x37, 0x09, 0x96, 0x5a, 0x9c, + 0xf6, 0xff, 0x1e, 0x8f, +}; +static const struct drbg_kat_pr_false kat1706_t = { + 10, kat1706_entropyin, kat1706_nonce, kat1706_persstr, + kat1706_entropyinreseed, kat1706_addinreseed, kat1706_addin0, + kat1706_addin1, kat1706_retbits +}; +static const struct drbg_kat kat1706 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1706_t +}; + +static const unsigned char kat1707_entropyin[] = { + 0x8c, 0x4e, 0xe1, 0xf9, 0xe1, 0x0a, 0x3a, 0xd8, 0x58, 0x7c, 0x15, 0x6e, + 0x28, 0x2f, 0x11, 0xaf, 0x86, 0x84, 0x1e, 0x11, 0xc5, 0xed, 0x1c, 0x2b, +}; +static const unsigned char kat1707_nonce[] = { + 0xa2, 0x76, 0x0a, 0xc4, 0x50, 0x0a, 0x6d, 0xb4, 0x6b, 0x2a, 0x0a, 0x23, + 0x94, 0x08, 0xbe, 0x43, +}; +static const unsigned char kat1707_persstr[] = {0}; +static const unsigned char kat1707_entropyinreseed[] = { + 0x05, 0x26, 0x1c, 0x4b, 0x47, 0x46, 0x93, 0x7f, 0x42, 0x5c, 0xc4, 0x92, + 0x78, 0xdf, 0x53, 0x38, 0x29, 0xc5, 0x4f, 0x36, 0xb4, 0x3f, 0x59, 0x24, +}; +static const unsigned char kat1707_addinreseed[] = { + 0xa2, 0x68, 0x81, 0xf6, 0x4d, 0xfb, 0xe6, 0xb5, 0x0c, 0xd8, 0x79, 0xfd, + 0xcc, 0x35, 0xb6, 0x90, 0xd5, 0xec, 0x7e, 0xf9, 0x0e, 0x65, 0x7a, 0x61, + 0x34, 0x2e, 0x0f, 0x6b, 0xed, 0xa0, 0x46, 0xbb, +}; +static const unsigned char kat1707_addin0[] = { + 0x39, 0xe1, 0x01, 0x41, 0x29, 0x93, 0x9c, 0x1a, 0x55, 0xf5, 0xfb, 0x58, + 0x4b, 0x14, 0x14, 0x96, 0x5e, 0x1e, 0x7b, 0x5e, 0x5d, 0xfa, 0xb2, 0x3d, + 0x10, 0x84, 0xcb, 0x32, 0x4d, 0xbb, 0x32, 0x8f, +}; +static const unsigned char kat1707_addin1[] = { + 0xd0, 0xbb, 0x63, 0xa8, 0xe1, 0xcb, 0x4c, 0xdc, 0xa8, 0xcf, 0x2a, 0x26, + 0x34, 0xb4, 0x91, 0x60, 0x39, 0x75, 0x9c, 0xc1, 0xd5, 0x74, 0xb8, 0xd2, + 0xe2, 0x78, 0x18, 0x52, 0x2f, 0xca, 0xf7, 0x45, +}; +static const unsigned char kat1707_retbits[] = { + 0xd3, 0xef, 0xf7, 0x65, 0xc8, 0x3e, 0x14, 0x0b, 0xad, 0x7b, 0x00, 0xc5, + 0x71, 0xd2, 0x79, 0x10, 0xb2, 0x17, 0xba, 0x53, 0xe0, 0x0f, 0x3f, 0x11, + 0xc5, 0xf2, 0x1a, 0xee, 0x87, 0xfb, 0xfe, 0x33, 0xe2, 0xa1, 0x95, 0x68, + 0x17, 0x52, 0x06, 0x2d, 0x79, 0xa6, 0xb2, 0x11, 0xd5, 0x82, 0x01, 0x87, + 0x99, 0x46, 0x5b, 0x83, 0xd6, 0xa8, 0xc7, 0x32, 0xa8, 0x7e, 0xe8, 0xe9, + 0x0b, 0xcb, 0x47, 0xb4, +}; +static const struct drbg_kat_pr_false kat1707_t = { + 11, kat1707_entropyin, kat1707_nonce, kat1707_persstr, + kat1707_entropyinreseed, kat1707_addinreseed, kat1707_addin0, + kat1707_addin1, kat1707_retbits +}; +static const struct drbg_kat kat1707 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1707_t +}; + +static const unsigned char kat1708_entropyin[] = { + 0x8f, 0x6a, 0xa1, 0x65, 0x44, 0x11, 0x71, 0x51, 0xeb, 0xa0, 0x2f, 0xb2, + 0x66, 0xdc, 0x34, 0x7b, 0xdd, 0x2e, 0x1e, 0xc5, 0xe6, 0x02, 0x18, 0x14, +}; +static const unsigned char kat1708_nonce[] = { + 0x60, 0x09, 0xa1, 0x64, 0x96, 0x8e, 0x19, 0xc7, 0x07, 0x57, 0x0c, 0x4a, + 0xdb, 0xbc, 0x22, 0x53, +}; +static const unsigned char kat1708_persstr[] = {0}; +static const unsigned char kat1708_entropyinreseed[] = { + 0x0b, 0x51, 0xe6, 0x81, 0x56, 0xe2, 0xa5, 0x70, 0xe1, 0xa0, 0x8f, 0xf8, + 0xed, 0xa4, 0x65, 0x91, 0xb2, 0xf5, 0x4c, 0xb2, 0x17, 0x88, 0x3d, 0x04, +}; +static const unsigned char kat1708_addinreseed[] = { + 0x3c, 0xd2, 0x78, 0x3e, 0x00, 0xd4, 0x8f, 0x5b, 0x4c, 0x13, 0x39, 0x31, + 0xbc, 0xb4, 0xd3, 0x59, 0x0d, 0x09, 0xc7, 0x09, 0xed, 0x6f, 0x19, 0x5c, + 0x3d, 0xfe, 0xd6, 0xbf, 0x15, 0x0c, 0x76, 0xdd, +}; +static const unsigned char kat1708_addin0[] = { + 0xdb, 0x89, 0x1a, 0xf9, 0x7a, 0x11, 0x0a, 0x36, 0x43, 0x15, 0x50, 0x94, + 0xe0, 0xee, 0xb9, 0xc6, 0x11, 0x6c, 0x38, 0x1b, 0x86, 0x16, 0xe3, 0x6f, + 0x47, 0x1a, 0xed, 0xf2, 0x72, 0x5e, 0x1c, 0x54, +}; +static const unsigned char kat1708_addin1[] = { + 0xfc, 0x60, 0x84, 0xa2, 0x85, 0x8f, 0x34, 0xbc, 0xd2, 0xb8, 0x79, 0x49, + 0x45, 0x2b, 0x38, 0x2b, 0x18, 0x9f, 0x35, 0x13, 0x43, 0x6a, 0xea, 0x38, + 0xd6, 0x8f, 0xd9, 0xc7, 0x61, 0xd6, 0x8e, 0x83, +}; +static const unsigned char kat1708_retbits[] = { + 0x15, 0xb7, 0xc5, 0xb6, 0x70, 0x61, 0x67, 0x23, 0x49, 0x59, 0x72, 0x7d, + 0xa2, 0x71, 0x85, 0xe6, 0x5b, 0x7b, 0x8f, 0xa9, 0xcb, 0x77, 0x59, 0x70, + 0xa5, 0xfe, 0x80, 0x62, 0x85, 0xa0, 0x37, 0xb3, 0x22, 0xbf, 0x81, 0x14, + 0xa3, 0x98, 0xa0, 0x19, 0xef, 0xfb, 0xcf, 0x65, 0xc3, 0xd4, 0xdc, 0xe1, + 0x54, 0xe0, 0x3a, 0x0c, 0x7f, 0x4b, 0x72, 0xd3, 0xa5, 0x7f, 0x4a, 0xc8, + 0xf4, 0x0b, 0x40, 0x74, +}; +static const struct drbg_kat_pr_false kat1708_t = { + 12, kat1708_entropyin, kat1708_nonce, kat1708_persstr, + kat1708_entropyinreseed, kat1708_addinreseed, kat1708_addin0, + kat1708_addin1, kat1708_retbits +}; +static const struct drbg_kat kat1708 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1708_t +}; + +static const unsigned char kat1709_entropyin[] = { + 0x52, 0xf0, 0x6f, 0xdc, 0x40, 0xd3, 0x2a, 0x19, 0xe6, 0x9d, 0x32, 0xa2, + 0x1b, 0xf8, 0xf4, 0xcf, 0x55, 0xd6, 0x97, 0x84, 0x21, 0xe6, 0x36, 0xa2, +}; +static const unsigned char kat1709_nonce[] = { + 0x1f, 0xb3, 0x3c, 0x9e, 0xe0, 0x7b, 0x2a, 0x2f, 0xfd, 0x41, 0x0b, 0x7c, + 0x6a, 0x02, 0x36, 0x5b, +}; +static const unsigned char kat1709_persstr[] = {0}; +static const unsigned char kat1709_entropyinreseed[] = { + 0xb1, 0x04, 0x34, 0xd0, 0xae, 0xea, 0xd8, 0x74, 0xa3, 0x0d, 0xf2, 0x49, + 0xdd, 0x69, 0x2d, 0xfb, 0xaf, 0xd0, 0xd5, 0xd8, 0xaa, 0xb6, 0x74, 0x38, +}; +static const unsigned char kat1709_addinreseed[] = { + 0xfc, 0x8a, 0x66, 0x14, 0xd9, 0x37, 0xf5, 0x0f, 0x74, 0xea, 0x94, 0x9f, + 0x50, 0x97, 0xb9, 0x00, 0x3e, 0xb0, 0x4b, 0x95, 0x35, 0x10, 0xde, 0x46, + 0x46, 0xc9, 0x4d, 0x18, 0xc9, 0x78, 0xec, 0x62, +}; +static const unsigned char kat1709_addin0[] = { + 0xba, 0xa0, 0xd5, 0xc1, 0x14, 0x6e, 0xaf, 0xa4, 0x63, 0x1c, 0xae, 0x7d, + 0x4c, 0x8c, 0x80, 0x93, 0x00, 0x96, 0xc9, 0xbf, 0x05, 0x64, 0xc0, 0x9d, + 0x5a, 0xc8, 0x89, 0x5e, 0xea, 0x02, 0x57, 0x27, +}; +static const unsigned char kat1709_addin1[] = { + 0xfe, 0x23, 0x0d, 0x75, 0x0e, 0xa1, 0xc8, 0x81, 0xb2, 0xc7, 0x3c, 0x6b, + 0x97, 0xcb, 0xcc, 0x30, 0xe4, 0x39, 0xb1, 0x83, 0x0a, 0x9e, 0x8e, 0xba, + 0x12, 0x34, 0x21, 0x57, 0x43, 0x90, 0xa1, 0xa2, +}; +static const unsigned char kat1709_retbits[] = { + 0xe8, 0xbb, 0xe2, 0x23, 0xd9, 0xef, 0x98, 0x9b, 0x12, 0x27, 0x45, 0xe5, + 0xf5, 0xa4, 0x42, 0xe0, 0xbd, 0x54, 0xba, 0x8d, 0x8f, 0xbe, 0x91, 0x9a, + 0x19, 0x99, 0x54, 0x25, 0x25, 0x1d, 0x00, 0x20, 0xd5, 0x50, 0x3b, 0x49, + 0x3a, 0x37, 0x22, 0x53, 0x7d, 0x81, 0xbf, 0x42, 0x5e, 0xc9, 0x15, 0x9e, + 0x53, 0x72, 0x5b, 0x70, 0x7c, 0x2d, 0xf8, 0xbf, 0x2e, 0x2c, 0x25, 0x8f, + 0xd8, 0xfb, 0x8e, 0x7b, +}; +static const struct drbg_kat_pr_false kat1709_t = { + 13, kat1709_entropyin, kat1709_nonce, kat1709_persstr, + kat1709_entropyinreseed, kat1709_addinreseed, kat1709_addin0, + kat1709_addin1, kat1709_retbits +}; +static const struct drbg_kat kat1709 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1709_t +}; + +static const unsigned char kat1710_entropyin[] = { + 0x8f, 0x8e, 0x6e, 0x35, 0xa6, 0x89, 0xbb, 0x88, 0xf8, 0x96, 0x89, 0x91, + 0xa4, 0xad, 0xbf, 0x89, 0x37, 0x3c, 0x58, 0xc5, 0xed, 0x36, 0x3f, 0x5f, +}; +static const unsigned char kat1710_nonce[] = { + 0x85, 0x70, 0xbf, 0xeb, 0xd6, 0x37, 0x9d, 0x10, 0x51, 0x86, 0xf8, 0x7e, + 0x99, 0x64, 0xcc, 0x6b, +}; +static const unsigned char kat1710_persstr[] = {0}; +static const unsigned char kat1710_entropyinreseed[] = { + 0x29, 0x5c, 0x35, 0xe7, 0x2f, 0xaf, 0x6a, 0xad, 0xed, 0xdb, 0x49, 0x32, + 0x0f, 0x86, 0xa4, 0x3b, 0x18, 0xda, 0x0e, 0x60, 0xb8, 0xd9, 0x41, 0xa2, +}; +static const unsigned char kat1710_addinreseed[] = { + 0x23, 0xbe, 0x84, 0x8c, 0xad, 0xd9, 0x0a, 0xf9, 0xb3, 0x34, 0xda, 0x73, + 0x44, 0xec, 0xaa, 0xfa, 0x99, 0xcb, 0x48, 0x10, 0xfb, 0x00, 0xce, 0x67, + 0x4f, 0x56, 0xe5, 0xed, 0x36, 0xab, 0x98, 0xba, +}; +static const unsigned char kat1710_addin0[] = { + 0x92, 0xbd, 0x8e, 0xeb, 0x63, 0x6f, 0xbf, 0x83, 0xfe, 0x7d, 0x6b, 0xf5, + 0xd2, 0x99, 0x84, 0x3d, 0x8f, 0xac, 0x84, 0x37, 0x69, 0x1a, 0xe5, 0xf5, + 0xea, 0x43, 0x56, 0x06, 0x27, 0xa7, 0xc0, 0x22, +}; +static const unsigned char kat1710_addin1[] = { + 0xed, 0x82, 0xe0, 0xfb, 0xb0, 0xed, 0x60, 0x7b, 0xf1, 0xd2, 0x41, 0xcc, + 0xf3, 0x47, 0x0d, 0xc0, 0x65, 0x87, 0x73, 0xb0, 0xc8, 0xf5, 0xb8, 0x32, + 0xb3, 0x24, 0x4a, 0xe8, 0x8e, 0x45, 0xc6, 0xed, +}; +static const unsigned char kat1710_retbits[] = { + 0x10, 0xc4, 0xcd, 0x9c, 0x6f, 0xb5, 0x61, 0x62, 0x95, 0x22, 0x4d, 0x4b, + 0x2c, 0xaa, 0x98, 0xac, 0x96, 0x2c, 0xba, 0xf5, 0x0f, 0x9c, 0x52, 0x17, + 0x49, 0xd5, 0x54, 0xcf, 0x2a, 0x41, 0x7a, 0xe7, 0x6c, 0x07, 0xff, 0xfb, + 0x88, 0x75, 0x38, 0x1a, 0x2b, 0xd6, 0x30, 0x5b, 0x50, 0x31, 0xfb, 0x62, + 0xf9, 0x3c, 0x00, 0x64, 0xac, 0xa7, 0xa4, 0x55, 0xdb, 0x75, 0x45, 0xe6, + 0xb5, 0x29, 0x38, 0xb0, +}; +static const struct drbg_kat_pr_false kat1710_t = { + 14, kat1710_entropyin, kat1710_nonce, kat1710_persstr, + kat1710_entropyinreseed, kat1710_addinreseed, kat1710_addin0, + kat1710_addin1, kat1710_retbits +}; +static const struct drbg_kat kat1710 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1710_t +}; + +static const unsigned char kat1711_entropyin[] = { + 0x35, 0x81, 0x14, 0x73, 0xd1, 0x05, 0xa6, 0xae, 0x33, 0x2b, 0xf7, 0x2a, + 0xa9, 0x8a, 0x44, 0x3b, 0xa9, 0x7d, 0xa5, 0x5b, 0xad, 0xb2, 0xe3, 0xc3, +}; +static const unsigned char kat1711_nonce[] = { + 0x38, 0x5b, 0xd4, 0x42, 0xb5, 0xb7, 0x21, 0x0c, 0x2d, 0x66, 0x10, 0x9f, + 0x88, 0xac, 0x1e, 0xd1, +}; +static const unsigned char kat1711_persstr[] = { + 0x16, 0xed, 0x4e, 0xe5, 0x94, 0x01, 0x55, 0x0c, 0x67, 0xcd, 0xab, 0x99, + 0x62, 0x02, 0x57, 0xe5, 0x4c, 0xfc, 0x7a, 0xa3, 0x12, 0xc6, 0x81, 0x4f, + 0x81, 0x35, 0x21, 0x23, 0xe4, 0xa2, 0x8f, 0x11, +}; +static const unsigned char kat1711_entropyinreseed[] = { + 0xa8, 0x35, 0xe0, 0x14, 0x0b, 0x52, 0xae, 0x14, 0xdf, 0x33, 0x43, 0xb6, + 0x5b, 0x11, 0x01, 0x92, 0xba, 0xaf, 0xd1, 0x7e, 0xc2, 0xbc, 0xb1, 0x0a, +}; +static const unsigned char kat1711_addinreseed[] = {0}; +static const unsigned char kat1711_addin0[] = {0}; +static const unsigned char kat1711_addin1[] = {0}; +static const unsigned char kat1711_retbits[] = { + 0x4b, 0x8a, 0xfb, 0x7c, 0x20, 0xbf, 0x94, 0x1d, 0xb7, 0xfb, 0x2c, 0xac, + 0x02, 0xb4, 0x6a, 0x45, 0x31, 0x33, 0x34, 0xc0, 0x40, 0x34, 0xb7, 0xe4, + 0x11, 0xb3, 0x60, 0x7e, 0x19, 0xfc, 0x92, 0x1d, 0xca, 0x47, 0xf1, 0x9c, + 0x58, 0x77, 0xe9, 0x20, 0x86, 0x54, 0x7c, 0xc6, 0xf1, 0x15, 0x8c, 0xa4, + 0xcf, 0xd6, 0x20, 0x01, 0xf7, 0xe0, 0xf3, 0xaf, 0x8a, 0x62, 0xe3, 0xc9, + 0x88, 0x8b, 0xf9, 0xad, +}; +static const struct drbg_kat_pr_false kat1711_t = { + 0, kat1711_entropyin, kat1711_nonce, kat1711_persstr, + kat1711_entropyinreseed, kat1711_addinreseed, kat1711_addin0, + kat1711_addin1, kat1711_retbits +}; +static const struct drbg_kat kat1711 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1711_t +}; + +static const unsigned char kat1712_entropyin[] = { + 0xe3, 0xcf, 0xf7, 0x14, 0x2a, 0x7f, 0x22, 0x01, 0x86, 0x03, 0x2d, 0x9a, + 0xe1, 0x71, 0x0a, 0xda, 0x92, 0x14, 0x77, 0x3a, 0x88, 0x4f, 0x3e, 0xc2, +}; +static const unsigned char kat1712_nonce[] = { + 0x1d, 0x82, 0x7a, 0x2d, 0xf6, 0x8e, 0x9f, 0x64, 0xb6, 0xde, 0xdf, 0x09, + 0x98, 0xe1, 0x12, 0x3c, +}; +static const unsigned char kat1712_persstr[] = { + 0xea, 0x14, 0xfe, 0xbc, 0x4c, 0xc3, 0x38, 0x46, 0xd2, 0x66, 0x96, 0x1d, + 0x2d, 0x97, 0xfb, 0xca, 0xba, 0x58, 0xc8, 0x48, 0xbb, 0x82, 0x8b, 0xef, + 0x63, 0x36, 0xab, 0x06, 0x9a, 0x87, 0xda, 0xef, +}; +static const unsigned char kat1712_entropyinreseed[] = { + 0xbd, 0xbd, 0xf2, 0x28, 0x7b, 0xec, 0x53, 0x6b, 0xe1, 0x6d, 0x62, 0x18, + 0x0d, 0x66, 0x7c, 0xcf, 0xeb, 0xd3, 0x7d, 0x44, 0x59, 0x20, 0xc6, 0x96, +}; +static const unsigned char kat1712_addinreseed[] = {0}; +static const unsigned char kat1712_addin0[] = {0}; +static const unsigned char kat1712_addin1[] = {0}; +static const unsigned char kat1712_retbits[] = { + 0x16, 0xa4, 0x6a, 0xe5, 0xda, 0xe5, 0xea, 0x51, 0xc5, 0x8a, 0x8f, 0xf6, + 0xeb, 0x43, 0x19, 0x6d, 0xe2, 0x6a, 0xc9, 0x7f, 0xb4, 0x32, 0xc6, 0x33, + 0x3a, 0x41, 0x82, 0x68, 0xf4, 0xbe, 0xfe, 0x2b, 0x75, 0x34, 0xa8, 0x9b, + 0xee, 0xc1, 0xa7, 0x7f, 0x23, 0x9a, 0xcd, 0x4c, 0x63, 0x36, 0x7a, 0xd7, + 0xad, 0xf9, 0xbc, 0x6c, 0xf2, 0xe4, 0xf7, 0x42, 0xef, 0xcc, 0xde, 0xf6, + 0x26, 0x24, 0x57, 0x2b, +}; +static const struct drbg_kat_pr_false kat1712_t = { + 1, kat1712_entropyin, kat1712_nonce, kat1712_persstr, + kat1712_entropyinreseed, kat1712_addinreseed, kat1712_addin0, + kat1712_addin1, kat1712_retbits +}; +static const struct drbg_kat kat1712 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1712_t +}; + +static const unsigned char kat1713_entropyin[] = { + 0x0c, 0xb4, 0xfa, 0x32, 0x5f, 0xe3, 0x28, 0x38, 0x56, 0x80, 0xa2, 0x05, + 0x3a, 0x47, 0x19, 0x4a, 0x7d, 0x6d, 0x20, 0x1a, 0x02, 0x8f, 0x14, 0x7a, +}; +static const unsigned char kat1713_nonce[] = { + 0xc3, 0xa7, 0x12, 0xec, 0x12, 0xb6, 0xed, 0x9a, 0x21, 0x47, 0x07, 0xa5, + 0xf1, 0x5a, 0x8b, 0x4a, +}; +static const unsigned char kat1713_persstr[] = { + 0x5d, 0x44, 0x33, 0xd2, 0x9b, 0xac, 0x8c, 0x03, 0xa1, 0x61, 0x6d, 0xf4, + 0x31, 0x9f, 0xf3, 0x1f, 0x1a, 0xd6, 0x2d, 0x76, 0x46, 0x1a, 0xf6, 0xd3, + 0xf3, 0xbe, 0x53, 0x7d, 0xcd, 0x9b, 0x1a, 0x21, +}; +static const unsigned char kat1713_entropyinreseed[] = { + 0x61, 0x6e, 0xbb, 0x63, 0xcc, 0x14, 0x39, 0x48, 0x09, 0xd5, 0xce, 0x11, + 0x48, 0xe8, 0x5c, 0x26, 0xde, 0xf9, 0xaa, 0xcc, 0xf7, 0x0b, 0x2f, 0x13, +}; +static const unsigned char kat1713_addinreseed[] = {0}; +static const unsigned char kat1713_addin0[] = {0}; +static const unsigned char kat1713_addin1[] = {0}; +static const unsigned char kat1713_retbits[] = { + 0x2e, 0x0b, 0x66, 0x3a, 0x5a, 0xaf, 0xe0, 0xfc, 0x61, 0x5e, 0xf4, 0xef, + 0xa6, 0xbe, 0x0c, 0x7b, 0xa1, 0xc4, 0x74, 0x36, 0x0d, 0xf2, 0x10, 0xed, + 0x0b, 0xc7, 0x6f, 0xf4, 0x58, 0xa3, 0xbd, 0x73, 0x2d, 0x3d, 0xec, 0x7b, + 0x89, 0x01, 0x79, 0xbc, 0xe2, 0x69, 0x8c, 0x28, 0x53, 0x83, 0xdc, 0x58, + 0x04, 0x5a, 0x95, 0x79, 0xfc, 0x72, 0x4f, 0x9a, 0x24, 0xca, 0x76, 0x8a, + 0x43, 0xb6, 0xf5, 0xdd, +}; +static const struct drbg_kat_pr_false kat1713_t = { + 2, kat1713_entropyin, kat1713_nonce, kat1713_persstr, + kat1713_entropyinreseed, kat1713_addinreseed, kat1713_addin0, + kat1713_addin1, kat1713_retbits +}; +static const struct drbg_kat kat1713 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1713_t +}; + +static const unsigned char kat1714_entropyin[] = { + 0xc9, 0xd8, 0x9d, 0x88, 0xc9, 0x33, 0x03, 0x3a, 0x27, 0x53, 0x09, 0xd3, + 0xe8, 0xe4, 0x84, 0xb9, 0x2f, 0x3c, 0x22, 0xb1, 0xf2, 0xe5, 0xe0, 0x84, +}; +static const unsigned char kat1714_nonce[] = { + 0x49, 0x2d, 0x6f, 0x25, 0x49, 0x2d, 0x7e, 0x43, 0x34, 0xe7, 0x2b, 0xfc, + 0xfc, 0x2f, 0x4e, 0xc5, +}; +static const unsigned char kat1714_persstr[] = { + 0xe1, 0xc9, 0x9f, 0x11, 0x60, 0x57, 0x84, 0x2d, 0x63, 0x06, 0xdb, 0x32, + 0x7b, 0x43, 0x6a, 0x65, 0x3c, 0xe7, 0x6f, 0x4a, 0x30, 0xc3, 0x08, 0x92, + 0x13, 0x66, 0xbf, 0xcc, 0xfa, 0xce, 0xdc, 0x98, +}; +static const unsigned char kat1714_entropyinreseed[] = { + 0x83, 0x35, 0xfa, 0xbd, 0x36, 0x9e, 0x9d, 0xbb, 0xc4, 0xe2, 0xd6, 0x34, + 0xb3, 0x74, 0x61, 0xe3, 0x0a, 0x01, 0xdb, 0x6e, 0xd4, 0x82, 0x47, 0x3b, +}; +static const unsigned char kat1714_addinreseed[] = {0}; +static const unsigned char kat1714_addin0[] = {0}; +static const unsigned char kat1714_addin1[] = {0}; +static const unsigned char kat1714_retbits[] = { + 0x5f, 0x4a, 0xaf, 0x8b, 0x5a, 0x3a, 0x1a, 0x03, 0x14, 0x48, 0xf9, 0x49, + 0xc4, 0xf8, 0x2c, 0x50, 0x1a, 0xd6, 0xb0, 0xb8, 0x29, 0x19, 0x06, 0xee, + 0x00, 0x5c, 0x1b, 0x77, 0x11, 0x44, 0xc1, 0xc0, 0xda, 0xf5, 0x85, 0x7a, + 0x25, 0x64, 0xf7, 0xe0, 0xac, 0x21, 0xdf, 0x5d, 0x52, 0x34, 0x43, 0xab, + 0xa9, 0x51, 0xee, 0x53, 0x51, 0xa2, 0xe6, 0x60, 0xe4, 0xd5, 0x27, 0xdc, + 0x3f, 0x32, 0x0c, 0xa4, +}; +static const struct drbg_kat_pr_false kat1714_t = { + 3, kat1714_entropyin, kat1714_nonce, kat1714_persstr, + kat1714_entropyinreseed, kat1714_addinreseed, kat1714_addin0, + kat1714_addin1, kat1714_retbits +}; +static const struct drbg_kat kat1714 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1714_t +}; + +static const unsigned char kat1715_entropyin[] = { + 0x89, 0xd5, 0xf4, 0x9b, 0x38, 0xc2, 0x51, 0x1d, 0xab, 0x84, 0xdd, 0x37, + 0x9d, 0x99, 0x96, 0x5d, 0x89, 0x7f, 0x82, 0x95, 0x29, 0x47, 0xad, 0xe4, +}; +static const unsigned char kat1715_nonce[] = { + 0xde, 0x6d, 0x08, 0x38, 0xf5, 0x29, 0x95, 0x26, 0x2f, 0xe8, 0xf9, 0x1c, + 0x24, 0x55, 0xa0, 0x9d, +}; +static const unsigned char kat1715_persstr[] = { + 0x94, 0x71, 0x58, 0x73, 0x11, 0xf5, 0x9d, 0xb5, 0xd7, 0xb5, 0x7b, 0x7b, + 0x74, 0xdb, 0x62, 0x68, 0x7d, 0x85, 0xa0, 0x8c, 0x22, 0x55, 0xf4, 0xa8, + 0x4e, 0x6c, 0x09, 0x6e, 0x53, 0xb3, 0x38, 0x18, +}; +static const unsigned char kat1715_entropyinreseed[] = { + 0xfe, 0xf4, 0xbf, 0x58, 0x4b, 0x76, 0x7c, 0xdf, 0xa2, 0x97, 0xf0, 0x77, + 0x17, 0xe0, 0x3b, 0x7e, 0x9a, 0x29, 0xf1, 0x61, 0xd1, 0x05, 0x04, 0x0b, +}; +static const unsigned char kat1715_addinreseed[] = {0}; +static const unsigned char kat1715_addin0[] = {0}; +static const unsigned char kat1715_addin1[] = {0}; +static const unsigned char kat1715_retbits[] = { + 0xb2, 0x3d, 0x19, 0xfd, 0xad, 0x4f, 0xb8, 0xe4, 0x5b, 0x2f, 0xb5, 0xed, + 0x80, 0x7b, 0xa3, 0xac, 0xb1, 0x1d, 0x56, 0x64, 0x9a, 0xc2, 0xef, 0x71, + 0x47, 0xc8, 0xc7, 0x8b, 0x13, 0x4c, 0x5b, 0xba, 0x87, 0xa7, 0x10, 0xcf, + 0xb6, 0xe6, 0x46, 0x02, 0x81, 0xdd, 0x4d, 0xb7, 0xd6, 0x28, 0x3e, 0x15, + 0x4a, 0xfa, 0x16, 0x49, 0x95, 0xaf, 0x02, 0x49, 0x11, 0x98, 0x38, 0xb2, + 0x2b, 0x8a, 0x5a, 0x4b, +}; +static const struct drbg_kat_pr_false kat1715_t = { + 4, kat1715_entropyin, kat1715_nonce, kat1715_persstr, + kat1715_entropyinreseed, kat1715_addinreseed, kat1715_addin0, + kat1715_addin1, kat1715_retbits +}; +static const struct drbg_kat kat1715 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1715_t +}; + +static const unsigned char kat1716_entropyin[] = { + 0x37, 0x78, 0xc9, 0x92, 0x77, 0x8f, 0x16, 0xf4, 0x8e, 0x46, 0xf6, 0x8c, + 0xe0, 0x0b, 0xe0, 0x24, 0x69, 0x6a, 0xae, 0xe2, 0xd5, 0x3c, 0xc6, 0xc9, +}; +static const unsigned char kat1716_nonce[] = { + 0x9e, 0xa6, 0x45, 0x1e, 0xe3, 0x1d, 0xf3, 0x0e, 0x60, 0xad, 0xbb, 0xf4, + 0xd8, 0x29, 0x87, 0x47, +}; +static const unsigned char kat1716_persstr[] = { + 0x5a, 0xed, 0x80, 0x56, 0xfe, 0x05, 0x89, 0x2e, 0x9c, 0x99, 0xc6, 0x0f, + 0x0b, 0xc1, 0xd9, 0xb2, 0x48, 0x48, 0xf7, 0x2a, 0x17, 0x22, 0xfc, 0x4f, + 0x48, 0x9a, 0x1e, 0xc2, 0x0b, 0x5d, 0x19, 0xd2, +}; +static const unsigned char kat1716_entropyinreseed[] = { + 0x42, 0x1f, 0x1b, 0x05, 0xf4, 0x7a, 0x0a, 0x11, 0x00, 0xeb, 0xb5, 0xcc, + 0xb0, 0x4d, 0xc3, 0x17, 0x87, 0x99, 0xd2, 0x40, 0x1f, 0x71, 0x98, 0x59, +}; +static const unsigned char kat1716_addinreseed[] = {0}; +static const unsigned char kat1716_addin0[] = {0}; +static const unsigned char kat1716_addin1[] = {0}; +static const unsigned char kat1716_retbits[] = { + 0xb5, 0x84, 0x04, 0x3c, 0xad, 0x7c, 0xd3, 0x46, 0xdf, 0xd0, 0x58, 0xd4, + 0x6b, 0x34, 0xf0, 0xba, 0x0c, 0xa6, 0xc3, 0x4b, 0x61, 0x98, 0xff, 0xf8, + 0xc8, 0x61, 0x47, 0x10, 0x48, 0x39, 0x29, 0xa1, 0x8b, 0xae, 0xe5, 0xa6, + 0x7b, 0x1b, 0x64, 0x8e, 0x6b, 0x27, 0xa7, 0xe9, 0x10, 0x0c, 0xb2, 0x8d, + 0x1a, 0x94, 0x23, 0x60, 0xf8, 0x52, 0x29, 0x5f, 0x33, 0xa8, 0xf8, 0xcf, + 0x09, 0xb8, 0x29, 0xcb, +}; +static const struct drbg_kat_pr_false kat1716_t = { + 5, kat1716_entropyin, kat1716_nonce, kat1716_persstr, + kat1716_entropyinreseed, kat1716_addinreseed, kat1716_addin0, + kat1716_addin1, kat1716_retbits +}; +static const struct drbg_kat kat1716 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1716_t +}; + +static const unsigned char kat1717_entropyin[] = { + 0x74, 0xed, 0x96, 0x9a, 0x5f, 0x80, 0x67, 0xa4, 0xbe, 0xe9, 0x9c, 0x24, + 0x8d, 0x79, 0x9a, 0x85, 0x49, 0x47, 0x93, 0x22, 0x46, 0x0e, 0x1c, 0x6d, +}; +static const unsigned char kat1717_nonce[] = { + 0xa8, 0xa5, 0xc8, 0x74, 0xcd, 0xdc, 0x73, 0xab, 0xd8, 0xa6, 0xcc, 0x5a, + 0x0c, 0xb2, 0x87, 0x18, +}; +static const unsigned char kat1717_persstr[] = { + 0xd7, 0xb6, 0x4d, 0x2d, 0xd3, 0xbd, 0xf5, 0xba, 0x98, 0xa6, 0xf6, 0x9e, + 0x90, 0x45, 0xf2, 0x61, 0xaa, 0xe3, 0x2e, 0xa4, 0xac, 0xe5, 0xca, 0x05, + 0x49, 0x69, 0xeb, 0x31, 0x33, 0x27, 0x0c, 0xbf, +}; +static const unsigned char kat1717_entropyinreseed[] = { + 0xbe, 0x88, 0x02, 0xae, 0x99, 0x5a, 0xea, 0x50, 0xa6, 0xde, 0x7d, 0xab, + 0x99, 0x72, 0xb8, 0x65, 0x32, 0x68, 0xaf, 0xfb, 0x68, 0x7b, 0x46, 0xb3, +}; +static const unsigned char kat1717_addinreseed[] = {0}; +static const unsigned char kat1717_addin0[] = {0}; +static const unsigned char kat1717_addin1[] = {0}; +static const unsigned char kat1717_retbits[] = { + 0x88, 0x75, 0x49, 0x97, 0xc4, 0x74, 0xbb, 0x30, 0xe9, 0xf1, 0x47, 0x27, + 0x3f, 0x65, 0x3c, 0x02, 0x69, 0x3b, 0xe2, 0xc2, 0xe4, 0x79, 0x53, 0xb4, + 0xc8, 0xff, 0x2c, 0x37, 0xa1, 0xe1, 0x95, 0x52, 0x19, 0x02, 0x3d, 0x5a, + 0xae, 0x09, 0xa8, 0xd3, 0x9d, 0x77, 0x2b, 0xdc, 0x58, 0x36, 0x10, 0x12, + 0x8b, 0x89, 0x44, 0x0c, 0x9d, 0x51, 0x56, 0x6d, 0xa8, 0xbd, 0xe9, 0x2c, + 0xc2, 0x65, 0x21, 0xcc, +}; +static const struct drbg_kat_pr_false kat1717_t = { + 6, kat1717_entropyin, kat1717_nonce, kat1717_persstr, + kat1717_entropyinreseed, kat1717_addinreseed, kat1717_addin0, + kat1717_addin1, kat1717_retbits +}; +static const struct drbg_kat kat1717 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1717_t +}; + +static const unsigned char kat1718_entropyin[] = { + 0x9f, 0xf4, 0xb4, 0xfe, 0x4b, 0xee, 0x71, 0xfc, 0xc8, 0x3c, 0xcb, 0xaa, + 0xb7, 0x37, 0x5f, 0xb2, 0x0d, 0x51, 0x80, 0x0e, 0x94, 0x6a, 0xa2, 0x0f, +}; +static const unsigned char kat1718_nonce[] = { + 0xcc, 0x4a, 0xab, 0x82, 0xec, 0x3b, 0xc4, 0x58, 0x8b, 0x84, 0x8c, 0x41, + 0x29, 0x3a, 0x57, 0x18, +}; +static const unsigned char kat1718_persstr[] = { + 0x0f, 0x49, 0x26, 0x17, 0xa1, 0x89, 0xe9, 0xd5, 0x35, 0xca, 0x7b, 0x64, + 0xad, 0xbb, 0x6a, 0x6d, 0xab, 0x3a, 0x5b, 0xe5, 0x13, 0xf8, 0x67, 0x42, + 0xf9, 0x61, 0xd0, 0xc8, 0xda, 0xa5, 0x38, 0x37, +}; +static const unsigned char kat1718_entropyinreseed[] = { + 0x99, 0xd6, 0x88, 0x49, 0x9f, 0x6b, 0xe5, 0xda, 0x36, 0xb9, 0xc9, 0xba, + 0x94, 0x3e, 0xec, 0x84, 0x7b, 0x4b, 0x6b, 0x3c, 0xf3, 0x18, 0x40, 0xd0, +}; +static const unsigned char kat1718_addinreseed[] = {0}; +static const unsigned char kat1718_addin0[] = {0}; +static const unsigned char kat1718_addin1[] = {0}; +static const unsigned char kat1718_retbits[] = { + 0x3c, 0x4c, 0x9a, 0x4c, 0x1c, 0x82, 0xf1, 0x6a, 0x3f, 0x72, 0xc2, 0x1a, + 0xd9, 0xc0, 0x25, 0x7b, 0x5c, 0x69, 0xfb, 0xd1, 0x2b, 0x70, 0xa3, 0xa8, + 0xbd, 0x2c, 0xa4, 0x2a, 0x20, 0x33, 0xa2, 0x31, 0xbe, 0xc4, 0xd9, 0x32, + 0x46, 0xd2, 0x5c, 0xaa, 0x68, 0xd6, 0x0c, 0x7a, 0xab, 0x41, 0x94, 0x38, + 0x1a, 0x30, 0x9a, 0x1a, 0xaa, 0x07, 0x98, 0x93, 0xf7, 0x8a, 0x96, 0xac, + 0xcf, 0x1e, 0x10, 0xba, +}; +static const struct drbg_kat_pr_false kat1718_t = { + 7, kat1718_entropyin, kat1718_nonce, kat1718_persstr, + kat1718_entropyinreseed, kat1718_addinreseed, kat1718_addin0, + kat1718_addin1, kat1718_retbits +}; +static const struct drbg_kat kat1718 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1718_t +}; + +static const unsigned char kat1719_entropyin[] = { + 0xee, 0xf4, 0xce, 0x64, 0x12, 0xc0, 0x29, 0xdb, 0xd0, 0x09, 0x0f, 0x6b, + 0xfb, 0x56, 0x42, 0x68, 0x9c, 0x53, 0x66, 0xef, 0x4b, 0x31, 0x08, 0x9c, +}; +static const unsigned char kat1719_nonce[] = { + 0x01, 0xf9, 0x80, 0x77, 0x3c, 0x1c, 0x7a, 0xef, 0xa2, 0x18, 0xa7, 0x67, + 0xae, 0x02, 0x3e, 0xe7, +}; +static const unsigned char kat1719_persstr[] = { + 0xa9, 0xff, 0x72, 0x03, 0xce, 0x16, 0xa7, 0x20, 0xb8, 0xb6, 0x51, 0x4d, + 0xff, 0x58, 0x7f, 0x54, 0xeb, 0x28, 0x32, 0x36, 0x69, 0xd0, 0x1b, 0x9e, + 0x55, 0xfc, 0xd3, 0x4a, 0x98, 0xdc, 0xad, 0x90, +}; +static const unsigned char kat1719_entropyinreseed[] = { + 0x19, 0x26, 0xa7, 0x29, 0xcc, 0x54, 0xe2, 0x28, 0x69, 0xfa, 0xd8, 0x0d, + 0xb7, 0x74, 0xd8, 0x4f, 0x42, 0xd7, 0x38, 0xd3, 0xc8, 0x84, 0x8d, 0x1e, +}; +static const unsigned char kat1719_addinreseed[] = {0}; +static const unsigned char kat1719_addin0[] = {0}; +static const unsigned char kat1719_addin1[] = {0}; +static const unsigned char kat1719_retbits[] = { + 0x52, 0x23, 0xf2, 0x69, 0xda, 0xf6, 0xb4, 0x78, 0xcd, 0x31, 0x05, 0xb8, + 0xd6, 0x89, 0xcb, 0x0b, 0x32, 0x24, 0x7a, 0x47, 0x64, 0xd8, 0xb0, 0x52, + 0xbe, 0x2c, 0x3f, 0xdd, 0x8a, 0x61, 0x0a, 0xc8, 0x93, 0x82, 0x28, 0x20, + 0xac, 0xba, 0x53, 0xc0, 0x36, 0x85, 0x18, 0xef, 0x3a, 0x3f, 0xdf, 0x98, + 0xf5, 0xf4, 0x44, 0x07, 0x89, 0xfc, 0x2b, 0xf4, 0xb1, 0xe9, 0x99, 0xb3, + 0x84, 0xfb, 0x8a, 0x5b, +}; +static const struct drbg_kat_pr_false kat1719_t = { + 8, kat1719_entropyin, kat1719_nonce, kat1719_persstr, + kat1719_entropyinreseed, kat1719_addinreseed, kat1719_addin0, + kat1719_addin1, kat1719_retbits +}; +static const struct drbg_kat kat1719 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1719_t +}; + +static const unsigned char kat1720_entropyin[] = { + 0x64, 0x0c, 0xb5, 0x2b, 0xb0, 0x72, 0x0e, 0xcf, 0x4d, 0x69, 0xd9, 0x03, + 0x7c, 0x8a, 0x96, 0x99, 0x9d, 0x06, 0x22, 0x1a, 0xaa, 0x53, 0xf0, 0xd5, +}; +static const unsigned char kat1720_nonce[] = { + 0xd8, 0x35, 0x3d, 0xc3, 0x3b, 0x33, 0x28, 0x7b, 0x7f, 0xfd, 0x91, 0x00, + 0xbc, 0xcb, 0x55, 0x54, +}; +static const unsigned char kat1720_persstr[] = { + 0x98, 0x9f, 0x1c, 0xa7, 0xd6, 0x3a, 0xd2, 0xbf, 0x8a, 0x2c, 0x34, 0x92, + 0x1a, 0xd7, 0xbf, 0x8a, 0xf3, 0xd8, 0x30, 0xdc, 0x1c, 0xae, 0xa6, 0xa8, + 0x4d, 0x2c, 0x88, 0xbe, 0xf3, 0x31, 0x8a, 0xa8, +}; +static const unsigned char kat1720_entropyinreseed[] = { + 0x86, 0x5f, 0x77, 0x28, 0x22, 0xf1, 0x85, 0x63, 0xe9, 0x74, 0x71, 0x54, + 0xec, 0xa2, 0xb8, 0x6f, 0x38, 0x66, 0xc3, 0xe1, 0x52, 0x29, 0x3e, 0x27, +}; +static const unsigned char kat1720_addinreseed[] = {0}; +static const unsigned char kat1720_addin0[] = {0}; +static const unsigned char kat1720_addin1[] = {0}; +static const unsigned char kat1720_retbits[] = { + 0xeb, 0x3d, 0xfb, 0xca, 0xaf, 0x41, 0xdb, 0xa5, 0xb4, 0xcb, 0x13, 0x34, + 0xdf, 0x47, 0xb0, 0x88, 0xd3, 0x4e, 0x7e, 0x6e, 0x13, 0x40, 0x64, 0x5d, + 0x19, 0x6b, 0x40, 0x57, 0x9a, 0xaa, 0xed, 0x94, 0x4e, 0x93, 0xe2, 0xde, + 0x78, 0x1b, 0x62, 0x15, 0x2d, 0x75, 0xe8, 0x2a, 0xf9, 0x03, 0x6d, 0x7c, + 0xca, 0xf3, 0xf8, 0x3d, 0x67, 0x46, 0x5c, 0xce, 0x27, 0x46, 0xf7, 0xb6, + 0xb3, 0xe2, 0x6e, 0x58, +}; +static const struct drbg_kat_pr_false kat1720_t = { + 9, kat1720_entropyin, kat1720_nonce, kat1720_persstr, + kat1720_entropyinreseed, kat1720_addinreseed, kat1720_addin0, + kat1720_addin1, kat1720_retbits +}; +static const struct drbg_kat kat1720 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1720_t +}; + +static const unsigned char kat1721_entropyin[] = { + 0x5e, 0x26, 0x76, 0xdc, 0x7c, 0x0e, 0x85, 0xe7, 0x2a, 0xa4, 0x83, 0x86, + 0x39, 0x96, 0x7e, 0x04, 0xf7, 0x70, 0x1c, 0x11, 0x15, 0x04, 0xa4, 0xec, +}; +static const unsigned char kat1721_nonce[] = { + 0x29, 0x3a, 0x64, 0x5b, 0xe4, 0x3e, 0xe7, 0x92, 0xdf, 0x89, 0xea, 0x78, + 0xc8, 0xfc, 0xe5, 0x75, +}; +static const unsigned char kat1721_persstr[] = { + 0xcc, 0xb1, 0x3a, 0xdc, 0xbd, 0xf1, 0x12, 0x97, 0x9c, 0xcf, 0xcd, 0x1c, + 0xb4, 0x0f, 0x74, 0x43, 0xb0, 0x82, 0x07, 0xda, 0x54, 0x38, 0x36, 0xa6, + 0x95, 0x21, 0x49, 0xbc, 0x9a, 0x8b, 0x95, 0x37, +}; +static const unsigned char kat1721_entropyinreseed[] = { + 0x64, 0x0e, 0x6e, 0xdb, 0x68, 0x3f, 0xcb, 0xa5, 0xb1, 0x0d, 0x3c, 0x39, + 0x5b, 0x19, 0xbf, 0xe0, 0x3b, 0x64, 0x98, 0xe1, 0x40, 0x30, 0x2a, 0x5a, +}; +static const unsigned char kat1721_addinreseed[] = {0}; +static const unsigned char kat1721_addin0[] = {0}; +static const unsigned char kat1721_addin1[] = {0}; +static const unsigned char kat1721_retbits[] = { + 0xf7, 0x0e, 0x60, 0x47, 0x1a, 0x48, 0x04, 0x9a, 0x4a, 0x85, 0x19, 0x1f, + 0x4d, 0xc2, 0xa5, 0xaa, 0x0d, 0xa1, 0x1a, 0x45, 0x51, 0xb3, 0xc1, 0xee, + 0x49, 0x13, 0x67, 0xb8, 0x5d, 0x4e, 0x10, 0x01, 0x4b, 0xd9, 0x14, 0x22, + 0x3e, 0xa7, 0x0b, 0x20, 0x99, 0xd8, 0x31, 0x65, 0xfe, 0xef, 0x3e, 0x96, + 0x6e, 0x29, 0x72, 0xc5, 0x54, 0xc3, 0x97, 0xd3, 0x3b, 0xfe, 0x5c, 0x77, + 0x34, 0xec, 0x3f, 0xaf, +}; +static const struct drbg_kat_pr_false kat1721_t = { + 10, kat1721_entropyin, kat1721_nonce, kat1721_persstr, + kat1721_entropyinreseed, kat1721_addinreseed, kat1721_addin0, + kat1721_addin1, kat1721_retbits +}; +static const struct drbg_kat kat1721 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1721_t +}; + +static const unsigned char kat1722_entropyin[] = { + 0x87, 0x92, 0xc5, 0xa2, 0xc8, 0x4b, 0x1b, 0x9d, 0xcd, 0x2a, 0x7f, 0xcc, + 0x4a, 0x38, 0xd6, 0xcc, 0x85, 0x24, 0x34, 0xde, 0x18, 0xb0, 0xf2, 0xd6, +}; +static const unsigned char kat1722_nonce[] = { + 0x01, 0x13, 0x24, 0x11, 0xa6, 0xdf, 0x2f, 0x1f, 0xac, 0x37, 0x4f, 0xba, + 0x2e, 0x96, 0x1d, 0x52, +}; +static const unsigned char kat1722_persstr[] = { + 0xe9, 0x85, 0xad, 0x13, 0x5f, 0x44, 0xc4, 0xf0, 0x68, 0xc1, 0x9b, 0xa4, + 0x2a, 0x47, 0x4a, 0x78, 0x2c, 0x4b, 0x23, 0x92, 0xa5, 0xa9, 0x43, 0xe6, + 0x29, 0x80, 0x2b, 0x27, 0x58, 0x23, 0x1e, 0x74, +}; +static const unsigned char kat1722_entropyinreseed[] = { + 0x51, 0xea, 0x69, 0x00, 0xe3, 0xd2, 0x78, 0x9e, 0x9f, 0x13, 0x53, 0x54, + 0xb6, 0x63, 0x8f, 0xf3, 0xdd, 0x49, 0x57, 0xf9, 0x28, 0x91, 0xba, 0x66, +}; +static const unsigned char kat1722_addinreseed[] = {0}; +static const unsigned char kat1722_addin0[] = {0}; +static const unsigned char kat1722_addin1[] = {0}; +static const unsigned char kat1722_retbits[] = { + 0xb3, 0x84, 0xb7, 0x29, 0x30, 0xd1, 0xb5, 0x31, 0xb5, 0xe2, 0x82, 0x21, + 0x33, 0x9e, 0xd2, 0x8d, 0x04, 0x5c, 0x72, 0x93, 0x67, 0x3d, 0x73, 0x65, + 0xab, 0x2b, 0x0b, 0x28, 0xaf, 0x0d, 0x82, 0xca, 0x97, 0xb6, 0x23, 0xf9, + 0x1b, 0x0b, 0x65, 0x08, 0xfa, 0x3f, 0xec, 0x78, 0xe2, 0xc5, 0x60, 0x07, + 0x40, 0x35, 0x7e, 0x77, 0xc1, 0xac, 0x67, 0x3b, 0xd3, 0x86, 0x12, 0xaa, + 0xa9, 0x1b, 0x46, 0xe3, +}; +static const struct drbg_kat_pr_false kat1722_t = { + 11, kat1722_entropyin, kat1722_nonce, kat1722_persstr, + kat1722_entropyinreseed, kat1722_addinreseed, kat1722_addin0, + kat1722_addin1, kat1722_retbits +}; +static const struct drbg_kat kat1722 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1722_t +}; + +static const unsigned char kat1723_entropyin[] = { + 0x55, 0x72, 0xc0, 0xf3, 0x52, 0x0c, 0xe2, 0x5b, 0x4b, 0xac, 0xbd, 0x82, + 0x76, 0xbe, 0xaa, 0x9c, 0x8a, 0xd4, 0xf8, 0xcd, 0xda, 0xfd, 0x8d, 0xaa, +}; +static const unsigned char kat1723_nonce[] = { + 0x46, 0xf2, 0x4e, 0x7a, 0x1d, 0xe7, 0x69, 0x48, 0x44, 0x64, 0xab, 0x41, + 0x97, 0x21, 0x26, 0x3e, +}; +static const unsigned char kat1723_persstr[] = { + 0xde, 0xe6, 0x58, 0x9c, 0x8b, 0x97, 0x2b, 0x0b, 0x58, 0x18, 0x52, 0xa2, + 0x63, 0x01, 0xcf, 0x5c, 0x2e, 0x7b, 0x58, 0x2f, 0x5d, 0x57, 0x4d, 0x41, + 0x34, 0xdb, 0x5a, 0x46, 0x20, 0x27, 0x10, 0x45, +}; +static const unsigned char kat1723_entropyinreseed[] = { + 0xf2, 0x5a, 0xc7, 0xa1, 0xd9, 0xfb, 0xa5, 0x74, 0xf5, 0x5a, 0x73, 0x8d, + 0x81, 0xd7, 0x30, 0xd4, 0xa6, 0x78, 0xc9, 0x22, 0xab, 0xff, 0x56, 0x67, +}; +static const unsigned char kat1723_addinreseed[] = {0}; +static const unsigned char kat1723_addin0[] = {0}; +static const unsigned char kat1723_addin1[] = {0}; +static const unsigned char kat1723_retbits[] = { + 0xbc, 0x7e, 0x16, 0xf8, 0xc6, 0x43, 0x2d, 0xa6, 0xd7, 0xf9, 0xf1, 0x87, + 0x65, 0x0a, 0x33, 0x08, 0x60, 0xe6, 0xb7, 0x07, 0xc2, 0xfe, 0x2b, 0xda, + 0x14, 0x6a, 0x5a, 0xdb, 0xbb, 0xac, 0xd3, 0x05, 0xc8, 0x13, 0x66, 0xe1, + 0x5f, 0x26, 0x9f, 0xcf, 0x33, 0xb4, 0x0c, 0xc1, 0x71, 0x0e, 0x2e, 0xfe, + 0x3d, 0x96, 0x91, 0x9b, 0x50, 0x09, 0xfb, 0xad, 0xc0, 0x26, 0x6d, 0xde, + 0xe8, 0x5e, 0x02, 0xf5, +}; +static const struct drbg_kat_pr_false kat1723_t = { + 12, kat1723_entropyin, kat1723_nonce, kat1723_persstr, + kat1723_entropyinreseed, kat1723_addinreseed, kat1723_addin0, + kat1723_addin1, kat1723_retbits +}; +static const struct drbg_kat kat1723 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1723_t +}; + +static const unsigned char kat1724_entropyin[] = { + 0x89, 0xbb, 0xe5, 0xd0, 0x01, 0xdb, 0x9f, 0xb2, 0x19, 0x8d, 0xb6, 0xd9, + 0x25, 0xd6, 0xca, 0x12, 0xf6, 0x8a, 0x2a, 0x52, 0x50, 0xa1, 0x42, 0xa4, +}; +static const unsigned char kat1724_nonce[] = { + 0xf4, 0x58, 0x12, 0x7b, 0x7a, 0x5d, 0xce, 0x83, 0xee, 0xb8, 0x7b, 0xe8, + 0x24, 0xe1, 0xa5, 0xac, +}; +static const unsigned char kat1724_persstr[] = { + 0x23, 0x96, 0xa7, 0x14, 0x68, 0x43, 0x5c, 0x63, 0x5e, 0x51, 0xf4, 0xf7, + 0xd3, 0x8c, 0x4a, 0x11, 0x57, 0x24, 0x0e, 0xd9, 0xa4, 0xf6, 0x32, 0x3e, + 0x13, 0xe7, 0xdb, 0x34, 0x0a, 0xba, 0x16, 0x62, +}; +static const unsigned char kat1724_entropyinreseed[] = { + 0xe1, 0x34, 0x62, 0x32, 0x55, 0x02, 0x90, 0x60, 0x02, 0xeb, 0xf9, 0x0b, + 0xc2, 0xa4, 0x2b, 0xb1, 0x06, 0xf2, 0xd7, 0x35, 0xf1, 0xd6, 0x97, 0x10, +}; +static const unsigned char kat1724_addinreseed[] = {0}; +static const unsigned char kat1724_addin0[] = {0}; +static const unsigned char kat1724_addin1[] = {0}; +static const unsigned char kat1724_retbits[] = { + 0x0c, 0xf5, 0xa2, 0x54, 0x85, 0xac, 0x14, 0x0b, 0xc6, 0x49, 0x71, 0xd9, + 0xb1, 0x73, 0x4f, 0xa5, 0x7b, 0xad, 0xad, 0xa8, 0xea, 0x2b, 0xaa, 0xc7, + 0x0b, 0xb2, 0x9d, 0xc2, 0x3a, 0xb5, 0x32, 0x79, 0xeb, 0xe5, 0x44, 0x4d, + 0xe2, 0x31, 0x98, 0x79, 0x63, 0x98, 0x21, 0x44, 0x83, 0xe8, 0xba, 0x12, + 0xee, 0x64, 0x7c, 0x3f, 0x06, 0x68, 0xdf, 0xff, 0x2d, 0x97, 0x9a, 0xe0, + 0x41, 0x43, 0xfb, 0x3d, +}; +static const struct drbg_kat_pr_false kat1724_t = { + 13, kat1724_entropyin, kat1724_nonce, kat1724_persstr, + kat1724_entropyinreseed, kat1724_addinreseed, kat1724_addin0, + kat1724_addin1, kat1724_retbits +}; +static const struct drbg_kat kat1724 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1724_t +}; + +static const unsigned char kat1725_entropyin[] = { + 0x8d, 0xf6, 0x79, 0x6a, 0xa3, 0x55, 0x95, 0xbe, 0x1f, 0x4f, 0x9f, 0x07, + 0x40, 0xe2, 0xa8, 0x22, 0x33, 0x2c, 0x82, 0xfb, 0xb9, 0xce, 0x49, 0x2e, +}; +static const unsigned char kat1725_nonce[] = { + 0x12, 0x55, 0x05, 0xcb, 0x0c, 0x37, 0xe0, 0x4b, 0xb9, 0xac, 0x58, 0x99, + 0x06, 0x99, 0xa9, 0x25, +}; +static const unsigned char kat1725_persstr[] = { + 0xff, 0xd7, 0x5a, 0x98, 0xdc, 0xf5, 0x21, 0x8a, 0x81, 0xf5, 0x82, 0x00, + 0x87, 0xee, 0xc8, 0x4a, 0x4a, 0x07, 0x60, 0x01, 0xb0, 0x1e, 0x24, 0xcc, + 0x8c, 0x15, 0x68, 0x03, 0xcc, 0xf9, 0x94, 0x35, +}; +static const unsigned char kat1725_entropyinreseed[] = { + 0x59, 0x94, 0x88, 0x01, 0x9a, 0x36, 0x13, 0x20, 0x02, 0x36, 0x7d, 0xf6, + 0xe2, 0xa6, 0xf8, 0x27, 0x35, 0xed, 0x55, 0xd5, 0xfa, 0x1c, 0x91, 0x46, +}; +static const unsigned char kat1725_addinreseed[] = {0}; +static const unsigned char kat1725_addin0[] = {0}; +static const unsigned char kat1725_addin1[] = {0}; +static const unsigned char kat1725_retbits[] = { + 0x73, 0xb0, 0x9a, 0xef, 0x67, 0x83, 0xb0, 0xc9, 0xd3, 0x08, 0xda, 0xb8, + 0xc9, 0x61, 0xbe, 0x7a, 0xe3, 0x4a, 0xff, 0xd4, 0xd0, 0x72, 0x56, 0x84, + 0x29, 0x8a, 0x2c, 0x76, 0x57, 0xe5, 0xa3, 0x3f, 0xe3, 0x67, 0x78, 0x1e, + 0xe1, 0xa7, 0xf2, 0x7e, 0x33, 0x7c, 0x23, 0xef, 0x7a, 0x35, 0x5d, 0x78, + 0x00, 0xf0, 0x85, 0x42, 0x00, 0x5f, 0x96, 0x86, 0xf2, 0xa8, 0x76, 0x2e, + 0xe8, 0xf6, 0xdb, 0x35, +}; +static const struct drbg_kat_pr_false kat1725_t = { + 14, kat1725_entropyin, kat1725_nonce, kat1725_persstr, + kat1725_entropyinreseed, kat1725_addinreseed, kat1725_addin0, + kat1725_addin1, kat1725_retbits +}; +static const struct drbg_kat kat1725 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1725_t +}; + +static const unsigned char kat1726_entropyin[] = { + 0xc4, 0xb1, 0xe6, 0xa9, 0x95, 0x87, 0xea, 0xcd, 0x7e, 0xc8, 0x51, 0x7f, + 0x40, 0xf9, 0x43, 0x3c, 0xa4, 0x32, 0xce, 0xa8, 0x68, 0x64, 0x33, 0xf0, +}; +static const unsigned char kat1726_nonce[] = { + 0xd0, 0x3a, 0x29, 0xe5, 0x48, 0xe5, 0x8c, 0xa7, 0xcb, 0xf0, 0xac, 0x70, + 0x7b, 0x14, 0x64, 0xe3, +}; +static const unsigned char kat1726_persstr[] = { + 0x0d, 0xaa, 0xea, 0xd2, 0x17, 0x79, 0xb2, 0xa4, 0x28, 0xd2, 0xb7, 0xfb, + 0x12, 0xd9, 0xab, 0x83, 0x16, 0x89, 0x9e, 0xdb, 0xe2, 0x6b, 0x54, 0x60, + 0xde, 0x15, 0x49, 0xc9, 0x9e, 0x47, 0x81, 0xc9, +}; +static const unsigned char kat1726_entropyinreseed[] = { + 0x22, 0x29, 0x14, 0x4c, 0x1b, 0x4e, 0xfb, 0x79, 0xab, 0x5f, 0xe0, 0x79, + 0xcd, 0xa2, 0x6b, 0xc3, 0x3a, 0xcb, 0xb2, 0xa0, 0xa8, 0x7f, 0x64, 0x2c, +}; +static const unsigned char kat1726_addinreseed[] = { + 0xf1, 0x16, 0xa6, 0x83, 0xca, 0x48, 0x5f, 0xda, 0x84, 0x6a, 0x59, 0x8b, + 0x8d, 0x9b, 0x07, 0x9e, 0x78, 0xc2, 0x82, 0x82, 0x86, 0xad, 0x53, 0x0b, + 0xf0, 0x1f, 0x69, 0x3c, 0xc8, 0xaf, 0x9f, 0x84, +}; +static const unsigned char kat1726_addin0[] = { + 0x7c, 0x89, 0xde, 0x35, 0x32, 0x98, 0x93, 0x5b, 0xd2, 0x6a, 0xa1, 0x85, + 0x17, 0x35, 0x53, 0x13, 0xdf, 0x06, 0x30, 0xda, 0x5f, 0x45, 0xea, 0x02, + 0x40, 0xe8, 0x09, 0x17, 0x93, 0x63, 0x08, 0x0b, +}; +static const unsigned char kat1726_addin1[] = { + 0xe9, 0x78, 0xb8, 0xfe, 0x56, 0xaf, 0xc9, 0x08, 0xbe, 0xd1, 0x29, 0xa4, + 0x6d, 0x57, 0xa8, 0x69, 0x8d, 0x66, 0x03, 0x4d, 0x4d, 0xbc, 0xc7, 0xab, + 0xa3, 0xa3, 0x3d, 0x57, 0x96, 0xfb, 0x75, 0x59, +}; +static const unsigned char kat1726_retbits[] = { + 0x8c, 0xe7, 0xe9, 0x58, 0x9c, 0x29, 0x75, 0xfd, 0x69, 0x89, 0xa4, 0x50, + 0xaa, 0x65, 0xda, 0x91, 0x14, 0xe5, 0x15, 0x77, 0x7c, 0x97, 0x35, 0x1d, + 0xa0, 0x37, 0xcc, 0xb7, 0x2d, 0x49, 0x87, 0xeb, 0x69, 0xc6, 0x80, 0x41, + 0x17, 0x24, 0xed, 0x60, 0x2e, 0x6a, 0xc7, 0x6c, 0xd2, 0xd0, 0x85, 0x72, + 0x56, 0x16, 0xc9, 0x27, 0x77, 0xa4, 0x66, 0x4d, 0x43, 0xa5, 0x9c, 0x3a, + 0xe9, 0x94, 0x61, 0x34, +}; +static const struct drbg_kat_pr_false kat1726_t = { + 0, kat1726_entropyin, kat1726_nonce, kat1726_persstr, + kat1726_entropyinreseed, kat1726_addinreseed, kat1726_addin0, + kat1726_addin1, kat1726_retbits +}; +static const struct drbg_kat kat1726 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1726_t +}; + +static const unsigned char kat1727_entropyin[] = { + 0xc5, 0x8a, 0xd5, 0x0f, 0x48, 0x8b, 0xd6, 0x92, 0x5c, 0x0e, 0x92, 0x3e, + 0x83, 0x64, 0xe8, 0x2d, 0x65, 0x5f, 0xd4, 0xd9, 0xbc, 0x05, 0xc9, 0xf0, +}; +static const unsigned char kat1727_nonce[] = { + 0x21, 0x9c, 0xb7, 0x12, 0x58, 0x11, 0x87, 0x72, 0x65, 0x27, 0xa2, 0x63, + 0x3c, 0x55, 0x05, 0xa6, +}; +static const unsigned char kat1727_persstr[] = { + 0xdf, 0x4d, 0x6e, 0xba, 0xba, 0xbf, 0xb2, 0x09, 0xa6, 0x01, 0xb9, 0x38, + 0xa6, 0x55, 0x6f, 0xf0, 0x37, 0xac, 0x2d, 0x51, 0xef, 0xaa, 0x23, 0x7b, + 0x34, 0x7d, 0x5d, 0xff, 0xff, 0x1e, 0x12, 0x71, +}; +static const unsigned char kat1727_entropyinreseed[] = { + 0xe4, 0x71, 0xdb, 0x32, 0xc9, 0xc5, 0x0c, 0x26, 0x88, 0x07, 0x52, 0x51, + 0xcc, 0x45, 0x51, 0x60, 0x4d, 0x02, 0xe2, 0xc1, 0x39, 0x82, 0x37, 0x52, +}; +static const unsigned char kat1727_addinreseed[] = { + 0xe5, 0xb1, 0xec, 0x5e, 0x6e, 0x8b, 0x43, 0x24, 0xb9, 0xe5, 0x02, 0xfb, + 0x88, 0xf9, 0xec, 0x66, 0x71, 0xec, 0x49, 0x41, 0x40, 0xc4, 0x6e, 0x58, + 0xec, 0x1d, 0x0c, 0x87, 0xd4, 0xff, 0x23, 0x64, +}; +static const unsigned char kat1727_addin0[] = { + 0xa7, 0x70, 0xf7, 0x3e, 0x3b, 0xfb, 0xe6, 0x1e, 0x8f, 0x05, 0xee, 0x03, + 0x4c, 0xdb, 0xc1, 0x45, 0x8f, 0x53, 0x42, 0xfb, 0xa9, 0xf0, 0x4d, 0xc2, + 0xeb, 0x52, 0x57, 0x39, 0x08, 0xd3, 0xd1, 0x6c, +}; +static const unsigned char kat1727_addin1[] = { + 0xaf, 0x96, 0x18, 0x16, 0x0e, 0x6e, 0x6f, 0x65, 0x65, 0x47, 0x9c, 0x74, + 0x4b, 0x75, 0xcc, 0x8a, 0xde, 0x16, 0x66, 0xd9, 0x4d, 0xa7, 0x90, 0x08, + 0x6a, 0x2e, 0x82, 0x13, 0xdd, 0xc9, 0xcc, 0x19, +}; +static const unsigned char kat1727_retbits[] = { + 0x3f, 0x8e, 0xff, 0x82, 0x47, 0x90, 0xe0, 0xec, 0x6d, 0x07, 0xfa, 0x28, + 0xe0, 0xa0, 0x0e, 0x8e, 0x06, 0xda, 0xd0, 0x33, 0xfa, 0x2d, 0xe5, 0xb9, + 0x7b, 0x4d, 0x46, 0x7c, 0x70, 0xa9, 0x13, 0xff, 0xa2, 0x5c, 0xbb, 0x30, + 0x05, 0x97, 0x0e, 0x65, 0xcb, 0x3f, 0x34, 0x24, 0x85, 0x5d, 0x4b, 0xfa, + 0x10, 0xf7, 0x25, 0x68, 0xcb, 0x5e, 0x91, 0xe3, 0xfc, 0x1d, 0x6d, 0x81, + 0x78, 0x33, 0x1f, 0x8c, +}; +static const struct drbg_kat_pr_false kat1727_t = { + 1, kat1727_entropyin, kat1727_nonce, kat1727_persstr, + kat1727_entropyinreseed, kat1727_addinreseed, kat1727_addin0, + kat1727_addin1, kat1727_retbits +}; +static const struct drbg_kat kat1727 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1727_t +}; + +static const unsigned char kat1728_entropyin[] = { + 0x8a, 0xba, 0xfd, 0xcc, 0xff, 0x47, 0x08, 0x84, 0x5a, 0x5f, 0x0a, 0x21, + 0xd9, 0x9b, 0xd7, 0xc7, 0x4c, 0xff, 0xc9, 0x5a, 0x60, 0xab, 0x9e, 0x8a, +}; +static const unsigned char kat1728_nonce[] = { + 0xa7, 0xd9, 0x8d, 0xa9, 0x54, 0xc3, 0x3f, 0xaf, 0xca, 0x07, 0x01, 0x73, + 0x90, 0x59, 0x1d, 0x53, +}; +static const unsigned char kat1728_persstr[] = { + 0xdc, 0x7a, 0x32, 0x71, 0x1d, 0x69, 0x33, 0xb6, 0xfc, 0x10, 0x18, 0x4a, + 0xe0, 0x80, 0x89, 0xa2, 0xb9, 0x6d, 0x44, 0x48, 0x67, 0x6b, 0xcc, 0xb4, + 0xe8, 0xf0, 0xf6, 0x9a, 0x46, 0x6d, 0x44, 0x49, +}; +static const unsigned char kat1728_entropyinreseed[] = { + 0xc3, 0x8c, 0xe5, 0x72, 0x84, 0x0b, 0x16, 0x38, 0xef, 0xf0, 0xc1, 0x80, + 0x1f, 0x40, 0xbe, 0xa2, 0x4b, 0x71, 0xaf, 0xb1, 0x41, 0xee, 0xeb, 0xa0, +}; +static const unsigned char kat1728_addinreseed[] = { + 0x3c, 0xa0, 0x5c, 0x23, 0xd8, 0x25, 0x91, 0x7e, 0x4a, 0x98, 0xd9, 0xbf, + 0x1b, 0xeb, 0xc7, 0x25, 0xca, 0x04, 0x54, 0xa0, 0x62, 0x8c, 0xba, 0x77, + 0x68, 0x6e, 0xe5, 0x8d, 0x45, 0x6a, 0x5b, 0x39, +}; +static const unsigned char kat1728_addin0[] = { + 0x92, 0x07, 0x10, 0x1a, 0x61, 0x71, 0x0e, 0xdc, 0xc6, 0x02, 0xd4, 0x31, + 0xb4, 0xb9, 0xf1, 0x3a, 0x1b, 0xb0, 0xf4, 0x3a, 0x0d, 0xbe, 0x3e, 0x97, + 0xa4, 0xce, 0xdc, 0x32, 0xcc, 0x17, 0xf4, 0xc6, +}; +static const unsigned char kat1728_addin1[] = { + 0x8d, 0xfe, 0xcd, 0x01, 0xba, 0xe7, 0xc6, 0xf4, 0x71, 0x9b, 0x2f, 0x12, + 0x0b, 0x6b, 0xf1, 0x1b, 0x84, 0x8f, 0xf5, 0x64, 0x8d, 0xf3, 0x03, 0x04, + 0xe3, 0x40, 0xde, 0x90, 0xc3, 0x34, 0x2b, 0xb0, +}; +static const unsigned char kat1728_retbits[] = { + 0x6b, 0x87, 0x6e, 0xb3, 0xd2, 0x91, 0xfb, 0xc4, 0x97, 0x30, 0xb5, 0x51, + 0x5a, 0x32, 0x65, 0x87, 0x29, 0x7e, 0x97, 0x13, 0x60, 0xdb, 0xe2, 0x94, + 0xee, 0xce, 0x35, 0xd0, 0xdc, 0x00, 0x58, 0xc0, 0x69, 0x5f, 0xa0, 0x61, + 0xb2, 0x36, 0x45, 0x79, 0x15, 0xc4, 0x70, 0x12, 0xb7, 0x89, 0xec, 0xdc, + 0xe6, 0xc0, 0x8b, 0x5a, 0x47, 0xa0, 0xe5, 0xd1, 0xd2, 0x3d, 0xb3, 0x07, + 0x3b, 0xf2, 0x92, 0xcc, +}; +static const struct drbg_kat_pr_false kat1728_t = { + 2, kat1728_entropyin, kat1728_nonce, kat1728_persstr, + kat1728_entropyinreseed, kat1728_addinreseed, kat1728_addin0, + kat1728_addin1, kat1728_retbits +}; +static const struct drbg_kat kat1728 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1728_t +}; + +static const unsigned char kat1729_entropyin[] = { + 0x6b, 0xbf, 0xcc, 0x3a, 0xdc, 0xb5, 0x7d, 0x1a, 0x54, 0x2a, 0x24, 0x6f, + 0xac, 0xd8, 0x99, 0x24, 0x41, 0x62, 0xdd, 0x9a, 0xfb, 0xe4, 0xcb, 0xe9, +}; +static const unsigned char kat1729_nonce[] = { + 0x98, 0xf6, 0x06, 0x43, 0xcb, 0x5d, 0xd6, 0x6b, 0x41, 0x5b, 0x42, 0x85, + 0xf6, 0x06, 0x21, 0x2d, +}; +static const unsigned char kat1729_persstr[] = { + 0x38, 0x4b, 0x97, 0x79, 0x3b, 0x9d, 0x51, 0x8d, 0xbf, 0x71, 0x89, 0x0c, + 0xbf, 0x13, 0x83, 0x6e, 0x51, 0xb9, 0xe9, 0xb1, 0xd6, 0xf7, 0x69, 0xca, + 0xc2, 0x0b, 0x71, 0xcf, 0x51, 0xd3, 0x13, 0xfb, +}; +static const unsigned char kat1729_entropyinreseed[] = { + 0x0d, 0x88, 0x40, 0x93, 0xd0, 0x0e, 0x9a, 0x95, 0x1a, 0xd2, 0xdf, 0x66, + 0x80, 0xe3, 0x65, 0xaf, 0x11, 0xd1, 0x4e, 0x70, 0x00, 0xf4, 0x40, 0xaf, +}; +static const unsigned char kat1729_addinreseed[] = { + 0x96, 0x07, 0x06, 0xa7, 0x9f, 0xb0, 0xb2, 0xef, 0x08, 0x37, 0xd1, 0x63, + 0x0f, 0xed, 0x53, 0xaf, 0x50, 0xdf, 0x03, 0x3c, 0xde, 0xff, 0x2d, 0xda, + 0x61, 0xe5, 0xa3, 0xf3, 0x25, 0x2a, 0xef, 0xce, +}; +static const unsigned char kat1729_addin0[] = { + 0xef, 0x74, 0xde, 0x0f, 0x42, 0x10, 0xd1, 0x80, 0xc0, 0x99, 0xfe, 0x5f, + 0xdd, 0x58, 0xc2, 0xcd, 0x6d, 0x8c, 0x79, 0xb3, 0xfe, 0x4a, 0x78, 0x2e, + 0x58, 0x4a, 0xc9, 0x6f, 0x8e, 0x27, 0x43, 0x03, +}; +static const unsigned char kat1729_addin1[] = { + 0x0a, 0xdc, 0x46, 0x26, 0xc9, 0xd6, 0x60, 0x85, 0xe1, 0xcd, 0x4c, 0xc4, + 0xa1, 0x0f, 0x85, 0xd0, 0x4d, 0xea, 0x85, 0x45, 0x39, 0x90, 0x58, 0x51, + 0x2d, 0xa0, 0xa6, 0xac, 0x38, 0x77, 0x37, 0x7f, +}; +static const unsigned char kat1729_retbits[] = { + 0x92, 0x7b, 0x03, 0x19, 0xbd, 0xc7, 0x6e, 0x79, 0x5d, 0x37, 0x84, 0x53, + 0xf2, 0x41, 0x91, 0x6e, 0x25, 0xfb, 0x8a, 0x72, 0x24, 0x94, 0x14, 0x6e, + 0xbd, 0xfe, 0xa9, 0x9a, 0xa4, 0x8a, 0xa6, 0xd8, 0x78, 0xd8, 0xcf, 0xfa, + 0x93, 0x24, 0xa8, 0x98, 0x48, 0x14, 0xdc, 0xda, 0x30, 0xe5, 0xae, 0xd8, + 0xc8, 0x73, 0x99, 0xc9, 0xe5, 0xfd, 0x45, 0x7d, 0x63, 0xc0, 0xd6, 0x1b, + 0x46, 0xa4, 0x6a, 0x7f, +}; +static const struct drbg_kat_pr_false kat1729_t = { + 3, kat1729_entropyin, kat1729_nonce, kat1729_persstr, + kat1729_entropyinreseed, kat1729_addinreseed, kat1729_addin0, + kat1729_addin1, kat1729_retbits +}; +static const struct drbg_kat kat1729 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1729_t +}; + +static const unsigned char kat1730_entropyin[] = { + 0x0c, 0x91, 0x04, 0xc0, 0x8e, 0xba, 0xf5, 0xa4, 0x91, 0xf2, 0xd8, 0x5f, + 0x10, 0xde, 0xd3, 0xe2, 0xfe, 0x76, 0x12, 0xdf, 0xa6, 0xe1, 0xd6, 0xfb, +}; +static const unsigned char kat1730_nonce[] = { + 0x22, 0x67, 0x8d, 0x0e, 0xd3, 0x64, 0x63, 0x56, 0xb5, 0x2f, 0xe3, 0x28, + 0xb2, 0x3f, 0x2e, 0xd1, +}; +static const unsigned char kat1730_persstr[] = { + 0x58, 0xc1, 0xd9, 0xb7, 0x6a, 0x19, 0xd2, 0x17, 0x22, 0x3b, 0x44, 0x31, + 0x94, 0x97, 0xaa, 0x99, 0xe3, 0x90, 0xe3, 0x20, 0xb8, 0xc9, 0x1e, 0x11, + 0x70, 0xeb, 0x8f, 0x8f, 0x48, 0x4a, 0x34, 0xbe, +}; +static const unsigned char kat1730_entropyinreseed[] = { + 0xb1, 0x96, 0x63, 0x2d, 0x9b, 0x65, 0x1c, 0xaa, 0xc5, 0xad, 0xd9, 0x01, + 0xdd, 0xe3, 0xf2, 0x2e, 0xaa, 0xf9, 0xfd, 0xa9, 0x84, 0xed, 0x36, 0x80, +}; +static const unsigned char kat1730_addinreseed[] = { + 0x2b, 0xff, 0xb5, 0x87, 0x6d, 0x20, 0x0a, 0x35, 0x87, 0x2e, 0x30, 0xa9, + 0x97, 0x6e, 0x93, 0x8e, 0x1f, 0x4a, 0xc5, 0x43, 0xfd, 0x2d, 0xac, 0xfe, + 0xe1, 0x61, 0xc0, 0x74, 0x67, 0xc3, 0x45, 0x78, +}; +static const unsigned char kat1730_addin0[] = { + 0xdc, 0x7f, 0xf3, 0xaa, 0x1d, 0xd3, 0xd2, 0xec, 0x77, 0x41, 0xc2, 0xeb, + 0x64, 0x8c, 0xc3, 0x64, 0x39, 0x8a, 0xe0, 0x12, 0xd2, 0xd4, 0x75, 0x8f, + 0x0f, 0x5b, 0x32, 0xa9, 0xb3, 0xb7, 0x3c, 0x4c, +}; +static const unsigned char kat1730_addin1[] = { + 0xf6, 0xc9, 0x37, 0xcd, 0xaa, 0x89, 0x14, 0x62, 0xa5, 0x4d, 0x5c, 0xaa, + 0xa0, 0xc6, 0xbb, 0x20, 0x09, 0xd1, 0x9c, 0x76, 0x92, 0xe2, 0x67, 0xd5, + 0x79, 0x40, 0xd6, 0xf2, 0x88, 0x6f, 0xe6, 0x87, +}; +static const unsigned char kat1730_retbits[] = { + 0x60, 0x82, 0xab, 0x6e, 0x55, 0xf5, 0x37, 0x3b, 0x2d, 0x70, 0xda, 0xfa, + 0x2d, 0xd0, 0xc5, 0x3a, 0xcd, 0x97, 0x9e, 0xb1, 0xb0, 0x9f, 0xf4, 0x2d, + 0x34, 0xe3, 0x64, 0x15, 0x93, 0xc1, 0xfc, 0x66, 0x93, 0x7b, 0x6e, 0xb0, + 0x8a, 0x84, 0x90, 0xb3, 0xea, 0x20, 0x8b, 0xa5, 0xe0, 0xe9, 0x94, 0x79, + 0x2b, 0x1e, 0xe9, 0x99, 0x26, 0x15, 0x9e, 0xb0, 0x80, 0x74, 0x8d, 0xda, + 0x31, 0x4b, 0x48, 0x60, +}; +static const struct drbg_kat_pr_false kat1730_t = { + 4, kat1730_entropyin, kat1730_nonce, kat1730_persstr, + kat1730_entropyinreseed, kat1730_addinreseed, kat1730_addin0, + kat1730_addin1, kat1730_retbits +}; +static const struct drbg_kat kat1730 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1730_t +}; + +static const unsigned char kat1731_entropyin[] = { + 0x02, 0xff, 0xe9, 0xc1, 0x62, 0x87, 0x73, 0x94, 0x89, 0xbb, 0xc5, 0xb1, + 0x62, 0x0f, 0x74, 0x9a, 0xd5, 0x4b, 0x2c, 0x4c, 0x8a, 0x08, 0x11, 0x22, +}; +static const unsigned char kat1731_nonce[] = { + 0x56, 0x00, 0xaf, 0x36, 0x95, 0xa9, 0xac, 0x46, 0x72, 0xe3, 0xb2, 0xa5, + 0x2a, 0xe0, 0xb1, 0x9f, +}; +static const unsigned char kat1731_persstr[] = { + 0xc7, 0xc9, 0xf9, 0xcc, 0x55, 0xa1, 0xf8, 0x2a, 0x61, 0x22, 0xa5, 0x36, + 0x54, 0x09, 0x5a, 0x38, 0xbc, 0xc1, 0xce, 0xb7, 0xf2, 0xa9, 0x7c, 0x52, + 0xa7, 0xe7, 0xf4, 0x6c, 0xd0, 0xd0, 0x74, 0xca, +}; +static const unsigned char kat1731_entropyinreseed[] = { + 0x2d, 0x6e, 0x4b, 0x10, 0x74, 0x29, 0xbf, 0x28, 0xcb, 0xd9, 0xef, 0xd6, + 0x2c, 0x91, 0x85, 0x75, 0x65, 0xc9, 0x9f, 0x70, 0xcb, 0xd1, 0x2f, 0x00, +}; +static const unsigned char kat1731_addinreseed[] = { + 0xb6, 0x74, 0x7c, 0x8a, 0x93, 0x92, 0xc6, 0xe5, 0x20, 0x9c, 0x0d, 0x4c, + 0xa3, 0x88, 0xa4, 0x49, 0xe7, 0x27, 0xb1, 0xfe, 0xba, 0x24, 0xa2, 0x74, + 0xc7, 0x9a, 0x20, 0xb0, 0x7c, 0x59, 0x89, 0x45, +}; +static const unsigned char kat1731_addin0[] = { + 0x1c, 0x4f, 0xc5, 0x5f, 0x2b, 0x56, 0x4c, 0xff, 0xba, 0x27, 0xfc, 0x54, + 0x28, 0x12, 0xe2, 0x46, 0xef, 0xf4, 0xd6, 0xbc, 0x65, 0xea, 0xf8, 0x97, + 0x3c, 0xb0, 0x3c, 0x3c, 0x9f, 0xde, 0x39, 0x59, +}; +static const unsigned char kat1731_addin1[] = { + 0xa8, 0x14, 0xa5, 0x1a, 0xd2, 0x6e, 0xd3, 0x40, 0x0e, 0x62, 0xa3, 0x42, + 0x7d, 0x1b, 0x88, 0x1c, 0x7b, 0x3d, 0x3e, 0x46, 0xdf, 0xd8, 0x6e, 0x54, + 0xb4, 0x14, 0x01, 0xc7, 0xe2, 0x8b, 0xa2, 0xb7, +}; +static const unsigned char kat1731_retbits[] = { + 0x1b, 0x72, 0x73, 0x45, 0xc0, 0x92, 0x7c, 0x80, 0x50, 0x04, 0x41, 0x98, + 0x55, 0xfc, 0x69, 0x8d, 0xa8, 0x77, 0x50, 0xe4, 0x48, 0x85, 0x9d, 0x75, + 0x33, 0xec, 0xe8, 0x7b, 0xc5, 0xac, 0xb2, 0xef, 0xe6, 0x97, 0xd6, 0xf5, + 0xa5, 0x6b, 0xf2, 0xb5, 0x74, 0x7b, 0x0b, 0xd4, 0xbd, 0x21, 0x27, 0x30, + 0x62, 0x99, 0x4e, 0x89, 0xd3, 0x02, 0x8d, 0xb6, 0x3e, 0x5b, 0x0f, 0x8c, + 0xfd, 0xe0, 0x2b, 0x3e, +}; +static const struct drbg_kat_pr_false kat1731_t = { + 5, kat1731_entropyin, kat1731_nonce, kat1731_persstr, + kat1731_entropyinreseed, kat1731_addinreseed, kat1731_addin0, + kat1731_addin1, kat1731_retbits +}; +static const struct drbg_kat kat1731 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1731_t +}; + +static const unsigned char kat1732_entropyin[] = { + 0xff, 0xa1, 0x6b, 0x18, 0x7b, 0x4e, 0x0f, 0x40, 0xd7, 0x3d, 0x41, 0x03, + 0xa8, 0x02, 0x19, 0xe5, 0xd7, 0x96, 0x10, 0x64, 0xfa, 0x6f, 0x40, 0x6c, +}; +static const unsigned char kat1732_nonce[] = { + 0x81, 0x22, 0xf3, 0xb2, 0xcd, 0x57, 0x5f, 0xbc, 0xbd, 0x3e, 0x74, 0x0b, + 0xe1, 0xaf, 0x44, 0x11, +}; +static const unsigned char kat1732_persstr[] = { + 0x0f, 0x23, 0xa0, 0x8a, 0xd7, 0xab, 0x7d, 0x0e, 0xc9, 0xdf, 0x99, 0x39, + 0xe0, 0x85, 0xd0, 0xbf, 0x49, 0xf3, 0xef, 0xf9, 0x26, 0x3f, 0x4d, 0x0e, + 0xf9, 0xf8, 0x8b, 0x54, 0x72, 0x3b, 0x5c, 0x66, +}; +static const unsigned char kat1732_entropyinreseed[] = { + 0x72, 0x79, 0x2b, 0x72, 0xe8, 0x36, 0x37, 0x96, 0xc4, 0x64, 0xda, 0x3b, + 0x54, 0x28, 0xfe, 0x40, 0x25, 0x49, 0x11, 0x21, 0x0e, 0x32, 0x82, 0x22, +}; +static const unsigned char kat1732_addinreseed[] = { + 0x1a, 0x3b, 0x6d, 0x86, 0x06, 0x51, 0x0b, 0x13, 0x28, 0x7d, 0xae, 0x18, + 0x39, 0xc9, 0x3c, 0x9f, 0x53, 0x6e, 0xdb, 0x5c, 0xf5, 0xcc, 0x52, 0xf4, + 0x43, 0x1a, 0xd7, 0xf2, 0xed, 0x53, 0xdf, 0x7f, +}; +static const unsigned char kat1732_addin0[] = { + 0x9e, 0xef, 0x33, 0x78, 0x5e, 0x86, 0x2a, 0x99, 0x07, 0x5e, 0x19, 0xfe, + 0xc4, 0x20, 0x7c, 0x2e, 0xef, 0x9c, 0x6e, 0x39, 0x65, 0xb3, 0xf2, 0x2c, + 0x53, 0xcc, 0xfd, 0x65, 0x5b, 0x84, 0x80, 0x62, +}; +static const unsigned char kat1732_addin1[] = { + 0x88, 0x1e, 0x83, 0xd1, 0x75, 0xfa, 0xd0, 0x4c, 0x5a, 0xc5, 0x48, 0xaa, + 0x54, 0x43, 0xb9, 0x30, 0xb5, 0xdc, 0xc0, 0x4b, 0x9d, 0x0a, 0xfe, 0xb5, + 0xe7, 0xd0, 0x57, 0xf0, 0xc7, 0x75, 0x7e, 0xea, +}; +static const unsigned char kat1732_retbits[] = { + 0x87, 0xb2, 0x76, 0x39, 0xb2, 0x9e, 0x73, 0x06, 0xd3, 0x03, 0xe6, 0x7e, + 0x88, 0x59, 0x8f, 0xfb, 0xef, 0xf2, 0x30, 0xe0, 0xac, 0x23, 0x1e, 0x97, + 0x72, 0xbe, 0x25, 0x7e, 0x6c, 0xaa, 0x96, 0xac, 0x35, 0x01, 0x8a, 0x45, + 0xf8, 0x3e, 0xcb, 0x72, 0xdc, 0x7b, 0x9e, 0xa8, 0xc0, 0x06, 0xb2, 0xae, + 0x36, 0x62, 0x7b, 0x18, 0x1a, 0xdf, 0x30, 0xf5, 0x65, 0x92, 0x18, 0x41, + 0xc8, 0x78, 0x21, 0xb1, +}; +static const struct drbg_kat_pr_false kat1732_t = { + 6, kat1732_entropyin, kat1732_nonce, kat1732_persstr, + kat1732_entropyinreseed, kat1732_addinreseed, kat1732_addin0, + kat1732_addin1, kat1732_retbits +}; +static const struct drbg_kat kat1732 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1732_t +}; + +static const unsigned char kat1733_entropyin[] = { + 0xbd, 0x04, 0xd9, 0x1c, 0x3e, 0x30, 0x10, 0x93, 0x89, 0x17, 0x08, 0x10, + 0x69, 0xd0, 0xad, 0x91, 0x11, 0x88, 0x5d, 0xef, 0xf8, 0x98, 0x82, 0xed, +}; +static const unsigned char kat1733_nonce[] = { + 0x3a, 0x78, 0x16, 0x88, 0x88, 0x74, 0x9e, 0x95, 0xe4, 0x4b, 0x17, 0x18, + 0x8e, 0x6c, 0xb3, 0xc5, +}; +static const unsigned char kat1733_persstr[] = { + 0x31, 0x2a, 0xd6, 0x94, 0x36, 0x01, 0x47, 0x0d, 0x60, 0x18, 0x40, 0xdf, + 0x6d, 0x9d, 0x3f, 0x92, 0x04, 0x85, 0xe4, 0xbb, 0xfb, 0x0b, 0x1c, 0x68, + 0x83, 0xbb, 0x18, 0x68, 0x82, 0xf3, 0x05, 0x7b, +}; +static const unsigned char kat1733_entropyinreseed[] = { + 0xd0, 0x63, 0xdb, 0xdd, 0xca, 0x1b, 0xfb, 0x0b, 0x5a, 0xa1, 0x9a, 0x9d, + 0x88, 0xf5, 0x8c, 0xb9, 0x00, 0x7f, 0x98, 0xf0, 0x98, 0xc8, 0xb8, 0x01, +}; +static const unsigned char kat1733_addinreseed[] = { + 0x17, 0x00, 0x59, 0xa3, 0x31, 0x3c, 0x13, 0xae, 0xb4, 0x6f, 0x61, 0xe2, + 0x7f, 0x6b, 0x48, 0xf8, 0xaa, 0xe9, 0x4f, 0x10, 0x04, 0x08, 0x3e, 0xc2, + 0x7c, 0xb7, 0x1a, 0xdf, 0xe1, 0xd3, 0x6f, 0x35, +}; +static const unsigned char kat1733_addin0[] = { + 0xa1, 0xe3, 0xe4, 0x57, 0x15, 0xc6, 0x8d, 0x57, 0x11, 0xd5, 0x76, 0xf4, + 0x50, 0x65, 0xb7, 0x62, 0x9a, 0xd2, 0x9c, 0x6f, 0x42, 0x55, 0x42, 0xe1, + 0x20, 0x4d, 0x57, 0x87, 0x22, 0x94, 0x51, 0xff, +}; +static const unsigned char kat1733_addin1[] = { + 0x8c, 0xce, 0x6a, 0x52, 0xbf, 0xa2, 0xb0, 0x2e, 0x56, 0x6e, 0x86, 0x00, + 0x23, 0x1b, 0x0f, 0x5e, 0xc8, 0xff, 0xfe, 0xcd, 0x13, 0x33, 0x87, 0x22, + 0xfd, 0x47, 0x6b, 0xe4, 0x97, 0x43, 0x50, 0xd8, +}; +static const unsigned char kat1733_retbits[] = { + 0x86, 0xc2, 0xcb, 0x9d, 0x00, 0xaa, 0xc2, 0x55, 0x56, 0xe8, 0x37, 0xd8, + 0x28, 0xae, 0xee, 0x34, 0x93, 0x10, 0xf8, 0x59, 0x54, 0x7b, 0xd5, 0x10, + 0x96, 0x28, 0x3a, 0x3d, 0x22, 0x12, 0xdf, 0x63, 0x67, 0x1a, 0x07, 0x05, + 0x0e, 0x1d, 0x64, 0x1a, 0x39, 0xf8, 0x8f, 0xa9, 0xff, 0x13, 0x11, 0x75, + 0x48, 0xe1, 0x58, 0xe1, 0x74, 0x5e, 0x85, 0x94, 0x47, 0x16, 0x7c, 0x80, + 0xae, 0x98, 0xe7, 0x1a, +}; +static const struct drbg_kat_pr_false kat1733_t = { + 7, kat1733_entropyin, kat1733_nonce, kat1733_persstr, + kat1733_entropyinreseed, kat1733_addinreseed, kat1733_addin0, + kat1733_addin1, kat1733_retbits +}; +static const struct drbg_kat kat1733 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1733_t +}; + +static const unsigned char kat1734_entropyin[] = { + 0x43, 0x88, 0xfe, 0xb0, 0xaf, 0x37, 0x1c, 0x51, 0x7f, 0xf3, 0x26, 0x78, + 0xab, 0x06, 0xee, 0x5b, 0xb0, 0x8d, 0x3e, 0xe2, 0xe9, 0x6b, 0xc9, 0xeb, +}; +static const unsigned char kat1734_nonce[] = { + 0x30, 0xf6, 0xd8, 0x6d, 0x5d, 0x70, 0xe8, 0xb0, 0xcd, 0x8e, 0xa2, 0x9f, + 0x05, 0xb9, 0xb9, 0x6f, +}; +static const unsigned char kat1734_persstr[] = { + 0x81, 0xe8, 0x2b, 0x9d, 0x1a, 0x08, 0x7c, 0x0b, 0x51, 0x57, 0xa0, 0xd3, + 0x1c, 0x60, 0x73, 0x6b, 0x19, 0xb2, 0x2f, 0x6a, 0xc2, 0xc0, 0xd6, 0x4e, + 0x49, 0xe6, 0x47, 0xe5, 0xcc, 0xaa, 0x5b, 0x98, +}; +static const unsigned char kat1734_entropyinreseed[] = { + 0x75, 0x07, 0x42, 0x3c, 0x12, 0xe4, 0xa9, 0x1c, 0x29, 0x1c, 0x3b, 0x7b, + 0x3c, 0x12, 0x8d, 0xef, 0xa4, 0xa3, 0x43, 0x21, 0x5c, 0xb8, 0x86, 0x32, +}; +static const unsigned char kat1734_addinreseed[] = { + 0xb9, 0xc4, 0x90, 0xc7, 0x02, 0x83, 0xf9, 0x5e, 0xa2, 0xa5, 0x55, 0xe5, + 0xc7, 0xc1, 0x1f, 0x25, 0x46, 0x1d, 0x60, 0x75, 0x12, 0xc8, 0x3f, 0xbd, + 0x86, 0x7f, 0x03, 0x25, 0x41, 0x94, 0xd3, 0x0a, +}; +static const unsigned char kat1734_addin0[] = { + 0x1d, 0x54, 0xaa, 0x2a, 0x4a, 0x2e, 0xf1, 0x75, 0x37, 0x68, 0x82, 0xd4, + 0x0f, 0x1b, 0x92, 0x97, 0xf7, 0xd0, 0x5e, 0xf2, 0x1d, 0x5a, 0x6d, 0x95, + 0xfc, 0x84, 0xd5, 0x89, 0xd1, 0xb0, 0x30, 0xf5, +}; +static const unsigned char kat1734_addin1[] = { + 0x2b, 0x03, 0x1f, 0x9b, 0x0b, 0xca, 0x10, 0xcb, 0xd1, 0xc4, 0x79, 0x9d, + 0xe3, 0x90, 0x0d, 0xf2, 0x81, 0x5a, 0x5f, 0xf8, 0x8a, 0x66, 0xf9, 0xfd, + 0xf1, 0x63, 0xe8, 0x95, 0x32, 0xdd, 0x1c, 0x91, +}; +static const unsigned char kat1734_retbits[] = { + 0xd3, 0xc6, 0x4c, 0x70, 0xd8, 0x48, 0x9f, 0xec, 0x82, 0x15, 0x0b, 0xd8, + 0x8b, 0x1c, 0x7e, 0x5f, 0xee, 0xe7, 0x10, 0x04, 0xbb, 0x6d, 0xaa, 0x37, + 0x5e, 0x40, 0x42, 0x09, 0x2f, 0x5a, 0x9d, 0x62, 0xa6, 0xc0, 0x7a, 0x4c, + 0xd1, 0xcc, 0x05, 0x9e, 0x32, 0x95, 0x87, 0xc5, 0xb6, 0xe1, 0xf2, 0x5d, + 0x4d, 0xd2, 0xec, 0x89, 0xe6, 0x9c, 0x73, 0xdd, 0x10, 0xf4, 0xa6, 0x19, + 0x66, 0x96, 0x5d, 0xe2, +}; +static const struct drbg_kat_pr_false kat1734_t = { + 8, kat1734_entropyin, kat1734_nonce, kat1734_persstr, + kat1734_entropyinreseed, kat1734_addinreseed, kat1734_addin0, + kat1734_addin1, kat1734_retbits +}; +static const struct drbg_kat kat1734 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1734_t +}; + +static const unsigned char kat1735_entropyin[] = { + 0xb3, 0x44, 0x24, 0x39, 0x39, 0x3a, 0xa5, 0xb9, 0xfb, 0xc4, 0x77, 0xd3, + 0x8f, 0xfc, 0xf9, 0x14, 0xef, 0xda, 0x00, 0x9b, 0x4b, 0x54, 0x65, 0x04, +}; +static const unsigned char kat1735_nonce[] = { + 0x9e, 0x46, 0x14, 0xc2, 0x37, 0xfe, 0xa7, 0xc1, 0xb5, 0x0b, 0x1d, 0x09, + 0x24, 0x7b, 0x32, 0xb9, +}; +static const unsigned char kat1735_persstr[] = { + 0x73, 0x64, 0x4e, 0x9c, 0x09, 0x20, 0x03, 0xdf, 0x11, 0x95, 0x16, 0xd1, + 0x86, 0x4d, 0xbd, 0x7f, 0x8d, 0x30, 0xce, 0xc0, 0xf7, 0x01, 0x18, 0x82, + 0xf4, 0xf7, 0xe8, 0x35, 0xea, 0x7d, 0x0a, 0xe1, +}; +static const unsigned char kat1735_entropyinreseed[] = { + 0xa1, 0x0b, 0x44, 0x60, 0x7d, 0x8f, 0x46, 0x90, 0xa8, 0x96, 0x51, 0x86, + 0xa4, 0x4f, 0x54, 0x42, 0x5a, 0x14, 0x28, 0xc7, 0xa3, 0x6f, 0xa5, 0xb7, +}; +static const unsigned char kat1735_addinreseed[] = { + 0xda, 0xb6, 0x21, 0xcc, 0xbd, 0x15, 0xf1, 0x2e, 0x3a, 0x7a, 0x6e, 0xa0, + 0xc4, 0x1d, 0x54, 0x82, 0x01, 0x89, 0xeb, 0xf9, 0x55, 0xbe, 0x61, 0x25, + 0xd7, 0x32, 0x16, 0x5d, 0x1d, 0xda, 0x19, 0x8a, +}; +static const unsigned char kat1735_addin0[] = { + 0x3c, 0xbb, 0x61, 0x5f, 0xc6, 0xbb, 0x70, 0x33, 0x90, 0x65, 0xce, 0xdf, + 0x41, 0xae, 0xcb, 0xce, 0xbe, 0x82, 0xf3, 0x2d, 0xc9, 0x47, 0xa7, 0x98, + 0x56, 0x26, 0xe1, 0xf4, 0x2d, 0xd3, 0xea, 0x80, +}; +static const unsigned char kat1735_addin1[] = { + 0x19, 0x42, 0x0e, 0x42, 0xcc, 0x21, 0x35, 0xe4, 0xd7, 0x0d, 0xcd, 0x3c, + 0xf3, 0xac, 0x8b, 0xa6, 0x30, 0xe4, 0x2e, 0xb1, 0xac, 0x71, 0x12, 0x90, + 0x65, 0x78, 0xa1, 0xe3, 0x16, 0xed, 0xd0, 0xbd, +}; +static const unsigned char kat1735_retbits[] = { + 0x7c, 0xc3, 0x2d, 0x5f, 0x08, 0x15, 0x95, 0x24, 0x5c, 0x16, 0x70, 0xd4, + 0x98, 0x9a, 0xb7, 0xbf, 0xfe, 0x05, 0x3c, 0x03, 0xb0, 0xf2, 0xd6, 0x36, + 0x88, 0x6b, 0xaa, 0x93, 0xe1, 0x23, 0xc1, 0x0c, 0x1b, 0x49, 0x52, 0x35, + 0xc9, 0xa7, 0xcb, 0xb6, 0xbc, 0x08, 0xbc, 0x06, 0x71, 0x9b, 0x6d, 0x4b, + 0x7c, 0x65, 0xf0, 0xdd, 0xc5, 0x4d, 0x2b, 0xa9, 0x7f, 0x73, 0x26, 0xcd, + 0xa5, 0x44, 0xdf, 0x65, +}; +static const struct drbg_kat_pr_false kat1735_t = { + 9, kat1735_entropyin, kat1735_nonce, kat1735_persstr, + kat1735_entropyinreseed, kat1735_addinreseed, kat1735_addin0, + kat1735_addin1, kat1735_retbits +}; +static const struct drbg_kat kat1735 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1735_t +}; + +static const unsigned char kat1736_entropyin[] = { + 0x3e, 0x5a, 0x64, 0xdc, 0x44, 0x1c, 0x56, 0x99, 0xd2, 0x24, 0xdb, 0xf4, + 0x9d, 0x71, 0xd3, 0x2a, 0x43, 0x65, 0xd7, 0xe1, 0xd3, 0xe4, 0x75, 0x71, +}; +static const unsigned char kat1736_nonce[] = { + 0xa2, 0x19, 0x51, 0x91, 0x7c, 0x69, 0xcf, 0x41, 0x88, 0x5a, 0x93, 0x98, + 0x86, 0x61, 0xa3, 0x6d, +}; +static const unsigned char kat1736_persstr[] = { + 0x9d, 0x75, 0x9f, 0xa8, 0x73, 0xe3, 0x75, 0x35, 0xcd, 0x39, 0xcc, 0xe9, + 0xdd, 0x09, 0x24, 0x14, 0xb8, 0x38, 0x72, 0x56, 0xc6, 0x38, 0x0a, 0xb2, + 0xdf, 0x96, 0xfe, 0xd0, 0x14, 0xaf, 0x41, 0x71, +}; +static const unsigned char kat1736_entropyinreseed[] = { + 0x96, 0xa1, 0x28, 0x7a, 0x1b, 0x36, 0xf5, 0xf1, 0x4c, 0xe8, 0xab, 0xed, + 0xae, 0x64, 0xb7, 0x91, 0xaf, 0xfc, 0x5a, 0x5c, 0xdb, 0x50, 0x53, 0x75, +}; +static const unsigned char kat1736_addinreseed[] = { + 0x76, 0xa1, 0x25, 0xcd, 0xae, 0xa2, 0x71, 0x22, 0xe4, 0xf8, 0xf7, 0x4c, + 0xc9, 0x28, 0x4a, 0xf2, 0x61, 0xc7, 0xe3, 0x6f, 0x2b, 0x72, 0xb6, 0x13, + 0x7f, 0x6e, 0xe5, 0x38, 0xfc, 0x1a, 0x84, 0x20, +}; +static const unsigned char kat1736_addin0[] = { + 0xeb, 0x46, 0x41, 0x28, 0x83, 0x69, 0x49, 0x58, 0x66, 0xdc, 0x9c, 0x2e, + 0x72, 0x42, 0xdb, 0x84, 0xc3, 0x74, 0xb7, 0x99, 0xd3, 0xfe, 0x0f, 0xd9, + 0x1e, 0x82, 0x01, 0x62, 0x9b, 0xa1, 0xdb, 0xd8, +}; +static const unsigned char kat1736_addin1[] = { + 0xe4, 0x57, 0xac, 0xf8, 0xc5, 0x17, 0xfc, 0xb8, 0x38, 0x86, 0x5f, 0x58, + 0x79, 0xe2, 0xde, 0xa3, 0x1b, 0x6f, 0xa5, 0x06, 0xa6, 0xd4, 0xf4, 0x1e, + 0x3d, 0x05, 0xab, 0xb9, 0x3d, 0x94, 0x93, 0xf4, +}; +static const unsigned char kat1736_retbits[] = { + 0xe3, 0x21, 0xe4, 0x34, 0x9b, 0xdc, 0xb1, 0xf3, 0x40, 0x20, 0xb2, 0x31, + 0x11, 0xd8, 0x8b, 0x55, 0x86, 0x95, 0xc7, 0x0c, 0x14, 0x73, 0x85, 0x2f, + 0x46, 0x03, 0x9a, 0x1a, 0xfe, 0x26, 0x76, 0xca, 0x91, 0xc9, 0xb4, 0x90, + 0x65, 0xaf, 0x4b, 0x81, 0xfe, 0xfd, 0x6b, 0x3e, 0x0d, 0xc3, 0xea, 0x88, + 0xfe, 0x69, 0xac, 0xa1, 0xf2, 0x1a, 0x3e, 0x09, 0x14, 0x5b, 0xab, 0xa0, + 0x26, 0x1e, 0xfb, 0x54, +}; +static const struct drbg_kat_pr_false kat1736_t = { + 10, kat1736_entropyin, kat1736_nonce, kat1736_persstr, + kat1736_entropyinreseed, kat1736_addinreseed, kat1736_addin0, + kat1736_addin1, kat1736_retbits +}; +static const struct drbg_kat kat1736 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1736_t +}; + +static const unsigned char kat1737_entropyin[] = { + 0x54, 0x53, 0x3d, 0x5c, 0x00, 0x27, 0x37, 0x17, 0x80, 0x22, 0x41, 0x84, + 0xbf, 0x72, 0x72, 0x05, 0xdd, 0x72, 0xb4, 0x0f, 0xb0, 0x9f, 0x49, 0x37, +}; +static const unsigned char kat1737_nonce[] = { + 0x73, 0xe3, 0xf2, 0xaf, 0xe2, 0xc6, 0xf2, 0x11, 0x2a, 0xb9, 0x36, 0xf1, + 0x21, 0xff, 0x25, 0xbb, +}; +static const unsigned char kat1737_persstr[] = { + 0xf4, 0x58, 0xa9, 0x55, 0x41, 0x4a, 0xd4, 0x7c, 0xb2, 0xf4, 0x3d, 0xd8, + 0xea, 0x2f, 0x4b, 0x1b, 0xcd, 0xf0, 0x9d, 0xa5, 0x3d, 0x07, 0x5e, 0x2b, + 0x47, 0xd4, 0xb9, 0xad, 0x93, 0xcd, 0x4e, 0x04, +}; +static const unsigned char kat1737_entropyinreseed[] = { + 0x67, 0xd5, 0xa0, 0x79, 0xc4, 0xe6, 0x8a, 0xd4, 0xc9, 0x57, 0xdd, 0xd4, + 0x85, 0xee, 0x58, 0x71, 0x04, 0xc9, 0x24, 0xb1, 0x71, 0x92, 0x4d, 0x44, +}; +static const unsigned char kat1737_addinreseed[] = { + 0x1a, 0xcc, 0x20, 0xb2, 0xeb, 0xeb, 0x2d, 0xcb, 0xdf, 0x6d, 0x3a, 0x0a, + 0x32, 0x70, 0x8f, 0x59, 0xe4, 0x3f, 0x66, 0x02, 0x7b, 0x52, 0x5d, 0xa6, + 0x10, 0xa3, 0xdd, 0xed, 0x85, 0x52, 0x44, 0x75, +}; +static const unsigned char kat1737_addin0[] = { + 0x88, 0x66, 0x7f, 0x25, 0xd1, 0x9e, 0x4c, 0x99, 0x45, 0x87, 0xc1, 0x92, + 0x4e, 0xc6, 0xac, 0x51, 0x97, 0x3b, 0x5a, 0x43, 0x4e, 0x62, 0x36, 0xc8, + 0x95, 0xe3, 0xd1, 0xd2, 0x00, 0x52, 0x0a, 0x44, +}; +static const unsigned char kat1737_addin1[] = { + 0x91, 0x52, 0x08, 0x19, 0xc6, 0x44, 0x0b, 0xa4, 0x1e, 0x25, 0xa3, 0x27, + 0xce, 0x16, 0x8d, 0xf9, 0xa9, 0x89, 0xc9, 0xfd, 0xc9, 0x5c, 0x3d, 0xb9, + 0xa0, 0xf4, 0x96, 0xd6, 0xf4, 0xf3, 0x74, 0xb0, +}; +static const unsigned char kat1737_retbits[] = { + 0x1b, 0x10, 0xc9, 0x51, 0x7b, 0x63, 0x71, 0x0e, 0x0e, 0x48, 0xda, 0xb3, + 0x14, 0x6f, 0xed, 0xfe, 0xcb, 0x95, 0xc4, 0xb5, 0xe5, 0xcd, 0x39, 0x37, + 0x9a, 0xab, 0x9b, 0x36, 0x02, 0xd8, 0x15, 0x6a, 0x5d, 0xdc, 0xfa, 0xaa, + 0xbf, 0x6c, 0xcb, 0xff, 0x1d, 0xd5, 0x91, 0x1e, 0xc8, 0xed, 0x11, 0x3e, + 0xc9, 0x34, 0xcf, 0x34, 0x92, 0x1d, 0x5f, 0x6b, 0x73, 0x38, 0x71, 0x27, + 0x55, 0x4d, 0x29, 0x88, +}; +static const struct drbg_kat_pr_false kat1737_t = { + 11, kat1737_entropyin, kat1737_nonce, kat1737_persstr, + kat1737_entropyinreseed, kat1737_addinreseed, kat1737_addin0, + kat1737_addin1, kat1737_retbits +}; +static const struct drbg_kat kat1737 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1737_t +}; + +static const unsigned char kat1738_entropyin[] = { + 0xaf, 0x26, 0x03, 0x6d, 0x72, 0xb9, 0xad, 0x05, 0x84, 0xe7, 0x9b, 0x51, + 0xdb, 0xab, 0xe2, 0x5e, 0x60, 0x91, 0x4f, 0x3f, 0x48, 0xd9, 0x78, 0xe4, +}; +static const unsigned char kat1738_nonce[] = { + 0x39, 0xeb, 0x3c, 0x0f, 0xd2, 0x0a, 0x00, 0xb7, 0x7e, 0xbd, 0xb0, 0x03, + 0x01, 0x80, 0x20, 0xc1, +}; +static const unsigned char kat1738_persstr[] = { + 0x08, 0x1f, 0x45, 0xa7, 0xab, 0x84, 0x51, 0x05, 0x77, 0xaa, 0x11, 0x3d, + 0xd7, 0x11, 0xc0, 0xc2, 0x89, 0xc4, 0xfe, 0x4e, 0x66, 0x2b, 0x74, 0x6e, + 0xea, 0xbe, 0xd2, 0x68, 0x0a, 0x67, 0x0b, 0x25, +}; +static const unsigned char kat1738_entropyinreseed[] = { + 0xaf, 0x8e, 0x68, 0x99, 0xdd, 0x09, 0x7a, 0x54, 0x9b, 0x56, 0xb9, 0xd2, + 0x49, 0xdf, 0xef, 0x8c, 0xdd, 0x39, 0x6e, 0xa6, 0x70, 0xdf, 0x8c, 0x38, +}; +static const unsigned char kat1738_addinreseed[] = { + 0x88, 0xbf, 0x96, 0x9c, 0x1a, 0xe4, 0xba, 0xaa, 0x60, 0xb7, 0x4c, 0xbd, + 0x80, 0x4b, 0x79, 0x8b, 0x95, 0x80, 0xd4, 0x5c, 0x10, 0x00, 0x85, 0x10, + 0x86, 0x30, 0x1d, 0x41, 0xb6, 0xa9, 0x83, 0x95, +}; +static const unsigned char kat1738_addin0[] = { + 0xdb, 0xf4, 0xcf, 0xae, 0x03, 0x84, 0xda, 0xe7, 0x1a, 0xe5, 0xfb, 0x2b, + 0xaa, 0x27, 0xb8, 0x6c, 0x05, 0x29, 0x16, 0xc9, 0x2a, 0x66, 0x2c, 0x32, + 0x83, 0x9e, 0x67, 0xb9, 0xfb, 0x13, 0xb2, 0x26, +}; +static const unsigned char kat1738_addin1[] = { + 0x30, 0xb3, 0xf0, 0x73, 0xc9, 0x79, 0x98, 0x2e, 0xc1, 0x9a, 0xba, 0x53, + 0x73, 0x19, 0xc3, 0xb7, 0xb8, 0xd8, 0xd6, 0x84, 0xd9, 0x93, 0xa5, 0xc3, + 0x8e, 0x72, 0x18, 0xa1, 0x36, 0x92, 0x27, 0x1c, +}; +static const unsigned char kat1738_retbits[] = { + 0xf0, 0x09, 0xbc, 0xb2, 0xb5, 0x2e, 0x30, 0x8b, 0x76, 0x9d, 0xa0, 0x6c, + 0x02, 0xaa, 0xb3, 0xf4, 0xf6, 0xe7, 0x76, 0x04, 0xe4, 0xec, 0xfc, 0x9b, + 0x50, 0xcd, 0x02, 0xd5, 0xc1, 0xfc, 0x4b, 0x71, 0xd1, 0xfa, 0x5a, 0xa9, + 0x52, 0x02, 0x7a, 0x85, 0x6a, 0xf6, 0x14, 0x95, 0x78, 0xf1, 0xd9, 0x09, + 0xe3, 0xbc, 0xce, 0xb8, 0xe6, 0xed, 0xcf, 0xfb, 0x61, 0x40, 0xfc, 0x67, + 0x8e, 0xd5, 0x45, 0x59, +}; +static const struct drbg_kat_pr_false kat1738_t = { + 12, kat1738_entropyin, kat1738_nonce, kat1738_persstr, + kat1738_entropyinreseed, kat1738_addinreseed, kat1738_addin0, + kat1738_addin1, kat1738_retbits +}; +static const struct drbg_kat kat1738 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1738_t +}; + +static const unsigned char kat1739_entropyin[] = { + 0x8d, 0x92, 0xdd, 0xad, 0xac, 0x44, 0x61, 0xb0, 0xa4, 0x0d, 0xec, 0x1b, + 0xea, 0x91, 0xfb, 0x3f, 0x9a, 0x8a, 0x76, 0xec, 0x77, 0x57, 0xb2, 0x72, +}; +static const unsigned char kat1739_nonce[] = { + 0x14, 0x08, 0xc1, 0xe6, 0xba, 0xfc, 0xd0, 0x97, 0x2f, 0x1f, 0x38, 0x1b, + 0xa3, 0x1e, 0x15, 0x7d, +}; +static const unsigned char kat1739_persstr[] = { + 0x69, 0xde, 0x45, 0xdc, 0x21, 0xe7, 0x84, 0x9e, 0x37, 0xde, 0xd8, 0x76, + 0xbf, 0x5d, 0x89, 0x2d, 0x0f, 0xf5, 0x67, 0x63, 0x8d, 0xca, 0x8f, 0x48, + 0x0b, 0x04, 0x95, 0x73, 0xdf, 0xc0, 0x73, 0x4d, +}; +static const unsigned char kat1739_entropyinreseed[] = { + 0x2a, 0xdf, 0x51, 0x61, 0x11, 0xeb, 0x9b, 0xd1, 0x84, 0x48, 0x28, 0x40, + 0x70, 0xf2, 0x79, 0x95, 0x68, 0x06, 0xf4, 0xd2, 0xd2, 0xeb, 0xbd, 0xcf, +}; +static const unsigned char kat1739_addinreseed[] = { + 0xcf, 0x77, 0x4b, 0x40, 0x5f, 0x45, 0x02, 0xef, 0x20, 0x74, 0xdb, 0xe5, + 0xbc, 0xf8, 0x68, 0x15, 0x28, 0xfe, 0x01, 0x1f, 0x71, 0xb1, 0xcd, 0x41, + 0x8a, 0x01, 0xfc, 0xab, 0xd1, 0xc2, 0x7c, 0x04, +}; +static const unsigned char kat1739_addin0[] = { + 0xae, 0xc5, 0x9e, 0xa5, 0x33, 0x96, 0x96, 0xe8, 0xa4, 0x17, 0x3a, 0xa2, + 0x39, 0xac, 0xfa, 0xaf, 0x17, 0x42, 0x6a, 0xd1, 0xd8, 0x34, 0x46, 0x0f, + 0x84, 0x83, 0xc3, 0x6e, 0x47, 0x76, 0xd6, 0xa6, +}; +static const unsigned char kat1739_addin1[] = { + 0x33, 0x2b, 0x67, 0x83, 0x57, 0xf6, 0xb2, 0x47, 0xac, 0xc1, 0xe3, 0x44, + 0x67, 0xec, 0x4d, 0xf7, 0x44, 0xbb, 0xa4, 0x2b, 0x1e, 0x1c, 0xd0, 0x5a, + 0x35, 0xd3, 0xac, 0xcd, 0x0e, 0xcc, 0xe9, 0x1f, +}; +static const unsigned char kat1739_retbits[] = { + 0x38, 0x2c, 0xe5, 0xed, 0x5c, 0xf0, 0x2d, 0xd3, 0x85, 0x4f, 0xb9, 0x7b, + 0x16, 0x25, 0xf2, 0x3e, 0xa9, 0x97, 0x27, 0x6d, 0x2d, 0x8b, 0x85, 0xc1, + 0x05, 0xda, 0x6d, 0x95, 0x8c, 0xcb, 0xf8, 0xd0, 0xc1, 0x22, 0xce, 0x47, + 0x97, 0x91, 0x89, 0xcf, 0x7f, 0x96, 0x43, 0x6f, 0x09, 0x89, 0xa2, 0xbe, + 0x72, 0x58, 0x98, 0xae, 0x91, 0xdd, 0x96, 0x4d, 0x1b, 0xcd, 0x6a, 0x2e, + 0xc6, 0xdb, 0x6b, 0x94, +}; +static const struct drbg_kat_pr_false kat1739_t = { + 13, kat1739_entropyin, kat1739_nonce, kat1739_persstr, + kat1739_entropyinreseed, kat1739_addinreseed, kat1739_addin0, + kat1739_addin1, kat1739_retbits +}; +static const struct drbg_kat kat1739 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1739_t +}; + +static const unsigned char kat1740_entropyin[] = { + 0x22, 0xd0, 0xca, 0x92, 0x65, 0xd8, 0x9c, 0x5b, 0x37, 0x16, 0x52, 0x45, + 0x90, 0xbf, 0x2d, 0xec, 0xa5, 0x31, 0xfe, 0x9a, 0xd6, 0xc4, 0xca, 0xdd, +}; +static const unsigned char kat1740_nonce[] = { + 0xed, 0x25, 0xae, 0x62, 0x79, 0xf1, 0xff, 0x44, 0x52, 0xb8, 0x89, 0x71, + 0x30, 0x40, 0x79, 0xec, +}; +static const unsigned char kat1740_persstr[] = { + 0xdf, 0xe0, 0x4e, 0xe1, 0x9a, 0x64, 0xaf, 0x7c, 0x06, 0x98, 0xa0, 0x57, + 0xb7, 0x68, 0x0f, 0xd3, 0x7a, 0x9f, 0x7b, 0x5a, 0x9e, 0xe3, 0xc9, 0xfb, + 0x98, 0x5a, 0x20, 0x73, 0x46, 0xdb, 0xa5, 0x68, +}; +static const unsigned char kat1740_entropyinreseed[] = { + 0x77, 0xed, 0x9f, 0x0a, 0xe1, 0x3d, 0x23, 0x7c, 0xf3, 0x93, 0x13, 0x43, + 0xaf, 0x6f, 0xdc, 0x34, 0xeb, 0x3a, 0xa8, 0x47, 0x74, 0xb4, 0x04, 0xef, +}; +static const unsigned char kat1740_addinreseed[] = { + 0x7e, 0x87, 0xdb, 0x1a, 0x9c, 0xd8, 0x19, 0x14, 0xe4, 0x39, 0x49, 0xa7, + 0xa9, 0xdb, 0xa1, 0x67, 0xab, 0x01, 0x2d, 0x35, 0x55, 0x7f, 0x7d, 0x90, + 0x01, 0xd4, 0xec, 0xe3, 0x53, 0xc7, 0x90, 0x75, +}; +static const unsigned char kat1740_addin0[] = { + 0x23, 0x96, 0x2b, 0x88, 0x7c, 0x19, 0x6b, 0x7d, 0x0d, 0x62, 0xb2, 0xe7, + 0x9b, 0x9a, 0xdd, 0xca, 0xa7, 0x4e, 0xe0, 0x4c, 0xf2, 0xa2, 0x8c, 0x45, + 0x38, 0x6f, 0x69, 0xa5, 0x6b, 0xb4, 0x76, 0x99, +}; +static const unsigned char kat1740_addin1[] = { + 0xc0, 0x28, 0x2b, 0x47, 0x16, 0x62, 0x73, 0x2c, 0x84, 0x75, 0xc1, 0xd6, + 0x30, 0x6e, 0xff, 0xa2, 0xe8, 0xb4, 0xc1, 0xaf, 0xc1, 0x60, 0x54, 0x4d, + 0x3c, 0x9b, 0x01, 0x9e, 0x00, 0x71, 0xb1, 0x0e, +}; +static const unsigned char kat1740_retbits[] = { + 0xe7, 0x92, 0x01, 0x75, 0x5a, 0x4c, 0xb6, 0x3a, 0x13, 0x34, 0xcf, 0xaa, + 0x53, 0xac, 0x55, 0x32, 0xc2, 0xd4, 0x45, 0x57, 0xfd, 0xa2, 0xa2, 0x2f, + 0x71, 0x8d, 0x69, 0xf0, 0xdc, 0xea, 0xfc, 0xe1, 0x81, 0x79, 0x67, 0x8b, + 0x30, 0xae, 0x8c, 0x97, 0xea, 0xc2, 0xfc, 0x49, 0x97, 0x90, 0xd2, 0x53, + 0x2a, 0xe1, 0xb3, 0xfc, 0x54, 0x01, 0xb0, 0x88, 0xea, 0x1f, 0xa3, 0xa4, + 0x9e, 0xab, 0x26, 0x04, +}; +static const struct drbg_kat_pr_false kat1740_t = { + 14, kat1740_entropyin, kat1740_nonce, kat1740_persstr, + kat1740_entropyinreseed, kat1740_addinreseed, kat1740_addin0, + kat1740_addin1, kat1740_retbits +}; +static const struct drbg_kat kat1740 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1740_t +}; + +static const unsigned char kat1741_entropyin[] = { + 0xff, 0x25, 0x66, 0x1b, 0x6b, 0x58, 0x5c, 0x5a, 0x31, 0x21, 0x7a, 0x9b, + 0x5c, 0x20, 0xa6, 0xe3, 0x07, 0xf7, 0x0b, 0x12, 0x6f, 0xda, 0x2e, 0x25, +}; +static const unsigned char kat1741_nonce[] = { + 0x1b, 0xe8, 0xf5, 0x1a, 0xfe, 0xbd, 0x48, 0x14, 0x55, 0x41, 0x60, 0x3d, + 0xf9, 0x2e, 0x5d, 0x0d, +}; +static const unsigned char kat1741_persstr[] = {0}; +static const unsigned char kat1741_entropyinreseed[] = { + 0x29, 0x85, 0x5d, 0xfe, 0x13, 0x48, 0x00, 0x58, 0x56, 0x2d, 0x33, 0x7e, + 0x16, 0xae, 0x0c, 0x87, 0x53, 0xcc, 0x4e, 0xb5, 0x42, 0x0c, 0x88, 0x25, +}; +static const unsigned char kat1741_addinreseed[] = {0}; +static const unsigned char kat1741_addin0[] = {0}; +static const unsigned char kat1741_addin1[] = {0}; +static const unsigned char kat1741_retbits[] = { + 0x86, 0x07, 0xc9, 0xd7, 0x84, 0x54, 0x8f, 0x2f, 0x37, 0xf2, 0x61, 0x6b, + 0x24, 0x4e, 0x9f, 0x27, 0xa3, 0x00, 0x92, 0xdf, 0x94, 0x24, 0xc4, 0x7b, + 0x34, 0x64, 0x86, 0x2e, 0x67, 0x5f, 0x03, 0xd4, 0xec, 0x6c, 0xd5, 0xff, + 0x79, 0xf9, 0xf4, 0xa5, 0xd3, 0x88, 0xa6, 0x03, 0xe7, 0x49, 0x5d, 0x39, + 0x47, 0x79, 0x55, 0x46, 0x0a, 0xc2, 0xee, 0x0c, 0x2c, 0xe4, 0xd3, 0xd8, + 0x34, 0xef, 0x51, 0x74, +}; +static const struct drbg_kat_pr_false kat1741_t = { + 0, kat1741_entropyin, kat1741_nonce, kat1741_persstr, + kat1741_entropyinreseed, kat1741_addinreseed, kat1741_addin0, + kat1741_addin1, kat1741_retbits +}; +static const struct drbg_kat kat1741 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1741_t +}; + +static const unsigned char kat1742_entropyin[] = { + 0x39, 0xaf, 0x29, 0xf3, 0x92, 0xbc, 0x31, 0x78, 0x98, 0xa6, 0x6a, 0x84, + 0xad, 0x84, 0x3b, 0x9e, 0x17, 0x69, 0x87, 0xb0, 0x29, 0xd0, 0x01, 0x2d, +}; +static const unsigned char kat1742_nonce[] = { + 0xef, 0xa6, 0x22, 0xec, 0xfe, 0xcc, 0x7b, 0x52, 0x93, 0x76, 0x8b, 0x48, + 0xdb, 0xf3, 0xe5, 0xa7, +}; +static const unsigned char kat1742_persstr[] = {0}; +static const unsigned char kat1742_entropyinreseed[] = { + 0xb6, 0x66, 0x30, 0x6e, 0x4f, 0x02, 0xf4, 0xcd, 0x45, 0x5c, 0x3a, 0x79, + 0x94, 0x38, 0x73, 0x36, 0x77, 0xc5, 0x96, 0x5f, 0x48, 0x2e, 0x32, 0x5a, +}; +static const unsigned char kat1742_addinreseed[] = {0}; +static const unsigned char kat1742_addin0[] = {0}; +static const unsigned char kat1742_addin1[] = {0}; +static const unsigned char kat1742_retbits[] = { + 0xb7, 0x36, 0xc6, 0xba, 0x43, 0x0b, 0x05, 0x1f, 0xa2, 0x09, 0x6e, 0xe7, + 0xf0, 0x77, 0xb0, 0xce, 0xda, 0x0b, 0x40, 0xd4, 0xf3, 0x97, 0xb4, 0xdd, + 0x55, 0x9c, 0x29, 0x4a, 0x73, 0x00, 0x3d, 0xf3, 0x80, 0xb2, 0x66, 0xd2, + 0xbb, 0xa4, 0xeb, 0x94, 0xac, 0xc6, 0x2f, 0x45, 0x98, 0x71, 0x26, 0xf7, + 0x78, 0xc9, 0x4c, 0x02, 0x08, 0xa3, 0x30, 0xed, 0xc8, 0xbf, 0xa3, 0xae, + 0xc7, 0xdd, 0x86, 0x6d, +}; +static const struct drbg_kat_pr_false kat1742_t = { + 1, kat1742_entropyin, kat1742_nonce, kat1742_persstr, + kat1742_entropyinreseed, kat1742_addinreseed, kat1742_addin0, + kat1742_addin1, kat1742_retbits +}; +static const struct drbg_kat kat1742 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1742_t +}; + +static const unsigned char kat1743_entropyin[] = { + 0x34, 0x30, 0xbe, 0x27, 0x58, 0x37, 0x10, 0x61, 0x88, 0x22, 0xa1, 0xd8, + 0xb4, 0xa0, 0xfd, 0xfe, 0xab, 0xc1, 0x2f, 0x8d, 0x2f, 0x70, 0x23, 0x87, +}; +static const unsigned char kat1743_nonce[] = { + 0xc2, 0xbd, 0xf8, 0x75, 0x47, 0xfe, 0x9c, 0xd7, 0xca, 0xd2, 0x3b, 0xc1, + 0xf6, 0x30, 0x49, 0xbd, +}; +static const unsigned char kat1743_persstr[] = {0}; +static const unsigned char kat1743_entropyinreseed[] = { + 0x53, 0xe2, 0xec, 0x40, 0xc0, 0x31, 0xd8, 0x60, 0xb7, 0x7a, 0x00, 0xc8, + 0x6d, 0x1b, 0x65, 0x90, 0xa4, 0xbd, 0x02, 0xf7, 0xb2, 0x7b, 0x1e, 0xf1, +}; +static const unsigned char kat1743_addinreseed[] = {0}; +static const unsigned char kat1743_addin0[] = {0}; +static const unsigned char kat1743_addin1[] = {0}; +static const unsigned char kat1743_retbits[] = { + 0xed, 0xf1, 0xb1, 0xb6, 0x48, 0x90, 0x7a, 0xbe, 0x36, 0xe5, 0x05, 0x8f, + 0xff, 0x3f, 0xf7, 0xaa, 0x66, 0x82, 0xe0, 0x1d, 0x05, 0x81, 0x56, 0x17, + 0x47, 0x2c, 0xc5, 0x0f, 0xcf, 0x17, 0xc3, 0xeb, 0xe0, 0xc7, 0x9c, 0x03, + 0x00, 0x49, 0x9e, 0x88, 0x1d, 0x10, 0x67, 0x39, 0xe6, 0xe4, 0xd6, 0xf4, + 0x02, 0x21, 0xa7, 0x7a, 0x24, 0x2d, 0xcd, 0xe2, 0x96, 0x87, 0xa2, 0xda, + 0x7e, 0x18, 0x12, 0x09, +}; +static const struct drbg_kat_pr_false kat1743_t = { + 2, kat1743_entropyin, kat1743_nonce, kat1743_persstr, + kat1743_entropyinreseed, kat1743_addinreseed, kat1743_addin0, + kat1743_addin1, kat1743_retbits +}; +static const struct drbg_kat kat1743 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1743_t +}; + +static const unsigned char kat1744_entropyin[] = { + 0x27, 0xf1, 0xd6, 0xe2, 0xcf, 0x04, 0xbd, 0x6e, 0x97, 0xf1, 0xac, 0x02, + 0x8a, 0x7f, 0x07, 0x68, 0x7f, 0xe8, 0xa0, 0x17, 0x44, 0x78, 0x02, 0xdc, +}; +static const unsigned char kat1744_nonce[] = { + 0xb3, 0xc4, 0x9d, 0x63, 0x52, 0x84, 0x8c, 0x4f, 0x72, 0xd7, 0xf8, 0x2e, + 0x5c, 0x35, 0x72, 0xdd, +}; +static const unsigned char kat1744_persstr[] = {0}; +static const unsigned char kat1744_entropyinreseed[] = { + 0xdf, 0xb1, 0x3a, 0x14, 0x26, 0xbd, 0x48, 0xde, 0xfc, 0xfa, 0x7a, 0x91, + 0xe1, 0x34, 0x67, 0xee, 0xb2, 0x43, 0x07, 0x5c, 0x23, 0xa6, 0xa4, 0x19, +}; +static const unsigned char kat1744_addinreseed[] = {0}; +static const unsigned char kat1744_addin0[] = {0}; +static const unsigned char kat1744_addin1[] = {0}; +static const unsigned char kat1744_retbits[] = { + 0x7d, 0x90, 0x4e, 0x4c, 0xe2, 0x9e, 0xda, 0x57, 0x0c, 0x4c, 0xa2, 0x7a, + 0xf3, 0x82, 0x35, 0xaf, 0x66, 0x6a, 0x25, 0x1a, 0x45, 0x18, 0xf0, 0x64, + 0x96, 0x3d, 0x8c, 0x36, 0x41, 0x80, 0x6e, 0x5e, 0x7d, 0x96, 0x3d, 0x1f, + 0x32, 0x09, 0x0b, 0x8a, 0xe8, 0x69, 0x91, 0x82, 0xb9, 0xec, 0xd6, 0x25, + 0xec, 0x61, 0xe0, 0x9c, 0x47, 0x08, 0x34, 0x88, 0xea, 0xb7, 0x56, 0x56, + 0xc2, 0xbe, 0xe4, 0xcf, +}; +static const struct drbg_kat_pr_false kat1744_t = { + 3, kat1744_entropyin, kat1744_nonce, kat1744_persstr, + kat1744_entropyinreseed, kat1744_addinreseed, kat1744_addin0, + kat1744_addin1, kat1744_retbits +}; +static const struct drbg_kat kat1744 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1744_t +}; + +static const unsigned char kat1745_entropyin[] = { + 0xdf, 0x28, 0xa9, 0x33, 0x1b, 0x88, 0x99, 0x13, 0x65, 0x7c, 0x59, 0xf9, + 0x54, 0x6c, 0xb6, 0xe3, 0x33, 0x93, 0xea, 0x65, 0x85, 0x84, 0x32, 0xb1, +}; +static const unsigned char kat1745_nonce[] = { + 0xd6, 0xd8, 0x58, 0x3b, 0xb7, 0xef, 0x49, 0x5a, 0x5b, 0x10, 0x87, 0x30, + 0xaf, 0x2c, 0xf1, 0x4b, +}; +static const unsigned char kat1745_persstr[] = {0}; +static const unsigned char kat1745_entropyinreseed[] = { + 0x7b, 0x14, 0x4e, 0x63, 0x8d, 0xe5, 0x3a, 0x66, 0x18, 0x17, 0xc2, 0x95, + 0x61, 0x9e, 0xa0, 0xe0, 0x8f, 0x2b, 0xcf, 0x3f, 0xe1, 0xc7, 0x82, 0x90, +}; +static const unsigned char kat1745_addinreseed[] = {0}; +static const unsigned char kat1745_addin0[] = {0}; +static const unsigned char kat1745_addin1[] = {0}; +static const unsigned char kat1745_retbits[] = { + 0xea, 0x76, 0x0a, 0xb5, 0xda, 0x81, 0x1a, 0x6b, 0x1a, 0x17, 0x9c, 0xcf, + 0x53, 0x19, 0x02, 0xe1, 0x5f, 0xba, 0x08, 0x01, 0x4f, 0xf9, 0x4d, 0x19, + 0x9a, 0x1c, 0xd8, 0xb7, 0x52, 0x74, 0x87, 0xe4, 0x3c, 0x36, 0xf6, 0x87, + 0x4c, 0xe3, 0x52, 0x11, 0xe6, 0xd7, 0x19, 0xfa, 0xbf, 0x8c, 0x0a, 0x05, + 0xd4, 0xf3, 0x78, 0x2e, 0x78, 0xf9, 0xf8, 0xe8, 0x91, 0x31, 0xfe, 0x9f, + 0x39, 0x21, 0xc8, 0xea, +}; +static const struct drbg_kat_pr_false kat1745_t = { + 4, kat1745_entropyin, kat1745_nonce, kat1745_persstr, + kat1745_entropyinreseed, kat1745_addinreseed, kat1745_addin0, + kat1745_addin1, kat1745_retbits +}; +static const struct drbg_kat kat1745 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1745_t +}; + +static const unsigned char kat1746_entropyin[] = { + 0x3c, 0xa7, 0x8a, 0xbb, 0x93, 0x47, 0xfd, 0xf8, 0x76, 0xd2, 0x98, 0xa3, + 0x7d, 0xe1, 0xba, 0xf0, 0x67, 0x9f, 0x9e, 0x9e, 0xd6, 0x91, 0xdd, 0x63, +}; +static const unsigned char kat1746_nonce[] = { + 0xc5, 0xb3, 0x57, 0xe7, 0xf2, 0x77, 0xe4, 0x4b, 0x2a, 0xa5, 0x2c, 0x6b, + 0xe5, 0xef, 0x12, 0xed, +}; +static const unsigned char kat1746_persstr[] = {0}; +static const unsigned char kat1746_entropyinreseed[] = { + 0x96, 0x8f, 0x83, 0x03, 0x0b, 0x80, 0x50, 0x37, 0xd2, 0xbd, 0x5d, 0xb9, + 0xea, 0xee, 0xbb, 0x5c, 0x5b, 0xb4, 0x65, 0x0b, 0x21, 0xaf, 0xec, 0x1f, +}; +static const unsigned char kat1746_addinreseed[] = {0}; +static const unsigned char kat1746_addin0[] = {0}; +static const unsigned char kat1746_addin1[] = {0}; +static const unsigned char kat1746_retbits[] = { + 0xd2, 0xa0, 0x32, 0xf7, 0x7b, 0x57, 0xd7, 0x44, 0x06, 0x76, 0x67, 0xcf, + 0xf1, 0x88, 0x40, 0xd0, 0x34, 0xe2, 0x73, 0x81, 0x94, 0x3e, 0xf1, 0x41, + 0xfb, 0x94, 0x7f, 0x34, 0x07, 0x67, 0x50, 0xb9, 0xe9, 0x0c, 0x2c, 0x03, + 0x3e, 0xaa, 0x9d, 0xe7, 0x8e, 0x48, 0xfd, 0xb1, 0x92, 0x6e, 0x31, 0x24, + 0xc2, 0x10, 0x78, 0xfc, 0xcc, 0x44, 0xe3, 0x50, 0x98, 0xb4, 0x89, 0x47, + 0x75, 0x22, 0x67, 0x1e, +}; +static const struct drbg_kat_pr_false kat1746_t = { + 5, kat1746_entropyin, kat1746_nonce, kat1746_persstr, + kat1746_entropyinreseed, kat1746_addinreseed, kat1746_addin0, + kat1746_addin1, kat1746_retbits +}; +static const struct drbg_kat kat1746 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1746_t +}; + +static const unsigned char kat1747_entropyin[] = { + 0x89, 0x1c, 0xd4, 0x4b, 0x24, 0x6f, 0x6c, 0xc4, 0x79, 0x01, 0x92, 0x7a, + 0x01, 0x74, 0xe2, 0x25, 0x07, 0x89, 0x93, 0xb5, 0xb6, 0x4d, 0x89, 0x72, +}; +static const unsigned char kat1747_nonce[] = { + 0xfb, 0x4f, 0x2e, 0xb7, 0x3c, 0x30, 0x3a, 0xa6, 0xe3, 0xd6, 0x12, 0xa9, + 0x1f, 0x25, 0x19, 0x30, +}; +static const unsigned char kat1747_persstr[] = {0}; +static const unsigned char kat1747_entropyinreseed[] = { + 0x5e, 0xf1, 0x97, 0x23, 0x73, 0xeb, 0xdb, 0x4c, 0x7b, 0x41, 0x4c, 0x69, + 0x84, 0x5a, 0x8e, 0xad, 0xa0, 0x73, 0x4e, 0xa4, 0x6f, 0xa1, 0xd0, 0x12, +}; +static const unsigned char kat1747_addinreseed[] = {0}; +static const unsigned char kat1747_addin0[] = {0}; +static const unsigned char kat1747_addin1[] = {0}; +static const unsigned char kat1747_retbits[] = { + 0x59, 0xe6, 0xf2, 0xe4, 0x16, 0xe0, 0xfa, 0x43, 0xb6, 0x5f, 0xec, 0x2b, + 0xec, 0x3d, 0x51, 0x1d, 0x97, 0xe0, 0xb0, 0xd5, 0x37, 0xeb, 0xf8, 0x40, + 0x57, 0xba, 0xca, 0x29, 0x50, 0x44, 0x9b, 0xe1, 0x25, 0x3f, 0x58, 0x4d, + 0x57, 0x54, 0x03, 0xfb, 0x17, 0x20, 0x33, 0x01, 0x8e, 0xfc, 0xc0, 0x94, + 0xe4, 0x3d, 0xb9, 0x98, 0x40, 0x88, 0x1d, 0x94, 0x4b, 0x45, 0x0a, 0xfc, + 0x6b, 0x9e, 0x99, 0xc3, +}; +static const struct drbg_kat_pr_false kat1747_t = { + 6, kat1747_entropyin, kat1747_nonce, kat1747_persstr, + kat1747_entropyinreseed, kat1747_addinreseed, kat1747_addin0, + kat1747_addin1, kat1747_retbits +}; +static const struct drbg_kat kat1747 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1747_t +}; + +static const unsigned char kat1748_entropyin[] = { + 0x55, 0x70, 0x9e, 0xf0, 0x14, 0x8e, 0x66, 0xa6, 0x05, 0xe4, 0x3e, 0x76, + 0xcc, 0xd1, 0xaa, 0x9c, 0xe1, 0x67, 0xe2, 0x53, 0x85, 0x71, 0x6c, 0xc4, +}; +static const unsigned char kat1748_nonce[] = { + 0x6c, 0xc4, 0x71, 0x1a, 0xc1, 0x43, 0xaa, 0xc7, 0x36, 0x3b, 0x9f, 0x5f, + 0xe1, 0x16, 0xd5, 0x50, +}; +static const unsigned char kat1748_persstr[] = {0}; +static const unsigned char kat1748_entropyinreseed[] = { + 0xb1, 0x78, 0xff, 0x73, 0x2e, 0x79, 0x45, 0x9d, 0xb5, 0x12, 0x86, 0x3f, + 0x65, 0x48, 0x7d, 0x08, 0xe0, 0x18, 0x5c, 0x3e, 0x82, 0x5f, 0x74, 0x96, +}; +static const unsigned char kat1748_addinreseed[] = {0}; +static const unsigned char kat1748_addin0[] = {0}; +static const unsigned char kat1748_addin1[] = {0}; +static const unsigned char kat1748_retbits[] = { + 0x0d, 0x27, 0xa3, 0x9e, 0x96, 0x10, 0x57, 0xfc, 0x03, 0x03, 0x81, 0x8c, + 0x80, 0x05, 0x87, 0x25, 0x4c, 0xc4, 0xa7, 0xd7, 0xda, 0x33, 0xf2, 0x16, + 0xa1, 0xb2, 0x80, 0x4a, 0x27, 0x85, 0xd7, 0x22, 0xae, 0xde, 0xf0, 0xe1, + 0x6c, 0x02, 0x97, 0x30, 0x07, 0x38, 0x3c, 0xb7, 0x57, 0x4c, 0x64, 0xed, + 0x1f, 0x8c, 0x52, 0x8c, 0xc8, 0xb0, 0xbd, 0xde, 0xef, 0x77, 0x07, 0xcd, + 0xab, 0x7b, 0x7e, 0xa6, +}; +static const struct drbg_kat_pr_false kat1748_t = { + 7, kat1748_entropyin, kat1748_nonce, kat1748_persstr, + kat1748_entropyinreseed, kat1748_addinreseed, kat1748_addin0, + kat1748_addin1, kat1748_retbits +}; +static const struct drbg_kat kat1748 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1748_t +}; + +static const unsigned char kat1749_entropyin[] = { + 0xf9, 0x7b, 0x44, 0x2e, 0xf4, 0x89, 0xf8, 0x22, 0x00, 0x46, 0x97, 0xce, + 0xad, 0xac, 0xfc, 0x24, 0x0e, 0x53, 0x3d, 0xb4, 0x3c, 0xc9, 0xd2, 0x1a, +}; +static const unsigned char kat1749_nonce[] = { + 0xee, 0xcf, 0x1b, 0x9a, 0x52, 0xc3, 0x70, 0xf0, 0xfc, 0xd6, 0x4b, 0x5d, + 0x2d, 0x7b, 0x05, 0x3c, +}; +static const unsigned char kat1749_persstr[] = {0}; +static const unsigned char kat1749_entropyinreseed[] = { + 0xe9, 0x7b, 0x26, 0x17, 0xe8, 0x7c, 0x6a, 0xb9, 0x3f, 0xfb, 0x9f, 0xf0, + 0x64, 0x08, 0xe4, 0x44, 0x45, 0x2e, 0x06, 0xd0, 0x1d, 0xbd, 0x99, 0x49, +}; +static const unsigned char kat1749_addinreseed[] = {0}; +static const unsigned char kat1749_addin0[] = {0}; +static const unsigned char kat1749_addin1[] = {0}; +static const unsigned char kat1749_retbits[] = { + 0x2f, 0x82, 0xdf, 0xf5, 0x43, 0x24, 0x19, 0x5a, 0xe3, 0x9e, 0x92, 0x63, + 0x0a, 0xf5, 0x41, 0xb3, 0x9e, 0xbb, 0xee, 0xa0, 0xad, 0xab, 0x96, 0x7f, + 0xe5, 0x15, 0x97, 0xc8, 0x49, 0x6c, 0xd6, 0x63, 0x7e, 0xf7, 0x48, 0x36, + 0xb7, 0xa9, 0x2d, 0x9c, 0x7f, 0x69, 0x93, 0x46, 0xa8, 0xb4, 0xa8, 0x90, + 0x78, 0x70, 0x40, 0x9f, 0xa5, 0xa2, 0xa3, 0x9b, 0xf1, 0x71, 0xb8, 0xd7, + 0xe5, 0x80, 0x6c, 0x9a, +}; +static const struct drbg_kat_pr_false kat1749_t = { + 8, kat1749_entropyin, kat1749_nonce, kat1749_persstr, + kat1749_entropyinreseed, kat1749_addinreseed, kat1749_addin0, + kat1749_addin1, kat1749_retbits +}; +static const struct drbg_kat kat1749 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1749_t +}; + +static const unsigned char kat1750_entropyin[] = { + 0xc5, 0xd2, 0xd8, 0x36, 0xc3, 0x75, 0x63, 0x38, 0x19, 0x23, 0x1b, 0xf9, + 0x1f, 0x50, 0xf8, 0xb7, 0x49, 0x8c, 0x7d, 0xad, 0x84, 0x84, 0x73, 0xe1, +}; +static const unsigned char kat1750_nonce[] = { + 0x45, 0x25, 0x02, 0x5b, 0x4e, 0x84, 0x8f, 0x81, 0xf4, 0xd4, 0xc6, 0x7b, + 0x5f, 0xe2, 0x2b, 0x67, +}; +static const unsigned char kat1750_persstr[] = {0}; +static const unsigned char kat1750_entropyinreseed[] = { + 0xe9, 0xf7, 0xd8, 0xd3, 0x54, 0xcb, 0xa1, 0x69, 0x1c, 0x40, 0xeb, 0xce, + 0x00, 0xa2, 0xdd, 0x73, 0xc4, 0x56, 0x9d, 0x79, 0x3e, 0x83, 0x8a, 0x23, +}; +static const unsigned char kat1750_addinreseed[] = {0}; +static const unsigned char kat1750_addin0[] = {0}; +static const unsigned char kat1750_addin1[] = {0}; +static const unsigned char kat1750_retbits[] = { + 0x3a, 0xe7, 0xa6, 0xd7, 0x67, 0x87, 0xab, 0xd4, 0x70, 0xd2, 0xa9, 0x58, + 0x65, 0x49, 0xfe, 0x08, 0x15, 0xda, 0x69, 0x04, 0x02, 0xc8, 0x3d, 0x4d, + 0x74, 0x57, 0xa0, 0x2c, 0x1d, 0x79, 0x5c, 0x61, 0xc9, 0x42, 0xdf, 0x12, + 0x8c, 0xa7, 0xc2, 0xfd, 0x2c, 0x05, 0x89, 0xf9, 0xa0, 0xc9, 0xc0, 0x8b, + 0x24, 0x75, 0x79, 0xdd, 0xf2, 0x65, 0xaf, 0x06, 0xaf, 0xfa, 0x9f, 0x04, + 0x41, 0xf6, 0x97, 0x71, +}; +static const struct drbg_kat_pr_false kat1750_t = { + 9, kat1750_entropyin, kat1750_nonce, kat1750_persstr, + kat1750_entropyinreseed, kat1750_addinreseed, kat1750_addin0, + kat1750_addin1, kat1750_retbits +}; +static const struct drbg_kat kat1750 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1750_t +}; + +static const unsigned char kat1751_entropyin[] = { + 0x93, 0xdf, 0xc0, 0x25, 0xa3, 0xa8, 0x39, 0xa7, 0x7d, 0x63, 0xfd, 0xe8, + 0x0c, 0x3d, 0xd2, 0x8d, 0x82, 0xd0, 0xd2, 0x99, 0x9d, 0x19, 0xd0, 0x4c, +}; +static const unsigned char kat1751_nonce[] = { + 0x97, 0xbe, 0xba, 0xb3, 0x68, 0x46, 0x53, 0x6f, 0x60, 0xd3, 0x15, 0xfe, + 0x88, 0x43, 0x47, 0xec, +}; +static const unsigned char kat1751_persstr[] = {0}; +static const unsigned char kat1751_entropyinreseed[] = { + 0xb4, 0x15, 0xc7, 0x0c, 0x93, 0xed, 0x68, 0x96, 0x4c, 0x9f, 0x15, 0x22, + 0x70, 0x42, 0x3c, 0xb3, 0x82, 0x00, 0x7a, 0x5b, 0xa8, 0x88, 0x27, 0xa2, +}; +static const unsigned char kat1751_addinreseed[] = {0}; +static const unsigned char kat1751_addin0[] = {0}; +static const unsigned char kat1751_addin1[] = {0}; +static const unsigned char kat1751_retbits[] = { + 0x5a, 0xa7, 0x02, 0x88, 0xc8, 0x48, 0xe1, 0xc2, 0xba, 0x05, 0x8d, 0x54, + 0x5e, 0x97, 0xfd, 0x91, 0x02, 0xfa, 0xd2, 0x5f, 0xb6, 0x09, 0xda, 0x1e, + 0x30, 0x1c, 0x25, 0x2e, 0x4f, 0xf0, 0xa7, 0xeb, 0x53, 0x7f, 0x3c, 0x41, + 0x1f, 0xd0, 0x48, 0x56, 0x67, 0x64, 0xba, 0xb6, 0x17, 0x06, 0x04, 0x65, + 0xbc, 0x6c, 0x3a, 0x2c, 0xe0, 0x67, 0x0e, 0x68, 0x92, 0x6c, 0xcb, 0xf4, + 0xe9, 0x8d, 0x91, 0x40, +}; +static const struct drbg_kat_pr_false kat1751_t = { + 10, kat1751_entropyin, kat1751_nonce, kat1751_persstr, + kat1751_entropyinreseed, kat1751_addinreseed, kat1751_addin0, + kat1751_addin1, kat1751_retbits +}; +static const struct drbg_kat kat1751 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1751_t +}; + +static const unsigned char kat1752_entropyin[] = { + 0x94, 0x63, 0xfc, 0x03, 0xc1, 0x7b, 0xdb, 0x56, 0x6f, 0x14, 0x08, 0xcf, + 0x6d, 0x05, 0x26, 0x69, 0x81, 0x6f, 0xd7, 0x9d, 0x4c, 0x55, 0x02, 0x86, +}; +static const unsigned char kat1752_nonce[] = { + 0x31, 0x42, 0xc0, 0x30, 0xd3, 0x3f, 0x46, 0x51, 0x54, 0x8c, 0x56, 0x9b, + 0x64, 0xfb, 0x2d, 0x45, +}; +static const unsigned char kat1752_persstr[] = {0}; +static const unsigned char kat1752_entropyinreseed[] = { + 0x6e, 0x6d, 0x9a, 0x71, 0x67, 0xfd, 0xab, 0x95, 0x92, 0x1d, 0x78, 0xfe, + 0x19, 0x7d, 0x06, 0x5c, 0xe7, 0xbd, 0x16, 0x89, 0x75, 0x47, 0x3c, 0x54, +}; +static const unsigned char kat1752_addinreseed[] = {0}; +static const unsigned char kat1752_addin0[] = {0}; +static const unsigned char kat1752_addin1[] = {0}; +static const unsigned char kat1752_retbits[] = { + 0xd1, 0x82, 0xbf, 0x85, 0xd9, 0x48, 0xb2, 0xc8, 0xb0, 0x5c, 0xd2, 0xa9, + 0x8b, 0x2c, 0x7b, 0xaf, 0x46, 0x18, 0xc1, 0x23, 0x87, 0xb4, 0x1d, 0x72, + 0xba, 0xbb, 0xc9, 0xf9, 0x2b, 0x9f, 0xe3, 0xe4, 0xba, 0x65, 0x52, 0x25, + 0x25, 0x74, 0xc4, 0x04, 0x59, 0xbf, 0xe7, 0x4d, 0x9e, 0x79, 0x0b, 0x29, + 0x49, 0x11, 0xca, 0x07, 0x77, 0xd2, 0xd2, 0xc4, 0xd5, 0x49, 0x29, 0x70, + 0x06, 0x99, 0xea, 0x0c, +}; +static const struct drbg_kat_pr_false kat1752_t = { + 11, kat1752_entropyin, kat1752_nonce, kat1752_persstr, + kat1752_entropyinreseed, kat1752_addinreseed, kat1752_addin0, + kat1752_addin1, kat1752_retbits +}; +static const struct drbg_kat kat1752 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1752_t +}; + +static const unsigned char kat1753_entropyin[] = { + 0xcc, 0xc5, 0xce, 0xf1, 0xe1, 0x77, 0x48, 0x07, 0xb2, 0x08, 0x8e, 0xa2, + 0x48, 0x69, 0x13, 0x61, 0xb5, 0x60, 0x38, 0x06, 0xce, 0x61, 0x31, 0x09, +}; +static const unsigned char kat1753_nonce[] = { + 0x02, 0x56, 0xaf, 0x44, 0x54, 0x65, 0xdd, 0x03, 0x75, 0x6c, 0x30, 0x01, + 0x44, 0x7e, 0xea, 0x4f, +}; +static const unsigned char kat1753_persstr[] = {0}; +static const unsigned char kat1753_entropyinreseed[] = { + 0xb6, 0xbb, 0xa4, 0x17, 0xab, 0x2c, 0x32, 0xae, 0x81, 0x21, 0xc9, 0xb0, + 0xaf, 0x77, 0x24, 0xee, 0xab, 0x15, 0xb7, 0x06, 0x4d, 0x9e, 0xfa, 0x91, +}; +static const unsigned char kat1753_addinreseed[] = {0}; +static const unsigned char kat1753_addin0[] = {0}; +static const unsigned char kat1753_addin1[] = {0}; +static const unsigned char kat1753_retbits[] = { + 0xdb, 0xdf, 0x75, 0x5f, 0x7a, 0x3f, 0x7e, 0x8a, 0xe1, 0x0d, 0xa9, 0x95, + 0x7f, 0xd6, 0xf0, 0x68, 0xb2, 0x4d, 0x2b, 0x25, 0x38, 0x18, 0xb8, 0xfd, + 0x11, 0x70, 0xfe, 0x17, 0xc6, 0xeb, 0x98, 0x11, 0x2d, 0x56, 0x39, 0x45, + 0x59, 0xf5, 0x07, 0x53, 0x76, 0x1b, 0x48, 0x60, 0x49, 0x32, 0x64, 0x64, + 0x6c, 0x51, 0x7a, 0xbc, 0xf5, 0xc8, 0x6a, 0x29, 0xcd, 0x1a, 0xcd, 0x6d, + 0x14, 0x51, 0xe3, 0x94, +}; +static const struct drbg_kat_pr_false kat1753_t = { + 12, kat1753_entropyin, kat1753_nonce, kat1753_persstr, + kat1753_entropyinreseed, kat1753_addinreseed, kat1753_addin0, + kat1753_addin1, kat1753_retbits +}; +static const struct drbg_kat kat1753 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1753_t +}; + +static const unsigned char kat1754_entropyin[] = { + 0x95, 0xb7, 0xc2, 0x78, 0x07, 0x11, 0x6c, 0xbb, 0x6a, 0xd8, 0xb6, 0x9c, + 0x88, 0x95, 0xef, 0x11, 0x5b, 0xf5, 0x65, 0x87, 0xd8, 0xc0, 0x0f, 0x6a, +}; +static const unsigned char kat1754_nonce[] = { + 0xc9, 0x47, 0x78, 0x41, 0x14, 0xf6, 0xf5, 0xba, 0x96, 0x52, 0x86, 0xfd, + 0x9b, 0x31, 0xf3, 0xc7, +}; +static const unsigned char kat1754_persstr[] = {0}; +static const unsigned char kat1754_entropyinreseed[] = { + 0xf3, 0x36, 0xb1, 0xab, 0x1a, 0x4f, 0xeb, 0xac, 0x39, 0xeb, 0xce, 0xb2, + 0xed, 0x91, 0x9a, 0x81, 0xb4, 0x38, 0x8b, 0x13, 0xae, 0x77, 0x72, 0x42, +}; +static const unsigned char kat1754_addinreseed[] = {0}; +static const unsigned char kat1754_addin0[] = {0}; +static const unsigned char kat1754_addin1[] = {0}; +static const unsigned char kat1754_retbits[] = { + 0xbb, 0xd7, 0x09, 0x42, 0xbb, 0x27, 0x72, 0xa1, 0xc0, 0x09, 0x7b, 0xc5, + 0xcc, 0xe0, 0x1b, 0xfb, 0x64, 0xdc, 0x27, 0xcc, 0x20, 0x03, 0x7f, 0x85, + 0x9e, 0x23, 0xa6, 0xc7, 0x85, 0x75, 0xaa, 0xe4, 0xe2, 0xed, 0xa3, 0x8c, + 0x64, 0x59, 0x9a, 0x40, 0xe7, 0x06, 0xee, 0x0c, 0x11, 0x9f, 0xc1, 0xeb, + 0x0e, 0x13, 0x9e, 0xd1, 0xa0, 0x2f, 0x0d, 0xa9, 0xd7, 0xcf, 0x7b, 0x84, + 0xcc, 0x7e, 0x69, 0x34, +}; +static const struct drbg_kat_pr_false kat1754_t = { + 13, kat1754_entropyin, kat1754_nonce, kat1754_persstr, + kat1754_entropyinreseed, kat1754_addinreseed, kat1754_addin0, + kat1754_addin1, kat1754_retbits +}; +static const struct drbg_kat kat1754 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1754_t +}; + +static const unsigned char kat1755_entropyin[] = { + 0x77, 0x0b, 0x80, 0xe1, 0x5a, 0x3e, 0xee, 0x89, 0xf7, 0x56, 0x08, 0xa7, + 0x80, 0x93, 0x4b, 0x15, 0x9d, 0xe6, 0xad, 0x3f, 0x5d, 0x78, 0xb6, 0xdf, +}; +static const unsigned char kat1755_nonce[] = { + 0xd7, 0x41, 0x92, 0xd5, 0x0f, 0x0f, 0x73, 0x90, 0x94, 0x80, 0x89, 0x87, + 0xed, 0x94, 0xd3, 0x82, +}; +static const unsigned char kat1755_persstr[] = {0}; +static const unsigned char kat1755_entropyinreseed[] = { + 0xdd, 0x3e, 0x0a, 0xe9, 0x4d, 0xe7, 0x39, 0x52, 0x66, 0x5c, 0xd7, 0x5c, + 0x72, 0x94, 0x04, 0x32, 0x90, 0x98, 0xd6, 0x10, 0x94, 0x0a, 0x9a, 0x40, +}; +static const unsigned char kat1755_addinreseed[] = {0}; +static const unsigned char kat1755_addin0[] = {0}; +static const unsigned char kat1755_addin1[] = {0}; +static const unsigned char kat1755_retbits[] = { + 0x11, 0x1c, 0x15, 0x75, 0xc8, 0xee, 0xc3, 0x7a, 0x42, 0x72, 0xf5, 0x9e, + 0x83, 0x9b, 0x6d, 0x6d, 0xa2, 0x48, 0x86, 0xa8, 0x2f, 0x1d, 0x33, 0x89, + 0x95, 0x2b, 0x5f, 0x5f, 0xe9, 0xea, 0x6b, 0x35, 0x2e, 0x84, 0x73, 0x95, + 0x9d, 0xfd, 0x61, 0x7d, 0x0c, 0xd8, 0x58, 0x80, 0x10, 0xa1, 0xf5, 0xda, + 0x8c, 0x9a, 0x9d, 0xd0, 0x36, 0x61, 0x0a, 0x93, 0xd4, 0xe9, 0x40, 0xe0, + 0x9a, 0x95, 0xb1, 0x64, +}; +static const struct drbg_kat_pr_false kat1755_t = { + 14, kat1755_entropyin, kat1755_nonce, kat1755_persstr, + kat1755_entropyinreseed, kat1755_addinreseed, kat1755_addin0, + kat1755_addin1, kat1755_retbits +}; +static const struct drbg_kat kat1755 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1755_t +}; + +static const unsigned char kat1756_entropyin[] = { + 0x1a, 0x1a, 0x4a, 0x3b, 0xec, 0x7b, 0xbd, 0xf9, 0x8f, 0x53, 0x59, 0x24, + 0x18, 0xd9, 0x03, 0xae, 0xd3, 0xe1, 0x14, 0xa7, 0xf0, 0x11, 0x45, 0x63, +}; +static const unsigned char kat1756_nonce[] = { + 0xf0, 0xb7, 0xb7, 0x42, 0x4f, 0x10, 0x8f, 0x6d, 0xb6, 0xcf, 0xcb, 0xfd, + 0x2d, 0x40, 0xa5, 0xb6, +}; +static const unsigned char kat1756_persstr[] = {0}; +static const unsigned char kat1756_entropyinreseed[] = { + 0x6f, 0x78, 0xaf, 0xb3, 0x10, 0xee, 0x0d, 0xae, 0x67, 0x32, 0xe0, 0xed, + 0x97, 0x9c, 0x63, 0xa3, 0xad, 0x87, 0x92, 0x33, 0x36, 0x62, 0xf6, 0x24, +}; +static const unsigned char kat1756_addinreseed[] = { + 0x9f, 0x05, 0x05, 0x42, 0xa1, 0x09, 0x7f, 0x93, 0x5c, 0x68, 0xf3, 0x73, + 0x82, 0x4a, 0xb9, 0xca, 0xc1, 0x78, 0x27, 0xba, 0xdb, 0xe0, 0x7c, 0xf9, + 0xde, 0xe4, 0x8a, 0xf3, 0x3a, 0x31, 0x99, 0x1f, +}; +static const unsigned char kat1756_addin0[] = { + 0x38, 0xd6, 0x8c, 0xc7, 0xc8, 0x98, 0x66, 0xd8, 0xd2, 0x70, 0x8a, 0x21, + 0x57, 0x76, 0xaf, 0x15, 0x4b, 0x3c, 0x08, 0x2d, 0x55, 0x0c, 0x55, 0x5e, + 0x1a, 0xaa, 0x5a, 0x72, 0xef, 0x2f, 0x5b, 0xe0, +}; +static const unsigned char kat1756_addin1[] = { + 0x40, 0xf8, 0x31, 0x44, 0x89, 0xc3, 0x25, 0x8d, 0xd4, 0xb1, 0x3b, 0xa5, + 0x9b, 0x7e, 0x8f, 0x3e, 0xc9, 0x5d, 0xb0, 0x08, 0x29, 0xa2, 0x35, 0x3a, + 0x08, 0xcd, 0x75, 0x8b, 0x49, 0x89, 0xc0, 0x53, +}; +static const unsigned char kat1756_retbits[] = { + 0x15, 0xcc, 0x0c, 0xe7, 0x7e, 0xe5, 0x5c, 0xa4, 0xd7, 0x2b, 0x2e, 0x75, + 0xc3, 0x28, 0x87, 0x69, 0x4d, 0xca, 0xc9, 0x7f, 0x7d, 0x26, 0x1f, 0xbe, + 0x9e, 0xe1, 0xd0, 0x99, 0x70, 0xb7, 0xb0, 0x31, 0x3f, 0xb3, 0x18, 0x63, + 0x0a, 0xfa, 0x4a, 0xc3, 0x69, 0xb9, 0x97, 0x9c, 0x22, 0x64, 0x7f, 0x60, + 0xa3, 0x79, 0x97, 0x39, 0x94, 0x2d, 0x78, 0x08, 0xd4, 0xfb, 0xb1, 0x4f, + 0x7a, 0xc4, 0x90, 0x37, +}; +static const struct drbg_kat_pr_false kat1756_t = { + 0, kat1756_entropyin, kat1756_nonce, kat1756_persstr, + kat1756_entropyinreseed, kat1756_addinreseed, kat1756_addin0, + kat1756_addin1, kat1756_retbits +}; +static const struct drbg_kat kat1756 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1756_t +}; + +static const unsigned char kat1757_entropyin[] = { + 0x71, 0xe7, 0x3c, 0x32, 0xcd, 0x92, 0x05, 0xd4, 0x5c, 0x25, 0x5a, 0x5e, + 0x30, 0xba, 0x6d, 0x98, 0x47, 0x53, 0x85, 0xf1, 0x66, 0x17, 0x60, 0x06, +}; +static const unsigned char kat1757_nonce[] = { + 0x10, 0xa5, 0x55, 0x7c, 0xc3, 0xa1, 0x26, 0x84, 0x49, 0xb9, 0xa4, 0x40, + 0xf3, 0xe5, 0x7e, 0xb7, +}; +static const unsigned char kat1757_persstr[] = {0}; +static const unsigned char kat1757_entropyinreseed[] = { + 0x29, 0x0c, 0x46, 0x5c, 0x47, 0xf7, 0x6f, 0xe1, 0x1c, 0x2d, 0xdd, 0xee, + 0x35, 0x43, 0x88, 0x6e, 0x83, 0x83, 0x18, 0x41, 0x1a, 0xac, 0x69, 0x22, +}; +static const unsigned char kat1757_addinreseed[] = { + 0x4a, 0x2f, 0x94, 0xd6, 0xd8, 0x57, 0x54, 0x06, 0x79, 0xea, 0x0b, 0x03, + 0x1a, 0x86, 0x90, 0x19, 0x1a, 0xea, 0x68, 0x19, 0x9a, 0xf3, 0x94, 0xe2, + 0xf6, 0x41, 0x86, 0xe4, 0x1c, 0xfa, 0xa3, 0xd7, +}; +static const unsigned char kat1757_addin0[] = { + 0x22, 0xea, 0xa2, 0x4b, 0x0a, 0x5c, 0xdb, 0x23, 0x61, 0xfe, 0x82, 0x86, + 0x1f, 0x33, 0xc2, 0x42, 0xbb, 0x4a, 0x5b, 0x9e, 0x0f, 0x7b, 0x10, 0xe2, + 0xef, 0xde, 0x2b, 0xc3, 0x2e, 0x42, 0xd7, 0x20, +}; +static const unsigned char kat1757_addin1[] = { + 0x21, 0x9c, 0x41, 0x68, 0x95, 0x7f, 0x03, 0x0f, 0x60, 0x21, 0xd0, 0x35, + 0xa5, 0x2a, 0x5c, 0xd6, 0x66, 0xe9, 0xbf, 0x26, 0xea, 0xd9, 0x53, 0x88, + 0xa8, 0xcc, 0x6f, 0x59, 0x31, 0xdb, 0x8d, 0xbd, +}; +static const unsigned char kat1757_retbits[] = { + 0x76, 0x33, 0xdc, 0xb4, 0xee, 0x8e, 0xe1, 0x0c, 0x82, 0xac, 0x4e, 0x6f, + 0xae, 0x5f, 0xe6, 0x45, 0x3d, 0xda, 0x9b, 0x83, 0xf3, 0x83, 0x16, 0xd3, + 0xd6, 0x8d, 0xb1, 0xce, 0x72, 0x61, 0xdb, 0x92, 0x1a, 0x7d, 0x53, 0x82, + 0x82, 0x4c, 0xe9, 0xd4, 0xfb, 0x12, 0xa3, 0x83, 0xea, 0x27, 0x34, 0x78, + 0xee, 0xeb, 0xa9, 0x7d, 0xca, 0x2e, 0xea, 0x9b, 0x3b, 0x5c, 0xba, 0x7c, + 0x97, 0x8c, 0x20, 0xb5, +}; +static const struct drbg_kat_pr_false kat1757_t = { + 1, kat1757_entropyin, kat1757_nonce, kat1757_persstr, + kat1757_entropyinreseed, kat1757_addinreseed, kat1757_addin0, + kat1757_addin1, kat1757_retbits +}; +static const struct drbg_kat kat1757 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1757_t +}; + +static const unsigned char kat1758_entropyin[] = { + 0x8a, 0xaf, 0x10, 0xeb, 0x86, 0x77, 0xc8, 0x8f, 0xcb, 0xc3, 0xd4, 0xb8, + 0x41, 0x83, 0x41, 0xa5, 0x38, 0xcc, 0x28, 0xb1, 0xc7, 0x2d, 0x95, 0x97, +}; +static const unsigned char kat1758_nonce[] = { + 0xd5, 0x83, 0xc8, 0x52, 0x66, 0xa9, 0xee, 0xe2, 0x8d, 0x62, 0x3f, 0x24, + 0xcd, 0x5e, 0x16, 0xbb, +}; +static const unsigned char kat1758_persstr[] = {0}; +static const unsigned char kat1758_entropyinreseed[] = { + 0x15, 0xdc, 0xf6, 0x5b, 0xbe, 0x6f, 0xd3, 0x97, 0x4a, 0xeb, 0x4b, 0xf1, + 0xf2, 0x5a, 0xbe, 0xd2, 0xa3, 0x7a, 0x6f, 0x46, 0xc8, 0xdf, 0x48, 0xef, +}; +static const unsigned char kat1758_addinreseed[] = { + 0x77, 0x41, 0x1d, 0xe2, 0x4f, 0x03, 0x35, 0x28, 0x64, 0xe3, 0x3b, 0x9a, + 0x2b, 0x34, 0xd3, 0x7f, 0x91, 0x50, 0x03, 0xe2, 0x8e, 0x31, 0xbd, 0xf0, + 0xb4, 0x35, 0x5e, 0x90, 0x08, 0x30, 0xd6, 0xb2, +}; +static const unsigned char kat1758_addin0[] = { + 0x13, 0x07, 0x02, 0xd1, 0x32, 0x6b, 0x4e, 0x6d, 0xea, 0x87, 0x96, 0x7e, + 0x9e, 0xd7, 0xef, 0xe0, 0x37, 0xf1, 0xe5, 0x60, 0x70, 0x42, 0x44, 0x73, + 0x8f, 0x3e, 0xd5, 0xd6, 0x2f, 0x57, 0xf7, 0x26, +}; +static const unsigned char kat1758_addin1[] = { + 0xbd, 0xfe, 0x4c, 0x89, 0x12, 0xab, 0x00, 0x67, 0x0b, 0xac, 0xf1, 0x42, + 0x31, 0x0a, 0x92, 0x22, 0x55, 0x85, 0x41, 0x99, 0x7d, 0x36, 0x65, 0x90, + 0x88, 0x71, 0x04, 0xed, 0x95, 0x46, 0xa2, 0xaf, +}; +static const unsigned char kat1758_retbits[] = { + 0xfb, 0x5c, 0x73, 0x16, 0x16, 0x3c, 0x8e, 0xc1, 0xcb, 0x1b, 0x9f, 0xbc, + 0x30, 0xa8, 0x10, 0x40, 0xfd, 0x4e, 0x6e, 0x0d, 0x1b, 0x6d, 0x35, 0xda, + 0xc6, 0xce, 0xd9, 0xe6, 0x78, 0x04, 0x82, 0x88, 0x07, 0xc1, 0x29, 0x26, + 0xcb, 0x1e, 0x7b, 0x28, 0x44, 0x96, 0x25, 0xdc, 0x11, 0xfb, 0x98, 0xc1, + 0xfd, 0x71, 0xd6, 0x69, 0x3d, 0x77, 0x34, 0xcf, 0x40, 0x3e, 0x80, 0xe0, + 0x90, 0xd6, 0xa8, 0x2f, +}; +static const struct drbg_kat_pr_false kat1758_t = { + 2, kat1758_entropyin, kat1758_nonce, kat1758_persstr, + kat1758_entropyinreseed, kat1758_addinreseed, kat1758_addin0, + kat1758_addin1, kat1758_retbits +}; +static const struct drbg_kat kat1758 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1758_t +}; + +static const unsigned char kat1759_entropyin[] = { + 0x81, 0x4a, 0x71, 0xf1, 0x7b, 0x4d, 0x83, 0xea, 0xba, 0x16, 0x42, 0xb5, + 0x3b, 0x42, 0xab, 0x5f, 0xcf, 0x37, 0x49, 0x53, 0x1e, 0x05, 0x2c, 0x6a, +}; +static const unsigned char kat1759_nonce[] = { + 0x19, 0x70, 0xb2, 0x49, 0x74, 0xa6, 0xe4, 0x5f, 0xcd, 0x09, 0x9f, 0x7f, + 0x81, 0xe9, 0x89, 0x68, +}; +static const unsigned char kat1759_persstr[] = {0}; +static const unsigned char kat1759_entropyinreseed[] = { + 0x58, 0x3d, 0xdd, 0x4b, 0x2d, 0x88, 0xdd, 0xe2, 0x5b, 0x7e, 0x22, 0x85, + 0x47, 0x8b, 0x06, 0xa2, 0xe1, 0xba, 0x41, 0xc0, 0x05, 0xe2, 0xb9, 0x39, +}; +static const unsigned char kat1759_addinreseed[] = { + 0xe1, 0x25, 0x14, 0xea, 0xa3, 0xf6, 0x8d, 0x7f, 0x2c, 0xf0, 0x37, 0x77, + 0x36, 0x36, 0x0b, 0x2a, 0x14, 0x45, 0x9c, 0x0b, 0x74, 0x1d, 0x04, 0x32, + 0xd0, 0x41, 0xb9, 0x8d, 0xe3, 0xf1, 0x1e, 0xdc, +}; +static const unsigned char kat1759_addin0[] = { + 0xc4, 0xcc, 0xc6, 0x6d, 0x9b, 0x2f, 0x4d, 0x09, 0xe2, 0x30, 0x25, 0xb0, + 0xc0, 0x43, 0x6c, 0xcc, 0x7a, 0x7f, 0x02, 0x97, 0x34, 0x05, 0xdf, 0x09, + 0x34, 0x4d, 0x74, 0x21, 0xaa, 0x56, 0x92, 0xa1, +}; +static const unsigned char kat1759_addin1[] = { + 0x00, 0xe6, 0xc4, 0x9a, 0x01, 0x66, 0xe4, 0x7e, 0x4b, 0x81, 0x2f, 0xed, + 0x1b, 0x2f, 0x9e, 0x66, 0x2a, 0x6e, 0x7b, 0x90, 0x6a, 0xda, 0xe6, 0x48, + 0x67, 0x57, 0xca, 0x65, 0xf0, 0xad, 0x8a, 0xa3, +}; +static const unsigned char kat1759_retbits[] = { + 0xc0, 0x73, 0xda, 0x24, 0x88, 0xad, 0x58, 0xc9, 0xb2, 0xb3, 0xc5, 0xc1, + 0x21, 0xde, 0x40, 0x81, 0x71, 0x10, 0x86, 0xb6, 0x2d, 0xaf, 0xbf, 0xa2, + 0x35, 0x95, 0xb2, 0xde, 0xea, 0x86, 0x2e, 0x89, 0xcd, 0x8b, 0xcd, 0xb1, + 0x66, 0x81, 0x73, 0x92, 0xfb, 0xbf, 0xbc, 0x54, 0xec, 0x07, 0x0f, 0x1f, + 0xfb, 0xe5, 0x45, 0xfe, 0xc8, 0xf5, 0xb0, 0x4a, 0xeb, 0x34, 0x82, 0xf2, + 0xcf, 0x5a, 0xf4, 0xd0, +}; +static const struct drbg_kat_pr_false kat1759_t = { + 3, kat1759_entropyin, kat1759_nonce, kat1759_persstr, + kat1759_entropyinreseed, kat1759_addinreseed, kat1759_addin0, + kat1759_addin1, kat1759_retbits +}; +static const struct drbg_kat kat1759 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1759_t +}; + +static const unsigned char kat1760_entropyin[] = { + 0xda, 0x3f, 0x84, 0x0c, 0x1b, 0x9e, 0x65, 0x6b, 0x1c, 0x20, 0x84, 0x1a, + 0xec, 0x39, 0x26, 0x18, 0xd9, 0x05, 0x27, 0xcf, 0x64, 0x5a, 0x76, 0x91, +}; +static const unsigned char kat1760_nonce[] = { + 0x1e, 0x15, 0x6c, 0x5d, 0x97, 0xf3, 0x24, 0x5a, 0x4e, 0x88, 0xf4, 0xf1, + 0xd0, 0xaf, 0xe5, 0xcd, +}; +static const unsigned char kat1760_persstr[] = {0}; +static const unsigned char kat1760_entropyinreseed[] = { + 0x6c, 0x71, 0x43, 0x3e, 0xc9, 0x88, 0x48, 0x6e, 0x29, 0x30, 0xe7, 0x20, + 0x60, 0xf9, 0x71, 0x57, 0xeb, 0xef, 0x1b, 0x41, 0x0d, 0xed, 0xa0, 0xfc, +}; +static const unsigned char kat1760_addinreseed[] = { + 0x1b, 0xc4, 0xff, 0xa8, 0xc5, 0x78, 0x25, 0x9b, 0x65, 0x26, 0x1d, 0x38, + 0xa8, 0x08, 0x87, 0x51, 0x9f, 0xf0, 0x53, 0x71, 0xe1, 0x82, 0x4a, 0xdb, + 0x3c, 0xe8, 0x90, 0xc8, 0xe2, 0xa6, 0xc1, 0xb0, +}; +static const unsigned char kat1760_addin0[] = { + 0x7d, 0xa1, 0xc4, 0x87, 0xcd, 0x40, 0xad, 0x88, 0x94, 0x5b, 0xab, 0xd3, + 0x50, 0xe9, 0x8f, 0xf6, 0x9b, 0xa6, 0x5c, 0x92, 0xd9, 0x99, 0x1b, 0xf2, + 0xb9, 0xee, 0x7c, 0xb6, 0x2f, 0x59, 0x26, 0x28, +}; +static const unsigned char kat1760_addin1[] = { + 0x0e, 0x97, 0x65, 0x5c, 0x3f, 0xda, 0x2f, 0x9c, 0x48, 0xcb, 0xf6, 0xd8, + 0x48, 0x97, 0xe0, 0x9e, 0xa7, 0x71, 0xf9, 0x83, 0x3f, 0xa3, 0x11, 0x87, + 0x90, 0x14, 0x28, 0x9a, 0x09, 0xc0, 0xa1, 0x1b, +}; +static const unsigned char kat1760_retbits[] = { + 0x1f, 0x02, 0xf7, 0xa8, 0xa2, 0x90, 0x77, 0xef, 0xf9, 0x15, 0xcc, 0xa9, + 0x8d, 0x44, 0x36, 0xca, 0xa2, 0x70, 0xaa, 0xfe, 0xa0, 0x37, 0xc0, 0x8d, + 0x5a, 0x2a, 0x91, 0x71, 0xdc, 0xb6, 0xa6, 0x18, 0xe9, 0x9e, 0x7e, 0xac, + 0xb0, 0x07, 0x28, 0x07, 0xa6, 0x1e, 0xae, 0x8f, 0x75, 0x57, 0xc1, 0x83, + 0xdb, 0x67, 0xa1, 0x86, 0x89, 0x33, 0x16, 0x05, 0x7f, 0x85, 0xf1, 0x66, + 0x01, 0x30, 0x11, 0xd2, +}; +static const struct drbg_kat_pr_false kat1760_t = { + 4, kat1760_entropyin, kat1760_nonce, kat1760_persstr, + kat1760_entropyinreseed, kat1760_addinreseed, kat1760_addin0, + kat1760_addin1, kat1760_retbits +}; +static const struct drbg_kat kat1760 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1760_t +}; + +static const unsigned char kat1761_entropyin[] = { + 0xe5, 0x1c, 0xc4, 0xdd, 0x63, 0x24, 0xeb, 0x3e, 0x2e, 0xe3, 0xcf, 0x68, + 0x07, 0xa5, 0x81, 0xc5, 0xfe, 0x69, 0xa4, 0xd9, 0x06, 0x74, 0xa1, 0xb0, +}; +static const unsigned char kat1761_nonce[] = { + 0x8f, 0xf0, 0x15, 0x7e, 0xea, 0x81, 0x29, 0x5a, 0xff, 0x85, 0xa6, 0x2f, + 0xc8, 0x7f, 0xd5, 0xfc, +}; +static const unsigned char kat1761_persstr[] = {0}; +static const unsigned char kat1761_entropyinreseed[] = { + 0x01, 0x14, 0x91, 0xb7, 0x65, 0xe4, 0xf7, 0x92, 0x7c, 0x2a, 0xd5, 0x6b, + 0xeb, 0xb1, 0xc5, 0x44, 0x66, 0xce, 0x6a, 0x00, 0x50, 0xde, 0x0b, 0xea, +}; +static const unsigned char kat1761_addinreseed[] = { + 0xc9, 0x46, 0x0a, 0xc8, 0x53, 0x33, 0xd5, 0x83, 0xde, 0xc6, 0x96, 0xf8, + 0x75, 0x32, 0x74, 0xfb, 0x16, 0xed, 0x0e, 0x27, 0x39, 0x34, 0xbd, 0x18, + 0xc8, 0xb9, 0xb8, 0x00, 0xd8, 0x2f, 0x19, 0x16, +}; +static const unsigned char kat1761_addin0[] = { + 0x83, 0x7a, 0x5b, 0x4c, 0x64, 0x96, 0x86, 0x10, 0xcf, 0x67, 0xe1, 0x76, + 0x6b, 0x27, 0x66, 0x54, 0x95, 0xde, 0x9a, 0x79, 0x58, 0xe8, 0x35, 0x91, + 0xaf, 0x8a, 0x18, 0x33, 0x28, 0xf0, 0xc4, 0x27, +}; +static const unsigned char kat1761_addin1[] = { + 0x6a, 0x22, 0x17, 0xa8, 0x65, 0xf9, 0x79, 0xa7, 0x50, 0xb4, 0xb5, 0x64, + 0xb9, 0xd7, 0x2e, 0x8e, 0xf9, 0xa0, 0x51, 0xcf, 0x26, 0x63, 0x9c, 0xfa, + 0xc8, 0x3b, 0x0d, 0x19, 0x65, 0xfa, 0x2b, 0xf5, +}; +static const unsigned char kat1761_retbits[] = { + 0xe2, 0x5f, 0x04, 0xc5, 0x06, 0xea, 0xad, 0x2c, 0x39, 0xe2, 0xa1, 0x28, + 0x58, 0xa3, 0xbf, 0xa5, 0x46, 0x4c, 0xf4, 0xdf, 0x77, 0x13, 0x7b, 0x82, + 0x86, 0xa3, 0x33, 0x74, 0xeb, 0x67, 0x65, 0xd7, 0x45, 0xc9, 0x34, 0xaf, + 0xa0, 0x60, 0x7d, 0xfe, 0x46, 0x00, 0xe2, 0x8b, 0x69, 0x23, 0x0d, 0x28, + 0xa8, 0xcb, 0x93, 0x1d, 0xfc, 0x3d, 0x43, 0x49, 0x77, 0xb7, 0xa8, 0x59, + 0xa8, 0x6d, 0x2d, 0x74, +}; +static const struct drbg_kat_pr_false kat1761_t = { + 5, kat1761_entropyin, kat1761_nonce, kat1761_persstr, + kat1761_entropyinreseed, kat1761_addinreseed, kat1761_addin0, + kat1761_addin1, kat1761_retbits +}; +static const struct drbg_kat kat1761 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1761_t +}; + +static const unsigned char kat1762_entropyin[] = { + 0x1b, 0x9f, 0xc4, 0xe1, 0x5d, 0x6d, 0xfa, 0x69, 0x18, 0x4e, 0x90, 0x5d, + 0xc5, 0x7d, 0x84, 0x9d, 0x79, 0x16, 0x28, 0x68, 0x3c, 0xc7, 0x1c, 0x07, +}; +static const unsigned char kat1762_nonce[] = { + 0xa5, 0x90, 0x29, 0x65, 0xd4, 0x4b, 0x0e, 0x3c, 0x63, 0x92, 0xd9, 0x6f, + 0x2f, 0x0f, 0xae, 0xe6, +}; +static const unsigned char kat1762_persstr[] = {0}; +static const unsigned char kat1762_entropyinreseed[] = { + 0xd9, 0x88, 0xc4, 0x56, 0x1c, 0x9f, 0x6d, 0x8a, 0xde, 0xc7, 0x2e, 0xa5, + 0xab, 0xd3, 0x70, 0x73, 0x8e, 0x82, 0xd8, 0xc7, 0x7b, 0x77, 0xa7, 0x96, +}; +static const unsigned char kat1762_addinreseed[] = { + 0x42, 0x78, 0x6f, 0x5c, 0x79, 0xee, 0x03, 0xe3, 0x9a, 0x7a, 0x7f, 0xf0, + 0x1c, 0x2d, 0x20, 0xe2, 0xa6, 0xd5, 0xae, 0xf7, 0xc7, 0xb1, 0x61, 0xbc, + 0x2a, 0xd1, 0xbc, 0x10, 0xec, 0xe7, 0xd4, 0x51, +}; +static const unsigned char kat1762_addin0[] = { + 0x82, 0x19, 0xb7, 0xc3, 0x00, 0x96, 0xfb, 0x4e, 0xee, 0x43, 0x3c, 0x09, + 0xa6, 0x1c, 0x21, 0xef, 0xf9, 0xd2, 0x9f, 0xb5, 0x6d, 0x4a, 0x28, 0xa9, + 0xe6, 0xdf, 0xac, 0x50, 0xf1, 0x56, 0x42, 0x06, +}; +static const unsigned char kat1762_addin1[] = { + 0x14, 0x87, 0x0b, 0x12, 0x35, 0xe1, 0xcb, 0x17, 0x8e, 0xe7, 0x29, 0xae, + 0x45, 0x5e, 0x05, 0xde, 0x8c, 0xab, 0xf7, 0xb3, 0x1b, 0xf7, 0xc5, 0xa8, + 0xff, 0x6a, 0xc0, 0x5c, 0xed, 0x3c, 0x89, 0x38, +}; +static const unsigned char kat1762_retbits[] = { + 0xcc, 0x73, 0x86, 0xb1, 0xbd, 0xd1, 0x86, 0x92, 0x32, 0xfb, 0x94, 0x8d, + 0x89, 0x9d, 0xbb, 0x0a, 0xf6, 0x63, 0x33, 0xd0, 0x7b, 0x23, 0xed, 0x3d, + 0x10, 0x5c, 0x37, 0x7d, 0x7a, 0x15, 0xd5, 0xbe, 0x67, 0x8c, 0x7c, 0x53, + 0x0c, 0x79, 0xad, 0x52, 0xc2, 0xda, 0xd5, 0xa3, 0x5a, 0x2e, 0xac, 0x31, + 0xa9, 0x74, 0x97, 0x64, 0x39, 0x92, 0xb4, 0xa5, 0x81, 0xe7, 0x71, 0x7d, + 0xe8, 0xbc, 0x4b, 0xde, +}; +static const struct drbg_kat_pr_false kat1762_t = { + 6, kat1762_entropyin, kat1762_nonce, kat1762_persstr, + kat1762_entropyinreseed, kat1762_addinreseed, kat1762_addin0, + kat1762_addin1, kat1762_retbits +}; +static const struct drbg_kat kat1762 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1762_t +}; + +static const unsigned char kat1763_entropyin[] = { + 0x50, 0xaa, 0x97, 0x94, 0x21, 0xc7, 0xcc, 0xd4, 0x2d, 0x6f, 0x05, 0x52, + 0x50, 0x92, 0x81, 0x2f, 0xa6, 0x10, 0xde, 0x82, 0x33, 0x55, 0x7d, 0x1a, +}; +static const unsigned char kat1763_nonce[] = { + 0x57, 0x5b, 0xfb, 0x8f, 0x5c, 0x47, 0x24, 0x98, 0xeb, 0x16, 0xb0, 0xb9, + 0xe0, 0xb9, 0xad, 0x10, +}; +static const unsigned char kat1763_persstr[] = {0}; +static const unsigned char kat1763_entropyinreseed[] = { + 0x83, 0x14, 0xc1, 0xb3, 0x0b, 0x34, 0x16, 0xb3, 0xd1, 0x38, 0xbb, 0xf2, + 0xf6, 0x90, 0xd0, 0xe4, 0x5c, 0x06, 0x15, 0x0d, 0x35, 0x35, 0xcb, 0x4d, +}; +static const unsigned char kat1763_addinreseed[] = { + 0x41, 0x98, 0x1c, 0xc9, 0x77, 0xe7, 0x27, 0x6c, 0xf6, 0x9b, 0x55, 0x81, + 0x4c, 0xb0, 0x66, 0x52, 0x8c, 0x90, 0x6d, 0xc2, 0x64, 0xf6, 0xf8, 0x56, + 0x3f, 0xaa, 0x5f, 0xf0, 0xd4, 0xdd, 0x4e, 0x0a, +}; +static const unsigned char kat1763_addin0[] = { + 0x3d, 0x46, 0x50, 0xb5, 0xf1, 0x9c, 0xf1, 0x9f, 0x3c, 0x03, 0x7a, 0x11, + 0x0d, 0x64, 0xa2, 0xdf, 0x4e, 0x81, 0xed, 0x7a, 0xd6, 0xcc, 0x47, 0x8b, + 0x83, 0x63, 0x74, 0xba, 0x9b, 0x0a, 0x15, 0x91, +}; +static const unsigned char kat1763_addin1[] = { + 0x52, 0x12, 0x12, 0x55, 0x7a, 0x42, 0xc6, 0x54, 0xd8, 0xe2, 0x8b, 0x39, + 0x95, 0xf0, 0x35, 0xbd, 0x57, 0xe8, 0xc5, 0x7f, 0xcd, 0xa6, 0xb8, 0x9d, + 0xb6, 0x0d, 0xd2, 0xcd, 0x11, 0xdf, 0x9b, 0xf9, +}; +static const unsigned char kat1763_retbits[] = { + 0x87, 0xf9, 0x83, 0x23, 0x46, 0x03, 0xff, 0xdc, 0xbd, 0x61, 0x7d, 0x62, + 0xd2, 0x3c, 0x5f, 0x9d, 0x40, 0xcc, 0xb5, 0xe2, 0xcd, 0x55, 0x73, 0x9d, + 0x99, 0x4b, 0x09, 0x59, 0x1e, 0x63, 0x36, 0xd1, 0xa3, 0xec, 0x92, 0xec, + 0x56, 0x07, 0x4e, 0xe3, 0xfd, 0x78, 0x3d, 0x56, 0x99, 0xe5, 0x2d, 0xa0, + 0x9e, 0xf2, 0x00, 0x2a, 0xe8, 0xf2, 0xf8, 0x53, 0x64, 0x7a, 0x6b, 0xd9, + 0xff, 0xf6, 0xa0, 0xe5, +}; +static const struct drbg_kat_pr_false kat1763_t = { + 7, kat1763_entropyin, kat1763_nonce, kat1763_persstr, + kat1763_entropyinreseed, kat1763_addinreseed, kat1763_addin0, + kat1763_addin1, kat1763_retbits +}; +static const struct drbg_kat kat1763 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1763_t +}; + +static const unsigned char kat1764_entropyin[] = { + 0xa5, 0x3e, 0x5d, 0xaf, 0x4a, 0x15, 0x61, 0x8a, 0x2b, 0xa5, 0x9c, 0xa1, + 0xd3, 0xbd, 0x9a, 0xbd, 0x75, 0xd5, 0x85, 0x98, 0xe4, 0x58, 0xae, 0x7d, +}; +static const unsigned char kat1764_nonce[] = { + 0x33, 0x8c, 0xd8, 0x66, 0xb0, 0xc4, 0x05, 0x51, 0x29, 0x47, 0xf4, 0x10, + 0x2f, 0x0e, 0x3d, 0x27, +}; +static const unsigned char kat1764_persstr[] = {0}; +static const unsigned char kat1764_entropyinreseed[] = { + 0x42, 0xce, 0x3e, 0x84, 0xe8, 0xe8, 0xdc, 0x92, 0xd3, 0x94, 0x8c, 0xaa, + 0x0a, 0x71, 0x24, 0x84, 0x92, 0xf1, 0x6e, 0xa6, 0xc5, 0x4a, 0x44, 0x4d, +}; +static const unsigned char kat1764_addinreseed[] = { + 0x01, 0x00, 0x8e, 0xc0, 0xcc, 0xe1, 0x7f, 0x9f, 0x9f, 0x60, 0x0a, 0xd6, + 0x82, 0xf0, 0xda, 0xea, 0x81, 0xec, 0x4e, 0x5f, 0xad, 0x23, 0xad, 0xbd, + 0x45, 0xee, 0x95, 0x4d, 0x7c, 0xe8, 0x44, 0x9a, +}; +static const unsigned char kat1764_addin0[] = { + 0x69, 0x42, 0x40, 0x03, 0xf0, 0x8f, 0x5d, 0xcb, 0x73, 0x66, 0xe7, 0x40, + 0x24, 0x64, 0x8d, 0x9b, 0xc0, 0x1a, 0x57, 0x08, 0xbf, 0x15, 0x57, 0x4b, + 0x81, 0x67, 0x94, 0x30, 0x27, 0x69, 0x75, 0x55, +}; +static const unsigned char kat1764_addin1[] = { + 0x81, 0x31, 0x40, 0x6a, 0x80, 0x3b, 0xd4, 0x4f, 0xed, 0xb1, 0xa4, 0x51, + 0x3e, 0x4c, 0xc0, 0xdd, 0x19, 0xc0, 0xe1, 0xae, 0xf2, 0xcd, 0x91, 0xd7, + 0x7f, 0x91, 0x35, 0x9a, 0xd6, 0x65, 0xe2, 0xb7, +}; +static const unsigned char kat1764_retbits[] = { + 0x82, 0x48, 0x56, 0xa7, 0x29, 0x08, 0x28, 0x27, 0x3f, 0xaa, 0x88, 0x58, + 0x5c, 0x17, 0xd6, 0xc6, 0xe9, 0x39, 0x5e, 0x6a, 0xd9, 0xeb, 0x85, 0x81, + 0xfc, 0xbe, 0x15, 0xd2, 0x6b, 0x11, 0xd1, 0xd7, 0x8e, 0xec, 0xbf, 0x9a, + 0x98, 0xa5, 0x6a, 0xf4, 0x78, 0x45, 0xac, 0x46, 0xd7, 0x3e, 0xa6, 0xdc, + 0x47, 0x54, 0xb5, 0x96, 0xdc, 0x97, 0xc2, 0x64, 0xc4, 0xab, 0xc4, 0x02, + 0x91, 0xfa, 0x26, 0xe0, +}; +static const struct drbg_kat_pr_false kat1764_t = { + 8, kat1764_entropyin, kat1764_nonce, kat1764_persstr, + kat1764_entropyinreseed, kat1764_addinreseed, kat1764_addin0, + kat1764_addin1, kat1764_retbits +}; +static const struct drbg_kat kat1764 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1764_t +}; + +static const unsigned char kat1765_entropyin[] = { + 0x1c, 0x1e, 0x9c, 0xcf, 0x0b, 0x05, 0xa9, 0x31, 0xca, 0xd4, 0xd8, 0xa0, + 0x26, 0xd0, 0x31, 0x36, 0x46, 0x35, 0xa3, 0x85, 0x62, 0x62, 0xb7, 0x5a, +}; +static const unsigned char kat1765_nonce[] = { + 0x61, 0xe9, 0x48, 0x36, 0x5f, 0x59, 0x0e, 0xc3, 0x63, 0x07, 0x5c, 0xb6, + 0xac, 0xc1, 0x40, 0xf3, +}; +static const unsigned char kat1765_persstr[] = {0}; +static const unsigned char kat1765_entropyinreseed[] = { + 0x0d, 0xa4, 0xb5, 0xe8, 0x40, 0x9b, 0xcc, 0x2e, 0xe6, 0x54, 0x5e, 0xee, + 0xb6, 0xe9, 0xd7, 0x85, 0x70, 0x09, 0x23, 0xc0, 0x34, 0x04, 0xd6, 0x5b, +}; +static const unsigned char kat1765_addinreseed[] = { + 0x10, 0x06, 0x44, 0x0f, 0x91, 0x37, 0xe5, 0x75, 0x22, 0x88, 0x7c, 0x93, + 0xe7, 0x09, 0x28, 0x81, 0xb7, 0x87, 0x56, 0xfe, 0xa2, 0x28, 0x57, 0xd6, + 0x9c, 0xc1, 0x55, 0xb0, 0xa8, 0xfb, 0x7d, 0xd8, +}; +static const unsigned char kat1765_addin0[] = { + 0x7d, 0xe4, 0xc7, 0x57, 0x59, 0x2a, 0xb9, 0x9a, 0x0f, 0x0a, 0x9e, 0x94, + 0xa5, 0x1f, 0xc2, 0xd5, 0xde, 0x57, 0x28, 0x02, 0x85, 0xf0, 0xf2, 0xa3, + 0x68, 0x81, 0x4c, 0x47, 0x05, 0xfd, 0x25, 0x04, +}; +static const unsigned char kat1765_addin1[] = { + 0x11, 0xc9, 0x46, 0x8c, 0x28, 0x6e, 0x66, 0x39, 0x53, 0x6d, 0x51, 0x3d, + 0x13, 0x68, 0xce, 0x25, 0x25, 0x3f, 0x0e, 0x60, 0x35, 0x7e, 0x45, 0x07, + 0x73, 0x38, 0x5b, 0xd8, 0x7c, 0x32, 0x49, 0x58, +}; +static const unsigned char kat1765_retbits[] = { + 0x37, 0x12, 0xfa, 0xd0, 0x6f, 0xbb, 0xe3, 0x9c, 0xb2, 0xca, 0x2e, 0x85, + 0x36, 0xee, 0x10, 0x61, 0xb6, 0xed, 0x74, 0x36, 0x2d, 0x8c, 0xc6, 0xcf, + 0xcc, 0xfd, 0x49, 0x40, 0x1e, 0x21, 0x0d, 0x10, 0x13, 0xee, 0x0d, 0x21, + 0x28, 0xe9, 0x90, 0x2c, 0xc3, 0x43, 0xed, 0xe3, 0x22, 0xd9, 0xe4, 0xcb, + 0x56, 0x21, 0xc6, 0xb3, 0xad, 0x27, 0xb0, 0xca, 0x8d, 0x27, 0xa1, 0x8d, + 0x31, 0x39, 0xd1, 0x53, +}; +static const struct drbg_kat_pr_false kat1765_t = { + 9, kat1765_entropyin, kat1765_nonce, kat1765_persstr, + kat1765_entropyinreseed, kat1765_addinreseed, kat1765_addin0, + kat1765_addin1, kat1765_retbits +}; +static const struct drbg_kat kat1765 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1765_t +}; + +static const unsigned char kat1766_entropyin[] = { + 0xa1, 0x5b, 0x7d, 0xab, 0x42, 0xf6, 0x30, 0x4c, 0xbe, 0x20, 0x1c, 0x67, + 0xee, 0xf5, 0x2c, 0xb7, 0x2b, 0x92, 0xf7, 0xdd, 0xe9, 0xcd, 0xe9, 0xf5, +}; +static const unsigned char kat1766_nonce[] = { + 0x3d, 0x62, 0x16, 0xc7, 0x78, 0xfa, 0x79, 0x63, 0x12, 0x28, 0x1e, 0xb7, + 0x8e, 0x36, 0x0d, 0xfc, +}; +static const unsigned char kat1766_persstr[] = {0}; +static const unsigned char kat1766_entropyinreseed[] = { + 0x86, 0xc5, 0x9d, 0x10, 0x8e, 0x18, 0xa0, 0x72, 0xd1, 0x3c, 0x83, 0x6e, + 0x70, 0xf9, 0xa3, 0xb5, 0x03, 0x5d, 0x4a, 0x80, 0xa7, 0x38, 0x4f, 0x15, +}; +static const unsigned char kat1766_addinreseed[] = { + 0xa6, 0x1d, 0x90, 0xe6, 0xa9, 0x4c, 0x09, 0x6e, 0x41, 0xb4, 0xa9, 0xb6, + 0x9a, 0x1d, 0xab, 0xa4, 0xe5, 0xf5, 0x30, 0xa5, 0x3d, 0xa5, 0x85, 0x10, + 0xe4, 0x5a, 0xdc, 0x36, 0x1b, 0xe9, 0x64, 0x00, +}; +static const unsigned char kat1766_addin0[] = { + 0x92, 0xd3, 0x74, 0xff, 0xd3, 0x69, 0xa7, 0x1b, 0x9a, 0x96, 0x3b, 0xb8, + 0x4c, 0x9a, 0x57, 0xbc, 0xbd, 0x02, 0x21, 0x53, 0x17, 0x06, 0x0a, 0xa1, + 0xba, 0x6f, 0x8d, 0xb7, 0xf8, 0xa8, 0x89, 0xd7, +}; +static const unsigned char kat1766_addin1[] = { + 0x1b, 0x36, 0x7d, 0x51, 0xc9, 0x2f, 0xad, 0x59, 0xc7, 0xe7, 0x6b, 0xb1, + 0xeb, 0x67, 0xb9, 0x86, 0xfe, 0x2b, 0x4b, 0x3d, 0xd7, 0xe3, 0xad, 0x6c, + 0xc7, 0x36, 0x41, 0x2a, 0x90, 0x18, 0x79, 0x0f, +}; +static const unsigned char kat1766_retbits[] = { + 0x83, 0x14, 0xc9, 0x92, 0xf9, 0x78, 0x65, 0x7d, 0xcc, 0xb0, 0xe8, 0x58, + 0x86, 0xb6, 0x71, 0xe2, 0xef, 0xfe, 0x8a, 0x62, 0x76, 0xd2, 0x4d, 0xd4, + 0xa8, 0x6b, 0xfc, 0x4c, 0xa1, 0x7e, 0x43, 0xdb, 0xc5, 0xcf, 0xc0, 0x6c, + 0x59, 0xd5, 0x21, 0xc2, 0xd9, 0x1a, 0xbc, 0x13, 0xe7, 0xec, 0x7e, 0x99, + 0x98, 0x3f, 0x2f, 0xdd, 0x12, 0x31, 0x94, 0x97, 0x1b, 0x1d, 0x52, 0xbd, + 0x7e, 0xf1, 0x52, 0xde, +}; +static const struct drbg_kat_pr_false kat1766_t = { + 10, kat1766_entropyin, kat1766_nonce, kat1766_persstr, + kat1766_entropyinreseed, kat1766_addinreseed, kat1766_addin0, + kat1766_addin1, kat1766_retbits +}; +static const struct drbg_kat kat1766 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1766_t +}; + +static const unsigned char kat1767_entropyin[] = { + 0xf0, 0x24, 0xbb, 0x65, 0x54, 0xa3, 0x1a, 0x62, 0x28, 0x1e, 0x06, 0x31, + 0x4f, 0xd4, 0x67, 0x11, 0x28, 0x68, 0xcf, 0xc1, 0x8d, 0x39, 0x50, 0x80, +}; +static const unsigned char kat1767_nonce[] = { + 0xbf, 0x8e, 0x1a, 0xf5, 0xcd, 0x96, 0x31, 0x53, 0x62, 0xf8, 0x2b, 0xe8, + 0x2e, 0x4b, 0x88, 0x7a, +}; +static const unsigned char kat1767_persstr[] = {0}; +static const unsigned char kat1767_entropyinreseed[] = { + 0x94, 0x62, 0x3e, 0x66, 0x06, 0x5f, 0x15, 0x28, 0x01, 0x94, 0x91, 0x89, + 0x3c, 0x8c, 0x5d, 0x23, 0x46, 0x4a, 0x97, 0x7c, 0x7f, 0x30, 0x21, 0x8d, +}; +static const unsigned char kat1767_addinreseed[] = { + 0x5d, 0x0a, 0x55, 0x11, 0xca, 0x4f, 0x36, 0xd0, 0xb0, 0xfc, 0xce, 0x0f, + 0xcd, 0x42, 0x1f, 0x95, 0xff, 0x65, 0x90, 0x12, 0xd6, 0x67, 0x4a, 0xd8, + 0xe1, 0x97, 0xb7, 0x02, 0xf3, 0x58, 0x8e, 0x91, +}; +static const unsigned char kat1767_addin0[] = { + 0x6b, 0x9c, 0xc5, 0x97, 0x17, 0x5c, 0x2c, 0x0a, 0x3f, 0xf4, 0x85, 0x12, + 0x2f, 0x6e, 0x12, 0x49, 0x35, 0xf2, 0x3b, 0x48, 0xad, 0xbf, 0x0a, 0xb2, + 0x97, 0xf1, 0xb2, 0x7f, 0xc1, 0x1e, 0x99, 0xe9, +}; +static const unsigned char kat1767_addin1[] = { + 0x08, 0x96, 0x7a, 0x8d, 0xcd, 0xcf, 0x63, 0x27, 0x5d, 0x79, 0x91, 0x52, + 0x17, 0x8a, 0x75, 0x2c, 0x79, 0x28, 0xa4, 0x30, 0x7f, 0x5c, 0xbe, 0x7c, + 0x01, 0xbb, 0x5b, 0xa6, 0x07, 0xe5, 0xe6, 0xc9, +}; +static const unsigned char kat1767_retbits[] = { + 0xe0, 0x2b, 0xe5, 0x57, 0xa6, 0xdc, 0x83, 0x49, 0x72, 0xf3, 0xde, 0x03, + 0x22, 0xb0, 0x71, 0xe3, 0x5d, 0x79, 0x25, 0xfe, 0x37, 0x4e, 0x85, 0x4c, + 0xdb, 0xaa, 0x64, 0x89, 0x28, 0x27, 0xb8, 0x64, 0x45, 0x54, 0x5d, 0xf6, + 0xcc, 0xcc, 0x8f, 0x53, 0x43, 0xb2, 0x11, 0xe0, 0x25, 0xc9, 0xea, 0x03, + 0xd8, 0x0e, 0xf2, 0x83, 0x7f, 0xf0, 0x6f, 0x4f, 0x20, 0x6a, 0xa2, 0x26, + 0x25, 0xb9, 0xab, 0xf7, +}; +static const struct drbg_kat_pr_false kat1767_t = { + 11, kat1767_entropyin, kat1767_nonce, kat1767_persstr, + kat1767_entropyinreseed, kat1767_addinreseed, kat1767_addin0, + kat1767_addin1, kat1767_retbits +}; +static const struct drbg_kat kat1767 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1767_t +}; + +static const unsigned char kat1768_entropyin[] = { + 0x82, 0x0a, 0xd7, 0x4a, 0x3c, 0x3c, 0x10, 0xb5, 0x64, 0x52, 0xdf, 0x57, + 0xbf, 0xea, 0xfb, 0xff, 0xd0, 0x9f, 0x1a, 0xd0, 0x21, 0x65, 0x2a, 0x9b, +}; +static const unsigned char kat1768_nonce[] = { + 0xaf, 0xb7, 0x68, 0xe3, 0x56, 0x78, 0xb6, 0x7d, 0xee, 0xcc, 0xd8, 0x83, + 0xa4, 0x3e, 0x2c, 0xb2, +}; +static const unsigned char kat1768_persstr[] = {0}; +static const unsigned char kat1768_entropyinreseed[] = { + 0x3f, 0xe9, 0x80, 0x72, 0xd4, 0x21, 0x3d, 0x47, 0x51, 0x7e, 0xc8, 0x26, + 0xab, 0x9a, 0x4b, 0x5f, 0xff, 0x39, 0xe8, 0x98, 0x70, 0x22, 0x30, 0xb2, +}; +static const unsigned char kat1768_addinreseed[] = { + 0x36, 0x68, 0x7f, 0xd7, 0x4e, 0xcf, 0xbc, 0x15, 0xbc, 0x9f, 0x40, 0x07, + 0xd2, 0xa3, 0x60, 0xdb, 0xcc, 0x4f, 0x35, 0x5e, 0xe9, 0xbc, 0xf7, 0xec, + 0x4c, 0xf1, 0xaf, 0xdd, 0xbd, 0xca, 0x07, 0x38, +}; +static const unsigned char kat1768_addin0[] = { + 0x07, 0x02, 0xe7, 0x82, 0xde, 0xf9, 0x48, 0xc2, 0x77, 0x8b, 0xad, 0xb2, + 0xf6, 0xa4, 0xb2, 0xea, 0x77, 0x32, 0x0e, 0x82, 0xb3, 0xed, 0xc2, 0x17, + 0x4d, 0xea, 0xa9, 0xcb, 0x49, 0x37, 0x24, 0x48, +}; +static const unsigned char kat1768_addin1[] = { + 0x31, 0x59, 0xbb, 0x5c, 0x19, 0x63, 0x24, 0x3a, 0x58, 0xe5, 0x3d, 0x23, + 0x6e, 0x09, 0xbe, 0x05, 0x58, 0xa5, 0x48, 0x71, 0x75, 0x1d, 0x46, 0x04, + 0xba, 0x7e, 0x3f, 0xb2, 0xe3, 0xf3, 0x82, 0xb7, +}; +static const unsigned char kat1768_retbits[] = { + 0xcf, 0x81, 0x75, 0x10, 0xcd, 0x62, 0xd0, 0x88, 0xad, 0x84, 0x80, 0xdc, + 0xc0, 0x22, 0x38, 0xd3, 0xf9, 0x43, 0xb4, 0x29, 0xf9, 0x1e, 0x4a, 0xdd, + 0x15, 0xd8, 0x7b, 0x4c, 0xb2, 0x3a, 0xfa, 0x3b, 0x5e, 0xa9, 0x26, 0xea, + 0xf7, 0xc0, 0x1f, 0x4e, 0xbf, 0xa8, 0x5d, 0xe1, 0xbc, 0x98, 0x30, 0x7c, + 0x49, 0x63, 0xc8, 0x18, 0x9e, 0xbe, 0xf4, 0x6a, 0x8b, 0xef, 0x6e, 0xa1, + 0xaa, 0x14, 0xb8, 0x33, +}; +static const struct drbg_kat_pr_false kat1768_t = { + 12, kat1768_entropyin, kat1768_nonce, kat1768_persstr, + kat1768_entropyinreseed, kat1768_addinreseed, kat1768_addin0, + kat1768_addin1, kat1768_retbits +}; +static const struct drbg_kat kat1768 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1768_t +}; + +static const unsigned char kat1769_entropyin[] = { + 0xbf, 0x03, 0x39, 0x77, 0x4a, 0x1d, 0x0b, 0x64, 0xa2, 0x4f, 0xfa, 0x11, + 0x2c, 0x6d, 0x73, 0x07, 0x46, 0xb7, 0x16, 0x7a, 0x64, 0x95, 0xc6, 0xe8, +}; +static const unsigned char kat1769_nonce[] = { + 0xcc, 0x9c, 0xec, 0xf9, 0x04, 0xe8, 0x73, 0xfa, 0x41, 0xbf, 0x51, 0x65, + 0x63, 0x34, 0x40, 0x9a, +}; +static const unsigned char kat1769_persstr[] = {0}; +static const unsigned char kat1769_entropyinreseed[] = { + 0x4d, 0x4e, 0x0e, 0x0c, 0xe3, 0x3b, 0xd3, 0x63, 0x3b, 0x33, 0x2c, 0xb1, + 0x58, 0xeb, 0xf9, 0x14, 0xc1, 0x78, 0xff, 0x19, 0x5c, 0x80, 0x29, 0x2b, +}; +static const unsigned char kat1769_addinreseed[] = { + 0x2c, 0x62, 0xee, 0x3c, 0x5a, 0x44, 0xc1, 0x1a, 0xaa, 0x31, 0xa0, 0x04, + 0xea, 0x11, 0x75, 0xee, 0x4f, 0x8e, 0x43, 0x21, 0x44, 0x41, 0x8b, 0x8a, + 0x83, 0xf3, 0x79, 0xae, 0x07, 0x73, 0x9a, 0x5c, +}; +static const unsigned char kat1769_addin0[] = { + 0x4b, 0xa7, 0xc3, 0x60, 0x34, 0x3d, 0x98, 0xed, 0xa3, 0xa3, 0x15, 0x84, + 0x3e, 0xf6, 0x38, 0x79, 0x5a, 0xfd, 0x99, 0xb8, 0x52, 0x7c, 0x07, 0xb5, + 0x67, 0xee, 0xd4, 0xd5, 0x2b, 0x3a, 0xa0, 0x46, +}; +static const unsigned char kat1769_addin1[] = { + 0x38, 0x0a, 0x11, 0x72, 0xc4, 0x38, 0xc5, 0x54, 0x6e, 0x3a, 0xbc, 0xb0, + 0xe9, 0xe3, 0xff, 0x68, 0x51, 0x96, 0x72, 0x7e, 0xf6, 0x7c, 0x62, 0xd1, + 0xe5, 0x17, 0xdd, 0x55, 0x5d, 0xfe, 0x46, 0x28, +}; +static const unsigned char kat1769_retbits[] = { + 0xd3, 0xf2, 0xa7, 0xbc, 0x68, 0x02, 0x3d, 0xdf, 0x2b, 0xd5, 0x75, 0x76, + 0x76, 0x48, 0xb0, 0x8e, 0x08, 0xe6, 0x65, 0x89, 0x0c, 0xf5, 0xba, 0xef, + 0x71, 0x7b, 0x60, 0x91, 0xbd, 0xa5, 0xa3, 0x2b, 0xc1, 0x9d, 0xae, 0x9c, + 0xa9, 0x64, 0x2a, 0xe6, 0x0f, 0xd4, 0x16, 0x01, 0x1b, 0xe8, 0x3c, 0x92, + 0x67, 0x66, 0xe3, 0x6c, 0x9a, 0xff, 0x61, 0x66, 0xfe, 0xd3, 0xa6, 0xb2, + 0x7d, 0xa5, 0xb3, 0x1b, +}; +static const struct drbg_kat_pr_false kat1769_t = { + 13, kat1769_entropyin, kat1769_nonce, kat1769_persstr, + kat1769_entropyinreseed, kat1769_addinreseed, kat1769_addin0, + kat1769_addin1, kat1769_retbits +}; +static const struct drbg_kat kat1769 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1769_t +}; + +static const unsigned char kat1770_entropyin[] = { + 0xd5, 0x31, 0xfd, 0x35, 0xf3, 0x1c, 0xb0, 0xfd, 0xd6, 0x69, 0x20, 0x55, + 0x41, 0x4c, 0x69, 0xe9, 0xa3, 0x3f, 0x8d, 0xdd, 0x69, 0x76, 0x46, 0x79, +}; +static const unsigned char kat1770_nonce[] = { + 0x90, 0xb2, 0x85, 0xdd, 0xe8, 0x1d, 0xac, 0x32, 0x39, 0x9b, 0x10, 0xa2, + 0x60, 0x91, 0x8a, 0x57, +}; +static const unsigned char kat1770_persstr[] = {0}; +static const unsigned char kat1770_entropyinreseed[] = { + 0xc1, 0x3a, 0x65, 0x16, 0x18, 0xfe, 0x8b, 0x94, 0x6d, 0xd3, 0xe4, 0x72, + 0x74, 0x16, 0xdd, 0x78, 0x10, 0x48, 0x21, 0x4f, 0x4e, 0x65, 0xbf, 0x05, +}; +static const unsigned char kat1770_addinreseed[] = { + 0x5d, 0x38, 0x50, 0x72, 0xd2, 0x50, 0x18, 0xf3, 0x57, 0xc8, 0x25, 0x5c, + 0x33, 0x0c, 0xc5, 0xac, 0x3c, 0x49, 0x00, 0x23, 0x23, 0x2d, 0x6b, 0x42, + 0x30, 0x0c, 0x86, 0x8d, 0xdb, 0xb1, 0x8b, 0xa7, +}; +static const unsigned char kat1770_addin0[] = { + 0x84, 0x3b, 0xdd, 0x12, 0x4e, 0x61, 0x0e, 0x6d, 0x4a, 0x8b, 0x8a, 0x57, + 0x0b, 0x6e, 0xaa, 0xa4, 0x20, 0x8a, 0xc4, 0xc9, 0x0a, 0x63, 0x46, 0xae, + 0xc5, 0x68, 0xbc, 0xb4, 0x0e, 0x7e, 0xfd, 0x9c, +}; +static const unsigned char kat1770_addin1[] = { + 0xae, 0xc9, 0x86, 0x64, 0xda, 0xd6, 0x63, 0x48, 0x33, 0xe2, 0x77, 0x81, + 0xc6, 0x26, 0x41, 0xf6, 0x74, 0x9c, 0xce, 0xbb, 0x40, 0x7a, 0xc2, 0xfa, + 0x04, 0x06, 0x3b, 0x47, 0xd1, 0x87, 0xc6, 0xa1, +}; +static const unsigned char kat1770_retbits[] = { + 0xa4, 0x97, 0x49, 0x7e, 0x07, 0x22, 0x35, 0x13, 0xb6, 0xde, 0xcd, 0xcb, + 0x3c, 0x1c, 0xa6, 0x20, 0x43, 0xda, 0x0b, 0x2d, 0x65, 0xa1, 0x31, 0x6a, + 0x5d, 0x24, 0x5f, 0x61, 0x70, 0xb2, 0x7b, 0x08, 0x04, 0x0c, 0x0c, 0xbd, + 0xcc, 0x59, 0x6e, 0x0e, 0xeb, 0x8f, 0x0f, 0xb8, 0xf3, 0x90, 0x7a, 0x57, + 0xf4, 0x1c, 0xfe, 0xa1, 0xe0, 0x4d, 0xed, 0xc4, 0x5c, 0x58, 0x6b, 0xfd, + 0x26, 0xba, 0x45, 0x23, +}; +static const struct drbg_kat_pr_false kat1770_t = { + 14, kat1770_entropyin, kat1770_nonce, kat1770_persstr, + kat1770_entropyinreseed, kat1770_addinreseed, kat1770_addin0, + kat1770_addin1, kat1770_retbits +}; +static const struct drbg_kat kat1770 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1770_t +}; + +static const unsigned char kat1771_entropyin[] = { + 0xa7, 0x11, 0x8c, 0x15, 0x5d, 0x69, 0x70, 0x55, 0x19, 0xf1, 0xa5, 0x6f, + 0x3f, 0x52, 0x4e, 0xfc, 0xb3, 0x2a, 0xeb, 0x32, 0xa9, 0x8a, 0xe8, 0x1a, +}; +static const unsigned char kat1771_nonce[] = { + 0x02, 0x07, 0xf3, 0x53, 0x4f, 0x11, 0x8c, 0x71, 0xcc, 0x11, 0xf1, 0x81, + 0xf5, 0xc6, 0xfc, 0x0f, +}; +static const unsigned char kat1771_persstr[] = { + 0x8d, 0x11, 0x49, 0x1c, 0x83, 0xde, 0xde, 0x01, 0x2f, 0x27, 0x1c, 0x26, + 0x3f, 0x8d, 0x42, 0x46, 0xc3, 0xef, 0xdf, 0xdd, 0x28, 0x87, 0x10, 0xc6, + 0x7e, 0x97, 0x9f, 0x4f, 0xbb, 0xc8, 0x64, 0xcd, +}; +static const unsigned char kat1771_entropyinreseed[] = { + 0x66, 0xab, 0xef, 0x82, 0xf7, 0x94, 0xf3, 0x5e, 0xd9, 0x42, 0x82, 0xde, + 0xef, 0x0d, 0xfc, 0x22, 0x8c, 0xa5, 0xec, 0x83, 0x25, 0x7e, 0x81, 0xd7, +}; +static const unsigned char kat1771_addinreseed[] = {0}; +static const unsigned char kat1771_addin0[] = {0}; +static const unsigned char kat1771_addin1[] = {0}; +static const unsigned char kat1771_retbits[] = { + 0x5d, 0xdd, 0x46, 0xba, 0xf5, 0xc6, 0xa5, 0xe3, 0x09, 0x43, 0xc5, 0xbd, + 0xa1, 0x2f, 0x5d, 0xb8, 0xec, 0x19, 0xc5, 0x37, 0xf1, 0x70, 0x2a, 0xfe, + 0xa3, 0x12, 0x92, 0xb4, 0xa9, 0xa8, 0xd4, 0x25, 0x76, 0x3a, 0x9f, 0x92, + 0xb3, 0x6f, 0x61, 0x6f, 0x4f, 0xfd, 0xb9, 0x16, 0x07, 0x74, 0xd8, 0x77, + 0x64, 0x33, 0xb7, 0xc0, 0x5c, 0x46, 0xfe, 0x6f, 0x66, 0xc4, 0x03, 0x73, + 0x6a, 0x04, 0x4b, 0xe5, +}; +static const struct drbg_kat_pr_false kat1771_t = { + 0, kat1771_entropyin, kat1771_nonce, kat1771_persstr, + kat1771_entropyinreseed, kat1771_addinreseed, kat1771_addin0, + kat1771_addin1, kat1771_retbits +}; +static const struct drbg_kat kat1771 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1771_t +}; + +static const unsigned char kat1772_entropyin[] = { + 0x45, 0xc2, 0xaf, 0x2d, 0x36, 0x15, 0xd4, 0x49, 0x3b, 0xeb, 0x79, 0x22, + 0x0c, 0x2f, 0x78, 0x2b, 0xa5, 0x64, 0x2e, 0xf4, 0x45, 0x47, 0x14, 0x7d, +}; +static const unsigned char kat1772_nonce[] = { + 0xaf, 0x67, 0x2d, 0x64, 0x5a, 0x68, 0x34, 0xd6, 0x56, 0x5f, 0xb3, 0x2d, + 0x15, 0xd4, 0x08, 0x5c, +}; +static const unsigned char kat1772_persstr[] = { + 0x07, 0x58, 0xc2, 0x4f, 0xc9, 0x2f, 0x12, 0x6b, 0x41, 0xea, 0x90, 0x6d, + 0xa2, 0xbd, 0x9e, 0x8f, 0x97, 0x32, 0x70, 0x3b, 0x13, 0xc4, 0xf2, 0x33, + 0x4c, 0x96, 0xfb, 0x55, 0xbd, 0xbe, 0xa9, 0x98, +}; +static const unsigned char kat1772_entropyinreseed[] = { + 0x8d, 0xd1, 0x5d, 0x94, 0x4c, 0xbb, 0xcc, 0x54, 0x13, 0x99, 0x6d, 0x32, + 0x16, 0x20, 0xfa, 0x12, 0x64, 0x78, 0x95, 0x34, 0xbd, 0x22, 0x8f, 0xc1, +}; +static const unsigned char kat1772_addinreseed[] = {0}; +static const unsigned char kat1772_addin0[] = {0}; +static const unsigned char kat1772_addin1[] = {0}; +static const unsigned char kat1772_retbits[] = { + 0x6e, 0x4c, 0x6c, 0xf2, 0x19, 0x2c, 0x95, 0x93, 0x76, 0xe1, 0xd9, 0xf3, + 0xfe, 0xf0, 0xa7, 0x15, 0xa9, 0x93, 0x2b, 0x1c, 0xad, 0x08, 0xb9, 0xc6, + 0x53, 0xe7, 0xb1, 0xac, 0xee, 0x53, 0x13, 0x05, 0x1f, 0xe2, 0xf4, 0x3c, + 0xdb, 0xe0, 0xf1, 0x6a, 0x56, 0x50, 0x39, 0xd5, 0x47, 0xca, 0xb6, 0xde, + 0x9b, 0xbc, 0xbe, 0x3a, 0xf1, 0x2d, 0x90, 0x57, 0xa9, 0xbc, 0x3f, 0xeb, + 0x98, 0xd7, 0x21, 0x0e, +}; +static const struct drbg_kat_pr_false kat1772_t = { + 1, kat1772_entropyin, kat1772_nonce, kat1772_persstr, + kat1772_entropyinreseed, kat1772_addinreseed, kat1772_addin0, + kat1772_addin1, kat1772_retbits +}; +static const struct drbg_kat kat1772 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1772_t +}; + +static const unsigned char kat1773_entropyin[] = { + 0x5f, 0xe4, 0x90, 0x5c, 0x81, 0x0f, 0xcc, 0xff, 0xd3, 0xe2, 0x98, 0x5f, + 0x20, 0x94, 0x69, 0x0d, 0x7a, 0x58, 0x1f, 0x3e, 0x5a, 0xd3, 0x99, 0x71, +}; +static const unsigned char kat1773_nonce[] = { + 0x3a, 0x12, 0xf5, 0xf2, 0xd9, 0x06, 0x27, 0xb9, 0xb7, 0x21, 0x2c, 0x33, + 0xbf, 0xf3, 0xde, 0x9a, +}; +static const unsigned char kat1773_persstr[] = { + 0xb4, 0x59, 0x1d, 0xc7, 0xef, 0x27, 0x05, 0x80, 0x8e, 0xdd, 0xe8, 0x0a, + 0x37, 0xf6, 0x25, 0x70, 0x5e, 0x5b, 0xa2, 0xab, 0x0d, 0x4c, 0x79, 0x4f, + 0x10, 0xac, 0x0d, 0xf6, 0x35, 0x3f, 0x5c, 0x15, +}; +static const unsigned char kat1773_entropyinreseed[] = { + 0x79, 0xd3, 0xf0, 0x84, 0x70, 0xe1, 0x89, 0x09, 0xe8, 0x5a, 0x04, 0x10, + 0xc7, 0xe4, 0x85, 0x5b, 0x15, 0x5c, 0xd5, 0x9b, 0x2c, 0xec, 0xc4, 0x7a, +}; +static const unsigned char kat1773_addinreseed[] = {0}; +static const unsigned char kat1773_addin0[] = {0}; +static const unsigned char kat1773_addin1[] = {0}; +static const unsigned char kat1773_retbits[] = { + 0xc4, 0x97, 0xbe, 0x7e, 0xae, 0x97, 0x4f, 0x2e, 0xd6, 0x5d, 0xfb, 0x0f, + 0x8b, 0x6c, 0xbb, 0x3c, 0xe0, 0x5d, 0xb8, 0x2f, 0xf3, 0x1f, 0x36, 0xf0, + 0x4a, 0xaa, 0x44, 0xe1, 0x9b, 0x08, 0x28, 0xd0, 0xc5, 0xfd, 0xb5, 0x9c, + 0xf5, 0x88, 0x52, 0x9e, 0x5f, 0x7e, 0xb0, 0x48, 0xc4, 0x2d, 0x50, 0x3e, + 0x5b, 0xe7, 0x37, 0x26, 0x57, 0x34, 0x7e, 0x9d, 0x3e, 0xdb, 0xde, 0xd3, + 0x4d, 0xe3, 0x16, 0x33, +}; +static const struct drbg_kat_pr_false kat1773_t = { + 2, kat1773_entropyin, kat1773_nonce, kat1773_persstr, + kat1773_entropyinreseed, kat1773_addinreseed, kat1773_addin0, + kat1773_addin1, kat1773_retbits +}; +static const struct drbg_kat kat1773 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1773_t +}; + +static const unsigned char kat1774_entropyin[] = { + 0x72, 0x23, 0x17, 0x5b, 0x57, 0xe3, 0xe3, 0xa2, 0x2b, 0x95, 0xbe, 0xde, + 0x4b, 0x62, 0xb2, 0x46, 0xee, 0xcb, 0x21, 0x7e, 0xf8, 0x71, 0x47, 0xa4, +}; +static const unsigned char kat1774_nonce[] = { + 0xed, 0x25, 0xc6, 0xf4, 0xc4, 0x87, 0x9f, 0xa9, 0x9f, 0x17, 0x5b, 0x2e, + 0x47, 0x0c, 0x8d, 0xee, +}; +static const unsigned char kat1774_persstr[] = { + 0xad, 0x21, 0xbf, 0x9e, 0x96, 0xa9, 0x1b, 0x56, 0xfe, 0x9b, 0x19, 0x9a, + 0x16, 0xa6, 0x74, 0x88, 0x5a, 0xbf, 0x22, 0x34, 0x83, 0xc7, 0x6c, 0x6c, + 0x27, 0x9e, 0xcb, 0x25, 0x3d, 0xc5, 0x80, 0x0b, +}; +static const unsigned char kat1774_entropyinreseed[] = { + 0x54, 0x4b, 0xdd, 0xff, 0x07, 0xfb, 0x62, 0x46, 0xfe, 0xcf, 0x5a, 0xa4, + 0xec, 0x7a, 0x88, 0x35, 0x0a, 0xfe, 0x27, 0x58, 0x24, 0x0b, 0xc5, 0x58, +}; +static const unsigned char kat1774_addinreseed[] = {0}; +static const unsigned char kat1774_addin0[] = {0}; +static const unsigned char kat1774_addin1[] = {0}; +static const unsigned char kat1774_retbits[] = { + 0x3e, 0x52, 0x22, 0x4e, 0x48, 0x91, 0xa1, 0x7c, 0x10, 0x19, 0xd2, 0x8d, + 0x0c, 0x90, 0xb0, 0x36, 0x59, 0x28, 0x66, 0x0f, 0x8a, 0xf1, 0xf6, 0x6f, + 0xab, 0xd6, 0xe6, 0x87, 0xd8, 0x1c, 0xa7, 0x24, 0xf1, 0x34, 0x01, 0x4c, + 0x72, 0x59, 0xd5, 0x3f, 0xe7, 0x95, 0xab, 0xc3, 0x4b, 0x6f, 0xdc, 0x03, + 0x9d, 0x9c, 0xf2, 0xd2, 0x46, 0xcc, 0x73, 0x81, 0x05, 0xe1, 0x7b, 0xd5, + 0x54, 0x75, 0x2f, 0x73, +}; +static const struct drbg_kat_pr_false kat1774_t = { + 3, kat1774_entropyin, kat1774_nonce, kat1774_persstr, + kat1774_entropyinreseed, kat1774_addinreseed, kat1774_addin0, + kat1774_addin1, kat1774_retbits +}; +static const struct drbg_kat kat1774 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1774_t +}; + +static const unsigned char kat1775_entropyin[] = { + 0x1d, 0xeb, 0x31, 0x28, 0xbd, 0x87, 0x02, 0x2d, 0xd2, 0xff, 0x7a, 0xbe, + 0xaf, 0x7b, 0xfd, 0xac, 0x66, 0x14, 0x0c, 0x31, 0x9f, 0x1d, 0xd2, 0x4d, +}; +static const unsigned char kat1775_nonce[] = { + 0xd6, 0x50, 0x4f, 0x4d, 0xbb, 0xe2, 0xfe, 0xcc, 0xd8, 0x9c, 0x9c, 0x22, + 0x5c, 0xef, 0x0c, 0x7c, +}; +static const unsigned char kat1775_persstr[] = { + 0x26, 0x67, 0x37, 0xc2, 0xc2, 0x82, 0x5f, 0x2d, 0x0c, 0x85, 0x39, 0x75, + 0x7f, 0xf8, 0xf9, 0xe8, 0x5a, 0xd9, 0x4f, 0xa4, 0xec, 0x8e, 0x2a, 0x29, + 0x58, 0x02, 0x5f, 0x0f, 0xc2, 0xc6, 0x64, 0x87, +}; +static const unsigned char kat1775_entropyinreseed[] = { + 0xf9, 0x67, 0x9a, 0x22, 0x0b, 0x82, 0xaf, 0x90, 0x38, 0x5c, 0x5e, 0x04, + 0xfc, 0xf8, 0x91, 0xca, 0xca, 0x12, 0x46, 0xc0, 0xec, 0xe0, 0x83, 0xfc, +}; +static const unsigned char kat1775_addinreseed[] = {0}; +static const unsigned char kat1775_addin0[] = {0}; +static const unsigned char kat1775_addin1[] = {0}; +static const unsigned char kat1775_retbits[] = { + 0x9d, 0x41, 0x94, 0xc9, 0x88, 0xa7, 0xbf, 0x40, 0xd4, 0x7d, 0x40, 0x60, + 0x94, 0xb7, 0x27, 0x53, 0x40, 0xa6, 0x47, 0x43, 0x57, 0xc8, 0xf4, 0xee, + 0x5f, 0xce, 0xdb, 0x29, 0xf5, 0xc3, 0xc9, 0x7b, 0xb9, 0xf6, 0xdc, 0x95, + 0x7a, 0x4c, 0xe3, 0xce, 0x54, 0x1f, 0xe4, 0x3c, 0x4d, 0x2c, 0x54, 0x7c, + 0x85, 0xe4, 0x82, 0x32, 0x88, 0xaf, 0x9d, 0x47, 0xba, 0x8d, 0x4f, 0x89, + 0xd3, 0xd4, 0x6c, 0xaf, +}; +static const struct drbg_kat_pr_false kat1775_t = { + 4, kat1775_entropyin, kat1775_nonce, kat1775_persstr, + kat1775_entropyinreseed, kat1775_addinreseed, kat1775_addin0, + kat1775_addin1, kat1775_retbits +}; +static const struct drbg_kat kat1775 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1775_t +}; + +static const unsigned char kat1776_entropyin[] = { + 0x92, 0x29, 0x5b, 0xe3, 0x87, 0x66, 0xb6, 0x48, 0xcf, 0x44, 0x2b, 0x84, + 0xcd, 0x3e, 0xaf, 0x02, 0x28, 0x2e, 0x37, 0x8c, 0x00, 0xd3, 0xe4, 0x2f, +}; +static const unsigned char kat1776_nonce[] = { + 0x8f, 0x1b, 0x22, 0x7a, 0xb2, 0xcc, 0x65, 0x64, 0x86, 0x8d, 0x7a, 0x21, + 0x9b, 0x36, 0xf5, 0xcc, +}; +static const unsigned char kat1776_persstr[] = { + 0xb5, 0x72, 0xb2, 0xbe, 0xf8, 0x44, 0x03, 0xd8, 0xa2, 0x88, 0xf0, 0xa5, + 0x47, 0x5c, 0x00, 0xf1, 0x86, 0x94, 0x1f, 0x72, 0x88, 0x02, 0x3b, 0x8c, + 0xda, 0xca, 0x3e, 0xe6, 0x5c, 0x4b, 0x5e, 0x46, +}; +static const unsigned char kat1776_entropyinreseed[] = { + 0xa5, 0xb8, 0xb6, 0xf4, 0x4d, 0x8a, 0xa2, 0x3b, 0x66, 0x21, 0x88, 0x85, + 0x45, 0x09, 0x8e, 0x25, 0x54, 0xa6, 0x81, 0x15, 0xdb, 0x1b, 0x3f, 0x0d, +}; +static const unsigned char kat1776_addinreseed[] = {0}; +static const unsigned char kat1776_addin0[] = {0}; +static const unsigned char kat1776_addin1[] = {0}; +static const unsigned char kat1776_retbits[] = { + 0xa1, 0x1e, 0x67, 0xa3, 0x53, 0xa2, 0xe6, 0x4e, 0xe0, 0x60, 0x8e, 0xea, + 0x12, 0xe6, 0xdb, 0x0b, 0x35, 0xc1, 0xc6, 0xd9, 0xeb, 0xf8, 0x86, 0x9b, + 0xc4, 0xea, 0x48, 0x06, 0x00, 0x9b, 0x42, 0x3c, 0x68, 0xc2, 0xf6, 0xb3, + 0x91, 0x30, 0xa0, 0x82, 0xed, 0x6b, 0x06, 0x3a, 0xd5, 0x7b, 0xc2, 0xd7, + 0x55, 0x69, 0xb2, 0x21, 0x64, 0x7c, 0x9b, 0xd1, 0xc0, 0x38, 0xa7, 0x36, + 0x04, 0xdf, 0x2c, 0xd5, +}; +static const struct drbg_kat_pr_false kat1776_t = { + 5, kat1776_entropyin, kat1776_nonce, kat1776_persstr, + kat1776_entropyinreseed, kat1776_addinreseed, kat1776_addin0, + kat1776_addin1, kat1776_retbits +}; +static const struct drbg_kat kat1776 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1776_t +}; + +static const unsigned char kat1777_entropyin[] = { + 0x0b, 0x6e, 0xa6, 0x6e, 0x96, 0x19, 0xc8, 0xd3, 0xe1, 0xbd, 0x52, 0xb3, + 0x65, 0x62, 0x8a, 0x4a, 0x0b, 0x7f, 0x94, 0x83, 0x72, 0xdf, 0x28, 0x53, +}; +static const unsigned char kat1777_nonce[] = { + 0x6c, 0xba, 0xf0, 0x2c, 0x17, 0x3d, 0x73, 0x9b, 0x00, 0x94, 0xc0, 0xa2, + 0x5e, 0xf2, 0x0a, 0x54, +}; +static const unsigned char kat1777_persstr[] = { + 0x2d, 0x23, 0xdc, 0x58, 0x40, 0xf8, 0xfd, 0xcc, 0x8a, 0x8b, 0x93, 0xce, + 0x30, 0x14, 0x18, 0xfa, 0xa8, 0x17, 0xec, 0xc6, 0x61, 0x2f, 0xf0, 0xc9, + 0x1b, 0x01, 0xad, 0x7e, 0x22, 0xa8, 0x64, 0xe9, +}; +static const unsigned char kat1777_entropyinreseed[] = { + 0xed, 0xf7, 0x63, 0x85, 0xd2, 0xc9, 0x95, 0x16, 0x98, 0x8e, 0x91, 0x86, + 0x9e, 0x09, 0xe1, 0xc0, 0x7e, 0x65, 0x56, 0x55, 0x42, 0x84, 0x74, 0xd4, +}; +static const unsigned char kat1777_addinreseed[] = {0}; +static const unsigned char kat1777_addin0[] = {0}; +static const unsigned char kat1777_addin1[] = {0}; +static const unsigned char kat1777_retbits[] = { + 0x17, 0x57, 0xea, 0xd1, 0x4a, 0x22, 0xc4, 0xce, 0x8c, 0xd1, 0x90, 0xfd, + 0xa3, 0x67, 0x10, 0xc3, 0xee, 0x80, 0x56, 0x26, 0x8b, 0xd6, 0xef, 0x44, + 0x8b, 0xc3, 0x8a, 0x34, 0x05, 0x7d, 0xaa, 0x0d, 0x55, 0xe7, 0x09, 0xbb, + 0x20, 0xfc, 0x72, 0xbb, 0xb5, 0xd4, 0xc1, 0xfa, 0x16, 0xb4, 0x04, 0x26, + 0x9f, 0x94, 0x68, 0xc3, 0x02, 0x9a, 0xd4, 0x44, 0x48, 0x00, 0x5d, 0x5b, + 0xe0, 0xf4, 0x55, 0x26, +}; +static const struct drbg_kat_pr_false kat1777_t = { + 6, kat1777_entropyin, kat1777_nonce, kat1777_persstr, + kat1777_entropyinreseed, kat1777_addinreseed, kat1777_addin0, + kat1777_addin1, kat1777_retbits +}; +static const struct drbg_kat kat1777 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1777_t +}; + +static const unsigned char kat1778_entropyin[] = { + 0xd0, 0x10, 0x00, 0x3f, 0x83, 0x5e, 0xce, 0x36, 0xbe, 0x84, 0xe2, 0x53, + 0xeb, 0xb8, 0x29, 0xb6, 0x68, 0x9a, 0xe0, 0x55, 0x82, 0xda, 0x39, 0x9a, +}; +static const unsigned char kat1778_nonce[] = { + 0x17, 0x28, 0x1f, 0x73, 0x42, 0x7d, 0x33, 0x1f, 0x15, 0x9d, 0xc5, 0xcc, + 0xa3, 0xb8, 0x42, 0x69, +}; +static const unsigned char kat1778_persstr[] = { + 0x9a, 0x9c, 0x95, 0x40, 0xe6, 0xf1, 0x77, 0xfd, 0xe4, 0x0a, 0xda, 0x55, + 0xcf, 0x6d, 0xbc, 0xb5, 0x3c, 0xf3, 0x00, 0x52, 0xbf, 0x69, 0xfb, 0xfd, + 0x10, 0x41, 0x95, 0xdb, 0x59, 0x69, 0x95, 0x74, +}; +static const unsigned char kat1778_entropyinreseed[] = { + 0x6b, 0x72, 0x93, 0x36, 0x10, 0xd8, 0xef, 0xda, 0xb5, 0xb2, 0x36, 0x56, + 0xa6, 0x57, 0xf6, 0x93, 0x45, 0x92, 0xf5, 0xc8, 0x6e, 0x01, 0x8b, 0x4d, +}; +static const unsigned char kat1778_addinreseed[] = {0}; +static const unsigned char kat1778_addin0[] = {0}; +static const unsigned char kat1778_addin1[] = {0}; +static const unsigned char kat1778_retbits[] = { + 0xae, 0xf5, 0xae, 0x88, 0x2c, 0xcb, 0x2f, 0xae, 0xcf, 0xf8, 0x4c, 0x64, + 0x84, 0x24, 0x8f, 0xc1, 0x3e, 0xd8, 0x07, 0x91, 0xe8, 0x92, 0x66, 0x75, + 0xa9, 0xc0, 0x11, 0x84, 0xd8, 0x43, 0xe0, 0xaa, 0x15, 0x4d, 0x97, 0xdd, + 0x17, 0x59, 0xe4, 0xef, 0xb1, 0x78, 0x8b, 0x0e, 0xc8, 0xfb, 0xcd, 0xd6, + 0xe5, 0x9e, 0x9f, 0x1d, 0xb0, 0x2a, 0xd4, 0x7c, 0x8b, 0x16, 0x78, 0x1f, + 0xe8, 0x13, 0xc2, 0x50, +}; +static const struct drbg_kat_pr_false kat1778_t = { + 7, kat1778_entropyin, kat1778_nonce, kat1778_persstr, + kat1778_entropyinreseed, kat1778_addinreseed, kat1778_addin0, + kat1778_addin1, kat1778_retbits +}; +static const struct drbg_kat kat1778 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1778_t +}; + +static const unsigned char kat1779_entropyin[] = { + 0xa9, 0xf4, 0x08, 0xa0, 0xa9, 0x72, 0x85, 0xf0, 0xc5, 0x34, 0x16, 0xe6, + 0x0d, 0xf5, 0x5a, 0xd4, 0x6a, 0x1b, 0xee, 0x91, 0xcc, 0x9d, 0x46, 0x36, +}; +static const unsigned char kat1779_nonce[] = { + 0x73, 0xc7, 0x85, 0x3f, 0xa6, 0x76, 0x81, 0xe4, 0xc2, 0x55, 0x87, 0xb5, + 0x47, 0x11, 0x0e, 0xb2, +}; +static const unsigned char kat1779_persstr[] = { + 0x3a, 0xe2, 0x6b, 0x8b, 0x2e, 0xbd, 0x1a, 0x15, 0x31, 0x61, 0x00, 0x96, + 0x9d, 0x33, 0x5a, 0x38, 0x39, 0x45, 0xfd, 0xf6, 0xbf, 0x9f, 0x7c, 0x1c, + 0x65, 0x83, 0x11, 0x81, 0x16, 0x79, 0x93, 0x3f, +}; +static const unsigned char kat1779_entropyinreseed[] = { + 0x87, 0x7b, 0xf6, 0xc9, 0x1d, 0x63, 0x45, 0xf7, 0x77, 0xdc, 0x1d, 0xf5, + 0x65, 0x0c, 0x1f, 0xe4, 0x0f, 0x74, 0xca, 0xde, 0x7b, 0x3b, 0x29, 0xa3, +}; +static const unsigned char kat1779_addinreseed[] = {0}; +static const unsigned char kat1779_addin0[] = {0}; +static const unsigned char kat1779_addin1[] = {0}; +static const unsigned char kat1779_retbits[] = { + 0x67, 0x9f, 0xdc, 0xc2, 0xc5, 0xb1, 0x0b, 0xcf, 0xee, 0x0a, 0xb3, 0x22, + 0xa1, 0xa3, 0xfb, 0x43, 0xa8, 0x30, 0x03, 0x9e, 0x9c, 0x23, 0x57, 0x4f, + 0xc6, 0xee, 0x77, 0x2c, 0xfe, 0x6e, 0xf7, 0x99, 0x1d, 0x35, 0x0e, 0x52, + 0xc0, 0xcb, 0xd7, 0xb6, 0xb3, 0xe4, 0xed, 0xb2, 0xab, 0xd3, 0xbf, 0xff, + 0xf6, 0xd7, 0x22, 0xbb, 0xae, 0x43, 0x30, 0x56, 0x31, 0xdf, 0x0a, 0xbd, + 0x10, 0x9d, 0x6b, 0xdd, +}; +static const struct drbg_kat_pr_false kat1779_t = { + 8, kat1779_entropyin, kat1779_nonce, kat1779_persstr, + kat1779_entropyinreseed, kat1779_addinreseed, kat1779_addin0, + kat1779_addin1, kat1779_retbits +}; +static const struct drbg_kat kat1779 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1779_t +}; + +static const unsigned char kat1780_entropyin[] = { + 0xdb, 0x35, 0x5d, 0x72, 0x6c, 0x79, 0xea, 0xc6, 0xd6, 0x22, 0x58, 0xed, + 0x92, 0xd4, 0xf3, 0x1c, 0xd3, 0xe6, 0xa8, 0xe0, 0xcd, 0xa0, 0x52, 0x74, +}; +static const unsigned char kat1780_nonce[] = { + 0xaf, 0x52, 0xb3, 0xf0, 0xd4, 0x3e, 0x3a, 0x03, 0x10, 0xda, 0x57, 0xb4, + 0xd0, 0xc6, 0xa2, 0x84, +}; +static const unsigned char kat1780_persstr[] = { + 0x51, 0xd6, 0xb8, 0x40, 0x3b, 0x7a, 0x37, 0x29, 0xc5, 0xe0, 0x5d, 0x59, + 0x5b, 0x6f, 0x38, 0x50, 0xd2, 0x20, 0xb2, 0x33, 0xf4, 0xec, 0x30, 0x52, + 0xab, 0x67, 0x8f, 0x4a, 0x3e, 0x1a, 0xb4, 0x29, +}; +static const unsigned char kat1780_entropyinreseed[] = { + 0x9f, 0x1e, 0x57, 0x62, 0xf5, 0xc7, 0x5b, 0x1a, 0xc9, 0x8c, 0xb0, 0x68, + 0x81, 0x77, 0x39, 0xfe, 0xed, 0x86, 0xfa, 0xcd, 0x98, 0xfe, 0x85, 0xb1, +}; +static const unsigned char kat1780_addinreseed[] = {0}; +static const unsigned char kat1780_addin0[] = {0}; +static const unsigned char kat1780_addin1[] = {0}; +static const unsigned char kat1780_retbits[] = { + 0x5e, 0x6a, 0xf3, 0x00, 0xa4, 0xff, 0x0c, 0x00, 0x42, 0xd1, 0xe8, 0xc5, + 0x1b, 0x0e, 0xac, 0x14, 0x90, 0x2b, 0x95, 0x94, 0xdb, 0x95, 0xc3, 0x5d, + 0xac, 0x8e, 0xb5, 0x31, 0x49, 0x66, 0x3c, 0x6a, 0xd5, 0x9f, 0x9f, 0x47, + 0x5c, 0x68, 0x02, 0xb1, 0x1a, 0xa0, 0x94, 0x49, 0x44, 0x13, 0xff, 0xc6, + 0x1a, 0xca, 0x80, 0x6a, 0x45, 0x57, 0x20, 0x8b, 0x0c, 0x86, 0x3b, 0x0c, + 0x10, 0xa6, 0x0c, 0xdf, +}; +static const struct drbg_kat_pr_false kat1780_t = { + 9, kat1780_entropyin, kat1780_nonce, kat1780_persstr, + kat1780_entropyinreseed, kat1780_addinreseed, kat1780_addin0, + kat1780_addin1, kat1780_retbits +}; +static const struct drbg_kat kat1780 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1780_t +}; + +static const unsigned char kat1781_entropyin[] = { + 0x4d, 0xc6, 0x5a, 0xbe, 0x7e, 0xdc, 0x66, 0x28, 0xa9, 0xce, 0x20, 0xfe, + 0xcf, 0x1c, 0xa9, 0xcc, 0x11, 0xe1, 0x06, 0xc2, 0x47, 0xaa, 0xdc, 0x78, +}; +static const unsigned char kat1781_nonce[] = { + 0x26, 0x9e, 0x93, 0xba, 0xd3, 0x8f, 0xf6, 0x9a, 0xf7, 0x23, 0x30, 0xe5, + 0xfb, 0x29, 0x60, 0xb1, +}; +static const unsigned char kat1781_persstr[] = { + 0x5e, 0x10, 0x57, 0x8b, 0xea, 0x14, 0xb9, 0x80, 0x6c, 0x47, 0x20, 0xf1, + 0x99, 0xde, 0x43, 0xd4, 0xb3, 0x49, 0x87, 0x45, 0xd3, 0x67, 0xce, 0x6a, + 0xea, 0x80, 0x5d, 0x17, 0x6b, 0x83, 0xaf, 0x85, +}; +static const unsigned char kat1781_entropyinreseed[] = { + 0xec, 0xf4, 0xf2, 0xa5, 0x15, 0x79, 0x4d, 0x3f, 0x4e, 0x19, 0x82, 0x46, + 0xf7, 0x72, 0x64, 0x5d, 0x34, 0x12, 0x14, 0xa8, 0xe2, 0x73, 0xdd, 0xab, +}; +static const unsigned char kat1781_addinreseed[] = {0}; +static const unsigned char kat1781_addin0[] = {0}; +static const unsigned char kat1781_addin1[] = {0}; +static const unsigned char kat1781_retbits[] = { + 0x41, 0x33, 0x5b, 0x22, 0x2f, 0x06, 0x3d, 0x9f, 0x1e, 0x8c, 0x09, 0xb5, + 0xb1, 0xfd, 0xf9, 0xd2, 0x0c, 0x8d, 0x09, 0x75, 0x93, 0x91, 0x7a, 0x55, + 0x32, 0x7f, 0x81, 0x28, 0xf5, 0xbd, 0x8a, 0xbd, 0x42, 0xa2, 0xa8, 0x9a, + 0x86, 0xd1, 0x0a, 0xd6, 0x36, 0xea, 0x8d, 0xdc, 0x0a, 0xad, 0xf4, 0x79, + 0xc2, 0xe6, 0xe6, 0x78, 0x6e, 0xe1, 0x66, 0xd3, 0x37, 0xd8, 0xcb, 0x32, + 0x63, 0xd6, 0xb3, 0xfc, +}; +static const struct drbg_kat_pr_false kat1781_t = { + 10, kat1781_entropyin, kat1781_nonce, kat1781_persstr, + kat1781_entropyinreseed, kat1781_addinreseed, kat1781_addin0, + kat1781_addin1, kat1781_retbits +}; +static const struct drbg_kat kat1781 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1781_t +}; + +static const unsigned char kat1782_entropyin[] = { + 0xb9, 0x86, 0x27, 0x6f, 0x9f, 0xbb, 0x11, 0xab, 0xc1, 0x2a, 0x14, 0x71, + 0xbe, 0xb8, 0x2c, 0xf5, 0xe8, 0xcc, 0xc5, 0x3c, 0x02, 0xdc, 0x35, 0x27, +}; +static const unsigned char kat1782_nonce[] = { + 0x16, 0x5b, 0x23, 0xa4, 0x47, 0x84, 0x87, 0xe0, 0xa4, 0xef, 0xb4, 0x0c, + 0xd3, 0xf8, 0x63, 0x53, +}; +static const unsigned char kat1782_persstr[] = { + 0xa8, 0x20, 0xfc, 0x95, 0x88, 0x68, 0x89, 0x4b, 0xba, 0xaa, 0xdb, 0x33, + 0x3a, 0xec, 0x48, 0xd2, 0xf9, 0xca, 0x8e, 0xb3, 0x37, 0x80, 0xb2, 0x17, + 0xed, 0x3b, 0xb8, 0xaa, 0xb7, 0x92, 0xdd, 0xc3, +}; +static const unsigned char kat1782_entropyinreseed[] = { + 0x10, 0xc4, 0x47, 0x62, 0x37, 0xb2, 0x3c, 0xe6, 0xf5, 0xff, 0x6b, 0xf2, + 0x69, 0x0c, 0xf8, 0x6a, 0x9e, 0x0a, 0x5d, 0xea, 0xa2, 0xec, 0x94, 0x5a, +}; +static const unsigned char kat1782_addinreseed[] = {0}; +static const unsigned char kat1782_addin0[] = {0}; +static const unsigned char kat1782_addin1[] = {0}; +static const unsigned char kat1782_retbits[] = { + 0xce, 0x03, 0xa4, 0x7a, 0xf0, 0xf4, 0xde, 0xaa, 0x7b, 0xa0, 0xf2, 0xac, + 0x33, 0x2d, 0x4c, 0x46, 0x7d, 0xd1, 0xbe, 0xa4, 0xde, 0x27, 0x91, 0xab, + 0xca, 0x97, 0x55, 0x43, 0xae, 0x78, 0x56, 0x09, 0x67, 0xe6, 0x75, 0xe9, + 0x0d, 0x1e, 0xcd, 0xb6, 0x64, 0x3f, 0x39, 0xaa, 0x75, 0x3b, 0x86, 0x19, + 0xb9, 0xe2, 0xa7, 0x6e, 0x46, 0x39, 0xe6, 0x27, 0x02, 0xde, 0xa2, 0x3c, + 0x6e, 0x60, 0x9b, 0x71, +}; +static const struct drbg_kat_pr_false kat1782_t = { + 11, kat1782_entropyin, kat1782_nonce, kat1782_persstr, + kat1782_entropyinreseed, kat1782_addinreseed, kat1782_addin0, + kat1782_addin1, kat1782_retbits +}; +static const struct drbg_kat kat1782 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1782_t +}; + +static const unsigned char kat1783_entropyin[] = { + 0xd6, 0x46, 0x5c, 0x9a, 0xb5, 0x5c, 0x68, 0x19, 0x3f, 0x5b, 0xe8, 0x7f, + 0x10, 0x24, 0x08, 0xe2, 0x2b, 0xdc, 0x9b, 0x29, 0x81, 0x56, 0x6f, 0xf9, +}; +static const unsigned char kat1783_nonce[] = { + 0x0c, 0x0b, 0xf9, 0xbd, 0x55, 0x5b, 0x91, 0x56, 0x42, 0x69, 0x3e, 0xd4, + 0x56, 0x92, 0xb2, 0xe3, +}; +static const unsigned char kat1783_persstr[] = { + 0x58, 0x98, 0xc4, 0x99, 0x9a, 0x56, 0x75, 0x8f, 0x67, 0x91, 0x94, 0xa9, + 0x1d, 0x88, 0xaa, 0x1f, 0xfe, 0xa8, 0x61, 0x74, 0x3c, 0xbf, 0x99, 0xfb, + 0xf5, 0x3f, 0xf8, 0xeb, 0x91, 0xac, 0xa1, 0x85, +}; +static const unsigned char kat1783_entropyinreseed[] = { + 0x82, 0x83, 0xc4, 0x8d, 0x8f, 0x77, 0x50, 0xad, 0x74, 0x63, 0x11, 0x97, + 0xa5, 0x8b, 0x30, 0xf2, 0xa5, 0x36, 0xbe, 0xd2, 0x60, 0x63, 0xff, 0x2e, +}; +static const unsigned char kat1783_addinreseed[] = {0}; +static const unsigned char kat1783_addin0[] = {0}; +static const unsigned char kat1783_addin1[] = {0}; +static const unsigned char kat1783_retbits[] = { + 0x2f, 0x1f, 0x48, 0x4f, 0xa2, 0x76, 0x47, 0x65, 0x31, 0xc0, 0x9e, 0x2b, + 0x8a, 0x47, 0x45, 0x4f, 0xf4, 0xa7, 0x4b, 0x04, 0x23, 0x79, 0x3e, 0xfa, + 0x05, 0x6b, 0x41, 0x5b, 0xc8, 0x53, 0x59, 0x00, 0x76, 0xd3, 0x27, 0x73, + 0x69, 0xa7, 0x28, 0xae, 0xe6, 0x6c, 0x1f, 0x3b, 0xad, 0x91, 0x3f, 0x33, + 0xb4, 0x82, 0xcb, 0x8e, 0x0e, 0x80, 0x58, 0x91, 0xe2, 0x0a, 0xcf, 0x14, + 0x64, 0x4d, 0xd5, 0x5a, +}; +static const struct drbg_kat_pr_false kat1783_t = { + 12, kat1783_entropyin, kat1783_nonce, kat1783_persstr, + kat1783_entropyinreseed, kat1783_addinreseed, kat1783_addin0, + kat1783_addin1, kat1783_retbits +}; +static const struct drbg_kat kat1783 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1783_t +}; + +static const unsigned char kat1784_entropyin[] = { + 0x1e, 0xb6, 0x96, 0xf5, 0xc6, 0x4a, 0x3c, 0x49, 0x21, 0x85, 0xbe, 0x78, + 0x79, 0x89, 0xa3, 0xe0, 0x14, 0xe8, 0xd5, 0x52, 0x57, 0xf3, 0x9e, 0x1e, +}; +static const unsigned char kat1784_nonce[] = { + 0x0d, 0x7b, 0x8a, 0x3d, 0x6b, 0xee, 0x62, 0x1d, 0x2a, 0x29, 0x74, 0x2c, + 0x05, 0x8e, 0x86, 0x66, +}; +static const unsigned char kat1784_persstr[] = { + 0x9c, 0x14, 0x84, 0xee, 0x47, 0x1c, 0x88, 0x47, 0xda, 0x3d, 0x97, 0xac, + 0xef, 0x0d, 0x02, 0x83, 0xaf, 0x1d, 0x95, 0xf7, 0x35, 0x71, 0x7f, 0xc2, + 0x31, 0xc1, 0x28, 0x46, 0xbd, 0x8e, 0xae, 0x27, +}; +static const unsigned char kat1784_entropyinreseed[] = { + 0x17, 0xe3, 0x33, 0xbb, 0xbf, 0x9f, 0xaa, 0x74, 0x11, 0xcf, 0x13, 0xdb, + 0xb5, 0x40, 0xe0, 0x5b, 0xe9, 0x54, 0xb8, 0x17, 0x15, 0xb0, 0x9c, 0x68, +}; +static const unsigned char kat1784_addinreseed[] = {0}; +static const unsigned char kat1784_addin0[] = {0}; +static const unsigned char kat1784_addin1[] = {0}; +static const unsigned char kat1784_retbits[] = { + 0x54, 0x4c, 0x50, 0x96, 0xe6, 0x9f, 0x2b, 0x3b, 0xf7, 0x4d, 0x8e, 0xa7, + 0x89, 0xa9, 0x57, 0x2d, 0x2e, 0x61, 0xaa, 0x83, 0x6b, 0x2c, 0x5a, 0xa5, + 0xb0, 0x2b, 0xfe, 0x9e, 0xdd, 0x12, 0x7c, 0xa1, 0xcc, 0x49, 0x91, 0x7d, + 0x8e, 0x7f, 0xb8, 0x15, 0x49, 0x70, 0x96, 0x85, 0x7c, 0xce, 0x59, 0x5c, + 0x84, 0x41, 0x93, 0x89, 0x66, 0x2f, 0x1b, 0xc8, 0x42, 0xb5, 0xfb, 0xb4, + 0x6d, 0x44, 0xdc, 0xd4, +}; +static const struct drbg_kat_pr_false kat1784_t = { + 13, kat1784_entropyin, kat1784_nonce, kat1784_persstr, + kat1784_entropyinreseed, kat1784_addinreseed, kat1784_addin0, + kat1784_addin1, kat1784_retbits +}; +static const struct drbg_kat kat1784 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1784_t +}; + +static const unsigned char kat1785_entropyin[] = { + 0x0e, 0x14, 0xa0, 0x5f, 0xfd, 0xc1, 0xa8, 0x0a, 0x9c, 0xa9, 0xc7, 0xf3, + 0x77, 0xce, 0xd6, 0x9c, 0x06, 0x42, 0xab, 0x84, 0x90, 0xc6, 0x92, 0xaa, +}; +static const unsigned char kat1785_nonce[] = { + 0x25, 0x09, 0x8e, 0x57, 0x45, 0x02, 0xed, 0x63, 0x49, 0xed, 0xc0, 0xc8, + 0xd3, 0xa2, 0x80, 0x06, +}; +static const unsigned char kat1785_persstr[] = { + 0x1d, 0x0e, 0x83, 0xb9, 0xf3, 0x25, 0x71, 0xaf, 0x1b, 0xd9, 0x4c, 0xb1, + 0x5e, 0x4e, 0xdd, 0xf1, 0x8a, 0x4e, 0x56, 0x52, 0x04, 0x74, 0x6d, 0x7a, + 0x34, 0xd6, 0x48, 0xef, 0x17, 0xd3, 0x86, 0xa8, +}; +static const unsigned char kat1785_entropyinreseed[] = { + 0x3b, 0x2c, 0xdf, 0xc8, 0xe4, 0xea, 0xb2, 0x83, 0xd6, 0x11, 0x83, 0x1e, + 0xd1, 0x21, 0xa9, 0xd1, 0xdd, 0x2c, 0x3b, 0x90, 0xc8, 0x6e, 0x42, 0x98, +}; +static const unsigned char kat1785_addinreseed[] = {0}; +static const unsigned char kat1785_addin0[] = {0}; +static const unsigned char kat1785_addin1[] = {0}; +static const unsigned char kat1785_retbits[] = { + 0x4a, 0x40, 0xd4, 0xb4, 0xca, 0x42, 0x90, 0xc6, 0x7b, 0x52, 0x22, 0xfe, + 0xd5, 0x7d, 0xdb, 0xba, 0x72, 0xb6, 0xaa, 0x20, 0xa5, 0x70, 0x48, 0xa3, + 0x24, 0x78, 0xb9, 0x94, 0x1b, 0xda, 0x2e, 0x96, 0xe4, 0xf3, 0x5b, 0x32, + 0x85, 0xd5, 0x12, 0xea, 0x1a, 0xc0, 0x28, 0x2e, 0xf2, 0xd4, 0xce, 0x4c, + 0x22, 0x3a, 0x6d, 0xc7, 0x9b, 0x91, 0x1e, 0x1b, 0xd3, 0x57, 0x6c, 0x9c, + 0x90, 0x08, 0xf9, 0x57, +}; +static const struct drbg_kat_pr_false kat1785_t = { + 14, kat1785_entropyin, kat1785_nonce, kat1785_persstr, + kat1785_entropyinreseed, kat1785_addinreseed, kat1785_addin0, + kat1785_addin1, kat1785_retbits +}; +static const struct drbg_kat kat1785 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1785_t +}; + +static const unsigned char kat1786_entropyin[] = { + 0xe8, 0x9d, 0x54, 0xf8, 0x16, 0xf8, 0x02, 0xa1, 0x25, 0x6f, 0xb9, 0xc9, + 0xc2, 0x39, 0x88, 0x7e, 0xbc, 0xf6, 0xc6, 0x4d, 0x68, 0x55, 0x79, 0x40, +}; +static const unsigned char kat1786_nonce[] = { + 0x4f, 0x02, 0x21, 0x71, 0xca, 0xce, 0x97, 0xc0, 0x81, 0xdf, 0x28, 0xcf, + 0x42, 0x5d, 0x09, 0x56, +}; +static const unsigned char kat1786_persstr[] = { + 0x53, 0xcc, 0x68, 0x34, 0xe9, 0xfc, 0xbb, 0x3e, 0xca, 0x68, 0x80, 0xa0, + 0xae, 0x90, 0xd3, 0xa7, 0x76, 0x0a, 0xaf, 0x5a, 0x1c, 0x0d, 0x07, 0x4b, + 0x09, 0x2b, 0x9f, 0x93, 0x70, 0x31, 0xa6, 0x8a, +}; +static const unsigned char kat1786_entropyinreseed[] = { + 0x6e, 0x5c, 0x51, 0xab, 0x74, 0xc8, 0x55, 0x2c, 0x16, 0xbe, 0x25, 0x7b, + 0xd1, 0x62, 0x6d, 0xf3, 0xaf, 0x79, 0x26, 0xbe, 0x67, 0xb6, 0x2c, 0x0c, +}; +static const unsigned char kat1786_addinreseed[] = { + 0x73, 0x97, 0x2f, 0x57, 0xc4, 0xa3, 0xe3, 0x0a, 0x79, 0x5d, 0x8c, 0x10, + 0xee, 0x80, 0x1e, 0xf0, 0xf6, 0xc8, 0xbe, 0x7f, 0x79, 0xff, 0xfb, 0x96, + 0xb5, 0x41, 0xd3, 0x22, 0xba, 0x7f, 0xd9, 0xcc, +}; +static const unsigned char kat1786_addin0[] = { + 0xec, 0xe1, 0xb6, 0x4c, 0x51, 0xbb, 0x97, 0xee, 0x3e, 0x72, 0xc1, 0xc7, + 0xd4, 0xca, 0xa3, 0xa3, 0xd4, 0x8b, 0x64, 0x10, 0x91, 0x42, 0x40, 0xca, + 0x03, 0x3f, 0x35, 0xed, 0x5b, 0x89, 0x83, 0x31, +}; +static const unsigned char kat1786_addin1[] = { + 0xe7, 0xd5, 0xda, 0xbd, 0x56, 0xf9, 0x20, 0x29, 0xa0, 0x9c, 0xf1, 0x7c, + 0xd6, 0x4a, 0xaa, 0xd8, 0xba, 0x6b, 0x4d, 0x72, 0xdb, 0xfa, 0x07, 0x00, + 0x3c, 0xd4, 0xea, 0xfd, 0x83, 0xc1, 0x70, 0xe5, +}; +static const unsigned char kat1786_retbits[] = { + 0xb0, 0xe0, 0x3c, 0xef, 0x0f, 0xbb, 0xfa, 0xec, 0x57, 0x54, 0xa0, 0xa2, + 0xc1, 0xb3, 0x96, 0xa7, 0xdf, 0x6e, 0x44, 0xdf, 0x6a, 0xc0, 0x55, 0x4a, + 0xe1, 0x9d, 0x77, 0xe6, 0xfb, 0xe4, 0xf0, 0x13, 0x64, 0x83, 0x38, 0x0c, + 0xbb, 0x81, 0x56, 0x8c, 0x1c, 0x1f, 0x0a, 0xe7, 0xfc, 0x02, 0x75, 0x8d, + 0x8d, 0x1e, 0x79, 0x68, 0x66, 0xb7, 0xa6, 0xa6, 0xd1, 0x73, 0xec, 0xc0, + 0x16, 0xb8, 0x1f, 0x26, +}; +static const struct drbg_kat_pr_false kat1786_t = { + 0, kat1786_entropyin, kat1786_nonce, kat1786_persstr, + kat1786_entropyinreseed, kat1786_addinreseed, kat1786_addin0, + kat1786_addin1, kat1786_retbits +}; +static const struct drbg_kat kat1786 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1786_t +}; + +static const unsigned char kat1787_entropyin[] = { + 0x22, 0xf7, 0x79, 0x8a, 0xc6, 0x7c, 0x09, 0x1d, 0xe8, 0x68, 0x7a, 0x84, + 0x9b, 0x7a, 0x2d, 0xd4, 0x04, 0x52, 0xe6, 0x50, 0x54, 0xd3, 0x54, 0x3a, +}; +static const unsigned char kat1787_nonce[] = { + 0x10, 0xa4, 0x21, 0x46, 0xc7, 0xb0, 0xa4, 0x12, 0x34, 0x7f, 0x1c, 0x93, + 0x4b, 0x21, 0x7b, 0xfb, +}; +static const unsigned char kat1787_persstr[] = { + 0xd6, 0xee, 0x30, 0xbd, 0xd4, 0xc8, 0x71, 0x50, 0xb7, 0x9f, 0x88, 0xa1, + 0xd1, 0x1f, 0xe3, 0x88, 0x9c, 0xdb, 0xdd, 0x37, 0x63, 0x00, 0x2f, 0x6d, + 0x6e, 0x27, 0x35, 0x2f, 0x6e, 0x51, 0xeb, 0x93, +}; +static const unsigned char kat1787_entropyinreseed[] = { + 0xae, 0x4a, 0xe7, 0x9b, 0xd9, 0x0b, 0x36, 0xd2, 0xab, 0x76, 0xf2, 0x3d, + 0x9e, 0x94, 0x2b, 0x5c, 0x12, 0x02, 0x19, 0xa0, 0x78, 0xec, 0x45, 0x8c, +}; +static const unsigned char kat1787_addinreseed[] = { + 0x21, 0x28, 0xf3, 0x48, 0xdb, 0x64, 0x71, 0x25, 0x74, 0x21, 0x96, 0x54, + 0xfb, 0xa0, 0x31, 0x75, 0xba, 0xc5, 0x60, 0xcc, 0x2a, 0xb8, 0x3f, 0x93, + 0xdd, 0x43, 0xd5, 0xba, 0x10, 0xef, 0x89, 0x21, +}; +static const unsigned char kat1787_addin0[] = { + 0xc0, 0xe6, 0xb2, 0xeb, 0x2e, 0xc9, 0x8c, 0x78, 0xee, 0x46, 0xd2, 0x57, + 0x07, 0xd0, 0xf0, 0x11, 0xc3, 0x26, 0x40, 0x20, 0xff, 0xcc, 0x81, 0xcd, + 0x1b, 0x60, 0xc4, 0xc1, 0xef, 0x56, 0xab, 0x66, +}; +static const unsigned char kat1787_addin1[] = { + 0x19, 0xc0, 0x01, 0x77, 0xfb, 0x10, 0x30, 0x78, 0xc0, 0xff, 0x32, 0x3c, + 0x65, 0x23, 0x25, 0x82, 0x31, 0x53, 0x0d, 0x0d, 0x17, 0x95, 0x47, 0x93, + 0xb3, 0x63, 0x7d, 0x9d, 0x62, 0x04, 0x68, 0x9a, +}; +static const unsigned char kat1787_retbits[] = { + 0xde, 0xb7, 0x4b, 0x2e, 0x7e, 0xe9, 0x67, 0x66, 0xf3, 0x2e, 0x96, 0xda, + 0x12, 0xea, 0x1d, 0xa4, 0xdc, 0x4c, 0xb5, 0x27, 0x5f, 0x26, 0x74, 0x87, + 0x97, 0x12, 0xce, 0x7d, 0xeb, 0x35, 0xcf, 0xd5, 0x78, 0x61, 0xef, 0x4f, + 0x01, 0x1b, 0x51, 0xf5, 0xae, 0xb2, 0xf1, 0x67, 0x6f, 0x32, 0xcc, 0xa3, + 0x77, 0x29, 0xcc, 0x7a, 0x65, 0x35, 0x81, 0x49, 0x70, 0x4c, 0x65, 0x43, + 0x28, 0x2d, 0x9d, 0x9a, +}; +static const struct drbg_kat_pr_false kat1787_t = { + 1, kat1787_entropyin, kat1787_nonce, kat1787_persstr, + kat1787_entropyinreseed, kat1787_addinreseed, kat1787_addin0, + kat1787_addin1, kat1787_retbits +}; +static const struct drbg_kat kat1787 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1787_t +}; + +static const unsigned char kat1788_entropyin[] = { + 0x82, 0x01, 0x7f, 0xb7, 0x8d, 0x34, 0x55, 0x95, 0x8b, 0xe3, 0x2c, 0xfe, + 0x22, 0xc1, 0x20, 0x76, 0x8f, 0x66, 0x88, 0x16, 0x42, 0x64, 0x30, 0xf5, +}; +static const unsigned char kat1788_nonce[] = { + 0xc0, 0x59, 0x73, 0x36, 0x7c, 0x93, 0x86, 0x83, 0x14, 0xd5, 0xed, 0x91, + 0xfe, 0x27, 0x5b, 0x82, +}; +static const unsigned char kat1788_persstr[] = { + 0x5e, 0x9c, 0xc6, 0x69, 0x50, 0x57, 0xa0, 0xbf, 0x15, 0x50, 0xfd, 0xf6, + 0x2c, 0x2e, 0x96, 0x6a, 0xbe, 0xa0, 0x13, 0xb9, 0xad, 0xc6, 0xf2, 0xa2, + 0xa8, 0xdd, 0x9d, 0xdb, 0x7b, 0xb3, 0x50, 0x71, +}; +static const unsigned char kat1788_entropyinreseed[] = { + 0x70, 0x49, 0xdc, 0xcb, 0x73, 0xd0, 0x43, 0x1a, 0xee, 0x47, 0x33, 0xbe, + 0x2b, 0x1a, 0x26, 0x9a, 0x55, 0xdb, 0xcc, 0x6d, 0xf8, 0x3f, 0x2d, 0xe0, +}; +static const unsigned char kat1788_addinreseed[] = { + 0xee, 0x73, 0x1e, 0x2d, 0xab, 0xdc, 0x71, 0x31, 0xa1, 0x18, 0x6e, 0x87, + 0x39, 0x35, 0x73, 0x1a, 0x93, 0x18, 0xde, 0xef, 0x0e, 0xfc, 0x84, 0x56, + 0x31, 0xac, 0x80, 0xc9, 0xf9, 0x1d, 0x92, 0x5a, +}; +static const unsigned char kat1788_addin0[] = { + 0x0d, 0x6e, 0x10, 0x49, 0xd9, 0xbf, 0xd6, 0xe5, 0xd5, 0xfb, 0xaa, 0xe8, + 0x72, 0x87, 0x62, 0x82, 0x2c, 0x2d, 0x26, 0xf4, 0x5c, 0xfc, 0xea, 0xa4, + 0x2e, 0x89, 0x50, 0xb7, 0x97, 0x1e, 0xc9, 0x4e, +}; +static const unsigned char kat1788_addin1[] = { + 0xce, 0x6b, 0xb4, 0xb8, 0x69, 0x5b, 0xd7, 0xbb, 0x48, 0xa1, 0xa9, 0xc2, + 0x74, 0x30, 0x2f, 0x4f, 0xf2, 0xcb, 0xd3, 0x30, 0x72, 0xe3, 0xc6, 0x35, + 0x63, 0x30, 0x2e, 0xbc, 0xf8, 0x25, 0xa6, 0x33, +}; +static const unsigned char kat1788_retbits[] = { + 0x0c, 0xba, 0xa6, 0xa0, 0x67, 0xc4, 0xc5, 0x68, 0x73, 0x67, 0xa3, 0x3a, + 0xb1, 0x5f, 0xad, 0x90, 0xec, 0x64, 0xdf, 0x41, 0xba, 0x5f, 0xc5, 0xf2, + 0xcb, 0xa0, 0x01, 0x99, 0x83, 0x28, 0xf8, 0xa9, 0x4f, 0x3a, 0x4d, 0x8a, + 0x49, 0x8f, 0x8c, 0xa0, 0xc9, 0x70, 0x4a, 0x86, 0xec, 0xbc, 0xe2, 0xe1, + 0x4d, 0x08, 0x23, 0x4f, 0xab, 0x8c, 0x4c, 0xee, 0x79, 0xc4, 0xab, 0x40, + 0x52, 0x2d, 0xd1, 0xf4, +}; +static const struct drbg_kat_pr_false kat1788_t = { + 2, kat1788_entropyin, kat1788_nonce, kat1788_persstr, + kat1788_entropyinreseed, kat1788_addinreseed, kat1788_addin0, + kat1788_addin1, kat1788_retbits +}; +static const struct drbg_kat kat1788 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1788_t +}; + +static const unsigned char kat1789_entropyin[] = { + 0x16, 0xfa, 0x53, 0x65, 0xb5, 0xb5, 0x21, 0x6d, 0xd8, 0xa5, 0xbd, 0xb8, + 0xc7, 0xbe, 0xcc, 0x09, 0xa4, 0x1c, 0x61, 0x62, 0x35, 0x55, 0xa1, 0xc4, +}; +static const unsigned char kat1789_nonce[] = { + 0x0c, 0x10, 0x8c, 0xfc, 0xad, 0xd4, 0xa5, 0xea, 0xde, 0xfc, 0x66, 0xd0, + 0x6f, 0xcd, 0x63, 0x7a, +}; +static const unsigned char kat1789_persstr[] = { + 0x7f, 0x4c, 0xca, 0xdd, 0x08, 0xe4, 0xbb, 0x1d, 0xf1, 0xcb, 0xaa, 0x32, + 0x92, 0x49, 0x1d, 0x66, 0x09, 0xaa, 0x7f, 0x88, 0xaf, 0xb0, 0x74, 0xde, + 0x67, 0x54, 0x5b, 0xfc, 0x1d, 0x00, 0x11, 0x36, +}; +static const unsigned char kat1789_entropyinreseed[] = { + 0xf8, 0x17, 0x11, 0x4b, 0x9e, 0xe5, 0xac, 0x7a, 0x75, 0x67, 0xca, 0x0b, + 0x0d, 0x64, 0xbf, 0xfb, 0x80, 0xb9, 0x15, 0x2f, 0x01, 0xaf, 0x86, 0x45, +}; +static const unsigned char kat1789_addinreseed[] = { + 0x7a, 0x6c, 0x28, 0xa4, 0x0d, 0x51, 0x81, 0x58, 0x01, 0x66, 0xad, 0xb1, + 0x3b, 0xba, 0x1e, 0x8c, 0x21, 0x68, 0xc1, 0x43, 0xbd, 0xcf, 0x78, 0xd0, + 0xba, 0xba, 0x05, 0x02, 0xf9, 0xce, 0xd8, 0x5b, +}; +static const unsigned char kat1789_addin0[] = { + 0x88, 0xfb, 0x83, 0x63, 0x59, 0xf8, 0xe4, 0x6e, 0x3d, 0x06, 0x82, 0x09, + 0x95, 0xcc, 0x58, 0xd6, 0x1b, 0xb6, 0x1f, 0x8a, 0x5e, 0x12, 0x87, 0xec, + 0xe4, 0x11, 0xb6, 0x5b, 0x14, 0x68, 0x31, 0xd3, +}; +static const unsigned char kat1789_addin1[] = { + 0xa2, 0xec, 0x3e, 0x73, 0x0c, 0xb9, 0x41, 0xd6, 0x16, 0x55, 0xbf, 0xef, + 0xba, 0xfb, 0x48, 0x2c, 0xd5, 0xfe, 0xda, 0x99, 0x8b, 0xc3, 0x10, 0x4f, + 0xca, 0x6b, 0xf7, 0x44, 0xfb, 0x18, 0x4b, 0x13, +}; +static const unsigned char kat1789_retbits[] = { + 0x51, 0x4c, 0x5b, 0x0c, 0xb6, 0x7f, 0xe3, 0xa9, 0x98, 0x69, 0x2d, 0xaf, + 0x5c, 0xa4, 0x58, 0x70, 0xad, 0x3d, 0x84, 0xea, 0x05, 0x63, 0x1e, 0x53, + 0xdb, 0xb1, 0x40, 0xd4, 0x31, 0x98, 0x66, 0x03, 0xbd, 0x5b, 0x5b, 0xb0, + 0xc0, 0xe0, 0x2d, 0x51, 0xc1, 0x3e, 0x4b, 0x33, 0xd5, 0x02, 0x15, 0x71, + 0xde, 0xb7, 0xe2, 0x22, 0xd9, 0xa9, 0xfc, 0xaa, 0xbb, 0xaa, 0xf8, 0x8e, + 0xf6, 0x5b, 0xa8, 0xef, +}; +static const struct drbg_kat_pr_false kat1789_t = { + 3, kat1789_entropyin, kat1789_nonce, kat1789_persstr, + kat1789_entropyinreseed, kat1789_addinreseed, kat1789_addin0, + kat1789_addin1, kat1789_retbits +}; +static const struct drbg_kat kat1789 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1789_t +}; + +static const unsigned char kat1790_entropyin[] = { + 0xdb, 0x22, 0x31, 0xa8, 0xdc, 0xb6, 0x0e, 0x15, 0x44, 0x38, 0xbe, 0x8d, + 0x11, 0xb2, 0x21, 0x9e, 0x29, 0x27, 0xe8, 0x31, 0xd5, 0xb3, 0xf6, 0xae, +}; +static const unsigned char kat1790_nonce[] = { + 0x5f, 0x0f, 0x17, 0x21, 0xf2, 0x73, 0x19, 0x9f, 0x41, 0x75, 0xa9, 0x7d, + 0x53, 0x54, 0x99, 0xda, +}; +static const unsigned char kat1790_persstr[] = { + 0x1c, 0x37, 0x64, 0xee, 0x63, 0xbb, 0x12, 0x47, 0x35, 0x0a, 0x4d, 0x4a, + 0x68, 0x25, 0x10, 0xf5, 0xd5, 0xf8, 0x80, 0x21, 0x1a, 0xad, 0xf9, 0xd4, + 0xea, 0x86, 0x5f, 0x6b, 0xa3, 0xd2, 0xcd, 0x74, +}; +static const unsigned char kat1790_entropyinreseed[] = { + 0x96, 0x56, 0x0d, 0xb1, 0x58, 0x08, 0x69, 0xc3, 0x9b, 0x9b, 0x46, 0x07, + 0x4d, 0xe4, 0xc2, 0x99, 0x95, 0xec, 0x1b, 0xd8, 0xfe, 0x78, 0x13, 0xa2, +}; +static const unsigned char kat1790_addinreseed[] = { + 0x1a, 0x9d, 0x96, 0xd8, 0x82, 0x44, 0x87, 0x30, 0x25, 0xac, 0x58, 0x45, + 0xa1, 0xfb, 0x69, 0xd9, 0xaa, 0x9d, 0x18, 0x20, 0x62, 0xe4, 0xb4, 0x45, + 0x26, 0x8f, 0x57, 0x9c, 0x77, 0x85, 0x32, 0xfd, +}; +static const unsigned char kat1790_addin0[] = { + 0x01, 0x4c, 0xc6, 0x9f, 0x6e, 0xcf, 0x20, 0xd1, 0xef, 0x39, 0x08, 0x1d, + 0x9b, 0x94, 0x5a, 0xed, 0x97, 0x00, 0xb8, 0x60, 0x53, 0x0f, 0xb3, 0xa6, + 0xe9, 0xec, 0xa8, 0x7c, 0x6d, 0xac, 0x6b, 0xd6, +}; +static const unsigned char kat1790_addin1[] = { + 0x26, 0xdf, 0x86, 0x83, 0xca, 0x38, 0x36, 0xe5, 0x92, 0x21, 0x55, 0xd4, + 0xe7, 0xe6, 0x27, 0xf3, 0xf1, 0x37, 0xd0, 0x7c, 0x05, 0x62, 0x4e, 0x76, + 0x45, 0x63, 0xae, 0x68, 0xab, 0x0d, 0x75, 0x19, +}; +static const unsigned char kat1790_retbits[] = { + 0xe8, 0x24, 0x10, 0xf1, 0xbf, 0x2c, 0x0c, 0xac, 0xe3, 0x5e, 0x05, 0xcf, + 0x44, 0x23, 0x3e, 0x5c, 0xbc, 0xb3, 0xdd, 0xa7, 0x45, 0x72, 0xc6, 0x9e, + 0xef, 0x14, 0x71, 0x93, 0xf4, 0x7e, 0x40, 0xbc, 0x0d, 0x4d, 0x20, 0x6a, + 0xc8, 0x0b, 0x77, 0xe3, 0x6e, 0xa1, 0x16, 0x38, 0xb3, 0x5a, 0xb5, 0x3f, + 0x7a, 0x16, 0xeb, 0x5c, 0x01, 0xf2, 0xab, 0x43, 0x49, 0x88, 0x4b, 0x08, + 0x8e, 0xf8, 0x77, 0xc4, +}; +static const struct drbg_kat_pr_false kat1790_t = { + 4, kat1790_entropyin, kat1790_nonce, kat1790_persstr, + kat1790_entropyinreseed, kat1790_addinreseed, kat1790_addin0, + kat1790_addin1, kat1790_retbits +}; +static const struct drbg_kat kat1790 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1790_t +}; + +static const unsigned char kat1791_entropyin[] = { + 0x69, 0x11, 0xeb, 0xe9, 0xed, 0xe1, 0xdc, 0xd1, 0x34, 0xdb, 0x33, 0x6f, + 0x95, 0xad, 0x1b, 0x8b, 0xa2, 0x75, 0xbd, 0x56, 0xef, 0xe2, 0x7a, 0x17, +}; +static const unsigned char kat1791_nonce[] = { + 0x54, 0xf1, 0x9e, 0xbb, 0x53, 0xd8, 0xed, 0xcf, 0x4e, 0xae, 0x8c, 0xa4, + 0x63, 0x12, 0x6e, 0xb4, +}; +static const unsigned char kat1791_persstr[] = { + 0x05, 0xe1, 0xa0, 0xf5, 0xb3, 0xd9, 0x64, 0xf3, 0xe6, 0x3a, 0x10, 0x58, + 0xd7, 0xe2, 0xab, 0xa7, 0xfe, 0x58, 0xa9, 0xae, 0x97, 0xc2, 0xaa, 0x37, + 0x45, 0x27, 0xaf, 0x29, 0x6f, 0x4d, 0x18, 0x4d, +}; +static const unsigned char kat1791_entropyinreseed[] = { + 0x10, 0xb4, 0x8f, 0x4a, 0x15, 0xfa, 0x12, 0x1c, 0x51, 0x49, 0x8c, 0x2a, + 0x86, 0x70, 0x0f, 0xc4, 0x7a, 0x55, 0xd8, 0x34, 0x05, 0x16, 0x55, 0x69, +}; +static const unsigned char kat1791_addinreseed[] = { + 0x2f, 0x7e, 0x0d, 0x79, 0x57, 0xb1, 0x8e, 0x03, 0x4b, 0x9c, 0xa9, 0xa1, + 0x19, 0x61, 0x09, 0xca, 0x6c, 0xe3, 0xa5, 0xac, 0x80, 0x60, 0x03, 0x85, + 0xe0, 0x05, 0x14, 0xac, 0xf7, 0x15, 0xe8, 0x1a, +}; +static const unsigned char kat1791_addin0[] = { + 0x3b, 0xb1, 0x3c, 0xc2, 0x97, 0x0e, 0x8f, 0x14, 0x7d, 0xfb, 0x24, 0xfb, + 0x0b, 0x76, 0x1f, 0x0d, 0xe6, 0x32, 0x7b, 0x0f, 0xd1, 0x77, 0xba, 0xc7, + 0x5a, 0xca, 0xa7, 0x2d, 0xfe, 0x60, 0xe2, 0x66, +}; +static const unsigned char kat1791_addin1[] = { + 0x71, 0x4b, 0x13, 0x5d, 0xf6, 0x99, 0x53, 0x1a, 0x72, 0xc5, 0x7c, 0xee, + 0xdd, 0x39, 0x90, 0xf9, 0xd5, 0x3d, 0x68, 0xe7, 0x8d, 0xec, 0x0b, 0x68, + 0xd2, 0xad, 0xd1, 0xf3, 0xa4, 0x94, 0xaf, 0xbb, +}; +static const unsigned char kat1791_retbits[] = { + 0x99, 0x70, 0xd7, 0x20, 0x2f, 0xf7, 0x7e, 0x95, 0xf4, 0x22, 0x51, 0x54, + 0x58, 0x53, 0xcf, 0xd5, 0x0d, 0x1e, 0x5a, 0xd7, 0xa5, 0x17, 0x19, 0xa3, + 0x91, 0xed, 0xe0, 0x0b, 0x3f, 0x8f, 0x50, 0x07, 0xce, 0x05, 0x03, 0x48, + 0x4b, 0x83, 0xd0, 0xf0, 0x14, 0xe6, 0x5a, 0xc0, 0x27, 0x82, 0x9a, 0x5c, + 0x9f, 0xc7, 0xf6, 0x09, 0x2c, 0x62, 0xe7, 0xec, 0x47, 0x51, 0x5d, 0x20, + 0x0b, 0x39, 0xb6, 0x18, +}; +static const struct drbg_kat_pr_false kat1791_t = { + 5, kat1791_entropyin, kat1791_nonce, kat1791_persstr, + kat1791_entropyinreseed, kat1791_addinreseed, kat1791_addin0, + kat1791_addin1, kat1791_retbits +}; +static const struct drbg_kat kat1791 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1791_t +}; + +static const unsigned char kat1792_entropyin[] = { + 0xa3, 0xd8, 0x65, 0x9c, 0x09, 0x7d, 0x5c, 0x7e, 0x27, 0x42, 0x83, 0x64, + 0x7a, 0xad, 0x26, 0xc0, 0x7f, 0xe7, 0x51, 0x17, 0x2c, 0xa1, 0x2e, 0x10, +}; +static const unsigned char kat1792_nonce[] = { + 0xea, 0x0f, 0x68, 0xdd, 0x7b, 0x68, 0x78, 0xd6, 0xd1, 0x39, 0xa9, 0x35, + 0xc2, 0x4b, 0x7f, 0xeb, +}; +static const unsigned char kat1792_persstr[] = { + 0x84, 0x51, 0x5e, 0x05, 0x19, 0x27, 0x97, 0x40, 0xce, 0x7a, 0x00, 0xfa, + 0x1b, 0x31, 0xf6, 0xfb, 0x2b, 0xb1, 0x4b, 0x36, 0x36, 0x8b, 0x9b, 0xbf, + 0x95, 0xb4, 0xc4, 0x32, 0xe1, 0x38, 0x2e, 0x99, +}; +static const unsigned char kat1792_entropyinreseed[] = { + 0x7d, 0xe4, 0x78, 0x11, 0x57, 0x4a, 0x94, 0xe6, 0xec, 0xc4, 0xa2, 0xd1, + 0x6c, 0x41, 0x47, 0xcf, 0xb6, 0x9e, 0x41, 0x1b, 0x66, 0xaa, 0x6d, 0x0c, +}; +static const unsigned char kat1792_addinreseed[] = { + 0xf8, 0x84, 0x45, 0x98, 0x84, 0xe2, 0x2d, 0xd0, 0x6a, 0x7b, 0x4e, 0x23, + 0x43, 0x02, 0x25, 0x77, 0x22, 0x12, 0x13, 0xc8, 0x61, 0xee, 0x61, 0xd6, + 0xa9, 0xb5, 0x96, 0x94, 0x22, 0x99, 0xc7, 0x72, +}; +static const unsigned char kat1792_addin0[] = { + 0x35, 0x84, 0x2e, 0xdb, 0x5d, 0xfb, 0xf0, 0x2c, 0x72, 0xca, 0xf9, 0xe2, + 0x48, 0xf3, 0xc0, 0x7e, 0xf0, 0xf9, 0xb3, 0x80, 0x71, 0x69, 0x5c, 0x0a, + 0x28, 0x52, 0x50, 0x6d, 0x65, 0xe5, 0x25, 0x2e, +}; +static const unsigned char kat1792_addin1[] = { + 0x9a, 0x43, 0x3f, 0xdc, 0x6f, 0x80, 0xb2, 0xcf, 0xb8, 0x13, 0x80, 0xc9, + 0xf9, 0xb4, 0x4b, 0xb4, 0xa2, 0x64, 0xe5, 0xfb, 0xc7, 0x59, 0x34, 0xba, + 0x63, 0x5f, 0xdf, 0xb6, 0x96, 0xec, 0x5d, 0x23, +}; +static const unsigned char kat1792_retbits[] = { + 0xe6, 0xef, 0xbf, 0x12, 0xfe, 0xd1, 0xc6, 0x4c, 0x3a, 0x98, 0x17, 0x55, + 0x71, 0x46, 0x0a, 0x19, 0xa4, 0xc6, 0x2c, 0xea, 0xe4, 0x15, 0x3b, 0xeb, + 0x7a, 0x04, 0x78, 0x4e, 0xa4, 0xd8, 0xdd, 0xc4, 0x1d, 0x9c, 0x8c, 0x6e, + 0x89, 0xf7, 0xb6, 0x4a, 0x95, 0xc6, 0xfe, 0x3d, 0x57, 0xe7, 0xb3, 0x64, + 0x88, 0xe9, 0x36, 0x31, 0x64, 0x8e, 0x1f, 0x94, 0xe0, 0xfc, 0x6f, 0xf3, + 0xc0, 0x58, 0x56, 0x9d, +}; +static const struct drbg_kat_pr_false kat1792_t = { + 6, kat1792_entropyin, kat1792_nonce, kat1792_persstr, + kat1792_entropyinreseed, kat1792_addinreseed, kat1792_addin0, + kat1792_addin1, kat1792_retbits +}; +static const struct drbg_kat kat1792 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1792_t +}; + +static const unsigned char kat1793_entropyin[] = { + 0xdd, 0xc1, 0x37, 0xa7, 0x25, 0x95, 0x7f, 0x7f, 0x36, 0x27, 0x5a, 0x2f, + 0x2e, 0xe1, 0xbf, 0x8a, 0xe9, 0x2a, 0xfe, 0x71, 0x1a, 0x7a, 0x3f, 0x77, +}; +static const unsigned char kat1793_nonce[] = { + 0x4d, 0xc7, 0xe3, 0xc7, 0x5d, 0x20, 0x6e, 0x4e, 0x3e, 0x7f, 0xc0, 0x33, + 0xde, 0x54, 0x2c, 0x20, +}; +static const unsigned char kat1793_persstr[] = { + 0x76, 0x44, 0x3d, 0xdb, 0xcf, 0xfa, 0xd4, 0x0a, 0xd8, 0xc7, 0xc0, 0xb2, + 0x81, 0x10, 0x45, 0x21, 0x6e, 0xa1, 0x6c, 0x7f, 0x54, 0x25, 0x91, 0x9b, + 0x13, 0x78, 0x66, 0xcc, 0x17, 0xbd, 0xd2, 0xdb, +}; +static const unsigned char kat1793_entropyinreseed[] = { + 0x4a, 0xf4, 0xe3, 0xe8, 0x77, 0xca, 0x4b, 0x1d, 0x6f, 0xb9, 0xf4, 0xdc, + 0x42, 0x21, 0x08, 0xdc, 0x47, 0xc9, 0x24, 0xfa, 0xaf, 0x93, 0x1f, 0x6b, +}; +static const unsigned char kat1793_addinreseed[] = { + 0xaa, 0x28, 0xf7, 0x23, 0x36, 0x32, 0x14, 0xac, 0xd0, 0x82, 0xcc, 0xd2, + 0x35, 0x8b, 0xe8, 0xc7, 0x2f, 0x2d, 0x3a, 0x90, 0x31, 0x53, 0x83, 0xd4, + 0xb6, 0x79, 0x93, 0xf8, 0xd8, 0xdf, 0xdc, 0xcb, +}; +static const unsigned char kat1793_addin0[] = { + 0x8c, 0x42, 0x7d, 0x26, 0x0f, 0xdf, 0xed, 0x81, 0x33, 0x51, 0xea, 0x2c, + 0xef, 0x64, 0x31, 0x52, 0x78, 0xb3, 0x3a, 0x08, 0x78, 0x91, 0xe3, 0x6a, + 0xea, 0x41, 0x60, 0x57, 0x4e, 0xcd, 0xdd, 0x74, +}; +static const unsigned char kat1793_addin1[] = { + 0x8b, 0xca, 0x36, 0x6d, 0xc9, 0x0b, 0x9a, 0x2a, 0x9f, 0xaf, 0x85, 0x56, + 0x82, 0x0c, 0x64, 0x31, 0xe2, 0x6e, 0x0f, 0xdb, 0x7d, 0x9c, 0x7c, 0x2c, + 0x94, 0xfc, 0xc8, 0x9d, 0xa6, 0x08, 0x18, 0xf1, +}; +static const unsigned char kat1793_retbits[] = { + 0x83, 0x47, 0x06, 0x8e, 0xbb, 0x42, 0xb3, 0x59, 0x22, 0x8a, 0x84, 0x34, + 0x03, 0x69, 0xd5, 0x1a, 0x73, 0xf8, 0x5a, 0xb2, 0xcd, 0xa2, 0xe3, 0x2d, + 0xd2, 0x66, 0x3f, 0xc8, 0x3d, 0x2c, 0x64, 0x74, 0xe3, 0x8a, 0x08, 0xb8, + 0xe9, 0xe6, 0x0d, 0x6e, 0xc0, 0xbc, 0x1a, 0x4e, 0xe9, 0xf0, 0x93, 0xfb, + 0x69, 0xf0, 0xcc, 0x42, 0x81, 0x25, 0x8d, 0x72, 0xc6, 0xe4, 0xc7, 0xa4, + 0xd1, 0x0f, 0x08, 0xac, +}; +static const struct drbg_kat_pr_false kat1793_t = { + 7, kat1793_entropyin, kat1793_nonce, kat1793_persstr, + kat1793_entropyinreseed, kat1793_addinreseed, kat1793_addin0, + kat1793_addin1, kat1793_retbits +}; +static const struct drbg_kat kat1793 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1793_t +}; + +static const unsigned char kat1794_entropyin[] = { + 0x3c, 0xf4, 0xe2, 0x61, 0xf7, 0x26, 0xeb, 0x75, 0xdc, 0xb3, 0x56, 0x29, + 0xf4, 0x4a, 0x31, 0x02, 0x96, 0x8b, 0x6c, 0x94, 0x79, 0x0f, 0x41, 0x16, +}; +static const unsigned char kat1794_nonce[] = { + 0x16, 0x7a, 0xbc, 0xa4, 0xfd, 0xaf, 0x21, 0xa3, 0x0b, 0x55, 0x43, 0x14, + 0xd2, 0xde, 0xfc, 0x7e, +}; +static const unsigned char kat1794_persstr[] = { + 0xcc, 0x87, 0xbc, 0x66, 0xae, 0x04, 0xea, 0x9b, 0x35, 0xef, 0x84, 0x7f, + 0x92, 0x90, 0x9f, 0x8d, 0xd2, 0x36, 0x41, 0xd6, 0xec, 0x26, 0x10, 0xbc, + 0xdf, 0x1d, 0xb7, 0x8a, 0xb0, 0xfa, 0x4f, 0x2d, +}; +static const unsigned char kat1794_entropyinreseed[] = { + 0xb5, 0x9b, 0xe5, 0xdd, 0x93, 0xd7, 0xd2, 0xd4, 0x00, 0xd9, 0xbc, 0x93, + 0xb6, 0xc4, 0x41, 0x60, 0x15, 0xf7, 0x0f, 0xdc, 0x3a, 0xc8, 0x09, 0x78, +}; +static const unsigned char kat1794_addinreseed[] = { + 0x32, 0x38, 0x73, 0x32, 0x34, 0x6c, 0x56, 0x6e, 0xc9, 0x45, 0x6a, 0x16, + 0xe9, 0x16, 0xe9, 0xa4, 0x67, 0xfa, 0x0d, 0xb0, 0xc8, 0xa3, 0x15, 0xb6, + 0x71, 0x21, 0xe3, 0x00, 0x35, 0x02, 0x99, 0x38, +}; +static const unsigned char kat1794_addin0[] = { + 0xc4, 0xcf, 0x2c, 0xb9, 0x2c, 0xf8, 0x56, 0xe3, 0x33, 0xcd, 0x95, 0x3a, + 0xab, 0x50, 0x0b, 0x3f, 0xb7, 0xa2, 0x59, 0xc6, 0x98, 0x1b, 0x22, 0x06, + 0xf3, 0x9b, 0xa1, 0x6b, 0xf4, 0x39, 0xc5, 0x81, +}; +static const unsigned char kat1794_addin1[] = { + 0xac, 0xd9, 0x8e, 0x1c, 0x9a, 0xd4, 0x9f, 0x1b, 0x30, 0x9e, 0xef, 0xe9, + 0x5a, 0x5b, 0xa3, 0x6f, 0x35, 0xc4, 0x11, 0xfc, 0x42, 0x41, 0xaf, 0xbe, + 0x06, 0x7e, 0x6a, 0xde, 0x67, 0xff, 0xa0, 0x9e, +}; +static const unsigned char kat1794_retbits[] = { + 0xf9, 0x59, 0x9d, 0x40, 0x2a, 0x9f, 0x26, 0xfd, 0x6f, 0x1f, 0xe9, 0x8f, + 0xde, 0x34, 0x22, 0x54, 0x6b, 0x7d, 0x75, 0x11, 0x62, 0xa7, 0x28, 0x8b, + 0xfc, 0x6b, 0x32, 0xf8, 0x63, 0xae, 0x98, 0xb1, 0xb2, 0x04, 0x82, 0x86, + 0x32, 0xd3, 0xad, 0x5e, 0x90, 0x0c, 0xb0, 0xfe, 0x54, 0xd8, 0x4b, 0x2c, + 0xeb, 0x4d, 0xf1, 0x55, 0xcc, 0xfd, 0x99, 0x1e, 0x93, 0xa2, 0x63, 0xe1, + 0xe0, 0x4f, 0xdb, 0xdc, +}; +static const struct drbg_kat_pr_false kat1794_t = { + 8, kat1794_entropyin, kat1794_nonce, kat1794_persstr, + kat1794_entropyinreseed, kat1794_addinreseed, kat1794_addin0, + kat1794_addin1, kat1794_retbits +}; +static const struct drbg_kat kat1794 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1794_t +}; + +static const unsigned char kat1795_entropyin[] = { + 0xf8, 0xfe, 0xa2, 0x09, 0xa8, 0xab, 0xf3, 0xd6, 0x70, 0x0f, 0x05, 0x12, + 0x91, 0xbf, 0xf9, 0x86, 0x55, 0xf9, 0x9c, 0x10, 0x41, 0xd6, 0x9b, 0x61, +}; +static const unsigned char kat1795_nonce[] = { + 0xfc, 0xcf, 0xb4, 0x00, 0xdb, 0x6f, 0x4b, 0xbf, 0xaf, 0xa5, 0x1b, 0xda, + 0xc0, 0x35, 0x80, 0xd8, +}; +static const unsigned char kat1795_persstr[] = { + 0x71, 0x70, 0xc1, 0x54, 0x8d, 0xf5, 0xc4, 0x8e, 0xee, 0x3b, 0x07, 0x65, + 0x16, 0x39, 0x6c, 0xd3, 0x55, 0xcd, 0x76, 0x1d, 0xd2, 0x9b, 0x8a, 0x53, + 0x42, 0x63, 0xa3, 0xb9, 0xaf, 0x29, 0x9d, 0xca, +}; +static const unsigned char kat1795_entropyinreseed[] = { + 0x96, 0x3e, 0x22, 0x2a, 0xf3, 0xed, 0x7d, 0x4b, 0x6d, 0x33, 0xd9, 0x2f, + 0x8e, 0xfb, 0x7d, 0xbd, 0x44, 0x70, 0xdd, 0x86, 0xef, 0x4a, 0x22, 0x03, +}; +static const unsigned char kat1795_addinreseed[] = { + 0x34, 0xa1, 0x0d, 0x36, 0x53, 0x33, 0xbc, 0x69, 0x40, 0x24, 0xe7, 0xe0, + 0x87, 0x28, 0x0d, 0x5f, 0xa2, 0x7f, 0x0f, 0x69, 0xc4, 0x8e, 0x53, 0x79, + 0x9b, 0x0d, 0x3f, 0x55, 0xbb, 0xbe, 0x58, 0x21, +}; +static const unsigned char kat1795_addin0[] = { + 0xbc, 0x95, 0xea, 0x09, 0x9f, 0xd7, 0xeb, 0x90, 0x7b, 0xcc, 0x96, 0x69, + 0xff, 0x2a, 0xed, 0x11, 0x0d, 0xb8, 0x8c, 0x30, 0xb0, 0x9a, 0x10, 0xa6, + 0xa5, 0x0b, 0x45, 0x14, 0x6c, 0x19, 0xa2, 0xba, +}; +static const unsigned char kat1795_addin1[] = { + 0x87, 0x12, 0x11, 0x49, 0xb2, 0x5e, 0xb1, 0xe5, 0x50, 0x0e, 0x78, 0x2d, + 0x7c, 0xd0, 0x73, 0x3f, 0x9d, 0xff, 0x8e, 0x59, 0x73, 0xac, 0xfd, 0x0b, + 0xba, 0x04, 0x93, 0x2c, 0xbb, 0x05, 0x8c, 0xf6, +}; +static const unsigned char kat1795_retbits[] = { + 0xb3, 0x25, 0xc7, 0xfa, 0xde, 0xe9, 0x11, 0xab, 0x38, 0xde, 0x35, 0xbb, + 0x02, 0xfe, 0x63, 0xf7, 0x04, 0xbd, 0xaa, 0xe8, 0xeb, 0xd2, 0xe9, 0x75, + 0x0d, 0x27, 0x3b, 0x65, 0x52, 0xe3, 0x42, 0x86, 0xe4, 0x72, 0xa0, 0x1c, + 0x05, 0x4d, 0x5a, 0x84, 0x6a, 0x64, 0xce, 0x0b, 0xe1, 0x5f, 0xc4, 0x4a, + 0xfd, 0xf5, 0xc6, 0x46, 0x5b, 0x50, 0x86, 0x4b, 0x24, 0x65, 0x89, 0x4c, + 0x83, 0x88, 0xc6, 0xfb, +}; +static const struct drbg_kat_pr_false kat1795_t = { + 9, kat1795_entropyin, kat1795_nonce, kat1795_persstr, + kat1795_entropyinreseed, kat1795_addinreseed, kat1795_addin0, + kat1795_addin1, kat1795_retbits +}; +static const struct drbg_kat kat1795 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1795_t +}; + +static const unsigned char kat1796_entropyin[] = { + 0x2d, 0xbb, 0xc1, 0xb4, 0x1e, 0xca, 0x69, 0xae, 0xeb, 0x3f, 0x16, 0x19, + 0x07, 0xb1, 0x22, 0x81, 0x65, 0x36, 0x56, 0xf1, 0x5c, 0x87, 0x93, 0x41, +}; +static const unsigned char kat1796_nonce[] = { + 0x7d, 0x88, 0xa1, 0x24, 0xa3, 0xbd, 0x84, 0x71, 0xa5, 0xb5, 0x61, 0xda, + 0xd2, 0xce, 0xb9, 0xb2, +}; +static const unsigned char kat1796_persstr[] = { + 0xa1, 0xb6, 0x6f, 0x79, 0xb4, 0x8f, 0xda, 0xf8, 0x19, 0x1a, 0xb2, 0x70, + 0x35, 0xb0, 0xa3, 0xa8, 0xbb, 0x1c, 0xed, 0x65, 0x8d, 0x03, 0x00, 0x58, + 0x14, 0xc2, 0x49, 0x4b, 0x68, 0x02, 0x64, 0x85, +}; +static const unsigned char kat1796_entropyinreseed[] = { + 0x50, 0xe0, 0xdf, 0x18, 0x7d, 0xd9, 0xc2, 0x7d, 0x5a, 0x0e, 0x96, 0x2c, + 0x2c, 0x86, 0x15, 0xbf, 0xe7, 0x22, 0x8d, 0x14, 0x75, 0xe2, 0xf4, 0xf7, +}; +static const unsigned char kat1796_addinreseed[] = { + 0x85, 0x98, 0xc8, 0x0c, 0xaf, 0x70, 0xe2, 0xe6, 0xff, 0xce, 0x3c, 0x6c, + 0xb4, 0xf0, 0x69, 0x33, 0x11, 0x40, 0x15, 0xd7, 0xc9, 0xc5, 0xd2, 0x73, + 0xb4, 0x28, 0xb4, 0xfb, 0xc2, 0xd1, 0x4b, 0x7c, +}; +static const unsigned char kat1796_addin0[] = { + 0x83, 0x94, 0xe9, 0x45, 0xa4, 0x21, 0xe9, 0xbc, 0x68, 0x4f, 0x49, 0x87, + 0x6a, 0x01, 0x15, 0x96, 0xa2, 0x2c, 0x6c, 0x98, 0x8b, 0x83, 0xc7, 0x30, + 0x9f, 0x3d, 0xbc, 0xbd, 0x9c, 0xb1, 0x9d, 0x8c, +}; +static const unsigned char kat1796_addin1[] = { + 0x70, 0x52, 0x58, 0xf5, 0xb7, 0x80, 0x48, 0x20, 0x7e, 0x1e, 0x3f, 0x8e, + 0xfd, 0x9e, 0xaf, 0xee, 0xfe, 0xde, 0x23, 0xb4, 0xe5, 0x1c, 0x79, 0xc0, + 0x31, 0x04, 0xb1, 0x56, 0x86, 0x56, 0x27, 0xd5, +}; +static const unsigned char kat1796_retbits[] = { + 0xb7, 0xf5, 0x39, 0x6c, 0x9d, 0x2d, 0xbb, 0x14, 0xfb, 0xe1, 0x62, 0x2d, + 0x15, 0x40, 0xe5, 0xdf, 0xe7, 0x2b, 0xba, 0x85, 0xcd, 0xd4, 0x95, 0x15, + 0x11, 0x47, 0x28, 0xdc, 0x9a, 0x35, 0xef, 0x38, 0x6a, 0xd5, 0xc1, 0xb7, + 0xc7, 0xb7, 0xc4, 0x0b, 0x06, 0x90, 0x4f, 0x71, 0x19, 0x0a, 0x39, 0xd5, + 0xbe, 0x41, 0x9b, 0x29, 0xa4, 0x2b, 0x94, 0x70, 0xe6, 0xb9, 0x73, 0x83, + 0x0f, 0x01, 0x87, 0xd3, +}; +static const struct drbg_kat_pr_false kat1796_t = { + 10, kat1796_entropyin, kat1796_nonce, kat1796_persstr, + kat1796_entropyinreseed, kat1796_addinreseed, kat1796_addin0, + kat1796_addin1, kat1796_retbits +}; +static const struct drbg_kat kat1796 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1796_t +}; + +static const unsigned char kat1797_entropyin[] = { + 0x60, 0x7b, 0x26, 0x92, 0x9e, 0x2a, 0x93, 0x26, 0xcd, 0x3b, 0xb2, 0x6e, + 0x7d, 0xd1, 0x0b, 0x13, 0x09, 0x5c, 0xca, 0x93, 0x94, 0x95, 0x75, 0xf5, +}; +static const unsigned char kat1797_nonce[] = { + 0xbf, 0xf2, 0x91, 0xe5, 0x98, 0x12, 0xd1, 0x0a, 0x4d, 0x65, 0xb3, 0x8a, + 0x61, 0x44, 0xd0, 0x08, +}; +static const unsigned char kat1797_persstr[] = { + 0x52, 0xaa, 0x98, 0x10, 0xf2, 0x6f, 0x28, 0x4e, 0x91, 0x5a, 0xa3, 0x8f, + 0x20, 0xd5, 0x8b, 0x38, 0x94, 0x9e, 0x5d, 0xb9, 0x27, 0x80, 0x51, 0x1d, + 0x69, 0xcf, 0x73, 0xc0, 0x8b, 0xb9, 0x92, 0x6f, +}; +static const unsigned char kat1797_entropyinreseed[] = { + 0x64, 0x89, 0xce, 0x0e, 0x80, 0xeb, 0x12, 0xde, 0x88, 0xcb, 0xcd, 0xc4, + 0xe6, 0xa1, 0xf1, 0x64, 0xf8, 0xc3, 0x41, 0x09, 0xa8, 0x42, 0x21, 0xe9, +}; +static const unsigned char kat1797_addinreseed[] = { + 0xf9, 0xd6, 0x5f, 0x81, 0x8d, 0xc0, 0x80, 0x6e, 0xaa, 0xa9, 0x0f, 0x22, + 0xa6, 0x1b, 0x7c, 0xf3, 0xde, 0x69, 0x54, 0x2f, 0xd7, 0x22, 0x39, 0x69, + 0x36, 0x13, 0x84, 0x1b, 0x92, 0x4a, 0xd2, 0xb0, +}; +static const unsigned char kat1797_addin0[] = { + 0xd8, 0x59, 0x20, 0xfa, 0x2d, 0x32, 0x1e, 0xf6, 0x17, 0xb2, 0x39, 0x8e, + 0x43, 0x8c, 0x6a, 0xa4, 0x55, 0x22, 0x91, 0x24, 0x9c, 0x54, 0x4a, 0x65, + 0xe6, 0x2f, 0xe1, 0xdb, 0xfa, 0x77, 0xfe, 0x75, +}; +static const unsigned char kat1797_addin1[] = { + 0x77, 0xf9, 0x64, 0x78, 0x0f, 0x61, 0x98, 0xe5, 0x21, 0xa1, 0xd3, 0x11, + 0x1c, 0xc4, 0xa8, 0xaa, 0xc7, 0xcd, 0x84, 0x2d, 0x8b, 0xb6, 0x90, 0x44, + 0x95, 0xc8, 0xbb, 0x25, 0x57, 0x82, 0x86, 0xd9, +}; +static const unsigned char kat1797_retbits[] = { + 0xb8, 0xc1, 0xa5, 0x3e, 0xa0, 0x7a, 0xf7, 0xcb, 0xcf, 0xec, 0x57, 0xb7, + 0xc4, 0x89, 0xfa, 0xf8, 0x51, 0x61, 0xd9, 0xdd, 0xe7, 0xc2, 0x73, 0x4b, + 0x60, 0x5f, 0x62, 0x38, 0xbc, 0x3a, 0xaf, 0xdc, 0x44, 0x83, 0xd2, 0x41, + 0x35, 0x2c, 0xaf, 0x04, 0x47, 0x9b, 0xa6, 0x7c, 0x84, 0xc1, 0xbf, 0xeb, + 0x19, 0xa8, 0xbb, 0xf0, 0xc4, 0xc0, 0xe7, 0x07, 0x28, 0x8d, 0x2c, 0x2c, + 0x69, 0x70, 0x11, 0x22, +}; +static const struct drbg_kat_pr_false kat1797_t = { + 11, kat1797_entropyin, kat1797_nonce, kat1797_persstr, + kat1797_entropyinreseed, kat1797_addinreseed, kat1797_addin0, + kat1797_addin1, kat1797_retbits +}; +static const struct drbg_kat kat1797 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1797_t +}; + +static const unsigned char kat1798_entropyin[] = { + 0xe1, 0xb5, 0xb9, 0x1f, 0x0f, 0x5e, 0xf3, 0xd6, 0x65, 0x18, 0xca, 0x65, + 0x09, 0x8c, 0x6a, 0xf7, 0x90, 0x80, 0x66, 0x24, 0xbf, 0x6c, 0x2e, 0x98, +}; +static const unsigned char kat1798_nonce[] = { + 0xe9, 0x27, 0x8e, 0xa5, 0xf8, 0x64, 0x35, 0x11, 0xcd, 0x78, 0x7a, 0x71, + 0xe3, 0x9b, 0x4c, 0x4d, +}; +static const unsigned char kat1798_persstr[] = { + 0x0c, 0xab, 0x8f, 0x63, 0xd0, 0x8f, 0xad, 0xaa, 0x11, 0xc1, 0xe8, 0x0a, + 0x1e, 0x29, 0x82, 0x95, 0x06, 0xbe, 0x37, 0x20, 0x96, 0x3b, 0xad, 0x7f, + 0xe9, 0x08, 0xea, 0x74, 0x88, 0x0e, 0x41, 0x38, +}; +static const unsigned char kat1798_entropyinreseed[] = { + 0xcf, 0x20, 0x4b, 0xbc, 0x35, 0xe9, 0x77, 0xfb, 0x77, 0xcb, 0x04, 0x8a, + 0xcb, 0x7a, 0x3c, 0xd5, 0xba, 0x1d, 0x8e, 0x1d, 0xd6, 0x48, 0x43, 0x13, +}; +static const unsigned char kat1798_addinreseed[] = { + 0x3c, 0x60, 0xd5, 0x16, 0xaf, 0x0f, 0x43, 0x61, 0x2e, 0x2e, 0x0d, 0xb1, + 0xad, 0x91, 0xba, 0x12, 0xad, 0x5a, 0x9b, 0xdb, 0x20, 0xcb, 0x3c, 0x80, + 0x7a, 0x7a, 0x30, 0xfd, 0xc0, 0x0d, 0xac, 0x8e, +}; +static const unsigned char kat1798_addin0[] = { + 0x4b, 0x69, 0x7b, 0xdf, 0x6e, 0xe0, 0x15, 0xfa, 0xac, 0xfa, 0x95, 0x96, + 0xcf, 0x4a, 0xb6, 0x64, 0xd4, 0x7d, 0xbb, 0xc1, 0x98, 0xac, 0x77, 0x11, + 0x2b, 0x2e, 0x64, 0xe3, 0x32, 0x51, 0xa0, 0x30, +}; +static const unsigned char kat1798_addin1[] = { + 0x89, 0xdc, 0x88, 0xd0, 0xba, 0x7c, 0x9d, 0xd8, 0x31, 0xf0, 0xcf, 0x11, + 0xbe, 0xbd, 0x08, 0x0e, 0x1c, 0x38, 0xd1, 0x69, 0x70, 0xcf, 0x48, 0x7b, + 0x46, 0xe0, 0xaa, 0x7e, 0xbd, 0x46, 0x82, 0x40, +}; +static const unsigned char kat1798_retbits[] = { + 0x8d, 0x84, 0xec, 0x1a, 0x7b, 0x11, 0xdd, 0xed, 0xdd, 0xdd, 0x6d, 0x6b, + 0x90, 0xb2, 0x60, 0x4e, 0x6d, 0x6c, 0x87, 0x2c, 0x9d, 0x3e, 0xce, 0x42, + 0x4c, 0xae, 0x84, 0xbe, 0x9b, 0x71, 0xd8, 0xc0, 0xc1, 0x39, 0x5a, 0xfe, + 0xbd, 0x95, 0x50, 0x20, 0xcc, 0xa1, 0x5b, 0x03, 0xa5, 0xf5, 0x09, 0xd8, + 0x8d, 0x51, 0x5b, 0x3b, 0xbc, 0xd5, 0x8f, 0xe9, 0x0a, 0x30, 0x52, 0xb0, + 0x07, 0xf7, 0xe8, 0xf5, +}; +static const struct drbg_kat_pr_false kat1798_t = { + 12, kat1798_entropyin, kat1798_nonce, kat1798_persstr, + kat1798_entropyinreseed, kat1798_addinreseed, kat1798_addin0, + kat1798_addin1, kat1798_retbits +}; +static const struct drbg_kat kat1798 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1798_t +}; + +static const unsigned char kat1799_entropyin[] = { + 0xb4, 0x6c, 0x57, 0xd2, 0x61, 0xd5, 0x94, 0x9f, 0x47, 0x12, 0x98, 0x28, + 0xcd, 0x1a, 0x7f, 0xc8, 0xbe, 0xa0, 0x82, 0x61, 0x13, 0x25, 0x57, 0xe0, +}; +static const unsigned char kat1799_nonce[] = { + 0x82, 0x9f, 0x0e, 0x69, 0x20, 0x55, 0xf6, 0xba, 0xf7, 0xf5, 0x5d, 0x36, + 0x42, 0x13, 0xbd, 0xb1, +}; +static const unsigned char kat1799_persstr[] = { + 0x4e, 0x00, 0x00, 0x1a, 0x12, 0xf5, 0x32, 0xeb, 0x49, 0x9d, 0xf4, 0x71, + 0x0e, 0x47, 0xdb, 0x80, 0xc1, 0x5b, 0x08, 0xc0, 0x0c, 0xa9, 0x2b, 0x84, + 0x85, 0xd3, 0xb4, 0xa8, 0xe0, 0x21, 0xa4, 0xbe, +}; +static const unsigned char kat1799_entropyinreseed[] = { + 0x56, 0xc5, 0x0b, 0x70, 0x16, 0x34, 0xb9, 0x37, 0x96, 0x90, 0x10, 0xc3, + 0xac, 0x50, 0x53, 0xee, 0x6c, 0x7e, 0xa6, 0x90, 0xaa, 0x65, 0x2d, 0x6b, +}; +static const unsigned char kat1799_addinreseed[] = { + 0xcd, 0xbc, 0x87, 0x31, 0xa1, 0xe3, 0x9a, 0x36, 0xac, 0x03, 0x79, 0x02, + 0x77, 0xfa, 0x02, 0xee, 0x09, 0xd8, 0x35, 0xd6, 0xcd, 0x73, 0x70, 0xf9, + 0x3d, 0x78, 0xfb, 0x18, 0x4c, 0x6c, 0xd7, 0x9c, +}; +static const unsigned char kat1799_addin0[] = { + 0xe0, 0xc2, 0xbb, 0x2d, 0xc1, 0x87, 0x2f, 0x85, 0x6f, 0x7f, 0x15, 0x94, + 0xb9, 0xf6, 0x52, 0xb6, 0x38, 0xa0, 0xf7, 0x80, 0x85, 0x5c, 0xe4, 0x99, + 0xa7, 0xcf, 0x26, 0x28, 0xe1, 0xb1, 0x76, 0x3c, +}; +static const unsigned char kat1799_addin1[] = { + 0x0e, 0xec, 0x40, 0xf4, 0x86, 0xff, 0xbd, 0xa8, 0x3e, 0xfc, 0xa8, 0x89, + 0xb5, 0xf8, 0xe8, 0x43, 0x6f, 0xba, 0xe0, 0xcf, 0x89, 0xc5, 0xa4, 0x01, + 0x28, 0x6b, 0x81, 0x91, 0x3a, 0xaf, 0x95, 0xd1, +}; +static const unsigned char kat1799_retbits[] = { + 0x91, 0xcc, 0x03, 0x09, 0x72, 0xe6, 0xc2, 0x85, 0x6f, 0x49, 0x03, 0x11, + 0xb7, 0x4c, 0x23, 0xad, 0xf0, 0x5d, 0x87, 0x91, 0xe5, 0x8f, 0xff, 0x2b, + 0x03, 0x48, 0x01, 0x63, 0x48, 0xc6, 0xc9, 0x9f, 0xa9, 0x68, 0x63, 0xe6, + 0x30, 0xfa, 0xfe, 0x10, 0x5a, 0x81, 0xc3, 0x4c, 0x2f, 0x93, 0xe7, 0xf0, + 0xff, 0x09, 0xfa, 0x74, 0x23, 0x3e, 0x6f, 0x88, 0x02, 0xce, 0xb9, 0xcf, + 0x04, 0x40, 0x9c, 0xa3, +}; +static const struct drbg_kat_pr_false kat1799_t = { + 13, kat1799_entropyin, kat1799_nonce, kat1799_persstr, + kat1799_entropyinreseed, kat1799_addinreseed, kat1799_addin0, + kat1799_addin1, kat1799_retbits +}; +static const struct drbg_kat kat1799 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1799_t +}; + +static const unsigned char kat1800_entropyin[] = { + 0xa7, 0x1b, 0x17, 0xc7, 0x42, 0x8f, 0x2b, 0x3e, 0x67, 0x5a, 0x0c, 0x46, + 0xcf, 0xd1, 0x7d, 0x89, 0x15, 0x90, 0x04, 0x62, 0x02, 0xdf, 0x4a, 0x3e, +}; +static const unsigned char kat1800_nonce[] = { + 0x55, 0x8c, 0x6e, 0xc0, 0x9d, 0x48, 0x33, 0xbd, 0x1e, 0xb2, 0x89, 0xa5, + 0x8d, 0x9a, 0x80, 0xe6, +}; +static const unsigned char kat1800_persstr[] = { + 0xee, 0x6d, 0x71, 0xf0, 0xbd, 0x06, 0x64, 0xea, 0x86, 0xe4, 0xb0, 0x4f, + 0xf6, 0xe4, 0x75, 0x10, 0xe9, 0xc4, 0x29, 0x32, 0x47, 0xce, 0xfb, 0x9f, + 0xea, 0x3b, 0x5c, 0xc1, 0xc8, 0xed, 0xec, 0xf7, +}; +static const unsigned char kat1800_entropyinreseed[] = { + 0x11, 0x80, 0xc5, 0x75, 0xb9, 0x9d, 0x09, 0xc7, 0x50, 0xe4, 0x4f, 0xed, + 0x75, 0x6e, 0x75, 0x5f, 0xd8, 0xb0, 0x10, 0xbc, 0x75, 0x11, 0xbf, 0xde, +}; +static const unsigned char kat1800_addinreseed[] = { + 0x85, 0x75, 0x65, 0xdf, 0xef, 0xed, 0xbe, 0xbc, 0x2b, 0x93, 0x07, 0x79, + 0x5d, 0x83, 0x42, 0xdd, 0x37, 0x4c, 0xcf, 0xec, 0x43, 0xbd, 0x45, 0x4f, + 0x7b, 0x92, 0x24, 0x31, 0xe9, 0x36, 0x83, 0x07, +}; +static const unsigned char kat1800_addin0[] = { + 0xc2, 0x66, 0x01, 0x9b, 0xef, 0x29, 0x4f, 0xae, 0xc2, 0x87, 0xd1, 0x49, + 0x27, 0x6c, 0x9b, 0xef, 0x20, 0x25, 0x8c, 0x3e, 0xf0, 0x68, 0x51, 0xc5, + 0x0b, 0x63, 0x0f, 0x76, 0x81, 0xa6, 0x87, 0xed, +}; +static const unsigned char kat1800_addin1[] = { + 0x8d, 0x8b, 0x34, 0xc3, 0x01, 0x86, 0x62, 0x13, 0x57, 0x9e, 0x2d, 0x4a, + 0x0d, 0xed, 0x89, 0x50, 0x2c, 0x68, 0x37, 0x3e, 0xa2, 0x34, 0x53, 0xba, + 0x89, 0x6f, 0x18, 0x3c, 0x35, 0x37, 0x61, 0x0f, +}; +static const unsigned char kat1800_retbits[] = { + 0xe5, 0x36, 0x33, 0xd4, 0x9f, 0xa5, 0x64, 0x28, 0xc0, 0x81, 0x2e, 0xd0, + 0xe2, 0xec, 0xbb, 0x8c, 0x97, 0x3b, 0x91, 0xb9, 0x30, 0x95, 0x9a, 0xae, + 0x4f, 0x18, 0x54, 0xe2, 0x5b, 0x52, 0xfb, 0x10, 0x23, 0x0b, 0x58, 0x0d, + 0x7f, 0xd0, 0x1c, 0x0e, 0x54, 0xec, 0x25, 0xdc, 0x4f, 0xc4, 0x41, 0x51, + 0x24, 0xab, 0x5b, 0x22, 0xa0, 0x07, 0x12, 0xd3, 0xd1, 0xdd, 0x01, 0xc0, + 0x93, 0x46, 0x6f, 0x9b, +}; +static const struct drbg_kat_pr_false kat1800_t = { + 14, kat1800_entropyin, kat1800_nonce, kat1800_persstr, + kat1800_entropyinreseed, kat1800_addinreseed, kat1800_addin0, + kat1800_addin1, kat1800_retbits +}; +static const struct drbg_kat kat1800 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1800_t +}; + +static const unsigned char kat1801_entropyin[] = { + 0x85, 0x16, 0xa8, 0x78, 0x8f, 0x6a, 0x58, 0xdd, 0xad, 0xed, 0xf8, 0x17, + 0x5a, 0xa2, 0x89, 0xa2, 0xbc, 0x31, 0x0c, 0x07, 0xef, 0x0d, 0x0d, 0x82, +}; +static const unsigned char kat1801_nonce[] = { + 0x5d, 0xb7, 0xbe, 0x3e, 0x06, 0x83, 0x00, 0xb2, 0x5b, 0xd9, 0x49, 0x74, + 0x47, 0x5e, 0x58, 0xf5, +}; +static const unsigned char kat1801_persstr[] = {0}; +static const unsigned char kat1801_entropyinreseed[] = { + 0x42, 0x3b, 0x99, 0x12, 0xe0, 0xe6, 0xfb, 0xef, 0x38, 0x64, 0x2c, 0x46, + 0xdf, 0x7d, 0xba, 0xee, 0x21, 0x97, 0x17, 0x33, 0x52, 0xf1, 0x52, 0x67, +}; +static const unsigned char kat1801_addinreseed[] = {0}; +static const unsigned char kat1801_addin0[] = {0}; +static const unsigned char kat1801_addin1[] = {0}; +static const unsigned char kat1801_retbits[] = { + 0xc6, 0x12, 0xff, 0xdb, 0x9e, 0xa6, 0xe2, 0x09, 0x01, 0xe8, 0xf5, 0x8c, + 0x18, 0x0d, 0xc4, 0xd7, 0x9b, 0x9a, 0x25, 0xbb, 0x51, 0xff, 0xb7, 0x5d, + 0x7b, 0x40, 0x76, 0xf8, 0xf6, 0x79, 0x1c, 0x23, 0x2e, 0xea, 0xab, 0xb2, + 0xe4, 0x3f, 0x30, 0x91, 0x55, 0xe5, 0x38, 0x10, 0xae, 0x79, 0x5e, 0xba, + 0x66, 0x71, 0x24, 0xa9, 0xf6, 0x97, 0xf6, 0xbb, 0x35, 0x67, 0x85, 0xed, + 0xd9, 0xff, 0x39, 0x59, +}; +static const struct drbg_kat_pr_false kat1801_t = { + 0, kat1801_entropyin, kat1801_nonce, kat1801_persstr, + kat1801_entropyinreseed, kat1801_addinreseed, kat1801_addin0, + kat1801_addin1, kat1801_retbits +}; +static const struct drbg_kat kat1801 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1801_t +}; + +static const unsigned char kat1802_entropyin[] = { + 0x88, 0x93, 0x59, 0x3a, 0x21, 0xe2, 0xdf, 0x41, 0xdd, 0xbd, 0x7f, 0xce, + 0xe3, 0x00, 0x18, 0xa6, 0x9f, 0xfb, 0x23, 0x35, 0x86, 0x0d, 0x18, 0xda, +}; +static const unsigned char kat1802_nonce[] = { + 0xfd, 0x1d, 0xc5, 0x85, 0xcc, 0x19, 0x5c, 0x10, 0xd7, 0xe2, 0x74, 0x18, + 0xff, 0x2d, 0xdd, 0x35, +}; +static const unsigned char kat1802_persstr[] = {0}; +static const unsigned char kat1802_entropyinreseed[] = { + 0x3c, 0x23, 0x6b, 0xe2, 0x70, 0x7e, 0x38, 0x80, 0x22, 0xe7, 0x30, 0x7e, + 0x1e, 0xf4, 0xde, 0x38, 0x7b, 0x3a, 0x6e, 0xb9, 0x50, 0x86, 0xb2, 0xa7, +}; +static const unsigned char kat1802_addinreseed[] = {0}; +static const unsigned char kat1802_addin0[] = {0}; +static const unsigned char kat1802_addin1[] = {0}; +static const unsigned char kat1802_retbits[] = { + 0x30, 0x83, 0x05, 0x4e, 0xa1, 0xe2, 0x76, 0x87, 0xd8, 0x69, 0x6b, 0x74, + 0x62, 0x98, 0xb3, 0xad, 0xd9, 0xf3, 0xb5, 0x6d, 0x7a, 0xc8, 0x3f, 0xba, + 0x75, 0xc4, 0x72, 0xc3, 0xd5, 0xba, 0xd1, 0xbf, 0xd5, 0xc5, 0x37, 0xe4, + 0x21, 0x16, 0x49, 0xf7, 0x2b, 0xeb, 0x0d, 0xea, 0x79, 0xf0, 0x97, 0xc9, + 0xeb, 0x13, 0xa7, 0xce, 0xf0, 0x84, 0x33, 0x3d, 0x95, 0x86, 0x66, 0x3e, + 0x07, 0x28, 0xb2, 0x90, +}; +static const struct drbg_kat_pr_false kat1802_t = { + 1, kat1802_entropyin, kat1802_nonce, kat1802_persstr, + kat1802_entropyinreseed, kat1802_addinreseed, kat1802_addin0, + kat1802_addin1, kat1802_retbits +}; +static const struct drbg_kat kat1802 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1802_t +}; + +static const unsigned char kat1803_entropyin[] = { + 0x0a, 0xe9, 0xa6, 0x0d, 0xc1, 0xf0, 0x74, 0xb2, 0xdd, 0x86, 0xba, 0x3f, + 0xa2, 0xe3, 0x29, 0xb9, 0xca, 0xdf, 0x7a, 0xfc, 0xd9, 0x4e, 0x64, 0xd1, +}; +static const unsigned char kat1803_nonce[] = { + 0x28, 0xf3, 0xbb, 0x2c, 0x48, 0xeb, 0xe5, 0x82, 0x9d, 0x31, 0x28, 0x30, + 0x24, 0xf7, 0x0a, 0x55, +}; +static const unsigned char kat1803_persstr[] = {0}; +static const unsigned char kat1803_entropyinreseed[] = { + 0xd0, 0xff, 0xba, 0xf4, 0x62, 0xaf, 0xe1, 0xfc, 0x9b, 0x5c, 0x45, 0x93, + 0x28, 0x03, 0x6e, 0x11, 0x5d, 0x4f, 0xde, 0x0d, 0x0b, 0x87, 0xe2, 0x87, +}; +static const unsigned char kat1803_addinreseed[] = {0}; +static const unsigned char kat1803_addin0[] = {0}; +static const unsigned char kat1803_addin1[] = {0}; +static const unsigned char kat1803_retbits[] = { + 0x67, 0x82, 0x85, 0xfd, 0x0c, 0xba, 0x3c, 0x39, 0x27, 0x2f, 0x64, 0xad, + 0xaf, 0xc6, 0x97, 0x07, 0xcb, 0xbb, 0xcc, 0x50, 0x26, 0x43, 0x06, 0x3b, + 0x0c, 0xda, 0xfa, 0x32, 0xc4, 0x5e, 0x7a, 0xca, 0x70, 0xdd, 0xfa, 0xed, + 0xc6, 0x56, 0xd7, 0x43, 0xcb, 0xc9, 0x80, 0xa1, 0x85, 0x90, 0x46, 0x97, + 0xc4, 0xe4, 0xdd, 0x1a, 0x10, 0x26, 0x93, 0x3e, 0x42, 0x59, 0x8d, 0x44, + 0xf3, 0xc1, 0xc9, 0x9e, +}; +static const struct drbg_kat_pr_false kat1803_t = { + 2, kat1803_entropyin, kat1803_nonce, kat1803_persstr, + kat1803_entropyinreseed, kat1803_addinreseed, kat1803_addin0, + kat1803_addin1, kat1803_retbits +}; +static const struct drbg_kat kat1803 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1803_t +}; + +static const unsigned char kat1804_entropyin[] = { + 0x7d, 0x0e, 0xfd, 0x40, 0x0f, 0xbc, 0x7a, 0xe6, 0xaf, 0xb8, 0xb0, 0x85, + 0x29, 0x1f, 0x22, 0xd9, 0xd6, 0xf4, 0x12, 0x90, 0xc0, 0x87, 0xbd, 0x24, +}; +static const unsigned char kat1804_nonce[] = { + 0x11, 0xa6, 0xa4, 0x53, 0x12, 0x4a, 0xde, 0xe3, 0x3f, 0x8e, 0xbc, 0x68, + 0x85, 0xcc, 0xaf, 0xdd, +}; +static const unsigned char kat1804_persstr[] = {0}; +static const unsigned char kat1804_entropyinreseed[] = { + 0x33, 0xd5, 0x55, 0xae, 0xbd, 0xc8, 0xc5, 0x29, 0x33, 0xb5, 0x8b, 0xba, + 0xa2, 0x7c, 0x2b, 0x46, 0xbb, 0xc6, 0xc5, 0x9e, 0xa9, 0xc3, 0x26, 0xe0, +}; +static const unsigned char kat1804_addinreseed[] = {0}; +static const unsigned char kat1804_addin0[] = {0}; +static const unsigned char kat1804_addin1[] = {0}; +static const unsigned char kat1804_retbits[] = { + 0xe4, 0x05, 0x98, 0x48, 0x62, 0xb4, 0x0e, 0x21, 0xf2, 0x96, 0x78, 0xc4, + 0x10, 0xda, 0xff, 0x86, 0x4e, 0xd9, 0xe7, 0x0a, 0xb4, 0x1f, 0xa3, 0x07, + 0x82, 0xa7, 0x33, 0x90, 0xfd, 0xdd, 0xc3, 0xe0, 0x9e, 0x0a, 0x89, 0x6f, + 0x12, 0xb1, 0xc8, 0x5e, 0x6a, 0x66, 0x88, 0x20, 0x3b, 0xa8, 0xbb, 0xdb, + 0xac, 0xce, 0xb5, 0x0f, 0xdf, 0x90, 0xa0, 0xd2, 0xd5, 0x8e, 0x88, 0x1a, + 0xc9, 0x4b, 0x3d, 0xa6, +}; +static const struct drbg_kat_pr_false kat1804_t = { + 3, kat1804_entropyin, kat1804_nonce, kat1804_persstr, + kat1804_entropyinreseed, kat1804_addinreseed, kat1804_addin0, + kat1804_addin1, kat1804_retbits +}; +static const struct drbg_kat kat1804 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1804_t +}; + +static const unsigned char kat1805_entropyin[] = { + 0x7f, 0xbe, 0xbd, 0xc4, 0x84, 0x63, 0xe3, 0xff, 0x81, 0x35, 0x88, 0xa1, + 0x08, 0xc2, 0x88, 0xe0, 0x6c, 0xce, 0xbb, 0xbf, 0x3e, 0x0a, 0xb7, 0x57, +}; +static const unsigned char kat1805_nonce[] = { + 0x84, 0x92, 0xb8, 0xcf, 0x8a, 0xb3, 0x62, 0x0a, 0xde, 0x27, 0x28, 0xc3, + 0x06, 0xe0, 0x7c, 0x2d, +}; +static const unsigned char kat1805_persstr[] = {0}; +static const unsigned char kat1805_entropyinreseed[] = { + 0x22, 0x6d, 0x45, 0xb7, 0xd7, 0x7c, 0xf7, 0x4e, 0x9d, 0xe7, 0x4c, 0xb2, + 0x47, 0x49, 0xb9, 0x26, 0x67, 0x5d, 0xd8, 0xf9, 0xb3, 0x86, 0x94, 0x55, +}; +static const unsigned char kat1805_addinreseed[] = {0}; +static const unsigned char kat1805_addin0[] = {0}; +static const unsigned char kat1805_addin1[] = {0}; +static const unsigned char kat1805_retbits[] = { + 0xc5, 0x6f, 0x70, 0x40, 0xef, 0x81, 0x4f, 0x24, 0x49, 0x91, 0xbf, 0xb4, + 0x31, 0xab, 0x18, 0xe1, 0xce, 0xb6, 0xc7, 0xab, 0x20, 0xcd, 0xdb, 0x6e, + 0x9c, 0xdb, 0x1d, 0x77, 0x40, 0xd6, 0xa1, 0x43, 0x43, 0xd5, 0xe8, 0xdc, + 0xca, 0x2c, 0x70, 0xf5, 0xca, 0xe2, 0x57, 0x6b, 0xa5, 0x75, 0x79, 0x5b, + 0xcb, 0xa7, 0x36, 0x79, 0x09, 0x9c, 0xc0, 0x3c, 0xc5, 0x01, 0xdb, 0xa6, + 0xc9, 0x75, 0x83, 0xa9, +}; +static const struct drbg_kat_pr_false kat1805_t = { + 4, kat1805_entropyin, kat1805_nonce, kat1805_persstr, + kat1805_entropyinreseed, kat1805_addinreseed, kat1805_addin0, + kat1805_addin1, kat1805_retbits +}; +static const struct drbg_kat kat1805 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1805_t +}; + +static const unsigned char kat1806_entropyin[] = { + 0xe2, 0xe6, 0x95, 0x34, 0x3b, 0xcb, 0x5d, 0x7c, 0xbd, 0xed, 0xc3, 0x76, + 0x3d, 0x95, 0x15, 0x51, 0xb5, 0x48, 0x61, 0x55, 0x8a, 0x8f, 0x32, 0x11, +}; +static const unsigned char kat1806_nonce[] = { + 0x41, 0x87, 0x39, 0xcd, 0x69, 0xca, 0xe5, 0x0e, 0xc9, 0xc1, 0x03, 0x57, + 0xbf, 0x6c, 0xe0, 0x8c, +}; +static const unsigned char kat1806_persstr[] = {0}; +static const unsigned char kat1806_entropyinreseed[] = { + 0xd9, 0x36, 0x2f, 0xce, 0x7b, 0xc4, 0x8b, 0xe4, 0x37, 0xc9, 0xe9, 0xb6, + 0x70, 0xdb, 0x33, 0x1d, 0x68, 0x24, 0x18, 0xf6, 0x1d, 0x77, 0x25, 0x00, +}; +static const unsigned char kat1806_addinreseed[] = {0}; +static const unsigned char kat1806_addin0[] = {0}; +static const unsigned char kat1806_addin1[] = {0}; +static const unsigned char kat1806_retbits[] = { + 0x01, 0x39, 0x42, 0x70, 0x19, 0x01, 0xbd, 0x4d, 0xde, 0x2e, 0x38, 0x3a, + 0x5f, 0x99, 0x8f, 0x66, 0xf2, 0x0f, 0x9a, 0xd5, 0x75, 0xbc, 0xd5, 0x72, + 0x90, 0x3a, 0x9d, 0x8e, 0xe3, 0x0e, 0x22, 0xac, 0xfb, 0xe0, 0xf2, 0x63, + 0xbd, 0x0d, 0xb0, 0x2d, 0x38, 0xa9, 0x94, 0x73, 0xfd, 0x7d, 0xc8, 0x95, + 0x44, 0xce, 0xc1, 0xc4, 0xdb, 0xca, 0x81, 0xbf, 0x2d, 0x73, 0x9b, 0x21, + 0x48, 0xf1, 0xaf, 0xd7, +}; +static const struct drbg_kat_pr_false kat1806_t = { + 5, kat1806_entropyin, kat1806_nonce, kat1806_persstr, + kat1806_entropyinreseed, kat1806_addinreseed, kat1806_addin0, + kat1806_addin1, kat1806_retbits +}; +static const struct drbg_kat kat1806 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1806_t +}; + +static const unsigned char kat1807_entropyin[] = { + 0x1c, 0xd8, 0x9c, 0xfc, 0x55, 0x97, 0xe8, 0x09, 0xed, 0xf9, 0xe6, 0x8a, + 0x25, 0xf4, 0x41, 0x1c, 0x9d, 0xf3, 0xc3, 0xf5, 0x7d, 0x7d, 0x72, 0x18, +}; +static const unsigned char kat1807_nonce[] = { + 0x86, 0xdc, 0x6a, 0x43, 0x33, 0xfb, 0x03, 0xa8, 0x99, 0x93, 0xcf, 0x5d, + 0x36, 0x95, 0x78, 0xd6, +}; +static const unsigned char kat1807_persstr[] = {0}; +static const unsigned char kat1807_entropyinreseed[] = { + 0xb6, 0x5e, 0x35, 0xa5, 0x79, 0xbf, 0xc3, 0x70, 0x81, 0x93, 0x8d, 0x69, + 0x63, 0x27, 0xa9, 0x2f, 0x02, 0xa2, 0x8a, 0x1b, 0x60, 0x86, 0x55, 0x21, +}; +static const unsigned char kat1807_addinreseed[] = {0}; +static const unsigned char kat1807_addin0[] = {0}; +static const unsigned char kat1807_addin1[] = {0}; +static const unsigned char kat1807_retbits[] = { + 0x21, 0x05, 0x53, 0x79, 0x40, 0xb6, 0x4a, 0x57, 0x02, 0x1d, 0x43, 0x5a, + 0x1a, 0xcf, 0x03, 0x5c, 0xb3, 0x07, 0xd2, 0x41, 0x81, 0xc0, 0x9d, 0x6f, + 0xc6, 0x7a, 0x73, 0xd6, 0xe3, 0x6f, 0xba, 0x8a, 0x62, 0x87, 0x0e, 0x72, + 0x64, 0x43, 0x52, 0x44, 0x78, 0xa1, 0x8d, 0x79, 0x0c, 0xde, 0xba, 0xf1, + 0x23, 0xf5, 0xea, 0x88, 0x2d, 0x34, 0x70, 0xc8, 0xae, 0x3a, 0x1e, 0xb1, + 0xdf, 0xdb, 0x47, 0x34, +}; +static const struct drbg_kat_pr_false kat1807_t = { + 6, kat1807_entropyin, kat1807_nonce, kat1807_persstr, + kat1807_entropyinreseed, kat1807_addinreseed, kat1807_addin0, + kat1807_addin1, kat1807_retbits +}; +static const struct drbg_kat kat1807 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1807_t +}; + +static const unsigned char kat1808_entropyin[] = { + 0x1c, 0xc3, 0xe8, 0xf1, 0xc3, 0x37, 0x60, 0xc4, 0xa0, 0xfd, 0xda, 0x9d, + 0xa7, 0xda, 0xba, 0xec, 0xab, 0x10, 0xd5, 0x70, 0xc6, 0xdd, 0x64, 0x00, +}; +static const unsigned char kat1808_nonce[] = { + 0x1b, 0x73, 0xad, 0xb6, 0x67, 0x83, 0xbe, 0xe0, 0x24, 0x27, 0x2b, 0x69, + 0x5b, 0x0e, 0x19, 0xc3, +}; +static const unsigned char kat1808_persstr[] = {0}; +static const unsigned char kat1808_entropyinreseed[] = { + 0x3b, 0xc1, 0x48, 0xc4, 0x3b, 0x54, 0xcb, 0x12, 0x6a, 0x16, 0xe7, 0x5d, + 0xa5, 0x4f, 0x53, 0x89, 0x7e, 0xc0, 0xa2, 0x8a, 0xe5, 0x89, 0xac, 0x64, +}; +static const unsigned char kat1808_addinreseed[] = {0}; +static const unsigned char kat1808_addin0[] = {0}; +static const unsigned char kat1808_addin1[] = {0}; +static const unsigned char kat1808_retbits[] = { + 0x5e, 0xd9, 0xd6, 0x51, 0x92, 0x1f, 0x35, 0x11, 0x8a, 0x6f, 0xd8, 0xac, + 0x34, 0x84, 0xf9, 0xde, 0xee, 0x2d, 0x02, 0x5e, 0x0b, 0xa4, 0x80, 0x0e, + 0xfc, 0xf4, 0x8e, 0x5a, 0x8e, 0x63, 0x22, 0xfe, 0x4b, 0x49, 0x36, 0x18, + 0x01, 0xc7, 0x7e, 0x02, 0x68, 0xe1, 0xc5, 0xe5, 0x5b, 0xe5, 0x3c, 0x8f, + 0xb5, 0x66, 0x8c, 0x7a, 0x28, 0x96, 0x70, 0xcb, 0x26, 0xb5, 0xa8, 0x5b, + 0xc5, 0x33, 0x61, 0xf9, +}; +static const struct drbg_kat_pr_false kat1808_t = { + 7, kat1808_entropyin, kat1808_nonce, kat1808_persstr, + kat1808_entropyinreseed, kat1808_addinreseed, kat1808_addin0, + kat1808_addin1, kat1808_retbits +}; +static const struct drbg_kat kat1808 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1808_t +}; + +static const unsigned char kat1809_entropyin[] = { + 0x72, 0x19, 0x73, 0x9f, 0x3e, 0x1f, 0x8c, 0x23, 0x9c, 0xf0, 0x7d, 0xf8, + 0x99, 0xc8, 0x7c, 0x79, 0xcb, 0x4d, 0x59, 0xe7, 0xb9, 0xec, 0x8c, 0x64, +}; +static const unsigned char kat1809_nonce[] = { + 0x4f, 0xb9, 0x43, 0xb6, 0x2b, 0xb2, 0x37, 0x4e, 0xbe, 0xe5, 0x0b, 0x69, + 0x67, 0xa3, 0xac, 0x46, +}; +static const unsigned char kat1809_persstr[] = {0}; +static const unsigned char kat1809_entropyinreseed[] = { + 0x75, 0x57, 0xd7, 0xdd, 0xef, 0x0a, 0x0f, 0xa1, 0xd7, 0xb8, 0xee, 0x12, + 0x19, 0xf0, 0xa1, 0xbe, 0x84, 0xdd, 0x0c, 0xab, 0x71, 0xd8, 0x5b, 0x90, +}; +static const unsigned char kat1809_addinreseed[] = {0}; +static const unsigned char kat1809_addin0[] = {0}; +static const unsigned char kat1809_addin1[] = {0}; +static const unsigned char kat1809_retbits[] = { + 0x8b, 0x4a, 0xe1, 0xdf, 0x4e, 0x76, 0xbc, 0x75, 0x4d, 0xee, 0x8e, 0x64, + 0xa0, 0xae, 0x0d, 0x0c, 0xd6, 0x7a, 0x62, 0x8e, 0x60, 0x4f, 0x8e, 0x28, + 0x5b, 0xcf, 0x0e, 0x08, 0x1b, 0x6b, 0x3d, 0xc1, 0x1c, 0x4f, 0x43, 0xe8, + 0x5a, 0xaa, 0xea, 0x19, 0x35, 0x62, 0xe1, 0x35, 0xcf, 0x06, 0x1a, 0x71, + 0xfb, 0xfc, 0x46, 0x9b, 0x7f, 0x2c, 0x03, 0x83, 0x37, 0x48, 0xde, 0x32, + 0x85, 0xbf, 0x9c, 0x2c, +}; +static const struct drbg_kat_pr_false kat1809_t = { + 8, kat1809_entropyin, kat1809_nonce, kat1809_persstr, + kat1809_entropyinreseed, kat1809_addinreseed, kat1809_addin0, + kat1809_addin1, kat1809_retbits +}; +static const struct drbg_kat kat1809 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1809_t +}; + +static const unsigned char kat1810_entropyin[] = { + 0x62, 0x68, 0xc2, 0x43, 0xd1, 0xc9, 0x09, 0x4f, 0x63, 0xb1, 0xc4, 0x5f, + 0x4b, 0xb1, 0xc4, 0x4f, 0x43, 0xca, 0x28, 0x49, 0x54, 0x94, 0xfd, 0x46, +}; +static const unsigned char kat1810_nonce[] = { + 0x9f, 0xcd, 0xcb, 0x37, 0x2d, 0x37, 0x54, 0x41, 0x92, 0x5d, 0x7d, 0x27, + 0x5b, 0x58, 0x2d, 0x73, +}; +static const unsigned char kat1810_persstr[] = {0}; +static const unsigned char kat1810_entropyinreseed[] = { + 0xec, 0xf4, 0xa3, 0x16, 0x2a, 0xba, 0x12, 0x95, 0xa3, 0x35, 0xd5, 0xe0, + 0x02, 0x10, 0x9c, 0x95, 0xce, 0x20, 0x10, 0xdc, 0xbb, 0xd1, 0xf8, 0xa8, +}; +static const unsigned char kat1810_addinreseed[] = {0}; +static const unsigned char kat1810_addin0[] = {0}; +static const unsigned char kat1810_addin1[] = {0}; +static const unsigned char kat1810_retbits[] = { + 0x08, 0xa2, 0xaa, 0x60, 0x8f, 0x79, 0xb3, 0xf5, 0xee, 0x17, 0x13, 0xac, + 0xcd, 0xe3, 0x91, 0x49, 0xef, 0xb1, 0x50, 0x41, 0x02, 0x1f, 0xad, 0xc5, + 0xad, 0x2b, 0xe4, 0xca, 0x3b, 0x2a, 0xd8, 0x24, 0xb3, 0x27, 0x67, 0xc2, + 0xeb, 0x35, 0x85, 0x7b, 0xbf, 0x14, 0xce, 0x9f, 0xdb, 0xdc, 0x30, 0x1b, + 0xd6, 0xab, 0x51, 0xec, 0x16, 0xe3, 0x08, 0xd3, 0x5b, 0xa9, 0x41, 0x95, + 0xfa, 0x51, 0xee, 0x58, +}; +static const struct drbg_kat_pr_false kat1810_t = { + 9, kat1810_entropyin, kat1810_nonce, kat1810_persstr, + kat1810_entropyinreseed, kat1810_addinreseed, kat1810_addin0, + kat1810_addin1, kat1810_retbits +}; +static const struct drbg_kat kat1810 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1810_t +}; + +static const unsigned char kat1811_entropyin[] = { + 0xc9, 0x05, 0xf9, 0x60, 0x65, 0x4b, 0xc6, 0x31, 0x7c, 0xc5, 0xbd, 0x6b, + 0x32, 0xae, 0x79, 0x61, 0xb0, 0xfe, 0x5e, 0xeb, 0xb4, 0xe9, 0xe5, 0xcf, +}; +static const unsigned char kat1811_nonce[] = { + 0xc7, 0x2b, 0xaa, 0x07, 0xff, 0xa4, 0x5e, 0xb5, 0x66, 0x6b, 0xbb, 0x01, + 0x10, 0x9a, 0x4f, 0x5f, +}; +static const unsigned char kat1811_persstr[] = {0}; +static const unsigned char kat1811_entropyinreseed[] = { + 0xee, 0x91, 0xc5, 0x18, 0xf4, 0xda, 0x92, 0x8b, 0x36, 0xa5, 0x28, 0x9d, + 0x35, 0x0d, 0x41, 0x97, 0x02, 0x85, 0x7e, 0x24, 0x3e, 0x62, 0xa9, 0xb4, +}; +static const unsigned char kat1811_addinreseed[] = {0}; +static const unsigned char kat1811_addin0[] = {0}; +static const unsigned char kat1811_addin1[] = {0}; +static const unsigned char kat1811_retbits[] = { + 0x0d, 0x74, 0x2f, 0x74, 0xdc, 0x8f, 0x09, 0xc6, 0x1c, 0x36, 0x3a, 0x18, + 0x79, 0x48, 0x81, 0x1e, 0x9a, 0x50, 0x4a, 0xfc, 0xb1, 0x3d, 0x5e, 0x6f, + 0x18, 0xe9, 0xf1, 0x90, 0x5a, 0x05, 0xcc, 0x75, 0x40, 0x08, 0xac, 0x57, + 0xe2, 0xfc, 0xdd, 0x4c, 0x3b, 0xdc, 0x53, 0x68, 0x50, 0x83, 0x1e, 0x7d, + 0x1b, 0x2d, 0x49, 0x9d, 0x95, 0x72, 0x9e, 0xd5, 0x73, 0x73, 0xca, 0xf0, + 0xb4, 0x1a, 0x55, 0x9c, +}; +static const struct drbg_kat_pr_false kat1811_t = { + 10, kat1811_entropyin, kat1811_nonce, kat1811_persstr, + kat1811_entropyinreseed, kat1811_addinreseed, kat1811_addin0, + kat1811_addin1, kat1811_retbits +}; +static const struct drbg_kat kat1811 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1811_t +}; + +static const unsigned char kat1812_entropyin[] = { + 0x7f, 0x0a, 0xf1, 0x9f, 0x09, 0x47, 0xd3, 0xbc, 0xc2, 0x27, 0x0a, 0xd8, + 0x86, 0x42, 0x32, 0x75, 0x0e, 0x3a, 0x79, 0x07, 0x3e, 0x54, 0xaa, 0x5e, +}; +static const unsigned char kat1812_nonce[] = { + 0xd0, 0xfe, 0x40, 0x37, 0x45, 0x98, 0xd5, 0xad, 0x63, 0x46, 0x8a, 0xa0, + 0x6f, 0x92, 0xc5, 0x03, +}; +static const unsigned char kat1812_persstr[] = {0}; +static const unsigned char kat1812_entropyinreseed[] = { + 0x65, 0x8e, 0x55, 0x21, 0x5a, 0x90, 0x63, 0x34, 0xe6, 0xb8, 0x02, 0x6f, + 0x6f, 0xc3, 0x65, 0x75, 0x99, 0x50, 0x01, 0xc9, 0xdb, 0xb8, 0xf8, 0x90, +}; +static const unsigned char kat1812_addinreseed[] = {0}; +static const unsigned char kat1812_addin0[] = {0}; +static const unsigned char kat1812_addin1[] = {0}; +static const unsigned char kat1812_retbits[] = { + 0xa8, 0xdd, 0xbb, 0xef, 0x58, 0xdd, 0xeb, 0x3b, 0xdb, 0x92, 0x3b, 0x64, + 0xae, 0x8f, 0x43, 0xf0, 0xaa, 0x3f, 0xfe, 0xc3, 0x03, 0xc0, 0x4d, 0x0a, + 0xca, 0x8e, 0xcf, 0x0d, 0x45, 0x25, 0xfe, 0xd8, 0x42, 0x15, 0x5d, 0xfe, + 0x46, 0x38, 0xbb, 0x08, 0x92, 0x08, 0x7f, 0x8f, 0x7d, 0x28, 0xb1, 0x28, + 0x29, 0x6d, 0x62, 0xe9, 0x8a, 0x51, 0xf6, 0x49, 0x32, 0x46, 0x2a, 0xcb, + 0x6b, 0x84, 0x1a, 0x82, +}; +static const struct drbg_kat_pr_false kat1812_t = { + 11, kat1812_entropyin, kat1812_nonce, kat1812_persstr, + kat1812_entropyinreseed, kat1812_addinreseed, kat1812_addin0, + kat1812_addin1, kat1812_retbits +}; +static const struct drbg_kat kat1812 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1812_t +}; + +static const unsigned char kat1813_entropyin[] = { + 0x0b, 0x8a, 0x7f, 0x72, 0xc3, 0xdd, 0xc6, 0x37, 0x67, 0xd3, 0x36, 0x80, + 0x59, 0x85, 0x3b, 0x2c, 0xc3, 0xd8, 0x30, 0x95, 0x34, 0xd4, 0x4c, 0x31, +}; +static const unsigned char kat1813_nonce[] = { + 0xc5, 0x27, 0x9d, 0x25, 0x22, 0xcb, 0x77, 0x0a, 0x82, 0x07, 0xec, 0x2d, + 0x38, 0x4f, 0x7c, 0xcc, +}; +static const unsigned char kat1813_persstr[] = {0}; +static const unsigned char kat1813_entropyinreseed[] = { + 0xc1, 0x10, 0x44, 0x27, 0xc1, 0x97, 0xbf, 0xaf, 0x5d, 0x4a, 0x17, 0x69, + 0xfd, 0xa0, 0x12, 0xea, 0xa2, 0xf5, 0x4e, 0x94, 0x17, 0x7a, 0x5a, 0xd5, +}; +static const unsigned char kat1813_addinreseed[] = {0}; +static const unsigned char kat1813_addin0[] = {0}; +static const unsigned char kat1813_addin1[] = {0}; +static const unsigned char kat1813_retbits[] = { + 0x56, 0x7d, 0x3c, 0x40, 0x6e, 0x82, 0x7e, 0x5c, 0x0f, 0x43, 0x8a, 0x30, + 0x41, 0x76, 0x59, 0xd2, 0x27, 0xf3, 0xad, 0x10, 0x20, 0xa5, 0xcc, 0xfd, + 0xaa, 0x3e, 0x64, 0xcc, 0x9f, 0xcf, 0x6b, 0x0e, 0xed, 0xf8, 0x3b, 0x9f, + 0x1f, 0xbc, 0x52, 0x51, 0x40, 0xbc, 0x60, 0x43, 0x4c, 0x0c, 0x02, 0xa3, + 0xce, 0x54, 0x82, 0xf1, 0xaf, 0xf8, 0x5f, 0x30, 0xc6, 0xf9, 0x8d, 0xea, + 0x4a, 0x22, 0xed, 0xf4, +}; +static const struct drbg_kat_pr_false kat1813_t = { + 12, kat1813_entropyin, kat1813_nonce, kat1813_persstr, + kat1813_entropyinreseed, kat1813_addinreseed, kat1813_addin0, + kat1813_addin1, kat1813_retbits +}; +static const struct drbg_kat kat1813 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1813_t +}; + +static const unsigned char kat1814_entropyin[] = { + 0x00, 0x97, 0xb5, 0x44, 0x37, 0x40, 0x41, 0xcf, 0xb4, 0x57, 0x27, 0xbf, + 0xca, 0x76, 0x9c, 0x75, 0x86, 0xca, 0xe5, 0x2c, 0x8b, 0x94, 0x5c, 0x18, +}; +static const unsigned char kat1814_nonce[] = { + 0x0e, 0x90, 0x59, 0xb8, 0x65, 0x50, 0x56, 0xf9, 0xc8, 0x24, 0x18, 0x0f, + 0xe1, 0x07, 0xab, 0x55, +}; +static const unsigned char kat1814_persstr[] = {0}; +static const unsigned char kat1814_entropyinreseed[] = { + 0x03, 0xdd, 0xb3, 0xe6, 0xf2, 0x73, 0x42, 0x53, 0x8d, 0x21, 0x0b, 0x02, + 0xce, 0x2b, 0xbd, 0x42, 0x0a, 0x52, 0xd3, 0x14, 0x2a, 0x69, 0xb0, 0xca, +}; +static const unsigned char kat1814_addinreseed[] = {0}; +static const unsigned char kat1814_addin0[] = {0}; +static const unsigned char kat1814_addin1[] = {0}; +static const unsigned char kat1814_retbits[] = { + 0x7a, 0xab, 0x29, 0xb7, 0xc4, 0x0c, 0x29, 0xc4, 0xfc, 0x71, 0x56, 0x6b, + 0x3f, 0x9f, 0x6e, 0xbc, 0x37, 0xea, 0x8c, 0xd9, 0x26, 0x6d, 0x0c, 0x8b, + 0x4d, 0x50, 0xd8, 0x1b, 0x07, 0x95, 0x9c, 0x22, 0x8e, 0x0d, 0x96, 0x76, + 0x1a, 0xaa, 0x91, 0x65, 0x68, 0xec, 0xfe, 0xbe, 0x6c, 0x7a, 0xf3, 0xe9, + 0xc0, 0x2c, 0x55, 0x64, 0x00, 0x4f, 0x22, 0x5d, 0xa9, 0x18, 0x11, 0xc5, + 0xb7, 0x61, 0x41, 0x9e, +}; +static const struct drbg_kat_pr_false kat1814_t = { + 13, kat1814_entropyin, kat1814_nonce, kat1814_persstr, + kat1814_entropyinreseed, kat1814_addinreseed, kat1814_addin0, + kat1814_addin1, kat1814_retbits +}; +static const struct drbg_kat kat1814 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1814_t +}; + +static const unsigned char kat1815_entropyin[] = { + 0x02, 0xe1, 0x03, 0xc5, 0xdc, 0xb5, 0x5e, 0x06, 0x5e, 0x50, 0xf7, 0xf2, + 0x66, 0x02, 0x83, 0xb0, 0xe3, 0x08, 0x72, 0x43, 0x3c, 0xd3, 0x66, 0x20, +}; +static const unsigned char kat1815_nonce[] = { + 0xb2, 0xf2, 0x1f, 0x7a, 0x10, 0x11, 0x95, 0xd4, 0xa2, 0xe7, 0xdd, 0x73, + 0x53, 0x77, 0x3a, 0xe2, +}; +static const unsigned char kat1815_persstr[] = {0}; +static const unsigned char kat1815_entropyinreseed[] = { + 0x95, 0xe4, 0xc2, 0xf9, 0x76, 0x93, 0x1c, 0xb5, 0x03, 0x6f, 0xae, 0x1d, + 0x4d, 0x58, 0x38, 0x47, 0x44, 0xc4, 0xba, 0x30, 0x06, 0xfa, 0xb3, 0x66, +}; +static const unsigned char kat1815_addinreseed[] = {0}; +static const unsigned char kat1815_addin0[] = {0}; +static const unsigned char kat1815_addin1[] = {0}; +static const unsigned char kat1815_retbits[] = { + 0xf0, 0x49, 0x55, 0xbf, 0x05, 0x2c, 0xd1, 0x88, 0x99, 0xa4, 0x48, 0xa2, + 0x50, 0x79, 0xbc, 0x03, 0xe3, 0x61, 0x9c, 0x44, 0x44, 0x8f, 0xc5, 0x5b, + 0x6e, 0x6f, 0x04, 0xc9, 0x87, 0x24, 0x80, 0x37, 0x81, 0x30, 0xd8, 0xd2, + 0xae, 0x35, 0x3e, 0xf2, 0x55, 0xb4, 0xa9, 0xf5, 0x36, 0xc9, 0x62, 0xe2, + 0xda, 0x01, 0xfa, 0x44, 0xb7, 0xd9, 0xd3, 0x4c, 0x3f, 0xaf, 0x14, 0xb7, + 0x25, 0x7a, 0x62, 0xeb, +}; +static const struct drbg_kat_pr_false kat1815_t = { + 14, kat1815_entropyin, kat1815_nonce, kat1815_persstr, + kat1815_entropyinreseed, kat1815_addinreseed, kat1815_addin0, + kat1815_addin1, kat1815_retbits +}; +static const struct drbg_kat kat1815 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1815_t +}; + +static const unsigned char kat1816_entropyin[] = { + 0xf0, 0xe2, 0x17, 0x21, 0x4a, 0x4b, 0x7f, 0x85, 0x85, 0xd5, 0x24, 0x42, + 0x63, 0x85, 0x9e, 0x64, 0x5c, 0xe0, 0x1e, 0x76, 0xeb, 0x7c, 0x55, 0x53, +}; +static const unsigned char kat1816_nonce[] = { + 0xd1, 0xd4, 0xdb, 0xb0, 0xcb, 0xa2, 0xf0, 0xb0, 0x39, 0x6c, 0x41, 0x38, + 0xe4, 0x32, 0x1e, 0x61, +}; +static const unsigned char kat1816_persstr[] = {0}; +static const unsigned char kat1816_entropyinreseed[] = { + 0xe3, 0xc7, 0x49, 0x3d, 0xde, 0xf2, 0x5d, 0x62, 0x81, 0x8c, 0x85, 0x61, + 0x9c, 0x3b, 0x38, 0x3c, 0x5b, 0x7e, 0x96, 0x8f, 0xb6, 0x04, 0x3c, 0xb1, +}; +static const unsigned char kat1816_addinreseed[] = { + 0xa9, 0x74, 0x63, 0xfb, 0x30, 0x37, 0xce, 0xee, 0x5e, 0xd2, 0x2f, 0xda, + 0x8f, 0x59, 0xc3, 0x70, 0x73, 0x90, 0x89, 0xe8, 0x9f, 0xdd, 0xc2, 0x4e, + 0x79, 0xf0, 0x38, 0x22, 0x03, 0x2e, 0x19, 0x93, +}; +static const unsigned char kat1816_addin0[] = { + 0xfc, 0x62, 0xd7, 0xcd, 0x9a, 0xc1, 0x39, 0x77, 0x18, 0x11, 0x20, 0xcd, + 0xe5, 0x7c, 0x93, 0xa6, 0x83, 0x92, 0x28, 0x43, 0xc3, 0x09, 0x34, 0x3c, + 0x9a, 0xa8, 0xc6, 0x76, 0x17, 0x10, 0xb4, 0x11, +}; +static const unsigned char kat1816_addin1[] = { + 0xf6, 0xb9, 0xb0, 0x17, 0x24, 0xda, 0xea, 0x70, 0xf2, 0xce, 0xd2, 0x4b, + 0xed, 0x57, 0x2f, 0x61, 0x10, 0x08, 0xeb, 0x9e, 0x0c, 0x21, 0xd9, 0x02, + 0x86, 0x97, 0x17, 0x13, 0x82, 0x1c, 0x75, 0xe6, +}; +static const unsigned char kat1816_retbits[] = { + 0x95, 0x97, 0xe6, 0x9f, 0x09, 0xd5, 0x77, 0x85, 0xbf, 0x83, 0xb5, 0xdb, + 0x3d, 0x04, 0x2e, 0xa7, 0x67, 0x60, 0x42, 0x44, 0x19, 0x0a, 0x65, 0x76, + 0x5d, 0xea, 0x89, 0x83, 0x41, 0x5f, 0xe8, 0x84, 0x20, 0x46, 0xb9, 0xab, + 0x90, 0x00, 0x8e, 0xc6, 0x8a, 0x3e, 0x4c, 0x8b, 0xd3, 0xc7, 0xa4, 0xcc, + 0xbf, 0x7d, 0xc6, 0x88, 0xec, 0xf0, 0xd1, 0x2e, 0x53, 0x76, 0x0d, 0xcc, + 0x9d, 0xf2, 0x66, 0x4b, +}; +static const struct drbg_kat_pr_false kat1816_t = { + 0, kat1816_entropyin, kat1816_nonce, kat1816_persstr, + kat1816_entropyinreseed, kat1816_addinreseed, kat1816_addin0, + kat1816_addin1, kat1816_retbits +}; +static const struct drbg_kat kat1816 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1816_t +}; + +static const unsigned char kat1817_entropyin[] = { + 0xb1, 0x5a, 0x2a, 0xc5, 0x4b, 0x2b, 0x7c, 0x03, 0x71, 0xaf, 0x00, 0xca, + 0xfc, 0x27, 0xd8, 0xe1, 0x50, 0x1d, 0xba, 0x2f, 0xe8, 0xa2, 0x6f, 0x40, +}; +static const unsigned char kat1817_nonce[] = { + 0x1e, 0xee, 0x88, 0x1d, 0xe4, 0x37, 0xcb, 0xcf, 0x27, 0x73, 0x8d, 0x7c, + 0x16, 0x7d, 0x12, 0x3d, +}; +static const unsigned char kat1817_persstr[] = {0}; +static const unsigned char kat1817_entropyinreseed[] = { + 0xb4, 0x7e, 0x42, 0x99, 0x52, 0x6b, 0x93, 0xf0, 0x5f, 0x32, 0x14, 0x32, + 0xbe, 0x03, 0x45, 0x99, 0xfc, 0xbc, 0x12, 0xd4, 0x65, 0x4a, 0x97, 0xb8, +}; +static const unsigned char kat1817_addinreseed[] = { + 0x36, 0x56, 0x34, 0x71, 0x15, 0x76, 0xc7, 0xc8, 0x70, 0x7b, 0x26, 0xa3, + 0x67, 0x5d, 0x84, 0xdb, 0x8d, 0x79, 0xa9, 0xfd, 0xa6, 0x99, 0x5d, 0xa2, + 0x0d, 0xfa, 0x1a, 0xfa, 0xe0, 0xcf, 0xe4, 0xc0, +}; +static const unsigned char kat1817_addin0[] = { + 0xd4, 0xe6, 0x45, 0xe2, 0xaa, 0xad, 0xbc, 0xbf, 0x97, 0x2f, 0x55, 0x22, + 0x88, 0xa3, 0x6b, 0xe9, 0xda, 0xed, 0x48, 0x83, 0x37, 0x95, 0xe8, 0x2b, + 0x8d, 0xbe, 0xc4, 0x5a, 0x84, 0x68, 0x1d, 0x7a, +}; +static const unsigned char kat1817_addin1[] = { + 0xd6, 0xca, 0x41, 0x4b, 0x27, 0x90, 0x59, 0x33, 0x23, 0xe1, 0xb1, 0xf1, + 0x75, 0xc6, 0x0e, 0xf2, 0x14, 0xfe, 0x6b, 0x04, 0x5c, 0x9c, 0x05, 0x9c, + 0x99, 0xa4, 0xf7, 0x1b, 0xcb, 0x6f, 0xc3, 0x31, +}; +static const unsigned char kat1817_retbits[] = { + 0xac, 0xbb, 0xb4, 0x82, 0x28, 0xc9, 0xfa, 0xc4, 0xab, 0x99, 0x46, 0xec, + 0xb7, 0x7f, 0x83, 0x0c, 0x0c, 0x38, 0xda, 0xfe, 0x95, 0xba, 0x64, 0xa2, + 0x37, 0xd7, 0x86, 0xbd, 0x14, 0x46, 0x35, 0xc8, 0x1f, 0x52, 0x07, 0xc0, + 0xa5, 0xb2, 0x0d, 0x56, 0xb5, 0x59, 0xae, 0xfe, 0x53, 0xa4, 0xbf, 0xb8, + 0xb2, 0x30, 0x83, 0xe7, 0xfa, 0x4f, 0x5b, 0xb1, 0xdd, 0xb5, 0x09, 0x77, + 0x55, 0xb5, 0x99, 0xed, +}; +static const struct drbg_kat_pr_false kat1817_t = { + 1, kat1817_entropyin, kat1817_nonce, kat1817_persstr, + kat1817_entropyinreseed, kat1817_addinreseed, kat1817_addin0, + kat1817_addin1, kat1817_retbits +}; +static const struct drbg_kat kat1817 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1817_t +}; + +static const unsigned char kat1818_entropyin[] = { + 0x8e, 0xf4, 0x56, 0x81, 0x2c, 0x1d, 0xd6, 0x64, 0xf5, 0xd6, 0xe6, 0x8d, + 0x33, 0x34, 0x16, 0x28, 0x3d, 0x07, 0xfa, 0x72, 0x6f, 0xb7, 0xaa, 0x11, +}; +static const unsigned char kat1818_nonce[] = { + 0x41, 0xa4, 0xe4, 0x9b, 0x52, 0x97, 0x21, 0x6e, 0xde, 0x17, 0x28, 0x3a, + 0xb1, 0x58, 0xf6, 0xfb, +}; +static const unsigned char kat1818_persstr[] = {0}; +static const unsigned char kat1818_entropyinreseed[] = { + 0x59, 0x5e, 0x6e, 0xa0, 0x66, 0x72, 0xaa, 0xbf, 0xf8, 0x98, 0x67, 0xc2, + 0x66, 0xe1, 0x38, 0x84, 0x0e, 0xad, 0x1f, 0x8a, 0x3e, 0xae, 0x74, 0xb9, +}; +static const unsigned char kat1818_addinreseed[] = { + 0xd0, 0xef, 0xd9, 0xf7, 0x5f, 0x21, 0xd2, 0xa3, 0xf4, 0xe9, 0x3f, 0x5e, + 0xfe, 0x4f, 0x28, 0x5b, 0x6e, 0x33, 0x45, 0x6b, 0x37, 0x81, 0xf0, 0x80, + 0x95, 0xf8, 0x85, 0x5f, 0x1a, 0x43, 0xa4, 0x6a, +}; +static const unsigned char kat1818_addin0[] = { + 0x44, 0x0c, 0xb6, 0x8e, 0x0c, 0x9d, 0x6d, 0xb8, 0xb9, 0x1e, 0x8a, 0x3e, + 0x32, 0xe4, 0xb4, 0x7d, 0xd1, 0xbd, 0xea, 0xe2, 0x40, 0xfa, 0x6c, 0x18, + 0x12, 0xac, 0xb5, 0x81, 0x4e, 0x24, 0x68, 0xb4, +}; +static const unsigned char kat1818_addin1[] = { + 0x5b, 0x27, 0x88, 0x1c, 0x73, 0x5e, 0xa7, 0x32, 0x2d, 0xb0, 0x39, 0x75, + 0x05, 0x4b, 0x95, 0x5a, 0x2e, 0x99, 0x5c, 0xc0, 0xd3, 0xea, 0x3a, 0x98, + 0x2a, 0x03, 0xb8, 0xf8, 0x4f, 0x6b, 0x97, 0x67, +}; +static const unsigned char kat1818_retbits[] = { + 0x77, 0xf9, 0x03, 0xa4, 0x0b, 0xee, 0xf1, 0xf9, 0x2a, 0xbe, 0xbb, 0x58, + 0xf5, 0xe1, 0xfb, 0x50, 0x82, 0x39, 0x10, 0x3a, 0xa8, 0x63, 0xe0, 0x30, + 0x05, 0x91, 0xe5, 0xc5, 0x8a, 0x96, 0x80, 0xb5, 0x7e, 0x46, 0x68, 0x15, + 0x0d, 0x55, 0x3d, 0x39, 0x0b, 0xe0, 0x59, 0xa2, 0xc6, 0xdb, 0xc9, 0xf7, + 0xe2, 0x54, 0x42, 0xc6, 0xab, 0xd1, 0x17, 0x68, 0xb1, 0x17, 0x8d, 0xf9, + 0x93, 0x4e, 0xf6, 0xd9, +}; +static const struct drbg_kat_pr_false kat1818_t = { + 2, kat1818_entropyin, kat1818_nonce, kat1818_persstr, + kat1818_entropyinreseed, kat1818_addinreseed, kat1818_addin0, + kat1818_addin1, kat1818_retbits +}; +static const struct drbg_kat kat1818 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1818_t +}; + +static const unsigned char kat1819_entropyin[] = { + 0xc9, 0x56, 0x81, 0x42, 0x40, 0x4f, 0x28, 0xa2, 0xb2, 0xff, 0xe1, 0x83, + 0xde, 0xce, 0xe1, 0xbe, 0xd5, 0x66, 0x78, 0x5a, 0xed, 0x71, 0x42, 0x0e, +}; +static const unsigned char kat1819_nonce[] = { + 0x14, 0xef, 0x70, 0x09, 0x33, 0x27, 0x88, 0x41, 0x17, 0xc0, 0x18, 0x3a, + 0x4b, 0xd5, 0x45, 0x58, +}; +static const unsigned char kat1819_persstr[] = {0}; +static const unsigned char kat1819_entropyinreseed[] = { + 0x67, 0x3a, 0x9f, 0x7a, 0x68, 0xee, 0x42, 0x01, 0xc2, 0xc4, 0xe4, 0x50, + 0x7b, 0x23, 0xc5, 0x03, 0x63, 0xad, 0xe2, 0xc0, 0x37, 0x06, 0x3c, 0x40, +}; +static const unsigned char kat1819_addinreseed[] = { + 0xf3, 0x41, 0xc1, 0xc5, 0x5a, 0x40, 0x47, 0x1c, 0xf2, 0x52, 0x39, 0x6f, + 0xc6, 0x5a, 0x90, 0xaf, 0xa6, 0x64, 0xd9, 0x93, 0xee, 0xc4, 0xc0, 0x3b, + 0x4e, 0x54, 0xbc, 0x0b, 0x12, 0xfe, 0x00, 0xf5, +}; +static const unsigned char kat1819_addin0[] = { + 0xea, 0x20, 0x91, 0x40, 0xd9, 0x30, 0x08, 0x32, 0x42, 0xfe, 0x4a, 0x2f, + 0x7c, 0xba, 0xcc, 0x0a, 0x73, 0xeb, 0xdd, 0x5e, 0x73, 0x77, 0x1b, 0x9d, + 0x9e, 0x1b, 0xcc, 0xf7, 0xa3, 0x09, 0x23, 0xf1, +}; +static const unsigned char kat1819_addin1[] = { + 0x05, 0xea, 0xcd, 0x56, 0x0d, 0x53, 0x7f, 0x91, 0x0e, 0xa2, 0xd9, 0xc7, + 0x7f, 0x16, 0x9e, 0xfe, 0x75, 0xa0, 0x6c, 0x06, 0xe4, 0x35, 0xdc, 0x3c, + 0xd9, 0xc6, 0x4d, 0x50, 0xee, 0xda, 0xa9, 0xdd, +}; +static const unsigned char kat1819_retbits[] = { + 0x6b, 0x40, 0xab, 0x76, 0xf1, 0x0b, 0x30, 0x38, 0x3b, 0x2c, 0x98, 0x39, + 0x4f, 0x26, 0x95, 0xba, 0x4d, 0x2e, 0xcf, 0x96, 0x14, 0x81, 0x12, 0xca, + 0x5e, 0x3a, 0x2b, 0x2e, 0x00, 0xc6, 0xb0, 0xcd, 0x05, 0x1a, 0x44, 0x7f, + 0xe1, 0x9d, 0x32, 0xb4, 0x8e, 0x2e, 0x1a, 0x89, 0xb8, 0x6b, 0x48, 0xd5, + 0x2f, 0x05, 0xbd, 0x26, 0xd2, 0x8c, 0x24, 0x26, 0xb0, 0xe5, 0x7a, 0x76, + 0x1d, 0xa8, 0x31, 0xe6, +}; +static const struct drbg_kat_pr_false kat1819_t = { + 3, kat1819_entropyin, kat1819_nonce, kat1819_persstr, + kat1819_entropyinreseed, kat1819_addinreseed, kat1819_addin0, + kat1819_addin1, kat1819_retbits +}; +static const struct drbg_kat kat1819 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1819_t +}; + +static const unsigned char kat1820_entropyin[] = { + 0x5b, 0x3e, 0x48, 0x45, 0x6c, 0xad, 0x2b, 0xf7, 0x88, 0x2f, 0xf6, 0x9b, + 0xdc, 0x2c, 0x3b, 0x38, 0xe2, 0xa9, 0x85, 0x8f, 0xcc, 0x37, 0x58, 0x77, +}; +static const unsigned char kat1820_nonce[] = { + 0x12, 0x4e, 0xf0, 0xaf, 0xb6, 0x6b, 0x6e, 0x41, 0x97, 0xad, 0x87, 0x14, + 0x80, 0x89, 0x80, 0xf0, +}; +static const unsigned char kat1820_persstr[] = {0}; +static const unsigned char kat1820_entropyinreseed[] = { + 0x55, 0xb8, 0x52, 0xc8, 0xee, 0xf9, 0xfa, 0xb4, 0xf0, 0xb2, 0xdb, 0xf2, + 0x3a, 0xe7, 0x2a, 0x7c, 0x24, 0xc9, 0x7a, 0xc7, 0x6f, 0x80, 0x2f, 0xc6, +}; +static const unsigned char kat1820_addinreseed[] = { + 0xf7, 0x0a, 0xef, 0x2e, 0x5b, 0x2a, 0x95, 0xfa, 0x78, 0xd5, 0xa4, 0xf5, + 0x45, 0xc3, 0x41, 0xb5, 0x48, 0x32, 0xc9, 0xd9, 0xc9, 0x1a, 0xbf, 0x33, + 0xf9, 0x46, 0xea, 0xb8, 0x64, 0x9e, 0x2a, 0xc3, +}; +static const unsigned char kat1820_addin0[] = { + 0x78, 0x25, 0x2e, 0xac, 0xb9, 0x81, 0x5e, 0x93, 0x30, 0x51, 0xf5, 0x25, + 0x1c, 0x07, 0x39, 0xb8, 0x59, 0x73, 0x92, 0x4b, 0x17, 0x34, 0x18, 0x8a, + 0x9a, 0x59, 0xcd, 0xd4, 0x8a, 0x7b, 0x7d, 0x8a, +}; +static const unsigned char kat1820_addin1[] = { + 0x8e, 0x39, 0x1f, 0x33, 0xd6, 0xbb, 0xca, 0x15, 0x42, 0x88, 0xc6, 0x9c, + 0x95, 0xd8, 0xa5, 0x5a, 0x18, 0xa4, 0xe0, 0x0d, 0x77, 0x3c, 0x88, 0xf5, + 0x04, 0x4c, 0x18, 0x4d, 0x7e, 0x16, 0x0b, 0xcf, +}; +static const unsigned char kat1820_retbits[] = { + 0x59, 0x20, 0x77, 0xa6, 0xbd, 0xeb, 0x53, 0x9a, 0x7f, 0xf9, 0x68, 0x1e, + 0xb8, 0x60, 0xb8, 0xa3, 0x9c, 0x53, 0xd5, 0xa4, 0x12, 0x04, 0xa8, 0xe0, + 0x1a, 0x5a, 0x8a, 0xc3, 0x1a, 0x40, 0x88, 0xef, 0xeb, 0x15, 0xa1, 0x65, + 0xa5, 0xd9, 0xbe, 0x5b, 0xb0, 0x1a, 0x0a, 0xb8, 0x3d, 0x5d, 0x46, 0xd3, + 0x98, 0x71, 0x37, 0xa6, 0x3b, 0xda, 0x38, 0x21, 0x14, 0xbf, 0xd1, 0x50, + 0x2e, 0xeb, 0x25, 0xab, +}; +static const struct drbg_kat_pr_false kat1820_t = { + 4, kat1820_entropyin, kat1820_nonce, kat1820_persstr, + kat1820_entropyinreseed, kat1820_addinreseed, kat1820_addin0, + kat1820_addin1, kat1820_retbits +}; +static const struct drbg_kat kat1820 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1820_t +}; + +static const unsigned char kat1821_entropyin[] = { + 0x12, 0x55, 0x64, 0x2a, 0x14, 0xc2, 0x22, 0xa9, 0x08, 0xc7, 0xd6, 0x67, + 0x2f, 0x8c, 0xb6, 0x04, 0x58, 0x70, 0x23, 0x1b, 0xe7, 0xdd, 0x6c, 0xf3, +}; +static const unsigned char kat1821_nonce[] = { + 0x32, 0x70, 0x7c, 0x7d, 0xc9, 0xd0, 0xf8, 0x17, 0x54, 0xdd, 0xfb, 0xb3, + 0x97, 0x0f, 0x5b, 0x9f, +}; +static const unsigned char kat1821_persstr[] = {0}; +static const unsigned char kat1821_entropyinreseed[] = { + 0x08, 0xc8, 0x68, 0x2a, 0xdb, 0x94, 0x8a, 0xb0, 0xb7, 0x3b, 0x3e, 0x7f, + 0x1a, 0xeb, 0x72, 0xaf, 0xb7, 0x7c, 0x59, 0x4a, 0xc4, 0xe0, 0x3a, 0x17, +}; +static const unsigned char kat1821_addinreseed[] = { + 0xd0, 0x9e, 0xa0, 0x3b, 0x81, 0xca, 0x3f, 0x39, 0x37, 0x48, 0xb1, 0xb0, + 0x86, 0x38, 0x09, 0x70, 0xda, 0xfd, 0x79, 0xa3, 0x64, 0x49, 0xc2, 0x26, + 0xf7, 0xd9, 0x7d, 0x88, 0x31, 0xf5, 0x6b, 0x96, +}; +static const unsigned char kat1821_addin0[] = { + 0xcb, 0x08, 0x5f, 0x55, 0xa5, 0xe5, 0x74, 0x6c, 0xa1, 0x24, 0x1f, 0xab, + 0x16, 0xb5, 0x45, 0xc5, 0x37, 0xb8, 0xf5, 0xe0, 0xfe, 0x8d, 0xb7, 0x43, + 0x2e, 0x10, 0x83, 0xda, 0x07, 0x07, 0xe1, 0x43, +}; +static const unsigned char kat1821_addin1[] = { + 0x83, 0xce, 0x1c, 0xd0, 0xbf, 0xa5, 0x38, 0x4e, 0xe8, 0x74, 0x72, 0xfd, + 0x88, 0xfe, 0x87, 0xbf, 0xe1, 0xcf, 0xd2, 0x0f, 0x69, 0x5e, 0x0d, 0xac, + 0x03, 0x5a, 0xf8, 0x47, 0x75, 0xf9, 0xfc, 0xc6, +}; +static const unsigned char kat1821_retbits[] = { + 0x81, 0x01, 0xd9, 0x8b, 0x42, 0xaf, 0x97, 0x3c, 0xee, 0xe8, 0x1f, 0x8e, + 0xf3, 0x6a, 0xf9, 0xaa, 0x41, 0xd7, 0xaa, 0x93, 0xa9, 0xfd, 0x0e, 0x3c, + 0x91, 0xcb, 0x9a, 0x8e, 0x6b, 0xaa, 0xe5, 0xd0, 0x73, 0x59, 0x6e, 0x1b, + 0xe2, 0xb9, 0x2b, 0xd3, 0x02, 0xf2, 0x50, 0x1a, 0xed, 0x36, 0xaf, 0x2e, + 0x4b, 0x2e, 0xf4, 0x6c, 0xe2, 0x2a, 0x16, 0xcf, 0x88, 0x94, 0x04, 0x5d, + 0x89, 0x2f, 0x6f, 0x1d, +}; +static const struct drbg_kat_pr_false kat1821_t = { + 5, kat1821_entropyin, kat1821_nonce, kat1821_persstr, + kat1821_entropyinreseed, kat1821_addinreseed, kat1821_addin0, + kat1821_addin1, kat1821_retbits +}; +static const struct drbg_kat kat1821 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1821_t +}; + +static const unsigned char kat1822_entropyin[] = { + 0xfb, 0xc5, 0x79, 0x34, 0x78, 0xaf, 0xe0, 0x52, 0x2e, 0x2f, 0x90, 0x87, + 0x9b, 0xa8, 0xcd, 0x0c, 0x2b, 0x2f, 0x2d, 0x4e, 0xfa, 0x4e, 0x94, 0x74, +}; +static const unsigned char kat1822_nonce[] = { + 0x6c, 0xc1, 0xcc, 0x67, 0x32, 0x5b, 0x90, 0x0d, 0x06, 0x24, 0xe2, 0x79, + 0x3e, 0xc3, 0x5e, 0x96, +}; +static const unsigned char kat1822_persstr[] = {0}; +static const unsigned char kat1822_entropyinreseed[] = { + 0x50, 0x8e, 0x1a, 0xb7, 0x55, 0xb0, 0x26, 0xfa, 0xab, 0xe7, 0x3d, 0x35, + 0x45, 0x07, 0xb3, 0x49, 0x5a, 0x1d, 0x6d, 0xe1, 0xbb, 0xf4, 0x99, 0x11, +}; +static const unsigned char kat1822_addinreseed[] = { + 0xcb, 0xd2, 0xf6, 0x1a, 0x84, 0xc5, 0xf0, 0x85, 0xee, 0x5b, 0xf3, 0x4e, + 0x1f, 0xf7, 0x51, 0xbc, 0xf3, 0x3a, 0x04, 0x78, 0x38, 0x99, 0x8e, 0x0e, + 0xb0, 0x4a, 0xf0, 0xff, 0x30, 0x28, 0x5c, 0x45, +}; +static const unsigned char kat1822_addin0[] = { + 0x4c, 0xae, 0x13, 0x1d, 0x3e, 0x36, 0x61, 0x85, 0xb8, 0xb1, 0xe4, 0xca, + 0xa3, 0x4f, 0xaf, 0x28, 0xe3, 0x59, 0xf4, 0x6e, 0xd4, 0xf3, 0x6b, 0xd9, + 0x07, 0x2a, 0xa5, 0xbe, 0x93, 0x6b, 0xc4, 0xa1, +}; +static const unsigned char kat1822_addin1[] = { + 0x43, 0x7f, 0x31, 0xf2, 0xa4, 0xb3, 0xf5, 0x46, 0x46, 0x9d, 0xf7, 0x26, + 0x0a, 0x3e, 0x5f, 0x05, 0x12, 0x95, 0x16, 0xa8, 0x4a, 0xf7, 0x58, 0xe7, + 0x59, 0xe4, 0x48, 0x31, 0xed, 0x13, 0x2e, 0x36, +}; +static const unsigned char kat1822_retbits[] = { + 0x65, 0x6d, 0xa5, 0x12, 0x32, 0x3f, 0xa8, 0x26, 0x17, 0x08, 0xcf, 0xc9, + 0x71, 0xcf, 0x7c, 0xf7, 0xaf, 0xa8, 0xcb, 0x41, 0x9f, 0xfa, 0x31, 0x07, + 0x69, 0x67, 0xc5, 0xe6, 0x62, 0x9a, 0x24, 0x90, 0x29, 0x7a, 0xee, 0xbb, + 0x58, 0x2a, 0x05, 0xb2, 0xb6, 0x67, 0x8a, 0x82, 0xd8, 0xa4, 0x1f, 0x24, + 0x67, 0x2d, 0x35, 0xdb, 0x2e, 0xca, 0xc4, 0x86, 0x6d, 0x78, 0x11, 0x8a, + 0x24, 0x21, 0x28, 0x3b, +}; +static const struct drbg_kat_pr_false kat1822_t = { + 6, kat1822_entropyin, kat1822_nonce, kat1822_persstr, + kat1822_entropyinreseed, kat1822_addinreseed, kat1822_addin0, + kat1822_addin1, kat1822_retbits +}; +static const struct drbg_kat kat1822 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1822_t +}; + +static const unsigned char kat1823_entropyin[] = { + 0xee, 0x37, 0x9f, 0x3c, 0xc9, 0x90, 0x84, 0x29, 0x44, 0x6b, 0xf2, 0x2b, + 0x7c, 0xe1, 0xb5, 0xb9, 0x46, 0xeb, 0x2b, 0x16, 0xdc, 0xe5, 0x09, 0xd8, +}; +static const unsigned char kat1823_nonce[] = { + 0xc3, 0x96, 0xd8, 0x3d, 0x90, 0xb4, 0x2a, 0x67, 0xe4, 0xff, 0xea, 0x01, + 0x1c, 0x37, 0x9d, 0x26, +}; +static const unsigned char kat1823_persstr[] = {0}; +static const unsigned char kat1823_entropyinreseed[] = { + 0x52, 0x4c, 0x96, 0x98, 0x9f, 0xf4, 0x30, 0xb1, 0x42, 0x41, 0xec, 0xbf, + 0x5d, 0x23, 0x7b, 0xb0, 0xd9, 0xc5, 0x61, 0x07, 0x6e, 0xeb, 0xa4, 0x21, +}; +static const unsigned char kat1823_addinreseed[] = { + 0x4d, 0x0e, 0xb1, 0x8c, 0xbc, 0xc7, 0x88, 0x3a, 0x07, 0xb9, 0x99, 0x97, + 0xad, 0xca, 0xa5, 0xc1, 0x32, 0x0a, 0x24, 0x05, 0x0b, 0x44, 0x07, 0xd7, + 0x55, 0x0c, 0x9c, 0xe6, 0xbb, 0xbf, 0xbf, 0x56, +}; +static const unsigned char kat1823_addin0[] = { + 0xc9, 0xe8, 0x5f, 0x42, 0xd7, 0x2b, 0x2f, 0x34, 0x8e, 0x72, 0x3f, 0xf2, + 0x67, 0xca, 0x8a, 0x37, 0xec, 0xf5, 0x07, 0x06, 0xa7, 0x5b, 0x36, 0xb7, + 0xc6, 0x45, 0x85, 0x2c, 0x0d, 0x00, 0x2e, 0x71, +}; +static const unsigned char kat1823_addin1[] = { + 0x3f, 0xf6, 0xd9, 0x57, 0xdd, 0xb1, 0xed, 0x27, 0x13, 0xcf, 0x3d, 0x40, + 0x69, 0x8f, 0xe8, 0x8a, 0x62, 0xf5, 0x36, 0xb3, 0xf8, 0xfd, 0x68, 0x4f, + 0xe0, 0x1d, 0xa3, 0xc3, 0x23, 0x19, 0xc1, 0xd6, +}; +static const unsigned char kat1823_retbits[] = { + 0xbb, 0x1c, 0x04, 0x56, 0x10, 0x64, 0xf8, 0xc7, 0x29, 0xfd, 0x62, 0x09, + 0x8a, 0x32, 0x51, 0x6b, 0xc4, 0x72, 0x98, 0x86, 0x9e, 0x42, 0x6f, 0x49, + 0xd5, 0x2a, 0x26, 0x9b, 0x74, 0x4d, 0x82, 0x39, 0x77, 0xea, 0xa0, 0xa0, + 0xea, 0x80, 0x2f, 0xb0, 0x8e, 0xda, 0xc6, 0xf1, 0x30, 0x4c, 0x4d, 0xbe, + 0x5e, 0x17, 0x12, 0xd2, 0xbb, 0x88, 0xb6, 0xaf, 0x99, 0x57, 0x9d, 0xd4, + 0xba, 0xd4, 0x78, 0x37, +}; +static const struct drbg_kat_pr_false kat1823_t = { + 7, kat1823_entropyin, kat1823_nonce, kat1823_persstr, + kat1823_entropyinreseed, kat1823_addinreseed, kat1823_addin0, + kat1823_addin1, kat1823_retbits +}; +static const struct drbg_kat kat1823 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1823_t +}; + +static const unsigned char kat1824_entropyin[] = { + 0x5c, 0x0d, 0x92, 0xa3, 0xa3, 0xc7, 0xe3, 0x10, 0x42, 0x21, 0x75, 0x09, + 0x0c, 0x74, 0x99, 0x73, 0xc3, 0x0f, 0x83, 0xec, 0x2d, 0xe7, 0x9a, 0x98, +}; +static const unsigned char kat1824_nonce[] = { + 0xf4, 0x8e, 0x7f, 0xf7, 0x4b, 0x31, 0x8f, 0x65, 0x83, 0xbe, 0xba, 0x9a, + 0xa8, 0xbc, 0xb7, 0x9e, +}; +static const unsigned char kat1824_persstr[] = {0}; +static const unsigned char kat1824_entropyinreseed[] = { + 0x37, 0xf9, 0x1f, 0xc9, 0x43, 0x1e, 0xcc, 0xb2, 0xa0, 0x62, 0xbf, 0x78, + 0xd3, 0x14, 0xaa, 0xdd, 0xfd, 0x2c, 0xe2, 0x5f, 0x32, 0xd3, 0x7e, 0x32, +}; +static const unsigned char kat1824_addinreseed[] = { + 0x77, 0xf8, 0x1b, 0xef, 0xdf, 0xfd, 0xcc, 0xf9, 0x83, 0x78, 0x3a, 0x6b, + 0x70, 0xa8, 0xd8, 0xfa, 0x6e, 0x64, 0x0a, 0x74, 0x76, 0xdb, 0x2f, 0x28, + 0x3f, 0x42, 0xe0, 0x49, 0x85, 0x50, 0x05, 0xe3, +}; +static const unsigned char kat1824_addin0[] = { + 0xd0, 0xbc, 0x32, 0x86, 0x5e, 0x04, 0x75, 0xd0, 0xbd, 0x77, 0xa3, 0x8c, + 0x2d, 0x9a, 0xa7, 0xbf, 0xfa, 0xfd, 0xfd, 0x44, 0xbc, 0xc1, 0x33, 0xff, + 0x1e, 0xbd, 0x56, 0xdf, 0xae, 0x89, 0x78, 0x84, +}; +static const unsigned char kat1824_addin1[] = { + 0x22, 0x70, 0xa5, 0xd7, 0x1d, 0x58, 0x4f, 0x3a, 0xa0, 0xfb, 0x2e, 0xaf, + 0x69, 0x99, 0x87, 0x79, 0x96, 0xaa, 0x1d, 0x03, 0xc0, 0xe8, 0x8f, 0xa2, + 0xec, 0x63, 0x81, 0x3b, 0xe6, 0x39, 0x1a, 0xb6, +}; +static const unsigned char kat1824_retbits[] = { + 0x2f, 0x4d, 0xca, 0x3e, 0x8e, 0x58, 0x0e, 0x53, 0x33, 0xda, 0xe9, 0x04, + 0x43, 0x6b, 0xaa, 0x80, 0xb7, 0xa9, 0xb9, 0x5f, 0x02, 0x4a, 0x48, 0xac, + 0x8a, 0x3f, 0x0f, 0xec, 0x2b, 0x38, 0xc1, 0x08, 0x05, 0xa3, 0x8e, 0x84, + 0x29, 0x27, 0x20, 0xbf, 0xb8, 0xad, 0xbc, 0xa7, 0x7e, 0x9c, 0xcb, 0x7a, + 0xbb, 0xd6, 0x8e, 0x70, 0x10, 0xff, 0xfa, 0x35, 0x14, 0x52, 0xd3, 0x37, + 0xba, 0x42, 0x1f, 0x61, +}; +static const struct drbg_kat_pr_false kat1824_t = { + 8, kat1824_entropyin, kat1824_nonce, kat1824_persstr, + kat1824_entropyinreseed, kat1824_addinreseed, kat1824_addin0, + kat1824_addin1, kat1824_retbits +}; +static const struct drbg_kat kat1824 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1824_t +}; + +static const unsigned char kat1825_entropyin[] = { + 0x4f, 0x43, 0xad, 0x1b, 0xad, 0x3b, 0xf9, 0x28, 0xee, 0xb0, 0x1f, 0xf9, + 0x95, 0x6c, 0xb6, 0x89, 0xbb, 0xd6, 0xae, 0x70, 0xdd, 0x5a, 0x08, 0x49, +}; +static const unsigned char kat1825_nonce[] = { + 0x8e, 0x11, 0xec, 0xb9, 0x89, 0x28, 0x07, 0x5c, 0x77, 0x85, 0x7f, 0xd4, + 0x48, 0x48, 0xc3, 0x00, +}; +static const unsigned char kat1825_persstr[] = {0}; +static const unsigned char kat1825_entropyinreseed[] = { + 0xab, 0xee, 0x57, 0xc4, 0xf5, 0xc8, 0xe3, 0x75, 0x08, 0x64, 0xfd, 0x56, + 0xd1, 0x53, 0x92, 0x8f, 0xf1, 0x62, 0x14, 0x0e, 0x6a, 0x4a, 0x3e, 0xf0, +}; +static const unsigned char kat1825_addinreseed[] = { + 0x75, 0x59, 0x3a, 0x00, 0x45, 0xb2, 0x50, 0x83, 0x60, 0xa9, 0x04, 0xbe, + 0x27, 0x0e, 0x38, 0x1b, 0x43, 0x9f, 0x5c, 0x58, 0xe5, 0xd6, 0xdc, 0x80, + 0xa4, 0x5f, 0xb1, 0x76, 0xf8, 0xbe, 0x2e, 0x9e, +}; +static const unsigned char kat1825_addin0[] = { + 0xad, 0x68, 0xad, 0xcc, 0x9f, 0xe6, 0x81, 0xd2, 0xe5, 0xea, 0x02, 0xbc, + 0x02, 0x5b, 0xe7, 0x92, 0x88, 0x50, 0x73, 0x40, 0x3f, 0x79, 0xb3, 0x2a, + 0x15, 0xb9, 0xe9, 0xa3, 0xca, 0x61, 0x9f, 0x89, +}; +static const unsigned char kat1825_addin1[] = { + 0x20, 0x34, 0x09, 0xaf, 0x2d, 0x63, 0xc0, 0x89, 0x8d, 0x8a, 0xad, 0x3e, + 0x54, 0x15, 0x71, 0xcb, 0x36, 0x31, 0x6e, 0xe2, 0x80, 0x6d, 0x26, 0x2b, + 0x2d, 0xfe, 0xa6, 0x3e, 0x65, 0xe9, 0xe5, 0xf1, +}; +static const unsigned char kat1825_retbits[] = { + 0x4d, 0xc0, 0xe6, 0x8c, 0x07, 0xb2, 0xce, 0xf2, 0x45, 0x08, 0x83, 0x67, + 0x2b, 0xd5, 0x71, 0x6d, 0xe8, 0x8c, 0xe9, 0x4b, 0x5f, 0x72, 0x40, 0x0f, + 0xb7, 0x49, 0xad, 0xe2, 0xf4, 0xa5, 0xc6, 0xda, 0xbd, 0x01, 0xc3, 0xd3, + 0x26, 0xc7, 0xa8, 0xec, 0x4b, 0xa5, 0xbc, 0xb3, 0x3c, 0xc4, 0x5c, 0x20, + 0x64, 0x98, 0xe1, 0x45, 0xca, 0x2a, 0xea, 0xfc, 0x5b, 0x42, 0x6d, 0xc1, + 0x65, 0xaf, 0x33, 0xfb, +}; +static const struct drbg_kat_pr_false kat1825_t = { + 9, kat1825_entropyin, kat1825_nonce, kat1825_persstr, + kat1825_entropyinreseed, kat1825_addinreseed, kat1825_addin0, + kat1825_addin1, kat1825_retbits +}; +static const struct drbg_kat kat1825 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1825_t +}; + +static const unsigned char kat1826_entropyin[] = { + 0xa4, 0x4a, 0x50, 0xf5, 0x30, 0x3a, 0x77, 0x0f, 0x1b, 0x58, 0x73, 0x33, + 0x4e, 0x7c, 0x7d, 0x42, 0xec, 0xfd, 0x83, 0x77, 0x78, 0x23, 0x55, 0xb2, +}; +static const unsigned char kat1826_nonce[] = { + 0xab, 0x86, 0x69, 0x25, 0x75, 0x75, 0x37, 0xa1, 0x8b, 0x57, 0x55, 0x7f, + 0xde, 0xcf, 0xfd, 0x30, +}; +static const unsigned char kat1826_persstr[] = {0}; +static const unsigned char kat1826_entropyinreseed[] = { + 0xfc, 0x81, 0xc0, 0xab, 0xef, 0x73, 0xef, 0x4b, 0x7b, 0xfa, 0x38, 0x73, + 0xf0, 0xdb, 0xae, 0xb9, 0xea, 0x72, 0xce, 0x6f, 0xbd, 0x23, 0x5f, 0x22, +}; +static const unsigned char kat1826_addinreseed[] = { + 0xee, 0x7b, 0xd6, 0x67, 0xb3, 0x8e, 0x2d, 0xfd, 0x79, 0x96, 0x20, 0x47, + 0x8e, 0xd8, 0x58, 0xa3, 0x21, 0xeb, 0xa2, 0x8d, 0x23, 0x42, 0xc2, 0x7e, + 0x5a, 0xfb, 0xd5, 0xa6, 0xac, 0x89, 0x63, 0x5a, +}; +static const unsigned char kat1826_addin0[] = { + 0x56, 0x11, 0xfd, 0x32, 0x39, 0x52, 0x59, 0x92, 0x40, 0xeb, 0x28, 0xc5, + 0x1c, 0x4e, 0xf0, 0xf3, 0xfd, 0x50, 0x8e, 0xb4, 0x59, 0xdc, 0x65, 0x2a, + 0xdf, 0x17, 0xfd, 0x19, 0xe7, 0xc2, 0xbe, 0x66, +}; +static const unsigned char kat1826_addin1[] = { + 0xe1, 0xac, 0x2a, 0xbd, 0x69, 0x3e, 0xf6, 0xf1, 0xe5, 0x84, 0xa5, 0xa7, + 0x93, 0xfc, 0xb3, 0xd2, 0x3a, 0x38, 0x8e, 0xfe, 0x75, 0x02, 0x5a, 0x86, + 0x52, 0xc5, 0x4f, 0x99, 0xf6, 0xe3, 0xfb, 0x5f, +}; +static const unsigned char kat1826_retbits[] = { + 0x0e, 0x11, 0xbc, 0x63, 0xc8, 0x6a, 0x93, 0x96, 0xfe, 0x20, 0x6a, 0x73, + 0xab, 0x7d, 0x6d, 0xdd, 0x83, 0xbe, 0x9b, 0x67, 0xa9, 0x45, 0x27, 0x09, + 0x29, 0x24, 0xf1, 0xf8, 0xb2, 0x29, 0x54, 0xb9, 0xa4, 0xb4, 0x28, 0x54, + 0xa1, 0xe9, 0x58, 0x16, 0x14, 0x00, 0x46, 0x20, 0x57, 0x7d, 0x68, 0x77, + 0x75, 0x65, 0x7a, 0x8d, 0x33, 0xff, 0xb3, 0xeb, 0xd6, 0xf7, 0x54, 0x2f, + 0x42, 0x1a, 0x75, 0x7a, +}; +static const struct drbg_kat_pr_false kat1826_t = { + 10, kat1826_entropyin, kat1826_nonce, kat1826_persstr, + kat1826_entropyinreseed, kat1826_addinreseed, kat1826_addin0, + kat1826_addin1, kat1826_retbits +}; +static const struct drbg_kat kat1826 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1826_t +}; + +static const unsigned char kat1827_entropyin[] = { + 0x5b, 0x91, 0x58, 0x0f, 0x90, 0xc7, 0x06, 0xba, 0x39, 0xc3, 0x84, 0x5e, + 0x26, 0xcc, 0x7e, 0x39, 0x79, 0x35, 0x6c, 0xbe, 0xfb, 0x11, 0x66, 0xc5, +}; +static const unsigned char kat1827_nonce[] = { + 0x04, 0xfa, 0xa1, 0x9a, 0x8a, 0x14, 0x06, 0xed, 0xa3, 0xe2, 0x28, 0x0a, + 0xe2, 0xd1, 0xc7, 0x8f, +}; +static const unsigned char kat1827_persstr[] = {0}; +static const unsigned char kat1827_entropyinreseed[] = { + 0xda, 0xf1, 0x44, 0x93, 0xf4, 0x2f, 0x75, 0xb7, 0x0c, 0xfe, 0xcc, 0xc7, + 0x6b, 0x95, 0x54, 0xbc, 0x7c, 0x5a, 0x9d, 0x81, 0x16, 0xe8, 0x8d, 0xb5, +}; +static const unsigned char kat1827_addinreseed[] = { + 0x93, 0xc6, 0x29, 0xbb, 0xb9, 0x8d, 0xfd, 0x26, 0xeb, 0x01, 0x6a, 0xc4, + 0xc4, 0xd5, 0xc2, 0xdd, 0x1b, 0x37, 0xdb, 0x62, 0x6c, 0x21, 0x61, 0xad, + 0xa7, 0xfc, 0x47, 0xab, 0x77, 0x08, 0x9b, 0xa8, +}; +static const unsigned char kat1827_addin0[] = { + 0x96, 0xc6, 0x01, 0xd4, 0x82, 0x4b, 0x37, 0xe7, 0x6c, 0xfc, 0x1a, 0x71, + 0x79, 0xc6, 0x5e, 0x8c, 0x96, 0xfa, 0x42, 0xf3, 0xc1, 0xab, 0x6a, 0x56, + 0x46, 0x9a, 0x18, 0x42, 0x3e, 0xfa, 0x45, 0xc0, +}; +static const unsigned char kat1827_addin1[] = { + 0xe8, 0x33, 0xc4, 0x7f, 0xf9, 0x8b, 0x52, 0x1b, 0x2b, 0x1b, 0xf6, 0x23, + 0x79, 0x4b, 0x95, 0xfe, 0xa7, 0x3b, 0x81, 0xb3, 0xde, 0x0b, 0x17, 0x8c, + 0x5d, 0x1d, 0xd3, 0x16, 0xd5, 0x64, 0xa0, 0xac, +}; +static const unsigned char kat1827_retbits[] = { + 0x39, 0xb2, 0x7f, 0x35, 0x36, 0xb9, 0x3a, 0xdf, 0x14, 0x78, 0x54, 0x43, + 0x79, 0x7b, 0x9c, 0x1c, 0x59, 0x29, 0xf0, 0xd7, 0x92, 0x0c, 0xa2, 0x93, + 0x25, 0x80, 0xe2, 0xff, 0x0d, 0xca, 0xe3, 0x98, 0x1d, 0xfc, 0x86, 0xc1, + 0x55, 0xf1, 0x38, 0xac, 0x2b, 0x9c, 0x63, 0x8a, 0x09, 0x3b, 0x65, 0xe9, + 0xe3, 0xde, 0x71, 0x55, 0x35, 0xcf, 0x72, 0x9e, 0x4f, 0xce, 0x46, 0x58, + 0xfe, 0x35, 0x0c, 0x6b, +}; +static const struct drbg_kat_pr_false kat1827_t = { + 11, kat1827_entropyin, kat1827_nonce, kat1827_persstr, + kat1827_entropyinreseed, kat1827_addinreseed, kat1827_addin0, + kat1827_addin1, kat1827_retbits +}; +static const struct drbg_kat kat1827 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1827_t +}; + +static const unsigned char kat1828_entropyin[] = { + 0x26, 0x85, 0x78, 0xf1, 0x4d, 0xf3, 0x20, 0x00, 0x2e, 0x79, 0xd1, 0x17, + 0x4d, 0x28, 0x1c, 0xeb, 0x14, 0x34, 0x9e, 0x0d, 0xa1, 0xe7, 0x23, 0x56, +}; +static const unsigned char kat1828_nonce[] = { + 0x75, 0xcf, 0x7e, 0x7b, 0x84, 0xa1, 0x1e, 0xcf, 0xce, 0x10, 0x64, 0x68, + 0xad, 0xc2, 0x87, 0x96, +}; +static const unsigned char kat1828_persstr[] = {0}; +static const unsigned char kat1828_entropyinreseed[] = { + 0x28, 0xc5, 0x64, 0x2a, 0x89, 0x23, 0xe7, 0x37, 0xea, 0xdd, 0x24, 0xf0, + 0xae, 0xc0, 0x89, 0x77, 0x20, 0x1d, 0x08, 0xca, 0xa0, 0xc2, 0x43, 0x27, +}; +static const unsigned char kat1828_addinreseed[] = { + 0xaf, 0x7b, 0x0e, 0x35, 0x1d, 0x2c, 0xa7, 0x95, 0x59, 0x2b, 0x1c, 0xad, + 0x16, 0x7a, 0xe3, 0xf6, 0x99, 0xcf, 0x01, 0xf0, 0xf1, 0xd0, 0xcc, 0x8c, + 0xfd, 0xc9, 0x14, 0x82, 0xd3, 0x04, 0x2f, 0x57, +}; +static const unsigned char kat1828_addin0[] = { + 0x47, 0x26, 0xeb, 0x11, 0x9c, 0xa6, 0x2e, 0xff, 0xe2, 0x05, 0x99, 0x0b, + 0x94, 0x3e, 0x8b, 0xc9, 0xcf, 0xd4, 0x93, 0xdb, 0xf3, 0x17, 0xab, 0x70, + 0xab, 0x96, 0x6b, 0x8d, 0x22, 0x57, 0xae, 0xf7, +}; +static const unsigned char kat1828_addin1[] = { + 0x8e, 0x35, 0xac, 0x04, 0x31, 0xb9, 0xea, 0x89, 0xdf, 0x69, 0x8f, 0xad, + 0x94, 0x57, 0x3c, 0xf6, 0xaa, 0x96, 0x2a, 0xca, 0x44, 0x09, 0x1a, 0xb7, + 0x3f, 0x6a, 0xb0, 0xc1, 0x5f, 0x9f, 0x72, 0xb1, +}; +static const unsigned char kat1828_retbits[] = { + 0xbd, 0x97, 0xf1, 0x49, 0xf8, 0xb6, 0x0f, 0xca, 0xfd, 0x16, 0x48, 0x58, + 0x7f, 0x65, 0x62, 0x3a, 0xb9, 0xe8, 0xc7, 0xe5, 0xf4, 0x3c, 0x96, 0x5f, + 0x69, 0x5e, 0xd7, 0x30, 0x54, 0x3a, 0x6e, 0xfa, 0x58, 0xbb, 0x25, 0x38, + 0x70, 0x72, 0xa5, 0x25, 0x1a, 0x7c, 0xd3, 0xcb, 0x92, 0x10, 0xb2, 0xa7, + 0x98, 0x57, 0x39, 0x35, 0xc7, 0x41, 0x54, 0xa9, 0xa7, 0x7f, 0x41, 0x8b, + 0x06, 0x6a, 0x6a, 0xdb, +}; +static const struct drbg_kat_pr_false kat1828_t = { + 12, kat1828_entropyin, kat1828_nonce, kat1828_persstr, + kat1828_entropyinreseed, kat1828_addinreseed, kat1828_addin0, + kat1828_addin1, kat1828_retbits +}; +static const struct drbg_kat kat1828 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1828_t +}; + +static const unsigned char kat1829_entropyin[] = { + 0x06, 0x65, 0x0e, 0x55, 0xf2, 0x14, 0x36, 0xce, 0xea, 0x53, 0x06, 0x15, + 0xe1, 0x43, 0x57, 0x5e, 0xf5, 0x9e, 0x0f, 0xb6, 0xe1, 0x3e, 0x1b, 0x48, +}; +static const unsigned char kat1829_nonce[] = { + 0x87, 0x0b, 0x65, 0xaf, 0x36, 0xdf, 0x39, 0xcc, 0x20, 0x4c, 0xd3, 0x2b, + 0xd0, 0x96, 0x24, 0x20, +}; +static const unsigned char kat1829_persstr[] = {0}; +static const unsigned char kat1829_entropyinreseed[] = { + 0x7b, 0x2c, 0x19, 0x9c, 0xae, 0x21, 0xe4, 0xa3, 0x28, 0xec, 0xee, 0x6b, + 0x8f, 0x2b, 0x8c, 0x28, 0x63, 0x0e, 0x3c, 0x39, 0x0f, 0x40, 0x1a, 0xe1, +}; +static const unsigned char kat1829_addinreseed[] = { + 0x29, 0xba, 0x0b, 0x55, 0xa4, 0xf2, 0xee, 0x63, 0xc8, 0x58, 0x61, 0x5f, + 0xe3, 0x93, 0xe6, 0xd7, 0x04, 0xd0, 0x45, 0x88, 0xf5, 0x19, 0x01, 0xd5, + 0x75, 0xf6, 0x24, 0x7c, 0xf5, 0x2d, 0x69, 0xa5, +}; +static const unsigned char kat1829_addin0[] = { + 0x7c, 0x34, 0x32, 0x9a, 0x91, 0xb1, 0xd1, 0x5e, 0x8a, 0x2f, 0x33, 0x52, + 0xf7, 0xcc, 0x18, 0x76, 0xec, 0xbd, 0xd6, 0x6e, 0xad, 0x5c, 0x6d, 0x9d, + 0xfb, 0x6b, 0x90, 0x48, 0xbc, 0x7e, 0x20, 0xf1, +}; +static const unsigned char kat1829_addin1[] = { + 0x4e, 0x75, 0x78, 0x84, 0x92, 0xaa, 0x55, 0xf6, 0x32, 0xd5, 0x9b, 0xdf, + 0x96, 0xb6, 0x4c, 0xed, 0xe3, 0xcf, 0x1e, 0x9f, 0x97, 0x6c, 0x43, 0xec, + 0x7a, 0x32, 0x58, 0xc6, 0x8c, 0x0e, 0x03, 0x08, +}; +static const unsigned char kat1829_retbits[] = { + 0x8a, 0xce, 0x58, 0xad, 0x55, 0xdf, 0x74, 0x4d, 0x2d, 0x19, 0xdd, 0x8d, + 0x68, 0xf2, 0x96, 0x74, 0xc3, 0x0b, 0xaa, 0x5a, 0xaf, 0x4d, 0xd6, 0x74, + 0x86, 0x24, 0xac, 0xd6, 0x3a, 0xb0, 0xa8, 0xdc, 0xd6, 0x26, 0xfd, 0x94, + 0xe1, 0x31, 0xa1, 0x00, 0xc1, 0x58, 0x15, 0xeb, 0xc0, 0x56, 0x97, 0x2f, + 0x80, 0xb3, 0x38, 0xe5, 0xa9, 0xf6, 0x22, 0xcf, 0xb1, 0x59, 0xc9, 0xf9, + 0xe3, 0x16, 0x00, 0x46, +}; +static const struct drbg_kat_pr_false kat1829_t = { + 13, kat1829_entropyin, kat1829_nonce, kat1829_persstr, + kat1829_entropyinreseed, kat1829_addinreseed, kat1829_addin0, + kat1829_addin1, kat1829_retbits +}; +static const struct drbg_kat kat1829 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1829_t +}; + +static const unsigned char kat1830_entropyin[] = { + 0x46, 0xb5, 0xb2, 0x73, 0xb4, 0x46, 0x4d, 0x53, 0xaa, 0x43, 0xba, 0xca, + 0x41, 0x3c, 0xc9, 0xda, 0xa3, 0x05, 0xe9, 0xd9, 0x88, 0x9c, 0xc2, 0x8f, +}; +static const unsigned char kat1830_nonce[] = { + 0x23, 0xd3, 0xdd, 0xcb, 0x8a, 0xd9, 0x89, 0x0c, 0xf4, 0x48, 0x0e, 0x84, + 0xcb, 0x7a, 0x1b, 0xf1, +}; +static const unsigned char kat1830_persstr[] = {0}; +static const unsigned char kat1830_entropyinreseed[] = { + 0x43, 0x7a, 0x21, 0x3d, 0xd1, 0xa0, 0x6c, 0x1a, 0xc5, 0x06, 0x9d, 0x55, + 0xc0, 0xb2, 0x1a, 0xab, 0xd7, 0x23, 0xf1, 0xfd, 0x84, 0xe4, 0x5a, 0x92, +}; +static const unsigned char kat1830_addinreseed[] = { + 0xcb, 0x24, 0x2d, 0x02, 0xdb, 0xdb, 0x8f, 0x93, 0x67, 0x37, 0x35, 0xdd, + 0xbe, 0x45, 0x13, 0xc3, 0xaf, 0x98, 0x01, 0x0f, 0x82, 0x72, 0x9b, 0x2c, + 0xee, 0xd0, 0x8f, 0xe0, 0x2d, 0x39, 0x0a, 0x39, +}; +static const unsigned char kat1830_addin0[] = { + 0x73, 0x11, 0x3a, 0x6b, 0xed, 0x92, 0x93, 0x5e, 0x4b, 0x6c, 0x58, 0xbb, + 0x78, 0x8e, 0xa6, 0x20, 0x03, 0x38, 0x37, 0x41, 0x50, 0x8c, 0xcf, 0xe9, + 0xff, 0xf1, 0x43, 0x22, 0x87, 0x0f, 0x19, 0x8f, +}; +static const unsigned char kat1830_addin1[] = { + 0x12, 0x9c, 0xa5, 0x35, 0xa8, 0xa9, 0xec, 0xed, 0x5a, 0xa8, 0xc0, 0xc9, + 0x6a, 0x01, 0x8a, 0xa1, 0xa8, 0x60, 0x64, 0x8a, 0x5f, 0xc2, 0xc5, 0x65, + 0x7a, 0x49, 0xda, 0xb7, 0x79, 0x31, 0x54, 0xdc, +}; +static const unsigned char kat1830_retbits[] = { + 0x03, 0x7a, 0x2b, 0x9b, 0xa1, 0x3b, 0xe2, 0x12, 0xdb, 0xe8, 0xae, 0x28, + 0xf4, 0xaa, 0xff, 0x9c, 0x9b, 0x36, 0x35, 0xed, 0xeb, 0xe0, 0xad, 0x29, + 0xbd, 0x13, 0xff, 0x64, 0x20, 0xf9, 0x79, 0x04, 0x32, 0x45, 0x49, 0xba, + 0x24, 0x7e, 0xc3, 0xd5, 0x76, 0x4f, 0x66, 0x23, 0x67, 0xd9, 0x49, 0x49, + 0x77, 0xe2, 0xf9, 0xef, 0xf2, 0xa3, 0xaa, 0xa4, 0x84, 0x39, 0x5a, 0x9e, + 0x9e, 0x5b, 0x77, 0x6c, +}; +static const struct drbg_kat_pr_false kat1830_t = { + 14, kat1830_entropyin, kat1830_nonce, kat1830_persstr, + kat1830_entropyinreseed, kat1830_addinreseed, kat1830_addin0, + kat1830_addin1, kat1830_retbits +}; +static const struct drbg_kat kat1830 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1830_t +}; + +static const unsigned char kat1831_entropyin[] = { + 0xb4, 0xb0, 0x5c, 0xe9, 0xce, 0x07, 0x41, 0x83, 0xa3, 0x06, 0xbf, 0x07, + 0xee, 0xd6, 0x84, 0xbf, 0x06, 0x5e, 0xbf, 0xfa, 0xd9, 0x75, 0x84, 0x51, +}; +static const unsigned char kat1831_nonce[] = { + 0x73, 0x3a, 0x68, 0xb1, 0xd2, 0x76, 0xf1, 0x54, 0xe7, 0x9b, 0x3d, 0xd0, + 0x83, 0xd2, 0x27, 0x8f, +}; +static const unsigned char kat1831_persstr[] = { + 0x9e, 0x88, 0x4f, 0xac, 0xfb, 0x9e, 0x9d, 0x40, 0x03, 0x47, 0x1d, 0x76, + 0x2b, 0xe0, 0x12, 0x47, 0xfb, 0xcb, 0x18, 0xd9, 0x08, 0x49, 0x73, 0xa2, + 0xb8, 0x33, 0x76, 0x4d, 0x71, 0x5c, 0x0c, 0xf8, +}; +static const unsigned char kat1831_entropyinreseed[] = { + 0xbe, 0x90, 0x03, 0xb0, 0x6e, 0x75, 0x26, 0x5c, 0x4f, 0xa5, 0x4c, 0x31, + 0xf6, 0xf5, 0xbf, 0xd2, 0x13, 0x25, 0xe1, 0x24, 0xfd, 0x54, 0x17, 0x69, +}; +static const unsigned char kat1831_addinreseed[] = {0}; +static const unsigned char kat1831_addin0[] = {0}; +static const unsigned char kat1831_addin1[] = {0}; +static const unsigned char kat1831_retbits[] = { + 0x38, 0xbf, 0x46, 0x94, 0x71, 0x70, 0x62, 0xef, 0x51, 0x12, 0x1b, 0xcd, + 0xf1, 0xdc, 0x70, 0x0e, 0xcc, 0x1a, 0x01, 0x8a, 0x2d, 0xa4, 0x07, 0x41, + 0x7a, 0x8f, 0x63, 0x11, 0xf1, 0x97, 0xe7, 0xda, 0x9c, 0x7b, 0x4a, 0x30, + 0x05, 0x46, 0xa6, 0x8c, 0x4a, 0x39, 0x35, 0x76, 0xd1, 0x51, 0x2e, 0x27, + 0x73, 0x75, 0xa0, 0xe0, 0x5c, 0x53, 0x75, 0x77, 0x86, 0x7c, 0x93, 0x70, + 0x62, 0xd7, 0x0f, 0xd7, +}; +static const struct drbg_kat_pr_false kat1831_t = { + 0, kat1831_entropyin, kat1831_nonce, kat1831_persstr, + kat1831_entropyinreseed, kat1831_addinreseed, kat1831_addin0, + kat1831_addin1, kat1831_retbits +}; +static const struct drbg_kat kat1831 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1831_t +}; + +static const unsigned char kat1832_entropyin[] = { + 0xa4, 0xf6, 0xfc, 0x1a, 0x3d, 0xfe, 0xcb, 0x13, 0x77, 0x69, 0x98, 0x26, + 0xb8, 0xf4, 0xb5, 0x12, 0x9e, 0x58, 0x4b, 0xf8, 0xd2, 0x6b, 0x3a, 0x82, +}; +static const unsigned char kat1832_nonce[] = { + 0x47, 0xf7, 0xa5, 0x5a, 0x78, 0x38, 0x70, 0xc5, 0xcb, 0x62, 0x1d, 0x67, + 0x38, 0x7d, 0x6f, 0xdd, +}; +static const unsigned char kat1832_persstr[] = { + 0xb0, 0x16, 0xdb, 0x1c, 0x11, 0x1f, 0x20, 0x3d, 0x10, 0x84, 0x96, 0xdf, + 0xdc, 0x79, 0x9e, 0xe2, 0xec, 0xe6, 0xd7, 0xf5, 0x6c, 0x8b, 0x73, 0xc9, + 0xf5, 0xeb, 0x24, 0xe1, 0x88, 0xa4, 0x88, 0x2f, +}; +static const unsigned char kat1832_entropyinreseed[] = { + 0x35, 0xb7, 0xe7, 0x15, 0xce, 0xb2, 0x6b, 0xe7, 0x5c, 0x23, 0x0d, 0x44, + 0x2c, 0xce, 0xad, 0x39, 0xc9, 0xab, 0x94, 0x10, 0x38, 0xd4, 0x74, 0xcc, +}; +static const unsigned char kat1832_addinreseed[] = {0}; +static const unsigned char kat1832_addin0[] = {0}; +static const unsigned char kat1832_addin1[] = {0}; +static const unsigned char kat1832_retbits[] = { + 0xe4, 0x75, 0x26, 0x2f, 0x8f, 0x34, 0xb0, 0xd2, 0x3e, 0xaa, 0x75, 0x3b, + 0x0c, 0xdf, 0xe5, 0xf4, 0x9b, 0xb5, 0x42, 0x16, 0xf8, 0x9c, 0x7b, 0x73, + 0xcb, 0xd5, 0xb4, 0xcd, 0x8c, 0x88, 0x2c, 0xf9, 0xf2, 0x5b, 0x40, 0x59, + 0xe3, 0x98, 0x72, 0xc3, 0xa7, 0x90, 0x20, 0xfe, 0x44, 0xbe, 0xf2, 0x0a, + 0x39, 0xe3, 0xdf, 0x16, 0x5e, 0x0b, 0x6e, 0x16, 0x9a, 0xd4, 0x6d, 0x89, + 0xee, 0x3a, 0xfa, 0x0b, +}; +static const struct drbg_kat_pr_false kat1832_t = { + 1, kat1832_entropyin, kat1832_nonce, kat1832_persstr, + kat1832_entropyinreseed, kat1832_addinreseed, kat1832_addin0, + kat1832_addin1, kat1832_retbits +}; +static const struct drbg_kat kat1832 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1832_t +}; + +static const unsigned char kat1833_entropyin[] = { + 0x2c, 0x84, 0xf1, 0xa7, 0x9a, 0x2c, 0xf4, 0xfa, 0xc8, 0x74, 0x0e, 0xd9, + 0x80, 0xc6, 0x57, 0x32, 0xc5, 0xb2, 0x57, 0xbb, 0x1c, 0x2c, 0xea, 0x36, +}; +static const unsigned char kat1833_nonce[] = { + 0x40, 0xf1, 0xfd, 0xf6, 0xfa, 0x5f, 0xf0, 0x37, 0x66, 0xea, 0xd7, 0xb7, + 0x1b, 0xcb, 0x44, 0xd2, +}; +static const unsigned char kat1833_persstr[] = { + 0x4f, 0x8c, 0x7b, 0x89, 0x31, 0x7a, 0x92, 0xfa, 0xe1, 0x8b, 0x6d, 0x68, + 0xf7, 0xfa, 0xcd, 0x60, 0x1c, 0x4d, 0x4d, 0xd5, 0x39, 0xc3, 0xa9, 0xc3, + 0xeb, 0xe2, 0x89, 0x18, 0x6f, 0xfb, 0x2f, 0x22, +}; +static const unsigned char kat1833_entropyinreseed[] = { + 0xa6, 0x5b, 0xa6, 0x90, 0xcf, 0x9b, 0xa5, 0x74, 0xd0, 0x10, 0x55, 0x2b, + 0x7b, 0x3d, 0xfd, 0x38, 0x8b, 0x56, 0x52, 0xf3, 0x23, 0x3d, 0xbc, 0xd3, +}; +static const unsigned char kat1833_addinreseed[] = {0}; +static const unsigned char kat1833_addin0[] = {0}; +static const unsigned char kat1833_addin1[] = {0}; +static const unsigned char kat1833_retbits[] = { + 0xea, 0x06, 0x8f, 0xb6, 0x2d, 0x2f, 0x78, 0xb1, 0xb4, 0xb1, 0x92, 0x51, + 0x81, 0xa9, 0xf6, 0x13, 0x96, 0x4a, 0x17, 0xc3, 0xe1, 0xf8, 0xa9, 0xce, + 0xd2, 0xa9, 0x6f, 0xa3, 0x77, 0x12, 0x3c, 0x01, 0xb7, 0xf7, 0x84, 0x77, + 0x4e, 0x94, 0x08, 0x31, 0xc1, 0xf5, 0x2d, 0xc1, 0x5a, 0xca, 0x3b, 0xad, + 0x24, 0xac, 0xe3, 0x42, 0x2e, 0xdf, 0x56, 0xdf, 0xc8, 0x95, 0x2d, 0xb8, + 0x61, 0x38, 0x83, 0x22, +}; +static const struct drbg_kat_pr_false kat1833_t = { + 2, kat1833_entropyin, kat1833_nonce, kat1833_persstr, + kat1833_entropyinreseed, kat1833_addinreseed, kat1833_addin0, + kat1833_addin1, kat1833_retbits +}; +static const struct drbg_kat kat1833 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1833_t +}; + +static const unsigned char kat1834_entropyin[] = { + 0x26, 0x3c, 0xb0, 0x78, 0x00, 0x82, 0xab, 0xf9, 0xf3, 0xb3, 0x7f, 0xf2, + 0xb8, 0xf8, 0x10, 0xdb, 0x35, 0xf9, 0x70, 0xf4, 0x74, 0x9e, 0x1e, 0x4b, +}; +static const unsigned char kat1834_nonce[] = { + 0x43, 0x65, 0x58, 0x42, 0x5d, 0x3a, 0x43, 0x26, 0xaa, 0xda, 0x7e, 0xef, + 0x7b, 0x13, 0xc1, 0xba, +}; +static const unsigned char kat1834_persstr[] = { + 0x30, 0xc8, 0x2b, 0xe2, 0x5e, 0xba, 0xcb, 0xa2, 0x24, 0xaa, 0xd9, 0xc8, + 0xb7, 0xd4, 0x99, 0x3e, 0x7b, 0xae, 0x90, 0x82, 0x05, 0xeb, 0xd1, 0x1c, + 0x19, 0xf1, 0xb3, 0x5b, 0x09, 0xd0, 0x6a, 0xf8, +}; +static const unsigned char kat1834_entropyinreseed[] = { + 0x63, 0xd5, 0x60, 0xf8, 0xa0, 0xee, 0xab, 0x76, 0xce, 0x62, 0xa1, 0x6d, + 0x12, 0x5d, 0x39, 0x2a, 0x36, 0xff, 0x34, 0x2b, 0x03, 0x4c, 0xe8, 0xa5, +}; +static const unsigned char kat1834_addinreseed[] = {0}; +static const unsigned char kat1834_addin0[] = {0}; +static const unsigned char kat1834_addin1[] = {0}; +static const unsigned char kat1834_retbits[] = { + 0xbb, 0xb3, 0x9e, 0xaa, 0x24, 0xa9, 0x84, 0x17, 0xb6, 0xaf, 0xdc, 0xd5, + 0x6d, 0x15, 0x41, 0xe3, 0x05, 0x45, 0xa9, 0x44, 0x4c, 0xb7, 0xbc, 0x66, + 0x49, 0xe9, 0xbb, 0x8b, 0x4b, 0x52, 0xbf, 0x3a, 0x10, 0xa7, 0xa2, 0x0b, + 0x5b, 0xda, 0x1e, 0x76, 0x40, 0xfa, 0x15, 0xce, 0x09, 0x05, 0xd7, 0x6e, + 0xc4, 0x92, 0xdb, 0xf3, 0xb3, 0x74, 0x65, 0x89, 0x69, 0x4a, 0xcc, 0x2e, + 0xde, 0x36, 0xb2, 0x96, +}; +static const struct drbg_kat_pr_false kat1834_t = { + 3, kat1834_entropyin, kat1834_nonce, kat1834_persstr, + kat1834_entropyinreseed, kat1834_addinreseed, kat1834_addin0, + kat1834_addin1, kat1834_retbits +}; +static const struct drbg_kat kat1834 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1834_t +}; + +static const unsigned char kat1835_entropyin[] = { + 0x54, 0x25, 0x5d, 0x15, 0x88, 0x32, 0x50, 0x17, 0x21, 0xaf, 0x07, 0x4f, + 0x1a, 0x05, 0x3f, 0x04, 0xc7, 0x17, 0xc9, 0x38, 0xc3, 0x22, 0x6d, 0x7e, +}; +static const unsigned char kat1835_nonce[] = { + 0xc8, 0xb9, 0x45, 0x14, 0x33, 0xa2, 0x9e, 0x92, 0x09, 0x99, 0x82, 0xfe, + 0x6b, 0xa9, 0x95, 0x5a, +}; +static const unsigned char kat1835_persstr[] = { + 0xc2, 0x6c, 0x8d, 0xad, 0xf2, 0x10, 0x51, 0xbf, 0x82, 0xbb, 0xd0, 0x9d, + 0x5a, 0x45, 0x50, 0xda, 0x1e, 0x90, 0xfc, 0x8d, 0x3b, 0x3b, 0xfc, 0x0e, + 0xc2, 0xca, 0x55, 0xef, 0xc5, 0xce, 0x66, 0xae, +}; +static const unsigned char kat1835_entropyinreseed[] = { + 0x30, 0x03, 0x5f, 0xa0, 0xdd, 0xf9, 0xbd, 0xbf, 0x2e, 0x09, 0xc6, 0x92, + 0x60, 0xec, 0x31, 0x8c, 0xa3, 0xe4, 0x4d, 0x60, 0x80, 0xa2, 0x8b, 0x7e, +}; +static const unsigned char kat1835_addinreseed[] = {0}; +static const unsigned char kat1835_addin0[] = {0}; +static const unsigned char kat1835_addin1[] = {0}; +static const unsigned char kat1835_retbits[] = { + 0x84, 0xd1, 0x57, 0x84, 0xb0, 0x20, 0x87, 0xe2, 0x62, 0x26, 0xc6, 0x63, + 0xc5, 0xc8, 0x6d, 0x5f, 0x06, 0x17, 0xa1, 0x50, 0x30, 0x10, 0x92, 0x0c, + 0xd0, 0x29, 0xf7, 0xca, 0x91, 0xbb, 0x82, 0xb6, 0x63, 0x30, 0x50, 0x13, + 0x9e, 0xb4, 0x23, 0xb8, 0x6f, 0x29, 0x24, 0xd5, 0x0d, 0xa7, 0x78, 0x7e, + 0x1e, 0x47, 0xda, 0x02, 0xb8, 0x34, 0x85, 0x91, 0xb7, 0xc7, 0xa7, 0xc6, + 0x1d, 0xbb, 0xb8, 0xf5, +}; +static const struct drbg_kat_pr_false kat1835_t = { + 4, kat1835_entropyin, kat1835_nonce, kat1835_persstr, + kat1835_entropyinreseed, kat1835_addinreseed, kat1835_addin0, + kat1835_addin1, kat1835_retbits +}; +static const struct drbg_kat kat1835 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1835_t +}; + +static const unsigned char kat1836_entropyin[] = { + 0x25, 0x3f, 0xfd, 0xfa, 0xd4, 0x16, 0x5e, 0x6e, 0x3f, 0x00, 0xb9, 0x73, + 0x53, 0x50, 0xa9, 0xe1, 0x7e, 0xf2, 0xfa, 0x1a, 0x04, 0x83, 0x08, 0xe6, +}; +static const unsigned char kat1836_nonce[] = { + 0x77, 0xb9, 0x59, 0x98, 0x2f, 0x91, 0xa2, 0xf5, 0x21, 0xe7, 0xe8, 0xc2, + 0x55, 0x50, 0x67, 0x5d, +}; +static const unsigned char kat1836_persstr[] = { + 0x16, 0x43, 0x5f, 0x2a, 0xb0, 0xef, 0x6e, 0xe1, 0xa1, 0x6f, 0x9b, 0xa1, + 0x5a, 0xb5, 0xcf, 0x26, 0x41, 0xab, 0x07, 0x6b, 0x37, 0xe6, 0x42, 0x1a, + 0xef, 0x73, 0x38, 0x0b, 0x4b, 0x89, 0x69, 0x91, +}; +static const unsigned char kat1836_entropyinreseed[] = { + 0xc0, 0x69, 0xcf, 0x7c, 0x19, 0x91, 0x46, 0xba, 0xa6, 0x7e, 0x5d, 0x80, + 0x23, 0xb5, 0x62, 0xbd, 0xe6, 0x18, 0x5d, 0x3d, 0xab, 0x78, 0x12, 0x11, +}; +static const unsigned char kat1836_addinreseed[] = {0}; +static const unsigned char kat1836_addin0[] = {0}; +static const unsigned char kat1836_addin1[] = {0}; +static const unsigned char kat1836_retbits[] = { + 0xa5, 0x8d, 0x58, 0xc9, 0x90, 0x43, 0xc0, 0xe2, 0x57, 0xfe, 0xe3, 0x8e, + 0xfd, 0x78, 0x28, 0x12, 0x96, 0xd4, 0x68, 0xbc, 0xa2, 0xa9, 0x19, 0x18, + 0xd8, 0x17, 0xd3, 0x1b, 0x00, 0xbb, 0x52, 0x93, 0x08, 0x79, 0x14, 0x1d, + 0xe2, 0x4b, 0xde, 0x70, 0x1d, 0x83, 0x76, 0xe8, 0xab, 0x07, 0xe8, 0x43, + 0xcd, 0x6c, 0x4e, 0x33, 0x4e, 0x5b, 0xd0, 0xc3, 0x6f, 0x92, 0xe3, 0x8a, + 0x19, 0x58, 0x19, 0x92, +}; +static const struct drbg_kat_pr_false kat1836_t = { + 5, kat1836_entropyin, kat1836_nonce, kat1836_persstr, + kat1836_entropyinreseed, kat1836_addinreseed, kat1836_addin0, + kat1836_addin1, kat1836_retbits +}; +static const struct drbg_kat kat1836 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1836_t +}; + +static const unsigned char kat1837_entropyin[] = { + 0xcf, 0xd1, 0x6e, 0xe9, 0x53, 0xaa, 0x49, 0x89, 0xa2, 0x08, 0xb9, 0xfa, + 0x8e, 0x00, 0x44, 0xce, 0x2e, 0x4e, 0xd6, 0xd6, 0x72, 0xd1, 0x82, 0xfe, +}; +static const unsigned char kat1837_nonce[] = { + 0xde, 0x8e, 0x91, 0xe6, 0x58, 0x14, 0x56, 0x9f, 0xf0, 0x47, 0x67, 0xaa, + 0x75, 0xdb, 0x6b, 0xf5, +}; +static const unsigned char kat1837_persstr[] = { + 0xde, 0x22, 0x3d, 0x66, 0x43, 0xe2, 0x33, 0x19, 0x0e, 0xe0, 0x21, 0x8f, + 0xef, 0x63, 0x05, 0xc1, 0x42, 0xd2, 0xfe, 0xaa, 0xa0, 0xab, 0xd6, 0xac, + 0x7c, 0x8b, 0xd8, 0x95, 0xa0, 0x0e, 0x91, 0x72, +}; +static const unsigned char kat1837_entropyinreseed[] = { + 0xad, 0x5a, 0x4f, 0xb9, 0xe0, 0x3f, 0x8a, 0x51, 0xab, 0x23, 0x82, 0x35, + 0xed, 0x27, 0x27, 0x98, 0xbe, 0x43, 0xdb, 0x42, 0x17, 0xa5, 0xb3, 0x63, +}; +static const unsigned char kat1837_addinreseed[] = {0}; +static const unsigned char kat1837_addin0[] = {0}; +static const unsigned char kat1837_addin1[] = {0}; +static const unsigned char kat1837_retbits[] = { + 0x1d, 0x59, 0x82, 0x19, 0x54, 0xc5, 0xc4, 0xad, 0x22, 0x48, 0xe0, 0x59, + 0x3e, 0xab, 0x77, 0x5c, 0xb2, 0x08, 0xa1, 0x88, 0x7b, 0xec, 0xf9, 0xcf, + 0x93, 0xea, 0x2b, 0x02, 0x58, 0xaf, 0x6e, 0x37, 0x05, 0xb1, 0xd7, 0x22, + 0x7a, 0x14, 0x01, 0xcb, 0xcd, 0x32, 0x72, 0xed, 0xc4, 0xcf, 0x98, 0x5a, + 0x05, 0xc3, 0x45, 0x49, 0x2d, 0x1b, 0xb9, 0xe9, 0x04, 0x7b, 0xbe, 0xec, + 0x7a, 0xba, 0x24, 0x36, +}; +static const struct drbg_kat_pr_false kat1837_t = { + 6, kat1837_entropyin, kat1837_nonce, kat1837_persstr, + kat1837_entropyinreseed, kat1837_addinreseed, kat1837_addin0, + kat1837_addin1, kat1837_retbits +}; +static const struct drbg_kat kat1837 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1837_t +}; + +static const unsigned char kat1838_entropyin[] = { + 0x36, 0xd2, 0x23, 0x69, 0x48, 0x40, 0x0d, 0xea, 0x19, 0x14, 0x2d, 0xd1, + 0xc5, 0x3c, 0x3e, 0x7d, 0xb7, 0xc3, 0xbc, 0x7e, 0xf3, 0xb9, 0xe2, 0x75, +}; +static const unsigned char kat1838_nonce[] = { + 0x90, 0xa5, 0xb9, 0x10, 0x30, 0xcb, 0x25, 0x37, 0xd4, 0xbc, 0xbb, 0xce, + 0xc6, 0xcd, 0x43, 0x86, +}; +static const unsigned char kat1838_persstr[] = { + 0x7c, 0xc5, 0x1d, 0x67, 0x30, 0x40, 0x05, 0xb5, 0x23, 0x1c, 0x3a, 0x3a, + 0xd3, 0xbf, 0x14, 0x4e, 0xb6, 0xa1, 0x74, 0xbf, 0x1a, 0x0d, 0x29, 0xed, + 0x97, 0xb8, 0x87, 0xcf, 0x7c, 0x00, 0xc3, 0xf6, +}; +static const unsigned char kat1838_entropyinreseed[] = { + 0x83, 0x07, 0xc0, 0x28, 0x00, 0x12, 0x69, 0x45, 0x2b, 0x72, 0xb4, 0x13, + 0x4d, 0x85, 0x34, 0x16, 0x36, 0x57, 0x66, 0xb8, 0xb8, 0xc2, 0x7e, 0xea, +}; +static const unsigned char kat1838_addinreseed[] = {0}; +static const unsigned char kat1838_addin0[] = {0}; +static const unsigned char kat1838_addin1[] = {0}; +static const unsigned char kat1838_retbits[] = { + 0xb6, 0x4c, 0xcb, 0xa0, 0x8e, 0x5d, 0x97, 0x00, 0xa6, 0xc7, 0xbe, 0x68, + 0x14, 0x85, 0xf6, 0x7c, 0xf1, 0xb2, 0xea, 0xa7, 0xa7, 0x9f, 0xcc, 0x0c, + 0xab, 0x39, 0xd3, 0xb2, 0x68, 0xe3, 0x66, 0x14, 0x7c, 0x95, 0x42, 0xd4, + 0x44, 0x6f, 0xa0, 0x72, 0x61, 0x4f, 0xde, 0xb5, 0x0e, 0x74, 0x8c, 0x2f, + 0xdd, 0x85, 0xf4, 0xd5, 0x16, 0x86, 0x3a, 0xa8, 0x82, 0x0f, 0x69, 0xc0, + 0x70, 0x76, 0x1c, 0x72, +}; +static const struct drbg_kat_pr_false kat1838_t = { + 7, kat1838_entropyin, kat1838_nonce, kat1838_persstr, + kat1838_entropyinreseed, kat1838_addinreseed, kat1838_addin0, + kat1838_addin1, kat1838_retbits +}; +static const struct drbg_kat kat1838 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1838_t +}; + +static const unsigned char kat1839_entropyin[] = { + 0x7e, 0xb1, 0x89, 0xf1, 0xbc, 0xb5, 0x47, 0xd8, 0x37, 0xb7, 0x55, 0x32, + 0x31, 0x32, 0x5b, 0x4d, 0xda, 0xe1, 0xea, 0x87, 0xb9, 0x38, 0xb0, 0xc4, +}; +static const unsigned char kat1839_nonce[] = { + 0x9d, 0x2d, 0xc9, 0x6e, 0x33, 0x37, 0x3f, 0x89, 0xe4, 0xda, 0x9f, 0x5b, + 0xa1, 0x7e, 0xb1, 0xb7, +}; +static const unsigned char kat1839_persstr[] = { + 0x1c, 0x56, 0xb2, 0xa0, 0x25, 0x34, 0x09, 0xcc, 0xa5, 0x73, 0x83, 0xc9, + 0x57, 0x12, 0xbb, 0xab, 0xd5, 0xa5, 0x5b, 0x32, 0x99, 0x87, 0xd1, 0xbe, + 0xe5, 0xff, 0x82, 0x37, 0xe7, 0xbd, 0x9e, 0x70, +}; +static const unsigned char kat1839_entropyinreseed[] = { + 0xcd, 0x9b, 0x86, 0xc1, 0xb8, 0xb8, 0x2c, 0x72, 0xf7, 0xcb, 0x2b, 0xb9, + 0x40, 0xee, 0x31, 0x89, 0xa2, 0x55, 0x41, 0x87, 0xdf, 0xa8, 0xfd, 0xd4, +}; +static const unsigned char kat1839_addinreseed[] = {0}; +static const unsigned char kat1839_addin0[] = {0}; +static const unsigned char kat1839_addin1[] = {0}; +static const unsigned char kat1839_retbits[] = { + 0xe9, 0x5d, 0xbf, 0x39, 0xd1, 0x48, 0x2b, 0xd0, 0x3a, 0x57, 0x73, 0x57, + 0x76, 0xdd, 0xb3, 0x18, 0xe0, 0xf9, 0xff, 0xb0, 0xcc, 0xb5, 0x13, 0x60, + 0x7d, 0xe3, 0x86, 0x3b, 0x4f, 0xd0, 0xfb, 0x40, 0x5e, 0x74, 0xd2, 0x8b, + 0x2d, 0xed, 0x6e, 0xe1, 0x97, 0x2e, 0x2e, 0xe8, 0x9a, 0x09, 0xb6, 0x64, + 0x17, 0x61, 0xfa, 0x18, 0xa2, 0xf6, 0xc1, 0x23, 0xae, 0xe9, 0xf7, 0x19, + 0x1e, 0xfe, 0x52, 0x8c, +}; +static const struct drbg_kat_pr_false kat1839_t = { + 8, kat1839_entropyin, kat1839_nonce, kat1839_persstr, + kat1839_entropyinreseed, kat1839_addinreseed, kat1839_addin0, + kat1839_addin1, kat1839_retbits +}; +static const struct drbg_kat kat1839 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1839_t +}; + +static const unsigned char kat1840_entropyin[] = { + 0xe0, 0x61, 0x79, 0x9e, 0xb8, 0xa5, 0x70, 0xf6, 0xde, 0x95, 0xba, 0x5f, + 0x10, 0x8f, 0xcc, 0x1d, 0x2c, 0x9e, 0xa1, 0x6c, 0xcf, 0xc2, 0xbe, 0xce, +}; +static const unsigned char kat1840_nonce[] = { + 0x87, 0x71, 0x03, 0x26, 0xb9, 0x78, 0xb2, 0xf4, 0x34, 0x3e, 0x26, 0x70, + 0xb4, 0x51, 0xed, 0x31, +}; +static const unsigned char kat1840_persstr[] = { + 0x27, 0xa3, 0xa9, 0x29, 0x10, 0x36, 0x8d, 0xa0, 0x98, 0x4a, 0xaf, 0x3c, + 0x7e, 0x31, 0x5b, 0xed, 0x2b, 0x6b, 0x19, 0x34, 0x15, 0xd4, 0x38, 0xa3, + 0x7d, 0xef, 0x8f, 0x2c, 0xe5, 0x42, 0xa3, 0x23, +}; +static const unsigned char kat1840_entropyinreseed[] = { + 0x3f, 0x3c, 0x15, 0x3d, 0xca, 0xb7, 0xa0, 0x08, 0x56, 0x6c, 0x25, 0xd3, + 0xfa, 0x71, 0xbc, 0x71, 0x04, 0x76, 0x7c, 0x1d, 0x4a, 0xe5, 0xca, 0x02, +}; +static const unsigned char kat1840_addinreseed[] = {0}; +static const unsigned char kat1840_addin0[] = {0}; +static const unsigned char kat1840_addin1[] = {0}; +static const unsigned char kat1840_retbits[] = { + 0x6b, 0x75, 0x48, 0x1f, 0x70, 0xda, 0x16, 0x6f, 0x30, 0x55, 0x39, 0x1c, + 0x70, 0x5f, 0xf6, 0xec, 0x67, 0x5d, 0xc9, 0x12, 0x25, 0x3a, 0x5d, 0xe9, + 0xf6, 0x61, 0xf6, 0x8a, 0xdc, 0x09, 0x7c, 0x64, 0x33, 0x46, 0x16, 0x83, + 0x9c, 0x67, 0xf2, 0x98, 0xae, 0xc4, 0x10, 0x4b, 0x51, 0x3f, 0x49, 0x70, + 0xe6, 0x1d, 0xcf, 0x30, 0x40, 0x87, 0x73, 0x31, 0xc2, 0x4d, 0x87, 0xeb, + 0x09, 0x1b, 0x9d, 0x91, +}; +static const struct drbg_kat_pr_false kat1840_t = { + 9, kat1840_entropyin, kat1840_nonce, kat1840_persstr, + kat1840_entropyinreseed, kat1840_addinreseed, kat1840_addin0, + kat1840_addin1, kat1840_retbits +}; +static const struct drbg_kat kat1840 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1840_t +}; + +static const unsigned char kat1841_entropyin[] = { + 0xba, 0x8c, 0xa3, 0x61, 0xab, 0x65, 0xb9, 0xf1, 0x56, 0xe8, 0xdc, 0x5d, + 0x4e, 0x50, 0xc8, 0xac, 0x4c, 0x78, 0x76, 0xcb, 0xea, 0xae, 0x09, 0xae, +}; +static const unsigned char kat1841_nonce[] = { + 0xc2, 0x16, 0xc9, 0xaf, 0x4d, 0xd9, 0x44, 0x0a, 0xe5, 0x19, 0x15, 0x41, + 0xb4, 0x0b, 0x1d, 0x6b, +}; +static const unsigned char kat1841_persstr[] = { + 0x25, 0xad, 0xc2, 0x73, 0xf5, 0xd8, 0x3b, 0xe2, 0x70, 0x23, 0x35, 0x2b, + 0x7a, 0x78, 0xbf, 0x0c, 0xbd, 0xae, 0xfa, 0x76, 0x72, 0x5a, 0x45, 0xaa, + 0x9b, 0xee, 0x06, 0x13, 0x73, 0x51, 0xd2, 0x4d, +}; +static const unsigned char kat1841_entropyinreseed[] = { + 0xc7, 0xe3, 0x6a, 0xe2, 0x3e, 0xfe, 0x97, 0x4b, 0x76, 0x3e, 0xe4, 0x23, + 0xf2, 0x14, 0x55, 0x59, 0x23, 0xd6, 0x6f, 0xeb, 0x9a, 0xa1, 0x74, 0xed, +}; +static const unsigned char kat1841_addinreseed[] = {0}; +static const unsigned char kat1841_addin0[] = {0}; +static const unsigned char kat1841_addin1[] = {0}; +static const unsigned char kat1841_retbits[] = { + 0x1f, 0xa1, 0xce, 0xd6, 0xb2, 0xf2, 0x09, 0xe4, 0x30, 0x66, 0x7c, 0xc1, + 0x11, 0xf2, 0x97, 0x81, 0x39, 0x36, 0x0c, 0xd4, 0xc5, 0x26, 0x7a, 0x66, + 0xd9, 0x02, 0x39, 0xa5, 0x37, 0x81, 0x49, 0xd2, 0x47, 0x83, 0xac, 0x42, + 0x77, 0x26, 0x5f, 0x38, 0xd4, 0x40, 0xcd, 0xac, 0xaf, 0x47, 0x9b, 0xb7, + 0x34, 0xbb, 0x5a, 0x86, 0x5b, 0x3c, 0x67, 0xc4, 0x96, 0xd3, 0x64, 0x23, + 0x37, 0xad, 0xda, 0xbd, +}; +static const struct drbg_kat_pr_false kat1841_t = { + 10, kat1841_entropyin, kat1841_nonce, kat1841_persstr, + kat1841_entropyinreseed, kat1841_addinreseed, kat1841_addin0, + kat1841_addin1, kat1841_retbits +}; +static const struct drbg_kat kat1841 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1841_t +}; + +static const unsigned char kat1842_entropyin[] = { + 0x0a, 0xa9, 0x24, 0xd3, 0x23, 0xa3, 0x92, 0x46, 0x22, 0x4f, 0x4a, 0x6b, + 0xe2, 0xb6, 0x37, 0xe2, 0x06, 0xc6, 0xcf, 0x2c, 0xc2, 0x87, 0x20, 0x45, +}; +static const unsigned char kat1842_nonce[] = { + 0x0c, 0x22, 0xc2, 0x62, 0x96, 0x51, 0x7b, 0xb9, 0x9d, 0xc9, 0x2c, 0x6d, + 0x16, 0xdc, 0x05, 0x8b, +}; +static const unsigned char kat1842_persstr[] = { + 0xbb, 0x1e, 0xf0, 0x94, 0x07, 0x24, 0xb5, 0xcf, 0x38, 0xdd, 0xb6, 0xcf, + 0xdc, 0xa8, 0x6c, 0xf2, 0x25, 0x04, 0x62, 0x00, 0x12, 0xc2, 0x7b, 0xeb, + 0x65, 0xc4, 0x1c, 0xf7, 0x90, 0x29, 0x45, 0x95, +}; +static const unsigned char kat1842_entropyinreseed[] = { + 0xdf, 0x35, 0x0b, 0x7f, 0x1c, 0xc5, 0x3b, 0xec, 0x3e, 0xae, 0x29, 0x2d, + 0xad, 0xb7, 0x56, 0x9d, 0xeb, 0x21, 0xeb, 0x34, 0x5c, 0x2e, 0x19, 0x20, +}; +static const unsigned char kat1842_addinreseed[] = {0}; +static const unsigned char kat1842_addin0[] = {0}; +static const unsigned char kat1842_addin1[] = {0}; +static const unsigned char kat1842_retbits[] = { + 0x3e, 0x59, 0x86, 0x67, 0xb2, 0x13, 0x2e, 0x80, 0x30, 0xce, 0x4c, 0xfc, + 0x92, 0xa5, 0xb8, 0xa7, 0x50, 0xb3, 0xe7, 0x19, 0xa1, 0x01, 0xb8, 0x73, + 0xa5, 0x7a, 0x17, 0x95, 0x15, 0x98, 0x52, 0x8c, 0x1a, 0xa3, 0xa8, 0x71, + 0x5b, 0x63, 0x83, 0x24, 0xea, 0x00, 0xa4, 0x72, 0x5e, 0xa8, 0x3f, 0x94, + 0x6a, 0x24, 0x9f, 0xba, 0x6f, 0x36, 0x20, 0xb7, 0xf1, 0xbf, 0x22, 0xff, + 0x7d, 0x09, 0x2d, 0xe9, +}; +static const struct drbg_kat_pr_false kat1842_t = { + 11, kat1842_entropyin, kat1842_nonce, kat1842_persstr, + kat1842_entropyinreseed, kat1842_addinreseed, kat1842_addin0, + kat1842_addin1, kat1842_retbits +}; +static const struct drbg_kat kat1842 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1842_t +}; + +static const unsigned char kat1843_entropyin[] = { + 0x38, 0xae, 0x86, 0x1a, 0x0d, 0xfa, 0x5f, 0xa4, 0xbd, 0xb4, 0x41, 0xb1, + 0xb6, 0x89, 0x1a, 0x6a, 0x28, 0x8e, 0x53, 0xb4, 0xba, 0x11, 0x28, 0xb1, +}; +static const unsigned char kat1843_nonce[] = { + 0xce, 0x41, 0x04, 0x74, 0x1c, 0x21, 0xae, 0xc8, 0x39, 0xb3, 0x36, 0xbd, + 0x06, 0x3e, 0x5b, 0x31, +}; +static const unsigned char kat1843_persstr[] = { + 0x5e, 0x4a, 0x4f, 0x9b, 0xf0, 0xbd, 0x36, 0x72, 0x2b, 0x45, 0x65, 0x55, + 0xbf, 0xc2, 0x04, 0x4c, 0x4f, 0xc4, 0x3f, 0xf2, 0x8e, 0xcf, 0x7e, 0x4e, + 0x0d, 0xf3, 0xe1, 0x7a, 0xd1, 0x02, 0xc7, 0xca, +}; +static const unsigned char kat1843_entropyinreseed[] = { + 0x40, 0x61, 0xa0, 0xd2, 0xb1, 0x15, 0x82, 0xfd, 0x4b, 0xc2, 0xa9, 0x00, + 0xb5, 0xf3, 0x80, 0xf9, 0x19, 0xd5, 0xd3, 0x2a, 0xf4, 0x6a, 0xfa, 0x13, +}; +static const unsigned char kat1843_addinreseed[] = {0}; +static const unsigned char kat1843_addin0[] = {0}; +static const unsigned char kat1843_addin1[] = {0}; +static const unsigned char kat1843_retbits[] = { + 0xc8, 0x5d, 0xa5, 0x24, 0x49, 0x8a, 0x8b, 0x6e, 0xdd, 0xff, 0x39, 0x98, + 0x64, 0xaf, 0x02, 0x7d, 0x93, 0x5e, 0xc0, 0x02, 0xea, 0xec, 0x2c, 0x8d, + 0xc7, 0x5b, 0x1b, 0x1d, 0x84, 0x9d, 0x46, 0x1e, 0xa6, 0xde, 0xa8, 0x0e, + 0x91, 0x5a, 0x75, 0xa3, 0x7c, 0x5c, 0x46, 0x78, 0x07, 0x44, 0x65, 0xa9, + 0x95, 0x5c, 0xb9, 0xf0, 0x74, 0x54, 0xb6, 0x37, 0x9c, 0xb1, 0xba, 0xf5, + 0x48, 0xe9, 0x28, 0x16, +}; +static const struct drbg_kat_pr_false kat1843_t = { + 12, kat1843_entropyin, kat1843_nonce, kat1843_persstr, + kat1843_entropyinreseed, kat1843_addinreseed, kat1843_addin0, + kat1843_addin1, kat1843_retbits +}; +static const struct drbg_kat kat1843 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1843_t +}; + +static const unsigned char kat1844_entropyin[] = { + 0xb2, 0xba, 0xbc, 0x18, 0x8a, 0xba, 0x0d, 0xf4, 0x8f, 0x9e, 0xce, 0x46, + 0x2b, 0xae, 0x4c, 0x20, 0xfa, 0x60, 0xbb, 0xcc, 0x76, 0xc7, 0x7e, 0xdb, +}; +static const unsigned char kat1844_nonce[] = { + 0x39, 0xd5, 0x0f, 0x4f, 0x3e, 0x9c, 0x19, 0xca, 0x43, 0x79, 0x12, 0x13, + 0xd1, 0xe4, 0xab, 0xea, +}; +static const unsigned char kat1844_persstr[] = { + 0xc0, 0x1a, 0x62, 0x42, 0xd7, 0x9f, 0x07, 0x3e, 0x11, 0x2c, 0x5e, 0xe6, + 0xbd, 0x4a, 0x71, 0xa1, 0x25, 0x9b, 0x2c, 0xed, 0xd7, 0x5c, 0x5c, 0xfb, + 0x82, 0xda, 0x2b, 0xf1, 0xc0, 0x50, 0xe4, 0x02, +}; +static const unsigned char kat1844_entropyinreseed[] = { + 0x8b, 0xbc, 0x6d, 0x75, 0x4a, 0xd5, 0x50, 0x61, 0x25, 0x2a, 0x2b, 0x53, + 0x59, 0x99, 0xf1, 0xb5, 0x80, 0x57, 0x86, 0x36, 0x92, 0x7e, 0x93, 0x27, +}; +static const unsigned char kat1844_addinreseed[] = {0}; +static const unsigned char kat1844_addin0[] = {0}; +static const unsigned char kat1844_addin1[] = {0}; +static const unsigned char kat1844_retbits[] = { + 0x22, 0xda, 0x3f, 0x3c, 0x2d, 0xcc, 0xe7, 0xf3, 0xa3, 0xf3, 0x31, 0x29, + 0xca, 0xf2, 0x27, 0x10, 0x28, 0x42, 0x4d, 0x72, 0xbc, 0xbd, 0x75, 0xcc, + 0x81, 0x86, 0x3b, 0x24, 0xf9, 0x6f, 0x75, 0x01, 0xe7, 0x0b, 0xcb, 0x5b, + 0x25, 0x4c, 0xb4, 0xd2, 0xca, 0x48, 0x0c, 0x2c, 0x64, 0x9d, 0x9e, 0x89, + 0x47, 0xc2, 0x53, 0x7e, 0xfe, 0xdc, 0xec, 0xd5, 0x07, 0x2d, 0x57, 0xfd, + 0x36, 0xb7, 0x54, 0x81, +}; +static const struct drbg_kat_pr_false kat1844_t = { + 13, kat1844_entropyin, kat1844_nonce, kat1844_persstr, + kat1844_entropyinreseed, kat1844_addinreseed, kat1844_addin0, + kat1844_addin1, kat1844_retbits +}; +static const struct drbg_kat kat1844 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1844_t +}; + +static const unsigned char kat1845_entropyin[] = { + 0xea, 0x1e, 0x0b, 0xd5, 0x16, 0x89, 0xf2, 0xd1, 0x21, 0xeb, 0x55, 0xee, + 0x52, 0x72, 0xb6, 0xfe, 0xd7, 0xb9, 0xff, 0x7d, 0xfa, 0x8c, 0x1f, 0x11, +}; +static const unsigned char kat1845_nonce[] = { + 0x31, 0xaa, 0x1e, 0x8f, 0x81, 0xac, 0xaf, 0x88, 0x40, 0x48, 0xfa, 0x05, + 0x64, 0x88, 0x90, 0x2a, +}; +static const unsigned char kat1845_persstr[] = { + 0x2a, 0xc2, 0xe8, 0x98, 0xb0, 0x0a, 0x09, 0x96, 0x12, 0xf6, 0x85, 0x47, + 0x38, 0x22, 0xd2, 0x15, 0x2b, 0xcd, 0x8f, 0x77, 0x82, 0x0a, 0x38, 0x59, + 0xb4, 0x81, 0xef, 0x1d, 0xfb, 0xed, 0xab, 0xed, +}; +static const unsigned char kat1845_entropyinreseed[] = { + 0x05, 0xc7, 0xb3, 0xfc, 0xd8, 0x58, 0xbf, 0x50, 0x80, 0xb7, 0xec, 0x08, + 0xb6, 0x4c, 0x20, 0xfd, 0x36, 0x14, 0xd2, 0x5d, 0x9b, 0x6f, 0x4d, 0x1b, +}; +static const unsigned char kat1845_addinreseed[] = {0}; +static const unsigned char kat1845_addin0[] = {0}; +static const unsigned char kat1845_addin1[] = {0}; +static const unsigned char kat1845_retbits[] = { + 0x43, 0x97, 0xf3, 0x8e, 0x54, 0xa1, 0x58, 0x39, 0xaf, 0x1d, 0x7f, 0x5b, + 0x19, 0x0b, 0x9f, 0x12, 0x2b, 0x1e, 0x85, 0x34, 0xd1, 0xd7, 0x4c, 0x53, + 0x29, 0x3e, 0x9f, 0x37, 0x27, 0x37, 0x4c, 0x2c, 0x66, 0xba, 0x78, 0x48, + 0x89, 0x29, 0xee, 0x09, 0x99, 0x15, 0x98, 0x52, 0x4b, 0x14, 0xed, 0x98, + 0x00, 0x21, 0x7d, 0x3c, 0xb2, 0xe0, 0x2e, 0xde, 0xe7, 0xf8, 0x41, 0x04, + 0x22, 0xe3, 0x6e, 0xb5, +}; +static const struct drbg_kat_pr_false kat1845_t = { + 14, kat1845_entropyin, kat1845_nonce, kat1845_persstr, + kat1845_entropyinreseed, kat1845_addinreseed, kat1845_addin0, + kat1845_addin1, kat1845_retbits +}; +static const struct drbg_kat kat1845 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1845_t +}; + +static const unsigned char kat1846_entropyin[] = { + 0xa9, 0xb3, 0xbb, 0xf1, 0x9c, 0x1d, 0x80, 0x62, 0x32, 0x97, 0xf7, 0xc5, + 0x0e, 0x9d, 0xeb, 0x3b, 0x6c, 0xc4, 0x97, 0xd1, 0x8c, 0x48, 0xd2, 0x44, +}; +static const unsigned char kat1846_nonce[] = { + 0xe0, 0xaa, 0x9a, 0x80, 0x3e, 0x29, 0x6e, 0x3f, 0x37, 0x00, 0x1e, 0x77, + 0x65, 0x4e, 0x23, 0x39, +}; +static const unsigned char kat1846_persstr[] = { + 0xcc, 0xef, 0xb2, 0xc8, 0xbc, 0x0d, 0xfa, 0xa1, 0x6c, 0x14, 0xef, 0x3c, + 0x9d, 0x98, 0x54, 0x6e, 0x47, 0x66, 0x58, 0xed, 0xe3, 0xf3, 0x56, 0x21, + 0x48, 0x8f, 0x1d, 0x03, 0xad, 0x49, 0x06, 0x33, +}; +static const unsigned char kat1846_entropyinreseed[] = { + 0xcd, 0x2a, 0x71, 0x04, 0xda, 0x1b, 0x30, 0x30, 0x11, 0x81, 0x7d, 0xe7, + 0x3e, 0x83, 0xe4, 0x6c, 0x6e, 0xf8, 0x93, 0x95, 0x2f, 0xa9, 0x21, 0x45, +}; +static const unsigned char kat1846_addinreseed[] = { + 0xb9, 0xed, 0xaa, 0x9d, 0x7d, 0xb6, 0x67, 0x06, 0x6c, 0xa8, 0x5a, 0x46, + 0x19, 0x91, 0xb7, 0x81, 0xbd, 0x87, 0x7c, 0xae, 0x12, 0x00, 0xa4, 0x7b, + 0xa0, 0x89, 0xbb, 0x81, 0x65, 0xfb, 0xb9, 0x5a, +}; +static const unsigned char kat1846_addin0[] = { + 0x01, 0xc5, 0xae, 0xb2, 0x5c, 0xfb, 0x8f, 0x31, 0x63, 0x1f, 0x6e, 0x7b, + 0x69, 0xb8, 0x44, 0x98, 0x45, 0x03, 0x44, 0x35, 0x75, 0x8b, 0x97, 0x47, + 0xd3, 0x81, 0x22, 0x23, 0x70, 0x9a, 0x55, 0xa5, +}; +static const unsigned char kat1846_addin1[] = { + 0x93, 0x0e, 0xbe, 0x68, 0xb0, 0x2f, 0x33, 0x1f, 0xb1, 0xa9, 0xe7, 0xe5, + 0xed, 0x2f, 0xd0, 0x33, 0x4b, 0x45, 0xb5, 0x03, 0x13, 0xa6, 0x14, 0xed, + 0xdc, 0x06, 0xfd, 0x67, 0x80, 0x49, 0x2d, 0xe9, +}; +static const unsigned char kat1846_retbits[] = { + 0x18, 0xba, 0xcd, 0xea, 0x0c, 0x71, 0xdb, 0xea, 0x09, 0x48, 0x5a, 0xd0, + 0xb9, 0x21, 0x0d, 0xaf, 0x6b, 0x17, 0x5c, 0x8a, 0xfa, 0xa7, 0xd6, 0x15, + 0x8f, 0xa7, 0x4e, 0x5a, 0xe3, 0x70, 0xd3, 0x38, 0x21, 0x6c, 0xa0, 0x27, + 0x57, 0x47, 0x86, 0xd4, 0x14, 0xf0, 0xef, 0x87, 0xb4, 0x18, 0xc4, 0x7f, + 0xc5, 0x87, 0xa0, 0x1e, 0x57, 0x8d, 0x8d, 0x41, 0x6f, 0x80, 0x20, 0xa4, + 0x45, 0xe2, 0x0f, 0x3e, +}; +static const struct drbg_kat_pr_false kat1846_t = { + 0, kat1846_entropyin, kat1846_nonce, kat1846_persstr, + kat1846_entropyinreseed, kat1846_addinreseed, kat1846_addin0, + kat1846_addin1, kat1846_retbits +}; +static const struct drbg_kat kat1846 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1846_t +}; + +static const unsigned char kat1847_entropyin[] = { + 0x08, 0x35, 0x31, 0x41, 0x2b, 0x21, 0x9d, 0x9d, 0x1b, 0x08, 0x48, 0xbc, + 0xa3, 0x52, 0x72, 0xca, 0x96, 0xd4, 0x9a, 0xfd, 0x4b, 0x0b, 0x5c, 0x8e, +}; +static const unsigned char kat1847_nonce[] = { + 0x5c, 0x8f, 0xfe, 0xcf, 0xd6, 0x5b, 0x9c, 0xa2, 0xa4, 0x28, 0x6b, 0xa4, + 0x41, 0x38, 0x62, 0x7d, +}; +static const unsigned char kat1847_persstr[] = { + 0x26, 0xc9, 0xa7, 0xb2, 0xf1, 0x5a, 0x59, 0x0e, 0x0e, 0x92, 0xa2, 0x70, + 0x8b, 0xc3, 0x06, 0xe6, 0x87, 0x50, 0x47, 0x6e, 0x96, 0x26, 0xd5, 0x42, + 0xf1, 0x57, 0x70, 0x75, 0xf4, 0xe5, 0x94, 0xed, +}; +static const unsigned char kat1847_entropyinreseed[] = { + 0x85, 0x13, 0xb3, 0x2e, 0xff, 0x61, 0x74, 0x0c, 0xf9, 0xd1, 0x9c, 0xac, + 0xc7, 0xab, 0x02, 0x88, 0x90, 0x3d, 0x3f, 0x18, 0x86, 0xf2, 0x85, 0x34, +}; +static const unsigned char kat1847_addinreseed[] = { + 0x0f, 0x1f, 0x76, 0xa1, 0x92, 0x8e, 0x49, 0x07, 0x6b, 0xe7, 0xf0, 0x2f, + 0x70, 0x31, 0x2d, 0x0a, 0xc5, 0x22, 0x49, 0x87, 0xd0, 0x09, 0x8d, 0x2e, + 0xb3, 0xa4, 0x53, 0xe3, 0x7a, 0x0d, 0x5f, 0x7b, +}; +static const unsigned char kat1847_addin0[] = { + 0x1b, 0xd8, 0x0d, 0xb1, 0xd7, 0x40, 0x22, 0x34, 0x29, 0x80, 0x8c, 0x1e, + 0x09, 0xce, 0xf6, 0x90, 0xc3, 0x8f, 0xaf, 0x31, 0xdc, 0x3b, 0xf2, 0x94, + 0x94, 0xce, 0xf3, 0x4a, 0x74, 0xa6, 0x89, 0x72, +}; +static const unsigned char kat1847_addin1[] = { + 0x19, 0xb3, 0x6f, 0x90, 0x75, 0xb1, 0x0e, 0x91, 0x59, 0xa8, 0x99, 0x54, + 0xdb, 0xc8, 0x35, 0x0a, 0x72, 0x2d, 0x1b, 0x21, 0x14, 0xd0, 0xf9, 0x3a, + 0xfb, 0x9b, 0xba, 0x0c, 0xc5, 0xa7, 0x45, 0x9e, +}; +static const unsigned char kat1847_retbits[] = { + 0xf6, 0xe8, 0x4c, 0x6e, 0x16, 0x53, 0xe1, 0xcf, 0x38, 0xd3, 0xdd, 0xac, + 0x0c, 0x02, 0xbe, 0x3c, 0xbb, 0xdc, 0x07, 0x12, 0xf7, 0xf7, 0x9e, 0x15, + 0x9b, 0xbc, 0x50, 0x19, 0xc4, 0x19, 0x6a, 0xba, 0x13, 0x33, 0xd3, 0x4a, + 0xed, 0xa7, 0x94, 0xa8, 0x66, 0x22, 0xf5, 0xb9, 0x26, 0xf4, 0xce, 0x92, + 0x9d, 0xe9, 0xd8, 0xee, 0x04, 0x60, 0x43, 0xae, 0x48, 0x93, 0xf6, 0x7c, + 0x19, 0x57, 0x2b, 0xf7, +}; +static const struct drbg_kat_pr_false kat1847_t = { + 1, kat1847_entropyin, kat1847_nonce, kat1847_persstr, + kat1847_entropyinreseed, kat1847_addinreseed, kat1847_addin0, + kat1847_addin1, kat1847_retbits +}; +static const struct drbg_kat kat1847 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1847_t +}; + +static const unsigned char kat1848_entropyin[] = { + 0x89, 0xe5, 0x82, 0x55, 0x8a, 0x26, 0xfc, 0x33, 0xd4, 0x04, 0x8a, 0xac, + 0xa2, 0xb5, 0xba, 0x4d, 0x7c, 0x0f, 0xcb, 0x70, 0xa2, 0x5a, 0xd7, 0x54, +}; +static const unsigned char kat1848_nonce[] = { + 0x3f, 0xd2, 0xd1, 0x91, 0xd9, 0x66, 0xb0, 0xd5, 0x53, 0xd1, 0x4e, 0xf3, + 0xc5, 0x13, 0x5d, 0x35, +}; +static const unsigned char kat1848_persstr[] = { + 0x4b, 0x68, 0xda, 0x99, 0xc5, 0xa9, 0x95, 0xf4, 0xa2, 0x03, 0xa8, 0xd1, + 0xc8, 0xdc, 0x85, 0xa2, 0xcd, 0x96, 0xda, 0x5d, 0xd6, 0x6a, 0x8f, 0xed, + 0x10, 0x8d, 0x21, 0x3e, 0x34, 0x72, 0x07, 0x25, +}; +static const unsigned char kat1848_entropyinreseed[] = { + 0x84, 0xe5, 0x88, 0xa5, 0xa5, 0x95, 0xab, 0x01, 0xdb, 0x9c, 0xc1, 0xd0, + 0x5f, 0x93, 0x2c, 0xc4, 0x2d, 0x62, 0x3f, 0x7e, 0xff, 0x59, 0x66, 0x51, +}; +static const unsigned char kat1848_addinreseed[] = { + 0x58, 0x7f, 0x52, 0x66, 0xb6, 0xd7, 0x28, 0x43, 0x55, 0x74, 0x94, 0xde, + 0xcf, 0xa5, 0xf7, 0x84, 0x14, 0x28, 0xf8, 0x96, 0xc6, 0x50, 0x46, 0xbe, + 0xa9, 0x46, 0x81, 0x15, 0xe8, 0xeb, 0xcc, 0xbe, +}; +static const unsigned char kat1848_addin0[] = { + 0x73, 0x15, 0x43, 0xe0, 0xd0, 0xb3, 0xa9, 0x13, 0xe0, 0x13, 0x83, 0x05, + 0x44, 0x12, 0x25, 0x0a, 0x26, 0x7b, 0x99, 0x17, 0x41, 0xb5, 0xe8, 0x36, + 0x12, 0xba, 0xe7, 0xc6, 0x23, 0x4d, 0xa3, 0xec, +}; +static const unsigned char kat1848_addin1[] = { + 0x6f, 0xaf, 0x16, 0x1b, 0xa8, 0xe1, 0xd6, 0xa6, 0x5a, 0x21, 0xf5, 0x06, + 0x20, 0x76, 0x4a, 0x28, 0xdb, 0x12, 0x8a, 0x55, 0xea, 0xe9, 0x27, 0x50, + 0xf5, 0xeb, 0x07, 0x49, 0xab, 0x2a, 0x5e, 0xf5, +}; +static const unsigned char kat1848_retbits[] = { + 0x15, 0x91, 0x30, 0x65, 0x13, 0x3a, 0xb3, 0x1c, 0xeb, 0x6c, 0xb6, 0xd0, + 0x73, 0xdb, 0x1b, 0x56, 0x34, 0x79, 0x2d, 0xa4, 0x60, 0x67, 0x31, 0x09, + 0x71, 0x6a, 0x3f, 0x76, 0x33, 0x82, 0x4f, 0x62, 0xd7, 0x40, 0xbf, 0xe5, + 0x05, 0x9a, 0xd3, 0xa9, 0x91, 0x1e, 0xe2, 0xdf, 0x27, 0xcc, 0x22, 0x66, + 0x1e, 0xaa, 0x00, 0x81, 0xf0, 0x75, 0xea, 0x26, 0x35, 0x3c, 0x63, 0x47, + 0x45, 0x01, 0x4e, 0x0b, +}; +static const struct drbg_kat_pr_false kat1848_t = { + 2, kat1848_entropyin, kat1848_nonce, kat1848_persstr, + kat1848_entropyinreseed, kat1848_addinreseed, kat1848_addin0, + kat1848_addin1, kat1848_retbits +}; +static const struct drbg_kat kat1848 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1848_t +}; + +static const unsigned char kat1849_entropyin[] = { + 0x05, 0x10, 0x6b, 0x71, 0xaa, 0x27, 0x41, 0x1b, 0xf5, 0x1d, 0xd3, 0x86, + 0x2c, 0x15, 0x0d, 0xb3, 0x56, 0xc9, 0x73, 0x62, 0x33, 0xd1, 0x6f, 0x64, +}; +static const unsigned char kat1849_nonce[] = { + 0xb1, 0x96, 0x0f, 0x10, 0x05, 0xf2, 0x0d, 0x6f, 0xfd, 0x10, 0xdb, 0x51, + 0xdc, 0x28, 0x9e, 0xcd, +}; +static const unsigned char kat1849_persstr[] = { + 0x29, 0x79, 0x47, 0x4c, 0x07, 0x99, 0xb3, 0x5f, 0x94, 0xda, 0x68, 0x13, + 0xb2, 0x64, 0x4b, 0x3a, 0x79, 0xfa, 0x83, 0xc6, 0xc3, 0xda, 0x5f, 0xff, + 0xc8, 0x2f, 0x4e, 0x0f, 0x66, 0x1e, 0xd9, 0x2d, +}; +static const unsigned char kat1849_entropyinreseed[] = { + 0x52, 0xff, 0x44, 0x30, 0xbf, 0x26, 0x59, 0x32, 0xee, 0xd4, 0x2c, 0x8c, + 0x70, 0xeb, 0xdb, 0x13, 0x05, 0x00, 0xf8, 0x11, 0x1a, 0x29, 0xfb, 0x5f, +}; +static const unsigned char kat1849_addinreseed[] = { + 0xce, 0x48, 0x40, 0xa6, 0x5a, 0xb3, 0xcb, 0x97, 0x42, 0xb7, 0xaa, 0x58, + 0x2e, 0x42, 0x8f, 0x85, 0x1a, 0x70, 0xd1, 0x8d, 0xd9, 0x16, 0xde, 0x63, + 0x64, 0x7f, 0xe3, 0xfa, 0x2b, 0xd9, 0x29, 0x94, +}; +static const unsigned char kat1849_addin0[] = { + 0x4d, 0x6d, 0xba, 0x3f, 0xe5, 0x20, 0x98, 0xe4, 0xf5, 0x70, 0x12, 0x41, + 0x97, 0x48, 0x6d, 0x8c, 0xd9, 0xc6, 0x06, 0x21, 0x0f, 0x4f, 0x21, 0x2e, + 0x98, 0xb4, 0x5f, 0x10, 0x4a, 0xcc, 0x17, 0x72, +}; +static const unsigned char kat1849_addin1[] = { + 0x94, 0x29, 0xe5, 0x10, 0x01, 0x1b, 0xcd, 0xd1, 0xb4, 0x3a, 0x8b, 0x84, + 0x1d, 0x9a, 0x75, 0xf1, 0x4c, 0x66, 0x55, 0xa5, 0x23, 0x2e, 0xf0, 0x84, + 0x77, 0xa5, 0x4e, 0xbd, 0x14, 0x48, 0x83, 0xfc, +}; +static const unsigned char kat1849_retbits[] = { + 0x6a, 0x7f, 0xd0, 0x7f, 0xd4, 0x06, 0x3f, 0xd6, 0xef, 0xa3, 0x59, 0x7a, + 0xd8, 0xb8, 0x17, 0x92, 0xc7, 0x9e, 0x74, 0x8e, 0x8e, 0xd6, 0xca, 0xb0, + 0x09, 0xe4, 0xb8, 0x41, 0xd9, 0x88, 0xd9, 0x72, 0x57, 0xeb, 0xe0, 0x25, + 0xad, 0x56, 0x19, 0xe1, 0xdd, 0x9d, 0xab, 0xf1, 0xef, 0x1c, 0x59, 0xa4, + 0x54, 0x49, 0x90, 0xe0, 0xc6, 0x81, 0x93, 0xe5, 0x9c, 0x28, 0x64, 0x7b, + 0xd6, 0x96, 0xa9, 0xc7, +}; +static const struct drbg_kat_pr_false kat1849_t = { + 3, kat1849_entropyin, kat1849_nonce, kat1849_persstr, + kat1849_entropyinreseed, kat1849_addinreseed, kat1849_addin0, + kat1849_addin1, kat1849_retbits +}; +static const struct drbg_kat kat1849 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1849_t +}; + +static const unsigned char kat1850_entropyin[] = { + 0x0c, 0x5e, 0xc7, 0x88, 0x1c, 0xbf, 0x99, 0x57, 0xe1, 0x09, 0xd8, 0xb9, + 0x76, 0xf8, 0x2b, 0xff, 0x1d, 0xf2, 0xa9, 0x45, 0xfa, 0x6d, 0xae, 0x0c, +}; +static const unsigned char kat1850_nonce[] = { + 0xf1, 0x8e, 0xf1, 0x25, 0x0b, 0x60, 0x8d, 0xbf, 0x06, 0x7c, 0xb6, 0xab, + 0xee, 0x21, 0x6b, 0x67, +}; +static const unsigned char kat1850_persstr[] = { + 0xc6, 0x4f, 0xda, 0x60, 0x0e, 0x24, 0x95, 0x3f, 0x36, 0xeb, 0x53, 0x05, + 0x89, 0x05, 0xcc, 0x2e, 0x94, 0xa4, 0xe6, 0x61, 0xe1, 0xc5, 0x4a, 0xf9, + 0xf8, 0xb2, 0x9f, 0x48, 0xa9, 0x6c, 0x69, 0xfb, +}; +static const unsigned char kat1850_entropyinreseed[] = { + 0x30, 0xdf, 0x03, 0xd1, 0xa3, 0x2d, 0xb7, 0xa7, 0x4c, 0x33, 0x8c, 0x80, + 0x33, 0x1b, 0x04, 0x30, 0x2e, 0xde, 0x61, 0x6d, 0xfd, 0x23, 0x05, 0x3e, +}; +static const unsigned char kat1850_addinreseed[] = { + 0x27, 0x40, 0x98, 0x30, 0xb6, 0x07, 0xcd, 0x33, 0x52, 0x06, 0x66, 0xdd, + 0x29, 0x1c, 0x3d, 0xd2, 0x0c, 0x38, 0xbe, 0xd5, 0x29, 0x99, 0xc1, 0x6f, + 0xb7, 0x28, 0x77, 0xc5, 0x95, 0x4e, 0x94, 0xe4, +}; +static const unsigned char kat1850_addin0[] = { + 0xb1, 0xf2, 0xf1, 0x6d, 0xeb, 0x47, 0xa7, 0x29, 0x0d, 0x79, 0x25, 0x1c, + 0x4a, 0xec, 0x38, 0xa0, 0x5d, 0xb3, 0x54, 0x96, 0xfc, 0x49, 0x89, 0x29, + 0x65, 0x3d, 0xb5, 0x40, 0xd3, 0x01, 0xf9, 0x39, +}; +static const unsigned char kat1850_addin1[] = { + 0x91, 0x8d, 0xb2, 0xc3, 0x1f, 0xd4, 0x0d, 0x06, 0xf0, 0x74, 0xb0, 0xf9, + 0x2a, 0x13, 0x27, 0xf8, 0x1d, 0x8c, 0xbc, 0x47, 0xd8, 0x35, 0xb0, 0x8a, + 0x69, 0x8b, 0x08, 0x3e, 0x57, 0x59, 0xde, 0xdf, +}; +static const unsigned char kat1850_retbits[] = { + 0xd1, 0x22, 0x39, 0xc3, 0x0a, 0x44, 0x58, 0x2e, 0xd0, 0x58, 0xf2, 0xb4, + 0x35, 0xe0, 0x75, 0xba, 0x23, 0x41, 0x69, 0xdb, 0xf3, 0x02, 0x70, 0xd7, + 0x5d, 0x00, 0xeb, 0xf3, 0x8e, 0xbf, 0x32, 0xf5, 0xd4, 0x33, 0xad, 0x1b, + 0xb8, 0xd8, 0xae, 0x2b, 0x15, 0x3f, 0x6f, 0x3f, 0xbf, 0xed, 0x74, 0x94, + 0xf5, 0xab, 0x9a, 0x9c, 0x19, 0x25, 0x6c, 0x4b, 0x10, 0xa9, 0xfc, 0xcb, + 0x28, 0x29, 0x82, 0x87, +}; +static const struct drbg_kat_pr_false kat1850_t = { + 4, kat1850_entropyin, kat1850_nonce, kat1850_persstr, + kat1850_entropyinreseed, kat1850_addinreseed, kat1850_addin0, + kat1850_addin1, kat1850_retbits +}; +static const struct drbg_kat kat1850 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1850_t +}; + +static const unsigned char kat1851_entropyin[] = { + 0x13, 0x30, 0x77, 0xd8, 0x2c, 0x26, 0xf9, 0x44, 0x8a, 0x28, 0x90, 0x0f, + 0xe6, 0xba, 0xde, 0x08, 0x0b, 0x38, 0x16, 0xc3, 0xf8, 0xc8, 0x98, 0xfd, +}; +static const unsigned char kat1851_nonce[] = { + 0x68, 0x72, 0x57, 0x45, 0x96, 0x0d, 0x17, 0x4e, 0xef, 0x8a, 0x76, 0x2b, + 0xc8, 0x7c, 0x0b, 0x9f, +}; +static const unsigned char kat1851_persstr[] = { + 0x45, 0x9b, 0x7a, 0x15, 0x4d, 0x7a, 0x66, 0xdc, 0x78, 0x7b, 0x89, 0xe5, + 0xdb, 0x98, 0x1c, 0x69, 0x0e, 0x95, 0xd3, 0x11, 0xd8, 0xa1, 0x68, 0xc4, + 0xd2, 0x6c, 0x48, 0x78, 0x90, 0x26, 0x64, 0xb9, +}; +static const unsigned char kat1851_entropyinreseed[] = { + 0xf1, 0xea, 0x44, 0xf0, 0x20, 0xa5, 0x57, 0x2a, 0xde, 0x8a, 0x84, 0x3f, + 0xdf, 0x1e, 0x9c, 0x4e, 0x5b, 0x0a, 0x06, 0x77, 0x56, 0x67, 0x0c, 0x1e, +}; +static const unsigned char kat1851_addinreseed[] = { + 0xf3, 0x73, 0x05, 0x96, 0x38, 0xdc, 0xb7, 0x60, 0x2a, 0x30, 0x88, 0x73, + 0x0b, 0xa0, 0x0c, 0xb3, 0x17, 0x90, 0x76, 0xa2, 0x79, 0x52, 0xd4, 0x65, + 0xfb, 0x01, 0x59, 0xf4, 0x6a, 0x19, 0x17, 0x91, +}; +static const unsigned char kat1851_addin0[] = { + 0x20, 0x4c, 0x3b, 0x20, 0xea, 0x88, 0x28, 0x1b, 0x5c, 0x76, 0x68, 0xbd, + 0x47, 0x4f, 0xa4, 0x3f, 0x61, 0x92, 0x1f, 0x70, 0x2b, 0xa6, 0xdf, 0x17, + 0x61, 0x6a, 0xd6, 0xe9, 0xeb, 0x14, 0x90, 0x45, +}; +static const unsigned char kat1851_addin1[] = { + 0xa0, 0x04, 0xcd, 0x5d, 0x29, 0x4a, 0x4a, 0x96, 0xb7, 0x6b, 0x68, 0x9c, + 0xc7, 0x77, 0xf4, 0xf6, 0x33, 0x57, 0x85, 0x8d, 0x7e, 0x51, 0x21, 0x27, + 0xca, 0x9c, 0x6e, 0x9a, 0xdf, 0xbc, 0x54, 0x7a, +}; +static const unsigned char kat1851_retbits[] = { + 0x70, 0x5a, 0xf2, 0x14, 0x7b, 0x04, 0x24, 0x8b, 0x0b, 0x7c, 0xd1, 0x7b, + 0x5b, 0x6f, 0xb8, 0x91, 0xf3, 0xb1, 0xa8, 0x42, 0x0e, 0x25, 0x3c, 0xc7, + 0x0c, 0x42, 0xf8, 0xb3, 0xcc, 0xf7, 0x79, 0xcc, 0x12, 0x8b, 0xa0, 0x09, + 0x58, 0x17, 0x40, 0xd8, 0x0d, 0x2e, 0x4c, 0xfa, 0xe6, 0x62, 0x43, 0x40, + 0xef, 0xe1, 0xa6, 0xa9, 0x20, 0xc2, 0x9a, 0xfd, 0x8a, 0xf6, 0x3c, 0xbe, + 0x0f, 0x66, 0x7c, 0xe3, +}; +static const struct drbg_kat_pr_false kat1851_t = { + 5, kat1851_entropyin, kat1851_nonce, kat1851_persstr, + kat1851_entropyinreseed, kat1851_addinreseed, kat1851_addin0, + kat1851_addin1, kat1851_retbits +}; +static const struct drbg_kat kat1851 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1851_t +}; + +static const unsigned char kat1852_entropyin[] = { + 0x05, 0x09, 0xdf, 0x07, 0x08, 0x54, 0x4e, 0x7a, 0x57, 0x5b, 0x3d, 0x5b, + 0x9e, 0x07, 0xb4, 0x9e, 0xe9, 0x35, 0x19, 0xfc, 0x33, 0xe0, 0x8f, 0x99, +}; +static const unsigned char kat1852_nonce[] = { + 0x02, 0xc8, 0x66, 0x33, 0x6f, 0xfe, 0x75, 0xdf, 0x64, 0x7f, 0x5c, 0x5f, + 0x81, 0xa1, 0x18, 0x8f, +}; +static const unsigned char kat1852_persstr[] = { + 0x3d, 0xda, 0xd3, 0xee, 0x67, 0xd0, 0x64, 0x14, 0xb7, 0x88, 0x25, 0xfb, + 0x0e, 0x75, 0x77, 0x8e, 0xd0, 0x50, 0xdb, 0x00, 0x6b, 0xef, 0x2b, 0x01, + 0x88, 0xd1, 0x9a, 0x15, 0x62, 0xec, 0xb4, 0x15, +}; +static const unsigned char kat1852_entropyinreseed[] = { + 0x56, 0x38, 0xe2, 0xa2, 0x2e, 0x7b, 0x1a, 0xb2, 0x0a, 0xf2, 0x7d, 0x83, + 0xde, 0x26, 0xc3, 0xcd, 0xee, 0x62, 0x5a, 0x81, 0x1d, 0xc7, 0x50, 0x79, +}; +static const unsigned char kat1852_addinreseed[] = { + 0x41, 0xfb, 0xd0, 0xae, 0xed, 0x30, 0x96, 0x66, 0xb0, 0x73, 0xaf, 0xb0, + 0x14, 0x11, 0xb7, 0xc4, 0x62, 0x67, 0x3d, 0xb9, 0x20, 0x26, 0x37, 0x03, + 0x01, 0x42, 0x32, 0x7a, 0xc1, 0x09, 0x25, 0x6d, +}; +static const unsigned char kat1852_addin0[] = { + 0x96, 0xc1, 0x7e, 0x3c, 0x80, 0xb0, 0x90, 0x57, 0x13, 0xb3, 0x21, 0x6d, + 0xd1, 0x19, 0xe9, 0xc0, 0xb5, 0xa4, 0xe8, 0x8e, 0x55, 0xa2, 0x01, 0xb4, + 0x30, 0x7b, 0x0d, 0x44, 0xd1, 0xf7, 0xe2, 0x4c, +}; +static const unsigned char kat1852_addin1[] = { + 0x40, 0x90, 0x5a, 0xce, 0xd9, 0x87, 0x18, 0x1f, 0x0c, 0x5e, 0x3b, 0xb4, + 0xdf, 0x7e, 0xa9, 0x99, 0x0c, 0x87, 0xcc, 0xc5, 0x87, 0x37, 0x0b, 0x92, + 0x37, 0xce, 0xa6, 0x5f, 0x80, 0x37, 0x86, 0x27, +}; +static const unsigned char kat1852_retbits[] = { + 0x7f, 0x68, 0xae, 0x02, 0x37, 0x99, 0xa3, 0x28, 0xda, 0xbe, 0x2b, 0x18, + 0x22, 0x5b, 0x51, 0x0b, 0x2d, 0xbc, 0x89, 0xd3, 0xfd, 0x85, 0x40, 0xff, + 0xc2, 0x4a, 0x41, 0x90, 0x67, 0x03, 0xb3, 0x21, 0x2b, 0xf8, 0x10, 0x09, + 0x0d, 0x6d, 0x2d, 0x0a, 0x53, 0x66, 0xfe, 0x64, 0xbf, 0x8f, 0xf4, 0xf8, + 0x76, 0x69, 0x7b, 0x7b, 0xf8, 0x09, 0x97, 0x67, 0x85, 0x3b, 0xed, 0xc3, + 0xf3, 0x7a, 0x34, 0x95, +}; +static const struct drbg_kat_pr_false kat1852_t = { + 6, kat1852_entropyin, kat1852_nonce, kat1852_persstr, + kat1852_entropyinreseed, kat1852_addinreseed, kat1852_addin0, + kat1852_addin1, kat1852_retbits +}; +static const struct drbg_kat kat1852 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1852_t +}; + +static const unsigned char kat1853_entropyin[] = { + 0xd0, 0xdd, 0x32, 0x9f, 0x93, 0x4d, 0xce, 0x8b, 0xf0, 0x87, 0x16, 0x01, + 0x40, 0x9c, 0x2e, 0x21, 0xcb, 0xf0, 0x35, 0x03, 0x04, 0xd3, 0xa7, 0x9c, +}; +static const unsigned char kat1853_nonce[] = { + 0xa3, 0xa0, 0x4c, 0x16, 0x44, 0xd1, 0xba, 0x80, 0xea, 0xfd, 0xde, 0x17, + 0xc4, 0x4e, 0x08, 0xdc, +}; +static const unsigned char kat1853_persstr[] = { + 0xda, 0x53, 0xb0, 0x0d, 0x0a, 0xf5, 0x64, 0x22, 0x1e, 0x37, 0xcd, 0x68, + 0x1c, 0xbb, 0x63, 0x9a, 0x77, 0x70, 0x4b, 0x37, 0x6a, 0x59, 0x8e, 0x16, + 0x4b, 0x05, 0x6c, 0xa1, 0xae, 0x4c, 0x1c, 0x50, +}; +static const unsigned char kat1853_entropyinreseed[] = { + 0x2e, 0x50, 0xff, 0xc1, 0x62, 0x75, 0x93, 0xc2, 0x55, 0xcc, 0x72, 0xa9, + 0x98, 0xed, 0xfc, 0x90, 0x67, 0xa3, 0x1e, 0xee, 0x74, 0xfd, 0xf0, 0xb7, +}; +static const unsigned char kat1853_addinreseed[] = { + 0x31, 0x4d, 0x8e, 0xa4, 0x09, 0x69, 0x70, 0xae, 0x48, 0xd3, 0x2f, 0x40, + 0x2b, 0x0c, 0xd7, 0x5e, 0xea, 0x72, 0xca, 0x46, 0x3d, 0xa3, 0x05, 0x75, + 0x2e, 0xba, 0x67, 0xbf, 0x23, 0xf0, 0x83, 0xa2, +}; +static const unsigned char kat1853_addin0[] = { + 0xac, 0x23, 0x73, 0x13, 0x07, 0x0a, 0x98, 0x06, 0x03, 0x4b, 0xe9, 0xdb, + 0x87, 0x99, 0x40, 0x56, 0xf6, 0x6a, 0xb0, 0x6b, 0x00, 0x0e, 0xee, 0x7d, + 0x8e, 0x1d, 0xde, 0x9e, 0xac, 0x24, 0xf8, 0x98, +}; +static const unsigned char kat1853_addin1[] = { + 0xc2, 0x45, 0xee, 0x9a, 0xc6, 0x08, 0x00, 0xb8, 0xf3, 0xd1, 0x35, 0x15, + 0xc5, 0x10, 0x2e, 0xda, 0xdb, 0xf3, 0x73, 0xe1, 0x33, 0xab, 0x8f, 0x81, + 0xd5, 0x1a, 0x3c, 0xe6, 0xe2, 0x26, 0x82, 0x95, +}; +static const unsigned char kat1853_retbits[] = { + 0xb2, 0x36, 0x08, 0x70, 0xea, 0x54, 0xd6, 0xa2, 0x40, 0x37, 0x2b, 0x7e, + 0xd8, 0x2b, 0x25, 0xb4, 0x97, 0x89, 0x7b, 0xdc, 0x5f, 0x23, 0x74, 0x64, + 0x0d, 0x06, 0xf2, 0x2e, 0x2a, 0xe0, 0x78, 0x22, 0xf9, 0x9a, 0x76, 0x8f, + 0xc9, 0x5f, 0x50, 0x84, 0x93, 0x24, 0x1f, 0x57, 0x3d, 0x5f, 0x86, 0x5e, + 0x87, 0x80, 0xa3, 0xb2, 0x79, 0x63, 0xe2, 0xb4, 0x51, 0x00, 0xae, 0xb7, + 0x1a, 0x38, 0x33, 0x2b, +}; +static const struct drbg_kat_pr_false kat1853_t = { + 7, kat1853_entropyin, kat1853_nonce, kat1853_persstr, + kat1853_entropyinreseed, kat1853_addinreseed, kat1853_addin0, + kat1853_addin1, kat1853_retbits +}; +static const struct drbg_kat kat1853 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1853_t +}; + +static const unsigned char kat1854_entropyin[] = { + 0x81, 0x88, 0x9a, 0x65, 0x45, 0x8e, 0x06, 0xf4, 0x48, 0xa6, 0x16, 0x35, + 0x3e, 0x1f, 0xcc, 0x5f, 0x82, 0xdc, 0x1b, 0xb7, 0x4b, 0x55, 0x41, 0xc7, +}; +static const unsigned char kat1854_nonce[] = { + 0x39, 0x04, 0x31, 0x44, 0xb4, 0x5f, 0xeb, 0x3a, 0x3a, 0x49, 0x23, 0xab, + 0x33, 0x64, 0x6a, 0x71, +}; +static const unsigned char kat1854_persstr[] = { + 0x3d, 0xf6, 0x37, 0x71, 0xf9, 0xf4, 0x04, 0x79, 0xd1, 0x2a, 0x1f, 0x24, + 0x6e, 0xf6, 0xe6, 0x59, 0x1b, 0x18, 0x18, 0x7e, 0xd1, 0x1d, 0xbd, 0xf0, + 0x4f, 0x1f, 0xd4, 0x50, 0xf0, 0xd2, 0x1c, 0x38, +}; +static const unsigned char kat1854_entropyinreseed[] = { + 0x62, 0xb1, 0x40, 0xdc, 0x4b, 0x7d, 0x68, 0x5d, 0x82, 0xf7, 0x4c, 0xd1, + 0x33, 0xfc, 0x49, 0xcc, 0x00, 0x60, 0xc4, 0xeb, 0xb9, 0xf1, 0xf6, 0xdd, +}; +static const unsigned char kat1854_addinreseed[] = { + 0x0b, 0x33, 0x1b, 0xd3, 0x8c, 0x94, 0x3a, 0xb1, 0x1f, 0xd1, 0xa2, 0xee, + 0xb5, 0x63, 0x5c, 0xe6, 0x6d, 0x73, 0x25, 0xf2, 0x61, 0xf0, 0x28, 0x95, + 0x3c, 0x3b, 0x63, 0x02, 0x63, 0x12, 0x20, 0x4e, +}; +static const unsigned char kat1854_addin0[] = { + 0x13, 0xfe, 0x4d, 0x09, 0x02, 0xde, 0x13, 0x62, 0x78, 0xb1, 0x4e, 0xd7, + 0x74, 0x94, 0x79, 0x84, 0x44, 0xb3, 0xda, 0x6e, 0x03, 0xed, 0xde, 0x64, + 0xb0, 0xdf, 0x11, 0xe2, 0x9b, 0x25, 0xcf, 0xcb, +}; +static const unsigned char kat1854_addin1[] = { + 0xe8, 0x0f, 0x4a, 0x99, 0x01, 0x4a, 0x52, 0x0d, 0x0d, 0x4f, 0xdd, 0xcb, + 0xd9, 0xb7, 0x38, 0x11, 0x10, 0x3c, 0xd9, 0x8e, 0x12, 0xe1, 0x0a, 0x69, + 0x2d, 0x45, 0x4f, 0x7c, 0x24, 0x5e, 0x5e, 0xe9, +}; +static const unsigned char kat1854_retbits[] = { + 0x14, 0x2d, 0x3d, 0xc2, 0x0f, 0x17, 0x78, 0x37, 0x82, 0x01, 0xb3, 0xda, + 0x58, 0xac, 0x7f, 0x32, 0xa0, 0x5a, 0xba, 0x7d, 0x91, 0xae, 0xc7, 0x55, + 0xf3, 0x2e, 0xf3, 0xfd, 0xd8, 0x0b, 0xa2, 0xea, 0x31, 0x10, 0xcd, 0x76, + 0xb7, 0xad, 0x3c, 0x54, 0xc7, 0x8d, 0x14, 0xed, 0xa6, 0x34, 0xc7, 0x4e, + 0xa8, 0x3b, 0x82, 0xf6, 0x31, 0xf4, 0xcf, 0x01, 0x75, 0x4a, 0x58, 0x33, + 0x4e, 0xa9, 0x31, 0x6e, +}; +static const struct drbg_kat_pr_false kat1854_t = { + 8, kat1854_entropyin, kat1854_nonce, kat1854_persstr, + kat1854_entropyinreseed, kat1854_addinreseed, kat1854_addin0, + kat1854_addin1, kat1854_retbits +}; +static const struct drbg_kat kat1854 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1854_t +}; + +static const unsigned char kat1855_entropyin[] = { + 0x03, 0xec, 0x84, 0x37, 0x99, 0x44, 0xaf, 0xf7, 0xe0, 0xad, 0xb0, 0x8c, + 0x92, 0x91, 0x12, 0x7e, 0xd3, 0x7e, 0xcb, 0x05, 0xa3, 0xec, 0x9e, 0x39, +}; +static const unsigned char kat1855_nonce[] = { + 0xc6, 0x91, 0xd7, 0x43, 0x54, 0x31, 0xe1, 0xd8, 0x11, 0xe4, 0xa7, 0x43, + 0xe5, 0x2b, 0x71, 0x35, +}; +static const unsigned char kat1855_persstr[] = { + 0xd9, 0x7f, 0x3f, 0xd8, 0x6b, 0xa4, 0x12, 0xdb, 0xe6, 0xd4, 0xba, 0xe7, + 0xef, 0x32, 0xb4, 0xd1, 0x06, 0x08, 0x6a, 0xde, 0xa3, 0xf4, 0xdf, 0x74, + 0xc5, 0x6f, 0x65, 0xe2, 0xe4, 0x82, 0x09, 0xdb, +}; +static const unsigned char kat1855_entropyinreseed[] = { + 0x41, 0xd8, 0x86, 0xd8, 0x52, 0x27, 0x78, 0x6a, 0x30, 0x87, 0x76, 0xad, + 0x7c, 0xa5, 0x29, 0xdd, 0x1f, 0x3e, 0x9b, 0x7c, 0x4c, 0x09, 0xa2, 0x12, +}; +static const unsigned char kat1855_addinreseed[] = { + 0x2f, 0x34, 0x43, 0xee, 0xc2, 0x9c, 0x51, 0x2a, 0x55, 0x77, 0x0c, 0x4c, + 0xa6, 0xa3, 0xf4, 0x63, 0x7f, 0xa9, 0x41, 0x52, 0xd7, 0x4c, 0xae, 0xa5, + 0xaa, 0x4b, 0xac, 0x9d, 0x21, 0x58, 0x4d, 0x22, +}; +static const unsigned char kat1855_addin0[] = { + 0x32, 0x25, 0x47, 0x0b, 0x5b, 0x9b, 0x52, 0x81, 0x56, 0x03, 0x89, 0xde, + 0x7a, 0x7e, 0x3f, 0xd5, 0x31, 0x49, 0xc5, 0xaa, 0xbf, 0x94, 0x07, 0x74, + 0x87, 0x78, 0xf6, 0xde, 0x9b, 0xb5, 0x1b, 0xf2, +}; +static const unsigned char kat1855_addin1[] = { + 0x4b, 0xa5, 0x9a, 0x6f, 0xb8, 0x7b, 0x8d, 0x97, 0x7c, 0x6f, 0x92, 0xac, + 0x3c, 0x62, 0x39, 0x97, 0xf7, 0x8a, 0x67, 0xa6, 0xa0, 0x5f, 0x0d, 0x15, + 0x19, 0x22, 0xda, 0x69, 0x26, 0x09, 0xf5, 0x21, +}; +static const unsigned char kat1855_retbits[] = { + 0x14, 0xc6, 0x93, 0xc3, 0x7a, 0x43, 0x3e, 0x2c, 0xa1, 0x6f, 0x30, 0xb4, + 0x17, 0xab, 0xe5, 0x65, 0x10, 0x4b, 0x41, 0x89, 0x8d, 0x6a, 0xcb, 0x75, + 0xfc, 0x3e, 0x86, 0x66, 0x08, 0xcb, 0xe5, 0x12, 0xac, 0xd8, 0x56, 0xd0, + 0xef, 0xb2, 0xcb, 0xbf, 0x82, 0xe8, 0xe9, 0x31, 0x01, 0xf0, 0x33, 0x66, + 0xa7, 0x86, 0x88, 0xe1, 0x44, 0x3f, 0xaf, 0xdc, 0xfd, 0x82, 0xe5, 0x85, + 0x7a, 0x8e, 0x51, 0xe6, +}; +static const struct drbg_kat_pr_false kat1855_t = { + 9, kat1855_entropyin, kat1855_nonce, kat1855_persstr, + kat1855_entropyinreseed, kat1855_addinreseed, kat1855_addin0, + kat1855_addin1, kat1855_retbits +}; +static const struct drbg_kat kat1855 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1855_t +}; + +static const unsigned char kat1856_entropyin[] = { + 0xd2, 0xac, 0xf0, 0x8b, 0xcc, 0x40, 0xe9, 0xdf, 0xc5, 0x9a, 0x64, 0x06, + 0xfc, 0x4e, 0x9c, 0x8b, 0x7e, 0x00, 0x74, 0x0d, 0x58, 0x9b, 0x98, 0xc9, +}; +static const unsigned char kat1856_nonce[] = { + 0x60, 0x23, 0x28, 0x4f, 0xfb, 0x13, 0x8b, 0xc5, 0x94, 0x91, 0xdd, 0x99, + 0x37, 0x44, 0x1d, 0xae, +}; +static const unsigned char kat1856_persstr[] = { + 0xb9, 0xc7, 0x53, 0x34, 0x66, 0x9d, 0xf3, 0x1c, 0x8b, 0x6a, 0xbd, 0x9d, + 0x25, 0xc4, 0x0f, 0xe3, 0x15, 0xad, 0xfa, 0xd4, 0xc4, 0x3b, 0x2f, 0x68, + 0x3e, 0x0c, 0xf2, 0x67, 0x33, 0x59, 0xd6, 0x7f, +}; +static const unsigned char kat1856_entropyinreseed[] = { + 0x4a, 0x89, 0x40, 0xb0, 0x18, 0x0d, 0x21, 0x6b, 0x63, 0x50, 0xb8, 0xb3, + 0xea, 0x55, 0xa1, 0xf2, 0x70, 0x7f, 0xed, 0x06, 0xe6, 0x72, 0x3e, 0x42, +}; +static const unsigned char kat1856_addinreseed[] = { + 0xcd, 0x9d, 0xe0, 0x0b, 0x55, 0xff, 0xbe, 0x8e, 0x02, 0xc8, 0x31, 0xc2, + 0x98, 0xb3, 0xc1, 0x3a, 0x4c, 0xbc, 0x4c, 0x3c, 0x6e, 0xb7, 0xb2, 0xb6, + 0x25, 0x8d, 0xe7, 0xc2, 0xd9, 0x5d, 0x4d, 0x9b, +}; +static const unsigned char kat1856_addin0[] = { + 0xaa, 0x37, 0x54, 0xc1, 0x3d, 0xde, 0x61, 0x6a, 0xa4, 0x62, 0x1f, 0xe0, + 0x8b, 0xd2, 0xab, 0xa2, 0x50, 0x87, 0x97, 0x67, 0x03, 0x93, 0x9c, 0x71, + 0xe8, 0x48, 0x32, 0xde, 0xbc, 0xf3, 0x98, 0x64, +}; +static const unsigned char kat1856_addin1[] = { + 0x52, 0x06, 0xe7, 0x1f, 0x69, 0xac, 0x98, 0x8e, 0x70, 0x92, 0xcc, 0xfd, + 0xea, 0x60, 0x41, 0xae, 0x16, 0x78, 0xab, 0x21, 0x60, 0x77, 0x60, 0xa8, + 0x5f, 0x4f, 0xb3, 0xc9, 0x9c, 0x27, 0xa1, 0x5a, +}; +static const unsigned char kat1856_retbits[] = { + 0xa2, 0x7f, 0x43, 0x51, 0xf8, 0x57, 0x33, 0x87, 0xc1, 0xdf, 0x57, 0xf2, + 0x0b, 0x75, 0xc1, 0xde, 0x59, 0xf8, 0xbb, 0x42, 0xe2, 0x7f, 0xba, 0x73, + 0x1c, 0xf6, 0x08, 0xe7, 0x49, 0xa7, 0x6c, 0x4d, 0xd0, 0x90, 0x4e, 0x2d, + 0x13, 0x72, 0x3f, 0xe5, 0x31, 0x8d, 0x9b, 0x69, 0xf1, 0x02, 0x03, 0x62, + 0xce, 0x23, 0xdf, 0x7e, 0xfe, 0x2c, 0x02, 0x3c, 0xee, 0x72, 0xfe, 0xfa, + 0xe0, 0x4d, 0x1d, 0x82, +}; +static const struct drbg_kat_pr_false kat1856_t = { + 10, kat1856_entropyin, kat1856_nonce, kat1856_persstr, + kat1856_entropyinreseed, kat1856_addinreseed, kat1856_addin0, + kat1856_addin1, kat1856_retbits +}; +static const struct drbg_kat kat1856 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1856_t +}; + +static const unsigned char kat1857_entropyin[] = { + 0x1b, 0x03, 0xf6, 0x89, 0x55, 0x05, 0x65, 0x3d, 0xe5, 0xb3, 0x4c, 0x21, + 0xac, 0x40, 0xb5, 0xb9, 0x66, 0x9a, 0x9d, 0xb1, 0x38, 0x88, 0x79, 0x00, +}; +static const unsigned char kat1857_nonce[] = { + 0x3c, 0x76, 0xd7, 0xa2, 0xae, 0x12, 0x20, 0x50, 0x88, 0x6d, 0x23, 0xb6, + 0xf5, 0x3f, 0x6d, 0x86, +}; +static const unsigned char kat1857_persstr[] = { + 0x23, 0x4a, 0xde, 0x4d, 0x96, 0x7a, 0xf7, 0xdf, 0x54, 0xd5, 0x01, 0x27, + 0x0c, 0xbf, 0xd6, 0x58, 0xd1, 0xc9, 0x6d, 0xee, 0x79, 0xbc, 0xbd, 0x4c, + 0xe5, 0x55, 0x25, 0x53, 0xb1, 0x13, 0xef, 0x05, +}; +static const unsigned char kat1857_entropyinreseed[] = { + 0x0e, 0x24, 0x0b, 0x43, 0x6e, 0x48, 0xeb, 0xfd, 0x50, 0xb2, 0xe0, 0x0f, + 0xa2, 0xd5, 0xb4, 0xe0, 0x49, 0x76, 0xf7, 0xf8, 0x94, 0xa1, 0xdf, 0x4a, +}; +static const unsigned char kat1857_addinreseed[] = { + 0x9b, 0x43, 0xb7, 0x34, 0xd7, 0x11, 0x98, 0x5f, 0x69, 0x90, 0x0f, 0x6a, + 0x0b, 0x09, 0xdc, 0x9f, 0x8e, 0xb0, 0x0a, 0xf4, 0xe5, 0x4f, 0x7f, 0x5b, + 0x64, 0xee, 0x09, 0x5b, 0xca, 0xdd, 0x2c, 0x89, +}; +static const unsigned char kat1857_addin0[] = { + 0xf9, 0x1d, 0x3a, 0xb7, 0xca, 0xee, 0xad, 0x5e, 0x2f, 0x29, 0xad, 0xfa, + 0x0f, 0xa9, 0x70, 0xc3, 0x7a, 0x96, 0xd6, 0x33, 0xd9, 0xdc, 0x42, 0xe4, + 0x27, 0x19, 0x7d, 0x12, 0x1e, 0x34, 0x58, 0x05, +}; +static const unsigned char kat1857_addin1[] = { + 0x3e, 0x97, 0x02, 0x59, 0x15, 0xa5, 0x16, 0xb2, 0x21, 0xf6, 0x27, 0x98, + 0x32, 0x45, 0xc2, 0x8a, 0x6a, 0xa6, 0x62, 0xad, 0x78, 0xca, 0x82, 0xb2, + 0x95, 0xfd, 0xbc, 0x91, 0x6e, 0x06, 0x2f, 0x02, +}; +static const unsigned char kat1857_retbits[] = { + 0x18, 0x63, 0xad, 0x4e, 0x4d, 0xa5, 0xee, 0x11, 0x31, 0xdc, 0x40, 0xc2, + 0xa0, 0x87, 0x81, 0x17, 0x7f, 0xa8, 0xf3, 0x45, 0x19, 0x88, 0x4a, 0xb1, + 0xaf, 0x43, 0x6a, 0x4e, 0xa6, 0x9d, 0x0a, 0xca, 0x1b, 0x97, 0x10, 0x86, + 0x2b, 0x70, 0x0d, 0x5c, 0x47, 0xbb, 0xd4, 0x8b, 0x56, 0x00, 0x0c, 0xcf, + 0xb3, 0xd2, 0x44, 0x67, 0xaf, 0xc5, 0xd1, 0xd6, 0xad, 0x58, 0x11, 0xee, + 0x0a, 0x45, 0xdc, 0xec, +}; +static const struct drbg_kat_pr_false kat1857_t = { + 11, kat1857_entropyin, kat1857_nonce, kat1857_persstr, + kat1857_entropyinreseed, kat1857_addinreseed, kat1857_addin0, + kat1857_addin1, kat1857_retbits +}; +static const struct drbg_kat kat1857 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1857_t +}; + +static const unsigned char kat1858_entropyin[] = { + 0xfa, 0xff, 0x69, 0x5a, 0x25, 0x5d, 0xbb, 0x2f, 0xa6, 0x7e, 0x64, 0xaf, + 0x83, 0x4c, 0x95, 0xac, 0xc2, 0x72, 0xa9, 0x75, 0x84, 0x2b, 0xcd, 0x35, +}; +static const unsigned char kat1858_nonce[] = { + 0x83, 0x39, 0xa7, 0xd4, 0x9d, 0xbb, 0x6b, 0x36, 0xa8, 0x46, 0x9a, 0xf7, + 0x40, 0xc8, 0x7f, 0x27, +}; +static const unsigned char kat1858_persstr[] = { + 0xbb, 0xba, 0xf2, 0x72, 0x49, 0xf3, 0x0e, 0x12, 0x12, 0x98, 0x02, 0x84, + 0xb8, 0x37, 0xde, 0x12, 0x01, 0x02, 0x49, 0xef, 0xba, 0x78, 0xa3, 0xf8, + 0xc7, 0x65, 0x75, 0x39, 0xea, 0x70, 0x80, 0xc7, +}; +static const unsigned char kat1858_entropyinreseed[] = { + 0x13, 0xb2, 0xbe, 0x94, 0x5b, 0x68, 0xb9, 0x85, 0x71, 0xac, 0x82, 0xf5, + 0x91, 0x81, 0x95, 0x38, 0xc4, 0x41, 0xc4, 0x55, 0x6c, 0x58, 0x15, 0xe2, +}; +static const unsigned char kat1858_addinreseed[] = { + 0x7b, 0x6c, 0x0c, 0x3d, 0xdf, 0xd4, 0x81, 0x3f, 0x4e, 0x8a, 0xea, 0x81, + 0x99, 0x43, 0x06, 0x7f, 0x25, 0xa4, 0xb8, 0x93, 0x9a, 0x43, 0xe3, 0xcd, + 0xf3, 0x2f, 0xad, 0x5d, 0x15, 0x9d, 0x69, 0xad, +}; +static const unsigned char kat1858_addin0[] = { + 0xbf, 0xee, 0x57, 0x52, 0x37, 0x9d, 0x9f, 0xe8, 0xcc, 0xe5, 0x5b, 0x19, + 0x7f, 0x3c, 0x46, 0xde, 0xbc, 0x66, 0xc9, 0x33, 0xe5, 0xf9, 0xba, 0x37, + 0x4b, 0x9d, 0xd6, 0xf1, 0x84, 0x20, 0x2d, 0xd7, +}; +static const unsigned char kat1858_addin1[] = { + 0xa6, 0x08, 0x47, 0x94, 0x33, 0xbc, 0xef, 0x51, 0x7e, 0x81, 0x44, 0x8c, + 0x91, 0x2f, 0x25, 0x7e, 0x66, 0x87, 0x74, 0x7c, 0x99, 0x24, 0xb8, 0xf8, + 0x8a, 0x0e, 0xc1, 0x44, 0x2d, 0x90, 0xe1, 0x9e, +}; +static const unsigned char kat1858_retbits[] = { + 0x7c, 0xc6, 0x5e, 0x63, 0x83, 0xaa, 0x89, 0x19, 0x34, 0xe5, 0xcf, 0x1e, + 0x6d, 0x29, 0x69, 0x2e, 0xa5, 0xf2, 0x78, 0xf3, 0x5f, 0x4d, 0x5e, 0x48, + 0xfc, 0x21, 0xf6, 0x04, 0xe4, 0xf4, 0x2e, 0xed, 0xad, 0x07, 0xd2, 0xb1, + 0xad, 0x70, 0xfa, 0x74, 0x62, 0xec, 0x0e, 0xd6, 0x68, 0x6b, 0x27, 0x36, + 0x5f, 0xa0, 0xa7, 0xb3, 0x4e, 0xc8, 0x4e, 0xf3, 0xaa, 0x9b, 0xb0, 0x8e, + 0x02, 0x7d, 0x6c, 0xa0, +}; +static const struct drbg_kat_pr_false kat1858_t = { + 12, kat1858_entropyin, kat1858_nonce, kat1858_persstr, + kat1858_entropyinreseed, kat1858_addinreseed, kat1858_addin0, + kat1858_addin1, kat1858_retbits +}; +static const struct drbg_kat kat1858 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1858_t +}; + +static const unsigned char kat1859_entropyin[] = { + 0xd0, 0x98, 0xdf, 0x2d, 0x5d, 0x7a, 0x8e, 0x96, 0xd4, 0x79, 0xf6, 0xac, + 0x30, 0xa1, 0x77, 0x15, 0x00, 0xec, 0xac, 0x0e, 0x2b, 0x82, 0x9d, 0x22, +}; +static const unsigned char kat1859_nonce[] = { + 0x8d, 0xa4, 0xd6, 0x23, 0x31, 0xed, 0xec, 0xf8, 0x28, 0xeb, 0x58, 0x52, + 0xed, 0x92, 0x01, 0x0c, +}; +static const unsigned char kat1859_persstr[] = { + 0xc6, 0x1d, 0x8a, 0x14, 0x18, 0xc0, 0xe0, 0xeb, 0x3d, 0x06, 0x52, 0xe5, + 0x5b, 0x77, 0x0f, 0x87, 0x10, 0xc8, 0x4a, 0xed, 0x5e, 0x24, 0xd3, 0xc6, + 0x31, 0x48, 0x5b, 0x15, 0xbc, 0x03, 0x70, 0x90, +}; +static const unsigned char kat1859_entropyinreseed[] = { + 0x81, 0x22, 0x96, 0xb1, 0xfc, 0xd4, 0x7b, 0xbf, 0x5d, 0x3d, 0xec, 0x66, + 0x25, 0xfc, 0x85, 0xd1, 0xe1, 0x41, 0xab, 0x26, 0x65, 0x5f, 0xb1, 0x88, +}; +static const unsigned char kat1859_addinreseed[] = { + 0xb1, 0x32, 0x81, 0x65, 0x61, 0x0b, 0xef, 0x7a, 0x32, 0x38, 0x69, 0x0c, + 0x03, 0x54, 0x9f, 0x06, 0xfa, 0xf8, 0x72, 0xd6, 0x42, 0x82, 0x7c, 0x38, + 0x5d, 0x6c, 0xe0, 0x39, 0x46, 0x5c, 0xbe, 0x56, +}; +static const unsigned char kat1859_addin0[] = { + 0x41, 0x03, 0x4b, 0xa9, 0xac, 0x78, 0x98, 0x7f, 0x21, 0xeb, 0xcd, 0xdc, + 0x7e, 0x22, 0x89, 0x85, 0xb7, 0x18, 0x33, 0x45, 0x3e, 0x14, 0xeb, 0x71, + 0x29, 0x26, 0x1b, 0x5f, 0xdc, 0xa5, 0xfa, 0xf7, +}; +static const unsigned char kat1859_addin1[] = { + 0x39, 0x8f, 0xbe, 0x1d, 0xca, 0x9a, 0x36, 0x1f, 0x27, 0x68, 0x64, 0xb0, + 0xcd, 0xe0, 0xe5, 0xf2, 0x5c, 0xc3, 0x7b, 0x29, 0x4b, 0xb0, 0xc0, 0x48, + 0x3b, 0x10, 0x9d, 0x7b, 0x36, 0x87, 0x8a, 0x5b, +}; +static const unsigned char kat1859_retbits[] = { + 0xc6, 0xd5, 0x44, 0xdd, 0xde, 0xbe, 0x42, 0x7b, 0x73, 0xe7, 0x5d, 0x9d, + 0x65, 0x9d, 0x49, 0x98, 0xe7, 0x23, 0x04, 0xca, 0x64, 0xc5, 0x6d, 0x07, + 0xf6, 0x8b, 0x70, 0x12, 0x5e, 0x90, 0xfe, 0xb9, 0xff, 0x70, 0xaf, 0xd2, + 0xb8, 0x59, 0x86, 0x67, 0xcb, 0x6b, 0x08, 0x43, 0x65, 0x57, 0x69, 0x85, + 0x5e, 0xf3, 0xa7, 0x83, 0x2b, 0x86, 0x05, 0x55, 0x43, 0xac, 0xfe, 0x4d, + 0x37, 0x7c, 0x01, 0x8a, +}; +static const struct drbg_kat_pr_false kat1859_t = { + 13, kat1859_entropyin, kat1859_nonce, kat1859_persstr, + kat1859_entropyinreseed, kat1859_addinreseed, kat1859_addin0, + kat1859_addin1, kat1859_retbits +}; +static const struct drbg_kat kat1859 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1859_t +}; + +static const unsigned char kat1860_entropyin[] = { + 0x17, 0xb7, 0xbb, 0x5b, 0x07, 0x6a, 0x5f, 0x4c, 0x5b, 0x87, 0xb9, 0xcb, + 0x11, 0x38, 0x3d, 0xdb, 0x38, 0xc4, 0x94, 0xb7, 0xb8, 0x9e, 0xed, 0x83, +}; +static const unsigned char kat1860_nonce[] = { + 0x2d, 0xd9, 0x28, 0xdd, 0x7e, 0xee, 0x5f, 0x03, 0x97, 0x79, 0xe7, 0xcd, + 0x05, 0x04, 0x49, 0x37, +}; +static const unsigned char kat1860_persstr[] = { + 0x77, 0xe9, 0xd3, 0xbc, 0x69, 0xed, 0x06, 0xc4, 0xd9, 0x70, 0x99, 0x71, + 0xdf, 0xac, 0x2a, 0xb7, 0x75, 0x32, 0x35, 0x0c, 0x2a, 0x86, 0x0d, 0xe7, + 0xb0, 0x11, 0x47, 0x75, 0x6d, 0x59, 0x41, 0x31, +}; +static const unsigned char kat1860_entropyinreseed[] = { + 0x42, 0xef, 0x85, 0x73, 0x7b, 0x47, 0x2b, 0xae, 0x82, 0x02, 0x15, 0xf1, + 0xa7, 0xf0, 0x0c, 0xe6, 0x80, 0x50, 0x26, 0x56, 0x3c, 0x70, 0x3d, 0x87, +}; +static const unsigned char kat1860_addinreseed[] = { + 0xb2, 0x28, 0xa3, 0x11, 0x3a, 0xbc, 0x0e, 0x1e, 0x45, 0x03, 0x39, 0xcb, + 0xf6, 0x1b, 0x74, 0xb1, 0x38, 0x67, 0x16, 0xf8, 0x67, 0x4e, 0x73, 0x7c, + 0xdf, 0x38, 0x45, 0xcb, 0x67, 0x2b, 0x38, 0x07, +}; +static const unsigned char kat1860_addin0[] = { + 0x13, 0x36, 0xba, 0x38, 0xc0, 0x4d, 0x6f, 0x3a, 0x2d, 0x43, 0xb1, 0x9f, + 0x65, 0x70, 0xbe, 0xfc, 0x05, 0x06, 0xa3, 0xd0, 0x2b, 0x0b, 0x62, 0x96, + 0xf4, 0xd5, 0x12, 0x21, 0x66, 0x5b, 0x8f, 0x45, +}; +static const unsigned char kat1860_addin1[] = { + 0xbf, 0x2b, 0x08, 0x64, 0x99, 0x55, 0x8c, 0x15, 0xc1, 0xd6, 0x0a, 0xd7, + 0xa2, 0xcc, 0x90, 0xb2, 0xb9, 0xac, 0x41, 0x1f, 0xa2, 0x13, 0xa2, 0x01, + 0x44, 0xac, 0xa3, 0x86, 0x48, 0x3f, 0x50, 0xdf, +}; +static const unsigned char kat1860_retbits[] = { + 0x0e, 0xce, 0xc0, 0xe3, 0x4a, 0x4d, 0x31, 0x9c, 0x1e, 0x41, 0x34, 0xae, + 0xf6, 0x33, 0xbf, 0x5d, 0x2a, 0xe0, 0x9e, 0x93, 0x11, 0xb2, 0x9b, 0x74, + 0xfc, 0x76, 0x51, 0xc6, 0xa4, 0x29, 0x53, 0xcf, 0xc0, 0x47, 0xf6, 0xf6, + 0x89, 0x27, 0x62, 0x6a, 0x6f, 0xfc, 0xc9, 0xa2, 0x05, 0xfd, 0x3a, 0x33, + 0x46, 0xa1, 0x10, 0x58, 0x04, 0xfc, 0x1b, 0x4d, 0x60, 0x76, 0xbd, 0xd1, + 0x1b, 0xa3, 0x71, 0x90, +}; +static const struct drbg_kat_pr_false kat1860_t = { + 14, kat1860_entropyin, kat1860_nonce, kat1860_persstr, + kat1860_entropyinreseed, kat1860_addinreseed, kat1860_addin0, + kat1860_addin1, kat1860_retbits +}; +static const struct drbg_kat kat1860 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1860_t +}; + +static const unsigned char kat1861_entropyin[] = { + 0xb7, 0x1d, 0x3e, 0x35, 0x69, 0x7b, 0x6a, 0x1c, 0xf5, 0xca, 0x4f, 0x09, + 0x92, 0xda, 0xe0, 0xaf, 0xd9, 0x1d, 0x6d, 0x59, 0xfa, 0x67, 0x34, 0x40, +}; +static const unsigned char kat1861_nonce[] = { + 0x40, 0x0b, 0x0d, 0xe0, 0x36, 0x70, 0x40, 0x9c, 0x92, 0x79, 0x85, 0x35, + 0x85, 0x8e, 0x54, 0x88, +}; +static const unsigned char kat1861_persstr[] = {0}; +static const unsigned char kat1861_entropyinreseed[] = { + 0x56, 0xe3, 0x1e, 0xb4, 0xa1, 0xc8, 0xba, 0xe7, 0x96, 0x20, 0x7a, 0xa5, + 0x20, 0xd6, 0x61, 0x61, 0xcf, 0x06, 0xbe, 0x2d, 0x5b, 0x46, 0xa7, 0xaa, +}; +static const unsigned char kat1861_addinreseed[] = {0}; +static const unsigned char kat1861_addin0[] = {0}; +static const unsigned char kat1861_addin1[] = {0}; +static const unsigned char kat1861_retbits[] = { + 0x3d, 0xce, 0x2a, 0xce, 0xaa, 0xec, 0x3f, 0xcf, 0x59, 0xd7, 0x2a, 0xd8, + 0xca, 0xe9, 0x26, 0x75, 0x37, 0xb0, 0xd9, 0x65, 0xb9, 0x70, 0x84, 0x6d, + 0x2c, 0xa3, 0xc5, 0x2c, 0xcc, 0x28, 0xfe, 0x78, 0x62, 0xea, 0x14, 0x40, + 0x74, 0xd7, 0x19, 0xe1, 0x8a, 0x7c, 0x50, 0xa9, 0xa1, 0x88, 0xef, 0x28, + 0x9f, 0x36, 0xd1, 0x1d, 0x20, 0xe1, 0x76, 0xc0, 0x02, 0x0d, 0x0d, 0xbf, + 0x2c, 0x94, 0xc2, 0x82, +}; +static const struct drbg_kat_pr_false kat1861_t = { + 0, kat1861_entropyin, kat1861_nonce, kat1861_persstr, + kat1861_entropyinreseed, kat1861_addinreseed, kat1861_addin0, + kat1861_addin1, kat1861_retbits +}; +static const struct drbg_kat kat1861 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1861_t +}; + +static const unsigned char kat1862_entropyin[] = { + 0x04, 0xa2, 0xb8, 0xad, 0xf8, 0x34, 0x88, 0x64, 0x3d, 0x5e, 0x67, 0x12, + 0xd0, 0x9f, 0xdb, 0x4b, 0x0d, 0xa6, 0x0e, 0x3e, 0xbd, 0x0e, 0x64, 0x27, +}; +static const unsigned char kat1862_nonce[] = { + 0xc7, 0x0f, 0xfc, 0x39, 0x67, 0x41, 0x6d, 0x4a, 0xf2, 0xe3, 0xf5, 0xef, + 0x20, 0xd7, 0xd4, 0x02, +}; +static const unsigned char kat1862_persstr[] = {0}; +static const unsigned char kat1862_entropyinreseed[] = { + 0xb3, 0xf2, 0x48, 0xa4, 0xca, 0x6f, 0x65, 0x89, 0x3e, 0x61, 0x3e, 0xac, + 0xa4, 0xe2, 0x4c, 0x99, 0xd1, 0xff, 0xbb, 0x37, 0x33, 0x95, 0xa8, 0xe8, +}; +static const unsigned char kat1862_addinreseed[] = {0}; +static const unsigned char kat1862_addin0[] = {0}; +static const unsigned char kat1862_addin1[] = {0}; +static const unsigned char kat1862_retbits[] = { + 0x3c, 0x7a, 0x50, 0xf0, 0x21, 0x5c, 0xd9, 0xb4, 0xcf, 0x60, 0xea, 0x77, + 0xc0, 0x6a, 0xd2, 0x09, 0xb2, 0x4d, 0xf9, 0x3c, 0x9d, 0x7a, 0x9d, 0x28, + 0x8c, 0xc4, 0x97, 0x8c, 0x18, 0xe0, 0x88, 0x35, 0x67, 0x1c, 0x9f, 0x7a, + 0x54, 0x15, 0xde, 0x66, 0xbb, 0xbf, 0xaa, 0x5c, 0x9c, 0x2e, 0x70, 0x99, + 0x98, 0x98, 0x8d, 0x86, 0x12, 0x2f, 0x98, 0x5b, 0x86, 0xfd, 0xb5, 0x02, + 0xed, 0xf1, 0xb9, 0x28, +}; +static const struct drbg_kat_pr_false kat1862_t = { + 1, kat1862_entropyin, kat1862_nonce, kat1862_persstr, + kat1862_entropyinreseed, kat1862_addinreseed, kat1862_addin0, + kat1862_addin1, kat1862_retbits +}; +static const struct drbg_kat kat1862 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1862_t +}; + +static const unsigned char kat1863_entropyin[] = { + 0x73, 0xd6, 0x8d, 0x22, 0xb4, 0xb6, 0xb9, 0x8c, 0xf4, 0xee, 0x1a, 0x4f, + 0x6b, 0x8f, 0x6a, 0x03, 0x58, 0x93, 0xf0, 0x3d, 0x34, 0xeb, 0x82, 0xa2, +}; +static const unsigned char kat1863_nonce[] = { + 0x76, 0xd8, 0x33, 0x38, 0xff, 0x6e, 0x65, 0x71, 0xe9, 0x59, 0x7f, 0x34, + 0xa8, 0x04, 0x62, 0x6d, +}; +static const unsigned char kat1863_persstr[] = {0}; +static const unsigned char kat1863_entropyinreseed[] = { + 0xdc, 0xe7, 0xc7, 0x23, 0x8d, 0x22, 0xe6, 0x3d, 0xb2, 0xed, 0xd8, 0xf9, + 0xa4, 0x86, 0x84, 0x69, 0x9f, 0x94, 0x94, 0xb4, 0x69, 0x82, 0x51, 0x66, +}; +static const unsigned char kat1863_addinreseed[] = {0}; +static const unsigned char kat1863_addin0[] = {0}; +static const unsigned char kat1863_addin1[] = {0}; +static const unsigned char kat1863_retbits[] = { + 0x29, 0x6e, 0xfd, 0x1a, 0x98, 0xed, 0xf4, 0x54, 0x2d, 0x34, 0xf6, 0x93, + 0x8b, 0xd8, 0x82, 0x6e, 0x52, 0x5e, 0x46, 0x61, 0xaa, 0xc5, 0xef, 0xd0, + 0x21, 0x69, 0xf5, 0x52, 0xab, 0x12, 0xdd, 0x01, 0x93, 0xb6, 0xf7, 0x66, + 0xb4, 0x1d, 0xa0, 0x55, 0x30, 0x06, 0xcb, 0xba, 0xf5, 0xb7, 0x29, 0x37, + 0x7e, 0xb2, 0xc9, 0x30, 0xb7, 0x1a, 0xb8, 0x62, 0x17, 0x31, 0xa0, 0x63, + 0xbb, 0x11, 0x13, 0xb9, +}; +static const struct drbg_kat_pr_false kat1863_t = { + 2, kat1863_entropyin, kat1863_nonce, kat1863_persstr, + kat1863_entropyinreseed, kat1863_addinreseed, kat1863_addin0, + kat1863_addin1, kat1863_retbits +}; +static const struct drbg_kat kat1863 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1863_t +}; + +static const unsigned char kat1864_entropyin[] = { + 0xbe, 0xe5, 0xbf, 0xc0, 0x0f, 0x67, 0x07, 0x95, 0x85, 0xf1, 0x15, 0x9c, + 0x37, 0xe5, 0xc2, 0xda, 0xca, 0xf1, 0x9a, 0x20, 0x57, 0x4b, 0x9a, 0xe6, +}; +static const unsigned char kat1864_nonce[] = { + 0x8d, 0xf0, 0xc9, 0xb5, 0xbb, 0x7b, 0x18, 0xdf, 0x82, 0x3f, 0xe5, 0x6c, + 0xf1, 0x15, 0x3d, 0x53, +}; +static const unsigned char kat1864_persstr[] = {0}; +static const unsigned char kat1864_entropyinreseed[] = { + 0xc1, 0xa5, 0x3c, 0xfa, 0x7d, 0xa4, 0x4e, 0xb9, 0x42, 0x0b, 0x3e, 0xb7, + 0x22, 0xda, 0xab, 0x61, 0x85, 0x8f, 0x5e, 0xfa, 0x57, 0x3f, 0x12, 0xc1, +}; +static const unsigned char kat1864_addinreseed[] = {0}; +static const unsigned char kat1864_addin0[] = {0}; +static const unsigned char kat1864_addin1[] = {0}; +static const unsigned char kat1864_retbits[] = { + 0xda, 0xc2, 0x50, 0x49, 0x2a, 0xbf, 0x78, 0xbf, 0x7c, 0x43, 0x37, 0x36, + 0x97, 0x4f, 0x73, 0xbb, 0x2c, 0xb3, 0xd3, 0xe0, 0x1c, 0xfd, 0xf2, 0x72, + 0x6d, 0x31, 0x59, 0x08, 0x63, 0xb2, 0x96, 0x45, 0x1d, 0x5b, 0x51, 0x27, + 0x50, 0x7f, 0x6d, 0x4c, 0x50, 0x06, 0x72, 0x72, 0xfa, 0xea, 0x3a, 0xa5, + 0x79, 0x06, 0x70, 0x56, 0x89, 0x48, 0xc6, 0x17, 0xaf, 0x11, 0x61, 0x24, + 0x96, 0xb7, 0x6e, 0xe1, +}; +static const struct drbg_kat_pr_false kat1864_t = { + 3, kat1864_entropyin, kat1864_nonce, kat1864_persstr, + kat1864_entropyinreseed, kat1864_addinreseed, kat1864_addin0, + kat1864_addin1, kat1864_retbits +}; +static const struct drbg_kat kat1864 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1864_t +}; + +static const unsigned char kat1865_entropyin[] = { + 0xbe, 0x06, 0x74, 0x4b, 0x7c, 0xc6, 0x33, 0x13, 0x20, 0x86, 0xb2, 0xd5, + 0xa1, 0xe9, 0xb6, 0x2c, 0x26, 0xbd, 0xe5, 0x6b, 0xd9, 0xc0, 0xd7, 0xd0, +}; +static const unsigned char kat1865_nonce[] = { + 0x70, 0x57, 0x67, 0xee, 0xb9, 0xb9, 0x7c, 0xe7, 0x17, 0xd7, 0x27, 0x2e, + 0x75, 0xb6, 0x21, 0xb8, +}; +static const unsigned char kat1865_persstr[] = {0}; +static const unsigned char kat1865_entropyinreseed[] = { + 0xc9, 0x38, 0x49, 0x87, 0x51, 0x8e, 0xa2, 0xd0, 0x29, 0xea, 0x7c, 0x1d, + 0x41, 0x65, 0x7c, 0x55, 0xd7, 0x79, 0x38, 0x82, 0xc8, 0xe0, 0x8c, 0xcc, +}; +static const unsigned char kat1865_addinreseed[] = {0}; +static const unsigned char kat1865_addin0[] = {0}; +static const unsigned char kat1865_addin1[] = {0}; +static const unsigned char kat1865_retbits[] = { + 0xef, 0x10, 0xc8, 0x6d, 0x13, 0x4b, 0xa1, 0x62, 0x57, 0xad, 0x2f, 0xa4, + 0x83, 0x96, 0x13, 0x49, 0x17, 0x79, 0x57, 0x24, 0xf7, 0xed, 0x52, 0x57, + 0xa2, 0x87, 0x88, 0xd7, 0x29, 0xae, 0x13, 0x93, 0xf4, 0x42, 0xbc, 0x5f, + 0x5a, 0x5d, 0x39, 0x88, 0x4b, 0x3b, 0x9d, 0xf5, 0x6e, 0x26, 0x2b, 0xe4, + 0x29, 0x88, 0x1a, 0x72, 0x01, 0x69, 0x5a, 0xcd, 0x21, 0xfc, 0x2c, 0xef, + 0xdb, 0x91, 0xff, 0xa7, +}; +static const struct drbg_kat_pr_false kat1865_t = { + 4, kat1865_entropyin, kat1865_nonce, kat1865_persstr, + kat1865_entropyinreseed, kat1865_addinreseed, kat1865_addin0, + kat1865_addin1, kat1865_retbits +}; +static const struct drbg_kat kat1865 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1865_t +}; + +static const unsigned char kat1866_entropyin[] = { + 0x0f, 0x06, 0xdf, 0xb4, 0x07, 0xdc, 0x85, 0x79, 0x61, 0x76, 0x13, 0xe5, + 0xf7, 0x16, 0x54, 0xa6, 0xad, 0xb9, 0xb2, 0x7a, 0xef, 0x95, 0xd8, 0xa6, +}; +static const unsigned char kat1866_nonce[] = { + 0x4c, 0xd4, 0x15, 0xdd, 0x1a, 0x32, 0xc7, 0xe2, 0x8b, 0x86, 0x35, 0xe5, + 0x4d, 0xe9, 0x28, 0x7d, +}; +static const unsigned char kat1866_persstr[] = {0}; +static const unsigned char kat1866_entropyinreseed[] = { + 0xac, 0xfa, 0x2c, 0xbc, 0x60, 0xe6, 0xcd, 0x27, 0x3d, 0x64, 0x99, 0x77, + 0xe5, 0x67, 0x59, 0x0d, 0x05, 0xd1, 0x5e, 0x6b, 0x52, 0x94, 0xdd, 0x2b, +}; +static const unsigned char kat1866_addinreseed[] = {0}; +static const unsigned char kat1866_addin0[] = {0}; +static const unsigned char kat1866_addin1[] = {0}; +static const unsigned char kat1866_retbits[] = { + 0x93, 0x67, 0x8a, 0x28, 0x0f, 0xad, 0x7a, 0xdd, 0x11, 0x77, 0x6e, 0x03, + 0x35, 0x88, 0xd7, 0x57, 0x54, 0x0e, 0x45, 0x14, 0x44, 0x86, 0xb3, 0xc7, + 0x5d, 0x87, 0xd2, 0xf0, 0x3f, 0xf3, 0x64, 0xef, 0x6d, 0xee, 0x2c, 0x87, + 0x78, 0xd4, 0x35, 0xa4, 0xd6, 0x97, 0x5b, 0x3c, 0xb2, 0x53, 0x0b, 0x07, + 0x1b, 0x65, 0x93, 0x97, 0x03, 0xfa, 0x01, 0x7b, 0xb5, 0x2c, 0x2c, 0x0c, + 0x35, 0x20, 0xaf, 0x20, +}; +static const struct drbg_kat_pr_false kat1866_t = { + 5, kat1866_entropyin, kat1866_nonce, kat1866_persstr, + kat1866_entropyinreseed, kat1866_addinreseed, kat1866_addin0, + kat1866_addin1, kat1866_retbits +}; +static const struct drbg_kat kat1866 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1866_t +}; + +static const unsigned char kat1867_entropyin[] = { + 0x7e, 0x8b, 0xef, 0x91, 0x21, 0x1e, 0xf7, 0x3d, 0xaa, 0x9e, 0xb7, 0xd3, + 0x2a, 0xf7, 0x9f, 0xbe, 0x74, 0x12, 0x0b, 0x5c, 0x18, 0x3e, 0x30, 0xa0, +}; +static const unsigned char kat1867_nonce[] = { + 0xe9, 0xeb, 0x7d, 0x6b, 0xa6, 0xee, 0xb4, 0x5b, 0x67, 0x73, 0x69, 0x19, + 0xde, 0x78, 0x2f, 0x15, +}; +static const unsigned char kat1867_persstr[] = {0}; +static const unsigned char kat1867_entropyinreseed[] = { + 0x43, 0x45, 0x2b, 0xa9, 0x09, 0x07, 0x78, 0x55, 0xb2, 0x12, 0x4a, 0x5e, + 0xf9, 0x0f, 0x84, 0x9e, 0xf4, 0xf0, 0x19, 0xce, 0x16, 0x90, 0x2a, 0x46, +}; +static const unsigned char kat1867_addinreseed[] = {0}; +static const unsigned char kat1867_addin0[] = {0}; +static const unsigned char kat1867_addin1[] = {0}; +static const unsigned char kat1867_retbits[] = { + 0xb1, 0xe1, 0x9c, 0xf5, 0x5d, 0xa5, 0xc1, 0xcb, 0x0f, 0x36, 0x46, 0xe7, + 0x4b, 0xd2, 0xdf, 0x96, 0xf6, 0x88, 0x7c, 0x77, 0x9b, 0x54, 0x74, 0xe4, + 0x7f, 0xae, 0xd2, 0x2e, 0x68, 0x67, 0xdb, 0xb2, 0x84, 0x33, 0x23, 0xc2, + 0xa3, 0x29, 0x04, 0x2a, 0x15, 0x50, 0x57, 0xd2, 0x42, 0xf3, 0xfe, 0x6f, + 0x59, 0x0a, 0xe3, 0x82, 0x51, 0x38, 0x02, 0x27, 0x69, 0xbc, 0x6e, 0x14, + 0x1d, 0xa5, 0x1b, 0xd9, +}; +static const struct drbg_kat_pr_false kat1867_t = { + 6, kat1867_entropyin, kat1867_nonce, kat1867_persstr, + kat1867_entropyinreseed, kat1867_addinreseed, kat1867_addin0, + kat1867_addin1, kat1867_retbits +}; +static const struct drbg_kat kat1867 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1867_t +}; + +static const unsigned char kat1868_entropyin[] = { + 0x63, 0xbc, 0x10, 0x0a, 0x11, 0x6e, 0x14, 0x82, 0xaa, 0x5f, 0x6d, 0x66, + 0xc1, 0x8b, 0x69, 0xf9, 0xe3, 0xde, 0xea, 0x25, 0x20, 0x3d, 0xd7, 0xae, +}; +static const unsigned char kat1868_nonce[] = { + 0xcf, 0x9b, 0x21, 0x79, 0xe3, 0xe8, 0xd6, 0x51, 0xfd, 0xda, 0xe5, 0xca, + 0x8b, 0x22, 0x0c, 0x0d, +}; +static const unsigned char kat1868_persstr[] = {0}; +static const unsigned char kat1868_entropyinreseed[] = { + 0x2e, 0x7b, 0xac, 0x45, 0x85, 0xde, 0xea, 0x2a, 0x93, 0xf4, 0x06, 0x9f, + 0x98, 0x96, 0x54, 0x4a, 0xef, 0xc4, 0xa2, 0x18, 0xc1, 0x41, 0xa2, 0x5e, +}; +static const unsigned char kat1868_addinreseed[] = {0}; +static const unsigned char kat1868_addin0[] = {0}; +static const unsigned char kat1868_addin1[] = {0}; +static const unsigned char kat1868_retbits[] = { + 0x96, 0x24, 0x97, 0x7f, 0x13, 0x5c, 0x29, 0x8a, 0xff, 0xfc, 0xd6, 0x0b, + 0x5b, 0xe0, 0xff, 0x62, 0xdd, 0x29, 0xa2, 0xd8, 0x91, 0x38, 0x9b, 0x6b, + 0x50, 0x80, 0xe9, 0xd8, 0x8b, 0xac, 0x60, 0x9d, 0xe4, 0xc7, 0x16, 0xf0, + 0x6b, 0x47, 0xc1, 0xb7, 0xcc, 0x92, 0xf6, 0x6c, 0xb5, 0xf7, 0xa4, 0xd9, + 0xda, 0x90, 0x6f, 0x08, 0x4d, 0x5d, 0x45, 0xae, 0xe9, 0xbb, 0xef, 0x26, + 0x24, 0x30, 0x9a, 0xda, +}; +static const struct drbg_kat_pr_false kat1868_t = { + 7, kat1868_entropyin, kat1868_nonce, kat1868_persstr, + kat1868_entropyinreseed, kat1868_addinreseed, kat1868_addin0, + kat1868_addin1, kat1868_retbits +}; +static const struct drbg_kat kat1868 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1868_t +}; + +static const unsigned char kat1869_entropyin[] = { + 0x43, 0x78, 0xbc, 0x78, 0xe4, 0x0b, 0x93, 0x18, 0x89, 0xce, 0x78, 0x51, + 0x0e, 0xe5, 0x27, 0xfd, 0x96, 0xa5, 0x75, 0x1e, 0xa7, 0x7c, 0xd8, 0x77, +}; +static const unsigned char kat1869_nonce[] = { + 0xf4, 0xbf, 0xf2, 0xf1, 0xda, 0x88, 0x63, 0x21, 0xeb, 0x94, 0xf6, 0xba, + 0x34, 0xef, 0x0c, 0xb9, +}; +static const unsigned char kat1869_persstr[] = {0}; +static const unsigned char kat1869_entropyinreseed[] = { + 0x0f, 0x25, 0xa2, 0xc8, 0xd4, 0x0a, 0x04, 0x0b, 0x2b, 0xfd, 0xae, 0x68, + 0xc5, 0x67, 0x19, 0x43, 0x25, 0xc9, 0x4d, 0x8a, 0xa5, 0x73, 0x93, 0xcb, +}; +static const unsigned char kat1869_addinreseed[] = {0}; +static const unsigned char kat1869_addin0[] = {0}; +static const unsigned char kat1869_addin1[] = {0}; +static const unsigned char kat1869_retbits[] = { + 0x16, 0x0d, 0xbe, 0x0b, 0x5f, 0x8a, 0xab, 0x91, 0xb9, 0x9e, 0xe5, 0x82, + 0x24, 0xe3, 0x1e, 0xb5, 0xe8, 0x00, 0x7d, 0x43, 0xe0, 0xea, 0xee, 0x13, + 0x86, 0x2a, 0x26, 0xa1, 0xbb, 0xaf, 0x09, 0x9f, 0x8d, 0x93, 0xed, 0x4d, + 0x21, 0x12, 0x11, 0x4d, 0xc9, 0x52, 0xa0, 0xcd, 0x8c, 0x26, 0x6f, 0x82, + 0xd5, 0xcc, 0xd8, 0x0a, 0x5b, 0x35, 0xf5, 0xff, 0xb3, 0xb2, 0x11, 0xd0, + 0xcb, 0xa5, 0x11, 0x03, +}; +static const struct drbg_kat_pr_false kat1869_t = { + 8, kat1869_entropyin, kat1869_nonce, kat1869_persstr, + kat1869_entropyinreseed, kat1869_addinreseed, kat1869_addin0, + kat1869_addin1, kat1869_retbits +}; +static const struct drbg_kat kat1869 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1869_t +}; + +static const unsigned char kat1870_entropyin[] = { + 0x8c, 0xc5, 0xc1, 0x01, 0xec, 0xe3, 0xca, 0xdc, 0xce, 0x50, 0xad, 0x2b, + 0x80, 0x5a, 0x4c, 0x79, 0xc5, 0x1c, 0x67, 0x95, 0xaf, 0x71, 0x66, 0x80, +}; +static const unsigned char kat1870_nonce[] = { + 0x3a, 0x16, 0x68, 0x15, 0xaa, 0x0c, 0x21, 0x7c, 0x0c, 0x14, 0x7e, 0xec, + 0xa8, 0xef, 0x1d, 0xbb, +}; +static const unsigned char kat1870_persstr[] = {0}; +static const unsigned char kat1870_entropyinreseed[] = { + 0xe9, 0x45, 0x67, 0x8b, 0x03, 0x33, 0xa0, 0xb4, 0xde, 0xd6, 0x48, 0x67, + 0x9d, 0x73, 0x90, 0x09, 0x42, 0xeb, 0xe7, 0xbb, 0x9a, 0xd1, 0xef, 0xaf, +}; +static const unsigned char kat1870_addinreseed[] = {0}; +static const unsigned char kat1870_addin0[] = {0}; +static const unsigned char kat1870_addin1[] = {0}; +static const unsigned char kat1870_retbits[] = { + 0x4a, 0xc1, 0x7a, 0xcf, 0x72, 0x5f, 0xa2, 0xc5, 0xde, 0xcf, 0x35, 0x96, + 0xcc, 0x85, 0x9b, 0xed, 0xbc, 0x14, 0x46, 0x74, 0x6b, 0x39, 0x40, 0xe6, + 0xd2, 0x8a, 0x37, 0x59, 0xc7, 0x98, 0xf5, 0x91, 0x62, 0xf1, 0x76, 0xb8, + 0x59, 0x1b, 0x70, 0xac, 0x58, 0xea, 0x83, 0x28, 0x3f, 0x37, 0x39, 0xff, + 0x82, 0x5f, 0xc1, 0xc5, 0x3e, 0xf3, 0xd9, 0x1b, 0x84, 0x83, 0x2c, 0x16, + 0x2a, 0x4c, 0xeb, 0x5c, +}; +static const struct drbg_kat_pr_false kat1870_t = { + 9, kat1870_entropyin, kat1870_nonce, kat1870_persstr, + kat1870_entropyinreseed, kat1870_addinreseed, kat1870_addin0, + kat1870_addin1, kat1870_retbits +}; +static const struct drbg_kat kat1870 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1870_t +}; + +static const unsigned char kat1871_entropyin[] = { + 0x36, 0x28, 0x4d, 0xdc, 0xea, 0x07, 0xdc, 0xab, 0x15, 0xd5, 0xca, 0x8c, + 0x6c, 0x6e, 0xca, 0xa7, 0xd1, 0x91, 0x8a, 0x38, 0x3e, 0x65, 0xa1, 0x5e, +}; +static const unsigned char kat1871_nonce[] = { + 0x8a, 0x20, 0x92, 0x90, 0x64, 0xfd, 0x5f, 0x29, 0xe6, 0x98, 0xae, 0x13, + 0x47, 0xc7, 0xd7, 0x55, +}; +static const unsigned char kat1871_persstr[] = {0}; +static const unsigned char kat1871_entropyinreseed[] = { + 0xde, 0x97, 0x0d, 0x72, 0x45, 0x26, 0xe0, 0x68, 0xc8, 0xa4, 0x26, 0x74, + 0xbf, 0x99, 0x90, 0x5a, 0x3e, 0x16, 0x15, 0xbc, 0x03, 0x63, 0x12, 0x25, +}; +static const unsigned char kat1871_addinreseed[] = {0}; +static const unsigned char kat1871_addin0[] = {0}; +static const unsigned char kat1871_addin1[] = {0}; +static const unsigned char kat1871_retbits[] = { + 0x67, 0xe2, 0x7a, 0x41, 0x90, 0x0d, 0xb0, 0x06, 0x70, 0x79, 0x9b, 0x61, + 0xde, 0x77, 0x1e, 0x03, 0x74, 0x25, 0x82, 0xe8, 0xa5, 0x82, 0x25, 0x68, + 0x62, 0x89, 0x0d, 0x33, 0x2c, 0x85, 0x8e, 0xae, 0xe4, 0xed, 0x31, 0x01, + 0x00, 0xbb, 0x43, 0x23, 0xa3, 0x06, 0xb1, 0xde, 0x9b, 0xde, 0x3f, 0x78, + 0x22, 0x19, 0xe3, 0xe7, 0x96, 0x60, 0x44, 0x4a, 0x4c, 0xbc, 0x44, 0xa5, + 0xc4, 0x8b, 0x07, 0xef, +}; +static const struct drbg_kat_pr_false kat1871_t = { + 10, kat1871_entropyin, kat1871_nonce, kat1871_persstr, + kat1871_entropyinreseed, kat1871_addinreseed, kat1871_addin0, + kat1871_addin1, kat1871_retbits +}; +static const struct drbg_kat kat1871 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1871_t +}; + +static const unsigned char kat1872_entropyin[] = { + 0xa6, 0x28, 0x15, 0x05, 0xd0, 0x16, 0xf4, 0x52, 0x27, 0xcb, 0x86, 0xff, + 0xb3, 0x29, 0x49, 0x9a, 0x89, 0x44, 0x9d, 0x7e, 0x7d, 0x1f, 0x96, 0xae, +}; +static const unsigned char kat1872_nonce[] = { + 0x44, 0xed, 0x90, 0x0e, 0x03, 0xbe, 0x20, 0x99, 0x8d, 0x0d, 0xe6, 0xa4, + 0xc8, 0xa6, 0x47, 0xca, +}; +static const unsigned char kat1872_persstr[] = {0}; +static const unsigned char kat1872_entropyinreseed[] = { + 0x3c, 0xe1, 0x02, 0x76, 0x7f, 0x57, 0x9d, 0xd9, 0xe0, 0x99, 0x52, 0x9a, + 0xb6, 0x48, 0x05, 0x96, 0xc3, 0x8a, 0xdb, 0x22, 0xe9, 0x22, 0xc1, 0xbf, +}; +static const unsigned char kat1872_addinreseed[] = {0}; +static const unsigned char kat1872_addin0[] = {0}; +static const unsigned char kat1872_addin1[] = {0}; +static const unsigned char kat1872_retbits[] = { + 0xe3, 0xbe, 0x72, 0xf6, 0xc8, 0xce, 0xe6, 0xae, 0x17, 0x02, 0xfc, 0x10, + 0x60, 0x11, 0x50, 0x08, 0x72, 0xbd, 0x43, 0xa2, 0x33, 0x58, 0x7c, 0xdd, + 0x27, 0x45, 0xf6, 0x9d, 0x12, 0x14, 0x8f, 0x33, 0xbd, 0x56, 0x09, 0x8a, + 0x70, 0x6d, 0x95, 0xfa, 0x75, 0x31, 0xb7, 0x83, 0x32, 0xad, 0x76, 0xd1, + 0xb7, 0xa7, 0xa1, 0xe1, 0x6b, 0x69, 0x04, 0xed, 0x53, 0x64, 0xb3, 0xd1, + 0xb3, 0x23, 0x0a, 0x74, +}; +static const struct drbg_kat_pr_false kat1872_t = { + 11, kat1872_entropyin, kat1872_nonce, kat1872_persstr, + kat1872_entropyinreseed, kat1872_addinreseed, kat1872_addin0, + kat1872_addin1, kat1872_retbits +}; +static const struct drbg_kat kat1872 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1872_t +}; + +static const unsigned char kat1873_entropyin[] = { + 0xd4, 0x36, 0xc3, 0xb4, 0x6a, 0x8f, 0x2a, 0x04, 0xb0, 0x7e, 0xbe, 0x21, + 0x3b, 0x3d, 0x6e, 0x46, 0x41, 0x38, 0xf8, 0x01, 0x5d, 0xaf, 0xd0, 0x79, +}; +static const unsigned char kat1873_nonce[] = { + 0xf6, 0xdf, 0xa2, 0xe6, 0x90, 0x75, 0xff, 0x67, 0x65, 0xc4, 0xa3, 0xef, + 0x9d, 0x7f, 0x8f, 0x83, +}; +static const unsigned char kat1873_persstr[] = {0}; +static const unsigned char kat1873_entropyinreseed[] = { + 0x19, 0x5c, 0x37, 0xc4, 0xe2, 0xf8, 0xc0, 0x6e, 0x40, 0xc7, 0x9c, 0xd4, + 0xbc, 0xd5, 0x5f, 0x1d, 0x82, 0xec, 0x2d, 0xae, 0xfa, 0x1a, 0x5f, 0x83, +}; +static const unsigned char kat1873_addinreseed[] = {0}; +static const unsigned char kat1873_addin0[] = {0}; +static const unsigned char kat1873_addin1[] = {0}; +static const unsigned char kat1873_retbits[] = { + 0x29, 0xc9, 0x20, 0x40, 0x70, 0xd4, 0xc2, 0x55, 0xef, 0x0e, 0x1b, 0x52, + 0xfb, 0xa7, 0x45, 0x0e, 0xe0, 0xe5, 0xae, 0x0d, 0x26, 0x8b, 0xd8, 0xaa, + 0x9d, 0x17, 0x38, 0x16, 0x1f, 0x22, 0xfb, 0x95, 0x50, 0x5c, 0x1f, 0xa6, + 0xa6, 0xb3, 0x30, 0x91, 0x8e, 0x75, 0xc4, 0xbb, 0x8f, 0x96, 0xfa, 0x2b, + 0x9a, 0xc0, 0x2b, 0x5d, 0xdb, 0x25, 0x51, 0xbd, 0x49, 0x7e, 0x56, 0x1a, + 0xe1, 0xec, 0x84, 0x5d, +}; +static const struct drbg_kat_pr_false kat1873_t = { + 12, kat1873_entropyin, kat1873_nonce, kat1873_persstr, + kat1873_entropyinreseed, kat1873_addinreseed, kat1873_addin0, + kat1873_addin1, kat1873_retbits +}; +static const struct drbg_kat kat1873 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1873_t +}; + +static const unsigned char kat1874_entropyin[] = { + 0xb6, 0x9f, 0x6c, 0xae, 0xa2, 0xd9, 0xcb, 0x35, 0x15, 0xac, 0xd9, 0x9d, + 0x24, 0x56, 0x42, 0x6b, 0x79, 0x95, 0x05, 0x94, 0xf5, 0xd7, 0xbe, 0x45, +}; +static const unsigned char kat1874_nonce[] = { + 0x76, 0xd6, 0x6f, 0xbf, 0x25, 0xf4, 0x18, 0xd8, 0xb3, 0x9a, 0x14, 0x25, + 0x19, 0x17, 0xa5, 0x97, +}; +static const unsigned char kat1874_persstr[] = {0}; +static const unsigned char kat1874_entropyinreseed[] = { + 0xfc, 0x3a, 0x32, 0xe8, 0x09, 0x58, 0x9e, 0x33, 0x58, 0xb7, 0x98, 0xb1, + 0xb5, 0xd6, 0x42, 0xd0, 0xf9, 0xc1, 0xdb, 0xe8, 0x95, 0x2f, 0x80, 0x32, +}; +static const unsigned char kat1874_addinreseed[] = {0}; +static const unsigned char kat1874_addin0[] = {0}; +static const unsigned char kat1874_addin1[] = {0}; +static const unsigned char kat1874_retbits[] = { + 0x7c, 0xcf, 0xe7, 0x4c, 0x24, 0x3d, 0xa0, 0x1c, 0x74, 0x38, 0x1d, 0x64, + 0xe7, 0xb2, 0xac, 0xd3, 0x7f, 0xb4, 0xf3, 0xd2, 0x44, 0x12, 0xe7, 0x57, + 0x3a, 0xbd, 0xd9, 0xdb, 0x91, 0xe2, 0x79, 0x70, 0x13, 0xa1, 0xd6, 0x72, + 0xe9, 0x09, 0x29, 0x8e, 0x51, 0x65, 0xf2, 0x9a, 0x53, 0x09, 0x6d, 0xdd, + 0x5b, 0x90, 0x22, 0x05, 0x48, 0xb2, 0x17, 0x3c, 0x75, 0xa0, 0x83, 0x43, + 0x95, 0xd1, 0x2e, 0xad, +}; +static const struct drbg_kat_pr_false kat1874_t = { + 13, kat1874_entropyin, kat1874_nonce, kat1874_persstr, + kat1874_entropyinreseed, kat1874_addinreseed, kat1874_addin0, + kat1874_addin1, kat1874_retbits +}; +static const struct drbg_kat kat1874 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1874_t +}; + +static const unsigned char kat1875_entropyin[] = { + 0xe8, 0xd8, 0x01, 0x57, 0x46, 0x77, 0x19, 0x9b, 0xd8, 0x66, 0x19, 0x79, + 0x46, 0xd2, 0xac, 0xcf, 0x3c, 0xd1, 0xc6, 0x17, 0x30, 0x55, 0x3c, 0xbd, +}; +static const unsigned char kat1875_nonce[] = { + 0xaf, 0xb3, 0x2d, 0x28, 0x3c, 0xa1, 0x54, 0x6d, 0xbd, 0x50, 0x75, 0xa9, + 0x03, 0x82, 0x82, 0x75, +}; +static const unsigned char kat1875_persstr[] = {0}; +static const unsigned char kat1875_entropyinreseed[] = { + 0x34, 0xf8, 0xc9, 0x6c, 0x52, 0xc6, 0xc4, 0x8a, 0xa0, 0xf3, 0x9d, 0x20, + 0x50, 0x2f, 0x5b, 0x03, 0x19, 0x30, 0x66, 0x7a, 0xf2, 0x93, 0xbb, 0xaa, +}; +static const unsigned char kat1875_addinreseed[] = {0}; +static const unsigned char kat1875_addin0[] = {0}; +static const unsigned char kat1875_addin1[] = {0}; +static const unsigned char kat1875_retbits[] = { + 0x5b, 0x8a, 0x8c, 0xc5, 0x54, 0xa7, 0x0e, 0x64, 0xd1, 0xe8, 0xf0, 0x80, + 0xfa, 0x20, 0xbe, 0xe1, 0x26, 0xb4, 0x39, 0x14, 0x7c, 0x6c, 0x56, 0xfd, + 0xf6, 0x98, 0xe9, 0x6c, 0x5c, 0x3e, 0x89, 0xf2, 0x0f, 0xef, 0xed, 0x68, + 0x63, 0x66, 0x9f, 0xb8, 0xf5, 0x8e, 0xa4, 0x2e, 0x2f, 0xcb, 0xfa, 0x9a, + 0x40, 0xa4, 0xfc, 0xa7, 0x7a, 0x7e, 0xbd, 0xe4, 0x39, 0x56, 0x64, 0x90, + 0x22, 0xc6, 0xf4, 0x75, +}; +static const struct drbg_kat_pr_false kat1875_t = { + 14, kat1875_entropyin, kat1875_nonce, kat1875_persstr, + kat1875_entropyinreseed, kat1875_addinreseed, kat1875_addin0, + kat1875_addin1, kat1875_retbits +}; +static const struct drbg_kat kat1875 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat1875_t +}; + +static const unsigned char kat1876_entropyin[] = { + 0x2c, 0x09, 0x49, 0x0d, 0xc8, 0x67, 0x10, 0xa6, 0xbc, 0xdb, 0x45, 0x0d, + 0x07, 0xfa, 0x52, 0xaa, 0x6b, 0xbd, 0x5e, 0xe1, 0x55, 0x90, 0x14, 0x0a, +}; +static const unsigned char kat1876_nonce[] = { + 0x1d, 0x40, 0x71, 0x20, 0xf3, 0xb6, 0x83, 0x5d, 0x0d, 0xf0, 0x86, 0x6d, + 0x0e, 0xcd, 0x05, 0xf8, +}; +static const unsigned char kat1876_persstr[] = {0}; +static const unsigned char kat1876_entropyinreseed[] = { + 0x2e, 0x52, 0xa0, 0x68, 0xbd, 0x4d, 0x9c, 0x42, 0x79, 0xb1, 0x83, 0xf1, + 0xa4, 0x5f, 0x1d, 0x2c, 0xe5, 0x03, 0x10, 0x5a, 0x42, 0x8c, 0xee, 0x9e, +}; +static const unsigned char kat1876_addinreseed[] = { + 0x31, 0xcf, 0xc6, 0x8c, 0xcb, 0xe6, 0x80, 0xf1, 0x80, 0x75, 0xe2, 0x16, + 0x05, 0x02, 0x4f, 0xaa, 0x39, 0x79, 0xee, 0x70, 0xc6, 0xff, 0xaa, 0xfa, + 0xef, 0x17, 0x0b, 0x57, 0xc5, 0x7f, 0x4c, 0x14, +}; +static const unsigned char kat1876_addin0[] = { + 0x26, 0x26, 0xab, 0x5a, 0x06, 0x50, 0x8b, 0x34, 0xfd, 0x64, 0x90, 0x4e, + 0x75, 0x6f, 0xfc, 0x52, 0xa1, 0xc6, 0xaf, 0x28, 0x29, 0xc9, 0xee, 0xc0, + 0x08, 0xf2, 0x1b, 0x28, 0x40, 0x43, 0xfb, 0x67, +}; +static const unsigned char kat1876_addin1[] = { + 0xce, 0x41, 0x26, 0xda, 0x75, 0x7e, 0x5d, 0x88, 0xcb, 0x86, 0x27, 0x72, + 0x1b, 0x54, 0x91, 0xc2, 0x86, 0x6e, 0xd0, 0xd1, 0xd6, 0x73, 0x8a, 0x68, + 0xbe, 0x1b, 0x49, 0x83, 0x9d, 0x4b, 0xf6, 0xc2, +}; +static const unsigned char kat1876_retbits[] = { + 0xa7, 0xa9, 0x2c, 0x0f, 0xf5, 0xdf, 0xf9, 0x24, 0x1e, 0x2f, 0x0f, 0x87, + 0x6a, 0xe4, 0xc1, 0xa3, 0x19, 0xe8, 0xfb, 0x00, 0xfd, 0x39, 0x15, 0x1e, + 0x72, 0x77, 0x36, 0xa1, 0xdd, 0xa7, 0xbe, 0x1b, 0x9f, 0xdc, 0xaa, 0x82, + 0xc8, 0x8b, 0xfa, 0x5b, 0x14, 0x9d, 0xbc, 0x24, 0x6b, 0xd6, 0x72, 0x03, + 0x4a, 0x9f, 0x70, 0xac, 0x2e, 0xbe, 0x72, 0xf7, 0x0b, 0x83, 0x41, 0x81, + 0x73, 0xcc, 0xbd, 0x04, +}; +static const struct drbg_kat_pr_false kat1876_t = { + 0, kat1876_entropyin, kat1876_nonce, kat1876_persstr, + kat1876_entropyinreseed, kat1876_addinreseed, kat1876_addin0, + kat1876_addin1, kat1876_retbits +}; +static const struct drbg_kat kat1876 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1876_t +}; + +static const unsigned char kat1877_entropyin[] = { + 0xf9, 0x5c, 0xd3, 0x8c, 0x3e, 0x18, 0xfa, 0x19, 0xc3, 0x65, 0x02, 0x2f, + 0xba, 0x6c, 0xb1, 0x97, 0xc3, 0xaa, 0x31, 0xe3, 0x48, 0x23, 0x49, 0xe4, +}; +static const unsigned char kat1877_nonce[] = { + 0xab, 0x14, 0xf6, 0xe3, 0xac, 0x82, 0xff, 0xef, 0xa1, 0xb2, 0x0c, 0xb1, + 0x27, 0x14, 0x5b, 0x54, +}; +static const unsigned char kat1877_persstr[] = {0}; +static const unsigned char kat1877_entropyinreseed[] = { + 0x79, 0x04, 0x44, 0x2f, 0x08, 0x71, 0xdb, 0x67, 0x27, 0xfb, 0xf2, 0xcc, + 0x34, 0x26, 0xfd, 0x5c, 0x30, 0x53, 0xd1, 0xf9, 0x3f, 0x57, 0x4b, 0x27, +}; +static const unsigned char kat1877_addinreseed[] = { + 0x74, 0xce, 0xd2, 0x49, 0xbe, 0x05, 0xcc, 0x23, 0xd0, 0xc1, 0x8f, 0xf9, + 0x61, 0x99, 0xd8, 0x66, 0x45, 0x4a, 0x52, 0xc9, 0x62, 0xd6, 0xaa, 0xc4, + 0x0a, 0x42, 0x93, 0x60, 0x3f, 0x2c, 0x97, 0xa2, +}; +static const unsigned char kat1877_addin0[] = { + 0xad, 0x33, 0x91, 0xc8, 0xa8, 0x10, 0x61, 0x9e, 0x50, 0x4d, 0xab, 0x12, + 0xfd, 0x1b, 0xaa, 0x1d, 0x43, 0x34, 0x32, 0x46, 0x86, 0x53, 0x19, 0xc6, + 0xa7, 0x03, 0x08, 0x28, 0x2f, 0xf6, 0x03, 0x26, +}; +static const unsigned char kat1877_addin1[] = { + 0x6c, 0xf4, 0xf2, 0xa9, 0xba, 0x56, 0x11, 0x60, 0xcc, 0x0f, 0x91, 0x02, + 0xd7, 0x7f, 0x56, 0x63, 0x4a, 0x86, 0x7d, 0x4f, 0x4a, 0xa0, 0xaf, 0xce, + 0x17, 0x5d, 0x99, 0x4a, 0x40, 0x74, 0x45, 0xdc, +}; +static const unsigned char kat1877_retbits[] = { + 0x89, 0xcb, 0xbd, 0x15, 0xb4, 0xf0, 0xd1, 0xac, 0xa8, 0x4a, 0x44, 0x73, + 0x13, 0xe9, 0xbc, 0x83, 0xa6, 0x4a, 0x87, 0xc7, 0x07, 0x5b, 0x1c, 0x74, + 0xde, 0x18, 0x4b, 0xda, 0x6c, 0x6a, 0xb6, 0x69, 0xc8, 0xef, 0x7b, 0x8c, + 0x6b, 0xca, 0x3d, 0xe3, 0x28, 0xa5, 0xd3, 0x24, 0xbf, 0xa2, 0x79, 0x52, + 0xa8, 0x34, 0x24, 0xbb, 0xd4, 0x0c, 0xac, 0x99, 0x51, 0x03, 0x30, 0xe9, + 0x59, 0xb0, 0x2d, 0xc7, +}; +static const struct drbg_kat_pr_false kat1877_t = { + 1, kat1877_entropyin, kat1877_nonce, kat1877_persstr, + kat1877_entropyinreseed, kat1877_addinreseed, kat1877_addin0, + kat1877_addin1, kat1877_retbits +}; +static const struct drbg_kat kat1877 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1877_t +}; + +static const unsigned char kat1878_entropyin[] = { + 0xc4, 0xf0, 0x88, 0xcc, 0x36, 0x9b, 0x2c, 0x22, 0x76, 0x67, 0xe8, 0x29, + 0x78, 0xf3, 0x4d, 0x26, 0x78, 0xd1, 0xa5, 0x3d, 0xe1, 0xf0, 0x56, 0x55, +}; +static const unsigned char kat1878_nonce[] = { + 0x61, 0x95, 0xe0, 0x26, 0x70, 0xba, 0xe3, 0xbe, 0xdb, 0x2f, 0xf0, 0xca, + 0x0f, 0x7a, 0x05, 0x49, +}; +static const unsigned char kat1878_persstr[] = {0}; +static const unsigned char kat1878_entropyinreseed[] = { + 0x1f, 0x37, 0xe7, 0x80, 0xfb, 0x27, 0xd7, 0x43, 0xc5, 0x2d, 0xe9, 0xbb, + 0x71, 0xd4, 0xdd, 0xca, 0x74, 0x39, 0x00, 0x15, 0x4a, 0x8d, 0x46, 0x22, +}; +static const unsigned char kat1878_addinreseed[] = { + 0x5f, 0x05, 0x9a, 0xb2, 0xc4, 0x7e, 0x54, 0xf7, 0x73, 0x5d, 0x85, 0x0d, + 0x49, 0x23, 0x06, 0x96, 0xd5, 0x22, 0x38, 0xc6, 0xab, 0x28, 0xf2, 0xb1, + 0x19, 0x94, 0x54, 0x53, 0x89, 0x35, 0x0f, 0x78, +}; +static const unsigned char kat1878_addin0[] = { + 0xcc, 0x3e, 0x9e, 0xbc, 0xf2, 0xad, 0xd4, 0x63, 0x17, 0x7b, 0xc1, 0x8a, + 0xdd, 0xc3, 0x30, 0x60, 0x0d, 0x42, 0x43, 0x1f, 0x77, 0x88, 0xf7, 0x62, + 0xcd, 0x69, 0xce, 0xe2, 0x1e, 0x14, 0x1b, 0x9e, +}; +static const unsigned char kat1878_addin1[] = { + 0xec, 0x29, 0x2f, 0x2e, 0x19, 0xd9, 0x51, 0x0d, 0xc3, 0x99, 0x3c, 0x79, + 0x60, 0x93, 0xf7, 0xe2, 0x37, 0x26, 0xd2, 0xae, 0x1c, 0x4f, 0xa7, 0x6b, + 0x95, 0xf1, 0x18, 0xce, 0x39, 0x06, 0x10, 0xc5, +}; +static const unsigned char kat1878_retbits[] = { + 0xec, 0xe8, 0xaf, 0x0e, 0x89, 0xf0, 0xad, 0x9d, 0xd2, 0x10, 0xe8, 0xb3, + 0x28, 0x26, 0xc1, 0x5d, 0x15, 0x3e, 0x57, 0x9d, 0x26, 0x04, 0x46, 0xbd, + 0xf1, 0x08, 0x12, 0xca, 0xe3, 0xd6, 0x87, 0x55, 0x61, 0x8a, 0xe3, 0xc2, + 0xef, 0xe3, 0x29, 0x38, 0x7e, 0x09, 0x04, 0xae, 0xc1, 0x54, 0x10, 0xb3, + 0x01, 0x00, 0xbf, 0xd5, 0xd2, 0xb3, 0xe4, 0xdf, 0x87, 0x91, 0xf6, 0x73, + 0xdc, 0x05, 0xe4, 0x93, +}; +static const struct drbg_kat_pr_false kat1878_t = { + 2, kat1878_entropyin, kat1878_nonce, kat1878_persstr, + kat1878_entropyinreseed, kat1878_addinreseed, kat1878_addin0, + kat1878_addin1, kat1878_retbits +}; +static const struct drbg_kat kat1878 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1878_t +}; + +static const unsigned char kat1879_entropyin[] = { + 0x73, 0x58, 0xd4, 0x37, 0x39, 0xe2, 0xd3, 0x1d, 0x55, 0x3e, 0xa4, 0x84, + 0x2c, 0x38, 0xf8, 0xb9, 0x44, 0x6f, 0x72, 0x24, 0x21, 0xeb, 0xb0, 0x02, +}; +static const unsigned char kat1879_nonce[] = { + 0xef, 0xc2, 0x6b, 0x24, 0x50, 0x5b, 0xc4, 0x57, 0xa2, 0x33, 0x98, 0x2b, + 0x8a, 0xbf, 0x64, 0xa0, +}; +static const unsigned char kat1879_persstr[] = {0}; +static const unsigned char kat1879_entropyinreseed[] = { + 0x8f, 0xa7, 0x89, 0xdd, 0xc0, 0xa5, 0x31, 0x4d, 0x8e, 0x9f, 0xad, 0x3e, + 0xf9, 0xa9, 0xf8, 0x36, 0x00, 0xe5, 0xb0, 0x19, 0x01, 0x68, 0xc5, 0x48, +}; +static const unsigned char kat1879_addinreseed[] = { + 0xce, 0x6b, 0x37, 0x64, 0x64, 0x01, 0xf7, 0x80, 0x6c, 0x6c, 0x9f, 0x9a, + 0x4b, 0xec, 0x98, 0xf7, 0x0c, 0xcc, 0x5c, 0x1e, 0xf1, 0xf4, 0xee, 0xa1, + 0xce, 0x8a, 0xfd, 0x09, 0x2f, 0x31, 0x62, 0x6d, +}; +static const unsigned char kat1879_addin0[] = { + 0xf0, 0x31, 0x5b, 0x4c, 0xdb, 0x0c, 0x92, 0xd3, 0x46, 0x14, 0x4b, 0xdb, + 0xc3, 0x57, 0x32, 0xf4, 0xe3, 0xeb, 0xec, 0xa5, 0xf3, 0x90, 0x74, 0xbf, + 0x9b, 0x84, 0x91, 0x70, 0xb6, 0xa3, 0x14, 0x4b, +}; +static const unsigned char kat1879_addin1[] = { + 0x91, 0xc2, 0x89, 0x61, 0xeb, 0x16, 0xda, 0x37, 0x15, 0xe9, 0x54, 0x46, + 0x23, 0x8e, 0xdd, 0xf3, 0x46, 0x02, 0xb3, 0x69, 0xf7, 0xf8, 0x07, 0xbd, + 0xb7, 0x4b, 0x97, 0xf1, 0xe1, 0xa1, 0xc8, 0xb8, +}; +static const unsigned char kat1879_retbits[] = { + 0x81, 0x50, 0xca, 0xed, 0x36, 0x08, 0xad, 0x8b, 0xa1, 0x0a, 0x60, 0x5a, + 0x9c, 0xca, 0x68, 0x8d, 0x2a, 0x1d, 0x97, 0xd4, 0xf6, 0x52, 0xd3, 0xb3, + 0x5c, 0xd6, 0xc5, 0xeb, 0xae, 0x3f, 0x62, 0xdf, 0xbc, 0xab, 0xeb, 0xa8, + 0xe1, 0x13, 0x87, 0x7b, 0x28, 0x1b, 0x70, 0xd2, 0x3d, 0x5a, 0xe9, 0xa2, + 0x05, 0xfc, 0x46, 0xd9, 0xe6, 0x38, 0x32, 0x91, 0xb0, 0xb5, 0x4e, 0x13, + 0x24, 0x10, 0x91, 0x5e, +}; +static const struct drbg_kat_pr_false kat1879_t = { + 3, kat1879_entropyin, kat1879_nonce, kat1879_persstr, + kat1879_entropyinreseed, kat1879_addinreseed, kat1879_addin0, + kat1879_addin1, kat1879_retbits +}; +static const struct drbg_kat kat1879 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1879_t +}; + +static const unsigned char kat1880_entropyin[] = { + 0x59, 0x9b, 0xe5, 0x01, 0xc1, 0xfd, 0xd8, 0xaa, 0xc4, 0xdf, 0x29, 0x4f, + 0x32, 0xc0, 0x15, 0x9b, 0x00, 0xc6, 0x61, 0x64, 0x59, 0x55, 0x93, 0x8e, +}; +static const unsigned char kat1880_nonce[] = { + 0xdc, 0x4a, 0xbf, 0xa8, 0x6c, 0x4b, 0x7a, 0x47, 0x46, 0x68, 0xa5, 0x64, + 0xd5, 0x62, 0x1e, 0x17, +}; +static const unsigned char kat1880_persstr[] = {0}; +static const unsigned char kat1880_entropyinreseed[] = { + 0xe0, 0xb7, 0xa4, 0x00, 0xb2, 0x3a, 0xb2, 0xce, 0xcc, 0x2a, 0xf1, 0xed, + 0x4c, 0x80, 0x39, 0x13, 0x08, 0x7a, 0x9a, 0xf8, 0x5a, 0x7d, 0xc5, 0x08, +}; +static const unsigned char kat1880_addinreseed[] = { + 0xdd, 0x24, 0xc8, 0x97, 0x57, 0x60, 0x02, 0xbc, 0x66, 0x5f, 0xd5, 0xa2, + 0xc5, 0x7a, 0x43, 0x93, 0x45, 0xac, 0xd0, 0x46, 0x90, 0xba, 0x7b, 0xfa, + 0x1c, 0xfd, 0x65, 0x5c, 0x73, 0x67, 0x67, 0xf1, +}; +static const unsigned char kat1880_addin0[] = { + 0x87, 0xeb, 0x59, 0xa1, 0x9b, 0xf8, 0x72, 0x6b, 0x41, 0x3c, 0xe8, 0xff, + 0xd8, 0x59, 0xc0, 0xbf, 0x96, 0x39, 0xf0, 0x01, 0x3d, 0x4a, 0x58, 0xa0, + 0xab, 0x8e, 0xe9, 0x3a, 0xa5, 0xb3, 0xf7, 0x9e, +}; +static const unsigned char kat1880_addin1[] = { + 0x8c, 0x12, 0xfc, 0x58, 0x83, 0x3f, 0xae, 0x3e, 0xf2, 0xf0, 0x87, 0x6b, + 0xeb, 0x2d, 0xea, 0xf6, 0xca, 0xd9, 0x5c, 0xf4, 0x9b, 0x04, 0x81, 0x21, + 0xe0, 0x59, 0x3a, 0xcf, 0x64, 0xc9, 0x22, 0x99, +}; +static const unsigned char kat1880_retbits[] = { + 0xf3, 0x43, 0x4f, 0xdb, 0x75, 0xf2, 0xe2, 0x1e, 0xfe, 0xe2, 0x61, 0xfe, + 0x9a, 0xfb, 0xeb, 0x7b, 0x71, 0xe2, 0x10, 0xf1, 0x6e, 0x3b, 0x61, 0x23, + 0x40, 0xe2, 0xf5, 0x87, 0xd9, 0x58, 0xdf, 0x6d, 0x8a, 0x83, 0xf1, 0x91, + 0x6e, 0x75, 0x77, 0xb8, 0x9c, 0x7c, 0xd3, 0xb0, 0x1c, 0x60, 0x4e, 0x92, + 0xb0, 0xda, 0xc3, 0xa0, 0x4a, 0x3c, 0x58, 0xd7, 0x37, 0x7b, 0xb2, 0x05, + 0xce, 0xc1, 0xa5, 0x23, +}; +static const struct drbg_kat_pr_false kat1880_t = { + 4, kat1880_entropyin, kat1880_nonce, kat1880_persstr, + kat1880_entropyinreseed, kat1880_addinreseed, kat1880_addin0, + kat1880_addin1, kat1880_retbits +}; +static const struct drbg_kat kat1880 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1880_t +}; + +static const unsigned char kat1881_entropyin[] = { + 0xe7, 0xa6, 0x39, 0x69, 0x85, 0x3b, 0x21, 0xc8, 0xa4, 0x1f, 0x9c, 0xbd, + 0x11, 0x25, 0xba, 0xc6, 0x6a, 0xbc, 0x87, 0x71, 0xf3, 0x49, 0xc5, 0xb5, +}; +static const unsigned char kat1881_nonce[] = { + 0x45, 0xe5, 0x89, 0x8e, 0x4c, 0xd7, 0xf6, 0xee, 0x15, 0xee, 0xcc, 0xaa, + 0x20, 0x43, 0x76, 0xaf, +}; +static const unsigned char kat1881_persstr[] = {0}; +static const unsigned char kat1881_entropyinreseed[] = { + 0x46, 0x81, 0xc0, 0xdc, 0x64, 0x35, 0x48, 0x3a, 0xbe, 0x87, 0x71, 0x1f, + 0xd2, 0xd1, 0x29, 0x2a, 0x3d, 0xbb, 0xa7, 0xee, 0x13, 0xa1, 0x8b, 0x79, +}; +static const unsigned char kat1881_addinreseed[] = { + 0x43, 0x79, 0x0f, 0x50, 0x88, 0x2e, 0xf2, 0xcc, 0x65, 0xb3, 0x73, 0x6a, + 0xdc, 0x17, 0x05, 0x2c, 0x2f, 0x65, 0x99, 0x04, 0x57, 0x9c, 0x48, 0xfb, + 0xbc, 0x8b, 0xf8, 0x96, 0xc0, 0x0d, 0xdd, 0xb6, +}; +static const unsigned char kat1881_addin0[] = { + 0x68, 0x66, 0x6c, 0x2a, 0x39, 0x11, 0xc6, 0xef, 0x22, 0x0b, 0x67, 0x65, + 0xb4, 0x37, 0xa5, 0xf6, 0x99, 0x31, 0xd5, 0xc5, 0x47, 0x63, 0xb6, 0x42, + 0xe4, 0xc3, 0x84, 0xd8, 0xaf, 0x76, 0xc0, 0xac, +}; +static const unsigned char kat1881_addin1[] = { + 0x31, 0x21, 0xd7, 0x1c, 0x5d, 0x3d, 0x56, 0x44, 0x2c, 0x17, 0xc3, 0x7f, + 0xbf, 0x7e, 0x5b, 0xf6, 0x79, 0x82, 0xda, 0x1d, 0xbe, 0xbc, 0x0c, 0x9c, + 0xd5, 0x11, 0xec, 0x81, 0x05, 0x9f, 0xf7, 0x01, +}; +static const unsigned char kat1881_retbits[] = { + 0xd2, 0x97, 0x9b, 0xec, 0x69, 0x23, 0xcd, 0x21, 0x06, 0x5e, 0x7b, 0xe3, + 0x4f, 0xa1, 0x8d, 0x3e, 0x59, 0x1c, 0xed, 0x66, 0x9b, 0x02, 0x93, 0xb3, + 0xcd, 0x0d, 0xbf, 0xcd, 0x79, 0xd0, 0xa7, 0x06, 0x27, 0x38, 0x42, 0xd3, + 0x79, 0x2f, 0x77, 0xad, 0x67, 0x85, 0x3a, 0x41, 0x1a, 0xa2, 0x8d, 0x76, + 0x82, 0xff, 0x37, 0xde, 0x2b, 0x4f, 0x36, 0xff, 0xbf, 0x7f, 0x40, 0x03, + 0xb2, 0x79, 0x62, 0x7d, +}; +static const struct drbg_kat_pr_false kat1881_t = { + 5, kat1881_entropyin, kat1881_nonce, kat1881_persstr, + kat1881_entropyinreseed, kat1881_addinreseed, kat1881_addin0, + kat1881_addin1, kat1881_retbits +}; +static const struct drbg_kat kat1881 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1881_t +}; + +static const unsigned char kat1882_entropyin[] = { + 0xc6, 0xee, 0x4e, 0xd1, 0x61, 0x1b, 0x36, 0x19, 0x7c, 0x29, 0xe7, 0x2e, + 0x27, 0xaf, 0x2e, 0x5b, 0x50, 0x47, 0x6c, 0x85, 0x31, 0x88, 0xd7, 0x15, +}; +static const unsigned char kat1882_nonce[] = { + 0x87, 0x3a, 0x27, 0x5e, 0x5a, 0xa1, 0xe9, 0xde, 0x62, 0xa1, 0x8c, 0x25, + 0xb1, 0x46, 0xc2, 0x36, +}; +static const unsigned char kat1882_persstr[] = {0}; +static const unsigned char kat1882_entropyinreseed[] = { + 0xc0, 0xe1, 0xe5, 0xd4, 0xa7, 0x3a, 0xb1, 0xeb, 0x78, 0xfa, 0xd2, 0x3a, + 0x81, 0xd5, 0xf7, 0x2b, 0xea, 0x2f, 0xec, 0xd5, 0xac, 0x2d, 0x87, 0x7e, +}; +static const unsigned char kat1882_addinreseed[] = { + 0x3c, 0xbc, 0x7e, 0xa5, 0xe6, 0x34, 0xca, 0x5f, 0xf0, 0xfb, 0x82, 0x29, + 0x95, 0x5d, 0x86, 0x0e, 0x1b, 0xac, 0xb2, 0xea, 0x41, 0xd0, 0xf8, 0xf7, + 0x82, 0xc8, 0xb0, 0x2e, 0x00, 0x16, 0xce, 0xc9, +}; +static const unsigned char kat1882_addin0[] = { + 0xbe, 0xeb, 0x14, 0x8c, 0xa4, 0x71, 0x84, 0x20, 0x21, 0xde, 0xfc, 0x36, + 0x5c, 0xbb, 0x57, 0x09, 0xbb, 0xbf, 0x70, 0xe1, 0x21, 0x3c, 0xe6, 0xff, + 0xe6, 0x0d, 0xb0, 0xce, 0xaf, 0x9e, 0xac, 0xec, +}; +static const unsigned char kat1882_addin1[] = { + 0x8e, 0x81, 0xc7, 0xec, 0xaf, 0xc3, 0x65, 0xa3, 0x20, 0xc4, 0xad, 0xea, + 0x72, 0x94, 0x3e, 0x1b, 0xb0, 0xee, 0xab, 0x84, 0xee, 0x0e, 0x37, 0xd2, + 0xa4, 0x9e, 0x6b, 0xf0, 0xa5, 0x2d, 0xb1, 0xa4, +}; +static const unsigned char kat1882_retbits[] = { + 0x9b, 0x4d, 0xfc, 0x68, 0x35, 0xa9, 0xf6, 0x4d, 0x77, 0x80, 0xf4, 0x74, + 0xd2, 0xb6, 0xe1, 0xdc, 0xfc, 0x77, 0x42, 0x3c, 0x4a, 0xb0, 0x3f, 0x3e, + 0xb5, 0xfd, 0x2a, 0x50, 0x52, 0xdf, 0x3f, 0x71, 0x9d, 0x1d, 0x54, 0x8e, + 0x3e, 0x5a, 0x2c, 0xd5, 0x0b, 0x8a, 0x49, 0xa1, 0x80, 0xa3, 0xb3, 0xa2, + 0xfe, 0x26, 0xa1, 0xfe, 0xae, 0x15, 0xa9, 0xf7, 0x5a, 0x81, 0xd7, 0xa1, + 0x8a, 0xa7, 0x74, 0xe4, +}; +static const struct drbg_kat_pr_false kat1882_t = { + 6, kat1882_entropyin, kat1882_nonce, kat1882_persstr, + kat1882_entropyinreseed, kat1882_addinreseed, kat1882_addin0, + kat1882_addin1, kat1882_retbits +}; +static const struct drbg_kat kat1882 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1882_t +}; + +static const unsigned char kat1883_entropyin[] = { + 0xa7, 0xc9, 0x04, 0x01, 0xea, 0xd7, 0xcd, 0x97, 0x84, 0xf6, 0x05, 0x19, + 0x7d, 0x5e, 0xd8, 0xbd, 0xae, 0x93, 0xf3, 0x5d, 0x39, 0x0e, 0xd4, 0xf9, +}; +static const unsigned char kat1883_nonce[] = { + 0xe0, 0xbd, 0x52, 0xa2, 0xcc, 0xa3, 0xba, 0x7c, 0x6c, 0xf8, 0xf6, 0x5f, + 0xe6, 0x52, 0x1f, 0xb6, +}; +static const unsigned char kat1883_persstr[] = {0}; +static const unsigned char kat1883_entropyinreseed[] = { + 0xcf, 0x4b, 0x11, 0xd8, 0x27, 0x61, 0x62, 0xc2, 0xf3, 0xc6, 0x3d, 0x38, + 0x6f, 0x9f, 0xaa, 0x34, 0xe3, 0x42, 0x00, 0x70, 0xc7, 0xa1, 0x09, 0x45, +}; +static const unsigned char kat1883_addinreseed[] = { + 0x21, 0xeb, 0x57, 0x52, 0x5a, 0x88, 0xdf, 0x1b, 0x5a, 0xf4, 0xf5, 0xf1, + 0x8a, 0x2e, 0x5f, 0x2a, 0x4c, 0x8a, 0x18, 0x79, 0xd7, 0x6d, 0xe9, 0xb9, + 0x2a, 0xc7, 0x53, 0xec, 0x92, 0x4c, 0x02, 0x40, +}; +static const unsigned char kat1883_addin0[] = { + 0xc5, 0x45, 0x36, 0x1d, 0xde, 0xe8, 0x15, 0x0a, 0xe9, 0x8a, 0x9d, 0xe9, + 0xff, 0x46, 0x96, 0x5f, 0xb4, 0x26, 0x16, 0xea, 0x85, 0xfe, 0x25, 0x8a, + 0x34, 0xdc, 0x26, 0x26, 0x73, 0x2a, 0xbf, 0x73, +}; +static const unsigned char kat1883_addin1[] = { + 0x37, 0x4c, 0x4d, 0x96, 0x63, 0x98, 0x1b, 0x1f, 0xcf, 0xf2, 0x2f, 0xb2, + 0xbf, 0xfa, 0xf2, 0xa5, 0x76, 0x6f, 0x7f, 0xb7, 0x3a, 0xe7, 0x6b, 0x1f, + 0x4a, 0x49, 0xe7, 0x6c, 0x41, 0xbf, 0xe0, 0xef, +}; +static const unsigned char kat1883_retbits[] = { + 0x7a, 0xff, 0x3b, 0xbc, 0xad, 0x25, 0xd1, 0xc6, 0x8b, 0x3b, 0xa0, 0xdf, + 0xd4, 0xc3, 0x40, 0x95, 0xd5, 0xd6, 0x56, 0x37, 0x4c, 0xb0, 0xd6, 0x69, + 0xcb, 0x32, 0x42, 0xc6, 0x10, 0xa6, 0x97, 0xa7, 0xe2, 0xf3, 0x6c, 0xe9, + 0x41, 0x6a, 0xf2, 0xc8, 0x5f, 0xe0, 0x21, 0xf4, 0xa5, 0xeb, 0x24, 0xec, + 0x72, 0xe9, 0xcd, 0xa1, 0x45, 0x9c, 0xb9, 0x12, 0xea, 0xb0, 0x6a, 0x0d, + 0xbe, 0xf3, 0xa5, 0x01, +}; +static const struct drbg_kat_pr_false kat1883_t = { + 7, kat1883_entropyin, kat1883_nonce, kat1883_persstr, + kat1883_entropyinreseed, kat1883_addinreseed, kat1883_addin0, + kat1883_addin1, kat1883_retbits +}; +static const struct drbg_kat kat1883 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1883_t +}; + +static const unsigned char kat1884_entropyin[] = { + 0x53, 0x81, 0x4b, 0x3e, 0x96, 0x45, 0xf1, 0x77, 0xbf, 0xb2, 0xcc, 0xf7, + 0x58, 0xf1, 0x2e, 0xc1, 0x45, 0xf6, 0x79, 0xed, 0x85, 0x62, 0x21, 0xeb, +}; +static const unsigned char kat1884_nonce[] = { + 0x76, 0xbd, 0x9b, 0x8e, 0xd5, 0x36, 0xd3, 0x8d, 0xf7, 0xcb, 0x49, 0x6d, + 0xb5, 0xb1, 0x56, 0x23, +}; +static const unsigned char kat1884_persstr[] = {0}; +static const unsigned char kat1884_entropyinreseed[] = { + 0x7a, 0xb2, 0x0a, 0xdb, 0xd8, 0x27, 0x52, 0xb2, 0x29, 0x2d, 0x9f, 0x17, + 0xae, 0xcb, 0x01, 0xdb, 0xb2, 0x7c, 0x31, 0x49, 0xab, 0xa6, 0xc6, 0xdf, +}; +static const unsigned char kat1884_addinreseed[] = { + 0x82, 0xea, 0xed, 0x42, 0xfd, 0x77, 0xe6, 0xad, 0x8f, 0x81, 0xe7, 0xbf, + 0x18, 0x21, 0x69, 0x1c, 0x2c, 0x00, 0xba, 0xb9, 0x4c, 0x85, 0x7a, 0x6e, + 0xc0, 0x2c, 0x2e, 0xbc, 0xd3, 0xfc, 0xa2, 0xee, +}; +static const unsigned char kat1884_addin0[] = { + 0x1b, 0x52, 0xb0, 0x27, 0x04, 0x42, 0xfe, 0x5b, 0x87, 0xde, 0x64, 0x0f, + 0xa8, 0x60, 0x74, 0x7f, 0xb3, 0x01, 0x94, 0xa9, 0xe9, 0xd1, 0x88, 0x95, + 0x00, 0x2a, 0x3d, 0x37, 0x8f, 0x54, 0x33, 0x5c, +}; +static const unsigned char kat1884_addin1[] = { + 0x93, 0x54, 0xed, 0x25, 0x8f, 0x0e, 0x59, 0x95, 0xb4, 0xae, 0x13, 0x82, + 0x67, 0x1f, 0xe0, 0x65, 0x92, 0x4b, 0x54, 0x77, 0x66, 0x8d, 0x88, 0xe4, + 0xeb, 0xce, 0x36, 0x2b, 0x2d, 0x94, 0x93, 0xec, +}; +static const unsigned char kat1884_retbits[] = { + 0x3b, 0x24, 0x61, 0x32, 0x28, 0x82, 0x08, 0x85, 0x34, 0x5e, 0xc8, 0xeb, + 0x70, 0x3b, 0x34, 0xc1, 0x9b, 0xab, 0x15, 0x03, 0xb4, 0x24, 0xd6, 0x5e, + 0xa3, 0x72, 0xe8, 0x3f, 0x2a, 0xbd, 0xe7, 0xbc, 0x74, 0xb0, 0x3b, 0xdd, + 0x43, 0xa9, 0x02, 0x65, 0xa1, 0x79, 0xc4, 0x34, 0xac, 0x7d, 0x93, 0x69, + 0xed, 0x0b, 0x5e, 0x8a, 0xde, 0xa6, 0x84, 0x04, 0x79, 0x74, 0xaa, 0x89, + 0x47, 0xdd, 0xea, 0x88, +}; +static const struct drbg_kat_pr_false kat1884_t = { + 8, kat1884_entropyin, kat1884_nonce, kat1884_persstr, + kat1884_entropyinreseed, kat1884_addinreseed, kat1884_addin0, + kat1884_addin1, kat1884_retbits +}; +static const struct drbg_kat kat1884 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1884_t +}; + +static const unsigned char kat1885_entropyin[] = { + 0xb7, 0xdb, 0xea, 0x9d, 0x0a, 0x65, 0x43, 0x06, 0x95, 0xf4, 0x5c, 0x58, + 0xad, 0xc6, 0x68, 0x96, 0x77, 0xd3, 0xb3, 0xf3, 0x24, 0x69, 0xb9, 0x4a, +}; +static const unsigned char kat1885_nonce[] = { + 0x12, 0x5e, 0x64, 0x85, 0xef, 0x1d, 0x71, 0xd4, 0x9c, 0x64, 0x17, 0x6f, + 0x5f, 0xbe, 0x13, 0xf6, +}; +static const unsigned char kat1885_persstr[] = {0}; +static const unsigned char kat1885_entropyinreseed[] = { + 0x86, 0x0c, 0x03, 0x16, 0x47, 0xa2, 0xe0, 0x22, 0xc3, 0x45, 0x74, 0x5a, + 0x84, 0xef, 0x63, 0x60, 0x34, 0x14, 0xe1, 0x1e, 0x64, 0xb3, 0xed, 0x32, +}; +static const unsigned char kat1885_addinreseed[] = { + 0x7e, 0x00, 0xca, 0xaa, 0xfd, 0x46, 0x46, 0x45, 0x34, 0x72, 0x5c, 0x0d, + 0x99, 0xb5, 0x26, 0x54, 0x56, 0xa5, 0xd6, 0x59, 0xb7, 0x63, 0xdd, 0xf6, + 0x79, 0x81, 0x34, 0x34, 0x1f, 0xa6, 0xa4, 0xbb, +}; +static const unsigned char kat1885_addin0[] = { + 0xfd, 0xd9, 0x13, 0xfc, 0xac, 0x4d, 0x32, 0xb2, 0x31, 0x30, 0x3a, 0x65, + 0x36, 0x84, 0x24, 0x85, 0x5d, 0xcb, 0xba, 0x49, 0xc1, 0xe5, 0xf5, 0x18, + 0x13, 0xa6, 0x25, 0x36, 0x53, 0xd9, 0x94, 0x47, +}; +static const unsigned char kat1885_addin1[] = { + 0x14, 0xdd, 0x4b, 0x3b, 0xbf, 0x47, 0x6c, 0xc7, 0x70, 0xdc, 0x3a, 0xa0, + 0x01, 0xd5, 0x47, 0x3c, 0xc9, 0x9a, 0x77, 0xb4, 0xcb, 0x13, 0xd5, 0x1f, + 0x6e, 0xfc, 0x37, 0x0a, 0xdf, 0x4b, 0x90, 0x2b, +}; +static const unsigned char kat1885_retbits[] = { + 0xa2, 0xb1, 0x5d, 0x99, 0x84, 0xdd, 0x5c, 0xb0, 0x0a, 0x33, 0x39, 0xed, + 0x0a, 0xfb, 0x3c, 0xf3, 0xb9, 0x0d, 0xfc, 0xca, 0x4c, 0xdf, 0x87, 0x8a, + 0x6e, 0xfa, 0xcc, 0x9e, 0xe5, 0x48, 0xb8, 0x31, 0x8c, 0x20, 0xfb, 0xc6, + 0x14, 0x4a, 0x0f, 0xa8, 0xdb, 0x23, 0x00, 0x8c, 0xb2, 0xfc, 0xfb, 0x09, + 0x48, 0xf0, 0x4b, 0x17, 0xc6, 0x5c, 0xc6, 0x84, 0xde, 0x92, 0x72, 0x45, + 0xff, 0xed, 0xd5, 0x5a, +}; +static const struct drbg_kat_pr_false kat1885_t = { + 9, kat1885_entropyin, kat1885_nonce, kat1885_persstr, + kat1885_entropyinreseed, kat1885_addinreseed, kat1885_addin0, + kat1885_addin1, kat1885_retbits +}; +static const struct drbg_kat kat1885 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1885_t +}; + +static const unsigned char kat1886_entropyin[] = { + 0x06, 0xa9, 0xbc, 0xdd, 0x5b, 0xd8, 0x71, 0x33, 0x9b, 0xb8, 0xf0, 0x36, + 0xee, 0xb1, 0xa3, 0x2e, 0x1c, 0x65, 0x53, 0xc9, 0x90, 0xc6, 0x26, 0xd6, +}; +static const unsigned char kat1886_nonce[] = { + 0x43, 0xb3, 0x0d, 0x3c, 0x04, 0xd8, 0x7d, 0xea, 0xa6, 0x23, 0x71, 0x8a, + 0xdd, 0x57, 0xd8, 0xc6, +}; +static const unsigned char kat1886_persstr[] = {0}; +static const unsigned char kat1886_entropyinreseed[] = { + 0x31, 0x0a, 0x06, 0x48, 0xfa, 0x83, 0x81, 0x31, 0xe8, 0xbc, 0xbb, 0xed, + 0x29, 0xde, 0x0f, 0x39, 0x7d, 0xa2, 0x98, 0x11, 0x37, 0xe1, 0xf1, 0x4d, +}; +static const unsigned char kat1886_addinreseed[] = { + 0x23, 0x0d, 0xeb, 0xdf, 0x54, 0x93, 0x52, 0x13, 0xae, 0x5b, 0x3c, 0x19, + 0x75, 0x8d, 0xf9, 0x2b, 0x8d, 0x63, 0x59, 0x69, 0xcb, 0x3c, 0xcb, 0x80, + 0x29, 0x38, 0xcc, 0xf9, 0x3b, 0x3b, 0xcb, 0x92, +}; +static const unsigned char kat1886_addin0[] = { + 0xb5, 0xbb, 0x93, 0xab, 0x9d, 0xa9, 0xcc, 0x5b, 0x57, 0x71, 0x2c, 0x64, + 0x9e, 0x46, 0xe9, 0x9d, 0xc9, 0x2b, 0x63, 0x4b, 0x18, 0x28, 0xf9, 0x09, + 0xe9, 0x8e, 0xb2, 0x38, 0xbd, 0xd4, 0x61, 0xc8, +}; +static const unsigned char kat1886_addin1[] = { + 0x48, 0x95, 0x70, 0x9c, 0x29, 0xd4, 0x02, 0xdf, 0x99, 0x9e, 0x43, 0x01, + 0xfc, 0xee, 0x4a, 0xbe, 0x5a, 0xc5, 0xc6, 0xab, 0x13, 0xbf, 0x31, 0xab, + 0x5d, 0xe0, 0x94, 0x6e, 0x75, 0x03, 0x97, 0x02, +}; +static const unsigned char kat1886_retbits[] = { + 0x5e, 0xf5, 0x16, 0x1c, 0xa1, 0xa5, 0xa9, 0xac, 0x4f, 0x9e, 0x93, 0x0f, + 0x3b, 0xce, 0x13, 0xd4, 0x12, 0x2c, 0xe2, 0x7e, 0x0d, 0xb9, 0x33, 0x9e, + 0x05, 0xe1, 0x03, 0x8e, 0x35, 0x89, 0xe3, 0x00, 0xbf, 0x72, 0x3d, 0x50, + 0x37, 0x01, 0x61, 0xb7, 0x5d, 0x5a, 0xf0, 0x49, 0x0c, 0x74, 0xba, 0x3c, + 0xb9, 0x4e, 0x4a, 0xcf, 0x10, 0x50, 0xd4, 0x77, 0x5d, 0xa9, 0x6c, 0xfa, + 0x9d, 0x10, 0x89, 0x86, +}; +static const struct drbg_kat_pr_false kat1886_t = { + 10, kat1886_entropyin, kat1886_nonce, kat1886_persstr, + kat1886_entropyinreseed, kat1886_addinreseed, kat1886_addin0, + kat1886_addin1, kat1886_retbits +}; +static const struct drbg_kat kat1886 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1886_t +}; + +static const unsigned char kat1887_entropyin[] = { + 0xe3, 0x2c, 0xce, 0x1d, 0x96, 0x22, 0xf8, 0xf0, 0x45, 0x08, 0xe3, 0x66, + 0x1e, 0x63, 0x5c, 0x46, 0x62, 0x6e, 0x00, 0x70, 0xf6, 0x56, 0x07, 0x99, +}; +static const unsigned char kat1887_nonce[] = { + 0xd4, 0x89, 0xae, 0x9d, 0x83, 0x01, 0x1e, 0x32, 0x39, 0xb1, 0xd1, 0x11, + 0xff, 0x89, 0xc2, 0x0b, +}; +static const unsigned char kat1887_persstr[] = {0}; +static const unsigned char kat1887_entropyinreseed[] = { + 0x84, 0x91, 0xcb, 0x65, 0x4e, 0x46, 0x4b, 0x0e, 0xbc, 0xf0, 0x37, 0x29, + 0x71, 0xdc, 0xb0, 0x87, 0x62, 0xa7, 0xdf, 0x82, 0x84, 0xda, 0xf9, 0x0e, +}; +static const unsigned char kat1887_addinreseed[] = { + 0x69, 0x46, 0x2c, 0x9f, 0x14, 0x86, 0x28, 0xdf, 0x54, 0x32, 0x4e, 0xc8, + 0x54, 0xde, 0x81, 0x6e, 0x5f, 0xa6, 0x36, 0x6f, 0x8f, 0x5e, 0x0a, 0x3a, + 0xde, 0x9c, 0x12, 0x5e, 0x2d, 0x88, 0xc1, 0x2b, +}; +static const unsigned char kat1887_addin0[] = { + 0x53, 0x5b, 0x2c, 0xc4, 0x72, 0x65, 0x21, 0xb0, 0xa6, 0x6f, 0xb8, 0x0f, + 0xce, 0xcc, 0x8c, 0x0c, 0x6a, 0xa7, 0xab, 0x30, 0xb9, 0x35, 0x61, 0x81, + 0xeb, 0xbd, 0xce, 0xdf, 0xd9, 0xb7, 0x5f, 0x76, +}; +static const unsigned char kat1887_addin1[] = { + 0x4e, 0x08, 0x13, 0x99, 0xa2, 0xb7, 0x78, 0x4d, 0x9e, 0x85, 0xdf, 0xdf, + 0x48, 0x8b, 0x6a, 0xc9, 0x06, 0x51, 0x8d, 0x71, 0xd1, 0x43, 0x93, 0x37, + 0xa5, 0x0b, 0x6b, 0xe9, 0x37, 0x09, 0x64, 0xd8, +}; +static const unsigned char kat1887_retbits[] = { + 0xab, 0x2e, 0x87, 0xa3, 0xd6, 0x5f, 0x42, 0x2f, 0xfd, 0x67, 0x71, 0x5c, + 0x98, 0x5b, 0xb5, 0xbc, 0x77, 0xdc, 0x15, 0x05, 0x51, 0xe2, 0x42, 0xeb, + 0x9d, 0xf0, 0x98, 0xbc, 0x6b, 0x83, 0x54, 0xe0, 0xb3, 0xb4, 0x69, 0x8b, + 0xe9, 0xb1, 0x94, 0x6b, 0xf0, 0xee, 0xe7, 0x58, 0x17, 0x7b, 0x6e, 0x51, + 0x07, 0x0b, 0x24, 0xbb, 0xa0, 0x07, 0x93, 0x62, 0x23, 0xca, 0xfe, 0x98, + 0x1f, 0x3c, 0x64, 0xd8, +}; +static const struct drbg_kat_pr_false kat1887_t = { + 11, kat1887_entropyin, kat1887_nonce, kat1887_persstr, + kat1887_entropyinreseed, kat1887_addinreseed, kat1887_addin0, + kat1887_addin1, kat1887_retbits +}; +static const struct drbg_kat kat1887 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1887_t +}; + +static const unsigned char kat1888_entropyin[] = { + 0xdc, 0x0d, 0x12, 0x49, 0xfe, 0x31, 0x36, 0x4f, 0x9b, 0x7c, 0x96, 0x13, + 0xd9, 0xd7, 0x18, 0x0d, 0x59, 0x82, 0x96, 0x8a, 0xf8, 0xab, 0x60, 0x85, +}; +static const unsigned char kat1888_nonce[] = { + 0x4d, 0x44, 0xaa, 0xf1, 0x79, 0xb4, 0x35, 0x44, 0x25, 0x9b, 0xd4, 0xd3, + 0x1d, 0xf3, 0xc3, 0x82, +}; +static const unsigned char kat1888_persstr[] = {0}; +static const unsigned char kat1888_entropyinreseed[] = { + 0x54, 0x19, 0x61, 0xc1, 0xcf, 0x4c, 0xbc, 0x04, 0x28, 0xc3, 0xc9, 0x3f, + 0xda, 0x65, 0xa8, 0x37, 0x43, 0x2b, 0xf8, 0xa4, 0xbb, 0xc9, 0xcd, 0xd9, +}; +static const unsigned char kat1888_addinreseed[] = { + 0x39, 0x57, 0xb3, 0xac, 0x7e, 0xd3, 0x5b, 0x46, 0x87, 0x5f, 0xc5, 0x79, + 0xc5, 0xfd, 0x5e, 0x91, 0x50, 0x52, 0x02, 0x48, 0x16, 0xf9, 0x12, 0xb7, + 0x1f, 0x7d, 0xe9, 0xb0, 0xb3, 0x1e, 0xda, 0x38, +}; +static const unsigned char kat1888_addin0[] = { + 0x20, 0xcc, 0x95, 0xb4, 0xd7, 0xb1, 0x87, 0x89, 0xad, 0x6c, 0xab, 0x1f, + 0x7a, 0x44, 0x4d, 0x7e, 0xcd, 0x1a, 0x33, 0x06, 0x70, 0x0d, 0x08, 0x46, + 0xe3, 0x52, 0xef, 0xf1, 0x5a, 0xed, 0xb7, 0xc9, +}; +static const unsigned char kat1888_addin1[] = { + 0xb4, 0x0a, 0x26, 0xda, 0x42, 0xe3, 0xd6, 0x6a, 0x8e, 0x02, 0xff, 0x16, + 0xbc, 0x91, 0xe5, 0x25, 0xc8, 0x29, 0x90, 0x26, 0xbe, 0x41, 0xd4, 0x68, + 0xa4, 0x4b, 0xf9, 0x3d, 0x74, 0xbc, 0xab, 0xa3, +}; +static const unsigned char kat1888_retbits[] = { + 0x28, 0x89, 0x96, 0xd0, 0x1d, 0x28, 0x2f, 0x1c, 0xc2, 0x80, 0x6f, 0x85, + 0x7b, 0xe6, 0x69, 0xd9, 0x11, 0xa6, 0xbf, 0x9a, 0xc4, 0xcc, 0x59, 0xab, + 0x58, 0xac, 0xbe, 0x7c, 0xd9, 0x71, 0x3d, 0xea, 0xcf, 0xfb, 0x7a, 0x2c, + 0xb3, 0x90, 0xc8, 0xf2, 0xdf, 0xf4, 0x42, 0x79, 0x2b, 0x5d, 0x63, 0x08, + 0x9a, 0x33, 0x4b, 0xf4, 0x3d, 0x2d, 0x1f, 0x46, 0x25, 0xf5, 0x09, 0x94, + 0x81, 0x35, 0x42, 0xa9, +}; +static const struct drbg_kat_pr_false kat1888_t = { + 12, kat1888_entropyin, kat1888_nonce, kat1888_persstr, + kat1888_entropyinreseed, kat1888_addinreseed, kat1888_addin0, + kat1888_addin1, kat1888_retbits +}; +static const struct drbg_kat kat1888 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1888_t +}; + +static const unsigned char kat1889_entropyin[] = { + 0xe4, 0x2d, 0x17, 0x7d, 0x30, 0xf0, 0x63, 0x21, 0xd1, 0xae, 0x17, 0x98, + 0x99, 0x3f, 0x24, 0x80, 0x58, 0x4b, 0x4a, 0x6d, 0x3d, 0xde, 0xd3, 0x54, +}; +static const unsigned char kat1889_nonce[] = { + 0x10, 0x9f, 0x51, 0x55, 0xc6, 0xd2, 0xac, 0x7b, 0x8c, 0x96, 0x63, 0x83, + 0x61, 0x39, 0xe7, 0xe4, +}; +static const unsigned char kat1889_persstr[] = {0}; +static const unsigned char kat1889_entropyinreseed[] = { + 0xcb, 0x4d, 0x71, 0xb6, 0xd6, 0xc3, 0x5b, 0x91, 0xff, 0x4c, 0x50, 0xfd, + 0x88, 0xd8, 0xf4, 0xe8, 0xdd, 0x51, 0xc0, 0xc1, 0x33, 0x25, 0xae, 0xd5, +}; +static const unsigned char kat1889_addinreseed[] = { + 0xd7, 0xf7, 0x30, 0xcc, 0x17, 0xf7, 0x0a, 0xe6, 0x47, 0x75, 0xfd, 0x59, + 0x3b, 0xe4, 0x3b, 0x9e, 0xeb, 0x41, 0xdb, 0x8c, 0x58, 0x80, 0x4d, 0x4f, + 0xaf, 0x8b, 0x4a, 0x57, 0xe8, 0xe9, 0xa1, 0x65, +}; +static const unsigned char kat1889_addin0[] = { + 0x03, 0xc0, 0xd2, 0xf7, 0x2a, 0xb6, 0x6a, 0x18, 0xdb, 0x41, 0x09, 0xdf, + 0x3f, 0xcc, 0xd6, 0xa6, 0x17, 0x41, 0x74, 0xa4, 0x53, 0xde, 0x17, 0x93, + 0x1c, 0x87, 0x85, 0x4f, 0xd1, 0x2e, 0x4a, 0xb5, +}; +static const unsigned char kat1889_addin1[] = { + 0x9d, 0xfa, 0xd6, 0xa1, 0xb1, 0x58, 0xa1, 0xad, 0x24, 0xb4, 0x66, 0x99, + 0x9e, 0x16, 0x9b, 0x32, 0x0b, 0x47, 0x24, 0xf5, 0x8d, 0x80, 0xed, 0x89, + 0xad, 0xe8, 0xd2, 0x6b, 0x67, 0xa0, 0x15, 0x67, +}; +static const unsigned char kat1889_retbits[] = { + 0xbe, 0x7d, 0x61, 0x8e, 0xa4, 0x77, 0x3e, 0x3e, 0xf5, 0xee, 0x2a, 0x9d, + 0x9a, 0xb2, 0x65, 0x2f, 0xbe, 0x5c, 0x8c, 0xc7, 0x65, 0x7a, 0xbe, 0x11, + 0x18, 0x16, 0x08, 0x5a, 0xc3, 0x5d, 0x7f, 0x09, 0x07, 0x40, 0x9e, 0x00, + 0x41, 0x37, 0x7e, 0x87, 0xf9, 0xe5, 0x8c, 0xf6, 0xf1, 0x5a, 0xaa, 0x58, + 0x3f, 0x84, 0xe7, 0x7d, 0x74, 0x81, 0xd5, 0x12, 0x84, 0xa3, 0x59, 0xe2, + 0x31, 0xdf, 0x77, 0x67, +}; +static const struct drbg_kat_pr_false kat1889_t = { + 13, kat1889_entropyin, kat1889_nonce, kat1889_persstr, + kat1889_entropyinreseed, kat1889_addinreseed, kat1889_addin0, + kat1889_addin1, kat1889_retbits +}; +static const struct drbg_kat kat1889 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1889_t +}; + +static const unsigned char kat1890_entropyin[] = { + 0xb5, 0x7e, 0xac, 0x6d, 0x16, 0x7d, 0xca, 0x49, 0x3c, 0xf1, 0xbd, 0x58, + 0x17, 0x26, 0x58, 0x0b, 0xbc, 0x14, 0x2c, 0xae, 0xe0, 0xa9, 0x31, 0x2a, +}; +static const unsigned char kat1890_nonce[] = { + 0x5d, 0x6f, 0x1f, 0x44, 0x43, 0x8a, 0x31, 0x2c, 0x19, 0x4d, 0xe7, 0x40, + 0xe5, 0xe7, 0x2c, 0xc4, +}; +static const unsigned char kat1890_persstr[] = {0}; +static const unsigned char kat1890_entropyinreseed[] = { + 0xc9, 0xb3, 0xf4, 0x74, 0x0e, 0x50, 0x76, 0x27, 0x8b, 0x23, 0x02, 0x10, + 0x07, 0x39, 0xc9, 0xaa, 0x1a, 0xb3, 0xa2, 0xac, 0x82, 0xf4, 0x62, 0x87, +}; +static const unsigned char kat1890_addinreseed[] = { + 0x27, 0xf6, 0xb7, 0x1b, 0xa6, 0x0b, 0x62, 0xff, 0x29, 0xd2, 0xba, 0xaf, + 0x5b, 0xbf, 0xbe, 0x34, 0x5a, 0xc5, 0x95, 0x5c, 0x80, 0xce, 0x1c, 0x21, + 0x35, 0x5c, 0x25, 0x6f, 0x69, 0x26, 0x63, 0xa3, +}; +static const unsigned char kat1890_addin0[] = { + 0xaf, 0xde, 0xaa, 0x87, 0x96, 0x5c, 0x4e, 0xa3, 0x3a, 0xff, 0x1c, 0x32, + 0xce, 0x37, 0x06, 0x52, 0xd4, 0x3e, 0x89, 0xf2, 0xff, 0x4b, 0x63, 0x21, + 0x5d, 0x84, 0xd0, 0xf7, 0x6a, 0xc0, 0x97, 0xc7, +}; +static const unsigned char kat1890_addin1[] = { + 0x5c, 0x7e, 0xad, 0x30, 0xd4, 0x42, 0xc9, 0x57, 0xfb, 0xde, 0xb5, 0xc1, + 0xe3, 0xe9, 0x3c, 0x09, 0x4d, 0x96, 0x47, 0xb0, 0x08, 0x44, 0xb1, 0x23, + 0x97, 0x86, 0xc8, 0x84, 0x84, 0xd2, 0xfb, 0xe5, +}; +static const unsigned char kat1890_retbits[] = { + 0x95, 0x1b, 0xd3, 0x58, 0xbc, 0x14, 0x57, 0x01, 0x1b, 0x34, 0x31, 0x74, + 0x78, 0xeb, 0x82, 0xa6, 0xbf, 0x61, 0x8e, 0x34, 0x2c, 0x45, 0x05, 0x03, + 0x05, 0x59, 0xba, 0xf2, 0xee, 0x2a, 0xf8, 0xa2, 0x6b, 0x4e, 0xa2, 0x0b, + 0xb5, 0x4e, 0xc2, 0x57, 0x84, 0x7e, 0x05, 0xe5, 0x61, 0x5e, 0xf4, 0x18, + 0xff, 0x8b, 0x88, 0xfb, 0x68, 0x1b, 0x36, 0xa4, 0xe5, 0xeb, 0xcb, 0x81, + 0x7e, 0xbd, 0x6e, 0xb6, +}; +static const struct drbg_kat_pr_false kat1890_t = { + 14, kat1890_entropyin, kat1890_nonce, kat1890_persstr, + kat1890_entropyinreseed, kat1890_addinreseed, kat1890_addin0, + kat1890_addin1, kat1890_retbits +}; +static const struct drbg_kat kat1890 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat1890_t +}; + +static const unsigned char kat1891_entropyin[] = { + 0xf4, 0x93, 0x6a, 0x73, 0x2f, 0xdf, 0x56, 0x68, 0x57, 0x7d, 0xb7, 0x9e, + 0x7f, 0x93, 0xe9, 0x1c, 0x4c, 0xda, 0x1d, 0x10, 0xb5, 0x78, 0x1b, 0x5e, +}; +static const unsigned char kat1891_nonce[] = { + 0xc6, 0x0b, 0x0b, 0x05, 0x60, 0x01, 0x52, 0xf0, 0x33, 0xf0, 0x56, 0xdc, + 0xe7, 0xaf, 0x79, 0x15, +}; +static const unsigned char kat1891_persstr[] = { + 0x6f, 0x0c, 0xf0, 0x12, 0xd0, 0xe4, 0x95, 0x05, 0x1f, 0xd6, 0xc2, 0xc9, + 0x6e, 0x58, 0x19, 0x25, 0x96, 0x02, 0x71, 0xb3, 0x59, 0xa7, 0x05, 0xa6, + 0x50, 0x75, 0xbc, 0x5e, 0xc1, 0x6d, 0xdc, 0x6e, +}; +static const unsigned char kat1891_entropyinreseed[] = { + 0xbf, 0x21, 0xff, 0x36, 0x30, 0xb1, 0x6a, 0xce, 0xf8, 0x76, 0x02, 0xba, + 0xdb, 0x5a, 0xc2, 0xd6, 0x40, 0x24, 0x1e, 0xb4, 0x81, 0xa0, 0xc8, 0xd9, +}; +static const unsigned char kat1891_addinreseed[] = {0}; +static const unsigned char kat1891_addin0[] = {0}; +static const unsigned char kat1891_addin1[] = {0}; +static const unsigned char kat1891_retbits[] = { + 0x18, 0x93, 0x1f, 0xb1, 0xdc, 0x25, 0x5d, 0xde, 0xa2, 0xe6, 0xd4, 0x35, + 0x1e, 0xb6, 0xf3, 0x29, 0xc2, 0x34, 0xe1, 0xd4, 0x96, 0x20, 0x60, 0xac, + 0xed, 0xdf, 0x0c, 0x9f, 0xa9, 0x95, 0x09, 0xcb, 0xc6, 0x4c, 0x04, 0x22, + 0x58, 0xf8, 0xda, 0xf5, 0x7c, 0x12, 0x0d, 0x7a, 0x2d, 0xac, 0xa9, 0x5f, + 0x40, 0x73, 0x4f, 0x59, 0x20, 0x6e, 0x69, 0x94, 0xaa, 0x63, 0x95, 0xcd, + 0x80, 0xa1, 0xfd, 0x54, +}; +static const struct drbg_kat_pr_false kat1891_t = { + 0, kat1891_entropyin, kat1891_nonce, kat1891_persstr, + kat1891_entropyinreseed, kat1891_addinreseed, kat1891_addin0, + kat1891_addin1, kat1891_retbits +}; +static const struct drbg_kat kat1891 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1891_t +}; + +static const unsigned char kat1892_entropyin[] = { + 0x3d, 0x18, 0x5c, 0x30, 0x29, 0xd1, 0x29, 0x2e, 0x8d, 0xc0, 0x74, 0x8a, + 0xfd, 0x68, 0x1c, 0x9e, 0x8c, 0x41, 0x07, 0x77, 0x74, 0x21, 0x7b, 0x9c, +}; +static const unsigned char kat1892_nonce[] = { + 0xec, 0x68, 0xb8, 0xb7, 0xda, 0x23, 0x8e, 0xdc, 0x37, 0x82, 0x4f, 0x55, + 0xeb, 0xff, 0x29, 0xf8, +}; +static const unsigned char kat1892_persstr[] = { + 0x80, 0x5c, 0xc9, 0x41, 0xc1, 0xdd, 0xc1, 0xa4, 0xae, 0x3a, 0x1f, 0xf9, + 0xda, 0x01, 0x45, 0xe5, 0xc2, 0x56, 0xfd, 0x63, 0xdf, 0xec, 0xc5, 0x94, + 0x8e, 0x0e, 0x24, 0xa9, 0x2d, 0x8a, 0xdb, 0xcb, +}; +static const unsigned char kat1892_entropyinreseed[] = { + 0xb4, 0x5d, 0x6e, 0x41, 0x03, 0x35, 0xda, 0x94, 0xa1, 0x78, 0x41, 0x67, + 0x65, 0x79, 0xde, 0x67, 0x78, 0x1e, 0xcb, 0xa2, 0x57, 0x13, 0x13, 0x85, +}; +static const unsigned char kat1892_addinreseed[] = {0}; +static const unsigned char kat1892_addin0[] = {0}; +static const unsigned char kat1892_addin1[] = {0}; +static const unsigned char kat1892_retbits[] = { + 0xfb, 0x95, 0x2f, 0x3f, 0x62, 0x3e, 0xf2, 0x83, 0x3a, 0x4d, 0x81, 0x13, + 0x01, 0x91, 0x74, 0xb9, 0x12, 0x7f, 0x84, 0xfa, 0x59, 0x3c, 0x38, 0x0d, + 0x03, 0xad, 0x11, 0x64, 0x3d, 0x5a, 0x35, 0x73, 0x58, 0x48, 0xd9, 0x30, + 0x09, 0xb4, 0x58, 0xef, 0x41, 0x64, 0x3c, 0x26, 0x66, 0xda, 0x6d, 0xeb, + 0x94, 0x32, 0x39, 0x8c, 0x4e, 0x7e, 0xc2, 0x48, 0x0b, 0x9c, 0x7b, 0x87, + 0x9c, 0x09, 0x9f, 0xd1, +}; +static const struct drbg_kat_pr_false kat1892_t = { + 1, kat1892_entropyin, kat1892_nonce, kat1892_persstr, + kat1892_entropyinreseed, kat1892_addinreseed, kat1892_addin0, + kat1892_addin1, kat1892_retbits +}; +static const struct drbg_kat kat1892 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1892_t +}; + +static const unsigned char kat1893_entropyin[] = { + 0xc3, 0x36, 0xf7, 0xc8, 0x12, 0x1c, 0x4f, 0x6d, 0xf2, 0x06, 0xa9, 0x4e, + 0xfc, 0x5d, 0xc1, 0x30, 0xe8, 0xef, 0x83, 0xdd, 0x48, 0x7e, 0xcd, 0x56, +}; +static const unsigned char kat1893_nonce[] = { + 0x61, 0x5b, 0x07, 0x9c, 0x73, 0x80, 0x12, 0xa3, 0xda, 0x7f, 0xe8, 0xe9, + 0x0c, 0x4d, 0x8a, 0xc5, +}; +static const unsigned char kat1893_persstr[] = { + 0x8b, 0xca, 0x6f, 0x65, 0xed, 0xd7, 0x4f, 0x3c, 0x88, 0xeb, 0x56, 0x8e, + 0x2f, 0xad, 0xcd, 0x1c, 0x7d, 0x3d, 0x71, 0x7a, 0xbf, 0x80, 0xa2, 0x65, + 0xdb, 0x35, 0x90, 0xe0, 0xfe, 0x50, 0xf5, 0xf7, +}; +static const unsigned char kat1893_entropyinreseed[] = { + 0x1a, 0x02, 0xbd, 0x0c, 0xc1, 0x58, 0xc9, 0x18, 0x6c, 0xfc, 0xd4, 0xcb, + 0x15, 0x32, 0x86, 0x24, 0xd3, 0x7b, 0xe1, 0xe8, 0x96, 0xf0, 0xbd, 0x0f, +}; +static const unsigned char kat1893_addinreseed[] = {0}; +static const unsigned char kat1893_addin0[] = {0}; +static const unsigned char kat1893_addin1[] = {0}; +static const unsigned char kat1893_retbits[] = { + 0xb4, 0x46, 0x31, 0x16, 0x49, 0xe6, 0x16, 0xfd, 0xf4, 0x08, 0x8d, 0x4f, + 0x9f, 0xd5, 0x09, 0x72, 0x2b, 0x3d, 0x99, 0x75, 0xf9, 0x39, 0x65, 0x82, + 0x25, 0x8b, 0x98, 0x92, 0xa6, 0xcb, 0x5f, 0x5a, 0xb4, 0xe2, 0x61, 0xa8, + 0x15, 0x6b, 0x35, 0x22, 0x91, 0x0e, 0xfc, 0x20, 0x64, 0x54, 0x28, 0xff, + 0x3c, 0x0f, 0x65, 0x23, 0x28, 0x4e, 0x5c, 0x56, 0x29, 0xf9, 0x74, 0x61, + 0x3d, 0x49, 0x42, 0xb7, +}; +static const struct drbg_kat_pr_false kat1893_t = { + 2, kat1893_entropyin, kat1893_nonce, kat1893_persstr, + kat1893_entropyinreseed, kat1893_addinreseed, kat1893_addin0, + kat1893_addin1, kat1893_retbits +}; +static const struct drbg_kat kat1893 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1893_t +}; + +static const unsigned char kat1894_entropyin[] = { + 0x78, 0xca, 0x16, 0xd7, 0x7c, 0x8f, 0x03, 0x75, 0x92, 0xdd, 0x30, 0xf5, + 0xe3, 0xe0, 0xdf, 0x30, 0xcb, 0xb8, 0xb5, 0xc4, 0x25, 0xf8, 0x43, 0xa2, +}; +static const unsigned char kat1894_nonce[] = { + 0xf7, 0xe8, 0x0e, 0xd2, 0x76, 0xaf, 0x5f, 0xa1, 0xcb, 0x96, 0x7f, 0x33, + 0x1f, 0x12, 0x98, 0x26, +}; +static const unsigned char kat1894_persstr[] = { + 0x7c, 0xf5, 0x34, 0x2f, 0x37, 0x1d, 0x56, 0xb3, 0x1e, 0x70, 0xb6, 0xc5, + 0x52, 0xaa, 0x96, 0xeb, 0x00, 0x00, 0x9c, 0x15, 0xa5, 0xe0, 0xe3, 0xeb, + 0x8f, 0x6b, 0x9c, 0xea, 0x4c, 0x96, 0xeb, 0x5f, +}; +static const unsigned char kat1894_entropyinreseed[] = { + 0x4d, 0x58, 0x2b, 0x73, 0xb5, 0x4f, 0x07, 0xe3, 0xb5, 0x98, 0x2f, 0x12, + 0xb7, 0xe9, 0x38, 0x88, 0x9a, 0x72, 0x0e, 0xd0, 0x38, 0x9c, 0x76, 0xa1, +}; +static const unsigned char kat1894_addinreseed[] = {0}; +static const unsigned char kat1894_addin0[] = {0}; +static const unsigned char kat1894_addin1[] = {0}; +static const unsigned char kat1894_retbits[] = { + 0x91, 0x2a, 0x9f, 0xa8, 0x5b, 0xef, 0xf2, 0xec, 0xd1, 0xb8, 0xd5, 0x27, + 0x80, 0xd5, 0xa5, 0x67, 0x4e, 0x2b, 0xf2, 0x2d, 0xa5, 0xf9, 0xf2, 0x60, + 0x43, 0x26, 0x91, 0xeb, 0xbd, 0x43, 0x2c, 0x82, 0x75, 0x19, 0x68, 0xd2, + 0x25, 0xbd, 0x06, 0xc6, 0x81, 0xaf, 0x89, 0xac, 0xd2, 0xba, 0x48, 0x3a, + 0x37, 0x21, 0x4a, 0xbf, 0xdb, 0xe4, 0xaa, 0x88, 0x19, 0xc6, 0x46, 0x32, + 0xe3, 0xb4, 0x04, 0x08, +}; +static const struct drbg_kat_pr_false kat1894_t = { + 3, kat1894_entropyin, kat1894_nonce, kat1894_persstr, + kat1894_entropyinreseed, kat1894_addinreseed, kat1894_addin0, + kat1894_addin1, kat1894_retbits +}; +static const struct drbg_kat kat1894 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1894_t +}; + +static const unsigned char kat1895_entropyin[] = { + 0xff, 0x51, 0x15, 0xcc, 0xbc, 0x5f, 0xc4, 0x15, 0xdd, 0x57, 0xab, 0xa3, + 0x10, 0x2d, 0x23, 0xf6, 0xf1, 0x19, 0xaa, 0xc1, 0x4d, 0xc9, 0x5d, 0x1b, +}; +static const unsigned char kat1895_nonce[] = { + 0xd8, 0xa0, 0xc6, 0xe2, 0xcb, 0xd0, 0xc0, 0xb3, 0x97, 0x9d, 0x9a, 0xfa, + 0xa3, 0x23, 0x62, 0xa3, +}; +static const unsigned char kat1895_persstr[] = { + 0x41, 0x17, 0x45, 0x7f, 0x12, 0x56, 0xdb, 0x46, 0x94, 0x31, 0x66, 0xc8, + 0xcf, 0xe0, 0x3c, 0xcb, 0x40, 0xa4, 0x33, 0x36, 0x9f, 0x0b, 0xd3, 0xbb, + 0x2e, 0xee, 0xe2, 0x8d, 0xcc, 0xe4, 0x4b, 0x65, +}; +static const unsigned char kat1895_entropyinreseed[] = { + 0x11, 0xbf, 0x85, 0xb6, 0x34, 0x8b, 0xce, 0xb8, 0x63, 0xb6, 0xa7, 0x52, + 0xcb, 0x65, 0x15, 0x72, 0xa4, 0xe7, 0x50, 0xb1, 0xd1, 0x01, 0x07, 0x80, +}; +static const unsigned char kat1895_addinreseed[] = {0}; +static const unsigned char kat1895_addin0[] = {0}; +static const unsigned char kat1895_addin1[] = {0}; +static const unsigned char kat1895_retbits[] = { + 0xab, 0xbb, 0xa8, 0x3d, 0x02, 0xfa, 0x0b, 0xad, 0x5f, 0xf6, 0xac, 0xe6, + 0xa9, 0x2a, 0xab, 0x07, 0xb3, 0xaa, 0x2f, 0xaa, 0xc6, 0xc5, 0xfe, 0xcb, + 0x46, 0xaf, 0x4c, 0xb4, 0x39, 0x04, 0x22, 0x7f, 0xd9, 0xf3, 0x43, 0x22, + 0xb3, 0xac, 0x90, 0x29, 0x82, 0xb2, 0x3b, 0x55, 0x80, 0x46, 0x58, 0xba, + 0xd3, 0xf9, 0x75, 0x67, 0x40, 0x51, 0xba, 0xf5, 0x54, 0x06, 0x57, 0x85, + 0xec, 0x5b, 0xad, 0x80, +}; +static const struct drbg_kat_pr_false kat1895_t = { + 4, kat1895_entropyin, kat1895_nonce, kat1895_persstr, + kat1895_entropyinreseed, kat1895_addinreseed, kat1895_addin0, + kat1895_addin1, kat1895_retbits +}; +static const struct drbg_kat kat1895 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1895_t +}; + +static const unsigned char kat1896_entropyin[] = { + 0x9e, 0xb4, 0x24, 0x9f, 0x70, 0x60, 0xd6, 0xc3, 0xee, 0x57, 0x4b, 0x63, + 0xf8, 0x4d, 0x4d, 0xd7, 0x75, 0x90, 0x38, 0xd3, 0x2d, 0x15, 0xb2, 0x4b, +}; +static const unsigned char kat1896_nonce[] = { + 0x64, 0x91, 0xe9, 0xd1, 0x4f, 0xa7, 0xed, 0xd4, 0x02, 0x49, 0xfb, 0x55, + 0x92, 0xad, 0x8e, 0xbc, +}; +static const unsigned char kat1896_persstr[] = { + 0xca, 0x30, 0x44, 0xf4, 0x39, 0x13, 0xbe, 0x03, 0x45, 0xa7, 0x4a, 0x99, + 0x88, 0x73, 0x33, 0x2c, 0xa3, 0x62, 0x32, 0x82, 0xfd, 0x03, 0xb0, 0x0b, + 0xce, 0x0c, 0xfd, 0x97, 0x8e, 0x0d, 0x9b, 0x1d, +}; +static const unsigned char kat1896_entropyinreseed[] = { + 0xf6, 0x58, 0x34, 0x6d, 0xa8, 0x25, 0x95, 0x7f, 0x1d, 0x14, 0x29, 0xdc, + 0x32, 0xd7, 0x25, 0x18, 0x46, 0xfe, 0xbe, 0x1c, 0x3a, 0xe6, 0xcc, 0x3b, +}; +static const unsigned char kat1896_addinreseed[] = {0}; +static const unsigned char kat1896_addin0[] = {0}; +static const unsigned char kat1896_addin1[] = {0}; +static const unsigned char kat1896_retbits[] = { + 0x02, 0x7f, 0x5c, 0xbe, 0x58, 0x8d, 0xd3, 0x9c, 0x52, 0x69, 0x1e, 0x52, + 0x05, 0x03, 0x98, 0x13, 0xa5, 0x74, 0xd4, 0x54, 0x34, 0x13, 0xd0, 0x92, + 0xaf, 0x0d, 0x0b, 0x75, 0x42, 0xfb, 0x25, 0x52, 0xa7, 0xf5, 0x83, 0xd1, + 0x96, 0x00, 0xb8, 0x97, 0xcc, 0xe9, 0xe8, 0xac, 0x1c, 0x74, 0x4f, 0xa4, + 0x99, 0xfe, 0x0d, 0x70, 0x4e, 0x89, 0x7d, 0x76, 0xd8, 0x7a, 0xeb, 0xf4, + 0xfd, 0xc9, 0x4d, 0x19, +}; +static const struct drbg_kat_pr_false kat1896_t = { + 5, kat1896_entropyin, kat1896_nonce, kat1896_persstr, + kat1896_entropyinreseed, kat1896_addinreseed, kat1896_addin0, + kat1896_addin1, kat1896_retbits +}; +static const struct drbg_kat kat1896 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1896_t +}; + +static const unsigned char kat1897_entropyin[] = { + 0xf4, 0x18, 0xd3, 0xa2, 0xd3, 0xa1, 0x04, 0xa3, 0x25, 0xf8, 0x2e, 0xa1, + 0x7e, 0x2b, 0x03, 0xe3, 0xdc, 0x47, 0x1f, 0xaa, 0xe7, 0x83, 0x41, 0x3a, +}; +static const unsigned char kat1897_nonce[] = { + 0x41, 0xfd, 0xda, 0xcc, 0x56, 0xc8, 0x18, 0x07, 0xb4, 0x2e, 0x44, 0x12, + 0x88, 0xda, 0x65, 0x78, +}; +static const unsigned char kat1897_persstr[] = { + 0x95, 0x5f, 0x18, 0x80, 0x23, 0xda, 0x79, 0xf9, 0x4f, 0x3c, 0xfd, 0xe7, + 0x1e, 0xdf, 0xf2, 0xec, 0x5a, 0x6b, 0xab, 0x24, 0x92, 0x5f, 0x52, 0x6f, + 0xc0, 0x2d, 0x82, 0x08, 0x71, 0xce, 0x4d, 0x9e, +}; +static const unsigned char kat1897_entropyinreseed[] = { + 0x39, 0x24, 0xcd, 0xe4, 0x36, 0x83, 0x61, 0x4e, 0xb4, 0x39, 0x6f, 0xce, + 0x38, 0xd6, 0x5a, 0x49, 0x8f, 0x87, 0xe6, 0xc3, 0x74, 0xfc, 0x23, 0x08, +}; +static const unsigned char kat1897_addinreseed[] = {0}; +static const unsigned char kat1897_addin0[] = {0}; +static const unsigned char kat1897_addin1[] = {0}; +static const unsigned char kat1897_retbits[] = { + 0x97, 0x5c, 0xb8, 0xc8, 0x17, 0xac, 0x90, 0x27, 0xe5, 0x4a, 0xb9, 0xef, + 0xfc, 0xb6, 0xf8, 0x21, 0xf4, 0x68, 0x8f, 0x9c, 0xfc, 0xdf, 0x5c, 0xf9, + 0xc0, 0xf5, 0x84, 0xa5, 0xb5, 0x12, 0x23, 0x60, 0x01, 0x68, 0x1b, 0xb9, + 0x85, 0xd9, 0x13, 0xd5, 0x23, 0x6b, 0xed, 0x8d, 0x53, 0x6a, 0xf0, 0x5e, + 0xeb, 0xee, 0x87, 0xcd, 0xc7, 0x75, 0x6a, 0xf9, 0x8b, 0x22, 0x99, 0x01, + 0x26, 0x40, 0x89, 0x7e, +}; +static const struct drbg_kat_pr_false kat1897_t = { + 6, kat1897_entropyin, kat1897_nonce, kat1897_persstr, + kat1897_entropyinreseed, kat1897_addinreseed, kat1897_addin0, + kat1897_addin1, kat1897_retbits +}; +static const struct drbg_kat kat1897 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1897_t +}; + +static const unsigned char kat1898_entropyin[] = { + 0xb9, 0x7a, 0x78, 0xcc, 0x24, 0x88, 0x61, 0x4d, 0xed, 0xcc, 0x62, 0x17, + 0x06, 0xae, 0x80, 0x96, 0xa0, 0x8a, 0x27, 0xed, 0x23, 0x23, 0x72, 0xea, +}; +static const unsigned char kat1898_nonce[] = { + 0x68, 0x5b, 0x6c, 0x16, 0xe3, 0xd3, 0xf7, 0x25, 0x68, 0x64, 0x44, 0x50, + 0xc8, 0x11, 0xca, 0xfa, +}; +static const unsigned char kat1898_persstr[] = { + 0x4a, 0xce, 0x80, 0xd8, 0xc0, 0xbb, 0xb9, 0xef, 0x5e, 0x1a, 0x6b, 0xc2, + 0x4a, 0x7b, 0x7f, 0x66, 0xfd, 0x86, 0xc9, 0x3f, 0x95, 0xfc, 0x7c, 0xf1, + 0x43, 0x08, 0x38, 0x3c, 0x82, 0x72, 0xee, 0x6a, +}; +static const unsigned char kat1898_entropyinreseed[] = { + 0x9a, 0xac, 0xfa, 0xf8, 0x11, 0xcd, 0xcd, 0xa8, 0x65, 0x5c, 0x6a, 0xf2, + 0xee, 0xfb, 0x24, 0xca, 0xed, 0x4a, 0x90, 0x68, 0xd1, 0xf6, 0xf5, 0x58, +}; +static const unsigned char kat1898_addinreseed[] = {0}; +static const unsigned char kat1898_addin0[] = {0}; +static const unsigned char kat1898_addin1[] = {0}; +static const unsigned char kat1898_retbits[] = { + 0x40, 0xef, 0x28, 0x7a, 0xc7, 0x53, 0x7c, 0xf3, 0x70, 0x1b, 0x75, 0xbc, + 0x67, 0x0a, 0xdd, 0x6e, 0xb9, 0x41, 0xe9, 0x35, 0x8b, 0xe8, 0x49, 0xd4, + 0xb7, 0xfb, 0xdf, 0x4c, 0x2d, 0x4c, 0xa9, 0x4c, 0x03, 0xc5, 0xa8, 0x01, + 0xb3, 0x0a, 0x9e, 0x9a, 0x74, 0x41, 0xc4, 0x67, 0x18, 0x3d, 0xb8, 0x18, + 0xfd, 0x9e, 0xea, 0xca, 0x9b, 0x97, 0x8b, 0xfc, 0x17, 0x93, 0xc1, 0x91, + 0x42, 0x7d, 0xa2, 0x81, +}; +static const struct drbg_kat_pr_false kat1898_t = { + 7, kat1898_entropyin, kat1898_nonce, kat1898_persstr, + kat1898_entropyinreseed, kat1898_addinreseed, kat1898_addin0, + kat1898_addin1, kat1898_retbits +}; +static const struct drbg_kat kat1898 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1898_t +}; + +static const unsigned char kat1899_entropyin[] = { + 0xf2, 0x07, 0xc8, 0xa0, 0xc2, 0x7c, 0x3e, 0x3f, 0x22, 0xc6, 0xbb, 0x8a, + 0x5b, 0xea, 0xd3, 0x57, 0x61, 0x40, 0xdd, 0x7d, 0x8b, 0x60, 0x32, 0x46, +}; +static const unsigned char kat1899_nonce[] = { + 0x64, 0x80, 0x60, 0x75, 0x08, 0xaf, 0xa5, 0xa0, 0xd4, 0xcf, 0xc0, 0x91, + 0x2f, 0xb9, 0xf7, 0x15, +}; +static const unsigned char kat1899_persstr[] = { + 0x54, 0x1c, 0x21, 0xc0, 0xf8, 0x5f, 0x0f, 0x4c, 0x58, 0xfd, 0x04, 0x45, + 0x2a, 0x7a, 0xe4, 0x11, 0x72, 0x30, 0xef, 0x2f, 0xea, 0x31, 0x6e, 0xd5, + 0xe0, 0x0b, 0x74, 0x22, 0x31, 0x29, 0x15, 0x6e, +}; +static const unsigned char kat1899_entropyinreseed[] = { + 0xae, 0xdf, 0x55, 0xe5, 0xcd, 0xcc, 0x12, 0x9e, 0x7a, 0x6d, 0xf9, 0x34, + 0x63, 0x68, 0x00, 0x59, 0xa0, 0xf7, 0x3b, 0xf9, 0x11, 0x76, 0xf6, 0x9f, +}; +static const unsigned char kat1899_addinreseed[] = {0}; +static const unsigned char kat1899_addin0[] = {0}; +static const unsigned char kat1899_addin1[] = {0}; +static const unsigned char kat1899_retbits[] = { + 0x7f, 0x88, 0x33, 0x0f, 0xa0, 0xe6, 0x80, 0x39, 0x22, 0xf9, 0xc8, 0x50, + 0xab, 0xe5, 0xa8, 0x3b, 0xc1, 0xd7, 0xc9, 0xd5, 0xe4, 0x7d, 0x17, 0x5c, + 0xc0, 0xdb, 0x22, 0x71, 0xcd, 0x72, 0xfc, 0xe9, 0xcc, 0xc2, 0x05, 0xdf, + 0x33, 0x1b, 0x8f, 0x39, 0x85, 0x8f, 0x77, 0x8f, 0x73, 0x3a, 0x4b, 0x70, + 0x92, 0xd7, 0x80, 0x5d, 0x27, 0xad, 0x5f, 0x49, 0x1c, 0xb2, 0xa3, 0x4d, + 0x79, 0x82, 0xc8, 0x09, +}; +static const struct drbg_kat_pr_false kat1899_t = { + 8, kat1899_entropyin, kat1899_nonce, kat1899_persstr, + kat1899_entropyinreseed, kat1899_addinreseed, kat1899_addin0, + kat1899_addin1, kat1899_retbits +}; +static const struct drbg_kat kat1899 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1899_t +}; + +static const unsigned char kat1900_entropyin[] = { + 0x62, 0x79, 0xa3, 0xa5, 0x21, 0x24, 0x46, 0x5e, 0x50, 0x6a, 0x00, 0x16, + 0x6b, 0x31, 0x85, 0x20, 0x88, 0x46, 0x25, 0xf3, 0xd1, 0xf5, 0xce, 0xfd, +}; +static const unsigned char kat1900_nonce[] = { + 0x59, 0xa0, 0xc8, 0xeb, 0x4d, 0xcf, 0x7c, 0x54, 0xff, 0xaa, 0x39, 0x9d, + 0xac, 0x76, 0x13, 0x65, +}; +static const unsigned char kat1900_persstr[] = { + 0xaf, 0x79, 0x29, 0x4e, 0x87, 0xc6, 0xdf, 0x70, 0x5e, 0xc4, 0xcb, 0xd0, + 0xf4, 0xac, 0xc0, 0x5b, 0xef, 0xc4, 0x06, 0xae, 0x7a, 0x52, 0xda, 0xca, + 0x1c, 0xd4, 0xa5, 0xf7, 0xec, 0x56, 0xa9, 0x89, +}; +static const unsigned char kat1900_entropyinreseed[] = { + 0x53, 0x20, 0xe0, 0xc8, 0x24, 0xb9, 0x2e, 0x9d, 0xb9, 0x22, 0xf2, 0x8d, + 0xed, 0x30, 0x93, 0x6b, 0xb1, 0xa0, 0xf6, 0x71, 0x70, 0x2b, 0xda, 0xcd, +}; +static const unsigned char kat1900_addinreseed[] = {0}; +static const unsigned char kat1900_addin0[] = {0}; +static const unsigned char kat1900_addin1[] = {0}; +static const unsigned char kat1900_retbits[] = { + 0x15, 0x27, 0x43, 0xc5, 0xd4, 0xa7, 0xf9, 0xc5, 0x72, 0x6d, 0x5d, 0x5a, + 0x9f, 0xde, 0x8c, 0x1e, 0x63, 0x8f, 0x2f, 0xe6, 0x40, 0x97, 0x28, 0xf2, + 0xa6, 0xe8, 0xa9, 0x5f, 0x30, 0x7c, 0xd2, 0xa8, 0x8e, 0x22, 0xd1, 0x0f, + 0x51, 0x2c, 0xf3, 0xea, 0x4b, 0x38, 0x45, 0x39, 0x63, 0x59, 0xe1, 0x81, + 0xcc, 0xfb, 0x02, 0x72, 0xf9, 0x1b, 0xf0, 0x79, 0x5a, 0x85, 0x63, 0x9a, + 0xe5, 0xce, 0xf0, 0x14, +}; +static const struct drbg_kat_pr_false kat1900_t = { + 9, kat1900_entropyin, kat1900_nonce, kat1900_persstr, + kat1900_entropyinreseed, kat1900_addinreseed, kat1900_addin0, + kat1900_addin1, kat1900_retbits +}; +static const struct drbg_kat kat1900 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1900_t +}; + +static const unsigned char kat1901_entropyin[] = { + 0xaf, 0x2b, 0xe0, 0xee, 0xc2, 0xc1, 0x0b, 0xa5, 0x7f, 0xf2, 0xef, 0xec, + 0xa5, 0xe5, 0xa6, 0x35, 0x0d, 0x6b, 0x73, 0x4b, 0xc2, 0x19, 0xf2, 0x60, +}; +static const unsigned char kat1901_nonce[] = { + 0x99, 0xed, 0xa9, 0x5f, 0x1b, 0xbd, 0x4c, 0x07, 0x93, 0xbc, 0x34, 0xb7, + 0xfc, 0x1e, 0x23, 0x97, +}; +static const unsigned char kat1901_persstr[] = { + 0x4d, 0x61, 0x63, 0x64, 0xd5, 0x2a, 0x6f, 0x94, 0xdf, 0x53, 0xe9, 0x5c, + 0x55, 0x04, 0xf1, 0xc5, 0xf5, 0x6d, 0x1b, 0x4d, 0x03, 0x0d, 0xab, 0xae, + 0xdc, 0xb4, 0xbc, 0xf1, 0xc8, 0x1e, 0xe5, 0xdc, +}; +static const unsigned char kat1901_entropyinreseed[] = { + 0x63, 0xef, 0xa8, 0x99, 0x65, 0xdb, 0x28, 0x1c, 0xaa, 0xc5, 0x2c, 0x1d, + 0xe6, 0x2d, 0x1f, 0x53, 0xd9, 0x9d, 0xe8, 0x80, 0xe6, 0x5a, 0xb6, 0x2e, +}; +static const unsigned char kat1901_addinreseed[] = {0}; +static const unsigned char kat1901_addin0[] = {0}; +static const unsigned char kat1901_addin1[] = {0}; +static const unsigned char kat1901_retbits[] = { + 0xe9, 0x78, 0xda, 0x1f, 0x41, 0x49, 0xe4, 0x30, 0x9f, 0x43, 0x21, 0x3e, + 0x31, 0x3e, 0x58, 0x60, 0xe1, 0xf1, 0x68, 0x3a, 0xfa, 0x97, 0x49, 0xa9, + 0x38, 0xae, 0x08, 0x25, 0x2b, 0xf8, 0x48, 0x9e, 0xb3, 0x0d, 0x24, 0x72, + 0x3d, 0x19, 0xe4, 0x91, 0xfc, 0xd2, 0xe0, 0x84, 0x4b, 0x16, 0x97, 0xde, + 0xc3, 0x82, 0x3e, 0x1f, 0xb6, 0xfe, 0x80, 0x7c, 0x7f, 0x66, 0xf6, 0xe8, + 0x03, 0xe7, 0xfe, 0xc3, +}; +static const struct drbg_kat_pr_false kat1901_t = { + 10, kat1901_entropyin, kat1901_nonce, kat1901_persstr, + kat1901_entropyinreseed, kat1901_addinreseed, kat1901_addin0, + kat1901_addin1, kat1901_retbits +}; +static const struct drbg_kat kat1901 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1901_t +}; + +static const unsigned char kat1902_entropyin[] = { + 0xd3, 0x97, 0xa9, 0xd8, 0x0f, 0x77, 0xca, 0xf5, 0xbe, 0xcb, 0x65, 0xb1, + 0x24, 0xf3, 0x78, 0x8e, 0xbb, 0xec, 0x7c, 0x3a, 0xdf, 0xa6, 0xa8, 0xbf, +}; +static const unsigned char kat1902_nonce[] = { + 0x06, 0x0b, 0x85, 0x6f, 0xa8, 0xdb, 0x25, 0x7b, 0x16, 0x3f, 0xfa, 0x8e, + 0x1c, 0x1a, 0xd2, 0xed, +}; +static const unsigned char kat1902_persstr[] = { + 0x04, 0x53, 0x33, 0x2d, 0xfd, 0xfd, 0x39, 0xa9, 0x74, 0xb9, 0x5d, 0x84, + 0x91, 0xba, 0x57, 0xc0, 0x34, 0x76, 0x2d, 0x63, 0xdc, 0x0a, 0x46, 0xe6, + 0x5e, 0x06, 0x6c, 0x7d, 0xf6, 0xd9, 0xef, 0x91, +}; +static const unsigned char kat1902_entropyinreseed[] = { + 0x5b, 0xf4, 0x45, 0x5e, 0xf3, 0x08, 0x62, 0xd8, 0xc2, 0x42, 0xba, 0x07, + 0xb1, 0x2c, 0x7a, 0x9c, 0xf2, 0x55, 0xe1, 0x67, 0x3c, 0x5c, 0x3b, 0x98, +}; +static const unsigned char kat1902_addinreseed[] = {0}; +static const unsigned char kat1902_addin0[] = {0}; +static const unsigned char kat1902_addin1[] = {0}; +static const unsigned char kat1902_retbits[] = { + 0x41, 0x13, 0xac, 0xc3, 0xc1, 0x55, 0xe9, 0x6d, 0xa2, 0x8d, 0xc1, 0xc5, + 0xaa, 0x36, 0x9a, 0xd5, 0xd1, 0xbc, 0x4a, 0x83, 0x93, 0x12, 0xd6, 0xf7, + 0x9d, 0x6e, 0x15, 0x14, 0x69, 0x6f, 0x9a, 0x2c, 0x52, 0x31, 0x57, 0x7d, + 0xce, 0x79, 0xe8, 0xcc, 0x9d, 0x94, 0x9c, 0xbb, 0xd3, 0x03, 0x39, 0xc4, + 0xe5, 0x25, 0xd0, 0x17, 0x10, 0x6c, 0x4b, 0x2f, 0x64, 0xb5, 0x48, 0xc5, + 0x53, 0x74, 0xaf, 0x6c, +}; +static const struct drbg_kat_pr_false kat1902_t = { + 11, kat1902_entropyin, kat1902_nonce, kat1902_persstr, + kat1902_entropyinreseed, kat1902_addinreseed, kat1902_addin0, + kat1902_addin1, kat1902_retbits +}; +static const struct drbg_kat kat1902 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1902_t +}; + +static const unsigned char kat1903_entropyin[] = { + 0xbd, 0xa8, 0x8e, 0x80, 0x55, 0x70, 0xfb, 0xbe, 0x77, 0xb9, 0xd5, 0x3f, + 0xe5, 0xbc, 0x44, 0x39, 0x72, 0xa0, 0x09, 0x4e, 0x54, 0x36, 0x2c, 0x6d, +}; +static const unsigned char kat1903_nonce[] = { + 0x83, 0xac, 0x35, 0xef, 0x07, 0xaf, 0x29, 0x1d, 0x6e, 0x46, 0xd8, 0xa9, + 0xe4, 0xa2, 0xf4, 0x0a, +}; +static const unsigned char kat1903_persstr[] = { + 0xb5, 0xff, 0x03, 0x68, 0x54, 0xfe, 0x4b, 0x3f, 0x67, 0x4b, 0x11, 0x31, + 0x73, 0x3b, 0x8a, 0xaf, 0x11, 0xec, 0xa1, 0xdb, 0xb2, 0xbf, 0x68, 0x34, + 0xf3, 0xd2, 0x36, 0xe6, 0xe0, 0xff, 0xaf, 0x43, +}; +static const unsigned char kat1903_entropyinreseed[] = { + 0xed, 0xd2, 0xf0, 0xdb, 0x20, 0xf4, 0x31, 0x3c, 0xe3, 0x6d, 0xec, 0x00, + 0xa8, 0x5f, 0xf6, 0xf7, 0x0e, 0x00, 0xd5, 0x06, 0xf8, 0xdb, 0xad, 0x68, +}; +static const unsigned char kat1903_addinreseed[] = {0}; +static const unsigned char kat1903_addin0[] = {0}; +static const unsigned char kat1903_addin1[] = {0}; +static const unsigned char kat1903_retbits[] = { + 0x97, 0xb4, 0x5b, 0xc5, 0x6e, 0x89, 0xd4, 0x0d, 0x83, 0x46, 0xe8, 0xfe, + 0x3c, 0x3e, 0x3c, 0x9b, 0x23, 0x0f, 0x19, 0x25, 0x6e, 0x01, 0xc4, 0x03, + 0x64, 0x09, 0x0e, 0x30, 0x81, 0xdb, 0x19, 0x22, 0x30, 0x46, 0x5b, 0x8e, + 0xf1, 0x3b, 0x9d, 0x58, 0xe2, 0xd6, 0x21, 0x8a, 0xaa, 0xdb, 0xc4, 0xaf, + 0xd6, 0xf9, 0x1b, 0x83, 0x57, 0x3e, 0x6c, 0xf7, 0xf0, 0x57, 0x29, 0x9d, + 0x75, 0x82, 0x6d, 0x66, +}; +static const struct drbg_kat_pr_false kat1903_t = { + 12, kat1903_entropyin, kat1903_nonce, kat1903_persstr, + kat1903_entropyinreseed, kat1903_addinreseed, kat1903_addin0, + kat1903_addin1, kat1903_retbits +}; +static const struct drbg_kat kat1903 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1903_t +}; + +static const unsigned char kat1904_entropyin[] = { + 0x28, 0x80, 0xd8, 0x06, 0xb5, 0xdc, 0xa2, 0x2e, 0x2c, 0xeb, 0x0e, 0x24, + 0x2b, 0xd0, 0xa5, 0xd6, 0x47, 0x58, 0xf9, 0x8b, 0x70, 0x32, 0xfa, 0x5d, +}; +static const unsigned char kat1904_nonce[] = { + 0x0f, 0x48, 0x11, 0xc8, 0xf4, 0x94, 0x2e, 0x69, 0xbe, 0x1e, 0x7d, 0x15, + 0x4c, 0x73, 0x06, 0x72, +}; +static const unsigned char kat1904_persstr[] = { + 0x63, 0x2a, 0x70, 0xfd, 0xf2, 0xb9, 0xce, 0xe1, 0xf4, 0x5a, 0x3d, 0x18, + 0xa9, 0x67, 0x2d, 0xdf, 0xf9, 0xb2, 0x2a, 0x01, 0xb8, 0x25, 0x26, 0x2e, + 0x64, 0x1e, 0x7c, 0xc6, 0xe0, 0xc9, 0xca, 0x46, +}; +static const unsigned char kat1904_entropyinreseed[] = { + 0x3b, 0x4f, 0x70, 0x5e, 0x1f, 0x47, 0x04, 0xb2, 0x19, 0xb2, 0x65, 0xe8, + 0x35, 0x9c, 0x16, 0x7d, 0x17, 0x12, 0xb8, 0x3e, 0x56, 0x00, 0x00, 0x6a, +}; +static const unsigned char kat1904_addinreseed[] = {0}; +static const unsigned char kat1904_addin0[] = {0}; +static const unsigned char kat1904_addin1[] = {0}; +static const unsigned char kat1904_retbits[] = { + 0x25, 0x38, 0xeb, 0xdd, 0x9c, 0x73, 0x92, 0x19, 0x3a, 0xa2, 0xdf, 0x2e, + 0xfe, 0x8a, 0x9c, 0xe1, 0xc5, 0x91, 0xb1, 0xe6, 0x5e, 0x1b, 0x8d, 0x08, + 0x37, 0xa6, 0xc1, 0x82, 0x6d, 0xd9, 0x86, 0x00, 0x1c, 0xd1, 0x69, 0xa8, + 0x5d, 0x66, 0xfc, 0x6c, 0xb6, 0x72, 0xd4, 0xda, 0xa3, 0xd2, 0xab, 0x98, + 0xc3, 0xdc, 0xde, 0x71, 0x04, 0x7c, 0xe7, 0x3d, 0xb4, 0xb6, 0x90, 0xea, + 0x29, 0xd3, 0x20, 0xdb, +}; +static const struct drbg_kat_pr_false kat1904_t = { + 13, kat1904_entropyin, kat1904_nonce, kat1904_persstr, + kat1904_entropyinreseed, kat1904_addinreseed, kat1904_addin0, + kat1904_addin1, kat1904_retbits +}; +static const struct drbg_kat kat1904 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1904_t +}; + +static const unsigned char kat1905_entropyin[] = { + 0x20, 0x46, 0x34, 0x49, 0x04, 0xa1, 0xd3, 0xad, 0xbe, 0x32, 0x47, 0x66, + 0x79, 0xf6, 0xb4, 0x5b, 0xa9, 0x87, 0xeb, 0x1f, 0x9a, 0xf7, 0xa9, 0x68, +}; +static const unsigned char kat1905_nonce[] = { + 0xcf, 0xbb, 0x77, 0x61, 0xde, 0xed, 0x18, 0xfe, 0x83, 0x25, 0x0f, 0xd1, + 0x28, 0xb7, 0xd5, 0x6a, +}; +static const unsigned char kat1905_persstr[] = { + 0x20, 0x30, 0x06, 0x72, 0x46, 0xe0, 0xfc, 0x33, 0x10, 0xb4, 0x11, 0x19, + 0x5c, 0x5f, 0xba, 0x12, 0x8a, 0xa1, 0xec, 0x82, 0x30, 0x51, 0x08, 0x1a, + 0xf0, 0xad, 0x3a, 0x43, 0x32, 0x44, 0xb4, 0xb1, +}; +static const unsigned char kat1905_entropyinreseed[] = { + 0xfc, 0xd0, 0x71, 0x14, 0xa5, 0x60, 0x39, 0xf5, 0xce, 0x59, 0x1e, 0x90, + 0x7b, 0x3a, 0xf1, 0x47, 0x2b, 0x0f, 0x07, 0xc8, 0xf9, 0xad, 0x08, 0x2c, +}; +static const unsigned char kat1905_addinreseed[] = {0}; +static const unsigned char kat1905_addin0[] = {0}; +static const unsigned char kat1905_addin1[] = {0}; +static const unsigned char kat1905_retbits[] = { + 0x25, 0xfc, 0x78, 0xce, 0x65, 0xa5, 0x6f, 0x4b, 0xbc, 0x1b, 0xf3, 0xad, + 0x32, 0x71, 0x6e, 0xd1, 0xbc, 0x91, 0x7c, 0xc2, 0x1f, 0x51, 0x90, 0x84, + 0xc5, 0xff, 0x17, 0x58, 0x7a, 0x37, 0x7f, 0x2e, 0xf7, 0x83, 0x0c, 0x1e, + 0x4f, 0x7c, 0xf3, 0x81, 0xbe, 0x26, 0x0f, 0x5c, 0xb9, 0x39, 0x7c, 0x4c, + 0xca, 0xea, 0x42, 0xef, 0xc4, 0x99, 0x36, 0x3e, 0xdc, 0xc1, 0x4b, 0xfb, + 0xe5, 0x41, 0x20, 0xf2, +}; +static const struct drbg_kat_pr_false kat1905_t = { + 14, kat1905_entropyin, kat1905_nonce, kat1905_persstr, + kat1905_entropyinreseed, kat1905_addinreseed, kat1905_addin0, + kat1905_addin1, kat1905_retbits +}; +static const struct drbg_kat kat1905 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat1905_t +}; + +static const unsigned char kat1906_entropyin[] = { + 0xa6, 0x01, 0x37, 0x86, 0xb2, 0xe7, 0x8a, 0xf9, 0x7a, 0x4c, 0xcc, 0xe8, + 0xfc, 0x71, 0x1b, 0x53, 0x88, 0x69, 0xb7, 0x80, 0x09, 0x80, 0x3a, 0xc3, +}; +static const unsigned char kat1906_nonce[] = { + 0x8b, 0x97, 0x4d, 0x92, 0x3a, 0xe0, 0x96, 0xa6, 0x1f, 0x2c, 0x06, 0x3a, + 0x1b, 0xfa, 0x20, 0xc4, +}; +static const unsigned char kat1906_persstr[] = { + 0x4a, 0xfe, 0x7d, 0x39, 0xb3, 0x68, 0x50, 0xb8, 0xb1, 0x40, 0x03, 0xf3, + 0x93, 0x0f, 0xd6, 0x8a, 0xd3, 0x2d, 0xc6, 0xc4, 0x69, 0xb8, 0x18, 0x5d, + 0xba, 0x21, 0x3c, 0x77, 0x08, 0x60, 0x93, 0xf7, +}; +static const unsigned char kat1906_entropyinreseed[] = { + 0x5b, 0x75, 0x1b, 0xb1, 0x15, 0x0f, 0x67, 0x2a, 0x47, 0xc2, 0x12, 0x80, + 0x7b, 0xeb, 0x2b, 0x2d, 0xaa, 0xf5, 0xa1, 0x9c, 0x4b, 0x94, 0xcf, 0xc7, +}; +static const unsigned char kat1906_addinreseed[] = { + 0xb1, 0x11, 0xd8, 0x2a, 0xe4, 0xb6, 0x1c, 0x4e, 0x21, 0xd2, 0x7b, 0xee, + 0xd0, 0x05, 0x11, 0x01, 0x4f, 0x4c, 0xff, 0xac, 0x62, 0xd9, 0x68, 0x78, + 0x11, 0x5c, 0xd4, 0x1f, 0x83, 0xa7, 0xdb, 0xe5, +}; +static const unsigned char kat1906_addin0[] = { + 0x5a, 0x30, 0x7a, 0x08, 0x7f, 0x9c, 0x09, 0xed, 0x8e, 0x66, 0x7d, 0x1c, + 0x3c, 0xbe, 0xfa, 0x77, 0x22, 0x22, 0xd0, 0x90, 0x11, 0xf0, 0x0f, 0x80, + 0xb6, 0xf6, 0x30, 0x6e, 0x24, 0xef, 0x67, 0x47, +}; +static const unsigned char kat1906_addin1[] = { + 0xee, 0x94, 0x19, 0xfe, 0xd1, 0x45, 0xa9, 0xfc, 0xf4, 0xae, 0x56, 0x71, + 0x86, 0xcc, 0xc4, 0xff, 0xed, 0xf8, 0xbc, 0x00, 0x00, 0x8b, 0x00, 0xb6, + 0x06, 0xcc, 0xfc, 0xb8, 0xf4, 0xf3, 0xfb, 0x99, +}; +static const unsigned char kat1906_retbits[] = { + 0x60, 0xa0, 0x77, 0xb6, 0xb5, 0xc3, 0xa4, 0xf5, 0x9c, 0x6a, 0x9f, 0xce, + 0x46, 0xee, 0x8e, 0xb1, 0x6f, 0x14, 0x33, 0xb2, 0x4f, 0x99, 0x29, 0x0f, + 0x17, 0xb2, 0xfb, 0xe1, 0x89, 0x0a, 0x33, 0xb9, 0x8c, 0xd0, 0x1c, 0xd3, + 0x73, 0x50, 0x13, 0x0c, 0x30, 0x11, 0x77, 0xdf, 0x0a, 0x6f, 0x0c, 0x44, + 0xae, 0xf6, 0x30, 0x82, 0xe6, 0xa1, 0x3c, 0xc7, 0x4a, 0x2a, 0x51, 0xf8, + 0x96, 0xaa, 0x27, 0xf6, +}; +static const struct drbg_kat_pr_false kat1906_t = { + 0, kat1906_entropyin, kat1906_nonce, kat1906_persstr, + kat1906_entropyinreseed, kat1906_addinreseed, kat1906_addin0, + kat1906_addin1, kat1906_retbits +}; +static const struct drbg_kat kat1906 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1906_t +}; + +static const unsigned char kat1907_entropyin[] = { + 0xf4, 0x71, 0x50, 0xc1, 0xb3, 0xc4, 0xe1, 0xea, 0x7f, 0x19, 0x5c, 0x81, + 0xd2, 0xa4, 0xa3, 0xee, 0x9b, 0x7b, 0x59, 0xb7, 0xad, 0x55, 0x36, 0x95, +}; +static const unsigned char kat1907_nonce[] = { + 0x84, 0x9c, 0xf7, 0x0b, 0xcb, 0x23, 0x1d, 0xf7, 0xa8, 0x67, 0x30, 0x03, + 0xd6, 0x5d, 0xb5, 0xf0, +}; +static const unsigned char kat1907_persstr[] = { + 0x84, 0xb3, 0x63, 0xef, 0x90, 0xb3, 0x8a, 0xfc, 0x04, 0x2b, 0x3f, 0x81, + 0x79, 0x6b, 0x0f, 0xcf, 0x05, 0x13, 0x73, 0x9c, 0xcc, 0x33, 0x78, 0x72, + 0xf1, 0x6c, 0xdb, 0x7b, 0xa8, 0x12, 0x51, 0x47, +}; +static const unsigned char kat1907_entropyinreseed[] = { + 0xb6, 0xa9, 0x31, 0xea, 0x34, 0xee, 0x8b, 0x2b, 0x4f, 0xf4, 0x3c, 0x5c, + 0x3a, 0x32, 0x5e, 0xff, 0x1a, 0xfc, 0x74, 0xb2, 0x63, 0xc4, 0x54, 0xdb, +}; +static const unsigned char kat1907_addinreseed[] = { + 0x1e, 0xe9, 0xa0, 0x56, 0x36, 0x2f, 0xdc, 0xe4, 0x71, 0x88, 0x70, 0xe1, + 0x70, 0xd5, 0x04, 0xf0, 0xe6, 0x7d, 0x9d, 0x4f, 0x02, 0x81, 0x3a, 0x9b, + 0xc0, 0xf1, 0x74, 0xd9, 0x10, 0x6e, 0xcb, 0xfe, +}; +static const unsigned char kat1907_addin0[] = { + 0x3d, 0xd2, 0x21, 0xda, 0x19, 0xd4, 0x7b, 0x0d, 0x2b, 0xb8, 0x19, 0x7b, + 0x07, 0x06, 0xa5, 0x9e, 0xc9, 0x50, 0x99, 0xa8, 0x84, 0xc3, 0x0a, 0xe0, + 0x6f, 0xea, 0xe6, 0x8c, 0x3f, 0x17, 0x5a, 0xed, +}; +static const unsigned char kat1907_addin1[] = { + 0xe5, 0x3f, 0xcb, 0xf8, 0xab, 0x85, 0x0f, 0x16, 0x0b, 0xfc, 0xa6, 0x84, + 0xda, 0x91, 0x1f, 0x44, 0x72, 0x7c, 0x7c, 0xd1, 0x24, 0xfa, 0xed, 0x95, + 0x6f, 0xcb, 0xf0, 0x83, 0x2d, 0xeb, 0x41, 0x41, +}; +static const unsigned char kat1907_retbits[] = { + 0x1b, 0x6c, 0x79, 0x23, 0x03, 0x7a, 0x87, 0xf7, 0xa6, 0xd3, 0x32, 0x2c, + 0xb0, 0xac, 0x73, 0xbc, 0xaa, 0xd5, 0xea, 0x5b, 0x24, 0x26, 0x79, 0x6c, + 0x10, 0x5c, 0x6d, 0x6c, 0x75, 0x9e, 0x34, 0xa4, 0xd6, 0xbb, 0x8a, 0x06, + 0x49, 0x89, 0xfa, 0xc7, 0xb1, 0x19, 0x30, 0xb3, 0x77, 0x2d, 0xc0, 0x4f, + 0xea, 0x90, 0x23, 0x54, 0xbd, 0x4c, 0x81, 0x75, 0x5f, 0xad, 0x6e, 0x88, + 0x01, 0x99, 0x31, 0x3b, +}; +static const struct drbg_kat_pr_false kat1907_t = { + 1, kat1907_entropyin, kat1907_nonce, kat1907_persstr, + kat1907_entropyinreseed, kat1907_addinreseed, kat1907_addin0, + kat1907_addin1, kat1907_retbits +}; +static const struct drbg_kat kat1907 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1907_t +}; + +static const unsigned char kat1908_entropyin[] = { + 0xd9, 0x3f, 0xfd, 0xb3, 0x51, 0xc6, 0x4e, 0x5d, 0xea, 0xd1, 0x8a, 0x25, + 0x3d, 0x51, 0x85, 0x61, 0x37, 0x0f, 0x7b, 0x38, 0x8f, 0x6c, 0x14, 0xb3, +}; +static const unsigned char kat1908_nonce[] = { + 0x0b, 0x8a, 0xab, 0xbf, 0xb5, 0x0c, 0x34, 0xe2, 0xb4, 0xce, 0xf3, 0x55, + 0xcc, 0xe0, 0x2d, 0x16, +}; +static const unsigned char kat1908_persstr[] = { + 0xea, 0x28, 0x46, 0x14, 0x2e, 0xf9, 0xe5, 0xe9, 0x15, 0x15, 0x64, 0xe7, + 0xe4, 0x80, 0xda, 0x1c, 0x53, 0xfd, 0x7f, 0x71, 0x6a, 0xb4, 0x7c, 0x86, + 0xff, 0x77, 0xd2, 0xc7, 0xe4, 0x8d, 0x0a, 0x31, +}; +static const unsigned char kat1908_entropyinreseed[] = { + 0x69, 0x07, 0x69, 0x1b, 0xf8, 0x22, 0x89, 0x26, 0x82, 0xa2, 0x87, 0xa5, + 0x48, 0xb0, 0x21, 0x44, 0x01, 0xf0, 0xe2, 0x85, 0xee, 0xe2, 0x35, 0xd6, +}; +static const unsigned char kat1908_addinreseed[] = { + 0x38, 0x8e, 0x47, 0x09, 0xe2, 0x4f, 0x8c, 0xfc, 0x33, 0xfc, 0x4e, 0xb6, + 0x20, 0x00, 0x30, 0xc8, 0xe3, 0x3b, 0x75, 0x6e, 0xfd, 0x63, 0x51, 0x7a, + 0x54, 0x95, 0x82, 0xae, 0xb7, 0xab, 0xfc, 0x3c, +}; +static const unsigned char kat1908_addin0[] = { + 0xb3, 0x1f, 0x05, 0x6e, 0x61, 0x0b, 0xc0, 0x55, 0x2e, 0xcc, 0x30, 0x39, + 0xe8, 0xbc, 0xbd, 0x3a, 0x94, 0x8e, 0xda, 0xff, 0x21, 0xfa, 0x08, 0x9f, + 0x69, 0xd2, 0xd5, 0x96, 0x55, 0xef, 0x5a, 0x5e, +}; +static const unsigned char kat1908_addin1[] = { + 0x78, 0xf1, 0xf0, 0x2d, 0x50, 0xa8, 0x84, 0x17, 0xad, 0xc9, 0x57, 0x2c, + 0x44, 0x72, 0xa8, 0x6d, 0x2e, 0xf4, 0x2b, 0x37, 0x57, 0x10, 0x31, 0xce, + 0xb4, 0xa6, 0xd6, 0xa9, 0xd4, 0x8a, 0xfb, 0x78, +}; +static const unsigned char kat1908_retbits[] = { + 0xcd, 0x87, 0x91, 0x49, 0x5a, 0xbe, 0x44, 0x46, 0x5a, 0xd1, 0xf2, 0xf7, + 0x86, 0x6d, 0x18, 0x3d, 0xb8, 0x37, 0x5f, 0x1c, 0x32, 0x5b, 0xce, 0xaf, + 0xf2, 0xa5, 0xdf, 0x27, 0x9a, 0xc2, 0x62, 0xe3, 0x4b, 0x58, 0x9e, 0xb3, + 0x7c, 0x49, 0x6c, 0xdd, 0x1d, 0x17, 0xf5, 0xfe, 0x4f, 0xd9, 0x1f, 0xee, + 0xa4, 0x6e, 0x03, 0xbb, 0xc7, 0x6b, 0x94, 0x13, 0x7e, 0x12, 0x8b, 0xce, + 0xf3, 0x02, 0xae, 0x4b, +}; +static const struct drbg_kat_pr_false kat1908_t = { + 2, kat1908_entropyin, kat1908_nonce, kat1908_persstr, + kat1908_entropyinreseed, kat1908_addinreseed, kat1908_addin0, + kat1908_addin1, kat1908_retbits +}; +static const struct drbg_kat kat1908 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1908_t +}; + +static const unsigned char kat1909_entropyin[] = { + 0x5e, 0x26, 0x0d, 0xb3, 0x62, 0xdc, 0x6c, 0xa6, 0x7c, 0xee, 0xd0, 0x61, + 0x89, 0xc4, 0x8c, 0x6b, 0x56, 0x5a, 0x5a, 0x97, 0x65, 0x2b, 0xff, 0xa2, +}; +static const unsigned char kat1909_nonce[] = { + 0x93, 0x8c, 0x4e, 0x17, 0xae, 0x2d, 0x58, 0xa0, 0xea, 0xba, 0x1c, 0xb0, + 0xfb, 0x17, 0x1f, 0x5c, +}; +static const unsigned char kat1909_persstr[] = { + 0x4d, 0x07, 0x7d, 0x2d, 0xb8, 0xc1, 0xc0, 0x71, 0x37, 0xa1, 0xf0, 0x18, + 0x6d, 0xde, 0xac, 0xb9, 0xad, 0x41, 0x03, 0x13, 0xb8, 0x89, 0xf9, 0x22, + 0x13, 0xe3, 0xcb, 0xe6, 0xbc, 0xb5, 0x15, 0x33, +}; +static const unsigned char kat1909_entropyinreseed[] = { + 0x1c, 0x06, 0xf7, 0x99, 0xed, 0x96, 0xd7, 0x2f, 0x1a, 0x3b, 0xc6, 0x43, + 0x11, 0x99, 0xf8, 0x13, 0x38, 0x56, 0x51, 0x35, 0x3a, 0x58, 0x0b, 0xc2, +}; +static const unsigned char kat1909_addinreseed[] = { + 0xc5, 0x2f, 0xa7, 0xaa, 0x53, 0x00, 0xb7, 0xf9, 0x04, 0xc8, 0xa0, 0x41, + 0x4b, 0xb9, 0x52, 0xf6, 0x31, 0x15, 0x5a, 0xf1, 0x74, 0x05, 0xef, 0x95, + 0xb7, 0x7c, 0x6f, 0xfd, 0xda, 0x76, 0x94, 0x78, +}; +static const unsigned char kat1909_addin0[] = { + 0x7d, 0xc8, 0x6d, 0xd2, 0x3c, 0x8a, 0x0f, 0x39, 0x85, 0x8b, 0x6b, 0x04, + 0x21, 0x7f, 0x90, 0x8f, 0xfc, 0x80, 0x70, 0xb5, 0x06, 0xde, 0x36, 0x9a, + 0x76, 0x90, 0x85, 0x07, 0x99, 0xcd, 0x51, 0x0f, +}; +static const unsigned char kat1909_addin1[] = { + 0xb4, 0xb0, 0x1b, 0xf4, 0x68, 0x19, 0xbf, 0xb7, 0x0c, 0x69, 0x62, 0x64, + 0x3c, 0xee, 0x8e, 0x72, 0x05, 0x10, 0xb1, 0x1f, 0x54, 0x65, 0x09, 0xf0, + 0x09, 0xcf, 0xb3, 0x6a, 0x2a, 0x59, 0x64, 0xfc, +}; +static const unsigned char kat1909_retbits[] = { + 0xfb, 0xb5, 0x0d, 0x0d, 0xd0, 0xf4, 0x5c, 0xa9, 0x07, 0xff, 0xc7, 0x28, + 0x55, 0x6b, 0x2b, 0x80, 0x57, 0x07, 0x7e, 0xde, 0xf0, 0x38, 0x23, 0x6a, + 0x30, 0xa3, 0x5b, 0xf2, 0x3c, 0x3b, 0x02, 0x47, 0x5e, 0xda, 0x2a, 0x76, + 0xfe, 0x9a, 0xfc, 0xb9, 0xd3, 0x8d, 0x4e, 0x91, 0x15, 0xce, 0x4e, 0x32, + 0x85, 0xa1, 0x72, 0x35, 0x80, 0xd7, 0xc7, 0xcf, 0x31, 0x0d, 0x45, 0xed, + 0x28, 0x2f, 0x72, 0x12, +}; +static const struct drbg_kat_pr_false kat1909_t = { + 3, kat1909_entropyin, kat1909_nonce, kat1909_persstr, + kat1909_entropyinreseed, kat1909_addinreseed, kat1909_addin0, + kat1909_addin1, kat1909_retbits +}; +static const struct drbg_kat kat1909 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1909_t +}; + +static const unsigned char kat1910_entropyin[] = { + 0xec, 0xe4, 0x8b, 0xe4, 0x9e, 0x97, 0x96, 0x61, 0x0b, 0xd1, 0x83, 0xa9, + 0x9e, 0x87, 0x85, 0x95, 0x5a, 0xce, 0xe4, 0x8c, 0xed, 0xcb, 0xcd, 0x1f, +}; +static const unsigned char kat1910_nonce[] = { + 0x8a, 0xf5, 0xce, 0x39, 0x3c, 0x24, 0x1d, 0xcb, 0x99, 0x3b, 0x4e, 0x2b, + 0xd1, 0x41, 0xff, 0x0d, +}; +static const unsigned char kat1910_persstr[] = { + 0x59, 0x2b, 0x01, 0xbf, 0xc7, 0x48, 0xdb, 0x7b, 0xa6, 0xfd, 0xc5, 0x17, + 0xf8, 0x71, 0xed, 0x96, 0x21, 0xab, 0xf3, 0x8b, 0x18, 0x3c, 0x7b, 0x92, + 0xe7, 0x3a, 0x87, 0xb6, 0x6c, 0xec, 0xb0, 0x2c, +}; +static const unsigned char kat1910_entropyinreseed[] = { + 0x92, 0x5e, 0x83, 0xe8, 0x53, 0xed, 0x17, 0xb9, 0xa5, 0x1c, 0x3a, 0x5d, + 0xc1, 0xa5, 0x58, 0xad, 0x46, 0x9c, 0x72, 0x9a, 0xbf, 0x33, 0xc3, 0x64, +}; +static const unsigned char kat1910_addinreseed[] = { + 0xb9, 0xc5, 0x15, 0xe3, 0x79, 0xd4, 0x27, 0xb3, 0xb5, 0x26, 0x49, 0xa4, + 0xf4, 0xe7, 0x9a, 0xa1, 0xf8, 0xd7, 0xe3, 0x32, 0x0d, 0xb1, 0xf9, 0x53, + 0x7e, 0x86, 0x0e, 0xb6, 0xce, 0x9f, 0xa3, 0x0c, +}; +static const unsigned char kat1910_addin0[] = { + 0x4d, 0x77, 0xbc, 0x15, 0xf7, 0x7e, 0xef, 0xac, 0x57, 0x8b, 0xff, 0xb4, + 0x5a, 0xb7, 0x73, 0x79, 0x2a, 0x4b, 0x88, 0x15, 0x19, 0x81, 0x18, 0xe4, + 0xde, 0x50, 0xfc, 0x57, 0x63, 0xfd, 0x49, 0x1c, +}; +static const unsigned char kat1910_addin1[] = { + 0xba, 0x5a, 0x18, 0x49, 0x93, 0x32, 0xd2, 0x7b, 0x14, 0x70, 0xab, 0xf0, + 0x52, 0x65, 0xa2, 0x5a, 0xa9, 0x7e, 0x54, 0x2d, 0x35, 0x62, 0x29, 0x8e, + 0x8c, 0xa1, 0x80, 0x3b, 0xd3, 0xd5, 0xf2, 0xe7, +}; +static const unsigned char kat1910_retbits[] = { + 0x86, 0xec, 0xcf, 0x86, 0x9b, 0xb1, 0x33, 0xe0, 0x57, 0x0a, 0x80, 0x21, + 0xe1, 0x58, 0x9a, 0xfe, 0xa2, 0xf4, 0xbb, 0x88, 0x0a, 0xc8, 0x4d, 0xde, + 0xff, 0xd5, 0x96, 0x28, 0xd6, 0x77, 0x1d, 0x2d, 0x0c, 0x1a, 0x03, 0xbb, + 0x75, 0x2b, 0x2d, 0xaa, 0x2c, 0x28, 0xd0, 0x48, 0x57, 0x0e, 0x0f, 0x49, + 0x3c, 0xef, 0x76, 0x65, 0x0f, 0x4c, 0x83, 0xf8, 0x8d, 0x07, 0x9b, 0x3f, + 0xc6, 0x8f, 0xb4, 0x47, +}; +static const struct drbg_kat_pr_false kat1910_t = { + 4, kat1910_entropyin, kat1910_nonce, kat1910_persstr, + kat1910_entropyinreseed, kat1910_addinreseed, kat1910_addin0, + kat1910_addin1, kat1910_retbits +}; +static const struct drbg_kat kat1910 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1910_t +}; + +static const unsigned char kat1911_entropyin[] = { + 0x69, 0x7d, 0x57, 0x85, 0x30, 0x02, 0x04, 0xca, 0xdb, 0x61, 0x20, 0x34, + 0xd3, 0xe0, 0x98, 0x65, 0x1f, 0xf1, 0x01, 0x94, 0x12, 0xcf, 0x37, 0x18, +}; +static const unsigned char kat1911_nonce[] = { + 0xb4, 0x30, 0x42, 0xd9, 0xdb, 0xce, 0x8e, 0xf4, 0x96, 0x28, 0x89, 0xea, + 0x3a, 0xec, 0x21, 0x60, +}; +static const unsigned char kat1911_persstr[] = { + 0xfd, 0x40, 0xe0, 0x40, 0x13, 0xf5, 0x43, 0x0c, 0xec, 0x93, 0x56, 0xab, + 0xcc, 0x5a, 0x3d, 0x71, 0xfd, 0xd7, 0x0c, 0x5e, 0xf2, 0x98, 0xc3, 0x8d, + 0x55, 0x91, 0x82, 0xaa, 0xd1, 0xf1, 0x5f, 0xa4, +}; +static const unsigned char kat1911_entropyinreseed[] = { + 0xc6, 0x52, 0x17, 0x19, 0x25, 0x26, 0xba, 0x93, 0x68, 0x1f, 0xd1, 0x53, + 0x39, 0x4c, 0x32, 0xba, 0x4a, 0x78, 0xcb, 0x92, 0x24, 0xab, 0x57, 0x65, +}; +static const unsigned char kat1911_addinreseed[] = { + 0x9e, 0x1c, 0x82, 0x32, 0x01, 0x94, 0x36, 0x32, 0xe3, 0xb5, 0xe9, 0xdc, + 0x15, 0xa6, 0x00, 0xc9, 0x95, 0x46, 0x0c, 0x04, 0x71, 0xd8, 0xc8, 0x92, + 0xb1, 0xd6, 0xe0, 0xb6, 0xcd, 0xa6, 0x9a, 0xdf, +}; +static const unsigned char kat1911_addin0[] = { + 0xee, 0x91, 0x1f, 0xc3, 0x53, 0xca, 0xd8, 0x51, 0x1b, 0x97, 0xa3, 0xfa, + 0xe4, 0x95, 0xc7, 0x07, 0x28, 0x22, 0x9b, 0x2b, 0x79, 0x59, 0x6a, 0x6d, + 0x65, 0x74, 0xf5, 0x47, 0x6a, 0xa3, 0x84, 0xd5, +}; +static const unsigned char kat1911_addin1[] = { + 0xeb, 0x46, 0x6d, 0xd8, 0x45, 0x06, 0xb3, 0xfd, 0xc3, 0xcf, 0xcb, 0xac, + 0x86, 0x9c, 0xa0, 0x47, 0x70, 0x26, 0x6c, 0x80, 0x68, 0x9a, 0x0e, 0xbb, + 0x2a, 0xf0, 0xd2, 0xe6, 0xfa, 0xdd, 0x0c, 0x2e, +}; +static const unsigned char kat1911_retbits[] = { + 0x5f, 0x66, 0x7e, 0xf0, 0xe3, 0xe5, 0x89, 0xdd, 0xe3, 0x49, 0x96, 0x3c, + 0x46, 0x4b, 0x16, 0x80, 0xae, 0x7c, 0x30, 0x64, 0xb1, 0x1b, 0xf2, 0xcd, + 0xa9, 0x2e, 0x04, 0x07, 0x03, 0x75, 0x91, 0xd2, 0xa4, 0x78, 0x2c, 0x89, + 0x17, 0x2d, 0xce, 0xba, 0xc3, 0x96, 0x45, 0x36, 0x88, 0xd7, 0x86, 0xaa, + 0x6d, 0x61, 0xbf, 0x80, 0xe8, 0x3f, 0x3a, 0xc3, 0x96, 0x3a, 0x07, 0x15, + 0x3e, 0xbb, 0x77, 0xf2, +}; +static const struct drbg_kat_pr_false kat1911_t = { + 5, kat1911_entropyin, kat1911_nonce, kat1911_persstr, + kat1911_entropyinreseed, kat1911_addinreseed, kat1911_addin0, + kat1911_addin1, kat1911_retbits +}; +static const struct drbg_kat kat1911 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1911_t +}; + +static const unsigned char kat1912_entropyin[] = { + 0x20, 0x1a, 0x22, 0x93, 0x31, 0x7a, 0x8d, 0x5b, 0xd7, 0x40, 0xc0, 0xe8, + 0x71, 0xb3, 0x52, 0x6b, 0xb8, 0xaa, 0x4d, 0xbb, 0x04, 0x2c, 0xdb, 0x9f, +}; +static const unsigned char kat1912_nonce[] = { + 0xcf, 0xba, 0x92, 0x8a, 0x48, 0x97, 0xfa, 0xb8, 0xbf, 0x01, 0xe1, 0x95, + 0xb9, 0xbe, 0xb7, 0xf5, +}; +static const unsigned char kat1912_persstr[] = { + 0x89, 0x06, 0x59, 0x6c, 0xfd, 0xa6, 0x8e, 0xb4, 0x99, 0xd5, 0xc8, 0x4e, + 0xbb, 0x04, 0x4d, 0x23, 0x10, 0xf3, 0x9c, 0x16, 0x56, 0x5a, 0x4a, 0x6d, + 0xb1, 0x27, 0x09, 0x0b, 0x0c, 0x15, 0xa1, 0x62, +}; +static const unsigned char kat1912_entropyinreseed[] = { + 0x38, 0x58, 0xa9, 0x99, 0x54, 0x04, 0xc5, 0xcc, 0xa0, 0xa0, 0x4a, 0xc5, + 0x90, 0xdb, 0xc7, 0x9e, 0x7f, 0x21, 0xe0, 0x42, 0xec, 0x23, 0x79, 0x93, +}; +static const unsigned char kat1912_addinreseed[] = { + 0xf9, 0xca, 0x96, 0x77, 0xb1, 0xdd, 0x89, 0x48, 0x6a, 0xfd, 0x2a, 0x52, + 0x1f, 0x72, 0x12, 0xc4, 0x1d, 0xaa, 0xb3, 0x68, 0x50, 0x51, 0x78, 0xbe, + 0x49, 0x4b, 0x77, 0x96, 0x18, 0xb6, 0x15, 0xf4, +}; +static const unsigned char kat1912_addin0[] = { + 0xf6, 0x60, 0x37, 0xb8, 0xb5, 0x77, 0xd4, 0xb8, 0x66, 0xb0, 0x17, 0x1c, + 0xe1, 0x6b, 0xed, 0x3b, 0x90, 0x47, 0x94, 0xa0, 0x9e, 0xf0, 0x2a, 0x41, + 0x38, 0xe7, 0xbe, 0x47, 0x26, 0x88, 0xb8, 0xb4, +}; +static const unsigned char kat1912_addin1[] = { + 0xb5, 0x4e, 0xb9, 0x3f, 0xb6, 0x65, 0x3f, 0x7a, 0x57, 0x1f, 0x3e, 0x07, + 0x92, 0x39, 0x84, 0x24, 0xd5, 0x0b, 0x75, 0xfb, 0x6a, 0xae, 0x6f, 0x45, + 0x7f, 0xdc, 0x0b, 0x2d, 0xcd, 0xae, 0x38, 0xf4, +}; +static const unsigned char kat1912_retbits[] = { + 0x3e, 0x94, 0x65, 0x7c, 0x6c, 0x08, 0xc0, 0x4a, 0x2a, 0x56, 0xf6, 0x30, + 0x72, 0x19, 0x7c, 0x72, 0xe1, 0x24, 0x42, 0x86, 0x67, 0x5b, 0xe3, 0x5d, + 0x86, 0x57, 0xa9, 0x2f, 0xb1, 0x57, 0x3c, 0xff, 0xc7, 0xe8, 0x76, 0x63, + 0x12, 0x84, 0x50, 0x1d, 0x07, 0x64, 0x57, 0xf0, 0x74, 0x51, 0x79, 0x16, + 0x2d, 0x90, 0x3f, 0xf4, 0x2e, 0x8a, 0x29, 0x19, 0xec, 0x5f, 0x32, 0x6c, + 0x93, 0x6d, 0xfa, 0xf7, +}; +static const struct drbg_kat_pr_false kat1912_t = { + 6, kat1912_entropyin, kat1912_nonce, kat1912_persstr, + kat1912_entropyinreseed, kat1912_addinreseed, kat1912_addin0, + kat1912_addin1, kat1912_retbits +}; +static const struct drbg_kat kat1912 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1912_t +}; + +static const unsigned char kat1913_entropyin[] = { + 0x82, 0x33, 0x49, 0x05, 0x0b, 0xed, 0x4f, 0x80, 0x59, 0x71, 0x5f, 0xcf, + 0x8d, 0xe4, 0x57, 0x0c, 0xf3, 0x7e, 0x45, 0x4f, 0x83, 0x3b, 0x59, 0xbf, +}; +static const unsigned char kat1913_nonce[] = { + 0x23, 0xe7, 0x78, 0xbe, 0x62, 0x17, 0x7f, 0xbd, 0x73, 0x56, 0x36, 0x40, + 0x76, 0x7c, 0xd7, 0xad, +}; +static const unsigned char kat1913_persstr[] = { + 0x76, 0x55, 0x4f, 0xef, 0x6f, 0xeb, 0x95, 0x97, 0x39, 0x12, 0xd4, 0xaf, + 0x33, 0xd5, 0x38, 0x0e, 0xc1, 0x3e, 0x17, 0xeb, 0x9c, 0x07, 0x20, 0xc5, + 0x2e, 0xf0, 0x11, 0x0d, 0xee, 0xf4, 0x27, 0xa0, +}; +static const unsigned char kat1913_entropyinreseed[] = { + 0x29, 0xf4, 0x0a, 0xa8, 0x8b, 0x68, 0xea, 0x61, 0xec, 0xdc, 0x0f, 0xc6, + 0x0d, 0xed, 0x69, 0x58, 0x04, 0x23, 0xfd, 0x4a, 0x19, 0x43, 0x11, 0x7e, +}; +static const unsigned char kat1913_addinreseed[] = { + 0x5b, 0x32, 0x62, 0x36, 0xce, 0x66, 0x27, 0x4c, 0xc9, 0x8f, 0x34, 0x53, + 0xdb, 0x13, 0x7e, 0xb3, 0xa3, 0x94, 0xba, 0x6b, 0x1f, 0xa7, 0x2a, 0xff, + 0x98, 0x26, 0x90, 0x26, 0xa4, 0x70, 0xfd, 0xe6, +}; +static const unsigned char kat1913_addin0[] = { + 0x18, 0xef, 0x72, 0xd2, 0x35, 0x85, 0x2d, 0xe3, 0xf1, 0x87, 0x7c, 0x5d, + 0x67, 0xaa, 0xff, 0xda, 0x71, 0xd0, 0xe2, 0x0a, 0xe3, 0x13, 0xac, 0xca, + 0x5e, 0xec, 0xa5, 0xd0, 0x2e, 0x0d, 0x7a, 0x81, +}; +static const unsigned char kat1913_addin1[] = { + 0xd4, 0x28, 0xde, 0x12, 0x1a, 0x20, 0xf7, 0x10, 0xc8, 0x2b, 0x04, 0x78, + 0x4b, 0x42, 0x0f, 0x3f, 0xc1, 0x32, 0xcb, 0xd6, 0xfb, 0xe4, 0xc1, 0xc8, + 0xb2, 0x41, 0x73, 0xa7, 0x0c, 0x27, 0x97, 0x51, +}; +static const unsigned char kat1913_retbits[] = { + 0x73, 0x0a, 0x7b, 0x36, 0x5d, 0x8e, 0x38, 0xc3, 0x0d, 0x6f, 0xc8, 0x8e, + 0x1c, 0x87, 0x5c, 0xfe, 0xf7, 0x14, 0x6c, 0xac, 0x3a, 0x14, 0xe5, 0xbb, + 0xbb, 0x92, 0x2d, 0x0e, 0x03, 0xae, 0x6b, 0xa5, 0xe1, 0x19, 0x84, 0x84, + 0x87, 0x29, 0x3d, 0xd0, 0x4c, 0xec, 0x93, 0x43, 0x99, 0x89, 0xb2, 0xdd, + 0x9b, 0x4b, 0x8e, 0x61, 0x10, 0xe1, 0xea, 0xd0, 0x4d, 0xe8, 0x1c, 0x21, + 0x2a, 0x01, 0x06, 0x55, +}; +static const struct drbg_kat_pr_false kat1913_t = { + 7, kat1913_entropyin, kat1913_nonce, kat1913_persstr, + kat1913_entropyinreseed, kat1913_addinreseed, kat1913_addin0, + kat1913_addin1, kat1913_retbits +}; +static const struct drbg_kat kat1913 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1913_t +}; + +static const unsigned char kat1914_entropyin[] = { + 0x78, 0x85, 0x2a, 0xb6, 0xf6, 0xb9, 0x7f, 0xd3, 0x3d, 0x0a, 0xf2, 0x96, + 0xfe, 0xb8, 0x20, 0x1b, 0x84, 0xc0, 0x69, 0x8e, 0x94, 0xd8, 0x71, 0x49, +}; +static const unsigned char kat1914_nonce[] = { + 0x2e, 0xec, 0xbe, 0x98, 0xc1, 0x0d, 0xdc, 0xe7, 0xb3, 0xdc, 0x43, 0xd8, + 0x21, 0xb9, 0x65, 0x14, +}; +static const unsigned char kat1914_persstr[] = { + 0x22, 0xae, 0x68, 0x7b, 0xbd, 0x32, 0x90, 0x3d, 0x78, 0x16, 0xd2, 0x47, + 0x6e, 0x14, 0x52, 0x8f, 0xbe, 0x12, 0xe9, 0x9f, 0xa6, 0x2f, 0xbf, 0x61, + 0x6b, 0xd0, 0x8f, 0x66, 0x15, 0x2d, 0xba, 0xa2, +}; +static const unsigned char kat1914_entropyinreseed[] = { + 0xcb, 0xf0, 0x65, 0x4e, 0xaa, 0x4e, 0x24, 0x81, 0xf3, 0x2a, 0xb7, 0x4b, + 0xa0, 0x19, 0x57, 0x7c, 0x52, 0xc2, 0xeb, 0x45, 0x11, 0xbb, 0xff, 0x26, +}; +static const unsigned char kat1914_addinreseed[] = { + 0x75, 0x0e, 0x5d, 0x39, 0x3e, 0x18, 0xbe, 0xb3, 0x23, 0x81, 0x45, 0x77, + 0x9c, 0xe1, 0x26, 0x5b, 0xd4, 0x73, 0xc9, 0xd3, 0x13, 0x03, 0x7b, 0x1e, + 0x3f, 0x34, 0x33, 0xed, 0x47, 0xf0, 0x95, 0x5b, +}; +static const unsigned char kat1914_addin0[] = { + 0x4a, 0x63, 0x21, 0x1a, 0x20, 0x9d, 0x5b, 0x07, 0x6b, 0xde, 0x3a, 0x43, + 0xe4, 0xeb, 0xc5, 0x51, 0xe4, 0xb6, 0x96, 0x85, 0x7a, 0xcf, 0x6b, 0x2b, + 0xe9, 0x2a, 0x73, 0x62, 0xb7, 0x04, 0x6d, 0x1b, +}; +static const unsigned char kat1914_addin1[] = { + 0xda, 0xd1, 0x95, 0x2c, 0xf6, 0xc4, 0xdb, 0x63, 0x15, 0xc7, 0xb4, 0x7c, + 0x53, 0x74, 0x1d, 0xc0, 0x2d, 0x66, 0xc3, 0x36, 0xd7, 0x08, 0xaf, 0x18, + 0xcf, 0xff, 0x9e, 0xdf, 0xec, 0x88, 0x22, 0xbf, +}; +static const unsigned char kat1914_retbits[] = { + 0xd1, 0x29, 0x0b, 0x3d, 0xfd, 0x54, 0xb0, 0x0e, 0x06, 0x39, 0xd9, 0x6b, + 0x17, 0x1c, 0x57, 0x11, 0xef, 0xd7, 0xa7, 0x69, 0xab, 0x53, 0x2c, 0x09, + 0x63, 0x14, 0x34, 0xa1, 0x0b, 0x6b, 0x33, 0x6a, 0xc3, 0x7a, 0xad, 0xdb, + 0x5d, 0x03, 0x94, 0x96, 0x3c, 0xed, 0xea, 0x3f, 0x91, 0x9a, 0xd5, 0xf6, + 0xea, 0x10, 0x6e, 0x81, 0xce, 0xcf, 0x7f, 0x01, 0x05, 0x32, 0x63, 0x88, + 0xea, 0xb7, 0x45, 0x33, +}; +static const struct drbg_kat_pr_false kat1914_t = { + 8, kat1914_entropyin, kat1914_nonce, kat1914_persstr, + kat1914_entropyinreseed, kat1914_addinreseed, kat1914_addin0, + kat1914_addin1, kat1914_retbits +}; +static const struct drbg_kat kat1914 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1914_t +}; + +static const unsigned char kat1915_entropyin[] = { + 0x52, 0x26, 0x6e, 0x3d, 0x43, 0x2c, 0x32, 0x7b, 0x87, 0x9d, 0x69, 0x70, + 0x7a, 0x26, 0xcc, 0xd8, 0x2f, 0x1c, 0x71, 0x36, 0x99, 0x13, 0xc9, 0x97, +}; +static const unsigned char kat1915_nonce[] = { + 0x7e, 0x77, 0x4e, 0x99, 0x2e, 0xb9, 0xfc, 0x62, 0x9d, 0x20, 0xbb, 0x96, + 0x8f, 0x11, 0x39, 0xa9, +}; +static const unsigned char kat1915_persstr[] = { + 0xd7, 0x4f, 0x4a, 0xa6, 0x94, 0x9b, 0x4c, 0x4c, 0xa7, 0x28, 0xab, 0xfe, + 0x12, 0x2f, 0x64, 0x15, 0x11, 0x08, 0x7b, 0x85, 0x68, 0x6f, 0x79, 0x32, + 0x85, 0x56, 0xcf, 0xf8, 0xbb, 0xcb, 0x11, 0x58, +}; +static const unsigned char kat1915_entropyinreseed[] = { + 0xd4, 0x80, 0xd8, 0x6e, 0xfb, 0x6c, 0x9e, 0xfc, 0xd7, 0x41, 0x2e, 0x1f, + 0x37, 0x82, 0xfd, 0x5a, 0x87, 0xb5, 0x41, 0x98, 0xa3, 0x0f, 0xca, 0x6f, +}; +static const unsigned char kat1915_addinreseed[] = { + 0xf2, 0x05, 0xa6, 0x75, 0x1d, 0x23, 0x25, 0xc7, 0x9d, 0xbb, 0x31, 0x43, + 0x79, 0x53, 0x67, 0x47, 0x5d, 0x2c, 0x8d, 0x32, 0x48, 0xc1, 0xbb, 0xee, + 0xc8, 0x89, 0xce, 0x2c, 0xc4, 0xfd, 0xd6, 0x92, +}; +static const unsigned char kat1915_addin0[] = { + 0xe6, 0x8b, 0x67, 0xbe, 0x2e, 0x8b, 0x18, 0x4f, 0x19, 0x3b, 0x37, 0x54, + 0xb0, 0x29, 0xb9, 0x6b, 0xda, 0xd8, 0xd1, 0xd1, 0xca, 0xfd, 0xa0, 0x60, + 0x37, 0x05, 0x81, 0x3c, 0xec, 0xad, 0x75, 0xd7, +}; +static const unsigned char kat1915_addin1[] = { + 0x8b, 0x83, 0xbf, 0xf6, 0x53, 0x6e, 0x4b, 0x3c, 0xb1, 0xc1, 0xd4, 0x25, + 0xf0, 0x2e, 0x07, 0xb9, 0xd8, 0x8c, 0xa6, 0x15, 0x41, 0xd2, 0x59, 0x32, + 0x42, 0x10, 0xee, 0x48, 0x8b, 0x59, 0xba, 0xf7, +}; +static const unsigned char kat1915_retbits[] = { + 0x19, 0x75, 0x45, 0xab, 0x71, 0x7f, 0x4b, 0x15, 0x6b, 0xae, 0x39, 0x3c, + 0x7e, 0x86, 0xcb, 0x2f, 0x3d, 0xa7, 0x53, 0xa2, 0xe7, 0x8c, 0x33, 0x17, + 0x93, 0xd9, 0xf2, 0xb6, 0x76, 0x7d, 0xbf, 0x07, 0xd7, 0xac, 0xa1, 0x22, + 0x8e, 0x45, 0x2e, 0x39, 0x68, 0xa0, 0x4b, 0x48, 0xcb, 0x9d, 0x7f, 0x94, + 0x1c, 0x53, 0x46, 0x2f, 0x98, 0x8c, 0xbd, 0x12, 0xc0, 0xad, 0xc7, 0xc7, + 0x16, 0x08, 0x5d, 0x69, +}; +static const struct drbg_kat_pr_false kat1915_t = { + 9, kat1915_entropyin, kat1915_nonce, kat1915_persstr, + kat1915_entropyinreseed, kat1915_addinreseed, kat1915_addin0, + kat1915_addin1, kat1915_retbits +}; +static const struct drbg_kat kat1915 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1915_t +}; + +static const unsigned char kat1916_entropyin[] = { + 0x50, 0x23, 0xd5, 0x26, 0x99, 0x1c, 0x0b, 0xa4, 0xd7, 0x80, 0x93, 0x47, + 0xc4, 0x3d, 0x99, 0x00, 0x42, 0x5b, 0x59, 0x96, 0x7c, 0xb9, 0x76, 0x19, +}; +static const unsigned char kat1916_nonce[] = { + 0xea, 0xe2, 0x91, 0x2f, 0x80, 0x6d, 0x1b, 0xed, 0x45, 0xa0, 0xd8, 0x3c, + 0x02, 0x5c, 0xc3, 0xf9, +}; +static const unsigned char kat1916_persstr[] = { + 0xa4, 0x8b, 0xd5, 0xfb, 0x24, 0xe6, 0x75, 0xb7, 0xd4, 0x7c, 0x66, 0x2b, + 0x7c, 0x57, 0xae, 0x1c, 0xdc, 0x43, 0xe6, 0x45, 0xc7, 0xb3, 0x9e, 0x1c, + 0x5b, 0x54, 0x97, 0xbe, 0x55, 0xc3, 0x1e, 0xdf, +}; +static const unsigned char kat1916_entropyinreseed[] = { + 0xc0, 0x12, 0x37, 0xcc, 0xa4, 0x1c, 0xc7, 0x7f, 0x96, 0x86, 0xfe, 0xd0, + 0x78, 0xf5, 0x67, 0xca, 0xfb, 0xcb, 0xca, 0x23, 0x16, 0xe9, 0xc5, 0xd9, +}; +static const unsigned char kat1916_addinreseed[] = { + 0xbd, 0x59, 0xb8, 0x90, 0x80, 0x6b, 0x0f, 0x67, 0x30, 0x82, 0x92, 0xc6, + 0x73, 0x27, 0xc4, 0x7f, 0xf4, 0x39, 0xbd, 0x76, 0xb0, 0x50, 0xfb, 0x87, + 0xd9, 0x55, 0xd1, 0x14, 0x81, 0xe2, 0x8f, 0x95, +}; +static const unsigned char kat1916_addin0[] = { + 0xc1, 0xeb, 0x4e, 0x0e, 0xb4, 0x08, 0x8c, 0xdb, 0x9f, 0xee, 0xd0, 0xbb, + 0x19, 0xe1, 0x5a, 0x1e, 0x48, 0xe0, 0xc0, 0x6c, 0x60, 0xe8, 0x6a, 0x4a, + 0x0c, 0x77, 0x99, 0x8e, 0x8d, 0x60, 0x04, 0x56, +}; +static const unsigned char kat1916_addin1[] = { + 0xbf, 0x84, 0x1c, 0x1b, 0x1f, 0xc5, 0x5c, 0x2f, 0x01, 0xf9, 0x6a, 0x3c, + 0x2f, 0xe4, 0xce, 0x50, 0x3f, 0xfd, 0x40, 0x99, 0xbd, 0x88, 0x4f, 0xc6, + 0x20, 0xa1, 0x5d, 0x45, 0x27, 0xfd, 0x1e, 0x21, +}; +static const unsigned char kat1916_retbits[] = { + 0xbf, 0x7a, 0x3a, 0x2a, 0x43, 0x0e, 0xfc, 0xf4, 0xeb, 0x9b, 0x30, 0xd2, + 0xc7, 0x6d, 0x3c, 0x2d, 0xb3, 0xdc, 0x67, 0x0b, 0xcc, 0xd5, 0x14, 0xb4, + 0xbc, 0xb5, 0x0c, 0x56, 0xd3, 0x42, 0xd9, 0xa9, 0xfe, 0x1d, 0x45, 0x89, + 0xe0, 0xb8, 0xcc, 0x0d, 0x42, 0x26, 0xf1, 0x0d, 0x51, 0x8b, 0x36, 0xc1, + 0x15, 0xd8, 0xe4, 0xa2, 0x91, 0x06, 0xc3, 0xa0, 0x72, 0x42, 0x3f, 0x1f, + 0x3c, 0x09, 0xc7, 0xfd, +}; +static const struct drbg_kat_pr_false kat1916_t = { + 10, kat1916_entropyin, kat1916_nonce, kat1916_persstr, + kat1916_entropyinreseed, kat1916_addinreseed, kat1916_addin0, + kat1916_addin1, kat1916_retbits +}; +static const struct drbg_kat kat1916 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1916_t +}; + +static const unsigned char kat1917_entropyin[] = { + 0x36, 0xdd, 0x90, 0xad, 0x3a, 0x99, 0xef, 0x0f, 0x03, 0x9d, 0x30, 0xd2, + 0xc9, 0x9f, 0x2b, 0x07, 0xbf, 0x8b, 0x1a, 0xb7, 0xa4, 0xef, 0xdb, 0x01, +}; +static const unsigned char kat1917_nonce[] = { + 0x17, 0x90, 0x21, 0x0b, 0x26, 0x3d, 0x0f, 0x66, 0xd1, 0x99, 0xdf, 0x75, + 0x90, 0x74, 0x83, 0xba, +}; +static const unsigned char kat1917_persstr[] = { + 0x77, 0x10, 0x04, 0xb4, 0x54, 0xc3, 0xc2, 0xc4, 0x18, 0xcd, 0x7e, 0x39, + 0xbc, 0xf8, 0xb3, 0x34, 0x9d, 0x8d, 0xd0, 0x16, 0x5f, 0xb9, 0xc5, 0xf5, + 0x6f, 0x72, 0x49, 0xf7, 0x25, 0x8a, 0x43, 0x04, +}; +static const unsigned char kat1917_entropyinreseed[] = { + 0x31, 0x03, 0xdd, 0xed, 0x1e, 0x53, 0xb3, 0xae, 0x63, 0xa4, 0x20, 0x7e, + 0xba, 0xef, 0xcb, 0x86, 0x27, 0x1f, 0xfe, 0x9d, 0x73, 0x71, 0x18, 0xaf, +}; +static const unsigned char kat1917_addinreseed[] = { + 0x03, 0x50, 0xcb, 0xee, 0x80, 0xaa, 0xad, 0x1b, 0xcd, 0xc9, 0x45, 0x3b, + 0xdb, 0x12, 0xaf, 0x36, 0xd5, 0xa0, 0x33, 0x7a, 0xf3, 0x65, 0xd4, 0x67, + 0x05, 0x30, 0x5b, 0x5d, 0xbc, 0x8d, 0x0d, 0x4b, +}; +static const unsigned char kat1917_addin0[] = { + 0xa3, 0x35, 0x7c, 0x6e, 0x97, 0xb7, 0xf2, 0xea, 0xed, 0xd4, 0x5d, 0x8b, + 0x17, 0xb1, 0x87, 0xea, 0xa5, 0x8c, 0xea, 0x7f, 0x6b, 0x90, 0xcd, 0x71, + 0x11, 0x09, 0x33, 0x7a, 0xc6, 0x40, 0x1b, 0x38, +}; +static const unsigned char kat1917_addin1[] = { + 0xf1, 0xa8, 0x78, 0x7b, 0x45, 0x43, 0x01, 0x28, 0xec, 0xf1, 0x60, 0x8a, + 0xbf, 0x7d, 0xf5, 0x39, 0x75, 0x3e, 0x59, 0xb7, 0x42, 0xf1, 0x40, 0x0b, + 0xea, 0xe3, 0x5f, 0x87, 0xf7, 0x6e, 0x60, 0x0a, +}; +static const unsigned char kat1917_retbits[] = { + 0x03, 0xb0, 0xe5, 0x10, 0x3b, 0x44, 0xcc, 0x72, 0xb3, 0xa7, 0x6c, 0x6e, + 0x3f, 0xe5, 0x3b, 0x2a, 0x21, 0x6d, 0xe6, 0xa6, 0xa2, 0x57, 0x14, 0x4d, + 0xeb, 0x74, 0x75, 0xc8, 0xc9, 0x17, 0xc2, 0x03, 0x17, 0x4c, 0xf5, 0xd2, + 0x59, 0x35, 0x16, 0xee, 0x13, 0x16, 0xcf, 0xf5, 0xc1, 0x0a, 0x13, 0x3a, + 0x3b, 0xd8, 0x0e, 0x06, 0x71, 0x40, 0xad, 0x9e, 0x7c, 0xaf, 0x39, 0xa7, + 0x06, 0xdd, 0xb4, 0x71, +}; +static const struct drbg_kat_pr_false kat1917_t = { + 11, kat1917_entropyin, kat1917_nonce, kat1917_persstr, + kat1917_entropyinreseed, kat1917_addinreseed, kat1917_addin0, + kat1917_addin1, kat1917_retbits +}; +static const struct drbg_kat kat1917 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1917_t +}; + +static const unsigned char kat1918_entropyin[] = { + 0x32, 0xa4, 0xbc, 0x55, 0xfe, 0x00, 0x93, 0x34, 0x11, 0xbc, 0x14, 0x63, + 0xc0, 0x04, 0xb7, 0xdd, 0xb6, 0xaf, 0xfb, 0xa1, 0x85, 0xdf, 0x62, 0x5f, +}; +static const unsigned char kat1918_nonce[] = { + 0x4f, 0x93, 0x6c, 0x59, 0xf1, 0xdd, 0x36, 0xae, 0xd0, 0x40, 0x44, 0x02, + 0x0e, 0x60, 0x64, 0xab, +}; +static const unsigned char kat1918_persstr[] = { + 0x31, 0xcb, 0x2a, 0x44, 0x66, 0x33, 0xbb, 0x01, 0xb9, 0xd9, 0x02, 0x4d, + 0x16, 0xbf, 0xc3, 0x87, 0x2f, 0xfa, 0x2d, 0x1c, 0x8f, 0x95, 0x92, 0xc4, + 0x72, 0x65, 0x7a, 0x92, 0x5d, 0x6e, 0xc3, 0x14, +}; +static const unsigned char kat1918_entropyinreseed[] = { + 0xde, 0x9e, 0x64, 0x8b, 0xf1, 0x54, 0x06, 0xca, 0x39, 0x8d, 0x6b, 0x1c, + 0x68, 0xb7, 0x0b, 0x3e, 0xad, 0x20, 0xb4, 0x66, 0x90, 0xb9, 0x9c, 0x26, +}; +static const unsigned char kat1918_addinreseed[] = { + 0x13, 0x3c, 0x98, 0x79, 0x41, 0x16, 0x12, 0xbc, 0x04, 0x92, 0x51, 0x98, + 0x7f, 0x20, 0x26, 0x13, 0x02, 0x04, 0x53, 0xa6, 0x18, 0xac, 0xba, 0x0f, + 0x45, 0xd5, 0x05, 0xe2, 0xb6, 0xc1, 0xb9, 0x45, +}; +static const unsigned char kat1918_addin0[] = { + 0x9b, 0x6c, 0x10, 0x33, 0x39, 0xed, 0xe7, 0x00, 0x56, 0x41, 0x85, 0xcd, + 0x26, 0xd6, 0xa7, 0x2a, 0x0b, 0x2b, 0x55, 0x9e, 0xc9, 0x01, 0xa0, 0xda, + 0x1a, 0x68, 0xc7, 0x5f, 0xc6, 0xad, 0x94, 0x9b, +}; +static const unsigned char kat1918_addin1[] = { + 0xd1, 0xc6, 0x02, 0x29, 0x4b, 0x4a, 0x1e, 0x66, 0x06, 0xfa, 0xd1, 0x1c, + 0x53, 0x88, 0x7e, 0x90, 0x47, 0x0a, 0x05, 0x00, 0xef, 0x54, 0xbe, 0x0b, + 0x56, 0x9f, 0x8f, 0x48, 0xaa, 0xd9, 0xe1, 0xaa, +}; +static const unsigned char kat1918_retbits[] = { + 0x6a, 0xec, 0x60, 0x89, 0x42, 0xd4, 0x00, 0x86, 0x8d, 0x4a, 0x49, 0x0a, + 0x70, 0x8a, 0x77, 0x19, 0x6c, 0x56, 0xcf, 0x01, 0x40, 0xe2, 0x50, 0xe3, + 0xfd, 0x7e, 0x1e, 0xe5, 0xcd, 0x90, 0x49, 0x25, 0xed, 0x7f, 0xbd, 0xfc, + 0xbb, 0x8a, 0xc3, 0x89, 0x9e, 0x63, 0x29, 0x03, 0x0e, 0xfa, 0xc6, 0xb7, + 0xae, 0xc3, 0xfe, 0x4c, 0x17, 0x2f, 0xfc, 0x3c, 0x78, 0x37, 0xb9, 0x69, + 0x5f, 0xec, 0x58, 0xde, +}; +static const struct drbg_kat_pr_false kat1918_t = { + 12, kat1918_entropyin, kat1918_nonce, kat1918_persstr, + kat1918_entropyinreseed, kat1918_addinreseed, kat1918_addin0, + kat1918_addin1, kat1918_retbits +}; +static const struct drbg_kat kat1918 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1918_t +}; + +static const unsigned char kat1919_entropyin[] = { + 0xfa, 0x45, 0x67, 0x8e, 0x54, 0x8e, 0xca, 0x6f, 0x7d, 0x55, 0x2d, 0x03, + 0xfe, 0xf9, 0xf5, 0x00, 0xa4, 0x1e, 0x63, 0xa9, 0xaf, 0x5f, 0x6d, 0xe7, +}; +static const unsigned char kat1919_nonce[] = { + 0xe2, 0x14, 0xb4, 0x23, 0x0c, 0xb2, 0xae, 0x42, 0x8e, 0x31, 0x7c, 0x52, + 0x11, 0x28, 0x3f, 0x47, +}; +static const unsigned char kat1919_persstr[] = { + 0xf3, 0x2a, 0x32, 0x62, 0xca, 0x7a, 0x6b, 0x52, 0x37, 0x2a, 0x86, 0xa7, + 0x20, 0xb1, 0xe3, 0xb3, 0xee, 0xd9, 0xf2, 0x28, 0xa9, 0x66, 0xe3, 0xe9, + 0xeb, 0xc5, 0x94, 0x72, 0x3b, 0x83, 0x13, 0x9d, +}; +static const unsigned char kat1919_entropyinreseed[] = { + 0x4b, 0x4f, 0x7a, 0x51, 0xdf, 0x67, 0x39, 0xe8, 0x83, 0x9e, 0xa1, 0x11, + 0xb8, 0x09, 0x83, 0x48, 0x62, 0x9f, 0x89, 0x96, 0xcf, 0xce, 0x8a, 0xdf, +}; +static const unsigned char kat1919_addinreseed[] = { + 0x21, 0xdf, 0xbc, 0xee, 0x16, 0xb0, 0x58, 0x1a, 0x4e, 0xaa, 0x7f, 0x22, + 0xa7, 0xc1, 0x15, 0x62, 0x66, 0xde, 0x87, 0x14, 0x67, 0xf3, 0x27, 0xe8, + 0x05, 0x39, 0x78, 0x41, 0x18, 0x9b, 0xef, 0x6e, +}; +static const unsigned char kat1919_addin0[] = { + 0xcd, 0xd8, 0x36, 0x6b, 0x0e, 0x7b, 0xe7, 0x7b, 0x00, 0xe8, 0x47, 0xf6, + 0x89, 0x8c, 0xfe, 0xdd, 0x50, 0x13, 0x32, 0x1d, 0x15, 0x1e, 0x6a, 0x4a, + 0x01, 0xf8, 0xe1, 0xe4, 0x45, 0x1e, 0x73, 0x18, +}; +static const unsigned char kat1919_addin1[] = { + 0x36, 0x66, 0xe9, 0xf2, 0x7c, 0x2b, 0xe7, 0x5d, 0x70, 0x7f, 0xdf, 0x0e, + 0x08, 0x23, 0x0c, 0x5e, 0x22, 0xee, 0x30, 0x72, 0x9f, 0xfd, 0x70, 0xcf, + 0xce, 0x62, 0xca, 0x82, 0xca, 0x97, 0x6a, 0x3b, +}; +static const unsigned char kat1919_retbits[] = { + 0xea, 0x8b, 0x6e, 0xc1, 0xdd, 0xc4, 0x98, 0xd5, 0x9c, 0x97, 0x69, 0x21, + 0xa8, 0x74, 0x6a, 0xef, 0x37, 0xc4, 0x1a, 0x1f, 0xfa, 0xe2, 0x7d, 0x51, + 0x4f, 0xc9, 0xdb, 0x9d, 0x75, 0xa0, 0xce, 0x18, 0x1c, 0x94, 0xb1, 0x22, + 0x9c, 0x09, 0xd2, 0xe4, 0x84, 0xc8, 0x1a, 0xbf, 0xaf, 0x2f, 0xdc, 0x23, + 0x12, 0x4e, 0x51, 0x85, 0x02, 0xf7, 0xdb, 0xc7, 0x96, 0x71, 0x98, 0xa5, + 0xdd, 0x0e, 0xef, 0x71, +}; +static const struct drbg_kat_pr_false kat1919_t = { + 13, kat1919_entropyin, kat1919_nonce, kat1919_persstr, + kat1919_entropyinreseed, kat1919_addinreseed, kat1919_addin0, + kat1919_addin1, kat1919_retbits +}; +static const struct drbg_kat kat1919 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1919_t +}; + +static const unsigned char kat1920_entropyin[] = { + 0x66, 0xc1, 0xb0, 0xef, 0x8b, 0xac, 0xf0, 0x16, 0x36, 0x6d, 0x2d, 0x9a, + 0xe1, 0xaa, 0x16, 0x75, 0x91, 0xd8, 0x60, 0x74, 0x85, 0xf1, 0x6a, 0x9a, +}; +static const unsigned char kat1920_nonce[] = { + 0xce, 0xa9, 0x90, 0x2a, 0x8e, 0xc1, 0xac, 0xbc, 0xa4, 0xb1, 0x0e, 0x13, + 0x25, 0xca, 0x6f, 0xff, +}; +static const unsigned char kat1920_persstr[] = { + 0xee, 0xdc, 0xc9, 0xba, 0x4e, 0xa5, 0x01, 0xca, 0x23, 0xaf, 0x2f, 0x41, + 0x18, 0x52, 0xb4, 0xba, 0xfd, 0xd9, 0x2f, 0x3d, 0x4b, 0xb0, 0x81, 0x7c, + 0x3c, 0x47, 0xb7, 0x45, 0x77, 0xfb, 0xd1, 0x63, +}; +static const unsigned char kat1920_entropyinreseed[] = { + 0xd4, 0x97, 0xe5, 0x55, 0x56, 0xa1, 0x11, 0x9c, 0x02, 0xa0, 0xe1, 0x2d, + 0xab, 0x8c, 0x1f, 0x8f, 0x77, 0xa4, 0x17, 0x17, 0xa1, 0xfe, 0x4a, 0xa6, +}; +static const unsigned char kat1920_addinreseed[] = { + 0x81, 0xda, 0x6a, 0xf9, 0x7d, 0x93, 0xab, 0xfc, 0x11, 0xa7, 0x04, 0x0a, + 0x2a, 0x88, 0xa1, 0x67, 0x65, 0xef, 0x29, 0xb6, 0xba, 0xb5, 0x26, 0x0a, + 0x6c, 0x2c, 0x4b, 0xab, 0x1f, 0xa5, 0xdf, 0x3c, +}; +static const unsigned char kat1920_addin0[] = { + 0x32, 0x13, 0x0c, 0x14, 0xe5, 0x92, 0xca, 0xfb, 0x1d, 0xa7, 0x46, 0xae, + 0x46, 0x34, 0xc5, 0xeb, 0xfe, 0xf0, 0x8f, 0x31, 0x84, 0x63, 0x9a, 0x44, + 0x7b, 0x96, 0xef, 0x12, 0xb4, 0x80, 0x2d, 0xf5, +}; +static const unsigned char kat1920_addin1[] = { + 0x42, 0x9b, 0x9f, 0x44, 0x2c, 0x75, 0xc7, 0x66, 0x15, 0x49, 0x25, 0x82, + 0xd6, 0xdc, 0xc0, 0x07, 0xc9, 0x14, 0x06, 0xab, 0xfa, 0x88, 0x20, 0x8f, + 0x8b, 0x06, 0xe8, 0x0e, 0xf2, 0x29, 0x0c, 0xc5, +}; +static const unsigned char kat1920_retbits[] = { + 0x5c, 0x37, 0xde, 0x23, 0x5a, 0x55, 0xd3, 0x74, 0x77, 0x44, 0xe8, 0x4e, + 0xb4, 0x41, 0x6b, 0x6e, 0x2d, 0xa0, 0xda, 0x09, 0xf3, 0x2c, 0x29, 0xf7, + 0x2c, 0xba, 0x63, 0x43, 0xb3, 0x27, 0xb4, 0x88, 0xdf, 0xa0, 0xd8, 0xa6, + 0x03, 0x66, 0x6d, 0x8b, 0xa3, 0x3b, 0x41, 0x7c, 0x71, 0x79, 0x51, 0xdd, + 0xee, 0xc4, 0x7d, 0x54, 0x9d, 0x0f, 0x6e, 0x09, 0x1e, 0x1b, 0xb7, 0xda, + 0xeb, 0x9e, 0x2e, 0x20, +}; +static const struct drbg_kat_pr_false kat1920_t = { + 14, kat1920_entropyin, kat1920_nonce, kat1920_persstr, + kat1920_entropyinreseed, kat1920_addinreseed, kat1920_addin0, + kat1920_addin1, kat1920_retbits +}; +static const struct drbg_kat kat1920 = { + PR_FALSE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat1920_t +}; + +static const unsigned char kat1921_entropyin[] = { + 0x2d, 0x4c, 0x9f, 0x46, 0xb9, 0x81, 0xc6, 0xa0, 0xb2, 0xb5, 0xd8, 0xc6, + 0x93, 0x91, 0xe5, 0x69, 0xff, 0x13, 0x85, 0x14, 0x37, 0xeb, 0xc0, 0xfc, + 0x00, 0xd6, 0x16, 0x34, 0x02, 0x52, 0xfe, 0xd5, +}; +static const unsigned char kat1921_nonce[] = { + 0x0b, 0xf8, 0x14, 0xb4, 0x11, 0xf6, 0x5e, 0xc4, 0x86, 0x6b, 0xe1, 0xab, + 0xb5, 0x9d, 0x3c, 0x32, +}; +static const unsigned char kat1921_persstr[] = {0}; +static const unsigned char kat1921_entropyinreseed[] = { + 0x93, 0x50, 0x0f, 0xae, 0x4f, 0xa3, 0x2b, 0x86, 0x03, 0x3b, 0x7a, 0x7b, + 0xac, 0x9d, 0x37, 0xe7, 0x10, 0xdc, 0xc6, 0x7c, 0xa2, 0x66, 0xbc, 0x86, + 0x07, 0xd6, 0x65, 0x93, 0x77, 0x66, 0xd2, 0x07, +}; +static const unsigned char kat1921_addinreseed[] = {0}; +static const unsigned char kat1921_addin0[] = {0}; +static const unsigned char kat1921_addin1[] = {0}; +static const unsigned char kat1921_retbits[] = { + 0x32, 0x2d, 0xd2, 0x86, 0x70, 0xe7, 0x5c, 0x0e, 0xa6, 0x38, 0xf3, 0xcb, + 0x68, 0xd6, 0xa9, 0xd6, 0xe5, 0x0d, 0xdf, 0xd0, 0x52, 0xb7, 0x72, 0xa7, + 0xb1, 0xd7, 0x82, 0x63, 0xa7, 0xb8, 0x97, 0x8b, 0x67, 0x40, 0xc2, 0xb6, + 0x5a, 0x95, 0x50, 0xc3, 0xa7, 0x63, 0x25, 0x86, 0x6f, 0xa9, 0x7e, 0x16, + 0xd7, 0x40, 0x06, 0xbc, 0x96, 0xf2, 0x62, 0x49, 0xb9, 0xf0, 0xa9, 0x0d, + 0x07, 0x6f, 0x08, 0xe5, +}; +static const struct drbg_kat_pr_false kat1921_t = { + 0, kat1921_entropyin, kat1921_nonce, kat1921_persstr, + kat1921_entropyinreseed, kat1921_addinreseed, kat1921_addin0, + kat1921_addin1, kat1921_retbits +}; +static const struct drbg_kat kat1921 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1921_t +}; + +static const unsigned char kat1922_entropyin[] = { + 0x20, 0x0f, 0x09, 0x6b, 0x76, 0xe3, 0xbf, 0x2f, 0x40, 0x13, 0x3a, 0xe6, + 0x64, 0x92, 0x21, 0x08, 0x4f, 0x0a, 0xfb, 0x11, 0xf9, 0x6f, 0xe8, 0x6a, + 0x49, 0x87, 0xae, 0x7b, 0x11, 0x59, 0xd0, 0x32, +}; +static const unsigned char kat1922_nonce[] = { + 0x3b, 0xe5, 0x6f, 0x6c, 0x0a, 0xe2, 0x89, 0xdf, 0xc6, 0x36, 0xf9, 0x6c, + 0xff, 0x5d, 0xaa, 0xa1, +}; +static const unsigned char kat1922_persstr[] = {0}; +static const unsigned char kat1922_entropyinreseed[] = { + 0x89, 0x51, 0x33, 0xf4, 0xf2, 0xd1, 0xbe, 0x25, 0xec, 0x92, 0x9d, 0x42, + 0xe9, 0x04, 0xdb, 0xc7, 0x74, 0x99, 0x39, 0xad, 0x70, 0x22, 0xa9, 0x03, + 0x60, 0xa7, 0x43, 0xfd, 0x2c, 0x3f, 0x48, 0x3c, +}; +static const unsigned char kat1922_addinreseed[] = {0}; +static const unsigned char kat1922_addin0[] = {0}; +static const unsigned char kat1922_addin1[] = {0}; +static const unsigned char kat1922_retbits[] = { + 0xbf, 0x12, 0xbf, 0x4d, 0x8e, 0xb6, 0xbb, 0xbd, 0x9f, 0x91, 0xa2, 0xef, + 0x48, 0xc6, 0xbc, 0x65, 0x24, 0xa1, 0x33, 0xdd, 0xe3, 0xc8, 0xd4, 0xf1, + 0x3d, 0x4b, 0x5c, 0xda, 0xe3, 0xb9, 0xe0, 0x41, 0xb9, 0x8c, 0x86, 0x50, + 0xad, 0xa9, 0xe1, 0xf2, 0xb5, 0xdf, 0x01, 0xd8, 0x75, 0x47, 0x0b, 0x22, + 0x0c, 0xac, 0xad, 0x0e, 0xe8, 0x87, 0x08, 0x0c, 0x27, 0x19, 0x29, 0xf6, + 0x95, 0x20, 0x4b, 0x66, +}; +static const struct drbg_kat_pr_false kat1922_t = { + 1, kat1922_entropyin, kat1922_nonce, kat1922_persstr, + kat1922_entropyinreseed, kat1922_addinreseed, kat1922_addin0, + kat1922_addin1, kat1922_retbits +}; +static const struct drbg_kat kat1922 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1922_t +}; + +static const unsigned char kat1923_entropyin[] = { + 0x1c, 0xc5, 0xa0, 0x86, 0x83, 0x1f, 0xac, 0x6b, 0xa0, 0x46, 0xb7, 0xf5, + 0x6c, 0x4e, 0xa5, 0xba, 0x7b, 0xcf, 0x9d, 0x85, 0x1b, 0x50, 0x51, 0x25, + 0x4c, 0x46, 0x83, 0xbf, 0xed, 0x7a, 0x26, 0xf9, +}; +static const unsigned char kat1923_nonce[] = { + 0xa8, 0xd4, 0x2c, 0xa3, 0xb0, 0x8c, 0x9c, 0x97, 0x4f, 0xa2, 0xc2, 0xec, + 0xeb, 0x5a, 0x71, 0xe7, +}; +static const unsigned char kat1923_persstr[] = {0}; +static const unsigned char kat1923_entropyinreseed[] = { + 0xe8, 0xc1, 0x74, 0xc6, 0x21, 0xaf, 0x92, 0xc5, 0x01, 0x2f, 0xc4, 0xca, + 0xca, 0x8d, 0x1f, 0xb7, 0x2e, 0xa7, 0x99, 0x8f, 0x5f, 0x78, 0xa6, 0xcd, + 0x5f, 0x3f, 0x25, 0x0f, 0x33, 0x0f, 0x0c, 0x74, +}; +static const unsigned char kat1923_addinreseed[] = {0}; +static const unsigned char kat1923_addin0[] = {0}; +static const unsigned char kat1923_addin1[] = {0}; +static const unsigned char kat1923_retbits[] = { + 0x66, 0x54, 0xd8, 0x31, 0x40, 0x36, 0x93, 0x59, 0x14, 0x76, 0x21, 0x3b, + 0xee, 0x7b, 0xea, 0x64, 0x4c, 0x50, 0x58, 0xf9, 0x34, 0x54, 0xe8, 0x9e, + 0xa5, 0xb3, 0x48, 0xbc, 0x53, 0x54, 0xe2, 0xd8, 0xab, 0xac, 0x00, 0xd5, + 0x3b, 0x38, 0x79, 0xe2, 0xc8, 0x9b, 0xc8, 0xf4, 0x90, 0x96, 0x9e, 0x42, + 0xd7, 0x38, 0xba, 0x37, 0x43, 0x28, 0x22, 0xdf, 0x85, 0x9d, 0x63, 0x1c, + 0xfc, 0x86, 0xcd, 0x40, +}; +static const struct drbg_kat_pr_false kat1923_t = { + 2, kat1923_entropyin, kat1923_nonce, kat1923_persstr, + kat1923_entropyinreseed, kat1923_addinreseed, kat1923_addin0, + kat1923_addin1, kat1923_retbits +}; +static const struct drbg_kat kat1923 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1923_t +}; + +static const unsigned char kat1924_entropyin[] = { + 0x6b, 0xa5, 0xe8, 0x15, 0x27, 0x4e, 0x5c, 0xf4, 0xb2, 0x46, 0x77, 0x43, + 0xa8, 0x33, 0x3c, 0x5c, 0x52, 0x92, 0x32, 0x9a, 0x96, 0xf0, 0xae, 0xa4, + 0xfd, 0xc9, 0xa1, 0x80, 0x8b, 0x31, 0x2c, 0x62, +}; +static const unsigned char kat1924_nonce[] = { + 0x2a, 0xbe, 0x3c, 0x2f, 0x11, 0xc9, 0x0e, 0xc9, 0xb6, 0x84, 0xe1, 0xcb, + 0x3f, 0xb0, 0xbd, 0xe6, +}; +static const unsigned char kat1924_persstr[] = {0}; +static const unsigned char kat1924_entropyinreseed[] = { + 0xbc, 0x72, 0x57, 0xf6, 0x25, 0xcc, 0x10, 0x95, 0x36, 0x6d, 0x7e, 0xdd, + 0xb7, 0x93, 0xea, 0x75, 0xad, 0x2c, 0x5a, 0x47, 0x55, 0x14, 0xd5, 0x30, + 0x56, 0x65, 0x94, 0x23, 0xe5, 0x4c, 0xd0, 0x01, +}; +static const unsigned char kat1924_addinreseed[] = {0}; +static const unsigned char kat1924_addin0[] = {0}; +static const unsigned char kat1924_addin1[] = {0}; +static const unsigned char kat1924_retbits[] = { + 0xb9, 0x5f, 0x8d, 0x62, 0x58, 0x51, 0x5a, 0x67, 0xc5, 0x1f, 0x96, 0xf8, + 0x20, 0x1c, 0x0b, 0x54, 0x45, 0x14, 0x2c, 0xde, 0x38, 0xda, 0xb3, 0xcf, + 0xf2, 0xb5, 0x27, 0xa4, 0xe5, 0xdc, 0xa5, 0xee, 0xe1, 0x5f, 0x79, 0xcf, + 0x07, 0x33, 0x45, 0xf3, 0x43, 0x8b, 0x1c, 0xd5, 0x07, 0xb2, 0xfe, 0x6c, + 0xe1, 0x56, 0x97, 0x07, 0xfe, 0x0c, 0x28, 0x8b, 0x76, 0xbf, 0x85, 0xe1, + 0xbf, 0x1a, 0x04, 0x19, +}; +static const struct drbg_kat_pr_false kat1924_t = { + 3, kat1924_entropyin, kat1924_nonce, kat1924_persstr, + kat1924_entropyinreseed, kat1924_addinreseed, kat1924_addin0, + kat1924_addin1, kat1924_retbits +}; +static const struct drbg_kat kat1924 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1924_t +}; + +static const unsigned char kat1925_entropyin[] = { + 0x14, 0x59, 0x8d, 0x23, 0xe6, 0x1d, 0x00, 0x3b, 0xf3, 0x21, 0xa2, 0xb4, + 0x81, 0x6f, 0x0a, 0x7e, 0xa3, 0xef, 0x6d, 0xe1, 0xad, 0x69, 0x83, 0xf9, + 0x3f, 0x26, 0xb1, 0xc1, 0x63, 0x0d, 0x58, 0x8b, +}; +static const unsigned char kat1925_nonce[] = { + 0x2f, 0xce, 0xfe, 0x8c, 0x6a, 0x93, 0xce, 0xf3, 0x5a, 0x92, 0x5e, 0xb0, + 0x23, 0x17, 0x9f, 0x02, +}; +static const unsigned char kat1925_persstr[] = {0}; +static const unsigned char kat1925_entropyinreseed[] = { + 0x42, 0xed, 0xae, 0x47, 0x8f, 0x8b, 0xa6, 0xd4, 0x5e, 0x97, 0xa4, 0x39, + 0x06, 0xaa, 0x2a, 0x62, 0x3a, 0xb6, 0x04, 0x03, 0xf5, 0xf6, 0x0a, 0x4c, + 0x40, 0x54, 0x8f, 0x0d, 0xed, 0xed, 0xba, 0x4b, +}; +static const unsigned char kat1925_addinreseed[] = {0}; +static const unsigned char kat1925_addin0[] = {0}; +static const unsigned char kat1925_addin1[] = {0}; +static const unsigned char kat1925_retbits[] = { + 0x76, 0x6a, 0xe3, 0x6c, 0x6e, 0x9c, 0x48, 0x2c, 0x6f, 0xa2, 0xe7, 0xfc, + 0x1e, 0x25, 0x1d, 0xc3, 0x5b, 0x2e, 0x2a, 0xe6, 0x45, 0xa7, 0x9c, 0x2b, + 0x8d, 0x5c, 0x0b, 0xd7, 0xf5, 0x20, 0xb0, 0xf4, 0xde, 0x1b, 0x68, 0x41, + 0x9c, 0x4d, 0xce, 0xa0, 0x75, 0x16, 0xe2, 0x55, 0xe6, 0xcb, 0xe9, 0x60, + 0x07, 0xa2, 0x53, 0x96, 0xf9, 0x3f, 0x78, 0x1b, 0x36, 0xc9, 0xd2, 0xca, + 0x32, 0x36, 0x14, 0x33, +}; +static const struct drbg_kat_pr_false kat1925_t = { + 4, kat1925_entropyin, kat1925_nonce, kat1925_persstr, + kat1925_entropyinreseed, kat1925_addinreseed, kat1925_addin0, + kat1925_addin1, kat1925_retbits +}; +static const struct drbg_kat kat1925 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1925_t +}; + +static const unsigned char kat1926_entropyin[] = { + 0xb5, 0x53, 0x89, 0x90, 0x82, 0xc7, 0x83, 0x54, 0x84, 0xa2, 0xcb, 0x11, + 0x14, 0xce, 0xb1, 0x8f, 0xcb, 0x26, 0xa7, 0xb0, 0x1d, 0xb8, 0xd7, 0xcb, + 0xfc, 0xea, 0x9c, 0x35, 0xa6, 0x4e, 0x11, 0x1f, +}; +static const unsigned char kat1926_nonce[] = { + 0x2e, 0x81, 0x4d, 0x71, 0x71, 0x73, 0x6a, 0xee, 0x9a, 0x47, 0xf9, 0x94, + 0xe7, 0x63, 0x9e, 0xdf, +}; +static const unsigned char kat1926_persstr[] = {0}; +static const unsigned char kat1926_entropyinreseed[] = { + 0x53, 0xff, 0x45, 0xe7, 0x28, 0x97, 0x9c, 0xbb, 0x90, 0x54, 0xdc, 0xa9, + 0x30, 0xda, 0x5a, 0x54, 0xf1, 0xc6, 0x03, 0x37, 0x56, 0x21, 0xb5, 0xc8, + 0xbe, 0x06, 0x52, 0x13, 0x2f, 0x58, 0x7f, 0x0e, +}; +static const unsigned char kat1926_addinreseed[] = {0}; +static const unsigned char kat1926_addin0[] = {0}; +static const unsigned char kat1926_addin1[] = {0}; +static const unsigned char kat1926_retbits[] = { + 0x06, 0x93, 0xd0, 0xa1, 0x3f, 0xb4, 0x84, 0x8d, 0xcf, 0xb5, 0xbf, 0xe4, + 0xa9, 0xa0, 0x22, 0x27, 0xd3, 0x98, 0x41, 0x03, 0xce, 0x39, 0xbb, 0x8c, + 0x40, 0xd7, 0xcb, 0x22, 0x4b, 0xc9, 0x28, 0x10, 0x87, 0xd7, 0x97, 0xa5, + 0x33, 0x33, 0x75, 0x05, 0x2b, 0xfc, 0x35, 0x2e, 0xa8, 0x8d, 0xa1, 0xc9, + 0x36, 0x8c, 0x3e, 0x25, 0x0e, 0x09, 0x5b, 0x12, 0x09, 0x1f, 0x6b, 0x6f, + 0x12, 0x60, 0x5f, 0x46, +}; +static const struct drbg_kat_pr_false kat1926_t = { + 5, kat1926_entropyin, kat1926_nonce, kat1926_persstr, + kat1926_entropyinreseed, kat1926_addinreseed, kat1926_addin0, + kat1926_addin1, kat1926_retbits +}; +static const struct drbg_kat kat1926 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1926_t +}; + +static const unsigned char kat1927_entropyin[] = { + 0xcb, 0x15, 0xc9, 0x0b, 0xc7, 0x2d, 0xf4, 0xa4, 0xad, 0xed, 0x92, 0xe9, + 0xa8, 0x5f, 0x0a, 0x23, 0x01, 0x9f, 0xbf, 0x86, 0x7b, 0x5b, 0x02, 0x7a, + 0x61, 0x4a, 0x00, 0x25, 0xf9, 0xf3, 0xcc, 0xfe, +}; +static const unsigned char kat1927_nonce[] = { + 0x3b, 0x42, 0x6d, 0xf8, 0xfc, 0x90, 0xb5, 0xba, 0xc1, 0xf2, 0x0e, 0x8d, + 0x32, 0x48, 0x7d, 0x1a, +}; +static const unsigned char kat1927_persstr[] = {0}; +static const unsigned char kat1927_entropyinreseed[] = { + 0x27, 0x70, 0x98, 0xc4, 0xc0, 0x4f, 0x2e, 0x3f, 0x47, 0xa4, 0x61, 0xe7, + 0x02, 0x58, 0xd6, 0x29, 0xfd, 0xac, 0x97, 0xe0, 0x40, 0xf1, 0x3d, 0x4b, + 0xa0, 0x15, 0x16, 0x0a, 0xd7, 0xb5, 0x37, 0xb9, +}; +static const unsigned char kat1927_addinreseed[] = {0}; +static const unsigned char kat1927_addin0[] = {0}; +static const unsigned char kat1927_addin1[] = {0}; +static const unsigned char kat1927_retbits[] = { + 0x75, 0x32, 0x87, 0x78, 0xfe, 0x7a, 0x63, 0xdc, 0xe1, 0xb7, 0xc8, 0xce, + 0xde, 0xa9, 0xd6, 0xa9, 0xd7, 0x67, 0xdc, 0x81, 0x79, 0x1d, 0xf0, 0x48, + 0x19, 0x83, 0xab, 0xfa, 0x2d, 0x21, 0x5a, 0xe5, 0x36, 0xbf, 0x76, 0xb5, + 0x99, 0x2a, 0x10, 0xc4, 0xa5, 0xcb, 0x06, 0x85, 0x8b, 0x5a, 0x4e, 0x3c, + 0x2d, 0x8b, 0xa4, 0xba, 0x99, 0x12, 0xae, 0xbe, 0x96, 0x03, 0x93, 0xe8, + 0x1e, 0x28, 0xaa, 0x69, +}; +static const struct drbg_kat_pr_false kat1927_t = { + 6, kat1927_entropyin, kat1927_nonce, kat1927_persstr, + kat1927_entropyinreseed, kat1927_addinreseed, kat1927_addin0, + kat1927_addin1, kat1927_retbits +}; +static const struct drbg_kat kat1927 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1927_t +}; + +static const unsigned char kat1928_entropyin[] = { + 0xa0, 0x2d, 0xe2, 0xe5, 0x3e, 0x9b, 0x72, 0x85, 0x35, 0x11, 0xac, 0xaf, + 0xa5, 0x90, 0x28, 0xc3, 0x58, 0xe8, 0xdc, 0x4a, 0x1c, 0x70, 0x83, 0x4d, + 0x43, 0x50, 0x65, 0x8b, 0x89, 0x99, 0xac, 0xf9, +}; +static const unsigned char kat1928_nonce[] = { + 0x2d, 0xa0, 0x17, 0xfb, 0xfc, 0x2b, 0x13, 0xf2, 0x1b, 0xda, 0x1e, 0x70, + 0xde, 0x06, 0x74, 0x4b, +}; +static const unsigned char kat1928_persstr[] = {0}; +static const unsigned char kat1928_entropyinreseed[] = { + 0x14, 0xe7, 0xc1, 0xaf, 0x87, 0x60, 0xd6, 0x4c, 0x74, 0x66, 0x8d, 0xd5, + 0x09, 0x50, 0x83, 0x5d, 0x98, 0x81, 0xe0, 0x40, 0xec, 0xd6, 0x25, 0xe0, + 0x02, 0x5d, 0x8c, 0x13, 0x63, 0xbf, 0xd7, 0x64, +}; +static const unsigned char kat1928_addinreseed[] = {0}; +static const unsigned char kat1928_addin0[] = {0}; +static const unsigned char kat1928_addin1[] = {0}; +static const unsigned char kat1928_retbits[] = { + 0x09, 0xe0, 0x47, 0x91, 0xc2, 0xf9, 0xbe, 0xf5, 0x29, 0x78, 0x54, 0x06, + 0x52, 0x12, 0xcf, 0x1b, 0xe4, 0x4c, 0x2a, 0x5e, 0x28, 0xe8, 0xf9, 0x0d, + 0xc1, 0x84, 0xd4, 0xe7, 0x6c, 0x6d, 0xd0, 0x94, 0x49, 0x85, 0x9e, 0x66, + 0xf4, 0x5b, 0x7e, 0x1f, 0x4c, 0xb2, 0x2a, 0xe5, 0x1b, 0x8d, 0x0c, 0x53, + 0x74, 0x45, 0xb7, 0xd4, 0x38, 0xb0, 0x54, 0xef, 0x9c, 0x7c, 0xc7, 0xf5, + 0xa2, 0xba, 0x2e, 0x19, +}; +static const struct drbg_kat_pr_false kat1928_t = { + 7, kat1928_entropyin, kat1928_nonce, kat1928_persstr, + kat1928_entropyinreseed, kat1928_addinreseed, kat1928_addin0, + kat1928_addin1, kat1928_retbits +}; +static const struct drbg_kat kat1928 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1928_t +}; + +static const unsigned char kat1929_entropyin[] = { + 0xc9, 0xce, 0xd6, 0x50, 0x13, 0xee, 0x88, 0xa5, 0x4e, 0xe9, 0x0d, 0x95, + 0xca, 0x61, 0x89, 0x20, 0x7c, 0x22, 0xd7, 0xfd, 0x93, 0xf5, 0x69, 0xec, + 0x11, 0xbf, 0x69, 0x42, 0x43, 0xb7, 0xaa, 0x19, +}; +static const unsigned char kat1929_nonce[] = { + 0x4b, 0x3b, 0x12, 0x4b, 0x7e, 0x7f, 0x83, 0xa8, 0x8d, 0x83, 0x64, 0x56, + 0x33, 0xd7, 0xa8, 0x6a, +}; +static const unsigned char kat1929_persstr[] = {0}; +static const unsigned char kat1929_entropyinreseed[] = { + 0x69, 0xc0, 0x85, 0x76, 0xb8, 0x8d, 0x95, 0x7a, 0xbd, 0xcb, 0xbf, 0x03, + 0x8e, 0xcb, 0x6d, 0xb8, 0x65, 0xd1, 0x2b, 0x0b, 0x0a, 0x7d, 0x42, 0x0b, + 0x64, 0xfd, 0xb0, 0x3a, 0x26, 0x19, 0x08, 0x28, +}; +static const unsigned char kat1929_addinreseed[] = {0}; +static const unsigned char kat1929_addin0[] = {0}; +static const unsigned char kat1929_addin1[] = {0}; +static const unsigned char kat1929_retbits[] = { + 0xb2, 0x4a, 0xf1, 0x37, 0x9b, 0x88, 0xda, 0x5f, 0xba, 0x97, 0x85, 0xd8, + 0xac, 0x5f, 0xc9, 0xfb, 0x53, 0xcc, 0x3d, 0xb5, 0xc7, 0x1a, 0xd8, 0x00, + 0x2a, 0x3f, 0x08, 0x62, 0xf4, 0x84, 0x87, 0xad, 0xdc, 0xf4, 0x2d, 0xdc, + 0x19, 0x3b, 0xc9, 0x08, 0x82, 0x71, 0x07, 0x30, 0x26, 0xc3, 0x3c, 0xb1, + 0xb8, 0xef, 0xd7, 0x72, 0x03, 0xd5, 0xe9, 0xbc, 0xd8, 0x83, 0x94, 0xe4, + 0x43, 0xdb, 0xd5, 0x73, +}; +static const struct drbg_kat_pr_false kat1929_t = { + 8, kat1929_entropyin, kat1929_nonce, kat1929_persstr, + kat1929_entropyinreseed, kat1929_addinreseed, kat1929_addin0, + kat1929_addin1, kat1929_retbits +}; +static const struct drbg_kat kat1929 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1929_t +}; + +static const unsigned char kat1930_entropyin[] = { + 0x95, 0x9a, 0xd6, 0xbc, 0xd9, 0xf6, 0xb2, 0xa1, 0x07, 0x19, 0x9d, 0x95, + 0x93, 0xb7, 0xf6, 0x33, 0xec, 0xb0, 0x30, 0x24, 0x6c, 0xc9, 0x86, 0x0a, + 0x41, 0x55, 0x88, 0x34, 0x07, 0x0d, 0x0a, 0x0b, +}; +static const unsigned char kat1930_nonce[] = { + 0x77, 0x84, 0x1f, 0x79, 0x56, 0x2d, 0xa4, 0xe4, 0x8a, 0x66, 0x56, 0x45, + 0x41, 0x0e, 0x15, 0x69, +}; +static const unsigned char kat1930_persstr[] = {0}; +static const unsigned char kat1930_entropyinreseed[] = { + 0x21, 0x3d, 0xa2, 0x49, 0x06, 0xda, 0x06, 0xff, 0x2b, 0x9b, 0xeb, 0x1f, + 0xe5, 0x04, 0x14, 0x96, 0x36, 0xa8, 0xac, 0xd6, 0x70, 0x01, 0xfe, 0x32, + 0x6b, 0xfa, 0xbd, 0x03, 0x8a, 0x71, 0x48, 0xf3, +}; +static const unsigned char kat1930_addinreseed[] = {0}; +static const unsigned char kat1930_addin0[] = {0}; +static const unsigned char kat1930_addin1[] = {0}; +static const unsigned char kat1930_retbits[] = { + 0x33, 0x57, 0x48, 0xe3, 0x90, 0xea, 0x7c, 0x23, 0x19, 0x3c, 0xdf, 0x67, + 0x2f, 0x31, 0x82, 0x65, 0x6b, 0x9e, 0x44, 0xe7, 0x3a, 0xff, 0x8f, 0x38, + 0x23, 0x9b, 0x06, 0x57, 0xd8, 0x25, 0x8c, 0x2b, 0x1d, 0x40, 0x45, 0x8a, + 0x0f, 0xe2, 0x01, 0x01, 0x0b, 0x36, 0xed, 0xe6, 0x22, 0x06, 0xce, 0x67, + 0xc1, 0x98, 0x32, 0x3b, 0x7c, 0xd1, 0xd8, 0x1b, 0x61, 0xaa, 0x25, 0xa0, + 0xf5, 0x21, 0x1e, 0x95, +}; +static const struct drbg_kat_pr_false kat1930_t = { + 9, kat1930_entropyin, kat1930_nonce, kat1930_persstr, + kat1930_entropyinreseed, kat1930_addinreseed, kat1930_addin0, + kat1930_addin1, kat1930_retbits +}; +static const struct drbg_kat kat1930 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1930_t +}; + +static const unsigned char kat1931_entropyin[] = { + 0xb9, 0xff, 0xca, 0x2a, 0x28, 0xb4, 0xb5, 0x35, 0xc2, 0xad, 0x53, 0x44, + 0x7a, 0x2b, 0x53, 0x7c, 0x5f, 0xd6, 0x73, 0xd2, 0xeb, 0x2a, 0x6e, 0x98, + 0x0e, 0x84, 0x34, 0xec, 0x7b, 0xec, 0x21, 0xa2, +}; +static const unsigned char kat1931_nonce[] = { + 0xd2, 0x3a, 0x37, 0x64, 0x51, 0xfc, 0x7e, 0x0a, 0x6a, 0x0d, 0x20, 0x15, + 0x97, 0x04, 0xe9, 0xfe, +}; +static const unsigned char kat1931_persstr[] = {0}; +static const unsigned char kat1931_entropyinreseed[] = { + 0x27, 0xde, 0x4e, 0x53, 0xba, 0x25, 0xe7, 0x4e, 0x08, 0xa9, 0x8d, 0xc2, + 0xb9, 0x6d, 0xf4, 0x39, 0xff, 0xfa, 0x0c, 0xf2, 0x11, 0xa5, 0x22, 0xc0, + 0xa9, 0x2e, 0xf1, 0xb6, 0x08, 0x30, 0xc3, 0x08, +}; +static const unsigned char kat1931_addinreseed[] = {0}; +static const unsigned char kat1931_addin0[] = {0}; +static const unsigned char kat1931_addin1[] = {0}; +static const unsigned char kat1931_retbits[] = { + 0xeb, 0xb3, 0x00, 0x30, 0x3b, 0xf8, 0xbc, 0xb9, 0x77, 0x1a, 0x2f, 0xbc, + 0x75, 0x53, 0x59, 0xcc, 0x8a, 0x8d, 0xe2, 0xd8, 0x24, 0x5b, 0xf4, 0xac, + 0xb2, 0xb5, 0x16, 0xe2, 0xa8, 0xbc, 0x71, 0x91, 0xea, 0x47, 0x7d, 0xd8, + 0x4a, 0x4c, 0x5a, 0x19, 0xc2, 0xc4, 0xcd, 0x09, 0xb8, 0x23, 0x3d, 0x58, + 0x01, 0x5e, 0x4f, 0xe9, 0xc0, 0xf0, 0xc6, 0x01, 0x76, 0x8d, 0xe0, 0xaf, + 0x3f, 0x16, 0x36, 0xac, +}; +static const struct drbg_kat_pr_false kat1931_t = { + 10, kat1931_entropyin, kat1931_nonce, kat1931_persstr, + kat1931_entropyinreseed, kat1931_addinreseed, kat1931_addin0, + kat1931_addin1, kat1931_retbits +}; +static const struct drbg_kat kat1931 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1931_t +}; + +static const unsigned char kat1932_entropyin[] = { + 0x4c, 0xe2, 0x4a, 0x78, 0x79, 0x55, 0x07, 0xa5, 0x37, 0xb3, 0x2c, 0x12, + 0x7d, 0x94, 0x9c, 0x7d, 0xf9, 0x03, 0x22, 0xa8, 0xd5, 0x03, 0x8e, 0x25, + 0x9d, 0x4c, 0xad, 0x7d, 0x21, 0x88, 0x9e, 0x09, +}; +static const unsigned char kat1932_nonce[] = { + 0x1e, 0xc7, 0x84, 0x86, 0x91, 0xce, 0x55, 0x18, 0x76, 0x02, 0x8d, 0x24, + 0xc4, 0xd9, 0x74, 0xe0, +}; +static const unsigned char kat1932_persstr[] = {0}; +static const unsigned char kat1932_entropyinreseed[] = { + 0x40, 0x42, 0x58, 0x4f, 0x1c, 0x00, 0x00, 0x59, 0xc2, 0xa1, 0xd7, 0x3c, + 0x60, 0x28, 0x56, 0x7b, 0x12, 0xd5, 0xef, 0x2a, 0xda, 0xc3, 0x75, 0x4f, + 0x32, 0xf4, 0x1a, 0x61, 0xea, 0x65, 0xfe, 0x06, +}; +static const unsigned char kat1932_addinreseed[] = {0}; +static const unsigned char kat1932_addin0[] = {0}; +static const unsigned char kat1932_addin1[] = {0}; +static const unsigned char kat1932_retbits[] = { + 0xb5, 0xcb, 0xd3, 0xad, 0x01, 0xd2, 0x16, 0xeb, 0x48, 0x73, 0xae, 0x66, + 0x24, 0x4c, 0xc6, 0x13, 0x7f, 0xa7, 0xb4, 0x6c, 0xfe, 0xa2, 0xdd, 0x60, + 0x3b, 0x4e, 0xb7, 0xe2, 0xca, 0x0a, 0x92, 0xcf, 0xff, 0x78, 0xc4, 0x69, + 0xc4, 0x08, 0x8c, 0x62, 0x3d, 0xc2, 0x72, 0x2b, 0x18, 0x7f, 0xb8, 0x78, + 0x3b, 0x4e, 0xc1, 0x0d, 0x0c, 0x93, 0x03, 0x7d, 0xc2, 0x13, 0xd4, 0x14, + 0xd9, 0x36, 0xcc, 0xcc, +}; +static const struct drbg_kat_pr_false kat1932_t = { + 11, kat1932_entropyin, kat1932_nonce, kat1932_persstr, + kat1932_entropyinreseed, kat1932_addinreseed, kat1932_addin0, + kat1932_addin1, kat1932_retbits +}; +static const struct drbg_kat kat1932 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1932_t +}; + +static const unsigned char kat1933_entropyin[] = { + 0xce, 0x8d, 0xaf, 0xdd, 0xf0, 0x8f, 0x03, 0x21, 0xb0, 0xf0, 0x7a, 0x82, + 0x52, 0x82, 0xb4, 0x53, 0x40, 0x11, 0x78, 0x6f, 0x04, 0x28, 0x86, 0x78, + 0xcb, 0xd9, 0xf3, 0x40, 0x75, 0x2a, 0x9a, 0xc6, +}; +static const unsigned char kat1933_nonce[] = { + 0xd9, 0x2a, 0xe0, 0x2e, 0x9b, 0x54, 0x0b, 0x68, 0x12, 0x84, 0x19, 0xbb, + 0x62, 0x8b, 0x90, 0x74, +}; +static const unsigned char kat1933_persstr[] = {0}; +static const unsigned char kat1933_entropyinreseed[] = { + 0xee, 0xd6, 0x94, 0x79, 0x73, 0x73, 0x5b, 0x05, 0xdd, 0x54, 0x68, 0xa6, + 0x62, 0x80, 0x21, 0x51, 0xb3, 0x0f, 0xbd, 0xe6, 0xc9, 0x56, 0xc8, 0xf0, + 0x68, 0x54, 0x6c, 0x94, 0x62, 0xce, 0xa7, 0x87, +}; +static const unsigned char kat1933_addinreseed[] = {0}; +static const unsigned char kat1933_addin0[] = {0}; +static const unsigned char kat1933_addin1[] = {0}; +static const unsigned char kat1933_retbits[] = { + 0x49, 0x6f, 0x69, 0xfa, 0x85, 0x65, 0x55, 0x8b, 0xfd, 0xe8, 0xb6, 0x7e, + 0x99, 0x0d, 0x5f, 0x44, 0x6a, 0x7c, 0xd6, 0x68, 0xba, 0x0a, 0xa1, 0x0d, + 0x1e, 0xb1, 0x71, 0x0e, 0xf6, 0x47, 0x98, 0xd7, 0xd8, 0xc7, 0xe0, 0x8d, + 0xb6, 0x54, 0x40, 0x9e, 0x4c, 0x62, 0x6c, 0x05, 0x03, 0xf3, 0x77, 0x9f, + 0x14, 0xa9, 0xb2, 0xbe, 0x22, 0x90, 0x5f, 0xbf, 0x0c, 0x49, 0xc3, 0x05, + 0x70, 0x02, 0x49, 0x53, +}; +static const struct drbg_kat_pr_false kat1933_t = { + 12, kat1933_entropyin, kat1933_nonce, kat1933_persstr, + kat1933_entropyinreseed, kat1933_addinreseed, kat1933_addin0, + kat1933_addin1, kat1933_retbits +}; +static const struct drbg_kat kat1933 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1933_t +}; + +static const unsigned char kat1934_entropyin[] = { + 0xf3, 0xab, 0x51, 0x25, 0xec, 0x2d, 0xbb, 0x3d, 0xd9, 0x8e, 0x4f, 0x02, + 0x53, 0xaf, 0x3c, 0xd2, 0x3a, 0x85, 0xf4, 0xf0, 0xcb, 0x01, 0xc7, 0x45, + 0xf4, 0x21, 0x03, 0x2b, 0x4f, 0x0c, 0x86, 0x33, +}; +static const unsigned char kat1934_nonce[] = { + 0x85, 0x20, 0x43, 0x76, 0xc7, 0x7c, 0xa3, 0xa9, 0x9a, 0x66, 0x21, 0x35, + 0x49, 0x91, 0xf0, 0x5a, +}; +static const unsigned char kat1934_persstr[] = {0}; +static const unsigned char kat1934_entropyinreseed[] = { + 0x69, 0x16, 0x7e, 0x80, 0x47, 0x83, 0x89, 0xce, 0x33, 0x42, 0x65, 0x02, + 0xa6, 0xf7, 0xdd, 0x96, 0xd3, 0x1e, 0x2c, 0xf7, 0x86, 0x4b, 0xc8, 0xe0, + 0x8c, 0xaf, 0x41, 0xa0, 0xbc, 0xb6, 0xe7, 0x74, +}; +static const unsigned char kat1934_addinreseed[] = {0}; +static const unsigned char kat1934_addin0[] = {0}; +static const unsigned char kat1934_addin1[] = {0}; +static const unsigned char kat1934_retbits[] = { + 0xe6, 0xad, 0xcd, 0x35, 0x29, 0xaf, 0xd0, 0x55, 0x7c, 0x19, 0x51, 0xb6, + 0x32, 0x56, 0xc6, 0xb7, 0xb4, 0x23, 0xb1, 0x27, 0x10, 0xb5, 0xf4, 0xf8, + 0x77, 0x15, 0xa8, 0xff, 0x21, 0x56, 0xc0, 0x7c, 0xbe, 0xa5, 0x3f, 0x29, + 0xa6, 0x7c, 0x60, 0xb0, 0x10, 0xdc, 0x4c, 0x45, 0x75, 0x04, 0xdd, 0x8a, + 0xe4, 0xae, 0x3f, 0x92, 0xda, 0xb3, 0xc2, 0xc4, 0x63, 0x10, 0xf4, 0x61, + 0x62, 0x90, 0xca, 0xb0, +}; +static const struct drbg_kat_pr_false kat1934_t = { + 13, kat1934_entropyin, kat1934_nonce, kat1934_persstr, + kat1934_entropyinreseed, kat1934_addinreseed, kat1934_addin0, + kat1934_addin1, kat1934_retbits +}; +static const struct drbg_kat kat1934 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1934_t +}; + +static const unsigned char kat1935_entropyin[] = { + 0x67, 0xde, 0x0f, 0x88, 0xbd, 0x02, 0x17, 0x93, 0x81, 0xc0, 0x3b, 0xe6, + 0x29, 0x5a, 0xdb, 0xa3, 0xc1, 0x02, 0xf5, 0xee, 0x74, 0xf8, 0x5a, 0x96, + 0xee, 0xbe, 0xad, 0x92, 0x5d, 0x0e, 0x80, 0xe0, +}; +static const unsigned char kat1935_nonce[] = { + 0x9e, 0xc1, 0xef, 0x1f, 0xe9, 0xee, 0x30, 0x8e, 0xa9, 0xc4, 0xd2, 0x44, + 0x7b, 0x9e, 0xab, 0xea, +}; +static const unsigned char kat1935_persstr[] = {0}; +static const unsigned char kat1935_entropyinreseed[] = { + 0x12, 0x51, 0x33, 0x1a, 0x10, 0xf9, 0xfb, 0xe9, 0x38, 0x48, 0x58, 0x58, + 0x35, 0x24, 0x70, 0xc5, 0x8c, 0x47, 0x29, 0xa9, 0xd9, 0xc4, 0x7c, 0x64, + 0x5d, 0x06, 0x26, 0x15, 0x2d, 0xdb, 0x21, 0x21, +}; +static const unsigned char kat1935_addinreseed[] = {0}; +static const unsigned char kat1935_addin0[] = {0}; +static const unsigned char kat1935_addin1[] = {0}; +static const unsigned char kat1935_retbits[] = { + 0xd6, 0x69, 0xb7, 0xd6, 0xdc, 0x83, 0xb1, 0x6e, 0x2f, 0x81, 0x91, 0xd2, + 0x16, 0xab, 0x0b, 0xe3, 0x52, 0x39, 0x81, 0xb4, 0xcc, 0xa4, 0x02, 0x0d, + 0x58, 0x9f, 0x4d, 0x79, 0xb8, 0x92, 0x68, 0x38, 0x33, 0x4f, 0xbb, 0x7e, + 0xf4, 0x82, 0x65, 0xda, 0xa1, 0x09, 0x1e, 0xf2, 0x85, 0xfe, 0xc2, 0x78, + 0x6c, 0x81, 0xe7, 0x1b, 0xe4, 0x39, 0x2c, 0x82, 0x44, 0xe4, 0x36, 0x59, + 0x8d, 0x0a, 0xf3, 0x91, +}; +static const struct drbg_kat_pr_false kat1935_t = { + 14, kat1935_entropyin, kat1935_nonce, kat1935_persstr, + kat1935_entropyinreseed, kat1935_addinreseed, kat1935_addin0, + kat1935_addin1, kat1935_retbits +}; +static const struct drbg_kat kat1935 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1935_t +}; + +static const unsigned char kat1936_entropyin[] = { + 0x6f, 0x60, 0xf0, 0xf9, 0xd4, 0x86, 0xbc, 0x23, 0xe1, 0x22, 0x3b, 0x93, + 0x4e, 0x61, 0xc0, 0xc7, 0x8a, 0xe9, 0x23, 0x2f, 0xa2, 0xe9, 0xa8, 0x7c, + 0x6d, 0xac, 0xd4, 0x47, 0xc3, 0xf1, 0x0e, 0x9e, +}; +static const unsigned char kat1936_nonce[] = { + 0x40, 0x1e, 0x3f, 0x87, 0x76, 0x2f, 0xa8, 0xa1, 0x4a, 0xb2, 0x32, 0xcc, + 0xb8, 0x48, 0x0a, 0x2f, +}; +static const unsigned char kat1936_persstr[] = {0}; +static const unsigned char kat1936_entropyinreseed[] = { + 0x35, 0x0b, 0xe5, 0x25, 0x52, 0xa6, 0x5a, 0x80, 0x4a, 0x10, 0x65, 0x43, + 0xeb, 0xb7, 0xdd, 0x04, 0x6c, 0xff, 0xae, 0x10, 0x4e, 0x4e, 0x8b, 0x2f, + 0x18, 0x93, 0x6d, 0x56, 0x4d, 0x3c, 0x19, 0x50, +}; +static const unsigned char kat1936_addinreseed[] = { + 0x7a, 0x36, 0x88, 0xad, 0xb1, 0xcf, 0xb6, 0xc0, 0x32, 0x64, 0xe2, 0x76, + 0x2e, 0xce, 0x96, 0xbf, 0xe4, 0xda, 0xf9, 0x55, 0x8f, 0xab, 0xf7, 0x4d, + 0x7f, 0xff, 0x20, 0x3c, 0x08, 0xb4, 0xdd, 0x9f, +}; +static const unsigned char kat1936_addin0[] = { + 0x67, 0xcf, 0x4a, 0x56, 0xd0, 0x81, 0xc5, 0x36, 0x70, 0xf2, 0x57, 0xc2, + 0x55, 0x57, 0x01, 0x4c, 0xd5, 0xe8, 0xb0, 0xe9, 0x19, 0xaa, 0x58, 0xf2, + 0x3d, 0x68, 0x61, 0xb1, 0x0b, 0x00, 0xea, 0x80, +}; +static const unsigned char kat1936_addin1[] = { + 0x64, 0x8d, 0x4a, 0x22, 0x91, 0x98, 0xb4, 0x3f, 0x33, 0xdd, 0x7d, 0xd8, + 0x42, 0x66, 0x50, 0xbe, 0x11, 0xc5, 0x65, 0x6a, 0xdc, 0xdf, 0x91, 0x3b, + 0xb3, 0xee, 0x5e, 0xb4, 0x9a, 0x2a, 0x38, 0x92, +}; +static const unsigned char kat1936_retbits[] = { + 0x2d, 0x81, 0x9f, 0xb9, 0xfe, 0xe3, 0x8b, 0xfc, 0x3f, 0x15, 0xa0, 0x7e, + 0xf0, 0xe1, 0x83, 0xff, 0x36, 0xdb, 0x5d, 0x31, 0x84, 0xce, 0xa1, 0xd2, + 0x4e, 0x79, 0x6b, 0xa1, 0x03, 0x68, 0x74, 0x15, 0xab, 0xe6, 0xd9, 0xf2, + 0xc5, 0x9a, 0x11, 0x93, 0x14, 0x39, 0xa3, 0xd1, 0x4f, 0x45, 0xfc, 0x3f, + 0x43, 0x45, 0xf3, 0x31, 0xa0, 0x67, 0x5a, 0x34, 0x77, 0xea, 0xf7, 0xcd, + 0x89, 0x10, 0x7e, 0x37, +}; +static const struct drbg_kat_pr_false kat1936_t = { + 0, kat1936_entropyin, kat1936_nonce, kat1936_persstr, + kat1936_entropyinreseed, kat1936_addinreseed, kat1936_addin0, + kat1936_addin1, kat1936_retbits +}; +static const struct drbg_kat kat1936 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1936_t +}; + +static const unsigned char kat1937_entropyin[] = { + 0xfc, 0xe3, 0x1f, 0xf0, 0xd8, 0x4b, 0x13, 0x49, 0x59, 0xc8, 0xa3, 0x63, + 0x16, 0x68, 0xdd, 0x81, 0x26, 0xeb, 0x2f, 0xf9, 0xf4, 0x0a, 0x0d, 0x1d, + 0x74, 0xa3, 0x71, 0xb1, 0xd2, 0xbc, 0x52, 0x3e, +}; +static const unsigned char kat1937_nonce[] = { + 0x2e, 0x18, 0x41, 0x9b, 0x16, 0xaa, 0x23, 0xd2, 0x23, 0x0e, 0xf8, 0x78, + 0x37, 0x19, 0x81, 0xb9, +}; +static const unsigned char kat1937_persstr[] = {0}; +static const unsigned char kat1937_entropyinreseed[] = { + 0x75, 0xfe, 0x1b, 0x33, 0xea, 0x93, 0x0b, 0x25, 0x73, 0xc4, 0x91, 0xfa, + 0x89, 0x2c, 0x15, 0xe0, 0x99, 0x11, 0xe3, 0x47, 0x9e, 0x12, 0x7c, 0xd6, + 0xf8, 0x6e, 0xcb, 0x89, 0x56, 0x8e, 0x6d, 0xdd, +}; +static const unsigned char kat1937_addinreseed[] = { + 0xae, 0x15, 0x52, 0x90, 0x6d, 0x13, 0xa3, 0x4f, 0xad, 0xd1, 0xe3, 0xda, + 0xcc, 0xc1, 0xe9, 0x07, 0x5d, 0xae, 0x64, 0xbf, 0xe8, 0x0d, 0xcb, 0xf6, + 0x92, 0x1c, 0x96, 0xdf, 0x88, 0x97, 0x92, 0x9c, +}; +static const unsigned char kat1937_addin0[] = { + 0xc9, 0xbd, 0xdd, 0x01, 0x23, 0x7a, 0x8c, 0x46, 0x10, 0xc6, 0x16, 0x22, + 0xec, 0x28, 0xa8, 0x0b, 0x81, 0x1c, 0x28, 0x8c, 0x2d, 0xbf, 0xba, 0xb4, + 0x96, 0xb4, 0x9a, 0xc1, 0x5e, 0x2e, 0x54, 0x0f, +}; +static const unsigned char kat1937_addin1[] = { + 0x89, 0x9f, 0xd8, 0xd3, 0x62, 0x15, 0xcb, 0x4e, 0xcb, 0xa7, 0xdf, 0x33, + 0x37, 0xce, 0x50, 0x60, 0xfe, 0xfd, 0x63, 0xfb, 0x7d, 0x63, 0x81, 0xcd, + 0x0d, 0xb7, 0xfb, 0x9a, 0xd4, 0x92, 0x93, 0xcd, +}; +static const unsigned char kat1937_retbits[] = { + 0x88, 0xfb, 0x20, 0xe4, 0x7e, 0xe6, 0x38, 0x65, 0xfa, 0x9e, 0xe1, 0x9a, + 0x7d, 0x4f, 0x8c, 0x1b, 0x48, 0x94, 0x8a, 0xf1, 0x76, 0xb5, 0x78, 0x3a, + 0x28, 0x54, 0x1e, 0xba, 0x3a, 0xc6, 0x7c, 0x58, 0xb9, 0x33, 0xb5, 0x93, + 0x7e, 0x48, 0x6e, 0x1f, 0xc1, 0x82, 0x7e, 0x27, 0xe3, 0x6b, 0xd8, 0xf8, + 0x6f, 0x22, 0xad, 0xae, 0xd7, 0x94, 0xcc, 0x57, 0x1c, 0xf6, 0x25, 0x44, + 0x2f, 0x82, 0xa8, 0x9b, +}; +static const struct drbg_kat_pr_false kat1937_t = { + 1, kat1937_entropyin, kat1937_nonce, kat1937_persstr, + kat1937_entropyinreseed, kat1937_addinreseed, kat1937_addin0, + kat1937_addin1, kat1937_retbits +}; +static const struct drbg_kat kat1937 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1937_t +}; + +static const unsigned char kat1938_entropyin[] = { + 0x94, 0x4d, 0xf3, 0x4c, 0xa4, 0x9c, 0xad, 0xbe, 0x78, 0xd5, 0x07, 0xad, + 0x48, 0xdd, 0xea, 0xd9, 0x03, 0xa4, 0x3f, 0x6c, 0x2b, 0x7f, 0xd7, 0xf7, + 0x69, 0x80, 0x75, 0x44, 0x58, 0xef, 0x91, 0x21, +}; +static const unsigned char kat1938_nonce[] = { + 0x55, 0xc0, 0x2c, 0x46, 0x1b, 0xe3, 0x8a, 0xc2, 0x91, 0x9f, 0x96, 0xf3, + 0x11, 0x42, 0xec, 0x61, +}; +static const unsigned char kat1938_persstr[] = {0}; +static const unsigned char kat1938_entropyinreseed[] = { + 0x68, 0x9a, 0x4f, 0x4d, 0x06, 0xe2, 0x49, 0xdb, 0x86, 0x23, 0x99, 0xe5, + 0x8a, 0xf5, 0x10, 0xd8, 0x09, 0x67, 0xfa, 0x7c, 0x07, 0xbf, 0x1b, 0xce, + 0x0d, 0xbc, 0x78, 0x63, 0x06, 0x27, 0x3b, 0x57, +}; +static const unsigned char kat1938_addinreseed[] = { + 0x90, 0xca, 0xdd, 0xd0, 0xc9, 0x7f, 0xea, 0x34, 0xed, 0x6d, 0xd9, 0x67, + 0x67, 0x71, 0xc9, 0x18, 0x05, 0x3d, 0x88, 0xb1, 0x80, 0x9d, 0x56, 0x34, + 0xd5, 0xc5, 0xcb, 0x89, 0x35, 0xb4, 0x07, 0x5e, +}; +static const unsigned char kat1938_addin0[] = { + 0xa4, 0xf0, 0x5f, 0xdb, 0x44, 0x8d, 0x8c, 0x2a, 0xb7, 0xe4, 0xc1, 0x65, + 0xa3, 0x15, 0x35, 0x10, 0x86, 0xae, 0xb1, 0x94, 0x83, 0x38, 0x08, 0xb2, + 0x0e, 0xaf, 0xfd, 0x55, 0xd1, 0x19, 0xa2, 0xd2, +}; +static const unsigned char kat1938_addin1[] = { + 0xb1, 0x83, 0x55, 0xc7, 0x5f, 0x0d, 0xd4, 0x09, 0x20, 0xa0, 0x4d, 0xdc, + 0x22, 0x91, 0x40, 0xab, 0xe2, 0x21, 0x81, 0xd1, 0x2c, 0x86, 0x61, 0x94, + 0x81, 0x53, 0xe9, 0xc6, 0x92, 0x81, 0xda, 0x58, +}; +static const unsigned char kat1938_retbits[] = { + 0x3d, 0x7e, 0xa8, 0x04, 0x6f, 0x78, 0x49, 0x3c, 0xa7, 0x76, 0x53, 0x77, + 0x55, 0x45, 0x1e, 0x5e, 0x7f, 0x06, 0x3f, 0xcb, 0x4d, 0x53, 0xf6, 0xa6, + 0x22, 0x76, 0x40, 0x48, 0xc2, 0x5b, 0xc4, 0x8f, 0x05, 0xc3, 0x9f, 0x8c, + 0x8d, 0x79, 0x33, 0x8c, 0xf9, 0x3e, 0xad, 0x21, 0xb4, 0x55, 0xcf, 0xa5, + 0x9c, 0x9b, 0x1b, 0xdd, 0x81, 0xee, 0xa2, 0x3d, 0x75, 0xcf, 0xd6, 0x3c, + 0xa1, 0xfd, 0xa9, 0xbf, +}; +static const struct drbg_kat_pr_false kat1938_t = { + 2, kat1938_entropyin, kat1938_nonce, kat1938_persstr, + kat1938_entropyinreseed, kat1938_addinreseed, kat1938_addin0, + kat1938_addin1, kat1938_retbits +}; +static const struct drbg_kat kat1938 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1938_t +}; + +static const unsigned char kat1939_entropyin[] = { + 0x3b, 0xb3, 0xb5, 0x11, 0x2e, 0x2f, 0xa8, 0xc3, 0x7b, 0x22, 0xe4, 0x99, + 0xad, 0x91, 0x0d, 0x2a, 0x7c, 0xfe, 0xce, 0x4e, 0xc1, 0x14, 0xad, 0xa1, + 0xe5, 0x2e, 0xe5, 0x45, 0xbe, 0x0c, 0xe0, 0xbb, +}; +static const unsigned char kat1939_nonce[] = { + 0x54, 0xb5, 0xd6, 0x43, 0x1b, 0x84, 0xaa, 0x20, 0x7b, 0x55, 0x0a, 0xcd, + 0xba, 0xf4, 0xe0, 0xf1, +}; +static const unsigned char kat1939_persstr[] = {0}; +static const unsigned char kat1939_entropyinreseed[] = { + 0x0d, 0xa0, 0x82, 0xed, 0xb7, 0xd7, 0xee, 0x03, 0x49, 0xc9, 0x0e, 0xd3, + 0xf4, 0xd4, 0xcd, 0x59, 0x75, 0xfa, 0x38, 0xa1, 0xe7, 0x95, 0xdb, 0xef, + 0x9a, 0x92, 0xaf, 0x71, 0x11, 0x8c, 0xc8, 0x67, +}; +static const unsigned char kat1939_addinreseed[] = { + 0x44, 0x96, 0xe5, 0x79, 0xc0, 0x86, 0xe6, 0x59, 0x0a, 0xe5, 0xe0, 0x86, + 0x33, 0x1f, 0xc5, 0xb8, 0xd6, 0x85, 0x4f, 0xeb, 0x94, 0xb6, 0x49, 0xbb, + 0xf8, 0xe2, 0x12, 0xdd, 0xf1, 0xcf, 0xc5, 0x27, +}; +static const unsigned char kat1939_addin0[] = { + 0x58, 0x52, 0x2d, 0x81, 0x22, 0x41, 0x56, 0x3f, 0xc1, 0x67, 0x96, 0xd7, + 0x93, 0x58, 0x6b, 0x1f, 0x7f, 0xdc, 0xbc, 0xbe, 0x2d, 0x80, 0x78, 0x65, + 0xdf, 0x4a, 0x20, 0xe9, 0xf5, 0x04, 0x30, 0xea, +}; +static const unsigned char kat1939_addin1[] = { + 0x84, 0x8a, 0x24, 0xb8, 0x45, 0x2f, 0xd6, 0x79, 0x23, 0x78, 0xdf, 0x38, + 0x22, 0x17, 0xbf, 0x72, 0x39, 0x2e, 0x94, 0x35, 0x37, 0x5d, 0x27, 0xb3, + 0xe7, 0x0e, 0x88, 0xc7, 0x9c, 0x90, 0x50, 0xc9, +}; +static const unsigned char kat1939_retbits[] = { + 0x3c, 0x64, 0x4f, 0xdd, 0x07, 0x64, 0x25, 0x0c, 0x7d, 0xc7, 0xe8, 0xf0, + 0x2d, 0x55, 0x9b, 0xbc, 0xbe, 0xf8, 0xe7, 0xf5, 0x39, 0x16, 0x26, 0xd5, + 0x63, 0x05, 0x4e, 0x6c, 0x0c, 0xdc, 0x11, 0x40, 0x8c, 0xca, 0x6d, 0xbc, + 0x06, 0xe5, 0x73, 0xe6, 0xd5, 0x71, 0x9e, 0xa7, 0x7a, 0x19, 0x91, 0x3a, + 0xe1, 0x27, 0x53, 0xc2, 0x8f, 0xfc, 0xe8, 0x72, 0xb1, 0x3f, 0x48, 0x43, + 0x77, 0xe2, 0x33, 0x9c, +}; +static const struct drbg_kat_pr_false kat1939_t = { + 3, kat1939_entropyin, kat1939_nonce, kat1939_persstr, + kat1939_entropyinreseed, kat1939_addinreseed, kat1939_addin0, + kat1939_addin1, kat1939_retbits +}; +static const struct drbg_kat kat1939 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1939_t +}; + +static const unsigned char kat1940_entropyin[] = { + 0x1d, 0x60, 0x2a, 0xec, 0x16, 0x01, 0xe2, 0xff, 0x65, 0xf1, 0x66, 0x28, + 0xbd, 0xde, 0xac, 0x66, 0x97, 0x71, 0x3d, 0x2f, 0x5d, 0x43, 0x35, 0xc7, + 0x01, 0x35, 0x07, 0x88, 0x5b, 0x0d, 0x50, 0xc9, +}; +static const unsigned char kat1940_nonce[] = { + 0x03, 0xa5, 0xbc, 0xa1, 0xbf, 0xd3, 0x85, 0xac, 0x0e, 0x14, 0xf1, 0xdc, + 0x9d, 0xa4, 0x17, 0xbd, +}; +static const unsigned char kat1940_persstr[] = {0}; +static const unsigned char kat1940_entropyinreseed[] = { + 0x7c, 0x5e, 0xd5, 0x89, 0x8a, 0x5f, 0xf4, 0x9b, 0x36, 0xf7, 0xaa, 0x8d, + 0x38, 0x60, 0x0d, 0x33, 0x10, 0x90, 0x35, 0x75, 0x03, 0x84, 0xfa, 0xb2, + 0xbe, 0x26, 0xad, 0xc8, 0x59, 0x09, 0x40, 0x2d, +}; +static const unsigned char kat1940_addinreseed[] = { + 0x3f, 0x11, 0x64, 0xdf, 0x72, 0x65, 0xfd, 0x56, 0xe7, 0x01, 0xd5, 0x1e, + 0xf1, 0xfb, 0x39, 0x96, 0xd2, 0xcf, 0xc7, 0xc3, 0x55, 0x87, 0x36, 0x53, + 0xd1, 0x27, 0xb9, 0xe2, 0xdc, 0xcc, 0x1d, 0xa3, +}; +static const unsigned char kat1940_addin0[] = { + 0x02, 0xa7, 0xd6, 0x8d, 0x2e, 0x6f, 0x4d, 0xe2, 0xa3, 0x5c, 0x97, 0xe7, + 0xaa, 0xdf, 0x25, 0xa2, 0xf1, 0x4a, 0x9b, 0x40, 0x76, 0x94, 0x00, 0x50, + 0xff, 0xe6, 0x44, 0x82, 0xe6, 0x27, 0x18, 0xa7, +}; +static const unsigned char kat1940_addin1[] = { + 0x40, 0xb4, 0xff, 0x19, 0x60, 0x9f, 0x62, 0x66, 0xe4, 0x50, 0xe1, 0xcd, + 0xb1, 0x84, 0xf1, 0xaa, 0x0b, 0x55, 0x1a, 0x05, 0xb9, 0x12, 0xa1, 0x25, + 0x1b, 0x9c, 0xaf, 0x7e, 0xe1, 0x5a, 0x71, 0x84, +}; +static const unsigned char kat1940_retbits[] = { + 0x5b, 0xc4, 0xe4, 0xc0, 0x9a, 0x19, 0xd5, 0xf3, 0x94, 0xee, 0x60, 0x03, + 0x43, 0x78, 0x43, 0x97, 0x4d, 0xfe, 0x44, 0x30, 0x68, 0x4d, 0x39, 0x4d, + 0x6c, 0x7c, 0xc8, 0xeb, 0x4d, 0x7a, 0x72, 0x2c, 0x61, 0x57, 0x07, 0xd0, + 0xed, 0xe8, 0x8e, 0xf1, 0xfb, 0xba, 0x81, 0xe4, 0x5f, 0xdd, 0x93, 0xd2, + 0x09, 0x66, 0x32, 0xcf, 0x21, 0xb6, 0x30, 0xdd, 0x93, 0x3f, 0x52, 0xa0, + 0x52, 0xaa, 0x9b, 0xe4, +}; +static const struct drbg_kat_pr_false kat1940_t = { + 4, kat1940_entropyin, kat1940_nonce, kat1940_persstr, + kat1940_entropyinreseed, kat1940_addinreseed, kat1940_addin0, + kat1940_addin1, kat1940_retbits +}; +static const struct drbg_kat kat1940 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1940_t +}; + +static const unsigned char kat1941_entropyin[] = { + 0x57, 0x54, 0x8b, 0xee, 0x6b, 0x45, 0x3d, 0xa6, 0xb0, 0xe6, 0x50, 0xaa, + 0x04, 0x45, 0xdd, 0xfb, 0x13, 0x23, 0x8a, 0x3c, 0x64, 0x7c, 0x4f, 0x41, + 0x0e, 0xcc, 0x52, 0x27, 0x48, 0xd8, 0xa5, 0xe8, +}; +static const unsigned char kat1941_nonce[] = { + 0x01, 0x01, 0x9d, 0xaf, 0x8a, 0xa3, 0xbd, 0x72, 0x79, 0xd0, 0x95, 0x2b, + 0xc7, 0xa3, 0x0c, 0x1c, +}; +static const unsigned char kat1941_persstr[] = {0}; +static const unsigned char kat1941_entropyinreseed[] = { + 0x80, 0xbc, 0xb9, 0xb9, 0x50, 0x6c, 0x81, 0x17, 0xe8, 0x4c, 0xd8, 0xae, + 0x22, 0xc4, 0xd9, 0x07, 0x0a, 0x95, 0x0e, 0x04, 0x9b, 0x59, 0x7f, 0xf4, + 0x82, 0xc6, 0xf9, 0x08, 0x09, 0xf4, 0xff, 0x22, +}; +static const unsigned char kat1941_addinreseed[] = { + 0x17, 0x4a, 0x42, 0xc2, 0x48, 0xdd, 0x17, 0x6e, 0x65, 0xd9, 0x37, 0x48, + 0x70, 0xbd, 0x78, 0xcc, 0xcf, 0x3f, 0x3b, 0x1b, 0x5c, 0xa2, 0x22, 0xb0, + 0xfa, 0x3c, 0xb1, 0x28, 0x24, 0x27, 0x23, 0xb3, +}; +static const unsigned char kat1941_addin0[] = { + 0x86, 0xd8, 0x85, 0xe9, 0x24, 0x64, 0x6e, 0xad, 0xe6, 0xa2, 0xd9, 0x0a, + 0xf3, 0x18, 0x5f, 0x11, 0x77, 0x6c, 0x40, 0x90, 0x01, 0xf1, 0x9b, 0x04, + 0x28, 0x3e, 0xa6, 0xf2, 0x1a, 0x25, 0xff, 0x9f, +}; +static const unsigned char kat1941_addin1[] = { + 0x22, 0xd9, 0x05, 0x81, 0xa8, 0x55, 0x0f, 0x0f, 0x3c, 0xb2, 0x96, 0x6b, + 0xf1, 0x8c, 0x04, 0x67, 0x10, 0x79, 0x7d, 0x56, 0x54, 0x90, 0x46, 0x52, + 0xac, 0xa2, 0x7d, 0x1c, 0x73, 0xd7, 0x5f, 0xf0, +}; +static const unsigned char kat1941_retbits[] = { + 0x67, 0xc3, 0x26, 0x66, 0x3c, 0x12, 0x31, 0xa3, 0xf5, 0xd6, 0xbe, 0x94, + 0x22, 0x30, 0x0b, 0xfc, 0xa1, 0x64, 0x1c, 0x3a, 0x3d, 0xdd, 0x1b, 0x07, + 0xb8, 0x51, 0x91, 0xca, 0xa1, 0x34, 0xaf, 0x4c, 0xfd, 0x61, 0xe4, 0x7b, + 0x73, 0x20, 0x44, 0xfc, 0xca, 0x0d, 0x45, 0xfc, 0x63, 0x23, 0x77, 0x16, + 0x85, 0x74, 0x63, 0x9b, 0x68, 0x4d, 0x3d, 0x58, 0x75, 0x1b, 0xc3, 0x02, + 0xbb, 0x20, 0x37, 0xd2, +}; +static const struct drbg_kat_pr_false kat1941_t = { + 5, kat1941_entropyin, kat1941_nonce, kat1941_persstr, + kat1941_entropyinreseed, kat1941_addinreseed, kat1941_addin0, + kat1941_addin1, kat1941_retbits +}; +static const struct drbg_kat kat1941 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1941_t +}; + +static const unsigned char kat1942_entropyin[] = { + 0x48, 0x8f, 0x11, 0xf5, 0x21, 0x5e, 0x5a, 0x3d, 0x2d, 0xd3, 0xa6, 0xb8, + 0x99, 0x62, 0x42, 0xdf, 0x86, 0x63, 0x8a, 0x9c, 0x20, 0xd8, 0x0b, 0xd9, + 0x4f, 0xc1, 0xf6, 0xda, 0x1d, 0x9a, 0x65, 0x50, +}; +static const unsigned char kat1942_nonce[] = { + 0xc0, 0xf3, 0x31, 0xd0, 0x22, 0xe8, 0x0f, 0xa2, 0x1a, 0xe0, 0xee, 0x81, + 0x59, 0x37, 0xd2, 0xaa, +}; +static const unsigned char kat1942_persstr[] = {0}; +static const unsigned char kat1942_entropyinreseed[] = { + 0xc7, 0x32, 0x6a, 0x10, 0x4c, 0x33, 0xcc, 0xdc, 0x06, 0xf6, 0x13, 0x93, + 0x55, 0x46, 0x8a, 0xff, 0x1f, 0xb5, 0x43, 0xe3, 0xe9, 0x67, 0x5e, 0x1d, + 0xc2, 0xc7, 0xae, 0x0b, 0x42, 0xce, 0x4a, 0xb7, +}; +static const unsigned char kat1942_addinreseed[] = { + 0xbf, 0x61, 0xd5, 0x69, 0x46, 0x81, 0x10, 0x8d, 0x73, 0x5d, 0x4d, 0x15, + 0xf0, 0xae, 0x34, 0x58, 0x82, 0x38, 0xf9, 0x46, 0xb3, 0x3f, 0xf3, 0xfc, + 0x14, 0x0d, 0xa2, 0x67, 0x59, 0xbc, 0x03, 0xdd, +}; +static const unsigned char kat1942_addin0[] = { + 0x5c, 0xa2, 0x47, 0xc6, 0x81, 0xb0, 0x00, 0x8a, 0x4d, 0x4c, 0x2a, 0xa0, + 0xc0, 0xf5, 0x82, 0xc5, 0x19, 0xe1, 0xb5, 0x13, 0x49, 0x43, 0x05, 0xae, + 0xb1, 0x26, 0x5b, 0xe9, 0x4c, 0xde, 0x3f, 0x5e, +}; +static const unsigned char kat1942_addin1[] = { + 0xeb, 0x5f, 0x56, 0x78, 0x83, 0xec, 0xe6, 0xef, 0xc4, 0x23, 0x4f, 0x8e, + 0xf3, 0x5c, 0x26, 0xc4, 0x5b, 0x56, 0x90, 0x9b, 0x96, 0xe4, 0x7f, 0xd2, + 0x1f, 0xc6, 0x1e, 0xd5, 0x6e, 0xbb, 0xb3, 0xcd, +}; +static const unsigned char kat1942_retbits[] = { + 0xa6, 0xe6, 0xc9, 0x98, 0x9b, 0xe3, 0xe1, 0x9b, 0x08, 0xb2, 0xa2, 0x3a, + 0x25, 0xc1, 0x5f, 0xac, 0xe6, 0x1a, 0xea, 0x67, 0x1a, 0x19, 0x04, 0xbb, + 0x76, 0x14, 0xbc, 0x2f, 0xc5, 0x12, 0x91, 0xd1, 0x01, 0xb7, 0x37, 0xeb, + 0x32, 0x87, 0xf7, 0xb0, 0xe6, 0x86, 0xd6, 0xe8, 0xb3, 0x80, 0x99, 0x85, + 0x3c, 0xd8, 0xc2, 0x0e, 0xbc, 0xd8, 0x2b, 0x1b, 0xe6, 0x73, 0x56, 0x91, + 0x1c, 0x62, 0xd8, 0x94, +}; +static const struct drbg_kat_pr_false kat1942_t = { + 6, kat1942_entropyin, kat1942_nonce, kat1942_persstr, + kat1942_entropyinreseed, kat1942_addinreseed, kat1942_addin0, + kat1942_addin1, kat1942_retbits +}; +static const struct drbg_kat kat1942 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1942_t +}; + +static const unsigned char kat1943_entropyin[] = { + 0x3b, 0x12, 0x66, 0xf1, 0xaf, 0xc0, 0x7a, 0x3c, 0xb2, 0x12, 0xa7, 0x79, + 0xf3, 0x29, 0x76, 0xe3, 0x33, 0x4a, 0x34, 0x32, 0xce, 0xec, 0x46, 0xb9, + 0xd9, 0xd0, 0xf0, 0xf7, 0xb1, 0xad, 0x5b, 0x1a, +}; +static const unsigned char kat1943_nonce[] = { + 0x87, 0xe0, 0xb3, 0xc2, 0x7c, 0xc5, 0x57, 0x3e, 0x6c, 0xec, 0x5e, 0x3b, + 0xdd, 0xda, 0x94, 0x3c, +}; +static const unsigned char kat1943_persstr[] = {0}; +static const unsigned char kat1943_entropyinreseed[] = { + 0x65, 0xcc, 0x6c, 0x45, 0x4a, 0x03, 0x41, 0xe1, 0x5f, 0xff, 0xb5, 0xb4, + 0x05, 0xc4, 0x0e, 0x77, 0x74, 0x98, 0x06, 0x54, 0xc6, 0x2b, 0x06, 0x01, + 0x2f, 0x60, 0xc2, 0xc3, 0xa7, 0x84, 0xb0, 0x29, +}; +static const unsigned char kat1943_addinreseed[] = { + 0x3c, 0xb7, 0x5a, 0x67, 0x62, 0xbe, 0x00, 0x8d, 0x71, 0xad, 0x48, 0x57, + 0x76, 0x72, 0xf2, 0xcc, 0xab, 0x0a, 0x3f, 0x68, 0x84, 0xe6, 0x61, 0xf4, + 0x27, 0x0e, 0xdf, 0x8e, 0xcd, 0x8f, 0xfa, 0x1e, +}; +static const unsigned char kat1943_addin0[] = { + 0x37, 0x91, 0xe5, 0x5d, 0xac, 0xf0, 0x27, 0xc8, 0x28, 0xe7, 0x6e, 0xab, + 0xe2, 0x5c, 0xca, 0xd3, 0x3b, 0x74, 0x27, 0x8d, 0xb8, 0x5f, 0xd2, 0x73, + 0x23, 0x2c, 0x73, 0x36, 0x23, 0x01, 0x7c, 0x8a, +}; +static const unsigned char kat1943_addin1[] = { + 0x01, 0xea, 0x3c, 0x8c, 0x66, 0x63, 0xde, 0xdc, 0xec, 0xcf, 0x31, 0x1d, + 0x3a, 0xf3, 0xc2, 0x79, 0xe4, 0x00, 0xde, 0x3d, 0x7b, 0xdd, 0xcd, 0xbd, + 0xa4, 0x0d, 0x78, 0x6a, 0xf1, 0xd9, 0x6c, 0x7b, +}; +static const unsigned char kat1943_retbits[] = { + 0xd4, 0x66, 0x48, 0xfa, 0x06, 0xdb, 0x61, 0xd4, 0xd0, 0x70, 0xcd, 0x92, + 0xf4, 0x20, 0x21, 0x10, 0xff, 0x07, 0x67, 0x22, 0xe5, 0xfb, 0xb4, 0x95, + 0x92, 0xc0, 0x20, 0x31, 0x16, 0xce, 0x8d, 0x38, 0x73, 0x3e, 0x44, 0xa8, + 0xc4, 0x8a, 0xe7, 0xb7, 0xe7, 0x62, 0xf2, 0x67, 0x14, 0x96, 0x8f, 0x15, + 0xe6, 0xe4, 0x33, 0x73, 0xbe, 0xf1, 0xa7, 0xa6, 0x72, 0xbe, 0x70, 0xfa, + 0x43, 0x7f, 0x5f, 0xed, +}; +static const struct drbg_kat_pr_false kat1943_t = { + 7, kat1943_entropyin, kat1943_nonce, kat1943_persstr, + kat1943_entropyinreseed, kat1943_addinreseed, kat1943_addin0, + kat1943_addin1, kat1943_retbits +}; +static const struct drbg_kat kat1943 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1943_t +}; + +static const unsigned char kat1944_entropyin[] = { + 0x02, 0x04, 0x77, 0x41, 0x58, 0xe7, 0x45, 0x49, 0x35, 0xf3, 0xf9, 0xad, + 0xe7, 0xc6, 0xf0, 0x46, 0xcc, 0x2d, 0xb5, 0x26, 0xcf, 0x38, 0x24, 0x9d, + 0xe0, 0x3b, 0x23, 0x53, 0x8b, 0x9f, 0x88, 0xf7, +}; +static const unsigned char kat1944_nonce[] = { + 0xd0, 0x91, 0x2d, 0xc4, 0x92, 0x2a, 0xac, 0x88, 0x70, 0x26, 0xa2, 0x38, + 0xb9, 0x41, 0x3d, 0x7e, +}; +static const unsigned char kat1944_persstr[] = {0}; +static const unsigned char kat1944_entropyinreseed[] = { + 0x18, 0x98, 0xa3, 0x70, 0x1c, 0x36, 0x0e, 0x17, 0x3d, 0x87, 0x37, 0x99, + 0xac, 0x6a, 0xb0, 0x2d, 0x52, 0xdc, 0x1a, 0x45, 0xcc, 0xfe, 0x1c, 0x69, + 0xcd, 0x9e, 0x8a, 0x66, 0xa2, 0x80, 0x12, 0xb9, +}; +static const unsigned char kat1944_addinreseed[] = { + 0x26, 0x72, 0x1f, 0x70, 0xf3, 0x51, 0x6f, 0x48, 0x24, 0x5f, 0x05, 0x33, + 0x92, 0xd3, 0x2f, 0x48, 0xef, 0x7c, 0x50, 0xab, 0x6c, 0x05, 0x0c, 0x92, + 0xf6, 0x71, 0x06, 0x8d, 0x79, 0xf7, 0x83, 0x75, +}; +static const unsigned char kat1944_addin0[] = { + 0xfa, 0x10, 0x6c, 0x6b, 0xc9, 0xca, 0xb8, 0x03, 0x5d, 0x64, 0xa2, 0xa1, + 0x8b, 0xce, 0xc3, 0x43, 0x5d, 0x5f, 0xb3, 0x23, 0x40, 0xc8, 0x36, 0x7d, + 0x5f, 0x2c, 0x1d, 0xd1, 0x8f, 0x81, 0x8a, 0xbf, +}; +static const unsigned char kat1944_addin1[] = { + 0xb7, 0x81, 0xb4, 0xf5, 0x2d, 0xa6, 0xe7, 0x01, 0xf4, 0xaf, 0x17, 0xd6, + 0xc9, 0x6b, 0x3e, 0x7d, 0x86, 0x7a, 0xc7, 0x01, 0x2c, 0x43, 0x35, 0x6a, + 0x5a, 0xfe, 0xee, 0xc4, 0x8f, 0xf4, 0x86, 0x37, +}; +static const unsigned char kat1944_retbits[] = { + 0xf9, 0xba, 0x4c, 0x30, 0xd3, 0x3d, 0x85, 0xeb, 0x8b, 0x99, 0xea, 0xcd, + 0xad, 0xb1, 0xc1, 0x45, 0x94, 0x66, 0xb9, 0xc9, 0xcf, 0x24, 0xe4, 0xc0, + 0xe0, 0xc4, 0xb6, 0xb0, 0x58, 0xe9, 0x3b, 0x88, 0x25, 0x0d, 0x31, 0x89, + 0x6b, 0x73, 0x8a, 0x95, 0xeb, 0xd3, 0xc8, 0x1c, 0x3a, 0x1f, 0x9c, 0xd0, + 0x92, 0x28, 0xfd, 0xb3, 0xac, 0xa3, 0x0c, 0x25, 0xad, 0xec, 0x99, 0x0c, + 0x53, 0xfc, 0x53, 0xa3, +}; +static const struct drbg_kat_pr_false kat1944_t = { + 8, kat1944_entropyin, kat1944_nonce, kat1944_persstr, + kat1944_entropyinreseed, kat1944_addinreseed, kat1944_addin0, + kat1944_addin1, kat1944_retbits +}; +static const struct drbg_kat kat1944 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1944_t +}; + +static const unsigned char kat1945_entropyin[] = { + 0x42, 0x8e, 0x20, 0xb9, 0x6d, 0xbb, 0xfe, 0xbe, 0xe7, 0x9a, 0xb1, 0xdb, + 0x8c, 0x0c, 0xc1, 0xfb, 0x40, 0xd0, 0x00, 0x9b, 0xe9, 0xdb, 0xd5, 0x8f, + 0x3f, 0x9b, 0x37, 0xa7, 0x4e, 0x1e, 0x56, 0xec, +}; +static const unsigned char kat1945_nonce[] = { + 0xc9, 0x3a, 0x22, 0xc9, 0x43, 0x7f, 0x02, 0x2b, 0xec, 0xdd, 0x12, 0xff, + 0xae, 0xbb, 0x0f, 0xc4, +}; +static const unsigned char kat1945_persstr[] = {0}; +static const unsigned char kat1945_entropyinreseed[] = { + 0xea, 0xaa, 0xe4, 0xbe, 0x71, 0x21, 0xc8, 0xf5, 0xc0, 0x73, 0xc7, 0x91, + 0xa9, 0xa1, 0x83, 0x93, 0xd9, 0xad, 0x66, 0x15, 0x3b, 0xfc, 0x98, 0xa0, + 0xd6, 0x45, 0x69, 0x7a, 0x46, 0x39, 0x28, 0xa1, +}; +static const unsigned char kat1945_addinreseed[] = { + 0x82, 0x3e, 0x71, 0xbb, 0x84, 0x3c, 0x54, 0x00, 0x9e, 0x8d, 0x02, 0xd2, + 0xec, 0x0e, 0x5d, 0x7b, 0x49, 0xf0, 0xd5, 0x3b, 0xc0, 0xf0, 0xc3, 0x83, + 0xf6, 0xc9, 0x27, 0x3a, 0x25, 0xa6, 0xf3, 0x12, +}; +static const unsigned char kat1945_addin0[] = { + 0xf0, 0xd5, 0xad, 0x12, 0x99, 0x99, 0xd7, 0x10, 0xf8, 0xe5, 0x50, 0x4c, + 0x95, 0x5b, 0x78, 0xd0, 0x52, 0xa1, 0xcc, 0x63, 0x37, 0xd4, 0x63, 0x2e, + 0xaa, 0x85, 0xbd, 0xb9, 0x85, 0x75, 0x9e, 0xa6, +}; +static const unsigned char kat1945_addin1[] = { + 0xdd, 0x10, 0x78, 0x19, 0x8d, 0xb2, 0xdd, 0x5e, 0x7e, 0x63, 0x25, 0x25, + 0x62, 0x36, 0xeb, 0x2b, 0xe2, 0x62, 0x0e, 0xe0, 0xee, 0x85, 0x97, 0x01, + 0x29, 0x80, 0x8f, 0xd1, 0x64, 0x0b, 0xdf, 0x41, +}; +static const unsigned char kat1945_retbits[] = { + 0x99, 0x3a, 0x6a, 0x73, 0xfc, 0x63, 0xbd, 0x50, 0x62, 0x93, 0xba, 0x73, + 0xb7, 0x6c, 0xb2, 0xcd, 0xc8, 0xb0, 0x56, 0xd2, 0xf8, 0x7e, 0x21, 0x07, + 0x91, 0x25, 0x62, 0x43, 0x99, 0xc2, 0xfb, 0xec, 0x29, 0x16, 0x97, 0x71, + 0x87, 0x93, 0xdb, 0x1f, 0xfd, 0xd8, 0x76, 0xd2, 0x7a, 0x68, 0x9e, 0xcd, + 0x49, 0xe7, 0xc9, 0xf5, 0xbb, 0xa1, 0x91, 0x06, 0x91, 0xe5, 0x6f, 0x81, + 0x76, 0xeb, 0x84, 0x4b, +}; +static const struct drbg_kat_pr_false kat1945_t = { + 9, kat1945_entropyin, kat1945_nonce, kat1945_persstr, + kat1945_entropyinreseed, kat1945_addinreseed, kat1945_addin0, + kat1945_addin1, kat1945_retbits +}; +static const struct drbg_kat kat1945 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1945_t +}; + +static const unsigned char kat1946_entropyin[] = { + 0x72, 0xe7, 0x73, 0x5c, 0x3b, 0x8b, 0x44, 0xca, 0x95, 0x57, 0xb2, 0x93, + 0x90, 0x34, 0xef, 0x4c, 0x38, 0x3d, 0x23, 0xbc, 0x68, 0xce, 0xa0, 0xfe, + 0x35, 0x52, 0xb5, 0xeb, 0xd4, 0x88, 0x5a, 0x9f, +}; +static const unsigned char kat1946_nonce[] = { + 0x35, 0xf4, 0x11, 0x2d, 0x4d, 0xe3, 0x97, 0x05, 0xb6, 0xad, 0x6d, 0x42, + 0x2e, 0xc1, 0xd5, 0x9a, +}; +static const unsigned char kat1946_persstr[] = {0}; +static const unsigned char kat1946_entropyinreseed[] = { + 0x71, 0x59, 0x18, 0x4b, 0xb4, 0x62, 0x8e, 0x7e, 0xc7, 0x95, 0xf9, 0x4f, + 0x05, 0x4f, 0x7b, 0xbd, 0xe9, 0xc3, 0x64, 0xc6, 0x0b, 0xa3, 0xf0, 0x76, + 0x70, 0xdb, 0xf6, 0x15, 0xd1, 0xfa, 0xf5, 0x12, +}; +static const unsigned char kat1946_addinreseed[] = { + 0x89, 0x68, 0x98, 0xb9, 0xa4, 0x7e, 0xbe, 0xfe, 0x20, 0xcb, 0x20, 0x14, + 0x1a, 0x16, 0x76, 0x48, 0xac, 0x0a, 0xa8, 0x15, 0x1f, 0x49, 0x1b, 0xd1, + 0xd1, 0x3a, 0x00, 0xf5, 0xcf, 0x6f, 0x17, 0xb4, +}; +static const unsigned char kat1946_addin0[] = { + 0x9c, 0xfb, 0xbf, 0x1b, 0xd7, 0xb6, 0xf5, 0x52, 0x43, 0x67, 0x27, 0x59, + 0x17, 0x7f, 0xa9, 0x06, 0x01, 0x67, 0x91, 0xd4, 0x5d, 0x1e, 0xa5, 0x02, + 0xaf, 0x2c, 0xc5, 0x69, 0xe6, 0xd7, 0xc8, 0x82, +}; +static const unsigned char kat1946_addin1[] = { + 0x4d, 0x9a, 0xdd, 0x7b, 0x30, 0xf3, 0xa8, 0x55, 0x03, 0x8b, 0xcb, 0xbb, + 0x9a, 0x3c, 0xf6, 0x37, 0xbe, 0x18, 0xdd, 0xd1, 0xc6, 0x72, 0x1f, 0x4c, + 0xb2, 0xdd, 0x65, 0x4e, 0x8e, 0xf2, 0x57, 0x1c, +}; +static const unsigned char kat1946_retbits[] = { + 0x11, 0xaf, 0xdc, 0x0f, 0xe1, 0x5c, 0x21, 0x51, 0x30, 0x64, 0x8b, 0x3d, + 0xca, 0xbd, 0x8b, 0x76, 0x25, 0xad, 0x20, 0xfc, 0x65, 0x98, 0x5a, 0x70, + 0xee, 0x05, 0x61, 0x40, 0x1b, 0xb0, 0xaf, 0x02, 0xd5, 0xc4, 0x28, 0x27, + 0x65, 0x12, 0x34, 0x7a, 0x3f, 0x4b, 0x76, 0xca, 0x99, 0x7c, 0xaa, 0xd1, + 0x78, 0xa7, 0xf8, 0xcd, 0xad, 0xdf, 0xd7, 0x7d, 0x5f, 0xe7, 0x35, 0x75, + 0x5e, 0x7d, 0x37, 0xac, +}; +static const struct drbg_kat_pr_false kat1946_t = { + 10, kat1946_entropyin, kat1946_nonce, kat1946_persstr, + kat1946_entropyinreseed, kat1946_addinreseed, kat1946_addin0, + kat1946_addin1, kat1946_retbits +}; +static const struct drbg_kat kat1946 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1946_t +}; + +static const unsigned char kat1947_entropyin[] = { + 0xfd, 0x06, 0x92, 0x71, 0x6b, 0x92, 0xab, 0xbc, 0x87, 0x53, 0x4e, 0x70, + 0xd0, 0xfc, 0x5a, 0xd0, 0x7b, 0xab, 0x29, 0x68, 0x2e, 0x33, 0xf4, 0x30, + 0x01, 0xec, 0xda, 0xd7, 0xab, 0x92, 0xb3, 0x26, +}; +static const unsigned char kat1947_nonce[] = { + 0x4f, 0x3c, 0xd8, 0xb4, 0x2a, 0xb8, 0x90, 0xc7, 0x7e, 0xda, 0x4a, 0xfe, + 0x96, 0xc5, 0x35, 0x74, +}; +static const unsigned char kat1947_persstr[] = {0}; +static const unsigned char kat1947_entropyinreseed[] = { + 0xc5, 0x51, 0xf5, 0x79, 0x27, 0x68, 0x0d, 0x8e, 0xb7, 0x89, 0x08, 0x70, + 0x1f, 0x34, 0xd8, 0xca, 0x7e, 0x03, 0x1b, 0x7a, 0x25, 0x22, 0x45, 0xee, + 0x53, 0xb8, 0x3d, 0xc9, 0x38, 0x2e, 0xa5, 0x2d, +}; +static const unsigned char kat1947_addinreseed[] = { + 0xa8, 0x41, 0x19, 0xf7, 0x73, 0xb3, 0xd3, 0xbe, 0xd2, 0x8d, 0xae, 0x7c, + 0x79, 0x13, 0x69, 0xf9, 0xe9, 0xba, 0x33, 0x3b, 0xa6, 0x03, 0x73, 0x70, + 0xdb, 0x64, 0xc0, 0xb6, 0x55, 0x7c, 0x11, 0x37, +}; +static const unsigned char kat1947_addin0[] = { + 0x6b, 0x0c, 0x61, 0x9f, 0x00, 0xe0, 0x4e, 0xa9, 0x1e, 0x2e, 0x7c, 0xd3, + 0x7a, 0x1f, 0x4d, 0x5a, 0xe7, 0x2e, 0xfb, 0x55, 0x2a, 0xf5, 0x5d, 0x27, + 0x37, 0x22, 0xc3, 0x71, 0xd9, 0x68, 0xeb, 0xc3, +}; +static const unsigned char kat1947_addin1[] = { + 0xb5, 0x8f, 0xfd, 0x71, 0xfc, 0x21, 0x66, 0xd3, 0x86, 0xc9, 0x42, 0x75, + 0xbd, 0x97, 0xe4, 0x36, 0x17, 0x7d, 0xd0, 0xb5, 0xc6, 0xfa, 0x9e, 0x80, + 0x97, 0x60, 0xc8, 0x49, 0x10, 0xb8, 0xe6, 0xf8, +}; +static const unsigned char kat1947_retbits[] = { + 0xdd, 0xb7, 0x67, 0xec, 0xd3, 0xb3, 0xd2, 0xcd, 0xc9, 0x25, 0xe7, 0x0b, + 0x90, 0x19, 0xd5, 0x51, 0x18, 0x5f, 0xad, 0x94, 0x28, 0x56, 0x55, 0xc2, + 0xcb, 0x96, 0xdc, 0xa7, 0xfe, 0xde, 0xd8, 0x1d, 0xc6, 0x1a, 0x59, 0x81, + 0xa4, 0x45, 0x96, 0x5f, 0x59, 0xf9, 0x86, 0x2e, 0x9a, 0x63, 0xda, 0x20, + 0xe3, 0xb2, 0x89, 0x48, 0x61, 0xd6, 0x2e, 0xe9, 0x9e, 0xcc, 0x5f, 0x90, + 0x46, 0x7c, 0xff, 0x69, +}; +static const struct drbg_kat_pr_false kat1947_t = { + 11, kat1947_entropyin, kat1947_nonce, kat1947_persstr, + kat1947_entropyinreseed, kat1947_addinreseed, kat1947_addin0, + kat1947_addin1, kat1947_retbits +}; +static const struct drbg_kat kat1947 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1947_t +}; + +static const unsigned char kat1948_entropyin[] = { + 0x8e, 0x1b, 0x9f, 0x28, 0x28, 0xc2, 0xa7, 0x98, 0x67, 0x2c, 0x6c, 0xb6, + 0x03, 0x39, 0x6b, 0xd4, 0xb7, 0x3d, 0xbc, 0xe8, 0x19, 0x48, 0x7c, 0xe8, + 0x15, 0x54, 0x48, 0xf0, 0x26, 0xef, 0x16, 0x07, +}; +static const unsigned char kat1948_nonce[] = { + 0x60, 0xf4, 0xa0, 0x76, 0xcd, 0xd0, 0xa2, 0xa3, 0xf3, 0x32, 0xea, 0x18, + 0x67, 0xdb, 0x02, 0x77, +}; +static const unsigned char kat1948_persstr[] = {0}; +static const unsigned char kat1948_entropyinreseed[] = { + 0x07, 0x58, 0x2e, 0x14, 0xea, 0x30, 0xd8, 0x66, 0x08, 0x81, 0x42, 0x5f, + 0x9d, 0x56, 0xfa, 0x00, 0x5c, 0x4f, 0xe2, 0xf4, 0x28, 0x2e, 0xce, 0xfe, + 0x74, 0xc9, 0xd9, 0xfe, 0x59, 0x54, 0x21, 0x1d, +}; +static const unsigned char kat1948_addinreseed[] = { + 0xa2, 0x4c, 0x19, 0xbf, 0x72, 0x63, 0xfa, 0x8b, 0x52, 0x64, 0xad, 0x71, + 0x36, 0x0c, 0xf5, 0x86, 0x6a, 0xf4, 0x3b, 0x63, 0x8b, 0x39, 0x04, 0xb8, + 0xfa, 0x32, 0x18, 0x8e, 0x4c, 0x15, 0x78, 0x40, +}; +static const unsigned char kat1948_addin0[] = { + 0xb2, 0x50, 0x07, 0xd2, 0xd4, 0xe5, 0xf8, 0x1c, 0x3b, 0x7c, 0x8d, 0x49, + 0x38, 0x8b, 0x8c, 0xd0, 0x13, 0xae, 0xbf, 0x00, 0xe9, 0x2d, 0x90, 0x4f, + 0x0d, 0x12, 0x97, 0x97, 0xed, 0x65, 0x35, 0xd6, +}; +static const unsigned char kat1948_addin1[] = { + 0x3f, 0x11, 0x60, 0xa6, 0x77, 0x0f, 0x71, 0x41, 0xee, 0xe7, 0x59, 0x0d, + 0xb2, 0xd2, 0xf7, 0x41, 0x26, 0xe7, 0x28, 0xb8, 0x0a, 0x3a, 0x5e, 0xad, + 0x5a, 0xa3, 0x67, 0x50, 0x00, 0x63, 0x7e, 0xc0, +}; +static const unsigned char kat1948_retbits[] = { + 0x7b, 0x91, 0x58, 0xc9, 0x78, 0xea, 0x13, 0xef, 0x7a, 0xdf, 0xda, 0x03, + 0xfa, 0x2a, 0x01, 0x1b, 0x78, 0x0e, 0x48, 0x5b, 0xc9, 0xbb, 0xce, 0x32, + 0x7a, 0x95, 0x8b, 0x98, 0x0c, 0x73, 0x38, 0xdf, 0x22, 0x2a, 0x79, 0x2a, + 0xab, 0xea, 0x0f, 0x74, 0x65, 0xb4, 0x38, 0x6e, 0x1c, 0x51, 0x08, 0xca, + 0xfb, 0x72, 0x8b, 0xbb, 0x66, 0x0f, 0x85, 0x34, 0xc6, 0x25, 0x21, 0x34, + 0x32, 0x3c, 0x39, 0xfc, +}; +static const struct drbg_kat_pr_false kat1948_t = { + 12, kat1948_entropyin, kat1948_nonce, kat1948_persstr, + kat1948_entropyinreseed, kat1948_addinreseed, kat1948_addin0, + kat1948_addin1, kat1948_retbits +}; +static const struct drbg_kat kat1948 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1948_t +}; + +static const unsigned char kat1949_entropyin[] = { + 0xa6, 0xe3, 0xc0, 0x38, 0xc0, 0x33, 0xb3, 0x1b, 0xc9, 0x2d, 0x32, 0xc0, + 0x92, 0x96, 0xf7, 0xfa, 0xce, 0xfe, 0x1e, 0x4a, 0xac, 0xa0, 0x3c, 0x19, + 0x7d, 0x1c, 0x03, 0x54, 0xb4, 0x97, 0x58, 0xf5, +}; +static const unsigned char kat1949_nonce[] = { + 0xe7, 0x25, 0xa5, 0xa8, 0x1a, 0x7b, 0x47, 0x78, 0xea, 0x1c, 0xca, 0xec, + 0x77, 0x77, 0x23, 0x1b, +}; +static const unsigned char kat1949_persstr[] = {0}; +static const unsigned char kat1949_entropyinreseed[] = { + 0x09, 0x1f, 0xe5, 0x3d, 0x98, 0xc7, 0xff, 0x8e, 0x64, 0x17, 0x91, 0x45, + 0x02, 0x7a, 0xc6, 0xbe, 0xf4, 0x55, 0xa8, 0xf4, 0xd1, 0x67, 0x30, 0xf3, + 0x12, 0x35, 0x31, 0xde, 0x4c, 0xfb, 0x32, 0x59, +}; +static const unsigned char kat1949_addinreseed[] = { + 0x95, 0x9b, 0x30, 0x40, 0x64, 0x79, 0x11, 0x84, 0x31, 0xa2, 0x65, 0x3d, + 0x0f, 0x0d, 0x08, 0xf8, 0xfc, 0xcc, 0x68, 0x14, 0x11, 0x66, 0xfb, 0x19, + 0xdb, 0x71, 0x6e, 0xe2, 0xd7, 0x8e, 0xf0, 0x12, +}; +static const unsigned char kat1949_addin0[] = { + 0x9a, 0x0b, 0x0d, 0xe5, 0xf8, 0xf8, 0x25, 0xe7, 0x58, 0xb9, 0xfb, 0x28, + 0xe2, 0xa0, 0x6f, 0x9f, 0xac, 0x29, 0x0a, 0x16, 0x11, 0x97, 0x6c, 0xa9, + 0x98, 0x09, 0x25, 0x08, 0x9f, 0x5e, 0xe6, 0xf7, +}; +static const unsigned char kat1949_addin1[] = { + 0xb3, 0xe4, 0x22, 0xe0, 0xba, 0x29, 0xe8, 0x82, 0x36, 0x96, 0xcd, 0x82, + 0x98, 0x22, 0x58, 0xce, 0x93, 0x6a, 0x51, 0xe8, 0x0e, 0x64, 0x08, 0x70, + 0x0a, 0x2b, 0xd5, 0xca, 0x51, 0x29, 0x49, 0xbb, +}; +static const unsigned char kat1949_retbits[] = { + 0x7b, 0x8a, 0xb6, 0xd8, 0x79, 0xaa, 0x29, 0x07, 0xe4, 0x41, 0xdb, 0x2f, + 0xf6, 0x0c, 0x84, 0x0b, 0x68, 0x4a, 0x98, 0x1f, 0x8d, 0x08, 0x67, 0xc0, + 0xf7, 0xcf, 0xc3, 0x03, 0x23, 0xee, 0x32, 0x1e, 0x7f, 0xb1, 0xad, 0xee, + 0x16, 0xad, 0xb6, 0xc3, 0x14, 0xb0, 0x0e, 0xd4, 0x11, 0x5d, 0x9c, 0xb5, + 0x76, 0x08, 0xd5, 0x0f, 0x29, 0x80, 0xc3, 0xa1, 0xfa, 0x9a, 0x24, 0x2d, + 0x1a, 0x5c, 0xe4, 0x09, +}; +static const struct drbg_kat_pr_false kat1949_t = { + 13, kat1949_entropyin, kat1949_nonce, kat1949_persstr, + kat1949_entropyinreseed, kat1949_addinreseed, kat1949_addin0, + kat1949_addin1, kat1949_retbits +}; +static const struct drbg_kat kat1949 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1949_t +}; + +static const unsigned char kat1950_entropyin[] = { + 0x8b, 0x60, 0x56, 0x35, 0x13, 0x8a, 0xb1, 0x96, 0xa9, 0x61, 0x92, 0xab, + 0x3a, 0xa6, 0x95, 0x85, 0x7f, 0xfd, 0x19, 0x7a, 0x55, 0x20, 0xec, 0x65, + 0xe2, 0xad, 0x44, 0xd0, 0x50, 0xbd, 0x97, 0xc4, +}; +static const unsigned char kat1950_nonce[] = { + 0xc0, 0xa2, 0x59, 0xd4, 0xcd, 0x87, 0x2b, 0x35, 0x1a, 0xc6, 0x01, 0x82, + 0xa6, 0x7c, 0x4f, 0xaa, +}; +static const unsigned char kat1950_persstr[] = {0}; +static const unsigned char kat1950_entropyinreseed[] = { + 0xde, 0x78, 0xf4, 0x5f, 0xbf, 0x92, 0xdd, 0x2e, 0x8a, 0x1f, 0x19, 0xe6, + 0xcc, 0x9c, 0xaf, 0xcd, 0xdd, 0x93, 0x61, 0x7d, 0x3a, 0x1d, 0xa4, 0x01, + 0x53, 0x45, 0x07, 0xf5, 0x2d, 0x63, 0xf5, 0x1a, +}; +static const unsigned char kat1950_addinreseed[] = { + 0x15, 0x5f, 0xeb, 0xed, 0xef, 0x23, 0x54, 0xb4, 0x4e, 0x86, 0xeb, 0x66, + 0xd5, 0x73, 0x0c, 0x6d, 0x6c, 0x9c, 0x7d, 0x49, 0x97, 0x78, 0x82, 0xdb, + 0xb6, 0x51, 0x5b, 0x83, 0x67, 0x47, 0xfa, 0x34, +}; +static const unsigned char kat1950_addin0[] = { + 0xae, 0x78, 0xdc, 0xb8, 0x12, 0x84, 0x5e, 0x9f, 0x42, 0xe4, 0xfc, 0x86, + 0x75, 0x81, 0x18, 0x1d, 0xd8, 0x46, 0xc4, 0xfe, 0x98, 0xb5, 0xb2, 0x80, + 0x5f, 0x55, 0x1b, 0x6c, 0x40, 0x7b, 0xcf, 0x5f, +}; +static const unsigned char kat1950_addin1[] = { + 0x5f, 0x07, 0x62, 0x17, 0x2d, 0xcd, 0xc6, 0x40, 0x73, 0x75, 0x55, 0x9a, + 0xc8, 0xb2, 0x86, 0xf4, 0xaf, 0xcf, 0x52, 0x02, 0xa3, 0xe7, 0x16, 0x4d, + 0x72, 0xfd, 0x5e, 0x35, 0x3f, 0x90, 0xa1, 0x41, +}; +static const unsigned char kat1950_retbits[] = { + 0x26, 0x96, 0xba, 0xa6, 0x7d, 0x11, 0xfa, 0x12, 0x5a, 0x8d, 0xfd, 0x4e, + 0xf8, 0x89, 0xe6, 0xb3, 0x16, 0x20, 0xef, 0x6f, 0xdd, 0xe5, 0x83, 0x50, + 0x6c, 0x4c, 0x9c, 0x7f, 0x93, 0xc4, 0xee, 0xa0, 0x55, 0x2c, 0x08, 0xff, + 0x8f, 0x00, 0x98, 0x8e, 0xf6, 0x12, 0x4a, 0xd2, 0x26, 0xcd, 0xcc, 0x04, + 0x36, 0x06, 0xc5, 0x4b, 0x38, 0x58, 0xef, 0x62, 0x20, 0x09, 0x1e, 0xaf, + 0x45, 0x90, 0x6f, 0x82, +}; +static const struct drbg_kat_pr_false kat1950_t = { + 14, kat1950_entropyin, kat1950_nonce, kat1950_persstr, + kat1950_entropyinreseed, kat1950_addinreseed, kat1950_addin0, + kat1950_addin1, kat1950_retbits +}; +static const struct drbg_kat kat1950 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1950_t +}; + +static const unsigned char kat1951_entropyin[] = { + 0x5b, 0xb1, 0x4b, 0xec, 0x3a, 0x2e, 0x43, 0x5a, 0xca, 0xb8, 0xb8, 0x91, + 0xf0, 0x75, 0x10, 0x7d, 0xf3, 0x87, 0x90, 0x2c, 0xb2, 0xcd, 0x99, 0x60, + 0x21, 0xb1, 0xa1, 0x24, 0x5d, 0x4e, 0xa2, 0xb5, +}; +static const unsigned char kat1951_nonce[] = { + 0x12, 0xac, 0x7f, 0x44, 0x4e, 0x24, 0x7f, 0x77, 0x0d, 0x2f, 0x4d, 0x0a, + 0x65, 0xfd, 0xab, 0x4e, +}; +static const unsigned char kat1951_persstr[] = { + 0x2e, 0x95, 0x7d, 0x53, 0xcb, 0xa5, 0xa6, 0xb9, 0xb8, 0xa2, 0xce, 0x43, + 0x69, 0xbb, 0x88, 0x5c, 0x09, 0x31, 0x78, 0x80, 0x15, 0xb9, 0xfe, 0x5a, + 0xc3, 0xc0, 0x1a, 0x7e, 0xc5, 0xea, 0xcd, 0x70, +}; +static const unsigned char kat1951_entropyinreseed[] = { + 0x19, 0xf3, 0x0c, 0x84, 0xf6, 0xdb, 0xf1, 0xca, 0xf6, 0x8c, 0xbe, 0xc3, + 0xd4, 0xbb, 0x90, 0xe5, 0xe8, 0xf5, 0x71, 0x6e, 0xae, 0x8c, 0x1b, 0xba, + 0xda, 0xba, 0x99, 0xa2, 0xa2, 0xbd, 0x4e, 0xb2, +}; +static const unsigned char kat1951_addinreseed[] = {0}; +static const unsigned char kat1951_addin0[] = {0}; +static const unsigned char kat1951_addin1[] = {0}; +static const unsigned char kat1951_retbits[] = { + 0xb7, 0xdd, 0x8a, 0xc2, 0xc5, 0xea, 0xa9, 0x7c, 0x77, 0x9f, 0xe4, 0x6c, + 0xc7, 0x93, 0xb9, 0xb1, 0xe7, 0xb9, 0x40, 0xc3, 0x18, 0xd3, 0xb5, 0x31, + 0x74, 0x4b, 0x42, 0x85, 0x6f, 0x29, 0x82, 0x64, 0xe4, 0x5f, 0x9a, 0x0a, + 0xca, 0x5d, 0xa9, 0x3e, 0x7f, 0x34, 0xf0, 0xeb, 0xc0, 0xed, 0x0e, 0xa3, + 0x2c, 0x00, 0x9e, 0x3e, 0x03, 0xcf, 0x01, 0x32, 0x0c, 0x9a, 0x83, 0x98, + 0x07, 0x57, 0x54, 0x05, +}; +static const struct drbg_kat_pr_false kat1951_t = { + 0, kat1951_entropyin, kat1951_nonce, kat1951_persstr, + kat1951_entropyinreseed, kat1951_addinreseed, kat1951_addin0, + kat1951_addin1, kat1951_retbits +}; +static const struct drbg_kat kat1951 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1951_t +}; + +static const unsigned char kat1952_entropyin[] = { + 0x5e, 0x1a, 0x56, 0x4a, 0x70, 0xf5, 0x93, 0xc1, 0xc0, 0xb0, 0x7c, 0x99, + 0x06, 0x45, 0x5b, 0xd9, 0xf5, 0xce, 0x7a, 0xd9, 0x2e, 0xb3, 0x44, 0xa9, + 0xcc, 0xeb, 0x12, 0xf5, 0x57, 0x6d, 0x7d, 0x9c, +}; +static const unsigned char kat1952_nonce[] = { + 0x45, 0xe0, 0x93, 0xe5, 0x87, 0x34, 0x1f, 0x6c, 0xb8, 0xf3, 0xde, 0xff, + 0xdd, 0xc4, 0xdc, 0x4d, +}; +static const unsigned char kat1952_persstr[] = { + 0xb6, 0x17, 0x14, 0xba, 0x7e, 0xd3, 0x39, 0xa2, 0x46, 0x35, 0xc0, 0xbd, + 0x4f, 0x4d, 0xb4, 0x96, 0xb7, 0x46, 0x31, 0xeb, 0xbc, 0xd1, 0x4f, 0x64, + 0x8d, 0xe7, 0x1b, 0xd6, 0xd7, 0xc1, 0x97, 0xff, +}; +static const unsigned char kat1952_entropyinreseed[] = { + 0x4f, 0xcf, 0x7a, 0xb9, 0xda, 0xa8, 0x08, 0xae, 0x81, 0xea, 0xf7, 0x28, + 0xdc, 0x74, 0xbd, 0xf4, 0xc1, 0x23, 0xa1, 0xe2, 0x44, 0x4e, 0x51, 0x18, + 0xc8, 0x04, 0x01, 0x42, 0xfe, 0xa5, 0x0a, 0x0b, +}; +static const unsigned char kat1952_addinreseed[] = {0}; +static const unsigned char kat1952_addin0[] = {0}; +static const unsigned char kat1952_addin1[] = {0}; +static const unsigned char kat1952_retbits[] = { + 0x4d, 0x56, 0xfa, 0x06, 0x5a, 0x3b, 0x98, 0xf9, 0xce, 0x21, 0x70, 0x1c, + 0x00, 0xc8, 0x33, 0xbc, 0xd4, 0x39, 0x27, 0x6f, 0xc7, 0x0a, 0xaa, 0x14, + 0x18, 0x5b, 0x39, 0xf3, 0x4d, 0x80, 0x23, 0x25, 0x65, 0xc9, 0x92, 0xe2, + 0xf0, 0xfb, 0xd9, 0x51, 0x91, 0x75, 0x75, 0x1b, 0x40, 0x57, 0xc2, 0x1e, + 0xa6, 0x9d, 0x4c, 0x55, 0x3e, 0x30, 0xe3, 0xdc, 0x55, 0x33, 0xd4, 0xab, + 0xd9, 0x7a, 0xb1, 0x9f, +}; +static const struct drbg_kat_pr_false kat1952_t = { + 1, kat1952_entropyin, kat1952_nonce, kat1952_persstr, + kat1952_entropyinreseed, kat1952_addinreseed, kat1952_addin0, + kat1952_addin1, kat1952_retbits +}; +static const struct drbg_kat kat1952 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1952_t +}; + +static const unsigned char kat1953_entropyin[] = { + 0xc3, 0x22, 0x38, 0x77, 0x3d, 0xe8, 0xdf, 0xdf, 0x3b, 0xc3, 0x19, 0xa6, + 0x46, 0x31, 0xc3, 0xca, 0xf6, 0x7a, 0xb0, 0x71, 0x6e, 0x89, 0x46, 0xee, + 0xe2, 0xff, 0xf1, 0xfd, 0xda, 0x96, 0xd2, 0xff, +}; +static const unsigned char kat1953_nonce[] = { + 0xae, 0x2b, 0x3a, 0x16, 0xb0, 0x31, 0xc7, 0x84, 0xb8, 0x0b, 0x94, 0xb4, + 0x5c, 0x8c, 0xfa, 0xea, +}; +static const unsigned char kat1953_persstr[] = { + 0xb2, 0x94, 0x00, 0xe4, 0x9e, 0x0f, 0xe2, 0x4c, 0x64, 0x18, 0xc4, 0xda, + 0x38, 0x41, 0x7f, 0x85, 0x7d, 0x53, 0xed, 0x61, 0x07, 0x0d, 0x46, 0x7e, + 0x34, 0x04, 0x9f, 0x61, 0x35, 0x68, 0x97, 0x8f, +}; +static const unsigned char kat1953_entropyinreseed[] = { + 0x91, 0xc3, 0x6b, 0x0c, 0x87, 0x58, 0x7b, 0x66, 0x35, 0x83, 0xf6, 0x36, + 0xa2, 0x63, 0x03, 0xf3, 0x08, 0xb7, 0xa5, 0xdc, 0x23, 0x5c, 0xb1, 0x80, + 0x86, 0xd4, 0xe3, 0x50, 0xbd, 0x3f, 0xb6, 0x31, +}; +static const unsigned char kat1953_addinreseed[] = {0}; +static const unsigned char kat1953_addin0[] = {0}; +static const unsigned char kat1953_addin1[] = {0}; +static const unsigned char kat1953_retbits[] = { + 0xa1, 0xd5, 0xa0, 0x59, 0xe6, 0xf3, 0xc2, 0x5a, 0x1b, 0x10, 0x61, 0x3e, + 0xfb, 0xfc, 0x48, 0x30, 0x95, 0xcc, 0x25, 0x7f, 0xd9, 0x8e, 0xd2, 0x91, + 0x43, 0x79, 0xbc, 0xd8, 0xa2, 0xff, 0xca, 0x2b, 0x3d, 0x74, 0x5c, 0x32, + 0xdf, 0xfd, 0xb7, 0x21, 0xae, 0x7a, 0x9d, 0xea, 0x85, 0xe0, 0xb7, 0xa9, + 0x93, 0xdb, 0xdf, 0xec, 0x01, 0xac, 0xaf, 0x10, 0x97, 0xdd, 0x9f, 0x52, + 0xee, 0x22, 0x3a, 0x0d, +}; +static const struct drbg_kat_pr_false kat1953_t = { + 2, kat1953_entropyin, kat1953_nonce, kat1953_persstr, + kat1953_entropyinreseed, kat1953_addinreseed, kat1953_addin0, + kat1953_addin1, kat1953_retbits +}; +static const struct drbg_kat kat1953 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1953_t +}; + +static const unsigned char kat1954_entropyin[] = { + 0xce, 0x80, 0xe5, 0x65, 0x60, 0x90, 0xe0, 0x97, 0xba, 0xfc, 0x21, 0x03, + 0x70, 0x21, 0x3d, 0x46, 0xf3, 0x58, 0xf7, 0x79, 0x03, 0xfc, 0xdf, 0xb8, + 0x77, 0xa0, 0xe5, 0x7f, 0x45, 0x3b, 0x4f, 0x7a, +}; +static const unsigned char kat1954_nonce[] = { + 0x45, 0x15, 0xc8, 0x64, 0x48, 0xed, 0xa2, 0x8e, 0xe6, 0x38, 0x17, 0xf3, + 0x6a, 0x28, 0x2b, 0xa3, +}; +static const unsigned char kat1954_persstr[] = { + 0xc7, 0x87, 0x5c, 0xcf, 0x1e, 0x5e, 0xf1, 0xf6, 0xd7, 0x59, 0x42, 0x96, + 0x02, 0x4a, 0x71, 0xca, 0xca, 0x6c, 0xf5, 0x3c, 0xc8, 0x6e, 0x4e, 0x02, + 0xf8, 0x6f, 0xbb, 0x03, 0x50, 0x6f, 0xa9, 0xa8, +}; +static const unsigned char kat1954_entropyinreseed[] = { + 0x8c, 0xe6, 0xf5, 0x6c, 0xd5, 0xb2, 0x6d, 0xe5, 0x9e, 0x01, 0xea, 0x11, + 0x50, 0x9a, 0x23, 0xe5, 0x98, 0xaf, 0xf8, 0x09, 0xdf, 0xe0, 0x7d, 0xf7, + 0xe4, 0x99, 0x4c, 0x99, 0x88, 0x5e, 0xb9, 0x4f, +}; +static const unsigned char kat1954_addinreseed[] = {0}; +static const unsigned char kat1954_addin0[] = {0}; +static const unsigned char kat1954_addin1[] = {0}; +static const unsigned char kat1954_retbits[] = { + 0x41, 0xcc, 0x56, 0x5e, 0xc3, 0x49, 0xc9, 0x78, 0xbf, 0x7c, 0x4a, 0xf2, + 0x8a, 0x6c, 0xa9, 0xb1, 0xa5, 0x99, 0x24, 0xb2, 0x3a, 0x58, 0x1a, 0x7f, + 0x3b, 0x43, 0xae, 0x08, 0x96, 0x90, 0xd6, 0xac, 0x26, 0x2c, 0x02, 0x4f, + 0xc1, 0x6d, 0x56, 0xd1, 0xb4, 0x36, 0xc8, 0x00, 0x45, 0x22, 0xf8, 0x7f, + 0x5e, 0x8e, 0xc3, 0x85, 0x19, 0x03, 0xea, 0x1e, 0xc8, 0x74, 0x50, 0x5a, + 0x20, 0x6d, 0x16, 0x59, +}; +static const struct drbg_kat_pr_false kat1954_t = { + 3, kat1954_entropyin, kat1954_nonce, kat1954_persstr, + kat1954_entropyinreseed, kat1954_addinreseed, kat1954_addin0, + kat1954_addin1, kat1954_retbits +}; +static const struct drbg_kat kat1954 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1954_t +}; + +static const unsigned char kat1955_entropyin[] = { + 0x41, 0x7b, 0x1a, 0x5a, 0xa4, 0x69, 0x4a, 0xcc, 0x25, 0xae, 0x2f, 0xb1, + 0x8e, 0xbe, 0xe5, 0x05, 0x5d, 0x69, 0x1f, 0x89, 0x08, 0x88, 0x8e, 0x60, + 0x88, 0x62, 0xc8, 0x31, 0xb9, 0x93, 0x6e, 0xae, +}; +static const unsigned char kat1955_nonce[] = { + 0x53, 0xa2, 0x27, 0xb0, 0x46, 0x86, 0x02, 0xf6, 0xd5, 0xed, 0x62, 0x3b, + 0x6b, 0x55, 0x2f, 0x48, +}; +static const unsigned char kat1955_persstr[] = { + 0xec, 0xbe, 0x55, 0xcd, 0xe2, 0x1a, 0x7d, 0x74, 0xf0, 0x34, 0x08, 0xe5, + 0xfc, 0x8b, 0x4c, 0x16, 0x2e, 0xe0, 0x66, 0x51, 0x55, 0x2f, 0xd3, 0x2a, + 0x6d, 0x40, 0xe0, 0x6c, 0x66, 0x7f, 0x95, 0xe2, +}; +static const unsigned char kat1955_entropyinreseed[] = { + 0xd1, 0xa0, 0x0e, 0x5b, 0xf5, 0x65, 0x19, 0xc1, 0x27, 0xa1, 0x7f, 0xfc, + 0xa8, 0x48, 0xa2, 0x27, 0x6b, 0x02, 0x60, 0x4e, 0xb0, 0x1b, 0x92, 0x83, + 0xde, 0x58, 0x57, 0xfa, 0x8d, 0x19, 0xb4, 0x37, +}; +static const unsigned char kat1955_addinreseed[] = {0}; +static const unsigned char kat1955_addin0[] = {0}; +static const unsigned char kat1955_addin1[] = {0}; +static const unsigned char kat1955_retbits[] = { + 0xad, 0x11, 0x37, 0x5c, 0xd7, 0xdb, 0x35, 0x4f, 0xd6, 0x73, 0x02, 0xd7, + 0x06, 0x5c, 0x9e, 0xf3, 0x6d, 0xea, 0x37, 0x3f, 0x74, 0x41, 0x14, 0xce, + 0xaf, 0xea, 0xfe, 0x6b, 0x91, 0x47, 0x98, 0x37, 0xec, 0x6f, 0xd9, 0xcd, + 0xfc, 0x29, 0x22, 0x0e, 0x84, 0x60, 0x8f, 0xb8, 0xc1, 0xa5, 0x9b, 0xde, + 0x70, 0x22, 0xa8, 0xf1, 0xe3, 0x1b, 0xef, 0x03, 0x48, 0x95, 0xcf, 0x06, + 0xa8, 0x08, 0x51, 0x88, +}; +static const struct drbg_kat_pr_false kat1955_t = { + 4, kat1955_entropyin, kat1955_nonce, kat1955_persstr, + kat1955_entropyinreseed, kat1955_addinreseed, kat1955_addin0, + kat1955_addin1, kat1955_retbits +}; +static const struct drbg_kat kat1955 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1955_t +}; + +static const unsigned char kat1956_entropyin[] = { + 0xf7, 0xf9, 0xbc, 0x79, 0x89, 0x94, 0x31, 0x7e, 0xca, 0xaf, 0x30, 0x54, + 0xaf, 0x3f, 0x65, 0x49, 0x4a, 0xeb, 0x2a, 0x23, 0x5a, 0x6e, 0x76, 0x68, + 0xaf, 0xef, 0xc4, 0x31, 0x77, 0x57, 0xab, 0xbf, +}; +static const unsigned char kat1956_nonce[] = { + 0x5d, 0x97, 0x89, 0xc2, 0x77, 0x4b, 0x85, 0x86, 0xdc, 0xba, 0xd4, 0x13, + 0x46, 0x0b, 0x7c, 0xb1, +}; +static const unsigned char kat1956_persstr[] = { + 0x8c, 0x18, 0x8f, 0xe3, 0x10, 0xbd, 0x42, 0x00, 0xbf, 0x84, 0xb5, 0x76, + 0x17, 0xac, 0x0d, 0xaf, 0x2c, 0x37, 0x3a, 0xb2, 0x1d, 0xf7, 0xb0, 0xe5, + 0x61, 0xaa, 0xbb, 0xd2, 0xe3, 0xac, 0x19, 0xef, +}; +static const unsigned char kat1956_entropyinreseed[] = { + 0xed, 0x53, 0xec, 0x2b, 0xd6, 0xed, 0x54, 0x58, 0xa5, 0x76, 0x2c, 0x38, + 0xb5, 0xc5, 0x92, 0x82, 0xf6, 0xe5, 0x56, 0x5c, 0x3b, 0xab, 0xdd, 0xe6, + 0x61, 0xbf, 0x60, 0x2a, 0x33, 0xd6, 0xf0, 0x8d, +}; +static const unsigned char kat1956_addinreseed[] = {0}; +static const unsigned char kat1956_addin0[] = {0}; +static const unsigned char kat1956_addin1[] = {0}; +static const unsigned char kat1956_retbits[] = { + 0x27, 0xe7, 0xcb, 0xeb, 0xd6, 0x7c, 0x9d, 0x82, 0xbc, 0x5e, 0x79, 0x67, + 0x10, 0xb5, 0x70, 0xe4, 0x99, 0xe0, 0xbf, 0x9b, 0xa3, 0x90, 0x54, 0xbb, + 0x0c, 0x98, 0x9a, 0x04, 0x5b, 0x27, 0x5f, 0x5f, 0x0c, 0x08, 0x9e, 0x5a, + 0x01, 0xec, 0x0b, 0xb7, 0x4c, 0xf2, 0x9e, 0x55, 0x3d, 0xc2, 0xb5, 0x2c, + 0x0b, 0x53, 0xa3, 0x03, 0x7b, 0x62, 0x92, 0xa4, 0x13, 0x29, 0x9c, 0x9d, + 0x03, 0xae, 0xdf, 0xf3, +}; +static const struct drbg_kat_pr_false kat1956_t = { + 5, kat1956_entropyin, kat1956_nonce, kat1956_persstr, + kat1956_entropyinreseed, kat1956_addinreseed, kat1956_addin0, + kat1956_addin1, kat1956_retbits +}; +static const struct drbg_kat kat1956 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1956_t +}; + +static const unsigned char kat1957_entropyin[] = { + 0x3a, 0x67, 0x01, 0x02, 0xa4, 0x46, 0xdb, 0x05, 0x67, 0x74, 0x2d, 0x42, + 0xee, 0xcd, 0xa3, 0x04, 0x69, 0xc9, 0x62, 0x11, 0xf8, 0xe7, 0xfd, 0xf8, + 0xbb, 0x72, 0x01, 0xcc, 0x5e, 0x60, 0x24, 0x81, +}; +static const unsigned char kat1957_nonce[] = { + 0x9b, 0xf1, 0x38, 0xee, 0x6a, 0xf5, 0x0a, 0x1b, 0xc2, 0x27, 0x49, 0xda, + 0x1f, 0x36, 0xe6, 0xfe, +}; +static const unsigned char kat1957_persstr[] = { + 0x16, 0xb8, 0xe8, 0x4e, 0x24, 0x9e, 0xeb, 0x2d, 0x26, 0xf8, 0x9f, 0x47, + 0x97, 0xf3, 0xff, 0x38, 0xa0, 0x68, 0x71, 0x8c, 0xc0, 0x3d, 0x14, 0xc6, + 0x55, 0x6c, 0x25, 0x5e, 0x1c, 0xc6, 0xf6, 0x6d, +}; +static const unsigned char kat1957_entropyinreseed[] = { + 0x13, 0xd8, 0x16, 0x0e, 0x06, 0x70, 0xac, 0xa8, 0x40, 0xd9, 0x5e, 0x0c, + 0x39, 0x61, 0x15, 0x19, 0x2f, 0xf8, 0x41, 0x8c, 0xfa, 0x45, 0x97, 0x34, + 0xb6, 0xe3, 0x5c, 0x4a, 0x41, 0x44, 0xef, 0xb1, +}; +static const unsigned char kat1957_addinreseed[] = {0}; +static const unsigned char kat1957_addin0[] = {0}; +static const unsigned char kat1957_addin1[] = {0}; +static const unsigned char kat1957_retbits[] = { + 0x5a, 0xd8, 0xd4, 0x37, 0xd2, 0x1a, 0x11, 0xc3, 0x7f, 0x9e, 0x95, 0x0a, + 0xab, 0x0e, 0x74, 0x1b, 0x7b, 0xa1, 0x79, 0x8a, 0x9f, 0xb8, 0xeb, 0x16, + 0x6d, 0x40, 0xee, 0xc4, 0x2f, 0x9c, 0x07, 0xd2, 0x72, 0xfe, 0x7d, 0x95, + 0xb1, 0x55, 0x61, 0x1f, 0xc6, 0xe5, 0xa4, 0x5d, 0x9e, 0x35, 0x5a, 0x55, + 0x26, 0x1a, 0x28, 0xdb, 0x17, 0xea, 0xad, 0x37, 0x3c, 0x46, 0xb4, 0xef, + 0xf6, 0xa1, 0x4b, 0x59, +}; +static const struct drbg_kat_pr_false kat1957_t = { + 6, kat1957_entropyin, kat1957_nonce, kat1957_persstr, + kat1957_entropyinreseed, kat1957_addinreseed, kat1957_addin0, + kat1957_addin1, kat1957_retbits +}; +static const struct drbg_kat kat1957 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1957_t +}; + +static const unsigned char kat1958_entropyin[] = { + 0x05, 0xee, 0xe5, 0xcf, 0x3a, 0x14, 0x8a, 0x84, 0xf1, 0x4d, 0xbe, 0x86, + 0xcb, 0xb0, 0x10, 0x4e, 0x40, 0x89, 0x3b, 0xb0, 0xb4, 0xa7, 0x12, 0x24, + 0x7b, 0x8d, 0xd5, 0x2e, 0x4a, 0x66, 0xcc, 0xb9, +}; +static const unsigned char kat1958_nonce[] = { + 0xe1, 0xe5, 0xc4, 0x83, 0x0f, 0xd7, 0x3e, 0x87, 0xe6, 0x34, 0x6c, 0x55, + 0xe2, 0x16, 0xd0, 0x75, +}; +static const unsigned char kat1958_persstr[] = { + 0xbc, 0x41, 0xaa, 0xfb, 0xcc, 0x7e, 0x63, 0xc0, 0x2d, 0x7e, 0x9c, 0x3f, + 0xb9, 0x55, 0x18, 0xb0, 0x18, 0x88, 0x67, 0x56, 0x7c, 0x65, 0x73, 0x5c, + 0x12, 0xf1, 0x3f, 0x5a, 0xb9, 0x0e, 0x78, 0x8b, +}; +static const unsigned char kat1958_entropyinreseed[] = { + 0x70, 0x2a, 0x6a, 0x05, 0x88, 0xe7, 0x2b, 0x9c, 0x95, 0x27, 0x43, 0x64, + 0x5e, 0x3d, 0x00, 0xb3, 0x5a, 0x0c, 0x8b, 0x0c, 0x2c, 0x39, 0xda, 0x09, + 0xa2, 0xe4, 0x3e, 0x91, 0xb4, 0xda, 0xcb, 0x6d, +}; +static const unsigned char kat1958_addinreseed[] = {0}; +static const unsigned char kat1958_addin0[] = {0}; +static const unsigned char kat1958_addin1[] = {0}; +static const unsigned char kat1958_retbits[] = { + 0xf7, 0xde, 0x81, 0xc2, 0x6c, 0x2f, 0x78, 0xb4, 0x2c, 0x33, 0x6a, 0x8e, + 0x0c, 0xdd, 0xde, 0x25, 0x81, 0xd4, 0xd0, 0x6d, 0x40, 0x90, 0x75, 0x0e, + 0xff, 0x3e, 0x43, 0x81, 0x6f, 0x6e, 0xa3, 0x3f, 0x56, 0xbe, 0xab, 0x6f, + 0x78, 0x79, 0x3a, 0xc4, 0x5d, 0xd4, 0xbc, 0x0a, 0x1d, 0x34, 0xf4, 0x90, + 0x60, 0xf7, 0x2f, 0xab, 0x0f, 0x8f, 0x31, 0xac, 0x5b, 0x7e, 0x98, 0x0e, + 0x34, 0x6e, 0x2f, 0x93, +}; +static const struct drbg_kat_pr_false kat1958_t = { + 7, kat1958_entropyin, kat1958_nonce, kat1958_persstr, + kat1958_entropyinreseed, kat1958_addinreseed, kat1958_addin0, + kat1958_addin1, kat1958_retbits +}; +static const struct drbg_kat kat1958 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1958_t +}; + +static const unsigned char kat1959_entropyin[] = { + 0x6c, 0x2a, 0xae, 0xac, 0x30, 0x12, 0xfc, 0x4a, 0xcc, 0x8d, 0x35, 0xc6, + 0x71, 0xf5, 0xd8, 0x8f, 0xa2, 0x5f, 0x50, 0xd8, 0xc8, 0x0c, 0x03, 0x1a, + 0xc5, 0xe8, 0x94, 0x22, 0x0b, 0xcf, 0x6f, 0xbf, +}; +static const unsigned char kat1959_nonce[] = { + 0xba, 0xac, 0x5c, 0xc1, 0x70, 0x84, 0x7c, 0x81, 0x5a, 0x76, 0xfe, 0x6e, + 0x7f, 0x9a, 0x3d, 0xa8, +}; +static const unsigned char kat1959_persstr[] = { + 0x8d, 0xb2, 0x9b, 0x7c, 0xa6, 0x68, 0x4a, 0x13, 0xed, 0xe4, 0x02, 0x5f, + 0x60, 0x00, 0x48, 0x2a, 0x37, 0x9f, 0x74, 0x56, 0x04, 0xa7, 0xd5, 0xbc, + 0xbf, 0x60, 0xa4, 0x8e, 0xf6, 0xcd, 0x8d, 0xb2, +}; +static const unsigned char kat1959_entropyinreseed[] = { + 0x64, 0xe9, 0x86, 0x2f, 0x9e, 0x66, 0x36, 0x61, 0xb3, 0x2a, 0x8e, 0x27, + 0xa7, 0x0b, 0x2a, 0x3c, 0x0e, 0xcd, 0x3f, 0x1c, 0xa3, 0xc6, 0xe1, 0x99, + 0x99, 0x5b, 0x1b, 0x58, 0x7b, 0xa3, 0x1e, 0x0c, +}; +static const unsigned char kat1959_addinreseed[] = {0}; +static const unsigned char kat1959_addin0[] = {0}; +static const unsigned char kat1959_addin1[] = {0}; +static const unsigned char kat1959_retbits[] = { + 0xfa, 0x74, 0x54, 0x92, 0x70, 0xc6, 0x48, 0x47, 0x22, 0x63, 0xe0, 0xa7, + 0x9e, 0xfb, 0x82, 0x39, 0xf0, 0x36, 0x96, 0x79, 0xcd, 0x46, 0x1f, 0xc6, + 0x87, 0x34, 0xf1, 0x04, 0x32, 0xcd, 0x26, 0x6b, 0x5b, 0xd2, 0xdf, 0x0b, + 0x50, 0xcd, 0x30, 0x7b, 0xf4, 0x79, 0xac, 0x63, 0xd5, 0xd3, 0x3d, 0xd6, + 0x50, 0x17, 0xad, 0x51, 0xb8, 0xb8, 0x57, 0x7e, 0xb4, 0x2a, 0x45, 0xac, + 0xad, 0x37, 0x3f, 0xc7, +}; +static const struct drbg_kat_pr_false kat1959_t = { + 8, kat1959_entropyin, kat1959_nonce, kat1959_persstr, + kat1959_entropyinreseed, kat1959_addinreseed, kat1959_addin0, + kat1959_addin1, kat1959_retbits +}; +static const struct drbg_kat kat1959 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1959_t +}; + +static const unsigned char kat1960_entropyin[] = { + 0x23, 0x88, 0x16, 0x18, 0xde, 0x81, 0xab, 0x18, 0xa1, 0xe3, 0x15, 0x96, + 0xae, 0x03, 0x63, 0x2a, 0x50, 0x0e, 0xe8, 0xd7, 0x51, 0xc4, 0xbd, 0x30, + 0x97, 0x22, 0x77, 0xe3, 0xab, 0xdd, 0xb4, 0x8d, +}; +static const unsigned char kat1960_nonce[] = { + 0x88, 0xcd, 0x13, 0x0a, 0x12, 0xf9, 0x2a, 0xad, 0x96, 0xe1, 0x6b, 0x13, + 0xda, 0xdc, 0xd9, 0xdd, +}; +static const unsigned char kat1960_persstr[] = { + 0x2d, 0x9d, 0xae, 0x1d, 0xcd, 0x0b, 0x7b, 0x57, 0x10, 0x88, 0x80, 0xc3, + 0x22, 0x51, 0x41, 0x65, 0x24, 0x01, 0x40, 0xd8, 0x75, 0xf2, 0xfc, 0x82, + 0x9d, 0x9b, 0x2e, 0xf9, 0x9d, 0xd3, 0x71, 0xc8, +}; +static const unsigned char kat1960_entropyinreseed[] = { + 0x85, 0x75, 0xf1, 0x6a, 0xc4, 0x2d, 0xce, 0x0d, 0xe1, 0x13, 0x23, 0x90, + 0x53, 0x54, 0x99, 0x1f, 0x1b, 0x2e, 0x85, 0xd7, 0x5c, 0x2c, 0x89, 0x30, + 0x2f, 0x5a, 0x63, 0x4c, 0xb0, 0xda, 0x24, 0x37, +}; +static const unsigned char kat1960_addinreseed[] = {0}; +static const unsigned char kat1960_addin0[] = {0}; +static const unsigned char kat1960_addin1[] = {0}; +static const unsigned char kat1960_retbits[] = { + 0x66, 0x30, 0x8b, 0x40, 0xe1, 0x2d, 0xcb, 0x28, 0x68, 0x39, 0xf2, 0x4d, + 0x88, 0xcd, 0x19, 0xeb, 0x46, 0xc4, 0x49, 0x0d, 0xca, 0xfa, 0x92, 0xd8, + 0xea, 0x19, 0xd0, 0xb2, 0x6f, 0x73, 0xe1, 0x51, 0x50, 0xe9, 0x2c, 0x9e, + 0x79, 0x18, 0xa2, 0xf1, 0x8c, 0x9b, 0x26, 0x59, 0x9c, 0x9f, 0x19, 0xa8, + 0x13, 0xb4, 0xf0, 0x1e, 0xd5, 0x66, 0x17, 0x41, 0x27, 0xfe, 0xae, 0xfc, + 0x5d, 0x15, 0x1f, 0xf4, +}; +static const struct drbg_kat_pr_false kat1960_t = { + 9, kat1960_entropyin, kat1960_nonce, kat1960_persstr, + kat1960_entropyinreseed, kat1960_addinreseed, kat1960_addin0, + kat1960_addin1, kat1960_retbits +}; +static const struct drbg_kat kat1960 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1960_t +}; + +static const unsigned char kat1961_entropyin[] = { + 0xcb, 0xde, 0x0b, 0x36, 0x4d, 0xb2, 0x2d, 0x51, 0x07, 0xfc, 0xb2, 0x9b, + 0x06, 0x62, 0x84, 0x70, 0x15, 0x06, 0x2f, 0xbe, 0x18, 0x0f, 0x9d, 0xd1, + 0x3f, 0x8b, 0x6a, 0x0f, 0xa7, 0x9c, 0xe7, 0xdb, +}; +static const unsigned char kat1961_nonce[] = { + 0xf1, 0x29, 0x4d, 0xd5, 0x52, 0x6d, 0x94, 0x97, 0x2e, 0xb0, 0x8f, 0xb3, + 0xfa, 0xb7, 0x83, 0xff, +}; +static const unsigned char kat1961_persstr[] = { + 0x7b, 0x1d, 0x46, 0x97, 0x6d, 0x6d, 0x18, 0xf0, 0xad, 0x0c, 0x39, 0x28, + 0x6b, 0x9a, 0x9d, 0x55, 0x49, 0xc6, 0xaa, 0xab, 0xdf, 0x1d, 0xf0, 0xf0, + 0x28, 0x5d, 0x2e, 0xec, 0xe4, 0xa2, 0x9a, 0x58, +}; +static const unsigned char kat1961_entropyinreseed[] = { + 0x3d, 0x71, 0xf3, 0xc4, 0xf5, 0xea, 0xe7, 0x78, 0x33, 0x3e, 0x65, 0x31, + 0x56, 0x64, 0xd4, 0x4d, 0x3a, 0x0a, 0x58, 0x86, 0x5b, 0xdd, 0xfd, 0x62, + 0xd2, 0x2f, 0x01, 0x9d, 0xcf, 0x2b, 0xcb, 0xdb, +}; +static const unsigned char kat1961_addinreseed[] = {0}; +static const unsigned char kat1961_addin0[] = {0}; +static const unsigned char kat1961_addin1[] = {0}; +static const unsigned char kat1961_retbits[] = { + 0x56, 0xf7, 0x1f, 0x0d, 0x48, 0x80, 0x4e, 0x0f, 0x2e, 0xac, 0x77, 0xf5, + 0xd3, 0x4f, 0x7b, 0xdc, 0x5e, 0x73, 0xb4, 0xe6, 0x42, 0x1d, 0x30, 0x62, + 0x3a, 0x50, 0x86, 0x0a, 0x4e, 0xfb, 0x44, 0x9b, 0x4b, 0xda, 0xb3, 0x91, + 0x8b, 0xa9, 0x4a, 0x89, 0x8d, 0x01, 0x3f, 0x15, 0x13, 0xa4, 0x01, 0x45, + 0x06, 0x73, 0x10, 0x74, 0x4e, 0x9a, 0x41, 0x98, 0xc5, 0xd3, 0x15, 0x0f, + 0xbd, 0xca, 0xb5, 0xba, +}; +static const struct drbg_kat_pr_false kat1961_t = { + 10, kat1961_entropyin, kat1961_nonce, kat1961_persstr, + kat1961_entropyinreseed, kat1961_addinreseed, kat1961_addin0, + kat1961_addin1, kat1961_retbits +}; +static const struct drbg_kat kat1961 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1961_t +}; + +static const unsigned char kat1962_entropyin[] = { + 0x8b, 0xc6, 0x8f, 0xd8, 0xe3, 0xe4, 0x25, 0x4d, 0xd1, 0xcc, 0x17, 0x8c, + 0xad, 0x22, 0x71, 0x96, 0x19, 0x67, 0x33, 0x1f, 0x3a, 0x9b, 0xf3, 0xa4, + 0xb4, 0x40, 0x40, 0x7f, 0xf0, 0xcd, 0x57, 0x47, +}; +static const unsigned char kat1962_nonce[] = { + 0xf6, 0xd9, 0x2f, 0x16, 0x33, 0xa1, 0xc4, 0x15, 0xcb, 0xa8, 0xd1, 0x35, + 0x97, 0x96, 0x5f, 0x4d, +}; +static const unsigned char kat1962_persstr[] = { + 0x7f, 0x5d, 0xe4, 0x5b, 0xd1, 0x23, 0xb5, 0xf8, 0x35, 0x07, 0x1d, 0x51, + 0xbe, 0x22, 0xe5, 0x12, 0xc8, 0x66, 0x90, 0xdf, 0x17, 0xac, 0x9d, 0x21, + 0x09, 0xdd, 0xf8, 0xe2, 0xd7, 0xd4, 0xa6, 0x5e, +}; +static const unsigned char kat1962_entropyinreseed[] = { + 0x22, 0x03, 0xaf, 0xda, 0x11, 0xd3, 0x9a, 0xca, 0x50, 0x79, 0x39, 0xb0, + 0xcd, 0xc1, 0xb7, 0x1a, 0x46, 0xec, 0x50, 0xc8, 0xfc, 0x75, 0xca, 0xd8, + 0x7e, 0x86, 0x64, 0xc1, 0x43, 0x91, 0x3d, 0x07, +}; +static const unsigned char kat1962_addinreseed[] = {0}; +static const unsigned char kat1962_addin0[] = {0}; +static const unsigned char kat1962_addin1[] = {0}; +static const unsigned char kat1962_retbits[] = { + 0x5e, 0x92, 0x13, 0x22, 0xaa, 0xf8, 0x03, 0x01, 0x22, 0xa6, 0x81, 0x4c, + 0x9e, 0x33, 0xa2, 0xb6, 0x7c, 0x02, 0x05, 0x6e, 0xaf, 0xd7, 0xfc, 0xa4, + 0x57, 0xdf, 0xbd, 0xf5, 0x52, 0x7d, 0x3e, 0xf7, 0xbb, 0x95, 0x05, 0xd9, + 0x69, 0xdc, 0x35, 0x31, 0x55, 0xc7, 0xc9, 0x23, 0x4c, 0xaa, 0x50, 0x04, + 0xc3, 0xfa, 0x6c, 0x8e, 0x63, 0x80, 0xb9, 0xe2, 0x5c, 0xd6, 0xc2, 0xc3, + 0x6c, 0x84, 0x0f, 0xc6, +}; +static const struct drbg_kat_pr_false kat1962_t = { + 11, kat1962_entropyin, kat1962_nonce, kat1962_persstr, + kat1962_entropyinreseed, kat1962_addinreseed, kat1962_addin0, + kat1962_addin1, kat1962_retbits +}; +static const struct drbg_kat kat1962 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1962_t +}; + +static const unsigned char kat1963_entropyin[] = { + 0x22, 0xe2, 0xdb, 0x91, 0xef, 0xbe, 0x30, 0xb5, 0x3f, 0xa6, 0x43, 0xd8, + 0x9e, 0x60, 0x7a, 0x1b, 0x7e, 0xeb, 0x11, 0x71, 0xca, 0xf9, 0xa5, 0x0a, + 0xf5, 0xba, 0x5d, 0x86, 0x10, 0xbe, 0xc9, 0xb2, +}; +static const unsigned char kat1963_nonce[] = { + 0x7e, 0x7d, 0x51, 0xf8, 0x9c, 0x10, 0xae, 0xa9, 0xc1, 0x3a, 0xd0, 0x3a, + 0x17, 0xa6, 0xf2, 0x08, +}; +static const unsigned char kat1963_persstr[] = { + 0x8a, 0x7b, 0xc1, 0x75, 0x52, 0xa5, 0x52, 0xdb, 0x2d, 0x6c, 0x96, 0xbd, + 0xfe, 0x93, 0xf4, 0xed, 0x61, 0xf1, 0xb1, 0x1b, 0xf9, 0xf6, 0x90, 0x3b, + 0x4f, 0xe3, 0x06, 0x63, 0x8f, 0xe0, 0x35, 0x7f, +}; +static const unsigned char kat1963_entropyinreseed[] = { + 0xec, 0x21, 0x9c, 0xcf, 0x1f, 0x56, 0x55, 0xa2, 0x48, 0x1c, 0x6a, 0xf3, + 0x5d, 0x88, 0x66, 0xf3, 0x54, 0x47, 0x2b, 0xf2, 0x57, 0x44, 0x73, 0x11, + 0x41, 0xbe, 0xf7, 0x46, 0x36, 0x87, 0xfd, 0x28, +}; +static const unsigned char kat1963_addinreseed[] = {0}; +static const unsigned char kat1963_addin0[] = {0}; +static const unsigned char kat1963_addin1[] = {0}; +static const unsigned char kat1963_retbits[] = { + 0x19, 0xc4, 0x2f, 0x82, 0xf8, 0xff, 0xba, 0x0d, 0xb3, 0x58, 0x7d, 0xbd, + 0xda, 0xcb, 0x95, 0x37, 0x6b, 0xe4, 0xef, 0x55, 0x46, 0xf3, 0x31, 0x24, + 0xff, 0xc3, 0x4d, 0xa4, 0x99, 0xbb, 0xdc, 0xb1, 0x5a, 0x17, 0x72, 0x7b, + 0x5f, 0x41, 0x4d, 0x01, 0x0c, 0x22, 0x72, 0x8e, 0x8f, 0x9c, 0x72, 0x1e, + 0xa0, 0xe0, 0xba, 0x5d, 0xc6, 0x8f, 0x7b, 0x29, 0x24, 0x7b, 0xfd, 0x04, + 0x94, 0x6b, 0x9d, 0xad, +}; +static const struct drbg_kat_pr_false kat1963_t = { + 12, kat1963_entropyin, kat1963_nonce, kat1963_persstr, + kat1963_entropyinreseed, kat1963_addinreseed, kat1963_addin0, + kat1963_addin1, kat1963_retbits +}; +static const struct drbg_kat kat1963 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1963_t +}; + +static const unsigned char kat1964_entropyin[] = { + 0x4f, 0x56, 0x73, 0xce, 0x79, 0x8b, 0x07, 0xee, 0x69, 0x1b, 0x0c, 0x42, + 0x6d, 0x52, 0x9e, 0xb6, 0xc9, 0x38, 0xf1, 0x6f, 0xf3, 0x30, 0x47, 0x2f, + 0xc6, 0xf6, 0x06, 0x80, 0xa3, 0x54, 0x9f, 0xd3, +}; +static const unsigned char kat1964_nonce[] = { + 0xa0, 0x7d, 0xf7, 0xd8, 0x76, 0x24, 0x12, 0xdc, 0x61, 0xa9, 0xd7, 0x8b, + 0xa0, 0x24, 0x4d, 0x5d, +}; +static const unsigned char kat1964_persstr[] = { + 0x9f, 0xdc, 0xb1, 0x7d, 0xa4, 0x41, 0x92, 0xca, 0xad, 0x6b, 0x57, 0x0d, + 0xd5, 0xe7, 0x5b, 0xe6, 0x6c, 0x3b, 0x30, 0x3c, 0xa7, 0xc1, 0x4b, 0xf7, + 0x20, 0xc9, 0x4a, 0x2d, 0xef, 0x34, 0xdd, 0xc3, +}; +static const unsigned char kat1964_entropyinreseed[] = { + 0x45, 0x48, 0xef, 0xd4, 0xfd, 0xc0, 0x6d, 0xf5, 0x45, 0x80, 0xf1, 0x42, + 0x6e, 0x1b, 0xe1, 0x45, 0x5f, 0x1e, 0x6d, 0x72, 0x4b, 0x07, 0x48, 0x09, + 0x74, 0xa4, 0xc6, 0xf1, 0x6b, 0x16, 0xa1, 0x90, +}; +static const unsigned char kat1964_addinreseed[] = {0}; +static const unsigned char kat1964_addin0[] = {0}; +static const unsigned char kat1964_addin1[] = {0}; +static const unsigned char kat1964_retbits[] = { + 0xa1, 0x72, 0xfd, 0xf2, 0xcd, 0x1a, 0xd4, 0x6d, 0xa5, 0xa9, 0x0c, 0x00, + 0xfe, 0x39, 0x2b, 0xbb, 0x5b, 0x3b, 0x44, 0x05, 0xa0, 0x77, 0x10, 0x8a, + 0x19, 0x49, 0xb5, 0x4c, 0x05, 0x23, 0x64, 0xeb, 0xdc, 0xda, 0xd3, 0x4e, + 0xb9, 0xea, 0xc9, 0x3f, 0xf9, 0x1e, 0x5e, 0x13, 0xcc, 0x67, 0xf0, 0x84, + 0x33, 0x10, 0x21, 0xf8, 0xdb, 0x72, 0x3b, 0x46, 0xfc, 0xdc, 0x13, 0x78, + 0x15, 0x7a, 0x6d, 0x0a, +}; +static const struct drbg_kat_pr_false kat1964_t = { + 13, kat1964_entropyin, kat1964_nonce, kat1964_persstr, + kat1964_entropyinreseed, kat1964_addinreseed, kat1964_addin0, + kat1964_addin1, kat1964_retbits +}; +static const struct drbg_kat kat1964 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1964_t +}; + +static const unsigned char kat1965_entropyin[] = { + 0xab, 0xc9, 0xf9, 0xd5, 0x38, 0x10, 0xde, 0x8e, 0x38, 0xba, 0xd1, 0x19, + 0xd5, 0x23, 0x40, 0x17, 0xc6, 0x6e, 0xcb, 0xd4, 0x10, 0x21, 0x86, 0x1f, + 0xa2, 0x82, 0x56, 0xe7, 0x3d, 0x3f, 0x70, 0x1b, +}; +static const unsigned char kat1965_nonce[] = { + 0x19, 0x4d, 0x4d, 0x4c, 0x8e, 0x64, 0xbd, 0xd9, 0x6c, 0xab, 0x79, 0xe2, + 0x3d, 0x21, 0x26, 0xe8, +}; +static const unsigned char kat1965_persstr[] = { + 0x21, 0xdc, 0x81, 0x41, 0xc8, 0x92, 0xea, 0x17, 0x36, 0x37, 0x52, 0x57, + 0x53, 0xc1, 0x1f, 0x11, 0x58, 0xfe, 0x74, 0x97, 0x5e, 0xe5, 0x5f, 0xfe, + 0x76, 0xc8, 0xa4, 0x39, 0xa3, 0x69, 0xfd, 0x25, +}; +static const unsigned char kat1965_entropyinreseed[] = { + 0xe9, 0x99, 0xc9, 0xd8, 0xb6, 0xec, 0xae, 0x35, 0xa4, 0xe0, 0x74, 0x1e, + 0xb9, 0x44, 0x12, 0x3b, 0x9b, 0xfb, 0x82, 0x42, 0x4d, 0xca, 0xe1, 0x84, + 0xee, 0x36, 0xba, 0xb4, 0xce, 0xdd, 0x54, 0x70, +}; +static const unsigned char kat1965_addinreseed[] = {0}; +static const unsigned char kat1965_addin0[] = {0}; +static const unsigned char kat1965_addin1[] = {0}; +static const unsigned char kat1965_retbits[] = { + 0x30, 0xc3, 0x28, 0xb6, 0xf8, 0xcd, 0x1e, 0xd8, 0x6d, 0x10, 0x6d, 0x40, + 0xb7, 0x24, 0xf9, 0x42, 0xbd, 0xbc, 0xd9, 0x03, 0x81, 0x1f, 0x4b, 0x8c, + 0x9d, 0xd0, 0xd2, 0x54, 0x66, 0x38, 0x75, 0x0e, 0x51, 0x42, 0x7e, 0xcd, + 0xb5, 0x17, 0xa9, 0x16, 0xf8, 0xae, 0x11, 0x90, 0x0c, 0x4a, 0xd7, 0x3d, + 0xb1, 0xbd, 0x1f, 0x23, 0x5c, 0xf8, 0xce, 0xf8, 0x1c, 0x60, 0xc7, 0x5c, + 0xfc, 0x4e, 0xe3, 0x23, +}; +static const struct drbg_kat_pr_false kat1965_t = { + 14, kat1965_entropyin, kat1965_nonce, kat1965_persstr, + kat1965_entropyinreseed, kat1965_addinreseed, kat1965_addin0, + kat1965_addin1, kat1965_retbits +}; +static const struct drbg_kat kat1965 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat1965_t +}; + +static const unsigned char kat1966_entropyin[] = { + 0x17, 0x4b, 0x46, 0x25, 0x00, 0x51, 0xa9, 0xe3, 0xd8, 0x0c, 0x56, 0xae, + 0x71, 0x63, 0xda, 0xfe, 0x7e, 0x54, 0x48, 0x1a, 0x56, 0xca, 0xfd, 0x3b, + 0x86, 0x25, 0xf9, 0x9b, 0xbb, 0x29, 0xc4, 0x42, +}; +static const unsigned char kat1966_nonce[] = { + 0x98, 0xff, 0xd9, 0x9c, 0x46, 0x6e, 0x0e, 0x94, 0xa4, 0x5d, 0xa7, 0xe0, + 0xe8, 0x2d, 0xbc, 0x6b, +}; +static const unsigned char kat1966_persstr[] = { + 0x70, 0x95, 0x26, 0x8e, 0x99, 0x93, 0x8b, 0x3e, 0x04, 0x27, 0x34, 0xb9, + 0x17, 0x6c, 0x9a, 0xa0, 0x51, 0xf0, 0x0a, 0x5f, 0x8d, 0x2a, 0x89, 0xad, + 0xa2, 0x14, 0xb8, 0x9b, 0xee, 0xf1, 0x8e, 0xbf, +}; +static const unsigned char kat1966_entropyinreseed[] = { + 0xe8, 0x8b, 0xe1, 0x96, 0x7c, 0x55, 0x03, 0xf6, 0x5d, 0x23, 0x86, 0x7b, + 0xbc, 0x89, 0x1b, 0xd6, 0x79, 0xdb, 0x03, 0xb4, 0x87, 0x86, 0x63, 0xf6, + 0xc8, 0x77, 0x59, 0x2d, 0xf2, 0x5f, 0x0d, 0x9a, +}; +static const unsigned char kat1966_addinreseed[] = { + 0xcd, 0xf6, 0xad, 0x54, 0x9e, 0x45, 0xb6, 0xaa, 0x5c, 0xd6, 0x7d, 0x02, + 0x49, 0x31, 0xc3, 0x3c, 0xd1, 0x33, 0xd5, 0x2d, 0x5a, 0xe5, 0x00, 0xc3, + 0x01, 0x50, 0x20, 0xbe, 0xb3, 0x0d, 0xa0, 0x63, +}; +static const unsigned char kat1966_addin0[] = { + 0xc7, 0x22, 0x8e, 0x90, 0xc6, 0x2f, 0x89, 0x6a, 0x09, 0xe1, 0x16, 0x84, + 0x53, 0x01, 0x02, 0xf9, 0x26, 0xec, 0x90, 0xa3, 0x25, 0x5f, 0x6c, 0x21, + 0xb8, 0x57, 0x88, 0x3c, 0x75, 0x80, 0x01, 0x43, +}; +static const unsigned char kat1966_addin1[] = { + 0x76, 0xa9, 0x4f, 0x22, 0x41, 0x78, 0xfe, 0x4c, 0xbf, 0x9e, 0x2b, 0x8a, + 0xcc, 0x53, 0xc9, 0xdc, 0x3e, 0x50, 0xbb, 0x61, 0x3a, 0xac, 0x89, 0x36, + 0x60, 0x14, 0x53, 0xcd, 0xa3, 0x29, 0x3b, 0x17, +}; +static const unsigned char kat1966_retbits[] = { + 0x1a, 0x6d, 0x8d, 0xbd, 0x64, 0x20, 0x76, 0xd1, 0x39, 0x16, 0xe5, 0xe2, + 0x30, 0x38, 0xb6, 0x0b, 0x26, 0x06, 0x1f, 0x13, 0xdd, 0x4e, 0x00, 0x62, + 0x77, 0xe0, 0x26, 0x86, 0x98, 0xff, 0xb2, 0xc8, 0x7e, 0x45, 0x3b, 0xae, + 0x12, 0x51, 0x63, 0x1a, 0xc9, 0x0c, 0x70, 0x1a, 0x98, 0x49, 0xd9, 0x33, + 0x99, 0x5e, 0x8b, 0x02, 0x21, 0xfe, 0x9a, 0xca, 0x19, 0x85, 0xc5, 0x46, + 0xc2, 0x07, 0x90, 0x27, +}; +static const struct drbg_kat_pr_false kat1966_t = { + 0, kat1966_entropyin, kat1966_nonce, kat1966_persstr, + kat1966_entropyinreseed, kat1966_addinreseed, kat1966_addin0, + kat1966_addin1, kat1966_retbits +}; +static const struct drbg_kat kat1966 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1966_t +}; + +static const unsigned char kat1967_entropyin[] = { + 0x4a, 0x92, 0x74, 0x81, 0x37, 0xf9, 0x99, 0x16, 0x0a, 0x6a, 0x75, 0xa2, + 0xa1, 0x4b, 0xc8, 0x78, 0x63, 0xf7, 0xd2, 0x7a, 0xef, 0x0d, 0x53, 0x5c, + 0x72, 0xc7, 0xf6, 0xc2, 0xe9, 0x6d, 0xa2, 0x45, +}; +static const unsigned char kat1967_nonce[] = { + 0x3f, 0x1a, 0xf8, 0xa2, 0x3a, 0xf9, 0xe1, 0x30, 0x95, 0xa0, 0xad, 0xa3, + 0xa9, 0x62, 0x18, 0xdb, +}; +static const unsigned char kat1967_persstr[] = { + 0xf7, 0xfc, 0xfc, 0x35, 0x6c, 0xda, 0x3a, 0x71, 0xc4, 0xc4, 0x72, 0x9a, + 0x2c, 0xa6, 0x3a, 0x0b, 0xe6, 0xb7, 0x17, 0x86, 0x12, 0xe6, 0x43, 0xea, + 0xd7, 0x8a, 0x44, 0xef, 0xa3, 0x5d, 0x11, 0x00, +}; +static const unsigned char kat1967_entropyinreseed[] = { + 0xef, 0xa6, 0xfd, 0xa8, 0x4b, 0x4d, 0x01, 0xb1, 0x16, 0xb3, 0x9d, 0xc5, + 0x14, 0xba, 0xef, 0x49, 0xff, 0x51, 0xf0, 0x18, 0x41, 0xb1, 0x94, 0x9e, + 0x94, 0xfd, 0xee, 0x2e, 0xc7, 0x46, 0xbd, 0xd4, +}; +static const unsigned char kat1967_addinreseed[] = { + 0x5d, 0x20, 0xbf, 0x1e, 0x3a, 0x06, 0x19, 0x3a, 0xb9, 0xe1, 0xe0, 0x25, + 0xc3, 0x00, 0x59, 0x14, 0x90, 0x30, 0xb1, 0x99, 0x6b, 0x72, 0x7c, 0xe6, + 0x5d, 0x07, 0x64, 0x9b, 0x62, 0xfa, 0x1b, 0xc7, +}; +static const unsigned char kat1967_addin0[] = { + 0xb5, 0x3f, 0x78, 0x08, 0x06, 0xa9, 0xad, 0x59, 0x03, 0xac, 0xdd, 0x1f, + 0x85, 0x1f, 0x0b, 0x0f, 0xe7, 0x2a, 0x33, 0x90, 0x66, 0x3b, 0x40, 0x68, + 0x20, 0x75, 0xb2, 0x5a, 0xc9, 0x2c, 0x0f, 0xd5, +}; +static const unsigned char kat1967_addin1[] = { + 0x46, 0xe8, 0x48, 0x39, 0xa1, 0x0e, 0xbb, 0x41, 0x69, 0x4e, 0x55, 0xfd, + 0x06, 0x42, 0x4e, 0x49, 0x4b, 0xe5, 0x80, 0xc5, 0xe1, 0x8e, 0x47, 0x44, + 0xdf, 0x8a, 0x64, 0x63, 0xff, 0x73, 0x4a, 0x40, +}; +static const unsigned char kat1967_retbits[] = { + 0xdc, 0x67, 0x62, 0x85, 0xe8, 0xdc, 0xfc, 0xcf, 0xfb, 0xb1, 0xc2, 0xbf, + 0x41, 0x4f, 0x4b, 0x20, 0xfe, 0xcd, 0x3e, 0x99, 0xe7, 0xa9, 0xf4, 0xd9, + 0x0b, 0xc8, 0x65, 0x06, 0x05, 0x4d, 0xbd, 0x44, 0x4a, 0x7c, 0x74, 0x0f, + 0x48, 0xe7, 0x1f, 0x12, 0x93, 0x1e, 0x86, 0x4e, 0xe6, 0x3c, 0x69, 0x03, + 0x74, 0xb1, 0x4d, 0x18, 0x20, 0xea, 0xef, 0xc1, 0xbf, 0x5f, 0x0d, 0x8b, + 0x57, 0x15, 0x0b, 0x5b, +}; +static const struct drbg_kat_pr_false kat1967_t = { + 1, kat1967_entropyin, kat1967_nonce, kat1967_persstr, + kat1967_entropyinreseed, kat1967_addinreseed, kat1967_addin0, + kat1967_addin1, kat1967_retbits +}; +static const struct drbg_kat kat1967 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1967_t +}; + +static const unsigned char kat1968_entropyin[] = { + 0x0a, 0xb7, 0x99, 0x5c, 0xb7, 0x93, 0x6f, 0x22, 0xfe, 0xa0, 0x32, 0x40, + 0xfd, 0x87, 0x86, 0x6e, 0xd3, 0x90, 0x75, 0xee, 0xd9, 0x4b, 0xbf, 0xc6, + 0xbe, 0x78, 0x5a, 0xd0, 0x52, 0x55, 0x2a, 0xb4, +}; +static const unsigned char kat1968_nonce[] = { + 0x5f, 0x1b, 0x0e, 0x41, 0x7d, 0x86, 0x7a, 0x38, 0xee, 0x09, 0x94, 0xf9, + 0x6e, 0xd6, 0xe8, 0xe1, +}; +static const unsigned char kat1968_persstr[] = { + 0x43, 0x05, 0xa7, 0xe0, 0x1f, 0x93, 0x1e, 0x2d, 0xd7, 0x68, 0x30, 0xcf, + 0xc3, 0x8b, 0xd1, 0x66, 0xb2, 0x35, 0x93, 0x4d, 0x25, 0x05, 0x84, 0x88, + 0x4f, 0x9b, 0x6a, 0x4d, 0x78, 0x37, 0x83, 0x8f, +}; +static const unsigned char kat1968_entropyinreseed[] = { + 0x5c, 0xc4, 0x8c, 0xd4, 0xc1, 0x9e, 0x8c, 0x17, 0xcd, 0x9f, 0xcc, 0xf6, + 0x7f, 0xb4, 0xaa, 0x80, 0x08, 0xa7, 0x45, 0xf9, 0x22, 0xf3, 0xe7, 0xe5, + 0x1f, 0xd2, 0x9c, 0xc1, 0xc1, 0x49, 0x0a, 0xe7, +}; +static const unsigned char kat1968_addinreseed[] = { + 0x89, 0x63, 0x2c, 0x6a, 0x52, 0xe9, 0x25, 0x73, 0x21, 0x4f, 0x50, 0x28, + 0x9a, 0xc7, 0x43, 0x16, 0x5e, 0xc7, 0xb2, 0x2e, 0x6c, 0x9e, 0xf9, 0x5b, + 0xe8, 0xee, 0x4a, 0x8d, 0x3a, 0xd9, 0x68, 0xab, +}; +static const unsigned char kat1968_addin0[] = { + 0x9b, 0xad, 0x67, 0xae, 0x47, 0x2d, 0x90, 0x1d, 0x3e, 0xb0, 0x44, 0xc5, + 0x39, 0x4e, 0x49, 0x68, 0xb2, 0xc2, 0xbf, 0xed, 0x1f, 0xa6, 0x51, 0x03, + 0xaa, 0x35, 0xb1, 0x21, 0xd7, 0xea, 0xda, 0xf1, +}; +static const unsigned char kat1968_addin1[] = { + 0xaf, 0x71, 0x5e, 0xb5, 0x88, 0x9f, 0x22, 0xfb, 0x63, 0xd0, 0x04, 0xb3, + 0xd7, 0xed, 0x48, 0x5c, 0x60, 0xb0, 0x34, 0x2d, 0x4a, 0xf7, 0x37, 0xac, + 0x32, 0xe0, 0x7c, 0xa5, 0x54, 0x6e, 0x74, 0xa3, +}; +static const unsigned char kat1968_retbits[] = { + 0x92, 0x37, 0xd5, 0xa4, 0x04, 0xf7, 0xeb, 0xa1, 0x57, 0xf1, 0xd9, 0xb8, + 0xbc, 0x82, 0xf6, 0xed, 0x1f, 0x82, 0x99, 0x25, 0xc2, 0xc6, 0x90, 0xf9, + 0x05, 0xb1, 0x03, 0x0f, 0xf4, 0xb3, 0xa5, 0x92, 0xf5, 0xe2, 0x21, 0xe9, + 0x9d, 0x76, 0xc1, 0x42, 0x1a, 0x41, 0xe8, 0xf7, 0x4b, 0xc1, 0xf7, 0x8a, + 0xb4, 0xa7, 0x70, 0x01, 0xe3, 0x9d, 0x87, 0xd4, 0x2f, 0x42, 0x60, 0xcb, + 0xaf, 0x4a, 0x40, 0xc1, +}; +static const struct drbg_kat_pr_false kat1968_t = { + 2, kat1968_entropyin, kat1968_nonce, kat1968_persstr, + kat1968_entropyinreseed, kat1968_addinreseed, kat1968_addin0, + kat1968_addin1, kat1968_retbits +}; +static const struct drbg_kat kat1968 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1968_t +}; + +static const unsigned char kat1969_entropyin[] = { + 0x5f, 0x04, 0x39, 0x91, 0x65, 0xa2, 0x39, 0x2f, 0x61, 0xc5, 0x88, 0xfe, + 0x64, 0x6e, 0x9d, 0x8c, 0xdc, 0x9b, 0x2c, 0x35, 0x6f, 0x7b, 0x00, 0x50, + 0x27, 0x16, 0xdc, 0x43, 0x3e, 0xcf, 0x91, 0x3d, +}; +static const unsigned char kat1969_nonce[] = { + 0xd3, 0xc9, 0xb9, 0x33, 0x6b, 0xcd, 0xef, 0x76, 0xbe, 0x6d, 0xa4, 0x2d, + 0x67, 0xb7, 0x7c, 0x73, +}; +static const unsigned char kat1969_persstr[] = { + 0xf3, 0x1c, 0xb8, 0xec, 0x30, 0xe0, 0x87, 0xc6, 0xf9, 0x32, 0x50, 0x08, + 0x77, 0xb9, 0xd7, 0xb3, 0xc4, 0x75, 0x66, 0xcd, 0x91, 0x9e, 0x79, 0xd1, + 0x87, 0x34, 0x0b, 0xaa, 0x4d, 0x38, 0x9c, 0xed, +}; +static const unsigned char kat1969_entropyinreseed[] = { + 0x73, 0x62, 0xfd, 0x81, 0x35, 0x5a, 0xdb, 0x2d, 0x42, 0x21, 0xfd, 0x66, + 0xa8, 0x5e, 0xcd, 0x20, 0xe9, 0x49, 0xb9, 0x12, 0xc4, 0xae, 0xf9, 0xc1, + 0x28, 0x51, 0xb7, 0x91, 0x6d, 0x44, 0x18, 0x67, +}; +static const unsigned char kat1969_addinreseed[] = { + 0xf8, 0x11, 0x56, 0x38, 0x23, 0xd0, 0x46, 0x62, 0x56, 0x42, 0xe0, 0x52, + 0xaa, 0xdb, 0x89, 0xbd, 0x64, 0x14, 0x67, 0x3b, 0xe1, 0x41, 0x9d, 0x34, + 0x2a, 0x7e, 0x3d, 0xc3, 0xbb, 0x1a, 0xdd, 0x17, +}; +static const unsigned char kat1969_addin0[] = { + 0x6a, 0x06, 0xf3, 0x07, 0x79, 0x56, 0x9b, 0x7d, 0x56, 0x1e, 0xe1, 0x6b, + 0xd5, 0x2e, 0xb8, 0xfa, 0x7c, 0xe6, 0x0d, 0x23, 0x6e, 0x81, 0x92, 0xf8, + 0x01, 0x83, 0x10, 0xd9, 0x01, 0xad, 0xb6, 0x54, +}; +static const unsigned char kat1969_addin1[] = { + 0x9b, 0xf4, 0x89, 0xbd, 0x45, 0xe4, 0xdd, 0x75, 0x20, 0x7d, 0xbe, 0x73, + 0x39, 0xb9, 0xe0, 0x46, 0x6f, 0x53, 0x71, 0x82, 0x2f, 0x8e, 0x90, 0xdc, + 0xca, 0xa2, 0xa3, 0x1b, 0x3c, 0x78, 0x8a, 0x2b, +}; +static const unsigned char kat1969_retbits[] = { + 0x00, 0xd8, 0x8e, 0x7f, 0xa5, 0x28, 0xf8, 0x30, 0xbe, 0x3e, 0xad, 0x61, + 0xdd, 0xba, 0x12, 0x98, 0xdc, 0xad, 0x36, 0x6c, 0x0a, 0xb1, 0xa4, 0xe9, + 0x0f, 0x49, 0xf1, 0x35, 0x87, 0xb9, 0x32, 0x69, 0x32, 0xd8, 0xe1, 0x97, + 0x2c, 0x4e, 0x7b, 0x33, 0x5c, 0xee, 0xdd, 0x2f, 0xb1, 0x7d, 0x33, 0x46, + 0x47, 0xef, 0x6f, 0x40, 0x6e, 0x30, 0x82, 0xa1, 0xc3, 0x3f, 0xf4, 0xde, + 0x98, 0x6a, 0x55, 0x57, +}; +static const struct drbg_kat_pr_false kat1969_t = { + 3, kat1969_entropyin, kat1969_nonce, kat1969_persstr, + kat1969_entropyinreseed, kat1969_addinreseed, kat1969_addin0, + kat1969_addin1, kat1969_retbits +}; +static const struct drbg_kat kat1969 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1969_t +}; + +static const unsigned char kat1970_entropyin[] = { + 0xa7, 0xa0, 0x53, 0x61, 0xd4, 0x28, 0xaf, 0x23, 0xa0, 0xd4, 0xf1, 0x32, + 0x76, 0x8a, 0x4b, 0x24, 0xfb, 0xd7, 0x8e, 0x1f, 0x42, 0xfb, 0x46, 0x20, + 0x5d, 0x7b, 0x52, 0x89, 0x1b, 0x22, 0x97, 0xa8, +}; +static const unsigned char kat1970_nonce[] = { + 0x81, 0x77, 0x60, 0x0c, 0xb1, 0xff, 0xea, 0x16, 0x12, 0x77, 0xa8, 0x39, + 0xad, 0x5d, 0x05, 0xfa, +}; +static const unsigned char kat1970_persstr[] = { + 0x79, 0xce, 0x51, 0xa1, 0xc2, 0x95, 0xc9, 0xa3, 0x8d, 0x11, 0xdb, 0x50, + 0x23, 0xc3, 0x49, 0xfb, 0xa3, 0x47, 0xe1, 0x93, 0x96, 0x1c, 0x90, 0xaf, + 0x9e, 0x2e, 0x73, 0x26, 0x42, 0x0d, 0x90, 0x28, +}; +static const unsigned char kat1970_entropyinreseed[] = { + 0x66, 0x40, 0x38, 0xf3, 0xe8, 0xbf, 0xd6, 0xb0, 0xba, 0x65, 0x52, 0xe8, + 0x36, 0x98, 0xb3, 0xf4, 0x94, 0x5f, 0x18, 0x2c, 0x40, 0x0b, 0xff, 0xab, + 0x74, 0xb4, 0x6f, 0x07, 0xad, 0x42, 0x76, 0x4e, +}; +static const unsigned char kat1970_addinreseed[] = { + 0xa5, 0x82, 0xb4, 0x50, 0xef, 0xf2, 0x1d, 0xc5, 0xc0, 0xbb, 0xde, 0x22, + 0x5c, 0xf9, 0x02, 0xa4, 0x85, 0x88, 0x91, 0xff, 0x42, 0xb2, 0xcd, 0xc5, + 0x20, 0x80, 0x91, 0x10, 0x64, 0x48, 0x58, 0x2e, +}; +static const unsigned char kat1970_addin0[] = { + 0x1f, 0xa8, 0xbe, 0x06, 0x76, 0xba, 0x5b, 0x09, 0xb8, 0x4d, 0x43, 0xac, + 0x44, 0xc7, 0x84, 0x32, 0x85, 0x8e, 0xfa, 0x4b, 0xda, 0x7b, 0x4a, 0xad, + 0x8d, 0x6a, 0x7e, 0x64, 0xd1, 0x55, 0xcc, 0x89, +}; +static const unsigned char kat1970_addin1[] = { + 0xb7, 0x36, 0x8a, 0x0e, 0x32, 0xea, 0x9e, 0x17, 0x61, 0x63, 0x67, 0x92, + 0x19, 0x58, 0x0f, 0xd0, 0x50, 0xf7, 0x56, 0x6a, 0x31, 0x8f, 0x1b, 0x6c, + 0x5f, 0xaf, 0x1e, 0x84, 0xe2, 0xe9, 0x07, 0x0f, +}; +static const unsigned char kat1970_retbits[] = { + 0x56, 0xeb, 0xc2, 0x2b, 0xd2, 0x5e, 0x87, 0x23, 0x3e, 0x27, 0x44, 0x8f, + 0x3d, 0x78, 0xd0, 0x27, 0xfd, 0x9a, 0xb6, 0x06, 0xf0, 0x0a, 0xd1, 0x7d, + 0x9c, 0x42, 0x7c, 0x7a, 0xd8, 0x8a, 0x29, 0x7b, 0x94, 0x0f, 0x04, 0x4a, + 0x7e, 0x6d, 0xc5, 0x48, 0xa9, 0xec, 0x12, 0x07, 0x4a, 0xc9, 0xcb, 0x87, + 0x14, 0x8b, 0x6b, 0x2d, 0x48, 0xd7, 0x0b, 0x24, 0xcf, 0xd6, 0xe2, 0x03, + 0x44, 0xe7, 0xb8, 0x5b, +}; +static const struct drbg_kat_pr_false kat1970_t = { + 4, kat1970_entropyin, kat1970_nonce, kat1970_persstr, + kat1970_entropyinreseed, kat1970_addinreseed, kat1970_addin0, + kat1970_addin1, kat1970_retbits +}; +static const struct drbg_kat kat1970 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1970_t +}; + +static const unsigned char kat1971_entropyin[] = { + 0x2d, 0x06, 0x66, 0x50, 0x7c, 0xc6, 0xe1, 0xe6, 0xab, 0x6d, 0x87, 0x44, + 0x83, 0x35, 0x38, 0x05, 0x67, 0x22, 0xd6, 0x72, 0x0a, 0xf8, 0x8d, 0x01, + 0x09, 0xd0, 0xef, 0x56, 0x3e, 0xc1, 0xd1, 0x3e, +}; +static const unsigned char kat1971_nonce[] = { + 0xcb, 0x71, 0x96, 0x4e, 0x05, 0x72, 0x1f, 0xc4, 0xe6, 0xfd, 0x22, 0x79, + 0xdf, 0x81, 0xee, 0x45, +}; +static const unsigned char kat1971_persstr[] = { + 0x0d, 0x07, 0xef, 0xdd, 0x5a, 0x8e, 0x15, 0x25, 0x26, 0xb7, 0xbd, 0x59, + 0x21, 0x77, 0x4c, 0xe5, 0x04, 0xf0, 0xc4, 0xff, 0x8c, 0xca, 0xca, 0x1d, + 0x86, 0x15, 0xe0, 0x74, 0xf8, 0xc9, 0x93, 0x1b, +}; +static const unsigned char kat1971_entropyinreseed[] = { + 0xc9, 0x21, 0x8f, 0x42, 0xa2, 0xa5, 0x63, 0x1e, 0x75, 0x7e, 0x6e, 0x92, + 0xcc, 0xdb, 0x84, 0x8b, 0x51, 0xb0, 0xc9, 0xba, 0xc8, 0x94, 0x58, 0x88, + 0xcb, 0x9f, 0xda, 0x7e, 0xe1, 0x09, 0x56, 0xb8, +}; +static const unsigned char kat1971_addinreseed[] = { + 0xf8, 0x30, 0x52, 0x47, 0xd7, 0xcc, 0xa7, 0xb0, 0x65, 0xdb, 0x7e, 0xae, + 0xeb, 0x13, 0xab, 0xc3, 0x18, 0x71, 0xe7, 0xa8, 0xcd, 0x76, 0x63, 0xc2, + 0x91, 0x08, 0x3c, 0x87, 0xd9, 0xcb, 0xc1, 0x84, +}; +static const unsigned char kat1971_addin0[] = { + 0xb9, 0xc4, 0x8f, 0x33, 0x81, 0xf9, 0xcc, 0x54, 0x97, 0x5f, 0x9b, 0xd4, + 0x6d, 0x00, 0x38, 0x66, 0x44, 0x18, 0x3f, 0x17, 0x16, 0xb2, 0xe0, 0x4c, + 0xf1, 0x07, 0x2c, 0x0e, 0x53, 0xf5, 0xa4, 0xeb, +}; +static const unsigned char kat1971_addin1[] = { + 0xef, 0x19, 0x0e, 0x7e, 0xb3, 0xb6, 0x0f, 0x61, 0x46, 0x65, 0x63, 0x8f, + 0xb3, 0xba, 0xe5, 0x66, 0xd2, 0x5e, 0x77, 0x90, 0x21, 0x70, 0x42, 0x38, + 0x54, 0x60, 0x18, 0x40, 0x84, 0x9e, 0x62, 0x88, +}; +static const unsigned char kat1971_retbits[] = { + 0xe6, 0x2e, 0x6a, 0x47, 0x88, 0x65, 0x7b, 0xa4, 0xe9, 0xb9, 0x37, 0x1d, + 0x1e, 0x72, 0xe7, 0xb0, 0x70, 0xe5, 0x88, 0x57, 0x31, 0x8f, 0x4d, 0x3a, + 0x7f, 0x0e, 0xf3, 0x70, 0x21, 0x4a, 0x2f, 0x4e, 0xb4, 0xb4, 0x5d, 0x32, + 0x97, 0x6a, 0xf7, 0x9c, 0x7c, 0xfd, 0xc4, 0x49, 0x44, 0x7b, 0x51, 0x71, + 0x48, 0x92, 0xbe, 0x31, 0xc9, 0x92, 0x30, 0x99, 0x6f, 0xa6, 0xa1, 0x8f, + 0x23, 0x65, 0x80, 0x76, +}; +static const struct drbg_kat_pr_false kat1971_t = { + 5, kat1971_entropyin, kat1971_nonce, kat1971_persstr, + kat1971_entropyinreseed, kat1971_addinreseed, kat1971_addin0, + kat1971_addin1, kat1971_retbits +}; +static const struct drbg_kat kat1971 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1971_t +}; + +static const unsigned char kat1972_entropyin[] = { + 0x49, 0x1c, 0xc3, 0x12, 0x91, 0xac, 0x33, 0xe3, 0x69, 0xde, 0xd4, 0xe7, + 0xae, 0xb0, 0x7e, 0xe5, 0x77, 0x7f, 0x3e, 0x18, 0x3e, 0x30, 0xa8, 0x32, + 0x7b, 0x4e, 0x56, 0x49, 0x80, 0x92, 0x82, 0x58, +}; +static const unsigned char kat1972_nonce[] = { + 0x4d, 0x38, 0x0f, 0x5a, 0xe8, 0x77, 0xce, 0xcf, 0x4d, 0x70, 0xc6, 0x56, + 0x0e, 0x92, 0x26, 0xba, +}; +static const unsigned char kat1972_persstr[] = { + 0xa3, 0x22, 0x05, 0xba, 0x78, 0x25, 0x3d, 0x54, 0x21, 0xfe, 0x61, 0xbe, + 0x3c, 0x8b, 0xa8, 0x99, 0x03, 0x11, 0xfd, 0xdc, 0xa1, 0x81, 0x50, 0x3b, + 0x2a, 0x85, 0xb9, 0x82, 0x74, 0x50, 0x6f, 0x90, +}; +static const unsigned char kat1972_entropyinreseed[] = { + 0x57, 0xc8, 0x4a, 0xbf, 0x8e, 0x41, 0x80, 0xa6, 0x8d, 0x84, 0x32, 0x06, + 0x36, 0x9a, 0x6a, 0x5d, 0xb1, 0x3e, 0x02, 0xf9, 0x9f, 0x65, 0x75, 0x1f, + 0x92, 0x22, 0xe7, 0x4b, 0x06, 0xa7, 0xdc, 0xab, +}; +static const unsigned char kat1972_addinreseed[] = { + 0xb2, 0x79, 0x26, 0x41, 0xd5, 0x42, 0x2b, 0x27, 0x6a, 0x56, 0xb9, 0x97, + 0x21, 0x24, 0x37, 0x52, 0x75, 0xb0, 0xbb, 0x2e, 0x52, 0xd2, 0xea, 0x65, + 0x2e, 0x53, 0xd8, 0xbe, 0xd5, 0xfc, 0xe8, 0xb6, +}; +static const unsigned char kat1972_addin0[] = { + 0x17, 0xa6, 0x9c, 0x86, 0x2f, 0xff, 0xd1, 0xb0, 0xf3, 0x55, 0x71, 0x6f, + 0xb1, 0x0c, 0x9f, 0xc9, 0xfa, 0x8d, 0xc7, 0xe2, 0x9e, 0xc7, 0x46, 0xed, + 0x3a, 0xf2, 0x62, 0x08, 0x53, 0x03, 0xa8, 0x95, +}; +static const unsigned char kat1972_addin1[] = { + 0x0b, 0xeb, 0x0a, 0xf4, 0x1f, 0xa7, 0x9e, 0xc5, 0x39, 0x26, 0x1c, 0x85, + 0x61, 0x17, 0x6c, 0xed, 0xa3, 0x88, 0x8b, 0x56, 0x90, 0x24, 0xfd, 0x44, + 0xca, 0xdd, 0xc7, 0xd7, 0xb9, 0x9a, 0x9a, 0x6c, +}; +static const unsigned char kat1972_retbits[] = { + 0x27, 0x81, 0x00, 0x65, 0x97, 0xc9, 0x2e, 0xe6, 0x8f, 0xd5, 0xb1, 0x79, + 0x13, 0x01, 0xa5, 0x64, 0x30, 0x71, 0x25, 0xde, 0x30, 0xdf, 0xe3, 0x83, + 0x0c, 0x0b, 0xff, 0x48, 0x27, 0xf7, 0x4b, 0xe3, 0xa1, 0x1c, 0x21, 0xfd, + 0xa3, 0x9e, 0x4c, 0xff, 0xd2, 0x92, 0xcf, 0xe7, 0x4d, 0x69, 0x1e, 0x00, + 0xe9, 0x1f, 0x43, 0x15, 0x60, 0xd3, 0x2f, 0xcd, 0xf5, 0xe6, 0xe5, 0xa3, + 0xae, 0xad, 0xa9, 0x0b, +}; +static const struct drbg_kat_pr_false kat1972_t = { + 6, kat1972_entropyin, kat1972_nonce, kat1972_persstr, + kat1972_entropyinreseed, kat1972_addinreseed, kat1972_addin0, + kat1972_addin1, kat1972_retbits +}; +static const struct drbg_kat kat1972 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1972_t +}; + +static const unsigned char kat1973_entropyin[] = { + 0x44, 0xc9, 0xd4, 0x36, 0x1c, 0x63, 0x9e, 0xe3, 0x50, 0x88, 0x22, 0x03, + 0xe0, 0x8f, 0x81, 0xa5, 0xff, 0xec, 0x04, 0x4c, 0x35, 0xd8, 0x4e, 0x3b, + 0x60, 0x11, 0x7d, 0x45, 0xda, 0xfb, 0x33, 0xfd, +}; +static const unsigned char kat1973_nonce[] = { + 0x42, 0xb3, 0x02, 0xfa, 0xf1, 0x98, 0x1a, 0x5c, 0x90, 0xc6, 0x84, 0xc6, + 0xd4, 0xae, 0x1c, 0x66, +}; +static const unsigned char kat1973_persstr[] = { + 0x65, 0x61, 0xd6, 0xf2, 0x98, 0x20, 0x5a, 0x0b, 0xf0, 0x52, 0xed, 0xf7, + 0x3d, 0xfd, 0xd1, 0xd5, 0x8e, 0xef, 0x8a, 0xb6, 0xdf, 0x93, 0x93, 0x54, + 0x5e, 0x1f, 0xc7, 0x69, 0x1e, 0x23, 0xde, 0x88, +}; +static const unsigned char kat1973_entropyinreseed[] = { + 0x9f, 0x0e, 0xfe, 0xe8, 0x6b, 0x42, 0x67, 0x62, 0xf1, 0xd6, 0x5e, 0x2c, + 0x70, 0x2e, 0xfe, 0x93, 0x94, 0x29, 0x30, 0xc3, 0xf3, 0x68, 0xfd, 0x17, + 0xbb, 0x3a, 0xaf, 0xa0, 0x3e, 0x47, 0x2e, 0x77, +}; +static const unsigned char kat1973_addinreseed[] = { + 0x1f, 0xaf, 0x3b, 0x76, 0x2a, 0x40, 0xad, 0x81, 0x5c, 0x67, 0xbe, 0x4e, + 0xfe, 0xc9, 0xac, 0x0f, 0x2a, 0xc2, 0x94, 0xc7, 0x22, 0x6f, 0xe7, 0xac, + 0x8a, 0x9d, 0x68, 0xa3, 0x46, 0x09, 0x91, 0x1d, +}; +static const unsigned char kat1973_addin0[] = { + 0x7d, 0xba, 0xd1, 0x57, 0xb0, 0x98, 0x14, 0x17, 0x73, 0xf9, 0x63, 0x0c, + 0xfa, 0x4e, 0x71, 0xee, 0xdf, 0x36, 0x32, 0x9b, 0x92, 0x50, 0x0b, 0x65, + 0x55, 0x1c, 0xec, 0xab, 0x57, 0xae, 0x99, 0x44, +}; +static const unsigned char kat1973_addin1[] = { + 0x03, 0x14, 0xf5, 0xea, 0x3a, 0xab, 0xad, 0xbc, 0x0c, 0x3d, 0xb2, 0x5f, + 0x7f, 0xd1, 0x45, 0x61, 0x0b, 0xa3, 0x50, 0xb2, 0xb2, 0x78, 0xd4, 0x05, + 0xd0, 0x0a, 0x36, 0x89, 0xb6, 0x75, 0x0a, 0xf3, +}; +static const unsigned char kat1973_retbits[] = { + 0xde, 0x13, 0x6a, 0x0f, 0x97, 0x44, 0x7d, 0x24, 0xea, 0x51, 0x60, 0xec, + 0x1a, 0xb9, 0x3b, 0xa7, 0xfe, 0x80, 0x44, 0xfe, 0x3b, 0x8a, 0xe8, 0x69, + 0xf5, 0xc4, 0x48, 0xcc, 0x9e, 0x27, 0xa4, 0x8e, 0x18, 0x44, 0xd8, 0xfa, + 0xe0, 0x68, 0x70, 0x5b, 0x6c, 0xd7, 0x86, 0x7e, 0xa1, 0xae, 0xb5, 0xa3, + 0xf0, 0xd4, 0x9e, 0x79, 0xea, 0x9f, 0x51, 0x37, 0x69, 0x4e, 0xca, 0x28, + 0x65, 0x96, 0x40, 0x4d, +}; +static const struct drbg_kat_pr_false kat1973_t = { + 7, kat1973_entropyin, kat1973_nonce, kat1973_persstr, + kat1973_entropyinreseed, kat1973_addinreseed, kat1973_addin0, + kat1973_addin1, kat1973_retbits +}; +static const struct drbg_kat kat1973 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1973_t +}; + +static const unsigned char kat1974_entropyin[] = { + 0xb5, 0x43, 0x0c, 0x96, 0x22, 0xac, 0x2d, 0xde, 0xf3, 0x03, 0xee, 0xac, + 0x62, 0xdb, 0x05, 0x75, 0xba, 0x07, 0x1f, 0xfb, 0x73, 0xec, 0xb0, 0x19, + 0xf7, 0xf3, 0xc5, 0xb8, 0xd7, 0x3f, 0x8a, 0x05, +}; +static const unsigned char kat1974_nonce[] = { + 0xd3, 0xa3, 0x07, 0x22, 0xd6, 0xb4, 0x30, 0xbc, 0x9e, 0x9a, 0xe6, 0x13, + 0x47, 0x74, 0x46, 0x91, +}; +static const unsigned char kat1974_persstr[] = { + 0x3f, 0xb2, 0x8f, 0x0a, 0x48, 0xd5, 0x6d, 0x87, 0x13, 0xc8, 0x59, 0xd2, + 0xfc, 0x05, 0x0c, 0xc2, 0x8e, 0xc3, 0xa6, 0xa1, 0x0e, 0x20, 0x60, 0xdb, + 0x25, 0x0f, 0x73, 0xb2, 0x1e, 0x79, 0x83, 0xb4, +}; +static const unsigned char kat1974_entropyinreseed[] = { + 0xdd, 0xa8, 0x22, 0xa6, 0x96, 0x85, 0x15, 0x71, 0xaa, 0x5b, 0x1e, 0x07, + 0x26, 0x61, 0x6c, 0xe1, 0x12, 0x2e, 0x71, 0xdc, 0xe3, 0x3d, 0x54, 0xfb, + 0x75, 0xf2, 0x3f, 0xf2, 0xb9, 0x1a, 0xf9, 0x55, +}; +static const unsigned char kat1974_addinreseed[] = { + 0x07, 0x63, 0x35, 0xd2, 0x3d, 0xb4, 0x02, 0x31, 0x63, 0x4d, 0x4c, 0x90, + 0xd2, 0x19, 0x1b, 0xbb, 0x25, 0xa5, 0x2e, 0x2f, 0x20, 0xf2, 0x77, 0xea, + 0xec, 0x90, 0xe2, 0xc0, 0x6c, 0x9f, 0xde, 0x82, +}; +static const unsigned char kat1974_addin0[] = { + 0x5f, 0x34, 0xc6, 0x1b, 0x82, 0xf5, 0x51, 0x6b, 0x67, 0xbe, 0xd5, 0x10, + 0x20, 0x98, 0x07, 0xad, 0xe3, 0xa6, 0x68, 0x7a, 0x3c, 0x5f, 0x03, 0xb2, + 0x94, 0xad, 0x11, 0x64, 0xa4, 0xd7, 0xa1, 0x52, +}; +static const unsigned char kat1974_addin1[] = { + 0x83, 0xd4, 0x0f, 0xd5, 0x5b, 0x12, 0xfc, 0x40, 0x85, 0x65, 0x33, 0x30, + 0xe6, 0x73, 0x61, 0xb0, 0x86, 0xbb, 0x00, 0x3a, 0x2d, 0x00, 0x2d, 0x4f, + 0x1a, 0xc9, 0x19, 0x10, 0x8e, 0x31, 0x7f, 0x1a, +}; +static const unsigned char kat1974_retbits[] = { + 0xf8, 0xd4, 0xab, 0xc5, 0xb4, 0x8f, 0xba, 0x89, 0x4a, 0x6e, 0x96, 0xfb, + 0x21, 0xd2, 0xb8, 0x1c, 0x1a, 0xfc, 0xa1, 0xed, 0x0b, 0x0f, 0x02, 0x7c, + 0x05, 0xc3, 0xa8, 0x37, 0xe0, 0x5f, 0xe6, 0x35, 0x9a, 0x31, 0x4f, 0x34, + 0xc5, 0x05, 0x41, 0x31, 0x42, 0x35, 0x6d, 0x33, 0xba, 0x4f, 0xbd, 0x22, + 0x71, 0x67, 0x34, 0x08, 0x81, 0x3a, 0x48, 0x7c, 0x68, 0xf6, 0xf4, 0x56, + 0x08, 0x83, 0xc4, 0x75, +}; +static const struct drbg_kat_pr_false kat1974_t = { + 8, kat1974_entropyin, kat1974_nonce, kat1974_persstr, + kat1974_entropyinreseed, kat1974_addinreseed, kat1974_addin0, + kat1974_addin1, kat1974_retbits +}; +static const struct drbg_kat kat1974 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1974_t +}; + +static const unsigned char kat1975_entropyin[] = { + 0xda, 0x0a, 0x38, 0xa4, 0x63, 0x8f, 0x1b, 0x7d, 0xbd, 0xa5, 0x90, 0xab, + 0xb5, 0xa3, 0x7d, 0x59, 0x35, 0xf1, 0xe2, 0xe7, 0x24, 0xf5, 0x0c, 0xd3, + 0xfe, 0x9a, 0xb1, 0x31, 0xd1, 0x0f, 0xdc, 0xd9, +}; +static const unsigned char kat1975_nonce[] = { + 0x7d, 0x11, 0x73, 0xea, 0x9d, 0x0c, 0x56, 0x51, 0x29, 0xe3, 0x62, 0xc3, + 0x9b, 0x54, 0x14, 0xd1, +}; +static const unsigned char kat1975_persstr[] = { + 0x93, 0x92, 0x38, 0x53, 0x3e, 0x73, 0xaa, 0xc1, 0xf2, 0x46, 0x70, 0xa5, + 0x86, 0x36, 0x8b, 0xc5, 0x4b, 0xe2, 0x48, 0x13, 0x65, 0x29, 0xf8, 0x6a, + 0xbc, 0x6b, 0x50, 0x79, 0x14, 0x74, 0xff, 0x8c, +}; +static const unsigned char kat1975_entropyinreseed[] = { + 0xf5, 0xf9, 0x12, 0x27, 0x85, 0x2b, 0x78, 0xad, 0x75, 0x5a, 0x28, 0x4a, + 0x3f, 0x43, 0xf3, 0x8e, 0x88, 0xd3, 0xe9, 0x3f, 0x78, 0xd4, 0x4a, 0x0d, + 0x34, 0x8f, 0x10, 0x13, 0x56, 0x1b, 0xa2, 0x9c, +}; +static const unsigned char kat1975_addinreseed[] = { + 0x3d, 0xf6, 0xc0, 0x3d, 0x2f, 0x09, 0xcc, 0x64, 0xca, 0x13, 0x39, 0x08, + 0x34, 0x7c, 0xed, 0xd6, 0x11, 0x06, 0x2b, 0xf6, 0x9e, 0xa6, 0x91, 0x26, + 0x86, 0xe4, 0x24, 0x4b, 0xd5, 0xcf, 0x42, 0x1b, +}; +static const unsigned char kat1975_addin0[] = { + 0x54, 0xaf, 0x87, 0x4c, 0x0d, 0x14, 0x2a, 0xb9, 0x07, 0x77, 0x97, 0x4c, + 0x1c, 0x9c, 0x7f, 0xce, 0x24, 0xd4, 0x3b, 0xd5, 0x6c, 0x94, 0x37, 0xf5, + 0xc7, 0x74, 0xbf, 0xf5, 0xf5, 0x44, 0x61, 0x24, +}; +static const unsigned char kat1975_addin1[] = { + 0x4f, 0x26, 0x45, 0x61, 0xd6, 0xf3, 0xcc, 0xdb, 0xeb, 0xcf, 0x3f, 0xf5, + 0x86, 0x2e, 0x4d, 0xba, 0xa3, 0xae, 0xf6, 0x7f, 0xf4, 0xbd, 0x66, 0xe3, + 0xf2, 0x5c, 0x3a, 0xf1, 0xf4, 0x1c, 0xfe, 0xc8, +}; +static const unsigned char kat1975_retbits[] = { + 0xfa, 0x04, 0xd2, 0xd7, 0x2d, 0x5b, 0xd0, 0x4e, 0x6b, 0x6a, 0x58, 0x5f, + 0x84, 0x85, 0x47, 0xcd, 0x84, 0xcb, 0x18, 0x5f, 0x18, 0x82, 0x50, 0x5f, + 0xa8, 0xc5, 0xd4, 0xad, 0xd1, 0xc8, 0xf5, 0x47, 0x5e, 0x83, 0xe2, 0x56, + 0xd8, 0xd6, 0xe4, 0x15, 0x08, 0x3c, 0x06, 0x5f, 0x8b, 0x06, 0x44, 0x0f, + 0xa1, 0x47, 0x4e, 0xf4, 0xe8, 0x49, 0x69, 0x36, 0x3d, 0xbd, 0xb3, 0x96, + 0x45, 0x40, 0x73, 0x75, +}; +static const struct drbg_kat_pr_false kat1975_t = { + 9, kat1975_entropyin, kat1975_nonce, kat1975_persstr, + kat1975_entropyinreseed, kat1975_addinreseed, kat1975_addin0, + kat1975_addin1, kat1975_retbits +}; +static const struct drbg_kat kat1975 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1975_t +}; + +static const unsigned char kat1976_entropyin[] = { + 0x5a, 0xf6, 0xb6, 0x59, 0x08, 0xb5, 0x46, 0x1c, 0x07, 0xd4, 0x0e, 0xc4, + 0xc9, 0x8f, 0x7c, 0x26, 0x1c, 0x08, 0x2a, 0x4f, 0xb8, 0x5c, 0x1f, 0x04, + 0x0c, 0xf3, 0xc1, 0x8f, 0x78, 0x97, 0x96, 0x91, +}; +static const unsigned char kat1976_nonce[] = { + 0x55, 0xd3, 0x3b, 0x62, 0xb4, 0x25, 0xfa, 0x0e, 0x10, 0x9f, 0x24, 0x33, + 0x77, 0x7c, 0xd9, 0x37, +}; +static const unsigned char kat1976_persstr[] = { + 0x63, 0xa0, 0x58, 0xbd, 0x4c, 0x6c, 0x72, 0x69, 0x10, 0x61, 0xd2, 0x1a, + 0xc1, 0x69, 0xd2, 0xb3, 0x3d, 0x02, 0xdd, 0xc7, 0xb1, 0xde, 0x1c, 0x2c, + 0xa1, 0xe5, 0xf6, 0x10, 0xdc, 0x28, 0x76, 0x82, +}; +static const unsigned char kat1976_entropyinreseed[] = { + 0xb0, 0x78, 0xb3, 0xaf, 0x06, 0x8d, 0x7e, 0x13, 0x28, 0xed, 0x8f, 0x00, + 0xa0, 0xe4, 0x2a, 0x65, 0x8c, 0x29, 0x2a, 0x47, 0x50, 0x43, 0x99, 0x6b, + 0x10, 0xb7, 0x05, 0x6e, 0x1e, 0x49, 0x71, 0x02, +}; +static const unsigned char kat1976_addinreseed[] = { + 0x2a, 0x2a, 0xfe, 0x6e, 0x45, 0xf1, 0xf4, 0x8b, 0x7a, 0xb0, 0x43, 0x31, + 0x20, 0xb2, 0xb8, 0xa3, 0x7b, 0x79, 0xb2, 0xe6, 0xf2, 0xab, 0x92, 0x1f, + 0x12, 0xa5, 0xbc, 0xa9, 0xc6, 0x73, 0x64, 0xce, +}; +static const unsigned char kat1976_addin0[] = { + 0x07, 0x2f, 0x69, 0xd0, 0x0d, 0xff, 0x6f, 0x5a, 0xb5, 0x95, 0x0c, 0xc9, + 0x54, 0xdc, 0x36, 0x37, 0xbd, 0x68, 0x55, 0x5a, 0x18, 0x0b, 0x89, 0xf1, + 0xc5, 0x2a, 0x1d, 0x47, 0x20, 0x1c, 0x02, 0xf3, +}; +static const unsigned char kat1976_addin1[] = { + 0xf8, 0xd0, 0x6b, 0xdd, 0x54, 0x10, 0xfd, 0x66, 0x92, 0xda, 0x7e, 0x23, + 0xc6, 0x4b, 0x30, 0xd1, 0xde, 0x24, 0x0b, 0x34, 0x59, 0x18, 0x65, 0x3b, + 0x84, 0x5b, 0x2b, 0xf9, 0xea, 0xc1, 0x67, 0xbe, +}; +static const unsigned char kat1976_retbits[] = { + 0x8f, 0xeb, 0x4e, 0x9d, 0x8a, 0x89, 0x95, 0x00, 0x76, 0x3f, 0x24, 0xc5, + 0x7c, 0xa1, 0x05, 0x2a, 0x44, 0x03, 0xc2, 0xce, 0xaa, 0x17, 0x96, 0xbb, + 0xc1, 0xeb, 0x1e, 0x26, 0xe8, 0x7f, 0xbe, 0x05, 0x21, 0xe7, 0xa3, 0x4d, + 0x00, 0x5f, 0x9d, 0x1e, 0x5e, 0x2c, 0x97, 0x6a, 0xbe, 0x71, 0xac, 0xa8, + 0xbd, 0xfa, 0x43, 0x4e, 0x80, 0x30, 0x49, 0xb7, 0x59, 0xae, 0x71, 0x7c, + 0xac, 0x67, 0x72, 0x1a, +}; +static const struct drbg_kat_pr_false kat1976_t = { + 10, kat1976_entropyin, kat1976_nonce, kat1976_persstr, + kat1976_entropyinreseed, kat1976_addinreseed, kat1976_addin0, + kat1976_addin1, kat1976_retbits +}; +static const struct drbg_kat kat1976 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1976_t +}; + +static const unsigned char kat1977_entropyin[] = { + 0xf2, 0xe0, 0x47, 0x18, 0x70, 0xfe, 0x34, 0xf9, 0xb6, 0xb5, 0x9f, 0x92, + 0x9e, 0xc2, 0xc0, 0x92, 0x44, 0x9f, 0xa0, 0x87, 0x71, 0x88, 0x13, 0x11, + 0xc0, 0xe8, 0x1f, 0x7a, 0xf1, 0x37, 0x90, 0x5b, +}; +static const unsigned char kat1977_nonce[] = { + 0x34, 0x37, 0x45, 0x6d, 0xb3, 0x5a, 0x5b, 0xda, 0x24, 0xae, 0x47, 0xbf, + 0x87, 0xc5, 0xbe, 0x30, +}; +static const unsigned char kat1977_persstr[] = { + 0x1f, 0x8e, 0xd1, 0x6f, 0xa8, 0x6a, 0x24, 0x84, 0xa7, 0x2b, 0x35, 0xc1, + 0xf9, 0x70, 0x1a, 0xc6, 0x94, 0xab, 0xa0, 0x71, 0x88, 0xf6, 0x9a, 0x64, + 0x51, 0x82, 0xcd, 0xe4, 0x88, 0xca, 0x11, 0x38, +}; +static const unsigned char kat1977_entropyinreseed[] = { + 0x7e, 0xa6, 0xcc, 0x5c, 0xa1, 0x9b, 0x0e, 0xe8, 0xdf, 0x42, 0xa3, 0x01, + 0x01, 0x87, 0x1d, 0x35, 0xbb, 0xc0, 0xc3, 0xdf, 0xec, 0xd4, 0x78, 0x65, + 0x57, 0x15, 0x79, 0xb1, 0xa8, 0x96, 0x22, 0x82, +}; +static const unsigned char kat1977_addinreseed[] = { + 0xab, 0x49, 0x73, 0x3e, 0xe0, 0x6c, 0x08, 0xf8, 0x82, 0x7a, 0xd4, 0xf8, + 0x3b, 0x5b, 0x43, 0x8e, 0xc4, 0x43, 0xe1, 0x38, 0x90, 0x6c, 0xa6, 0x79, + 0x4c, 0xd8, 0x61, 0xc0, 0xc0, 0x28, 0x95, 0x1a, +}; +static const unsigned char kat1977_addin0[] = { + 0xf7, 0x8c, 0xc7, 0xe9, 0x0d, 0xcd, 0x9c, 0xa2, 0x80, 0x8b, 0x85, 0x94, + 0x6b, 0x68, 0x6f, 0x50, 0x21, 0xb8, 0x99, 0x41, 0x3b, 0x7e, 0x34, 0x4c, + 0x38, 0x57, 0xc0, 0x09, 0x13, 0x5b, 0x83, 0x2a, +}; +static const unsigned char kat1977_addin1[] = { + 0x3d, 0x8e, 0x21, 0xe4, 0x2c, 0x5c, 0x0e, 0xc9, 0x88, 0xc9, 0xd9, 0xc5, + 0x90, 0xc0, 0xff, 0xbe, 0x24, 0x70, 0x0a, 0xbe, 0xc7, 0xbb, 0xe9, 0x00, + 0x0f, 0x3b, 0x46, 0xae, 0xa7, 0x13, 0x2d, 0x2c, +}; +static const unsigned char kat1977_retbits[] = { + 0x80, 0x7e, 0x47, 0x3b, 0xbe, 0xec, 0x28, 0x8e, 0x1e, 0x7b, 0xf5, 0x80, + 0x3e, 0x56, 0xea, 0x91, 0xb8, 0xa7, 0x52, 0xf4, 0xc9, 0xe9, 0x69, 0x4d, + 0xfb, 0x86, 0x9a, 0x13, 0x34, 0x48, 0x73, 0xf3, 0x79, 0xc6, 0xb6, 0x85, + 0xe5, 0x82, 0x38, 0x5b, 0x69, 0x50, 0x52, 0x3c, 0x2e, 0x93, 0xc0, 0x33, + 0x5a, 0x9f, 0x84, 0x56, 0x67, 0xeb, 0x99, 0x0c, 0xcf, 0x0f, 0xfd, 0xe1, + 0x6f, 0x92, 0x99, 0x18, +}; +static const struct drbg_kat_pr_false kat1977_t = { + 11, kat1977_entropyin, kat1977_nonce, kat1977_persstr, + kat1977_entropyinreseed, kat1977_addinreseed, kat1977_addin0, + kat1977_addin1, kat1977_retbits +}; +static const struct drbg_kat kat1977 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1977_t +}; + +static const unsigned char kat1978_entropyin[] = { + 0x5b, 0xde, 0x92, 0xbb, 0xc8, 0x3a, 0x68, 0xe8, 0x2c, 0xef, 0x67, 0xcb, + 0x60, 0xd4, 0x7d, 0x93, 0x51, 0xc2, 0x33, 0xf3, 0xfc, 0x64, 0x60, 0xc8, + 0xfb, 0x61, 0xef, 0x55, 0x78, 0x82, 0xee, 0x26, +}; +static const unsigned char kat1978_nonce[] = { + 0xf5, 0xc0, 0x72, 0xc0, 0x5d, 0x07, 0x44, 0x60, 0x30, 0x5e, 0x89, 0xf8, + 0xce, 0xcb, 0x5b, 0x9c, +}; +static const unsigned char kat1978_persstr[] = { + 0xab, 0x1b, 0x19, 0x99, 0x78, 0xe5, 0x7f, 0x14, 0xb9, 0xe1, 0x9d, 0x81, + 0x63, 0x6b, 0xdd, 0xef, 0x53, 0xba, 0xe4, 0x2a, 0xa7, 0x8e, 0x96, 0xc7, + 0xb3, 0xf8, 0x57, 0x57, 0x8a, 0x4c, 0x6c, 0x3e, +}; +static const unsigned char kat1978_entropyinreseed[] = { + 0x50, 0xd9, 0x0c, 0xe4, 0x74, 0x12, 0xca, 0xb9, 0x8e, 0x42, 0x21, 0xef, + 0xa1, 0xac, 0x7c, 0xdb, 0x78, 0x8e, 0x03, 0x3f, 0xdd, 0xa4, 0xff, 0xcc, + 0x62, 0x72, 0xe1, 0xb8, 0x97, 0xcc, 0x44, 0x12, +}; +static const unsigned char kat1978_addinreseed[] = { + 0x46, 0x83, 0x9e, 0xc6, 0xc1, 0x03, 0xdf, 0x72, 0x2e, 0x85, 0x6e, 0x1a, + 0x10, 0x6b, 0xad, 0x55, 0xcd, 0x66, 0x01, 0xd1, 0x88, 0xd4, 0x10, 0x31, + 0xe1, 0x75, 0xda, 0x09, 0x7c, 0x01, 0x9a, 0x39, +}; +static const unsigned char kat1978_addin0[] = { + 0xc3, 0xa3, 0xef, 0xb6, 0x95, 0xb6, 0x82, 0x78, 0xc6, 0x35, 0x10, 0xe0, + 0x79, 0xd9, 0x74, 0x06, 0xd9, 0xf5, 0x73, 0xe2, 0x1d, 0x7b, 0x35, 0xdd, + 0x44, 0x6a, 0x14, 0xce, 0x68, 0xfa, 0x0d, 0xea, +}; +static const unsigned char kat1978_addin1[] = { + 0xb0, 0x42, 0x7c, 0x4f, 0x4d, 0x90, 0x85, 0x14, 0x41, 0x62, 0xbd, 0x6c, + 0x1d, 0xf9, 0x7c, 0x07, 0x44, 0x5f, 0xf2, 0xaf, 0xcb, 0x18, 0x67, 0x56, + 0xf3, 0x4c, 0x1f, 0x19, 0x24, 0xdd, 0x40, 0x3a, +}; +static const unsigned char kat1978_retbits[] = { + 0x23, 0x84, 0x35, 0xbf, 0xb2, 0x6f, 0x01, 0x4c, 0x76, 0x52, 0xb5, 0xe6, + 0x70, 0x88, 0x09, 0x43, 0x5c, 0xa0, 0x58, 0xf4, 0xf3, 0xb6, 0xa0, 0x30, + 0xed, 0x83, 0xaa, 0x41, 0x52, 0xb5, 0x2c, 0xe0, 0xbb, 0x03, 0xc0, 0xec, + 0x49, 0xfc, 0x03, 0x26, 0xcf, 0x5c, 0xab, 0xa2, 0x96, 0xb4, 0xc9, 0x18, + 0xb1, 0x8e, 0x0b, 0xdd, 0x89, 0xef, 0x33, 0x81, 0x79, 0xb7, 0x2b, 0x6c, + 0xc0, 0xad, 0x6d, 0xe8, +}; +static const struct drbg_kat_pr_false kat1978_t = { + 12, kat1978_entropyin, kat1978_nonce, kat1978_persstr, + kat1978_entropyinreseed, kat1978_addinreseed, kat1978_addin0, + kat1978_addin1, kat1978_retbits +}; +static const struct drbg_kat kat1978 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1978_t +}; + +static const unsigned char kat1979_entropyin[] = { + 0x48, 0x0b, 0xd3, 0x97, 0x3d, 0xc0, 0x4d, 0xfa, 0xac, 0x13, 0x40, 0x35, + 0xfa, 0x45, 0xf2, 0xbb, 0x92, 0x20, 0x0d, 0xf8, 0xec, 0x46, 0x8c, 0x23, + 0xc5, 0xb9, 0x54, 0xd0, 0x69, 0x3e, 0xea, 0x88, +}; +static const unsigned char kat1979_nonce[] = { + 0xd4, 0xf0, 0x13, 0xd5, 0x87, 0x73, 0xe7, 0x6e, 0xf5, 0x21, 0x97, 0xa6, + 0x8f, 0xba, 0x4a, 0x31, +}; +static const unsigned char kat1979_persstr[] = { + 0xd7, 0x04, 0xf9, 0xe2, 0xfc, 0x2b, 0x24, 0xa0, 0xbe, 0x98, 0xa6, 0xeb, + 0x44, 0x3a, 0x7f, 0x99, 0xcf, 0x8c, 0x1b, 0xaf, 0x62, 0x97, 0x0c, 0xcd, + 0x0f, 0x1e, 0x92, 0x9a, 0x8d, 0x2e, 0x47, 0x5b, +}; +static const unsigned char kat1979_entropyinreseed[] = { + 0x1d, 0xd9, 0x13, 0x9e, 0x18, 0xc3, 0xb8, 0xd5, 0x41, 0xff, 0x47, 0xa5, + 0x49, 0x5f, 0x13, 0xa7, 0x2a, 0x35, 0x34, 0xa9, 0xee, 0x4a, 0x12, 0x25, + 0x42, 0xee, 0x33, 0x06, 0x51, 0x28, 0xd5, 0x7b, +}; +static const unsigned char kat1979_addinreseed[] = { + 0x1b, 0x1d, 0xde, 0x5e, 0x70, 0x64, 0x89, 0x1a, 0xcd, 0x5c, 0xe8, 0x0e, + 0xb8, 0x72, 0x64, 0xa3, 0x91, 0x53, 0x40, 0xd2, 0x25, 0xbb, 0xda, 0x81, + 0xfa, 0x3d, 0x79, 0xcb, 0x25, 0x02, 0x7d, 0x0c, +}; +static const unsigned char kat1979_addin0[] = { + 0x71, 0x19, 0x22, 0x6c, 0xd5, 0xf2, 0xcf, 0x7a, 0x00, 0x74, 0x61, 0x49, + 0x33, 0x5c, 0x56, 0x7e, 0x88, 0x63, 0x4a, 0x0b, 0x82, 0x86, 0xfd, 0xdb, + 0xd1, 0x2a, 0xb7, 0x6c, 0x3f, 0x05, 0xe7, 0x7a, +}; +static const unsigned char kat1979_addin1[] = { + 0x2f, 0xf3, 0x83, 0x88, 0x24, 0xfb, 0x03, 0x20, 0xa8, 0x33, 0x23, 0x35, + 0x8b, 0x3a, 0x0b, 0x50, 0x1b, 0x06, 0x0f, 0x6e, 0xb1, 0x68, 0xd0, 0xdd, + 0x56, 0xee, 0xd4, 0x03, 0xf3, 0x61, 0xf3, 0x1b, +}; +static const unsigned char kat1979_retbits[] = { + 0x48, 0x02, 0xd4, 0xfa, 0x85, 0x47, 0x93, 0xf9, 0xef, 0xf0, 0x2f, 0xca, + 0x1d, 0x77, 0x68, 0x75, 0x98, 0x86, 0xcf, 0xaf, 0x80, 0x7e, 0x69, 0x43, + 0x18, 0x35, 0x2f, 0x84, 0x61, 0xf4, 0x78, 0xc4, 0xc9, 0x83, 0xa6, 0xf6, + 0x05, 0xa3, 0x21, 0x82, 0xb5, 0xbc, 0x01, 0x03, 0x46, 0x61, 0x4a, 0x5f, + 0xb2, 0xb8, 0x0c, 0xea, 0xd4, 0x7a, 0xc7, 0x54, 0x0a, 0x8f, 0x91, 0x3e, + 0x53, 0xd0, 0x54, 0xbb, +}; +static const struct drbg_kat_pr_false kat1979_t = { + 13, kat1979_entropyin, kat1979_nonce, kat1979_persstr, + kat1979_entropyinreseed, kat1979_addinreseed, kat1979_addin0, + kat1979_addin1, kat1979_retbits +}; +static const struct drbg_kat kat1979 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1979_t +}; + +static const unsigned char kat1980_entropyin[] = { + 0x7f, 0x72, 0x64, 0xa5, 0x7c, 0x98, 0x51, 0xcb, 0xc7, 0xd0, 0x17, 0x10, + 0x7e, 0x0e, 0xdb, 0xd5, 0x54, 0xae, 0xfd, 0x5a, 0x98, 0x48, 0x3e, 0xe7, + 0x6f, 0xa5, 0xef, 0x17, 0x74, 0x5e, 0xec, 0xb4, +}; +static const unsigned char kat1980_nonce[] = { + 0xe6, 0x24, 0xbe, 0x62, 0x8f, 0x27, 0x81, 0x7c, 0x18, 0x06, 0xad, 0x40, + 0x64, 0x0b, 0x57, 0x70, +}; +static const unsigned char kat1980_persstr[] = { + 0x8c, 0x76, 0x9b, 0x07, 0x24, 0xb3, 0x81, 0x3e, 0x71, 0x57, 0x3d, 0x50, + 0x66, 0x98, 0x89, 0x7d, 0x4d, 0xe7, 0xe6, 0xc9, 0x6c, 0x1f, 0xb3, 0xb1, + 0x03, 0xde, 0x29, 0xa0, 0x0b, 0x3d, 0x5f, 0x32, +}; +static const unsigned char kat1980_entropyinreseed[] = { + 0xf1, 0x3e, 0x8b, 0xc2, 0xc1, 0x9f, 0x0a, 0xb7, 0x39, 0x87, 0xce, 0x58, + 0x7c, 0x66, 0x64, 0x01, 0xe1, 0xc3, 0xd0, 0x1a, 0x76, 0xde, 0x66, 0x85, + 0xb7, 0x00, 0x63, 0x8f, 0x48, 0x60, 0xbb, 0x7d, +}; +static const unsigned char kat1980_addinreseed[] = { + 0x02, 0x92, 0x2d, 0x34, 0xeb, 0x86, 0x13, 0xd5, 0xc8, 0x80, 0x41, 0xf4, + 0x46, 0xb1, 0xb8, 0x76, 0xef, 0x53, 0x45, 0x45, 0xb8, 0x74, 0x8b, 0x8a, + 0x4c, 0xb8, 0xe1, 0x0c, 0x3d, 0x9a, 0x2a, 0xb9, +}; +static const unsigned char kat1980_addin0[] = { + 0xd6, 0xb7, 0x61, 0xc8, 0x35, 0x13, 0x40, 0x5c, 0x3b, 0x25, 0x14, 0x9d, + 0x47, 0x7b, 0x35, 0xb3, 0xcd, 0x9b, 0x28, 0x39, 0xdc, 0xaa, 0xa0, 0x71, + 0x74, 0xba, 0x94, 0x88, 0xf0, 0x0d, 0xdd, 0x89, +}; +static const unsigned char kat1980_addin1[] = { + 0x50, 0x88, 0x6c, 0x50, 0x3f, 0xd4, 0x86, 0x4c, 0xe3, 0x27, 0x10, 0xf8, + 0x3b, 0xd6, 0x75, 0xb6, 0x70, 0x37, 0xc4, 0x5e, 0x68, 0xca, 0x8e, 0x54, + 0x11, 0x66, 0xca, 0xee, 0x95, 0x79, 0x69, 0xa4, +}; +static const unsigned char kat1980_retbits[] = { + 0x5f, 0x07, 0x9f, 0xfb, 0xde, 0xca, 0x18, 0xda, 0x7b, 0x13, 0xcc, 0x71, + 0x0e, 0xbc, 0xd4, 0xae, 0xdf, 0x7f, 0x47, 0x5c, 0x2a, 0x7d, 0x96, 0x9b, + 0x4a, 0x1e, 0xff, 0x3a, 0x33, 0x48, 0xb5, 0x77, 0xcc, 0x2b, 0xa8, 0xd9, + 0x26, 0x11, 0x37, 0x09, 0x70, 0xc9, 0xbf, 0x02, 0x2d, 0xcf, 0x09, 0xdb, + 0xdb, 0xc0, 0xa4, 0x42, 0xa0, 0xac, 0xdf, 0xd3, 0x1a, 0xd9, 0x25, 0x7c, + 0x62, 0xce, 0xa1, 0xab, +}; +static const struct drbg_kat_pr_false kat1980_t = { + 14, kat1980_entropyin, kat1980_nonce, kat1980_persstr, + kat1980_entropyinreseed, kat1980_addinreseed, kat1980_addin0, + kat1980_addin1, kat1980_retbits +}; +static const struct drbg_kat kat1980 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat1980_t +}; + +static const unsigned char kat1981_entropyin[] = { + 0xa8, 0x9d, 0x08, 0x18, 0x5b, 0x53, 0x9a, 0x83, 0x0b, 0x1e, 0x9b, 0x74, + 0xc0, 0x1f, 0x59, 0xe2, 0xb7, 0x5b, 0xd2, 0xe2, 0xcb, 0xcf, 0x95, 0xc1, + 0x85, 0xa8, 0x3a, 0x80, 0x69, 0x43, 0x9e, 0x42, +}; +static const unsigned char kat1981_nonce[] = { + 0xc6, 0x75, 0xe3, 0xb6, 0x34, 0xb0, 0x75, 0xdb, 0x09, 0x78, 0x9e, 0x5d, + 0x8a, 0x39, 0xc5, 0xe8, +}; +static const unsigned char kat1981_persstr[] = {0}; +static const unsigned char kat1981_entropyinreseed[] = { + 0x0e, 0xd8, 0xe6, 0x3b, 0x82, 0x3a, 0xf5, 0x47, 0x6d, 0xcb, 0x97, 0x02, + 0xda, 0xf4, 0x61, 0x85, 0xd3, 0xf4, 0x95, 0x3d, 0xf7, 0x04, 0x74, 0x9d, + 0x3d, 0xea, 0x2f, 0xbe, 0x0c, 0x7a, 0x46, 0xdd, +}; +static const unsigned char kat1981_addinreseed[] = {0}; +static const unsigned char kat1981_addin0[] = {0}; +static const unsigned char kat1981_addin1[] = {0}; +static const unsigned char kat1981_retbits[] = { + 0x61, 0xf1, 0xfb, 0x64, 0xc0, 0x66, 0x87, 0x47, 0xd2, 0x70, 0xd4, 0xfa, + 0xb1, 0x7c, 0x34, 0xdb, 0x3a, 0x69, 0x82, 0x9e, 0xa0, 0x8f, 0xe4, 0x3e, + 0xc3, 0x59, 0xae, 0x17, 0x4f, 0xfb, 0x0c, 0xaa, 0xe8, 0xbc, 0xba, 0x3a, + 0x4f, 0xff, 0xb5, 0xb2, 0x9b, 0x90, 0x0f, 0x0e, 0x2e, 0xf2, 0x39, 0x4c, + 0x39, 0x29, 0x2b, 0xf2, 0x95, 0x62, 0x3f, 0x89, 0x46, 0x17, 0xce, 0x95, + 0x00, 0x22, 0x8b, 0xb4, +}; +static const struct drbg_kat_pr_false kat1981_t = { + 0, kat1981_entropyin, kat1981_nonce, kat1981_persstr, + kat1981_entropyinreseed, kat1981_addinreseed, kat1981_addin0, + kat1981_addin1, kat1981_retbits +}; +static const struct drbg_kat kat1981 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1981_t +}; + +static const unsigned char kat1982_entropyin[] = { + 0x00, 0xc3, 0x12, 0xcb, 0xa2, 0xec, 0x5d, 0x72, 0xf9, 0x54, 0x9e, 0x2a, + 0x14, 0x14, 0xc9, 0x73, 0xf4, 0xe9, 0xed, 0x70, 0x40, 0x79, 0x71, 0xf5, + 0x8c, 0xcb, 0xcc, 0x85, 0x72, 0x0f, 0x1f, 0xa5, +}; +static const unsigned char kat1982_nonce[] = { + 0x03, 0x1e, 0x82, 0xc6, 0x0b, 0xe9, 0x64, 0x98, 0x70, 0x5e, 0x6d, 0xab, + 0xf4, 0xc5, 0x50, 0xb7, +}; +static const unsigned char kat1982_persstr[] = {0}; +static const unsigned char kat1982_entropyinreseed[] = { + 0x08, 0x4b, 0x11, 0xec, 0xae, 0xfe, 0x51, 0xdb, 0xb7, 0xa2, 0x65, 0x1f, + 0x45, 0xb0, 0xe1, 0x81, 0x92, 0x8c, 0x65, 0xce, 0xc5, 0x75, 0xf7, 0x63, + 0x0d, 0xbf, 0x9f, 0x49, 0xc0, 0x84, 0xa5, 0x84, +}; +static const unsigned char kat1982_addinreseed[] = {0}; +static const unsigned char kat1982_addin0[] = {0}; +static const unsigned char kat1982_addin1[] = {0}; +static const unsigned char kat1982_retbits[] = { + 0xeb, 0x2c, 0x76, 0xed, 0x3e, 0x94, 0x67, 0xec, 0xf9, 0xfa, 0x64, 0x2b, + 0x87, 0x2c, 0xbd, 0xf3, 0x40, 0xa2, 0xe1, 0xf7, 0x11, 0x6f, 0x5b, 0xa5, + 0x9e, 0xcc, 0xef, 0x7b, 0xe8, 0x27, 0x65, 0x62, 0x0f, 0xa3, 0x50, 0x7a, + 0x3f, 0x87, 0x0b, 0xfc, 0x85, 0x74, 0x04, 0x1d, 0xbb, 0x9e, 0x7b, 0x8a, + 0x0d, 0xb6, 0x90, 0x6b, 0xde, 0xe0, 0xbc, 0x5d, 0xc1, 0x44, 0x92, 0x2d, + 0x67, 0x0c, 0xee, 0xd4, +}; +static const struct drbg_kat_pr_false kat1982_t = { + 1, kat1982_entropyin, kat1982_nonce, kat1982_persstr, + kat1982_entropyinreseed, kat1982_addinreseed, kat1982_addin0, + kat1982_addin1, kat1982_retbits +}; +static const struct drbg_kat kat1982 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1982_t +}; + +static const unsigned char kat1983_entropyin[] = { + 0x42, 0xcf, 0x0a, 0x3b, 0x9f, 0x08, 0x1f, 0x46, 0x94, 0x5c, 0x37, 0x82, + 0x2c, 0x4c, 0xfa, 0x65, 0xcb, 0x6f, 0xb6, 0x24, 0xfb, 0xc5, 0x6f, 0xd7, + 0x12, 0x0c, 0x15, 0x9f, 0xc5, 0x58, 0x52, 0x83, +}; +static const unsigned char kat1983_nonce[] = { + 0x96, 0xe4, 0xb7, 0xf6, 0x61, 0xf0, 0xe1, 0xaa, 0x7e, 0x35, 0x61, 0xd0, + 0x6b, 0xac, 0x14, 0x30, +}; +static const unsigned char kat1983_persstr[] = {0}; +static const unsigned char kat1983_entropyinreseed[] = { + 0x29, 0x3e, 0x30, 0x9d, 0xbc, 0x4b, 0x90, 0xf8, 0x05, 0xad, 0x2e, 0x7d, + 0xd4, 0x06, 0x29, 0x10, 0x02, 0xc2, 0x83, 0x84, 0xcb, 0x29, 0xbf, 0xc7, + 0x2c, 0x30, 0x5a, 0x93, 0xdb, 0x6c, 0x50, 0x2a, +}; +static const unsigned char kat1983_addinreseed[] = {0}; +static const unsigned char kat1983_addin0[] = {0}; +static const unsigned char kat1983_addin1[] = {0}; +static const unsigned char kat1983_retbits[] = { + 0x94, 0x85, 0x20, 0x8c, 0x00, 0x2e, 0x4e, 0x27, 0xf8, 0x0b, 0xdf, 0xed, + 0x3c, 0x1b, 0xf3, 0x27, 0xe3, 0xc0, 0xf4, 0xf0, 0x74, 0xfa, 0x8f, 0x60, + 0xee, 0xd4, 0x07, 0x52, 0xc2, 0x88, 0xc5, 0x39, 0x8a, 0x77, 0x64, 0x3d, + 0xd9, 0xa7, 0xed, 0x50, 0x81, 0x00, 0xb0, 0x47, 0xb8, 0x2d, 0x42, 0x9f, + 0x3b, 0x18, 0x06, 0xf0, 0x50, 0xe0, 0xad, 0x57, 0xf9, 0x71, 0x41, 0xbb, + 0x7a, 0x5d, 0x99, 0xc7, +}; +static const struct drbg_kat_pr_false kat1983_t = { + 2, kat1983_entropyin, kat1983_nonce, kat1983_persstr, + kat1983_entropyinreseed, kat1983_addinreseed, kat1983_addin0, + kat1983_addin1, kat1983_retbits +}; +static const struct drbg_kat kat1983 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1983_t +}; + +static const unsigned char kat1984_entropyin[] = { + 0x4d, 0x53, 0xcc, 0xa2, 0x56, 0x57, 0x79, 0xf6, 0xcf, 0x96, 0x23, 0x67, + 0xbb, 0x37, 0x93, 0xb0, 0xfc, 0xa3, 0xfe, 0xaf, 0xee, 0x09, 0xdf, 0xd7, + 0xd3, 0xb4, 0xd9, 0xbf, 0x0b, 0xa5, 0xaa, 0xfd, +}; +static const unsigned char kat1984_nonce[] = { + 0x9a, 0x51, 0x81, 0x4c, 0x35, 0x7e, 0xe8, 0x74, 0x41, 0xfe, 0x02, 0x77, + 0x60, 0x93, 0x10, 0x33, +}; +static const unsigned char kat1984_persstr[] = {0}; +static const unsigned char kat1984_entropyinreseed[] = { + 0xda, 0x0d, 0xe5, 0xa7, 0xa5, 0x4d, 0xc3, 0xa6, 0xc8, 0x74, 0xd8, 0xe5, + 0xb3, 0x1c, 0x7c, 0xd2, 0xc6, 0xd2, 0xb5, 0x83, 0x44, 0x32, 0x1e, 0xcf, + 0xb1, 0xf9, 0x8d, 0x42, 0x80, 0x7d, 0x64, 0x47, +}; +static const unsigned char kat1984_addinreseed[] = {0}; +static const unsigned char kat1984_addin0[] = {0}; +static const unsigned char kat1984_addin1[] = {0}; +static const unsigned char kat1984_retbits[] = { + 0x72, 0x74, 0xb2, 0x27, 0xd0, 0x24, 0x47, 0x5d, 0x52, 0x48, 0xcb, 0xf5, + 0x67, 0x91, 0xc9, 0xbe, 0xf9, 0x18, 0xe2, 0x5e, 0x28, 0x65, 0x9e, 0x6b, + 0xcc, 0x7d, 0x04, 0x50, 0xe9, 0xc2, 0x5b, 0x81, 0xc5, 0xb6, 0x44, 0x26, + 0x61, 0xd5, 0x9f, 0x97, 0x2e, 0xe9, 0x59, 0x45, 0x28, 0x97, 0x9a, 0x0d, + 0x92, 0xc1, 0x4d, 0xc9, 0x3f, 0x4a, 0xdd, 0xdb, 0x03, 0xea, 0x48, 0xb1, + 0x5d, 0xc6, 0x1c, 0xf3, +}; +static const struct drbg_kat_pr_false kat1984_t = { + 3, kat1984_entropyin, kat1984_nonce, kat1984_persstr, + kat1984_entropyinreseed, kat1984_addinreseed, kat1984_addin0, + kat1984_addin1, kat1984_retbits +}; +static const struct drbg_kat kat1984 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1984_t +}; + +static const unsigned char kat1985_entropyin[] = { + 0x15, 0x97, 0xc3, 0x5f, 0x95, 0xf9, 0x4f, 0x12, 0xbb, 0x94, 0xa1, 0xa4, + 0x7a, 0x06, 0x96, 0xf4, 0x68, 0xa8, 0x72, 0x5a, 0x67, 0x93, 0xd4, 0xd9, + 0x84, 0x8a, 0xa0, 0x6f, 0x2c, 0xa0, 0x86, 0x82, +}; +static const unsigned char kat1985_nonce[] = { + 0x44, 0xdd, 0x56, 0x83, 0x9e, 0xa1, 0x93, 0xe5, 0xa1, 0xfc, 0x34, 0xe9, + 0xc6, 0x11, 0x75, 0x6b, +}; +static const unsigned char kat1985_persstr[] = {0}; +static const unsigned char kat1985_entropyinreseed[] = { + 0xae, 0x7e, 0x17, 0x93, 0xdb, 0xfe, 0xc6, 0x08, 0x62, 0xc0, 0xbc, 0x91, + 0x29, 0x3d, 0x69, 0x22, 0x15, 0x93, 0x13, 0x08, 0x48, 0x10, 0xcc, 0x50, + 0x69, 0xb7, 0x5d, 0xf1, 0xcb, 0x87, 0x83, 0x2a, +}; +static const unsigned char kat1985_addinreseed[] = {0}; +static const unsigned char kat1985_addin0[] = {0}; +static const unsigned char kat1985_addin1[] = {0}; +static const unsigned char kat1985_retbits[] = { + 0x4f, 0x7c, 0xa3, 0x9c, 0x8e, 0x90, 0x6d, 0x12, 0x6f, 0xdc, 0xeb, 0xaa, + 0x89, 0xa2, 0x8c, 0xeb, 0x63, 0x8b, 0x3d, 0xd5, 0xb9, 0xa2, 0xaf, 0x0e, + 0x27, 0x08, 0xb4, 0xbc, 0x5f, 0xfb, 0x8c, 0x28, 0xeb, 0xa3, 0xd4, 0x2b, + 0x3b, 0xc7, 0x49, 0x8e, 0x4c, 0xd3, 0x71, 0x67, 0x20, 0x49, 0xdd, 0x9b, + 0x83, 0x47, 0x2e, 0x1e, 0x47, 0xb9, 0x8d, 0xf7, 0x7f, 0x15, 0xd1, 0x44, + 0xad, 0xa6, 0x78, 0x8d, +}; +static const struct drbg_kat_pr_false kat1985_t = { + 4, kat1985_entropyin, kat1985_nonce, kat1985_persstr, + kat1985_entropyinreseed, kat1985_addinreseed, kat1985_addin0, + kat1985_addin1, kat1985_retbits +}; +static const struct drbg_kat kat1985 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1985_t +}; + +static const unsigned char kat1986_entropyin[] = { + 0xb8, 0x7d, 0xaa, 0x16, 0x72, 0x94, 0xe2, 0x73, 0xea, 0xd3, 0x15, 0x09, + 0x28, 0xc7, 0x58, 0x3c, 0xf8, 0x08, 0xf3, 0x34, 0xad, 0xbe, 0x8c, 0x56, + 0xb1, 0x81, 0xfc, 0xf0, 0x32, 0x5d, 0x8f, 0xc5, +}; +static const unsigned char kat1986_nonce[] = { + 0x98, 0xc0, 0x39, 0xbc, 0x42, 0x18, 0xa3, 0xcd, 0x76, 0x3e, 0x40, 0xb7, + 0xb6, 0x5e, 0x8a, 0xa5, +}; +static const unsigned char kat1986_persstr[] = {0}; +static const unsigned char kat1986_entropyinreseed[] = { + 0x7c, 0xd8, 0x99, 0xb6, 0xd3, 0x76, 0x2f, 0xa4, 0xce, 0x27, 0x3b, 0x81, + 0x11, 0x4b, 0x08, 0x5d, 0x6f, 0x10, 0x8c, 0xec, 0xd0, 0x1e, 0x76, 0x06, + 0xb6, 0x40, 0x46, 0x80, 0x7e, 0x63, 0x44, 0xe6, +}; +static const unsigned char kat1986_addinreseed[] = {0}; +static const unsigned char kat1986_addin0[] = {0}; +static const unsigned char kat1986_addin1[] = {0}; +static const unsigned char kat1986_retbits[] = { + 0x68, 0xc3, 0xa6, 0x14, 0x38, 0xc0, 0x00, 0x96, 0xc1, 0x59, 0x17, 0xe7, + 0x94, 0x1f, 0xda, 0x04, 0x94, 0x5e, 0xc5, 0x49, 0x47, 0x91, 0x42, 0xe8, + 0x4c, 0x7f, 0x29, 0xa1, 0x47, 0x6c, 0x37, 0x20, 0x7c, 0xed, 0x72, 0xf8, + 0x60, 0x0c, 0x1c, 0x64, 0x61, 0x3c, 0x30, 0xa9, 0x16, 0x57, 0x81, 0xa2, + 0xd2, 0xef, 0x17, 0x60, 0x6c, 0xd5, 0xcd, 0xb6, 0xfe, 0x59, 0x0a, 0x2c, + 0xbf, 0x99, 0x22, 0x43, +}; +static const struct drbg_kat_pr_false kat1986_t = { + 5, kat1986_entropyin, kat1986_nonce, kat1986_persstr, + kat1986_entropyinreseed, kat1986_addinreseed, kat1986_addin0, + kat1986_addin1, kat1986_retbits +}; +static const struct drbg_kat kat1986 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1986_t +}; + +static const unsigned char kat1987_entropyin[] = { + 0x81, 0x61, 0xeb, 0x93, 0x5e, 0xa9, 0x0c, 0xcc, 0xec, 0xfc, 0xed, 0x72, + 0xa1, 0x0d, 0x41, 0xee, 0xbd, 0xc7, 0x5e, 0x5b, 0x1e, 0xcc, 0x1f, 0x0d, + 0x8a, 0x08, 0x32, 0x66, 0x35, 0xd0, 0x5f, 0x11, +}; +static const unsigned char kat1987_nonce[] = { + 0x1f, 0x9c, 0xda, 0xc6, 0xae, 0xc9, 0xe7, 0x42, 0x72, 0xf4, 0x0a, 0x52, + 0x87, 0x48, 0x89, 0x78, +}; +static const unsigned char kat1987_persstr[] = {0}; +static const unsigned char kat1987_entropyinreseed[] = { + 0xd1, 0x34, 0x14, 0xac, 0x42, 0x2e, 0x7c, 0x35, 0x97, 0x03, 0x06, 0x51, + 0x00, 0xd0, 0x6e, 0x64, 0xc7, 0x1d, 0xaa, 0x49, 0x98, 0xe6, 0x5b, 0xa4, + 0xca, 0x71, 0x70, 0xb3, 0x14, 0x18, 0x81, 0x5e, +}; +static const unsigned char kat1987_addinreseed[] = {0}; +static const unsigned char kat1987_addin0[] = {0}; +static const unsigned char kat1987_addin1[] = {0}; +static const unsigned char kat1987_retbits[] = { + 0x63, 0xa3, 0x1c, 0xdb, 0xcd, 0x3d, 0x10, 0xf9, 0xa3, 0x66, 0x7f, 0xd5, + 0x7a, 0x28, 0x1d, 0xf5, 0x23, 0xac, 0x6f, 0xdf, 0xdc, 0xa9, 0x3f, 0x3a, + 0xa5, 0x7b, 0x04, 0x71, 0x62, 0x24, 0x01, 0xe2, 0x03, 0xd5, 0xb0, 0xf2, + 0x84, 0x6e, 0x5e, 0xae, 0x9a, 0xd0, 0x1e, 0xf6, 0xec, 0x8c, 0x5b, 0x6c, + 0xb0, 0xaf, 0xa1, 0xbd, 0x24, 0x48, 0x06, 0xd0, 0x63, 0x0b, 0x1a, 0x23, + 0x42, 0xf3, 0x60, 0x54, +}; +static const struct drbg_kat_pr_false kat1987_t = { + 6, kat1987_entropyin, kat1987_nonce, kat1987_persstr, + kat1987_entropyinreseed, kat1987_addinreseed, kat1987_addin0, + kat1987_addin1, kat1987_retbits +}; +static const struct drbg_kat kat1987 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1987_t +}; + +static const unsigned char kat1988_entropyin[] = { + 0xb8, 0xfd, 0xe0, 0xb3, 0xbc, 0x46, 0x08, 0x47, 0x78, 0x29, 0xf2, 0x2e, + 0xf3, 0xec, 0x37, 0xe6, 0x65, 0xe6, 0xea, 0x75, 0x35, 0xfa, 0xdb, 0xbc, + 0x65, 0x91, 0xfc, 0xae, 0x02, 0x43, 0x1f, 0xeb, +}; +static const unsigned char kat1988_nonce[] = { + 0x20, 0xd5, 0x96, 0xab, 0x90, 0x2a, 0x88, 0x04, 0x76, 0x03, 0x24, 0x16, + 0xb2, 0xe8, 0x0c, 0x35, +}; +static const unsigned char kat1988_persstr[] = {0}; +static const unsigned char kat1988_entropyinreseed[] = { + 0x47, 0xfb, 0x33, 0x79, 0xe4, 0xf0, 0xd4, 0x6f, 0xe8, 0x2f, 0xaf, 0x1a, + 0xcf, 0xe0, 0x55, 0xa5, 0x7f, 0x63, 0xf9, 0x18, 0x70, 0xc1, 0x3f, 0xbe, + 0x16, 0xc4, 0x0d, 0xe4, 0x13, 0x68, 0x47, 0x7c, +}; +static const unsigned char kat1988_addinreseed[] = {0}; +static const unsigned char kat1988_addin0[] = {0}; +static const unsigned char kat1988_addin1[] = {0}; +static const unsigned char kat1988_retbits[] = { + 0xfb, 0x59, 0xea, 0xf7, 0xe2, 0x3b, 0x7d, 0xef, 0x45, 0x1f, 0x21, 0xa3, + 0xe1, 0xa7, 0xdc, 0x02, 0xa4, 0x8d, 0xfb, 0x29, 0x09, 0x33, 0x2a, 0xe9, + 0x49, 0xd7, 0x17, 0xd1, 0x26, 0x4f, 0x86, 0xe9, 0xcf, 0x9a, 0xc4, 0x76, + 0xa1, 0x56, 0x79, 0x25, 0x91, 0x74, 0xd4, 0xa7, 0x7b, 0x50, 0x52, 0x5e, + 0x03, 0x03, 0x45, 0xfb, 0x9b, 0x04, 0xa7, 0x10, 0x1e, 0xad, 0x5f, 0x8b, + 0xd7, 0x55, 0x74, 0x9c, +}; +static const struct drbg_kat_pr_false kat1988_t = { + 7, kat1988_entropyin, kat1988_nonce, kat1988_persstr, + kat1988_entropyinreseed, kat1988_addinreseed, kat1988_addin0, + kat1988_addin1, kat1988_retbits +}; +static const struct drbg_kat kat1988 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1988_t +}; + +static const unsigned char kat1989_entropyin[] = { + 0xb7, 0x72, 0xf6, 0x63, 0xad, 0x91, 0xc0, 0xf7, 0x2f, 0x83, 0x5b, 0xb0, + 0xcd, 0xc9, 0xab, 0x22, 0xa3, 0x90, 0xc0, 0x57, 0x50, 0x0d, 0x2c, 0xdc, + 0xdd, 0x0b, 0x29, 0xf9, 0xab, 0xcd, 0x01, 0xd7, +}; +static const unsigned char kat1989_nonce[] = { + 0x97, 0x31, 0x68, 0x1c, 0xf5, 0x60, 0xd6, 0x0c, 0x2b, 0x97, 0x86, 0xa6, + 0x61, 0x89, 0x95, 0xb9, +}; +static const unsigned char kat1989_persstr[] = {0}; +static const unsigned char kat1989_entropyinreseed[] = { + 0x2c, 0x93, 0xce, 0xbe, 0x26, 0x6c, 0x48, 0x91, 0x22, 0x0f, 0x49, 0x01, + 0x79, 0xb0, 0x40, 0xe4, 0x1d, 0x41, 0x74, 0x24, 0x8c, 0x90, 0x0f, 0x2d, + 0xd2, 0xbb, 0x32, 0xfb, 0xce, 0x04, 0x35, 0xc6, +}; +static const unsigned char kat1989_addinreseed[] = {0}; +static const unsigned char kat1989_addin0[] = {0}; +static const unsigned char kat1989_addin1[] = {0}; +static const unsigned char kat1989_retbits[] = { + 0xef, 0x87, 0xf8, 0x20, 0x56, 0x6c, 0xd8, 0x2b, 0x66, 0x4c, 0x3d, 0x40, + 0xa1, 0x18, 0x6a, 0xc8, 0x05, 0x13, 0x53, 0x5c, 0x3a, 0x2b, 0x6e, 0x25, + 0x8f, 0x6a, 0x76, 0x4d, 0xd7, 0xb2, 0x92, 0xa0, 0x17, 0xec, 0xbb, 0x9d, + 0x7b, 0xdf, 0x34, 0x09, 0x99, 0x8a, 0xe6, 0xb3, 0xbc, 0x31, 0xc1, 0xe4, + 0xd4, 0xeb, 0x87, 0x6b, 0x6b, 0x0c, 0x5c, 0xeb, 0x97, 0x04, 0xe9, 0x57, + 0x49, 0x35, 0x72, 0xc0, +}; +static const struct drbg_kat_pr_false kat1989_t = { + 8, kat1989_entropyin, kat1989_nonce, kat1989_persstr, + kat1989_entropyinreseed, kat1989_addinreseed, kat1989_addin0, + kat1989_addin1, kat1989_retbits +}; +static const struct drbg_kat kat1989 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1989_t +}; + +static const unsigned char kat1990_entropyin[] = { + 0x7e, 0x31, 0x3c, 0x2c, 0xab, 0x1c, 0x49, 0xea, 0x71, 0x41, 0x22, 0x36, + 0x05, 0x59, 0x88, 0xea, 0x95, 0x8a, 0x29, 0xf1, 0xc6, 0x6e, 0xad, 0x5d, + 0xaf, 0x91, 0xff, 0x47, 0xcc, 0x5e, 0x84, 0x36, +}; +static const unsigned char kat1990_nonce[] = { + 0xc2, 0xb8, 0x52, 0x0e, 0xfb, 0xa1, 0xca, 0x97, 0x85, 0xd1, 0x9e, 0xe0, + 0x58, 0xcf, 0x23, 0xe0, +}; +static const unsigned char kat1990_persstr[] = {0}; +static const unsigned char kat1990_entropyinreseed[] = { + 0x2a, 0x37, 0x51, 0x83, 0x42, 0x6c, 0x04, 0x4e, 0x84, 0xd7, 0x16, 0x3c, + 0x06, 0x74, 0xdf, 0x32, 0x48, 0x89, 0xc3, 0xbe, 0xa2, 0xba, 0xf0, 0x57, + 0xea, 0x93, 0xa4, 0x7e, 0xf7, 0x75, 0xa8, 0xbf, +}; +static const unsigned char kat1990_addinreseed[] = {0}; +static const unsigned char kat1990_addin0[] = {0}; +static const unsigned char kat1990_addin1[] = {0}; +static const unsigned char kat1990_retbits[] = { + 0x5e, 0x6c, 0xc2, 0x5c, 0xd2, 0xa2, 0x0b, 0x89, 0xa8, 0xfe, 0x89, 0x4f, + 0x2f, 0x1e, 0x72, 0x6b, 0x66, 0x54, 0x41, 0xf7, 0x3c, 0x6e, 0x45, 0xeb, + 0x41, 0xaf, 0x99, 0x01, 0xca, 0x6a, 0xe6, 0x2e, 0x63, 0xe0, 0x82, 0xef, + 0x49, 0xa1, 0xbd, 0xc9, 0xd1, 0x13, 0xe9, 0x9a, 0xbf, 0xf7, 0x48, 0x46, + 0x7a, 0xdd, 0x4c, 0x69, 0x05, 0xb8, 0x8c, 0x4d, 0x2c, 0x25, 0x86, 0x73, + 0x3f, 0x4b, 0x33, 0xdd, +}; +static const struct drbg_kat_pr_false kat1990_t = { + 9, kat1990_entropyin, kat1990_nonce, kat1990_persstr, + kat1990_entropyinreseed, kat1990_addinreseed, kat1990_addin0, + kat1990_addin1, kat1990_retbits +}; +static const struct drbg_kat kat1990 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1990_t +}; + +static const unsigned char kat1991_entropyin[] = { + 0xb2, 0x7e, 0x9c, 0x0f, 0xb4, 0x94, 0xc0, 0x9e, 0x2a, 0x96, 0x0a, 0x5f, + 0x03, 0x49, 0x1a, 0x46, 0x1c, 0xc3, 0x30, 0x4c, 0x92, 0xeb, 0xed, 0xe9, + 0xe3, 0xcc, 0xc7, 0x48, 0xf5, 0x02, 0xa8, 0xbb, +}; +static const unsigned char kat1991_nonce[] = { + 0xd0, 0xb6, 0xa2, 0x94, 0x0d, 0x43, 0x6f, 0x09, 0xe0, 0xe1, 0xbd, 0x90, + 0x3c, 0xc4, 0x46, 0x3d, +}; +static const unsigned char kat1991_persstr[] = {0}; +static const unsigned char kat1991_entropyinreseed[] = { + 0xf1, 0x0b, 0x94, 0x28, 0xd0, 0xd6, 0x00, 0x9c, 0x8a, 0x6d, 0xa2, 0x48, + 0x3a, 0x14, 0x72, 0x46, 0xe2, 0x02, 0x10, 0xa3, 0xae, 0x82, 0x78, 0x9e, + 0x9e, 0x32, 0xd3, 0xd8, 0xac, 0x5c, 0x4f, 0x87, +}; +static const unsigned char kat1991_addinreseed[] = {0}; +static const unsigned char kat1991_addin0[] = {0}; +static const unsigned char kat1991_addin1[] = {0}; +static const unsigned char kat1991_retbits[] = { + 0xd0, 0xb5, 0x94, 0x6a, 0x21, 0x55, 0x1d, 0x84, 0x08, 0xea, 0x54, 0xeb, + 0xcd, 0xe8, 0x93, 0xeb, 0xbb, 0xd5, 0xad, 0x9e, 0xaa, 0xbd, 0xdd, 0xd2, + 0xe7, 0x60, 0x1f, 0xce, 0xce, 0xc9, 0xa7, 0x93, 0x91, 0x82, 0xca, 0xdb, + 0xe2, 0xef, 0x7b, 0xa7, 0x0b, 0xee, 0x96, 0x6a, 0x22, 0x45, 0x45, 0x49, + 0xe9, 0xd5, 0xc1, 0x34, 0x44, 0xe4, 0x42, 0xad, 0xda, 0xd8, 0xba, 0x4e, + 0x55, 0xf5, 0xd7, 0x49, +}; +static const struct drbg_kat_pr_false kat1991_t = { + 10, kat1991_entropyin, kat1991_nonce, kat1991_persstr, + kat1991_entropyinreseed, kat1991_addinreseed, kat1991_addin0, + kat1991_addin1, kat1991_retbits +}; +static const struct drbg_kat kat1991 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1991_t +}; + +static const unsigned char kat1992_entropyin[] = { + 0x98, 0x75, 0xfe, 0xf6, 0xd8, 0xb0, 0x69, 0x91, 0x45, 0xce, 0x20, 0x38, + 0x7e, 0xd0, 0x9e, 0xcd, 0xfc, 0xba, 0x5d, 0xd9, 0xbd, 0xe9, 0x26, 0x7d, + 0xe3, 0xa5, 0x5e, 0x03, 0x8f, 0xc6, 0x4a, 0xc7, +}; +static const unsigned char kat1992_nonce[] = { + 0xf3, 0xe7, 0x44, 0xf4, 0x38, 0x71, 0x7b, 0x81, 0x2d, 0x02, 0xed, 0x45, + 0x96, 0x41, 0x0d, 0xdf, +}; +static const unsigned char kat1992_persstr[] = {0}; +static const unsigned char kat1992_entropyinreseed[] = { + 0xa6, 0xa1, 0x11, 0x5f, 0x2e, 0x8b, 0x8d, 0xf2, 0x1c, 0xad, 0x82, 0x0b, + 0xfc, 0x5f, 0xe3, 0x07, 0x7b, 0xdc, 0x6b, 0xf8, 0x8a, 0xbe, 0x07, 0xc5, + 0x2f, 0x1f, 0xbc, 0x4c, 0x35, 0x3c, 0x22, 0x37, +}; +static const unsigned char kat1992_addinreseed[] = {0}; +static const unsigned char kat1992_addin0[] = {0}; +static const unsigned char kat1992_addin1[] = {0}; +static const unsigned char kat1992_retbits[] = { + 0x89, 0x08, 0x93, 0x5d, 0xc5, 0x30, 0x28, 0x49, 0x84, 0xaa, 0x1c, 0x55, + 0xde, 0xf5, 0x6d, 0x7b, 0x07, 0xc7, 0x40, 0xaa, 0x1b, 0x20, 0x86, 0x46, + 0x18, 0x0f, 0x90, 0x80, 0xf9, 0xba, 0xc3, 0xce, 0xd4, 0xb9, 0xcc, 0xe3, + 0x0c, 0x4a, 0x82, 0x09, 0x84, 0xc6, 0x95, 0x91, 0xc9, 0x7d, 0xe7, 0x03, + 0xd0, 0x62, 0xdf, 0x19, 0xe2, 0x11, 0xdc, 0x20, 0x34, 0x06, 0xe1, 0x88, + 0xf2, 0x12, 0x2a, 0x65, +}; +static const struct drbg_kat_pr_false kat1992_t = { + 11, kat1992_entropyin, kat1992_nonce, kat1992_persstr, + kat1992_entropyinreseed, kat1992_addinreseed, kat1992_addin0, + kat1992_addin1, kat1992_retbits +}; +static const struct drbg_kat kat1992 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1992_t +}; + +static const unsigned char kat1993_entropyin[] = { + 0x1e, 0x8f, 0x79, 0xf3, 0x04, 0x16, 0xf8, 0x08, 0xec, 0x31, 0x7e, 0x40, + 0xb1, 0x5d, 0xcd, 0x93, 0x5e, 0x10, 0xe2, 0x91, 0x4b, 0x9d, 0x83, 0x41, + 0x3e, 0x21, 0x85, 0xd0, 0x09, 0x9f, 0xfe, 0xd6, +}; +static const unsigned char kat1993_nonce[] = { + 0x24, 0xb6, 0x75, 0x8f, 0x5e, 0x31, 0xb3, 0x25, 0xdc, 0x73, 0x6e, 0x6c, + 0xfb, 0x2c, 0x36, 0xe4, +}; +static const unsigned char kat1993_persstr[] = {0}; +static const unsigned char kat1993_entropyinreseed[] = { + 0x20, 0xd5, 0x9d, 0x0b, 0xbf, 0xf2, 0x2f, 0x2e, 0x99, 0x1a, 0x8b, 0x45, + 0xcd, 0xab, 0x52, 0x5d, 0xbc, 0xae, 0x36, 0x91, 0x91, 0x93, 0x23, 0x3c, + 0xa9, 0xb0, 0x8b, 0xf1, 0x0d, 0x41, 0xf6, 0xd1, +}; +static const unsigned char kat1993_addinreseed[] = {0}; +static const unsigned char kat1993_addin0[] = {0}; +static const unsigned char kat1993_addin1[] = {0}; +static const unsigned char kat1993_retbits[] = { + 0xce, 0xf2, 0x98, 0x71, 0x30, 0x6d, 0xa0, 0xaf, 0xa0, 0x0f, 0x6d, 0x63, + 0x43, 0x05, 0x7c, 0x2d, 0x89, 0x93, 0xeb, 0xe3, 0xe0, 0xab, 0xe0, 0xf5, + 0xa8, 0xca, 0xaf, 0xbd, 0x67, 0x2a, 0x63, 0x86, 0x2f, 0xe6, 0xba, 0xd6, + 0x94, 0x53, 0x12, 0x1a, 0xd8, 0xa7, 0x57, 0xea, 0x4e, 0x5c, 0x48, 0x2c, + 0xa1, 0x47, 0x29, 0xb6, 0xe2, 0xce, 0x01, 0xb3, 0x99, 0x6d, 0x4d, 0x34, + 0xa1, 0xd8, 0x32, 0xb1, +}; +static const struct drbg_kat_pr_false kat1993_t = { + 12, kat1993_entropyin, kat1993_nonce, kat1993_persstr, + kat1993_entropyinreseed, kat1993_addinreseed, kat1993_addin0, + kat1993_addin1, kat1993_retbits +}; +static const struct drbg_kat kat1993 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1993_t +}; + +static const unsigned char kat1994_entropyin[] = { + 0xaa, 0xdc, 0x2c, 0xce, 0x3a, 0xcf, 0x39, 0x8c, 0x8c, 0x11, 0xbf, 0x8e, + 0x20, 0x5d, 0x61, 0x57, 0xf9, 0x90, 0x3e, 0x8f, 0x19, 0x52, 0x46, 0xa7, + 0xbb, 0x81, 0x0a, 0xdf, 0xab, 0x0a, 0x76, 0x28, +}; +static const unsigned char kat1994_nonce[] = { + 0x8f, 0x66, 0xf8, 0x80, 0xd0, 0x79, 0x6f, 0x8e, 0xe5, 0x55, 0x45, 0xa2, + 0x26, 0x8c, 0x46, 0x52, +}; +static const unsigned char kat1994_persstr[] = {0}; +static const unsigned char kat1994_entropyinreseed[] = { + 0x25, 0x02, 0xca, 0x2a, 0xf9, 0x70, 0x79, 0xa3, 0x87, 0xdf, 0xdf, 0x25, + 0x47, 0x21, 0x7f, 0x84, 0xc3, 0x93, 0x2f, 0xcb, 0xa4, 0x91, 0x77, 0xc2, + 0xa9, 0x52, 0x81, 0xf3, 0xa2, 0x89, 0xe8, 0x3e, +}; +static const unsigned char kat1994_addinreseed[] = {0}; +static const unsigned char kat1994_addin0[] = {0}; +static const unsigned char kat1994_addin1[] = {0}; +static const unsigned char kat1994_retbits[] = { + 0xd5, 0x7d, 0xdd, 0xf8, 0x72, 0x43, 0xde, 0x2d, 0xb9, 0xa5, 0xba, 0xe4, + 0x95, 0xcc, 0x20, 0xeb, 0xe8, 0x19, 0xe6, 0xa4, 0x67, 0x46, 0x06, 0x19, + 0x9a, 0xaa, 0xb3, 0xb5, 0x59, 0x31, 0xc1, 0xbf, 0xa1, 0xd1, 0x33, 0x35, + 0x78, 0x15, 0xb3, 0x94, 0xff, 0x9e, 0x81, 0x0b, 0x83, 0x73, 0xda, 0xec, + 0xd8, 0x59, 0x26, 0x98, 0x71, 0xea, 0xf6, 0xf5, 0x6b, 0xe4, 0xa7, 0x43, + 0xb1, 0xc1, 0x99, 0x7a, +}; +static const struct drbg_kat_pr_false kat1994_t = { + 13, kat1994_entropyin, kat1994_nonce, kat1994_persstr, + kat1994_entropyinreseed, kat1994_addinreseed, kat1994_addin0, + kat1994_addin1, kat1994_retbits +}; +static const struct drbg_kat kat1994 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1994_t +}; + +static const unsigned char kat1995_entropyin[] = { + 0x4e, 0xeb, 0x68, 0x8f, 0x8a, 0xa8, 0x60, 0x04, 0x74, 0x96, 0x42, 0x16, + 0x17, 0x26, 0x6a, 0xbe, 0xe3, 0xee, 0xf3, 0xf8, 0x86, 0x82, 0xa7, 0x92, + 0x51, 0x11, 0x6b, 0xf7, 0x80, 0x16, 0xa8, 0xf1, +}; +static const unsigned char kat1995_nonce[] = { + 0xbc, 0x38, 0xd8, 0x3e, 0x89, 0x18, 0x15, 0x59, 0x7c, 0x40, 0x8b, 0x0a, + 0x50, 0xa2, 0x94, 0x8d, +}; +static const unsigned char kat1995_persstr[] = {0}; +static const unsigned char kat1995_entropyinreseed[] = { + 0xae, 0xe4, 0xa6, 0x65, 0x5f, 0x81, 0x74, 0x12, 0xf2, 0x7f, 0x4c, 0xa6, + 0x86, 0xf1, 0x47, 0x6f, 0xf3, 0x8b, 0xe0, 0x6a, 0xbc, 0x2d, 0xfa, 0xfe, + 0xd9, 0x50, 0xfd, 0x46, 0xdf, 0x03, 0x86, 0x5e, +}; +static const unsigned char kat1995_addinreseed[] = {0}; +static const unsigned char kat1995_addin0[] = {0}; +static const unsigned char kat1995_addin1[] = {0}; +static const unsigned char kat1995_retbits[] = { + 0x2d, 0xbe, 0xc5, 0x64, 0x8c, 0x60, 0x8d, 0xa2, 0xf1, 0x95, 0xf8, 0x6a, + 0x41, 0xd2, 0x6a, 0x98, 0x87, 0xa7, 0xf7, 0x5f, 0x38, 0xed, 0x8d, 0x5d, + 0xc5, 0x1b, 0x8c, 0xe6, 0x7e, 0xdb, 0x10, 0xe9, 0x68, 0xc1, 0xb0, 0x54, + 0xa7, 0x8d, 0x12, 0x98, 0xcc, 0x3e, 0x6d, 0x8a, 0xd3, 0x61, 0x08, 0x6a, + 0x0f, 0xee, 0x9d, 0x24, 0xcb, 0x36, 0xfc, 0x84, 0x34, 0xbb, 0xaa, 0x14, + 0x42, 0xe2, 0x82, 0x87, +}; +static const struct drbg_kat_pr_false kat1995_t = { + 14, kat1995_entropyin, kat1995_nonce, kat1995_persstr, + kat1995_entropyinreseed, kat1995_addinreseed, kat1995_addin0, + kat1995_addin1, kat1995_retbits +}; +static const struct drbg_kat kat1995 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat1995_t +}; + +static const unsigned char kat1996_entropyin[] = { + 0x44, 0xa6, 0x90, 0xd5, 0x90, 0xf4, 0x43, 0xbc, 0xa7, 0xab, 0xe4, 0xc2, + 0x0c, 0x70, 0xdd, 0xb0, 0xdf, 0x0e, 0xe2, 0x9e, 0xd2, 0x3e, 0xdf, 0xc1, + 0xcb, 0xe9, 0x23, 0xae, 0x7a, 0x4e, 0xb6, 0xc7, +}; +static const unsigned char kat1996_nonce[] = { + 0x33, 0x4f, 0xc3, 0x55, 0xf9, 0xf0, 0x74, 0x59, 0xd8, 0xf0, 0x14, 0xeb, + 0xde, 0x24, 0xbc, 0xb6, +}; +static const unsigned char kat1996_persstr[] = {0}; +static const unsigned char kat1996_entropyinreseed[] = { + 0x1b, 0xb4, 0x9e, 0x9b, 0xad, 0x9f, 0xc9, 0x4d, 0x36, 0x3d, 0xf0, 0x1c, + 0x02, 0x38, 0x8a, 0xf3, 0x91, 0xf4, 0x56, 0x4a, 0xbd, 0x8c, 0xce, 0x10, + 0x29, 0x88, 0x75, 0xd2, 0x93, 0x4d, 0xf8, 0x91, +}; +static const unsigned char kat1996_addinreseed[] = { + 0x00, 0x92, 0xb9, 0x9e, 0xfa, 0x09, 0xa6, 0xb3, 0x0b, 0xb6, 0xf0, 0xd9, + 0xfd, 0x5f, 0xde, 0xd4, 0x90, 0xe7, 0x45, 0xc4, 0xbe, 0x3f, 0xa5, 0x61, + 0x5b, 0x31, 0x84, 0x44, 0xb5, 0x59, 0x3d, 0xb5, +}; +static const unsigned char kat1996_addin0[] = { + 0xf5, 0xf6, 0x98, 0xf0, 0xdd, 0x17, 0x1c, 0x38, 0xd2, 0x4a, 0x5b, 0xb3, + 0xc5, 0xbf, 0x61, 0x15, 0xbf, 0x1a, 0xf2, 0x3c, 0x38, 0x51, 0x72, 0x92, + 0xe9, 0x4d, 0xd7, 0xf5, 0x76, 0x59, 0x7d, 0xb5, +}; +static const unsigned char kat1996_addin1[] = { + 0x2d, 0xa7, 0x19, 0xaa, 0x44, 0xa9, 0x69, 0x10, 0xe7, 0x3f, 0xcf, 0x27, + 0xe4, 0x6d, 0x8d, 0xbb, 0x1c, 0x7b, 0x5d, 0x82, 0xf5, 0x71, 0x3a, 0x29, + 0x80, 0xaa, 0xda, 0x6c, 0xf2, 0xa4, 0x51, 0x04, +}; +static const unsigned char kat1996_retbits[] = { + 0x27, 0xa2, 0xfb, 0x77, 0x04, 0xa7, 0x14, 0xe2, 0x07, 0xfd, 0x31, 0xa7, + 0x96, 0xc4, 0xc0, 0x53, 0xb0, 0x35, 0x5a, 0x15, 0x99, 0xd4, 0x7d, 0x20, + 0x1b, 0x1b, 0x5b, 0xb3, 0x7f, 0x79, 0xcf, 0x32, 0xf9, 0x28, 0x9b, 0xd2, + 0x63, 0xac, 0x6b, 0xdd, 0x8e, 0x83, 0xcc, 0x45, 0x1b, 0x3a, 0x3b, 0xaa, + 0x8f, 0x27, 0xcf, 0x3b, 0x5b, 0xa6, 0xa9, 0xa4, 0xa7, 0xd2, 0xd6, 0xae, + 0x60, 0x7d, 0xbc, 0x22, +}; +static const struct drbg_kat_pr_false kat1996_t = { + 0, kat1996_entropyin, kat1996_nonce, kat1996_persstr, + kat1996_entropyinreseed, kat1996_addinreseed, kat1996_addin0, + kat1996_addin1, kat1996_retbits +}; +static const struct drbg_kat kat1996 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1996_t +}; + +static const unsigned char kat1997_entropyin[] = { + 0x64, 0x9d, 0xb3, 0xcd, 0x39, 0x89, 0xa3, 0xb6, 0xc7, 0x73, 0xd7, 0x2b, + 0x16, 0x72, 0x3d, 0xe9, 0x03, 0xac, 0x45, 0x76, 0x40, 0xf2, 0xa9, 0x70, + 0xb9, 0xfc, 0xe2, 0xf5, 0xbf, 0x24, 0xa1, 0xf2, +}; +static const unsigned char kat1997_nonce[] = { + 0x02, 0x83, 0xf0, 0xdb, 0x14, 0xbd, 0x72, 0x9f, 0x96, 0x84, 0x2e, 0x35, + 0xba, 0xa9, 0xc8, 0x2f, +}; +static const unsigned char kat1997_persstr[] = {0}; +static const unsigned char kat1997_entropyinreseed[] = { + 0x42, 0x2a, 0xb5, 0x36, 0x72, 0xd6, 0x7d, 0x4e, 0xc1, 0x9d, 0xe8, 0xd0, + 0xa1, 0x89, 0xf8, 0x10, 0x0e, 0x77, 0xde, 0x8f, 0x79, 0xd9, 0x52, 0x8e, + 0xe5, 0xad, 0xcc, 0x4f, 0xfd, 0xb4, 0x9a, 0x9a, +}; +static const unsigned char kat1997_addinreseed[] = { + 0x56, 0xb5, 0x27, 0xe7, 0x8f, 0x33, 0xe2, 0xba, 0x91, 0xa6, 0xf5, 0x49, + 0x11, 0x57, 0x6e, 0xb9, 0xdc, 0x15, 0xb9, 0xda, 0x40, 0x7c, 0x28, 0xc8, + 0x13, 0x1d, 0x7a, 0x5f, 0x33, 0xef, 0x6f, 0xd8, +}; +static const unsigned char kat1997_addin0[] = { + 0x7d, 0x58, 0x38, 0xfc, 0x84, 0xcf, 0xce, 0xf3, 0xbd, 0x11, 0xd2, 0x7f, + 0x3d, 0x8c, 0x79, 0x15, 0x03, 0xad, 0xd8, 0x38, 0xdf, 0xe6, 0x95, 0xc9, + 0x48, 0x9a, 0x5b, 0x3c, 0x9c, 0xcd, 0x32, 0x7a, +}; +static const unsigned char kat1997_addin1[] = { + 0x19, 0x9b, 0x51, 0x64, 0xbf, 0xcb, 0x0e, 0x91, 0x58, 0xa1, 0x9a, 0x2f, + 0xdf, 0xce, 0xdc, 0x8f, 0x00, 0xc3, 0x9b, 0x97, 0x04, 0x24, 0x62, 0x53, + 0x69, 0x7c, 0x8e, 0xe0, 0x1f, 0xc0, 0x8e, 0x2c, +}; +static const unsigned char kat1997_retbits[] = { + 0x82, 0x27, 0xed, 0xc6, 0x0f, 0x95, 0xc7, 0x89, 0xeb, 0x19, 0x00, 0x82, + 0x19, 0x9b, 0x1a, 0xd4, 0x30, 0xbb, 0x8a, 0x83, 0xf1, 0xc4, 0x09, 0x12, + 0xfd, 0xf7, 0x3c, 0xa9, 0x97, 0x9a, 0x2b, 0x52, 0xdf, 0x52, 0xb5, 0xe6, + 0x52, 0x1c, 0x86, 0xa7, 0x9d, 0x68, 0x1e, 0x01, 0x05, 0xa1, 0x1b, 0x48, + 0x5a, 0x47, 0x4d, 0x09, 0xff, 0x77, 0x4e, 0x57, 0x30, 0xdf, 0x10, 0xc7, + 0x44, 0x19, 0x8e, 0x15, +}; +static const struct drbg_kat_pr_false kat1997_t = { + 1, kat1997_entropyin, kat1997_nonce, kat1997_persstr, + kat1997_entropyinreseed, kat1997_addinreseed, kat1997_addin0, + kat1997_addin1, kat1997_retbits +}; +static const struct drbg_kat kat1997 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1997_t +}; + +static const unsigned char kat1998_entropyin[] = { + 0x3e, 0x7d, 0x7c, 0x87, 0x97, 0xdc, 0x01, 0x64, 0xfc, 0x3a, 0xdb, 0x59, + 0x5b, 0xad, 0xd0, 0xd8, 0xeb, 0x26, 0xf3, 0xa8, 0x28, 0x79, 0xe5, 0x4a, + 0x10, 0x46, 0xaf, 0x14, 0x0b, 0xe7, 0x37, 0xb4, +}; +static const unsigned char kat1998_nonce[] = { + 0x62, 0x99, 0x3d, 0xd2, 0xfc, 0x88, 0xcc, 0xaa, 0x24, 0x38, 0xe2, 0x14, + 0x83, 0xab, 0xa2, 0x44, +}; +static const unsigned char kat1998_persstr[] = {0}; +static const unsigned char kat1998_entropyinreseed[] = { + 0xc7, 0x31, 0x1f, 0x9f, 0x1e, 0x1b, 0x61, 0x89, 0xfa, 0x05, 0x10, 0xec, + 0x96, 0x93, 0xb8, 0xf5, 0xde, 0x6c, 0x2a, 0xb9, 0x00, 0xc9, 0x3f, 0xb0, + 0xe3, 0x8e, 0xb0, 0x9e, 0x83, 0x13, 0x5d, 0x22, +}; +static const unsigned char kat1998_addinreseed[] = { + 0x7d, 0x0d, 0xda, 0xce, 0xd9, 0x21, 0xbd, 0x01, 0x87, 0xa2, 0xb5, 0x86, + 0x69, 0xe4, 0x6e, 0x07, 0x2c, 0xd0, 0x15, 0x1c, 0x90, 0x51, 0x3d, 0xc8, + 0x1c, 0xff, 0x20, 0x6e, 0xa4, 0xb1, 0xf3, 0xd9, +}; +static const unsigned char kat1998_addin0[] = { + 0xb0, 0x00, 0x10, 0x7d, 0x1a, 0x93, 0xc5, 0xbd, 0xbb, 0x48, 0x6a, 0x4b, + 0x7e, 0xdc, 0x5f, 0xbd, 0xec, 0x1e, 0xc1, 0xab, 0xd7, 0x1f, 0xcd, 0xc6, + 0xb2, 0x48, 0x33, 0x32, 0x07, 0x42, 0x27, 0x79, +}; +static const unsigned char kat1998_addin1[] = { + 0xfb, 0xf8, 0xac, 0x5f, 0x68, 0x9b, 0xbd, 0xb3, 0x6c, 0x9c, 0xf4, 0xff, + 0xc8, 0x84, 0xe3, 0x2a, 0xf9, 0xa6, 0x00, 0xca, 0x79, 0x28, 0xf8, 0x7c, + 0xa3, 0x22, 0x40, 0xbf, 0xbd, 0x9c, 0x89, 0xdd, +}; +static const unsigned char kat1998_retbits[] = { + 0x4d, 0xc2, 0x2e, 0xa7, 0x2e, 0xbe, 0x04, 0xfe, 0x6e, 0x0b, 0xbb, 0xc4, + 0x85, 0xa2, 0x1d, 0x24, 0x96, 0x49, 0x98, 0xb8, 0x94, 0x8e, 0x5d, 0x08, + 0xf1, 0x58, 0x57, 0xc6, 0x0e, 0x7e, 0x25, 0x42, 0x8a, 0xcc, 0xf2, 0x4d, + 0xac, 0xec, 0x40, 0xad, 0x7d, 0x7d, 0x39, 0xb3, 0x4d, 0x21, 0x53, 0xdd, + 0x95, 0xf4, 0xe6, 0xb7, 0x2d, 0x2d, 0x35, 0xd1, 0xd9, 0x5e, 0xf6, 0xd0, + 0x99, 0x88, 0x6e, 0x4c, +}; +static const struct drbg_kat_pr_false kat1998_t = { + 2, kat1998_entropyin, kat1998_nonce, kat1998_persstr, + kat1998_entropyinreseed, kat1998_addinreseed, kat1998_addin0, + kat1998_addin1, kat1998_retbits +}; +static const struct drbg_kat kat1998 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1998_t +}; + +static const unsigned char kat1999_entropyin[] = { + 0xc7, 0x63, 0x39, 0xf1, 0xe0, 0x9b, 0xa2, 0xe8, 0xa4, 0x7b, 0xe1, 0xbe, + 0xf7, 0xba, 0xb4, 0x9a, 0x22, 0x2b, 0xa9, 0xa1, 0xc8, 0x49, 0x2e, 0x71, + 0x64, 0xab, 0x36, 0xeb, 0xce, 0xa7, 0xea, 0x5d, +}; +static const unsigned char kat1999_nonce[] = { + 0xd4, 0x65, 0x73, 0x33, 0xca, 0x9f, 0xba, 0x1e, 0xd3, 0x31, 0x64, 0xd8, + 0xb3, 0xbb, 0xe4, 0xd7, +}; +static const unsigned char kat1999_persstr[] = {0}; +static const unsigned char kat1999_entropyinreseed[] = { + 0x64, 0xc2, 0x5b, 0x2f, 0xd3, 0x3d, 0xdc, 0x3e, 0xc6, 0x5e, 0x84, 0xc1, + 0xac, 0x14, 0xc9, 0xd3, 0xe8, 0x64, 0x5c, 0xd1, 0xf5, 0xfe, 0x85, 0x22, + 0x2c, 0x5b, 0xfb, 0x8c, 0x59, 0x01, 0xa2, 0x47, +}; +static const unsigned char kat1999_addinreseed[] = { + 0xfc, 0xa6, 0x00, 0x41, 0x1f, 0xd3, 0xfb, 0xa5, 0x54, 0xad, 0xa7, 0x6f, + 0x90, 0x97, 0x2f, 0x81, 0x8a, 0xcd, 0x57, 0x43, 0x1a, 0x48, 0xd8, 0x10, + 0x00, 0xf1, 0xde, 0xa2, 0xe2, 0x83, 0x00, 0x02, +}; +static const unsigned char kat1999_addin0[] = { + 0xac, 0x98, 0xcf, 0x17, 0x06, 0x4b, 0x93, 0x3c, 0xb5, 0xd7, 0x18, 0x21, + 0x30, 0xf1, 0x0b, 0x0f, 0x72, 0x11, 0x7f, 0xcd, 0x2c, 0x91, 0x4c, 0x0d, + 0xbd, 0x46, 0x1d, 0xdb, 0x7e, 0xc1, 0xa1, 0xd0, +}; +static const unsigned char kat1999_addin1[] = { + 0xe8, 0x22, 0x10, 0x9e, 0x3b, 0xaa, 0x54, 0xa0, 0xbf, 0xb5, 0x4b, 0x9a, + 0x52, 0xaa, 0x7c, 0x94, 0x5c, 0xdc, 0x48, 0xb4, 0x1d, 0x1a, 0x5e, 0x54, + 0x4f, 0xbc, 0xea, 0xc1, 0x14, 0x7a, 0x36, 0xca, +}; +static const unsigned char kat1999_retbits[] = { + 0xb4, 0x8b, 0x4c, 0x1d, 0x9d, 0xb0, 0x71, 0xc7, 0xdf, 0x5e, 0xd9, 0xf7, + 0x8f, 0x48, 0xff, 0xb3, 0x76, 0xc3, 0x92, 0xc5, 0x1d, 0x2d, 0x0e, 0x76, + 0x42, 0x47, 0xb7, 0x94, 0xa7, 0x62, 0xd0, 0x85, 0x74, 0x31, 0x1b, 0xc3, + 0xe6, 0x1c, 0x84, 0xc8, 0x12, 0xd8, 0x3f, 0x5a, 0xb1, 0x7a, 0x2b, 0x47, + 0x46, 0x7f, 0x84, 0xc0, 0xa4, 0xd4, 0xe8, 0x5a, 0xb9, 0x90, 0x98, 0x9c, + 0x56, 0x1a, 0xa2, 0x0c, +}; +static const struct drbg_kat_pr_false kat1999_t = { + 3, kat1999_entropyin, kat1999_nonce, kat1999_persstr, + kat1999_entropyinreseed, kat1999_addinreseed, kat1999_addin0, + kat1999_addin1, kat1999_retbits +}; +static const struct drbg_kat kat1999 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat1999_t +}; + +static const unsigned char kat2000_entropyin[] = { + 0x10, 0x12, 0x60, 0x1e, 0x13, 0x60, 0x24, 0x7c, 0x8f, 0xc2, 0x48, 0xcb, + 0x1d, 0x6b, 0x76, 0x1e, 0x78, 0xe6, 0x23, 0xcd, 0xfe, 0x85, 0x79, 0x39, + 0xdb, 0x98, 0xb4, 0xc1, 0x57, 0xb7, 0x3d, 0xad, +}; +static const unsigned char kat2000_nonce[] = { + 0x0d, 0x6f, 0xcf, 0x7c, 0x63, 0xc2, 0x0a, 0x41, 0xdd, 0xdf, 0xf5, 0xe0, + 0x01, 0xad, 0x0d, 0xe3, +}; +static const unsigned char kat2000_persstr[] = {0}; +static const unsigned char kat2000_entropyinreseed[] = { + 0x08, 0x91, 0x20, 0xc4, 0x78, 0xd3, 0x34, 0xb3, 0x97, 0xcb, 0xaf, 0xa7, + 0xad, 0x1c, 0xf2, 0xa9, 0xb3, 0xaa, 0xfb, 0x65, 0xb7, 0x9b, 0x0e, 0x0a, + 0xd1, 0xc4, 0xd8, 0x62, 0x72, 0xf0, 0xc2, 0x96, +}; +static const unsigned char kat2000_addinreseed[] = { + 0xd2, 0xed, 0x4c, 0xf9, 0x0d, 0x3f, 0xb8, 0xa0, 0x7c, 0x96, 0x52, 0x2e, + 0xff, 0x6f, 0xda, 0x6b, 0xe4, 0x51, 0x11, 0x50, 0xfa, 0x8b, 0xf3, 0x27, + 0xe4, 0x3c, 0x85, 0x98, 0x61, 0xab, 0xcb, 0x02, +}; +static const unsigned char kat2000_addin0[] = { + 0x95, 0x22, 0x0e, 0x36, 0x78, 0x95, 0x98, 0x5f, 0xa9, 0xa5, 0xa0, 0xba, + 0x2b, 0x10, 0x84, 0xae, 0x96, 0xca, 0x37, 0xbd, 0x7b, 0x90, 0x97, 0x6e, + 0x63, 0x6d, 0xaf, 0xe5, 0x99, 0x93, 0xc4, 0xf9, +}; +static const unsigned char kat2000_addin1[] = { + 0xcc, 0xb2, 0xbf, 0x64, 0xa7, 0xe7, 0x06, 0xa8, 0xa7, 0xc8, 0x6d, 0x30, + 0xd7, 0x2f, 0x89, 0xa7, 0xa8, 0x7c, 0xb9, 0x85, 0x69, 0x24, 0x2a, 0x72, + 0xa1, 0xd3, 0x28, 0x58, 0x77, 0x23, 0x80, 0x37, +}; +static const unsigned char kat2000_retbits[] = { + 0x6e, 0x25, 0x10, 0x47, 0xfd, 0x4f, 0x9d, 0x10, 0x44, 0xde, 0x50, 0xd5, + 0xf3, 0xda, 0x3a, 0x9d, 0xe2, 0x75, 0x60, 0xf2, 0xc2, 0xef, 0xbb, 0xfa, + 0xaa, 0xef, 0x1a, 0x03, 0x06, 0x08, 0x75, 0x69, 0xf5, 0xa8, 0x2d, 0x8b, + 0xde, 0x09, 0x4c, 0x0c, 0x45, 0x1b, 0x5e, 0x52, 0x38, 0x11, 0x14, 0x93, + 0xd5, 0xee, 0x6e, 0xa6, 0x5e, 0x7d, 0x39, 0x97, 0x7b, 0xed, 0x45, 0xdd, + 0xb7, 0xf0, 0xea, 0xf8, +}; +static const struct drbg_kat_pr_false kat2000_t = { + 4, kat2000_entropyin, kat2000_nonce, kat2000_persstr, + kat2000_entropyinreseed, kat2000_addinreseed, kat2000_addin0, + kat2000_addin1, kat2000_retbits +}; +static const struct drbg_kat kat2000 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2000_t +}; + +static const unsigned char kat2001_entropyin[] = { + 0x8a, 0xce, 0xcd, 0x89, 0x86, 0xca, 0xee, 0xdd, 0xcd, 0xa8, 0xb7, 0xe1, + 0x8b, 0xa2, 0x84, 0x44, 0x05, 0x57, 0xf8, 0xd4, 0xeb, 0x74, 0x19, 0x30, + 0xd9, 0xc9, 0x64, 0xc6, 0x28, 0xa5, 0xb0, 0x27, +}; +static const unsigned char kat2001_nonce[] = { + 0xb3, 0xbc, 0x9f, 0x79, 0x3d, 0x6a, 0x8b, 0xd3, 0xc6, 0x7d, 0x98, 0x6e, + 0x7d, 0xb3, 0x34, 0x9d, +}; +static const unsigned char kat2001_persstr[] = {0}; +static const unsigned char kat2001_entropyinreseed[] = { + 0x1b, 0x7f, 0x8a, 0xf0, 0x0c, 0x7d, 0xc7, 0xbc, 0x89, 0xc2, 0x52, 0x25, + 0xb1, 0x57, 0x36, 0x5a, 0x66, 0xc0, 0x1d, 0x51, 0x59, 0x69, 0x1d, 0x66, + 0xe4, 0x79, 0xfa, 0x9e, 0x6c, 0x16, 0x46, 0x79, +}; +static const unsigned char kat2001_addinreseed[] = { + 0xec, 0x9a, 0x53, 0xbd, 0xb4, 0xb5, 0x14, 0x40, 0x9b, 0xa1, 0xa4, 0xa1, + 0x41, 0x5e, 0x84, 0xda, 0x62, 0x23, 0x19, 0x7a, 0x97, 0xc2, 0xf9, 0xd8, + 0x9a, 0x9c, 0xd0, 0x27, 0xba, 0xe6, 0x7a, 0x93, +}; +static const unsigned char kat2001_addin0[] = { + 0x87, 0xb9, 0x6a, 0xeb, 0x33, 0xf6, 0x15, 0xbc, 0x91, 0xba, 0xf8, 0xb0, + 0x9f, 0xbb, 0x17, 0x9c, 0xd3, 0x36, 0x42, 0x4f, 0x4b, 0x5e, 0x63, 0x71, + 0xdf, 0x55, 0xbe, 0x66, 0x87, 0xf9, 0x4b, 0x1e, +}; +static const unsigned char kat2001_addin1[] = { + 0xf3, 0x62, 0x2d, 0xe5, 0xdd, 0x40, 0x97, 0xa0, 0xdb, 0xc7, 0x1b, 0xc7, + 0xac, 0x01, 0xcf, 0x70, 0xd8, 0x83, 0x7e, 0xc2, 0x96, 0xcb, 0x84, 0x4c, + 0x7a, 0x66, 0x20, 0x68, 0x85, 0xc7, 0x1e, 0x80, +}; +static const unsigned char kat2001_retbits[] = { + 0xc5, 0xc7, 0x49, 0xa8, 0x0a, 0xce, 0x0d, 0x83, 0x34, 0xbc, 0x85, 0x58, + 0x32, 0x05, 0x78, 0x91, 0x67, 0x80, 0xd5, 0x9a, 0xc6, 0xa8, 0x17, 0x42, + 0xab, 0x0f, 0xaf, 0x0f, 0x3d, 0x1a, 0xce, 0x4f, 0x33, 0xd2, 0xed, 0x6f, + 0xb4, 0xe1, 0x47, 0xe1, 0xdd, 0x15, 0x7e, 0x34, 0x85, 0x66, 0x35, 0x4d, + 0x24, 0x9c, 0xf2, 0x5f, 0x36, 0xcc, 0x46, 0xae, 0x36, 0x15, 0xe3, 0x2d, + 0x51, 0x7a, 0xb6, 0x4c, +}; +static const struct drbg_kat_pr_false kat2001_t = { + 5, kat2001_entropyin, kat2001_nonce, kat2001_persstr, + kat2001_entropyinreseed, kat2001_addinreseed, kat2001_addin0, + kat2001_addin1, kat2001_retbits +}; +static const struct drbg_kat kat2001 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2001_t +}; + +static const unsigned char kat2002_entropyin[] = { + 0x66, 0x5b, 0xb9, 0xce, 0xf9, 0xe9, 0x3b, 0x94, 0x3a, 0xaf, 0x7f, 0x75, + 0x34, 0x36, 0x7d, 0x88, 0x11, 0x3b, 0xde, 0x79, 0x96, 0xfc, 0x92, 0x2b, + 0x26, 0xb9, 0x34, 0x53, 0x6f, 0x4e, 0x47, 0x80, +}; +static const unsigned char kat2002_nonce[] = { + 0x80, 0xa5, 0x7f, 0x45, 0x0d, 0x81, 0x63, 0xdd, 0xe1, 0xae, 0xff, 0xc1, + 0x74, 0x24, 0x55, 0x19, +}; +static const unsigned char kat2002_persstr[] = {0}; +static const unsigned char kat2002_entropyinreseed[] = { + 0x7a, 0x24, 0xa2, 0xbd, 0x4f, 0x5e, 0x20, 0x10, 0xf6, 0x00, 0xcd, 0xf0, + 0x33, 0x03, 0x1d, 0xbd, 0x20, 0xe1, 0xc9, 0x5d, 0x2b, 0x31, 0xdb, 0x82, + 0x4e, 0x66, 0x16, 0xd3, 0x15, 0xb1, 0x48, 0x67, +}; +static const unsigned char kat2002_addinreseed[] = { + 0xd6, 0xd1, 0x91, 0x1b, 0x53, 0xb4, 0x34, 0x22, 0x45, 0x31, 0xf8, 0xea, + 0xb5, 0x6f, 0x0a, 0xd4, 0xf4, 0x6c, 0xdb, 0x38, 0x92, 0x24, 0xaf, 0xfe, + 0xc3, 0xbf, 0x61, 0xbb, 0xcc, 0x84, 0x3e, 0x51, +}; +static const unsigned char kat2002_addin0[] = { + 0xa1, 0xd0, 0x42, 0x00, 0xea, 0x02, 0x11, 0x29, 0x48, 0xe0, 0xa9, 0xb0, + 0x22, 0x9d, 0x63, 0x69, 0x7d, 0x68, 0x96, 0xcb, 0xcd, 0x1a, 0x9b, 0x97, + 0x95, 0x38, 0x17, 0xbd, 0xd0, 0x0f, 0xe6, 0x61, +}; +static const unsigned char kat2002_addin1[] = { + 0x89, 0x34, 0xbc, 0x9a, 0x62, 0x29, 0xbd, 0x25, 0x78, 0x79, 0xf6, 0xd8, + 0x4d, 0x75, 0x3b, 0xd7, 0xb1, 0x51, 0xe6, 0x16, 0xff, 0xfd, 0xa3, 0x30, + 0x50, 0x2b, 0x2d, 0x7e, 0xf2, 0x03, 0x53, 0x1c, +}; +static const unsigned char kat2002_retbits[] = { + 0xd9, 0x50, 0xcf, 0xe3, 0x23, 0xef, 0x9f, 0x24, 0xdc, 0xef, 0x3e, 0x87, + 0x65, 0xa9, 0x90, 0x9c, 0xcd, 0xd6, 0x0a, 0x5d, 0x63, 0x59, 0xb5, 0x1c, + 0xa2, 0x93, 0x7e, 0x11, 0xca, 0x38, 0xc9, 0xd8, 0xca, 0x89, 0xdc, 0x4d, + 0xdf, 0x3e, 0x7a, 0x5b, 0x27, 0x32, 0x0f, 0x18, 0xe9, 0x6d, 0xc1, 0x8a, + 0x37, 0x99, 0xcb, 0x22, 0x8d, 0x59, 0x06, 0xc9, 0x3e, 0xf1, 0x38, 0x0f, + 0x10, 0xa6, 0x6a, 0xee, +}; +static const struct drbg_kat_pr_false kat2002_t = { + 6, kat2002_entropyin, kat2002_nonce, kat2002_persstr, + kat2002_entropyinreseed, kat2002_addinreseed, kat2002_addin0, + kat2002_addin1, kat2002_retbits +}; +static const struct drbg_kat kat2002 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2002_t +}; + +static const unsigned char kat2003_entropyin[] = { + 0x72, 0x2b, 0xcc, 0xd6, 0xf5, 0x5f, 0xe0, 0xba, 0xe6, 0x99, 0x87, 0x07, + 0x91, 0x1e, 0xfb, 0x59, 0x1c, 0xd4, 0xb4, 0x8e, 0xfd, 0x95, 0xd6, 0x93, + 0x17, 0xbf, 0x2b, 0xcc, 0x50, 0xf1, 0xc1, 0xbc, +}; +static const unsigned char kat2003_nonce[] = { + 0x53, 0xe3, 0x9a, 0x29, 0x91, 0xdc, 0xae, 0xfc, 0xca, 0x3d, 0xbe, 0x53, + 0xca, 0x3b, 0x6c, 0x4d, +}; +static const unsigned char kat2003_persstr[] = {0}; +static const unsigned char kat2003_entropyinreseed[] = { + 0xd7, 0xfc, 0x5a, 0xfe, 0xf4, 0x03, 0xb9, 0x30, 0x5e, 0xc3, 0xca, 0xb0, + 0xbf, 0xd8, 0x47, 0x91, 0x19, 0x66, 0x6a, 0xd0, 0x8f, 0xe2, 0x44, 0xc6, + 0x5a, 0xa1, 0xb8, 0x35, 0x96, 0x2e, 0x59, 0x8f, +}; +static const unsigned char kat2003_addinreseed[] = { + 0xee, 0x1a, 0xd1, 0x32, 0x2b, 0x4f, 0x23, 0xd6, 0xbc, 0x1a, 0x58, 0xd0, + 0xa3, 0x26, 0x73, 0xeb, 0x89, 0x42, 0xb6, 0xe5, 0x3c, 0x9e, 0xc2, 0x25, + 0x69, 0xf3, 0xfc, 0xaf, 0xd2, 0xdb, 0x33, 0x97, +}; +static const unsigned char kat2003_addin0[] = { + 0xd5, 0x16, 0xae, 0xae, 0xf6, 0x8b, 0x70, 0x77, 0xd4, 0x31, 0x4e, 0xb6, + 0x94, 0xbc, 0x0b, 0x4c, 0xa6, 0x61, 0xec, 0x26, 0x43, 0x14, 0x59, 0xa4, + 0x4d, 0x15, 0xe9, 0xdf, 0x27, 0x33, 0x3b, 0xbe, +}; +static const unsigned char kat2003_addin1[] = { + 0xf6, 0xc3, 0x72, 0x3a, 0xdb, 0x8e, 0xff, 0x96, 0x00, 0xb8, 0x4a, 0x45, + 0x2a, 0xdb, 0x00, 0x71, 0x97, 0x77, 0xc9, 0x52, 0x32, 0x9a, 0xfe, 0x7d, + 0xc2, 0xf4, 0x12, 0x91, 0x75, 0x24, 0x7a, 0xb0, +}; +static const unsigned char kat2003_retbits[] = { + 0xc9, 0x5b, 0x75, 0x75, 0x49, 0x93, 0x1f, 0x03, 0x0f, 0x70, 0x79, 0x6e, + 0xaf, 0x03, 0x83, 0xd9, 0x80, 0x36, 0x27, 0x94, 0xcf, 0x24, 0xfd, 0xac, + 0xf5, 0xa6, 0x10, 0x1f, 0x96, 0x8d, 0x09, 0x9c, 0x19, 0x4c, 0xc7, 0x06, + 0x07, 0xa6, 0xf8, 0x6b, 0xa0, 0x40, 0x4a, 0xdd, 0xd2, 0xac, 0x04, 0xd2, + 0x5e, 0x4a, 0x0d, 0x51, 0xce, 0xb4, 0x5e, 0x2f, 0x9f, 0xfc, 0x2d, 0xa4, + 0x99, 0x13, 0xea, 0x5b, +}; +static const struct drbg_kat_pr_false kat2003_t = { + 7, kat2003_entropyin, kat2003_nonce, kat2003_persstr, + kat2003_entropyinreseed, kat2003_addinreseed, kat2003_addin0, + kat2003_addin1, kat2003_retbits +}; +static const struct drbg_kat kat2003 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2003_t +}; + +static const unsigned char kat2004_entropyin[] = { + 0x64, 0x7f, 0xa5, 0x68, 0x08, 0x69, 0xa0, 0x8f, 0x9f, 0xb1, 0x9d, 0x6a, + 0xf6, 0x27, 0x47, 0x85, 0x26, 0x88, 0xf5, 0x87, 0x0a, 0x5b, 0x5d, 0x80, + 0x92, 0x6c, 0x69, 0xd0, 0x85, 0x03, 0xcc, 0x12, +}; +static const unsigned char kat2004_nonce[] = { + 0x66, 0xa1, 0xc1, 0x52, 0xb8, 0xdb, 0x54, 0x56, 0xd9, 0x17, 0x63, 0x7b, + 0xf3, 0x34, 0x86, 0xac, +}; +static const unsigned char kat2004_persstr[] = {0}; +static const unsigned char kat2004_entropyinreseed[] = { + 0xa6, 0x58, 0xb2, 0x55, 0x93, 0x13, 0xf1, 0x61, 0x81, 0xaf, 0x98, 0x00, + 0x0d, 0x05, 0x8b, 0x20, 0xc7, 0xc1, 0x22, 0x3b, 0x22, 0x58, 0xd6, 0x8d, + 0xe5, 0x43, 0xfa, 0x83, 0x47, 0x56, 0x88, 0x55, +}; +static const unsigned char kat2004_addinreseed[] = { + 0x44, 0x60, 0xdd, 0xd3, 0xbd, 0xe8, 0x53, 0x28, 0x53, 0xd3, 0xc8, 0x67, + 0xc4, 0xed, 0xcc, 0x32, 0xeb, 0xac, 0x9b, 0x04, 0x08, 0x60, 0x95, 0xe1, + 0x81, 0xf4, 0x24, 0x84, 0x18, 0x68, 0x8a, 0x85, +}; +static const unsigned char kat2004_addin0[] = { + 0x79, 0x36, 0x4b, 0xaf, 0xbe, 0x6c, 0xeb, 0x9e, 0xe5, 0xf6, 0xb9, 0xee, + 0x93, 0x2a, 0x46, 0x7a, 0x50, 0xe1, 0xaa, 0x1d, 0x5f, 0xdb, 0xf4, 0x03, + 0x80, 0xe6, 0x7d, 0x66, 0x02, 0xf8, 0x33, 0xcf, +}; +static const unsigned char kat2004_addin1[] = { + 0x42, 0x33, 0xa1, 0x1a, 0xea, 0x16, 0x8c, 0x43, 0xeb, 0xcf, 0x8d, 0x2d, + 0x3e, 0xe0, 0x03, 0xf7, 0xcc, 0x0f, 0x3b, 0x68, 0xb8, 0x59, 0xcd, 0x81, + 0xc7, 0x21, 0x44, 0x7c, 0x05, 0x77, 0x30, 0x8e, +}; +static const unsigned char kat2004_retbits[] = { + 0x81, 0x40, 0x67, 0x45, 0xe9, 0x97, 0xb7, 0x3d, 0x6c, 0xa3, 0x14, 0xe0, + 0xac, 0xfa, 0x08, 0x76, 0x18, 0xe9, 0x67, 0xec, 0x93, 0x48, 0x78, 0xa5, + 0xa7, 0xe0, 0x08, 0xf4, 0xc3, 0xb3, 0xa7, 0xe0, 0x2d, 0x9e, 0x75, 0x92, + 0x93, 0xa4, 0xa4, 0x88, 0xff, 0xf4, 0x8e, 0xf9, 0x69, 0x37, 0x67, 0xe1, + 0x7e, 0x07, 0xa0, 0x89, 0x21, 0x1e, 0xca, 0xee, 0x1b, 0xdd, 0xbe, 0x54, + 0x6e, 0x95, 0xb5, 0xc2, +}; +static const struct drbg_kat_pr_false kat2004_t = { + 8, kat2004_entropyin, kat2004_nonce, kat2004_persstr, + kat2004_entropyinreseed, kat2004_addinreseed, kat2004_addin0, + kat2004_addin1, kat2004_retbits +}; +static const struct drbg_kat kat2004 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2004_t +}; + +static const unsigned char kat2005_entropyin[] = { + 0xb2, 0xb6, 0xfe, 0x28, 0x6e, 0x93, 0x4e, 0x1e, 0xdb, 0x91, 0x69, 0xdb, + 0xa3, 0x14, 0xea, 0x13, 0x64, 0xd5, 0x97, 0x2a, 0xe4, 0x5a, 0x34, 0x3f, + 0xa3, 0xa2, 0x9e, 0xc7, 0xd2, 0x2e, 0x63, 0x0b, +}; +static const unsigned char kat2005_nonce[] = { + 0x6d, 0xe0, 0xb6, 0x1f, 0xb0, 0x85, 0x27, 0x11, 0xc0, 0xb7, 0x8e, 0xac, + 0xca, 0x49, 0x01, 0x08, +}; +static const unsigned char kat2005_persstr[] = {0}; +static const unsigned char kat2005_entropyinreseed[] = { + 0xe7, 0x40, 0x74, 0xcf, 0xfe, 0x00, 0x4d, 0xb9, 0x0f, 0x24, 0x85, 0x22, + 0x0d, 0xdd, 0xb0, 0xbf, 0x81, 0xdd, 0xd9, 0xec, 0x2f, 0xb8, 0x3e, 0xbd, + 0x42, 0x49, 0xba, 0x39, 0xab, 0x1b, 0x2a, 0x20, +}; +static const unsigned char kat2005_addinreseed[] = { + 0x72, 0xaa, 0x7b, 0xd3, 0xf4, 0xc3, 0x29, 0x94, 0xce, 0xeb, 0xd3, 0x74, + 0xba, 0x55, 0x96, 0x44, 0x14, 0x8e, 0x55, 0xc1, 0x4b, 0xba, 0xbe, 0xa5, + 0x53, 0x6a, 0xf8, 0xca, 0xcd, 0xb2, 0xce, 0x34, +}; +static const unsigned char kat2005_addin0[] = { + 0xc1, 0xff, 0x35, 0xde, 0x77, 0xf0, 0x71, 0x3a, 0xb3, 0x52, 0x65, 0x42, + 0x0d, 0x0b, 0xcd, 0xe1, 0x13, 0xc1, 0x85, 0xbc, 0xbd, 0x14, 0x75, 0x22, + 0xb4, 0xb6, 0x49, 0x98, 0x45, 0x1b, 0x38, 0x95, +}; +static const unsigned char kat2005_addin1[] = { + 0x77, 0xab, 0xb2, 0x9a, 0x42, 0x1b, 0x8b, 0xd4, 0x8c, 0xef, 0xe4, 0x7c, + 0xff, 0x73, 0x0b, 0xe6, 0x6a, 0xb9, 0xf5, 0xb5, 0x22, 0x4f, 0x3f, 0x69, + 0x39, 0x9a, 0xfe, 0x81, 0x3e, 0x2a, 0x24, 0xfb, +}; +static const unsigned char kat2005_retbits[] = { + 0xb3, 0x96, 0xa2, 0x9c, 0x98, 0x31, 0x8e, 0x0f, 0x1b, 0xb2, 0x27, 0x9f, + 0xba, 0xc6, 0x77, 0xec, 0xa0, 0x63, 0x42, 0x28, 0x7e, 0x6d, 0x4a, 0xec, + 0x0c, 0xef, 0x36, 0xe8, 0x7e, 0xc4, 0x33, 0x33, 0x7d, 0x00, 0x4a, 0x5a, + 0x0e, 0xc6, 0xd8, 0xf3, 0x5a, 0xf7, 0x05, 0x58, 0xf5, 0xdc, 0x6c, 0xdf, + 0xf9, 0x14, 0x48, 0x36, 0xa6, 0x70, 0x5e, 0x0d, 0x31, 0x59, 0xe6, 0x90, + 0x42, 0x13, 0x90, 0x3c, +}; +static const struct drbg_kat_pr_false kat2005_t = { + 9, kat2005_entropyin, kat2005_nonce, kat2005_persstr, + kat2005_entropyinreseed, kat2005_addinreseed, kat2005_addin0, + kat2005_addin1, kat2005_retbits +}; +static const struct drbg_kat kat2005 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2005_t +}; + +static const unsigned char kat2006_entropyin[] = { + 0x22, 0x97, 0xaa, 0x40, 0x6e, 0x58, 0x9f, 0xe6, 0x30, 0xfa, 0xf8, 0xe5, + 0x7c, 0x75, 0xf0, 0x84, 0x3b, 0x03, 0x07, 0xa4, 0xef, 0x46, 0xa5, 0xa3, + 0x53, 0xe0, 0xd5, 0xc2, 0x19, 0xef, 0xd5, 0xda, +}; +static const unsigned char kat2006_nonce[] = { + 0x92, 0x18, 0x25, 0xe5, 0xec, 0xbc, 0x19, 0x51, 0xcb, 0xfb, 0xa8, 0xbb, + 0x05, 0xcf, 0xda, 0x30, +}; +static const unsigned char kat2006_persstr[] = {0}; +static const unsigned char kat2006_entropyinreseed[] = { + 0xff, 0x27, 0xdc, 0xdd, 0x3c, 0xb7, 0x47, 0x6f, 0xa7, 0x74, 0x01, 0xfd, + 0xd2, 0x5e, 0xa0, 0x42, 0xa3, 0xf3, 0xb6, 0xdc, 0xa7, 0x5d, 0x7a, 0x6b, + 0xe0, 0xd3, 0x93, 0x84, 0x32, 0xeb, 0x7c, 0xa5, +}; +static const unsigned char kat2006_addinreseed[] = { + 0xbd, 0x65, 0xc1, 0x1d, 0x7e, 0x42, 0x1e, 0x17, 0xde, 0x46, 0x19, 0x65, + 0x6a, 0xc9, 0xab, 0x7d, 0x5d, 0x11, 0x2b, 0x28, 0xc9, 0x5d, 0x51, 0x17, + 0x96, 0x3a, 0x19, 0x89, 0x65, 0xfc, 0x75, 0xcb, +}; +static const unsigned char kat2006_addin0[] = { + 0xbf, 0x1c, 0x52, 0xe8, 0x11, 0x27, 0xa5, 0x3b, 0xe2, 0x31, 0x34, 0x6d, + 0x9d, 0x82, 0x75, 0x41, 0x22, 0x1d, 0xe0, 0x99, 0x4a, 0x23, 0xf8, 0xd5, + 0xd5, 0x7f, 0x7b, 0x16, 0x8a, 0xf5, 0x9f, 0xd9, +}; +static const unsigned char kat2006_addin1[] = { + 0x6b, 0xf3, 0x00, 0xfc, 0x65, 0x05, 0xeb, 0xde, 0xb7, 0x0d, 0x96, 0x1b, + 0xf5, 0xb8, 0x89, 0x7a, 0x4f, 0xf4, 0x28, 0x8d, 0x12, 0xf4, 0xf3, 0xf7, + 0xf7, 0x91, 0xd0, 0xa7, 0xc5, 0x33, 0xb6, 0xd2, +}; +static const unsigned char kat2006_retbits[] = { + 0x27, 0x7b, 0xeb, 0x95, 0x11, 0xdf, 0x11, 0x5f, 0x44, 0x8b, 0xbf, 0x37, + 0x3a, 0x73, 0xfb, 0x8e, 0x83, 0x5b, 0x30, 0xa2, 0x87, 0x81, 0xed, 0x8e, + 0xc3, 0x20, 0xbc, 0x77, 0x5a, 0x46, 0xc0, 0x60, 0x08, 0x90, 0x53, 0x3e, + 0xc6, 0x05, 0x67, 0xa1, 0xc5, 0x05, 0x70, 0xd4, 0xcd, 0xec, 0xde, 0xba, + 0x52, 0x43, 0x2d, 0xdc, 0x75, 0x8e, 0xa8, 0x6c, 0xc3, 0x4b, 0x3d, 0x83, + 0xcd, 0x9e, 0x3c, 0x81, +}; +static const struct drbg_kat_pr_false kat2006_t = { + 10, kat2006_entropyin, kat2006_nonce, kat2006_persstr, + kat2006_entropyinreseed, kat2006_addinreseed, kat2006_addin0, + kat2006_addin1, kat2006_retbits +}; +static const struct drbg_kat kat2006 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2006_t +}; + +static const unsigned char kat2007_entropyin[] = { + 0xac, 0x72, 0x05, 0xc8, 0x1f, 0x9b, 0x2f, 0x86, 0x9a, 0x85, 0xfd, 0x09, + 0x24, 0x03, 0xa7, 0x9f, 0x82, 0x1e, 0xe9, 0x84, 0xec, 0x54, 0x52, 0x9b, + 0xd3, 0x8a, 0xdc, 0x7a, 0x62, 0x5b, 0x42, 0x8b, +}; +static const unsigned char kat2007_nonce[] = { + 0x56, 0x8f, 0x2b, 0x58, 0xe8, 0x4d, 0xe0, 0x57, 0xbf, 0x00, 0x63, 0x0c, + 0x12, 0x5e, 0x38, 0x4b, +}; +static const unsigned char kat2007_persstr[] = {0}; +static const unsigned char kat2007_entropyinreseed[] = { + 0x14, 0x67, 0x4d, 0xc6, 0x20, 0x3e, 0x93, 0x19, 0xfa, 0x81, 0x0f, 0x48, + 0x07, 0x37, 0xda, 0xa3, 0x47, 0x99, 0x0e, 0x83, 0x03, 0xb5, 0x9c, 0xb8, + 0xe4, 0x76, 0x3d, 0xab, 0xb1, 0x0b, 0xa2, 0xae, +}; +static const unsigned char kat2007_addinreseed[] = { + 0x90, 0x96, 0xef, 0x0d, 0xc5, 0x38, 0xc5, 0x14, 0xd7, 0x85, 0x50, 0x66, + 0x0b, 0x42, 0x4c, 0x7b, 0x95, 0xf0, 0x3d, 0xbd, 0x13, 0x90, 0xee, 0xa4, + 0x18, 0x85, 0xc3, 0xf0, 0xa5, 0x9b, 0xf3, 0x57, +}; +static const unsigned char kat2007_addin0[] = { + 0x35, 0x74, 0x31, 0x99, 0xbd, 0xb9, 0x56, 0xd2, 0x69, 0xcd, 0xdc, 0x55, + 0xa8, 0xaf, 0x52, 0xe4, 0x98, 0x16, 0x88, 0x29, 0x56, 0xeb, 0xe3, 0x17, + 0xfd, 0x7e, 0x09, 0x5a, 0x6f, 0x18, 0x30, 0xd8, +}; +static const unsigned char kat2007_addin1[] = { + 0x29, 0x84, 0x5f, 0x68, 0x8d, 0x6f, 0x7c, 0x00, 0xa1, 0x4a, 0x72, 0xb0, + 0xa4, 0xbc, 0x5e, 0x6c, 0x31, 0x95, 0xd0, 0xb0, 0x43, 0x6e, 0xa6, 0x7c, + 0x09, 0x8c, 0x0a, 0xbe, 0x05, 0x85, 0x0b, 0x90, +}; +static const unsigned char kat2007_retbits[] = { + 0xc6, 0xc6, 0xd6, 0xdb, 0x9a, 0xe3, 0xfc, 0x25, 0xbc, 0x5b, 0x17, 0xcc, + 0x44, 0x8b, 0x95, 0xe8, 0xc7, 0xf1, 0xa0, 0x7b, 0xb3, 0xd0, 0x26, 0x47, + 0xbc, 0x88, 0xcc, 0x8e, 0x8e, 0xd1, 0x07, 0x58, 0x41, 0x6a, 0xc0, 0xa7, + 0x6c, 0x55, 0x65, 0xe3, 0x8f, 0xa5, 0xd6, 0x9b, 0xe6, 0x52, 0x84, 0x40, + 0x5f, 0x51, 0x7a, 0x84, 0x6c, 0x3e, 0x43, 0x11, 0xa6, 0xf3, 0x82, 0x58, + 0x3c, 0xf8, 0x96, 0x46, +}; +static const struct drbg_kat_pr_false kat2007_t = { + 11, kat2007_entropyin, kat2007_nonce, kat2007_persstr, + kat2007_entropyinreseed, kat2007_addinreseed, kat2007_addin0, + kat2007_addin1, kat2007_retbits +}; +static const struct drbg_kat kat2007 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2007_t +}; + +static const unsigned char kat2008_entropyin[] = { + 0x26, 0x7d, 0x90, 0x56, 0xdb, 0xf8, 0x60, 0x31, 0xeb, 0x8c, 0x5a, 0x98, + 0x28, 0xf7, 0x99, 0x1c, 0x67, 0xa8, 0xe0, 0x41, 0xaa, 0x62, 0xaf, 0xd0, + 0xf6, 0x5b, 0x51, 0x4b, 0xfc, 0xd6, 0xa4, 0xf9, +}; +static const unsigned char kat2008_nonce[] = { + 0x43, 0x97, 0xda, 0x37, 0xff, 0x90, 0x73, 0x1f, 0x27, 0x23, 0x48, 0x2a, + 0x2b, 0xdc, 0x99, 0x11, +}; +static const unsigned char kat2008_persstr[] = {0}; +static const unsigned char kat2008_entropyinreseed[] = { + 0xba, 0x2a, 0x72, 0x41, 0xbb, 0xf3, 0xb5, 0xc6, 0xfc, 0xfd, 0x20, 0x60, + 0x0f, 0x69, 0x31, 0x4f, 0x29, 0x06, 0x97, 0x85, 0x75, 0xb1, 0x20, 0xa7, + 0x59, 0xea, 0x4f, 0xc8, 0x34, 0xd0, 0x70, 0x10, +}; +static const unsigned char kat2008_addinreseed[] = { + 0x7e, 0xce, 0xd6, 0x5d, 0x87, 0xc5, 0x5a, 0x81, 0xfa, 0x01, 0xc4, 0x6b, + 0xfd, 0x80, 0x95, 0x8a, 0x87, 0xe6, 0x71, 0xf8, 0x6a, 0x62, 0x8a, 0x3a, + 0xd0, 0xa1, 0xc5, 0xb0, 0x63, 0x9c, 0xe4, 0xb3, +}; +static const unsigned char kat2008_addin0[] = { + 0x09, 0xb5, 0xde, 0x16, 0x81, 0xb5, 0x52, 0x6e, 0xfd, 0xe5, 0x8f, 0xe9, + 0xd3, 0xab, 0xe4, 0xcd, 0x4e, 0x74, 0xf5, 0xdf, 0xd4, 0x83, 0x92, 0xa8, + 0x51, 0xf8, 0x85, 0x59, 0x6f, 0xd5, 0xb8, 0xbd, +}; +static const unsigned char kat2008_addin1[] = { + 0x48, 0xee, 0x86, 0x11, 0xaa, 0x8c, 0x0e, 0x75, 0xa2, 0xd4, 0x5a, 0x65, + 0x82, 0x6a, 0x49, 0xf0, 0xd2, 0x1d, 0xfb, 0x4a, 0xf3, 0xfd, 0x1d, 0x17, + 0xcd, 0x64, 0x9f, 0x52, 0xbf, 0xe2, 0x6a, 0x9a, +}; +static const unsigned char kat2008_retbits[] = { + 0xff, 0xe8, 0xbd, 0xbe, 0xfd, 0x0c, 0xf8, 0x21, 0xda, 0x1e, 0x0a, 0x3c, + 0xd8, 0xe8, 0x12, 0xe2, 0x9b, 0x2c, 0x10, 0xfb, 0x00, 0xb5, 0xcc, 0xbd, + 0x35, 0x81, 0x0b, 0x74, 0xa0, 0xc9, 0x6d, 0x54, 0x88, 0xfc, 0x6c, 0xd2, + 0x0d, 0x4a, 0x36, 0x35, 0xaf, 0x14, 0x28, 0x21, 0x6a, 0x75, 0x4c, 0x32, + 0xaa, 0x0c, 0x4a, 0x2e, 0xdf, 0xb8, 0xbd, 0xa3, 0x71, 0xa2, 0x5a, 0xe7, + 0x7f, 0x6b, 0x05, 0x0c, +}; +static const struct drbg_kat_pr_false kat2008_t = { + 12, kat2008_entropyin, kat2008_nonce, kat2008_persstr, + kat2008_entropyinreseed, kat2008_addinreseed, kat2008_addin0, + kat2008_addin1, kat2008_retbits +}; +static const struct drbg_kat kat2008 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2008_t +}; + +static const unsigned char kat2009_entropyin[] = { + 0x12, 0x26, 0x88, 0x7c, 0xec, 0xc5, 0xee, 0xf4, 0x73, 0x92, 0x74, 0x5c, + 0xf9, 0x29, 0xff, 0xff, 0x4d, 0xd6, 0xe9, 0xc0, 0xda, 0x8b, 0xbe, 0x5e, + 0x32, 0xaa, 0x0a, 0xbd, 0xaa, 0xf4, 0x28, 0x84, +}; +static const unsigned char kat2009_nonce[] = { + 0x67, 0x97, 0x5b, 0x45, 0xee, 0xf8, 0x94, 0xaa, 0x8d, 0x40, 0x4f, 0xa2, + 0x98, 0xb0, 0xaa, 0xa1, +}; +static const unsigned char kat2009_persstr[] = {0}; +static const unsigned char kat2009_entropyinreseed[] = { + 0xe7, 0xaf, 0xf4, 0x6f, 0x2b, 0x77, 0x18, 0x99, 0x23, 0x8f, 0xa6, 0xc0, + 0x9c, 0x09, 0x48, 0x21, 0x66, 0x46, 0x11, 0xc6, 0x6a, 0x57, 0x8c, 0x25, + 0xbb, 0x3e, 0xf5, 0xe5, 0x3d, 0xb4, 0xbd, 0x8b, +}; +static const unsigned char kat2009_addinreseed[] = { + 0xcf, 0xbd, 0xad, 0x53, 0xab, 0x7c, 0xc8, 0xcb, 0x78, 0x51, 0x2c, 0x7f, + 0x19, 0x5d, 0x95, 0x54, 0x48, 0xfa, 0x80, 0xcc, 0x08, 0xe1, 0xb5, 0x02, + 0x81, 0xa7, 0xe9, 0x8b, 0x0e, 0xdd, 0xd7, 0x80, +}; +static const unsigned char kat2009_addin0[] = { + 0x3d, 0x83, 0xa6, 0x01, 0x49, 0x48, 0x7c, 0xd4, 0x4f, 0x12, 0x69, 0xc4, + 0xa2, 0xbe, 0xcb, 0x26, 0x20, 0x93, 0x96, 0x45, 0xe6, 0x89, 0x86, 0x85, + 0x51, 0x28, 0x6c, 0x70, 0xf3, 0x7f, 0x61, 0xc4, +}; +static const unsigned char kat2009_addin1[] = { + 0x7a, 0x20, 0xbc, 0x5e, 0x65, 0xa9, 0xbf, 0x88, 0x66, 0x9d, 0xe6, 0x26, + 0xa5, 0x7b, 0xff, 0xfd, 0xf6, 0x7f, 0xfb, 0x31, 0x10, 0x54, 0x19, 0x11, + 0x26, 0xce, 0x18, 0x81, 0x9a, 0xc7, 0x07, 0xcb, +}; +static const unsigned char kat2009_retbits[] = { + 0x68, 0x05, 0xb3, 0x15, 0xc0, 0xbc, 0x3e, 0xdd, 0x65, 0x74, 0x85, 0x92, + 0xb5, 0xb2, 0xde, 0xa1, 0x67, 0x83, 0xc2, 0x01, 0xfc, 0x46, 0x93, 0xd4, + 0x0c, 0x1e, 0x2b, 0x9c, 0xba, 0x53, 0x34, 0x53, 0x02, 0x4f, 0x07, 0xd8, + 0xa7, 0x0b, 0xcd, 0xe4, 0xbf, 0x8d, 0x1f, 0x62, 0xf3, 0x58, 0xb9, 0xbf, + 0x53, 0x37, 0x27, 0x06, 0xe9, 0x24, 0x06, 0x2a, 0x16, 0x03, 0x74, 0x62, + 0x53, 0x83, 0x00, 0xcd, +}; +static const struct drbg_kat_pr_false kat2009_t = { + 13, kat2009_entropyin, kat2009_nonce, kat2009_persstr, + kat2009_entropyinreseed, kat2009_addinreseed, kat2009_addin0, + kat2009_addin1, kat2009_retbits +}; +static const struct drbg_kat kat2009 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2009_t +}; + +static const unsigned char kat2010_entropyin[] = { + 0x5e, 0xaf, 0x75, 0x44, 0xa8, 0x32, 0xc9, 0xc9, 0xea, 0x6d, 0x44, 0xfe, + 0xb9, 0x32, 0x3f, 0x5f, 0xad, 0x6b, 0xe9, 0xdd, 0x7e, 0xb3, 0x58, 0x3e, + 0x37, 0xd2, 0x6d, 0x0a, 0x11, 0x39, 0x68, 0xa4, +}; +static const unsigned char kat2010_nonce[] = { + 0xc8, 0x2d, 0x1b, 0xa5, 0xb2, 0x1f, 0x00, 0x63, 0xca, 0x68, 0x67, 0x06, + 0xbe, 0x55, 0x64, 0x72, +}; +static const unsigned char kat2010_persstr[] = {0}; +static const unsigned char kat2010_entropyinreseed[] = { + 0x3c, 0xbd, 0x80, 0x7a, 0xe5, 0xa1, 0x28, 0x3e, 0x8c, 0xd8, 0xbc, 0x36, + 0xf8, 0x9d, 0xbc, 0x74, 0x74, 0x34, 0xe5, 0x87, 0x21, 0xd8, 0x38, 0x7f, + 0x3d, 0x3f, 0xef, 0x48, 0xc6, 0x6e, 0x25, 0x95, +}; +static const unsigned char kat2010_addinreseed[] = { + 0x35, 0x50, 0x19, 0x8b, 0xe9, 0x9e, 0x10, 0x84, 0xad, 0x87, 0xf1, 0x3f, + 0xab, 0x41, 0x21, 0x33, 0x3c, 0x38, 0x99, 0x61, 0xef, 0x48, 0x91, 0x9d, + 0x9b, 0xb8, 0x37, 0xb2, 0x46, 0xdf, 0x56, 0x11, +}; +static const unsigned char kat2010_addin0[] = { + 0xbd, 0x20, 0xf7, 0x26, 0x63, 0xcc, 0xae, 0xb0, 0x86, 0x32, 0x8a, 0x3c, + 0x59, 0xd3, 0xee, 0x4a, 0x2d, 0xb2, 0xd8, 0xb0, 0x10, 0xff, 0x8f, 0x41, + 0x46, 0xaf, 0x45, 0x05, 0x8b, 0x2a, 0xf6, 0x2b, +}; +static const unsigned char kat2010_addin1[] = { + 0xc6, 0xb1, 0x9e, 0x4c, 0xd3, 0xd8, 0xdf, 0x2c, 0x95, 0x3e, 0x0a, 0xdd, + 0xac, 0xbf, 0xf6, 0xf4, 0x47, 0x44, 0x1f, 0xe2, 0x30, 0x9b, 0xd8, 0xc4, + 0x37, 0x13, 0x7b, 0xec, 0x1b, 0xb9, 0xb8, 0x19, +}; +static const unsigned char kat2010_retbits[] = { + 0x01, 0x9d, 0x32, 0x2a, 0x41, 0xa6, 0xcd, 0x1f, 0x4f, 0x7a, 0x06, 0xed, + 0xdb, 0x64, 0xaf, 0x1f, 0x84, 0x17, 0x09, 0x70, 0xb9, 0x38, 0xf4, 0x27, + 0xe2, 0x4b, 0x7c, 0xaa, 0x3f, 0x82, 0x17, 0x04, 0xba, 0x6b, 0x73, 0xac, + 0x67, 0xc2, 0x98, 0xfc, 0x09, 0xc0, 0x76, 0xe5, 0x6c, 0xda, 0x06, 0x5d, + 0xe3, 0xd0, 0x68, 0x2a, 0xbe, 0x6e, 0x55, 0x84, 0x1f, 0x68, 0x5e, 0x4a, + 0xb3, 0x27, 0x70, 0x2d, +}; +static const struct drbg_kat_pr_false kat2010_t = { + 14, kat2010_entropyin, kat2010_nonce, kat2010_persstr, + kat2010_entropyinreseed, kat2010_addinreseed, kat2010_addin0, + kat2010_addin1, kat2010_retbits +}; +static const struct drbg_kat kat2010 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2010_t +}; + +static const unsigned char kat2011_entropyin[] = { + 0x4c, 0xfb, 0x21, 0x86, 0x73, 0x34, 0x6d, 0x9d, 0x50, 0xc9, 0x22, 0xe4, + 0x9b, 0x0d, 0xfc, 0xd0, 0x90, 0xad, 0xf0, 0x4f, 0x5c, 0x3b, 0xa4, 0x73, + 0x27, 0xdf, 0xcd, 0x6f, 0xa6, 0x3a, 0x78, 0x5c, +}; +static const unsigned char kat2011_nonce[] = { + 0x01, 0x69, 0x62, 0xa7, 0xfd, 0x27, 0x87, 0xa2, 0x4b, 0xf6, 0xbe, 0x47, + 0xef, 0x37, 0x83, 0xf1, +}; +static const unsigned char kat2011_persstr[] = { + 0x88, 0xee, 0xb8, 0xe0, 0xe8, 0x3b, 0xf3, 0x29, 0x4b, 0xda, 0xcd, 0x60, + 0x99, 0xeb, 0xe4, 0xbf, 0x55, 0xec, 0xd9, 0x11, 0x3f, 0x71, 0xe5, 0xeb, + 0xcb, 0x45, 0x75, 0xf3, 0xd6, 0xa6, 0x8a, 0x6b, +}; +static const unsigned char kat2011_entropyinreseed[] = { + 0xb7, 0xec, 0x46, 0x07, 0x23, 0x63, 0x83, 0x4a, 0x1b, 0x01, 0x33, 0xf2, + 0xc2, 0x38, 0x91, 0xdb, 0x4f, 0x11, 0xa6, 0x86, 0x51, 0xf2, 0x3e, 0x3a, + 0x8b, 0x1f, 0xdc, 0x03, 0xb1, 0x92, 0xc7, 0xe7, +}; +static const unsigned char kat2011_addinreseed[] = {0}; +static const unsigned char kat2011_addin0[] = {0}; +static const unsigned char kat2011_addin1[] = {0}; +static const unsigned char kat2011_retbits[] = { + 0xa5, 0x51, 0x80, 0xa1, 0x90, 0xbe, 0xf3, 0xad, 0xaf, 0x28, 0xf6, 0xb7, + 0x95, 0xe9, 0xf1, 0xf3, 0xd6, 0xdf, 0xa1, 0xb2, 0x7d, 0xd0, 0x46, 0x7b, + 0x0c, 0x75, 0xf5, 0xfa, 0x93, 0x1e, 0x97, 0x14, 0x75, 0xb2, 0x7c, 0xae, + 0x03, 0xa2, 0x96, 0x54, 0xe2, 0xf4, 0x09, 0x66, 0xea, 0x33, 0x64, 0x30, + 0x40, 0xd1, 0x40, 0x0f, 0xe6, 0x77, 0x87, 0x3a, 0xf8, 0x09, 0x7c, 0x1f, + 0xe9, 0xf0, 0x02, 0x98, +}; +static const struct drbg_kat_pr_false kat2011_t = { + 0, kat2011_entropyin, kat2011_nonce, kat2011_persstr, + kat2011_entropyinreseed, kat2011_addinreseed, kat2011_addin0, + kat2011_addin1, kat2011_retbits +}; +static const struct drbg_kat kat2011 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2011_t +}; + +static const unsigned char kat2012_entropyin[] = { + 0x29, 0xce, 0xa3, 0x1e, 0x47, 0x32, 0x08, 0xa5, 0x52, 0xad, 0x82, 0x6d, + 0x25, 0x50, 0x3e, 0xbc, 0x06, 0x5d, 0x88, 0x7d, 0xda, 0xa8, 0x3e, 0xf9, + 0xcf, 0xf8, 0x30, 0x44, 0xf2, 0xe4, 0x9b, 0xc0, +}; +static const unsigned char kat2012_nonce[] = { + 0x45, 0x4c, 0x1c, 0x31, 0x8f, 0x74, 0xb3, 0x32, 0xc8, 0x98, 0xf0, 0x2e, + 0x95, 0x1f, 0x4f, 0xc5, +}; +static const unsigned char kat2012_persstr[] = { + 0x67, 0x8d, 0xae, 0xda, 0x93, 0x30, 0x5c, 0x64, 0xc0, 0xfd, 0x05, 0x6c, + 0x9e, 0xf4, 0x26, 0x95, 0xf4, 0x0e, 0x5a, 0xf6, 0x13, 0x08, 0x21, 0xb4, + 0xa4, 0xd7, 0x06, 0xe7, 0x01, 0x3f, 0xc5, 0x23, +}; +static const unsigned char kat2012_entropyinreseed[] = { + 0x23, 0x42, 0xd3, 0xd6, 0x2a, 0xcb, 0x6d, 0x40, 0x2a, 0xf7, 0x57, 0x35, + 0x96, 0x31, 0xb5, 0x30, 0x29, 0xed, 0x18, 0xd9, 0x7e, 0xf7, 0xd6, 0xae, + 0x9c, 0xf7, 0xff, 0xc3, 0x40, 0x20, 0x28, 0x08, +}; +static const unsigned char kat2012_addinreseed[] = {0}; +static const unsigned char kat2012_addin0[] = {0}; +static const unsigned char kat2012_addin1[] = {0}; +static const unsigned char kat2012_retbits[] = { + 0x65, 0x14, 0x67, 0xac, 0xa6, 0x45, 0x4e, 0x17, 0x5f, 0x85, 0x79, 0x24, + 0xe1, 0x48, 0x32, 0x94, 0xc7, 0xbf, 0xd3, 0xbc, 0x22, 0x63, 0xa1, 0xde, + 0xe9, 0x03, 0xb7, 0xeb, 0x9b, 0xb0, 0x89, 0x95, 0x03, 0xbf, 0x61, 0xec, + 0x2a, 0x9d, 0xb5, 0x8e, 0x69, 0xaa, 0xc0, 0x9a, 0xc4, 0x46, 0x31, 0xe4, + 0xc7, 0xd4, 0xc0, 0x5d, 0xc7, 0x04, 0x19, 0x87, 0x06, 0xea, 0xe2, 0xd1, + 0xa1, 0xef, 0x76, 0x6e, +}; +static const struct drbg_kat_pr_false kat2012_t = { + 1, kat2012_entropyin, kat2012_nonce, kat2012_persstr, + kat2012_entropyinreseed, kat2012_addinreseed, kat2012_addin0, + kat2012_addin1, kat2012_retbits +}; +static const struct drbg_kat kat2012 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2012_t +}; + +static const unsigned char kat2013_entropyin[] = { + 0x23, 0x9e, 0xa1, 0x4c, 0x16, 0x90, 0x01, 0x73, 0xfb, 0xed, 0x08, 0x06, + 0xa3, 0x46, 0x5d, 0xf4, 0x83, 0xce, 0x98, 0x16, 0x06, 0xd9, 0xa3, 0x68, + 0x80, 0xd1, 0xca, 0x8d, 0xb2, 0x4f, 0xc2, 0x98, +}; +static const unsigned char kat2013_nonce[] = { + 0x3a, 0xf4, 0x04, 0xff, 0x32, 0x62, 0x20, 0x0c, 0x22, 0xb6, 0x46, 0xba, + 0x80, 0xbb, 0xf5, 0x38, +}; +static const unsigned char kat2013_persstr[] = { + 0x63, 0x57, 0x37, 0x22, 0x01, 0x06, 0xb0, 0x84, 0xc6, 0x41, 0xbb, 0xa0, + 0x05, 0x73, 0x1f, 0xeb, 0xb6, 0xea, 0xe4, 0x58, 0xf0, 0xfe, 0x38, 0x77, + 0x7b, 0x2f, 0x85, 0xb0, 0x49, 0xa1, 0x71, 0xb7, +}; +static const unsigned char kat2013_entropyinreseed[] = { + 0x34, 0x51, 0x9e, 0x5f, 0x5a, 0x23, 0x70, 0x0d, 0x3b, 0x62, 0xcb, 0x3f, + 0x0f, 0x36, 0x22, 0x14, 0xa8, 0x87, 0x42, 0xcc, 0x5d, 0x11, 0x2d, 0x47, + 0x4f, 0x8c, 0xfd, 0x81, 0xa9, 0x3a, 0xce, 0x1f, +}; +static const unsigned char kat2013_addinreseed[] = {0}; +static const unsigned char kat2013_addin0[] = {0}; +static const unsigned char kat2013_addin1[] = {0}; +static const unsigned char kat2013_retbits[] = { + 0xd7, 0x55, 0x42, 0xca, 0x92, 0x64, 0x44, 0xd0, 0xab, 0x13, 0xd4, 0x20, + 0x97, 0xfa, 0xb5, 0x94, 0xc5, 0x02, 0x33, 0xe2, 0x1b, 0x5d, 0x46, 0x39, + 0xe3, 0x2c, 0x5b, 0xc2, 0x04, 0xd3, 0xfb, 0xe7, 0x8b, 0x58, 0x34, 0x94, + 0x69, 0x2e, 0x72, 0x0b, 0x07, 0x14, 0xb5, 0xdd, 0x64, 0x7f, 0x5e, 0xbb, + 0xba, 0x76, 0xf1, 0xe2, 0x70, 0x28, 0xb9, 0x79, 0xc2, 0xde, 0x7b, 0x62, + 0xf7, 0x57, 0x87, 0x68, +}; +static const struct drbg_kat_pr_false kat2013_t = { + 2, kat2013_entropyin, kat2013_nonce, kat2013_persstr, + kat2013_entropyinreseed, kat2013_addinreseed, kat2013_addin0, + kat2013_addin1, kat2013_retbits +}; +static const struct drbg_kat kat2013 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2013_t +}; + +static const unsigned char kat2014_entropyin[] = { + 0xd8, 0xff, 0x66, 0xe0, 0xe9, 0xc2, 0x6a, 0x79, 0x85, 0xda, 0xde, 0x71, + 0xe9, 0xf6, 0x1b, 0xa4, 0x35, 0x3b, 0x88, 0x7a, 0x09, 0xfb, 0xc8, 0x9d, + 0x77, 0xfa, 0x9d, 0xc7, 0x39, 0xff, 0xc7, 0xf8, +}; +static const unsigned char kat2014_nonce[] = { + 0x4a, 0xe3, 0x0b, 0x04, 0x7f, 0x67, 0x41, 0x39, 0x3e, 0x8d, 0x77, 0x25, + 0x99, 0x2c, 0x5c, 0x44, +}; +static const unsigned char kat2014_persstr[] = { + 0x51, 0x7e, 0x7d, 0x94, 0x13, 0x79, 0xd2, 0x5c, 0x82, 0xc1, 0x29, 0xc1, + 0x0f, 0x3e, 0xe4, 0xdd, 0x7e, 0xaf, 0xad, 0x17, 0x53, 0xd7, 0x38, 0x3e, + 0xaf, 0x81, 0x97, 0x02, 0xea, 0x93, 0xf1, 0xea, +}; +static const unsigned char kat2014_entropyinreseed[] = { + 0xb0, 0x88, 0xea, 0x2c, 0xc9, 0x30, 0xd1, 0x67, 0x7f, 0xc6, 0x9d, 0x9e, + 0x60, 0x59, 0x47, 0xc5, 0x98, 0xff, 0x67, 0x4b, 0x52, 0x74, 0x2f, 0xc6, + 0xdb, 0x01, 0x77, 0x5a, 0x62, 0xd2, 0x57, 0xfd, +}; +static const unsigned char kat2014_addinreseed[] = {0}; +static const unsigned char kat2014_addin0[] = {0}; +static const unsigned char kat2014_addin1[] = {0}; +static const unsigned char kat2014_retbits[] = { + 0x50, 0x44, 0xf6, 0x8a, 0x7a, 0x7b, 0x26, 0xcf, 0xed, 0xc0, 0x63, 0x78, + 0xba, 0x9e, 0xa1, 0x6d, 0x47, 0x15, 0x25, 0x42, 0x93, 0x45, 0x64, 0xbc, + 0xee, 0x62, 0x78, 0x24, 0xf5, 0xb7, 0x2b, 0x59, 0x5e, 0xf3, 0xc3, 0xd8, + 0xfd, 0xba, 0xeb, 0x29, 0x6c, 0x8e, 0x10, 0x66, 0x40, 0x1f, 0xf4, 0x38, + 0xd3, 0xb3, 0xd1, 0xd2, 0x5a, 0xec, 0xf7, 0x79, 0x03, 0x43, 0x23, 0xa2, + 0x60, 0x5f, 0x9e, 0xa8, +}; +static const struct drbg_kat_pr_false kat2014_t = { + 3, kat2014_entropyin, kat2014_nonce, kat2014_persstr, + kat2014_entropyinreseed, kat2014_addinreseed, kat2014_addin0, + kat2014_addin1, kat2014_retbits +}; +static const struct drbg_kat kat2014 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2014_t +}; + +static const unsigned char kat2015_entropyin[] = { + 0x91, 0x73, 0xc4, 0x4a, 0xba, 0xf9, 0x26, 0xae, 0x00, 0xb7, 0x71, 0xbd, + 0x72, 0xc4, 0x97, 0xcd, 0x58, 0x3d, 0x8b, 0x3c, 0x11, 0x6f, 0x32, 0x04, + 0x4d, 0x6a, 0xce, 0x54, 0xf2, 0x9a, 0xf5, 0x9a, +}; +static const unsigned char kat2015_nonce[] = { + 0x72, 0x6d, 0xab, 0xbe, 0x47, 0x46, 0x51, 0xda, 0x76, 0x06, 0xb6, 0x5a, + 0x2b, 0xbe, 0x0a, 0x6f, +}; +static const unsigned char kat2015_persstr[] = { + 0x7a, 0x66, 0xdd, 0x4b, 0x42, 0xf9, 0x0a, 0x05, 0x57, 0x5c, 0xab, 0x46, + 0x08, 0xc9, 0x4d, 0x69, 0xe7, 0x4c, 0x96, 0x8d, 0x69, 0x7f, 0x66, 0xa2, + 0xea, 0xd4, 0x0d, 0x4d, 0xc0, 0xd5, 0x3e, 0xfa, +}; +static const unsigned char kat2015_entropyinreseed[] = { + 0x09, 0xf2, 0x29, 0x4f, 0x43, 0xb6, 0x8a, 0x99, 0x25, 0x09, 0xdc, 0xfa, + 0xaf, 0x82, 0xb3, 0x0e, 0xc4, 0x73, 0x66, 0x7b, 0xe7, 0x79, 0xf2, 0x2b, + 0x03, 0x53, 0xd9, 0x01, 0xd2, 0x1a, 0x70, 0x47, +}; +static const unsigned char kat2015_addinreseed[] = {0}; +static const unsigned char kat2015_addin0[] = {0}; +static const unsigned char kat2015_addin1[] = {0}; +static const unsigned char kat2015_retbits[] = { + 0xf3, 0x6d, 0x59, 0xc8, 0xe3, 0x28, 0xba, 0x45, 0xb1, 0x50, 0x74, 0xbc, + 0x59, 0x69, 0x62, 0xec, 0xe0, 0x48, 0x4e, 0xfc, 0x73, 0x35, 0x93, 0x2d, + 0x8d, 0x49, 0x2e, 0xcd, 0xe2, 0x55, 0x2c, 0x6d, 0xf3, 0xb5, 0x2d, 0xa8, + 0xba, 0xa0, 0x5d, 0xd4, 0x18, 0xcb, 0x39, 0xb2, 0x9f, 0x84, 0x68, 0xbd, + 0xe9, 0xe8, 0x82, 0xbc, 0x11, 0xe0, 0x7a, 0x03, 0x7e, 0xcc, 0xd2, 0x04, + 0x7c, 0x0b, 0x32, 0xae, +}; +static const struct drbg_kat_pr_false kat2015_t = { + 4, kat2015_entropyin, kat2015_nonce, kat2015_persstr, + kat2015_entropyinreseed, kat2015_addinreseed, kat2015_addin0, + kat2015_addin1, kat2015_retbits +}; +static const struct drbg_kat kat2015 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2015_t +}; + +static const unsigned char kat2016_entropyin[] = { + 0xde, 0x5a, 0x2a, 0x51, 0x29, 0x31, 0xc0, 0x71, 0x93, 0x32, 0xce, 0xb5, + 0x14, 0x60, 0x5f, 0x89, 0xb3, 0x05, 0xca, 0xe6, 0x26, 0x24, 0xe6, 0xf8, + 0xb4, 0xe5, 0x98, 0x44, 0xc4, 0x61, 0xf2, 0xbc, +}; +static const unsigned char kat2016_nonce[] = { + 0x74, 0x28, 0x15, 0xb8, 0xfe, 0x39, 0x9e, 0x5f, 0x2d, 0xf4, 0x58, 0x11, + 0xf6, 0x54, 0xc6, 0x0e, +}; +static const unsigned char kat2016_persstr[] = { + 0xf8, 0x69, 0xd9, 0x30, 0x28, 0x89, 0x61, 0xe4, 0x3e, 0x11, 0x2e, 0xc0, + 0x26, 0xde, 0xaf, 0x76, 0xcf, 0x5d, 0x00, 0x12, 0xc2, 0x45, 0xea, 0xec, + 0x57, 0x1b, 0x30, 0xc1, 0x3b, 0xb5, 0x34, 0xc4, +}; +static const unsigned char kat2016_entropyinreseed[] = { + 0xaa, 0x1c, 0x49, 0x3e, 0x86, 0x57, 0xab, 0x3d, 0xc2, 0xd7, 0x78, 0xb5, + 0x84, 0x5c, 0x16, 0x10, 0xa6, 0xd0, 0x79, 0x71, 0xe4, 0x36, 0x66, 0x66, + 0xd2, 0x46, 0xc7, 0xaa, 0x15, 0x57, 0x8b, 0x01, +}; +static const unsigned char kat2016_addinreseed[] = {0}; +static const unsigned char kat2016_addin0[] = {0}; +static const unsigned char kat2016_addin1[] = {0}; +static const unsigned char kat2016_retbits[] = { + 0x7d, 0xf6, 0xed, 0xe4, 0x50, 0xfa, 0xcd, 0x51, 0xdd, 0xb9, 0x31, 0xf7, + 0xa8, 0x17, 0xb6, 0xc1, 0xff, 0x27, 0xa3, 0x09, 0x4c, 0xf7, 0xdd, 0x4e, + 0x25, 0xc3, 0x90, 0xbe, 0xd8, 0x38, 0xad, 0x47, 0xb8, 0xc0, 0x3d, 0xe0, + 0xa6, 0xbc, 0xba, 0xd3, 0x7b, 0x0d, 0x1c, 0xb5, 0x5a, 0xab, 0x58, 0xf6, + 0xf0, 0x35, 0x71, 0x87, 0xb2, 0xec, 0x22, 0xd9, 0xe8, 0x8a, 0xa9, 0x80, + 0xb6, 0xe5, 0x4d, 0x75, +}; +static const struct drbg_kat_pr_false kat2016_t = { + 5, kat2016_entropyin, kat2016_nonce, kat2016_persstr, + kat2016_entropyinreseed, kat2016_addinreseed, kat2016_addin0, + kat2016_addin1, kat2016_retbits +}; +static const struct drbg_kat kat2016 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2016_t +}; + +static const unsigned char kat2017_entropyin[] = { + 0x77, 0x53, 0x1f, 0x8a, 0xd0, 0x07, 0xaa, 0xd3, 0x1f, 0xc1, 0x05, 0xe0, + 0xee, 0xc0, 0x24, 0xd5, 0x02, 0xcf, 0x76, 0xfd, 0x8f, 0xaa, 0xcd, 0x8b, + 0x46, 0xeb, 0x83, 0x4d, 0xfc, 0xf8, 0xd5, 0xae, +}; +static const unsigned char kat2017_nonce[] = { + 0x37, 0xde, 0x8b, 0xaa, 0x4b, 0x96, 0x68, 0x97, 0x93, 0xae, 0x6a, 0xd9, + 0x9a, 0xd3, 0x44, 0x5c, +}; +static const unsigned char kat2017_persstr[] = { + 0x67, 0xdd, 0xa2, 0xdb, 0x55, 0x9e, 0xbc, 0x63, 0x8e, 0x18, 0x2c, 0xc5, + 0x29, 0x0c, 0xcc, 0x1b, 0xbf, 0xc7, 0x01, 0x7a, 0xf2, 0xda, 0x6b, 0x99, + 0x8b, 0x85, 0x12, 0x05, 0x29, 0x61, 0x87, 0x42, +}; +static const unsigned char kat2017_entropyinreseed[] = { + 0x6c, 0xed, 0xc8, 0x68, 0xa2, 0x00, 0xed, 0xca, 0xfc, 0x34, 0xdb, 0xff, + 0x2b, 0xb4, 0xbc, 0x78, 0x51, 0xaa, 0x08, 0xa9, 0xf9, 0x23, 0x8b, 0x3f, + 0x2b, 0x31, 0xa0, 0x4d, 0x66, 0xab, 0x57, 0x67, +}; +static const unsigned char kat2017_addinreseed[] = {0}; +static const unsigned char kat2017_addin0[] = {0}; +static const unsigned char kat2017_addin1[] = {0}; +static const unsigned char kat2017_retbits[] = { + 0x0f, 0xeb, 0x6c, 0xb4, 0xbd, 0x77, 0x74, 0x91, 0x3d, 0x17, 0x52, 0xec, + 0x47, 0x7a, 0x43, 0xe4, 0xcf, 0xc1, 0x14, 0x7e, 0x82, 0x64, 0xda, 0xa3, + 0x3d, 0x90, 0x7b, 0x5f, 0x3c, 0x2d, 0xe7, 0x44, 0x60, 0xbc, 0x7d, 0x45, + 0xd3, 0xf1, 0x74, 0xbb, 0x7b, 0x24, 0x12, 0x56, 0xae, 0xf2, 0x46, 0x19, + 0x31, 0xb3, 0x51, 0x60, 0xf7, 0x93, 0xe9, 0x86, 0x40, 0xb4, 0xe1, 0x07, + 0xe3, 0x58, 0x5d, 0xcf, +}; +static const struct drbg_kat_pr_false kat2017_t = { + 6, kat2017_entropyin, kat2017_nonce, kat2017_persstr, + kat2017_entropyinreseed, kat2017_addinreseed, kat2017_addin0, + kat2017_addin1, kat2017_retbits +}; +static const struct drbg_kat kat2017 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2017_t +}; + +static const unsigned char kat2018_entropyin[] = { + 0xee, 0xf2, 0x97, 0xf8, 0x8d, 0x13, 0xed, 0x4c, 0xa5, 0xfc, 0xe5, 0x6a, + 0xcb, 0x43, 0x6c, 0x38, 0x77, 0xd7, 0xb9, 0x4d, 0x0a, 0xdb, 0x90, 0xa3, + 0x77, 0x44, 0x39, 0x7e, 0x9e, 0x84, 0x68, 0x47, +}; +static const unsigned char kat2018_nonce[] = { + 0x64, 0x31, 0x67, 0x7c, 0x9b, 0x85, 0x22, 0x0d, 0x1c, 0x6b, 0x1f, 0x78, + 0x64, 0x19, 0xfa, 0xcd, +}; +static const unsigned char kat2018_persstr[] = { + 0x14, 0x76, 0xd4, 0xb9, 0x16, 0xa8, 0x69, 0x4a, 0x45, 0xfc, 0xd0, 0x08, + 0x9f, 0x3b, 0x61, 0x52, 0xed, 0x6e, 0x92, 0x06, 0x4b, 0x1f, 0x6b, 0x6f, + 0xb0, 0xa3, 0x13, 0xc7, 0xaa, 0x8e, 0xfa, 0xda, +}; +static const unsigned char kat2018_entropyinreseed[] = { + 0x93, 0x82, 0x5a, 0x28, 0x28, 0x66, 0x26, 0x90, 0x42, 0x4b, 0x8c, 0x6c, + 0xf8, 0xdd, 0xbe, 0x9c, 0xd1, 0x4b, 0x14, 0xaf, 0x8d, 0x91, 0x98, 0x4b, + 0x66, 0x76, 0xfa, 0x6a, 0x92, 0x42, 0x84, 0x5e, +}; +static const unsigned char kat2018_addinreseed[] = {0}; +static const unsigned char kat2018_addin0[] = {0}; +static const unsigned char kat2018_addin1[] = {0}; +static const unsigned char kat2018_retbits[] = { + 0xa4, 0x5f, 0xbb, 0x99, 0x6a, 0x1c, 0x35, 0xe7, 0xc6, 0x72, 0xb1, 0x68, + 0x69, 0x02, 0x3c, 0x7d, 0x1c, 0xe8, 0x1a, 0x1e, 0x10, 0x7a, 0x46, 0x07, + 0xd2, 0xf7, 0x56, 0xf7, 0x90, 0x45, 0x26, 0xb7, 0x29, 0x85, 0x85, 0x15, + 0x55, 0x3e, 0x39, 0xa7, 0xc7, 0xf4, 0x49, 0x12, 0xa2, 0x7d, 0x8f, 0xc7, + 0xfc, 0x61, 0x12, 0x0a, 0x63, 0x62, 0x54, 0x33, 0x98, 0xa2, 0xb5, 0x8c, + 0xcd, 0x7a, 0x67, 0xd3, +}; +static const struct drbg_kat_pr_false kat2018_t = { + 7, kat2018_entropyin, kat2018_nonce, kat2018_persstr, + kat2018_entropyinreseed, kat2018_addinreseed, kat2018_addin0, + kat2018_addin1, kat2018_retbits +}; +static const struct drbg_kat kat2018 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2018_t +}; + +static const unsigned char kat2019_entropyin[] = { + 0x6f, 0x77, 0x68, 0x48, 0x07, 0x01, 0xda, 0x57, 0xff, 0xb6, 0xf6, 0x5f, + 0xde, 0x52, 0xb3, 0x07, 0x6d, 0x0d, 0x54, 0xdf, 0x32, 0x5a, 0x81, 0x5b, + 0xa0, 0x08, 0x9c, 0xf9, 0x66, 0x76, 0x6e, 0x69, +}; +static const unsigned char kat2019_nonce[] = { + 0x7f, 0x97, 0x9d, 0x87, 0x6d, 0xef, 0x96, 0xd8, 0x03, 0xb1, 0xd2, 0x11, + 0x17, 0x3c, 0xe4, 0x99, +}; +static const unsigned char kat2019_persstr[] = { + 0xa4, 0x8d, 0x8c, 0xc1, 0x24, 0x57, 0xad, 0xe1, 0x15, 0x15, 0xec, 0x9d, + 0xdb, 0xa1, 0x27, 0x4d, 0x05, 0xa6, 0xb3, 0x40, 0x70, 0xf0, 0x4e, 0xe4, + 0x27, 0xcb, 0xd2, 0x6a, 0xfc, 0x2e, 0xdf, 0x3b, +}; +static const unsigned char kat2019_entropyinreseed[] = { + 0x3d, 0xfe, 0x53, 0xa6, 0x1b, 0xb7, 0x95, 0x53, 0x7c, 0x65, 0xfe, 0xd8, + 0xff, 0xe0, 0x9c, 0x3f, 0x8b, 0xb6, 0x2f, 0xfa, 0x5e, 0x9e, 0x26, 0xcb, + 0x29, 0x07, 0x40, 0x1c, 0x4b, 0x8d, 0xcc, 0x1c, +}; +static const unsigned char kat2019_addinreseed[] = {0}; +static const unsigned char kat2019_addin0[] = {0}; +static const unsigned char kat2019_addin1[] = {0}; +static const unsigned char kat2019_retbits[] = { + 0xe5, 0xeb, 0x35, 0x3c, 0xf0, 0xad, 0xbe, 0xf2, 0xe6, 0xc6, 0x2d, 0x74, + 0x58, 0x76, 0xa8, 0x35, 0x65, 0x9a, 0x3a, 0x94, 0xcd, 0xd2, 0x32, 0x8b, + 0xcc, 0xa6, 0xab, 0xf9, 0x6a, 0xd9, 0x63, 0x7b, 0xe2, 0xff, 0x68, 0xe2, + 0x7b, 0x8e, 0x7c, 0xc4, 0x5a, 0x3b, 0x79, 0xd2, 0x57, 0x36, 0x61, 0x81, + 0x9e, 0xc6, 0x84, 0xea, 0xb3, 0x4a, 0xba, 0x07, 0xc1, 0xfa, 0xe6, 0xab, + 0x81, 0xc9, 0x88, 0xcd, +}; +static const struct drbg_kat_pr_false kat2019_t = { + 8, kat2019_entropyin, kat2019_nonce, kat2019_persstr, + kat2019_entropyinreseed, kat2019_addinreseed, kat2019_addin0, + kat2019_addin1, kat2019_retbits +}; +static const struct drbg_kat kat2019 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2019_t +}; + +static const unsigned char kat2020_entropyin[] = { + 0x2c, 0x07, 0x7b, 0xd7, 0x8a, 0x88, 0x67, 0xc6, 0x27, 0xc8, 0x56, 0xd8, + 0xf0, 0x4d, 0x7d, 0x6f, 0x1d, 0x21, 0x62, 0x23, 0x2b, 0x33, 0x91, 0x6a, + 0x94, 0x69, 0x97, 0xf4, 0xfb, 0x0f, 0xcf, 0x55, +}; +static const unsigned char kat2020_nonce[] = { + 0xf0, 0x12, 0x36, 0xe4, 0x57, 0x55, 0xd7, 0x21, 0xd5, 0x75, 0xc4, 0xe9, + 0x30, 0x41, 0x70, 0xb0, +}; +static const unsigned char kat2020_persstr[] = { + 0x57, 0xef, 0xc6, 0x0e, 0x69, 0x31, 0x51, 0xfb, 0xaf, 0x60, 0x51, 0xde, + 0x84, 0xfa, 0x04, 0x29, 0xb4, 0xea, 0xff, 0x35, 0xfe, 0xb7, 0xe8, 0x24, + 0xc2, 0xfb, 0xbd, 0x69, 0x2f, 0xb8, 0xd6, 0x8f, +}; +static const unsigned char kat2020_entropyinreseed[] = { + 0x15, 0x1f, 0xeb, 0xac, 0xbf, 0x94, 0x9e, 0x12, 0x93, 0x71, 0x0a, 0x12, + 0x50, 0xd2, 0x29, 0xec, 0x02, 0xba, 0x4d, 0xf1, 0x0b, 0x50, 0xab, 0xc2, + 0x74, 0x2f, 0x08, 0x3e, 0x3f, 0x92, 0x3a, 0xbf, +}; +static const unsigned char kat2020_addinreseed[] = {0}; +static const unsigned char kat2020_addin0[] = {0}; +static const unsigned char kat2020_addin1[] = {0}; +static const unsigned char kat2020_retbits[] = { + 0xa6, 0xcc, 0x43, 0x1f, 0xb6, 0x26, 0xa9, 0x26, 0x21, 0x0f, 0xf7, 0xd3, + 0x08, 0x4e, 0x13, 0x3d, 0xbf, 0x00, 0xb2, 0x2d, 0x98, 0x77, 0xa0, 0x7c, + 0x82, 0x22, 0x1b, 0x1a, 0x5e, 0xbd, 0x77, 0xea, 0x67, 0x19, 0x50, 0x16, + 0x0e, 0xb2, 0x98, 0x18, 0x4a, 0xfc, 0x62, 0x37, 0x31, 0xa2, 0x22, 0x5b, + 0x6c, 0x67, 0x10, 0x4b, 0x85, 0xb9, 0x10, 0x22, 0xad, 0x9d, 0x33, 0xe8, + 0x49, 0x5a, 0xcf, 0xad, +}; +static const struct drbg_kat_pr_false kat2020_t = { + 9, kat2020_entropyin, kat2020_nonce, kat2020_persstr, + kat2020_entropyinreseed, kat2020_addinreseed, kat2020_addin0, + kat2020_addin1, kat2020_retbits +}; +static const struct drbg_kat kat2020 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2020_t +}; + +static const unsigned char kat2021_entropyin[] = { + 0x68, 0x5d, 0xe1, 0xf0, 0x40, 0x67, 0x8f, 0x2e, 0x86, 0x11, 0x1f, 0x7a, + 0xbf, 0x2f, 0x75, 0x96, 0x49, 0x3b, 0xaa, 0xc9, 0x32, 0xdd, 0x9e, 0xd0, + 0x1f, 0xb7, 0x0a, 0xef, 0xab, 0x40, 0xfe, 0x03, +}; +static const unsigned char kat2021_nonce[] = { + 0x5c, 0xcd, 0xe2, 0x40, 0xd7, 0xff, 0x22, 0x93, 0x09, 0x1a, 0x58, 0xde, + 0x55, 0x60, 0x2c, 0xa9, +}; +static const unsigned char kat2021_persstr[] = { + 0x3b, 0x18, 0x89, 0x2f, 0xea, 0xb0, 0x83, 0xb5, 0x30, 0x37, 0x1d, 0x6e, + 0xb5, 0x99, 0x82, 0x8a, 0x58, 0xa7, 0x6a, 0x34, 0x6f, 0x2a, 0x25, 0xa4, + 0x12, 0xf5, 0xd4, 0x60, 0x6f, 0x2f, 0x0b, 0xaa, +}; +static const unsigned char kat2021_entropyinreseed[] = { + 0x3e, 0x7a, 0x1c, 0xb8, 0xbc, 0xc4, 0xf2, 0xc2, 0xc6, 0x26, 0x2b, 0x1b, + 0x8f, 0xa7, 0xbd, 0xc2, 0x0a, 0xac, 0x98, 0xe3, 0xf4, 0x25, 0xf7, 0x81, + 0xc7, 0xd6, 0x85, 0xbb, 0x43, 0xfe, 0x38, 0x3b, +}; +static const unsigned char kat2021_addinreseed[] = {0}; +static const unsigned char kat2021_addin0[] = {0}; +static const unsigned char kat2021_addin1[] = {0}; +static const unsigned char kat2021_retbits[] = { + 0xd8, 0x7b, 0x0e, 0xf2, 0x3e, 0x09, 0xb1, 0xc6, 0xf1, 0x26, 0x72, 0x68, + 0x02, 0x95, 0x28, 0xc7, 0x6b, 0x3e, 0x3a, 0x66, 0x48, 0xc6, 0x74, 0xfe, + 0x92, 0x48, 0x68, 0x69, 0xa4, 0x7f, 0x78, 0x92, 0xe5, 0x66, 0x0f, 0x88, + 0x5d, 0x0f, 0xd2, 0xe6, 0xb2, 0xa2, 0x28, 0x85, 0x61, 0xd0, 0x75, 0x75, + 0xc6, 0x60, 0x68, 0x99, 0xa6, 0x55, 0x1c, 0x4f, 0x3e, 0x2f, 0x14, 0xca, + 0x75, 0xc4, 0x35, 0xc5, +}; +static const struct drbg_kat_pr_false kat2021_t = { + 10, kat2021_entropyin, kat2021_nonce, kat2021_persstr, + kat2021_entropyinreseed, kat2021_addinreseed, kat2021_addin0, + kat2021_addin1, kat2021_retbits +}; +static const struct drbg_kat kat2021 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2021_t +}; + +static const unsigned char kat2022_entropyin[] = { + 0xeb, 0x4b, 0x9c, 0x2e, 0x64, 0x18, 0x80, 0xe8, 0x57, 0xa2, 0xba, 0xeb, + 0xc8, 0xcb, 0xf9, 0x18, 0x24, 0xba, 0x35, 0xd2, 0x63, 0x99, 0xa7, 0xca, + 0xed, 0xc1, 0x1e, 0xa4, 0x2d, 0x7c, 0x85, 0x8d, +}; +static const unsigned char kat2022_nonce[] = { + 0xf4, 0x81, 0x90, 0x53, 0xac, 0x38, 0x8f, 0x63, 0x44, 0xe8, 0xd0, 0x6f, + 0xc9, 0x40, 0x67, 0xa3, +}; +static const unsigned char kat2022_persstr[] = { + 0x10, 0xbe, 0x74, 0x84, 0x45, 0x06, 0x56, 0x6a, 0x1d, 0xb5, 0x52, 0x93, + 0x2c, 0x9a, 0xff, 0xb3, 0x14, 0xb8, 0x9c, 0x83, 0x43, 0x43, 0x07, 0xb8, + 0x73, 0xa0, 0x12, 0x6f, 0x4c, 0xf2, 0x8a, 0x77, +}; +static const unsigned char kat2022_entropyinreseed[] = { + 0x66, 0x82, 0x6d, 0x4b, 0x8e, 0xc8, 0x03, 0x8f, 0x71, 0x99, 0xd9, 0x6c, + 0x84, 0x95, 0x96, 0x1a, 0x0a, 0x74, 0xe3, 0x91, 0xbd, 0x28, 0x99, 0xf0, + 0x45, 0x80, 0x59, 0xea, 0x4d, 0x2e, 0xdd, 0xe3, +}; +static const unsigned char kat2022_addinreseed[] = {0}; +static const unsigned char kat2022_addin0[] = {0}; +static const unsigned char kat2022_addin1[] = {0}; +static const unsigned char kat2022_retbits[] = { + 0x83, 0xb7, 0x38, 0xbd, 0xb8, 0x63, 0xcc, 0x77, 0x12, 0xea, 0xbc, 0xe9, + 0x3f, 0xb9, 0x35, 0xa0, 0xc0, 0x18, 0x34, 0xba, 0xa1, 0x18, 0xae, 0x99, + 0xa6, 0x16, 0x3b, 0x5d, 0xc0, 0x5a, 0x71, 0xb0, 0x2b, 0x93, 0xe8, 0xeb, + 0xfd, 0x6a, 0x20, 0xde, 0xb3, 0xd5, 0x4e, 0x18, 0x50, 0xf8, 0x2d, 0x96, + 0xaf, 0xba, 0xb2, 0xc1, 0x3b, 0x1f, 0xaa, 0x27, 0xc5, 0xbb, 0x01, 0x28, + 0x18, 0x02, 0xe2, 0xf1, +}; +static const struct drbg_kat_pr_false kat2022_t = { + 11, kat2022_entropyin, kat2022_nonce, kat2022_persstr, + kat2022_entropyinreseed, kat2022_addinreseed, kat2022_addin0, + kat2022_addin1, kat2022_retbits +}; +static const struct drbg_kat kat2022 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2022_t +}; + +static const unsigned char kat2023_entropyin[] = { + 0x6e, 0xe0, 0xc8, 0x75, 0xd0, 0x8c, 0xe1, 0x2c, 0xb1, 0x0f, 0xfa, 0x82, + 0x4b, 0xe2, 0xb7, 0x57, 0x13, 0x90, 0x1d, 0xfa, 0xd2, 0xd9, 0x43, 0x09, + 0xa1, 0xec, 0xc4, 0xb5, 0x1a, 0xdc, 0x37, 0xcb, +}; +static const unsigned char kat2023_nonce[] = { + 0xc0, 0x3e, 0x8e, 0xf1, 0x0c, 0x25, 0x39, 0x43, 0xa0, 0x58, 0x01, 0xb7, + 0xc0, 0xd0, 0x4e, 0x70, +}; +static const unsigned char kat2023_persstr[] = { + 0x0e, 0x71, 0x7d, 0xb9, 0x6e, 0xbc, 0xf8, 0x94, 0xc0, 0x18, 0x28, 0x07, + 0xeb, 0x49, 0x1a, 0x87, 0x19, 0xcf, 0xd4, 0x33, 0xec, 0x02, 0xda, 0xda, + 0xb7, 0xba, 0x2f, 0xbd, 0xea, 0xb1, 0x08, 0x5c, +}; +static const unsigned char kat2023_entropyinreseed[] = { + 0xcd, 0x6d, 0x2a, 0x32, 0x4c, 0xd3, 0x8f, 0x3a, 0xae, 0x6e, 0xf8, 0xe9, + 0x3d, 0xe7, 0x01, 0xf0, 0x72, 0x5c, 0x3c, 0x08, 0xf0, 0x7d, 0x35, 0x70, + 0xd6, 0xc8, 0xc0, 0x1b, 0x65, 0x25, 0xc1, 0x8c, +}; +static const unsigned char kat2023_addinreseed[] = {0}; +static const unsigned char kat2023_addin0[] = {0}; +static const unsigned char kat2023_addin1[] = {0}; +static const unsigned char kat2023_retbits[] = { + 0xdc, 0x5e, 0x7a, 0xa2, 0x2a, 0x72, 0x2c, 0x62, 0xd6, 0x83, 0x91, 0xe1, + 0xa5, 0x97, 0x93, 0xab, 0x4f, 0x27, 0xef, 0x9f, 0x1c, 0xb2, 0xc3, 0x24, + 0x7b, 0xbf, 0x94, 0xc3, 0x39, 0x17, 0x6a, 0xe8, 0x10, 0x10, 0xc3, 0x0c, + 0x75, 0x57, 0x29, 0x71, 0xbe, 0x8f, 0x78, 0xa6, 0xcf, 0x8c, 0xb4, 0xc3, + 0xff, 0x13, 0xbd, 0xf0, 0x0c, 0x0e, 0x3a, 0x25, 0x9e, 0xa7, 0x03, 0x06, + 0xbc, 0x0b, 0x4b, 0x02, +}; +static const struct drbg_kat_pr_false kat2023_t = { + 12, kat2023_entropyin, kat2023_nonce, kat2023_persstr, + kat2023_entropyinreseed, kat2023_addinreseed, kat2023_addin0, + kat2023_addin1, kat2023_retbits +}; +static const struct drbg_kat kat2023 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2023_t +}; + +static const unsigned char kat2024_entropyin[] = { + 0x60, 0x0b, 0xab, 0x60, 0x15, 0x80, 0x02, 0xdb, 0xae, 0x08, 0x65, 0x77, + 0x57, 0x13, 0xcb, 0x02, 0x45, 0x3f, 0xb5, 0x25, 0xd5, 0xcd, 0xae, 0xbd, + 0x8a, 0xd3, 0x23, 0x03, 0xab, 0x9c, 0xf8, 0x6b, +}; +static const unsigned char kat2024_nonce[] = { + 0x66, 0x1a, 0x0b, 0x68, 0x0f, 0x2b, 0x76, 0x82, 0xc1, 0x57, 0xe0, 0x1c, + 0x99, 0xd8, 0x3f, 0xa9, +}; +static const unsigned char kat2024_persstr[] = { + 0x1c, 0x16, 0xa8, 0x11, 0x08, 0x0b, 0xe7, 0x4b, 0x86, 0x2f, 0x9f, 0x64, + 0xd4, 0xba, 0x0a, 0xc8, 0x96, 0x44, 0x39, 0xbd, 0xa0, 0xe5, 0x60, 0x58, + 0x4b, 0x7f, 0xe8, 0xe5, 0xd6, 0x7e, 0x9d, 0x62, +}; +static const unsigned char kat2024_entropyinreseed[] = { + 0xaa, 0x15, 0xf2, 0x6c, 0x20, 0x5d, 0x46, 0xc2, 0x0f, 0xbc, 0xc5, 0xe8, + 0x88, 0x3d, 0xf0, 0xa2, 0xb9, 0x1a, 0xc3, 0x13, 0x9a, 0x3c, 0x1f, 0xb5, + 0x8f, 0x1f, 0xff, 0x17, 0xb1, 0xce, 0x0d, 0x95, +}; +static const unsigned char kat2024_addinreseed[] = {0}; +static const unsigned char kat2024_addin0[] = {0}; +static const unsigned char kat2024_addin1[] = {0}; +static const unsigned char kat2024_retbits[] = { + 0xab, 0x59, 0xd0, 0x63, 0x60, 0x45, 0xcc, 0x34, 0x63, 0x47, 0x84, 0x50, + 0xdf, 0x2e, 0x6e, 0x9e, 0x08, 0xc2, 0x09, 0x04, 0x15, 0x44, 0xfc, 0x15, + 0xd3, 0x2d, 0xed, 0xb6, 0x41, 0x75, 0x6f, 0x15, 0x20, 0x7a, 0xc7, 0xa4, + 0xdd, 0x56, 0xdc, 0x00, 0x6e, 0xf9, 0xe5, 0x20, 0x54, 0x66, 0x90, 0x4a, + 0x47, 0xb5, 0xe5, 0x11, 0x66, 0x7c, 0x7d, 0x14, 0x1e, 0x1b, 0x9a, 0xe9, + 0xd9, 0xd6, 0xa8, 0x61, +}; +static const struct drbg_kat_pr_false kat2024_t = { + 13, kat2024_entropyin, kat2024_nonce, kat2024_persstr, + kat2024_entropyinreseed, kat2024_addinreseed, kat2024_addin0, + kat2024_addin1, kat2024_retbits +}; +static const struct drbg_kat kat2024 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2024_t +}; + +static const unsigned char kat2025_entropyin[] = { + 0xff, 0xec, 0x8a, 0x7f, 0x17, 0x0f, 0xff, 0x95, 0x26, 0x68, 0x72, 0x8c, + 0x9c, 0x93, 0x90, 0xe7, 0x1b, 0xa4, 0x13, 0x8f, 0xde, 0x68, 0x40, 0x53, + 0x35, 0x13, 0x76, 0xd7, 0xab, 0x54, 0x86, 0x4e, +}; +static const unsigned char kat2025_nonce[] = { + 0xa2, 0x70, 0x70, 0xb7, 0x10, 0xe5, 0xae, 0xe5, 0xfa, 0xd9, 0xc6, 0x05, + 0xdf, 0x1c, 0x34, 0xd5, +}; +static const unsigned char kat2025_persstr[] = { + 0xdb, 0xc5, 0x11, 0x3e, 0xf0, 0xd4, 0xc4, 0xe6, 0x1a, 0x27, 0x4c, 0xf6, + 0x66, 0x18, 0x19, 0xfc, 0x41, 0xbf, 0x2f, 0x91, 0xf2, 0xe4, 0x4f, 0x39, + 0xdf, 0x43, 0xa7, 0x6c, 0xce, 0x0c, 0x84, 0xde, +}; +static const unsigned char kat2025_entropyinreseed[] = { + 0xed, 0xe1, 0x52, 0x73, 0x04, 0x75, 0x08, 0x0f, 0x4b, 0x8c, 0xaf, 0xdd, + 0x33, 0xef, 0xd0, 0xe7, 0xd0, 0x35, 0x29, 0xc0, 0x68, 0x34, 0xfd, 0x5c, + 0x62, 0xcf, 0x07, 0x08, 0xdc, 0x96, 0x1d, 0x31, +}; +static const unsigned char kat2025_addinreseed[] = {0}; +static const unsigned char kat2025_addin0[] = {0}; +static const unsigned char kat2025_addin1[] = {0}; +static const unsigned char kat2025_retbits[] = { + 0x0c, 0x50, 0x98, 0xb7, 0xbb, 0xc8, 0xb8, 0xe2, 0x04, 0x5d, 0xd6, 0xac, + 0x82, 0x50, 0x8f, 0x83, 0x6c, 0x9e, 0x05, 0x9c, 0x07, 0x0e, 0x04, 0x99, + 0xbc, 0xbe, 0x58, 0xb2, 0x0d, 0x98, 0x43, 0xf2, 0x58, 0xa6, 0xcb, 0xeb, + 0xdc, 0x05, 0x54, 0x68, 0x6c, 0xc0, 0x45, 0x07, 0xdc, 0x58, 0x9c, 0xaf, + 0xf4, 0x60, 0xf0, 0xe9, 0xb8, 0xdb, 0xd9, 0xd9, 0xe6, 0xa8, 0x4a, 0x36, + 0x54, 0x9e, 0x77, 0xeb, +}; +static const struct drbg_kat_pr_false kat2025_t = { + 14, kat2025_entropyin, kat2025_nonce, kat2025_persstr, + kat2025_entropyinreseed, kat2025_addinreseed, kat2025_addin0, + kat2025_addin1, kat2025_retbits +}; +static const struct drbg_kat kat2025 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2025_t +}; + +static const unsigned char kat2026_entropyin[] = { + 0x6c, 0x0f, 0xf3, 0x73, 0x51, 0xe7, 0x87, 0xd3, 0x58, 0x05, 0x81, 0x07, + 0x50, 0x39, 0x48, 0x54, 0xdf, 0xc7, 0xb3, 0x70, 0x4c, 0xad, 0xea, 0x32, + 0x59, 0x34, 0x58, 0xe1, 0xef, 0x67, 0xf2, 0xdc, +}; +static const unsigned char kat2026_nonce[] = { + 0xf0, 0xd3, 0x42, 0xf2, 0xcb, 0x12, 0x70, 0xed, 0x3c, 0xc9, 0x35, 0xb1, + 0xd3, 0x05, 0x9d, 0x0f, +}; +static const unsigned char kat2026_persstr[] = { + 0xe1, 0xb9, 0x5c, 0x70, 0x69, 0xbb, 0x22, 0x47, 0x5d, 0x5a, 0x7a, 0x99, + 0xfc, 0x8b, 0xee, 0xdc, 0xed, 0x73, 0xbb, 0xed, 0x78, 0x5c, 0x73, 0xce, + 0x56, 0x63, 0x74, 0x0c, 0x46, 0x56, 0x88, 0x84, +}; +static const unsigned char kat2026_entropyinreseed[] = { + 0x11, 0x40, 0xa4, 0x7d, 0xbe, 0x3b, 0x89, 0x36, 0x29, 0x22, 0xb3, 0x75, + 0x50, 0x23, 0x00, 0xc7, 0xe7, 0x56, 0x62, 0x24, 0xac, 0xca, 0xc3, 0xeb, + 0xdb, 0x99, 0xc8, 0xfa, 0x77, 0x65, 0x94, 0xdd, +}; +static const unsigned char kat2026_addinreseed[] = { + 0x66, 0xcc, 0xb8, 0xdd, 0xaf, 0x02, 0x01, 0xa7, 0xf2, 0xf7, 0xfe, 0xf0, + 0x49, 0x39, 0xf2, 0xc8, 0x02, 0xe4, 0x80, 0xe4, 0xac, 0xc1, 0xc3, 0x17, + 0x75, 0x71, 0xf3, 0x42, 0x48, 0xbb, 0xfc, 0xe1, +}; +static const unsigned char kat2026_addin0[] = { + 0x53, 0xf7, 0x4b, 0xa9, 0xd0, 0xeb, 0x69, 0x01, 0x0c, 0xc4, 0xed, 0xa1, + 0xda, 0x03, 0x7c, 0x8e, 0x60, 0x56, 0xc1, 0x15, 0x42, 0x48, 0xbc, 0xf4, + 0x63, 0x2b, 0x44, 0xd6, 0xa5, 0x98, 0x11, 0xf1, +}; +static const unsigned char kat2026_addin1[] = { + 0x1c, 0xdb, 0xb5, 0x31, 0x80, 0x3e, 0x7b, 0xca, 0xc8, 0xde, 0x8a, 0xaf, + 0x9c, 0x35, 0x34, 0x18, 0x4c, 0xf7, 0x37, 0xc9, 0xce, 0xda, 0x1a, 0x7a, + 0x16, 0x05, 0x6b, 0x0c, 0x53, 0xa8, 0x28, 0xff, +}; +static const unsigned char kat2026_retbits[] = { + 0x74, 0x3e, 0x9c, 0xb6, 0x03, 0x89, 0xd6, 0x49, 0x11, 0x3a, 0x93, 0xe9, + 0xba, 0x35, 0x00, 0xad, 0xcf, 0xf0, 0x51, 0x93, 0x93, 0x46, 0x02, 0x79, + 0x7c, 0x5a, 0x36, 0x08, 0x4d, 0xc1, 0xb3, 0xf2, 0xdb, 0x7c, 0x65, 0xd7, + 0xb6, 0x42, 0x5d, 0xbf, 0x3b, 0xb5, 0x72, 0x23, 0x9e, 0x88, 0x45, 0xa0, + 0x5b, 0x3e, 0xe5, 0x36, 0x6b, 0x53, 0x8a, 0x10, 0x10, 0xd4, 0xfe, 0x2a, + 0x09, 0x19, 0xc1, 0xa9, +}; +static const struct drbg_kat_pr_false kat2026_t = { + 0, kat2026_entropyin, kat2026_nonce, kat2026_persstr, + kat2026_entropyinreseed, kat2026_addinreseed, kat2026_addin0, + kat2026_addin1, kat2026_retbits +}; +static const struct drbg_kat kat2026 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2026_t +}; + +static const unsigned char kat2027_entropyin[] = { + 0x0c, 0x02, 0x9b, 0xad, 0x3e, 0x7f, 0x1d, 0xdf, 0x54, 0x2d, 0x54, 0x48, + 0x82, 0xfe, 0x1a, 0x00, 0x92, 0xed, 0xb6, 0xcf, 0x2a, 0x3a, 0x22, 0x02, + 0xd8, 0x84, 0x86, 0x90, 0x4e, 0xef, 0x78, 0x59, +}; +static const unsigned char kat2027_nonce[] = { + 0x9e, 0x6e, 0xe0, 0x2c, 0x4b, 0x52, 0x0d, 0x4f, 0xc1, 0x26, 0x2e, 0x28, + 0x33, 0xd8, 0xe2, 0x46, +}; +static const unsigned char kat2027_persstr[] = { + 0x2f, 0x24, 0xa5, 0xd9, 0xbf, 0x88, 0x93, 0xa0, 0xf2, 0xd3, 0x3a, 0x66, + 0x5b, 0x1b, 0x18, 0x72, 0x9e, 0x96, 0x33, 0x0e, 0x22, 0xf6, 0xe5, 0xa2, + 0x9b, 0xbb, 0xb4, 0xa9, 0xe8, 0x89, 0xec, 0x30, +}; +static const unsigned char kat2027_entropyinreseed[] = { + 0x7e, 0xc4, 0x50, 0x63, 0xb8, 0x77, 0xf4, 0x97, 0x38, 0xac, 0x80, 0x20, + 0xc0, 0xa7, 0x64, 0xef, 0xbf, 0xc1, 0x66, 0x7c, 0x7d, 0xba, 0x37, 0xa6, + 0x52, 0xf0, 0xfc, 0x6a, 0x03, 0xd0, 0xb1, 0x53, +}; +static const unsigned char kat2027_addinreseed[] = { + 0x74, 0xb7, 0x1d, 0x1d, 0x5b, 0x8b, 0x5d, 0x8c, 0x24, 0xf4, 0x4b, 0x75, + 0x7b, 0xa8, 0x79, 0x89, 0xd3, 0xea, 0x75, 0x7c, 0xcf, 0xc5, 0xb7, 0xf4, + 0xc4, 0x26, 0xe7, 0xd7, 0x2c, 0xbd, 0xe9, 0xf8, +}; +static const unsigned char kat2027_addin0[] = { + 0xec, 0x30, 0xeb, 0x4c, 0x56, 0xb8, 0xf6, 0x1f, 0x5d, 0x61, 0x52, 0x6b, + 0xf1, 0x83, 0x07, 0x45, 0xfd, 0xe9, 0xf0, 0x7a, 0x4d, 0xbd, 0x50, 0xfb, + 0x50, 0x2b, 0x27, 0x08, 0x7f, 0x42, 0xf4, 0x2f, +}; +static const unsigned char kat2027_addin1[] = { + 0xb4, 0x0b, 0x2e, 0x8f, 0x9d, 0x51, 0x7e, 0x64, 0x35, 0x6f, 0xd8, 0x98, + 0x17, 0x60, 0x19, 0x61, 0xd2, 0x21, 0x96, 0xfd, 0xbe, 0x74, 0x92, 0x79, + 0xb3, 0x21, 0xba, 0xa6, 0x1e, 0x72, 0xd6, 0x28, +}; +static const unsigned char kat2027_retbits[] = { + 0x70, 0xdb, 0x96, 0x9c, 0x96, 0x75, 0x5d, 0x28, 0xa1, 0x3a, 0xdf, 0xff, + 0x66, 0x6c, 0x0a, 0xa6, 0x2f, 0x0d, 0xbe, 0x13, 0x20, 0x52, 0x22, 0xb6, + 0x4e, 0xc4, 0x97, 0x03, 0x1e, 0x73, 0x4a, 0xa9, 0x57, 0xbd, 0xf8, 0x7b, + 0x72, 0xb2, 0xbe, 0x56, 0x53, 0xe1, 0x05, 0x1a, 0xb5, 0x55, 0x19, 0x31, + 0x00, 0x79, 0x78, 0xe8, 0x7f, 0x6b, 0xda, 0x21, 0x5f, 0x43, 0x58, 0xdc, + 0x08, 0x42, 0x77, 0x46, +}; +static const struct drbg_kat_pr_false kat2027_t = { + 1, kat2027_entropyin, kat2027_nonce, kat2027_persstr, + kat2027_entropyinreseed, kat2027_addinreseed, kat2027_addin0, + kat2027_addin1, kat2027_retbits +}; +static const struct drbg_kat kat2027 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2027_t +}; + +static const unsigned char kat2028_entropyin[] = { + 0x68, 0xc4, 0xf1, 0x36, 0xb5, 0xc4, 0xe2, 0x3d, 0x67, 0x6c, 0xa2, 0x41, + 0xb9, 0x01, 0x32, 0xd8, 0x30, 0xd8, 0xf3, 0xc4, 0x47, 0x8a, 0x9b, 0xc0, + 0x63, 0x96, 0x00, 0xe9, 0xc0, 0x62, 0xdd, 0xa7, +}; +static const unsigned char kat2028_nonce[] = { + 0x4f, 0x35, 0x04, 0x2b, 0xc4, 0x18, 0xd6, 0xcd, 0x9b, 0x1b, 0x1f, 0xf6, + 0x67, 0x6b, 0xb8, 0xf3, +}; +static const unsigned char kat2028_persstr[] = { + 0x7d, 0x9e, 0xe5, 0x89, 0x15, 0x99, 0x90, 0xf1, 0x26, 0xdb, 0x66, 0xb0, + 0xee, 0x59, 0x47, 0x58, 0xb7, 0x52, 0x03, 0x7c, 0x06, 0x08, 0x4c, 0xae, + 0x35, 0x4f, 0x02, 0x13, 0x0f, 0x0f, 0xce, 0x05, +}; +static const unsigned char kat2028_entropyinreseed[] = { + 0xb7, 0xe6, 0x83, 0xd1, 0x79, 0x7f, 0xe3, 0x64, 0xdd, 0x95, 0xe8, 0x4f, + 0x47, 0xd2, 0x16, 0xe0, 0x4d, 0xe2, 0xef, 0x9d, 0xfc, 0x51, 0xdb, 0x88, + 0x7c, 0x56, 0x8a, 0x16, 0x22, 0x1c, 0x8c, 0xbe, +}; +static const unsigned char kat2028_addinreseed[] = { + 0xe4, 0x48, 0x8b, 0x56, 0x54, 0x19, 0x70, 0x7a, 0x46, 0x14, 0x78, 0x5f, + 0xe7, 0xde, 0x43, 0x18, 0xa1, 0x8a, 0xbf, 0x7b, 0xda, 0xee, 0x54, 0xbd, + 0x60, 0x9c, 0x17, 0x39, 0x87, 0xa2, 0x6a, 0x2d, +}; +static const unsigned char kat2028_addin0[] = { + 0x4e, 0xd5, 0xcb, 0x9b, 0x2b, 0x7e, 0x2b, 0xb7, 0xa9, 0x66, 0xca, 0xcb, + 0x9e, 0x7c, 0x7e, 0xe7, 0xc5, 0x8c, 0xb6, 0xde, 0x45, 0xe6, 0xf7, 0xd9, + 0x1d, 0xa4, 0x3d, 0xe0, 0xc6, 0x25, 0xc4, 0x3b, +}; +static const unsigned char kat2028_addin1[] = { + 0x45, 0x48, 0x14, 0x0c, 0xf5, 0xfc, 0x79, 0x02, 0xed, 0xee, 0x67, 0x34, + 0x0f, 0x38, 0xed, 0x2e, 0xd8, 0x30, 0x1c, 0xc3, 0x5c, 0xd4, 0xa6, 0xbf, + 0x27, 0x1e, 0xfa, 0x89, 0x7b, 0x1e, 0xba, 0x6b, +}; +static const unsigned char kat2028_retbits[] = { + 0x8b, 0x91, 0xdb, 0xf2, 0xa5, 0x67, 0x9f, 0x95, 0x87, 0xeb, 0xc3, 0x51, + 0x4a, 0x36, 0x45, 0xa6, 0x88, 0x10, 0xdc, 0x87, 0x74, 0x6c, 0x66, 0xa2, + 0x2c, 0xea, 0x59, 0x9a, 0x90, 0xf3, 0x4d, 0xde, 0x9d, 0x4c, 0x13, 0x0b, + 0xae, 0xc3, 0x5e, 0xdc, 0x0c, 0x2f, 0x10, 0x46, 0x37, 0xb6, 0xd4, 0x0a, + 0x4b, 0x69, 0x5a, 0x11, 0xbb, 0x55, 0xe8, 0x6a, 0x36, 0x17, 0x5e, 0x63, + 0x12, 0x4a, 0x4e, 0x5d, +}; +static const struct drbg_kat_pr_false kat2028_t = { + 2, kat2028_entropyin, kat2028_nonce, kat2028_persstr, + kat2028_entropyinreseed, kat2028_addinreseed, kat2028_addin0, + kat2028_addin1, kat2028_retbits +}; +static const struct drbg_kat kat2028 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2028_t +}; + +static const unsigned char kat2029_entropyin[] = { + 0xa9, 0x36, 0x3e, 0x0b, 0x2b, 0x09, 0x97, 0xe1, 0x1c, 0x5d, 0xf6, 0x8c, + 0xcd, 0x5b, 0xc5, 0x3d, 0x10, 0xd9, 0xb9, 0xc6, 0x84, 0xe0, 0x69, 0x76, + 0x11, 0x41, 0xdc, 0xf7, 0x71, 0xac, 0x64, 0x76, +}; +static const unsigned char kat2029_nonce[] = { + 0xb8, 0xf8, 0xdf, 0xfe, 0x03, 0x48, 0x1c, 0x63, 0x21, 0x15, 0xec, 0x4e, + 0x95, 0xd2, 0x06, 0x22, +}; +static const unsigned char kat2029_persstr[] = { + 0x13, 0x4f, 0x93, 0xf5, 0xee, 0x3c, 0x5d, 0x88, 0x41, 0x6a, 0xc0, 0xf4, + 0xee, 0xa9, 0x05, 0xd4, 0xba, 0x2b, 0xfc, 0xe3, 0x1b, 0xc4, 0x04, 0x12, + 0xe8, 0xa3, 0xb9, 0x02, 0xa9, 0xfe, 0xb6, 0x49, +}; +static const unsigned char kat2029_entropyinreseed[] = { + 0xd0, 0xcc, 0x63, 0xe9, 0xce, 0xd8, 0x29, 0x24, 0xde, 0x6a, 0x8e, 0x91, + 0x72, 0x4c, 0xc3, 0x91, 0x36, 0xbc, 0x2a, 0xe3, 0x92, 0x89, 0xb4, 0x39, + 0xad, 0x90, 0x27, 0x7d, 0xdc, 0xfd, 0x28, 0xcf, +}; +static const unsigned char kat2029_addinreseed[] = { + 0x8c, 0x17, 0x6a, 0x3d, 0xa6, 0x62, 0x16, 0xf0, 0xf3, 0x47, 0x64, 0x0e, + 0x34, 0xf6, 0x97, 0x9e, 0xb5, 0x21, 0xc8, 0xdb, 0x3e, 0x44, 0x75, 0xb8, + 0x13, 0x90, 0xad, 0x8f, 0xd8, 0x9b, 0xf2, 0xae, +}; +static const unsigned char kat2029_addin0[] = { + 0xe6, 0x47, 0x75, 0x65, 0x00, 0xca, 0xfe, 0x3e, 0xaf, 0xdb, 0x93, 0x41, + 0x69, 0xc8, 0x36, 0x84, 0x10, 0x39, 0x26, 0x3f, 0x90, 0xa4, 0x4c, 0x1d, + 0x78, 0x97, 0x7b, 0x79, 0x4f, 0xbc, 0x4b, 0x01, +}; +static const unsigned char kat2029_addin1[] = { + 0x56, 0xe7, 0x5d, 0x3a, 0xa5, 0xf9, 0xb4, 0xd4, 0x34, 0xf5, 0x3d, 0x18, + 0x63, 0x47, 0x09, 0x03, 0xdd, 0x71, 0xbd, 0x12, 0x7e, 0x30, 0x1a, 0x7e, + 0x59, 0xb3, 0x53, 0xc2, 0x29, 0xc2, 0xae, 0xe0, +}; +static const unsigned char kat2029_retbits[] = { + 0x83, 0x42, 0x31, 0x25, 0x59, 0x5f, 0xa9, 0xd0, 0x20, 0xb2, 0x35, 0x91, + 0x8d, 0xb9, 0x28, 0xef, 0x5d, 0xe2, 0xb7, 0xb5, 0x7a, 0x2a, 0xb3, 0x94, + 0x07, 0x1e, 0x57, 0x77, 0xd2, 0x52, 0xcd, 0x13, 0x69, 0x18, 0xd9, 0xf4, + 0x33, 0x92, 0x0f, 0x09, 0xda, 0xd1, 0x3d, 0xbf, 0x36, 0x44, 0x9e, 0x2c, + 0x9c, 0x26, 0x86, 0x59, 0x9a, 0x20, 0x94, 0x65, 0x71, 0x16, 0x79, 0x74, + 0x92, 0xbe, 0x73, 0x27, +}; +static const struct drbg_kat_pr_false kat2029_t = { + 3, kat2029_entropyin, kat2029_nonce, kat2029_persstr, + kat2029_entropyinreseed, kat2029_addinreseed, kat2029_addin0, + kat2029_addin1, kat2029_retbits +}; +static const struct drbg_kat kat2029 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2029_t +}; + +static const unsigned char kat2030_entropyin[] = { + 0xf2, 0xe6, 0x5a, 0x05, 0xb7, 0x5c, 0x87, 0x50, 0xc1, 0x79, 0xbf, 0x07, + 0x71, 0x5d, 0xaf, 0x35, 0x08, 0xc0, 0x8c, 0xdc, 0x04, 0xac, 0xaa, 0x22, + 0x3c, 0x93, 0xcf, 0xae, 0xba, 0xd2, 0x00, 0x15, +}; +static const unsigned char kat2030_nonce[] = { + 0xa3, 0x34, 0x0a, 0xc8, 0x8f, 0xca, 0x36, 0x0a, 0x72, 0x8b, 0x5c, 0x9a, + 0x73, 0x53, 0x7c, 0xac, +}; +static const unsigned char kat2030_persstr[] = { + 0x13, 0x64, 0x6f, 0xba, 0xc9, 0x38, 0x30, 0x56, 0x09, 0x1c, 0xad, 0x95, + 0xf8, 0xc6, 0xd8, 0x77, 0xb0, 0x91, 0x6f, 0x3b, 0xb9, 0xc2, 0xac, 0xb1, + 0xaf, 0xf6, 0xa6, 0xe9, 0x7f, 0xc3, 0xf5, 0x39, +}; +static const unsigned char kat2030_entropyinreseed[] = { + 0x34, 0xd6, 0x97, 0x77, 0xcb, 0x99, 0x3a, 0x4b, 0xe6, 0x65, 0x83, 0x30, + 0x9c, 0xe0, 0xbc, 0x2a, 0x67, 0x66, 0xdf, 0xf0, 0x5a, 0x26, 0xef, 0x41, + 0x83, 0xf1, 0x1f, 0x7e, 0xe6, 0x54, 0xe4, 0x36, +}; +static const unsigned char kat2030_addinreseed[] = { + 0x80, 0x31, 0xea, 0x87, 0x92, 0x09, 0x69, 0x1a, 0x68, 0x24, 0x06, 0x80, + 0x34, 0x31, 0x1d, 0x7c, 0x91, 0x53, 0xbb, 0x26, 0x63, 0x4b, 0x4f, 0x72, + 0x85, 0xda, 0xdb, 0x9b, 0xbd, 0xdf, 0x89, 0x5f, +}; +static const unsigned char kat2030_addin0[] = { + 0xfb, 0x68, 0x41, 0x6c, 0x48, 0x54, 0x27, 0x21, 0xa2, 0x0f, 0x2e, 0xdc, + 0x1e, 0xe3, 0xad, 0x21, 0x0d, 0xaf, 0xb6, 0xb5, 0x29, 0x18, 0x38, 0xc2, + 0x17, 0x1b, 0x79, 0xc7, 0xe8, 0x45, 0x78, 0xfa, +}; +static const unsigned char kat2030_addin1[] = { + 0xee, 0x20, 0x66, 0xa2, 0x10, 0xd9, 0x6d, 0x2a, 0xe2, 0xde, 0x62, 0xc3, + 0xb7, 0xcd, 0x8f, 0x62, 0xa2, 0x82, 0x00, 0x6d, 0x6f, 0xc0, 0xd6, 0x9f, + 0xa4, 0x03, 0x57, 0x04, 0x90, 0x9b, 0x98, 0x1b, +}; +static const unsigned char kat2030_retbits[] = { + 0x44, 0xf3, 0x34, 0x50, 0xff, 0x56, 0x59, 0x3e, 0x77, 0xfc, 0x51, 0x16, + 0xbd, 0xbb, 0xa5, 0xa1, 0x70, 0x83, 0xed, 0xaf, 0x0d, 0xd0, 0xd2, 0x07, + 0x07, 0x96, 0xc5, 0x55, 0xf3, 0xea, 0x2d, 0x35, 0x89, 0xa5, 0x5d, 0x54, + 0x1d, 0xcd, 0x83, 0x4b, 0x5e, 0x3d, 0xf2, 0x81, 0x45, 0x4e, 0x84, 0xf8, + 0x1f, 0xda, 0xe9, 0x41, 0x35, 0x8b, 0x57, 0x52, 0xa3, 0x66, 0xee, 0xee, + 0x0a, 0x56, 0x5a, 0xd0, +}; +static const struct drbg_kat_pr_false kat2030_t = { + 4, kat2030_entropyin, kat2030_nonce, kat2030_persstr, + kat2030_entropyinreseed, kat2030_addinreseed, kat2030_addin0, + kat2030_addin1, kat2030_retbits +}; +static const struct drbg_kat kat2030 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2030_t +}; + +static const unsigned char kat2031_entropyin[] = { + 0x5d, 0x48, 0x06, 0x2e, 0x6d, 0xbe, 0xb6, 0x9d, 0x09, 0x09, 0x29, 0xd8, + 0x9d, 0x12, 0x7c, 0xe5, 0x4e, 0xf2, 0xc3, 0x37, 0x3e, 0x22, 0x2c, 0x3c, + 0xed, 0x1f, 0x1d, 0xa2, 0x33, 0xd0, 0xf6, 0xa9, +}; +static const unsigned char kat2031_nonce[] = { + 0x97, 0x01, 0x39, 0x53, 0x20, 0xdb, 0xd4, 0x43, 0x7e, 0x67, 0x87, 0x6f, + 0x97, 0x83, 0x42, 0xd8, +}; +static const unsigned char kat2031_persstr[] = { + 0xb9, 0x76, 0xfa, 0x12, 0x84, 0x1d, 0xc6, 0x31, 0x4e, 0xfd, 0xc9, 0xb3, + 0xb4, 0xd2, 0xe3, 0xcc, 0x1e, 0x5d, 0x8d, 0xf4, 0x34, 0x5f, 0x33, 0xad, + 0xc0, 0x47, 0xa8, 0xe8, 0x13, 0x5e, 0xbd, 0xa0, +}; +static const unsigned char kat2031_entropyinreseed[] = { + 0xd9, 0xef, 0x5e, 0x9a, 0x53, 0x4a, 0xe3, 0x20, 0xf1, 0x70, 0x58, 0xdf, + 0x52, 0xc0, 0xbb, 0x3a, 0xa0, 0x22, 0x60, 0xbd, 0xd5, 0x19, 0x19, 0xe0, + 0xd6, 0x8c, 0x7b, 0x6d, 0x58, 0xe1, 0xca, 0x43, +}; +static const unsigned char kat2031_addinreseed[] = { + 0x12, 0x0b, 0xd1, 0xc3, 0xc2, 0x1b, 0xe3, 0x46, 0x52, 0x03, 0xe2, 0x91, + 0x2e, 0x9a, 0xd5, 0xef, 0x2f, 0x83, 0x36, 0xa2, 0x0e, 0x5d, 0xbf, 0x87, + 0x35, 0x3d, 0xa5, 0x65, 0x32, 0x2b, 0x18, 0x52, +}; +static const unsigned char kat2031_addin0[] = { + 0xdb, 0x2d, 0x4a, 0x5c, 0xff, 0x0e, 0xf5, 0xab, 0x75, 0x75, 0x26, 0xfc, + 0x04, 0x66, 0x63, 0x10, 0x85, 0xad, 0xbb, 0x88, 0x20, 0x86, 0x87, 0xc1, + 0x0a, 0x72, 0x81, 0xb5, 0xa2, 0x5d, 0x58, 0x38, +}; +static const unsigned char kat2031_addin1[] = { + 0x0f, 0x3f, 0xc9, 0x16, 0xb1, 0xf6, 0x60, 0x46, 0x6e, 0x0a, 0xdc, 0xf2, + 0xc4, 0x2d, 0xf0, 0x76, 0x2c, 0xc6, 0xac, 0x4a, 0x1e, 0x07, 0xd1, 0x42, + 0x0e, 0x04, 0x48, 0x6c, 0x59, 0x3e, 0x40, 0xab, +}; +static const unsigned char kat2031_retbits[] = { + 0x20, 0x0f, 0x5d, 0xe4, 0x66, 0xcf, 0x4a, 0xd5, 0x74, 0x27, 0x54, 0x3d, + 0x95, 0x50, 0x2b, 0x50, 0x42, 0xa8, 0xc2, 0x3e, 0x0d, 0xc9, 0xd8, 0xaf, + 0x45, 0x9f, 0x27, 0x76, 0xbd, 0x3c, 0x78, 0xa7, 0x6a, 0x91, 0xaa, 0xc4, + 0x8f, 0xa3, 0x49, 0xb3, 0xe0, 0x28, 0x33, 0xf1, 0xb7, 0xe1, 0x97, 0x74, + 0xf3, 0x51, 0xdb, 0xf8, 0x1c, 0x2a, 0x66, 0xf0, 0xe9, 0xa0, 0xc0, 0x16, + 0x89, 0xd3, 0x88, 0xa8, +}; +static const struct drbg_kat_pr_false kat2031_t = { + 5, kat2031_entropyin, kat2031_nonce, kat2031_persstr, + kat2031_entropyinreseed, kat2031_addinreseed, kat2031_addin0, + kat2031_addin1, kat2031_retbits +}; +static const struct drbg_kat kat2031 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2031_t +}; + +static const unsigned char kat2032_entropyin[] = { + 0xd2, 0x59, 0xf3, 0xfd, 0x16, 0xfe, 0xeb, 0x67, 0xd1, 0x76, 0x67, 0xfe, + 0x82, 0xea, 0x29, 0x17, 0x61, 0x91, 0x8f, 0xc2, 0x94, 0x76, 0x62, 0x69, + 0xba, 0x2c, 0xb5, 0x6a, 0x36, 0x76, 0xed, 0xd2, +}; +static const unsigned char kat2032_nonce[] = { + 0x58, 0x2c, 0x05, 0x83, 0x8e, 0x16, 0x38, 0x1e, 0x6d, 0xc1, 0x04, 0x6d, + 0x78, 0x4f, 0xfd, 0xf8, +}; +static const unsigned char kat2032_persstr[] = { + 0x94, 0xca, 0x52, 0xda, 0x42, 0x4c, 0xc0, 0x71, 0x72, 0xc2, 0x07, 0x50, + 0xdf, 0x5f, 0xed, 0xdb, 0x68, 0xf2, 0x8f, 0xe7, 0x94, 0x46, 0x1e, 0x51, + 0xc9, 0x2c, 0xc6, 0x45, 0x1f, 0xf5, 0x8c, 0x0f, +}; +static const unsigned char kat2032_entropyinreseed[] = { + 0x1b, 0x98, 0xe4, 0xa8, 0x62, 0x0c, 0xa5, 0xf9, 0x52, 0x05, 0x83, 0xb7, + 0x53, 0xc2, 0x22, 0xed, 0xa5, 0x54, 0x0a, 0x87, 0x36, 0xd8, 0xa3, 0xe7, + 0x84, 0xd0, 0x1b, 0x75, 0xfc, 0x8a, 0xe3, 0x5d, +}; +static const unsigned char kat2032_addinreseed[] = { + 0xe6, 0xe1, 0xfb, 0x6b, 0xe9, 0x07, 0xc8, 0x43, 0xc9, 0x9b, 0x5a, 0x85, + 0xe6, 0x21, 0xaf, 0xd2, 0x2e, 0xb1, 0xac, 0x18, 0xb5, 0x41, 0xa6, 0x95, + 0x9c, 0x2a, 0xef, 0x14, 0xaa, 0x8e, 0xb8, 0x54, +}; +static const unsigned char kat2032_addin0[] = { + 0x43, 0x6b, 0xfc, 0xb8, 0x0f, 0x97, 0x4d, 0x5e, 0x28, 0x15, 0xe2, 0x1e, + 0xc0, 0x92, 0x5c, 0x8e, 0x0e, 0x41, 0x46, 0xda, 0xbe, 0xb2, 0xad, 0x6a, + 0xe7, 0x6d, 0x11, 0x8b, 0xf4, 0xd9, 0xfa, 0x9a, +}; +static const unsigned char kat2032_addin1[] = { + 0x11, 0xd4, 0x15, 0x3c, 0xf7, 0x7f, 0xa5, 0xb1, 0xb5, 0x8a, 0xce, 0x5c, + 0xa0, 0x1d, 0x73, 0x70, 0x99, 0xb4, 0xc2, 0xad, 0xb5, 0x7f, 0xc2, 0xfb, + 0xf2, 0x8f, 0xb5, 0x8e, 0x5f, 0xd3, 0xea, 0x50, +}; +static const unsigned char kat2032_retbits[] = { + 0x1c, 0x39, 0xba, 0x5e, 0xd9, 0x63, 0x28, 0xec, 0x66, 0x56, 0x8d, 0x3c, + 0xeb, 0x77, 0x89, 0x4f, 0x12, 0x24, 0x0f, 0x0f, 0xdc, 0xf0, 0x65, 0x11, + 0x9c, 0xd8, 0x41, 0x15, 0x1c, 0xb8, 0x60, 0xca, 0xa6, 0x4f, 0x74, 0xbb, + 0x1b, 0x19, 0x98, 0x32, 0x25, 0x25, 0x4b, 0x3b, 0x58, 0xfe, 0x97, 0xbf, + 0xfb, 0xd2, 0x0b, 0x57, 0xa9, 0x49, 0x23, 0x89, 0xd6, 0x2c, 0x2b, 0x54, + 0x2d, 0x53, 0xfb, 0x64, +}; +static const struct drbg_kat_pr_false kat2032_t = { + 6, kat2032_entropyin, kat2032_nonce, kat2032_persstr, + kat2032_entropyinreseed, kat2032_addinreseed, kat2032_addin0, + kat2032_addin1, kat2032_retbits +}; +static const struct drbg_kat kat2032 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2032_t +}; + +static const unsigned char kat2033_entropyin[] = { + 0xf3, 0x6e, 0x6a, 0xb1, 0x6a, 0x4d, 0xc1, 0xa6, 0x8e, 0xad, 0x3c, 0x8f, + 0xb5, 0xfd, 0x4a, 0x9b, 0x22, 0xeb, 0x15, 0xe2, 0x43, 0x96, 0x46, 0x57, + 0x89, 0x5d, 0x02, 0xce, 0xb5, 0xca, 0x9b, 0x75, +}; +static const unsigned char kat2033_nonce[] = { + 0xcb, 0x55, 0x56, 0x1e, 0x35, 0xc4, 0x41, 0x8b, 0x6c, 0x22, 0x75, 0xb5, + 0x0d, 0xe5, 0x7d, 0xf1, +}; +static const unsigned char kat2033_persstr[] = { + 0x9c, 0x60, 0x4b, 0xa9, 0x91, 0x03, 0x66, 0x68, 0x57, 0x98, 0xf0, 0xc2, + 0x10, 0x44, 0x78, 0x9e, 0xb8, 0xfa, 0x3a, 0x51, 0xf9, 0x9a, 0x7e, 0xd4, + 0x51, 0xca, 0x3a, 0x6e, 0x22, 0x3e, 0xc3, 0x4a, +}; +static const unsigned char kat2033_entropyinreseed[] = { + 0x9f, 0xf7, 0x9a, 0xea, 0xb2, 0x49, 0x8f, 0xde, 0xe0, 0x9a, 0x35, 0x55, + 0x79, 0x98, 0xe8, 0x00, 0xec, 0xc1, 0x62, 0xff, 0xe0, 0xd5, 0x62, 0x91, + 0xe5, 0x76, 0x01, 0x1e, 0x23, 0x68, 0x09, 0xdc, +}; +static const unsigned char kat2033_addinreseed[] = { + 0x0b, 0x86, 0x5e, 0x50, 0xb6, 0x19, 0x82, 0x1f, 0x53, 0xe6, 0x3e, 0x06, + 0x84, 0xd1, 0xce, 0xa2, 0x7a, 0xba, 0xc0, 0xbe, 0x27, 0xf1, 0x20, 0x6a, + 0xb1, 0xa6, 0xe4, 0x7f, 0xf0, 0x3e, 0xcf, 0x47, +}; +static const unsigned char kat2033_addin0[] = { + 0x4e, 0x2b, 0x14, 0x2f, 0x77, 0xdb, 0x9e, 0xa7, 0xf2, 0x9f, 0x6a, 0x93, + 0x85, 0xa4, 0xae, 0x22, 0xbf, 0xcc, 0xcf, 0x81, 0x1f, 0x7f, 0xdf, 0x8a, + 0x5e, 0x5f, 0x4a, 0x0f, 0x6f, 0x32, 0x5c, 0x99, +}; +static const unsigned char kat2033_addin1[] = { + 0x46, 0x92, 0x2a, 0xd3, 0x87, 0x71, 0x54, 0x90, 0x11, 0xfc, 0x80, 0xe7, + 0x46, 0x33, 0x4e, 0x15, 0x85, 0x3c, 0x04, 0x46, 0x19, 0xae, 0xd6, 0x84, + 0x7f, 0xc7, 0xc6, 0x2e, 0x60, 0x04, 0xf2, 0x98, +}; +static const unsigned char kat2033_retbits[] = { + 0xe1, 0x3d, 0x04, 0x6e, 0x9d, 0xa6, 0xa6, 0x03, 0x66, 0xee, 0x3c, 0x7c, + 0xe2, 0x0b, 0x59, 0xcf, 0x55, 0x5e, 0x41, 0xfa, 0xf5, 0x8b, 0xab, 0x05, + 0x1a, 0xa4, 0x0c, 0x35, 0xa2, 0x07, 0xa3, 0x16, 0x63, 0x4d, 0x17, 0x95, + 0x1f, 0x8c, 0x17, 0x51, 0xa2, 0x64, 0x13, 0xca, 0x25, 0xea, 0x2e, 0x94, + 0x62, 0xcd, 0x3d, 0x9c, 0xe8, 0xff, 0xf3, 0xb3, 0x53, 0xf9, 0x10, 0x76, + 0xa3, 0x2a, 0xd6, 0xe2, +}; +static const struct drbg_kat_pr_false kat2033_t = { + 7, kat2033_entropyin, kat2033_nonce, kat2033_persstr, + kat2033_entropyinreseed, kat2033_addinreseed, kat2033_addin0, + kat2033_addin1, kat2033_retbits +}; +static const struct drbg_kat kat2033 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2033_t +}; + +static const unsigned char kat2034_entropyin[] = { + 0xf9, 0xb2, 0x9d, 0x40, 0x98, 0x2e, 0xa2, 0x73, 0xa6, 0xb3, 0x5b, 0xec, + 0x95, 0x3c, 0x6e, 0x9b, 0x77, 0xab, 0x90, 0x4f, 0xef, 0x3b, 0x55, 0x40, + 0x8e, 0xb4, 0xde, 0x51, 0x73, 0x19, 0xb7, 0x92, +}; +static const unsigned char kat2034_nonce[] = { + 0x76, 0x5c, 0x54, 0x2b, 0xc6, 0xfa, 0xda, 0x9f, 0x68, 0x72, 0xfa, 0xaf, + 0x63, 0xe7, 0xb9, 0x53, +}; +static const unsigned char kat2034_persstr[] = { + 0x9c, 0xef, 0xad, 0x9c, 0x60, 0x51, 0x1e, 0x2f, 0x67, 0xa1, 0x69, 0x56, + 0x0f, 0x7d, 0x4e, 0x5e, 0xc5, 0x31, 0xaf, 0xa7, 0x4e, 0x83, 0xa5, 0x69, + 0xe8, 0x39, 0xed, 0xcd, 0x47, 0xef, 0x46, 0xaa, +}; +static const unsigned char kat2034_entropyinreseed[] = { + 0x97, 0x7e, 0x45, 0xdf, 0xf8, 0x78, 0xec, 0xec, 0x24, 0xbe, 0x75, 0x9f, + 0xfe, 0x70, 0x37, 0x32, 0xf6, 0x16, 0x73, 0xdb, 0x62, 0x6f, 0x07, 0xc0, + 0x0e, 0x94, 0x64, 0xc6, 0x9b, 0x2e, 0x08, 0x24, +}; +static const unsigned char kat2034_addinreseed[] = { + 0xa4, 0xb1, 0x50, 0x28, 0x86, 0x23, 0xbb, 0x82, 0x21, 0x6a, 0x96, 0xef, + 0x1f, 0xb6, 0x73, 0x4f, 0xda, 0x32, 0x24, 0xbe, 0xa5, 0x65, 0xa5, 0x65, + 0xde, 0xe4, 0x1e, 0x5b, 0x7c, 0xec, 0x95, 0x00, +}; +static const unsigned char kat2034_addin0[] = { + 0x6a, 0x16, 0x5a, 0xb0, 0x41, 0xc1, 0x2c, 0x31, 0xb9, 0x8a, 0x40, 0x78, + 0xd8, 0xca, 0x90, 0x7c, 0x2a, 0x08, 0x41, 0x20, 0x60, 0x4f, 0x85, 0x9c, + 0x63, 0x09, 0x43, 0xef, 0x25, 0x13, 0x1c, 0x6f, +}; +static const unsigned char kat2034_addin1[] = { + 0x5e, 0x59, 0x18, 0xcc, 0x94, 0x39, 0x63, 0x7a, 0x96, 0xfb, 0x3c, 0xb3, + 0xb1, 0x7e, 0x46, 0x8b, 0xda, 0xcd, 0x8b, 0x87, 0x4e, 0x2c, 0xf1, 0x4b, + 0x56, 0x40, 0x34, 0xdd, 0xb4, 0x7d, 0x1e, 0x20, +}; +static const unsigned char kat2034_retbits[] = { + 0xe3, 0x97, 0xc6, 0x10, 0x46, 0x55, 0x59, 0x2c, 0xbc, 0x9b, 0x8e, 0x14, + 0xab, 0x5d, 0x08, 0x22, 0x86, 0x6d, 0xe4, 0x31, 0x48, 0x8f, 0x45, 0x2e, + 0xac, 0xfe, 0x42, 0x3e, 0x69, 0x41, 0x10, 0x9c, 0x47, 0xea, 0x4a, 0x43, + 0x88, 0xa6, 0x72, 0x3b, 0x40, 0x73, 0xc0, 0xe8, 0x96, 0x37, 0x7b, 0x0d, + 0x2f, 0x35, 0x2d, 0x6f, 0xb9, 0x60, 0x1d, 0x7f, 0xb5, 0xbc, 0x73, 0xc0, + 0x4c, 0x52, 0x4d, 0xe8, +}; +static const struct drbg_kat_pr_false kat2034_t = { + 8, kat2034_entropyin, kat2034_nonce, kat2034_persstr, + kat2034_entropyinreseed, kat2034_addinreseed, kat2034_addin0, + kat2034_addin1, kat2034_retbits +}; +static const struct drbg_kat kat2034 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2034_t +}; + +static const unsigned char kat2035_entropyin[] = { + 0x3d, 0xdf, 0xa0, 0xf5, 0x78, 0x09, 0xbe, 0x74, 0x56, 0xfc, 0x8f, 0xb8, + 0xc4, 0xeb, 0xbc, 0x20, 0x40, 0x49, 0x6a, 0xef, 0x79, 0x27, 0x58, 0xee, + 0xbb, 0x72, 0x84, 0xe2, 0x36, 0x99, 0xc2, 0x0c, +}; +static const unsigned char kat2035_nonce[] = { + 0xa1, 0x83, 0x9a, 0x77, 0x56, 0x1f, 0xf3, 0xe4, 0x06, 0x19, 0x78, 0xf8, + 0xf4, 0x22, 0x70, 0x8c, +}; +static const unsigned char kat2035_persstr[] = { + 0x88, 0x9b, 0x72, 0x24, 0x6e, 0x71, 0x33, 0x39, 0x45, 0xc7, 0xcf, 0x9f, + 0x4d, 0x70, 0x6d, 0x6d, 0xdd, 0x7b, 0x1c, 0xf0, 0x9a, 0x59, 0xc5, 0x7c, + 0xe8, 0x82, 0xdb, 0xf3, 0xab, 0x3c, 0x88, 0xc7, +}; +static const unsigned char kat2035_entropyinreseed[] = { + 0x6d, 0x26, 0xd6, 0x1a, 0xec, 0x8f, 0x12, 0x2b, 0x50, 0xf9, 0x02, 0x2b, + 0xda, 0x1f, 0x09, 0x73, 0xb1, 0x4c, 0x5c, 0x3e, 0x5d, 0x16, 0xbe, 0x2c, + 0x88, 0x39, 0x8e, 0x35, 0x28, 0x65, 0x4b, 0x6b, +}; +static const unsigned char kat2035_addinreseed[] = { + 0x50, 0x13, 0x8a, 0x1c, 0x11, 0x8b, 0x36, 0xc7, 0x5a, 0x05, 0x2a, 0xad, + 0x17, 0x0c, 0xda, 0x2c, 0xd4, 0xc0, 0x11, 0x36, 0xd6, 0x2b, 0x88, 0x40, + 0x97, 0xd6, 0x4b, 0x8b, 0xe2, 0xa8, 0x87, 0x60, +}; +static const unsigned char kat2035_addin0[] = { + 0x45, 0xe5, 0x70, 0x24, 0x61, 0xdd, 0x9b, 0xc7, 0x26, 0x15, 0x8e, 0x6c, + 0x96, 0xc6, 0x96, 0xf5, 0x19, 0xf8, 0x07, 0xa5, 0x8e, 0xdd, 0xfe, 0xc7, + 0x9e, 0x50, 0xf3, 0x8a, 0x03, 0xb6, 0x5a, 0x29, +}; +static const unsigned char kat2035_addin1[] = { + 0x34, 0x8f, 0x61, 0x37, 0x0c, 0xa8, 0x04, 0xe6, 0x4d, 0x42, 0x19, 0xae, + 0xc7, 0xb7, 0xa9, 0x61, 0x0d, 0xe4, 0x43, 0x19, 0x05, 0x10, 0x7b, 0x2a, + 0xb9, 0x33, 0x62, 0xf4, 0xbc, 0x19, 0xd8, 0xf1, +}; +static const unsigned char kat2035_retbits[] = { + 0xfc, 0xc0, 0xdc, 0x7a, 0xed, 0x0e, 0x56, 0x94, 0x05, 0x8e, 0xd3, 0xc6, + 0x21, 0x34, 0x6d, 0x5c, 0xb5, 0xcf, 0xef, 0x49, 0xd3, 0xc0, 0x46, 0x73, + 0x80, 0x23, 0x45, 0x6f, 0x17, 0x57, 0x7b, 0xc0, 0x86, 0x15, 0x94, 0xec, + 0x01, 0x81, 0x49, 0xb3, 0x66, 0xb4, 0x02, 0xdd, 0x64, 0x30, 0x3d, 0x4b, + 0x0e, 0x36, 0xfc, 0xb8, 0x95, 0xf3, 0xc6, 0xa5, 0x08, 0x3f, 0xd2, 0x89, + 0x80, 0x35, 0x5b, 0xc1, +}; +static const struct drbg_kat_pr_false kat2035_t = { + 9, kat2035_entropyin, kat2035_nonce, kat2035_persstr, + kat2035_entropyinreseed, kat2035_addinreseed, kat2035_addin0, + kat2035_addin1, kat2035_retbits +}; +static const struct drbg_kat kat2035 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2035_t +}; + +static const unsigned char kat2036_entropyin[] = { + 0x77, 0x82, 0x8e, 0xfc, 0xe8, 0x2d, 0xfc, 0x95, 0x5f, 0x77, 0x84, 0x99, + 0x7a, 0x70, 0xdf, 0xf8, 0xfe, 0x11, 0xcc, 0xc7, 0x25, 0xcd, 0x1b, 0xa2, + 0xd6, 0xa1, 0x1e, 0xd6, 0x73, 0xa0, 0x6b, 0x38, +}; +static const unsigned char kat2036_nonce[] = { + 0x5e, 0x2d, 0xe9, 0xfe, 0x7e, 0xec, 0xeb, 0x0a, 0x5b, 0xd7, 0xc1, 0xfe, + 0x5f, 0xb6, 0x30, 0x1e, +}; +static const unsigned char kat2036_persstr[] = { + 0x26, 0x78, 0x11, 0x51, 0x52, 0xd3, 0xa5, 0xd2, 0x5a, 0x86, 0x30, 0x31, + 0x29, 0x87, 0x56, 0x55, 0x09, 0xfd, 0x85, 0xcb, 0xc0, 0xac, 0xcc, 0x26, + 0x2c, 0x14, 0x03, 0x0e, 0x5e, 0xd4, 0x48, 0xa8, +}; +static const unsigned char kat2036_entropyinreseed[] = { + 0xaf, 0x77, 0x49, 0x41, 0x5d, 0xe1, 0xb5, 0x53, 0xfa, 0x6b, 0x20, 0xa1, + 0x92, 0x3e, 0xf3, 0x48, 0xf7, 0xef, 0x60, 0x19, 0x0d, 0x02, 0x88, 0x15, + 0x5d, 0x57, 0x94, 0xcd, 0x8f, 0xff, 0x4e, 0x45, +}; +static const unsigned char kat2036_addinreseed[] = { + 0x97, 0xe8, 0x11, 0x74, 0xb5, 0x07, 0x69, 0xbd, 0xb0, 0xb4, 0x3d, 0xc7, + 0x44, 0xb1, 0xfa, 0xbe, 0x08, 0x55, 0x05, 0xc3, 0x54, 0xb2, 0xf6, 0xa7, + 0xde, 0x38, 0xa5, 0x30, 0xc1, 0x06, 0x06, 0x9b, +}; +static const unsigned char kat2036_addin0[] = { + 0x6f, 0xc0, 0x2b, 0xbc, 0xc3, 0x07, 0x59, 0x46, 0xdd, 0x5c, 0xd8, 0x10, + 0xe6, 0x77, 0x18, 0x8c, 0xf6, 0x91, 0x18, 0x66, 0x5d, 0x04, 0xf1, 0x5c, + 0xe6, 0x67, 0x1e, 0x5b, 0xb5, 0xbb, 0xe7, 0xa3, +}; +static const unsigned char kat2036_addin1[] = { + 0xe7, 0x67, 0x4e, 0x18, 0xae, 0x38, 0xaa, 0x10, 0xf4, 0x4a, 0x0e, 0x24, + 0x1c, 0x9c, 0x74, 0xf8, 0xd6, 0xe5, 0x70, 0x66, 0x6b, 0xf5, 0x3e, 0x02, + 0x3c, 0xe1, 0x1e, 0x5c, 0x1c, 0x2c, 0x0a, 0x02, +}; +static const unsigned char kat2036_retbits[] = { + 0x13, 0x89, 0xc9, 0x04, 0xca, 0xc5, 0x90, 0x8a, 0xc5, 0x72, 0x85, 0xbc, + 0x5f, 0xa5, 0xbe, 0xfe, 0x12, 0xf8, 0x10, 0x0d, 0x0e, 0x50, 0xd0, 0x9f, + 0x01, 0xd1, 0x37, 0xa9, 0x7d, 0x6c, 0xf6, 0x21, 0x14, 0xa6, 0xbd, 0x18, + 0xa4, 0xd8, 0xbc, 0x81, 0x23, 0xae, 0x4c, 0xbc, 0x63, 0x03, 0xe2, 0x98, + 0x30, 0xe6, 0xb3, 0x01, 0xac, 0x29, 0x4f, 0xcd, 0x0f, 0xd4, 0x1d, 0x17, + 0x39, 0xbb, 0x28, 0x0d, +}; +static const struct drbg_kat_pr_false kat2036_t = { + 10, kat2036_entropyin, kat2036_nonce, kat2036_persstr, + kat2036_entropyinreseed, kat2036_addinreseed, kat2036_addin0, + kat2036_addin1, kat2036_retbits +}; +static const struct drbg_kat kat2036 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2036_t +}; + +static const unsigned char kat2037_entropyin[] = { + 0x55, 0x57, 0xed, 0xbd, 0x85, 0x34, 0x9f, 0x61, 0x6b, 0x8b, 0x52, 0x59, + 0xc9, 0x55, 0xd6, 0x7e, 0x19, 0x8f, 0x96, 0xa9, 0xe3, 0x6c, 0x23, 0x66, + 0x02, 0x46, 0x48, 0x53, 0x8f, 0x11, 0xd9, 0xda, +}; +static const unsigned char kat2037_nonce[] = { + 0x33, 0xce, 0x40, 0x59, 0xe8, 0xbd, 0xe0, 0x8d, 0x74, 0xa0, 0x25, 0x9c, + 0x14, 0x10, 0x94, 0x67, +}; +static const unsigned char kat2037_persstr[] = { + 0x81, 0xd2, 0x6a, 0xc8, 0x78, 0x52, 0xec, 0x42, 0x81, 0x01, 0xbb, 0x00, + 0xe4, 0xcf, 0xd3, 0xf0, 0xc3, 0xbb, 0x46, 0xf2, 0xe9, 0xf0, 0x5f, 0xc7, + 0x89, 0xfb, 0x58, 0x96, 0x93, 0xfe, 0x66, 0x16, +}; +static const unsigned char kat2037_entropyinreseed[] = { + 0x6a, 0xfc, 0x50, 0x03, 0xb7, 0xc1, 0x96, 0xc5, 0xe5, 0xc6, 0x86, 0x20, + 0x76, 0x55, 0x38, 0x5f, 0x55, 0xf7, 0xe2, 0x07, 0xf7, 0xab, 0x28, 0xb5, + 0x3a, 0x94, 0xb0, 0xab, 0x5b, 0x2a, 0xdf, 0x8c, +}; +static const unsigned char kat2037_addinreseed[] = { + 0x66, 0x1f, 0x9d, 0x57, 0x13, 0x1b, 0x78, 0x89, 0xd6, 0x5d, 0xf4, 0xe4, + 0x44, 0xec, 0xd4, 0x1b, 0x32, 0x5c, 0x11, 0x22, 0x85, 0xea, 0xb1, 0x36, + 0x73, 0x9f, 0x11, 0x7e, 0x6e, 0xcc, 0xa4, 0xb4, +}; +static const unsigned char kat2037_addin0[] = { + 0x03, 0x98, 0x30, 0x95, 0xb3, 0x12, 0xf8, 0x15, 0xe0, 0x1d, 0x0c, 0x24, + 0x03, 0xcd, 0xa2, 0xbb, 0x22, 0x2f, 0xcc, 0xd5, 0xb5, 0xa6, 0xa5, 0xf1, + 0x6c, 0x85, 0x96, 0xf5, 0x56, 0xfa, 0x80, 0x70, +}; +static const unsigned char kat2037_addin1[] = { + 0x14, 0xb8, 0x44, 0x64, 0x46, 0x87, 0x77, 0x60, 0x22, 0xae, 0x0d, 0x4e, + 0x5c, 0xc3, 0x5b, 0xa9, 0xb7, 0x7f, 0xeb, 0x70, 0x0d, 0x17, 0xac, 0x5b, + 0xdb, 0x7e, 0x5c, 0x62, 0x74, 0x47, 0x7c, 0xfa, +}; +static const unsigned char kat2037_retbits[] = { + 0x5c, 0xd9, 0x4c, 0x38, 0xb3, 0x4a, 0x13, 0x18, 0x46, 0x88, 0x64, 0x39, + 0x4c, 0x5a, 0x0e, 0x8f, 0x3b, 0xbe, 0x99, 0xa5, 0xbc, 0x76, 0x27, 0xe6, + 0x05, 0x71, 0xed, 0x0f, 0x0e, 0xb5, 0x9d, 0x2f, 0xa5, 0x89, 0xaf, 0xb2, + 0xdc, 0xa4, 0x72, 0x63, 0x06, 0xb0, 0x9c, 0x11, 0xe0, 0x79, 0xe1, 0xd6, + 0x00, 0x9b, 0x6e, 0x52, 0x03, 0x36, 0x8b, 0x23, 0x9d, 0xd5, 0x93, 0x1d, + 0x8a, 0x3e, 0xa8, 0x57, +}; +static const struct drbg_kat_pr_false kat2037_t = { + 11, kat2037_entropyin, kat2037_nonce, kat2037_persstr, + kat2037_entropyinreseed, kat2037_addinreseed, kat2037_addin0, + kat2037_addin1, kat2037_retbits +}; +static const struct drbg_kat kat2037 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2037_t +}; + +static const unsigned char kat2038_entropyin[] = { + 0xb7, 0xa4, 0x83, 0x79, 0xbb, 0x37, 0x60, 0xea, 0xa6, 0x1a, 0x73, 0x3c, + 0x9b, 0x13, 0xd0, 0x07, 0x9b, 0xc7, 0x62, 0xec, 0xaf, 0x7c, 0xb3, 0x3a, + 0xdc, 0x47, 0xfd, 0xab, 0xe1, 0x60, 0xb6, 0xed, +}; +static const unsigned char kat2038_nonce[] = { + 0x90, 0xce, 0xe0, 0x92, 0x75, 0xcc, 0x0d, 0xa2, 0x95, 0x5c, 0xbd, 0xc8, + 0x17, 0xc9, 0x26, 0x9d, +}; +static const unsigned char kat2038_persstr[] = { + 0x3a, 0x93, 0x3b, 0x47, 0x64, 0x07, 0x4a, 0xfb, 0xd7, 0x5f, 0x08, 0x0b, + 0x7e, 0x6d, 0x7e, 0xa7, 0xad, 0x28, 0x83, 0x7f, 0x14, 0xbc, 0xae, 0x18, + 0x73, 0xbd, 0xe7, 0xa7, 0xab, 0x7b, 0x08, 0x5b, +}; +static const unsigned char kat2038_entropyinreseed[] = { + 0xe1, 0xbd, 0x1f, 0x81, 0x20, 0xc8, 0xdc, 0x41, 0x8c, 0x5c, 0xca, 0x4e, + 0x76, 0x7e, 0x4a, 0xb7, 0x74, 0x83, 0x37, 0xce, 0xf9, 0x88, 0xb2, 0x59, + 0x88, 0x00, 0xd6, 0x09, 0xa0, 0x2b, 0xa1, 0x45, +}; +static const unsigned char kat2038_addinreseed[] = { + 0x04, 0xed, 0x95, 0x64, 0x79, 0x76, 0xce, 0x36, 0xe0, 0xbb, 0xb3, 0x2e, + 0xbd, 0xaf, 0xa7, 0xd3, 0x2d, 0x01, 0x1f, 0xc6, 0xf1, 0x3f, 0x09, 0x8e, + 0x70, 0xdc, 0x10, 0xf5, 0x1a, 0x2b, 0x41, 0x1d, +}; +static const unsigned char kat2038_addin0[] = { + 0x4e, 0x43, 0x12, 0xc6, 0x9f, 0x41, 0x56, 0xdc, 0xd6, 0x33, 0x48, 0x1c, + 0xf8, 0x2d, 0x9f, 0x77, 0x7d, 0x40, 0x2f, 0xfe, 0x17, 0x58, 0x4e, 0x6d, + 0xa7, 0x72, 0x14, 0x47, 0x6f, 0x00, 0x11, 0x6e, +}; +static const unsigned char kat2038_addin1[] = { + 0xce, 0xdb, 0xaf, 0x29, 0x7d, 0xc8, 0xc8, 0x38, 0x20, 0xdb, 0x61, 0x47, + 0xd4, 0xad, 0x9c, 0xc8, 0x06, 0xcf, 0x63, 0x26, 0x89, 0xb8, 0x1f, 0x02, + 0xdb, 0xc9, 0x5a, 0x1e, 0x74, 0xea, 0xac, 0x81, +}; +static const unsigned char kat2038_retbits[] = { + 0x74, 0x61, 0xdf, 0x9d, 0x63, 0x4f, 0xd4, 0x73, 0x85, 0x67, 0x70, 0x90, + 0xc4, 0x78, 0xd0, 0xa4, 0xd9, 0x67, 0xcd, 0x9c, 0xec, 0x61, 0x60, 0x08, + 0x83, 0xd7, 0x00, 0xa5, 0xd5, 0xf8, 0xd2, 0xa5, 0x47, 0xfb, 0x3a, 0xae, + 0x9c, 0x2b, 0x64, 0x17, 0xaa, 0xef, 0x1c, 0x5c, 0x3f, 0xa6, 0x28, 0xfd, + 0x25, 0xb0, 0x12, 0x60, 0x0b, 0x78, 0xbb, 0x88, 0xed, 0xdd, 0x8c, 0x80, + 0x9c, 0x77, 0xcb, 0xfc, +}; +static const struct drbg_kat_pr_false kat2038_t = { + 12, kat2038_entropyin, kat2038_nonce, kat2038_persstr, + kat2038_entropyinreseed, kat2038_addinreseed, kat2038_addin0, + kat2038_addin1, kat2038_retbits +}; +static const struct drbg_kat kat2038 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2038_t +}; + +static const unsigned char kat2039_entropyin[] = { + 0x1b, 0x4b, 0xc0, 0x41, 0x68, 0xf2, 0x1a, 0xfa, 0x76, 0xe6, 0x5a, 0x7f, + 0x80, 0xba, 0xce, 0x5e, 0x1a, 0x28, 0x53, 0x09, 0xac, 0x93, 0x6e, 0x66, + 0x5b, 0x9a, 0x3f, 0x45, 0xd0, 0x90, 0xe3, 0x42, +}; +static const unsigned char kat2039_nonce[] = { + 0x8f, 0xb3, 0xf4, 0xa6, 0xc8, 0xef, 0x57, 0x25, 0xd0, 0xb9, 0xef, 0xdf, + 0x17, 0xf2, 0xd0, 0x2f, +}; +static const unsigned char kat2039_persstr[] = { + 0x5e, 0x7c, 0x4b, 0x72, 0x3b, 0xc8, 0xfe, 0x19, 0xc2, 0xe2, 0x49, 0xba, + 0x3e, 0x3a, 0xce, 0x3e, 0x44, 0x1b, 0xcc, 0xdd, 0x33, 0xce, 0x35, 0x3c, + 0xbd, 0xdf, 0xc2, 0xe2, 0x6e, 0x81, 0xd8, 0xe8, +}; +static const unsigned char kat2039_entropyinreseed[] = { + 0x1d, 0x8f, 0xbf, 0xa1, 0xe8, 0x32, 0xd3, 0x0a, 0x9c, 0x9c, 0xf7, 0x8f, + 0x6e, 0x01, 0x46, 0xcd, 0x5d, 0xc7, 0xec, 0x01, 0xc4, 0x45, 0xad, 0xa4, + 0x32, 0xc7, 0x6a, 0x79, 0xa3, 0x03, 0xd3, 0x70, +}; +static const unsigned char kat2039_addinreseed[] = { + 0x51, 0x9e, 0x20, 0x10, 0x2d, 0x03, 0x10, 0xd7, 0x7d, 0x2a, 0xca, 0x93, + 0xb8, 0xb9, 0x20, 0x37, 0x05, 0x6c, 0xbc, 0x0a, 0x9e, 0xb2, 0x5f, 0xd3, + 0xd0, 0xf2, 0x3a, 0x94, 0x79, 0xba, 0x44, 0x1c, +}; +static const unsigned char kat2039_addin0[] = { + 0x94, 0x63, 0x3d, 0xd0, 0xc6, 0xf3, 0x37, 0xde, 0xbf, 0xc2, 0x18, 0xc5, + 0x96, 0x0f, 0x71, 0x6d, 0x5d, 0x42, 0xcf, 0x01, 0xb7, 0x96, 0x8d, 0x7d, + 0x9e, 0x50, 0xd8, 0x3c, 0xc3, 0x5b, 0xdc, 0x71, +}; +static const unsigned char kat2039_addin1[] = { + 0xf1, 0xe7, 0x0c, 0x21, 0x24, 0xec, 0x84, 0xf1, 0xe3, 0x22, 0x29, 0x44, + 0x17, 0x7d, 0xd7, 0xee, 0x74, 0x14, 0x29, 0x4c, 0x35, 0x45, 0x6e, 0xc4, + 0x4e, 0xf0, 0xae, 0x9b, 0x03, 0x04, 0x4f, 0x63, +}; +static const unsigned char kat2039_retbits[] = { + 0x58, 0xe9, 0xe6, 0x83, 0xd1, 0xbc, 0x06, 0x4c, 0x83, 0x6e, 0x36, 0x20, + 0x15, 0xd0, 0xe8, 0x2b, 0x8c, 0xd1, 0x2e, 0xb0, 0x5c, 0x5c, 0x3f, 0x94, + 0x83, 0x2f, 0x81, 0xdf, 0xd7, 0xc0, 0x71, 0x97, 0xa3, 0xa5, 0xe1, 0xd3, + 0xc5, 0xb8, 0xbe, 0x33, 0x11, 0xc7, 0x34, 0x9e, 0x05, 0xd4, 0x68, 0x04, + 0x2e, 0x74, 0xbb, 0x51, 0xa4, 0xa3, 0x0d, 0xff, 0x94, 0x31, 0xd2, 0x7d, + 0x77, 0xb5, 0x6e, 0x6c, +}; +static const struct drbg_kat_pr_false kat2039_t = { + 13, kat2039_entropyin, kat2039_nonce, kat2039_persstr, + kat2039_entropyinreseed, kat2039_addinreseed, kat2039_addin0, + kat2039_addin1, kat2039_retbits +}; +static const struct drbg_kat kat2039 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2039_t +}; + +static const unsigned char kat2040_entropyin[] = { + 0xc1, 0x68, 0xc7, 0xc4, 0xec, 0x2a, 0xab, 0x2a, 0x43, 0xeb, 0x91, 0x06, + 0xcc, 0x7b, 0x01, 0x5b, 0x51, 0xf9, 0x63, 0xbe, 0xa7, 0x50, 0x55, 0xbd, + 0xdf, 0x30, 0x9c, 0xe4, 0xc4, 0xbd, 0xdd, 0x35, +}; +static const unsigned char kat2040_nonce[] = { + 0x78, 0x45, 0x5e, 0x64, 0x37, 0xea, 0x20, 0x65, 0x29, 0xec, 0x02, 0xca, + 0x10, 0x31, 0xe3, 0xa8, +}; +static const unsigned char kat2040_persstr[] = { + 0x2d, 0x1f, 0x73, 0x5d, 0x27, 0xa9, 0x86, 0x85, 0x59, 0x4e, 0xbd, 0x7d, + 0x1f, 0x33, 0x85, 0x19, 0xb0, 0x39, 0x81, 0xb4, 0xe9, 0x1c, 0x20, 0xa6, + 0x69, 0xdf, 0x5b, 0x06, 0x68, 0x53, 0xd3, 0xa7, +}; +static const unsigned char kat2040_entropyinreseed[] = { + 0x3f, 0x38, 0x53, 0xd3, 0xd1, 0xd6, 0x9f, 0x43, 0xc1, 0xf3, 0x31, 0xcc, + 0x06, 0x10, 0xa6, 0xd3, 0x4e, 0x52, 0x4b, 0x15, 0x1f, 0xbd, 0x07, 0x4a, + 0x2f, 0x92, 0x4e, 0x4f, 0xb7, 0x17, 0xbd, 0x62, +}; +static const unsigned char kat2040_addinreseed[] = { + 0xdb, 0xf6, 0xa2, 0xe0, 0x38, 0xcc, 0x18, 0x20, 0xe8, 0x76, 0x83, 0xa8, + 0xad, 0x6e, 0xd0, 0x05, 0xa4, 0x8b, 0x3f, 0x46, 0x08, 0x68, 0x34, 0x37, + 0x76, 0xdc, 0x76, 0xf1, 0xd7, 0x74, 0x8e, 0x00, +}; +static const unsigned char kat2040_addin0[] = { + 0x4c, 0xc2, 0x2a, 0x0b, 0x23, 0x3f, 0x31, 0x70, 0xe0, 0x19, 0x02, 0xca, + 0x80, 0x4a, 0x45, 0x16, 0x2b, 0x73, 0xf5, 0x50, 0xc1, 0x9c, 0xaf, 0x2c, + 0x97, 0x41, 0xcc, 0x25, 0x85, 0x45, 0x87, 0xd1, +}; +static const unsigned char kat2040_addin1[] = { + 0x48, 0x23, 0x8c, 0x9b, 0xe5, 0xce, 0xf5, 0x7d, 0x5b, 0x1c, 0x45, 0xa0, + 0x45, 0x6c, 0xce, 0x1e, 0x42, 0xbd, 0x45, 0x9a, 0x7a, 0xb3, 0xe3, 0x48, + 0x3b, 0xcd, 0xaf, 0xae, 0x90, 0x94, 0x1e, 0x64, +}; +static const unsigned char kat2040_retbits[] = { + 0xf2, 0xda, 0x41, 0x89, 0x06, 0x19, 0x1b, 0x76, 0xb3, 0xc5, 0xe2, 0x92, + 0x1a, 0x17, 0xe5, 0xcb, 0xf4, 0x82, 0x03, 0x69, 0xe8, 0xc8, 0xb1, 0xc2, + 0xa2, 0x66, 0x3c, 0x3f, 0xdf, 0x9d, 0x73, 0x09, 0x5b, 0xe4, 0xc5, 0x41, + 0xad, 0xd9, 0xb8, 0xdc, 0xa4, 0x4a, 0x48, 0x6c, 0x31, 0x36, 0x8b, 0x1c, + 0x64, 0xb1, 0xc3, 0xd2, 0xc5, 0xbf, 0x14, 0xf3, 0x35, 0x58, 0x41, 0x1c, + 0xca, 0x1f, 0x2c, 0xe7, +}; +static const struct drbg_kat_pr_false kat2040_t = { + 14, kat2040_entropyin, kat2040_nonce, kat2040_persstr, + kat2040_entropyinreseed, kat2040_addinreseed, kat2040_addin0, + kat2040_addin1, kat2040_retbits +}; +static const struct drbg_kat kat2040 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2040_t +}; + +static const unsigned char kat2041_entropyin[] = { + 0x83, 0x0b, 0xdf, 0xd3, 0x34, 0x86, 0xf2, 0x6f, 0x4a, 0xf9, 0xf2, 0xa6, + 0x99, 0xdb, 0x1e, 0x49, 0x65, 0x26, 0x35, 0xae, 0xd6, 0x98, 0x4e, 0x04, + 0xa0, 0xce, 0xa2, 0xc9, 0xa8, 0x7e, 0x43, 0xd2, +}; +static const unsigned char kat2041_nonce[] = { + 0x21, 0xed, 0xe5, 0xbe, 0x36, 0x40, 0x4c, 0x34, 0xb1, 0xb8, 0x5c, 0x2d, + 0x23, 0x69, 0xbf, 0x09, +}; +static const unsigned char kat2041_persstr[] = {0}; +static const unsigned char kat2041_entropyinreseed[] = { + 0x8c, 0x72, 0x19, 0x57, 0xa6, 0x30, 0x07, 0x94, 0x86, 0x2a, 0x00, 0x45, + 0x74, 0xf9, 0x8a, 0xf9, 0xbb, 0xc0, 0x74, 0xec, 0xdd, 0xe2, 0x2b, 0xec, + 0xb0, 0x81, 0xf3, 0x60, 0x53, 0x5f, 0x3f, 0x1f, +}; +static const unsigned char kat2041_addinreseed[] = {0}; +static const unsigned char kat2041_addin0[] = {0}; +static const unsigned char kat2041_addin1[] = {0}; +static const unsigned char kat2041_retbits[] = { + 0x3f, 0x63, 0xeb, 0x5d, 0xe3, 0xa1, 0x3a, 0x30, 0x97, 0xe2, 0x53, 0x99, + 0xc3, 0xd9, 0xed, 0x7d, 0x5e, 0x65, 0x91, 0x93, 0x14, 0x61, 0xa8, 0x51, + 0xba, 0x64, 0x5b, 0xcf, 0xfd, 0xd0, 0xc0, 0x7f, 0x2b, 0x71, 0xcf, 0xbb, + 0x83, 0x29, 0xbb, 0x19, 0x34, 0x97, 0x1d, 0x14, 0x03, 0xdc, 0x68, 0xca, + 0xfb, 0x0b, 0xd6, 0xca, 0x4e, 0x4a, 0x6c, 0x28, 0x97, 0x6a, 0xd5, 0xe8, + 0xbb, 0x13, 0xa3, 0x5f, +}; +static const struct drbg_kat_pr_false kat2041_t = { + 0, kat2041_entropyin, kat2041_nonce, kat2041_persstr, + kat2041_entropyinreseed, kat2041_addinreseed, kat2041_addin0, + kat2041_addin1, kat2041_retbits +}; +static const struct drbg_kat kat2041 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2041_t +}; + +static const unsigned char kat2042_entropyin[] = { + 0x06, 0x8c, 0xe2, 0x9e, 0x91, 0xfa, 0x6e, 0xbe, 0x9d, 0x39, 0xb0, 0x1e, + 0x28, 0x8f, 0xbb, 0x5c, 0x64, 0xd5, 0x30, 0x6e, 0xea, 0xe7, 0x03, 0xd3, + 0xb7, 0x4d, 0xcd, 0xcd, 0x64, 0x75, 0x7d, 0x8f, +}; +static const unsigned char kat2042_nonce[] = { + 0xc9, 0x60, 0x64, 0xd6, 0x19, 0xd4, 0xee, 0x60, 0x5d, 0xeb, 0x0c, 0xac, + 0x78, 0x02, 0x9e, 0x0c, +}; +static const unsigned char kat2042_persstr[] = {0}; +static const unsigned char kat2042_entropyinreseed[] = { + 0xa5, 0xf0, 0xc7, 0x36, 0xba, 0xc2, 0xf1, 0xe7, 0xc7, 0x55, 0x4f, 0x51, + 0xe8, 0x72, 0x79, 0xab, 0xf0, 0x1d, 0x39, 0x21, 0x3f, 0x20, 0xe3, 0x10, + 0xab, 0x45, 0xd0, 0xe0, 0x26, 0x22, 0x70, 0xfd, +}; +static const unsigned char kat2042_addinreseed[] = {0}; +static const unsigned char kat2042_addin0[] = {0}; +static const unsigned char kat2042_addin1[] = {0}; +static const unsigned char kat2042_retbits[] = { + 0x24, 0x1c, 0x13, 0xc5, 0xf1, 0x80, 0xe1, 0x73, 0x82, 0xb0, 0x32, 0x29, + 0xcb, 0x60, 0x37, 0xa2, 0x23, 0x8e, 0x65, 0x8b, 0x0b, 0xc7, 0x92, 0x73, + 0x42, 0x83, 0x3e, 0xf0, 0xb4, 0x51, 0x1b, 0xf8, 0x0d, 0x8d, 0x04, 0x04, + 0x2a, 0x71, 0x14, 0x48, 0x5b, 0x6a, 0xec, 0x34, 0x7d, 0xa8, 0x9c, 0x64, + 0xea, 0x5f, 0x7d, 0x80, 0xe8, 0xf4, 0xab, 0xb4, 0xb0, 0x54, 0xf2, 0xf0, + 0x7a, 0xc6, 0xe2, 0xee, +}; +static const struct drbg_kat_pr_false kat2042_t = { + 1, kat2042_entropyin, kat2042_nonce, kat2042_persstr, + kat2042_entropyinreseed, kat2042_addinreseed, kat2042_addin0, + kat2042_addin1, kat2042_retbits +}; +static const struct drbg_kat kat2042 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2042_t +}; + +static const unsigned char kat2043_entropyin[] = { + 0xf2, 0x2c, 0xf7, 0xcf, 0xf5, 0xc8, 0xf2, 0x5c, 0x3b, 0x15, 0xd9, 0xe6, + 0x4b, 0x72, 0x8e, 0xe8, 0xd1, 0x5c, 0xc9, 0x06, 0x37, 0xe2, 0x7b, 0x64, + 0xc4, 0x64, 0x3e, 0x46, 0xe1, 0x9a, 0xfb, 0x76, +}; +static const unsigned char kat2043_nonce[] = { + 0xae, 0xf3, 0x66, 0xb3, 0x95, 0x5f, 0x78, 0xf1, 0xcc, 0x43, 0xee, 0x00, + 0x8f, 0xc8, 0x8b, 0x7d, +}; +static const unsigned char kat2043_persstr[] = {0}; +static const unsigned char kat2043_entropyinreseed[] = { + 0x17, 0xc1, 0x95, 0x0c, 0x8f, 0x33, 0x9c, 0x84, 0x93, 0xd2, 0x29, 0x8b, + 0xb5, 0x3e, 0x14, 0x7c, 0x1b, 0xf8, 0xce, 0x8c, 0xd2, 0xd5, 0x47, 0x62, + 0x25, 0x3f, 0x90, 0xf4, 0x3f, 0xb1, 0xc2, 0x54, +}; +static const unsigned char kat2043_addinreseed[] = {0}; +static const unsigned char kat2043_addin0[] = {0}; +static const unsigned char kat2043_addin1[] = {0}; +static const unsigned char kat2043_retbits[] = { + 0xd6, 0xbb, 0x19, 0x64, 0xe6, 0x9c, 0x56, 0x12, 0xe5, 0x8b, 0xff, 0x46, + 0x60, 0xa5, 0x83, 0x67, 0x04, 0xd7, 0xf1, 0x4a, 0x3d, 0xd8, 0x3b, 0xac, + 0x42, 0x7a, 0x46, 0x4c, 0x8d, 0xcc, 0xe6, 0x08, 0x22, 0xc8, 0x57, 0xf2, + 0x80, 0xc2, 0x54, 0x0a, 0x5c, 0x43, 0x19, 0xb8, 0xf1, 0x37, 0xf8, 0xcd, + 0x5c, 0x9f, 0xb8, 0xbf, 0xa7, 0xf8, 0xea, 0x75, 0x58, 0x76, 0x95, 0xad, + 0xa3, 0xb7, 0x99, 0xbd, +}; +static const struct drbg_kat_pr_false kat2043_t = { + 2, kat2043_entropyin, kat2043_nonce, kat2043_persstr, + kat2043_entropyinreseed, kat2043_addinreseed, kat2043_addin0, + kat2043_addin1, kat2043_retbits +}; +static const struct drbg_kat kat2043 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2043_t +}; + +static const unsigned char kat2044_entropyin[] = { + 0x9a, 0xa2, 0x27, 0x51, 0x45, 0xe2, 0x52, 0xf9, 0x47, 0x1f, 0xa1, 0x39, + 0x9e, 0xea, 0xf8, 0x4a, 0x7d, 0xac, 0x15, 0x90, 0xb6, 0xc1, 0x2e, 0x71, + 0x33, 0x84, 0x39, 0x35, 0x58, 0x7e, 0xe8, 0x14, +}; +static const unsigned char kat2044_nonce[] = { + 0xe5, 0x0e, 0xfc, 0xb1, 0xa4, 0xfa, 0xc7, 0x02, 0xf2, 0x4d, 0xf5, 0x04, + 0x7e, 0xf4, 0x9d, 0x8c, +}; +static const unsigned char kat2044_persstr[] = {0}; +static const unsigned char kat2044_entropyinreseed[] = { + 0xe0, 0x5b, 0x05, 0x97, 0xbd, 0xde, 0x19, 0x98, 0xef, 0xfb, 0x97, 0x02, + 0xa2, 0x0c, 0x79, 0x2e, 0x80, 0x93, 0xc2, 0x89, 0x60, 0x07, 0xf8, 0x77, + 0x7d, 0xc5, 0x93, 0x3a, 0x6d, 0xe4, 0x9b, 0x10, +}; +static const unsigned char kat2044_addinreseed[] = {0}; +static const unsigned char kat2044_addin0[] = {0}; +static const unsigned char kat2044_addin1[] = {0}; +static const unsigned char kat2044_retbits[] = { + 0x5b, 0xa6, 0xf7, 0xb6, 0x5e, 0xc4, 0xc9, 0x5d, 0x17, 0xcd, 0x02, 0x9a, + 0xd5, 0x6a, 0x4f, 0xe2, 0x9d, 0xd7, 0x03, 0xc9, 0x33, 0x13, 0xac, 0x06, + 0x59, 0x74, 0x15, 0x59, 0x64, 0xa7, 0xb9, 0xb0, 0xfe, 0x25, 0x2b, 0xc2, + 0xe8, 0x65, 0x35, 0x2e, 0x6a, 0x4c, 0xae, 0xe0, 0x90, 0x72, 0x1a, 0x0e, + 0xee, 0x0d, 0x6a, 0x7a, 0x0f, 0xd8, 0x3c, 0x74, 0xfe, 0xb7, 0x28, 0xfd, + 0xcb, 0xca, 0x4e, 0x94, +}; +static const struct drbg_kat_pr_false kat2044_t = { + 3, kat2044_entropyin, kat2044_nonce, kat2044_persstr, + kat2044_entropyinreseed, kat2044_addinreseed, kat2044_addin0, + kat2044_addin1, kat2044_retbits +}; +static const struct drbg_kat kat2044 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2044_t +}; + +static const unsigned char kat2045_entropyin[] = { + 0xf6, 0x5e, 0xcb, 0xb2, 0x12, 0x05, 0xf1, 0x48, 0x6f, 0xd9, 0x5f, 0x77, + 0xa9, 0xac, 0xd6, 0x1a, 0x39, 0x2d, 0x9c, 0x9d, 0x80, 0xb8, 0x01, 0x0c, + 0x99, 0x89, 0xbb, 0x84, 0xae, 0x31, 0xf0, 0x64, +}; +static const unsigned char kat2045_nonce[] = { + 0x32, 0xb0, 0x43, 0x52, 0xbd, 0x34, 0x5b, 0x8e, 0x46, 0xa5, 0xb7, 0x7b, + 0x30, 0x80, 0x64, 0xb6, +}; +static const unsigned char kat2045_persstr[] = {0}; +static const unsigned char kat2045_entropyinreseed[] = { + 0x32, 0xd8, 0x61, 0xef, 0x5b, 0xcc, 0xc9, 0x0d, 0x39, 0x3c, 0xc9, 0x9b, + 0x5c, 0x45, 0x50, 0xa4, 0x1e, 0x2f, 0x0c, 0x2d, 0x23, 0x48, 0x28, 0x23, + 0x5f, 0x06, 0x24, 0x3d, 0x61, 0x26, 0xd1, 0x5b, +}; +static const unsigned char kat2045_addinreseed[] = {0}; +static const unsigned char kat2045_addin0[] = {0}; +static const unsigned char kat2045_addin1[] = {0}; +static const unsigned char kat2045_retbits[] = { + 0x52, 0x46, 0x30, 0xad, 0x63, 0xdf, 0x62, 0x94, 0xb9, 0x75, 0xd1, 0xfc, + 0xf8, 0x6b, 0x79, 0x50, 0x66, 0x97, 0xc4, 0xb7, 0x96, 0x68, 0xd3, 0x82, + 0xe7, 0xd8, 0x3e, 0x30, 0xda, 0x06, 0xac, 0xbd, 0x97, 0xe1, 0x6e, 0x25, + 0x6d, 0xf7, 0x3d, 0x68, 0x0c, 0x50, 0x44, 0xe8, 0x34, 0x3d, 0x6b, 0x88, + 0x12, 0x3c, 0x7c, 0x89, 0x48, 0x2e, 0x93, 0xef, 0x1a, 0x6c, 0x67, 0xf8, + 0x14, 0xcb, 0x99, 0x8b, +}; +static const struct drbg_kat_pr_false kat2045_t = { + 4, kat2045_entropyin, kat2045_nonce, kat2045_persstr, + kat2045_entropyinreseed, kat2045_addinreseed, kat2045_addin0, + kat2045_addin1, kat2045_retbits +}; +static const struct drbg_kat kat2045 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2045_t +}; + +static const unsigned char kat2046_entropyin[] = { + 0x3c, 0xad, 0xe5, 0x24, 0x68, 0xee, 0x03, 0x3f, 0x34, 0x0c, 0xed, 0xf2, + 0x66, 0xf6, 0x0e, 0x5d, 0xc4, 0xf4, 0x46, 0xce, 0x1c, 0x53, 0x75, 0x09, + 0xc3, 0xa2, 0x5e, 0x77, 0x6e, 0x2d, 0x05, 0x4c, +}; +static const unsigned char kat2046_nonce[] = { + 0x32, 0x5e, 0x3c, 0x6b, 0xc9, 0x0d, 0xab, 0x20, 0x17, 0x83, 0x80, 0xbc, + 0x97, 0xa9, 0x2e, 0xa3, +}; +static const unsigned char kat2046_persstr[] = {0}; +static const unsigned char kat2046_entropyinreseed[] = { + 0x6c, 0x3a, 0x92, 0x7d, 0x9f, 0x06, 0x20, 0x92, 0x6f, 0x35, 0x4f, 0x2b, + 0x91, 0x29, 0x86, 0x32, 0xbc, 0x52, 0x6b, 0x0c, 0x99, 0xf2, 0x15, 0x05, + 0x6f, 0x63, 0x1e, 0x07, 0x97, 0x26, 0xad, 0x98, +}; +static const unsigned char kat2046_addinreseed[] = {0}; +static const unsigned char kat2046_addin0[] = {0}; +static const unsigned char kat2046_addin1[] = {0}; +static const unsigned char kat2046_retbits[] = { + 0x1d, 0x2b, 0x13, 0x25, 0x16, 0x35, 0x4e, 0x9b, 0x0c, 0xbc, 0xf7, 0x88, + 0x12, 0xdd, 0xa8, 0xfd, 0xd0, 0x44, 0xaf, 0x16, 0x1c, 0x2e, 0xd5, 0x21, + 0x9d, 0xf1, 0xa4, 0xe6, 0x43, 0xda, 0xfa, 0xba, 0xd1, 0xf2, 0x32, 0x1e, + 0xd0, 0x9d, 0x68, 0x0c, 0x27, 0x8a, 0x2a, 0x6d, 0xad, 0xfb, 0x5a, 0x5c, + 0x9c, 0xd3, 0x28, 0x4c, 0x7e, 0x56, 0x26, 0x2b, 0xb7, 0x07, 0x7e, 0xf7, + 0x75, 0x1c, 0xc9, 0xbf, +}; +static const struct drbg_kat_pr_false kat2046_t = { + 5, kat2046_entropyin, kat2046_nonce, kat2046_persstr, + kat2046_entropyinreseed, kat2046_addinreseed, kat2046_addin0, + kat2046_addin1, kat2046_retbits +}; +static const struct drbg_kat kat2046 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2046_t +}; + +static const unsigned char kat2047_entropyin[] = { + 0x82, 0xbc, 0xba, 0xf4, 0x30, 0x05, 0x23, 0x3f, 0x53, 0x5a, 0xb0, 0x4b, + 0xdd, 0x9e, 0xb0, 0x8f, 0x55, 0x24, 0xfb, 0x69, 0x99, 0xe9, 0xbb, 0x60, + 0xc4, 0xb9, 0x50, 0x1b, 0xb5, 0x8f, 0xaa, 0xe5, +}; +static const unsigned char kat2047_nonce[] = { + 0xb6, 0x34, 0xf1, 0x19, 0x61, 0x75, 0x33, 0x24, 0x2b, 0xc4, 0xe1, 0x0c, + 0xdc, 0x73, 0xc8, 0xcc, +}; +static const unsigned char kat2047_persstr[] = {0}; +static const unsigned char kat2047_entropyinreseed[] = { + 0xe0, 0xea, 0x05, 0x05, 0x54, 0xd4, 0xb7, 0xab, 0x4f, 0xaa, 0x51, 0xe3, + 0x84, 0xeb, 0x4a, 0x3d, 0xfc, 0xec, 0x08, 0x04, 0x8a, 0x6e, 0xaa, 0x6d, + 0x51, 0xe0, 0xfc, 0x95, 0x60, 0x43, 0xec, 0xb5, +}; +static const unsigned char kat2047_addinreseed[] = {0}; +static const unsigned char kat2047_addin0[] = {0}; +static const unsigned char kat2047_addin1[] = {0}; +static const unsigned char kat2047_retbits[] = { + 0x17, 0xae, 0xf2, 0x8a, 0x45, 0xc1, 0xeb, 0xec, 0xcf, 0xed, 0x99, 0x1f, + 0x52, 0x6e, 0x56, 0x00, 0x35, 0xd1, 0xc9, 0xe7, 0x3d, 0xe1, 0x21, 0x7c, + 0x26, 0x90, 0xe4, 0xe0, 0x1b, 0x36, 0x3c, 0x51, 0x48, 0xcc, 0xd8, 0x00, + 0x71, 0x14, 0x3f, 0xc3, 0x4d, 0xf0, 0xee, 0xc7, 0x35, 0x42, 0xd9, 0x93, + 0x7a, 0x22, 0x6b, 0x13, 0xf1, 0x6c, 0x2f, 0xce, 0xc9, 0x68, 0xa4, 0x1e, + 0xb6, 0xa5, 0x20, 0xd9, +}; +static const struct drbg_kat_pr_false kat2047_t = { + 6, kat2047_entropyin, kat2047_nonce, kat2047_persstr, + kat2047_entropyinreseed, kat2047_addinreseed, kat2047_addin0, + kat2047_addin1, kat2047_retbits +}; +static const struct drbg_kat kat2047 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2047_t +}; + +static const unsigned char kat2048_entropyin[] = { + 0xdc, 0x19, 0xdf, 0x9e, 0x97, 0x75, 0x9b, 0x82, 0x67, 0xa5, 0x50, 0xed, + 0xdb, 0x19, 0xc9, 0xac, 0x93, 0x6e, 0x88, 0x1f, 0xe5, 0xf8, 0x07, 0xd8, + 0x1b, 0xcc, 0x91, 0x4b, 0x3c, 0x5f, 0x63, 0x89, +}; +static const unsigned char kat2048_nonce[] = { + 0x11, 0x21, 0xd9, 0x75, 0x2e, 0x5f, 0x88, 0x2a, 0x70, 0x75, 0x60, 0xbd, + 0x0a, 0x44, 0x9c, 0x59, +}; +static const unsigned char kat2048_persstr[] = {0}; +static const unsigned char kat2048_entropyinreseed[] = { + 0x1c, 0x61, 0x5c, 0xd5, 0x96, 0x22, 0xed, 0xf0, 0xe1, 0xa5, 0xbf, 0xda, + 0xbd, 0x4c, 0x39, 0x2e, 0x5d, 0xfd, 0xe8, 0x7d, 0xe0, 0x56, 0xab, 0x83, + 0x3f, 0xe2, 0x38, 0x54, 0xb2, 0x6f, 0x3a, 0xe4, +}; +static const unsigned char kat2048_addinreseed[] = {0}; +static const unsigned char kat2048_addin0[] = {0}; +static const unsigned char kat2048_addin1[] = {0}; +static const unsigned char kat2048_retbits[] = { + 0x62, 0xd4, 0x66, 0xee, 0x59, 0x0a, 0x6c, 0x77, 0x27, 0x9f, 0xd8, 0x1c, + 0x63, 0x7d, 0x0c, 0x13, 0xb6, 0xca, 0x88, 0x6e, 0x7d, 0xd5, 0x38, 0x0d, + 0x55, 0x86, 0x42, 0x8b, 0x40, 0xa6, 0x36, 0x58, 0x17, 0x52, 0x45, 0x8a, + 0xda, 0xc6, 0x02, 0x4c, 0xc6, 0x3d, 0x51, 0x24, 0xb7, 0xf5, 0x40, 0x0b, + 0x3d, 0x25, 0x4e, 0x4d, 0xdb, 0xbd, 0x48, 0xd2, 0x04, 0x87, 0x89, 0xca, + 0x0e, 0x46, 0x4f, 0x9c, +}; +static const struct drbg_kat_pr_false kat2048_t = { + 7, kat2048_entropyin, kat2048_nonce, kat2048_persstr, + kat2048_entropyinreseed, kat2048_addinreseed, kat2048_addin0, + kat2048_addin1, kat2048_retbits +}; +static const struct drbg_kat kat2048 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2048_t +}; + +static const unsigned char kat2049_entropyin[] = { + 0x00, 0x62, 0x44, 0x33, 0x85, 0xcd, 0xb8, 0xbc, 0xae, 0xd2, 0x7a, 0xc3, + 0xef, 0x50, 0xa9, 0x8d, 0x93, 0x46, 0xff, 0x59, 0xf5, 0xe2, 0x24, 0x2a, + 0x2d, 0x01, 0x65, 0xd3, 0xa7, 0x8a, 0xab, 0x58, +}; +static const unsigned char kat2049_nonce[] = { + 0x44, 0x8c, 0x17, 0x4e, 0x31, 0x66, 0x38, 0xea, 0xfa, 0x0b, 0xcc, 0x35, + 0xfd, 0x5c, 0x59, 0x9d, +}; +static const unsigned char kat2049_persstr[] = {0}; +static const unsigned char kat2049_entropyinreseed[] = { + 0xec, 0xe3, 0xf6, 0x5e, 0x9e, 0xe3, 0x87, 0x5b, 0xac, 0x85, 0x2c, 0xc6, + 0x8a, 0x81, 0x72, 0xbd, 0x02, 0xf3, 0xd7, 0x0c, 0xf7, 0x86, 0x07, 0xed, + 0xd3, 0xc0, 0x68, 0x69, 0x06, 0xdf, 0xbf, 0x7c, +}; +static const unsigned char kat2049_addinreseed[] = {0}; +static const unsigned char kat2049_addin0[] = {0}; +static const unsigned char kat2049_addin1[] = {0}; +static const unsigned char kat2049_retbits[] = { + 0xd6, 0xe0, 0xcb, 0x06, 0x2c, 0xa6, 0xf8, 0xce, 0xaf, 0x32, 0x80, 0xd9, + 0x18, 0x06, 0x21, 0x68, 0xdf, 0x79, 0xc3, 0xa2, 0xa9, 0x28, 0x17, 0xbe, + 0x76, 0x57, 0x3f, 0x19, 0xb2, 0xd5, 0x15, 0x15, 0xee, 0x20, 0x70, 0xa7, + 0x87, 0x01, 0xac, 0x41, 0x41, 0x9c, 0x7a, 0xf1, 0xf6, 0xd3, 0xb5, 0xcc, + 0x3f, 0x7b, 0xc0, 0xf3, 0xc0, 0xcb, 0xe3, 0x7c, 0x9c, 0x68, 0x25, 0x8a, + 0xbf, 0x2b, 0x2b, 0x2c, +}; +static const struct drbg_kat_pr_false kat2049_t = { + 8, kat2049_entropyin, kat2049_nonce, kat2049_persstr, + kat2049_entropyinreseed, kat2049_addinreseed, kat2049_addin0, + kat2049_addin1, kat2049_retbits +}; +static const struct drbg_kat kat2049 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2049_t +}; + +static const unsigned char kat2050_entropyin[] = { + 0xf9, 0xa0, 0x99, 0x20, 0x37, 0x17, 0x0c, 0xb0, 0xfc, 0xa1, 0x69, 0x74, + 0x2b, 0x0c, 0x7d, 0xe2, 0xee, 0x80, 0x7b, 0x13, 0x70, 0x1b, 0x29, 0xd4, + 0xe4, 0x9d, 0xa0, 0x4a, 0x00, 0xf2, 0x04, 0xbe, +}; +static const unsigned char kat2050_nonce[] = { + 0x97, 0x86, 0x9e, 0xd7, 0x96, 0xb0, 0x3c, 0xf4, 0xae, 0xf0, 0x00, 0xff, + 0x75, 0x0a, 0x17, 0xaa, +}; +static const unsigned char kat2050_persstr[] = {0}; +static const unsigned char kat2050_entropyinreseed[] = { + 0x3a, 0x22, 0x1b, 0x7c, 0xda, 0x67, 0xd6, 0x4a, 0xfc, 0xdb, 0xb1, 0x63, + 0xf2, 0x0d, 0xb4, 0x58, 0x4a, 0x39, 0xa0, 0xda, 0x8a, 0x70, 0x75, 0x6f, + 0xb2, 0x49, 0xfd, 0x16, 0xfe, 0x96, 0x0a, 0xee, +}; +static const unsigned char kat2050_addinreseed[] = {0}; +static const unsigned char kat2050_addin0[] = {0}; +static const unsigned char kat2050_addin1[] = {0}; +static const unsigned char kat2050_retbits[] = { + 0x92, 0x3b, 0x15, 0xe4, 0xf6, 0x3d, 0x08, 0x4c, 0x59, 0x93, 0xca, 0x72, + 0x02, 0xf0, 0x75, 0x4d, 0xa8, 0x29, 0xa0, 0xea, 0x42, 0x63, 0x77, 0x19, + 0x7a, 0x4c, 0xbd, 0xff, 0xf4, 0x9e, 0xff, 0x86, 0x51, 0x5e, 0xbb, 0xa8, + 0x39, 0xdc, 0x3f, 0xa7, 0xa7, 0x2b, 0xe7, 0x9f, 0xdf, 0xe1, 0x82, 0xc7, + 0xc0, 0x8a, 0xa8, 0x3f, 0xc0, 0x26, 0xf8, 0x8e, 0x20, 0x6c, 0x7b, 0x19, + 0x4d, 0x2f, 0x3e, 0xc5, +}; +static const struct drbg_kat_pr_false kat2050_t = { + 9, kat2050_entropyin, kat2050_nonce, kat2050_persstr, + kat2050_entropyinreseed, kat2050_addinreseed, kat2050_addin0, + kat2050_addin1, kat2050_retbits +}; +static const struct drbg_kat kat2050 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2050_t +}; + +static const unsigned char kat2051_entropyin[] = { + 0x2c, 0x9d, 0x39, 0x34, 0xfd, 0x01, 0x41, 0x88, 0x57, 0xc6, 0x9a, 0xa5, + 0xe6, 0x50, 0xe6, 0x6c, 0x27, 0x78, 0xc8, 0xe3, 0xc0, 0xd6, 0x18, 0x01, + 0x46, 0x52, 0x85, 0x07, 0x2a, 0x6c, 0x96, 0x28, +}; +static const unsigned char kat2051_nonce[] = { + 0xc5, 0xb5, 0x06, 0x5f, 0x97, 0x97, 0x1e, 0x1f, 0x8d, 0x8f, 0x90, 0x70, + 0xc6, 0xc1, 0x8c, 0xbf, +}; +static const unsigned char kat2051_persstr[] = {0}; +static const unsigned char kat2051_entropyinreseed[] = { + 0x85, 0x50, 0xde, 0xa0, 0x8a, 0x70, 0x96, 0x5d, 0xdb, 0xac, 0x46, 0xd1, + 0x2f, 0x34, 0x45, 0xd1, 0xfb, 0xf3, 0xfc, 0xce, 0x23, 0x3f, 0x54, 0x0b, + 0x23, 0x49, 0x4b, 0x24, 0xb8, 0x78, 0xad, 0x03, +}; +static const unsigned char kat2051_addinreseed[] = {0}; +static const unsigned char kat2051_addin0[] = {0}; +static const unsigned char kat2051_addin1[] = {0}; +static const unsigned char kat2051_retbits[] = { + 0xda, 0x8c, 0x3b, 0x43, 0xdc, 0xd7, 0xd3, 0x93, 0xb6, 0x9e, 0x4d, 0x02, + 0x3e, 0xf0, 0xee, 0x57, 0xa4, 0x97, 0x52, 0xcb, 0x16, 0xef, 0x4f, 0xaf, + 0x84, 0x48, 0xac, 0x67, 0x4a, 0xac, 0x9c, 0xc3, 0xc4, 0x38, 0xb9, 0x8a, + 0x8a, 0x6a, 0xdd, 0x54, 0xf5, 0x09, 0xbd, 0x76, 0x3e, 0x47, 0xd7, 0xa2, + 0xeb, 0x52, 0x54, 0x00, 0x9f, 0x69, 0x52, 0xd3, 0x8e, 0x2b, 0xb6, 0xe0, + 0x5d, 0xc5, 0xa9, 0x72, +}; +static const struct drbg_kat_pr_false kat2051_t = { + 10, kat2051_entropyin, kat2051_nonce, kat2051_persstr, + kat2051_entropyinreseed, kat2051_addinreseed, kat2051_addin0, + kat2051_addin1, kat2051_retbits +}; +static const struct drbg_kat kat2051 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2051_t +}; + +static const unsigned char kat2052_entropyin[] = { + 0xe6, 0xa5, 0x84, 0x3f, 0x49, 0xe0, 0xa8, 0x37, 0xbd, 0xf2, 0x16, 0xe0, + 0x64, 0x4c, 0x89, 0x02, 0xef, 0xfd, 0x8c, 0x69, 0x22, 0xd3, 0x0e, 0xba, + 0x8d, 0xa3, 0xfd, 0x45, 0x37, 0x57, 0x8e, 0x8c, +}; +static const unsigned char kat2052_nonce[] = { + 0xd8, 0x7b, 0x4c, 0xe9, 0x48, 0x9a, 0xa9, 0xb6, 0xd1, 0x83, 0x7d, 0x9c, + 0x72, 0xae, 0x98, 0x69, +}; +static const unsigned char kat2052_persstr[] = {0}; +static const unsigned char kat2052_entropyinreseed[] = { + 0xa9, 0x0e, 0x89, 0xfd, 0x52, 0xd9, 0x74, 0xd8, 0x6c, 0x39, 0xe8, 0xd5, + 0x04, 0xa6, 0x1a, 0x17, 0xeb, 0x08, 0xd3, 0xd8, 0x9d, 0x97, 0xbc, 0x4f, + 0x18, 0xde, 0x4a, 0xe2, 0x87, 0x95, 0x75, 0x7f, +}; +static const unsigned char kat2052_addinreseed[] = {0}; +static const unsigned char kat2052_addin0[] = {0}; +static const unsigned char kat2052_addin1[] = {0}; +static const unsigned char kat2052_retbits[] = { + 0x95, 0x19, 0x15, 0x4b, 0x87, 0xb2, 0xc9, 0xac, 0x7b, 0xe1, 0xe1, 0xea, + 0x12, 0xd5, 0x52, 0x5d, 0x8e, 0x00, 0xe2, 0x5b, 0x05, 0x28, 0xbf, 0xa0, + 0x85, 0x2e, 0x45, 0xe8, 0x90, 0x19, 0x7d, 0xcf, 0x3a, 0xba, 0x65, 0xe2, + 0x81, 0x2a, 0x42, 0xe3, 0xe9, 0x25, 0xe2, 0xd8, 0x75, 0x0c, 0xe5, 0x96, + 0x54, 0xc0, 0x43, 0xcd, 0xd3, 0xa6, 0xc9, 0x2d, 0x09, 0x14, 0xd0, 0x30, + 0xce, 0x87, 0xa4, 0x39, +}; +static const struct drbg_kat_pr_false kat2052_t = { + 11, kat2052_entropyin, kat2052_nonce, kat2052_persstr, + kat2052_entropyinreseed, kat2052_addinreseed, kat2052_addin0, + kat2052_addin1, kat2052_retbits +}; +static const struct drbg_kat kat2052 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2052_t +}; + +static const unsigned char kat2053_entropyin[] = { + 0xaa, 0xd6, 0xe7, 0x13, 0x43, 0x3a, 0x4c, 0xce, 0x72, 0x95, 0x8b, 0x1c, + 0x69, 0xe2, 0x2e, 0x67, 0xeb, 0xf0, 0xde, 0xe5, 0x02, 0xab, 0xb5, 0xce, + 0x6b, 0x2a, 0x5a, 0xb3, 0x5c, 0x0c, 0xef, 0x2c, +}; +static const unsigned char kat2053_nonce[] = { + 0x63, 0x01, 0xb4, 0x1a, 0x2c, 0x28, 0xb3, 0x0c, 0xd3, 0x57, 0xf0, 0x89, + 0x00, 0xd6, 0xca, 0x75, +}; +static const unsigned char kat2053_persstr[] = {0}; +static const unsigned char kat2053_entropyinreseed[] = { + 0xa9, 0xdd, 0xda, 0xa0, 0x88, 0x28, 0x92, 0x41, 0xf6, 0x5f, 0xa8, 0x0a, + 0xc6, 0x11, 0x59, 0x79, 0x60, 0x27, 0x98, 0x56, 0x89, 0x56, 0xf1, 0xbb, + 0x09, 0x34, 0x0d, 0x78, 0x78, 0x6c, 0xe3, 0xe8, +}; +static const unsigned char kat2053_addinreseed[] = {0}; +static const unsigned char kat2053_addin0[] = {0}; +static const unsigned char kat2053_addin1[] = {0}; +static const unsigned char kat2053_retbits[] = { + 0xe8, 0xd4, 0x9d, 0xba, 0xd6, 0xe0, 0x89, 0xad, 0x08, 0x44, 0x1a, 0x10, + 0x5a, 0xd8, 0x90, 0x16, 0xfb, 0x03, 0x61, 0xad, 0x1b, 0x6d, 0xfb, 0x83, + 0x5b, 0x22, 0x83, 0x6e, 0x51, 0x31, 0xe8, 0xa2, 0xc4, 0xbb, 0x2c, 0xee, + 0x2a, 0x45, 0xe8, 0x18, 0x17, 0x72, 0x19, 0x4c, 0x29, 0xa8, 0x2a, 0x89, + 0x05, 0x4d, 0xf7, 0x0d, 0x97, 0x01, 0xd2, 0x77, 0xbe, 0xaf, 0xc8, 0x55, + 0x3c, 0x21, 0x02, 0x58, +}; +static const struct drbg_kat_pr_false kat2053_t = { + 12, kat2053_entropyin, kat2053_nonce, kat2053_persstr, + kat2053_entropyinreseed, kat2053_addinreseed, kat2053_addin0, + kat2053_addin1, kat2053_retbits +}; +static const struct drbg_kat kat2053 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2053_t +}; + +static const unsigned char kat2054_entropyin[] = { + 0x74, 0x9f, 0xad, 0x3e, 0xdf, 0x12, 0x0a, 0x72, 0x68, 0x1e, 0x67, 0x8b, + 0x5d, 0x68, 0x36, 0xa7, 0x3e, 0xd7, 0x36, 0x12, 0xad, 0x1b, 0x37, 0x57, + 0xbb, 0x00, 0x54, 0xf7, 0x61, 0xf2, 0x11, 0xe9, +}; +static const unsigned char kat2054_nonce[] = { + 0xcc, 0x84, 0xac, 0xb7, 0xc6, 0x87, 0x63, 0x6c, 0x1e, 0xb7, 0x70, 0x1e, + 0x6d, 0x45, 0x69, 0x1c, +}; +static const unsigned char kat2054_persstr[] = {0}; +static const unsigned char kat2054_entropyinreseed[] = { + 0x46, 0x8e, 0xce, 0x07, 0x20, 0x44, 0x91, 0x93, 0xfd, 0xbe, 0xe2, 0x3d, + 0xc5, 0xb2, 0x46, 0x32, 0x77, 0x0c, 0x44, 0x48, 0x5b, 0x2b, 0xc1, 0x9a, + 0x2d, 0xc4, 0xe2, 0xed, 0x3a, 0x45, 0xc9, 0x35, +}; +static const unsigned char kat2054_addinreseed[] = {0}; +static const unsigned char kat2054_addin0[] = {0}; +static const unsigned char kat2054_addin1[] = {0}; +static const unsigned char kat2054_retbits[] = { + 0xd5, 0x0e, 0x34, 0x7e, 0x74, 0x59, 0x8e, 0xe3, 0xb2, 0x79, 0xeb, 0x7f, + 0x6b, 0xe7, 0x83, 0x49, 0x46, 0xe5, 0x44, 0x96, 0xce, 0x0c, 0x09, 0x1a, + 0xf1, 0x50, 0x1a, 0x30, 0xc6, 0x07, 0x3f, 0xfd, 0xfd, 0x42, 0xc5, 0x5f, + 0x20, 0x94, 0xc8, 0x16, 0x07, 0x1a, 0xf6, 0x63, 0xda, 0xf3, 0x8c, 0xf4, + 0x51, 0x5c, 0x4b, 0xb9, 0xa0, 0xd1, 0x5a, 0x0f, 0x95, 0x77, 0x09, 0xad, + 0x84, 0x08, 0x61, 0x69, +}; +static const struct drbg_kat_pr_false kat2054_t = { + 13, kat2054_entropyin, kat2054_nonce, kat2054_persstr, + kat2054_entropyinreseed, kat2054_addinreseed, kat2054_addin0, + kat2054_addin1, kat2054_retbits +}; +static const struct drbg_kat kat2054 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2054_t +}; + +static const unsigned char kat2055_entropyin[] = { + 0xae, 0x8d, 0xa9, 0x6f, 0x3d, 0x66, 0x24, 0x3a, 0x89, 0xff, 0x45, 0x46, + 0x76, 0xd9, 0xbd, 0xa5, 0xa3, 0x9d, 0xad, 0xc7, 0x23, 0xb1, 0x19, 0xb4, + 0x8a, 0x03, 0xb7, 0xcd, 0x9d, 0xa5, 0xb0, 0x2e, +}; +static const unsigned char kat2055_nonce[] = { + 0xbc, 0xd1, 0xd6, 0x43, 0x68, 0x0b, 0x50, 0xf1, 0x92, 0x05, 0x13, 0xbb, + 0xaf, 0xd3, 0x8b, 0x01, +}; +static const unsigned char kat2055_persstr[] = {0}; +static const unsigned char kat2055_entropyinreseed[] = { + 0xd2, 0x96, 0xa0, 0xab, 0x1d, 0xf8, 0x8a, 0x37, 0x54, 0x2a, 0x51, 0x21, + 0xa4, 0x74, 0x09, 0xd5, 0xe2, 0x0c, 0x48, 0xf4, 0x8e, 0x3a, 0xc4, 0x08, + 0xd8, 0xa4, 0x92, 0xf7, 0xcc, 0x21, 0xf2, 0x82, +}; +static const unsigned char kat2055_addinreseed[] = {0}; +static const unsigned char kat2055_addin0[] = {0}; +static const unsigned char kat2055_addin1[] = {0}; +static const unsigned char kat2055_retbits[] = { + 0x5f, 0xc1, 0xdb, 0xe6, 0x7e, 0x39, 0x6a, 0xed, 0x1d, 0x04, 0x1e, 0xed, + 0x15, 0x73, 0x2a, 0x80, 0xcb, 0x3f, 0x50, 0x82, 0x9b, 0xdc, 0x54, 0x9c, + 0x79, 0x59, 0xf2, 0x6e, 0xd6, 0x6a, 0xd4, 0x07, 0xfa, 0x93, 0x98, 0xa5, + 0x8c, 0x7b, 0xf3, 0x25, 0x71, 0x04, 0xe1, 0x69, 0xae, 0x6f, 0xb5, 0xdc, + 0x18, 0xf0, 0xa1, 0x85, 0xa8, 0xba, 0xa7, 0x44, 0xda, 0xc4, 0xa1, 0x14, + 0xe1, 0x6f, 0x11, 0x1a, +}; +static const struct drbg_kat_pr_false kat2055_t = { + 14, kat2055_entropyin, kat2055_nonce, kat2055_persstr, + kat2055_entropyinreseed, kat2055_addinreseed, kat2055_addin0, + kat2055_addin1, kat2055_retbits +}; +static const struct drbg_kat kat2055 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2055_t +}; + +static const unsigned char kat2056_entropyin[] = { + 0x9f, 0x07, 0x35, 0x80, 0x36, 0x8a, 0xb5, 0xed, 0xea, 0x6d, 0x6d, 0x66, + 0x7b, 0xfc, 0xf3, 0x6a, 0x01, 0x05, 0x98, 0x2d, 0x53, 0xc7, 0xb7, 0xb0, + 0x55, 0x75, 0x96, 0x4b, 0x9f, 0x32, 0xfd, 0xd6, +}; +static const unsigned char kat2056_nonce[] = { + 0x4a, 0x08, 0xd6, 0xe7, 0xb5, 0x3d, 0x78, 0x29, 0x26, 0x6f, 0xd8, 0x49, + 0xaa, 0x2d, 0x57, 0x6e, +}; +static const unsigned char kat2056_persstr[] = {0}; +static const unsigned char kat2056_entropyinreseed[] = { + 0x09, 0xc1, 0x18, 0x34, 0xd1, 0xa2, 0x73, 0xd5, 0xc5, 0xd1, 0x2a, 0xc7, + 0x1c, 0x11, 0xff, 0x0d, 0xae, 0xd3, 0xb5, 0x20, 0xd6, 0x2b, 0x80, 0x41, + 0xcd, 0x60, 0x8b, 0xa7, 0x85, 0x3a, 0xc1, 0xa3, +}; +static const unsigned char kat2056_addinreseed[] = { + 0xe2, 0x44, 0x26, 0xc1, 0x59, 0xbd, 0xe6, 0xe1, 0xf0, 0xc1, 0xed, 0x20, + 0xaf, 0x18, 0x9f, 0x15, 0x52, 0x60, 0xa8, 0xf2, 0x0a, 0x02, 0xda, 0x69, + 0x3d, 0xf3, 0x3a, 0xda, 0x4a, 0xba, 0x5c, 0x32, +}; +static const unsigned char kat2056_addin0[] = { + 0x90, 0x55, 0xb0, 0x15, 0xae, 0xed, 0x80, 0xa3, 0xed, 0xd5, 0x22, 0x6c, + 0x64, 0x33, 0x1f, 0xd0, 0xa6, 0x5f, 0x82, 0xe7, 0x81, 0xde, 0xdc, 0x03, + 0x45, 0x3f, 0x5d, 0xcb, 0xb1, 0xa2, 0x70, 0x32, +}; +static const unsigned char kat2056_addin1[] = { + 0xb6, 0x34, 0x35, 0x3f, 0x5b, 0x71, 0x3e, 0x1c, 0xe0, 0x77, 0x8a, 0x6a, + 0x19, 0x32, 0x5a, 0x1a, 0x1d, 0xeb, 0x02, 0xbc, 0xf1, 0xcc, 0xf1, 0xde, + 0x5c, 0x2c, 0x2c, 0xb6, 0xd4, 0x69, 0xe4, 0x2f, +}; +static const unsigned char kat2056_retbits[] = { + 0x43, 0xe7, 0xe6, 0x2f, 0xfa, 0x98, 0xf4, 0x36, 0xef, 0xa3, 0x4b, 0x1f, + 0xe0, 0xe4, 0xe6, 0x33, 0xbd, 0xfe, 0x10, 0xfd, 0x20, 0xa2, 0xab, 0x1c, + 0x6f, 0x7d, 0x8f, 0x5c, 0xa5, 0x51, 0xdc, 0xd1, 0x4a, 0x8b, 0x96, 0x96, + 0xe5, 0x49, 0xb4, 0xe6, 0xfe, 0xe4, 0xc6, 0xd6, 0x9a, 0x89, 0x0c, 0x6a, + 0xa4, 0x24, 0x68, 0xda, 0xd9, 0xc5, 0x66, 0xaa, 0xaf, 0x16, 0x4a, 0x9c, + 0x81, 0x98, 0x3f, 0x11, +}; +static const struct drbg_kat_pr_false kat2056_t = { + 0, kat2056_entropyin, kat2056_nonce, kat2056_persstr, + kat2056_entropyinreseed, kat2056_addinreseed, kat2056_addin0, + kat2056_addin1, kat2056_retbits +}; +static const struct drbg_kat kat2056 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2056_t +}; + +static const unsigned char kat2057_entropyin[] = { + 0x74, 0x8b, 0x9b, 0xd2, 0x2e, 0x6e, 0x7c, 0x58, 0xb3, 0xbc, 0x01, 0x8f, + 0xa2, 0xae, 0xe9, 0xee, 0x34, 0x45, 0xaa, 0x05, 0x4b, 0x2a, 0x50, 0x9d, + 0xca, 0xed, 0xe5, 0x13, 0x9b, 0x3f, 0xb8, 0xd6, +}; +static const unsigned char kat2057_nonce[] = { + 0xe2, 0x04, 0xff, 0xc9, 0xbc, 0x51, 0x4c, 0x9c, 0x55, 0x66, 0x08, 0x61, + 0x17, 0x59, 0x0e, 0x4c, +}; +static const unsigned char kat2057_persstr[] = {0}; +static const unsigned char kat2057_entropyinreseed[] = { + 0x05, 0x58, 0x5a, 0x0c, 0x8e, 0xb3, 0xc7, 0x06, 0x1d, 0x24, 0xe0, 0x9a, + 0xfc, 0x84, 0x40, 0xce, 0xd5, 0xfd, 0x6e, 0x74, 0x8a, 0xff, 0x0b, 0x5e, + 0x38, 0xd7, 0xd5, 0xeb, 0x74, 0xf0, 0xdc, 0x6a, +}; +static const unsigned char kat2057_addinreseed[] = { + 0x83, 0x52, 0xd0, 0xbb, 0xcb, 0xb0, 0x26, 0x27, 0xc7, 0x11, 0x5e, 0xc7, + 0x88, 0x9e, 0x34, 0x2f, 0x6c, 0x6d, 0xd4, 0x3a, 0xa5, 0x65, 0x09, 0xc6, + 0x33, 0x7b, 0x2d, 0x88, 0x2d, 0xf6, 0xab, 0xc4, +}; +static const unsigned char kat2057_addin0[] = { + 0xd8, 0xa9, 0x8a, 0x4d, 0x9d, 0xf5, 0xa7, 0x9d, 0x17, 0x96, 0x8d, 0xbe, + 0x37, 0xea, 0xc8, 0x97, 0x29, 0xd4, 0x92, 0xa4, 0x93, 0x74, 0xf7, 0xea, + 0xf6, 0xe0, 0x3f, 0x53, 0xce, 0xae, 0xc0, 0xb7, +}; +static const unsigned char kat2057_addin1[] = { + 0x52, 0x69, 0xe1, 0x18, 0x7f, 0xf5, 0x82, 0xa5, 0xe3, 0xf6, 0x41, 0x7d, + 0x9e, 0x1a, 0xbd, 0x68, 0x9f, 0xb2, 0xa9, 0xd8, 0x28, 0xec, 0x30, 0x58, + 0xd8, 0xdc, 0x1c, 0x44, 0x4c, 0xfd, 0xf2, 0x24, +}; +static const unsigned char kat2057_retbits[] = { + 0xe4, 0xa1, 0xec, 0x1f, 0xa5, 0x73, 0x33, 0x7b, 0xca, 0x64, 0x9b, 0xbf, + 0xcd, 0xe2, 0xeb, 0x52, 0xe0, 0xbd, 0x61, 0x70, 0xc5, 0xb1, 0x29, 0x68, + 0xe3, 0x04, 0x60, 0x74, 0xaa, 0xd8, 0xa5, 0xe3, 0x3d, 0x12, 0x04, 0x68, + 0xb8, 0x6a, 0x07, 0x64, 0xa1, 0x03, 0xd8, 0x48, 0xd5, 0xa5, 0xad, 0xf6, + 0x30, 0x31, 0x5c, 0xc9, 0x14, 0x1d, 0xdc, 0x07, 0x1e, 0xde, 0x86, 0x96, + 0xc4, 0xae, 0x0c, 0x9b, +}; +static const struct drbg_kat_pr_false kat2057_t = { + 1, kat2057_entropyin, kat2057_nonce, kat2057_persstr, + kat2057_entropyinreseed, kat2057_addinreseed, kat2057_addin0, + kat2057_addin1, kat2057_retbits +}; +static const struct drbg_kat kat2057 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2057_t +}; + +static const unsigned char kat2058_entropyin[] = { + 0x95, 0x0a, 0xf3, 0xe5, 0xe5, 0x39, 0x82, 0x02, 0x7c, 0x70, 0xbe, 0xa5, + 0x53, 0x40, 0x02, 0x6b, 0x14, 0xde, 0xb0, 0x46, 0xb7, 0xb5, 0x62, 0xfc, + 0x2a, 0x70, 0x4e, 0x87, 0x44, 0x88, 0x58, 0x44, +}; +static const unsigned char kat2058_nonce[] = { + 0xe9, 0xe1, 0xe5, 0xcf, 0x21, 0xca, 0x35, 0xb5, 0xbd, 0xf0, 0x9d, 0x52, + 0xe8, 0xa2, 0x0a, 0x67, +}; +static const unsigned char kat2058_persstr[] = {0}; +static const unsigned char kat2058_entropyinreseed[] = { + 0x4f, 0xe1, 0x3c, 0x82, 0xf3, 0xfb, 0x4e, 0x9f, 0xe7, 0x65, 0xc2, 0xaf, + 0xc7, 0x7d, 0xc7, 0x60, 0x12, 0xe1, 0x51, 0x4f, 0x90, 0xc8, 0x2e, 0x83, + 0xd4, 0x8a, 0xc0, 0xa9, 0x3b, 0xbc, 0xac, 0xdf, +}; +static const unsigned char kat2058_addinreseed[] = { + 0x86, 0xe8, 0x2b, 0x15, 0x04, 0x96, 0xca, 0x2f, 0x7d, 0x10, 0x26, 0x6e, + 0x93, 0xc5, 0x34, 0x4c, 0x7b, 0xc2, 0x7e, 0x3d, 0x94, 0xa6, 0xe2, 0x30, + 0xdb, 0xa8, 0x04, 0x40, 0x05, 0x44, 0x5a, 0x59, +}; +static const unsigned char kat2058_addin0[] = { + 0x2a, 0x48, 0xd7, 0xa7, 0xb6, 0x51, 0x53, 0x52, 0x46, 0x81, 0x96, 0xa8, + 0x8c, 0x4b, 0x01, 0x5c, 0x57, 0x54, 0x4c, 0xb8, 0x33, 0x10, 0xbd, 0xec, + 0xf1, 0xa8, 0xbe, 0x5b, 0x53, 0xa4, 0x87, 0x5e, +}; +static const unsigned char kat2058_addin1[] = { + 0xe2, 0xf2, 0x0c, 0xf7, 0x0c, 0x84, 0x96, 0x59, 0xb1, 0x9f, 0x03, 0x4b, + 0x46, 0x23, 0x96, 0x35, 0xf7, 0x6c, 0x2d, 0x0c, 0x92, 0x9d, 0x2d, 0xcf, + 0xaa, 0x1e, 0x31, 0xd9, 0x45, 0xf0, 0x2b, 0xaa, +}; +static const unsigned char kat2058_retbits[] = { + 0xf1, 0x2a, 0xa1, 0x75, 0x6b, 0xdd, 0x09, 0x0b, 0x64, 0xae, 0xbf, 0x99, + 0xf8, 0x62, 0x84, 0x40, 0xdc, 0xab, 0x15, 0x91, 0xd5, 0x1c, 0xa1, 0x0f, + 0x71, 0xac, 0xf4, 0xa6, 0x07, 0x9e, 0xeb, 0xe3, 0xec, 0x50, 0x05, 0x26, + 0xbe, 0x2d, 0xbf, 0xb0, 0xfb, 0xb0, 0xd2, 0x5f, 0x61, 0xd1, 0x5f, 0xcc, + 0xcc, 0xba, 0xcd, 0x14, 0x35, 0x61, 0x91, 0x4f, 0xb9, 0x21, 0xd4, 0x34, + 0xda, 0xaa, 0x02, 0x3f, +}; +static const struct drbg_kat_pr_false kat2058_t = { + 2, kat2058_entropyin, kat2058_nonce, kat2058_persstr, + kat2058_entropyinreseed, kat2058_addinreseed, kat2058_addin0, + kat2058_addin1, kat2058_retbits +}; +static const struct drbg_kat kat2058 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2058_t +}; + +static const unsigned char kat2059_entropyin[] = { + 0x84, 0x2b, 0x5d, 0xcc, 0x51, 0x9c, 0x45, 0xe7, 0x80, 0x19, 0xc0, 0xc8, + 0xd0, 0xff, 0x9f, 0x1f, 0x89, 0xe1, 0x3b, 0x10, 0x33, 0x95, 0xc4, 0xdb, + 0x67, 0xe6, 0x56, 0xc7, 0x98, 0x00, 0x96, 0x55, +}; +static const unsigned char kat2059_nonce[] = { + 0x59, 0x87, 0x6a, 0xf4, 0x58, 0x61, 0x4e, 0x4c, 0x71, 0xe7, 0x2e, 0x16, + 0x32, 0xc2, 0xbf, 0x2e, +}; +static const unsigned char kat2059_persstr[] = {0}; +static const unsigned char kat2059_entropyinreseed[] = { + 0x5e, 0xa5, 0xba, 0xfb, 0x70, 0x5f, 0xfb, 0x0a, 0x05, 0x12, 0x38, 0xf7, + 0x80, 0xab, 0x02, 0x77, 0x93, 0xb6, 0x4a, 0x2d, 0x9d, 0xb4, 0xef, 0x15, + 0xc6, 0x50, 0x30, 0x97, 0xf8, 0xb3, 0x17, 0xa8, +}; +static const unsigned char kat2059_addinreseed[] = { + 0x1f, 0x6f, 0xce, 0x9f, 0x01, 0x00, 0x5b, 0xfc, 0x9a, 0xc5, 0x5c, 0x28, + 0x20, 0xc3, 0x26, 0xf5, 0xba, 0x8a, 0x10, 0x27, 0xaa, 0x49, 0x2a, 0x11, + 0x30, 0x6d, 0x35, 0x67, 0x1b, 0xd1, 0x5a, 0x96, +}; +static const unsigned char kat2059_addin0[] = { + 0xfd, 0xba, 0xbb, 0x5e, 0xe1, 0x36, 0x48, 0x82, 0x71, 0xfb, 0x86, 0x04, + 0x50, 0x6c, 0x59, 0xb2, 0xb1, 0xb1, 0xb0, 0xa5, 0xcb, 0xa4, 0x24, 0x1f, + 0xe9, 0xc3, 0x3d, 0x59, 0xff, 0xbe, 0xe7, 0xc6, +}; +static const unsigned char kat2059_addin1[] = { + 0xbc, 0x6c, 0x2d, 0xca, 0x4c, 0xeb, 0x01, 0x45, 0xd9, 0x68, 0xc5, 0x54, + 0xfc, 0x9d, 0xe7, 0xf0, 0x88, 0x2c, 0x92, 0x72, 0xbe, 0x9b, 0xbe, 0x76, + 0xcb, 0xed, 0xd3, 0xd7, 0x22, 0x92, 0xdb, 0x96, +}; +static const unsigned char kat2059_retbits[] = { + 0x54, 0x0d, 0xa0, 0xc1, 0xd1, 0xda, 0x6d, 0x0e, 0x7c, 0x3d, 0x1e, 0x5c, + 0x64, 0x97, 0x43, 0x92, 0x3e, 0xe9, 0x24, 0xa2, 0xa8, 0x54, 0xc2, 0x2c, + 0x03, 0x4f, 0xf5, 0x3b, 0x6c, 0x86, 0x66, 0x86, 0x3f, 0xc6, 0x39, 0xeb, + 0xe9, 0xf4, 0xde, 0x4c, 0x48, 0x61, 0x85, 0x91, 0xbc, 0x46, 0xce, 0x69, + 0x3a, 0xae, 0xcb, 0x6e, 0x9c, 0x32, 0xe8, 0x63, 0x5b, 0x25, 0x83, 0x28, + 0x5b, 0xd7, 0x91, 0x85, +}; +static const struct drbg_kat_pr_false kat2059_t = { + 3, kat2059_entropyin, kat2059_nonce, kat2059_persstr, + kat2059_entropyinreseed, kat2059_addinreseed, kat2059_addin0, + kat2059_addin1, kat2059_retbits +}; +static const struct drbg_kat kat2059 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2059_t +}; + +static const unsigned char kat2060_entropyin[] = { + 0x96, 0xcd, 0x1a, 0xc9, 0x3f, 0xbd, 0xe2, 0xce, 0x84, 0x33, 0x99, 0x2d, + 0xf6, 0x41, 0x08, 0x13, 0x89, 0x7f, 0xdd, 0x93, 0xa2, 0x6d, 0xb8, 0xe6, + 0x95, 0x53, 0x60, 0x04, 0x5c, 0xd5, 0x54, 0x70, +}; +static const unsigned char kat2060_nonce[] = { + 0x1f, 0x25, 0x82, 0x61, 0xba, 0xa3, 0x9a, 0xa3, 0xae, 0xbd, 0x7e, 0x8b, + 0x16, 0x7d, 0xd6, 0xe8, +}; +static const unsigned char kat2060_persstr[] = {0}; +static const unsigned char kat2060_entropyinreseed[] = { + 0xb7, 0x65, 0xd4, 0xdd, 0x23, 0xad, 0xcd, 0x9c, 0x5b, 0x92, 0xae, 0x10, + 0xe5, 0xf7, 0xd7, 0x2c, 0x6f, 0x28, 0x74, 0xad, 0x08, 0x05, 0xde, 0x3d, + 0x12, 0xd3, 0x18, 0xd0, 0x8c, 0x70, 0xb2, 0x98, +}; +static const unsigned char kat2060_addinreseed[] = { + 0x7b, 0x6e, 0x37, 0x90, 0x9d, 0xfd, 0xcc, 0xe4, 0xb1, 0x53, 0x56, 0xaa, + 0x4b, 0x5c, 0xca, 0x64, 0x92, 0x15, 0x70, 0x5f, 0xff, 0x00, 0xa2, 0x30, + 0xa9, 0x4a, 0xed, 0xf1, 0x6f, 0xba, 0x85, 0x8c, +}; +static const unsigned char kat2060_addin0[] = { + 0xea, 0xc7, 0x7c, 0xd7, 0xe6, 0xca, 0xbc, 0x39, 0x71, 0x09, 0xa6, 0x66, + 0x93, 0x28, 0xbb, 0x78, 0x89, 0x60, 0x41, 0xc8, 0x3b, 0x6c, 0xc6, 0xe3, + 0xf6, 0xea, 0xa6, 0xc4, 0x8b, 0x3f, 0xfb, 0xca, +}; +static const unsigned char kat2060_addin1[] = { + 0x7b, 0x08, 0xa2, 0x56, 0x54, 0x0d, 0xe3, 0xed, 0xe2, 0xa6, 0x8a, 0x88, + 0x22, 0x99, 0xd5, 0xbf, 0x7b, 0x55, 0xdc, 0xf6, 0x6b, 0x02, 0x1a, 0x44, + 0x2e, 0x11, 0x0a, 0x1b, 0xc0, 0x68, 0x8a, 0xcf, +}; +static const unsigned char kat2060_retbits[] = { + 0x39, 0xae, 0x15, 0xfd, 0x0e, 0x41, 0x67, 0x92, 0x25, 0x9c, 0x75, 0xe1, + 0x5d, 0x30, 0x5f, 0x77, 0xb0, 0x92, 0x0d, 0x99, 0x13, 0xab, 0x17, 0xd3, + 0x4f, 0x6b, 0x02, 0x5a, 0x78, 0xc9, 0xd1, 0x4c, 0x25, 0xf7, 0xbb, 0xcc, + 0x11, 0xae, 0x8f, 0x9c, 0xbd, 0xbe, 0xa4, 0x13, 0xc3, 0x32, 0xd0, 0xfa, + 0x53, 0xb5, 0x01, 0x6d, 0x62, 0xf5, 0x92, 0x51, 0x63, 0xd1, 0xf9, 0xf3, + 0xeb, 0xc3, 0x73, 0x16, +}; +static const struct drbg_kat_pr_false kat2060_t = { + 4, kat2060_entropyin, kat2060_nonce, kat2060_persstr, + kat2060_entropyinreseed, kat2060_addinreseed, kat2060_addin0, + kat2060_addin1, kat2060_retbits +}; +static const struct drbg_kat kat2060 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2060_t +}; + +static const unsigned char kat2061_entropyin[] = { + 0xbb, 0xe7, 0xca, 0xee, 0x69, 0xaf, 0xde, 0xdc, 0xa4, 0xd5, 0x65, 0xe3, + 0x52, 0xbf, 0x4a, 0x51, 0xf1, 0xd3, 0xa5, 0xae, 0x2a, 0x2d, 0x72, 0x1b, + 0x6e, 0xa4, 0x81, 0xd8, 0xc2, 0x5e, 0x11, 0x82, +}; +static const unsigned char kat2061_nonce[] = { + 0xc9, 0xe5, 0xc0, 0x75, 0xb2, 0x89, 0xb5, 0x8c, 0xbc, 0x92, 0x0f, 0xeb, + 0x99, 0x9d, 0xa9, 0xcb, +}; +static const unsigned char kat2061_persstr[] = {0}; +static const unsigned char kat2061_entropyinreseed[] = { + 0xa7, 0x51, 0xbc, 0x73, 0x73, 0xe1, 0x9c, 0xac, 0x00, 0xc7, 0x20, 0x6f, + 0x06, 0x5d, 0x70, 0xf6, 0xa3, 0xcf, 0x4a, 0xc2, 0xbd, 0x8f, 0x19, 0xa9, + 0x56, 0xed, 0x81, 0x68, 0x05, 0x40, 0x42, 0x59, +}; +static const unsigned char kat2061_addinreseed[] = { + 0xdf, 0x89, 0x4e, 0x68, 0xf6, 0x1d, 0x34, 0xae, 0x10, 0xa2, 0xdc, 0xc0, + 0xca, 0x7a, 0xe0, 0x4b, 0x41, 0xaf, 0xd7, 0xba, 0x58, 0xaa, 0xc9, 0xb2, + 0xb0, 0x81, 0x21, 0x6d, 0x21, 0x41, 0x77, 0xc4, +}; +static const unsigned char kat2061_addin0[] = { + 0x2c, 0x43, 0xa2, 0xe1, 0xaa, 0x47, 0x79, 0x99, 0x4b, 0x1b, 0x74, 0xb4, + 0x51, 0x09, 0x15, 0xda, 0xa7, 0xeb, 0x0f, 0x90, 0xbb, 0xae, 0x83, 0xb5, + 0xfd, 0xce, 0xb6, 0x7f, 0xac, 0x1e, 0x23, 0x76, +}; +static const unsigned char kat2061_addin1[] = { + 0x6a, 0x77, 0xa6, 0x8f, 0x3d, 0x07, 0x92, 0x37, 0xbc, 0x77, 0x7c, 0xf4, + 0x1c, 0x38, 0xad, 0x49, 0xc7, 0xc0, 0x05, 0x3c, 0xda, 0xdd, 0x0b, 0xb1, + 0xaa, 0x41, 0xb5, 0xd8, 0xb8, 0x1d, 0xde, 0x48, +}; +static const unsigned char kat2061_retbits[] = { + 0x34, 0xb5, 0xe2, 0x2a, 0x86, 0x24, 0x73, 0x4b, 0x7d, 0x5f, 0x6b, 0x35, + 0x93, 0x07, 0x99, 0xec, 0xeb, 0x7d, 0xbf, 0xc4, 0x69, 0x14, 0xf4, 0x79, + 0xe3, 0x4b, 0xf6, 0x4e, 0xaa, 0x15, 0x43, 0x09, 0xd8, 0x5c, 0xec, 0xa6, + 0x24, 0x1e, 0x17, 0xfd, 0xa0, 0x4f, 0x09, 0x70, 0x45, 0x7e, 0xcf, 0xd8, + 0xa9, 0xf7, 0x00, 0x30, 0x46, 0xc1, 0xbd, 0xfc, 0xe3, 0xb3, 0x11, 0xba, + 0x2e, 0xfa, 0x97, 0xa9, +}; +static const struct drbg_kat_pr_false kat2061_t = { + 5, kat2061_entropyin, kat2061_nonce, kat2061_persstr, + kat2061_entropyinreseed, kat2061_addinreseed, kat2061_addin0, + kat2061_addin1, kat2061_retbits +}; +static const struct drbg_kat kat2061 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2061_t +}; + +static const unsigned char kat2062_entropyin[] = { + 0xfb, 0x33, 0x7b, 0x69, 0xc9, 0xac, 0xe8, 0xde, 0xfa, 0xc7, 0xf6, 0x85, + 0x35, 0xcc, 0x6f, 0xee, 0x72, 0xb8, 0x0b, 0xf9, 0x1d, 0x22, 0x6a, 0x34, + 0x77, 0xb9, 0x0a, 0x0d, 0xa0, 0x2c, 0x3e, 0x71, +}; +static const unsigned char kat2062_nonce[] = { + 0x58, 0x1d, 0x7f, 0x09, 0xc1, 0x1e, 0x7c, 0x40, 0x8a, 0x99, 0x36, 0x84, + 0xe5, 0x16, 0xa3, 0x07, +}; +static const unsigned char kat2062_persstr[] = {0}; +static const unsigned char kat2062_entropyinreseed[] = { + 0xb0, 0xcb, 0x88, 0xe0, 0x7a, 0xc0, 0xa0, 0x0a, 0xe7, 0xaf, 0x46, 0x9c, + 0xb9, 0x76, 0xc1, 0x6c, 0xbc, 0x3e, 0x93, 0x11, 0xb6, 0x92, 0x7a, 0x53, + 0x74, 0xd4, 0x9a, 0x9a, 0xb7, 0x6e, 0xb8, 0xe3, +}; +static const unsigned char kat2062_addinreseed[] = { + 0xc1, 0xef, 0xdf, 0x70, 0xb2, 0x16, 0xab, 0x0f, 0xb7, 0x81, 0x4d, 0x0c, + 0x92, 0x3d, 0x26, 0x69, 0x97, 0x49, 0xf6, 0x2a, 0x72, 0x0b, 0x9b, 0xbc, + 0xdb, 0xd1, 0x47, 0x17, 0x03, 0x64, 0x50, 0x4c, +}; +static const unsigned char kat2062_addin0[] = { + 0x4f, 0x86, 0xec, 0x3b, 0x4c, 0x3b, 0x48, 0x89, 0x67, 0x17, 0x27, 0x5b, + 0x74, 0x6b, 0xe2, 0x0f, 0xcf, 0x59, 0x3f, 0x39, 0x79, 0xf4, 0xbe, 0x3b, + 0x8e, 0x16, 0xda, 0x50, 0x39, 0xcf, 0x79, 0x6e, +}; +static const unsigned char kat2062_addin1[] = { + 0x86, 0x82, 0x04, 0xde, 0x4b, 0x0d, 0xce, 0x60, 0x1b, 0x59, 0xfb, 0x69, + 0x2b, 0x08, 0x91, 0xf4, 0x4f, 0xa0, 0x8b, 0x44, 0x09, 0x02, 0x48, 0x10, + 0x9f, 0x50, 0x12, 0xfd, 0x21, 0x05, 0x63, 0x64, +}; +static const unsigned char kat2062_retbits[] = { + 0x7a, 0xee, 0x74, 0x7a, 0x7d, 0x70, 0xd2, 0x6e, 0x94, 0x2e, 0x56, 0x42, + 0x89, 0xc8, 0x40, 0x3d, 0xce, 0x2e, 0x70, 0x7d, 0xaa, 0xed, 0xf2, 0x79, + 0x46, 0x03, 0xc3, 0xbe, 0xf0, 0x35, 0xd0, 0xff, 0x14, 0xe8, 0xf6, 0x1d, + 0x12, 0x35, 0xe8, 0xf8, 0x36, 0x2d, 0x18, 0xf2, 0xc4, 0xf1, 0xe7, 0xdc, + 0xf5, 0x57, 0x77, 0x7d, 0x44, 0x42, 0xc5, 0xd5, 0xeb, 0x46, 0xe3, 0x97, + 0x56, 0xdb, 0x98, 0x6d, +}; +static const struct drbg_kat_pr_false kat2062_t = { + 6, kat2062_entropyin, kat2062_nonce, kat2062_persstr, + kat2062_entropyinreseed, kat2062_addinreseed, kat2062_addin0, + kat2062_addin1, kat2062_retbits +}; +static const struct drbg_kat kat2062 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2062_t +}; + +static const unsigned char kat2063_entropyin[] = { + 0x15, 0xb7, 0x40, 0x90, 0xb3, 0x62, 0xe9, 0xb5, 0xc8, 0xba, 0x9f, 0xb7, + 0xf9, 0x84, 0x1d, 0x60, 0x88, 0x51, 0xa9, 0xf6, 0xd7, 0x0c, 0xd0, 0x71, + 0xd3, 0x46, 0xa2, 0x7f, 0x5e, 0x1a, 0x8f, 0x95, +}; +static const unsigned char kat2063_nonce[] = { + 0xca, 0x94, 0x43, 0x3a, 0x65, 0x1a, 0x87, 0x3c, 0x10, 0xc2, 0xbc, 0x46, + 0x26, 0x84, 0x6a, 0x29, +}; +static const unsigned char kat2063_persstr[] = {0}; +static const unsigned char kat2063_entropyinreseed[] = { + 0xc8, 0x64, 0xb7, 0x86, 0xb4, 0xf7, 0xda, 0x6c, 0xe9, 0xe1, 0x15, 0x40, + 0x44, 0x76, 0x82, 0x10, 0xf6, 0xff, 0x3e, 0x6f, 0xb6, 0x7e, 0x9c, 0x1c, + 0x05, 0x99, 0x7f, 0xac, 0x3d, 0x6a, 0xed, 0x6b, +}; +static const unsigned char kat2063_addinreseed[] = { + 0xed, 0x7d, 0x93, 0x34, 0x74, 0xeb, 0xcf, 0x2d, 0x24, 0x61, 0x94, 0xb8, + 0xd9, 0xe2, 0x81, 0xa2, 0xb6, 0x5c, 0x1d, 0x4c, 0x63, 0xa4, 0x4a, 0x6b, + 0x3d, 0xdf, 0x86, 0x8e, 0x05, 0x2b, 0xdb, 0x1e, +}; +static const unsigned char kat2063_addin0[] = { + 0x58, 0xd8, 0x5c, 0x1f, 0x69, 0x76, 0x51, 0xd7, 0xe1, 0x8e, 0x90, 0x2f, + 0x71, 0x6b, 0xc3, 0xeb, 0x7c, 0xbc, 0x31, 0xb1, 0x27, 0xcd, 0x85, 0xd7, + 0x06, 0xd6, 0x99, 0xc4, 0xa4, 0x2a, 0x2d, 0x62, +}; +static const unsigned char kat2063_addin1[] = { + 0xe9, 0x16, 0x42, 0x9e, 0xd3, 0x82, 0x2a, 0xb6, 0xc8, 0x84, 0xc2, 0xcd, + 0xd5, 0xd7, 0x16, 0x13, 0xeb, 0x41, 0x03, 0x7d, 0x18, 0xe3, 0xd6, 0xa8, + 0x93, 0x35, 0x64, 0x81, 0xa1, 0x45, 0x13, 0xf8, +}; +static const unsigned char kat2063_retbits[] = { + 0xe9, 0x7f, 0x83, 0x8e, 0xef, 0x0f, 0xb6, 0xd0, 0x3c, 0xd6, 0x51, 0x0e, + 0x47, 0x17, 0x16, 0x92, 0xf4, 0x63, 0xa6, 0x9e, 0xd5, 0x62, 0x1f, 0x7c, + 0x42, 0x48, 0x39, 0x9e, 0xa7, 0x70, 0x51, 0x48, 0xea, 0x6e, 0x7c, 0x4b, + 0xf3, 0x45, 0x00, 0xda, 0x89, 0x50, 0x46, 0xe1, 0x71, 0xe5, 0x14, 0x94, + 0x1c, 0x43, 0x03, 0x0c, 0xa5, 0xdb, 0xfc, 0xc2, 0x6a, 0x3c, 0x7e, 0x5c, + 0x30, 0x56, 0x46, 0xa4, +}; +static const struct drbg_kat_pr_false kat2063_t = { + 7, kat2063_entropyin, kat2063_nonce, kat2063_persstr, + kat2063_entropyinreseed, kat2063_addinreseed, kat2063_addin0, + kat2063_addin1, kat2063_retbits +}; +static const struct drbg_kat kat2063 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2063_t +}; + +static const unsigned char kat2064_entropyin[] = { + 0x65, 0xe3, 0xdb, 0x8d, 0x0a, 0x6e, 0x3d, 0xc1, 0x28, 0x42, 0xf0, 0x55, + 0xc8, 0x0e, 0xae, 0x31, 0xf8, 0x18, 0xb1, 0xa1, 0x4d, 0x75, 0xc8, 0x71, + 0x1b, 0x8c, 0x18, 0x1d, 0x0d, 0x18, 0x74, 0x7b, +}; +static const unsigned char kat2064_nonce[] = { + 0xb7, 0x9f, 0x9c, 0xf8, 0x55, 0xe0, 0xcb, 0x6a, 0x84, 0x1c, 0x08, 0x0b, + 0xae, 0x63, 0x49, 0x76, +}; +static const unsigned char kat2064_persstr[] = {0}; +static const unsigned char kat2064_entropyinreseed[] = { + 0xd4, 0xcf, 0x11, 0x66, 0xb3, 0x38, 0xc6, 0x42, 0xd9, 0xac, 0x01, 0x38, + 0x91, 0x35, 0x20, 0x13, 0x03, 0x4f, 0xb8, 0xe7, 0x1b, 0x19, 0xf4, 0x6a, + 0x5e, 0x6b, 0xb8, 0xde, 0x03, 0x44, 0x77, 0xb0, +}; +static const unsigned char kat2064_addinreseed[] = { + 0xc4, 0x43, 0x07, 0x38, 0x7c, 0x1f, 0xf4, 0xee, 0xa1, 0x94, 0x16, 0x9b, + 0x00, 0x62, 0x42, 0x10, 0x52, 0x2d, 0xfc, 0x9a, 0x15, 0x66, 0x24, 0xe8, + 0x22, 0x5d, 0xc4, 0x95, 0x76, 0xdf, 0xc1, 0xf1, +}; +static const unsigned char kat2064_addin0[] = { + 0xe8, 0xb1, 0x0c, 0x6e, 0x30, 0xe4, 0xa2, 0xf4, 0x06, 0xd5, 0xe6, 0x5c, + 0x39, 0x7d, 0xf0, 0xde, 0x25, 0x19, 0x9a, 0x14, 0x8f, 0xe3, 0x16, 0x26, + 0x68, 0x69, 0xe9, 0xfe, 0xdc, 0x71, 0x15, 0x87, +}; +static const unsigned char kat2064_addin1[] = { + 0xb6, 0x05, 0x51, 0x59, 0x67, 0x47, 0xb7, 0xf1, 0x43, 0x91, 0xac, 0xce, + 0x63, 0xc7, 0xf1, 0xde, 0x7a, 0xa5, 0x96, 0xf6, 0x43, 0xa3, 0x6c, 0x97, + 0xc8, 0x2f, 0xbd, 0x8f, 0x34, 0x3e, 0xf7, 0x1a, +}; +static const unsigned char kat2064_retbits[] = { + 0x88, 0x6c, 0xc0, 0x6f, 0x88, 0x41, 0xb2, 0xec, 0xe3, 0x89, 0x42, 0x2c, + 0xa8, 0x8b, 0xc1, 0x56, 0xd3, 0x96, 0xa7, 0xe6, 0x2c, 0x01, 0x81, 0x80, + 0x84, 0x0a, 0xb0, 0x9b, 0x2c, 0x8b, 0x08, 0x4c, 0x0c, 0xd0, 0x63, 0xcc, + 0x27, 0x56, 0x75, 0x5c, 0x6e, 0x35, 0x0d, 0x42, 0xa7, 0xea, 0x85, 0xae, + 0x04, 0x7f, 0x4d, 0x86, 0x29, 0xbe, 0xcd, 0x70, 0x2d, 0x35, 0xcf, 0x2e, + 0xe4, 0x03, 0x9c, 0x4e, +}; +static const struct drbg_kat_pr_false kat2064_t = { + 8, kat2064_entropyin, kat2064_nonce, kat2064_persstr, + kat2064_entropyinreseed, kat2064_addinreseed, kat2064_addin0, + kat2064_addin1, kat2064_retbits +}; +static const struct drbg_kat kat2064 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2064_t +}; + +static const unsigned char kat2065_entropyin[] = { + 0xc5, 0x7b, 0x69, 0x79, 0x25, 0xa2, 0xb2, 0xca, 0x7e, 0xe1, 0x24, 0x25, + 0x2a, 0xd7, 0x5d, 0x45, 0x1a, 0x33, 0x31, 0xcd, 0xe2, 0x07, 0x8c, 0xc3, + 0x49, 0xd7, 0x3e, 0x55, 0xce, 0xc5, 0x0b, 0x86, +}; +static const unsigned char kat2065_nonce[] = { + 0x5f, 0x59, 0x31, 0x58, 0x79, 0x4c, 0x51, 0x4c, 0x7d, 0x34, 0x47, 0x87, + 0x1c, 0x8e, 0xc9, 0xef, +}; +static const unsigned char kat2065_persstr[] = {0}; +static const unsigned char kat2065_entropyinreseed[] = { + 0x71, 0x65, 0x3e, 0xbc, 0x9e, 0x18, 0xba, 0x5d, 0x3e, 0x5f, 0x0a, 0x7a, + 0xe5, 0xb3, 0x80, 0x2e, 0xc6, 0x96, 0x15, 0xa5, 0x0f, 0x3a, 0xe8, 0x70, + 0x4a, 0x8c, 0x3d, 0xac, 0xe0, 0x6d, 0x14, 0x6b, +}; +static const unsigned char kat2065_addinreseed[] = { + 0x79, 0xd9, 0x32, 0x2a, 0x06, 0xe4, 0xc6, 0x64, 0x06, 0xb3, 0x76, 0x66, + 0xd7, 0x71, 0x4c, 0x24, 0x99, 0x7d, 0xb0, 0x07, 0x55, 0x7f, 0x49, 0x07, + 0xa1, 0x80, 0x9c, 0xc7, 0x88, 0x32, 0x69, 0x78, +}; +static const unsigned char kat2065_addin0[] = { + 0x8f, 0x53, 0xc1, 0xc6, 0xa1, 0x1d, 0xfe, 0xe6, 0x52, 0x13, 0x2b, 0x86, + 0x4e, 0x47, 0x07, 0xb2, 0x23, 0x6d, 0x31, 0x5c, 0x46, 0x4f, 0xcf, 0x5e, + 0x84, 0x58, 0x72, 0x12, 0x66, 0xd1, 0x53, 0x68, +}; +static const unsigned char kat2065_addin1[] = { + 0x84, 0xc7, 0x84, 0x63, 0x7c, 0xde, 0xf2, 0x05, 0x3a, 0x2d, 0xd5, 0xdc, + 0xd6, 0xa7, 0x5e, 0xd2, 0x11, 0x92, 0x09, 0xe7, 0xda, 0x45, 0x4b, 0x1d, + 0x90, 0x22, 0xfd, 0x7e, 0xf7, 0xd4, 0x16, 0x75, +}; +static const unsigned char kat2065_retbits[] = { + 0x99, 0x0d, 0x41, 0x42, 0x1f, 0x54, 0x5a, 0x75, 0x8e, 0xe4, 0x15, 0x93, + 0x8a, 0x05, 0x07, 0x7f, 0x56, 0xab, 0x3e, 0x96, 0xf0, 0x3d, 0xb6, 0x2b, + 0x6c, 0x88, 0x5a, 0x98, 0x7b, 0x70, 0xdd, 0x2d, 0x72, 0xcc, 0xb1, 0x88, + 0x26, 0x33, 0xab, 0x8f, 0xba, 0xb7, 0x00, 0x21, 0x04, 0x1e, 0xa9, 0x4c, + 0xce, 0xd7, 0x20, 0x5b, 0x65, 0x50, 0x15, 0x6a, 0x3d, 0x73, 0x71, 0xa2, + 0x37, 0xe9, 0x01, 0x6f, +}; +static const struct drbg_kat_pr_false kat2065_t = { + 9, kat2065_entropyin, kat2065_nonce, kat2065_persstr, + kat2065_entropyinreseed, kat2065_addinreseed, kat2065_addin0, + kat2065_addin1, kat2065_retbits +}; +static const struct drbg_kat kat2065 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2065_t +}; + +static const unsigned char kat2066_entropyin[] = { + 0x3e, 0x47, 0x3c, 0x90, 0x9e, 0x54, 0xca, 0x0b, 0xef, 0x5d, 0xe8, 0x53, + 0x66, 0x4f, 0x31, 0x13, 0x82, 0xed, 0x00, 0x52, 0x26, 0x01, 0xdf, 0xea, + 0x2c, 0xa0, 0x3a, 0xcd, 0x10, 0x59, 0x3f, 0xa1, +}; +static const unsigned char kat2066_nonce[] = { + 0x5e, 0x41, 0x5a, 0x91, 0x41, 0xda, 0xb4, 0xdf, 0x17, 0x1a, 0xda, 0xd3, + 0x99, 0x79, 0x52, 0xd8, +}; +static const unsigned char kat2066_persstr[] = {0}; +static const unsigned char kat2066_entropyinreseed[] = { + 0x2e, 0x76, 0xa1, 0x86, 0x77, 0x1e, 0x1d, 0x70, 0x59, 0xc9, 0xd6, 0xdf, + 0x5a, 0xab, 0x3e, 0x30, 0x42, 0x1d, 0x34, 0xdd, 0x31, 0x8b, 0x5e, 0x1e, + 0xdd, 0x59, 0xc0, 0xc2, 0xf2, 0x10, 0x36, 0xce, +}; +static const unsigned char kat2066_addinreseed[] = { + 0x18, 0x10, 0xe5, 0xb9, 0x63, 0xdf, 0xfb, 0x7f, 0xa7, 0x7b, 0x76, 0x1b, + 0x6d, 0x3c, 0xc9, 0xca, 0xfd, 0xa7, 0xb7, 0x75, 0x10, 0xe4, 0x44, 0x57, + 0x85, 0x26, 0x89, 0x10, 0xb9, 0x95, 0xc7, 0x88, +}; +static const unsigned char kat2066_addin0[] = { + 0x0a, 0xbc, 0xce, 0x85, 0x53, 0xe1, 0x57, 0x0d, 0xa0, 0x7a, 0xd5, 0x16, + 0x5c, 0x95, 0xa7, 0x1e, 0xf0, 0xa9, 0xce, 0xe7, 0x46, 0x96, 0x39, 0x95, + 0xdc, 0x7a, 0xbb, 0x2c, 0x9b, 0x4d, 0xc5, 0x60, +}; +static const unsigned char kat2066_addin1[] = { + 0xd3, 0x9b, 0x08, 0xed, 0x9b, 0x49, 0x92, 0x1c, 0x7e, 0xc7, 0x35, 0xd1, + 0x77, 0x23, 0xd7, 0xc8, 0x47, 0xe0, 0x61, 0xcf, 0xd8, 0xc3, 0xdb, 0x4f, + 0xb9, 0x14, 0xe0, 0x9b, 0xc3, 0x98, 0x92, 0x65, +}; +static const unsigned char kat2066_retbits[] = { + 0x21, 0xd7, 0x7a, 0x37, 0x06, 0xdf, 0x28, 0x28, 0x92, 0x37, 0x30, 0x03, + 0x95, 0x4e, 0x95, 0x3c, 0xf9, 0x09, 0x1b, 0x35, 0x02, 0xb8, 0x02, 0x85, + 0x59, 0x91, 0x9d, 0x61, 0x5b, 0x74, 0x53, 0x39, 0x5e, 0x12, 0x03, 0xc9, + 0x85, 0x8c, 0x23, 0x6f, 0xf4, 0xa3, 0x9d, 0x26, 0x4d, 0xbe, 0xfa, 0xb4, + 0x8d, 0xc7, 0xb3, 0xe0, 0x83, 0xa1, 0xa2, 0x13, 0x4c, 0x1b, 0xf7, 0x05, + 0x43, 0xb8, 0x18, 0x59, +}; +static const struct drbg_kat_pr_false kat2066_t = { + 10, kat2066_entropyin, kat2066_nonce, kat2066_persstr, + kat2066_entropyinreseed, kat2066_addinreseed, kat2066_addin0, + kat2066_addin1, kat2066_retbits +}; +static const struct drbg_kat kat2066 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2066_t +}; + +static const unsigned char kat2067_entropyin[] = { + 0xd5, 0x35, 0xa0, 0x9b, 0x24, 0x05, 0xe4, 0x38, 0x8c, 0xcb, 0xd1, 0xf6, + 0x1a, 0x55, 0x18, 0xcf, 0xe9, 0xd0, 0xb3, 0x11, 0xf6, 0x41, 0xa1, 0xf2, + 0xde, 0xf7, 0x39, 0x4e, 0x7e, 0xe3, 0x89, 0x43, +}; +static const unsigned char kat2067_nonce[] = { + 0x8b, 0x07, 0x98, 0x43, 0xb5, 0x3f, 0x41, 0x5f, 0x48, 0x49, 0xb6, 0x0f, + 0x6c, 0x4b, 0x6f, 0x5b, +}; +static const unsigned char kat2067_persstr[] = {0}; +static const unsigned char kat2067_entropyinreseed[] = { + 0x40, 0xe4, 0xad, 0x89, 0x0e, 0x3a, 0xe3, 0x8b, 0x0e, 0xf0, 0xbb, 0x45, + 0x8a, 0xb5, 0x79, 0xd7, 0xd9, 0x89, 0x04, 0xc3, 0xf0, 0xf1, 0xf3, 0x2b, + 0xd2, 0x72, 0x05, 0x35, 0x5f, 0x2a, 0x0a, 0x18, +}; +static const unsigned char kat2067_addinreseed[] = { + 0x46, 0xf0, 0x5c, 0x8f, 0x15, 0xbc, 0xcf, 0x47, 0xfe, 0xa0, 0x99, 0x13, + 0x80, 0xfc, 0x40, 0x7e, 0x36, 0x7f, 0x1b, 0x11, 0xdd, 0xdf, 0xd4, 0xb3, + 0xdd, 0x0e, 0xa8, 0x61, 0x44, 0x54, 0x99, 0x8a, +}; +static const unsigned char kat2067_addin0[] = { + 0x97, 0x88, 0x1b, 0xf6, 0x3c, 0xf3, 0xe9, 0xcb, 0xef, 0xa8, 0x99, 0x96, + 0x21, 0xdd, 0x8f, 0x6f, 0x19, 0xbe, 0x23, 0x1b, 0x12, 0xe2, 0x66, 0xb7, + 0x74, 0x79, 0xd7, 0x15, 0xe7, 0x65, 0x66, 0xf2, +}; +static const unsigned char kat2067_addin1[] = { + 0x20, 0xb3, 0x20, 0xd2, 0x72, 0xe0, 0x2c, 0x04, 0xc4, 0x50, 0x2a, 0x09, + 0x4e, 0x22, 0x46, 0x2e, 0x1e, 0xa7, 0x6a, 0x81, 0x26, 0x87, 0x87, 0x15, + 0xba, 0x17, 0x41, 0x5a, 0x3b, 0x5a, 0x11, 0x16, +}; +static const unsigned char kat2067_retbits[] = { + 0x3d, 0xc4, 0x7d, 0x67, 0x86, 0xc2, 0xcc, 0x41, 0x8b, 0x6e, 0xce, 0x22, + 0xda, 0xd2, 0x1a, 0x8d, 0x75, 0x9c, 0xe7, 0xc4, 0xb1, 0x98, 0x2a, 0x78, + 0xd8, 0xb3, 0x26, 0xee, 0x72, 0x62, 0xc6, 0x4a, 0x18, 0x9f, 0x59, 0x85, + 0xe7, 0x97, 0x4f, 0x6f, 0x7c, 0x2d, 0xfc, 0x43, 0xba, 0x37, 0xa1, 0x12, + 0x63, 0x7b, 0xb9, 0xba, 0xc1, 0xf8, 0xb4, 0xe6, 0xc6, 0x24, 0x52, 0xd4, + 0x53, 0xf8, 0xa2, 0xe6, +}; +static const struct drbg_kat_pr_false kat2067_t = { + 11, kat2067_entropyin, kat2067_nonce, kat2067_persstr, + kat2067_entropyinreseed, kat2067_addinreseed, kat2067_addin0, + kat2067_addin1, kat2067_retbits +}; +static const struct drbg_kat kat2067 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2067_t +}; + +static const unsigned char kat2068_entropyin[] = { + 0x54, 0x14, 0xaa, 0x61, 0xc9, 0x9a, 0x61, 0xa8, 0x37, 0x95, 0x7d, 0x4e, + 0x48, 0x34, 0xaf, 0x5a, 0x1f, 0xa1, 0xaf, 0x06, 0x47, 0x3b, 0x2a, 0x00, + 0x92, 0xe8, 0x64, 0x37, 0x7b, 0xa6, 0x0b, 0x37, +}; +static const unsigned char kat2068_nonce[] = { + 0x21, 0xdc, 0x0a, 0xc4, 0x8c, 0x7c, 0xbb, 0x74, 0x97, 0x01, 0x08, 0x35, + 0xfc, 0xc6, 0xfa, 0x0e, +}; +static const unsigned char kat2068_persstr[] = {0}; +static const unsigned char kat2068_entropyinreseed[] = { + 0x88, 0x07, 0x2a, 0xf8, 0xd0, 0x67, 0xfc, 0x9f, 0x63, 0x73, 0x1a, 0x62, + 0x41, 0x3c, 0x3a, 0xaf, 0x44, 0xb4, 0xb6, 0x80, 0x12, 0x06, 0x15, 0x60, + 0x75, 0xdf, 0xc9, 0x0b, 0x0a, 0xc9, 0xfe, 0x91, +}; +static const unsigned char kat2068_addinreseed[] = { + 0x96, 0x65, 0x1f, 0xd4, 0x55, 0x51, 0x62, 0x49, 0x49, 0x26, 0xbd, 0x86, + 0x5a, 0xfc, 0x18, 0x6b, 0x4e, 0x9a, 0x93, 0x85, 0x2f, 0x7c, 0x9a, 0xb4, + 0xf7, 0x59, 0x96, 0x27, 0xaa, 0x96, 0x37, 0x74, +}; +static const unsigned char kat2068_addin0[] = { + 0xb3, 0x1b, 0x15, 0x2f, 0x87, 0x7b, 0xfd, 0x3d, 0xbe, 0x55, 0x16, 0x56, + 0x7d, 0x78, 0xe1, 0x48, 0x81, 0x94, 0x8a, 0x60, 0x56, 0x0e, 0xf7, 0xc3, + 0xdd, 0x6c, 0x48, 0xe4, 0x5a, 0xf6, 0x17, 0x63, +}; +static const unsigned char kat2068_addin1[] = { + 0xaa, 0xfa, 0xb7, 0x76, 0x9b, 0x57, 0x80, 0x5f, 0xef, 0x54, 0x8d, 0x32, + 0xed, 0x95, 0xe7, 0x0a, 0x94, 0x19, 0x0c, 0xca, 0x0c, 0xb9, 0x90, 0xf6, + 0xbc, 0xb5, 0xbe, 0x52, 0x0f, 0x8a, 0xd7, 0xdd, +}; +static const unsigned char kat2068_retbits[] = { + 0x43, 0x15, 0xad, 0x17, 0x9d, 0x6a, 0x54, 0xef, 0xa9, 0xa2, 0x43, 0x8d, + 0x46, 0x02, 0x9f, 0x9d, 0xf5, 0x22, 0x09, 0x0b, 0xdb, 0x69, 0xa3, 0x51, + 0x91, 0x56, 0x1d, 0xe0, 0x00, 0x5f, 0xc7, 0xf0, 0x74, 0xed, 0xc4, 0x5d, + 0x54, 0x4b, 0xa3, 0x61, 0xcf, 0x37, 0xac, 0x94, 0xa9, 0xf9, 0xed, 0xdb, + 0x9e, 0x5c, 0x24, 0xe2, 0xe4, 0x16, 0x77, 0xe5, 0xda, 0x2a, 0xc9, 0x64, + 0x91, 0x3b, 0xe2, 0x02, +}; +static const struct drbg_kat_pr_false kat2068_t = { + 12, kat2068_entropyin, kat2068_nonce, kat2068_persstr, + kat2068_entropyinreseed, kat2068_addinreseed, kat2068_addin0, + kat2068_addin1, kat2068_retbits +}; +static const struct drbg_kat kat2068 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2068_t +}; + +static const unsigned char kat2069_entropyin[] = { + 0xe8, 0xfc, 0x2f, 0xb6, 0xf9, 0x24, 0x73, 0xef, 0x5c, 0xbe, 0xbe, 0xe6, + 0x38, 0xd5, 0x8b, 0xdd, 0x07, 0xe5, 0x86, 0x0d, 0x87, 0xa2, 0x66, 0x70, + 0xde, 0x5e, 0x83, 0x05, 0xa2, 0x1b, 0xa8, 0x2b, +}; +static const unsigned char kat2069_nonce[] = { + 0xc0, 0x3c, 0x34, 0x0b, 0xb3, 0x77, 0xe0, 0x36, 0xd2, 0xf1, 0xb9, 0xed, + 0x01, 0x83, 0x30, 0xdf, +}; +static const unsigned char kat2069_persstr[] = {0}; +static const unsigned char kat2069_entropyinreseed[] = { + 0x6b, 0x1e, 0x3a, 0x62, 0xe7, 0x7c, 0x81, 0x4c, 0x22, 0xcd, 0xde, 0xaf, + 0x63, 0x10, 0xb7, 0x51, 0x77, 0x1b, 0xf0, 0xa8, 0x6f, 0x5f, 0x55, 0x7f, + 0xe1, 0x31, 0x8e, 0xa0, 0xfe, 0x2e, 0xd7, 0xdc, +}; +static const unsigned char kat2069_addinreseed[] = { + 0xab, 0xd7, 0xeb, 0xbc, 0xae, 0x2e, 0x26, 0x88, 0x04, 0xab, 0x4b, 0x98, + 0xad, 0x33, 0xfe, 0x6c, 0xc2, 0x12, 0x9d, 0x7f, 0x17, 0xb3, 0xc7, 0x14, + 0x18, 0x5f, 0xf2, 0x40, 0x60, 0x96, 0xb9, 0x22, +}; +static const unsigned char kat2069_addin0[] = { + 0x65, 0x66, 0x9e, 0x7d, 0xb6, 0x14, 0x52, 0x75, 0x36, 0xcb, 0xf9, 0x32, + 0xad, 0x42, 0xe4, 0x39, 0x5c, 0xcb, 0xef, 0x38, 0x87, 0x3b, 0xd5, 0x5d, + 0x18, 0x13, 0xd8, 0x01, 0x59, 0xe1, 0xff, 0xf4, +}; +static const unsigned char kat2069_addin1[] = { + 0xb8, 0x43, 0xfa, 0xe8, 0xf8, 0xdc, 0x65, 0x5d, 0x84, 0x21, 0x73, 0x3a, + 0x62, 0x04, 0x34, 0x68, 0x84, 0xac, 0x33, 0x5a, 0x05, 0xe3, 0xb2, 0x9a, + 0x8a, 0xdf, 0x03, 0x6d, 0xeb, 0x80, 0x88, 0x55, +}; +static const unsigned char kat2069_retbits[] = { + 0xa3, 0x04, 0x40, 0x87, 0x46, 0x5c, 0x14, 0x26, 0xf4, 0x54, 0xba, 0xcc, + 0x2d, 0xad, 0x1f, 0x9d, 0x9e, 0x23, 0x53, 0x9a, 0xeb, 0xd8, 0x03, 0x6d, + 0xd7, 0xf5, 0x8f, 0x16, 0xd6, 0xf2, 0xf5, 0x55, 0x69, 0x70, 0xe7, 0x5d, + 0x72, 0x83, 0xe1, 0xef, 0x91, 0x25, 0x42, 0xf2, 0x08, 0x96, 0xaa, 0x98, + 0xc5, 0xcb, 0xb1, 0xac, 0x1f, 0x76, 0xce, 0x64, 0xd5, 0x3c, 0x7e, 0x36, + 0x76, 0x1d, 0xe2, 0x9b, +}; +static const struct drbg_kat_pr_false kat2069_t = { + 13, kat2069_entropyin, kat2069_nonce, kat2069_persstr, + kat2069_entropyinreseed, kat2069_addinreseed, kat2069_addin0, + kat2069_addin1, kat2069_retbits +}; +static const struct drbg_kat kat2069 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2069_t +}; + +static const unsigned char kat2070_entropyin[] = { + 0x8d, 0xca, 0x78, 0xc7, 0x87, 0x4b, 0x3c, 0xc3, 0x05, 0xc5, 0x6a, 0x47, + 0x79, 0x50, 0x1b, 0xad, 0xb7, 0x1c, 0x29, 0x27, 0x74, 0xe9, 0xd1, 0xd8, + 0x93, 0xb4, 0x39, 0x0c, 0xf1, 0x32, 0xc2, 0x6a, +}; +static const unsigned char kat2070_nonce[] = { + 0x43, 0xff, 0x3a, 0xac, 0xcc, 0xee, 0x9e, 0x4a, 0x11, 0x2a, 0x34, 0x70, + 0xff, 0xa6, 0x77, 0x0f, +}; +static const unsigned char kat2070_persstr[] = {0}; +static const unsigned char kat2070_entropyinreseed[] = { + 0xda, 0x52, 0x47, 0x15, 0xb4, 0x5d, 0xe9, 0x93, 0x91, 0xeb, 0xb3, 0x4a, + 0x1a, 0x70, 0x62, 0x15, 0x53, 0xaa, 0xb2, 0x45, 0x04, 0x4a, 0x65, 0x23, + 0xb7, 0x38, 0x81, 0xc0, 0x0c, 0xb1, 0xb2, 0xc7, +}; +static const unsigned char kat2070_addinreseed[] = { + 0x8d, 0xb7, 0xda, 0xb5, 0x8d, 0xf1, 0xc4, 0x38, 0xf5, 0x6a, 0x72, 0x2c, + 0x14, 0x8c, 0x4a, 0x02, 0xb3, 0x94, 0xd1, 0xd7, 0x86, 0x6b, 0x61, 0x54, + 0xfd, 0x02, 0xf0, 0xbb, 0x26, 0x69, 0xe6, 0x04, +}; +static const unsigned char kat2070_addin0[] = { + 0x43, 0xe7, 0x0e, 0xf3, 0xd4, 0x72, 0xe2, 0xcd, 0xd7, 0x37, 0xe8, 0xa0, + 0xbb, 0xb7, 0x5a, 0x55, 0x0f, 0x60, 0x79, 0xe2, 0xa5, 0x02, 0x62, 0x71, + 0xcc, 0xc3, 0xdc, 0xbf, 0x56, 0x8b, 0x84, 0xb1, +}; +static const unsigned char kat2070_addin1[] = { + 0x94, 0xf4, 0x42, 0x59, 0xb1, 0xa3, 0xd3, 0xb4, 0x65, 0x57, 0x19, 0x60, + 0xc6, 0xd8, 0x8b, 0x9f, 0xa4, 0x0c, 0x7c, 0x0b, 0xeb, 0x30, 0xde, 0x5f, + 0x8f, 0x6d, 0xf5, 0xc3, 0x74, 0xf4, 0xb3, 0x48, +}; +static const unsigned char kat2070_retbits[] = { + 0x2b, 0x46, 0xad, 0xfc, 0x92, 0xd2, 0x22, 0x77, 0x11, 0x1a, 0xba, 0x05, + 0x60, 0x32, 0xd7, 0x9e, 0x9c, 0x1f, 0x85, 0x7d, 0x2a, 0x94, 0xc6, 0x27, + 0xef, 0xa3, 0x32, 0x7d, 0x6f, 0x19, 0xe8, 0xc9, 0x00, 0xf2, 0x0e, 0xb9, + 0xe0, 0xcb, 0x16, 0x43, 0x01, 0x6c, 0x03, 0xef, 0xb9, 0x66, 0x18, 0xd2, + 0x70, 0xe1, 0x5e, 0x4a, 0x7e, 0x91, 0x52, 0x2f, 0x0e, 0x1e, 0x81, 0x44, + 0x03, 0x25, 0x64, 0xda, +}; +static const struct drbg_kat_pr_false kat2070_t = { + 14, kat2070_entropyin, kat2070_nonce, kat2070_persstr, + kat2070_entropyinreseed, kat2070_addinreseed, kat2070_addin0, + kat2070_addin1, kat2070_retbits +}; +static const struct drbg_kat kat2070 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2070_t +}; + +static const unsigned char kat2071_entropyin[] = { + 0x7f, 0xc5, 0xc6, 0x7c, 0x1e, 0x8e, 0xae, 0xbf, 0x19, 0xbe, 0x64, 0x63, + 0xc9, 0xee, 0x13, 0x82, 0x5b, 0x1c, 0x63, 0xbd, 0x38, 0xe5, 0x8c, 0xe7, + 0x3a, 0x77, 0x68, 0x87, 0xd9, 0x5f, 0xf9, 0x20, +}; +static const unsigned char kat2071_nonce[] = { + 0x36, 0xb6, 0xaa, 0xc8, 0x1c, 0x45, 0x45, 0x8d, 0x48, 0xe3, 0xa1, 0xa3, + 0x42, 0xff, 0x66, 0x7c, +}; +static const unsigned char kat2071_persstr[] = { + 0x21, 0x96, 0x68, 0x06, 0x72, 0xe2, 0xc4, 0xe1, 0x64, 0x05, 0x9c, 0xde, + 0x6d, 0x2f, 0xe9, 0x1b, 0xa3, 0xc3, 0x96, 0xcf, 0x4b, 0x61, 0xb5, 0xe2, + 0x3f, 0xb1, 0x66, 0x78, 0x16, 0xf9, 0xbd, 0xa4, +}; +static const unsigned char kat2071_entropyinreseed[] = { + 0x11, 0x44, 0x75, 0xd8, 0xee, 0xb7, 0x71, 0xa0, 0xd9, 0xba, 0xd4, 0x51, + 0x24, 0x5f, 0x36, 0x33, 0xe7, 0x09, 0x59, 0x24, 0x42, 0xe5, 0x00, 0x58, + 0x45, 0xd0, 0xeb, 0xaf, 0xed, 0x5f, 0x68, 0x0d, +}; +static const unsigned char kat2071_addinreseed[] = {0}; +static const unsigned char kat2071_addin0[] = {0}; +static const unsigned char kat2071_addin1[] = {0}; +static const unsigned char kat2071_retbits[] = { + 0xcc, 0x7c, 0x90, 0x20, 0xa9, 0xb1, 0x15, 0x01, 0x44, 0x04, 0x64, 0xe3, + 0xc3, 0x06, 0xd3, 0x82, 0x62, 0xc4, 0x58, 0x38, 0xda, 0x3a, 0x0d, 0xd2, + 0x65, 0x52, 0xee, 0x7a, 0x9e, 0xdd, 0x9f, 0xc3, 0x82, 0xd3, 0xf7, 0xb1, + 0x87, 0xe9, 0xfb, 0x37, 0x0b, 0xe9, 0x7d, 0x9b, 0xf4, 0x34, 0x66, 0xa5, + 0x51, 0xe9, 0x73, 0x89, 0x29, 0xf3, 0x86, 0x97, 0xc7, 0x38, 0xbf, 0x26, + 0x7b, 0x66, 0x49, 0x84, +}; +static const struct drbg_kat_pr_false kat2071_t = { + 0, kat2071_entropyin, kat2071_nonce, kat2071_persstr, + kat2071_entropyinreseed, kat2071_addinreseed, kat2071_addin0, + kat2071_addin1, kat2071_retbits +}; +static const struct drbg_kat kat2071 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2071_t +}; + +static const unsigned char kat2072_entropyin[] = { + 0x3a, 0xf4, 0xdf, 0x4e, 0x10, 0x10, 0x56, 0xd2, 0x2e, 0x93, 0x86, 0xa4, + 0xf7, 0xd4, 0x7a, 0x97, 0x5a, 0x8e, 0x7b, 0x44, 0xe2, 0x02, 0xe7, 0xa3, + 0xd6, 0x0a, 0x0c, 0x92, 0x0c, 0x07, 0x0f, 0x59, +}; +static const unsigned char kat2072_nonce[] = { + 0x4f, 0xdb, 0xb7, 0x87, 0xed, 0xe1, 0xf7, 0x04, 0x1c, 0xd6, 0xc5, 0xa1, + 0x80, 0xc2, 0x37, 0x26, +}; +static const unsigned char kat2072_persstr[] = { + 0xf8, 0x51, 0x98, 0x98, 0xa7, 0x17, 0x3c, 0x7b, 0xee, 0xe3, 0x40, 0x62, + 0x65, 0x24, 0x3c, 0x0b, 0x06, 0x13, 0x9c, 0x3c, 0xbc, 0xb4, 0x7a, 0x6c, + 0x45, 0x25, 0xc4, 0x1f, 0x5c, 0xd0, 0x79, 0xe9, +}; +static const unsigned char kat2072_entropyinreseed[] = { + 0x81, 0x72, 0x99, 0x9c, 0x00, 0x5b, 0x5e, 0xa6, 0x0c, 0xe1, 0x2b, 0xfe, + 0x04, 0x13, 0xd7, 0xc7, 0x97, 0x4e, 0x55, 0xf1, 0xb8, 0xe0, 0x55, 0x21, + 0x39, 0x08, 0x5e, 0x1e, 0xc9, 0xae, 0x79, 0xfb, +}; +static const unsigned char kat2072_addinreseed[] = {0}; +static const unsigned char kat2072_addin0[] = {0}; +static const unsigned char kat2072_addin1[] = {0}; +static const unsigned char kat2072_retbits[] = { + 0xfc, 0xa1, 0x7a, 0xb3, 0x23, 0xf4, 0x4a, 0x1f, 0x7b, 0xee, 0x2a, 0xc8, + 0x40, 0x00, 0x66, 0xee, 0xe2, 0xb0, 0x2b, 0xfc, 0x43, 0x4f, 0x63, 0xcc, + 0x9f, 0xa3, 0x69, 0x9b, 0x08, 0x3b, 0x34, 0xac, 0x7a, 0x9a, 0xa9, 0x09, + 0xb4, 0x11, 0xc7, 0x69, 0xcd, 0xe1, 0x2c, 0xab, 0x39, 0xb3, 0x1d, 0x70, + 0x77, 0xd4, 0x1f, 0xa0, 0xda, 0xb0, 0xab, 0x1a, 0xbe, 0x8e, 0x7e, 0xe7, + 0x75, 0x51, 0x1e, 0x3b, +}; +static const struct drbg_kat_pr_false kat2072_t = { + 1, kat2072_entropyin, kat2072_nonce, kat2072_persstr, + kat2072_entropyinreseed, kat2072_addinreseed, kat2072_addin0, + kat2072_addin1, kat2072_retbits +}; +static const struct drbg_kat kat2072 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2072_t +}; + +static const unsigned char kat2073_entropyin[] = { + 0xe8, 0xba, 0x22, 0xbc, 0x9d, 0x74, 0x6b, 0x6a, 0x4e, 0xcf, 0x61, 0x0b, + 0xca, 0xf1, 0x97, 0x13, 0x0c, 0xf6, 0x22, 0x69, 0xde, 0xa6, 0x84, 0x92, + 0x0b, 0xf1, 0xbb, 0xcf, 0x17, 0x66, 0x03, 0x24, +}; +static const unsigned char kat2073_nonce[] = { + 0x54, 0xaf, 0xff, 0x3a, 0xb2, 0x95, 0x57, 0xaa, 0xef, 0xbf, 0x4f, 0x2d, + 0x7d, 0x34, 0xe9, 0x4e, +}; +static const unsigned char kat2073_persstr[] = { + 0xe0, 0x21, 0xd4, 0x42, 0x65, 0x37, 0xdd, 0x91, 0x59, 0x0e, 0x35, 0x4b, + 0xe4, 0xd9, 0x61, 0x07, 0xa7, 0x8d, 0xb8, 0x0a, 0xc4, 0x80, 0x2f, 0xff, + 0x38, 0x4b, 0x52, 0x9a, 0x3f, 0x8f, 0xa9, 0x25, +}; +static const unsigned char kat2073_entropyinreseed[] = { + 0xcc, 0xea, 0xb6, 0xa2, 0x6c, 0x17, 0x0b, 0x68, 0x9a, 0xdd, 0xc9, 0x62, + 0xbe, 0x4c, 0x11, 0xa4, 0xfc, 0xfb, 0x47, 0x26, 0x00, 0xe7, 0xa3, 0xe5, + 0xc5, 0xe7, 0x8f, 0x0c, 0xe8, 0xfa, 0x97, 0xf7, +}; +static const unsigned char kat2073_addinreseed[] = {0}; +static const unsigned char kat2073_addin0[] = {0}; +static const unsigned char kat2073_addin1[] = {0}; +static const unsigned char kat2073_retbits[] = { + 0xd2, 0x04, 0x54, 0x54, 0x94, 0x22, 0xfb, 0xdc, 0x77, 0x08, 0xb0, 0x47, + 0xe2, 0xec, 0xbd, 0x13, 0xbb, 0x47, 0x12, 0xe3, 0x8a, 0xb2, 0xb0, 0xef, + 0xc6, 0x80, 0x0c, 0xe2, 0xd6, 0x32, 0xac, 0xb2, 0xac, 0x14, 0x36, 0xfc, + 0x81, 0x3d, 0x55, 0x11, 0x34, 0x94, 0x7d, 0x14, 0x2d, 0x84, 0x21, 0xa9, + 0x1d, 0x1e, 0xb3, 0x21, 0x50, 0xcb, 0xf9, 0x9b, 0x26, 0x6c, 0x55, 0x2b, + 0x21, 0x5c, 0x20, 0xa7, +}; +static const struct drbg_kat_pr_false kat2073_t = { + 2, kat2073_entropyin, kat2073_nonce, kat2073_persstr, + kat2073_entropyinreseed, kat2073_addinreseed, kat2073_addin0, + kat2073_addin1, kat2073_retbits +}; +static const struct drbg_kat kat2073 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2073_t +}; + +static const unsigned char kat2074_entropyin[] = { + 0xcc, 0x02, 0x83, 0xb5, 0x6b, 0x01, 0xaf, 0x29, 0xdf, 0x83, 0x61, 0x7f, + 0x12, 0x96, 0x9e, 0x05, 0xbc, 0x95, 0x15, 0x1b, 0xd6, 0xea, 0x04, 0x33, + 0x78, 0x25, 0x89, 0x1a, 0xc9, 0x47, 0x98, 0xe9, +}; +static const unsigned char kat2074_nonce[] = { + 0x82, 0x59, 0x76, 0xf8, 0x32, 0x79, 0x66, 0x02, 0xd9, 0xaf, 0xac, 0x19, + 0xf9, 0xa4, 0x59, 0x72, +}; +static const unsigned char kat2074_persstr[] = { + 0x75, 0xae, 0xc9, 0xc3, 0x2f, 0x40, 0xbd, 0xa3, 0x39, 0x02, 0xf1, 0xa2, + 0x10, 0x75, 0x77, 0x59, 0x70, 0xf6, 0xa2, 0x78, 0x44, 0xae, 0x2a, 0x34, + 0x29, 0xb5, 0xe1, 0x86, 0x11, 0x9c, 0xe9, 0x17, +}; +static const unsigned char kat2074_entropyinreseed[] = { + 0x7b, 0x27, 0x34, 0x15, 0xd5, 0xbc, 0xac, 0xc9, 0xbe, 0xba, 0x66, 0x59, + 0x92, 0x35, 0xb7, 0x80, 0xa0, 0x77, 0xf4, 0xa7, 0xeb, 0xba, 0x6a, 0xed, + 0xdc, 0xdd, 0xe5, 0x83, 0xc2, 0x05, 0x89, 0xcf, +}; +static const unsigned char kat2074_addinreseed[] = {0}; +static const unsigned char kat2074_addin0[] = {0}; +static const unsigned char kat2074_addin1[] = {0}; +static const unsigned char kat2074_retbits[] = { + 0xe8, 0x37, 0x57, 0xb1, 0x9d, 0xc2, 0x44, 0xf4, 0x8d, 0xbf, 0x6a, 0xba, + 0x22, 0xa8, 0xb2, 0x4a, 0xde, 0x44, 0xde, 0xe9, 0x59, 0xd0, 0x17, 0xff, + 0xb4, 0xfe, 0x97, 0x71, 0xc2, 0xa6, 0xd2, 0x8c, 0xc5, 0x6e, 0x94, 0x49, + 0xc9, 0x05, 0x0f, 0x52, 0xb5, 0xa3, 0x15, 0xff, 0x7e, 0x45, 0x35, 0x43, + 0x52, 0xfc, 0x4b, 0x44, 0x62, 0x19, 0x44, 0xdc, 0x7c, 0xa3, 0xa9, 0x3f, + 0xba, 0x7a, 0xa7, 0x1c, +}; +static const struct drbg_kat_pr_false kat2074_t = { + 3, kat2074_entropyin, kat2074_nonce, kat2074_persstr, + kat2074_entropyinreseed, kat2074_addinreseed, kat2074_addin0, + kat2074_addin1, kat2074_retbits +}; +static const struct drbg_kat kat2074 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2074_t +}; + +static const unsigned char kat2075_entropyin[] = { + 0xd4, 0xc9, 0xfa, 0x57, 0xd2, 0x11, 0xf5, 0x3d, 0xcd, 0x16, 0xb2, 0xf1, + 0x81, 0x21, 0x41, 0xec, 0x3e, 0xfe, 0x2d, 0x0b, 0xd4, 0x25, 0xd5, 0xc1, + 0xfd, 0x7e, 0x6d, 0x96, 0xa1, 0x46, 0xdb, 0x37, +}; +static const unsigned char kat2075_nonce[] = { + 0x64, 0x73, 0x75, 0x8b, 0x32, 0x84, 0x8f, 0x04, 0xb8, 0x6c, 0xcb, 0xcb, + 0xd0, 0x17, 0xf1, 0x4b, +}; +static const unsigned char kat2075_persstr[] = { + 0xa2, 0x69, 0x8b, 0x2b, 0x6e, 0x58, 0xc2, 0x3c, 0x3e, 0x82, 0xcc, 0x19, + 0x5e, 0x15, 0x51, 0x64, 0xf4, 0xd8, 0x86, 0x53, 0x92, 0x46, 0x9a, 0x30, + 0x87, 0x4e, 0x54, 0x9b, 0x01, 0x71, 0xa4, 0x90, +}; +static const unsigned char kat2075_entropyinreseed[] = { + 0x96, 0xb5, 0x9a, 0x20, 0x9f, 0xe5, 0x4c, 0xe7, 0x5a, 0x3f, 0x0d, 0x6f, + 0x62, 0xf7, 0xe4, 0x92, 0xaa, 0xbc, 0x41, 0x58, 0x4e, 0x16, 0x07, 0x46, + 0x3d, 0x16, 0x1f, 0x99, 0xe9, 0x8c, 0xbd, 0x88, +}; +static const unsigned char kat2075_addinreseed[] = {0}; +static const unsigned char kat2075_addin0[] = {0}; +static const unsigned char kat2075_addin1[] = {0}; +static const unsigned char kat2075_retbits[] = { + 0x1b, 0x5b, 0xf3, 0xcf, 0xee, 0x33, 0xf7, 0xfd, 0x4b, 0x9a, 0x07, 0xf9, + 0xbb, 0x98, 0x25, 0x5b, 0x0b, 0xd4, 0x7a, 0x3e, 0x8d, 0x64, 0x72, 0xaf, + 0x57, 0x60, 0x2a, 0xb8, 0xb6, 0xab, 0xeb, 0xd0, 0x78, 0xdf, 0x5a, 0xae, + 0x76, 0x10, 0x53, 0x3a, 0xe3, 0x17, 0x38, 0x95, 0x6c, 0x3e, 0x4c, 0xcd, + 0x41, 0x10, 0x45, 0x85, 0x65, 0x5d, 0xab, 0x4c, 0xfc, 0xb3, 0x2d, 0x37, + 0xc8, 0x1f, 0xb7, 0x92, +}; +static const struct drbg_kat_pr_false kat2075_t = { + 4, kat2075_entropyin, kat2075_nonce, kat2075_persstr, + kat2075_entropyinreseed, kat2075_addinreseed, kat2075_addin0, + kat2075_addin1, kat2075_retbits +}; +static const struct drbg_kat kat2075 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2075_t +}; + +static const unsigned char kat2076_entropyin[] = { + 0x75, 0x1b, 0xe4, 0x10, 0x47, 0x40, 0xcd, 0x52, 0xa1, 0xa5, 0x15, 0xe4, + 0x3b, 0x80, 0xef, 0xda, 0x17, 0x38, 0x55, 0x8d, 0xe8, 0x9e, 0x6f, 0x04, + 0x9e, 0xa1, 0x94, 0xd7, 0xd8, 0x48, 0x7f, 0x29, +}; +static const unsigned char kat2076_nonce[] = { + 0xee, 0xc6, 0x0a, 0x29, 0x78, 0xa4, 0x90, 0xb2, 0xe6, 0xbe, 0x71, 0x76, + 0x5e, 0x69, 0xc3, 0x61, +}; +static const unsigned char kat2076_persstr[] = { + 0x6c, 0x7a, 0x39, 0x82, 0x2f, 0x61, 0xf4, 0xf1, 0x7d, 0x0a, 0xe3, 0x90, + 0x99, 0xfd, 0xc8, 0x20, 0xc6, 0x35, 0xc6, 0x90, 0x05, 0xbf, 0x04, 0xe4, + 0xd1, 0x3b, 0x18, 0xa1, 0x88, 0x38, 0x21, 0x40, +}; +static const unsigned char kat2076_entropyinreseed[] = { + 0x39, 0x61, 0xb2, 0x4f, 0x64, 0x27, 0x35, 0x2d, 0x52, 0xf2, 0xdc, 0x45, + 0xee, 0x9d, 0x22, 0x81, 0x4e, 0x72, 0x26, 0x56, 0x7a, 0xdc, 0xff, 0x95, + 0x0b, 0xf7, 0x3d, 0x43, 0x1a, 0xb8, 0xcb, 0x4a, +}; +static const unsigned char kat2076_addinreseed[] = {0}; +static const unsigned char kat2076_addin0[] = {0}; +static const unsigned char kat2076_addin1[] = {0}; +static const unsigned char kat2076_retbits[] = { + 0xde, 0x87, 0xa4, 0xa7, 0x65, 0xc5, 0x04, 0x0d, 0x89, 0x74, 0x31, 0x46, + 0x69, 0x6a, 0x67, 0x02, 0xd5, 0xcd, 0xe9, 0x05, 0xeb, 0xf2, 0xdd, 0x0f, + 0x65, 0x40, 0xd5, 0x3f, 0x5c, 0x8b, 0xd4, 0xfa, 0x1c, 0x3a, 0xa8, 0x3b, + 0x9c, 0x2b, 0x0e, 0xdd, 0x72, 0xf8, 0x57, 0xd5, 0x95, 0x71, 0xba, 0x50, + 0x8b, 0xd6, 0x3d, 0x5f, 0x7a, 0xe3, 0x01, 0x18, 0xe3, 0xe9, 0x68, 0x8c, + 0x60, 0x6f, 0xd1, 0xcb, +}; +static const struct drbg_kat_pr_false kat2076_t = { + 5, kat2076_entropyin, kat2076_nonce, kat2076_persstr, + kat2076_entropyinreseed, kat2076_addinreseed, kat2076_addin0, + kat2076_addin1, kat2076_retbits +}; +static const struct drbg_kat kat2076 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2076_t +}; + +static const unsigned char kat2077_entropyin[] = { + 0xd4, 0x01, 0xf6, 0xfc, 0x6d, 0xaf, 0x7c, 0x00, 0x3c, 0xcd, 0xfe, 0xde, + 0xac, 0xd0, 0x11, 0xe2, 0xc0, 0x49, 0x96, 0x3f, 0x66, 0x2b, 0xfe, 0x18, + 0x5c, 0x63, 0x15, 0x68, 0xa8, 0x3c, 0x9e, 0xed, +}; +static const unsigned char kat2077_nonce[] = { + 0x03, 0x73, 0x51, 0x56, 0x23, 0x64, 0x76, 0x10, 0x49, 0x28, 0xdf, 0x85, + 0xc3, 0x07, 0x74, 0xf0, +}; +static const unsigned char kat2077_persstr[] = { + 0x17, 0x50, 0x48, 0x78, 0x6a, 0xa8, 0x3e, 0x4d, 0xc8, 0x50, 0x0b, 0x01, + 0x18, 0xfc, 0xda, 0xce, 0x91, 0x74, 0xbb, 0x77, 0xed, 0x8e, 0xae, 0xe4, + 0xc5, 0x5f, 0xeb, 0xa0, 0x45, 0x34, 0xb0, 0x9d, +}; +static const unsigned char kat2077_entropyinreseed[] = { + 0xd5, 0x4f, 0x61, 0xe2, 0xf1, 0x53, 0xd3, 0x42, 0x2f, 0x74, 0x87, 0x06, + 0xa4, 0xf4, 0x07, 0x91, 0x4b, 0x84, 0x78, 0x99, 0x75, 0x18, 0xcd, 0x5f, + 0x24, 0xf0, 0x7b, 0x52, 0x3b, 0xec, 0x5c, 0xe2, +}; +static const unsigned char kat2077_addinreseed[] = {0}; +static const unsigned char kat2077_addin0[] = {0}; +static const unsigned char kat2077_addin1[] = {0}; +static const unsigned char kat2077_retbits[] = { + 0xa3, 0xa6, 0x91, 0x0c, 0x6f, 0xfc, 0x12, 0x1b, 0xdc, 0xfa, 0x6d, 0x29, + 0xb7, 0xee, 0x78, 0x72, 0xb5, 0x37, 0xb3, 0xa3, 0xab, 0x84, 0xa8, 0xc8, + 0xa6, 0xd7, 0x43, 0xb8, 0x3d, 0xe9, 0x8d, 0xcf, 0x9b, 0xe9, 0xdd, 0x50, + 0x6e, 0x51, 0xc5, 0xa5, 0x56, 0x9e, 0x40, 0xee, 0xff, 0xdb, 0x57, 0x89, + 0xa0, 0x53, 0x15, 0xae, 0xf5, 0x95, 0xcf, 0x44, 0x01, 0xcd, 0xcd, 0x31, + 0x16, 0xfe, 0x24, 0xfa, +}; +static const struct drbg_kat_pr_false kat2077_t = { + 6, kat2077_entropyin, kat2077_nonce, kat2077_persstr, + kat2077_entropyinreseed, kat2077_addinreseed, kat2077_addin0, + kat2077_addin1, kat2077_retbits +}; +static const struct drbg_kat kat2077 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2077_t +}; + +static const unsigned char kat2078_entropyin[] = { + 0x77, 0x23, 0x05, 0x44, 0xaa, 0xa9, 0x9a, 0x91, 0x03, 0x69, 0xa2, 0xef, + 0x67, 0x98, 0xe2, 0x10, 0x62, 0x46, 0xab, 0x47, 0x29, 0x64, 0x85, 0xc8, + 0xf6, 0x5a, 0x75, 0x30, 0x3c, 0xf9, 0x0b, 0x18, +}; +static const unsigned char kat2078_nonce[] = { + 0x49, 0x37, 0xbc, 0x2c, 0x21, 0x1a, 0xd7, 0x13, 0x77, 0x97, 0xa0, 0xc4, + 0xd0, 0xcd, 0x07, 0x3a, +}; +static const unsigned char kat2078_persstr[] = { + 0x1d, 0x24, 0x63, 0xa3, 0x26, 0x6c, 0xac, 0x98, 0x40, 0xed, 0x6b, 0x7c, + 0x35, 0xf1, 0x45, 0x65, 0x41, 0x89, 0xe1, 0xe0, 0x83, 0x22, 0x2a, 0x4a, + 0x28, 0x1d, 0xab, 0x50, 0x1e, 0x99, 0x23, 0xf9, +}; +static const unsigned char kat2078_entropyinreseed[] = { + 0x2e, 0x1d, 0x69, 0xe4, 0x66, 0x80, 0x0f, 0xe9, 0xfe, 0xab, 0x87, 0x2b, + 0x3e, 0x3d, 0x41, 0x04, 0x59, 0xdc, 0x17, 0x91, 0xf2, 0x92, 0x42, 0x41, + 0xa0, 0x0a, 0x58, 0x5a, 0x6f, 0x94, 0xdc, 0xe1, +}; +static const unsigned char kat2078_addinreseed[] = {0}; +static const unsigned char kat2078_addin0[] = {0}; +static const unsigned char kat2078_addin1[] = {0}; +static const unsigned char kat2078_retbits[] = { + 0x2f, 0xed, 0x41, 0x01, 0x07, 0x52, 0xd7, 0x7f, 0x32, 0x3c, 0x4b, 0xfb, + 0xfa, 0x09, 0xb9, 0x52, 0x96, 0xbc, 0xbe, 0x56, 0x5b, 0x84, 0xb4, 0xa6, + 0x5d, 0x7e, 0xca, 0x93, 0x8e, 0xd6, 0x4e, 0x30, 0xf7, 0xe4, 0x8e, 0x0c, + 0x71, 0xb2, 0xca, 0x0b, 0x6c, 0x08, 0xa0, 0xfe, 0x52, 0xd8, 0xa0, 0xcf, + 0xd8, 0x55, 0x8e, 0x58, 0xdc, 0x15, 0xe7, 0xd5, 0x61, 0x0c, 0xc6, 0x6c, + 0x24, 0x22, 0x50, 0x31, +}; +static const struct drbg_kat_pr_false kat2078_t = { + 7, kat2078_entropyin, kat2078_nonce, kat2078_persstr, + kat2078_entropyinreseed, kat2078_addinreseed, kat2078_addin0, + kat2078_addin1, kat2078_retbits +}; +static const struct drbg_kat kat2078 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2078_t +}; + +static const unsigned char kat2079_entropyin[] = { + 0x50, 0x09, 0xd8, 0x18, 0xcc, 0x03, 0x84, 0xbf, 0xbc, 0x9c, 0x5d, 0xd8, + 0x15, 0x79, 0xc7, 0x4f, 0x56, 0xe5, 0x49, 0x0c, 0x56, 0xe5, 0x31, 0x11, + 0x52, 0x23, 0x1e, 0x8a, 0x71, 0x72, 0x0a, 0x13, +}; +static const unsigned char kat2079_nonce[] = { + 0x1b, 0x16, 0x4d, 0x66, 0x07, 0x34, 0x67, 0xa8, 0xfc, 0xb1, 0x72, 0x2c, + 0x67, 0x1b, 0x40, 0x8e, +}; +static const unsigned char kat2079_persstr[] = { + 0x1e, 0x56, 0xa2, 0xcd, 0xae, 0x59, 0x11, 0xd0, 0xd6, 0x0b, 0xae, 0xd7, + 0xd4, 0x9d, 0x3b, 0x3c, 0xb0, 0x62, 0xc4, 0xcb, 0xfb, 0xbe, 0x31, 0xa5, + 0x67, 0x13, 0xbe, 0xb3, 0x7f, 0xb1, 0x9f, 0xd4, +}; +static const unsigned char kat2079_entropyinreseed[] = { + 0x2d, 0x75, 0x4e, 0xda, 0x6d, 0xe4, 0x87, 0xa5, 0xb2, 0x82, 0x84, 0x86, + 0x75, 0x57, 0xac, 0xcd, 0x43, 0x2c, 0x63, 0x86, 0x92, 0x4b, 0x24, 0xd3, + 0x22, 0x63, 0xf6, 0x07, 0x29, 0x17, 0x37, 0xec, +}; +static const unsigned char kat2079_addinreseed[] = {0}; +static const unsigned char kat2079_addin0[] = {0}; +static const unsigned char kat2079_addin1[] = {0}; +static const unsigned char kat2079_retbits[] = { + 0x89, 0xfd, 0xec, 0xe4, 0x0e, 0xf8, 0x18, 0x21, 0xbb, 0xb7, 0xbe, 0xba, + 0x79, 0xf1, 0xc1, 0xd6, 0x8c, 0xb9, 0xbe, 0xe9, 0xe9, 0xcf, 0x2f, 0x6c, + 0x2b, 0x0b, 0xf4, 0x2e, 0x0c, 0xa3, 0xa3, 0xc6, 0x65, 0x9b, 0x2a, 0xcb, + 0xb5, 0xee, 0xe8, 0x5e, 0xba, 0xcf, 0xdc, 0xcf, 0x35, 0x20, 0x22, 0x08, + 0x8b, 0x99, 0x5e, 0xbc, 0x84, 0xcd, 0x24, 0xd3, 0xa1, 0x9b, 0x83, 0x2e, + 0x46, 0x17, 0xcd, 0xad, +}; +static const struct drbg_kat_pr_false kat2079_t = { + 8, kat2079_entropyin, kat2079_nonce, kat2079_persstr, + kat2079_entropyinreseed, kat2079_addinreseed, kat2079_addin0, + kat2079_addin1, kat2079_retbits +}; +static const struct drbg_kat kat2079 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2079_t +}; + +static const unsigned char kat2080_entropyin[] = { + 0xd4, 0xdf, 0xfe, 0x9c, 0x0d, 0x22, 0xf9, 0xe9, 0x6c, 0xd2, 0x95, 0x3c, + 0x61, 0x04, 0xd7, 0x94, 0x32, 0x84, 0x88, 0x93, 0xb7, 0x50, 0xeb, 0x2c, + 0x2d, 0x73, 0x8c, 0x15, 0x7f, 0x2a, 0xd6, 0x72, +}; +static const unsigned char kat2080_nonce[] = { + 0x11, 0x9f, 0x12, 0x04, 0xc0, 0xab, 0x08, 0x62, 0x29, 0x73, 0x5c, 0x03, + 0xcf, 0xaa, 0xd1, 0xe7, +}; +static const unsigned char kat2080_persstr[] = { + 0x81, 0x1c, 0x74, 0x80, 0xaf, 0xe7, 0xd9, 0xac, 0xfd, 0x5d, 0x46, 0xd8, + 0x5d, 0x01, 0xc2, 0xaf, 0x4e, 0xc7, 0x80, 0x29, 0x48, 0xa0, 0x4d, 0x3f, + 0x2d, 0x6c, 0x2b, 0xe8, 0xed, 0x80, 0xf2, 0xfb, +}; +static const unsigned char kat2080_entropyinreseed[] = { + 0x59, 0xc7, 0xe9, 0x4b, 0xec, 0xdf, 0x52, 0x34, 0xb6, 0x02, 0x90, 0x31, + 0x52, 0xea, 0xb2, 0x4e, 0xed, 0x5f, 0x84, 0x17, 0x59, 0xfd, 0x13, 0xa9, + 0xb0, 0xda, 0x4d, 0xdf, 0x14, 0x82, 0x11, 0x70, +}; +static const unsigned char kat2080_addinreseed[] = {0}; +static const unsigned char kat2080_addin0[] = {0}; +static const unsigned char kat2080_addin1[] = {0}; +static const unsigned char kat2080_retbits[] = { + 0x8a, 0x2b, 0xda, 0xc0, 0xe3, 0xb9, 0xec, 0xab, 0x36, 0xf4, 0x95, 0xcd, + 0xc9, 0x2b, 0xfd, 0x0e, 0xb1, 0x97, 0x8a, 0xa6, 0x26, 0x04, 0xda, 0x0c, + 0xf5, 0x88, 0x4a, 0x02, 0x62, 0x12, 0x30, 0x04, 0x95, 0x8f, 0x07, 0xe7, + 0x0f, 0x33, 0x80, 0xde, 0x03, 0xa8, 0x38, 0x68, 0xf4, 0x31, 0xf8, 0xce, + 0xfa, 0xd7, 0xa1, 0x4b, 0x5a, 0x3d, 0x9c, 0x42, 0x54, 0xe5, 0x2f, 0x0c, + 0xe9, 0x91, 0xc0, 0xf1, +}; +static const struct drbg_kat_pr_false kat2080_t = { + 9, kat2080_entropyin, kat2080_nonce, kat2080_persstr, + kat2080_entropyinreseed, kat2080_addinreseed, kat2080_addin0, + kat2080_addin1, kat2080_retbits +}; +static const struct drbg_kat kat2080 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2080_t +}; + +static const unsigned char kat2081_entropyin[] = { + 0x0e, 0xa4, 0x75, 0x26, 0x1c, 0xad, 0x88, 0x91, 0x3c, 0x57, 0xc9, 0x8a, + 0xac, 0xcc, 0x03, 0x69, 0xba, 0x00, 0xe8, 0xb0, 0x67, 0x6d, 0x1b, 0xfb, + 0x5b, 0x30, 0xfc, 0x36, 0xb3, 0x8a, 0x4a, 0x1d, +}; +static const unsigned char kat2081_nonce[] = { + 0x3d, 0xd1, 0x8e, 0x05, 0xb7, 0x63, 0xfa, 0x1c, 0xa3, 0x88, 0x1e, 0x7d, + 0x92, 0x85, 0x5c, 0x8e, +}; +static const unsigned char kat2081_persstr[] = { + 0x1b, 0x95, 0xa4, 0xba, 0x83, 0x93, 0xe5, 0x2c, 0x94, 0x98, 0x27, 0x9e, + 0x8a, 0x00, 0x99, 0x01, 0x34, 0x28, 0xc2, 0x91, 0xd7, 0x0c, 0xce, 0x70, + 0xbe, 0xa7, 0xf9, 0x01, 0xa9, 0xb9, 0x28, 0x28, +}; +static const unsigned char kat2081_entropyinreseed[] = { + 0xe8, 0xed, 0x16, 0x2d, 0xe3, 0xb5, 0x1a, 0x68, 0xe2, 0xcd, 0x8d, 0xf5, + 0x91, 0xb9, 0xc6, 0x22, 0x59, 0xd2, 0x4e, 0x31, 0x01, 0x2b, 0x79, 0x38, + 0xcd, 0x36, 0x8c, 0x1a, 0x53, 0x6b, 0xa9, 0xb3, +}; +static const unsigned char kat2081_addinreseed[] = {0}; +static const unsigned char kat2081_addin0[] = {0}; +static const unsigned char kat2081_addin1[] = {0}; +static const unsigned char kat2081_retbits[] = { + 0x2c, 0x6c, 0xf1, 0x74, 0x7b, 0xda, 0xc8, 0xf3, 0x33, 0x51, 0xd6, 0x39, + 0x2d, 0xaf, 0x4a, 0x2b, 0x32, 0xf5, 0x42, 0x4b, 0x12, 0xf1, 0xfd, 0x80, + 0x96, 0xb6, 0x5b, 0x6a, 0x76, 0x39, 0x89, 0x17, 0xc4, 0x34, 0xff, 0xed, + 0xac, 0xdc, 0x6b, 0x2b, 0xe1, 0xaa, 0x4a, 0xd6, 0xdc, 0xda, 0xd1, 0x89, + 0x32, 0xb6, 0x38, 0xe3, 0xcb, 0x56, 0xde, 0xb7, 0x2e, 0xfd, 0x3b, 0x69, + 0xcf, 0xd1, 0xb0, 0xbc, +}; +static const struct drbg_kat_pr_false kat2081_t = { + 10, kat2081_entropyin, kat2081_nonce, kat2081_persstr, + kat2081_entropyinreseed, kat2081_addinreseed, kat2081_addin0, + kat2081_addin1, kat2081_retbits +}; +static const struct drbg_kat kat2081 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2081_t +}; + +static const unsigned char kat2082_entropyin[] = { + 0x21, 0x89, 0x37, 0x99, 0x01, 0x6c, 0xfb, 0xe5, 0x44, 0xd6, 0x63, 0x80, + 0x0d, 0x6e, 0xaa, 0xbc, 0x1d, 0x49, 0xfb, 0xe3, 0xe5, 0xbc, 0x4b, 0x95, + 0x84, 0x59, 0xcb, 0xe3, 0x01, 0xac, 0x67, 0x8b, +}; +static const unsigned char kat2082_nonce[] = { + 0x60, 0x05, 0x98, 0x54, 0xb2, 0x34, 0xf1, 0x8b, 0xe1, 0x8c, 0x6e, 0x6e, + 0x32, 0xc6, 0x0d, 0x69, +}; +static const unsigned char kat2082_persstr[] = { + 0xab, 0x61, 0xe4, 0x4f, 0x7a, 0xa3, 0x1c, 0x12, 0x41, 0xa2, 0xa4, 0x8c, + 0x33, 0x4d, 0x3f, 0xa9, 0x52, 0x03, 0xa2, 0xf2, 0x10, 0x2a, 0xfc, 0x29, + 0x09, 0xb6, 0x27, 0xf8, 0x3b, 0xd0, 0xeb, 0x0b, +}; +static const unsigned char kat2082_entropyinreseed[] = { + 0x45, 0x6a, 0x7d, 0x56, 0x6b, 0xb4, 0x88, 0xaf, 0x9a, 0x80, 0x84, 0xe1, + 0x96, 0x1b, 0x61, 0x0d, 0x05, 0xcd, 0x7e, 0xa5, 0x73, 0x54, 0xb2, 0x0f, + 0x74, 0xc3, 0x08, 0x18, 0xab, 0xdf, 0x01, 0x1d, +}; +static const unsigned char kat2082_addinreseed[] = {0}; +static const unsigned char kat2082_addin0[] = {0}; +static const unsigned char kat2082_addin1[] = {0}; +static const unsigned char kat2082_retbits[] = { + 0x64, 0x01, 0xc6, 0xaf, 0xe7, 0x34, 0x2a, 0xd9, 0x57, 0x45, 0x26, 0x95, + 0x80, 0xfd, 0x3f, 0xb1, 0xa5, 0x6c, 0x3c, 0x7d, 0x7f, 0x7d, 0x74, 0x7d, + 0x35, 0xe0, 0x95, 0x01, 0xc0, 0xef, 0x35, 0x9e, 0x1d, 0xbb, 0xe1, 0xe0, + 0xf5, 0x11, 0x34, 0x21, 0xf8, 0x89, 0xad, 0x64, 0xab, 0x6e, 0xe3, 0xbf, + 0xf2, 0x1e, 0x38, 0x66, 0x8f, 0x7e, 0xa1, 0x6a, 0x80, 0x0d, 0xd0, 0x21, + 0x79, 0x48, 0x5b, 0xb4, +}; +static const struct drbg_kat_pr_false kat2082_t = { + 11, kat2082_entropyin, kat2082_nonce, kat2082_persstr, + kat2082_entropyinreseed, kat2082_addinreseed, kat2082_addin0, + kat2082_addin1, kat2082_retbits +}; +static const struct drbg_kat kat2082 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2082_t +}; + +static const unsigned char kat2083_entropyin[] = { + 0xad, 0x02, 0xf7, 0xd2, 0x57, 0xda, 0x2a, 0x69, 0x3b, 0xb3, 0xc5, 0x44, + 0xc0, 0x66, 0xcd, 0xd7, 0x70, 0x29, 0xfe, 0xdf, 0x75, 0x7f, 0x42, 0x4c, + 0xe2, 0x12, 0x10, 0x3e, 0x83, 0x49, 0xcd, 0x4f, +}; +static const unsigned char kat2083_nonce[] = { + 0x6e, 0xe3, 0xdd, 0x90, 0x9c, 0xbb, 0xcd, 0xc0, 0x46, 0x23, 0xfd, 0x63, + 0xe9, 0x15, 0x42, 0x87, +}; +static const unsigned char kat2083_persstr[] = { + 0x7f, 0x9b, 0x52, 0x1d, 0x35, 0x7e, 0xf4, 0x86, 0xe3, 0x68, 0x27, 0xfd, + 0x0d, 0xc0, 0x30, 0xbc, 0x5b, 0x48, 0x5e, 0x7b, 0x44, 0x24, 0x45, 0x55, + 0xfb, 0xb9, 0x24, 0xb2, 0x0a, 0x88, 0xbc, 0x49, +}; +static const unsigned char kat2083_entropyinreseed[] = { + 0xf5, 0xd1, 0x03, 0xa7, 0xb4, 0x83, 0xcf, 0xfe, 0xa2, 0xe0, 0x9e, 0x5a, + 0x5e, 0x84, 0x9c, 0x43, 0x6d, 0xf0, 0x8c, 0xb4, 0x1e, 0x17, 0x9e, 0x7d, + 0x2c, 0x85, 0x37, 0x05, 0x3e, 0xd5, 0xe7, 0x1a, +}; +static const unsigned char kat2083_addinreseed[] = {0}; +static const unsigned char kat2083_addin0[] = {0}; +static const unsigned char kat2083_addin1[] = {0}; +static const unsigned char kat2083_retbits[] = { + 0x6c, 0x21, 0x27, 0x03, 0xa2, 0x78, 0x35, 0x80, 0xf2, 0xfc, 0xb4, 0xdc, + 0x48, 0x56, 0x13, 0x52, 0xcf, 0x4b, 0xf2, 0x3c, 0xf1, 0xca, 0x3f, 0x42, + 0x76, 0x29, 0x23, 0xb9, 0xfa, 0xd3, 0x52, 0xd2, 0xef, 0x63, 0x83, 0x67, + 0x60, 0x75, 0x67, 0x21, 0xa3, 0xcd, 0x91, 0x53, 0xd5, 0xdc, 0x3e, 0x96, + 0xa2, 0xd7, 0x2a, 0xcd, 0x5e, 0x6b, 0xd9, 0xd7, 0xa3, 0x60, 0xf9, 0xca, + 0x05, 0x10, 0x3c, 0x3f, +}; +static const struct drbg_kat_pr_false kat2083_t = { + 12, kat2083_entropyin, kat2083_nonce, kat2083_persstr, + kat2083_entropyinreseed, kat2083_addinreseed, kat2083_addin0, + kat2083_addin1, kat2083_retbits +}; +static const struct drbg_kat kat2083 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2083_t +}; + +static const unsigned char kat2084_entropyin[] = { + 0xa5, 0xcb, 0xff, 0x0d, 0x43, 0x58, 0x97, 0xec, 0xc9, 0xa7, 0x87, 0xf8, + 0x05, 0xbb, 0xdb, 0x26, 0xb7, 0xae, 0x87, 0x40, 0xf6, 0xb8, 0x4a, 0x46, + 0x51, 0x3e, 0xfb, 0x2c, 0xc9, 0x72, 0x04, 0xce, +}; +static const unsigned char kat2084_nonce[] = { + 0x76, 0xa0, 0x6e, 0xd1, 0xed, 0xe2, 0x64, 0xa2, 0xac, 0x16, 0xa5, 0x80, + 0x50, 0xe1, 0x91, 0xf9, +}; +static const unsigned char kat2084_persstr[] = { + 0x6f, 0x5c, 0xd7, 0x38, 0x55, 0xfa, 0x56, 0x96, 0x6d, 0x62, 0xd5, 0x04, + 0xe3, 0x21, 0x16, 0x64, 0xed, 0xaa, 0xff, 0x51, 0x81, 0x8e, 0x7a, 0x30, + 0x90, 0x4c, 0x3a, 0xe4, 0xb1, 0xa0, 0x4a, 0x51, +}; +static const unsigned char kat2084_entropyinreseed[] = { + 0x42, 0xe6, 0xb1, 0x57, 0xab, 0x34, 0x19, 0x0f, 0x82, 0x60, 0xda, 0x99, + 0x69, 0xa6, 0xfa, 0x35, 0xec, 0x31, 0x3d, 0x04, 0x4f, 0xe5, 0xef, 0x96, + 0xf6, 0xec, 0x49, 0x7f, 0xe1, 0xe5, 0x26, 0xd8, +}; +static const unsigned char kat2084_addinreseed[] = {0}; +static const unsigned char kat2084_addin0[] = {0}; +static const unsigned char kat2084_addin1[] = {0}; +static const unsigned char kat2084_retbits[] = { + 0x6d, 0x5d, 0xf4, 0xde, 0xc9, 0x97, 0xc5, 0x9a, 0x36, 0x30, 0xef, 0xdf, + 0xa9, 0xd7, 0x47, 0xca, 0x8c, 0x82, 0xa8, 0x63, 0x05, 0x61, 0x2d, 0x40, + 0x43, 0x91, 0x62, 0xad, 0x48, 0x5d, 0x47, 0xc9, 0x3e, 0xf4, 0x4b, 0x88, + 0x4f, 0x69, 0xdf, 0x3c, 0x4a, 0xb4, 0x0a, 0x2e, 0x4e, 0xa6, 0x3a, 0x45, + 0x51, 0x56, 0x41, 0x5f, 0x31, 0xa3, 0x1f, 0xdd, 0xb6, 0xb1, 0x8d, 0x9a, + 0xe1, 0xf3, 0xcc, 0x1a, +}; +static const struct drbg_kat_pr_false kat2084_t = { + 13, kat2084_entropyin, kat2084_nonce, kat2084_persstr, + kat2084_entropyinreseed, kat2084_addinreseed, kat2084_addin0, + kat2084_addin1, kat2084_retbits +}; +static const struct drbg_kat kat2084 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2084_t +}; + +static const unsigned char kat2085_entropyin[] = { + 0x92, 0x52, 0x17, 0x8c, 0x52, 0xd1, 0x12, 0x48, 0xa0, 0x56, 0x91, 0x2f, + 0x51, 0x00, 0xa3, 0xd7, 0x58, 0x3b, 0xa4, 0x1c, 0x91, 0xe5, 0x31, 0xb7, + 0x55, 0xa9, 0x3a, 0xc5, 0xe0, 0xc6, 0x1b, 0xde, +}; +static const unsigned char kat2085_nonce[] = { + 0x9e, 0xe9, 0x82, 0xdf, 0xbd, 0x23, 0x60, 0x75, 0x35, 0x9a, 0x6f, 0x19, + 0x6b, 0xc0, 0x03, 0x9f, +}; +static const unsigned char kat2085_persstr[] = { + 0x58, 0x62, 0x5e, 0x96, 0xe0, 0x3c, 0x78, 0x9f, 0x00, 0x65, 0x9e, 0xc4, + 0xcc, 0x7a, 0x13, 0xb3, 0x14, 0x04, 0xb9, 0x91, 0x6d, 0x8b, 0xb7, 0x6f, + 0x90, 0x9f, 0x60, 0xc0, 0x85, 0xfe, 0xd9, 0xa4, +}; +static const unsigned char kat2085_entropyinreseed[] = { + 0xde, 0xaa, 0x87, 0x6e, 0x0c, 0x1b, 0xbd, 0xfd, 0x5d, 0xd7, 0xac, 0xf8, + 0x8b, 0x53, 0x20, 0xbf, 0x9b, 0xd1, 0xcc, 0x0a, 0x95, 0xc7, 0x46, 0x16, + 0xe6, 0x06, 0x6c, 0xff, 0xd9, 0x13, 0xdd, 0x7a, +}; +static const unsigned char kat2085_addinreseed[] = {0}; +static const unsigned char kat2085_addin0[] = {0}; +static const unsigned char kat2085_addin1[] = {0}; +static const unsigned char kat2085_retbits[] = { + 0x34, 0x0a, 0xfc, 0x31, 0x54, 0xde, 0xff, 0xc2, 0xd8, 0xe2, 0xb9, 0xf9, + 0xbb, 0x1d, 0x1c, 0x69, 0x57, 0x6c, 0x6b, 0x35, 0x57, 0x73, 0xe2, 0x79, + 0xf0, 0x7e, 0x23, 0x26, 0x7e, 0xea, 0x72, 0xd3, 0xcd, 0x70, 0x67, 0xf0, + 0xc2, 0xdf, 0xa5, 0x84, 0xf0, 0xfd, 0x1f, 0xe8, 0xe6, 0x40, 0x05, 0x87, + 0x95, 0xbb, 0x24, 0xea, 0xb4, 0xe5, 0xda, 0x36, 0x14, 0x83, 0x48, 0x70, + 0x38, 0x02, 0xb5, 0xfb, +}; +static const struct drbg_kat_pr_false kat2085_t = { + 14, kat2085_entropyin, kat2085_nonce, kat2085_persstr, + kat2085_entropyinreseed, kat2085_addinreseed, kat2085_addin0, + kat2085_addin1, kat2085_retbits +}; +static const struct drbg_kat kat2085 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2085_t +}; + +static const unsigned char kat2086_entropyin[] = { + 0xfa, 0xfa, 0x5b, 0x9d, 0x43, 0xae, 0xfb, 0x06, 0x2a, 0xff, 0x96, 0x0c, + 0x01, 0xd1, 0xf7, 0x43, 0x9f, 0x8f, 0x00, 0xe5, 0xde, 0x1b, 0x23, 0x28, + 0xc8, 0xdd, 0xf1, 0xdf, 0xc6, 0xcc, 0x5f, 0x33, +}; +static const unsigned char kat2086_nonce[] = { + 0x6c, 0xf9, 0xc5, 0x92, 0x5e, 0xfd, 0x88, 0x6c, 0xab, 0x50, 0xce, 0x85, + 0xbb, 0x07, 0x8b, 0xd3, +}; +static const unsigned char kat2086_persstr[] = { + 0xbf, 0xc8, 0xc5, 0xeb, 0x0e, 0x41, 0x07, 0x7e, 0xb9, 0xfb, 0xb0, 0xaa, + 0x82, 0xbe, 0xd7, 0xa7, 0x69, 0x2a, 0x3a, 0xbf, 0x89, 0x7f, 0x00, 0xa0, + 0x21, 0x89, 0x7a, 0x01, 0x83, 0xd8, 0x59, 0x01, +}; +static const unsigned char kat2086_entropyinreseed[] = { + 0x23, 0x47, 0x61, 0xb5, 0x8f, 0x9f, 0x79, 0x35, 0xed, 0x4e, 0x42, 0x01, + 0xa8, 0x76, 0xcf, 0x79, 0x64, 0x65, 0xf9, 0x0b, 0x94, 0xd8, 0x85, 0xe8, + 0xb7, 0x24, 0x89, 0x4a, 0x19, 0xa6, 0x72, 0x3f, +}; +static const unsigned char kat2086_addinreseed[] = { + 0x43, 0xa4, 0xe4, 0x84, 0xd1, 0x47, 0xa9, 0x25, 0x52, 0x99, 0xeb, 0xb8, + 0x93, 0x45, 0xf2, 0xa2, 0xb9, 0xf3, 0x8b, 0xb5, 0x8f, 0xd2, 0x95, 0xd7, + 0x37, 0xe8, 0xac, 0x2f, 0x4f, 0x02, 0xa6, 0x76, +}; +static const unsigned char kat2086_addin0[] = { + 0x0c, 0xe1, 0x84, 0x00, 0xcc, 0xf5, 0x10, 0xa3, 0x8f, 0xe7, 0xe2, 0xda, + 0x4a, 0xf7, 0xd9, 0x38, 0x74, 0xb1, 0x28, 0x2d, 0x8a, 0xa4, 0x90, 0x74, + 0xb7, 0xde, 0x92, 0x4a, 0xdb, 0x40, 0xdc, 0x3e, +}; +static const unsigned char kat2086_addin1[] = { + 0x68, 0x74, 0x2f, 0x45, 0x43, 0xd1, 0xa2, 0x50, 0x66, 0x00, 0xf2, 0xae, + 0x8f, 0xb7, 0x18, 0xde, 0xcb, 0x2f, 0xa3, 0x0b, 0x24, 0xcc, 0x5b, 0xd6, + 0xd3, 0xda, 0xf0, 0x51, 0x1a, 0x9d, 0x91, 0xe8, +}; +static const unsigned char kat2086_retbits[] = { + 0x96, 0x6d, 0xb3, 0xb1, 0xc9, 0x27, 0x15, 0xcb, 0x59, 0xac, 0x23, 0x86, + 0x0d, 0x2b, 0x13, 0x4b, 0x54, 0x11, 0x2a, 0x99, 0xb1, 0x16, 0xb8, 0xd4, + 0x98, 0x36, 0x6c, 0x29, 0x26, 0xf1, 0xcc, 0xda, 0x76, 0xba, 0x3f, 0x7d, + 0x7c, 0x28, 0x2d, 0x5e, 0xdc, 0x1f, 0x66, 0x4d, 0x22, 0x73, 0x8a, 0x45, + 0xd4, 0xbb, 0x24, 0x40, 0xe5, 0x5b, 0x6f, 0xd9, 0x2b, 0xe8, 0x9c, 0xa7, + 0xc1, 0xce, 0x87, 0x5d, +}; +static const struct drbg_kat_pr_false kat2086_t = { + 0, kat2086_entropyin, kat2086_nonce, kat2086_persstr, + kat2086_entropyinreseed, kat2086_addinreseed, kat2086_addin0, + kat2086_addin1, kat2086_retbits +}; +static const struct drbg_kat kat2086 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2086_t +}; + +static const unsigned char kat2087_entropyin[] = { + 0x28, 0x2f, 0x3f, 0x1e, 0xf1, 0x2e, 0x70, 0x53, 0x7e, 0xa5, 0x3f, 0x17, + 0x70, 0x57, 0x99, 0xfd, 0xcc, 0x00, 0x48, 0xa8, 0x8e, 0x2d, 0xcc, 0x7d, + 0xf2, 0x23, 0x25, 0x1a, 0x70, 0x9e, 0xf9, 0xf5, +}; +static const unsigned char kat2087_nonce[] = { + 0x70, 0x12, 0xa2, 0xa5, 0xd0, 0x14, 0x12, 0x09, 0x57, 0x44, 0xed, 0x53, + 0x06, 0x81, 0x5d, 0x57, +}; +static const unsigned char kat2087_persstr[] = { + 0x4d, 0xe7, 0x98, 0x31, 0x90, 0x3f, 0x0e, 0x24, 0xb9, 0x59, 0x62, 0x05, + 0x4e, 0xed, 0x06, 0x16, 0xa3, 0xa7, 0xa9, 0x45, 0xff, 0x2b, 0x9d, 0xe8, + 0xfd, 0x63, 0x1e, 0xa0, 0x8b, 0xae, 0xf3, 0xd0, +}; +static const unsigned char kat2087_entropyinreseed[] = { + 0xac, 0xe3, 0x29, 0xd7, 0x9a, 0xf4, 0x81, 0xc1, 0xca, 0x9d, 0xc2, 0x88, + 0x1d, 0x73, 0x4a, 0x10, 0x56, 0x79, 0x48, 0xb5, 0x96, 0xb7, 0xbe, 0xeb, + 0x0f, 0xc5, 0x13, 0x84, 0x0e, 0x5c, 0x58, 0x3d, +}; +static const unsigned char kat2087_addinreseed[] = { + 0x73, 0x21, 0xa3, 0x30, 0x52, 0x73, 0x69, 0x4e, 0xba, 0x15, 0xa9, 0xca, + 0x81, 0x09, 0xb9, 0x09, 0x98, 0x16, 0x27, 0xf6, 0x93, 0xa6, 0xf1, 0xa9, + 0x61, 0x6e, 0x63, 0xf8, 0xdb, 0xe4, 0xcb, 0x50, +}; +static const unsigned char kat2087_addin0[] = { + 0x3b, 0xd4, 0x34, 0x98, 0x1f, 0x58, 0xfa, 0xf8, 0x21, 0x22, 0xe6, 0x12, + 0xae, 0x8a, 0x92, 0x5f, 0x6a, 0xbb, 0x6a, 0x2c, 0x95, 0x0a, 0x48, 0x61, + 0x10, 0x7e, 0xfa, 0x69, 0x92, 0x27, 0xc6, 0x6d, +}; +static const unsigned char kat2087_addin1[] = { + 0x68, 0x36, 0x96, 0x5c, 0x88, 0x75, 0x27, 0x8c, 0xa7, 0x8e, 0xad, 0x9e, + 0x59, 0x62, 0x89, 0xb0, 0x71, 0x53, 0xf5, 0xc4, 0x2d, 0x99, 0x73, 0xf1, + 0xb8, 0xb5, 0x30, 0x24, 0x4a, 0xd1, 0xaa, 0x3d, +}; +static const unsigned char kat2087_retbits[] = { + 0xc4, 0xce, 0x3a, 0x78, 0xf6, 0xbe, 0x46, 0x7a, 0x08, 0xed, 0x78, 0x3a, + 0x95, 0x7f, 0x63, 0x97, 0xfc, 0xc9, 0x05, 0xee, 0x83, 0x6d, 0xcf, 0xe0, + 0x47, 0xe2, 0x8a, 0xa7, 0xe9, 0x2d, 0x66, 0x98, 0x6f, 0x41, 0xf8, 0x6b, + 0xfc, 0xc7, 0xce, 0xef, 0x93, 0x23, 0xe0, 0x05, 0x39, 0x77, 0x27, 0x68, + 0x14, 0x27, 0x8c, 0x3d, 0x3b, 0x60, 0x6a, 0xe1, 0x19, 0x5d, 0xef, 0xdb, + 0xab, 0x71, 0x41, 0xac, +}; +static const struct drbg_kat_pr_false kat2087_t = { + 1, kat2087_entropyin, kat2087_nonce, kat2087_persstr, + kat2087_entropyinreseed, kat2087_addinreseed, kat2087_addin0, + kat2087_addin1, kat2087_retbits +}; +static const struct drbg_kat kat2087 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2087_t +}; + +static const unsigned char kat2088_entropyin[] = { + 0x97, 0xb9, 0x02, 0xf2, 0x88, 0x89, 0x29, 0xaa, 0x89, 0xb8, 0x75, 0x14, + 0xb1, 0x22, 0x1e, 0xeb, 0xa8, 0xed, 0xa1, 0x2d, 0x6c, 0x5a, 0x60, 0xd6, + 0x4a, 0xd1, 0x2d, 0x18, 0x57, 0x67, 0xfa, 0x51, +}; +static const unsigned char kat2088_nonce[] = { + 0x8f, 0x07, 0x51, 0x05, 0xed, 0xf8, 0x6d, 0xa4, 0x0d, 0xb7, 0x6f, 0x5c, + 0xc9, 0x77, 0x69, 0x5a, +}; +static const unsigned char kat2088_persstr[] = { + 0x1b, 0x05, 0x17, 0xee, 0x64, 0x0f, 0x1e, 0xc6, 0xbb, 0xfc, 0x4f, 0xac, + 0x43, 0x73, 0xe4, 0xc5, 0xee, 0x2c, 0x8e, 0x1f, 0x4a, 0x72, 0x1b, 0x41, + 0x48, 0x7a, 0x96, 0x8c, 0x5c, 0x05, 0x8c, 0x99, +}; +static const unsigned char kat2088_entropyinreseed[] = { + 0x4b, 0x44, 0x08, 0x99, 0xf9, 0x8b, 0x9b, 0x71, 0xd0, 0xfc, 0x14, 0xa1, + 0x00, 0x30, 0x8f, 0x1e, 0x74, 0xb8, 0xbb, 0xe6, 0x1f, 0x60, 0xe4, 0x7f, + 0x88, 0x7e, 0x60, 0x43, 0x40, 0x53, 0x97, 0xa2, +}; +static const unsigned char kat2088_addinreseed[] = { + 0x05, 0xd3, 0x31, 0x03, 0x39, 0x0b, 0xfb, 0xa0, 0x3e, 0xef, 0xfc, 0x14, + 0x03, 0x79, 0xa8, 0x1c, 0xfc, 0x84, 0x3d, 0x27, 0xa6, 0x25, 0xb5, 0x23, + 0xb4, 0x0e, 0x3d, 0xfd, 0xfd, 0xe9, 0xdd, 0xfd, +}; +static const unsigned char kat2088_addin0[] = { + 0xde, 0x7a, 0x2f, 0x05, 0x70, 0x0c, 0x70, 0x71, 0x29, 0x08, 0xb2, 0xc7, + 0x45, 0xb4, 0xfb, 0x88, 0x5b, 0x2a, 0xe8, 0x79, 0x1f, 0x9a, 0x17, 0x7d, + 0xdf, 0x98, 0xab, 0x89, 0x34, 0x26, 0x6c, 0x6e, +}; +static const unsigned char kat2088_addin1[] = { + 0x62, 0x33, 0x5d, 0x94, 0xb4, 0x67, 0x35, 0x26, 0xdb, 0x73, 0x2f, 0x12, + 0x37, 0xde, 0x72, 0x30, 0x8b, 0x32, 0xe7, 0xcf, 0xc7, 0xa1, 0x38, 0x71, + 0x6c, 0x4b, 0xaa, 0x61, 0x17, 0xb8, 0xfc, 0x99, +}; +static const unsigned char kat2088_retbits[] = { + 0xef, 0xcd, 0x4f, 0xd2, 0x23, 0x2a, 0x48, 0x4e, 0xee, 0x54, 0x47, 0xa1, + 0x1e, 0xe2, 0xac, 0xfc, 0x45, 0x23, 0x77, 0x53, 0x4d, 0x45, 0x3f, 0x32, + 0x0b, 0xa7, 0x3b, 0xe4, 0xc4, 0xa1, 0x5e, 0xa1, 0x2d, 0xda, 0x11, 0x49, + 0xd8, 0x5f, 0x80, 0x50, 0xc7, 0xa2, 0x0f, 0xf6, 0x81, 0xb9, 0x96, 0xea, + 0x78, 0x64, 0x80, 0xd8, 0x2e, 0x88, 0x5d, 0xfc, 0xb6, 0x4a, 0xba, 0x55, + 0x8a, 0xaa, 0xcd, 0xba, +}; +static const struct drbg_kat_pr_false kat2088_t = { + 2, kat2088_entropyin, kat2088_nonce, kat2088_persstr, + kat2088_entropyinreseed, kat2088_addinreseed, kat2088_addin0, + kat2088_addin1, kat2088_retbits +}; +static const struct drbg_kat kat2088 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2088_t +}; + +static const unsigned char kat2089_entropyin[] = { + 0x15, 0x0a, 0x91, 0xb6, 0x3c, 0x28, 0xa2, 0x37, 0x4c, 0x06, 0xf7, 0x0a, + 0x08, 0xdb, 0x87, 0x4e, 0x58, 0x7e, 0x17, 0x2f, 0x36, 0xd2, 0xc8, 0x04, + 0x4f, 0x08, 0x58, 0xc6, 0x1b, 0x1a, 0xa9, 0xfd, +}; +static const unsigned char kat2089_nonce[] = { + 0x34, 0x9b, 0x82, 0x28, 0xc2, 0x2d, 0xd7, 0x62, 0xaa, 0x86, 0x08, 0x08, + 0x09, 0xde, 0xda, 0x5f, +}; +static const unsigned char kat2089_persstr[] = { + 0x8f, 0x32, 0xa7, 0x7d, 0xa1, 0xaf, 0x4a, 0xd1, 0x41, 0x96, 0x0f, 0x1a, + 0x69, 0xf4, 0xef, 0xc9, 0x90, 0x50, 0x73, 0xd4, 0x24, 0x3d, 0x9b, 0x0e, + 0xa0, 0x99, 0x6f, 0xf4, 0x5f, 0x24, 0xc7, 0x20, +}; +static const unsigned char kat2089_entropyinreseed[] = { + 0x35, 0x8b, 0x5e, 0xdb, 0x24, 0xc9, 0xa9, 0x4d, 0x3b, 0x4b, 0x91, 0xd9, + 0x25, 0x16, 0x2c, 0x52, 0x43, 0x28, 0x03, 0xfb, 0x90, 0x26, 0x8a, 0xef, + 0xf8, 0x5e, 0x02, 0x7e, 0x47, 0xfe, 0xe9, 0x49, +}; +static const unsigned char kat2089_addinreseed[] = { + 0x0e, 0x2e, 0xb1, 0x1e, 0x8f, 0x71, 0x2b, 0xb5, 0xf6, 0x22, 0x7a, 0x58, + 0x97, 0x88, 0xf8, 0x91, 0x1c, 0x83, 0x80, 0x21, 0x86, 0x6f, 0xb9, 0x3a, + 0x87, 0x50, 0x44, 0x13, 0x0d, 0x54, 0x9b, 0xae, +}; +static const unsigned char kat2089_addin0[] = { + 0xd0, 0xd3, 0xd6, 0x02, 0xb9, 0xe4, 0x3d, 0x8a, 0x4b, 0xbd, 0xe7, 0x3e, + 0xe9, 0x3e, 0xec, 0xbe, 0x78, 0xdf, 0xa5, 0x34, 0xf1, 0xf7, 0x4b, 0xad, + 0xe7, 0xeb, 0x38, 0x66, 0x90, 0xf5, 0xb3, 0x03, +}; +static const unsigned char kat2089_addin1[] = { + 0x2d, 0xe2, 0x4b, 0x49, 0x17, 0xb9, 0xd6, 0x42, 0x0e, 0x64, 0x6c, 0x31, + 0x41, 0x31, 0x0c, 0x45, 0xe4, 0x93, 0xc3, 0x1d, 0x53, 0x25, 0xa8, 0x5c, + 0x1a, 0x6f, 0x56, 0xdd, 0x87, 0x3a, 0xba, 0x20, +}; +static const unsigned char kat2089_retbits[] = { + 0xb5, 0x29, 0x88, 0x89, 0x75, 0x8b, 0xcf, 0xec, 0x31, 0x83, 0x87, 0x5b, + 0x4d, 0x73, 0xf8, 0x4a, 0x28, 0xa7, 0x83, 0x93, 0xbe, 0x7e, 0xbd, 0x4b, + 0xa3, 0xd4, 0x2e, 0xfb, 0xa7, 0x4e, 0xd6, 0xf5, 0xa5, 0x85, 0xd9, 0xe6, + 0x77, 0x56, 0x85, 0x86, 0x2d, 0xc4, 0x5d, 0x37, 0xe1, 0x32, 0x20, 0x08, + 0x55, 0xf8, 0xf8, 0x64, 0x4b, 0x93, 0x59, 0xd8, 0x46, 0xd7, 0x4d, 0x00, + 0x08, 0x2a, 0xfd, 0xdd, +}; +static const struct drbg_kat_pr_false kat2089_t = { + 3, kat2089_entropyin, kat2089_nonce, kat2089_persstr, + kat2089_entropyinreseed, kat2089_addinreseed, kat2089_addin0, + kat2089_addin1, kat2089_retbits +}; +static const struct drbg_kat kat2089 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2089_t +}; + +static const unsigned char kat2090_entropyin[] = { + 0xce, 0x3c, 0x09, 0x74, 0x58, 0x3f, 0x1a, 0xa6, 0xd2, 0x4c, 0xa0, 0x12, + 0x85, 0x73, 0x44, 0x69, 0x4a, 0x01, 0x0d, 0xfc, 0x4a, 0xcc, 0x26, 0x05, + 0xd3, 0xd7, 0x3b, 0x12, 0xcf, 0x22, 0x8a, 0xe7, +}; +static const unsigned char kat2090_nonce[] = { + 0xf8, 0x2b, 0xc8, 0xab, 0x0a, 0x55, 0x64, 0xe3, 0xde, 0x71, 0x26, 0x3a, + 0x8a, 0x5f, 0x94, 0x3b, +}; +static const unsigned char kat2090_persstr[] = { + 0xde, 0x0b, 0xde, 0x27, 0x60, 0x40, 0x19, 0x72, 0x44, 0x35, 0x79, 0x5e, + 0xfd, 0x20, 0x4c, 0xb4, 0xc9, 0x39, 0x99, 0x52, 0x7c, 0x5b, 0x11, 0xc1, + 0x5d, 0x11, 0xe1, 0x1d, 0x3a, 0xa4, 0x82, 0xb7, +}; +static const unsigned char kat2090_entropyinreseed[] = { + 0x1e, 0xf1, 0xc0, 0xf6, 0xf5, 0x00, 0x24, 0xcd, 0xda, 0xcb, 0xed, 0x96, + 0xf2, 0x90, 0x9c, 0xa0, 0xa2, 0x94, 0x6b, 0x7c, 0x9b, 0x87, 0x41, 0x7e, + 0xd5, 0xf6, 0x8c, 0x4f, 0x9c, 0x20, 0xf3, 0x67, +}; +static const unsigned char kat2090_addinreseed[] = { + 0x5c, 0x44, 0x41, 0xf1, 0x1b, 0x37, 0x99, 0x5c, 0x9a, 0x6e, 0xd1, 0x71, + 0x01, 0xc3, 0xcd, 0x1f, 0x4b, 0x47, 0x3f, 0xb0, 0xdc, 0x9c, 0x13, 0x88, + 0xfa, 0xc6, 0xa1, 0x45, 0xab, 0x0b, 0xb7, 0xd2, +}; +static const unsigned char kat2090_addin0[] = { + 0x5c, 0xd7, 0x4a, 0xa3, 0xc2, 0xc9, 0x40, 0x64, 0x18, 0x7b, 0x00, 0x80, + 0x8c, 0x18, 0xcb, 0x6e, 0xe4, 0x39, 0x58, 0xb9, 0xf8, 0xca, 0xab, 0x17, + 0xe7, 0x73, 0x52, 0xe7, 0x30, 0xc1, 0x01, 0xaf, +}; +static const unsigned char kat2090_addin1[] = { + 0xde, 0x68, 0xa7, 0xf7, 0x5e, 0xf1, 0x8a, 0xbb, 0xb2, 0x46, 0x54, 0x39, + 0x84, 0xa2, 0x78, 0xa1, 0x1a, 0x6a, 0x37, 0xde, 0x68, 0x5a, 0x71, 0x5b, + 0x08, 0xa8, 0xa3, 0xe0, 0x79, 0xbb, 0x9e, 0xa8, +}; +static const unsigned char kat2090_retbits[] = { + 0x1b, 0x34, 0x56, 0x82, 0x5f, 0xaa, 0x79, 0x8f, 0x77, 0x03, 0x18, 0x68, + 0x7b, 0xa6, 0x2d, 0xf8, 0x61, 0xa1, 0x07, 0x81, 0xb8, 0x50, 0xd3, 0x25, + 0x4b, 0x52, 0x81, 0x50, 0x20, 0x39, 0xcc, 0x0e, 0x73, 0xee, 0xb8, 0x5a, + 0x9c, 0x79, 0x31, 0x73, 0x41, 0x74, 0xeb, 0x3e, 0x08, 0x6b, 0x70, 0x49, + 0x1f, 0xd7, 0x35, 0xc3, 0x9f, 0x55, 0xe6, 0x7f, 0x92, 0x8d, 0xdf, 0xb4, + 0xe8, 0xec, 0xe3, 0xd0, +}; +static const struct drbg_kat_pr_false kat2090_t = { + 4, kat2090_entropyin, kat2090_nonce, kat2090_persstr, + kat2090_entropyinreseed, kat2090_addinreseed, kat2090_addin0, + kat2090_addin1, kat2090_retbits +}; +static const struct drbg_kat kat2090 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2090_t +}; + +static const unsigned char kat2091_entropyin[] = { + 0xf3, 0x45, 0x60, 0xff, 0x22, 0xfe, 0x4c, 0x09, 0x19, 0xca, 0xe7, 0x39, + 0x9b, 0xb8, 0xfc, 0x99, 0x22, 0x8e, 0xde, 0xb6, 0x52, 0x4b, 0xbc, 0x62, + 0x07, 0xed, 0xc6, 0x36, 0x8a, 0xad, 0xa0, 0xfc, +}; +static const unsigned char kat2091_nonce[] = { + 0x39, 0x4b, 0x73, 0xda, 0x65, 0xab, 0x35, 0xcc, 0xba, 0xd6, 0x1a, 0xa3, + 0x01, 0x0d, 0x7a, 0xe0, +}; +static const unsigned char kat2091_persstr[] = { + 0x4c, 0xb4, 0x2f, 0x76, 0x40, 0x81, 0x41, 0x5f, 0x1c, 0x34, 0x68, 0xf9, + 0x25, 0xf5, 0xe3, 0xc0, 0x1c, 0x31, 0x62, 0xd5, 0x52, 0x01, 0x7d, 0x9b, + 0x4c, 0xcc, 0x49, 0xa3, 0xac, 0x9a, 0x19, 0x31, +}; +static const unsigned char kat2091_entropyinreseed[] = { + 0x2c, 0xdf, 0x1e, 0x13, 0x1f, 0xec, 0x0d, 0xe6, 0x53, 0xb7, 0x84, 0xe8, + 0x92, 0x38, 0x89, 0x86, 0xb2, 0xf2, 0x81, 0x77, 0xc4, 0xf5, 0xa7, 0x13, + 0x50, 0x17, 0xbf, 0x17, 0xda, 0x30, 0xd6, 0xf8, +}; +static const unsigned char kat2091_addinreseed[] = { + 0x37, 0xc0, 0x3b, 0x05, 0x54, 0x28, 0x77, 0x8e, 0xfe, 0x9e, 0x2a, 0x49, + 0x78, 0x1b, 0x02, 0xca, 0x66, 0xaa, 0x0d, 0xc4, 0xc2, 0x74, 0x80, 0x01, + 0x09, 0x20, 0x3e, 0xda, 0x12, 0xa3, 0x42, 0x73, +}; +static const unsigned char kat2091_addin0[] = { + 0x2b, 0x38, 0x12, 0x52, 0xd6, 0xad, 0x41, 0x93, 0x56, 0xe7, 0xd7, 0x78, + 0xaa, 0xf4, 0x0d, 0x0c, 0x1b, 0x7e, 0x7b, 0xa8, 0x86, 0x2f, 0x90, 0x75, + 0x67, 0x23, 0xe6, 0xab, 0x84, 0xba, 0xf0, 0xc8, +}; +static const unsigned char kat2091_addin1[] = { + 0xd0, 0x36, 0xef, 0x8e, 0x08, 0x9c, 0x53, 0x52, 0xf8, 0x00, 0x7d, 0xed, + 0xbf, 0x49, 0x3d, 0xc3, 0x66, 0x2d, 0xbd, 0x47, 0x51, 0x52, 0x9d, 0x95, + 0xa6, 0x75, 0x5d, 0x3e, 0x5a, 0x27, 0xed, 0x80, +}; +static const unsigned char kat2091_retbits[] = { + 0xa2, 0x83, 0x69, 0xdb, 0xde, 0xe9, 0xa8, 0x4b, 0xd0, 0xe5, 0x99, 0x7a, + 0xc1, 0x50, 0x58, 0x11, 0x5a, 0x22, 0xc9, 0xa3, 0x11, 0x9d, 0x24, 0x38, + 0xca, 0x86, 0xa7, 0x17, 0xb3, 0xe1, 0x60, 0xfe, 0x67, 0x50, 0xd2, 0x88, + 0xca, 0x73, 0xf3, 0xbb, 0x4a, 0x93, 0xdc, 0xd5, 0x37, 0x50, 0x26, 0x28, + 0xde, 0x0d, 0xcb, 0x75, 0xae, 0xfd, 0x19, 0xc7, 0xec, 0xff, 0x04, 0x44, + 0xf1, 0x9f, 0x78, 0x74, +}; +static const struct drbg_kat_pr_false kat2091_t = { + 5, kat2091_entropyin, kat2091_nonce, kat2091_persstr, + kat2091_entropyinreseed, kat2091_addinreseed, kat2091_addin0, + kat2091_addin1, kat2091_retbits +}; +static const struct drbg_kat kat2091 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2091_t +}; + +static const unsigned char kat2092_entropyin[] = { + 0xcc, 0x20, 0xf6, 0x7e, 0xef, 0x21, 0x9f, 0x30, 0xe5, 0x10, 0x8c, 0x0a, + 0x14, 0xaf, 0x05, 0x5a, 0x53, 0xb4, 0xa0, 0xe8, 0x80, 0x5c, 0x0a, 0xfb, + 0xb7, 0x96, 0x54, 0x67, 0xd5, 0x58, 0x1e, 0xef, +}; +static const unsigned char kat2092_nonce[] = { + 0x60, 0xbb, 0xca, 0x8a, 0xbb, 0x53, 0x80, 0xe6, 0x2d, 0xa2, 0x6f, 0x8e, + 0xec, 0x80, 0x21, 0x2a, +}; +static const unsigned char kat2092_persstr[] = { + 0xf9, 0x8d, 0x53, 0x7e, 0x64, 0xd3, 0x26, 0x3e, 0xe4, 0x1a, 0x2f, 0x1c, + 0x93, 0xdd, 0x76, 0x17, 0xd4, 0x57, 0xe0, 0x8a, 0x0d, 0x49, 0x04, 0x6b, + 0xc1, 0x74, 0x10, 0xec, 0xe7, 0xb1, 0x42, 0x7c, +}; +static const unsigned char kat2092_entropyinreseed[] = { + 0x61, 0x45, 0x87, 0x08, 0x6c, 0xec, 0x14, 0x6f, 0xd1, 0x5c, 0x1c, 0x45, + 0x60, 0x23, 0x96, 0x17, 0x41, 0x35, 0x96, 0x06, 0x96, 0xbf, 0x78, 0x54, + 0x66, 0x0f, 0x50, 0x4d, 0xde, 0xb1, 0xfc, 0x03, +}; +static const unsigned char kat2092_addinreseed[] = { + 0x43, 0x2a, 0xed, 0xc0, 0x93, 0xe9, 0xa3, 0xf5, 0xcf, 0xf3, 0x43, 0x37, + 0xf9, 0xd1, 0xf0, 0xb6, 0xb2, 0xf4, 0xd9, 0xe9, 0x55, 0x15, 0x6a, 0x55, + 0xff, 0xfc, 0x59, 0x17, 0x03, 0x87, 0x3a, 0xa7, +}; +static const unsigned char kat2092_addin0[] = { + 0x13, 0xc3, 0x85, 0x0d, 0x8a, 0x13, 0xe2, 0x05, 0xa8, 0xe8, 0x16, 0xd3, + 0xee, 0xa3, 0x1b, 0x96, 0xc4, 0x71, 0xb8, 0xc2, 0x9a, 0xd0, 0x37, 0xd6, + 0x8c, 0xda, 0xf0, 0x53, 0x72, 0xf9, 0x82, 0x66, +}; +static const unsigned char kat2092_addin1[] = { + 0xfe, 0x43, 0x11, 0xce, 0x3a, 0x9b, 0xf6, 0xe1, 0x05, 0xa0, 0x7a, 0x9f, + 0x6e, 0xbd, 0xae, 0xc8, 0x1f, 0xab, 0x96, 0x82, 0x05, 0xce, 0xf6, 0x41, + 0x56, 0xdb, 0x09, 0xf6, 0xfd, 0xce, 0x62, 0x84, +}; +static const unsigned char kat2092_retbits[] = { + 0x98, 0xe0, 0xdc, 0xa2, 0x0d, 0x95, 0x6b, 0x4b, 0xe8, 0x0e, 0x62, 0xcd, + 0xc0, 0x3d, 0x5e, 0xa5, 0x45, 0x05, 0x70, 0x61, 0xe7, 0x2b, 0xf6, 0x06, + 0x05, 0x7d, 0xfc, 0xea, 0x0e, 0x0f, 0x48, 0x5b, 0x95, 0x55, 0x26, 0x38, + 0xd4, 0x4b, 0xee, 0xcc, 0x5c, 0xc6, 0xdb, 0x87, 0x6d, 0xff, 0x0b, 0xa9, + 0x5a, 0x0d, 0x15, 0x1a, 0xa0, 0xb7, 0x2f, 0x79, 0x9b, 0xfe, 0x49, 0xa9, + 0x3d, 0x86, 0xdd, 0xb9, +}; +static const struct drbg_kat_pr_false kat2092_t = { + 6, kat2092_entropyin, kat2092_nonce, kat2092_persstr, + kat2092_entropyinreseed, kat2092_addinreseed, kat2092_addin0, + kat2092_addin1, kat2092_retbits +}; +static const struct drbg_kat kat2092 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2092_t +}; + +static const unsigned char kat2093_entropyin[] = { + 0x09, 0xe4, 0xc1, 0xe0, 0xbc, 0x54, 0x01, 0x3b, 0xaa, 0x0f, 0x5f, 0x69, + 0x7c, 0xda, 0x89, 0x7a, 0x0f, 0xa4, 0x7c, 0x9a, 0x91, 0x85, 0xe2, 0xd0, + 0x34, 0x8a, 0x75, 0x66, 0x95, 0x76, 0x91, 0x43, +}; +static const unsigned char kat2093_nonce[] = { + 0xc5, 0x92, 0xfa, 0xe4, 0xaa, 0xcc, 0x3e, 0x2f, 0x6a, 0x41, 0x7c, 0x5a, + 0xf6, 0xc5, 0xc0, 0x30, +}; +static const unsigned char kat2093_persstr[] = { + 0x66, 0x02, 0x68, 0x0d, 0xd9, 0x37, 0xf7, 0xac, 0x34, 0xbc, 0xcc, 0x7b, + 0xa7, 0x79, 0x32, 0x9e, 0x37, 0xab, 0x46, 0xef, 0x70, 0xb3, 0x81, 0xdc, + 0x65, 0x71, 0xe0, 0x25, 0xe0, 0xea, 0x3a, 0x2e, +}; +static const unsigned char kat2093_entropyinreseed[] = { + 0x45, 0xf2, 0xbd, 0x8e, 0xbc, 0x9b, 0x2f, 0x57, 0x74, 0xe9, 0x3d, 0xe0, + 0x01, 0xed, 0x97, 0xf2, 0x5f, 0x76, 0x51, 0x5d, 0x74, 0x82, 0xa5, 0x5e, + 0x18, 0x12, 0x94, 0x1f, 0x79, 0x5e, 0x97, 0xb7, +}; +static const unsigned char kat2093_addinreseed[] = { + 0x58, 0xba, 0x0e, 0xda, 0x15, 0xdb, 0xf5, 0xb9, 0x0d, 0xef, 0x6d, 0xca, + 0xdd, 0xbf, 0xf8, 0x75, 0xda, 0x07, 0x89, 0x2d, 0x2b, 0xc3, 0xcc, 0x4b, + 0xef, 0xb5, 0x60, 0x89, 0x26, 0x28, 0x31, 0x82, +}; +static const unsigned char kat2093_addin0[] = { + 0xa9, 0x0e, 0xb4, 0xec, 0xe1, 0xa1, 0x0a, 0x5b, 0x3e, 0xb4, 0x44, 0x77, + 0x0b, 0x9f, 0xae, 0x2d, 0xb9, 0x5b, 0x52, 0x4d, 0x72, 0x2a, 0x61, 0xfb, + 0x68, 0x1c, 0x8d, 0xe9, 0xc8, 0x88, 0xf3, 0xd2, +}; +static const unsigned char kat2093_addin1[] = { + 0x77, 0xac, 0x3a, 0xe2, 0x46, 0xc4, 0x18, 0xba, 0x00, 0xfb, 0xf1, 0x11, + 0x0a, 0xac, 0x88, 0x37, 0x82, 0xfe, 0x89, 0x9b, 0x69, 0x7b, 0x83, 0x0f, + 0x72, 0x90, 0x49, 0x49, 0xa2, 0x31, 0xc7, 0x12, +}; +static const unsigned char kat2093_retbits[] = { + 0x6a, 0x9c, 0x6e, 0x15, 0x55, 0x19, 0x94, 0x77, 0x4d, 0xe0, 0x94, 0x27, + 0x04, 0x60, 0x24, 0x88, 0x07, 0xef, 0xee, 0xb1, 0xb1, 0x6b, 0x7d, 0xff, + 0x10, 0x2e, 0xbc, 0x33, 0xf0, 0x43, 0xdc, 0xa3, 0xa6, 0x8d, 0x46, 0xec, + 0x55, 0xcc, 0xbd, 0x89, 0x1b, 0xf4, 0x09, 0x95, 0x99, 0xc1, 0x95, 0xfe, + 0x38, 0x68, 0x07, 0xf6, 0x4e, 0x61, 0x2d, 0x5c, 0xd5, 0x64, 0x96, 0x19, + 0x5a, 0x1b, 0xed, 0xe7, +}; +static const struct drbg_kat_pr_false kat2093_t = { + 7, kat2093_entropyin, kat2093_nonce, kat2093_persstr, + kat2093_entropyinreseed, kat2093_addinreseed, kat2093_addin0, + kat2093_addin1, kat2093_retbits +}; +static const struct drbg_kat kat2093 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2093_t +}; + +static const unsigned char kat2094_entropyin[] = { + 0x62, 0xcf, 0x2b, 0x15, 0x9e, 0x28, 0x72, 0x15, 0xe9, 0x63, 0xa2, 0x89, + 0xf3, 0x63, 0xc4, 0x10, 0xde, 0x2e, 0x19, 0xdd, 0xce, 0x44, 0xfa, 0xc9, + 0xe2, 0x6b, 0x7e, 0xd4, 0x4a, 0xd1, 0xf9, 0x71, +}; +static const unsigned char kat2094_nonce[] = { + 0xc4, 0xe5, 0xb2, 0x21, 0xae, 0x8b, 0xca, 0xec, 0xcc, 0x34, 0x81, 0xf1, + 0xc5, 0x06, 0x38, 0xf5, +}; +static const unsigned char kat2094_persstr[] = { + 0x14, 0x7f, 0x15, 0x24, 0xbe, 0xe0, 0xb0, 0x51, 0x26, 0x61, 0x11, 0x00, + 0xf7, 0x78, 0xe2, 0x23, 0x07, 0xca, 0x58, 0x93, 0xc5, 0x86, 0x8e, 0x13, + 0xc3, 0x41, 0x5d, 0x08, 0xc3, 0xf2, 0xd9, 0x98, +}; +static const unsigned char kat2094_entropyinreseed[] = { + 0xba, 0x37, 0x05, 0xc6, 0xae, 0xb6, 0x6d, 0xd1, 0x27, 0x86, 0xb8, 0xe3, + 0x5d, 0x6e, 0x5a, 0xac, 0xd4, 0xc2, 0x03, 0x0a, 0x95, 0x09, 0x3a, 0x8e, + 0xb0, 0x8e, 0xcb, 0x06, 0xd5, 0xab, 0x87, 0x6f, +}; +static const unsigned char kat2094_addinreseed[] = { + 0x32, 0x7e, 0x55, 0x80, 0xf4, 0xc9, 0xb3, 0x6f, 0x99, 0x94, 0x92, 0x74, + 0xb3, 0x91, 0xff, 0x1a, 0xc4, 0x65, 0xf1, 0xff, 0x30, 0x5d, 0x04, 0x4b, + 0x0c, 0x2e, 0x9d, 0x4f, 0xfc, 0x09, 0xf9, 0xf8, +}; +static const unsigned char kat2094_addin0[] = { + 0xcd, 0x1b, 0x49, 0x35, 0x86, 0x98, 0x94, 0xfe, 0xe3, 0xca, 0x2e, 0x18, + 0x34, 0x16, 0xe4, 0x4b, 0xf0, 0x98, 0x23, 0x94, 0x62, 0xf9, 0xa5, 0xa4, + 0x35, 0x95, 0xae, 0x59, 0x27, 0xc4, 0x0d, 0x2d, +}; +static const unsigned char kat2094_addin1[] = { + 0xa4, 0xe7, 0xb4, 0x7c, 0x9d, 0xe1, 0xf9, 0xd3, 0x63, 0x55, 0xe2, 0xfc, + 0x99, 0x20, 0x01, 0xa3, 0x72, 0x97, 0xa7, 0xca, 0xe7, 0x35, 0x2c, 0x27, + 0x2a, 0xf0, 0x19, 0x1a, 0x6f, 0x54, 0xbb, 0x2c, +}; +static const unsigned char kat2094_retbits[] = { + 0x89, 0xaa, 0xe1, 0x70, 0xab, 0xce, 0x1e, 0x86, 0xea, 0x52, 0x75, 0xdd, + 0x8c, 0x96, 0x0d, 0xfe, 0x29, 0xba, 0xb5, 0x49, 0x92, 0xea, 0x01, 0x3e, + 0x82, 0xdc, 0x89, 0xd8, 0x1c, 0xae, 0xe9, 0x2e, 0x72, 0x0c, 0xad, 0x6f, + 0x26, 0x1a, 0xf2, 0xb2, 0x0b, 0xa7, 0xfb, 0xfb, 0xa1, 0xfc, 0x2f, 0x68, + 0x43, 0xdb, 0x82, 0xf9, 0x1a, 0x40, 0x4c, 0x08, 0xb2, 0x65, 0xdf, 0x06, + 0xf9, 0x5b, 0x6d, 0x4e, +}; +static const struct drbg_kat_pr_false kat2094_t = { + 8, kat2094_entropyin, kat2094_nonce, kat2094_persstr, + kat2094_entropyinreseed, kat2094_addinreseed, kat2094_addin0, + kat2094_addin1, kat2094_retbits +}; +static const struct drbg_kat kat2094 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2094_t +}; + +static const unsigned char kat2095_entropyin[] = { + 0x8b, 0x61, 0xac, 0x65, 0xfe, 0x61, 0xa6, 0x2d, 0x1c, 0x14, 0x2d, 0xd4, + 0x43, 0xa2, 0xa9, 0x39, 0x11, 0xb5, 0xe3, 0x5c, 0x66, 0x26, 0xf8, 0xc4, + 0xd0, 0xc9, 0x1b, 0x81, 0xdd, 0x2f, 0xe5, 0x59, +}; +static const unsigned char kat2095_nonce[] = { + 0x05, 0xc2, 0xa2, 0x11, 0x9a, 0xdb, 0xc0, 0x96, 0x95, 0x1a, 0x35, 0xd9, + 0x22, 0xcb, 0x7e, 0xd0, +}; +static const unsigned char kat2095_persstr[] = { + 0x12, 0xf1, 0xc2, 0xd9, 0xde, 0xbe, 0xb8, 0x9a, 0xb6, 0x40, 0xbd, 0x0f, + 0xdd, 0x0b, 0xfb, 0x3e, 0x9f, 0x35, 0x6c, 0x22, 0xe9, 0x92, 0x51, 0x76, + 0xd0, 0x0d, 0x3b, 0x1d, 0x79, 0xf5, 0x9e, 0x41, +}; +static const unsigned char kat2095_entropyinreseed[] = { + 0x98, 0x76, 0x30, 0xfe, 0x62, 0x21, 0x90, 0xd0, 0x99, 0x3e, 0x79, 0xdc, + 0x0a, 0x69, 0x4d, 0x35, 0x8a, 0xdf, 0x09, 0x75, 0x99, 0x3c, 0xc1, 0x6e, + 0x7b, 0xde, 0x35, 0xcb, 0x9b, 0xaa, 0xd8, 0x42, +}; +static const unsigned char kat2095_addinreseed[] = { + 0x3d, 0x68, 0x64, 0xd4, 0xd0, 0x76, 0x52, 0xfe, 0xab, 0x92, 0x69, 0xad, + 0xad, 0xf1, 0xa7, 0x59, 0xe3, 0xf8, 0x72, 0x3a, 0xc0, 0xcf, 0x3b, 0x05, + 0xb8, 0x46, 0x39, 0x8e, 0xb2, 0x1b, 0xab, 0xac, +}; +static const unsigned char kat2095_addin0[] = { + 0xd8, 0x90, 0x61, 0x4d, 0x33, 0xbe, 0x07, 0xdf, 0x37, 0x80, 0x64, 0x4e, + 0xe4, 0x79, 0x38, 0x9a, 0x7a, 0xe7, 0x88, 0x7e, 0x28, 0xc2, 0x5d, 0x14, + 0xf7, 0x66, 0xf2, 0x89, 0xc7, 0x5f, 0x2c, 0x22, +}; +static const unsigned char kat2095_addin1[] = { + 0xd2, 0xb0, 0x29, 0xa2, 0xdd, 0x16, 0x6f, 0xc1, 0x75, 0xc6, 0x7d, 0xf9, + 0xc9, 0x8b, 0x4e, 0x16, 0x90, 0x0b, 0x1d, 0xc0, 0x20, 0xfa, 0x11, 0x39, + 0x33, 0xab, 0xa6, 0xc7, 0x72, 0x09, 0xe3, 0x30, +}; +static const unsigned char kat2095_retbits[] = { + 0x14, 0x62, 0xb7, 0x9b, 0xe2, 0x5c, 0xc4, 0x8b, 0x7b, 0xe8, 0x1f, 0x44, + 0xdf, 0x5f, 0xbb, 0x21, 0xba, 0xff, 0x03, 0x7e, 0xa8, 0x6e, 0x2a, 0x34, + 0x44, 0x09, 0xcb, 0x48, 0x31, 0x57, 0xef, 0x84, 0x85, 0x9d, 0x34, 0x6f, + 0x5c, 0x92, 0x50, 0xba, 0x45, 0x39, 0xa8, 0xd5, 0x98, 0x34, 0xb1, 0x56, + 0x73, 0xd4, 0x30, 0x36, 0x52, 0xf5, 0xc6, 0xd2, 0x73, 0x10, 0x6e, 0x05, + 0x3c, 0x57, 0x8d, 0x02, +}; +static const struct drbg_kat_pr_false kat2095_t = { + 9, kat2095_entropyin, kat2095_nonce, kat2095_persstr, + kat2095_entropyinreseed, kat2095_addinreseed, kat2095_addin0, + kat2095_addin1, kat2095_retbits +}; +static const struct drbg_kat kat2095 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2095_t +}; + +static const unsigned char kat2096_entropyin[] = { + 0x13, 0x99, 0x16, 0xe7, 0x4a, 0x74, 0x05, 0xa7, 0x0c, 0x09, 0xe3, 0x1b, + 0x65, 0x11, 0xe8, 0x5f, 0xb5, 0xf3, 0x87, 0xbc, 0xdb, 0xfc, 0x1c, 0x5e, + 0x4d, 0x93, 0xb7, 0x83, 0xda, 0x94, 0x98, 0x4a, +}; +static const unsigned char kat2096_nonce[] = { + 0x70, 0x9d, 0xba, 0x3d, 0xe6, 0xf7, 0x99, 0xed, 0x20, 0xa8, 0xfc, 0xc7, + 0x1c, 0xa7, 0xeb, 0x47, +}; +static const unsigned char kat2096_persstr[] = { + 0x08, 0x2f, 0xf0, 0xb5, 0x2f, 0x79, 0xf2, 0x8f, 0x63, 0x56, 0x86, 0xbf, + 0x9a, 0xd0, 0x41, 0x5a, 0x94, 0xea, 0x2a, 0x40, 0x39, 0x14, 0x4c, 0x7e, + 0x3d, 0xce, 0xf8, 0xe3, 0xa8, 0xd6, 0xcb, 0x4e, +}; +static const unsigned char kat2096_entropyinreseed[] = { + 0x72, 0x09, 0x7f, 0xf8, 0x3c, 0x04, 0x66, 0xc1, 0x8d, 0xc6, 0x64, 0xbc, + 0xa1, 0xf2, 0x17, 0xbf, 0xd4, 0x67, 0xbd, 0x38, 0xa8, 0xaa, 0xc1, 0x94, + 0x9f, 0x49, 0x96, 0xe1, 0x96, 0x70, 0xb8, 0x7f, +}; +static const unsigned char kat2096_addinreseed[] = { + 0x92, 0xea, 0xf3, 0x48, 0xc8, 0x20, 0xcc, 0x30, 0xd0, 0x0b, 0x9d, 0xd6, + 0xb4, 0x02, 0xd0, 0x76, 0x15, 0x8e, 0xe9, 0x57, 0xb1, 0x9e, 0x27, 0xe5, + 0xde, 0xe3, 0xea, 0x48, 0x2b, 0xce, 0x0a, 0x77, +}; +static const unsigned char kat2096_addin0[] = { + 0x6b, 0x9a, 0xf2, 0x7c, 0xf7, 0x94, 0xba, 0xe5, 0x6e, 0x69, 0xd0, 0xe8, + 0x79, 0xcb, 0xdb, 0x82, 0xfa, 0xc1, 0xe3, 0x72, 0xd0, 0x0a, 0x31, 0x58, + 0xff, 0x73, 0xd4, 0xcc, 0x76, 0x59, 0x01, 0x4a, +}; +static const unsigned char kat2096_addin1[] = { + 0xdd, 0x18, 0xc8, 0x13, 0x9f, 0xe9, 0xbd, 0x59, 0xef, 0xd5, 0x36, 0x02, + 0x24, 0x16, 0xf0, 0xe0, 0x38, 0x0f, 0x5f, 0x1d, 0xfd, 0x5e, 0x3e, 0x6a, + 0x19, 0x54, 0xa7, 0x30, 0xf0, 0x07, 0x08, 0xc7, +}; +static const unsigned char kat2096_retbits[] = { + 0xdd, 0xf3, 0xe7, 0xae, 0x96, 0x7d, 0xd3, 0xa1, 0xee, 0xfb, 0x82, 0x8a, + 0xf4, 0x20, 0x17, 0x05, 0x98, 0xd4, 0x64, 0xd3, 0xc2, 0xf7, 0x8d, 0xba, + 0xbf, 0x10, 0x17, 0x6e, 0x90, 0xbf, 0xda, 0xc2, 0xd0, 0x0d, 0x9a, 0xea, + 0x42, 0x47, 0xdb, 0x05, 0x35, 0x81, 0xd0, 0xb5, 0x40, 0xa1, 0xfc, 0xe0, + 0x92, 0x9c, 0x6f, 0x24, 0xdd, 0x64, 0x7a, 0x6e, 0x86, 0xcb, 0x8c, 0x42, + 0x2b, 0x56, 0x90, 0x29, +}; +static const struct drbg_kat_pr_false kat2096_t = { + 10, kat2096_entropyin, kat2096_nonce, kat2096_persstr, + kat2096_entropyinreseed, kat2096_addinreseed, kat2096_addin0, + kat2096_addin1, kat2096_retbits +}; +static const struct drbg_kat kat2096 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2096_t +}; + +static const unsigned char kat2097_entropyin[] = { + 0xd2, 0x5d, 0x0a, 0x11, 0x8d, 0x9d, 0x3f, 0x62, 0x37, 0xb6, 0xe5, 0x6f, + 0x5e, 0xac, 0xff, 0x1b, 0xb9, 0xd5, 0xdf, 0x8c, 0xb0, 0x94, 0x5c, 0x14, + 0xf0, 0x9c, 0x4b, 0x6d, 0x77, 0x8b, 0xe3, 0x9a, +}; +static const unsigned char kat2097_nonce[] = { + 0x74, 0x55, 0x73, 0xc0, 0x91, 0x79, 0x34, 0xcd, 0xd6, 0x15, 0xa6, 0xa2, + 0x1d, 0xd6, 0x8b, 0xb9, +}; +static const unsigned char kat2097_persstr[] = { + 0xbe, 0xc1, 0xbc, 0xe1, 0x32, 0xaa, 0x26, 0xae, 0x4b, 0x44, 0xc9, 0xdb, + 0xb9, 0x1a, 0xf4, 0xb9, 0xbd, 0xc6, 0xa0, 0xc9, 0x0e, 0x4a, 0x7a, 0x97, + 0x8f, 0x36, 0xdc, 0xa0, 0xff, 0x17, 0x27, 0xdd, +}; +static const unsigned char kat2097_entropyinreseed[] = { + 0x7e, 0xe5, 0x65, 0xbe, 0x81, 0xb5, 0xb6, 0xba, 0x0d, 0x60, 0xf2, 0xd3, + 0x33, 0x90, 0x2b, 0x45, 0xb4, 0x35, 0x58, 0x1c, 0x5b, 0xb4, 0xa8, 0x19, + 0x03, 0x0c, 0x15, 0x1b, 0x51, 0xb6, 0x1c, 0x35, +}; +static const unsigned char kat2097_addinreseed[] = { + 0xb1, 0xbf, 0xd9, 0xef, 0x0b, 0x54, 0x01, 0x10, 0x7f, 0xca, 0xfc, 0x1a, + 0x5f, 0x15, 0xac, 0x63, 0xfc, 0x58, 0x86, 0xef, 0xae, 0xbb, 0x1d, 0xea, + 0x9c, 0x8e, 0xae, 0xc4, 0xa4, 0xca, 0x27, 0x14, +}; +static const unsigned char kat2097_addin0[] = { + 0xd8, 0x7d, 0x68, 0x33, 0x81, 0x5e, 0x5a, 0xaf, 0xda, 0xc7, 0x17, 0x91, + 0xb2, 0x82, 0x79, 0x53, 0x52, 0x76, 0x72, 0xd3, 0xc6, 0x92, 0xb4, 0x2c, + 0x6a, 0x22, 0x40, 0xd8, 0x47, 0x1a, 0x5c, 0x95, +}; +static const unsigned char kat2097_addin1[] = { + 0xef, 0x92, 0xf4, 0x6e, 0x53, 0xea, 0x61, 0xbd, 0xe1, 0x75, 0xe6, 0x66, + 0xe9, 0x7c, 0x62, 0xf5, 0xa4, 0xb1, 0xf3, 0x76, 0xf9, 0x01, 0xa7, 0x98, + 0x41, 0x1e, 0xf9, 0x05, 0x59, 0x46, 0x00, 0x79, +}; +static const unsigned char kat2097_retbits[] = { + 0x27, 0xfa, 0x85, 0xc2, 0xeb, 0xd4, 0x31, 0x02, 0x5b, 0x1e, 0x1b, 0x66, + 0x98, 0xb5, 0xf0, 0x8f, 0x05, 0x9a, 0x65, 0xc0, 0x93, 0xfc, 0x3c, 0xc9, + 0x6e, 0x49, 0xac, 0x74, 0x39, 0x04, 0x04, 0xdc, 0xe0, 0x0c, 0x34, 0x56, + 0xd5, 0x97, 0xd3, 0xc5, 0x95, 0x99, 0xfb, 0x7d, 0x85, 0x6a, 0xe5, 0x5a, + 0x04, 0xb5, 0xc8, 0xb2, 0x82, 0x00, 0x84, 0x7b, 0xb9, 0x53, 0xc3, 0x3e, + 0xf5, 0x56, 0xeb, 0x1c, +}; +static const struct drbg_kat_pr_false kat2097_t = { + 11, kat2097_entropyin, kat2097_nonce, kat2097_persstr, + kat2097_entropyinreseed, kat2097_addinreseed, kat2097_addin0, + kat2097_addin1, kat2097_retbits +}; +static const struct drbg_kat kat2097 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2097_t +}; + +static const unsigned char kat2098_entropyin[] = { + 0x05, 0x74, 0x6b, 0x55, 0xef, 0x89, 0x70, 0xe3, 0x5f, 0x37, 0x9c, 0x58, + 0xf6, 0xba, 0x8f, 0x8c, 0x21, 0xd3, 0xc4, 0xe2, 0x41, 0xf9, 0xa8, 0x88, + 0x0f, 0x81, 0x1d, 0xfa, 0xd0, 0x85, 0xdc, 0xcf, +}; +static const unsigned char kat2098_nonce[] = { + 0xc5, 0x2f, 0x6c, 0xc4, 0x31, 0x19, 0xb0, 0x8f, 0xdc, 0xa9, 0x95, 0xc7, + 0x15, 0xcb, 0xee, 0x15, +}; +static const unsigned char kat2098_persstr[] = { + 0xbf, 0xc1, 0x39, 0xcd, 0xc8, 0xb4, 0x6c, 0x4c, 0xef, 0xc1, 0x38, 0x3a, + 0x9f, 0x42, 0x89, 0xbd, 0x4f, 0x79, 0xc1, 0x6a, 0x46, 0xa6, 0x4c, 0x87, + 0xfb, 0x99, 0x1e, 0x91, 0x02, 0xd4, 0x1d, 0xd2, +}; +static const unsigned char kat2098_entropyinreseed[] = { + 0x78, 0xfe, 0x98, 0x1d, 0xd9, 0x59, 0xe9, 0xdd, 0x55, 0x73, 0xa6, 0x9d, + 0xa8, 0xd6, 0x38, 0xc4, 0x4f, 0xd8, 0xe9, 0xa3, 0x7c, 0x34, 0x63, 0x27, + 0xd6, 0xdb, 0x1a, 0xed, 0x04, 0x28, 0x7a, 0x17, +}; +static const unsigned char kat2098_addinreseed[] = { + 0xf1, 0x66, 0x83, 0xa7, 0xfa, 0x56, 0xfe, 0x77, 0xfe, 0x2e, 0xc5, 0xe0, + 0xfc, 0xfc, 0x8c, 0x73, 0x06, 0xac, 0x96, 0x40, 0xe9, 0x0e, 0x12, 0xd0, + 0xf8, 0x90, 0x18, 0x84, 0x35, 0x98, 0x07, 0x66, +}; +static const unsigned char kat2098_addin0[] = { + 0xfc, 0x5a, 0x69, 0xe0, 0x79, 0x89, 0x62, 0xc7, 0x22, 0x97, 0xf0, 0x18, + 0xfc, 0x6a, 0x85, 0x16, 0x1e, 0x97, 0xa8, 0x02, 0x9b, 0x66, 0x4c, 0x78, + 0x9e, 0xb9, 0x95, 0x04, 0x8f, 0xf3, 0x02, 0x06, +}; +static const unsigned char kat2098_addin1[] = { + 0xe2, 0x69, 0xaa, 0x79, 0x16, 0xf5, 0x48, 0x44, 0x52, 0x09, 0xa8, 0x75, + 0xda, 0x37, 0x84, 0x2e, 0xc9, 0xea, 0xa4, 0x6b, 0x30, 0x13, 0xf6, 0xee, + 0x08, 0x7b, 0xf1, 0x13, 0x07, 0x92, 0x31, 0x29, +}; +static const unsigned char kat2098_retbits[] = { + 0xbf, 0x53, 0xfe, 0x5c, 0x0d, 0x48, 0x5e, 0x2c, 0xb8, 0x4d, 0xaa, 0xad, + 0x94, 0x99, 0x1f, 0x3c, 0x1a, 0x1c, 0x7e, 0x5f, 0xcd, 0xda, 0x3c, 0xfe, + 0xe9, 0x7a, 0x63, 0x2f, 0x44, 0x43, 0x97, 0x10, 0xe8, 0x3d, 0x15, 0x80, + 0x0a, 0xb3, 0x5d, 0x6d, 0x6c, 0x22, 0x05, 0xb3, 0xf4, 0x23, 0xa4, 0xd6, + 0x8a, 0x2b, 0x36, 0xc3, 0x24, 0x97, 0xf2, 0x48, 0xe5, 0xbe, 0x80, 0xef, + 0xd7, 0x2f, 0xb1, 0xc1, +}; +static const struct drbg_kat_pr_false kat2098_t = { + 12, kat2098_entropyin, kat2098_nonce, kat2098_persstr, + kat2098_entropyinreseed, kat2098_addinreseed, kat2098_addin0, + kat2098_addin1, kat2098_retbits +}; +static const struct drbg_kat kat2098 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2098_t +}; + +static const unsigned char kat2099_entropyin[] = { + 0x78, 0x82, 0xb2, 0xa4, 0x43, 0x94, 0xf3, 0x73, 0xc2, 0x40, 0xf1, 0x59, + 0x82, 0x59, 0x2c, 0xc5, 0x14, 0x4e, 0xa0, 0x99, 0xd6, 0x9a, 0x6d, 0xa3, + 0xdd, 0xd5, 0x31, 0xf4, 0x98, 0x44, 0xd0, 0xc7, +}; +static const unsigned char kat2099_nonce[] = { + 0xbf, 0x39, 0xee, 0xa3, 0x14, 0x93, 0xf3, 0x56, 0x55, 0xa7, 0xb4, 0x75, + 0xe7, 0x5f, 0x4a, 0xb8, +}; +static const unsigned char kat2099_persstr[] = { + 0x76, 0xc6, 0x0c, 0x2f, 0x17, 0x1d, 0x5d, 0x35, 0x67, 0xdc, 0xf4, 0x39, + 0x77, 0x8c, 0xe3, 0xaa, 0x92, 0x0c, 0x04, 0x46, 0x23, 0x70, 0xda, 0xb2, + 0x7e, 0xd1, 0x17, 0x5b, 0x17, 0xdc, 0x3b, 0x1c, +}; +static const unsigned char kat2099_entropyinreseed[] = { + 0x9b, 0x04, 0xf2, 0xa8, 0xcd, 0x91, 0xf0, 0x45, 0x34, 0x44, 0x04, 0xc1, + 0x38, 0x9b, 0x73, 0xc1, 0x72, 0x84, 0xfb, 0x80, 0xe3, 0xd2, 0x32, 0x80, + 0xb4, 0x07, 0xa3, 0x3b, 0xef, 0x91, 0xa8, 0xaf, +}; +static const unsigned char kat2099_addinreseed[] = { + 0x6a, 0xfd, 0x74, 0xbb, 0xaa, 0x06, 0x20, 0x63, 0x8d, 0x49, 0xb6, 0x86, + 0x31, 0xdb, 0x75, 0x1e, 0x61, 0x20, 0xb1, 0x17, 0x1e, 0xdf, 0x8a, 0x4b, + 0xb3, 0x29, 0xde, 0xcd, 0xca, 0x35, 0x05, 0xb0, +}; +static const unsigned char kat2099_addin0[] = { + 0x01, 0x05, 0x9b, 0x5e, 0xf0, 0xfa, 0xa0, 0x1d, 0x1e, 0x7a, 0x8d, 0x04, + 0xa2, 0x02, 0x8f, 0xe0, 0xb9, 0x30, 0x7b, 0xb1, 0xdc, 0x19, 0xff, 0x05, + 0x49, 0xa1, 0xac, 0xaa, 0x69, 0xd4, 0x98, 0x97, +}; +static const unsigned char kat2099_addin1[] = { + 0x06, 0xe8, 0x6c, 0x7f, 0x79, 0xa2, 0xcb, 0x16, 0xe6, 0x36, 0xcf, 0x4d, + 0x77, 0x8c, 0x10, 0xf6, 0x1f, 0x9e, 0xd7, 0xe2, 0x4c, 0xd7, 0xfe, 0x92, + 0x13, 0x44, 0x7f, 0x01, 0x90, 0xc3, 0x08, 0x0e, +}; +static const unsigned char kat2099_retbits[] = { + 0x9a, 0xbd, 0xc0, 0x6e, 0x5a, 0x7a, 0xbf, 0xb7, 0x45, 0x1c, 0xc2, 0x6a, + 0xe4, 0x7d, 0xf1, 0x4d, 0x33, 0xde, 0xc8, 0xf7, 0x92, 0x3a, 0x9d, 0x35, + 0x73, 0xe5, 0xd3, 0xfc, 0x1f, 0x35, 0x4b, 0x48, 0x0d, 0x83, 0x83, 0xdb, + 0xe2, 0xe9, 0xb7, 0xb7, 0x34, 0x60, 0x38, 0xb9, 0xa5, 0xbd, 0x33, 0x07, + 0xf8, 0xb5, 0x6d, 0x9d, 0xd6, 0x19, 0x7b, 0x92, 0xc8, 0x0e, 0x11, 0xe3, + 0xc1, 0x6b, 0x4a, 0x84, +}; +static const struct drbg_kat_pr_false kat2099_t = { + 13, kat2099_entropyin, kat2099_nonce, kat2099_persstr, + kat2099_entropyinreseed, kat2099_addinreseed, kat2099_addin0, + kat2099_addin1, kat2099_retbits +}; +static const struct drbg_kat kat2099 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2099_t +}; + +static const unsigned char kat2100_entropyin[] = { + 0x4c, 0x4e, 0xbf, 0x43, 0xe2, 0x1c, 0x24, 0x29, 0x94, 0x75, 0x81, 0x8a, + 0xbc, 0x84, 0xfd, 0xd5, 0x34, 0xeb, 0xd9, 0xe6, 0x5b, 0x61, 0x08, 0x42, + 0x8d, 0xb8, 0xf9, 0xa5, 0x49, 0xd5, 0x0d, 0x9d, +}; +static const unsigned char kat2100_nonce[] = { + 0x50, 0xfa, 0x19, 0x03, 0x94, 0x29, 0xd9, 0x57, 0xd3, 0x47, 0x42, 0x36, + 0x6c, 0x8a, 0x07, 0xfe, +}; +static const unsigned char kat2100_persstr[] = { + 0x6d, 0xe8, 0x3c, 0x16, 0xf9, 0x10, 0x70, 0xe6, 0xe3, 0x01, 0xda, 0x2e, + 0x18, 0xd5, 0x5b, 0xa2, 0xad, 0x77, 0xec, 0x05, 0x4b, 0x27, 0x06, 0xfc, + 0xea, 0x03, 0x2c, 0xf4, 0x9b, 0x0d, 0xa9, 0xe5, +}; +static const unsigned char kat2100_entropyinreseed[] = { + 0x3e, 0x42, 0x75, 0x2a, 0x39, 0xd1, 0x55, 0x18, 0x64, 0xf0, 0x18, 0x7f, + 0x35, 0xe3, 0x03, 0x30, 0x18, 0x49, 0x89, 0x84, 0xe4, 0x96, 0xf8, 0xe4, + 0xff, 0xa9, 0x1b, 0xde, 0x1c, 0x35, 0x5e, 0x81, +}; +static const unsigned char kat2100_addinreseed[] = { + 0x9a, 0x11, 0x10, 0x9a, 0x33, 0x27, 0xb3, 0xeb, 0x22, 0xc2, 0x0c, 0x74, + 0xca, 0xd7, 0x46, 0x47, 0xbe, 0xd3, 0xd0, 0x22, 0x0f, 0xab, 0x4f, 0x6f, + 0x2c, 0x13, 0xc9, 0xac, 0x37, 0x8a, 0xbd, 0xdf, +}; +static const unsigned char kat2100_addin0[] = { + 0x30, 0x8e, 0xa9, 0xfd, 0x62, 0x9b, 0x01, 0x94, 0xaf, 0xf1, 0x55, 0xea, + 0x40, 0x6d, 0x68, 0x04, 0x7e, 0x7d, 0xa4, 0x00, 0x55, 0x92, 0x85, 0x7c, + 0xb8, 0xad, 0xe4, 0x04, 0x47, 0x80, 0x71, 0xa3, +}; +static const unsigned char kat2100_addin1[] = { + 0x89, 0x1a, 0x8b, 0x0a, 0xbf, 0x78, 0xeb, 0x7e, 0xae, 0x64, 0x69, 0x0e, + 0x48, 0x85, 0x7c, 0xde, 0x9d, 0xa4, 0xaf, 0x41, 0x5d, 0xff, 0x59, 0xfd, + 0xed, 0x63, 0x05, 0xc5, 0x7e, 0xf3, 0xd8, 0x33, +}; +static const unsigned char kat2100_retbits[] = { + 0x85, 0x97, 0xc5, 0xc2, 0xe5, 0xd6, 0x3d, 0xba, 0xed, 0x95, 0xac, 0xef, + 0x7b, 0xb4, 0x15, 0x36, 0xfc, 0x36, 0x2b, 0x0f, 0xbd, 0x18, 0x78, 0x0f, + 0xdf, 0xb6, 0xf1, 0x25, 0xa9, 0x7d, 0xb0, 0xa0, 0xed, 0x94, 0xa8, 0x93, + 0x43, 0x17, 0xd8, 0x0c, 0x93, 0xb1, 0x4c, 0xb3, 0x60, 0x1f, 0x45, 0x11, + 0xa2, 0xd8, 0xdb, 0xdc, 0xbb, 0x32, 0x4f, 0x9e, 0x90, 0x75, 0x97, 0x8d, + 0x5c, 0x9a, 0x4f, 0x21, +}; +static const struct drbg_kat_pr_false kat2100_t = { + 14, kat2100_entropyin, kat2100_nonce, kat2100_persstr, + kat2100_entropyinreseed, kat2100_addinreseed, kat2100_addin0, + kat2100_addin1, kat2100_retbits +}; +static const struct drbg_kat kat2100 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2100_t +}; + +static const unsigned char kat2101_entropyin[] = { + 0xd5, 0x55, 0x91, 0x02, 0xcf, 0x8f, 0x23, 0x4a, 0x89, 0xb6, 0xc4, 0x8c, + 0xbf, 0x47, 0x3b, 0x15, 0x72, 0xa7, 0xd0, 0xc3, 0x42, 0xd7, 0xb6, 0x1a, + 0xdd, 0xe3, 0xd6, 0xa0, 0x12, 0x4d, 0x39, 0x91, +}; +static const unsigned char kat2101_nonce[] = { + 0x5b, 0xe9, 0x48, 0xd0, 0x54, 0xbb, 0x66, 0xe1, 0x76, 0xb9, 0x3f, 0xa8, + 0x48, 0xda, 0x0f, 0x51, +}; +static const unsigned char kat2101_persstr[] = {0}; +static const unsigned char kat2101_entropyinreseed[] = { + 0x8b, 0xd5, 0x44, 0xef, 0x23, 0x9b, 0xe9, 0x8f, 0xf3, 0x15, 0x26, 0x1a, + 0xd3, 0xa3, 0xe2, 0x3a, 0x84, 0x00, 0xf1, 0xeb, 0xdc, 0xca, 0x65, 0xe0, + 0xf4, 0x6c, 0x7c, 0x66, 0x1f, 0xc4, 0x21, 0xa6, +}; +static const unsigned char kat2101_addinreseed[] = {0}; +static const unsigned char kat2101_addin0[] = {0}; +static const unsigned char kat2101_addin1[] = {0}; +static const unsigned char kat2101_retbits[] = { + 0xe1, 0xbd, 0xd0, 0xbd, 0xb4, 0xd5, 0x1b, 0x01, 0x0b, 0x11, 0x1e, 0x90, + 0x88, 0xdf, 0x56, 0x2d, 0x21, 0x6c, 0xa7, 0x37, 0x14, 0x09, 0xd7, 0x29, + 0xf9, 0x52, 0x50, 0xe8, 0x10, 0x0f, 0x97, 0x53, 0xa6, 0x00, 0x99, 0xa4, + 0x94, 0x08, 0xbb, 0x00, 0x65, 0xf9, 0x9d, 0x59, 0xdc, 0xe5, 0x08, 0x1b, + 0xd6, 0x7c, 0xeb, 0xd5, 0x4c, 0x2b, 0x21, 0xfb, 0xf3, 0x51, 0x84, 0xf2, + 0x6d, 0x1c, 0x47, 0x06, +}; +static const struct drbg_kat_pr_false kat2101_t = { + 0, kat2101_entropyin, kat2101_nonce, kat2101_persstr, + kat2101_entropyinreseed, kat2101_addinreseed, kat2101_addin0, + kat2101_addin1, kat2101_retbits +}; +static const struct drbg_kat kat2101 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2101_t +}; + +static const unsigned char kat2102_entropyin[] = { + 0x6b, 0x9d, 0xad, 0xcd, 0x05, 0xb1, 0xf2, 0xb4, 0x49, 0x33, 0x55, 0xec, + 0x62, 0x1b, 0xdb, 0xb0, 0xeb, 0xb6, 0x79, 0x52, 0x33, 0x7f, 0x3d, 0x37, + 0x23, 0x96, 0x31, 0x97, 0x77, 0x47, 0x7a, 0x70, +}; +static const unsigned char kat2102_nonce[] = { + 0x34, 0xe6, 0x2e, 0x1c, 0x2e, 0x74, 0x1b, 0x4f, 0xd7, 0x4b, 0x79, 0x9c, + 0x3f, 0x6f, 0xd9, 0xc1, +}; +static const unsigned char kat2102_persstr[] = {0}; +static const unsigned char kat2102_entropyinreseed[] = { + 0x24, 0xa9, 0xfc, 0x63, 0x93, 0xc8, 0xc3, 0xaf, 0x6b, 0xa2, 0xec, 0xe5, + 0x11, 0x87, 0xd7, 0x29, 0x80, 0xf4, 0x0a, 0xd6, 0x01, 0xf0, 0x39, 0x54, + 0x35, 0xc5, 0x4e, 0xda, 0xc6, 0x42, 0x68, 0x1f, +}; +static const unsigned char kat2102_addinreseed[] = {0}; +static const unsigned char kat2102_addin0[] = {0}; +static const unsigned char kat2102_addin1[] = {0}; +static const unsigned char kat2102_retbits[] = { + 0xd2, 0xba, 0xa4, 0x59, 0x67, 0x61, 0x7b, 0x7d, 0x9a, 0x50, 0x56, 0xfa, + 0x8b, 0x84, 0x3d, 0x9f, 0x5c, 0x72, 0xb7, 0x7e, 0xd9, 0x51, 0xa1, 0xa4, + 0xe4, 0x3f, 0x2e, 0x88, 0xa6, 0x32, 0x32, 0xbc, 0xf1, 0xcf, 0xb2, 0x27, + 0x18, 0x86, 0x8a, 0x6d, 0x14, 0x2a, 0xf2, 0x0d, 0x23, 0x4a, 0x0b, 0x4a, + 0x29, 0xf5, 0xf1, 0x52, 0xd7, 0x2a, 0xe6, 0x0b, 0x9e, 0xb8, 0x68, 0x95, + 0x3c, 0x0d, 0x46, 0xad, +}; +static const struct drbg_kat_pr_false kat2102_t = { + 1, kat2102_entropyin, kat2102_nonce, kat2102_persstr, + kat2102_entropyinreseed, kat2102_addinreseed, kat2102_addin0, + kat2102_addin1, kat2102_retbits +}; +static const struct drbg_kat kat2102 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2102_t +}; + +static const unsigned char kat2103_entropyin[] = { + 0x55, 0xc4, 0x65, 0xf2, 0x79, 0x86, 0x0a, 0xe0, 0xa3, 0x0b, 0x37, 0x4e, + 0x54, 0x20, 0xb5, 0x8f, 0x5c, 0x2f, 0xbb, 0x55, 0x79, 0x28, 0x15, 0x5b, + 0xc0, 0x49, 0x40, 0x4c, 0x71, 0x7d, 0x01, 0x48, +}; +static const unsigned char kat2103_nonce[] = { + 0xd4, 0x13, 0x7d, 0x0c, 0x64, 0xfd, 0x93, 0x20, 0x57, 0xc9, 0x9e, 0x9c, + 0x48, 0x8b, 0xc9, 0xe9, +}; +static const unsigned char kat2103_persstr[] = {0}; +static const unsigned char kat2103_entropyinreseed[] = { + 0xd0, 0x97, 0x64, 0x62, 0x80, 0x26, 0x28, 0xc6, 0xed, 0x63, 0x20, 0xf6, + 0xd8, 0x85, 0x21, 0x22, 0x8c, 0xc6, 0x2e, 0xaf, 0xd4, 0xa8, 0xe1, 0x49, + 0x84, 0xaa, 0xcd, 0x0a, 0x30, 0xb2, 0x1b, 0x1c, +}; +static const unsigned char kat2103_addinreseed[] = {0}; +static const unsigned char kat2103_addin0[] = {0}; +static const unsigned char kat2103_addin1[] = {0}; +static const unsigned char kat2103_retbits[] = { + 0xc1, 0x40, 0x68, 0x12, 0x25, 0x2b, 0x57, 0xe7, 0x93, 0xce, 0x57, 0x13, + 0x2f, 0x0b, 0xf4, 0xb7, 0xe7, 0x86, 0xa2, 0xb9, 0x6b, 0xa2, 0x84, 0xd7, + 0x69, 0x17, 0x28, 0x8f, 0x0c, 0x79, 0xb5, 0xf5, 0x2c, 0x59, 0x1b, 0xef, + 0x9b, 0x12, 0x31, 0xf9, 0x82, 0xe1, 0x42, 0xaa, 0xe6, 0xe0, 0xcf, 0x63, + 0xbf, 0xf0, 0xe5, 0x4a, 0x1c, 0x89, 0x34, 0x5f, 0x59, 0x1f, 0xe5, 0x6d, + 0x5a, 0x79, 0x5f, 0x95, +}; +static const struct drbg_kat_pr_false kat2103_t = { + 2, kat2103_entropyin, kat2103_nonce, kat2103_persstr, + kat2103_entropyinreseed, kat2103_addinreseed, kat2103_addin0, + kat2103_addin1, kat2103_retbits +}; +static const struct drbg_kat kat2103 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2103_t +}; + +static const unsigned char kat2104_entropyin[] = { + 0x40, 0x71, 0x95, 0x2b, 0x5c, 0x08, 0xad, 0xa3, 0x47, 0xc7, 0xad, 0x5e, + 0xca, 0x73, 0x10, 0x96, 0x3d, 0x08, 0x86, 0xc4, 0xf3, 0x07, 0x67, 0x69, + 0xc5, 0xce, 0xb7, 0x32, 0x98, 0x58, 0x61, 0xc6, +}; +static const unsigned char kat2104_nonce[] = { + 0xcc, 0x2d, 0xd3, 0x39, 0x35, 0x09, 0xb4, 0xbb, 0x25, 0x42, 0xd2, 0xb6, + 0x96, 0x10, 0xd4, 0x9e, +}; +static const unsigned char kat2104_persstr[] = {0}; +static const unsigned char kat2104_entropyinreseed[] = { + 0xbf, 0x9c, 0x1a, 0x5b, 0x5d, 0x9b, 0x7c, 0xe8, 0xf9, 0xe5, 0x0c, 0x62, + 0xda, 0xef, 0xef, 0x19, 0x04, 0x19, 0x05, 0x52, 0xae, 0x4a, 0xbc, 0x22, + 0x2f, 0x8d, 0xe8, 0x65, 0xd3, 0xe3, 0xee, 0x0d, +}; +static const unsigned char kat2104_addinreseed[] = {0}; +static const unsigned char kat2104_addin0[] = {0}; +static const unsigned char kat2104_addin1[] = {0}; +static const unsigned char kat2104_retbits[] = { + 0x24, 0xfb, 0x48, 0x3f, 0xb7, 0xc9, 0xff, 0x58, 0xe2, 0xdc, 0x90, 0x0d, + 0x63, 0x34, 0xd3, 0xa3, 0xb6, 0x2d, 0x26, 0xea, 0x74, 0xe6, 0x06, 0xb6, + 0xdc, 0x7a, 0x9b, 0x1e, 0xb5, 0x07, 0x9f, 0xfa, 0x02, 0x00, 0xd4, 0xf9, + 0x47, 0x95, 0xe1, 0xb2, 0xae, 0xb5, 0x8a, 0x48, 0x11, 0x48, 0xf2, 0x48, + 0x32, 0xa8, 0x29, 0x92, 0x16, 0xea, 0x9c, 0x17, 0x24, 0x27, 0x4e, 0xcf, + 0xe2, 0xed, 0x8d, 0x2f, +}; +static const struct drbg_kat_pr_false kat2104_t = { + 3, kat2104_entropyin, kat2104_nonce, kat2104_persstr, + kat2104_entropyinreseed, kat2104_addinreseed, kat2104_addin0, + kat2104_addin1, kat2104_retbits +}; +static const struct drbg_kat kat2104 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2104_t +}; + +static const unsigned char kat2105_entropyin[] = { + 0x8b, 0x1d, 0xbf, 0x30, 0x9e, 0x22, 0xd7, 0xa7, 0x92, 0xfa, 0x89, 0x8b, + 0x23, 0xdb, 0x77, 0xc0, 0x73, 0x38, 0xc5, 0xb5, 0xa9, 0x0b, 0x89, 0xde, + 0x54, 0x14, 0xb3, 0xd8, 0x5b, 0xac, 0x85, 0x81, +}; +static const unsigned char kat2105_nonce[] = { + 0xdf, 0x1c, 0xc9, 0xe0, 0x0d, 0xae, 0x20, 0x2a, 0xf1, 0x31, 0xe8, 0x10, + 0x10, 0x44, 0x32, 0x73, +}; +static const unsigned char kat2105_persstr[] = {0}; +static const unsigned char kat2105_entropyinreseed[] = { + 0xfa, 0x1f, 0xc8, 0xff, 0x6a, 0xec, 0xf7, 0xca, 0x00, 0xf3, 0x18, 0x0e, + 0x94, 0xfc, 0xcb, 0xb0, 0x55, 0xe3, 0xa2, 0xaf, 0x28, 0xc2, 0x7f, 0x66, + 0xea, 0xab, 0xb8, 0x13, 0x51, 0x43, 0x0b, 0x08, +}; +static const unsigned char kat2105_addinreseed[] = {0}; +static const unsigned char kat2105_addin0[] = {0}; +static const unsigned char kat2105_addin1[] = {0}; +static const unsigned char kat2105_retbits[] = { + 0x5d, 0x34, 0x78, 0x50, 0x40, 0xd4, 0xfd, 0xeb, 0x85, 0x8a, 0xb1, 0xca, + 0x7c, 0x4b, 0xff, 0x23, 0x60, 0x1f, 0xdf, 0xd9, 0x1f, 0xe0, 0x03, 0xe5, + 0x79, 0xe1, 0x14, 0xa2, 0xe2, 0xa8, 0xf2, 0x90, 0xe6, 0xc4, 0x2b, 0x20, + 0xc8, 0x23, 0x22, 0xdc, 0xa0, 0xf4, 0xc9, 0xab, 0xb6, 0x34, 0x95, 0x4d, + 0x59, 0x6d, 0x1d, 0x1b, 0xd1, 0x19, 0x37, 0x34, 0x19, 0x83, 0x52, 0x15, + 0x2e, 0x4e, 0xb8, 0x17, +}; +static const struct drbg_kat_pr_false kat2105_t = { + 4, kat2105_entropyin, kat2105_nonce, kat2105_persstr, + kat2105_entropyinreseed, kat2105_addinreseed, kat2105_addin0, + kat2105_addin1, kat2105_retbits +}; +static const struct drbg_kat kat2105 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2105_t +}; + +static const unsigned char kat2106_entropyin[] = { + 0xa9, 0x46, 0xbe, 0xb3, 0x8c, 0x95, 0xb6, 0x3b, 0xb7, 0x11, 0xf0, 0x43, + 0xb0, 0x49, 0xed, 0x94, 0xcb, 0x7d, 0x1e, 0x08, 0x01, 0x85, 0x44, 0xa8, + 0xfa, 0xfd, 0x27, 0x53, 0x13, 0x87, 0x2a, 0x75, +}; +static const unsigned char kat2106_nonce[] = { + 0xc8, 0x58, 0x20, 0x6d, 0xca, 0x84, 0x3b, 0x65, 0xad, 0x9e, 0x50, 0xa6, + 0x3e, 0xbc, 0x32, 0xbd, +}; +static const unsigned char kat2106_persstr[] = {0}; +static const unsigned char kat2106_entropyinreseed[] = { + 0x2d, 0x0f, 0xc4, 0x58, 0x35, 0x42, 0xc4, 0xe9, 0x23, 0x14, 0x82, 0xf6, + 0x6a, 0x52, 0x28, 0x46, 0xbc, 0xdc, 0xb2, 0x81, 0xd1, 0x6e, 0xb0, 0x79, + 0x50, 0xa8, 0xa8, 0x59, 0x5b, 0x20, 0x0b, 0x9f, +}; +static const unsigned char kat2106_addinreseed[] = {0}; +static const unsigned char kat2106_addin0[] = {0}; +static const unsigned char kat2106_addin1[] = {0}; +static const unsigned char kat2106_retbits[] = { + 0x2b, 0xbe, 0xa1, 0x6d, 0x11, 0x0e, 0x85, 0x35, 0xfb, 0xa8, 0x9f, 0x4a, + 0x9c, 0xec, 0x48, 0x2c, 0x87, 0xd9, 0x99, 0x98, 0x2f, 0x6b, 0x05, 0xc1, + 0x5c, 0x4f, 0x4b, 0xcb, 0x74, 0x0d, 0x1d, 0x43, 0xb9, 0x0f, 0xb7, 0x62, + 0xaa, 0x8b, 0x50, 0x6a, 0xfa, 0x6d, 0x4c, 0x8b, 0x96, 0x76, 0xe3, 0xbc, + 0xee, 0xb6, 0x3d, 0xb9, 0x22, 0x45, 0x22, 0x7c, 0x73, 0x66, 0xaa, 0x96, + 0x97, 0x0c, 0xe8, 0xee, +}; +static const struct drbg_kat_pr_false kat2106_t = { + 5, kat2106_entropyin, kat2106_nonce, kat2106_persstr, + kat2106_entropyinreseed, kat2106_addinreseed, kat2106_addin0, + kat2106_addin1, kat2106_retbits +}; +static const struct drbg_kat kat2106 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2106_t +}; + +static const unsigned char kat2107_entropyin[] = { + 0xa7, 0xfd, 0xa1, 0x96, 0xa7, 0x0f, 0x5b, 0xce, 0x96, 0x15, 0x4f, 0x88, + 0xd7, 0xa5, 0x13, 0x7b, 0x17, 0x83, 0x3a, 0x43, 0x5f, 0x04, 0x2a, 0x16, + 0x6d, 0x55, 0x50, 0x4e, 0xc5, 0x98, 0xb2, 0xa5, +}; +static const unsigned char kat2107_nonce[] = { + 0xff, 0x4e, 0x6e, 0x41, 0xb0, 0x72, 0x0a, 0xa7, 0x2c, 0x34, 0x93, 0xb3, + 0xf2, 0x07, 0xc2, 0x58, +}; +static const unsigned char kat2107_persstr[] = {0}; +static const unsigned char kat2107_entropyinreseed[] = { + 0xea, 0x04, 0xe6, 0x0f, 0xc4, 0xff, 0x30, 0x9d, 0x05, 0x34, 0xb7, 0xff, + 0xb5, 0xb1, 0xa0, 0x54, 0x99, 0x32, 0x6b, 0xaf, 0x5e, 0x0d, 0x57, 0xfc, + 0xeb, 0xd3, 0x2b, 0xe6, 0xee, 0x50, 0x8c, 0xcc, +}; +static const unsigned char kat2107_addinreseed[] = {0}; +static const unsigned char kat2107_addin0[] = {0}; +static const unsigned char kat2107_addin1[] = {0}; +static const unsigned char kat2107_retbits[] = { + 0xb6, 0x24, 0xe0, 0x59, 0x49, 0x36, 0xec, 0xc5, 0x76, 0xae, 0xd1, 0x06, + 0xfa, 0xcf, 0x68, 0x40, 0x12, 0x58, 0x0b, 0x5c, 0xd7, 0x50, 0x2c, 0x16, + 0x25, 0xad, 0x6e, 0x03, 0x23, 0xf6, 0x4e, 0xff, 0x8b, 0x91, 0x76, 0xce, + 0xbd, 0xd1, 0xf6, 0xab, 0x7f, 0x39, 0x9a, 0x4b, 0x71, 0xb8, 0xa9, 0x10, + 0xf9, 0x12, 0xe1, 0x2e, 0x71, 0x45, 0xbb, 0xb0, 0xbb, 0x47, 0x94, 0x10, + 0x66, 0xcc, 0x7a, 0xd5, +}; +static const struct drbg_kat_pr_false kat2107_t = { + 6, kat2107_entropyin, kat2107_nonce, kat2107_persstr, + kat2107_entropyinreseed, kat2107_addinreseed, kat2107_addin0, + kat2107_addin1, kat2107_retbits +}; +static const struct drbg_kat kat2107 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2107_t +}; + +static const unsigned char kat2108_entropyin[] = { + 0x59, 0x70, 0x11, 0x52, 0x79, 0x8c, 0x85, 0xd2, 0x0e, 0xda, 0x96, 0x3c, + 0x03, 0x2b, 0x3d, 0x9e, 0xfe, 0xf8, 0xd7, 0xc7, 0x14, 0x20, 0x3a, 0xd4, + 0x4a, 0x39, 0x71, 0xe3, 0xa6, 0xef, 0xdd, 0xd2, +}; +static const unsigned char kat2108_nonce[] = { + 0x37, 0x96, 0x3c, 0xf4, 0x4d, 0xfe, 0x03, 0x87, 0x74, 0x7e, 0x23, 0xfd, + 0x2c, 0xd1, 0x25, 0x6e, +}; +static const unsigned char kat2108_persstr[] = {0}; +static const unsigned char kat2108_entropyinreseed[] = { + 0x9c, 0x61, 0xd2, 0x94, 0x62, 0x02, 0xc4, 0x0e, 0x78, 0x37, 0x0c, 0x46, + 0xc3, 0xdb, 0xb4, 0xec, 0xe2, 0x93, 0x09, 0x9d, 0x88, 0x08, 0x97, 0x88, + 0x59, 0x2c, 0xca, 0x1b, 0x4c, 0x49, 0xf7, 0x9c, +}; +static const unsigned char kat2108_addinreseed[] = {0}; +static const unsigned char kat2108_addin0[] = {0}; +static const unsigned char kat2108_addin1[] = {0}; +static const unsigned char kat2108_retbits[] = { + 0x14, 0xc1, 0x42, 0x60, 0x5f, 0x72, 0x5b, 0xb5, 0x94, 0xf2, 0x00, 0xfb, + 0xc7, 0x09, 0xaf, 0x89, 0x2f, 0x0a, 0x32, 0x4d, 0x41, 0x81, 0x1f, 0xca, + 0x6b, 0x81, 0xec, 0x71, 0xc6, 0xa2, 0xff, 0x1e, 0xe4, 0x23, 0xde, 0x7e, + 0x14, 0x21, 0x33, 0x77, 0x60, 0x84, 0x7e, 0x86, 0x26, 0x70, 0x63, 0x75, + 0x46, 0xcf, 0x17, 0x07, 0x35, 0x41, 0x2f, 0xa2, 0x62, 0x07, 0x52, 0x19, + 0xe1, 0x02, 0xc2, 0x40, +}; +static const struct drbg_kat_pr_false kat2108_t = { + 7, kat2108_entropyin, kat2108_nonce, kat2108_persstr, + kat2108_entropyinreseed, kat2108_addinreseed, kat2108_addin0, + kat2108_addin1, kat2108_retbits +}; +static const struct drbg_kat kat2108 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2108_t +}; + +static const unsigned char kat2109_entropyin[] = { + 0x9e, 0x4a, 0x31, 0x24, 0xf5, 0xc5, 0x6e, 0x83, 0x69, 0xd5, 0x1f, 0xa4, + 0x2b, 0xf6, 0x62, 0x55, 0x13, 0x0a, 0x3a, 0x30, 0x05, 0x34, 0x27, 0xe0, + 0xbb, 0x5d, 0x03, 0x66, 0xf1, 0x8b, 0xdf, 0x47, +}; +static const unsigned char kat2109_nonce[] = { + 0x55, 0xdd, 0xd1, 0x82, 0xb9, 0x56, 0xaa, 0xce, 0xaf, 0x92, 0xed, 0x50, + 0xc7, 0xea, 0x77, 0x81, +}; +static const unsigned char kat2109_persstr[] = {0}; +static const unsigned char kat2109_entropyinreseed[] = { + 0x55, 0x8f, 0x4e, 0xcf, 0x21, 0x68, 0x78, 0x59, 0x93, 0x5f, 0x9a, 0x25, + 0xc2, 0xac, 0xdf, 0xc0, 0x09, 0x9c, 0x69, 0x3a, 0x86, 0xf1, 0xce, 0xfe, + 0x62, 0xef, 0x3b, 0x97, 0x33, 0x4a, 0x3f, 0xdd, +}; +static const unsigned char kat2109_addinreseed[] = {0}; +static const unsigned char kat2109_addin0[] = {0}; +static const unsigned char kat2109_addin1[] = {0}; +static const unsigned char kat2109_retbits[] = { + 0x02, 0xa7, 0xbf, 0xda, 0x63, 0x48, 0x49, 0xff, 0x49, 0xce, 0xad, 0xb4, + 0xba, 0x67, 0x94, 0x65, 0xcc, 0x45, 0x7f, 0xf1, 0x07, 0x35, 0xbb, 0xa7, + 0x2b, 0x13, 0x8c, 0x21, 0x27, 0xb5, 0x30, 0x6b, 0x5a, 0xf0, 0x8f, 0xbb, + 0xfa, 0x8f, 0xd4, 0x17, 0xa6, 0x73, 0x39, 0xbc, 0xaf, 0x93, 0xfd, 0xf4, + 0x17, 0xa2, 0x6d, 0xa6, 0xfe, 0x32, 0x95, 0xdd, 0xfa, 0xfd, 0x0c, 0xb8, + 0x1a, 0x8e, 0xff, 0x3a, +}; +static const struct drbg_kat_pr_false kat2109_t = { + 8, kat2109_entropyin, kat2109_nonce, kat2109_persstr, + kat2109_entropyinreseed, kat2109_addinreseed, kat2109_addin0, + kat2109_addin1, kat2109_retbits +}; +static const struct drbg_kat kat2109 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2109_t +}; + +static const unsigned char kat2110_entropyin[] = { + 0x76, 0x2d, 0xaf, 0x87, 0xb7, 0xa2, 0x6d, 0xe0, 0xba, 0xb5, 0xdb, 0xa9, + 0x11, 0x01, 0xf8, 0x98, 0xd1, 0x92, 0x5a, 0x51, 0x7a, 0x52, 0x53, 0x39, + 0x47, 0x5d, 0xfb, 0x43, 0xa0, 0x5a, 0x97, 0x0d, +}; +static const unsigned char kat2110_nonce[] = { + 0xf4, 0xc9, 0x83, 0x08, 0x8d, 0x46, 0xc4, 0x75, 0xd4, 0x94, 0x66, 0xdd, + 0xf3, 0x35, 0x6c, 0xd5, +}; +static const unsigned char kat2110_persstr[] = {0}; +static const unsigned char kat2110_entropyinreseed[] = { + 0xd3, 0x92, 0xd2, 0xbd, 0x13, 0x7a, 0xcd, 0x80, 0x16, 0x94, 0xfc, 0xed, + 0xcf, 0xd7, 0xcb, 0x5c, 0xc8, 0xf5, 0xad, 0xf4, 0xb1, 0xcb, 0xf5, 0xe5, + 0xa4, 0x46, 0xc2, 0x4e, 0x36, 0x92, 0xa2, 0x60, +}; +static const unsigned char kat2110_addinreseed[] = {0}; +static const unsigned char kat2110_addin0[] = {0}; +static const unsigned char kat2110_addin1[] = {0}; +static const unsigned char kat2110_retbits[] = { + 0x2b, 0x38, 0xeb, 0xe7, 0xa4, 0xb0, 0xba, 0x7b, 0xc9, 0x77, 0xd1, 0xe3, + 0x85, 0x26, 0x78, 0xf9, 0xa9, 0xec, 0x78, 0xd9, 0x9e, 0xe5, 0xc2, 0xe2, + 0x41, 0xdf, 0xdc, 0xd3, 0x63, 0xde, 0xe1, 0x58, 0x9f, 0xb6, 0x6d, 0x89, + 0x06, 0xef, 0xf7, 0xb4, 0x92, 0xe2, 0x32, 0x69, 0x31, 0xa6, 0xea, 0x11, + 0x59, 0x66, 0x49, 0x78, 0x12, 0x2b, 0xa6, 0xe2, 0x08, 0xe4, 0x91, 0x66, + 0xf4, 0x81, 0x1f, 0xa0, +}; +static const struct drbg_kat_pr_false kat2110_t = { + 9, kat2110_entropyin, kat2110_nonce, kat2110_persstr, + kat2110_entropyinreseed, kat2110_addinreseed, kat2110_addin0, + kat2110_addin1, kat2110_retbits +}; +static const struct drbg_kat kat2110 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2110_t +}; + +static const unsigned char kat2111_entropyin[] = { + 0x6a, 0xc8, 0xe3, 0x50, 0x40, 0x24, 0xbd, 0x11, 0xae, 0xde, 0xa1, 0xfc, + 0x28, 0x6e, 0xb2, 0xea, 0xd9, 0x71, 0x98, 0x37, 0xb1, 0xfb, 0x95, 0x68, + 0xbc, 0xa0, 0x1c, 0x3e, 0xc9, 0xcc, 0x74, 0xd1, +}; +static const unsigned char kat2111_nonce[] = { + 0x3b, 0x90, 0xc5, 0xc9, 0xdf, 0xf9, 0xb0, 0x52, 0xe4, 0x21, 0x7b, 0x27, + 0x8a, 0xa6, 0x4c, 0x3b, +}; +static const unsigned char kat2111_persstr[] = {0}; +static const unsigned char kat2111_entropyinreseed[] = { + 0xc4, 0xcc, 0xfa, 0xcb, 0xf2, 0x94, 0xb5, 0x6e, 0x41, 0xf6, 0xb5, 0xd6, + 0x91, 0xec, 0x36, 0xd9, 0xb6, 0x9d, 0x70, 0xed, 0x67, 0x82, 0x9a, 0x8d, + 0x28, 0x56, 0xda, 0x85, 0x93, 0xf2, 0xd0, 0x68, +}; +static const unsigned char kat2111_addinreseed[] = {0}; +static const unsigned char kat2111_addin0[] = {0}; +static const unsigned char kat2111_addin1[] = {0}; +static const unsigned char kat2111_retbits[] = { + 0x3b, 0x28, 0x60, 0xce, 0x55, 0xe6, 0x80, 0xfd, 0x96, 0x47, 0x87, 0xe5, + 0xd2, 0xbb, 0xf6, 0xfb, 0xdb, 0x7d, 0x5d, 0x8b, 0xc8, 0xdd, 0xdf, 0x66, + 0x29, 0xc5, 0x88, 0x77, 0x60, 0x04, 0xbe, 0xb9, 0x83, 0x14, 0xd1, 0x50, + 0x1d, 0x0e, 0x23, 0x5b, 0xea, 0xff, 0x94, 0x76, 0x27, 0xdd, 0x69, 0x5d, + 0x77, 0xb1, 0x1b, 0x19, 0xe4, 0xfe, 0xee, 0x86, 0x03, 0x0e, 0x20, 0x47, + 0x9f, 0x32, 0x12, 0xdf, +}; +static const struct drbg_kat_pr_false kat2111_t = { + 10, kat2111_entropyin, kat2111_nonce, kat2111_persstr, + kat2111_entropyinreseed, kat2111_addinreseed, kat2111_addin0, + kat2111_addin1, kat2111_retbits +}; +static const struct drbg_kat kat2111 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2111_t +}; + +static const unsigned char kat2112_entropyin[] = { + 0xa4, 0xf1, 0x1d, 0xae, 0x4a, 0x6d, 0x51, 0x5a, 0x7d, 0xbb, 0xc6, 0x24, + 0xdf, 0xfa, 0x3d, 0xc1, 0x6e, 0xef, 0xbf, 0x3b, 0xe7, 0x20, 0x7d, 0x9c, + 0x1b, 0xfa, 0x23, 0x27, 0xe7, 0x88, 0x98, 0x44, +}; +static const unsigned char kat2112_nonce[] = { + 0x58, 0xa2, 0xe7, 0xa6, 0xf9, 0xcc, 0x54, 0x3d, 0xe0, 0xd7, 0xbb, 0xe8, + 0x23, 0x57, 0xd1, 0x85, +}; +static const unsigned char kat2112_persstr[] = {0}; +static const unsigned char kat2112_entropyinreseed[] = { + 0x52, 0x8c, 0x20, 0x6e, 0xc5, 0x93, 0x45, 0xce, 0x4a, 0x8f, 0xfa, 0x8f, + 0x5c, 0x85, 0xdc, 0xfa, 0x78, 0x47, 0xc1, 0x18, 0x4a, 0x79, 0x84, 0x39, + 0x78, 0x69, 0xa1, 0xbd, 0x4e, 0xf6, 0xc1, 0x46, +}; +static const unsigned char kat2112_addinreseed[] = {0}; +static const unsigned char kat2112_addin0[] = {0}; +static const unsigned char kat2112_addin1[] = {0}; +static const unsigned char kat2112_retbits[] = { + 0x20, 0x97, 0xb5, 0x7c, 0x80, 0x2d, 0x25, 0x85, 0xec, 0x19, 0x20, 0x98, + 0xee, 0xa7, 0xad, 0x73, 0xae, 0x11, 0xdb, 0x7d, 0x28, 0x4f, 0x75, 0xd2, + 0xc3, 0x1f, 0xf4, 0xb6, 0xcd, 0xbd, 0x3f, 0x42, 0xe2, 0x52, 0x5a, 0x65, + 0x18, 0x38, 0x3d, 0x8d, 0x89, 0x2a, 0x57, 0x8a, 0xf9, 0x48, 0x42, 0x5e, + 0x1e, 0x60, 0x80, 0x3a, 0xfd, 0x88, 0x35, 0xc6, 0xf7, 0x3b, 0x58, 0x7a, + 0xa7, 0x8a, 0xc0, 0x3b, +}; +static const struct drbg_kat_pr_false kat2112_t = { + 11, kat2112_entropyin, kat2112_nonce, kat2112_persstr, + kat2112_entropyinreseed, kat2112_addinreseed, kat2112_addin0, + kat2112_addin1, kat2112_retbits +}; +static const struct drbg_kat kat2112 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2112_t +}; + +static const unsigned char kat2113_entropyin[] = { + 0xdb, 0x54, 0x4f, 0x76, 0x78, 0xe8, 0xe2, 0xf6, 0xc8, 0x45, 0xe4, 0x24, + 0x41, 0x46, 0x84, 0xd3, 0xcb, 0x6f, 0x2f, 0x67, 0x05, 0x0d, 0xf5, 0xaf, + 0x3c, 0xa5, 0xe4, 0x1d, 0x5d, 0x83, 0x4b, 0x42, +}; +static const unsigned char kat2113_nonce[] = { + 0xc9, 0x6c, 0x73, 0x57, 0x05, 0xbe, 0xc1, 0x3e, 0xc9, 0x34, 0x8e, 0x8f, + 0x5d, 0xb4, 0x55, 0x5d, +}; +static const unsigned char kat2113_persstr[] = {0}; +static const unsigned char kat2113_entropyinreseed[] = { + 0x83, 0x74, 0x98, 0x4b, 0x53, 0x92, 0x63, 0xfa, 0xf1, 0x21, 0x45, 0x91, + 0x09, 0xe0, 0xf5, 0x3a, 0x03, 0x03, 0xfa, 0x0f, 0x82, 0x0b, 0x9b, 0xea, + 0x4e, 0x35, 0xc5, 0x64, 0x4a, 0x42, 0xbd, 0xd2, +}; +static const unsigned char kat2113_addinreseed[] = {0}; +static const unsigned char kat2113_addin0[] = {0}; +static const unsigned char kat2113_addin1[] = {0}; +static const unsigned char kat2113_retbits[] = { + 0xd6, 0xb5, 0x43, 0xa9, 0x5c, 0x18, 0x4b, 0x96, 0x58, 0x3e, 0x9e, 0x5d, + 0x47, 0x7e, 0xd1, 0x9e, 0x2d, 0xcd, 0xb8, 0x4d, 0xba, 0x69, 0x21, 0x58, + 0x7f, 0xb1, 0x4b, 0xc6, 0xdc, 0x1d, 0xa5, 0xa7, 0xbf, 0x9f, 0x2a, 0xa4, + 0x14, 0x5d, 0x3d, 0x4f, 0x77, 0x3f, 0x53, 0x93, 0xec, 0x8b, 0x76, 0xc3, + 0x07, 0xf3, 0xf7, 0x2f, 0xf1, 0xb5, 0xe0, 0xb0, 0x3b, 0x32, 0x2d, 0xda, + 0x40, 0x9a, 0x88, 0xb4, +}; +static const struct drbg_kat_pr_false kat2113_t = { + 12, kat2113_entropyin, kat2113_nonce, kat2113_persstr, + kat2113_entropyinreseed, kat2113_addinreseed, kat2113_addin0, + kat2113_addin1, kat2113_retbits +}; +static const struct drbg_kat kat2113 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2113_t +}; + +static const unsigned char kat2114_entropyin[] = { + 0x86, 0x81, 0x54, 0x77, 0x45, 0xec, 0x3c, 0x9b, 0xdc, 0xe9, 0x75, 0x28, + 0x79, 0x8f, 0xf3, 0x5e, 0x25, 0x9f, 0x0e, 0x64, 0x9b, 0x52, 0x5f, 0x49, + 0x2d, 0xae, 0xf3, 0xa5, 0x96, 0xfc, 0xa9, 0xeb, +}; +static const unsigned char kat2114_nonce[] = { + 0x92, 0x7d, 0x4b, 0x92, 0xa9, 0xfd, 0x2d, 0x8a, 0x78, 0xa0, 0x5f, 0x73, + 0xc9, 0x04, 0xa7, 0xc8, +}; +static const unsigned char kat2114_persstr[] = {0}; +static const unsigned char kat2114_entropyinreseed[] = { + 0x8e, 0xe9, 0xe5, 0x76, 0x63, 0x2b, 0x2f, 0x5a, 0x54, 0x9e, 0x3d, 0xd0, + 0xd9, 0x9d, 0x0b, 0x26, 0x7e, 0x07, 0x93, 0x6e, 0x97, 0x22, 0x3a, 0x49, + 0xed, 0xf3, 0x86, 0xba, 0xc7, 0xfd, 0xcd, 0xc4, +}; +static const unsigned char kat2114_addinreseed[] = {0}; +static const unsigned char kat2114_addin0[] = {0}; +static const unsigned char kat2114_addin1[] = {0}; +static const unsigned char kat2114_retbits[] = { + 0xd1, 0x61, 0x6f, 0x14, 0x5a, 0x4e, 0xfd, 0x1c, 0xdc, 0x6e, 0x68, 0x82, + 0x66, 0xd2, 0x0d, 0xa1, 0x16, 0xad, 0x90, 0x44, 0xce, 0x4e, 0x4e, 0x42, + 0xd7, 0xe6, 0xe7, 0x8b, 0x65, 0xbb, 0x4f, 0xf1, 0x5c, 0x89, 0x36, 0xdf, + 0x9f, 0x2a, 0xc6, 0x5f, 0x43, 0xb5, 0x11, 0x17, 0x50, 0xec, 0xe5, 0x14, + 0x12, 0x84, 0x7a, 0xb3, 0xc0, 0xd6, 0x30, 0x53, 0x54, 0x55, 0x46, 0xfa, + 0x66, 0xf5, 0x77, 0x18, +}; +static const struct drbg_kat_pr_false kat2114_t = { + 13, kat2114_entropyin, kat2114_nonce, kat2114_persstr, + kat2114_entropyinreseed, kat2114_addinreseed, kat2114_addin0, + kat2114_addin1, kat2114_retbits +}; +static const struct drbg_kat kat2114 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2114_t +}; + +static const unsigned char kat2115_entropyin[] = { + 0x73, 0x4f, 0x99, 0xb0, 0xab, 0xc6, 0x1a, 0xe2, 0x31, 0xdb, 0x7f, 0xb1, + 0x9a, 0xb2, 0xbc, 0x4b, 0xb9, 0x03, 0x56, 0x7d, 0x6b, 0x35, 0xdb, 0xaf, + 0x76, 0x27, 0x4c, 0x4a, 0x68, 0x9e, 0xa2, 0xae, +}; +static const unsigned char kat2115_nonce[] = { + 0x3c, 0xbc, 0xda, 0x1d, 0xc5, 0xf7, 0x7e, 0x82, 0x11, 0x11, 0x25, 0xac, + 0x8c, 0x9d, 0x30, 0xb3, +}; +static const unsigned char kat2115_persstr[] = {0}; +static const unsigned char kat2115_entropyinreseed[] = { + 0xa3, 0x75, 0x6f, 0xff, 0x99, 0x03, 0xf3, 0x23, 0xe5, 0x73, 0x87, 0x21, + 0x04, 0xa1, 0xf4, 0xa2, 0x03, 0x5d, 0xbd, 0x3a, 0x46, 0x4e, 0xe5, 0xa5, + 0xee, 0x8d, 0xb4, 0xf4, 0x8e, 0xd0, 0xf1, 0xb7, +}; +static const unsigned char kat2115_addinreseed[] = {0}; +static const unsigned char kat2115_addin0[] = {0}; +static const unsigned char kat2115_addin1[] = {0}; +static const unsigned char kat2115_retbits[] = { + 0xbf, 0xe7, 0xe2, 0x05, 0xac, 0x68, 0x9d, 0x21, 0xae, 0x2a, 0x26, 0x85, + 0xe2, 0xea, 0xf1, 0xae, 0x0a, 0xd3, 0xe1, 0x39, 0x88, 0x18, 0x91, 0xc1, + 0xd1, 0x1b, 0x50, 0x59, 0x4d, 0xdd, 0x22, 0xcf, 0x3d, 0x7e, 0xe4, 0xd5, + 0xd4, 0x01, 0x0b, 0x44, 0xc9, 0xb7, 0xa8, 0x6f, 0x9b, 0x86, 0xd6, 0x65, + 0xa1, 0xb2, 0x8a, 0xe2, 0x1a, 0xc1, 0xd1, 0x19, 0xdd, 0xb5, 0x4e, 0x14, + 0x4e, 0xe8, 0xcb, 0x64, +}; +static const struct drbg_kat_pr_false kat2115_t = { + 14, kat2115_entropyin, kat2115_nonce, kat2115_persstr, + kat2115_entropyinreseed, kat2115_addinreseed, kat2115_addin0, + kat2115_addin1, kat2115_retbits +}; +static const struct drbg_kat kat2115 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat2115_t +}; + +static const unsigned char kat2116_entropyin[] = { + 0xa6, 0xe8, 0x60, 0x41, 0x4e, 0x2f, 0xe8, 0xd4, 0x74, 0x0e, 0xa2, 0x04, + 0xb8, 0x77, 0xc7, 0x6b, 0x50, 0x28, 0x07, 0x22, 0xc3, 0xb9, 0x18, 0x63, + 0x25, 0x74, 0x34, 0xc7, 0x53, 0x04, 0xda, 0xfe, +}; +static const unsigned char kat2116_nonce[] = { + 0x8f, 0x12, 0xc9, 0x32, 0x7d, 0x28, 0xe2, 0xc2, 0x74, 0x1e, 0x4a, 0xd7, + 0xe2, 0x7b, 0xb1, 0x24, +}; +static const unsigned char kat2116_persstr[] = {0}; +static const unsigned char kat2116_entropyinreseed[] = { + 0xc3, 0x2e, 0x3b, 0x4c, 0xf9, 0x7c, 0x06, 0xfa, 0xb4, 0x1b, 0x54, 0x58, + 0x70, 0xad, 0xd8, 0xc3, 0xf9, 0x8f, 0xa6, 0x75, 0x1a, 0xab, 0x02, 0x98, + 0x8d, 0x2d, 0x34, 0xc9, 0x5d, 0x19, 0x99, 0x65, +}; +static const unsigned char kat2116_addinreseed[] = { + 0xf0, 0xd9, 0xa6, 0x4f, 0xab, 0xbf, 0x34, 0x6c, 0x87, 0x1d, 0x77, 0x31, + 0xe7, 0x15, 0x86, 0xbc, 0xce, 0x74, 0x8b, 0x08, 0xff, 0x07, 0x26, 0xd6, + 0x8d, 0x54, 0xbf, 0xed, 0x27, 0xb1, 0x0b, 0x27, +}; +static const unsigned char kat2116_addin0[] = { + 0xc7, 0x2f, 0x45, 0x58, 0x1a, 0x79, 0x73, 0xcb, 0x41, 0x48, 0xfb, 0x9e, + 0x8e, 0xac, 0xfc, 0xa0, 0xe5, 0x13, 0xc4, 0x0a, 0xb8, 0x92, 0x53, 0x13, + 0xb4, 0x99, 0xb1, 0xb8, 0x3a, 0x99, 0xe3, 0x72, +}; +static const unsigned char kat2116_addin1[] = { + 0x7d, 0xfa, 0xcd, 0x72, 0xc0, 0x84, 0xc3, 0x24, 0xf7, 0x21, 0xf0, 0x3a, + 0xdd, 0xbe, 0x72, 0xb6, 0x46, 0xa4, 0xa7, 0x23, 0xe7, 0x8b, 0x5e, 0x40, + 0x1a, 0xef, 0x84, 0x4c, 0xf2, 0xb9, 0x13, 0x33, +}; +static const unsigned char kat2116_retbits[] = { + 0xdb, 0x25, 0x29, 0x86, 0x20, 0x11, 0xf4, 0x5d, 0x95, 0x91, 0x8d, 0x84, + 0x3b, 0x7e, 0xf0, 0xd7, 0xab, 0x18, 0xa6, 0xd6, 0xe3, 0xf0, 0xbc, 0xec, + 0x10, 0x94, 0x97, 0x50, 0x2b, 0x68, 0xb5, 0xed, 0x9c, 0xea, 0xe8, 0x55, + 0x14, 0xaf, 0x51, 0x59, 0x7e, 0x84, 0x79, 0x19, 0x6d, 0x59, 0x19, 0x0c, + 0xda, 0x41, 0x4e, 0x56, 0x6a, 0xd6, 0x38, 0xd3, 0x91, 0x56, 0x35, 0x1a, + 0xfb, 0xae, 0xaf, 0xd9, +}; +static const struct drbg_kat_pr_false kat2116_t = { + 0, kat2116_entropyin, kat2116_nonce, kat2116_persstr, + kat2116_entropyinreseed, kat2116_addinreseed, kat2116_addin0, + kat2116_addin1, kat2116_retbits +}; +static const struct drbg_kat kat2116 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2116_t +}; + +static const unsigned char kat2117_entropyin[] = { + 0xdd, 0xbf, 0xec, 0xb8, 0x8d, 0xf6, 0x62, 0x75, 0x52, 0xb9, 0x13, 0xe6, + 0x36, 0xa2, 0xdf, 0xcc, 0x8a, 0x00, 0x93, 0xf4, 0xc5, 0xd6, 0xec, 0x3b, + 0x0a, 0x30, 0x07, 0xcf, 0xce, 0x1b, 0x08, 0xf2, +}; +static const unsigned char kat2117_nonce[] = { + 0xb8, 0x62, 0xf9, 0xd4, 0x92, 0xd9, 0x3d, 0x73, 0x62, 0x01, 0xb5, 0xce, + 0xf1, 0x5b, 0x5c, 0x5c, +}; +static const unsigned char kat2117_persstr[] = {0}; +static const unsigned char kat2117_entropyinreseed[] = { + 0x2a, 0xe9, 0xd1, 0x9f, 0x0a, 0xaf, 0x66, 0x88, 0xd7, 0x8a, 0xb9, 0x1b, + 0x11, 0xf0, 0x66, 0x8c, 0x16, 0x16, 0xe8, 0x1a, 0x62, 0x79, 0xab, 0xaf, + 0x91, 0x1b, 0x46, 0x86, 0xe0, 0x46, 0xd1, 0xdb, +}; +static const unsigned char kat2117_addinreseed[] = { + 0x40, 0x4c, 0x84, 0x94, 0x36, 0x37, 0xc2, 0x2f, 0xce, 0xd4, 0x95, 0x55, + 0x83, 0x9d, 0xab, 0xab, 0xa0, 0xd6, 0xdf, 0x25, 0xc7, 0xa0, 0x49, 0xaa, + 0x2b, 0xb7, 0x11, 0x4b, 0xea, 0x93, 0xff, 0x67, +}; +static const unsigned char kat2117_addin0[] = { + 0x79, 0x53, 0x9a, 0x1f, 0xe5, 0x6c, 0x5e, 0x1d, 0x72, 0x01, 0x29, 0x2d, + 0x50, 0x7c, 0x5e, 0xdb, 0x55, 0x4c, 0xde, 0x37, 0x96, 0x81, 0x05, 0xc3, + 0x86, 0x5d, 0xf9, 0xf7, 0xdc, 0x36, 0xd1, 0xe7, +}; +static const unsigned char kat2117_addin1[] = { + 0x8f, 0x33, 0x19, 0xf8, 0x43, 0xe0, 0x82, 0x44, 0xe8, 0xd2, 0x7d, 0x7e, + 0xb5, 0xdb, 0x68, 0x1e, 0x9f, 0xfd, 0x83, 0x65, 0x7d, 0xdb, 0x40, 0x65, + 0x9f, 0xde, 0x20, 0xb2, 0xb4, 0x37, 0x6c, 0x01, +}; +static const unsigned char kat2117_retbits[] = { + 0x87, 0xb7, 0xa3, 0xe5, 0xbf, 0xd7, 0xa5, 0xf8, 0xba, 0x93, 0xfb, 0x02, + 0x0f, 0x21, 0x3c, 0xef, 0xb0, 0xb2, 0xaf, 0xc6, 0xa7, 0x33, 0xd9, 0x9b, + 0x53, 0xe5, 0x6e, 0x51, 0xca, 0x06, 0x06, 0x8f, 0x1a, 0x37, 0xff, 0x8d, + 0x88, 0xb7, 0xc7, 0x7c, 0x23, 0x48, 0x7b, 0xdf, 0x63, 0xb0, 0x98, 0x76, + 0x10, 0x40, 0xf5, 0xf3, 0xd4, 0x94, 0x89, 0xc3, 0x8f, 0xb6, 0xfd, 0x3a, + 0x7e, 0xb3, 0x3f, 0xf1, +}; +static const struct drbg_kat_pr_false kat2117_t = { + 1, kat2117_entropyin, kat2117_nonce, kat2117_persstr, + kat2117_entropyinreseed, kat2117_addinreseed, kat2117_addin0, + kat2117_addin1, kat2117_retbits +}; +static const struct drbg_kat kat2117 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2117_t +}; + +static const unsigned char kat2118_entropyin[] = { + 0xca, 0x44, 0x84, 0x1b, 0xa8, 0x3a, 0xcc, 0xac, 0x8a, 0x90, 0xe8, 0xe7, + 0xed, 0xe8, 0x6a, 0x9b, 0xcc, 0x1e, 0x42, 0xa7, 0x36, 0xf3, 0x17, 0xbe, + 0x3e, 0xc2, 0x5d, 0xd8, 0xc0, 0x15, 0xe0, 0xe0, +}; +static const unsigned char kat2118_nonce[] = { + 0xd1, 0x59, 0xa4, 0x15, 0xb8, 0x1b, 0xf2, 0x6e, 0x13, 0xb6, 0xce, 0x37, + 0x98, 0x63, 0x1f, 0x7c, +}; +static const unsigned char kat2118_persstr[] = {0}; +static const unsigned char kat2118_entropyinreseed[] = { + 0xdb, 0xdf, 0xb6, 0x75, 0x71, 0x48, 0x70, 0x4b, 0x56, 0xa1, 0x6c, 0x40, + 0x17, 0xe4, 0xda, 0xa2, 0x0c, 0x1a, 0x40, 0x3b, 0x79, 0x0b, 0xd6, 0x48, + 0x3d, 0x3f, 0x4c, 0x1a, 0xb4, 0xcc, 0x96, 0xa8, +}; +static const unsigned char kat2118_addinreseed[] = { + 0x8e, 0x22, 0x25, 0x23, 0xa9, 0x3e, 0x06, 0x11, 0x7d, 0xd2, 0xbe, 0x55, + 0xed, 0x51, 0x30, 0xce, 0x59, 0x0d, 0xcb, 0xcc, 0xb7, 0x05, 0xa4, 0x23, + 0x86, 0x7a, 0x56, 0xa6, 0xc7, 0x87, 0x51, 0xca, +}; +static const unsigned char kat2118_addin0[] = { + 0x9f, 0x0d, 0x6c, 0xa9, 0xf4, 0xd3, 0xb7, 0x9f, 0x36, 0x9f, 0x37, 0x63, + 0x25, 0x4f, 0xe8, 0x0a, 0x77, 0x03, 0xdf, 0x5a, 0x96, 0xdd, 0x2f, 0xf5, + 0x3d, 0x57, 0x82, 0x0b, 0x70, 0x09, 0x5c, 0x1f, +}; +static const unsigned char kat2118_addin1[] = { + 0xc9, 0x01, 0x99, 0x27, 0xc4, 0x0c, 0xe1, 0x2c, 0x1b, 0xd5, 0x96, 0xc2, + 0x2c, 0x72, 0x65, 0x4c, 0xce, 0xa3, 0xee, 0x52, 0x91, 0xcc, 0xe1, 0x1c, + 0xe5, 0x50, 0xe6, 0x0e, 0xb7, 0xf0, 0x39, 0x31, +}; +static const unsigned char kat2118_retbits[] = { + 0xcf, 0xdb, 0x90, 0x64, 0x12, 0x88, 0xc8, 0x57, 0x17, 0x48, 0xc9, 0xea, + 0x59, 0x34, 0xac, 0xb3, 0x23, 0x0a, 0x84, 0x7d, 0x1d, 0xee, 0xd4, 0x80, + 0x14, 0xcc, 0x1b, 0x25, 0x78, 0xe4, 0x05, 0x39, 0xdf, 0xab, 0x2b, 0xc6, + 0x11, 0x80, 0x57, 0xb1, 0x86, 0x08, 0x39, 0x9e, 0xdf, 0x19, 0x8d, 0xad, + 0xb4, 0x87, 0xaa, 0x4a, 0xf2, 0x0b, 0xc5, 0xf4, 0x4d, 0x8c, 0x4f, 0xbb, + 0xc9, 0x60, 0x56, 0xb6, +}; +static const struct drbg_kat_pr_false kat2118_t = { + 2, kat2118_entropyin, kat2118_nonce, kat2118_persstr, + kat2118_entropyinreseed, kat2118_addinreseed, kat2118_addin0, + kat2118_addin1, kat2118_retbits +}; +static const struct drbg_kat kat2118 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2118_t +}; + +static const unsigned char kat2119_entropyin[] = { + 0x10, 0xe2, 0x6c, 0x67, 0x4e, 0x99, 0xf1, 0x86, 0x67, 0x78, 0xe3, 0x16, + 0x50, 0x7f, 0x7a, 0x15, 0xcf, 0x5d, 0x82, 0xfb, 0xca, 0xb3, 0xb9, 0x1f, + 0xf7, 0xf6, 0x6b, 0x92, 0x61, 0x46, 0x7b, 0xb8, +}; +static const unsigned char kat2119_nonce[] = { + 0x12, 0x76, 0xfa, 0x82, 0x6b, 0x68, 0xf3, 0x85, 0xf2, 0x3a, 0x43, 0x78, + 0x6d, 0x62, 0xbe, 0x18, +}; +static const unsigned char kat2119_persstr[] = {0}; +static const unsigned char kat2119_entropyinreseed[] = { + 0xec, 0xa2, 0xbf, 0xae, 0x3f, 0xa6, 0xb2, 0x71, 0xfb, 0x51, 0xef, 0x89, + 0xa6, 0x41, 0xf8, 0x92, 0x30, 0xad, 0x3e, 0xfb, 0x23, 0xa2, 0x50, 0x53, + 0x4a, 0x34, 0x2d, 0xbf, 0xff, 0xc4, 0x3b, 0xdf, +}; +static const unsigned char kat2119_addinreseed[] = { + 0x8c, 0x1c, 0x67, 0x3b, 0x3a, 0x06, 0xbd, 0x9b, 0x10, 0xc7, 0x87, 0xe6, + 0x09, 0x44, 0x2d, 0x7f, 0x6d, 0xba, 0x9d, 0xef, 0x1d, 0x59, 0x6c, 0x03, + 0x1d, 0x39, 0x3c, 0x91, 0x65, 0x67, 0x41, 0x14, +}; +static const unsigned char kat2119_addin0[] = { + 0x12, 0xce, 0x47, 0x00, 0x2f, 0x81, 0x57, 0x00, 0xe7, 0x9a, 0xc6, 0x6f, + 0x69, 0xba, 0x65, 0x87, 0x44, 0x27, 0xa5, 0x20, 0xe5, 0xa0, 0x33, 0xa0, + 0x96, 0x05, 0xde, 0xd1, 0xac, 0xe9, 0xb0, 0xd2, +}; +static const unsigned char kat2119_addin1[] = { + 0x05, 0x80, 0xae, 0x03, 0x35, 0x9c, 0x94, 0xd3, 0x27, 0x6e, 0x67, 0x87, + 0x8a, 0x01, 0xfc, 0x99, 0xcb, 0xdc, 0x83, 0xbb, 0x83, 0x2d, 0xbd, 0x85, + 0xa6, 0x1a, 0x11, 0x60, 0x38, 0xd6, 0x28, 0x4e, +}; +static const unsigned char kat2119_retbits[] = { + 0xc6, 0x5a, 0x71, 0x6f, 0x71, 0x6e, 0x12, 0xe8, 0x88, 0x4b, 0x68, 0x5f, + 0xbd, 0x61, 0x2f, 0x8a, 0xdf, 0xc0, 0x2b, 0x0d, 0x17, 0x53, 0x78, 0x62, + 0x08, 0x80, 0x2a, 0xca, 0x3f, 0xe6, 0x97, 0x03, 0x1f, 0x51, 0x4a, 0x47, + 0x0c, 0x09, 0x63, 0x50, 0x30, 0xf0, 0x39, 0x73, 0x81, 0xbc, 0x61, 0x95, + 0xe9, 0x9f, 0xf2, 0x4b, 0xcf, 0x20, 0xf5, 0x16, 0xa0, 0xb4, 0xc6, 0x55, + 0xa6, 0x45, 0x13, 0x05, +}; +static const struct drbg_kat_pr_false kat2119_t = { + 3, kat2119_entropyin, kat2119_nonce, kat2119_persstr, + kat2119_entropyinreseed, kat2119_addinreseed, kat2119_addin0, + kat2119_addin1, kat2119_retbits +}; +static const struct drbg_kat kat2119 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2119_t +}; + +static const unsigned char kat2120_entropyin[] = { + 0x52, 0x99, 0x8a, 0x71, 0xea, 0x17, 0xfc, 0x99, 0x3f, 0x67, 0xd8, 0xbb, + 0xb1, 0x77, 0xd7, 0xe1, 0x93, 0x9b, 0x58, 0x5c, 0x21, 0x36, 0xff, 0x16, + 0x11, 0x2a, 0x89, 0xa8, 0x9d, 0x36, 0xad, 0x6d, +}; +static const unsigned char kat2120_nonce[] = { + 0x4d, 0xd6, 0x76, 0xa4, 0x24, 0x15, 0xb4, 0x81, 0x87, 0xec, 0xbb, 0x8f, + 0x27, 0x05, 0x7a, 0x2c, +}; +static const unsigned char kat2120_persstr[] = {0}; +static const unsigned char kat2120_entropyinreseed[] = { + 0xf7, 0x67, 0x3a, 0x0f, 0x9b, 0x21, 0x50, 0xee, 0x95, 0x67, 0xcd, 0xf4, + 0x81, 0x4a, 0x40, 0x99, 0x41, 0xa1, 0x76, 0x0c, 0xbf, 0xc3, 0x69, 0xe8, + 0xc7, 0xdf, 0xc7, 0x1b, 0x02, 0xc2, 0x78, 0x38, +}; +static const unsigned char kat2120_addinreseed[] = { + 0xd1, 0x61, 0xc1, 0x8a, 0xbb, 0x23, 0xd0, 0x84, 0x0b, 0xd3, 0x77, 0xbf, + 0x7b, 0xf4, 0xd6, 0xe6, 0xaa, 0x2f, 0xeb, 0xe4, 0x54, 0x2b, 0xc5, 0x38, + 0x07, 0xaf, 0xd5, 0x0d, 0xd3, 0x2e, 0x71, 0x1e, +}; +static const unsigned char kat2120_addin0[] = { + 0x92, 0xc1, 0x80, 0xe7, 0x7c, 0x48, 0xf9, 0xb4, 0xa0, 0xfa, 0x85, 0xf3, + 0x81, 0x2e, 0x0b, 0x2a, 0x19, 0xce, 0xaf, 0x56, 0x89, 0x0b, 0x57, 0x82, + 0xaf, 0x2c, 0xc9, 0x1f, 0x73, 0x8f, 0xc6, 0x65, +}; +static const unsigned char kat2120_addin1[] = { + 0x50, 0x50, 0x67, 0xbe, 0x22, 0x50, 0xe0, 0x83, 0xf3, 0x2e, 0xbb, 0x38, + 0xfe, 0xab, 0x5f, 0xd1, 0xaf, 0x1b, 0x71, 0x79, 0xcc, 0x4b, 0x73, 0xa4, + 0xea, 0x75, 0xf3, 0xad, 0xf3, 0xe7, 0xfc, 0x5b, +}; +static const unsigned char kat2120_retbits[] = { + 0x9c, 0x3d, 0xb7, 0x06, 0x21, 0xf2, 0xe9, 0xb6, 0x6d, 0x94, 0xa7, 0x2c, + 0xf9, 0x65, 0x27, 0x27, 0xbd, 0x76, 0xe1, 0x6f, 0xb9, 0x8e, 0x3f, 0x78, + 0x0b, 0x21, 0x8a, 0x3f, 0x84, 0xc4, 0xd5, 0xd3, 0x86, 0x04, 0xac, 0x85, + 0x71, 0xfb, 0x70, 0x76, 0xae, 0xa0, 0xd6, 0x69, 0x20, 0x6b, 0x37, 0xb9, + 0x78, 0x78, 0x77, 0x67, 0xdc, 0xb4, 0xe8, 0xf2, 0xcb, 0x64, 0x09, 0x2e, + 0x1c, 0xfb, 0x97, 0x39, +}; +static const struct drbg_kat_pr_false kat2120_t = { + 4, kat2120_entropyin, kat2120_nonce, kat2120_persstr, + kat2120_entropyinreseed, kat2120_addinreseed, kat2120_addin0, + kat2120_addin1, kat2120_retbits +}; +static const struct drbg_kat kat2120 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2120_t +}; + +static const unsigned char kat2121_entropyin[] = { + 0x71, 0x03, 0x7d, 0xf5, 0xd1, 0x85, 0x2f, 0xa6, 0xd5, 0x85, 0x26, 0x92, + 0xb3, 0x64, 0xbf, 0x74, 0xd8, 0x91, 0x3e, 0x4b, 0xcc, 0x01, 0x5e, 0xc9, + 0x7b, 0x8c, 0xb4, 0x5d, 0x45, 0x62, 0xe8, 0x51, +}; +static const unsigned char kat2121_nonce[] = { + 0xf7, 0xae, 0xd4, 0x63, 0x1b, 0xfa, 0x3d, 0xe4, 0xa0, 0xf0, 0x28, 0xed, + 0xc9, 0xba, 0xae, 0xe0, +}; +static const unsigned char kat2121_persstr[] = {0}; +static const unsigned char kat2121_entropyinreseed[] = { + 0xd6, 0xce, 0x60, 0x95, 0xeb, 0x53, 0x1c, 0x5e, 0xc9, 0x42, 0x20, 0x97, + 0x8f, 0xb4, 0x29, 0x3c, 0x8f, 0x62, 0x7e, 0x97, 0x0b, 0x0d, 0x34, 0xcd, + 0x2f, 0x44, 0xbd, 0xb3, 0x8e, 0xb9, 0xed, 0xd4, +}; +static const unsigned char kat2121_addinreseed[] = { + 0x99, 0xa6, 0xe1, 0xf0, 0x0c, 0xc4, 0xb9, 0xc4, 0xf7, 0x79, 0x57, 0xd4, + 0xf8, 0x3a, 0x02, 0x41, 0xcf, 0x4e, 0xc1, 0x4c, 0x59, 0xdf, 0x8d, 0xef, + 0x35, 0xdf, 0xde, 0x2b, 0x5b, 0x44, 0x1d, 0x75, +}; +static const unsigned char kat2121_addin0[] = { + 0xde, 0xf6, 0xf7, 0x96, 0x03, 0xde, 0x44, 0x66, 0xcd, 0x17, 0xc0, 0xa9, + 0x3b, 0x58, 0x2e, 0xa2, 0xbc, 0x2d, 0x94, 0xde, 0xd2, 0x4d, 0x74, 0xbd, + 0xe5, 0x7e, 0x81, 0x08, 0x56, 0x67, 0x30, 0xc5, +}; +static const unsigned char kat2121_addin1[] = { + 0x88, 0x05, 0xf0, 0x93, 0xa6, 0x7f, 0x02, 0xb2, 0x08, 0xfa, 0x37, 0x44, + 0x51, 0x11, 0x58, 0xf3, 0xfa, 0xc0, 0x7a, 0x78, 0x84, 0xfd, 0xbd, 0x2e, + 0x5a, 0x96, 0xee, 0xc9, 0x64, 0x57, 0x64, 0xf0, +}; +static const unsigned char kat2121_retbits[] = { + 0x87, 0x03, 0x35, 0xd8, 0x35, 0x76, 0xcf, 0x60, 0xb9, 0x74, 0xef, 0x6b, + 0x2d, 0xd1, 0xe2, 0xa9, 0x73, 0x90, 0x16, 0x67, 0xa6, 0x90, 0x5e, 0x18, + 0x1e, 0x5a, 0x04, 0x9a, 0x7a, 0xf0, 0xf4, 0x83, 0xbe, 0xd1, 0xff, 0x11, + 0x65, 0xd5, 0xff, 0x09, 0x4e, 0x88, 0x56, 0xbd, 0x7f, 0x93, 0x34, 0x2d, + 0xbe, 0xa5, 0xe4, 0xa5, 0x40, 0x7e, 0x7a, 0x5e, 0x20, 0x41, 0xa9, 0x6c, + 0x94, 0x3a, 0x25, 0x54, +}; +static const struct drbg_kat_pr_false kat2121_t = { + 5, kat2121_entropyin, kat2121_nonce, kat2121_persstr, + kat2121_entropyinreseed, kat2121_addinreseed, kat2121_addin0, + kat2121_addin1, kat2121_retbits +}; +static const struct drbg_kat kat2121 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2121_t +}; + +static const unsigned char kat2122_entropyin[] = { + 0x4e, 0x40, 0xed, 0x65, 0xde, 0xaf, 0xbe, 0x08, 0xd8, 0x1a, 0xca, 0x66, + 0x07, 0x51, 0x8f, 0xa9, 0xe5, 0x58, 0xba, 0x83, 0x23, 0x5c, 0xb9, 0x23, + 0xae, 0x5e, 0xc2, 0xd4, 0x81, 0x9e, 0x4f, 0xb2, +}; +static const unsigned char kat2122_nonce[] = { + 0xec, 0xd1, 0xc0, 0x86, 0x38, 0x92, 0xcd, 0x09, 0x6e, 0xc0, 0x00, 0xd1, + 0xf8, 0x29, 0x58, 0x86, +}; +static const unsigned char kat2122_persstr[] = {0}; +static const unsigned char kat2122_entropyinreseed[] = { + 0x38, 0x1b, 0xc2, 0x4e, 0xf1, 0xfe, 0xa4, 0x04, 0xc6, 0x85, 0xeb, 0x7b, + 0x06, 0xc4, 0x0d, 0xb6, 0x97, 0x2a, 0xf2, 0xf9, 0x98, 0x04, 0xdf, 0xa8, + 0x87, 0x59, 0x14, 0x7a, 0xad, 0x41, 0xa8, 0x62, +}; +static const unsigned char kat2122_addinreseed[] = { + 0x2d, 0x28, 0x44, 0x5e, 0xa8, 0x81, 0xec, 0x3a, 0x42, 0x37, 0x41, 0xb1, + 0x70, 0xb5, 0xef, 0x85, 0x29, 0xe5, 0xdc, 0x53, 0xa2, 0x6f, 0x2d, 0x63, + 0x45, 0x2a, 0xf4, 0x28, 0x61, 0x3d, 0x56, 0xd5, +}; +static const unsigned char kat2122_addin0[] = { + 0xb7, 0xca, 0x5f, 0xb6, 0xd8, 0xa7, 0xce, 0x2a, 0x5d, 0x25, 0xbc, 0xba, + 0xc2, 0x46, 0x97, 0x8a, 0x26, 0x01, 0x83, 0x2f, 0xcd, 0x9e, 0xa2, 0x35, + 0x0b, 0xbb, 0x7b, 0xb8, 0x34, 0xfc, 0xa7, 0x85, +}; +static const unsigned char kat2122_addin1[] = { + 0xc5, 0xdd, 0x43, 0x28, 0xa1, 0x10, 0xd6, 0x9a, 0xa1, 0xfe, 0x1b, 0x24, + 0x28, 0x1b, 0x8b, 0xbf, 0x7a, 0x15, 0xe7, 0x86, 0x21, 0xd6, 0x2a, 0x66, + 0x56, 0xf3, 0xa0, 0x3c, 0x87, 0xdd, 0x92, 0xa7, +}; +static const unsigned char kat2122_retbits[] = { + 0xb9, 0x7b, 0x22, 0x0c, 0x2c, 0x44, 0x70, 0x29, 0xc1, 0x58, 0x75, 0x9f, + 0x0a, 0x5e, 0x94, 0x4e, 0x35, 0x3c, 0x15, 0xf0, 0x3d, 0x3a, 0x74, 0x55, + 0x52, 0xf8, 0xd5, 0x41, 0x53, 0x35, 0xe8, 0xc8, 0x4b, 0x80, 0x38, 0xe6, + 0x30, 0xbd, 0x82, 0x18, 0x3b, 0x0c, 0x1a, 0x3c, 0x4f, 0x75, 0xc4, 0xe2, + 0x08, 0xe2, 0x75, 0x76, 0x37, 0x36, 0x53, 0xee, 0xa7, 0xb8, 0x4b, 0x1e, + 0xc7, 0x04, 0xf4, 0x96, +}; +static const struct drbg_kat_pr_false kat2122_t = { + 6, kat2122_entropyin, kat2122_nonce, kat2122_persstr, + kat2122_entropyinreseed, kat2122_addinreseed, kat2122_addin0, + kat2122_addin1, kat2122_retbits +}; +static const struct drbg_kat kat2122 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2122_t +}; + +static const unsigned char kat2123_entropyin[] = { + 0xc7, 0xa8, 0x47, 0x9e, 0x9a, 0x97, 0xa0, 0x4c, 0xb3, 0x1a, 0x75, 0xb1, + 0xcc, 0x8c, 0x12, 0x89, 0x73, 0x83, 0xd4, 0xb3, 0x58, 0xd6, 0x30, 0x80, + 0x67, 0x93, 0x93, 0x1d, 0x67, 0xe2, 0x9f, 0x2e, +}; +static const unsigned char kat2123_nonce[] = { + 0x69, 0x52, 0x33, 0x66, 0x95, 0xe2, 0xf5, 0x18, 0x42, 0xe5, 0x0d, 0x47, + 0xac, 0x03, 0x1e, 0x3a, +}; +static const unsigned char kat2123_persstr[] = {0}; +static const unsigned char kat2123_entropyinreseed[] = { + 0x4d, 0xbe, 0xf9, 0x60, 0x13, 0xf0, 0xb0, 0x35, 0xdc, 0xce, 0xfb, 0x03, + 0x36, 0x20, 0x74, 0xe4, 0x25, 0xe4, 0xa7, 0x49, 0x16, 0xbe, 0x7c, 0x9c, + 0x8a, 0xdd, 0x37, 0x68, 0x35, 0x9f, 0x63, 0x10, +}; +static const unsigned char kat2123_addinreseed[] = { + 0xdd, 0xa0, 0xcd, 0x22, 0xf2, 0x4c, 0xff, 0x55, 0x2a, 0xb9, 0x63, 0x81, + 0x98, 0x67, 0x82, 0xbb, 0xdf, 0x4f, 0xa9, 0x1d, 0x17, 0xbb, 0x25, 0x26, + 0x5b, 0x8f, 0x30, 0xcc, 0xa9, 0x31, 0xb3, 0xf6, +}; +static const unsigned char kat2123_addin0[] = { + 0x8a, 0x08, 0x98, 0xe1, 0xea, 0xa5, 0xca, 0x96, 0xcb, 0xff, 0xd0, 0xae, + 0xf4, 0xaa, 0xfb, 0x59, 0xe5, 0x53, 0x00, 0x99, 0x0f, 0xf4, 0xe4, 0xd2, + 0xa5, 0x57, 0x44, 0x9a, 0x9f, 0x45, 0x2b, 0x0b, +}; +static const unsigned char kat2123_addin1[] = { + 0xc0, 0xb4, 0x8a, 0xe5, 0xe4, 0xcf, 0xf6, 0x0d, 0x9d, 0x80, 0x92, 0x10, + 0x41, 0x05, 0xa4, 0x85, 0xd4, 0x00, 0xc4, 0xe6, 0x2a, 0x20, 0x87, 0xb6, + 0xee, 0xfb, 0x8c, 0x45, 0xc7, 0x25, 0x1a, 0x15, +}; +static const unsigned char kat2123_retbits[] = { + 0x8e, 0xa6, 0x1e, 0x74, 0x00, 0x80, 0xed, 0xcd, 0x50, 0xd8, 0x53, 0x6e, + 0xdf, 0x1f, 0xb0, 0x9c, 0xab, 0x95, 0x14, 0xaf, 0xd3, 0xf5, 0xd7, 0x0c, + 0x61, 0xe0, 0x62, 0x53, 0xcf, 0xe2, 0x9c, 0x35, 0x7f, 0x58, 0xdc, 0xcc, + 0xc7, 0xa9, 0x47, 0x8c, 0xb9, 0x11, 0xd8, 0xb0, 0x78, 0xd0, 0x28, 0xfc, + 0x28, 0x44, 0x96, 0x78, 0xa4, 0x7e, 0x12, 0xc1, 0xef, 0x80, 0xed, 0xbd, + 0x68, 0x28, 0x05, 0x5b, +}; +static const struct drbg_kat_pr_false kat2123_t = { + 7, kat2123_entropyin, kat2123_nonce, kat2123_persstr, + kat2123_entropyinreseed, kat2123_addinreseed, kat2123_addin0, + kat2123_addin1, kat2123_retbits +}; +static const struct drbg_kat kat2123 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2123_t +}; + +static const unsigned char kat2124_entropyin[] = { + 0xdf, 0x2f, 0xc4, 0x1f, 0x0b, 0xd9, 0xd1, 0x85, 0xdc, 0x15, 0xc6, 0xea, + 0xb6, 0xb9, 0xe9, 0xe7, 0x26, 0x7e, 0x8c, 0xce, 0x27, 0x22, 0x81, 0xaf, + 0xa5, 0xd6, 0x54, 0x5a, 0x75, 0xea, 0x7a, 0x18, +}; +static const unsigned char kat2124_nonce[] = { + 0x28, 0x65, 0xdc, 0x91, 0xbd, 0xf6, 0xbb, 0x25, 0xbd, 0xf9, 0xec, 0xae, + 0x68, 0x10, 0xbe, 0x24, +}; +static const unsigned char kat2124_persstr[] = {0}; +static const unsigned char kat2124_entropyinreseed[] = { + 0x21, 0x01, 0xfe, 0xbe, 0x49, 0x04, 0xbe, 0xfd, 0xce, 0xf6, 0x08, 0x94, + 0x53, 0xac, 0x1b, 0x3c, 0x82, 0xcb, 0xee, 0x72, 0x5d, 0x96, 0x9f, 0x09, + 0x77, 0xcb, 0x57, 0x4c, 0xd2, 0xa4, 0x41, 0x2e, +}; +static const unsigned char kat2124_addinreseed[] = { + 0x31, 0xb8, 0xd2, 0x98, 0x48, 0xa0, 0x4f, 0x81, 0x59, 0xb8, 0x02, 0xd6, + 0xec, 0x98, 0x27, 0x49, 0xe7, 0xfa, 0x4a, 0xa0, 0xb8, 0x72, 0x29, 0x1d, + 0x2c, 0xc9, 0xda, 0x03, 0x10, 0x34, 0x4d, 0x43, +}; +static const unsigned char kat2124_addin0[] = { + 0xb0, 0xaa, 0xd9, 0xd5, 0x68, 0x57, 0x88, 0xfe, 0x82, 0x1b, 0xb2, 0xbb, + 0x81, 0xd3, 0x42, 0x0f, 0x49, 0xa5, 0x1a, 0xec, 0x11, 0x8f, 0x54, 0x87, + 0xf4, 0x15, 0x52, 0x84, 0x78, 0x85, 0x76, 0xe8, +}; +static const unsigned char kat2124_addin1[] = { + 0xba, 0x68, 0xcc, 0x2e, 0xde, 0x48, 0x38, 0xa8, 0x34, 0x93, 0x8d, 0xce, + 0xa6, 0x94, 0xfa, 0x63, 0x41, 0xb0, 0x73, 0x28, 0x60, 0xc0, 0xed, 0xa9, + 0xcd, 0x0f, 0xd3, 0xc6, 0xe6, 0x87, 0xc9, 0x88, +}; +static const unsigned char kat2124_retbits[] = { + 0x4d, 0xcf, 0x23, 0xca, 0x7f, 0xa9, 0x87, 0x21, 0x65, 0x1c, 0x0c, 0xcf, + 0x5f, 0x7a, 0xe8, 0xcd, 0xfa, 0x51, 0x2c, 0xba, 0x1a, 0x90, 0xf4, 0xcb, + 0x31, 0xac, 0x8d, 0x13, 0x16, 0xc1, 0xd3, 0x67, 0x2e, 0xd8, 0x46, 0x55, + 0x4c, 0xd6, 0x2e, 0xb8, 0x5c, 0xbd, 0x0e, 0xd9, 0xb2, 0x8f, 0x6e, 0x2a, + 0xac, 0x87, 0xa1, 0xb2, 0x90, 0x76, 0xd3, 0x27, 0x8a, 0xbe, 0x1d, 0xc4, + 0xd9, 0x81, 0x37, 0x95, +}; +static const struct drbg_kat_pr_false kat2124_t = { + 8, kat2124_entropyin, kat2124_nonce, kat2124_persstr, + kat2124_entropyinreseed, kat2124_addinreseed, kat2124_addin0, + kat2124_addin1, kat2124_retbits +}; +static const struct drbg_kat kat2124 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2124_t +}; + +static const unsigned char kat2125_entropyin[] = { + 0x79, 0x86, 0x4c, 0xd2, 0xd6, 0x9f, 0xc5, 0xb7, 0x5f, 0xac, 0xa2, 0xa9, + 0x35, 0x03, 0xec, 0xf2, 0x1b, 0x60, 0x17, 0x67, 0x54, 0xc7, 0xe6, 0xc0, + 0x28, 0xec, 0xbb, 0x67, 0x4f, 0x2b, 0xba, 0xac, +}; +static const unsigned char kat2125_nonce[] = { + 0x61, 0x9b, 0x1f, 0x7e, 0xd2, 0x8f, 0x45, 0x1c, 0xee, 0x9b, 0xa7, 0x3f, + 0x61, 0x4b, 0x05, 0x90, +}; +static const unsigned char kat2125_persstr[] = {0}; +static const unsigned char kat2125_entropyinreseed[] = { + 0xa6, 0x18, 0xdb, 0xbf, 0x6a, 0xcb, 0x2e, 0x29, 0xb2, 0x73, 0xee, 0x89, + 0xce, 0x86, 0x6e, 0xa2, 0x93, 0xb2, 0x8b, 0x4b, 0x11, 0xb4, 0x7c, 0xef, + 0x8c, 0x48, 0xbe, 0xc2, 0x93, 0x39, 0x7c, 0xf1, +}; +static const unsigned char kat2125_addinreseed[] = { + 0xd2, 0x2d, 0xb1, 0x90, 0xf2, 0xa7, 0x17, 0x45, 0xa7, 0xbd, 0xe0, 0x72, + 0x3f, 0xde, 0xf0, 0x58, 0x80, 0xf8, 0xe3, 0x73, 0x86, 0x5c, 0x6e, 0x8b, + 0x93, 0x33, 0xaa, 0x93, 0x33, 0xb0, 0xdb, 0x55, +}; +static const unsigned char kat2125_addin0[] = { + 0x76, 0x0c, 0xe1, 0x2b, 0x9a, 0x1f, 0x09, 0xed, 0x4c, 0x0b, 0x9a, 0xe5, + 0xcf, 0x47, 0x85, 0xad, 0x0a, 0x8e, 0x6f, 0x4e, 0x69, 0x92, 0x3d, 0xcc, + 0xf8, 0x21, 0x38, 0xbf, 0x2c, 0x57, 0x52, 0x73, +}; +static const unsigned char kat2125_addin1[] = { + 0xe6, 0x17, 0x61, 0xdc, 0x83, 0xfd, 0xf9, 0x4e, 0x91, 0x0b, 0x25, 0xb1, + 0xc1, 0x6b, 0x83, 0x65, 0x30, 0xbe, 0x7c, 0xd3, 0x30, 0x6b, 0x4f, 0x29, + 0x81, 0xba, 0x1a, 0x05, 0x43, 0x32, 0xe7, 0x8d, +}; +static const unsigned char kat2125_retbits[] = { + 0xef, 0x45, 0xa0, 0xe1, 0x1a, 0x2e, 0xc4, 0x00, 0x89, 0x45, 0xbb, 0xf2, + 0xe2, 0xa3, 0x9f, 0xf2, 0x6b, 0xf4, 0xce, 0x12, 0x62, 0x40, 0x12, 0x93, + 0x32, 0x64, 0x86, 0x41, 0x2e, 0x77, 0xe7, 0x13, 0x5f, 0xc3, 0xbc, 0xba, + 0x60, 0xc2, 0x61, 0x3b, 0x48, 0x93, 0xd3, 0x75, 0x5b, 0xd2, 0x25, 0x37, + 0xab, 0x34, 0x75, 0x85, 0x93, 0x12, 0x16, 0x15, 0x19, 0x10, 0xcb, 0xf9, + 0x68, 0x76, 0xb3, 0x00, +}; +static const struct drbg_kat_pr_false kat2125_t = { + 9, kat2125_entropyin, kat2125_nonce, kat2125_persstr, + kat2125_entropyinreseed, kat2125_addinreseed, kat2125_addin0, + kat2125_addin1, kat2125_retbits +}; +static const struct drbg_kat kat2125 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2125_t +}; + +static const unsigned char kat2126_entropyin[] = { + 0x23, 0xf3, 0x2f, 0xd6, 0xa8, 0x09, 0x79, 0xd0, 0x04, 0xdd, 0xeb, 0xa2, + 0xfb, 0xce, 0xa7, 0x30, 0x65, 0x94, 0x20, 0x68, 0x07, 0xe6, 0x6e, 0xd0, + 0x5e, 0x8a, 0xa4, 0x64, 0xec, 0x91, 0xb7, 0x14, +}; +static const unsigned char kat2126_nonce[] = { + 0x75, 0x31, 0x14, 0xf0, 0x3f, 0x8f, 0xa5, 0x14, 0xb7, 0xd3, 0x09, 0xad, + 0xc9, 0x0a, 0xa5, 0x49, +}; +static const unsigned char kat2126_persstr[] = {0}; +static const unsigned char kat2126_entropyinreseed[] = { + 0xe0, 0x32, 0x91, 0xac, 0x01, 0x95, 0x89, 0x46, 0xc9, 0x68, 0x8e, 0xaa, + 0x3a, 0xe7, 0x93, 0x35, 0x7e, 0x9f, 0x75, 0xb4, 0x71, 0x53, 0xd7, 0x1b, + 0x26, 0x37, 0x5f, 0x6a, 0x10, 0x07, 0x0a, 0xdd, +}; +static const unsigned char kat2126_addinreseed[] = { + 0x7a, 0xd9, 0x39, 0x8a, 0x31, 0x37, 0xa1, 0xd5, 0x22, 0xe0, 0xe2, 0x22, + 0x95, 0x02, 0x05, 0x9b, 0xed, 0xc0, 0xb4, 0x85, 0x49, 0x59, 0x80, 0x9e, + 0xef, 0x19, 0xad, 0xaf, 0x9f, 0x59, 0x3a, 0x70, +}; +static const unsigned char kat2126_addin0[] = { + 0xb0, 0xd4, 0xe8, 0x96, 0xb9, 0xa0, 0xbe, 0xa0, 0x73, 0xd4, 0x29, 0xc9, + 0x62, 0x8c, 0x23, 0x75, 0xaa, 0x89, 0x66, 0xfb, 0x3e, 0xf4, 0x4c, 0xf4, + 0xe4, 0x01, 0x02, 0x97, 0x63, 0x5b, 0xab, 0xd8, +}; +static const unsigned char kat2126_addin1[] = { + 0x08, 0xb1, 0xf2, 0xd6, 0x9c, 0x90, 0x00, 0x7c, 0xaf, 0x10, 0xbb, 0x98, + 0x8b, 0xaf, 0x3f, 0x7e, 0xd9, 0xed, 0xc5, 0xfa, 0x49, 0xf9, 0x1e, 0xa6, + 0x82, 0x67, 0x59, 0x60, 0x95, 0x88, 0x26, 0xc0, +}; +static const unsigned char kat2126_retbits[] = { + 0x0b, 0x24, 0xd8, 0xfa, 0xdd, 0xe9, 0x49, 0xb8, 0xce, 0x0a, 0x44, 0xa5, + 0x5c, 0xff, 0x2a, 0xfd, 0x20, 0x35, 0x8b, 0xe7, 0x57, 0x99, 0x32, 0xb3, + 0xa5, 0xbb, 0xc4, 0x1c, 0xc9, 0xcc, 0xe2, 0xbc, 0x10, 0x78, 0x47, 0xdd, + 0x14, 0xe3, 0x34, 0xda, 0x5c, 0x8e, 0xb3, 0xfe, 0x03, 0x97, 0x60, 0x46, + 0x27, 0xa9, 0x3f, 0x87, 0x91, 0xd6, 0x4a, 0x41, 0x6c, 0x6f, 0x83, 0x22, + 0x42, 0xaf, 0x05, 0xde, +}; +static const struct drbg_kat_pr_false kat2126_t = { + 10, kat2126_entropyin, kat2126_nonce, kat2126_persstr, + kat2126_entropyinreseed, kat2126_addinreseed, kat2126_addin0, + kat2126_addin1, kat2126_retbits +}; +static const struct drbg_kat kat2126 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2126_t +}; + +static const unsigned char kat2127_entropyin[] = { + 0x7f, 0xf4, 0x9d, 0x51, 0xb6, 0xbc, 0x73, 0x01, 0xd2, 0xd3, 0x3a, 0x13, + 0x76, 0x78, 0x2c, 0x95, 0x10, 0xf2, 0xb1, 0x6e, 0x83, 0x9c, 0xe2, 0xd2, + 0x85, 0x63, 0xfc, 0x28, 0x78, 0xf6, 0x2e, 0x16, +}; +static const unsigned char kat2127_nonce[] = { + 0x88, 0xb7, 0x48, 0x9a, 0xb9, 0x75, 0x45, 0x03, 0xe9, 0x80, 0x58, 0xc4, + 0xcd, 0x9a, 0x18, 0xf4, +}; +static const unsigned char kat2127_persstr[] = {0}; +static const unsigned char kat2127_entropyinreseed[] = { + 0x17, 0xcb, 0xc9, 0x23, 0x6b, 0x1a, 0x43, 0x5d, 0x17, 0xed, 0x3e, 0x7f, + 0x43, 0x84, 0x83, 0x39, 0x40, 0xb8, 0x74, 0xbc, 0x26, 0xdd, 0x64, 0xab, + 0xda, 0x01, 0x83, 0xf2, 0xf1, 0x4b, 0x7a, 0xa4, +}; +static const unsigned char kat2127_addinreseed[] = { + 0x55, 0x78, 0x0b, 0x47, 0x16, 0x28, 0xcb, 0xcc, 0xa5, 0xbb, 0x71, 0x6c, + 0x42, 0xc8, 0x08, 0x3e, 0x1d, 0x45, 0x5e, 0xbe, 0x56, 0x9d, 0x39, 0xfa, + 0x65, 0x6b, 0x0b, 0xee, 0x1b, 0xba, 0xe1, 0xfd, +}; +static const unsigned char kat2127_addin0[] = { + 0xa5, 0xf9, 0x4d, 0xfa, 0x79, 0x88, 0xbc, 0xf8, 0x8b, 0xde, 0x68, 0xf7, + 0x31, 0x12, 0x48, 0xe4, 0xdf, 0x8b, 0xe9, 0xaf, 0x8d, 0xf3, 0xf4, 0x81, + 0x4e, 0x97, 0x6b, 0x75, 0x1c, 0x23, 0x11, 0x3a, +}; +static const unsigned char kat2127_addin1[] = { + 0x59, 0x87, 0xbf, 0xb2, 0x7d, 0x2f, 0xe8, 0xf5, 0xca, 0x95, 0x53, 0x9a, + 0x85, 0x35, 0xa8, 0xcc, 0x3d, 0xa2, 0x67, 0x70, 0xc7, 0x3f, 0xf3, 0x4e, + 0xe8, 0xd3, 0x76, 0x47, 0x44, 0x83, 0xf3, 0x2a, +}; +static const unsigned char kat2127_retbits[] = { + 0x63, 0x07, 0x1a, 0x08, 0xf1, 0xc2, 0x55, 0xad, 0x89, 0x87, 0xe8, 0x34, + 0x88, 0x2d, 0xa0, 0xeb, 0xff, 0xe5, 0xee, 0x72, 0xfd, 0xf4, 0xb4, 0xbf, + 0xcd, 0xc4, 0xb7, 0x80, 0x82, 0xee, 0xcc, 0x5e, 0x3a, 0x59, 0xb2, 0x18, + 0xb9, 0xd9, 0x08, 0x4d, 0xef, 0xdf, 0x06, 0x1f, 0xe6, 0xaf, 0x5d, 0xd5, + 0x70, 0xcb, 0x93, 0x2e, 0xf4, 0x4f, 0xf6, 0x41, 0xd4, 0x74, 0xaa, 0x04, + 0x58, 0x7f, 0xd7, 0x12, +}; +static const struct drbg_kat_pr_false kat2127_t = { + 11, kat2127_entropyin, kat2127_nonce, kat2127_persstr, + kat2127_entropyinreseed, kat2127_addinreseed, kat2127_addin0, + kat2127_addin1, kat2127_retbits +}; +static const struct drbg_kat kat2127 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2127_t +}; + +static const unsigned char kat2128_entropyin[] = { + 0x59, 0xc6, 0x24, 0x97, 0x25, 0x40, 0x13, 0x30, 0x29, 0xe9, 0x15, 0x62, + 0x33, 0x2c, 0xcf, 0x40, 0xf7, 0xb5, 0x56, 0x28, 0x64, 0x07, 0xa7, 0x3e, + 0xa7, 0xc9, 0xdf, 0x43, 0x04, 0xd2, 0xf3, 0x25, +}; +static const unsigned char kat2128_nonce[] = { + 0xc0, 0xe4, 0x7a, 0x74, 0xbb, 0x19, 0xd6, 0xb1, 0x60, 0x96, 0x36, 0x4c, + 0x37, 0xba, 0x0c, 0xe5, +}; +static const unsigned char kat2128_persstr[] = {0}; +static const unsigned char kat2128_entropyinreseed[] = { + 0xcc, 0xa8, 0xc1, 0xbb, 0x44, 0x82, 0xa4, 0x83, 0x34, 0x39, 0x19, 0x76, + 0x57, 0xb1, 0x1d, 0x64, 0xa5, 0xe6, 0x56, 0xe0, 0xe6, 0x1a, 0xe7, 0x1d, + 0x90, 0x51, 0x58, 0xc0, 0xd9, 0xbf, 0xa3, 0xaf, +}; +static const unsigned char kat2128_addinreseed[] = { + 0x41, 0x28, 0x78, 0xf5, 0x68, 0x08, 0x31, 0x61, 0xe5, 0xc8, 0x60, 0x8b, + 0xa6, 0x12, 0x80, 0x77, 0x33, 0x96, 0x73, 0x0f, 0x79, 0x16, 0x00, 0x39, + 0x01, 0x03, 0x39, 0x5c, 0x7e, 0x80, 0xc6, 0x00, +}; +static const unsigned char kat2128_addin0[] = { + 0x04, 0x8e, 0xcc, 0xc9, 0x29, 0xef, 0x23, 0xbb, 0x41, 0x4d, 0x3d, 0x1a, + 0x4e, 0x6e, 0xc7, 0x03, 0xb0, 0x32, 0xf2, 0x1a, 0x23, 0xd5, 0x94, 0x08, + 0x15, 0xef, 0xdb, 0x06, 0x0b, 0xe5, 0x95, 0x42, +}; +static const unsigned char kat2128_addin1[] = { + 0x43, 0x30, 0xd5, 0x48, 0x7d, 0x71, 0x70, 0xf5, 0x5e, 0xdb, 0x3a, 0x50, + 0x93, 0x6c, 0x75, 0xbb, 0xf5, 0x23, 0x0f, 0x24, 0x7b, 0x29, 0x52, 0x45, + 0xca, 0x10, 0x78, 0xd8, 0xb6, 0x46, 0xe5, 0x2d, +}; +static const unsigned char kat2128_retbits[] = { + 0x6c, 0x58, 0x12, 0x77, 0x55, 0x6d, 0x56, 0xa3, 0x3d, 0x15, 0x48, 0xca, + 0xe0, 0x32, 0x0c, 0x5e, 0x40, 0xa7, 0x9a, 0x81, 0x31, 0xbf, 0xe5, 0x64, + 0x60, 0x4d, 0x5e, 0x05, 0xb1, 0x0c, 0xce, 0x0a, 0x9f, 0x69, 0xcf, 0x32, + 0x4b, 0xa3, 0xd5, 0x2a, 0x04, 0xa8, 0x56, 0x35, 0x8d, 0xf5, 0xef, 0x72, + 0x0c, 0xa2, 0x5a, 0xf4, 0xd6, 0x6a, 0x8d, 0x5b, 0xf9, 0x16, 0x21, 0x76, + 0xfa, 0xc7, 0xf1, 0x70, +}; +static const struct drbg_kat_pr_false kat2128_t = { + 12, kat2128_entropyin, kat2128_nonce, kat2128_persstr, + kat2128_entropyinreseed, kat2128_addinreseed, kat2128_addin0, + kat2128_addin1, kat2128_retbits +}; +static const struct drbg_kat kat2128 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2128_t +}; + +static const unsigned char kat2129_entropyin[] = { + 0x43, 0x60, 0xd1, 0xf9, 0x2c, 0xa7, 0x60, 0x0f, 0x95, 0x4e, 0xab, 0x31, + 0x0a, 0xa1, 0xb4, 0xe5, 0x84, 0xf3, 0x27, 0x94, 0xa2, 0x7c, 0xb4, 0xa4, + 0x99, 0x8f, 0xc5, 0x16, 0x97, 0x32, 0x62, 0xaf, +}; +static const unsigned char kat2129_nonce[] = { + 0xac, 0xd8, 0xb9, 0x47, 0xd3, 0xf3, 0x25, 0x2c, 0xc1, 0x1f, 0x22, 0xd4, + 0x7c, 0xe7, 0x28, 0xf3, +}; +static const unsigned char kat2129_persstr[] = {0}; +static const unsigned char kat2129_entropyinreseed[] = { + 0x81, 0x5c, 0x19, 0x40, 0x6b, 0x7f, 0x65, 0x9b, 0x65, 0x61, 0xc7, 0x23, + 0x2c, 0xe3, 0x0e, 0x71, 0x9f, 0xca, 0x70, 0x04, 0xc6, 0x6e, 0xd6, 0xf0, + 0x59, 0x64, 0x72, 0x34, 0x0c, 0x24, 0xed, 0x13, +}; +static const unsigned char kat2129_addinreseed[] = { + 0xb4, 0xe5, 0xc9, 0xb9, 0xd4, 0x54, 0xcb, 0x10, 0x98, 0xbb, 0x94, 0x96, + 0x14, 0xa8, 0x4c, 0x36, 0xce, 0xe8, 0xfb, 0x57, 0xc6, 0x27, 0xea, 0x86, + 0x31, 0xf5, 0xc0, 0xb6, 0x30, 0x3a, 0x21, 0x37, +}; +static const unsigned char kat2129_addin0[] = { + 0xab, 0xef, 0xd6, 0xa5, 0xf2, 0xe8, 0x8a, 0x69, 0x79, 0x06, 0xd7, 0x4b, + 0x23, 0xb3, 0x9a, 0xf9, 0x7a, 0x19, 0x5a, 0x30, 0xb8, 0xc6, 0x3d, 0x22, + 0x6b, 0xae, 0x6b, 0x2d, 0xdf, 0x29, 0x56, 0xbe, +}; +static const unsigned char kat2129_addin1[] = { + 0xd3, 0xf2, 0x27, 0x7e, 0x1e, 0x89, 0xdc, 0x6c, 0xd9, 0x75, 0xe7, 0xd7, + 0x7d, 0xca, 0x4b, 0x74, 0xbf, 0x67, 0xc6, 0x8b, 0x4e, 0x8d, 0xbb, 0xc2, + 0xbb, 0x1c, 0xd0, 0x29, 0x8b, 0x3d, 0xf0, 0x75, +}; +static const unsigned char kat2129_retbits[] = { + 0x1a, 0xf3, 0x58, 0x62, 0x99, 0xe7, 0xfb, 0x06, 0x9d, 0x13, 0xcf, 0x8e, + 0x16, 0x97, 0xcd, 0x3d, 0x24, 0xfd, 0x1b, 0x1c, 0x65, 0x6b, 0x64, 0xc2, + 0xc5, 0x6c, 0xfb, 0x5f, 0x32, 0x15, 0x68, 0xc4, 0x35, 0xae, 0x15, 0x24, + 0xf5, 0x7a, 0x86, 0x09, 0x7a, 0xbd, 0xf0, 0x88, 0xfd, 0x35, 0x5d, 0xb9, + 0x8a, 0x1b, 0xd2, 0x4c, 0xe8, 0x2a, 0xf7, 0xfb, 0x0b, 0xd3, 0xfe, 0x5e, + 0x0b, 0x26, 0x36, 0x15, +}; +static const struct drbg_kat_pr_false kat2129_t = { + 13, kat2129_entropyin, kat2129_nonce, kat2129_persstr, + kat2129_entropyinreseed, kat2129_addinreseed, kat2129_addin0, + kat2129_addin1, kat2129_retbits +}; +static const struct drbg_kat kat2129 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2129_t +}; + +static const unsigned char kat2130_entropyin[] = { + 0x18, 0x14, 0x21, 0xb5, 0xee, 0x17, 0x84, 0x1e, 0x23, 0x92, 0xdf, 0x0b, + 0xe3, 0xbe, 0xbc, 0xb4, 0xe9, 0x05, 0xbb, 0x5c, 0xdf, 0x7c, 0xdd, 0xa6, + 0xb9, 0x60, 0x4f, 0x81, 0x45, 0x0b, 0xfa, 0x23, +}; +static const unsigned char kat2130_nonce[] = { + 0x7e, 0x9d, 0xe5, 0xb3, 0x72, 0x41, 0xf1, 0xc4, 0xea, 0x91, 0x07, 0x00, + 0xd8, 0xf8, 0x60, 0x94, +}; +static const unsigned char kat2130_persstr[] = {0}; +static const unsigned char kat2130_entropyinreseed[] = { + 0xc3, 0xe2, 0xe3, 0x8d, 0xe2, 0xb2, 0x6b, 0x35, 0x99, 0x62, 0xab, 0xf5, + 0x6b, 0xbf, 0xe4, 0xcb, 0x73, 0x63, 0x4f, 0x79, 0xc1, 0x21, 0x46, 0x9d, + 0x45, 0x44, 0x68, 0x8d, 0x65, 0xe9, 0xce, 0xc9, +}; +static const unsigned char kat2130_addinreseed[] = { + 0xcf, 0x24, 0xf3, 0x4c, 0xc1, 0xd7, 0x65, 0xe8, 0x82, 0x93, 0xa7, 0x70, + 0x7c, 0xf5, 0x22, 0xc2, 0x98, 0xea, 0x33, 0x5b, 0xfc, 0xc9, 0xd9, 0xa6, + 0xe8, 0x0b, 0xce, 0x3d, 0x57, 0x55, 0x58, 0x2c, +}; +static const unsigned char kat2130_addin0[] = { + 0x1b, 0xe2, 0x40, 0x10, 0x85, 0x0f, 0x9a, 0xa3, 0xaa, 0x0f, 0x50, 0xc9, + 0x8b, 0xe8, 0x15, 0x70, 0x9d, 0x5e, 0x7a, 0x3d, 0xcf, 0xf9, 0x75, 0x8b, + 0x1a, 0xc5, 0x1b, 0x5a, 0x66, 0x64, 0x1c, 0x68, +}; +static const unsigned char kat2130_addin1[] = { + 0x39, 0x08, 0x25, 0x0e, 0x9a, 0xc3, 0xb3, 0xa8, 0x82, 0x3f, 0x6d, 0x61, + 0x56, 0x34, 0x8e, 0x55, 0xc3, 0x5d, 0xab, 0x68, 0x1b, 0x48, 0x51, 0xc3, + 0x9a, 0xd6, 0x39, 0x3e, 0x42, 0xa3, 0x46, 0x9e, +}; +static const unsigned char kat2130_retbits[] = { + 0xd4, 0x76, 0x63, 0xde, 0x21, 0x3d, 0x5a, 0x15, 0xdc, 0xf3, 0x76, 0x74, + 0xd7, 0x13, 0xc8, 0x50, 0xc1, 0x4c, 0xfd, 0x7b, 0x1e, 0xfd, 0x62, 0xf0, + 0xe3, 0xdd, 0x1c, 0xdb, 0x51, 0xdc, 0xae, 0xd4, 0x3f, 0xc0, 0xb6, 0x60, + 0xae, 0xef, 0x38, 0x58, 0xee, 0x5e, 0x91, 0x1e, 0x17, 0xc0, 0xbd, 0x74, + 0x8c, 0x3b, 0x76, 0x2e, 0xbd, 0x59, 0x5a, 0x02, 0x75, 0x90, 0x2b, 0x69, + 0xe7, 0x53, 0xc1, 0x11, +}; +static const struct drbg_kat_pr_false kat2130_t = { + 14, kat2130_entropyin, kat2130_nonce, kat2130_persstr, + kat2130_entropyinreseed, kat2130_addinreseed, kat2130_addin0, + kat2130_addin1, kat2130_retbits +}; +static const struct drbg_kat kat2130 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat2130_t +}; + +static const unsigned char kat2131_entropyin[] = { + 0xfb, 0xae, 0x3e, 0xe0, 0x21, 0x05, 0xa8, 0xa2, 0x35, 0x3b, 0xbe, 0x9d, + 0x80, 0x68, 0x29, 0xcf, 0x78, 0xc8, 0xc3, 0x12, 0xc7, 0x82, 0xab, 0xf1, + 0x55, 0x4c, 0x66, 0x46, 0xcc, 0x37, 0xa1, 0xe5, +}; +static const unsigned char kat2131_nonce[] = { + 0xb0, 0x47, 0x99, 0x00, 0xa4, 0x04, 0xe8, 0xe7, 0x9c, 0x5f, 0x2f, 0xd7, + 0x81, 0x92, 0x32, 0xb9, +}; +static const unsigned char kat2131_persstr[] = { + 0x54, 0x90, 0x9f, 0xaf, 0xc8, 0xf7, 0x04, 0x28, 0x89, 0x2f, 0x8d, 0x32, + 0xed, 0x51, 0xe9, 0x56, 0x72, 0x89, 0x21, 0x92, 0xd3, 0x95, 0x54, 0x09, + 0xe8, 0x9c, 0x53, 0xdc, 0x69, 0x80, 0xd0, 0xaf, +}; +static const unsigned char kat2131_entropyinreseed[] = { + 0xaa, 0xb3, 0x6c, 0x9f, 0xab, 0x8b, 0xea, 0x6b, 0x9d, 0xeb, 0x70, 0x1f, + 0xdf, 0x56, 0x5d, 0x51, 0xe7, 0xa1, 0x8b, 0x38, 0x98, 0x08, 0xf8, 0xb9, + 0x38, 0x37, 0x5d, 0x76, 0xf8, 0x65, 0x78, 0x42, +}; +static const unsigned char kat2131_addinreseed[] = {0}; +static const unsigned char kat2131_addin0[] = {0}; +static const unsigned char kat2131_addin1[] = {0}; +static const unsigned char kat2131_retbits[] = { + 0x8d, 0x17, 0x00, 0xf1, 0xf6, 0x32, 0xdf, 0x34, 0x00, 0xaf, 0x0c, 0xc9, + 0x1c, 0x4d, 0x3d, 0x11, 0xda, 0x03, 0x49, 0x93, 0xdf, 0x50, 0x43, 0xce, + 0xfa, 0x49, 0xfb, 0xc0, 0x17, 0x84, 0xed, 0x78, 0x09, 0x9e, 0xec, 0x91, + 0xd0, 0x93, 0x95, 0x08, 0x4d, 0xf3, 0x25, 0xba, 0x02, 0xcd, 0xbd, 0x5b, + 0x1a, 0xbc, 0x64, 0xf9, 0xe3, 0x47, 0xd8, 0x1a, 0xe0, 0x91, 0xec, 0x08, + 0x1f, 0xe2, 0x7d, 0x4c, +}; +static const struct drbg_kat_pr_false kat2131_t = { + 0, kat2131_entropyin, kat2131_nonce, kat2131_persstr, + kat2131_entropyinreseed, kat2131_addinreseed, kat2131_addin0, + kat2131_addin1, kat2131_retbits +}; +static const struct drbg_kat kat2131 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2131_t +}; + +static const unsigned char kat2132_entropyin[] = { + 0x7d, 0x4f, 0x11, 0x35, 0xa5, 0x2b, 0xc8, 0x6c, 0x13, 0x75, 0x0f, 0xcc, + 0x1e, 0x02, 0xd3, 0x1d, 0x51, 0xaf, 0x05, 0x73, 0x40, 0x5e, 0x7e, 0xe1, + 0xb6, 0x1a, 0x5a, 0xec, 0x6f, 0x96, 0x9a, 0xc9, +}; +static const unsigned char kat2132_nonce[] = { + 0xc2, 0xb9, 0x95, 0x98, 0x8a, 0x6f, 0xdc, 0xbe, 0x04, 0x3a, 0x41, 0x5a, + 0xbb, 0x20, 0xf6, 0xd9, +}; +static const unsigned char kat2132_persstr[] = { + 0xc8, 0x1a, 0x7c, 0x88, 0x16, 0x9f, 0x1c, 0xe6, 0x4f, 0x5b, 0x8e, 0xdd, + 0x1e, 0xcc, 0xfa, 0xa1, 0xab, 0x85, 0x3e, 0x48, 0x79, 0x96, 0xc2, 0x4d, + 0x13, 0x68, 0xaf, 0x36, 0x4f, 0xfe, 0x8c, 0xb8, +}; +static const unsigned char kat2132_entropyinreseed[] = { + 0x98, 0x77, 0x2d, 0xb6, 0xc0, 0x38, 0xa6, 0xbf, 0xe3, 0x28, 0xc9, 0xdb, + 0x05, 0x93, 0xbb, 0x12, 0xc7, 0x1c, 0xb1, 0x4d, 0x12, 0xff, 0x5c, 0x5e, + 0x6a, 0xa1, 0x12, 0x01, 0xbd, 0x7e, 0x06, 0x58, +}; +static const unsigned char kat2132_addinreseed[] = {0}; +static const unsigned char kat2132_addin0[] = {0}; +static const unsigned char kat2132_addin1[] = {0}; +static const unsigned char kat2132_retbits[] = { + 0xd5, 0xe5, 0xcf, 0x6a, 0x1d, 0x67, 0x28, 0xc5, 0x0a, 0x95, 0x8c, 0xfa, + 0x9e, 0x38, 0x53, 0xa3, 0x78, 0xf4, 0xb4, 0x7d, 0x2a, 0x8b, 0xb8, 0x41, + 0xae, 0xf6, 0xbc, 0x55, 0x83, 0x51, 0x43, 0xfe, 0x41, 0x18, 0x60, 0xe4, + 0xb3, 0xaf, 0xbf, 0xc9, 0x48, 0xff, 0x87, 0xcf, 0x6e, 0x65, 0x33, 0x36, + 0x42, 0x2d, 0xcc, 0x36, 0xb6, 0x06, 0x56, 0x0d, 0xf6, 0x6b, 0xca, 0xfd, + 0x83, 0x02, 0xd7, 0xc5, +}; +static const struct drbg_kat_pr_false kat2132_t = { + 1, kat2132_entropyin, kat2132_nonce, kat2132_persstr, + kat2132_entropyinreseed, kat2132_addinreseed, kat2132_addin0, + kat2132_addin1, kat2132_retbits +}; +static const struct drbg_kat kat2132 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2132_t +}; + +static const unsigned char kat2133_entropyin[] = { + 0x03, 0xcd, 0x4e, 0x03, 0x10, 0x89, 0x59, 0xa5, 0x87, 0xa2, 0x09, 0x76, + 0x54, 0x12, 0xc2, 0xde, 0xb8, 0x85, 0x85, 0x36, 0x9a, 0xa7, 0x28, 0x0a, + 0xd9, 0x5a, 0xbd, 0xe3, 0xbc, 0x5e, 0x6b, 0x61, +}; +static const unsigned char kat2133_nonce[] = { + 0x49, 0x9c, 0x15, 0x12, 0xbc, 0x86, 0xf1, 0xb0, 0xeb, 0x1a, 0x06, 0x27, + 0xdc, 0xe2, 0xcc, 0x39, +}; +static const unsigned char kat2133_persstr[] = { + 0x33, 0x56, 0xaf, 0xd6, 0x03, 0x65, 0x38, 0x85, 0x38, 0xc2, 0x77, 0xb8, + 0x7c, 0xc8, 0x2f, 0x4d, 0x10, 0xa2, 0xfa, 0x61, 0x84, 0xba, 0x36, 0xca, + 0xc3, 0xf7, 0x12, 0xd5, 0x84, 0xd6, 0x5d, 0xc2, +}; +static const unsigned char kat2133_entropyinreseed[] = { + 0x61, 0xe0, 0x5c, 0x8b, 0x87, 0xa3, 0x5d, 0x5b, 0xe4, 0x7f, 0xed, 0x54, + 0xeb, 0xf7, 0x54, 0x3d, 0xdd, 0xa1, 0x3b, 0xcb, 0xb9, 0x42, 0xd0, 0x80, + 0x71, 0x8c, 0xce, 0xb0, 0x7e, 0xd7, 0x18, 0x08, +}; +static const unsigned char kat2133_addinreseed[] = {0}; +static const unsigned char kat2133_addin0[] = {0}; +static const unsigned char kat2133_addin1[] = {0}; +static const unsigned char kat2133_retbits[] = { + 0x2e, 0xfa, 0xbe, 0x7f, 0x94, 0x4c, 0xe4, 0x9e, 0x27, 0xb8, 0x6f, 0xda, + 0x4e, 0x0d, 0xd9, 0xc4, 0x6f, 0x11, 0x9c, 0xa2, 0x54, 0x1c, 0x87, 0x81, + 0xdb, 0xec, 0x6b, 0xe2, 0xcc, 0x74, 0xce, 0x9a, 0xc2, 0x08, 0xb2, 0x4b, + 0xe5, 0x75, 0x83, 0x75, 0x72, 0x0f, 0x1c, 0x42, 0xe0, 0x41, 0x87, 0x62, + 0x3d, 0x2c, 0xcd, 0xce, 0x73, 0x43, 0xd7, 0xc8, 0xc1, 0x24, 0x4a, 0x66, + 0x92, 0x6e, 0x28, 0x66, +}; +static const struct drbg_kat_pr_false kat2133_t = { + 2, kat2133_entropyin, kat2133_nonce, kat2133_persstr, + kat2133_entropyinreseed, kat2133_addinreseed, kat2133_addin0, + kat2133_addin1, kat2133_retbits +}; +static const struct drbg_kat kat2133 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2133_t +}; + +static const unsigned char kat2134_entropyin[] = { + 0xe9, 0xa3, 0x3f, 0xee, 0xf5, 0x45, 0x5b, 0xe5, 0x7a, 0x87, 0x6a, 0x4e, + 0xaf, 0xd4, 0xfe, 0xbb, 0x02, 0xa3, 0x13, 0xc7, 0x7c, 0x64, 0x21, 0x7f, + 0xfb, 0x8c, 0x6f, 0xdb, 0x2c, 0x46, 0xfd, 0x9b, +}; +static const unsigned char kat2134_nonce[] = { + 0xb0, 0xa2, 0x56, 0x1d, 0x86, 0xf4, 0x12, 0x78, 0x71, 0xdc, 0x6c, 0x09, + 0x17, 0xfe, 0x01, 0xde, +}; +static const unsigned char kat2134_persstr[] = { + 0x62, 0x31, 0xa9, 0x99, 0xd0, 0x0e, 0x07, 0x96, 0x2d, 0x98, 0x26, 0x09, + 0x5e, 0xd0, 0xc2, 0x49, 0x81, 0x7d, 0x86, 0x47, 0xae, 0x02, 0xd1, 0x7c, + 0x25, 0x05, 0x74, 0x38, 0xea, 0xc5, 0xb5, 0x06, +}; +static const unsigned char kat2134_entropyinreseed[] = { + 0x71, 0x21, 0xa3, 0x8b, 0x59, 0xf8, 0x0a, 0x53, 0x64, 0x1b, 0x0c, 0xeb, + 0xe2, 0xa6, 0xd1, 0xae, 0xeb, 0xf6, 0xe3, 0x66, 0x96, 0x48, 0x2d, 0x54, + 0xa5, 0xb5, 0xbf, 0x0a, 0xd4, 0x49, 0x02, 0x93, +}; +static const unsigned char kat2134_addinreseed[] = {0}; +static const unsigned char kat2134_addin0[] = {0}; +static const unsigned char kat2134_addin1[] = {0}; +static const unsigned char kat2134_retbits[] = { + 0x16, 0x5f, 0x56, 0xa0, 0x1e, 0x61, 0x94, 0x4e, 0xee, 0x87, 0xce, 0x0c, + 0x75, 0x2a, 0x8a, 0x31, 0x11, 0x7d, 0x6e, 0xad, 0x60, 0xc3, 0x7b, 0xea, + 0xa0, 0x5d, 0x8a, 0x39, 0xec, 0x6f, 0x42, 0xb6, 0xb9, 0xc9, 0x0e, 0x47, + 0x1c, 0x84, 0x0a, 0x61, 0x72, 0xfa, 0xcd, 0x9a, 0x1b, 0xd3, 0xdb, 0x7d, + 0x47, 0x70, 0x9d, 0x66, 0x5b, 0x49, 0x40, 0x7a, 0x23, 0x02, 0x0d, 0xaf, + 0xb8, 0x97, 0xe8, 0x53, +}; +static const struct drbg_kat_pr_false kat2134_t = { + 3, kat2134_entropyin, kat2134_nonce, kat2134_persstr, + kat2134_entropyinreseed, kat2134_addinreseed, kat2134_addin0, + kat2134_addin1, kat2134_retbits +}; +static const struct drbg_kat kat2134 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2134_t +}; + +static const unsigned char kat2135_entropyin[] = { + 0x05, 0xbd, 0xd4, 0xe1, 0x43, 0x18, 0x0e, 0x1b, 0xe2, 0xd2, 0xa5, 0x61, + 0xb9, 0x05, 0x59, 0x26, 0x8e, 0x46, 0x2a, 0xd5, 0x68, 0x69, 0xf5, 0xf5, + 0xd3, 0x48, 0x0f, 0xc4, 0xbd, 0xd1, 0xe6, 0x82, +}; +static const unsigned char kat2135_nonce[] = { + 0x74, 0x7d, 0x40, 0xd2, 0x0f, 0x46, 0xa7, 0xf3, 0x9a, 0xe5, 0x2b, 0xab, + 0x17, 0xca, 0x61, 0xce, +}; +static const unsigned char kat2135_persstr[] = { + 0x40, 0x3e, 0x35, 0xaf, 0x4f, 0xfa, 0xe9, 0xe3, 0xee, 0x2d, 0x5f, 0x27, + 0x7e, 0x69, 0xb2, 0x9d, 0x3f, 0x4a, 0x8d, 0xac, 0x36, 0x69, 0x1d, 0xdb, + 0x31, 0x50, 0x7d, 0xda, 0x6f, 0xbe, 0x66, 0x50, +}; +static const unsigned char kat2135_entropyinreseed[] = { + 0x5e, 0x4e, 0x32, 0xe9, 0x4e, 0xd5, 0xe1, 0xdc, 0x89, 0x4b, 0x7c, 0xf2, + 0x85, 0x7b, 0xf5, 0xe2, 0x21, 0x8e, 0x46, 0xf2, 0xb6, 0x9f, 0x8b, 0xf4, + 0x55, 0x5b, 0xcc, 0xa6, 0x15, 0x68, 0xaf, 0x33, +}; +static const unsigned char kat2135_addinreseed[] = {0}; +static const unsigned char kat2135_addin0[] = {0}; +static const unsigned char kat2135_addin1[] = {0}; +static const unsigned char kat2135_retbits[] = { + 0xa3, 0x68, 0x46, 0xc7, 0x20, 0x11, 0x87, 0x36, 0xd0, 0x99, 0x2a, 0x0a, + 0xfe, 0xb0, 0x85, 0x30, 0xa2, 0xa3, 0xb6, 0x8b, 0xed, 0x0c, 0x76, 0x07, + 0x6e, 0xa6, 0x52, 0x50, 0x91, 0x17, 0x94, 0x3c, 0xee, 0x2f, 0x8f, 0x88, + 0x8f, 0x82, 0xc8, 0xc0, 0x40, 0x5c, 0xff, 0xec, 0x84, 0xb2, 0x14, 0x58, + 0x21, 0xca, 0x33, 0x68, 0x64, 0x35, 0xaf, 0xe1, 0x45, 0xc0, 0x4a, 0x49, + 0xdf, 0xe1, 0xcd, 0x7a, +}; +static const struct drbg_kat_pr_false kat2135_t = { + 4, kat2135_entropyin, kat2135_nonce, kat2135_persstr, + kat2135_entropyinreseed, kat2135_addinreseed, kat2135_addin0, + kat2135_addin1, kat2135_retbits +}; +static const struct drbg_kat kat2135 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2135_t +}; + +static const unsigned char kat2136_entropyin[] = { + 0xa6, 0x35, 0xe4, 0x3f, 0x3d, 0x97, 0xdc, 0x35, 0x11, 0x93, 0x2a, 0xef, + 0x96, 0x64, 0x98, 0x62, 0xb4, 0x68, 0x30, 0xdf, 0x9a, 0xc0, 0xeb, 0xbc, + 0x31, 0xb9, 0x32, 0xef, 0x51, 0xad, 0xa0, 0x5b, +}; +static const unsigned char kat2136_nonce[] = { + 0xb3, 0x8d, 0x99, 0x26, 0x19, 0x1b, 0x49, 0xeb, 0x99, 0x59, 0x81, 0xbb, + 0xfe, 0xce, 0xcb, 0xa3, +}; +static const unsigned char kat2136_persstr[] = { + 0xcd, 0x98, 0x38, 0xb0, 0x7d, 0x04, 0x1b, 0xe3, 0x13, 0x57, 0xfe, 0x9e, + 0xbc, 0x01, 0xfa, 0xf5, 0x47, 0x31, 0xcc, 0xb9, 0x05, 0x84, 0xd6, 0xc1, + 0x95, 0x23, 0xdf, 0x39, 0x89, 0xcd, 0x86, 0x6b, +}; +static const unsigned char kat2136_entropyinreseed[] = { + 0xb8, 0xd1, 0x11, 0xba, 0xcd, 0xf0, 0x1b, 0x76, 0xb1, 0x48, 0x2d, 0xa9, + 0xdf, 0x89, 0x76, 0xac, 0x34, 0xbf, 0xff, 0x06, 0xe1, 0x01, 0x84, 0x06, + 0x5a, 0x33, 0x9a, 0xda, 0xb8, 0x5a, 0x9b, 0xa5, +}; +static const unsigned char kat2136_addinreseed[] = {0}; +static const unsigned char kat2136_addin0[] = {0}; +static const unsigned char kat2136_addin1[] = {0}; +static const unsigned char kat2136_retbits[] = { + 0x6e, 0x0f, 0xc3, 0xde, 0x87, 0xa9, 0x92, 0x84, 0x77, 0x90, 0x5b, 0x9b, + 0x62, 0x1f, 0x3f, 0x9f, 0x86, 0xfe, 0xc7, 0x64, 0x30, 0x07, 0xe4, 0xb5, + 0x60, 0x85, 0x4f, 0xb2, 0x09, 0x9c, 0x7c, 0xaa, 0x58, 0xb8, 0x62, 0xc7, + 0xff, 0x21, 0x98, 0x0e, 0xd6, 0xf9, 0x1f, 0x78, 0x67, 0xa6, 0xec, 0x48, + 0x70, 0xe2, 0xc3, 0x2b, 0x34, 0x59, 0x28, 0x09, 0xb8, 0xaf, 0x17, 0x95, + 0x80, 0x7c, 0xa3, 0x4b, +}; +static const struct drbg_kat_pr_false kat2136_t = { + 5, kat2136_entropyin, kat2136_nonce, kat2136_persstr, + kat2136_entropyinreseed, kat2136_addinreseed, kat2136_addin0, + kat2136_addin1, kat2136_retbits +}; +static const struct drbg_kat kat2136 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2136_t +}; + +static const unsigned char kat2137_entropyin[] = { + 0x1f, 0xf0, 0x23, 0x99, 0x22, 0x87, 0x2d, 0x42, 0xcc, 0xb5, 0x95, 0xf7, + 0xbb, 0xdb, 0xe6, 0xad, 0x86, 0xcb, 0x39, 0x52, 0x25, 0x1e, 0x6e, 0x11, + 0x0b, 0x36, 0x0f, 0xbd, 0xf4, 0x19, 0x59, 0x1e, +}; +static const unsigned char kat2137_nonce[] = { + 0xa0, 0x07, 0x41, 0x6d, 0x48, 0x31, 0x24, 0x57, 0xff, 0xe0, 0x8b, 0x43, + 0x8b, 0x54, 0xd9, 0x29, +}; +static const unsigned char kat2137_persstr[] = { + 0x70, 0xa3, 0xf7, 0x36, 0x27, 0x45, 0xba, 0x47, 0xa9, 0xd5, 0xd5, 0x93, + 0x81, 0x7f, 0x09, 0x6d, 0x88, 0x18, 0x48, 0xf0, 0x77, 0xe8, 0x1f, 0x43, + 0x39, 0xe7, 0x9e, 0xff, 0xa9, 0x91, 0x9d, 0x82, +}; +static const unsigned char kat2137_entropyinreseed[] = { + 0x56, 0xc9, 0x68, 0xdc, 0x6d, 0x17, 0x03, 0xfb, 0x42, 0x93, 0x55, 0xa0, + 0x03, 0x3b, 0x5b, 0x61, 0xe8, 0x7a, 0x22, 0x61, 0x67, 0xbb, 0x36, 0x01, + 0x7c, 0x70, 0xc4, 0xb1, 0x77, 0xbb, 0x7a, 0xd8, +}; +static const unsigned char kat2137_addinreseed[] = {0}; +static const unsigned char kat2137_addin0[] = {0}; +static const unsigned char kat2137_addin1[] = {0}; +static const unsigned char kat2137_retbits[] = { + 0xd0, 0x37, 0xe0, 0xfa, 0x29, 0xbb, 0x5e, 0x48, 0xbb, 0x0e, 0x91, 0x4c, + 0x09, 0x5a, 0x11, 0x8c, 0xbd, 0xc4, 0x6a, 0x81, 0xb8, 0xa5, 0xb6, 0x8a, + 0x84, 0xcf, 0x82, 0x8e, 0xc3, 0x9c, 0xa4, 0x90, 0x94, 0x55, 0xcd, 0x00, + 0x21, 0x26, 0xae, 0x1c, 0x3d, 0xad, 0x12, 0x79, 0xbf, 0x33, 0xfc, 0xc7, + 0xd7, 0x47, 0x59, 0x05, 0xd3, 0xb5, 0xf4, 0xb9, 0x81, 0xc8, 0xfb, 0x15, + 0x8f, 0xe6, 0x7c, 0x8d, +}; +static const struct drbg_kat_pr_false kat2137_t = { + 6, kat2137_entropyin, kat2137_nonce, kat2137_persstr, + kat2137_entropyinreseed, kat2137_addinreseed, kat2137_addin0, + kat2137_addin1, kat2137_retbits +}; +static const struct drbg_kat kat2137 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2137_t +}; + +static const unsigned char kat2138_entropyin[] = { + 0xe4, 0xc6, 0xe4, 0x01, 0x0c, 0x7f, 0x5b, 0x79, 0xd0, 0x67, 0xe0, 0x35, + 0xea, 0xe4, 0xd0, 0xf7, 0xe4, 0xc6, 0xb3, 0x13, 0xc5, 0xd0, 0xf4, 0xdd, + 0xa3, 0xf0, 0x7f, 0x77, 0x0e, 0x63, 0x78, 0x19, +}; +static const unsigned char kat2138_nonce[] = { + 0x98, 0x2d, 0xdf, 0xcb, 0xe5, 0xb6, 0x55, 0xdb, 0xbf, 0x1f, 0x6e, 0x42, + 0x8c, 0x6e, 0xa2, 0x16, +}; +static const unsigned char kat2138_persstr[] = { + 0xd6, 0x11, 0x70, 0x48, 0xbe, 0xc5, 0x91, 0xf9, 0x0a, 0x46, 0x81, 0xd8, + 0xe6, 0x67, 0x70, 0x7f, 0x9a, 0xfc, 0xfe, 0x92, 0xf2, 0xea, 0xb8, 0x6e, + 0xf0, 0x4b, 0x68, 0xa4, 0x1d, 0xe1, 0x7f, 0x31, +}; +static const unsigned char kat2138_entropyinreseed[] = { + 0x02, 0x93, 0x9c, 0xd4, 0x00, 0x4a, 0xe8, 0x91, 0xb3, 0xbf, 0xcd, 0x21, + 0x00, 0x75, 0xc1, 0xa9, 0x78, 0x76, 0xc0, 0xce, 0xf8, 0x6d, 0x3e, 0xcf, + 0xeb, 0xe2, 0xc8, 0xca, 0xf8, 0x0f, 0xe2, 0x11, +}; +static const unsigned char kat2138_addinreseed[] = {0}; +static const unsigned char kat2138_addin0[] = {0}; +static const unsigned char kat2138_addin1[] = {0}; +static const unsigned char kat2138_retbits[] = { + 0xa4, 0x18, 0x2c, 0x34, 0xc1, 0xdf, 0x82, 0x7e, 0xc9, 0x3e, 0xbf, 0xa0, + 0xd5, 0x15, 0xcc, 0x7d, 0x6f, 0x8e, 0xe2, 0x2f, 0x3a, 0x76, 0x9a, 0x30, + 0xaf, 0x0c, 0xd5, 0xee, 0x74, 0x88, 0xab, 0x68, 0xf7, 0x0c, 0x4c, 0xe6, + 0x2e, 0xe3, 0x14, 0xa0, 0x47, 0x26, 0x8c, 0x00, 0x45, 0xfb, 0x1b, 0x7d, + 0x25, 0x84, 0xbd, 0xb6, 0x46, 0xc3, 0xed, 0x49, 0xc8, 0x85, 0x10, 0xb4, + 0xc5, 0x4a, 0x67, 0x6b, +}; +static const struct drbg_kat_pr_false kat2138_t = { + 7, kat2138_entropyin, kat2138_nonce, kat2138_persstr, + kat2138_entropyinreseed, kat2138_addinreseed, kat2138_addin0, + kat2138_addin1, kat2138_retbits +}; +static const struct drbg_kat kat2138 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2138_t +}; + +static const unsigned char kat2139_entropyin[] = { + 0x65, 0x2d, 0xb4, 0x0e, 0xda, 0x98, 0x90, 0x32, 0xae, 0x1e, 0xd5, 0xee, + 0x90, 0x1c, 0xbf, 0x95, 0x0c, 0x31, 0x83, 0x3a, 0x9d, 0x6f, 0x36, 0xe5, + 0x15, 0x9c, 0x2c, 0xc8, 0x24, 0x5d, 0xf3, 0xd6, +}; +static const unsigned char kat2139_nonce[] = { + 0x72, 0x80, 0x39, 0xb6, 0x72, 0xc1, 0x14, 0x9b, 0x9b, 0x48, 0xa1, 0x18, + 0xe6, 0x7f, 0x73, 0x8f, +}; +static const unsigned char kat2139_persstr[] = { + 0x14, 0xa9, 0x29, 0x92, 0xfc, 0xb0, 0x15, 0x77, 0x80, 0xf8, 0x19, 0x9a, + 0xf5, 0x6e, 0xd1, 0xca, 0xec, 0x8e, 0xe6, 0x24, 0xd9, 0x23, 0x2d, 0xa4, + 0xa1, 0x49, 0xc3, 0xd2, 0xa6, 0xe5, 0x34, 0x94, +}; +static const unsigned char kat2139_entropyinreseed[] = { + 0x8d, 0x6a, 0x04, 0x51, 0x3d, 0xd5, 0xbd, 0xd3, 0xee, 0x04, 0xdd, 0x9d, + 0xc0, 0xd4, 0x8e, 0xda, 0xc0, 0x41, 0x34, 0x8b, 0xf6, 0x95, 0x23, 0xa8, + 0x2b, 0x25, 0x86, 0x0e, 0xc1, 0x71, 0xad, 0xd4, +}; +static const unsigned char kat2139_addinreseed[] = {0}; +static const unsigned char kat2139_addin0[] = {0}; +static const unsigned char kat2139_addin1[] = {0}; +static const unsigned char kat2139_retbits[] = { + 0x6a, 0x77, 0x21, 0xac, 0x74, 0xfe, 0xae, 0x95, 0xb2, 0x95, 0x88, 0x33, + 0x30, 0xe0, 0x0d, 0xe9, 0x42, 0x80, 0xcd, 0x66, 0x6c, 0x73, 0x91, 0xc7, + 0x10, 0x86, 0x67, 0xd1, 0x29, 0x2d, 0xc8, 0x80, 0x15, 0xf9, 0x91, 0x30, + 0xe5, 0x61, 0x55, 0x1b, 0x72, 0x41, 0xc9, 0xe5, 0xa0, 0x6b, 0x47, 0x6b, + 0xe9, 0x44, 0x21, 0x5b, 0x23, 0x66, 0xe6, 0x64, 0xeb, 0x28, 0xe5, 0xc2, + 0x5b, 0x2f, 0xa9, 0x84, +}; +static const struct drbg_kat_pr_false kat2139_t = { + 8, kat2139_entropyin, kat2139_nonce, kat2139_persstr, + kat2139_entropyinreseed, kat2139_addinreseed, kat2139_addin0, + kat2139_addin1, kat2139_retbits +}; +static const struct drbg_kat kat2139 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2139_t +}; + +static const unsigned char kat2140_entropyin[] = { + 0x98, 0x3f, 0xb9, 0xe2, 0x9d, 0x7c, 0xf7, 0x40, 0x6e, 0x03, 0x1a, 0x50, + 0x1a, 0x04, 0xf5, 0xef, 0xba, 0xe2, 0x1d, 0x89, 0xd1, 0xff, 0x7e, 0x37, + 0x44, 0xc6, 0x25, 0x1b, 0x1c, 0x6e, 0x51, 0xec, +}; +static const unsigned char kat2140_nonce[] = { + 0xd4, 0x79, 0xf8, 0x03, 0x12, 0x8d, 0x7a, 0x87, 0xdc, 0x5f, 0x18, 0x80, + 0xe9, 0xd1, 0x82, 0xc5, +}; +static const unsigned char kat2140_persstr[] = { + 0x0d, 0x58, 0xac, 0x5a, 0xe0, 0x40, 0xa3, 0x69, 0xaa, 0x37, 0x0c, 0x40, + 0xde, 0xee, 0x13, 0x16, 0x36, 0x09, 0x7a, 0x1c, 0x7d, 0x2c, 0x26, 0x2e, + 0xdf, 0x63, 0xbf, 0x93, 0x9f, 0x34, 0x26, 0x16, +}; +static const unsigned char kat2140_entropyinreseed[] = { + 0x35, 0xae, 0xcb, 0xdd, 0x24, 0x4a, 0x41, 0x97, 0x2b, 0xe4, 0x50, 0x9a, + 0x98, 0xdd, 0xc4, 0xd6, 0x46, 0x7f, 0xa6, 0x33, 0xe9, 0x35, 0x3d, 0x9d, + 0xd2, 0xc3, 0x44, 0x2a, 0x30, 0x87, 0x50, 0x39, +}; +static const unsigned char kat2140_addinreseed[] = {0}; +static const unsigned char kat2140_addin0[] = {0}; +static const unsigned char kat2140_addin1[] = {0}; +static const unsigned char kat2140_retbits[] = { + 0xfc, 0x7b, 0x2c, 0xf9, 0x20, 0x6a, 0x83, 0xb2, 0xa8, 0xd7, 0xed, 0xb1, + 0x78, 0x63, 0x2a, 0x0c, 0x0c, 0x0b, 0xd3, 0xaa, 0x28, 0xb1, 0x9a, 0x96, + 0x3f, 0xda, 0x7f, 0xab, 0x9d, 0x09, 0x92, 0x8a, 0xde, 0xde, 0xe6, 0xc3, + 0x7d, 0x3d, 0xd4, 0xb9, 0xf3, 0x86, 0x52, 0x9c, 0x68, 0x02, 0xd9, 0xa4, + 0xf5, 0xf6, 0x39, 0xdf, 0xa4, 0x92, 0xbf, 0xad, 0x22, 0xd6, 0x83, 0xb6, + 0xc9, 0xfb, 0xbe, 0x6a, +}; +static const struct drbg_kat_pr_false kat2140_t = { + 9, kat2140_entropyin, kat2140_nonce, kat2140_persstr, + kat2140_entropyinreseed, kat2140_addinreseed, kat2140_addin0, + kat2140_addin1, kat2140_retbits +}; +static const struct drbg_kat kat2140 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2140_t +}; + +static const unsigned char kat2141_entropyin[] = { + 0xbd, 0x9e, 0x23, 0xeb, 0x4b, 0xb4, 0xdc, 0x2c, 0x3b, 0x58, 0xa7, 0xf4, + 0xd3, 0x2c, 0x8e, 0x93, 0x21, 0x08, 0xfc, 0x7a, 0x2d, 0xc7, 0xa9, 0xf4, + 0x0d, 0xce, 0x67, 0x1f, 0xc3, 0xfe, 0xa1, 0xdb, +}; +static const unsigned char kat2141_nonce[] = { + 0x14, 0x73, 0x2e, 0xc7, 0x51, 0xa5, 0x56, 0x66, 0xde, 0x4f, 0x16, 0xba, + 0xc7, 0x7d, 0x20, 0xab, +}; +static const unsigned char kat2141_persstr[] = { + 0xbf, 0x7e, 0x5c, 0x3f, 0xe8, 0xe3, 0xaf, 0x80, 0x5e, 0x61, 0xb2, 0xa2, + 0xbe, 0x73, 0xb2, 0x37, 0xe9, 0x5c, 0x5b, 0x93, 0xcf, 0x1e, 0x26, 0xd0, + 0x43, 0x5a, 0xb6, 0x34, 0x14, 0x96, 0x47, 0x40, +}; +static const unsigned char kat2141_entropyinreseed[] = { + 0x62, 0xf6, 0xd8, 0x06, 0x5f, 0xdb, 0x72, 0x79, 0xbf, 0x58, 0xa4, 0x00, + 0x80, 0x95, 0xf4, 0x48, 0x51, 0x9a, 0x21, 0x23, 0x1c, 0x9b, 0x96, 0xd5, + 0x92, 0x72, 0xa9, 0xb5, 0x38, 0x2b, 0x72, 0x6e, +}; +static const unsigned char kat2141_addinreseed[] = {0}; +static const unsigned char kat2141_addin0[] = {0}; +static const unsigned char kat2141_addin1[] = {0}; +static const unsigned char kat2141_retbits[] = { + 0x51, 0xf4, 0x37, 0x4e, 0x68, 0x04, 0xce, 0x98, 0x9b, 0x4b, 0xf4, 0x1e, + 0x48, 0xde, 0x6b, 0xfd, 0x37, 0x1f, 0x02, 0x34, 0x3a, 0x07, 0xda, 0x6a, + 0x7a, 0x65, 0x11, 0x63, 0xf8, 0xa8, 0x4d, 0x4e, 0xa7, 0xc7, 0x05, 0xe0, + 0xc5, 0x49, 0x1d, 0xfe, 0x5e, 0xb8, 0x73, 0x0d, 0xbe, 0x38, 0xd6, 0x9d, + 0x68, 0x8b, 0x6d, 0x83, 0x51, 0xe9, 0x60, 0x0c, 0x23, 0x1c, 0xb7, 0x27, + 0x6d, 0x69, 0xdc, 0xee, +}; +static const struct drbg_kat_pr_false kat2141_t = { + 10, kat2141_entropyin, kat2141_nonce, kat2141_persstr, + kat2141_entropyinreseed, kat2141_addinreseed, kat2141_addin0, + kat2141_addin1, kat2141_retbits +}; +static const struct drbg_kat kat2141 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2141_t +}; + +static const unsigned char kat2142_entropyin[] = { + 0xba, 0x06, 0xca, 0x20, 0x47, 0x54, 0x97, 0x2a, 0x26, 0xac, 0x96, 0x25, + 0xc8, 0x5c, 0x5c, 0x80, 0x94, 0xd8, 0xed, 0xb0, 0x7f, 0x6f, 0x47, 0x3e, + 0xbb, 0x94, 0x1b, 0x57, 0x71, 0x18, 0x7a, 0x17, +}; +static const unsigned char kat2142_nonce[] = { + 0x20, 0x09, 0x80, 0xcc, 0x16, 0x68, 0xaf, 0x5a, 0x4e, 0x54, 0x07, 0x96, + 0x19, 0x47, 0x0b, 0xe3, +}; +static const unsigned char kat2142_persstr[] = { + 0x57, 0xd8, 0x07, 0xd0, 0xa6, 0x19, 0xf8, 0x95, 0xac, 0x68, 0x37, 0x79, + 0xe6, 0xc1, 0xf8, 0x9b, 0xae, 0xeb, 0xc9, 0x3e, 0x17, 0xdb, 0x5b, 0x5e, + 0x80, 0xbd, 0xdc, 0xe5, 0xf8, 0x5b, 0x00, 0x2d, +}; +static const unsigned char kat2142_entropyinreseed[] = { + 0xfa, 0x0e, 0x8f, 0x2a, 0x77, 0xc6, 0xc0, 0x6a, 0x58, 0x68, 0x09, 0xf3, + 0xea, 0xe9, 0x3a, 0xa7, 0xea, 0xc0, 0xa3, 0xd0, 0x9c, 0x26, 0x2a, 0x72, + 0xa1, 0x88, 0x66, 0x51, 0xba, 0x25, 0x29, 0x6e, +}; +static const unsigned char kat2142_addinreseed[] = {0}; +static const unsigned char kat2142_addin0[] = {0}; +static const unsigned char kat2142_addin1[] = {0}; +static const unsigned char kat2142_retbits[] = { + 0xe0, 0x22, 0xdb, 0xdf, 0xcd, 0x01, 0x88, 0xed, 0x16, 0x41, 0x30, 0x14, + 0xf1, 0x70, 0x75, 0x77, 0xc6, 0xaf, 0x5b, 0x59, 0xec, 0x41, 0xa4, 0x6b, + 0x98, 0x36, 0x38, 0xc6, 0xa7, 0xe0, 0x55, 0xb9, 0xfa, 0xde, 0x91, 0x52, + 0x8c, 0x9e, 0x5c, 0x46, 0xd8, 0x4a, 0x71, 0xd7, 0x33, 0xa4, 0x7c, 0xdd, + 0xe6, 0x2f, 0x3f, 0xb4, 0x7d, 0x33, 0x56, 0x02, 0x9c, 0x4e, 0xc7, 0x79, + 0xfc, 0x88, 0x56, 0x91, +}; +static const struct drbg_kat_pr_false kat2142_t = { + 11, kat2142_entropyin, kat2142_nonce, kat2142_persstr, + kat2142_entropyinreseed, kat2142_addinreseed, kat2142_addin0, + kat2142_addin1, kat2142_retbits +}; +static const struct drbg_kat kat2142 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2142_t +}; + +static const unsigned char kat2143_entropyin[] = { + 0xa7, 0x94, 0x2a, 0x0d, 0x3b, 0x07, 0x54, 0x61, 0xa2, 0x9b, 0xb9, 0x93, + 0x43, 0xb1, 0x0e, 0x1f, 0x10, 0x01, 0x4f, 0x53, 0x09, 0x7c, 0x34, 0x02, + 0x74, 0x47, 0x59, 0xd2, 0x4b, 0xaf, 0x43, 0x9a, +}; +static const unsigned char kat2143_nonce[] = { + 0xf2, 0x68, 0xeb, 0x70, 0xdb, 0xdf, 0xa7, 0xec, 0x61, 0x14, 0x19, 0xee, + 0xb9, 0x4b, 0xf8, 0x84, +}; +static const unsigned char kat2143_persstr[] = { + 0xf9, 0x47, 0x75, 0x4a, 0x31, 0x35, 0xbc, 0x19, 0x07, 0xf8, 0x6f, 0x77, + 0xf6, 0xf5, 0x22, 0x45, 0x94, 0xb2, 0xc5, 0x87, 0x19, 0x3f, 0x7d, 0x86, + 0xe3, 0x43, 0xdb, 0xe8, 0xae, 0x94, 0x0a, 0xf0, +}; +static const unsigned char kat2143_entropyinreseed[] = { + 0x1f, 0x57, 0x25, 0x65, 0x3a, 0x01, 0xfd, 0x3d, 0x38, 0x70, 0xa5, 0x87, + 0x4b, 0xb9, 0x7e, 0x09, 0x10, 0xd4, 0x80, 0x39, 0x58, 0x9c, 0xeb, 0x80, + 0xa0, 0xd4, 0x1c, 0x2d, 0x3b, 0x07, 0x24, 0x0c, +}; +static const unsigned char kat2143_addinreseed[] = {0}; +static const unsigned char kat2143_addin0[] = {0}; +static const unsigned char kat2143_addin1[] = {0}; +static const unsigned char kat2143_retbits[] = { + 0x72, 0x48, 0xfa, 0xac, 0x73, 0xe7, 0x78, 0x28, 0x18, 0x85, 0x47, 0x3b, + 0x0a, 0xd2, 0xed, 0x56, 0xdc, 0x3c, 0x4e, 0xcb, 0x50, 0x5a, 0x29, 0xc0, + 0x80, 0xc5, 0x7d, 0xd5, 0x07, 0xe5, 0x6a, 0x50, 0xbf, 0xe9, 0xce, 0x04, + 0xc7, 0x24, 0xac, 0x71, 0x30, 0xcb, 0xfc, 0xf5, 0x22, 0x7c, 0x8d, 0xf5, + 0x1a, 0xd1, 0x08, 0xfc, 0x58, 0x75, 0xed, 0x13, 0xcf, 0xdd, 0x3e, 0xed, + 0x7b, 0x95, 0xed, 0x60, +}; +static const struct drbg_kat_pr_false kat2143_t = { + 12, kat2143_entropyin, kat2143_nonce, kat2143_persstr, + kat2143_entropyinreseed, kat2143_addinreseed, kat2143_addin0, + kat2143_addin1, kat2143_retbits +}; +static const struct drbg_kat kat2143 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2143_t +}; + +static const unsigned char kat2144_entropyin[] = { + 0xc1, 0x7b, 0x59, 0x23, 0x51, 0xce, 0x97, 0xc2, 0xb9, 0x39, 0x7d, 0x1d, + 0x35, 0xf7, 0x84, 0x93, 0x61, 0xce, 0x0f, 0xbc, 0xc8, 0x9d, 0x64, 0xea, + 0x24, 0xee, 0x23, 0x44, 0x89, 0xc8, 0x78, 0x48, +}; +static const unsigned char kat2144_nonce[] = { + 0xd0, 0x22, 0x07, 0xb5, 0x33, 0xdd, 0xfc, 0x79, 0xfd, 0x54, 0xe2, 0x47, + 0x47, 0x25, 0x42, 0x68, +}; +static const unsigned char kat2144_persstr[] = { + 0x6b, 0x88, 0x60, 0xde, 0x89, 0xdc, 0x49, 0x34, 0x59, 0xc3, 0xe8, 0x22, + 0x1d, 0xb1, 0x0d, 0x60, 0x16, 0x77, 0xec, 0xa9, 0x3c, 0x86, 0xa4, 0x36, + 0x07, 0xc0, 0xff, 0x55, 0x8d, 0x26, 0xb7, 0x04, +}; +static const unsigned char kat2144_entropyinreseed[] = { + 0x26, 0x72, 0x25, 0xf3, 0xa9, 0xaa, 0x08, 0x67, 0xa4, 0xbe, 0x8e, 0x3e, + 0x53, 0x01, 0x54, 0x51, 0xcf, 0x58, 0x79, 0x6a, 0xce, 0x50, 0xa3, 0x6c, + 0x65, 0x78, 0x11, 0xe5, 0x1b, 0xd5, 0x21, 0x70, +}; +static const unsigned char kat2144_addinreseed[] = {0}; +static const unsigned char kat2144_addin0[] = {0}; +static const unsigned char kat2144_addin1[] = {0}; +static const unsigned char kat2144_retbits[] = { + 0x2c, 0x07, 0x5e, 0xfc, 0xca, 0x1a, 0x60, 0x3e, 0x60, 0x9f, 0x35, 0xbd, + 0xeb, 0xf5, 0x75, 0x56, 0xe8, 0x7c, 0x1d, 0x41, 0x8b, 0xbf, 0x22, 0x98, + 0x78, 0x80, 0x00, 0xb8, 0x25, 0x4f, 0x70, 0xa4, 0x4e, 0x98, 0x17, 0x2e, + 0x41, 0xc6, 0xba, 0x51, 0xdc, 0x35, 0x21, 0xdc, 0x19, 0x69, 0xbc, 0x38, + 0x6c, 0x62, 0x5e, 0xc0, 0xef, 0x12, 0x89, 0xc4, 0x2c, 0x3e, 0x27, 0xc5, + 0x2b, 0x4a, 0x24, 0x87, +}; +static const struct drbg_kat_pr_false kat2144_t = { + 13, kat2144_entropyin, kat2144_nonce, kat2144_persstr, + kat2144_entropyinreseed, kat2144_addinreseed, kat2144_addin0, + kat2144_addin1, kat2144_retbits +}; +static const struct drbg_kat kat2144 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2144_t +}; + +static const unsigned char kat2145_entropyin[] = { + 0xf8, 0x83, 0xb4, 0xbb, 0xea, 0x89, 0xca, 0xc2, 0xfd, 0x37, 0x85, 0x59, + 0xfe, 0x57, 0x90, 0xd7, 0xad, 0x64, 0xdc, 0x6f, 0x5a, 0xcc, 0x61, 0xce, + 0xec, 0xbc, 0x13, 0xbd, 0x97, 0x1f, 0x6a, 0xfb, +}; +static const unsigned char kat2145_nonce[] = { + 0x3a, 0xb0, 0x89, 0x48, 0xf0, 0x14, 0x16, 0x31, 0x7c, 0xeb, 0xab, 0x29, + 0xeb, 0x21, 0x1d, 0x7b, +}; +static const unsigned char kat2145_persstr[] = { + 0xd0, 0x86, 0x05, 0x74, 0x93, 0x50, 0x0d, 0x75, 0xd9, 0x3d, 0x93, 0x27, + 0xb0, 0x9c, 0x10, 0x8e, 0xd9, 0xe6, 0x27, 0x01, 0x79, 0x49, 0x51, 0xc9, + 0xb9, 0xfc, 0x77, 0xef, 0x38, 0x72, 0xa5, 0x55, +}; +static const unsigned char kat2145_entropyinreseed[] = { + 0x21, 0x49, 0x69, 0x3a, 0xd3, 0xbb, 0x60, 0xd8, 0x75, 0x0e, 0x9f, 0x21, + 0xff, 0xc1, 0x6b, 0x71, 0x78, 0x31, 0x0a, 0xfa, 0xc1, 0xe2, 0xfa, 0x63, + 0x33, 0x43, 0x02, 0xcf, 0xfa, 0x1c, 0x0a, 0x47, +}; +static const unsigned char kat2145_addinreseed[] = {0}; +static const unsigned char kat2145_addin0[] = {0}; +static const unsigned char kat2145_addin1[] = {0}; +static const unsigned char kat2145_retbits[] = { + 0xe0, 0x59, 0x8a, 0x33, 0x11, 0x4c, 0xc1, 0x83, 0xed, 0xb8, 0x43, 0x41, + 0x5d, 0x69, 0x7a, 0xca, 0xdc, 0x91, 0xc3, 0x9b, 0xa5, 0x41, 0x00, 0xc7, + 0xb1, 0x4f, 0x79, 0xe6, 0x7e, 0x47, 0xeb, 0x7f, 0x8d, 0x21, 0xcc, 0x1c, + 0x5e, 0x4d, 0x74, 0x4b, 0x32, 0x9f, 0x71, 0x7c, 0x88, 0x23, 0x90, 0x35, + 0xb9, 0x1f, 0xd4, 0xb7, 0x0e, 0x41, 0x5f, 0x26, 0x97, 0xe9, 0xf9, 0xd4, + 0x36, 0xf3, 0xb0, 0x01, +}; +static const struct drbg_kat_pr_false kat2145_t = { + 14, kat2145_entropyin, kat2145_nonce, kat2145_persstr, + kat2145_entropyinreseed, kat2145_addinreseed, kat2145_addin0, + kat2145_addin1, kat2145_retbits +}; +static const struct drbg_kat kat2145 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat2145_t +}; + +static const unsigned char kat2146_entropyin[] = { + 0xe2, 0xf7, 0x5c, 0xf5, 0x53, 0x03, 0x5b, 0x3c, 0xb4, 0xd2, 0x1e, 0x56, + 0x7c, 0xa5, 0xc2, 0x03, 0x62, 0x3d, 0x4a, 0x4b, 0x58, 0x85, 0x32, 0x6f, + 0x63, 0xea, 0x61, 0xa0, 0x20, 0xa4, 0x98, 0x4e, +}; +static const unsigned char kat2146_nonce[] = { + 0xa6, 0x66, 0xee, 0x4b, 0x26, 0xda, 0xe5, 0x89, 0x7f, 0xc5, 0xe8, 0x5c, + 0x64, 0x3f, 0xc6, 0x30, +}; +static const unsigned char kat2146_persstr[] = { + 0x19, 0x27, 0x5b, 0xbd, 0x7a, 0x01, 0x09, 0xd8, 0x17, 0x93, 0x34, 0xc5, + 0x53, 0x37, 0xbc, 0x0a, 0x3f, 0x5a, 0xc4, 0x8c, 0xb8, 0xc4, 0x95, 0x9c, + 0x88, 0x8c, 0x0b, 0x65, 0xf7, 0xac, 0x9a, 0x84, +}; +static const unsigned char kat2146_entropyinreseed[] = { + 0xf6, 0x67, 0x2d, 0x02, 0x22, 0x26, 0xb0, 0x5d, 0xb5, 0xd3, 0xc5, 0x9c, + 0x0d, 0xa5, 0xb2, 0x0a, 0x1b, 0xe0, 0x5e, 0xca, 0xbb, 0xd1, 0x74, 0x44, + 0x83, 0xca, 0x4c, 0xe5, 0x57, 0x1d, 0x93, 0xf4, +}; +static const unsigned char kat2146_addinreseed[] = { + 0x8c, 0x8f, 0x94, 0x0a, 0xf4, 0x5a, 0xec, 0x86, 0x4c, 0x8a, 0xa8, 0xbe, + 0x60, 0xb1, 0x00, 0xf8, 0x2b, 0xb9, 0x67, 0x0c, 0x7e, 0x2a, 0x39, 0x2a, + 0x4a, 0xb6, 0xf4, 0xb2, 0x0e, 0xef, 0xbb, 0xaa, +}; +static const unsigned char kat2146_addin0[] = { + 0x26, 0xb5, 0xf0, 0xda, 0xdc, 0x89, 0x1e, 0x0b, 0x1b, 0x78, 0x87, 0x8e, + 0x7a, 0xe7, 0x5a, 0xee, 0x84, 0x33, 0x76, 0xc0, 0x96, 0x8c, 0x54, 0xc1, + 0x27, 0x59, 0xc1, 0x8d, 0xef, 0x21, 0xd3, 0x63, +}; +static const unsigned char kat2146_addin1[] = { + 0xff, 0x67, 0x91, 0xf4, 0xd4, 0xb2, 0x99, 0x96, 0xb0, 0x39, 0x9d, 0x95, + 0xa1, 0x4a, 0x28, 0xb8, 0xe2, 0xe2, 0x07, 0x87, 0x53, 0x1d, 0x91, 0x6e, + 0x7e, 0xd2, 0xec, 0x04, 0x0b, 0xbd, 0x7c, 0x84, +}; +static const unsigned char kat2146_retbits[] = { + 0xeb, 0x8f, 0x28, 0x9b, 0xb0, 0x5b, 0xe8, 0x40, 0x84, 0x84, 0x0c, 0x3d, + 0x2c, 0x9d, 0xee, 0xa0, 0x24, 0x54, 0x87, 0xa9, 0x8d, 0x7e, 0x1a, 0x40, + 0x17, 0xb8, 0x60, 0xe4, 0x86, 0x35, 0x21, 0x3d, 0x62, 0x2a, 0x4a, 0x4e, + 0xae, 0x91, 0xef, 0xdd, 0x53, 0x42, 0xad, 0xe9, 0x40, 0x93, 0xf1, 0x99, + 0xc1, 0x6d, 0xeb, 0x1e, 0x58, 0xd0, 0x08, 0x8b, 0x9b, 0x4a, 0x0f, 0x24, + 0xa5, 0xd1, 0x57, 0x75, +}; +static const struct drbg_kat_pr_false kat2146_t = { + 0, kat2146_entropyin, kat2146_nonce, kat2146_persstr, + kat2146_entropyinreseed, kat2146_addinreseed, kat2146_addin0, + kat2146_addin1, kat2146_retbits +}; +static const struct drbg_kat kat2146 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2146_t +}; + +static const unsigned char kat2147_entropyin[] = { + 0x0b, 0xab, 0xce, 0xcc, 0x5d, 0x90, 0xf7, 0xe5, 0xdf, 0xde, 0x2c, 0x3c, + 0x24, 0xa0, 0x76, 0x69, 0xe0, 0xf7, 0x19, 0xaa, 0x4f, 0xf5, 0xbf, 0xcc, + 0x02, 0xed, 0xdd, 0xc5, 0x5f, 0x2c, 0x48, 0xf7, +}; +static const unsigned char kat2147_nonce[] = { + 0x2c, 0x3e, 0x8a, 0xfc, 0xaa, 0xef, 0xf9, 0x4a, 0xb3, 0x39, 0xe3, 0x9a, + 0xa5, 0xcf, 0x1a, 0xbe, +}; +static const unsigned char kat2147_persstr[] = { + 0x94, 0xd9, 0x5d, 0xdf, 0xb0, 0x2f, 0xef, 0xf3, 0x95, 0x0c, 0x03, 0xa2, + 0x85, 0x45, 0xbf, 0xfb, 0xa9, 0x84, 0x00, 0xf9, 0xca, 0xd0, 0x04, 0xcb, + 0x22, 0xb8, 0xa7, 0x7b, 0x67, 0xed, 0x61, 0x80, +}; +static const unsigned char kat2147_entropyinreseed[] = { + 0x17, 0x82, 0xe8, 0x62, 0x69, 0x09, 0x68, 0x6c, 0x37, 0x9c, 0xfc, 0xa7, + 0x8b, 0x93, 0x9f, 0x7c, 0x0c, 0xb5, 0x89, 0xea, 0x0b, 0xd3, 0x16, 0xf3, + 0xae, 0xc8, 0xdc, 0x5a, 0x04, 0x93, 0x79, 0x9b, +}; +static const unsigned char kat2147_addinreseed[] = { + 0x7b, 0x5f, 0x37, 0xad, 0xba, 0xd3, 0x1d, 0x71, 0xca, 0xdd, 0x3d, 0x32, + 0xb5, 0x72, 0x84, 0xb5, 0xf9, 0xd7, 0xd6, 0x72, 0x21, 0xf4, 0x51, 0xdf, + 0x25, 0x81, 0x93, 0xa1, 0x40, 0xd4, 0xa1, 0x38, +}; +static const unsigned char kat2147_addin0[] = { + 0x75, 0x0c, 0x2c, 0x67, 0xd1, 0xa3, 0xd5, 0xb0, 0x41, 0x75, 0x27, 0x45, + 0x0f, 0xde, 0xd2, 0x04, 0xa5, 0xaa, 0x9f, 0xf6, 0xe9, 0x72, 0x6a, 0x33, + 0xdf, 0xe8, 0xdb, 0x52, 0xf8, 0x5c, 0xf2, 0x9a, +}; +static const unsigned char kat2147_addin1[] = { + 0x62, 0x42, 0xc0, 0x0a, 0x5c, 0x73, 0x2f, 0x38, 0x00, 0x87, 0x91, 0x87, + 0x09, 0x73, 0xbe, 0x60, 0xb8, 0x3c, 0x04, 0x3a, 0x1b, 0xb3, 0xf0, 0xbe, + 0xdb, 0x4e, 0x46, 0x17, 0x0f, 0xda, 0x5b, 0xe2, +}; +static const unsigned char kat2147_retbits[] = { + 0xc0, 0xb7, 0xac, 0xdf, 0xf7, 0xa3, 0x36, 0x28, 0xfb, 0xb6, 0x8b, 0xb3, + 0x99, 0x69, 0x3d, 0x0e, 0xdf, 0xb2, 0x26, 0x23, 0xfb, 0xcb, 0x1f, 0xe6, + 0x4c, 0xb5, 0x03, 0xcc, 0x52, 0x7f, 0x81, 0xc7, 0x05, 0xa5, 0x7d, 0xe8, + 0xe7, 0xed, 0x65, 0x6c, 0xe3, 0x28, 0xe9, 0x9c, 0xbb, 0xa0, 0xde, 0xcd, + 0x25, 0x3c, 0xc9, 0x46, 0x8b, 0xc8, 0x04, 0x2f, 0x49, 0xd3, 0xa4, 0x8c, + 0x51, 0xeb, 0xab, 0xd2, +}; +static const struct drbg_kat_pr_false kat2147_t = { + 1, kat2147_entropyin, kat2147_nonce, kat2147_persstr, + kat2147_entropyinreseed, kat2147_addinreseed, kat2147_addin0, + kat2147_addin1, kat2147_retbits +}; +static const struct drbg_kat kat2147 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2147_t +}; + +static const unsigned char kat2148_entropyin[] = { + 0x02, 0xe0, 0xc4, 0xbe, 0xd4, 0xff, 0x5a, 0x3a, 0x01, 0xa2, 0x57, 0x3c, + 0xb1, 0x34, 0x4a, 0x55, 0xa8, 0xed, 0xd6, 0x8c, 0x83, 0xe1, 0x11, 0xda, + 0x83, 0xea, 0xee, 0x22, 0x17, 0xb7, 0xb0, 0xf9, +}; +static const unsigned char kat2148_nonce[] = { + 0x60, 0x6a, 0x90, 0x9c, 0x1e, 0xb4, 0x26, 0xe8, 0x6f, 0x65, 0x64, 0xcb, + 0xe0, 0x17, 0x72, 0x73, +}; +static const unsigned char kat2148_persstr[] = { + 0x51, 0x97, 0x58, 0x93, 0x3d, 0x0c, 0x75, 0xad, 0x84, 0x4a, 0xc8, 0xb7, + 0xb9, 0x8c, 0x31, 0x45, 0x22, 0xdc, 0xb5, 0xb8, 0x08, 0x2a, 0xf3, 0x68, + 0xcb, 0x48, 0x9b, 0xca, 0xcb, 0x5d, 0xfa, 0xa9, +}; +static const unsigned char kat2148_entropyinreseed[] = { + 0x81, 0xb0, 0x92, 0x39, 0x97, 0xa7, 0x86, 0xf9, 0x1e, 0xd0, 0xc2, 0x78, + 0x3a, 0x37, 0x2c, 0x87, 0xfe, 0x0f, 0xee, 0x2b, 0x83, 0x05, 0x23, 0x8e, + 0xff, 0xf9, 0x57, 0x56, 0x64, 0x51, 0xf7, 0x12, +}; +static const unsigned char kat2148_addinreseed[] = { + 0x57, 0x6e, 0x8d, 0xc3, 0x6e, 0x4c, 0xc8, 0xaf, 0xe8, 0x0e, 0xdf, 0xb9, + 0x4f, 0x19, 0x22, 0x74, 0xbc, 0x90, 0x4b, 0x86, 0x59, 0xf3, 0xe7, 0x27, + 0x28, 0x4f, 0xd3, 0x77, 0xe9, 0xf9, 0xfb, 0x38, +}; +static const unsigned char kat2148_addin0[] = { + 0x8c, 0x65, 0x63, 0xbd, 0x4a, 0x5f, 0xdb, 0x59, 0x81, 0x00, 0x35, 0x58, + 0x10, 0xd3, 0xaf, 0x0e, 0x0e, 0x07, 0xb2, 0x09, 0xb7, 0x8c, 0xd5, 0x6c, + 0xe5, 0x33, 0xab, 0xa3, 0x8a, 0xb7, 0x5b, 0x02, +}; +static const unsigned char kat2148_addin1[] = { + 0xeb, 0xec, 0xb4, 0x61, 0x34, 0x57, 0x15, 0x0d, 0x8a, 0x28, 0x5a, 0x35, + 0x42, 0x51, 0xcf, 0xf0, 0x94, 0xa6, 0x35, 0xc3, 0xe1, 0x85, 0x63, 0xc8, + 0x00, 0xb5, 0xf5, 0xea, 0x71, 0x03, 0x2e, 0xfd, +}; +static const unsigned char kat2148_retbits[] = { + 0xdf, 0xdb, 0x7f, 0x53, 0x42, 0x45, 0x60, 0xb5, 0xfa, 0x21, 0xbf, 0xbc, + 0xfb, 0x6a, 0x17, 0xdc, 0x6c, 0xd6, 0x93, 0x68, 0x1b, 0xb9, 0x78, 0xc2, + 0xd0, 0x4c, 0xf8, 0x8c, 0x46, 0x78, 0xb6, 0x8a, 0xf8, 0x4f, 0xe5, 0x41, + 0x91, 0x3e, 0x63, 0x3f, 0xde, 0xdc, 0x21, 0xa8, 0x7f, 0xb5, 0xcd, 0x1f, + 0xfe, 0x74, 0x25, 0x1d, 0x45, 0xac, 0x15, 0xd8, 0xe4, 0xec, 0xb3, 0x07, + 0x98, 0xd0, 0x69, 0x51, +}; +static const struct drbg_kat_pr_false kat2148_t = { + 2, kat2148_entropyin, kat2148_nonce, kat2148_persstr, + kat2148_entropyinreseed, kat2148_addinreseed, kat2148_addin0, + kat2148_addin1, kat2148_retbits +}; +static const struct drbg_kat kat2148 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2148_t +}; + +static const unsigned char kat2149_entropyin[] = { + 0xc0, 0x74, 0xa9, 0xe5, 0xac, 0x43, 0x39, 0x04, 0x37, 0xd1, 0x2d, 0x71, + 0x62, 0x85, 0x3a, 0xa9, 0xab, 0xd7, 0x6e, 0xc7, 0xec, 0xb4, 0x17, 0x41, + 0x7b, 0x30, 0x4e, 0x16, 0x4b, 0x60, 0xcb, 0x6f, +}; +static const unsigned char kat2149_nonce[] = { + 0x59, 0xe3, 0x03, 0xf0, 0xbe, 0x5c, 0x52, 0x8e, 0x45, 0x25, 0x8d, 0x52, + 0x61, 0x4b, 0x85, 0x18, +}; +static const unsigned char kat2149_persstr[] = { + 0x4c, 0xd7, 0x4f, 0x78, 0x46, 0x1d, 0x87, 0x9a, 0x90, 0xc2, 0x6e, 0x16, + 0xd7, 0x33, 0x3e, 0xf4, 0x59, 0xc2, 0xd6, 0x32, 0xe0, 0x89, 0x49, 0x7a, + 0x89, 0x1a, 0x9e, 0xe6, 0x18, 0x4e, 0x98, 0x1d, +}; +static const unsigned char kat2149_entropyinreseed[] = { + 0x31, 0x61, 0xef, 0x4f, 0x92, 0xbf, 0xc3, 0x2f, 0xaf, 0x7f, 0xc1, 0xd7, + 0x0b, 0x19, 0x5c, 0xc1, 0xb0, 0x51, 0xf7, 0xf0, 0xaf, 0xc5, 0x90, 0x2f, + 0x4f, 0x28, 0xd0, 0x46, 0x20, 0x31, 0x82, 0xf1, +}; +static const unsigned char kat2149_addinreseed[] = { + 0xab, 0x16, 0xc4, 0x17, 0x44, 0x2b, 0x01, 0xf3, 0x37, 0x25, 0x08, 0xc1, + 0x72, 0xc7, 0xf2, 0x37, 0xe2, 0x8f, 0x2b, 0x01, 0xfa, 0x13, 0x94, 0xe3, + 0x93, 0xa8, 0x71, 0xee, 0x50, 0x8b, 0xd5, 0xb2, +}; +static const unsigned char kat2149_addin0[] = { + 0x81, 0xc7, 0x3b, 0x87, 0x80, 0xe8, 0x71, 0x69, 0x49, 0x42, 0x30, 0xf0, + 0x4f, 0xed, 0x33, 0xbb, 0x5b, 0x25, 0x1b, 0x6a, 0x42, 0xbc, 0x60, 0xa0, + 0xdd, 0xfe, 0x3f, 0xce, 0x78, 0xa1, 0xeb, 0x5c, +}; +static const unsigned char kat2149_addin1[] = { + 0x29, 0xdf, 0x72, 0x41, 0x64, 0xff, 0xa3, 0x82, 0x69, 0x18, 0x3d, 0x55, + 0xe0, 0x5b, 0x22, 0xde, 0xb8, 0xde, 0xfc, 0x0d, 0x40, 0xfe, 0x9c, 0x23, + 0x29, 0x7b, 0xe0, 0xb6, 0x92, 0x61, 0xf6, 0x53, +}; +static const unsigned char kat2149_retbits[] = { + 0xd4, 0xbc, 0x09, 0xc3, 0x91, 0xf5, 0xae, 0x44, 0x93, 0x69, 0xd9, 0x26, + 0x7e, 0x76, 0x44, 0x8d, 0x64, 0x93, 0xa2, 0x60, 0xad, 0xb9, 0xc3, 0x87, + 0x0c, 0xd5, 0x0b, 0xcc, 0xbf, 0x23, 0x6b, 0x6b, 0xcf, 0xf2, 0x13, 0x34, + 0xc6, 0x93, 0x92, 0x9c, 0x83, 0x93, 0x8f, 0xc9, 0xd6, 0x7a, 0x7d, 0x96, + 0xa1, 0x7e, 0x75, 0x4a, 0x8b, 0x68, 0x82, 0x9a, 0x13, 0x5d, 0x6f, 0xb6, + 0x3b, 0xfc, 0x7a, 0x26, +}; +static const struct drbg_kat_pr_false kat2149_t = { + 3, kat2149_entropyin, kat2149_nonce, kat2149_persstr, + kat2149_entropyinreseed, kat2149_addinreseed, kat2149_addin0, + kat2149_addin1, kat2149_retbits +}; +static const struct drbg_kat kat2149 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2149_t +}; + +static const unsigned char kat2150_entropyin[] = { + 0x9f, 0x06, 0xca, 0x93, 0xae, 0x6a, 0xf2, 0xab, 0x0f, 0xbf, 0x6a, 0xf0, + 0xeb, 0x1e, 0xb5, 0x83, 0xb8, 0xf6, 0xf8, 0xb5, 0x0a, 0xe9, 0xe1, 0x68, + 0xed, 0x6a, 0x85, 0xe6, 0xca, 0x56, 0x09, 0xc5, +}; +static const unsigned char kat2150_nonce[] = { + 0x1c, 0x3f, 0xe6, 0x42, 0x4b, 0x3a, 0x6d, 0x4e, 0xa4, 0x1e, 0xdf, 0x35, + 0xf9, 0x77, 0xb3, 0x85, +}; +static const unsigned char kat2150_persstr[] = { + 0x11, 0x64, 0xb2, 0xc0, 0x32, 0x99, 0xb6, 0x8d, 0xce, 0xb2, 0x10, 0x7a, + 0x61, 0x6e, 0x1e, 0xfe, 0x4d, 0x11, 0x1d, 0x59, 0x68, 0x8b, 0x6e, 0x24, + 0x81, 0x2f, 0x65, 0x71, 0x5f, 0xc9, 0x80, 0x23, +}; +static const unsigned char kat2150_entropyinreseed[] = { + 0xcd, 0xa6, 0x5f, 0xa8, 0xc4, 0xe0, 0xbf, 0x37, 0xf3, 0xaa, 0xa9, 0xc2, + 0x53, 0x8d, 0x81, 0x07, 0xfc, 0x1c, 0xbc, 0x07, 0x25, 0xf3, 0x8e, 0xbe, + 0xb4, 0xb8, 0x74, 0x1e, 0x23, 0xb6, 0xa6, 0x32, +}; +static const unsigned char kat2150_addinreseed[] = { + 0x44, 0xd6, 0xf1, 0x4b, 0xe3, 0xaa, 0x7a, 0x46, 0x85, 0x4b, 0xaa, 0x83, + 0x9c, 0x82, 0xdd, 0xe2, 0x39, 0xc6, 0xfd, 0xf2, 0x37, 0xc6, 0x18, 0x90, + 0xe1, 0x32, 0xa5, 0x48, 0x22, 0x84, 0x21, 0x36, +}; +static const unsigned char kat2150_addin0[] = { + 0xe5, 0x0e, 0x51, 0x92, 0xf4, 0xeb, 0xd5, 0x77, 0x0b, 0x17, 0xdf, 0x64, + 0x20, 0x70, 0xa9, 0x4e, 0x7a, 0xb8, 0xe3, 0x64, 0xfb, 0xfd, 0x42, 0xb5, + 0xf4, 0xf0, 0xf6, 0xc3, 0xf3, 0x12, 0x0b, 0x5c, +}; +static const unsigned char kat2150_addin1[] = { + 0xad, 0x96, 0x26, 0xe5, 0x8b, 0xdc, 0xd4, 0x30, 0xcd, 0xf8, 0x17, 0x24, + 0x5d, 0x04, 0xf8, 0xbe, 0x6e, 0xdf, 0xba, 0x8a, 0x6c, 0xda, 0x9d, 0x1c, + 0x44, 0xb8, 0x66, 0x48, 0x99, 0x63, 0x08, 0xef, +}; +static const unsigned char kat2150_retbits[] = { + 0xac, 0x1e, 0x0c, 0xf2, 0x28, 0xc1, 0x4a, 0x82, 0x7a, 0x7d, 0x81, 0x7d, + 0x39, 0x93, 0xb5, 0x03, 0xbf, 0xb7, 0x53, 0x05, 0x24, 0xe6, 0xa6, 0x03, + 0xf8, 0x93, 0x18, 0x12, 0x8e, 0x5b, 0x08, 0x92, 0xd8, 0xe2, 0xbe, 0xb7, + 0x05, 0x97, 0x8b, 0x5c, 0x25, 0x5c, 0x86, 0x8e, 0xf0, 0xc4, 0x78, 0x93, + 0x12, 0xd9, 0xd0, 0xa2, 0x23, 0x07, 0xbe, 0xc2, 0x04, 0x22, 0x47, 0xf3, + 0xdf, 0x60, 0x12, 0x6a, +}; +static const struct drbg_kat_pr_false kat2150_t = { + 4, kat2150_entropyin, kat2150_nonce, kat2150_persstr, + kat2150_entropyinreseed, kat2150_addinreseed, kat2150_addin0, + kat2150_addin1, kat2150_retbits +}; +static const struct drbg_kat kat2150 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2150_t +}; + +static const unsigned char kat2151_entropyin[] = { + 0xec, 0xd1, 0x38, 0xbb, 0xf1, 0xd5, 0x54, 0x95, 0xf0, 0x79, 0x21, 0xb4, + 0xfb, 0x58, 0x60, 0x78, 0x50, 0x5b, 0xe5, 0xf6, 0x58, 0x6e, 0xba, 0x7f, + 0xe1, 0xad, 0xf5, 0x74, 0xf1, 0x63, 0xd3, 0x5a, +}; +static const unsigned char kat2151_nonce[] = { + 0xe5, 0xae, 0xf8, 0xe6, 0x41, 0xc9, 0x2b, 0x0a, 0x05, 0xe3, 0xca, 0x17, + 0x8b, 0xce, 0xc8, 0x77, +}; +static const unsigned char kat2151_persstr[] = { + 0xd3, 0xe2, 0x65, 0x73, 0xb8, 0x96, 0xbc, 0x32, 0x84, 0xc0, 0x4c, 0x78, + 0x6d, 0x3f, 0xb5, 0xeb, 0x29, 0x9d, 0xad, 0xa0, 0x3f, 0xda, 0x12, 0x9e, + 0x93, 0xd1, 0x18, 0xc1, 0x3c, 0x46, 0x9b, 0xca, +}; +static const unsigned char kat2151_entropyinreseed[] = { + 0x3b, 0xce, 0x4b, 0x4e, 0x9c, 0xd3, 0xba, 0xf9, 0xe0, 0xb0, 0xcc, 0x7f, + 0xc7, 0x9a, 0x48, 0xa3, 0x26, 0x55, 0x25, 0xd7, 0x43, 0x15, 0xd3, 0x66, + 0x6e, 0x01, 0x8e, 0x06, 0xc8, 0xe8, 0xdf, 0x84, +}; +static const unsigned char kat2151_addinreseed[] = { + 0xf6, 0x85, 0xcb, 0x18, 0x5c, 0xcf, 0x41, 0xdd, 0x92, 0x8e, 0x90, 0xf8, + 0x67, 0x5c, 0x27, 0xf5, 0x2c, 0x7b, 0x6b, 0x90, 0xff, 0x6c, 0x8c, 0x9f, + 0x40, 0x12, 0x51, 0x18, 0xc5, 0x82, 0x79, 0x49, +}; +static const unsigned char kat2151_addin0[] = { + 0x03, 0x80, 0x38, 0x68, 0xd5, 0x9f, 0x85, 0xdf, 0x25, 0xaf, 0x53, 0x00, + 0xf9, 0x92, 0x10, 0xb5, 0xa9, 0x5f, 0x88, 0x48, 0x3c, 0xe6, 0xb9, 0x77, + 0x68, 0xc5, 0x53, 0x29, 0x76, 0x59, 0x2c, 0x2b, +}; +static const unsigned char kat2151_addin1[] = { + 0x2c, 0x90, 0x32, 0xcb, 0xfe, 0x8b, 0xaf, 0xc9, 0x48, 0x80, 0xba, 0xc9, + 0x91, 0xb4, 0x69, 0x53, 0x1a, 0xfe, 0x06, 0x19, 0xd7, 0x1d, 0xd3, 0x84, + 0x1e, 0x14, 0xc7, 0x24, 0x45, 0x78, 0xae, 0x95, +}; +static const unsigned char kat2151_retbits[] = { + 0xa0, 0xfd, 0xbc, 0x3d, 0x36, 0x28, 0x47, 0x9f, 0x47, 0xea, 0x66, 0x94, + 0xef, 0xad, 0x2b, 0xa9, 0xbe, 0xc2, 0xf5, 0xe7, 0xd1, 0x55, 0x23, 0x31, + 0x87, 0x0c, 0x03, 0x6a, 0xf1, 0x01, 0x92, 0xff, 0x0d, 0x0c, 0xe8, 0xa4, + 0xf1, 0x00, 0xdd, 0xe2, 0xb2, 0x2e, 0xbd, 0xac, 0xb8, 0x89, 0xec, 0x1d, + 0xc6, 0xbf, 0x8c, 0x34, 0xb4, 0x1e, 0x42, 0xc0, 0x6c, 0xd9, 0x68, 0xe2, + 0xd0, 0x62, 0x31, 0x2c, +}; +static const struct drbg_kat_pr_false kat2151_t = { + 5, kat2151_entropyin, kat2151_nonce, kat2151_persstr, + kat2151_entropyinreseed, kat2151_addinreseed, kat2151_addin0, + kat2151_addin1, kat2151_retbits +}; +static const struct drbg_kat kat2151 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2151_t +}; + +static const unsigned char kat2152_entropyin[] = { + 0xee, 0x7f, 0x43, 0x06, 0x5d, 0x94, 0x81, 0xd2, 0x3c, 0x4e, 0xc5, 0x6e, + 0xc4, 0x2d, 0xfb, 0xea, 0xc2, 0x0c, 0xd3, 0x6a, 0x74, 0x85, 0x41, 0xd1, + 0xad, 0x50, 0x52, 0x6d, 0x39, 0x47, 0xb4, 0xe7, +}; +static const unsigned char kat2152_nonce[] = { + 0x65, 0x9e, 0x13, 0x58, 0x71, 0xaf, 0x57, 0x78, 0x00, 0x67, 0xc2, 0x16, + 0xf2, 0x72, 0xb4, 0xe7, +}; +static const unsigned char kat2152_persstr[] = { + 0x4a, 0xb0, 0xcb, 0x88, 0x78, 0x1a, 0xa9, 0xc1, 0xa6, 0x9c, 0x7d, 0xaa, + 0xf5, 0x39, 0x4b, 0x48, 0x2c, 0x1f, 0x2a, 0x13, 0xf4, 0x09, 0xa0, 0xf0, + 0xaa, 0x35, 0xab, 0x84, 0x89, 0x7f, 0xf8, 0x9a, +}; +static const unsigned char kat2152_entropyinreseed[] = { + 0xfc, 0xaf, 0x45, 0x6b, 0xae, 0xe3, 0x81, 0x32, 0xdc, 0x43, 0x04, 0xc5, + 0xc1, 0x79, 0x8c, 0x76, 0xc4, 0xea, 0x26, 0x26, 0xaa, 0x6a, 0x91, 0x23, + 0x32, 0xae, 0x2e, 0x04, 0x86, 0xc1, 0xb5, 0x48, +}; +static const unsigned char kat2152_addinreseed[] = { + 0xe9, 0xc8, 0xf1, 0x54, 0x4b, 0x2e, 0x49, 0xe9, 0x49, 0x81, 0x06, 0xf6, + 0x43, 0x05, 0xa1, 0xe0, 0x99, 0x88, 0x3b, 0xc2, 0x3f, 0x00, 0x0c, 0x26, + 0xcf, 0xeb, 0x7b, 0x4d, 0xca, 0x50, 0xb2, 0xc4, +}; +static const unsigned char kat2152_addin0[] = { + 0xa5, 0x67, 0x9b, 0xf8, 0xc2, 0x97, 0xac, 0x08, 0x6b, 0xee, 0x3a, 0xc6, + 0xc2, 0x5f, 0xfb, 0x89, 0x5d, 0x17, 0xeb, 0xae, 0x81, 0xd5, 0x60, 0x53, + 0xc8, 0x8f, 0x2d, 0xca, 0x4f, 0x70, 0x5e, 0xf8, +}; +static const unsigned char kat2152_addin1[] = { + 0x0c, 0x0e, 0xae, 0x3c, 0x9b, 0x02, 0x24, 0x2b, 0xd8, 0x6d, 0x38, 0x73, + 0x3d, 0x02, 0x8e, 0x49, 0x0e, 0xe7, 0xcf, 0xb6, 0xf0, 0x7c, 0x9b, 0xc1, + 0xd7, 0x61, 0x8f, 0x6d, 0xaa, 0x20, 0x56, 0xc1, +}; +static const unsigned char kat2152_retbits[] = { + 0x29, 0xc0, 0x9f, 0xa1, 0x97, 0x95, 0xa7, 0xab, 0x05, 0x2a, 0xc5, 0x56, + 0x84, 0xe6, 0x83, 0x57, 0x53, 0x9c, 0x80, 0xa4, 0x28, 0xf7, 0x19, 0x31, + 0xef, 0x4c, 0xef, 0x5f, 0x90, 0x99, 0xf7, 0x52, 0xa8, 0x44, 0xf2, 0x1c, + 0x54, 0x66, 0x22, 0xd8, 0xa4, 0x4b, 0xf6, 0xd4, 0x6f, 0x9e, 0xc4, 0x96, + 0x72, 0x0d, 0xfe, 0xe6, 0x11, 0x88, 0xdc, 0xab, 0x68, 0x68, 0xbe, 0x18, + 0xc8, 0x26, 0xd2, 0x30, +}; +static const struct drbg_kat_pr_false kat2152_t = { + 6, kat2152_entropyin, kat2152_nonce, kat2152_persstr, + kat2152_entropyinreseed, kat2152_addinreseed, kat2152_addin0, + kat2152_addin1, kat2152_retbits +}; +static const struct drbg_kat kat2152 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2152_t +}; + +static const unsigned char kat2153_entropyin[] = { + 0xd6, 0xc4, 0x95, 0x3a, 0x45, 0x71, 0x6f, 0x32, 0x16, 0xbe, 0xd8, 0xbe, + 0x44, 0x6c, 0xd3, 0xdf, 0xce, 0x25, 0x1d, 0x7f, 0xad, 0x76, 0xe7, 0x26, + 0x4e, 0x72, 0x83, 0xf9, 0x7b, 0xd5, 0x61, 0xd6, +}; +static const unsigned char kat2153_nonce[] = { + 0xe8, 0x76, 0xf3, 0xf5, 0x7d, 0xf4, 0xf6, 0xc6, 0x9d, 0xed, 0xd5, 0xb7, + 0x72, 0xe7, 0xa4, 0x80, +}; +static const unsigned char kat2153_persstr[] = { + 0x4c, 0x1a, 0x21, 0xf8, 0x06, 0x1c, 0x95, 0xd3, 0x22, 0xaa, 0xdf, 0x4a, + 0x4c, 0x5d, 0xbc, 0x09, 0x0d, 0xd0, 0x69, 0x7e, 0xc3, 0xf2, 0x02, 0x8a, + 0xea, 0xaa, 0x00, 0x93, 0x76, 0x04, 0x02, 0x7a, +}; +static const unsigned char kat2153_entropyinreseed[] = { + 0xd8, 0xbc, 0xf4, 0xd1, 0x61, 0xea, 0x13, 0xf6, 0xf5, 0xd5, 0x2a, 0x04, + 0x99, 0x8e, 0xf7, 0xda, 0xef, 0x41, 0x79, 0xc4, 0x05, 0x83, 0x2d, 0xd6, + 0xe3, 0xe1, 0xc3, 0x7f, 0xbf, 0x2d, 0x2f, 0x53, +}; +static const unsigned char kat2153_addinreseed[] = { + 0x01, 0xf6, 0x46, 0x50, 0x95, 0x71, 0x2d, 0x5d, 0x1b, 0xe3, 0x2d, 0x24, + 0xba, 0xd4, 0x7a, 0x1d, 0xde, 0xa1, 0xdf, 0xf9, 0xf7, 0x28, 0x97, 0xa0, + 0x54, 0x6e, 0x18, 0x79, 0x9c, 0x51, 0xc1, 0xfb, +}; +static const unsigned char kat2153_addin0[] = { + 0x0f, 0x84, 0x5c, 0xe1, 0xcd, 0x10, 0x39, 0xf4, 0x00, 0x54, 0xf0, 0x6e, + 0x05, 0xc9, 0x54, 0xdd, 0xdb, 0x0d, 0x92, 0x97, 0x85, 0x57, 0xc7, 0xaa, + 0xda, 0xc4, 0x90, 0x48, 0x51, 0x7d, 0xb9, 0xe2, +}; +static const unsigned char kat2153_addin1[] = { + 0x59, 0xfb, 0x2f, 0x13, 0x3c, 0xaa, 0xd5, 0xc9, 0x5d, 0x42, 0x8f, 0xf8, + 0xb5, 0xd5, 0x96, 0xf6, 0x43, 0xbc, 0xe6, 0x64, 0xba, 0x13, 0x4f, 0x92, + 0x1a, 0xbd, 0xaa, 0xa4, 0x87, 0x76, 0x8a, 0x93, +}; +static const unsigned char kat2153_retbits[] = { + 0x11, 0x92, 0x7f, 0x50, 0x41, 0x61, 0x3a, 0x71, 0x92, 0xbe, 0x58, 0x69, + 0x7d, 0x66, 0xa4, 0x3e, 0x30, 0x24, 0x71, 0x01, 0x73, 0x0b, 0x94, 0x4c, + 0xeb, 0x1e, 0x35, 0xbc, 0x1c, 0xfe, 0x4d, 0xa4, 0x0e, 0x40, 0x70, 0x78, + 0x3a, 0xff, 0x20, 0x14, 0x2f, 0x73, 0xc4, 0xc3, 0xa8, 0xe7, 0x97, 0xeb, + 0xba, 0xba, 0x9e, 0x63, 0x9d, 0x28, 0x11, 0x9c, 0x8c, 0x67, 0x73, 0x1d, + 0x61, 0x09, 0x1d, 0xd9, +}; +static const struct drbg_kat_pr_false kat2153_t = { + 7, kat2153_entropyin, kat2153_nonce, kat2153_persstr, + kat2153_entropyinreseed, kat2153_addinreseed, kat2153_addin0, + kat2153_addin1, kat2153_retbits +}; +static const struct drbg_kat kat2153 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2153_t +}; + +static const unsigned char kat2154_entropyin[] = { + 0x2b, 0x08, 0xea, 0x18, 0x85, 0xcd, 0x66, 0x80, 0x46, 0x84, 0x86, 0x84, + 0x46, 0xfd, 0x79, 0x5c, 0x94, 0x10, 0x5e, 0x72, 0xf8, 0xb4, 0xa0, 0x99, + 0x7e, 0xd1, 0x78, 0xe0, 0xcd, 0x69, 0x59, 0xb2, +}; +static const unsigned char kat2154_nonce[] = { + 0x30, 0x6b, 0x93, 0xb9, 0x3b, 0x2a, 0xb7, 0xe9, 0x4c, 0x2a, 0x7f, 0x0b, + 0x40, 0x1d, 0x18, 0xea, +}; +static const unsigned char kat2154_persstr[] = { + 0x7a, 0x49, 0x1a, 0xae, 0x8a, 0x65, 0xeb, 0x02, 0x40, 0x26, 0x2f, 0x60, + 0x4b, 0xb0, 0x02, 0x39, 0xea, 0x8a, 0xd4, 0xc1, 0x40, 0x68, 0xa4, 0x61, + 0x06, 0xff, 0x68, 0x4d, 0x0f, 0x5e, 0x9c, 0xc4, +}; +static const unsigned char kat2154_entropyinreseed[] = { + 0x38, 0x39, 0x0f, 0x35, 0x7d, 0x77, 0x70, 0xef, 0x3e, 0xa7, 0xdf, 0x82, + 0x37, 0x1e, 0x7e, 0xcf, 0x1e, 0xd1, 0x76, 0xfd, 0xba, 0x0d, 0x77, 0x6f, + 0x11, 0x27, 0x23, 0xe3, 0xd3, 0x38, 0xf0, 0xd6, +}; +static const unsigned char kat2154_addinreseed[] = { + 0x75, 0xce, 0x68, 0x80, 0x28, 0x17, 0x7a, 0xab, 0xe8, 0xe9, 0x5f, 0x0f, + 0x50, 0x49, 0x4c, 0xf2, 0xb1, 0x3b, 0x21, 0x8b, 0x1b, 0x71, 0x52, 0x6c, + 0xed, 0x09, 0x77, 0xbc, 0x6b, 0x6e, 0x47, 0xa9, +}; +static const unsigned char kat2154_addin0[] = { + 0x80, 0x70, 0x92, 0xa7, 0x46, 0x23, 0xf4, 0x63, 0xe5, 0xff, 0x4d, 0x4a, + 0xb8, 0x4a, 0x1b, 0x53, 0x9c, 0x34, 0x6b, 0xf4, 0x79, 0x8b, 0x4c, 0x66, + 0x1a, 0x78, 0x17, 0x83, 0x8b, 0x41, 0xfd, 0xe7, +}; +static const unsigned char kat2154_addin1[] = { + 0xdb, 0xcb, 0x02, 0x35, 0x7c, 0x44, 0xb7, 0x70, 0xe6, 0x75, 0x3f, 0xbb, + 0xb1, 0x62, 0x2c, 0xa2, 0x89, 0x3e, 0x7c, 0xa4, 0x04, 0xd7, 0x93, 0xc5, + 0x4c, 0xf4, 0x02, 0xff, 0xb7, 0x8d, 0xec, 0x6c, +}; +static const unsigned char kat2154_retbits[] = { + 0xa6, 0x0b, 0xc7, 0x53, 0x07, 0xf6, 0x83, 0x34, 0x51, 0x0e, 0xc3, 0x22, + 0x4a, 0x8a, 0x1e, 0xb1, 0xc9, 0x89, 0x25, 0x14, 0x55, 0xa8, 0xaa, 0x89, + 0xff, 0x1f, 0x91, 0x43, 0x53, 0x7b, 0x4e, 0xdd, 0x35, 0xce, 0xb0, 0xa9, + 0xce, 0xfd, 0x7b, 0x4f, 0x71, 0x5e, 0xe1, 0x70, 0x9f, 0xc7, 0xda, 0xe7, + 0x19, 0xfd, 0xfa, 0xe8, 0xb2, 0x02, 0x79, 0x09, 0x7c, 0xf8, 0x6b, 0x7f, + 0x48, 0x5d, 0x34, 0xcd, +}; +static const struct drbg_kat_pr_false kat2154_t = { + 8, kat2154_entropyin, kat2154_nonce, kat2154_persstr, + kat2154_entropyinreseed, kat2154_addinreseed, kat2154_addin0, + kat2154_addin1, kat2154_retbits +}; +static const struct drbg_kat kat2154 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2154_t +}; + +static const unsigned char kat2155_entropyin[] = { + 0x83, 0x6f, 0x18, 0xd7, 0xe0, 0xa9, 0x1e, 0x37, 0x26, 0xdd, 0x83, 0x30, + 0xa2, 0x3d, 0x09, 0x6a, 0x7e, 0xe5, 0xf8, 0x1a, 0xd2, 0x76, 0x75, 0x0a, + 0x53, 0xe8, 0x72, 0xff, 0xfe, 0x36, 0xd2, 0x8a, +}; +static const unsigned char kat2155_nonce[] = { + 0x32, 0x01, 0x9f, 0xf2, 0x9b, 0xfc, 0x47, 0x29, 0xc7, 0x63, 0x9f, 0x74, + 0xba, 0xd7, 0x22, 0x4b, +}; +static const unsigned char kat2155_persstr[] = { + 0xfe, 0xb7, 0x8b, 0xd6, 0x29, 0xee, 0xec, 0xf4, 0xfc, 0x04, 0x00, 0xd5, + 0x8c, 0x4c, 0x87, 0x15, 0xfd, 0xa9, 0x65, 0xbf, 0x76, 0x90, 0x5d, 0x14, + 0x6d, 0x58, 0xf8, 0x9f, 0x90, 0xf4, 0x00, 0x52, +}; +static const unsigned char kat2155_entropyinreseed[] = { + 0x7a, 0x96, 0x33, 0x48, 0xb1, 0xdd, 0xd6, 0x9c, 0xa3, 0x74, 0xad, 0xba, + 0x0c, 0x8b, 0x57, 0x76, 0xc9, 0xb9, 0x8c, 0x29, 0x3a, 0x67, 0xa0, 0xbd, + 0x9b, 0x76, 0x32, 0x85, 0x13, 0xc7, 0x5d, 0x4b, +}; +static const unsigned char kat2155_addinreseed[] = { + 0x8a, 0x91, 0x07, 0x8e, 0xf7, 0x08, 0x5e, 0x8e, 0x6a, 0x14, 0x27, 0xae, + 0xac, 0x3f, 0xc7, 0x93, 0x1d, 0xeb, 0xa0, 0xa7, 0x8a, 0xc1, 0x86, 0x62, + 0x21, 0x6a, 0xc9, 0xa6, 0xaa, 0xff, 0xd7, 0xea, +}; +static const unsigned char kat2155_addin0[] = { + 0xb0, 0x72, 0x33, 0x93, 0x41, 0x9e, 0x29, 0xfc, 0xbc, 0x02, 0x97, 0x43, + 0xce, 0x53, 0xd0, 0xd6, 0xd1, 0x90, 0x5a, 0xd1, 0x9c, 0x0d, 0x80, 0xe6, + 0xed, 0x68, 0x1a, 0x3b, 0xb1, 0xaa, 0x71, 0xa0, +}; +static const unsigned char kat2155_addin1[] = { + 0xa2, 0xd3, 0xe9, 0x6c, 0xd6, 0x6c, 0xe7, 0x7d, 0x72, 0x76, 0xd8, 0x81, + 0x92, 0x35, 0xab, 0xcb, 0x00, 0xdf, 0x30, 0xf3, 0xb9, 0xb8, 0x18, 0x8e, + 0x89, 0x50, 0x7c, 0x97, 0x81, 0x1a, 0xe7, 0x70, +}; +static const unsigned char kat2155_retbits[] = { + 0x03, 0x45, 0x71, 0x27, 0x52, 0x3c, 0xe2, 0x5a, 0xe9, 0xa7, 0xdd, 0xed, + 0xd6, 0x57, 0xcc, 0x2e, 0x36, 0x20, 0xd2, 0xc3, 0xec, 0x18, 0x63, 0x7a, + 0x00, 0x39, 0x4b, 0x1a, 0x07, 0x2c, 0x04, 0xdf, 0xb8, 0x05, 0xb5, 0xb7, + 0xac, 0x91, 0x7f, 0xfa, 0x47, 0x4a, 0x7a, 0x5e, 0xc4, 0x72, 0x1d, 0x29, + 0xab, 0xec, 0xdc, 0x98, 0x41, 0xd3, 0x57, 0x50, 0xc6, 0xe3, 0xfc, 0xaa, + 0x8f, 0xc5, 0x4f, 0xd3, +}; +static const struct drbg_kat_pr_false kat2155_t = { + 9, kat2155_entropyin, kat2155_nonce, kat2155_persstr, + kat2155_entropyinreseed, kat2155_addinreseed, kat2155_addin0, + kat2155_addin1, kat2155_retbits +}; +static const struct drbg_kat kat2155 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2155_t +}; + +static const unsigned char kat2156_entropyin[] = { + 0x99, 0xdd, 0xe8, 0x97, 0xb5, 0xa3, 0xc4, 0x5c, 0x30, 0x7f, 0x68, 0x92, + 0x1a, 0xed, 0x2c, 0x58, 0x05, 0xef, 0x3b, 0x2e, 0xe2, 0xfe, 0x6d, 0xbd, + 0xf0, 0xf5, 0x8f, 0x67, 0x7c, 0xac, 0x5f, 0x34, +}; +static const unsigned char kat2156_nonce[] = { + 0xd3, 0x76, 0xd5, 0xb1, 0xbc, 0xd4, 0x1e, 0xa1, 0x61, 0x13, 0x71, 0xd5, + 0x72, 0x13, 0x11, 0x9b, +}; +static const unsigned char kat2156_persstr[] = { + 0xce, 0x0f, 0xa4, 0x3e, 0xb5, 0x72, 0x95, 0x29, 0xce, 0xaf, 0x3e, 0x7c, + 0x6d, 0x63, 0x19, 0x6c, 0x71, 0x08, 0xda, 0xec, 0x1a, 0x30, 0x2d, 0x38, + 0xfd, 0x6f, 0x52, 0x35, 0xa3, 0xcb, 0x59, 0x3a, +}; +static const unsigned char kat2156_entropyinreseed[] = { + 0x49, 0x8d, 0x10, 0x60, 0x84, 0x16, 0x9b, 0x38, 0xf9, 0xdb, 0x61, 0xe1, + 0x0c, 0x87, 0x67, 0x39, 0x26, 0x4e, 0x0d, 0x35, 0xa3, 0x31, 0x4c, 0xf1, + 0x6b, 0xc7, 0x2d, 0xfb, 0x67, 0xbf, 0xbb, 0x36, +}; +static const unsigned char kat2156_addinreseed[] = { + 0xc1, 0x95, 0x9d, 0xbb, 0xac, 0x36, 0xef, 0xca, 0xf1, 0x90, 0x15, 0x48, + 0x10, 0xcd, 0x76, 0x5b, 0xe4, 0xac, 0x05, 0x0d, 0xb9, 0x3b, 0xc7, 0x67, + 0xb0, 0xa4, 0xef, 0xba, 0xd6, 0x84, 0x1b, 0x05, +}; +static const unsigned char kat2156_addin0[] = { + 0x07, 0xc9, 0x48, 0xe6, 0x87, 0x92, 0xfe, 0x9c, 0xb8, 0x9d, 0xb9, 0x3f, + 0xed, 0x75, 0xa9, 0x41, 0xa9, 0x1e, 0x55, 0x2c, 0x80, 0x26, 0x20, 0x4e, + 0x90, 0x30, 0x7e, 0x36, 0x0c, 0xc3, 0x04, 0x40, +}; +static const unsigned char kat2156_addin1[] = { + 0x36, 0xd3, 0xde, 0xb7, 0xa3, 0x21, 0xee, 0xf9, 0xc1, 0x9f, 0xad, 0x4d, + 0x79, 0xb3, 0x1b, 0xdf, 0x40, 0x84, 0x53, 0x56, 0xdb, 0x3a, 0x3f, 0xcc, + 0xe9, 0xf2, 0x14, 0x7f, 0xfb, 0xe0, 0xcc, 0x8a, +}; +static const unsigned char kat2156_retbits[] = { + 0x91, 0x1d, 0x89, 0xa6, 0x5c, 0xc1, 0x4b, 0x71, 0xdb, 0xae, 0x07, 0x58, + 0x7d, 0xc0, 0xe4, 0x23, 0x8c, 0x97, 0x13, 0xa5, 0xd7, 0x76, 0xac, 0xab, + 0x91, 0x6f, 0x09, 0x9e, 0x23, 0xf3, 0xd7, 0x8d, 0xe6, 0x17, 0xc5, 0xf6, + 0x97, 0xc9, 0x5e, 0x70, 0xc7, 0xa0, 0xec, 0x78, 0x4a, 0x41, 0x92, 0xad, + 0xce, 0x1e, 0xfc, 0x90, 0xc3, 0x36, 0xef, 0x6c, 0x21, 0xa5, 0x19, 0xa6, + 0x29, 0x5d, 0xc6, 0xb6, +}; +static const struct drbg_kat_pr_false kat2156_t = { + 10, kat2156_entropyin, kat2156_nonce, kat2156_persstr, + kat2156_entropyinreseed, kat2156_addinreseed, kat2156_addin0, + kat2156_addin1, kat2156_retbits +}; +static const struct drbg_kat kat2156 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2156_t +}; + +static const unsigned char kat2157_entropyin[] = { + 0xe1, 0x41, 0xd4, 0x5d, 0x2b, 0xaf, 0xcb, 0x32, 0xd7, 0x27, 0xc5, 0x2d, + 0x00, 0x79, 0x18, 0x8a, 0xdb, 0x4e, 0x14, 0x0b, 0x0a, 0xbb, 0xb2, 0x57, + 0xfa, 0x4b, 0x76, 0xcb, 0x14, 0xb5, 0x6b, 0x48, +}; +static const unsigned char kat2157_nonce[] = { + 0xd0, 0x14, 0x02, 0x1d, 0x82, 0xd7, 0x1e, 0x7d, 0xa0, 0x7d, 0xb6, 0x7c, + 0x75, 0x1b, 0x6a, 0x13, +}; +static const unsigned char kat2157_persstr[] = { + 0x23, 0xb4, 0x98, 0x39, 0xc8, 0x22, 0x13, 0xfc, 0xcf, 0x8e, 0x82, 0x11, + 0x4d, 0xb3, 0x81, 0x9c, 0xfd, 0xd8, 0xc0, 0x44, 0x0d, 0x64, 0xbd, 0xea, + 0xe4, 0x6e, 0x79, 0x8b, 0xed, 0xca, 0xff, 0x4d, +}; +static const unsigned char kat2157_entropyinreseed[] = { + 0x68, 0x32, 0xcd, 0xf2, 0xab, 0x89, 0x77, 0x07, 0x53, 0x46, 0x66, 0xfd, + 0x47, 0x12, 0x6c, 0x07, 0xef, 0xa3, 0xc5, 0x38, 0x35, 0x35, 0xac, 0x85, + 0xcf, 0xee, 0xc8, 0xc6, 0xba, 0x1e, 0x17, 0x2b, +}; +static const unsigned char kat2157_addinreseed[] = { + 0xcc, 0x22, 0x9c, 0x81, 0xa1, 0xc0, 0xbb, 0x7c, 0x5e, 0x63, 0x26, 0xc6, + 0x12, 0xf6, 0xf3, 0x0d, 0x1a, 0x54, 0x4f, 0xb8, 0xbf, 0xdf, 0x55, 0xd0, + 0x60, 0xda, 0xd6, 0xae, 0x01, 0x4d, 0x94, 0x33, +}; +static const unsigned char kat2157_addin0[] = { + 0x68, 0x07, 0xbd, 0x4a, 0x3c, 0xe8, 0x49, 0xc7, 0x2d, 0x02, 0x21, 0x5f, + 0x97, 0x0e, 0x8e, 0x2a, 0xca, 0x54, 0xfe, 0xd1, 0x63, 0x0e, 0x91, 0x07, + 0x07, 0xb3, 0x01, 0xd6, 0x3b, 0xe9, 0x87, 0x62, +}; +static const unsigned char kat2157_addin1[] = { + 0x0a, 0xd1, 0x42, 0xdc, 0xeb, 0xfd, 0xf2, 0x2a, 0x2d, 0x2e, 0xb5, 0xe7, + 0x58, 0xbc, 0x79, 0xc5, 0xaf, 0x8e, 0xd6, 0x40, 0x39, 0x02, 0x8e, 0xe8, + 0xa5, 0xc3, 0xe8, 0xc2, 0x4d, 0x4f, 0x47, 0x13, +}; +static const unsigned char kat2157_retbits[] = { + 0xfb, 0x5b, 0xa7, 0xa1, 0x8f, 0x12, 0x22, 0x20, 0x1d, 0xc0, 0xbf, 0xa5, + 0x4c, 0xba, 0xe4, 0xc5, 0xee, 0x42, 0xdf, 0xe4, 0x8f, 0x58, 0xd6, 0x2c, + 0x50, 0xb3, 0xda, 0xdf, 0x5d, 0xca, 0x02, 0x1a, 0xa8, 0x48, 0x49, 0x21, + 0xf4, 0x5d, 0x89, 0x96, 0x2b, 0x5a, 0x82, 0x8e, 0x4b, 0xed, 0x53, 0xca, + 0xb6, 0x7a, 0xe2, 0x8c, 0xf8, 0xf0, 0x65, 0x4a, 0x3c, 0x38, 0xeb, 0x0b, + 0xc3, 0x6a, 0x13, 0xf0, +}; +static const struct drbg_kat_pr_false kat2157_t = { + 11, kat2157_entropyin, kat2157_nonce, kat2157_persstr, + kat2157_entropyinreseed, kat2157_addinreseed, kat2157_addin0, + kat2157_addin1, kat2157_retbits +}; +static const struct drbg_kat kat2157 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2157_t +}; + +static const unsigned char kat2158_entropyin[] = { + 0xec, 0x78, 0xd9, 0xf3, 0x85, 0xfc, 0xd4, 0x6d, 0xf1, 0xb0, 0x1d, 0xc0, + 0x56, 0x8c, 0xbf, 0x23, 0xaf, 0xe0, 0xa7, 0x19, 0x6a, 0x1c, 0x08, 0x3f, + 0x05, 0xa5, 0x3c, 0x5b, 0xee, 0x61, 0x00, 0x48, +}; +static const unsigned char kat2158_nonce[] = { + 0x1e, 0x18, 0x3f, 0x9d, 0x70, 0x24, 0xcb, 0xc8, 0x5e, 0xc6, 0x98, 0x49, + 0x1c, 0x89, 0x0b, 0x56, +}; +static const unsigned char kat2158_persstr[] = { + 0x5d, 0x09, 0x0b, 0x15, 0xe4, 0x89, 0x72, 0x31, 0x21, 0xbf, 0xdc, 0x9c, + 0x2b, 0x8f, 0x82, 0x87, 0x71, 0x8d, 0xca, 0xd0, 0x65, 0x44, 0xf0, 0x65, + 0x90, 0x2d, 0xe6, 0x86, 0x9c, 0x5f, 0x22, 0xe6, +}; +static const unsigned char kat2158_entropyinreseed[] = { + 0x3a, 0x39, 0x11, 0x41, 0x5f, 0x45, 0xd3, 0xf9, 0xf6, 0x65, 0xab, 0x3d, + 0x28, 0xc5, 0xe9, 0x5c, 0xa0, 0xd7, 0xf8, 0x6a, 0x5e, 0x5b, 0xc9, 0xc7, + 0x6d, 0xc1, 0xe3, 0x5a, 0x5a, 0xc6, 0xfe, 0x06, +}; +static const unsigned char kat2158_addinreseed[] = { + 0xba, 0xca, 0x0f, 0xb1, 0x3e, 0xf4, 0x5e, 0x9c, 0x1d, 0xde, 0x22, 0xf5, + 0x6a, 0xcf, 0x04, 0x8d, 0x53, 0x01, 0xcf, 0xa9, 0x27, 0x84, 0xa1, 0xe9, + 0x57, 0x31, 0x6b, 0x93, 0x37, 0xda, 0x25, 0x15, +}; +static const unsigned char kat2158_addin0[] = { + 0xcf, 0xa0, 0x0b, 0xdc, 0x20, 0xda, 0xb7, 0x7d, 0xf9, 0xbe, 0xcd, 0x0e, + 0x21, 0x9c, 0xec, 0x4e, 0x26, 0x61, 0xe2, 0xe0, 0x15, 0xa5, 0x0a, 0xa6, + 0x46, 0x91, 0x25, 0xa3, 0xd0, 0x9f, 0xfd, 0xa8, +}; +static const unsigned char kat2158_addin1[] = { + 0x11, 0x37, 0x96, 0x92, 0x7f, 0x70, 0xaa, 0x34, 0xa8, 0x27, 0xaf, 0xb8, + 0x92, 0xab, 0xaa, 0x38, 0xaf, 0x16, 0x15, 0xda, 0x0d, 0xa1, 0x34, 0x34, + 0xf5, 0xbe, 0x6c, 0xe4, 0x48, 0xe4, 0x3f, 0xe2, +}; +static const unsigned char kat2158_retbits[] = { + 0x79, 0x20, 0x19, 0x54, 0xe9, 0xb5, 0x54, 0x41, 0x95, 0xba, 0xc5, 0x46, + 0x2e, 0xbf, 0x5c, 0x50, 0x23, 0x00, 0x45, 0x85, 0x24, 0x53, 0x3f, 0xdf, + 0xd7, 0xc8, 0xe4, 0xcc, 0x1a, 0x6d, 0x1b, 0x28, 0x4f, 0x12, 0xa0, 0x03, + 0xed, 0x49, 0x4b, 0x67, 0x16, 0x9c, 0xb1, 0x7d, 0x0f, 0xcd, 0x9e, 0xb5, + 0x7c, 0x93, 0xb8, 0x0f, 0x5f, 0xc3, 0xf6, 0xd4, 0xfa, 0x98, 0x3c, 0x63, + 0xbd, 0xa5, 0x95, 0xa6, +}; +static const struct drbg_kat_pr_false kat2158_t = { + 12, kat2158_entropyin, kat2158_nonce, kat2158_persstr, + kat2158_entropyinreseed, kat2158_addinreseed, kat2158_addin0, + kat2158_addin1, kat2158_retbits +}; +static const struct drbg_kat kat2158 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2158_t +}; + +static const unsigned char kat2159_entropyin[] = { + 0x3b, 0x4c, 0x1f, 0x22, 0x51, 0x75, 0x86, 0x2c, 0x15, 0xf5, 0x66, 0xf6, + 0xe8, 0x40, 0xa5, 0x2c, 0x71, 0xad, 0x24, 0x19, 0x76, 0x28, 0x8b, 0x95, + 0x21, 0x13, 0x51, 0x44, 0x1f, 0x55, 0xed, 0xb0, +}; +static const unsigned char kat2159_nonce[] = { + 0xc2, 0x10, 0x67, 0x4f, 0x93, 0x22, 0xb5, 0xd1, 0xec, 0xd3, 0xb5, 0x70, + 0x65, 0xe6, 0xbb, 0xe8, +}; +static const unsigned char kat2159_persstr[] = { + 0xfc, 0x46, 0x39, 0xe3, 0x97, 0x1b, 0xba, 0x34, 0xae, 0x3a, 0xda, 0xf8, + 0x8c, 0xb3, 0xc1, 0x00, 0x7c, 0x98, 0x61, 0x3f, 0x57, 0x39, 0x58, 0xea, + 0x74, 0x8c, 0x3d, 0x01, 0xa1, 0x1d, 0x0d, 0xac, +}; +static const unsigned char kat2159_entropyinreseed[] = { + 0xbb, 0x42, 0xe1, 0x91, 0xb6, 0x17, 0xe0, 0x1d, 0xe8, 0x34, 0x34, 0xf1, + 0x39, 0x75, 0xc0, 0x3a, 0xe1, 0xd1, 0x1d, 0xf3, 0x47, 0x04, 0x63, 0x78, + 0x15, 0xfe, 0x71, 0xb6, 0x87, 0x6d, 0x9d, 0x7b, +}; +static const unsigned char kat2159_addinreseed[] = { + 0xb6, 0x5b, 0xb9, 0xac, 0x14, 0xee, 0xac, 0x53, 0xaa, 0xb6, 0x85, 0x6f, + 0x3f, 0x90, 0x4b, 0x35, 0x3b, 0x6d, 0xb9, 0x11, 0xd5, 0xe1, 0xa4, 0x05, + 0x41, 0x4b, 0xd6, 0x9b, 0x8e, 0xf8, 0x2f, 0x8b, +}; +static const unsigned char kat2159_addin0[] = { + 0x3c, 0x1e, 0x5f, 0xe0, 0x21, 0x2b, 0x72, 0xab, 0x2a, 0x8d, 0xc5, 0xd8, + 0xa1, 0x2e, 0x38, 0xe9, 0x7f, 0xcb, 0x0c, 0x3d, 0xaf, 0xb7, 0xd8, 0x79, + 0x35, 0xc4, 0x67, 0x85, 0xe4, 0xc1, 0x7c, 0xb0, +}; +static const unsigned char kat2159_addin1[] = { + 0xb6, 0x79, 0x1e, 0xae, 0x5c, 0x22, 0x05, 0x99, 0x65, 0x47, 0x2b, 0x7a, + 0x7c, 0x71, 0x99, 0xe5, 0xc6, 0x37, 0xa5, 0x3f, 0x92, 0xb0, 0xa7, 0x10, + 0x29, 0x0a, 0x9d, 0xde, 0xec, 0xb7, 0x6e, 0xc6, +}; +static const unsigned char kat2159_retbits[] = { + 0xd7, 0x74, 0x5b, 0x5d, 0x74, 0xae, 0xee, 0x1f, 0x90, 0xe5, 0xd9, 0x2b, + 0x3f, 0x72, 0x52, 0xae, 0x55, 0xbc, 0x03, 0xb2, 0xdb, 0x0c, 0x07, 0x3d, + 0x43, 0x58, 0xa3, 0x97, 0xe3, 0x97, 0x2b, 0x6e, 0x86, 0x88, 0x44, 0x84, + 0x85, 0xe2, 0x26, 0x31, 0xbf, 0xe2, 0xf0, 0xe1, 0x56, 0x52, 0x3a, 0xca, + 0x16, 0x3e, 0xbe, 0x39, 0x2d, 0xdc, 0xb1, 0xe5, 0x24, 0xa8, 0x39, 0x8f, + 0x75, 0x4b, 0x4c, 0x4d, +}; +static const struct drbg_kat_pr_false kat2159_t = { + 13, kat2159_entropyin, kat2159_nonce, kat2159_persstr, + kat2159_entropyinreseed, kat2159_addinreseed, kat2159_addin0, + kat2159_addin1, kat2159_retbits +}; +static const struct drbg_kat kat2159 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2159_t +}; + +static const unsigned char kat2160_entropyin[] = { + 0xbe, 0x69, 0x23, 0xef, 0x05, 0xea, 0xae, 0x72, 0x9b, 0x5b, 0x76, 0x1b, + 0x86, 0x68, 0xab, 0x9c, 0x72, 0x08, 0x38, 0x04, 0xdf, 0x87, 0x96, 0xa3, + 0x00, 0x41, 0x94, 0x74, 0xdd, 0x66, 0x33, 0x87, +}; +static const unsigned char kat2160_nonce[] = { + 0x78, 0x06, 0x45, 0x8f, 0xfe, 0x9f, 0x20, 0x6e, 0xea, 0x8a, 0x96, 0x6b, + 0x1b, 0x23, 0xea, 0xc2, +}; +static const unsigned char kat2160_persstr[] = { + 0x8b, 0x44, 0xc7, 0xf2, 0xe1, 0xf6, 0xb1, 0xba, 0x37, 0x98, 0xe5, 0x1f, + 0x9b, 0x04, 0x8c, 0x8c, 0x8b, 0x08, 0xdf, 0x3c, 0x83, 0x58, 0x45, 0x78, + 0x71, 0x2b, 0x9f, 0x8b, 0x73, 0x7b, 0xa1, 0x1b, +}; +static const unsigned char kat2160_entropyinreseed[] = { + 0x40, 0xf0, 0xfe, 0x73, 0x6e, 0x7c, 0x94, 0xc6, 0x94, 0xeb, 0x85, 0x39, + 0xec, 0x81, 0x62, 0x66, 0x1f, 0x73, 0xa5, 0xdf, 0x5c, 0xf3, 0xd6, 0x96, + 0xb1, 0x9f, 0xa3, 0xfa, 0xcf, 0x3e, 0x32, 0xd1, +}; +static const unsigned char kat2160_addinreseed[] = { + 0x86, 0x67, 0x70, 0x96, 0xcd, 0x2f, 0xc1, 0x9f, 0xb2, 0xb7, 0x43, 0x1c, + 0xb2, 0x5f, 0x8b, 0x3f, 0x0c, 0xc1, 0xdd, 0xa2, 0x78, 0x3a, 0xf6, 0xd4, + 0x9e, 0x0f, 0x02, 0xde, 0x44, 0xd9, 0x19, 0x58, +}; +static const unsigned char kat2160_addin0[] = { + 0x63, 0x98, 0x24, 0x76, 0x80, 0x81, 0xb8, 0xf8, 0xd0, 0x9b, 0x9b, 0x4e, + 0xb5, 0x1c, 0x0b, 0xd1, 0xea, 0x56, 0x66, 0x06, 0x7a, 0xde, 0x26, 0x28, + 0xd4, 0x5e, 0x72, 0x72, 0x13, 0x84, 0xb1, 0xdd, +}; +static const unsigned char kat2160_addin1[] = { + 0x74, 0x92, 0xad, 0xa1, 0xc9, 0x6f, 0x7b, 0x2d, 0xe3, 0x29, 0xcd, 0x54, + 0x65, 0x1b, 0xde, 0x17, 0xb4, 0xfc, 0x69, 0x47, 0x12, 0x80, 0x93, 0x11, + 0x80, 0xbb, 0xde, 0xca, 0xa2, 0x88, 0x94, 0x35, +}; +static const unsigned char kat2160_retbits[] = { + 0x5c, 0x37, 0xc8, 0x29, 0xee, 0xe0, 0xa9, 0xac, 0xf2, 0xec, 0x0a, 0xf8, + 0x16, 0xc7, 0x97, 0x4a, 0x09, 0x99, 0x4e, 0x74, 0x4c, 0x07, 0x0f, 0x58, + 0xd4, 0xfc, 0xc2, 0x16, 0x49, 0x1a, 0x35, 0xbe, 0x0d, 0x32, 0x85, 0x4c, + 0xc4, 0xbf, 0x69, 0x56, 0xea, 0x5c, 0x43, 0x37, 0x0c, 0x02, 0x08, 0x4d, + 0xd3, 0x0a, 0x66, 0xfd, 0xa0, 0x89, 0xf5, 0xc4, 0x7b, 0x49, 0x75, 0xd5, + 0x9a, 0x01, 0xa0, 0x22, +}; +static const struct drbg_kat_pr_false kat2160_t = { + 14, kat2160_entropyin, kat2160_nonce, kat2160_persstr, + kat2160_entropyinreseed, kat2160_addinreseed, kat2160_addin0, + kat2160_addin1, kat2160_retbits +}; +static const struct drbg_kat kat2160 = { + PR_FALSE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat2160_t +}; + +static const unsigned char kat2161_entropyin[] = { + 0xed, 0x1e, 0x7f, 0x21, 0xef, 0x66, 0xea, 0x5d, 0x8e, 0x2a, 0x85, 0xb9, + 0x33, 0x72, 0x45, 0x44, 0x5b, 0x71, 0xd6, 0x39, 0x3a, 0x4e, 0xec, 0xb0, + 0xe6, 0x3c, 0x19, 0x3d, 0x0f, 0x72, 0xf9, 0xa9, +}; +static const unsigned char kat2161_nonce[] = {0}; +static const unsigned char kat2161_persstr[] = {0}; +static const unsigned char kat2161_entropyinreseed[] = { + 0x30, 0x3f, 0xb5, 0x19, 0xf0, 0xa4, 0xe1, 0x7d, 0x6d, 0xf0, 0xb6, 0x42, + 0x6a, 0xa0, 0xec, 0xb2, 0xa3, 0x60, 0x79, 0xbd, 0x48, 0xbe, 0x47, 0xad, + 0x2a, 0x8d, 0xbf, 0xe4, 0x8d, 0xa3, 0xef, 0xad, +}; +static const unsigned char kat2161_addinreseed[] = {0}; +static const unsigned char kat2161_addin0[] = {0}; +static const unsigned char kat2161_addin1[] = {0}; +static const unsigned char kat2161_retbits[] = { + 0xf8, 0x01, 0x11, 0xd0, 0x8e, 0x87, 0x46, 0x72, 0xf3, 0x2f, 0x42, 0x99, + 0x71, 0x33, 0xa5, 0x21, 0x0f, 0x7a, 0x93, 0x75, 0xe2, 0x2c, 0xea, 0x70, + 0x58, 0x7f, 0x9c, 0xfa, 0xfe, 0xbe, 0x0f, 0x6a, 0x6a, 0xa2, 0xeb, 0x68, + 0xe7, 0xdd, 0x91, 0x64, 0x53, 0x6d, 0x53, 0xfa, 0x02, 0x0f, 0xca, 0xb2, + 0x0f, 0x54, 0xca, 0xdd, 0xfa, 0xb7, 0xd6, 0xd9, 0x1e, 0x5f, 0xfe, 0xc1, + 0xdf, 0xd8, 0xde, 0xaa, +}; +static const struct drbg_kat_pr_false kat2161_t = { + 0, kat2161_entropyin, kat2161_nonce, kat2161_persstr, + kat2161_entropyinreseed, kat2161_addinreseed, kat2161_addin0, + kat2161_addin1, kat2161_retbits +}; +static const struct drbg_kat kat2161 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2161_t +}; + +static const unsigned char kat2162_entropyin[] = { + 0xea, 0xb5, 0xa9, 0xf2, 0x3c, 0xea, 0xc9, 0xe4, 0x19, 0x5e, 0x18, 0x5c, + 0x8c, 0xea, 0x54, 0x9d, 0x6d, 0x97, 0xd0, 0x32, 0x76, 0x22, 0x5a, 0x74, + 0x52, 0x76, 0x3c, 0x39, 0x6a, 0x7f, 0x70, 0xbf, +}; +static const unsigned char kat2162_nonce[] = {0}; +static const unsigned char kat2162_persstr[] = {0}; +static const unsigned char kat2162_entropyinreseed[] = { + 0x42, 0x58, 0x76, 0x5c, 0x65, 0xa0, 0x3a, 0xf9, 0x2f, 0xc5, 0x81, 0x6f, + 0x96, 0x6f, 0x1a, 0x66, 0x44, 0xa6, 0x13, 0x46, 0x33, 0xaa, 0xd2, 0xd5, + 0xd1, 0x9b, 0xd1, 0x92, 0xe4, 0xc1, 0x19, 0x6a, +}; +static const unsigned char kat2162_addinreseed[] = {0}; +static const unsigned char kat2162_addin0[] = {0}; +static const unsigned char kat2162_addin1[] = {0}; +static const unsigned char kat2162_retbits[] = { + 0x29, 0x15, 0xc9, 0xfa, 0xbf, 0xbf, 0x7c, 0x62, 0xd6, 0x8d, 0x83, 0xb4, + 0xe6, 0x5a, 0x23, 0x98, 0x85, 0xe8, 0x09, 0xce, 0xac, 0x97, 0xeb, 0x8e, + 0xf4, 0xb6, 0x4d, 0xf5, 0x98, 0x81, 0xc2, 0x77, 0xd3, 0xa1, 0x5e, 0x0e, + 0x15, 0xb0, 0x1d, 0x16, 0x7c, 0x49, 0x03, 0x8f, 0xad, 0x2f, 0x54, 0x78, + 0x5e, 0xa7, 0x14, 0x36, 0x6d, 0x17, 0xbb, 0x2f, 0x82, 0x39, 0xfd, 0x21, + 0x7d, 0x7e, 0x1c, 0xba, +}; +static const struct drbg_kat_pr_false kat2162_t = { + 1, kat2162_entropyin, kat2162_nonce, kat2162_persstr, + kat2162_entropyinreseed, kat2162_addinreseed, kat2162_addin0, + kat2162_addin1, kat2162_retbits +}; +static const struct drbg_kat kat2162 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2162_t +}; + +static const unsigned char kat2163_entropyin[] = { + 0x44, 0x65, 0xbf, 0x16, 0x92, 0x97, 0x81, 0x91, 0x60, 0xb8, 0xef, 0x40, + 0x6c, 0xe7, 0x68, 0xf7, 0x0d, 0x09, 0x45, 0x88, 0x32, 0x2e, 0x8a, 0x21, + 0x4a, 0x8d, 0x67, 0xd5, 0x57, 0x04, 0x93, 0x1c, +}; +static const unsigned char kat2163_nonce[] = {0}; +static const unsigned char kat2163_persstr[] = {0}; +static const unsigned char kat2163_entropyinreseed[] = { + 0xa4, 0x61, 0xf0, 0x49, 0xfc, 0xa9, 0x34, 0x9c, 0x29, 0xf4, 0xaa, 0x49, + 0x09, 0xa4, 0xd1, 0x5d, 0x11, 0xe4, 0xce, 0x72, 0x74, 0x7a, 0xd5, 0xb0, + 0xa7, 0xb1, 0xca, 0x6d, 0x83, 0xf8, 0x8f, 0xf1, +}; +static const unsigned char kat2163_addinreseed[] = {0}; +static const unsigned char kat2163_addin0[] = {0}; +static const unsigned char kat2163_addin1[] = {0}; +static const unsigned char kat2163_retbits[] = { + 0x1e, 0xd1, 0x07, 0x97, 0x63, 0xfb, 0xe2, 0xdc, 0xfc, 0x65, 0x53, 0x2d, + 0x2f, 0x1d, 0xb0, 0xe1, 0xcc, 0xd2, 0x71, 0xa9, 0xc7, 0x3b, 0x34, 0x79, + 0xf1, 0x6b, 0x0d, 0x3d, 0x99, 0x3b, 0xc0, 0x51, 0x6f, 0x4c, 0xaf, 0x6f, + 0x01, 0x85, 0xec, 0xba, 0x91, 0x2e, 0xbb, 0x8e, 0x42, 0x43, 0x7e, 0x20, + 0x16, 0xa6, 0x12, 0x14, 0x59, 0xe6, 0x4e, 0x82, 0xb4, 0x14, 0xba, 0x7f, + 0x99, 0x4a, 0x53, 0xbd, +}; +static const struct drbg_kat_pr_false kat2163_t = { + 2, kat2163_entropyin, kat2163_nonce, kat2163_persstr, + kat2163_entropyinreseed, kat2163_addinreseed, kat2163_addin0, + kat2163_addin1, kat2163_retbits +}; +static const struct drbg_kat kat2163 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2163_t +}; + +static const unsigned char kat2164_entropyin[] = { + 0x67, 0x56, 0x64, 0x94, 0xc6, 0xa1, 0x70, 0xe6, 0x5d, 0x52, 0x77, 0xb8, + 0x27, 0x26, 0x4d, 0xa1, 0x1d, 0xe1, 0xbd, 0xef, 0x34, 0x5e, 0x59, 0x3f, + 0x7a, 0x42, 0x05, 0x80, 0xbe, 0x8e, 0x3f, 0x7b, +}; +static const unsigned char kat2164_nonce[] = {0}; +static const unsigned char kat2164_persstr[] = {0}; +static const unsigned char kat2164_entropyinreseed[] = { + 0x73, 0x76, 0x52, 0xb3, 0xa4, 0xce, 0xa2, 0xe6, 0x8f, 0x28, 0xfe, 0xd8, + 0x39, 0x99, 0x41, 0x70, 0xb7, 0x01, 0xaa, 0xa0, 0xfd, 0xc0, 0x15, 0xa9, + 0x45, 0xe8, 0xee, 0x00, 0x57, 0x7a, 0x7f, 0x6e, +}; +static const unsigned char kat2164_addinreseed[] = {0}; +static const unsigned char kat2164_addin0[] = {0}; +static const unsigned char kat2164_addin1[] = {0}; +static const unsigned char kat2164_retbits[] = { + 0xe0, 0xee, 0x86, 0x95, 0x0d, 0xe5, 0x52, 0x81, 0xd8, 0x61, 0xdc, 0x65, + 0x6f, 0x80, 0xbc, 0x4b, 0xbe, 0xaf, 0x8b, 0x53, 0x03, 0xe0, 0x7d, 0xf3, + 0x53, 0xf6, 0x7a, 0xa6, 0x31, 0x83, 0x33, 0x3a, 0x43, 0x7a, 0xab, 0xc4, + 0x00, 0x64, 0x3e, 0x64, 0x8f, 0x21, 0xe6, 0x38, 0x09, 0xd6, 0x88, 0x63, + 0x2e, 0x4f, 0xc8, 0xa2, 0x5a, 0xa7, 0x40, 0x63, 0x7d, 0x81, 0x2a, 0xbe, + 0x9e, 0xb1, 0x7b, 0x5a, +}; +static const struct drbg_kat_pr_false kat2164_t = { + 3, kat2164_entropyin, kat2164_nonce, kat2164_persstr, + kat2164_entropyinreseed, kat2164_addinreseed, kat2164_addin0, + kat2164_addin1, kat2164_retbits +}; +static const struct drbg_kat kat2164 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2164_t +}; + +static const unsigned char kat2165_entropyin[] = { + 0x9b, 0xa9, 0x28, 0xf8, 0x8b, 0xc9, 0x24, 0xa1, 0xe1, 0x9e, 0xa8, 0x04, + 0xd7, 0x09, 0x6d, 0xd6, 0xc5, 0x5d, 0x94, 0x97, 0xd8, 0x89, 0xfb, 0x87, + 0xea, 0xfb, 0x17, 0x93, 0x80, 0xf7, 0xd7, 0xa5, +}; +static const unsigned char kat2165_nonce[] = {0}; +static const unsigned char kat2165_persstr[] = {0}; +static const unsigned char kat2165_entropyinreseed[] = { + 0x76, 0x33, 0x7f, 0x55, 0xd0, 0x7c, 0x33, 0xc2, 0x11, 0x29, 0xaa, 0x69, + 0x49, 0x12, 0x70, 0x3e, 0x4f, 0xef, 0x8e, 0x54, 0x01, 0x18, 0x5c, 0x7e, + 0x7d, 0x47, 0x78, 0x4e, 0x96, 0x3c, 0x87, 0xa4, +}; +static const unsigned char kat2165_addinreseed[] = {0}; +static const unsigned char kat2165_addin0[] = {0}; +static const unsigned char kat2165_addin1[] = {0}; +static const unsigned char kat2165_retbits[] = { + 0x51, 0x0b, 0x18, 0xec, 0x20, 0x12, 0x0d, 0xa8, 0x79, 0x8c, 0xa9, 0x44, + 0xdf, 0xc9, 0x7c, 0x63, 0xae, 0x62, 0x26, 0x6d, 0x12, 0x2c, 0x70, 0xce, + 0x5c, 0xf4, 0x72, 0xd5, 0xba, 0x71, 0x7d, 0xfc, 0x80, 0xa1, 0xcc, 0xe0, + 0xc2, 0x9a, 0x8c, 0xf3, 0xd2, 0x21, 0x58, 0x3c, 0x72, 0x23, 0xb3, 0x31, + 0x72, 0x7b, 0x41, 0xa0, 0xcd, 0x56, 0xd4, 0xca, 0x42, 0x5e, 0x76, 0x78, + 0x44, 0x17, 0x84, 0xfc, +}; +static const struct drbg_kat_pr_false kat2165_t = { + 4, kat2165_entropyin, kat2165_nonce, kat2165_persstr, + kat2165_entropyinreseed, kat2165_addinreseed, kat2165_addin0, + kat2165_addin1, kat2165_retbits +}; +static const struct drbg_kat kat2165 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2165_t +}; + +static const unsigned char kat2166_entropyin[] = { + 0xeb, 0x20, 0x96, 0x8b, 0x85, 0xcd, 0xab, 0xe8, 0x7c, 0x64, 0x00, 0xd8, + 0xb0, 0x1d, 0x93, 0xc0, 0x24, 0x0a, 0xce, 0x20, 0xa4, 0x0b, 0xbb, 0x49, + 0x96, 0xa0, 0xde, 0x6e, 0xd3, 0xc4, 0x93, 0x26, +}; +static const unsigned char kat2166_nonce[] = {0}; +static const unsigned char kat2166_persstr[] = {0}; +static const unsigned char kat2166_entropyinreseed[] = { + 0xc4, 0x6e, 0x67, 0xb8, 0x02, 0x7d, 0xb6, 0xb5, 0xba, 0xc4, 0x09, 0x06, + 0xad, 0x0b, 0xe6, 0x27, 0x59, 0x52, 0x4a, 0x2f, 0x3d, 0x90, 0xa5, 0x02, + 0x5b, 0x18, 0x8e, 0x7a, 0x85, 0x0c, 0x73, 0xbe, +}; +static const unsigned char kat2166_addinreseed[] = {0}; +static const unsigned char kat2166_addin0[] = {0}; +static const unsigned char kat2166_addin1[] = {0}; +static const unsigned char kat2166_retbits[] = { + 0xbd, 0x15, 0x8d, 0x21, 0xc0, 0x17, 0x2d, 0x50, 0x58, 0xf7, 0x4d, 0x69, + 0x86, 0x5c, 0x98, 0xb6, 0x10, 0x25, 0x68, 0x38, 0x07, 0xdf, 0x93, 0x0b, + 0xf5, 0xfc, 0x3c, 0x50, 0x0c, 0x8c, 0x10, 0xc7, 0x1d, 0x88, 0x04, 0xfa, + 0x67, 0xdb, 0x41, 0x3a, 0x4a, 0x5c, 0x53, 0xd5, 0x7a, 0x52, 0xaa, 0xac, + 0x46, 0x96, 0x98, 0xb4, 0xa4, 0x2f, 0xda, 0x0e, 0xed, 0xf7, 0xb4, 0x5d, + 0x36, 0x07, 0x86, 0x39, +}; +static const struct drbg_kat_pr_false kat2166_t = { + 5, kat2166_entropyin, kat2166_nonce, kat2166_persstr, + kat2166_entropyinreseed, kat2166_addinreseed, kat2166_addin0, + kat2166_addin1, kat2166_retbits +}; +static const struct drbg_kat kat2166 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2166_t +}; + +static const unsigned char kat2167_entropyin[] = { + 0x7b, 0x32, 0x92, 0xfe, 0xd2, 0x22, 0x26, 0x31, 0x5b, 0x52, 0xc1, 0x2e, + 0x0a, 0x49, 0x3e, 0xb4, 0xed, 0xa9, 0xa7, 0x94, 0x98, 0xcc, 0x71, 0x98, + 0x5a, 0x3b, 0xd0, 0x7d, 0x29, 0xe5, 0xae, 0x04, +}; +static const unsigned char kat2167_nonce[] = {0}; +static const unsigned char kat2167_persstr[] = {0}; +static const unsigned char kat2167_entropyinreseed[] = { + 0x21, 0x31, 0x7b, 0xba, 0x5c, 0x80, 0x5b, 0x6e, 0x05, 0xa1, 0x13, 0x7c, + 0x90, 0xb6, 0x55, 0x9b, 0xf1, 0x02, 0x7c, 0x2a, 0x80, 0xb9, 0x5d, 0x17, + 0x6e, 0x31, 0xa8, 0x7f, 0x6d, 0xdd, 0x48, 0xb9, +}; +static const unsigned char kat2167_addinreseed[] = {0}; +static const unsigned char kat2167_addin0[] = {0}; +static const unsigned char kat2167_addin1[] = {0}; +static const unsigned char kat2167_retbits[] = { + 0xeb, 0x68, 0xb9, 0x98, 0x5d, 0xb9, 0xfc, 0x86, 0x54, 0xe7, 0x21, 0x9c, + 0x85, 0x99, 0xf4, 0x2e, 0xc0, 0x16, 0x4b, 0x42, 0xb5, 0xe9, 0x5a, 0x08, + 0x7c, 0x4e, 0xe8, 0xbd, 0x88, 0x98, 0xfa, 0x69, 0x54, 0x8b, 0x8c, 0x5d, + 0xa1, 0xaf, 0x2a, 0x78, 0x5f, 0x5a, 0x01, 0x49, 0xdd, 0x30, 0xc8, 0x89, + 0x22, 0x12, 0x3d, 0x44, 0x9e, 0x32, 0x4c, 0x39, 0x9d, 0xf4, 0xb5, 0x24, + 0xa3, 0x3e, 0x5a, 0x9d, +}; +static const struct drbg_kat_pr_false kat2167_t = { + 6, kat2167_entropyin, kat2167_nonce, kat2167_persstr, + kat2167_entropyinreseed, kat2167_addinreseed, kat2167_addin0, + kat2167_addin1, kat2167_retbits +}; +static const struct drbg_kat kat2167 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2167_t +}; + +static const unsigned char kat2168_entropyin[] = { + 0x47, 0x7b, 0xaa, 0xc7, 0x30, 0xe5, 0x34, 0xf2, 0xe2, 0x52, 0x5e, 0x83, + 0x71, 0x98, 0x02, 0x76, 0x4b, 0x95, 0x4a, 0xcf, 0x97, 0x32, 0xe8, 0x72, + 0x4d, 0x85, 0x6d, 0xcd, 0x12, 0x4a, 0xea, 0xc7, +}; +static const unsigned char kat2168_nonce[] = {0}; +static const unsigned char kat2168_persstr[] = {0}; +static const unsigned char kat2168_entropyinreseed[] = { + 0x44, 0x61, 0xfa, 0x9e, 0x6f, 0xb6, 0xd4, 0x82, 0x9c, 0x8b, 0x16, 0xcb, + 0xcc, 0xb1, 0x4d, 0xed, 0xee, 0x9f, 0x0d, 0x6f, 0x58, 0x83, 0x74, 0x8d, + 0x7a, 0x90, 0xf1, 0x4f, 0xef, 0x54, 0xd8, 0xcc, +}; +static const unsigned char kat2168_addinreseed[] = {0}; +static const unsigned char kat2168_addin0[] = {0}; +static const unsigned char kat2168_addin1[] = {0}; +static const unsigned char kat2168_retbits[] = { + 0x61, 0xe5, 0xd9, 0x05, 0x6d, 0x27, 0x69, 0x1f, 0x42, 0x58, 0xe8, 0x84, + 0x4a, 0x51, 0x6e, 0x97, 0x9a, 0xeb, 0x49, 0xc5, 0xd9, 0x48, 0x26, 0x82, + 0xf9, 0x14, 0xcb, 0x9b, 0x31, 0x01, 0x72, 0xed, 0x1a, 0xe1, 0xb0, 0x1b, + 0x24, 0x1b, 0x31, 0x7a, 0x59, 0xad, 0xcc, 0x94, 0x44, 0xcd, 0xd8, 0x20, + 0x4e, 0x49, 0xb8, 0xd9, 0x17, 0x89, 0x2d, 0x23, 0x72, 0x58, 0x66, 0xcd, + 0x31, 0xef, 0xf5, 0x34, +}; +static const struct drbg_kat_pr_false kat2168_t = { + 7, kat2168_entropyin, kat2168_nonce, kat2168_persstr, + kat2168_entropyinreseed, kat2168_addinreseed, kat2168_addin0, + kat2168_addin1, kat2168_retbits +}; +static const struct drbg_kat kat2168 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2168_t +}; + +static const unsigned char kat2169_entropyin[] = { + 0x94, 0xc7, 0x7e, 0xc6, 0xe2, 0x2b, 0x85, 0xee, 0xb1, 0xd2, 0x87, 0x7b, + 0x69, 0xee, 0xb5, 0x64, 0x25, 0x8c, 0x21, 0x4e, 0x9e, 0xa5, 0x7c, 0xef, + 0x69, 0xa8, 0x29, 0xbb, 0xd8, 0xb7, 0xca, 0x09, +}; +static const unsigned char kat2169_nonce[] = {0}; +static const unsigned char kat2169_persstr[] = {0}; +static const unsigned char kat2169_entropyinreseed[] = { + 0xc2, 0x26, 0x77, 0xc5, 0x70, 0xfc, 0x95, 0x91, 0x88, 0x09, 0x42, 0x9c, + 0x24, 0x08, 0x02, 0xf6, 0xb5, 0x89, 0x6c, 0x48, 0xa1, 0x30, 0xcb, 0x19, + 0xbf, 0x1c, 0x1a, 0xd4, 0x38, 0x76, 0x22, 0xdf, +}; +static const unsigned char kat2169_addinreseed[] = {0}; +static const unsigned char kat2169_addin0[] = {0}; +static const unsigned char kat2169_addin1[] = {0}; +static const unsigned char kat2169_retbits[] = { + 0x52, 0x5d, 0x69, 0xe6, 0x83, 0x9a, 0x24, 0x2a, 0x90, 0x11, 0x79, 0xbc, + 0x2e, 0x23, 0x9e, 0xc3, 0x72, 0x26, 0x31, 0x9a, 0x34, 0x64, 0xb2, 0xaa, + 0x42, 0x1c, 0x9b, 0x5f, 0xf4, 0xc9, 0xd6, 0x71, 0x7e, 0x5b, 0x4a, 0xd4, + 0x2c, 0x91, 0x3c, 0x53, 0x29, 0x05, 0x69, 0x8d, 0xee, 0x3b, 0x82, 0x09, + 0xf2, 0xe2, 0x27, 0xae, 0x4f, 0x74, 0x8d, 0xeb, 0x3c, 0xe8, 0xd2, 0x17, + 0x46, 0xb5, 0x85, 0xbd, +}; +static const struct drbg_kat_pr_false kat2169_t = { + 8, kat2169_entropyin, kat2169_nonce, kat2169_persstr, + kat2169_entropyinreseed, kat2169_addinreseed, kat2169_addin0, + kat2169_addin1, kat2169_retbits +}; +static const struct drbg_kat kat2169 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2169_t +}; + +static const unsigned char kat2170_entropyin[] = { + 0x0e, 0x55, 0x85, 0xe1, 0x0c, 0xed, 0xd8, 0x96, 0x79, 0x2e, 0x2b, 0x91, + 0x8b, 0x2c, 0xb0, 0xa3, 0x78, 0x44, 0xb6, 0x4c, 0x86, 0x2c, 0x28, 0x3d, + 0x76, 0xc9, 0x70, 0x55, 0xc8, 0x8d, 0x70, 0x2b, +}; +static const unsigned char kat2170_nonce[] = {0}; +static const unsigned char kat2170_persstr[] = {0}; +static const unsigned char kat2170_entropyinreseed[] = { + 0x87, 0x44, 0x5a, 0x1a, 0xde, 0x00, 0x2d, 0x1f, 0x0f, 0x49, 0xd6, 0x4b, + 0xda, 0x4c, 0x8c, 0xa4, 0x27, 0x22, 0x5f, 0xf5, 0x6f, 0x37, 0x1a, 0x20, + 0xbd, 0x8a, 0x5a, 0x3b, 0xd3, 0x5f, 0xc5, 0x68, +}; +static const unsigned char kat2170_addinreseed[] = {0}; +static const unsigned char kat2170_addin0[] = {0}; +static const unsigned char kat2170_addin1[] = {0}; +static const unsigned char kat2170_retbits[] = { + 0x83, 0x06, 0x7b, 0x4a, 0x57, 0xa5, 0xf6, 0xba, 0x41, 0x8a, 0x98, 0x99, + 0x6e, 0xb1, 0x02, 0x32, 0x9d, 0x6b, 0xdc, 0x4e, 0x1d, 0xfb, 0x12, 0x54, + 0x68, 0xf1, 0xf8, 0xab, 0x36, 0xd0, 0x07, 0x32, 0x59, 0x7d, 0xe5, 0x68, + 0xc1, 0x7c, 0xae, 0x34, 0x12, 0xc9, 0xeb, 0xfa, 0xe0, 0x83, 0x77, 0xca, + 0x19, 0x40, 0x6b, 0x1a, 0xbc, 0x5e, 0x10, 0xbe, 0x5d, 0xbe, 0xac, 0xf3, + 0x83, 0x9b, 0xcf, 0x43, +}; +static const struct drbg_kat_pr_false kat2170_t = { + 9, kat2170_entropyin, kat2170_nonce, kat2170_persstr, + kat2170_entropyinreseed, kat2170_addinreseed, kat2170_addin0, + kat2170_addin1, kat2170_retbits +}; +static const struct drbg_kat kat2170 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2170_t +}; + +static const unsigned char kat2171_entropyin[] = { + 0x01, 0xd9, 0xf6, 0x24, 0x69, 0x36, 0xee, 0x66, 0x82, 0xe5, 0xcb, 0x84, + 0x0a, 0x39, 0x46, 0x28, 0xc7, 0x9d, 0x0d, 0x74, 0xc8, 0x98, 0xc7, 0x3c, + 0xac, 0x25, 0x15, 0xed, 0x9e, 0x05, 0x30, 0x3b, +}; +static const unsigned char kat2171_nonce[] = {0}; +static const unsigned char kat2171_persstr[] = {0}; +static const unsigned char kat2171_entropyinreseed[] = { + 0xe2, 0xae, 0x7e, 0x8d, 0x2e, 0x3a, 0x18, 0x29, 0x36, 0x89, 0x1c, 0x06, + 0x67, 0x51, 0xd4, 0x0d, 0xd6, 0xc9, 0x2e, 0xbe, 0x14, 0x6d, 0xd1, 0x3d, + 0x4e, 0x07, 0x65, 0x91, 0xd7, 0xd6, 0x3f, 0x8d, +}; +static const unsigned char kat2171_addinreseed[] = {0}; +static const unsigned char kat2171_addin0[] = {0}; +static const unsigned char kat2171_addin1[] = {0}; +static const unsigned char kat2171_retbits[] = { + 0x1c, 0xe0, 0x4a, 0x78, 0xac, 0x2d, 0x53, 0xdb, 0x46, 0xa1, 0xbb, 0x92, + 0x40, 0xd4, 0x7f, 0x37, 0x13, 0x4c, 0xa7, 0xa2, 0x82, 0x6c, 0x09, 0xce, + 0xb4, 0x8d, 0x53, 0x3d, 0x64, 0x5b, 0xb0, 0x87, 0xbf, 0xb7, 0x7b, 0x18, + 0xf9, 0xaa, 0xfd, 0x1c, 0xf1, 0x72, 0x7a, 0xd4, 0x8a, 0xed, 0xe2, 0x07, + 0xf4, 0x90, 0xbf, 0x53, 0xe1, 0xe1, 0x9f, 0x9f, 0x06, 0x61, 0x5d, 0xd9, + 0x37, 0x07, 0x3c, 0x11, +}; +static const struct drbg_kat_pr_false kat2171_t = { + 10, kat2171_entropyin, kat2171_nonce, kat2171_persstr, + kat2171_entropyinreseed, kat2171_addinreseed, kat2171_addin0, + kat2171_addin1, kat2171_retbits +}; +static const struct drbg_kat kat2171 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2171_t +}; + +static const unsigned char kat2172_entropyin[] = { + 0xc9, 0x11, 0x89, 0x66, 0x9a, 0xab, 0x97, 0x3c, 0x92, 0xc9, 0xa7, 0x1f, + 0xd6, 0x8d, 0xb2, 0x53, 0xd2, 0xad, 0xee, 0x1c, 0xbf, 0x25, 0xbd, 0x6a, + 0x4a, 0x1f, 0xa6, 0x69, 0xf7, 0xd0, 0x6e, 0x35, +}; +static const unsigned char kat2172_nonce[] = {0}; +static const unsigned char kat2172_persstr[] = {0}; +static const unsigned char kat2172_entropyinreseed[] = { + 0xb7, 0x6f, 0x39, 0x31, 0x10, 0x0b, 0x65, 0x8f, 0xc0, 0x64, 0xa1, 0xcd, + 0x21, 0xcb, 0x75, 0x1d, 0x57, 0x70, 0x8f, 0x71, 0xe9, 0x03, 0xbf, 0x79, + 0x08, 0xa8, 0x06, 0x16, 0xfa, 0x7e, 0x5b, 0xcf, +}; +static const unsigned char kat2172_addinreseed[] = {0}; +static const unsigned char kat2172_addin0[] = {0}; +static const unsigned char kat2172_addin1[] = {0}; +static const unsigned char kat2172_retbits[] = { + 0x86, 0xa5, 0x97, 0x07, 0xf4, 0x3f, 0x09, 0xdf, 0x04, 0xd0, 0x60, 0xe9, + 0xad, 0x08, 0x0f, 0x2d, 0x95, 0x84, 0xdc, 0x33, 0xc8, 0xf2, 0xde, 0x97, + 0x33, 0x75, 0x1d, 0xe4, 0xae, 0x17, 0xda, 0x5a, 0xc9, 0x3a, 0xd9, 0xf7, + 0xe3, 0x04, 0x39, 0x01, 0x37, 0x32, 0x52, 0x16, 0xf3, 0x7c, 0x77, 0xa7, + 0x12, 0xb6, 0x75, 0x6e, 0x6f, 0xfa, 0x38, 0x2b, 0x63, 0x49, 0x5e, 0xeb, + 0x80, 0x33, 0x24, 0x56, +}; +static const struct drbg_kat_pr_false kat2172_t = { + 11, kat2172_entropyin, kat2172_nonce, kat2172_persstr, + kat2172_entropyinreseed, kat2172_addinreseed, kat2172_addin0, + kat2172_addin1, kat2172_retbits +}; +static const struct drbg_kat kat2172 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2172_t +}; + +static const unsigned char kat2173_entropyin[] = { + 0xb0, 0xc3, 0x5b, 0xba, 0x01, 0x04, 0x33, 0x98, 0x44, 0x3d, 0x68, 0xdf, + 0xe2, 0xc8, 0x89, 0x89, 0x33, 0xce, 0x58, 0xb9, 0x8a, 0x59, 0x80, 0x64, + 0xb7, 0x6d, 0x09, 0x5c, 0x30, 0x07, 0x4b, 0xf6, +}; +static const unsigned char kat2173_nonce[] = {0}; +static const unsigned char kat2173_persstr[] = {0}; +static const unsigned char kat2173_entropyinreseed[] = { + 0x02, 0xfd, 0xeb, 0x64, 0xd0, 0x97, 0x39, 0x96, 0xa8, 0xa8, 0xa0, 0x62, + 0x90, 0x26, 0xf5, 0x6c, 0xbb, 0xb9, 0x1f, 0xca, 0x34, 0xb8, 0xf5, 0x0e, + 0xc0, 0x59, 0xe7, 0x46, 0xd4, 0xb2, 0x0b, 0x1a, +}; +static const unsigned char kat2173_addinreseed[] = {0}; +static const unsigned char kat2173_addin0[] = {0}; +static const unsigned char kat2173_addin1[] = {0}; +static const unsigned char kat2173_retbits[] = { + 0xa3, 0xdc, 0xfd, 0x35, 0x47, 0x81, 0x4b, 0x54, 0x39, 0xdd, 0x5c, 0xc6, + 0x17, 0x8c, 0x66, 0x32, 0xcc, 0xcd, 0x81, 0xfc, 0xc3, 0x4b, 0x8f, 0x9c, + 0x9c, 0xeb, 0x52, 0xc2, 0x3e, 0xfd, 0xd1, 0x8b, 0xb4, 0x87, 0x3b, 0x97, + 0xad, 0xe5, 0x3c, 0x54, 0x82, 0x4c, 0x87, 0x68, 0xdf, 0x0e, 0x99, 0x87, + 0xec, 0xfa, 0x96, 0x35, 0xe1, 0xba, 0x39, 0x44, 0xd8, 0x69, 0x4f, 0x7c, + 0xa8, 0xc5, 0x1f, 0xac, +}; +static const struct drbg_kat_pr_false kat2173_t = { + 12, kat2173_entropyin, kat2173_nonce, kat2173_persstr, + kat2173_entropyinreseed, kat2173_addinreseed, kat2173_addin0, + kat2173_addin1, kat2173_retbits +}; +static const struct drbg_kat kat2173 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2173_t +}; + +static const unsigned char kat2174_entropyin[] = { + 0x56, 0x9f, 0x3b, 0x21, 0xf1, 0xb8, 0x0c, 0x6c, 0x51, 0x70, 0x30, 0xf5, + 0x1c, 0xb8, 0x18, 0x66, 0xcd, 0xa2, 0x4a, 0xc1, 0x68, 0xa9, 0x9b, 0x4e, + 0x5e, 0x96, 0x34, 0xd0, 0xb1, 0x6a, 0xc0, 0xa1, +}; +static const unsigned char kat2174_nonce[] = {0}; +static const unsigned char kat2174_persstr[] = {0}; +static const unsigned char kat2174_entropyinreseed[] = { + 0x0d, 0x66, 0x25, 0xc6, 0xe5, 0x10, 0x22, 0x16, 0xd4, 0xe0, 0xe5, 0xe6, + 0x17, 0x1d, 0x8e, 0xe2, 0x60, 0xca, 0xcd, 0xe6, 0xbd, 0xb5, 0xb0, 0x82, + 0xcb, 0x9b, 0xcf, 0xe9, 0x6b, 0x67, 0x98, 0x6e, +}; +static const unsigned char kat2174_addinreseed[] = {0}; +static const unsigned char kat2174_addin0[] = {0}; +static const unsigned char kat2174_addin1[] = {0}; +static const unsigned char kat2174_retbits[] = { + 0x00, 0x6b, 0xe6, 0xcb, 0xd8, 0x66, 0xe2, 0x75, 0xd9, 0x7c, 0xc4, 0x99, + 0x81, 0x3f, 0x46, 0x25, 0x87, 0xf9, 0x38, 0x05, 0x4d, 0x73, 0x3f, 0xf2, + 0x09, 0xd3, 0x03, 0x5f, 0xde, 0x3e, 0x2d, 0x69, 0x15, 0xcf, 0x6c, 0xa3, + 0x34, 0x2d, 0x90, 0x64, 0xdf, 0x7a, 0xc8, 0x07, 0x5b, 0x3f, 0x54, 0xf8, + 0x7b, 0x35, 0xcd, 0x9b, 0x4e, 0xbc, 0x56, 0x83, 0x5a, 0x9e, 0xa2, 0x55, + 0x7d, 0x8e, 0x15, 0x4b, +}; +static const struct drbg_kat_pr_false kat2174_t = { + 13, kat2174_entropyin, kat2174_nonce, kat2174_persstr, + kat2174_entropyinreseed, kat2174_addinreseed, kat2174_addin0, + kat2174_addin1, kat2174_retbits +}; +static const struct drbg_kat kat2174 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2174_t +}; + +static const unsigned char kat2175_entropyin[] = { + 0x8e, 0xcd, 0xbf, 0x1c, 0xba, 0x26, 0xea, 0xe4, 0x5f, 0x70, 0xcc, 0xfe, + 0xc0, 0xe4, 0x2d, 0x61, 0x39, 0xbe, 0x57, 0xf1, 0x31, 0xff, 0x60, 0x89, + 0x8a, 0x3b, 0x63, 0x96, 0x8a, 0xcf, 0x28, 0xac, +}; +static const unsigned char kat2175_nonce[] = {0}; +static const unsigned char kat2175_persstr[] = {0}; +static const unsigned char kat2175_entropyinreseed[] = { + 0x8d, 0x86, 0x0d, 0xcf, 0x67, 0xfb, 0xee, 0x47, 0xf3, 0x3e, 0xd5, 0x27, + 0x3f, 0xf8, 0x19, 0x56, 0x33, 0x5d, 0x91, 0x52, 0x08, 0x5f, 0x18, 0x4f, + 0x84, 0x27, 0xad, 0x42, 0x34, 0xf9, 0x56, 0x61, +}; +static const unsigned char kat2175_addinreseed[] = {0}; +static const unsigned char kat2175_addin0[] = {0}; +static const unsigned char kat2175_addin1[] = {0}; +static const unsigned char kat2175_retbits[] = { + 0x80, 0x49, 0xf3, 0xfe, 0x2e, 0x62, 0x88, 0x3f, 0x71, 0xcc, 0x43, 0x87, + 0x3b, 0x97, 0x75, 0xbf, 0x60, 0xa9, 0x7c, 0x07, 0x03, 0x70, 0xf9, 0x75, + 0x7c, 0x51, 0x48, 0x8b, 0x05, 0x0c, 0x00, 0x95, 0x9d, 0x08, 0x5d, 0xdd, + 0x8f, 0x8e, 0x37, 0x02, 0xaa, 0x4c, 0xd6, 0xff, 0x19, 0xb6, 0xc6, 0x26, + 0x85, 0xaf, 0xb7, 0x79, 0x2e, 0xb0, 0x03, 0xc0, 0x7b, 0xbc, 0xc9, 0xf4, + 0xa0, 0x26, 0xd1, 0x38, +}; +static const struct drbg_kat_pr_false kat2175_t = { + 14, kat2175_entropyin, kat2175_nonce, kat2175_persstr, + kat2175_entropyinreseed, kat2175_addinreseed, kat2175_addin0, + kat2175_addin1, kat2175_retbits +}; +static const struct drbg_kat kat2175 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2175_t +}; + +static const unsigned char kat2176_entropyin[] = { + 0x6b, 0xc7, 0x09, 0xaa, 0x4c, 0x97, 0x5b, 0x0e, 0xcc, 0xb9, 0x22, 0xce, + 0x21, 0x10, 0xfa, 0x9b, 0x57, 0x24, 0x03, 0xf9, 0x01, 0x3d, 0xfd, 0x10, + 0xf0, 0x6a, 0x88, 0xd5, 0x4d, 0x38, 0x00, 0x02, +}; +static const unsigned char kat2176_nonce[] = {0}; +static const unsigned char kat2176_persstr[] = {0}; +static const unsigned char kat2176_entropyinreseed[] = { + 0xcf, 0x1a, 0xf8, 0x4e, 0xdd, 0xd5, 0xbe, 0xf6, 0x66, 0xea, 0x42, 0xbe, + 0xa6, 0x06, 0x7a, 0x23, 0xe5, 0x27, 0x42, 0xe2, 0x46, 0x61, 0xf9, 0x44, + 0xba, 0x25, 0x14, 0xfe, 0x05, 0x2a, 0xbf, 0x31, +}; +static const unsigned char kat2176_addinreseed[] = { + 0xa4, 0x69, 0x88, 0xba, 0xd4, 0x9b, 0x78, 0xc6, 0x13, 0xc9, 0x4e, 0x06, + 0xa5, 0x3b, 0x08, 0x0b, 0xf6, 0xd2, 0x0b, 0x73, 0x85, 0xbf, 0x4c, 0x78, + 0x2a, 0xd7, 0xcd, 0x14, 0x5d, 0xdc, 0x90, 0x53, +}; +static const unsigned char kat2176_addin0[] = { + 0x13, 0x9d, 0x6f, 0x72, 0xbf, 0x1d, 0x0e, 0xc5, 0xbf, 0xdd, 0x24, 0x5e, + 0x01, 0x3f, 0x5c, 0xda, 0xc8, 0x5e, 0x3e, 0xca, 0x71, 0x61, 0x96, 0x01, + 0x8b, 0x92, 0x13, 0x3c, 0x00, 0xa0, 0x74, 0x36, +}; +static const unsigned char kat2176_addin1[] = { + 0x24, 0x0f, 0x1a, 0x5a, 0xf7, 0xfc, 0x2e, 0x4d, 0x32, 0xac, 0xe6, 0x35, + 0xac, 0xba, 0x59, 0x47, 0xf3, 0x56, 0x4e, 0xcb, 0xfd, 0x75, 0x16, 0xc4, + 0x79, 0xc0, 0xad, 0xda, 0x20, 0x74, 0x7f, 0x26, +}; +static const unsigned char kat2176_retbits[] = { + 0xe7, 0x27, 0x26, 0x8a, 0x54, 0x6c, 0x0c, 0x89, 0x1c, 0xf5, 0x3a, 0x70, + 0xa9, 0x28, 0x20, 0xee, 0x9b, 0xbf, 0x72, 0x8a, 0xd5, 0x2f, 0x30, 0x62, + 0x5b, 0x2e, 0x28, 0xf0, 0xf6, 0xc9, 0x06, 0xf6, 0x0f, 0xfd, 0x02, 0xf7, + 0xd8, 0x16, 0x23, 0x29, 0x59, 0x50, 0xc0, 0x4b, 0x63, 0xa4, 0x86, 0x34, + 0xeb, 0x41, 0xa5, 0xb4, 0xd6, 0x49, 0xbd, 0xab, 0xff, 0x33, 0x5a, 0xc3, + 0x20, 0x06, 0x90, 0xb0, +}; +static const struct drbg_kat_pr_false kat2176_t = { + 0, kat2176_entropyin, kat2176_nonce, kat2176_persstr, + kat2176_entropyinreseed, kat2176_addinreseed, kat2176_addin0, + kat2176_addin1, kat2176_retbits +}; +static const struct drbg_kat kat2176 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2176_t +}; + +static const unsigned char kat2177_entropyin[] = { + 0x7b, 0x8f, 0x45, 0x57, 0xe7, 0x8f, 0x17, 0x5c, 0x2a, 0x82, 0xb5, 0x62, + 0xc8, 0x59, 0x5a, 0xea, 0xd7, 0x5e, 0x6d, 0x6e, 0xae, 0xa8, 0x7b, 0xe0, + 0x96, 0x5a, 0xac, 0x1f, 0x92, 0x34, 0x73, 0x06, +}; +static const unsigned char kat2177_nonce[] = {0}; +static const unsigned char kat2177_persstr[] = {0}; +static const unsigned char kat2177_entropyinreseed[] = { + 0x2b, 0x6a, 0xf9, 0x8e, 0x7e, 0x95, 0x09, 0x6f, 0xc3, 0xb8, 0xd2, 0xe2, + 0x26, 0xed, 0x4b, 0x1b, 0xe7, 0x77, 0xc3, 0x1b, 0x81, 0x06, 0xa9, 0x00, + 0x27, 0x05, 0x2e, 0xcd, 0xec, 0x17, 0xbc, 0x94, +}; +static const unsigned char kat2177_addinreseed[] = { + 0x64, 0xdf, 0xaa, 0xa7, 0x19, 0x78, 0x75, 0x9f, 0xc2, 0xa0, 0xee, 0x73, + 0xae, 0xb4, 0x48, 0x95, 0xef, 0x09, 0xc9, 0x36, 0x38, 0xab, 0xf9, 0x9c, + 0xd4, 0xec, 0x99, 0xff, 0xa0, 0xfb, 0x94, 0x06, +}; +static const unsigned char kat2177_addin0[] = { + 0xc0, 0xe5, 0xaa, 0x51, 0xf0, 0x54, 0x95, 0xfc, 0x74, 0x38, 0xae, 0xb9, + 0x53, 0xb6, 0x16, 0x27, 0xfa, 0xbb, 0xd1, 0x48, 0xa9, 0x95, 0x9b, 0xf8, + 0x73, 0xbb, 0x87, 0xea, 0x00, 0x5f, 0x05, 0x5c, +}; +static const unsigned char kat2177_addin1[] = { + 0x69, 0x20, 0x02, 0x63, 0x79, 0x8a, 0x7d, 0x17, 0x4c, 0x1e, 0x36, 0x69, + 0xab, 0xef, 0x91, 0x4b, 0x86, 0x63, 0xe3, 0xf9, 0x99, 0x8c, 0x71, 0x1f, + 0x0d, 0xc0, 0x66, 0x78, 0x91, 0x8e, 0x80, 0x63, +}; +static const unsigned char kat2177_retbits[] = { + 0x45, 0x39, 0x7a, 0x1d, 0x05, 0xd6, 0xc2, 0xc0, 0x82, 0xf7, 0x36, 0xae, + 0x77, 0xf1, 0x16, 0xd7, 0xbf, 0x54, 0x3b, 0x78, 0xad, 0x3b, 0xa4, 0xbf, + 0x39, 0xab, 0xea, 0xb7, 0xa9, 0x64, 0xef, 0x9d, 0xa3, 0x1d, 0x6e, 0x8c, + 0x5d, 0xec, 0x8e, 0x9e, 0x52, 0x47, 0x76, 0x65, 0x59, 0xb0, 0x3f, 0xb9, + 0x8c, 0x61, 0x98, 0x90, 0xd4, 0x09, 0x68, 0xb9, 0xab, 0x3c, 0x99, 0x51, + 0xdd, 0x6b, 0xf4, 0x8f, +}; +static const struct drbg_kat_pr_false kat2177_t = { + 1, kat2177_entropyin, kat2177_nonce, kat2177_persstr, + kat2177_entropyinreseed, kat2177_addinreseed, kat2177_addin0, + kat2177_addin1, kat2177_retbits +}; +static const struct drbg_kat kat2177 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2177_t +}; + +static const unsigned char kat2178_entropyin[] = { + 0xaa, 0x47, 0x40, 0xe7, 0x5b, 0x0b, 0x71, 0x42, 0xa1, 0x7c, 0xbe, 0x32, + 0xe0, 0xf9, 0xf8, 0x23, 0xc5, 0xc3, 0xea, 0xcb, 0x7a, 0xc8, 0xfc, 0xbd, + 0xcb, 0xbf, 0xb3, 0x46, 0x0c, 0x5b, 0xff, 0x92, +}; +static const unsigned char kat2178_nonce[] = {0}; +static const unsigned char kat2178_persstr[] = {0}; +static const unsigned char kat2178_entropyinreseed[] = { + 0x1f, 0x34, 0x65, 0x09, 0xf7, 0x64, 0x19, 0xad, 0x21, 0xf4, 0x81, 0x2e, + 0xf3, 0x8b, 0x66, 0xeb, 0x1a, 0xb2, 0x27, 0x73, 0x38, 0xdb, 0x56, 0xf3, + 0xe3, 0x07, 0xad, 0xf4, 0xee, 0x55, 0xf0, 0x2f, +}; +static const unsigned char kat2178_addinreseed[] = { + 0x51, 0xbf, 0xe5, 0x8d, 0xcb, 0x44, 0x08, 0xd5, 0xdb, 0x8b, 0x8c, 0x0c, + 0xf9, 0x7d, 0x8c, 0xfb, 0xb0, 0x8d, 0xa2, 0xda, 0x4a, 0x6e, 0x11, 0xe9, + 0x02, 0x32, 0xad, 0xf6, 0xa9, 0x38, 0xba, 0x9d, +}; +static const unsigned char kat2178_addin0[] = { + 0x46, 0x40, 0xae, 0xd4, 0x19, 0xd8, 0x07, 0x57, 0x15, 0x14, 0x28, 0xdf, + 0xd1, 0x8c, 0x6d, 0x2a, 0x11, 0x91, 0xf0, 0xab, 0xa9, 0xe5, 0xa1, 0xd9, + 0xab, 0x62, 0x9a, 0xc0, 0x03, 0x5c, 0x1e, 0xd0, +}; +static const unsigned char kat2178_addin1[] = { + 0x38, 0x8f, 0xcd, 0x2d, 0x71, 0x27, 0x79, 0x2a, 0x87, 0x75, 0x6e, 0xb3, + 0xfd, 0x7b, 0x31, 0x3a, 0x7e, 0x41, 0xc2, 0xf8, 0x75, 0x43, 0xf3, 0xce, + 0x23, 0x15, 0xe3, 0x4f, 0x2d, 0x9e, 0x4c, 0x5a, +}; +static const unsigned char kat2178_retbits[] = { + 0xba, 0x44, 0x88, 0x69, 0xc1, 0x05, 0x29, 0x4c, 0xf9, 0x1b, 0xa7, 0x39, + 0x34, 0x9b, 0x74, 0xfb, 0xc2, 0x9d, 0x02, 0x1d, 0xa1, 0x47, 0x66, 0x2f, + 0xa1, 0x36, 0xd8, 0x89, 0x7e, 0xb8, 0x64, 0x21, 0xb5, 0x3f, 0xac, 0xfc, + 0x70, 0x9f, 0x7b, 0xc2, 0xa1, 0x92, 0x37, 0xea, 0xec, 0x53, 0xb2, 0xd4, + 0x48, 0xb9, 0x4f, 0x96, 0xc3, 0x7d, 0xc6, 0x97, 0x34, 0x9d, 0xc9, 0xa3, + 0x90, 0x17, 0xeb, 0x2e, +}; +static const struct drbg_kat_pr_false kat2178_t = { + 2, kat2178_entropyin, kat2178_nonce, kat2178_persstr, + kat2178_entropyinreseed, kat2178_addinreseed, kat2178_addin0, + kat2178_addin1, kat2178_retbits +}; +static const struct drbg_kat kat2178 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2178_t +}; + +static const unsigned char kat2179_entropyin[] = { + 0x82, 0x6c, 0x95, 0x14, 0x64, 0x51, 0x14, 0x70, 0xd1, 0x56, 0x0d, 0xf8, + 0x08, 0x8a, 0x04, 0x96, 0xa9, 0x6f, 0xae, 0x1b, 0xc7, 0x17, 0x15, 0x45, + 0x80, 0xfb, 0xbb, 0x63, 0xbd, 0x06, 0xea, 0x92, +}; +static const unsigned char kat2179_nonce[] = {0}; +static const unsigned char kat2179_persstr[] = {0}; +static const unsigned char kat2179_entropyinreseed[] = { + 0xa0, 0xcb, 0x04, 0x42, 0x58, 0x78, 0x4e, 0x90, 0x70, 0xcf, 0x17, 0xfb, + 0xc9, 0xda, 0xb6, 0x00, 0x64, 0x91, 0x52, 0xb9, 0xca, 0x86, 0x6f, 0x24, + 0x44, 0x7c, 0xb9, 0x2c, 0x29, 0x01, 0xf5, 0xd2, +}; +static const unsigned char kat2179_addinreseed[] = { + 0x65, 0x6f, 0x0b, 0xb0, 0x3f, 0x2c, 0x75, 0xd8, 0xa9, 0xbe, 0xb0, 0x49, + 0xef, 0xfd, 0xe2, 0x03, 0x2b, 0xbb, 0xf0, 0xb5, 0x08, 0x65, 0xc5, 0x2c, + 0xf0, 0x5f, 0xb4, 0xf4, 0xb3, 0xc1, 0x8d, 0x92, +}; +static const unsigned char kat2179_addin0[] = { + 0x0f, 0xcf, 0xe1, 0x83, 0x97, 0x05, 0x6b, 0x1c, 0x98, 0xa9, 0x90, 0x30, + 0x11, 0x68, 0x3d, 0xa1, 0x2e, 0x51, 0x71, 0x7c, 0xd8, 0x13, 0xe8, 0xb6, + 0xf0, 0xed, 0x88, 0xf3, 0x77, 0xbd, 0x5e, 0x0f, +}; +static const unsigned char kat2179_addin1[] = { + 0x0d, 0x6d, 0xc8, 0x35, 0xa7, 0x16, 0xa8, 0x69, 0xd7, 0x3c, 0x1c, 0xf7, + 0x80, 0xc0, 0x25, 0xc2, 0x6a, 0x77, 0x86, 0xf8, 0x37, 0x2b, 0x01, 0x57, + 0x0e, 0x89, 0x58, 0x7a, 0xce, 0xfa, 0x45, 0x35, +}; +static const unsigned char kat2179_retbits[] = { + 0x77, 0x25, 0x16, 0x61, 0x20, 0x0d, 0xc4, 0xcb, 0x73, 0x96, 0xd4, 0x64, + 0x55, 0xc1, 0x45, 0x82, 0xbb, 0xc1, 0xc6, 0xcf, 0x61, 0x3a, 0xa4, 0x13, + 0xe4, 0x06, 0x9b, 0xf8, 0xfc, 0x4f, 0x01, 0xf4, 0xef, 0xee, 0xcf, 0x11, + 0x21, 0xe0, 0xa5, 0x04, 0x1e, 0xf4, 0x78, 0x5d, 0x73, 0xfa, 0xc3, 0x2b, + 0x0e, 0xf0, 0x8a, 0x0c, 0x13, 0xf9, 0x16, 0x4d, 0x7d, 0x74, 0xc0, 0xd6, + 0x96, 0xb7, 0x1d, 0x18, +}; +static const struct drbg_kat_pr_false kat2179_t = { + 3, kat2179_entropyin, kat2179_nonce, kat2179_persstr, + kat2179_entropyinreseed, kat2179_addinreseed, kat2179_addin0, + kat2179_addin1, kat2179_retbits +}; +static const struct drbg_kat kat2179 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2179_t +}; + +static const unsigned char kat2180_entropyin[] = { + 0xf5, 0x02, 0xec, 0x7c, 0x3e, 0x46, 0x21, 0x73, 0x86, 0x7d, 0xb8, 0x28, + 0x22, 0x04, 0x71, 0x25, 0xdc, 0x7b, 0xde, 0x93, 0x13, 0x27, 0x34, 0xc1, + 0xf0, 0xf2, 0xdc, 0xec, 0x6b, 0xb7, 0x4e, 0x33, +}; +static const unsigned char kat2180_nonce[] = {0}; +static const unsigned char kat2180_persstr[] = {0}; +static const unsigned char kat2180_entropyinreseed[] = { + 0x14, 0x9c, 0x7a, 0xc7, 0x40, 0xfa, 0x5d, 0x05, 0xa7, 0xbd, 0xbb, 0x98, + 0x00, 0x86, 0xa9, 0xda, 0x1e, 0xef, 0x54, 0x1b, 0xee, 0xce, 0x75, 0xce, + 0xae, 0x41, 0x81, 0xba, 0xb3, 0x6b, 0x8f, 0x84, +}; +static const unsigned char kat2180_addinreseed[] = { + 0x43, 0xed, 0xd5, 0xa2, 0x93, 0xa3, 0x6a, 0xd0, 0x77, 0xb9, 0x0a, 0x0f, + 0x72, 0xf4, 0xd1, 0x66, 0x1f, 0xdc, 0x12, 0x62, 0xb5, 0x29, 0x3f, 0xeb, + 0x9d, 0xad, 0xe5, 0x65, 0x10, 0xea, 0x23, 0xbf, +}; +static const unsigned char kat2180_addin0[] = { + 0x12, 0x14, 0x95, 0xce, 0x1c, 0x78, 0xf2, 0x05, 0xe2, 0x43, 0xe5, 0xf5, + 0x08, 0xc9, 0xdb, 0x04, 0x57, 0x4d, 0xc6, 0x87, 0x82, 0x0f, 0xe2, 0xe1, + 0xf8, 0x70, 0x10, 0xf2, 0x3c, 0x2b, 0x42, 0xfb, +}; +static const unsigned char kat2180_addin1[] = { + 0xf0, 0x35, 0xe4, 0x97, 0x6c, 0x99, 0x73, 0x2e, 0x11, 0x5b, 0xb4, 0x52, + 0x7d, 0x64, 0x22, 0xc6, 0x47, 0xbb, 0x03, 0x23, 0xc0, 0x12, 0x1f, 0x1a, + 0x4d, 0x42, 0x08, 0xfa, 0xbd, 0xd5, 0x6f, 0x9d, +}; +static const unsigned char kat2180_retbits[] = { + 0x6b, 0x07, 0xa2, 0x98, 0x8a, 0x03, 0x69, 0x85, 0x91, 0xe0, 0x06, 0x63, + 0x37, 0x10, 0x41, 0x70, 0x6e, 0x72, 0x00, 0xe1, 0xa8, 0x19, 0xae, 0xa7, + 0xf6, 0x4e, 0x34, 0xa7, 0x7d, 0xed, 0x25, 0x04, 0x96, 0x51, 0x67, 0xb8, + 0x80, 0x4e, 0x6e, 0x77, 0xe9, 0x00, 0xf1, 0xb7, 0x8c, 0x0b, 0x8d, 0x59, + 0x45, 0xba, 0xb0, 0xc1, 0xec, 0xc3, 0x53, 0x22, 0x93, 0x21, 0x5f, 0xa4, + 0x05, 0x07, 0xd4, 0x57, +}; +static const struct drbg_kat_pr_false kat2180_t = { + 4, kat2180_entropyin, kat2180_nonce, kat2180_persstr, + kat2180_entropyinreseed, kat2180_addinreseed, kat2180_addin0, + kat2180_addin1, kat2180_retbits +}; +static const struct drbg_kat kat2180 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2180_t +}; + +static const unsigned char kat2181_entropyin[] = { + 0xe3, 0x1d, 0x0f, 0x4f, 0xc1, 0xa2, 0xb5, 0xbf, 0xa6, 0xda, 0x7d, 0xfa, + 0xd1, 0xa8, 0xdf, 0x6f, 0x90, 0x94, 0xa5, 0x65, 0xe0, 0x27, 0x3b, 0xc6, + 0x36, 0xbe, 0x46, 0x0c, 0x96, 0x38, 0xe7, 0x6f, +}; +static const unsigned char kat2181_nonce[] = {0}; +static const unsigned char kat2181_persstr[] = {0}; +static const unsigned char kat2181_entropyinreseed[] = { + 0xe0, 0x68, 0x17, 0x05, 0x54, 0x74, 0xec, 0xfb, 0xd8, 0xe3, 0x03, 0xff, + 0xac, 0x10, 0x18, 0xda, 0x76, 0xfe, 0x47, 0x0a, 0x55, 0x72, 0x5a, 0xfd, + 0xf8, 0x1e, 0xb4, 0x71, 0xbf, 0x6e, 0x75, 0x93, +}; +static const unsigned char kat2181_addinreseed[] = { + 0xec, 0x0c, 0x81, 0x82, 0xa0, 0x40, 0x74, 0x03, 0x5f, 0x28, 0x74, 0x70, + 0xf4, 0x97, 0x41, 0xad, 0xf1, 0x0e, 0xce, 0xcc, 0x69, 0x8c, 0x38, 0x0d, + 0xb6, 0x7b, 0xd2, 0xed, 0x23, 0x35, 0xf2, 0x9b, +}; +static const unsigned char kat2181_addin0[] = { + 0x23, 0x14, 0x3e, 0xf3, 0x07, 0x85, 0xda, 0x8a, 0x40, 0x78, 0xd7, 0x17, + 0x35, 0x49, 0xf4, 0x2d, 0xc5, 0x3f, 0xa7, 0xa6, 0xcc, 0x12, 0xe7, 0x75, + 0x36, 0x1d, 0x16, 0xca, 0x9d, 0x8b, 0xfa, 0xc8, +}; +static const unsigned char kat2181_addin1[] = { + 0x61, 0x5b, 0xfb, 0x9c, 0x06, 0x51, 0x10, 0x23, 0x26, 0xef, 0x1c, 0x1e, + 0xb6, 0xce, 0xd7, 0xb3, 0xf8, 0x7d, 0x40, 0x26, 0x83, 0x5e, 0x79, 0x6a, + 0xda, 0xbc, 0x05, 0xa0, 0x4e, 0x05, 0x50, 0xb6, +}; +static const unsigned char kat2181_retbits[] = { + 0xcd, 0xfb, 0xcb, 0xf0, 0x69, 0x94, 0xfc, 0x9a, 0xa1, 0xfb, 0x5e, 0xbb, + 0xb8, 0xba, 0x47, 0x40, 0xc8, 0x6f, 0xf6, 0xce, 0x7a, 0xdd, 0xe7, 0x35, + 0x89, 0xbd, 0xe8, 0x80, 0x06, 0xda, 0xf2, 0x4f, 0x36, 0xb9, 0x82, 0xdf, + 0xc0, 0x68, 0xa1, 0x34, 0x78, 0x37, 0x74, 0x57, 0x69, 0xa7, 0x67, 0xe4, + 0xbd, 0x41, 0x41, 0x75, 0x68, 0xe8, 0x96, 0xe1, 0xb6, 0x9b, 0x63, 0xff, + 0x8f, 0xf2, 0x59, 0x23, +}; +static const struct drbg_kat_pr_false kat2181_t = { + 5, kat2181_entropyin, kat2181_nonce, kat2181_persstr, + kat2181_entropyinreseed, kat2181_addinreseed, kat2181_addin0, + kat2181_addin1, kat2181_retbits +}; +static const struct drbg_kat kat2181 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2181_t +}; + +static const unsigned char kat2182_entropyin[] = { + 0x1b, 0x56, 0x51, 0xab, 0x23, 0x6b, 0xae, 0x70, 0x61, 0x24, 0x7d, 0x66, + 0x6c, 0x1e, 0x27, 0xf7, 0x3f, 0x13, 0xe1, 0x4a, 0xcc, 0xc1, 0x53, 0xd0, + 0x8a, 0xf1, 0x9e, 0xac, 0xb9, 0xde, 0x3f, 0x9e, +}; +static const unsigned char kat2182_nonce[] = {0}; +static const unsigned char kat2182_persstr[] = {0}; +static const unsigned char kat2182_entropyinreseed[] = { + 0xff, 0xf2, 0x6b, 0xc1, 0xd4, 0x80, 0x13, 0x48, 0xab, 0x5d, 0x2b, 0x74, + 0x7b, 0xc5, 0x23, 0xf3, 0xb5, 0xc9, 0xae, 0x5a, 0xe3, 0x9d, 0xb6, 0xb2, + 0x81, 0xed, 0x67, 0xd1, 0x7f, 0x50, 0x98, 0xa4, +}; +static const unsigned char kat2182_addinreseed[] = { + 0xc3, 0x83, 0x99, 0x9f, 0x1c, 0x14, 0xe0, 0x7b, 0x16, 0xfc, 0xe1, 0x24, + 0xc0, 0x47, 0xa0, 0x1a, 0x62, 0xf8, 0xdf, 0x5c, 0xa0, 0xaa, 0xb2, 0x30, + 0xfb, 0xec, 0x71, 0x35, 0x3c, 0xf6, 0x32, 0x04, +}; +static const unsigned char kat2182_addin0[] = { + 0x20, 0x78, 0x1e, 0xe4, 0x3c, 0xde, 0xd0, 0x7c, 0x46, 0x1a, 0xed, 0xbc, + 0x3d, 0x0f, 0xb9, 0x46, 0xf7, 0xd7, 0x0b, 0x6f, 0x5e, 0x8c, 0xcc, 0xbe, + 0x43, 0x5d, 0x6e, 0xd3, 0x71, 0x58, 0xbd, 0x13, +}; +static const unsigned char kat2182_addin1[] = { + 0x1a, 0xae, 0x1a, 0x19, 0xd6, 0x53, 0xc0, 0x76, 0xea, 0xb1, 0x47, 0x53, + 0x98, 0x11, 0x83, 0xbe, 0xb9, 0x3c, 0xa5, 0xbb, 0x7c, 0xa5, 0x2e, 0x3d, + 0xd5, 0x00, 0xce, 0xa0, 0xf3, 0x0c, 0x31, 0x06, +}; +static const unsigned char kat2182_retbits[] = { + 0x07, 0x03, 0x02, 0xb4, 0x3d, 0x7c, 0xed, 0xe1, 0xd9, 0x19, 0x1f, 0x8f, + 0xd1, 0xd2, 0x71, 0x13, 0x66, 0xcd, 0x1c, 0x2d, 0xb5, 0x6a, 0x61, 0xe8, + 0xad, 0x3d, 0x39, 0xca, 0x78, 0xa5, 0x3d, 0x05, 0x45, 0xa1, 0xd3, 0xf3, + 0xee, 0x79, 0x16, 0xd9, 0x2c, 0x6f, 0x6d, 0xfe, 0x4c, 0x52, 0xa5, 0xeb, + 0x87, 0x65, 0xea, 0x6f, 0xe7, 0x14, 0x09, 0x44, 0x2b, 0xd9, 0xdd, 0x0a, + 0xb6, 0x55, 0xde, 0x7a, +}; +static const struct drbg_kat_pr_false kat2182_t = { + 6, kat2182_entropyin, kat2182_nonce, kat2182_persstr, + kat2182_entropyinreseed, kat2182_addinreseed, kat2182_addin0, + kat2182_addin1, kat2182_retbits +}; +static const struct drbg_kat kat2182 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2182_t +}; + +static const unsigned char kat2183_entropyin[] = { + 0xfb, 0x5f, 0x8c, 0x3b, 0x6a, 0xc3, 0xe4, 0x7e, 0x19, 0x06, 0xef, 0xff, + 0xcd, 0x44, 0xa6, 0x75, 0x8c, 0x98, 0xd5, 0x1a, 0x14, 0xc6, 0xef, 0x7b, + 0xf4, 0x70, 0x8c, 0x1b, 0x4a, 0xe9, 0x2a, 0x0e, +}; +static const unsigned char kat2183_nonce[] = {0}; +static const unsigned char kat2183_persstr[] = {0}; +static const unsigned char kat2183_entropyinreseed[] = { + 0x86, 0xfa, 0x40, 0x12, 0x4b, 0x30, 0x39, 0x0d, 0x63, 0x45, 0x1e, 0x3c, + 0xa1, 0xcb, 0xa4, 0xb7, 0xce, 0x5d, 0x25, 0xa8, 0x2e, 0x04, 0x61, 0x79, + 0xba, 0xe5, 0xa4, 0x84, 0x23, 0xde, 0x67, 0xd0, +}; +static const unsigned char kat2183_addinreseed[] = { + 0x21, 0x8e, 0xed, 0xf5, 0x12, 0x01, 0x32, 0xe9, 0x28, 0x39, 0x7f, 0x35, + 0x8d, 0xe6, 0x5a, 0x5d, 0x19, 0x5d, 0xff, 0x3a, 0xed, 0xf5, 0x10, 0x28, + 0x9f, 0xc5, 0x13, 0x90, 0xb0, 0xec, 0x73, 0xd9, +}; +static const unsigned char kat2183_addin0[] = { + 0x3a, 0x95, 0x77, 0x56, 0x1d, 0xc2, 0x80, 0xaf, 0xad, 0x33, 0xd5, 0x71, + 0xa6, 0x28, 0xcf, 0xa1, 0xa1, 0x04, 0xd3, 0xb9, 0x35, 0x43, 0x9b, 0xad, + 0x8c, 0xb6, 0xa8, 0xb5, 0xf6, 0x5e, 0x83, 0x7b, +}; +static const unsigned char kat2183_addin1[] = { + 0xa1, 0x00, 0xf0, 0x83, 0x29, 0x3b, 0x2a, 0xe1, 0x76, 0xfa, 0xdc, 0x82, + 0xfc, 0x33, 0xc9, 0x7e, 0x03, 0xfe, 0xd2, 0xeb, 0xcb, 0xdc, 0x0b, 0x28, + 0xaa, 0x9c, 0xaa, 0x07, 0x54, 0x5e, 0x2b, 0x6d, +}; +static const unsigned char kat2183_retbits[] = { + 0x96, 0x29, 0x6e, 0x9b, 0xad, 0xd3, 0xc4, 0xbb, 0x2b, 0xb3, 0x5a, 0x32, + 0x4c, 0x04, 0xcb, 0xef, 0xc2, 0x39, 0x50, 0x60, 0x9d, 0x65, 0x11, 0x8d, + 0x36, 0xaa, 0xe6, 0x01, 0x0f, 0x79, 0x06, 0x6c, 0x15, 0xd6, 0x12, 0x11, + 0xf2, 0x5b, 0x84, 0xcb, 0x39, 0x9e, 0x78, 0xfb, 0x43, 0xbb, 0x87, 0x6b, + 0xe9, 0x17, 0x26, 0x30, 0xe2, 0x50, 0x06, 0x9f, 0x0c, 0x71, 0x45, 0xbc, + 0x90, 0x9a, 0xc2, 0x13, +}; +static const struct drbg_kat_pr_false kat2183_t = { + 7, kat2183_entropyin, kat2183_nonce, kat2183_persstr, + kat2183_entropyinreseed, kat2183_addinreseed, kat2183_addin0, + kat2183_addin1, kat2183_retbits +}; +static const struct drbg_kat kat2183 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2183_t +}; + +static const unsigned char kat2184_entropyin[] = { + 0xf1, 0xce, 0x42, 0xd7, 0x8e, 0x25, 0xc8, 0xc0, 0x8e, 0xfa, 0x1f, 0x85, + 0xfb, 0x01, 0xee, 0x49, 0x11, 0xe6, 0x39, 0x6a, 0x4c, 0x1c, 0xd2, 0x4b, + 0x88, 0x69, 0xc4, 0x5a, 0xa6, 0x74, 0xaf, 0xff, +}; +static const unsigned char kat2184_nonce[] = {0}; +static const unsigned char kat2184_persstr[] = {0}; +static const unsigned char kat2184_entropyinreseed[] = { + 0x19, 0x6b, 0x3d, 0xdc, 0xe4, 0xe9, 0xdd, 0x5d, 0x00, 0xc0, 0x1f, 0xa9, + 0x32, 0x94, 0x2a, 0x48, 0x16, 0xc0, 0xa2, 0x84, 0xcd, 0x44, 0xdb, 0xcb, + 0x26, 0x5d, 0x77, 0x98, 0x55, 0x02, 0x4d, 0xb7, +}; +static const unsigned char kat2184_addinreseed[] = { + 0x55, 0x54, 0xc7, 0xa0, 0xe9, 0xef, 0x6b, 0x59, 0x9e, 0xff, 0x13, 0xd0, + 0x66, 0x2c, 0x1e, 0xdd, 0x12, 0x70, 0x7a, 0x35, 0x8c, 0xbc, 0xd3, 0x9c, + 0xe8, 0x06, 0xc5, 0x29, 0x7a, 0x8f, 0x2d, 0x47, +}; +static const unsigned char kat2184_addin0[] = { + 0xfc, 0xcc, 0x8e, 0xe2, 0x51, 0xf8, 0x41, 0xe1, 0x01, 0xfd, 0x58, 0xbe, + 0xe5, 0x4e, 0x7d, 0xb4, 0xde, 0x15, 0x69, 0x8a, 0x13, 0x18, 0x51, 0x43, + 0x57, 0x7f, 0xdc, 0x3a, 0x51, 0xf1, 0xdb, 0x53, +}; +static const unsigned char kat2184_addin1[] = { + 0xbb, 0x3a, 0xa7, 0x79, 0x9c, 0xec, 0x18, 0x23, 0xff, 0xc2, 0x02, 0xe3, + 0x0c, 0x48, 0x5f, 0x44, 0xf3, 0xeb, 0xae, 0xcc, 0xaf, 0x6f, 0x3a, 0x84, + 0xd4, 0xdc, 0x79, 0xdf, 0x4e, 0xcc, 0x3c, 0x09, +}; +static const unsigned char kat2184_retbits[] = { + 0xa5, 0xd3, 0x08, 0x30, 0x32, 0xf0, 0x6e, 0x9a, 0x04, 0xca, 0x81, 0x99, + 0xd1, 0x8e, 0x7e, 0x7b, 0x0f, 0x6c, 0xa2, 0x94, 0x28, 0xdc, 0xa5, 0x9b, + 0xe4, 0xa4, 0x0f, 0xe7, 0xe7, 0x2f, 0x62, 0x12, 0xcb, 0x95, 0xf3, 0x58, + 0xd3, 0x08, 0x4a, 0x29, 0x08, 0x6a, 0xd3, 0x64, 0xb2, 0xf8, 0x60, 0xa8, + 0x7b, 0xb7, 0x87, 0xe8, 0x9f, 0x37, 0xd9, 0x15, 0xf2, 0xd8, 0x41, 0x3c, + 0x58, 0x04, 0x7d, 0x42, +}; +static const struct drbg_kat_pr_false kat2184_t = { + 8, kat2184_entropyin, kat2184_nonce, kat2184_persstr, + kat2184_entropyinreseed, kat2184_addinreseed, kat2184_addin0, + kat2184_addin1, kat2184_retbits +}; +static const struct drbg_kat kat2184 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2184_t +}; + +static const unsigned char kat2185_entropyin[] = { + 0x17, 0x0b, 0x01, 0x1a, 0xee, 0x09, 0x92, 0x3c, 0x77, 0xac, 0x05, 0xde, + 0x01, 0x83, 0xa8, 0x70, 0xea, 0x7f, 0x9a, 0x23, 0xef, 0x40, 0x1c, 0x50, + 0x7a, 0x98, 0xc9, 0x5c, 0xb4, 0xb6, 0xd1, 0x8b, +}; +static const unsigned char kat2185_nonce[] = {0}; +static const unsigned char kat2185_persstr[] = {0}; +static const unsigned char kat2185_entropyinreseed[] = { + 0x93, 0x0a, 0x77, 0x01, 0x65, 0x87, 0xf5, 0x08, 0xa4, 0x84, 0x89, 0xe9, + 0x0b, 0x0c, 0x7e, 0x27, 0xc7, 0x91, 0x62, 0x41, 0x3b, 0x4b, 0x94, 0x6f, + 0x52, 0x45, 0x9d, 0x56, 0x1b, 0xea, 0xda, 0x6e, +}; +static const unsigned char kat2185_addinreseed[] = { + 0xc2, 0xe6, 0x0b, 0x86, 0xc1, 0xbb, 0x85, 0x1e, 0x27, 0xec, 0xaf, 0xd0, + 0x6a, 0x9a, 0x44, 0x00, 0x3a, 0x98, 0x36, 0x85, 0x1f, 0xd7, 0x25, 0x07, + 0x73, 0x07, 0xbe, 0x28, 0xdf, 0xa3, 0x2e, 0x30, +}; +static const unsigned char kat2185_addin0[] = { + 0xee, 0x67, 0xde, 0xd1, 0x36, 0x8d, 0xa0, 0x2f, 0x54, 0x5f, 0xfb, 0x6d, + 0x3f, 0xb1, 0x3c, 0x10, 0x54, 0x9e, 0x88, 0xf0, 0x73, 0xa6, 0xa6, 0xb2, + 0xad, 0x12, 0x1d, 0xcd, 0x99, 0x5b, 0xb9, 0x38, +}; +static const unsigned char kat2185_addin1[] = { + 0x7b, 0xa0, 0x28, 0x7d, 0x9d, 0x12, 0xf4, 0x74, 0x20, 0x74, 0x0a, 0x8e, + 0xc6, 0xf1, 0xf3, 0x3b, 0x9f, 0x39, 0x9c, 0x03, 0xe9, 0xa9, 0x93, 0x12, + 0x96, 0xec, 0xb9, 0x33, 0x1c, 0x4d, 0xf8, 0x25, +}; +static const unsigned char kat2185_retbits[] = { + 0x3d, 0x13, 0xc4, 0x53, 0xd5, 0xf3, 0xd3, 0x05, 0x67, 0x7b, 0x95, 0x32, + 0xb5, 0x7d, 0xc1, 0x6f, 0xc6, 0x8c, 0x7d, 0xb6, 0xbb, 0xae, 0xa6, 0xbe, + 0x8a, 0x35, 0x67, 0x45, 0x1b, 0x22, 0x1e, 0x99, 0x0d, 0x8b, 0x27, 0x71, + 0xc9, 0xe2, 0x8a, 0xee, 0x1c, 0x0c, 0xd0, 0x84, 0xea, 0xd9, 0x34, 0x6f, + 0x97, 0xbe, 0xd2, 0xc3, 0xb5, 0x82, 0x3b, 0xaf, 0x57, 0xe0, 0xd2, 0x7b, + 0x78, 0x3b, 0xa8, 0x6f, +}; +static const struct drbg_kat_pr_false kat2185_t = { + 9, kat2185_entropyin, kat2185_nonce, kat2185_persstr, + kat2185_entropyinreseed, kat2185_addinreseed, kat2185_addin0, + kat2185_addin1, kat2185_retbits +}; +static const struct drbg_kat kat2185 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2185_t +}; + +static const unsigned char kat2186_entropyin[] = { + 0x77, 0x86, 0x84, 0x1f, 0x3e, 0x87, 0x5f, 0x8d, 0x92, 0xc5, 0xb4, 0xab, + 0x38, 0x2e, 0x65, 0x38, 0xfd, 0x6f, 0x0f, 0xff, 0x26, 0x5f, 0xac, 0x5f, + 0xfd, 0xcc, 0x8a, 0x3a, 0x24, 0xc5, 0xe3, 0xb6, +}; +static const unsigned char kat2186_nonce[] = {0}; +static const unsigned char kat2186_persstr[] = {0}; +static const unsigned char kat2186_entropyinreseed[] = { + 0xb5, 0xc9, 0x0a, 0x31, 0x93, 0x1a, 0xfb, 0x23, 0xfb, 0xc7, 0xad, 0x09, + 0xd5, 0xf5, 0xc8, 0xdf, 0x46, 0x12, 0xca, 0xf1, 0x49, 0xcd, 0xb7, 0xd2, + 0xdd, 0xc9, 0xba, 0x4d, 0x7d, 0x4e, 0x48, 0xa6, +}; +static const unsigned char kat2186_addinreseed[] = { + 0xfe, 0x6c, 0x70, 0x12, 0x32, 0xe9, 0xc6, 0x74, 0x89, 0xf6, 0x66, 0xc0, + 0x57, 0x62, 0x27, 0x5a, 0xe0, 0x3c, 0x65, 0xe1, 0x8d, 0xfb, 0x2f, 0xd5, + 0xed, 0xc5, 0xbf, 0xf7, 0xfa, 0xe5, 0x01, 0x9f, +}; +static const unsigned char kat2186_addin0[] = { + 0x57, 0xa8, 0x98, 0x47, 0x7d, 0x90, 0xc6, 0x87, 0xcd, 0x03, 0xb4, 0xb0, + 0xd0, 0xf4, 0xb5, 0xa4, 0xd3, 0xe0, 0x03, 0x7b, 0x35, 0x04, 0xcd, 0xc8, + 0x36, 0x7a, 0x26, 0xee, 0x93, 0x38, 0x37, 0x08, +}; +static const unsigned char kat2186_addin1[] = { + 0x2d, 0xac, 0xb0, 0x99, 0x2d, 0x67, 0xcc, 0x6b, 0x29, 0x67, 0x1a, 0x95, + 0x14, 0x9b, 0x8b, 0xd9, 0x30, 0xda, 0xf0, 0x4b, 0x6c, 0xb5, 0x28, 0x98, + 0x3c, 0x7a, 0x2c, 0xe1, 0xb0, 0x72, 0xc8, 0xc2, +}; +static const unsigned char kat2186_retbits[] = { + 0x1b, 0x1b, 0x16, 0x92, 0x8a, 0xf1, 0x9a, 0x71, 0x4f, 0x26, 0x07, 0x39, + 0x18, 0x39, 0xdb, 0x42, 0x8d, 0xdb, 0x49, 0xfd, 0x99, 0xed, 0xa0, 0xfd, + 0x2b, 0x0c, 0x05, 0xb0, 0x0a, 0x3d, 0x45, 0xaf, 0x65, 0x24, 0xc5, 0xbf, + 0x04, 0xc9, 0xcc, 0x04, 0xe3, 0x41, 0xf2, 0x3f, 0xef, 0xbb, 0xea, 0x10, + 0x75, 0xd9, 0xe0, 0x46, 0x30, 0xad, 0xca, 0xe2, 0xc8, 0xdd, 0x12, 0xff, + 0xcf, 0x88, 0x2b, 0xc8, +}; +static const struct drbg_kat_pr_false kat2186_t = { + 10, kat2186_entropyin, kat2186_nonce, kat2186_persstr, + kat2186_entropyinreseed, kat2186_addinreseed, kat2186_addin0, + kat2186_addin1, kat2186_retbits +}; +static const struct drbg_kat kat2186 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2186_t +}; + +static const unsigned char kat2187_entropyin[] = { + 0xf6, 0x59, 0x13, 0xee, 0x80, 0x86, 0xf9, 0xc2, 0x54, 0x7e, 0xe1, 0x38, + 0x24, 0x0f, 0x92, 0x61, 0x88, 0xe7, 0xf7, 0xbb, 0xaf, 0x8e, 0x9b, 0xd2, + 0x3b, 0x58, 0x21, 0xbc, 0xd1, 0xe3, 0xf4, 0x48, +}; +static const unsigned char kat2187_nonce[] = {0}; +static const unsigned char kat2187_persstr[] = {0}; +static const unsigned char kat2187_entropyinreseed[] = { + 0x93, 0xd8, 0x26, 0xeb, 0x69, 0x38, 0x0d, 0x19, 0x6d, 0xb4, 0x76, 0x06, + 0x3b, 0x1d, 0x75, 0x3f, 0x84, 0x34, 0x42, 0xa7, 0xce, 0x8e, 0x0b, 0xb1, + 0xb2, 0x09, 0x4b, 0xbd, 0x25, 0x2f, 0x49, 0xf2, +}; +static const unsigned char kat2187_addinreseed[] = { + 0xa1, 0x7f, 0xc9, 0x0c, 0x1f, 0x14, 0x68, 0x57, 0xdd, 0x68, 0xaf, 0x97, + 0x07, 0x33, 0x74, 0x93, 0xb1, 0x10, 0xa6, 0xed, 0x87, 0x85, 0x3e, 0x0b, + 0xf8, 0x5c, 0x05, 0x81, 0x35, 0xa8, 0x80, 0xa0, +}; +static const unsigned char kat2187_addin0[] = { + 0x8b, 0x80, 0x2d, 0x97, 0x25, 0x7d, 0x13, 0x1a, 0x8d, 0xde, 0x39, 0x83, + 0xd8, 0x18, 0xd0, 0xeb, 0x83, 0x3e, 0x78, 0x2b, 0x2c, 0x47, 0x0b, 0xae, + 0xb3, 0x98, 0x14, 0x38, 0x82, 0x84, 0x0a, 0x97, +}; +static const unsigned char kat2187_addin1[] = { + 0x86, 0xbb, 0xb6, 0xc4, 0x5e, 0xf8, 0x65, 0x5f, 0xa1, 0x51, 0xa1, 0xe2, + 0xff, 0x5a, 0x9e, 0x48, 0xa9, 0xc7, 0x0d, 0xd8, 0xd7, 0x93, 0xc1, 0xff, + 0xda, 0x80, 0xaa, 0x68, 0x00, 0x66, 0xc8, 0xbe, +}; +static const unsigned char kat2187_retbits[] = { + 0x38, 0x46, 0x4e, 0x12, 0x41, 0x5b, 0x76, 0xec, 0x9a, 0x75, 0x44, 0xc9, + 0x55, 0x18, 0x7e, 0x58, 0xbb, 0xb3, 0xa5, 0xa0, 0x5b, 0xbc, 0xee, 0x22, + 0x2a, 0xf5, 0x88, 0xe0, 0x15, 0x29, 0x8c, 0x62, 0x27, 0xec, 0x94, 0xbc, + 0xb3, 0x7c, 0xea, 0x30, 0x28, 0x5b, 0x2d, 0x76, 0x7a, 0x60, 0x25, 0x9c, + 0x12, 0xe9, 0x6f, 0x3b, 0x15, 0x3c, 0x02, 0xe8, 0xfd, 0xac, 0x6d, 0x45, + 0x66, 0x29, 0x36, 0x2a, +}; +static const struct drbg_kat_pr_false kat2187_t = { + 11, kat2187_entropyin, kat2187_nonce, kat2187_persstr, + kat2187_entropyinreseed, kat2187_addinreseed, kat2187_addin0, + kat2187_addin1, kat2187_retbits +}; +static const struct drbg_kat kat2187 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2187_t +}; + +static const unsigned char kat2188_entropyin[] = { + 0xf1, 0xc1, 0x9b, 0x94, 0x55, 0xfd, 0x72, 0x62, 0x16, 0x43, 0x4f, 0xa8, + 0xad, 0x32, 0x2e, 0x7e, 0xfe, 0x5a, 0xae, 0x54, 0x90, 0x88, 0xd3, 0xfa, + 0x7e, 0x98, 0xf0, 0x1c, 0x90, 0xeb, 0x71, 0xf9, +}; +static const unsigned char kat2188_nonce[] = {0}; +static const unsigned char kat2188_persstr[] = {0}; +static const unsigned char kat2188_entropyinreseed[] = { + 0xd4, 0x46, 0x97, 0xcf, 0x7c, 0x3b, 0x9a, 0xc2, 0x6c, 0x99, 0x89, 0x46, + 0x31, 0x57, 0x24, 0x83, 0x04, 0x70, 0xa3, 0x13, 0x0a, 0x42, 0xf0, 0xde, + 0xfa, 0xf6, 0x38, 0x0c, 0xa8, 0x1a, 0x0e, 0x72, +}; +static const unsigned char kat2188_addinreseed[] = { + 0x46, 0x6f, 0x63, 0x68, 0x0a, 0xe4, 0xdf, 0xd9, 0x36, 0xae, 0x50, 0x9f, + 0xc0, 0x12, 0xae, 0xae, 0x02, 0x30, 0x0e, 0x12, 0x89, 0x40, 0xda, 0x44, + 0x8c, 0x6b, 0xa7, 0x5a, 0xfa, 0x42, 0xef, 0xf4, +}; +static const unsigned char kat2188_addin0[] = { + 0xd2, 0x62, 0xc4, 0x19, 0x1c, 0x2a, 0xc1, 0x9c, 0x9e, 0xdd, 0x1c, 0x2c, + 0x93, 0x28, 0x29, 0x9f, 0xa0, 0x64, 0x1b, 0xc8, 0x0c, 0x08, 0xf3, 0x6c, + 0x63, 0xe3, 0xf3, 0x0e, 0x46, 0x8b, 0x89, 0x65, +}; +static const unsigned char kat2188_addin1[] = { + 0x6c, 0x94, 0x3c, 0x5a, 0xc4, 0x06, 0x13, 0x68, 0xd2, 0xcf, 0x2e, 0x81, + 0x84, 0xd9, 0x6e, 0x44, 0x42, 0x84, 0xa6, 0xdb, 0xdc, 0xc8, 0xb9, 0x69, + 0xb0, 0xe2, 0xd5, 0x60, 0xbc, 0xe9, 0xc6, 0x2d, +}; +static const unsigned char kat2188_retbits[] = { + 0x09, 0x66, 0x0d, 0xfe, 0xf8, 0x7d, 0x4f, 0x5e, 0x19, 0x92, 0xff, 0xb4, + 0x93, 0xed, 0x8c, 0x00, 0x99, 0xe7, 0x1a, 0x50, 0xda, 0xa6, 0xaf, 0x0a, + 0xa2, 0x10, 0x01, 0x21, 0x25, 0xdd, 0x63, 0x2a, 0xc8, 0x73, 0xfa, 0xa8, + 0xe4, 0x6b, 0x11, 0xd4, 0xae, 0xd7, 0xed, 0xef, 0x5d, 0xfb, 0xbf, 0x99, + 0x66, 0xc3, 0x14, 0xb7, 0xea, 0x5c, 0xf9, 0x89, 0xb6, 0x64, 0xe3, 0x56, + 0x48, 0x40, 0x4b, 0x5d, +}; +static const struct drbg_kat_pr_false kat2188_t = { + 12, kat2188_entropyin, kat2188_nonce, kat2188_persstr, + kat2188_entropyinreseed, kat2188_addinreseed, kat2188_addin0, + kat2188_addin1, kat2188_retbits +}; +static const struct drbg_kat kat2188 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2188_t +}; + +static const unsigned char kat2189_entropyin[] = { + 0x78, 0x11, 0x26, 0x14, 0x8a, 0x81, 0x9e, 0xda, 0x73, 0xbc, 0x90, 0xa2, + 0xc1, 0x4a, 0xa3, 0xba, 0xb8, 0x1b, 0xda, 0x81, 0x6a, 0x7c, 0xa6, 0x44, + 0xb3, 0x15, 0xd4, 0x8c, 0x43, 0x68, 0x70, 0x5c, +}; +static const unsigned char kat2189_nonce[] = {0}; +static const unsigned char kat2189_persstr[] = {0}; +static const unsigned char kat2189_entropyinreseed[] = { + 0xdc, 0x6c, 0x73, 0xcf, 0x47, 0x82, 0x4a, 0x26, 0xb1, 0x20, 0xa9, 0x83, + 0xda, 0x41, 0x74, 0x51, 0x87, 0x7d, 0x55, 0x59, 0x49, 0x2f, 0x08, 0x54, + 0x17, 0x8e, 0x1a, 0x21, 0x8c, 0xf4, 0xb8, 0x2e, +}; +static const unsigned char kat2189_addinreseed[] = { + 0x11, 0x57, 0x7c, 0xcb, 0xe1, 0x03, 0x00, 0x0b, 0xcb, 0x32, 0xea, 0xd5, + 0xef, 0xc3, 0x2b, 0x14, 0x55, 0xef, 0x5e, 0x37, 0xa1, 0x07, 0x53, 0xab, + 0x8f, 0xf8, 0xa8, 0xea, 0xe5, 0x7a, 0xd4, 0x2b, +}; +static const unsigned char kat2189_addin0[] = { + 0x9f, 0xbf, 0x82, 0x56, 0x11, 0x3a, 0x79, 0x42, 0xc0, 0x5e, 0xed, 0x10, + 0xfb, 0xa1, 0xee, 0xeb, 0x7d, 0x4c, 0xa7, 0x80, 0x8a, 0xcc, 0xbf, 0x54, + 0x0a, 0x49, 0x7e, 0xa1, 0xa3, 0x70, 0x17, 0x2e, +}; +static const unsigned char kat2189_addin1[] = { + 0x24, 0xd6, 0xd2, 0x22, 0x06, 0x4f, 0x34, 0xa0, 0xab, 0xe6, 0x33, 0x36, + 0xdd, 0xc6, 0x3f, 0xdb, 0x21, 0x27, 0x2d, 0x9f, 0xfc, 0x10, 0x92, 0x3e, + 0xe2, 0x68, 0x3a, 0x11, 0xd4, 0xec, 0xe7, 0x12, +}; +static const unsigned char kat2189_retbits[] = { + 0xdf, 0xda, 0xe1, 0xa9, 0x48, 0xb1, 0xc1, 0xd3, 0xad, 0xc7, 0xe2, 0xfc, + 0xc7, 0xc6, 0x58, 0x91, 0x9a, 0x82, 0xe1, 0x0d, 0xd6, 0x5d, 0xfe, 0x34, + 0x51, 0xa2, 0xc5, 0x92, 0xc0, 0xa6, 0x46, 0x06, 0xb3, 0x31, 0xc5, 0xae, + 0xb9, 0x54, 0x9d, 0x4c, 0x36, 0x11, 0x13, 0x9f, 0x3d, 0x7d, 0x35, 0x9c, + 0x19, 0x70, 0xfd, 0x38, 0x88, 0x5e, 0xfa, 0x33, 0xdc, 0x74, 0x91, 0x73, + 0x99, 0x4c, 0xde, 0xd0, +}; +static const struct drbg_kat_pr_false kat2189_t = { + 13, kat2189_entropyin, kat2189_nonce, kat2189_persstr, + kat2189_entropyinreseed, kat2189_addinreseed, kat2189_addin0, + kat2189_addin1, kat2189_retbits +}; +static const struct drbg_kat kat2189 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2189_t +}; + +static const unsigned char kat2190_entropyin[] = { + 0x48, 0x15, 0xc5, 0x38, 0x0a, 0xe2, 0xde, 0x56, 0x2b, 0x55, 0x2b, 0xc1, + 0x8f, 0x42, 0x77, 0xbb, 0x29, 0xca, 0x89, 0xc6, 0xda, 0xad, 0xe8, 0x4a, + 0xf4, 0xe5, 0xb1, 0xaa, 0x99, 0x4c, 0x5e, 0x4f, +}; +static const unsigned char kat2190_nonce[] = {0}; +static const unsigned char kat2190_persstr[] = {0}; +static const unsigned char kat2190_entropyinreseed[] = { + 0xcb, 0xcf, 0x3c, 0x89, 0xb2, 0xae, 0xff, 0x5b, 0xa2, 0x81, 0x42, 0xfd, + 0xb9, 0xf0, 0xe1, 0xed, 0xa8, 0x35, 0xeb, 0xe9, 0x18, 0x9e, 0x72, 0xbd, + 0xb6, 0xcc, 0x2a, 0x59, 0x12, 0x6c, 0x85, 0x3c, +}; +static const unsigned char kat2190_addinreseed[] = { + 0x82, 0x50, 0xfb, 0x55, 0x53, 0xb1, 0xdd, 0x69, 0x2c, 0x98, 0xd6, 0x51, + 0xeb, 0xa5, 0x0d, 0x6e, 0x73, 0xd2, 0x51, 0x23, 0x1f, 0x83, 0x6c, 0x39, + 0x04, 0x5b, 0x45, 0x6f, 0x52, 0x73, 0x76, 0x81, +}; +static const unsigned char kat2190_addin0[] = { + 0x9e, 0x0a, 0xbd, 0x6f, 0xee, 0x61, 0x13, 0x20, 0xde, 0x52, 0xbc, 0x48, + 0xe5, 0x6f, 0x5f, 0x17, 0xbf, 0x18, 0x0e, 0x59, 0x6d, 0x25, 0x80, 0x31, + 0xe3, 0x66, 0x60, 0x66, 0xbc, 0xc1, 0xe3, 0x69, +}; +static const unsigned char kat2190_addin1[] = { + 0x56, 0x12, 0x69, 0x4e, 0x42, 0x60, 0xdc, 0x91, 0xba, 0x87, 0xee, 0x97, + 0x65, 0x6f, 0x14, 0x36, 0xce, 0xc1, 0xf7, 0x11, 0x53, 0x6b, 0xdb, 0xf6, + 0x10, 0x64, 0x02, 0x66, 0x73, 0xbb, 0x39, 0x8b, +}; +static const unsigned char kat2190_retbits[] = { + 0x02, 0xbb, 0x0c, 0x1e, 0x3a, 0xbb, 0x29, 0x93, 0x38, 0x3c, 0xc9, 0xcf, + 0x2f, 0x32, 0xc1, 0x48, 0xd7, 0x85, 0xdd, 0xe2, 0x7d, 0xf3, 0xa8, 0xdb, + 0xd3, 0xec, 0xc7, 0x3e, 0xa4, 0xe8, 0x84, 0xcd, 0x42, 0x70, 0x61, 0x42, + 0x3e, 0x07, 0x36, 0xa9, 0x5d, 0xd3, 0x20, 0x2e, 0x63, 0x36, 0xcf, 0xac, + 0x40, 0x31, 0x1b, 0x8f, 0x08, 0xaa, 0xa8, 0x8a, 0x90, 0xba, 0xa2, 0xf9, + 0x39, 0x99, 0x69, 0x4b, +}; +static const struct drbg_kat_pr_false kat2190_t = { + 14, kat2190_entropyin, kat2190_nonce, kat2190_persstr, + kat2190_entropyinreseed, kat2190_addinreseed, kat2190_addin0, + kat2190_addin1, kat2190_retbits +}; +static const struct drbg_kat kat2190 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2190_t +}; + +static const unsigned char kat2191_entropyin[] = { + 0x34, 0xcb, 0xc2, 0xb2, 0x17, 0xf3, 0xd9, 0x07, 0xfa, 0x2a, 0xd6, 0xa0, + 0xd7, 0xa8, 0x13, 0xb0, 0xfd, 0xa1, 0xe1, 0x7f, 0xbe, 0xed, 0x94, 0xb0, + 0xe0, 0xa0, 0xab, 0xfb, 0xec, 0x94, 0x71, 0x46, +}; +static const unsigned char kat2191_nonce[] = {0}; +static const unsigned char kat2191_persstr[] = { + 0xe8, 0xfa, 0x4c, 0x5d, 0xe8, 0x25, 0x79, 0x1e, 0x68, 0x18, 0x0f, 0x2b, + 0xa1, 0x07, 0xe8, 0x29, 0xc4, 0x82, 0x99, 0xcb, 0x01, 0xbe, 0x93, 0x9c, + 0xd0, 0xbe, 0x76, 0xda, 0x12, 0x0a, 0x91, 0xf2, +}; +static const unsigned char kat2191_entropyinreseed[] = { + 0x83, 0x26, 0xf8, 0xe9, 0xcf, 0xbd, 0x02, 0xeb, 0x07, 0x6b, 0xbb, 0x98, + 0x19, 0xd9, 0x6a, 0x02, 0x38, 0x6f, 0x80, 0xbf, 0x91, 0x3c, 0x8e, 0x4a, + 0x80, 0x36, 0x1d, 0x82, 0xca, 0xfa, 0xd5, 0x2e, +}; +static const unsigned char kat2191_addinreseed[] = {0}; +static const unsigned char kat2191_addin0[] = {0}; +static const unsigned char kat2191_addin1[] = {0}; +static const unsigned char kat2191_retbits[] = { + 0x52, 0xf5, 0xe7, 0x18, 0xbf, 0x48, 0xd9, 0x9e, 0x49, 0x87, 0x75, 0xc0, + 0x03, 0x78, 0xe5, 0x45, 0x79, 0x9b, 0xb2, 0x05, 0x9a, 0xef, 0x0b, 0x74, + 0xbe, 0x57, 0x3d, 0x82, 0x83, 0xf0, 0x2b, 0x52, 0x93, 0x91, 0x79, 0x13, + 0xbc, 0x8f, 0x26, 0xfc, 0x23, 0x76, 0x0a, 0x1c, 0x86, 0xc3, 0xf5, 0xc8, + 0x44, 0x85, 0x74, 0x19, 0x86, 0x8e, 0xaf, 0xeb, 0x17, 0xc9, 0x24, 0x82, + 0x27, 0xd0, 0x26, 0xb8, +}; +static const struct drbg_kat_pr_false kat2191_t = { + 0, kat2191_entropyin, kat2191_nonce, kat2191_persstr, + kat2191_entropyinreseed, kat2191_addinreseed, kat2191_addin0, + kat2191_addin1, kat2191_retbits +}; +static const struct drbg_kat kat2191 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2191_t +}; + +static const unsigned char kat2192_entropyin[] = { + 0xba, 0x81, 0x1b, 0xf4, 0x91, 0xac, 0x45, 0x97, 0xd7, 0x9d, 0x0f, 0x44, + 0x73, 0x20, 0x80, 0x11, 0xc5, 0xd4, 0x85, 0x75, 0xa1, 0x56, 0xd9, 0x69, + 0xf0, 0x71, 0xcd, 0x5a, 0xe5, 0xaa, 0x45, 0x58, +}; +static const unsigned char kat2192_nonce[] = {0}; +static const unsigned char kat2192_persstr[] = { + 0x09, 0x09, 0xe7, 0x80, 0x9f, 0x07, 0x6e, 0xd3, 0x74, 0x76, 0x25, 0xcd, + 0x2b, 0x80, 0x61, 0x58, 0x75, 0x40, 0x7a, 0x13, 0x3e, 0x77, 0xd6, 0x77, + 0xfd, 0xf8, 0xd9, 0xd3, 0x78, 0xde, 0x4f, 0xd9, +}; +static const unsigned char kat2192_entropyinreseed[] = { + 0xf5, 0x56, 0xc3, 0xaf, 0xea, 0x21, 0x2f, 0xf0, 0x60, 0xed, 0x01, 0xb7, + 0xf7, 0xf5, 0xdb, 0xb7, 0x3f, 0x96, 0x0e, 0xa6, 0xa3, 0xa9, 0x3f, 0x24, + 0x8a, 0xe4, 0xd2, 0xdf, 0x2b, 0xf4, 0x99, 0x48, +}; +static const unsigned char kat2192_addinreseed[] = {0}; +static const unsigned char kat2192_addin0[] = {0}; +static const unsigned char kat2192_addin1[] = {0}; +static const unsigned char kat2192_retbits[] = { + 0x96, 0xee, 0xe3, 0x4e, 0x4c, 0xfc, 0x90, 0x5b, 0xe6, 0x4c, 0xf1, 0xdc, + 0x64, 0xc6, 0xe0, 0x7f, 0x1c, 0xeb, 0x3b, 0xdb, 0x74, 0x5f, 0x42, 0x33, + 0x25, 0x68, 0x87, 0x3b, 0x80, 0xb1, 0x1f, 0x1a, 0x1a, 0xc6, 0xd0, 0xd5, + 0x76, 0xaf, 0xef, 0xcd, 0xd7, 0xc7, 0x0c, 0xe6, 0xa8, 0x82, 0xee, 0x94, + 0x04, 0x63, 0x32, 0x3b, 0x51, 0xc1, 0x63, 0x39, 0x98, 0xa8, 0x09, 0x00, + 0x3b, 0x94, 0x72, 0x10, +}; +static const struct drbg_kat_pr_false kat2192_t = { + 1, kat2192_entropyin, kat2192_nonce, kat2192_persstr, + kat2192_entropyinreseed, kat2192_addinreseed, kat2192_addin0, + kat2192_addin1, kat2192_retbits +}; +static const struct drbg_kat kat2192 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2192_t +}; + +static const unsigned char kat2193_entropyin[] = { + 0xe9, 0xd1, 0x64, 0xce, 0x4b, 0xf5, 0x2a, 0x73, 0xe7, 0x39, 0x45, 0xe3, + 0xfd, 0xe2, 0xd5, 0x99, 0xdf, 0x02, 0xd6, 0x85, 0x40, 0x16, 0x5c, 0xe9, + 0x12, 0xe2, 0x0d, 0x29, 0xe3, 0xda, 0x17, 0x2f, +}; +static const unsigned char kat2193_nonce[] = {0}; +static const unsigned char kat2193_persstr[] = { + 0x09, 0x10, 0xb0, 0x15, 0x8f, 0x03, 0x38, 0x29, 0x12, 0xb9, 0x6a, 0xab, + 0x0c, 0x35, 0x65, 0xb2, 0xb9, 0x5c, 0x7a, 0xbe, 0x82, 0x3d, 0xf4, 0x4e, + 0xad, 0xb2, 0x7d, 0x86, 0xd1, 0x56, 0xa9, 0xb8, +}; +static const unsigned char kat2193_entropyinreseed[] = { + 0x97, 0x3c, 0x87, 0x25, 0x04, 0x7e, 0x71, 0xcf, 0xe9, 0xd2, 0x8d, 0x10, + 0xc4, 0x08, 0x49, 0xfa, 0xe8, 0x44, 0xc9, 0x32, 0x39, 0x84, 0x22, 0xac, + 0x0d, 0x80, 0xa5, 0xef, 0x2f, 0xef, 0x5b, 0x9c, +}; +static const unsigned char kat2193_addinreseed[] = {0}; +static const unsigned char kat2193_addin0[] = {0}; +static const unsigned char kat2193_addin1[] = {0}; +static const unsigned char kat2193_retbits[] = { + 0x54, 0x7a, 0xe8, 0xf1, 0x1d, 0x18, 0x6c, 0xc2, 0x85, 0xf8, 0x2b, 0x38, + 0x54, 0xe4, 0xa5, 0xeb, 0x88, 0xd0, 0x21, 0x8d, 0xf6, 0x46, 0xf5, 0x4b, + 0x1f, 0xd7, 0xfe, 0x33, 0x50, 0x8f, 0xe6, 0xa1, 0x40, 0xf0, 0xc5, 0x17, + 0x35, 0x6d, 0x19, 0x2f, 0xdd, 0x96, 0x1a, 0x29, 0xf4, 0x7f, 0xdc, 0xc9, + 0xe3, 0x98, 0x37, 0x5e, 0xaf, 0xe7, 0x86, 0xd9, 0x7c, 0x69, 0xd0, 0xac, + 0x5c, 0x86, 0xc9, 0xe4, +}; +static const struct drbg_kat_pr_false kat2193_t = { + 2, kat2193_entropyin, kat2193_nonce, kat2193_persstr, + kat2193_entropyinreseed, kat2193_addinreseed, kat2193_addin0, + kat2193_addin1, kat2193_retbits +}; +static const struct drbg_kat kat2193 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2193_t +}; + +static const unsigned char kat2194_entropyin[] = { + 0x65, 0x11, 0x76, 0x66, 0x13, 0xfe, 0x85, 0x09, 0x39, 0x6f, 0x2c, 0x0a, + 0xf7, 0x43, 0xb7, 0xfe, 0x81, 0xf2, 0x83, 0x4b, 0xe8, 0xa7, 0xfc, 0x39, + 0x9f, 0x84, 0xb3, 0x5c, 0x1e, 0x89, 0xa2, 0x74, +}; +static const unsigned char kat2194_nonce[] = {0}; +static const unsigned char kat2194_persstr[] = { + 0x62, 0x78, 0x4e, 0x10, 0xe5, 0x49, 0x0b, 0x15, 0x79, 0x88, 0xaf, 0x06, + 0x66, 0x0d, 0x42, 0xd8, 0xaa, 0x56, 0x78, 0x2b, 0x6d, 0x5f, 0x88, 0x1e, + 0x5e, 0x09, 0x88, 0xe8, 0xe3, 0x47, 0xbf, 0x08, +}; +static const unsigned char kat2194_entropyinreseed[] = { + 0x52, 0xc1, 0xbf, 0x53, 0x7f, 0x4d, 0xa3, 0xbe, 0x03, 0x17, 0xa4, 0x88, + 0x14, 0xdf, 0x6d, 0xac, 0x9e, 0x66, 0x44, 0x40, 0x00, 0xe5, 0xb0, 0x22, + 0x6a, 0xb9, 0x04, 0xc8, 0xf0, 0xef, 0xa4, 0x4b, +}; +static const unsigned char kat2194_addinreseed[] = {0}; +static const unsigned char kat2194_addin0[] = {0}; +static const unsigned char kat2194_addin1[] = {0}; +static const unsigned char kat2194_retbits[] = { + 0x2d, 0x04, 0xdc, 0x4e, 0x84, 0xe0, 0x2b, 0x07, 0x9b, 0xca, 0x0d, 0xf8, + 0xfe, 0xe5, 0x35, 0x10, 0xfe, 0xcc, 0x58, 0x27, 0x75, 0x18, 0x3d, 0x27, + 0x9d, 0x61, 0x4a, 0xef, 0xd9, 0xf5, 0x5d, 0x05, 0x67, 0x5a, 0x65, 0x7f, + 0x87, 0xc7, 0xe6, 0xfd, 0xa4, 0x5d, 0x99, 0x14, 0x83, 0xba, 0x78, 0x7a, + 0xc5, 0x7d, 0x3e, 0x22, 0xed, 0xa2, 0x9a, 0x86, 0xdc, 0x09, 0x4b, 0xc0, + 0x33, 0x27, 0x9b, 0x98, +}; +static const struct drbg_kat_pr_false kat2194_t = { + 3, kat2194_entropyin, kat2194_nonce, kat2194_persstr, + kat2194_entropyinreseed, kat2194_addinreseed, kat2194_addin0, + kat2194_addin1, kat2194_retbits +}; +static const struct drbg_kat kat2194 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2194_t +}; + +static const unsigned char kat2195_entropyin[] = { + 0xf8, 0x4a, 0x1b, 0xa8, 0x02, 0x1e, 0xe1, 0xb1, 0xbe, 0x01, 0xf1, 0x5d, + 0x47, 0xac, 0x98, 0xcc, 0x91, 0xb5, 0xd1, 0x15, 0x61, 0xc9, 0xce, 0x6a, + 0xd3, 0x13, 0xaf, 0x69, 0x4d, 0x87, 0x06, 0x1d, +}; +static const unsigned char kat2195_nonce[] = {0}; +static const unsigned char kat2195_persstr[] = { + 0x46, 0xde, 0x12, 0xc1, 0x7a, 0x42, 0xe0, 0x4e, 0x49, 0x77, 0xe3, 0xd2, + 0xbf, 0x68, 0x94, 0xbf, 0x97, 0xce, 0x9e, 0x6c, 0x28, 0x76, 0x29, 0xec, + 0xf8, 0xfc, 0x84, 0xf8, 0xad, 0xba, 0xd8, 0xb3, +}; +static const unsigned char kat2195_entropyinreseed[] = { + 0xc0, 0x5c, 0x30, 0xf8, 0x99, 0x4c, 0x38, 0x68, 0x8b, 0xf1, 0xc8, 0xfd, + 0xea, 0xab, 0x3f, 0x04, 0xdd, 0x7b, 0xca, 0xe1, 0xf3, 0xf1, 0xe8, 0x53, + 0x9b, 0x05, 0x35, 0x78, 0x9c, 0x8c, 0x49, 0x0f, +}; +static const unsigned char kat2195_addinreseed[] = {0}; +static const unsigned char kat2195_addin0[] = {0}; +static const unsigned char kat2195_addin1[] = {0}; +static const unsigned char kat2195_retbits[] = { + 0xaf, 0x00, 0x78, 0x2c, 0x6f, 0xba, 0x94, 0x39, 0xd6, 0x1f, 0x63, 0x7d, + 0x73, 0x61, 0x53, 0xc9, 0x45, 0x67, 0x3c, 0x73, 0xa5, 0xa1, 0xd6, 0x46, + 0x5f, 0xed, 0x97, 0xf2, 0xd7, 0xcc, 0x38, 0xfc, 0x07, 0x19, 0x21, 0x8d, + 0xb5, 0xb2, 0x0a, 0x65, 0xba, 0x6e, 0xc0, 0xec, 0x7a, 0xfd, 0x47, 0xdc, + 0x40, 0xf4, 0xec, 0x61, 0x94, 0x0c, 0x9b, 0x11, 0x6f, 0x82, 0x00, 0x98, + 0xae, 0x53, 0xc9, 0x3d, +}; +static const struct drbg_kat_pr_false kat2195_t = { + 4, kat2195_entropyin, kat2195_nonce, kat2195_persstr, + kat2195_entropyinreseed, kat2195_addinreseed, kat2195_addin0, + kat2195_addin1, kat2195_retbits +}; +static const struct drbg_kat kat2195 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2195_t +}; + +static const unsigned char kat2196_entropyin[] = { + 0x26, 0xaf, 0x70, 0x07, 0x5d, 0xfa, 0x4f, 0x60, 0xf3, 0x4f, 0x40, 0x63, + 0xea, 0xaf, 0x74, 0x77, 0x9e, 0x58, 0x4c, 0xfc, 0xcd, 0xa7, 0x2a, 0x61, + 0x25, 0x78, 0xf8, 0x45, 0x83, 0x01, 0xae, 0x7d, +}; +static const unsigned char kat2196_nonce[] = {0}; +static const unsigned char kat2196_persstr[] = { + 0x04, 0x8b, 0x9f, 0x8f, 0x06, 0xc2, 0x86, 0xc1, 0x30, 0x3f, 0x58, 0x7a, + 0x80, 0x27, 0x01, 0xbb, 0xa0, 0x05, 0x33, 0x8b, 0xb9, 0x52, 0xa6, 0x6b, + 0x30, 0xe4, 0x0a, 0x15, 0x3c, 0x9c, 0x07, 0x66, +}; +static const unsigned char kat2196_entropyinreseed[] = { + 0xdb, 0xea, 0x9a, 0xd4, 0x23, 0x44, 0x72, 0xee, 0x5a, 0x15, 0x94, 0xd5, + 0x2e, 0x3b, 0x43, 0xd9, 0x4f, 0x23, 0x76, 0x2e, 0xd1, 0x98, 0x09, 0xde, + 0xa6, 0xca, 0xce, 0xdb, 0x93, 0x04, 0xa3, 0xcd, +}; +static const unsigned char kat2196_addinreseed[] = {0}; +static const unsigned char kat2196_addin0[] = {0}; +static const unsigned char kat2196_addin1[] = {0}; +static const unsigned char kat2196_retbits[] = { + 0x32, 0xa7, 0x9a, 0xab, 0x3f, 0x2c, 0x04, 0xca, 0x33, 0x0f, 0xdb, 0x60, + 0x6c, 0x43, 0x7c, 0xb8, 0xdd, 0x58, 0x14, 0x70, 0xbc, 0xe8, 0x80, 0xc7, + 0x28, 0x07, 0xc5, 0x6e, 0x35, 0x65, 0xc2, 0xa2, 0x26, 0x92, 0x8c, 0x87, + 0x15, 0x21, 0x3d, 0xb1, 0x55, 0x0e, 0x3d, 0x44, 0x12, 0x63, 0x2f, 0xcb, + 0xcd, 0xed, 0xd9, 0x5f, 0xdc, 0xef, 0x93, 0xbd, 0x03, 0xcc, 0xf7, 0xc1, + 0x10, 0xd2, 0x06, 0xaf, +}; +static const struct drbg_kat_pr_false kat2196_t = { + 5, kat2196_entropyin, kat2196_nonce, kat2196_persstr, + kat2196_entropyinreseed, kat2196_addinreseed, kat2196_addin0, + kat2196_addin1, kat2196_retbits +}; +static const struct drbg_kat kat2196 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2196_t +}; + +static const unsigned char kat2197_entropyin[] = { + 0xe9, 0x0f, 0xe0, 0x73, 0x62, 0x57, 0x4f, 0x81, 0xed, 0xae, 0xa5, 0x41, + 0xc5, 0x25, 0xd6, 0xf9, 0x90, 0x6a, 0x5c, 0x4f, 0xd7, 0xf8, 0xf2, 0x8e, + 0x10, 0x10, 0x73, 0xaa, 0xcb, 0x88, 0xd1, 0xe7, +}; +static const unsigned char kat2197_nonce[] = {0}; +static const unsigned char kat2197_persstr[] = { + 0xef, 0x64, 0xe8, 0xf6, 0x6b, 0x9f, 0x81, 0xfb, 0x2c, 0xc9, 0xec, 0xaa, + 0xe2, 0x08, 0xe5, 0xa9, 0x08, 0xf8, 0x4e, 0x7b, 0xa1, 0xe8, 0xac, 0x27, + 0x3d, 0xb2, 0xf8, 0xef, 0x11, 0xb5, 0x5b, 0x34, +}; +static const unsigned char kat2197_entropyinreseed[] = { + 0xd4, 0xb7, 0x63, 0xdb, 0x6b, 0x46, 0x1e, 0x75, 0xd3, 0xbe, 0x8f, 0x01, + 0xb0, 0x89, 0x70, 0xda, 0x4d, 0x88, 0xc7, 0xdf, 0xa9, 0xf3, 0xe5, 0xc0, + 0x7c, 0x58, 0xff, 0x21, 0xf5, 0xa3, 0xc5, 0xe0, +}; +static const unsigned char kat2197_addinreseed[] = {0}; +static const unsigned char kat2197_addin0[] = {0}; +static const unsigned char kat2197_addin1[] = {0}; +static const unsigned char kat2197_retbits[] = { + 0x91, 0xac, 0xb3, 0x87, 0xa1, 0x92, 0xf4, 0x0f, 0x3c, 0x29, 0x33, 0xca, + 0xe9, 0x4d, 0x3d, 0x29, 0xd2, 0xb9, 0xad, 0x12, 0xde, 0x19, 0x3f, 0x20, + 0xf7, 0x1d, 0xa5, 0x94, 0x39, 0x0d, 0xd5, 0x3a, 0xa4, 0xd0, 0xa6, 0x67, + 0x34, 0x7e, 0xb6, 0x1a, 0xd0, 0xfb, 0x09, 0x20, 0x1e, 0x25, 0x98, 0xfc, + 0x99, 0xb4, 0xab, 0xde, 0x5f, 0x80, 0x45, 0x8e, 0xb7, 0xec, 0x47, 0x66, + 0x6a, 0xe2, 0x65, 0x43, +}; +static const struct drbg_kat_pr_false kat2197_t = { + 6, kat2197_entropyin, kat2197_nonce, kat2197_persstr, + kat2197_entropyinreseed, kat2197_addinreseed, kat2197_addin0, + kat2197_addin1, kat2197_retbits +}; +static const struct drbg_kat kat2197 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2197_t +}; + +static const unsigned char kat2198_entropyin[] = { + 0x82, 0x68, 0x23, 0xd3, 0x54, 0xdc, 0x97, 0xd4, 0x55, 0x07, 0xae, 0xa1, + 0xad, 0x81, 0x42, 0xe7, 0x04, 0x75, 0x4b, 0x9f, 0xac, 0x6a, 0xda, 0xb2, + 0xe3, 0x52, 0x3b, 0xca, 0xea, 0xa0, 0x8a, 0x9c, +}; +static const unsigned char kat2198_nonce[] = {0}; +static const unsigned char kat2198_persstr[] = { + 0x33, 0x34, 0xce, 0xa8, 0x71, 0x27, 0x9e, 0x90, 0xe1, 0xf3, 0xfa, 0xd0, + 0x8c, 0x5f, 0x1c, 0xb5, 0x49, 0x58, 0xd7, 0x5f, 0x28, 0xc7, 0xa1, 0x88, + 0x22, 0x89, 0xda, 0xd5, 0xbf, 0xa0, 0x46, 0x4d, +}; +static const unsigned char kat2198_entropyinreseed[] = { + 0xbe, 0xc5, 0xaa, 0x6e, 0x75, 0x5b, 0xf3, 0x51, 0x4f, 0x35, 0x20, 0xe7, + 0xa9, 0x2c, 0xfa, 0xb4, 0x2c, 0xdf, 0x35, 0xc9, 0xb5, 0x9a, 0x15, 0xe7, + 0x81, 0xec, 0x82, 0xff, 0x7a, 0xdc, 0x88, 0xdd, +}; +static const unsigned char kat2198_addinreseed[] = {0}; +static const unsigned char kat2198_addin0[] = {0}; +static const unsigned char kat2198_addin1[] = {0}; +static const unsigned char kat2198_retbits[] = { + 0x38, 0x82, 0x1c, 0xdc, 0x34, 0xe3, 0xd7, 0x64, 0xf8, 0x77, 0xf7, 0x60, + 0xb5, 0x1e, 0x18, 0x64, 0x6a, 0xa6, 0xab, 0x98, 0x71, 0xe8, 0xef, 0x22, + 0xb4, 0x3c, 0x34, 0x28, 0xd7, 0xcb, 0x66, 0x4e, 0x93, 0x2d, 0x96, 0x9b, + 0x34, 0x2d, 0x51, 0x96, 0x48, 0xcf, 0xfd, 0xef, 0x66, 0x24, 0xee, 0x14, + 0xe4, 0xf1, 0x36, 0x80, 0x0d, 0xe1, 0x1c, 0xce, 0xc1, 0x62, 0x1e, 0x3b, + 0x16, 0xbe, 0xea, 0x7d, +}; +static const struct drbg_kat_pr_false kat2198_t = { + 7, kat2198_entropyin, kat2198_nonce, kat2198_persstr, + kat2198_entropyinreseed, kat2198_addinreseed, kat2198_addin0, + kat2198_addin1, kat2198_retbits +}; +static const struct drbg_kat kat2198 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2198_t +}; + +static const unsigned char kat2199_entropyin[] = { + 0x30, 0x0b, 0x94, 0x5e, 0x8e, 0x0d, 0xff, 0xcb, 0xfc, 0x04, 0x35, 0xe6, + 0xac, 0x10, 0x85, 0xef, 0xd9, 0x33, 0x07, 0xe7, 0x11, 0xf1, 0xad, 0x60, + 0x9f, 0x7b, 0x92, 0x97, 0x04, 0x16, 0xb0, 0x79, +}; +static const unsigned char kat2199_nonce[] = {0}; +static const unsigned char kat2199_persstr[] = { + 0x9a, 0x0f, 0xf7, 0x52, 0xcd, 0x21, 0x71, 0xfe, 0x59, 0xa2, 0x7a, 0x68, + 0xe9, 0xcd, 0xce, 0x81, 0xae, 0xa2, 0xb4, 0x08, 0xe0, 0x27, 0xbd, 0xd6, + 0x09, 0x98, 0x24, 0x48, 0x21, 0x58, 0x65, 0x34, +}; +static const unsigned char kat2199_entropyinreseed[] = { + 0xe0, 0x76, 0xf4, 0xae, 0x6f, 0xe8, 0xf6, 0x6d, 0x71, 0x6b, 0xff, 0xc6, + 0xc4, 0xe1, 0x0d, 0xaa, 0xb3, 0x54, 0x91, 0x80, 0x4a, 0x59, 0xe6, 0xe5, + 0x79, 0x09, 0x43, 0x34, 0x83, 0xf3, 0xf4, 0x21, +}; +static const unsigned char kat2199_addinreseed[] = {0}; +static const unsigned char kat2199_addin0[] = {0}; +static const unsigned char kat2199_addin1[] = {0}; +static const unsigned char kat2199_retbits[] = { + 0x48, 0x50, 0x26, 0xdd, 0x2d, 0x2a, 0xe2, 0x0c, 0x90, 0xc8, 0xb4, 0x3f, + 0x41, 0x84, 0x27, 0x0b, 0xb1, 0x56, 0x15, 0x6e, 0xf8, 0x8b, 0xb8, 0xf1, + 0x5e, 0x6f, 0xca, 0xf0, 0x73, 0x68, 0xe5, 0x0b, 0x75, 0x16, 0xc6, 0x03, + 0xf3, 0xf6, 0x9b, 0x2d, 0x20, 0xbd, 0x84, 0xbc, 0xcc, 0x02, 0xdf, 0x62, + 0xe6, 0xe8, 0x2e, 0xcf, 0xe0, 0x16, 0xe7, 0x48, 0x3f, 0xc0, 0x2a, 0x40, + 0x0f, 0xe4, 0x6a, 0xd6, +}; +static const struct drbg_kat_pr_false kat2199_t = { + 8, kat2199_entropyin, kat2199_nonce, kat2199_persstr, + kat2199_entropyinreseed, kat2199_addinreseed, kat2199_addin0, + kat2199_addin1, kat2199_retbits +}; +static const struct drbg_kat kat2199 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2199_t +}; + +static const unsigned char kat2200_entropyin[] = { + 0x64, 0xec, 0x01, 0x71, 0x09, 0xb9, 0x5c, 0xcb, 0x6a, 0xca, 0xc7, 0xaf, + 0x3d, 0xdb, 0x0b, 0xb0, 0x9c, 0xe5, 0x38, 0xb1, 0xaf, 0xe1, 0x31, 0xf0, + 0x89, 0x9f, 0x1f, 0xb0, 0x02, 0x3b, 0x21, 0xf8, +}; +static const unsigned char kat2200_nonce[] = {0}; +static const unsigned char kat2200_persstr[] = { + 0xdb, 0x2c, 0x8f, 0xb7, 0x88, 0x01, 0xd7, 0x3c, 0x83, 0xf7, 0x9e, 0xde, + 0xb7, 0x6e, 0x87, 0x68, 0x24, 0x71, 0xdc, 0x0b, 0xee, 0xcf, 0x13, 0x51, + 0x01, 0x33, 0x9f, 0x7c, 0xc3, 0x21, 0xed, 0x6b, +}; +static const unsigned char kat2200_entropyinreseed[] = { + 0x75, 0x18, 0x38, 0xce, 0x43, 0x40, 0xf8, 0xf8, 0xda, 0xd2, 0x29, 0xb3, + 0xd9, 0x5a, 0x24, 0xde, 0x3e, 0x45, 0xf0, 0x39, 0x6e, 0x44, 0x36, 0xb2, + 0x7f, 0xdd, 0x51, 0x30, 0xd6, 0x9b, 0x55, 0xb7, +}; +static const unsigned char kat2200_addinreseed[] = {0}; +static const unsigned char kat2200_addin0[] = {0}; +static const unsigned char kat2200_addin1[] = {0}; +static const unsigned char kat2200_retbits[] = { + 0x51, 0x85, 0x45, 0x29, 0x21, 0x94, 0x44, 0xbb, 0x65, 0x99, 0x9e, 0x63, + 0xad, 0xfe, 0x88, 0xb5, 0x12, 0x4c, 0x2d, 0x60, 0xaf, 0x21, 0x4b, 0xf0, + 0x2b, 0x63, 0x8e, 0x47, 0x86, 0x44, 0x50, 0x01, 0x2e, 0x79, 0x1e, 0x73, + 0x7c, 0x5b, 0x57, 0xa8, 0xd7, 0x33, 0xdc, 0x07, 0xca, 0x59, 0x43, 0x5e, + 0xaa, 0x3c, 0x0e, 0x50, 0xd3, 0x1c, 0x73, 0x0e, 0xfb, 0xe9, 0x64, 0xa1, + 0x66, 0x8f, 0x60, 0xa4, +}; +static const struct drbg_kat_pr_false kat2200_t = { + 9, kat2200_entropyin, kat2200_nonce, kat2200_persstr, + kat2200_entropyinreseed, kat2200_addinreseed, kat2200_addin0, + kat2200_addin1, kat2200_retbits +}; +static const struct drbg_kat kat2200 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2200_t +}; + +static const unsigned char kat2201_entropyin[] = { + 0x94, 0x0b, 0xea, 0xb8, 0x8d, 0x26, 0xf3, 0x47, 0x5a, 0x2b, 0x65, 0x07, + 0x90, 0xcb, 0xdb, 0x89, 0xf7, 0x48, 0x37, 0x29, 0x1c, 0x05, 0x99, 0x59, + 0xd9, 0xc4, 0x19, 0xe9, 0xaf, 0xa9, 0xbe, 0x7c, +}; +static const unsigned char kat2201_nonce[] = {0}; +static const unsigned char kat2201_persstr[] = { + 0x4e, 0x81, 0xc4, 0x2d, 0x27, 0xa5, 0xd0, 0xbf, 0x54, 0xa4, 0xc8, 0xe1, + 0xee, 0x44, 0x53, 0xa1, 0x80, 0x4f, 0x63, 0x81, 0x37, 0x69, 0x13, 0x7c, + 0x9a, 0x50, 0x05, 0xf2, 0x58, 0xb2, 0xa1, 0x4d, +}; +static const unsigned char kat2201_entropyinreseed[] = { + 0x17, 0x83, 0x41, 0x1b, 0x3f, 0xae, 0xef, 0xe2, 0xaf, 0x92, 0x55, 0x87, + 0x2b, 0x2b, 0x60, 0x2f, 0xc1, 0x60, 0xcd, 0xbc, 0x2b, 0x03, 0x40, 0xd1, + 0xa0, 0x55, 0x8c, 0x44, 0x50, 0xdd, 0xe6, 0xca, +}; +static const unsigned char kat2201_addinreseed[] = {0}; +static const unsigned char kat2201_addin0[] = {0}; +static const unsigned char kat2201_addin1[] = {0}; +static const unsigned char kat2201_retbits[] = { + 0xe7, 0xfa, 0x2f, 0xf9, 0x8a, 0xf3, 0xe8, 0x2b, 0xbe, 0x8e, 0xd8, 0x32, + 0xb9, 0x26, 0x91, 0x7e, 0x30, 0x03, 0x6b, 0xc1, 0xd2, 0xfa, 0xa0, 0xb6, + 0x82, 0x7c, 0x38, 0xd5, 0x37, 0x45, 0x59, 0xbe, 0x30, 0x1d, 0x27, 0x6b, + 0x40, 0x57, 0x92, 0x49, 0x92, 0xed, 0xe1, 0x11, 0xb0, 0x2d, 0x64, 0xa4, + 0x86, 0xbc, 0x3e, 0xc8, 0xb0, 0x9f, 0xfd, 0x15, 0x13, 0x9a, 0x21, 0xd4, + 0x1f, 0xcc, 0x85, 0xfb, +}; +static const struct drbg_kat_pr_false kat2201_t = { + 10, kat2201_entropyin, kat2201_nonce, kat2201_persstr, + kat2201_entropyinreseed, kat2201_addinreseed, kat2201_addin0, + kat2201_addin1, kat2201_retbits +}; +static const struct drbg_kat kat2201 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2201_t +}; + +static const unsigned char kat2202_entropyin[] = { + 0x59, 0x12, 0x03, 0xe2, 0x02, 0xf4, 0xf3, 0x2d, 0xc7, 0x1a, 0x00, 0x0a, + 0x4f, 0xa3, 0xea, 0x92, 0x30, 0xf3, 0x9a, 0x20, 0x42, 0xfc, 0x50, 0xbb, + 0x72, 0x53, 0xa9, 0x3f, 0xd0, 0xb1, 0xce, 0x01, +}; +static const unsigned char kat2202_nonce[] = {0}; +static const unsigned char kat2202_persstr[] = { + 0x37, 0xa4, 0xd4, 0x62, 0xf6, 0x53, 0x0b, 0x5f, 0xc4, 0x4f, 0xd0, 0x1b, + 0x24, 0x66, 0x9c, 0x68, 0xae, 0x04, 0x2f, 0x0f, 0x0e, 0x84, 0xbf, 0xc1, + 0x81, 0x74, 0xff, 0x4c, 0xd4, 0x5d, 0xd1, 0x23, +}; +static const unsigned char kat2202_entropyinreseed[] = { + 0x8a, 0x73, 0x88, 0xd7, 0x39, 0xcd, 0x2e, 0xf5, 0x42, 0xd5, 0xcb, 0x62, + 0x26, 0x07, 0xfd, 0x92, 0x28, 0x46, 0x66, 0xd5, 0x2e, 0xd9, 0x78, 0x84, + 0x46, 0x9e, 0xcb, 0xad, 0x1d, 0xae, 0xf6, 0xf6, +}; +static const unsigned char kat2202_addinreseed[] = {0}; +static const unsigned char kat2202_addin0[] = {0}; +static const unsigned char kat2202_addin1[] = {0}; +static const unsigned char kat2202_retbits[] = { + 0x9d, 0x34, 0x8b, 0x5d, 0x6f, 0x71, 0x26, 0x03, 0x1e, 0x79, 0xac, 0xa1, + 0x67, 0x09, 0x7e, 0x2f, 0x8d, 0xd1, 0xc1, 0x07, 0x73, 0x06, 0x48, 0x18, + 0x66, 0x2c, 0x40, 0x8d, 0xc0, 0xf2, 0x43, 0x73, 0x5e, 0xff, 0xc6, 0xeb, + 0xc3, 0x35, 0x53, 0xf2, 0x5a, 0xc9, 0x29, 0x49, 0x1f, 0xf7, 0xb7, 0x71, + 0x3e, 0x05, 0x6c, 0x21, 0x49, 0x2a, 0x87, 0x7e, 0x47, 0x1a, 0xd1, 0x27, + 0x98, 0xa9, 0x66, 0xcb, +}; +static const struct drbg_kat_pr_false kat2202_t = { + 11, kat2202_entropyin, kat2202_nonce, kat2202_persstr, + kat2202_entropyinreseed, kat2202_addinreseed, kat2202_addin0, + kat2202_addin1, kat2202_retbits +}; +static const struct drbg_kat kat2202 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2202_t +}; + +static const unsigned char kat2203_entropyin[] = { + 0x4e, 0x16, 0x9d, 0xb1, 0xf4, 0x55, 0x51, 0x24, 0xf9, 0x53, 0xb7, 0x27, + 0x16, 0xdf, 0x0a, 0xe9, 0x76, 0xf9, 0x54, 0xf3, 0x19, 0x82, 0xe0, 0xa7, + 0x94, 0x84, 0x8f, 0x9b, 0x12, 0xec, 0x1a, 0x44, +}; +static const unsigned char kat2203_nonce[] = {0}; +static const unsigned char kat2203_persstr[] = { + 0xc1, 0xa3, 0x4b, 0x76, 0x58, 0x1f, 0x1e, 0x7f, 0xbd, 0x52, 0x06, 0xbc, + 0x88, 0xea, 0x4d, 0x05, 0xa7, 0x61, 0x48, 0xb6, 0x17, 0x0c, 0x91, 0x23, + 0x1f, 0x35, 0x6c, 0x04, 0xf6, 0x90, 0x3a, 0xb5, +}; +static const unsigned char kat2203_entropyinreseed[] = { + 0xcb, 0xcd, 0xf4, 0x96, 0x09, 0x3b, 0x84, 0x69, 0x94, 0x17, 0x06, 0x0b, + 0x1c, 0xe7, 0x6f, 0x56, 0xb2, 0x87, 0x9b, 0x14, 0x10, 0x2a, 0x58, 0x58, + 0xd0, 0x74, 0x35, 0x45, 0xca, 0x01, 0x96, 0x1f, +}; +static const unsigned char kat2203_addinreseed[] = {0}; +static const unsigned char kat2203_addin0[] = {0}; +static const unsigned char kat2203_addin1[] = {0}; +static const unsigned char kat2203_retbits[] = { + 0x3d, 0x1f, 0xa7, 0xd8, 0x04, 0x71, 0x44, 0xde, 0xaf, 0xe5, 0xcf, 0x9a, + 0xb3, 0x4e, 0x41, 0xa8, 0x1d, 0xea, 0x90, 0x02, 0x03, 0x35, 0xc3, 0x68, + 0x02, 0x30, 0xa3, 0xad, 0xeb, 0xb8, 0xef, 0xb2, 0x39, 0x11, 0xeb, 0x4f, + 0xa4, 0xfa, 0x3b, 0x50, 0x5b, 0xe2, 0x1c, 0xe8, 0x4c, 0xe0, 0x35, 0xe8, + 0xc4, 0x4c, 0x11, 0xcb, 0xdc, 0x1f, 0x0e, 0x7b, 0x4c, 0x7e, 0x91, 0x30, + 0xe2, 0xfc, 0x57, 0x5d, +}; +static const struct drbg_kat_pr_false kat2203_t = { + 12, kat2203_entropyin, kat2203_nonce, kat2203_persstr, + kat2203_entropyinreseed, kat2203_addinreseed, kat2203_addin0, + kat2203_addin1, kat2203_retbits +}; +static const struct drbg_kat kat2203 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2203_t +}; + +static const unsigned char kat2204_entropyin[] = { + 0x15, 0x57, 0xa1, 0xae, 0xd5, 0x45, 0xe9, 0x7c, 0x1a, 0x84, 0xc4, 0x93, + 0x64, 0x75, 0x35, 0xf6, 0x5d, 0xe5, 0xbe, 0x29, 0x47, 0x8a, 0x4c, 0x9f, + 0xf6, 0x04, 0x79, 0x56, 0x00, 0x3b, 0x19, 0x5f, +}; +static const unsigned char kat2204_nonce[] = {0}; +static const unsigned char kat2204_persstr[] = { + 0x6b, 0xef, 0x51, 0xa1, 0x4d, 0xa3, 0xdc, 0xe3, 0x0f, 0x20, 0xbc, 0x41, + 0x8a, 0x1d, 0xb9, 0x90, 0x10, 0x72, 0x1e, 0xd5, 0x65, 0xa2, 0xb8, 0x5d, + 0x15, 0xd6, 0x90, 0xee, 0x80, 0xd5, 0x38, 0xd5, +}; +static const unsigned char kat2204_entropyinreseed[] = { + 0x10, 0xe9, 0xff, 0x17, 0x59, 0x20, 0x91, 0xc9, 0xbf, 0x21, 0x36, 0xdd, + 0xf8, 0xf8, 0x02, 0x3f, 0x9a, 0xa6, 0xce, 0x25, 0x6e, 0x6e, 0x93, 0x64, + 0x0d, 0xf5, 0xf4, 0xd7, 0xa7, 0xc3, 0x64, 0x6c, +}; +static const unsigned char kat2204_addinreseed[] = {0}; +static const unsigned char kat2204_addin0[] = {0}; +static const unsigned char kat2204_addin1[] = {0}; +static const unsigned char kat2204_retbits[] = { + 0x33, 0x91, 0x97, 0xff, 0x48, 0x49, 0x9c, 0x09, 0x3a, 0x1b, 0x73, 0x18, + 0xe1, 0x09, 0x16, 0xfa, 0x2c, 0xb4, 0x4c, 0xf8, 0x2d, 0x44, 0x1f, 0x9b, + 0xa3, 0x34, 0xdc, 0x73, 0xd6, 0x25, 0xb6, 0x14, 0x03, 0x3b, 0x3f, 0xd8, + 0x98, 0xc1, 0x79, 0xa0, 0x5e, 0xd8, 0x1b, 0xe8, 0x8d, 0x7f, 0xb5, 0xf3, + 0xa4, 0x42, 0x97, 0x39, 0x84, 0x8a, 0xbe, 0xd5, 0x90, 0x40, 0x4f, 0x42, + 0x65, 0x4b, 0x26, 0x87, +}; +static const struct drbg_kat_pr_false kat2204_t = { + 13, kat2204_entropyin, kat2204_nonce, kat2204_persstr, + kat2204_entropyinreseed, kat2204_addinreseed, kat2204_addin0, + kat2204_addin1, kat2204_retbits +}; +static const struct drbg_kat kat2204 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2204_t +}; + +static const unsigned char kat2205_entropyin[] = { + 0xf3, 0xca, 0x53, 0x47, 0x5e, 0xab, 0x61, 0x72, 0x58, 0xe3, 0x97, 0x15, + 0x1a, 0xb3, 0xc1, 0x0a, 0x63, 0x56, 0xd1, 0x8e, 0xfa, 0x22, 0x5a, 0x43, + 0x42, 0xda, 0x13, 0xfa, 0x62, 0xaf, 0xf9, 0x9c, +}; +static const unsigned char kat2205_nonce[] = {0}; +static const unsigned char kat2205_persstr[] = { + 0x48, 0x88, 0x2b, 0x0a, 0x26, 0x35, 0x82, 0xf0, 0xc6, 0xbb, 0x82, 0x88, + 0xba, 0x89, 0x4d, 0x71, 0x41, 0xe6, 0x65, 0xaa, 0x0c, 0x08, 0x4c, 0x7d, + 0x99, 0xea, 0xa0, 0xc1, 0xf0, 0x7e, 0x23, 0xc0, +}; +static const unsigned char kat2205_entropyinreseed[] = { + 0x34, 0xcc, 0x10, 0xa3, 0xd7, 0x13, 0x98, 0xef, 0xec, 0x3c, 0x58, 0x54, + 0xef, 0x82, 0xa7, 0x7a, 0x0b, 0x6b, 0xfc, 0xaf, 0x84, 0x1a, 0xd9, 0xa1, + 0xd5, 0xc7, 0xbf, 0x05, 0xae, 0xed, 0x90, 0x82, +}; +static const unsigned char kat2205_addinreseed[] = {0}; +static const unsigned char kat2205_addin0[] = {0}; +static const unsigned char kat2205_addin1[] = {0}; +static const unsigned char kat2205_retbits[] = { + 0xca, 0xc2, 0x6b, 0x07, 0x20, 0x4e, 0xea, 0x9a, 0x41, 0xe4, 0x28, 0x93, + 0x02, 0xd0, 0xda, 0x8f, 0x36, 0xea, 0x20, 0x0d, 0xac, 0xd2, 0x43, 0x5f, + 0x1b, 0xb1, 0xc1, 0x23, 0x5c, 0xb3, 0x62, 0x49, 0x7e, 0xeb, 0x87, 0xae, + 0xa2, 0x88, 0x9a, 0xa1, 0x09, 0x3d, 0x13, 0xd2, 0xce, 0xe2, 0x5e, 0xb1, + 0x1e, 0x28, 0x22, 0x9c, 0x39, 0xac, 0xdf, 0x89, 0x41, 0x22, 0x42, 0x5b, + 0x59, 0x48, 0xca, 0xe2, +}; +static const struct drbg_kat_pr_false kat2205_t = { + 14, kat2205_entropyin, kat2205_nonce, kat2205_persstr, + kat2205_entropyinreseed, kat2205_addinreseed, kat2205_addin0, + kat2205_addin1, kat2205_retbits +}; +static const struct drbg_kat kat2205 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2205_t +}; + +static const unsigned char kat2206_entropyin[] = { + 0x28, 0x9e, 0x5c, 0x82, 0x83, 0xcb, 0xd7, 0xdb, 0xe7, 0x07, 0x25, 0x5c, + 0xb3, 0xcf, 0x29, 0x07, 0xd8, 0xa5, 0xce, 0x5b, 0x34, 0x73, 0x14, 0x96, + 0x6f, 0x9b, 0x2b, 0xeb, 0xb1, 0xa1, 0xe2, 0x00, +}; +static const unsigned char kat2206_nonce[] = {0}; +static const unsigned char kat2206_persstr[] = { + 0x7f, 0x7b, 0x59, 0xf2, 0x35, 0x10, 0xb9, 0x76, 0xfe, 0x15, 0x5d, 0x04, + 0x75, 0x25, 0xc9, 0x4e, 0x2d, 0xac, 0xb3, 0x0d, 0x77, 0xac, 0x8b, 0x09, + 0x28, 0x15, 0x44, 0xdd, 0x81, 0x5d, 0x52, 0x93, +}; +static const unsigned char kat2206_entropyinreseed[] = { + 0x98, 0xc5, 0x22, 0x02, 0x8f, 0x36, 0xfc, 0x6b, 0x85, 0xa8, 0xf3, 0xc0, + 0x03, 0xef, 0xd4, 0xb1, 0x30, 0xdd, 0x90, 0x18, 0x0e, 0xc8, 0x1c, 0xf7, + 0xc6, 0x7d, 0x4c, 0x53, 0xd1, 0x0f, 0x00, 0x22, +}; +static const unsigned char kat2206_addinreseed[] = { + 0xf7, 0xa0, 0x37, 0x83, 0x28, 0xd9, 0x39, 0xf0, 0xf8, 0x52, 0x1e, 0x39, + 0x40, 0x9d, 0x71, 0x75, 0xd8, 0x73, 0x19, 0xc7, 0x59, 0x7a, 0x90, 0x50, + 0x41, 0x4f, 0x7a, 0xdc, 0x39, 0x2a, 0x32, 0x8d, +}; +static const unsigned char kat2206_addin0[] = { + 0x19, 0xc2, 0x86, 0xf5, 0xb3, 0x61, 0x94, 0xd1, 0xcc, 0x62, 0xc0, 0x18, + 0x81, 0x40, 0xbc, 0x9d, 0x61, 0xd2, 0xa9, 0xc5, 0xd8, 0x8b, 0xb5, 0xae, + 0xbc, 0x22, 0x4b, 0xfb, 0x04, 0xdf, 0xca, 0x83, +}; +static const unsigned char kat2206_addin1[] = { + 0x82, 0x06, 0x50, 0xc3, 0x20, 0x1d, 0x34, 0x7f, 0x5b, 0x20, 0xd3, 0xd2, + 0x5d, 0x1c, 0x8c, 0x7b, 0xef, 0x4d, 0x9f, 0x66, 0xa5, 0xa0, 0x4c, 0x7d, + 0xd9, 0xd6, 0x69, 0xe9, 0x51, 0x82, 0xa0, 0xc4, +}; +static const unsigned char kat2206_retbits[] = { + 0x79, 0xa7, 0x9d, 0x44, 0xed, 0xad, 0xa5, 0x8e, 0x3f, 0xc1, 0x2a, 0x4e, + 0x36, 0xae, 0x90, 0x0e, 0xea, 0xce, 0x29, 0x02, 0x65, 0xf0, 0x12, 0x62, + 0xf4, 0x0f, 0x29, 0x58, 0xa7, 0x0d, 0xcb, 0xd4, 0xd4, 0x18, 0x5f, 0x70, + 0x8c, 0x08, 0x8e, 0xde, 0x7f, 0xf8, 0xc8, 0x37, 0x5f, 0x44, 0xf4, 0x01, + 0x2f, 0x25, 0x12, 0xd3, 0x83, 0x28, 0xa5, 0xdf, 0x17, 0x1a, 0x17, 0x02, + 0x9d, 0x90, 0xf1, 0x85, +}; +static const struct drbg_kat_pr_false kat2206_t = { + 0, kat2206_entropyin, kat2206_nonce, kat2206_persstr, + kat2206_entropyinreseed, kat2206_addinreseed, kat2206_addin0, + kat2206_addin1, kat2206_retbits +}; +static const struct drbg_kat kat2206 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2206_t +}; + +static const unsigned char kat2207_entropyin[] = { + 0xa8, 0xcc, 0xbb, 0xf5, 0xa8, 0xba, 0x78, 0xa9, 0x3f, 0xc7, 0xf3, 0x01, + 0x33, 0x68, 0x9e, 0x2c, 0xee, 0x40, 0x3c, 0x42, 0x2f, 0x11, 0x71, 0xc0, + 0xb6, 0x5c, 0x38, 0xf0, 0x90, 0x41, 0x64, 0x22, +}; +static const unsigned char kat2207_nonce[] = {0}; +static const unsigned char kat2207_persstr[] = { + 0x5c, 0x65, 0x61, 0x1d, 0xaf, 0xa5, 0xfc, 0x06, 0xad, 0xb3, 0x6c, 0x70, + 0x9a, 0x85, 0xa9, 0x37, 0x6c, 0xe5, 0xb2, 0x6b, 0x24, 0x3b, 0x89, 0x22, + 0xe2, 0x54, 0x72, 0xde, 0xee, 0x01, 0x91, 0xf3, +}; +static const unsigned char kat2207_entropyinreseed[] = { + 0xb1, 0x7f, 0xf2, 0x27, 0xac, 0xfa, 0x21, 0xbc, 0x2d, 0x37, 0xe5, 0xba, + 0x23, 0xa8, 0x53, 0x9b, 0xc6, 0xe4, 0xe6, 0xff, 0x0a, 0x48, 0x37, 0x22, + 0x2a, 0x7c, 0xa9, 0x8b, 0xde, 0x86, 0xf8, 0x64, +}; +static const unsigned char kat2207_addinreseed[] = { + 0x2b, 0x8f, 0x75, 0xb7, 0x60, 0x68, 0x8b, 0x41, 0xaa, 0xe7, 0x38, 0x47, + 0xfb, 0xa5, 0x6e, 0x43, 0x27, 0x4b, 0x32, 0x1f, 0xe7, 0xd8, 0xda, 0x6f, + 0x73, 0x45, 0x95, 0xcc, 0xf2, 0x1d, 0xa3, 0x42, +}; +static const unsigned char kat2207_addin0[] = { + 0x66, 0xf8, 0xa4, 0xd5, 0x82, 0x48, 0xb5, 0x0e, 0x9a, 0x58, 0x24, 0x0f, + 0x72, 0x4e, 0xc3, 0xe1, 0x06, 0x3c, 0x47, 0x95, 0x1f, 0x7d, 0x2b, 0x54, + 0x46, 0x6d, 0xcc, 0xa7, 0x2f, 0xc7, 0xbb, 0xe1, +}; +static const unsigned char kat2207_addin1[] = { + 0x0a, 0x29, 0xda, 0xcb, 0xbe, 0xbc, 0x8c, 0x45, 0x6d, 0x5e, 0x94, 0x4a, + 0x4d, 0x81, 0xab, 0x96, 0x4d, 0xe1, 0xce, 0xb3, 0xbb, 0xa8, 0x7f, 0x91, + 0xbb, 0x78, 0x87, 0xfc, 0x71, 0x45, 0x6e, 0x8e, +}; +static const unsigned char kat2207_retbits[] = { + 0x49, 0xda, 0x27, 0x16, 0xe4, 0xdc, 0xfb, 0x22, 0x5b, 0x9b, 0x18, 0x3f, + 0x98, 0xf9, 0x22, 0xd5, 0x68, 0xc5, 0x59, 0x4a, 0x76, 0xf1, 0xbb, 0x4d, + 0xaa, 0xe6, 0xc1, 0x01, 0xb4, 0x94, 0x85, 0x4a, 0x0a, 0x11, 0xd2, 0x44, + 0x7c, 0x20, 0xb5, 0x57, 0x8a, 0x92, 0xd8, 0x47, 0x65, 0xfd, 0x76, 0xd0, + 0xdf, 0x16, 0xba, 0x38, 0xdd, 0xeb, 0x11, 0x0d, 0xb7, 0xcd, 0x99, 0xd7, + 0xaa, 0x71, 0xe8, 0x74, +}; +static const struct drbg_kat_pr_false kat2207_t = { + 1, kat2207_entropyin, kat2207_nonce, kat2207_persstr, + kat2207_entropyinreseed, kat2207_addinreseed, kat2207_addin0, + kat2207_addin1, kat2207_retbits +}; +static const struct drbg_kat kat2207 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2207_t +}; + +static const unsigned char kat2208_entropyin[] = { + 0x89, 0x7c, 0x09, 0x7d, 0x81, 0x5c, 0xb9, 0x8e, 0x90, 0xd0, 0x1d, 0x79, + 0x2e, 0xa4, 0xb3, 0x6a, 0xfa, 0x90, 0x37, 0x46, 0x95, 0x12, 0xf0, 0x3b, + 0x39, 0x27, 0xb8, 0x95, 0x2e, 0x90, 0x85, 0x00, +}; +static const unsigned char kat2208_nonce[] = {0}; +static const unsigned char kat2208_persstr[] = { + 0x76, 0x1a, 0x0e, 0xa7, 0xd6, 0x19, 0xf3, 0xeb, 0xc0, 0x72, 0xbb, 0x79, + 0x9d, 0x7e, 0xfb, 0xaa, 0xfb, 0x54, 0xe8, 0x68, 0x9d, 0x95, 0xf7, 0xee, + 0x57, 0x34, 0x56, 0x07, 0xae, 0x61, 0xa9, 0xc6, +}; +static const unsigned char kat2208_entropyinreseed[] = { + 0x86, 0x8d, 0x7f, 0xfb, 0xe5, 0x1b, 0xd1, 0x2e, 0xb8, 0x8b, 0x0b, 0x5d, + 0xfb, 0x25, 0xdf, 0x5d, 0x5d, 0xcb, 0x94, 0x76, 0x4f, 0x05, 0x4a, 0x3a, + 0xe0, 0x76, 0x80, 0x88, 0x8b, 0xbf, 0x5e, 0x26, +}; +static const unsigned char kat2208_addinreseed[] = { + 0x59, 0xf8, 0xbb, 0x8b, 0x05, 0xab, 0xcb, 0xc2, 0x5a, 0x40, 0x40, 0x95, + 0x05, 0x5b, 0xac, 0x55, 0xd0, 0xdb, 0xd3, 0xca, 0x41, 0xec, 0xce, 0x17, + 0x74, 0x02, 0xdf, 0xd0, 0x74, 0x04, 0xc3, 0x8e, +}; +static const unsigned char kat2208_addin0[] = { + 0xa7, 0x98, 0x02, 0xf9, 0x85, 0xa1, 0xd1, 0xcd, 0x0d, 0x4e, 0xd8, 0xc6, + 0x39, 0x4a, 0xe5, 0x3c, 0xab, 0x35, 0x42, 0x3e, 0xbe, 0xe2, 0xbc, 0x53, + 0x6a, 0x38, 0x66, 0xed, 0x49, 0x65, 0x68, 0x7a, +}; +static const unsigned char kat2208_addin1[] = { + 0x21, 0xb6, 0xcc, 0xaf, 0x45, 0xae, 0x2e, 0x8d, 0x51, 0xd9, 0x63, 0x68, + 0x18, 0xa8, 0x46, 0x80, 0xb3, 0x8f, 0x9c, 0x2d, 0xeb, 0x7a, 0x82, 0x04, + 0x0f, 0xd8, 0xf8, 0xb2, 0x90, 0x31, 0x6e, 0x4f, +}; +static const unsigned char kat2208_retbits[] = { + 0x99, 0x93, 0x84, 0x11, 0xa8, 0x54, 0xed, 0xfa, 0xe3, 0x68, 0x31, 0xf8, + 0x87, 0x0d, 0xe3, 0x9a, 0x17, 0x0f, 0x23, 0x60, 0x72, 0xc0, 0x8f, 0xec, + 0x93, 0x6b, 0x7f, 0x7d, 0x7b, 0xd3, 0xab, 0xc3, 0x99, 0x56, 0x16, 0xde, + 0x96, 0x59, 0x58, 0xc0, 0x0c, 0x36, 0x03, 0x0d, 0x57, 0xf6, 0x66, 0x56, + 0x32, 0x47, 0x3b, 0x07, 0xae, 0x78, 0xad, 0xd2, 0x21, 0x0f, 0x95, 0x61, + 0x19, 0x2e, 0x69, 0x94, +}; +static const struct drbg_kat_pr_false kat2208_t = { + 2, kat2208_entropyin, kat2208_nonce, kat2208_persstr, + kat2208_entropyinreseed, kat2208_addinreseed, kat2208_addin0, + kat2208_addin1, kat2208_retbits +}; +static const struct drbg_kat kat2208 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2208_t +}; + +static const unsigned char kat2209_entropyin[] = { + 0x46, 0xa1, 0xcb, 0xb4, 0xcf, 0xec, 0x94, 0x99, 0x2b, 0x0c, 0x06, 0xe6, + 0xcd, 0x58, 0xe1, 0x04, 0x3f, 0xef, 0x1c, 0x34, 0xe8, 0x84, 0x04, 0x28, + 0x65, 0x84, 0x5d, 0x83, 0xdf, 0xd5, 0x2c, 0xb3, +}; +static const unsigned char kat2209_nonce[] = {0}; +static const unsigned char kat2209_persstr[] = { + 0x5c, 0x86, 0x2d, 0xc6, 0x89, 0x4a, 0x36, 0x89, 0x75, 0x5b, 0x23, 0x25, + 0xa9, 0x2e, 0xf7, 0x9a, 0xce, 0x4a, 0x2c, 0x25, 0xd1, 0xd8, 0x71, 0x6b, + 0x1a, 0xce, 0xeb, 0xcb, 0x71, 0xb9, 0x72, 0xf9, +}; +static const unsigned char kat2209_entropyinreseed[] = { + 0x02, 0xd4, 0xbc, 0xf9, 0x60, 0x95, 0xc0, 0x20, 0x69, 0xd6, 0x93, 0x2d, + 0x62, 0x70, 0x39, 0x64, 0xc2, 0xbd, 0x09, 0xfe, 0xdf, 0xd9, 0x87, 0x88, + 0xda, 0x20, 0xbe, 0x5d, 0x89, 0x86, 0xda, 0x40, +}; +static const unsigned char kat2209_addinreseed[] = { + 0x3d, 0xc2, 0xf2, 0xe1, 0xea, 0x19, 0xd6, 0x70, 0xff, 0x66, 0x9e, 0xe7, + 0x3a, 0x45, 0xcb, 0xd0, 0x69, 0x01, 0x22, 0x82, 0x63, 0x1a, 0xf6, 0xf9, + 0x16, 0xb9, 0xd1, 0x19, 0xdf, 0xd3, 0xb3, 0xf4, +}; +static const unsigned char kat2209_addin0[] = { + 0x08, 0x40, 0xaf, 0x82, 0x4f, 0x94, 0x13, 0x9d, 0xad, 0x12, 0xb5, 0x01, + 0xa2, 0x7e, 0x24, 0xe2, 0x7d, 0x91, 0xed, 0xe1, 0xcd, 0xbb, 0x15, 0x47, + 0x0d, 0x98, 0x7e, 0x98, 0xb0, 0x24, 0x3e, 0x5d, +}; +static const unsigned char kat2209_addin1[] = { + 0x1d, 0x4e, 0x1e, 0x4b, 0xb4, 0x9e, 0xcf, 0x8c, 0x58, 0x2b, 0xba, 0x65, + 0x82, 0xa5, 0x98, 0x9d, 0x20, 0x47, 0x29, 0xc3, 0xa8, 0x01, 0x18, 0x20, + 0x66, 0xa6, 0x71, 0x55, 0x89, 0x6c, 0x48, 0xc0, +}; +static const unsigned char kat2209_retbits[] = { + 0x53, 0x22, 0xed, 0x1f, 0x50, 0xaf, 0x42, 0xc1, 0x3b, 0x2f, 0x36, 0xa4, + 0xfa, 0x04, 0x1d, 0xc1, 0x84, 0x66, 0xba, 0xea, 0x55, 0x80, 0x1d, 0x41, + 0xda, 0xc5, 0x49, 0x46, 0x55, 0x6f, 0xd0, 0xe0, 0x28, 0x47, 0xa2, 0x3d, + 0x4e, 0x89, 0x39, 0xce, 0x1d, 0x3c, 0x87, 0xbd, 0x9e, 0x61, 0xc4, 0xf6, + 0x7a, 0x66, 0x04, 0x97, 0x2e, 0x27, 0x3b, 0x30, 0xd0, 0xe3, 0x65, 0x5e, + 0xbc, 0xf7, 0x6d, 0xe0, +}; +static const struct drbg_kat_pr_false kat2209_t = { + 3, kat2209_entropyin, kat2209_nonce, kat2209_persstr, + kat2209_entropyinreseed, kat2209_addinreseed, kat2209_addin0, + kat2209_addin1, kat2209_retbits +}; +static const struct drbg_kat kat2209 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2209_t +}; + +static const unsigned char kat2210_entropyin[] = { + 0x96, 0x08, 0x08, 0x1f, 0xa3, 0xdf, 0xa9, 0xd5, 0x0f, 0x0e, 0x77, 0xae, + 0xf3, 0x07, 0x59, 0xcc, 0x5d, 0xc1, 0xa6, 0x42, 0x36, 0xa8, 0xf0, 0x9c, + 0x64, 0xb6, 0x89, 0xe6, 0x9d, 0xf2, 0xc3, 0x95, +}; +static const unsigned char kat2210_nonce[] = {0}; +static const unsigned char kat2210_persstr[] = { + 0xa5, 0x5e, 0xb6, 0xa8, 0x01, 0xc6, 0xe4, 0xc9, 0xf1, 0x87, 0xad, 0xc8, + 0x65, 0x91, 0x60, 0x18, 0x1f, 0x21, 0x4b, 0xd2, 0x6a, 0x93, 0x2e, 0x16, + 0xc3, 0xb4, 0xc1, 0x42, 0xa2, 0x67, 0xdb, 0xae, +}; +static const unsigned char kat2210_entropyinreseed[] = { + 0x4a, 0x64, 0xd7, 0x1c, 0xe7, 0x39, 0xd1, 0x4b, 0x49, 0x03, 0x76, 0x96, + 0x4f, 0x50, 0xc5, 0x06, 0xcb, 0xa0, 0xbe, 0xdf, 0x51, 0xbd, 0x79, 0xc2, + 0x86, 0x19, 0x59, 0xc6, 0x72, 0x24, 0x7a, 0x1f, +}; +static const unsigned char kat2210_addinreseed[] = { + 0xa6, 0xae, 0x54, 0xc4, 0x2d, 0x7e, 0xe1, 0xdd, 0x6e, 0x91, 0x96, 0x51, + 0xed, 0x6d, 0x6d, 0x8e, 0x03, 0x40, 0x38, 0x27, 0xc6, 0x13, 0x75, 0x3e, + 0xcc, 0x51, 0x77, 0x6c, 0xdc, 0xd2, 0x4f, 0x9f, +}; +static const unsigned char kat2210_addin0[] = { + 0xf4, 0x01, 0x1b, 0x9b, 0xed, 0x89, 0x75, 0x7e, 0xac, 0xe1, 0x51, 0x4c, + 0x03, 0x18, 0x4b, 0x76, 0xc0, 0xaf, 0x78, 0x97, 0xb1, 0x70, 0x73, 0x28, + 0x0a, 0x40, 0xe7, 0xaa, 0x8f, 0x39, 0xeb, 0xc1, +}; +static const unsigned char kat2210_addin1[] = { + 0x59, 0x5f, 0xa0, 0xd4, 0x81, 0x73, 0xec, 0x95, 0x15, 0x0c, 0x3c, 0x62, + 0x2b, 0xae, 0xb1, 0x53, 0xfb, 0xca, 0x88, 0x0f, 0xc6, 0x83, 0xd8, 0xe5, + 0xc1, 0x4d, 0x6a, 0xb2, 0x53, 0x86, 0x94, 0x32, +}; +static const unsigned char kat2210_retbits[] = { + 0x22, 0xf5, 0xfc, 0x79, 0x6c, 0x87, 0x95, 0xb9, 0xc8, 0x29, 0x6f, 0x0f, + 0x31, 0x36, 0x92, 0x03, 0xd5, 0x16, 0x7b, 0x43, 0x56, 0x0d, 0x50, 0x3f, + 0x20, 0xcb, 0xa6, 0x2c, 0xf5, 0xbb, 0x1d, 0x4a, 0xdd, 0x49, 0x1a, 0xcf, + 0x44, 0xcc, 0x11, 0xff, 0x40, 0x90, 0xaf, 0x7d, 0xf1, 0x0e, 0xa7, 0xb9, + 0xb6, 0x09, 0xe1, 0xe8, 0xa7, 0x90, 0x46, 0x05, 0x62, 0x87, 0x40, 0xa2, + 0xa6, 0xa1, 0xd6, 0xf4, +}; +static const struct drbg_kat_pr_false kat2210_t = { + 4, kat2210_entropyin, kat2210_nonce, kat2210_persstr, + kat2210_entropyinreseed, kat2210_addinreseed, kat2210_addin0, + kat2210_addin1, kat2210_retbits +}; +static const struct drbg_kat kat2210 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2210_t +}; + +static const unsigned char kat2211_entropyin[] = { + 0x13, 0x49, 0xc7, 0xf3, 0xd5, 0x2b, 0x8f, 0x92, 0xa0, 0xfe, 0xf2, 0xd8, + 0xc6, 0xa6, 0x77, 0xc3, 0xaf, 0x42, 0xcd, 0xf0, 0x76, 0x02, 0x6e, 0x0f, + 0x27, 0xec, 0x44, 0x97, 0xed, 0x86, 0x6f, 0x5f, +}; +static const unsigned char kat2211_nonce[] = {0}; +static const unsigned char kat2211_persstr[] = { + 0x47, 0x1e, 0x89, 0x39, 0x76, 0x37, 0x3d, 0x2b, 0x6c, 0x34, 0x5a, 0xfd, + 0xa8, 0xcf, 0xd2, 0xfb, 0x90, 0x8b, 0xdf, 0x70, 0x46, 0x2c, 0x31, 0x45, + 0xbf, 0x88, 0x78, 0x8b, 0x31, 0xc1, 0x23, 0xbe, +}; +static const unsigned char kat2211_entropyinreseed[] = { + 0x50, 0x3c, 0xc8, 0xc9, 0xb5, 0xec, 0xe0, 0xa8, 0x8c, 0xc1, 0xe0, 0x62, + 0x25, 0xed, 0xfd, 0x46, 0x9d, 0x6f, 0xfd, 0xd5, 0x93, 0xdb, 0x30, 0x13, + 0xdb, 0x38, 0x61, 0x57, 0x6c, 0x5f, 0xf7, 0x5b, +}; +static const unsigned char kat2211_addinreseed[] = { + 0x2c, 0x94, 0x8a, 0x70, 0x38, 0x7b, 0x4e, 0xb5, 0x64, 0x2a, 0xd9, 0x2f, + 0x65, 0x7a, 0x7e, 0x5a, 0x65, 0xf2, 0xc4, 0x33, 0x72, 0xf3, 0x30, 0xef, + 0x27, 0x34, 0x4f, 0x8a, 0x65, 0xc0, 0x53, 0x0f, +}; +static const unsigned char kat2211_addin0[] = { + 0x1b, 0xc8, 0x13, 0x3e, 0xe0, 0x4b, 0x9a, 0x4c, 0xae, 0x32, 0x30, 0x0c, + 0xbb, 0x04, 0x83, 0x2f, 0xb4, 0xb7, 0x8f, 0x6c, 0x87, 0xd6, 0x51, 0xaf, + 0xfc, 0xb1, 0xb5, 0x22, 0x58, 0x5b, 0xc6, 0xcd, +}; +static const unsigned char kat2211_addin1[] = { + 0xf9, 0xd1, 0x1e, 0x59, 0xa9, 0x7c, 0x90, 0xf0, 0xba, 0xa3, 0x00, 0xa2, + 0x73, 0x0b, 0x3e, 0x18, 0xdf, 0x83, 0x04, 0x33, 0x03, 0xbc, 0xbb, 0x31, + 0x68, 0x6e, 0xe3, 0x3c, 0x24, 0xda, 0x08, 0xa9, +}; +static const unsigned char kat2211_retbits[] = { + 0x63, 0xc3, 0x69, 0x2d, 0x71, 0xee, 0x48, 0x87, 0x9d, 0x0d, 0x8d, 0x1c, + 0x9a, 0x9d, 0x6c, 0x78, 0x19, 0xe3, 0xb6, 0x1f, 0xad, 0xb9, 0x7b, 0xb8, + 0xdd, 0x5c, 0x6b, 0xdd, 0x87, 0x88, 0x81, 0x9d, 0x59, 0xb6, 0x17, 0xf0, + 0x58, 0xea, 0x4c, 0x21, 0xde, 0xc6, 0xe1, 0xb7, 0x03, 0xa6, 0x31, 0x7a, + 0x48, 0x7c, 0x65, 0xc2, 0xc7, 0xf1, 0x9e, 0xa9, 0x9e, 0x9a, 0x50, 0xd5, + 0xcc, 0xdc, 0x9e, 0x9e, +}; +static const struct drbg_kat_pr_false kat2211_t = { + 5, kat2211_entropyin, kat2211_nonce, kat2211_persstr, + kat2211_entropyinreseed, kat2211_addinreseed, kat2211_addin0, + kat2211_addin1, kat2211_retbits +}; +static const struct drbg_kat kat2211 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2211_t +}; + +static const unsigned char kat2212_entropyin[] = { + 0x26, 0x0f, 0x99, 0xf0, 0xa9, 0x85, 0x05, 0xfd, 0xa8, 0x9e, 0xad, 0xd2, + 0x02, 0x4f, 0xaa, 0x84, 0x63, 0xc3, 0x2a, 0x62, 0x45, 0x30, 0x06, 0xfd, + 0x19, 0xe8, 0x8b, 0x34, 0xf5, 0x38, 0x9a, 0x77, +}; +static const unsigned char kat2212_nonce[] = {0}; +static const unsigned char kat2212_persstr[] = { + 0x1b, 0xf7, 0xcf, 0x55, 0x38, 0x3d, 0xba, 0xc2, 0x6f, 0xc1, 0x83, 0xf5, + 0x06, 0x52, 0xcf, 0x03, 0xa8, 0xde, 0x20, 0x42, 0x32, 0xce, 0xe0, 0x24, + 0x2a, 0x1a, 0xbf, 0xd4, 0x3e, 0x7a, 0x38, 0x1f, +}; +static const unsigned char kat2212_entropyinreseed[] = { + 0xab, 0xe2, 0xbd, 0x8e, 0x54, 0x49, 0x2c, 0x0c, 0xb3, 0x17, 0xf8, 0x36, + 0xfa, 0xa0, 0x85, 0x0e, 0x70, 0x8d, 0x78, 0x89, 0x57, 0xf1, 0xe2, 0x3a, + 0x33, 0xc1, 0x13, 0x2a, 0x48, 0xc5, 0xd8, 0x4e, +}; +static const unsigned char kat2212_addinreseed[] = { + 0xc0, 0xfb, 0x4b, 0x84, 0x44, 0x5f, 0x37, 0xe2, 0x60, 0xbc, 0xba, 0xe4, + 0x56, 0x57, 0x6b, 0x4f, 0x7c, 0x39, 0xf0, 0xdc, 0xf3, 0x12, 0x2e, 0x18, + 0xd6, 0x0c, 0x31, 0x4e, 0xd4, 0xd7, 0xb3, 0x1e, +}; +static const unsigned char kat2212_addin0[] = { + 0x9f, 0xdd, 0x11, 0x19, 0x65, 0x7c, 0xb3, 0x15, 0x98, 0xfc, 0xa9, 0xee, + 0xe9, 0x60, 0x0c, 0x1e, 0xae, 0x26, 0xda, 0xb6, 0x8d, 0x8f, 0xe7, 0xb8, + 0xa3, 0xf2, 0x6f, 0x4a, 0xe2, 0x92, 0xb3, 0xc0, +}; +static const unsigned char kat2212_addin1[] = { + 0x9f, 0xd9, 0xd7, 0x42, 0xa6, 0x75, 0xf2, 0x72, 0x5c, 0x49, 0x67, 0xc7, + 0x6f, 0x1c, 0x79, 0x7c, 0x07, 0xae, 0xaa, 0xcf, 0x20, 0x98, 0x5a, 0xb9, + 0xd8, 0x8e, 0x6e, 0x08, 0x4d, 0xde, 0x20, 0x56, +}; +static const unsigned char kat2212_retbits[] = { + 0x22, 0x26, 0x7c, 0x1d, 0xfb, 0x3a, 0xe0, 0xf4, 0x6b, 0xfc, 0x93, 0x0e, + 0x9d, 0x02, 0xe4, 0x05, 0x02, 0x8f, 0x0a, 0xb8, 0x38, 0x07, 0x80, 0xdc, + 0xa0, 0x03, 0x40, 0xc9, 0xe7, 0xe0, 0x30, 0xe0, 0x1c, 0xba, 0xd1, 0xad, + 0xaf, 0xf0, 0x79, 0x05, 0xe3, 0x43, 0x60, 0x70, 0xba, 0x65, 0x8d, 0x83, + 0x26, 0x35, 0x3e, 0xf4, 0x7d, 0xc0, 0x6c, 0x55, 0x08, 0x9c, 0x2d, 0xaa, + 0x5e, 0x39, 0x6e, 0x8c, +}; +static const struct drbg_kat_pr_false kat2212_t = { + 6, kat2212_entropyin, kat2212_nonce, kat2212_persstr, + kat2212_entropyinreseed, kat2212_addinreseed, kat2212_addin0, + kat2212_addin1, kat2212_retbits +}; +static const struct drbg_kat kat2212 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2212_t +}; + +static const unsigned char kat2213_entropyin[] = { + 0xa7, 0x4a, 0xa2, 0xa7, 0xce, 0x50, 0xa8, 0x71, 0xfb, 0x82, 0xa8, 0xb7, + 0x17, 0x9d, 0x25, 0x60, 0x6f, 0xb0, 0x0f, 0x4d, 0xcd, 0x6a, 0x1e, 0x8c, + 0x2d, 0x6d, 0xfe, 0xe1, 0x1b, 0x58, 0xdc, 0xa1, +}; +static const unsigned char kat2213_nonce[] = {0}; +static const unsigned char kat2213_persstr[] = { + 0x95, 0xcf, 0x5c, 0x25, 0x12, 0xc7, 0x98, 0xcc, 0x23, 0xaa, 0x5d, 0x3d, + 0xb1, 0xb8, 0x2b, 0x14, 0xd2, 0x0d, 0x32, 0xcb, 0x8b, 0x7a, 0xae, 0x6b, + 0xc2, 0x63, 0x0e, 0x9c, 0x7a, 0x92, 0x39, 0xb3, +}; +static const unsigned char kat2213_entropyinreseed[] = { + 0xe2, 0xde, 0x02, 0xb8, 0x48, 0x01, 0xbd, 0xc4, 0xf4, 0x94, 0x80, 0x05, + 0x5d, 0x54, 0xc4, 0xfd, 0x58, 0xd7, 0xf1, 0x24, 0x2b, 0xfb, 0xfa, 0x8f, + 0xa3, 0x5c, 0x99, 0x21, 0x1f, 0x27, 0x11, 0x3d, +}; +static const unsigned char kat2213_addinreseed[] = { + 0x43, 0x4d, 0x46, 0x71, 0x50, 0xde, 0xcd, 0x49, 0x53, 0x6a, 0xb9, 0x7f, + 0x1a, 0x7d, 0xf2, 0x6f, 0x9f, 0x35, 0x31, 0x12, 0xde, 0xc5, 0xa6, 0x3b, + 0xc0, 0xa9, 0xee, 0x78, 0x9d, 0x3a, 0xa0, 0xd6, +}; +static const unsigned char kat2213_addin0[] = { + 0x4b, 0x08, 0x79, 0xb0, 0x9f, 0x7b, 0xfd, 0x83, 0xd4, 0x9f, 0x68, 0x50, + 0x87, 0x68, 0x54, 0x1e, 0x6a, 0x5c, 0x9c, 0x7a, 0xe6, 0xd0, 0x21, 0xdd, + 0x74, 0x63, 0x95, 0x37, 0x0f, 0x1c, 0x50, 0xe2, +}; +static const unsigned char kat2213_addin1[] = { + 0x7b, 0xf0, 0xa7, 0x59, 0x7c, 0x68, 0x4d, 0xce, 0xd6, 0xff, 0x03, 0x2a, + 0x58, 0x40, 0x70, 0x14, 0x40, 0x38, 0xce, 0x4d, 0xc3, 0x37, 0x65, 0xa6, + 0x7b, 0x92, 0xfd, 0x5b, 0x56, 0x31, 0xdf, 0x04, +}; +static const unsigned char kat2213_retbits[] = { + 0xd8, 0x3e, 0xae, 0xaf, 0x16, 0xdf, 0x26, 0xfb, 0x1a, 0x58, 0xd4, 0x52, + 0x01, 0x47, 0xfc, 0x05, 0x04, 0xb2, 0x97, 0x41, 0x56, 0x7b, 0x75, 0xea, + 0xa5, 0x79, 0xdf, 0x31, 0x0b, 0xe3, 0xb1, 0xec, 0x5d, 0x95, 0x08, 0x13, + 0x07, 0x0f, 0x54, 0x34, 0x46, 0x2c, 0xea, 0x3a, 0x2b, 0x05, 0xaf, 0xc0, + 0x02, 0xa5, 0x11, 0x80, 0x1d, 0xd7, 0x3f, 0x82, 0x64, 0x64, 0x1d, 0xf1, + 0x16, 0x19, 0xbc, 0xc9, +}; +static const struct drbg_kat_pr_false kat2213_t = { + 7, kat2213_entropyin, kat2213_nonce, kat2213_persstr, + kat2213_entropyinreseed, kat2213_addinreseed, kat2213_addin0, + kat2213_addin1, kat2213_retbits +}; +static const struct drbg_kat kat2213 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2213_t +}; + +static const unsigned char kat2214_entropyin[] = { + 0x1b, 0x68, 0x10, 0x81, 0x60, 0x43, 0xca, 0x32, 0x6a, 0x44, 0x17, 0xb9, + 0x57, 0x68, 0x2b, 0x20, 0xce, 0xaf, 0x53, 0x2c, 0xfd, 0xd3, 0x29, 0xe6, + 0x19, 0xfa, 0xa2, 0x72, 0x6c, 0x03, 0x15, 0x56, +}; +static const unsigned char kat2214_nonce[] = {0}; +static const unsigned char kat2214_persstr[] = { + 0x56, 0xee, 0x0d, 0x8c, 0xb5, 0x4c, 0x5a, 0x8d, 0x97, 0xbe, 0x4e, 0xc5, + 0x11, 0x74, 0x18, 0x61, 0x1c, 0x18, 0x24, 0x13, 0x22, 0xfd, 0x12, 0xbb, + 0xb5, 0x0d, 0xbd, 0x5d, 0x60, 0x01, 0xa7, 0xdd, +}; +static const unsigned char kat2214_entropyinreseed[] = { + 0x1a, 0x88, 0xc8, 0x99, 0xee, 0x1c, 0x5c, 0x6f, 0x29, 0x64, 0xaa, 0x6b, + 0x36, 0xf6, 0x15, 0x98, 0x95, 0xd2, 0x86, 0x06, 0x96, 0xe3, 0xd6, 0xe3, + 0xe9, 0x2f, 0x72, 0x31, 0xbf, 0x6e, 0x47, 0x89, +}; +static const unsigned char kat2214_addinreseed[] = { + 0x66, 0xa0, 0x75, 0x60, 0xc5, 0x1d, 0x44, 0x09, 0x77, 0xa8, 0xdb, 0x1b, + 0x5f, 0xb1, 0xcf, 0x8d, 0x71, 0x53, 0x0f, 0xa8, 0x57, 0x9d, 0x43, 0x67, + 0x12, 0x3c, 0x82, 0xc3, 0x8a, 0x2e, 0x43, 0x87, +}; +static const unsigned char kat2214_addin0[] = { + 0xbc, 0x64, 0xeb, 0xb2, 0x05, 0x35, 0x11, 0xb5, 0xb5, 0xba, 0x2e, 0x99, + 0x87, 0x91, 0x28, 0x3d, 0x9b, 0x5d, 0xd8, 0xeb, 0x9d, 0x39, 0xb7, 0xd1, + 0xa2, 0xc3, 0x15, 0x62, 0xa0, 0xea, 0xc1, 0x2a, +}; +static const unsigned char kat2214_addin1[] = { + 0x1d, 0x8d, 0x76, 0xc1, 0x06, 0xbd, 0x27, 0x5c, 0x39, 0xd2, 0x1d, 0xb2, + 0xa1, 0xfe, 0x1a, 0x26, 0x42, 0xbd, 0xaf, 0xfc, 0x92, 0x12, 0xe8, 0x41, + 0x45, 0xa2, 0x24, 0xcd, 0xfc, 0x6a, 0x7e, 0x2f, +}; +static const unsigned char kat2214_retbits[] = { + 0x31, 0x35, 0x93, 0x3b, 0x86, 0xd9, 0x80, 0x31, 0xa9, 0x7f, 0xf1, 0x38, + 0x28, 0xc6, 0x3f, 0x43, 0x78, 0x0c, 0x81, 0x76, 0x85, 0x6c, 0x6f, 0xc8, + 0xd4, 0xf2, 0xd3, 0x2a, 0xfc, 0xc6, 0xe8, 0x4f, 0x71, 0xee, 0x0f, 0xe6, + 0xde, 0x9a, 0x7b, 0x75, 0x96, 0x8b, 0xcf, 0xfe, 0x9f, 0xae, 0x9d, 0xf7, + 0xa5, 0x3e, 0x8d, 0xfb, 0x46, 0xac, 0xec, 0x16, 0x8d, 0x1c, 0xa4, 0xc5, + 0x9b, 0xd4, 0x4b, 0x93, +}; +static const struct drbg_kat_pr_false kat2214_t = { + 8, kat2214_entropyin, kat2214_nonce, kat2214_persstr, + kat2214_entropyinreseed, kat2214_addinreseed, kat2214_addin0, + kat2214_addin1, kat2214_retbits +}; +static const struct drbg_kat kat2214 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2214_t +}; + +static const unsigned char kat2215_entropyin[] = { + 0xa4, 0x40, 0xef, 0xa3, 0xc7, 0xe8, 0x96, 0x63, 0xe3, 0x71, 0xe4, 0x1b, + 0xa5, 0xe1, 0x92, 0xb9, 0x5b, 0x2d, 0x14, 0x94, 0x2b, 0xfd, 0xfd, 0x03, + 0x78, 0x68, 0x60, 0xee, 0x33, 0xf7, 0x96, 0xb4, +}; +static const unsigned char kat2215_nonce[] = {0}; +static const unsigned char kat2215_persstr[] = { + 0x32, 0x89, 0xae, 0xb3, 0xce, 0xda, 0x9d, 0xef, 0xf2, 0xf6, 0x5e, 0xa8, + 0x94, 0x17, 0x6f, 0x13, 0x1c, 0x41, 0x2f, 0x69, 0x95, 0x60, 0xfb, 0x21, + 0xd8, 0x7b, 0xe5, 0xaf, 0x99, 0xba, 0x18, 0xaf, +}; +static const unsigned char kat2215_entropyinreseed[] = { + 0x93, 0x39, 0xf1, 0xff, 0xc3, 0x32, 0x0f, 0xb4, 0xd5, 0x1c, 0x24, 0x34, + 0xf5, 0xe5, 0x1e, 0xd5, 0x6a, 0x12, 0x01, 0x12, 0x73, 0xa4, 0x5f, 0x64, + 0x00, 0x2d, 0x1e, 0x3f, 0x91, 0x90, 0xbf, 0x3b, +}; +static const unsigned char kat2215_addinreseed[] = { + 0x7a, 0xcd, 0xc7, 0x96, 0x7a, 0xa6, 0x86, 0xae, 0x37, 0xeb, 0xe9, 0xf3, + 0xae, 0x6f, 0x53, 0x11, 0x30, 0xbd, 0xb6, 0xc4, 0x84, 0xae, 0x93, 0x81, + 0xe9, 0x62, 0xdb, 0x37, 0x01, 0xf6, 0x6c, 0x4e, +}; +static const unsigned char kat2215_addin0[] = { + 0xbf, 0x85, 0x64, 0x7e, 0x6c, 0xce, 0xe6, 0xd7, 0x8d, 0xbf, 0x62, 0x5a, + 0x46, 0x59, 0xac, 0xb8, 0xcc, 0x50, 0x3c, 0xfd, 0x1c, 0xf9, 0xfd, 0xd5, + 0x46, 0x8d, 0x51, 0xda, 0x1e, 0xba, 0x39, 0xdf, +}; +static const unsigned char kat2215_addin1[] = { + 0x60, 0xda, 0x39, 0x9d, 0x92, 0x72, 0xeb, 0x90, 0x87, 0x8e, 0x3a, 0x24, + 0xf1, 0xab, 0x03, 0xd2, 0x57, 0xe5, 0x67, 0xaa, 0x1e, 0xba, 0xa4, 0x1e, + 0x00, 0xb4, 0xc8, 0x7c, 0xad, 0xda, 0x46, 0x3b, +}; +static const unsigned char kat2215_retbits[] = { + 0x28, 0xac, 0x3a, 0xe1, 0xfb, 0x85, 0x2a, 0x3d, 0x9a, 0xb1, 0x76, 0x18, + 0x49, 0x30, 0x2c, 0x25, 0x15, 0xa0, 0xa8, 0x91, 0x2b, 0xbb, 0xb3, 0x72, + 0x48, 0x05, 0x46, 0x0b, 0x32, 0x7e, 0x34, 0xcc, 0x78, 0x10, 0xd0, 0xb4, + 0x60, 0x8c, 0x9c, 0x25, 0xa0, 0xbd, 0xbd, 0xd3, 0x42, 0x08, 0x83, 0x05, + 0x9d, 0xc7, 0x7f, 0x59, 0xd6, 0x96, 0x0b, 0x27, 0x15, 0x13, 0xd5, 0x26, + 0x7d, 0x96, 0xc9, 0xc2, +}; +static const struct drbg_kat_pr_false kat2215_t = { + 9, kat2215_entropyin, kat2215_nonce, kat2215_persstr, + kat2215_entropyinreseed, kat2215_addinreseed, kat2215_addin0, + kat2215_addin1, kat2215_retbits +}; +static const struct drbg_kat kat2215 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2215_t +}; + +static const unsigned char kat2216_entropyin[] = { + 0xc8, 0xa3, 0x2e, 0x5f, 0xf0, 0x6b, 0xc2, 0x0f, 0x07, 0x6b, 0x3b, 0xba, + 0xbd, 0x68, 0xeb, 0x21, 0xb6, 0x5f, 0x95, 0x36, 0xd7, 0x80, 0x27, 0x1a, + 0xfb, 0x13, 0xf7, 0x9e, 0xeb, 0x21, 0x0c, 0x1f, +}; +static const unsigned char kat2216_nonce[] = {0}; +static const unsigned char kat2216_persstr[] = { + 0xce, 0x90, 0xe1, 0xaf, 0x81, 0xea, 0x8f, 0x9c, 0x58, 0x76, 0x20, 0x62, + 0x3d, 0xee, 0x3e, 0xf8, 0x89, 0xab, 0x61, 0x0b, 0x4d, 0x18, 0x27, 0x70, + 0x1c, 0x73, 0x92, 0x16, 0x2e, 0xab, 0x92, 0x3d, +}; +static const unsigned char kat2216_entropyinreseed[] = { + 0xd1, 0xcc, 0xf4, 0xfb, 0xd8, 0xe0, 0x70, 0x9b, 0x4c, 0xf8, 0xd2, 0x04, + 0x4e, 0xe3, 0xc8, 0x9f, 0xcb, 0xbc, 0x1c, 0x6c, 0xf1, 0x0d, 0x63, 0x4e, + 0x44, 0x60, 0x5c, 0xc6, 0x76, 0xb7, 0x50, 0xad, +}; +static const unsigned char kat2216_addinreseed[] = { + 0x3c, 0xda, 0xec, 0x08, 0xd7, 0x67, 0x0b, 0x80, 0xc6, 0x8b, 0x8c, 0xa4, + 0x72, 0x3d, 0x62, 0xf1, 0xa2, 0x3d, 0x7d, 0x83, 0xd8, 0x26, 0x87, 0xbc, + 0xcc, 0x10, 0xc3, 0x8e, 0x89, 0x4d, 0x81, 0x2a, +}; +static const unsigned char kat2216_addin0[] = { + 0xfb, 0x0b, 0x46, 0x98, 0xd6, 0x62, 0x2c, 0x8f, 0x5f, 0x1d, 0x68, 0x0b, + 0xce, 0xb7, 0xf3, 0x94, 0xeb, 0x13, 0x72, 0x92, 0x14, 0x34, 0xf1, 0x7c, + 0x1a, 0xe6, 0x10, 0x9e, 0xce, 0x79, 0x5d, 0x96, +}; +static const unsigned char kat2216_addin1[] = { + 0x1e, 0xc9, 0xcb, 0xf3, 0x69, 0xaa, 0x80, 0x16, 0x2b, 0x12, 0x48, 0xa2, + 0x50, 0xe4, 0x2f, 0xdd, 0xd1, 0x32, 0xb1, 0x2f, 0xa6, 0xf8, 0xca, 0x2d, + 0xe2, 0xed, 0xa4, 0xb7, 0x8e, 0x7f, 0x2e, 0xd2, +}; +static const unsigned char kat2216_retbits[] = { + 0x58, 0xdf, 0x4e, 0x60, 0x2f, 0x85, 0xbd, 0x94, 0xa9, 0xbf, 0x7d, 0xd3, + 0x75, 0xba, 0xc1, 0x82, 0xe8, 0x93, 0xc7, 0xa3, 0x4a, 0xcc, 0x62, 0xa4, + 0x56, 0xd3, 0x62, 0x4c, 0xcb, 0xc5, 0x4e, 0x9b, 0x08, 0x2f, 0x4f, 0x04, + 0x40, 0x6a, 0x6c, 0x81, 0x5e, 0x26, 0xa5, 0x13, 0x8c, 0x29, 0x37, 0x23, + 0x72, 0xfa, 0x2c, 0x1f, 0x00, 0xe2, 0x86, 0xb3, 0xf4, 0x42, 0x17, 0x23, + 0x94, 0xf4, 0xda, 0x07, +}; +static const struct drbg_kat_pr_false kat2216_t = { + 10, kat2216_entropyin, kat2216_nonce, kat2216_persstr, + kat2216_entropyinreseed, kat2216_addinreseed, kat2216_addin0, + kat2216_addin1, kat2216_retbits +}; +static const struct drbg_kat kat2216 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2216_t +}; + +static const unsigned char kat2217_entropyin[] = { + 0xd0, 0x1e, 0x66, 0xa9, 0x23, 0x7a, 0x87, 0xac, 0x7b, 0x34, 0xbe, 0x3a, + 0xb4, 0x6a, 0xc9, 0xe5, 0xef, 0x86, 0xb6, 0x3f, 0xb8, 0x15, 0x0f, 0x2d, + 0x47, 0x3d, 0xc8, 0x05, 0xaf, 0x32, 0xc6, 0xe4, +}; +static const unsigned char kat2217_nonce[] = {0}; +static const unsigned char kat2217_persstr[] = { + 0xea, 0xd3, 0x53, 0xed, 0xb0, 0xe4, 0xe9, 0xc3, 0x63, 0x20, 0x2d, 0x49, + 0xcd, 0x74, 0x62, 0x1e, 0x80, 0x6c, 0xc3, 0xf7, 0x91, 0x9f, 0x7c, 0xb4, + 0xbf, 0xda, 0xe9, 0x94, 0x4e, 0xf6, 0x60, 0x62, +}; +static const unsigned char kat2217_entropyinreseed[] = { + 0x8c, 0x19, 0x86, 0xae, 0xbb, 0x33, 0x69, 0x32, 0xd8, 0xd7, 0x5e, 0xb5, + 0x59, 0xf4, 0x74, 0x8f, 0x61, 0x50, 0x6e, 0x83, 0x08, 0xd8, 0x16, 0x4a, + 0x63, 0x42, 0xf7, 0x97, 0xbc, 0x13, 0x64, 0xa2, +}; +static const unsigned char kat2217_addinreseed[] = { + 0x05, 0xf9, 0xb1, 0x49, 0xcb, 0x48, 0xe9, 0x0e, 0x02, 0x86, 0x1e, 0x8c, + 0xef, 0xe4, 0xd5, 0xb4, 0xc5, 0x61, 0x98, 0xde, 0x51, 0xab, 0xc0, 0x7d, + 0xcd, 0xc3, 0x04, 0x7d, 0x6e, 0x68, 0x79, 0xa0, +}; +static const unsigned char kat2217_addin0[] = { + 0xa3, 0xe1, 0x57, 0x7e, 0x87, 0xa4, 0x72, 0xf1, 0xf2, 0xcf, 0x66, 0x56, + 0xde, 0x57, 0x37, 0xb1, 0x7a, 0xfd, 0xc2, 0xee, 0xc4, 0x72, 0xac, 0xee, + 0x84, 0xe7, 0x95, 0x09, 0x86, 0x88, 0x90, 0x91, +}; +static const unsigned char kat2217_addin1[] = { + 0xcb, 0xc8, 0x17, 0x95, 0x4c, 0x2f, 0x69, 0xcd, 0x63, 0x0f, 0xa8, 0x8d, + 0x36, 0x3f, 0x38, 0x78, 0xa5, 0x37, 0x62, 0xd3, 0xa9, 0x86, 0x25, 0xf1, + 0xba, 0xab, 0x9d, 0xa8, 0x39, 0x3e, 0x3e, 0x0b, +}; +static const unsigned char kat2217_retbits[] = { + 0x59, 0xad, 0x55, 0x17, 0x21, 0xe3, 0x5f, 0x0a, 0xc2, 0xc3, 0x75, 0x67, + 0xd2, 0xd3, 0x13, 0x64, 0xfa, 0xe7, 0x39, 0x7f, 0x66, 0xe8, 0xa4, 0x54, + 0xe3, 0x27, 0x87, 0xe8, 0x6d, 0xf3, 0x0c, 0x26, 0x2d, 0xd6, 0xf0, 0xac, + 0x58, 0x3a, 0x5f, 0x88, 0xd5, 0x3d, 0x44, 0x4e, 0xf4, 0x64, 0xcf, 0x66, + 0x40, 0xf3, 0xd1, 0x6d, 0xa7, 0x36, 0xc0, 0x8e, 0x2f, 0x32, 0x8b, 0x53, + 0xee, 0x22, 0x84, 0xef, +}; +static const struct drbg_kat_pr_false kat2217_t = { + 11, kat2217_entropyin, kat2217_nonce, kat2217_persstr, + kat2217_entropyinreseed, kat2217_addinreseed, kat2217_addin0, + kat2217_addin1, kat2217_retbits +}; +static const struct drbg_kat kat2217 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2217_t +}; + +static const unsigned char kat2218_entropyin[] = { + 0x6b, 0x09, 0x8f, 0x31, 0x4b, 0x9f, 0x95, 0xc3, 0xa7, 0xbb, 0x25, 0x97, + 0x18, 0x2b, 0x30, 0x48, 0x3f, 0x21, 0x94, 0xfa, 0x4d, 0x21, 0x42, 0xb1, + 0x1d, 0x3f, 0x46, 0xcd, 0x94, 0xa0, 0xfe, 0xd4, +}; +static const unsigned char kat2218_nonce[] = {0}; +static const unsigned char kat2218_persstr[] = { + 0x55, 0x36, 0xb0, 0xe3, 0x1d, 0xb7, 0x80, 0x14, 0x4a, 0xb7, 0xf5, 0xe6, + 0xc2, 0x25, 0x58, 0x84, 0xa8, 0x4b, 0x6d, 0xf9, 0x94, 0x77, 0x03, 0x99, + 0x39, 0xe2, 0x6c, 0x77, 0xbf, 0x28, 0x47, 0x0d, +}; +static const unsigned char kat2218_entropyinreseed[] = { + 0xe0, 0xf9, 0xb6, 0x31, 0x75, 0xc7, 0x93, 0x09, 0x26, 0x9d, 0xd1, 0x3c, + 0x13, 0x42, 0x34, 0x00, 0xfa, 0xde, 0xc2, 0xb9, 0xa4, 0xed, 0x20, 0xff, + 0x1c, 0x71, 0xd6, 0x42, 0xb9, 0x5b, 0xcd, 0xe8, +}; +static const unsigned char kat2218_addinreseed[] = { + 0x22, 0x74, 0x37, 0x31, 0x3d, 0xc0, 0x93, 0x13, 0x82, 0x80, 0x4f, 0x8a, + 0x2d, 0x7c, 0x14, 0xc8, 0x47, 0xe1, 0xcc, 0x4c, 0xe2, 0x8c, 0x5a, 0x58, + 0x9e, 0xc8, 0xe5, 0x1d, 0x3a, 0x81, 0x3c, 0x33, +}; +static const unsigned char kat2218_addin0[] = { + 0x09, 0xc7, 0xee, 0xd8, 0xf0, 0xb6, 0x77, 0x5f, 0x02, 0x77, 0x45, 0xab, + 0x1a, 0x6f, 0x9f, 0xcd, 0x6a, 0x26, 0x69, 0x1f, 0xbb, 0xd4, 0x77, 0xff, + 0x23, 0xe0, 0x64, 0x43, 0xa6, 0x39, 0x14, 0xa4, +}; +static const unsigned char kat2218_addin1[] = { + 0x70, 0xac, 0xab, 0x5c, 0xab, 0x1c, 0x70, 0x58, 0xc3, 0x77, 0xbf, 0x2b, + 0xae, 0xf6, 0x6d, 0x52, 0x6a, 0x77, 0xd3, 0x75, 0x16, 0xb8, 0x49, 0xe5, + 0x2f, 0x22, 0xc1, 0x04, 0x5d, 0x3f, 0x8a, 0x5d, +}; +static const unsigned char kat2218_retbits[] = { + 0x74, 0x29, 0x9d, 0xe3, 0x5f, 0xfa, 0xb5, 0x51, 0x13, 0x2e, 0xe3, 0xa5, + 0x7b, 0x2d, 0x19, 0x68, 0xc7, 0xb2, 0x1d, 0xf9, 0x68, 0xfe, 0x21, 0xec, + 0x69, 0x7b, 0x93, 0x6c, 0x61, 0xad, 0x4a, 0x36, 0xff, 0x46, 0x2f, 0x75, + 0x15, 0x59, 0x4d, 0x3d, 0xb7, 0x7c, 0xc9, 0xaf, 0x73, 0x50, 0xed, 0xc2, + 0x57, 0x24, 0xa7, 0x54, 0xa6, 0x9d, 0xcb, 0x94, 0x72, 0xdf, 0x5b, 0x6f, + 0x08, 0x68, 0xf5, 0x5d, +}; +static const struct drbg_kat_pr_false kat2218_t = { + 12, kat2218_entropyin, kat2218_nonce, kat2218_persstr, + kat2218_entropyinreseed, kat2218_addinreseed, kat2218_addin0, + kat2218_addin1, kat2218_retbits +}; +static const struct drbg_kat kat2218 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2218_t +}; + +static const unsigned char kat2219_entropyin[] = { + 0x37, 0x6d, 0xf6, 0x9a, 0xc3, 0xdf, 0x60, 0x36, 0x7e, 0xaa, 0xe9, 0x14, + 0xa5, 0xbb, 0x60, 0x0f, 0x6a, 0x3d, 0x2d, 0x18, 0x85, 0xea, 0xb4, 0xf8, + 0xba, 0x9d, 0x87, 0x27, 0xd0, 0x99, 0xf1, 0xd9, +}; +static const unsigned char kat2219_nonce[] = {0}; +static const unsigned char kat2219_persstr[] = { + 0xb7, 0xbe, 0x85, 0xc0, 0xb4, 0x6f, 0x0f, 0x75, 0x05, 0x02, 0xc0, 0x3d, + 0xbb, 0x82, 0x4c, 0xf5, 0x08, 0x2a, 0x29, 0x7e, 0x6e, 0x76, 0x32, 0xc9, + 0x45, 0x4f, 0x02, 0x9b, 0x4b, 0xac, 0x5b, 0x5a, +}; +static const unsigned char kat2219_entropyinreseed[] = { + 0xf5, 0x61, 0x9d, 0xae, 0xf4, 0xdb, 0xf6, 0x38, 0x20, 0xe6, 0x7f, 0xbf, + 0xfe, 0x7b, 0x57, 0x7d, 0x10, 0x69, 0x99, 0x3f, 0x91, 0xfb, 0x07, 0xe5, + 0x39, 0x95, 0x54, 0xd7, 0x3f, 0xe1, 0x92, 0xa1, +}; +static const unsigned char kat2219_addinreseed[] = { + 0x08, 0x86, 0x99, 0xed, 0x19, 0x58, 0xfa, 0x6c, 0x33, 0x19, 0xe6, 0xf6, + 0xd3, 0x5e, 0xa4, 0x2c, 0xc1, 0x4b, 0xa6, 0x59, 0x6c, 0x48, 0x47, 0x21, + 0x6a, 0x74, 0xa7, 0xf9, 0xcb, 0xd3, 0x1e, 0x35, +}; +static const unsigned char kat2219_addin0[] = { + 0x50, 0x73, 0xe2, 0xe2, 0x45, 0x0b, 0x18, 0x2f, 0xb4, 0x29, 0x01, 0x28, + 0x08, 0x26, 0xf3, 0x4b, 0x0a, 0xeb, 0x1b, 0x0d, 0xcf, 0x26, 0xbc, 0xde, + 0x62, 0xb1, 0xd0, 0x4f, 0x8b, 0x96, 0x58, 0x99, +}; +static const unsigned char kat2219_addin1[] = { + 0xbf, 0x58, 0xe8, 0x6f, 0x9d, 0xfa, 0x0c, 0x0a, 0x2c, 0xd4, 0x41, 0xc6, + 0x64, 0x0f, 0x8f, 0x46, 0xa2, 0x72, 0xa5, 0x05, 0x13, 0x26, 0x6a, 0xb2, + 0x90, 0xe2, 0x4c, 0x4f, 0x21, 0xc6, 0xf6, 0x38, +}; +static const unsigned char kat2219_retbits[] = { + 0xf8, 0x0f, 0x79, 0xe6, 0x9f, 0x99, 0xf6, 0xd7, 0xcd, 0x24, 0x84, 0xc6, + 0x79, 0xa9, 0x74, 0xbd, 0xfa, 0x23, 0x64, 0x21, 0x8e, 0x1b, 0xf6, 0x44, + 0x53, 0x22, 0x2b, 0xc8, 0xb5, 0xb4, 0xea, 0x33, 0x9b, 0xd0, 0x56, 0x97, + 0xb4, 0x61, 0xcc, 0x49, 0xed, 0x33, 0x84, 0x74, 0x51, 0xe8, 0x76, 0x6f, + 0xf7, 0x6a, 0x87, 0x14, 0xcc, 0x92, 0x56, 0x18, 0x8e, 0x59, 0x6f, 0xf4, + 0x4e, 0xcc, 0xab, 0x10, +}; +static const struct drbg_kat_pr_false kat2219_t = { + 13, kat2219_entropyin, kat2219_nonce, kat2219_persstr, + kat2219_entropyinreseed, kat2219_addinreseed, kat2219_addin0, + kat2219_addin1, kat2219_retbits +}; +static const struct drbg_kat kat2219 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2219_t +}; + +static const unsigned char kat2220_entropyin[] = { + 0x25, 0x3d, 0xe0, 0xa4, 0xf5, 0x52, 0xf2, 0x7e, 0x2a, 0xe6, 0x15, 0x34, + 0x3d, 0xdc, 0xf8, 0x41, 0xdd, 0x28, 0x00, 0x30, 0x84, 0xb0, 0x7a, 0x63, + 0x5d, 0xd7, 0x19, 0x5a, 0x33, 0x6a, 0x20, 0x52, +}; +static const unsigned char kat2220_nonce[] = {0}; +static const unsigned char kat2220_persstr[] = { + 0xbd, 0x13, 0xb2, 0x6e, 0xac, 0x18, 0x41, 0xee, 0x90, 0xdc, 0x84, 0xa4, + 0xc4, 0x56, 0xe3, 0x97, 0x5a, 0x3f, 0xf8, 0x17, 0x8f, 0xa5, 0x4d, 0x9d, + 0x59, 0x1c, 0x1c, 0x68, 0x1d, 0x49, 0x0c, 0x35, +}; +static const unsigned char kat2220_entropyinreseed[] = { + 0x66, 0x00, 0xbc, 0x9f, 0x59, 0xae, 0x88, 0x08, 0xb2, 0x82, 0xb6, 0xe4, + 0x8d, 0x7b, 0xbc, 0x0d, 0x11, 0x12, 0x0b, 0xb4, 0xd7, 0x3a, 0xe6, 0x06, + 0x8f, 0x01, 0xdf, 0xe0, 0xc2, 0x19, 0x62, 0x76, +}; +static const unsigned char kat2220_addinreseed[] = { + 0x0d, 0xc9, 0x35, 0x30, 0x3e, 0xef, 0xf1, 0x69, 0x39, 0xab, 0x83, 0xd4, + 0x60, 0x1e, 0x77, 0x28, 0x99, 0x3a, 0x7e, 0xdb, 0x57, 0xe6, 0x04, 0x74, + 0xf8, 0xa1, 0xa5, 0xfe, 0xef, 0x9f, 0x41, 0x40, +}; +static const unsigned char kat2220_addin0[] = { + 0x15, 0x50, 0xac, 0x6d, 0xa1, 0x74, 0x28, 0x34, 0xc7, 0x05, 0xb4, 0xda, + 0xd6, 0x1c, 0x37, 0xfc, 0x33, 0xe7, 0xd7, 0x86, 0xf7, 0x6b, 0x55, 0x3a, + 0xb3, 0x24, 0xbf, 0x54, 0x3f, 0x8a, 0x1b, 0x17, +}; +static const unsigned char kat2220_addin1[] = { + 0x77, 0xef, 0x7c, 0x3f, 0x81, 0x9d, 0xe7, 0x8c, 0x24, 0x33, 0x51, 0xa7, + 0x1b, 0xbb, 0x46, 0x09, 0x36, 0x06, 0x47, 0x38, 0xfc, 0xb7, 0x5a, 0xcf, + 0xc2, 0x14, 0xc8, 0x84, 0xff, 0x17, 0x23, 0x11, +}; +static const unsigned char kat2220_retbits[] = { + 0x10, 0x30, 0xbf, 0xc7, 0xcc, 0x64, 0x5d, 0x6e, 0x2d, 0x6b, 0x2a, 0x3f, + 0x2e, 0x97, 0x97, 0x9a, 0xb9, 0x99, 0xd7, 0x02, 0x52, 0xc1, 0x55, 0x04, + 0xd7, 0x1d, 0x02, 0xc5, 0x84, 0x2c, 0x34, 0xcf, 0x63, 0xb9, 0x4c, 0x51, + 0x2e, 0x16, 0x27, 0x26, 0xac, 0xfb, 0x14, 0x92, 0xcc, 0xb5, 0x25, 0xea, + 0x56, 0xe4, 0xca, 0x1b, 0x54, 0xda, 0xaa, 0xc2, 0x28, 0x4e, 0x55, 0x8c, + 0xb4, 0x93, 0x69, 0x31, +}; +static const struct drbg_kat_pr_false kat2220_t = { + 14, kat2220_entropyin, kat2220_nonce, kat2220_persstr, + kat2220_entropyinreseed, kat2220_addinreseed, kat2220_addin0, + kat2220_addin1, kat2220_retbits +}; +static const struct drbg_kat kat2220 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2220_t +}; + +static const unsigned char kat2221_entropyin[] = { + 0xb2, 0xb3, 0x29, 0x83, 0x06, 0x47, 0x1b, 0xfc, 0xae, 0x61, 0x43, 0x8a, + 0x3a, 0x79, 0xe2, 0x35, 0x5e, 0xfa, 0x0b, 0x6e, 0xde, 0x4c, 0xbc, 0xd3, + 0xe6, 0x6d, 0xe5, 0x14, 0x0b, 0x3a, 0xe6, 0x80, +}; +static const unsigned char kat2221_nonce[] = {0}; +static const unsigned char kat2221_persstr[] = {0}; +static const unsigned char kat2221_entropyinreseed[] = { + 0x26, 0xf0, 0xd1, 0xe4, 0x4b, 0xe5, 0x75, 0xee, 0x6f, 0x3e, 0xda, 0x89, + 0xc1, 0xe7, 0xe4, 0xfb, 0xd1, 0x42, 0x8f, 0x88, 0x52, 0x60, 0x48, 0x71, + 0xc7, 0xa4, 0xf4, 0xc7, 0x07, 0xa3, 0x93, 0x28, +}; +static const unsigned char kat2221_addinreseed[] = {0}; +static const unsigned char kat2221_addin0[] = {0}; +static const unsigned char kat2221_addin1[] = {0}; +static const unsigned char kat2221_retbits[] = { + 0xb7, 0x1b, 0x6d, 0x73, 0x22, 0x45, 0x3a, 0x61, 0x2c, 0x34, 0xa9, 0x1c, + 0x1e, 0x5c, 0x3f, 0x8c, 0x30, 0x48, 0x6a, 0x69, 0x2b, 0x1a, 0xd1, 0x3a, + 0x4c, 0x08, 0xca, 0xcc, 0xd1, 0x23, 0xa6, 0x39, 0xfd, 0x2e, 0x0a, 0x7c, + 0x38, 0x9c, 0xfa, 0x1a, 0x97, 0xcb, 0x78, 0xb4, 0x38, 0xdf, 0xf5, 0x7b, + 0x0b, 0x5e, 0xc4, 0xd5, 0x69, 0xa8, 0xb2, 0x81, 0x0a, 0x15, 0xf8, 0x5c, + 0x8c, 0x92, 0x26, 0xbf, +}; +static const struct drbg_kat_pr_false kat2221_t = { + 0, kat2221_entropyin, kat2221_nonce, kat2221_persstr, + kat2221_entropyinreseed, kat2221_addinreseed, kat2221_addin0, + kat2221_addin1, kat2221_retbits +}; +static const struct drbg_kat kat2221 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2221_t +}; + +static const unsigned char kat2222_entropyin[] = { + 0x66, 0xf4, 0x1d, 0xc7, 0x91, 0xe1, 0x55, 0x12, 0x7b, 0x7f, 0xc6, 0x80, + 0x84, 0x20, 0x21, 0x29, 0x6f, 0xfd, 0x9f, 0x5e, 0x11, 0xd1, 0x09, 0x4e, + 0xb4, 0x46, 0xaf, 0x24, 0x37, 0x5f, 0x7f, 0x79, +}; +static const unsigned char kat2222_nonce[] = {0}; +static const unsigned char kat2222_persstr[] = {0}; +static const unsigned char kat2222_entropyinreseed[] = { + 0x04, 0x4e, 0xb1, 0x2d, 0xb0, 0x5c, 0x2f, 0x45, 0x74, 0xb9, 0xb1, 0x62, + 0x8c, 0x65, 0x89, 0x17, 0x70, 0x72, 0xe8, 0x60, 0x7a, 0xfe, 0xd2, 0x7e, + 0x4a, 0x8f, 0xaa, 0x1a, 0xdb, 0xdd, 0x96, 0xf0, +}; +static const unsigned char kat2222_addinreseed[] = {0}; +static const unsigned char kat2222_addin0[] = {0}; +static const unsigned char kat2222_addin1[] = {0}; +static const unsigned char kat2222_retbits[] = { + 0xf2, 0x72, 0x68, 0x2d, 0x39, 0x2f, 0xe7, 0x07, 0xff, 0x8f, 0xaa, 0xe4, + 0x71, 0xb7, 0xfa, 0xb6, 0x85, 0x14, 0x60, 0xed, 0xeb, 0x20, 0x7d, 0x9e, + 0x7d, 0xb9, 0x6d, 0x2c, 0x27, 0xb6, 0x6c, 0x5c, 0x45, 0xf9, 0x8a, 0x44, + 0x5d, 0xef, 0xd0, 0x89, 0x5e, 0x8c, 0x3f, 0x47, 0xfe, 0x85, 0xf8, 0xde, + 0x3c, 0x62, 0xd4, 0x02, 0x8f, 0x4f, 0xcc, 0x89, 0x1e, 0x28, 0x8f, 0xcd, + 0x78, 0x0f, 0x21, 0x2d, +}; +static const struct drbg_kat_pr_false kat2222_t = { + 1, kat2222_entropyin, kat2222_nonce, kat2222_persstr, + kat2222_entropyinreseed, kat2222_addinreseed, kat2222_addin0, + kat2222_addin1, kat2222_retbits +}; +static const struct drbg_kat kat2222 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2222_t +}; + +static const unsigned char kat2223_entropyin[] = { + 0xc6, 0x50, 0x6d, 0xd8, 0xb9, 0xb7, 0x4c, 0xa1, 0x6b, 0xd4, 0x11, 0x9b, + 0x69, 0x0f, 0xc3, 0x0d, 0xa5, 0xfc, 0xed, 0x3b, 0x8d, 0x31, 0x5e, 0x95, + 0x7b, 0x12, 0xf1, 0xcd, 0x9b, 0xf9, 0x5f, 0x94, +}; +static const unsigned char kat2223_nonce[] = {0}; +static const unsigned char kat2223_persstr[] = {0}; +static const unsigned char kat2223_entropyinreseed[] = { + 0x0c, 0x80, 0xff, 0x54, 0xc4, 0x9a, 0xb8, 0x97, 0x82, 0x71, 0x6b, 0x1d, + 0x51, 0x5d, 0xa2, 0x4c, 0x30, 0x31, 0xf3, 0xef, 0x71, 0x79, 0xe5, 0x99, + 0xed, 0xc8, 0xd8, 0x65, 0xa0, 0x3c, 0x79, 0x9f, +}; +static const unsigned char kat2223_addinreseed[] = {0}; +static const unsigned char kat2223_addin0[] = {0}; +static const unsigned char kat2223_addin1[] = {0}; +static const unsigned char kat2223_retbits[] = { + 0xe1, 0x69, 0x6c, 0xdb, 0x47, 0x6b, 0x24, 0xb5, 0x13, 0xc1, 0xe8, 0x7e, + 0x68, 0xc7, 0x4b, 0x1f, 0x38, 0x42, 0xf4, 0x29, 0x4a, 0xbf, 0x2a, 0x1a, + 0x81, 0x00, 0x73, 0xa6, 0xa5, 0xc8, 0xc4, 0x39, 0x93, 0xa5, 0x65, 0x07, + 0x44, 0x2d, 0xb3, 0x6a, 0x38, 0x22, 0x8b, 0x9c, 0x25, 0x25, 0x29, 0x93, + 0xdd, 0x88, 0x65, 0x09, 0x6f, 0xed, 0xb5, 0x85, 0x89, 0x24, 0xf0, 0x79, + 0xd5, 0x6c, 0x30, 0xd1, +}; +static const struct drbg_kat_pr_false kat2223_t = { + 2, kat2223_entropyin, kat2223_nonce, kat2223_persstr, + kat2223_entropyinreseed, kat2223_addinreseed, kat2223_addin0, + kat2223_addin1, kat2223_retbits +}; +static const struct drbg_kat kat2223 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2223_t +}; + +static const unsigned char kat2224_entropyin[] = { + 0x6b, 0x2e, 0x86, 0xd5, 0xfc, 0x54, 0x69, 0xda, 0x4e, 0xd3, 0x32, 0xf4, + 0xd1, 0x23, 0xa6, 0x11, 0xf6, 0x0d, 0x96, 0x49, 0x1c, 0x0a, 0x45, 0x08, + 0x81, 0x04, 0x76, 0x87, 0x12, 0x31, 0x43, 0x77, +}; +static const unsigned char kat2224_nonce[] = {0}; +static const unsigned char kat2224_persstr[] = {0}; +static const unsigned char kat2224_entropyinreseed[] = { + 0x76, 0x2c, 0x53, 0x60, 0x8f, 0x07, 0x5b, 0xa1, 0x92, 0x63, 0x37, 0xa6, + 0x1c, 0x35, 0xdb, 0xfe, 0x02, 0x44, 0x27, 0xd2, 0x90, 0x26, 0x07, 0x85, + 0xb4, 0x3b, 0x39, 0xf3, 0x2d, 0x28, 0x2f, 0xc1, +}; +static const unsigned char kat2224_addinreseed[] = {0}; +static const unsigned char kat2224_addin0[] = {0}; +static const unsigned char kat2224_addin1[] = {0}; +static const unsigned char kat2224_retbits[] = { + 0x7a, 0x6e, 0x19, 0x3c, 0xe1, 0xee, 0xb6, 0xa5, 0x43, 0xd2, 0xed, 0x0c, + 0x4d, 0xbb, 0xe4, 0x2e, 0x9b, 0x1a, 0xee, 0x2f, 0x3c, 0x99, 0x09, 0x16, + 0xe2, 0x13, 0xf0, 0x76, 0x13, 0x99, 0x46, 0x43, 0x01, 0xc2, 0x2e, 0x87, + 0x90, 0x7d, 0x3c, 0x1b, 0x20, 0xb1, 0x98, 0x72, 0x60, 0x15, 0x7d, 0xbc, + 0x66, 0xfb, 0x86, 0x0d, 0x68, 0x96, 0xad, 0xd9, 0xab, 0xd5, 0xed, 0x25, + 0x6c, 0x76, 0x35, 0x63, +}; +static const struct drbg_kat_pr_false kat2224_t = { + 3, kat2224_entropyin, kat2224_nonce, kat2224_persstr, + kat2224_entropyinreseed, kat2224_addinreseed, kat2224_addin0, + kat2224_addin1, kat2224_retbits +}; +static const struct drbg_kat kat2224 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2224_t +}; + +static const unsigned char kat2225_entropyin[] = { + 0x4f, 0xbe, 0xad, 0x74, 0x78, 0x2f, 0xdc, 0xd2, 0xb3, 0x31, 0x8c, 0x71, + 0xe7, 0x8a, 0xce, 0xb2, 0x3a, 0x4d, 0x03, 0x99, 0xfc, 0x5c, 0x03, 0x42, + 0x54, 0x5b, 0x99, 0x80, 0xdc, 0xd8, 0x5d, 0x53, +}; +static const unsigned char kat2225_nonce[] = {0}; +static const unsigned char kat2225_persstr[] = {0}; +static const unsigned char kat2225_entropyinreseed[] = { + 0x53, 0xa4, 0x55, 0x12, 0x15, 0x96, 0xb4, 0x9d, 0xfa, 0x3a, 0x97, 0x93, + 0x2c, 0x71, 0x5f, 0x92, 0x6d, 0xe4, 0x0e, 0x6f, 0xc9, 0x30, 0xa8, 0xdd, + 0x57, 0x36, 0x15, 0x9c, 0x74, 0x93, 0x18, 0x9c, +}; +static const unsigned char kat2225_addinreseed[] = {0}; +static const unsigned char kat2225_addin0[] = {0}; +static const unsigned char kat2225_addin1[] = {0}; +static const unsigned char kat2225_retbits[] = { + 0xc9, 0x12, 0xbf, 0xc9, 0x3b, 0x94, 0x78, 0xbf, 0x98, 0xf5, 0x4d, 0x58, + 0x54, 0xbb, 0x7d, 0x9f, 0x4e, 0xb5, 0xd4, 0x64, 0x89, 0x1c, 0xd0, 0xc5, + 0xe8, 0x4c, 0xbc, 0x4b, 0x44, 0x69, 0x5f, 0x74, 0x20, 0xbc, 0x21, 0xc6, + 0xfa, 0x7f, 0xb5, 0x7d, 0x9c, 0xbd, 0xc2, 0xe5, 0x8a, 0x35, 0xd0, 0x01, + 0xc5, 0x16, 0x29, 0x83, 0xae, 0x7f, 0x90, 0x35, 0xbd, 0x81, 0xdc, 0xd1, + 0xee, 0xc0, 0x99, 0x97, +}; +static const struct drbg_kat_pr_false kat2225_t = { + 4, kat2225_entropyin, kat2225_nonce, kat2225_persstr, + kat2225_entropyinreseed, kat2225_addinreseed, kat2225_addin0, + kat2225_addin1, kat2225_retbits +}; +static const struct drbg_kat kat2225 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2225_t +}; + +static const unsigned char kat2226_entropyin[] = { + 0x71, 0x1b, 0xf3, 0x4f, 0x33, 0x84, 0x4b, 0x11, 0x01, 0x69, 0x0a, 0xab, + 0x9a, 0x91, 0xcf, 0x42, 0xda, 0x10, 0xdc, 0x6f, 0xa2, 0x81, 0xbf, 0x06, + 0x50, 0xbc, 0x2b, 0x21, 0x27, 0x2c, 0x02, 0xf5, +}; +static const unsigned char kat2226_nonce[] = {0}; +static const unsigned char kat2226_persstr[] = {0}; +static const unsigned char kat2226_entropyinreseed[] = { + 0x4c, 0x5a, 0x8a, 0xa8, 0x24, 0x21, 0xcd, 0x10, 0x1e, 0x53, 0x48, 0x13, + 0x76, 0x4b, 0x6c, 0x51, 0x4d, 0xe6, 0x30, 0x18, 0x26, 0xdd, 0xe3, 0xb9, + 0x21, 0x24, 0xb3, 0x35, 0xeb, 0xbf, 0x6f, 0x92, +}; +static const unsigned char kat2226_addinreseed[] = {0}; +static const unsigned char kat2226_addin0[] = {0}; +static const unsigned char kat2226_addin1[] = {0}; +static const unsigned char kat2226_retbits[] = { + 0x60, 0x35, 0xa0, 0xff, 0x6b, 0x26, 0xd2, 0xb9, 0x38, 0x6e, 0x89, 0x3a, + 0x70, 0x4f, 0x20, 0x8b, 0x67, 0xd5, 0xb3, 0x55, 0x0d, 0xed, 0x60, 0x6c, + 0x6d, 0x5f, 0xdb, 0x3f, 0x61, 0x77, 0xf3, 0xa5, 0xd7, 0x0b, 0xf0, 0x84, + 0x4c, 0xef, 0x25, 0x2b, 0x3b, 0x38, 0xec, 0xc6, 0x83, 0xa8, 0x67, 0x0a, + 0x92, 0x35, 0x14, 0x31, 0x37, 0xd3, 0xe4, 0x45, 0x14, 0x59, 0x8c, 0x44, + 0x86, 0xeb, 0x73, 0x45, +}; +static const struct drbg_kat_pr_false kat2226_t = { + 5, kat2226_entropyin, kat2226_nonce, kat2226_persstr, + kat2226_entropyinreseed, kat2226_addinreseed, kat2226_addin0, + kat2226_addin1, kat2226_retbits +}; +static const struct drbg_kat kat2226 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2226_t +}; + +static const unsigned char kat2227_entropyin[] = { + 0x8c, 0x00, 0x6c, 0x19, 0xf2, 0xda, 0x7a, 0xe8, 0x82, 0x18, 0xfc, 0xd5, + 0x0d, 0x5c, 0x6d, 0x51, 0x02, 0x99, 0x2b, 0x47, 0x62, 0xb1, 0x47, 0x5e, + 0x12, 0x2a, 0x30, 0xed, 0x13, 0x29, 0x2d, 0x02, +}; +static const unsigned char kat2227_nonce[] = {0}; +static const unsigned char kat2227_persstr[] = {0}; +static const unsigned char kat2227_entropyinreseed[] = { + 0x5c, 0xe9, 0x8d, 0x2a, 0x58, 0x2b, 0x95, 0xbd, 0xa2, 0x30, 0xb7, 0x48, + 0x2f, 0xf8, 0x00, 0xa8, 0x28, 0x91, 0xd6, 0xb1, 0xdf, 0x75, 0xfe, 0xce, + 0xca, 0xe5, 0xd7, 0x06, 0x7d, 0xdf, 0x5b, 0x46, +}; +static const unsigned char kat2227_addinreseed[] = {0}; +static const unsigned char kat2227_addin0[] = {0}; +static const unsigned char kat2227_addin1[] = {0}; +static const unsigned char kat2227_retbits[] = { + 0x2a, 0x19, 0xd7, 0xb3, 0x58, 0x33, 0xea, 0xbf, 0xbc, 0x43, 0xcb, 0xc3, + 0xdd, 0xe1, 0x43, 0x92, 0xd8, 0x2f, 0x32, 0x83, 0xef, 0xbb, 0xd3, 0x3f, + 0x13, 0x4b, 0x32, 0x04, 0x04, 0x02, 0xc7, 0x13, 0x26, 0xcd, 0x31, 0xd3, + 0x7e, 0x25, 0x72, 0x2c, 0xe7, 0x3b, 0xf3, 0x64, 0x0e, 0x5e, 0x2b, 0x00, + 0xd7, 0xdd, 0x27, 0x8f, 0x28, 0xa0, 0xf4, 0xe4, 0x3f, 0x89, 0x35, 0x37, + 0x7c, 0xa1, 0xa6, 0x0b, +}; +static const struct drbg_kat_pr_false kat2227_t = { + 6, kat2227_entropyin, kat2227_nonce, kat2227_persstr, + kat2227_entropyinreseed, kat2227_addinreseed, kat2227_addin0, + kat2227_addin1, kat2227_retbits +}; +static const struct drbg_kat kat2227 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2227_t +}; + +static const unsigned char kat2228_entropyin[] = { + 0x9d, 0xee, 0xfa, 0x77, 0x93, 0x37, 0xef, 0x1f, 0xf7, 0xf4, 0x7c, 0x48, + 0x19, 0xd1, 0x75, 0x02, 0x4d, 0xf3, 0x49, 0xf8, 0xa5, 0xcf, 0xe8, 0x57, + 0xc9, 0xb5, 0xe8, 0x22, 0xd8, 0xda, 0xfc, 0x56, +}; +static const unsigned char kat2228_nonce[] = {0}; +static const unsigned char kat2228_persstr[] = {0}; +static const unsigned char kat2228_entropyinreseed[] = { + 0x55, 0x8d, 0x79, 0xc8, 0x3d, 0x81, 0xd3, 0xfd, 0x07, 0xd6, 0xeb, 0x73, + 0x9a, 0xd3, 0x0e, 0x29, 0x83, 0x45, 0xbc, 0x4b, 0x90, 0x6d, 0x2f, 0x6f, + 0x87, 0xce, 0xeb, 0x79, 0x3a, 0xaa, 0xe8, 0xd6, +}; +static const unsigned char kat2228_addinreseed[] = {0}; +static const unsigned char kat2228_addin0[] = {0}; +static const unsigned char kat2228_addin1[] = {0}; +static const unsigned char kat2228_retbits[] = { + 0x13, 0xda, 0x72, 0xe2, 0xa4, 0x8e, 0x58, 0x93, 0xae, 0x78, 0x64, 0x40, + 0x57, 0xf7, 0xd3, 0x44, 0xcf, 0x5b, 0x56, 0xcf, 0xc9, 0xc4, 0x9b, 0x7e, + 0x09, 0x79, 0xc5, 0x75, 0x35, 0x07, 0x18, 0x58, 0x8e, 0x73, 0xbd, 0x13, + 0x0e, 0xde, 0x3b, 0x84, 0x51, 0x31, 0x45, 0x2b, 0x82, 0x0e, 0x41, 0xe8, + 0xc9, 0x9b, 0xb7, 0xe5, 0x82, 0xe6, 0xe8, 0xa2, 0xe4, 0x52, 0xc0, 0x90, + 0x04, 0xad, 0xe4, 0x0d, +}; +static const struct drbg_kat_pr_false kat2228_t = { + 7, kat2228_entropyin, kat2228_nonce, kat2228_persstr, + kat2228_entropyinreseed, kat2228_addinreseed, kat2228_addin0, + kat2228_addin1, kat2228_retbits +}; +static const struct drbg_kat kat2228 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2228_t +}; + +static const unsigned char kat2229_entropyin[] = { + 0xb8, 0xd8, 0x2f, 0x15, 0xc3, 0xe0, 0xdf, 0x02, 0xd2, 0xdc, 0xd5, 0xa1, + 0x99, 0x5c, 0xbf, 0x47, 0x88, 0x45, 0x42, 0x6f, 0xf9, 0xe4, 0xfd, 0x7c, + 0xba, 0xc4, 0x94, 0xa2, 0xb7, 0x50, 0xa6, 0xdb, +}; +static const unsigned char kat2229_nonce[] = {0}; +static const unsigned char kat2229_persstr[] = {0}; +static const unsigned char kat2229_entropyinreseed[] = { + 0xa3, 0x4c, 0xd6, 0x89, 0x58, 0x9e, 0x4f, 0x6f, 0x97, 0x35, 0x6f, 0x95, + 0xfc, 0xc8, 0xdd, 0xfd, 0x48, 0x40, 0x10, 0x43, 0xa6, 0xf0, 0xa0, 0xbb, + 0x4c, 0x83, 0x59, 0xca, 0x97, 0xe3, 0xe4, 0xca, +}; +static const unsigned char kat2229_addinreseed[] = {0}; +static const unsigned char kat2229_addin0[] = {0}; +static const unsigned char kat2229_addin1[] = {0}; +static const unsigned char kat2229_retbits[] = { + 0x29, 0xc9, 0x08, 0x17, 0xb6, 0x5f, 0x08, 0xf9, 0x2b, 0xd5, 0x68, 0xcf, + 0x40, 0x55, 0x3d, 0x99, 0x8d, 0x0f, 0x45, 0x48, 0x27, 0x6d, 0xba, 0x08, + 0x9a, 0x02, 0x96, 0x25, 0x61, 0x9f, 0xc2, 0xaf, 0x85, 0xfb, 0x64, 0xd9, + 0x2a, 0x7c, 0x0c, 0x33, 0x37, 0xe5, 0x8d, 0x05, 0xc3, 0x4b, 0xfa, 0xe1, + 0xb9, 0x99, 0xd6, 0x2e, 0x50, 0x0c, 0xe7, 0x5c, 0xb3, 0x3d, 0xec, 0x5d, + 0xcb, 0x4d, 0x96, 0xc7, +}; +static const struct drbg_kat_pr_false kat2229_t = { + 8, kat2229_entropyin, kat2229_nonce, kat2229_persstr, + kat2229_entropyinreseed, kat2229_addinreseed, kat2229_addin0, + kat2229_addin1, kat2229_retbits +}; +static const struct drbg_kat kat2229 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2229_t +}; + +static const unsigned char kat2230_entropyin[] = { + 0x10, 0xd5, 0xd6, 0x38, 0xf7, 0x0d, 0x4b, 0x37, 0xc9, 0x1b, 0xe4, 0x4c, + 0x18, 0x21, 0x29, 0x26, 0x49, 0x57, 0x61, 0x01, 0x84, 0xcd, 0x9d, 0xe2, + 0x38, 0x74, 0x5b, 0x10, 0x57, 0x9a, 0x93, 0xde, +}; +static const unsigned char kat2230_nonce[] = {0}; +static const unsigned char kat2230_persstr[] = {0}; +static const unsigned char kat2230_entropyinreseed[] = { + 0x36, 0x97, 0x34, 0x0c, 0x47, 0x83, 0x73, 0xa3, 0xb2, 0x29, 0x15, 0x7e, + 0x99, 0xdd, 0x95, 0x46, 0xfb, 0x0f, 0xd0, 0x37, 0x0b, 0x37, 0x39, 0x38, + 0x2d, 0x38, 0x49, 0x90, 0xc2, 0xb8, 0x5b, 0x5e, +}; +static const unsigned char kat2230_addinreseed[] = {0}; +static const unsigned char kat2230_addin0[] = {0}; +static const unsigned char kat2230_addin1[] = {0}; +static const unsigned char kat2230_retbits[] = { + 0xa3, 0x1b, 0xba, 0x6f, 0x7b, 0x20, 0x3e, 0x05, 0x6f, 0xff, 0x45, 0x10, + 0x25, 0x06, 0x16, 0xc8, 0xd6, 0x7e, 0x0e, 0xb9, 0xac, 0x2d, 0x11, 0xd7, + 0xf4, 0x88, 0x88, 0x46, 0xc1, 0x97, 0x97, 0x1b, 0xdb, 0x8e, 0xdb, 0x2a, + 0xae, 0xda, 0x12, 0x02, 0x3c, 0x4a, 0x0d, 0x19, 0x9a, 0x89, 0x29, 0x14, + 0xef, 0x22, 0xaf, 0x69, 0x13, 0x89, 0xfe, 0x56, 0xe9, 0xac, 0xf3, 0x1f, + 0xb5, 0x8b, 0x63, 0xe6, +}; +static const struct drbg_kat_pr_false kat2230_t = { + 9, kat2230_entropyin, kat2230_nonce, kat2230_persstr, + kat2230_entropyinreseed, kat2230_addinreseed, kat2230_addin0, + kat2230_addin1, kat2230_retbits +}; +static const struct drbg_kat kat2230 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2230_t +}; + +static const unsigned char kat2231_entropyin[] = { + 0xe1, 0xf6, 0x77, 0x02, 0xec, 0x10, 0xc7, 0x5c, 0xa3, 0xe9, 0xd3, 0x08, + 0x16, 0xc4, 0x79, 0xbf, 0x4d, 0x04, 0xdb, 0xd1, 0xf6, 0x64, 0x73, 0x8b, + 0x21, 0xd5, 0x29, 0xe5, 0x46, 0x0e, 0x92, 0xdd, +}; +static const unsigned char kat2231_nonce[] = {0}; +static const unsigned char kat2231_persstr[] = {0}; +static const unsigned char kat2231_entropyinreseed[] = { + 0x00, 0xc8, 0xac, 0x19, 0x71, 0x09, 0x6a, 0xe2, 0xa8, 0xd2, 0x88, 0xa9, + 0x62, 0xe5, 0xab, 0x33, 0x1e, 0xbd, 0x4e, 0xde, 0x7d, 0xd0, 0x72, 0x3b, + 0x0a, 0x92, 0xf9, 0x86, 0x9a, 0xb7, 0xea, 0x31, +}; +static const unsigned char kat2231_addinreseed[] = {0}; +static const unsigned char kat2231_addin0[] = {0}; +static const unsigned char kat2231_addin1[] = {0}; +static const unsigned char kat2231_retbits[] = { + 0xa1, 0x58, 0x0a, 0x82, 0xcd, 0xc0, 0x86, 0x11, 0xf8, 0x6b, 0x0f, 0x1b, + 0xe4, 0x88, 0x10, 0xe3, 0x2f, 0x08, 0x48, 0x28, 0xe6, 0x15, 0x6c, 0xde, + 0x1a, 0x2b, 0x20, 0x4b, 0x5d, 0x30, 0x63, 0x6f, 0x1f, 0x06, 0x32, 0x4e, + 0x21, 0x5d, 0x1c, 0x0d, 0xe8, 0x8d, 0x60, 0x34, 0xa8, 0xe7, 0x36, 0x9e, + 0xa8, 0x45, 0xf8, 0xd4, 0xaf, 0xcb, 0xe9, 0x3b, 0xb2, 0x47, 0x0d, 0xf1, + 0x2a, 0x99, 0x3f, 0xe3, +}; +static const struct drbg_kat_pr_false kat2231_t = { + 10, kat2231_entropyin, kat2231_nonce, kat2231_persstr, + kat2231_entropyinreseed, kat2231_addinreseed, kat2231_addin0, + kat2231_addin1, kat2231_retbits +}; +static const struct drbg_kat kat2231 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2231_t +}; + +static const unsigned char kat2232_entropyin[] = { + 0xc9, 0x6d, 0xa7, 0x20, 0x4d, 0xf6, 0x93, 0x47, 0xb9, 0x1d, 0xec, 0x74, + 0x3d, 0xcb, 0xc8, 0x6c, 0xa6, 0x69, 0x0e, 0xba, 0x81, 0x93, 0xd1, 0x43, + 0x4b, 0x1b, 0x87, 0xc4, 0xaf, 0x03, 0xcc, 0x1d, +}; +static const unsigned char kat2232_nonce[] = {0}; +static const unsigned char kat2232_persstr[] = {0}; +static const unsigned char kat2232_entropyinreseed[] = { + 0x42, 0x96, 0x74, 0xcb, 0x12, 0xe3, 0x55, 0x88, 0x4c, 0x33, 0xf2, 0x9b, + 0x46, 0xe2, 0x57, 0xf0, 0xfb, 0x0c, 0x38, 0xfa, 0xc9, 0x03, 0x9c, 0x0f, + 0xfc, 0x2a, 0x77, 0xb2, 0x9a, 0xcd, 0xf1, 0xc6, +}; +static const unsigned char kat2232_addinreseed[] = {0}; +static const unsigned char kat2232_addin0[] = {0}; +static const unsigned char kat2232_addin1[] = {0}; +static const unsigned char kat2232_retbits[] = { + 0x28, 0x6f, 0x17, 0x37, 0x72, 0xd9, 0x42, 0x3e, 0x8a, 0x49, 0xa2, 0xa6, + 0x77, 0x36, 0x6f, 0xfe, 0x21, 0x25, 0xe1, 0x16, 0x64, 0x6e, 0x79, 0x9d, + 0x1c, 0x37, 0x7b, 0x33, 0x0f, 0x5a, 0x17, 0xb8, 0x2a, 0xdb, 0x65, 0x2b, + 0xa9, 0xf1, 0x4a, 0x57, 0x0d, 0x3c, 0xd3, 0xb5, 0xe2, 0xfb, 0xb8, 0xdf, + 0x03, 0x11, 0x9d, 0xac, 0x21, 0x9d, 0x87, 0x2b, 0x11, 0xe7, 0x50, 0xfd, + 0xb3, 0x26, 0xa6, 0x2d, +}; +static const struct drbg_kat_pr_false kat2232_t = { + 11, kat2232_entropyin, kat2232_nonce, kat2232_persstr, + kat2232_entropyinreseed, kat2232_addinreseed, kat2232_addin0, + kat2232_addin1, kat2232_retbits +}; +static const struct drbg_kat kat2232 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2232_t +}; + +static const unsigned char kat2233_entropyin[] = { + 0x5d, 0x31, 0xf8, 0x1a, 0x37, 0xc9, 0xb5, 0xd8, 0x4b, 0x87, 0x6d, 0x8c, + 0x38, 0x25, 0xb0, 0x0e, 0xdc, 0x9f, 0x4a, 0x51, 0xfe, 0x82, 0x14, 0x1d, + 0xdc, 0x58, 0xb6, 0x5d, 0x5f, 0x9a, 0x37, 0xcd, +}; +static const unsigned char kat2233_nonce[] = {0}; +static const unsigned char kat2233_persstr[] = {0}; +static const unsigned char kat2233_entropyinreseed[] = { + 0x41, 0xda, 0x02, 0x30, 0xbb, 0x94, 0xf2, 0x60, 0x14, 0x47, 0xe4, 0x90, + 0xb0, 0x22, 0x0e, 0x7a, 0x1f, 0x4b, 0x2c, 0x42, 0x0e, 0xc6, 0xde, 0x0d, + 0x67, 0x5f, 0x63, 0x43, 0xf3, 0x4f, 0x1b, 0x6d, +}; +static const unsigned char kat2233_addinreseed[] = {0}; +static const unsigned char kat2233_addin0[] = {0}; +static const unsigned char kat2233_addin1[] = {0}; +static const unsigned char kat2233_retbits[] = { + 0xb6, 0x18, 0xaf, 0xef, 0x11, 0x32, 0x93, 0x5a, 0xe9, 0xed, 0x83, 0xe1, + 0x3c, 0xc7, 0x07, 0x83, 0x32, 0x19, 0xff, 0xbd, 0x88, 0x5e, 0xd7, 0xaa, + 0x27, 0x9b, 0x6d, 0xf4, 0xef, 0x62, 0x86, 0x4b, 0x3f, 0xa3, 0xcc, 0x7e, + 0xcb, 0xe7, 0xd7, 0xe1, 0xf3, 0xb0, 0xd5, 0x35, 0x47, 0x06, 0x97, 0x3a, + 0x85, 0x94, 0xe4, 0x12, 0x43, 0x57, 0xca, 0xf3, 0x1f, 0xfc, 0x1d, 0x04, + 0xd4, 0x9d, 0xf6, 0x9b, +}; +static const struct drbg_kat_pr_false kat2233_t = { + 12, kat2233_entropyin, kat2233_nonce, kat2233_persstr, + kat2233_entropyinreseed, kat2233_addinreseed, kat2233_addin0, + kat2233_addin1, kat2233_retbits +}; +static const struct drbg_kat kat2233 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2233_t +}; + +static const unsigned char kat2234_entropyin[] = { + 0xc5, 0x0c, 0xea, 0xce, 0x05, 0xb9, 0xaa, 0xc3, 0x40, 0x7c, 0x91, 0xfc, + 0x40, 0x1e, 0x17, 0x78, 0xd2, 0xd7, 0xaa, 0x44, 0xb7, 0xa4, 0x2a, 0xf6, + 0x77, 0x4f, 0xd8, 0x0a, 0x13, 0x9b, 0x4e, 0x3c, +}; +static const unsigned char kat2234_nonce[] = {0}; +static const unsigned char kat2234_persstr[] = {0}; +static const unsigned char kat2234_entropyinreseed[] = { + 0x15, 0xfe, 0x0d, 0xba, 0x96, 0x7b, 0xe9, 0xc7, 0x66, 0x87, 0xc8, 0x2d, + 0x74, 0xb0, 0xa0, 0x18, 0xcd, 0x96, 0xa8, 0x1c, 0xfb, 0xd0, 0x2e, 0x60, + 0x0f, 0x99, 0xf1, 0xd3, 0xe9, 0x65, 0xfa, 0xe3, +}; +static const unsigned char kat2234_addinreseed[] = {0}; +static const unsigned char kat2234_addin0[] = {0}; +static const unsigned char kat2234_addin1[] = {0}; +static const unsigned char kat2234_retbits[] = { + 0xc0, 0xd8, 0x0e, 0x37, 0xd2, 0x02, 0x28, 0xb9, 0xe0, 0x7b, 0xa8, 0xda, + 0x21, 0x78, 0xbf, 0x18, 0xea, 0x8d, 0x49, 0x7c, 0xda, 0xe2, 0x7a, 0xb3, + 0x7d, 0x17, 0xeb, 0xf9, 0xba, 0xee, 0x9a, 0x4b, 0x88, 0x95, 0x33, 0x01, + 0xc3, 0x64, 0x2d, 0xe5, 0x96, 0x5a, 0x6c, 0xa7, 0xf9, 0x0e, 0x9f, 0x48, + 0xf8, 0xe6, 0x2e, 0x33, 0x8c, 0x77, 0xeb, 0x85, 0x9c, 0x69, 0x60, 0x88, + 0x67, 0x9f, 0xb0, 0xa4, +}; +static const struct drbg_kat_pr_false kat2234_t = { + 13, kat2234_entropyin, kat2234_nonce, kat2234_persstr, + kat2234_entropyinreseed, kat2234_addinreseed, kat2234_addin0, + kat2234_addin1, kat2234_retbits +}; +static const struct drbg_kat kat2234 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2234_t +}; + +static const unsigned char kat2235_entropyin[] = { + 0xac, 0x56, 0x68, 0xac, 0x05, 0x4f, 0x73, 0x2d, 0x2b, 0xcd, 0x88, 0x56, + 0x16, 0x42, 0xc5, 0xa7, 0xca, 0x98, 0xc6, 0x8e, 0x34, 0x1c, 0xf0, 0xcf, + 0x18, 0x87, 0x3f, 0xea, 0x93, 0xef, 0x33, 0xfe, +}; +static const unsigned char kat2235_nonce[] = {0}; +static const unsigned char kat2235_persstr[] = {0}; +static const unsigned char kat2235_entropyinreseed[] = { + 0x4a, 0x4d, 0x08, 0x8b, 0xeb, 0x98, 0x43, 0xe4, 0x62, 0x2c, 0xdb, 0x0c, + 0x5a, 0x68, 0x51, 0x58, 0x7f, 0x2b, 0x47, 0x2d, 0xc5, 0xd7, 0x34, 0x21, + 0x14, 0x09, 0xba, 0xce, 0xc7, 0xb2, 0xac, 0x06, +}; +static const unsigned char kat2235_addinreseed[] = {0}; +static const unsigned char kat2235_addin0[] = {0}; +static const unsigned char kat2235_addin1[] = {0}; +static const unsigned char kat2235_retbits[] = { + 0xb2, 0x01, 0x3a, 0x36, 0x3f, 0x3e, 0xe0, 0x1a, 0xb8, 0x57, 0x3f, 0x3e, + 0x3e, 0xed, 0x32, 0x28, 0x51, 0x08, 0xc3, 0xed, 0x3b, 0xf2, 0x31, 0xc0, + 0x66, 0x17, 0x6e, 0xd9, 0x01, 0xe4, 0xd6, 0xff, 0xaa, 0xf0, 0xcf, 0xd1, + 0x2d, 0x63, 0xd7, 0xc1, 0x9f, 0x6c, 0x46, 0x0b, 0xaf, 0x43, 0x4a, 0x1d, + 0x6a, 0x55, 0x2c, 0x62, 0x27, 0x4b, 0xcb, 0x74, 0x69, 0xf7, 0x00, 0x9c, + 0x0b, 0xea, 0xb9, 0x72, +}; +static const struct drbg_kat_pr_false kat2235_t = { + 14, kat2235_entropyin, kat2235_nonce, kat2235_persstr, + kat2235_entropyinreseed, kat2235_addinreseed, kat2235_addin0, + kat2235_addin1, kat2235_retbits +}; +static const struct drbg_kat kat2235 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2235_t +}; + +static const unsigned char kat2236_entropyin[] = { + 0xf8, 0x17, 0xed, 0xc3, 0x35, 0x37, 0xaf, 0x62, 0xb7, 0xe8, 0xc0, 0x87, + 0x45, 0xa5, 0x9a, 0xb0, 0x45, 0xa4, 0x99, 0x1f, 0x64, 0x89, 0xed, 0x48, + 0x16, 0x8b, 0xad, 0x05, 0x5a, 0x70, 0x42, 0x4b, +}; +static const unsigned char kat2236_nonce[] = {0}; +static const unsigned char kat2236_persstr[] = {0}; +static const unsigned char kat2236_entropyinreseed[] = { + 0xd5, 0x2b, 0xaa, 0x36, 0x24, 0xc2, 0x63, 0x30, 0x4c, 0x09, 0x6a, 0x48, + 0x35, 0x6f, 0x06, 0x55, 0x19, 0xc7, 0xa7, 0x47, 0x08, 0x91, 0xf6, 0xce, + 0x3a, 0x20, 0xa4, 0xf4, 0x7e, 0xfd, 0x21, 0xc4, +}; +static const unsigned char kat2236_addinreseed[] = { + 0x63, 0x26, 0x5b, 0xec, 0xde, 0xaa, 0xdb, 0x76, 0xa6, 0x74, 0x22, 0x1d, + 0xb1, 0xd8, 0x41, 0xba, 0xd5, 0x6b, 0xbc, 0x5d, 0x2a, 0xc1, 0xa5, 0x4e, + 0xc4, 0x4d, 0xea, 0xc5, 0xf7, 0xf2, 0x83, 0x68, +}; +static const unsigned char kat2236_addin0[] = { + 0xf7, 0x8d, 0x6c, 0xb6, 0xea, 0x09, 0x45, 0xe8, 0xff, 0x9b, 0xc6, 0xf0, + 0xc2, 0x03, 0xd0, 0x6b, 0xf2, 0x78, 0x78, 0x35, 0xef, 0x4a, 0x94, 0xf1, + 0x0b, 0x90, 0x45, 0x92, 0xee, 0xd3, 0x1a, 0xd7, +}; +static const unsigned char kat2236_addin1[] = { + 0x88, 0x11, 0xee, 0x4c, 0xad, 0x91, 0x74, 0x75, 0xde, 0x9a, 0x7c, 0xa1, + 0x07, 0x49, 0x80, 0x67, 0xd3, 0x94, 0x4b, 0x14, 0xe2, 0x03, 0xc3, 0xcf, + 0x4c, 0x33, 0x87, 0x66, 0xf0, 0x6d, 0x00, 0xf7, +}; +static const unsigned char kat2236_retbits[] = { + 0xbb, 0x71, 0xbc, 0x49, 0x79, 0x4d, 0xfe, 0x83, 0xcf, 0x07, 0xf4, 0x2e, + 0xeb, 0x6e, 0x41, 0xa4, 0x96, 0x10, 0xf1, 0xa1, 0xe5, 0x74, 0x59, 0x76, + 0x4a, 0x40, 0x61, 0x1b, 0x1b, 0x14, 0x47, 0xc2, 0x84, 0x39, 0x40, 0xa4, + 0x76, 0x0c, 0xf3, 0x3b, 0x41, 0xf5, 0xf1, 0x02, 0x51, 0xa8, 0xe8, 0x3a, + 0xea, 0xfa, 0xba, 0xed, 0x1c, 0x28, 0x09, 0x1a, 0xb5, 0x52, 0xbc, 0x76, + 0x22, 0xf6, 0xea, 0xc3, +}; +static const struct drbg_kat_pr_false kat2236_t = { + 0, kat2236_entropyin, kat2236_nonce, kat2236_persstr, + kat2236_entropyinreseed, kat2236_addinreseed, kat2236_addin0, + kat2236_addin1, kat2236_retbits +}; +static const struct drbg_kat kat2236 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2236_t +}; + +static const unsigned char kat2237_entropyin[] = { + 0x85, 0x3f, 0x0b, 0x57, 0x15, 0x6c, 0xc0, 0x85, 0xfe, 0x4c, 0xd2, 0xd9, + 0xb9, 0x44, 0xf8, 0xe8, 0x5f, 0xd9, 0x81, 0xcf, 0xf2, 0x8f, 0xcf, 0xac, + 0x09, 0x2a, 0x28, 0x16, 0x27, 0xc4, 0x8a, 0x96, +}; +static const unsigned char kat2237_nonce[] = {0}; +static const unsigned char kat2237_persstr[] = {0}; +static const unsigned char kat2237_entropyinreseed[] = { + 0x0c, 0x39, 0x92, 0xe1, 0xc6, 0xc8, 0x6f, 0x77, 0x4f, 0x1f, 0x95, 0x11, + 0xda, 0x98, 0xaf, 0xef, 0xcd, 0x78, 0x0a, 0x11, 0xc5, 0xdd, 0x00, 0x0e, + 0x59, 0x74, 0x3b, 0xdc, 0xec, 0xcb, 0x43, 0x1c, +}; +static const unsigned char kat2237_addinreseed[] = { + 0x59, 0x8c, 0xf4, 0xba, 0xba, 0x27, 0xc1, 0x42, 0x68, 0xa8, 0x9f, 0x66, + 0x3b, 0x26, 0x27, 0x1b, 0x28, 0x7a, 0x4c, 0xc1, 0x97, 0xcb, 0xca, 0xec, + 0xf1, 0xdb, 0x68, 0x79, 0x20, 0x4d, 0x38, 0x41, +}; +static const unsigned char kat2237_addin0[] = { + 0x64, 0x9a, 0x28, 0xe6, 0x0b, 0x85, 0x1f, 0x05, 0x41, 0x40, 0xbf, 0xa7, + 0x5c, 0x37, 0x08, 0x55, 0xfe, 0x49, 0x6b, 0x17, 0x5f, 0x92, 0x5e, 0xc4, + 0xc5, 0x65, 0x44, 0x75, 0xad, 0xcf, 0x12, 0x10, +}; +static const unsigned char kat2237_addin1[] = { + 0x83, 0xb9, 0x2f, 0xa5, 0x02, 0x8d, 0x74, 0x22, 0x84, 0x07, 0xee, 0x65, + 0x42, 0xdf, 0x48, 0x1d, 0x35, 0xb9, 0xc9, 0x77, 0x4b, 0x0e, 0xab, 0x68, + 0x60, 0x7a, 0x51, 0x6d, 0xea, 0x99, 0x3c, 0x5d, +}; +static const unsigned char kat2237_retbits[] = { + 0x96, 0x77, 0xab, 0xda, 0xa3, 0x02, 0xb2, 0x74, 0x64, 0x54, 0x1b, 0x03, + 0x55, 0xa3, 0x17, 0x07, 0xeb, 0x3f, 0xe9, 0x0d, 0xcb, 0xa3, 0xe1, 0x95, + 0x22, 0x3f, 0x41, 0x9d, 0xa2, 0xd1, 0x74, 0x38, 0xf4, 0xc5, 0xe3, 0xe1, + 0x92, 0xcd, 0xcf, 0x48, 0x97, 0xa1, 0x4b, 0x27, 0xee, 0xa6, 0x35, 0x25, + 0x11, 0xb7, 0xa9, 0x53, 0xf7, 0xf4, 0xd1, 0x29, 0x8b, 0x40, 0x0e, 0x03, + 0xb6, 0x7a, 0xa1, 0x1a, +}; +static const struct drbg_kat_pr_false kat2237_t = { + 1, kat2237_entropyin, kat2237_nonce, kat2237_persstr, + kat2237_entropyinreseed, kat2237_addinreseed, kat2237_addin0, + kat2237_addin1, kat2237_retbits +}; +static const struct drbg_kat kat2237 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2237_t +}; + +static const unsigned char kat2238_entropyin[] = { + 0x96, 0x65, 0x64, 0xca, 0x87, 0x82, 0x2f, 0xe8, 0x40, 0x97, 0x2d, 0xf9, + 0xbb, 0xdb, 0x4c, 0x54, 0x37, 0xfe, 0xad, 0x0b, 0x04, 0xb3, 0x5e, 0xeb, + 0xe3, 0x21, 0xe4, 0x9c, 0xdc, 0x48, 0x01, 0x39, +}; +static const unsigned char kat2238_nonce[] = {0}; +static const unsigned char kat2238_persstr[] = {0}; +static const unsigned char kat2238_entropyinreseed[] = { + 0xb7, 0xb9, 0xa1, 0xdf, 0xa4, 0xac, 0x43, 0x5b, 0xc4, 0x3f, 0x40, 0x5a, + 0xc5, 0x32, 0xfb, 0x8b, 0x99, 0x54, 0xb9, 0x5a, 0x00, 0x17, 0xb9, 0x0e, + 0xb6, 0xa7, 0xdc, 0x49, 0xed, 0x5f, 0x71, 0x6f, +}; +static const unsigned char kat2238_addinreseed[] = { + 0x20, 0x28, 0x67, 0xf8, 0x6b, 0xcf, 0xe0, 0xd2, 0xe8, 0x84, 0xa0, 0x56, + 0x4a, 0x9b, 0x37, 0xfd, 0xbf, 0x70, 0x5b, 0xc3, 0xb4, 0x49, 0xde, 0xa0, + 0xd9, 0x55, 0x3c, 0xe0, 0x89, 0x3d, 0xa9, 0xc1, +}; +static const unsigned char kat2238_addin0[] = { + 0x1a, 0x57, 0xa3, 0xa6, 0x35, 0x68, 0x0f, 0xdc, 0xcb, 0x04, 0x89, 0x96, + 0x54, 0xd2, 0x8b, 0x01, 0xdb, 0xcb, 0x61, 0xc5, 0xe6, 0xd7, 0x08, 0x00, + 0xe0, 0xfc, 0x8b, 0x69, 0x4a, 0xc1, 0xeb, 0xf9, +}; +static const unsigned char kat2238_addin1[] = { + 0x5b, 0x07, 0xdc, 0xaa, 0x29, 0x4a, 0x81, 0xf4, 0x12, 0x1a, 0x76, 0xe9, + 0xdd, 0x25, 0xab, 0x6d, 0xe0, 0x15, 0x28, 0x76, 0x1e, 0x2a, 0x61, 0xd8, + 0x7d, 0x63, 0x07, 0x86, 0xe5, 0x9c, 0x16, 0x5d, +}; +static const unsigned char kat2238_retbits[] = { + 0x42, 0xcc, 0x3f, 0x56, 0x55, 0x16, 0xbd, 0x9c, 0x08, 0xd9, 0x13, 0x59, + 0xcd, 0x03, 0x62, 0x8b, 0x91, 0xb4, 0xcc, 0x11, 0x44, 0x6c, 0xba, 0xd6, + 0xea, 0xe1, 0xf9, 0xb6, 0xc9, 0xce, 0x2c, 0x9b, 0x57, 0xbe, 0xd0, 0x95, + 0x02, 0x83, 0xe8, 0xef, 0x2f, 0x78, 0x8f, 0x36, 0x2b, 0x32, 0xee, 0x35, + 0xd1, 0x63, 0x70, 0xc2, 0x3a, 0x03, 0x3e, 0xfe, 0x39, 0xbc, 0x89, 0x7d, + 0xd6, 0x7d, 0xc2, 0xe3, +}; +static const struct drbg_kat_pr_false kat2238_t = { + 2, kat2238_entropyin, kat2238_nonce, kat2238_persstr, + kat2238_entropyinreseed, kat2238_addinreseed, kat2238_addin0, + kat2238_addin1, kat2238_retbits +}; +static const struct drbg_kat kat2238 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2238_t +}; + +static const unsigned char kat2239_entropyin[] = { + 0x5f, 0x25, 0xed, 0x0a, 0x49, 0xa9, 0x5c, 0x85, 0x63, 0x02, 0x42, 0x0f, + 0x8e, 0x37, 0xb2, 0xb8, 0x12, 0xc4, 0x7e, 0x14, 0x0e, 0xf9, 0x54, 0xae, + 0xe4, 0x67, 0x49, 0x77, 0x6b, 0x05, 0x28, 0xff, +}; +static const unsigned char kat2239_nonce[] = {0}; +static const unsigned char kat2239_persstr[] = {0}; +static const unsigned char kat2239_entropyinreseed[] = { + 0xb1, 0xf1, 0x31, 0xa6, 0x0b, 0x60, 0xc8, 0x10, 0x17, 0x55, 0x9d, 0xab, + 0x4f, 0x69, 0x6a, 0x1a, 0xf4, 0x35, 0x10, 0x69, 0x04, 0xe2, 0x97, 0x95, + 0xad, 0x78, 0xa8, 0x1b, 0x27, 0xfe, 0x9e, 0xb3, +}; +static const unsigned char kat2239_addinreseed[] = { + 0x9d, 0x9a, 0xad, 0x67, 0x43, 0xde, 0x48, 0xc9, 0xd8, 0x65, 0xb6, 0x11, + 0xa0, 0x1d, 0xa3, 0x96, 0x46, 0x46, 0x93, 0x46, 0xe1, 0x56, 0x50, 0xfd, + 0xc9, 0xcb, 0x08, 0x4f, 0x35, 0xc2, 0xed, 0x8d, +}; +static const unsigned char kat2239_addin0[] = { + 0xc4, 0x47, 0x88, 0x2f, 0x6c, 0x4a, 0x3f, 0x92, 0x0d, 0xb5, 0xf0, 0xf5, + 0x3e, 0xf1, 0xa4, 0x96, 0x03, 0x23, 0x80, 0xf3, 0x34, 0xe4, 0x69, 0x28, + 0x88, 0xa3, 0x7d, 0xe9, 0x3b, 0x39, 0xe7, 0xb0, +}; +static const unsigned char kat2239_addin1[] = { + 0x5b, 0x4a, 0x50, 0x38, 0x6a, 0x7a, 0x2b, 0xa1, 0x2c, 0xaf, 0x2f, 0xb1, + 0x98, 0x9e, 0x50, 0xe7, 0x6d, 0xfb, 0xee, 0x2f, 0x31, 0xca, 0xd2, 0x88, + 0x1e, 0x6e, 0xfb, 0x75, 0xcf, 0x5f, 0x91, 0x93, +}; +static const unsigned char kat2239_retbits[] = { + 0xb4, 0x4f, 0x0b, 0x16, 0x5d, 0x9e, 0x62, 0x16, 0xff, 0xec, 0xf4, 0x86, + 0xd3, 0x78, 0x6a, 0x78, 0xbf, 0x59, 0x39, 0xd5, 0x50, 0x96, 0x6e, 0x88, + 0xca, 0xd2, 0xd3, 0x9c, 0xf1, 0x75, 0xf7, 0xe9, 0x2c, 0xf1, 0xe1, 0x8f, + 0x11, 0xce, 0x11, 0x08, 0x89, 0x40, 0x5d, 0xb7, 0x39, 0xe4, 0x0a, 0x5d, + 0x18, 0x5f, 0x02, 0xb1, 0x2b, 0xdf, 0xa5, 0xb4, 0xb9, 0x23, 0xb8, 0x48, + 0x6f, 0x0a, 0xc5, 0x40, +}; +static const struct drbg_kat_pr_false kat2239_t = { + 3, kat2239_entropyin, kat2239_nonce, kat2239_persstr, + kat2239_entropyinreseed, kat2239_addinreseed, kat2239_addin0, + kat2239_addin1, kat2239_retbits +}; +static const struct drbg_kat kat2239 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2239_t +}; + +static const unsigned char kat2240_entropyin[] = { + 0xd9, 0x8b, 0x88, 0xd9, 0x57, 0xd4, 0x9a, 0xdb, 0x78, 0x9c, 0xf7, 0xda, + 0xe5, 0x77, 0x36, 0xb2, 0xad, 0x50, 0xb2, 0xce, 0xa3, 0x62, 0xf0, 0x54, + 0x8a, 0xa0, 0xfa, 0xfb, 0xb7, 0x02, 0x7e, 0x92, +}; +static const unsigned char kat2240_nonce[] = {0}; +static const unsigned char kat2240_persstr[] = {0}; +static const unsigned char kat2240_entropyinreseed[] = { + 0xbc, 0x96, 0x4b, 0xbb, 0x80, 0x53, 0x2f, 0xfd, 0x6a, 0xfa, 0xf3, 0xa0, + 0xc6, 0xdc, 0x36, 0x92, 0xff, 0x51, 0x13, 0xe7, 0x42, 0xf4, 0x7d, 0xcc, + 0x0e, 0x33, 0x69, 0x49, 0xbf, 0x6d, 0x7a, 0xf2, +}; +static const unsigned char kat2240_addinreseed[] = { + 0x7d, 0xa5, 0x5d, 0x04, 0x60, 0x39, 0x67, 0xc5, 0x26, 0x6c, 0x13, 0x80, + 0x47, 0x0f, 0x19, 0xdc, 0xf4, 0x53, 0xd2, 0x7f, 0x66, 0x0d, 0x08, 0x83, + 0x93, 0x08, 0x5c, 0xa4, 0xa3, 0x4f, 0x79, 0x2e, +}; +static const unsigned char kat2240_addin0[] = { + 0xd7, 0x49, 0x73, 0x7b, 0x22, 0xc2, 0x37, 0x47, 0x1b, 0x9d, 0x78, 0x5e, + 0x4f, 0xf7, 0x52, 0x95, 0x1b, 0x49, 0x99, 0xbe, 0x82, 0xbe, 0xa9, 0x2c, + 0xf5, 0xd3, 0x62, 0x3e, 0xb2, 0x87, 0x40, 0x0f, +}; +static const unsigned char kat2240_addin1[] = { + 0x97, 0x23, 0xd0, 0xe7, 0x2e, 0xe9, 0x65, 0x0d, 0xb1, 0x5f, 0x79, 0xf5, + 0xbe, 0x1f, 0xc7, 0x8c, 0xd7, 0x82, 0x5e, 0xa1, 0x02, 0xb4, 0x4a, 0x4b, + 0xd9, 0x6c, 0x51, 0xf4, 0x51, 0xff, 0x5c, 0xed, +}; +static const unsigned char kat2240_retbits[] = { + 0x89, 0x59, 0x66, 0xcb, 0xa1, 0x7b, 0x7f, 0x6f, 0x0a, 0xfa, 0x16, 0x1f, + 0xfa, 0x23, 0xc9, 0x7d, 0x7b, 0xb9, 0x80, 0xbd, 0x2f, 0xf9, 0x8e, 0xc2, + 0x25, 0x50, 0x07, 0xc5, 0xe2, 0xfb, 0x82, 0xb8, 0x61, 0xce, 0x0a, 0x82, + 0x48, 0x0b, 0x0c, 0x06, 0xaf, 0xb1, 0xb4, 0xed, 0x62, 0x26, 0x22, 0x98, + 0x2e, 0x80, 0x60, 0x16, 0x9a, 0x36, 0xb1, 0x43, 0xa8, 0x20, 0x13, 0xbe, + 0xfb, 0x37, 0xf6, 0xea, +}; +static const struct drbg_kat_pr_false kat2240_t = { + 4, kat2240_entropyin, kat2240_nonce, kat2240_persstr, + kat2240_entropyinreseed, kat2240_addinreseed, kat2240_addin0, + kat2240_addin1, kat2240_retbits +}; +static const struct drbg_kat kat2240 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2240_t +}; + +static const unsigned char kat2241_entropyin[] = { + 0xb0, 0xe1, 0xc0, 0x50, 0x4f, 0xc2, 0xee, 0xe3, 0x9b, 0xb6, 0x10, 0x7d, + 0xea, 0x06, 0x99, 0x0a, 0x9b, 0x2e, 0xae, 0x04, 0x24, 0x26, 0x63, 0xbc, + 0xb5, 0xf4, 0x19, 0x2d, 0x15, 0x05, 0x2c, 0x13, +}; +static const unsigned char kat2241_nonce[] = {0}; +static const unsigned char kat2241_persstr[] = {0}; +static const unsigned char kat2241_entropyinreseed[] = { + 0x4f, 0xd5, 0x25, 0x07, 0x93, 0x47, 0x65, 0x17, 0x84, 0x7d, 0xb8, 0xf4, + 0xe8, 0x06, 0xc3, 0x40, 0x24, 0x4b, 0xc2, 0x44, 0xdb, 0x15, 0xe7, 0x4f, + 0x7e, 0x0a, 0xb1, 0xaf, 0x9c, 0xb3, 0xfa, 0xf9, +}; +static const unsigned char kat2241_addinreseed[] = { + 0xd1, 0x60, 0xbb, 0x1f, 0xcc, 0xc7, 0xaf, 0xd6, 0xea, 0x81, 0x87, 0x3c, + 0xd7, 0xba, 0x7a, 0x09, 0x38, 0xd3, 0xd7, 0xba, 0x4a, 0xef, 0x6b, 0xc1, + 0xc7, 0xdb, 0x63, 0x1f, 0x07, 0x71, 0x11, 0x4e, +}; +static const unsigned char kat2241_addin0[] = { + 0x75, 0x06, 0x78, 0xd7, 0xfe, 0x88, 0x82, 0xf3, 0xda, 0xf7, 0x10, 0xd7, + 0x95, 0xef, 0xdd, 0xe4, 0x27, 0xcd, 0xe0, 0x9d, 0x2b, 0x9e, 0x59, 0x6a, + 0xf9, 0x83, 0x5b, 0x7c, 0x7c, 0x0b, 0x28, 0x6e, +}; +static const unsigned char kat2241_addin1[] = { + 0x57, 0x0a, 0x22, 0x9e, 0xd5, 0xcd, 0x24, 0xe6, 0x57, 0xa2, 0x0c, 0x0e, + 0x00, 0x9b, 0x78, 0x6f, 0xd1, 0xa3, 0x0b, 0xc8, 0x0b, 0x6d, 0x49, 0x17, + 0x4b, 0x4c, 0xba, 0xcf, 0x67, 0x83, 0xcc, 0x5b, +}; +static const unsigned char kat2241_retbits[] = { + 0x07, 0x2a, 0x9e, 0x3a, 0x66, 0xf2, 0x9c, 0x33, 0x5f, 0xa0, 0x91, 0xaf, + 0x47, 0x23, 0x3c, 0x4a, 0x9a, 0xeb, 0x43, 0x1c, 0xdb, 0x5e, 0x8c, 0xdf, + 0x7b, 0xa5, 0xa5, 0x64, 0x48, 0xd6, 0x33, 0xc1, 0xa2, 0x63, 0x85, 0xeb, + 0x88, 0x90, 0x7f, 0x13, 0x94, 0x1a, 0xb1, 0x6f, 0xe8, 0x0c, 0x5f, 0x28, + 0x8f, 0x3e, 0x78, 0x9a, 0x63, 0x4f, 0xa0, 0x79, 0x6c, 0x30, 0x80, 0xfe, + 0x2f, 0x43, 0x5a, 0x88, +}; +static const struct drbg_kat_pr_false kat2241_t = { + 5, kat2241_entropyin, kat2241_nonce, kat2241_persstr, + kat2241_entropyinreseed, kat2241_addinreseed, kat2241_addin0, + kat2241_addin1, kat2241_retbits +}; +static const struct drbg_kat kat2241 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2241_t +}; + +static const unsigned char kat2242_entropyin[] = { + 0x7c, 0x9d, 0xca, 0x70, 0xb3, 0xba, 0x24, 0xe3, 0x17, 0x2a, 0x89, 0xa9, + 0xf1, 0x7f, 0xe5, 0xcc, 0x75, 0x7e, 0x0f, 0xc0, 0x54, 0x94, 0x8b, 0xfd, + 0x1a, 0x1b, 0x80, 0xa6, 0x93, 0x6e, 0xad, 0xcf, +}; +static const unsigned char kat2242_nonce[] = {0}; +static const unsigned char kat2242_persstr[] = {0}; +static const unsigned char kat2242_entropyinreseed[] = { + 0x84, 0x7f, 0xca, 0x31, 0x03, 0xb6, 0xb1, 0x11, 0x48, 0x51, 0x46, 0x70, + 0xba, 0x38, 0x3d, 0xbd, 0x10, 0x46, 0x12, 0x01, 0x9d, 0xc6, 0x35, 0xb4, + 0x49, 0xe0, 0x88, 0x02, 0xd6, 0x5e, 0xa4, 0x88, +}; +static const unsigned char kat2242_addinreseed[] = { + 0xca, 0x08, 0x4e, 0xcb, 0x4d, 0xc2, 0x0d, 0x17, 0x6d, 0x50, 0x4a, 0x9a, + 0x95, 0xa9, 0xcf, 0x66, 0x6d, 0xd1, 0x2a, 0x63, 0x59, 0x8f, 0x7e, 0x32, + 0x06, 0xe7, 0x67, 0x3c, 0xbd, 0x31, 0x28, 0xa0, +}; +static const unsigned char kat2242_addin0[] = { + 0xf4, 0x10, 0x46, 0xab, 0x85, 0x8e, 0x68, 0x85, 0x46, 0xa1, 0x2c, 0x2c, + 0xe9, 0x55, 0xe3, 0xc3, 0xa2, 0xb9, 0x8b, 0xf0, 0xd3, 0x86, 0x1a, 0x20, + 0x90, 0x34, 0x0a, 0x59, 0x2c, 0xee, 0x36, 0xc9, +}; +static const unsigned char kat2242_addin1[] = { + 0x6e, 0x61, 0x06, 0x0e, 0xcf, 0xe6, 0xd5, 0x67, 0xf3, 0x5f, 0x7a, 0xcc, + 0xeb, 0x07, 0x49, 0x72, 0x03, 0xea, 0x8b, 0xa9, 0x17, 0xb5, 0x6f, 0x81, + 0xed, 0xef, 0x02, 0x4a, 0x84, 0x9e, 0x8c, 0x84, +}; +static const unsigned char kat2242_retbits[] = { + 0x3a, 0x1e, 0x1e, 0xec, 0x45, 0x9c, 0x90, 0xfc, 0xee, 0x4c, 0x12, 0x41, + 0xf2, 0xa4, 0x9e, 0x5a, 0x2a, 0xa3, 0x1c, 0xe1, 0x69, 0x83, 0x05, 0x7a, + 0xd8, 0xd4, 0x3d, 0x3a, 0x88, 0x7c, 0xe3, 0x01, 0xf0, 0xd7, 0xa4, 0x55, + 0x8a, 0x07, 0x2b, 0xe3, 0x19, 0x8d, 0xb7, 0x31, 0x06, 0xee, 0x3c, 0xf6, + 0x30, 0xd4, 0xe4, 0xc1, 0x3a, 0xb3, 0x76, 0x7e, 0x81, 0xaf, 0x15, 0x68, + 0xef, 0x7a, 0x25, 0x1d, +}; +static const struct drbg_kat_pr_false kat2242_t = { + 6, kat2242_entropyin, kat2242_nonce, kat2242_persstr, + kat2242_entropyinreseed, kat2242_addinreseed, kat2242_addin0, + kat2242_addin1, kat2242_retbits +}; +static const struct drbg_kat kat2242 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2242_t +}; + +static const unsigned char kat2243_entropyin[] = { + 0x0b, 0x1b, 0xd6, 0x1c, 0x9c, 0xd2, 0xc1, 0xaa, 0x26, 0xb6, 0x8d, 0x2e, + 0x0e, 0x40, 0x9c, 0xe8, 0x7a, 0xfa, 0x40, 0xe0, 0x3a, 0x8d, 0xfa, 0xe6, + 0x14, 0x85, 0x3c, 0x1f, 0x3e, 0x50, 0x33, 0xa7, +}; +static const unsigned char kat2243_nonce[] = {0}; +static const unsigned char kat2243_persstr[] = {0}; +static const unsigned char kat2243_entropyinreseed[] = { + 0x96, 0x0e, 0x3e, 0xd2, 0x46, 0x66, 0x02, 0xc3, 0xa4, 0x56, 0xe0, 0x16, + 0x1d, 0x89, 0x24, 0x82, 0x82, 0x98, 0xeb, 0x5d, 0x3d, 0x4a, 0x0e, 0x28, + 0x97, 0xd3, 0xc2, 0x30, 0xfb, 0x12, 0xad, 0xf6, +}; +static const unsigned char kat2243_addinreseed[] = { + 0xfb, 0xb3, 0xf1, 0x6d, 0x70, 0xec, 0xd0, 0xf5, 0x81, 0x91, 0x4a, 0x1f, + 0xf8, 0xb1, 0xe5, 0x36, 0xaa, 0xe6, 0x05, 0x4f, 0x3d, 0x68, 0x88, 0xee, + 0x84, 0x36, 0xb2, 0xe6, 0x00, 0xda, 0x2e, 0xbd, +}; +static const unsigned char kat2243_addin0[] = { + 0x4f, 0xd3, 0x0a, 0x71, 0xf7, 0x86, 0xae, 0x96, 0x60, 0xe4, 0x21, 0x75, + 0xe6, 0x43, 0xbb, 0x99, 0x02, 0x3a, 0x66, 0x31, 0xc5, 0x2f, 0x51, 0xc5, + 0xb3, 0x5e, 0xa0, 0x56, 0xe9, 0xfd, 0x39, 0x52, +}; +static const unsigned char kat2243_addin1[] = { + 0xde, 0xa9, 0xa0, 0x94, 0x29, 0x0b, 0x68, 0xa7, 0x90, 0xea, 0x1a, 0x8b, + 0xe7, 0x08, 0x9a, 0xe1, 0x52, 0x28, 0xf6, 0x8d, 0xa0, 0xcb, 0x5f, 0xaa, + 0x70, 0x25, 0x8f, 0x51, 0x3c, 0x19, 0xe1, 0x61, +}; +static const unsigned char kat2243_retbits[] = { + 0x6a, 0x12, 0x37, 0x02, 0xdf, 0xfe, 0x38, 0xd5, 0x52, 0xc6, 0x3b, 0x1c, + 0xa9, 0xba, 0x01, 0xd0, 0xde, 0x1b, 0x8c, 0xc0, 0x64, 0xae, 0xd9, 0x52, + 0x96, 0xda, 0x45, 0x44, 0x69, 0xad, 0x28, 0xe2, 0xb7, 0x94, 0xea, 0xfc, + 0x04, 0xc4, 0x67, 0x78, 0xfa, 0x9e, 0x24, 0xe5, 0xc3, 0x86, 0x68, 0x40, + 0xc2, 0x91, 0xc8, 0x51, 0x48, 0x2c, 0xd3, 0x78, 0x8b, 0x2a, 0x5e, 0xb1, + 0x7f, 0x23, 0x63, 0x90, +}; +static const struct drbg_kat_pr_false kat2243_t = { + 7, kat2243_entropyin, kat2243_nonce, kat2243_persstr, + kat2243_entropyinreseed, kat2243_addinreseed, kat2243_addin0, + kat2243_addin1, kat2243_retbits +}; +static const struct drbg_kat kat2243 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2243_t +}; + +static const unsigned char kat2244_entropyin[] = { + 0xb7, 0x7f, 0xfb, 0xdb, 0x00, 0x58, 0x6f, 0x80, 0x34, 0xcf, 0xfb, 0x58, + 0xe2, 0xc4, 0x59, 0xf7, 0x73, 0xce, 0x20, 0x4d, 0x41, 0x3d, 0x4b, 0x7a, + 0x6f, 0xc3, 0x1c, 0x0f, 0x97, 0x0c, 0xab, 0x2c, +}; +static const unsigned char kat2244_nonce[] = {0}; +static const unsigned char kat2244_persstr[] = {0}; +static const unsigned char kat2244_entropyinreseed[] = { + 0xa9, 0x00, 0xa2, 0xb9, 0x40, 0x5f, 0x6b, 0x07, 0xcd, 0xf4, 0x4e, 0xb4, + 0x95, 0xb6, 0x2d, 0x35, 0xca, 0x66, 0xa1, 0x36, 0x2b, 0xd9, 0x6b, 0x62, + 0x31, 0x04, 0x39, 0x90, 0x26, 0x46, 0x99, 0xf1, +}; +static const unsigned char kat2244_addinreseed[] = { + 0x75, 0x8d, 0x5c, 0x4d, 0x93, 0x43, 0x4b, 0x02, 0xc6, 0xf6, 0x96, 0x4e, + 0xb7, 0xa9, 0x31, 0xbd, 0x33, 0x1d, 0x5a, 0x4e, 0x29, 0x0b, 0x32, 0x91, + 0xab, 0x51, 0x74, 0x71, 0x48, 0x21, 0x75, 0x3f, +}; +static const unsigned char kat2244_addin0[] = { + 0x58, 0x52, 0xbe, 0x3e, 0xf7, 0x36, 0x1d, 0xc7, 0x69, 0x6c, 0x0a, 0x35, + 0x8f, 0x30, 0xba, 0xb0, 0x59, 0xfe, 0xeb, 0xb7, 0x7a, 0x6b, 0xca, 0xa1, + 0x1d, 0x3c, 0x35, 0x83, 0xfb, 0x6a, 0x4e, 0x5f, +}; +static const unsigned char kat2244_addin1[] = { + 0xe5, 0x17, 0x82, 0x84, 0x83, 0xee, 0x9c, 0x1c, 0x1c, 0x65, 0x20, 0xbc, + 0x9b, 0xb6, 0x93, 0x24, 0xfa, 0x2e, 0x24, 0xc3, 0x56, 0x6e, 0xd5, 0xcf, + 0x0d, 0xb8, 0xc5, 0x84, 0x17, 0xc3, 0xd9, 0x9b, +}; +static const unsigned char kat2244_retbits[] = { + 0x5f, 0x01, 0x75, 0x9b, 0x2a, 0x74, 0x8b, 0x40, 0xf8, 0x10, 0x9d, 0x5f, + 0x78, 0xcb, 0xfb, 0x7b, 0xa2, 0x45, 0xb3, 0x65, 0x58, 0x85, 0x8b, 0x82, + 0x1e, 0xc4, 0x43, 0xc7, 0xca, 0x41, 0x47, 0x90, 0x3a, 0xe2, 0xbd, 0xc2, + 0xb1, 0x00, 0x89, 0x59, 0xfb, 0xe8, 0xa6, 0x60, 0x5a, 0x7e, 0x4f, 0x9a, + 0x22, 0xad, 0xf4, 0x31, 0x38, 0xbf, 0x96, 0xc6, 0xff, 0x1d, 0xf1, 0x00, + 0xdc, 0xbc, 0xb0, 0xb4, +}; +static const struct drbg_kat_pr_false kat2244_t = { + 8, kat2244_entropyin, kat2244_nonce, kat2244_persstr, + kat2244_entropyinreseed, kat2244_addinreseed, kat2244_addin0, + kat2244_addin1, kat2244_retbits +}; +static const struct drbg_kat kat2244 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2244_t +}; + +static const unsigned char kat2245_entropyin[] = { + 0x67, 0xf1, 0xfd, 0x05, 0xf2, 0xeb, 0xd3, 0x21, 0xfc, 0xdf, 0x41, 0x16, + 0x55, 0xc5, 0x55, 0x94, 0x5e, 0xf8, 0xa5, 0xe8, 0x68, 0xad, 0x38, 0x8a, + 0x68, 0x6e, 0xfe, 0x88, 0xec, 0xd1, 0x54, 0xc1, +}; +static const unsigned char kat2245_nonce[] = {0}; +static const unsigned char kat2245_persstr[] = {0}; +static const unsigned char kat2245_entropyinreseed[] = { + 0xa0, 0xdb, 0x50, 0x92, 0xdf, 0xdf, 0xef, 0x42, 0x44, 0x4d, 0x46, 0xc4, + 0xe3, 0x34, 0x42, 0xa3, 0x3f, 0x71, 0x4c, 0x05, 0x62, 0x4d, 0x24, 0xa9, + 0x22, 0xcd, 0x3d, 0xd2, 0x8f, 0x2b, 0x2e, 0x07, +}; +static const unsigned char kat2245_addinreseed[] = { + 0xbf, 0x0e, 0x3d, 0xb3, 0x1b, 0x0e, 0x3c, 0x19, 0x94, 0xe7, 0x31, 0xe4, + 0x78, 0x76, 0xeb, 0xfd, 0x62, 0xfb, 0x4d, 0x3c, 0x62, 0x07, 0x19, 0xf9, + 0xf0, 0x86, 0xf1, 0x7d, 0x51, 0xbb, 0xfc, 0x15, +}; +static const unsigned char kat2245_addin0[] = { + 0x1a, 0x28, 0x14, 0x05, 0x43, 0x45, 0xde, 0xb9, 0x23, 0x4b, 0x68, 0x37, + 0xd0, 0x3e, 0x6d, 0xe9, 0xec, 0x5c, 0xd3, 0x2d, 0x17, 0x62, 0x7f, 0x18, + 0x2c, 0x63, 0x3c, 0xc5, 0xc4, 0xca, 0x33, 0x4b, +}; +static const unsigned char kat2245_addin1[] = { + 0xe6, 0xc7, 0x77, 0x82, 0xb1, 0x43, 0x06, 0xff, 0x68, 0x82, 0xe2, 0x97, + 0xda, 0x10, 0xcc, 0x9e, 0x47, 0x73, 0x3e, 0xd1, 0xf7, 0xc8, 0x59, 0x2d, + 0x46, 0xc3, 0x6d, 0x9d, 0xf0, 0x77, 0x51, 0xae, +}; +static const unsigned char kat2245_retbits[] = { + 0x73, 0x74, 0x51, 0xd9, 0x56, 0xe5, 0x18, 0x46, 0xf6, 0xfa, 0xc8, 0x8b, + 0xc3, 0x31, 0x3f, 0xf4, 0x9b, 0x26, 0x41, 0x12, 0x79, 0x04, 0x2f, 0xa2, + 0x66, 0xcf, 0x55, 0x89, 0xd2, 0xff, 0x8a, 0x69, 0x1d, 0x22, 0x55, 0x8b, + 0xff, 0xb3, 0x6c, 0xdc, 0x23, 0xf0, 0x6d, 0xa0, 0xb5, 0xa3, 0xdf, 0xd7, + 0x98, 0x40, 0x3e, 0x9d, 0x48, 0x6b, 0x8e, 0x41, 0xa7, 0x2c, 0xf1, 0x47, + 0x3f, 0xed, 0xda, 0xc1, +}; +static const struct drbg_kat_pr_false kat2245_t = { + 9, kat2245_entropyin, kat2245_nonce, kat2245_persstr, + kat2245_entropyinreseed, kat2245_addinreseed, kat2245_addin0, + kat2245_addin1, kat2245_retbits +}; +static const struct drbg_kat kat2245 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2245_t +}; + +static const unsigned char kat2246_entropyin[] = { + 0x41, 0x65, 0xe4, 0xad, 0xb3, 0x7a, 0xfc, 0x2a, 0xe4, 0x35, 0xa9, 0x67, + 0x11, 0x47, 0xb9, 0x83, 0x10, 0x22, 0x79, 0xf7, 0x9b, 0x9a, 0x01, 0x88, + 0xc6, 0xfa, 0x4e, 0x5a, 0x22, 0xff, 0x55, 0xf4, +}; +static const unsigned char kat2246_nonce[] = {0}; +static const unsigned char kat2246_persstr[] = {0}; +static const unsigned char kat2246_entropyinreseed[] = { + 0x2d, 0x32, 0xed, 0x1d, 0x2e, 0x3a, 0x52, 0x17, 0x9d, 0x07, 0x79, 0xef, + 0x09, 0xd1, 0x20, 0xa9, 0x2b, 0x3a, 0x4d, 0xaa, 0x09, 0xa3, 0x00, 0x65, + 0xd6, 0x3b, 0xd1, 0x1a, 0x97, 0xc4, 0xd6, 0xc7, +}; +static const unsigned char kat2246_addinreseed[] = { + 0x4a, 0xc1, 0x99, 0x2e, 0xd9, 0x5f, 0x9f, 0x8d, 0x20, 0x7f, 0x29, 0xf6, + 0xa2, 0x03, 0x9b, 0x51, 0x1f, 0xfa, 0x82, 0x33, 0xf4, 0x6b, 0xb4, 0x8d, + 0xe6, 0x64, 0x77, 0x04, 0x4d, 0xc6, 0x7d, 0xd2, +}; +static const unsigned char kat2246_addin0[] = { + 0xf2, 0x0d, 0x78, 0x1d, 0x0c, 0xcb, 0x63, 0x0d, 0x72, 0x62, 0x2e, 0x5d, + 0x65, 0x3c, 0x32, 0x3d, 0xb5, 0xf6, 0x52, 0xfc, 0x7b, 0xaa, 0xa8, 0x00, + 0x9a, 0xc1, 0xc3, 0xad, 0x2d, 0x0f, 0x38, 0x32, +}; +static const unsigned char kat2246_addin1[] = { + 0x15, 0x62, 0x80, 0x1a, 0x0a, 0xaa, 0x41, 0x5b, 0x9d, 0x7a, 0x19, 0x4d, + 0xb4, 0x24, 0xc1, 0x8a, 0x73, 0x1e, 0xa2, 0x48, 0xa3, 0x25, 0x2c, 0x3a, + 0x70, 0x1e, 0x9f, 0x5d, 0x24, 0xce, 0x8d, 0x2d, +}; +static const unsigned char kat2246_retbits[] = { + 0x1f, 0x02, 0x7b, 0xd8, 0x0e, 0x6e, 0xe8, 0x79, 0x75, 0x34, 0xbb, 0x44, + 0x41, 0xad, 0x16, 0x7f, 0x26, 0xcc, 0x4e, 0x42, 0x15, 0x61, 0x05, 0x11, + 0xfd, 0xac, 0xe7, 0x5e, 0x25, 0x1f, 0x2d, 0xed, 0xb9, 0x67, 0xa3, 0x5f, + 0x6b, 0xdc, 0x1f, 0x89, 0x53, 0xb9, 0xcc, 0x28, 0x52, 0xc8, 0x16, 0xa5, + 0xc3, 0xc8, 0xbc, 0x22, 0xd2, 0xf8, 0x84, 0x74, 0xea, 0x96, 0x4a, 0xbc, + 0xcb, 0x9b, 0x19, 0x68, +}; +static const struct drbg_kat_pr_false kat2246_t = { + 10, kat2246_entropyin, kat2246_nonce, kat2246_persstr, + kat2246_entropyinreseed, kat2246_addinreseed, kat2246_addin0, + kat2246_addin1, kat2246_retbits +}; +static const struct drbg_kat kat2246 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2246_t +}; + +static const unsigned char kat2247_entropyin[] = { + 0xb2, 0x60, 0xdb, 0x47, 0x85, 0x3c, 0xa3, 0x7f, 0x00, 0xb6, 0x9e, 0xa7, + 0x5f, 0x65, 0x40, 0xd1, 0xe8, 0x15, 0x51, 0x51, 0x57, 0x7f, 0xee, 0x68, + 0x35, 0x74, 0x64, 0x87, 0xdc, 0xef, 0x61, 0x5a, +}; +static const unsigned char kat2247_nonce[] = {0}; +static const unsigned char kat2247_persstr[] = {0}; +static const unsigned char kat2247_entropyinreseed[] = { + 0x90, 0x13, 0x23, 0xde, 0x85, 0x9f, 0x3b, 0x5a, 0xd3, 0xe8, 0x1e, 0x33, + 0xb8, 0x7f, 0x53, 0xa8, 0xfe, 0xa3, 0x5a, 0x1a, 0x8b, 0x3f, 0xf3, 0xfb, + 0xd8, 0xe9, 0x66, 0xec, 0xfc, 0x6c, 0x72, 0xce, +}; +static const unsigned char kat2247_addinreseed[] = { + 0x58, 0x4b, 0xf2, 0x9e, 0x79, 0xe1, 0x95, 0x0e, 0xf1, 0x2b, 0xc7, 0x7d, + 0x35, 0x5d, 0x39, 0xe3, 0x4d, 0xe3, 0xba, 0xd0, 0xe5, 0x82, 0xfd, 0xfa, + 0x62, 0x8e, 0x97, 0x40, 0x3f, 0x59, 0xf4, 0x06, +}; +static const unsigned char kat2247_addin0[] = { + 0xc5, 0x42, 0x64, 0x83, 0xaa, 0x28, 0x2f, 0x44, 0xaf, 0xd6, 0x46, 0x2e, + 0x24, 0xec, 0xa4, 0x65, 0x32, 0x85, 0x39, 0xb4, 0x65, 0xb1, 0xb9, 0x7d, + 0x67, 0x3b, 0x05, 0xd9, 0x19, 0x50, 0xa3, 0x7e, +}; +static const unsigned char kat2247_addin1[] = { + 0x07, 0x3b, 0xb1, 0xc0, 0x06, 0x94, 0xf6, 0x5a, 0xb1, 0x28, 0x80, 0xb9, + 0x4e, 0x24, 0x21, 0x08, 0x66, 0xed, 0x27, 0x2e, 0xa6, 0xe2, 0x06, 0xe0, + 0xae, 0x7e, 0x50, 0x07, 0xdc, 0xf4, 0xed, 0x4d, +}; +static const unsigned char kat2247_retbits[] = { + 0xe6, 0x62, 0xb9, 0xc0, 0xdd, 0x94, 0xe0, 0xe8, 0x97, 0xf6, 0x47, 0x9c, + 0xa2, 0x3a, 0x5d, 0xe7, 0x45, 0xe4, 0x34, 0xd8, 0xd9, 0xd4, 0x1e, 0x22, + 0xfd, 0x89, 0xac, 0xa7, 0x93, 0xfa, 0xbe, 0x6d, 0x57, 0x34, 0x55, 0x34, + 0x15, 0xb6, 0x92, 0xb3, 0xce, 0x76, 0x08, 0xe8, 0x71, 0x4a, 0x4b, 0xc7, + 0xc2, 0x25, 0xec, 0xbc, 0xc7, 0xbb, 0x5b, 0x9f, 0x55, 0xc0, 0x53, 0xb5, + 0x1c, 0xee, 0x2c, 0x49, +}; +static const struct drbg_kat_pr_false kat2247_t = { + 11, kat2247_entropyin, kat2247_nonce, kat2247_persstr, + kat2247_entropyinreseed, kat2247_addinreseed, kat2247_addin0, + kat2247_addin1, kat2247_retbits +}; +static const struct drbg_kat kat2247 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2247_t +}; + +static const unsigned char kat2248_entropyin[] = { + 0xa9, 0x6e, 0x95, 0x20, 0x94, 0x31, 0x43, 0x50, 0xc6, 0x1c, 0x97, 0x4c, + 0x0a, 0x76, 0xd6, 0x2d, 0xa6, 0xeb, 0xf2, 0x5d, 0xc6, 0x33, 0xb7, 0x71, + 0x88, 0xae, 0xee, 0x43, 0x48, 0x97, 0x7d, 0xdf, +}; +static const unsigned char kat2248_nonce[] = {0}; +static const unsigned char kat2248_persstr[] = {0}; +static const unsigned char kat2248_entropyinreseed[] = { + 0xea, 0x2d, 0x91, 0x10, 0x8a, 0x9e, 0xf2, 0xcc, 0xd6, 0xa1, 0x5b, 0xae, + 0x97, 0x60, 0x65, 0x74, 0xf6, 0x43, 0xc5, 0xc4, 0x89, 0x5d, 0xdf, 0x60, + 0x8a, 0x04, 0xf0, 0xc3, 0xa2, 0xf3, 0xee, 0xdf, +}; +static const unsigned char kat2248_addinreseed[] = { + 0xed, 0x87, 0x5d, 0xa4, 0x52, 0x09, 0xf7, 0x47, 0x3e, 0x8c, 0x37, 0xa8, + 0x1c, 0x19, 0x8e, 0xba, 0xac, 0x89, 0xbb, 0x2d, 0xa2, 0x35, 0xf1, 0x1e, + 0xd6, 0x23, 0xe4, 0xd9, 0xa2, 0x70, 0x7c, 0x31, +}; +static const unsigned char kat2248_addin0[] = { + 0x7b, 0x84, 0x13, 0x06, 0x54, 0x95, 0xab, 0x86, 0x5c, 0xf1, 0xab, 0x07, + 0x8b, 0x61, 0x03, 0xc1, 0xa8, 0x1a, 0x0a, 0x8b, 0xc5, 0xc9, 0x96, 0xc2, + 0xa5, 0xd4, 0x6c, 0x4e, 0x37, 0xab, 0x26, 0x95, +}; +static const unsigned char kat2248_addin1[] = { + 0x26, 0x05, 0x7d, 0xf2, 0x12, 0xbb, 0x78, 0x04, 0x0a, 0xef, 0x36, 0xa1, + 0xcd, 0x4f, 0xbd, 0x09, 0x3d, 0x5d, 0x9b, 0xe7, 0x75, 0xc6, 0x1b, 0x93, + 0xa9, 0x05, 0xca, 0x0e, 0xbb, 0xb9, 0xed, 0x49, +}; +static const unsigned char kat2248_retbits[] = { + 0xdb, 0xc5, 0xfe, 0x05, 0xc1, 0x93, 0xe1, 0x01, 0xb9, 0xa3, 0x13, 0x43, + 0x5b, 0x9f, 0x37, 0x71, 0x58, 0x8c, 0x16, 0x8a, 0x15, 0xdf, 0x08, 0x46, + 0x7a, 0x4d, 0x3c, 0x81, 0xac, 0xd4, 0xff, 0xd1, 0x77, 0x98, 0xd2, 0x00, + 0x46, 0x9a, 0xa7, 0x6a, 0xab, 0x34, 0x20, 0xe9, 0x9e, 0x1a, 0x68, 0xac, + 0xda, 0x02, 0x35, 0xb1, 0x59, 0x7d, 0x4a, 0xb9, 0x25, 0xe6, 0x1e, 0xe9, + 0xee, 0x57, 0xb5, 0x2d, +}; +static const struct drbg_kat_pr_false kat2248_t = { + 12, kat2248_entropyin, kat2248_nonce, kat2248_persstr, + kat2248_entropyinreseed, kat2248_addinreseed, kat2248_addin0, + kat2248_addin1, kat2248_retbits +}; +static const struct drbg_kat kat2248 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2248_t +}; + +static const unsigned char kat2249_entropyin[] = { + 0x2a, 0xaa, 0x69, 0xcc, 0x44, 0x0e, 0x47, 0x4b, 0x6b, 0x99, 0x40, 0x57, + 0x4c, 0x03, 0x6b, 0x82, 0xf7, 0x24, 0xac, 0x97, 0xdf, 0xa8, 0x2c, 0x71, + 0xf4, 0x92, 0x34, 0x9b, 0xb7, 0xa8, 0xf9, 0xe5, +}; +static const unsigned char kat2249_nonce[] = {0}; +static const unsigned char kat2249_persstr[] = {0}; +static const unsigned char kat2249_entropyinreseed[] = { + 0x21, 0x31, 0x86, 0x6c, 0x96, 0x02, 0x62, 0xf4, 0x04, 0xad, 0x53, 0x59, + 0x67, 0xc5, 0x18, 0xf3, 0xf2, 0xe3, 0x64, 0xc4, 0xbb, 0x6d, 0xae, 0xb0, + 0xc4, 0xd7, 0x44, 0xbf, 0xc8, 0xfc, 0x83, 0xa0, +}; +static const unsigned char kat2249_addinreseed[] = { + 0x33, 0xf7, 0xd1, 0x0b, 0xb1, 0xc6, 0x6a, 0xe0, 0x77, 0x1b, 0xa4, 0xfe, + 0x61, 0x93, 0xac, 0x27, 0x12, 0x01, 0xd6, 0x81, 0xe8, 0xe5, 0x80, 0x82, + 0xdf, 0x16, 0x32, 0xe5, 0xba, 0xee, 0x67, 0xa9, +}; +static const unsigned char kat2249_addin0[] = { + 0xcf, 0x75, 0xd2, 0x02, 0xc5, 0xf3, 0x6a, 0x4d, 0x7a, 0x40, 0xce, 0x08, + 0x89, 0xb7, 0x92, 0x0b, 0x57, 0xcf, 0x9e, 0x55, 0xe9, 0xbe, 0xd3, 0x9c, + 0x06, 0x88, 0x79, 0x0d, 0xdf, 0x3b, 0xa7, 0x39, +}; +static const unsigned char kat2249_addin1[] = { + 0x34, 0x5e, 0xea, 0x83, 0x40, 0x59, 0x40, 0xc2, 0xce, 0x5f, 0x32, 0xbe, + 0xba, 0x44, 0x57, 0x06, 0xe3, 0xd2, 0xd9, 0x12, 0x96, 0x1e, 0x0f, 0xc8, + 0x69, 0xee, 0x46, 0xed, 0x2f, 0x5d, 0x81, 0xb6, +}; +static const unsigned char kat2249_retbits[] = { + 0xe3, 0x89, 0x19, 0x7c, 0x83, 0xf4, 0x32, 0xea, 0xe5, 0xaf, 0xbe, 0x2d, + 0xd4, 0x61, 0xdd, 0xf7, 0xea, 0xc0, 0x9b, 0xc8, 0xf9, 0x2a, 0xba, 0x0f, + 0x72, 0x6d, 0xd6, 0xd8, 0x57, 0x96, 0xf3, 0x47, 0x7f, 0x2b, 0x1e, 0xaf, + 0x50, 0x1d, 0x7f, 0x37, 0xb1, 0x73, 0x89, 0xca, 0xe9, 0x5c, 0x09, 0xe5, + 0xd4, 0xf2, 0x40, 0xa2, 0x77, 0xc9, 0xc9, 0x69, 0x56, 0x50, 0x0c, 0xaa, + 0x30, 0xea, 0xae, 0x28, +}; +static const struct drbg_kat_pr_false kat2249_t = { + 13, kat2249_entropyin, kat2249_nonce, kat2249_persstr, + kat2249_entropyinreseed, kat2249_addinreseed, kat2249_addin0, + kat2249_addin1, kat2249_retbits +}; +static const struct drbg_kat kat2249 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2249_t +}; + +static const unsigned char kat2250_entropyin[] = { + 0x9d, 0xd2, 0xb8, 0x4f, 0x4b, 0xa3, 0xbc, 0x67, 0xf5, 0x90, 0xee, 0xfd, + 0x75, 0xd5, 0x6b, 0xab, 0xf3, 0x37, 0x27, 0x40, 0x5a, 0x38, 0xa2, 0xd1, + 0xcd, 0x2a, 0x5b, 0xaf, 0xbb, 0x0d, 0xb2, 0x7c, +}; +static const unsigned char kat2250_nonce[] = {0}; +static const unsigned char kat2250_persstr[] = {0}; +static const unsigned char kat2250_entropyinreseed[] = { + 0x4f, 0x21, 0xf5, 0x60, 0x76, 0x32, 0xc2, 0x86, 0x8e, 0x58, 0x48, 0xa6, + 0xbc, 0x9c, 0x6e, 0x17, 0xa1, 0xf6, 0x28, 0x22, 0xf9, 0x1a, 0x9a, 0x77, + 0xcf, 0x83, 0xfb, 0xe0, 0xf8, 0x12, 0xc6, 0xc7, +}; +static const unsigned char kat2250_addinreseed[] = { + 0xf9, 0x08, 0x4e, 0x1f, 0xd6, 0xae, 0x34, 0x6c, 0x89, 0x20, 0x4b, 0x22, + 0xa7, 0x7a, 0x87, 0x9d, 0xda, 0xad, 0xb4, 0x2a, 0x1d, 0xcf, 0x5d, 0xa0, + 0x18, 0xc6, 0xb3, 0x06, 0xdf, 0xef, 0x11, 0x69, +}; +static const unsigned char kat2250_addin0[] = { + 0xcc, 0x92, 0xf0, 0x9a, 0x3b, 0x12, 0xf2, 0x9d, 0x9e, 0x73, 0x25, 0x3c, + 0x26, 0x1e, 0x82, 0x81, 0x96, 0xfa, 0x54, 0x0a, 0x90, 0x24, 0x63, 0x26, + 0x65, 0xc6, 0xc2, 0x5a, 0x41, 0x9b, 0x1f, 0x86, +}; +static const unsigned char kat2250_addin1[] = { + 0x53, 0x11, 0x37, 0x03, 0xa3, 0x36, 0x2b, 0x3e, 0xef, 0xb0, 0xc1, 0x25, + 0x87, 0xfa, 0x25, 0xa6, 0x20, 0xe0, 0x9e, 0x0c, 0xb6, 0x3a, 0xcb, 0x3f, + 0x7b, 0x74, 0x47, 0x16, 0x18, 0xcc, 0x0d, 0x05, +}; +static const unsigned char kat2250_retbits[] = { + 0xee, 0xf4, 0x85, 0x0d, 0x91, 0xb6, 0x35, 0x08, 0xbd, 0xf3, 0x25, 0x7c, + 0x4b, 0x66, 0xc8, 0xc0, 0x22, 0xa6, 0x86, 0x9c, 0xc8, 0xd9, 0x47, 0x3e, + 0x5f, 0x57, 0x9d, 0x10, 0x3c, 0x67, 0x22, 0x5c, 0x04, 0xe3, 0x99, 0x4f, + 0x14, 0xc3, 0x1f, 0xf0, 0xe3, 0x28, 0xc1, 0xad, 0xdd, 0xc8, 0xd8, 0xf6, + 0xb1, 0xf2, 0xe7, 0x04, 0x09, 0x32, 0x5a, 0x35, 0x3e, 0xec, 0x19, 0xc4, + 0x20, 0x35, 0x2b, 0x7c, +}; +static const struct drbg_kat_pr_false kat2250_t = { + 14, kat2250_entropyin, kat2250_nonce, kat2250_persstr, + kat2250_entropyinreseed, kat2250_addinreseed, kat2250_addin0, + kat2250_addin1, kat2250_retbits +}; +static const struct drbg_kat kat2250 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2250_t +}; + +static const unsigned char kat2251_entropyin[] = { + 0x5c, 0xd1, 0xdf, 0x6d, 0xb5, 0x8e, 0xa5, 0x07, 0x83, 0x8d, 0x74, 0x26, + 0xb3, 0xfb, 0x48, 0x40, 0x2c, 0xd1, 0x4a, 0xb7, 0x5a, 0xbb, 0xde, 0xf3, + 0x3c, 0xe3, 0x0f, 0xb9, 0x7c, 0x53, 0x09, 0x98, +}; +static const unsigned char kat2251_nonce[] = {0}; +static const unsigned char kat2251_persstr[] = { + 0x35, 0x14, 0x20, 0xc0, 0x26, 0x3c, 0xe1, 0x1e, 0xe8, 0xb6, 0x83, 0xf6, + 0x10, 0x61, 0x30, 0xc6, 0x7f, 0xf1, 0xc6, 0x55, 0xc4, 0xe6, 0x78, 0x82, + 0x52, 0x93, 0xf0, 0x04, 0xd2, 0x7c, 0x54, 0x24, +}; +static const unsigned char kat2251_entropyinreseed[] = { + 0x99, 0xe6, 0x85, 0x0f, 0xa2, 0x91, 0x31, 0xbf, 0xc7, 0x48, 0xb2, 0xe7, + 0x4e, 0x0f, 0xd6, 0x2a, 0xcc, 0x4b, 0xe4, 0xe9, 0xb5, 0xf0, 0x64, 0x47, + 0xdc, 0x26, 0xf7, 0x72, 0xc0, 0x24, 0x15, 0x61, +}; +static const unsigned char kat2251_addinreseed[] = {0}; +static const unsigned char kat2251_addin0[] = {0}; +static const unsigned char kat2251_addin1[] = {0}; +static const unsigned char kat2251_retbits[] = { + 0xf6, 0x04, 0x0a, 0xf8, 0xae, 0x7a, 0xb0, 0x4c, 0xde, 0x02, 0xbe, 0x25, + 0xaf, 0x95, 0xde, 0xda, 0xda, 0x3b, 0x10, 0x32, 0x1c, 0x41, 0x8c, 0x7a, + 0xf4, 0xed, 0x5b, 0xc8, 0x2e, 0x28, 0xeb, 0xf7, 0x78, 0xae, 0x42, 0x48, + 0xc5, 0x65, 0x29, 0x2e, 0x4c, 0xb8, 0xec, 0xcd, 0x40, 0xf1, 0x8a, 0x38, + 0x28, 0x48, 0xb4, 0x0d, 0x74, 0x41, 0xa2, 0x91, 0xcc, 0x9e, 0xe8, 0x46, + 0x5c, 0xbe, 0x5f, 0xd6, +}; +static const struct drbg_kat_pr_false kat2251_t = { + 0, kat2251_entropyin, kat2251_nonce, kat2251_persstr, + kat2251_entropyinreseed, kat2251_addinreseed, kat2251_addin0, + kat2251_addin1, kat2251_retbits +}; +static const struct drbg_kat kat2251 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2251_t +}; + +static const unsigned char kat2252_entropyin[] = { + 0x5a, 0x6d, 0xb1, 0xb1, 0xec, 0x99, 0xb8, 0x15, 0x05, 0xa6, 0x7f, 0x8c, + 0x22, 0xe4, 0x86, 0x9d, 0xd2, 0x2f, 0xeb, 0x9e, 0xb9, 0x42, 0xc2, 0x69, + 0xed, 0xbd, 0x5c, 0x9a, 0x85, 0x17, 0xa6, 0x83, +}; +static const unsigned char kat2252_nonce[] = {0}; +static const unsigned char kat2252_persstr[] = { + 0xb7, 0x41, 0xa4, 0xc1, 0xeb, 0xfa, 0x69, 0x3a, 0xf8, 0xce, 0x1d, 0x2a, + 0xb1, 0x65, 0xba, 0xda, 0xcd, 0xc9, 0xa8, 0xbe, 0x61, 0xe2, 0x94, 0x4e, + 0xae, 0xe5, 0xb1, 0xb0, 0xdb, 0xd7, 0xa1, 0xa3, +}; +static const unsigned char kat2252_entropyinreseed[] = { + 0x51, 0x0b, 0x0c, 0xec, 0x9b, 0x8e, 0x18, 0x2a, 0xa4, 0xed, 0x96, 0xdc, + 0xd7, 0x74, 0xc2, 0x41, 0xad, 0x98, 0xfc, 0x45, 0xd2, 0xd8, 0x17, 0x92, + 0x8a, 0x1b, 0x60, 0x13, 0xfb, 0xa6, 0xc9, 0xd4, +}; +static const unsigned char kat2252_addinreseed[] = {0}; +static const unsigned char kat2252_addin0[] = {0}; +static const unsigned char kat2252_addin1[] = {0}; +static const unsigned char kat2252_retbits[] = { + 0xc0, 0x13, 0x52, 0x85, 0xad, 0xa6, 0xde, 0x39, 0x3f, 0xcc, 0xf2, 0x5e, + 0x20, 0xae, 0xb9, 0xd1, 0x06, 0x5d, 0x56, 0x71, 0xf5, 0x46, 0x2d, 0x15, + 0xf5, 0x9e, 0x54, 0xc1, 0x58, 0xfd, 0xd4, 0x82, 0x91, 0x20, 0xa2, 0xa6, + 0x78, 0xed, 0x79, 0xf6, 0x10, 0xd4, 0xbe, 0x30, 0x62, 0xbc, 0x37, 0xba, + 0x5a, 0x32, 0x9b, 0x6b, 0x1f, 0x25, 0x6e, 0x30, 0x62, 0xde, 0x33, 0x23, + 0xca, 0x50, 0xce, 0x13, +}; +static const struct drbg_kat_pr_false kat2252_t = { + 1, kat2252_entropyin, kat2252_nonce, kat2252_persstr, + kat2252_entropyinreseed, kat2252_addinreseed, kat2252_addin0, + kat2252_addin1, kat2252_retbits +}; +static const struct drbg_kat kat2252 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2252_t +}; + +static const unsigned char kat2253_entropyin[] = { + 0x9b, 0xdd, 0xb6, 0x2c, 0x4b, 0xdb, 0x84, 0x27, 0x24, 0x8f, 0x71, 0x9c, + 0x49, 0x70, 0x1e, 0xb2, 0x27, 0x8d, 0x72, 0x40, 0x85, 0xf6, 0xc7, 0xd3, + 0xfe, 0xf2, 0x62, 0x3a, 0x83, 0xdb, 0xce, 0xd4, +}; +static const unsigned char kat2253_nonce[] = {0}; +static const unsigned char kat2253_persstr[] = { + 0xc0, 0xb7, 0x99, 0x37, 0x47, 0xee, 0x00, 0x3e, 0xfc, 0xc9, 0x7f, 0xff, + 0x09, 0x40, 0xc4, 0x44, 0x62, 0xd4, 0x65, 0x62, 0x85, 0x1c, 0x2b, 0x94, + 0xb0, 0x67, 0xb8, 0x99, 0xc9, 0xf7, 0x6c, 0x85, +}; +static const unsigned char kat2253_entropyinreseed[] = { + 0x76, 0x02, 0x5a, 0xa8, 0x8b, 0x1a, 0xb2, 0xb2, 0xac, 0x51, 0xee, 0x5e, + 0x4b, 0x8a, 0xaa, 0xda, 0x34, 0x17, 0x2e, 0x82, 0x65, 0xe0, 0x31, 0x87, + 0x59, 0x82, 0x14, 0xff, 0x35, 0xa2, 0x81, 0x12, +}; +static const unsigned char kat2253_addinreseed[] = {0}; +static const unsigned char kat2253_addin0[] = {0}; +static const unsigned char kat2253_addin1[] = {0}; +static const unsigned char kat2253_retbits[] = { + 0xc9, 0x06, 0xb7, 0x32, 0xf1, 0x1b, 0xae, 0x67, 0xa1, 0x8d, 0x6a, 0x25, + 0xb8, 0xa6, 0x50, 0xc7, 0x81, 0xce, 0xa4, 0x84, 0x84, 0x8d, 0xfb, 0x3a, + 0x7e, 0x88, 0x8f, 0xc9, 0x50, 0x78, 0x35, 0x9f, 0x2a, 0x08, 0x0b, 0x24, + 0x49, 0x0f, 0x84, 0xfe, 0xf1, 0x72, 0xbe, 0xa8, 0xcb, 0x0d, 0x0b, 0x33, + 0xea, 0x15, 0x71, 0x3b, 0xe9, 0x42, 0x7a, 0x09, 0xa8, 0x8f, 0x92, 0x07, + 0x1a, 0xf0, 0x07, 0xe4, +}; +static const struct drbg_kat_pr_false kat2253_t = { + 2, kat2253_entropyin, kat2253_nonce, kat2253_persstr, + kat2253_entropyinreseed, kat2253_addinreseed, kat2253_addin0, + kat2253_addin1, kat2253_retbits +}; +static const struct drbg_kat kat2253 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2253_t +}; + +static const unsigned char kat2254_entropyin[] = { + 0x67, 0x05, 0xf1, 0x42, 0xd5, 0x38, 0x06, 0x41, 0x1d, 0xaf, 0xb8, 0x97, + 0x4b, 0x9e, 0x04, 0xea, 0x96, 0xbd, 0x7e, 0xac, 0xdf, 0x3c, 0xa9, 0x86, + 0x78, 0xb8, 0x1b, 0xae, 0xf9, 0xb7, 0x94, 0xa4, +}; +static const unsigned char kat2254_nonce[] = {0}; +static const unsigned char kat2254_persstr[] = { + 0xdb, 0x70, 0xc6, 0xa6, 0x75, 0x35, 0x68, 0x3d, 0x89, 0xab, 0xda, 0x1f, + 0xbe, 0xfc, 0x14, 0x96, 0x73, 0xde, 0x4c, 0xed, 0x67, 0x61, 0x22, 0x78, + 0x94, 0xff, 0xb5, 0x27, 0xc1, 0x59, 0xb5, 0xf8, +}; +static const unsigned char kat2254_entropyinreseed[] = { + 0x8d, 0xa0, 0x42, 0xd0, 0x50, 0xc7, 0x18, 0xcd, 0xa4, 0x25, 0x2d, 0xd0, + 0x08, 0x0f, 0x0f, 0x46, 0x39, 0x92, 0x15, 0x35, 0x0f, 0xa5, 0x1e, 0x07, + 0x7c, 0x5b, 0x13, 0xf0, 0xb7, 0x3a, 0xaa, 0xa0, +}; +static const unsigned char kat2254_addinreseed[] = {0}; +static const unsigned char kat2254_addin0[] = {0}; +static const unsigned char kat2254_addin1[] = {0}; +static const unsigned char kat2254_retbits[] = { + 0x77, 0x0c, 0x82, 0x80, 0x4c, 0x7b, 0x56, 0xab, 0x52, 0x4f, 0xd7, 0x8c, + 0x47, 0xd6, 0x76, 0x9f, 0xc8, 0x08, 0x28, 0x5a, 0x41, 0x05, 0x7c, 0x1e, + 0xe3, 0x22, 0xe4, 0x6b, 0xc8, 0x65, 0x3b, 0x2c, 0x80, 0x6f, 0x3a, 0x27, + 0x9c, 0xa0, 0x02, 0x81, 0xf8, 0xa7, 0xee, 0x69, 0x11, 0x1e, 0xb4, 0x0b, + 0x98, 0xc6, 0x5b, 0x20, 0x31, 0xd9, 0x62, 0xef, 0x4f, 0x79, 0x2b, 0xda, + 0x00, 0x53, 0x38, 0xe9, +}; +static const struct drbg_kat_pr_false kat2254_t = { + 3, kat2254_entropyin, kat2254_nonce, kat2254_persstr, + kat2254_entropyinreseed, kat2254_addinreseed, kat2254_addin0, + kat2254_addin1, kat2254_retbits +}; +static const struct drbg_kat kat2254 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2254_t +}; + +static const unsigned char kat2255_entropyin[] = { + 0x9b, 0x5f, 0xfa, 0xe4, 0x15, 0x8f, 0xc3, 0x5d, 0x95, 0xb0, 0x57, 0x2b, + 0xf7, 0xc9, 0xa6, 0x72, 0xce, 0x2b, 0x60, 0xe6, 0x0a, 0xed, 0xff, 0x83, + 0xaa, 0x4e, 0x06, 0x25, 0xcc, 0xa3, 0xb1, 0x59, +}; +static const unsigned char kat2255_nonce[] = {0}; +static const unsigned char kat2255_persstr[] = { + 0x1a, 0x7c, 0x4a, 0x9f, 0xed, 0x26, 0x24, 0xff, 0x83, 0xd0, 0x14, 0x2a, + 0x60, 0x1b, 0x88, 0x72, 0xf4, 0x38, 0xce, 0x20, 0xc1, 0xdf, 0xb2, 0x10, + 0xb5, 0xa0, 0x82, 0xaf, 0x2b, 0x2a, 0xb4, 0xc9, +}; +static const unsigned char kat2255_entropyinreseed[] = { + 0x09, 0x69, 0xf8, 0x95, 0xd8, 0x62, 0xdb, 0x10, 0x41, 0xe5, 0x3a, 0xe2, + 0xc9, 0x94, 0xd2, 0xce, 0xb6, 0xe9, 0x47, 0x0a, 0x58, 0xa6, 0xdf, 0x29, + 0x40, 0xae, 0x1b, 0x22, 0x49, 0xce, 0x32, 0xa1, +}; +static const unsigned char kat2255_addinreseed[] = {0}; +static const unsigned char kat2255_addin0[] = {0}; +static const unsigned char kat2255_addin1[] = {0}; +static const unsigned char kat2255_retbits[] = { + 0x8f, 0xb5, 0x52, 0xd8, 0x4b, 0x11, 0x19, 0x6e, 0xb6, 0x4d, 0x04, 0x3a, + 0xdf, 0x89, 0x13, 0x11, 0x6f, 0x66, 0xd2, 0x8a, 0x41, 0x72, 0x5b, 0xc1, + 0xfb, 0x91, 0x43, 0xe3, 0xf8, 0xfd, 0x92, 0xd8, 0xd5, 0xb5, 0xa8, 0x69, + 0x36, 0xe0, 0xe8, 0x35, 0xff, 0x93, 0x2c, 0x52, 0x47, 0xfb, 0xc4, 0x8e, + 0x94, 0x64, 0x8c, 0x10, 0xcb, 0x9c, 0x90, 0xda, 0xd3, 0x54, 0xcd, 0x42, + 0x5e, 0x0a, 0xe9, 0xff, +}; +static const struct drbg_kat_pr_false kat2255_t = { + 4, kat2255_entropyin, kat2255_nonce, kat2255_persstr, + kat2255_entropyinreseed, kat2255_addinreseed, kat2255_addin0, + kat2255_addin1, kat2255_retbits +}; +static const struct drbg_kat kat2255 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2255_t +}; + +static const unsigned char kat2256_entropyin[] = { + 0xf9, 0xd4, 0x0e, 0x13, 0x7f, 0xbe, 0xdb, 0xba, 0xfd, 0x71, 0xf9, 0x7c, + 0x22, 0x05, 0xf4, 0x32, 0x52, 0x7e, 0x7a, 0x72, 0xd4, 0x52, 0xff, 0x45, + 0xeb, 0xc3, 0x11, 0xe2, 0x1c, 0x1a, 0x71, 0xad, +}; +static const unsigned char kat2256_nonce[] = {0}; +static const unsigned char kat2256_persstr[] = { + 0xcc, 0x37, 0x6a, 0x45, 0xb3, 0x70, 0x3a, 0x58, 0xc5, 0x56, 0x0b, 0x1b, + 0xe1, 0x4a, 0x53, 0xc0, 0xe9, 0x1a, 0x90, 0x0a, 0x14, 0xbb, 0x88, 0xa8, + 0x77, 0x0d, 0x8d, 0xa3, 0xec, 0x27, 0x58, 0xe9, +}; +static const unsigned char kat2256_entropyinreseed[] = { + 0x2f, 0x33, 0x6b, 0x89, 0x32, 0x96, 0xb7, 0x8c, 0x8a, 0xa9, 0xc3, 0x8e, + 0xa2, 0xf9, 0x17, 0xe1, 0x16, 0xa0, 0x3b, 0xb7, 0xf7, 0xa4, 0x5c, 0x14, + 0x20, 0xd7, 0xfc, 0x98, 0x0e, 0x2c, 0x10, 0xd9, +}; +static const unsigned char kat2256_addinreseed[] = {0}; +static const unsigned char kat2256_addin0[] = {0}; +static const unsigned char kat2256_addin1[] = {0}; +static const unsigned char kat2256_retbits[] = { + 0xa8, 0x44, 0x99, 0x2c, 0xe6, 0x06, 0x87, 0xd5, 0xb1, 0xed, 0x23, 0x53, + 0xbd, 0x5b, 0xfa, 0xd0, 0x24, 0x7e, 0xd3, 0xe7, 0xad, 0xa6, 0x7d, 0x4d, + 0x41, 0x70, 0xff, 0x41, 0x2e, 0xa8, 0x6d, 0x72, 0xab, 0xb8, 0xe7, 0xa5, + 0x0f, 0x8f, 0x14, 0x6c, 0xc2, 0xcd, 0xa0, 0xc2, 0x20, 0x09, 0x4f, 0xd8, + 0x07, 0x4c, 0x11, 0x82, 0x71, 0xea, 0xbe, 0xe7, 0xa2, 0x7c, 0xb5, 0x3c, + 0xbf, 0x7a, 0x1a, 0x18, +}; +static const struct drbg_kat_pr_false kat2256_t = { + 5, kat2256_entropyin, kat2256_nonce, kat2256_persstr, + kat2256_entropyinreseed, kat2256_addinreseed, kat2256_addin0, + kat2256_addin1, kat2256_retbits +}; +static const struct drbg_kat kat2256 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2256_t +}; + +static const unsigned char kat2257_entropyin[] = { + 0xa9, 0x00, 0x72, 0xab, 0x36, 0x11, 0xcb, 0x02, 0xc1, 0xe7, 0x0e, 0x11, + 0x26, 0x06, 0xd7, 0xbd, 0xfd, 0x49, 0x45, 0x77, 0x74, 0xe4, 0xf3, 0xdb, + 0x23, 0xb2, 0xfb, 0x6b, 0xcd, 0xdd, 0x1f, 0xd7, +}; +static const unsigned char kat2257_nonce[] = {0}; +static const unsigned char kat2257_persstr[] = { + 0x94, 0x0c, 0xf9, 0x7c, 0x25, 0xeb, 0x52, 0x49, 0x69, 0xe0, 0x4a, 0x47, + 0x04, 0x45, 0x88, 0x1a, 0x39, 0x40, 0xc0, 0x4d, 0x64, 0x8f, 0x41, 0x80, + 0x2b, 0x55, 0x88, 0xe4, 0xfe, 0x74, 0x49, 0x2e, +}; +static const unsigned char kat2257_entropyinreseed[] = { + 0x05, 0x00, 0x26, 0x40, 0xb6, 0x43, 0xa0, 0x7e, 0xf9, 0x97, 0x1e, 0x38, + 0x07, 0xaa, 0x11, 0x8f, 0x40, 0xa3, 0x57, 0x31, 0x75, 0x68, 0xda, 0xd1, + 0x11, 0x9f, 0x00, 0xf6, 0x10, 0x0a, 0xcc, 0x41, +}; +static const unsigned char kat2257_addinreseed[] = {0}; +static const unsigned char kat2257_addin0[] = {0}; +static const unsigned char kat2257_addin1[] = {0}; +static const unsigned char kat2257_retbits[] = { + 0x55, 0x80, 0x0b, 0xec, 0xd4, 0x0c, 0x19, 0xb7, 0xa1, 0x15, 0xa0, 0xcb, + 0xbf, 0x96, 0x4b, 0x2b, 0x59, 0x18, 0x90, 0xc4, 0x9e, 0x1f, 0xc9, 0x8a, + 0x65, 0xa6, 0x47, 0x1a, 0x51, 0xf6, 0xbd, 0x9a, 0x2e, 0xbd, 0x17, 0x7a, + 0x65, 0xb5, 0xcc, 0x0e, 0xf7, 0x22, 0x34, 0x08, 0x0f, 0x64, 0x8c, 0x93, + 0x8a, 0xe4, 0xa2, 0x02, 0x78, 0x76, 0x4c, 0x66, 0x94, 0x56, 0xba, 0xcf, + 0x71, 0x40, 0xf2, 0xbe, +}; +static const struct drbg_kat_pr_false kat2257_t = { + 6, kat2257_entropyin, kat2257_nonce, kat2257_persstr, + kat2257_entropyinreseed, kat2257_addinreseed, kat2257_addin0, + kat2257_addin1, kat2257_retbits +}; +static const struct drbg_kat kat2257 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2257_t +}; + +static const unsigned char kat2258_entropyin[] = { + 0x8d, 0xb0, 0x2f, 0x21, 0xf2, 0x60, 0xe4, 0x6e, 0x9e, 0x76, 0x72, 0x1a, + 0x6d, 0xfb, 0xd9, 0x42, 0x2e, 0xfc, 0x87, 0x1f, 0x4f, 0x9b, 0x10, 0x62, + 0x29, 0x4c, 0x5c, 0x59, 0xe7, 0x6d, 0xb9, 0x9d, +}; +static const unsigned char kat2258_nonce[] = {0}; +static const unsigned char kat2258_persstr[] = { + 0xb1, 0xb9, 0x90, 0xc2, 0x91, 0x09, 0xb8, 0x72, 0x4e, 0x31, 0x6f, 0x19, + 0xb8, 0x9b, 0x4a, 0xd7, 0x96, 0x0e, 0xb8, 0x4c, 0x88, 0x4d, 0xb0, 0x59, + 0xbc, 0x67, 0x88, 0xe2, 0x49, 0x9b, 0x51, 0x59, +}; +static const unsigned char kat2258_entropyinreseed[] = { + 0xb7, 0xda, 0xdb, 0xd5, 0x3e, 0xd4, 0x60, 0x73, 0xf2, 0x0b, 0xab, 0x20, + 0x2a, 0x55, 0x9b, 0xc5, 0x70, 0x46, 0xcc, 0x8f, 0x54, 0x83, 0xe2, 0x68, + 0xdd, 0x88, 0xd9, 0xbd, 0x38, 0x65, 0xc2, 0x42, +}; +static const unsigned char kat2258_addinreseed[] = {0}; +static const unsigned char kat2258_addin0[] = {0}; +static const unsigned char kat2258_addin1[] = {0}; +static const unsigned char kat2258_retbits[] = { + 0x78, 0xe6, 0x38, 0x9d, 0xe4, 0xa6, 0x32, 0xea, 0x5a, 0xaf, 0xcd, 0x2b, + 0x31, 0xe0, 0xf0, 0x49, 0x20, 0xb2, 0x24, 0xd8, 0x66, 0xa9, 0x76, 0x3c, + 0xd6, 0xce, 0x33, 0xea, 0x67, 0x9d, 0x11, 0xc3, 0xf5, 0xc3, 0x61, 0xb9, + 0xdd, 0x7c, 0x89, 0x5e, 0x45, 0x10, 0x8d, 0xb2, 0xad, 0x03, 0x9e, 0x42, + 0xd6, 0xcf, 0xd1, 0xf8, 0xdb, 0x64, 0x09, 0xed, 0x8b, 0xde, 0x1e, 0xa2, + 0xb6, 0x3e, 0x9b, 0x5c, +}; +static const struct drbg_kat_pr_false kat2258_t = { + 7, kat2258_entropyin, kat2258_nonce, kat2258_persstr, + kat2258_entropyinreseed, kat2258_addinreseed, kat2258_addin0, + kat2258_addin1, kat2258_retbits +}; +static const struct drbg_kat kat2258 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2258_t +}; + +static const unsigned char kat2259_entropyin[] = { + 0xe9, 0x29, 0x1a, 0x80, 0x0e, 0xa9, 0x0c, 0x06, 0x9b, 0x52, 0x60, 0xf0, + 0x00, 0xc9, 0x4b, 0x14, 0x6d, 0x95, 0xd3, 0xd6, 0x4c, 0xf4, 0xae, 0x7b, + 0x97, 0x48, 0xc5, 0xa8, 0x5e, 0x0a, 0x08, 0x9f, +}; +static const unsigned char kat2259_nonce[] = {0}; +static const unsigned char kat2259_persstr[] = { + 0xf7, 0x87, 0x51, 0x5a, 0xde, 0x3a, 0x38, 0x84, 0xd7, 0x3d, 0x85, 0x72, + 0xef, 0x11, 0x0f, 0x64, 0x48, 0x15, 0x3b, 0xf1, 0xe0, 0x52, 0xe7, 0x6d, + 0x79, 0x36, 0xc3, 0xbb, 0x10, 0x7c, 0xc1, 0xa4, +}; +static const unsigned char kat2259_entropyinreseed[] = { + 0xe8, 0x1b, 0xc7, 0x0f, 0x7d, 0x11, 0x6d, 0x9c, 0x2a, 0xab, 0x9f, 0xd9, + 0x90, 0x0a, 0x93, 0x85, 0x91, 0xf7, 0x25, 0xc1, 0x88, 0x1f, 0x39, 0x1f, + 0x93, 0xf1, 0xe8, 0x4c, 0x67, 0xed, 0xbf, 0xba, +}; +static const unsigned char kat2259_addinreseed[] = {0}; +static const unsigned char kat2259_addin0[] = {0}; +static const unsigned char kat2259_addin1[] = {0}; +static const unsigned char kat2259_retbits[] = { + 0x83, 0xf9, 0x86, 0xa5, 0xf8, 0x3a, 0x59, 0x12, 0x6d, 0xc8, 0x61, 0xe0, + 0xa6, 0x5a, 0x9f, 0x45, 0x44, 0x62, 0xb8, 0xf5, 0xaf, 0xa6, 0xf4, 0xdc, + 0x72, 0x4d, 0x11, 0x93, 0x6a, 0xe1, 0xa1, 0x49, 0x42, 0x23, 0x8c, 0x7c, + 0xe8, 0x5a, 0xa2, 0x7b, 0x80, 0xed, 0x71, 0x19, 0xd4, 0xc3, 0xd3, 0x84, + 0xb9, 0x12, 0x4a, 0xe5, 0xd6, 0x64, 0xd9, 0xa1, 0xd0, 0x09, 0x3c, 0xf6, + 0x9f, 0xa1, 0x2f, 0x80, +}; +static const struct drbg_kat_pr_false kat2259_t = { + 8, kat2259_entropyin, kat2259_nonce, kat2259_persstr, + kat2259_entropyinreseed, kat2259_addinreseed, kat2259_addin0, + kat2259_addin1, kat2259_retbits +}; +static const struct drbg_kat kat2259 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2259_t +}; + +static const unsigned char kat2260_entropyin[] = { + 0x13, 0x53, 0xd6, 0x86, 0x1c, 0x03, 0x4f, 0x22, 0x09, 0x7d, 0x5c, 0xf4, + 0xc6, 0x75, 0x27, 0x5d, 0xdb, 0x58, 0x8d, 0xbc, 0x5a, 0xc3, 0x15, 0xb7, + 0x25, 0x62, 0xb6, 0x4a, 0xaf, 0x84, 0xcd, 0x24, +}; +static const unsigned char kat2260_nonce[] = {0}; +static const unsigned char kat2260_persstr[] = { + 0x56, 0x32, 0x41, 0x7e, 0x26, 0x80, 0x24, 0x19, 0x67, 0xbf, 0x72, 0x7d, + 0x6f, 0xb8, 0xa7, 0x46, 0x04, 0xdc, 0x63, 0x5b, 0x3d, 0x05, 0xea, 0x70, + 0xda, 0xb6, 0xb0, 0xfd, 0xac, 0xb0, 0xbe, 0xbe, +}; +static const unsigned char kat2260_entropyinreseed[] = { + 0xc9, 0x0f, 0x5e, 0x48, 0x66, 0xf6, 0xc7, 0x6f, 0x9d, 0x75, 0x41, 0x88, + 0x2e, 0x38, 0x61, 0x78, 0xad, 0xa3, 0xe2, 0x9c, 0x7a, 0xa4, 0x32, 0x96, + 0x39, 0xb8, 0xe6, 0x16, 0x7b, 0x1a, 0x2d, 0x20, +}; +static const unsigned char kat2260_addinreseed[] = {0}; +static const unsigned char kat2260_addin0[] = {0}; +static const unsigned char kat2260_addin1[] = {0}; +static const unsigned char kat2260_retbits[] = { + 0x49, 0x67, 0x9c, 0x5f, 0x86, 0x1a, 0xfa, 0xd3, 0x5f, 0xf1, 0xd2, 0xd1, + 0xa5, 0x23, 0x53, 0xfb, 0xd7, 0x5c, 0x76, 0x1b, 0xa0, 0xb9, 0xb8, 0xfd, + 0xc8, 0x3f, 0x7c, 0xe2, 0x6c, 0xb6, 0x48, 0x95, 0x7d, 0x74, 0xf8, 0x58, + 0x8f, 0x62, 0x3e, 0xc4, 0xba, 0x24, 0x4d, 0x97, 0x07, 0xc1, 0x3b, 0x07, + 0xeb, 0x6f, 0xa1, 0xac, 0xf3, 0x7c, 0xc1, 0x34, 0x1f, 0x59, 0x55, 0x77, + 0x8d, 0xee, 0xb7, 0x46, +}; +static const struct drbg_kat_pr_false kat2260_t = { + 9, kat2260_entropyin, kat2260_nonce, kat2260_persstr, + kat2260_entropyinreseed, kat2260_addinreseed, kat2260_addin0, + kat2260_addin1, kat2260_retbits +}; +static const struct drbg_kat kat2260 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2260_t +}; + +static const unsigned char kat2261_entropyin[] = { + 0x85, 0xc5, 0x08, 0xf0, 0x0b, 0x62, 0x85, 0xe4, 0xce, 0xf2, 0x18, 0x7b, + 0x28, 0x16, 0x9c, 0xe7, 0x2d, 0xc5, 0x69, 0xeb, 0xc1, 0xd2, 0x88, 0xbf, + 0xb3, 0x37, 0xfd, 0xd3, 0x6a, 0x52, 0x32, 0x85, +}; +static const unsigned char kat2261_nonce[] = {0}; +static const unsigned char kat2261_persstr[] = { + 0x9c, 0xc8, 0xfb, 0x6e, 0xcc, 0x2c, 0x19, 0x65, 0x39, 0x86, 0x31, 0x59, + 0x40, 0xdb, 0x55, 0x23, 0x60, 0xa2, 0x5b, 0x5d, 0x8f, 0xe4, 0xb9, 0x14, + 0x2e, 0x15, 0xdc, 0x62, 0xc5, 0xbe, 0x19, 0xf0, +}; +static const unsigned char kat2261_entropyinreseed[] = { + 0x05, 0x0a, 0xf1, 0x10, 0x89, 0x67, 0xaf, 0x92, 0x6f, 0xca, 0xf4, 0xdf, + 0x07, 0x87, 0xc9, 0xe0, 0x39, 0x9a, 0x07, 0x20, 0x44, 0x52, 0x86, 0x60, + 0x94, 0x64, 0x6a, 0x4e, 0xe7, 0xff, 0x69, 0x2c, +}; +static const unsigned char kat2261_addinreseed[] = {0}; +static const unsigned char kat2261_addin0[] = {0}; +static const unsigned char kat2261_addin1[] = {0}; +static const unsigned char kat2261_retbits[] = { + 0x71, 0x23, 0x2d, 0xff, 0x0b, 0x88, 0x7e, 0x91, 0x44, 0x21, 0xdd, 0xe7, + 0xd3, 0xd9, 0x07, 0xa7, 0x42, 0x5e, 0x95, 0xe5, 0x99, 0x79, 0x46, 0x08, + 0x12, 0x0b, 0x6f, 0xa3, 0x3a, 0xe8, 0x75, 0x1f, 0xf3, 0x1d, 0x01, 0x99, + 0x69, 0x92, 0x44, 0x64, 0x4f, 0xe1, 0xe7, 0x51, 0x71, 0x20, 0xbe, 0x8b, + 0x28, 0xe8, 0x35, 0x33, 0x6f, 0x94, 0xc7, 0x9c, 0xc9, 0x4b, 0xf8, 0xdc, + 0x82, 0xa1, 0x02, 0xfb, +}; +static const struct drbg_kat_pr_false kat2261_t = { + 10, kat2261_entropyin, kat2261_nonce, kat2261_persstr, + kat2261_entropyinreseed, kat2261_addinreseed, kat2261_addin0, + kat2261_addin1, kat2261_retbits +}; +static const struct drbg_kat kat2261 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2261_t +}; + +static const unsigned char kat2262_entropyin[] = { + 0x4f, 0xe0, 0xd8, 0x99, 0x09, 0x01, 0xbd, 0x60, 0xd7, 0x8f, 0xdc, 0xe5, + 0xbb, 0xfa, 0xfb, 0xb8, 0x24, 0x73, 0x78, 0xa0, 0x8a, 0x83, 0xe6, 0xf5, + 0xfb, 0xa7, 0x95, 0x89, 0x81, 0x22, 0x54, 0xe7, +}; +static const unsigned char kat2262_nonce[] = {0}; +static const unsigned char kat2262_persstr[] = { + 0x24, 0x0b, 0x77, 0x76, 0x0a, 0x80, 0x83, 0xdc, 0x5e, 0x1a, 0xb6, 0x2c, + 0x4b, 0x70, 0x45, 0x0a, 0x28, 0x41, 0xe2, 0x4f, 0xc3, 0xc3, 0xec, 0x74, + 0x02, 0xd5, 0x57, 0xdb, 0xe1, 0xf2, 0xf6, 0xa2, +}; +static const unsigned char kat2262_entropyinreseed[] = { + 0x15, 0x2c, 0x88, 0x61, 0xdd, 0x1f, 0x1d, 0x1f, 0x6a, 0xb4, 0xe5, 0x65, + 0xa4, 0xe8, 0x7c, 0xb7, 0x46, 0x0d, 0xbe, 0x72, 0xe3, 0x43, 0x8a, 0x76, + 0x9e, 0xbc, 0xcf, 0xf3, 0x38, 0x8c, 0x2c, 0x29, +}; +static const unsigned char kat2262_addinreseed[] = {0}; +static const unsigned char kat2262_addin0[] = {0}; +static const unsigned char kat2262_addin1[] = {0}; +static const unsigned char kat2262_retbits[] = { + 0xaa, 0x47, 0x57, 0x60, 0xe5, 0x01, 0x97, 0x2f, 0xe0, 0x4e, 0x42, 0xd9, + 0x0c, 0x62, 0x10, 0x87, 0x28, 0xb4, 0x2f, 0xfb, 0x9e, 0xcd, 0x5f, 0xc0, + 0x57, 0xc6, 0xc4, 0xd1, 0x90, 0xc1, 0x6d, 0x83, 0xc4, 0x2e, 0xf0, 0xf4, + 0xeb, 0x96, 0x55, 0x7a, 0xfd, 0xdb, 0x1b, 0xc7, 0x6a, 0x31, 0x9a, 0x81, + 0xfd, 0xf5, 0xe3, 0x16, 0xe4, 0xf9, 0x25, 0x25, 0x48, 0x39, 0x94, 0x5f, + 0xdd, 0x21, 0x32, 0x3a, +}; +static const struct drbg_kat_pr_false kat2262_t = { + 11, kat2262_entropyin, kat2262_nonce, kat2262_persstr, + kat2262_entropyinreseed, kat2262_addinreseed, kat2262_addin0, + kat2262_addin1, kat2262_retbits +}; +static const struct drbg_kat kat2262 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2262_t +}; + +static const unsigned char kat2263_entropyin[] = { + 0x76, 0xd9, 0x75, 0x22, 0xd2, 0x88, 0xa5, 0x78, 0x63, 0x10, 0xfb, 0x49, + 0xd3, 0x58, 0xa4, 0x0a, 0xc9, 0xcd, 0x59, 0xda, 0xc2, 0x00, 0xd1, 0x79, + 0xca, 0x42, 0xaf, 0x31, 0x74, 0xb9, 0x58, 0x14, +}; +static const unsigned char kat2263_nonce[] = {0}; +static const unsigned char kat2263_persstr[] = { + 0xe3, 0x9b, 0x94, 0xd6, 0x96, 0xbd, 0x9d, 0x5a, 0xe2, 0xd2, 0x7a, 0x1c, + 0x23, 0x2e, 0x2c, 0xa4, 0xfa, 0xa8, 0x13, 0xfa, 0x1b, 0x34, 0xf7, 0x93, + 0xed, 0x7b, 0xa5, 0xd9, 0x31, 0xdc, 0xec, 0x34, +}; +static const unsigned char kat2263_entropyinreseed[] = { + 0x8a, 0xe2, 0xcf, 0xb4, 0x4c, 0x92, 0x02, 0x03, 0x42, 0x45, 0xe8, 0xaa, + 0x88, 0x9a, 0x60, 0x38, 0x3a, 0x1f, 0x34, 0x99, 0x17, 0x2f, 0x46, 0x7b, + 0x23, 0xcc, 0x13, 0xd1, 0x48, 0x60, 0x0b, 0x4b, +}; +static const unsigned char kat2263_addinreseed[] = {0}; +static const unsigned char kat2263_addin0[] = {0}; +static const unsigned char kat2263_addin1[] = {0}; +static const unsigned char kat2263_retbits[] = { + 0x1a, 0x04, 0xbe, 0x8e, 0x86, 0xc1, 0x59, 0x1f, 0x0b, 0x53, 0x86, 0xc8, + 0xd9, 0x2d, 0xdf, 0x7a, 0x29, 0xb9, 0x05, 0xe8, 0x63, 0xae, 0x96, 0x7a, + 0x48, 0x15, 0x7f, 0xb6, 0xb0, 0x8b, 0x89, 0x30, 0x51, 0x60, 0xdc, 0x72, + 0xd1, 0x20, 0x71, 0x52, 0xe7, 0x99, 0x87, 0xc0, 0x8e, 0x9e, 0x73, 0x22, + 0x41, 0x94, 0xfc, 0x5f, 0x19, 0x8e, 0x03, 0x4b, 0xc2, 0x12, 0x20, 0x82, + 0x28, 0xe2, 0xce, 0xb6, +}; +static const struct drbg_kat_pr_false kat2263_t = { + 12, kat2263_entropyin, kat2263_nonce, kat2263_persstr, + kat2263_entropyinreseed, kat2263_addinreseed, kat2263_addin0, + kat2263_addin1, kat2263_retbits +}; +static const struct drbg_kat kat2263 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2263_t +}; + +static const unsigned char kat2264_entropyin[] = { + 0x51, 0x16, 0x9f, 0xe1, 0x9e, 0xc2, 0xcc, 0x92, 0x4f, 0x66, 0x54, 0xae, + 0xa7, 0x7a, 0x9c, 0x18, 0x90, 0xf8, 0xa6, 0x4b, 0x34, 0x07, 0x1a, 0x69, + 0x4e, 0xb4, 0xdf, 0x88, 0xa0, 0xba, 0x6a, 0xec, +}; +static const unsigned char kat2264_nonce[] = {0}; +static const unsigned char kat2264_persstr[] = { + 0x6b, 0x34, 0xc9, 0xfe, 0x6b, 0x14, 0x6f, 0xe9, 0x34, 0x2d, 0x4b, 0x1d, + 0xec, 0x10, 0xa5, 0x8b, 0x64, 0xc3, 0xf3, 0x8b, 0x12, 0x6f, 0xbe, 0xc4, + 0xc3, 0xb9, 0xa3, 0x77, 0x4f, 0xd6, 0x6a, 0x3e, +}; +static const unsigned char kat2264_entropyinreseed[] = { + 0x0c, 0xd4, 0x46, 0x69, 0x9c, 0x1b, 0xf3, 0xfe, 0x98, 0x26, 0xd7, 0xfb, + 0xd0, 0x77, 0xac, 0x3b, 0x73, 0xd3, 0x43, 0x65, 0x03, 0xbc, 0x3d, 0x9a, + 0x4c, 0xba, 0x9c, 0xdb, 0xde, 0x7c, 0xe0, 0xf9, +}; +static const unsigned char kat2264_addinreseed[] = {0}; +static const unsigned char kat2264_addin0[] = {0}; +static const unsigned char kat2264_addin1[] = {0}; +static const unsigned char kat2264_retbits[] = { + 0x37, 0x9e, 0x2a, 0xbd, 0xfd, 0xf6, 0x76, 0x4c, 0xb2, 0xac, 0x8c, 0xeb, + 0xdf, 0x57, 0x7b, 0xdf, 0xb5, 0x82, 0xda, 0x5e, 0xd5, 0x07, 0xd9, 0x6b, + 0xbd, 0x27, 0x84, 0xac, 0x6e, 0x18, 0xd4, 0xb3, 0xa5, 0x24, 0xd2, 0xf9, + 0x22, 0x6c, 0x21, 0x57, 0x2a, 0x54, 0x4d, 0x59, 0x2f, 0x49, 0x03, 0xb1, + 0xa5, 0x6c, 0xd1, 0x65, 0x1b, 0x0d, 0x0f, 0x0e, 0x2f, 0x13, 0xbe, 0xc3, + 0x11, 0x4c, 0x93, 0x57, +}; +static const struct drbg_kat_pr_false kat2264_t = { + 13, kat2264_entropyin, kat2264_nonce, kat2264_persstr, + kat2264_entropyinreseed, kat2264_addinreseed, kat2264_addin0, + kat2264_addin1, kat2264_retbits +}; +static const struct drbg_kat kat2264 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2264_t +}; + +static const unsigned char kat2265_entropyin[] = { + 0x85, 0xd2, 0xa6, 0xec, 0x8b, 0xe0, 0x12, 0xea, 0x4a, 0x50, 0x50, 0x51, + 0xed, 0x87, 0xa0, 0xa7, 0x4e, 0xbf, 0x60, 0xbf, 0xba, 0xc0, 0xed, 0x57, + 0x7d, 0xdc, 0xcf, 0xb1, 0x12, 0xfe, 0xd6, 0x3e, +}; +static const unsigned char kat2265_nonce[] = {0}; +static const unsigned char kat2265_persstr[] = { + 0xa4, 0x8f, 0x64, 0xc6, 0x72, 0xf3, 0x76, 0x49, 0xb1, 0x26, 0x30, 0x15, + 0x7e, 0x15, 0xb9, 0x36, 0x4e, 0xe7, 0x54, 0x89, 0x84, 0xd9, 0x41, 0x71, + 0xb2, 0xa2, 0x91, 0x29, 0x2e, 0x54, 0xe1, 0x3e, +}; +static const unsigned char kat2265_entropyinreseed[] = { + 0xc4, 0x93, 0x3f, 0x8a, 0x2a, 0xf9, 0x93, 0x89, 0x73, 0x2c, 0xbd, 0x01, + 0x20, 0xb6, 0x97, 0xb9, 0xad, 0x99, 0xe4, 0x82, 0x1f, 0x46, 0x10, 0xb6, + 0x6c, 0x18, 0xd9, 0xda, 0x0e, 0x28, 0xbd, 0x00, +}; +static const unsigned char kat2265_addinreseed[] = {0}; +static const unsigned char kat2265_addin0[] = {0}; +static const unsigned char kat2265_addin1[] = {0}; +static const unsigned char kat2265_retbits[] = { + 0x77, 0xdc, 0x9c, 0x1b, 0x63, 0x6a, 0xcd, 0x5b, 0x76, 0xa3, 0x45, 0x3b, + 0x16, 0x84, 0x79, 0xce, 0x94, 0x7f, 0x4f, 0xc1, 0x40, 0x1c, 0xca, 0xd4, + 0xdc, 0x61, 0xd4, 0x63, 0x03, 0x70, 0xce, 0x21, 0xd2, 0x90, 0x17, 0x24, + 0x4c, 0xee, 0x50, 0x64, 0x4e, 0x36, 0x54, 0xe7, 0x02, 0xb6, 0x23, 0xe2, + 0x0f, 0xf4, 0x98, 0x61, 0x89, 0x07, 0x81, 0xa6, 0xbd, 0xb6, 0x8e, 0x5c, + 0xf3, 0xa7, 0x21, 0x6b, +}; +static const struct drbg_kat_pr_false kat2265_t = { + 14, kat2265_entropyin, kat2265_nonce, kat2265_persstr, + kat2265_entropyinreseed, kat2265_addinreseed, kat2265_addin0, + kat2265_addin1, kat2265_retbits +}; +static const struct drbg_kat kat2265 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2265_t +}; + +static const unsigned char kat2266_entropyin[] = { + 0x82, 0xaa, 0xbd, 0x90, 0x1b, 0x21, 0xbd, 0x5f, 0x54, 0x54, 0x47, 0x55, + 0xba, 0x1f, 0xb4, 0xc6, 0xa3, 0xf5, 0x99, 0x59, 0xe5, 0x9a, 0x20, 0x56, + 0x67, 0xdf, 0xcb, 0x5e, 0x76, 0x0b, 0xd4, 0xa5, +}; +static const unsigned char kat2266_nonce[] = {0}; +static const unsigned char kat2266_persstr[] = { + 0x33, 0x78, 0x81, 0xb1, 0x6c, 0x89, 0xb8, 0xf4, 0x9f, 0x55, 0xa6, 0xe8, + 0x2b, 0xf1, 0xae, 0x98, 0x24, 0x77, 0x9b, 0x40, 0x15, 0xf3, 0x04, 0x4c, + 0x78, 0x0b, 0x23, 0x81, 0x6b, 0xb3, 0x99, 0xd6, +}; +static const unsigned char kat2266_entropyinreseed[] = { + 0x2e, 0xd5, 0x33, 0xa7, 0xfa, 0x6b, 0xf1, 0x96, 0x57, 0x11, 0xb1, 0x2a, + 0x9d, 0x99, 0x37, 0x13, 0x9f, 0x52, 0xb6, 0x39, 0xf9, 0x40, 0x5b, 0x4a, + 0x40, 0xc8, 0xfc, 0x2f, 0xeb, 0xf6, 0x3b, 0x21, +}; +static const unsigned char kat2266_addinreseed[] = { + 0x54, 0x44, 0xc8, 0xa3, 0xd8, 0x17, 0x0a, 0x64, 0x0a, 0x16, 0x19, 0xc8, + 0x7d, 0xfc, 0xa6, 0x60, 0xd6, 0xd2, 0xa7, 0x93, 0x5e, 0xb2, 0x1f, 0xb0, + 0x98, 0x8a, 0x12, 0x6c, 0x5f, 0x16, 0xef, 0x41, +}; +static const unsigned char kat2266_addin0[] = { + 0xf7, 0xd8, 0x47, 0xa4, 0xc1, 0x8f, 0x86, 0x3f, 0x55, 0xfb, 0xa4, 0x05, + 0xd8, 0x99, 0xf8, 0x58, 0x09, 0x1c, 0x3a, 0x8e, 0x6e, 0x97, 0x4b, 0xdc, + 0xba, 0x58, 0xcd, 0x35, 0x63, 0xec, 0x63, 0xf1, +}; +static const unsigned char kat2266_addin1[] = { + 0x35, 0xc8, 0x39, 0x3b, 0x03, 0x67, 0x4d, 0x9b, 0x89, 0x6b, 0x21, 0x30, + 0xe1, 0x06, 0x9d, 0x53, 0x77, 0x8f, 0xe5, 0x7a, 0x06, 0x3b, 0xcf, 0xcd, + 0x05, 0x1f, 0x7d, 0xe0, 0x36, 0xc9, 0x27, 0xbf, +}; +static const unsigned char kat2266_retbits[] = { + 0xb2, 0x18, 0x61, 0xbb, 0xef, 0x51, 0xda, 0x17, 0x34, 0x7d, 0x72, 0x09, + 0x61, 0x37, 0x5e, 0x24, 0x4a, 0x34, 0xc3, 0x1c, 0x36, 0xf1, 0xa7, 0x56, + 0x85, 0x03, 0xb2, 0xdb, 0x6a, 0x33, 0x5b, 0x3c, 0xae, 0x2d, 0xb4, 0x13, + 0x0d, 0x4a, 0x1f, 0x35, 0x3d, 0x60, 0x85, 0xe3, 0x9f, 0xdd, 0xb8, 0xbe, + 0xa2, 0xa0, 0x41, 0x40, 0xf4, 0x44, 0x81, 0xf0, 0x79, 0x93, 0xa9, 0x3c, + 0x8e, 0xd0, 0xd1, 0xc1, +}; +static const struct drbg_kat_pr_false kat2266_t = { + 0, kat2266_entropyin, kat2266_nonce, kat2266_persstr, + kat2266_entropyinreseed, kat2266_addinreseed, kat2266_addin0, + kat2266_addin1, kat2266_retbits +}; +static const struct drbg_kat kat2266 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2266_t +}; + +static const unsigned char kat2267_entropyin[] = { + 0xe0, 0x1a, 0x0c, 0x42, 0xbf, 0x15, 0xd0, 0xac, 0x59, 0x3c, 0xd8, 0xf9, + 0xeb, 0x75, 0x72, 0x49, 0x01, 0x8d, 0x97, 0xcd, 0x02, 0x6a, 0x61, 0xbc, + 0x34, 0x2d, 0x1e, 0xfa, 0x22, 0x36, 0x04, 0x61, +}; +static const unsigned char kat2267_nonce[] = {0}; +static const unsigned char kat2267_persstr[] = { + 0x12, 0x71, 0xb8, 0x19, 0x4e, 0x13, 0x16, 0xf8, 0xd9, 0xb8, 0xa0, 0xc9, + 0x11, 0x50, 0x2b, 0x6f, 0x9e, 0xee, 0x1a, 0x34, 0x73, 0xae, 0x0d, 0x6f, + 0xda, 0x0e, 0x43, 0xfd, 0x06, 0x68, 0x31, 0xc0, +}; +static const unsigned char kat2267_entropyinreseed[] = { + 0xb8, 0x7a, 0x5f, 0x9c, 0xb5, 0x85, 0xd3, 0x33, 0xc7, 0x02, 0x37, 0x6c, + 0xd5, 0x43, 0xb0, 0x06, 0x24, 0xd9, 0x31, 0x2e, 0x2f, 0x64, 0xb6, 0x72, + 0x2c, 0x95, 0x02, 0x8e, 0xed, 0xe0, 0x0d, 0x98, +}; +static const unsigned char kat2267_addinreseed[] = { + 0x4c, 0x6b, 0x42, 0x71, 0xd7, 0x8a, 0x3e, 0x4d, 0x99, 0x51, 0x2a, 0xe6, + 0xa0, 0xca, 0x7f, 0x8a, 0xd5, 0x9e, 0xf6, 0x7e, 0x28, 0x4c, 0x8d, 0x2a, + 0x40, 0x91, 0x6f, 0x5e, 0x83, 0xd1, 0x55, 0xde, +}; +static const unsigned char kat2267_addin0[] = { + 0xbb, 0x4e, 0x5b, 0xd8, 0xde, 0xb2, 0xd2, 0xde, 0x49, 0x4f, 0x9d, 0x56, + 0x04, 0x1d, 0x4f, 0x56, 0xf1, 0x6f, 0xa6, 0x29, 0xd1, 0x7b, 0x54, 0xde, + 0x6c, 0x2c, 0x20, 0x18, 0xdf, 0xa0, 0xd8, 0xf2, +}; +static const unsigned char kat2267_addin1[] = { + 0xc6, 0xd3, 0xae, 0xf9, 0xb3, 0xbf, 0x45, 0x75, 0x6d, 0x0b, 0x01, 0x7e, + 0xda, 0xff, 0x4e, 0x21, 0x62, 0x60, 0x9e, 0x47, 0xb7, 0x95, 0x4f, 0x5e, + 0xf9, 0xb4, 0x1b, 0x8f, 0xc6, 0x7e, 0x1b, 0x7a, +}; +static const unsigned char kat2267_retbits[] = { + 0x5e, 0xb2, 0x51, 0x20, 0x20, 0xd1, 0xc1, 0xb7, 0xe8, 0x95, 0x1b, 0x20, + 0x66, 0x96, 0xfc, 0x76, 0xf8, 0x3e, 0x39, 0xc1, 0x8a, 0xac, 0x68, 0x2e, + 0x35, 0x96, 0x58, 0x68, 0x9a, 0xf7, 0x0c, 0x48, 0x62, 0xe1, 0xb8, 0x36, + 0x63, 0xfd, 0x24, 0x6c, 0xac, 0x02, 0xfc, 0x04, 0x55, 0xba, 0xbd, 0x6c, + 0xc3, 0xab, 0xc2, 0x06, 0xa3, 0x0a, 0x40, 0x59, 0xab, 0x48, 0x4a, 0x9d, + 0xa0, 0xff, 0x3d, 0x84, +}; +static const struct drbg_kat_pr_false kat2267_t = { + 1, kat2267_entropyin, kat2267_nonce, kat2267_persstr, + kat2267_entropyinreseed, kat2267_addinreseed, kat2267_addin0, + kat2267_addin1, kat2267_retbits +}; +static const struct drbg_kat kat2267 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2267_t +}; + +static const unsigned char kat2268_entropyin[] = { + 0x65, 0xcd, 0xfa, 0x76, 0xa8, 0xa8, 0xb9, 0x03, 0x34, 0x2c, 0xa6, 0x10, + 0xbc, 0x33, 0x92, 0xa0, 0xcc, 0x8c, 0x7a, 0x95, 0xe4, 0xd0, 0x6e, 0x32, + 0xbc, 0x11, 0x4b, 0x1e, 0x4e, 0x65, 0x4a, 0xfa, +}; +static const unsigned char kat2268_nonce[] = {0}; +static const unsigned char kat2268_persstr[] = { + 0x21, 0x39, 0xe0, 0x15, 0x60, 0x03, 0x47, 0xdb, 0xd6, 0x0c, 0x2e, 0xcd, + 0x22, 0x03, 0x13, 0x8e, 0x13, 0xd2, 0xea, 0x2d, 0xd6, 0x7b, 0xc4, 0x4b, + 0x0e, 0x00, 0xd3, 0x15, 0xcf, 0xa9, 0xd0, 0x55, +}; +static const unsigned char kat2268_entropyinreseed[] = { + 0x72, 0x06, 0x6f, 0x1f, 0x42, 0xf4, 0x60, 0x25, 0x18, 0xad, 0xe0, 0x8b, + 0xd8, 0x15, 0xd2, 0x21, 0x25, 0xe2, 0x46, 0x37, 0x6d, 0x0c, 0xdd, 0xfe, + 0xf3, 0xbb, 0xc8, 0x85, 0xc4, 0xec, 0x05, 0xe7, +}; +static const unsigned char kat2268_addinreseed[] = { + 0xa3, 0x88, 0x76, 0x1c, 0xc3, 0x5d, 0xd4, 0x5c, 0x73, 0x76, 0x8f, 0xca, + 0x9b, 0x48, 0x56, 0xef, 0xdf, 0xc9, 0x82, 0x2d, 0x85, 0x83, 0x0a, 0x65, + 0x1a, 0x92, 0xae, 0x7e, 0xdd, 0xc4, 0x8d, 0x2c, +}; +static const unsigned char kat2268_addin0[] = { + 0x47, 0x96, 0x50, 0xb8, 0x23, 0x5f, 0x72, 0x85, 0x0d, 0x5f, 0x09, 0x50, + 0x4e, 0xa6, 0x9f, 0x4f, 0x81, 0xf8, 0x82, 0x14, 0xce, 0x64, 0x57, 0xbb, + 0xaa, 0x8b, 0x5b, 0x6f, 0xdd, 0x03, 0xa5, 0x7a, +}; +static const unsigned char kat2268_addin1[] = { + 0x7e, 0xba, 0x6b, 0x99, 0x4f, 0x4a, 0xfc, 0x2c, 0x75, 0x86, 0x0a, 0x71, + 0xb8, 0xbd, 0xdb, 0x41, 0xab, 0xab, 0x02, 0x91, 0x95, 0x11, 0x68, 0x34, + 0x31, 0x02, 0x82, 0x0c, 0x45, 0x73, 0x41, 0x08, +}; +static const unsigned char kat2268_retbits[] = { + 0xfd, 0xf9, 0x1c, 0xbb, 0x54, 0x14, 0xaf, 0x19, 0x4b, 0x10, 0x7f, 0x68, + 0xbe, 0x0b, 0x6b, 0xb2, 0xbb, 0xda, 0x86, 0x15, 0x75, 0x50, 0x40, 0xb1, + 0x3b, 0x81, 0x7c, 0x9c, 0x92, 0x96, 0x35, 0x2a, 0x2c, 0xd1, 0xe9, 0x5b, + 0x72, 0x8c, 0x91, 0x64, 0x71, 0x12, 0x2c, 0x86, 0x55, 0x9b, 0xc1, 0x61, + 0xbf, 0xe7, 0xc7, 0x60, 0x58, 0x4d, 0x34, 0xea, 0x9d, 0x5e, 0x1c, 0x64, + 0x5b, 0x65, 0xf1, 0x02, +}; +static const struct drbg_kat_pr_false kat2268_t = { + 2, kat2268_entropyin, kat2268_nonce, kat2268_persstr, + kat2268_entropyinreseed, kat2268_addinreseed, kat2268_addin0, + kat2268_addin1, kat2268_retbits +}; +static const struct drbg_kat kat2268 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2268_t +}; + +static const unsigned char kat2269_entropyin[] = { + 0x0e, 0x91, 0xb7, 0x33, 0x28, 0x68, 0x28, 0x08, 0x32, 0x1e, 0xf7, 0x13, + 0xff, 0xd8, 0x13, 0x5a, 0x6a, 0x8b, 0x62, 0x1b, 0xcc, 0xdd, 0x7c, 0xe9, + 0x7f, 0xf4, 0xb0, 0xb9, 0x40, 0xc5, 0x5c, 0x67, +}; +static const unsigned char kat2269_nonce[] = {0}; +static const unsigned char kat2269_persstr[] = { + 0xcb, 0xd5, 0xff, 0xde, 0x8c, 0x60, 0xdd, 0x65, 0xc6, 0x6b, 0xeb, 0xfc, + 0xed, 0x0a, 0x47, 0x36, 0x68, 0x05, 0x0a, 0x75, 0x3e, 0x3b, 0x5f, 0xbe, + 0xc2, 0x00, 0x0f, 0x4d, 0x21, 0xfe, 0x24, 0xef, +}; +static const unsigned char kat2269_entropyinreseed[] = { + 0xf5, 0x3a, 0x72, 0x71, 0x08, 0x34, 0x74, 0x4a, 0x52, 0xe2, 0x93, 0x94, + 0x45, 0x9e, 0x31, 0x1d, 0xce, 0xcc, 0x37, 0xf3, 0xc2, 0x70, 0x14, 0xdc, + 0x3c, 0x9d, 0x85, 0x00, 0xf4, 0xb4, 0xbe, 0xcd, +}; +static const unsigned char kat2269_addinreseed[] = { + 0x21, 0x5f, 0x26, 0x55, 0xae, 0x42, 0x46, 0x4b, 0x4a, 0xca, 0x80, 0x62, + 0x7e, 0x53, 0xf9, 0x2d, 0x02, 0x78, 0xa8, 0x66, 0x05, 0x93, 0x62, 0x8c, + 0x96, 0xee, 0x04, 0x8b, 0xc4, 0x4f, 0x8f, 0xaa, +}; +static const unsigned char kat2269_addin0[] = { + 0x00, 0x62, 0x75, 0xae, 0x93, 0xdf, 0x89, 0x73, 0x4f, 0x53, 0xb6, 0x2d, + 0x5f, 0xd4, 0xb1, 0x49, 0xae, 0x0e, 0xa4, 0xca, 0xa9, 0x0d, 0x2e, 0xe1, + 0x26, 0x85, 0x4d, 0x36, 0x52, 0x62, 0xe0, 0x15, +}; +static const unsigned char kat2269_addin1[] = { + 0x20, 0x6b, 0xaf, 0x1b, 0x61, 0x4c, 0x39, 0xc0, 0xc9, 0x86, 0xd3, 0x91, + 0x8a, 0xcb, 0x58, 0x61, 0x95, 0xa3, 0x72, 0x15, 0x82, 0xac, 0xec, 0x96, + 0x1c, 0x83, 0x07, 0x0e, 0x09, 0xa2, 0x81, 0xec, +}; +static const unsigned char kat2269_retbits[] = { + 0xae, 0xb8, 0x33, 0x5f, 0x71, 0x17, 0x4b, 0xf6, 0x52, 0x25, 0xa9, 0x09, + 0xee, 0x49, 0x72, 0x26, 0xd6, 0x6e, 0xa6, 0x83, 0x99, 0x8f, 0x0b, 0xe5, + 0xf3, 0x4d, 0x7c, 0x1d, 0x88, 0xe0, 0xe4, 0x6d, 0x96, 0xbe, 0xc6, 0x43, + 0x80, 0x30, 0xa7, 0xc1, 0xda, 0x3b, 0x7f, 0xb3, 0xba, 0x91, 0x61, 0x50, + 0x6f, 0x78, 0x16, 0x0d, 0x40, 0xce, 0xa5, 0xf7, 0x4d, 0xae, 0x98, 0x5b, + 0xc6, 0xb2, 0xe8, 0x05, +}; +static const struct drbg_kat_pr_false kat2269_t = { + 3, kat2269_entropyin, kat2269_nonce, kat2269_persstr, + kat2269_entropyinreseed, kat2269_addinreseed, kat2269_addin0, + kat2269_addin1, kat2269_retbits +}; +static const struct drbg_kat kat2269 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2269_t +}; + +static const unsigned char kat2270_entropyin[] = { + 0xef, 0xe6, 0xb0, 0x36, 0xc6, 0xfe, 0x4a, 0xf1, 0xcd, 0x49, 0xf4, 0xa0, + 0x5f, 0x0b, 0x07, 0x11, 0x63, 0x9c, 0x4a, 0xbd, 0x23, 0xd1, 0x48, 0x4b, + 0xdc, 0x38, 0x0b, 0xbd, 0x70, 0xac, 0x52, 0xea, +}; +static const unsigned char kat2270_nonce[] = {0}; +static const unsigned char kat2270_persstr[] = { + 0x90, 0x0e, 0xd9, 0x63, 0x9b, 0x54, 0x9e, 0xba, 0x0b, 0xac, 0x4e, 0xb1, + 0x25, 0xda, 0x62, 0xb4, 0x14, 0x5d, 0xeb, 0x48, 0xf8, 0x17, 0xee, 0xd6, + 0xc3, 0xbc, 0xb6, 0xec, 0x78, 0x22, 0x94, 0x04, +}; +static const unsigned char kat2270_entropyinreseed[] = { + 0xe7, 0x66, 0x9b, 0xff, 0x42, 0x34, 0x58, 0x52, 0xc5, 0x7a, 0x2a, 0xc4, + 0x09, 0x9c, 0x43, 0xf8, 0x8c, 0xf2, 0x5d, 0xd9, 0xff, 0x6f, 0x75, 0xe1, + 0xc9, 0x26, 0xbb, 0x91, 0x14, 0x51, 0xd3, 0x84, +}; +static const unsigned char kat2270_addinreseed[] = { + 0x85, 0x8c, 0x94, 0xec, 0x1d, 0x95, 0x3f, 0xe7, 0x33, 0x84, 0x2c, 0x49, + 0xb7, 0x85, 0x89, 0xb1, 0x9b, 0xc0, 0xf6, 0xe8, 0xb3, 0x46, 0x68, 0xe0, + 0x48, 0x89, 0x76, 0x54, 0x38, 0x5a, 0x02, 0xde, +}; +static const unsigned char kat2270_addin0[] = { + 0xa1, 0x79, 0x2a, 0x91, 0xc7, 0xd9, 0x72, 0xdf, 0xe7, 0xfe, 0x45, 0xd4, + 0x82, 0x9d, 0x63, 0x58, 0xf1, 0x09, 0x22, 0x0a, 0x43, 0xc7, 0x3e, 0x63, + 0x4f, 0x2f, 0xb6, 0xc5, 0x58, 0x67, 0x98, 0xec, +}; +static const unsigned char kat2270_addin1[] = { + 0xd5, 0xcc, 0x94, 0xdd, 0xac, 0x9f, 0x2d, 0x2b, 0x88, 0x39, 0x38, 0xfd, + 0x8c, 0x4a, 0xda, 0xe1, 0x46, 0xeb, 0xc5, 0x15, 0x06, 0x11, 0x23, 0x50, + 0xd9, 0x51, 0x2a, 0x3e, 0x0b, 0x7a, 0x61, 0x05, +}; +static const unsigned char kat2270_retbits[] = { + 0x07, 0x96, 0x48, 0x9e, 0x81, 0x69, 0xfe, 0x32, 0xa5, 0xc9, 0x99, 0xf7, + 0x0a, 0x2e, 0x1b, 0x1e, 0x06, 0x55, 0xa4, 0x19, 0x0f, 0x04, 0x2e, 0x1c, + 0x6d, 0xa2, 0x71, 0x39, 0xb0, 0xdd, 0xd2, 0x2f, 0x1b, 0x15, 0x05, 0xff, + 0x10, 0x58, 0xb3, 0x43, 0x00, 0x5b, 0x81, 0x05, 0x10, 0x93, 0x9d, 0x53, + 0xf4, 0x97, 0x2e, 0xa1, 0x10, 0x49, 0x9f, 0xeb, 0x34, 0xf2, 0x11, 0x4e, + 0x90, 0x68, 0xaa, 0x0d, +}; +static const struct drbg_kat_pr_false kat2270_t = { + 4, kat2270_entropyin, kat2270_nonce, kat2270_persstr, + kat2270_entropyinreseed, kat2270_addinreseed, kat2270_addin0, + kat2270_addin1, kat2270_retbits +}; +static const struct drbg_kat kat2270 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2270_t +}; + +static const unsigned char kat2271_entropyin[] = { + 0xa5, 0xec, 0x52, 0x9d, 0x89, 0xe0, 0x8e, 0x9e, 0x44, 0x07, 0x67, 0xf7, + 0x21, 0x96, 0x0b, 0x6c, 0x6b, 0xac, 0x49, 0xaf, 0xb2, 0x12, 0xc7, 0x43, + 0x9d, 0x11, 0xdf, 0x2c, 0xda, 0xd0, 0xf3, 0x3e, +}; +static const unsigned char kat2271_nonce[] = {0}; +static const unsigned char kat2271_persstr[] = { + 0x39, 0x5b, 0xd2, 0xe9, 0x19, 0x63, 0x8e, 0x42, 0x8d, 0x61, 0x55, 0xff, + 0xeb, 0xc9, 0x00, 0x89, 0xc0, 0x7f, 0xbe, 0x01, 0x2a, 0xc5, 0xbd, 0xb1, + 0x22, 0x93, 0x55, 0x82, 0x4e, 0x14, 0x5a, 0x26, +}; +static const unsigned char kat2271_entropyinreseed[] = { + 0xee, 0x2c, 0x97, 0xe6, 0xd5, 0xb5, 0x4a, 0x29, 0x1d, 0x04, 0x15, 0xa0, + 0x30, 0x79, 0xf2, 0xd6, 0x88, 0x37, 0xfe, 0x9e, 0x42, 0x49, 0x07, 0xf7, + 0xce, 0x39, 0x8e, 0x73, 0x0e, 0xb3, 0x70, 0x17, +}; +static const unsigned char kat2271_addinreseed[] = { + 0x5b, 0x86, 0xd0, 0xd7, 0xf0, 0xfa, 0x8b, 0x14, 0x83, 0xe2, 0x75, 0x8f, + 0xc0, 0x9f, 0xf7, 0x6b, 0xf0, 0x0d, 0xac, 0x31, 0x43, 0xfc, 0x4b, 0x44, + 0xcc, 0x2c, 0xe9, 0x3b, 0x19, 0x26, 0xc1, 0xc1, +}; +static const unsigned char kat2271_addin0[] = { + 0x5b, 0xc4, 0x46, 0xc5, 0x23, 0x38, 0x6e, 0x7d, 0xca, 0x9a, 0x8b, 0x3b, + 0xf4, 0x0f, 0xb5, 0xe8, 0x66, 0x89, 0xfc, 0x4d, 0x17, 0x5a, 0x51, 0xe2, + 0x2a, 0x79, 0xa6, 0xea, 0xed, 0x79, 0xea, 0x43, +}; +static const unsigned char kat2271_addin1[] = { + 0x88, 0x79, 0x8e, 0x30, 0x8f, 0x08, 0x1c, 0xdd, 0x87, 0xe6, 0xbc, 0xec, + 0x5a, 0xb2, 0x3f, 0x73, 0x19, 0xea, 0x4e, 0x38, 0xab, 0x96, 0x7b, 0x23, + 0xa6, 0xb9, 0xd2, 0xac, 0x9c, 0xd3, 0xdb, 0xec, +}; +static const unsigned char kat2271_retbits[] = { + 0x5a, 0x42, 0x59, 0xf5, 0x27, 0x55, 0xc7, 0x4a, 0x91, 0xf2, 0x57, 0x7d, + 0xd0, 0xf4, 0x73, 0x21, 0x7e, 0x62, 0xe8, 0x85, 0x61, 0xcf, 0xfa, 0x62, + 0x5e, 0x03, 0x67, 0x29, 0x3f, 0xfb, 0x19, 0x99, 0xa3, 0xc6, 0xda, 0x37, + 0xc0, 0xbd, 0x6e, 0x62, 0xa7, 0x42, 0x53, 0x66, 0x32, 0xc8, 0x5b, 0x40, + 0x96, 0x2e, 0x72, 0x49, 0xbd, 0xe0, 0x7d, 0xef, 0xb9, 0x5b, 0x9e, 0x3a, + 0x72, 0xd2, 0x76, 0x2f, +}; +static const struct drbg_kat_pr_false kat2271_t = { + 5, kat2271_entropyin, kat2271_nonce, kat2271_persstr, + kat2271_entropyinreseed, kat2271_addinreseed, kat2271_addin0, + kat2271_addin1, kat2271_retbits +}; +static const struct drbg_kat kat2271 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2271_t +}; + +static const unsigned char kat2272_entropyin[] = { + 0xe5, 0xc6, 0x84, 0xd7, 0x03, 0x55, 0x0b, 0xf6, 0x50, 0x26, 0x46, 0x3a, + 0x89, 0x49, 0x24, 0x41, 0xf2, 0x97, 0x1c, 0xb1, 0xae, 0xe3, 0x94, 0xd1, + 0x62, 0x1c, 0x05, 0x34, 0x3c, 0x92, 0x45, 0x5e, +}; +static const unsigned char kat2272_nonce[] = {0}; +static const unsigned char kat2272_persstr[] = { + 0x8f, 0x2a, 0x85, 0x78, 0xb4, 0x50, 0x01, 0x0d, 0xf7, 0xb5, 0x0c, 0x92, + 0xc3, 0x13, 0x16, 0xcd, 0x76, 0xf2, 0x8e, 0x4a, 0x95, 0x60, 0x2e, 0xde, + 0x95, 0x77, 0x0b, 0x02, 0x69, 0x52, 0x97, 0xd7, +}; +static const unsigned char kat2272_entropyinreseed[] = { + 0xc2, 0x60, 0xed, 0x27, 0x92, 0x3b, 0x69, 0x42, 0x2a, 0x19, 0x61, 0xe4, + 0xbf, 0xbd, 0xe3, 0xa4, 0x75, 0x28, 0x99, 0x91, 0xcd, 0x31, 0xb5, 0xdb, + 0xad, 0x43, 0xa6, 0x50, 0xed, 0x29, 0xc0, 0x3c, +}; +static const unsigned char kat2272_addinreseed[] = { + 0xa9, 0xdb, 0x1a, 0x29, 0x94, 0x37, 0x07, 0xb1, 0xc3, 0xfa, 0x6d, 0x6b, + 0x1d, 0x2f, 0xa8, 0x08, 0x41, 0xb2, 0xf2, 0x6e, 0x2b, 0xe9, 0x31, 0xa8, + 0xdb, 0x58, 0x65, 0xb5, 0xe3, 0x6a, 0x1b, 0xb8, +}; +static const unsigned char kat2272_addin0[] = { + 0xbb, 0xb1, 0x1f, 0x77, 0xfd, 0xc9, 0xbd, 0x49, 0xdb, 0x0e, 0xb1, 0x9d, + 0x05, 0xb1, 0x65, 0x3d, 0xcd, 0xb0, 0x1b, 0x03, 0x2b, 0x2b, 0x53, 0xa2, + 0xa7, 0x9c, 0x74, 0xc5, 0x5a, 0x7f, 0x5e, 0x4a, +}; +static const unsigned char kat2272_addin1[] = { + 0x2c, 0xa9, 0x14, 0x03, 0xd2, 0x77, 0xf7, 0xef, 0x52, 0xd7, 0x75, 0x2f, + 0xc4, 0x73, 0x8b, 0x0a, 0x5e, 0x4c, 0x27, 0xf3, 0x4e, 0xc5, 0xbd, 0x90, + 0xac, 0x1c, 0x70, 0xd3, 0x8f, 0x7f, 0x55, 0x80, +}; +static const unsigned char kat2272_retbits[] = { + 0xd0, 0x78, 0xdd, 0x65, 0xc7, 0x18, 0x7b, 0x33, 0x7c, 0x81, 0xbc, 0xd0, + 0x3e, 0x0e, 0x54, 0x51, 0x39, 0x81, 0x87, 0xb0, 0x14, 0x64, 0xb5, 0xb1, + 0x0d, 0x85, 0xd8, 0x5b, 0xfd, 0x20, 0x62, 0x45, 0xca, 0x75, 0x8e, 0xb6, + 0xe7, 0xed, 0x57, 0x01, 0x84, 0xe9, 0xcd, 0x2f, 0xe5, 0x96, 0xf1, 0xee, + 0xfe, 0x69, 0x19, 0x10, 0xe1, 0x08, 0x7a, 0x74, 0xba, 0x73, 0x04, 0xa0, + 0x3e, 0xed, 0x6d, 0x4f, +}; +static const struct drbg_kat_pr_false kat2272_t = { + 6, kat2272_entropyin, kat2272_nonce, kat2272_persstr, + kat2272_entropyinreseed, kat2272_addinreseed, kat2272_addin0, + kat2272_addin1, kat2272_retbits +}; +static const struct drbg_kat kat2272 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2272_t +}; + +static const unsigned char kat2273_entropyin[] = { + 0x63, 0x02, 0xfb, 0x5f, 0x99, 0x25, 0x44, 0x96, 0xa7, 0xc8, 0x29, 0x37, + 0x0e, 0x43, 0xfc, 0xc8, 0xd6, 0x8e, 0x41, 0x09, 0x7a, 0x35, 0x75, 0xd3, + 0x0b, 0x41, 0x47, 0x7e, 0xc5, 0x34, 0x64, 0x0b, +}; +static const unsigned char kat2273_nonce[] = {0}; +static const unsigned char kat2273_persstr[] = { + 0x54, 0x4e, 0x22, 0x68, 0x64, 0x51, 0xc4, 0x01, 0xa9, 0xdc, 0xf0, 0xf2, + 0x4e, 0xd9, 0x22, 0xd8, 0x8e, 0x82, 0x20, 0xbe, 0x45, 0x03, 0x11, 0x1b, + 0x58, 0x0c, 0x05, 0x2d, 0x39, 0x7b, 0xc1, 0x5d, +}; +static const unsigned char kat2273_entropyinreseed[] = { + 0x0e, 0xdc, 0x85, 0xbc, 0xa4, 0x82, 0x6a, 0xe9, 0xea, 0x61, 0x8c, 0xc5, + 0xf7, 0x35, 0xcc, 0xf9, 0x74, 0x8c, 0xe8, 0xb9, 0xb4, 0x7b, 0xac, 0x67, + 0xe9, 0xf4, 0x73, 0xc2, 0xd2, 0x91, 0xd9, 0x91, +}; +static const unsigned char kat2273_addinreseed[] = { + 0x00, 0xd5, 0x73, 0xc9, 0xb8, 0x9d, 0x4f, 0x3b, 0xd6, 0x0c, 0xde, 0xb4, + 0xd4, 0x0a, 0x8a, 0xf4, 0x1e, 0x2e, 0xb2, 0xf9, 0x39, 0x7f, 0xaf, 0x0d, + 0xe0, 0x49, 0xb5, 0x0c, 0xb5, 0x63, 0x86, 0x27, +}; +static const unsigned char kat2273_addin0[] = { + 0x39, 0x87, 0xd1, 0x1b, 0xfa, 0xcf, 0x56, 0x14, 0xef, 0x0e, 0x28, 0xe2, + 0x60, 0x06, 0xd6, 0x6e, 0xa0, 0x3c, 0x3b, 0x01, 0x41, 0xe6, 0x77, 0x01, + 0x8b, 0xe1, 0x0e, 0x30, 0xf0, 0xb2, 0x53, 0x8a, +}; +static const unsigned char kat2273_addin1[] = { + 0x23, 0x38, 0xa6, 0x8b, 0x5f, 0xac, 0xa8, 0xd6, 0xbe, 0x89, 0x81, 0x54, + 0x9e, 0xf2, 0xf6, 0xf3, 0x05, 0x69, 0xa2, 0xd2, 0x5f, 0x7c, 0x51, 0xf6, + 0x2c, 0xec, 0x5e, 0x12, 0x6a, 0xeb, 0xdf, 0x8d, +}; +static const unsigned char kat2273_retbits[] = { + 0xee, 0xf8, 0xd2, 0x2d, 0x01, 0x40, 0xcf, 0x78, 0xa2, 0x9e, 0x40, 0x39, + 0x8a, 0xf3, 0xd1, 0xc8, 0x8d, 0xbc, 0x9e, 0xae, 0xf8, 0xc6, 0xe5, 0xa3, + 0xf8, 0xe3, 0x41, 0xbc, 0x72, 0x9e, 0x47, 0xc0, 0x35, 0x3f, 0x51, 0x68, + 0xde, 0x20, 0x80, 0xdf, 0x87, 0x00, 0xbc, 0xd6, 0x8d, 0x6b, 0x85, 0x15, + 0xef, 0xd8, 0x7b, 0xb1, 0x0f, 0x45, 0x97, 0xec, 0x5b, 0x52, 0x64, 0xcc, + 0x47, 0x65, 0xfc, 0xec, +}; +static const struct drbg_kat_pr_false kat2273_t = { + 7, kat2273_entropyin, kat2273_nonce, kat2273_persstr, + kat2273_entropyinreseed, kat2273_addinreseed, kat2273_addin0, + kat2273_addin1, kat2273_retbits +}; +static const struct drbg_kat kat2273 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2273_t +}; + +static const unsigned char kat2274_entropyin[] = { + 0xc4, 0x12, 0x94, 0xfc, 0x54, 0xdb, 0xb8, 0xb3, 0x6f, 0xa1, 0x43, 0x39, + 0x34, 0xc6, 0xd8, 0xc5, 0x17, 0x19, 0xc3, 0x0f, 0xd6, 0x37, 0x1d, 0x83, + 0x0c, 0x63, 0x2f, 0x6c, 0x10, 0x53, 0x30, 0x21, +}; +static const unsigned char kat2274_nonce[] = {0}; +static const unsigned char kat2274_persstr[] = { + 0x8c, 0x43, 0xb0, 0x0a, 0x1b, 0xee, 0xfb, 0xae, 0x61, 0x28, 0x1c, 0x85, + 0x3f, 0xc2, 0x7a, 0xad, 0xc6, 0xea, 0xc6, 0x0e, 0xa0, 0x09, 0x87, 0x59, + 0x0d, 0x96, 0x76, 0xbf, 0x28, 0x72, 0x5b, 0x7a, +}; +static const unsigned char kat2274_entropyinreseed[] = { + 0x60, 0x99, 0xd2, 0x71, 0x6d, 0x1e, 0x5b, 0xa4, 0x6b, 0x0b, 0x37, 0xd0, + 0x8b, 0x9a, 0xe2, 0xf6, 0xb7, 0xd3, 0x95, 0x83, 0xc5, 0xe1, 0x15, 0x8f, + 0x77, 0xe2, 0x68, 0xa7, 0x7b, 0xd9, 0x2a, 0x84, +}; +static const unsigned char kat2274_addinreseed[] = { + 0xca, 0x48, 0x88, 0x12, 0x49, 0x43, 0xd6, 0x74, 0x1e, 0x09, 0xde, 0xed, + 0x6f, 0xf5, 0xae, 0xf0, 0xf0, 0x5d, 0x32, 0x27, 0x90, 0xfe, 0x79, 0x25, + 0x86, 0xa0, 0xfa, 0xdb, 0x7f, 0x9b, 0x27, 0xe0, +}; +static const unsigned char kat2274_addin0[] = { + 0x26, 0x8e, 0x4a, 0x9f, 0xe0, 0x09, 0x23, 0x35, 0x63, 0x6a, 0x86, 0xb4, + 0x8f, 0x54, 0x84, 0x9a, 0x6e, 0x4a, 0xed, 0xbd, 0x8d, 0x88, 0x44, 0xb0, + 0xfd, 0x19, 0x02, 0xa6, 0xd2, 0x88, 0x6f, 0x56, +}; +static const unsigned char kat2274_addin1[] = { + 0x79, 0x7a, 0x96, 0x4b, 0x3f, 0xf0, 0xb0, 0x38, 0xa4, 0xcb, 0x71, 0x38, + 0xf9, 0x80, 0x4e, 0x61, 0x6f, 0x4f, 0x4f, 0x31, 0xe5, 0xb4, 0x06, 0x7f, + 0x35, 0xa5, 0x3a, 0x9d, 0x73, 0x95, 0x8c, 0x1f, +}; +static const unsigned char kat2274_retbits[] = { + 0x7d, 0xfb, 0x47, 0x1b, 0x39, 0x11, 0x2a, 0x02, 0xe4, 0x25, 0xca, 0x79, + 0x12, 0xfa, 0xe1, 0x00, 0xdb, 0xf0, 0x25, 0x15, 0x38, 0x2d, 0xf3, 0x08, + 0xd1, 0x42, 0x62, 0x07, 0xd7, 0x8d, 0x7a, 0x56, 0xf4, 0xbc, 0x84, 0x91, + 0x56, 0xb5, 0x13, 0x77, 0xf8, 0xe3, 0x1b, 0xff, 0x5a, 0xac, 0x7c, 0x2d, + 0x4e, 0x18, 0x17, 0xc8, 0x91, 0x32, 0x2f, 0x48, 0xd5, 0xe1, 0xbd, 0x8d, + 0x4f, 0xd6, 0xc7, 0xc6, +}; +static const struct drbg_kat_pr_false kat2274_t = { + 8, kat2274_entropyin, kat2274_nonce, kat2274_persstr, + kat2274_entropyinreseed, kat2274_addinreseed, kat2274_addin0, + kat2274_addin1, kat2274_retbits +}; +static const struct drbg_kat kat2274 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2274_t +}; + +static const unsigned char kat2275_entropyin[] = { + 0x36, 0x84, 0x32, 0xce, 0x04, 0x9f, 0x1a, 0x07, 0x54, 0xdc, 0x42, 0x60, + 0x8f, 0xd2, 0x66, 0x48, 0x61, 0xf2, 0xad, 0x0f, 0x0a, 0xc3, 0xcc, 0x26, + 0x5e, 0x74, 0x99, 0xc8, 0xc2, 0x0e, 0xc8, 0xa8, +}; +static const unsigned char kat2275_nonce[] = {0}; +static const unsigned char kat2275_persstr[] = { + 0xe3, 0x42, 0xf4, 0xc0, 0xc9, 0x3e, 0x10, 0xae, 0x15, 0xc7, 0xf4, 0xdb, + 0x19, 0x3d, 0xbd, 0xa6, 0x74, 0x7f, 0x61, 0xeb, 0x22, 0xcd, 0x34, 0x2e, + 0x64, 0x1f, 0xae, 0xb1, 0x63, 0xf8, 0x3f, 0x2f, +}; +static const unsigned char kat2275_entropyinreseed[] = { + 0xd6, 0x2b, 0xbe, 0x9a, 0x62, 0x56, 0x1a, 0x22, 0x74, 0x3f, 0x73, 0xe0, + 0xd6, 0x64, 0x7f, 0xfc, 0x9b, 0x8d, 0x5b, 0xa0, 0xcb, 0x41, 0x4f, 0xbf, + 0xa4, 0xfb, 0xa6, 0x33, 0x71, 0xe7, 0x91, 0x2a, +}; +static const unsigned char kat2275_addinreseed[] = { + 0xff, 0x09, 0x78, 0x79, 0x87, 0xaa, 0xa1, 0x58, 0x59, 0x07, 0x5f, 0xcf, + 0xfb, 0x02, 0xd0, 0x49, 0x22, 0x2e, 0x2b, 0xec, 0x69, 0x0b, 0xfa, 0xcd, + 0xec, 0x2e, 0xe7, 0xd3, 0x16, 0x4b, 0xdf, 0x99, +}; +static const unsigned char kat2275_addin0[] = { + 0x2d, 0xc1, 0xd8, 0xae, 0x52, 0xa2, 0x6c, 0xdf, 0x75, 0xba, 0x41, 0x32, + 0x38, 0xb1, 0xcb, 0x77, 0x63, 0x27, 0xdc, 0x9d, 0x83, 0x6a, 0xb2, 0x33, + 0x3e, 0xca, 0xf7, 0x60, 0x4c, 0x91, 0x10, 0x5c, +}; +static const unsigned char kat2275_addin1[] = { + 0xe9, 0x1e, 0x11, 0x0e, 0x7b, 0x93, 0x72, 0x53, 0x08, 0x53, 0xc4, 0xab, + 0x31, 0x61, 0x50, 0xea, 0xc5, 0xfe, 0x62, 0x40, 0xf3, 0xef, 0x71, 0x75, + 0xc2, 0xca, 0x71, 0xb8, 0x89, 0xe5, 0x48, 0x4f, +}; +static const unsigned char kat2275_retbits[] = { + 0x49, 0x30, 0xfa, 0xe1, 0x7e, 0xdc, 0x90, 0xa6, 0x9f, 0xa2, 0xa3, 0xc3, + 0x53, 0x68, 0x94, 0x5b, 0x56, 0x55, 0x6d, 0x56, 0x15, 0x51, 0xc3, 0xbd, + 0x04, 0x74, 0xa8, 0x8a, 0x10, 0xa0, 0x52, 0xcd, 0xbd, 0x70, 0xa6, 0xa2, + 0x2a, 0x9d, 0xec, 0x01, 0x7b, 0x23, 0x16, 0x0c, 0xa4, 0x70, 0x0d, 0x79, + 0x7f, 0xf5, 0x90, 0x92, 0x1e, 0x3e, 0xf4, 0x56, 0xe1, 0x1b, 0xe1, 0xc0, + 0xfe, 0x08, 0xcc, 0x35, +}; +static const struct drbg_kat_pr_false kat2275_t = { + 9, kat2275_entropyin, kat2275_nonce, kat2275_persstr, + kat2275_entropyinreseed, kat2275_addinreseed, kat2275_addin0, + kat2275_addin1, kat2275_retbits +}; +static const struct drbg_kat kat2275 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2275_t +}; + +static const unsigned char kat2276_entropyin[] = { + 0xb2, 0x05, 0xcd, 0xe0, 0xfc, 0xa4, 0x12, 0x1a, 0xf7, 0xd0, 0x7b, 0x44, + 0xc9, 0x19, 0xbf, 0x51, 0x3d, 0xb0, 0x90, 0x0c, 0x3f, 0x29, 0x2a, 0xff, + 0x8e, 0xd2, 0x9a, 0x7c, 0xc1, 0xcd, 0x7a, 0x5d, +}; +static const unsigned char kat2276_nonce[] = {0}; +static const unsigned char kat2276_persstr[] = { + 0x1e, 0x77, 0x87, 0xca, 0x3a, 0xc8, 0x6f, 0xbf, 0xa3, 0xff, 0xde, 0xa3, + 0x3f, 0xd0, 0x50, 0xfb, 0xe0, 0x26, 0xa4, 0xce, 0x3a, 0x8e, 0x81, 0x61, + 0xd4, 0xc2, 0x13, 0xad, 0xb4, 0xf6, 0xa1, 0x49, +}; +static const unsigned char kat2276_entropyinreseed[] = { + 0x49, 0xc5, 0x2f, 0x33, 0xa6, 0xed, 0x01, 0xc5, 0x5d, 0xe9, 0xcd, 0x02, + 0x80, 0x3f, 0xac, 0x02, 0x64, 0xb6, 0x70, 0x2b, 0xac, 0x6a, 0xf0, 0xaa, + 0x09, 0x24, 0xc6, 0x46, 0x2d, 0xc2, 0x17, 0xc1, +}; +static const unsigned char kat2276_addinreseed[] = { + 0x29, 0x25, 0x5f, 0x9f, 0x7b, 0x39, 0xbe, 0xb0, 0x3e, 0xfd, 0xcd, 0x5a, + 0xe2, 0x43, 0x23, 0x58, 0xb6, 0x16, 0xf1, 0xc0, 0x89, 0xb2, 0x4b, 0x7b, + 0xd6, 0x53, 0xd7, 0xcc, 0x34, 0xc8, 0xf4, 0x49, +}; +static const unsigned char kat2276_addin0[] = { + 0x35, 0xe9, 0xc1, 0x40, 0x32, 0xf0, 0xe0, 0x04, 0x99, 0x06, 0x13, 0x6c, + 0x71, 0xcf, 0x7f, 0x13, 0x97, 0x95, 0x0b, 0x42, 0x92, 0xa3, 0x9d, 0x16, + 0xa4, 0x90, 0x95, 0x9d, 0x13, 0x01, 0x5d, 0xf2, +}; +static const unsigned char kat2276_addin1[] = { + 0xcf, 0x66, 0x07, 0x73, 0x53, 0x20, 0xdd, 0x4b, 0xce, 0x82, 0xaa, 0x15, + 0xd1, 0x57, 0x07, 0x80, 0x65, 0xb7, 0xd1, 0x1e, 0x72, 0x32, 0x1d, 0x0d, + 0x31, 0x5a, 0xa2, 0x53, 0xf7, 0x41, 0x48, 0xdc, +}; +static const unsigned char kat2276_retbits[] = { + 0x67, 0x3e, 0x6d, 0x3a, 0xbe, 0x0c, 0x79, 0x91, 0x64, 0x70, 0xf0, 0x6a, + 0x94, 0xea, 0x61, 0x2e, 0x8a, 0xe0, 0x29, 0x20, 0xc6, 0xa5, 0xed, 0xfa, + 0xbe, 0xf8, 0x61, 0xb2, 0x89, 0xd3, 0x78, 0xf6, 0x7a, 0x07, 0x18, 0xd6, + 0x68, 0xa1, 0xa4, 0x43, 0x32, 0x6d, 0x94, 0xba, 0xa3, 0x87, 0xb6, 0x29, + 0x9d, 0x49, 0x9e, 0x0e, 0x83, 0x5d, 0x2c, 0xbd, 0xcb, 0xbe, 0x3f, 0xde, + 0xba, 0x5e, 0x00, 0x32, +}; +static const struct drbg_kat_pr_false kat2276_t = { + 10, kat2276_entropyin, kat2276_nonce, kat2276_persstr, + kat2276_entropyinreseed, kat2276_addinreseed, kat2276_addin0, + kat2276_addin1, kat2276_retbits +}; +static const struct drbg_kat kat2276 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2276_t +}; + +static const unsigned char kat2277_entropyin[] = { + 0xaa, 0xd0, 0x0f, 0x0e, 0xd2, 0x72, 0x20, 0x74, 0x78, 0x1e, 0x10, 0x2b, + 0x65, 0xf3, 0x23, 0xfb, 0x35, 0x86, 0x65, 0xf2, 0xc9, 0xe0, 0x5a, 0x17, + 0x75, 0x6d, 0x72, 0x1b, 0xae, 0x03, 0x75, 0x39, +}; +static const unsigned char kat2277_nonce[] = {0}; +static const unsigned char kat2277_persstr[] = { + 0x53, 0x05, 0x68, 0x80, 0x59, 0x86, 0xe6, 0x0d, 0x9e, 0x96, 0x6b, 0xf2, + 0x0d, 0xf0, 0x97, 0xd9, 0xc5, 0x87, 0x57, 0x17, 0x86, 0xc0, 0x2e, 0x07, + 0x0f, 0xad, 0xd7, 0x51, 0xac, 0x1c, 0x88, 0xa5, +}; +static const unsigned char kat2277_entropyinreseed[] = { + 0xce, 0xbe, 0xc2, 0xb5, 0xc7, 0xf4, 0x0d, 0xdf, 0x00, 0x68, 0xa9, 0x4a, + 0x17, 0x5f, 0x0e, 0xcd, 0xee, 0x43, 0xb6, 0xac, 0xe8, 0xe2, 0x86, 0x97, + 0x15, 0xf9, 0x20, 0xda, 0x40, 0x9b, 0x8e, 0xbf, +}; +static const unsigned char kat2277_addinreseed[] = { + 0x8c, 0xc5, 0x22, 0x50, 0x79, 0xfe, 0xfd, 0xcc, 0x73, 0x32, 0xd0, 0x5c, + 0x6d, 0x57, 0x0c, 0xa6, 0x14, 0xa0, 0xfa, 0x53, 0xf4, 0x46, 0xd3, 0x8b, + 0xb7, 0x1a, 0xac, 0x4b, 0x33, 0x29, 0xd2, 0xe6, +}; +static const unsigned char kat2277_addin0[] = { + 0x97, 0xbd, 0x3e, 0xcb, 0xc2, 0x7e, 0xeb, 0xfb, 0x56, 0x0b, 0xa0, 0x46, + 0x4d, 0xd9, 0xc2, 0x1e, 0x17, 0xa9, 0x15, 0x2c, 0xf8, 0x60, 0x8e, 0x8a, + 0x8f, 0x3a, 0x9f, 0x59, 0x08, 0x9d, 0x7b, 0x2e, +}; +static const unsigned char kat2277_addin1[] = { + 0xa2, 0x4f, 0x46, 0xc9, 0xf2, 0x07, 0xef, 0xac, 0xef, 0x81, 0x09, 0x6d, + 0xc7, 0x6c, 0xf2, 0x93, 0xdd, 0xb5, 0x05, 0x77, 0x46, 0x30, 0x3f, 0xf6, + 0xef, 0x34, 0xfb, 0x83, 0xd1, 0x76, 0x0d, 0x33, +}; +static const unsigned char kat2277_retbits[] = { + 0xf5, 0x7c, 0x5d, 0x13, 0x49, 0x5b, 0x10, 0x1b, 0x8b, 0x0a, 0x03, 0xa9, + 0xcc, 0xe0, 0x1d, 0x43, 0xef, 0xf7, 0xb9, 0x9d, 0x87, 0xda, 0x65, 0x0b, + 0xe3, 0xf6, 0x57, 0xe9, 0x0f, 0x57, 0x7c, 0x0b, 0x40, 0x96, 0x8d, 0xcf, + 0x18, 0x11, 0x44, 0x86, 0xb4, 0xb1, 0x88, 0x84, 0x35, 0xf8, 0x80, 0x69, + 0x6d, 0xc9, 0xc0, 0x28, 0x6d, 0xb7, 0xa4, 0x1e, 0x90, 0x07, 0x2d, 0x55, + 0xac, 0x8a, 0x2d, 0xc6, +}; +static const struct drbg_kat_pr_false kat2277_t = { + 11, kat2277_entropyin, kat2277_nonce, kat2277_persstr, + kat2277_entropyinreseed, kat2277_addinreseed, kat2277_addin0, + kat2277_addin1, kat2277_retbits +}; +static const struct drbg_kat kat2277 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2277_t +}; + +static const unsigned char kat2278_entropyin[] = { + 0x96, 0xb0, 0x84, 0xa6, 0xac, 0x52, 0x3b, 0x57, 0x84, 0xb6, 0x33, 0x5b, + 0x1e, 0xab, 0x7d, 0x31, 0x48, 0xa0, 0x5d, 0x0f, 0x8a, 0xf8, 0xa5, 0xac, + 0x4a, 0xc3, 0x19, 0x3d, 0x28, 0x16, 0xff, 0xe5, +}; +static const unsigned char kat2278_nonce[] = {0}; +static const unsigned char kat2278_persstr[] = { + 0x93, 0x66, 0xab, 0x60, 0xa2, 0x63, 0x4d, 0xb0, 0x37, 0x04, 0x9b, 0xd3, + 0x7b, 0x33, 0x14, 0xbb, 0x3f, 0xa7, 0x01, 0xf4, 0xd6, 0xc3, 0xaa, 0x3a, + 0x22, 0x00, 0xd9, 0x8d, 0x28, 0xcc, 0x3d, 0x6e, +}; +static const unsigned char kat2278_entropyinreseed[] = { + 0xba, 0xb2, 0x0d, 0x66, 0xed, 0xe0, 0x00, 0x15, 0x04, 0xc8, 0xbc, 0x73, + 0xdd, 0x17, 0x21, 0x66, 0x9e, 0xef, 0xba, 0x79, 0xf3, 0x99, 0x05, 0x32, + 0xd3, 0xc5, 0x43, 0x76, 0x65, 0xc3, 0x29, 0x9f, +}; +static const unsigned char kat2278_addinreseed[] = { + 0x4f, 0x07, 0x92, 0xa8, 0x26, 0xf9, 0x74, 0xbf, 0xd9, 0x2a, 0xa4, 0xa0, + 0x9b, 0x8b, 0x51, 0xaa, 0x91, 0x2e, 0x93, 0x77, 0x8a, 0xd1, 0x4a, 0x73, + 0x79, 0x0e, 0xec, 0x3a, 0x25, 0x6c, 0xf4, 0x4b, +}; +static const unsigned char kat2278_addin0[] = { + 0x7d, 0xc5, 0x21, 0xa5, 0xe5, 0x06, 0xe8, 0xec, 0x3e, 0xab, 0xcb, 0x28, + 0xcf, 0x30, 0xf2, 0xe9, 0x08, 0x1c, 0x29, 0xfa, 0x47, 0xe7, 0xf8, 0x89, + 0x34, 0x99, 0xa2, 0xa2, 0xff, 0x87, 0x44, 0xbd, +}; +static const unsigned char kat2278_addin1[] = { + 0x86, 0xd0, 0x1d, 0x82, 0xe8, 0x16, 0x23, 0x54, 0xaa, 0x61, 0x30, 0x41, + 0xce, 0xf5, 0xc0, 0x27, 0x23, 0xab, 0x4d, 0x6b, 0x41, 0xfd, 0xb5, 0xdd, + 0xcb, 0x81, 0xcd, 0x81, 0x61, 0x0d, 0xab, 0xdc, +}; +static const unsigned char kat2278_retbits[] = { + 0x4d, 0x21, 0xbb, 0x5b, 0x31, 0x8a, 0x2a, 0xd7, 0x9f, 0xb6, 0x5a, 0x7b, + 0x74, 0xb1, 0xd8, 0x76, 0x1b, 0x3d, 0x25, 0x6b, 0x54, 0x87, 0x5b, 0x7b, + 0x5c, 0x57, 0xb7, 0x6e, 0x3e, 0x2f, 0xb1, 0x82, 0x51, 0xdd, 0xfb, 0x55, + 0x09, 0x3a, 0x34, 0xed, 0x30, 0x52, 0x77, 0x02, 0x24, 0x14, 0x6a, 0xf6, + 0x52, 0xd5, 0xc3, 0xe0, 0xae, 0x34, 0x8d, 0xc6, 0xa1, 0x34, 0x11, 0x21, + 0x4e, 0x70, 0x6a, 0x2e, +}; +static const struct drbg_kat_pr_false kat2278_t = { + 12, kat2278_entropyin, kat2278_nonce, kat2278_persstr, + kat2278_entropyinreseed, kat2278_addinreseed, kat2278_addin0, + kat2278_addin1, kat2278_retbits +}; +static const struct drbg_kat kat2278 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2278_t +}; + +static const unsigned char kat2279_entropyin[] = { + 0xaa, 0x3b, 0x6a, 0x15, 0x20, 0x3f, 0xda, 0xd8, 0x97, 0x99, 0x69, 0x7a, + 0x0a, 0x6f, 0x14, 0x66, 0xd1, 0x77, 0xb7, 0x32, 0x31, 0xc3, 0x80, 0xd0, + 0x8b, 0xf4, 0xfd, 0xe5, 0x4d, 0xd9, 0x95, 0xc4, +}; +static const unsigned char kat2279_nonce[] = {0}; +static const unsigned char kat2279_persstr[] = { + 0x9c, 0x17, 0x4a, 0x21, 0xe9, 0x07, 0x52, 0xfe, 0x8c, 0xf3, 0x18, 0x5f, + 0xa0, 0x6a, 0x9f, 0xd0, 0x63, 0x51, 0x35, 0x43, 0xf1, 0x70, 0x60, 0xb3, + 0xeb, 0x37, 0xd8, 0x63, 0x20, 0x25, 0xdb, 0xce, +}; +static const unsigned char kat2279_entropyinreseed[] = { + 0x12, 0x04, 0xc8, 0xd8, 0x19, 0x25, 0x28, 0xc1, 0xe7, 0x28, 0x6b, 0x81, + 0x16, 0x8f, 0xef, 0x2a, 0x31, 0x16, 0xcf, 0x79, 0x59, 0x46, 0x26, 0xec, + 0x45, 0x33, 0xab, 0xa8, 0xff, 0xb0, 0xa5, 0x68, +}; +static const unsigned char kat2279_addinreseed[] = { + 0xb5, 0xa7, 0xce, 0x55, 0x5d, 0x63, 0x0a, 0xcf, 0x70, 0x09, 0x35, 0x13, + 0x7d, 0x69, 0x20, 0xe3, 0x19, 0x62, 0xaa, 0xd9, 0x39, 0xe7, 0x64, 0xe5, + 0x65, 0x54, 0x3a, 0x38, 0xc7, 0x66, 0x0b, 0x14, +}; +static const unsigned char kat2279_addin0[] = { + 0xc1, 0x61, 0x26, 0x32, 0xf8, 0xb3, 0xbd, 0xd4, 0x42, 0x4a, 0xa5, 0x52, + 0x15, 0x99, 0x12, 0xab, 0x82, 0xa2, 0x1f, 0x30, 0x06, 0x4c, 0x5f, 0x6f, + 0x00, 0xb9, 0x12, 0x1b, 0x7b, 0x74, 0xca, 0xc7, +}; +static const unsigned char kat2279_addin1[] = { + 0x7a, 0xfb, 0x7b, 0x99, 0xbc, 0x91, 0x94, 0xe5, 0xda, 0x2c, 0xbe, 0xa1, + 0xe6, 0xc2, 0x23, 0xa5, 0x6c, 0x99, 0xea, 0x62, 0x91, 0x7c, 0x9b, 0x7d, + 0xc6, 0x2a, 0x44, 0xcc, 0xbb, 0x78, 0xf5, 0x81, +}; +static const unsigned char kat2279_retbits[] = { + 0x11, 0x2d, 0xfe, 0x63, 0x25, 0x99, 0x8a, 0xb0, 0x3a, 0x8c, 0x56, 0xfe, + 0x4e, 0x0f, 0xb4, 0x56, 0x14, 0x15, 0x7b, 0x26, 0x35, 0xe8, 0x4c, 0x8a, + 0xb8, 0xfa, 0x0e, 0x98, 0xe0, 0xd0, 0xad, 0x0a, 0x82, 0x74, 0x23, 0x09, + 0x8f, 0x5f, 0xa8, 0x7f, 0x10, 0x38, 0xe0, 0x01, 0x8e, 0xfd, 0x03, 0x8f, + 0x38, 0x55, 0x01, 0xec, 0xc9, 0x53, 0x8d, 0x76, 0x29, 0x32, 0x9b, 0x81, + 0x73, 0x1f, 0x71, 0x6d, +}; +static const struct drbg_kat_pr_false kat2279_t = { + 13, kat2279_entropyin, kat2279_nonce, kat2279_persstr, + kat2279_entropyinreseed, kat2279_addinreseed, kat2279_addin0, + kat2279_addin1, kat2279_retbits +}; +static const struct drbg_kat kat2279 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2279_t +}; + +static const unsigned char kat2280_entropyin[] = { + 0x85, 0xf2, 0xb8, 0x38, 0x43, 0xcf, 0xca, 0x2a, 0xdf, 0x48, 0x10, 0x31, + 0x22, 0x05, 0xe9, 0x44, 0xb5, 0xef, 0x5f, 0xa7, 0x9a, 0x1e, 0x00, 0xdb, + 0xda, 0x0d, 0xf7, 0x1b, 0xe7, 0x75, 0x61, 0x81, +}; +static const unsigned char kat2280_nonce[] = {0}; +static const unsigned char kat2280_persstr[] = { + 0x81, 0x37, 0xd6, 0xd0, 0x9a, 0x04, 0xe5, 0x87, 0xbe, 0x50, 0x82, 0xb8, + 0x5a, 0x0d, 0xe6, 0xaa, 0x65, 0x81, 0x94, 0x1f, 0xda, 0x24, 0x97, 0x1d, + 0x9d, 0xd1, 0x21, 0x70, 0xe5, 0x5b, 0xdc, 0x75, +}; +static const unsigned char kat2280_entropyinreseed[] = { + 0x13, 0xf5, 0xf0, 0x66, 0xa8, 0x6c, 0x21, 0xee, 0x11, 0xfb, 0x40, 0x77, + 0x6d, 0xed, 0x01, 0x7f, 0x11, 0x52, 0xe9, 0xbe, 0xca, 0x96, 0x60, 0x2c, + 0x4e, 0x6e, 0x0a, 0x1e, 0x82, 0x2a, 0x9b, 0xe3, +}; +static const unsigned char kat2280_addinreseed[] = { + 0xb9, 0xf8, 0xab, 0xd5, 0x90, 0xbb, 0xe1, 0x75, 0x1f, 0x1c, 0x41, 0x0a, + 0x42, 0xdd, 0xf9, 0x3c, 0x24, 0xe7, 0xf4, 0x9a, 0x5f, 0xd4, 0xb1, 0x64, + 0x48, 0x20, 0x75, 0x9a, 0x2a, 0xa2, 0x93, 0xb1, +}; +static const unsigned char kat2280_addin0[] = { + 0x25, 0x37, 0xee, 0x73, 0xb5, 0x66, 0xf7, 0xfe, 0xbc, 0x51, 0x96, 0x3e, + 0xa9, 0x66, 0x91, 0x99, 0x4f, 0xdb, 0x15, 0x0d, 0x42, 0xdb, 0x58, 0x20, + 0x4f, 0x95, 0xbe, 0x45, 0xb4, 0xb4, 0xae, 0x32, +}; +static const unsigned char kat2280_addin1[] = { + 0x2f, 0x4d, 0xd1, 0x69, 0x8f, 0x26, 0xaf, 0x2a, 0x92, 0x1d, 0x4f, 0x4a, + 0xce, 0xda, 0x1c, 0x15, 0xac, 0x71, 0xff, 0xf6, 0x2f, 0xf7, 0xbb, 0x5e, + 0xa6, 0xa9, 0x93, 0xa2, 0x9a, 0x8d, 0xc1, 0x99, +}; +static const unsigned char kat2280_retbits[] = { + 0xf1, 0xb4, 0x6b, 0x02, 0x76, 0xbb, 0xd7, 0x5e, 0xec, 0x07, 0x92, 0xe9, + 0x99, 0x8c, 0xe8, 0x30, 0x22, 0xc8, 0xff, 0x2f, 0x00, 0xee, 0x99, 0x47, + 0x76, 0x0c, 0x6b, 0x2b, 0xed, 0x3f, 0x6a, 0x19, 0xbf, 0xf5, 0x8a, 0x0a, + 0x92, 0x09, 0x3a, 0x57, 0xb5, 0xac, 0x94, 0x9c, 0xc4, 0x02, 0x8f, 0xe3, + 0x1e, 0x2a, 0x62, 0x62, 0x12, 0x59, 0x94, 0xe6, 0xe3, 0x0d, 0xbb, 0x4b, + 0x7f, 0xaa, 0x6d, 0x4a, +}; +static const struct drbg_kat_pr_false kat2280_t = { + 14, kat2280_entropyin, kat2280_nonce, kat2280_persstr, + kat2280_entropyinreseed, kat2280_addinreseed, kat2280_addin0, + kat2280_addin1, kat2280_retbits +}; +static const struct drbg_kat kat2280 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2280_t +}; + +static const unsigned char kat2281_entropyin[] = { + 0x85, 0x82, 0x04, 0xf2, 0x7e, 0x93, 0xe8, 0x72, 0xa1, 0xce, 0x62, 0x08, + 0xef, 0x6d, 0xe3, 0x98, 0x68, 0xdd, 0xad, 0x55, 0xea, 0xc8, 0x99, 0xca, + 0x05, 0x81, 0xb9, 0xbb, 0x69, 0x7d, 0x44, 0x17, +}; +static const unsigned char kat2281_nonce[] = {0}; +static const unsigned char kat2281_persstr[] = {0}; +static const unsigned char kat2281_entropyinreseed[] = { + 0x1e, 0x82, 0x20, 0x08, 0xae, 0xcf, 0x6e, 0x67, 0xcc, 0x47, 0xf2, 0xb9, + 0x8b, 0x04, 0x68, 0x7b, 0x12, 0x1e, 0xa4, 0x03, 0x6b, 0x6c, 0xab, 0xb0, + 0xc3, 0x6e, 0xfb, 0xe1, 0x51, 0x46, 0x38, 0x0b, +}; +static const unsigned char kat2281_addinreseed[] = {0}; +static const unsigned char kat2281_addin0[] = {0}; +static const unsigned char kat2281_addin1[] = {0}; +static const unsigned char kat2281_retbits[] = { + 0x49, 0xce, 0x84, 0x96, 0x3d, 0xf8, 0x64, 0xaa, 0xe3, 0x6b, 0xec, 0x3f, + 0x3e, 0xd2, 0x23, 0xf9, 0x5d, 0xf4, 0x95, 0x6c, 0x7c, 0x01, 0xb6, 0x20, + 0xd5, 0xf2, 0x10, 0xe6, 0x38, 0x65, 0x9d, 0x5e, 0x18, 0x86, 0x70, 0x0c, + 0x04, 0xe7, 0x9e, 0x57, 0x9c, 0xa7, 0xc9, 0xb0, 0x54, 0x54, 0xb5, 0x25, + 0xc2, 0xea, 0x73, 0x48, 0x03, 0x2b, 0x3a, 0xb8, 0xd9, 0x1b, 0x4c, 0x47, + 0x00, 0x22, 0x04, 0xaf, +}; +static const struct drbg_kat_pr_false kat2281_t = { + 0, kat2281_entropyin, kat2281_nonce, kat2281_persstr, + kat2281_entropyinreseed, kat2281_addinreseed, kat2281_addin0, + kat2281_addin1, kat2281_retbits +}; +static const struct drbg_kat kat2281 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2281_t +}; + +static const unsigned char kat2282_entropyin[] = { + 0x04, 0xca, 0x8b, 0x70, 0xf0, 0xd9, 0x5b, 0x2a, 0x9f, 0x31, 0xda, 0xa6, + 0x66, 0xac, 0x57, 0xd2, 0xbf, 0x7c, 0x02, 0xfb, 0x65, 0x12, 0x2a, 0xb8, + 0x19, 0x0c, 0x56, 0x78, 0x55, 0xde, 0xba, 0xb6, +}; +static const unsigned char kat2282_nonce[] = {0}; +static const unsigned char kat2282_persstr[] = {0}; +static const unsigned char kat2282_entropyinreseed[] = { + 0x0b, 0x40, 0x93, 0xae, 0x0f, 0x4c, 0x7f, 0xec, 0x06, 0xec, 0xb0, 0x5d, + 0xa5, 0x16, 0xe2, 0x23, 0x71, 0xdc, 0x8a, 0xbd, 0x55, 0x72, 0x17, 0x90, + 0x3b, 0xc5, 0xe3, 0x19, 0xc5, 0x0a, 0x0b, 0x51, +}; +static const unsigned char kat2282_addinreseed[] = {0}; +static const unsigned char kat2282_addin0[] = {0}; +static const unsigned char kat2282_addin1[] = {0}; +static const unsigned char kat2282_retbits[] = { + 0xd7, 0x71, 0x32, 0x70, 0xe7, 0xbc, 0x22, 0x21, 0xde, 0x92, 0x9d, 0x96, + 0x22, 0xee, 0xfe, 0x35, 0xa4, 0x28, 0x5c, 0x27, 0x61, 0x6e, 0x2d, 0x0d, + 0xdc, 0xf6, 0x5e, 0xc4, 0xe7, 0x9a, 0xc5, 0x18, 0x09, 0x7e, 0xac, 0xf2, + 0xa5, 0xca, 0x3d, 0x20, 0x7c, 0x20, 0x17, 0xcc, 0xbc, 0x3a, 0x93, 0x43, + 0x58, 0x7e, 0x34, 0xca, 0x12, 0xa9, 0x7a, 0xfa, 0xea, 0x67, 0x8b, 0xba, + 0x86, 0xb6, 0x5c, 0xa8, +}; +static const struct drbg_kat_pr_false kat2282_t = { + 1, kat2282_entropyin, kat2282_nonce, kat2282_persstr, + kat2282_entropyinreseed, kat2282_addinreseed, kat2282_addin0, + kat2282_addin1, kat2282_retbits +}; +static const struct drbg_kat kat2282 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2282_t +}; + +static const unsigned char kat2283_entropyin[] = { + 0x82, 0x26, 0xac, 0xff, 0xba, 0x92, 0x3f, 0xa4, 0x63, 0x2d, 0x9d, 0x52, + 0xbd, 0x82, 0x63, 0xff, 0xe6, 0x08, 0xa7, 0x2b, 0x65, 0x55, 0x9f, 0x66, + 0xe2, 0x83, 0x23, 0xbc, 0xe0, 0x9c, 0xa2, 0x8d, +}; +static const unsigned char kat2283_nonce[] = {0}; +static const unsigned char kat2283_persstr[] = {0}; +static const unsigned char kat2283_entropyinreseed[] = { + 0xf9, 0x3e, 0xee, 0x49, 0x7a, 0xe3, 0xf0, 0x66, 0xcc, 0xe4, 0x66, 0x84, + 0xeb, 0x30, 0xbe, 0xff, 0x68, 0xe8, 0xf5, 0x73, 0x8c, 0xef, 0xdb, 0xd5, + 0x19, 0xf9, 0xa3, 0x5b, 0x2a, 0xb2, 0xa6, 0xac, +}; +static const unsigned char kat2283_addinreseed[] = {0}; +static const unsigned char kat2283_addin0[] = {0}; +static const unsigned char kat2283_addin1[] = {0}; +static const unsigned char kat2283_retbits[] = { + 0x14, 0xc3, 0x8f, 0x2c, 0x21, 0x74, 0x0d, 0xf8, 0xc2, 0xf2, 0x87, 0x0c, + 0xd1, 0xfc, 0x6c, 0x53, 0x6c, 0x19, 0x00, 0xb3, 0xda, 0xe6, 0x34, 0xc2, + 0x8b, 0xa9, 0x55, 0xb1, 0x35, 0xeb, 0xf1, 0xac, 0x8e, 0x63, 0x02, 0xdc, + 0x80, 0xf8, 0x9a, 0xf9, 0x82, 0x65, 0x3d, 0x29, 0x14, 0xdf, 0xf1, 0x0e, + 0xc7, 0x2c, 0x09, 0xf0, 0xd8, 0x0c, 0x91, 0x8f, 0xb5, 0xff, 0x96, 0xba, + 0xe8, 0x88, 0xee, 0xd5, +}; +static const struct drbg_kat_pr_false kat2283_t = { + 2, kat2283_entropyin, kat2283_nonce, kat2283_persstr, + kat2283_entropyinreseed, kat2283_addinreseed, kat2283_addin0, + kat2283_addin1, kat2283_retbits +}; +static const struct drbg_kat kat2283 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2283_t +}; + +static const unsigned char kat2284_entropyin[] = { + 0x1c, 0x1d, 0xb7, 0xb9, 0xc1, 0x2c, 0x06, 0x58, 0x2f, 0xca, 0x53, 0x04, + 0xc5, 0xda, 0x9b, 0x14, 0x58, 0x9f, 0x52, 0xf7, 0x84, 0xe6, 0x3d, 0x2f, + 0xd6, 0x59, 0x0e, 0x04, 0x23, 0x29, 0xb9, 0x50, +}; +static const unsigned char kat2284_nonce[] = {0}; +static const unsigned char kat2284_persstr[] = {0}; +static const unsigned char kat2284_entropyinreseed[] = { + 0xd4, 0xbf, 0x05, 0x75, 0x54, 0x19, 0xef, 0xc2, 0x83, 0xc0, 0xec, 0x01, + 0x77, 0xd1, 0x5c, 0xc4, 0x4a, 0x63, 0x84, 0xda, 0x6f, 0xf0, 0x67, 0xf2, + 0xb9, 0xce, 0x5a, 0x19, 0xf6, 0x1f, 0x08, 0x2f, +}; +static const unsigned char kat2284_addinreseed[] = {0}; +static const unsigned char kat2284_addin0[] = {0}; +static const unsigned char kat2284_addin1[] = {0}; +static const unsigned char kat2284_retbits[] = { + 0x91, 0xcb, 0xd4, 0xea, 0x47, 0x4e, 0xd1, 0x3d, 0x2d, 0xb1, 0x8b, 0xe2, + 0xcb, 0x08, 0x66, 0x16, 0x0f, 0xed, 0x17, 0xf2, 0x1b, 0x98, 0x28, 0x33, + 0x37, 0x17, 0xcc, 0xd8, 0xce, 0xa5, 0x12, 0x9a, 0x40, 0x7a, 0xa2, 0x3d, + 0x9e, 0x9c, 0x1b, 0x72, 0xea, 0xdf, 0x18, 0xab, 0x3c, 0xb9, 0xd5, 0xc2, + 0xfa, 0x0a, 0x03, 0x1c, 0xbe, 0x3d, 0xbc, 0x0b, 0xb6, 0x7b, 0x2d, 0xcb, + 0x01, 0x4b, 0x98, 0xc1, +}; +static const struct drbg_kat_pr_false kat2284_t = { + 3, kat2284_entropyin, kat2284_nonce, kat2284_persstr, + kat2284_entropyinreseed, kat2284_addinreseed, kat2284_addin0, + kat2284_addin1, kat2284_retbits +}; +static const struct drbg_kat kat2284 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2284_t +}; + +static const unsigned char kat2285_entropyin[] = { + 0xb7, 0x5e, 0x03, 0x82, 0x71, 0x39, 0x8c, 0x6e, 0x0a, 0xee, 0x80, 0x65, + 0x99, 0xc8, 0xc0, 0x88, 0xae, 0x92, 0x6e, 0xe7, 0x14, 0xb0, 0xe6, 0xef, + 0xa2, 0x50, 0xcf, 0x1c, 0xe4, 0xf9, 0xf7, 0x14, +}; +static const unsigned char kat2285_nonce[] = {0}; +static const unsigned char kat2285_persstr[] = {0}; +static const unsigned char kat2285_entropyinreseed[] = { + 0xb9, 0x88, 0xb1, 0x67, 0xf9, 0x75, 0x97, 0x5b, 0x65, 0xb2, 0xe0, 0xea, + 0x2e, 0x69, 0xc5, 0x0f, 0xb3, 0x4e, 0x69, 0xa0, 0x5b, 0xc7, 0x8c, 0xc2, + 0x6e, 0x40, 0x95, 0xf1, 0xcf, 0x67, 0xeb, 0x21, +}; +static const unsigned char kat2285_addinreseed[] = {0}; +static const unsigned char kat2285_addin0[] = {0}; +static const unsigned char kat2285_addin1[] = {0}; +static const unsigned char kat2285_retbits[] = { + 0x5e, 0x1f, 0xdb, 0xc3, 0x63, 0x3e, 0xbe, 0x87, 0x99, 0xf6, 0xca, 0x4d, + 0xb5, 0x30, 0x1a, 0xff, 0x06, 0x60, 0xea, 0xd7, 0x82, 0x5c, 0xbc, 0x48, + 0x19, 0x4a, 0xa3, 0x87, 0x70, 0xc8, 0x98, 0xf7, 0x41, 0x5a, 0x8a, 0x6b, + 0x93, 0x07, 0xf0, 0x9c, 0xcb, 0xf5, 0xfc, 0xe3, 0x86, 0xea, 0xb3, 0x3a, + 0x97, 0x3c, 0xc4, 0x6e, 0x59, 0xbc, 0x49, 0xac, 0x90, 0xd5, 0xbc, 0x4a, + 0x47, 0xfd, 0x3d, 0x39, +}; +static const struct drbg_kat_pr_false kat2285_t = { + 4, kat2285_entropyin, kat2285_nonce, kat2285_persstr, + kat2285_entropyinreseed, kat2285_addinreseed, kat2285_addin0, + kat2285_addin1, kat2285_retbits +}; +static const struct drbg_kat kat2285 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2285_t +}; + +static const unsigned char kat2286_entropyin[] = { + 0xc0, 0x61, 0xcf, 0x7b, 0x18, 0x04, 0xd7, 0xe7, 0x9f, 0xb3, 0x85, 0x32, + 0xc9, 0xd0, 0xd6, 0xed, 0xeb, 0xc5, 0xc4, 0xb1, 0xa4, 0x7d, 0x99, 0xbf, + 0xad, 0x50, 0x6a, 0xb1, 0xc4, 0xe0, 0x20, 0xca, +}; +static const unsigned char kat2286_nonce[] = {0}; +static const unsigned char kat2286_persstr[] = {0}; +static const unsigned char kat2286_entropyinreseed[] = { + 0xa2, 0xe8, 0x60, 0x02, 0x3b, 0xa1, 0x5c, 0x23, 0x21, 0x5d, 0xfb, 0x31, + 0x7a, 0x99, 0xb2, 0x38, 0x68, 0xc5, 0x51, 0xfc, 0x5e, 0xcd, 0x1f, 0x95, + 0x71, 0xab, 0x9f, 0x77, 0x92, 0x00, 0xde, 0x0c, +}; +static const unsigned char kat2286_addinreseed[] = {0}; +static const unsigned char kat2286_addin0[] = {0}; +static const unsigned char kat2286_addin1[] = {0}; +static const unsigned char kat2286_retbits[] = { + 0xca, 0x4c, 0xa6, 0x1a, 0xc8, 0x7f, 0x7a, 0xae, 0xe3, 0xed, 0xf6, 0x9e, + 0xd9, 0x5a, 0xfe, 0x43, 0x86, 0xc7, 0xeb, 0x0e, 0xd2, 0x0c, 0xf0, 0xd6, + 0xfe, 0xcd, 0x89, 0x45, 0x32, 0x70, 0xc1, 0xb1, 0xe7, 0xac, 0x4f, 0xac, + 0xc2, 0xf7, 0x3e, 0xb6, 0x94, 0xe3, 0x50, 0xfa, 0x12, 0xae, 0x82, 0xb1, + 0x5c, 0x70, 0xe2, 0x78, 0x95, 0x08, 0xd7, 0x74, 0x64, 0xff, 0x4f, 0xb9, + 0x1b, 0xf6, 0x0f, 0xa2, +}; +static const struct drbg_kat_pr_false kat2286_t = { + 5, kat2286_entropyin, kat2286_nonce, kat2286_persstr, + kat2286_entropyinreseed, kat2286_addinreseed, kat2286_addin0, + kat2286_addin1, kat2286_retbits +}; +static const struct drbg_kat kat2286 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2286_t +}; + +static const unsigned char kat2287_entropyin[] = { + 0xfc, 0xcc, 0x19, 0x36, 0x32, 0x6f, 0x01, 0xa3, 0x1a, 0xba, 0xeb, 0x61, + 0x82, 0xc9, 0x94, 0x60, 0xdd, 0x0c, 0x92, 0x3d, 0x8f, 0xbe, 0x55, 0xbd, + 0xc9, 0x58, 0xb1, 0x28, 0x75, 0x3a, 0x3c, 0x29, +}; +static const unsigned char kat2287_nonce[] = {0}; +static const unsigned char kat2287_persstr[] = {0}; +static const unsigned char kat2287_entropyinreseed[] = { + 0xdc, 0x81, 0x4a, 0x96, 0xdb, 0xcd, 0xc3, 0x33, 0xa9, 0x4d, 0x66, 0x54, + 0x83, 0xb1, 0x1f, 0xd0, 0x7a, 0x7b, 0x5f, 0xea, 0xaa, 0x49, 0xa2, 0x3e, + 0xe7, 0x7c, 0xca, 0x74, 0x07, 0x54, 0x82, 0x54, +}; +static const unsigned char kat2287_addinreseed[] = {0}; +static const unsigned char kat2287_addin0[] = {0}; +static const unsigned char kat2287_addin1[] = {0}; +static const unsigned char kat2287_retbits[] = { + 0xe6, 0xba, 0x27, 0x41, 0x68, 0x82, 0x5d, 0x39, 0xe9, 0xbe, 0x80, 0xcc, + 0x69, 0x01, 0xae, 0x41, 0xd8, 0x11, 0x45, 0x02, 0xc0, 0xa1, 0x0f, 0xc4, + 0x95, 0x62, 0x6a, 0xa6, 0x49, 0x74, 0xc0, 0x06, 0x5e, 0xb0, 0xe7, 0x53, + 0xf6, 0x69, 0xd1, 0x74, 0xa0, 0x81, 0x3a, 0xad, 0xde, 0xc0, 0xc7, 0x20, + 0x9d, 0x19, 0x79, 0x4c, 0x9a, 0xa1, 0x4c, 0x41, 0x0a, 0xbc, 0x13, 0xf3, + 0xdd, 0x8e, 0xba, 0x3f, +}; +static const struct drbg_kat_pr_false kat2287_t = { + 6, kat2287_entropyin, kat2287_nonce, kat2287_persstr, + kat2287_entropyinreseed, kat2287_addinreseed, kat2287_addin0, + kat2287_addin1, kat2287_retbits +}; +static const struct drbg_kat kat2287 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2287_t +}; + +static const unsigned char kat2288_entropyin[] = { + 0xa0, 0x33, 0x07, 0x9a, 0xde, 0x6f, 0xde, 0xb4, 0x2f, 0x91, 0x20, 0x7c, + 0xa4, 0x8a, 0x46, 0x86, 0xd9, 0x62, 0xab, 0xd6, 0x5f, 0x59, 0x0d, 0x0d, + 0x8e, 0xc5, 0x8d, 0x3a, 0xd3, 0x51, 0xfe, 0x49, +}; +static const unsigned char kat2288_nonce[] = {0}; +static const unsigned char kat2288_persstr[] = {0}; +static const unsigned char kat2288_entropyinreseed[] = { + 0x1d, 0xf4, 0x8c, 0x8f, 0xac, 0xaa, 0xae, 0xdd, 0x6c, 0xb8, 0x95, 0xc5, + 0xaa, 0xc7, 0xbc, 0x61, 0xb0, 0x85, 0xcb, 0x29, 0xe3, 0xda, 0xf5, 0x71, + 0x6b, 0x55, 0xb8, 0x95, 0x82, 0x78, 0xce, 0xb0, +}; +static const unsigned char kat2288_addinreseed[] = {0}; +static const unsigned char kat2288_addin0[] = {0}; +static const unsigned char kat2288_addin1[] = {0}; +static const unsigned char kat2288_retbits[] = { + 0xb7, 0x5a, 0x09, 0x2d, 0x2a, 0x91, 0x54, 0xc3, 0x30, 0x42, 0xcb, 0xd8, + 0xbb, 0x96, 0x0e, 0xd7, 0x42, 0xdc, 0x7a, 0x00, 0x2c, 0x16, 0xe5, 0xe7, + 0x47, 0xdd, 0x58, 0xd3, 0x10, 0x57, 0x7d, 0xd0, 0x78, 0x0d, 0x4e, 0x39, + 0xfd, 0xb8, 0x97, 0xef, 0x37, 0x57, 0x02, 0x50, 0x71, 0x4e, 0x74, 0x68, + 0xe6, 0x87, 0xd5, 0x72, 0x91, 0x9c, 0xa9, 0x4a, 0x27, 0x36, 0x03, 0x46, + 0x4d, 0x3e, 0x91, 0xad, +}; +static const struct drbg_kat_pr_false kat2288_t = { + 7, kat2288_entropyin, kat2288_nonce, kat2288_persstr, + kat2288_entropyinreseed, kat2288_addinreseed, kat2288_addin0, + kat2288_addin1, kat2288_retbits +}; +static const struct drbg_kat kat2288 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2288_t +}; + +static const unsigned char kat2289_entropyin[] = { + 0xaa, 0x83, 0xd5, 0x11, 0x23, 0xe9, 0xdf, 0xbd, 0xd0, 0x8f, 0x8a, 0x0e, + 0x1b, 0x46, 0xbf, 0xf9, 0x65, 0x7d, 0x07, 0xe2, 0x2f, 0x4b, 0xc8, 0x2c, + 0x1e, 0xba, 0x64, 0x9c, 0x78, 0xd2, 0x1a, 0x2b, +}; +static const unsigned char kat2289_nonce[] = {0}; +static const unsigned char kat2289_persstr[] = {0}; +static const unsigned char kat2289_entropyinreseed[] = { + 0x80, 0xfd, 0xcb, 0x15, 0x9f, 0x1e, 0xb6, 0x41, 0xd7, 0x2d, 0xa1, 0xd9, + 0x27, 0x40, 0xee, 0x37, 0xa3, 0xb1, 0xf5, 0xea, 0x7e, 0xc3, 0x69, 0x50, + 0x95, 0xa5, 0x67, 0x9a, 0x8d, 0x67, 0x34, 0x49, +}; +static const unsigned char kat2289_addinreseed[] = {0}; +static const unsigned char kat2289_addin0[] = {0}; +static const unsigned char kat2289_addin1[] = {0}; +static const unsigned char kat2289_retbits[] = { + 0x6c, 0x65, 0x23, 0x39, 0x8f, 0x06, 0x29, 0x7c, 0x9e, 0x83, 0x4d, 0x10, + 0x22, 0x60, 0xc1, 0x80, 0x14, 0xf2, 0x49, 0x3b, 0x06, 0x8f, 0x65, 0x83, + 0xa8, 0x43, 0x6f, 0xc7, 0x96, 0x4e, 0x99, 0xbb, 0xc9, 0x31, 0x5b, 0x7d, + 0xc8, 0x01, 0x5d, 0xc4, 0xe0, 0x54, 0x89, 0x42, 0xb0, 0x24, 0xe7, 0xc1, + 0xab, 0x5c, 0x2d, 0x37, 0x50, 0x96, 0x7d, 0x7e, 0xb6, 0xa1, 0x78, 0x37, + 0xae, 0x94, 0x82, 0x89, +}; +static const struct drbg_kat_pr_false kat2289_t = { + 8, kat2289_entropyin, kat2289_nonce, kat2289_persstr, + kat2289_entropyinreseed, kat2289_addinreseed, kat2289_addin0, + kat2289_addin1, kat2289_retbits +}; +static const struct drbg_kat kat2289 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2289_t +}; + +static const unsigned char kat2290_entropyin[] = { + 0x9b, 0x23, 0x7c, 0x7a, 0x8c, 0xae, 0x39, 0x12, 0xa8, 0x68, 0x6e, 0x84, + 0x08, 0x8a, 0xc3, 0xb6, 0x58, 0x90, 0xd7, 0x0e, 0xd5, 0xd2, 0x0f, 0x55, + 0xe2, 0x16, 0x8c, 0x12, 0x96, 0x6b, 0xdc, 0xf4, +}; +static const unsigned char kat2290_nonce[] = {0}; +static const unsigned char kat2290_persstr[] = {0}; +static const unsigned char kat2290_entropyinreseed[] = { + 0x52, 0x30, 0x03, 0x8a, 0x3d, 0xd7, 0x1a, 0x15, 0x87, 0xaa, 0x0e, 0xb5, + 0x59, 0x64, 0x66, 0x01, 0xa7, 0x96, 0xdc, 0x69, 0x47, 0xee, 0xe2, 0x86, + 0xda, 0x40, 0xbb, 0x6d, 0xf1, 0xfa, 0xec, 0xb2, +}; +static const unsigned char kat2290_addinreseed[] = {0}; +static const unsigned char kat2290_addin0[] = {0}; +static const unsigned char kat2290_addin1[] = {0}; +static const unsigned char kat2290_retbits[] = { + 0xbd, 0x22, 0xa6, 0x5b, 0x53, 0x6c, 0xa9, 0x91, 0x83, 0xa7, 0x14, 0x52, + 0xdd, 0xf6, 0x92, 0x7e, 0x6b, 0xd6, 0x87, 0x61, 0x25, 0x07, 0x6d, 0xb7, + 0x61, 0x34, 0xf4, 0xb5, 0x2c, 0x35, 0x9f, 0x46, 0x44, 0xfa, 0xed, 0x46, + 0x45, 0x4b, 0xc2, 0xf7, 0x2e, 0xbf, 0x69, 0x8c, 0x86, 0x60, 0x3b, 0xcc, + 0x3b, 0x57, 0x5c, 0xfd, 0x93, 0x9c, 0xd0, 0x86, 0x10, 0x73, 0xb3, 0x2a, + 0x0c, 0x73, 0xec, 0xf4, +}; +static const struct drbg_kat_pr_false kat2290_t = { + 9, kat2290_entropyin, kat2290_nonce, kat2290_persstr, + kat2290_entropyinreseed, kat2290_addinreseed, kat2290_addin0, + kat2290_addin1, kat2290_retbits +}; +static const struct drbg_kat kat2290 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2290_t +}; + +static const unsigned char kat2291_entropyin[] = { + 0x4b, 0xf2, 0xb6, 0x26, 0x35, 0xad, 0xb5, 0xd6, 0xa0, 0x13, 0x3a, 0xed, + 0x5f, 0x19, 0xf3, 0x36, 0x8b, 0x94, 0xf9, 0xcb, 0x1a, 0xdb, 0xf2, 0xab, + 0x0b, 0x14, 0x4e, 0x61, 0x81, 0x39, 0xe8, 0x31, +}; +static const unsigned char kat2291_nonce[] = {0}; +static const unsigned char kat2291_persstr[] = {0}; +static const unsigned char kat2291_entropyinreseed[] = { + 0x7d, 0x52, 0xba, 0xc3, 0xd0, 0xff, 0x5f, 0x2b, 0xf7, 0x8f, 0x63, 0x09, + 0x07, 0x22, 0x2b, 0x6c, 0xe5, 0x1f, 0xf4, 0x31, 0xc9, 0x95, 0x09, 0xbe, + 0xef, 0x16, 0x0d, 0x32, 0x7e, 0x3b, 0xc8, 0xe9, +}; +static const unsigned char kat2291_addinreseed[] = {0}; +static const unsigned char kat2291_addin0[] = {0}; +static const unsigned char kat2291_addin1[] = {0}; +static const unsigned char kat2291_retbits[] = { + 0x11, 0xab, 0xad, 0x1f, 0xb1, 0x32, 0x5e, 0xe3, 0x32, 0x31, 0xf3, 0x90, + 0xe9, 0x50, 0x65, 0x02, 0x2d, 0xea, 0x2a, 0x57, 0xe0, 0x0b, 0x10, 0x50, + 0x78, 0xdf, 0x01, 0xde, 0x3d, 0x59, 0xad, 0xb8, 0x28, 0xf5, 0x4c, 0xe7, + 0xe9, 0xd9, 0x09, 0xb9, 0x75, 0x71, 0x46, 0xde, 0x17, 0xa7, 0x43, 0xcc, + 0x2e, 0x57, 0xed, 0x14, 0xb8, 0x54, 0x1a, 0x1a, 0x0d, 0x8f, 0x57, 0x7f, + 0x83, 0xd7, 0x5c, 0x1a, +}; +static const struct drbg_kat_pr_false kat2291_t = { + 10, kat2291_entropyin, kat2291_nonce, kat2291_persstr, + kat2291_entropyinreseed, kat2291_addinreseed, kat2291_addin0, + kat2291_addin1, kat2291_retbits +}; +static const struct drbg_kat kat2291 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2291_t +}; + +static const unsigned char kat2292_entropyin[] = { + 0xfd, 0xce, 0x5a, 0xeb, 0x11, 0xf9, 0x25, 0x07, 0x5b, 0x89, 0xf9, 0x5e, + 0xfe, 0xeb, 0x5c, 0x0a, 0xde, 0x47, 0xc5, 0xd3, 0x5f, 0x47, 0x6f, 0x78, + 0xf5, 0x14, 0x50, 0xaa, 0x1c, 0x5d, 0x6b, 0x40, +}; +static const unsigned char kat2292_nonce[] = {0}; +static const unsigned char kat2292_persstr[] = {0}; +static const unsigned char kat2292_entropyinreseed[] = { + 0x99, 0x73, 0x84, 0x94, 0x3e, 0x55, 0x93, 0xd6, 0x16, 0x80, 0x37, 0x26, + 0xb7, 0xe8, 0x0f, 0xa8, 0xdd, 0x78, 0x5a, 0xb2, 0xf3, 0x30, 0xb9, 0xae, + 0x26, 0xf6, 0x5d, 0x70, 0xa7, 0x80, 0xdb, 0xf3, +}; +static const unsigned char kat2292_addinreseed[] = {0}; +static const unsigned char kat2292_addin0[] = {0}; +static const unsigned char kat2292_addin1[] = {0}; +static const unsigned char kat2292_retbits[] = { + 0xb3, 0xf2, 0xec, 0xd1, 0x71, 0xb6, 0xaf, 0xbe, 0x1b, 0xd2, 0x2c, 0xf8, + 0x81, 0xba, 0x0a, 0x38, 0xd7, 0xf9, 0x4b, 0x68, 0x8b, 0x42, 0x37, 0xd3, + 0xb6, 0xe7, 0x37, 0x64, 0x85, 0x41, 0x12, 0xe9, 0xc7, 0xc2, 0x4d, 0x8c, + 0x7e, 0x8e, 0xfb, 0xfd, 0x9d, 0x90, 0x3b, 0x9b, 0xce, 0xb8, 0xe6, 0x75, + 0x43, 0x66, 0x80, 0xb4, 0x82, 0xca, 0x48, 0xae, 0x59, 0x49, 0x85, 0xae, + 0x16, 0x26, 0x67, 0x40, +}; +static const struct drbg_kat_pr_false kat2292_t = { + 11, kat2292_entropyin, kat2292_nonce, kat2292_persstr, + kat2292_entropyinreseed, kat2292_addinreseed, kat2292_addin0, + kat2292_addin1, kat2292_retbits +}; +static const struct drbg_kat kat2292 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2292_t +}; + +static const unsigned char kat2293_entropyin[] = { + 0x2a, 0xd9, 0x95, 0x98, 0x32, 0x50, 0x03, 0x57, 0x9b, 0xfd, 0x0c, 0xf0, + 0x57, 0xca, 0x8d, 0x28, 0x71, 0x94, 0xff, 0xa0, 0xd4, 0xad, 0xe2, 0xf9, + 0xec, 0x5b, 0x7a, 0x67, 0x14, 0x99, 0xa7, 0x65, +}; +static const unsigned char kat2293_nonce[] = {0}; +static const unsigned char kat2293_persstr[] = {0}; +static const unsigned char kat2293_entropyinreseed[] = { + 0x9e, 0xb0, 0x2d, 0xc8, 0xbf, 0x74, 0x30, 0x3c, 0x54, 0x2c, 0x6d, 0xa4, + 0xbf, 0xf7, 0x2c, 0xb8, 0xa2, 0x85, 0x93, 0x87, 0x5a, 0x7e, 0x9b, 0xa0, + 0xda, 0x73, 0xbc, 0x7b, 0x47, 0x39, 0x95, 0x76, +}; +static const unsigned char kat2293_addinreseed[] = {0}; +static const unsigned char kat2293_addin0[] = {0}; +static const unsigned char kat2293_addin1[] = {0}; +static const unsigned char kat2293_retbits[] = { + 0x65, 0xbd, 0x86, 0x70, 0x7d, 0x02, 0x76, 0xcd, 0x6f, 0x07, 0x95, 0x55, + 0xb8, 0x19, 0x27, 0x10, 0xab, 0x28, 0xb9, 0xeb, 0x0d, 0xcf, 0x3c, 0x1b, + 0x01, 0xc2, 0xf4, 0x68, 0x30, 0x47, 0x76, 0x09, 0xb4, 0x1e, 0x70, 0xab, + 0x36, 0x4b, 0x48, 0xa8, 0x9f, 0x62, 0x24, 0x16, 0xc3, 0xc1, 0x14, 0xea, + 0x99, 0x0d, 0xe7, 0x4b, 0x24, 0xc6, 0x7e, 0x26, 0x18, 0xd1, 0xc4, 0x9f, + 0x1d, 0x16, 0x9e, 0xb3, +}; +static const struct drbg_kat_pr_false kat2293_t = { + 12, kat2293_entropyin, kat2293_nonce, kat2293_persstr, + kat2293_entropyinreseed, kat2293_addinreseed, kat2293_addin0, + kat2293_addin1, kat2293_retbits +}; +static const struct drbg_kat kat2293 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2293_t +}; + +static const unsigned char kat2294_entropyin[] = { + 0x49, 0x72, 0x64, 0x1e, 0xa2, 0x42, 0x32, 0x63, 0x1a, 0x5d, 0x80, 0x83, + 0x2e, 0x98, 0xeb, 0xb1, 0xaa, 0x18, 0x56, 0xef, 0x08, 0x99, 0x92, 0x0a, + 0x5b, 0x50, 0xaa, 0x06, 0xd2, 0x05, 0x18, 0x4a, +}; +static const unsigned char kat2294_nonce[] = {0}; +static const unsigned char kat2294_persstr[] = {0}; +static const unsigned char kat2294_entropyinreseed[] = { + 0xf5, 0xe9, 0x1c, 0x15, 0x4d, 0x6d, 0x0c, 0xce, 0x6b, 0x15, 0xcc, 0xa4, + 0x4b, 0xa6, 0x4b, 0x67, 0x01, 0x34, 0xf6, 0xdc, 0x86, 0x9d, 0x01, 0x05, + 0x7e, 0x20, 0xc0, 0xe0, 0x27, 0x52, 0x0b, 0x4c, +}; +static const unsigned char kat2294_addinreseed[] = {0}; +static const unsigned char kat2294_addin0[] = {0}; +static const unsigned char kat2294_addin1[] = {0}; +static const unsigned char kat2294_retbits[] = { + 0x3f, 0x8a, 0x14, 0x5d, 0x9a, 0xd6, 0xce, 0x2a, 0xb8, 0x8c, 0xd8, 0x63, + 0xda, 0x34, 0xa3, 0xe5, 0xa3, 0xd7, 0x67, 0x03, 0x97, 0x69, 0x67, 0x7f, + 0x5c, 0x53, 0x2d, 0xbe, 0xb4, 0x16, 0xd3, 0x9d, 0xec, 0x4c, 0x29, 0x1c, + 0xe5, 0x0c, 0xe5, 0x37, 0x75, 0x80, 0xfe, 0x97, 0xc1, 0x93, 0x14, 0x4d, + 0x79, 0xb9, 0x59, 0xf0, 0xdc, 0x34, 0x24, 0x93, 0xda, 0xa8, 0x19, 0xeb, + 0x60, 0x12, 0xfa, 0x9f, +}; +static const struct drbg_kat_pr_false kat2294_t = { + 13, kat2294_entropyin, kat2294_nonce, kat2294_persstr, + kat2294_entropyinreseed, kat2294_addinreseed, kat2294_addin0, + kat2294_addin1, kat2294_retbits +}; +static const struct drbg_kat kat2294 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2294_t +}; + +static const unsigned char kat2295_entropyin[] = { + 0xd0, 0x83, 0xe2, 0x22, 0xd8, 0x15, 0x97, 0x40, 0x04, 0x47, 0x07, 0xc7, + 0x6b, 0xd9, 0xec, 0x44, 0x36, 0x20, 0x2a, 0xc7, 0x78, 0xf6, 0x36, 0x46, + 0xe5, 0xb1, 0xe8, 0x8f, 0x21, 0xdd, 0xc1, 0x3f, +}; +static const unsigned char kat2295_nonce[] = {0}; +static const unsigned char kat2295_persstr[] = {0}; +static const unsigned char kat2295_entropyinreseed[] = { + 0xb7, 0xb7, 0x14, 0x55, 0x07, 0x98, 0xc8, 0x88, 0xa5, 0x02, 0x6b, 0x0b, + 0x78, 0x01, 0xc0, 0x92, 0x3a, 0xe6, 0x0a, 0x28, 0x58, 0xca, 0xbb, 0x6d, + 0x69, 0x72, 0xd6, 0x61, 0x15, 0xf4, 0x0e, 0xda, +}; +static const unsigned char kat2295_addinreseed[] = {0}; +static const unsigned char kat2295_addin0[] = {0}; +static const unsigned char kat2295_addin1[] = {0}; +static const unsigned char kat2295_retbits[] = { + 0x22, 0x7a, 0x88, 0x58, 0x3b, 0xb1, 0x37, 0xf0, 0x82, 0x96, 0x7a, 0xf0, + 0x4c, 0x27, 0xcb, 0x46, 0x4a, 0x63, 0x32, 0x72, 0x0b, 0x75, 0x9b, 0x43, + 0x5d, 0x4a, 0x7e, 0x26, 0x34, 0x9f, 0x56, 0xf4, 0xbb, 0x44, 0x76, 0x95, + 0xc0, 0x62, 0x95, 0xe8, 0x38, 0xa6, 0xc8, 0x6f, 0xc3, 0x86, 0x70, 0x06, + 0x21, 0x7c, 0x94, 0xbb, 0x5c, 0xc9, 0x9b, 0x3c, 0x44, 0xbf, 0xe5, 0x41, + 0xfc, 0x77, 0x50, 0x3c, +}; +static const struct drbg_kat_pr_false kat2295_t = { + 14, kat2295_entropyin, kat2295_nonce, kat2295_persstr, + kat2295_entropyinreseed, kat2295_addinreseed, kat2295_addin0, + kat2295_addin1, kat2295_retbits +}; +static const struct drbg_kat kat2295 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2295_t +}; + +static const unsigned char kat2296_entropyin[] = { + 0x3f, 0x63, 0xe6, 0x06, 0xdc, 0xc3, 0x8f, 0xe1, 0x5c, 0xcb, 0x4b, 0x98, + 0x8b, 0x29, 0xd3, 0x9f, 0x10, 0xbd, 0xde, 0xbd, 0x29, 0x5e, 0x1f, 0x23, + 0x5b, 0xaf, 0x4f, 0x07, 0x97, 0x39, 0x90, 0x9a, +}; +static const unsigned char kat2296_nonce[] = {0}; +static const unsigned char kat2296_persstr[] = {0}; +static const unsigned char kat2296_entropyinreseed[] = { + 0x74, 0xf6, 0x10, 0xc0, 0x9f, 0xdd, 0x94, 0x98, 0xff, 0xbd, 0x7e, 0x95, + 0x69, 0xf1, 0x42, 0xfd, 0xb3, 0x34, 0x56, 0xc6, 0x93, 0x1f, 0xf8, 0x8d, + 0x4a, 0xcf, 0x1f, 0xfc, 0x5d, 0x42, 0x48, 0x2b, +}; +static const unsigned char kat2296_addinreseed[] = { + 0x84, 0xe8, 0x79, 0x6b, 0x05, 0x4b, 0xd9, 0x90, 0x28, 0x45, 0x52, 0x8b, + 0x03, 0x85, 0xa8, 0x78, 0xb0, 0xf6, 0xc9, 0x8a, 0x93, 0x3e, 0xc3, 0x78, + 0xa8, 0x79, 0xad, 0x36, 0x53, 0x94, 0xc8, 0xe8, +}; +static const unsigned char kat2296_addin0[] = { + 0x80, 0x99, 0x5e, 0x23, 0xf6, 0x66, 0x4d, 0x2b, 0xb2, 0x3e, 0x22, 0x31, + 0x0d, 0x0e, 0x40, 0xd3, 0xfd, 0xae, 0x89, 0x0d, 0x64, 0xc0, 0x1c, 0x37, + 0x27, 0xa7, 0x57, 0x6a, 0x6c, 0x3c, 0xf8, 0xe5, +}; +static const unsigned char kat2296_addin1[] = { + 0x53, 0xb8, 0xab, 0xef, 0x45, 0xd0, 0x2e, 0x53, 0xa6, 0x39, 0x76, 0x62, + 0x6c, 0x60, 0x43, 0x6d, 0xfd, 0xbe, 0x9a, 0x48, 0xbf, 0x5f, 0x88, 0xfc, + 0x05, 0x31, 0x7f, 0x63, 0x68, 0x47, 0x19, 0x3f, +}; +static const unsigned char kat2296_retbits[] = { + 0x0b, 0x92, 0x4d, 0xe3, 0xca, 0x2a, 0x9d, 0xcc, 0xe9, 0xae, 0x4c, 0xd0, + 0x9a, 0x36, 0x46, 0x3e, 0xc3, 0x34, 0x8e, 0xef, 0xbd, 0x53, 0x11, 0x51, + 0xe5, 0x53, 0x1b, 0x4d, 0x2e, 0xc6, 0xcd, 0x27, 0x67, 0x4f, 0x26, 0xe8, + 0x42, 0x40, 0xa2, 0xaf, 0x9d, 0x37, 0xc7, 0x9c, 0x20, 0x45, 0xd9, 0x45, + 0x11, 0x2d, 0xaf, 0xa9, 0x42, 0xd3, 0xdf, 0x53, 0xa0, 0xe2, 0x52, 0x20, + 0xe0, 0xde, 0xfa, 0x3f, +}; +static const struct drbg_kat_pr_false kat2296_t = { + 0, kat2296_entropyin, kat2296_nonce, kat2296_persstr, + kat2296_entropyinreseed, kat2296_addinreseed, kat2296_addin0, + kat2296_addin1, kat2296_retbits +}; +static const struct drbg_kat kat2296 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2296_t +}; + +static const unsigned char kat2297_entropyin[] = { + 0x05, 0x2e, 0xff, 0x35, 0xd0, 0x51, 0x74, 0x15, 0x54, 0x36, 0xd8, 0x3b, + 0x50, 0xdf, 0xc0, 0xbc, 0x45, 0xef, 0x81, 0x51, 0x3c, 0xbb, 0x3e, 0xe6, + 0x3c, 0x48, 0xe8, 0xdc, 0x3b, 0xbc, 0x6d, 0x74, +}; +static const unsigned char kat2297_nonce[] = {0}; +static const unsigned char kat2297_persstr[] = {0}; +static const unsigned char kat2297_entropyinreseed[] = { + 0x28, 0x56, 0xa0, 0xfb, 0x49, 0x44, 0x7b, 0x28, 0x58, 0xdf, 0x74, 0xd2, + 0x81, 0xff, 0xae, 0x23, 0xfb, 0x94, 0xf0, 0x40, 0xf7, 0x63, 0x3a, 0xa4, + 0xc8, 0x47, 0x84, 0x45, 0x04, 0x2e, 0x2a, 0xc4, +}; +static const unsigned char kat2297_addinreseed[] = { + 0xbc, 0xd4, 0xab, 0x13, 0x6b, 0x67, 0xe7, 0x5e, 0xd0, 0x40, 0x9a, 0xa2, + 0xca, 0xca, 0x94, 0x26, 0x8b, 0x97, 0xa2, 0x68, 0xf9, 0x6a, 0x29, 0x1e, + 0x38, 0x73, 0x8b, 0xd7, 0xb3, 0xb3, 0x9d, 0x56, +}; +static const unsigned char kat2297_addin0[] = { + 0x08, 0x7d, 0x24, 0x89, 0x61, 0x89, 0x0b, 0x84, 0x02, 0x8e, 0xfe, 0x6a, + 0x07, 0x97, 0xbc, 0x21, 0xe9, 0x7a, 0x4d, 0xfc, 0xce, 0x5f, 0x3c, 0x36, + 0x2f, 0x02, 0x9a, 0x62, 0x9f, 0xd4, 0x4c, 0x4f, +}; +static const unsigned char kat2297_addin1[] = { + 0xdd, 0x3f, 0x9c, 0x56, 0xd6, 0xfe, 0xeb, 0xe9, 0x3c, 0xe9, 0xad, 0xa8, + 0x08, 0x26, 0x37, 0x79, 0x97, 0xc5, 0xb6, 0x3b, 0x7a, 0x3a, 0x00, 0x35, + 0xbe, 0xe2, 0xb6, 0x96, 0x22, 0xd9, 0x2d, 0xdc, +}; +static const unsigned char kat2297_retbits[] = { + 0xe3, 0x77, 0x40, 0xd3, 0xde, 0x49, 0x58, 0x1f, 0x9a, 0x1b, 0xc8, 0xfa, + 0xa1, 0x95, 0x6d, 0x9e, 0x57, 0xc8, 0x75, 0x01, 0xd9, 0xd7, 0xd1, 0x8c, + 0x7b, 0x9e, 0x3a, 0x14, 0x1f, 0x3f, 0x1c, 0x1d, 0xef, 0x05, 0xf5, 0xf3, + 0x6c, 0x60, 0x18, 0x07, 0x73, 0x6e, 0xb9, 0x2d, 0x89, 0xa7, 0x2c, 0xbe, + 0x01, 0x59, 0x6f, 0x21, 0x52, 0x61, 0x0f, 0xa5, 0x09, 0xfe, 0x75, 0xf9, + 0xab, 0x00, 0x0b, 0x6d, +}; +static const struct drbg_kat_pr_false kat2297_t = { + 1, kat2297_entropyin, kat2297_nonce, kat2297_persstr, + kat2297_entropyinreseed, kat2297_addinreseed, kat2297_addin0, + kat2297_addin1, kat2297_retbits +}; +static const struct drbg_kat kat2297 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2297_t +}; + +static const unsigned char kat2298_entropyin[] = { + 0xcc, 0x83, 0x4e, 0x09, 0x7c, 0x3d, 0xd4, 0xc6, 0x2c, 0x1b, 0x93, 0x8d, + 0x66, 0x3f, 0xf1, 0x8b, 0x20, 0xbd, 0x12, 0x55, 0x25, 0x72, 0xb3, 0x27, + 0xd2, 0x40, 0x01, 0x7c, 0x52, 0xd2, 0x8f, 0x18, +}; +static const unsigned char kat2298_nonce[] = {0}; +static const unsigned char kat2298_persstr[] = {0}; +static const unsigned char kat2298_entropyinreseed[] = { + 0x15, 0xc1, 0xe0, 0xf0, 0x27, 0x37, 0x57, 0xbf, 0x18, 0xab, 0x0f, 0x42, + 0x50, 0x67, 0xa7, 0xf3, 0xea, 0x32, 0x87, 0xe0, 0x67, 0xd8, 0x61, 0x4d, + 0xaf, 0x4d, 0x66, 0x78, 0x68, 0xf8, 0xff, 0x6e, +}; +static const unsigned char kat2298_addinreseed[] = { + 0x5f, 0xa4, 0xe7, 0x9c, 0xa2, 0x0e, 0xcc, 0x7c, 0xbc, 0x6b, 0x11, 0x26, + 0x3f, 0x7a, 0x07, 0xfe, 0xae, 0x7e, 0xfa, 0xce, 0xb7, 0x3a, 0xba, 0xb5, + 0x66, 0x29, 0x4c, 0x3f, 0x78, 0x4d, 0x83, 0x62, +}; +static const unsigned char kat2298_addin0[] = { + 0x3e, 0x88, 0x2f, 0x8b, 0x35, 0x04, 0xa1, 0xe0, 0xde, 0xd4, 0x06, 0xaf, + 0x62, 0xbe, 0x3b, 0xa1, 0x62, 0x99, 0x91, 0x49, 0x78, 0xe2, 0x7d, 0x28, + 0x34, 0x09, 0xf7, 0x9b, 0xc6, 0xb1, 0x40, 0x7d, +}; +static const unsigned char kat2298_addin1[] = { + 0x32, 0x17, 0x65, 0x55, 0xbc, 0xbb, 0x43, 0x3f, 0x4f, 0x99, 0xd3, 0x70, + 0x9c, 0x8f, 0x9d, 0x11, 0x3e, 0x4e, 0x84, 0xdf, 0x1d, 0xd6, 0x8d, 0x93, + 0x95, 0x3f, 0xb3, 0x23, 0x17, 0x29, 0x73, 0xf2, +}; +static const unsigned char kat2298_retbits[] = { + 0x74, 0xb6, 0x47, 0xe2, 0x1d, 0x40, 0x70, 0x5b, 0x7d, 0x84, 0x17, 0xf8, + 0xec, 0x75, 0x43, 0x40, 0xc2, 0x02, 0x7f, 0x53, 0xa3, 0x97, 0xc5, 0xcb, + 0x1b, 0xad, 0x3e, 0x3b, 0x63, 0x42, 0xbb, 0x65, 0x33, 0x88, 0x3d, 0x68, + 0x83, 0x3c, 0x0f, 0x0f, 0x66, 0x66, 0x93, 0xae, 0x66, 0xde, 0xcc, 0x9c, + 0xe5, 0x76, 0x19, 0x6b, 0xca, 0x20, 0x82, 0x99, 0x14, 0x2c, 0xd2, 0x27, + 0x77, 0x97, 0x47, 0x67, +}; +static const struct drbg_kat_pr_false kat2298_t = { + 2, kat2298_entropyin, kat2298_nonce, kat2298_persstr, + kat2298_entropyinreseed, kat2298_addinreseed, kat2298_addin0, + kat2298_addin1, kat2298_retbits +}; +static const struct drbg_kat kat2298 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2298_t +}; + +static const unsigned char kat2299_entropyin[] = { + 0xc8, 0x10, 0x9d, 0x21, 0x10, 0x29, 0xe9, 0x18, 0x67, 0x85, 0xb9, 0x4c, + 0xaa, 0x1f, 0x04, 0xbc, 0x42, 0x9b, 0xe4, 0xec, 0x44, 0x8d, 0xf6, 0xd3, + 0x76, 0xf9, 0x1c, 0x61, 0xc3, 0x63, 0x2d, 0xac, +}; +static const unsigned char kat2299_nonce[] = {0}; +static const unsigned char kat2299_persstr[] = {0}; +static const unsigned char kat2299_entropyinreseed[] = { + 0x48, 0xc0, 0x27, 0xb9, 0x28, 0x7e, 0xec, 0xb8, 0x53, 0xdd, 0xb7, 0x78, + 0x1a, 0x4c, 0x60, 0x08, 0xd0, 0x31, 0xb1, 0x20, 0x71, 0xaa, 0x0f, 0x36, + 0x00, 0x0b, 0x76, 0xed, 0x69, 0x3c, 0xf6, 0xa0, +}; +static const unsigned char kat2299_addinreseed[] = { + 0xd3, 0xd2, 0x7f, 0xa5, 0x25, 0xd4, 0xf7, 0x0f, 0xae, 0x0d, 0x86, 0x75, + 0xa9, 0xa6, 0xbf, 0x17, 0xff, 0x2e, 0x31, 0x7d, 0xaf, 0xbd, 0x62, 0xc7, + 0x7e, 0xc9, 0x99, 0xcf, 0xe0, 0xb1, 0xf1, 0xf7, +}; +static const unsigned char kat2299_addin0[] = { + 0x70, 0x8b, 0x9d, 0x5c, 0x5b, 0x96, 0x29, 0x93, 0xe5, 0xef, 0x1e, 0xdf, + 0x4b, 0xbb, 0xa3, 0x8a, 0xe7, 0x1b, 0x3f, 0xd3, 0x1b, 0xd7, 0x67, 0x0d, + 0x72, 0x36, 0xb7, 0xb0, 0xde, 0x98, 0x05, 0xf1, +}; +static const unsigned char kat2299_addin1[] = { + 0xfb, 0x9d, 0xdf, 0x9d, 0x04, 0x83, 0xce, 0xe3, 0x78, 0xb8, 0x6a, 0xba, + 0x5a, 0x3b, 0xd0, 0x16, 0x10, 0x80, 0x19, 0xc0, 0x7e, 0x5f, 0x2c, 0x85, + 0xc0, 0xd9, 0x80, 0xce, 0xd9, 0x05, 0xd7, 0xa2, +}; +static const unsigned char kat2299_retbits[] = { + 0xcf, 0x69, 0xe0, 0xec, 0xad, 0x27, 0xc6, 0x6e, 0x1e, 0xc0, 0x94, 0x49, + 0x5b, 0xa3, 0x0d, 0x7f, 0x3a, 0x3e, 0x2d, 0xa5, 0x76, 0x6c, 0x4d, 0xba, + 0xa8, 0x21, 0x7e, 0xbe, 0xab, 0x77, 0xfa, 0x4d, 0x88, 0xfa, 0x9c, 0x67, + 0x31, 0x4b, 0xa6, 0x07, 0x64, 0x70, 0x95, 0xfa, 0x33, 0xad, 0x31, 0x8b, + 0xa6, 0x61, 0x11, 0x16, 0x7b, 0x2e, 0x88, 0x79, 0xd2, 0x1c, 0xc7, 0xe9, + 0xb1, 0x67, 0x76, 0x7a, +}; +static const struct drbg_kat_pr_false kat2299_t = { + 3, kat2299_entropyin, kat2299_nonce, kat2299_persstr, + kat2299_entropyinreseed, kat2299_addinreseed, kat2299_addin0, + kat2299_addin1, kat2299_retbits +}; +static const struct drbg_kat kat2299 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2299_t +}; + +static const unsigned char kat2300_entropyin[] = { + 0xdc, 0x36, 0xb2, 0x04, 0x93, 0xef, 0x94, 0x07, 0x52, 0x8a, 0xad, 0xd6, + 0xb7, 0xb3, 0x7f, 0xd6, 0x00, 0x45, 0xf6, 0x69, 0x73, 0x45, 0xa2, 0x69, + 0xb2, 0x0d, 0xd9, 0xcb, 0x06, 0x51, 0xe6, 0x30, +}; +static const unsigned char kat2300_nonce[] = {0}; +static const unsigned char kat2300_persstr[] = {0}; +static const unsigned char kat2300_entropyinreseed[] = { + 0x6d, 0xbc, 0x7f, 0x8a, 0x60, 0xa3, 0xc4, 0x50, 0x5f, 0x12, 0x24, 0xf8, + 0x4e, 0x29, 0x42, 0x57, 0x1f, 0xe9, 0x63, 0x5e, 0x6b, 0xd3, 0xa9, 0x8e, + 0x67, 0x76, 0x47, 0xd7, 0x3f, 0x45, 0x47, 0x80, +}; +static const unsigned char kat2300_addinreseed[] = { + 0x48, 0x09, 0x72, 0xb4, 0x39, 0x3f, 0x00, 0x41, 0xe0, 0x4b, 0x19, 0x35, + 0x40, 0x98, 0x75, 0x85, 0x99, 0x15, 0x88, 0x13, 0xcd, 0x2a, 0x8e, 0xd7, + 0x1b, 0x05, 0x74, 0x6b, 0xfd, 0x28, 0x67, 0x66, +}; +static const unsigned char kat2300_addin0[] = { + 0xc0, 0x97, 0x2b, 0x8b, 0xd5, 0x40, 0x7f, 0xb7, 0xad, 0xac, 0x4d, 0x95, + 0x52, 0x92, 0x09, 0xef, 0xb5, 0x9a, 0xd9, 0xdc, 0x4b, 0xbf, 0xf7, 0x29, + 0x3c, 0x1e, 0x6e, 0x41, 0xf7, 0xf5, 0xef, 0x9f, +}; +static const unsigned char kat2300_addin1[] = { + 0x32, 0x57, 0x86, 0xe4, 0xfc, 0xba, 0xcc, 0x9b, 0xa6, 0x50, 0x4b, 0x81, + 0x87, 0x49, 0xcd, 0x01, 0x78, 0xd4, 0xc3, 0xa7, 0x8e, 0x17, 0x8e, 0xc7, + 0xb2, 0x2d, 0x27, 0xaa, 0x06, 0x71, 0x01, 0x83, +}; +static const unsigned char kat2300_retbits[] = { + 0xbd, 0xa1, 0xf7, 0xd3, 0x86, 0x1e, 0xbf, 0xc5, 0xd6, 0xee, 0x4d, 0x4e, + 0x94, 0xf3, 0xf4, 0xba, 0x97, 0xf1, 0x8e, 0x2c, 0x5a, 0xf7, 0x66, 0x72, + 0x65, 0xcc, 0x32, 0x03, 0xf0, 0x02, 0xa0, 0xf7, 0x9e, 0x7b, 0x51, 0x0c, + 0xde, 0x53, 0x10, 0xb3, 0x59, 0x2c, 0x12, 0x9a, 0xe7, 0x10, 0x5a, 0xb9, + 0x75, 0xad, 0xd8, 0x25, 0xce, 0x78, 0xd3, 0x46, 0xbf, 0x95, 0x63, 0xaa, + 0x50, 0x13, 0x9c, 0x13, +}; +static const struct drbg_kat_pr_false kat2300_t = { + 4, kat2300_entropyin, kat2300_nonce, kat2300_persstr, + kat2300_entropyinreseed, kat2300_addinreseed, kat2300_addin0, + kat2300_addin1, kat2300_retbits +}; +static const struct drbg_kat kat2300 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2300_t +}; + +static const unsigned char kat2301_entropyin[] = { + 0xaa, 0x18, 0x5b, 0x63, 0x66, 0x14, 0x9e, 0x18, 0xab, 0x0b, 0x82, 0x2c, + 0x17, 0xb5, 0x2c, 0xe9, 0x94, 0x0c, 0xc1, 0xc6, 0x06, 0x7e, 0xff, 0x3c, + 0xe1, 0xaa, 0x9a, 0x79, 0x89, 0x19, 0x35, 0xd7, +}; +static const unsigned char kat2301_nonce[] = {0}; +static const unsigned char kat2301_persstr[] = {0}; +static const unsigned char kat2301_entropyinreseed[] = { + 0x10, 0x47, 0x31, 0xf4, 0x68, 0x93, 0xaa, 0x96, 0xe5, 0x8f, 0x09, 0x1f, + 0x87, 0x0c, 0x25, 0x01, 0x5d, 0x91, 0x7d, 0xce, 0x7b, 0x6e, 0x17, 0x79, + 0x96, 0x83, 0x83, 0x53, 0xdc, 0x0c, 0x32, 0x4c, +}; +static const unsigned char kat2301_addinreseed[] = { + 0xc0, 0xef, 0x97, 0x4f, 0xe0, 0xad, 0xad, 0x82, 0x08, 0x8a, 0xc6, 0x44, + 0xbc, 0x70, 0x2d, 0xb6, 0x09, 0xca, 0xf2, 0xa8, 0xf5, 0x78, 0x61, 0xa6, + 0xb3, 0x1c, 0x9c, 0xf6, 0x5c, 0x19, 0x42, 0x88, +}; +static const unsigned char kat2301_addin0[] = { + 0xa7, 0x07, 0x84, 0x25, 0xec, 0xb8, 0x7e, 0x04, 0xbb, 0xda, 0x85, 0xaf, + 0x2a, 0xa8, 0xc6, 0x44, 0x52, 0x5f, 0xc0, 0x91, 0x09, 0xae, 0xaf, 0xb1, + 0xd5, 0xdc, 0x95, 0xf1, 0x63, 0xeb, 0xfc, 0xe3, +}; +static const unsigned char kat2301_addin1[] = { + 0x84, 0x76, 0x4f, 0x40, 0x6a, 0x50, 0xae, 0xa8, 0x71, 0xa5, 0x32, 0x68, + 0x65, 0x07, 0xc8, 0x28, 0x8e, 0xac, 0x5e, 0xdf, 0x95, 0x1d, 0xfc, 0x77, + 0x94, 0xc6, 0x71, 0xe8, 0x6c, 0x1f, 0x3d, 0x91, +}; +static const unsigned char kat2301_retbits[] = { + 0x7e, 0x8c, 0xc1, 0x6d, 0xe3, 0xe3, 0xb7, 0x80, 0xfd, 0x51, 0x65, 0x14, + 0xe0, 0x45, 0x40, 0x03, 0xf6, 0x29, 0x38, 0x8f, 0x6a, 0x85, 0x38, 0xf3, + 0x6d, 0xfa, 0xe9, 0x4b, 0xdb, 0x85, 0x63, 0x29, 0xdc, 0xee, 0xd1, 0xcd, + 0xbc, 0x97, 0x24, 0xb0, 0x9e, 0xfa, 0x3f, 0x3b, 0xa1, 0x7b, 0x72, 0x36, + 0xd9, 0x7e, 0x95, 0xcf, 0xe4, 0xb3, 0x37, 0x82, 0xa2, 0xde, 0x73, 0x61, + 0x7a, 0x0d, 0x1d, 0x84, +}; +static const struct drbg_kat_pr_false kat2301_t = { + 5, kat2301_entropyin, kat2301_nonce, kat2301_persstr, + kat2301_entropyinreseed, kat2301_addinreseed, kat2301_addin0, + kat2301_addin1, kat2301_retbits +}; +static const struct drbg_kat kat2301 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2301_t +}; + +static const unsigned char kat2302_entropyin[] = { + 0xfd, 0xc6, 0x95, 0x8a, 0x4f, 0x3d, 0x10, 0x1f, 0xa9, 0x9e, 0xcf, 0x6a, + 0xc6, 0x02, 0xbf, 0xa6, 0x76, 0xa1, 0xe1, 0xfd, 0x56, 0xd5, 0xac, 0xf4, + 0xe5, 0x33, 0x99, 0x6d, 0xb1, 0x74, 0x63, 0xbf, +}; +static const unsigned char kat2302_nonce[] = {0}; +static const unsigned char kat2302_persstr[] = {0}; +static const unsigned char kat2302_entropyinreseed[] = { + 0xc5, 0xfb, 0x57, 0x99, 0x0a, 0x54, 0x4e, 0x36, 0x5e, 0x94, 0x31, 0x8b, + 0xe0, 0x25, 0xb8, 0x00, 0x1d, 0xa4, 0x65, 0x3f, 0x30, 0x99, 0x61, 0xbc, + 0xbf, 0x58, 0xe6, 0x1a, 0x33, 0x7d, 0xb4, 0x12, +}; +static const unsigned char kat2302_addinreseed[] = { + 0x39, 0x0d, 0xdd, 0x2f, 0xc1, 0x71, 0xaf, 0xa0, 0xc5, 0x19, 0xcf, 0x12, + 0x92, 0x33, 0x10, 0x23, 0xca, 0x3d, 0xc9, 0x3f, 0x63, 0x71, 0xe3, 0x22, + 0xd1, 0x0b, 0xcd, 0x4b, 0x9b, 0x42, 0x86, 0xd5, +}; +static const unsigned char kat2302_addin0[] = { + 0x3b, 0xa2, 0x6a, 0x9f, 0xe0, 0x56, 0x9f, 0xa2, 0x1d, 0xfc, 0xc8, 0x23, + 0x7d, 0x7d, 0x9e, 0xe1, 0x0d, 0xb3, 0x8a, 0xd7, 0xf7, 0x28, 0x22, 0x3a, + 0xb6, 0x42, 0x94, 0xdf, 0x6a, 0x83, 0xca, 0xbf, +}; +static const unsigned char kat2302_addin1[] = { + 0x92, 0xfb, 0xb9, 0xe3, 0xc2, 0x5c, 0x5e, 0x6e, 0xf9, 0x6d, 0x4a, 0x34, + 0x9f, 0x17, 0x6a, 0x91, 0xdc, 0x9f, 0x38, 0x56, 0xc3, 0x6f, 0x13, 0xc4, + 0x58, 0x4a, 0xea, 0xd0, 0xc9, 0x23, 0x1f, 0x7c, +}; +static const unsigned char kat2302_retbits[] = { + 0xea, 0xe4, 0x75, 0x63, 0x25, 0x7a, 0x2c, 0x6b, 0x73, 0x05, 0x9e, 0x32, + 0x52, 0xff, 0x60, 0x11, 0xf6, 0xc7, 0x48, 0xff, 0xdc, 0x0a, 0x30, 0x29, + 0xad, 0x4c, 0x1b, 0x7b, 0x6a, 0x27, 0x79, 0x7b, 0xec, 0xcb, 0xda, 0x1e, + 0xfe, 0x0d, 0x97, 0x64, 0xa5, 0x91, 0x0a, 0x17, 0x1f, 0x35, 0x15, 0x71, + 0x19, 0x0b, 0x2e, 0xe1, 0x1b, 0xa9, 0x04, 0xa4, 0x54, 0x53, 0x17, 0xef, + 0xc9, 0x43, 0x6c, 0x61, +}; +static const struct drbg_kat_pr_false kat2302_t = { + 6, kat2302_entropyin, kat2302_nonce, kat2302_persstr, + kat2302_entropyinreseed, kat2302_addinreseed, kat2302_addin0, + kat2302_addin1, kat2302_retbits +}; +static const struct drbg_kat kat2302 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2302_t +}; + +static const unsigned char kat2303_entropyin[] = { + 0x8f, 0xeb, 0xa3, 0x37, 0xaf, 0x22, 0x25, 0xa6, 0x88, 0x3b, 0xed, 0x91, + 0xed, 0xb2, 0x61, 0x4b, 0x90, 0x5d, 0x3c, 0x24, 0x0d, 0xe1, 0x66, 0x3b, + 0xdc, 0x23, 0x15, 0xad, 0x72, 0x4e, 0x76, 0xa8, +}; +static const unsigned char kat2303_nonce[] = {0}; +static const unsigned char kat2303_persstr[] = {0}; +static const unsigned char kat2303_entropyinreseed[] = { + 0x45, 0x83, 0xd0, 0xaf, 0x8a, 0x4c, 0x0b, 0xa1, 0x41, 0xdc, 0xa8, 0x50, + 0x1b, 0x36, 0xb0, 0x40, 0x66, 0xac, 0x80, 0xf6, 0xab, 0xec, 0x11, 0xfd, + 0x59, 0xd8, 0xd0, 0xdb, 0xee, 0x80, 0x9d, 0xeb, +}; +static const unsigned char kat2303_addinreseed[] = { + 0x8c, 0xed, 0x0f, 0xef, 0x57, 0x86, 0x41, 0x3d, 0x2a, 0x7e, 0x5a, 0xb3, + 0xc1, 0x83, 0x6c, 0xaa, 0x1e, 0x14, 0x7e, 0xfc, 0x42, 0x4c, 0x4f, 0x36, + 0x53, 0xbb, 0xd1, 0x8b, 0xce, 0xdf, 0x1e, 0xf8, +}; +static const unsigned char kat2303_addin0[] = { + 0xcf, 0x5b, 0xa3, 0x22, 0x47, 0x7f, 0x5a, 0xb6, 0x37, 0xe1, 0x10, 0xbb, + 0xaf, 0x78, 0x4f, 0x05, 0xaa, 0xf8, 0xbc, 0x09, 0x80, 0x76, 0x9d, 0x16, + 0xa7, 0x7f, 0x69, 0xfc, 0x90, 0xb0, 0x66, 0x07, +}; +static const unsigned char kat2303_addin1[] = { + 0xc3, 0x0f, 0x6a, 0x2d, 0x12, 0x18, 0x4b, 0xfd, 0xe9, 0x60, 0x1b, 0xa2, + 0x61, 0x83, 0xed, 0x8e, 0x0d, 0x81, 0xd7, 0x92, 0x9c, 0x72, 0x10, 0x1c, + 0x5f, 0xef, 0x56, 0xb0, 0xda, 0x72, 0x38, 0xdf, +}; +static const unsigned char kat2303_retbits[] = { + 0x4d, 0x3d, 0xe3, 0x0c, 0xf0, 0x2e, 0x8e, 0xc2, 0xe0, 0x4f, 0x52, 0xf3, + 0xb7, 0x4d, 0x10, 0x61, 0x80, 0x95, 0xa9, 0x27, 0xfe, 0xb0, 0xb1, 0xf1, + 0xa0, 0x4e, 0x65, 0x2d, 0x31, 0xed, 0x4c, 0xa2, 0xa4, 0x80, 0xa7, 0x4c, + 0xfe, 0xb3, 0xcb, 0x2a, 0xff, 0x9c, 0xfa, 0xd5, 0x3a, 0xaf, 0x9b, 0x95, + 0xfb, 0x1e, 0xf5, 0x01, 0x83, 0x31, 0xeb, 0xf7, 0x32, 0x05, 0xac, 0x98, + 0x88, 0x9f, 0xdf, 0x02, +}; +static const struct drbg_kat_pr_false kat2303_t = { + 7, kat2303_entropyin, kat2303_nonce, kat2303_persstr, + kat2303_entropyinreseed, kat2303_addinreseed, kat2303_addin0, + kat2303_addin1, kat2303_retbits +}; +static const struct drbg_kat kat2303 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2303_t +}; + +static const unsigned char kat2304_entropyin[] = { + 0x79, 0x46, 0xa1, 0x1e, 0x27, 0x52, 0xa4, 0x8b, 0x28, 0xf0, 0xa3, 0xbb, + 0x22, 0x9b, 0x41, 0xaa, 0x2e, 0x38, 0x0e, 0x37, 0x54, 0x27, 0x6e, 0x43, + 0x89, 0x16, 0xba, 0xbf, 0xff, 0x3f, 0x0b, 0xbe, +}; +static const unsigned char kat2304_nonce[] = {0}; +static const unsigned char kat2304_persstr[] = {0}; +static const unsigned char kat2304_entropyinreseed[] = { + 0xbe, 0xcd, 0x22, 0xf3, 0x08, 0x60, 0xa5, 0x12, 0x5a, 0x28, 0x45, 0x4f, + 0x9b, 0x68, 0xc6, 0x83, 0x9c, 0x74, 0x40, 0xc6, 0x5b, 0xca, 0x8b, 0x8f, + 0x53, 0x7b, 0xe5, 0xfc, 0x0a, 0xac, 0xe5, 0x5b, +}; +static const unsigned char kat2304_addinreseed[] = { + 0x48, 0xa9, 0xb5, 0x1e, 0x85, 0x2c, 0x1e, 0x33, 0x52, 0xe4, 0xe1, 0x5e, + 0x8a, 0x0a, 0xff, 0x75, 0x76, 0xc7, 0x68, 0x0f, 0x1a, 0x6a, 0xce, 0x48, + 0x44, 0x00, 0x17, 0xa3, 0xb0, 0xa6, 0x28, 0xcf, +}; +static const unsigned char kat2304_addin0[] = { + 0x07, 0x86, 0xfa, 0x8c, 0x78, 0xa4, 0x26, 0x59, 0x88, 0xc7, 0xe8, 0xec, + 0x14, 0xc2, 0x59, 0xc3, 0x1e, 0x10, 0x3f, 0x79, 0x31, 0xc0, 0x91, 0x50, + 0xe9, 0x61, 0x71, 0xa2, 0xef, 0xe3, 0xae, 0x09, +}; +static const unsigned char kat2304_addin1[] = { + 0x54, 0xe4, 0xa8, 0xf6, 0x29, 0x23, 0x59, 0x7d, 0xe4, 0xcd, 0xd6, 0x56, + 0x7e, 0x2d, 0x7f, 0xce, 0xab, 0xf5, 0xaf, 0xf8, 0x8b, 0x4a, 0xdb, 0x9a, + 0xe2, 0x72, 0xe4, 0xc5, 0xd5, 0xfd, 0xbe, 0x28, +}; +static const unsigned char kat2304_retbits[] = { + 0xfa, 0x12, 0x11, 0xa4, 0x4e, 0xc4, 0x96, 0x6a, 0x63, 0x90, 0x4b, 0x03, + 0xcd, 0xa2, 0xe2, 0x68, 0xf8, 0x4a, 0x00, 0x91, 0xa2, 0xa8, 0x1b, 0x87, + 0xcc, 0x69, 0x5b, 0x0d, 0x05, 0xbb, 0xa8, 0xaf, 0x18, 0xee, 0x29, 0x2f, + 0x46, 0xe1, 0xda, 0xf1, 0x5d, 0xad, 0xd3, 0xef, 0x12, 0xd9, 0xd7, 0x9c, + 0xdf, 0x32, 0xa0, 0xe7, 0x3c, 0x9a, 0x6f, 0x57, 0xb2, 0xac, 0x14, 0xdb, + 0xc3, 0xcd, 0xaf, 0x37, +}; +static const struct drbg_kat_pr_false kat2304_t = { + 8, kat2304_entropyin, kat2304_nonce, kat2304_persstr, + kat2304_entropyinreseed, kat2304_addinreseed, kat2304_addin0, + kat2304_addin1, kat2304_retbits +}; +static const struct drbg_kat kat2304 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2304_t +}; + +static const unsigned char kat2305_entropyin[] = { + 0xe7, 0x45, 0xd1, 0x50, 0x74, 0xdd, 0x1e, 0x53, 0x16, 0x3e, 0x1a, 0x0f, + 0xb8, 0xce, 0x15, 0xf9, 0x30, 0xd8, 0x00, 0x10, 0x4a, 0xef, 0x4b, 0xc1, + 0x06, 0xfc, 0xb8, 0xaf, 0x15, 0x08, 0xca, 0xbd, +}; +static const unsigned char kat2305_nonce[] = {0}; +static const unsigned char kat2305_persstr[] = {0}; +static const unsigned char kat2305_entropyinreseed[] = { + 0x39, 0xe0, 0x13, 0x85, 0xb2, 0xd4, 0xb9, 0x7d, 0x5a, 0x33, 0x82, 0xf2, + 0x8d, 0x02, 0xa4, 0xbb, 0xf4, 0x1e, 0xab, 0x31, 0x10, 0x86, 0x96, 0x73, + 0xe5, 0xc3, 0x7f, 0x4d, 0x08, 0x16, 0x86, 0xb3, +}; +static const unsigned char kat2305_addinreseed[] = { + 0x91, 0xef, 0xc4, 0x19, 0x91, 0x22, 0x9d, 0xda, 0xbe, 0xb0, 0xe0, 0xcd, + 0x94, 0x5b, 0x6c, 0xec, 0xef, 0x92, 0xd7, 0x45, 0x6b, 0x22, 0xa9, 0xe7, + 0x94, 0x02, 0x96, 0x16, 0x10, 0xc0, 0x57, 0xa1, +}; +static const unsigned char kat2305_addin0[] = { + 0xc8, 0x19, 0xe3, 0x91, 0xe1, 0xd7, 0x8f, 0x88, 0x1d, 0x7a, 0xc7, 0x79, + 0xcd, 0xe2, 0xe8, 0xd3, 0x53, 0xc2, 0xf8, 0xe7, 0x52, 0x55, 0xb8, 0x05, + 0x2e, 0xf5, 0xfc, 0x33, 0x6a, 0xd8, 0x15, 0x65, +}; +static const unsigned char kat2305_addin1[] = { + 0xf0, 0xcf, 0xbb, 0x76, 0x28, 0x20, 0x8d, 0xc3, 0x82, 0xe7, 0x80, 0xdf, + 0x02, 0x37, 0x1e, 0x1c, 0x61, 0xa3, 0x28, 0xb3, 0x3d, 0x95, 0x54, 0x97, + 0x50, 0x9e, 0xd4, 0xd3, 0xf3, 0x17, 0x2c, 0xaf, +}; +static const unsigned char kat2305_retbits[] = { + 0xeb, 0x8a, 0xc8, 0x68, 0xf4, 0x7c, 0x41, 0xee, 0xb1, 0xf7, 0x13, 0x65, + 0x14, 0xa6, 0x88, 0x39, 0x5b, 0x86, 0x2c, 0xc0, 0x7c, 0x26, 0x9c, 0x3c, + 0xee, 0xbf, 0xc9, 0xa6, 0x9e, 0x91, 0x8e, 0xa8, 0x3e, 0x30, 0xc9, 0x81, + 0x68, 0xe2, 0x76, 0x86, 0xae, 0x3a, 0xb1, 0x53, 0xf9, 0xb5, 0xac, 0x5a, + 0x45, 0x6b, 0x57, 0x96, 0x70, 0xfb, 0x4a, 0xf5, 0x1b, 0x34, 0xc7, 0x1d, + 0x73, 0xcc, 0x36, 0xcf, +}; +static const struct drbg_kat_pr_false kat2305_t = { + 9, kat2305_entropyin, kat2305_nonce, kat2305_persstr, + kat2305_entropyinreseed, kat2305_addinreseed, kat2305_addin0, + kat2305_addin1, kat2305_retbits +}; +static const struct drbg_kat kat2305 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2305_t +}; + +static const unsigned char kat2306_entropyin[] = { + 0xac, 0x24, 0x19, 0x0f, 0x83, 0x39, 0x44, 0xf8, 0xae, 0xed, 0x03, 0x95, + 0xf7, 0x5a, 0xbf, 0xd0, 0x85, 0x36, 0x87, 0x68, 0x29, 0x93, 0x45, 0x19, + 0x21, 0x4f, 0x37, 0x20, 0x48, 0x20, 0xbd, 0x8c, +}; +static const unsigned char kat2306_nonce[] = {0}; +static const unsigned char kat2306_persstr[] = {0}; +static const unsigned char kat2306_entropyinreseed[] = { + 0xc7, 0xe6, 0x8f, 0x6c, 0x90, 0x87, 0x8d, 0xff, 0x52, 0xfc, 0xd5, 0x23, + 0x78, 0xb7, 0x15, 0x5c, 0x08, 0x68, 0xfd, 0x84, 0x93, 0xad, 0xcf, 0x9d, + 0xe7, 0xda, 0x75, 0x47, 0xdb, 0x8c, 0xbb, 0xe8, +}; +static const unsigned char kat2306_addinreseed[] = { + 0x6e, 0xb2, 0x14, 0xcc, 0x64, 0x8a, 0xd0, 0xaa, 0xf9, 0xe3, 0x6d, 0xb8, + 0x7e, 0x69, 0x8c, 0x3a, 0xcb, 0x1f, 0x79, 0x4d, 0x2c, 0xe4, 0x64, 0x72, + 0xb5, 0x15, 0xca, 0x38, 0x6f, 0xc3, 0xaa, 0xed, +}; +static const unsigned char kat2306_addin0[] = { + 0x18, 0xea, 0x81, 0x6f, 0x90, 0x6b, 0x9b, 0x64, 0x2d, 0xb0, 0xa1, 0xde, + 0xf3, 0x19, 0xb7, 0x1e, 0x70, 0x99, 0x25, 0xa6, 0xff, 0x54, 0xa2, 0x51, + 0x2f, 0x45, 0xaf, 0x1b, 0x9a, 0x95, 0x65, 0x1e, +}; +static const unsigned char kat2306_addin1[] = { + 0x14, 0x3e, 0x68, 0x2a, 0x7d, 0x2f, 0x14, 0xa9, 0x25, 0x82, 0x2b, 0xf0, + 0xd8, 0xe5, 0x1d, 0x52, 0x05, 0xc4, 0x1a, 0xce, 0xc4, 0xa4, 0x8f, 0xec, + 0x98, 0x41, 0x08, 0x1c, 0x6f, 0x56, 0xaa, 0x5b, +}; +static const unsigned char kat2306_retbits[] = { + 0xc8, 0xc2, 0xd6, 0x09, 0x1c, 0x27, 0x96, 0x51, 0x98, 0xb3, 0x00, 0x27, + 0xd2, 0x1c, 0x6e, 0x26, 0x7a, 0x00, 0x73, 0xfe, 0x94, 0xb0, 0x93, 0x67, + 0x53, 0x53, 0x18, 0x5f, 0x77, 0xb8, 0x9c, 0x02, 0x07, 0x45, 0x93, 0xd8, + 0xfc, 0x5b, 0xc2, 0x33, 0xe5, 0x9c, 0xdb, 0xef, 0x80, 0xb9, 0x33, 0x61, + 0xbd, 0x8b, 0x50, 0x38, 0xe0, 0xb2, 0x4c, 0x8a, 0x96, 0x3a, 0xb5, 0x95, + 0x2c, 0x87, 0xd6, 0xbc, +}; +static const struct drbg_kat_pr_false kat2306_t = { + 10, kat2306_entropyin, kat2306_nonce, kat2306_persstr, + kat2306_entropyinreseed, kat2306_addinreseed, kat2306_addin0, + kat2306_addin1, kat2306_retbits +}; +static const struct drbg_kat kat2306 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2306_t +}; + +static const unsigned char kat2307_entropyin[] = { + 0xb8, 0xf9, 0xe9, 0x97, 0x5c, 0xa0, 0x1d, 0x4b, 0x55, 0x73, 0x8b, 0xa5, + 0x99, 0x1e, 0x0b, 0x8c, 0xe6, 0xc4, 0x8f, 0x9e, 0x5e, 0x24, 0xe2, 0x08, + 0x0c, 0x94, 0x26, 0xfa, 0x46, 0xbf, 0xfc, 0x7a, +}; +static const unsigned char kat2307_nonce[] = {0}; +static const unsigned char kat2307_persstr[] = {0}; +static const unsigned char kat2307_entropyinreseed[] = { + 0xb0, 0x14, 0x4a, 0xb4, 0xb9, 0xed, 0xab, 0xf8, 0xbc, 0x31, 0x67, 0x97, + 0x4d, 0x42, 0xac, 0xcb, 0x3c, 0x37, 0x73, 0x04, 0x29, 0x51, 0x9b, 0x65, + 0x69, 0xca, 0x7e, 0x7f, 0x68, 0xb5, 0x1b, 0x31, +}; +static const unsigned char kat2307_addinreseed[] = { + 0x18, 0xc9, 0xaf, 0x5d, 0x87, 0x47, 0xa5, 0x52, 0x34, 0x82, 0x23, 0x76, + 0xb2, 0x11, 0xfd, 0x2f, 0xc0, 0xc5, 0xc1, 0x39, 0xcd, 0x53, 0xd3, 0xf9, + 0x30, 0xea, 0x4f, 0xd8, 0x00, 0x23, 0x33, 0x88, +}; +static const unsigned char kat2307_addin0[] = { + 0xd6, 0x91, 0xc5, 0x8e, 0x10, 0xc6, 0xb3, 0x7b, 0xca, 0xb6, 0xf0, 0x42, + 0x56, 0xc4, 0xc1, 0xea, 0xe2, 0xda, 0xae, 0x79, 0xaf, 0xb6, 0x29, 0xdf, + 0xea, 0xab, 0x6c, 0xd0, 0x61, 0xf0, 0xdb, 0x95, +}; +static const unsigned char kat2307_addin1[] = { + 0x2b, 0x65, 0xf6, 0xd5, 0x9e, 0xa4, 0xa3, 0x4c, 0x1e, 0x7e, 0xa4, 0x5e, + 0xca, 0x57, 0xb9, 0x72, 0x5e, 0x97, 0x4d, 0x3c, 0x44, 0x4d, 0xa5, 0x55, + 0x2f, 0x01, 0xfa, 0x3d, 0xe9, 0xef, 0x59, 0x36, +}; +static const unsigned char kat2307_retbits[] = { + 0x1e, 0x3c, 0x83, 0x0f, 0xbe, 0x43, 0x89, 0x4c, 0x4f, 0x3c, 0x4c, 0x65, + 0xf7, 0xe6, 0x68, 0xe6, 0x8c, 0x50, 0x41, 0xf2, 0x0c, 0xb5, 0xb8, 0x05, + 0x60, 0x5e, 0x0c, 0x50, 0xcb, 0x45, 0x16, 0xc0, 0xef, 0x62, 0x7b, 0xbe, + 0x36, 0x4c, 0x29, 0xf9, 0x8e, 0xa9, 0xed, 0xd5, 0x48, 0x3f, 0x78, 0x94, + 0x02, 0xce, 0x27, 0xfb, 0x17, 0x80, 0xba, 0xcf, 0x06, 0x9b, 0xa8, 0x23, + 0x1f, 0xe1, 0xba, 0x7f, +}; +static const struct drbg_kat_pr_false kat2307_t = { + 11, kat2307_entropyin, kat2307_nonce, kat2307_persstr, + kat2307_entropyinreseed, kat2307_addinreseed, kat2307_addin0, + kat2307_addin1, kat2307_retbits +}; +static const struct drbg_kat kat2307 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2307_t +}; + +static const unsigned char kat2308_entropyin[] = { + 0xd8, 0x07, 0x5b, 0x36, 0xc2, 0x5f, 0x82, 0x12, 0xa4, 0x8d, 0x55, 0xb8, + 0xb0, 0x10, 0x28, 0xb2, 0x05, 0x35, 0x32, 0xa3, 0x19, 0xe8, 0x9c, 0x64, + 0x43, 0x31, 0xf2, 0xb6, 0x1d, 0x69, 0x02, 0xe2, +}; +static const unsigned char kat2308_nonce[] = {0}; +static const unsigned char kat2308_persstr[] = {0}; +static const unsigned char kat2308_entropyinreseed[] = { + 0xb3, 0x90, 0x9a, 0x05, 0x5a, 0x25, 0xd0, 0x79, 0x78, 0xb0, 0xb4, 0x20, + 0x1b, 0x9a, 0x84, 0xb2, 0xd7, 0xf2, 0xa9, 0x91, 0xe4, 0x9e, 0x88, 0x2d, + 0x85, 0x89, 0x67, 0xd2, 0x06, 0x1d, 0x53, 0x0c, +}; +static const unsigned char kat2308_addinreseed[] = { + 0x8c, 0xae, 0x69, 0xcb, 0x63, 0xfd, 0x81, 0xf0, 0x56, 0xe9, 0x86, 0xcc, + 0x31, 0xbd, 0xdd, 0x01, 0xe4, 0xa9, 0x13, 0x93, 0x4c, 0x4d, 0x6a, 0x34, + 0x8b, 0xc4, 0x04, 0x80, 0x00, 0x0f, 0xd1, 0x9e, +}; +static const unsigned char kat2308_addin0[] = { + 0xa9, 0xf6, 0x32, 0xeb, 0x72, 0x16, 0xca, 0x91, 0x2c, 0x92, 0x27, 0xfe, + 0x24, 0xd1, 0xbd, 0x38, 0xb9, 0x5a, 0xb8, 0xff, 0x93, 0x94, 0x64, 0x52, + 0x8b, 0x21, 0xb4, 0x69, 0x27, 0x3c, 0x93, 0x70, +}; +static const unsigned char kat2308_addin1[] = { + 0xc1, 0x88, 0xc5, 0x71, 0xb1, 0xa7, 0x08, 0x08, 0x17, 0xd4, 0x15, 0xc3, + 0xe7, 0xd9, 0xe5, 0x7c, 0xf2, 0x42, 0x62, 0x55, 0xe2, 0x5a, 0x32, 0x76, + 0x53, 0x7f, 0xd4, 0xc9, 0xb5, 0x25, 0x72, 0x03, +}; +static const unsigned char kat2308_retbits[] = { + 0xb8, 0x11, 0x6d, 0xa0, 0x55, 0x98, 0x3b, 0x12, 0xd5, 0x62, 0xfa, 0xe9, + 0xcc, 0x47, 0x5b, 0xb9, 0x4f, 0x88, 0x08, 0xbd, 0x86, 0x06, 0xc9, 0xfa, + 0x02, 0x55, 0x62, 0xad, 0x89, 0x8f, 0xb5, 0x6d, 0x02, 0x60, 0x7a, 0x5a, + 0x88, 0xf9, 0xbb, 0xf4, 0xef, 0xc4, 0x08, 0x9d, 0xa8, 0x54, 0x05, 0xd7, + 0x31, 0xe8, 0x00, 0xd3, 0x61, 0x38, 0xbe, 0x4e, 0x01, 0xc8, 0xaa, 0xcc, + 0x79, 0xc3, 0xc9, 0x0d, +}; +static const struct drbg_kat_pr_false kat2308_t = { + 12, kat2308_entropyin, kat2308_nonce, kat2308_persstr, + kat2308_entropyinreseed, kat2308_addinreseed, kat2308_addin0, + kat2308_addin1, kat2308_retbits +}; +static const struct drbg_kat kat2308 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2308_t +}; + +static const unsigned char kat2309_entropyin[] = { + 0x9f, 0xb3, 0xe4, 0x88, 0xf3, 0x21, 0x9d, 0xa5, 0x1d, 0x66, 0xdd, 0x6d, + 0x74, 0x1f, 0x61, 0xc1, 0x79, 0x62, 0x77, 0xce, 0x50, 0x35, 0xe7, 0x22, + 0x11, 0x82, 0xfb, 0xff, 0x6c, 0x92, 0x0b, 0xe5, +}; +static const unsigned char kat2309_nonce[] = {0}; +static const unsigned char kat2309_persstr[] = {0}; +static const unsigned char kat2309_entropyinreseed[] = { + 0x80, 0x6d, 0xc8, 0xf9, 0x88, 0xec, 0xfc, 0xf6, 0x3d, 0xa6, 0x3c, 0x0c, + 0xb2, 0x13, 0x0e, 0x11, 0xc2, 0x73, 0x31, 0x42, 0x6b, 0xc9, 0xc8, 0x2c, + 0xfc, 0x1a, 0xde, 0xf5, 0xb9, 0xb7, 0x9f, 0xf1, +}; +static const unsigned char kat2309_addinreseed[] = { + 0x46, 0x3d, 0x3f, 0xf4, 0xb0, 0x22, 0xa2, 0x7c, 0xb5, 0x37, 0xc4, 0xd9, + 0x3a, 0x00, 0x12, 0x7a, 0x22, 0xf0, 0xa8, 0xe6, 0xcf, 0x11, 0xb4, 0x17, + 0xb1, 0x12, 0x90, 0xaa, 0x4c, 0x76, 0x66, 0x94, +}; +static const unsigned char kat2309_addin0[] = { + 0x29, 0x3e, 0x26, 0x62, 0x21, 0x46, 0x24, 0x97, 0x66, 0x55, 0x5b, 0x00, + 0xfd, 0x6a, 0xe3, 0x7b, 0xa8, 0x1c, 0x7d, 0xb7, 0x5b, 0xf9, 0xd0, 0x1e, + 0xda, 0x27, 0xd4, 0x37, 0x05, 0x42, 0x08, 0x39, +}; +static const unsigned char kat2309_addin1[] = { + 0x10, 0x99, 0xb7, 0x88, 0xa1, 0xf5, 0xa3, 0xa8, 0xbd, 0xea, 0x7f, 0x64, + 0x74, 0x82, 0x33, 0x7d, 0x45, 0x14, 0x9f, 0x36, 0x2e, 0xbb, 0x07, 0x7d, + 0xba, 0x24, 0x03, 0x39, 0xe3, 0x2c, 0x78, 0x04, +}; +static const unsigned char kat2309_retbits[] = { + 0xea, 0x0b, 0x2f, 0xb3, 0x4a, 0x68, 0x01, 0x3a, 0x54, 0x68, 0x24, 0xb4, + 0x26, 0x78, 0xdb, 0xb7, 0xb7, 0x72, 0xf8, 0x5e, 0x2a, 0xda, 0x34, 0xe1, + 0x74, 0x77, 0x0a, 0xad, 0xd1, 0x05, 0xa6, 0x43, 0xe6, 0xaa, 0x58, 0xd5, + 0x3a, 0xae, 0xb9, 0x2c, 0xfa, 0xe7, 0xfb, 0x5b, 0x31, 0x2e, 0xa6, 0xb1, + 0xd3, 0x1e, 0xee, 0x59, 0x8d, 0xf1, 0x46, 0xa3, 0xf2, 0x92, 0x76, 0x3b, + 0x05, 0xaf, 0xaa, 0x63, +}; +static const struct drbg_kat_pr_false kat2309_t = { + 13, kat2309_entropyin, kat2309_nonce, kat2309_persstr, + kat2309_entropyinreseed, kat2309_addinreseed, kat2309_addin0, + kat2309_addin1, kat2309_retbits +}; +static const struct drbg_kat kat2309 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2309_t +}; + +static const unsigned char kat2310_entropyin[] = { + 0x52, 0xda, 0x7e, 0x17, 0x7f, 0xca, 0xed, 0xa2, 0x7f, 0x0a, 0x5b, 0xcb, + 0xbc, 0x08, 0x73, 0xb9, 0xea, 0xa2, 0xd3, 0x3b, 0xfa, 0xa2, 0x5c, 0xbd, + 0xbc, 0x04, 0xcd, 0x58, 0xe3, 0x6a, 0xb4, 0xd2, +}; +static const unsigned char kat2310_nonce[] = {0}; +static const unsigned char kat2310_persstr[] = {0}; +static const unsigned char kat2310_entropyinreseed[] = { + 0x1f, 0xbe, 0xa4, 0x2f, 0xce, 0xcb, 0x30, 0x73, 0xfe, 0x25, 0x80, 0xc2, + 0x2c, 0xe6, 0x4c, 0x87, 0xcd, 0x23, 0x99, 0x43, 0xd4, 0x1b, 0xc7, 0x5f, + 0xac, 0xae, 0xdd, 0x39, 0x39, 0xa9, 0xa0, 0xce, +}; +static const unsigned char kat2310_addinreseed[] = { + 0x28, 0x1e, 0xad, 0x1b, 0x26, 0x94, 0xfc, 0x14, 0x3b, 0x2e, 0x14, 0x89, + 0x7b, 0xd0, 0x3b, 0xea, 0xb9, 0x54, 0xe3, 0x24, 0x3f, 0x58, 0xac, 0x1c, + 0x09, 0x19, 0xfb, 0xac, 0xe7, 0x67, 0xa5, 0xe3, +}; +static const unsigned char kat2310_addin0[] = { + 0xee, 0x0d, 0x3e, 0x9c, 0x17, 0x8d, 0x53, 0xf9, 0x95, 0x7e, 0xc0, 0x87, + 0x7a, 0xc7, 0x19, 0x69, 0x41, 0x97, 0xe8, 0xbd, 0xff, 0xed, 0xf8, 0xfe, + 0x59, 0xc5, 0x7a, 0x0c, 0xf6, 0xa8, 0xff, 0x84, +}; +static const unsigned char kat2310_addin1[] = { + 0x25, 0x45, 0xd3, 0x0f, 0x8b, 0x97, 0x4a, 0x21, 0xfa, 0x54, 0x14, 0x6a, + 0x14, 0xa5, 0x66, 0xbc, 0x01, 0x56, 0xa0, 0x15, 0xbd, 0xde, 0x60, 0xf3, + 0xf2, 0xb9, 0xe1, 0x86, 0xf6, 0x18, 0x1f, 0x5d, +}; +static const unsigned char kat2310_retbits[] = { + 0x7c, 0xd2, 0x00, 0x30, 0x34, 0xf2, 0x35, 0xe2, 0x09, 0xcb, 0x0d, 0x73, + 0xab, 0x44, 0x22, 0x34, 0x01, 0x6a, 0x04, 0xc8, 0x30, 0x75, 0x27, 0x21, + 0x99, 0x81, 0x46, 0xc2, 0xf6, 0xf2, 0x7d, 0x92, 0x30, 0x0b, 0x47, 0xfa, + 0x3e, 0xe7, 0x2b, 0x46, 0x37, 0x80, 0x92, 0xfe, 0xb1, 0x75, 0x58, 0x38, + 0x94, 0xb6, 0xf7, 0x00, 0x43, 0x62, 0xf7, 0x24, 0xef, 0x14, 0x5f, 0xe0, + 0x3c, 0x94, 0x1d, 0x42, +}; +static const struct drbg_kat_pr_false kat2310_t = { + 14, kat2310_entropyin, kat2310_nonce, kat2310_persstr, + kat2310_entropyinreseed, kat2310_addinreseed, kat2310_addin0, + kat2310_addin1, kat2310_retbits +}; +static const struct drbg_kat kat2310 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2310_t +}; + +static const unsigned char kat2311_entropyin[] = { + 0x87, 0x64, 0xbf, 0x9c, 0x12, 0xff, 0x37, 0xe2, 0x3a, 0xfe, 0x28, 0xa4, + 0x5c, 0x43, 0x04, 0xc0, 0x5d, 0x54, 0x65, 0x4b, 0xa1, 0x4c, 0xf5, 0x8d, + 0x7a, 0xe3, 0x71, 0x34, 0x7e, 0x1e, 0x70, 0x35, +}; +static const unsigned char kat2311_nonce[] = {0}; +static const unsigned char kat2311_persstr[] = { + 0xa6, 0xcf, 0xbd, 0xd0, 0x5e, 0xee, 0x36, 0xa3, 0xd1, 0x01, 0xc3, 0xd0, + 0x30, 0x1c, 0xb6, 0xff, 0x21, 0x68, 0x7d, 0x9f, 0x89, 0xcf, 0xc8, 0x60, + 0xd0, 0x5d, 0xfa, 0x1a, 0x95, 0x7f, 0x56, 0xbd, +}; +static const unsigned char kat2311_entropyinreseed[] = { + 0x19, 0x09, 0x33, 0xf0, 0x7a, 0x1d, 0x44, 0x8d, 0xab, 0x65, 0x07, 0x16, + 0xa1, 0xb3, 0x07, 0x14, 0xca, 0xda, 0x5c, 0xd0, 0xfb, 0xc4, 0x3b, 0x9d, + 0x2d, 0xde, 0x79, 0x1c, 0x4a, 0xd8, 0x52, 0x2d, +}; +static const unsigned char kat2311_addinreseed[] = {0}; +static const unsigned char kat2311_addin0[] = {0}; +static const unsigned char kat2311_addin1[] = {0}; +static const unsigned char kat2311_retbits[] = { + 0x5c, 0xbd, 0x9b, 0x5c, 0xf1, 0x88, 0x33, 0x30, 0xb3, 0x0b, 0x1d, 0xa9, + 0x17, 0xe6, 0x2d, 0x66, 0x82, 0x11, 0x5f, 0x0e, 0x97, 0x52, 0x39, 0x6c, + 0x32, 0xc5, 0x97, 0xb9, 0x0a, 0x95, 0x72, 0xa7, 0xe9, 0xc6, 0x13, 0x89, + 0xf5, 0xec, 0x97, 0x9a, 0x72, 0xf7, 0x1f, 0xe0, 0x3d, 0x0c, 0xd2, 0xf3, + 0x4b, 0x3d, 0x91, 0x70, 0xcc, 0x96, 0x1a, 0x79, 0x42, 0xc6, 0x52, 0xec, + 0x42, 0x65, 0x1b, 0xd3, +}; +static const struct drbg_kat_pr_false kat2311_t = { + 0, kat2311_entropyin, kat2311_nonce, kat2311_persstr, + kat2311_entropyinreseed, kat2311_addinreseed, kat2311_addin0, + kat2311_addin1, kat2311_retbits +}; +static const struct drbg_kat kat2311 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2311_t +}; + +static const unsigned char kat2312_entropyin[] = { + 0xdf, 0x7b, 0xb7, 0x21, 0x7c, 0x72, 0xc3, 0xf9, 0x66, 0x1b, 0xce, 0x37, + 0xe1, 0x18, 0xda, 0x03, 0xf9, 0xf6, 0x8b, 0x63, 0xdf, 0x62, 0x66, 0x10, + 0x7e, 0x87, 0xcd, 0x6b, 0x16, 0x17, 0xff, 0x74, +}; +static const unsigned char kat2312_nonce[] = {0}; +static const unsigned char kat2312_persstr[] = { + 0xd8, 0x60, 0xaf, 0x51, 0x7e, 0x2b, 0x09, 0x6f, 0x09, 0x4b, 0xd9, 0x00, + 0x43, 0x2e, 0xc6, 0xad, 0x0d, 0xa9, 0xee, 0x6e, 0xb5, 0xa1, 0x4a, 0x9d, + 0xbd, 0xf3, 0x2b, 0xc9, 0xfd, 0x6b, 0xca, 0x3c, +}; +static const unsigned char kat2312_entropyinreseed[] = { + 0x41, 0x48, 0x71, 0xa9, 0xc3, 0x30, 0x87, 0x93, 0x92, 0x79, 0x73, 0x36, + 0x95, 0x24, 0x53, 0xf3, 0xcb, 0x5f, 0xb7, 0x52, 0x18, 0xbf, 0xe7, 0x24, + 0x60, 0x6b, 0x1a, 0xe7, 0xc1, 0x07, 0xd3, 0x84, +}; +static const unsigned char kat2312_addinreseed[] = {0}; +static const unsigned char kat2312_addin0[] = {0}; +static const unsigned char kat2312_addin1[] = {0}; +static const unsigned char kat2312_retbits[] = { + 0x00, 0x66, 0x06, 0x35, 0x14, 0x62, 0x87, 0xae, 0x14, 0xdd, 0x6e, 0x87, + 0xfe, 0xe4, 0x40, 0x88, 0xed, 0x4d, 0xda, 0xee, 0xbb, 0x24, 0x66, 0x85, + 0xed, 0x95, 0xc3, 0xbc, 0xab, 0xc9, 0xe7, 0x2a, 0xaa, 0x23, 0xb2, 0x7d, + 0x74, 0x62, 0xe3, 0x2a, 0xe7, 0x8f, 0x17, 0x1a, 0x73, 0x9f, 0x8b, 0x30, + 0x40, 0x9a, 0x50, 0xce, 0xdb, 0xca, 0x39, 0xa4, 0xa8, 0x9e, 0xff, 0xac, + 0x38, 0x45, 0x97, 0x51, +}; +static const struct drbg_kat_pr_false kat2312_t = { + 1, kat2312_entropyin, kat2312_nonce, kat2312_persstr, + kat2312_entropyinreseed, kat2312_addinreseed, kat2312_addin0, + kat2312_addin1, kat2312_retbits +}; +static const struct drbg_kat kat2312 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2312_t +}; + +static const unsigned char kat2313_entropyin[] = { + 0x16, 0xd6, 0x48, 0xe7, 0x67, 0xb9, 0xd7, 0xcf, 0x63, 0x67, 0xb9, 0xdc, + 0x19, 0xe2, 0xd0, 0xb3, 0xbe, 0x20, 0x4b, 0x70, 0x26, 0x88, 0x69, 0xff, + 0x07, 0x28, 0xb9, 0xec, 0x21, 0x32, 0xe2, 0xaf, +}; +static const unsigned char kat2313_nonce[] = {0}; +static const unsigned char kat2313_persstr[] = { + 0x2d, 0x81, 0x20, 0x4a, 0x42, 0x99, 0x50, 0x55, 0x6f, 0x89, 0x4a, 0x21, + 0x9e, 0x45, 0x5a, 0xe8, 0x01, 0x6a, 0x8c, 0x38, 0x33, 0xab, 0xe0, 0x53, + 0xc1, 0xc1, 0x8f, 0x53, 0xc9, 0x36, 0xc8, 0x99, +}; +static const unsigned char kat2313_entropyinreseed[] = { + 0xa4, 0xbb, 0x15, 0xbe, 0x31, 0x45, 0x14, 0x9a, 0xea, 0xd1, 0x27, 0xad, + 0xf3, 0x82, 0xb9, 0x2c, 0xdd, 0xd6, 0x7c, 0x89, 0x8d, 0xd9, 0x5e, 0xa8, + 0xb2, 0x82, 0xa4, 0xbc, 0x83, 0xf9, 0xfb, 0xfc, +}; +static const unsigned char kat2313_addinreseed[] = {0}; +static const unsigned char kat2313_addin0[] = {0}; +static const unsigned char kat2313_addin1[] = {0}; +static const unsigned char kat2313_retbits[] = { + 0x01, 0x23, 0x09, 0xa4, 0xc7, 0x9d, 0xbc, 0x7b, 0x54, 0x6d, 0x55, 0x0c, + 0xf5, 0x48, 0x87, 0x3e, 0xe1, 0x7e, 0x43, 0x71, 0x89, 0x6d, 0xa2, 0x9b, + 0x9b, 0x93, 0xde, 0xae, 0x14, 0xd8, 0xa8, 0x94, 0x1c, 0xb3, 0xca, 0x3b, + 0xcc, 0x47, 0xe7, 0x03, 0xea, 0xff, 0x03, 0x1e, 0x13, 0x5c, 0xa4, 0x6e, + 0x22, 0xc9, 0x17, 0xe0, 0xab, 0x31, 0x68, 0x5a, 0x7d, 0x84, 0x34, 0xca, + 0x44, 0xff, 0x4c, 0x70, +}; +static const struct drbg_kat_pr_false kat2313_t = { + 2, kat2313_entropyin, kat2313_nonce, kat2313_persstr, + kat2313_entropyinreseed, kat2313_addinreseed, kat2313_addin0, + kat2313_addin1, kat2313_retbits +}; +static const struct drbg_kat kat2313 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2313_t +}; + +static const unsigned char kat2314_entropyin[] = { + 0xdb, 0xdd, 0xa4, 0xf6, 0xc6, 0xf0, 0x1a, 0xce, 0x43, 0x87, 0x77, 0xdd, + 0x95, 0x1c, 0xf9, 0x2a, 0xd5, 0x14, 0x8f, 0x1f, 0x0d, 0xf6, 0x40, 0xb0, + 0x37, 0x93, 0xee, 0x9a, 0xf8, 0x82, 0x9c, 0x05, +}; +static const unsigned char kat2314_nonce[] = {0}; +static const unsigned char kat2314_persstr[] = { + 0xaf, 0x64, 0x1b, 0xa2, 0xc2, 0xd8, 0xce, 0x09, 0xf4, 0x26, 0x45, 0x5a, + 0x84, 0xd3, 0x2d, 0x27, 0x14, 0x3a, 0x7d, 0x83, 0xf3, 0x3e, 0x22, 0x27, + 0x63, 0x44, 0xe6, 0xcd, 0x11, 0xf6, 0x86, 0x94, +}; +static const unsigned char kat2314_entropyinreseed[] = { + 0xda, 0x44, 0xe2, 0x3d, 0x1b, 0x61, 0x15, 0x03, 0x2f, 0xd3, 0x16, 0xcd, + 0xad, 0x47, 0x52, 0x4b, 0x15, 0xf9, 0xe3, 0x48, 0xf1, 0x60, 0x81, 0xa6, + 0x26, 0x12, 0x1f, 0x68, 0xac, 0x21, 0x3b, 0x7e, +}; +static const unsigned char kat2314_addinreseed[] = {0}; +static const unsigned char kat2314_addin0[] = {0}; +static const unsigned char kat2314_addin1[] = {0}; +static const unsigned char kat2314_retbits[] = { + 0x4b, 0x2c, 0x9c, 0x7f, 0xfd, 0x58, 0x8b, 0x13, 0xdf, 0x41, 0x5c, 0x55, + 0xc1, 0xfd, 0xa1, 0x5c, 0x1e, 0xfe, 0x22, 0x34, 0x5f, 0x7d, 0x72, 0x71, + 0x0b, 0x0c, 0xce, 0x2e, 0x5c, 0xa5, 0xe5, 0xdd, 0xa4, 0x03, 0xd8, 0x63, + 0x29, 0x59, 0x1e, 0x8a, 0x5a, 0xbd, 0x58, 0xac, 0x9f, 0xaa, 0x09, 0x93, + 0x3f, 0xf3, 0x88, 0xc3, 0xde, 0xeb, 0x8e, 0xc8, 0xef, 0xb5, 0xca, 0xda, + 0x3c, 0x66, 0xce, 0x8f, +}; +static const struct drbg_kat_pr_false kat2314_t = { + 3, kat2314_entropyin, kat2314_nonce, kat2314_persstr, + kat2314_entropyinreseed, kat2314_addinreseed, kat2314_addin0, + kat2314_addin1, kat2314_retbits +}; +static const struct drbg_kat kat2314 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2314_t +}; + +static const unsigned char kat2315_entropyin[] = { + 0x2b, 0xac, 0xf6, 0x9b, 0xc8, 0xb5, 0xc1, 0xba, 0x18, 0xa6, 0x27, 0xd2, + 0xe8, 0x3a, 0x98, 0xde, 0x11, 0xc8, 0x53, 0xa3, 0x37, 0x5e, 0x3c, 0x22, + 0xed, 0x8a, 0xf9, 0xd0, 0x1c, 0x91, 0xea, 0xa0, +}; +static const unsigned char kat2315_nonce[] = {0}; +static const unsigned char kat2315_persstr[] = { + 0xcd, 0xc3, 0x0e, 0x35, 0x64, 0x12, 0xc3, 0x08, 0x23, 0x9a, 0xf2, 0x96, + 0x2c, 0xea, 0xc8, 0x25, 0xcb, 0x59, 0x5c, 0x60, 0xef, 0xf0, 0xbe, 0xbb, + 0x74, 0xed, 0x52, 0xe2, 0xc8, 0x80, 0x36, 0xd0, +}; +static const unsigned char kat2315_entropyinreseed[] = { + 0xd5, 0xf7, 0x1f, 0x70, 0x9e, 0x0e, 0x27, 0x1c, 0xeb, 0x6a, 0x45, 0xeb, + 0x9c, 0xa6, 0xb7, 0x5f, 0x6b, 0x17, 0xbe, 0x22, 0x7f, 0x2b, 0xf5, 0xcb, + 0x6d, 0x47, 0x75, 0x5f, 0xf4, 0x0e, 0x5a, 0xe3, +}; +static const unsigned char kat2315_addinreseed[] = {0}; +static const unsigned char kat2315_addin0[] = {0}; +static const unsigned char kat2315_addin1[] = {0}; +static const unsigned char kat2315_retbits[] = { + 0xf3, 0xf8, 0xb8, 0xda, 0x42, 0xb0, 0xeb, 0x2d, 0x1e, 0x5a, 0x16, 0xb5, + 0x83, 0xe7, 0xc0, 0x23, 0x10, 0xa9, 0xaa, 0xa9, 0x7a, 0xc3, 0x1f, 0x46, + 0x81, 0x26, 0x85, 0x08, 0xa7, 0x54, 0xf5, 0xd3, 0xd8, 0xd1, 0x58, 0xb4, + 0x5c, 0x54, 0xd5, 0x6a, 0x2c, 0xb8, 0x5c, 0x63, 0x82, 0xa3, 0xdc, 0xe9, + 0x75, 0x15, 0xdc, 0xcf, 0x0c, 0x52, 0x34, 0xa6, 0xa3, 0x69, 0x63, 0x00, + 0x02, 0x32, 0x54, 0xca, +}; +static const struct drbg_kat_pr_false kat2315_t = { + 4, kat2315_entropyin, kat2315_nonce, kat2315_persstr, + kat2315_entropyinreseed, kat2315_addinreseed, kat2315_addin0, + kat2315_addin1, kat2315_retbits +}; +static const struct drbg_kat kat2315 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2315_t +}; + +static const unsigned char kat2316_entropyin[] = { + 0xbd, 0xb2, 0x72, 0xeb, 0x56, 0x63, 0x67, 0xc8, 0xe0, 0x30, 0xe8, 0xb1, + 0x14, 0x70, 0x36, 0x41, 0x89, 0x20, 0x40, 0x67, 0xab, 0x3e, 0xe6, 0xf2, + 0xf5, 0x4c, 0x74, 0x61, 0x7e, 0xf3, 0x73, 0xec, +}; +static const unsigned char kat2316_nonce[] = {0}; +static const unsigned char kat2316_persstr[] = { + 0xa9, 0x58, 0x35, 0x61, 0x86, 0x05, 0x52, 0xad, 0x92, 0x61, 0x76, 0x21, + 0xf0, 0xc0, 0x15, 0xbd, 0x09, 0xb6, 0xc0, 0x3c, 0x5e, 0x24, 0xa6, 0xf0, + 0xfe, 0x92, 0x63, 0xae, 0xf5, 0xd8, 0x1d, 0xe0, +}; +static const unsigned char kat2316_entropyinreseed[] = { + 0x6d, 0x02, 0x4e, 0xff, 0xf1, 0x08, 0x4f, 0xea, 0x38, 0xa2, 0x64, 0xdb, + 0x2a, 0xa1, 0xf2, 0x78, 0x0d, 0xf3, 0xc7, 0x29, 0xc1, 0x2b, 0x34, 0x47, + 0x90, 0x26, 0xd2, 0x75, 0xef, 0xec, 0x97, 0xee, +}; +static const unsigned char kat2316_addinreseed[] = {0}; +static const unsigned char kat2316_addin0[] = {0}; +static const unsigned char kat2316_addin1[] = {0}; +static const unsigned char kat2316_retbits[] = { + 0x50, 0x70, 0x98, 0x28, 0x51, 0xcd, 0xd8, 0x27, 0x72, 0x2b, 0xac, 0x4b, + 0x56, 0xe6, 0x38, 0x5a, 0x94, 0xba, 0xcd, 0x3e, 0xd3, 0xa0, 0xdc, 0x23, + 0x03, 0x3b, 0xf6, 0x0f, 0xbb, 0x71, 0xc7, 0xcb, 0xa3, 0x1f, 0x7f, 0xc0, + 0x39, 0x9d, 0x17, 0xf2, 0x41, 0x30, 0x49, 0x46, 0x04, 0x0b, 0x52, 0x7b, + 0xdc, 0xf8, 0x63, 0x15, 0xac, 0x89, 0x0e, 0x43, 0x76, 0x63, 0x51, 0xdd, + 0xb9, 0xba, 0x9e, 0xb4, +}; +static const struct drbg_kat_pr_false kat2316_t = { + 5, kat2316_entropyin, kat2316_nonce, kat2316_persstr, + kat2316_entropyinreseed, kat2316_addinreseed, kat2316_addin0, + kat2316_addin1, kat2316_retbits +}; +static const struct drbg_kat kat2316 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2316_t +}; + +static const unsigned char kat2317_entropyin[] = { + 0x8e, 0x3d, 0x85, 0xc9, 0x1d, 0xef, 0x9a, 0xb0, 0x8a, 0xf1, 0xae, 0xe1, + 0xdb, 0x87, 0xb1, 0xdb, 0x7b, 0x8c, 0x3d, 0xbf, 0x49, 0x3b, 0x8b, 0x62, + 0x5e, 0x6c, 0x87, 0xee, 0x4a, 0x05, 0xe1, 0x77, +}; +static const unsigned char kat2317_nonce[] = {0}; +static const unsigned char kat2317_persstr[] = { + 0x3b, 0xc3, 0xd5, 0x2c, 0xa8, 0x08, 0x6f, 0x8c, 0xb3, 0x75, 0xdf, 0x48, + 0x7b, 0x41, 0xef, 0x1d, 0x5b, 0xef, 0x5e, 0x4b, 0x01, 0x05, 0x8c, 0xee, + 0xfb, 0xc2, 0xa8, 0xe8, 0xb6, 0x82, 0x69, 0x4a, +}; +static const unsigned char kat2317_entropyinreseed[] = { + 0x9d, 0xbf, 0x4c, 0x8d, 0x18, 0x7c, 0x99, 0x72, 0xd0, 0xd2, 0x26, 0xce, + 0x2b, 0xd2, 0x09, 0x8d, 0x70, 0x66, 0x02, 0xe5, 0xd8, 0xfe, 0x63, 0x87, + 0x97, 0xaa, 0x96, 0x9e, 0xe4, 0xb6, 0xb4, 0x73, +}; +static const unsigned char kat2317_addinreseed[] = {0}; +static const unsigned char kat2317_addin0[] = {0}; +static const unsigned char kat2317_addin1[] = {0}; +static const unsigned char kat2317_retbits[] = { + 0xe0, 0xce, 0x25, 0x04, 0xb1, 0x9c, 0xdf, 0x7e, 0x7d, 0x4d, 0x50, 0x9b, + 0x26, 0x4a, 0xad, 0xe8, 0x34, 0x48, 0xc0, 0x48, 0xc3, 0x47, 0x73, 0xb6, + 0x9e, 0xb1, 0x4b, 0x71, 0xb0, 0xb1, 0xa8, 0x89, 0x9b, 0xda, 0xc8, 0x35, + 0x24, 0xd5, 0xf7, 0x43, 0x3d, 0xfc, 0x65, 0xa1, 0x64, 0x19, 0xf8, 0x1b, + 0xa4, 0x18, 0xa4, 0xab, 0x3d, 0xe0, 0xfe, 0xc5, 0x07, 0x57, 0xa4, 0x1a, + 0x4d, 0x00, 0x9a, 0xc1, +}; +static const struct drbg_kat_pr_false kat2317_t = { + 6, kat2317_entropyin, kat2317_nonce, kat2317_persstr, + kat2317_entropyinreseed, kat2317_addinreseed, kat2317_addin0, + kat2317_addin1, kat2317_retbits +}; +static const struct drbg_kat kat2317 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2317_t +}; + +static const unsigned char kat2318_entropyin[] = { + 0xb5, 0x5b, 0xe0, 0x84, 0x87, 0x38, 0x94, 0x57, 0x9c, 0xf1, 0xda, 0x2d, + 0x86, 0x3a, 0x4c, 0x36, 0xe1, 0x50, 0x05, 0x06, 0x5b, 0x64, 0x57, 0x05, + 0x78, 0xb1, 0xf4, 0x60, 0xe9, 0xf7, 0xa5, 0xc7, +}; +static const unsigned char kat2318_nonce[] = {0}; +static const unsigned char kat2318_persstr[] = { + 0xd3, 0x0d, 0xd7, 0x4b, 0xbf, 0xf7, 0x14, 0xb9, 0x0a, 0x12, 0xe4, 0x21, + 0xe3, 0x8e, 0x75, 0xff, 0xa8, 0x09, 0xb0, 0xe9, 0xc8, 0x69, 0x2a, 0x4a, + 0x0b, 0xb9, 0xff, 0xc6, 0xec, 0xe1, 0x13, 0x8f, +}; +static const unsigned char kat2318_entropyinreseed[] = { + 0x26, 0x4b, 0x4b, 0xae, 0x24, 0x9e, 0x78, 0xb6, 0x26, 0x74, 0x71, 0x49, + 0xdd, 0x6d, 0xd5, 0xd2, 0x39, 0x60, 0x8f, 0x8c, 0x10, 0xe6, 0x0e, 0xe8, + 0x40, 0xe0, 0xbc, 0x0a, 0xb6, 0xb9, 0x14, 0xeb, +}; +static const unsigned char kat2318_addinreseed[] = {0}; +static const unsigned char kat2318_addin0[] = {0}; +static const unsigned char kat2318_addin1[] = {0}; +static const unsigned char kat2318_retbits[] = { + 0xd2, 0xd4, 0xa4, 0xe3, 0x3f, 0xf5, 0x95, 0x1b, 0xc3, 0x45, 0x7b, 0x4b, + 0xe2, 0xa8, 0xa8, 0xcb, 0x1c, 0x7d, 0x46, 0x57, 0xd6, 0x66, 0x75, 0x82, + 0x4b, 0xc0, 0xe4, 0x2c, 0xe6, 0xa1, 0xb9, 0xe0, 0x4f, 0x0f, 0x27, 0xe6, + 0x7d, 0xaf, 0x6b, 0xbb, 0x11, 0xcc, 0x9e, 0x80, 0x91, 0x34, 0x76, 0xb6, + 0xd1, 0xdb, 0x78, 0x87, 0x96, 0xdc, 0x60, 0xea, 0x7d, 0x87, 0x59, 0xc2, + 0xe1, 0x60, 0x3a, 0x85, +}; +static const struct drbg_kat_pr_false kat2318_t = { + 7, kat2318_entropyin, kat2318_nonce, kat2318_persstr, + kat2318_entropyinreseed, kat2318_addinreseed, kat2318_addin0, + kat2318_addin1, kat2318_retbits +}; +static const struct drbg_kat kat2318 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2318_t +}; + +static const unsigned char kat2319_entropyin[] = { + 0x7b, 0xa1, 0x5c, 0x76, 0xd5, 0xec, 0x7c, 0x8e, 0x34, 0x9f, 0xb3, 0x68, + 0x3b, 0x2b, 0x39, 0x6c, 0x61, 0x3b, 0xbf, 0x69, 0x59, 0xfb, 0x49, 0xab, + 0xe3, 0xf2, 0xab, 0xc3, 0x46, 0x93, 0x7b, 0xa1, +}; +static const unsigned char kat2319_nonce[] = {0}; +static const unsigned char kat2319_persstr[] = { + 0xc4, 0xce, 0x04, 0x34, 0x2c, 0x7c, 0x74, 0x31, 0x6e, 0xb1, 0xe1, 0x1c, + 0x5a, 0x10, 0x30, 0x09, 0xa3, 0xf6, 0xce, 0x1f, 0xa2, 0x70, 0x07, 0xd5, + 0x4d, 0xd1, 0x45, 0x57, 0x4f, 0x71, 0xef, 0x8b, +}; +static const unsigned char kat2319_entropyinreseed[] = { + 0x66, 0x1b, 0xb5, 0xed, 0x93, 0x20, 0xb4, 0xb8, 0x2f, 0xed, 0x06, 0x6b, + 0x65, 0x2d, 0x82, 0x89, 0x3c, 0xec, 0xf2, 0xd6, 0x91, 0x02, 0x6a, 0xd6, + 0xf1, 0xb4, 0x5e, 0x0b, 0x4b, 0x57, 0xca, 0xf5, +}; +static const unsigned char kat2319_addinreseed[] = {0}; +static const unsigned char kat2319_addin0[] = {0}; +static const unsigned char kat2319_addin1[] = {0}; +static const unsigned char kat2319_retbits[] = { + 0x0b, 0xf6, 0xe5, 0x28, 0xfc, 0xc8, 0x58, 0x9d, 0xa4, 0x92, 0xde, 0xc0, + 0x57, 0xb4, 0xde, 0x83, 0x63, 0x48, 0x3f, 0x59, 0x6f, 0x7b, 0xf8, 0xea, + 0x8b, 0xab, 0x5a, 0x58, 0x22, 0xa0, 0xd6, 0x02, 0x12, 0x5a, 0xdc, 0xa6, + 0x81, 0x93, 0xee, 0x5e, 0x2c, 0x64, 0x2c, 0x5e, 0xa8, 0x94, 0xf9, 0xcd, + 0xa9, 0x82, 0xcf, 0xbb, 0x41, 0x6c, 0x9e, 0x43, 0x9e, 0xde, 0xa5, 0xec, + 0x2b, 0x04, 0x29, 0xd5, +}; +static const struct drbg_kat_pr_false kat2319_t = { + 8, kat2319_entropyin, kat2319_nonce, kat2319_persstr, + kat2319_entropyinreseed, kat2319_addinreseed, kat2319_addin0, + kat2319_addin1, kat2319_retbits +}; +static const struct drbg_kat kat2319 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2319_t +}; + +static const unsigned char kat2320_entropyin[] = { + 0x7f, 0x07, 0xc8, 0x29, 0x57, 0xfc, 0x85, 0x00, 0x90, 0xab, 0xb4, 0xe0, + 0x6f, 0xea, 0xe9, 0xa6, 0xeb, 0x9e, 0x90, 0x51, 0x7f, 0x7e, 0x02, 0x4f, + 0x7b, 0xb7, 0x84, 0x40, 0xc4, 0x81, 0xb1, 0x0a, +}; +static const unsigned char kat2320_nonce[] = {0}; +static const unsigned char kat2320_persstr[] = { + 0x44, 0x9b, 0xca, 0x7c, 0x34, 0x81, 0x44, 0xe0, 0x7b, 0x3e, 0xc3, 0x3c, + 0x33, 0xcf, 0x99, 0x77, 0xb1, 0x1b, 0xe3, 0x1a, 0xfc, 0x49, 0x1e, 0x0a, + 0x09, 0xa5, 0x32, 0xa1, 0x67, 0xfc, 0xee, 0x4a, +}; +static const unsigned char kat2320_entropyinreseed[] = { + 0x50, 0x17, 0xd7, 0x58, 0xf3, 0xc9, 0x08, 0x5b, 0x9d, 0x55, 0x85, 0xfc, + 0xf5, 0x58, 0xbd, 0x35, 0x15, 0xfe, 0xab, 0xa4, 0x9c, 0xd0, 0x49, 0x1e, + 0xfb, 0x20, 0x24, 0xc0, 0x8b, 0x74, 0xe9, 0xf4, +}; +static const unsigned char kat2320_addinreseed[] = {0}; +static const unsigned char kat2320_addin0[] = {0}; +static const unsigned char kat2320_addin1[] = {0}; +static const unsigned char kat2320_retbits[] = { + 0xb6, 0xd7, 0x4b, 0xbd, 0x2c, 0xbe, 0x4d, 0xe6, 0x36, 0xaf, 0x1e, 0xf1, + 0x20, 0x78, 0x58, 0x0e, 0x4e, 0x72, 0x85, 0x5d, 0x7f, 0xfe, 0x43, 0x33, + 0x12, 0xda, 0xad, 0xed, 0x3c, 0x81, 0x7f, 0x77, 0xb6, 0xc4, 0x03, 0xd9, + 0x40, 0x94, 0xbf, 0xf3, 0xc0, 0xed, 0xb1, 0x23, 0x2d, 0x59, 0x62, 0xf7, + 0x47, 0xe5, 0xca, 0xb2, 0xde, 0xc3, 0x29, 0xf1, 0x9b, 0x32, 0xee, 0x1d, + 0xb6, 0xa6, 0x78, 0xb1, +}; +static const struct drbg_kat_pr_false kat2320_t = { + 9, kat2320_entropyin, kat2320_nonce, kat2320_persstr, + kat2320_entropyinreseed, kat2320_addinreseed, kat2320_addin0, + kat2320_addin1, kat2320_retbits +}; +static const struct drbg_kat kat2320 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2320_t +}; + +static const unsigned char kat2321_entropyin[] = { + 0x54, 0x15, 0xa7, 0x36, 0xa1, 0x89, 0xb5, 0x80, 0xb6, 0x2f, 0xaf, 0xf8, + 0x18, 0x04, 0x5a, 0x98, 0x10, 0x4d, 0x31, 0x90, 0x72, 0x22, 0xe2, 0xd4, + 0xbb, 0x76, 0x45, 0x2e, 0x69, 0xec, 0x93, 0x48, +}; +static const unsigned char kat2321_nonce[] = {0}; +static const unsigned char kat2321_persstr[] = { + 0xa9, 0xd3, 0xeb, 0x2f, 0x85, 0x11, 0x9f, 0x62, 0x52, 0xfa, 0xd8, 0xac, + 0x32, 0x5c, 0xa1, 0x5f, 0xcc, 0x46, 0x3e, 0xe5, 0x1f, 0xb0, 0xb5, 0x7c, + 0x1d, 0x72, 0x46, 0xc8, 0xba, 0x28, 0xed, 0xdd, +}; +static const unsigned char kat2321_entropyinreseed[] = { + 0x11, 0x08, 0xf9, 0x87, 0xff, 0x50, 0x08, 0x7c, 0xb5, 0x83, 0xd2, 0x10, + 0xd2, 0xcc, 0x07, 0xc6, 0x58, 0xf5, 0x29, 0x28, 0x33, 0x2f, 0xad, 0x8f, + 0x2c, 0xa2, 0x17, 0xb4, 0x38, 0x38, 0x65, 0x4e, +}; +static const unsigned char kat2321_addinreseed[] = {0}; +static const unsigned char kat2321_addin0[] = {0}; +static const unsigned char kat2321_addin1[] = {0}; +static const unsigned char kat2321_retbits[] = { + 0xe9, 0x2d, 0x7c, 0xbc, 0xb1, 0xea, 0xbb, 0x42, 0xc9, 0x29, 0xac, 0xf3, + 0x1f, 0x73, 0x89, 0x23, 0x0a, 0xaf, 0xa8, 0xe0, 0x24, 0x28, 0x16, 0xde, + 0xaa, 0xd3, 0x9e, 0x16, 0xec, 0x74, 0x0b, 0x1a, 0xae, 0xaa, 0x71, 0x4d, + 0xa2, 0x07, 0x38, 0xb6, 0x1e, 0xd2, 0xbc, 0xe1, 0x9e, 0xd9, 0x43, 0x63, + 0xdf, 0x69, 0xe1, 0x98, 0xbe, 0xd5, 0x5c, 0x1e, 0x96, 0xbb, 0x88, 0x4d, + 0xb5, 0x67, 0xc8, 0xc6, +}; +static const struct drbg_kat_pr_false kat2321_t = { + 10, kat2321_entropyin, kat2321_nonce, kat2321_persstr, + kat2321_entropyinreseed, kat2321_addinreseed, kat2321_addin0, + kat2321_addin1, kat2321_retbits +}; +static const struct drbg_kat kat2321 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2321_t +}; + +static const unsigned char kat2322_entropyin[] = { + 0x3e, 0xf0, 0xb0, 0x9e, 0xcf, 0x9d, 0x32, 0x50, 0x8b, 0xb3, 0xd3, 0x12, + 0x04, 0x4e, 0xc1, 0x1b, 0xc2, 0xcb, 0xff, 0x65, 0xb7, 0xda, 0x5b, 0xb0, + 0x88, 0x89, 0x65, 0x85, 0x4b, 0xb7, 0xa3, 0x19, +}; +static const unsigned char kat2322_nonce[] = {0}; +static const unsigned char kat2322_persstr[] = { + 0x3c, 0xf0, 0xd2, 0x3c, 0x97, 0xc3, 0xbe, 0x61, 0x7f, 0xaa, 0xbb, 0x44, + 0xda, 0xae, 0x96, 0xc4, 0x61, 0x2c, 0x68, 0x19, 0xe6, 0x52, 0xa5, 0x26, + 0x4d, 0x79, 0x80, 0x99, 0x1a, 0x5d, 0x2a, 0x91, +}; +static const unsigned char kat2322_entropyinreseed[] = { + 0xc3, 0x23, 0x6b, 0x2a, 0x1e, 0xe7, 0x89, 0x19, 0xb2, 0x10, 0x3b, 0x0e, + 0xf0, 0xc5, 0x2c, 0x86, 0x53, 0x15, 0x22, 0x78, 0xdb, 0xa2, 0x3e, 0xef, + 0xf3, 0xa7, 0x06, 0x50, 0xb6, 0x6b, 0xe1, 0x5d, +}; +static const unsigned char kat2322_addinreseed[] = {0}; +static const unsigned char kat2322_addin0[] = {0}; +static const unsigned char kat2322_addin1[] = {0}; +static const unsigned char kat2322_retbits[] = { + 0x7a, 0xf7, 0x4e, 0x3d, 0x8f, 0x8a, 0x6f, 0xb4, 0x2e, 0x2e, 0x37, 0x74, + 0xb3, 0x0c, 0xbf, 0x16, 0x79, 0x4f, 0xc3, 0x5b, 0xd3, 0x30, 0xf2, 0xcd, + 0x78, 0x5a, 0x0d, 0xc6, 0x4e, 0x8f, 0xc8, 0x35, 0x11, 0x3b, 0x59, 0x49, + 0x1b, 0x11, 0x3f, 0xaf, 0xed, 0x0e, 0x60, 0xca, 0x0c, 0xd0, 0xb0, 0x0b, + 0x22, 0x0b, 0x5c, 0x6d, 0x73, 0x50, 0xa1, 0x91, 0xb5, 0xd3, 0x18, 0x8a, + 0x74, 0xc5, 0x95, 0x2b, +}; +static const struct drbg_kat_pr_false kat2322_t = { + 11, kat2322_entropyin, kat2322_nonce, kat2322_persstr, + kat2322_entropyinreseed, kat2322_addinreseed, kat2322_addin0, + kat2322_addin1, kat2322_retbits +}; +static const struct drbg_kat kat2322 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2322_t +}; + +static const unsigned char kat2323_entropyin[] = { + 0x9d, 0xac, 0x11, 0xb1, 0x82, 0x5b, 0x54, 0x6c, 0x07, 0x29, 0x7f, 0xce, + 0x1c, 0xde, 0xbf, 0xad, 0x39, 0xef, 0x27, 0x00, 0x33, 0x60, 0x31, 0x09, + 0x7d, 0xfa, 0x86, 0x15, 0x96, 0xd4, 0x90, 0x15, +}; +static const unsigned char kat2323_nonce[] = {0}; +static const unsigned char kat2323_persstr[] = { + 0x37, 0x3c, 0xff, 0x2b, 0x14, 0x9b, 0xa7, 0xcb, 0xb0, 0xf7, 0xab, 0x5a, + 0x8c, 0x57, 0xe1, 0x40, 0xca, 0x53, 0x20, 0xf7, 0xb5, 0xdd, 0xbf, 0x9e, + 0x8d, 0x56, 0x6c, 0x56, 0x43, 0xfa, 0xba, 0x71, +}; +static const unsigned char kat2323_entropyinreseed[] = { + 0xdc, 0xb2, 0x04, 0xc7, 0xb0, 0x59, 0x2f, 0x2f, 0x38, 0xa5, 0x81, 0x8a, + 0xa0, 0xe1, 0xdc, 0xc2, 0xc8, 0x25, 0x53, 0x87, 0x40, 0x98, 0xbc, 0xe4, + 0x01, 0x04, 0x88, 0x88, 0x29, 0xd7, 0x6a, 0xfd, +}; +static const unsigned char kat2323_addinreseed[] = {0}; +static const unsigned char kat2323_addin0[] = {0}; +static const unsigned char kat2323_addin1[] = {0}; +static const unsigned char kat2323_retbits[] = { + 0xe3, 0xf8, 0x82, 0x60, 0xa3, 0x64, 0xd6, 0x73, 0xe8, 0x9f, 0x8a, 0x67, + 0x14, 0x1a, 0xca, 0x4f, 0x0a, 0x4e, 0x9f, 0xd7, 0x33, 0x16, 0x3e, 0x84, + 0xab, 0x7b, 0xa9, 0x40, 0xe4, 0xf0, 0xca, 0x41, 0xb0, 0x90, 0xad, 0xb3, + 0x93, 0xdc, 0x44, 0x6a, 0x0d, 0xc0, 0x4f, 0x11, 0x37, 0x7e, 0x1a, 0xf4, + 0x1d, 0xbc, 0x07, 0x45, 0x4d, 0xb8, 0xe9, 0x57, 0x77, 0x96, 0x09, 0x46, + 0x92, 0xe4, 0xe5, 0x95, +}; +static const struct drbg_kat_pr_false kat2323_t = { + 12, kat2323_entropyin, kat2323_nonce, kat2323_persstr, + kat2323_entropyinreseed, kat2323_addinreseed, kat2323_addin0, + kat2323_addin1, kat2323_retbits +}; +static const struct drbg_kat kat2323 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2323_t +}; + +static const unsigned char kat2324_entropyin[] = { + 0x5c, 0xf5, 0xa3, 0x1a, 0xac, 0x56, 0x98, 0x44, 0x53, 0xc0, 0x11, 0x63, + 0x80, 0xa1, 0x46, 0x22, 0x7f, 0x14, 0xf0, 0x0d, 0x85, 0x03, 0x55, 0x80, + 0xe6, 0xe3, 0xca, 0x73, 0x14, 0x00, 0x30, 0xab, +}; +static const unsigned char kat2324_nonce[] = {0}; +static const unsigned char kat2324_persstr[] = { + 0x52, 0xdf, 0x31, 0x5f, 0x00, 0x6a, 0xb6, 0xae, 0x72, 0x42, 0xbd, 0x0d, + 0xce, 0xfd, 0x9f, 0x0e, 0x7e, 0x6f, 0x18, 0xb2, 0xf5, 0x7b, 0x80, 0x4e, + 0xaa, 0xcf, 0x90, 0x07, 0x5f, 0x3d, 0x39, 0x4f, +}; +static const unsigned char kat2324_entropyinreseed[] = { + 0x81, 0xd1, 0x3e, 0x9c, 0xda, 0x01, 0x2d, 0x25, 0x35, 0xa1, 0xdf, 0x99, + 0xaf, 0x72, 0xf6, 0x43, 0xca, 0xff, 0xb3, 0x77, 0x6b, 0x97, 0x7a, 0x3d, + 0x3f, 0x81, 0x40, 0x59, 0x45, 0x47, 0x09, 0x86, +}; +static const unsigned char kat2324_addinreseed[] = {0}; +static const unsigned char kat2324_addin0[] = {0}; +static const unsigned char kat2324_addin1[] = {0}; +static const unsigned char kat2324_retbits[] = { + 0xc5, 0x0e, 0xda, 0x2d, 0xa3, 0x68, 0xf0, 0x90, 0x8c, 0x9c, 0x1f, 0xfe, + 0x35, 0xe7, 0x5f, 0x02, 0xe2, 0xb8, 0x64, 0xa3, 0x1a, 0x52, 0x9e, 0x62, + 0x04, 0xad, 0x28, 0x2a, 0x3a, 0x95, 0xa4, 0xbf, 0x50, 0xbd, 0xae, 0x43, + 0x83, 0x77, 0x89, 0xf2, 0x84, 0xf3, 0xec, 0xcb, 0xf3, 0x42, 0xb1, 0xcf, + 0x9d, 0x35, 0xaf, 0x47, 0xa3, 0x59, 0x7c, 0xba, 0x11, 0x06, 0x93, 0x3e, + 0x37, 0x69, 0xd2, 0x90, +}; +static const struct drbg_kat_pr_false kat2324_t = { + 13, kat2324_entropyin, kat2324_nonce, kat2324_persstr, + kat2324_entropyinreseed, kat2324_addinreseed, kat2324_addin0, + kat2324_addin1, kat2324_retbits +}; +static const struct drbg_kat kat2324 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2324_t +}; + +static const unsigned char kat2325_entropyin[] = { + 0xc8, 0xa4, 0xe7, 0x39, 0x42, 0x01, 0x9f, 0xa4, 0xae, 0xe8, 0x8e, 0x01, + 0x21, 0x40, 0xe5, 0x65, 0xb5, 0xed, 0x9e, 0xb8, 0x34, 0x5a, 0x37, 0xbd, + 0x0d, 0xd5, 0x0a, 0x58, 0xc0, 0xc3, 0xbb, 0x7d, +}; +static const unsigned char kat2325_nonce[] = {0}; +static const unsigned char kat2325_persstr[] = { + 0x41, 0xb9, 0xb8, 0xe2, 0xd9, 0xa7, 0x94, 0x5f, 0xfc, 0xf2, 0x63, 0x1b, + 0xf7, 0xd6, 0x68, 0x64, 0x89, 0x93, 0xc0, 0xf4, 0x85, 0x9e, 0xa2, 0x2d, + 0xe4, 0x27, 0x9c, 0x02, 0xa7, 0x39, 0xba, 0x2f, +}; +static const unsigned char kat2325_entropyinreseed[] = { + 0xce, 0xcd, 0x9d, 0x0a, 0xc5, 0xcb, 0x7e, 0xa4, 0xcd, 0xa4, 0x56, 0x6b, + 0x87, 0x3b, 0xce, 0xfc, 0x2d, 0xb0, 0x68, 0xee, 0x41, 0x77, 0x4a, 0x68, + 0x61, 0xa2, 0x1b, 0xc6, 0x9c, 0xbe, 0x18, 0x14, +}; +static const unsigned char kat2325_addinreseed[] = {0}; +static const unsigned char kat2325_addin0[] = {0}; +static const unsigned char kat2325_addin1[] = {0}; +static const unsigned char kat2325_retbits[] = { + 0x9d, 0x72, 0x09, 0xb6, 0x25, 0xd5, 0xdf, 0x31, 0xa9, 0x49, 0xfb, 0xf1, + 0x5b, 0xf6, 0xe4, 0x51, 0x5e, 0x42, 0xe6, 0xeb, 0x03, 0x90, 0x9d, 0xd6, + 0xd7, 0xff, 0x4e, 0x00, 0x1a, 0x84, 0x08, 0xc7, 0x04, 0x90, 0x1c, 0xa2, + 0xb2, 0x12, 0x1c, 0x07, 0x9e, 0x36, 0xc2, 0x8a, 0xed, 0x7a, 0x78, 0x6a, + 0xa3, 0x56, 0xb6, 0xf3, 0xc7, 0x5b, 0x87, 0xd4, 0xc7, 0x8a, 0x2d, 0x06, + 0x37, 0x1d, 0xe3, 0x56, +}; +static const struct drbg_kat_pr_false kat2325_t = { + 14, kat2325_entropyin, kat2325_nonce, kat2325_persstr, + kat2325_entropyinreseed, kat2325_addinreseed, kat2325_addin0, + kat2325_addin1, kat2325_retbits +}; +static const struct drbg_kat kat2325 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2325_t +}; + +static const unsigned char kat2326_entropyin[] = { + 0x77, 0x27, 0xb1, 0x13, 0x58, 0xcf, 0xa1, 0x2d, 0x22, 0x09, 0xd9, 0xd3, + 0xd6, 0x94, 0x2c, 0x62, 0x29, 0x6f, 0x68, 0x15, 0x93, 0xa5, 0xfc, 0x7d, + 0x15, 0xd9, 0x24, 0x42, 0xf5, 0xec, 0x75, 0x7e, +}; +static const unsigned char kat2326_nonce[] = {0}; +static const unsigned char kat2326_persstr[] = { + 0xc1, 0xd2, 0x80, 0xfc, 0x9c, 0xed, 0xad, 0xb9, 0x48, 0x64, 0x12, 0x2e, + 0x87, 0x39, 0x89, 0xd7, 0x08, 0x0a, 0x0a, 0x34, 0xc6, 0x25, 0x20, 0x4f, + 0x04, 0xe7, 0x14, 0x16, 0x0c, 0x1c, 0xd9, 0x62, +}; +static const unsigned char kat2326_entropyinreseed[] = { + 0xeb, 0x85, 0x1c, 0xa6, 0x64, 0x7c, 0xff, 0x70, 0xd9, 0x12, 0xd1, 0xe7, + 0x60, 0xab, 0xdb, 0x6b, 0x75, 0x28, 0x1e, 0x3c, 0xfb, 0x21, 0x69, 0x3f, + 0xea, 0x83, 0x06, 0x59, 0x01, 0x30, 0x14, 0x11, +}; +static const unsigned char kat2326_addinreseed[] = { + 0x28, 0xcc, 0xec, 0x62, 0x8a, 0xc9, 0xfd, 0x74, 0x25, 0x1b, 0xdc, 0xfa, + 0xe5, 0xe3, 0xb3, 0x63, 0x05, 0xd5, 0x8d, 0x45, 0xf2, 0x8d, 0xa7, 0xa7, + 0x1e, 0xb2, 0xaa, 0x71, 0x0b, 0x99, 0x71, 0x79, +}; +static const unsigned char kat2326_addin0[] = { + 0x79, 0x45, 0x78, 0xa6, 0x79, 0xba, 0x82, 0xf1, 0xce, 0x61, 0x10, 0x97, + 0x26, 0x53, 0x8c, 0x0e, 0x8d, 0xc9, 0x40, 0x89, 0xf0, 0x1e, 0xe8, 0x1e, + 0x88, 0xda, 0xb2, 0x75, 0x29, 0x86, 0xa5, 0xa8, +}; +static const unsigned char kat2326_addin1[] = { + 0xbf, 0xd0, 0x56, 0x81, 0xf9, 0x91, 0x7e, 0x99, 0x9e, 0xfe, 0x25, 0xc1, + 0x9a, 0x94, 0x36, 0x49, 0x88, 0x0a, 0x7a, 0x79, 0x81, 0x91, 0x54, 0x34, + 0xf5, 0xd1, 0x72, 0x98, 0x42, 0x6a, 0x23, 0x6b, +}; +static const unsigned char kat2326_retbits[] = { + 0x1a, 0xab, 0x46, 0x36, 0x5a, 0x15, 0x0b, 0xd2, 0x28, 0x1f, 0xa4, 0x95, + 0x55, 0x30, 0x10, 0x16, 0xbc, 0xd2, 0x26, 0x5d, 0x19, 0xb8, 0xfb, 0x83, + 0xde, 0xec, 0xc6, 0x3a, 0xb3, 0x25, 0x03, 0xce, 0x6b, 0x69, 0x6e, 0x15, + 0x76, 0x40, 0xf7, 0x87, 0x8a, 0x74, 0xa1, 0x6d, 0xd8, 0x7c, 0xe7, 0x29, + 0x94, 0x7a, 0x25, 0x63, 0xab, 0xce, 0x4d, 0xc9, 0xd5, 0x3e, 0x53, 0x6b, + 0xf6, 0xf9, 0x3c, 0xd5, +}; +static const struct drbg_kat_pr_false kat2326_t = { + 0, kat2326_entropyin, kat2326_nonce, kat2326_persstr, + kat2326_entropyinreseed, kat2326_addinreseed, kat2326_addin0, + kat2326_addin1, kat2326_retbits +}; +static const struct drbg_kat kat2326 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2326_t +}; + +static const unsigned char kat2327_entropyin[] = { + 0x80, 0x2e, 0xcb, 0x74, 0x7f, 0x01, 0x13, 0x09, 0x78, 0x61, 0xdf, 0x03, + 0xde, 0x18, 0x11, 0xa3, 0x54, 0xd9, 0xb1, 0x8b, 0xa9, 0x8f, 0x2c, 0xaf, + 0xf4, 0x28, 0x3f, 0x33, 0x05, 0xca, 0x9d, 0x82, +}; +static const unsigned char kat2327_nonce[] = {0}; +static const unsigned char kat2327_persstr[] = { + 0x38, 0xb3, 0x90, 0xf8, 0x05, 0x2c, 0xd8, 0x90, 0x54, 0x9f, 0x7e, 0x5e, + 0x97, 0x3e, 0x31, 0x8e, 0xc5, 0xcb, 0xbd, 0x02, 0x29, 0x28, 0x02, 0x5c, + 0xf2, 0x13, 0x6e, 0x21, 0xd9, 0xb0, 0x64, 0xa2, +}; +static const unsigned char kat2327_entropyinreseed[] = { + 0x59, 0x59, 0xaa, 0x5d, 0x35, 0x48, 0x7e, 0xd4, 0x62, 0xdf, 0xc3, 0xd9, + 0x81, 0x6f, 0x63, 0xda, 0x17, 0x26, 0xc5, 0xab, 0x65, 0xd8, 0xf1, 0xb6, + 0x72, 0x99, 0x1a, 0xd1, 0xfe, 0x8a, 0x3c, 0x57, +}; +static const unsigned char kat2327_addinreseed[] = { + 0x57, 0x62, 0x8d, 0xc4, 0xf1, 0xb4, 0x8c, 0x9d, 0x8e, 0x24, 0x84, 0xb0, + 0x61, 0xcd, 0x2f, 0xc8, 0xb2, 0x9e, 0xe1, 0x39, 0x4c, 0x3f, 0x70, 0x74, + 0xac, 0x0b, 0x01, 0x49, 0xb9, 0x98, 0xe0, 0x7d, +}; +static const unsigned char kat2327_addin0[] = { + 0xaf, 0xcf, 0x94, 0x5b, 0xf2, 0x08, 0xa1, 0x90, 0xff, 0x1c, 0xf3, 0xa3, + 0xd3, 0x55, 0x4d, 0xca, 0x0d, 0xa1, 0xc5, 0xbf, 0x21, 0xc9, 0x6f, 0xc2, + 0x83, 0x67, 0x7d, 0xe1, 0x97, 0x22, 0xe6, 0x78, +}; +static const unsigned char kat2327_addin1[] = { + 0x22, 0xc9, 0x4a, 0xb5, 0x04, 0xa6, 0xfa, 0x3d, 0x00, 0xce, 0x68, 0x5d, + 0xb6, 0xc2, 0x65, 0x29, 0x49, 0x4f, 0x2e, 0x86, 0x11, 0x0f, 0x8b, 0x4e, + 0xf3, 0x55, 0x0e, 0x62, 0xa9, 0x38, 0x50, 0x60, +}; +static const unsigned char kat2327_retbits[] = { + 0x69, 0x4e, 0x8b, 0x4b, 0xb5, 0x60, 0x7e, 0x89, 0x42, 0x3c, 0x10, 0xb2, + 0x71, 0x73, 0x2b, 0xa4, 0x01, 0x4a, 0x8a, 0x21, 0xd1, 0xe6, 0x95, 0xc6, + 0x54, 0x57, 0x92, 0xee, 0x30, 0x77, 0xb9, 0xce, 0x90, 0xda, 0x16, 0x2a, + 0xc7, 0x5b, 0xb5, 0x15, 0x2f, 0x7b, 0xf3, 0xfa, 0x07, 0xba, 0x9d, 0xfd, + 0x7a, 0x55, 0x07, 0x7e, 0x69, 0x38, 0x22, 0xda, 0x11, 0x34, 0xb7, 0xc8, + 0x1f, 0xb8, 0x8c, 0xcc, +}; +static const struct drbg_kat_pr_false kat2327_t = { + 1, kat2327_entropyin, kat2327_nonce, kat2327_persstr, + kat2327_entropyinreseed, kat2327_addinreseed, kat2327_addin0, + kat2327_addin1, kat2327_retbits +}; +static const struct drbg_kat kat2327 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2327_t +}; + +static const unsigned char kat2328_entropyin[] = { + 0x29, 0x24, 0x55, 0xcb, 0x52, 0x6e, 0x83, 0x8c, 0x2a, 0xe9, 0x1b, 0x2e, + 0x16, 0xe0, 0x81, 0xeb, 0x63, 0xa1, 0xc0, 0x46, 0x69, 0xfd, 0xdd, 0xcd, + 0xcf, 0x80, 0x28, 0x4c, 0x35, 0x32, 0x2d, 0xbe, +}; +static const unsigned char kat2328_nonce[] = {0}; +static const unsigned char kat2328_persstr[] = { + 0x1f, 0xa3, 0x6f, 0xeb, 0x20, 0xf4, 0x08, 0x80, 0x3e, 0x68, 0xf6, 0x89, + 0x5e, 0x61, 0x84, 0x32, 0x53, 0x6f, 0x5e, 0xbe, 0x1d, 0x9d, 0xbd, 0x72, + 0x80, 0x4f, 0x3e, 0xa9, 0x72, 0x0e, 0x27, 0x4b, +}; +static const unsigned char kat2328_entropyinreseed[] = { + 0x59, 0xb0, 0x63, 0xf4, 0x7e, 0xf6, 0x96, 0xdd, 0x24, 0x43, 0x77, 0xd8, + 0xe2, 0x2b, 0xbf, 0x03, 0x5c, 0xf5, 0x05, 0x46, 0xac, 0x0e, 0x7b, 0xa7, + 0x6e, 0x3d, 0x18, 0xcb, 0x78, 0xee, 0x68, 0xcd, +}; +static const unsigned char kat2328_addinreseed[] = { + 0x2d, 0x5f, 0x74, 0x01, 0xfc, 0xc7, 0xd7, 0xbf, 0x6b, 0xf8, 0x61, 0xbe, + 0x08, 0x87, 0xeb, 0xb7, 0x76, 0xad, 0xeb, 0xcc, 0x11, 0x8d, 0xc8, 0x50, + 0x15, 0xb8, 0x4c, 0x66, 0x33, 0x22, 0xf6, 0xc6, +}; +static const unsigned char kat2328_addin0[] = { + 0x59, 0x6c, 0x6d, 0xde, 0x7b, 0x82, 0xb4, 0x85, 0x0b, 0xc7, 0x3b, 0x34, + 0x0b, 0x34, 0xd6, 0x89, 0x83, 0xd5, 0x6f, 0x3a, 0xa8, 0x59, 0x21, 0x1c, + 0xcb, 0x92, 0xe6, 0x75, 0x77, 0xdd, 0x73, 0x5d, +}; +static const unsigned char kat2328_addin1[] = { + 0x85, 0x8d, 0xa0, 0x66, 0x93, 0x4d, 0x2a, 0x52, 0x15, 0xec, 0xf3, 0xd2, + 0xe8, 0x90, 0xe7, 0x3d, 0x7f, 0x38, 0x9c, 0x75, 0x32, 0x80, 0x07, 0xb6, + 0xcd, 0x91, 0xe6, 0x3f, 0xec, 0x5f, 0x5e, 0x0c, +}; +static const unsigned char kat2328_retbits[] = { + 0x8d, 0x30, 0xc1, 0xe9, 0x65, 0x6b, 0x81, 0xc3, 0xc4, 0x76, 0x6b, 0x24, + 0x55, 0x09, 0x59, 0x16, 0x4a, 0xe8, 0xc6, 0xa3, 0xf6, 0x3a, 0xa6, 0x13, + 0x34, 0xa6, 0x37, 0xf3, 0x4d, 0xa9, 0x39, 0xa8, 0x47, 0xb4, 0x4d, 0x6a, + 0xc0, 0x38, 0x10, 0x9c, 0x65, 0x73, 0xf7, 0xe7, 0xb5, 0x16, 0xf7, 0x8b, + 0x1c, 0x9d, 0xd6, 0x59, 0x8d, 0x11, 0x8c, 0x68, 0x15, 0xd8, 0xea, 0x2c, + 0x5f, 0x89, 0x23, 0x48, +}; +static const struct drbg_kat_pr_false kat2328_t = { + 2, kat2328_entropyin, kat2328_nonce, kat2328_persstr, + kat2328_entropyinreseed, kat2328_addinreseed, kat2328_addin0, + kat2328_addin1, kat2328_retbits +}; +static const struct drbg_kat kat2328 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2328_t +}; + +static const unsigned char kat2329_entropyin[] = { + 0x71, 0x73, 0xa8, 0xab, 0x13, 0xa1, 0xb3, 0x82, 0xf7, 0x35, 0x49, 0xa9, + 0x7a, 0x9c, 0xb1, 0xec, 0x2b, 0x64, 0x8d, 0xab, 0xfa, 0x0c, 0x7e, 0x54, + 0xb7, 0xcc, 0x6f, 0x51, 0xc4, 0xac, 0xeb, 0x5f, +}; +static const unsigned char kat2329_nonce[] = {0}; +static const unsigned char kat2329_persstr[] = { + 0x92, 0x46, 0xdc, 0xd4, 0x83, 0x83, 0xd0, 0xf5, 0x84, 0x7d, 0xe8, 0x5d, + 0xcf, 0x0e, 0x1a, 0x0b, 0xd3, 0x6b, 0x8d, 0x8e, 0x84, 0xce, 0xe7, 0xd3, + 0x7a, 0x60, 0x8b, 0xe9, 0xa2, 0xdd, 0x2d, 0x1f, +}; +static const unsigned char kat2329_entropyinreseed[] = { + 0xfe, 0x80, 0xc5, 0x88, 0xf5, 0x75, 0x4b, 0x98, 0x98, 0x6d, 0xdb, 0x47, + 0x78, 0x7a, 0xb6, 0xc0, 0x67, 0x31, 0xc9, 0xc5, 0xb7, 0xea, 0x01, 0x82, + 0x80, 0x21, 0xee, 0x96, 0x4b, 0x26, 0x0d, 0x1a, +}; +static const unsigned char kat2329_addinreseed[] = { + 0x82, 0x02, 0xb4, 0x60, 0xb0, 0xdc, 0x49, 0x06, 0x67, 0x3e, 0x88, 0x3c, + 0xd2, 0x8d, 0x8e, 0xb7, 0xcf, 0x30, 0x3c, 0x8e, 0xd3, 0x1e, 0x37, 0x69, + 0x2b, 0x0f, 0x5a, 0x5f, 0xcf, 0x68, 0x7e, 0xa5, +}; +static const unsigned char kat2329_addin0[] = { + 0x20, 0x4d, 0xd4, 0x1d, 0x44, 0xad, 0xf8, 0xeb, 0x97, 0x75, 0x8b, 0xc6, + 0x4e, 0xff, 0xa3, 0x2f, 0x42, 0x66, 0x17, 0x46, 0x86, 0xeb, 0xc0, 0x2b, + 0xb6, 0xbc, 0xb9, 0x3d, 0x50, 0x03, 0xc2, 0xf2, +}; +static const unsigned char kat2329_addin1[] = { + 0xdd, 0xf6, 0xb6, 0x4b, 0x8b, 0xcb, 0x95, 0x9b, 0x9e, 0xb3, 0x44, 0x91, + 0x61, 0x70, 0xa9, 0xae, 0xa9, 0xe9, 0x47, 0xd3, 0x34, 0x2a, 0xcc, 0x3d, + 0xe8, 0xe4, 0x7b, 0xa9, 0xa4, 0xe8, 0x9b, 0xbc, +}; +static const unsigned char kat2329_retbits[] = { + 0x52, 0x98, 0x3b, 0x6e, 0x7c, 0x3f, 0xc9, 0x1e, 0x7e, 0xc9, 0x87, 0x78, + 0x30, 0xad, 0x1d, 0x3c, 0x67, 0xbc, 0xd8, 0x0b, 0x06, 0x1e, 0x2c, 0x50, + 0xd8, 0x28, 0x9f, 0x26, 0xf5, 0x91, 0x5f, 0x9b, 0x3e, 0x20, 0x14, 0x82, + 0xb2, 0xfa, 0xa9, 0x80, 0x2a, 0x5a, 0x41, 0x58, 0xe2, 0x47, 0x59, 0x88, + 0xd4, 0x69, 0x80, 0x4a, 0x52, 0x9a, 0xca, 0x9d, 0x41, 0xf1, 0x0c, 0x5a, + 0x7f, 0x30, 0x07, 0x7f, +}; +static const struct drbg_kat_pr_false kat2329_t = { + 3, kat2329_entropyin, kat2329_nonce, kat2329_persstr, + kat2329_entropyinreseed, kat2329_addinreseed, kat2329_addin0, + kat2329_addin1, kat2329_retbits +}; +static const struct drbg_kat kat2329 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2329_t +}; + +static const unsigned char kat2330_entropyin[] = { + 0x50, 0x0d, 0x45, 0xce, 0x65, 0xb0, 0xfe, 0x2a, 0xd5, 0xf9, 0xb9, 0x62, + 0xc0, 0x64, 0xb0, 0x95, 0x0e, 0xe9, 0x5b, 0x09, 0xd4, 0xd7, 0xd7, 0x95, + 0x28, 0x01, 0xed, 0x09, 0x59, 0x78, 0x2b, 0x9d, +}; +static const unsigned char kat2330_nonce[] = {0}; +static const unsigned char kat2330_persstr[] = { + 0x9f, 0x23, 0x37, 0xba, 0xb3, 0x1d, 0x98, 0x9a, 0x8e, 0xdd, 0xcb, 0x3c, + 0x05, 0x75, 0x3f, 0x22, 0x8b, 0xff, 0x22, 0xff, 0xed, 0x2b, 0x72, 0x9d, + 0x81, 0xa0, 0x93, 0xe9, 0x0a, 0x4c, 0x21, 0xb8, +}; +static const unsigned char kat2330_entropyinreseed[] = { + 0x3b, 0xee, 0x44, 0x66, 0x9e, 0x4e, 0x9b, 0xe0, 0x1a, 0x27, 0x95, 0xef, + 0x64, 0xde, 0xd2, 0x8f, 0x9c, 0x43, 0x02, 0x4f, 0x9b, 0xcb, 0xc7, 0xdc, + 0x03, 0x3a, 0x76, 0x46, 0x6f, 0xe6, 0x07, 0x47, +}; +static const unsigned char kat2330_addinreseed[] = { + 0x1a, 0x7a, 0x24, 0x5c, 0xe2, 0xb8, 0xb0, 0x0a, 0x57, 0x62, 0x9c, 0xab, + 0x9d, 0xae, 0xaa, 0xe8, 0xa2, 0xe3, 0x15, 0x90, 0xbc, 0x3f, 0xd3, 0xba, + 0x18, 0x38, 0xdf, 0x54, 0xce, 0x01, 0x9a, 0x29, +}; +static const unsigned char kat2330_addin0[] = { + 0xb5, 0xf1, 0x90, 0xc9, 0x89, 0x13, 0xc0, 0x07, 0xd4, 0x1a, 0x31, 0x0f, + 0x45, 0xec, 0xb9, 0xf6, 0x70, 0xac, 0x05, 0x84, 0x58, 0xec, 0x02, 0xab, + 0x5a, 0xc5, 0x62, 0xf7, 0x94, 0x84, 0x50, 0xef, +}; +static const unsigned char kat2330_addin1[] = { + 0x88, 0x38, 0x19, 0x87, 0xd3, 0xba, 0xd5, 0x83, 0xe0, 0x8d, 0xb2, 0x84, + 0x7a, 0x6e, 0x87, 0x72, 0x79, 0xc5, 0x1f, 0xa3, 0xb1, 0xa7, 0xe1, 0xa9, + 0xe8, 0x59, 0xe2, 0xc4, 0xf4, 0x23, 0xec, 0x21, +}; +static const unsigned char kat2330_retbits[] = { + 0xff, 0xf0, 0x4b, 0xe4, 0xaf, 0x79, 0x1a, 0xdf, 0x61, 0xfa, 0xef, 0xe2, + 0xbb, 0x71, 0x45, 0xfe, 0x2f, 0x02, 0x38, 0xde, 0x8a, 0xdd, 0x47, 0x3f, + 0x7f, 0xcc, 0x7f, 0x9d, 0x82, 0x03, 0x94, 0xf7, 0xe0, 0xee, 0x92, 0xd1, + 0x78, 0x07, 0x58, 0x6c, 0xde, 0x4b, 0x11, 0xa5, 0x09, 0x68, 0xb0, 0xef, + 0x7a, 0x11, 0xdb, 0x1e, 0xe3, 0x57, 0xcc, 0xcc, 0xed, 0x69, 0xb1, 0xc4, + 0xb0, 0x1e, 0xcd, 0x53, +}; +static const struct drbg_kat_pr_false kat2330_t = { + 4, kat2330_entropyin, kat2330_nonce, kat2330_persstr, + kat2330_entropyinreseed, kat2330_addinreseed, kat2330_addin0, + kat2330_addin1, kat2330_retbits +}; +static const struct drbg_kat kat2330 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2330_t +}; + +static const unsigned char kat2331_entropyin[] = { + 0x0e, 0x1a, 0x74, 0x9c, 0xdf, 0x38, 0x55, 0xff, 0x8c, 0xa6, 0x51, 0x09, + 0xb5, 0xc4, 0x1c, 0x51, 0x9f, 0xa7, 0x49, 0x34, 0x32, 0xd6, 0xbb, 0xc1, + 0xf2, 0xfc, 0x08, 0x57, 0x53, 0xa4, 0xf3, 0x0d, +}; +static const unsigned char kat2331_nonce[] = {0}; +static const unsigned char kat2331_persstr[] = { + 0x14, 0xbc, 0xa9, 0x3c, 0xe8, 0xec, 0x94, 0x26, 0xa1, 0x6a, 0x75, 0x95, + 0xdc, 0xf0, 0xba, 0x0c, 0x69, 0xc7, 0xfd, 0x76, 0xa7, 0x5a, 0x1c, 0xa8, + 0x65, 0xf5, 0x3a, 0xd2, 0xfa, 0xbb, 0x3f, 0xdd, +}; +static const unsigned char kat2331_entropyinreseed[] = { + 0x77, 0xbd, 0xbe, 0x9f, 0xf4, 0x08, 0xea, 0xe5, 0x53, 0x55, 0xeb, 0xaa, + 0xf4, 0x77, 0x9b, 0xdd, 0x53, 0x39, 0x71, 0xeb, 0xd5, 0x9b, 0x9b, 0x7d, + 0xb5, 0xee, 0xc1, 0x7a, 0xa4, 0x07, 0x8f, 0xae, +}; +static const unsigned char kat2331_addinreseed[] = { + 0x1d, 0x89, 0xcb, 0xd3, 0x23, 0x9f, 0x8f, 0x6a, 0x0f, 0x20, 0xc1, 0xc1, + 0x37, 0x22, 0xcc, 0xf1, 0xd5, 0xac, 0x10, 0xb6, 0x36, 0x26, 0x76, 0x70, + 0xb4, 0x76, 0x2e, 0x0d, 0xcf, 0x95, 0x99, 0xeb, +}; +static const unsigned char kat2331_addin0[] = { + 0x6c, 0xa4, 0xa4, 0xc5, 0x57, 0x4e, 0x96, 0xa1, 0x2a, 0xc7, 0x40, 0x15, + 0x6d, 0x74, 0xab, 0x5e, 0xf4, 0x7c, 0x87, 0xad, 0xdf, 0xe7, 0x93, 0xa9, + 0x7a, 0x56, 0x32, 0x41, 0x77, 0x0a, 0xc0, 0xab, +}; +static const unsigned char kat2331_addin1[] = { + 0x92, 0x6c, 0x37, 0x67, 0xdd, 0x1e, 0x75, 0xad, 0x60, 0xef, 0x12, 0xdf, + 0xdf, 0xdd, 0xd4, 0x76, 0x38, 0xac, 0x68, 0x25, 0x48, 0x76, 0x4b, 0xe2, + 0x57, 0x61, 0x8c, 0xe1, 0x57, 0x83, 0x4a, 0x52, +}; +static const unsigned char kat2331_retbits[] = { + 0x71, 0x40, 0xe4, 0x69, 0x8c, 0xcc, 0x78, 0x9d, 0x8a, 0x91, 0x32, 0x4f, + 0xe3, 0x35, 0x59, 0x49, 0x93, 0x0d, 0x00, 0xa7, 0xe5, 0x82, 0x59, 0x51, + 0x10, 0x54, 0x7f, 0x3e, 0x28, 0x4a, 0x2c, 0x08, 0x7e, 0xc3, 0x27, 0x51, + 0x85, 0x2b, 0x82, 0x26, 0x29, 0x4c, 0xf1, 0xd1, 0xa0, 0x48, 0xfd, 0x94, + 0x80, 0xd4, 0xe5, 0x29, 0xe0, 0xba, 0x17, 0x81, 0xd4, 0xb1, 0x21, 0x20, + 0xd4, 0x44, 0x8d, 0x19, +}; +static const struct drbg_kat_pr_false kat2331_t = { + 5, kat2331_entropyin, kat2331_nonce, kat2331_persstr, + kat2331_entropyinreseed, kat2331_addinreseed, kat2331_addin0, + kat2331_addin1, kat2331_retbits +}; +static const struct drbg_kat kat2331 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2331_t +}; + +static const unsigned char kat2332_entropyin[] = { + 0xf5, 0x5d, 0xd2, 0x9a, 0xa4, 0x87, 0xd8, 0x83, 0x93, 0x5a, 0x66, 0xd4, + 0xab, 0xa2, 0x4b, 0xf1, 0x17, 0x17, 0x46, 0xaa, 0x68, 0x30, 0xb6, 0xc1, + 0x02, 0xa0, 0x39, 0x35, 0x4c, 0x69, 0x04, 0x8c, +}; +static const unsigned char kat2332_nonce[] = {0}; +static const unsigned char kat2332_persstr[] = { + 0x55, 0x6e, 0xc2, 0x42, 0xe5, 0x52, 0x64, 0x3f, 0x3b, 0xba, 0xce, 0x99, + 0x95, 0x2e, 0x5e, 0x2f, 0x12, 0x3e, 0x5b, 0x55, 0xa7, 0xfd, 0xe5, 0xc7, + 0x50, 0x75, 0x05, 0x0c, 0x68, 0x92, 0x50, 0xcd, +}; +static const unsigned char kat2332_entropyinreseed[] = { + 0xec, 0x61, 0xbf, 0xb0, 0x7f, 0xe2, 0xd3, 0x0b, 0x8f, 0x7b, 0xf9, 0xe3, + 0x9c, 0x7b, 0xeb, 0x0d, 0xe9, 0x67, 0x19, 0x32, 0x26, 0x4f, 0xc8, 0x17, + 0xa4, 0x24, 0x9f, 0x84, 0x8c, 0x64, 0x1d, 0x40, +}; +static const unsigned char kat2332_addinreseed[] = { + 0x16, 0xf6, 0x93, 0xdb, 0x60, 0x24, 0xb7, 0x0f, 0x0c, 0x99, 0x55, 0x41, + 0x6c, 0xfe, 0xb0, 0x7a, 0xbe, 0x41, 0x1f, 0x64, 0xfe, 0x67, 0x04, 0x95, + 0xe6, 0x56, 0x99, 0x87, 0x9c, 0x1d, 0x75, 0x1b, +}; +static const unsigned char kat2332_addin0[] = { + 0xf6, 0x77, 0x5b, 0x3d, 0x13, 0x77, 0xe8, 0xf0, 0x16, 0xa4, 0x4b, 0xbd, + 0x53, 0xdf, 0xb7, 0xc5, 0x4b, 0x20, 0x0f, 0x19, 0xa4, 0x06, 0xbb, 0xf4, + 0x6c, 0xf0, 0x19, 0x67, 0x2b, 0xb1, 0x00, 0xb5, +}; +static const unsigned char kat2332_addin1[] = { + 0x00, 0x94, 0x1d, 0xc2, 0xcd, 0x41, 0xca, 0xf0, 0x81, 0x81, 0x3b, 0x44, + 0x0f, 0xd9, 0x0c, 0x0d, 0x1f, 0xbb, 0xe6, 0x71, 0xb8, 0x51, 0xb7, 0xe7, + 0x47, 0xdf, 0x89, 0x87, 0x8d, 0xf5, 0x61, 0x1e, +}; +static const unsigned char kat2332_retbits[] = { + 0xdf, 0xd9, 0x19, 0x0e, 0xd3, 0x22, 0xa8, 0x4a, 0xa3, 0x0b, 0xff, 0x07, + 0xdb, 0x07, 0xb7, 0x85, 0xd6, 0x63, 0x3c, 0x39, 0xf8, 0xef, 0x12, 0xfa, + 0xe0, 0xe2, 0xa4, 0x5b, 0xc3, 0x8e, 0xc1, 0x09, 0x84, 0xa8, 0x6d, 0x39, + 0xe9, 0x6f, 0x81, 0xfd, 0x7d, 0xda, 0x32, 0x31, 0x22, 0xc6, 0xa2, 0xf8, + 0xb5, 0xff, 0x1d, 0xd0, 0xc9, 0x5c, 0x8b, 0x92, 0xa0, 0x86, 0xa8, 0xed, + 0x79, 0xfe, 0x90, 0x0b, +}; +static const struct drbg_kat_pr_false kat2332_t = { + 6, kat2332_entropyin, kat2332_nonce, kat2332_persstr, + kat2332_entropyinreseed, kat2332_addinreseed, kat2332_addin0, + kat2332_addin1, kat2332_retbits +}; +static const struct drbg_kat kat2332 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2332_t +}; + +static const unsigned char kat2333_entropyin[] = { + 0x76, 0x82, 0x73, 0xda, 0xe7, 0x88, 0x82, 0x9e, 0xe9, 0xd1, 0xc0, 0xb4, + 0xa5, 0x87, 0x1d, 0x87, 0x8a, 0x77, 0x06, 0x09, 0x25, 0x85, 0x1d, 0xef, + 0x18, 0x95, 0x22, 0x50, 0x91, 0x1d, 0x59, 0xf3, +}; +static const unsigned char kat2333_nonce[] = {0}; +static const unsigned char kat2333_persstr[] = { + 0x5b, 0x9f, 0x96, 0x8d, 0xf5, 0xd2, 0x97, 0xa1, 0x86, 0x3d, 0x57, 0xc8, + 0xe1, 0x22, 0xa0, 0xac, 0xb2, 0x3d, 0x4d, 0x53, 0xef, 0x8c, 0x46, 0x50, + 0x46, 0x32, 0x30, 0x82, 0x07, 0x5d, 0xe4, 0xc6, +}; +static const unsigned char kat2333_entropyinreseed[] = { + 0xfe, 0x47, 0xc7, 0xea, 0x3c, 0x95, 0xd1, 0x20, 0x61, 0x3a, 0x57, 0x84, + 0x61, 0x6b, 0x68, 0xae, 0x25, 0x30, 0xfa, 0xd5, 0xdc, 0x16, 0x04, 0x19, + 0xde, 0xed, 0x6e, 0x3d, 0xc9, 0xa1, 0xbf, 0xe1, +}; +static const unsigned char kat2333_addinreseed[] = { + 0xaf, 0x65, 0xc7, 0x9e, 0xb9, 0xa5, 0xf8, 0x6a, 0xf7, 0xc0, 0x96, 0x0d, + 0x59, 0x18, 0xdc, 0xa9, 0x5d, 0x0c, 0x57, 0x38, 0xf5, 0x17, 0x4b, 0xa9, + 0x11, 0x04, 0x3e, 0x32, 0x8d, 0x04, 0x3d, 0x62, +}; +static const unsigned char kat2333_addin0[] = { + 0xcf, 0xbc, 0xb2, 0x09, 0xa5, 0xbd, 0x18, 0xbd, 0x07, 0x22, 0x53, 0x58, + 0xd0, 0xc3, 0xc1, 0x03, 0x6a, 0x2b, 0x20, 0xd2, 0xe7, 0x15, 0xbc, 0xd4, + 0x26, 0x46, 0xd9, 0x72, 0xfc, 0x28, 0x84, 0xac, +}; +static const unsigned char kat2333_addin1[] = { + 0xba, 0xfb, 0xe8, 0x2a, 0x93, 0x5e, 0xd0, 0x3c, 0x82, 0x8f, 0x55, 0xfe, + 0xa7, 0x54, 0x1f, 0xcd, 0x36, 0xde, 0x29, 0xe7, 0xdc, 0xa1, 0x05, 0xd0, + 0x95, 0x85, 0x51, 0x6d, 0x9b, 0xf9, 0x17, 0x31, +}; +static const unsigned char kat2333_retbits[] = { + 0x20, 0xba, 0x45, 0x46, 0xcf, 0xd5, 0x02, 0x77, 0x16, 0x32, 0x13, 0x3b, + 0xf9, 0xfb, 0x59, 0xa5, 0xe1, 0x3d, 0xb5, 0xd2, 0xf4, 0xd0, 0xb3, 0x77, + 0x7e, 0x11, 0x41, 0xec, 0xf4, 0x10, 0xaf, 0xf1, 0xb4, 0x34, 0x7a, 0x29, + 0xbc, 0xc2, 0xd6, 0x8a, 0xd4, 0x63, 0x29, 0x1c, 0x9f, 0x49, 0x9a, 0x06, + 0xed, 0x0b, 0x79, 0x51, 0xbd, 0x41, 0x1e, 0x92, 0xe1, 0xb9, 0xce, 0x40, + 0x3b, 0xd0, 0x6c, 0x5d, +}; +static const struct drbg_kat_pr_false kat2333_t = { + 7, kat2333_entropyin, kat2333_nonce, kat2333_persstr, + kat2333_entropyinreseed, kat2333_addinreseed, kat2333_addin0, + kat2333_addin1, kat2333_retbits +}; +static const struct drbg_kat kat2333 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2333_t +}; + +static const unsigned char kat2334_entropyin[] = { + 0x33, 0x63, 0x6a, 0x4d, 0xcb, 0x87, 0xc5, 0x01, 0xa9, 0x9f, 0x11, 0x9d, + 0x96, 0x8a, 0x31, 0x82, 0xf6, 0x78, 0x6b, 0x3d, 0x23, 0xca, 0xdb, 0xd5, + 0x0c, 0xee, 0xdf, 0x9c, 0x9d, 0xc8, 0xda, 0x84, +}; +static const unsigned char kat2334_nonce[] = {0}; +static const unsigned char kat2334_persstr[] = { + 0xf5, 0x90, 0xea, 0xf7, 0x33, 0x19, 0xec, 0x9e, 0x90, 0x7f, 0x97, 0x25, + 0xb5, 0x1a, 0x16, 0x6f, 0xe8, 0xa8, 0xdc, 0x6d, 0x23, 0x84, 0xee, 0x72, + 0xbf, 0x7f, 0x55, 0xf8, 0x37, 0x8c, 0x29, 0xe8, +}; +static const unsigned char kat2334_entropyinreseed[] = { + 0xf9, 0xa6, 0xa6, 0x3c, 0xf9, 0x41, 0x49, 0xb8, 0x5f, 0x89, 0x2c, 0x8c, + 0x59, 0xfe, 0x20, 0xe7, 0x80, 0x84, 0xc2, 0x81, 0x13, 0x16, 0xb3, 0xd9, + 0x43, 0x21, 0x9d, 0x2c, 0xe1, 0x16, 0x32, 0xe5, +}; +static const unsigned char kat2334_addinreseed[] = { + 0xda, 0xdd, 0x67, 0xa3, 0xfe, 0x25, 0x5f, 0x48, 0x8f, 0xdc, 0xe4, 0x1b, + 0x28, 0xbf, 0x74, 0xcc, 0xd6, 0xbf, 0x49, 0xa7, 0xf8, 0x5d, 0x52, 0x88, + 0x75, 0xbc, 0x5e, 0x6b, 0xe5, 0x59, 0xd4, 0x13, +}; +static const unsigned char kat2334_addin0[] = { + 0x33, 0xd6, 0x34, 0xce, 0xe0, 0x45, 0x45, 0x3b, 0x13, 0xe1, 0xb1, 0x89, + 0x35, 0x5c, 0x0c, 0x99, 0x39, 0x67, 0x80, 0x51, 0x69, 0xbe, 0xf7, 0x2b, + 0xe5, 0x07, 0x37, 0xe3, 0x22, 0xf6, 0x7c, 0xc4, +}; +static const unsigned char kat2334_addin1[] = { + 0x4e, 0x52, 0x8a, 0x71, 0x93, 0x01, 0x6c, 0x54, 0xa0, 0xb1, 0x04, 0x1c, + 0xf2, 0x6c, 0xbc, 0xe9, 0x63, 0x64, 0x34, 0x81, 0x99, 0x8e, 0xa1, 0xf8, + 0x84, 0xb4, 0x63, 0x37, 0x23, 0x58, 0xe5, 0xb2, +}; +static const unsigned char kat2334_retbits[] = { + 0xc0, 0x07, 0x07, 0xab, 0x14, 0x72, 0xcf, 0xc3, 0xee, 0x0a, 0xed, 0x1b, + 0x8d, 0x86, 0x6b, 0x90, 0x9c, 0x15, 0x8b, 0x27, 0x20, 0x52, 0xa7, 0x5f, + 0x9f, 0xa9, 0x6e, 0x24, 0x8f, 0xd4, 0x54, 0x49, 0x00, 0x7d, 0x03, 0xf0, + 0xe1, 0x4d, 0x2e, 0x5d, 0x54, 0x4c, 0x37, 0x96, 0x26, 0x16, 0x59, 0xe3, + 0x07, 0x2e, 0x7c, 0x09, 0x58, 0x36, 0x52, 0xe4, 0xbc, 0x5b, 0xd7, 0xd9, + 0xb8, 0xac, 0xc1, 0xbd, +}; +static const struct drbg_kat_pr_false kat2334_t = { + 8, kat2334_entropyin, kat2334_nonce, kat2334_persstr, + kat2334_entropyinreseed, kat2334_addinreseed, kat2334_addin0, + kat2334_addin1, kat2334_retbits +}; +static const struct drbg_kat kat2334 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2334_t +}; + +static const unsigned char kat2335_entropyin[] = { + 0x5e, 0x0c, 0xe9, 0xdb, 0x9e, 0x51, 0x97, 0xc9, 0x39, 0xbb, 0x85, 0x7b, + 0x6d, 0xb4, 0x96, 0xc2, 0x3f, 0x3f, 0x4f, 0xf4, 0x1c, 0x27, 0xae, 0x9d, + 0x9d, 0x91, 0x0b, 0xa2, 0x9d, 0x77, 0xee, 0x81, +}; +static const unsigned char kat2335_nonce[] = {0}; +static const unsigned char kat2335_persstr[] = { + 0x01, 0x90, 0xe7, 0xae, 0x55, 0x1e, 0x04, 0xb6, 0x86, 0xe7, 0xec, 0x5f, + 0xe9, 0x5d, 0xbd, 0xee, 0x68, 0xea, 0xbb, 0x5b, 0x53, 0xba, 0x9a, 0x66, + 0x31, 0x6c, 0x11, 0x1e, 0x8b, 0xc9, 0xbb, 0xf6, +}; +static const unsigned char kat2335_entropyinreseed[] = { + 0x01, 0x6a, 0x84, 0xa1, 0x3a, 0xa8, 0xe0, 0x1d, 0x86, 0x04, 0x96, 0x4e, + 0xdd, 0x7f, 0xcf, 0x5f, 0xcd, 0x19, 0xd6, 0xe3, 0xb1, 0x76, 0x3a, 0x19, + 0x51, 0x8e, 0xd1, 0xe9, 0x6d, 0x32, 0xd9, 0xd0, +}; +static const unsigned char kat2335_addinreseed[] = { + 0x96, 0x24, 0x5e, 0x8d, 0x1f, 0x8f, 0xe0, 0x68, 0xa7, 0x4b, 0x48, 0xa4, + 0x74, 0x37, 0xb3, 0xcd, 0x02, 0xb9, 0x45, 0x05, 0xcd, 0xcc, 0x7e, 0x5a, + 0x67, 0x79, 0xdd, 0xfc, 0x82, 0xee, 0xe4, 0x16, +}; +static const unsigned char kat2335_addin0[] = { + 0x09, 0x2b, 0x6e, 0x51, 0x72, 0x7f, 0x4b, 0x8d, 0x14, 0x3c, 0x5a, 0x67, + 0x07, 0x44, 0x97, 0xa6, 0x38, 0xe9, 0x64, 0xa6, 0x0a, 0x91, 0x61, 0xfb, + 0x89, 0xd9, 0xe2, 0xd3, 0x58, 0x3e, 0xce, 0x4f, +}; +static const unsigned char kat2335_addin1[] = { + 0x9a, 0x86, 0x96, 0x87, 0x73, 0x0e, 0x0a, 0x99, 0xd0, 0xbd, 0xe4, 0x0c, + 0x96, 0xa3, 0x64, 0x85, 0x24, 0xd3, 0x5f, 0xf2, 0xf7, 0xe5, 0x6b, 0x4c, + 0xcb, 0xd6, 0xf4, 0xbc, 0x68, 0x60, 0x0e, 0xeb, +}; +static const unsigned char kat2335_retbits[] = { + 0x8f, 0x4c, 0xcc, 0x87, 0x34, 0x98, 0x5d, 0xd7, 0xd8, 0x4e, 0xe9, 0xee, + 0x14, 0xc5, 0x22, 0x3f, 0xba, 0x16, 0x27, 0x6f, 0x44, 0x55, 0x83, 0x2c, + 0xb1, 0x0f, 0x84, 0xe4, 0xa5, 0x6f, 0x7d, 0x32, 0x85, 0x39, 0xf3, 0xa3, + 0xf7, 0x17, 0x0c, 0x84, 0x68, 0xa4, 0x34, 0xf0, 0x06, 0xf3, 0x74, 0xfc, + 0xf6, 0xde, 0xc2, 0x71, 0xa9, 0xb4, 0x82, 0x70, 0x3b, 0x25, 0x66, 0x3e, + 0xdc, 0x33, 0xe1, 0x13, +}; +static const struct drbg_kat_pr_false kat2335_t = { + 9, kat2335_entropyin, kat2335_nonce, kat2335_persstr, + kat2335_entropyinreseed, kat2335_addinreseed, kat2335_addin0, + kat2335_addin1, kat2335_retbits +}; +static const struct drbg_kat kat2335 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2335_t +}; + +static const unsigned char kat2336_entropyin[] = { + 0xac, 0x96, 0x56, 0x7a, 0x9b, 0xbb, 0x67, 0x6e, 0x07, 0x46, 0x1a, 0x1e, + 0x50, 0xf6, 0x5d, 0xf7, 0x3d, 0x3b, 0xa7, 0x03, 0xb5, 0xee, 0x0f, 0x10, + 0x5b, 0x03, 0xf2, 0xf9, 0x21, 0x3b, 0xde, 0x26, +}; +static const unsigned char kat2336_nonce[] = {0}; +static const unsigned char kat2336_persstr[] = { + 0xf2, 0x82, 0x1d, 0x6b, 0x19, 0xa1, 0x8d, 0x9b, 0x95, 0xb3, 0x7f, 0x9e, + 0xb4, 0x76, 0xeb, 0x12, 0xfa, 0x77, 0xfd, 0xe7, 0x31, 0xb8, 0xd7, 0xf7, + 0xe7, 0x26, 0x52, 0x08, 0xf2, 0xd2, 0x04, 0x8a, +}; +static const unsigned char kat2336_entropyinreseed[] = { + 0x74, 0xd5, 0xdb, 0xa9, 0x95, 0x7d, 0xc7, 0x40, 0xaf, 0xa0, 0x19, 0x93, + 0x57, 0x5f, 0xa9, 0xbe, 0x6b, 0xbd, 0x89, 0x2e, 0x25, 0x20, 0x47, 0xad, + 0x07, 0x2f, 0x51, 0x39, 0x6b, 0xef, 0xd5, 0x8f, +}; +static const unsigned char kat2336_addinreseed[] = { + 0x9c, 0x2e, 0x8b, 0xd6, 0x34, 0xf2, 0x8c, 0x81, 0x39, 0x0e, 0x01, 0x54, + 0xeb, 0xf8, 0x9e, 0xeb, 0xb6, 0x1a, 0x8f, 0x42, 0xb3, 0x15, 0x6e, 0xa5, + 0x68, 0x63, 0x98, 0xab, 0x0b, 0xbc, 0xa8, 0x1c, +}; +static const unsigned char kat2336_addin0[] = { + 0x9b, 0xd8, 0x1c, 0xb7, 0x96, 0x71, 0xa3, 0xd8, 0x9e, 0x05, 0x0f, 0x1f, + 0x4c, 0x0e, 0x7d, 0xfd, 0xcf, 0xc1, 0xe2, 0xbd, 0x47, 0xd1, 0x9a, 0xd7, + 0xd7, 0xfd, 0xcb, 0x2b, 0x14, 0x36, 0xa8, 0xd4, +}; +static const unsigned char kat2336_addin1[] = { + 0x93, 0xb5, 0xad, 0x9a, 0x6c, 0x08, 0xd3, 0xb7, 0x89, 0xf0, 0x9e, 0x9a, + 0x56, 0x7a, 0x22, 0x7f, 0x94, 0xf4, 0x53, 0x76, 0xf6, 0x8c, 0x82, 0xe7, + 0x5e, 0x80, 0x4a, 0x78, 0xf6, 0x75, 0xfe, 0x32, +}; +static const unsigned char kat2336_retbits[] = { + 0xd3, 0x1d, 0x8e, 0x04, 0xa4, 0xc1, 0x2a, 0xba, 0xcd, 0x44, 0x57, 0xfa, + 0x45, 0x50, 0x4e, 0x9d, 0x7e, 0x53, 0xe9, 0x6f, 0x72, 0xce, 0x43, 0x2b, + 0xe5, 0x61, 0x6b, 0x39, 0x83, 0xa1, 0x3b, 0x3b, 0xd2, 0xbe, 0xc2, 0xdf, + 0x3d, 0x1a, 0x41, 0xbe, 0xf2, 0x98, 0xe9, 0xd8, 0x21, 0x20, 0x73, 0x59, + 0xa5, 0x01, 0xea, 0x90, 0x4b, 0xa2, 0xca, 0xd9, 0x48, 0xe1, 0x12, 0x06, + 0x4c, 0x4a, 0x80, 0x18, +}; +static const struct drbg_kat_pr_false kat2336_t = { + 10, kat2336_entropyin, kat2336_nonce, kat2336_persstr, + kat2336_entropyinreseed, kat2336_addinreseed, kat2336_addin0, + kat2336_addin1, kat2336_retbits +}; +static const struct drbg_kat kat2336 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2336_t +}; + +static const unsigned char kat2337_entropyin[] = { + 0x5e, 0x9b, 0xe4, 0x3d, 0x43, 0xae, 0xef, 0xf1, 0x9a, 0x56, 0x74, 0x0a, + 0xd9, 0x5d, 0xcd, 0x3c, 0xd4, 0x32, 0x6a, 0xaf, 0xe0, 0xfb, 0x4a, 0x16, + 0x09, 0x44, 0xf7, 0xd7, 0x99, 0x83, 0x79, 0x5e, +}; +static const unsigned char kat2337_nonce[] = {0}; +static const unsigned char kat2337_persstr[] = { + 0xe5, 0x6d, 0x54, 0x50, 0xd6, 0xd0, 0xd3, 0xbd, 0x45, 0x2a, 0xff, 0xce, + 0x74, 0x3c, 0x42, 0x15, 0x4a, 0x4a, 0x03, 0x24, 0xd7, 0x96, 0x57, 0x0f, + 0x57, 0x4e, 0x28, 0x48, 0x7a, 0xf4, 0x3f, 0xdf, +}; +static const unsigned char kat2337_entropyinreseed[] = { + 0x1c, 0x45, 0xcd, 0xf5, 0x5a, 0xaa, 0x02, 0x76, 0x53, 0xb2, 0xe3, 0x3b, + 0x77, 0x62, 0xf6, 0x8d, 0x29, 0xb5, 0xe3, 0x48, 0xfe, 0xea, 0x04, 0xc5, + 0x96, 0xf7, 0xc8, 0x66, 0x0f, 0x7b, 0x36, 0xa6, +}; +static const unsigned char kat2337_addinreseed[] = { + 0xf5, 0x7c, 0x21, 0xbc, 0x4a, 0x2a, 0x37, 0xf5, 0xac, 0xe9, 0xc6, 0x19, + 0x2c, 0xb2, 0x49, 0xa8, 0xff, 0x16, 0xe3, 0xe0, 0x61, 0x1f, 0x03, 0x0c, + 0x97, 0xd1, 0x3e, 0x73, 0x0d, 0x84, 0xed, 0xd7, +}; +static const unsigned char kat2337_addin0[] = { + 0xe5, 0xeb, 0x67, 0x78, 0xc2, 0xbb, 0xab, 0x07, 0x7d, 0x1f, 0xc0, 0xf4, + 0x2a, 0x42, 0xe4, 0x63, 0xec, 0xf0, 0x6d, 0x2a, 0xd6, 0x04, 0xb5, 0xa6, + 0x3e, 0x1e, 0xbc, 0x92, 0xd0, 0xe2, 0xdf, 0x75, +}; +static const unsigned char kat2337_addin1[] = { + 0xa4, 0x1d, 0x73, 0x24, 0xb7, 0xba, 0x5c, 0x9d, 0x09, 0x8d, 0xbd, 0xa8, + 0x9c, 0x25, 0xa2, 0x37, 0xb0, 0x32, 0xcb, 0xb3, 0x08, 0x4a, 0x68, 0x7b, + 0x7e, 0x2c, 0x33, 0x30, 0xcc, 0x09, 0xe5, 0xa2, +}; +static const unsigned char kat2337_retbits[] = { + 0x29, 0x5e, 0x75, 0x0d, 0x3b, 0x11, 0xd4, 0xfb, 0x01, 0x8c, 0x3d, 0xe8, + 0xe4, 0x9a, 0x24, 0x05, 0xc7, 0x1c, 0x30, 0x58, 0xf1, 0x01, 0x05, 0x5d, + 0x36, 0xef, 0xc5, 0xd4, 0xc5, 0x18, 0x3b, 0x32, 0x77, 0xd9, 0x8f, 0x0a, + 0xab, 0x8b, 0x4d, 0x3b, 0x0b, 0x9d, 0xd9, 0x9a, 0xbc, 0xfb, 0x95, 0xbc, + 0xb3, 0x50, 0x6a, 0xd1, 0xda, 0x44, 0x2c, 0x39, 0xda, 0xc9, 0xa1, 0x3f, + 0x1b, 0xbc, 0x15, 0xfe, +}; +static const struct drbg_kat_pr_false kat2337_t = { + 11, kat2337_entropyin, kat2337_nonce, kat2337_persstr, + kat2337_entropyinreseed, kat2337_addinreseed, kat2337_addin0, + kat2337_addin1, kat2337_retbits +}; +static const struct drbg_kat kat2337 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2337_t +}; + +static const unsigned char kat2338_entropyin[] = { + 0x47, 0x8d, 0x32, 0x5a, 0x9d, 0xcc, 0xd8, 0x7e, 0x74, 0x7d, 0x49, 0x64, + 0x32, 0x9f, 0x25, 0x7b, 0x7c, 0x3f, 0x58, 0x9d, 0x91, 0x78, 0x36, 0x7d, + 0xc4, 0xc2, 0x7a, 0xdf, 0x29, 0x59, 0xb3, 0x94, +}; +static const unsigned char kat2338_nonce[] = {0}; +static const unsigned char kat2338_persstr[] = { + 0x68, 0x3d, 0x80, 0xba, 0xbc, 0x93, 0xb6, 0x98, 0x0b, 0xfc, 0x22, 0x8f, + 0xae, 0x25, 0xac, 0x1f, 0x2d, 0xd6, 0xed, 0xb7, 0xb1, 0x9e, 0xe5, 0x35, + 0x9a, 0x62, 0x46, 0x4a, 0xec, 0xe4, 0xe5, 0x53, +}; +static const unsigned char kat2338_entropyinreseed[] = { + 0x6e, 0x85, 0xc1, 0x83, 0x73, 0x8f, 0x60, 0x99, 0x2c, 0xa5, 0x9e, 0xf3, + 0x73, 0x62, 0x40, 0xca, 0x36, 0xca, 0x87, 0x91, 0x34, 0x96, 0x64, 0x18, + 0x4e, 0x5d, 0xfa, 0x8d, 0xcc, 0x8c, 0x0b, 0x0f, +}; +static const unsigned char kat2338_addinreseed[] = { + 0x53, 0xa5, 0x43, 0x24, 0xb5, 0x7b, 0x20, 0x40, 0xb9, 0x39, 0xc1, 0x49, + 0x30, 0x8e, 0xd2, 0xff, 0x39, 0xf5, 0xdc, 0xa6, 0x19, 0xa7, 0x38, 0xb0, + 0x00, 0xf8, 0xe3, 0x56, 0x18, 0x29, 0x13, 0x61, +}; +static const unsigned char kat2338_addin0[] = { + 0x2a, 0xd2, 0x3c, 0x2e, 0x67, 0x3e, 0x0b, 0x45, 0x49, 0x60, 0x27, 0x4b, + 0x43, 0x4f, 0xe5, 0xfd, 0xae, 0xf8, 0x71, 0xd0, 0x85, 0x63, 0x4b, 0xab, + 0xcb, 0xad, 0x0f, 0x5b, 0x03, 0x71, 0x04, 0x2c, +}; +static const unsigned char kat2338_addin1[] = { + 0xcc, 0x8b, 0x6b, 0x86, 0xc6, 0x2e, 0xb3, 0x19, 0x9c, 0x49, 0x21, 0x90, + 0x65, 0x57, 0x25, 0x88, 0x03, 0x50, 0xac, 0xc8, 0x25, 0x37, 0x69, 0xb5, + 0x26, 0xb7, 0x19, 0x14, 0x0e, 0x44, 0x80, 0x84, +}; +static const unsigned char kat2338_retbits[] = { + 0x35, 0x42, 0xc6, 0x19, 0xf1, 0x4e, 0x23, 0x92, 0xd9, 0x2f, 0x0b, 0x75, + 0x97, 0xd7, 0xd0, 0x31, 0xda, 0x62, 0xbc, 0x28, 0x37, 0x3f, 0xbf, 0x9f, + 0x07, 0x47, 0xe9, 0x7f, 0x73, 0x92, 0x49, 0x35, 0x57, 0x21, 0x47, 0x6c, + 0xbc, 0xa5, 0xbe, 0x8e, 0xbd, 0xb4, 0xe9, 0xe5, 0x68, 0xd8, 0x63, 0xf3, + 0xb2, 0xd6, 0xba, 0x1f, 0xc2, 0x3d, 0x35, 0x97, 0x37, 0xa9, 0x2a, 0x1b, + 0xdd, 0x9e, 0x5a, 0x6a, +}; +static const struct drbg_kat_pr_false kat2338_t = { + 12, kat2338_entropyin, kat2338_nonce, kat2338_persstr, + kat2338_entropyinreseed, kat2338_addinreseed, kat2338_addin0, + kat2338_addin1, kat2338_retbits +}; +static const struct drbg_kat kat2338 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2338_t +}; + +static const unsigned char kat2339_entropyin[] = { + 0x67, 0xfe, 0xc7, 0x72, 0x18, 0x49, 0x94, 0x15, 0xaa, 0x7d, 0xe0, 0xa1, + 0xbe, 0x22, 0x15, 0x89, 0xb5, 0x13, 0xfd, 0x8c, 0x57, 0x8d, 0x6d, 0xb9, + 0xd4, 0x8f, 0xf8, 0x55, 0xb0, 0xaa, 0x1a, 0x22, +}; +static const unsigned char kat2339_nonce[] = {0}; +static const unsigned char kat2339_persstr[] = { + 0x98, 0x9a, 0xf8, 0x2f, 0x6f, 0x41, 0xfb, 0x5e, 0xa5, 0x14, 0x1f, 0xef, + 0x7d, 0x89, 0xcf, 0xee, 0x1b, 0x5c, 0x3c, 0x6b, 0x9d, 0x41, 0x05, 0xdc, + 0xdc, 0xc9, 0xa8, 0xf1, 0x03, 0xda, 0xdf, 0xfa, +}; +static const unsigned char kat2339_entropyinreseed[] = { + 0xd9, 0x7d, 0xcf, 0x93, 0x28, 0x5f, 0x4b, 0x67, 0xdb, 0x6d, 0x7d, 0x5f, + 0xaa, 0xf2, 0xd4, 0xb0, 0xf9, 0xad, 0x66, 0x0d, 0xbd, 0x26, 0x0d, 0xb7, + 0xc4, 0xd3, 0xc3, 0xc3, 0xd3, 0xa5, 0x9a, 0x19, +}; +static const unsigned char kat2339_addinreseed[] = { + 0x82, 0x62, 0x3e, 0xdc, 0x25, 0x03, 0x97, 0x08, 0x32, 0xd9, 0x56, 0x6e, + 0xb3, 0x42, 0xe1, 0xdb, 0x9b, 0x8a, 0x0a, 0x2f, 0xdf, 0x84, 0x7f, 0x21, + 0xe3, 0x83, 0x13, 0xb2, 0xb9, 0xef, 0x84, 0x32, +}; +static const unsigned char kat2339_addin0[] = { + 0x4e, 0xc1, 0x9e, 0xb0, 0x00, 0x95, 0x43, 0x9d, 0x87, 0x8b, 0xdc, 0x9a, + 0xe2, 0x54, 0x30, 0xcd, 0x8a, 0x70, 0x1a, 0x70, 0x77, 0x92, 0xc9, 0xae, + 0xcc, 0xe7, 0x17, 0xea, 0x3c, 0xfc, 0x8b, 0xe6, +}; +static const unsigned char kat2339_addin1[] = { + 0xe5, 0xc5, 0x3c, 0x5d, 0x4d, 0x98, 0x43, 0xda, 0x5c, 0xee, 0x1c, 0x20, + 0x0d, 0x91, 0xc7, 0x1b, 0xd0, 0x49, 0x49, 0x9c, 0x01, 0x58, 0xb9, 0x30, + 0x29, 0xf0, 0xf7, 0xc8, 0x83, 0x2c, 0xfb, 0x25, +}; +static const unsigned char kat2339_retbits[] = { + 0xa7, 0xa8, 0xee, 0x50, 0x45, 0x4e, 0xae, 0x4f, 0xf8, 0xa9, 0xbf, 0x71, + 0xd5, 0x19, 0xd0, 0x9c, 0x39, 0xe1, 0x4c, 0x0b, 0x46, 0x72, 0x06, 0xd3, + 0xa8, 0x5d, 0x92, 0xf5, 0x04, 0xb3, 0x30, 0x59, 0x99, 0xd4, 0x0e, 0xae, + 0x72, 0x82, 0x64, 0x2f, 0xb5, 0x23, 0xbb, 0x20, 0x35, 0xe4, 0x50, 0x2a, + 0x1b, 0xdb, 0xdf, 0x4f, 0x20, 0x96, 0xe0, 0x27, 0xb0, 0x73, 0x76, 0xe6, + 0xb7, 0x5c, 0x61, 0xe8, +}; +static const struct drbg_kat_pr_false kat2339_t = { + 13, kat2339_entropyin, kat2339_nonce, kat2339_persstr, + kat2339_entropyinreseed, kat2339_addinreseed, kat2339_addin0, + kat2339_addin1, kat2339_retbits +}; +static const struct drbg_kat kat2339 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2339_t +}; + +static const unsigned char kat2340_entropyin[] = { + 0xb0, 0x1a, 0x63, 0xe1, 0xeb, 0x4e, 0xcf, 0x7e, 0xea, 0x9d, 0x07, 0x8e, + 0x6e, 0x90, 0x85, 0x50, 0x22, 0xda, 0x74, 0x39, 0x38, 0x84, 0x8a, 0xf5, + 0x78, 0x97, 0xbb, 0xbc, 0xd6, 0x33, 0x96, 0xd9, +}; +static const unsigned char kat2340_nonce[] = {0}; +static const unsigned char kat2340_persstr[] = { + 0x32, 0xdb, 0xa1, 0xb9, 0x98, 0x1b, 0x32, 0x07, 0x4e, 0xfa, 0x88, 0xdc, + 0x3e, 0xb2, 0xde, 0x16, 0x40, 0xf9, 0x97, 0xb9, 0xf4, 0xb6, 0x59, 0xf5, + 0xc5, 0x18, 0xb6, 0x07, 0x90, 0x98, 0xee, 0xe3, +}; +static const unsigned char kat2340_entropyinreseed[] = { + 0xd1, 0xde, 0xec, 0xd9, 0x28, 0xc4, 0x26, 0x9e, 0xca, 0xbc, 0x75, 0x59, + 0x9d, 0x76, 0x86, 0x4d, 0x99, 0x90, 0xdb, 0xac, 0x39, 0x0e, 0xc8, 0x5a, + 0xf3, 0x0b, 0x71, 0x0d, 0x64, 0xb2, 0xb9, 0x5e, +}; +static const unsigned char kat2340_addinreseed[] = { + 0xf9, 0x38, 0x19, 0x50, 0xa1, 0x24, 0xbc, 0x44, 0xef, 0x81, 0x18, 0xbc, + 0xd4, 0x2b, 0x6b, 0xd1, 0xc6, 0x6f, 0x60, 0xc9, 0x9e, 0xf5, 0x47, 0x9b, + 0x04, 0xcc, 0x1b, 0xae, 0xae, 0x4c, 0xe9, 0x50, +}; +static const unsigned char kat2340_addin0[] = { + 0xad, 0xc0, 0x70, 0x7f, 0x3a, 0x06, 0xe7, 0x67, 0xea, 0x80, 0xf0, 0x88, + 0x2e, 0xbc, 0x01, 0x5b, 0x79, 0xf0, 0x22, 0x85, 0x47, 0xd2, 0x2e, 0xb5, + 0xa6, 0x35, 0xb2, 0x44, 0xa7, 0xd1, 0xc6, 0x57, +}; +static const unsigned char kat2340_addin1[] = { + 0x83, 0x72, 0xa1, 0x27, 0x7f, 0x0e, 0xb8, 0x4c, 0xad, 0xd5, 0x3d, 0xf4, + 0xa6, 0xcc, 0x61, 0x9c, 0xfc, 0xa0, 0x29, 0xf8, 0x4d, 0x9b, 0xea, 0x48, + 0xbe, 0xca, 0x8c, 0xc8, 0x06, 0x05, 0x28, 0xcc, +}; +static const unsigned char kat2340_retbits[] = { + 0x86, 0xcd, 0xe2, 0x2d, 0xae, 0x3a, 0x1a, 0xf9, 0x47, 0xd7, 0x6c, 0xd1, + 0x5e, 0x4d, 0xf0, 0xc8, 0x3a, 0x11, 0x76, 0x9d, 0x34, 0x61, 0x0d, 0x19, + 0x91, 0x94, 0x53, 0x50, 0xac, 0xd4, 0xf0, 0xaa, 0xef, 0x9e, 0xf7, 0x0b, + 0x5b, 0xbd, 0x57, 0xfa, 0xb7, 0x4f, 0xac, 0x6b, 0xe8, 0xcb, 0xc0, 0x28, + 0xb9, 0xba, 0xb6, 0x3a, 0xa5, 0xde, 0x62, 0xd9, 0xf1, 0xf9, 0x5d, 0x94, + 0x9e, 0x9d, 0x09, 0x3e, +}; +static const struct drbg_kat_pr_false kat2340_t = { + 14, kat2340_entropyin, kat2340_nonce, kat2340_persstr, + kat2340_entropyinreseed, kat2340_addinreseed, kat2340_addin0, + kat2340_addin1, kat2340_retbits +}; +static const struct drbg_kat kat2340 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2340_t +}; + +static const unsigned char kat2341_entropyin[] = { + 0x6e, 0xb2, 0xe5, 0x33, 0xb9, 0x02, 0x54, 0x5c, 0x31, 0xcd, 0xd0, 0x9a, + 0x06, 0x2c, 0xf5, 0x93, 0x46, 0x59, 0x4f, 0x34, 0xb5, 0x63, 0xb0, 0x90, + 0xdf, 0xbd, 0x63, 0x2a, 0xea, 0xdb, 0xd1, 0x91, +}; +static const unsigned char kat2341_nonce[] = {0}; +static const unsigned char kat2341_persstr[] = {0}; +static const unsigned char kat2341_entropyinreseed[] = { + 0x2c, 0xd1, 0xce, 0xc6, 0x24, 0x2a, 0xc2, 0x5e, 0x75, 0x18, 0xb9, 0x8d, + 0xa8, 0xa2, 0x2b, 0xd1, 0x3a, 0xcf, 0xaf, 0x5f, 0xa4, 0x5f, 0xee, 0x60, + 0x21, 0xba, 0x28, 0x39, 0x26, 0xde, 0x19, 0x22, +}; +static const unsigned char kat2341_addinreseed[] = {0}; +static const unsigned char kat2341_addin0[] = {0}; +static const unsigned char kat2341_addin1[] = {0}; +static const unsigned char kat2341_retbits[] = { + 0xba, 0x5c, 0xab, 0x62, 0xfd, 0xdf, 0x8c, 0x6e, 0xd1, 0x67, 0x33, 0xc5, + 0xbf, 0x0e, 0x39, 0x33, 0x6c, 0x18, 0x9d, 0x80, 0xa9, 0x66, 0x90, 0x43, + 0xac, 0x89, 0x2c, 0xea, 0x63, 0xd7, 0xe7, 0x0d, 0x39, 0x0e, 0x91, 0x74, + 0x18, 0x40, 0xbf, 0x7e, 0xe1, 0x4c, 0x07, 0x8c, 0xbb, 0xe9, 0x7d, 0x11, + 0x49, 0x92, 0xae, 0x78, 0x1d, 0x99, 0x66, 0xa5, 0xf6, 0xc7, 0x04, 0xe5, + 0xc0, 0x18, 0x11, 0xb5, +}; +static const struct drbg_kat_pr_false kat2341_t = { + 0, kat2341_entropyin, kat2341_nonce, kat2341_persstr, + kat2341_entropyinreseed, kat2341_addinreseed, kat2341_addin0, + kat2341_addin1, kat2341_retbits +}; +static const struct drbg_kat kat2341 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2341_t +}; + +static const unsigned char kat2342_entropyin[] = { + 0xbe, 0x72, 0xde, 0x2b, 0x1c, 0xdb, 0xf0, 0xc8, 0xfb, 0xcd, 0x4c, 0xfe, + 0x0b, 0x0f, 0x8d, 0xc5, 0xd9, 0x3d, 0x03, 0x5d, 0x9f, 0xaf, 0x88, 0x4b, + 0xfb, 0xa2, 0xef, 0x19, 0x72, 0x3f, 0x19, 0x6e, +}; +static const unsigned char kat2342_nonce[] = {0}; +static const unsigned char kat2342_persstr[] = {0}; +static const unsigned char kat2342_entropyinreseed[] = { + 0x89, 0xc4, 0xf4, 0x35, 0x7f, 0x79, 0x9b, 0x65, 0x8e, 0x9d, 0x1c, 0xa5, + 0x34, 0x02, 0xbc, 0x60, 0x26, 0x4b, 0x4c, 0xed, 0xeb, 0x55, 0x3a, 0x0d, + 0x8a, 0xfc, 0x90, 0x46, 0x39, 0x1a, 0x04, 0x3d, +}; +static const unsigned char kat2342_addinreseed[] = {0}; +static const unsigned char kat2342_addin0[] = {0}; +static const unsigned char kat2342_addin1[] = {0}; +static const unsigned char kat2342_retbits[] = { + 0x0d, 0xe1, 0x95, 0x71, 0xb5, 0xf5, 0x4c, 0x8b, 0x13, 0x49, 0x33, 0xd7, + 0x6b, 0x2f, 0xa2, 0x18, 0x26, 0x39, 0x4c, 0x3b, 0xfc, 0x06, 0xdb, 0xdb, + 0x08, 0xc0, 0x78, 0xa1, 0x58, 0xfb, 0xc3, 0x8a, 0xac, 0x3f, 0xca, 0xf6, + 0x91, 0x3d, 0x1c, 0x58, 0x8a, 0x6e, 0x36, 0x9b, 0x12, 0xb1, 0xcd, 0x94, + 0x6d, 0xce, 0x24, 0xd9, 0x6c, 0x4c, 0xa1, 0x74, 0x6e, 0xd1, 0xe9, 0x0a, + 0xb2, 0x62, 0x0d, 0xf5, +}; +static const struct drbg_kat_pr_false kat2342_t = { + 1, kat2342_entropyin, kat2342_nonce, kat2342_persstr, + kat2342_entropyinreseed, kat2342_addinreseed, kat2342_addin0, + kat2342_addin1, kat2342_retbits +}; +static const struct drbg_kat kat2342 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2342_t +}; + +static const unsigned char kat2343_entropyin[] = { + 0x5b, 0x3e, 0xa3, 0x9a, 0xaf, 0xf5, 0xc0, 0x40, 0x09, 0xee, 0xa6, 0x5c, + 0xad, 0x7c, 0x3a, 0x02, 0xd4, 0xf8, 0x80, 0x72, 0x55, 0xa4, 0xf4, 0x8e, + 0x60, 0xe3, 0x62, 0xe0, 0xe4, 0x17, 0x75, 0x85, +}; +static const unsigned char kat2343_nonce[] = {0}; +static const unsigned char kat2343_persstr[] = {0}; +static const unsigned char kat2343_entropyinreseed[] = { + 0xf1, 0x90, 0x69, 0x10, 0x17, 0x9d, 0x2d, 0x64, 0xac, 0x13, 0x10, 0x75, + 0xee, 0x60, 0xaa, 0x69, 0x0c, 0xa4, 0x34, 0x5c, 0x18, 0x75, 0x05, 0x54, + 0x7d, 0xb4, 0xf4, 0x39, 0x58, 0xf6, 0xe1, 0xc6, +}; +static const unsigned char kat2343_addinreseed[] = {0}; +static const unsigned char kat2343_addin0[] = {0}; +static const unsigned char kat2343_addin1[] = {0}; +static const unsigned char kat2343_retbits[] = { + 0x3c, 0x5a, 0xb2, 0x53, 0x97, 0xe0, 0x2a, 0x8c, 0x57, 0xd2, 0x49, 0x97, + 0xe5, 0x10, 0x81, 0xae, 0xd0, 0x9e, 0xb8, 0xfc, 0x68, 0x61, 0x2c, 0xd1, + 0x9c, 0x9d, 0x56, 0x0f, 0x35, 0x97, 0xc9, 0xdb, 0x6a, 0xaf, 0x5f, 0x62, + 0x22, 0x77, 0x8d, 0x81, 0x84, 0xc8, 0x3f, 0xf1, 0x66, 0xf0, 0x59, 0x1a, + 0xc2, 0xa8, 0xb4, 0xbb, 0xe9, 0xed, 0xfc, 0x4f, 0xd4, 0xdd, 0xb3, 0xaa, + 0xdc, 0xab, 0xd3, 0x24, +}; +static const struct drbg_kat_pr_false kat2343_t = { + 2, kat2343_entropyin, kat2343_nonce, kat2343_persstr, + kat2343_entropyinreseed, kat2343_addinreseed, kat2343_addin0, + kat2343_addin1, kat2343_retbits +}; +static const struct drbg_kat kat2343 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2343_t +}; + +static const unsigned char kat2344_entropyin[] = { + 0xb1, 0xd8, 0x7c, 0x20, 0xb1, 0x8e, 0xf4, 0xd7, 0x9b, 0xc0, 0x34, 0xe5, + 0x2e, 0x69, 0xe0, 0x7f, 0x0d, 0x1c, 0x22, 0x4d, 0x49, 0xcf, 0xe7, 0x7c, + 0x5d, 0xf5, 0xff, 0x7f, 0x26, 0x05, 0xee, 0xf5, +}; +static const unsigned char kat2344_nonce[] = {0}; +static const unsigned char kat2344_persstr[] = {0}; +static const unsigned char kat2344_entropyinreseed[] = { + 0x0b, 0xad, 0x85, 0x80, 0x60, 0x63, 0xa7, 0xc6, 0xf5, 0x0c, 0x7e, 0xc4, + 0x98, 0xca, 0xda, 0x91, 0x2c, 0x61, 0x67, 0xbd, 0x6e, 0xe2, 0xcd, 0x3b, + 0xe8, 0xd2, 0xde, 0x94, 0xc1, 0x7d, 0xcf, 0xa8, +}; +static const unsigned char kat2344_addinreseed[] = {0}; +static const unsigned char kat2344_addin0[] = {0}; +static const unsigned char kat2344_addin1[] = {0}; +static const unsigned char kat2344_retbits[] = { + 0x49, 0x53, 0xc4, 0x70, 0x6f, 0xb2, 0x74, 0x57, 0xbe, 0xf8, 0xbb, 0x4f, + 0xc4, 0x92, 0x9f, 0xe2, 0x27, 0xeb, 0x7b, 0xeb, 0x90, 0xe6, 0x6e, 0xda, + 0xb9, 0xe2, 0x6a, 0xb7, 0x67, 0x1f, 0x28, 0xa4, 0xf5, 0xb6, 0x5d, 0x1e, + 0xdf, 0x3f, 0xc2, 0x67, 0xb4, 0xf3, 0xe5, 0x1f, 0x4c, 0xa7, 0xf0, 0x7f, + 0x47, 0x62, 0x89, 0xca, 0x0a, 0xe3, 0xa8, 0x69, 0x19, 0x70, 0x5d, 0x2d, + 0xad, 0x0e, 0x48, 0xb7, +}; +static const struct drbg_kat_pr_false kat2344_t = { + 3, kat2344_entropyin, kat2344_nonce, kat2344_persstr, + kat2344_entropyinreseed, kat2344_addinreseed, kat2344_addin0, + kat2344_addin1, kat2344_retbits +}; +static const struct drbg_kat kat2344 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2344_t +}; + +static const unsigned char kat2345_entropyin[] = { + 0x08, 0x2a, 0x0f, 0x42, 0xb5, 0x4b, 0x52, 0x4e, 0xaf, 0x14, 0xa9, 0x52, + 0x19, 0x75, 0x94, 0xa1, 0x94, 0x7c, 0xff, 0xc2, 0x89, 0x71, 0x67, 0x76, + 0xd5, 0x2d, 0x02, 0xd0, 0x0c, 0x76, 0x30, 0xe0, +}; +static const unsigned char kat2345_nonce[] = {0}; +static const unsigned char kat2345_persstr[] = {0}; +static const unsigned char kat2345_entropyinreseed[] = { + 0x5e, 0x79, 0x8f, 0x69, 0xfc, 0xd0, 0x17, 0xce, 0xea, 0x3c, 0x14, 0x34, + 0xea, 0x59, 0x7d, 0xac, 0x68, 0x47, 0xa6, 0x3a, 0x80, 0x93, 0x30, 0x9d, + 0xcb, 0xe5, 0x4f, 0xc2, 0xa0, 0x27, 0x2b, 0x7d, +}; +static const unsigned char kat2345_addinreseed[] = {0}; +static const unsigned char kat2345_addin0[] = {0}; +static const unsigned char kat2345_addin1[] = {0}; +static const unsigned char kat2345_retbits[] = { + 0x09, 0x46, 0xb9, 0x1d, 0xc3, 0xf1, 0x9c, 0xf0, 0x8a, 0x2a, 0xf8, 0x6b, + 0xa6, 0x5a, 0xb9, 0xd1, 0x62, 0xde, 0x8f, 0x64, 0x5c, 0x2f, 0x53, 0x1d, + 0xd1, 0x6a, 0x22, 0xf6, 0x15, 0xf0, 0x56, 0x2f, 0x79, 0xa1, 0x28, 0x43, + 0x2e, 0x23, 0x95, 0x3d, 0xc3, 0xf6, 0x15, 0x61, 0x22, 0x18, 0xed, 0xbe, + 0xe5, 0xc9, 0xd0, 0x62, 0xae, 0x00, 0x9d, 0x4a, 0x2d, 0x24, 0x16, 0x71, + 0x8d, 0x59, 0x3b, 0x94, +}; +static const struct drbg_kat_pr_false kat2345_t = { + 4, kat2345_entropyin, kat2345_nonce, kat2345_persstr, + kat2345_entropyinreseed, kat2345_addinreseed, kat2345_addin0, + kat2345_addin1, kat2345_retbits +}; +static const struct drbg_kat kat2345 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2345_t +}; + +static const unsigned char kat2346_entropyin[] = { + 0x5f, 0x41, 0xde, 0x01, 0x51, 0x7a, 0x0d, 0x31, 0xa7, 0xd5, 0x35, 0x35, + 0xb8, 0x58, 0x25, 0x7c, 0x9d, 0x80, 0xe8, 0x12, 0x3c, 0xca, 0x98, 0xad, + 0x19, 0x9a, 0xe5, 0x3e, 0x77, 0x6d, 0xb9, 0xe3, +}; +static const unsigned char kat2346_nonce[] = {0}; +static const unsigned char kat2346_persstr[] = {0}; +static const unsigned char kat2346_entropyinreseed[] = { + 0xb8, 0x57, 0xf6, 0x32, 0x81, 0x45, 0xfe, 0xdf, 0xd7, 0x1d, 0x2d, 0xc3, + 0xd4, 0xc9, 0x90, 0x68, 0xbd, 0x46, 0x48, 0xd3, 0x31, 0x03, 0x41, 0x5b, + 0x9f, 0xe1, 0x14, 0x82, 0x6a, 0xf6, 0x6a, 0x84, +}; +static const unsigned char kat2346_addinreseed[] = {0}; +static const unsigned char kat2346_addin0[] = {0}; +static const unsigned char kat2346_addin1[] = {0}; +static const unsigned char kat2346_retbits[] = { + 0xe2, 0x44, 0x46, 0xec, 0x14, 0x9f, 0x6f, 0x16, 0xe4, 0x06, 0x9b, 0x27, + 0xf4, 0x5b, 0x0d, 0xb2, 0x93, 0xf5, 0xff, 0x4b, 0x6a, 0x0c, 0xb4, 0x65, + 0xfb, 0xef, 0x97, 0x09, 0xa6, 0xd9, 0xaf, 0x20, 0xa3, 0xbe, 0x60, 0x9c, + 0xbf, 0x1c, 0x64, 0x7b, 0xcd, 0xa7, 0x7f, 0xdf, 0xe3, 0x03, 0x79, 0x58, + 0x3f, 0x67, 0xad, 0x73, 0xb9, 0xd6, 0x2a, 0x4f, 0x51, 0x87, 0xf2, 0x1d, + 0xbb, 0x89, 0xbb, 0x36, +}; +static const struct drbg_kat_pr_false kat2346_t = { + 5, kat2346_entropyin, kat2346_nonce, kat2346_persstr, + kat2346_entropyinreseed, kat2346_addinreseed, kat2346_addin0, + kat2346_addin1, kat2346_retbits +}; +static const struct drbg_kat kat2346 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2346_t +}; + +static const unsigned char kat2347_entropyin[] = { + 0xd4, 0xfe, 0x09, 0x37, 0x2d, 0x8b, 0xba, 0xf3, 0x9f, 0x83, 0x88, 0xf1, + 0x93, 0x31, 0x0e, 0xe6, 0x3c, 0x4a, 0xda, 0x30, 0x8a, 0x58, 0x78, 0x3f, + 0x4b, 0xfa, 0x58, 0x08, 0x06, 0xf0, 0x1b, 0xc6, +}; +static const unsigned char kat2347_nonce[] = {0}; +static const unsigned char kat2347_persstr[] = {0}; +static const unsigned char kat2347_entropyinreseed[] = { + 0x1e, 0x46, 0xde, 0x02, 0xdf, 0xd2, 0xa9, 0xf1, 0x1d, 0x2d, 0x68, 0x3f, + 0x4a, 0xb7, 0x9c, 0x25, 0x88, 0x62, 0x78, 0x72, 0xab, 0x14, 0xfb, 0xcc, + 0x0b, 0xb6, 0x19, 0xd3, 0x16, 0x87, 0xd5, 0x72, +}; +static const unsigned char kat2347_addinreseed[] = {0}; +static const unsigned char kat2347_addin0[] = {0}; +static const unsigned char kat2347_addin1[] = {0}; +static const unsigned char kat2347_retbits[] = { + 0x20, 0xd8, 0x7a, 0x94, 0xba, 0x7a, 0xf2, 0x0e, 0x41, 0xe3, 0x84, 0x8e, + 0xc3, 0x1f, 0xcb, 0xd0, 0xb8, 0xe5, 0x1a, 0xae, 0x70, 0xa2, 0x5e, 0xb2, + 0xd5, 0x32, 0x03, 0xa7, 0x7a, 0xac, 0xd5, 0x32, 0x40, 0xb9, 0x11, 0x58, + 0x5f, 0x11, 0x5d, 0x8b, 0x8a, 0x07, 0xe3, 0x8c, 0x4e, 0x10, 0x1c, 0xd2, + 0xac, 0x46, 0xd7, 0xc9, 0xf3, 0x25, 0x05, 0xb8, 0x56, 0x4e, 0xbf, 0x7a, + 0xcd, 0x97, 0xa7, 0x99, +}; +static const struct drbg_kat_pr_false kat2347_t = { + 6, kat2347_entropyin, kat2347_nonce, kat2347_persstr, + kat2347_entropyinreseed, kat2347_addinreseed, kat2347_addin0, + kat2347_addin1, kat2347_retbits +}; +static const struct drbg_kat kat2347 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2347_t +}; + +static const unsigned char kat2348_entropyin[] = { + 0x54, 0x88, 0xcd, 0x2f, 0xb7, 0xa0, 0x02, 0xea, 0x1e, 0xd7, 0xeb, 0x6f, + 0x58, 0x5c, 0x23, 0xdd, 0xd7, 0x3c, 0xd5, 0x6c, 0x14, 0xd3, 0x9b, 0xd7, + 0x80, 0xb3, 0x06, 0x99, 0x84, 0xda, 0x00, 0x20, +}; +static const unsigned char kat2348_nonce[] = {0}; +static const unsigned char kat2348_persstr[] = {0}; +static const unsigned char kat2348_entropyinreseed[] = { + 0x24, 0xfd, 0xcc, 0xeb, 0x76, 0x6f, 0xcb, 0xf2, 0x3c, 0x89, 0x54, 0x62, + 0x5f, 0x75, 0x9d, 0x34, 0x3d, 0xd3, 0x17, 0x03, 0xa0, 0x03, 0x9e, 0x95, + 0x96, 0x8b, 0x48, 0x2a, 0x33, 0x58, 0x3e, 0xfa, +}; +static const unsigned char kat2348_addinreseed[] = {0}; +static const unsigned char kat2348_addin0[] = {0}; +static const unsigned char kat2348_addin1[] = {0}; +static const unsigned char kat2348_retbits[] = { + 0xb6, 0xd5, 0x85, 0x52, 0xbd, 0xe5, 0x95, 0xfe, 0x3e, 0xb0, 0xae, 0x54, + 0x53, 0x1e, 0x98, 0x45, 0x10, 0xe5, 0x45, 0xbf, 0xc4, 0x57, 0x69, 0x93, + 0x0a, 0x1f, 0xef, 0x2f, 0x96, 0xc5, 0xd4, 0x7e, 0xa1, 0xff, 0x8d, 0x3e, + 0xa4, 0x17, 0x91, 0x7b, 0x8c, 0x9a, 0x00, 0xaa, 0x32, 0xe4, 0x89, 0x1f, + 0x3b, 0xfe, 0x5d, 0x61, 0x21, 0xbb, 0x40, 0x48, 0x28, 0x86, 0x6a, 0xcc, + 0xd5, 0xac, 0x76, 0x9f, +}; +static const struct drbg_kat_pr_false kat2348_t = { + 7, kat2348_entropyin, kat2348_nonce, kat2348_persstr, + kat2348_entropyinreseed, kat2348_addinreseed, kat2348_addin0, + kat2348_addin1, kat2348_retbits +}; +static const struct drbg_kat kat2348 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2348_t +}; + +static const unsigned char kat2349_entropyin[] = { + 0x0f, 0x1e, 0x74, 0x70, 0x94, 0x4e, 0x37, 0x7d, 0x00, 0xe8, 0x7f, 0x09, + 0x20, 0xfe, 0x60, 0xed, 0x47, 0x34, 0xf6, 0xfa, 0x40, 0x34, 0xd1, 0xd1, + 0xa9, 0xad, 0x0e, 0x67, 0x49, 0x9e, 0x3b, 0x56, +}; +static const unsigned char kat2349_nonce[] = {0}; +static const unsigned char kat2349_persstr[] = {0}; +static const unsigned char kat2349_entropyinreseed[] = { + 0xb0, 0xbb, 0xd0, 0xb3, 0x20, 0x68, 0x25, 0xe4, 0x84, 0x11, 0x8b, 0x9a, + 0xc4, 0xa9, 0xc7, 0xb9, 0xbf, 0x69, 0x83, 0x98, 0x3c, 0xb4, 0x18, 0x0d, + 0x5c, 0xe2, 0x78, 0x47, 0x5e, 0x2e, 0x85, 0xe1, +}; +static const unsigned char kat2349_addinreseed[] = {0}; +static const unsigned char kat2349_addin0[] = {0}; +static const unsigned char kat2349_addin1[] = {0}; +static const unsigned char kat2349_retbits[] = { + 0x7e, 0x65, 0x92, 0x90, 0x50, 0x3d, 0xf5, 0xce, 0x17, 0x62, 0xba, 0x72, + 0x1e, 0x9f, 0x50, 0xa0, 0xd9, 0x87, 0x10, 0x99, 0x8d, 0x75, 0xe1, 0xfd, + 0xe9, 0x28, 0x29, 0x10, 0x6f, 0x10, 0x07, 0x45, 0x85, 0x74, 0xfb, 0x1c, + 0xc7, 0x3f, 0x69, 0x42, 0x7d, 0x10, 0x6d, 0x31, 0x8f, 0x1c, 0x16, 0x90, + 0xcf, 0x74, 0x8e, 0xab, 0xad, 0x72, 0xf8, 0x70, 0xc6, 0x05, 0x66, 0x13, + 0x99, 0x0f, 0x1d, 0xb9, +}; +static const struct drbg_kat_pr_false kat2349_t = { + 8, kat2349_entropyin, kat2349_nonce, kat2349_persstr, + kat2349_entropyinreseed, kat2349_addinreseed, kat2349_addin0, + kat2349_addin1, kat2349_retbits +}; +static const struct drbg_kat kat2349 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2349_t +}; + +static const unsigned char kat2350_entropyin[] = { + 0x30, 0xd6, 0xad, 0xf9, 0xb8, 0x45, 0x13, 0x90, 0xca, 0x56, 0x6f, 0xf1, + 0x99, 0xc0, 0x1d, 0xb2, 0x14, 0xb9, 0xf9, 0xe2, 0xb1, 0x47, 0xbf, 0x58, + 0x06, 0xb7, 0x05, 0x54, 0x57, 0x93, 0x0c, 0x78, +}; +static const unsigned char kat2350_nonce[] = {0}; +static const unsigned char kat2350_persstr[] = {0}; +static const unsigned char kat2350_entropyinreseed[] = { + 0x82, 0x60, 0xeb, 0x48, 0xac, 0xc5, 0x9e, 0xc9, 0x46, 0x90, 0x5c, 0x56, + 0xea, 0xab, 0x34, 0xca, 0xfa, 0x41, 0x2d, 0xad, 0xbc, 0xa0, 0x2b, 0x30, + 0xc2, 0x93, 0xbf, 0xf0, 0xe6, 0x43, 0x75, 0x69, +}; +static const unsigned char kat2350_addinreseed[] = {0}; +static const unsigned char kat2350_addin0[] = {0}; +static const unsigned char kat2350_addin1[] = {0}; +static const unsigned char kat2350_retbits[] = { + 0x29, 0xae, 0xf1, 0x7c, 0x99, 0x92, 0xe7, 0x31, 0x4a, 0xca, 0x59, 0x62, + 0x6d, 0x25, 0x08, 0x20, 0xde, 0xf8, 0x1b, 0xe8, 0x02, 0x42, 0x1a, 0xc7, + 0xba, 0x37, 0x39, 0x05, 0xe9, 0xf5, 0x49, 0xdf, 0xac, 0xde, 0xde, 0x4e, + 0xf7, 0x51, 0xe4, 0x47, 0x14, 0x97, 0x50, 0x14, 0x83, 0x70, 0xb8, 0xa5, + 0x47, 0xc7, 0x04, 0x14, 0x95, 0xd9, 0x45, 0x98, 0x57, 0x26, 0xf8, 0x97, + 0xe9, 0xdd, 0xd3, 0xe1, +}; +static const struct drbg_kat_pr_false kat2350_t = { + 9, kat2350_entropyin, kat2350_nonce, kat2350_persstr, + kat2350_entropyinreseed, kat2350_addinreseed, kat2350_addin0, + kat2350_addin1, kat2350_retbits +}; +static const struct drbg_kat kat2350 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2350_t +}; + +static const unsigned char kat2351_entropyin[] = { + 0x71, 0x72, 0xba, 0x99, 0x4b, 0x2e, 0xb0, 0xc9, 0x31, 0x6e, 0x87, 0x4d, + 0x2a, 0x5c, 0x97, 0x5c, 0xfd, 0x7e, 0x43, 0x77, 0x59, 0x12, 0xb2, 0x94, + 0x36, 0xfa, 0x75, 0x10, 0x58, 0x5a, 0x7d, 0xc5, +}; +static const unsigned char kat2351_nonce[] = {0}; +static const unsigned char kat2351_persstr[] = {0}; +static const unsigned char kat2351_entropyinreseed[] = { + 0x9a, 0xc9, 0xe5, 0x14, 0x4c, 0xfd, 0x52, 0xd3, 0xdf, 0x33, 0x47, 0x36, + 0x09, 0x9d, 0x2c, 0xd9, 0x69, 0x3c, 0x97, 0xed, 0xc7, 0xc4, 0x1c, 0x1e, + 0x17, 0x30, 0x09, 0x14, 0x85, 0x49, 0xce, 0x8e, +}; +static const unsigned char kat2351_addinreseed[] = {0}; +static const unsigned char kat2351_addin0[] = {0}; +static const unsigned char kat2351_addin1[] = {0}; +static const unsigned char kat2351_retbits[] = { + 0x6d, 0xf1, 0xde, 0x2d, 0xdd, 0x71, 0x3f, 0x9b, 0xc0, 0x16, 0x88, 0x36, + 0x6a, 0x44, 0xd1, 0x21, 0x68, 0x68, 0x12, 0x04, 0x1f, 0x00, 0x32, 0xbc, + 0x11, 0xa8, 0xfb, 0xbf, 0x7f, 0x5a, 0x22, 0x5d, 0xcc, 0x06, 0xb5, 0xfd, + 0x12, 0xc1, 0x91, 0x1e, 0xdc, 0xec, 0xb8, 0x06, 0x5e, 0x62, 0x95, 0xa0, + 0xb8, 0xaa, 0x83, 0x8f, 0x3e, 0x82, 0xf4, 0xdc, 0xe8, 0x88, 0x2e, 0xba, + 0xeb, 0x80, 0x27, 0x6e, +}; +static const struct drbg_kat_pr_false kat2351_t = { + 10, kat2351_entropyin, kat2351_nonce, kat2351_persstr, + kat2351_entropyinreseed, kat2351_addinreseed, kat2351_addin0, + kat2351_addin1, kat2351_retbits +}; +static const struct drbg_kat kat2351 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2351_t +}; + +static const unsigned char kat2352_entropyin[] = { + 0x33, 0xc4, 0x9e, 0x74, 0x2b, 0xb3, 0xd9, 0x03, 0x36, 0x12, 0xf3, 0x23, + 0x5e, 0x84, 0x02, 0x90, 0x4d, 0xa8, 0xbe, 0xc4, 0x43, 0x39, 0x31, 0x24, + 0xea, 0xbf, 0x0f, 0xfd, 0x92, 0xc7, 0xfd, 0x3a, +}; +static const unsigned char kat2352_nonce[] = {0}; +static const unsigned char kat2352_persstr[] = {0}; +static const unsigned char kat2352_entropyinreseed[] = { + 0x70, 0x5b, 0xb4, 0x29, 0xe7, 0xca, 0xbd, 0xee, 0x77, 0x16, 0x55, 0xb3, + 0xa8, 0x5d, 0x4e, 0xe3, 0x27, 0x1c, 0x9f, 0x05, 0x71, 0xea, 0xd3, 0x4f, + 0x5d, 0x7d, 0x1d, 0xf3, 0x91, 0x8d, 0x3c, 0xaf, +}; +static const unsigned char kat2352_addinreseed[] = {0}; +static const unsigned char kat2352_addin0[] = {0}; +static const unsigned char kat2352_addin1[] = {0}; +static const unsigned char kat2352_retbits[] = { + 0x19, 0xc5, 0x4e, 0xcb, 0x76, 0x92, 0x4f, 0xf9, 0x30, 0xad, 0xa1, 0xaa, + 0x6f, 0x35, 0xb4, 0x2c, 0x22, 0x5a, 0x0e, 0x72, 0x64, 0x53, 0x41, 0x77, + 0xe0, 0x79, 0x1c, 0xff, 0xda, 0x42, 0x67, 0x76, 0x34, 0x29, 0x78, 0x80, + 0x28, 0xea, 0xcf, 0x9b, 0x98, 0x77, 0x66, 0xf5, 0x3a, 0x06, 0x6f, 0xa6, + 0x91, 0x89, 0x58, 0xe9, 0x2e, 0x66, 0xbf, 0x0f, 0xac, 0x60, 0x63, 0x76, + 0xc8, 0x57, 0xa0, 0x78, +}; +static const struct drbg_kat_pr_false kat2352_t = { + 11, kat2352_entropyin, kat2352_nonce, kat2352_persstr, + kat2352_entropyinreseed, kat2352_addinreseed, kat2352_addin0, + kat2352_addin1, kat2352_retbits +}; +static const struct drbg_kat kat2352 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2352_t +}; + +static const unsigned char kat2353_entropyin[] = { + 0x0b, 0xde, 0x84, 0x03, 0xf4, 0xef, 0xfc, 0x3f, 0x58, 0x8d, 0x4e, 0xae, + 0xb9, 0x41, 0x23, 0x09, 0xed, 0x70, 0x3d, 0x88, 0x9d, 0x11, 0x81, 0x23, + 0xd5, 0xad, 0x55, 0xd4, 0xb6, 0xad, 0x04, 0x82, +}; +static const unsigned char kat2353_nonce[] = {0}; +static const unsigned char kat2353_persstr[] = {0}; +static const unsigned char kat2353_entropyinreseed[] = { + 0x9f, 0xd6, 0x0f, 0x0e, 0xaf, 0xed, 0xfc, 0x85, 0x73, 0xdb, 0x6d, 0x11, + 0x4f, 0x87, 0x33, 0xc3, 0x69, 0xaa, 0x7a, 0x44, 0x9d, 0x58, 0x64, 0x28, + 0x46, 0xed, 0x8c, 0x04, 0x9e, 0xce, 0x92, 0x8d, +}; +static const unsigned char kat2353_addinreseed[] = {0}; +static const unsigned char kat2353_addin0[] = {0}; +static const unsigned char kat2353_addin1[] = {0}; +static const unsigned char kat2353_retbits[] = { + 0x86, 0x65, 0x3c, 0x0a, 0xc3, 0x26, 0x18, 0x74, 0xa3, 0x99, 0xe4, 0x96, + 0x5a, 0x12, 0xbb, 0x98, 0x62, 0x67, 0x64, 0xfc, 0xfa, 0x54, 0x68, 0x99, + 0xcb, 0x22, 0xe4, 0x7a, 0x4d, 0x5c, 0xe2, 0x12, 0x19, 0x29, 0x77, 0x2a, + 0xd7, 0x2e, 0x8b, 0x69, 0x88, 0xbe, 0x10, 0x77, 0xde, 0x45, 0x10, 0xff, + 0x0d, 0x4f, 0x20, 0x4a, 0x92, 0xfa, 0x1e, 0xad, 0x4c, 0x1b, 0x82, 0xa2, + 0x24, 0xfb, 0x74, 0xbd, +}; +static const struct drbg_kat_pr_false kat2353_t = { + 12, kat2353_entropyin, kat2353_nonce, kat2353_persstr, + kat2353_entropyinreseed, kat2353_addinreseed, kat2353_addin0, + kat2353_addin1, kat2353_retbits +}; +static const struct drbg_kat kat2353 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2353_t +}; + +static const unsigned char kat2354_entropyin[] = { + 0x64, 0x59, 0x1d, 0x27, 0xdb, 0xfb, 0x75, 0x6f, 0xa8, 0x82, 0x39, 0x9d, + 0x93, 0xe2, 0x46, 0x04, 0xbb, 0xba, 0xa5, 0x32, 0x02, 0x38, 0xc3, 0x6d, + 0x8b, 0x66, 0x55, 0x4c, 0xb3, 0x42, 0xfc, 0x23, +}; +static const unsigned char kat2354_nonce[] = {0}; +static const unsigned char kat2354_persstr[] = {0}; +static const unsigned char kat2354_entropyinreseed[] = { + 0xe2, 0x8b, 0x90, 0x9e, 0xcb, 0xbf, 0x0c, 0x5f, 0xaf, 0x80, 0xbd, 0x2c, + 0xae, 0xa1, 0x4f, 0x55, 0xdc, 0xa0, 0x8f, 0x97, 0x20, 0x6c, 0x0e, 0x0a, + 0x44, 0xc5, 0x47, 0x25, 0x54, 0x4d, 0xd4, 0xac, +}; +static const unsigned char kat2354_addinreseed[] = {0}; +static const unsigned char kat2354_addin0[] = {0}; +static const unsigned char kat2354_addin1[] = {0}; +static const unsigned char kat2354_retbits[] = { + 0x0f, 0x5b, 0x8f, 0x9e, 0x65, 0xaf, 0x24, 0x7e, 0xc6, 0xe6, 0x4a, 0x99, + 0xe7, 0xc0, 0xa1, 0x9d, 0x9a, 0x75, 0x7b, 0x88, 0x89, 0x5d, 0xb9, 0xcf, + 0x01, 0x5e, 0x61, 0x77, 0xec, 0x24, 0x64, 0xde, 0xc7, 0x8e, 0x42, 0xf1, + 0x9a, 0x0f, 0xe5, 0x2f, 0x90, 0x79, 0x5b, 0x3f, 0xdd, 0x33, 0x12, 0x23, + 0x34, 0x8d, 0x43, 0x28, 0xc1, 0x84, 0x05, 0x07, 0x88, 0x1d, 0xb7, 0xa1, + 0x9f, 0x16, 0x8a, 0xdf, +}; +static const struct drbg_kat_pr_false kat2354_t = { + 13, kat2354_entropyin, kat2354_nonce, kat2354_persstr, + kat2354_entropyinreseed, kat2354_addinreseed, kat2354_addin0, + kat2354_addin1, kat2354_retbits +}; +static const struct drbg_kat kat2354 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2354_t +}; + +static const unsigned char kat2355_entropyin[] = { + 0xe3, 0xd8, 0xfc, 0xb8, 0xc0, 0x49, 0xe4, 0x42, 0xd2, 0xbd, 0x07, 0x10, + 0x4c, 0x46, 0xf0, 0x60, 0x2a, 0x1f, 0x60, 0xf8, 0x7b, 0xdc, 0x02, 0xdb, + 0xec, 0xdc, 0xfc, 0xf4, 0x00, 0x6b, 0x5b, 0x0a, +}; +static const unsigned char kat2355_nonce[] = {0}; +static const unsigned char kat2355_persstr[] = {0}; +static const unsigned char kat2355_entropyinreseed[] = { + 0xe2, 0x53, 0x27, 0x86, 0x7f, 0xf2, 0x74, 0x56, 0xef, 0xf9, 0xf4, 0xae, + 0x43, 0x75, 0xc7, 0xa8, 0x57, 0x88, 0xb4, 0x00, 0xdc, 0xae, 0x03, 0xae, + 0x8c, 0x89, 0x24, 0x72, 0xc8, 0xa0, 0x52, 0x21, +}; +static const unsigned char kat2355_addinreseed[] = {0}; +static const unsigned char kat2355_addin0[] = {0}; +static const unsigned char kat2355_addin1[] = {0}; +static const unsigned char kat2355_retbits[] = { + 0x75, 0x40, 0x63, 0xc6, 0x79, 0x26, 0x99, 0x31, 0xfd, 0xab, 0x8f, 0x90, + 0xde, 0xaa, 0x96, 0x79, 0x69, 0xf2, 0x0b, 0x18, 0x05, 0xd9, 0x3f, 0xe5, + 0xb1, 0x92, 0x85, 0x12, 0xcd, 0x2f, 0xe9, 0x89, 0x84, 0x97, 0x4b, 0x0b, + 0xb1, 0xd7, 0x49, 0x4d, 0x81, 0xf5, 0x3e, 0x07, 0x3f, 0x1a, 0x3a, 0x93, + 0x78, 0xea, 0x27, 0x30, 0x7a, 0x15, 0x4d, 0xc8, 0xa1, 0xfb, 0x1d, 0x3e, + 0x17, 0x99, 0x8f, 0x85, +}; +static const struct drbg_kat_pr_false kat2355_t = { + 14, kat2355_entropyin, kat2355_nonce, kat2355_persstr, + kat2355_entropyinreseed, kat2355_addinreseed, kat2355_addin0, + kat2355_addin1, kat2355_retbits +}; +static const struct drbg_kat kat2355 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat2355_t +}; + +static const unsigned char kat2356_entropyin[] = { + 0x11, 0x09, 0x21, 0x43, 0x25, 0x33, 0x47, 0x10, 0x6d, 0xf7, 0xa1, 0xc4, + 0x57, 0x2a, 0x2d, 0x2c, 0x01, 0x44, 0x28, 0x0b, 0x26, 0x97, 0x0b, 0x30, + 0xe7, 0x44, 0xd8, 0xe1, 0x42, 0x70, 0x32, 0xb3, +}; +static const unsigned char kat2356_nonce[] = {0}; +static const unsigned char kat2356_persstr[] = {0}; +static const unsigned char kat2356_entropyinreseed[] = { + 0x4c, 0x56, 0xb8, 0x4e, 0x97, 0xa3, 0x75, 0xd8, 0x32, 0xe9, 0xd7, 0x41, + 0x3b, 0xa3, 0xc6, 0x20, 0xeb, 0xfd, 0x0e, 0x6b, 0x10, 0x61, 0xed, 0x2b, + 0x59, 0x36, 0xe6, 0xe6, 0xda, 0x9d, 0xae, 0x99, +}; +static const unsigned char kat2356_addinreseed[] = { + 0xa4, 0xe9, 0x43, 0x3b, 0xf4, 0xb9, 0x48, 0xd3, 0x60, 0x3b, 0x5d, 0xac, + 0xb1, 0x5a, 0x66, 0xd1, 0xa2, 0x49, 0x10, 0x4d, 0x39, 0x20, 0x55, 0x39, + 0x25, 0x53, 0xf4, 0x8e, 0x92, 0x67, 0xb3, 0xe8, +}; +static const unsigned char kat2356_addin0[] = { + 0x62, 0x4c, 0xc3, 0x86, 0xd7, 0x20, 0x4a, 0x70, 0xab, 0x42, 0x27, 0x74, + 0x8c, 0xe2, 0x06, 0xb0, 0xad, 0xee, 0x59, 0xb1, 0x9e, 0x42, 0xdf, 0x52, + 0xe8, 0xc8, 0xca, 0x06, 0xb8, 0x81, 0xce, 0x60, +}; +static const unsigned char kat2356_addin1[] = { + 0xb0, 0x24, 0xf8, 0xa6, 0x09, 0xe4, 0xa0, 0xe0, 0x21, 0x4a, 0x22, 0x9d, + 0xcf, 0x65, 0xcf, 0xfd, 0xc2, 0x50, 0x8b, 0x4d, 0x19, 0x2c, 0x6f, 0x3c, + 0xb1, 0x64, 0x17, 0x60, 0xfa, 0xf8, 0x11, 0x31, +}; +static const unsigned char kat2356_retbits[] = { + 0xa5, 0x0e, 0x16, 0x43, 0x26, 0x48, 0x93, 0xec, 0x49, 0xbd, 0xb0, 0xb1, + 0xd9, 0xfd, 0x7b, 0x53, 0x25, 0x61, 0xf8, 0x32, 0x56, 0xfb, 0x34, 0x21, + 0xb1, 0x30, 0x30, 0xdf, 0xdb, 0x3f, 0xf2, 0xe0, 0xab, 0xb6, 0x82, 0x82, + 0xf5, 0x75, 0x74, 0x18, 0xcd, 0x1f, 0xfb, 0x16, 0x93, 0x24, 0x55, 0xed, + 0x03, 0x8a, 0x85, 0x65, 0xc3, 0x80, 0xc5, 0x81, 0xeb, 0x5d, 0x90, 0xb0, + 0x8f, 0x06, 0xbb, 0x13, +}; +static const struct drbg_kat_pr_false kat2356_t = { + 0, kat2356_entropyin, kat2356_nonce, kat2356_persstr, + kat2356_entropyinreseed, kat2356_addinreseed, kat2356_addin0, + kat2356_addin1, kat2356_retbits +}; +static const struct drbg_kat kat2356 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2356_t +}; + +static const unsigned char kat2357_entropyin[] = { + 0xf1, 0x90, 0xfc, 0x84, 0x71, 0x3f, 0x16, 0x33, 0x7e, 0x9b, 0x96, 0xdf, + 0x5b, 0x1f, 0x8a, 0x65, 0x87, 0xda, 0x6b, 0x0f, 0xcf, 0x07, 0xf5, 0xef, + 0xee, 0xed, 0xe0, 0x04, 0x03, 0x21, 0x47, 0x62, +}; +static const unsigned char kat2357_nonce[] = {0}; +static const unsigned char kat2357_persstr[] = {0}; +static const unsigned char kat2357_entropyinreseed[] = { + 0xb9, 0xb5, 0x85, 0x94, 0x83, 0x9f, 0x11, 0x7b, 0x7b, 0x4b, 0x40, 0x13, + 0x69, 0x11, 0x50, 0x1a, 0x60, 0x3c, 0x78, 0x20, 0x71, 0xa6, 0xbb, 0x05, + 0x71, 0xf4, 0x4e, 0x84, 0xfd, 0x5b, 0x7d, 0x1b, +}; +static const unsigned char kat2357_addinreseed[] = { + 0xe5, 0xc2, 0x90, 0x91, 0x0d, 0x48, 0x41, 0x1a, 0xf2, 0x29, 0x23, 0xc6, + 0x8b, 0x1a, 0xc6, 0x11, 0xd6, 0x4f, 0x8d, 0x88, 0x92, 0x01, 0x53, 0x69, + 0x22, 0xa2, 0xe2, 0x29, 0xe6, 0xbe, 0x27, 0xe3, +}; +static const unsigned char kat2357_addin0[] = { + 0xc7, 0xa3, 0xee, 0x13, 0xe2, 0x8e, 0xf7, 0x1e, 0xa5, 0xb2, 0x1c, 0x51, + 0x3f, 0xdb, 0x57, 0x01, 0xcc, 0xa6, 0xcd, 0x55, 0xbf, 0x3c, 0x2e, 0xc8, + 0x5c, 0x90, 0xd1, 0xea, 0x6e, 0xba, 0x5b, 0x28, +}; +static const unsigned char kat2357_addin1[] = { + 0xce, 0xd4, 0xba, 0xd6, 0xc4, 0xb2, 0xff, 0xd2, 0x2c, 0x1a, 0xd1, 0x6a, + 0x31, 0x4c, 0x65, 0x88, 0x69, 0x2a, 0xfe, 0x2a, 0xbf, 0xff, 0x20, 0xfa, + 0xe5, 0xa9, 0xde, 0xb7, 0xaa, 0x9f, 0x03, 0xb3, +}; +static const unsigned char kat2357_retbits[] = { + 0xf3, 0xad, 0xa6, 0xbc, 0x28, 0x8c, 0xbc, 0x98, 0xe4, 0x15, 0x42, 0xfe, + 0xc9, 0x89, 0xf2, 0xc2, 0x62, 0xd5, 0x68, 0xd9, 0x19, 0x8a, 0xb6, 0x29, + 0x64, 0x47, 0x71, 0xcd, 0x13, 0x02, 0xfe, 0x28, 0x56, 0x19, 0xb5, 0x80, + 0xc9, 0xfd, 0x42, 0xc5, 0xf0, 0x58, 0x17, 0x87, 0xc9, 0x02, 0xbc, 0x07, + 0xda, 0x1b, 0x5f, 0x3d, 0xbf, 0x34, 0xd8, 0x55, 0x0b, 0x8a, 0x71, 0x73, + 0x9d, 0x4a, 0xfa, 0x9d, +}; +static const struct drbg_kat_pr_false kat2357_t = { + 1, kat2357_entropyin, kat2357_nonce, kat2357_persstr, + kat2357_entropyinreseed, kat2357_addinreseed, kat2357_addin0, + kat2357_addin1, kat2357_retbits +}; +static const struct drbg_kat kat2357 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2357_t +}; + +static const unsigned char kat2358_entropyin[] = { + 0xd8, 0xad, 0xbb, 0xd7, 0x93, 0x35, 0xed, 0x67, 0x98, 0xd2, 0xb6, 0x6a, + 0x2e, 0xd1, 0xbd, 0x06, 0x8b, 0xfb, 0x69, 0xe2, 0xfc, 0xc1, 0xc0, 0x20, + 0x73, 0xf6, 0x0a, 0x09, 0x20, 0x08, 0xc8, 0x80, +}; +static const unsigned char kat2358_nonce[] = {0}; +static const unsigned char kat2358_persstr[] = {0}; +static const unsigned char kat2358_entropyinreseed[] = { + 0x13, 0x90, 0x34, 0x30, 0x42, 0xb1, 0xff, 0xa4, 0xab, 0x4e, 0xb5, 0xfc, + 0xfb, 0x8b, 0xc7, 0x24, 0x7e, 0xc5, 0x61, 0xc5, 0x2e, 0x47, 0x37, 0xaf, + 0xd7, 0x55, 0xba, 0x06, 0x42, 0x8d, 0xb2, 0x16, +}; +static const unsigned char kat2358_addinreseed[] = { + 0xa1, 0x08, 0x09, 0x7a, 0xa7, 0x2c, 0xf2, 0xf6, 0x7b, 0x72, 0x55, 0x8a, + 0x83, 0xdc, 0xa4, 0x86, 0x25, 0x0d, 0x26, 0x5e, 0x74, 0x8a, 0xe6, 0x80, + 0x81, 0x5c, 0xba, 0xea, 0x9b, 0x04, 0x35, 0xb7, +}; +static const unsigned char kat2358_addin0[] = { + 0x65, 0x15, 0x45, 0x61, 0xff, 0xe9, 0x50, 0xe1, 0xbf, 0xb3, 0xad, 0xc1, + 0x1e, 0xbe, 0x73, 0x2f, 0x66, 0x08, 0xe0, 0xbd, 0x79, 0xdf, 0x4c, 0x38, + 0x4f, 0x8f, 0x04, 0xa2, 0x86, 0x5b, 0xc7, 0xed, +}; +static const unsigned char kat2358_addin1[] = { + 0xe1, 0x72, 0xbc, 0x2a, 0x93, 0x41, 0x22, 0xec, 0x9d, 0xb5, 0x56, 0x67, + 0xf4, 0xd4, 0x47, 0x4f, 0xc6, 0x67, 0xfb, 0x56, 0xb3, 0x43, 0xc0, 0x6f, + 0x13, 0xd8, 0x33, 0x00, 0x6a, 0xcb, 0xbe, 0x38, +}; +static const unsigned char kat2358_retbits[] = { + 0x8b, 0x29, 0xb1, 0x1b, 0x59, 0xb4, 0x90, 0xec, 0x84, 0xa2, 0x55, 0x3c, + 0xef, 0x26, 0x89, 0xf1, 0x4f, 0xeb, 0xb7, 0xa2, 0x81, 0x90, 0x41, 0xf5, + 0x1f, 0xb8, 0x2b, 0x24, 0x65, 0x2a, 0x4b, 0xd5, 0xec, 0x80, 0xd0, 0xd0, + 0x9c, 0x98, 0x31, 0xa7, 0x3d, 0x03, 0x3f, 0x8c, 0xe4, 0x35, 0xee, 0x72, + 0xcd, 0x22, 0x61, 0x95, 0xd7, 0x7e, 0xe0, 0xb2, 0x2b, 0x51, 0x29, 0x5b, + 0xb4, 0x4a, 0x17, 0xd1, +}; +static const struct drbg_kat_pr_false kat2358_t = { + 2, kat2358_entropyin, kat2358_nonce, kat2358_persstr, + kat2358_entropyinreseed, kat2358_addinreseed, kat2358_addin0, + kat2358_addin1, kat2358_retbits +}; +static const struct drbg_kat kat2358 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2358_t +}; + +static const unsigned char kat2359_entropyin[] = { + 0x69, 0xe1, 0xff, 0x29, 0xac, 0xba, 0x36, 0xe1, 0x9e, 0xa1, 0x89, 0x3c, + 0xfa, 0xc8, 0x89, 0xd1, 0x89, 0x02, 0x22, 0xbf, 0x0c, 0x84, 0xc1, 0x5b, + 0x9f, 0xee, 0x62, 0x52, 0x39, 0x3d, 0x0c, 0xbe, +}; +static const unsigned char kat2359_nonce[] = {0}; +static const unsigned char kat2359_persstr[] = {0}; +static const unsigned char kat2359_entropyinreseed[] = { + 0xc1, 0xe5, 0xa2, 0x1d, 0x4a, 0x52, 0x45, 0x9c, 0x08, 0x52, 0x60, 0x17, + 0x7b, 0x0e, 0xee, 0x87, 0x13, 0xdf, 0x05, 0x8d, 0x70, 0x6f, 0x45, 0xf9, + 0xb6, 0x16, 0xf4, 0x90, 0x26, 0x16, 0x9e, 0x0a, +}; +static const unsigned char kat2359_addinreseed[] = { + 0xe9, 0x30, 0xa2, 0xa1, 0x01, 0xde, 0x4f, 0xda, 0x42, 0x87, 0x8f, 0xd1, + 0x91, 0xf7, 0x33, 0x74, 0xc1, 0x20, 0x54, 0x6a, 0x88, 0xc8, 0x42, 0xfd, + 0xf6, 0x45, 0xc3, 0xeb, 0x11, 0xc0, 0x4b, 0xec, +}; +static const unsigned char kat2359_addin0[] = { + 0xd8, 0xdd, 0x0e, 0x74, 0x9f, 0x6c, 0xc4, 0x9a, 0x60, 0x49, 0xe9, 0x51, + 0x4c, 0x5c, 0xe6, 0x09, 0x30, 0x2f, 0x56, 0x04, 0x0e, 0x38, 0x3f, 0xf5, + 0x8b, 0x8b, 0x31, 0x86, 0x9a, 0xb6, 0xa4, 0xe4, +}; +static const unsigned char kat2359_addin1[] = { + 0x07, 0x86, 0xf9, 0xe0, 0xad, 0x87, 0x76, 0x4e, 0xa6, 0x69, 0xaa, 0x8b, + 0x1b, 0x76, 0x85, 0xfe, 0xb7, 0x7e, 0x30, 0x94, 0x34, 0x36, 0x02, 0xc7, + 0x3f, 0x68, 0xb8, 0x4e, 0x48, 0xfc, 0x4d, 0xaf, +}; +static const unsigned char kat2359_retbits[] = { + 0x4e, 0x6a, 0x71, 0x34, 0xf4, 0x95, 0x72, 0xfd, 0x08, 0xce, 0xc8, 0x5c, + 0x8b, 0x90, 0x13, 0x68, 0x48, 0x82, 0x4c, 0xd3, 0x14, 0x2b, 0x36, 0x1a, + 0xe7, 0x0d, 0xbb, 0x80, 0xa3, 0x3a, 0x54, 0x49, 0x88, 0x12, 0xe7, 0x34, + 0xa8, 0x7c, 0x4d, 0x2d, 0xb9, 0xb8, 0xc1, 0x77, 0x6d, 0x6d, 0xa7, 0x59, + 0x3f, 0x98, 0xa5, 0xfb, 0x1d, 0xf9, 0x89, 0x2a, 0x3f, 0xdd, 0x6f, 0x12, + 0xb5, 0x53, 0xa5, 0xe7, +}; +static const struct drbg_kat_pr_false kat2359_t = { + 3, kat2359_entropyin, kat2359_nonce, kat2359_persstr, + kat2359_entropyinreseed, kat2359_addinreseed, kat2359_addin0, + kat2359_addin1, kat2359_retbits +}; +static const struct drbg_kat kat2359 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2359_t +}; + +static const unsigned char kat2360_entropyin[] = { + 0xe5, 0x66, 0x7c, 0x09, 0x01, 0x32, 0x40, 0xd7, 0xde, 0xd3, 0xed, 0xa9, + 0xce, 0x15, 0x77, 0x7e, 0x0a, 0x1d, 0x08, 0xe2, 0xfa, 0x13, 0x80, 0x0e, + 0xc2, 0xab, 0x17, 0x5e, 0x35, 0x12, 0x9e, 0x2a, +}; +static const unsigned char kat2360_nonce[] = {0}; +static const unsigned char kat2360_persstr[] = {0}; +static const unsigned char kat2360_entropyinreseed[] = { + 0xdd, 0xe3, 0x65, 0x96, 0xca, 0xf0, 0x7b, 0xae, 0xb4, 0x2c, 0x6a, 0x73, + 0xc7, 0xb7, 0x21, 0xa6, 0x37, 0x13, 0x2c, 0xdc, 0x78, 0xe0, 0x68, 0xf7, + 0x0f, 0x47, 0xc7, 0x70, 0x28, 0x57, 0xa9, 0x6c, +}; +static const unsigned char kat2360_addinreseed[] = { + 0xd5, 0x3a, 0xea, 0x10, 0x3a, 0x37, 0x60, 0x04, 0x09, 0x15, 0xd8, 0x68, + 0x4f, 0xcf, 0xff, 0xc7, 0xd7, 0x77, 0xa8, 0x7b, 0x0c, 0x23, 0x16, 0x9c, + 0x4d, 0xea, 0xc0, 0xb6, 0x86, 0xec, 0x66, 0x5a, +}; +static const unsigned char kat2360_addin0[] = { + 0x8b, 0xd6, 0x7a, 0x30, 0xa8, 0xc3, 0x7b, 0x95, 0x6d, 0x20, 0xae, 0x76, + 0x19, 0x90, 0x87, 0xee, 0x4b, 0x9a, 0x7f, 0x5e, 0x56, 0xf5, 0xe6, 0x31, + 0xc9, 0xc5, 0x17, 0x0a, 0x9b, 0x2c, 0x51, 0xd0, +}; +static const unsigned char kat2360_addin1[] = { + 0x32, 0x5b, 0xc3, 0x38, 0x6f, 0xcb, 0x93, 0xc3, 0x8a, 0x20, 0x88, 0xb0, + 0x4b, 0xe8, 0xbd, 0xc0, 0x08, 0x0c, 0x51, 0xba, 0x7e, 0xc1, 0x87, 0x93, + 0xfc, 0xc4, 0x6e, 0x0d, 0x41, 0xc7, 0xa5, 0xc9, +}; +static const unsigned char kat2360_retbits[] = { + 0x06, 0x91, 0xa7, 0x1b, 0x34, 0x7f, 0x20, 0x09, 0x48, 0x81, 0xf0, 0xf1, + 0x7f, 0x0e, 0xf6, 0x44, 0x87, 0x6b, 0x75, 0xcf, 0x8c, 0x41, 0xda, 0x01, + 0x52, 0x4c, 0x63, 0x62, 0xc4, 0x1b, 0xec, 0x53, 0xb7, 0x47, 0x9e, 0xb3, + 0x91, 0xdb, 0xe6, 0x33, 0x86, 0xa3, 0xab, 0x4d, 0x38, 0xf7, 0x44, 0xbb, + 0x26, 0xcd, 0x6f, 0x25, 0x75, 0x06, 0x40, 0xb7, 0x41, 0xed, 0x1b, 0x8b, + 0xcf, 0x57, 0x10, 0x88, +}; +static const struct drbg_kat_pr_false kat2360_t = { + 4, kat2360_entropyin, kat2360_nonce, kat2360_persstr, + kat2360_entropyinreseed, kat2360_addinreseed, kat2360_addin0, + kat2360_addin1, kat2360_retbits +}; +static const struct drbg_kat kat2360 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2360_t +}; + +static const unsigned char kat2361_entropyin[] = { + 0xde, 0x44, 0x11, 0xd7, 0x47, 0x2a, 0x27, 0x6d, 0xde, 0x6f, 0xc3, 0xe1, + 0xbf, 0xbb, 0x66, 0x2f, 0xd0, 0x4d, 0x1b, 0xe1, 0xfd, 0x7b, 0xe5, 0x91, + 0xbc, 0xf6, 0x29, 0x48, 0x6b, 0xcd, 0x3d, 0x32, +}; +static const unsigned char kat2361_nonce[] = {0}; +static const unsigned char kat2361_persstr[] = {0}; +static const unsigned char kat2361_entropyinreseed[] = { + 0x25, 0xfb, 0x6a, 0xe4, 0x9a, 0xe3, 0xa7, 0x12, 0x5e, 0xfd, 0xf4, 0xc5, + 0xed, 0x92, 0xf7, 0x87, 0xba, 0xc2, 0xbe, 0xdd, 0x88, 0x59, 0x5b, 0xd7, + 0xb5, 0x5f, 0xae, 0xb7, 0xb9, 0x5e, 0xc7, 0xf8, +}; +static const unsigned char kat2361_addinreseed[] = { + 0x16, 0xf3, 0x98, 0x82, 0xd9, 0x48, 0x29, 0x3a, 0x74, 0x29, 0xae, 0x1f, + 0xf2, 0x0b, 0x51, 0x9f, 0x28, 0xf7, 0xe0, 0x22, 0x15, 0x02, 0x6b, 0x96, + 0xa2, 0xc0, 0x4e, 0x3c, 0xef, 0x56, 0x00, 0x4d, +}; +static const unsigned char kat2361_addin0[] = { + 0xda, 0x63, 0x2e, 0xeb, 0x6f, 0x32, 0x6b, 0x0a, 0xe5, 0x5e, 0x18, 0xc6, + 0x9d, 0xb5, 0xc7, 0x97, 0x1b, 0xf9, 0x67, 0x39, 0xfa, 0xf1, 0xa7, 0x3c, + 0x15, 0x23, 0x92, 0xd5, 0xa6, 0xee, 0xff, 0xc5, +}; +static const unsigned char kat2361_addin1[] = { + 0x00, 0x55, 0xb4, 0xcd, 0xd1, 0x09, 0x3b, 0x1b, 0xe3, 0x20, 0x9e, 0xb6, + 0x56, 0x19, 0x37, 0x9d, 0x58, 0xc2, 0xf2, 0xe9, 0x18, 0xb0, 0x53, 0xf2, + 0xc0, 0x7c, 0xe6, 0x47, 0xa6, 0x79, 0x78, 0x20, +}; +static const unsigned char kat2361_retbits[] = { + 0xc0, 0x23, 0x2b, 0x72, 0x08, 0x78, 0x44, 0xcf, 0x62, 0xd3, 0x00, 0x4a, + 0x59, 0xae, 0x36, 0x85, 0xaf, 0x71, 0x56, 0x57, 0x54, 0x7b, 0x91, 0xbd, + 0xd5, 0x41, 0x16, 0x57, 0xca, 0xab, 0x20, 0xeb, 0x76, 0x6b, 0x04, 0x50, + 0x61, 0x06, 0xbc, 0x4b, 0x9f, 0x7a, 0x55, 0x40, 0xdd, 0xc0, 0xa3, 0x83, + 0x77, 0xaf, 0x0c, 0x28, 0xc7, 0xf4, 0x0e, 0x84, 0xb7, 0x68, 0x11, 0x43, + 0x17, 0x27, 0x9a, 0xde, +}; +static const struct drbg_kat_pr_false kat2361_t = { + 5, kat2361_entropyin, kat2361_nonce, kat2361_persstr, + kat2361_entropyinreseed, kat2361_addinreseed, kat2361_addin0, + kat2361_addin1, kat2361_retbits +}; +static const struct drbg_kat kat2361 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2361_t +}; + +static const unsigned char kat2362_entropyin[] = { + 0x61, 0xef, 0x80, 0xe8, 0x37, 0x2b, 0x80, 0x19, 0x5a, 0x4a, 0x16, 0xd0, + 0x5a, 0x73, 0x73, 0x12, 0xa7, 0xd5, 0x67, 0x68, 0x0a, 0x83, 0x4e, 0xf7, + 0x0a, 0x7d, 0x6a, 0xdb, 0x9d, 0x01, 0x64, 0xa4, +}; +static const unsigned char kat2362_nonce[] = {0}; +static const unsigned char kat2362_persstr[] = {0}; +static const unsigned char kat2362_entropyinreseed[] = { + 0xd7, 0x9f, 0x8c, 0xbb, 0x3f, 0xfd, 0xa9, 0x58, 0x31, 0x51, 0xb9, 0x95, + 0x07, 0xeb, 0x85, 0x6b, 0x04, 0x91, 0x13, 0x35, 0x9e, 0x3b, 0xe0, 0x0d, + 0x4f, 0x67, 0x7c, 0x61, 0xc2, 0x7d, 0x77, 0x29, +}; +static const unsigned char kat2362_addinreseed[] = { + 0xb9, 0x57, 0x10, 0x77, 0xcd, 0x2a, 0xe0, 0x0f, 0xb1, 0xc3, 0x21, 0x5d, + 0x09, 0x17, 0xc8, 0x3f, 0x8f, 0xa8, 0xaa, 0x47, 0x1b, 0xd6, 0xe0, 0x4a, + 0xdc, 0x61, 0x27, 0x87, 0xac, 0x5e, 0x05, 0xc8, +}; +static const unsigned char kat2362_addin0[] = { + 0xdc, 0x6e, 0x9e, 0x7f, 0x58, 0x6a, 0xb6, 0x31, 0xd2, 0x91, 0xb3, 0x47, + 0x40, 0x74, 0x30, 0xd8, 0x89, 0x14, 0x7d, 0x27, 0x32, 0xd0, 0x17, 0xff, + 0xb5, 0xba, 0xfd, 0x3e, 0x6f, 0x44, 0x9d, 0x96, +}; +static const unsigned char kat2362_addin1[] = { + 0x7f, 0xe5, 0x92, 0x2e, 0x85, 0xe5, 0x19, 0x90, 0xef, 0xa6, 0xd3, 0x99, + 0x0e, 0x59, 0xd8, 0x2e, 0x15, 0x80, 0xcd, 0xec, 0x91, 0xb5, 0x55, 0x0c, + 0x10, 0x53, 0xfd, 0x61, 0x41, 0x7d, 0x44, 0xf4, +}; +static const unsigned char kat2362_retbits[] = { + 0x61, 0x5c, 0xbe, 0x15, 0x0c, 0xb8, 0x5d, 0xb0, 0x42, 0x61, 0x42, 0xbd, + 0x08, 0x84, 0xa6, 0x74, 0x47, 0xeb, 0x4f, 0xfa, 0xa7, 0x59, 0xd4, 0xc3, + 0x0c, 0xa5, 0xbe, 0xd2, 0xdd, 0x1c, 0xad, 0x86, 0x9c, 0xb0, 0x1e, 0x57, + 0x85, 0x77, 0xc4, 0xa0, 0x64, 0xd5, 0x9d, 0x55, 0x0e, 0xf4, 0x7f, 0x7e, + 0xe5, 0x94, 0xfa, 0xc2, 0xbd, 0x02, 0xf8, 0x7b, 0x93, 0x30, 0x17, 0xa9, + 0x8b, 0x15, 0x9d, 0xab, +}; +static const struct drbg_kat_pr_false kat2362_t = { + 6, kat2362_entropyin, kat2362_nonce, kat2362_persstr, + kat2362_entropyinreseed, kat2362_addinreseed, kat2362_addin0, + kat2362_addin1, kat2362_retbits +}; +static const struct drbg_kat kat2362 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2362_t +}; + +static const unsigned char kat2363_entropyin[] = { + 0x92, 0x74, 0x71, 0x62, 0x79, 0xd0, 0xc6, 0x06, 0x7b, 0x95, 0x5f, 0x30, + 0x62, 0x7b, 0xa1, 0x84, 0x27, 0x62, 0x02, 0x17, 0x02, 0x68, 0x30, 0x5a, + 0xce, 0x84, 0x66, 0xf9, 0x3b, 0xde, 0x9e, 0x35, +}; +static const unsigned char kat2363_nonce[] = {0}; +static const unsigned char kat2363_persstr[] = {0}; +static const unsigned char kat2363_entropyinreseed[] = { + 0x71, 0x08, 0x6e, 0xed, 0x40, 0x3d, 0x6c, 0x22, 0x1b, 0xe2, 0xc5, 0xeb, + 0x06, 0x41, 0xec, 0xac, 0x4f, 0x78, 0x7f, 0x14, 0x47, 0xad, 0x90, 0x86, + 0x41, 0xcf, 0x37, 0xe4, 0x01, 0x53, 0x41, 0xad, +}; +static const unsigned char kat2363_addinreseed[] = { + 0x99, 0xde, 0x60, 0x6c, 0x0a, 0xfa, 0x62, 0x39, 0xa3, 0xe3, 0x7b, 0x8c, + 0x37, 0xea, 0x37, 0xe2, 0xce, 0xbc, 0xea, 0x7c, 0x0b, 0xee, 0x31, 0x7c, + 0x63, 0x83, 0x6f, 0x3a, 0x85, 0x5f, 0xb8, 0x48, +}; +static const unsigned char kat2363_addin0[] = { + 0x26, 0xad, 0xd2, 0xa6, 0x86, 0x89, 0x33, 0xac, 0x40, 0x21, 0x2f, 0xad, + 0x03, 0xee, 0x33, 0x56, 0x1b, 0xd1, 0x12, 0x12, 0xab, 0x93, 0x41, 0x4a, + 0x8e, 0x57, 0xc1, 0x72, 0x13, 0x8e, 0x57, 0x18, +}; +static const unsigned char kat2363_addin1[] = { + 0x83, 0x34, 0xfe, 0xec, 0x63, 0x76, 0x5e, 0x7a, 0x23, 0x17, 0x5f, 0x6b, + 0xba, 0x6f, 0x3e, 0x77, 0xe1, 0x58, 0xa7, 0x33, 0x1c, 0x37, 0x9a, 0xf9, + 0x6b, 0xa9, 0xc0, 0x7b, 0x35, 0xa7, 0xb8, 0x64, +}; +static const unsigned char kat2363_retbits[] = { + 0x91, 0x23, 0xd4, 0x13, 0x75, 0xb1, 0xc7, 0x84, 0xf5, 0xcb, 0x67, 0x16, + 0x0c, 0x81, 0x67, 0x21, 0xdb, 0xd0, 0x5c, 0xeb, 0xfd, 0xe1, 0xae, 0xea, + 0x5b, 0xe2, 0x4c, 0xed, 0xc4, 0x9b, 0xf3, 0x50, 0x18, 0xa2, 0x53, 0xf7, + 0x23, 0x6c, 0x36, 0x2d, 0x92, 0x92, 0x90, 0x96, 0xdc, 0xa9, 0x5a, 0x07, + 0xa4, 0xd0, 0x1d, 0xfb, 0x15, 0x9b, 0x8f, 0x28, 0x05, 0x56, 0x7d, 0x57, + 0xa0, 0x69, 0x04, 0xff, +}; +static const struct drbg_kat_pr_false kat2363_t = { + 7, kat2363_entropyin, kat2363_nonce, kat2363_persstr, + kat2363_entropyinreseed, kat2363_addinreseed, kat2363_addin0, + kat2363_addin1, kat2363_retbits +}; +static const struct drbg_kat kat2363 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2363_t +}; + +static const unsigned char kat2364_entropyin[] = { + 0x87, 0xbc, 0x9e, 0x07, 0xb0, 0x0c, 0x20, 0x2f, 0x00, 0x26, 0x4f, 0x4e, + 0xd0, 0x9a, 0x41, 0xa8, 0x7f, 0x3b, 0xc7, 0x9a, 0x46, 0x7c, 0xf6, 0x74, + 0x6b, 0x0a, 0x79, 0x2d, 0x3d, 0xe1, 0xf3, 0xd2, +}; +static const unsigned char kat2364_nonce[] = {0}; +static const unsigned char kat2364_persstr[] = {0}; +static const unsigned char kat2364_entropyinreseed[] = { + 0x5d, 0x06, 0xe5, 0x1d, 0xcd, 0x29, 0x2b, 0xf5, 0xc6, 0x19, 0x7b, 0x72, + 0x71, 0xa4, 0x47, 0xfb, 0x5d, 0x8f, 0xfb, 0xc8, 0x4a, 0x89, 0x61, 0x14, + 0xc1, 0x42, 0xd2, 0x04, 0x12, 0xf1, 0x14, 0xdf, +}; +static const unsigned char kat2364_addinreseed[] = { + 0x2d, 0xd5, 0x3c, 0x78, 0x15, 0x60, 0xda, 0x3f, 0x01, 0xa1, 0x3c, 0xa7, + 0xb0, 0x73, 0xf0, 0x88, 0xd1, 0xe7, 0x54, 0xb9, 0xe8, 0xcc, 0x97, 0xbd, + 0x4d, 0xe2, 0xa1, 0xd6, 0x8a, 0x34, 0x0b, 0x6f, +}; +static const unsigned char kat2364_addin0[] = { + 0x7b, 0x5a, 0xf2, 0x54, 0xbe, 0xfe, 0xad, 0x4f, 0x53, 0x1b, 0xda, 0xe0, + 0x9e, 0x7f, 0x3c, 0x98, 0xe7, 0xa6, 0x6a, 0x2d, 0xd2, 0x43, 0xf9, 0xba, + 0x55, 0x67, 0x0c, 0xd5, 0xf4, 0x83, 0xd8, 0x9b, +}; +static const unsigned char kat2364_addin1[] = { + 0x7a, 0x7b, 0x44, 0xec, 0x90, 0x06, 0xbf, 0xe4, 0x02, 0x78, 0x25, 0x96, + 0xd5, 0xa5, 0x00, 0xd4, 0x58, 0x12, 0xd2, 0x09, 0x65, 0x1c, 0x3e, 0x26, + 0x0d, 0x80, 0x49, 0x27, 0x0c, 0xc9, 0xed, 0x51, +}; +static const unsigned char kat2364_retbits[] = { + 0x97, 0x2c, 0x6e, 0x29, 0x19, 0xbc, 0xc5, 0x82, 0x7b, 0xe7, 0x43, 0x5d, + 0xbf, 0xe8, 0x6b, 0xe2, 0x57, 0x44, 0x66, 0x1d, 0xef, 0x51, 0x34, 0x7e, + 0xc6, 0x75, 0x47, 0xf3, 0xd8, 0x74, 0x89, 0x68, 0x7b, 0x79, 0xfc, 0x7d, + 0xae, 0xfd, 0x9b, 0xb8, 0x25, 0x3c, 0x4f, 0x8f, 0x58, 0x86, 0xca, 0x93, + 0x3a, 0x03, 0x82, 0x5f, 0x8d, 0xb6, 0xca, 0x7f, 0x07, 0x8c, 0x6b, 0xfd, + 0xaa, 0x77, 0xe8, 0xc4, +}; +static const struct drbg_kat_pr_false kat2364_t = { + 8, kat2364_entropyin, kat2364_nonce, kat2364_persstr, + kat2364_entropyinreseed, kat2364_addinreseed, kat2364_addin0, + kat2364_addin1, kat2364_retbits +}; +static const struct drbg_kat kat2364 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2364_t +}; + +static const unsigned char kat2365_entropyin[] = { + 0xdd, 0xfe, 0xb8, 0x87, 0xc7, 0xee, 0xe3, 0xbb, 0x4e, 0x9e, 0x34, 0x79, + 0xbd, 0xaa, 0x09, 0x9a, 0xd5, 0x84, 0xce, 0x4d, 0xf4, 0xfc, 0x2c, 0x68, + 0xc1, 0x9f, 0x3e, 0xb9, 0x8f, 0x60, 0xbd, 0x62, +}; +static const unsigned char kat2365_nonce[] = {0}; +static const unsigned char kat2365_persstr[] = {0}; +static const unsigned char kat2365_entropyinreseed[] = { + 0x14, 0x89, 0x3d, 0x56, 0x42, 0xb8, 0xc4, 0xef, 0x27, 0x89, 0xee, 0x62, + 0xbb, 0xc7, 0xef, 0xa1, 0xc7, 0xc8, 0x24, 0xb8, 0x52, 0xe5, 0xe3, 0x20, + 0x19, 0x11, 0xb1, 0x22, 0x8b, 0x1e, 0xc5, 0x34, +}; +static const unsigned char kat2365_addinreseed[] = { + 0xcc, 0x6c, 0x7c, 0xf7, 0x96, 0x6c, 0x71, 0x8b, 0x0f, 0xc9, 0x8a, 0x77, + 0x30, 0xbd, 0xfd, 0xec, 0xef, 0xef, 0x47, 0x12, 0xed, 0x4b, 0xb0, 0xc5, + 0xcc, 0x3d, 0x59, 0x23, 0x44, 0x36, 0xab, 0x8f, +}; +static const unsigned char kat2365_addin0[] = { + 0x98, 0x2d, 0xa5, 0xa4, 0x19, 0xb9, 0x45, 0x6a, 0x66, 0xf3, 0xa7, 0x60, + 0x3b, 0x42, 0x26, 0x0a, 0x9c, 0x4c, 0x90, 0xb7, 0xb9, 0x6c, 0x20, 0xf8, + 0x98, 0xd1, 0x3a, 0xe6, 0x4a, 0x1b, 0xc3, 0xa6, +}; +static const unsigned char kat2365_addin1[] = { + 0xa9, 0x73, 0xb8, 0x52, 0xc1, 0x35, 0xdf, 0x72, 0x64, 0x45, 0x36, 0x48, + 0xf0, 0x98, 0xbc, 0xde, 0x47, 0x0a, 0x84, 0xd1, 0x9f, 0x64, 0x1b, 0x5b, + 0xef, 0xf0, 0x7c, 0xa6, 0x31, 0xb9, 0xa7, 0xc8, +}; +static const unsigned char kat2365_retbits[] = { + 0x8c, 0x30, 0x54, 0xa6, 0x9e, 0xe9, 0x00, 0x39, 0xb7, 0xcd, 0x6b, 0xb8, + 0x0a, 0x14, 0x60, 0x8a, 0x36, 0x6a, 0x3d, 0xb7, 0xce, 0x49, 0xaa, 0x9b, + 0xdf, 0xf1, 0xd0, 0x63, 0xc5, 0x4d, 0x9d, 0x6b, 0xe1, 0x1f, 0xe7, 0xb2, + 0x13, 0xce, 0x3b, 0xa2, 0x04, 0x43, 0xef, 0xd3, 0x84, 0xcc, 0xf0, 0x0f, + 0xec, 0xcc, 0x58, 0xef, 0x99, 0x28, 0x82, 0xc6, 0x65, 0x69, 0x85, 0xa3, + 0x1f, 0x30, 0x09, 0x69, +}; +static const struct drbg_kat_pr_false kat2365_t = { + 9, kat2365_entropyin, kat2365_nonce, kat2365_persstr, + kat2365_entropyinreseed, kat2365_addinreseed, kat2365_addin0, + kat2365_addin1, kat2365_retbits +}; +static const struct drbg_kat kat2365 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2365_t +}; + +static const unsigned char kat2366_entropyin[] = { + 0xfd, 0xb2, 0x7f, 0xa5, 0xd7, 0x6b, 0xff, 0x49, 0xb2, 0x04, 0xf4, 0xc8, + 0x83, 0x49, 0x3d, 0x48, 0x93, 0x6e, 0xb1, 0x2e, 0x27, 0x20, 0x54, 0xd5, + 0x6f, 0xbf, 0x53, 0x75, 0x5b, 0xaf, 0x08, 0x08, +}; +static const unsigned char kat2366_nonce[] = {0}; +static const unsigned char kat2366_persstr[] = {0}; +static const unsigned char kat2366_entropyinreseed[] = { + 0x59, 0x88, 0x04, 0xe3, 0xb0, 0xb2, 0x6e, 0x0b, 0xd4, 0xd8, 0x29, 0x2e, + 0xe5, 0x15, 0x06, 0xe0, 0x20, 0xc4, 0x23, 0x0b, 0x9d, 0x8e, 0xb1, 0x8d, + 0xee, 0x33, 0xbc, 0x6a, 0xc4, 0xd1, 0x1d, 0xb3, +}; +static const unsigned char kat2366_addinreseed[] = { + 0xae, 0x4d, 0x63, 0x6d, 0xac, 0xb2, 0x6e, 0x89, 0xb5, 0x77, 0x72, 0xd1, + 0x0c, 0x2b, 0xef, 0x88, 0xa4, 0xa9, 0xbe, 0x8d, 0x6c, 0x98, 0xd6, 0x59, + 0x72, 0x9a, 0x12, 0x0b, 0x00, 0xeb, 0xda, 0x5f, +}; +static const unsigned char kat2366_addin0[] = { + 0x8e, 0xca, 0x07, 0x50, 0xcc, 0x30, 0x6a, 0x30, 0x14, 0x82, 0x53, 0x94, + 0xa5, 0x80, 0x2b, 0x52, 0x73, 0x37, 0xef, 0x6f, 0x4c, 0x52, 0xc1, 0x67, + 0x9a, 0x82, 0xc9, 0x7b, 0x60, 0xa1, 0xb5, 0x93, +}; +static const unsigned char kat2366_addin1[] = { + 0xb1, 0x84, 0xd9, 0x2e, 0xb2, 0x95, 0x55, 0x92, 0xb1, 0x27, 0x7e, 0xbc, + 0xcf, 0xb3, 0x3b, 0xbc, 0x77, 0x6b, 0x46, 0xf3, 0x00, 0xc6, 0xf2, 0x3b, + 0xda, 0xf1, 0x8c, 0xab, 0x9b, 0xd3, 0x3c, 0xc4, +}; +static const unsigned char kat2366_retbits[] = { + 0x57, 0xed, 0x41, 0x6d, 0x11, 0x6c, 0x64, 0x4f, 0xac, 0x2f, 0x9d, 0xdb, + 0x54, 0xd3, 0xc6, 0x40, 0xae, 0xd6, 0xf6, 0x0d, 0xc6, 0x0d, 0x30, 0xc0, + 0xd8, 0xd7, 0xaa, 0xa4, 0x06, 0x44, 0x88, 0x22, 0x51, 0x82, 0x11, 0xff, + 0xf8, 0x2c, 0x09, 0x4c, 0x47, 0x14, 0xe1, 0xd7, 0x17, 0xc9, 0x33, 0xe2, + 0xd0, 0x50, 0x54, 0x75, 0x7e, 0x5d, 0x8b, 0x1a, 0x5e, 0x97, 0x9e, 0x6e, + 0x7a, 0x97, 0xaa, 0x2f, +}; +static const struct drbg_kat_pr_false kat2366_t = { + 10, kat2366_entropyin, kat2366_nonce, kat2366_persstr, + kat2366_entropyinreseed, kat2366_addinreseed, kat2366_addin0, + kat2366_addin1, kat2366_retbits +}; +static const struct drbg_kat kat2366 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2366_t +}; + +static const unsigned char kat2367_entropyin[] = { + 0x84, 0x3a, 0x90, 0x17, 0x9e, 0xb6, 0xe9, 0x5b, 0x37, 0x10, 0x4a, 0x22, + 0x11, 0xf0, 0xd7, 0x79, 0xff, 0x4a, 0x24, 0x4b, 0x35, 0xb3, 0xca, 0xb1, + 0x71, 0x0e, 0xef, 0x7c, 0x20, 0x72, 0xd6, 0x5a, +}; +static const unsigned char kat2367_nonce[] = {0}; +static const unsigned char kat2367_persstr[] = {0}; +static const unsigned char kat2367_entropyinreseed[] = { + 0xc7, 0x8d, 0xd1, 0xf6, 0x26, 0xe6, 0x4e, 0x84, 0x9f, 0x63, 0xf1, 0x8f, + 0xd6, 0x86, 0xa6, 0xf0, 0x38, 0x7f, 0xd2, 0xd8, 0x03, 0x97, 0x82, 0x62, + 0x7b, 0xcc, 0xe3, 0x6e, 0x12, 0x1d, 0x68, 0x16, +}; +static const unsigned char kat2367_addinreseed[] = { + 0xbd, 0xb6, 0x17, 0x5c, 0xc8, 0xec, 0xa6, 0x21, 0x57, 0x90, 0xdf, 0x0e, + 0x01, 0x07, 0x42, 0xc1, 0x6d, 0xbc, 0xd8, 0x43, 0x03, 0x19, 0x90, 0xd3, + 0x0c, 0xde, 0xd5, 0x67, 0xd1, 0x59, 0x70, 0xcb, +}; +static const unsigned char kat2367_addin0[] = { + 0xa8, 0xd3, 0x60, 0x71, 0x71, 0x77, 0xf6, 0x03, 0xbd, 0xc4, 0xc5, 0x0d, + 0xb6, 0x79, 0xeb, 0x97, 0x11, 0x4c, 0xc5, 0x56, 0xc7, 0x22, 0x00, 0x25, + 0xfc, 0x05, 0xd9, 0xfb, 0x2e, 0xbe, 0xf1, 0x3c, +}; +static const unsigned char kat2367_addin1[] = { + 0xcf, 0x95, 0x2c, 0xc4, 0xad, 0xae, 0xda, 0x8e, 0x5a, 0x33, 0x0f, 0xfe, + 0xa8, 0x6d, 0x1e, 0x1c, 0x4b, 0x4d, 0x3c, 0x95, 0x3d, 0xaf, 0xb3, 0x58, + 0x53, 0xbb, 0x30, 0xe8, 0xf0, 0xb2, 0xbc, 0x34, +}; +static const unsigned char kat2367_retbits[] = { + 0x7c, 0x6e, 0xfb, 0x2a, 0xef, 0x74, 0x91, 0xca, 0x50, 0x11, 0xe5, 0x65, + 0x78, 0x12, 0xc5, 0xf0, 0x6b, 0x67, 0x95, 0xcd, 0xc5, 0xb6, 0x13, 0xff, + 0xc4, 0x18, 0x3a, 0xeb, 0x7c, 0x8b, 0xfd, 0x10, 0xad, 0xa4, 0x6b, 0xc5, + 0x39, 0x6e, 0x24, 0xd8, 0x3e, 0x78, 0x17, 0xd7, 0xd9, 0x04, 0xd8, 0xd5, + 0xb7, 0xfb, 0x58, 0x07, 0xb4, 0x2f, 0xb3, 0xa3, 0xdb, 0xfe, 0xbc, 0x75, + 0xb5, 0x09, 0xf5, 0xdd, +}; +static const struct drbg_kat_pr_false kat2367_t = { + 11, kat2367_entropyin, kat2367_nonce, kat2367_persstr, + kat2367_entropyinreseed, kat2367_addinreseed, kat2367_addin0, + kat2367_addin1, kat2367_retbits +}; +static const struct drbg_kat kat2367 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2367_t +}; + +static const unsigned char kat2368_entropyin[] = { + 0xb0, 0x81, 0x8e, 0xf7, 0x5b, 0x9d, 0x0e, 0xe5, 0xac, 0x6d, 0x72, 0x3a, + 0xee, 0xdc, 0xe2, 0xac, 0x47, 0x33, 0xbe, 0x08, 0xae, 0x89, 0xb4, 0x71, + 0x21, 0x50, 0x99, 0xb3, 0x04, 0x60, 0x9a, 0x7d, +}; +static const unsigned char kat2368_nonce[] = {0}; +static const unsigned char kat2368_persstr[] = {0}; +static const unsigned char kat2368_entropyinreseed[] = { + 0xb5, 0x4d, 0x13, 0x80, 0x31, 0x05, 0xa7, 0x6f, 0x4b, 0x4f, 0x67, 0x32, + 0x9e, 0x63, 0x55, 0xd2, 0xcc, 0x48, 0xaf, 0x86, 0x67, 0x37, 0x90, 0xc5, + 0xc1, 0x7b, 0x03, 0xf8, 0x5b, 0x1c, 0x2e, 0x32, +}; +static const unsigned char kat2368_addinreseed[] = { + 0x9a, 0x8a, 0xbf, 0x49, 0x95, 0x03, 0x63, 0x3a, 0x7b, 0x35, 0xbe, 0x82, + 0x4c, 0x37, 0xc1, 0xa5, 0xd0, 0x20, 0x29, 0x14, 0xfe, 0x5c, 0xd2, 0xd8, + 0x51, 0xa2, 0xed, 0xa0, 0xbe, 0x7b, 0x7c, 0x6f, +}; +static const unsigned char kat2368_addin0[] = { + 0x6c, 0x60, 0xf5, 0xa6, 0x7b, 0x26, 0x22, 0xc8, 0xf5, 0x2a, 0xc1, 0x83, + 0x5a, 0x3f, 0x49, 0x0d, 0x6a, 0x89, 0x9e, 0x5c, 0x8d, 0xdd, 0x4b, 0xdb, + 0xe2, 0x8a, 0x32, 0xd0, 0x46, 0xbe, 0x7f, 0x1b, +}; +static const unsigned char kat2368_addin1[] = { + 0xc6, 0xc8, 0xbc, 0xaa, 0x53, 0x8a, 0xa5, 0x78, 0x3d, 0xb2, 0x5e, 0x63, + 0x00, 0x0c, 0x2a, 0xd2, 0x94, 0x4b, 0x62, 0x85, 0xed, 0x8d, 0x33, 0x80, + 0x86, 0x28, 0x60, 0xc7, 0x15, 0x27, 0x28, 0x43, +}; +static const unsigned char kat2368_retbits[] = { + 0x6c, 0x69, 0x25, 0x0d, 0x63, 0x55, 0x32, 0x28, 0xf9, 0xaf, 0x40, 0x19, + 0x86, 0xc6, 0x37, 0xd0, 0x1b, 0x97, 0xca, 0x9a, 0x4e, 0xf9, 0x81, 0x5b, + 0x70, 0x9d, 0x15, 0x89, 0x71, 0x75, 0xbb, 0x64, 0xd0, 0xda, 0x55, 0x83, + 0xbf, 0x0e, 0x43, 0xa6, 0x1a, 0x28, 0x31, 0x09, 0x5d, 0x30, 0xaa, 0x90, + 0x60, 0x33, 0xc5, 0x4a, 0xfb, 0xa2, 0x1d, 0x7f, 0x38, 0xf2, 0x27, 0x39, + 0x64, 0x48, 0x94, 0x47, +}; +static const struct drbg_kat_pr_false kat2368_t = { + 12, kat2368_entropyin, kat2368_nonce, kat2368_persstr, + kat2368_entropyinreseed, kat2368_addinreseed, kat2368_addin0, + kat2368_addin1, kat2368_retbits +}; +static const struct drbg_kat kat2368 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2368_t +}; + +static const unsigned char kat2369_entropyin[] = { + 0xce, 0xf0, 0x3d, 0x76, 0x60, 0x6e, 0x57, 0xac, 0xa2, 0x78, 0xcf, 0xf0, + 0x05, 0x1a, 0x83, 0x88, 0xcb, 0xe7, 0x29, 0x9f, 0x8a, 0xd3, 0xf7, 0x06, + 0x43, 0xa8, 0x57, 0x91, 0x8f, 0xee, 0x22, 0x60, +}; +static const unsigned char kat2369_nonce[] = {0}; +static const unsigned char kat2369_persstr[] = {0}; +static const unsigned char kat2369_entropyinreseed[] = { + 0x51, 0x7b, 0x42, 0x73, 0x09, 0x66, 0x48, 0xaf, 0xd6, 0x62, 0x3f, 0x49, + 0xfc, 0x40, 0xf1, 0x8d, 0xeb, 0xfe, 0xae, 0xfe, 0xf1, 0xe9, 0x58, 0x98, + 0xdf, 0x15, 0x6e, 0xff, 0xf2, 0xf2, 0x2b, 0xeb, +}; +static const unsigned char kat2369_addinreseed[] = { + 0x8e, 0x86, 0x12, 0xe1, 0xaf, 0x62, 0xb5, 0x1d, 0x04, 0xe7, 0x6c, 0xd9, + 0xd4, 0x1c, 0x83, 0xd6, 0xb6, 0x12, 0x6e, 0xa5, 0x41, 0xf5, 0xdb, 0x64, + 0x87, 0x0e, 0x07, 0xbf, 0x0a, 0x8f, 0xd6, 0x5b, +}; +static const unsigned char kat2369_addin0[] = { + 0x7d, 0x2d, 0x1a, 0x93, 0xfa, 0xac, 0x61, 0xb9, 0x42, 0x5b, 0xfb, 0x82, + 0x59, 0xa4, 0x18, 0xe2, 0x55, 0xdf, 0x29, 0x79, 0xe7, 0x92, 0xb4, 0xb3, + 0x69, 0x04, 0xf8, 0x2f, 0xfc, 0x1b, 0x3d, 0x86, +}; +static const unsigned char kat2369_addin1[] = { + 0x3b, 0x70, 0x71, 0x06, 0xcc, 0x8a, 0x03, 0xbb, 0x37, 0xa8, 0x10, 0x6e, + 0x97, 0xa7, 0xbc, 0xfb, 0x2c, 0x81, 0xf8, 0xba, 0x08, 0x32, 0x48, 0x9c, + 0xf6, 0xa1, 0xfb, 0x49, 0x28, 0x54, 0x09, 0xcd, +}; +static const unsigned char kat2369_retbits[] = { + 0x25, 0xae, 0xf9, 0xe7, 0xee, 0x8a, 0x97, 0x2e, 0x9e, 0x64, 0x1c, 0xbd, + 0x79, 0x7d, 0x04, 0x92, 0xb3, 0x8c, 0xe6, 0xb4, 0x32, 0xa3, 0x5f, 0xe3, + 0x95, 0x0e, 0x65, 0xba, 0x74, 0xa7, 0xe2, 0x2e, 0x26, 0x26, 0xbd, 0x59, + 0xdc, 0x36, 0xac, 0x0f, 0x98, 0x31, 0xa4, 0x55, 0x55, 0x5b, 0x40, 0x24, + 0x6e, 0x29, 0x73, 0xe3, 0x4a, 0x7b, 0xf2, 0xac, 0x98, 0xd5, 0x84, 0xf7, + 0xf4, 0xce, 0x9c, 0x02, +}; +static const struct drbg_kat_pr_false kat2369_t = { + 13, kat2369_entropyin, kat2369_nonce, kat2369_persstr, + kat2369_entropyinreseed, kat2369_addinreseed, kat2369_addin0, + kat2369_addin1, kat2369_retbits +}; +static const struct drbg_kat kat2369 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2369_t +}; + +static const unsigned char kat2370_entropyin[] = { + 0x56, 0x13, 0x00, 0xb8, 0xb3, 0xcc, 0x83, 0x81, 0xad, 0x4c, 0x28, 0x32, + 0xd9, 0xf9, 0xe8, 0xba, 0xde, 0x8c, 0x72, 0x0b, 0x56, 0xed, 0x47, 0x26, + 0xa2, 0x11, 0xfb, 0xf7, 0xee, 0xa2, 0x85, 0xec, +}; +static const unsigned char kat2370_nonce[] = {0}; +static const unsigned char kat2370_persstr[] = {0}; +static const unsigned char kat2370_entropyinreseed[] = { + 0xc2, 0x3d, 0xaa, 0xa3, 0x8e, 0xb8, 0xa0, 0x39, 0xc9, 0x61, 0x7b, 0xf1, + 0x8b, 0x61, 0x20, 0xf7, 0xe9, 0x7e, 0x70, 0x5d, 0xb4, 0x13, 0xd8, 0x22, + 0xe2, 0xd8, 0xb0, 0xf2, 0xb5, 0xfc, 0x5b, 0xa7, +}; +static const unsigned char kat2370_addinreseed[] = { + 0x6c, 0xff, 0x3d, 0xa8, 0x10, 0x73, 0x47, 0x89, 0xc7, 0x60, 0x5d, 0x13, + 0xcc, 0x6b, 0x39, 0x12, 0x61, 0x99, 0x62, 0x57, 0x2e, 0xb9, 0x1b, 0x9f, + 0x9f, 0x27, 0xf9, 0x4a, 0x40, 0xbf, 0xeb, 0x08, +}; +static const unsigned char kat2370_addin0[] = { + 0xff, 0x29, 0x6c, 0xd8, 0x3f, 0x43, 0x95, 0x29, 0xd4, 0x36, 0x25, 0x4c, + 0x49, 0x00, 0x13, 0xf2, 0x6f, 0xac, 0x4a, 0xb4, 0x07, 0xe1, 0x58, 0xa0, + 0x6b, 0x3c, 0x9d, 0x4e, 0x9e, 0x7d, 0x04, 0xa7, +}; +static const unsigned char kat2370_addin1[] = { + 0x63, 0xde, 0xe7, 0x58, 0xf8, 0x0f, 0x00, 0x73, 0x8d, 0xee, 0x68, 0xe5, + 0xf8, 0xa3, 0x61, 0xcb, 0xbb, 0x37, 0x1b, 0xcf, 0xa1, 0xb6, 0x7f, 0xfb, + 0x07, 0x3c, 0x45, 0xe3, 0xc8, 0x4b, 0x85, 0xfb, +}; +static const unsigned char kat2370_retbits[] = { + 0x29, 0x54, 0x46, 0xb0, 0x8f, 0x87, 0x9c, 0x3e, 0x46, 0xf0, 0xc5, 0x7d, + 0xac, 0x85, 0x76, 0x7d, 0x94, 0x80, 0x5f, 0xcd, 0xf7, 0xbe, 0xb1, 0xee, + 0xe7, 0x5d, 0x40, 0xf6, 0x43, 0x25, 0x46, 0x91, 0xad, 0xef, 0x0e, 0x83, + 0x00, 0xcf, 0x27, 0xde, 0xb9, 0x0a, 0x72, 0x80, 0x5c, 0xce, 0x91, 0xa4, + 0x43, 0x3d, 0x26, 0x3e, 0xca, 0xce, 0xe0, 0x58, 0x3b, 0x22, 0x2b, 0x81, + 0xc0, 0xbb, 0xe4, 0x01, +}; +static const struct drbg_kat_pr_false kat2370_t = { + 14, kat2370_entropyin, kat2370_nonce, kat2370_persstr, + kat2370_entropyinreseed, kat2370_addinreseed, kat2370_addin0, + kat2370_addin1, kat2370_retbits +}; +static const struct drbg_kat kat2370 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat2370_t +}; + +static const unsigned char kat2371_entropyin[] = { + 0x96, 0x80, 0xb3, 0x38, 0x56, 0x3c, 0x37, 0xdf, 0x37, 0xd9, 0xb8, 0x7c, + 0x39, 0xa9, 0xf7, 0xd1, 0x6e, 0x58, 0x0e, 0x03, 0x10, 0x63, 0x99, 0x51, + 0x23, 0x83, 0x7c, 0xa7, 0xc5, 0xbb, 0x9a, 0x16, +}; +static const unsigned char kat2371_nonce[] = {0}; +static const unsigned char kat2371_persstr[] = { + 0x7b, 0xd8, 0x4c, 0x53, 0x97, 0xf2, 0xb0, 0xdd, 0xd4, 0xa6, 0x3a, 0x35, + 0x99, 0x49, 0xf1, 0x96, 0x68, 0x06, 0xd9, 0x03, 0x88, 0x56, 0x90, 0xc4, + 0x9f, 0x2a, 0x70, 0x32, 0xe3, 0x88, 0x8b, 0xb8, +}; +static const unsigned char kat2371_entropyinreseed[] = { + 0xba, 0x53, 0x15, 0x33, 0x40, 0xc5, 0x89, 0x00, 0xd4, 0xe4, 0xce, 0xc7, + 0x47, 0x07, 0xa1, 0xfb, 0x32, 0xc9, 0x31, 0x08, 0xe2, 0x66, 0x15, 0xb0, + 0xe0, 0x09, 0x6d, 0xb6, 0x2e, 0xc1, 0x99, 0x9b, +}; +static const unsigned char kat2371_addinreseed[] = {0}; +static const unsigned char kat2371_addin0[] = {0}; +static const unsigned char kat2371_addin1[] = {0}; +static const unsigned char kat2371_retbits[] = { + 0x28, 0x56, 0xd0, 0x79, 0xfe, 0x25, 0x39, 0xdb, 0x40, 0x0e, 0x42, 0x89, + 0x30, 0x6b, 0xf0, 0x42, 0x0c, 0x4c, 0xbc, 0xe3, 0x26, 0xb3, 0x8b, 0x8c, + 0xac, 0x7a, 0xc4, 0x49, 0x54, 0xf6, 0x50, 0x90, 0x00, 0xb4, 0xaf, 0x2f, + 0x50, 0xf2, 0x2c, 0x8f, 0x2c, 0x0a, 0x89, 0x7e, 0x98, 0x96, 0x68, 0x1a, + 0xe4, 0xc4, 0x7a, 0x83, 0x68, 0x8c, 0x7c, 0xfa, 0xc8, 0x6d, 0x6a, 0x16, + 0x37, 0xe4, 0x98, 0xad, +}; +static const struct drbg_kat_pr_false kat2371_t = { + 0, kat2371_entropyin, kat2371_nonce, kat2371_persstr, + kat2371_entropyinreseed, kat2371_addinreseed, kat2371_addin0, + kat2371_addin1, kat2371_retbits +}; +static const struct drbg_kat kat2371 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2371_t +}; + +static const unsigned char kat2372_entropyin[] = { + 0x2e, 0x16, 0xb1, 0xf1, 0x16, 0x7e, 0xd7, 0x04, 0x0b, 0xd7, 0x1b, 0x6d, + 0x80, 0x9f, 0x65, 0xd4, 0xc1, 0x94, 0xdf, 0x94, 0x99, 0xdf, 0x26, 0xec, + 0x29, 0x7d, 0x5b, 0xa7, 0x28, 0xce, 0xdd, 0xa4, +}; +static const unsigned char kat2372_nonce[] = {0}; +static const unsigned char kat2372_persstr[] = { + 0xf9, 0x81, 0x51, 0xe9, 0x90, 0xf5, 0x68, 0x84, 0x2b, 0xd4, 0x7e, 0x0b, + 0x11, 0x67, 0xa6, 0x19, 0x57, 0xa4, 0x6b, 0xbb, 0x25, 0x4f, 0xc5, 0x69, + 0x15, 0xc2, 0x70, 0x71, 0x7d, 0x56, 0x07, 0x20, +}; +static const unsigned char kat2372_entropyinreseed[] = { + 0xc1, 0xc2, 0x82, 0xb0, 0xd3, 0x6f, 0x56, 0xe6, 0x4e, 0x34, 0x89, 0x61, + 0xe0, 0xea, 0xca, 0xc2, 0x28, 0x37, 0x6f, 0xbd, 0x47, 0x05, 0xc1, 0x73, + 0x22, 0x78, 0x0c, 0x42, 0x30, 0x06, 0xcd, 0xf7, +}; +static const unsigned char kat2372_addinreseed[] = {0}; +static const unsigned char kat2372_addin0[] = {0}; +static const unsigned char kat2372_addin1[] = {0}; +static const unsigned char kat2372_retbits[] = { + 0x1f, 0x25, 0xff, 0x8b, 0xa6, 0xe9, 0x6d, 0x41, 0xb3, 0x4d, 0x70, 0xed, + 0x7a, 0xf0, 0xa2, 0xd4, 0x46, 0x2b, 0x3f, 0x49, 0x59, 0x14, 0xa6, 0x5c, + 0x7c, 0x86, 0x18, 0xd9, 0x3c, 0x7f, 0x98, 0xcc, 0xaa, 0x4f, 0x81, 0x2b, + 0x7b, 0xb4, 0xe1, 0x87, 0x53, 0xaf, 0xdc, 0x8a, 0xfb, 0x53, 0x6e, 0xcf, + 0x34, 0x02, 0x80, 0x05, 0x5f, 0xe8, 0x1d, 0xa1, 0xe0, 0x32, 0x2c, 0x44, + 0xc0, 0xdf, 0x8e, 0x59, +}; +static const struct drbg_kat_pr_false kat2372_t = { + 1, kat2372_entropyin, kat2372_nonce, kat2372_persstr, + kat2372_entropyinreseed, kat2372_addinreseed, kat2372_addin0, + kat2372_addin1, kat2372_retbits +}; +static const struct drbg_kat kat2372 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2372_t +}; + +static const unsigned char kat2373_entropyin[] = { + 0xba, 0x84, 0xf7, 0xa7, 0x1d, 0x2c, 0x91, 0x9a, 0x11, 0xf0, 0x8b, 0x7c, + 0x28, 0xd8, 0xec, 0x96, 0x58, 0x06, 0x71, 0xc1, 0x09, 0x04, 0x62, 0x22, + 0xc7, 0xb0, 0xc7, 0x50, 0x5b, 0x50, 0x73, 0xcf, +}; +static const unsigned char kat2373_nonce[] = {0}; +static const unsigned char kat2373_persstr[] = { + 0x20, 0xb1, 0x29, 0xc9, 0x9d, 0x00, 0x2d, 0x94, 0x96, 0xf1, 0x4b, 0x31, + 0x77, 0x74, 0x39, 0x0e, 0x55, 0x54, 0x00, 0xeb, 0xf0, 0x4f, 0xfa, 0xe5, + 0x5d, 0x92, 0x95, 0x70, 0x38, 0xfe, 0x01, 0xcf, +}; +static const unsigned char kat2373_entropyinreseed[] = { + 0x6b, 0x08, 0x7b, 0x3f, 0x90, 0x43, 0x0a, 0x24, 0xf2, 0x16, 0xf0, 0x70, + 0xbd, 0x7c, 0x36, 0x8f, 0xc5, 0x01, 0xca, 0x64, 0x3f, 0x25, 0x11, 0x73, + 0x2b, 0xcb, 0x34, 0x58, 0x8d, 0x7d, 0x82, 0x90, +}; +static const unsigned char kat2373_addinreseed[] = {0}; +static const unsigned char kat2373_addin0[] = {0}; +static const unsigned char kat2373_addin1[] = {0}; +static const unsigned char kat2373_retbits[] = { + 0x95, 0xad, 0x8e, 0x77, 0x7a, 0x32, 0x16, 0x6a, 0xb7, 0xc3, 0x9f, 0x2d, + 0x79, 0x49, 0x93, 0xa9, 0x10, 0x0f, 0x0b, 0xbc, 0x71, 0x72, 0x75, 0x99, + 0xe2, 0x27, 0xbf, 0x02, 0x9b, 0x2e, 0x85, 0xb7, 0xd6, 0x72, 0x69, 0xf4, + 0x85, 0xc3, 0x0f, 0x82, 0x2d, 0x21, 0xb9, 0xdc, 0x11, 0x50, 0x6b, 0x39, + 0xe0, 0x0e, 0x0e, 0x0e, 0xb7, 0xf8, 0x32, 0x21, 0x3c, 0xb8, 0x2f, 0x7d, + 0x6a, 0xf0, 0x67, 0x34, +}; +static const struct drbg_kat_pr_false kat2373_t = { + 2, kat2373_entropyin, kat2373_nonce, kat2373_persstr, + kat2373_entropyinreseed, kat2373_addinreseed, kat2373_addin0, + kat2373_addin1, kat2373_retbits +}; +static const struct drbg_kat kat2373 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2373_t +}; + +static const unsigned char kat2374_entropyin[] = { + 0xb5, 0x0b, 0xf4, 0x6c, 0x1d, 0x31, 0x78, 0x96, 0x80, 0xc5, 0x7c, 0x06, + 0xa3, 0x35, 0x68, 0x2f, 0xf4, 0x85, 0x6e, 0x73, 0xe5, 0xbb, 0x75, 0x52, + 0xfb, 0xb3, 0xb6, 0xd3, 0x30, 0x3f, 0x79, 0xf2, +}; +static const unsigned char kat2374_nonce[] = {0}; +static const unsigned char kat2374_persstr[] = { + 0x98, 0x38, 0x81, 0x6d, 0xeb, 0x65, 0xb9, 0xfa, 0xde, 0x3c, 0xff, 0xc6, + 0xc7, 0xc5, 0x5c, 0x58, 0x32, 0xb2, 0xe7, 0x75, 0x5a, 0x25, 0xa1, 0xe6, + 0x6d, 0x3b, 0x6b, 0x73, 0x78, 0xc5, 0x22, 0xa1, +}; +static const unsigned char kat2374_entropyinreseed[] = { + 0xfe, 0xb1, 0xa1, 0x5a, 0xfe, 0x4e, 0xe8, 0x82, 0x99, 0xc1, 0x6d, 0x5f, + 0xb2, 0xc7, 0x1e, 0x1b, 0x28, 0xad, 0xec, 0x08, 0x78, 0x04, 0x81, 0x76, + 0x3a, 0x04, 0x93, 0xc2, 0xb6, 0x18, 0x99, 0x85, +}; +static const unsigned char kat2374_addinreseed[] = {0}; +static const unsigned char kat2374_addin0[] = {0}; +static const unsigned char kat2374_addin1[] = {0}; +static const unsigned char kat2374_retbits[] = { + 0x6f, 0x83, 0x9b, 0x3f, 0x40, 0xdc, 0x67, 0x74, 0xf7, 0xa0, 0x5f, 0xab, + 0x5a, 0xd1, 0xc0, 0xed, 0x05, 0xff, 0x26, 0xda, 0xe2, 0xf6, 0x5b, 0xd8, + 0x9c, 0xc2, 0xd5, 0x7b, 0x7e, 0xc9, 0x69, 0x30, 0x06, 0x94, 0x56, 0xb1, + 0x09, 0xd9, 0xfa, 0x50, 0xf8, 0x6e, 0x62, 0xf2, 0x75, 0xc1, 0xdd, 0x9f, + 0xef, 0x50, 0x94, 0xc4, 0x87, 0x0d, 0x18, 0x94, 0xe4, 0xb5, 0x0d, 0xad, + 0x6d, 0xf6, 0xfe, 0xda, +}; +static const struct drbg_kat_pr_false kat2374_t = { + 3, kat2374_entropyin, kat2374_nonce, kat2374_persstr, + kat2374_entropyinreseed, kat2374_addinreseed, kat2374_addin0, + kat2374_addin1, kat2374_retbits +}; +static const struct drbg_kat kat2374 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2374_t +}; + +static const unsigned char kat2375_entropyin[] = { + 0x73, 0xb0, 0x6f, 0xc7, 0xc1, 0xd1, 0x81, 0xd7, 0x45, 0x7a, 0x9d, 0x27, + 0x24, 0x43, 0x3a, 0x30, 0x5d, 0xf2, 0xee, 0x29, 0xab, 0x86, 0x1a, 0x87, + 0x4e, 0x08, 0x9f, 0x86, 0x4a, 0x22, 0xa4, 0x92, +}; +static const unsigned char kat2375_nonce[] = {0}; +static const unsigned char kat2375_persstr[] = { + 0xf9, 0xe7, 0x69, 0x39, 0x54, 0xb2, 0x5f, 0x9f, 0x4c, 0xe5, 0xf4, 0xcb, + 0x52, 0x48, 0x70, 0x62, 0x18, 0xbf, 0xcc, 0x81, 0x84, 0x2a, 0xc0, 0xeb, + 0xcc, 0xae, 0x08, 0xe0, 0x74, 0xe2, 0xd0, 0xf2, +}; +static const unsigned char kat2375_entropyinreseed[] = { + 0x68, 0x1f, 0xb7, 0xff, 0xb2, 0x93, 0x17, 0x3e, 0xd0, 0xf3, 0x58, 0x19, + 0x5d, 0x6e, 0x32, 0x9a, 0x6f, 0x79, 0xaf, 0x2c, 0x1a, 0x8e, 0x73, 0x4b, + 0x5a, 0xbf, 0xa8, 0x18, 0x14, 0x4b, 0x3d, 0x51, +}; +static const unsigned char kat2375_addinreseed[] = {0}; +static const unsigned char kat2375_addin0[] = {0}; +static const unsigned char kat2375_addin1[] = {0}; +static const unsigned char kat2375_retbits[] = { + 0x95, 0xd6, 0x20, 0xf6, 0x9d, 0xf2, 0xfe, 0x74, 0xe0, 0x51, 0x4d, 0xfb, + 0x1e, 0x0e, 0x6a, 0x74, 0xe2, 0xac, 0x05, 0xa5, 0x12, 0xa0, 0xc0, 0x76, + 0x38, 0xbb, 0x8e, 0x9d, 0x97, 0x1d, 0xf6, 0xc0, 0x6e, 0x13, 0x67, 0xa3, + 0x4d, 0x3f, 0xfc, 0xaa, 0x5d, 0x6f, 0x56, 0xd3, 0x82, 0xfe, 0xab, 0xeb, + 0x49, 0x78, 0x72, 0x67, 0x7d, 0xf0, 0x0a, 0x9e, 0xc7, 0x11, 0x9b, 0x76, + 0xbb, 0x08, 0x5d, 0x1e, +}; +static const struct drbg_kat_pr_false kat2375_t = { + 4, kat2375_entropyin, kat2375_nonce, kat2375_persstr, + kat2375_entropyinreseed, kat2375_addinreseed, kat2375_addin0, + kat2375_addin1, kat2375_retbits +}; +static const struct drbg_kat kat2375 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2375_t +}; + +static const unsigned char kat2376_entropyin[] = { + 0xc3, 0x8a, 0x07, 0x4e, 0x9d, 0xd0, 0x72, 0x3f, 0x3b, 0x61, 0x97, 0x65, + 0x6c, 0xb4, 0xa0, 0xd3, 0xfa, 0x75, 0xde, 0xb2, 0xcf, 0x67, 0xf2, 0xda, + 0x63, 0x3b, 0xea, 0xc5, 0x0a, 0xe1, 0x41, 0x44, +}; +static const unsigned char kat2376_nonce[] = {0}; +static const unsigned char kat2376_persstr[] = { + 0xd5, 0x8c, 0xa8, 0x8d, 0xea, 0x40, 0x63, 0x6f, 0x28, 0x43, 0xe7, 0x05, + 0x74, 0xe7, 0x64, 0xa4, 0xfb, 0x3c, 0x32, 0x7c, 0x45, 0x3d, 0x93, 0x54, + 0x95, 0xa4, 0x6e, 0xe5, 0x05, 0x83, 0x63, 0x02, +}; +static const unsigned char kat2376_entropyinreseed[] = { + 0x8b, 0x40, 0x0e, 0x5e, 0xfa, 0x15, 0x06, 0xbc, 0xc7, 0x3a, 0xcf, 0x46, + 0x7c, 0x27, 0x39, 0xf4, 0xad, 0xd4, 0xee, 0x23, 0x66, 0x23, 0xbc, 0x78, + 0x07, 0x0d, 0x0d, 0x1b, 0x16, 0xa7, 0x8a, 0xd5, +}; +static const unsigned char kat2376_addinreseed[] = {0}; +static const unsigned char kat2376_addin0[] = {0}; +static const unsigned char kat2376_addin1[] = {0}; +static const unsigned char kat2376_retbits[] = { + 0x2e, 0x2a, 0xe6, 0xfe, 0x54, 0x3b, 0x58, 0xc6, 0xda, 0xfe, 0x55, 0xa5, + 0x62, 0x8e, 0x1f, 0x70, 0x9a, 0x4a, 0x84, 0x8f, 0x66, 0x72, 0x1c, 0xf7, + 0xe6, 0x92, 0x14, 0xb0, 0x84, 0xcc, 0x71, 0xa6, 0xd8, 0x02, 0x94, 0x31, + 0x89, 0x01, 0x57, 0x19, 0x1f, 0x3e, 0xf2, 0xca, 0x45, 0xb4, 0x14, 0x19, + 0x16, 0x58, 0xdb, 0xee, 0xda, 0xea, 0xc7, 0xe0, 0x55, 0x24, 0xec, 0x1b, + 0x39, 0xc2, 0x0a, 0x4f, +}; +static const struct drbg_kat_pr_false kat2376_t = { + 5, kat2376_entropyin, kat2376_nonce, kat2376_persstr, + kat2376_entropyinreseed, kat2376_addinreseed, kat2376_addin0, + kat2376_addin1, kat2376_retbits +}; +static const struct drbg_kat kat2376 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2376_t +}; + +static const unsigned char kat2377_entropyin[] = { + 0xd3, 0x14, 0xa0, 0x80, 0xb0, 0x1f, 0x07, 0x1c, 0x2c, 0x72, 0x07, 0xe6, + 0x1b, 0xf5, 0xa3, 0x16, 0xd7, 0xb7, 0x68, 0xc8, 0x58, 0x16, 0xd9, 0xc9, + 0x2d, 0xd8, 0x63, 0x79, 0x60, 0x96, 0x6e, 0xd4, +}; +static const unsigned char kat2377_nonce[] = {0}; +static const unsigned char kat2377_persstr[] = { + 0x2f, 0xed, 0x85, 0x7b, 0x2d, 0xd4, 0x18, 0xc1, 0x1c, 0x39, 0x9d, 0xb3, + 0xc7, 0x16, 0x88, 0x76, 0xd2, 0xd4, 0xcc, 0xda, 0x32, 0xf2, 0x8c, 0x87, + 0x6c, 0xa2, 0x58, 0x50, 0x75, 0x78, 0xf8, 0x67, +}; +static const unsigned char kat2377_entropyinreseed[] = { + 0x16, 0xb8, 0x9e, 0x8e, 0x0e, 0x1f, 0x58, 0x96, 0x50, 0xda, 0x30, 0x93, + 0x04, 0xc1, 0xd7, 0xd3, 0x25, 0xa5, 0xb6, 0x1e, 0xc4, 0x56, 0xf5, 0x79, + 0xe2, 0x4c, 0xb7, 0xd8, 0xc6, 0xa0, 0x9c, 0x09, +}; +static const unsigned char kat2377_addinreseed[] = {0}; +static const unsigned char kat2377_addin0[] = {0}; +static const unsigned char kat2377_addin1[] = {0}; +static const unsigned char kat2377_retbits[] = { + 0xf2, 0xeb, 0x91, 0x99, 0x42, 0xa1, 0x43, 0x16, 0xa7, 0x33, 0x04, 0xa6, + 0xdc, 0x0a, 0xe5, 0xa9, 0xf9, 0x2f, 0x7c, 0x60, 0xe8, 0x6f, 0x23, 0x14, + 0x63, 0xcc, 0x91, 0x47, 0xf1, 0xcb, 0x60, 0xd6, 0xae, 0x86, 0x25, 0xb6, + 0x90, 0x61, 0x21, 0x90, 0xd3, 0xdf, 0x62, 0x96, 0x4f, 0x95, 0x51, 0xd1, + 0x4b, 0x11, 0xa0, 0xaf, 0x43, 0x5d, 0x40, 0x20, 0xc5, 0x87, 0x32, 0xb6, + 0xa9, 0x09, 0xc9, 0x04, +}; +static const struct drbg_kat_pr_false kat2377_t = { + 6, kat2377_entropyin, kat2377_nonce, kat2377_persstr, + kat2377_entropyinreseed, kat2377_addinreseed, kat2377_addin0, + kat2377_addin1, kat2377_retbits +}; +static const struct drbg_kat kat2377 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2377_t +}; + +static const unsigned char kat2378_entropyin[] = { + 0xbd, 0xa4, 0x5a, 0x21, 0x1b, 0x41, 0xca, 0x5a, 0x49, 0x9d, 0xd2, 0x06, + 0xf9, 0x3d, 0x4e, 0x1f, 0xc4, 0x16, 0xea, 0xad, 0xc4, 0x66, 0xe2, 0x28, + 0xba, 0x31, 0xd7, 0x0e, 0x29, 0x83, 0xc7, 0x51, +}; +static const unsigned char kat2378_nonce[] = {0}; +static const unsigned char kat2378_persstr[] = { + 0x2f, 0x64, 0x43, 0xee, 0xdd, 0xbd, 0xee, 0x49, 0x65, 0xf6, 0xfd, 0x9f, + 0x24, 0x24, 0x32, 0x01, 0xd6, 0x6e, 0x7a, 0x62, 0x55, 0x79, 0x4f, 0x4c, + 0x13, 0xa6, 0xb0, 0x27, 0x41, 0x22, 0xc3, 0xf2, +}; +static const unsigned char kat2378_entropyinreseed[] = { + 0x2a, 0xde, 0x92, 0x40, 0xde, 0x8f, 0xc4, 0xfb, 0xdb, 0xd4, 0xf2, 0x45, + 0x82, 0xd1, 0x24, 0x0c, 0xe2, 0xd8, 0x4d, 0xd8, 0x75, 0x2d, 0x1b, 0x50, + 0x82, 0x2f, 0x72, 0xf6, 0xbe, 0x77, 0x6f, 0x7d, +}; +static const unsigned char kat2378_addinreseed[] = {0}; +static const unsigned char kat2378_addin0[] = {0}; +static const unsigned char kat2378_addin1[] = {0}; +static const unsigned char kat2378_retbits[] = { + 0xab, 0xff, 0x61, 0xb3, 0xdf, 0x53, 0xd6, 0x98, 0xb5, 0x31, 0xd3, 0x4e, + 0xe4, 0xbc, 0x09, 0x7c, 0x05, 0x8b, 0x93, 0x2b, 0xfe, 0x29, 0x01, 0x95, + 0x31, 0xce, 0x08, 0x60, 0xc2, 0x7a, 0x96, 0x7c, 0xc1, 0x88, 0x6d, 0x13, + 0x84, 0xaa, 0xe4, 0x4d, 0x0d, 0x4f, 0x0d, 0x19, 0x6b, 0xee, 0xb9, 0x4a, + 0x62, 0x11, 0x36, 0x1a, 0x89, 0x8e, 0xbd, 0xda, 0x31, 0x6c, 0x33, 0x7f, + 0xfe, 0xb3, 0x82, 0x7a, +}; +static const struct drbg_kat_pr_false kat2378_t = { + 7, kat2378_entropyin, kat2378_nonce, kat2378_persstr, + kat2378_entropyinreseed, kat2378_addinreseed, kat2378_addin0, + kat2378_addin1, kat2378_retbits +}; +static const struct drbg_kat kat2378 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2378_t +}; + +static const unsigned char kat2379_entropyin[] = { + 0x70, 0x9d, 0x42, 0x3b, 0xcf, 0xeb, 0x14, 0xd3, 0xfd, 0x3e, 0x37, 0x21, + 0xe7, 0x47, 0x3e, 0x1b, 0x3f, 0x9d, 0x4d, 0x87, 0x24, 0x46, 0xfa, 0x2e, + 0x36, 0xff, 0xeb, 0xb3, 0xf2, 0x5f, 0xf6, 0x5b, +}; +static const unsigned char kat2379_nonce[] = {0}; +static const unsigned char kat2379_persstr[] = { + 0x63, 0x88, 0x7b, 0xc1, 0x9b, 0x1e, 0xec, 0x94, 0x8f, 0x06, 0xba, 0x14, + 0x14, 0x5d, 0xd9, 0x5d, 0xf8, 0x20, 0x9d, 0x92, 0x5c, 0x81, 0x19, 0x95, + 0x0e, 0x07, 0x53, 0x68, 0x97, 0x0d, 0x7b, 0xb0, +}; +static const unsigned char kat2379_entropyinreseed[] = { + 0x4e, 0xfc, 0x9c, 0x7b, 0x33, 0x7f, 0x00, 0xb2, 0x7b, 0x48, 0x2d, 0x83, + 0x32, 0xff, 0x0b, 0xb4, 0x1e, 0x77, 0x6e, 0x6a, 0xf5, 0xbd, 0x47, 0x41, + 0xbd, 0x22, 0x97, 0x8b, 0xf1, 0x9e, 0x33, 0x44, +}; +static const unsigned char kat2379_addinreseed[] = {0}; +static const unsigned char kat2379_addin0[] = {0}; +static const unsigned char kat2379_addin1[] = {0}; +static const unsigned char kat2379_retbits[] = { + 0xb1, 0xdb, 0x4e, 0x8d, 0xaf, 0x64, 0x2a, 0x7d, 0xc5, 0x07, 0xd0, 0x12, + 0xbc, 0xff, 0xa9, 0xc1, 0x92, 0x43, 0xed, 0x97, 0x4f, 0x08, 0xaf, 0x7b, + 0xab, 0xe3, 0x65, 0xc8, 0x8b, 0x79, 0x4b, 0xe0, 0x5f, 0x1a, 0x5e, 0xd6, + 0x78, 0xc5, 0xcc, 0x13, 0x0e, 0xf0, 0x58, 0xdc, 0xdb, 0x31, 0x29, 0x9a, + 0xa4, 0x02, 0xbe, 0x17, 0x61, 0xc3, 0xda, 0x81, 0x5a, 0x61, 0x51, 0xd1, + 0x04, 0xc2, 0xc5, 0x4d, +}; +static const struct drbg_kat_pr_false kat2379_t = { + 8, kat2379_entropyin, kat2379_nonce, kat2379_persstr, + kat2379_entropyinreseed, kat2379_addinreseed, kat2379_addin0, + kat2379_addin1, kat2379_retbits +}; +static const struct drbg_kat kat2379 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2379_t +}; + +static const unsigned char kat2380_entropyin[] = { + 0x66, 0x67, 0x1a, 0xa2, 0x65, 0x61, 0x66, 0xa1, 0x74, 0xbb, 0x85, 0xc0, + 0xc5, 0x57, 0x5a, 0x4d, 0x16, 0x94, 0x2f, 0xb5, 0x7b, 0x25, 0x4c, 0xc3, + 0x03, 0xe5, 0x95, 0x4e, 0x70, 0xbd, 0x4f, 0x97, +}; +static const unsigned char kat2380_nonce[] = {0}; +static const unsigned char kat2380_persstr[] = { + 0x40, 0x9e, 0xa4, 0x68, 0xfd, 0x7e, 0x7b, 0x80, 0xdd, 0x49, 0x43, 0x39, + 0xde, 0xc8, 0x25, 0x2c, 0x1d, 0xb7, 0x27, 0x90, 0xaf, 0xad, 0x99, 0x7d, + 0xed, 0x0f, 0x9d, 0x77, 0xdd, 0x31, 0x90, 0x1a, +}; +static const unsigned char kat2380_entropyinreseed[] = { + 0x36, 0xd4, 0x84, 0x21, 0x36, 0xd8, 0x34, 0x3a, 0xef, 0xdb, 0xba, 0xb4, + 0xa1, 0x8a, 0xab, 0x9b, 0x68, 0x61, 0x5b, 0x97, 0x4a, 0x9f, 0xaf, 0x42, + 0xa9, 0x35, 0xe4, 0x0c, 0x6f, 0x87, 0xf1, 0x2b, +}; +static const unsigned char kat2380_addinreseed[] = {0}; +static const unsigned char kat2380_addin0[] = {0}; +static const unsigned char kat2380_addin1[] = {0}; +static const unsigned char kat2380_retbits[] = { + 0x98, 0xc1, 0x32, 0x5d, 0xbf, 0x9c, 0x19, 0x0a, 0xba, 0x52, 0x2f, 0xc0, + 0x7f, 0x9d, 0x20, 0x9f, 0xff, 0xa8, 0x24, 0x0f, 0xbf, 0xac, 0xe8, 0x3a, + 0x1e, 0x01, 0x6c, 0x8a, 0x51, 0xc2, 0x83, 0xb0, 0xc8, 0xb8, 0x52, 0x67, + 0x3c, 0x3c, 0x72, 0xaf, 0xc6, 0x5f, 0xbe, 0x19, 0x3d, 0x67, 0x32, 0x12, + 0xf4, 0x6e, 0x8a, 0x28, 0x43, 0xb1, 0x50, 0x7a, 0x25, 0x20, 0xb0, 0x15, + 0x9c, 0x3e, 0xba, 0x01, +}; +static const struct drbg_kat_pr_false kat2380_t = { + 9, kat2380_entropyin, kat2380_nonce, kat2380_persstr, + kat2380_entropyinreseed, kat2380_addinreseed, kat2380_addin0, + kat2380_addin1, kat2380_retbits +}; +static const struct drbg_kat kat2380 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2380_t +}; + +static const unsigned char kat2381_entropyin[] = { + 0x19, 0xc5, 0x01, 0x3e, 0x12, 0x23, 0x7e, 0x58, 0x20, 0x01, 0xa2, 0x35, + 0x63, 0xea, 0xe2, 0xc1, 0x8c, 0x40, 0x09, 0xe5, 0xd1, 0x58, 0x38, 0xc3, + 0x45, 0x42, 0x5e, 0x82, 0xb7, 0x0d, 0x8b, 0x30, +}; +static const unsigned char kat2381_nonce[] = {0}; +static const unsigned char kat2381_persstr[] = { + 0x90, 0x22, 0x6b, 0x0d, 0xbf, 0xf5, 0x45, 0xe3, 0x5f, 0x0e, 0xfa, 0x35, + 0xbf, 0x92, 0xf4, 0xd6, 0x51, 0x73, 0x09, 0x9f, 0xef, 0xde, 0xfe, 0x88, + 0x6e, 0xfe, 0xe0, 0x92, 0x1d, 0x16, 0x02, 0x5e, +}; +static const unsigned char kat2381_entropyinreseed[] = { + 0x9f, 0xaa, 0x13, 0xbb, 0xe1, 0x14, 0xc1, 0x64, 0x28, 0x80, 0xd6, 0xb9, + 0x1f, 0x4e, 0x39, 0x43, 0x99, 0x16, 0x9d, 0x78, 0x57, 0xe1, 0x91, 0xaa, + 0xcd, 0x6d, 0x6f, 0x6a, 0xb4, 0x79, 0xba, 0xdb, +}; +static const unsigned char kat2381_addinreseed[] = {0}; +static const unsigned char kat2381_addin0[] = {0}; +static const unsigned char kat2381_addin1[] = {0}; +static const unsigned char kat2381_retbits[] = { + 0x37, 0x07, 0x28, 0x31, 0xba, 0xe4, 0xd4, 0xdb, 0x94, 0x0a, 0xfc, 0x8e, + 0x89, 0x40, 0xc0, 0xe0, 0x3d, 0xaa, 0xee, 0x38, 0x11, 0xc6, 0xea, 0x92, + 0x39, 0xce, 0x88, 0x5a, 0x82, 0x63, 0xb8, 0xd8, 0xe8, 0x1a, 0xe8, 0x39, + 0x73, 0x2b, 0x11, 0xa6, 0xa5, 0xa5, 0xd2, 0xed, 0x02, 0xd2, 0x38, 0xd8, + 0xb3, 0xfb, 0x4d, 0x8d, 0x59, 0x42, 0x9a, 0x30, 0x2a, 0x07, 0xe9, 0x9b, + 0x84, 0x1e, 0x27, 0x4d, +}; +static const struct drbg_kat_pr_false kat2381_t = { + 10, kat2381_entropyin, kat2381_nonce, kat2381_persstr, + kat2381_entropyinreseed, kat2381_addinreseed, kat2381_addin0, + kat2381_addin1, kat2381_retbits +}; +static const struct drbg_kat kat2381 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2381_t +}; + +static const unsigned char kat2382_entropyin[] = { + 0x6a, 0x8e, 0xdd, 0xc0, 0xc7, 0xc5, 0x7e, 0x37, 0xde, 0xce, 0xaa, 0x3e, + 0x0b, 0x13, 0x92, 0x2d, 0x6a, 0x63, 0xf0, 0x5c, 0x2e, 0xf6, 0x4a, 0x8d, + 0x7c, 0x64, 0x80, 0x85, 0xa6, 0x2e, 0xd9, 0x25, +}; +static const unsigned char kat2382_nonce[] = {0}; +static const unsigned char kat2382_persstr[] = { + 0x52, 0x16, 0x69, 0x65, 0x4b, 0x98, 0xc5, 0x65, 0xb9, 0x29, 0xdd, 0x00, + 0x1e, 0xa4, 0x1d, 0x45, 0x81, 0x20, 0xcc, 0x30, 0x03, 0x6f, 0xfc, 0xf5, + 0xc9, 0x0f, 0xac, 0x6a, 0xf6, 0xac, 0xe9, 0xcd, +}; +static const unsigned char kat2382_entropyinreseed[] = { + 0xe6, 0xd5, 0x87, 0x03, 0xe3, 0xa9, 0xfa, 0x3e, 0x76, 0x08, 0x5b, 0xd1, + 0x0f, 0x18, 0x75, 0xf5, 0xb5, 0x1b, 0xfb, 0x0a, 0x0e, 0x4a, 0x6d, 0xbb, + 0x1c, 0x05, 0x52, 0xbd, 0x29, 0x85, 0x11, 0x96, +}; +static const unsigned char kat2382_addinreseed[] = {0}; +static const unsigned char kat2382_addin0[] = {0}; +static const unsigned char kat2382_addin1[] = {0}; +static const unsigned char kat2382_retbits[] = { + 0x9e, 0xcf, 0x36, 0x7a, 0x00, 0xab, 0x54, 0x45, 0xf8, 0x31, 0xe4, 0xf1, + 0x5b, 0xe9, 0x27, 0xfb, 0x0e, 0x6c, 0xf8, 0x50, 0x87, 0x69, 0x8d, 0x73, + 0x45, 0x88, 0x25, 0x9e, 0xa1, 0xa8, 0x54, 0x12, 0xff, 0x92, 0x52, 0xb6, + 0x5f, 0x27, 0x9c, 0x17, 0xba, 0x0c, 0x99, 0xdc, 0x21, 0xe5, 0x51, 0x74, + 0x79, 0xc8, 0x9d, 0x68, 0x5e, 0x79, 0x74, 0x8f, 0x35, 0xe2, 0x87, 0xb7, + 0x2c, 0xe6, 0xdd, 0x2b, +}; +static const struct drbg_kat_pr_false kat2382_t = { + 11, kat2382_entropyin, kat2382_nonce, kat2382_persstr, + kat2382_entropyinreseed, kat2382_addinreseed, kat2382_addin0, + kat2382_addin1, kat2382_retbits +}; +static const struct drbg_kat kat2382 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2382_t +}; + +static const unsigned char kat2383_entropyin[] = { + 0x26, 0xe6, 0x07, 0x1e, 0xaf, 0x6f, 0x0c, 0xfe, 0x64, 0xd2, 0xfb, 0xf3, + 0x9b, 0x65, 0x5e, 0x16, 0x53, 0x13, 0xbb, 0x96, 0x17, 0x6d, 0xa0, 0x7b, + 0x3a, 0x2d, 0x07, 0x58, 0x90, 0xa5, 0x77, 0xea, +}; +static const unsigned char kat2383_nonce[] = {0}; +static const unsigned char kat2383_persstr[] = { + 0x1a, 0xd4, 0x06, 0xc9, 0xb2, 0x7e, 0x9e, 0xd0, 0xe4, 0xf1, 0x14, 0x87, + 0x5a, 0x9b, 0x40, 0xa4, 0x72, 0x00, 0xd9, 0x2e, 0x94, 0xe2, 0x84, 0xb8, + 0x98, 0xf9, 0x1e, 0x3b, 0x61, 0x16, 0x97, 0x87, +}; +static const unsigned char kat2383_entropyinreseed[] = { + 0x1c, 0x77, 0x44, 0x82, 0x9d, 0x36, 0x97, 0x7b, 0x4f, 0x02, 0x4e, 0xa9, + 0x9d, 0x82, 0xa0, 0xad, 0x8f, 0x87, 0x3d, 0xc9, 0x78, 0xac, 0xfe, 0xb1, + 0x0d, 0x30, 0xe9, 0x9c, 0xdd, 0x36, 0x20, 0x8c, +}; +static const unsigned char kat2383_addinreseed[] = {0}; +static const unsigned char kat2383_addin0[] = {0}; +static const unsigned char kat2383_addin1[] = {0}; +static const unsigned char kat2383_retbits[] = { + 0xc2, 0x50, 0xcd, 0x44, 0x62, 0x5e, 0xf2, 0x7d, 0x1b, 0xf1, 0x96, 0x79, + 0x64, 0x65, 0xe5, 0xd4, 0xb4, 0x5a, 0x7f, 0x0c, 0x61, 0x33, 0xf3, 0xca, + 0x40, 0xb3, 0x63, 0x54, 0xee, 0xac, 0x6b, 0x99, 0x0a, 0xa2, 0x67, 0x3d, + 0x58, 0xff, 0xaa, 0x63, 0x15, 0x6e, 0xfd, 0x2a, 0xdc, 0x6d, 0x88, 0xbc, + 0x1d, 0x40, 0x70, 0x13, 0xd1, 0xa1, 0xe5, 0x27, 0x49, 0x12, 0x65, 0x17, + 0xb6, 0x78, 0x95, 0x21, +}; +static const struct drbg_kat_pr_false kat2383_t = { + 12, kat2383_entropyin, kat2383_nonce, kat2383_persstr, + kat2383_entropyinreseed, kat2383_addinreseed, kat2383_addin0, + kat2383_addin1, kat2383_retbits +}; +static const struct drbg_kat kat2383 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2383_t +}; + +static const unsigned char kat2384_entropyin[] = { + 0x4a, 0x9c, 0x90, 0xde, 0xd4, 0xe8, 0xe4, 0x8c, 0xd6, 0x7d, 0xa5, 0x93, + 0xfd, 0xe8, 0xeb, 0x9e, 0xfc, 0x33, 0xa2, 0x7e, 0xfc, 0xaa, 0xd3, 0x62, + 0x31, 0xeb, 0xa6, 0x02, 0xa4, 0xfc, 0xad, 0x23, +}; +static const unsigned char kat2384_nonce[] = {0}; +static const unsigned char kat2384_persstr[] = { + 0x66, 0xf4, 0x93, 0xf5, 0x13, 0x5d, 0xcd, 0x08, 0xc5, 0x8a, 0x8c, 0x92, + 0x75, 0x8a, 0x3d, 0x9e, 0x20, 0xcc, 0xb3, 0x2a, 0x44, 0xf5, 0x97, 0x4d, + 0x68, 0xcb, 0x76, 0xf5, 0x30, 0x52, 0x0f, 0x3b, +}; +static const unsigned char kat2384_entropyinreseed[] = { + 0x03, 0x79, 0xd0, 0xc6, 0x45, 0x57, 0xc0, 0x9c, 0xd5, 0x71, 0x7a, 0x12, + 0x15, 0x29, 0x89, 0x42, 0xd6, 0x02, 0xa6, 0x0d, 0x3d, 0xf2, 0x6f, 0x34, + 0x96, 0x64, 0x76, 0xc5, 0xa2, 0xc1, 0x60, 0x22, +}; +static const unsigned char kat2384_addinreseed[] = {0}; +static const unsigned char kat2384_addin0[] = {0}; +static const unsigned char kat2384_addin1[] = {0}; +static const unsigned char kat2384_retbits[] = { + 0x1e, 0xd6, 0xa4, 0xfc, 0xfe, 0xf1, 0xd9, 0x60, 0x32, 0x8a, 0x31, 0xf2, + 0x82, 0xc6, 0x0f, 0x4f, 0x66, 0x28, 0xc2, 0x06, 0x1f, 0xe1, 0x14, 0x14, + 0x16, 0x58, 0xb5, 0x51, 0x7c, 0x5d, 0x0f, 0x04, 0x79, 0xb5, 0xfa, 0x11, + 0xeb, 0xb5, 0x70, 0x4b, 0x07, 0xb5, 0x8b, 0x15, 0x82, 0x74, 0x40, 0x6d, + 0xb8, 0x5d, 0xc4, 0x45, 0x71, 0xfa, 0x70, 0xee, 0x6f, 0xb9, 0xb2, 0x0e, + 0x95, 0x8f, 0x5a, 0x65, +}; +static const struct drbg_kat_pr_false kat2384_t = { + 13, kat2384_entropyin, kat2384_nonce, kat2384_persstr, + kat2384_entropyinreseed, kat2384_addinreseed, kat2384_addin0, + kat2384_addin1, kat2384_retbits +}; +static const struct drbg_kat kat2384 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2384_t +}; + +static const unsigned char kat2385_entropyin[] = { + 0x9d, 0x45, 0xbb, 0xae, 0x13, 0x56, 0xc6, 0x7b, 0xa8, 0x31, 0x36, 0xe8, + 0xef, 0x04, 0xd5, 0x2c, 0xc5, 0x8d, 0x1b, 0xa3, 0x9d, 0x98, 0x7a, 0x80, + 0xa5, 0x72, 0xe6, 0x2a, 0x11, 0xe0, 0x91, 0x52, +}; +static const unsigned char kat2385_nonce[] = {0}; +static const unsigned char kat2385_persstr[] = { + 0x34, 0x5b, 0x74, 0xcf, 0x00, 0x94, 0x7d, 0xc1, 0xee, 0xdb, 0xba, 0xcd, + 0x5e, 0x40, 0x30, 0xd5, 0x63, 0x9f, 0x5e, 0x3c, 0x0b, 0x9f, 0xb9, 0x86, + 0xfd, 0xc0, 0xc3, 0xc6, 0xcb, 0xac, 0xb5, 0x8b, +}; +static const unsigned char kat2385_entropyinreseed[] = { + 0x31, 0x50, 0xb6, 0xab, 0x1f, 0xb0, 0x05, 0xce, 0xb8, 0x32, 0x3c, 0x69, + 0x82, 0xfc, 0x3a, 0xf3, 0x09, 0x20, 0x77, 0x24, 0x1d, 0xcf, 0x49, 0x93, + 0xfe, 0x91, 0x69, 0x6b, 0xd5, 0xb8, 0xb7, 0x47, +}; +static const unsigned char kat2385_addinreseed[] = {0}; +static const unsigned char kat2385_addin0[] = {0}; +static const unsigned char kat2385_addin1[] = {0}; +static const unsigned char kat2385_retbits[] = { + 0xbf, 0xf8, 0x3f, 0x45, 0xe0, 0xa4, 0x22, 0x34, 0x89, 0xb0, 0x84, 0x09, + 0x49, 0x74, 0x71, 0x42, 0x7e, 0x7b, 0x82, 0xf8, 0x34, 0x08, 0x21, 0x37, + 0x49, 0x7b, 0xc5, 0x52, 0x12, 0x74, 0x46, 0xa8, 0xa3, 0xf5, 0x2a, 0x73, + 0x09, 0x14, 0x65, 0x0c, 0xd7, 0x53, 0x09, 0x81, 0x62, 0xf7, 0xd2, 0x53, + 0xbb, 0xd6, 0x25, 0x98, 0x34, 0x30, 0xd1, 0xf1, 0x6f, 0xcd, 0xb0, 0xf7, + 0x8a, 0x13, 0x48, 0xa8, +}; +static const struct drbg_kat_pr_false kat2385_t = { + 14, kat2385_entropyin, kat2385_nonce, kat2385_persstr, + kat2385_entropyinreseed, kat2385_addinreseed, kat2385_addin0, + kat2385_addin1, kat2385_retbits +}; +static const struct drbg_kat kat2385 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat2385_t +}; + +static const unsigned char kat2386_entropyin[] = { + 0xd4, 0x22, 0xed, 0xef, 0x41, 0x62, 0x36, 0xb5, 0xfc, 0x6e, 0x34, 0x05, + 0x8c, 0x25, 0x88, 0xa0, 0xc7, 0xaa, 0xa0, 0xd0, 0x1f, 0xad, 0xcf, 0x80, + 0xe9, 0xd4, 0xd6, 0xef, 0x3c, 0x51, 0x57, 0xef, +}; +static const unsigned char kat2386_nonce[] = {0}; +static const unsigned char kat2386_persstr[] = { + 0xc3, 0x3a, 0x82, 0x9f, 0xc5, 0x0c, 0x46, 0xbc, 0x71, 0x29, 0xe0, 0xc2, + 0x8d, 0x26, 0x0c, 0x45, 0x17, 0xb2, 0x8b, 0xa3, 0x2e, 0x5b, 0xe7, 0xc3, + 0x18, 0xf7, 0xf1, 0x82, 0x0a, 0x8c, 0x76, 0x0c, +}; +static const unsigned char kat2386_entropyinreseed[] = { + 0xa2, 0x41, 0x28, 0x08, 0xf1, 0x38, 0xfb, 0x7d, 0x77, 0x24, 0xea, 0x2b, + 0xca, 0xbe, 0xd6, 0xa6, 0x5e, 0x71, 0x0c, 0x36, 0x5d, 0xa8, 0xa2, 0xf2, + 0x39, 0x56, 0xef, 0xeb, 0x96, 0x5d, 0x4d, 0x2e, +}; +static const unsigned char kat2386_addinreseed[] = { + 0x24, 0x73, 0x3e, 0x6a, 0xce, 0xcc, 0x84, 0x9f, 0x12, 0x7a, 0xb1, 0x6a, + 0xd7, 0x54, 0x5a, 0x14, 0x83, 0x5c, 0x01, 0x06, 0x19, 0xde, 0xc1, 0x8a, + 0xef, 0x96, 0x22, 0x0b, 0xca, 0x09, 0x5b, 0xb5, +}; +static const unsigned char kat2386_addin0[] = { + 0x8b, 0xbd, 0xe6, 0x36, 0x75, 0xda, 0x64, 0x5a, 0x25, 0x21, 0x11, 0xc5, + 0x4e, 0x3c, 0x61, 0xf2, 0x7b, 0xd2, 0xc0, 0x33, 0x97, 0x84, 0x5b, 0x59, + 0xe1, 0xf2, 0x2a, 0xbd, 0x81, 0xb4, 0x2c, 0xec, +}; +static const unsigned char kat2386_addin1[] = { + 0x62, 0x20, 0x13, 0xfd, 0x3e, 0x2d, 0xf7, 0x9f, 0xe3, 0x4c, 0x27, 0x3a, + 0xf8, 0x42, 0x77, 0x80, 0x48, 0x68, 0x78, 0xaa, 0x90, 0xd0, 0xc2, 0x36, + 0x8d, 0xde, 0x1d, 0x75, 0x20, 0xb6, 0xab, 0x55, +}; +static const unsigned char kat2386_retbits[] = { + 0xeb, 0x1b, 0x85, 0x51, 0xd1, 0x06, 0x2b, 0x90, 0x7e, 0xfe, 0x53, 0x02, + 0x3c, 0xde, 0x83, 0xd8, 0x8b, 0x4d, 0x1d, 0xb2, 0x89, 0x1b, 0x8d, 0xbb, + 0x8d, 0x10, 0xd6, 0x96, 0xcb, 0x32, 0xea, 0x0b, 0xed, 0x5d, 0x70, 0xd7, + 0x85, 0x7b, 0xf2, 0x99, 0x0c, 0x02, 0x2b, 0xe6, 0x77, 0xad, 0x75, 0xa3, + 0xc8, 0x04, 0x26, 0x3a, 0x77, 0x56, 0xd2, 0x6f, 0x62, 0x90, 0x54, 0xe0, + 0x52, 0xda, 0xfe, 0xbf, +}; +static const struct drbg_kat_pr_false kat2386_t = { + 0, kat2386_entropyin, kat2386_nonce, kat2386_persstr, + kat2386_entropyinreseed, kat2386_addinreseed, kat2386_addin0, + kat2386_addin1, kat2386_retbits +}; +static const struct drbg_kat kat2386 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2386_t +}; + +static const unsigned char kat2387_entropyin[] = { + 0xe4, 0x76, 0xb8, 0x7e, 0xfc, 0xcc, 0xb8, 0x8d, 0xfd, 0xbb, 0x6e, 0x34, + 0x27, 0x3e, 0x0a, 0x67, 0xc6, 0xaf, 0x69, 0x97, 0x8b, 0xed, 0x0c, 0x24, + 0xeb, 0x30, 0x08, 0x80, 0xda, 0x53, 0x1b, 0xb0, +}; +static const unsigned char kat2387_nonce[] = {0}; +static const unsigned char kat2387_persstr[] = { + 0xeb, 0x90, 0x54, 0xf2, 0xab, 0xbd, 0xfb, 0x77, 0x8c, 0xb9, 0xf4, 0x24, + 0x4d, 0x8d, 0xf2, 0x13, 0xe1, 0x3c, 0xcd, 0x3d, 0x0e, 0x39, 0x51, 0x51, + 0xd9, 0xbd, 0x1e, 0xb5, 0xd8, 0xc8, 0x2d, 0x54, +}; +static const unsigned char kat2387_entropyinreseed[] = { + 0x32, 0x9a, 0xdc, 0xee, 0xe7, 0x6f, 0x1b, 0x9d, 0xd4, 0xe2, 0x09, 0x69, + 0x47, 0xfd, 0xfd, 0x0c, 0xf2, 0xf3, 0x7e, 0x78, 0x02, 0xae, 0x7b, 0xa6, + 0xf6, 0xf4, 0xa6, 0x4f, 0x59, 0x4e, 0x13, 0x9e, +}; +static const unsigned char kat2387_addinreseed[] = { + 0xb8, 0xaf, 0x7d, 0x0d, 0x51, 0x4e, 0xf5, 0x88, 0xb0, 0x53, 0x13, 0xdd, + 0xca, 0x65, 0xdd, 0xb2, 0x83, 0x0c, 0x04, 0x00, 0xf0, 0xb7, 0xac, 0x95, + 0xfa, 0xc3, 0xb8, 0xc7, 0xa5, 0x2a, 0xe0, 0x16, +}; +static const unsigned char kat2387_addin0[] = { + 0x0b, 0x60, 0xef, 0xcd, 0xa1, 0x48, 0xb0, 0x6d, 0x11, 0xac, 0x61, 0x06, + 0x4c, 0x53, 0x49, 0x48, 0x69, 0xe9, 0xdf, 0x53, 0xb2, 0x1a, 0x62, 0xbb, + 0x52, 0xd2, 0x80, 0x95, 0xd4, 0xc6, 0x56, 0xe4, +}; +static const unsigned char kat2387_addin1[] = { + 0xf8, 0xb6, 0x29, 0x3c, 0x60, 0x9e, 0xf8, 0x9b, 0x23, 0x9d, 0xc7, 0xfc, + 0xd2, 0xc4, 0x04, 0x80, 0x67, 0x43, 0xc8, 0x7e, 0x28, 0x78, 0x8b, 0x2c, + 0x45, 0xfd, 0xa2, 0x7e, 0x53, 0x6f, 0xbe, 0xc3, +}; +static const unsigned char kat2387_retbits[] = { + 0xec, 0x75, 0x27, 0xec, 0xe6, 0xf3, 0x88, 0x16, 0x02, 0xa1, 0x85, 0xc6, + 0x63, 0x03, 0x6b, 0x22, 0x82, 0x19, 0x15, 0x34, 0x7c, 0xbe, 0xed, 0x6f, + 0xa5, 0x1b, 0xc9, 0x38, 0xe2, 0x08, 0x8c, 0xca, 0x6b, 0x87, 0xeb, 0x82, + 0xd8, 0xf1, 0x1b, 0xca, 0xb2, 0xe1, 0xcb, 0x11, 0xa4, 0xb1, 0xcd, 0x63, + 0x5f, 0xf7, 0xb8, 0x0b, 0x81, 0xf4, 0x09, 0x83, 0xca, 0x03, 0x5c, 0xd3, + 0x03, 0x6d, 0xf5, 0xdf, +}; +static const struct drbg_kat_pr_false kat2387_t = { + 1, kat2387_entropyin, kat2387_nonce, kat2387_persstr, + kat2387_entropyinreseed, kat2387_addinreseed, kat2387_addin0, + kat2387_addin1, kat2387_retbits +}; +static const struct drbg_kat kat2387 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2387_t +}; + +static const unsigned char kat2388_entropyin[] = { + 0x67, 0x48, 0x6c, 0xd0, 0xf3, 0x89, 0x13, 0xbd, 0x08, 0x0c, 0x08, 0xd7, + 0x98, 0xfa, 0x0d, 0x82, 0x87, 0x89, 0x3f, 0xd8, 0xd4, 0x78, 0x30, 0x55, + 0xc7, 0x73, 0xa3, 0x95, 0x43, 0xb6, 0x7d, 0x8c, +}; +static const unsigned char kat2388_nonce[] = {0}; +static const unsigned char kat2388_persstr[] = { + 0xda, 0xdb, 0x51, 0x9f, 0x85, 0x93, 0x4d, 0x83, 0xe9, 0x59, 0xff, 0xaa, + 0x2f, 0x78, 0xa0, 0x08, 0x4d, 0x27, 0x76, 0xca, 0xf3, 0x7d, 0x78, 0x99, + 0xea, 0x73, 0xe0, 0x1b, 0xcd, 0x56, 0x53, 0xfc, +}; +static const unsigned char kat2388_entropyinreseed[] = { + 0xdf, 0x23, 0x9e, 0x68, 0x77, 0xc1, 0xc3, 0xe4, 0x8e, 0xe3, 0x80, 0x62, + 0x9f, 0xde, 0x10, 0x56, 0x34, 0x41, 0xf8, 0xef, 0xf0, 0x6b, 0x16, 0x98, + 0x82, 0xa2, 0x76, 0xa8, 0x5b, 0xfa, 0xff, 0xd8, +}; +static const unsigned char kat2388_addinreseed[] = { + 0xf0, 0xa9, 0xd6, 0x2d, 0x6d, 0xd4, 0x1b, 0x7a, 0x4d, 0x03, 0x8e, 0x7f, + 0x9e, 0x70, 0x55, 0x18, 0xbb, 0x08, 0xe3, 0x47, 0x94, 0xff, 0xdc, 0x80, + 0x12, 0x46, 0x3b, 0x12, 0x4c, 0xc4, 0x6e, 0xcd, +}; +static const unsigned char kat2388_addin0[] = { + 0xa1, 0xff, 0x4e, 0xbd, 0x04, 0x77, 0x93, 0x38, 0x88, 0x4a, 0x06, 0x0a, + 0xd6, 0x97, 0x0e, 0x73, 0xaa, 0x54, 0x81, 0x63, 0x73, 0xb7, 0xa5, 0x0d, + 0xef, 0xc1, 0xf0, 0x17, 0x92, 0xf6, 0xb6, 0x7f, +}; +static const unsigned char kat2388_addin1[] = { + 0x6a, 0x82, 0x57, 0xfe, 0x09, 0x04, 0x33, 0x77, 0x1b, 0x5c, 0xcd, 0x71, + 0x8a, 0xaf, 0xa2, 0x87, 0x55, 0xf7, 0x94, 0x6a, 0xde, 0xfd, 0xe8, 0x69, + 0x40, 0x2f, 0xeb, 0xa3, 0xba, 0x81, 0xe2, 0x54, +}; +static const unsigned char kat2388_retbits[] = { + 0x9d, 0xd9, 0x4d, 0xd8, 0x59, 0x48, 0x3f, 0x5e, 0x56, 0xb7, 0xe1, 0xd1, + 0x31, 0x16, 0x6d, 0xa9, 0x1a, 0x17, 0x89, 0x35, 0x99, 0xcd, 0x85, 0x29, + 0xfd, 0xa4, 0xf3, 0x10, 0x8c, 0xa1, 0x3e, 0x30, 0x77, 0x60, 0x16, 0x1c, + 0x40, 0x93, 0x90, 0xcb, 0x88, 0x7f, 0xfd, 0x18, 0x03, 0x18, 0x4b, 0xc4, + 0x7a, 0x58, 0xf1, 0xfa, 0x88, 0x37, 0xca, 0xe0, 0x1e, 0x28, 0x08, 0xcc, + 0xc9, 0x61, 0xf4, 0x7d, +}; +static const struct drbg_kat_pr_false kat2388_t = { + 2, kat2388_entropyin, kat2388_nonce, kat2388_persstr, + kat2388_entropyinreseed, kat2388_addinreseed, kat2388_addin0, + kat2388_addin1, kat2388_retbits +}; +static const struct drbg_kat kat2388 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2388_t +}; + +static const unsigned char kat2389_entropyin[] = { + 0xcf, 0xb9, 0xf8, 0x0d, 0xc9, 0x05, 0xa4, 0xbd, 0xba, 0x94, 0xb0, 0x6c, + 0xc4, 0x19, 0x76, 0x16, 0x4c, 0x1e, 0x2a, 0xf2, 0xbe, 0x58, 0x30, 0xfc, + 0xb7, 0xf4, 0xeb, 0x3e, 0x74, 0xdb, 0x24, 0x05, +}; +static const unsigned char kat2389_nonce[] = {0}; +static const unsigned char kat2389_persstr[] = { + 0xdc, 0x76, 0xf5, 0xfa, 0xf9, 0xc5, 0x78, 0x1c, 0x8b, 0xcf, 0x81, 0xe4, + 0xde, 0xad, 0x88, 0x3e, 0xc0, 0x0c, 0x0b, 0x59, 0x55, 0x3f, 0xf9, 0x57, + 0xda, 0xfc, 0xc7, 0x44, 0x05, 0x13, 0x14, 0x93, +}; +static const unsigned char kat2389_entropyinreseed[] = { + 0xa8, 0x51, 0xc5, 0x68, 0xe5, 0xec, 0xf9, 0xe6, 0xc8, 0x40, 0xf7, 0xb3, + 0x29, 0x47, 0x1d, 0x38, 0x1a, 0x91, 0x11, 0x6e, 0xa2, 0x26, 0xdd, 0xf9, + 0x67, 0xab, 0x43, 0x47, 0x8b, 0x8a, 0x19, 0x9f, +}; +static const unsigned char kat2389_addinreseed[] = { + 0x0e, 0xfa, 0x40, 0x03, 0xcd, 0x56, 0x33, 0x43, 0xd4, 0x61, 0xc0, 0x5b, + 0x85, 0xa3, 0xc3, 0x26, 0xfb, 0x68, 0x05, 0x64, 0x6d, 0x74, 0x69, 0x19, + 0x9f, 0x45, 0xe2, 0xa1, 0xe2, 0x0b, 0xef, 0x00, +}; +static const unsigned char kat2389_addin0[] = { + 0xb5, 0x7b, 0x47, 0x6e, 0x20, 0xd1, 0x85, 0xd9, 0xd2, 0xa3, 0xf9, 0x31, + 0xbe, 0xd0, 0x46, 0x3f, 0x19, 0xc6, 0x73, 0xbb, 0x49, 0xc3, 0xa6, 0x81, + 0xc1, 0xb6, 0xc8, 0x12, 0x57, 0x1c, 0xfc, 0x7b, +}; +static const unsigned char kat2389_addin1[] = { + 0x3c, 0x29, 0x5f, 0x47, 0xe5, 0x34, 0x33, 0x1d, 0xf2, 0xf6, 0x70, 0x71, + 0x22, 0xf0, 0x7f, 0x98, 0x37, 0xe9, 0x02, 0xe3, 0x79, 0x4e, 0x35, 0xdd, + 0x6e, 0x6d, 0x1b, 0x06, 0xc4, 0x0f, 0x2c, 0x0c, +}; +static const unsigned char kat2389_retbits[] = { + 0x77, 0x7e, 0x5e, 0x33, 0xd6, 0xff, 0xf5, 0x52, 0x83, 0x76, 0x7e, 0x1c, + 0x7a, 0xdd, 0xf3, 0x76, 0x92, 0x11, 0x98, 0x3a, 0xf6, 0x12, 0xf1, 0xa8, + 0xb9, 0x37, 0x16, 0x31, 0x08, 0x07, 0x72, 0x10, 0x3f, 0xba, 0x8d, 0xff, + 0x4e, 0xbc, 0x40, 0x47, 0x6f, 0xa7, 0xa2, 0x19, 0xe6, 0x41, 0x61, 0x72, + 0xba, 0x8f, 0x3c, 0xd3, 0x66, 0xbd, 0xad, 0x48, 0x7e, 0xbb, 0x2f, 0xa7, + 0x8d, 0xf0, 0xf3, 0xd1, +}; +static const struct drbg_kat_pr_false kat2389_t = { + 3, kat2389_entropyin, kat2389_nonce, kat2389_persstr, + kat2389_entropyinreseed, kat2389_addinreseed, kat2389_addin0, + kat2389_addin1, kat2389_retbits +}; +static const struct drbg_kat kat2389 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2389_t +}; + +static const unsigned char kat2390_entropyin[] = { + 0xdb, 0x55, 0x2d, 0x5f, 0x75, 0xd1, 0x70, 0x74, 0x67, 0xe6, 0x28, 0x6e, + 0xff, 0x26, 0x47, 0x5e, 0xa4, 0x7f, 0xbf, 0xe7, 0xc6, 0x4b, 0x12, 0xed, + 0x34, 0xb3, 0x61, 0xf1, 0x50, 0xcd, 0xa0, 0x3f, +}; +static const unsigned char kat2390_nonce[] = {0}; +static const unsigned char kat2390_persstr[] = { + 0x54, 0x08, 0xac, 0x0a, 0x26, 0x06, 0x1e, 0x09, 0x89, 0x90, 0x65, 0xc1, + 0xdd, 0xde, 0x78, 0x43, 0x9d, 0xbd, 0x5f, 0xfa, 0xab, 0xf7, 0x62, 0xc0, + 0x35, 0xe7, 0x17, 0x96, 0xa4, 0x64, 0x5d, 0x28, +}; +static const unsigned char kat2390_entropyinreseed[] = { + 0xeb, 0x08, 0x44, 0x72, 0xba, 0x66, 0xc9, 0x20, 0xd8, 0xbc, 0x08, 0x7e, + 0xff, 0xc3, 0x0e, 0xbe, 0x7d, 0xb5, 0xba, 0x56, 0xe9, 0x75, 0x49, 0x0a, + 0xc2, 0xd3, 0x55, 0x23, 0x93, 0x88, 0x09, 0x3f, +}; +static const unsigned char kat2390_addinreseed[] = { + 0x25, 0x5e, 0x86, 0x39, 0xcc, 0x74, 0xb7, 0x7e, 0xb1, 0x5a, 0xfe, 0xb6, + 0x1f, 0x90, 0x92, 0x6a, 0x2d, 0x43, 0x47, 0x78, 0x7b, 0x54, 0xf5, 0xd3, + 0x86, 0x1e, 0x66, 0xa0, 0x5f, 0x85, 0xd5, 0xc6, +}; +static const unsigned char kat2390_addin0[] = { + 0x54, 0xfe, 0x7d, 0x9d, 0xc4, 0x0b, 0x8d, 0x18, 0x6f, 0xdd, 0x55, 0x25, + 0x00, 0x51, 0x41, 0x9d, 0x9c, 0x2b, 0x25, 0xad, 0xd4, 0xc7, 0xb3, 0x2b, + 0xcc, 0xf6, 0x00, 0x9a, 0x3d, 0x93, 0x88, 0x31, +}; +static const unsigned char kat2390_addin1[] = { + 0x20, 0x6a, 0xe3, 0x0d, 0x2d, 0x6f, 0x7e, 0xe5, 0xdd, 0x0c, 0xdf, 0x2e, + 0x40, 0x35, 0x9a, 0x31, 0x83, 0x8f, 0xae, 0x94, 0xfd, 0x08, 0x17, 0x9a, + 0xf2, 0x33, 0x16, 0x02, 0x1b, 0xca, 0xf9, 0x04, +}; +static const unsigned char kat2390_retbits[] = { + 0xa7, 0x2f, 0xcf, 0x91, 0x00, 0x01, 0x6c, 0xc4, 0x64, 0x56, 0xfc, 0x29, + 0x49, 0x80, 0x65, 0x12, 0xe1, 0xd3, 0x46, 0x28, 0x95, 0x57, 0x32, 0x2b, + 0xe1, 0x9b, 0x2e, 0x2b, 0x81, 0x63, 0xbf, 0x69, 0xab, 0x73, 0x8d, 0x30, + 0x70, 0x07, 0x7b, 0xb3, 0x55, 0xc6, 0xa8, 0x90, 0x1e, 0x75, 0xf4, 0xc6, + 0x06, 0x78, 0x31, 0xa0, 0xdb, 0xa9, 0x57, 0xd6, 0xd8, 0x7f, 0xaa, 0xe6, + 0xbf, 0x0f, 0x95, 0xeb, +}; +static const struct drbg_kat_pr_false kat2390_t = { + 4, kat2390_entropyin, kat2390_nonce, kat2390_persstr, + kat2390_entropyinreseed, kat2390_addinreseed, kat2390_addin0, + kat2390_addin1, kat2390_retbits +}; +static const struct drbg_kat kat2390 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2390_t +}; + +static const unsigned char kat2391_entropyin[] = { + 0x3a, 0x1c, 0x78, 0xa5, 0x6d, 0x5b, 0x7d, 0x01, 0x26, 0xab, 0xc6, 0x22, + 0x59, 0xc0, 0x42, 0x03, 0x8a, 0x3a, 0xac, 0x44, 0x8f, 0x93, 0xab, 0x44, + 0xef, 0x61, 0x12, 0x22, 0x43, 0x9e, 0x0c, 0x2b, +}; +static const unsigned char kat2391_nonce[] = {0}; +static const unsigned char kat2391_persstr[] = { + 0x1e, 0x68, 0x2f, 0x42, 0xe2, 0xbc, 0x17, 0xde, 0x51, 0x55, 0xa3, 0xf3, + 0xfd, 0x93, 0x45, 0x75, 0x90, 0x6e, 0x19, 0xbb, 0x45, 0xe3, 0xd0, 0x10, + 0xfa, 0xf9, 0x62, 0x39, 0x82, 0xbb, 0xbb, 0x0f, +}; +static const unsigned char kat2391_entropyinreseed[] = { + 0x8d, 0xc5, 0xa7, 0x83, 0xae, 0x1a, 0xdd, 0xc4, 0xb7, 0x3d, 0x39, 0xdc, + 0x57, 0x27, 0xa8, 0xbc, 0xc2, 0xd0, 0xd8, 0xc6, 0x03, 0x64, 0xdd, 0xe6, + 0x5b, 0xd9, 0xa0, 0xef, 0xbf, 0x50, 0x42, 0x75, +}; +static const unsigned char kat2391_addinreseed[] = { + 0x73, 0x39, 0xe7, 0x10, 0x87, 0x72, 0xe6, 0x5c, 0x29, 0xb8, 0xb7, 0x47, + 0x15, 0x70, 0x84, 0x4a, 0x81, 0x5c, 0xc6, 0x38, 0xa0, 0xc2, 0xc8, 0xfa, + 0x68, 0x8b, 0xa6, 0x37, 0x7f, 0xfa, 0xe5, 0x56, +}; +static const unsigned char kat2391_addin0[] = { + 0xd4, 0x63, 0xfa, 0xf4, 0xe0, 0x58, 0x52, 0x5d, 0x4a, 0xc2, 0x57, 0x50, + 0x53, 0xf8, 0x5c, 0xd4, 0x21, 0x6d, 0xf7, 0xd5, 0xef, 0xfd, 0x3d, 0xcc, + 0x52, 0x67, 0xd6, 0x81, 0xb8, 0x94, 0xc8, 0x04, +}; +static const unsigned char kat2391_addin1[] = { + 0x39, 0x42, 0x7b, 0x84, 0xc2, 0x35, 0x43, 0x01, 0x14, 0xfc, 0xd4, 0x6c, + 0x8b, 0x07, 0x1c, 0x3e, 0x84, 0x31, 0xf5, 0x40, 0x26, 0xa4, 0xb9, 0x5a, + 0x0a, 0xc5, 0x86, 0xd4, 0xce, 0x49, 0xc7, 0xcd, +}; +static const unsigned char kat2391_retbits[] = { + 0x3a, 0xc8, 0xb4, 0xa2, 0x15, 0xf9, 0xa4, 0x7e, 0x97, 0xa7, 0xe0, 0x15, + 0x0e, 0x8e, 0xd2, 0x7a, 0xb5, 0x9b, 0xb5, 0x7e, 0xfb, 0xeb, 0x13, 0x83, + 0xf5, 0xdb, 0x39, 0xb7, 0xed, 0xec, 0xee, 0x92, 0x05, 0xf5, 0xcc, 0xf4, + 0xd6, 0x6a, 0x9c, 0x28, 0x47, 0xb2, 0xc3, 0x59, 0x66, 0x0c, 0xac, 0xeb, + 0xb8, 0xc8, 0x52, 0xaf, 0x5d, 0x17, 0x45, 0x91, 0x74, 0x0e, 0x8c, 0xf9, + 0xe0, 0xf2, 0x9a, 0x12, +}; +static const struct drbg_kat_pr_false kat2391_t = { + 5, kat2391_entropyin, kat2391_nonce, kat2391_persstr, + kat2391_entropyinreseed, kat2391_addinreseed, kat2391_addin0, + kat2391_addin1, kat2391_retbits +}; +static const struct drbg_kat kat2391 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2391_t +}; + +static const unsigned char kat2392_entropyin[] = { + 0x15, 0xf1, 0xb6, 0x2b, 0x39, 0xaf, 0x34, 0x23, 0xe3, 0xf7, 0x7b, 0xcf, + 0xae, 0x9f, 0x5e, 0x89, 0x8c, 0xae, 0xdd, 0x6c, 0xde, 0x04, 0xa5, 0x14, + 0xf3, 0xba, 0xb8, 0xb4, 0xbc, 0x5f, 0xf2, 0xb5, +}; +static const unsigned char kat2392_nonce[] = {0}; +static const unsigned char kat2392_persstr[] = { + 0x7b, 0x31, 0xdf, 0x6d, 0x1d, 0xd9, 0xc8, 0xda, 0x22, 0x10, 0x5f, 0xd2, + 0xa6, 0x15, 0xec, 0x67, 0xcd, 0x4d, 0x96, 0x39, 0x28, 0xc2, 0x3b, 0x61, + 0xa9, 0x58, 0x35, 0x2b, 0x97, 0xaa, 0x2f, 0x29, +}; +static const unsigned char kat2392_entropyinreseed[] = { + 0x47, 0xdb, 0x12, 0xea, 0xb8, 0x42, 0x00, 0xc9, 0x90, 0x29, 0xcc, 0xa1, + 0x12, 0x15, 0x5b, 0x46, 0x82, 0x9a, 0x09, 0xcb, 0xf3, 0xbb, 0x8d, 0x0c, + 0x53, 0x49, 0x83, 0x32, 0x0b, 0x08, 0x66, 0x4b, +}; +static const unsigned char kat2392_addinreseed[] = { + 0x2a, 0xc1, 0x0a, 0x72, 0xb1, 0xe9, 0x6c, 0xae, 0xc0, 0xc9, 0xfc, 0x04, + 0x36, 0x76, 0x88, 0xa6, 0x2d, 0xf2, 0xe8, 0x39, 0x89, 0xe7, 0xd7, 0xb5, + 0x81, 0x6b, 0xf8, 0x2a, 0xa7, 0xb5, 0xd5, 0x5c, +}; +static const unsigned char kat2392_addin0[] = { + 0x88, 0x24, 0x08, 0xb6, 0x3e, 0xdb, 0x85, 0xee, 0x30, 0x60, 0xc0, 0xc0, + 0x23, 0x46, 0x46, 0x52, 0x2a, 0x3c, 0x3c, 0x9a, 0x9a, 0xdc, 0x23, 0x80, + 0x34, 0xfc, 0x3a, 0x3f, 0x8f, 0x3d, 0xd3, 0xf0, +}; +static const unsigned char kat2392_addin1[] = { + 0x3d, 0x5c, 0xbe, 0xf0, 0xd5, 0xbf, 0xca, 0x58, 0xef, 0x82, 0x3f, 0x2b, + 0xb3, 0xb0, 0x71, 0xe3, 0xa6, 0x93, 0x8b, 0x61, 0xf3, 0xde, 0x58, 0xcd, + 0x18, 0xd0, 0xff, 0xe7, 0x1e, 0x87, 0xa1, 0x58, +}; +static const unsigned char kat2392_retbits[] = { + 0x51, 0xba, 0x7f, 0x02, 0x0c, 0xb3, 0x15, 0xfa, 0xd6, 0xbd, 0xf1, 0x01, + 0x4d, 0xa8, 0xd1, 0x50, 0x03, 0x2b, 0x87, 0x3b, 0x09, 0x32, 0xcf, 0x15, + 0x81, 0x72, 0xf0, 0xa5, 0xd9, 0x23, 0x82, 0x2b, 0xd3, 0x26, 0xff, 0x7c, + 0xab, 0x77, 0xb7, 0x57, 0x69, 0xa6, 0x2d, 0x45, 0x18, 0x39, 0x56, 0xf9, + 0xe5, 0xa7, 0x58, 0x42, 0x03, 0xdd, 0x19, 0xac, 0x81, 0x8d, 0xf5, 0x90, + 0xef, 0x5e, 0xed, 0xf7, +}; +static const struct drbg_kat_pr_false kat2392_t = { + 6, kat2392_entropyin, kat2392_nonce, kat2392_persstr, + kat2392_entropyinreseed, kat2392_addinreseed, kat2392_addin0, + kat2392_addin1, kat2392_retbits +}; +static const struct drbg_kat kat2392 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2392_t +}; + +static const unsigned char kat2393_entropyin[] = { + 0x36, 0xc3, 0x9d, 0xae, 0x57, 0xd9, 0x9a, 0xfd, 0x30, 0xfd, 0x4e, 0xba, + 0xfd, 0x1c, 0x83, 0x43, 0xa7, 0x85, 0xfe, 0x26, 0xbd, 0xb1, 0x2e, 0xb3, + 0xbe, 0x90, 0xb5, 0xda, 0xcc, 0xd2, 0xa3, 0x45, +}; +static const unsigned char kat2393_nonce[] = {0}; +static const unsigned char kat2393_persstr[] = { + 0x18, 0x85, 0x3c, 0x18, 0x69, 0x9a, 0x7b, 0x64, 0xf1, 0x36, 0xce, 0x24, + 0xa8, 0x19, 0x20, 0x52, 0xd7, 0x4e, 0x79, 0x9d, 0xc0, 0x6d, 0x2d, 0x8e, + 0x53, 0xbe, 0xf7, 0x47, 0xd6, 0xda, 0x42, 0xdb, +}; +static const unsigned char kat2393_entropyinreseed[] = { + 0xf7, 0xab, 0x54, 0x75, 0x22, 0x02, 0xc9, 0xce, 0xfa, 0xc3, 0x67, 0xe3, + 0x7b, 0x28, 0xfa, 0x2f, 0x30, 0x4c, 0xc1, 0x78, 0xfc, 0x8c, 0x17, 0x9e, + 0x76, 0xdc, 0xe1, 0x1e, 0x3d, 0xc7, 0xa5, 0x26, +}; +static const unsigned char kat2393_addinreseed[] = { + 0x61, 0xb9, 0xa2, 0xe8, 0xc1, 0x32, 0x85, 0x53, 0x42, 0x3e, 0xc0, 0xed, + 0x71, 0x8f, 0x53, 0x2e, 0xd9, 0xd5, 0x10, 0x36, 0x3b, 0x82, 0x59, 0x0c, + 0xcf, 0xb5, 0x1a, 0xca, 0x85, 0x94, 0xb4, 0xef, +}; +static const unsigned char kat2393_addin0[] = { + 0x9d, 0xc4, 0x83, 0xda, 0xc4, 0x07, 0x20, 0x48, 0xc4, 0xec, 0x5a, 0x3b, + 0xeb, 0x21, 0x7e, 0xbf, 0xa4, 0x10, 0x36, 0x59, 0x45, 0xa7, 0xc2, 0x49, + 0xe1, 0x35, 0xae, 0x55, 0xc7, 0x9e, 0xed, 0xe8, +}; +static const unsigned char kat2393_addin1[] = { + 0x84, 0x28, 0x11, 0x60, 0x18, 0x59, 0xfd, 0x73, 0x97, 0x54, 0xa6, 0xed, + 0x72, 0x50, 0x39, 0xbe, 0xcf, 0x0b, 0xe0, 0x4c, 0x17, 0x2c, 0xac, 0x5c, + 0x97, 0xfa, 0x2e, 0x4a, 0xe7, 0x16, 0x09, 0xb4, +}; +static const unsigned char kat2393_retbits[] = { + 0x48, 0x15, 0x14, 0x02, 0x38, 0x30, 0xf4, 0x3b, 0x09, 0x28, 0x2c, 0xf0, + 0xfd, 0x98, 0x98, 0x7d, 0x1b, 0xfe, 0xe3, 0xd1, 0xba, 0x71, 0xa9, 0x1e, + 0xb8, 0x06, 0x58, 0x35, 0x0f, 0xa9, 0x13, 0x9b, 0x95, 0x67, 0x1f, 0x1f, + 0x49, 0x2c, 0xe3, 0x7e, 0xee, 0x4c, 0x63, 0x72, 0xec, 0x73, 0xa2, 0x6a, + 0xdd, 0xd3, 0x50, 0x8e, 0x28, 0xed, 0x4e, 0xb0, 0xed, 0x83, 0x48, 0xfd, + 0x28, 0xfe, 0x56, 0x9c, +}; +static const struct drbg_kat_pr_false kat2393_t = { + 7, kat2393_entropyin, kat2393_nonce, kat2393_persstr, + kat2393_entropyinreseed, kat2393_addinreseed, kat2393_addin0, + kat2393_addin1, kat2393_retbits +}; +static const struct drbg_kat kat2393 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2393_t +}; + +static const unsigned char kat2394_entropyin[] = { + 0x77, 0xd8, 0xb9, 0x76, 0x47, 0x5a, 0x2d, 0xa0, 0x9a, 0xfe, 0x53, 0xeb, + 0x63, 0x75, 0x14, 0x7c, 0x47, 0xc1, 0x4a, 0xe3, 0xe8, 0x0b, 0x56, 0xce, + 0x90, 0xcd, 0xbe, 0x10, 0x39, 0x89, 0xd4, 0x1d, +}; +static const unsigned char kat2394_nonce[] = {0}; +static const unsigned char kat2394_persstr[] = { + 0x58, 0xa0, 0x54, 0x6a, 0xe7, 0xfb, 0x83, 0xd3, 0x5e, 0x9b, 0x8b, 0xe9, + 0xe5, 0xac, 0xab, 0xdd, 0x07, 0x50, 0x40, 0x78, 0x9e, 0x4a, 0x9b, 0x05, + 0x4e, 0x32, 0x1a, 0x92, 0x68, 0x31, 0x49, 0x5d, +}; +static const unsigned char kat2394_entropyinreseed[] = { + 0xf2, 0x31, 0xbf, 0x21, 0x65, 0x5d, 0xe0, 0x14, 0xcd, 0x1b, 0x06, 0xe0, + 0x7d, 0x8d, 0x11, 0xea, 0x7f, 0xe0, 0x32, 0x8e, 0x67, 0x00, 0xd9, 0xe6, + 0x28, 0x9e, 0xb8, 0xdf, 0x1c, 0x63, 0x52, 0x08, +}; +static const unsigned char kat2394_addinreseed[] = { + 0x73, 0x98, 0x48, 0x0c, 0xf9, 0xcd, 0x0e, 0xe4, 0xd4, 0x8d, 0x5e, 0x04, + 0xbd, 0x46, 0x03, 0xf1, 0xc6, 0xd9, 0x84, 0x7b, 0x8e, 0xbc, 0x37, 0xf0, + 0x14, 0x5b, 0x50, 0xe6, 0x64, 0x8a, 0x8d, 0xa5, +}; +static const unsigned char kat2394_addin0[] = { + 0x5d, 0x40, 0x48, 0x36, 0xeb, 0x95, 0x7f, 0x47, 0x21, 0x69, 0x57, 0xfd, + 0xff, 0x9a, 0xdc, 0x1d, 0x80, 0x5b, 0xeb, 0x1d, 0x74, 0xde, 0x37, 0xde, + 0xca, 0xf1, 0x8d, 0x16, 0x38, 0xab, 0x7d, 0xf2, +}; +static const unsigned char kat2394_addin1[] = { + 0x0d, 0x05, 0xe8, 0x4f, 0x22, 0xd2, 0x4f, 0x81, 0x4c, 0xf3, 0xac, 0xc6, + 0xce, 0x9a, 0xdc, 0xd5, 0xa1, 0xe6, 0xc1, 0xa1, 0x19, 0xab, 0xa1, 0xc9, + 0x41, 0xa2, 0x7c, 0xa7, 0x2c, 0x89, 0x46, 0xbf, +}; +static const unsigned char kat2394_retbits[] = { + 0x1e, 0x50, 0xe3, 0x91, 0xd8, 0x03, 0x89, 0x80, 0x8c, 0xfe, 0xa2, 0xad, + 0xf3, 0xc5, 0xba, 0x78, 0xa4, 0xef, 0x35, 0x5e, 0xa3, 0x59, 0xb8, 0xdb, + 0xaa, 0x0f, 0xfc, 0x8b, 0x54, 0x4f, 0x55, 0x74, 0xc8, 0x8c, 0x0f, 0xc7, + 0x1d, 0xbc, 0xfd, 0x71, 0x4c, 0x3b, 0x61, 0x3e, 0xff, 0xc0, 0xe5, 0xc2, + 0x58, 0x55, 0x77, 0xf2, 0x31, 0xd8, 0x12, 0x4f, 0x47, 0xe1, 0xfd, 0x7c, + 0x3a, 0xb4, 0x16, 0xe1, +}; +static const struct drbg_kat_pr_false kat2394_t = { + 8, kat2394_entropyin, kat2394_nonce, kat2394_persstr, + kat2394_entropyinreseed, kat2394_addinreseed, kat2394_addin0, + kat2394_addin1, kat2394_retbits +}; +static const struct drbg_kat kat2394 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2394_t +}; + +static const unsigned char kat2395_entropyin[] = { + 0x0b, 0x8b, 0xba, 0xe7, 0x2b, 0xb6, 0xd5, 0xe5, 0x93, 0x98, 0x49, 0x7a, + 0x0c, 0x7e, 0x90, 0x0e, 0xe8, 0x46, 0x90, 0x46, 0x9c, 0x07, 0xe7, 0x27, + 0x04, 0xc3, 0xf9, 0xf7, 0x9c, 0xf8, 0xfa, 0x47, +}; +static const unsigned char kat2395_nonce[] = {0}; +static const unsigned char kat2395_persstr[] = { + 0xb7, 0x33, 0x1d, 0xfe, 0xef, 0x1b, 0xb7, 0xb7, 0x60, 0x15, 0xf1, 0x81, + 0xa3, 0x0f, 0x56, 0x6c, 0xf2, 0xe2, 0x61, 0x6a, 0x73, 0xed, 0x49, 0x46, + 0x53, 0x21, 0x8f, 0x43, 0x04, 0x0b, 0x5f, 0xb1, +}; +static const unsigned char kat2395_entropyinreseed[] = { + 0x3c, 0x5a, 0x05, 0xdf, 0x76, 0xba, 0xe6, 0x2c, 0x6f, 0xea, 0xe1, 0xb7, + 0x30, 0x5a, 0x52, 0xf2, 0x06, 0xb6, 0x96, 0xfd, 0x31, 0xcf, 0x61, 0x06, + 0xce, 0x89, 0x9c, 0x14, 0xc6, 0xba, 0x41, 0x38, +}; +static const unsigned char kat2395_addinreseed[] = { + 0xbd, 0xb3, 0xc0, 0xb0, 0xa5, 0x0d, 0x7f, 0x62, 0x28, 0x52, 0xa0, 0x11, + 0xf6, 0x7d, 0xa2, 0x1b, 0x11, 0x70, 0x15, 0xea, 0x6e, 0x89, 0xbf, 0x46, + 0xf0, 0xe8, 0xf4, 0x48, 0x41, 0xb4, 0x73, 0x3e, +}; +static const unsigned char kat2395_addin0[] = { + 0xec, 0xc1, 0xf3, 0xd4, 0x39, 0x82, 0xa8, 0x54, 0x50, 0x42, 0x44, 0x27, + 0x3a, 0xe7, 0x57, 0xe9, 0x25, 0x69, 0x67, 0xd1, 0x19, 0x24, 0xcb, 0xfb, + 0x1d, 0x99, 0xc2, 0x3c, 0x20, 0xa4, 0xc1, 0x4c, +}; +static const unsigned char kat2395_addin1[] = { + 0xc6, 0xd2, 0x44, 0xa0, 0xbb, 0xd6, 0x9d, 0x5a, 0x7a, 0x22, 0xb4, 0x56, + 0x42, 0x5e, 0x97, 0xc4, 0x3d, 0x1d, 0x90, 0x66, 0x00, 0x36, 0xea, 0xd4, + 0x4c, 0x16, 0xc8, 0x6f, 0x43, 0xa0, 0x75, 0xd4, +}; +static const unsigned char kat2395_retbits[] = { + 0x74, 0x0f, 0x54, 0x71, 0x0d, 0xb8, 0x7d, 0x08, 0x66, 0xb1, 0xbf, 0x32, + 0x3b, 0xba, 0xd8, 0x08, 0xef, 0x10, 0xb1, 0xa0, 0x4b, 0x5b, 0xbc, 0xa3, + 0xae, 0x03, 0x74, 0xb2, 0xfb, 0x8b, 0x0f, 0x03, 0xd5, 0x8c, 0x2e, 0xf0, + 0x39, 0xf8, 0x04, 0x85, 0xd1, 0xe9, 0xc7, 0x40, 0xb5, 0xf0, 0x1e, 0x2d, + 0x36, 0xc4, 0x63, 0xea, 0x07, 0xbd, 0x10, 0x0a, 0x87, 0x6b, 0x1c, 0xda, + 0x60, 0xae, 0x79, 0x69, +}; +static const struct drbg_kat_pr_false kat2395_t = { + 9, kat2395_entropyin, kat2395_nonce, kat2395_persstr, + kat2395_entropyinreseed, kat2395_addinreseed, kat2395_addin0, + kat2395_addin1, kat2395_retbits +}; +static const struct drbg_kat kat2395 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2395_t +}; + +static const unsigned char kat2396_entropyin[] = { + 0x1c, 0x57, 0x53, 0x52, 0x09, 0x25, 0x30, 0xf9, 0x90, 0xb7, 0x71, 0x18, + 0x69, 0x77, 0xbd, 0xd6, 0x84, 0x5b, 0xd3, 0x4b, 0x47, 0xaa, 0xd8, 0xd9, + 0x81, 0x77, 0x83, 0xb0, 0x4e, 0xbf, 0xbc, 0xc6, +}; +static const unsigned char kat2396_nonce[] = {0}; +static const unsigned char kat2396_persstr[] = { + 0x4e, 0x74, 0xeb, 0xc3, 0x6d, 0x1e, 0x97, 0xc5, 0x76, 0x5a, 0x20, 0xb7, + 0x89, 0x72, 0xc0, 0x5f, 0x34, 0xf4, 0x13, 0x06, 0x82, 0x3c, 0x73, 0x8d, + 0x62, 0x79, 0xb5, 0x85, 0x77, 0x7a, 0xa7, 0xf3, +}; +static const unsigned char kat2396_entropyinreseed[] = { + 0x93, 0x4e, 0x50, 0x79, 0x4c, 0xc9, 0x04, 0x06, 0xeb, 0x2f, 0xbd, 0x8a, + 0x46, 0xa9, 0xa0, 0x9e, 0xbd, 0xc3, 0xf9, 0x80, 0x26, 0x04, 0xc6, 0x60, + 0x8b, 0xe0, 0x8c, 0xa2, 0x71, 0x09, 0xe5, 0xe3, +}; +static const unsigned char kat2396_addinreseed[] = { + 0x58, 0x67, 0xc2, 0x37, 0x3d, 0x3a, 0x6d, 0xa7, 0xbc, 0x6b, 0xd5, 0x0a, + 0x4b, 0x25, 0x55, 0x58, 0x7f, 0x44, 0xcf, 0x13, 0x1d, 0x0a, 0xdf, 0x91, + 0x26, 0x0d, 0xa9, 0xe0, 0x32, 0xfc, 0x36, 0x80, +}; +static const unsigned char kat2396_addin0[] = { + 0x86, 0x1b, 0xa9, 0xa0, 0x09, 0x5d, 0x81, 0x8f, 0x85, 0x11, 0xfc, 0x56, + 0xbf, 0x3f, 0xdf, 0xa9, 0x00, 0x32, 0x8c, 0x38, 0x8e, 0x9e, 0xd8, 0x0f, + 0x3d, 0x8e, 0x40, 0xde, 0xa0, 0x78, 0x8a, 0x80, +}; +static const unsigned char kat2396_addin1[] = { + 0xa5, 0x15, 0x43, 0x3a, 0x73, 0xbc, 0xd0, 0x3a, 0x4f, 0x65, 0x61, 0x71, + 0x7b, 0x44, 0x6e, 0x8e, 0xb7, 0xec, 0xac, 0x2b, 0x29, 0xcc, 0x87, 0xec, + 0x9c, 0xa5, 0xa4, 0x4e, 0x6f, 0xad, 0xca, 0x8a, +}; +static const unsigned char kat2396_retbits[] = { + 0x57, 0xd9, 0x51, 0x3a, 0xb6, 0xbc, 0x4e, 0x5a, 0x40, 0xdd, 0x23, 0x1a, + 0x3e, 0x9b, 0xa5, 0x5a, 0xa9, 0x26, 0x44, 0xfa, 0x6e, 0x0c, 0x6b, 0xe4, + 0xf9, 0x62, 0xfd, 0x87, 0x88, 0x20, 0x4c, 0xaf, 0x94, 0x83, 0x7e, 0x90, + 0x74, 0x31, 0x81, 0x5a, 0x15, 0x0e, 0x7d, 0x72, 0x2e, 0x2d, 0xaa, 0x4e, + 0xe0, 0x5e, 0x64, 0x7c, 0x9a, 0xe0, 0xfa, 0x75, 0xa0, 0xa6, 0xef, 0x42, + 0x04, 0xd7, 0x4c, 0x16, +}; +static const struct drbg_kat_pr_false kat2396_t = { + 10, kat2396_entropyin, kat2396_nonce, kat2396_persstr, + kat2396_entropyinreseed, kat2396_addinreseed, kat2396_addin0, + kat2396_addin1, kat2396_retbits +}; +static const struct drbg_kat kat2396 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2396_t +}; + +static const unsigned char kat2397_entropyin[] = { + 0x18, 0x67, 0x71, 0xfb, 0x18, 0xb7, 0xb7, 0x5d, 0xc1, 0xab, 0x2b, 0x51, + 0xab, 0x0e, 0x52, 0x42, 0xdc, 0xb1, 0x12, 0x85, 0xcd, 0xc6, 0x1b, 0x11, + 0x2f, 0xb2, 0x39, 0xf5, 0x79, 0xfb, 0x5c, 0xd2, +}; +static const unsigned char kat2397_nonce[] = {0}; +static const unsigned char kat2397_persstr[] = { + 0xc8, 0x08, 0x40, 0xa4, 0x2b, 0x99, 0x92, 0xb2, 0x88, 0xd4, 0x2c, 0xc9, + 0x6a, 0x8e, 0xa5, 0xf9, 0x3e, 0x42, 0x85, 0xcb, 0x53, 0x3e, 0x29, 0xe8, + 0xa4, 0xbf, 0x5a, 0x92, 0xa5, 0x5f, 0xa6, 0xf8, +}; +static const unsigned char kat2397_entropyinreseed[] = { + 0xa3, 0x19, 0x7e, 0xf6, 0x8c, 0x1d, 0x6e, 0xdc, 0x7e, 0xde, 0xcf, 0xf7, + 0xc0, 0xc8, 0x56, 0x1a, 0x9c, 0x33, 0xde, 0x2c, 0x65, 0xa2, 0x1f, 0xa2, + 0x26, 0xce, 0x59, 0x92, 0xe1, 0xc7, 0xaa, 0x68, +}; +static const unsigned char kat2397_addinreseed[] = { + 0xdb, 0xd9, 0xca, 0xc0, 0x49, 0xbf, 0x73, 0x5c, 0x11, 0xfa, 0x86, 0x91, + 0x4f, 0xd1, 0x39, 0x59, 0x90, 0xf7, 0x49, 0xde, 0x8f, 0x38, 0x57, 0xac, + 0x2a, 0xc1, 0xf2, 0x3d, 0x57, 0x27, 0x0c, 0x30, +}; +static const unsigned char kat2397_addin0[] = { + 0x5a, 0x4b, 0x6d, 0x82, 0x90, 0x43, 0x62, 0x1c, 0x5d, 0x46, 0x53, 0x13, + 0x81, 0x30, 0x58, 0x59, 0xdf, 0xcd, 0xb8, 0x6d, 0x08, 0x45, 0xda, 0xc7, + 0x8f, 0xea, 0xc0, 0x72, 0x30, 0x5b, 0x63, 0xe4, +}; +static const unsigned char kat2397_addin1[] = { + 0xea, 0xec, 0xc2, 0x89, 0xf6, 0xdb, 0x7c, 0x0e, 0x15, 0x0d, 0xff, 0x9d, + 0xa1, 0x18, 0x84, 0xb4, 0x8e, 0xbe, 0xf4, 0x7a, 0x50, 0x60, 0xcd, 0xd7, + 0x42, 0x83, 0x91, 0x89, 0x2a, 0x4c, 0x99, 0x69, +}; +static const unsigned char kat2397_retbits[] = { + 0xc0, 0x34, 0xbf, 0xd6, 0xd1, 0x78, 0x06, 0xdf, 0x4b, 0x45, 0xf7, 0x84, + 0x4a, 0xe6, 0xa7, 0xc9, 0xb6, 0x8a, 0x61, 0x5d, 0xdb, 0xce, 0x4e, 0xf4, + 0x0b, 0x96, 0x4e, 0x02, 0x97, 0x23, 0x6d, 0x42, 0x9c, 0x3a, 0xe0, 0xb9, + 0x95, 0x4f, 0xca, 0x08, 0xb4, 0xdc, 0x72, 0x80, 0x9c, 0x0d, 0x5a, 0x14, + 0x5a, 0x51, 0xfa, 0x30, 0x2d, 0x0f, 0x1b, 0x25, 0x1b, 0xc6, 0xdb, 0x8b, + 0x4b, 0x81, 0x5a, 0x4a, +}; +static const struct drbg_kat_pr_false kat2397_t = { + 11, kat2397_entropyin, kat2397_nonce, kat2397_persstr, + kat2397_entropyinreseed, kat2397_addinreseed, kat2397_addin0, + kat2397_addin1, kat2397_retbits +}; +static const struct drbg_kat kat2397 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2397_t +}; + +static const unsigned char kat2398_entropyin[] = { + 0x05, 0xe3, 0x3f, 0xbf, 0xcc, 0x36, 0x2f, 0x65, 0xdf, 0x5f, 0xb1, 0x70, + 0xbc, 0x73, 0x52, 0x84, 0xa4, 0x0b, 0xd7, 0x05, 0x88, 0xca, 0x3e, 0xa6, + 0x90, 0x03, 0xc2, 0x43, 0x9f, 0xa0, 0x30, 0xbd, +}; +static const unsigned char kat2398_nonce[] = {0}; +static const unsigned char kat2398_persstr[] = { + 0xa9, 0x8d, 0x93, 0x41, 0x48, 0xac, 0x82, 0x4d, 0x16, 0xf9, 0x45, 0x42, + 0xf3, 0x5a, 0x20, 0xbb, 0x9e, 0x29, 0x59, 0xfc, 0xff, 0x2a, 0x43, 0x2e, + 0x8c, 0x03, 0xfb, 0x0c, 0x18, 0x9e, 0xc6, 0xd3, +}; +static const unsigned char kat2398_entropyinreseed[] = { + 0xde, 0x2b, 0x7b, 0xb5, 0x3e, 0xa6, 0xea, 0x0a, 0xe6, 0xd9, 0x6c, 0xb3, + 0x2d, 0xc5, 0xc6, 0xdb, 0xb3, 0xfc, 0xad, 0x7f, 0xf1, 0x16, 0xc8, 0xb2, + 0xbe, 0x53, 0xc1, 0x35, 0x85, 0xc5, 0x3e, 0x41, +}; +static const unsigned char kat2398_addinreseed[] = { + 0xbf, 0xef, 0x2d, 0xbf, 0x7e, 0x8d, 0xac, 0xe5, 0x64, 0x5c, 0x4e, 0x53, + 0xae, 0x10, 0x21, 0xca, 0x7f, 0x93, 0x1f, 0xc9, 0x2e, 0x39, 0x75, 0x9e, + 0x96, 0xb0, 0x9a, 0x5a, 0x90, 0xac, 0x60, 0x8f, +}; +static const unsigned char kat2398_addin0[] = { + 0xfe, 0x39, 0xd1, 0x67, 0x16, 0x70, 0xd0, 0x5b, 0x73, 0xd4, 0x5b, 0x02, + 0x0d, 0xb3, 0x05, 0x40, 0x9e, 0xdc, 0x11, 0x46, 0x58, 0xba, 0x40, 0xd7, + 0xdc, 0x6e, 0x7f, 0xba, 0x60, 0x08, 0xf7, 0xc3, +}; +static const unsigned char kat2398_addin1[] = { + 0x45, 0x87, 0xfc, 0xf7, 0xef, 0x2a, 0x84, 0x98, 0xee, 0xef, 0x89, 0x72, + 0x49, 0xc9, 0xfb, 0x96, 0x80, 0x28, 0xa3, 0x81, 0xb9, 0xf3, 0x4c, 0x44, + 0x2f, 0x9e, 0x88, 0x57, 0x56, 0xce, 0x68, 0x62, +}; +static const unsigned char kat2398_retbits[] = { + 0x36, 0x5a, 0x5b, 0x95, 0x3d, 0xa1, 0xf0, 0xf3, 0x6f, 0x42, 0xb0, 0x49, + 0xc1, 0x94, 0xa5, 0x15, 0x0e, 0x2d, 0x44, 0xaf, 0x2e, 0xeb, 0x48, 0x25, + 0xf5, 0x86, 0x5f, 0xe0, 0xaf, 0xf1, 0x49, 0x90, 0x4e, 0x4f, 0xc0, 0x73, + 0xe7, 0x19, 0x36, 0x9f, 0x32, 0x95, 0x07, 0x12, 0x35, 0x27, 0x11, 0xb5, + 0x73, 0x05, 0xbe, 0xee, 0x63, 0x6a, 0xa8, 0x11, 0x76, 0xfb, 0xd0, 0xd0, + 0x8c, 0xeb, 0x62, 0x67, +}; +static const struct drbg_kat_pr_false kat2398_t = { + 12, kat2398_entropyin, kat2398_nonce, kat2398_persstr, + kat2398_entropyinreseed, kat2398_addinreseed, kat2398_addin0, + kat2398_addin1, kat2398_retbits +}; +static const struct drbg_kat kat2398 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2398_t +}; + +static const unsigned char kat2399_entropyin[] = { + 0x9c, 0x5a, 0xe1, 0x06, 0xf2, 0xf0, 0xb0, 0x69, 0x6b, 0x77, 0xb5, 0x1f, + 0xcd, 0xb9, 0x5d, 0xae, 0x3d, 0xe9, 0xe6, 0x68, 0x3a, 0x0c, 0xed, 0x8a, + 0xee, 0xd2, 0x71, 0x94, 0xec, 0xe3, 0x35, 0x0b, +}; +static const unsigned char kat2399_nonce[] = {0}; +static const unsigned char kat2399_persstr[] = { + 0x03, 0x2a, 0xd2, 0x0b, 0xd1, 0xf6, 0x6f, 0x71, 0x3b, 0xc1, 0x46, 0x78, + 0x99, 0xa0, 0x4a, 0xa1, 0xeb, 0xc2, 0xd3, 0x07, 0xcf, 0x33, 0xa4, 0xbe, + 0xad, 0xb7, 0xd6, 0xeb, 0x12, 0x27, 0xc0, 0xe3, +}; +static const unsigned char kat2399_entropyinreseed[] = { + 0x57, 0x2d, 0x09, 0x71, 0x05, 0x0e, 0x4d, 0x17, 0x93, 0x0f, 0xc3, 0x53, + 0x85, 0xbe, 0x7c, 0x27, 0x91, 0x13, 0x60, 0x83, 0x97, 0x70, 0x65, 0x92, + 0x3f, 0xd1, 0x12, 0xa5, 0x89, 0xe2, 0x9d, 0x26, +}; +static const unsigned char kat2399_addinreseed[] = { + 0xe6, 0xfb, 0xaa, 0xf4, 0xb3, 0x4b, 0x7c, 0x7c, 0x93, 0x63, 0x66, 0xfb, + 0x23, 0x56, 0xae, 0x9f, 0x8b, 0x3d, 0x50, 0xab, 0x60, 0x36, 0xa2, 0xc5, + 0x7e, 0x01, 0xef, 0x13, 0x04, 0x21, 0xb9, 0xce, +}; +static const unsigned char kat2399_addin0[] = { + 0xbf, 0xa9, 0x28, 0x4f, 0xe2, 0x02, 0x3d, 0x5b, 0x33, 0x45, 0x7f, 0x80, + 0x55, 0x94, 0x53, 0x94, 0x40, 0xe8, 0x87, 0x8b, 0x44, 0x32, 0xea, 0x82, + 0x8e, 0xf6, 0x78, 0x34, 0x9f, 0x4e, 0x0e, 0xa4, +}; +static const unsigned char kat2399_addin1[] = { + 0xab, 0xc9, 0x6a, 0x6b, 0x4a, 0xc6, 0x03, 0x47, 0x1c, 0x51, 0x4d, 0xe8, + 0x02, 0xa0, 0x0e, 0x2d, 0xdd, 0x09, 0x0c, 0x68, 0xd6, 0x86, 0xbc, 0x3a, + 0x54, 0x3b, 0x53, 0xaf, 0x69, 0xbc, 0xfd, 0x0e, +}; +static const unsigned char kat2399_retbits[] = { + 0x9b, 0xfd, 0xf7, 0xe1, 0x0b, 0xae, 0xe4, 0x03, 0x90, 0x40, 0xee, 0x0e, + 0xa2, 0x17, 0x69, 0x84, 0x46, 0x16, 0xc3, 0xe2, 0xe7, 0x87, 0xc9, 0x74, + 0x27, 0x51, 0x43, 0x35, 0xaa, 0x2c, 0x3c, 0xa4, 0xe7, 0xbb, 0xfa, 0xea, + 0x6f, 0xe9, 0x30, 0xd1, 0x84, 0xdf, 0x7b, 0xda, 0x95, 0xe0, 0x76, 0x55, + 0xee, 0x9e, 0x4e, 0x10, 0x20, 0x86, 0x6f, 0x8c, 0xff, 0x42, 0x2a, 0x8f, + 0xc2, 0xb3, 0xb0, 0xe9, +}; +static const struct drbg_kat_pr_false kat2399_t = { + 13, kat2399_entropyin, kat2399_nonce, kat2399_persstr, + kat2399_entropyinreseed, kat2399_addinreseed, kat2399_addin0, + kat2399_addin1, kat2399_retbits +}; +static const struct drbg_kat kat2399 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2399_t +}; + +static const unsigned char kat2400_entropyin[] = { + 0x24, 0x42, 0xa2, 0x67, 0xb4, 0x38, 0x99, 0xbf, 0xdf, 0xad, 0xa9, 0x8c, + 0xca, 0x39, 0x48, 0xba, 0x36, 0x20, 0x66, 0x1e, 0xec, 0xfd, 0x79, 0x28, + 0x73, 0x3d, 0x25, 0x67, 0xf5, 0xba, 0xac, 0x21, +}; +static const unsigned char kat2400_nonce[] = {0}; +static const unsigned char kat2400_persstr[] = { + 0x73, 0x76, 0x09, 0x9e, 0xf7, 0x6e, 0x4c, 0xb0, 0x57, 0x80, 0x9b, 0xd9, + 0x0a, 0x70, 0xe9, 0x09, 0xbf, 0xd9, 0x79, 0xad, 0x85, 0xb8, 0x7f, 0x08, + 0xe7, 0x66, 0x94, 0xb1, 0x58, 0xfd, 0x17, 0x7e, +}; +static const unsigned char kat2400_entropyinreseed[] = { + 0xd3, 0xd6, 0xf9, 0x86, 0x49, 0xb7, 0x0e, 0x7e, 0x49, 0x7e, 0x64, 0x36, + 0xa6, 0x3a, 0x6f, 0x96, 0x91, 0x3f, 0x7d, 0xef, 0xf3, 0x44, 0x1c, 0x1d, + 0x28, 0x75, 0x88, 0x35, 0x73, 0x7e, 0x66, 0x19, +}; +static const unsigned char kat2400_addinreseed[] = { + 0xfa, 0x20, 0x70, 0x6a, 0x43, 0x39, 0x1a, 0x74, 0xd8, 0x7f, 0x46, 0x69, + 0x27, 0x6e, 0x1f, 0x8a, 0xc4, 0xcb, 0x54, 0xa5, 0x21, 0xe1, 0x52, 0x1a, + 0xfa, 0x93, 0xe4, 0x18, 0x50, 0x38, 0x85, 0x6a, +}; +static const unsigned char kat2400_addin0[] = { + 0xb6, 0x43, 0x01, 0x34, 0x74, 0xa3, 0x7b, 0x20, 0x8a, 0x6f, 0x6c, 0x44, + 0xcc, 0x56, 0xb1, 0xca, 0xea, 0x69, 0xe1, 0x28, 0x9d, 0x88, 0x97, 0xd5, + 0x3f, 0x40, 0x42, 0x3d, 0x9a, 0x6a, 0x40, 0xaa, +}; +static const unsigned char kat2400_addin1[] = { + 0xb1, 0xe0, 0x7a, 0x0f, 0x97, 0x40, 0xc4, 0x93, 0x35, 0xab, 0x52, 0x44, + 0xe3, 0xb7, 0xaa, 0x56, 0x7c, 0x72, 0x34, 0xe0, 0x12, 0x53, 0xfa, 0x1c, + 0x31, 0x37, 0x2a, 0xc4, 0x3b, 0x1d, 0x65, 0x19, +}; +static const unsigned char kat2400_retbits[] = { + 0x6e, 0x5f, 0xb2, 0x13, 0xd4, 0xbe, 0xf4, 0x0b, 0x3f, 0x27, 0x4f, 0x95, + 0x69, 0x60, 0xa1, 0xe0, 0xd2, 0x8e, 0x53, 0x99, 0xbf, 0xcf, 0x27, 0x09, + 0xfe, 0x98, 0xde, 0x2b, 0x54, 0xff, 0x26, 0x76, 0x68, 0x35, 0xb6, 0xed, + 0x53, 0x8b, 0x88, 0x7c, 0xc6, 0x17, 0x52, 0x9d, 0x05, 0x7f, 0x60, 0x05, + 0xdb, 0x02, 0x27, 0xda, 0xe7, 0x62, 0x77, 0x28, 0x50, 0x4c, 0xb8, 0xcf, + 0x35, 0x30, 0xeb, 0x2e, +}; +static const struct drbg_kat_pr_false kat2400_t = { + 14, kat2400_entropyin, kat2400_nonce, kat2400_persstr, + kat2400_entropyinreseed, kat2400_addinreseed, kat2400_addin0, + kat2400_addin1, kat2400_retbits +}; +static const struct drbg_kat kat2400 = { + PR_FALSE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat2400_t +}; + +static const unsigned char kat2401_entropyin[] = { + 0xd6, 0xe1, 0x8f, 0x45, 0x65, 0xfd, 0xf2, 0x82, 0x6d, 0x0d, 0x56, 0x41, + 0x96, 0x47, 0xc0, 0x20, 0x41, 0x3b, 0x96, 0x32, 0x99, 0xd8, 0xde, 0x2c, + 0x65, 0x10, 0x27, 0x7f, 0x8c, 0xe9, 0x88, 0xa7, 0xf0, 0xb3, 0xbc, 0x1d, + 0xf8, 0x5b, 0x15, 0x3f, +}; +static const unsigned char kat2401_nonce[] = {0}; +static const unsigned char kat2401_persstr[] = {0}; +static const unsigned char kat2401_entropyinreseed[] = { + 0xa8, 0x23, 0xd6, 0x31, 0x1f, 0x9f, 0x66, 0xdf, 0x32, 0x9e, 0x3d, 0x70, + 0x65, 0xe2, 0x4f, 0xe2, 0x50, 0x7e, 0x6b, 0x9d, 0xbc, 0xc2, 0x28, 0x38, + 0x48, 0x3f, 0xa7, 0x29, 0xca, 0x51, 0x16, 0xd0, 0x3a, 0x91, 0x02, 0x81, + 0x39, 0xd7, 0x13, 0x0a, +}; +static const unsigned char kat2401_addinreseed[] = {0}; +static const unsigned char kat2401_addin0[] = {0}; +static const unsigned char kat2401_addin1[] = {0}; +static const unsigned char kat2401_retbits[] = { + 0x4b, 0xf8, 0x06, 0x69, 0x0a, 0xf1, 0x3d, 0xbc, 0xfd, 0x44, 0x8c, 0x79, + 0xa3, 0x53, 0x2e, 0x00, 0x0b, 0xca, 0xbc, 0xef, 0x36, 0xf2, 0x64, 0x3f, + 0x3e, 0x1c, 0x9d, 0xe6, 0x07, 0x10, 0x42, 0x82, 0xf8, 0x1c, 0xd6, 0xcd, + 0xcf, 0x8d, 0xa8, 0x42, 0x9c, 0x94, 0x10, 0x82, 0x45, 0x11, 0x4d, 0x3d, + 0xa1, 0x7b, 0x9f, 0x48, 0xbb, 0x07, 0x09, 0x4c, 0x07, 0x3a, 0x94, 0xf5, + 0xd2, 0xef, 0x9e, 0x30, +}; +static const struct drbg_kat_pr_false kat2401_t = { + 0, kat2401_entropyin, kat2401_nonce, kat2401_persstr, + kat2401_entropyinreseed, kat2401_addinreseed, kat2401_addin0, + kat2401_addin1, kat2401_retbits +}; +static const struct drbg_kat kat2401 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2401_t +}; + +static const unsigned char kat2402_entropyin[] = { + 0x80, 0xff, 0xfb, 0xe6, 0x10, 0xd6, 0xd4, 0x04, 0xbe, 0x2a, 0x71, 0x2a, + 0xae, 0x84, 0x7b, 0x0e, 0x6a, 0x0c, 0x48, 0xda, 0x11, 0x43, 0x0f, 0xe1, + 0x7e, 0x1a, 0x74, 0x9f, 0x95, 0xbe, 0xaf, 0x0c, 0x5f, 0x6c, 0x0c, 0x77, + 0xc9, 0x42, 0x08, 0x46, +}; +static const unsigned char kat2402_nonce[] = {0}; +static const unsigned char kat2402_persstr[] = {0}; +static const unsigned char kat2402_entropyinreseed[] = { + 0x27, 0xf5, 0xd5, 0xb3, 0x84, 0x57, 0x2c, 0x8f, 0x20, 0x19, 0xa6, 0x63, + 0xca, 0x19, 0x98, 0xab, 0x80, 0x3b, 0xf2, 0xff, 0xa1, 0x28, 0x73, 0x87, + 0x37, 0xe7, 0x9f, 0xea, 0x89, 0xda, 0x24, 0x70, 0xa3, 0x43, 0x6f, 0x82, + 0xcb, 0x3b, 0xfd, 0x37, +}; +static const unsigned char kat2402_addinreseed[] = {0}; +static const unsigned char kat2402_addin0[] = {0}; +static const unsigned char kat2402_addin1[] = {0}; +static const unsigned char kat2402_retbits[] = { + 0x48, 0x67, 0x2c, 0x4b, 0xd0, 0x1f, 0xe9, 0x7e, 0x85, 0x9a, 0x13, 0xf5, + 0xa7, 0x37, 0x2e, 0xbd, 0xdb, 0x2a, 0xa0, 0xc6, 0x5a, 0x35, 0xa7, 0x1b, + 0xa3, 0x5c, 0xd3, 0x0d, 0xc2, 0x61, 0xdf, 0x08, 0xac, 0xb2, 0x6f, 0x7a, + 0x63, 0x2c, 0xc2, 0x29, 0xd9, 0xd0, 0xad, 0x74, 0x22, 0x8e, 0x2c, 0x54, + 0xed, 0x3b, 0x53, 0xf1, 0x25, 0x66, 0x45, 0xbe, 0x1b, 0xc1, 0xfe, 0xd9, + 0x4d, 0xad, 0x28, 0x2c, +}; +static const struct drbg_kat_pr_false kat2402_t = { + 1, kat2402_entropyin, kat2402_nonce, kat2402_persstr, + kat2402_entropyinreseed, kat2402_addinreseed, kat2402_addin0, + kat2402_addin1, kat2402_retbits +}; +static const struct drbg_kat kat2402 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2402_t +}; + +static const unsigned char kat2403_entropyin[] = { + 0x54, 0x7d, 0x4f, 0xc5, 0xcb, 0x41, 0x50, 0xb4, 0xaf, 0x1c, 0x10, 0xa3, + 0x81, 0xee, 0xd8, 0x64, 0xf2, 0x88, 0x4f, 0x93, 0x5b, 0xbb, 0x55, 0xb8, + 0x32, 0x2c, 0xf7, 0x79, 0xa3, 0x5a, 0x6e, 0x4d, 0x13, 0x93, 0x96, 0xa1, + 0xb8, 0xd7, 0x1a, 0xf8, +}; +static const unsigned char kat2403_nonce[] = {0}; +static const unsigned char kat2403_persstr[] = {0}; +static const unsigned char kat2403_entropyinreseed[] = { + 0x49, 0x8c, 0x4a, 0x97, 0x69, 0xa8, 0x64, 0x9e, 0x61, 0x59, 0x3a, 0x13, + 0xc3, 0x1b, 0x64, 0xb0, 0xd3, 0x8c, 0x3a, 0xd6, 0xdc, 0xcd, 0x95, 0x56, + 0x2e, 0xa1, 0xe9, 0x35, 0xc7, 0x9c, 0xfa, 0xd5, 0xd8, 0xac, 0xcf, 0x82, + 0x67, 0x9c, 0x5b, 0x33, +}; +static const unsigned char kat2403_addinreseed[] = {0}; +static const unsigned char kat2403_addin0[] = {0}; +static const unsigned char kat2403_addin1[] = {0}; +static const unsigned char kat2403_retbits[] = { + 0xc9, 0xdc, 0xf9, 0x99, 0xbd, 0x23, 0xc0, 0xe3, 0xd6, 0x3b, 0xf7, 0xa1, + 0xe8, 0xe4, 0xff, 0x6f, 0x49, 0x39, 0x84, 0xf5, 0x78, 0x0f, 0x29, 0x48, + 0x5d, 0x11, 0xcc, 0x90, 0x56, 0xd9, 0xa7, 0xb1, 0xf0, 0xb0, 0xc4, 0x14, + 0xc1, 0x76, 0xec, 0x86, 0x37, 0xc6, 0x02, 0xab, 0xa1, 0x03, 0x20, 0xfc, + 0xbe, 0x82, 0x64, 0x77, 0x43, 0xee, 0x41, 0xc9, 0xc5, 0x29, 0x11, 0x64, + 0xa0, 0x7c, 0x2e, 0x2e, +}; +static const struct drbg_kat_pr_false kat2403_t = { + 2, kat2403_entropyin, kat2403_nonce, kat2403_persstr, + kat2403_entropyinreseed, kat2403_addinreseed, kat2403_addin0, + kat2403_addin1, kat2403_retbits +}; +static const struct drbg_kat kat2403 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2403_t +}; + +static const unsigned char kat2404_entropyin[] = { + 0x0d, 0x1d, 0xa3, 0x7b, 0x22, 0xec, 0x35, 0xf9, 0x87, 0x57, 0x85, 0x31, + 0x46, 0x2f, 0x52, 0x6f, 0x52, 0xbb, 0x55, 0xfd, 0xed, 0xa0, 0x2c, 0x78, + 0x4b, 0xe1, 0x7e, 0x98, 0xb7, 0x0b, 0x05, 0xcb, 0x44, 0x86, 0xe0, 0xc2, + 0x03, 0xeb, 0x76, 0xf3, +}; +static const unsigned char kat2404_nonce[] = {0}; +static const unsigned char kat2404_persstr[] = {0}; +static const unsigned char kat2404_entropyinreseed[] = { + 0x7f, 0xa5, 0xb8, 0xf7, 0xd8, 0x7e, 0x1c, 0xb5, 0xee, 0x99, 0xdb, 0xff, + 0x91, 0x51, 0xa4, 0x0d, 0xd3, 0x6d, 0xf5, 0x7a, 0x7d, 0xf0, 0xd5, 0xbf, + 0xdd, 0xca, 0x60, 0x83, 0xfa, 0x01, 0x8c, 0xdd, 0x8f, 0x01, 0xf1, 0x64, + 0xc3, 0x0a, 0x32, 0xc2, +}; +static const unsigned char kat2404_addinreseed[] = {0}; +static const unsigned char kat2404_addin0[] = {0}; +static const unsigned char kat2404_addin1[] = {0}; +static const unsigned char kat2404_retbits[] = { + 0x31, 0x82, 0x0f, 0xb5, 0x53, 0x8d, 0x98, 0x52, 0x66, 0x5b, 0xcc, 0x3b, + 0x03, 0x37, 0x0c, 0x3d, 0x37, 0xc1, 0x7a, 0x1e, 0x14, 0x9b, 0x22, 0xc3, + 0x06, 0x34, 0x14, 0x0a, 0x30, 0xcc, 0x1d, 0x52, 0x76, 0x19, 0xad, 0xf6, + 0xc5, 0x27, 0xf5, 0xbe, 0x0f, 0xe1, 0x0e, 0x8b, 0x42, 0xe0, 0x7e, 0x8b, + 0xab, 0x8d, 0x9a, 0xb3, 0xf3, 0x17, 0xd0, 0x32, 0xeb, 0x38, 0x18, 0xca, + 0xae, 0x7e, 0x5e, 0x3f, +}; +static const struct drbg_kat_pr_false kat2404_t = { + 3, kat2404_entropyin, kat2404_nonce, kat2404_persstr, + kat2404_entropyinreseed, kat2404_addinreseed, kat2404_addin0, + kat2404_addin1, kat2404_retbits +}; +static const struct drbg_kat kat2404 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2404_t +}; + +static const unsigned char kat2405_entropyin[] = { + 0x56, 0x24, 0x82, 0xc2, 0xb6, 0x62, 0x99, 0x14, 0xf1, 0x19, 0x4c, 0xb7, + 0xef, 0x7c, 0xc0, 0xac, 0x8c, 0x2c, 0x87, 0x8d, 0xd6, 0x82, 0x4e, 0xf7, + 0x8c, 0xe6, 0x36, 0xab, 0xa8, 0x99, 0x02, 0x1a, 0xe0, 0xdc, 0xc2, 0x78, + 0x20, 0x61, 0x24, 0xdf, +}; +static const unsigned char kat2405_nonce[] = {0}; +static const unsigned char kat2405_persstr[] = {0}; +static const unsigned char kat2405_entropyinreseed[] = { + 0xa0, 0x0d, 0x0e, 0x31, 0xab, 0x3d, 0x99, 0x65, 0xc1, 0xf8, 0x8e, 0x79, + 0xc7, 0x34, 0x0c, 0xa8, 0x01, 0xec, 0xcf, 0x13, 0x12, 0x84, 0x67, 0xd3, + 0x09, 0x1c, 0xc0, 0xf9, 0x59, 0x84, 0xf2, 0x8d, 0x22, 0xe5, 0xde, 0xa3, + 0x4d, 0x5b, 0xa1, 0x97, +}; +static const unsigned char kat2405_addinreseed[] = {0}; +static const unsigned char kat2405_addin0[] = {0}; +static const unsigned char kat2405_addin1[] = {0}; +static const unsigned char kat2405_retbits[] = { + 0xbf, 0x98, 0x0f, 0xa5, 0xd2, 0x61, 0x8f, 0x34, 0x9c, 0xc2, 0xe0, 0xe6, + 0x79, 0xdf, 0x40, 0x00, 0x87, 0x13, 0xb2, 0xfe, 0x9e, 0xc4, 0xf4, 0x52, + 0x3b, 0x11, 0x3f, 0x62, 0x4d, 0xfc, 0xc5, 0xf7, 0xba, 0x32, 0xce, 0xce, + 0x7d, 0xf5, 0x53, 0xdb, 0x87, 0xbe, 0xd9, 0xab, 0xc9, 0xdd, 0xad, 0x81, + 0xa1, 0x8e, 0xe2, 0xcf, 0x95, 0x92, 0x1c, 0xda, 0x3a, 0x35, 0xf9, 0xfc, + 0x1a, 0x69, 0xb4, 0xb7, +}; +static const struct drbg_kat_pr_false kat2405_t = { + 4, kat2405_entropyin, kat2405_nonce, kat2405_persstr, + kat2405_entropyinreseed, kat2405_addinreseed, kat2405_addin0, + kat2405_addin1, kat2405_retbits +}; +static const struct drbg_kat kat2405 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2405_t +}; + +static const unsigned char kat2406_entropyin[] = { + 0xa6, 0x67, 0xc8, 0xaa, 0x4c, 0x4e, 0x10, 0x06, 0x7e, 0x1d, 0xf1, 0x45, + 0x74, 0xcb, 0x7f, 0x84, 0xdb, 0x6b, 0x49, 0xfc, 0x73, 0x0d, 0x23, 0x32, + 0x92, 0xa6, 0x8e, 0x12, 0xff, 0xfc, 0x80, 0x30, 0x32, 0xd9, 0x39, 0x49, + 0x9e, 0x17, 0xae, 0xd8, +}; +static const unsigned char kat2406_nonce[] = {0}; +static const unsigned char kat2406_persstr[] = {0}; +static const unsigned char kat2406_entropyinreseed[] = { + 0xc5, 0x35, 0xe9, 0x36, 0xfa, 0xe2, 0xf2, 0xe8, 0x65, 0xb3, 0xbe, 0x04, + 0x6c, 0x86, 0xc5, 0x67, 0x8b, 0x1e, 0x6f, 0x3d, 0xa9, 0x76, 0x90, 0xb6, + 0x52, 0xe1, 0x29, 0x13, 0x31, 0x98, 0xeb, 0xca, 0x07, 0x47, 0x7a, 0x2a, + 0x11, 0x55, 0xd1, 0xfb, +}; +static const unsigned char kat2406_addinreseed[] = {0}; +static const unsigned char kat2406_addin0[] = {0}; +static const unsigned char kat2406_addin1[] = {0}; +static const unsigned char kat2406_retbits[] = { + 0x07, 0x98, 0x88, 0xfa, 0xa3, 0x77, 0xb0, 0xce, 0x0a, 0x7b, 0x99, 0x47, + 0x44, 0xea, 0xf9, 0xd7, 0x02, 0x4b, 0xc8, 0x80, 0x49, 0x96, 0x6a, 0x84, + 0x5a, 0x84, 0x85, 0x27, 0x0f, 0x5f, 0xf3, 0x84, 0xdf, 0x05, 0x75, 0xd3, + 0x2d, 0xc9, 0x7c, 0x79, 0x81, 0x33, 0xaf, 0x99, 0x4d, 0x53, 0xb1, 0x84, + 0x09, 0x40, 0xb5, 0x13, 0x73, 0x32, 0x29, 0x30, 0x8c, 0x49, 0x74, 0x3a, + 0xdf, 0x58, 0x8c, 0x1c, +}; +static const struct drbg_kat_pr_false kat2406_t = { + 5, kat2406_entropyin, kat2406_nonce, kat2406_persstr, + kat2406_entropyinreseed, kat2406_addinreseed, kat2406_addin0, + kat2406_addin1, kat2406_retbits +}; +static const struct drbg_kat kat2406 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2406_t +}; + +static const unsigned char kat2407_entropyin[] = { + 0x54, 0x23, 0x54, 0x3f, 0xee, 0xc7, 0x2f, 0x5d, 0x56, 0xef, 0xf2, 0xd4, + 0x26, 0xc8, 0xb3, 0x97, 0x5e, 0xe6, 0xb1, 0xc7, 0xca, 0x88, 0x67, 0x99, + 0x4b, 0x2d, 0x8d, 0xd6, 0x5c, 0x4c, 0x44, 0x92, 0x0a, 0xe9, 0x4c, 0xb7, + 0xdb, 0x0f, 0x81, 0xc7, +}; +static const unsigned char kat2407_nonce[] = {0}; +static const unsigned char kat2407_persstr[] = {0}; +static const unsigned char kat2407_entropyinreseed[] = { + 0x77, 0x0f, 0x68, 0xab, 0xe6, 0x21, 0x88, 0xa1, 0x7a, 0xbf, 0x4b, 0x56, + 0x0b, 0x61, 0x07, 0x8b, 0x5e, 0x86, 0xfc, 0x83, 0x0d, 0x88, 0x87, 0x0c, + 0xe3, 0xb7, 0x3a, 0x73, 0x44, 0x98, 0x98, 0x5a, 0x51, 0x39, 0x79, 0x99, + 0xad, 0x08, 0x90, 0xa7, +}; +static const unsigned char kat2407_addinreseed[] = {0}; +static const unsigned char kat2407_addin0[] = {0}; +static const unsigned char kat2407_addin1[] = {0}; +static const unsigned char kat2407_retbits[] = { + 0xd8, 0x7c, 0x92, 0x2c, 0xf5, 0x4a, 0x01, 0x8d, 0xed, 0x13, 0xcc, 0x61, + 0xa8, 0x07, 0xc6, 0xca, 0xdc, 0x43, 0x54, 0xeb, 0xbf, 0x4d, 0x99, 0xae, + 0x38, 0x9f, 0xa8, 0xef, 0xb1, 0xe6, 0xd2, 0x2d, 0x02, 0x1f, 0x3e, 0xfc, + 0xa6, 0x77, 0xf8, 0xed, 0x8d, 0x6c, 0xe9, 0xc6, 0x30, 0xd3, 0x05, 0xb5, + 0xe4, 0xc0, 0x75, 0xa3, 0x21, 0xcc, 0x7e, 0xe2, 0x25, 0x3c, 0x7a, 0x27, + 0x26, 0xf8, 0xf4, 0x08, +}; +static const struct drbg_kat_pr_false kat2407_t = { + 6, kat2407_entropyin, kat2407_nonce, kat2407_persstr, + kat2407_entropyinreseed, kat2407_addinreseed, kat2407_addin0, + kat2407_addin1, kat2407_retbits +}; +static const struct drbg_kat kat2407 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2407_t +}; + +static const unsigned char kat2408_entropyin[] = { + 0xc6, 0xe4, 0xe1, 0x7d, 0x3e, 0xd8, 0x27, 0xc5, 0x7c, 0xe8, 0x5d, 0xc4, + 0x3b, 0x6f, 0x25, 0x72, 0x7b, 0x36, 0x91, 0x3e, 0x28, 0x94, 0xab, 0x83, + 0x8a, 0x0c, 0xee, 0xe6, 0xa6, 0xb4, 0xea, 0x5f, 0xe8, 0x80, 0xa4, 0x7b, + 0x1a, 0xe3, 0x13, 0x52, +}; +static const unsigned char kat2408_nonce[] = {0}; +static const unsigned char kat2408_persstr[] = {0}; +static const unsigned char kat2408_entropyinreseed[] = { + 0x87, 0x33, 0x12, 0x69, 0x58, 0x70, 0x5f, 0x9a, 0x7a, 0x97, 0xc6, 0x95, + 0x2c, 0x40, 0x51, 0xa4, 0xeb, 0xbc, 0x5a, 0xd3, 0xb0, 0xed, 0x18, 0x5a, + 0xea, 0xd6, 0xc4, 0x4c, 0x12, 0x2b, 0x71, 0x08, 0x3b, 0xe9, 0x0d, 0xe7, + 0x2b, 0x8d, 0x33, 0x1b, +}; +static const unsigned char kat2408_addinreseed[] = {0}; +static const unsigned char kat2408_addin0[] = {0}; +static const unsigned char kat2408_addin1[] = {0}; +static const unsigned char kat2408_retbits[] = { + 0x52, 0x61, 0x12, 0x7c, 0x8a, 0x5a, 0xa5, 0x2f, 0xcf, 0xf5, 0x9d, 0x04, + 0xcf, 0x03, 0x24, 0x53, 0xdf, 0x5a, 0x9e, 0x0c, 0x8a, 0xf5, 0xe8, 0x46, + 0x03, 0xb1, 0x5c, 0x77, 0x5a, 0x8e, 0x19, 0x67, 0xb0, 0x16, 0x30, 0x72, + 0x81, 0xb3, 0x52, 0xe8, 0x95, 0x04, 0xf2, 0xf5, 0xf8, 0xbe, 0x45, 0x80, + 0xa1, 0x70, 0x6e, 0x7b, 0x16, 0x3b, 0xaa, 0xfb, 0xd0, 0xb8, 0x9c, 0x7f, + 0x5f, 0xf9, 0x4c, 0x6d, +}; +static const struct drbg_kat_pr_false kat2408_t = { + 7, kat2408_entropyin, kat2408_nonce, kat2408_persstr, + kat2408_entropyinreseed, kat2408_addinreseed, kat2408_addin0, + kat2408_addin1, kat2408_retbits +}; +static const struct drbg_kat kat2408 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2408_t +}; + +static const unsigned char kat2409_entropyin[] = { + 0x21, 0xa1, 0x82, 0x6f, 0x92, 0x9a, 0x45, 0x40, 0x8c, 0x26, 0xa2, 0x52, + 0x9f, 0x93, 0xcb, 0xd3, 0x1e, 0x81, 0x32, 0x7d, 0xce, 0x2a, 0x21, 0x47, + 0xef, 0x1c, 0x54, 0x74, 0x75, 0x6a, 0x62, 0x2f, 0x47, 0x82, 0x3a, 0xb9, + 0x95, 0x4f, 0xa1, 0xbb, +}; +static const unsigned char kat2409_nonce[] = {0}; +static const unsigned char kat2409_persstr[] = {0}; +static const unsigned char kat2409_entropyinreseed[] = { + 0xfc, 0x45, 0x43, 0x1e, 0x4b, 0x2b, 0x16, 0xcc, 0xab, 0x1b, 0xbd, 0xc2, + 0x62, 0x8c, 0xff, 0x34, 0x56, 0x97, 0xca, 0xe7, 0x24, 0x85, 0xb1, 0xdc, + 0xb2, 0x58, 0x0b, 0x70, 0xce, 0xe8, 0x0d, 0x2c, 0x58, 0x21, 0x2a, 0xdc, + 0x43, 0xba, 0x4c, 0x10, +}; +static const unsigned char kat2409_addinreseed[] = {0}; +static const unsigned char kat2409_addin0[] = {0}; +static const unsigned char kat2409_addin1[] = {0}; +static const unsigned char kat2409_retbits[] = { + 0x9e, 0x83, 0xa6, 0x69, 0x90, 0x73, 0x5a, 0x4e, 0xcc, 0xcc, 0x2c, 0xb5, + 0x9a, 0xca, 0x97, 0x19, 0xd0, 0x34, 0x68, 0xbc, 0x9b, 0x37, 0x9d, 0x86, + 0x0a, 0xd1, 0xd9, 0xc0, 0x98, 0x81, 0x11, 0x1a, 0xce, 0xc2, 0x29, 0x52, + 0x68, 0xa6, 0x7b, 0xad, 0xf4, 0x5f, 0x4b, 0xc2, 0x18, 0x96, 0xa1, 0x7f, + 0x26, 0xd2, 0x4d, 0xf5, 0x53, 0x5e, 0x4e, 0xff, 0x14, 0x4a, 0xfa, 0x17, + 0xb0, 0xed, 0x87, 0x33, +}; +static const struct drbg_kat_pr_false kat2409_t = { + 8, kat2409_entropyin, kat2409_nonce, kat2409_persstr, + kat2409_entropyinreseed, kat2409_addinreseed, kat2409_addin0, + kat2409_addin1, kat2409_retbits +}; +static const struct drbg_kat kat2409 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2409_t +}; + +static const unsigned char kat2410_entropyin[] = { + 0x6e, 0x22, 0xce, 0x3e, 0x72, 0x4b, 0xa2, 0x93, 0xe9, 0x9e, 0xfd, 0x66, + 0x9f, 0x65, 0xd9, 0x9b, 0x78, 0xda, 0xc4, 0x96, 0x20, 0x09, 0xbe, 0xb0, + 0xed, 0x6b, 0x8d, 0x2b, 0x99, 0x43, 0xae, 0xff, 0x45, 0xdc, 0x0a, 0x33, + 0x1e, 0x3f, 0x53, 0xd0, +}; +static const unsigned char kat2410_nonce[] = {0}; +static const unsigned char kat2410_persstr[] = {0}; +static const unsigned char kat2410_entropyinreseed[] = { + 0x6d, 0x2f, 0xc9, 0xaa, 0xb9, 0xbe, 0x7e, 0xd8, 0x48, 0x50, 0x10, 0x4d, + 0x19, 0xd8, 0x0f, 0x8b, 0x19, 0xce, 0xe6, 0xe4, 0x67, 0x60, 0xe4, 0x98, + 0x52, 0x04, 0xb2, 0x35, 0x57, 0xf7, 0xf4, 0x13, 0x19, 0x3c, 0x80, 0xf1, + 0xa5, 0x96, 0xbd, 0xd4, +}; +static const unsigned char kat2410_addinreseed[] = {0}; +static const unsigned char kat2410_addin0[] = {0}; +static const unsigned char kat2410_addin1[] = {0}; +static const unsigned char kat2410_retbits[] = { + 0x0d, 0x58, 0x83, 0xaf, 0xea, 0xc7, 0x70, 0x81, 0xec, 0x25, 0x05, 0x39, + 0x09, 0xf2, 0x2e, 0x98, 0x1b, 0xe9, 0x2a, 0x54, 0xc3, 0x8c, 0xd3, 0x63, + 0xb2, 0xda, 0x33, 0x3a, 0x15, 0x19, 0x51, 0xb6, 0x48, 0xec, 0xc1, 0xd6, + 0xb5, 0x6a, 0x0d, 0x87, 0x62, 0x5f, 0x08, 0x06, 0x22, 0x0a, 0xb1, 0xf0, + 0xc7, 0x35, 0x86, 0xed, 0x18, 0x7f, 0xcc, 0x41, 0x17, 0xe8, 0x23, 0x76, + 0xb0, 0xba, 0xec, 0x69, +}; +static const struct drbg_kat_pr_false kat2410_t = { + 9, kat2410_entropyin, kat2410_nonce, kat2410_persstr, + kat2410_entropyinreseed, kat2410_addinreseed, kat2410_addin0, + kat2410_addin1, kat2410_retbits +}; +static const struct drbg_kat kat2410 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2410_t +}; + +static const unsigned char kat2411_entropyin[] = { + 0xcd, 0xa1, 0xab, 0xfe, 0x94, 0x88, 0x75, 0xac, 0xc7, 0x89, 0xb3, 0xf2, + 0x6b, 0xcf, 0xf5, 0x05, 0x4b, 0x9f, 0xa2, 0x43, 0x9e, 0xbf, 0x5c, 0xa9, + 0x8a, 0xa2, 0xfa, 0xcd, 0x51, 0x81, 0x85, 0x76, 0xb1, 0x69, 0x13, 0x78, + 0x43, 0xf5, 0xbb, 0x51, +}; +static const unsigned char kat2411_nonce[] = {0}; +static const unsigned char kat2411_persstr[] = {0}; +static const unsigned char kat2411_entropyinreseed[] = { + 0x39, 0xc5, 0x64, 0x65, 0x20, 0x61, 0x67, 0x40, 0xae, 0xc5, 0x56, 0x52, + 0xbd, 0x67, 0x9e, 0xfa, 0x7b, 0x21, 0xd0, 0x5e, 0x71, 0x03, 0x3c, 0x32, + 0x57, 0x49, 0x3f, 0xad, 0xed, 0x9a, 0x0f, 0xa1, 0x45, 0xe5, 0xc0, 0xaf, + 0x11, 0xba, 0x2e, 0xd8, +}; +static const unsigned char kat2411_addinreseed[] = {0}; +static const unsigned char kat2411_addin0[] = {0}; +static const unsigned char kat2411_addin1[] = {0}; +static const unsigned char kat2411_retbits[] = { + 0x53, 0x3f, 0x6d, 0xff, 0xa2, 0x26, 0x1e, 0x7d, 0x3e, 0x35, 0x16, 0x76, + 0x15, 0x2f, 0xeb, 0x26, 0x55, 0xa7, 0xfc, 0x88, 0xcd, 0x5b, 0xfa, 0x3f, + 0xf5, 0x4c, 0x48, 0x72, 0x37, 0x21, 0x13, 0xf2, 0x8c, 0xa6, 0x9c, 0x0e, + 0x57, 0xe4, 0x1a, 0xe6, 0xae, 0x81, 0x40, 0x8a, 0x7c, 0x64, 0x55, 0x46, + 0x86, 0x82, 0x90, 0xd9, 0x4a, 0xe3, 0x66, 0xd5, 0xb6, 0x4d, 0xff, 0xeb, + 0xdc, 0x27, 0xcb, 0xf7, +}; +static const struct drbg_kat_pr_false kat2411_t = { + 10, kat2411_entropyin, kat2411_nonce, kat2411_persstr, + kat2411_entropyinreseed, kat2411_addinreseed, kat2411_addin0, + kat2411_addin1, kat2411_retbits +}; +static const struct drbg_kat kat2411 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2411_t +}; + +static const unsigned char kat2412_entropyin[] = { + 0x05, 0x62, 0xa5, 0x09, 0x7a, 0x73, 0x53, 0x49, 0x0a, 0x95, 0x25, 0xa2, + 0xe5, 0xa8, 0x05, 0xed, 0x4d, 0xb3, 0x14, 0x5e, 0x94, 0x31, 0x72, 0xae, + 0xcb, 0xf8, 0x40, 0xc2, 0x71, 0xf4, 0xca, 0xef, 0xf3, 0x2c, 0xdc, 0x51, + 0xe8, 0x30, 0x32, 0x79, +}; +static const unsigned char kat2412_nonce[] = {0}; +static const unsigned char kat2412_persstr[] = {0}; +static const unsigned char kat2412_entropyinreseed[] = { + 0x52, 0x9e, 0x85, 0x68, 0x6d, 0x64, 0xeb, 0xdd, 0xff, 0x61, 0xef, 0x1d, + 0x7c, 0x13, 0x50, 0x07, 0x5d, 0x51, 0x5a, 0x88, 0x81, 0x83, 0x71, 0x53, + 0x79, 0xb1, 0xa2, 0xc9, 0xf2, 0x71, 0xc8, 0xff, 0x6c, 0x8e, 0x5e, 0x47, + 0xff, 0xfe, 0x85, 0x53, +}; +static const unsigned char kat2412_addinreseed[] = {0}; +static const unsigned char kat2412_addin0[] = {0}; +static const unsigned char kat2412_addin1[] = {0}; +static const unsigned char kat2412_retbits[] = { + 0x52, 0x84, 0xba, 0xf9, 0x15, 0xfb, 0x79, 0x25, 0x09, 0xd5, 0x0f, 0x18, + 0x2c, 0x3c, 0x40, 0xb7, 0xfe, 0xd7, 0x75, 0xb3, 0xa8, 0xc9, 0x1c, 0xd7, + 0x82, 0x70, 0x2a, 0x88, 0xfd, 0x29, 0x5a, 0x1d, 0x17, 0xcb, 0x7a, 0x99, + 0x70, 0xb0, 0xfd, 0xa7, 0x74, 0x36, 0x0c, 0x6b, 0xf7, 0x95, 0x77, 0xd3, + 0x22, 0x60, 0xdc, 0x2a, 0x99, 0x7f, 0xc3, 0xa9, 0xf3, 0xd4, 0xf7, 0x8e, + 0x48, 0x79, 0xdf, 0x96, +}; +static const struct drbg_kat_pr_false kat2412_t = { + 11, kat2412_entropyin, kat2412_nonce, kat2412_persstr, + kat2412_entropyinreseed, kat2412_addinreseed, kat2412_addin0, + kat2412_addin1, kat2412_retbits +}; +static const struct drbg_kat kat2412 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2412_t +}; + +static const unsigned char kat2413_entropyin[] = { + 0xc4, 0x83, 0x4a, 0xaa, 0x7f, 0x33, 0xd4, 0xa4, 0x43, 0xc2, 0x6c, 0x94, + 0x4d, 0x8e, 0x91, 0x27, 0x50, 0x23, 0x65, 0xd3, 0x3e, 0x52, 0x27, 0x08, + 0x21, 0x11, 0xe1, 0x43, 0x8c, 0xa3, 0xd2, 0x12, 0x9a, 0x42, 0xc9, 0x28, + 0x99, 0xea, 0xc2, 0xcc, +}; +static const unsigned char kat2413_nonce[] = {0}; +static const unsigned char kat2413_persstr[] = {0}; +static const unsigned char kat2413_entropyinreseed[] = { + 0xd9, 0x0c, 0x1b, 0x69, 0xb8, 0xa2, 0x80, 0xf3, 0x1c, 0x66, 0xfb, 0x0c, + 0xbd, 0x53, 0xed, 0xdb, 0x12, 0x44, 0x41, 0xa8, 0x8a, 0x9e, 0x41, 0x30, + 0x10, 0x3e, 0xcd, 0xd5, 0x35, 0x73, 0x61, 0xb0, 0x00, 0xea, 0x5f, 0x80, + 0x1c, 0xa8, 0xab, 0x38, +}; +static const unsigned char kat2413_addinreseed[] = {0}; +static const unsigned char kat2413_addin0[] = {0}; +static const unsigned char kat2413_addin1[] = {0}; +static const unsigned char kat2413_retbits[] = { + 0xc7, 0x14, 0x60, 0x3e, 0xb1, 0x85, 0x2c, 0x0b, 0xb2, 0x1f, 0x22, 0x4a, + 0x25, 0x52, 0xb8, 0x3f, 0x74, 0xc8, 0xa6, 0x66, 0x37, 0xcc, 0x87, 0x07, + 0x74, 0x35, 0xa3, 0x2e, 0x74, 0xfd, 0x79, 0xf4, 0x26, 0x23, 0xd4, 0xda, + 0x11, 0xd6, 0x4c, 0xac, 0x5a, 0x4a, 0xc7, 0xa1, 0x33, 0xd5, 0x6a, 0x10, + 0x76, 0x4c, 0x95, 0x43, 0xba, 0x22, 0x97, 0x29, 0xee, 0xe5, 0x8f, 0xcb, + 0x24, 0x73, 0x47, 0xfb, +}; +static const struct drbg_kat_pr_false kat2413_t = { + 12, kat2413_entropyin, kat2413_nonce, kat2413_persstr, + kat2413_entropyinreseed, kat2413_addinreseed, kat2413_addin0, + kat2413_addin1, kat2413_retbits +}; +static const struct drbg_kat kat2413 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2413_t +}; + +static const unsigned char kat2414_entropyin[] = { + 0x5d, 0xa8, 0x50, 0xea, 0x7c, 0x9c, 0x21, 0xb8, 0x72, 0x8e, 0x9e, 0x97, + 0x5a, 0xc8, 0x46, 0x5c, 0xe1, 0x68, 0x18, 0xfa, 0x82, 0x4f, 0x9b, 0x78, + 0x3b, 0x0e, 0xc3, 0xdb, 0x7e, 0xfd, 0xbd, 0x70, 0x70, 0x31, 0x7d, 0x64, + 0xe6, 0x23, 0xeb, 0xe1, +}; +static const unsigned char kat2414_nonce[] = {0}; +static const unsigned char kat2414_persstr[] = {0}; +static const unsigned char kat2414_entropyinreseed[] = { + 0x27, 0xf2, 0xb4, 0x46, 0xf5, 0x52, 0x23, 0xa1, 0x3d, 0xcb, 0x3b, 0x3c, + 0x86, 0x61, 0xa5, 0x2b, 0xe0, 0x11, 0x8e, 0xb5, 0x5d, 0x9a, 0xc1, 0x7a, + 0x00, 0x71, 0x28, 0xf3, 0x22, 0x06, 0x8d, 0xf7, 0x77, 0xb2, 0x7f, 0x05, + 0xe1, 0xc8, 0x78, 0xd0, +}; +static const unsigned char kat2414_addinreseed[] = {0}; +static const unsigned char kat2414_addin0[] = {0}; +static const unsigned char kat2414_addin1[] = {0}; +static const unsigned char kat2414_retbits[] = { + 0x11, 0xe1, 0x5b, 0x10, 0xf8, 0x3d, 0x08, 0x3e, 0x7e, 0x7d, 0x4c, 0xa1, + 0x3a, 0x46, 0xc5, 0x33, 0x82, 0x67, 0xf9, 0x3c, 0x03, 0x80, 0x2a, 0xe6, + 0xaf, 0x14, 0xb3, 0xdd, 0x5a, 0xca, 0x5e, 0xa8, 0x7d, 0xa3, 0x49, 0xdc, + 0xd9, 0xd5, 0x4b, 0xe5, 0x73, 0x6b, 0x28, 0x67, 0x16, 0x65, 0xdb, 0x49, + 0xc4, 0x85, 0x52, 0xca, 0x3f, 0x21, 0xef, 0x4f, 0x3c, 0xec, 0x4a, 0x5a, + 0xb7, 0xbe, 0xa9, 0xae, +}; +static const struct drbg_kat_pr_false kat2414_t = { + 13, kat2414_entropyin, kat2414_nonce, kat2414_persstr, + kat2414_entropyinreseed, kat2414_addinreseed, kat2414_addin0, + kat2414_addin1, kat2414_retbits +}; +static const struct drbg_kat kat2414 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2414_t +}; + +static const unsigned char kat2415_entropyin[] = { + 0xac, 0x8e, 0x24, 0xb8, 0x70, 0x4e, 0x20, 0x11, 0x07, 0x6f, 0xf9, 0x17, + 0x5f, 0xa1, 0xc1, 0x2d, 0x9b, 0xee, 0xed, 0x66, 0xc9, 0xa9, 0x75, 0x03, + 0x7e, 0xf6, 0xf1, 0xf5, 0x19, 0xef, 0xa2, 0x23, 0x0c, 0xa0, 0x14, 0x82, + 0x97, 0x5c, 0x99, 0x08, +}; +static const unsigned char kat2415_nonce[] = {0}; +static const unsigned char kat2415_persstr[] = {0}; +static const unsigned char kat2415_entropyinreseed[] = { + 0xcb, 0xe0, 0x5b, 0x23, 0x5a, 0xb4, 0x57, 0x35, 0xf0, 0xfa, 0x0e, 0xd9, + 0x45, 0xec, 0x38, 0xec, 0x38, 0x01, 0xf2, 0xca, 0xed, 0x0b, 0xd8, 0xf9, + 0x6d, 0xfb, 0x34, 0xcc, 0x75, 0xef, 0x1a, 0x6a, 0x41, 0x22, 0xf5, 0xa8, + 0x30, 0x5f, 0x91, 0x5e, +}; +static const unsigned char kat2415_addinreseed[] = {0}; +static const unsigned char kat2415_addin0[] = {0}; +static const unsigned char kat2415_addin1[] = {0}; +static const unsigned char kat2415_retbits[] = { + 0x91, 0xc4, 0x98, 0x03, 0xaf, 0x71, 0x47, 0x7a, 0x06, 0xa6, 0xa4, 0x93, + 0xb7, 0x5a, 0xa3, 0x68, 0x17, 0xaa, 0x15, 0xb5, 0x8a, 0xfe, 0x75, 0x98, + 0x75, 0x0b, 0x2f, 0xe4, 0xd6, 0x63, 0xf0, 0x5e, 0xcf, 0x0b, 0x8c, 0x1b, + 0x57, 0x37, 0xcd, 0x61, 0x1e, 0x2d, 0x56, 0xce, 0x95, 0xa0, 0x29, 0xbc, + 0x4f, 0xbc, 0x30, 0x7f, 0x54, 0x78, 0xf0, 0xb7, 0x96, 0xb2, 0x59, 0xe0, + 0x1a, 0x48, 0x92, 0x0b, +}; +static const struct drbg_kat_pr_false kat2415_t = { + 14, kat2415_entropyin, kat2415_nonce, kat2415_persstr, + kat2415_entropyinreseed, kat2415_addinreseed, kat2415_addin0, + kat2415_addin1, kat2415_retbits +}; +static const struct drbg_kat kat2415 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2415_t +}; + +static const unsigned char kat2416_entropyin[] = { + 0x65, 0x8a, 0x2d, 0xf4, 0xd2, 0xe3, 0x71, 0xa9, 0xa9, 0x71, 0x92, 0x86, + 0x9f, 0x77, 0xca, 0x77, 0xab, 0xc8, 0x0e, 0x3f, 0x6d, 0x2e, 0x1e, 0x29, + 0x5d, 0x4d, 0x22, 0x8d, 0xe2, 0xac, 0x90, 0xd5, 0x4d, 0x6c, 0xbe, 0xfa, + 0x2e, 0x9b, 0xa3, 0xda, +}; +static const unsigned char kat2416_nonce[] = {0}; +static const unsigned char kat2416_persstr[] = {0}; +static const unsigned char kat2416_entropyinreseed[] = { + 0x79, 0xfb, 0xa3, 0xe1, 0x4d, 0x22, 0x5b, 0x26, 0xe6, 0x36, 0x5b, 0xd1, + 0xae, 0x16, 0x49, 0xae, 0x93, 0xd7, 0x16, 0xdc, 0x09, 0xed, 0x50, 0x9b, + 0xbe, 0x33, 0x8e, 0x2c, 0x78, 0x88, 0x3c, 0x77, 0xaa, 0x0f, 0x43, 0xae, + 0xd3, 0xc2, 0xbb, 0x2d, +}; +static const unsigned char kat2416_addinreseed[] = { + 0xde, 0xf5, 0x51, 0x23, 0x14, 0xc4, 0x7a, 0x6b, 0xb7, 0xca, 0xcb, 0x35, + 0x29, 0xa6, 0x61, 0x64, 0xea, 0x48, 0x82, 0x66, 0x50, 0xa5, 0x4a, 0x6d, + 0x9b, 0xe9, 0xf5, 0xee, 0x4f, 0xbb, 0x8c, 0x7d, 0x74, 0x2d, 0x3d, 0xeb, + 0x00, 0x5e, 0x89, 0x96, +}; +static const unsigned char kat2416_addin0[] = { + 0x54, 0xe3, 0xad, 0x6f, 0x72, 0xc1, 0xf7, 0x40, 0xa0, 0x19, 0x57, 0x2b, + 0x7e, 0x44, 0x6a, 0xd1, 0x58, 0xe0, 0xa2, 0x9b, 0xb0, 0xef, 0xbe, 0xa6, + 0x0f, 0xf6, 0xf1, 0x65, 0x96, 0xaf, 0xbb, 0xce, 0xcf, 0xd3, 0x5e, 0x65, + 0x63, 0x5f, 0x9f, 0x77, +}; +static const unsigned char kat2416_addin1[] = { + 0x65, 0x16, 0xe1, 0x7a, 0x29, 0x5d, 0x2f, 0xc1, 0x41, 0xd2, 0xe8, 0x70, + 0x6e, 0x73, 0x82, 0x2e, 0xfd, 0x7b, 0x59, 0x7f, 0xc5, 0x76, 0xa9, 0x7f, + 0x43, 0x81, 0x6c, 0xd1, 0xa9, 0xdf, 0x4b, 0x9f, 0xf6, 0x91, 0x32, 0x4e, + 0x2b, 0x58, 0x17, 0x77, +}; +static const unsigned char kat2416_retbits[] = { + 0x93, 0x2e, 0x59, 0xd4, 0x14, 0x55, 0xf8, 0x9a, 0xc8, 0x90, 0x30, 0x19, + 0xa6, 0x83, 0xd5, 0x35, 0x68, 0x94, 0xf4, 0xad, 0x60, 0x8f, 0x04, 0x6f, + 0x63, 0x57, 0x79, 0xd3, 0xae, 0x12, 0xe5, 0x52, 0xaa, 0x75, 0x57, 0x5c, + 0x7b, 0xbf, 0xde, 0xb5, 0x9d, 0x25, 0x38, 0x93, 0xb9, 0x6f, 0x71, 0x53, + 0x8f, 0xec, 0x60, 0x47, 0x58, 0x2e, 0xb9, 0x38, 0x83, 0x79, 0xad, 0x93, + 0x9c, 0x85, 0xc9, 0x56, +}; +static const struct drbg_kat_pr_false kat2416_t = { + 0, kat2416_entropyin, kat2416_nonce, kat2416_persstr, + kat2416_entropyinreseed, kat2416_addinreseed, kat2416_addin0, + kat2416_addin1, kat2416_retbits +}; +static const struct drbg_kat kat2416 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2416_t +}; + +static const unsigned char kat2417_entropyin[] = { + 0xa4, 0x4b, 0x6c, 0x8e, 0x84, 0x1c, 0xfe, 0x7b, 0x83, 0xc5, 0xf7, 0xa9, + 0xd3, 0x58, 0xd5, 0xff, 0xcf, 0x2d, 0x4c, 0xf0, 0xf3, 0x51, 0xc9, 0x99, + 0x88, 0xba, 0x16, 0x65, 0x69, 0x8e, 0xf2, 0x81, 0x85, 0x14, 0xc7, 0x7b, + 0x7e, 0x1d, 0xc5, 0xbc, +}; +static const unsigned char kat2417_nonce[] = {0}; +static const unsigned char kat2417_persstr[] = {0}; +static const unsigned char kat2417_entropyinreseed[] = { + 0x2a, 0x9b, 0x73, 0x8d, 0x3b, 0xee, 0x43, 0x53, 0x56, 0x08, 0x83, 0x99, + 0x13, 0x27, 0x3b, 0x7b, 0xd5, 0x3d, 0x1c, 0x56, 0x2e, 0xde, 0x15, 0x37, + 0xd4, 0xfa, 0x0e, 0x2d, 0x84, 0x6d, 0x01, 0x20, 0x7a, 0x00, 0xb4, 0x98, + 0x31, 0x66, 0xa2, 0xb0, +}; +static const unsigned char kat2417_addinreseed[] = { + 0xb9, 0xff, 0x9b, 0x91, 0x89, 0x60, 0x81, 0x00, 0xa3, 0xc4, 0xbf, 0xed, + 0xcd, 0x05, 0xe9, 0x08, 0xd9, 0x7e, 0x2d, 0x24, 0x84, 0xa9, 0x2e, 0x9b, + 0x31, 0x8a, 0x0f, 0x22, 0x31, 0x7c, 0xa8, 0x0e, 0xc5, 0x9a, 0x43, 0x06, + 0x94, 0x3e, 0x6a, 0x62, +}; +static const unsigned char kat2417_addin0[] = { + 0xa2, 0xac, 0xf3, 0xc4, 0x6b, 0x6c, 0x30, 0xb1, 0xe8, 0x98, 0x55, 0xa8, + 0xf0, 0x0f, 0xec, 0xb8, 0xcb, 0x7f, 0xfe, 0x4b, 0x2c, 0x7b, 0xaa, 0xec, + 0xee, 0x58, 0x96, 0x34, 0xea, 0xdf, 0xc2, 0x71, 0x38, 0x6a, 0x7a, 0x31, + 0x7f, 0xbb, 0x2a, 0x98, +}; +static const unsigned char kat2417_addin1[] = { + 0x41, 0x65, 0x84, 0xb1, 0x7c, 0x8e, 0xcc, 0x4e, 0x53, 0x5c, 0x0c, 0x84, + 0x78, 0x79, 0x82, 0x9a, 0xa7, 0xfc, 0xd4, 0xec, 0xc6, 0x91, 0xa3, 0x62, + 0x88, 0xd2, 0x9d, 0x20, 0x8b, 0x0d, 0xaa, 0xe9, 0xc8, 0xa1, 0xb5, 0x3f, + 0x5b, 0x6e, 0xcc, 0x30, +}; +static const unsigned char kat2417_retbits[] = { + 0x8a, 0xb2, 0xe7, 0x1e, 0x5c, 0x96, 0xdc, 0x8f, 0x57, 0xd2, 0xc1, 0x11, + 0x7a, 0x3d, 0xf0, 0xf8, 0xc8, 0xb0, 0x0f, 0x20, 0x6f, 0xcb, 0x94, 0xe1, + 0xdd, 0x04, 0x70, 0x33, 0x7d, 0x66, 0xf0, 0xf8, 0xed, 0x2f, 0x5c, 0x60, + 0x57, 0x97, 0xd7, 0xdf, 0x6e, 0x2f, 0x70, 0xcf, 0x38, 0xe8, 0x42, 0xc4, + 0xaf, 0xab, 0xc9, 0xa5, 0xfb, 0x2a, 0x7c, 0x76, 0x51, 0xa5, 0xc4, 0x8a, + 0x89, 0x40, 0x09, 0xa5, +}; +static const struct drbg_kat_pr_false kat2417_t = { + 1, kat2417_entropyin, kat2417_nonce, kat2417_persstr, + kat2417_entropyinreseed, kat2417_addinreseed, kat2417_addin0, + kat2417_addin1, kat2417_retbits +}; +static const struct drbg_kat kat2417 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2417_t +}; + +static const unsigned char kat2418_entropyin[] = { + 0x91, 0x57, 0x2d, 0x61, 0xaa, 0x51, 0x0a, 0xdf, 0x20, 0xa0, 0xd7, 0x5d, + 0xba, 0xb5, 0xc9, 0x79, 0x6d, 0x44, 0x88, 0xd6, 0x84, 0xd6, 0x7a, 0x33, + 0xa8, 0x67, 0xea, 0x2a, 0xb6, 0xe4, 0x39, 0x5c, 0x05, 0x9d, 0x89, 0x4c, + 0xcd, 0x57, 0x51, 0xb8, +}; +static const unsigned char kat2418_nonce[] = {0}; +static const unsigned char kat2418_persstr[] = {0}; +static const unsigned char kat2418_entropyinreseed[] = { + 0xda, 0x82, 0xdf, 0xf8, 0xf4, 0x3f, 0x6e, 0xc8, 0x62, 0xb6, 0xf2, 0x93, + 0x97, 0xef, 0xd2, 0xc0, 0xd2, 0xd1, 0x64, 0x5b, 0xf1, 0x8b, 0x56, 0xc5, + 0xc9, 0x5f, 0x23, 0x0b, 0xaa, 0x16, 0x68, 0x8a, 0x81, 0x09, 0xa8, 0xbe, + 0x2e, 0x26, 0xb4, 0xfa, +}; +static const unsigned char kat2418_addinreseed[] = { + 0x14, 0x5e, 0x75, 0x54, 0xc3, 0x42, 0xb8, 0xc0, 0xbc, 0x8e, 0xc4, 0xf7, + 0x1d, 0xcf, 0x58, 0x6c, 0x2b, 0x67, 0xec, 0x12, 0xae, 0xaf, 0x9b, 0xd1, + 0xe4, 0xbf, 0x7f, 0x9b, 0x93, 0x20, 0xfd, 0x0b, 0xd9, 0x1d, 0x8c, 0x38, + 0x85, 0x02, 0x67, 0xf9, +}; +static const unsigned char kat2418_addin0[] = { + 0x92, 0x20, 0x91, 0x99, 0x09, 0xcd, 0xf0, 0x48, 0x2f, 0x7b, 0x88, 0xca, + 0x2e, 0xbb, 0x38, 0x79, 0x83, 0xf0, 0x03, 0x43, 0x53, 0x64, 0x60, 0xa6, + 0x6a, 0x22, 0x0a, 0x3b, 0xcc, 0xf1, 0x38, 0x9b, 0xa8, 0x59, 0xb7, 0xb9, + 0xb3, 0xeb, 0xff, 0x59, +}; +static const unsigned char kat2418_addin1[] = { + 0x47, 0x47, 0x97, 0x7b, 0xff, 0xf8, 0x0c, 0xba, 0xa1, 0x76, 0x47, 0x77, + 0xa4, 0x66, 0x59, 0x72, 0xd3, 0x6b, 0x21, 0x45, 0x59, 0x59, 0x05, 0x67, + 0xb4, 0x6c, 0xbc, 0x71, 0xa2, 0xe8, 0x23, 0x09, 0xb6, 0xe3, 0xe8, 0xf7, + 0x1e, 0x67, 0x50, 0xd2, +}; +static const unsigned char kat2418_retbits[] = { + 0xf0, 0x06, 0x15, 0xaf, 0x99, 0xa9, 0xf9, 0x9d, 0x2c, 0xdf, 0xdb, 0x16, + 0xc7, 0x88, 0x73, 0xd9, 0x31, 0x13, 0x29, 0xee, 0x70, 0x05, 0x58, 0xcb, + 0xbe, 0x40, 0xa5, 0x3d, 0xcc, 0xe6, 0xca, 0xb3, 0xbf, 0xb7, 0xec, 0x49, + 0x7c, 0xe7, 0x3b, 0xa7, 0x26, 0x92, 0x2c, 0x96, 0x85, 0x29, 0xf6, 0x64, + 0xdd, 0xf3, 0x22, 0xbc, 0x1c, 0xce, 0x69, 0xae, 0x79, 0xad, 0x62, 0x6e, + 0x2d, 0xb2, 0xc7, 0xa9, +}; +static const struct drbg_kat_pr_false kat2418_t = { + 2, kat2418_entropyin, kat2418_nonce, kat2418_persstr, + kat2418_entropyinreseed, kat2418_addinreseed, kat2418_addin0, + kat2418_addin1, kat2418_retbits +}; +static const struct drbg_kat kat2418 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2418_t +}; + +static const unsigned char kat2419_entropyin[] = { + 0x9d, 0x49, 0x0a, 0xa1, 0x65, 0x01, 0x64, 0x56, 0x80, 0x73, 0xdd, 0x40, + 0xe7, 0x96, 0x7e, 0x81, 0x35, 0x54, 0x41, 0x79, 0x26, 0xcf, 0xbb, 0x74, + 0xf7, 0x0f, 0x6e, 0x4b, 0xee, 0xb0, 0x2c, 0xd3, 0x9f, 0xf5, 0xf3, 0xe2, + 0x78, 0xfe, 0x4b, 0x0c, +}; +static const unsigned char kat2419_nonce[] = {0}; +static const unsigned char kat2419_persstr[] = {0}; +static const unsigned char kat2419_entropyinreseed[] = { + 0x9e, 0xbf, 0x64, 0x92, 0x7e, 0xd2, 0x60, 0xd9, 0x0a, 0x8a, 0x9a, 0xd7, + 0x79, 0x15, 0xaa, 0x9b, 0x40, 0xe7, 0x54, 0x38, 0x87, 0x25, 0xc3, 0x49, + 0xf5, 0x9b, 0xa2, 0xbb, 0x43, 0xe6, 0xb3, 0x61, 0xd0, 0xb0, 0x58, 0x4c, + 0xe0, 0x26, 0x61, 0x61, +}; +static const unsigned char kat2419_addinreseed[] = { + 0x64, 0x77, 0x21, 0x39, 0xea, 0xe5, 0xe6, 0x60, 0x45, 0x49, 0x79, 0x2d, + 0xd0, 0x29, 0x19, 0x1e, 0xfa, 0x8e, 0x5e, 0x97, 0xc0, 0xfe, 0xff, 0x9e, + 0xad, 0x2d, 0xe1, 0x9a, 0x2d, 0x4c, 0x92, 0xf9, 0x30, 0xd3, 0x20, 0x15, + 0x89, 0x9f, 0xe6, 0x84, +}; +static const unsigned char kat2419_addin0[] = { + 0x58, 0x3a, 0xbb, 0x1d, 0x1d, 0x0f, 0x63, 0x21, 0x79, 0xbd, 0xdc, 0x68, + 0x89, 0xbc, 0x1c, 0x2a, 0x09, 0x79, 0xb0, 0xf3, 0xeb, 0xd3, 0x83, 0xd5, + 0xf0, 0x0d, 0x18, 0xbd, 0xc0, 0xb2, 0x77, 0xf4, 0x0a, 0xf7, 0xb5, 0xc4, + 0x6a, 0x1f, 0x89, 0x36, +}; +static const unsigned char kat2419_addin1[] = { + 0xf2, 0xe2, 0x4f, 0xbb, 0xd6, 0x26, 0xaa, 0x8e, 0xdc, 0xc2, 0xbd, 0x77, + 0xdc, 0x35, 0x69, 0xc5, 0xb9, 0x61, 0xfc, 0x86, 0x48, 0xc2, 0x46, 0x0a, + 0x78, 0xab, 0x4d, 0x1f, 0x29, 0x17, 0xa6, 0xcb, 0xa3, 0x46, 0x6a, 0xae, + 0x45, 0xdb, 0x2c, 0x5c, +}; +static const unsigned char kat2419_retbits[] = { + 0x62, 0xa5, 0x98, 0xb9, 0xa7, 0xf4, 0x07, 0x71, 0xc6, 0x5c, 0xdc, 0x99, + 0x85, 0x1b, 0x22, 0xa7, 0x53, 0xf9, 0x2a, 0xdb, 0x02, 0x6a, 0xcf, 0xdd, + 0x92, 0x57, 0x24, 0x42, 0x5d, 0xb3, 0xb6, 0xea, 0x7b, 0x28, 0xd1, 0x3a, + 0x89, 0x8a, 0x2d, 0xa6, 0x3e, 0x19, 0x09, 0x46, 0xb0, 0xab, 0x1a, 0xdb, + 0x67, 0xf0, 0x52, 0x64, 0x0f, 0xf7, 0xe5, 0xaf, 0x7a, 0x53, 0xcf, 0x1b, + 0xb3, 0x9a, 0xee, 0x69, +}; +static const struct drbg_kat_pr_false kat2419_t = { + 3, kat2419_entropyin, kat2419_nonce, kat2419_persstr, + kat2419_entropyinreseed, kat2419_addinreseed, kat2419_addin0, + kat2419_addin1, kat2419_retbits +}; +static const struct drbg_kat kat2419 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2419_t +}; + +static const unsigned char kat2420_entropyin[] = { + 0xdc, 0x0f, 0x0c, 0xa3, 0x21, 0x37, 0xc6, 0x96, 0x70, 0x6f, 0xda, 0xda, + 0x6d, 0x0f, 0x6c, 0x24, 0xee, 0x0b, 0x68, 0xf4, 0x09, 0x1f, 0x8d, 0x2b, + 0x10, 0x9c, 0x24, 0xe4, 0x74, 0x68, 0x50, 0x70, 0xc3, 0x87, 0xf2, 0x1b, + 0x0c, 0x15, 0xf1, 0xc5, +}; +static const unsigned char kat2420_nonce[] = {0}; +static const unsigned char kat2420_persstr[] = {0}; +static const unsigned char kat2420_entropyinreseed[] = { + 0x0d, 0x09, 0xb2, 0x6d, 0x4b, 0x71, 0x22, 0x57, 0x71, 0x42, 0x48, 0xfc, + 0x78, 0xea, 0xca, 0xc8, 0x14, 0xa7, 0x6b, 0xf4, 0x44, 0x50, 0x89, 0x11, + 0x85, 0x2f, 0x49, 0x92, 0xe8, 0x41, 0x57, 0x38, 0xb4, 0xf4, 0x77, 0xca, + 0x8e, 0x4f, 0x01, 0xc7, +}; +static const unsigned char kat2420_addinreseed[] = { + 0xbb, 0xc0, 0x04, 0x7a, 0x8c, 0x57, 0xd5, 0xf9, 0x6f, 0x71, 0x7d, 0x06, + 0xc2, 0x2e, 0x84, 0xc1, 0x3b, 0xe6, 0x9f, 0x5f, 0xf7, 0xb6, 0x7f, 0x51, + 0xd1, 0x74, 0xe6, 0xca, 0xde, 0xdb, 0x18, 0x1f, 0x7f, 0x8e, 0x95, 0x11, + 0xd1, 0x4e, 0xdb, 0xc6, +}; +static const unsigned char kat2420_addin0[] = { + 0xcc, 0x0d, 0x7b, 0x32, 0x14, 0xb5, 0x3d, 0xc5, 0xe0, 0xf4, 0xc8, 0x91, + 0x41, 0x8b, 0x65, 0x85, 0x43, 0xd8, 0xa9, 0xf6, 0x6e, 0x3b, 0xf5, 0x82, + 0x7e, 0xd9, 0xef, 0xc2, 0xcf, 0x25, 0xf7, 0xfc, 0x8b, 0x0b, 0x56, 0xfa, + 0x2b, 0x3b, 0xbb, 0xbe, +}; +static const unsigned char kat2420_addin1[] = { + 0xa6, 0xd3, 0xc7, 0x27, 0x0e, 0x53, 0x17, 0x18, 0x41, 0x6c, 0xd8, 0x7e, + 0x0d, 0x8c, 0xb8, 0xa1, 0xec, 0xb1, 0xf1, 0xde, 0x6e, 0xbf, 0x33, 0x9e, + 0x22, 0x9c, 0xda, 0xb2, 0x53, 0x99, 0x52, 0xfb, 0x75, 0xdc, 0xc7, 0xe4, + 0xe4, 0xd8, 0x8a, 0xb3, +}; +static const unsigned char kat2420_retbits[] = { + 0x0e, 0x84, 0xd7, 0xc3, 0x9b, 0x04, 0x9d, 0xc7, 0x68, 0x9b, 0x60, 0x9b, + 0x05, 0x2d, 0x1d, 0x24, 0xcb, 0xd6, 0xd4, 0xa8, 0x3a, 0xff, 0xb8, 0x79, + 0x96, 0xf0, 0x16, 0xe5, 0x9f, 0xc9, 0xc6, 0x5e, 0xf2, 0xbc, 0x4c, 0xca, + 0x0a, 0x95, 0x06, 0x72, 0xf3, 0x1a, 0xb3, 0x72, 0x27, 0x63, 0xbe, 0x5e, + 0x44, 0x4c, 0xc6, 0x5a, 0xc3, 0x3b, 0x9f, 0x0e, 0x61, 0x75, 0x55, 0x9c, + 0x65, 0x68, 0x77, 0x8b, +}; +static const struct drbg_kat_pr_false kat2420_t = { + 4, kat2420_entropyin, kat2420_nonce, kat2420_persstr, + kat2420_entropyinreseed, kat2420_addinreseed, kat2420_addin0, + kat2420_addin1, kat2420_retbits +}; +static const struct drbg_kat kat2420 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2420_t +}; + +static const unsigned char kat2421_entropyin[] = { + 0x3b, 0x5b, 0x21, 0x30, 0xcc, 0x3b, 0x2a, 0x60, 0x0c, 0x91, 0x05, 0x4a, + 0x66, 0x2d, 0xda, 0xa4, 0x22, 0x5f, 0x69, 0x4a, 0x26, 0x13, 0xd8, 0x68, + 0x07, 0x5f, 0x63, 0x4a, 0x45, 0xdf, 0x57, 0x49, 0x6d, 0x84, 0x3b, 0x3c, + 0xd0, 0x9f, 0x56, 0x8a, +}; +static const unsigned char kat2421_nonce[] = {0}; +static const unsigned char kat2421_persstr[] = {0}; +static const unsigned char kat2421_entropyinreseed[] = { + 0x33, 0xe8, 0x63, 0x26, 0x00, 0x2f, 0x71, 0xb7, 0x9d, 0x67, 0x82, 0x4a, + 0xe4, 0xb7, 0xdd, 0x18, 0x61, 0x0d, 0x3f, 0x2a, 0x91, 0x1c, 0xee, 0x7f, + 0xdf, 0x24, 0xaf, 0x51, 0x5f, 0x30, 0x62, 0x70, 0xe9, 0x15, 0x0f, 0xeb, + 0xd8, 0x0e, 0x5b, 0xc0, +}; +static const unsigned char kat2421_addinreseed[] = { + 0x4e, 0x1d, 0xac, 0x0d, 0x8e, 0x47, 0xc7, 0xb0, 0x66, 0x51, 0xfb, 0x76, + 0x66, 0xab, 0x9f, 0x4d, 0xb3, 0xa1, 0xad, 0x41, 0x6b, 0x44, 0xfa, 0x09, + 0x5c, 0x3f, 0x85, 0x11, 0xc2, 0xfc, 0x84, 0x9f, 0x08, 0x07, 0xe1, 0x46, + 0x63, 0x8d, 0xd2, 0xa2, +}; +static const unsigned char kat2421_addin0[] = { + 0x38, 0xdd, 0x29, 0xff, 0x7f, 0x16, 0x7b, 0x52, 0x1b, 0x30, 0x19, 0x15, + 0x24, 0xb1, 0xeb, 0x3e, 0xda, 0x03, 0x41, 0xe4, 0x78, 0x23, 0x87, 0x2b, + 0x17, 0x75, 0xc1, 0x76, 0x87, 0x98, 0xf0, 0xc4, 0xe7, 0x57, 0xc5, 0xfd, + 0x15, 0x14, 0x04, 0x5b, +}; +static const unsigned char kat2421_addin1[] = { + 0xa7, 0xc9, 0x99, 0x80, 0x6d, 0x38, 0x2e, 0xf8, 0xe9, 0x1e, 0xcf, 0x58, + 0x61, 0x59, 0x86, 0x02, 0x13, 0x50, 0xdd, 0x26, 0xb8, 0xd0, 0x4a, 0xa5, + 0x7d, 0x8d, 0x69, 0x84, 0x5e, 0xe9, 0x23, 0xa1, 0x36, 0x94, 0x7b, 0xe4, + 0x1d, 0x13, 0xa2, 0x54, +}; +static const unsigned char kat2421_retbits[] = { + 0x64, 0xeb, 0x6c, 0xea, 0x5d, 0x7e, 0xec, 0x48, 0xbe, 0x1c, 0x63, 0xa7, + 0x6f, 0xa8, 0xdf, 0x5a, 0x18, 0x32, 0x96, 0x12, 0x10, 0x89, 0xf8, 0x9c, + 0x32, 0x2e, 0xee, 0x91, 0x6e, 0x70, 0xf8, 0x38, 0x92, 0x57, 0x09, 0xe2, + 0xdb, 0xb0, 0x5f, 0xff, 0x61, 0x37, 0x90, 0xe8, 0xbd, 0x4a, 0x62, 0x89, + 0xe9, 0x6a, 0x83, 0xae, 0xc6, 0xcf, 0xf4, 0x6a, 0xef, 0x91, 0xce, 0xf1, + 0x3e, 0x61, 0xbe, 0x60, +}; +static const struct drbg_kat_pr_false kat2421_t = { + 5, kat2421_entropyin, kat2421_nonce, kat2421_persstr, + kat2421_entropyinreseed, kat2421_addinreseed, kat2421_addin0, + kat2421_addin1, kat2421_retbits +}; +static const struct drbg_kat kat2421 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2421_t +}; + +static const unsigned char kat2422_entropyin[] = { + 0x58, 0x59, 0xf9, 0x21, 0x72, 0x4d, 0xf5, 0x22, 0xf3, 0x48, 0xa3, 0x6f, + 0x23, 0x78, 0x04, 0xdd, 0xbb, 0x71, 0xc7, 0xbc, 0xf6, 0x27, 0x3e, 0xf4, + 0x61, 0xdc, 0xf7, 0x4d, 0xcb, 0xc2, 0x1f, 0x0c, 0x34, 0x7c, 0x62, 0x8d, + 0xc5, 0xe3, 0x73, 0xd3, +}; +static const unsigned char kat2422_nonce[] = {0}; +static const unsigned char kat2422_persstr[] = {0}; +static const unsigned char kat2422_entropyinreseed[] = { + 0xc0, 0xd3, 0x0c, 0xf0, 0xed, 0x04, 0x6a, 0x78, 0x87, 0xc7, 0x68, 0x4a, + 0xd8, 0x8d, 0x1a, 0x25, 0xb4, 0xe8, 0xae, 0x30, 0x35, 0xf2, 0xad, 0x6a, + 0xde, 0x05, 0xcc, 0xb3, 0xcb, 0x42, 0x41, 0x0e, 0x27, 0x90, 0xc9, 0x7d, + 0xab, 0x36, 0xd6, 0x58, +}; +static const unsigned char kat2422_addinreseed[] = { + 0x5c, 0x40, 0xef, 0x84, 0xf8, 0x70, 0xa6, 0x0f, 0x18, 0x0e, 0xa2, 0x7d, + 0x10, 0xb0, 0xfa, 0x9f, 0xcb, 0xb9, 0xc5, 0x38, 0x13, 0x95, 0xd1, 0xd0, + 0x04, 0xab, 0x2b, 0x25, 0x36, 0x6a, 0xc7, 0xef, 0xb4, 0xe4, 0x91, 0x4a, + 0x44, 0xe6, 0x86, 0x8f, +}; +static const unsigned char kat2422_addin0[] = { + 0xd4, 0x7e, 0x7c, 0x58, 0x6e, 0x87, 0x46, 0xa8, 0x7e, 0x1c, 0x5c, 0x0f, + 0x24, 0x29, 0xa0, 0xf7, 0x61, 0x56, 0x9b, 0xe5, 0xe3, 0xa7, 0x53, 0xf4, + 0x53, 0xb7, 0x5b, 0xd0, 0x9d, 0x52, 0x12, 0x69, 0x3f, 0x39, 0xd3, 0x3a, + 0x6f, 0x49, 0xc3, 0xb0, +}; +static const unsigned char kat2422_addin1[] = { + 0x86, 0x70, 0x72, 0xeb, 0xb2, 0xad, 0x2d, 0x87, 0xa7, 0x9b, 0xd6, 0xce, + 0x4e, 0xb9, 0xfc, 0xd7, 0x17, 0x42, 0x88, 0x24, 0xb5, 0x6d, 0x2f, 0xe8, + 0x32, 0x79, 0x92, 0xbc, 0xfb, 0x79, 0x24, 0x94, 0xd7, 0x59, 0x6b, 0xd9, + 0x72, 0x77, 0x0a, 0x83, +}; +static const unsigned char kat2422_retbits[] = { + 0x24, 0x69, 0x14, 0x31, 0x8b, 0x6b, 0xb9, 0x93, 0x68, 0x85, 0xcb, 0x19, + 0x75, 0xa5, 0x28, 0x10, 0x9c, 0xf7, 0x46, 0x44, 0x84, 0xdb, 0x70, 0x0e, + 0xcb, 0x2d, 0x69, 0x91, 0x9e, 0x4a, 0x7d, 0x6b, 0x2e, 0xd4, 0x70, 0xde, + 0x92, 0xa2, 0xc6, 0x48, 0x99, 0x5b, 0xef, 0xf8, 0x2c, 0xc1, 0x30, 0x33, + 0xc8, 0xdb, 0xec, 0x4d, 0xc7, 0x77, 0xe8, 0xb7, 0xbb, 0x57, 0x9b, 0xd7, + 0xdd, 0xb2, 0xdc, 0xf7, +}; +static const struct drbg_kat_pr_false kat2422_t = { + 6, kat2422_entropyin, kat2422_nonce, kat2422_persstr, + kat2422_entropyinreseed, kat2422_addinreseed, kat2422_addin0, + kat2422_addin1, kat2422_retbits +}; +static const struct drbg_kat kat2422 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2422_t +}; + +static const unsigned char kat2423_entropyin[] = { + 0x35, 0x99, 0xc3, 0xf1, 0x7a, 0xe1, 0x05, 0xfd, 0x8c, 0x46, 0xaa, 0x0c, + 0x33, 0x8d, 0xa7, 0x5f, 0x6b, 0xdf, 0xf7, 0x06, 0x49, 0x12, 0xad, 0xa1, + 0xd9, 0xb8, 0xa0, 0xfe, 0xfd, 0xf2, 0xae, 0x5d, 0xd8, 0x48, 0xed, 0x94, + 0xc8, 0xaa, 0x80, 0xe9, +}; +static const unsigned char kat2423_nonce[] = {0}; +static const unsigned char kat2423_persstr[] = {0}; +static const unsigned char kat2423_entropyinreseed[] = { + 0xeb, 0xc8, 0x55, 0x00, 0x45, 0x94, 0xb5, 0xd1, 0xca, 0xaa, 0x95, 0x64, + 0x98, 0xb7, 0x83, 0x4c, 0xb2, 0x8b, 0xbc, 0x70, 0x3b, 0x9c, 0xed, 0xb1, + 0x9d, 0x18, 0xbc, 0x4b, 0xf3, 0x6b, 0xbc, 0x22, 0x4b, 0x40, 0x47, 0x22, + 0xa8, 0xa1, 0x9b, 0x21, +}; +static const unsigned char kat2423_addinreseed[] = { + 0x69, 0x2d, 0x16, 0x8d, 0x7c, 0xa6, 0x69, 0x3f, 0xb9, 0xf4, 0x1c, 0x61, + 0xa5, 0x3c, 0x27, 0xd1, 0x48, 0x2a, 0x75, 0xf3, 0xde, 0xd5, 0x20, 0xe3, + 0x1a, 0x53, 0xa5, 0xe3, 0xb2, 0x84, 0x35, 0x5c, 0x2f, 0x6c, 0xff, 0x83, + 0x51, 0x5b, 0x18, 0x3a, +}; +static const unsigned char kat2423_addin0[] = { + 0x79, 0x6f, 0xdd, 0xef, 0x51, 0xad, 0x8f, 0xfe, 0x79, 0x2d, 0x11, 0x78, + 0x1e, 0xf6, 0xbc, 0xad, 0x53, 0xd9, 0x1f, 0x4b, 0x21, 0x34, 0xbe, 0x53, + 0xa9, 0x59, 0xab, 0xb9, 0x9f, 0x1b, 0x87, 0x05, 0x83, 0xc7, 0xfc, 0x3a, + 0x3e, 0xc4, 0x64, 0xcd, +}; +static const unsigned char kat2423_addin1[] = { + 0x42, 0x7d, 0x44, 0x21, 0xe6, 0x98, 0x1c, 0xad, 0x4c, 0x0a, 0xbc, 0xa0, + 0xb9, 0x14, 0x6c, 0x18, 0x4b, 0xfa, 0x6f, 0x0f, 0xde, 0xf1, 0xcd, 0x12, + 0x22, 0xa1, 0x44, 0x2a, 0xed, 0xeb, 0x75, 0x62, 0x84, 0x23, 0xa8, 0x32, + 0x6f, 0xc6, 0xdd, 0xc6, +}; +static const unsigned char kat2423_retbits[] = { + 0x92, 0x70, 0xfe, 0xa3, 0xfe, 0x71, 0xcb, 0xe9, 0x54, 0xac, 0x4b, 0x79, + 0xe2, 0xcb, 0x31, 0xaf, 0x0d, 0xaf, 0x1f, 0xe7, 0x32, 0x99, 0x04, 0xbb, + 0xff, 0xd8, 0x8c, 0xc0, 0xc9, 0xa0, 0x03, 0x30, 0x32, 0xb0, 0x61, 0xf6, + 0xa8, 0x25, 0xf3, 0xc5, 0x6d, 0x78, 0xe1, 0x02, 0xd1, 0x04, 0x28, 0x43, + 0x3e, 0x1c, 0x19, 0xca, 0x84, 0xa0, 0xf1, 0xd7, 0xa5, 0x6c, 0x52, 0xeb, + 0x11, 0xd8, 0x4e, 0x2a, +}; +static const struct drbg_kat_pr_false kat2423_t = { + 7, kat2423_entropyin, kat2423_nonce, kat2423_persstr, + kat2423_entropyinreseed, kat2423_addinreseed, kat2423_addin0, + kat2423_addin1, kat2423_retbits +}; +static const struct drbg_kat kat2423 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2423_t +}; + +static const unsigned char kat2424_entropyin[] = { + 0x43, 0x12, 0xd0, 0x76, 0xaa, 0x8f, 0x71, 0x9c, 0x33, 0x40, 0xd8, 0x30, + 0xe7, 0x3e, 0x17, 0x61, 0xc7, 0x55, 0xf6, 0x0f, 0xd3, 0x14, 0x43, 0x14, + 0x10, 0x92, 0xe9, 0xf9, 0x81, 0x42, 0x06, 0xea, 0xf5, 0xdb, 0x71, 0x2d, + 0xa0, 0x54, 0x64, 0x76, +}; +static const unsigned char kat2424_nonce[] = {0}; +static const unsigned char kat2424_persstr[] = {0}; +static const unsigned char kat2424_entropyinreseed[] = { + 0x17, 0x82, 0x67, 0xc6, 0x6e, 0x65, 0x87, 0x64, 0x37, 0x37, 0x50, 0x23, + 0x61, 0xe6, 0x52, 0x94, 0x80, 0x80, 0x59, 0xde, 0x01, 0x28, 0x72, 0xaf, + 0x50, 0xe3, 0xfc, 0x22, 0xa7, 0x7b, 0x1d, 0x89, 0x7f, 0x89, 0x1e, 0x17, + 0x37, 0xb9, 0xce, 0xfb, +}; +static const unsigned char kat2424_addinreseed[] = { + 0xdc, 0x8e, 0xf5, 0xcb, 0x2f, 0xe6, 0x58, 0x22, 0x90, 0xb7, 0x86, 0x66, + 0x38, 0x11, 0xf0, 0xc4, 0x13, 0xcd, 0x3a, 0x7b, 0xb0, 0xcc, 0x9e, 0xdb, + 0x71, 0x2b, 0x33, 0x31, 0xc1, 0xd9, 0x5d, 0xed, 0xb3, 0xd0, 0x19, 0x74, + 0xf8, 0xb3, 0x9b, 0x62, +}; +static const unsigned char kat2424_addin0[] = { + 0x63, 0x14, 0x3a, 0x7c, 0x7f, 0xa1, 0x66, 0xfb, 0xac, 0xd6, 0x15, 0x74, + 0x49, 0x1d, 0x9b, 0xbc, 0x78, 0x2e, 0x08, 0xf5, 0x99, 0x97, 0xcc, 0xa6, + 0x33, 0x5d, 0xff, 0x95, 0xb0, 0x1e, 0x80, 0xe0, 0x82, 0x0f, 0xba, 0xfb, + 0xd5, 0xdf, 0x7c, 0x34, +}; +static const unsigned char kat2424_addin1[] = { + 0xcf, 0xdb, 0xa4, 0xc3, 0x78, 0xc5, 0xf6, 0xfb, 0x52, 0xa4, 0xdb, 0xd3, + 0x03, 0xe1, 0x97, 0x17, 0x2d, 0x4d, 0xf8, 0x8f, 0x68, 0x17, 0x04, 0x36, + 0x17, 0x61, 0xc8, 0x0e, 0x3f, 0xb2, 0xcf, 0x67, 0x8c, 0xa8, 0x68, 0x7f, + 0xfb, 0xc9, 0x19, 0xf6, +}; +static const unsigned char kat2424_retbits[] = { + 0x21, 0x97, 0x9a, 0x03, 0x9a, 0x04, 0xba, 0x65, 0x89, 0xb5, 0x6d, 0x56, + 0x3d, 0x28, 0x63, 0xe0, 0xa4, 0x44, 0xf7, 0x3d, 0x37, 0x71, 0xae, 0x53, + 0x6b, 0x50, 0xff, 0xd5, 0x9e, 0xe8, 0x2c, 0xb1, 0x27, 0x57, 0x23, 0xd6, + 0xb7, 0x7e, 0xfc, 0x44, 0xbf, 0x67, 0x3f, 0xd3, 0xdd, 0xf1, 0x4c, 0x16, + 0x0e, 0x59, 0xce, 0x54, 0x9c, 0xd5, 0x1f, 0x46, 0x71, 0xe6, 0xa5, 0xcf, + 0x7e, 0xe6, 0x30, 0x5e, +}; +static const struct drbg_kat_pr_false kat2424_t = { + 8, kat2424_entropyin, kat2424_nonce, kat2424_persstr, + kat2424_entropyinreseed, kat2424_addinreseed, kat2424_addin0, + kat2424_addin1, kat2424_retbits +}; +static const struct drbg_kat kat2424 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2424_t +}; + +static const unsigned char kat2425_entropyin[] = { + 0x18, 0x48, 0x8a, 0x34, 0xee, 0x9d, 0xe4, 0xff, 0x27, 0x90, 0x5f, 0x19, + 0x73, 0x96, 0x04, 0xff, 0x5b, 0x11, 0x83, 0x91, 0x48, 0x55, 0xa2, 0xe4, + 0xb0, 0x5e, 0x07, 0x8e, 0xdc, 0x6f, 0x4e, 0x45, 0xa2, 0xe5, 0x0e, 0x90, + 0x06, 0x66, 0x1f, 0xd4, +}; +static const unsigned char kat2425_nonce[] = {0}; +static const unsigned char kat2425_persstr[] = {0}; +static const unsigned char kat2425_entropyinreseed[] = { + 0xac, 0x53, 0xbc, 0x31, 0x3a, 0x18, 0x15, 0x34, 0x5c, 0xa9, 0xad, 0x9c, + 0x9b, 0x4e, 0x28, 0xfe, 0x1d, 0x01, 0x73, 0xd0, 0x14, 0x7f, 0xd0, 0x78, + 0x30, 0xa5, 0x7e, 0x67, 0xee, 0x67, 0xca, 0x76, 0x50, 0xa2, 0x62, 0x38, + 0xc4, 0x5e, 0x41, 0xf8, +}; +static const unsigned char kat2425_addinreseed[] = { + 0xe7, 0x1f, 0x6d, 0x81, 0x66, 0xaa, 0xfe, 0x20, 0x7b, 0x80, 0x4c, 0xb2, + 0xb5, 0x1a, 0x84, 0xf3, 0xbd, 0x79, 0xbd, 0x88, 0xbb, 0xb5, 0x23, 0x24, + 0x4d, 0x47, 0xcf, 0xec, 0x05, 0xc5, 0xc4, 0x58, 0x3e, 0x0b, 0x0f, 0x5a, + 0x58, 0x31, 0xbb, 0x5a, +}; +static const unsigned char kat2425_addin0[] = { + 0x70, 0x89, 0xce, 0xe3, 0xd8, 0xf6, 0x6c, 0xec, 0xe6, 0xe0, 0x53, 0xf4, + 0x80, 0x16, 0xf1, 0xf9, 0x9d, 0xfc, 0xe7, 0x33, 0x56, 0xa6, 0xbb, 0xf6, + 0xd9, 0x05, 0x86, 0x4e, 0x97, 0x02, 0x9b, 0x4a, 0x93, 0x43, 0x00, 0x86, + 0x28, 0x31, 0x0d, 0xc6, +}; +static const unsigned char kat2425_addin1[] = { + 0x12, 0x35, 0xd6, 0xfe, 0xbe, 0xc6, 0x6d, 0xea, 0x03, 0xe4, 0x44, 0x19, + 0x5d, 0xe5, 0x4a, 0x42, 0x94, 0x83, 0x5d, 0x7a, 0x23, 0x13, 0xf8, 0xfd, + 0x1f, 0xc8, 0x4d, 0xde, 0x0e, 0x07, 0x46, 0x75, 0x03, 0x35, 0x92, 0xd8, + 0x21, 0xa9, 0x9f, 0x68, +}; +static const unsigned char kat2425_retbits[] = { + 0x47, 0x49, 0xc7, 0x41, 0x5b, 0xd5, 0x8e, 0x7a, 0x21, 0x19, 0xf5, 0x0c, + 0xfd, 0x67, 0x3e, 0x73, 0x89, 0x86, 0xe4, 0x1e, 0x4e, 0x9b, 0x38, 0xc4, + 0x33, 0x76, 0x6e, 0x4a, 0xa1, 0xe8, 0x69, 0x4e, 0x7b, 0x93, 0x72, 0x83, + 0x2d, 0x8e, 0x70, 0x12, 0x1d, 0x99, 0x9e, 0x8b, 0xd0, 0x93, 0x7b, 0x79, + 0xe4, 0x88, 0xda, 0xf1, 0x87, 0x3e, 0xb8, 0xfa, 0xfa, 0x16, 0xb9, 0x34, + 0x57, 0x48, 0xf5, 0x51, +}; +static const struct drbg_kat_pr_false kat2425_t = { + 9, kat2425_entropyin, kat2425_nonce, kat2425_persstr, + kat2425_entropyinreseed, kat2425_addinreseed, kat2425_addin0, + kat2425_addin1, kat2425_retbits +}; +static const struct drbg_kat kat2425 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2425_t +}; + +static const unsigned char kat2426_entropyin[] = { + 0xe0, 0xb9, 0xb4, 0x8e, 0xdf, 0x87, 0x3e, 0xbc, 0xb6, 0x46, 0xb0, 0x90, + 0xec, 0xc9, 0xc6, 0xd7, 0xb1, 0xf4, 0xa5, 0xe8, 0x7c, 0x0b, 0x25, 0x70, + 0xf7, 0xec, 0xc4, 0x59, 0xab, 0xa8, 0x55, 0x23, 0xde, 0xd2, 0x04, 0xf5, + 0xfe, 0xc8, 0xd2, 0x7a, +}; +static const unsigned char kat2426_nonce[] = {0}; +static const unsigned char kat2426_persstr[] = {0}; +static const unsigned char kat2426_entropyinreseed[] = { + 0x21, 0x31, 0x81, 0xaf, 0x9f, 0x4b, 0x08, 0x90, 0x8e, 0x08, 0xb5, 0x4a, + 0xbb, 0x5d, 0xb0, 0x9d, 0xa6, 0x76, 0x08, 0x78, 0x93, 0x79, 0x78, 0x8e, + 0xf4, 0xc3, 0xd9, 0x6c, 0xca, 0x41, 0xdb, 0x9e, 0x5e, 0x3c, 0x42, 0x56, + 0x90, 0x3d, 0x68, 0x62, +}; +static const unsigned char kat2426_addinreseed[] = { + 0xd6, 0x66, 0xd0, 0x14, 0x21, 0x53, 0xd4, 0xbc, 0x3b, 0x50, 0x8e, 0x5c, + 0x15, 0x5e, 0x84, 0x03, 0x76, 0xa6, 0xc6, 0xec, 0x3c, 0xf5, 0x45, 0x3c, + 0x38, 0xcc, 0x70, 0x31, 0xab, 0xd0, 0x01, 0x41, 0x4f, 0x6f, 0xf5, 0x56, + 0x75, 0xac, 0x3a, 0x26, +}; +static const unsigned char kat2426_addin0[] = { + 0xe2, 0x82, 0x22, 0x30, 0xe1, 0x0c, 0x94, 0x11, 0x28, 0x16, 0x67, 0xab, + 0xad, 0x67, 0x7d, 0xd7, 0x0b, 0xbc, 0xf8, 0x14, 0xc3, 0x4e, 0x0e, 0x8f, + 0x19, 0x00, 0xdf, 0x78, 0x78, 0xc8, 0x7c, 0xe6, 0x30, 0x63, 0x88, 0x1d, + 0xca, 0x1d, 0xe1, 0x3e, +}; +static const unsigned char kat2426_addin1[] = { + 0xf8, 0x50, 0x6b, 0xfb, 0x85, 0xf0, 0xc8, 0x9c, 0x3c, 0x60, 0x98, 0x92, + 0xe7, 0xe9, 0xb7, 0x43, 0x16, 0xbb, 0xc2, 0x6d, 0x05, 0x8c, 0x80, 0x25, + 0xdb, 0xa9, 0xa6, 0x96, 0x79, 0xcc, 0x55, 0x09, 0x0e, 0x27, 0x05, 0x14, + 0xa0, 0x65, 0xa5, 0x51, +}; +static const unsigned char kat2426_retbits[] = { + 0x25, 0xa4, 0x6b, 0xdd, 0xfa, 0x9a, 0xa7, 0x96, 0x8c, 0x80, 0xc2, 0x03, + 0x5d, 0x9a, 0xd6, 0x41, 0xec, 0x1b, 0x98, 0xc5, 0x51, 0xf3, 0xd0, 0xbb, + 0x0b, 0x57, 0x6c, 0xec, 0x9d, 0xc6, 0x3e, 0x28, 0xff, 0xd0, 0xd0, 0x8a, + 0x15, 0x39, 0xcf, 0x00, 0x52, 0x32, 0xd4, 0x20, 0xd6, 0xea, 0x0e, 0x50, + 0x21, 0x41, 0xf4, 0xa7, 0x30, 0x63, 0x6f, 0x41, 0xea, 0x84, 0x4e, 0xa0, + 0xdc, 0x42, 0x31, 0xee, +}; +static const struct drbg_kat_pr_false kat2426_t = { + 10, kat2426_entropyin, kat2426_nonce, kat2426_persstr, + kat2426_entropyinreseed, kat2426_addinreseed, kat2426_addin0, + kat2426_addin1, kat2426_retbits +}; +static const struct drbg_kat kat2426 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2426_t +}; + +static const unsigned char kat2427_entropyin[] = { + 0xf4, 0x0c, 0x54, 0x6e, 0x81, 0xce, 0x4b, 0x2c, 0xe6, 0x87, 0xce, 0x85, + 0x75, 0x9c, 0xab, 0xf3, 0x6f, 0xd4, 0xb9, 0x0f, 0x67, 0x76, 0x8c, 0x99, + 0xe1, 0x8a, 0x52, 0x5d, 0x3d, 0x11, 0xc3, 0xd8, 0x6d, 0x1d, 0xb8, 0xcb, + 0x49, 0xcc, 0x88, 0x1d, +}; +static const unsigned char kat2427_nonce[] = {0}; +static const unsigned char kat2427_persstr[] = {0}; +static const unsigned char kat2427_entropyinreseed[] = { + 0xe8, 0xcc, 0x4f, 0x31, 0x80, 0x90, 0x4b, 0x3d, 0x06, 0x16, 0x8c, 0xb7, + 0xd4, 0x7b, 0x21, 0x25, 0x2a, 0xcc, 0x72, 0x89, 0x92, 0x63, 0xae, 0xe1, + 0x94, 0x6b, 0x37, 0xb9, 0xb5, 0x46, 0x62, 0x8f, 0x1f, 0x18, 0x26, 0x30, + 0x72, 0x6d, 0x61, 0x62, +}; +static const unsigned char kat2427_addinreseed[] = { + 0x75, 0x3e, 0x59, 0xea, 0x01, 0x00, 0xb5, 0x1a, 0x1f, 0x01, 0x3a, 0x6f, + 0x0d, 0x91, 0x83, 0xe8, 0xd5, 0x4e, 0xdd, 0x44, 0x8e, 0x93, 0xb5, 0x18, + 0xa7, 0x0d, 0xcc, 0x7b, 0x32, 0x8e, 0x64, 0xe1, 0x14, 0xbe, 0x5b, 0xfb, + 0x1f, 0xb2, 0x91, 0x74, +}; +static const unsigned char kat2427_addin0[] = { + 0x36, 0x75, 0xa8, 0x64, 0x1a, 0x09, 0x0d, 0x66, 0x5e, 0xcd, 0x6a, 0xb5, + 0x50, 0x8b, 0xd6, 0x52, 0x40, 0xf3, 0xa2, 0xc8, 0x28, 0xda, 0x70, 0x1e, + 0x1e, 0x59, 0x07, 0xfb, 0xb5, 0x9b, 0x8d, 0x6f, 0xad, 0xca, 0x7a, 0xef, + 0x53, 0xe8, 0x9e, 0xe8, +}; +static const unsigned char kat2427_addin1[] = { + 0x8a, 0xaf, 0x08, 0xb0, 0xca, 0x7e, 0x9d, 0x02, 0x8f, 0x83, 0x0e, 0x45, + 0x74, 0x99, 0x10, 0x93, 0xf9, 0xff, 0x0c, 0xae, 0xbf, 0x89, 0x0b, 0xb8, + 0xc0, 0x0f, 0x2f, 0x18, 0x1f, 0x35, 0x42, 0xd1, 0x84, 0x23, 0xa2, 0xe6, + 0x21, 0x79, 0x36, 0x1d, +}; +static const unsigned char kat2427_retbits[] = { + 0x98, 0xf6, 0xf5, 0x35, 0x9b, 0x55, 0xe8, 0xad, 0x37, 0xf7, 0x4c, 0x23, + 0x36, 0x34, 0x32, 0x97, 0xb9, 0xbc, 0x01, 0xbe, 0xe4, 0xe8, 0xf9, 0x8a, + 0x10, 0xa1, 0xe8, 0x6d, 0x56, 0x29, 0x90, 0xdf, 0xd1, 0xb3, 0xa6, 0x59, + 0x19, 0x8b, 0x2b, 0xf2, 0x61, 0x55, 0x13, 0x0c, 0x15, 0xa6, 0x83, 0xe0, + 0xd5, 0xf1, 0xec, 0xfb, 0xdc, 0x9f, 0xbf, 0x91, 0xe1, 0xbe, 0xc1, 0xd9, + 0x00, 0xf3, 0x06, 0x64, +}; +static const struct drbg_kat_pr_false kat2427_t = { + 11, kat2427_entropyin, kat2427_nonce, kat2427_persstr, + kat2427_entropyinreseed, kat2427_addinreseed, kat2427_addin0, + kat2427_addin1, kat2427_retbits +}; +static const struct drbg_kat kat2427 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2427_t +}; + +static const unsigned char kat2428_entropyin[] = { + 0x8e, 0xf1, 0x2c, 0x3e, 0x89, 0xa2, 0xcd, 0x21, 0xb3, 0xb1, 0x9b, 0x7e, + 0x38, 0xbd, 0x59, 0xd5, 0x22, 0x26, 0x12, 0xe9, 0xf7, 0xe3, 0x31, 0x3c, + 0x85, 0x3b, 0xaa, 0x89, 0x15, 0x75, 0xc8, 0x40, 0x77, 0xd0, 0x1f, 0x5e, + 0x37, 0x14, 0xcf, 0x2c, +}; +static const unsigned char kat2428_nonce[] = {0}; +static const unsigned char kat2428_persstr[] = {0}; +static const unsigned char kat2428_entropyinreseed[] = { + 0x47, 0x04, 0x70, 0x5b, 0x43, 0xda, 0x7b, 0x66, 0x8a, 0xe1, 0x86, 0x5d, + 0x42, 0x1f, 0x6d, 0xe2, 0xc0, 0x54, 0xc6, 0x98, 0x8f, 0x93, 0xd9, 0xf1, + 0xce, 0x1f, 0x31, 0x42, 0x34, 0x7f, 0x20, 0xb5, 0xf4, 0x07, 0x70, 0x5e, + 0x76, 0x5d, 0xa4, 0x49, +}; +static const unsigned char kat2428_addinreseed[] = { + 0x6f, 0x6a, 0x2f, 0xa0, 0xb3, 0x25, 0xe8, 0x54, 0xf3, 0x3e, 0xb7, 0xb2, + 0xe3, 0x03, 0xce, 0x24, 0x96, 0x7c, 0xbe, 0x21, 0x81, 0x2a, 0x7a, 0x24, + 0x48, 0x53, 0x47, 0xa0, 0xb4, 0xda, 0x15, 0x9b, 0xee, 0xfe, 0x03, 0x9a, + 0xbb, 0x25, 0xd8, 0x21, +}; +static const unsigned char kat2428_addin0[] = { + 0xdf, 0xa6, 0x57, 0x09, 0xea, 0xc6, 0xdc, 0xd7, 0xd8, 0xce, 0x09, 0x64, + 0x6b, 0x78, 0xf1, 0xe2, 0x77, 0xfd, 0xe9, 0xfe, 0xaf, 0x52, 0xec, 0x3d, + 0x19, 0x48, 0x42, 0xe3, 0xe4, 0x17, 0x4e, 0x79, 0x03, 0x8a, 0xe1, 0x4b, + 0xab, 0x65, 0x12, 0x12, +}; +static const unsigned char kat2428_addin1[] = { + 0x58, 0xe8, 0x2a, 0xf1, 0xb8, 0x94, 0x74, 0x38, 0xdb, 0x11, 0xd1, 0x3e, + 0x43, 0x6d, 0x4a, 0xfc, 0x51, 0x96, 0x7e, 0x30, 0x34, 0x26, 0x51, 0x5f, + 0x4f, 0xf8, 0xf0, 0x44, 0x80, 0x83, 0xf9, 0xc7, 0x28, 0xdd, 0x5b, 0x17, + 0x14, 0x05, 0x90, 0x7b, +}; +static const unsigned char kat2428_retbits[] = { + 0xec, 0x66, 0x19, 0x4d, 0x98, 0xcd, 0x6b, 0x1c, 0x6e, 0x3e, 0xd6, 0xbd, + 0x5b, 0x83, 0xc2, 0x66, 0x4f, 0x87, 0x5f, 0x2a, 0x08, 0xeb, 0xc6, 0xb9, + 0x5e, 0x1c, 0x8f, 0xd0, 0xbd, 0x50, 0x76, 0x5e, 0xd1, 0x31, 0x5e, 0x32, + 0x9b, 0x35, 0x65, 0x57, 0x65, 0xbb, 0x70, 0x81, 0x57, 0x63, 0x90, 0xb6, + 0x4d, 0x52, 0xb1, 0xc2, 0x47, 0x62, 0xfe, 0x7d, 0x65, 0xe4, 0xa8, 0x13, + 0x31, 0xcd, 0x61, 0x0a, +}; +static const struct drbg_kat_pr_false kat2428_t = { + 12, kat2428_entropyin, kat2428_nonce, kat2428_persstr, + kat2428_entropyinreseed, kat2428_addinreseed, kat2428_addin0, + kat2428_addin1, kat2428_retbits +}; +static const struct drbg_kat kat2428 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2428_t +}; + +static const unsigned char kat2429_entropyin[] = { + 0x9d, 0xdc, 0x93, 0x1b, 0x65, 0x1d, 0x3a, 0xc5, 0x7d, 0xcb, 0x00, 0xdc, + 0xc3, 0xb4, 0xb0, 0x64, 0xdf, 0xff, 0xf4, 0x7e, 0xe2, 0x35, 0xee, 0x06, + 0xf6, 0x29, 0xfc, 0x11, 0x6d, 0xd1, 0x56, 0xe4, 0x5e, 0xf7, 0x21, 0x89, + 0x85, 0x86, 0xfb, 0xa4, +}; +static const unsigned char kat2429_nonce[] = {0}; +static const unsigned char kat2429_persstr[] = {0}; +static const unsigned char kat2429_entropyinreseed[] = { + 0x45, 0x97, 0xdc, 0x09, 0x5c, 0x24, 0x34, 0x92, 0x97, 0x7a, 0x6c, 0x84, + 0xd3, 0x56, 0xeb, 0x67, 0x5d, 0xd6, 0xae, 0x97, 0xbc, 0x96, 0xac, 0x8d, + 0x93, 0x93, 0x3a, 0xaf, 0x91, 0x4d, 0xe1, 0xe4, 0x23, 0xce, 0x92, 0x37, + 0x28, 0x49, 0xbc, 0xfb, +}; +static const unsigned char kat2429_addinreseed[] = { + 0x66, 0x52, 0x5b, 0x69, 0x09, 0x2c, 0x0a, 0x89, 0xbf, 0x4e, 0xe6, 0xfb, + 0xcc, 0xc3, 0x18, 0x53, 0x42, 0x10, 0x21, 0xdb, 0xfd, 0xed, 0x18, 0xdf, + 0xfc, 0xef, 0x91, 0x9c, 0xc1, 0x4f, 0x4d, 0x7f, 0xd6, 0x5c, 0x25, 0xec, + 0xd3, 0x6f, 0xea, 0xb0, +}; +static const unsigned char kat2429_addin0[] = { + 0x79, 0x84, 0x10, 0x30, 0xcf, 0x70, 0x46, 0x8a, 0x49, 0x1e, 0x44, 0x63, + 0xd7, 0x14, 0x22, 0x67, 0x81, 0xa2, 0x7a, 0x26, 0x35, 0xa4, 0x9a, 0x29, + 0x38, 0x6d, 0xd6, 0xdb, 0xd3, 0x6c, 0x9a, 0x5d, 0x82, 0xf0, 0x47, 0x27, + 0x0b, 0xff, 0x29, 0xc1, +}; +static const unsigned char kat2429_addin1[] = { + 0xac, 0x63, 0xf1, 0x7c, 0x8c, 0x46, 0xe0, 0x99, 0x6d, 0xc6, 0x96, 0x16, + 0x1c, 0x35, 0x9d, 0x40, 0x52, 0x32, 0x07, 0x77, 0xfc, 0x7b, 0xae, 0x0a, + 0xfb, 0x45, 0x6b, 0xcf, 0x9c, 0x8d, 0xba, 0xd6, 0xab, 0x10, 0xd4, 0x09, + 0x48, 0xf7, 0xcc, 0xf8, +}; +static const unsigned char kat2429_retbits[] = { + 0xbf, 0xaf, 0x22, 0x73, 0xf8, 0x29, 0x61, 0xa9, 0x20, 0x51, 0x4c, 0xda, + 0x2d, 0x48, 0x6c, 0x9d, 0xed, 0x31, 0x28, 0x78, 0xcf, 0x8a, 0x5c, 0x7c, + 0x8d, 0x65, 0x39, 0xf3, 0x34, 0x15, 0xa0, 0xa0, 0x2a, 0xa7, 0x90, 0x7c, + 0x35, 0xa5, 0x76, 0x28, 0x76, 0x5b, 0x46, 0xe1, 0x4b, 0xaf, 0xbe, 0xf2, + 0xfc, 0xb3, 0x04, 0x76, 0xe1, 0x61, 0xe1, 0xef, 0xa8, 0x7f, 0x4c, 0x5d, + 0x7f, 0xee, 0x66, 0x75, +}; +static const struct drbg_kat_pr_false kat2429_t = { + 13, kat2429_entropyin, kat2429_nonce, kat2429_persstr, + kat2429_entropyinreseed, kat2429_addinreseed, kat2429_addin0, + kat2429_addin1, kat2429_retbits +}; +static const struct drbg_kat kat2429 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2429_t +}; + +static const unsigned char kat2430_entropyin[] = { + 0x15, 0xcf, 0xa0, 0xf5, 0x6d, 0x67, 0x0d, 0x19, 0x97, 0x9d, 0xd5, 0x62, + 0xf9, 0xf5, 0x3d, 0x6f, 0xa2, 0x48, 0x19, 0x82, 0x69, 0x47, 0x50, 0x02, + 0xdd, 0x9e, 0x6b, 0xb5, 0xc3, 0x05, 0xbf, 0x65, 0x02, 0x26, 0x09, 0x30, + 0x32, 0xe0, 0xe0, 0xac, +}; +static const unsigned char kat2430_nonce[] = {0}; +static const unsigned char kat2430_persstr[] = {0}; +static const unsigned char kat2430_entropyinreseed[] = { + 0x47, 0x78, 0x2a, 0xf4, 0xe2, 0x13, 0x30, 0x29, 0x32, 0xd5, 0x2b, 0x57, + 0x76, 0xee, 0x84, 0x74, 0x46, 0xbf, 0xb6, 0xda, 0xc3, 0x58, 0xda, 0xfc, + 0xda, 0xde, 0xbf, 0xf1, 0x2e, 0x01, 0x4e, 0x01, 0xd5, 0xc1, 0x8d, 0x5c, + 0xf2, 0xd4, 0x2b, 0x11, +}; +static const unsigned char kat2430_addinreseed[] = { + 0xf6, 0x9d, 0x8d, 0xa6, 0x8b, 0xb7, 0xc1, 0x18, 0xaa, 0xb8, 0xa2, 0x78, + 0x67, 0xa0, 0x59, 0x1f, 0x7c, 0x39, 0x73, 0x55, 0x0d, 0x3b, 0xec, 0x19, + 0x09, 0x9d, 0x46, 0xd3, 0xab, 0xc3, 0x0a, 0x30, 0x9b, 0x40, 0x5e, 0x51, + 0xa9, 0x2d, 0x1c, 0x2a, +}; +static const unsigned char kat2430_addin0[] = { + 0xa4, 0x91, 0xfa, 0x45, 0xd1, 0x61, 0xef, 0xa7, 0x1c, 0xcd, 0xb4, 0x05, + 0xd6, 0xef, 0x31, 0x53, 0x70, 0x0b, 0x28, 0x96, 0x65, 0x82, 0xe1, 0x05, + 0x2c, 0xea, 0x99, 0x22, 0x18, 0xe5, 0xc0, 0x61, 0xd7, 0xdd, 0xb0, 0x83, + 0xf7, 0xea, 0xa1, 0x16, +}; +static const unsigned char kat2430_addin1[] = { + 0x4a, 0x0c, 0xd5, 0x2d, 0x00, 0x50, 0x56, 0xdf, 0x60, 0x80, 0x3f, 0xb3, + 0x53, 0x72, 0x8f, 0x3b, 0x3f, 0xd2, 0x79, 0x64, 0xe5, 0xc9, 0x69, 0x65, + 0xac, 0x47, 0x2f, 0xf8, 0xbb, 0x4d, 0xed, 0xc4, 0xdd, 0x7d, 0x1c, 0xa0, + 0x4b, 0x12, 0x4f, 0x0a, +}; +static const unsigned char kat2430_retbits[] = { + 0x0f, 0x78, 0xe4, 0x5b, 0xe3, 0x8a, 0x6a, 0x46, 0xc2, 0x91, 0x44, 0x49, + 0xbe, 0xb9, 0xdf, 0x52, 0x39, 0x40, 0x67, 0xb7, 0x20, 0xf3, 0x90, 0x22, + 0x5f, 0x93, 0x0c, 0x33, 0x13, 0x91, 0x6f, 0x00, 0x29, 0x3c, 0x7f, 0x7f, + 0x17, 0x3c, 0xd8, 0x9d, 0x2c, 0x30, 0xc7, 0x2b, 0xc0, 0x74, 0x82, 0xf0, + 0x66, 0x70, 0x8b, 0xda, 0x7a, 0x29, 0xaf, 0x42, 0x04, 0x90, 0x82, 0x1c, + 0x98, 0xc9, 0x95, 0xf4, +}; +static const struct drbg_kat_pr_false kat2430_t = { + 14, kat2430_entropyin, kat2430_nonce, kat2430_persstr, + kat2430_entropyinreseed, kat2430_addinreseed, kat2430_addin0, + kat2430_addin1, kat2430_retbits +}; +static const struct drbg_kat kat2430 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2430_t +}; + +static const unsigned char kat2431_entropyin[] = { + 0xe0, 0xe0, 0x3d, 0x4a, 0x9e, 0x4d, 0xe3, 0x62, 0xe6, 0xbb, 0x9b, 0xa6, + 0x35, 0xb8, 0x47, 0x91, 0x2a, 0x3f, 0x9e, 0x1d, 0x83, 0xb4, 0x36, 0x3f, + 0xc2, 0x58, 0xcd, 0xea, 0x29, 0x28, 0xa8, 0x78, 0x23, 0x18, 0x6f, 0x1c, + 0x47, 0xc4, 0x17, 0x5f, +}; +static const unsigned char kat2431_nonce[] = {0}; +static const unsigned char kat2431_persstr[] = { + 0x2e, 0xca, 0x97, 0x47, 0x8d, 0x60, 0x6b, 0x0b, 0xca, 0x56, 0xf0, 0x55, + 0xa1, 0xe8, 0x39, 0x4b, 0x44, 0xf5, 0xe3, 0x02, 0x8d, 0xa5, 0x9a, 0x39, + 0x00, 0xd5, 0xd7, 0xbd, 0x34, 0x1b, 0x06, 0x21, 0xb5, 0xf6, 0xd2, 0x30, + 0x9e, 0x36, 0xb4, 0xae, +}; +static const unsigned char kat2431_entropyinreseed[] = { + 0x66, 0xaa, 0x3d, 0xb4, 0xbe, 0xa8, 0xf2, 0xe1, 0xb2, 0x46, 0x97, 0x51, + 0x57, 0x8f, 0x24, 0xf1, 0xb4, 0xd0, 0xdf, 0x97, 0x1c, 0xf2, 0x28, 0x17, + 0x12, 0x14, 0x98, 0x12, 0xc2, 0x0e, 0x80, 0x4b, 0x90, 0xf3, 0xaa, 0xc1, + 0x2d, 0x7c, 0x98, 0x32, +}; +static const unsigned char kat2431_addinreseed[] = {0}; +static const unsigned char kat2431_addin0[] = {0}; +static const unsigned char kat2431_addin1[] = {0}; +static const unsigned char kat2431_retbits[] = { + 0x0e, 0x02, 0xf3, 0x44, 0xb1, 0x15, 0x9c, 0xcd, 0x77, 0x95, 0x97, 0x4e, + 0x7b, 0xb9, 0xdf, 0x9e, 0x8c, 0xc3, 0x81, 0xa1, 0x30, 0xb9, 0x8b, 0x43, + 0x46, 0x22, 0x85, 0xfe, 0x3e, 0xd8, 0x58, 0x78, 0x11, 0xab, 0xde, 0xf4, + 0x71, 0xbb, 0xcf, 0xe8, 0x30, 0xe5, 0x16, 0xb7, 0x8f, 0x78, 0x1a, 0x05, + 0xb5, 0x2e, 0x44, 0xd5, 0x41, 0x22, 0x77, 0x50, 0x84, 0x17, 0x0f, 0xf6, + 0xd8, 0x06, 0x27, 0xe9, +}; +static const struct drbg_kat_pr_false kat2431_t = { + 0, kat2431_entropyin, kat2431_nonce, kat2431_persstr, + kat2431_entropyinreseed, kat2431_addinreseed, kat2431_addin0, + kat2431_addin1, kat2431_retbits +}; +static const struct drbg_kat kat2431 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2431_t +}; + +static const unsigned char kat2432_entropyin[] = { + 0x7a, 0x6c, 0x5d, 0x42, 0x8c, 0x1f, 0x0a, 0xd5, 0x7a, 0x82, 0xfd, 0xb8, + 0xe9, 0xfd, 0x39, 0x5c, 0x84, 0x4a, 0x8b, 0xe5, 0x6d, 0x55, 0x42, 0xe9, + 0x17, 0x10, 0x17, 0xf0, 0x72, 0x8f, 0xcb, 0x0c, 0x15, 0xc0, 0xd9, 0x92, + 0x1a, 0x63, 0x88, 0x42, +}; +static const unsigned char kat2432_nonce[] = {0}; +static const unsigned char kat2432_persstr[] = { + 0x33, 0x38, 0x90, 0x56, 0x63, 0x7f, 0xfb, 0xaf, 0x97, 0xf1, 0x16, 0x1c, + 0x8d, 0xbc, 0x33, 0xe3, 0x8a, 0x5c, 0xc5, 0x23, 0x3c, 0x79, 0x8f, 0x35, + 0x8e, 0xdb, 0x76, 0xcd, 0xa0, 0x8b, 0x99, 0x4e, 0x70, 0xce, 0x95, 0x95, + 0x50, 0x85, 0xe0, 0xb4, +}; +static const unsigned char kat2432_entropyinreseed[] = { + 0xb6, 0xea, 0x69, 0xb1, 0x1d, 0xe0, 0x86, 0x00, 0x31, 0x2b, 0xab, 0xe8, + 0x84, 0x57, 0xc4, 0x4b, 0xcc, 0x6e, 0xcb, 0x5a, 0x56, 0xf3, 0xe2, 0x31, + 0x68, 0xdb, 0x00, 0x89, 0xed, 0x2b, 0x04, 0x7a, 0x53, 0x37, 0x88, 0x31, + 0xf4, 0x77, 0x71, 0xef, +}; +static const unsigned char kat2432_addinreseed[] = {0}; +static const unsigned char kat2432_addin0[] = {0}; +static const unsigned char kat2432_addin1[] = {0}; +static const unsigned char kat2432_retbits[] = { + 0xd1, 0xa2, 0x75, 0x21, 0x17, 0x01, 0x71, 0x93, 0x04, 0xe4, 0xa6, 0x5e, + 0x40, 0x91, 0xb1, 0xf3, 0xff, 0x96, 0x96, 0xcc, 0x86, 0x3c, 0x7a, 0xa9, + 0x6d, 0x34, 0x0c, 0x62, 0x76, 0x5b, 0x7a, 0x22, 0x45, 0xc1, 0x9a, 0x12, + 0x0c, 0x98, 0x8d, 0x40, 0x68, 0x40, 0xc0, 0x83, 0x92, 0x74, 0xd8, 0x9a, + 0xb8, 0xd6, 0x82, 0x0f, 0x85, 0xe9, 0xb3, 0xb4, 0xdc, 0xb9, 0x7d, 0x28, + 0xeb, 0x58, 0x95, 0x93, +}; +static const struct drbg_kat_pr_false kat2432_t = { + 1, kat2432_entropyin, kat2432_nonce, kat2432_persstr, + kat2432_entropyinreseed, kat2432_addinreseed, kat2432_addin0, + kat2432_addin1, kat2432_retbits +}; +static const struct drbg_kat kat2432 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2432_t +}; + +static const unsigned char kat2433_entropyin[] = { + 0xc7, 0x54, 0x7c, 0xd2, 0x18, 0x0f, 0x8a, 0xbf, 0x45, 0x52, 0x9a, 0xef, + 0x85, 0x7b, 0x48, 0xf5, 0x94, 0x5c, 0x93, 0xed, 0xd9, 0xc1, 0xb3, 0xad, + 0x11, 0xf3, 0xca, 0x39, 0x05, 0x1a, 0x40, 0x1a, 0xb1, 0xdc, 0xc2, 0xde, + 0x69, 0xb9, 0x9f, 0xb2, +}; +static const unsigned char kat2433_nonce[] = {0}; +static const unsigned char kat2433_persstr[] = { + 0x73, 0x55, 0x7f, 0xb6, 0xe0, 0xbb, 0xe7, 0x8a, 0x02, 0x8e, 0x81, 0x24, + 0x98, 0x92, 0x4e, 0x52, 0x01, 0x37, 0x62, 0x4f, 0x58, 0xfb, 0x2a, 0xd2, + 0x96, 0xb7, 0x14, 0x50, 0xd5, 0x6a, 0x76, 0x0c, 0xae, 0x67, 0x46, 0x16, + 0x2f, 0x2a, 0x64, 0xb3, +}; +static const unsigned char kat2433_entropyinreseed[] = { + 0x80, 0x12, 0x2c, 0x1f, 0x55, 0x52, 0x94, 0x9f, 0x19, 0x7c, 0xd9, 0x2b, + 0x8a, 0xf0, 0x57, 0x9a, 0x73, 0xf7, 0xd5, 0xcc, 0x1e, 0xaa, 0xc9, 0x7a, + 0xcb, 0xd8, 0xfb, 0xf2, 0x8d, 0xf1, 0x2f, 0x10, 0xa9, 0x15, 0x46, 0xa2, + 0xc3, 0xfe, 0x8f, 0x7a, +}; +static const unsigned char kat2433_addinreseed[] = {0}; +static const unsigned char kat2433_addin0[] = {0}; +static const unsigned char kat2433_addin1[] = {0}; +static const unsigned char kat2433_retbits[] = { + 0x8e, 0x68, 0x0e, 0x9f, 0xe7, 0x5f, 0x83, 0xc1, 0x1d, 0x40, 0x30, 0x2b, + 0x96, 0x57, 0x27, 0xb3, 0x71, 0x4c, 0x8f, 0x0e, 0xe1, 0xa2, 0x2c, 0xae, + 0x74, 0x14, 0xeb, 0x05, 0x36, 0x31, 0xa7, 0x70, 0x9b, 0x3b, 0xe2, 0xf6, + 0xac, 0xe6, 0x23, 0x45, 0x4a, 0x44, 0x99, 0x86, 0x7a, 0x3d, 0x86, 0xd3, + 0x20, 0x9a, 0x3c, 0x2a, 0x12, 0x8e, 0xa4, 0x85, 0x1c, 0xb0, 0x81, 0x67, + 0x74, 0xdc, 0x15, 0x8e, +}; +static const struct drbg_kat_pr_false kat2433_t = { + 2, kat2433_entropyin, kat2433_nonce, kat2433_persstr, + kat2433_entropyinreseed, kat2433_addinreseed, kat2433_addin0, + kat2433_addin1, kat2433_retbits +}; +static const struct drbg_kat kat2433 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2433_t +}; + +static const unsigned char kat2434_entropyin[] = { + 0xe6, 0x42, 0x8c, 0x4d, 0xc3, 0xd9, 0xa5, 0xf5, 0xa2, 0xbb, 0x9a, 0x74, + 0x9f, 0x14, 0xcf, 0x57, 0x3d, 0xa8, 0x05, 0x83, 0xaf, 0x8b, 0x9a, 0xa1, + 0x4a, 0x78, 0x83, 0x98, 0x8c, 0x9f, 0x20, 0x18, 0xa3, 0xeb, 0x9e, 0x3d, + 0xed, 0x91, 0xa0, 0x22, +}; +static const unsigned char kat2434_nonce[] = {0}; +static const unsigned char kat2434_persstr[] = { + 0x9e, 0x5c, 0x06, 0xb5, 0xce, 0x45, 0xcd, 0xa9, 0xf2, 0xb2, 0xa7, 0x97, + 0x75, 0x56, 0xe6, 0xb3, 0x9f, 0x0c, 0xed, 0x58, 0xce, 0x6c, 0x28, 0xd8, + 0xd9, 0x9d, 0xba, 0x45, 0x83, 0xc3, 0x5d, 0x78, 0x37, 0x1f, 0xcf, 0x60, + 0x85, 0x70, 0x35, 0xe9, +}; +static const unsigned char kat2434_entropyinreseed[] = { + 0xcb, 0x6a, 0xf3, 0x4e, 0x70, 0xb3, 0x80, 0xe0, 0x5e, 0xb4, 0x39, 0xc1, + 0x2a, 0x73, 0x3c, 0x00, 0x70, 0xf1, 0x79, 0x71, 0x81, 0x6f, 0xfd, 0x2c, + 0x95, 0x9d, 0x9d, 0x37, 0x6c, 0x4b, 0x49, 0x38, 0x27, 0xcf, 0xda, 0x84, + 0xd4, 0xbe, 0xe4, 0xd4, +}; +static const unsigned char kat2434_addinreseed[] = {0}; +static const unsigned char kat2434_addin0[] = {0}; +static const unsigned char kat2434_addin1[] = {0}; +static const unsigned char kat2434_retbits[] = { + 0x5d, 0xf4, 0x40, 0xba, 0x57, 0x8f, 0x1e, 0xaa, 0x1e, 0x91, 0xd0, 0x48, + 0x26, 0xc3, 0x3e, 0xcd, 0x33, 0xd4, 0xf6, 0x95, 0x5d, 0x87, 0x09, 0x29, + 0x01, 0x69, 0x8d, 0x98, 0x72, 0xfc, 0xc2, 0xf4, 0x97, 0x9c, 0xaa, 0xd3, + 0x6b, 0x2d, 0x5f, 0x04, 0xcf, 0x18, 0xe0, 0xd1, 0xa4, 0x27, 0x49, 0xd2, + 0xce, 0xdd, 0xb5, 0x75, 0xb0, 0x08, 0xdd, 0xd9, 0xc1, 0x9e, 0xab, 0x86, + 0xe0, 0xd6, 0x99, 0x23, +}; +static const struct drbg_kat_pr_false kat2434_t = { + 3, kat2434_entropyin, kat2434_nonce, kat2434_persstr, + kat2434_entropyinreseed, kat2434_addinreseed, kat2434_addin0, + kat2434_addin1, kat2434_retbits +}; +static const struct drbg_kat kat2434 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2434_t +}; + +static const unsigned char kat2435_entropyin[] = { + 0xfe, 0x8a, 0x4e, 0x18, 0xb6, 0xe8, 0xa5, 0x01, 0xc6, 0x1b, 0xa8, 0xcc, + 0x5d, 0xc0, 0xc5, 0x61, 0xeb, 0xba, 0x8e, 0x7f, 0x91, 0x5b, 0x20, 0x42, + 0x06, 0x0e, 0xd5, 0xf6, 0x13, 0x86, 0x89, 0x4d, 0xef, 0x33, 0x84, 0xd6, + 0xb9, 0x36, 0x9d, 0x9a, +}; +static const unsigned char kat2435_nonce[] = {0}; +static const unsigned char kat2435_persstr[] = { + 0x51, 0x13, 0x95, 0x16, 0x73, 0x5a, 0x78, 0x77, 0xd0, 0x0e, 0x87, 0x4a, + 0x41, 0xb7, 0xef, 0x6a, 0xee, 0x8a, 0xd5, 0x50, 0xc9, 0xd3, 0xad, 0xef, + 0xdf, 0xc6, 0x0c, 0x47, 0xea, 0xb2, 0x7f, 0x3e, 0x6c, 0xbf, 0x9f, 0x25, + 0x38, 0x05, 0xb9, 0x34, +}; +static const unsigned char kat2435_entropyinreseed[] = { + 0xe2, 0x09, 0x2c, 0xba, 0x77, 0xd1, 0x08, 0xdf, 0x45, 0xdd, 0x92, 0x1f, + 0x6b, 0x29, 0x4f, 0x88, 0xcd, 0x25, 0xfe, 0xb7, 0x06, 0x62, 0x45, 0x1a, + 0xa7, 0xc0, 0x1b, 0x76, 0x25, 0xb2, 0x95, 0x60, 0xb2, 0x39, 0xa9, 0xad, + 0x6c, 0xfc, 0xd0, 0x82, +}; +static const unsigned char kat2435_addinreseed[] = {0}; +static const unsigned char kat2435_addin0[] = {0}; +static const unsigned char kat2435_addin1[] = {0}; +static const unsigned char kat2435_retbits[] = { + 0xcd, 0xdb, 0xfe, 0x20, 0x9b, 0xe6, 0x2b, 0x2f, 0xab, 0x1e, 0x79, 0x2f, + 0x50, 0x71, 0xcf, 0xda, 0xf6, 0xc9, 0xb5, 0x49, 0x1d, 0xb2, 0xaf, 0xbe, + 0x97, 0x10, 0xb7, 0x40, 0x6d, 0x64, 0x99, 0x60, 0xf4, 0x1e, 0xe3, 0x85, + 0xd6, 0x5f, 0x50, 0xe7, 0x6a, 0x40, 0x64, 0x4f, 0x66, 0xbe, 0xfb, 0xa8, + 0x83, 0x5c, 0x75, 0xbb, 0xe3, 0x5c, 0x9c, 0xa7, 0xa7, 0x43, 0x8c, 0xf3, + 0x6a, 0x0c, 0x74, 0x00, +}; +static const struct drbg_kat_pr_false kat2435_t = { + 4, kat2435_entropyin, kat2435_nonce, kat2435_persstr, + kat2435_entropyinreseed, kat2435_addinreseed, kat2435_addin0, + kat2435_addin1, kat2435_retbits +}; +static const struct drbg_kat kat2435 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2435_t +}; + +static const unsigned char kat2436_entropyin[] = { + 0xbf, 0x58, 0x5e, 0xfc, 0xf2, 0x28, 0x5a, 0x1a, 0x4f, 0x29, 0xd5, 0x4a, + 0x78, 0xba, 0xb1, 0x35, 0xfb, 0x84, 0xfd, 0x71, 0x6d, 0x4e, 0x76, 0x86, + 0x3a, 0x9b, 0x01, 0x59, 0x2c, 0x89, 0x08, 0xe3, 0x6d, 0x28, 0xf2, 0x8c, + 0xfa, 0x5f, 0x02, 0xe1, +}; +static const unsigned char kat2436_nonce[] = {0}; +static const unsigned char kat2436_persstr[] = { + 0xb3, 0xf0, 0x8b, 0xb0, 0xec, 0x10, 0x06, 0xa0, 0xf9, 0x4b, 0x2c, 0x49, + 0xf2, 0xcf, 0x02, 0x09, 0x73, 0x32, 0x4c, 0x6d, 0xb4, 0xb0, 0xa2, 0x83, + 0xc2, 0xa3, 0xed, 0x39, 0xb9, 0x2e, 0x5f, 0x81, 0x74, 0x3b, 0x77, 0x8c, + 0x52, 0xbf, 0x51, 0xbc, +}; +static const unsigned char kat2436_entropyinreseed[] = { + 0xab, 0xb4, 0x37, 0xfb, 0x42, 0x6c, 0x7d, 0x00, 0xdc, 0x80, 0x2c, 0x1a, + 0x23, 0xb5, 0xa3, 0xf4, 0x1d, 0x0f, 0xd2, 0x2a, 0x98, 0xd3, 0x29, 0xd9, + 0x59, 0xc4, 0xfb, 0x20, 0x5a, 0xb9, 0x8e, 0x40, 0xa8, 0x13, 0x49, 0x7e, + 0xea, 0xa5, 0x28, 0x5e, +}; +static const unsigned char kat2436_addinreseed[] = {0}; +static const unsigned char kat2436_addin0[] = {0}; +static const unsigned char kat2436_addin1[] = {0}; +static const unsigned char kat2436_retbits[] = { + 0xfc, 0xa0, 0x7b, 0xf5, 0xd7, 0x2d, 0x19, 0xe4, 0xab, 0x99, 0xae, 0x02, + 0x03, 0x11, 0x0a, 0x87, 0x1a, 0xf2, 0x79, 0x09, 0xf4, 0x41, 0xd3, 0xe8, + 0x21, 0xd2, 0xdd, 0x8e, 0x57, 0x84, 0x6b, 0x99, 0x3b, 0x35, 0x5c, 0x41, + 0x9d, 0x9c, 0x67, 0x26, 0x3c, 0xa0, 0x7f, 0xd3, 0xb0, 0xa9, 0x8f, 0x68, + 0x17, 0x80, 0x18, 0x73, 0x7e, 0xc2, 0x5d, 0xb1, 0xa3, 0xe7, 0x41, 0xe9, + 0xe9, 0x30, 0x60, 0x6f, +}; +static const struct drbg_kat_pr_false kat2436_t = { + 5, kat2436_entropyin, kat2436_nonce, kat2436_persstr, + kat2436_entropyinreseed, kat2436_addinreseed, kat2436_addin0, + kat2436_addin1, kat2436_retbits +}; +static const struct drbg_kat kat2436 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2436_t +}; + +static const unsigned char kat2437_entropyin[] = { + 0x2e, 0xa3, 0xaf, 0x0f, 0x4b, 0xa3, 0x13, 0xd1, 0xb6, 0xec, 0x7b, 0xae, + 0x3c, 0x4c, 0xa7, 0xba, 0x8d, 0x5f, 0x2e, 0x3f, 0x90, 0xff, 0x10, 0x14, + 0xc9, 0xad, 0x8a, 0x12, 0x25, 0x79, 0x46, 0xc7, 0x99, 0x4c, 0xad, 0x9e, + 0xbb, 0xa6, 0xe0, 0xa3, +}; +static const unsigned char kat2437_nonce[] = {0}; +static const unsigned char kat2437_persstr[] = { + 0xcf, 0xad, 0xd1, 0xab, 0x11, 0x19, 0xec, 0x7d, 0x6e, 0xcd, 0xe0, 0xa3, + 0xa0, 0x06, 0xce, 0xa0, 0x49, 0xb7, 0xd0, 0xff, 0x16, 0x8d, 0x75, 0x44, + 0xe0, 0xb9, 0x2c, 0xb9, 0x13, 0x19, 0x37, 0xb1, 0xc6, 0xcd, 0x54, 0x8c, + 0xaa, 0xa3, 0xd8, 0xeb, +}; +static const unsigned char kat2437_entropyinreseed[] = { + 0x85, 0x60, 0x15, 0x45, 0xda, 0x1d, 0xf4, 0x45, 0x7b, 0x3e, 0x94, 0x71, + 0x10, 0x98, 0xc4, 0xfd, 0xed, 0xc9, 0x92, 0xc2, 0x75, 0xa8, 0x34, 0x9c, + 0x67, 0xc2, 0x0a, 0xee, 0x9f, 0x61, 0x76, 0x2e, 0x38, 0xbc, 0x97, 0x00, + 0x1e, 0x0e, 0x3c, 0xe5, +}; +static const unsigned char kat2437_addinreseed[] = {0}; +static const unsigned char kat2437_addin0[] = {0}; +static const unsigned char kat2437_addin1[] = {0}; +static const unsigned char kat2437_retbits[] = { + 0xdb, 0x70, 0x72, 0xfb, 0x58, 0x7b, 0x7c, 0xf0, 0xa6, 0x48, 0x3e, 0xc9, + 0xe8, 0x0c, 0x6d, 0x6c, 0x82, 0x36, 0xb2, 0x73, 0x33, 0x20, 0x4f, 0xba, + 0x1c, 0x7b, 0x6f, 0x39, 0xc8, 0x38, 0x7d, 0x73, 0x31, 0xa5, 0x47, 0xa0, + 0x00, 0x98, 0xb9, 0x6d, 0x4c, 0x57, 0x8f, 0xb2, 0xdb, 0x25, 0x43, 0x9f, + 0xd2, 0x62, 0xbc, 0x28, 0x00, 0xb8, 0x4a, 0x80, 0x4e, 0x4a, 0xf8, 0x1a, + 0x05, 0x65, 0x11, 0xea, +}; +static const struct drbg_kat_pr_false kat2437_t = { + 6, kat2437_entropyin, kat2437_nonce, kat2437_persstr, + kat2437_entropyinreseed, kat2437_addinreseed, kat2437_addin0, + kat2437_addin1, kat2437_retbits +}; +static const struct drbg_kat kat2437 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2437_t +}; + +static const unsigned char kat2438_entropyin[] = { + 0xa4, 0x85, 0x6d, 0x1f, 0xd4, 0x52, 0x63, 0x3b, 0xd3, 0xc3, 0x4b, 0x9b, + 0xcb, 0x0d, 0x6b, 0x87, 0x28, 0x9a, 0xe7, 0x37, 0x76, 0x70, 0xcd, 0x70, + 0xc0, 0x73, 0x9f, 0x4e, 0x33, 0xe8, 0xe1, 0xd5, 0x5b, 0x5d, 0x3f, 0x5d, + 0x8e, 0x1a, 0x25, 0xd9, +}; +static const unsigned char kat2438_nonce[] = {0}; +static const unsigned char kat2438_persstr[] = { + 0xbb, 0xfa, 0xbe, 0xbe, 0xc8, 0x95, 0xac, 0x0b, 0x3b, 0x0c, 0x23, 0xfe, + 0x2b, 0x21, 0x52, 0x5f, 0x14, 0x0c, 0x26, 0x3a, 0xf5, 0x4b, 0xa6, 0x74, + 0x82, 0xba, 0x3b, 0x20, 0xc7, 0x7e, 0xc1, 0x4a, 0x8e, 0x58, 0x70, 0x13, + 0x1e, 0xd3, 0x95, 0x35, +}; +static const unsigned char kat2438_entropyinreseed[] = { + 0x94, 0xea, 0x81, 0xc8, 0xa7, 0x62, 0x3a, 0x7b, 0xc2, 0x0f, 0x9d, 0x57, + 0xc6, 0xf5, 0xa4, 0x14, 0xe3, 0xac, 0x58, 0x8b, 0xcf, 0x1b, 0xa9, 0xdc, + 0x48, 0x43, 0x14, 0xfd, 0xa7, 0x8b, 0x23, 0xb1, 0x92, 0xbc, 0x2e, 0x82, + 0x5f, 0xdb, 0xca, 0xdd, +}; +static const unsigned char kat2438_addinreseed[] = {0}; +static const unsigned char kat2438_addin0[] = {0}; +static const unsigned char kat2438_addin1[] = {0}; +static const unsigned char kat2438_retbits[] = { + 0x0c, 0x87, 0xb0, 0x59, 0x08, 0x83, 0x3c, 0xfa, 0xe5, 0x62, 0xdb, 0x9b, + 0xf9, 0x90, 0x75, 0xa2, 0xfb, 0xbd, 0x10, 0xae, 0xe3, 0xee, 0x18, 0xe8, + 0x70, 0x47, 0x1b, 0xfa, 0x9b, 0x48, 0xac, 0x3b, 0xd9, 0x5a, 0xcf, 0x7a, + 0xb3, 0x03, 0x7a, 0x8a, 0x7b, 0x6a, 0x69, 0x01, 0xbd, 0xcc, 0xe9, 0x97, + 0x42, 0x94, 0xb0, 0x44, 0xf2, 0xb5, 0xc6, 0x00, 0x5c, 0xde, 0xaf, 0x8a, + 0xdc, 0xdd, 0xa9, 0x6d, +}; +static const struct drbg_kat_pr_false kat2438_t = { + 7, kat2438_entropyin, kat2438_nonce, kat2438_persstr, + kat2438_entropyinreseed, kat2438_addinreseed, kat2438_addin0, + kat2438_addin1, kat2438_retbits +}; +static const struct drbg_kat kat2438 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2438_t +}; + +static const unsigned char kat2439_entropyin[] = { + 0xf0, 0x2c, 0x4a, 0xc2, 0x29, 0x27, 0x54, 0x80, 0x10, 0x0f, 0xa1, 0xb9, + 0xff, 0xc6, 0xbc, 0xf8, 0x2e, 0xeb, 0xe4, 0x6a, 0xab, 0xd8, 0x91, 0xaf, + 0x11, 0x25, 0x0e, 0x4f, 0x5f, 0x44, 0xac, 0xb2, 0xff, 0xfd, 0x9a, 0xc0, + 0x83, 0x30, 0x60, 0xb9, +}; +static const unsigned char kat2439_nonce[] = {0}; +static const unsigned char kat2439_persstr[] = { + 0x27, 0xd5, 0xd5, 0x2d, 0xa3, 0x97, 0xc0, 0x5e, 0xa3, 0x5b, 0x82, 0x32, + 0x5a, 0x6a, 0xec, 0xd8, 0x99, 0x13, 0xbd, 0x72, 0x21, 0xb3, 0x86, 0x79, + 0xb9, 0x27, 0xd4, 0x55, 0x66, 0xf4, 0xe0, 0x63, 0x3e, 0xea, 0xbf, 0xea, + 0x4e, 0x54, 0x09, 0xc1, +}; +static const unsigned char kat2439_entropyinreseed[] = { + 0x8c, 0x45, 0xaa, 0xb2, 0xb2, 0xfb, 0x11, 0xec, 0x21, 0x01, 0x0f, 0xd0, + 0x25, 0xb2, 0xa5, 0xac, 0x7a, 0xa4, 0xc1, 0xd6, 0xbb, 0x7e, 0xe3, 0x95, + 0x8d, 0x43, 0xb7, 0xea, 0x91, 0xa7, 0x64, 0x10, 0x23, 0x23, 0xac, 0x60, + 0xaa, 0x74, 0x6b, 0x29, +}; +static const unsigned char kat2439_addinreseed[] = {0}; +static const unsigned char kat2439_addin0[] = {0}; +static const unsigned char kat2439_addin1[] = {0}; +static const unsigned char kat2439_retbits[] = { + 0x8e, 0xc2, 0x2e, 0x31, 0x0f, 0x0b, 0xa3, 0xc5, 0xc0, 0x86, 0x23, 0xa7, + 0xd7, 0x74, 0xd7, 0x9a, 0x98, 0x8e, 0xbc, 0x51, 0x21, 0xde, 0xed, 0x7a, + 0xc5, 0xbe, 0x26, 0xd0, 0xd1, 0x44, 0x69, 0xba, 0xe2, 0x78, 0x03, 0xd6, + 0xfd, 0x0b, 0x4e, 0x31, 0x28, 0x0d, 0x16, 0x9f, 0x5e, 0x16, 0x13, 0x58, + 0x88, 0x04, 0x70, 0x26, 0xf2, 0xae, 0xa7, 0x39, 0x99, 0x2d, 0xe1, 0x71, + 0xb2, 0x17, 0xba, 0xa9, +}; +static const struct drbg_kat_pr_false kat2439_t = { + 8, kat2439_entropyin, kat2439_nonce, kat2439_persstr, + kat2439_entropyinreseed, kat2439_addinreseed, kat2439_addin0, + kat2439_addin1, kat2439_retbits +}; +static const struct drbg_kat kat2439 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2439_t +}; + +static const unsigned char kat2440_entropyin[] = { + 0x45, 0x9d, 0x35, 0xa6, 0x65, 0x91, 0x10, 0x8a, 0x83, 0xd4, 0x28, 0xad, + 0x0a, 0x6a, 0x6f, 0x66, 0x9c, 0x6e, 0x4c, 0x00, 0x6a, 0x04, 0x53, 0x65, + 0x9a, 0x7b, 0xc4, 0x93, 0xc4, 0x4a, 0x26, 0xc6, 0x6f, 0xef, 0x24, 0x0c, + 0xa1, 0x3b, 0x00, 0x9f, +}; +static const unsigned char kat2440_nonce[] = {0}; +static const unsigned char kat2440_persstr[] = { + 0x95, 0x39, 0xf4, 0x92, 0x93, 0x0d, 0x91, 0xf3, 0x94, 0x6d, 0x51, 0x79, + 0x3b, 0x9d, 0x27, 0x07, 0x72, 0x96, 0xde, 0x3e, 0x4c, 0x64, 0xf7, 0x43, + 0x1d, 0x60, 0x7b, 0xd1, 0x17, 0xbe, 0xca, 0x98, 0x3d, 0x34, 0x06, 0x9a, + 0xe6, 0xb7, 0x25, 0xa6, +}; +static const unsigned char kat2440_entropyinreseed[] = { + 0x2b, 0x2d, 0xfb, 0xdf, 0x49, 0xc4, 0xd7, 0x95, 0x62, 0xbb, 0xd8, 0x00, + 0xbf, 0x93, 0x61, 0x39, 0xcd, 0x22, 0xa1, 0x0e, 0x8b, 0x20, 0x7a, 0x32, + 0xa5, 0x59, 0x72, 0x11, 0x78, 0xd9, 0xa3, 0xbf, 0x16, 0xcf, 0x24, 0x93, + 0x33, 0x2f, 0xe1, 0x95, +}; +static const unsigned char kat2440_addinreseed[] = {0}; +static const unsigned char kat2440_addin0[] = {0}; +static const unsigned char kat2440_addin1[] = {0}; +static const unsigned char kat2440_retbits[] = { + 0x26, 0xb6, 0x50, 0x49, 0x5f, 0x87, 0x64, 0xe9, 0x84, 0xa5, 0x7a, 0x43, + 0xcd, 0xfe, 0x83, 0x42, 0x00, 0xa0, 0xc3, 0x83, 0x96, 0x47, 0xf7, 0xf7, + 0x3e, 0x8f, 0x90, 0xbe, 0xe6, 0x97, 0xc1, 0x17, 0xb6, 0x64, 0xfa, 0x9f, + 0x73, 0xb0, 0x49, 0x00, 0x21, 0x2b, 0xc5, 0x8e, 0x7d, 0x57, 0x4e, 0xb9, + 0x58, 0x30, 0xc4, 0x75, 0xe7, 0x75, 0xa5, 0x92, 0x6a, 0x3b, 0xeb, 0x53, + 0x78, 0x1d, 0xbd, 0x24, +}; +static const struct drbg_kat_pr_false kat2440_t = { + 9, kat2440_entropyin, kat2440_nonce, kat2440_persstr, + kat2440_entropyinreseed, kat2440_addinreseed, kat2440_addin0, + kat2440_addin1, kat2440_retbits +}; +static const struct drbg_kat kat2440 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2440_t +}; + +static const unsigned char kat2441_entropyin[] = { + 0xd1, 0xe8, 0x8f, 0xb1, 0x9a, 0xf8, 0x09, 0x0a, 0x56, 0x2b, 0x19, 0xa7, + 0xb9, 0x67, 0xae, 0x56, 0x3c, 0x00, 0x9f, 0x97, 0xbb, 0x24, 0x5e, 0xf6, + 0xcf, 0x67, 0x9b, 0x5f, 0x11, 0x5b, 0x5e, 0x2d, 0xbe, 0x7f, 0x28, 0x8d, + 0x19, 0x32, 0xa7, 0x64, +}; +static const unsigned char kat2441_nonce[] = {0}; +static const unsigned char kat2441_persstr[] = { + 0x98, 0xdc, 0xbf, 0x39, 0xc3, 0xc5, 0x8c, 0x9d, 0x1d, 0xc6, 0x16, 0xa6, + 0xd9, 0x0b, 0xa8, 0x87, 0x71, 0x0e, 0x02, 0x1a, 0x38, 0x96, 0x75, 0x67, + 0x2f, 0x79, 0x8b, 0xfd, 0x56, 0xb2, 0xf2, 0x2c, 0x47, 0xbe, 0x31, 0xfd, + 0xcc, 0x1e, 0x94, 0x42, +}; +static const unsigned char kat2441_entropyinreseed[] = { + 0x35, 0x73, 0x12, 0xab, 0x53, 0x16, 0x83, 0x86, 0x0d, 0x7a, 0x3c, 0x68, + 0x45, 0xfb, 0xed, 0xb9, 0xd4, 0x8c, 0x97, 0x70, 0xdd, 0x8c, 0x74, 0x5d, + 0xef, 0xa3, 0xed, 0xc8, 0xed, 0x52, 0x5f, 0xbf, 0xc1, 0x8b, 0x7c, 0xc2, + 0xf6, 0x4c, 0x4d, 0xab, +}; +static const unsigned char kat2441_addinreseed[] = {0}; +static const unsigned char kat2441_addin0[] = {0}; +static const unsigned char kat2441_addin1[] = {0}; +static const unsigned char kat2441_retbits[] = { + 0x49, 0x7a, 0x71, 0x03, 0x3b, 0xfd, 0x1b, 0xb3, 0x2b, 0xcc, 0xc8, 0x94, + 0xf7, 0xdd, 0x53, 0x98, 0x0f, 0x6a, 0xe4, 0x84, 0xd6, 0xc1, 0x66, 0x6d, + 0x59, 0x5b, 0x55, 0x64, 0xa9, 0xca, 0x7e, 0x51, 0x36, 0xd1, 0xb1, 0x5b, + 0x20, 0xf7, 0x63, 0x08, 0x3d, 0x51, 0x3e, 0xc8, 0x51, 0xb5, 0x18, 0x3b, + 0xca, 0x15, 0x12, 0x03, 0xc6, 0xdf, 0x41, 0x6d, 0x0a, 0x92, 0xd5, 0xe7, + 0xad, 0xd1, 0x75, 0xbd, +}; +static const struct drbg_kat_pr_false kat2441_t = { + 10, kat2441_entropyin, kat2441_nonce, kat2441_persstr, + kat2441_entropyinreseed, kat2441_addinreseed, kat2441_addin0, + kat2441_addin1, kat2441_retbits +}; +static const struct drbg_kat kat2441 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2441_t +}; + +static const unsigned char kat2442_entropyin[] = { + 0xdb, 0x37, 0x58, 0x74, 0x00, 0xe2, 0xec, 0x6c, 0x97, 0x13, 0x1a, 0xbb, + 0xca, 0x13, 0x48, 0xb9, 0xe1, 0xcd, 0x4a, 0xdb, 0xfb, 0x01, 0xbe, 0x0c, + 0x85, 0x98, 0x30, 0xf5, 0xa4, 0x75, 0x6a, 0xac, 0x16, 0x20, 0x76, 0x22, + 0x90, 0x47, 0x31, 0x6b, +}; +static const unsigned char kat2442_nonce[] = {0}; +static const unsigned char kat2442_persstr[] = { + 0x55, 0xb6, 0x84, 0x57, 0xf3, 0xcb, 0x70, 0xe2, 0x6a, 0xfa, 0xd6, 0x74, + 0xce, 0xb3, 0xf7, 0x10, 0xfc, 0xdf, 0xb1, 0x43, 0xd2, 0x37, 0x81, 0x8c, + 0xd3, 0x4c, 0x39, 0x37, 0x4f, 0xa1, 0xba, 0xd6, 0x8d, 0x53, 0xe9, 0x50, + 0x94, 0x59, 0xbf, 0x1e, +}; +static const unsigned char kat2442_entropyinreseed[] = { + 0xe1, 0x6b, 0x64, 0x16, 0xa9, 0xb5, 0x57, 0x14, 0x1b, 0xcd, 0xa2, 0x08, + 0x13, 0x5c, 0xd3, 0xff, 0x00, 0x3c, 0x1d, 0x7e, 0x0a, 0xd4, 0x49, 0x5b, + 0x41, 0x60, 0xe5, 0x87, 0x5c, 0x3e, 0x01, 0x93, 0xca, 0xea, 0x6f, 0x17, + 0x70, 0xa9, 0x3d, 0x38, +}; +static const unsigned char kat2442_addinreseed[] = {0}; +static const unsigned char kat2442_addin0[] = {0}; +static const unsigned char kat2442_addin1[] = {0}; +static const unsigned char kat2442_retbits[] = { + 0x4b, 0xe7, 0x44, 0x86, 0x29, 0x06, 0x4c, 0x37, 0xb9, 0xd2, 0x26, 0xbe, + 0xd1, 0x27, 0x95, 0x09, 0x96, 0xb6, 0x15, 0xeb, 0xec, 0x36, 0xf9, 0x8c, + 0x2d, 0x81, 0xbf, 0xd9, 0x7c, 0x2e, 0x51, 0xb6, 0x86, 0xb9, 0x8b, 0x80, + 0xf6, 0x9e, 0x80, 0x1f, 0xae, 0x6d, 0x8a, 0x6c, 0x40, 0xaa, 0xf8, 0x8e, + 0x95, 0x6d, 0x95, 0x3c, 0xea, 0x61, 0x96, 0x8d, 0x9c, 0xf8, 0x51, 0x90, + 0x84, 0x7e, 0xef, 0xd0, +}; +static const struct drbg_kat_pr_false kat2442_t = { + 11, kat2442_entropyin, kat2442_nonce, kat2442_persstr, + kat2442_entropyinreseed, kat2442_addinreseed, kat2442_addin0, + kat2442_addin1, kat2442_retbits +}; +static const struct drbg_kat kat2442 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2442_t +}; + +static const unsigned char kat2443_entropyin[] = { + 0x24, 0x12, 0xc2, 0xe2, 0xe0, 0x06, 0x4b, 0x2b, 0xb5, 0xca, 0x05, 0xc1, + 0xa1, 0x1c, 0x35, 0xef, 0xb1, 0xa5, 0x17, 0xbb, 0x00, 0x50, 0x33, 0x44, + 0x42, 0x06, 0x1e, 0xcf, 0xc4, 0xce, 0x55, 0x9e, 0xa6, 0xb5, 0xb3, 0x11, + 0x83, 0x91, 0x5f, 0xd6, +}; +static const unsigned char kat2443_nonce[] = {0}; +static const unsigned char kat2443_persstr[] = { + 0x1f, 0x29, 0x2d, 0x3c, 0xeb, 0xc2, 0x59, 0x5c, 0x65, 0x6e, 0xaf, 0x30, + 0xd4, 0x6c, 0xf4, 0x85, 0x37, 0xf8, 0xad, 0x7f, 0xd6, 0x50, 0x73, 0x26, + 0x9d, 0x3f, 0x05, 0x7d, 0x22, 0xdc, 0xcd, 0xae, 0x9e, 0xed, 0xc8, 0x2d, + 0x9b, 0x29, 0x00, 0xe5, +}; +static const unsigned char kat2443_entropyinreseed[] = { + 0x52, 0x04, 0x14, 0x66, 0x5d, 0x70, 0x42, 0x7d, 0x9a, 0x9f, 0x02, 0x6b, + 0xb4, 0x64, 0x8c, 0x52, 0xc9, 0xab, 0x3e, 0xcd, 0x31, 0x87, 0xf7, 0xd1, + 0x8f, 0xd3, 0x81, 0x32, 0x14, 0x52, 0x2b, 0x8f, 0xc8, 0x01, 0x7b, 0x18, + 0x9a, 0xeb, 0xc6, 0x94, +}; +static const unsigned char kat2443_addinreseed[] = {0}; +static const unsigned char kat2443_addin0[] = {0}; +static const unsigned char kat2443_addin1[] = {0}; +static const unsigned char kat2443_retbits[] = { + 0xff, 0x1c, 0x4c, 0x73, 0x71, 0xa6, 0x55, 0x34, 0x2f, 0x41, 0xdc, 0x4d, + 0x41, 0x7c, 0x08, 0xd6, 0xbd, 0x55, 0x6a, 0xd2, 0xf6, 0x16, 0x49, 0x28, + 0x5e, 0xc4, 0xc0, 0xc4, 0x42, 0xce, 0xcf, 0x26, 0xbc, 0xf7, 0xa0, 0x97, + 0x5a, 0x9c, 0x41, 0x30, 0x5d, 0x61, 0x8d, 0x96, 0x16, 0xf1, 0x0d, 0x1f, + 0xaf, 0x5d, 0x37, 0x9f, 0xdb, 0xfc, 0x97, 0xd8, 0xef, 0xa6, 0xce, 0xfb, + 0x5a, 0xbe, 0x7c, 0x2b, +}; +static const struct drbg_kat_pr_false kat2443_t = { + 12, kat2443_entropyin, kat2443_nonce, kat2443_persstr, + kat2443_entropyinreseed, kat2443_addinreseed, kat2443_addin0, + kat2443_addin1, kat2443_retbits +}; +static const struct drbg_kat kat2443 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2443_t +}; + +static const unsigned char kat2444_entropyin[] = { + 0xba, 0x8d, 0x35, 0x29, 0xf6, 0x90, 0xf6, 0x09, 0x84, 0x92, 0x2f, 0xca, + 0x43, 0xdd, 0x02, 0x18, 0x0d, 0xb2, 0x88, 0xd1, 0xd4, 0x5d, 0xe9, 0x38, + 0x1f, 0xa8, 0x9a, 0x3d, 0x48, 0x65, 0x96, 0x3b, 0x4f, 0xd7, 0xb8, 0xbb, + 0xc8, 0xbe, 0x8e, 0x35, +}; +static const unsigned char kat2444_nonce[] = {0}; +static const unsigned char kat2444_persstr[] = { + 0x57, 0x34, 0x8e, 0x59, 0x24, 0x4c, 0xfa, 0x19, 0x1d, 0x4e, 0x4d, 0x15, + 0x41, 0x35, 0x4e, 0x62, 0x28, 0x91, 0x01, 0xca, 0x38, 0xeb, 0xe7, 0xaa, + 0x98, 0x62, 0xca, 0xc5, 0x85, 0x8a, 0xf1, 0x25, 0xc8, 0x6c, 0xb0, 0x73, + 0x13, 0x04, 0xbc, 0x7d, +}; +static const unsigned char kat2444_entropyinreseed[] = { + 0x15, 0x15, 0xd3, 0x2a, 0x6e, 0xb7, 0xbc, 0x8e, 0xdc, 0x5e, 0x8d, 0xc8, + 0x94, 0x4d, 0x3f, 0xf4, 0x5e, 0x12, 0x42, 0x6a, 0xe0, 0xae, 0xf4, 0x23, + 0xee, 0xe5, 0xa3, 0x54, 0xf7, 0xb5, 0x39, 0xd1, 0xea, 0xc3, 0xd9, 0xfb, + 0x71, 0x83, 0x7b, 0x53, +}; +static const unsigned char kat2444_addinreseed[] = {0}; +static const unsigned char kat2444_addin0[] = {0}; +static const unsigned char kat2444_addin1[] = {0}; +static const unsigned char kat2444_retbits[] = { + 0xee, 0x7f, 0x2a, 0xcb, 0xe6, 0xa1, 0xf2, 0x76, 0xa0, 0x38, 0x51, 0x28, + 0x5d, 0x16, 0x13, 0xfa, 0x7e, 0xcb, 0xd2, 0x3f, 0x85, 0xea, 0x96, 0xe3, + 0x65, 0x00, 0x41, 0x68, 0x2f, 0x2f, 0x43, 0x76, 0x30, 0xf4, 0x17, 0x41, + 0x3d, 0xc2, 0x3f, 0x28, 0x06, 0xf4, 0x8e, 0xe4, 0x23, 0x65, 0xf4, 0x6f, + 0xb1, 0xcb, 0xba, 0x5c, 0x95, 0x34, 0x2c, 0x86, 0x49, 0x89, 0x7d, 0xc3, + 0xc8, 0x81, 0xcf, 0x20, +}; +static const struct drbg_kat_pr_false kat2444_t = { + 13, kat2444_entropyin, kat2444_nonce, kat2444_persstr, + kat2444_entropyinreseed, kat2444_addinreseed, kat2444_addin0, + kat2444_addin1, kat2444_retbits +}; +static const struct drbg_kat kat2444 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2444_t +}; + +static const unsigned char kat2445_entropyin[] = { + 0x44, 0x70, 0x64, 0x89, 0x49, 0x94, 0x87, 0x25, 0x32, 0x3a, 0xeb, 0x56, + 0x6d, 0xf1, 0x17, 0x65, 0xa1, 0xc5, 0x92, 0x21, 0xcd, 0x8a, 0xa4, 0x46, + 0x0e, 0x53, 0x4b, 0x21, 0xd8, 0xf2, 0xf1, 0xba, 0xce, 0x6e, 0x4c, 0x8a, + 0x9a, 0x78, 0x74, 0x54, +}; +static const unsigned char kat2445_nonce[] = {0}; +static const unsigned char kat2445_persstr[] = { + 0xa3, 0x5f, 0x70, 0x6f, 0xe7, 0x8d, 0xab, 0x17, 0x9b, 0xdb, 0x83, 0x49, + 0x54, 0x08, 0x76, 0x48, 0x05, 0x17, 0x57, 0x44, 0xbc, 0x02, 0x03, 0x88, + 0xa8, 0xa6, 0x0c, 0x20, 0x1b, 0x64, 0x8c, 0xa5, 0x69, 0xb4, 0xc3, 0x19, + 0x7a, 0xe3, 0x89, 0x34, +}; +static const unsigned char kat2445_entropyinreseed[] = { + 0x4d, 0x63, 0x2e, 0xf3, 0x04, 0x82, 0xe6, 0xd5, 0x94, 0x9c, 0xf5, 0x24, + 0x07, 0xd4, 0x2c, 0xae, 0xa7, 0xcd, 0x74, 0x5e, 0x70, 0xd7, 0x6d, 0x34, + 0x49, 0x85, 0x2a, 0x7d, 0xdb, 0x3f, 0x92, 0xe1, 0x98, 0x40, 0xcd, 0x02, + 0x17, 0xe1, 0x11, 0x2f, +}; +static const unsigned char kat2445_addinreseed[] = {0}; +static const unsigned char kat2445_addin0[] = {0}; +static const unsigned char kat2445_addin1[] = {0}; +static const unsigned char kat2445_retbits[] = { + 0x33, 0x40, 0xcd, 0x5e, 0x74, 0xc5, 0x29, 0x18, 0xb3, 0x91, 0x15, 0x67, + 0x02, 0x85, 0x1b, 0x25, 0x32, 0x70, 0x72, 0xf0, 0x75, 0xe1, 0x6b, 0x8c, + 0x93, 0x78, 0x97, 0x2b, 0x08, 0x1b, 0x2c, 0xa8, 0xcf, 0xa7, 0x66, 0x5b, + 0x70, 0x52, 0xcc, 0x44, 0xf4, 0x80, 0xf0, 0xc1, 0x88, 0x34, 0x23, 0x57, + 0xcc, 0x6c, 0x8c, 0xb6, 0x16, 0xa0, 0xda, 0xde, 0xfc, 0x4e, 0x1e, 0xd4, + 0x0b, 0xa4, 0x2b, 0x0a, +}; +static const struct drbg_kat_pr_false kat2445_t = { + 14, kat2445_entropyin, kat2445_nonce, kat2445_persstr, + kat2445_entropyinreseed, kat2445_addinreseed, kat2445_addin0, + kat2445_addin1, kat2445_retbits +}; +static const struct drbg_kat kat2445 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2445_t +}; + +static const unsigned char kat2446_entropyin[] = { + 0x4b, 0x58, 0x27, 0x1b, 0x11, 0x62, 0x37, 0xee, 0xdd, 0x4e, 0x9f, 0xf9, + 0x36, 0x03, 0x82, 0xa5, 0x9f, 0x3e, 0x2a, 0x17, 0x3d, 0x86, 0x0f, 0x2b, + 0xbd, 0x8b, 0x2b, 0xac, 0xe1, 0x42, 0xb2, 0x39, 0x5c, 0x67, 0xcf, 0x5a, + 0x51, 0x3f, 0x06, 0xf3, +}; +static const unsigned char kat2446_nonce[] = {0}; +static const unsigned char kat2446_persstr[] = { + 0xcf, 0x76, 0xc1, 0x6c, 0xd5, 0xd2, 0x70, 0x70, 0x7e, 0xa9, 0xac, 0xc3, + 0x97, 0x44, 0xdb, 0x69, 0xbf, 0xac, 0x63, 0xe5, 0x66, 0x25, 0x6f, 0xd6, + 0x91, 0x7b, 0xf9, 0x81, 0x96, 0x79, 0x84, 0x0f, 0x3f, 0xea, 0x2a, 0xa5, + 0x35, 0xd8, 0xdf, 0x01, +}; +static const unsigned char kat2446_entropyinreseed[] = { + 0x18, 0x67, 0xf3, 0x71, 0xa3, 0x45, 0xee, 0xf9, 0x8b, 0x2d, 0x70, 0xfc, + 0x19, 0x60, 0x39, 0x78, 0x92, 0x64, 0x5b, 0x7b, 0x29, 0xa4, 0xea, 0xd2, + 0x52, 0xe8, 0x83, 0x5e, 0x0b, 0x60, 0x06, 0x18, 0xa9, 0xbd, 0x6f, 0xf9, + 0x97, 0x85, 0xd8, 0x90, +}; +static const unsigned char kat2446_addinreseed[] = { + 0x6d, 0x44, 0x83, 0x9a, 0xff, 0x8b, 0x71, 0x65, 0xde, 0xeb, 0xd4, 0x89, + 0xad, 0x08, 0x8e, 0xcb, 0x7d, 0xce, 0xc1, 0x1c, 0x32, 0xb1, 0xe7, 0x47, + 0xdb, 0xa8, 0xf0, 0xe8, 0xa0, 0xb8, 0x9f, 0x74, 0xa8, 0x4e, 0xa8, 0xa0, + 0x55, 0x86, 0xfe, 0x9e, +}; +static const unsigned char kat2446_addin0[] = { + 0x42, 0x24, 0x8f, 0xce, 0x09, 0x94, 0xe0, 0xe6, 0x35, 0x04, 0x20, 0x9d, + 0x62, 0x9a, 0x69, 0x43, 0xeb, 0x3e, 0x2a, 0xd5, 0x12, 0xf0, 0x3f, 0x79, + 0xcb, 0xd5, 0x10, 0x29, 0x28, 0x39, 0x2b, 0xce, 0x1c, 0xac, 0xbb, 0xa0, + 0x56, 0xac, 0x6c, 0xa9, +}; +static const unsigned char kat2446_addin1[] = { + 0xbd, 0x52, 0x9b, 0x60, 0x02, 0x73, 0x32, 0x94, 0x23, 0xa5, 0x8d, 0x6f, + 0x8a, 0x12, 0xbe, 0x0f, 0x17, 0x98, 0x9a, 0x02, 0xe7, 0x3e, 0x34, 0x7b, + 0xc7, 0xd4, 0x9d, 0x91, 0x69, 0x33, 0x7a, 0x6c, 0xff, 0x7c, 0x07, 0xe8, + 0xa8, 0x07, 0xa8, 0x0a, +}; +static const unsigned char kat2446_retbits[] = { + 0x02, 0x48, 0x6d, 0x32, 0xcd, 0x55, 0x95, 0x4f, 0x40, 0x6b, 0xa5, 0x57, + 0x05, 0xf1, 0x46, 0x0d, 0x38, 0x44, 0x39, 0x59, 0x2d, 0xed, 0xe8, 0x1a, + 0x84, 0xfd, 0xa2, 0x21, 0xfd, 0x45, 0xc0, 0xd6, 0x51, 0xd6, 0x7e, 0xc4, + 0xa8, 0x1a, 0x8b, 0x40, 0x41, 0x51, 0xa6, 0x43, 0xf3, 0x31, 0xad, 0x05, + 0x1c, 0xb0, 0x04, 0x35, 0x22, 0x89, 0xde, 0x37, 0xbc, 0xa7, 0x1e, 0x8c, + 0xc0, 0xa6, 0xae, 0xab, +}; +static const struct drbg_kat_pr_false kat2446_t = { + 0, kat2446_entropyin, kat2446_nonce, kat2446_persstr, + kat2446_entropyinreseed, kat2446_addinreseed, kat2446_addin0, + kat2446_addin1, kat2446_retbits +}; +static const struct drbg_kat kat2446 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2446_t +}; + +static const unsigned char kat2447_entropyin[] = { + 0x60, 0x2e, 0x53, 0xde, 0x42, 0x46, 0x91, 0x80, 0xc5, 0xde, 0x72, 0x2e, + 0x30, 0x0b, 0x1e, 0x59, 0xcf, 0x74, 0x0c, 0x1d, 0x06, 0xe8, 0x20, 0xa9, + 0xe8, 0x10, 0x1f, 0x01, 0x13, 0xaf, 0xa7, 0xb7, 0xd6, 0xf7, 0x64, 0xc0, + 0x18, 0x4a, 0xd9, 0xb4, +}; +static const unsigned char kat2447_nonce[] = {0}; +static const unsigned char kat2447_persstr[] = { + 0x61, 0x83, 0xd3, 0x3b, 0x2a, 0x3a, 0xb3, 0x77, 0x8e, 0x35, 0x4b, 0x83, + 0x58, 0x6e, 0xba, 0x70, 0x1b, 0x79, 0xa5, 0x58, 0x2d, 0x57, 0x9a, 0x48, + 0x15, 0xfa, 0x34, 0x78, 0x73, 0xea, 0x7f, 0x21, 0x4b, 0xe0, 0xbd, 0x23, + 0xf7, 0x76, 0x96, 0xcf, +}; +static const unsigned char kat2447_entropyinreseed[] = { + 0x44, 0xfd, 0x22, 0xd2, 0xb5, 0xae, 0x55, 0xdd, 0xf6, 0x22, 0xf0, 0xd2, + 0x3b, 0x87, 0x96, 0x7f, 0x6b, 0x60, 0xda, 0x26, 0x95, 0xd8, 0xc2, 0xdb, + 0xcc, 0xe2, 0xb3, 0x16, 0x5d, 0x40, 0x69, 0x46, 0x48, 0x0c, 0xb7, 0x0e, + 0x39, 0x21, 0x3e, 0xc1, +}; +static const unsigned char kat2447_addinreseed[] = { + 0x74, 0x9c, 0x0d, 0x83, 0x80, 0x37, 0x11, 0x9f, 0x17, 0xda, 0xa6, 0x26, + 0x05, 0xfa, 0xc1, 0x96, 0xe7, 0x72, 0x76, 0x29, 0x96, 0x0f, 0x51, 0x39, + 0x62, 0x57, 0xf9, 0x1c, 0x4e, 0xdc, 0x19, 0xe1, 0x5c, 0x4e, 0xd2, 0x99, + 0x02, 0xae, 0xef, 0x6b, +}; +static const unsigned char kat2447_addin0[] = { + 0x02, 0xa9, 0x47, 0xc1, 0x1f, 0x12, 0xf4, 0xe0, 0xd6, 0xa8, 0x2a, 0xc6, + 0x66, 0x7c, 0xd9, 0x36, 0xdd, 0xa2, 0xb4, 0x3d, 0xdb, 0x40, 0x52, 0xb6, + 0x8b, 0xa5, 0xc5, 0x17, 0xe7, 0xb3, 0x3a, 0xc2, 0x81, 0x08, 0x8a, 0x0d, + 0x6f, 0x4a, 0x22, 0xcb, +}; +static const unsigned char kat2447_addin1[] = { + 0x40, 0x01, 0x83, 0x93, 0x95, 0x9e, 0x2b, 0x80, 0x98, 0x63, 0x16, 0x27, + 0x9e, 0x7c, 0x42, 0xd4, 0xbd, 0x67, 0x5a, 0x3f, 0xc2, 0x31, 0x21, 0x8d, + 0x79, 0x5a, 0x6e, 0xa4, 0x1a, 0x46, 0xca, 0x2c, 0x2c, 0xe2, 0xef, 0x87, + 0xc9, 0x1d, 0x52, 0x82, +}; +static const unsigned char kat2447_retbits[] = { + 0xe7, 0x99, 0xf0, 0x17, 0x74, 0x01, 0x9d, 0x59, 0x2d, 0xcb, 0x8d, 0x8d, + 0xf9, 0x4e, 0xd6, 0x3c, 0xd3, 0x7e, 0x6d, 0xcb, 0x5a, 0x21, 0xf5, 0x8b, + 0xd1, 0x6a, 0x6b, 0x9a, 0x62, 0xb6, 0x7c, 0x26, 0x28, 0xb1, 0xfb, 0x95, + 0xc4, 0x0d, 0x92, 0x32, 0x12, 0x79, 0x39, 0x14, 0xa2, 0x30, 0x37, 0xa9, + 0x2c, 0xd1, 0x07, 0x8d, 0x88, 0x90, 0x7e, 0x3b, 0x77, 0x1f, 0x4d, 0xb5, + 0x43, 0xef, 0x58, 0xb3, +}; +static const struct drbg_kat_pr_false kat2447_t = { + 1, kat2447_entropyin, kat2447_nonce, kat2447_persstr, + kat2447_entropyinreseed, kat2447_addinreseed, kat2447_addin0, + kat2447_addin1, kat2447_retbits +}; +static const struct drbg_kat kat2447 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2447_t +}; + +static const unsigned char kat2448_entropyin[] = { + 0x96, 0xe0, 0x41, 0x25, 0xfc, 0xc3, 0x2a, 0xa5, 0xc5, 0xd1, 0x21, 0xe8, + 0xfb, 0x78, 0x2c, 0x0d, 0x7c, 0xbc, 0xd7, 0x76, 0x68, 0xa4, 0xc5, 0x20, + 0x5f, 0x31, 0x46, 0x4f, 0x8a, 0x69, 0x71, 0x19, 0x57, 0x59, 0xea, 0x60, + 0x89, 0xe4, 0x59, 0x98, +}; +static const unsigned char kat2448_nonce[] = {0}; +static const unsigned char kat2448_persstr[] = { + 0xf9, 0x33, 0x18, 0x07, 0xdb, 0x0b, 0xf1, 0x66, 0x87, 0x00, 0x65, 0x1b, + 0xfc, 0xa0, 0x15, 0xe7, 0x17, 0x22, 0xc4, 0x67, 0x49, 0x82, 0x44, 0xf6, + 0xd6, 0x35, 0x04, 0x0a, 0x3e, 0xf6, 0xc1, 0x16, 0x63, 0xa9, 0x46, 0x42, + 0x82, 0xe6, 0x3b, 0x17, +}; +static const unsigned char kat2448_entropyinreseed[] = { + 0x14, 0xcd, 0xe6, 0x4d, 0xd6, 0x87, 0x7b, 0x1d, 0x4e, 0xaf, 0x13, 0x47, + 0x88, 0x93, 0x56, 0x2e, 0xda, 0x08, 0x10, 0x38, 0xb4, 0x20, 0x94, 0x17, + 0x53, 0x4c, 0x17, 0x09, 0x7d, 0x7e, 0xc3, 0xb5, 0x98, 0xc6, 0xdf, 0x3b, + 0x89, 0x23, 0xbf, 0x73, +}; +static const unsigned char kat2448_addinreseed[] = { + 0x84, 0x5b, 0x98, 0x21, 0x98, 0x57, 0xf5, 0x2b, 0x99, 0xfc, 0x75, 0x19, + 0xcd, 0x9f, 0x0d, 0x9c, 0x6f, 0xb3, 0x4f, 0x39, 0x31, 0xc2, 0x04, 0xef, + 0x4f, 0x30, 0x3d, 0x90, 0x8d, 0x3f, 0x1c, 0xd3, 0x11, 0x29, 0x10, 0xd0, + 0xe1, 0xa4, 0x1c, 0xa5, +}; +static const unsigned char kat2448_addin0[] = { + 0xf2, 0x88, 0x5e, 0x8a, 0x18, 0x0e, 0x39, 0x5d, 0xf0, 0xcc, 0x77, 0x0a, + 0x83, 0x06, 0x2b, 0x96, 0x31, 0x78, 0x3a, 0x99, 0x62, 0xf3, 0x6c, 0xe0, + 0x5e, 0xf1, 0x97, 0xf9, 0x89, 0xf1, 0xaa, 0xdb, 0xe8, 0xdb, 0x54, 0x9d, + 0x9b, 0x79, 0x13, 0x40, +}; +static const unsigned char kat2448_addin1[] = { + 0xbd, 0xee, 0x38, 0xf9, 0xb3, 0x52, 0x6d, 0x82, 0x4f, 0xbb, 0x08, 0x56, + 0x20, 0x29, 0x9d, 0x5b, 0xca, 0x0c, 0x07, 0xba, 0xd4, 0x88, 0xcc, 0x8e, + 0x61, 0x36, 0xc7, 0x72, 0x3d, 0x44, 0x13, 0xe3, 0xe7, 0x38, 0xc3, 0x11, + 0xfb, 0xbb, 0x39, 0x77, +}; +static const unsigned char kat2448_retbits[] = { + 0xcf, 0x3e, 0x3d, 0xcb, 0x4c, 0x20, 0x91, 0xb3, 0xeb, 0xe7, 0xe1, 0xc0, + 0x5b, 0x83, 0x9d, 0x3a, 0x90, 0x14, 0x84, 0x1c, 0x08, 0x5b, 0x35, 0x58, + 0x92, 0x03, 0x8f, 0x7f, 0xc2, 0xbb, 0x32, 0xc6, 0x87, 0x30, 0x6c, 0xed, + 0xf0, 0x53, 0xfb, 0xae, 0xa1, 0x64, 0x29, 0x24, 0x60, 0x69, 0xbf, 0xd0, + 0xf0, 0xcd, 0xf6, 0xcc, 0xd8, 0x2c, 0xcb, 0x0f, 0x79, 0x2a, 0xcb, 0x87, + 0x75, 0xa5, 0xc6, 0x78, +}; +static const struct drbg_kat_pr_false kat2448_t = { + 2, kat2448_entropyin, kat2448_nonce, kat2448_persstr, + kat2448_entropyinreseed, kat2448_addinreseed, kat2448_addin0, + kat2448_addin1, kat2448_retbits +}; +static const struct drbg_kat kat2448 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2448_t +}; + +static const unsigned char kat2449_entropyin[] = { + 0x42, 0x3c, 0xc9, 0x8b, 0xbe, 0xc9, 0x06, 0x51, 0x6c, 0xf0, 0x77, 0x2f, + 0xf8, 0x96, 0x1e, 0xb3, 0xed, 0xd1, 0x3c, 0xa9, 0x29, 0x29, 0x5d, 0x4c, + 0xdb, 0xa3, 0x2a, 0xbb, 0xb6, 0x01, 0xa2, 0x20, 0xe0, 0xa4, 0x46, 0x0b, + 0xea, 0x6a, 0x6d, 0xff, +}; +static const unsigned char kat2449_nonce[] = {0}; +static const unsigned char kat2449_persstr[] = { + 0x08, 0xdc, 0x21, 0x52, 0xa1, 0x4c, 0x81, 0x87, 0x21, 0xe4, 0xe8, 0x3e, + 0x16, 0x85, 0xdd, 0x0c, 0x38, 0xf2, 0x33, 0xb5, 0xae, 0xdb, 0x6c, 0x69, + 0xc5, 0x74, 0xc8, 0x23, 0xbe, 0xb0, 0xec, 0x6f, 0x19, 0x2d, 0x4d, 0x99, + 0x1d, 0xe6, 0x94, 0x01, +}; +static const unsigned char kat2449_entropyinreseed[] = { + 0x44, 0x13, 0xd5, 0xae, 0x82, 0x12, 0xf0, 0xfe, 0xe0, 0xd2, 0xe6, 0xdc, + 0x99, 0x43, 0x7b, 0x54, 0x09, 0x43, 0xa9, 0xaf, 0x33, 0xad, 0x68, 0x63, + 0xba, 0xc4, 0x27, 0xec, 0xf7, 0x3d, 0xfb, 0x8f, 0x09, 0xa1, 0x00, 0x88, + 0xfa, 0x1a, 0xe1, 0x09, +}; +static const unsigned char kat2449_addinreseed[] = { + 0x5f, 0xc5, 0xfe, 0xe3, 0x50, 0x4e, 0x98, 0x34, 0xa6, 0x95, 0x94, 0x18, + 0xdb, 0x6b, 0x10, 0x66, 0x12, 0x6f, 0x86, 0xd0, 0x8e, 0xab, 0x76, 0x0f, + 0xeb, 0x12, 0xfd, 0x56, 0xaa, 0xbb, 0x79, 0x7e, 0x21, 0x25, 0xb0, 0x6a, + 0x27, 0x6a, 0x9b, 0xef, +}; +static const unsigned char kat2449_addin0[] = { + 0x48, 0x1c, 0x40, 0x7b, 0xdf, 0x31, 0x4c, 0x99, 0x1e, 0x3b, 0x37, 0x89, + 0x36, 0xf8, 0x14, 0x51, 0x20, 0xa3, 0x1d, 0xaf, 0xde, 0xe2, 0x1e, 0x1e, + 0x3a, 0xf5, 0xaa, 0x61, 0x7a, 0x9a, 0xd5, 0x59, 0xca, 0x1e, 0x5b, 0xfb, + 0xa3, 0x8b, 0x29, 0xd0, +}; +static const unsigned char kat2449_addin1[] = { + 0xa2, 0x6e, 0x6c, 0x49, 0x23, 0x54, 0xd6, 0x04, 0xdc, 0xa5, 0x37, 0x3f, + 0xf6, 0x47, 0xf2, 0x06, 0xed, 0x19, 0x07, 0x02, 0x5c, 0x03, 0x2c, 0x28, + 0xd5, 0x65, 0xc8, 0x11, 0x7d, 0xc9, 0x96, 0x55, 0x5c, 0x9c, 0x2a, 0xe8, + 0x30, 0x93, 0x86, 0x3b, +}; +static const unsigned char kat2449_retbits[] = { + 0x41, 0x26, 0x49, 0xdd, 0x98, 0x39, 0xe7, 0xc1, 0x85, 0x41, 0x56, 0xef, + 0x02, 0x96, 0xb1, 0x24, 0x52, 0x29, 0x95, 0x5f, 0xb1, 0x96, 0x02, 0x78, + 0x79, 0x0a, 0xf7, 0xf7, 0x98, 0xc7, 0xee, 0xd1, 0x71, 0xf4, 0xed, 0xc9, + 0x4c, 0x7e, 0x86, 0xab, 0xba, 0x14, 0xcf, 0x30, 0x19, 0x75, 0x51, 0x6d, + 0x7b, 0x68, 0xf6, 0x1b, 0x6e, 0xe4, 0x57, 0x9e, 0x61, 0x1b, 0xdd, 0x57, + 0xdd, 0xdb, 0x9d, 0x9c, +}; +static const struct drbg_kat_pr_false kat2449_t = { + 3, kat2449_entropyin, kat2449_nonce, kat2449_persstr, + kat2449_entropyinreseed, kat2449_addinreseed, kat2449_addin0, + kat2449_addin1, kat2449_retbits +}; +static const struct drbg_kat kat2449 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2449_t +}; + +static const unsigned char kat2450_entropyin[] = { + 0xe8, 0xfd, 0x14, 0x50, 0xe4, 0x21, 0x36, 0x7a, 0x2b, 0xfc, 0x0f, 0x36, + 0x00, 0xab, 0xc7, 0x83, 0xa1, 0x8e, 0x87, 0xb9, 0x81, 0xee, 0x98, 0x1d, + 0xa5, 0x48, 0x9f, 0x45, 0x2f, 0x31, 0x16, 0x23, 0x50, 0x53, 0x6d, 0x03, + 0xc2, 0x99, 0x9f, 0x0d, +}; +static const unsigned char kat2450_nonce[] = {0}; +static const unsigned char kat2450_persstr[] = { + 0xcf, 0xcd, 0x45, 0x14, 0x87, 0x75, 0x99, 0xe0, 0xa9, 0x8a, 0xb9, 0xf2, + 0x55, 0x82, 0xcf, 0xb5, 0xef, 0x7b, 0x31, 0xe0, 0xed, 0xe9, 0x26, 0xdd, + 0x23, 0x0c, 0x4a, 0x73, 0x85, 0x33, 0xf3, 0x8f, 0x53, 0x9f, 0xec, 0xe0, + 0x1c, 0xd8, 0xfd, 0xd5, +}; +static const unsigned char kat2450_entropyinreseed[] = { + 0x75, 0x12, 0xe4, 0xc5, 0x0c, 0xdf, 0x8d, 0xdb, 0xc7, 0x98, 0x17, 0x82, + 0x2f, 0xbb, 0x19, 0x33, 0x04, 0x61, 0xca, 0xf8, 0xe9, 0x9e, 0xf8, 0x86, + 0xc3, 0x76, 0xfc, 0x3f, 0xa0, 0x40, 0x90, 0x15, 0x9c, 0x9d, 0xc7, 0x29, + 0x5e, 0xaf, 0xd4, 0xeb, +}; +static const unsigned char kat2450_addinreseed[] = { + 0x3e, 0xe3, 0xfd, 0x20, 0x7c, 0x04, 0xc3, 0xaa, 0xf3, 0xb0, 0xd9, 0x27, + 0x77, 0xf2, 0xbb, 0xa9, 0xd9, 0xdd, 0x20, 0x08, 0x8b, 0xb6, 0x4a, 0x5e, + 0xab, 0x7b, 0xcd, 0xd4, 0x54, 0xf7, 0xc5, 0xdd, 0x14, 0xeb, 0xe9, 0x1e, + 0xbe, 0xc7, 0x5c, 0xdf, +}; +static const unsigned char kat2450_addin0[] = { + 0x92, 0x76, 0x00, 0x3a, 0x3b, 0x8c, 0x57, 0xc5, 0x69, 0xee, 0xa7, 0x3c, + 0x8f, 0x03, 0x99, 0x1f, 0x16, 0xec, 0x57, 0xb8, 0xd7, 0x4c, 0xb9, 0x07, + 0x74, 0x7e, 0x69, 0x95, 0x4d, 0x4d, 0x23, 0x3f, 0x97, 0xe1, 0x6e, 0xd8, + 0x2f, 0x52, 0x50, 0xd7, +}; +static const unsigned char kat2450_addin1[] = { + 0x34, 0xf7, 0x64, 0x89, 0xdb, 0x8f, 0xd0, 0xec, 0xc0, 0xa8, 0xc9, 0xf4, + 0x57, 0xdf, 0x0a, 0x75, 0x7f, 0xe0, 0x93, 0x4a, 0xdb, 0x1c, 0x92, 0xbb, + 0x32, 0x3f, 0xcd, 0x97, 0xf8, 0x24, 0x69, 0x83, 0xe1, 0xe0, 0x7d, 0xde, + 0x71, 0x27, 0x3e, 0x45, +}; +static const unsigned char kat2450_retbits[] = { + 0x3d, 0x3f, 0x89, 0x95, 0x4b, 0x4e, 0x81, 0x99, 0xd5, 0xbe, 0x84, 0x86, + 0x0c, 0xfb, 0x70, 0xfb, 0x8f, 0x00, 0xfb, 0x6b, 0xb9, 0x61, 0x9d, 0x27, + 0x4b, 0x9c, 0x8c, 0xa9, 0xb6, 0xc5, 0x24, 0x23, 0x5e, 0xca, 0x9c, 0x01, + 0x15, 0x28, 0x4e, 0x8b, 0xbd, 0xb3, 0x96, 0xc6, 0x38, 0x38, 0xba, 0x8e, + 0x6a, 0xf7, 0x45, 0xbb, 0x5d, 0xd1, 0xda, 0xff, 0x21, 0x45, 0x81, 0x39, + 0x80, 0x16, 0xb4, 0x13, +}; +static const struct drbg_kat_pr_false kat2450_t = { + 4, kat2450_entropyin, kat2450_nonce, kat2450_persstr, + kat2450_entropyinreseed, kat2450_addinreseed, kat2450_addin0, + kat2450_addin1, kat2450_retbits +}; +static const struct drbg_kat kat2450 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2450_t +}; + +static const unsigned char kat2451_entropyin[] = { + 0x67, 0x62, 0x8a, 0x4e, 0x76, 0x3b, 0x14, 0xee, 0x13, 0x33, 0x5e, 0x07, + 0x0e, 0xa4, 0x61, 0x13, 0x09, 0x0a, 0xba, 0xdf, 0x52, 0xa1, 0x70, 0x17, + 0xc4, 0xf9, 0xb9, 0xef, 0xf7, 0x83, 0x50, 0xd5, 0x88, 0x17, 0xcb, 0x35, + 0x3d, 0xd6, 0xa3, 0x98, +}; +static const unsigned char kat2451_nonce[] = {0}; +static const unsigned char kat2451_persstr[] = { + 0xba, 0x22, 0x3e, 0x2e, 0xb4, 0xf8, 0x0d, 0x1a, 0xff, 0x56, 0x23, 0xe1, + 0xc7, 0xa6, 0x3c, 0x9f, 0xc4, 0x7b, 0x63, 0xa2, 0xdb, 0x56, 0xa9, 0xea, + 0xaa, 0x83, 0x00, 0x7f, 0x51, 0x40, 0xf7, 0xed, 0xc8, 0x02, 0xf1, 0xf9, + 0x7c, 0x6f, 0xb5, 0x32, +}; +static const unsigned char kat2451_entropyinreseed[] = { + 0xae, 0xd4, 0x2a, 0x16, 0xe0, 0x35, 0x7c, 0x38, 0xa9, 0x34, 0x4f, 0xed, + 0x60, 0xbc, 0xac, 0x6f, 0xc0, 0xac, 0x02, 0xcc, 0xc3, 0x33, 0x6c, 0xf1, + 0x46, 0x4c, 0xda, 0x26, 0x35, 0x1a, 0x3b, 0xdf, 0x9d, 0x7c, 0x62, 0x26, + 0x62, 0x16, 0xeb, 0x44, +}; +static const unsigned char kat2451_addinreseed[] = { + 0x9d, 0x01, 0xea, 0x58, 0x50, 0x5d, 0x40, 0xb3, 0xf0, 0x3c, 0xeb, 0x40, + 0xad, 0xaa, 0x64, 0x01, 0xc9, 0x1e, 0xb0, 0xc1, 0xe3, 0xd7, 0x22, 0xef, + 0x02, 0x6c, 0xac, 0x66, 0xa0, 0x00, 0x68, 0xc9, 0xcd, 0x1b, 0xd1, 0x2f, + 0xc8, 0x6b, 0x6e, 0x7d, +}; +static const unsigned char kat2451_addin0[] = { + 0xf3, 0x7a, 0xfe, 0xe2, 0x28, 0xcc, 0xa5, 0x46, 0x9d, 0x9e, 0x77, 0x4f, + 0xf3, 0x3a, 0xb2, 0xe4, 0x77, 0x82, 0xf6, 0x5f, 0x1c, 0xb0, 0x68, 0xfe, + 0x48, 0xe1, 0xf1, 0x51, 0x9d, 0x06, 0xe0, 0x0d, 0x58, 0xf5, 0x26, 0xf7, + 0x2c, 0x22, 0xbb, 0x9d, +}; +static const unsigned char kat2451_addin1[] = { + 0xa3, 0x6c, 0xa3, 0xab, 0x10, 0xc8, 0x3d, 0x6e, 0x58, 0x9b, 0x2d, 0x94, + 0x83, 0x0a, 0x17, 0x45, 0x75, 0xca, 0x65, 0x05, 0xce, 0x46, 0xbf, 0x23, + 0xe0, 0x10, 0x22, 0x15, 0x1f, 0x9f, 0x7a, 0x35, 0x4a, 0xa5, 0xf1, 0xc0, + 0xd7, 0x6a, 0xab, 0x48, +}; +static const unsigned char kat2451_retbits[] = { + 0x3b, 0xee, 0x8d, 0xa2, 0x15, 0x71, 0x0e, 0x0b, 0x60, 0x39, 0xa7, 0x68, + 0x21, 0x2e, 0x62, 0x6d, 0xaf, 0xdd, 0x37, 0x76, 0xcf, 0x71, 0xb6, 0x85, + 0x6d, 0x6c, 0x0e, 0x54, 0x2f, 0x94, 0x2a, 0x33, 0x64, 0x86, 0xe7, 0x58, + 0x91, 0x24, 0x1e, 0x4b, 0x74, 0x1f, 0xba, 0xb2, 0x3a, 0x7b, 0xbe, 0x57, + 0x08, 0x04, 0x1b, 0xb9, 0x75, 0x08, 0xec, 0x4e, 0x60, 0xea, 0x3e, 0x2b, + 0x74, 0x63, 0xb9, 0xd2, +}; +static const struct drbg_kat_pr_false kat2451_t = { + 5, kat2451_entropyin, kat2451_nonce, kat2451_persstr, + kat2451_entropyinreseed, kat2451_addinreseed, kat2451_addin0, + kat2451_addin1, kat2451_retbits +}; +static const struct drbg_kat kat2451 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2451_t +}; + +static const unsigned char kat2452_entropyin[] = { + 0x48, 0xe6, 0x0a, 0x52, 0xa8, 0x71, 0x8c, 0xa1, 0x8b, 0x3e, 0xfd, 0x01, + 0xcb, 0x0e, 0xfe, 0xef, 0xaf, 0x33, 0xb5, 0xbf, 0x24, 0x4a, 0x6f, 0x78, + 0xf3, 0xd8, 0x67, 0x7f, 0x57, 0x3f, 0x33, 0x98, 0xea, 0x28, 0xfd, 0x4b, + 0x91, 0x78, 0x17, 0x2e, +}; +static const unsigned char kat2452_nonce[] = {0}; +static const unsigned char kat2452_persstr[] = { + 0x0c, 0xc9, 0x5d, 0x75, 0xc1, 0x82, 0xc6, 0xb4, 0x1e, 0x4e, 0x0e, 0x58, + 0x31, 0x8f, 0x9a, 0x76, 0x41, 0x79, 0x5b, 0x63, 0x6f, 0x9b, 0xf8, 0x25, + 0x01, 0x35, 0x2d, 0x1e, 0x38, 0x86, 0x75, 0x9e, 0xb1, 0x6f, 0x4e, 0x20, + 0x20, 0x6e, 0x4d, 0xe0, +}; +static const unsigned char kat2452_entropyinreseed[] = { + 0x3d, 0x7f, 0xa5, 0xc5, 0xe0, 0xfd, 0x6d, 0x01, 0x9c, 0xdd, 0xa0, 0xac, + 0x27, 0xd0, 0x7e, 0x88, 0xd1, 0x49, 0x72, 0xba, 0x2e, 0xcc, 0xee, 0xb9, + 0xa2, 0x39, 0x54, 0xc8, 0x38, 0x81, 0xe3, 0x7c, 0x23, 0x18, 0x0e, 0x6f, + 0xdb, 0x4f, 0x7b, 0xab, +}; +static const unsigned char kat2452_addinreseed[] = { + 0x3c, 0x37, 0xa2, 0x14, 0xd0, 0xd1, 0xc2, 0xab, 0xa6, 0x75, 0x25, 0xaa, + 0xcb, 0xa4, 0x07, 0x7b, 0xd1, 0x6a, 0x77, 0xc8, 0xdc, 0x1c, 0x06, 0x9d, + 0x4b, 0x10, 0x18, 0xca, 0x61, 0x53, 0xff, 0x98, 0x3f, 0xbb, 0xbf, 0xa1, + 0xe1, 0x06, 0x4d, 0x19, +}; +static const unsigned char kat2452_addin0[] = { + 0x1b, 0xdf, 0x68, 0x47, 0x94, 0x60, 0x27, 0x0d, 0x0b, 0x05, 0x81, 0x8d, + 0x80, 0xb4, 0xc6, 0x0f, 0x9b, 0xf3, 0xa5, 0xe6, 0x28, 0x56, 0x27, 0xc8, + 0xaf, 0x68, 0x9e, 0x67, 0xc7, 0x18, 0x83, 0xac, 0x2c, 0xcf, 0xe7, 0x2a, + 0xc5, 0x5e, 0x86, 0xaa, +}; +static const unsigned char kat2452_addin1[] = { + 0x66, 0xb2, 0x50, 0xdd, 0xc3, 0xee, 0x23, 0xb9, 0x79, 0x6a, 0x83, 0x33, + 0xcc, 0xa6, 0x8b, 0xf5, 0xab, 0xa4, 0x11, 0x64, 0xc0, 0xd3, 0xd3, 0x9a, + 0x08, 0x25, 0x63, 0xb1, 0x5f, 0xdf, 0x28, 0xf6, 0x35, 0xfa, 0x1e, 0x19, + 0xbd, 0x88, 0x6b, 0xf9, +}; +static const unsigned char kat2452_retbits[] = { + 0x9a, 0xd0, 0xe2, 0x44, 0x3c, 0x2c, 0xa9, 0x28, 0xe2, 0x4f, 0x1a, 0xd4, + 0xf7, 0x30, 0x39, 0x34, 0x04, 0x3a, 0xcc, 0x4e, 0x6e, 0x9f, 0x03, 0xeb, + 0x8c, 0xe3, 0x71, 0xe4, 0xe1, 0x2c, 0xee, 0x3c, 0x7c, 0xb9, 0x79, 0x13, + 0x20, 0x90, 0xc7, 0xd2, 0x30, 0xaf, 0x21, 0xf9, 0xb5, 0x13, 0x47, 0x98, + 0x36, 0x3e, 0x6e, 0x4c, 0xc8, 0x97, 0x27, 0xac, 0x75, 0xce, 0x29, 0x60, + 0x18, 0x0d, 0xb4, 0x30, +}; +static const struct drbg_kat_pr_false kat2452_t = { + 6, kat2452_entropyin, kat2452_nonce, kat2452_persstr, + kat2452_entropyinreseed, kat2452_addinreseed, kat2452_addin0, + kat2452_addin1, kat2452_retbits +}; +static const struct drbg_kat kat2452 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2452_t +}; + +static const unsigned char kat2453_entropyin[] = { + 0xc6, 0x6f, 0x6c, 0xde, 0x3d, 0x83, 0x77, 0xa8, 0x03, 0xca, 0x22, 0xf3, + 0x8e, 0xf3, 0x37, 0x9b, 0xfa, 0x3a, 0x8a, 0xb7, 0x7e, 0xdd, 0x2c, 0xf3, + 0x8a, 0xe0, 0x54, 0x06, 0xed, 0x94, 0x8d, 0xf9, 0xe0, 0xc1, 0xbf, 0xdd, + 0x5d, 0x6d, 0x99, 0xcf, +}; +static const unsigned char kat2453_nonce[] = {0}; +static const unsigned char kat2453_persstr[] = { + 0xd0, 0x82, 0x24, 0xbe, 0x28, 0xfd, 0x1f, 0xdb, 0x5c, 0x6e, 0x3a, 0x65, + 0xeb, 0xd1, 0x9f, 0x4f, 0x0e, 0xba, 0x13, 0x3f, 0x7f, 0x86, 0x18, 0xaf, + 0x0e, 0xcb, 0xa9, 0xdf, 0x84, 0x98, 0xd3, 0x87, 0xaf, 0x7a, 0xf9, 0x0b, + 0xd3, 0x56, 0x83, 0x3d, +}; +static const unsigned char kat2453_entropyinreseed[] = { + 0xfe, 0xa8, 0x71, 0x6f, 0xf0, 0x25, 0x40, 0xdd, 0x2e, 0xa3, 0x95, 0xe0, + 0xce, 0x19, 0xb7, 0x62, 0x35, 0x5f, 0xbb, 0x5e, 0x7f, 0x39, 0xd5, 0x25, + 0x02, 0x24, 0x07, 0xa6, 0x28, 0x96, 0xb3, 0xa0, 0x94, 0xfc, 0x0e, 0xca, + 0xcc, 0xb7, 0x7f, 0x21, +}; +static const unsigned char kat2453_addinreseed[] = { + 0x64, 0xe1, 0x6c, 0x0a, 0x34, 0x98, 0xb2, 0x69, 0x3e, 0x35, 0x9a, 0x27, + 0x23, 0x46, 0xef, 0xd1, 0x28, 0xbe, 0x5a, 0x5a, 0xe7, 0x38, 0x06, 0x8a, + 0x9e, 0x9f, 0x26, 0x7c, 0xe9, 0xdd, 0x7e, 0x8b, 0xcb, 0x36, 0xdd, 0x2e, + 0x54, 0x27, 0xe3, 0x6d, +}; +static const unsigned char kat2453_addin0[] = { + 0xc4, 0x7f, 0xa9, 0x27, 0x55, 0x84, 0xbc, 0xcd, 0x85, 0xd5, 0xa8, 0x4c, + 0x0a, 0xb3, 0xa1, 0x3a, 0x76, 0x30, 0x56, 0x7d, 0xc9, 0x69, 0xe0, 0x4c, + 0xdf, 0x3c, 0xb2, 0xa1, 0xb3, 0xd9, 0xcc, 0x79, 0xd4, 0x5b, 0x83, 0x20, + 0x26, 0x9a, 0x38, 0x0a, +}; +static const unsigned char kat2453_addin1[] = { + 0xad, 0x2e, 0x79, 0x88, 0x66, 0x4c, 0x31, 0xd1, 0xe5, 0xf9, 0xc0, 0x3d, + 0x8b, 0x5b, 0xa6, 0xaf, 0xd3, 0xbb, 0x4e, 0x23, 0x9d, 0x63, 0xfc, 0xe8, + 0xe6, 0x7a, 0x59, 0xad, 0x92, 0xee, 0x79, 0x56, 0x9e, 0x7c, 0x40, 0x9b, + 0xbf, 0xaf, 0x3d, 0x0c, +}; +static const unsigned char kat2453_retbits[] = { + 0xbd, 0xd9, 0xf5, 0xde, 0x8f, 0xdf, 0xa1, 0x11, 0x27, 0x1b, 0xf4, 0x04, + 0x44, 0x57, 0xdb, 0xd2, 0xa7, 0x30, 0xf8, 0x74, 0xb6, 0x87, 0x81, 0x59, + 0xac, 0xf1, 0xe7, 0xcd, 0x87, 0x96, 0x0c, 0xbe, 0x3a, 0x43, 0x7b, 0x0d, + 0x76, 0xdf, 0x37, 0x80, 0x1b, 0x02, 0x34, 0x6a, 0xcc, 0x0e, 0x25, 0xd0, + 0x2f, 0x7e, 0xd3, 0x6e, 0xc6, 0x12, 0x5b, 0xc3, 0xc4, 0x00, 0x15, 0xea, + 0x87, 0xcc, 0x41, 0x57, +}; +static const struct drbg_kat_pr_false kat2453_t = { + 7, kat2453_entropyin, kat2453_nonce, kat2453_persstr, + kat2453_entropyinreseed, kat2453_addinreseed, kat2453_addin0, + kat2453_addin1, kat2453_retbits +}; +static const struct drbg_kat kat2453 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2453_t +}; + +static const unsigned char kat2454_entropyin[] = { + 0x16, 0x39, 0x23, 0x81, 0x80, 0x97, 0x28, 0x1f, 0x32, 0x6f, 0x1e, 0x6a, + 0xea, 0x73, 0x19, 0x46, 0xbe, 0xd5, 0x96, 0xaf, 0x7d, 0x27, 0xf0, 0x5b, + 0x1e, 0x10, 0xbb, 0x99, 0x9d, 0xaa, 0xf6, 0xb8, 0xaa, 0x3b, 0x68, 0x2c, + 0x01, 0xa0, 0xda, 0x22, +}; +static const unsigned char kat2454_nonce[] = {0}; +static const unsigned char kat2454_persstr[] = { + 0x09, 0xbe, 0x1a, 0xef, 0x56, 0x1a, 0x95, 0x72, 0x27, 0x4d, 0x5f, 0xf4, + 0xa0, 0x11, 0xf1, 0x39, 0x8f, 0xb8, 0x9c, 0x41, 0x7c, 0xc6, 0x97, 0xfe, + 0x40, 0x26, 0xee, 0xec, 0x87, 0xcf, 0x2b, 0x91, 0x86, 0xaf, 0x54, 0x7a, + 0xd5, 0xf5, 0x64, 0xba, +}; +static const unsigned char kat2454_entropyinreseed[] = { + 0x6b, 0x16, 0x09, 0x4e, 0x75, 0x28, 0xee, 0xc7, 0x10, 0x2b, 0x66, 0xb3, + 0xc2, 0x4d, 0xc8, 0xfd, 0xa3, 0xf0, 0x8d, 0x50, 0x4c, 0x60, 0xec, 0x68, + 0x9a, 0x9e, 0x1d, 0x2b, 0x6c, 0xf1, 0xa0, 0x01, 0x5b, 0x9b, 0x91, 0x40, + 0xd1, 0xbc, 0x6d, 0x0b, +}; +static const unsigned char kat2454_addinreseed[] = { + 0xdc, 0x0c, 0x5a, 0x4f, 0x38, 0xc5, 0x72, 0x7a, 0x3f, 0xaa, 0x66, 0xde, + 0xe8, 0x37, 0xd0, 0xa7, 0xb8, 0xa5, 0x17, 0x53, 0x22, 0xf5, 0x09, 0xe3, + 0x92, 0x0b, 0xf8, 0xe3, 0xc3, 0x98, 0x06, 0xf1, 0xd9, 0x98, 0x42, 0xdd, + 0xfa, 0x44, 0x0e, 0x93, +}; +static const unsigned char kat2454_addin0[] = { + 0x74, 0x32, 0xee, 0x11, 0x67, 0x53, 0x1c, 0x70, 0x91, 0x0f, 0x8c, 0xae, + 0x72, 0xb9, 0xb0, 0x9a, 0xf1, 0x91, 0x85, 0x77, 0x6e, 0x58, 0x8a, 0x1b, + 0xa5, 0x02, 0x65, 0x6e, 0xf9, 0xd7, 0x52, 0xe8, 0x4a, 0x97, 0x7f, 0x24, + 0xee, 0x2e, 0x86, 0x25, +}; +static const unsigned char kat2454_addin1[] = { + 0x0c, 0x66, 0x93, 0x06, 0x44, 0xc2, 0xd3, 0x68, 0x0c, 0x10, 0x98, 0x79, + 0x93, 0x04, 0xd1, 0x23, 0x6c, 0xa4, 0x00, 0x6b, 0xa0, 0x60, 0xa8, 0x39, + 0x83, 0x7e, 0x68, 0x42, 0x3e, 0x62, 0x46, 0xe4, 0xd3, 0xf8, 0x51, 0x25, + 0x9c, 0xbb, 0x20, 0x6b, +}; +static const unsigned char kat2454_retbits[] = { + 0x8b, 0xca, 0xc9, 0x3f, 0x84, 0x51, 0x68, 0x91, 0xe6, 0x60, 0xe8, 0xe8, + 0x3f, 0x55, 0x2e, 0x38, 0xce, 0xa2, 0x04, 0xf6, 0xb5, 0xc4, 0xaa, 0x17, + 0x9d, 0x04, 0x83, 0xac, 0xae, 0xd2, 0x0e, 0x8c, 0x13, 0x5b, 0xf8, 0xdf, + 0x32, 0x57, 0xc3, 0xdf, 0xda, 0xd3, 0x47, 0x59, 0x86, 0xcd, 0x58, 0xb0, + 0x59, 0x29, 0xaa, 0xc0, 0xe4, 0x02, 0xc3, 0xab, 0xcc, 0xcf, 0x0c, 0x1d, + 0xe2, 0x2b, 0x97, 0x30, +}; +static const struct drbg_kat_pr_false kat2454_t = { + 8, kat2454_entropyin, kat2454_nonce, kat2454_persstr, + kat2454_entropyinreseed, kat2454_addinreseed, kat2454_addin0, + kat2454_addin1, kat2454_retbits +}; +static const struct drbg_kat kat2454 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2454_t +}; + +static const unsigned char kat2455_entropyin[] = { + 0x0f, 0x91, 0x06, 0x80, 0x19, 0x6d, 0x5d, 0x1c, 0x45, 0x7d, 0xd0, 0x1e, + 0xfa, 0xcf, 0xbe, 0x4d, 0xa9, 0x82, 0x6c, 0xe9, 0x44, 0x01, 0xda, 0x10, + 0x95, 0x19, 0x24, 0x4f, 0xcb, 0xc9, 0xec, 0x0b, 0x84, 0x78, 0x53, 0x81, + 0x9d, 0xd7, 0x75, 0x54, +}; +static const unsigned char kat2455_nonce[] = {0}; +static const unsigned char kat2455_persstr[] = { + 0xcf, 0x32, 0xcc, 0xd9, 0xf9, 0x2a, 0xc3, 0xb3, 0xc0, 0x38, 0x70, 0xec, + 0x3b, 0xfb, 0xbc, 0xf7, 0xaf, 0xab, 0xb9, 0xab, 0x77, 0x78, 0x76, 0xa8, + 0xc0, 0xc9, 0xa7, 0xfe, 0x52, 0x8e, 0xde, 0x33, 0x38, 0x24, 0x41, 0xf3, + 0xe4, 0x77, 0xc9, 0x49, +}; +static const unsigned char kat2455_entropyinreseed[] = { + 0x94, 0x9a, 0x91, 0x9f, 0x13, 0x61, 0xf4, 0x6d, 0x0b, 0xc5, 0x6e, 0xe5, + 0x41, 0x77, 0xff, 0x6f, 0xb0, 0xa2, 0x7b, 0xe6, 0x27, 0xdb, 0xc0, 0x25, + 0xee, 0x6b, 0xf2, 0xee, 0x35, 0xc9, 0x2f, 0x87, 0x15, 0xfb, 0xdd, 0xb4, + 0x55, 0x7c, 0x31, 0x70, +}; +static const unsigned char kat2455_addinreseed[] = { + 0x00, 0x05, 0xd3, 0xa7, 0x45, 0x01, 0xde, 0x95, 0x77, 0x3c, 0x1c, 0xaa, + 0x76, 0x0b, 0xa1, 0x53, 0x40, 0x2e, 0xa7, 0xb0, 0xb6, 0xcb, 0x42, 0xdb, + 0xc4, 0x53, 0x30, 0x0c, 0x5e, 0xa6, 0x18, 0xc0, 0x9a, 0x6c, 0x57, 0x26, + 0x43, 0x1a, 0xa5, 0x25, +}; +static const unsigned char kat2455_addin0[] = { + 0x5e, 0xbd, 0xa5, 0x99, 0x1f, 0x11, 0x54, 0x0e, 0xf4, 0x7a, 0xbc, 0x3e, + 0x85, 0x3c, 0x74, 0x70, 0x7a, 0x06, 0xf5, 0x6c, 0x07, 0xd1, 0x9e, 0x9d, + 0x72, 0x59, 0xef, 0xb4, 0xac, 0x2c, 0x3c, 0x74, 0x0d, 0x7b, 0x4f, 0x17, + 0xc5, 0x76, 0x9b, 0x51, +}; +static const unsigned char kat2455_addin1[] = { + 0x0b, 0xc4, 0x1c, 0x70, 0x5c, 0x7a, 0xc0, 0x13, 0xfe, 0x21, 0xae, 0xbb, + 0xf9, 0x4c, 0x05, 0xad, 0xe1, 0x29, 0xcf, 0x93, 0x58, 0xd6, 0x18, 0x13, + 0x0e, 0xf8, 0xe3, 0x81, 0x99, 0x70, 0xbc, 0xbf, 0x62, 0x36, 0x86, 0x38, + 0xc5, 0xb3, 0xb5, 0x38, +}; +static const unsigned char kat2455_retbits[] = { + 0x01, 0x71, 0x2c, 0x87, 0x08, 0xde, 0xb1, 0x0b, 0x96, 0x04, 0x39, 0xa4, + 0x77, 0x79, 0x72, 0xe6, 0x4b, 0x99, 0xe1, 0x88, 0x9f, 0x9b, 0xc1, 0xec, + 0x90, 0xac, 0xad, 0x50, 0x90, 0xb8, 0x3d, 0x85, 0x50, 0x7d, 0x99, 0x83, + 0x91, 0x50, 0x14, 0x25, 0x52, 0x4b, 0x77, 0xcc, 0xbb, 0x08, 0xd6, 0x26, + 0x73, 0x63, 0x1b, 0x16, 0x18, 0x08, 0xad, 0x02, 0x1d, 0xdb, 0xab, 0x2d, + 0x8f, 0x9e, 0x2e, 0xe9, +}; +static const struct drbg_kat_pr_false kat2455_t = { + 9, kat2455_entropyin, kat2455_nonce, kat2455_persstr, + kat2455_entropyinreseed, kat2455_addinreseed, kat2455_addin0, + kat2455_addin1, kat2455_retbits +}; +static const struct drbg_kat kat2455 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2455_t +}; + +static const unsigned char kat2456_entropyin[] = { + 0xc9, 0x4f, 0xdd, 0x11, 0x91, 0x06, 0xb1, 0x10, 0xa2, 0xa5, 0x78, 0xec, + 0x24, 0xc2, 0x4a, 0xc4, 0x1b, 0x75, 0x55, 0x81, 0xcd, 0x53, 0xd8, 0xe1, + 0x94, 0x18, 0x68, 0x42, 0x94, 0x48, 0xfe, 0xc7, 0xf5, 0xf1, 0xc8, 0x96, + 0x8b, 0xe6, 0x52, 0x7a, +}; +static const unsigned char kat2456_nonce[] = {0}; +static const unsigned char kat2456_persstr[] = { + 0x37, 0x4a, 0xd5, 0xf2, 0xf7, 0x4a, 0xc5, 0x6c, 0x6f, 0x6f, 0x83, 0x6e, + 0xc2, 0x1a, 0xf9, 0x6f, 0xf2, 0x48, 0x34, 0x01, 0x46, 0x44, 0x44, 0x3a, + 0xbf, 0x9c, 0x8a, 0x84, 0xa2, 0x84, 0xf8, 0x05, 0x00, 0x1a, 0x6f, 0x11, + 0x41, 0x23, 0x77, 0x37, +}; +static const unsigned char kat2456_entropyinreseed[] = { + 0x3a, 0x1c, 0xb7, 0x2d, 0xc5, 0x4d, 0xac, 0xa4, 0x8c, 0x75, 0xb7, 0x06, + 0x45, 0x52, 0xe3, 0x7a, 0x6f, 0xc0, 0xa7, 0x01, 0xd1, 0x45, 0x79, 0x2f, + 0x56, 0xe0, 0xbf, 0x2b, 0x3a, 0xda, 0xe7, 0xed, 0x8a, 0x29, 0x8f, 0x3b, + 0x65, 0x7f, 0x22, 0xca, +}; +static const unsigned char kat2456_addinreseed[] = { + 0xed, 0xce, 0xbf, 0x4d, 0x5f, 0x42, 0xa5, 0x93, 0xf3, 0x35, 0x96, 0x0f, + 0x77, 0x85, 0x3b, 0x1e, 0x83, 0x3b, 0xa9, 0xc2, 0x45, 0xa1, 0x3f, 0xe9, + 0xa6, 0x40, 0xb7, 0x8f, 0x1d, 0x83, 0x25, 0xe9, 0x20, 0x4c, 0xe7, 0xcb, + 0x48, 0x70, 0x3d, 0x2c, +}; +static const unsigned char kat2456_addin0[] = { + 0x07, 0x84, 0xb4, 0xe8, 0x3a, 0x6a, 0xd2, 0x27, 0xb7, 0x9a, 0xfa, 0x86, + 0xc2, 0xf3, 0x9b, 0x98, 0xe9, 0x2d, 0x50, 0xfb, 0x68, 0x56, 0xf1, 0x27, + 0x44, 0xc4, 0xdc, 0xa7, 0x1b, 0xb3, 0x32, 0xdd, 0x15, 0x9d, 0x6a, 0x00, + 0x05, 0x07, 0xf4, 0x5d, +}; +static const unsigned char kat2456_addin1[] = { + 0x83, 0xeb, 0x92, 0xe0, 0xdb, 0x4a, 0x25, 0x38, 0xff, 0x8b, 0x1d, 0x89, + 0x0c, 0xd9, 0x0f, 0x17, 0xb3, 0xa8, 0x8a, 0xb4, 0x05, 0x62, 0x9c, 0x3c, + 0x36, 0x31, 0xa6, 0xc3, 0xaf, 0xc5, 0xb7, 0x1d, 0x17, 0x20, 0x37, 0xe9, + 0xc3, 0x71, 0x1d, 0x9f, +}; +static const unsigned char kat2456_retbits[] = { + 0xac, 0xf4, 0x83, 0x56, 0x72, 0x35, 0xea, 0x35, 0x44, 0xa0, 0x9a, 0xab, + 0x42, 0x3d, 0x74, 0x7f, 0x84, 0x15, 0xf0, 0xc9, 0x0e, 0x76, 0x2a, 0x6a, + 0x28, 0x55, 0x1c, 0xa9, 0x36, 0xf3, 0x28, 0x5c, 0xb3, 0x19, 0x0e, 0x10, + 0x11, 0xea, 0x43, 0xb8, 0xe5, 0xd1, 0x7d, 0x02, 0x26, 0x87, 0xf9, 0xd0, + 0x39, 0xd7, 0x7b, 0x0a, 0x11, 0x39, 0x62, 0xef, 0x3e, 0xb0, 0xe9, 0x1a, + 0x47, 0xdc, 0x21, 0x6c, +}; +static const struct drbg_kat_pr_false kat2456_t = { + 10, kat2456_entropyin, kat2456_nonce, kat2456_persstr, + kat2456_entropyinreseed, kat2456_addinreseed, kat2456_addin0, + kat2456_addin1, kat2456_retbits +}; +static const struct drbg_kat kat2456 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2456_t +}; + +static const unsigned char kat2457_entropyin[] = { + 0x24, 0xd8, 0xf5, 0xdc, 0x4c, 0x68, 0x1c, 0x12, 0x55, 0xc1, 0x6b, 0x27, + 0xa4, 0x51, 0x1e, 0x26, 0xcd, 0x1a, 0x8f, 0x32, 0xec, 0xb8, 0x31, 0xcb, + 0x01, 0x23, 0xbe, 0x09, 0x01, 0xe9, 0xed, 0x65, 0x30, 0xdc, 0xd7, 0x24, + 0xa0, 0x2d, 0x5e, 0x35, +}; +static const unsigned char kat2457_nonce[] = {0}; +static const unsigned char kat2457_persstr[] = { + 0x29, 0x9a, 0x25, 0x05, 0x55, 0xe2, 0x82, 0x0b, 0xe1, 0xbc, 0xfb, 0xb5, + 0xd6, 0x38, 0x5f, 0xab, 0x29, 0x4a, 0x4a, 0xbd, 0x31, 0xc5, 0x50, 0xdf, + 0x88, 0x05, 0x38, 0x8e, 0x23, 0x8f, 0xe3, 0x06, 0xfa, 0xa0, 0x1e, 0xf1, + 0xe7, 0xbd, 0xf0, 0xfa, +}; +static const unsigned char kat2457_entropyinreseed[] = { + 0x02, 0x6e, 0xa6, 0xd7, 0xcb, 0x2a, 0x3d, 0x49, 0xd4, 0xe4, 0xcd, 0xbe, + 0x0b, 0x80, 0x5a, 0xd7, 0xb4, 0xe8, 0xbc, 0xf6, 0xc5, 0x5d, 0x53, 0xf3, + 0x4e, 0x07, 0x72, 0x1a, 0xc2, 0xf5, 0xd5, 0x91, 0xa3, 0xe3, 0xf4, 0x6f, + 0xe3, 0x9d, 0x99, 0xb6, +}; +static const unsigned char kat2457_addinreseed[] = { + 0x08, 0xc7, 0xc8, 0x45, 0x8c, 0x03, 0xd2, 0x28, 0xfc, 0x83, 0x27, 0x67, + 0x22, 0xc0, 0xd6, 0x00, 0x4f, 0xf7, 0x57, 0x0b, 0x63, 0x40, 0xe5, 0x18, + 0x37, 0xb8, 0x06, 0xc0, 0xa1, 0x2c, 0x0b, 0x56, 0x3f, 0x40, 0x7b, 0xa0, + 0xae, 0x45, 0xc5, 0xa7, +}; +static const unsigned char kat2457_addin0[] = { + 0xaf, 0x51, 0x6e, 0x36, 0xcf, 0x50, 0x75, 0x00, 0x48, 0x7e, 0x92, 0x49, + 0x5b, 0x67, 0x4e, 0x4d, 0x8c, 0xf0, 0x8c, 0xb1, 0x97, 0xf5, 0xdb, 0x36, + 0x23, 0x23, 0x8c, 0xa6, 0x3e, 0x4c, 0xcf, 0x74, 0x6d, 0xb5, 0x69, 0x49, + 0x4d, 0x02, 0x91, 0xa5, +}; +static const unsigned char kat2457_addin1[] = { + 0xec, 0xaf, 0x4f, 0x7f, 0x2c, 0x57, 0x3e, 0xb3, 0xad, 0xde, 0x25, 0x9c, + 0x25, 0xed, 0x2e, 0x8d, 0xc3, 0xaa, 0x08, 0x86, 0x3c, 0x78, 0x96, 0x5c, + 0xaa, 0x26, 0xbc, 0x86, 0x6f, 0xad, 0x1f, 0x2f, 0x3d, 0x4d, 0x0a, 0x72, + 0xea, 0xf0, 0x17, 0x26, +}; +static const unsigned char kat2457_retbits[] = { + 0x70, 0x80, 0x20, 0x5a, 0x64, 0x37, 0x89, 0x75, 0xcf, 0x2d, 0x81, 0x15, + 0x9c, 0x2f, 0x48, 0xac, 0x7e, 0xd3, 0xec, 0xf3, 0x66, 0xe4, 0xef, 0x42, + 0xe2, 0x64, 0x7a, 0x1b, 0xc0, 0x59, 0x8c, 0x9e, 0xe4, 0xa4, 0x09, 0x68, + 0xf3, 0xd3, 0x4c, 0xcf, 0xc5, 0x53, 0xb9, 0x74, 0x82, 0xcc, 0x27, 0x66, + 0x87, 0x60, 0xd5, 0x21, 0xd0, 0x9b, 0xf4, 0x0d, 0xbb, 0x4e, 0xd8, 0xdb, + 0x80, 0xf0, 0xc6, 0x40, +}; +static const struct drbg_kat_pr_false kat2457_t = { + 11, kat2457_entropyin, kat2457_nonce, kat2457_persstr, + kat2457_entropyinreseed, kat2457_addinreseed, kat2457_addin0, + kat2457_addin1, kat2457_retbits +}; +static const struct drbg_kat kat2457 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2457_t +}; + +static const unsigned char kat2458_entropyin[] = { + 0xce, 0xfa, 0xe9, 0xa6, 0x1b, 0xaa, 0x69, 0xa4, 0xd4, 0xc7, 0x0b, 0xa1, + 0x21, 0x67, 0x0b, 0x16, 0x45, 0x46, 0xe3, 0xcf, 0xe2, 0x62, 0x4f, 0x70, + 0xa2, 0xe7, 0x7e, 0x00, 0xf6, 0x2d, 0x44, 0x31, 0xa2, 0x69, 0xf5, 0x72, + 0x69, 0xb8, 0x73, 0x37, +}; +static const unsigned char kat2458_nonce[] = {0}; +static const unsigned char kat2458_persstr[] = { + 0x15, 0xb7, 0xe8, 0xe9, 0x11, 0xb2, 0x24, 0x1a, 0x9d, 0x30, 0x01, 0xc7, + 0xf6, 0x49, 0xca, 0x0a, 0xce, 0x3b, 0x62, 0xdd, 0x0e, 0xc2, 0x6a, 0x11, + 0xad, 0x86, 0x76, 0xf6, 0x13, 0xb2, 0xf6, 0x88, 0x2e, 0x46, 0x57, 0x89, + 0x34, 0x30, 0xbd, 0x5a, +}; +static const unsigned char kat2458_entropyinreseed[] = { + 0xec, 0x20, 0x18, 0x3b, 0x60, 0x3a, 0xac, 0xe2, 0x0a, 0x57, 0xe7, 0x04, + 0xea, 0x5f, 0x8e, 0xfe, 0x06, 0xbb, 0xb0, 0x94, 0x77, 0xca, 0x30, 0x5f, + 0x3c, 0xd8, 0x5d, 0xfe, 0x30, 0xcb, 0xd2, 0xec, 0x81, 0x72, 0xb7, 0xd5, + 0x20, 0x85, 0x79, 0xcb, +}; +static const unsigned char kat2458_addinreseed[] = { + 0x3c, 0xab, 0xd3, 0x7c, 0x7b, 0xf1, 0x02, 0x1b, 0xbc, 0x0b, 0x83, 0xce, + 0xa5, 0x6e, 0x18, 0xf6, 0xb5, 0xf9, 0x9f, 0x95, 0x57, 0xd4, 0x8b, 0x62, + 0x6f, 0x0a, 0xb7, 0x10, 0x34, 0xd7, 0x47, 0x8e, 0x08, 0xa6, 0x8b, 0x72, + 0x1d, 0xae, 0xc8, 0x58, +}; +static const unsigned char kat2458_addin0[] = { + 0x82, 0x34, 0xdf, 0x65, 0x89, 0x76, 0x31, 0xff, 0x8c, 0x13, 0x93, 0x78, + 0xd8, 0x02, 0xd8, 0x4a, 0x1d, 0xb7, 0x3c, 0x1a, 0x2f, 0x2e, 0x1b, 0xb5, + 0xe6, 0xbf, 0x05, 0x62, 0xaa, 0x2c, 0x1e, 0x91, 0xd2, 0x0d, 0xa9, 0x7e, + 0x63, 0x8d, 0x78, 0x20, +}; +static const unsigned char kat2458_addin1[] = { + 0x14, 0xeb, 0x87, 0xa5, 0xbb, 0xae, 0x31, 0x9b, 0x63, 0xd7, 0xf4, 0x60, + 0x19, 0x45, 0x76, 0x3e, 0x47, 0xdf, 0x63, 0xdb, 0x18, 0xa0, 0xd8, 0x7d, + 0x7f, 0xf3, 0xfc, 0x6c, 0xba, 0x87, 0xf2, 0x6c, 0xaa, 0x7f, 0x7d, 0x5f, + 0xeb, 0xee, 0xfe, 0x15, +}; +static const unsigned char kat2458_retbits[] = { + 0x7b, 0x0e, 0xaf, 0x29, 0x74, 0x50, 0x90, 0x82, 0x00, 0x07, 0x31, 0xe2, + 0x5a, 0xa4, 0x42, 0x74, 0x5b, 0x88, 0xe4, 0x1b, 0xb5, 0x54, 0xc9, 0xe8, + 0x4c, 0xf8, 0xf9, 0xbf, 0x63, 0x71, 0x7e, 0xa5, 0x56, 0x87, 0x6f, 0x74, + 0x66, 0x6c, 0xe5, 0x36, 0x8a, 0x2f, 0x30, 0x24, 0x14, 0x9e, 0x7c, 0x55, + 0x74, 0xcf, 0xfc, 0xb6, 0xcd, 0xf8, 0x98, 0x2d, 0x11, 0xc6, 0xd7, 0xc2, + 0xa1, 0x3d, 0x7e, 0xe9, +}; +static const struct drbg_kat_pr_false kat2458_t = { + 12, kat2458_entropyin, kat2458_nonce, kat2458_persstr, + kat2458_entropyinreseed, kat2458_addinreseed, kat2458_addin0, + kat2458_addin1, kat2458_retbits +}; +static const struct drbg_kat kat2458 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2458_t +}; + +static const unsigned char kat2459_entropyin[] = { + 0xc8, 0x77, 0xab, 0x5d, 0x00, 0x72, 0x91, 0x81, 0x81, 0x94, 0x2d, 0x3c, + 0xf1, 0xb3, 0x2d, 0x2f, 0x62, 0x14, 0xb5, 0x9a, 0x35, 0xa7, 0x20, 0xa0, + 0x9c, 0xf6, 0x9a, 0xc1, 0xd9, 0xdb, 0xa8, 0xca, 0x4b, 0x0d, 0x14, 0xda, + 0x8e, 0xf7, 0xbe, 0x2c, +}; +static const unsigned char kat2459_nonce[] = {0}; +static const unsigned char kat2459_persstr[] = { + 0xce, 0x31, 0x8e, 0x6f, 0x05, 0xb2, 0xb1, 0x03, 0x1f, 0x2f, 0x90, 0x82, + 0x82, 0xcf, 0x36, 0x10, 0xe6, 0x06, 0x6e, 0xb0, 0xac, 0x86, 0xa2, 0x92, + 0x9d, 0xd4, 0xc0, 0xd3, 0xdb, 0x47, 0xeb, 0xa8, 0xfe, 0xce, 0xc9, 0x0f, + 0xfa, 0x69, 0x3b, 0xfc, +}; +static const unsigned char kat2459_entropyinreseed[] = { + 0x11, 0x2a, 0xbc, 0x16, 0x8f, 0x5b, 0xe2, 0xfb, 0x04, 0x4c, 0x7e, 0x4f, + 0x01, 0x4c, 0xd5, 0x8d, 0xd3, 0xa6, 0xc7, 0xbf, 0x21, 0xfb, 0x9d, 0x41, + 0xe0, 0x09, 0x2d, 0x39, 0x01, 0x57, 0xcd, 0x04, 0x98, 0xe5, 0x40, 0x0d, + 0xcd, 0x6c, 0x28, 0x16, +}; +static const unsigned char kat2459_addinreseed[] = { + 0x4c, 0x7f, 0xe1, 0xb1, 0xf1, 0xb8, 0x96, 0xfe, 0xfb, 0x2d, 0xb8, 0xcd, + 0xb3, 0x31, 0xf8, 0xe9, 0x12, 0x55, 0x47, 0x4c, 0xcc, 0x25, 0x11, 0xa3, + 0x0d, 0x04, 0x6c, 0x2d, 0xe3, 0x58, 0x14, 0x42, 0xe6, 0xd1, 0x79, 0x33, + 0x81, 0xc1, 0xb1, 0xe6, +}; +static const unsigned char kat2459_addin0[] = { + 0xfe, 0xc1, 0xce, 0x62, 0xc8, 0xf8, 0xbf, 0x13, 0xe2, 0x1c, 0x20, 0xfd, + 0x64, 0x52, 0x66, 0x34, 0x98, 0xf8, 0xf8, 0x08, 0x13, 0xb0, 0xf8, 0xf5, + 0xf6, 0xbd, 0xd1, 0xdf, 0x3f, 0xc1, 0xad, 0x89, 0x4c, 0x86, 0xfa, 0x98, + 0x7a, 0x58, 0xbf, 0x2c, +}; +static const unsigned char kat2459_addin1[] = { + 0xcd, 0x07, 0x70, 0xca, 0x92, 0x4a, 0x00, 0xf7, 0xe1, 0x03, 0xab, 0x07, + 0xdf, 0xd3, 0xd0, 0x4d, 0xc1, 0xa8, 0x8a, 0x7a, 0x2e, 0x43, 0x43, 0x86, + 0xf7, 0x9d, 0x77, 0x29, 0x78, 0x1f, 0xb1, 0x97, 0x84, 0x50, 0xdc, 0x37, + 0x1a, 0x0b, 0x00, 0xf1, +}; +static const unsigned char kat2459_retbits[] = { + 0x74, 0x18, 0xbd, 0xcb, 0x44, 0xc4, 0x5c, 0xbe, 0x14, 0xc2, 0xb3, 0xa4, + 0x00, 0x91, 0x99, 0xb5, 0xa8, 0x69, 0x42, 0x62, 0x41, 0xc5, 0xe9, 0xb3, + 0xa2, 0x82, 0xd6, 0x19, 0x6c, 0xd6, 0x67, 0x1f, 0x0b, 0x4c, 0x32, 0x01, + 0x13, 0x59, 0x36, 0xeb, 0xfb, 0x79, 0x30, 0xa3, 0xfb, 0x54, 0xfb, 0x6a, + 0xf1, 0x5c, 0x2d, 0x15, 0x26, 0x8e, 0x25, 0x35, 0xd7, 0xe0, 0x15, 0x7b, + 0x7a, 0x7e, 0x34, 0xde, +}; +static const struct drbg_kat_pr_false kat2459_t = { + 13, kat2459_entropyin, kat2459_nonce, kat2459_persstr, + kat2459_entropyinreseed, kat2459_addinreseed, kat2459_addin0, + kat2459_addin1, kat2459_retbits +}; +static const struct drbg_kat kat2459 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2459_t +}; + +static const unsigned char kat2460_entropyin[] = { + 0x59, 0xc1, 0xec, 0x4d, 0x0a, 0xbe, 0x87, 0xcc, 0x1f, 0x1c, 0x0c, 0xad, + 0xdd, 0x94, 0xb0, 0x66, 0x97, 0xb1, 0x70, 0xd0, 0x6b, 0x2c, 0x15, 0x75, + 0x62, 0xc4, 0x3a, 0xd1, 0x0a, 0x3c, 0xbd, 0x5c, 0x3b, 0x4b, 0xe3, 0x35, + 0xbc, 0x2b, 0x50, 0xcc, +}; +static const unsigned char kat2460_nonce[] = {0}; +static const unsigned char kat2460_persstr[] = { + 0xfb, 0xec, 0x1b, 0x40, 0x89, 0x78, 0xe6, 0x7e, 0xe0, 0x75, 0xa7, 0xb7, + 0x7b, 0x9f, 0x36, 0xd0, 0xe6, 0x22, 0xae, 0x3e, 0x65, 0x8a, 0xd0, 0x9e, + 0x09, 0xad, 0x2d, 0x48, 0x1e, 0xf3, 0x1e, 0x47, 0x27, 0xa3, 0xbf, 0xc8, + 0xe2, 0x25, 0x66, 0x4a, +}; +static const unsigned char kat2460_entropyinreseed[] = { + 0xae, 0xfc, 0xc4, 0x7d, 0x5e, 0x11, 0x9e, 0x32, 0x81, 0x95, 0xa1, 0xf3, + 0x22, 0x65, 0x4e, 0xc0, 0xff, 0x4c, 0x9a, 0x74, 0xe2, 0xdb, 0xd3, 0x03, + 0x18, 0x16, 0xfc, 0xa0, 0x11, 0x8b, 0xf2, 0x20, 0x98, 0xdb, 0x30, 0x93, + 0x3b, 0x9c, 0x09, 0xa7, +}; +static const unsigned char kat2460_addinreseed[] = { + 0x13, 0x80, 0xe2, 0x0a, 0x63, 0x9d, 0x38, 0xf2, 0xf7, 0x2b, 0x7b, 0x00, + 0x40, 0x0f, 0x24, 0xfb, 0xc2, 0x71, 0x59, 0xfb, 0x52, 0xf8, 0x90, 0x23, + 0x42, 0x9b, 0x45, 0xc3, 0xd8, 0x22, 0xc3, 0x36, 0x34, 0xb1, 0x9d, 0x4b, + 0xa9, 0xb6, 0x20, 0x4c, +}; +static const unsigned char kat2460_addin0[] = { + 0x5f, 0x72, 0x05, 0xd8, 0x7d, 0x0a, 0x98, 0x68, 0x23, 0x4e, 0xeb, 0x8c, + 0x4a, 0xe4, 0x2c, 0xd4, 0x7c, 0x03, 0x98, 0x3b, 0x77, 0xdf, 0xaa, 0x84, + 0x63, 0x7b, 0x40, 0x80, 0xdf, 0x13, 0x44, 0x43, 0x88, 0x9a, 0xa0, 0x42, + 0xc7, 0x7b, 0x7f, 0x78, +}; +static const unsigned char kat2460_addin1[] = { + 0xfb, 0x6d, 0x48, 0x6f, 0xd7, 0x58, 0x60, 0x36, 0x00, 0x3f, 0xfc, 0xe8, + 0x86, 0x5e, 0x47, 0x94, 0x98, 0xfe, 0x53, 0x0f, 0x9a, 0xe2, 0x9e, 0x01, + 0xf9, 0x8d, 0x4a, 0x2f, 0x7b, 0x66, 0x5b, 0x6a, 0x93, 0x29, 0x45, 0x0b, + 0x0f, 0xb6, 0xff, 0xb1, +}; +static const unsigned char kat2460_retbits[] = { + 0x0d, 0x3d, 0x8c, 0x9f, 0xf8, 0x6f, 0xb5, 0x6b, 0xf3, 0x62, 0x78, 0x7f, + 0x47, 0x4f, 0x83, 0x80, 0x66, 0xfa, 0x74, 0x83, 0xa9, 0x58, 0xc2, 0x3f, + 0x75, 0x2b, 0xe6, 0xe2, 0x1c, 0xb4, 0x2f, 0xee, 0x11, 0xd8, 0xdc, 0x53, + 0x39, 0x65, 0x08, 0xf9, 0xfd, 0x51, 0x22, 0xd0, 0x4e, 0x41, 0xd0, 0xe0, + 0xc9, 0x49, 0xd5, 0x0c, 0x46, 0xd5, 0x1d, 0x0a, 0xc8, 0x24, 0xb6, 0xf4, + 0x6b, 0x5d, 0xf0, 0x88, +}; +static const struct drbg_kat_pr_false kat2460_t = { + 14, kat2460_entropyin, kat2460_nonce, kat2460_persstr, + kat2460_entropyinreseed, kat2460_addinreseed, kat2460_addin0, + kat2460_addin1, kat2460_retbits +}; +static const struct drbg_kat kat2460 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2460_t +}; + +static const unsigned char kat2461_entropyin[] = { + 0x21, 0xa5, 0x3c, 0x17, 0x66, 0x1a, 0xed, 0x92, 0x95, 0x0f, 0xf4, 0xfd, + 0xf4, 0xab, 0x8f, 0xa5, 0xdc, 0x44, 0xe9, 0x9f, 0x88, 0xaa, 0x95, 0x3e, + 0x19, 0xb4, 0xbe, 0x78, 0xba, 0x75, 0xf2, 0x67, 0xf6, 0x70, 0x34, 0xa1, + 0x56, 0x6e, 0x83, 0x3e, +}; +static const unsigned char kat2461_nonce[] = {0}; +static const unsigned char kat2461_persstr[] = {0}; +static const unsigned char kat2461_entropyinreseed[] = { + 0x1e, 0xcb, 0x61, 0xa5, 0xdd, 0x70, 0xb1, 0x67, 0xd6, 0x55, 0x77, 0x41, + 0x5c, 0x2f, 0xb8, 0x12, 0xea, 0x20, 0xb3, 0x25, 0xd2, 0xb5, 0x31, 0x58, + 0x69, 0x7c, 0xf9, 0x7c, 0x81, 0xd7, 0x9e, 0x84, 0x99, 0xf7, 0x45, 0x40, + 0x13, 0x7f, 0xd1, 0xe1, +}; +static const unsigned char kat2461_addinreseed[] = {0}; +static const unsigned char kat2461_addin0[] = {0}; +static const unsigned char kat2461_addin1[] = {0}; +static const unsigned char kat2461_retbits[] = { + 0x11, 0xa0, 0x7b, 0x22, 0x31, 0x91, 0x6f, 0x99, 0xc3, 0xf7, 0xa0, 0x7d, + 0x14, 0x51, 0xab, 0x94, 0x0d, 0x2d, 0x66, 0x3c, 0x97, 0x29, 0xc1, 0x85, + 0x71, 0x70, 0xa3, 0x16, 0x55, 0x07, 0x8a, 0x82, 0x74, 0xec, 0x4a, 0x90, + 0x31, 0xbc, 0xfd, 0x2a, 0xbb, 0x1a, 0xe5, 0x81, 0x3f, 0x49, 0x70, 0xa7, + 0x16, 0xe3, 0xd1, 0x42, 0x87, 0xe4, 0xf2, 0x1e, 0x01, 0x32, 0x3f, 0xdf, + 0xff, 0xb7, 0x61, 0x87, +}; +static const struct drbg_kat_pr_false kat2461_t = { + 0, kat2461_entropyin, kat2461_nonce, kat2461_persstr, + kat2461_entropyinreseed, kat2461_addinreseed, kat2461_addin0, + kat2461_addin1, kat2461_retbits +}; +static const struct drbg_kat kat2461 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2461_t +}; + +static const unsigned char kat2462_entropyin[] = { + 0x85, 0x1a, 0x84, 0x9e, 0x0a, 0xb6, 0xc0, 0x0d, 0x14, 0x71, 0x88, 0xd2, + 0xe8, 0xcf, 0x01, 0xbc, 0x50, 0xd3, 0x4a, 0xdf, 0x22, 0xec, 0x81, 0x0c, + 0xa9, 0x68, 0x06, 0x02, 0x81, 0xf8, 0xfa, 0xa6, 0x43, 0x06, 0x42, 0x81, + 0xe3, 0xfa, 0x97, 0xcb, +}; +static const unsigned char kat2462_nonce[] = {0}; +static const unsigned char kat2462_persstr[] = {0}; +static const unsigned char kat2462_entropyinreseed[] = { + 0x9b, 0xf4, 0xc8, 0xd0, 0xa8, 0x98, 0x86, 0x5c, 0xc1, 0xcb, 0x0d, 0xe2, + 0x78, 0xfc, 0xcb, 0x75, 0x62, 0x83, 0xe6, 0xab, 0xa0, 0x20, 0xa4, 0x84, + 0x87, 0x6d, 0x27, 0x9e, 0x41, 0x31, 0x05, 0x58, 0x15, 0x9f, 0xdb, 0x0a, + 0x3c, 0x88, 0xf7, 0xac, +}; +static const unsigned char kat2462_addinreseed[] = {0}; +static const unsigned char kat2462_addin0[] = {0}; +static const unsigned char kat2462_addin1[] = {0}; +static const unsigned char kat2462_retbits[] = { + 0xf7, 0xd7, 0x0a, 0xd6, 0x77, 0x67, 0x85, 0x49, 0x7f, 0x7d, 0xf3, 0xac, + 0xfc, 0x24, 0x21, 0xb1, 0x4e, 0x4e, 0x76, 0xb6, 0x45, 0x85, 0xaf, 0xdd, + 0xef, 0xf3, 0xdc, 0x73, 0x9b, 0x85, 0x1c, 0xaf, 0x73, 0xb8, 0x55, 0x03, + 0x39, 0x9b, 0x08, 0x15, 0x3e, 0x6d, 0xf7, 0x3b, 0xdb, 0x0a, 0xa3, 0xa8, + 0x45, 0xe2, 0xcd, 0xfe, 0xdd, 0x72, 0x40, 0x93, 0xb9, 0x47, 0x8f, 0x54, + 0xaf, 0xd1, 0xad, 0xfb, +}; +static const struct drbg_kat_pr_false kat2462_t = { + 1, kat2462_entropyin, kat2462_nonce, kat2462_persstr, + kat2462_entropyinreseed, kat2462_addinreseed, kat2462_addin0, + kat2462_addin1, kat2462_retbits +}; +static const struct drbg_kat kat2462 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2462_t +}; + +static const unsigned char kat2463_entropyin[] = { + 0x64, 0x8f, 0x7e, 0xff, 0xb3, 0x31, 0xec, 0x30, 0xce, 0xd4, 0x03, 0x98, + 0xcc, 0xf2, 0x34, 0x3e, 0xaa, 0xc8, 0x85, 0xc4, 0x58, 0xba, 0x7a, 0xb7, + 0x0b, 0x9f, 0x0f, 0xaa, 0x91, 0x80, 0xa9, 0xa0, 0xe3, 0x4a, 0x13, 0x0b, + 0x42, 0x2c, 0x56, 0x97, +}; +static const unsigned char kat2463_nonce[] = {0}; +static const unsigned char kat2463_persstr[] = {0}; +static const unsigned char kat2463_entropyinreseed[] = { + 0xcd, 0x13, 0xb1, 0xc9, 0xd9, 0x5f, 0x25, 0x84, 0xf8, 0x55, 0x01, 0xad, + 0xbf, 0x5d, 0xcf, 0x1e, 0x78, 0xc2, 0xd3, 0x43, 0x4a, 0xd6, 0x24, 0x5d, + 0x3b, 0xae, 0x2a, 0xa4, 0xd1, 0x52, 0x00, 0xe6, 0xf3, 0x4b, 0xab, 0xe7, + 0x63, 0x41, 0x58, 0x49, +}; +static const unsigned char kat2463_addinreseed[] = {0}; +static const unsigned char kat2463_addin0[] = {0}; +static const unsigned char kat2463_addin1[] = {0}; +static const unsigned char kat2463_retbits[] = { + 0x67, 0x82, 0x3e, 0x4a, 0x9f, 0xc6, 0xff, 0x5f, 0x2a, 0x79, 0x85, 0x34, + 0x1b, 0xae, 0xf1, 0x6d, 0xa4, 0x6e, 0xc3, 0x35, 0x44, 0x5d, 0xa1, 0x9f, + 0xce, 0xe9, 0x65, 0x0f, 0xc0, 0x2c, 0xb7, 0x51, 0x2e, 0xcf, 0x47, 0xf8, + 0x91, 0x19, 0x75, 0xa4, 0xa9, 0xd3, 0x9f, 0xe8, 0x49, 0x98, 0x38, 0x86, + 0x23, 0x05, 0xf1, 0xe5, 0x54, 0xff, 0x80, 0x21, 0xab, 0xe5, 0x0d, 0x9b, + 0x66, 0x08, 0x8c, 0x9b, +}; +static const struct drbg_kat_pr_false kat2463_t = { + 2, kat2463_entropyin, kat2463_nonce, kat2463_persstr, + kat2463_entropyinreseed, kat2463_addinreseed, kat2463_addin0, + kat2463_addin1, kat2463_retbits +}; +static const struct drbg_kat kat2463 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2463_t +}; + +static const unsigned char kat2464_entropyin[] = { + 0x97, 0x45, 0x70, 0x0e, 0x52, 0x2a, 0xca, 0xc8, 0x00, 0x2f, 0x7d, 0x18, + 0x30, 0x84, 0x2a, 0xee, 0x78, 0x8d, 0xe5, 0xf1, 0x61, 0x2d, 0xcf, 0x2b, + 0xf8, 0xff, 0xe9, 0x4e, 0x02, 0xb1, 0xd8, 0xa3, 0x54, 0xa5, 0x52, 0x8f, + 0x7e, 0x01, 0x14, 0x07, +}; +static const unsigned char kat2464_nonce[] = {0}; +static const unsigned char kat2464_persstr[] = {0}; +static const unsigned char kat2464_entropyinreseed[] = { + 0x59, 0xc8, 0xa3, 0xcf, 0x8e, 0x09, 0xb4, 0x7f, 0x6e, 0xdb, 0xae, 0x25, + 0x19, 0x72, 0xfd, 0x22, 0x58, 0x62, 0x67, 0x27, 0x32, 0xd1, 0xa7, 0xc0, + 0x67, 0x85, 0xc5, 0x84, 0xf7, 0x39, 0x54, 0x5f, 0xfb, 0x65, 0xfb, 0xd3, + 0x93, 0x65, 0xcc, 0x4e, +}; +static const unsigned char kat2464_addinreseed[] = {0}; +static const unsigned char kat2464_addin0[] = {0}; +static const unsigned char kat2464_addin1[] = {0}; +static const unsigned char kat2464_retbits[] = { + 0x92, 0x59, 0xed, 0x9b, 0xd8, 0x44, 0xcb, 0x40, 0x1c, 0x8e, 0x55, 0x45, + 0x9e, 0x51, 0xe1, 0x60, 0x12, 0x6d, 0xd2, 0xdb, 0xe6, 0x4a, 0x07, 0x60, + 0x61, 0x01, 0x86, 0x1f, 0x1d, 0xc9, 0xff, 0x20, 0xbe, 0x87, 0xeb, 0xc6, + 0x3a, 0x0d, 0xf0, 0x88, 0x4f, 0x4b, 0x39, 0xcb, 0x1d, 0x4a, 0xc6, 0xba, + 0x26, 0xdf, 0x50, 0xd9, 0x83, 0x86, 0x2e, 0x4d, 0x27, 0xe5, 0x70, 0xb2, + 0xd5, 0x03, 0xbe, 0xcf, +}; +static const struct drbg_kat_pr_false kat2464_t = { + 3, kat2464_entropyin, kat2464_nonce, kat2464_persstr, + kat2464_entropyinreseed, kat2464_addinreseed, kat2464_addin0, + kat2464_addin1, kat2464_retbits +}; +static const struct drbg_kat kat2464 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2464_t +}; + +static const unsigned char kat2465_entropyin[] = { + 0x4a, 0xa7, 0xe8, 0x2f, 0x47, 0xfe, 0xb4, 0x9a, 0x46, 0x4f, 0x68, 0x97, + 0x8c, 0x8f, 0x0a, 0x8c, 0x2f, 0xc4, 0x08, 0x49, 0x6b, 0xa9, 0xff, 0x60, + 0xb2, 0xa2, 0x30, 0xab, 0xea, 0x8b, 0x90, 0xb9, 0x4e, 0x55, 0x17, 0x9b, + 0x73, 0xd9, 0xe2, 0x35, +}; +static const unsigned char kat2465_nonce[] = {0}; +static const unsigned char kat2465_persstr[] = {0}; +static const unsigned char kat2465_entropyinreseed[] = { + 0x42, 0x9a, 0x77, 0xd1, 0x5c, 0x18, 0x41, 0xb8, 0xe6, 0xd6, 0x51, 0x07, + 0x99, 0xc4, 0x11, 0x89, 0x53, 0x1b, 0x74, 0x9f, 0xff, 0xc4, 0xc1, 0x1e, + 0x90, 0xef, 0xb8, 0xf3, 0x7b, 0x71, 0x8e, 0x25, 0xe3, 0x46, 0x0c, 0x4b, + 0xda, 0xc6, 0xe2, 0xc9, +}; +static const unsigned char kat2465_addinreseed[] = {0}; +static const unsigned char kat2465_addin0[] = {0}; +static const unsigned char kat2465_addin1[] = {0}; +static const unsigned char kat2465_retbits[] = { + 0xe4, 0xd5, 0x8c, 0x5c, 0xaa, 0x32, 0xfd, 0x90, 0xd1, 0xd6, 0xc2, 0x5a, + 0xe1, 0x4f, 0x3e, 0x56, 0x8c, 0x51, 0xa6, 0xea, 0x6f, 0x05, 0x0c, 0x1e, + 0x57, 0x50, 0x89, 0x69, 0x4d, 0xc3, 0x2d, 0x7a, 0xe6, 0x9f, 0xc0, 0x27, + 0xa1, 0xf3, 0xd4, 0x6e, 0x18, 0x80, 0xec, 0xc9, 0xaa, 0xae, 0x57, 0x22, + 0xda, 0x47, 0x96, 0x9d, 0xfc, 0x67, 0xd4, 0xe0, 0x2d, 0xc2, 0x50, 0xad, + 0xf2, 0xa3, 0xfc, 0x2b, +}; +static const struct drbg_kat_pr_false kat2465_t = { + 4, kat2465_entropyin, kat2465_nonce, kat2465_persstr, + kat2465_entropyinreseed, kat2465_addinreseed, kat2465_addin0, + kat2465_addin1, kat2465_retbits +}; +static const struct drbg_kat kat2465 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2465_t +}; + +static const unsigned char kat2466_entropyin[] = { + 0x7d, 0x69, 0xa7, 0x9f, 0x3c, 0xca, 0x61, 0x9d, 0x46, 0x79, 0xe7, 0x3f, + 0x6e, 0xc7, 0x6a, 0x72, 0x84, 0x58, 0xee, 0x24, 0xbd, 0xce, 0xad, 0x4f, + 0x26, 0x73, 0x20, 0x67, 0x70, 0x39, 0x30, 0x45, 0xdf, 0xb1, 0x32, 0x58, + 0x2d, 0x51, 0x7d, 0xa4, +}; +static const unsigned char kat2466_nonce[] = {0}; +static const unsigned char kat2466_persstr[] = {0}; +static const unsigned char kat2466_entropyinreseed[] = { + 0xf7, 0xa7, 0x62, 0x4e, 0xb8, 0xf9, 0xa1, 0x71, 0x47, 0xb6, 0x61, 0x64, + 0x42, 0xf3, 0x5c, 0x55, 0xba, 0x3b, 0x1e, 0xca, 0xcc, 0x4a, 0x9a, 0x51, + 0x67, 0xeb, 0xa1, 0xe7, 0x2c, 0xa7, 0xdf, 0xcb, 0x43, 0xcd, 0xb3, 0xe1, + 0x45, 0x8f, 0x40, 0x63, +}; +static const unsigned char kat2466_addinreseed[] = {0}; +static const unsigned char kat2466_addin0[] = {0}; +static const unsigned char kat2466_addin1[] = {0}; +static const unsigned char kat2466_retbits[] = { + 0x20, 0xd6, 0x90, 0x4e, 0x05, 0x0e, 0xcc, 0x44, 0xbf, 0x9b, 0x76, 0xf1, + 0x2c, 0x20, 0x38, 0xc5, 0x7a, 0xe8, 0xb4, 0x04, 0x16, 0x8b, 0x51, 0x19, + 0xfc, 0x72, 0xad, 0xe0, 0xe8, 0x2a, 0x0c, 0x97, 0xa6, 0xc1, 0x7c, 0xda, + 0x3a, 0x3d, 0x5c, 0x3e, 0xf8, 0x54, 0x0c, 0x17, 0xdf, 0x5e, 0x41, 0xa9, + 0x80, 0x57, 0x05, 0x5f, 0xea, 0x22, 0x10, 0x60, 0x9d, 0x48, 0xe1, 0xa8, + 0x05, 0xc0, 0xc1, 0x1a, +}; +static const struct drbg_kat_pr_false kat2466_t = { + 5, kat2466_entropyin, kat2466_nonce, kat2466_persstr, + kat2466_entropyinreseed, kat2466_addinreseed, kat2466_addin0, + kat2466_addin1, kat2466_retbits +}; +static const struct drbg_kat kat2466 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2466_t +}; + +static const unsigned char kat2467_entropyin[] = { + 0x1f, 0xce, 0x32, 0xe3, 0xbb, 0xf1, 0xbd, 0x9e, 0xdc, 0x5a, 0x8e, 0x2e, + 0x6f, 0x6e, 0xfb, 0xe6, 0xb5, 0x52, 0xad, 0xee, 0x98, 0xfe, 0xad, 0x05, + 0x00, 0xf3, 0x1b, 0xe8, 0x5a, 0x0a, 0x04, 0xeb, 0x9f, 0x52, 0x21, 0x35, + 0x8e, 0xcf, 0xcc, 0xeb, +}; +static const unsigned char kat2467_nonce[] = {0}; +static const unsigned char kat2467_persstr[] = {0}; +static const unsigned char kat2467_entropyinreseed[] = { + 0x4c, 0xd4, 0xd5, 0xfc, 0x1a, 0x9a, 0x91, 0x33, 0xc4, 0x60, 0x04, 0xc1, + 0xae, 0xc7, 0xd8, 0x8e, 0x70, 0x26, 0x73, 0xef, 0xf0, 0x7b, 0x68, 0x19, + 0x07, 0xbf, 0xa6, 0x43, 0x73, 0x6d, 0xd0, 0x2e, 0x63, 0x09, 0xfb, 0xca, + 0x1d, 0xc7, 0x61, 0x1a, +}; +static const unsigned char kat2467_addinreseed[] = {0}; +static const unsigned char kat2467_addin0[] = {0}; +static const unsigned char kat2467_addin1[] = {0}; +static const unsigned char kat2467_retbits[] = { + 0xc5, 0x33, 0x3e, 0x4b, 0x92, 0xd9, 0x70, 0x0a, 0x44, 0x54, 0x8a, 0x02, + 0xdc, 0x83, 0x93, 0xb3, 0xeb, 0x65, 0xd7, 0xf7, 0x68, 0xb3, 0x29, 0x9f, + 0xa0, 0x37, 0x8b, 0x74, 0x62, 0x08, 0x6f, 0x64, 0x78, 0x04, 0x9d, 0x92, + 0x47, 0x53, 0xc6, 0xc1, 0x66, 0xde, 0x60, 0x11, 0xa7, 0xfe, 0x1a, 0x2d, + 0x84, 0xbc, 0xf3, 0xd0, 0x57, 0x9f, 0x98, 0x65, 0x2b, 0x96, 0xc8, 0x4c, + 0x57, 0x20, 0x9d, 0x44, +}; +static const struct drbg_kat_pr_false kat2467_t = { + 6, kat2467_entropyin, kat2467_nonce, kat2467_persstr, + kat2467_entropyinreseed, kat2467_addinreseed, kat2467_addin0, + kat2467_addin1, kat2467_retbits +}; +static const struct drbg_kat kat2467 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2467_t +}; + +static const unsigned char kat2468_entropyin[] = { + 0xca, 0xa6, 0x0c, 0x6a, 0xb9, 0x65, 0xd1, 0x77, 0x1f, 0xdd, 0x26, 0xbe, + 0x45, 0x4a, 0x9a, 0x32, 0xf7, 0x6f, 0xe3, 0x8f, 0xdd, 0x8f, 0xe4, 0xdd, + 0xe8, 0x78, 0xe9, 0x4e, 0xc2, 0xa3, 0x89, 0xe7, 0x20, 0x01, 0x38, 0xd4, + 0x0a, 0x2a, 0xb4, 0xb7, +}; +static const unsigned char kat2468_nonce[] = {0}; +static const unsigned char kat2468_persstr[] = {0}; +static const unsigned char kat2468_entropyinreseed[] = { + 0x94, 0x00, 0x9a, 0x73, 0x62, 0x3f, 0xd0, 0xb5, 0x31, 0x28, 0x58, 0xbb, + 0xbd, 0x30, 0xba, 0xab, 0xfc, 0x4f, 0x1f, 0xc1, 0x15, 0xba, 0xe0, 0xe8, + 0xef, 0x2c, 0xb7, 0xba, 0x82, 0xb3, 0x1a, 0xfd, 0xb7, 0x3d, 0x1e, 0xa2, + 0xf6, 0x35, 0xa4, 0xdf, +}; +static const unsigned char kat2468_addinreseed[] = {0}; +static const unsigned char kat2468_addin0[] = {0}; +static const unsigned char kat2468_addin1[] = {0}; +static const unsigned char kat2468_retbits[] = { + 0xf9, 0xbf, 0x2c, 0xcc, 0x84, 0x2c, 0x05, 0x72, 0xd4, 0x18, 0xe8, 0x38, + 0xf9, 0x8a, 0x98, 0x98, 0xf9, 0x26, 0xa1, 0x7d, 0x6a, 0x90, 0x70, 0x3e, + 0x01, 0x10, 0x92, 0x51, 0xb5, 0x64, 0xef, 0x86, 0x92, 0xfd, 0x33, 0x9f, + 0x78, 0x97, 0x86, 0x7a, 0xbb, 0x23, 0x6d, 0x86, 0x94, 0xb2, 0x40, 0x4a, + 0x56, 0xc8, 0x12, 0xd8, 0x22, 0x63, 0x2a, 0x7f, 0x4d, 0x53, 0x86, 0x75, + 0x24, 0xe8, 0x4f, 0x13, +}; +static const struct drbg_kat_pr_false kat2468_t = { + 7, kat2468_entropyin, kat2468_nonce, kat2468_persstr, + kat2468_entropyinreseed, kat2468_addinreseed, kat2468_addin0, + kat2468_addin1, kat2468_retbits +}; +static const struct drbg_kat kat2468 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2468_t +}; + +static const unsigned char kat2469_entropyin[] = { + 0x81, 0x5d, 0xe1, 0x65, 0xea, 0x4d, 0x09, 0x0b, 0xc2, 0x66, 0x85, 0x16, + 0xa0, 0x2a, 0x55, 0xcb, 0xf7, 0xde, 0x82, 0xfc, 0x24, 0x15, 0xed, 0xb6, + 0x96, 0x1f, 0x44, 0x70, 0xbf, 0xd2, 0x8c, 0xed, 0xf6, 0xce, 0x29, 0x3b, + 0xf9, 0x3b, 0x99, 0x29, +}; +static const unsigned char kat2469_nonce[] = {0}; +static const unsigned char kat2469_persstr[] = {0}; +static const unsigned char kat2469_entropyinreseed[] = { + 0xbd, 0xde, 0x9f, 0x2a, 0xeb, 0x37, 0x52, 0x9e, 0x95, 0x31, 0x79, 0x2f, + 0x75, 0x00, 0xf4, 0xc0, 0x24, 0x60, 0x0d, 0x5a, 0xee, 0x8d, 0x11, 0xf9, + 0xa0, 0x7e, 0xb6, 0x4c, 0x3c, 0xfe, 0x51, 0xb8, 0x76, 0xdd, 0xd6, 0x8c, + 0x17, 0x64, 0x9c, 0x82, +}; +static const unsigned char kat2469_addinreseed[] = {0}; +static const unsigned char kat2469_addin0[] = {0}; +static const unsigned char kat2469_addin1[] = {0}; +static const unsigned char kat2469_retbits[] = { + 0x84, 0x0d, 0x9c, 0x6f, 0x29, 0x00, 0x36, 0xc7, 0xc5, 0xfb, 0xc5, 0xa6, + 0x35, 0xfd, 0x47, 0x8e, 0x00, 0x9d, 0x0c, 0x36, 0x65, 0x09, 0xf4, 0xf5, + 0x16, 0xc7, 0x8c, 0x03, 0x6e, 0x47, 0xcb, 0x4f, 0x8f, 0xab, 0x4b, 0xb3, + 0xf8, 0x65, 0x97, 0xde, 0x66, 0x9b, 0xd1, 0xc9, 0x11, 0x2d, 0x34, 0xf3, + 0x34, 0xe6, 0x10, 0x8c, 0x3f, 0xc8, 0xec, 0x5f, 0x99, 0x74, 0xfe, 0x28, + 0x1a, 0xce, 0xea, 0x76, +}; +static const struct drbg_kat_pr_false kat2469_t = { + 8, kat2469_entropyin, kat2469_nonce, kat2469_persstr, + kat2469_entropyinreseed, kat2469_addinreseed, kat2469_addin0, + kat2469_addin1, kat2469_retbits +}; +static const struct drbg_kat kat2469 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2469_t +}; + +static const unsigned char kat2470_entropyin[] = { + 0x1b, 0x4d, 0xd0, 0xa2, 0x5e, 0xba, 0x83, 0x7f, 0x1c, 0xfe, 0x03, 0x2d, + 0x7f, 0xe6, 0x9e, 0x76, 0x90, 0xb2, 0xa6, 0xf5, 0xa7, 0x72, 0xff, 0xb7, + 0x2d, 0xca, 0x9f, 0x3d, 0x36, 0x44, 0x4e, 0xfc, 0xca, 0xd4, 0x36, 0x3c, + 0xad, 0xff, 0x43, 0x9d, +}; +static const unsigned char kat2470_nonce[] = {0}; +static const unsigned char kat2470_persstr[] = {0}; +static const unsigned char kat2470_entropyinreseed[] = { + 0xfe, 0x05, 0x86, 0x83, 0x58, 0x62, 0x0c, 0x88, 0x24, 0x76, 0x81, 0xef, + 0x9e, 0xa9, 0xd1, 0x7f, 0xfc, 0xc8, 0xa7, 0xf9, 0xb6, 0xf6, 0xe1, 0x9f, + 0xb3, 0xf5, 0x34, 0x69, 0x20, 0xeb, 0x40, 0x15, 0x73, 0xd9, 0xa8, 0xd3, + 0x12, 0x01, 0xfc, 0x5c, +}; +static const unsigned char kat2470_addinreseed[] = {0}; +static const unsigned char kat2470_addin0[] = {0}; +static const unsigned char kat2470_addin1[] = {0}; +static const unsigned char kat2470_retbits[] = { + 0x9e, 0x4b, 0x60, 0xa3, 0xa3, 0x51, 0xd2, 0x2d, 0x20, 0xcb, 0x9b, 0x11, + 0xe6, 0x3c, 0x84, 0xb1, 0x3a, 0xcb, 0x11, 0x84, 0xc9, 0x3d, 0xba, 0x63, + 0x0f, 0x1e, 0xc7, 0x1d, 0xaf, 0xe7, 0x2f, 0xa5, 0x05, 0xb9, 0x10, 0xe7, + 0x2b, 0x52, 0x10, 0x90, 0xb4, 0xfc, 0xc4, 0x69, 0x35, 0x29, 0x87, 0xb3, + 0x0f, 0x47, 0x9d, 0x08, 0x80, 0x7d, 0x55, 0xb2, 0xf2, 0x0a, 0xed, 0x6f, + 0x91, 0xd9, 0xd3, 0xcd, +}; +static const struct drbg_kat_pr_false kat2470_t = { + 9, kat2470_entropyin, kat2470_nonce, kat2470_persstr, + kat2470_entropyinreseed, kat2470_addinreseed, kat2470_addin0, + kat2470_addin1, kat2470_retbits +}; +static const struct drbg_kat kat2470 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2470_t +}; + +static const unsigned char kat2471_entropyin[] = { + 0x6d, 0xab, 0x72, 0x2a, 0x73, 0xb7, 0x97, 0xc2, 0xd5, 0x3f, 0x40, 0xda, + 0x0e, 0x76, 0xe6, 0xf6, 0x76, 0xb9, 0x50, 0xc2, 0xde, 0x82, 0x29, 0x1a, + 0x6f, 0x57, 0x0b, 0xcf, 0xe8, 0xb6, 0x20, 0x14, 0x52, 0x42, 0x30, 0x2d, + 0xa3, 0xec, 0x43, 0x2e, +}; +static const unsigned char kat2471_nonce[] = {0}; +static const unsigned char kat2471_persstr[] = {0}; +static const unsigned char kat2471_entropyinreseed[] = { + 0xef, 0x7e, 0xd5, 0x60, 0x31, 0x19, 0x46, 0xce, 0x55, 0x7d, 0xe3, 0x9b, + 0x5f, 0xd4, 0x90, 0x25, 0x3f, 0x43, 0x07, 0x8c, 0x3f, 0x82, 0x6e, 0x19, + 0x1d, 0x97, 0x9e, 0xec, 0x82, 0xbb, 0xfe, 0x0e, 0x5c, 0xf2, 0x07, 0x2f, + 0x90, 0xe3, 0xad, 0xd9, +}; +static const unsigned char kat2471_addinreseed[] = {0}; +static const unsigned char kat2471_addin0[] = {0}; +static const unsigned char kat2471_addin1[] = {0}; +static const unsigned char kat2471_retbits[] = { + 0x0b, 0x55, 0xe6, 0x39, 0x07, 0x05, 0x62, 0x0d, 0x4e, 0x1d, 0x18, 0x20, + 0x55, 0x9e, 0x73, 0x9a, 0xd5, 0x4c, 0xf4, 0xf0, 0xae, 0x7b, 0x3b, 0xed, + 0x52, 0xf3, 0x95, 0x00, 0xe0, 0x6a, 0x69, 0x3a, 0xd5, 0x5e, 0x42, 0xd3, + 0xe1, 0x79, 0xbc, 0x67, 0x0c, 0xcb, 0xbc, 0xfd, 0xfa, 0x2f, 0xbb, 0x3f, + 0x21, 0x74, 0x32, 0x19, 0x99, 0xbf, 0xdc, 0x8e, 0x43, 0x94, 0x8a, 0x25, + 0x01, 0x53, 0x38, 0xbb, +}; +static const struct drbg_kat_pr_false kat2471_t = { + 10, kat2471_entropyin, kat2471_nonce, kat2471_persstr, + kat2471_entropyinreseed, kat2471_addinreseed, kat2471_addin0, + kat2471_addin1, kat2471_retbits +}; +static const struct drbg_kat kat2471 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2471_t +}; + +static const unsigned char kat2472_entropyin[] = { + 0xab, 0xd7, 0x24, 0x32, 0x43, 0x25, 0xa1, 0xe0, 0xc2, 0xec, 0x0f, 0xb6, + 0x53, 0x98, 0x6c, 0x0c, 0x8f, 0x92, 0xef, 0x22, 0x0d, 0xe5, 0x6d, 0xb4, + 0xf8, 0x92, 0x58, 0xe1, 0x58, 0x92, 0xfd, 0x6f, 0x2c, 0xc1, 0xbd, 0xf3, + 0xb9, 0xff, 0x8a, 0xa2, +}; +static const unsigned char kat2472_nonce[] = {0}; +static const unsigned char kat2472_persstr[] = {0}; +static const unsigned char kat2472_entropyinreseed[] = { + 0xd3, 0x9a, 0x84, 0x84, 0xcf, 0xec, 0x43, 0x69, 0xbf, 0x82, 0x3a, 0x6b, + 0x46, 0x1e, 0xa0, 0xfd, 0x18, 0x00, 0x22, 0x11, 0xac, 0x00, 0x1f, 0xf0, + 0x91, 0x24, 0xe9, 0xe8, 0x2c, 0xaf, 0xd5, 0x54, 0x3a, 0xd1, 0x3c, 0xcc, + 0x14, 0x03, 0xa3, 0x9d, +}; +static const unsigned char kat2472_addinreseed[] = {0}; +static const unsigned char kat2472_addin0[] = {0}; +static const unsigned char kat2472_addin1[] = {0}; +static const unsigned char kat2472_retbits[] = { + 0x28, 0xa8, 0x7f, 0xc2, 0x16, 0x1c, 0x6d, 0xfa, 0xf9, 0x82, 0xaa, 0x5e, + 0x3e, 0x88, 0xbd, 0x4c, 0x1e, 0x18, 0x99, 0x37, 0x19, 0xdc, 0x3e, 0x62, + 0x91, 0x05, 0xd0, 0xb8, 0x53, 0x0e, 0xc3, 0xa2, 0xa2, 0x93, 0x58, 0x31, + 0x6d, 0xfe, 0x2d, 0xc1, 0x5b, 0x2c, 0x46, 0xc1, 0x20, 0xdc, 0x3b, 0x85, + 0x70, 0xa2, 0x85, 0x67, 0xd4, 0xad, 0x33, 0x97, 0x44, 0xfa, 0x4c, 0x06, + 0x61, 0x60, 0x2d, 0x06, +}; +static const struct drbg_kat_pr_false kat2472_t = { + 11, kat2472_entropyin, kat2472_nonce, kat2472_persstr, + kat2472_entropyinreseed, kat2472_addinreseed, kat2472_addin0, + kat2472_addin1, kat2472_retbits +}; +static const struct drbg_kat kat2472 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2472_t +}; + +static const unsigned char kat2473_entropyin[] = { + 0x57, 0x5a, 0xd8, 0x24, 0x9e, 0x98, 0x11, 0x49, 0x7f, 0xe8, 0x06, 0x34, + 0x14, 0x69, 0x30, 0x81, 0x12, 0x6b, 0x1a, 0xfe, 0x23, 0x17, 0xae, 0x22, + 0xd1, 0x5b, 0x9d, 0x73, 0x2c, 0x9e, 0x14, 0x71, 0x32, 0xb1, 0x98, 0xef, + 0x23, 0xed, 0x5b, 0x21, +}; +static const unsigned char kat2473_nonce[] = {0}; +static const unsigned char kat2473_persstr[] = {0}; +static const unsigned char kat2473_entropyinreseed[] = { + 0xb3, 0xa1, 0xf6, 0xcd, 0xe3, 0xcf, 0xb6, 0x32, 0x8e, 0x17, 0x21, 0x21, + 0xfd, 0x43, 0x1c, 0xdc, 0x3e, 0x0e, 0x80, 0xaa, 0x63, 0x7c, 0xee, 0x20, + 0x8c, 0x7e, 0x45, 0xc9, 0xef, 0x65, 0x26, 0x5a, 0x81, 0x81, 0xea, 0x42, + 0xb2, 0x66, 0x7a, 0xd0, +}; +static const unsigned char kat2473_addinreseed[] = {0}; +static const unsigned char kat2473_addin0[] = {0}; +static const unsigned char kat2473_addin1[] = {0}; +static const unsigned char kat2473_retbits[] = { + 0x12, 0x31, 0x5f, 0xec, 0x26, 0x6a, 0x4b, 0xb2, 0x55, 0xe7, 0x59, 0x19, + 0x3b, 0x95, 0x23, 0x3a, 0xb1, 0x80, 0xee, 0x06, 0xd2, 0xe9, 0x5a, 0xbd, + 0x8d, 0x51, 0x42, 0x1d, 0x61, 0x4e, 0xed, 0x6a, 0x9c, 0x0f, 0x34, 0xd1, + 0x40, 0x02, 0x04, 0x39, 0xb9, 0xcb, 0x1c, 0x84, 0x4c, 0xf9, 0xc2, 0x8a, + 0xb3, 0x24, 0x58, 0xa9, 0xf0, 0x96, 0x85, 0x90, 0x6a, 0xc9, 0xc9, 0x98, + 0x83, 0xca, 0x36, 0x05, +}; +static const struct drbg_kat_pr_false kat2473_t = { + 12, kat2473_entropyin, kat2473_nonce, kat2473_persstr, + kat2473_entropyinreseed, kat2473_addinreseed, kat2473_addin0, + kat2473_addin1, kat2473_retbits +}; +static const struct drbg_kat kat2473 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2473_t +}; + +static const unsigned char kat2474_entropyin[] = { + 0x55, 0xe7, 0x77, 0x25, 0xc4, 0x55, 0x1d, 0x5c, 0x54, 0xce, 0x56, 0x76, + 0xba, 0x03, 0xe8, 0x22, 0x1a, 0x84, 0x0d, 0xb8, 0xbe, 0x56, 0x8c, 0x50, + 0x8a, 0xd3, 0x68, 0x99, 0xce, 0x8f, 0x56, 0x8d, 0x78, 0x1f, 0x65, 0xd0, + 0xc0, 0xbf, 0x6e, 0x8d, +}; +static const unsigned char kat2474_nonce[] = {0}; +static const unsigned char kat2474_persstr[] = {0}; +static const unsigned char kat2474_entropyinreseed[] = { + 0x93, 0x33, 0xb0, 0x7c, 0xa2, 0xc1, 0xb8, 0xf2, 0xaa, 0x0d, 0xa6, 0x2b, + 0xc5, 0x14, 0xce, 0xf0, 0xd5, 0x36, 0xcd, 0x11, 0x8c, 0x83, 0x7c, 0xc4, + 0x09, 0x2d, 0x9a, 0x95, 0xf2, 0xbd, 0x6d, 0x5b, 0x69, 0x8b, 0x93, 0x8d, + 0x53, 0xd1, 0xb2, 0x0d, +}; +static const unsigned char kat2474_addinreseed[] = {0}; +static const unsigned char kat2474_addin0[] = {0}; +static const unsigned char kat2474_addin1[] = {0}; +static const unsigned char kat2474_retbits[] = { + 0x03, 0x0d, 0xd4, 0xde, 0xd2, 0xb2, 0x34, 0x08, 0x52, 0xe7, 0xdc, 0xa1, + 0xaa, 0x5a, 0xa1, 0x8e, 0xc0, 0x47, 0x96, 0x2c, 0xba, 0x9d, 0x86, 0x64, + 0x28, 0x0e, 0x82, 0xe6, 0x6f, 0x25, 0x93, 0x6e, 0x54, 0xf7, 0xc2, 0xed, + 0xb5, 0xe8, 0x01, 0xdc, 0xfe, 0x60, 0xe7, 0x7b, 0x55, 0x2e, 0x96, 0xdf, + 0xd1, 0x67, 0x53, 0xd8, 0x54, 0x16, 0xc1, 0x1b, 0x83, 0x7f, 0x7e, 0x38, + 0x8f, 0x01, 0x19, 0x2e, +}; +static const struct drbg_kat_pr_false kat2474_t = { + 13, kat2474_entropyin, kat2474_nonce, kat2474_persstr, + kat2474_entropyinreseed, kat2474_addinreseed, kat2474_addin0, + kat2474_addin1, kat2474_retbits +}; +static const struct drbg_kat kat2474 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2474_t +}; + +static const unsigned char kat2475_entropyin[] = { + 0x0e, 0x68, 0x1f, 0x88, 0x1a, 0xfa, 0x24, 0x3f, 0x5d, 0xe7, 0x5a, 0x04, + 0x62, 0x05, 0xf7, 0x33, 0xa3, 0x2a, 0x1b, 0xb3, 0x9e, 0x2a, 0xbd, 0x05, + 0x7c, 0x07, 0xd8, 0xd5, 0xe8, 0x15, 0x89, 0xd5, 0x37, 0xe1, 0x2d, 0x71, + 0x98, 0x1b, 0x57, 0xa3, +}; +static const unsigned char kat2475_nonce[] = {0}; +static const unsigned char kat2475_persstr[] = {0}; +static const unsigned char kat2475_entropyinreseed[] = { + 0xcb, 0x16, 0xa4, 0x90, 0x7b, 0x39, 0xf6, 0x47, 0xee, 0xc2, 0xb3, 0x88, + 0x70, 0x4d, 0x6a, 0x2b, 0x89, 0x83, 0x6c, 0xdd, 0x8d, 0x1c, 0x0c, 0x7f, + 0xf2, 0x7c, 0xdd, 0xbb, 0xb0, 0xd0, 0x1e, 0x30, 0x6d, 0xbd, 0x01, 0xec, + 0x58, 0x33, 0x47, 0x00, +}; +static const unsigned char kat2475_addinreseed[] = {0}; +static const unsigned char kat2475_addin0[] = {0}; +static const unsigned char kat2475_addin1[] = {0}; +static const unsigned char kat2475_retbits[] = { + 0xe4, 0x8a, 0xab, 0x2c, 0x01, 0x33, 0x5b, 0xa4, 0xf6, 0xd3, 0x77, 0xc3, + 0xc9, 0x93, 0x93, 0x2d, 0x4f, 0xe2, 0xef, 0x60, 0x25, 0x4e, 0xff, 0x31, + 0x54, 0x91, 0xb8, 0x1a, 0xcd, 0x1c, 0x22, 0xb3, 0xa3, 0x3c, 0x59, 0xb8, + 0xb7, 0x8c, 0x47, 0x9b, 0x7c, 0xd4, 0xfd, 0xd3, 0x1f, 0x7d, 0x15, 0x86, + 0x4a, 0x48, 0xac, 0x70, 0x6e, 0x32, 0x17, 0x4d, 0xe3, 0x6f, 0x92, 0x39, + 0xab, 0xa4, 0xb6, 0xad, +}; +static const struct drbg_kat_pr_false kat2475_t = { + 14, kat2475_entropyin, kat2475_nonce, kat2475_persstr, + kat2475_entropyinreseed, kat2475_addinreseed, kat2475_addin0, + kat2475_addin1, kat2475_retbits +}; +static const struct drbg_kat kat2475 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2475_t +}; + +static const unsigned char kat2476_entropyin[] = { + 0x6d, 0xa6, 0x70, 0xb6, 0xda, 0x13, 0x5f, 0x77, 0xb7, 0xfb, 0x54, 0x8e, + 0x79, 0x64, 0x71, 0x57, 0x31, 0x46, 0xee, 0x58, 0xc2, 0x07, 0xb3, 0x87, + 0x9f, 0x8d, 0x9f, 0x50, 0x33, 0x23, 0x46, 0xcb, 0x00, 0x8a, 0x18, 0xaf, + 0xec, 0x30, 0xe4, 0xd5, +}; +static const unsigned char kat2476_nonce[] = {0}; +static const unsigned char kat2476_persstr[] = {0}; +static const unsigned char kat2476_entropyinreseed[] = { + 0x63, 0x59, 0xab, 0x87, 0x27, 0x78, 0x4f, 0xe1, 0x33, 0x55, 0x4b, 0xe8, + 0x7b, 0x36, 0x4e, 0x9e, 0x26, 0x18, 0x42, 0x50, 0xfe, 0xe2, 0xd9, 0x96, + 0x62, 0xc4, 0x5b, 0x41, 0xb6, 0xda, 0x27, 0x29, 0xca, 0xa6, 0x1a, 0x1f, + 0x7b, 0x1f, 0x4a, 0xe2, +}; +static const unsigned char kat2476_addinreseed[] = { + 0x1a, 0x19, 0x4e, 0x6f, 0x49, 0x95, 0x5f, 0x01, 0x84, 0x47, 0x88, 0x2a, + 0x48, 0xbc, 0xb2, 0x0b, 0xeb, 0x41, 0x1f, 0x88, 0x6a, 0x9b, 0xc3, 0xc5, + 0xa8, 0x83, 0x3c, 0xe6, 0xf8, 0x8c, 0x37, 0x39, 0xd7, 0x9f, 0x54, 0xa4, + 0xcf, 0x4c, 0x62, 0x0a, +}; +static const unsigned char kat2476_addin0[] = { + 0x0c, 0x88, 0x78, 0x48, 0xa4, 0x6c, 0x45, 0x71, 0x9b, 0x03, 0x65, 0xca, + 0x6f, 0x2b, 0x1b, 0x80, 0x0c, 0x39, 0xa7, 0xd8, 0xab, 0x15, 0xf4, 0x61, + 0x3f, 0xc5, 0xa9, 0x14, 0x3e, 0x42, 0x5a, 0x33, 0x1f, 0xec, 0x68, 0x6e, + 0xca, 0xac, 0xe5, 0xe8, +}; +static const unsigned char kat2476_addin1[] = { + 0xca, 0x9c, 0x53, 0xa0, 0xee, 0xb5, 0x21, 0xe8, 0x38, 0x9b, 0x9e, 0x95, + 0xcc, 0x17, 0x32, 0x1d, 0x3d, 0xf1, 0xff, 0x77, 0x4a, 0xae, 0x6a, 0x11, + 0x2b, 0xbe, 0xb7, 0x0b, 0xbd, 0x41, 0x11, 0x25, 0x2b, 0x65, 0x38, 0x7d, + 0x20, 0x38, 0x09, 0x71, +}; +static const unsigned char kat2476_retbits[] = { + 0x3a, 0xe8, 0x01, 0x30, 0x21, 0x49, 0x71, 0xbc, 0x72, 0x90, 0x44, 0x0e, + 0xf0, 0x52, 0x78, 0xff, 0xc6, 0xf0, 0x12, 0x34, 0xba, 0x93, 0x5a, 0x74, + 0x2a, 0x48, 0xc6, 0xe7, 0x10, 0xa7, 0x55, 0x78, 0x2a, 0x1c, 0xeb, 0x34, + 0x7e, 0x0a, 0x14, 0xa2, 0xa3, 0x91, 0xb5, 0xe3, 0x7a, 0xa7, 0xc1, 0x4c, + 0x20, 0xe6, 0xd1, 0xba, 0xf1, 0x44, 0x1f, 0xa5, 0x03, 0x46, 0xe3, 0x3f, + 0x7a, 0x2d, 0x09, 0x41, +}; +static const struct drbg_kat_pr_false kat2476_t = { + 0, kat2476_entropyin, kat2476_nonce, kat2476_persstr, + kat2476_entropyinreseed, kat2476_addinreseed, kat2476_addin0, + kat2476_addin1, kat2476_retbits +}; +static const struct drbg_kat kat2476 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2476_t +}; + +static const unsigned char kat2477_entropyin[] = { + 0x0c, 0xcc, 0x21, 0x28, 0x0b, 0x7c, 0x13, 0x98, 0x43, 0x5f, 0x6a, 0xac, + 0xe9, 0x9a, 0xdd, 0xae, 0xc7, 0xf8, 0x7a, 0x92, 0x7b, 0xca, 0x44, 0x17, + 0x89, 0x3e, 0xd8, 0x05, 0x4e, 0x76, 0xef, 0xe3, 0x50, 0x55, 0xb2, 0xb5, + 0x38, 0x7d, 0xb5, 0x2f, +}; +static const unsigned char kat2477_nonce[] = {0}; +static const unsigned char kat2477_persstr[] = {0}; +static const unsigned char kat2477_entropyinreseed[] = { + 0x3e, 0x85, 0x27, 0xc8, 0xd7, 0x7e, 0xd8, 0xa4, 0xf5, 0x2f, 0x31, 0xbf, + 0x0e, 0xdc, 0xf9, 0xa3, 0x1c, 0x4f, 0x1d, 0xe5, 0xe4, 0xe3, 0xcb, 0x5c, + 0x78, 0xab, 0x8d, 0x63, 0x6d, 0x0d, 0xd8, 0xbc, 0xbf, 0xd2, 0xb6, 0x41, + 0x26, 0xf8, 0x3f, 0xeb, +}; +static const unsigned char kat2477_addinreseed[] = { + 0xc3, 0xbb, 0x4b, 0x5e, 0x8f, 0x2d, 0xf5, 0xcc, 0x88, 0xb1, 0x38, 0xb1, + 0x78, 0xf9, 0x35, 0xa1, 0xbd, 0xca, 0xbd, 0x64, 0xb4, 0x6e, 0xda, 0x01, + 0xdc, 0x00, 0x9b, 0x13, 0xd0, 0x58, 0xf6, 0x14, 0xe0, 0x3b, 0x4f, 0x70, + 0xd7, 0x2c, 0x13, 0x45, +}; +static const unsigned char kat2477_addin0[] = { + 0xda, 0x26, 0x87, 0x24, 0xb0, 0x24, 0x42, 0x9a, 0xe2, 0x28, 0x1b, 0x5f, + 0x18, 0xb0, 0x40, 0x39, 0x8d, 0x09, 0xc8, 0x50, 0xe2, 0x2b, 0x2a, 0xb1, + 0xea, 0x75, 0x9b, 0x4c, 0xcf, 0x5d, 0x5b, 0x62, 0x46, 0xf3, 0xf8, 0xb7, + 0x85, 0x7e, 0x2e, 0x14, +}; +static const unsigned char kat2477_addin1[] = { + 0x02, 0x7b, 0xfb, 0x02, 0x31, 0x9d, 0x2b, 0xd0, 0x33, 0x34, 0xe0, 0xda, + 0x36, 0xe1, 0x16, 0x77, 0x36, 0xb6, 0xd9, 0x44, 0x05, 0xa5, 0xd5, 0x68, + 0x65, 0xdc, 0x95, 0xca, 0xe9, 0xbf, 0x93, 0x0b, 0xa2, 0xda, 0x12, 0x92, + 0x5b, 0xdd, 0xb8, 0x2e, +}; +static const unsigned char kat2477_retbits[] = { + 0x9d, 0xac, 0x78, 0xad, 0x7e, 0xcf, 0x99, 0x05, 0x87, 0xd7, 0x05, 0x04, + 0xca, 0x5a, 0xc2, 0xff, 0xbc, 0x48, 0x72, 0x6c, 0xb8, 0x16, 0xa7, 0x07, + 0x25, 0x75, 0xe7, 0xa8, 0x81, 0x46, 0x9a, 0xbc, 0x70, 0x43, 0x12, 0x3b, + 0x7b, 0xe1, 0xe7, 0x87, 0xe1, 0x95, 0x5b, 0x1d, 0x7e, 0x56, 0xac, 0x76, + 0x6f, 0x25, 0xd4, 0xef, 0xee, 0xc2, 0x18, 0xa5, 0x2f, 0x5c, 0xfd, 0xcb, + 0xc6, 0x6b, 0x7a, 0x02, +}; +static const struct drbg_kat_pr_false kat2477_t = { + 1, kat2477_entropyin, kat2477_nonce, kat2477_persstr, + kat2477_entropyinreseed, kat2477_addinreseed, kat2477_addin0, + kat2477_addin1, kat2477_retbits +}; +static const struct drbg_kat kat2477 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2477_t +}; + +static const unsigned char kat2478_entropyin[] = { + 0x5c, 0xf7, 0xea, 0x69, 0x73, 0x9d, 0x54, 0x0c, 0xce, 0xde, 0x07, 0x71, + 0xc9, 0x7c, 0x6c, 0xf8, 0xe1, 0xab, 0xb9, 0x6a, 0xd3, 0x90, 0xf3, 0x07, + 0xd9, 0x83, 0xb0, 0x38, 0x8e, 0x8f, 0x69, 0x26, 0x08, 0xf1, 0x51, 0x22, + 0xa8, 0x12, 0xc0, 0x65, +}; +static const unsigned char kat2478_nonce[] = {0}; +static const unsigned char kat2478_persstr[] = {0}; +static const unsigned char kat2478_entropyinreseed[] = { + 0x25, 0x26, 0x94, 0x69, 0x02, 0x0e, 0x6a, 0x83, 0x8b, 0x86, 0x5d, 0xa5, + 0xd5, 0xe7, 0x76, 0x64, 0xb0, 0xcf, 0xa3, 0x59, 0xc5, 0xab, 0xc4, 0xfa, + 0x4d, 0x85, 0xc1, 0x1e, 0x80, 0x6c, 0x94, 0xc2, 0x3b, 0xaa, 0xa1, 0x6f, + 0x10, 0x57, 0x1c, 0x38, +}; +static const unsigned char kat2478_addinreseed[] = { + 0xa6, 0x34, 0x98, 0xbb, 0xe0, 0x99, 0x05, 0x69, 0xff, 0x43, 0x96, 0x52, + 0xd7, 0xe2, 0xf8, 0xa3, 0x8b, 0x09, 0xcf, 0x71, 0x7d, 0x75, 0x05, 0xaa, + 0x2b, 0x26, 0x24, 0x26, 0x4e, 0x81, 0x41, 0x9f, 0x19, 0x57, 0x2d, 0x77, + 0xc1, 0x79, 0x4e, 0x84, +}; +static const unsigned char kat2478_addin0[] = { + 0x97, 0xe7, 0x5e, 0x12, 0x3e, 0xa3, 0x7f, 0x72, 0x5a, 0x19, 0x81, 0xc8, + 0x11, 0x38, 0x45, 0xcc, 0x6c, 0xa8, 0x5e, 0x00, 0xe0, 0x50, 0x76, 0x3d, + 0x9d, 0x81, 0xa7, 0x74, 0x06, 0x8a, 0x02, 0xd7, 0x91, 0xba, 0xe7, 0xbf, + 0x65, 0x61, 0xe6, 0x02, +}; +static const unsigned char kat2478_addin1[] = { + 0xbe, 0xee, 0xb3, 0xfa, 0x55, 0x54, 0x60, 0x9e, 0xb4, 0x82, 0xb8, 0x5e, + 0xf5, 0xc7, 0x12, 0x47, 0xe2, 0xe5, 0xaf, 0x2d, 0xb4, 0x4f, 0x51, 0x51, + 0x94, 0x55, 0xa9, 0x4f, 0x35, 0x41, 0x21, 0x5e, 0x65, 0xcf, 0x1a, 0x75, + 0x24, 0x36, 0x24, 0x1b, +}; +static const unsigned char kat2478_retbits[] = { + 0xac, 0xb4, 0x95, 0x38, 0x37, 0x85, 0x4a, 0xc4, 0x06, 0x5c, 0xbc, 0xb7, + 0x3c, 0xfd, 0xc1, 0x04, 0x85, 0x38, 0x2d, 0xae, 0xa4, 0x91, 0xdc, 0xa8, + 0xe8, 0x61, 0xdc, 0x03, 0x3a, 0xb9, 0xcd, 0xaf, 0x83, 0x2c, 0xa6, 0x57, + 0x60, 0x8a, 0x2a, 0x7c, 0xa6, 0xac, 0x00, 0x9a, 0x4a, 0x12, 0x30, 0x8e, + 0x42, 0xa0, 0x65, 0x91, 0x10, 0x0d, 0x98, 0x1d, 0x56, 0x65, 0x71, 0x67, + 0x12, 0x4c, 0xa5, 0x9f, +}; +static const struct drbg_kat_pr_false kat2478_t = { + 2, kat2478_entropyin, kat2478_nonce, kat2478_persstr, + kat2478_entropyinreseed, kat2478_addinreseed, kat2478_addin0, + kat2478_addin1, kat2478_retbits +}; +static const struct drbg_kat kat2478 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2478_t +}; + +static const unsigned char kat2479_entropyin[] = { + 0xc8, 0x08, 0x18, 0x8a, 0x67, 0x3f, 0xef, 0xb0, 0x4b, 0x5b, 0xd6, 0x34, + 0x5d, 0xcc, 0x64, 0x5f, 0x1e, 0xa9, 0x8f, 0xbc, 0xa5, 0xbb, 0xd7, 0xe4, + 0xc9, 0x30, 0x10, 0x21, 0x0a, 0x24, 0x8d, 0xc1, 0x38, 0xbb, 0xb9, 0x93, + 0x81, 0x18, 0x70, 0x0d, +}; +static const unsigned char kat2479_nonce[] = {0}; +static const unsigned char kat2479_persstr[] = {0}; +static const unsigned char kat2479_entropyinreseed[] = { + 0xad, 0x1d, 0x2d, 0x49, 0xf4, 0x5a, 0x70, 0xa1, 0xa5, 0xb9, 0xb3, 0x64, + 0xdd, 0xdc, 0x1c, 0xda, 0xed, 0xfa, 0x1b, 0x33, 0x1e, 0xc9, 0x20, 0x6d, + 0x12, 0xfe, 0x33, 0xef, 0xc3, 0x13, 0xab, 0xc6, 0x80, 0xa9, 0x4e, 0x40, + 0x4c, 0xaf, 0x36, 0x5e, +}; +static const unsigned char kat2479_addinreseed[] = { + 0xae, 0xb5, 0xd9, 0x58, 0x88, 0xd3, 0x6b, 0xe6, 0x9e, 0xc8, 0xca, 0xf8, + 0x30, 0x58, 0xf2, 0x89, 0xd4, 0x87, 0x7d, 0x54, 0xea, 0x29, 0x10, 0xdc, + 0x77, 0x7a, 0xd5, 0x8a, 0xbc, 0x29, 0x82, 0xd6, 0x34, 0xf2, 0x05, 0x45, + 0xc4, 0xbf, 0x45, 0x3e, +}; +static const unsigned char kat2479_addin0[] = { + 0xb1, 0xc9, 0xb5, 0xd0, 0x4a, 0xa6, 0x92, 0xf3, 0xe0, 0x1e, 0x14, 0xf3, + 0x18, 0x88, 0x06, 0x1e, 0x04, 0x0a, 0xf0, 0x39, 0x91, 0x92, 0x36, 0x83, + 0x92, 0x3a, 0xcc, 0x1a, 0x2d, 0x71, 0x84, 0x34, 0xe2, 0x45, 0xc1, 0x1d, + 0x3a, 0xf2, 0xfc, 0x7d, +}; +static const unsigned char kat2479_addin1[] = { + 0x3f, 0x6f, 0x59, 0x9e, 0x76, 0xfe, 0x68, 0xcc, 0x20, 0x62, 0x29, 0x73, + 0x87, 0x3a, 0x07, 0x68, 0xcb, 0x81, 0x36, 0x3b, 0xcd, 0x15, 0x54, 0xac, + 0xf5, 0xb1, 0xe2, 0xd3, 0xbf, 0x9e, 0xda, 0x3e, 0xfc, 0x5d, 0xb3, 0xbc, + 0xa1, 0x20, 0xf8, 0x9c, +}; +static const unsigned char kat2479_retbits[] = { + 0x44, 0x7e, 0x79, 0x8b, 0x8b, 0x16, 0x65, 0x8e, 0x07, 0xca, 0x04, 0xde, + 0xf6, 0x3a, 0x72, 0xa2, 0xbb, 0x27, 0x92, 0x6c, 0x8e, 0x49, 0xe4, 0x46, + 0x4d, 0x82, 0x78, 0x3c, 0x69, 0xca, 0x44, 0x67, 0xd1, 0xf5, 0x99, 0xa9, + 0x82, 0xa7, 0xbb, 0x36, 0x98, 0xc0, 0xa0, 0x24, 0x46, 0xbd, 0x3a, 0xb4, + 0x2e, 0x1f, 0x97, 0xdc, 0x28, 0x76, 0x41, 0xb1, 0xcb, 0x61, 0x4d, 0xed, + 0x2b, 0xf9, 0x7f, 0x83, +}; +static const struct drbg_kat_pr_false kat2479_t = { + 3, kat2479_entropyin, kat2479_nonce, kat2479_persstr, + kat2479_entropyinreseed, kat2479_addinreseed, kat2479_addin0, + kat2479_addin1, kat2479_retbits +}; +static const struct drbg_kat kat2479 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2479_t +}; + +static const unsigned char kat2480_entropyin[] = { + 0x71, 0xf9, 0x6f, 0x32, 0x21, 0xee, 0xa6, 0xf0, 0x28, 0x8f, 0x78, 0x30, + 0x8a, 0x14, 0x2c, 0xa2, 0xd8, 0x4d, 0xa6, 0xdd, 0x9f, 0x9f, 0x4a, 0xf7, + 0x2b, 0x22, 0xbf, 0xd7, 0x2e, 0x19, 0x02, 0x86, 0x66, 0x25, 0xa8, 0x8b, + 0x49, 0x3e, 0xdf, 0x0d, +}; +static const unsigned char kat2480_nonce[] = {0}; +static const unsigned char kat2480_persstr[] = {0}; +static const unsigned char kat2480_entropyinreseed[] = { + 0x3a, 0xb0, 0x12, 0x99, 0x55, 0xb5, 0xfa, 0x5b, 0xa4, 0x36, 0x94, 0x87, + 0xd1, 0xca, 0xd5, 0x0b, 0x2b, 0xef, 0x64, 0x60, 0x00, 0xe4, 0xe8, 0xac, + 0x5b, 0xf8, 0x3f, 0xd8, 0xdf, 0x54, 0xc5, 0x72, 0xf7, 0xa8, 0x90, 0x1e, + 0x7a, 0xea, 0xd7, 0x63, +}; +static const unsigned char kat2480_addinreseed[] = { + 0x8a, 0xde, 0x69, 0x4e, 0x5c, 0x68, 0xc1, 0x3f, 0xe0, 0x62, 0x82, 0xa8, + 0x98, 0x31, 0xbd, 0x77, 0xbb, 0x68, 0xcd, 0x55, 0xb6, 0xcf, 0x03, 0xdd, + 0x13, 0x38, 0x36, 0xbc, 0xec, 0x4a, 0x4d, 0xe8, 0xec, 0xf7, 0xb8, 0xf9, + 0x43, 0xe7, 0x55, 0xbe, +}; +static const unsigned char kat2480_addin0[] = { + 0x9c, 0x42, 0xe9, 0x18, 0x1d, 0xf5, 0xf1, 0xff, 0x0b, 0x51, 0xf0, 0x3a, + 0x56, 0xca, 0x3b, 0xf6, 0x97, 0xa6, 0xe2, 0xbd, 0x15, 0xf2, 0xc3, 0x42, + 0x1f, 0x82, 0x44, 0xc8, 0x21, 0xa5, 0x5a, 0x17, 0xfb, 0xd4, 0x52, 0x60, + 0x83, 0x6c, 0xf4, 0xd7, +}; +static const unsigned char kat2480_addin1[] = { + 0xaa, 0xe4, 0xb0, 0xed, 0xcd, 0xe2, 0xfe, 0x4e, 0x31, 0xb4, 0x26, 0xab, + 0xaa, 0xde, 0xb3, 0xe6, 0xcb, 0x5d, 0x55, 0xbf, 0xb1, 0x27, 0x44, 0x24, + 0x3c, 0xaa, 0xca, 0xc7, 0xce, 0x50, 0xca, 0xdc, 0x84, 0xd9, 0x60, 0x5c, + 0xe4, 0x3a, 0x7f, 0x2b, +}; +static const unsigned char kat2480_retbits[] = { + 0x57, 0x31, 0x2a, 0x0f, 0x7d, 0x0a, 0x6f, 0xc8, 0x9f, 0x9b, 0xc2, 0xef, + 0xac, 0xa3, 0xf5, 0x8d, 0x71, 0x8b, 0xeb, 0x77, 0x91, 0x60, 0xb5, 0xd5, + 0xed, 0xda, 0xd2, 0x3a, 0x13, 0x76, 0x5f, 0xb3, 0x68, 0x50, 0x28, 0xda, + 0x92, 0xb1, 0xeb, 0xa7, 0x3a, 0x2e, 0x71, 0x55, 0xcb, 0x7b, 0x35, 0xfb, + 0x12, 0x4a, 0x90, 0x8a, 0xbd, 0x28, 0x61, 0x76, 0x13, 0x15, 0xcd, 0x38, + 0xe8, 0x3a, 0xb9, 0x1f, +}; +static const struct drbg_kat_pr_false kat2480_t = { + 4, kat2480_entropyin, kat2480_nonce, kat2480_persstr, + kat2480_entropyinreseed, kat2480_addinreseed, kat2480_addin0, + kat2480_addin1, kat2480_retbits +}; +static const struct drbg_kat kat2480 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2480_t +}; + +static const unsigned char kat2481_entropyin[] = { + 0xb3, 0x0a, 0xe4, 0x4c, 0xf6, 0x77, 0x2c, 0xb8, 0xfb, 0xc5, 0x7d, 0x04, + 0x03, 0x31, 0x1f, 0xd0, 0x25, 0x84, 0x8c, 0x78, 0xa0, 0x75, 0x7b, 0x19, + 0x3c, 0xa6, 0x77, 0x45, 0xe3, 0x31, 0x82, 0x3e, 0xd8, 0x0e, 0xac, 0xe3, + 0xef, 0x87, 0x89, 0xb1, +}; +static const unsigned char kat2481_nonce[] = {0}; +static const unsigned char kat2481_persstr[] = {0}; +static const unsigned char kat2481_entropyinreseed[] = { + 0x9e, 0x02, 0x4c, 0x5f, 0xb9, 0x16, 0x25, 0x12, 0x35, 0xab, 0xfc, 0x41, + 0xc0, 0xce, 0xa7, 0x9f, 0x86, 0xc1, 0xa8, 0xe1, 0xca, 0xa8, 0x4b, 0xe8, + 0x67, 0xa2, 0x4b, 0x8e, 0xcb, 0xe2, 0xfa, 0x6f, 0xdd, 0x51, 0xfd, 0xaa, + 0xac, 0x29, 0x56, 0x86, +}; +static const unsigned char kat2481_addinreseed[] = { + 0xb8, 0x7c, 0x08, 0xdd, 0xa7, 0xd6, 0xfa, 0xe6, 0x5a, 0xdf, 0x87, 0x3d, + 0x9e, 0x57, 0x07, 0x40, 0x55, 0x1f, 0xe1, 0xb9, 0x92, 0x58, 0x88, 0xf3, + 0xeb, 0xc1, 0xce, 0x09, 0xfa, 0x82, 0xd4, 0x06, 0x49, 0xf9, 0x79, 0x1f, + 0x34, 0xb2, 0xf1, 0xef, +}; +static const unsigned char kat2481_addin0[] = { + 0x5d, 0x05, 0x24, 0xe9, 0xf0, 0x03, 0xb2, 0xdd, 0x45, 0x06, 0x47, 0xab, + 0x1b, 0x1f, 0xea, 0x66, 0x71, 0x79, 0x2e, 0xa2, 0xd1, 0xd4, 0xd2, 0xa9, + 0xef, 0xf9, 0x01, 0x03, 0x1b, 0x84, 0x6c, 0x46, 0x5e, 0x9d, 0x97, 0xc5, + 0xa2, 0xe5, 0xee, 0xf0, +}; +static const unsigned char kat2481_addin1[] = { + 0xd6, 0x22, 0x55, 0xcd, 0x5e, 0xb0, 0x99, 0x11, 0xa1, 0xba, 0x2c, 0xa7, + 0x74, 0xc4, 0x5f, 0x96, 0xbb, 0x4c, 0xfb, 0x98, 0x2c, 0xd0, 0xf1, 0xe9, + 0x88, 0x36, 0x2e, 0x3f, 0x2e, 0xb9, 0x81, 0x18, 0xcf, 0x0b, 0x32, 0x90, + 0xe3, 0x71, 0x70, 0xdf, +}; +static const unsigned char kat2481_retbits[] = { + 0x66, 0xb4, 0xa2, 0xd9, 0x81, 0x4d, 0x75, 0xe5, 0x77, 0x82, 0xf2, 0x37, + 0x88, 0x06, 0xdd, 0x5d, 0xde, 0x79, 0x9f, 0xfd, 0xa4, 0xe3, 0xe8, 0x21, + 0x48, 0x89, 0xc5, 0xc5, 0x1c, 0xc6, 0x7a, 0x35, 0x7c, 0xfa, 0x07, 0xc3, + 0x47, 0xdb, 0x51, 0x18, 0x11, 0x09, 0x41, 0xaa, 0x0a, 0x66, 0x33, 0xb6, + 0xa3, 0xf2, 0x2b, 0xa6, 0xf4, 0xe8, 0x3f, 0x34, 0x44, 0x08, 0x1e, 0x03, + 0x7f, 0x21, 0x6a, 0xed, +}; +static const struct drbg_kat_pr_false kat2481_t = { + 5, kat2481_entropyin, kat2481_nonce, kat2481_persstr, + kat2481_entropyinreseed, kat2481_addinreseed, kat2481_addin0, + kat2481_addin1, kat2481_retbits +}; +static const struct drbg_kat kat2481 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2481_t +}; + +static const unsigned char kat2482_entropyin[] = { + 0xaf, 0x19, 0x5e, 0x63, 0xfc, 0x06, 0xb0, 0x1a, 0x27, 0x37, 0x2b, 0x7c, + 0x66, 0x8f, 0xeb, 0x67, 0x8d, 0x54, 0xd1, 0xff, 0x09, 0x21, 0x9d, 0x15, + 0x45, 0xf9, 0xf0, 0x55, 0x57, 0xaa, 0xb2, 0xc6, 0xc8, 0x1d, 0xd8, 0x7a, + 0x3f, 0xc8, 0x6b, 0x5a, +}; +static const unsigned char kat2482_nonce[] = {0}; +static const unsigned char kat2482_persstr[] = {0}; +static const unsigned char kat2482_entropyinreseed[] = { + 0x56, 0x01, 0x10, 0xc7, 0xb0, 0x3a, 0xa0, 0x7d, 0x86, 0x35, 0xab, 0xfe, + 0x69, 0xf0, 0xee, 0xd6, 0x7f, 0x58, 0x18, 0xc5, 0x49, 0x57, 0x43, 0x84, + 0x44, 0x4c, 0x91, 0x9c, 0xf8, 0x42, 0x61, 0x57, 0x50, 0x37, 0xa7, 0xc7, + 0x03, 0x68, 0x1b, 0x19, +}; +static const unsigned char kat2482_addinreseed[] = { + 0x65, 0x71, 0xc5, 0x35, 0xb3, 0x17, 0x20, 0xe9, 0x08, 0xba, 0x48, 0x84, + 0x56, 0x62, 0xc7, 0x3a, 0xb3, 0x35, 0x90, 0x2c, 0xb4, 0xd2, 0x00, 0x03, + 0xd5, 0x6a, 0x32, 0x88, 0xb9, 0x8b, 0x55, 0xe4, 0xee, 0x63, 0xff, 0x38, + 0x6d, 0x55, 0x7c, 0xe8, +}; +static const unsigned char kat2482_addin0[] = { + 0xb0, 0xc4, 0xf8, 0xc3, 0x31, 0x3e, 0xf8, 0x06, 0x23, 0xfe, 0x21, 0x99, + 0x18, 0x0e, 0xdc, 0xcc, 0x7d, 0x0b, 0x15, 0xb3, 0x04, 0x22, 0xfa, 0xf3, + 0x09, 0xfd, 0x29, 0x1d, 0xb6, 0x67, 0xf3, 0x6a, 0x22, 0x64, 0x2e, 0x14, + 0x5a, 0x21, 0x39, 0xd3, +}; +static const unsigned char kat2482_addin1[] = { + 0x44, 0xba, 0x05, 0x84, 0xf5, 0x1d, 0xd4, 0xc4, 0x93, 0xdd, 0x22, 0x0f, + 0xe0, 0x2d, 0x9c, 0x87, 0x56, 0xd3, 0x96, 0xf6, 0x5d, 0xb2, 0xf5, 0x6c, + 0x2f, 0x2a, 0xd2, 0x34, 0x35, 0x74, 0x6e, 0x08, 0xc2, 0xe8, 0x86, 0x9c, + 0xb7, 0x6c, 0xf8, 0x79, +}; +static const unsigned char kat2482_retbits[] = { + 0x6e, 0xdb, 0xc8, 0x7a, 0x9d, 0xa4, 0xa0, 0x0e, 0x81, 0xd7, 0x4c, 0xba, + 0xcf, 0xaa, 0x1d, 0xeb, 0xd1, 0x22, 0x2c, 0x53, 0x0d, 0x39, 0x16, 0xf0, + 0x42, 0xe1, 0x94, 0x67, 0xd2, 0xd5, 0x27, 0xcc, 0x90, 0x8e, 0x74, 0xc8, + 0x76, 0x29, 0x06, 0xac, 0x5b, 0xa5, 0xbf, 0x5d, 0x75, 0x73, 0x91, 0xa9, + 0x21, 0x43, 0x3f, 0x08, 0x0b, 0x61, 0xc4, 0xda, 0x6a, 0xb3, 0xab, 0xb6, + 0x2f, 0x3b, 0xd5, 0x9c, +}; +static const struct drbg_kat_pr_false kat2482_t = { + 6, kat2482_entropyin, kat2482_nonce, kat2482_persstr, + kat2482_entropyinreseed, kat2482_addinreseed, kat2482_addin0, + kat2482_addin1, kat2482_retbits +}; +static const struct drbg_kat kat2482 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2482_t +}; + +static const unsigned char kat2483_entropyin[] = { + 0x29, 0xc8, 0xcb, 0x54, 0x46, 0x58, 0x7d, 0x84, 0xe6, 0x72, 0x1f, 0x13, + 0xa1, 0x26, 0x09, 0xd4, 0x97, 0xbc, 0xa6, 0x86, 0x98, 0x2e, 0x58, 0x5e, + 0xee, 0x82, 0x4d, 0x16, 0x01, 0x52, 0xa3, 0xec, 0xf6, 0x7a, 0x57, 0x8e, + 0xb3, 0x70, 0x02, 0x17, +}; +static const unsigned char kat2483_nonce[] = {0}; +static const unsigned char kat2483_persstr[] = {0}; +static const unsigned char kat2483_entropyinreseed[] = { + 0xa8, 0xd4, 0xe8, 0x1e, 0x5f, 0x8a, 0x5e, 0x47, 0x92, 0x0f, 0x67, 0xf5, + 0xdf, 0x34, 0x7e, 0xb3, 0xb8, 0xe9, 0x3b, 0x67, 0x38, 0x1b, 0x28, 0x16, + 0xd3, 0x04, 0xb9, 0x19, 0xa8, 0xd5, 0xb6, 0x1e, 0x1e, 0x2b, 0xc7, 0x55, + 0x52, 0x01, 0x85, 0xc4, +}; +static const unsigned char kat2483_addinreseed[] = { + 0x13, 0xde, 0xb0, 0x0b, 0xbe, 0x24, 0xd3, 0x97, 0x5b, 0xf0, 0xc5, 0xb1, + 0x9a, 0x16, 0x02, 0x96, 0xb7, 0xfc, 0xde, 0xaf, 0x80, 0x4c, 0x78, 0x4f, + 0x62, 0x3f, 0x17, 0x2c, 0x0d, 0xbf, 0xe6, 0x80, 0xea, 0xc6, 0xcd, 0xde, + 0xc5, 0xf6, 0xb3, 0x2b, +}; +static const unsigned char kat2483_addin0[] = { + 0x60, 0xd9, 0x21, 0xa3, 0xa3, 0x53, 0x23, 0xb8, 0xe2, 0xcd, 0xf1, 0x1a, + 0x30, 0xec, 0xc6, 0x20, 0xd5, 0xac, 0x92, 0xee, 0x03, 0x6d, 0x37, 0xfd, + 0xa8, 0x3a, 0xc6, 0x21, 0x5c, 0xae, 0x58, 0x47, 0xce, 0xcd, 0x46, 0x34, + 0x25, 0xbc, 0x7e, 0xf9, +}; +static const unsigned char kat2483_addin1[] = { + 0x3b, 0x46, 0xae, 0xea, 0x56, 0x79, 0x5e, 0x27, 0x05, 0x24, 0xfa, 0x9b, + 0x2f, 0x52, 0xaa, 0x4a, 0x5a, 0xd7, 0xcd, 0xde, 0x18, 0x27, 0x9f, 0xeb, + 0x6c, 0xde, 0xc9, 0xe3, 0x88, 0xa7, 0x4f, 0x8e, 0x9f, 0x06, 0x9e, 0x67, + 0x39, 0x93, 0x33, 0x16, +}; +static const unsigned char kat2483_retbits[] = { + 0x84, 0xfe, 0xaf, 0x90, 0xf9, 0xf0, 0x32, 0x99, 0x38, 0xad, 0x17, 0xe6, + 0x7d, 0x87, 0x6c, 0xf9, 0xcd, 0x7e, 0x83, 0xc0, 0xca, 0xc7, 0x95, 0xaa, + 0xbf, 0x31, 0x1f, 0xbd, 0x09, 0x0e, 0x37, 0x65, 0x4d, 0x50, 0x3a, 0xe3, + 0x8b, 0x8f, 0x5a, 0x47, 0x98, 0x1b, 0xf7, 0x8d, 0xaa, 0xbb, 0xa0, 0x75, + 0x05, 0xae, 0x87, 0x8b, 0x3d, 0x5e, 0x61, 0x53, 0xfa, 0xdb, 0xda, 0xd8, + 0x2a, 0x3f, 0xbe, 0x46, +}; +static const struct drbg_kat_pr_false kat2483_t = { + 7, kat2483_entropyin, kat2483_nonce, kat2483_persstr, + kat2483_entropyinreseed, kat2483_addinreseed, kat2483_addin0, + kat2483_addin1, kat2483_retbits +}; +static const struct drbg_kat kat2483 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2483_t +}; + +static const unsigned char kat2484_entropyin[] = { + 0xfe, 0xde, 0x3d, 0xd7, 0x49, 0xe6, 0xa4, 0x3e, 0xbe, 0xf0, 0x37, 0xc4, + 0x72, 0x41, 0xf6, 0xbb, 0xdc, 0xf8, 0xf5, 0xbd, 0xa6, 0xf8, 0x1b, 0x2f, + 0xe9, 0x88, 0xe1, 0xcf, 0x7b, 0x1c, 0x46, 0x6a, 0x9f, 0x94, 0x45, 0x03, + 0xd2, 0xab, 0x4c, 0x70, +}; +static const unsigned char kat2484_nonce[] = {0}; +static const unsigned char kat2484_persstr[] = {0}; +static const unsigned char kat2484_entropyinreseed[] = { + 0x5a, 0xe4, 0x95, 0x63, 0x20, 0xd7, 0x42, 0xcb, 0x5b, 0x73, 0x3a, 0xe1, + 0x3d, 0xcf, 0xcb, 0xcb, 0xaf, 0xee, 0x30, 0x46, 0xf7, 0xbb, 0x9f, 0xe2, + 0x09, 0x61, 0xfc, 0xf3, 0xa3, 0x7e, 0x9b, 0x40, 0xf2, 0x11, 0xc6, 0x18, + 0xc7, 0xf7, 0xf4, 0xc9, +}; +static const unsigned char kat2484_addinreseed[] = { + 0x96, 0xa2, 0x7b, 0x07, 0x59, 0xa3, 0xb8, 0xa9, 0x8c, 0x17, 0x23, 0xde, + 0xce, 0xd5, 0xeb, 0xb7, 0x5b, 0x3d, 0xea, 0x78, 0xbb, 0xd4, 0x56, 0x65, + 0x54, 0x38, 0x07, 0x45, 0x1d, 0x60, 0xa3, 0x03, 0x8d, 0xd3, 0xa6, 0x4b, + 0xbb, 0x15, 0x57, 0x0d, +}; +static const unsigned char kat2484_addin0[] = { + 0x25, 0x1f, 0xd8, 0x47, 0x99, 0x6a, 0xdf, 0x57, 0x65, 0x73, 0x97, 0x6a, + 0x95, 0x9e, 0x7e, 0xc2, 0xb2, 0x7c, 0x43, 0xa6, 0x4f, 0x02, 0x29, 0x6a, + 0xf5, 0x95, 0xd0, 0x67, 0x4f, 0xc4, 0xcd, 0xce, 0xfe, 0x9d, 0x2b, 0x99, + 0xe9, 0xed, 0x79, 0x4a, +}; +static const unsigned char kat2484_addin1[] = { + 0x79, 0xbd, 0x72, 0xd9, 0x61, 0xcd, 0x47, 0xbd, 0xa4, 0x36, 0x0b, 0x07, + 0x10, 0x1c, 0x11, 0xdf, 0xff, 0xef, 0xf5, 0xf7, 0xed, 0x98, 0xaf, 0x23, + 0xc0, 0x7a, 0x4a, 0x1b, 0x52, 0x8a, 0x5b, 0x5f, 0x63, 0x06, 0x4c, 0x16, + 0xe2, 0xfd, 0x29, 0x9c, +}; +static const unsigned char kat2484_retbits[] = { + 0x37, 0x17, 0x2d, 0x13, 0x63, 0xef, 0x96, 0xf0, 0xab, 0x42, 0x2e, 0x6d, + 0xf0, 0xe3, 0x16, 0x0f, 0x6c, 0xfb, 0x20, 0x2c, 0x98, 0x2d, 0x5f, 0x1f, + 0x14, 0x38, 0xb6, 0x99, 0xf2, 0x52, 0x96, 0x10, 0xc2, 0x32, 0xcb, 0xbc, + 0x26, 0xfc, 0xe9, 0xd1, 0xfd, 0x53, 0x4e, 0x24, 0x67, 0xff, 0x79, 0xbc, + 0x16, 0x20, 0x3a, 0xd5, 0x1b, 0x88, 0x51, 0xe3, 0x7c, 0x54, 0xfe, 0xb3, + 0xec, 0x47, 0x1c, 0x02, +}; +static const struct drbg_kat_pr_false kat2484_t = { + 8, kat2484_entropyin, kat2484_nonce, kat2484_persstr, + kat2484_entropyinreseed, kat2484_addinreseed, kat2484_addin0, + kat2484_addin1, kat2484_retbits +}; +static const struct drbg_kat kat2484 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2484_t +}; + +static const unsigned char kat2485_entropyin[] = { + 0x43, 0xfe, 0xbb, 0xb0, 0xe2, 0x55, 0xfc, 0x22, 0x48, 0x7e, 0x42, 0xe9, + 0xc8, 0xe9, 0x9f, 0x39, 0xa1, 0x26, 0x47, 0x12, 0x2a, 0x6b, 0xcc, 0xac, + 0x8a, 0x1f, 0x9c, 0x13, 0x92, 0xd0, 0xc1, 0x31, 0x8a, 0x3c, 0x88, 0x07, + 0x5d, 0xb9, 0x0c, 0x5f, +}; +static const unsigned char kat2485_nonce[] = {0}; +static const unsigned char kat2485_persstr[] = {0}; +static const unsigned char kat2485_entropyinreseed[] = { + 0x94, 0x9f, 0xe1, 0x25, 0x48, 0xe2, 0x23, 0x81, 0x11, 0x66, 0x4f, 0x87, + 0xbc, 0x82, 0xf0, 0x59, 0xc4, 0xb4, 0x4d, 0x89, 0xc4, 0x52, 0x6f, 0x7b, + 0x4d, 0xc4, 0x33, 0xaa, 0x7d, 0xae, 0xde, 0x68, 0x01, 0x92, 0xe6, 0xf0, + 0xe7, 0xe5, 0xe4, 0xa5, +}; +static const unsigned char kat2485_addinreseed[] = { + 0x5d, 0x63, 0x7e, 0x1b, 0x0b, 0xfd, 0x8c, 0xe1, 0x44, 0xb8, 0xa2, 0xab, + 0xb7, 0x7f, 0x23, 0x75, 0x69, 0x6c, 0xd8, 0x49, 0xd9, 0x95, 0x8a, 0xc3, + 0x20, 0xe9, 0xf3, 0xb8, 0x82, 0x1d, 0x7f, 0x82, 0x66, 0x0a, 0x17, 0x9d, + 0xa2, 0x3d, 0x78, 0xdc, +}; +static const unsigned char kat2485_addin0[] = { + 0x72, 0xb5, 0x4b, 0xe0, 0x8e, 0xf3, 0xf2, 0xb6, 0x69, 0xb1, 0x6a, 0xf3, + 0x5f, 0x78, 0x03, 0x2f, 0x9b, 0xac, 0x62, 0xea, 0x9e, 0xe8, 0x14, 0x69, + 0x57, 0x4c, 0xaa, 0x78, 0x5b, 0xb1, 0x72, 0xe4, 0xa6, 0xc0, 0x42, 0x63, + 0x00, 0xac, 0xec, 0xbb, +}; +static const unsigned char kat2485_addin1[] = { + 0x89, 0x46, 0xbe, 0x1f, 0x45, 0x66, 0xff, 0x64, 0x9e, 0x72, 0xe7, 0x58, + 0x59, 0x9b, 0xcc, 0x93, 0xb0, 0x82, 0x8d, 0xc0, 0x85, 0x66, 0xf4, 0x69, + 0x74, 0xef, 0xe3, 0xff, 0x16, 0xe8, 0x1e, 0x17, 0x96, 0x31, 0xf5, 0x8f, + 0xea, 0x17, 0x6f, 0x76, +}; +static const unsigned char kat2485_retbits[] = { + 0x6c, 0xe8, 0x17, 0xa6, 0xda, 0x4f, 0x99, 0x3e, 0xe6, 0x82, 0xca, 0x8b, + 0x5b, 0x7a, 0x3a, 0xcf, 0x92, 0xad, 0x26, 0x0c, 0xf7, 0xc6, 0x5c, 0x3a, + 0x49, 0xa8, 0x87, 0x71, 0x64, 0xfe, 0x6a, 0x3f, 0xda, 0x64, 0x26, 0x00, + 0xe4, 0x6d, 0x11, 0x41, 0x49, 0x85, 0x0c, 0x69, 0x05, 0xbb, 0x88, 0xe9, + 0xc2, 0x16, 0xd9, 0x04, 0xfc, 0xb4, 0xcc, 0x81, 0xe0, 0xec, 0xc3, 0x41, + 0xfc, 0x8c, 0xa1, 0x4c, +}; +static const struct drbg_kat_pr_false kat2485_t = { + 9, kat2485_entropyin, kat2485_nonce, kat2485_persstr, + kat2485_entropyinreseed, kat2485_addinreseed, kat2485_addin0, + kat2485_addin1, kat2485_retbits +}; +static const struct drbg_kat kat2485 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2485_t +}; + +static const unsigned char kat2486_entropyin[] = { + 0x3c, 0x80, 0xfd, 0x7d, 0x57, 0xdd, 0x2f, 0x47, 0x74, 0x48, 0x95, 0x18, + 0x93, 0xd2, 0xda, 0x13, 0x1f, 0x69, 0x91, 0x3f, 0x3b, 0x8f, 0xb9, 0xbe, + 0xc9, 0x94, 0x88, 0x4f, 0x3b, 0xb1, 0xb2, 0xa6, 0x41, 0x41, 0x2c, 0x39, + 0xf6, 0xf9, 0x62, 0x20, +}; +static const unsigned char kat2486_nonce[] = {0}; +static const unsigned char kat2486_persstr[] = {0}; +static const unsigned char kat2486_entropyinreseed[] = { + 0x19, 0xc1, 0x21, 0xd7, 0x34, 0x5b, 0x62, 0x41, 0x63, 0x48, 0x71, 0x56, + 0x8f, 0xc5, 0x5a, 0x89, 0x6d, 0xef, 0x1a, 0x49, 0x48, 0xa6, 0xd5, 0x96, + 0xaa, 0xc4, 0xef, 0x87, 0x48, 0xb0, 0x3f, 0x29, 0x6f, 0xab, 0xff, 0x7b, + 0xc9, 0x88, 0x84, 0xaf, +}; +static const unsigned char kat2486_addinreseed[] = { + 0x8b, 0xf2, 0xdb, 0xbe, 0x53, 0xf2, 0x29, 0x30, 0x42, 0xa4, 0xd1, 0x2b, + 0x58, 0x4b, 0xcc, 0xee, 0x01, 0xa8, 0x38, 0xf4, 0xdd, 0x56, 0xea, 0xfb, + 0x14, 0x27, 0xed, 0x3e, 0xa5, 0x90, 0xe7, 0x08, 0xa8, 0x4e, 0x70, 0x78, + 0x7c, 0xe0, 0x91, 0xb2, +}; +static const unsigned char kat2486_addin0[] = { + 0xa8, 0x9d, 0x02, 0x9b, 0x51, 0xae, 0xc5, 0x64, 0x63, 0xe1, 0xba, 0x11, + 0x74, 0x0c, 0x19, 0x2b, 0x1d, 0x6f, 0xa6, 0x9e, 0xbc, 0x49, 0x06, 0x8f, + 0x5b, 0xeb, 0xc6, 0x44, 0x72, 0x19, 0x70, 0xb9, 0xbf, 0x05, 0x4f, 0x9d, + 0xbf, 0xbb, 0xa4, 0x42, +}; +static const unsigned char kat2486_addin1[] = { + 0x11, 0xcb, 0xb1, 0x2b, 0x24, 0x66, 0xd2, 0x4f, 0x5c, 0x17, 0x12, 0x6e, + 0xb8, 0x11, 0x0e, 0x99, 0xef, 0xc6, 0x63, 0xbf, 0xde, 0x92, 0x0e, 0x51, + 0x8b, 0xcb, 0xf8, 0xd5, 0x8f, 0x21, 0x8d, 0xb8, 0xe9, 0xb2, 0xf3, 0xc0, + 0x7e, 0x9d, 0xbb, 0x35, +}; +static const unsigned char kat2486_retbits[] = { + 0x95, 0x32, 0x35, 0x19, 0x3f, 0x7d, 0x3a, 0xe1, 0x76, 0x72, 0xa8, 0x59, + 0x60, 0x51, 0xa4, 0xe3, 0xc3, 0xaf, 0x54, 0x29, 0x89, 0xa4, 0x87, 0x87, + 0x96, 0xbd, 0x5c, 0xbe, 0xd7, 0xab, 0xfc, 0x6b, 0x7b, 0x67, 0x68, 0x3d, + 0x3b, 0x92, 0x34, 0xe2, 0xd7, 0x24, 0x73, 0x27, 0x65, 0x63, 0x5b, 0x0e, + 0x3c, 0x35, 0xf0, 0xf0, 0xba, 0x06, 0x7b, 0xa4, 0x42, 0xd6, 0x73, 0x4d, + 0x3b, 0xf7, 0x81, 0xcb, +}; +static const struct drbg_kat_pr_false kat2486_t = { + 10, kat2486_entropyin, kat2486_nonce, kat2486_persstr, + kat2486_entropyinreseed, kat2486_addinreseed, kat2486_addin0, + kat2486_addin1, kat2486_retbits +}; +static const struct drbg_kat kat2486 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2486_t +}; + +static const unsigned char kat2487_entropyin[] = { + 0xae, 0x21, 0x08, 0xea, 0x13, 0x17, 0x3d, 0xb8, 0x4e, 0x13, 0x35, 0x23, + 0x73, 0x44, 0x8d, 0xa4, 0xbb, 0xa9, 0xfc, 0xdd, 0x9c, 0x2f, 0x87, 0x73, + 0x16, 0xad, 0x6f, 0x29, 0x25, 0x96, 0x85, 0x0a, 0x15, 0x36, 0xa0, 0x4c, + 0x3d, 0xe9, 0x63, 0x7b, +}; +static const unsigned char kat2487_nonce[] = {0}; +static const unsigned char kat2487_persstr[] = {0}; +static const unsigned char kat2487_entropyinreseed[] = { + 0xc7, 0xf3, 0x73, 0x42, 0xa1, 0x0e, 0x3d, 0xea, 0x83, 0xec, 0xa4, 0x9f, + 0x46, 0x05, 0x81, 0x13, 0x1a, 0xaf, 0x26, 0x09, 0x49, 0xa6, 0x88, 0x41, + 0xa7, 0x90, 0xec, 0x82, 0x73, 0x86, 0xac, 0x0c, 0xf9, 0x4e, 0x75, 0xda, + 0xcd, 0x38, 0xc2, 0x01, +}; +static const unsigned char kat2487_addinreseed[] = { + 0x7e, 0xc1, 0x69, 0x3f, 0xd6, 0x6e, 0xd9, 0xf7, 0x4f, 0xfd, 0xcc, 0x62, + 0x3d, 0xa0, 0x8c, 0xfb, 0x17, 0x86, 0x1f, 0xbd, 0xed, 0x97, 0x68, 0x20, + 0x8e, 0x91, 0x4a, 0x9f, 0xa6, 0xfc, 0xa7, 0x9e, 0xc8, 0x74, 0x3a, 0x6e, + 0xa3, 0x3f, 0x3f, 0x17, +}; +static const unsigned char kat2487_addin0[] = { + 0xb0, 0x1f, 0x35, 0xa9, 0xc7, 0xe4, 0xd4, 0x61, 0x77, 0x42, 0x62, 0x9d, + 0xb6, 0x9b, 0xff, 0xc3, 0xe2, 0x36, 0x56, 0x04, 0xf0, 0xba, 0xd4, 0x98, + 0x46, 0x2b, 0x25, 0xff, 0x2d, 0x10, 0x87, 0x8e, 0xdc, 0x15, 0xe2, 0x6a, + 0x71, 0x51, 0xbb, 0x89, +}; +static const unsigned char kat2487_addin1[] = { + 0x3d, 0xd2, 0x10, 0xdb, 0xb4, 0x83, 0x13, 0x4a, 0xdf, 0x41, 0x40, 0x74, + 0x9e, 0x1c, 0x62, 0x2d, 0xcc, 0x7b, 0x56, 0x4f, 0x54, 0xb9, 0x82, 0x0c, + 0xe8, 0x63, 0xbf, 0x3f, 0x24, 0x80, 0x49, 0x0b, 0x71, 0xa5, 0xa8, 0x1f, + 0x52, 0x6c, 0x14, 0x32, +}; +static const unsigned char kat2487_retbits[] = { + 0x32, 0xf8, 0x00, 0xf4, 0xe5, 0xcc, 0xb8, 0x30, 0xa9, 0x39, 0xad, 0x74, + 0xb5, 0x90, 0xd9, 0xb6, 0x18, 0xba, 0x89, 0xa5, 0xac, 0x42, 0xa6, 0x92, + 0x3a, 0x02, 0xbc, 0x24, 0x79, 0xd6, 0x1b, 0x7e, 0x47, 0x31, 0xe8, 0x2c, + 0xf0, 0x91, 0x4f, 0x42, 0x8b, 0x2d, 0x77, 0x59, 0xd9, 0x10, 0x97, 0xaf, + 0x70, 0xb1, 0xf8, 0x9d, 0xca, 0xb5, 0xa0, 0x65, 0x2b, 0xa6, 0xea, 0xd5, + 0xaf, 0x8b, 0x88, 0x3a, +}; +static const struct drbg_kat_pr_false kat2487_t = { + 11, kat2487_entropyin, kat2487_nonce, kat2487_persstr, + kat2487_entropyinreseed, kat2487_addinreseed, kat2487_addin0, + kat2487_addin1, kat2487_retbits +}; +static const struct drbg_kat kat2487 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2487_t +}; + +static const unsigned char kat2488_entropyin[] = { + 0x7a, 0x16, 0xdf, 0x57, 0x89, 0x3d, 0xba, 0x05, 0x8d, 0x86, 0x6d, 0x2b, + 0xaf, 0xa9, 0x8f, 0x60, 0x46, 0x34, 0x25, 0x80, 0xdf, 0x4a, 0x9c, 0xac, + 0x9d, 0x32, 0xae, 0x57, 0x44, 0x5f, 0x7b, 0x74, 0xd6, 0x9a, 0x95, 0x9c, + 0x2b, 0x08, 0xba, 0xf9, +}; +static const unsigned char kat2488_nonce[] = {0}; +static const unsigned char kat2488_persstr[] = {0}; +static const unsigned char kat2488_entropyinreseed[] = { + 0x26, 0x5f, 0xbd, 0x8c, 0xc9, 0x8d, 0xee, 0x9b, 0x51, 0x3b, 0xb0, 0xa2, + 0x13, 0x3e, 0x1e, 0x1a, 0x25, 0xa2, 0xb2, 0x02, 0x4a, 0x71, 0x7d, 0x67, + 0xb8, 0x62, 0xde, 0x2a, 0xb6, 0xc1, 0x3a, 0x0f, 0x2a, 0x18, 0x00, 0x22, + 0xc3, 0xbc, 0x67, 0xf2, +}; +static const unsigned char kat2488_addinreseed[] = { + 0x6c, 0x91, 0xd5, 0x7b, 0xef, 0x42, 0x9c, 0xc9, 0x55, 0xa6, 0xe0, 0x2c, + 0x27, 0xe7, 0xcc, 0x3b, 0x0a, 0x3b, 0xdc, 0x74, 0x75, 0x7a, 0x65, 0xb8, + 0xdd, 0xb0, 0xd7, 0x3e, 0xba, 0x21, 0x74, 0x1c, 0x63, 0xd2, 0x44, 0xf6, + 0x2c, 0xf6, 0x7d, 0x31, +}; +static const unsigned char kat2488_addin0[] = { + 0x0d, 0xe0, 0xff, 0x92, 0xfe, 0x53, 0x6a, 0x52, 0x7b, 0x7a, 0x47, 0x52, + 0x75, 0x62, 0xf5, 0x7f, 0xfe, 0x6b, 0xaf, 0x68, 0xd3, 0xd1, 0x98, 0x0e, + 0x83, 0xc6, 0xd4, 0x4f, 0x36, 0x59, 0xba, 0x86, 0xa4, 0xd4, 0xe2, 0xea, + 0x84, 0xa0, 0x22, 0x81, +}; +static const unsigned char kat2488_addin1[] = { + 0x50, 0x46, 0x71, 0x35, 0x41, 0xdd, 0x47, 0xbe, 0x93, 0xb2, 0x04, 0x0e, + 0x2b, 0xc8, 0x34, 0x5e, 0x27, 0xde, 0xe5, 0x6d, 0x1e, 0xe6, 0x03, 0x61, + 0xf7, 0x35, 0xb5, 0x5d, 0x52, 0xfc, 0xcf, 0x3b, 0xa2, 0xbc, 0x9e, 0xa6, + 0xdf, 0xbb, 0x57, 0x1b, +}; +static const unsigned char kat2488_retbits[] = { + 0x81, 0x21, 0xa5, 0xfc, 0x3c, 0x26, 0xd1, 0x13, 0xd6, 0xa6, 0x1b, 0xad, + 0xb4, 0x6a, 0xe1, 0x4c, 0x72, 0xbf, 0xd9, 0xc9, 0x89, 0xef, 0xc7, 0xe6, + 0x32, 0xd0, 0x5d, 0x56, 0xbc, 0xfe, 0xb0, 0xb3, 0xf5, 0x93, 0x98, 0x26, + 0xf8, 0x44, 0x46, 0x01, 0x52, 0x93, 0x3b, 0xf5, 0x95, 0xf3, 0xc6, 0xc5, + 0xd4, 0x6d, 0xc3, 0xce, 0xaf, 0x88, 0xfd, 0x72, 0x72, 0xfd, 0x1f, 0x85, + 0x07, 0xf4, 0x7f, 0x1f, +}; +static const struct drbg_kat_pr_false kat2488_t = { + 12, kat2488_entropyin, kat2488_nonce, kat2488_persstr, + kat2488_entropyinreseed, kat2488_addinreseed, kat2488_addin0, + kat2488_addin1, kat2488_retbits +}; +static const struct drbg_kat kat2488 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2488_t +}; + +static const unsigned char kat2489_entropyin[] = { + 0x90, 0x6c, 0x6a, 0x9a, 0x68, 0x01, 0x8b, 0xc1, 0x79, 0x56, 0x09, 0x92, + 0xfa, 0x9a, 0x34, 0xaa, 0x6e, 0x09, 0x8f, 0xad, 0x1f, 0xd1, 0x5b, 0x76, + 0x29, 0x87, 0xa7, 0xde, 0x36, 0xb7, 0x83, 0x6f, 0x3e, 0xe9, 0xe3, 0xbc, + 0xe9, 0x90, 0xfa, 0x6f, +}; +static const unsigned char kat2489_nonce[] = {0}; +static const unsigned char kat2489_persstr[] = {0}; +static const unsigned char kat2489_entropyinreseed[] = { + 0xc8, 0xc2, 0xe1, 0x29, 0x12, 0x3a, 0x91, 0xa7, 0xa2, 0x1b, 0x4c, 0xcb, + 0xde, 0x61, 0xd7, 0x69, 0x8f, 0xaa, 0xd2, 0x63, 0x78, 0xe4, 0x2d, 0xd7, + 0xba, 0x5f, 0x52, 0x52, 0xde, 0xbe, 0x43, 0xb2, 0xf9, 0x40, 0x71, 0x8f, + 0xbb, 0xc0, 0xd6, 0x5e, +}; +static const unsigned char kat2489_addinreseed[] = { + 0x58, 0xa7, 0xa4, 0xcd, 0x2b, 0x1f, 0x08, 0x76, 0x1a, 0x99, 0xf3, 0x84, + 0x32, 0x63, 0x69, 0x3b, 0xab, 0x12, 0xc1, 0x76, 0x44, 0x2f, 0x73, 0x59, + 0x07, 0x0d, 0x07, 0xb8, 0xad, 0xf1, 0x47, 0xea, 0x41, 0xd3, 0x33, 0x93, + 0xc1, 0x97, 0x24, 0xf6, +}; +static const unsigned char kat2489_addin0[] = { + 0xe1, 0x4a, 0x9e, 0x16, 0xf1, 0x55, 0x08, 0x17, 0xb7, 0x52, 0x13, 0x3e, + 0x0d, 0x97, 0xe1, 0x63, 0xd2, 0x27, 0xac, 0x50, 0x3b, 0x0e, 0xec, 0xe5, + 0xba, 0xa1, 0xed, 0xf2, 0x81, 0xd1, 0xca, 0x1f, 0xec, 0x18, 0xe7, 0xca, + 0x9c, 0xf9, 0xda, 0x18, +}; +static const unsigned char kat2489_addin1[] = { + 0xe4, 0xaf, 0x55, 0xe5, 0x80, 0x95, 0xb6, 0x90, 0xfe, 0xc8, 0x7b, 0x17, + 0x8f, 0x50, 0xb7, 0x7a, 0xc6, 0x87, 0x6e, 0x82, 0xe6, 0xca, 0xd2, 0x12, + 0x6d, 0x94, 0x82, 0x55, 0x82, 0xb1, 0x72, 0xa8, 0x68, 0xe1, 0x43, 0x9e, + 0x03, 0x43, 0xfa, 0xc6, +}; +static const unsigned char kat2489_retbits[] = { + 0xcb, 0x7b, 0xf7, 0x1d, 0xd3, 0x98, 0x7f, 0xb0, 0xd9, 0x74, 0x30, 0xca, + 0x48, 0x4c, 0x8b, 0x00, 0x73, 0x5a, 0xa5, 0x93, 0x13, 0x40, 0x9c, 0xc4, + 0x1e, 0x81, 0x8f, 0xf8, 0xbb, 0x4a, 0x17, 0xc9, 0x02, 0x42, 0xee, 0xcf, + 0xf3, 0x3f, 0x30, 0xf0, 0x2c, 0xb3, 0x1d, 0x5d, 0x06, 0x67, 0x8b, 0x1a, + 0x0d, 0xc5, 0xb7, 0x21, 0xcd, 0x5f, 0x18, 0xc9, 0x3b, 0x92, 0x5a, 0x4f, + 0x84, 0x62, 0x5f, 0x6e, +}; +static const struct drbg_kat_pr_false kat2489_t = { + 13, kat2489_entropyin, kat2489_nonce, kat2489_persstr, + kat2489_entropyinreseed, kat2489_addinreseed, kat2489_addin0, + kat2489_addin1, kat2489_retbits +}; +static const struct drbg_kat kat2489 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2489_t +}; + +static const unsigned char kat2490_entropyin[] = { + 0xa0, 0x9f, 0x67, 0x98, 0x86, 0x1a, 0x55, 0x12, 0x2b, 0xa4, 0xc8, 0xca, + 0xb0, 0x18, 0x42, 0x32, 0x33, 0x18, 0x1e, 0x32, 0xb5, 0x33, 0x42, 0x98, + 0x42, 0x8b, 0x01, 0xaa, 0xe3, 0x05, 0x5a, 0x71, 0x3c, 0x31, 0x1f, 0x6d, + 0xa3, 0x49, 0xc4, 0xb0, +}; +static const unsigned char kat2490_nonce[] = {0}; +static const unsigned char kat2490_persstr[] = {0}; +static const unsigned char kat2490_entropyinreseed[] = { + 0x68, 0x37, 0x24, 0x05, 0x40, 0x5f, 0x21, 0xaf, 0x3d, 0xd7, 0x81, 0xf1, + 0x9b, 0xd5, 0x4d, 0x5e, 0x27, 0x5c, 0xc8, 0x65, 0xe6, 0xbb, 0x01, 0x4c, + 0x7c, 0x50, 0x94, 0x50, 0xdb, 0x56, 0x90, 0xe2, 0x87, 0x3c, 0xe6, 0x31, + 0x75, 0xc4, 0x4f, 0x3b, +}; +static const unsigned char kat2490_addinreseed[] = { + 0x35, 0x00, 0x1a, 0x8f, 0xf2, 0x45, 0x7d, 0xe5, 0x31, 0x3f, 0x05, 0x8e, + 0x85, 0x19, 0x29, 0x68, 0x4f, 0x04, 0x02, 0x36, 0x91, 0x77, 0x7b, 0x73, + 0xaa, 0xc7, 0x7f, 0x72, 0x4a, 0x8a, 0x18, 0x58, 0xc0, 0x77, 0x14, 0xc6, + 0xc3, 0xe3, 0x00, 0x75, +}; +static const unsigned char kat2490_addin0[] = { + 0x37, 0xab, 0x67, 0x83, 0x01, 0xab, 0x45, 0xde, 0xca, 0x79, 0x1b, 0x4c, + 0x5b, 0x1a, 0x79, 0x2c, 0x54, 0x22, 0xf2, 0xe3, 0xbe, 0x57, 0xbc, 0xf7, + 0x7d, 0x92, 0x46, 0x8e, 0x25, 0x4d, 0x2d, 0x51, 0x04, 0xfc, 0x76, 0x2c, + 0xfa, 0x34, 0x22, 0x69, +}; +static const unsigned char kat2490_addin1[] = { + 0xcb, 0x7a, 0x66, 0x11, 0xc7, 0xfd, 0x8f, 0xfb, 0x88, 0x4a, 0xb4, 0x17, + 0x66, 0xbf, 0x4a, 0x57, 0x87, 0x8f, 0x18, 0x7d, 0xbb, 0x09, 0xd7, 0xb0, + 0xe7, 0x7d, 0xb4, 0xed, 0x2c, 0xcf, 0xbc, 0xf3, 0xc6, 0x40, 0xa9, 0x34, + 0x8d, 0xec, 0x4e, 0x1f, +}; +static const unsigned char kat2490_retbits[] = { + 0xb1, 0x94, 0xfd, 0x78, 0x6c, 0xfa, 0xb6, 0x68, 0x85, 0xcf, 0xe7, 0xb0, + 0x3d, 0xaf, 0x64, 0x2d, 0xc6, 0x0e, 0xfd, 0x73, 0x99, 0xf6, 0xc4, 0x8d, + 0x3d, 0xf5, 0x03, 0x37, 0xb4, 0x0c, 0x40, 0x34, 0x9b, 0x94, 0xca, 0x50, + 0x90, 0x53, 0x45, 0x1c, 0x34, 0xd6, 0xb8, 0x38, 0xce, 0x19, 0x05, 0xb5, + 0xcd, 0xdb, 0xcf, 0x5d, 0xf1, 0xbe, 0x2a, 0x97, 0x83, 0x40, 0x4b, 0xd0, + 0xb7, 0x2b, 0x52, 0x3d, +}; +static const struct drbg_kat_pr_false kat2490_t = { + 14, kat2490_entropyin, kat2490_nonce, kat2490_persstr, + kat2490_entropyinreseed, kat2490_addinreseed, kat2490_addin0, + kat2490_addin1, kat2490_retbits +}; +static const struct drbg_kat kat2490 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2490_t +}; + +static const unsigned char kat2491_entropyin[] = { + 0x9d, 0xda, 0x17, 0x5d, 0x9f, 0x26, 0xe5, 0x6b, 0x94, 0x49, 0xbb, 0x0c, + 0x9d, 0x02, 0x2c, 0x47, 0x13, 0x8a, 0xe7, 0x8b, 0xa3, 0x8c, 0x35, 0xd1, + 0x5f, 0x2d, 0x2c, 0x55, 0x5d, 0x69, 0xd4, 0xd6, 0x94, 0x5a, 0x57, 0xae, + 0x39, 0x69, 0x62, 0x52, +}; +static const unsigned char kat2491_nonce[] = {0}; +static const unsigned char kat2491_persstr[] = { + 0x08, 0x94, 0x30, 0xcf, 0x99, 0x6e, 0x06, 0xa0, 0xdc, 0x31, 0x32, 0xc8, + 0xaa, 0x6e, 0x3e, 0xdc, 0x76, 0x51, 0xff, 0x4f, 0x01, 0xe7, 0x11, 0x3c, + 0xa3, 0xce, 0x2a, 0x21, 0x5e, 0x10, 0xec, 0x88, 0xad, 0x72, 0x36, 0xb8, + 0x30, 0x7c, 0x85, 0x69, +}; +static const unsigned char kat2491_entropyinreseed[] = { + 0xd7, 0x5a, 0xae, 0x1b, 0x7b, 0xb4, 0x9b, 0x81, 0xff, 0x43, 0xa8, 0xe8, + 0x9f, 0x7b, 0x0c, 0xcb, 0xf6, 0xf6, 0xaf, 0x46, 0x47, 0xa5, 0x57, 0xf7, + 0x6e, 0xd7, 0x3f, 0x09, 0x25, 0x4d, 0x67, 0xff, 0xd7, 0xe3, 0x56, 0x29, + 0x86, 0x86, 0x23, 0x00, +}; +static const unsigned char kat2491_addinreseed[] = {0}; +static const unsigned char kat2491_addin0[] = {0}; +static const unsigned char kat2491_addin1[] = {0}; +static const unsigned char kat2491_retbits[] = { + 0xbc, 0x80, 0x62, 0x76, 0x71, 0xbc, 0xa2, 0x67, 0xba, 0xe1, 0xa0, 0xde, + 0x9e, 0xb9, 0xe4, 0x81, 0xd8, 0x3b, 0x5c, 0xad, 0xe6, 0xe3, 0xc5, 0x08, + 0x24, 0x34, 0xb0, 0xb7, 0x00, 0xf3, 0x15, 0x43, 0x9c, 0x2c, 0xa2, 0xe9, + 0xde, 0xf4, 0x3b, 0x1b, 0xf2, 0x05, 0x84, 0x57, 0x7c, 0xef, 0x5b, 0x61, + 0xc0, 0x68, 0x1e, 0x4b, 0xd4, 0x40, 0xe8, 0x8d, 0xa3, 0x79, 0xa0, 0x21, + 0x4c, 0xf5, 0xf5, 0xcf, +}; +static const struct drbg_kat_pr_false kat2491_t = { + 0, kat2491_entropyin, kat2491_nonce, kat2491_persstr, + kat2491_entropyinreseed, kat2491_addinreseed, kat2491_addin0, + kat2491_addin1, kat2491_retbits +}; +static const struct drbg_kat kat2491 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2491_t +}; + +static const unsigned char kat2492_entropyin[] = { + 0x17, 0x3c, 0x24, 0xd2, 0xf5, 0xc4, 0x19, 0x57, 0xe4, 0x16, 0xb6, 0xc0, + 0x66, 0xa5, 0xad, 0xd4, 0xac, 0xd1, 0xfa, 0xc3, 0xa9, 0xb5, 0x5d, 0x94, + 0x52, 0x60, 0xf5, 0x90, 0x8c, 0xd5, 0xa1, 0x36, 0x48, 0x63, 0x92, 0xb6, + 0x90, 0x37, 0xcb, 0x48, +}; +static const unsigned char kat2492_nonce[] = {0}; +static const unsigned char kat2492_persstr[] = { + 0xe6, 0x24, 0x31, 0xee, 0xfc, 0xd2, 0xb5, 0x7c, 0x74, 0x39, 0xe4, 0xdb, + 0x4d, 0x3d, 0x64, 0x4d, 0xe7, 0x9e, 0x56, 0xc5, 0x2a, 0x7f, 0xa9, 0xff, + 0x1d, 0xc0, 0x90, 0x10, 0x90, 0xa4, 0xc4, 0xa3, 0x7f, 0xa8, 0x2f, 0xae, + 0x4e, 0x32, 0x00, 0xed, +}; +static const unsigned char kat2492_entropyinreseed[] = { + 0xd0, 0x7d, 0xb8, 0x0b, 0x04, 0x64, 0x95, 0xce, 0x43, 0x6c, 0x4a, 0xba, + 0x6c, 0x6a, 0xaa, 0xbb, 0x47, 0xe7, 0x61, 0x09, 0x63, 0x93, 0x0a, 0x18, + 0x47, 0x7f, 0x4f, 0x5d, 0x26, 0xcd, 0xcf, 0xf8, 0x21, 0x3b, 0x7f, 0xec, + 0x69, 0xcb, 0xea, 0x2b, +}; +static const unsigned char kat2492_addinreseed[] = {0}; +static const unsigned char kat2492_addin0[] = {0}; +static const unsigned char kat2492_addin1[] = {0}; +static const unsigned char kat2492_retbits[] = { + 0x09, 0x73, 0x2d, 0xff, 0x5d, 0x83, 0x54, 0xe5, 0x8b, 0x87, 0x78, 0xfe, + 0x1b, 0xa1, 0x32, 0x82, 0x99, 0xb1, 0x06, 0xeb, 0x7d, 0x9f, 0x36, 0x3d, + 0xc1, 0xf6, 0xf1, 0x30, 0x30, 0xdf, 0xcc, 0x06, 0x8b, 0x90, 0x0a, 0xab, + 0xbe, 0x4f, 0x0e, 0xef, 0xfa, 0xfd, 0x14, 0xf8, 0x3a, 0x18, 0x33, 0x3e, + 0x61, 0xcb, 0xac, 0xba, 0x33, 0x87, 0x42, 0xe4, 0xe6, 0x81, 0x4e, 0x92, + 0x0b, 0x87, 0x5d, 0xf4, +}; +static const struct drbg_kat_pr_false kat2492_t = { + 1, kat2492_entropyin, kat2492_nonce, kat2492_persstr, + kat2492_entropyinreseed, kat2492_addinreseed, kat2492_addin0, + kat2492_addin1, kat2492_retbits +}; +static const struct drbg_kat kat2492 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2492_t +}; + +static const unsigned char kat2493_entropyin[] = { + 0x68, 0x4b, 0x47, 0xf0, 0x3f, 0x35, 0x7a, 0xad, 0x28, 0xb3, 0x05, 0xfc, + 0x9e, 0xa1, 0x90, 0x2b, 0x45, 0x01, 0x6e, 0x39, 0x70, 0x89, 0x7d, 0x5e, + 0xab, 0x8d, 0xd1, 0xcc, 0x3e, 0x9d, 0x49, 0xd7, 0xb8, 0xd6, 0xfd, 0xc3, + 0xa1, 0x07, 0x4c, 0x2e, +}; +static const unsigned char kat2493_nonce[] = {0}; +static const unsigned char kat2493_persstr[] = { + 0x3b, 0x2b, 0xc5, 0x55, 0x28, 0x1c, 0x7e, 0x4c, 0x9b, 0x9c, 0xc6, 0x1b, + 0x46, 0x8f, 0x27, 0x95, 0xa6, 0x70, 0x48, 0xc4, 0x4e, 0x07, 0x8b, 0x90, + 0xba, 0xb8, 0x25, 0x20, 0x77, 0x08, 0x7f, 0xa2, 0xd2, 0xab, 0x61, 0xa4, + 0x46, 0xae, 0x3d, 0x8c, +}; +static const unsigned char kat2493_entropyinreseed[] = { + 0x48, 0x1b, 0xa2, 0xf9, 0x64, 0x65, 0x23, 0x47, 0x2b, 0x75, 0x75, 0xbb, + 0x81, 0x43, 0xeb, 0xcf, 0x87, 0xdd, 0xa9, 0x7e, 0x68, 0xc0, 0x37, 0x7e, + 0xdf, 0x24, 0xbf, 0x6f, 0xfc, 0x7d, 0x93, 0x37, 0xa1, 0xa3, 0x3c, 0x74, + 0xb6, 0x5a, 0x44, 0x39, +}; +static const unsigned char kat2493_addinreseed[] = {0}; +static const unsigned char kat2493_addin0[] = {0}; +static const unsigned char kat2493_addin1[] = {0}; +static const unsigned char kat2493_retbits[] = { + 0x84, 0xe4, 0x24, 0x79, 0xf3, 0x96, 0xb3, 0x9a, 0xd3, 0xb9, 0xc9, 0x1b, + 0x5c, 0xe5, 0x91, 0xd3, 0x4c, 0x61, 0x79, 0xf0, 0x6e, 0xf3, 0xe7, 0xd4, + 0x02, 0x2d, 0x64, 0x68, 0xf4, 0xc4, 0xb6, 0xc8, 0x0c, 0xa6, 0xf8, 0xd2, + 0x0d, 0xfc, 0x2c, 0x74, 0x47, 0x44, 0x45, 0xec, 0xc1, 0x4f, 0x99, 0x5b, + 0x08, 0x03, 0x21, 0xfd, 0x24, 0x06, 0x90, 0x9a, 0x6e, 0xc5, 0x60, 0x8c, + 0x21, 0x86, 0x78, 0x52, +}; +static const struct drbg_kat_pr_false kat2493_t = { + 2, kat2493_entropyin, kat2493_nonce, kat2493_persstr, + kat2493_entropyinreseed, kat2493_addinreseed, kat2493_addin0, + kat2493_addin1, kat2493_retbits +}; +static const struct drbg_kat kat2493 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2493_t +}; + +static const unsigned char kat2494_entropyin[] = { + 0x10, 0x56, 0xee, 0xb9, 0xa8, 0xea, 0x89, 0x1a, 0xb8, 0x63, 0x4d, 0x85, + 0x9e, 0x59, 0xa0, 0x32, 0x32, 0x23, 0x6e, 0xa4, 0x0a, 0x6f, 0x42, 0x4b, + 0xaa, 0x47, 0xd0, 0x40, 0xe9, 0x5e, 0xab, 0x9c, 0x2f, 0xc7, 0xad, 0xf7, + 0x39, 0x89, 0xaf, 0xc6, +}; +static const unsigned char kat2494_nonce[] = {0}; +static const unsigned char kat2494_persstr[] = { + 0x9f, 0x02, 0x80, 0xdb, 0x13, 0xa8, 0x03, 0xc1, 0x1c, 0xac, 0x66, 0x48, + 0x4e, 0xb5, 0xe7, 0x31, 0x2b, 0xfa, 0xbe, 0xcc, 0x0b, 0x80, 0xec, 0xe7, + 0x31, 0x8a, 0xb4, 0x93, 0x9e, 0x76, 0x9f, 0xf0, 0xdc, 0x15, 0xf2, 0x67, + 0xad, 0x2b, 0x4a, 0x20, +}; +static const unsigned char kat2494_entropyinreseed[] = { + 0x83, 0x13, 0xd7, 0xe7, 0xde, 0xe9, 0x50, 0x47, 0xd7, 0xcc, 0x78, 0xbe, + 0xa6, 0x83, 0x5a, 0x5f, 0xd8, 0x34, 0xf6, 0x6a, 0x5c, 0x75, 0xfa, 0xba, + 0x80, 0xb5, 0xa7, 0x55, 0x23, 0x3b, 0x03, 0xf7, 0xf6, 0x8e, 0x35, 0xd4, + 0xa2, 0x09, 0xc8, 0xd0, +}; +static const unsigned char kat2494_addinreseed[] = {0}; +static const unsigned char kat2494_addin0[] = {0}; +static const unsigned char kat2494_addin1[] = {0}; +static const unsigned char kat2494_retbits[] = { + 0x33, 0xd5, 0x4c, 0x4f, 0x5b, 0x50, 0x45, 0x43, 0x8d, 0xfb, 0x1e, 0xa6, + 0x01, 0x6f, 0x39, 0x67, 0xef, 0x1f, 0x62, 0xdf, 0x2b, 0x41, 0x71, 0xad, + 0x74, 0x55, 0x98, 0xea, 0x13, 0x38, 0x6c, 0xa2, 0xf1, 0xe7, 0xb1, 0x55, + 0xc4, 0x92, 0xc9, 0xae, 0x78, 0x24, 0x7c, 0xd0, 0xbc, 0x1c, 0xa8, 0xfc, + 0x3b, 0xdc, 0x18, 0xb7, 0xa3, 0xd8, 0x2a, 0x60, 0xf2, 0x77, 0x9e, 0x56, + 0x9c, 0x99, 0x88, 0x26, +}; +static const struct drbg_kat_pr_false kat2494_t = { + 3, kat2494_entropyin, kat2494_nonce, kat2494_persstr, + kat2494_entropyinreseed, kat2494_addinreseed, kat2494_addin0, + kat2494_addin1, kat2494_retbits +}; +static const struct drbg_kat kat2494 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2494_t +}; + +static const unsigned char kat2495_entropyin[] = { + 0x3b, 0xeb, 0x2f, 0x46, 0x28, 0xab, 0x56, 0x99, 0x80, 0xe2, 0x27, 0x43, + 0x2f, 0x6d, 0x08, 0x99, 0x83, 0x6d, 0xdc, 0x27, 0x6a, 0x67, 0xbd, 0xd4, + 0xc7, 0x40, 0x92, 0xf6, 0x14, 0x68, 0xc0, 0x9a, 0x82, 0xc8, 0x2a, 0x79, + 0xb6, 0x1f, 0xb7, 0x24, +}; +static const unsigned char kat2495_nonce[] = {0}; +static const unsigned char kat2495_persstr[] = { + 0xfd, 0xdd, 0x8a, 0x67, 0x8c, 0xff, 0xad, 0x03, 0xc6, 0x88, 0x5c, 0x33, + 0x87, 0x3c, 0xc4, 0xf6, 0xd0, 0xfc, 0x83, 0xee, 0x45, 0x36, 0xca, 0x87, + 0x3f, 0xa3, 0x1d, 0xc1, 0x0a, 0x1a, 0xef, 0x8f, 0x95, 0xf2, 0x0e, 0x05, + 0xcd, 0x25, 0xfd, 0x2a, +}; +static const unsigned char kat2495_entropyinreseed[] = { + 0xb7, 0x72, 0xd2, 0x64, 0x70, 0x18, 0x57, 0x4d, 0x88, 0x33, 0xb4, 0xfe, + 0xb2, 0xec, 0xb6, 0xd3, 0x8d, 0x09, 0xe4, 0x55, 0x71, 0x8b, 0xf6, 0xcd, + 0xa8, 0x30, 0xeb, 0x19, 0xba, 0x6b, 0xc0, 0xe7, 0x51, 0x67, 0x33, 0xdc, + 0x2c, 0xa6, 0x49, 0x29, +}; +static const unsigned char kat2495_addinreseed[] = {0}; +static const unsigned char kat2495_addin0[] = {0}; +static const unsigned char kat2495_addin1[] = {0}; +static const unsigned char kat2495_retbits[] = { + 0x94, 0x36, 0xc3, 0x4b, 0xcb, 0xd7, 0x4f, 0xe3, 0xd6, 0xa8, 0x9b, 0x35, + 0x51, 0xcf, 0x56, 0x9c, 0xd8, 0x34, 0x79, 0xeb, 0x10, 0xaf, 0x31, 0x92, + 0xa3, 0x14, 0xf8, 0x38, 0xfa, 0x77, 0x3c, 0xc5, 0x7e, 0xa0, 0x42, 0xfd, + 0x9c, 0xec, 0xb2, 0x92, 0x3d, 0x74, 0xb4, 0xd0, 0xec, 0x20, 0xb0, 0xa9, + 0xd4, 0x0a, 0x2a, 0xc1, 0xd7, 0x3a, 0xc1, 0x41, 0xf5, 0x65, 0x1d, 0x10, + 0x2b, 0x4b, 0x92, 0xfe, +}; +static const struct drbg_kat_pr_false kat2495_t = { + 4, kat2495_entropyin, kat2495_nonce, kat2495_persstr, + kat2495_entropyinreseed, kat2495_addinreseed, kat2495_addin0, + kat2495_addin1, kat2495_retbits +}; +static const struct drbg_kat kat2495 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2495_t +}; + +static const unsigned char kat2496_entropyin[] = { + 0x97, 0x5f, 0x1b, 0x28, 0x29, 0x53, 0x2c, 0xe3, 0x72, 0xf1, 0x94, 0x4a, + 0x94, 0xe6, 0x48, 0x47, 0x4c, 0x42, 0x4d, 0x36, 0x61, 0x28, 0xd6, 0xbb, + 0x68, 0x3c, 0x7e, 0x80, 0xce, 0xa8, 0xca, 0x48, 0x9c, 0xfb, 0x60, 0x6e, + 0xef, 0x28, 0x2b, 0xcc, +}; +static const unsigned char kat2496_nonce[] = {0}; +static const unsigned char kat2496_persstr[] = { + 0xec, 0x22, 0x05, 0xda, 0xb4, 0x4c, 0xf2, 0x21, 0x01, 0x80, 0xb1, 0xa1, + 0xea, 0xd9, 0x9f, 0xbf, 0x4d, 0x50, 0x0a, 0x61, 0xad, 0x64, 0x78, 0x1c, + 0x1a, 0x7f, 0x46, 0xe0, 0xa3, 0xab, 0xe9, 0x09, 0xd3, 0xcf, 0x5a, 0x11, + 0xb0, 0xd7, 0xf7, 0x62, +}; +static const unsigned char kat2496_entropyinreseed[] = { + 0xb2, 0x86, 0xfe, 0x71, 0x32, 0x3e, 0xf2, 0x8f, 0x92, 0x8a, 0x99, 0x68, + 0x52, 0x21, 0xf8, 0x21, 0x7d, 0x89, 0xe8, 0x0a, 0x38, 0x36, 0xc7, 0x40, + 0xae, 0x03, 0xa7, 0x5d, 0xb8, 0x16, 0xe9, 0x76, 0x1f, 0xc3, 0x76, 0xfc, + 0xe5, 0xe9, 0x98, 0x40, +}; +static const unsigned char kat2496_addinreseed[] = {0}; +static const unsigned char kat2496_addin0[] = {0}; +static const unsigned char kat2496_addin1[] = {0}; +static const unsigned char kat2496_retbits[] = { + 0xf8, 0xb9, 0x85, 0xb4, 0x83, 0xc9, 0xf8, 0x96, 0x93, 0x6d, 0xae, 0x05, + 0x82, 0x2f, 0x99, 0x60, 0x5b, 0xd4, 0x85, 0xfe, 0x36, 0xd4, 0x06, 0xea, + 0x4a, 0x5f, 0x00, 0x1b, 0x1b, 0x67, 0xbe, 0x08, 0x3e, 0x92, 0x50, 0x0a, + 0xf1, 0x89, 0xa4, 0x06, 0x72, 0x0e, 0xa8, 0x72, 0x75, 0x4e, 0x2e, 0xdb, + 0xbc, 0xbf, 0x95, 0x5e, 0x48, 0xa6, 0xf0, 0x57, 0xbe, 0x54, 0xb7, 0x76, + 0x10, 0x0e, 0xdd, 0x07, +}; +static const struct drbg_kat_pr_false kat2496_t = { + 5, kat2496_entropyin, kat2496_nonce, kat2496_persstr, + kat2496_entropyinreseed, kat2496_addinreseed, kat2496_addin0, + kat2496_addin1, kat2496_retbits +}; +static const struct drbg_kat kat2496 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2496_t +}; + +static const unsigned char kat2497_entropyin[] = { + 0x8a, 0x67, 0x74, 0x1d, 0x38, 0xa3, 0xe7, 0x66, 0xf5, 0x61, 0x4d, 0x2f, + 0x70, 0xdc, 0x0b, 0x6a, 0x0e, 0x65, 0xbc, 0x26, 0x13, 0xdc, 0x5b, 0xc7, + 0xc0, 0x95, 0x37, 0x2e, 0x3f, 0x1b, 0xec, 0x55, 0x58, 0xb9, 0x49, 0x7b, + 0x5b, 0x0b, 0x1b, 0xf5, +}; +static const unsigned char kat2497_nonce[] = {0}; +static const unsigned char kat2497_persstr[] = { + 0x0a, 0xcc, 0x8a, 0x38, 0xbf, 0xe2, 0x18, 0x4d, 0x00, 0x2f, 0xe5, 0xb2, + 0x11, 0x90, 0x05, 0xb0, 0xca, 0x43, 0x40, 0xa1, 0x36, 0x9f, 0x05, 0xd6, + 0xf6, 0x46, 0xda, 0xca, 0x0c, 0xaf, 0x72, 0xc7, 0x53, 0xce, 0x7e, 0x90, + 0xce, 0x7c, 0x30, 0xca, +}; +static const unsigned char kat2497_entropyinreseed[] = { + 0xcf, 0x92, 0x8d, 0xa0, 0xeb, 0x64, 0xe5, 0x27, 0x3f, 0x2e, 0x1e, 0x44, + 0x3b, 0x3d, 0x55, 0x17, 0x3e, 0xf0, 0x9b, 0x96, 0x08, 0x48, 0x7d, 0x30, + 0x45, 0xf5, 0xe4, 0xda, 0x5e, 0x2d, 0x51, 0x5a, 0x5b, 0xc2, 0xc2, 0x4e, + 0x3e, 0x76, 0xe6, 0x73, +}; +static const unsigned char kat2497_addinreseed[] = {0}; +static const unsigned char kat2497_addin0[] = {0}; +static const unsigned char kat2497_addin1[] = {0}; +static const unsigned char kat2497_retbits[] = { + 0xaa, 0xd6, 0x7f, 0x68, 0x44, 0x68, 0x10, 0x5b, 0x48, 0xbd, 0xa1, 0x0e, + 0x34, 0xd8, 0x6c, 0x90, 0xc8, 0x53, 0xf3, 0x4c, 0xd5, 0x93, 0xf9, 0xd8, + 0x7b, 0x3b, 0x7b, 0x61, 0x2a, 0x56, 0x7d, 0x87, 0x12, 0xf0, 0x6a, 0xa3, + 0xf7, 0xa5, 0x0d, 0x4e, 0xb6, 0xec, 0x39, 0x9a, 0x70, 0x37, 0xe5, 0x74, + 0x93, 0x38, 0xda, 0xdc, 0x74, 0x36, 0x4b, 0x0a, 0xe7, 0x39, 0x8b, 0x3d, + 0xd4, 0x08, 0x8f, 0x37, +}; +static const struct drbg_kat_pr_false kat2497_t = { + 6, kat2497_entropyin, kat2497_nonce, kat2497_persstr, + kat2497_entropyinreseed, kat2497_addinreseed, kat2497_addin0, + kat2497_addin1, kat2497_retbits +}; +static const struct drbg_kat kat2497 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2497_t +}; + +static const unsigned char kat2498_entropyin[] = { + 0x38, 0xe4, 0xf9, 0xd3, 0x95, 0x66, 0x7a, 0x3e, 0xb1, 0xf8, 0x67, 0xd7, + 0xfd, 0x2d, 0x59, 0x58, 0xe5, 0x7d, 0x04, 0x90, 0x3f, 0xc5, 0x2a, 0x26, + 0x0a, 0x1d, 0xc5, 0xe1, 0x6c, 0x09, 0xfd, 0x33, 0x37, 0x45, 0x49, 0x41, + 0xf3, 0x8b, 0x68, 0xc9, +}; +static const unsigned char kat2498_nonce[] = {0}; +static const unsigned char kat2498_persstr[] = { + 0xd5, 0xc7, 0x16, 0xa6, 0x7c, 0x4c, 0x41, 0xd5, 0x32, 0xde, 0x02, 0x6d, + 0xb3, 0xe6, 0x48, 0x51, 0x2a, 0x8a, 0x53, 0xae, 0x77, 0x54, 0xb2, 0x2e, + 0x7b, 0xb9, 0x0f, 0x86, 0xa4, 0x99, 0xde, 0xe4, 0x2e, 0x6e, 0x3c, 0xd4, + 0x18, 0x4f, 0xda, 0x7a, +}; +static const unsigned char kat2498_entropyinreseed[] = { + 0x8f, 0xf8, 0x9c, 0xf9, 0xb4, 0xb5, 0x3f, 0x12, 0x27, 0xee, 0xeb, 0xba, + 0xa2, 0xbf, 0x7b, 0x65, 0x88, 0x0a, 0x10, 0x40, 0x5d, 0x86, 0x75, 0x8a, + 0x5a, 0x15, 0xf3, 0x9a, 0x98, 0xc0, 0x80, 0x92, 0x79, 0xc2, 0x9a, 0x15, + 0xaa, 0xef, 0x83, 0x5c, +}; +static const unsigned char kat2498_addinreseed[] = {0}; +static const unsigned char kat2498_addin0[] = {0}; +static const unsigned char kat2498_addin1[] = {0}; +static const unsigned char kat2498_retbits[] = { + 0x0c, 0xd2, 0xa6, 0xd0, 0x81, 0xcb, 0x81, 0x9b, 0xb3, 0xb7, 0xb4, 0xee, + 0x5c, 0xce, 0x2f, 0xcb, 0xbd, 0x6e, 0x2d, 0x0b, 0xc2, 0xac, 0x7d, 0xdf, + 0x1b, 0x74, 0xeb, 0x51, 0x54, 0x13, 0xfb, 0xdb, 0x6b, 0x97, 0xeb, 0x03, + 0xf7, 0x1f, 0x2f, 0x10, 0x79, 0xa5, 0x9f, 0x15, 0x8d, 0x0c, 0x05, 0x83, + 0x2f, 0xde, 0xcd, 0xf4, 0x09, 0x48, 0xfe, 0x2f, 0xd7, 0x24, 0xe2, 0xc2, + 0x90, 0xd6, 0x0f, 0x3b, +}; +static const struct drbg_kat_pr_false kat2498_t = { + 7, kat2498_entropyin, kat2498_nonce, kat2498_persstr, + kat2498_entropyinreseed, kat2498_addinreseed, kat2498_addin0, + kat2498_addin1, kat2498_retbits +}; +static const struct drbg_kat kat2498 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2498_t +}; + +static const unsigned char kat2499_entropyin[] = { + 0xf9, 0x5d, 0x71, 0x4d, 0x5d, 0xa5, 0x1e, 0x99, 0x4f, 0x71, 0x8f, 0x4b, + 0x43, 0x4b, 0xe5, 0xc5, 0xa2, 0x65, 0x80, 0x98, 0x8e, 0xcb, 0xf1, 0x57, + 0xbc, 0x2f, 0x21, 0xb8, 0x87, 0xee, 0xf9, 0x69, 0xd8, 0x62, 0x8d, 0x13, + 0xfc, 0xb5, 0x37, 0x32, +}; +static const unsigned char kat2499_nonce[] = {0}; +static const unsigned char kat2499_persstr[] = { + 0x2d, 0xb9, 0xc5, 0xf6, 0xa1, 0x2c, 0xfa, 0xf1, 0x69, 0x40, 0x65, 0x8a, + 0x99, 0x57, 0x2f, 0x9c, 0x6f, 0x68, 0x70, 0x60, 0xa1, 0x44, 0x0a, 0xa5, + 0xcd, 0x31, 0xbf, 0x6f, 0x21, 0x9f, 0x69, 0x80, 0xce, 0xab, 0xce, 0xd2, + 0xf3, 0x62, 0x13, 0x31, +}; +static const unsigned char kat2499_entropyinreseed[] = { + 0x57, 0x7f, 0x4b, 0xf6, 0x80, 0xc0, 0xb0, 0xf4, 0x44, 0xfc, 0xf2, 0x7d, + 0x49, 0x93, 0x20, 0x4c, 0xd1, 0x6a, 0x07, 0x26, 0x91, 0x28, 0x8f, 0x7f, + 0x5c, 0xbf, 0x32, 0x47, 0xdb, 0x32, 0xd1, 0xc4, 0x3e, 0x8a, 0xa1, 0xd5, + 0x5d, 0x15, 0x9e, 0xd1, +}; +static const unsigned char kat2499_addinreseed[] = {0}; +static const unsigned char kat2499_addin0[] = {0}; +static const unsigned char kat2499_addin1[] = {0}; +static const unsigned char kat2499_retbits[] = { + 0x15, 0xb7, 0x56, 0x28, 0x47, 0x08, 0x3e, 0xe8, 0xf4, 0x29, 0xf1, 0x7a, + 0xc8, 0x07, 0xc6, 0x00, 0x43, 0x68, 0x9d, 0xd9, 0x00, 0x82, 0x88, 0xba, + 0xb1, 0xbc, 0x3b, 0x00, 0xd9, 0x6a, 0x6f, 0x77, 0xf3, 0xcd, 0x69, 0x6c, + 0xfe, 0x1c, 0x42, 0x28, 0xd0, 0xda, 0x63, 0x19, 0x45, 0xa0, 0x65, 0xd8, + 0x92, 0x5f, 0x05, 0x19, 0xdd, 0x41, 0x08, 0x25, 0x6f, 0xa7, 0x51, 0x58, + 0x35, 0xaa, 0x98, 0xbc, +}; +static const struct drbg_kat_pr_false kat2499_t = { + 8, kat2499_entropyin, kat2499_nonce, kat2499_persstr, + kat2499_entropyinreseed, kat2499_addinreseed, kat2499_addin0, + kat2499_addin1, kat2499_retbits +}; +static const struct drbg_kat kat2499 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2499_t +}; + +static const unsigned char kat2500_entropyin[] = { + 0xe8, 0xa7, 0x84, 0xd9, 0x51, 0xdd, 0x71, 0xaf, 0x6d, 0xb0, 0xc2, 0xb9, + 0xae, 0xcc, 0x11, 0x88, 0x32, 0x34, 0x91, 0x9e, 0xd8, 0xfe, 0xe7, 0xe9, + 0xcb, 0x45, 0x48, 0xe2, 0xcc, 0x38, 0xe4, 0x75, 0x53, 0x65, 0x5f, 0x7b, + 0x3e, 0x0a, 0x09, 0x6a, +}; +static const unsigned char kat2500_nonce[] = {0}; +static const unsigned char kat2500_persstr[] = { + 0x01, 0xc1, 0xa2, 0xdc, 0x29, 0xf8, 0x7e, 0x6e, 0x57, 0xca, 0xe5, 0xec, + 0xf5, 0x38, 0x00, 0x4a, 0xc0, 0x84, 0x2c, 0x63, 0x50, 0xba, 0x6b, 0x5f, + 0x84, 0x58, 0x42, 0x72, 0xfe, 0x75, 0x50, 0xde, 0x11, 0xda, 0x08, 0xdf, + 0xd5, 0xc5, 0x49, 0xeb, +}; +static const unsigned char kat2500_entropyinreseed[] = { + 0x34, 0xb2, 0xe8, 0x96, 0x26, 0x51, 0x3d, 0x37, 0x0b, 0x80, 0x9f, 0x97, + 0x2e, 0x08, 0xf6, 0x61, 0x03, 0x6e, 0x19, 0xb0, 0x60, 0x24, 0xa4, 0x0b, + 0x66, 0x7f, 0xaf, 0xe5, 0xa5, 0xdd, 0xa8, 0xd6, 0x55, 0x59, 0xb9, 0xa0, + 0x56, 0x15, 0xf7, 0x50, +}; +static const unsigned char kat2500_addinreseed[] = {0}; +static const unsigned char kat2500_addin0[] = {0}; +static const unsigned char kat2500_addin1[] = {0}; +static const unsigned char kat2500_retbits[] = { + 0x62, 0x14, 0x55, 0x2b, 0x58, 0x45, 0x58, 0x76, 0xa5, 0x87, 0x24, 0x55, + 0x81, 0x14, 0xc5, 0x54, 0x4f, 0xe0, 0x47, 0x58, 0x60, 0xe1, 0x6a, 0x01, + 0x51, 0x31, 0x59, 0x00, 0x58, 0xf2, 0x2d, 0x6c, 0xd5, 0x6a, 0xe9, 0x81, + 0x7a, 0x53, 0x84, 0x37, 0x0b, 0x86, 0xcf, 0xcc, 0x24, 0xa3, 0x88, 0xb6, + 0xf2, 0x48, 0xd1, 0x08, 0x4b, 0xc7, 0x65, 0x50, 0x81, 0x93, 0x52, 0x91, + 0x52, 0x33, 0x18, 0x2c, +}; +static const struct drbg_kat_pr_false kat2500_t = { + 9, kat2500_entropyin, kat2500_nonce, kat2500_persstr, + kat2500_entropyinreseed, kat2500_addinreseed, kat2500_addin0, + kat2500_addin1, kat2500_retbits +}; +static const struct drbg_kat kat2500 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2500_t +}; + +static const unsigned char kat2501_entropyin[] = { + 0x6a, 0x43, 0xed, 0xcc, 0x64, 0x80, 0x5d, 0xc7, 0x8e, 0x49, 0x74, 0x9c, + 0x85, 0x7f, 0x1f, 0x56, 0x9e, 0xb9, 0x8f, 0xf3, 0xbe, 0x7a, 0x6e, 0x3f, + 0xe9, 0x07, 0xb9, 0x52, 0x77, 0x03, 0x2f, 0xa8, 0xc1, 0x37, 0x7a, 0x6e, + 0x91, 0xf3, 0xc3, 0x3f, +}; +static const unsigned char kat2501_nonce[] = {0}; +static const unsigned char kat2501_persstr[] = { + 0x34, 0x43, 0x1d, 0xbe, 0x6e, 0x8f, 0x42, 0xf0, 0xe6, 0x82, 0x67, 0x15, + 0xd3, 0x01, 0x6d, 0xdb, 0x58, 0x26, 0x6a, 0xe7, 0x86, 0xf4, 0xaf, 0x60, + 0xed, 0xd1, 0xc9, 0xa2, 0x1e, 0x3e, 0x69, 0xfc, 0xf0, 0x11, 0x1e, 0x2f, + 0x7c, 0x8d, 0x46, 0x06, +}; +static const unsigned char kat2501_entropyinreseed[] = { + 0x94, 0x44, 0x16, 0x05, 0x69, 0xd4, 0xe6, 0xa3, 0xd4, 0x32, 0x11, 0x69, + 0x28, 0xa9, 0x43, 0x8b, 0x7f, 0xdc, 0x7a, 0xba, 0xbe, 0x36, 0xa2, 0x34, + 0x45, 0xfe, 0xe9, 0x60, 0x32, 0x77, 0xf0, 0x7f, 0xaf, 0xee, 0x45, 0xf6, + 0xde, 0x6e, 0xda, 0x78, +}; +static const unsigned char kat2501_addinreseed[] = {0}; +static const unsigned char kat2501_addin0[] = {0}; +static const unsigned char kat2501_addin1[] = {0}; +static const unsigned char kat2501_retbits[] = { + 0x97, 0x6e, 0x6e, 0x5b, 0x4e, 0x57, 0xd2, 0x05, 0xcb, 0x06, 0x00, 0xf6, + 0xad, 0xaa, 0xc5, 0x13, 0xb8, 0x03, 0x30, 0x33, 0x4d, 0x55, 0x38, 0xa2, + 0xe0, 0xc4, 0x7a, 0xc4, 0x24, 0x00, 0x7d, 0xc5, 0xd4, 0x46, 0xf1, 0x09, + 0xda, 0xae, 0x0d, 0xa7, 0x5e, 0xb7, 0x24, 0xe5, 0xcb, 0x59, 0x5e, 0xc8, + 0x0f, 0x50, 0x60, 0x9f, 0x8c, 0x6a, 0x93, 0xbe, 0xe5, 0x61, 0xbd, 0x16, + 0xaa, 0xa3, 0xf5, 0xff, +}; +static const struct drbg_kat_pr_false kat2501_t = { + 10, kat2501_entropyin, kat2501_nonce, kat2501_persstr, + kat2501_entropyinreseed, kat2501_addinreseed, kat2501_addin0, + kat2501_addin1, kat2501_retbits +}; +static const struct drbg_kat kat2501 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2501_t +}; + +static const unsigned char kat2502_entropyin[] = { + 0xf2, 0xbd, 0xb4, 0x01, 0xef, 0xe8, 0xc3, 0x01, 0x61, 0xcf, 0x1c, 0xeb, + 0x6a, 0xaf, 0x40, 0x67, 0x2e, 0x37, 0x83, 0x6d, 0x05, 0xca, 0x4a, 0xa5, + 0xeb, 0x38, 0x93, 0xf0, 0x70, 0x36, 0x73, 0x8f, 0x2a, 0x94, 0x94, 0x6d, + 0x82, 0x9f, 0x04, 0x3a, +}; +static const unsigned char kat2502_nonce[] = {0}; +static const unsigned char kat2502_persstr[] = { + 0x2d, 0xfa, 0x04, 0xbc, 0x88, 0xeb, 0x80, 0x16, 0xb8, 0x41, 0xc6, 0xb5, + 0xb4, 0xf0, 0x2e, 0x6d, 0x68, 0x0c, 0x0f, 0x94, 0x46, 0xca, 0x23, 0x8d, + 0xa1, 0xde, 0x96, 0xf5, 0x8a, 0x1e, 0x77, 0x9f, 0xbd, 0xf2, 0xf0, 0xa9, + 0x98, 0x33, 0x4c, 0xcf, +}; +static const unsigned char kat2502_entropyinreseed[] = { + 0xe2, 0x7e, 0x0d, 0x99, 0xe3, 0x84, 0xee, 0xf6, 0x46, 0x9b, 0xc3, 0x4f, + 0x74, 0x2e, 0xf9, 0x7b, 0xbc, 0x62, 0xa0, 0x3a, 0x2e, 0x1b, 0x4a, 0x02, + 0xf8, 0x83, 0x83, 0xf0, 0x38, 0x0f, 0xdb, 0x77, 0xe6, 0xfd, 0xb5, 0x4c, + 0x9f, 0x3e, 0x6f, 0x0e, +}; +static const unsigned char kat2502_addinreseed[] = {0}; +static const unsigned char kat2502_addin0[] = {0}; +static const unsigned char kat2502_addin1[] = {0}; +static const unsigned char kat2502_retbits[] = { + 0x34, 0xc7, 0x3a, 0x18, 0xc7, 0x82, 0x58, 0xab, 0xc4, 0x54, 0x14, 0xf0, + 0x6d, 0x8c, 0x2f, 0xd6, 0xf6, 0xf2, 0x7c, 0x20, 0xa0, 0x1f, 0x40, 0xc5, + 0x3a, 0xc7, 0xc1, 0xc7, 0x02, 0xf2, 0x08, 0xc6, 0x8f, 0x35, 0x3f, 0xae, + 0xad, 0x3b, 0xc5, 0x85, 0xca, 0x18, 0xf9, 0x34, 0xf6, 0x81, 0x94, 0x19, + 0xdb, 0xa0, 0x9c, 0xa7, 0x17, 0xef, 0x10, 0xee, 0x5a, 0xfd, 0xb4, 0xc9, + 0xa9, 0x94, 0xab, 0x09, +}; +static const struct drbg_kat_pr_false kat2502_t = { + 11, kat2502_entropyin, kat2502_nonce, kat2502_persstr, + kat2502_entropyinreseed, kat2502_addinreseed, kat2502_addin0, + kat2502_addin1, kat2502_retbits +}; +static const struct drbg_kat kat2502 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2502_t +}; + +static const unsigned char kat2503_entropyin[] = { + 0x51, 0x35, 0xd6, 0xb3, 0x75, 0x76, 0x64, 0xbd, 0x62, 0xed, 0x61, 0x5e, + 0x89, 0xd5, 0x5c, 0x31, 0xcb, 0xc7, 0xc0, 0x2d, 0x80, 0x2c, 0x69, 0x76, + 0x04, 0x25, 0x57, 0x2b, 0xdd, 0x10, 0x9a, 0xde, 0x87, 0xfe, 0x92, 0xc4, + 0x30, 0x69, 0xb1, 0x05, +}; +static const unsigned char kat2503_nonce[] = {0}; +static const unsigned char kat2503_persstr[] = { + 0xb1, 0x84, 0xcb, 0x39, 0x10, 0xca, 0x93, 0x76, 0x78, 0xca, 0x32, 0xb7, + 0x17, 0x8b, 0xe8, 0xff, 0x51, 0x48, 0xe3, 0xd9, 0x05, 0xb2, 0x19, 0xde, + 0x72, 0x09, 0x32, 0x6d, 0xe1, 0xc4, 0x29, 0xd9, 0xb7, 0x0d, 0xfb, 0xa5, + 0x07, 0x92, 0xe1, 0xdb, +}; +static const unsigned char kat2503_entropyinreseed[] = { + 0x2e, 0x1c, 0x3a, 0x0c, 0x36, 0x32, 0x84, 0x83, 0xdd, 0xd0, 0x70, 0xd2, + 0x3f, 0xbe, 0x27, 0x77, 0x98, 0xf1, 0xdb, 0x75, 0x25, 0x36, 0x8a, 0x93, + 0xae, 0x91, 0x99, 0xad, 0xc8, 0xab, 0xfb, 0x99, 0x69, 0x2d, 0x99, 0xb7, + 0x04, 0x5e, 0x1b, 0x36, +}; +static const unsigned char kat2503_addinreseed[] = {0}; +static const unsigned char kat2503_addin0[] = {0}; +static const unsigned char kat2503_addin1[] = {0}; +static const unsigned char kat2503_retbits[] = { + 0xc2, 0x5f, 0x24, 0x2a, 0xa9, 0xca, 0x3c, 0x3a, 0x49, 0x02, 0x53, 0xc5, + 0x27, 0xc9, 0x1d, 0x13, 0x94, 0x24, 0xe7, 0x10, 0x45, 0x23, 0x9f, 0x63, + 0x85, 0x8b, 0x0a, 0x92, 0xf4, 0x4c, 0xad, 0x54, 0x74, 0x58, 0xd5, 0x40, + 0x72, 0x93, 0x4c, 0xab, 0xf0, 0x4e, 0x8c, 0x3b, 0xfe, 0xfe, 0x67, 0xf9, + 0x8a, 0xed, 0xa7, 0x1a, 0xd6, 0x52, 0x18, 0x11, 0x4c, 0xcf, 0x68, 0xd8, + 0x6f, 0xba, 0x8f, 0xc3, +}; +static const struct drbg_kat_pr_false kat2503_t = { + 12, kat2503_entropyin, kat2503_nonce, kat2503_persstr, + kat2503_entropyinreseed, kat2503_addinreseed, kat2503_addin0, + kat2503_addin1, kat2503_retbits +}; +static const struct drbg_kat kat2503 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2503_t +}; + +static const unsigned char kat2504_entropyin[] = { + 0xe3, 0xbd, 0x62, 0x69, 0x49, 0xde, 0x14, 0x72, 0xb1, 0xda, 0x81, 0x17, + 0xe9, 0x2e, 0xb5, 0x2b, 0x4f, 0xa0, 0x5b, 0x05, 0x0d, 0xac, 0x40, 0xcd, + 0xdf, 0xc9, 0x3d, 0x85, 0x3f, 0x5e, 0x50, 0x03, 0xe4, 0xb6, 0xc9, 0xa8, + 0xbe, 0x72, 0x79, 0xcb, +}; +static const unsigned char kat2504_nonce[] = {0}; +static const unsigned char kat2504_persstr[] = { + 0xaa, 0xc3, 0x43, 0x45, 0xed, 0x2f, 0x46, 0x8b, 0x62, 0xe1, 0x65, 0x96, + 0x2b, 0xa3, 0x93, 0x1d, 0x7b, 0x82, 0x15, 0x52, 0x6e, 0x41, 0x32, 0xc0, + 0x28, 0x35, 0xaa, 0xd2, 0x20, 0xd3, 0x40, 0xf3, 0x18, 0x83, 0x6a, 0xc4, + 0xf5, 0x28, 0x57, 0xea, +}; +static const unsigned char kat2504_entropyinreseed[] = { + 0x1f, 0x06, 0x4f, 0xe5, 0x9c, 0xd2, 0x68, 0xab, 0x33, 0x32, 0x3b, 0x30, + 0x6a, 0xa9, 0x15, 0x6e, 0x13, 0xf6, 0x3e, 0xc1, 0x95, 0x94, 0x22, 0xb0, + 0x0d, 0xcb, 0xb5, 0x52, 0x22, 0xf0, 0xa2, 0x8c, 0x70, 0x2b, 0x2a, 0xcc, + 0x13, 0x44, 0x3a, 0x94, +}; +static const unsigned char kat2504_addinreseed[] = {0}; +static const unsigned char kat2504_addin0[] = {0}; +static const unsigned char kat2504_addin1[] = {0}; +static const unsigned char kat2504_retbits[] = { + 0xbc, 0xf7, 0xf7, 0x56, 0x37, 0x1b, 0x9a, 0x4e, 0xaf, 0x9a, 0x64, 0x4d, + 0x9c, 0x67, 0xdb, 0x2e, 0x18, 0x8c, 0xf7, 0x0a, 0x12, 0x87, 0x1c, 0xf9, + 0xcc, 0x54, 0xea, 0xda, 0x5c, 0xd5, 0x30, 0xe6, 0x0b, 0x01, 0x5b, 0x4d, + 0x8c, 0x28, 0x11, 0xf7, 0xb0, 0x09, 0x9a, 0xac, 0x10, 0x26, 0x58, 0xb9, + 0xce, 0xef, 0x3d, 0x89, 0x6c, 0x6d, 0xb1, 0x1e, 0xa5, 0xbf, 0xc7, 0xd0, + 0xdc, 0x1a, 0x26, 0x3c, +}; +static const struct drbg_kat_pr_false kat2504_t = { + 13, kat2504_entropyin, kat2504_nonce, kat2504_persstr, + kat2504_entropyinreseed, kat2504_addinreseed, kat2504_addin0, + kat2504_addin1, kat2504_retbits +}; +static const struct drbg_kat kat2504 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2504_t +}; + +static const unsigned char kat2505_entropyin[] = { + 0xe4, 0xff, 0xff, 0x5c, 0x4c, 0x2e, 0x1e, 0x03, 0x72, 0x5a, 0x9b, 0xe4, + 0xa9, 0x10, 0x09, 0x57, 0xd1, 0x01, 0x03, 0xd0, 0x29, 0x01, 0xbf, 0xea, + 0xba, 0x3e, 0x26, 0x85, 0x1d, 0x1b, 0x40, 0x37, 0x07, 0x19, 0x86, 0xc0, + 0x49, 0x28, 0x30, 0x84, +}; +static const unsigned char kat2505_nonce[] = {0}; +static const unsigned char kat2505_persstr[] = { + 0x00, 0x3b, 0x5e, 0x53, 0x4b, 0xb5, 0x65, 0xf4, 0xe1, 0xea, 0xcb, 0x22, + 0xf2, 0xa2, 0xa6, 0x50, 0x93, 0xdd, 0x0c, 0x78, 0x2a, 0x27, 0x80, 0x5f, + 0x0c, 0x4c, 0x4b, 0x46, 0xc7, 0x27, 0x91, 0x98, 0x7f, 0xc0, 0x7b, 0xd2, + 0x48, 0x13, 0x88, 0x08, +}; +static const unsigned char kat2505_entropyinreseed[] = { + 0xf2, 0xc1, 0x67, 0x13, 0xda, 0x96, 0xef, 0x43, 0x5d, 0x96, 0xc6, 0x3f, + 0xbb, 0xc5, 0x7d, 0x49, 0xc4, 0x4d, 0x99, 0xc6, 0x79, 0xc1, 0xaf, 0x53, + 0xa1, 0x2c, 0xad, 0xea, 0x98, 0xd3, 0x19, 0x81, 0xa7, 0xd0, 0x69, 0x91, + 0xef, 0xee, 0xc7, 0x3f, +}; +static const unsigned char kat2505_addinreseed[] = {0}; +static const unsigned char kat2505_addin0[] = {0}; +static const unsigned char kat2505_addin1[] = {0}; +static const unsigned char kat2505_retbits[] = { + 0x67, 0xc4, 0x09, 0x15, 0x7d, 0x60, 0xf8, 0x70, 0x3d, 0xa2, 0x37, 0xc4, + 0xc8, 0xb4, 0xf1, 0x24, 0x29, 0x8b, 0xc9, 0x5f, 0x68, 0xcd, 0x55, 0x10, + 0x30, 0x4c, 0x21, 0x67, 0x14, 0x5f, 0xb7, 0xc4, 0xbe, 0xea, 0xdb, 0xc6, + 0xd7, 0xff, 0x9b, 0x26, 0x1b, 0x42, 0x0e, 0x93, 0xcf, 0x9f, 0xb1, 0x35, + 0xd9, 0x94, 0x6d, 0x5f, 0x4c, 0x48, 0x29, 0x55, 0x7e, 0x7d, 0xcd, 0x71, + 0x31, 0x43, 0x11, 0x5b, +}; +static const struct drbg_kat_pr_false kat2505_t = { + 14, kat2505_entropyin, kat2505_nonce, kat2505_persstr, + kat2505_entropyinreseed, kat2505_addinreseed, kat2505_addin0, + kat2505_addin1, kat2505_retbits +}; +static const struct drbg_kat kat2505 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2505_t +}; + +static const unsigned char kat2506_entropyin[] = { + 0x53, 0x48, 0x16, 0x6b, 0xb5, 0x11, 0xaf, 0x51, 0xda, 0x93, 0xa4, 0x22, + 0x1d, 0x87, 0x07, 0x1c, 0xd3, 0x44, 0x2b, 0x7e, 0x95, 0x91, 0x44, 0x36, + 0x23, 0xc7, 0xa7, 0x49, 0x1c, 0x13, 0xea, 0x64, 0x7f, 0x20, 0x83, 0xba, + 0x85, 0x51, 0x8b, 0xc2, +}; +static const unsigned char kat2506_nonce[] = {0}; +static const unsigned char kat2506_persstr[] = { + 0xc7, 0xb9, 0xfc, 0x16, 0x7f, 0x76, 0x55, 0xdd, 0xce, 0x82, 0xfc, 0xfa, + 0x91, 0x07, 0x3f, 0x83, 0x90, 0x01, 0xbb, 0x8b, 0xf0, 0x8f, 0x5b, 0xeb, + 0xec, 0xa5, 0x77, 0xe6, 0xbc, 0x1b, 0xd8, 0x83, 0x82, 0xd3, 0x0e, 0x0c, + 0xd9, 0x38, 0x4e, 0xc1, +}; +static const unsigned char kat2506_entropyinreseed[] = { + 0xcd, 0xbb, 0x99, 0x33, 0x5a, 0x94, 0x7e, 0x0a, 0x6f, 0xc4, 0x35, 0xf3, + 0x4b, 0x1a, 0x72, 0xee, 0x2e, 0xa0, 0x30, 0x1f, 0x0c, 0x57, 0x9c, 0xc8, + 0x3c, 0xd2, 0x20, 0x0d, 0xac, 0x54, 0x05, 0xf5, 0x4a, 0x32, 0xd9, 0xd0, + 0x53, 0xb4, 0x1a, 0x25, +}; +static const unsigned char kat2506_addinreseed[] = { + 0x1b, 0x38, 0x31, 0x91, 0x6e, 0xe5, 0x61, 0x32, 0x2a, 0xcf, 0x6e, 0x1f, + 0xc5, 0x20, 0x4c, 0xf7, 0x0c, 0x77, 0x58, 0x98, 0x9d, 0xf5, 0x08, 0x14, + 0x8b, 0xc3, 0xce, 0x03, 0x11, 0x31, 0x67, 0x23, 0xd8, 0xfc, 0x50, 0xcb, + 0xdd, 0x4e, 0x36, 0x51, +}; +static const unsigned char kat2506_addin0[] = { + 0xb0, 0xbe, 0xfc, 0xcf, 0xfd, 0x69, 0xf9, 0x0b, 0x7c, 0x99, 0x71, 0xf5, + 0x9a, 0x6d, 0xa1, 0x8c, 0xad, 0x4b, 0x92, 0x23, 0xd7, 0x8c, 0x07, 0x57, + 0xd2, 0xed, 0xcb, 0xc4, 0xc1, 0x0e, 0x4b, 0xf5, 0x99, 0x74, 0x49, 0x90, + 0x69, 0x2f, 0x8e, 0x4c, +}; +static const unsigned char kat2506_addin1[] = { + 0xb8, 0xe0, 0x23, 0xe9, 0x64, 0xb4, 0x28, 0x7c, 0xfe, 0x96, 0xd0, 0x66, + 0x6d, 0xb1, 0xae, 0x60, 0xb3, 0x95, 0xf8, 0x69, 0xed, 0xc8, 0x92, 0x05, + 0x60, 0xad, 0xfc, 0xb4, 0x5d, 0x44, 0x2c, 0x03, 0x5d, 0x75, 0xa0, 0x15, + 0x62, 0x21, 0x1d, 0x17, +}; +static const unsigned char kat2506_retbits[] = { + 0xec, 0xff, 0x7d, 0x89, 0xfb, 0xeb, 0xfd, 0xb1, 0x0b, 0xaa, 0x84, 0x99, + 0x77, 0xa9, 0xe5, 0x51, 0xb9, 0x0a, 0x70, 0xc4, 0x6d, 0xd3, 0xf1, 0x68, + 0x6e, 0xb3, 0xf1, 0xc7, 0x67, 0x88, 0x2a, 0x5e, 0xf6, 0x8d, 0x38, 0x50, + 0x18, 0xf0, 0x7d, 0x84, 0xf7, 0x6b, 0x69, 0xfa, 0x27, 0x24, 0xc4, 0xb3, + 0xf1, 0x34, 0xb6, 0xc0, 0x42, 0x93, 0xf2, 0x57, 0x3f, 0x3e, 0x9b, 0x28, + 0xc9, 0x1c, 0x46, 0x2f, +}; +static const struct drbg_kat_pr_false kat2506_t = { + 0, kat2506_entropyin, kat2506_nonce, kat2506_persstr, + kat2506_entropyinreseed, kat2506_addinreseed, kat2506_addin0, + kat2506_addin1, kat2506_retbits +}; +static const struct drbg_kat kat2506 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2506_t +}; + +static const unsigned char kat2507_entropyin[] = { + 0x1d, 0x9a, 0xa6, 0x38, 0x2d, 0xba, 0x76, 0x30, 0xa8, 0x8c, 0xfb, 0x64, + 0x2f, 0x4b, 0xb9, 0x91, 0x82, 0xa3, 0xb5, 0xab, 0x09, 0x94, 0xfb, 0xc1, + 0x51, 0xc3, 0x77, 0xd9, 0x98, 0x25, 0x2b, 0x54, 0x6d, 0xca, 0x18, 0x35, + 0x69, 0xce, 0x39, 0x74, +}; +static const unsigned char kat2507_nonce[] = {0}; +static const unsigned char kat2507_persstr[] = { + 0xc8, 0x4f, 0xa8, 0x35, 0x58, 0xcd, 0xba, 0xcd, 0x6d, 0xdb, 0x6c, 0xb0, + 0x1e, 0xf4, 0x9a, 0x8c, 0x52, 0x77, 0xac, 0x47, 0xcf, 0x53, 0xbe, 0x9e, + 0x0c, 0xe8, 0x1a, 0x80, 0x9e, 0x0f, 0x28, 0x13, 0x70, 0x44, 0xc0, 0x5d, + 0x48, 0xeb, 0x0f, 0xac, +}; +static const unsigned char kat2507_entropyinreseed[] = { + 0xda, 0x5c, 0x24, 0xc1, 0x8f, 0x59, 0x50, 0x01, 0xc3, 0xe9, 0xcc, 0x4e, + 0x4d, 0xcf, 0xe9, 0xef, 0xd1, 0xf3, 0x9c, 0x7a, 0xc5, 0x40, 0x2f, 0xca, + 0xc5, 0x49, 0x20, 0x04, 0x82, 0xa0, 0x90, 0x41, 0xa4, 0x23, 0x9e, 0xc9, + 0x68, 0x1a, 0xeb, 0x15, +}; +static const unsigned char kat2507_addinreseed[] = { + 0xa6, 0x0c, 0xb6, 0x44, 0x25, 0x85, 0xc8, 0x7a, 0x61, 0x5e, 0xbc, 0x3c, + 0xe8, 0xd0, 0x45, 0x0c, 0xd1, 0x4c, 0xa7, 0x50, 0xd3, 0x41, 0x96, 0xc3, + 0x91, 0x2b, 0xdf, 0x56, 0xf5, 0x5e, 0x5b, 0x10, 0xfe, 0xe0, 0x10, 0x08, + 0xdc, 0x60, 0x71, 0x76, +}; +static const unsigned char kat2507_addin0[] = { + 0x41, 0xa2, 0x39, 0x66, 0x31, 0x57, 0x51, 0xdf, 0x80, 0x47, 0x0e, 0xe1, + 0xd9, 0x52, 0x8a, 0x77, 0x5c, 0xbe, 0xd5, 0x2e, 0x15, 0xb2, 0x79, 0x70, + 0x95, 0x48, 0x04, 0x9b, 0x02, 0x51, 0x6d, 0x6a, 0xdc, 0x67, 0xe3, 0x19, + 0xf6, 0x2c, 0xb4, 0x8a, +}; +static const unsigned char kat2507_addin1[] = { + 0x9d, 0xab, 0x1d, 0x10, 0xfe, 0x9c, 0xe9, 0x6e, 0x9a, 0x0c, 0x25, 0x4f, + 0x49, 0x58, 0xa1, 0x5f, 0x7d, 0x3b, 0x68, 0x8a, 0x44, 0x06, 0xf5, 0xb4, + 0x66, 0x14, 0x8b, 0x6a, 0xfb, 0x1c, 0xb4, 0x1e, 0x94, 0x78, 0xc9, 0x17, + 0x52, 0x6c, 0xc2, 0x2a, +}; +static const unsigned char kat2507_retbits[] = { + 0xc7, 0xd5, 0x0e, 0xc6, 0x2d, 0x1f, 0x4c, 0xbd, 0x32, 0x65, 0xec, 0xe8, + 0xcf, 0x9f, 0x4e, 0x07, 0x86, 0xef, 0x73, 0x6c, 0x57, 0x74, 0xb5, 0x8c, + 0xd6, 0x0a, 0x2e, 0x8c, 0x64, 0xee, 0x9c, 0x91, 0xb2, 0xdb, 0xfb, 0xfa, + 0x6e, 0x68, 0x56, 0xc8, 0x7a, 0x52, 0x91, 0x30, 0x59, 0xc5, 0x21, 0xec, + 0xf4, 0x8f, 0xb6, 0x9d, 0xc3, 0x6a, 0xe2, 0x17, 0x04, 0xaa, 0xeb, 0xd8, + 0x38, 0xf5, 0x05, 0x0e, +}; +static const struct drbg_kat_pr_false kat2507_t = { + 1, kat2507_entropyin, kat2507_nonce, kat2507_persstr, + kat2507_entropyinreseed, kat2507_addinreseed, kat2507_addin0, + kat2507_addin1, kat2507_retbits +}; +static const struct drbg_kat kat2507 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2507_t +}; + +static const unsigned char kat2508_entropyin[] = { + 0xc6, 0x36, 0xc3, 0xde, 0xea, 0xfc, 0x9d, 0x56, 0x33, 0x8f, 0x71, 0xa2, + 0x28, 0xfd, 0xab, 0x53, 0x7d, 0x5a, 0xa7, 0x80, 0x34, 0x30, 0x9b, 0x71, + 0xee, 0xcf, 0x05, 0x74, 0xab, 0x09, 0xa5, 0x79, 0x08, 0x73, 0x6b, 0xfa, + 0x1e, 0x6b, 0xab, 0x48, +}; +static const unsigned char kat2508_nonce[] = {0}; +static const unsigned char kat2508_persstr[] = { + 0x2a, 0xaf, 0x5e, 0x25, 0x94, 0x2f, 0x15, 0x52, 0xfb, 0x01, 0xa6, 0x91, + 0xde, 0xd6, 0x79, 0x05, 0xd6, 0xe3, 0x43, 0x8a, 0x1e, 0x21, 0xe5, 0x25, + 0x08, 0xf7, 0xc5, 0x55, 0x85, 0xa9, 0xbb, 0x6c, 0x65, 0x0b, 0xa8, 0xf9, + 0x77, 0x7d, 0x2f, 0x59, +}; +static const unsigned char kat2508_entropyinreseed[] = { + 0xf7, 0xd1, 0xbc, 0x0a, 0x3f, 0x71, 0x80, 0xce, 0x72, 0x71, 0x06, 0x4f, + 0xf7, 0xc4, 0xcd, 0xa8, 0x9d, 0x76, 0xde, 0x04, 0x9a, 0x98, 0x06, 0x25, + 0x83, 0xc3, 0x9a, 0x6d, 0xea, 0x6e, 0x88, 0xb5, 0xb1, 0x2c, 0xfb, 0x91, + 0xb0, 0xc1, 0xea, 0x42, +}; +static const unsigned char kat2508_addinreseed[] = { + 0x2c, 0xdd, 0xda, 0xa6, 0x45, 0x9d, 0x90, 0x4a, 0xf7, 0x4c, 0xe0, 0x43, + 0xdf, 0x41, 0x13, 0x7c, 0x37, 0x0c, 0xea, 0xce, 0xeb, 0xb1, 0xbb, 0x33, + 0xca, 0x7a, 0xb2, 0x89, 0xfa, 0x87, 0xd3, 0x0f, 0x0a, 0xe6, 0xe1, 0x2f, + 0xfa, 0x7f, 0x4f, 0xfc, +}; +static const unsigned char kat2508_addin0[] = { + 0xf9, 0xf4, 0x70, 0x1c, 0xd3, 0xb0, 0x06, 0x9f, 0xa8, 0x71, 0x6a, 0x5f, + 0x9d, 0x13, 0xb8, 0xa7, 0x6c, 0xd6, 0x5d, 0x7a, 0x32, 0xdd, 0xbf, 0xe5, + 0xa6, 0x6d, 0x62, 0x69, 0xe1, 0x7b, 0x5a, 0x0b, 0x4f, 0x48, 0x47, 0x22, + 0x7d, 0x29, 0xe5, 0x59, +}; +static const unsigned char kat2508_addin1[] = { + 0x23, 0xeb, 0x8b, 0xa9, 0x25, 0x88, 0x0e, 0x28, 0x04, 0xd8, 0x99, 0x75, + 0xf1, 0xa7, 0x7a, 0xef, 0x4b, 0xa6, 0x16, 0xe3, 0x66, 0xf4, 0x8e, 0x37, + 0x51, 0xf2, 0x80, 0x41, 0xa3, 0xc0, 0x97, 0x08, 0xa4, 0xf7, 0x11, 0xef, + 0x77, 0x62, 0xb9, 0x07, +}; +static const unsigned char kat2508_retbits[] = { + 0xa9, 0xb4, 0x83, 0xf3, 0x0f, 0x61, 0x4a, 0xfb, 0x40, 0xb0, 0x4a, 0x80, + 0xaa, 0x31, 0xf0, 0x49, 0x7b, 0x46, 0x64, 0xa2, 0x52, 0xed, 0xf5, 0xdf, + 0x6b, 0xb4, 0x2a, 0x4f, 0xc4, 0xa8, 0xb9, 0xf4, 0x0c, 0x20, 0x16, 0x10, + 0x59, 0x0a, 0x78, 0x1c, 0xf5, 0x6b, 0x82, 0xf5, 0xf1, 0x7d, 0xed, 0x2d, + 0x18, 0x40, 0xd2, 0x1d, 0x32, 0xa6, 0x98, 0x01, 0xa4, 0xa4, 0xbc, 0x51, + 0xf4, 0x9e, 0x5a, 0xa3, +}; +static const struct drbg_kat_pr_false kat2508_t = { + 2, kat2508_entropyin, kat2508_nonce, kat2508_persstr, + kat2508_entropyinreseed, kat2508_addinreseed, kat2508_addin0, + kat2508_addin1, kat2508_retbits +}; +static const struct drbg_kat kat2508 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2508_t +}; + +static const unsigned char kat2509_entropyin[] = { + 0x5b, 0x05, 0xde, 0x11, 0x1c, 0x19, 0xc4, 0x61, 0x3d, 0x0d, 0xd3, 0xcf, + 0x35, 0x81, 0x3a, 0xbb, 0x86, 0x6c, 0x4d, 0x47, 0x0c, 0x53, 0xf2, 0xe9, + 0x2e, 0x45, 0xfc, 0x73, 0x7c, 0xa5, 0xa5, 0xa3, 0x38, 0x0f, 0x6c, 0x9a, + 0x81, 0xe0, 0xa1, 0xd9, +}; +static const unsigned char kat2509_nonce[] = {0}; +static const unsigned char kat2509_persstr[] = { + 0xcf, 0xd1, 0xf4, 0x22, 0x26, 0x1e, 0x47, 0xd5, 0x92, 0x9f, 0xb4, 0xb7, + 0x35, 0x6a, 0xd3, 0x21, 0xdd, 0xad, 0x2d, 0x5d, 0x34, 0x3b, 0x4f, 0xb4, + 0x94, 0xe8, 0xa9, 0x07, 0x48, 0x4f, 0x2c, 0x2a, 0x96, 0x2d, 0xa7, 0x99, + 0x09, 0x14, 0x38, 0xc9, +}; +static const unsigned char kat2509_entropyinreseed[] = { + 0x8a, 0x71, 0x8b, 0x9d, 0xc3, 0x25, 0x54, 0x50, 0xfe, 0x29, 0xf8, 0xc3, + 0x64, 0xbd, 0xd1, 0x95, 0x4d, 0x64, 0x21, 0x26, 0xb8, 0x64, 0xb3, 0x87, + 0x7c, 0x17, 0xdc, 0x18, 0xe3, 0x58, 0xd0, 0xb9, 0x20, 0x75, 0xef, 0x0f, + 0xbb, 0x16, 0x5c, 0xe3, +}; +static const unsigned char kat2509_addinreseed[] = { + 0x8d, 0xa8, 0xed, 0xf9, 0x28, 0xf1, 0x17, 0x62, 0x2b, 0xa7, 0xc6, 0xc5, + 0x8e, 0x2e, 0x5e, 0x5d, 0x30, 0x18, 0x4f, 0xa1, 0x11, 0xcf, 0x02, 0xb3, + 0x61, 0x46, 0x33, 0xfa, 0x6c, 0x18, 0x64, 0x40, 0x03, 0xa6, 0x1e, 0x4f, + 0x49, 0x11, 0x0c, 0xeb, +}; +static const unsigned char kat2509_addin0[] = { + 0x57, 0xc8, 0xc6, 0xfa, 0x5b, 0x4a, 0xfe, 0x59, 0x2a, 0xd0, 0x15, 0x7a, + 0x8b, 0x39, 0xa8, 0x36, 0x5c, 0xe7, 0xf3, 0x6f, 0x79, 0x54, 0xe9, 0xa4, + 0xde, 0xaf, 0xcc, 0xd5, 0x21, 0x2a, 0x44, 0xc7, 0x31, 0xdf, 0x15, 0x2b, + 0x6e, 0xac, 0xd3, 0x32, +}; +static const unsigned char kat2509_addin1[] = { + 0x34, 0xf1, 0x34, 0xfc, 0x42, 0xf4, 0x0c, 0xe8, 0x01, 0x39, 0xca, 0xa3, + 0xaf, 0x6b, 0x32, 0xdb, 0xeb, 0x50, 0x34, 0xd2, 0x1b, 0xfd, 0xd0, 0x66, + 0xaf, 0x11, 0x05, 0xe5, 0x5a, 0x71, 0x4c, 0xde, 0xfb, 0x76, 0x05, 0x32, + 0xf5, 0x4a, 0xe3, 0x51, +}; +static const unsigned char kat2509_retbits[] = { + 0x4c, 0x04, 0x46, 0x01, 0xc9, 0x70, 0x13, 0x1b, 0x2e, 0xcb, 0xb3, 0x29, + 0xea, 0x41, 0x19, 0x8e, 0xa5, 0xf0, 0xf8, 0xc9, 0x14, 0xa7, 0xac, 0x55, + 0xaa, 0x18, 0xba, 0x04, 0x14, 0x21, 0x7f, 0xcc, 0x11, 0xd0, 0xf7, 0xcf, + 0x9b, 0x67, 0x1c, 0xf7, 0x5d, 0x48, 0x98, 0x31, 0x59, 0x9c, 0xb2, 0xe6, + 0x28, 0xb8, 0x2d, 0x46, 0x77, 0x11, 0xec, 0xbb, 0x22, 0x71, 0x32, 0x0e, + 0x4a, 0x6b, 0xeb, 0x25, +}; +static const struct drbg_kat_pr_false kat2509_t = { + 3, kat2509_entropyin, kat2509_nonce, kat2509_persstr, + kat2509_entropyinreseed, kat2509_addinreseed, kat2509_addin0, + kat2509_addin1, kat2509_retbits +}; +static const struct drbg_kat kat2509 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2509_t +}; + +static const unsigned char kat2510_entropyin[] = { + 0xe7, 0xde, 0x2c, 0x5a, 0x3d, 0x5b, 0x92, 0x9f, 0xd7, 0x7f, 0x37, 0x77, + 0x75, 0x66, 0x90, 0x52, 0x52, 0x56, 0x35, 0x59, 0x66, 0x3b, 0xd7, 0xb4, + 0xfa, 0xb2, 0x21, 0x97, 0x58, 0x61, 0xcf, 0x0d, 0x2c, 0x11, 0xb0, 0xeb, + 0x46, 0x0a, 0x58, 0xaf, +}; +static const unsigned char kat2510_nonce[] = {0}; +static const unsigned char kat2510_persstr[] = { + 0xb0, 0x5b, 0xec, 0x0e, 0x2d, 0x43, 0x02, 0x62, 0xc8, 0x26, 0x25, 0xcb, + 0x74, 0x5b, 0xfc, 0xe1, 0x00, 0x8b, 0xe4, 0xd2, 0x63, 0xc3, 0x2b, 0x50, + 0x6d, 0x04, 0xaf, 0x6c, 0x46, 0xf0, 0x83, 0x4c, 0xbe, 0x53, 0x6e, 0xa7, + 0xb0, 0xa0, 0xf1, 0xa7, +}; +static const unsigned char kat2510_entropyinreseed[] = { + 0x18, 0xe3, 0x4d, 0xe9, 0x9a, 0x3a, 0xd1, 0xb4, 0xea, 0xeb, 0xc1, 0x4a, + 0x72, 0x68, 0xcb, 0xab, 0xdd, 0xc8, 0xe2, 0x24, 0xb7, 0xec, 0xa6, 0x2c, + 0xcd, 0x3c, 0x1e, 0x00, 0x65, 0x53, 0x6e, 0xd6, 0x26, 0xa8, 0x65, 0x24, + 0xab, 0x7a, 0x65, 0x8d, +}; +static const unsigned char kat2510_addinreseed[] = { + 0x29, 0xc9, 0x7f, 0x38, 0xa8, 0x51, 0x49, 0xb7, 0x23, 0x11, 0x71, 0x75, + 0x7c, 0x64, 0x66, 0x00, 0xd7, 0x25, 0xb9, 0xf7, 0xfe, 0xca, 0x30, 0x38, + 0x6a, 0x91, 0x3b, 0xb3, 0x7b, 0x11, 0xce, 0xcb, 0xa6, 0x45, 0x69, 0x65, + 0xaf, 0xb8, 0x1c, 0x22, +}; +static const unsigned char kat2510_addin0[] = { + 0xfd, 0x25, 0x67, 0x83, 0xb0, 0x9a, 0x66, 0x65, 0x76, 0x36, 0xaf, 0x53, + 0xea, 0x30, 0x16, 0xaf, 0x6c, 0xec, 0xf8, 0x5a, 0x13, 0x09, 0x60, 0x59, + 0xa8, 0x75, 0xd9, 0x03, 0xbb, 0x24, 0xa1, 0x18, 0xe6, 0x6a, 0xd5, 0xe7, + 0xd0, 0x30, 0xc4, 0x65, +}; +static const unsigned char kat2510_addin1[] = { + 0x1b, 0x22, 0x7f, 0xe8, 0x9d, 0xff, 0x88, 0xc2, 0x70, 0xc0, 0x1e, 0x9f, + 0x5b, 0x33, 0x2d, 0x90, 0x62, 0xfa, 0x42, 0x02, 0x30, 0xa0, 0xab, 0xcf, + 0x4c, 0xa7, 0x17, 0x2c, 0xa2, 0xa0, 0x1e, 0x95, 0x9f, 0xef, 0x54, 0xbd, + 0x98, 0xee, 0xab, 0xac, +}; +static const unsigned char kat2510_retbits[] = { + 0x05, 0x2a, 0xbd, 0x8f, 0xff, 0xb5, 0x1d, 0x8f, 0xbd, 0x69, 0xc0, 0x0a, + 0xa2, 0x1c, 0x19, 0x4b, 0xf6, 0xbf, 0x43, 0xa0, 0x21, 0x38, 0xce, 0x35, + 0x2e, 0xb9, 0x3c, 0xa9, 0xc9, 0xe5, 0x98, 0x6d, 0xf3, 0xe8, 0x62, 0x68, + 0x82, 0xa4, 0x06, 0x66, 0x60, 0xf4, 0x9d, 0xd3, 0x8d, 0x07, 0x82, 0xb8, + 0x68, 0xd1, 0xb2, 0xa9, 0x8e, 0x84, 0x97, 0x5d, 0xbd, 0x53, 0xb6, 0x9a, + 0x8e, 0x76, 0xc8, 0x79, +}; +static const struct drbg_kat_pr_false kat2510_t = { + 4, kat2510_entropyin, kat2510_nonce, kat2510_persstr, + kat2510_entropyinreseed, kat2510_addinreseed, kat2510_addin0, + kat2510_addin1, kat2510_retbits +}; +static const struct drbg_kat kat2510 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2510_t +}; + +static const unsigned char kat2511_entropyin[] = { + 0x12, 0x88, 0x17, 0x33, 0x14, 0xf7, 0x52, 0xd0, 0x2b, 0x4f, 0xc6, 0x44, + 0x22, 0xf1, 0xc2, 0x9c, 0x0e, 0x60, 0x68, 0xd3, 0x4d, 0x10, 0x8e, 0xa2, + 0x22, 0xb7, 0xee, 0xc3, 0xbb, 0x65, 0xa8, 0xca, 0xe5, 0x14, 0xb9, 0x8b, + 0x13, 0x0f, 0xc5, 0x84, +}; +static const unsigned char kat2511_nonce[] = {0}; +static const unsigned char kat2511_persstr[] = { + 0xaf, 0xc1, 0xa8, 0xba, 0x27, 0xc9, 0xb9, 0x27, 0x97, 0x94, 0xca, 0xbe, + 0x5b, 0x2e, 0xe7, 0x2b, 0x24, 0x37, 0x3a, 0x2c, 0x99, 0x49, 0x9e, 0x14, + 0x97, 0xc2, 0xde, 0x23, 0xa0, 0xcb, 0x9b, 0x5f, 0xd9, 0x01, 0xdf, 0xe0, + 0x35, 0xe6, 0x97, 0xff, +}; +static const unsigned char kat2511_entropyinreseed[] = { + 0x86, 0xdd, 0x99, 0x85, 0x61, 0x76, 0xeb, 0x38, 0x9c, 0xe1, 0x65, 0x92, + 0xac, 0x3d, 0xee, 0xd3, 0x7a, 0x05, 0xf2, 0x3a, 0xfa, 0x15, 0xd5, 0xe7, + 0x96, 0xc3, 0xcd, 0x38, 0xaf, 0x33, 0x02, 0x1f, 0x94, 0xa1, 0x30, 0x30, + 0xdd, 0x75, 0x50, 0x30, +}; +static const unsigned char kat2511_addinreseed[] = { + 0xe4, 0x3f, 0x44, 0x4e, 0x8e, 0x88, 0xee, 0x4a, 0x4f, 0x5c, 0x12, 0x98, + 0x2c, 0x1d, 0x8e, 0x8d, 0x1b, 0x11, 0xbe, 0x78, 0xc0, 0xce, 0xbc, 0x5a, + 0x5f, 0xf6, 0x7e, 0xcf, 0xd4, 0x80, 0xdd, 0x9a, 0xd2, 0xdc, 0x73, 0x1d, + 0x20, 0x98, 0xfe, 0xa2, +}; +static const unsigned char kat2511_addin0[] = { + 0x44, 0xfb, 0x69, 0x13, 0xc1, 0xf7, 0x9b, 0x34, 0x8a, 0xf5, 0xb3, 0x94, + 0x83, 0xb6, 0x8d, 0x9b, 0x9d, 0xfc, 0x3b, 0xe8, 0x86, 0xd8, 0x45, 0x87, + 0x2a, 0x36, 0x9a, 0x8a, 0x16, 0x37, 0x5b, 0xa3, 0x6c, 0xed, 0x34, 0xb9, + 0x0c, 0x37, 0x5d, 0x54, +}; +static const unsigned char kat2511_addin1[] = { + 0x98, 0x39, 0x45, 0x87, 0x0b, 0x05, 0xee, 0x4a, 0x48, 0x87, 0x9b, 0x5c, + 0x16, 0x25, 0x6f, 0x78, 0x88, 0x14, 0x8b, 0x74, 0xaa, 0x3c, 0x89, 0xf1, + 0xf5, 0x8c, 0x1a, 0xaf, 0xcf, 0xba, 0x2a, 0xff, 0x69, 0x7c, 0x82, 0x16, + 0x88, 0x9b, 0xbf, 0xd5, +}; +static const unsigned char kat2511_retbits[] = { + 0xe0, 0xef, 0xd2, 0xe8, 0x42, 0xc3, 0xff, 0x7c, 0x81, 0x34, 0xc5, 0xdd, + 0xf1, 0xb1, 0x6a, 0xcf, 0xa4, 0xc3, 0x8b, 0x9f, 0x4f, 0x48, 0xd7, 0x23, + 0x3e, 0x2e, 0x9e, 0x8d, 0x9a, 0xb0, 0x2c, 0xaa, 0x2e, 0x8e, 0x5a, 0x3e, + 0xd9, 0xdd, 0x26, 0x7f, 0xb0, 0x71, 0x01, 0x5e, 0x04, 0xab, 0xe1, 0x6f, + 0x1c, 0x56, 0xa2, 0x1c, 0x88, 0x38, 0x19, 0x16, 0x55, 0x6c, 0x9c, 0x43, + 0xdc, 0xd0, 0x19, 0xd1, +}; +static const struct drbg_kat_pr_false kat2511_t = { + 5, kat2511_entropyin, kat2511_nonce, kat2511_persstr, + kat2511_entropyinreseed, kat2511_addinreseed, kat2511_addin0, + kat2511_addin1, kat2511_retbits +}; +static const struct drbg_kat kat2511 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2511_t +}; + +static const unsigned char kat2512_entropyin[] = { + 0xee, 0x58, 0x8c, 0x71, 0x41, 0x6f, 0x57, 0x98, 0x13, 0x22, 0x90, 0xcb, + 0x88, 0x47, 0x9c, 0x3c, 0x29, 0x45, 0xe6, 0x28, 0x63, 0xf4, 0x43, 0xa8, + 0x78, 0x96, 0x37, 0xee, 0x45, 0xd7, 0x63, 0x98, 0x34, 0x45, 0xeb, 0x78, + 0xa8, 0x03, 0x67, 0x0f, +}; +static const unsigned char kat2512_nonce[] = {0}; +static const unsigned char kat2512_persstr[] = { + 0xb4, 0x0c, 0xc9, 0x6e, 0x4b, 0x92, 0x39, 0xc1, 0x39, 0xe8, 0x40, 0xfb, + 0x7a, 0x17, 0xa4, 0x39, 0x6b, 0x24, 0x26, 0x53, 0xe0, 0xf8, 0xa1, 0x58, + 0xd2, 0x83, 0xaa, 0x7b, 0x20, 0x01, 0x30, 0x85, 0xf1, 0x0b, 0x90, 0x9b, + 0x04, 0xd1, 0xc2, 0x8d, +}; +static const unsigned char kat2512_entropyinreseed[] = { + 0x6d, 0x70, 0xa1, 0x27, 0x75, 0xfd, 0x33, 0x57, 0x57, 0x32, 0xbb, 0x66, + 0x8f, 0x34, 0xf9, 0x03, 0xa3, 0x0a, 0x5c, 0x1c, 0x33, 0xb9, 0x1b, 0x50, + 0x7d, 0x75, 0x06, 0x7e, 0x86, 0x24, 0xc5, 0x90, 0xc6, 0xee, 0x24, 0xf4, + 0xc7, 0xa2, 0x28, 0x14, +}; +static const unsigned char kat2512_addinreseed[] = { + 0xdf, 0x50, 0x03, 0x13, 0xa4, 0x4f, 0x3f, 0xb2, 0x22, 0x31, 0x68, 0xe0, + 0x0d, 0xd9, 0xe0, 0xed, 0xf0, 0x19, 0x47, 0xe6, 0xff, 0x63, 0x55, 0x07, + 0x24, 0x5d, 0xf0, 0x9d, 0x76, 0xcd, 0x62, 0x6f, 0x02, 0xd0, 0xc2, 0x1f, + 0xe4, 0x88, 0x62, 0x00, +}; +static const unsigned char kat2512_addin0[] = { + 0xac, 0x3e, 0x89, 0x42, 0x6f, 0x3d, 0x7a, 0x2b, 0x3b, 0xf3, 0xf2, 0x8a, + 0xc4, 0x47, 0x0e, 0xef, 0xb9, 0x26, 0xc0, 0x14, 0x06, 0x93, 0xd2, 0xb8, + 0x19, 0x2d, 0x67, 0xa3, 0x3a, 0xe3, 0xfc, 0x89, 0x50, 0x7c, 0xc1, 0x9c, + 0xc1, 0xc9, 0xc1, 0xf3, +}; +static const unsigned char kat2512_addin1[] = { + 0xfd, 0xeb, 0x21, 0x05, 0xda, 0x79, 0xe4, 0xa4, 0xf8, 0x01, 0x1e, 0xa6, + 0x2a, 0x3e, 0x51, 0x74, 0xff, 0xac, 0x30, 0xe5, 0x9c, 0xd1, 0x7a, 0xb7, + 0x4c, 0x56, 0xd5, 0xc8, 0x50, 0x55, 0x78, 0xe7, 0x3c, 0x9e, 0x2e, 0x23, + 0xb7, 0x4a, 0x6a, 0x42, +}; +static const unsigned char kat2512_retbits[] = { + 0x3d, 0x5f, 0x8c, 0x8f, 0xce, 0xa3, 0xb7, 0xf6, 0x79, 0xe1, 0x84, 0x06, + 0x5d, 0xb7, 0x4f, 0xc9, 0xcb, 0x2d, 0xeb, 0x92, 0xc6, 0xb8, 0x8c, 0xb9, + 0xb5, 0x44, 0x95, 0x76, 0x31, 0xef, 0xad, 0x44, 0x59, 0x2a, 0x69, 0x9a, + 0xb4, 0xa5, 0x81, 0xad, 0x9d, 0xa8, 0x11, 0xfd, 0xfc, 0x53, 0xde, 0x35, + 0x26, 0x8d, 0x7f, 0x94, 0xb9, 0xcd, 0x4a, 0x08, 0x26, 0x26, 0x16, 0x99, + 0xb0, 0xb8, 0xad, 0x9c, +}; +static const struct drbg_kat_pr_false kat2512_t = { + 6, kat2512_entropyin, kat2512_nonce, kat2512_persstr, + kat2512_entropyinreseed, kat2512_addinreseed, kat2512_addin0, + kat2512_addin1, kat2512_retbits +}; +static const struct drbg_kat kat2512 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2512_t +}; + +static const unsigned char kat2513_entropyin[] = { + 0x4c, 0x5b, 0xc6, 0x2a, 0xe8, 0x6e, 0x49, 0x66, 0xb3, 0x0a, 0xf2, 0x41, + 0x22, 0x71, 0xb0, 0x6a, 0x73, 0xd8, 0x0c, 0xd5, 0xa3, 0xfe, 0xee, 0x49, + 0x89, 0x6d, 0x7a, 0xe7, 0xa8, 0x3f, 0x02, 0x14, 0xf9, 0x70, 0x86, 0x37, + 0x06, 0xd9, 0x1b, 0x39, +}; +static const unsigned char kat2513_nonce[] = {0}; +static const unsigned char kat2513_persstr[] = { + 0x6c, 0xaf, 0x8b, 0x70, 0x57, 0xad, 0xb4, 0x7a, 0x2a, 0x29, 0x0c, 0xb6, + 0x39, 0x30, 0xb9, 0x8f, 0xff, 0x5f, 0xae, 0x62, 0x11, 0x6a, 0x2a, 0xc6, + 0x6e, 0x25, 0x9b, 0x79, 0x72, 0xe8, 0xfc, 0xc3, 0xf8, 0xae, 0xc7, 0x1e, + 0xb6, 0xa8, 0x11, 0xd0, +}; +static const unsigned char kat2513_entropyinreseed[] = { + 0xc7, 0x3e, 0x75, 0x08, 0xa1, 0xf1, 0x01, 0x69, 0x69, 0x02, 0x16, 0xac, + 0xb7, 0x68, 0x48, 0xb4, 0xf2, 0x8c, 0x03, 0xaf, 0x9a, 0xa1, 0x82, 0x63, + 0xb6, 0x34, 0x1b, 0x1f, 0xa7, 0x2a, 0x61, 0x3a, 0x4f, 0x82, 0x77, 0x8d, + 0xaf, 0xed, 0x54, 0xa7, +}; +static const unsigned char kat2513_addinreseed[] = { + 0x1f, 0xad, 0xbf, 0x63, 0x8e, 0x29, 0xef, 0xf1, 0xca, 0x40, 0x57, 0xbc, + 0x76, 0x13, 0x0b, 0x3c, 0x11, 0x3b, 0xe3, 0x4f, 0xbd, 0x81, 0xcf, 0x73, + 0x1d, 0x07, 0x5c, 0x97, 0x86, 0xc0, 0xb4, 0x28, 0x01, 0x09, 0x4e, 0xad, + 0xff, 0x13, 0x17, 0x43, +}; +static const unsigned char kat2513_addin0[] = { + 0x68, 0xb0, 0xc9, 0x76, 0x4d, 0xe8, 0x64, 0x62, 0xb6, 0xd3, 0xf5, 0xab, + 0xc2, 0xce, 0xb6, 0xf8, 0xad, 0xea, 0x42, 0xba, 0x47, 0x2c, 0x4d, 0xb7, + 0x94, 0xbc, 0xe2, 0xcd, 0x95, 0x2b, 0x77, 0xda, 0xbd, 0xe1, 0x54, 0x1c, + 0x95, 0xd3, 0xe7, 0xe9, +}; +static const unsigned char kat2513_addin1[] = { + 0xc5, 0x2e, 0x8a, 0x37, 0x4c, 0x05, 0xb1, 0x23, 0xf1, 0x7f, 0x7b, 0xfc, + 0xa5, 0x10, 0xf3, 0x2a, 0xd5, 0xaa, 0xc1, 0x2a, 0xc4, 0xc5, 0x66, 0xf1, + 0xd2, 0xa8, 0x1d, 0x55, 0xc2, 0x8f, 0x1b, 0xc3, 0xe9, 0xe0, 0x6a, 0xfe, + 0x41, 0x0b, 0x4f, 0x15, +}; +static const unsigned char kat2513_retbits[] = { + 0xef, 0x4a, 0x87, 0x74, 0x28, 0x2d, 0x18, 0x03, 0xb8, 0xfb, 0xce, 0x90, + 0xa2, 0x17, 0xeb, 0x26, 0xa2, 0xc4, 0x6d, 0xe2, 0x3e, 0xc8, 0xbc, 0x0c, + 0xcd, 0xa7, 0x95, 0xb3, 0xf2, 0x61, 0x12, 0x98, 0x24, 0xf3, 0x63, 0x36, + 0x39, 0x07, 0x3c, 0x39, 0xc3, 0x9c, 0xa4, 0x69, 0x0d, 0x46, 0x76, 0xad, + 0xc2, 0x16, 0x28, 0x43, 0x1e, 0xc5, 0x36, 0xab, 0x6d, 0x4f, 0x78, 0x80, + 0x9f, 0xc8, 0xce, 0xb8, +}; +static const struct drbg_kat_pr_false kat2513_t = { + 7, kat2513_entropyin, kat2513_nonce, kat2513_persstr, + kat2513_entropyinreseed, kat2513_addinreseed, kat2513_addin0, + kat2513_addin1, kat2513_retbits +}; +static const struct drbg_kat kat2513 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2513_t +}; + +static const unsigned char kat2514_entropyin[] = { + 0xac, 0xa4, 0xfb, 0x3f, 0x4c, 0x6f, 0x56, 0xa4, 0x12, 0x6d, 0x4f, 0xc7, + 0xa8, 0x79, 0xb4, 0x83, 0xa7, 0x2e, 0x49, 0xbf, 0x7f, 0x35, 0x38, 0xe2, + 0xb5, 0xa5, 0xa0, 0x2f, 0x35, 0x84, 0xa9, 0xf7, 0x1a, 0x77, 0x3c, 0xf0, + 0x92, 0x7c, 0x0f, 0x33, +}; +static const unsigned char kat2514_nonce[] = {0}; +static const unsigned char kat2514_persstr[] = { + 0x6a, 0x62, 0xf1, 0x2a, 0x35, 0x2a, 0x35, 0xcc, 0xd1, 0xa5, 0x3e, 0x3d, + 0xd9, 0x9c, 0x74, 0xf2, 0xe5, 0xeb, 0xf0, 0xd4, 0x57, 0x94, 0x16, 0x32, + 0x2f, 0x4b, 0xa7, 0xb9, 0x95, 0x57, 0xb5, 0x56, 0x59, 0xe0, 0xbe, 0x67, + 0x0f, 0x62, 0xf8, 0xdc, +}; +static const unsigned char kat2514_entropyinreseed[] = { + 0x89, 0x5d, 0xf4, 0x20, 0x82, 0xa5, 0xf6, 0x4b, 0xae, 0xdc, 0xeb, 0xd5, + 0xe0, 0x0b, 0x9a, 0x93, 0x9a, 0xc8, 0xfa, 0xc4, 0x3e, 0x13, 0x21, 0x0d, + 0x54, 0x32, 0x17, 0x8f, 0xf4, 0xd0, 0x9f, 0x6a, 0xd6, 0x25, 0xab, 0x0b, + 0xe0, 0x17, 0x39, 0x1e, +}; +static const unsigned char kat2514_addinreseed[] = { + 0x57, 0x85, 0xee, 0x0f, 0xd8, 0x9a, 0xe5, 0xbf, 0xa8, 0x76, 0xfc, 0xa1, + 0x86, 0x11, 0xd2, 0x02, 0xbd, 0x10, 0xac, 0xfe, 0x18, 0x61, 0x1b, 0xa8, + 0x4d, 0x98, 0xb6, 0x1c, 0xec, 0xd0, 0x7c, 0xd0, 0xe4, 0x09, 0x12, 0x39, + 0x7b, 0x08, 0x87, 0x5b, +}; +static const unsigned char kat2514_addin0[] = { + 0x62, 0xdc, 0x52, 0x91, 0x98, 0xb9, 0xe8, 0x3f, 0x76, 0x78, 0xab, 0x67, + 0xb8, 0x41, 0x59, 0x50, 0x4e, 0xac, 0xde, 0x8d, 0xbd, 0xbc, 0x78, 0x50, + 0x35, 0x79, 0x23, 0xda, 0x63, 0x72, 0x70, 0x1e, 0xc9, 0xb4, 0x81, 0x67, + 0x3d, 0xa9, 0x34, 0xc2, +}; +static const unsigned char kat2514_addin1[] = { + 0x8c, 0x46, 0xe8, 0xc6, 0x94, 0x89, 0xbd, 0x57, 0x6a, 0x52, 0x7c, 0x0f, + 0x4e, 0x07, 0xdc, 0xb1, 0xe7, 0xf0, 0x80, 0x2d, 0x0b, 0x2c, 0xdf, 0x3b, + 0xc9, 0xe2, 0xf8, 0x2f, 0x95, 0x7e, 0x5f, 0x23, 0x55, 0x16, 0xc0, 0xdf, + 0xeb, 0xc6, 0x62, 0x6f, +}; +static const unsigned char kat2514_retbits[] = { + 0xdd, 0x13, 0x43, 0x2a, 0x9b, 0x4e, 0x96, 0xee, 0x15, 0x35, 0xdc, 0x9b, + 0x57, 0x20, 0x7e, 0x1c, 0xf3, 0x18, 0x3f, 0x03, 0x4e, 0x90, 0xb4, 0x5a, + 0xee, 0xf5, 0x15, 0xf4, 0xf4, 0x61, 0x17, 0xed, 0x09, 0x0e, 0x26, 0x38, + 0xbe, 0x66, 0x2c, 0xa8, 0x5c, 0xc7, 0x3a, 0x16, 0x44, 0xf7, 0x1f, 0x12, + 0xcb, 0x38, 0x05, 0x04, 0xe3, 0x3e, 0x07, 0x51, 0x47, 0xf9, 0x52, 0xdc, + 0xda, 0xe6, 0xb5, 0xe0, +}; +static const struct drbg_kat_pr_false kat2514_t = { + 8, kat2514_entropyin, kat2514_nonce, kat2514_persstr, + kat2514_entropyinreseed, kat2514_addinreseed, kat2514_addin0, + kat2514_addin1, kat2514_retbits +}; +static const struct drbg_kat kat2514 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2514_t +}; + +static const unsigned char kat2515_entropyin[] = { + 0xd8, 0xa5, 0xa1, 0xca, 0x80, 0x1d, 0xb7, 0xf7, 0xdf, 0x8f, 0xd8, 0xf0, + 0x70, 0x34, 0x2c, 0xb9, 0x66, 0x14, 0xfe, 0x6f, 0xf3, 0xf0, 0x06, 0x6b, + 0x47, 0x18, 0xbf, 0xc7, 0x82, 0x3d, 0xbf, 0x60, 0xa6, 0x14, 0x3c, 0x12, + 0x21, 0xa5, 0xb8, 0xce, +}; +static const unsigned char kat2515_nonce[] = {0}; +static const unsigned char kat2515_persstr[] = { + 0xdb, 0xea, 0x8c, 0x71, 0xa4, 0x1b, 0xfc, 0xac, 0x5d, 0xa7, 0x59, 0xa1, + 0xc6, 0x9c, 0x1a, 0x1a, 0x1a, 0xf5, 0x97, 0x75, 0x39, 0x3a, 0xbf, 0x0f, + 0xe9, 0xcb, 0x78, 0x09, 0x43, 0x66, 0x2e, 0xc3, 0xce, 0x06, 0x64, 0xef, + 0x6e, 0xe7, 0xec, 0x05, +}; +static const unsigned char kat2515_entropyinreseed[] = { + 0x9d, 0x7a, 0x88, 0xfb, 0x58, 0xd5, 0x92, 0x47, 0x7b, 0xef, 0x88, 0x0a, + 0x4e, 0xc1, 0x73, 0x72, 0xaf, 0xfb, 0x6d, 0x90, 0x12, 0xa8, 0x6b, 0xfd, + 0xae, 0x3f, 0xc9, 0xa8, 0xd7, 0xc5, 0xa8, 0xcb, 0xfd, 0x83, 0x1b, 0x26, + 0xe1, 0x15, 0xd9, 0x61, +}; +static const unsigned char kat2515_addinreseed[] = { + 0x7b, 0xd9, 0xaa, 0x01, 0x43, 0x85, 0x9b, 0x16, 0xcb, 0x7b, 0xad, 0x10, + 0x7b, 0xd4, 0x35, 0x3a, 0x95, 0x93, 0x4d, 0xeb, 0xc0, 0xf8, 0x8b, 0x08, + 0x19, 0x42, 0x79, 0x3b, 0x66, 0xce, 0x09, 0x76, 0x75, 0x6c, 0x6d, 0xbe, + 0x76, 0x3c, 0x1e, 0xa9, +}; +static const unsigned char kat2515_addin0[] = { + 0xba, 0xf3, 0x4d, 0xf3, 0xc4, 0x2e, 0x3a, 0x63, 0xe3, 0x87, 0xdb, 0xf9, + 0xad, 0x35, 0x82, 0x7a, 0x77, 0x44, 0xc2, 0x95, 0xb0, 0xb5, 0xb0, 0x55, + 0x04, 0x1d, 0xca, 0x13, 0x00, 0xc2, 0xb2, 0x6a, 0x03, 0xc2, 0x35, 0xfb, + 0x9e, 0x37, 0x01, 0xd7, +}; +static const unsigned char kat2515_addin1[] = { + 0x27, 0xa3, 0xae, 0x0b, 0xc3, 0x7c, 0x1e, 0x8a, 0xad, 0xde, 0x39, 0x34, + 0x2c, 0x5b, 0xdc, 0x5c, 0xab, 0x21, 0xdd, 0xf6, 0x3d, 0x2d, 0x2d, 0xc2, + 0x07, 0xc6, 0x27, 0xb9, 0x64, 0xbb, 0xab, 0x9e, 0xd5, 0x67, 0xc5, 0xb0, + 0x0c, 0x75, 0x9b, 0xed, +}; +static const unsigned char kat2515_retbits[] = { + 0xc7, 0xf0, 0xfb, 0xfb, 0x04, 0x40, 0x86, 0xb4, 0xde, 0x21, 0x26, 0xe2, + 0x10, 0x58, 0x15, 0x5a, 0x38, 0xca, 0x2b, 0x3a, 0x53, 0x7a, 0x83, 0x2a, + 0x40, 0xf6, 0x95, 0x9a, 0x9d, 0xb0, 0xd1, 0xd2, 0xe0, 0xea, 0x58, 0xf1, + 0x11, 0x17, 0x91, 0x99, 0xaf, 0x21, 0x25, 0xf3, 0x1b, 0xb6, 0x30, 0x53, + 0x5f, 0xf5, 0x1a, 0x6a, 0x08, 0xda, 0xa8, 0x21, 0x3a, 0x94, 0x25, 0xd0, + 0xa9, 0x62, 0x8c, 0x9e, +}; +static const struct drbg_kat_pr_false kat2515_t = { + 9, kat2515_entropyin, kat2515_nonce, kat2515_persstr, + kat2515_entropyinreseed, kat2515_addinreseed, kat2515_addin0, + kat2515_addin1, kat2515_retbits +}; +static const struct drbg_kat kat2515 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2515_t +}; + +static const unsigned char kat2516_entropyin[] = { + 0xc1, 0x8c, 0x5c, 0xb0, 0x7f, 0xac, 0x06, 0x40, 0x7a, 0xa9, 0xdd, 0xf3, + 0xb1, 0x2e, 0xe2, 0x6a, 0x19, 0xf1, 0x8a, 0x9e, 0xbb, 0xc2, 0x41, 0xf7, + 0x29, 0xbe, 0x30, 0xa1, 0x27, 0x39, 0xa5, 0x61, 0x17, 0x35, 0xa7, 0xca, + 0x8e, 0x3a, 0x3d, 0x2a, +}; +static const unsigned char kat2516_nonce[] = {0}; +static const unsigned char kat2516_persstr[] = { + 0xff, 0xbc, 0x0d, 0xd0, 0x99, 0xfe, 0x14, 0xa2, 0xb0, 0xc6, 0xfd, 0x46, + 0x00, 0x04, 0x41, 0xc2, 0x01, 0x62, 0x8e, 0x10, 0x6c, 0x4d, 0xbc, 0x29, + 0x49, 0x83, 0xe4, 0x04, 0x04, 0x3c, 0x73, 0xc7, 0x96, 0x4a, 0x22, 0x4f, + 0x55, 0x29, 0x38, 0xb8, +}; +static const unsigned char kat2516_entropyinreseed[] = { + 0xad, 0x17, 0xf7, 0x99, 0x13, 0x22, 0x3c, 0xf2, 0xf7, 0xf7, 0x75, 0xb2, + 0xaf, 0xb3, 0x0b, 0x24, 0xe6, 0x77, 0x4c, 0x03, 0xc6, 0xf6, 0x31, 0xb9, + 0xaf, 0x19, 0xdd, 0x75, 0x1e, 0xa9, 0x90, 0xf4, 0xe7, 0x22, 0x42, 0x44, + 0x58, 0x63, 0xd6, 0x64, +}; +static const unsigned char kat2516_addinreseed[] = { + 0x2f, 0xd2, 0x88, 0x26, 0xc4, 0xe0, 0x23, 0xf5, 0x6e, 0xe4, 0xc8, 0x72, + 0xc6, 0x8f, 0x7c, 0xa6, 0x2b, 0x92, 0x23, 0xac, 0xfe, 0x9c, 0xee, 0x92, + 0x3a, 0xb0, 0xfe, 0x6f, 0x4b, 0x27, 0x17, 0x28, 0xe5, 0x88, 0xa1, 0xd4, + 0x1b, 0x89, 0xa5, 0x6e, +}; +static const unsigned char kat2516_addin0[] = { + 0x89, 0x90, 0xd5, 0x75, 0xda, 0xee, 0xb3, 0x08, 0xff, 0xcd, 0xd1, 0xc8, + 0x62, 0xcd, 0x23, 0x42, 0x39, 0x9d, 0xd3, 0x44, 0x04, 0xff, 0x8e, 0xbc, + 0xfb, 0x49, 0x0d, 0x5b, 0x37, 0x2d, 0x90, 0xa5, 0x97, 0x12, 0x0d, 0x2b, + 0xd9, 0x1c, 0x7f, 0x19, +}; +static const unsigned char kat2516_addin1[] = { + 0x35, 0x75, 0x57, 0xd8, 0x97, 0x4d, 0x5f, 0xa3, 0x0d, 0x91, 0x54, 0xc8, + 0x5a, 0x5c, 0xa8, 0xe1, 0x45, 0x7e, 0x24, 0xc1, 0x48, 0x45, 0x90, 0xa4, + 0x59, 0x44, 0xbb, 0x8f, 0x4a, 0xac, 0xd1, 0x68, 0xca, 0xc4, 0x53, 0x7d, + 0xce, 0x99, 0xe6, 0x4c, +}; +static const unsigned char kat2516_retbits[] = { + 0x07, 0xe4, 0x15, 0x37, 0x40, 0x54, 0xf9, 0x55, 0xa1, 0x5f, 0x24, 0xa2, + 0x37, 0x6b, 0x34, 0x5c, 0x77, 0x47, 0x9a, 0x72, 0x63, 0x8e, 0x48, 0x46, + 0xed, 0x22, 0x48, 0x23, 0x49, 0x84, 0x32, 0x0e, 0xc8, 0x89, 0x76, 0x8e, + 0x6a, 0xb1, 0x68, 0x6d, 0x70, 0xd6, 0x74, 0x0b, 0x50, 0xb8, 0xc1, 0xdb, + 0x6e, 0x92, 0x26, 0xb8, 0x33, 0x49, 0x58, 0x50, 0xc6, 0x3f, 0xc6, 0x90, + 0x9d, 0x19, 0xb3, 0xea, +}; +static const struct drbg_kat_pr_false kat2516_t = { + 10, kat2516_entropyin, kat2516_nonce, kat2516_persstr, + kat2516_entropyinreseed, kat2516_addinreseed, kat2516_addin0, + kat2516_addin1, kat2516_retbits +}; +static const struct drbg_kat kat2516 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2516_t +}; + +static const unsigned char kat2517_entropyin[] = { + 0xd8, 0x47, 0x20, 0x66, 0x9e, 0x4f, 0x05, 0xc2, 0x6d, 0x09, 0x2f, 0x69, + 0x44, 0x60, 0x8f, 0x03, 0x9a, 0x9c, 0x7d, 0x74, 0x1d, 0xc3, 0xcc, 0xa5, + 0x73, 0xc1, 0x79, 0xf8, 0x01, 0xf1, 0xa0, 0xd9, 0x74, 0x9e, 0x4c, 0xfe, + 0x04, 0xc0, 0x8b, 0x3c, +}; +static const unsigned char kat2517_nonce[] = {0}; +static const unsigned char kat2517_persstr[] = { + 0xe3, 0x09, 0xd3, 0x7d, 0xe7, 0xda, 0x0a, 0xbe, 0xff, 0x54, 0x0b, 0x5b, + 0x64, 0x73, 0x64, 0x07, 0xf1, 0x68, 0x35, 0xb8, 0x8b, 0x4b, 0xdd, 0xcc, + 0x41, 0xd8, 0x8a, 0x55, 0xc9, 0xb1, 0x8f, 0xfd, 0xb1, 0x8a, 0x75, 0x4d, + 0xd0, 0x96, 0xe8, 0x5c, +}; +static const unsigned char kat2517_entropyinreseed[] = { + 0xc4, 0x0c, 0xe5, 0x4b, 0xbc, 0xab, 0x56, 0xaf, 0xaa, 0x50, 0x3c, 0x55, + 0x00, 0xdb, 0xa4, 0xf3, 0x0a, 0x92, 0x18, 0x11, 0xa2, 0x4e, 0xfe, 0x46, + 0xcf, 0x4d, 0xb2, 0xf3, 0xc2, 0x1c, 0x25, 0x60, 0x06, 0x32, 0xdd, 0xf6, + 0x65, 0xb0, 0x7f, 0xfa, +}; +static const unsigned char kat2517_addinreseed[] = { + 0x1c, 0x04, 0xb4, 0x70, 0x4d, 0x86, 0x98, 0xc1, 0x73, 0x16, 0x21, 0xaa, + 0x87, 0x51, 0x9f, 0x39, 0x2f, 0x13, 0x91, 0xd3, 0x6d, 0x2a, 0x40, 0xf1, + 0x58, 0x94, 0xec, 0x50, 0x35, 0xb5, 0x37, 0xb7, 0xec, 0x0d, 0x4a, 0xdf, + 0x6d, 0x1b, 0xb4, 0xa0, +}; +static const unsigned char kat2517_addin0[] = { + 0xbb, 0xb4, 0x2b, 0x0b, 0x02, 0x98, 0x05, 0x03, 0x93, 0x55, 0x6e, 0x41, + 0x09, 0x8d, 0x14, 0x0a, 0x69, 0x76, 0x5c, 0x85, 0xbc, 0x27, 0x94, 0x19, + 0x49, 0x20, 0xfa, 0xbc, 0x91, 0xad, 0x5f, 0xb7, 0x7e, 0x84, 0x22, 0xc6, + 0x2b, 0xc3, 0xc2, 0x5d, +}; +static const unsigned char kat2517_addin1[] = { + 0x20, 0x6c, 0xad, 0x3c, 0x4b, 0xa7, 0xb5, 0xdf, 0xfb, 0x17, 0xd6, 0xa9, + 0x39, 0xb6, 0xf3, 0xb0, 0x9b, 0x29, 0x65, 0xd5, 0xb4, 0x0d, 0x2e, 0x13, + 0xa6, 0x6e, 0xd8, 0x9f, 0xea, 0x6a, 0xde, 0x43, 0x5b, 0x54, 0x43, 0xa4, + 0x2b, 0x3a, 0x1e, 0xb5, +}; +static const unsigned char kat2517_retbits[] = { + 0x9d, 0x71, 0x15, 0x4b, 0x79, 0xda, 0x6c, 0x91, 0x20, 0x97, 0x2a, 0x4d, + 0x25, 0x16, 0x91, 0xc1, 0x05, 0x34, 0x42, 0xdf, 0x43, 0x57, 0x64, 0x58, + 0x7c, 0x89, 0x2b, 0xc1, 0x1c, 0x80, 0x08, 0x58, 0xed, 0xd4, 0xdd, 0x19, + 0xc3, 0x6d, 0x1b, 0x99, 0x7d, 0x70, 0x36, 0x6f, 0x0b, 0x0c, 0x5c, 0xe5, + 0x9c, 0x56, 0x34, 0xeb, 0x8c, 0xba, 0x50, 0xe5, 0x46, 0xe0, 0x7d, 0xa0, + 0x1d, 0x9e, 0x7b, 0x96, +}; +static const struct drbg_kat_pr_false kat2517_t = { + 11, kat2517_entropyin, kat2517_nonce, kat2517_persstr, + kat2517_entropyinreseed, kat2517_addinreseed, kat2517_addin0, + kat2517_addin1, kat2517_retbits +}; +static const struct drbg_kat kat2517 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2517_t +}; + +static const unsigned char kat2518_entropyin[] = { + 0x5d, 0xcb, 0x4b, 0xe4, 0x94, 0x38, 0x21, 0x0a, 0xa2, 0x68, 0x2f, 0x7d, + 0x78, 0x4a, 0xae, 0xe5, 0x0d, 0x29, 0xef, 0xaa, 0x63, 0xfa, 0x63, 0xad, + 0xc8, 0x9e, 0x3c, 0xd7, 0xd7, 0x01, 0x71, 0x0f, 0x8f, 0xd2, 0xd4, 0x4c, + 0xd5, 0x1a, 0x2d, 0x7f, +}; +static const unsigned char kat2518_nonce[] = {0}; +static const unsigned char kat2518_persstr[] = { + 0xf8, 0xf7, 0x9c, 0xf6, 0x95, 0x1e, 0x84, 0x0f, 0x22, 0x8d, 0x9d, 0x28, + 0x77, 0x11, 0x85, 0xbc, 0xde, 0x72, 0x92, 0x3a, 0xce, 0x20, 0xc3, 0x07, + 0x9f, 0x85, 0x5a, 0xfa, 0x0a, 0x1e, 0x61, 0xa5, 0x7e, 0xaa, 0x23, 0x23, + 0xf3, 0x4c, 0xcd, 0x61, +}; +static const unsigned char kat2518_entropyinreseed[] = { + 0xbd, 0x59, 0x60, 0x16, 0x28, 0x8a, 0x02, 0xfd, 0xae, 0x29, 0x12, 0x16, + 0xf8, 0xb5, 0xc3, 0x13, 0x5b, 0x96, 0xee, 0xdd, 0xed, 0xe6, 0x9c, 0xd1, + 0xc5, 0xf3, 0x07, 0xd7, 0x58, 0x98, 0x1f, 0x16, 0x4b, 0x5b, 0x63, 0x1a, + 0xe1, 0x55, 0x23, 0xf3, +}; +static const unsigned char kat2518_addinreseed[] = { + 0x3e, 0x2c, 0xd8, 0xc5, 0x97, 0x3b, 0x30, 0x2f, 0x75, 0x36, 0x63, 0x6d, + 0xa1, 0x7f, 0x5b, 0xb2, 0xa5, 0x93, 0xe5, 0x91, 0xc3, 0xec, 0xc8, 0xec, + 0x37, 0x1f, 0x72, 0x76, 0x52, 0x04, 0x61, 0x8c, 0x0d, 0x65, 0x90, 0xe9, + 0xf6, 0x2b, 0x2d, 0xed, +}; +static const unsigned char kat2518_addin0[] = { + 0x9b, 0x74, 0xbf, 0x20, 0x98, 0xce, 0xfd, 0xef, 0x3a, 0xe1, 0x6c, 0x4c, + 0x7a, 0x76, 0x4c, 0xa8, 0x9c, 0x72, 0xb6, 0xd5, 0xe8, 0x3e, 0x85, 0x17, + 0xbe, 0x76, 0x1a, 0xcd, 0x4c, 0x1a, 0xdd, 0x40, 0x30, 0x6c, 0x3c, 0xaf, + 0x41, 0xe2, 0x1c, 0x51, +}; +static const unsigned char kat2518_addin1[] = { + 0x94, 0x87, 0xa6, 0xa1, 0xac, 0x80, 0x0a, 0x07, 0xae, 0x94, 0x8c, 0xcb, + 0x40, 0xef, 0x71, 0x2c, 0x8b, 0x23, 0x79, 0x48, 0x64, 0xc9, 0x24, 0xb4, + 0xf4, 0xe7, 0x9c, 0xe0, 0xe5, 0xb4, 0x76, 0xa3, 0x6f, 0x60, 0x96, 0x74, + 0xfe, 0x53, 0x03, 0xfe, +}; +static const unsigned char kat2518_retbits[] = { + 0x4e, 0xf2, 0x28, 0x01, 0xd1, 0x5c, 0x14, 0x7a, 0x26, 0x71, 0x72, 0x04, + 0x89, 0x44, 0x35, 0x34, 0x93, 0x56, 0x7f, 0xb9, 0xfe, 0xe8, 0x54, 0xde, + 0x3e, 0xe1, 0x8f, 0xe4, 0x64, 0x55, 0xe1, 0x41, 0xad, 0x52, 0x66, 0x32, + 0xc4, 0xaf, 0xbc, 0x14, 0x64, 0xd6, 0x37, 0xe5, 0x94, 0x21, 0xe9, 0x6d, + 0x8a, 0x3e, 0x09, 0x83, 0x58, 0x3f, 0xe4, 0x15, 0x2a, 0xcc, 0x7f, 0xb2, + 0xdc, 0x0d, 0xbd, 0x89, +}; +static const struct drbg_kat_pr_false kat2518_t = { + 12, kat2518_entropyin, kat2518_nonce, kat2518_persstr, + kat2518_entropyinreseed, kat2518_addinreseed, kat2518_addin0, + kat2518_addin1, kat2518_retbits +}; +static const struct drbg_kat kat2518 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2518_t +}; + +static const unsigned char kat2519_entropyin[] = { + 0x15, 0xd9, 0xb2, 0xac, 0x39, 0x83, 0x55, 0x3e, 0x16, 0x70, 0x33, 0x7d, + 0x7c, 0x8a, 0x2d, 0x03, 0xa7, 0xa7, 0x0c, 0x65, 0x11, 0xce, 0x55, 0xd4, + 0x62, 0xaf, 0xe1, 0x47, 0x92, 0xf8, 0x52, 0xa1, 0x13, 0x86, 0x2e, 0xb5, + 0xed, 0x39, 0x80, 0x65, +}; +static const unsigned char kat2519_nonce[] = {0}; +static const unsigned char kat2519_persstr[] = { + 0xed, 0xbd, 0x08, 0xe6, 0xca, 0x63, 0x83, 0x1e, 0x69, 0x07, 0xf4, 0xa6, + 0x9f, 0x4b, 0x95, 0x43, 0x70, 0xe5, 0xa4, 0x45, 0x36, 0x7d, 0x92, 0xb4, + 0xaa, 0xcb, 0xae, 0x1c, 0x0a, 0x0c, 0x48, 0x3e, 0x1c, 0x97, 0xee, 0x0c, + 0x7f, 0x2f, 0x40, 0x84, +}; +static const unsigned char kat2519_entropyinreseed[] = { + 0xa9, 0x15, 0x8b, 0x76, 0x02, 0xda, 0x31, 0x26, 0xbb, 0x42, 0x94, 0xcd, + 0xcb, 0x47, 0x19, 0x8e, 0x36, 0x6d, 0x7b, 0x71, 0xf7, 0xd1, 0x14, 0x4d, + 0x99, 0x05, 0x64, 0x9a, 0xaf, 0x56, 0x71, 0xac, 0x7c, 0x3b, 0x77, 0x77, + 0xe1, 0x74, 0xf0, 0x4b, +}; +static const unsigned char kat2519_addinreseed[] = { + 0xd7, 0xe0, 0x7d, 0xb7, 0x68, 0xfc, 0x0e, 0x49, 0x9e, 0x9a, 0x6f, 0x31, + 0x50, 0xa3, 0xff, 0x9f, 0x46, 0x63, 0xbd, 0x4b, 0xb8, 0x6f, 0xf7, 0x5a, + 0xc7, 0x87, 0x71, 0x6a, 0x72, 0x88, 0xc3, 0x11, 0x33, 0xca, 0xd9, 0xdc, + 0x26, 0xdb, 0x2c, 0xe1, +}; +static const unsigned char kat2519_addin0[] = { + 0x76, 0xe6, 0xa1, 0x87, 0x64, 0xfa, 0x75, 0xda, 0x82, 0x16, 0x3a, 0x59, + 0xed, 0xb8, 0xcc, 0x04, 0x61, 0x50, 0x44, 0x06, 0xeb, 0x9b, 0xe3, 0x71, + 0x2a, 0x21, 0xad, 0x24, 0xe4, 0x95, 0xd7, 0x89, 0x02, 0x46, 0xc4, 0x4d, + 0x96, 0x84, 0xb0, 0x64, +}; +static const unsigned char kat2519_addin1[] = { + 0x82, 0xd8, 0xa3, 0x97, 0x06, 0x0e, 0x1a, 0x94, 0x8e, 0xf2, 0xa7, 0x0f, + 0x48, 0xc3, 0x2c, 0xd5, 0x6e, 0xc9, 0x35, 0x80, 0x1a, 0x5a, 0x65, 0x42, + 0x2a, 0xae, 0x18, 0x5e, 0xe0, 0x57, 0xcf, 0xd5, 0x87, 0xa3, 0xfa, 0xcf, + 0xc0, 0xfe, 0xac, 0x4b, +}; +static const unsigned char kat2519_retbits[] = { + 0x18, 0xf5, 0x3b, 0x7b, 0x2f, 0x17, 0xdc, 0x14, 0x28, 0x85, 0x1d, 0x36, + 0x58, 0xf9, 0xcc, 0x3e, 0x85, 0x9b, 0xf6, 0xc9, 0x1a, 0xc9, 0x4e, 0x44, + 0x9d, 0x03, 0xb8, 0x8f, 0x92, 0xd2, 0xf0, 0x6c, 0x8f, 0xa1, 0x15, 0x09, + 0x98, 0x8a, 0xa2, 0x8a, 0x32, 0x2c, 0x3f, 0x8e, 0x1d, 0x82, 0x6d, 0x7c, + 0xc3, 0x7e, 0x2c, 0xff, 0x8c, 0xea, 0x20, 0x34, 0x0a, 0x09, 0xf4, 0xa3, + 0x5f, 0xc4, 0x89, 0x0f, +}; +static const struct drbg_kat_pr_false kat2519_t = { + 13, kat2519_entropyin, kat2519_nonce, kat2519_persstr, + kat2519_entropyinreseed, kat2519_addinreseed, kat2519_addin0, + kat2519_addin1, kat2519_retbits +}; +static const struct drbg_kat kat2519 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2519_t +}; + +static const unsigned char kat2520_entropyin[] = { + 0xa4, 0x5e, 0x35, 0xe0, 0xad, 0x03, 0x06, 0x22, 0x5c, 0xf6, 0xe6, 0x8d, + 0xb1, 0xad, 0xa9, 0xfd, 0xc5, 0xbe, 0x20, 0xf9, 0x67, 0xed, 0x74, 0xe0, + 0xfa, 0x42, 0xb1, 0x84, 0xbe, 0xed, 0x56, 0xfa, 0xa3, 0x47, 0xed, 0x4c, + 0x6a, 0x17, 0xc9, 0xf2, +}; +static const unsigned char kat2520_nonce[] = {0}; +static const unsigned char kat2520_persstr[] = { + 0x56, 0x29, 0x19, 0x28, 0x11, 0x26, 0xb7, 0x0b, 0x46, 0xe6, 0xf4, 0x2f, + 0x92, 0xc8, 0xfa, 0x1e, 0xcc, 0x1c, 0xe9, 0xe3, 0xb3, 0xd5, 0x5d, 0x1d, + 0x77, 0x13, 0x8e, 0x4b, 0x81, 0x72, 0x78, 0x00, 0xe7, 0xcc, 0x0f, 0xea, + 0x5a, 0xb9, 0xf1, 0x85, +}; +static const unsigned char kat2520_entropyinreseed[] = { + 0x59, 0xae, 0x2e, 0x14, 0x61, 0x4a, 0x27, 0xea, 0xa3, 0xb8, 0xde, 0x7f, + 0x37, 0x77, 0x21, 0x4c, 0xa4, 0xfa, 0x20, 0x6e, 0xb8, 0x68, 0xf0, 0x2d, + 0x72, 0x4c, 0x18, 0x54, 0x9f, 0xe7, 0x7d, 0xc8, 0xd9, 0xa4, 0x65, 0xf1, + 0xcf, 0x56, 0x84, 0x9a, +}; +static const unsigned char kat2520_addinreseed[] = { + 0x04, 0x84, 0x64, 0x4b, 0x35, 0x07, 0x33, 0x0e, 0x45, 0xe3, 0x93, 0x3e, + 0xc3, 0x42, 0xd5, 0xee, 0x4a, 0xf1, 0xf7, 0x84, 0xa5, 0x3c, 0x4e, 0xf6, + 0x38, 0xc6, 0x8f, 0x7f, 0xab, 0x03, 0xaa, 0xeb, 0x41, 0x1f, 0xeb, 0xf9, + 0xdc, 0x51, 0x94, 0xc5, +}; +static const unsigned char kat2520_addin0[] = { + 0x6f, 0x6d, 0x6a, 0xb0, 0xd0, 0xc0, 0x2e, 0xcf, 0xba, 0xa3, 0xba, 0x6d, + 0x8f, 0x38, 0xa8, 0xac, 0xb0, 0x86, 0x99, 0xd0, 0x8f, 0x30, 0x35, 0xce, + 0x7f, 0xd0, 0x33, 0x43, 0xb7, 0xef, 0x2d, 0x96, 0x1d, 0xde, 0xc5, 0x81, + 0x2a, 0x30, 0xa0, 0x45, +}; +static const unsigned char kat2520_addin1[] = { + 0xfb, 0xa0, 0xd6, 0xf6, 0xca, 0x8f, 0x1a, 0x58, 0x77, 0x82, 0xc5, 0x31, + 0x97, 0x66, 0x20, 0x90, 0x59, 0xa2, 0x3c, 0xb3, 0xe7, 0x47, 0x6b, 0x2d, + 0x06, 0x0a, 0xd0, 0x6f, 0x2d, 0xb9, 0xe0, 0x97, 0x28, 0xcd, 0xbe, 0x0f, + 0x8a, 0x86, 0xc1, 0x4c, +}; +static const unsigned char kat2520_retbits[] = { + 0x9e, 0x88, 0x54, 0x4b, 0x84, 0x86, 0xd3, 0x44, 0x5c, 0x0b, 0xf4, 0x7d, + 0x0f, 0x55, 0xbb, 0x8d, 0x3f, 0x2a, 0xbf, 0x5d, 0x5b, 0x28, 0x16, 0xdf, + 0x7a, 0xbc, 0xf3, 0xf4, 0x19, 0xdc, 0x37, 0xca, 0x33, 0x2b, 0xc0, 0x0f, + 0xb8, 0xc4, 0x01, 0x52, 0x75, 0x0b, 0x4c, 0x46, 0x05, 0x4e, 0x8a, 0x28, + 0x11, 0x90, 0xf6, 0xe3, 0x00, 0x7b, 0x84, 0x4c, 0x63, 0xf6, 0xcb, 0xd1, + 0xdd, 0x9a, 0xcb, 0x01, +}; +static const struct drbg_kat_pr_false kat2520_t = { + 14, kat2520_entropyin, kat2520_nonce, kat2520_persstr, + kat2520_entropyinreseed, kat2520_addinreseed, kat2520_addin0, + kat2520_addin1, kat2520_retbits +}; +static const struct drbg_kat kat2520 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2520_t +}; + +static const unsigned char kat2521_entropyin[] = { + 0x3b, 0xb9, 0xb2, 0x66, 0x2a, 0x25, 0x5d, 0xf8, 0xf8, 0x80, 0x88, 0x47, + 0x18, 0x84, 0x06, 0x96, 0x0e, 0xc0, 0x03, 0x35, 0x1c, 0xab, 0x3a, 0xd2, + 0x02, 0x78, 0x71, 0xf1, 0x30, 0x29, 0x56, 0xaa, 0x31, 0xab, 0xc8, 0xd3, + 0x9c, 0x36, 0x29, 0xd9, +}; +static const unsigned char kat2521_nonce[] = {0}; +static const unsigned char kat2521_persstr[] = {0}; +static const unsigned char kat2521_entropyinreseed[] = { + 0x7b, 0xc8, 0x63, 0xda, 0x2b, 0x9f, 0xde, 0x00, 0x8b, 0x61, 0x00, 0x79, + 0xf8, 0xbd, 0x80, 0x41, 0x80, 0xa7, 0xe8, 0x65, 0x3c, 0xa6, 0xe9, 0x1a, + 0x5a, 0x90, 0x61, 0x9c, 0x23, 0xe0, 0x2c, 0xe4, 0xd6, 0x07, 0xb0, 0x0c, + 0x79, 0x24, 0x36, 0xfe, +}; +static const unsigned char kat2521_addinreseed[] = {0}; +static const unsigned char kat2521_addin0[] = {0}; +static const unsigned char kat2521_addin1[] = {0}; +static const unsigned char kat2521_retbits[] = { + 0x50, 0x6c, 0x74, 0x51, 0xe5, 0xee, 0x0f, 0xdc, 0xa4, 0x86, 0x32, 0x94, + 0x2f, 0x2b, 0xa4, 0x73, 0x04, 0xeb, 0x02, 0x10, 0xf1, 0xfa, 0xc6, 0x6c, + 0x62, 0x03, 0x65, 0xf7, 0x53, 0xef, 0x70, 0x98, 0x9c, 0x40, 0xfe, 0x9f, + 0xd5, 0x4d, 0x54, 0xa9, 0xe4, 0xaa, 0x0b, 0x3f, 0x1a, 0xb7, 0x00, 0xaa, + 0x6e, 0x9d, 0x45, 0xbc, 0x7c, 0xe3, 0x2b, 0x88, 0xbb, 0xed, 0x53, 0x7e, + 0xcb, 0xc4, 0xf3, 0x77, +}; +static const struct drbg_kat_pr_false kat2521_t = { + 0, kat2521_entropyin, kat2521_nonce, kat2521_persstr, + kat2521_entropyinreseed, kat2521_addinreseed, kat2521_addin0, + kat2521_addin1, kat2521_retbits +}; +static const struct drbg_kat kat2521 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2521_t +}; + +static const unsigned char kat2522_entropyin[] = { + 0xab, 0x12, 0xf3, 0xf9, 0x41, 0x0c, 0x55, 0xc7, 0x60, 0xae, 0x88, 0xce, + 0x17, 0x3d, 0x7c, 0x78, 0xa6, 0xb1, 0x0a, 0xea, 0x55, 0x96, 0x70, 0x76, + 0xaf, 0xfc, 0xe3, 0x67, 0x65, 0xf0, 0x46, 0xa6, 0x1d, 0xdc, 0x3b, 0x51, + 0x43, 0xa3, 0x9f, 0x65, +}; +static const unsigned char kat2522_nonce[] = {0}; +static const unsigned char kat2522_persstr[] = {0}; +static const unsigned char kat2522_entropyinreseed[] = { + 0x48, 0x2a, 0x31, 0x95, 0x73, 0xd0, 0x92, 0x6a, 0x2e, 0xba, 0x77, 0x0f, + 0x98, 0x85, 0x67, 0xe1, 0x6a, 0xa1, 0x77, 0x9a, 0x31, 0x38, 0x26, 0xfe, + 0xd4, 0x66, 0x78, 0x3c, 0xa7, 0x9e, 0xe3, 0xb5, 0xf8, 0x2b, 0x1d, 0xf0, + 0x05, 0xe0, 0xbe, 0xb8, +}; +static const unsigned char kat2522_addinreseed[] = {0}; +static const unsigned char kat2522_addin0[] = {0}; +static const unsigned char kat2522_addin1[] = {0}; +static const unsigned char kat2522_retbits[] = { + 0x05, 0x1b, 0x4c, 0xa1, 0x40, 0xf4, 0x5e, 0xde, 0x15, 0x3a, 0x74, 0xa6, + 0x6b, 0xd9, 0x04, 0xa0, 0x0d, 0xa6, 0x31, 0xae, 0xb0, 0xd9, 0x2d, 0x23, + 0x82, 0xe3, 0x51, 0xb1, 0x3d, 0x63, 0xad, 0xbe, 0x4a, 0xe7, 0xa2, 0x8f, + 0x83, 0xa1, 0x24, 0xfb, 0x07, 0x7b, 0x12, 0xad, 0x55, 0xe2, 0xf9, 0x94, + 0xad, 0xe2, 0x21, 0x03, 0x20, 0x9f, 0xcd, 0x97, 0x67, 0xef, 0x9a, 0xc6, + 0x16, 0xad, 0x53, 0x7c, +}; +static const struct drbg_kat_pr_false kat2522_t = { + 1, kat2522_entropyin, kat2522_nonce, kat2522_persstr, + kat2522_entropyinreseed, kat2522_addinreseed, kat2522_addin0, + kat2522_addin1, kat2522_retbits +}; +static const struct drbg_kat kat2522 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2522_t +}; + +static const unsigned char kat2523_entropyin[] = { + 0x79, 0xae, 0x74, 0xb9, 0xd0, 0xe5, 0x5f, 0x2f, 0xfb, 0xfa, 0xef, 0x21, + 0xf2, 0x7e, 0xb0, 0x51, 0xf1, 0xcc, 0x5c, 0x49, 0xed, 0x19, 0xa1, 0xff, + 0x29, 0xc4, 0xfe, 0x63, 0x7c, 0x7a, 0xbd, 0x8c, 0x34, 0x2e, 0xe2, 0xec, + 0x7c, 0x8c, 0x4d, 0x1c, +}; +static const unsigned char kat2523_nonce[] = {0}; +static const unsigned char kat2523_persstr[] = {0}; +static const unsigned char kat2523_entropyinreseed[] = { + 0xee, 0xbc, 0x7f, 0x67, 0x50, 0x77, 0x51, 0x20, 0x4d, 0xf3, 0x0d, 0xa3, + 0x50, 0x4f, 0x27, 0xef, 0x2d, 0xe8, 0x90, 0xcd, 0x50, 0x9d, 0xcc, 0xc6, + 0xe7, 0xe8, 0xb8, 0x5d, 0xd0, 0x9b, 0x85, 0x1b, 0xc4, 0x2a, 0x72, 0x96, + 0x9c, 0x50, 0x21, 0xde, +}; +static const unsigned char kat2523_addinreseed[] = {0}; +static const unsigned char kat2523_addin0[] = {0}; +static const unsigned char kat2523_addin1[] = {0}; +static const unsigned char kat2523_retbits[] = { + 0xa2, 0xc6, 0x06, 0x38, 0x64, 0xc2, 0x63, 0xe0, 0x07, 0x3f, 0xa8, 0x5e, + 0x36, 0xb0, 0x9c, 0xe7, 0x1a, 0xc6, 0xba, 0x3e, 0x96, 0x7c, 0xb7, 0x39, + 0x1f, 0xb0, 0x43, 0x46, 0x9b, 0xab, 0x85, 0x80, 0x7b, 0x58, 0xaf, 0x53, + 0x02, 0x71, 0x87, 0xac, 0x99, 0x3f, 0xea, 0x5b, 0xc5, 0xc6, 0x4e, 0x4f, + 0xfc, 0x4f, 0x08, 0x70, 0xb2, 0xc3, 0x38, 0xf8, 0xdf, 0xbb, 0x7a, 0xc8, + 0x35, 0x0a, 0xb1, 0x8b, +}; +static const struct drbg_kat_pr_false kat2523_t = { + 2, kat2523_entropyin, kat2523_nonce, kat2523_persstr, + kat2523_entropyinreseed, kat2523_addinreseed, kat2523_addin0, + kat2523_addin1, kat2523_retbits +}; +static const struct drbg_kat kat2523 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2523_t +}; + +static const unsigned char kat2524_entropyin[] = { + 0x06, 0x2d, 0x77, 0xe6, 0x8e, 0x01, 0x74, 0x75, 0x53, 0xe5, 0x54, 0x34, + 0x75, 0x6e, 0xa3, 0xd5, 0x1a, 0xf3, 0x99, 0xb4, 0xf3, 0xf5, 0x8b, 0xa8, + 0xbd, 0x8e, 0xa9, 0xbf, 0x7e, 0xa4, 0xde, 0xcb, 0xad, 0xc3, 0xea, 0x2f, + 0xf5, 0x3f, 0x6c, 0x0f, +}; +static const unsigned char kat2524_nonce[] = {0}; +static const unsigned char kat2524_persstr[] = {0}; +static const unsigned char kat2524_entropyinreseed[] = { + 0xba, 0x11, 0x1e, 0x60, 0x0a, 0x45, 0xf2, 0x33, 0x67, 0x6e, 0x72, 0x04, + 0x96, 0xef, 0xcd, 0x0d, 0x56, 0x6e, 0xc6, 0xc1, 0x82, 0x60, 0xf4, 0xd3, + 0x9e, 0xed, 0x3f, 0x7e, 0xc1, 0x54, 0xeb, 0xdf, 0xd9, 0x94, 0x8e, 0xcb, + 0x16, 0xa0, 0xb1, 0xe6, +}; +static const unsigned char kat2524_addinreseed[] = {0}; +static const unsigned char kat2524_addin0[] = {0}; +static const unsigned char kat2524_addin1[] = {0}; +static const unsigned char kat2524_retbits[] = { + 0xc8, 0x4e, 0x51, 0x83, 0x79, 0x69, 0xbb, 0xfb, 0x16, 0x0f, 0x63, 0x9e, + 0x62, 0xcc, 0xf3, 0xda, 0x56, 0xdc, 0xd6, 0xe3, 0x7f, 0xfa, 0x46, 0x23, + 0xc4, 0x03, 0x33, 0x9c, 0xca, 0x2d, 0xa3, 0x74, 0x2f, 0xb9, 0x33, 0xb4, + 0xaf, 0x7b, 0x64, 0x9c, 0x39, 0x27, 0x6a, 0xd2, 0x7c, 0x37, 0x6c, 0x8f, + 0x13, 0x4d, 0x57, 0x8a, 0x16, 0x43, 0xd5, 0x50, 0x15, 0xf9, 0x95, 0xf9, + 0xea, 0x82, 0xd2, 0x9a, +}; +static const struct drbg_kat_pr_false kat2524_t = { + 3, kat2524_entropyin, kat2524_nonce, kat2524_persstr, + kat2524_entropyinreseed, kat2524_addinreseed, kat2524_addin0, + kat2524_addin1, kat2524_retbits +}; +static const struct drbg_kat kat2524 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2524_t +}; + +static const unsigned char kat2525_entropyin[] = { + 0x8b, 0x46, 0x93, 0x44, 0x07, 0x3c, 0xe6, 0xb3, 0x6f, 0xff, 0x0c, 0x14, + 0xfe, 0xf1, 0xcb, 0x49, 0xb6, 0xe8, 0x72, 0x80, 0xc2, 0x7c, 0xe9, 0x1c, + 0xdd, 0xef, 0x8e, 0x3f, 0x91, 0xde, 0xa3, 0xb9, 0x14, 0x77, 0xe4, 0x46, + 0x71, 0x25, 0xca, 0x95, +}; +static const unsigned char kat2525_nonce[] = {0}; +static const unsigned char kat2525_persstr[] = {0}; +static const unsigned char kat2525_entropyinreseed[] = { + 0x07, 0x8e, 0x4c, 0x46, 0xcc, 0xe4, 0x28, 0x9a, 0x5b, 0xcf, 0xc0, 0x39, + 0x49, 0xb0, 0x88, 0xdd, 0x1e, 0xda, 0x9e, 0xe8, 0xb7, 0x34, 0xdf, 0x78, + 0x3a, 0x13, 0xee, 0xb2, 0x7a, 0xee, 0xa9, 0x5d, 0xab, 0x3a, 0xa5, 0x18, + 0x56, 0xcc, 0xbb, 0x7e, +}; +static const unsigned char kat2525_addinreseed[] = {0}; +static const unsigned char kat2525_addin0[] = {0}; +static const unsigned char kat2525_addin1[] = {0}; +static const unsigned char kat2525_retbits[] = { + 0x1f, 0xe8, 0x5a, 0x0f, 0x69, 0x9c, 0x95, 0x7e, 0x6a, 0xcf, 0x10, 0x6a, + 0x28, 0xb3, 0xc7, 0x6a, 0x00, 0x10, 0xb7, 0xe3, 0x3e, 0x7f, 0x03, 0x20, + 0x0b, 0xf9, 0xb3, 0x86, 0xeb, 0x8a, 0xe4, 0xe7, 0xae, 0x94, 0x15, 0x9e, + 0xc4, 0xcc, 0xc0, 0xdc, 0xb3, 0x23, 0xd9, 0xd6, 0x1b, 0xe0, 0xb0, 0xb1, + 0x9b, 0xd1, 0x2b, 0x2f, 0xe5, 0x71, 0xff, 0xe5, 0x54, 0x90, 0xd9, 0x19, + 0x8d, 0x9e, 0xbc, 0x20, +}; +static const struct drbg_kat_pr_false kat2525_t = { + 4, kat2525_entropyin, kat2525_nonce, kat2525_persstr, + kat2525_entropyinreseed, kat2525_addinreseed, kat2525_addin0, + kat2525_addin1, kat2525_retbits +}; +static const struct drbg_kat kat2525 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2525_t +}; + +static const unsigned char kat2526_entropyin[] = { + 0x47, 0x44, 0xc9, 0xd1, 0x52, 0xda, 0x9e, 0x98, 0xe1, 0x5a, 0xa6, 0xf9, + 0xae, 0x20, 0xa6, 0xc3, 0x0a, 0x20, 0x4b, 0x9f, 0xbe, 0x09, 0xad, 0xe5, + 0x15, 0x60, 0x26, 0x15, 0x1c, 0x7a, 0x0a, 0x60, 0x89, 0xe1, 0xc7, 0xd7, + 0x44, 0xd7, 0xba, 0x6d, +}; +static const unsigned char kat2526_nonce[] = {0}; +static const unsigned char kat2526_persstr[] = {0}; +static const unsigned char kat2526_entropyinreseed[] = { + 0xdd, 0x06, 0x43, 0x3c, 0x12, 0x81, 0x92, 0xc9, 0x7a, 0xf2, 0x49, 0x61, + 0x39, 0x15, 0xe9, 0xac, 0xc7, 0xdb, 0x69, 0x4b, 0xb4, 0xe8, 0xcc, 0xa7, + 0x4c, 0x21, 0x61, 0xfd, 0x9e, 0x17, 0x3f, 0x73, 0x4e, 0x96, 0x25, 0x2a, + 0x47, 0xb2, 0xe2, 0x99, +}; +static const unsigned char kat2526_addinreseed[] = {0}; +static const unsigned char kat2526_addin0[] = {0}; +static const unsigned char kat2526_addin1[] = {0}; +static const unsigned char kat2526_retbits[] = { + 0x1f, 0x87, 0x3b, 0x28, 0x81, 0x70, 0x01, 0x08, 0xbd, 0xa3, 0xf5, 0x88, + 0xb3, 0x44, 0x1e, 0x6f, 0x7b, 0x3b, 0xd5, 0xea, 0xc9, 0x3a, 0x16, 0xf6, + 0xc6, 0xe4, 0x9b, 0x92, 0x47, 0x75, 0xd1, 0x19, 0xb0, 0x67, 0x3b, 0xb3, + 0x05, 0xcb, 0x72, 0x88, 0x2d, 0xd0, 0x20, 0x83, 0xe1, 0x61, 0xb0, 0x6a, + 0xde, 0xc9, 0xf2, 0xbf, 0x9d, 0x0b, 0x63, 0x5c, 0x80, 0x28, 0x9a, 0xc6, + 0xe6, 0xf7, 0x7e, 0xeb, +}; +static const struct drbg_kat_pr_false kat2526_t = { + 5, kat2526_entropyin, kat2526_nonce, kat2526_persstr, + kat2526_entropyinreseed, kat2526_addinreseed, kat2526_addin0, + kat2526_addin1, kat2526_retbits +}; +static const struct drbg_kat kat2526 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2526_t +}; + +static const unsigned char kat2527_entropyin[] = { + 0xb2, 0xfe, 0x59, 0xbe, 0xe0, 0x9d, 0xb9, 0x9b, 0x5f, 0xfa, 0xec, 0xe5, + 0xcc, 0xae, 0x91, 0x47, 0x9d, 0x21, 0x47, 0xad, 0xf5, 0x88, 0x47, 0xe4, + 0x62, 0x23, 0xc2, 0x79, 0x91, 0x3d, 0xfe, 0x25, 0x3b, 0x0e, 0x44, 0xf3, + 0x30, 0x5e, 0xd3, 0x2d, +}; +static const unsigned char kat2527_nonce[] = {0}; +static const unsigned char kat2527_persstr[] = {0}; +static const unsigned char kat2527_entropyinreseed[] = { + 0xca, 0x34, 0xab, 0xc2, 0x77, 0xf3, 0x8b, 0x0f, 0x72, 0x61, 0x4b, 0x4e, + 0x1d, 0x17, 0x9b, 0x1a, 0x12, 0x13, 0x5a, 0x0b, 0x0d, 0x07, 0xda, 0x18, + 0x62, 0xd4, 0xd9, 0x09, 0x5b, 0xc2, 0x01, 0x4b, 0x5a, 0x0f, 0x20, 0x6b, + 0x1c, 0x2f, 0xca, 0x9a, +}; +static const unsigned char kat2527_addinreseed[] = {0}; +static const unsigned char kat2527_addin0[] = {0}; +static const unsigned char kat2527_addin1[] = {0}; +static const unsigned char kat2527_retbits[] = { + 0x41, 0x49, 0xf8, 0xbe, 0x52, 0xcf, 0xb5, 0x1e, 0x2b, 0xee, 0x05, 0xe0, + 0x7b, 0xa3, 0x05, 0x81, 0xca, 0x20, 0xef, 0x1b, 0xcc, 0xe8, 0xcf, 0xac, + 0xe8, 0xbb, 0x4d, 0x91, 0xda, 0x3b, 0x19, 0x3e, 0xc0, 0xa8, 0x05, 0xd9, + 0x1e, 0x77, 0x9a, 0xf4, 0xc7, 0xe4, 0xdb, 0x99, 0x83, 0xf1, 0x25, 0x50, + 0xf3, 0x74, 0x0f, 0x4f, 0x55, 0x65, 0x8c, 0x1c, 0xa2, 0x4e, 0x36, 0xd8, + 0x4f, 0x73, 0x10, 0xb6, +}; +static const struct drbg_kat_pr_false kat2527_t = { + 6, kat2527_entropyin, kat2527_nonce, kat2527_persstr, + kat2527_entropyinreseed, kat2527_addinreseed, kat2527_addin0, + kat2527_addin1, kat2527_retbits +}; +static const struct drbg_kat kat2527 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2527_t +}; + +static const unsigned char kat2528_entropyin[] = { + 0x0d, 0x1b, 0x44, 0xff, 0x12, 0xce, 0x16, 0x11, 0x24, 0xd0, 0xe8, 0x7f, + 0x82, 0x32, 0x70, 0x33, 0xd2, 0x28, 0x83, 0xc7, 0x9c, 0xc5, 0x2c, 0xc3, + 0x43, 0x2a, 0x98, 0x84, 0xdb, 0xd6, 0xc9, 0xca, 0x88, 0xae, 0x35, 0x9f, + 0x14, 0x1c, 0xbd, 0x72, +}; +static const unsigned char kat2528_nonce[] = {0}; +static const unsigned char kat2528_persstr[] = {0}; +static const unsigned char kat2528_entropyinreseed[] = { + 0x90, 0xb7, 0xf7, 0x8b, 0x37, 0xb6, 0x39, 0xc9, 0x57, 0x06, 0xed, 0xeb, + 0x18, 0x93, 0xd1, 0xf8, 0x1e, 0x08, 0x54, 0x89, 0x12, 0x53, 0x2a, 0x46, + 0xef, 0x8c, 0x1b, 0x90, 0x86, 0x8b, 0x89, 0x4b, 0x95, 0x48, 0x1b, 0x2a, + 0xe4, 0xc1, 0x7e, 0x66, +}; +static const unsigned char kat2528_addinreseed[] = {0}; +static const unsigned char kat2528_addin0[] = {0}; +static const unsigned char kat2528_addin1[] = {0}; +static const unsigned char kat2528_retbits[] = { + 0x29, 0x5d, 0x3a, 0x4b, 0x7a, 0x0d, 0xbc, 0x36, 0x16, 0x59, 0x8a, 0x14, + 0x03, 0x48, 0x85, 0x44, 0x33, 0xe1, 0x2f, 0xb0, 0x69, 0x13, 0x29, 0x5d, + 0xb3, 0xa4, 0x20, 0x44, 0x5b, 0x3a, 0xba, 0x87, 0x6c, 0x93, 0x94, 0xbc, + 0x2e, 0x8c, 0xb2, 0x93, 0x4e, 0xfc, 0x02, 0x8b, 0x78, 0x99, 0xa7, 0x18, + 0x7c, 0x36, 0x40, 0x44, 0xd2, 0xde, 0x48, 0x67, 0x0b, 0x3c, 0xd0, 0xa3, + 0x58, 0x75, 0x56, 0xc4, +}; +static const struct drbg_kat_pr_false kat2528_t = { + 7, kat2528_entropyin, kat2528_nonce, kat2528_persstr, + kat2528_entropyinreseed, kat2528_addinreseed, kat2528_addin0, + kat2528_addin1, kat2528_retbits +}; +static const struct drbg_kat kat2528 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2528_t +}; + +static const unsigned char kat2529_entropyin[] = { + 0xca, 0x34, 0x8b, 0xed, 0x64, 0xf8, 0xad, 0xbf, 0xc3, 0xe2, 0x75, 0xef, + 0x91, 0x39, 0xb6, 0xf3, 0x59, 0xe4, 0x20, 0x9b, 0x35, 0x6e, 0x14, 0x9f, + 0x53, 0xbb, 0xe2, 0x5d, 0xd6, 0x8f, 0x1b, 0x63, 0xe6, 0x55, 0x08, 0x25, + 0xf8, 0xa0, 0x87, 0x2a, +}; +static const unsigned char kat2529_nonce[] = {0}; +static const unsigned char kat2529_persstr[] = {0}; +static const unsigned char kat2529_entropyinreseed[] = { + 0x76, 0x2f, 0x85, 0x4a, 0x61, 0x4b, 0x2a, 0xf6, 0x74, 0xf2, 0x25, 0x63, + 0x52, 0x8c, 0x84, 0x29, 0x52, 0xd6, 0x33, 0xda, 0xb3, 0xfc, 0x44, 0x33, + 0x1d, 0xc3, 0x35, 0x11, 0xa7, 0xf7, 0x69, 0xe2, 0x95, 0x88, 0xed, 0x64, + 0x0b, 0x25, 0x70, 0xc7, +}; +static const unsigned char kat2529_addinreseed[] = {0}; +static const unsigned char kat2529_addin0[] = {0}; +static const unsigned char kat2529_addin1[] = {0}; +static const unsigned char kat2529_retbits[] = { + 0x4b, 0x7e, 0x86, 0x96, 0x16, 0xde, 0xb8, 0x05, 0x89, 0xe1, 0x18, 0xac, + 0x06, 0xe2, 0x7e, 0x40, 0xe4, 0x45, 0x35, 0x1f, 0x93, 0xfc, 0xc8, 0x45, + 0x02, 0xb1, 0x70, 0xff, 0x83, 0xa0, 0x0f, 0xba, 0xd0, 0x03, 0xe5, 0x49, + 0xd6, 0xf7, 0xd0, 0x7e, 0x0e, 0xd8, 0x2d, 0xe6, 0x64, 0x92, 0x93, 0x93, + 0x3e, 0xb2, 0xeb, 0xcf, 0x08, 0x99, 0xcc, 0x27, 0xc9, 0x14, 0xc2, 0x39, + 0xad, 0x1e, 0xbf, 0x12, +}; +static const struct drbg_kat_pr_false kat2529_t = { + 8, kat2529_entropyin, kat2529_nonce, kat2529_persstr, + kat2529_entropyinreseed, kat2529_addinreseed, kat2529_addin0, + kat2529_addin1, kat2529_retbits +}; +static const struct drbg_kat kat2529 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2529_t +}; + +static const unsigned char kat2530_entropyin[] = { + 0x04, 0xd3, 0xc8, 0x45, 0x28, 0xef, 0x14, 0xf0, 0x37, 0x76, 0x89, 0x51, + 0xad, 0x8c, 0x11, 0xfd, 0x57, 0x67, 0x32, 0x14, 0x5d, 0x94, 0x6f, 0x9a, + 0xc7, 0x3c, 0xfc, 0xcf, 0x7b, 0x49, 0x8c, 0x9a, 0x1d, 0xfc, 0x8b, 0x21, + 0x6d, 0x32, 0x82, 0x27, +}; +static const unsigned char kat2530_nonce[] = {0}; +static const unsigned char kat2530_persstr[] = {0}; +static const unsigned char kat2530_entropyinreseed[] = { + 0x63, 0xa8, 0xe9, 0x19, 0x6b, 0xa0, 0x1b, 0x6e, 0x60, 0xcc, 0x01, 0x8f, + 0x77, 0x56, 0x9c, 0x42, 0xf2, 0x43, 0x4b, 0xcd, 0xbb, 0xef, 0xf1, 0x9f, + 0x44, 0x1b, 0xf0, 0x24, 0x07, 0x5c, 0x27, 0x3e, 0xf8, 0x60, 0xfd, 0xf2, + 0x3a, 0x31, 0x0b, 0x3e, +}; +static const unsigned char kat2530_addinreseed[] = {0}; +static const unsigned char kat2530_addin0[] = {0}; +static const unsigned char kat2530_addin1[] = {0}; +static const unsigned char kat2530_retbits[] = { + 0x2a, 0xa2, 0xa6, 0x5b, 0x1c, 0xe5, 0x7c, 0xb3, 0xc7, 0x80, 0x1d, 0x2e, + 0x67, 0x5e, 0xff, 0xdb, 0x54, 0x6f, 0x61, 0x2f, 0xb7, 0x34, 0x83, 0x62, + 0x2a, 0x8d, 0xbe, 0x4b, 0x1d, 0x31, 0x63, 0xbc, 0x93, 0x03, 0xbc, 0x9e, + 0x9b, 0x7f, 0xe6, 0xd8, 0x66, 0xc1, 0x90, 0x6b, 0x1e, 0xbb, 0xa5, 0x41, + 0x8b, 0x00, 0x69, 0x11, 0x85, 0x17, 0x58, 0x7d, 0xdc, 0xff, 0x48, 0x0f, + 0x04, 0xb9, 0x32, 0xe9, +}; +static const struct drbg_kat_pr_false kat2530_t = { + 9, kat2530_entropyin, kat2530_nonce, kat2530_persstr, + kat2530_entropyinreseed, kat2530_addinreseed, kat2530_addin0, + kat2530_addin1, kat2530_retbits +}; +static const struct drbg_kat kat2530 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2530_t +}; + +static const unsigned char kat2531_entropyin[] = { + 0x05, 0x1d, 0x3d, 0xe5, 0x14, 0x8c, 0x91, 0x7c, 0xf1, 0x9d, 0xa7, 0xd6, + 0xb9, 0xb4, 0xa5, 0x0b, 0xe6, 0x15, 0xce, 0x35, 0x74, 0xe7, 0x44, 0x88, + 0xd6, 0x07, 0x5d, 0x6a, 0xd5, 0x6c, 0x05, 0x67, 0x2f, 0xc4, 0xa2, 0xfe, + 0xcc, 0x1a, 0xe9, 0x0d, +}; +static const unsigned char kat2531_nonce[] = {0}; +static const unsigned char kat2531_persstr[] = {0}; +static const unsigned char kat2531_entropyinreseed[] = { + 0xb8, 0xc4, 0x18, 0x30, 0xf3, 0xbf, 0xf0, 0x77, 0x35, 0x81, 0xf8, 0x8c, + 0x4e, 0x68, 0x6a, 0xb2, 0x56, 0x81, 0xac, 0x0b, 0x82, 0x18, 0xb1, 0xb9, + 0x00, 0xbc, 0x01, 0x2f, 0xe6, 0xc4, 0x3c, 0xbd, 0x88, 0xe6, 0x81, 0xbf, + 0x85, 0xaf, 0xa6, 0xd9, +}; +static const unsigned char kat2531_addinreseed[] = {0}; +static const unsigned char kat2531_addin0[] = {0}; +static const unsigned char kat2531_addin1[] = {0}; +static const unsigned char kat2531_retbits[] = { + 0x3d, 0x01, 0x3e, 0xcd, 0xe7, 0xfe, 0xa9, 0x99, 0x99, 0x7c, 0x89, 0xd4, + 0xe6, 0x75, 0xd6, 0xf4, 0x84, 0x1f, 0x61, 0x29, 0x3e, 0x21, 0xc6, 0xa2, + 0x52, 0xae, 0xdf, 0x04, 0xb5, 0x78, 0x09, 0xd4, 0x7b, 0xd8, 0x71, 0x6e, + 0x77, 0x94, 0x79, 0x05, 0x59, 0xa4, 0xd7, 0xba, 0x5c, 0x68, 0x68, 0xe3, + 0x59, 0x4b, 0x3d, 0xb8, 0x08, 0x0d, 0x50, 0x6c, 0xf4, 0xf6, 0x3f, 0xe7, + 0x02, 0x8f, 0x6f, 0xac, +}; +static const struct drbg_kat_pr_false kat2531_t = { + 10, kat2531_entropyin, kat2531_nonce, kat2531_persstr, + kat2531_entropyinreseed, kat2531_addinreseed, kat2531_addin0, + kat2531_addin1, kat2531_retbits +}; +static const struct drbg_kat kat2531 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2531_t +}; + +static const unsigned char kat2532_entropyin[] = { + 0x7a, 0x06, 0x77, 0x84, 0xb0, 0xc4, 0xe2, 0x41, 0x78, 0xbf, 0x7d, 0xe6, + 0x73, 0x2e, 0x2f, 0x2c, 0x34, 0x5f, 0x9e, 0x93, 0x8c, 0xcb, 0xfb, 0x7c, + 0x80, 0x40, 0x7b, 0x26, 0x7a, 0x30, 0x54, 0x69, 0xac, 0x08, 0xf7, 0x37, + 0x02, 0x8c, 0x0f, 0x83, +}; +static const unsigned char kat2532_nonce[] = {0}; +static const unsigned char kat2532_persstr[] = {0}; +static const unsigned char kat2532_entropyinreseed[] = { + 0x45, 0x2e, 0xf0, 0xdc, 0xad, 0xe2, 0x81, 0x6f, 0x27, 0xaa, 0x2e, 0xcf, + 0x99, 0x12, 0x37, 0xec, 0x95, 0x26, 0xd4, 0x15, 0x64, 0x92, 0xea, 0x10, + 0xe3, 0x7a, 0x3e, 0x89, 0xcd, 0x94, 0xd2, 0x76, 0xab, 0x1a, 0xee, 0x87, + 0x8c, 0xcf, 0xe1, 0xfd, +}; +static const unsigned char kat2532_addinreseed[] = {0}; +static const unsigned char kat2532_addin0[] = {0}; +static const unsigned char kat2532_addin1[] = {0}; +static const unsigned char kat2532_retbits[] = { + 0x78, 0x13, 0x24, 0xc8, 0x89, 0x48, 0x07, 0x04, 0x64, 0x8c, 0xb8, 0x65, + 0x89, 0x6d, 0x4f, 0x3b, 0x45, 0x23, 0x2a, 0xde, 0x00, 0x49, 0x69, 0xd4, + 0x6c, 0x71, 0xe2, 0x54, 0x28, 0x56, 0xab, 0x41, 0x2e, 0x35, 0xff, 0x11, + 0x28, 0x03, 0xd1, 0x32, 0x27, 0xce, 0x03, 0x79, 0x41, 0xd1, 0xf7, 0xf1, + 0xfb, 0xcb, 0xd0, 0x93, 0xd1, 0xf2, 0xca, 0x90, 0x63, 0x5c, 0x0f, 0x32, + 0x0a, 0x90, 0x80, 0x99, +}; +static const struct drbg_kat_pr_false kat2532_t = { + 11, kat2532_entropyin, kat2532_nonce, kat2532_persstr, + kat2532_entropyinreseed, kat2532_addinreseed, kat2532_addin0, + kat2532_addin1, kat2532_retbits +}; +static const struct drbg_kat kat2532 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2532_t +}; + +static const unsigned char kat2533_entropyin[] = { + 0x03, 0xc2, 0x3f, 0x20, 0x18, 0xe6, 0x8d, 0xa9, 0x64, 0xae, 0x77, 0xbd, + 0xb6, 0x31, 0xee, 0xa2, 0x94, 0x73, 0xea, 0x76, 0x2c, 0x8a, 0xbf, 0x8f, + 0xb5, 0x41, 0x8f, 0xe2, 0x68, 0x1f, 0x62, 0xc9, 0x90, 0xd3, 0x9d, 0x2e, + 0x58, 0xc6, 0x13, 0x7e, +}; +static const unsigned char kat2533_nonce[] = {0}; +static const unsigned char kat2533_persstr[] = {0}; +static const unsigned char kat2533_entropyinreseed[] = { + 0x2c, 0x17, 0xc1, 0xdf, 0xe4, 0xba, 0x63, 0x5d, 0x4c, 0x36, 0x1f, 0x21, + 0x7c, 0x25, 0xaf, 0x20, 0x61, 0x91, 0x2e, 0xf6, 0xc7, 0x81, 0xf1, 0x52, + 0x8a, 0x8d, 0xa2, 0xbd, 0x21, 0xb0, 0x83, 0xc4, 0x35, 0x33, 0x2f, 0x30, + 0x62, 0xbb, 0x4f, 0x8c, +}; +static const unsigned char kat2533_addinreseed[] = {0}; +static const unsigned char kat2533_addin0[] = {0}; +static const unsigned char kat2533_addin1[] = {0}; +static const unsigned char kat2533_retbits[] = { + 0xa5, 0x2d, 0x85, 0x42, 0x03, 0xc3, 0xda, 0xd0, 0x7a, 0x3c, 0xaf, 0x08, + 0x91, 0x31, 0xca, 0xa0, 0x1f, 0x4a, 0x19, 0xe0, 0xf6, 0x8b, 0xd7, 0x0c, + 0x4a, 0x11, 0xca, 0xc4, 0xb4, 0x76, 0xec, 0x64, 0x64, 0x7a, 0x5b, 0x3a, + 0xfe, 0xfa, 0x37, 0x7d, 0x3d, 0x16, 0x52, 0x5a, 0xb5, 0xc6, 0x39, 0xc9, + 0x70, 0x2d, 0xdb, 0x14, 0x40, 0xb5, 0x0d, 0xd2, 0xa8, 0x05, 0x97, 0xaa, + 0xe3, 0xbf, 0xce, 0xd0, +}; +static const struct drbg_kat_pr_false kat2533_t = { + 12, kat2533_entropyin, kat2533_nonce, kat2533_persstr, + kat2533_entropyinreseed, kat2533_addinreseed, kat2533_addin0, + kat2533_addin1, kat2533_retbits +}; +static const struct drbg_kat kat2533 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2533_t +}; + +static const unsigned char kat2534_entropyin[] = { + 0xc5, 0x34, 0xc4, 0x4f, 0x2c, 0x40, 0xf3, 0xab, 0x41, 0x14, 0x31, 0x02, + 0xd9, 0x73, 0xb7, 0xe9, 0x88, 0x90, 0xf1, 0x0d, 0x63, 0x3a, 0xaf, 0x53, + 0x54, 0xaf, 0x6b, 0xb6, 0x3a, 0x01, 0xc2, 0x9b, 0x51, 0x46, 0x6a, 0x21, + 0x29, 0x2e, 0xb3, 0xaa, +}; +static const unsigned char kat2534_nonce[] = {0}; +static const unsigned char kat2534_persstr[] = {0}; +static const unsigned char kat2534_entropyinreseed[] = { + 0x27, 0xa3, 0x43, 0x42, 0x65, 0xa1, 0xd4, 0xff, 0x62, 0x04, 0x6b, 0xbb, + 0x29, 0x40, 0x95, 0xca, 0xc6, 0x42, 0x4a, 0xa1, 0x2d, 0x2c, 0x20, 0x89, + 0x5c, 0x69, 0xee, 0xde, 0x91, 0x2d, 0xf0, 0xe6, 0xc5, 0xb4, 0x88, 0x64, + 0x84, 0x90, 0xeb, 0xf2, +}; +static const unsigned char kat2534_addinreseed[] = {0}; +static const unsigned char kat2534_addin0[] = {0}; +static const unsigned char kat2534_addin1[] = {0}; +static const unsigned char kat2534_retbits[] = { + 0x01, 0xb4, 0x05, 0xcb, 0x89, 0xa3, 0x14, 0x03, 0xf0, 0x1a, 0xdd, 0x2a, + 0x4f, 0x85, 0x4f, 0xd2, 0x6d, 0xfd, 0xd8, 0x42, 0xd0, 0xde, 0xc8, 0x5d, + 0x94, 0x9f, 0x46, 0xa0, 0xfc, 0x80, 0x80, 0x70, 0xc7, 0x5a, 0xc9, 0xe9, + 0x71, 0x6e, 0xba, 0x34, 0x1d, 0x44, 0x76, 0xb9, 0xef, 0x2c, 0xaa, 0x32, + 0xe8, 0x37, 0xf6, 0x73, 0x89, 0x00, 0xf1, 0x83, 0x22, 0xdd, 0x5b, 0x84, + 0xa3, 0x86, 0x65, 0x7b, +}; +static const struct drbg_kat_pr_false kat2534_t = { + 13, kat2534_entropyin, kat2534_nonce, kat2534_persstr, + kat2534_entropyinreseed, kat2534_addinreseed, kat2534_addin0, + kat2534_addin1, kat2534_retbits +}; +static const struct drbg_kat kat2534 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2534_t +}; + +static const unsigned char kat2535_entropyin[] = { + 0x8f, 0x52, 0x35, 0xda, 0x70, 0x8c, 0xb1, 0x57, 0x81, 0xdb, 0x85, 0xdd, + 0xc1, 0x41, 0xea, 0xcc, 0x65, 0x4d, 0x93, 0xf8, 0xc2, 0x11, 0xae, 0x71, + 0x8d, 0xf2, 0x2e, 0xd7, 0xba, 0xe7, 0xba, 0x5f, 0x2d, 0x5e, 0x9b, 0x00, + 0x6e, 0xc3, 0x6a, 0x21, +}; +static const unsigned char kat2535_nonce[] = {0}; +static const unsigned char kat2535_persstr[] = {0}; +static const unsigned char kat2535_entropyinreseed[] = { + 0xe6, 0xcf, 0x01, 0xb0, 0xcf, 0x99, 0x31, 0xde, 0xd0, 0xae, 0x50, 0xbd, + 0x0e, 0x10, 0x92, 0xcf, 0x79, 0x22, 0x13, 0x97, 0xf2, 0x85, 0x0d, 0x31, + 0x39, 0x0d, 0xb3, 0x3a, 0xe0, 0x50, 0x72, 0xad, 0x0e, 0x67, 0xcd, 0xe6, + 0xf3, 0xc4, 0x38, 0xba, +}; +static const unsigned char kat2535_addinreseed[] = {0}; +static const unsigned char kat2535_addin0[] = {0}; +static const unsigned char kat2535_addin1[] = {0}; +static const unsigned char kat2535_retbits[] = { + 0x7a, 0x00, 0x67, 0x5e, 0x1a, 0x9b, 0x52, 0x4d, 0xad, 0xc1, 0xb3, 0x56, + 0xb2, 0x2c, 0x46, 0xc6, 0x74, 0x71, 0x47, 0xed, 0x73, 0x66, 0x39, 0x73, + 0x9b, 0xbf, 0x76, 0x1e, 0xd9, 0xb9, 0x17, 0x67, 0x02, 0x38, 0xec, 0x00, + 0x13, 0x87, 0xb7, 0xcf, 0x3c, 0x91, 0xa5, 0x8a, 0x81, 0xec, 0x09, 0xc1, + 0x48, 0x73, 0x13, 0x05, 0x8b, 0x6c, 0x26, 0xce, 0x61, 0xd5, 0x78, 0x52, + 0x69, 0xa1, 0xd8, 0xe3, +}; +static const struct drbg_kat_pr_false kat2535_t = { + 14, kat2535_entropyin, kat2535_nonce, kat2535_persstr, + kat2535_entropyinreseed, kat2535_addinreseed, kat2535_addin0, + kat2535_addin1, kat2535_retbits +}; +static const struct drbg_kat kat2535 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2535_t +}; + +static const unsigned char kat2536_entropyin[] = { + 0x46, 0x8f, 0x1a, 0xab, 0x11, 0x00, 0x44, 0x62, 0xb9, 0xb1, 0x0a, 0xe9, + 0xac, 0x99, 0xfd, 0x61, 0x1c, 0xaf, 0x27, 0x89, 0xb6, 0xf8, 0x2f, 0x4b, + 0x60, 0x79, 0x46, 0x7c, 0x01, 0xe5, 0x70, 0x28, 0x80, 0x37, 0x1a, 0x30, + 0x71, 0x4e, 0x49, 0xdb, +}; +static const unsigned char kat2536_nonce[] = {0}; +static const unsigned char kat2536_persstr[] = {0}; +static const unsigned char kat2536_entropyinreseed[] = { + 0x35, 0xd0, 0x7a, 0x1b, 0x48, 0x7c, 0x5a, 0xae, 0x93, 0x90, 0xe9, 0x22, + 0x17, 0x9e, 0xac, 0x60, 0x2a, 0xf2, 0x0b, 0x97, 0x66, 0xcc, 0x7f, 0xdf, + 0x9c, 0x11, 0x25, 0x6a, 0x6f, 0xbb, 0xc6, 0xe9, 0x8e, 0x50, 0xe7, 0x81, + 0xda, 0x06, 0x3f, 0x08, +}; +static const unsigned char kat2536_addinreseed[] = { + 0xaf, 0xf8, 0xf3, 0x26, 0xa7, 0x72, 0xbd, 0xa7, 0xa2, 0xbc, 0x3d, 0x94, + 0xc0, 0x58, 0xd0, 0xee, 0xdf, 0x94, 0x5a, 0x9a, 0xe2, 0xd9, 0x09, 0x28, + 0x0b, 0xa4, 0x11, 0xc3, 0x16, 0x40, 0x31, 0x54, 0x67, 0xdb, 0x60, 0x19, + 0xbb, 0x06, 0xe0, 0x46, +}; +static const unsigned char kat2536_addin0[] = { + 0xd6, 0x0c, 0x0e, 0xc8, 0x39, 0x5b, 0x7a, 0xe9, 0x4f, 0xd3, 0x61, 0xf8, + 0x89, 0x53, 0xed, 0xe3, 0xae, 0xfc, 0xeb, 0xc3, 0xaa, 0x6a, 0xb7, 0x03, + 0xb8, 0xe6, 0xdf, 0x2b, 0x8b, 0xbd, 0xa5, 0x41, 0x93, 0x13, 0x7b, 0xd3, + 0xcb, 0x45, 0xa2, 0x27, +}; +static const unsigned char kat2536_addin1[] = { + 0xc0, 0x29, 0xd1, 0x4e, 0x0d, 0x0b, 0x58, 0x0b, 0x96, 0x7c, 0x99, 0x43, + 0xb5, 0xd7, 0x02, 0x2d, 0x56, 0x45, 0x14, 0xbc, 0x57, 0xed, 0x64, 0x1e, + 0x49, 0x41, 0x95, 0x93, 0xa9, 0xcc, 0x02, 0xf7, 0xf0, 0x9c, 0x32, 0xd4, + 0x41, 0x10, 0x51, 0xb3, +}; +static const unsigned char kat2536_retbits[] = { + 0x87, 0x73, 0x86, 0xa5, 0x26, 0x4c, 0x46, 0xd3, 0xd5, 0xbe, 0x4a, 0x47, + 0xd9, 0xc2, 0x2d, 0x72, 0x22, 0xce, 0x46, 0xd2, 0xd6, 0xf4, 0xe9, 0x59, + 0x99, 0xce, 0x35, 0xa1, 0x8a, 0x1a, 0x03, 0x11, 0x3b, 0x7b, 0x36, 0xc5, + 0x29, 0xd7, 0x4c, 0x57, 0x7b, 0xde, 0x27, 0xc7, 0x00, 0xd7, 0x51, 0x48, + 0xaf, 0x99, 0xa4, 0x88, 0xf7, 0x1e, 0x40, 0x00, 0x9b, 0x94, 0x4c, 0x95, + 0xb8, 0x87, 0x1c, 0x4a, +}; +static const struct drbg_kat_pr_false kat2536_t = { + 0, kat2536_entropyin, kat2536_nonce, kat2536_persstr, + kat2536_entropyinreseed, kat2536_addinreseed, kat2536_addin0, + kat2536_addin1, kat2536_retbits +}; +static const struct drbg_kat kat2536 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2536_t +}; + +static const unsigned char kat2537_entropyin[] = { + 0xef, 0x79, 0x6a, 0x2f, 0x0f, 0x8c, 0x53, 0xfb, 0x7f, 0x47, 0x48, 0x4b, + 0xf2, 0x5f, 0x47, 0x78, 0x40, 0x25, 0x0c, 0xf1, 0xcd, 0xf0, 0xe9, 0x4e, + 0xde, 0xf3, 0x41, 0xef, 0xec, 0xc9, 0xd9, 0xa6, 0xfc, 0x7d, 0x7c, 0xa9, + 0x3b, 0x4b, 0xda, 0x22, +}; +static const unsigned char kat2537_nonce[] = {0}; +static const unsigned char kat2537_persstr[] = {0}; +static const unsigned char kat2537_entropyinreseed[] = { + 0x35, 0x41, 0x57, 0x51, 0xf3, 0xd0, 0x57, 0x0d, 0xac, 0x1e, 0x12, 0xd8, + 0x37, 0x0c, 0xaa, 0xb6, 0x8e, 0x07, 0x9e, 0x7d, 0xaa, 0xe5, 0x5f, 0x17, + 0x43, 0xd0, 0x37, 0xc7, 0xe3, 0xf3, 0xf7, 0x17, 0xd4, 0x42, 0x36, 0x4e, + 0xeb, 0x0f, 0xec, 0xfa, +}; +static const unsigned char kat2537_addinreseed[] = { + 0xcf, 0x4e, 0x41, 0x81, 0x19, 0x10, 0x3b, 0xbc, 0xec, 0x94, 0x01, 0xd6, + 0xd4, 0x85, 0xc4, 0xfb, 0xe4, 0x60, 0x0c, 0xa5, 0xca, 0x09, 0xbb, 0x19, + 0x63, 0xdb, 0xcb, 0x69, 0x98, 0x14, 0x0e, 0x6a, 0xcb, 0x48, 0x39, 0x6e, + 0x41, 0x26, 0x2b, 0xc0, +}; +static const unsigned char kat2537_addin0[] = { + 0xb1, 0xa8, 0x16, 0xa6, 0xf1, 0xea, 0x50, 0xe4, 0xf1, 0xcf, 0xe8, 0xe4, + 0xb0, 0x32, 0xa9, 0xe2, 0xfa, 0x8a, 0x6d, 0x13, 0x5b, 0x68, 0x9f, 0x9a, + 0x2f, 0x2e, 0x62, 0x3c, 0x35, 0x7a, 0x2d, 0xe4, 0x44, 0xbc, 0xc6, 0xb8, + 0xac, 0xb1, 0xcd, 0x46, +}; +static const unsigned char kat2537_addin1[] = { + 0xba, 0xd2, 0xba, 0x37, 0x2d, 0x51, 0x1b, 0x85, 0x0c, 0x44, 0x9b, 0xf3, + 0xbe, 0x9d, 0x43, 0xe2, 0xe7, 0x48, 0xab, 0x08, 0x38, 0x5a, 0x03, 0x89, + 0x8e, 0x3c, 0x44, 0x83, 0x1b, 0xf1, 0x8c, 0x56, 0x78, 0xc0, 0x76, 0x98, + 0xae, 0x9f, 0xea, 0x33, +}; +static const unsigned char kat2537_retbits[] = { + 0x68, 0x12, 0xcb, 0x6a, 0x73, 0x4d, 0x0a, 0x0e, 0xf5, 0x57, 0x1a, 0x28, + 0xb2, 0xe0, 0x1e, 0xca, 0xb0, 0xf6, 0x5a, 0x18, 0x7f, 0x9e, 0x25, 0x1e, + 0x16, 0x20, 0x89, 0x0e, 0x43, 0xff, 0x04, 0x75, 0x1e, 0xd5, 0xb3, 0x2e, + 0xbb, 0x5b, 0xb6, 0x5e, 0xf0, 0x93, 0xfe, 0xe9, 0xa0, 0x8b, 0x45, 0x58, + 0xaf, 0x1b, 0xef, 0x86, 0x2a, 0xba, 0xba, 0x69, 0x0f, 0x41, 0x10, 0x26, + 0x23, 0x51, 0x10, 0xa1, +}; +static const struct drbg_kat_pr_false kat2537_t = { + 1, kat2537_entropyin, kat2537_nonce, kat2537_persstr, + kat2537_entropyinreseed, kat2537_addinreseed, kat2537_addin0, + kat2537_addin1, kat2537_retbits +}; +static const struct drbg_kat kat2537 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2537_t +}; + +static const unsigned char kat2538_entropyin[] = { + 0x0d, 0x3d, 0xcd, 0x91, 0x32, 0x93, 0x69, 0x27, 0x86, 0x1f, 0xa0, 0x11, + 0xf4, 0x1e, 0x96, 0x55, 0x35, 0x4e, 0xcf, 0xd4, 0xb0, 0x8f, 0xb7, 0xa9, + 0x19, 0xa9, 0xeb, 0x68, 0xd8, 0x05, 0x70, 0xd2, 0x92, 0xcb, 0x68, 0xc9, + 0x9b, 0xdd, 0xf3, 0x93, +}; +static const unsigned char kat2538_nonce[] = {0}; +static const unsigned char kat2538_persstr[] = {0}; +static const unsigned char kat2538_entropyinreseed[] = { + 0x52, 0x9b, 0x66, 0xc2, 0xb3, 0x04, 0x49, 0xda, 0xc1, 0x47, 0x6f, 0xc1, + 0x71, 0xe1, 0xe8, 0xa7, 0x41, 0xe9, 0x19, 0x1d, 0x26, 0x58, 0xa9, 0x29, + 0x11, 0xb6, 0x78, 0xf2, 0x4e, 0x01, 0x04, 0x3a, 0x6e, 0xbd, 0x47, 0x99, + 0x7f, 0xd3, 0x6d, 0xfb, +}; +static const unsigned char kat2538_addinreseed[] = { + 0x9d, 0x11, 0x75, 0xe0, 0x05, 0xd6, 0x36, 0xe9, 0x98, 0x84, 0x49, 0xf5, + 0x63, 0x87, 0x3c, 0x0e, 0x74, 0x65, 0x59, 0x0c, 0x83, 0xa3, 0x60, 0xd2, + 0xb1, 0xb7, 0xe4, 0xd5, 0x53, 0xef, 0x8d, 0xec, 0x11, 0x22, 0x9f, 0xb0, + 0x20, 0x74, 0xad, 0x54, +}; +static const unsigned char kat2538_addin0[] = { + 0xf2, 0xc1, 0x1e, 0x04, 0x77, 0x9d, 0x4f, 0x0d, 0x0c, 0x1e, 0xdf, 0x71, + 0xb6, 0xf5, 0xb3, 0x5c, 0xbe, 0x60, 0x8e, 0xb0, 0x22, 0x73, 0x11, 0xb7, + 0x78, 0x55, 0x9a, 0x0f, 0x4f, 0x8d, 0x78, 0x7f, 0xfa, 0x30, 0x29, 0x74, + 0x42, 0x72, 0x6e, 0x8e, +}; +static const unsigned char kat2538_addin1[] = { + 0x95, 0x98, 0xfd, 0xe7, 0x86, 0xf3, 0x83, 0x15, 0xf8, 0xa4, 0xe7, 0xb0, + 0x73, 0xed, 0x5d, 0x9f, 0xa5, 0xde, 0x96, 0xea, 0xd5, 0xc5, 0x81, 0xa2, + 0x16, 0x14, 0xad, 0x99, 0x02, 0x87, 0x8f, 0x3c, 0xe2, 0x9e, 0xc1, 0xa8, + 0x01, 0x80, 0xb7, 0x06, +}; +static const unsigned char kat2538_retbits[] = { + 0xfa, 0x69, 0x9f, 0x7b, 0xc4, 0xc8, 0x0f, 0x3a, 0xe3, 0x0e, 0xde, 0x84, + 0x23, 0xdd, 0x1b, 0x8e, 0x51, 0xac, 0x64, 0x37, 0x7b, 0x78, 0x0c, 0x57, + 0x5e, 0xc6, 0x04, 0x22, 0xed, 0x69, 0x62, 0xfa, 0x28, 0xf5, 0x9d, 0x3d, + 0x76, 0xd7, 0xc9, 0x9c, 0xd5, 0xa4, 0xe1, 0xc8, 0xf9, 0x81, 0x08, 0x90, + 0x6f, 0x0e, 0x18, 0xa7, 0xd3, 0x22, 0xda, 0x94, 0xc3, 0x27, 0x8f, 0xfd, + 0xc9, 0x38, 0x80, 0x65, +}; +static const struct drbg_kat_pr_false kat2538_t = { + 2, kat2538_entropyin, kat2538_nonce, kat2538_persstr, + kat2538_entropyinreseed, kat2538_addinreseed, kat2538_addin0, + kat2538_addin1, kat2538_retbits +}; +static const struct drbg_kat kat2538 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2538_t +}; + +static const unsigned char kat2539_entropyin[] = { + 0x10, 0x16, 0xb7, 0x94, 0x81, 0x1a, 0xd9, 0x11, 0x52, 0x3e, 0xcf, 0x67, + 0x87, 0xbc, 0x73, 0x2e, 0x07, 0x6d, 0x28, 0x2f, 0x24, 0xfd, 0xa4, 0x3f, + 0x3e, 0x55, 0x5a, 0x52, 0x2c, 0x83, 0x09, 0xf3, 0x33, 0x18, 0xee, 0x7f, + 0x8e, 0xb1, 0x7b, 0xf1, +}; +static const unsigned char kat2539_nonce[] = {0}; +static const unsigned char kat2539_persstr[] = {0}; +static const unsigned char kat2539_entropyinreseed[] = { + 0x17, 0xb2, 0x57, 0xde, 0x3a, 0x39, 0xed, 0x8f, 0xf9, 0xee, 0xe5, 0x1d, + 0x82, 0x16, 0x7c, 0x59, 0x79, 0xaf, 0xa6, 0x11, 0xc9, 0xe6, 0x87, 0x66, + 0xaf, 0x09, 0x58, 0xe4, 0x0b, 0x0a, 0x68, 0x3b, 0x82, 0x0d, 0x86, 0xbb, + 0x7d, 0xb0, 0x6e, 0xc7, +}; +static const unsigned char kat2539_addinreseed[] = { + 0xc6, 0xa4, 0xbc, 0x11, 0x70, 0x9c, 0x17, 0x0a, 0xe1, 0x38, 0xfd, 0x20, + 0xaf, 0xd8, 0x17, 0x09, 0x60, 0x45, 0xdf, 0x3b, 0x27, 0xe6, 0x70, 0x61, + 0x51, 0xcf, 0x28, 0x35, 0x3c, 0x52, 0x59, 0x89, 0xf8, 0xee, 0xc4, 0xb5, + 0x93, 0xac, 0x02, 0xc0, +}; +static const unsigned char kat2539_addin0[] = { + 0x22, 0xff, 0x28, 0xb8, 0x30, 0x4f, 0xd7, 0x22, 0x24, 0x17, 0xab, 0x5e, + 0x77, 0xf3, 0x19, 0x36, 0x4c, 0x12, 0x32, 0xb8, 0x1f, 0x73, 0x37, 0x42, + 0x2e, 0x7e, 0x34, 0x6a, 0x47, 0xa8, 0x12, 0xe7, 0xa4, 0xdd, 0xde, 0xe7, + 0xc9, 0x54, 0x0c, 0x3b, +}; +static const unsigned char kat2539_addin1[] = { + 0xae, 0x68, 0xf6, 0x46, 0x69, 0xbb, 0xf6, 0x90, 0xc5, 0x2f, 0xbf, 0xdf, + 0x00, 0xb9, 0x4b, 0xec, 0x7c, 0xd5, 0x6d, 0x34, 0x7c, 0x12, 0xb1, 0x95, + 0x62, 0x05, 0x15, 0xee, 0x28, 0x66, 0x24, 0x4f, 0xc2, 0x7b, 0x77, 0x72, + 0x8c, 0xc5, 0x5d, 0x0c, +}; +static const unsigned char kat2539_retbits[] = { + 0x6d, 0x26, 0xa7, 0xc1, 0xf5, 0xc9, 0x57, 0x96, 0xb5, 0x55, 0x87, 0x31, + 0x49, 0x11, 0xaf, 0x73, 0xf3, 0x8d, 0x04, 0x1d, 0xd2, 0xfa, 0xcb, 0x6c, + 0xb1, 0x0b, 0x9a, 0xf6, 0x55, 0xfa, 0x32, 0x66, 0xd3, 0x1b, 0xaa, 0xf9, + 0x67, 0xa3, 0x81, 0x0b, 0x7b, 0xbe, 0xbb, 0xbc, 0x55, 0x31, 0x3c, 0x9b, + 0x15, 0xdf, 0x81, 0xd6, 0xf2, 0xd6, 0x36, 0x24, 0xa8, 0x50, 0x1f, 0xb9, + 0x36, 0xa8, 0x40, 0x23, +}; +static const struct drbg_kat_pr_false kat2539_t = { + 3, kat2539_entropyin, kat2539_nonce, kat2539_persstr, + kat2539_entropyinreseed, kat2539_addinreseed, kat2539_addin0, + kat2539_addin1, kat2539_retbits +}; +static const struct drbg_kat kat2539 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2539_t +}; + +static const unsigned char kat2540_entropyin[] = { + 0x05, 0xf7, 0x73, 0x72, 0x3c, 0xb3, 0x0a, 0x2f, 0xa2, 0x14, 0xaa, 0x5f, + 0x33, 0xe7, 0xb8, 0xfa, 0x20, 0xd7, 0x33, 0x05, 0x4c, 0x41, 0xdd, 0xea, + 0xb3, 0xf3, 0xda, 0x99, 0x42, 0x87, 0x21, 0xab, 0x06, 0x72, 0x6d, 0xf0, + 0x7c, 0x49, 0x96, 0x13, +}; +static const unsigned char kat2540_nonce[] = {0}; +static const unsigned char kat2540_persstr[] = {0}; +static const unsigned char kat2540_entropyinreseed[] = { + 0x71, 0x84, 0xc3, 0xb9, 0x24, 0xa3, 0x48, 0x72, 0x32, 0xf7, 0x1d, 0x03, + 0xdc, 0x93, 0x34, 0xde, 0xee, 0x5c, 0x3b, 0xe7, 0x09, 0x13, 0x17, 0x3e, + 0x20, 0x8d, 0x07, 0xe2, 0xe0, 0x26, 0xc3, 0x72, 0xb8, 0x77, 0x0e, 0xcd, + 0x79, 0xf4, 0xa5, 0x41, +}; +static const unsigned char kat2540_addinreseed[] = { + 0x3d, 0x1b, 0x6f, 0xc6, 0xa8, 0x2f, 0x36, 0x92, 0xab, 0xd4, 0xfb, 0xaa, + 0xde, 0x89, 0xdc, 0x3d, 0xe9, 0xa8, 0xb5, 0xa6, 0x11, 0x67, 0xbe, 0xe1, + 0x4c, 0x9a, 0xb0, 0x1b, 0x3c, 0x2c, 0x36, 0x2c, 0x9d, 0xe5, 0xd8, 0x30, + 0xb8, 0xcc, 0xe7, 0xcc, +}; +static const unsigned char kat2540_addin0[] = { + 0x3d, 0x48, 0xd2, 0x96, 0x78, 0x3d, 0x12, 0x3b, 0xdb, 0x96, 0xee, 0x19, + 0xfe, 0x31, 0x35, 0xc9, 0xf9, 0x92, 0x35, 0xe5, 0x6c, 0x49, 0xbc, 0x6a, + 0xab, 0x29, 0x05, 0xd8, 0x1f, 0x53, 0x96, 0xb4, 0x62, 0x06, 0x63, 0x9d, + 0xb1, 0x29, 0x44, 0xba, +}; +static const unsigned char kat2540_addin1[] = { + 0x43, 0x0c, 0xb5, 0x33, 0x07, 0x55, 0x94, 0x07, 0xed, 0x1b, 0x3c, 0xc2, + 0x84, 0x97, 0xb7, 0xf4, 0x0c, 0x36, 0x34, 0x95, 0xff, 0xd7, 0x05, 0x6d, + 0xc5, 0xd8, 0x54, 0x43, 0x21, 0xa7, 0x95, 0xca, 0x30, 0x13, 0x84, 0xd8, + 0xea, 0x28, 0x3d, 0x66, +}; +static const unsigned char kat2540_retbits[] = { + 0xe8, 0x43, 0xf8, 0x86, 0x22, 0x06, 0xb6, 0x2e, 0xdd, 0x51, 0xeb, 0xf2, + 0x80, 0x17, 0x88, 0x70, 0x1c, 0xf8, 0x47, 0x0a, 0x95, 0xce, 0x46, 0x93, + 0x90, 0x15, 0x4c, 0xb0, 0x4e, 0x25, 0xa0, 0x43, 0x14, 0xa8, 0x23, 0x27, + 0xa6, 0xf6, 0x53, 0x99, 0x30, 0x96, 0xd6, 0xd2, 0x4b, 0x5d, 0x5e, 0xdf, + 0x8e, 0x17, 0x01, 0x31, 0xc7, 0xb4, 0xe7, 0xe0, 0x5e, 0x5d, 0x4c, 0x6b, + 0x29, 0xac, 0xe3, 0x5a, +}; +static const struct drbg_kat_pr_false kat2540_t = { + 4, kat2540_entropyin, kat2540_nonce, kat2540_persstr, + kat2540_entropyinreseed, kat2540_addinreseed, kat2540_addin0, + kat2540_addin1, kat2540_retbits +}; +static const struct drbg_kat kat2540 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2540_t +}; + +static const unsigned char kat2541_entropyin[] = { + 0x8a, 0x94, 0x5a, 0x85, 0x07, 0xc3, 0xd6, 0x12, 0x7b, 0x48, 0x78, 0x7d, + 0x1a, 0x6d, 0x89, 0x90, 0x5c, 0x7c, 0x26, 0x25, 0xb5, 0x7e, 0xed, 0x6c, + 0x92, 0xc6, 0x8d, 0x31, 0x52, 0xa9, 0x33, 0xe0, 0x29, 0x64, 0x9b, 0xb6, + 0xd5, 0xbf, 0x6e, 0xee, +}; +static const unsigned char kat2541_nonce[] = {0}; +static const unsigned char kat2541_persstr[] = {0}; +static const unsigned char kat2541_entropyinreseed[] = { + 0xcf, 0x62, 0xae, 0x91, 0x13, 0xdc, 0x68, 0x53, 0x7f, 0x61, 0x72, 0xdc, + 0x2c, 0xc2, 0x2a, 0x1c, 0xb9, 0xfc, 0xaa, 0x43, 0x29, 0x13, 0xb3, 0xf6, + 0x8b, 0xce, 0x25, 0xaa, 0x97, 0x02, 0x72, 0x4b, 0xf2, 0x90, 0xc1, 0x1a, + 0x0c, 0x5a, 0x01, 0xea, +}; +static const unsigned char kat2541_addinreseed[] = { + 0x7a, 0xa4, 0xbf, 0x30, 0x66, 0x1f, 0x50, 0xbd, 0xe8, 0x86, 0x2e, 0x59, + 0x8f, 0xbe, 0x74, 0xd0, 0x97, 0x16, 0x21, 0x2a, 0x13, 0x2d, 0xbb, 0x9f, + 0x79, 0x70, 0x39, 0x0d, 0xce, 0x60, 0x0e, 0x77, 0xe5, 0x21, 0x58, 0x0c, + 0x63, 0x0a, 0x2a, 0xa2, +}; +static const unsigned char kat2541_addin0[] = { + 0x21, 0xb1, 0x24, 0x46, 0x95, 0x92, 0xfa, 0xe1, 0x3e, 0x87, 0xca, 0xa4, + 0x2d, 0x51, 0xb5, 0xc5, 0xd5, 0x46, 0x79, 0x49, 0x27, 0x20, 0xc1, 0x9a, + 0xa4, 0x65, 0xc3, 0x88, 0xc0, 0xe2, 0x11, 0x2e, 0x3d, 0xee, 0x53, 0xb1, + 0xe8, 0x2e, 0xae, 0x1c, +}; +static const unsigned char kat2541_addin1[] = { + 0x74, 0x5a, 0xa1, 0xcd, 0x0f, 0xbd, 0x66, 0x7d, 0xa2, 0x1b, 0x57, 0xed, + 0xcc, 0x4b, 0x09, 0x10, 0x3a, 0x90, 0xa9, 0x10, 0x12, 0x04, 0x03, 0x84, + 0x10, 0x3c, 0xe7, 0x40, 0x88, 0xc3, 0x02, 0x02, 0x22, 0x70, 0xdf, 0xd9, + 0x5e, 0x4d, 0x4b, 0x66, +}; +static const unsigned char kat2541_retbits[] = { + 0xe7, 0xd4, 0xbc, 0x9a, 0xa5, 0x25, 0x47, 0x91, 0x9b, 0x2c, 0x5b, 0xc2, + 0x4e, 0x5a, 0xca, 0xb3, 0xa3, 0x6d, 0x0e, 0xa0, 0x8b, 0xc6, 0x44, 0x33, + 0xea, 0xbb, 0x7d, 0xd9, 0x7d, 0xf9, 0xb7, 0x63, 0x4d, 0x6f, 0xd0, 0x0a, + 0xb4, 0x1f, 0x39, 0x21, 0x11, 0xc8, 0xb9, 0xda, 0x20, 0x11, 0xda, 0x3e, + 0x56, 0x87, 0x2b, 0x4b, 0xc2, 0x69, 0x32, 0x78, 0x37, 0xd4, 0xac, 0x1f, + 0x55, 0xc7, 0x58, 0xf7, +}; +static const struct drbg_kat_pr_false kat2541_t = { + 5, kat2541_entropyin, kat2541_nonce, kat2541_persstr, + kat2541_entropyinreseed, kat2541_addinreseed, kat2541_addin0, + kat2541_addin1, kat2541_retbits +}; +static const struct drbg_kat kat2541 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2541_t +}; + +static const unsigned char kat2542_entropyin[] = { + 0xe0, 0xe5, 0x2e, 0x67, 0x81, 0xd1, 0x29, 0xe5, 0x35, 0x8f, 0x86, 0xae, + 0x7e, 0x50, 0x87, 0x9b, 0x61, 0xac, 0xba, 0xc8, 0xbe, 0xbd, 0xf3, 0xab, + 0x33, 0x1c, 0xe4, 0x94, 0x91, 0xf3, 0xb9, 0x59, 0xcf, 0xb4, 0x54, 0xc1, + 0xdb, 0x95, 0x02, 0xca, +}; +static const unsigned char kat2542_nonce[] = {0}; +static const unsigned char kat2542_persstr[] = {0}; +static const unsigned char kat2542_entropyinreseed[] = { + 0x81, 0xa9, 0x94, 0x77, 0x16, 0xd5, 0x45, 0x5a, 0x30, 0xd8, 0x1a, 0x99, + 0x06, 0x9f, 0xb2, 0xa2, 0x90, 0x5d, 0xdc, 0x21, 0x04, 0x4e, 0x05, 0xd6, + 0xbd, 0x42, 0x93, 0x1a, 0x93, 0x80, 0x96, 0x86, 0x3a, 0x3b, 0x4a, 0x4e, + 0xdd, 0x0e, 0xbd, 0xa0, +}; +static const unsigned char kat2542_addinreseed[] = { + 0xed, 0x14, 0x3d, 0xf9, 0x37, 0xfa, 0x1a, 0x74, 0xe1, 0x15, 0xcb, 0x8d, + 0x5c, 0x7e, 0xfe, 0x02, 0x98, 0x95, 0x2a, 0xc0, 0xa4, 0x45, 0xb7, 0xb4, + 0x49, 0x03, 0x1d, 0x63, 0xa1, 0x41, 0x17, 0x52, 0x59, 0xcf, 0x70, 0xb0, + 0xc7, 0xac, 0x06, 0x58, +}; +static const unsigned char kat2542_addin0[] = { + 0x1e, 0x05, 0x57, 0x6b, 0x2d, 0x63, 0xe1, 0x5f, 0x77, 0x5b, 0xb8, 0x26, + 0xd4, 0x61, 0x2c, 0x52, 0x22, 0x11, 0xb3, 0x84, 0xf8, 0x14, 0xd1, 0x4e, + 0xe2, 0x1e, 0xa3, 0x39, 0x94, 0x18, 0x3b, 0x64, 0xa6, 0xab, 0x1e, 0xe9, + 0x21, 0xd5, 0xa6, 0x98, +}; +static const unsigned char kat2542_addin1[] = { + 0x39, 0xc5, 0xcd, 0xa1, 0xb9, 0x99, 0xff, 0xb6, 0x39, 0x29, 0x59, 0xd1, + 0xb9, 0x40, 0x3a, 0xb5, 0xef, 0x65, 0x84, 0x14, 0xac, 0x3e, 0xfc, 0xce, + 0x70, 0x7f, 0x95, 0x7c, 0x5e, 0x75, 0xfe, 0x6d, 0x4b, 0x69, 0x56, 0xf4, + 0x4d, 0x01, 0x26, 0x66, +}; +static const unsigned char kat2542_retbits[] = { + 0x59, 0xad, 0xda, 0x5d, 0x2d, 0x89, 0x42, 0x3a, 0x00, 0xcd, 0x77, 0xbd, + 0x85, 0x4c, 0x72, 0x48, 0x53, 0xe3, 0xff, 0xe6, 0xe2, 0xf6, 0x66, 0x17, + 0x5f, 0x30, 0xab, 0xa7, 0x8d, 0x24, 0x05, 0x99, 0xad, 0xe7, 0x7a, 0x02, + 0x5a, 0x3f, 0x57, 0x09, 0x28, 0x2c, 0xdf, 0xf9, 0x5a, 0xf7, 0x39, 0xe4, + 0x2e, 0x4d, 0x35, 0xaa, 0xb0, 0xab, 0x00, 0x23, 0xd1, 0xf2, 0x90, 0x82, + 0x06, 0xb8, 0xa9, 0x9b, +}; +static const struct drbg_kat_pr_false kat2542_t = { + 6, kat2542_entropyin, kat2542_nonce, kat2542_persstr, + kat2542_entropyinreseed, kat2542_addinreseed, kat2542_addin0, + kat2542_addin1, kat2542_retbits +}; +static const struct drbg_kat kat2542 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2542_t +}; + +static const unsigned char kat2543_entropyin[] = { + 0x86, 0x65, 0x5d, 0x0b, 0x84, 0xc7, 0x1f, 0x32, 0x3e, 0x20, 0x1b, 0xe6, + 0xfa, 0x8f, 0x10, 0xa0, 0x01, 0x79, 0xa4, 0xf8, 0xb6, 0x83, 0x8a, 0x58, + 0xb1, 0x56, 0x88, 0x75, 0x95, 0x42, 0x81, 0x18, 0x97, 0x08, 0xac, 0xdc, + 0xb1, 0x6f, 0xe2, 0x1d, +}; +static const unsigned char kat2543_nonce[] = {0}; +static const unsigned char kat2543_persstr[] = {0}; +static const unsigned char kat2543_entropyinreseed[] = { + 0x75, 0x80, 0xa8, 0x1a, 0xa2, 0xe8, 0xb2, 0xdf, 0xde, 0x70, 0xd2, 0x69, + 0x01, 0x30, 0x9b, 0x02, 0x3b, 0xc3, 0x0d, 0x94, 0xd7, 0xad, 0x81, 0x2a, + 0x1f, 0xf7, 0x3a, 0x5c, 0xc0, 0xf5, 0x2f, 0xed, 0x35, 0x58, 0xd0, 0x37, + 0x9b, 0x76, 0x16, 0xf4, +}; +static const unsigned char kat2543_addinreseed[] = { + 0x53, 0xb0, 0x51, 0xca, 0x5d, 0x01, 0x50, 0xed, 0xdb, 0x14, 0x18, 0x23, + 0x10, 0x58, 0x0f, 0x97, 0x5e, 0x46, 0x2c, 0xd7, 0xce, 0xdf, 0xb2, 0x41, + 0x40, 0xef, 0x2d, 0xb0, 0xa3, 0xe6, 0x89, 0x70, 0xcc, 0x63, 0xe6, 0xa9, + 0x6a, 0x61, 0x95, 0x09, +}; +static const unsigned char kat2543_addin0[] = { + 0xd6, 0x29, 0x03, 0x84, 0xce, 0xf6, 0xbe, 0x6c, 0xf1, 0x7e, 0x22, 0x02, + 0xa6, 0xf1, 0x87, 0xec, 0x77, 0x40, 0xa3, 0x90, 0x6b, 0xe9, 0xad, 0x4b, + 0xbd, 0xcb, 0x04, 0xc1, 0xbd, 0xf6, 0x12, 0x73, 0xee, 0xed, 0x9a, 0x07, + 0xc2, 0x02, 0x06, 0x78, +}; +static const unsigned char kat2543_addin1[] = { + 0x88, 0xf3, 0xe8, 0x4a, 0xfb, 0xf4, 0xb9, 0xf0, 0x44, 0xb6, 0xdd, 0xbe, + 0xa7, 0xb7, 0x76, 0xc1, 0x65, 0xaf, 0xa5, 0x54, 0x79, 0xc3, 0xd0, 0x73, + 0xed, 0xc4, 0x23, 0x00, 0x8b, 0x9b, 0x1b, 0xfe, 0x87, 0x59, 0xc9, 0x51, + 0x18, 0x59, 0xf0, 0xe2, +}; +static const unsigned char kat2543_retbits[] = { + 0x17, 0xf1, 0x45, 0xe8, 0xb0, 0x7d, 0x9f, 0x61, 0xe9, 0x0c, 0xc5, 0x97, + 0xb1, 0x3b, 0xe8, 0x4b, 0x1a, 0x4e, 0x3b, 0x78, 0x85, 0x33, 0x1a, 0x40, + 0x52, 0x57, 0x7d, 0x23, 0x33, 0xca, 0xca, 0x76, 0x1e, 0x8e, 0xeb, 0x6a, + 0xb5, 0x5c, 0xc0, 0x3f, 0x2b, 0xac, 0x94, 0xa2, 0x3c, 0x94, 0x4d, 0x2f, + 0x6e, 0xba, 0xc2, 0x48, 0x65, 0x1f, 0x92, 0xb1, 0x6f, 0x9e, 0x0f, 0x7a, + 0x78, 0x55, 0xa7, 0x23, +}; +static const struct drbg_kat_pr_false kat2543_t = { + 7, kat2543_entropyin, kat2543_nonce, kat2543_persstr, + kat2543_entropyinreseed, kat2543_addinreseed, kat2543_addin0, + kat2543_addin1, kat2543_retbits +}; +static const struct drbg_kat kat2543 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2543_t +}; + +static const unsigned char kat2544_entropyin[] = { + 0x84, 0xa7, 0x48, 0x1b, 0xf6, 0x78, 0xbe, 0xac, 0x12, 0x15, 0x4c, 0x61, + 0x5d, 0xb0, 0xf5, 0x74, 0xeb, 0xc3, 0x9a, 0x5e, 0xa8, 0x3a, 0xbf, 0x9a, + 0x77, 0xf7, 0xb8, 0xe1, 0xfa, 0xb2, 0x7a, 0x9f, 0xbc, 0x6a, 0x9d, 0x5f, + 0x5a, 0x4f, 0x21, 0x99, +}; +static const unsigned char kat2544_nonce[] = {0}; +static const unsigned char kat2544_persstr[] = {0}; +static const unsigned char kat2544_entropyinreseed[] = { + 0xea, 0x22, 0x90, 0x4a, 0x82, 0xae, 0x99, 0x28, 0xe1, 0x91, 0x06, 0xc4, + 0x8c, 0xe4, 0x79, 0xb1, 0xa8, 0x23, 0x95, 0xf3, 0x10, 0xd1, 0xb2, 0xaa, + 0xa2, 0xcf, 0x56, 0x35, 0x9d, 0x82, 0x2d, 0x79, 0xb5, 0x4d, 0x82, 0xcd, + 0x6c, 0xd5, 0x5b, 0x90, +}; +static const unsigned char kat2544_addinreseed[] = { + 0xf4, 0x37, 0xea, 0xed, 0x6e, 0x0f, 0x8b, 0x46, 0x9d, 0xe0, 0xe2, 0x55, + 0xb4, 0x95, 0xfc, 0xfe, 0x6c, 0x6d, 0x61, 0x04, 0x00, 0x2f, 0x10, 0x35, + 0x62, 0xb7, 0x87, 0xd2, 0xb9, 0x9a, 0xf6, 0xf0, 0x8d, 0x73, 0x64, 0x6c, + 0x23, 0x0c, 0x14, 0x21, +}; +static const unsigned char kat2544_addin0[] = { + 0x09, 0xdb, 0x7d, 0xb6, 0x30, 0x9c, 0xdd, 0x4e, 0xf2, 0xfe, 0xac, 0xf5, + 0x70, 0x2f, 0xc6, 0x8a, 0x79, 0x27, 0x1a, 0xee, 0xfe, 0x91, 0x00, 0x43, + 0xb8, 0xf4, 0xb6, 0xda, 0x46, 0x43, 0x75, 0x41, 0x1b, 0xe6, 0x0b, 0xb4, + 0xae, 0xfa, 0xc8, 0x52, +}; +static const unsigned char kat2544_addin1[] = { + 0x55, 0xf0, 0x55, 0xf0, 0xbc, 0xe7, 0x4d, 0xee, 0x2d, 0x92, 0x89, 0x76, + 0x75, 0xe3, 0x52, 0x27, 0xdb, 0xcd, 0x90, 0xad, 0x02, 0xdf, 0xbb, 0x3f, + 0xdd, 0x53, 0x29, 0x3d, 0x13, 0x50, 0xd6, 0xf3, 0x8e, 0x5d, 0x0f, 0x61, + 0x3f, 0x95, 0x78, 0x13, +}; +static const unsigned char kat2544_retbits[] = { + 0xe7, 0x89, 0xf0, 0x9f, 0x37, 0x9e, 0x05, 0x6a, 0x9b, 0x29, 0xf2, 0x63, + 0xe6, 0x07, 0xb2, 0x20, 0x14, 0xc1, 0xda, 0x00, 0x0c, 0x55, 0xd2, 0x3a, + 0x2b, 0x4a, 0x32, 0x87, 0x3b, 0x09, 0x9e, 0x9e, 0xe8, 0xd5, 0x8a, 0xf6, + 0x4c, 0x11, 0x5a, 0x75, 0xc8, 0x64, 0xa8, 0x9b, 0x22, 0xed, 0xff, 0xde, + 0x9f, 0x8a, 0x88, 0xc1, 0x53, 0xe0, 0x57, 0x3f, 0xa7, 0x95, 0x93, 0x2c, + 0x6e, 0x59, 0xcd, 0x5e, +}; +static const struct drbg_kat_pr_false kat2544_t = { + 8, kat2544_entropyin, kat2544_nonce, kat2544_persstr, + kat2544_entropyinreseed, kat2544_addinreseed, kat2544_addin0, + kat2544_addin1, kat2544_retbits +}; +static const struct drbg_kat kat2544 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2544_t +}; + +static const unsigned char kat2545_entropyin[] = { + 0xd1, 0x05, 0x83, 0x27, 0x96, 0x22, 0x35, 0x25, 0x3d, 0x58, 0x1b, 0xc9, + 0xbc, 0x68, 0x17, 0x60, 0x84, 0x77, 0x8c, 0x0d, 0xb2, 0x20, 0xc5, 0xa4, + 0xa9, 0xf7, 0x37, 0x04, 0x26, 0x04, 0x31, 0x08, 0x7b, 0x13, 0x8a, 0x15, + 0x43, 0xd4, 0x3c, 0x13, +}; +static const unsigned char kat2545_nonce[] = {0}; +static const unsigned char kat2545_persstr[] = {0}; +static const unsigned char kat2545_entropyinreseed[] = { + 0x9b, 0xdc, 0x0e, 0x51, 0xe8, 0x82, 0x1c, 0xcb, 0xf8, 0xe1, 0x44, 0x94, + 0xe7, 0x51, 0xb5, 0x1b, 0x5b, 0x1c, 0x3d, 0x3f, 0xd0, 0xd0, 0xb7, 0x19, + 0x35, 0x3e, 0xa9, 0xc4, 0x6a, 0x0b, 0xd0, 0x40, 0x8e, 0x00, 0x81, 0xbe, + 0x26, 0x7e, 0xd3, 0x1b, +}; +static const unsigned char kat2545_addinreseed[] = { + 0xaf, 0x01, 0x4e, 0xf2, 0xdd, 0xa2, 0x3c, 0x2a, 0xcd, 0x2d, 0x08, 0x85, + 0x5b, 0x3a, 0x17, 0xb3, 0xfa, 0xd8, 0x4b, 0x32, 0x91, 0xe5, 0x30, 0xa1, + 0x92, 0x0b, 0xc4, 0x9d, 0x00, 0x52, 0x27, 0x37, 0x84, 0x6c, 0x3f, 0xcb, + 0x4c, 0x92, 0xd6, 0xab, +}; +static const unsigned char kat2545_addin0[] = { + 0x61, 0x7b, 0xf0, 0x52, 0x67, 0x24, 0x90, 0xfa, 0x69, 0x0c, 0xfe, 0xcd, + 0x8a, 0x18, 0xa4, 0xf9, 0x5a, 0x98, 0x08, 0x24, 0xb7, 0x3d, 0x92, 0x29, + 0xb1, 0x4f, 0xa0, 0xba, 0x77, 0xe5, 0x5d, 0xf9, 0x84, 0x35, 0x8b, 0x3f, + 0xfe, 0xd6, 0x35, 0x5e, +}; +static const unsigned char kat2545_addin1[] = { + 0x2c, 0xb3, 0x90, 0x95, 0x72, 0xca, 0xe9, 0x89, 0x00, 0xd1, 0xf2, 0x96, + 0x33, 0xb2, 0x91, 0xea, 0x02, 0xdb, 0x9a, 0x2e, 0x75, 0x22, 0x6e, 0x0d, + 0x68, 0xff, 0x9b, 0x59, 0x23, 0xf3, 0x11, 0x22, 0x7a, 0xa8, 0x85, 0x1a, + 0xbd, 0xdf, 0x22, 0x54, +}; +static const unsigned char kat2545_retbits[] = { + 0x05, 0xbf, 0xd8, 0xa3, 0xa1, 0x0e, 0x6d, 0x9b, 0xa9, 0xf5, 0x41, 0x38, + 0x8d, 0x6c, 0xfc, 0x31, 0x25, 0x6b, 0x9c, 0xaa, 0x5a, 0xc2, 0xfd, 0x45, + 0xc2, 0xe8, 0x96, 0xf3, 0xfc, 0x7c, 0x95, 0x37, 0xb4, 0xba, 0xc4, 0x64, + 0xff, 0xa5, 0xf6, 0x2d, 0xe5, 0x66, 0xff, 0x1f, 0x47, 0xab, 0xbb, 0x0e, + 0xb5, 0x0f, 0xb5, 0x22, 0xfd, 0xfd, 0xa9, 0xea, 0x48, 0x45, 0xa0, 0xee, + 0x2e, 0x01, 0x08, 0x5d, +}; +static const struct drbg_kat_pr_false kat2545_t = { + 9, kat2545_entropyin, kat2545_nonce, kat2545_persstr, + kat2545_entropyinreseed, kat2545_addinreseed, kat2545_addin0, + kat2545_addin1, kat2545_retbits +}; +static const struct drbg_kat kat2545 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2545_t +}; + +static const unsigned char kat2546_entropyin[] = { + 0x93, 0x1f, 0xc7, 0xc1, 0xfc, 0x6f, 0x64, 0x8e, 0xc8, 0x53, 0xaf, 0xad, + 0x8c, 0x16, 0x0b, 0xa8, 0xe0, 0x0c, 0xc3, 0x78, 0xfd, 0x46, 0xc5, 0xd8, + 0xa0, 0x54, 0x13, 0xea, 0xd5, 0xa3, 0x56, 0x0b, 0x74, 0xb2, 0xa4, 0x5a, + 0x4f, 0x02, 0x3e, 0x67, +}; +static const unsigned char kat2546_nonce[] = {0}; +static const unsigned char kat2546_persstr[] = {0}; +static const unsigned char kat2546_entropyinreseed[] = { + 0x9a, 0x77, 0xec, 0x80, 0x31, 0xc2, 0xb2, 0xe6, 0xce, 0x1f, 0xae, 0x26, + 0x34, 0xd0, 0xe6, 0x9c, 0x5c, 0x7a, 0x7b, 0xd7, 0x31, 0xdb, 0x54, 0x5c, + 0x12, 0x31, 0x1e, 0x52, 0x05, 0x4e, 0x73, 0x8a, 0x81, 0xcb, 0xff, 0xf8, + 0xfe, 0x06, 0x9b, 0xd0, +}; +static const unsigned char kat2546_addinreseed[] = { + 0x1b, 0x1b, 0xb1, 0xa9, 0x5c, 0xb5, 0x38, 0x2d, 0x96, 0x79, 0xbc, 0x2c, + 0x1a, 0x2e, 0x7b, 0x50, 0xcb, 0x2a, 0x88, 0x52, 0x3c, 0x67, 0x24, 0x37, + 0x0b, 0x22, 0xe1, 0x84, 0xc9, 0xbc, 0xc6, 0x2e, 0x63, 0x57, 0x27, 0xbb, + 0x0e, 0x97, 0x6f, 0x4d, +}; +static const unsigned char kat2546_addin0[] = { + 0xc9, 0x6f, 0x85, 0xd0, 0x75, 0x07, 0xaf, 0x3b, 0x07, 0x20, 0xc1, 0x70, + 0x81, 0x43, 0x5f, 0x57, 0xe7, 0x26, 0x82, 0x93, 0x85, 0x5d, 0xe4, 0xe8, + 0xa3, 0xff, 0xad, 0x92, 0x5e, 0xeb, 0x72, 0x89, 0xd2, 0x07, 0xf8, 0x58, + 0x0b, 0x06, 0x9f, 0xbb, +}; +static const unsigned char kat2546_addin1[] = { + 0x4f, 0x95, 0xdb, 0x08, 0x45, 0x4f, 0x55, 0xc8, 0x1c, 0x79, 0x85, 0x4b, + 0x2f, 0x39, 0x45, 0x9a, 0x08, 0xdf, 0xdb, 0xb2, 0x33, 0xe3, 0xd4, 0xc2, + 0xbf, 0xf5, 0xd7, 0xe3, 0x5c, 0x93, 0xa4, 0x64, 0xd9, 0x16, 0xb3, 0x2b, + 0xc5, 0x7f, 0xc7, 0xe9, +}; +static const unsigned char kat2546_retbits[] = { + 0x27, 0x0b, 0xc7, 0xcb, 0x3a, 0xb1, 0x7b, 0x52, 0xe6, 0x35, 0x33, 0x0c, + 0xc1, 0x84, 0x2d, 0xa6, 0x29, 0x6c, 0xf5, 0x43, 0x2d, 0x11, 0xd6, 0xab, + 0xc3, 0x7e, 0xdd, 0xca, 0x99, 0x6f, 0x74, 0x9e, 0x8e, 0x97, 0xce, 0xaf, + 0xdd, 0x84, 0x2f, 0x14, 0x74, 0xf6, 0x66, 0x4d, 0x87, 0xa8, 0x20, 0xc9, + 0x16, 0x2e, 0xa7, 0xcf, 0xe9, 0xb6, 0xb8, 0xc0, 0x98, 0xef, 0x51, 0xfe, + 0x4c, 0x26, 0xd7, 0xe2, +}; +static const struct drbg_kat_pr_false kat2546_t = { + 10, kat2546_entropyin, kat2546_nonce, kat2546_persstr, + kat2546_entropyinreseed, kat2546_addinreseed, kat2546_addin0, + kat2546_addin1, kat2546_retbits +}; +static const struct drbg_kat kat2546 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2546_t +}; + +static const unsigned char kat2547_entropyin[] = { + 0x14, 0xb6, 0x1e, 0x3c, 0xa2, 0xf9, 0x30, 0x1e, 0xa2, 0x43, 0x05, 0x50, + 0x23, 0x91, 0x78, 0x52, 0xad, 0xbd, 0xce, 0x4e, 0xcc, 0xd0, 0x97, 0x43, + 0xd2, 0xab, 0xa0, 0x6e, 0x26, 0x28, 0x88, 0x3e, 0xd8, 0x60, 0x0e, 0x4a, + 0x09, 0x97, 0x3d, 0x59, +}; +static const unsigned char kat2547_nonce[] = {0}; +static const unsigned char kat2547_persstr[] = {0}; +static const unsigned char kat2547_entropyinreseed[] = { + 0x1a, 0x66, 0xc3, 0x98, 0x5d, 0x3c, 0xff, 0x2d, 0x14, 0x93, 0xae, 0xe8, + 0x92, 0xd8, 0xde, 0xc8, 0xa9, 0x66, 0xfb, 0x4b, 0x72, 0x12, 0xd2, 0x56, + 0xc2, 0x99, 0x23, 0xbb, 0x0f, 0x29, 0xcd, 0xf8, 0x22, 0x24, 0x0e, 0x7d, + 0xda, 0xf6, 0xac, 0xe6, +}; +static const unsigned char kat2547_addinreseed[] = { + 0x97, 0x47, 0xaf, 0x46, 0xff, 0x6b, 0xf6, 0x95, 0x9c, 0x26, 0x6b, 0xe2, + 0xdc, 0xb0, 0x08, 0x7c, 0x7e, 0x70, 0x90, 0xee, 0x4d, 0x7a, 0xe8, 0x11, + 0xc4, 0xb8, 0xce, 0x73, 0x91, 0xda, 0xb5, 0x57, 0x17, 0x8d, 0x85, 0x42, + 0x0f, 0xd4, 0x17, 0x76, +}; +static const unsigned char kat2547_addin0[] = { + 0x8f, 0x9a, 0x93, 0xdf, 0xf9, 0xed, 0x76, 0xf5, 0x93, 0x92, 0xa6, 0x9f, + 0x4d, 0xb6, 0x09, 0x97, 0xd6, 0xbb, 0x12, 0xcd, 0x67, 0x6c, 0x5f, 0xe5, + 0xeb, 0x5c, 0xca, 0x4e, 0x1f, 0xe7, 0xbd, 0xea, 0x31, 0x31, 0x39, 0x1e, + 0x0c, 0xd2, 0xb2, 0xbc, +}; +static const unsigned char kat2547_addin1[] = { + 0x1b, 0x1e, 0x87, 0xc1, 0xb9, 0xea, 0x94, 0x45, 0x3b, 0x36, 0xca, 0x07, + 0x4a, 0x56, 0x9d, 0x95, 0xb3, 0x00, 0x0d, 0xa3, 0xb7, 0x10, 0x80, 0x71, + 0x33, 0xb4, 0x6d, 0x3c, 0x77, 0xbb, 0xe9, 0x97, 0xc9, 0xdf, 0x24, 0x39, + 0xd5, 0x1d, 0x14, 0x69, +}; +static const unsigned char kat2547_retbits[] = { + 0x6a, 0x89, 0xdf, 0x0b, 0x01, 0xc8, 0x5d, 0x86, 0x2d, 0xe9, 0xf5, 0xa3, + 0xd3, 0xa0, 0xc7, 0x4d, 0xb6, 0xf9, 0xb4, 0xf9, 0x9c, 0x33, 0x07, 0xf5, + 0xc4, 0x91, 0x5a, 0x2d, 0xaf, 0xef, 0x4d, 0x1e, 0x72, 0xbf, 0x14, 0x17, + 0x1a, 0xb4, 0x0c, 0x42, 0x7a, 0xf6, 0x00, 0x72, 0x26, 0xe3, 0x6f, 0x3b, + 0x48, 0x20, 0xe4, 0xf0, 0xf7, 0x4d, 0x72, 0x48, 0xcc, 0x8e, 0x70, 0x9b, + 0x2a, 0x7d, 0x81, 0x4e, +}; +static const struct drbg_kat_pr_false kat2547_t = { + 11, kat2547_entropyin, kat2547_nonce, kat2547_persstr, + kat2547_entropyinreseed, kat2547_addinreseed, kat2547_addin0, + kat2547_addin1, kat2547_retbits +}; +static const struct drbg_kat kat2547 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2547_t +}; + +static const unsigned char kat2548_entropyin[] = { + 0x84, 0xfd, 0xb0, 0xe4, 0x40, 0x57, 0xe5, 0xf5, 0xda, 0x02, 0xbd, 0x4a, + 0xce, 0x0e, 0xcd, 0x54, 0x45, 0xe3, 0x72, 0xe8, 0x43, 0x8f, 0xcc, 0xff, + 0x77, 0x40, 0x9e, 0xca, 0xeb, 0x29, 0x21, 0x7a, 0xd7, 0x58, 0x56, 0xe3, + 0xfc, 0x2c, 0x8f, 0x4c, +}; +static const unsigned char kat2548_nonce[] = {0}; +static const unsigned char kat2548_persstr[] = {0}; +static const unsigned char kat2548_entropyinreseed[] = { + 0x66, 0x59, 0x42, 0xd0, 0xd1, 0x5f, 0x76, 0x53, 0x83, 0xbc, 0x7a, 0x4b, + 0xc5, 0x29, 0xe4, 0xb5, 0x7d, 0x0f, 0x0c, 0x23, 0x52, 0x49, 0x23, 0xe0, + 0x2e, 0x32, 0x34, 0x00, 0xf8, 0x11, 0x9d, 0x1f, 0x1e, 0x4e, 0x49, 0x5f, + 0x83, 0xaf, 0xd5, 0xdb, +}; +static const unsigned char kat2548_addinreseed[] = { + 0x03, 0xb0, 0x1e, 0x1a, 0xcb, 0x74, 0x13, 0xc3, 0xab, 0x97, 0x8f, 0x0f, + 0xdd, 0xa1, 0x51, 0x52, 0x24, 0xd7, 0x02, 0x55, 0x8b, 0xf1, 0xc6, 0x7f, + 0xf0, 0xd6, 0xc0, 0xad, 0x47, 0x09, 0x75, 0xf8, 0x2d, 0xc5, 0x3f, 0x75, + 0x33, 0x8b, 0x03, 0x96, +}; +static const unsigned char kat2548_addin0[] = { + 0xfc, 0x55, 0x35, 0x18, 0x8a, 0xf0, 0x43, 0x5e, 0x52, 0x88, 0xdf, 0x5d, + 0xa0, 0x6a, 0xa2, 0xdf, 0xe1, 0x6d, 0x93, 0xb3, 0x10, 0xa6, 0xb1, 0x8f, + 0x20, 0xe3, 0xba, 0x81, 0x64, 0x73, 0x59, 0xdd, 0xc4, 0x4d, 0x52, 0xe3, + 0x09, 0x3b, 0xb7, 0xf3, +}; +static const unsigned char kat2548_addin1[] = { + 0x37, 0xf8, 0x53, 0xf9, 0x88, 0x49, 0xad, 0x63, 0x6e, 0x57, 0xa6, 0xdc, + 0xf7, 0xab, 0x22, 0x3d, 0x50, 0xed, 0x10, 0x3f, 0x43, 0x4b, 0x49, 0xde, + 0x36, 0xbf, 0x87, 0x6d, 0xd9, 0xb2, 0x1e, 0xf3, 0x38, 0x61, 0x2c, 0xc3, + 0x7b, 0x9e, 0x01, 0xa8, +}; +static const unsigned char kat2548_retbits[] = { + 0xdc, 0x61, 0x4f, 0x10, 0x4b, 0xc9, 0x9b, 0x4b, 0xa4, 0x59, 0xd2, 0x80, + 0xc9, 0x8c, 0x6e, 0xe6, 0x9a, 0xc6, 0x2b, 0xcd, 0x0c, 0x37, 0xca, 0x48, + 0x8f, 0x5b, 0xd3, 0x0b, 0x20, 0x68, 0x93, 0x2a, 0x9f, 0x76, 0x52, 0xb3, + 0xfe, 0xa9, 0x26, 0x49, 0x87, 0x5f, 0xc9, 0x5b, 0xe0, 0xff, 0xb4, 0x5e, + 0x23, 0x61, 0x8b, 0x34, 0xb4, 0x00, 0x3b, 0x73, 0x23, 0xdf, 0x4d, 0xff, + 0xe9, 0xcf, 0x6f, 0xf9, +}; +static const struct drbg_kat_pr_false kat2548_t = { + 12, kat2548_entropyin, kat2548_nonce, kat2548_persstr, + kat2548_entropyinreseed, kat2548_addinreseed, kat2548_addin0, + kat2548_addin1, kat2548_retbits +}; +static const struct drbg_kat kat2548 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2548_t +}; + +static const unsigned char kat2549_entropyin[] = { + 0xa5, 0x8a, 0x67, 0xd9, 0x18, 0x19, 0xea, 0xce, 0xb3, 0x44, 0x0c, 0x5e, + 0x8b, 0x81, 0x16, 0x23, 0xec, 0x42, 0x3b, 0x8e, 0xf3, 0x06, 0xe6, 0x52, + 0xda, 0x28, 0xa1, 0x70, 0x05, 0x67, 0xeb, 0xde, 0xd4, 0x23, 0x6f, 0x11, + 0xd4, 0xe0, 0x67, 0x4c, +}; +static const unsigned char kat2549_nonce[] = {0}; +static const unsigned char kat2549_persstr[] = {0}; +static const unsigned char kat2549_entropyinreseed[] = { + 0x48, 0x33, 0x67, 0x2b, 0x97, 0x39, 0xd4, 0x47, 0x0b, 0x5d, 0x7a, 0x5a, + 0x43, 0xf6, 0xfa, 0x30, 0xec, 0xc6, 0x6a, 0xe6, 0x96, 0x53, 0x33, 0x87, + 0xba, 0xfa, 0xdd, 0xd6, 0x2f, 0xae, 0xe1, 0x37, 0xf9, 0x61, 0xaf, 0x96, + 0x5b, 0x47, 0x3c, 0x1a, +}; +static const unsigned char kat2549_addinreseed[] = { + 0xb2, 0xc2, 0xab, 0x06, 0x58, 0x2c, 0x20, 0xa7, 0x48, 0x73, 0x7f, 0x83, + 0x90, 0xc0, 0x13, 0xa0, 0x3d, 0x8d, 0x62, 0x00, 0xe6, 0x30, 0xe2, 0xa2, + 0xf0, 0x59, 0xeb, 0x7d, 0x3f, 0x8f, 0x89, 0xb0, 0x8c, 0xe9, 0x7f, 0xd3, + 0x60, 0x3e, 0xe3, 0x1d, +}; +static const unsigned char kat2549_addin0[] = { + 0x30, 0x50, 0x93, 0xf3, 0x99, 0x4d, 0x3e, 0x3c, 0x41, 0xc0, 0x01, 0x4c, + 0xca, 0x4d, 0x70, 0x74, 0x80, 0x66, 0x7c, 0x2a, 0xef, 0x1e, 0xf0, 0x3a, + 0xfa, 0xe1, 0xf0, 0x27, 0x2e, 0x73, 0xd0, 0xae, 0xe4, 0x3d, 0xae, 0xf1, + 0xc1, 0xe0, 0xbd, 0xfe, +}; +static const unsigned char kat2549_addin1[] = { + 0x82, 0x50, 0xd9, 0x8f, 0x0f, 0x93, 0x72, 0xb7, 0x4c, 0x6c, 0x57, 0x7c, + 0x5e, 0x66, 0x3f, 0x12, 0x21, 0x36, 0x9a, 0xc6, 0x7e, 0x18, 0x30, 0xae, + 0x91, 0x04, 0x3e, 0x58, 0x3f, 0x9a, 0x85, 0x0c, 0xa1, 0x6b, 0x0e, 0xfc, + 0x66, 0x13, 0xd5, 0xa8, +}; +static const unsigned char kat2549_retbits[] = { + 0x74, 0x7a, 0x67, 0xe6, 0x85, 0xbe, 0xbc, 0xc4, 0x25, 0x71, 0x7d, 0xaa, + 0x75, 0x5b, 0xe9, 0xc3, 0x04, 0x21, 0x36, 0x23, 0x7b, 0x1d, 0x0a, 0xe9, + 0xa2, 0x2c, 0x90, 0xb9, 0x67, 0x4e, 0xaa, 0xf9, 0x89, 0x04, 0x4d, 0x1b, + 0xb4, 0x70, 0xbc, 0xb3, 0x63, 0x78, 0xa9, 0xc6, 0x51, 0xb6, 0x2d, 0xb3, + 0xf7, 0x53, 0x6b, 0x51, 0x84, 0x01, 0x82, 0xa1, 0x0f, 0x9b, 0xd7, 0x6c, + 0xf1, 0x3a, 0x55, 0xce, +}; +static const struct drbg_kat_pr_false kat2549_t = { + 13, kat2549_entropyin, kat2549_nonce, kat2549_persstr, + kat2549_entropyinreseed, kat2549_addinreseed, kat2549_addin0, + kat2549_addin1, kat2549_retbits +}; +static const struct drbg_kat kat2549 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2549_t +}; + +static const unsigned char kat2550_entropyin[] = { + 0x4a, 0x78, 0xcb, 0xbb, 0x0f, 0x88, 0xa4, 0xdc, 0xe7, 0xaa, 0xfb, 0xda, + 0xb0, 0xd6, 0x50, 0xe8, 0x08, 0xf9, 0x99, 0x02, 0x2f, 0x2a, 0xf1, 0x62, + 0x01, 0x1e, 0x21, 0xaf, 0xf6, 0x59, 0x68, 0xf7, 0x8f, 0x0f, 0x61, 0x09, + 0x6f, 0x8a, 0x16, 0x0e, +}; +static const unsigned char kat2550_nonce[] = {0}; +static const unsigned char kat2550_persstr[] = {0}; +static const unsigned char kat2550_entropyinreseed[] = { + 0xfd, 0x5e, 0x4e, 0x50, 0xa7, 0xc0, 0x0b, 0x45, 0xbe, 0x31, 0xf4, 0x0f, + 0x5a, 0xe5, 0xdc, 0x0a, 0x54, 0x40, 0xa2, 0x98, 0x67, 0x6b, 0x4a, 0xa9, + 0x10, 0x01, 0xfb, 0x5e, 0x5c, 0x2c, 0x7f, 0x37, 0x95, 0x34, 0xf0, 0x57, + 0xdd, 0x72, 0x9b, 0x35, +}; +static const unsigned char kat2550_addinreseed[] = { + 0xb5, 0x52, 0xdc, 0xd9, 0x8e, 0xf2, 0x32, 0x98, 0xed, 0x3a, 0x25, 0x93, + 0x56, 0x8d, 0x3f, 0xa3, 0xcb, 0x96, 0x1d, 0x89, 0x66, 0x0b, 0xbd, 0x93, + 0x30, 0x1f, 0x82, 0x1b, 0xda, 0xd7, 0xef, 0x0b, 0x9c, 0xd0, 0x71, 0xab, + 0xc1, 0xe1, 0x82, 0xe3, +}; +static const unsigned char kat2550_addin0[] = { + 0x18, 0xa0, 0x98, 0x94, 0xed, 0x82, 0x48, 0x09, 0xe6, 0x6e, 0xe4, 0x47, + 0xf9, 0x41, 0x35, 0x05, 0x03, 0x5c, 0x8e, 0x85, 0xdb, 0x5b, 0x9c, 0x6e, + 0x59, 0x7b, 0xf6, 0xa2, 0xe3, 0x83, 0x86, 0xd8, 0xaf, 0x26, 0x78, 0x4f, + 0x8f, 0x29, 0x78, 0x0c, +}; +static const unsigned char kat2550_addin1[] = { + 0x75, 0xec, 0x32, 0x9e, 0x54, 0x63, 0x93, 0x06, 0xdc, 0x85, 0x3b, 0x73, + 0x49, 0x8d, 0xbc, 0x00, 0x2a, 0xbc, 0xea, 0xdb, 0x35, 0x5e, 0x12, 0xae, + 0x69, 0xfe, 0xa1, 0x6c, 0xc3, 0xae, 0x89, 0x22, 0x72, 0x54, 0x49, 0x90, + 0xd2, 0x93, 0x8b, 0xe9, +}; +static const unsigned char kat2550_retbits[] = { + 0x4c, 0x08, 0x12, 0x6a, 0x7f, 0xe9, 0x78, 0xf2, 0x59, 0x82, 0x67, 0x2e, + 0xe2, 0x04, 0x4a, 0x9d, 0xfe, 0x31, 0x91, 0x9a, 0x20, 0x03, 0x85, 0x3a, + 0x74, 0xd9, 0x13, 0x2b, 0x46, 0xa2, 0x27, 0x85, 0x47, 0xaf, 0x59, 0x80, + 0xd0, 0x37, 0x40, 0x12, 0x75, 0xff, 0x86, 0x52, 0x8b, 0xff, 0x41, 0xfa, + 0x80, 0x18, 0x0e, 0x82, 0x3b, 0xb8, 0x8c, 0xda, 0x60, 0x29, 0xe0, 0x6d, + 0x2b, 0x00, 0x9e, 0x81, +}; +static const struct drbg_kat_pr_false kat2550_t = { + 14, kat2550_entropyin, kat2550_nonce, kat2550_persstr, + kat2550_entropyinreseed, kat2550_addinreseed, kat2550_addin0, + kat2550_addin1, kat2550_retbits +}; +static const struct drbg_kat kat2550 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2550_t +}; + +static const unsigned char kat2551_entropyin[] = { + 0x7a, 0xa6, 0x0c, 0x5a, 0x25, 0x36, 0x0d, 0x8a, 0x0a, 0x9d, 0x41, 0xe3, + 0x4c, 0x76, 0xc4, 0xf1, 0x80, 0x71, 0xb5, 0x6a, 0xc6, 0x73, 0xd4, 0xba, + 0xac, 0xbe, 0xe7, 0x75, 0x49, 0xdd, 0x36, 0x1d, 0xb6, 0x49, 0x6f, 0x90, + 0x34, 0x51, 0x38, 0x88, +}; +static const unsigned char kat2551_nonce[] = {0}; +static const unsigned char kat2551_persstr[] = { + 0xe7, 0xb5, 0xcc, 0x99, 0xdd, 0xe3, 0x12, 0x31, 0x8e, 0xcb, 0x2a, 0x3b, + 0xc4, 0xee, 0x8c, 0x14, 0x76, 0x34, 0x5a, 0xd3, 0xe8, 0x1b, 0x5d, 0x6d, + 0xc0, 0xb7, 0x47, 0xb5, 0x90, 0xc0, 0xd2, 0x1b, 0xe7, 0x31, 0x39, 0x8f, + 0x82, 0x3a, 0xad, 0x02, +}; +static const unsigned char kat2551_entropyinreseed[] = { + 0x31, 0x0e, 0x8e, 0x8d, 0xbc, 0x6a, 0xe5, 0x86, 0x62, 0x5d, 0x75, 0x0f, + 0x5a, 0x1c, 0xee, 0x76, 0x4a, 0x7e, 0x47, 0xa2, 0xeb, 0x35, 0x5c, 0x5c, + 0x94, 0xdd, 0xe9, 0x50, 0x06, 0x5f, 0xb7, 0x55, 0x46, 0xff, 0x34, 0x7f, + 0x7f, 0x17, 0x24, 0xeb, +}; +static const unsigned char kat2551_addinreseed[] = {0}; +static const unsigned char kat2551_addin0[] = {0}; +static const unsigned char kat2551_addin1[] = {0}; +static const unsigned char kat2551_retbits[] = { + 0x21, 0x46, 0x0b, 0xda, 0x25, 0xdc, 0xad, 0x96, 0xd2, 0x91, 0x44, 0xc9, + 0x12, 0xc6, 0x54, 0xe3, 0x07, 0xa0, 0xb5, 0x59, 0xd7, 0x26, 0xc0, 0x51, + 0x3e, 0x2f, 0x07, 0xa4, 0xe6, 0xca, 0x0c, 0x44, 0x4e, 0xcb, 0x4f, 0xf6, + 0xa9, 0x77, 0x88, 0x0c, 0xba, 0x4b, 0xb9, 0x93, 0xb2, 0xd2, 0x87, 0x3d, + 0xab, 0xd3, 0x59, 0xa8, 0xc4, 0x93, 0xdc, 0x28, 0x38, 0xab, 0xb1, 0x0f, + 0x63, 0xd3, 0xa8, 0xe7, +}; +static const struct drbg_kat_pr_false kat2551_t = { + 0, kat2551_entropyin, kat2551_nonce, kat2551_persstr, + kat2551_entropyinreseed, kat2551_addinreseed, kat2551_addin0, + kat2551_addin1, kat2551_retbits +}; +static const struct drbg_kat kat2551 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2551_t +}; + +static const unsigned char kat2552_entropyin[] = { + 0x9f, 0x5c, 0x41, 0x61, 0x87, 0x2a, 0x8e, 0xed, 0x8d, 0xe0, 0xd7, 0xa4, + 0x0e, 0x4c, 0x83, 0x30, 0xa0, 0x6d, 0x44, 0x4b, 0xe6, 0x7a, 0xec, 0xdc, + 0x22, 0x14, 0x1b, 0x16, 0x8c, 0x5e, 0x56, 0x07, 0xe3, 0xd7, 0xf2, 0xf0, + 0xb2, 0x06, 0xdc, 0xd7, +}; +static const unsigned char kat2552_nonce[] = {0}; +static const unsigned char kat2552_persstr[] = { + 0xab, 0x9e, 0xe1, 0xb4, 0x97, 0x4e, 0x9e, 0x62, 0x8a, 0x75, 0xc3, 0x5f, + 0x59, 0xa9, 0x05, 0xec, 0x1c, 0xf6, 0xcd, 0x8b, 0x29, 0x27, 0xcf, 0x5e, + 0xeb, 0x4b, 0xf3, 0x52, 0x9c, 0x40, 0xe2, 0xb4, 0xf6, 0x47, 0xa3, 0xe5, + 0x2d, 0xa3, 0x66, 0xce, +}; +static const unsigned char kat2552_entropyinreseed[] = { + 0x59, 0x67, 0xee, 0xee, 0x36, 0xac, 0xfe, 0xfa, 0x19, 0x1d, 0x33, 0x5c, + 0x62, 0x5a, 0x43, 0x3b, 0x1a, 0x93, 0x52, 0x98, 0x99, 0x13, 0x84, 0xcd, + 0x67, 0xa4, 0x21, 0x2f, 0xad, 0xed, 0xfb, 0xdd, 0x0c, 0xe0, 0x84, 0x61, + 0x74, 0xc2, 0x26, 0xe7, +}; +static const unsigned char kat2552_addinreseed[] = {0}; +static const unsigned char kat2552_addin0[] = {0}; +static const unsigned char kat2552_addin1[] = {0}; +static const unsigned char kat2552_retbits[] = { + 0x16, 0x6a, 0x0a, 0x73, 0xab, 0xab, 0x05, 0xa9, 0x4c, 0x5e, 0xf7, 0x8c, + 0xee, 0x8e, 0x21, 0x1f, 0x6b, 0x79, 0xa7, 0x7a, 0xa4, 0xd4, 0x6d, 0x9a, + 0x13, 0xec, 0x97, 0xad, 0x3b, 0x64, 0xbf, 0xa3, 0x0f, 0xcb, 0x2a, 0x3c, + 0x25, 0xc1, 0xa4, 0x2a, 0xb5, 0x2f, 0xa6, 0x30, 0x5d, 0xfc, 0x05, 0x9c, + 0xbe, 0x45, 0x9a, 0x67, 0x49, 0x14, 0xc2, 0x25, 0x8e, 0xc6, 0x84, 0x30, + 0x94, 0x41, 0x69, 0x2e, +}; +static const struct drbg_kat_pr_false kat2552_t = { + 1, kat2552_entropyin, kat2552_nonce, kat2552_persstr, + kat2552_entropyinreseed, kat2552_addinreseed, kat2552_addin0, + kat2552_addin1, kat2552_retbits +}; +static const struct drbg_kat kat2552 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2552_t +}; + +static const unsigned char kat2553_entropyin[] = { + 0x5d, 0x93, 0x35, 0x4c, 0x4a, 0x62, 0x0e, 0x82, 0x9a, 0x7c, 0xc5, 0xde, + 0x8c, 0x0c, 0xcd, 0x0b, 0xb0, 0xaf, 0x65, 0x5a, 0xea, 0x62, 0x29, 0x43, + 0xc2, 0x17, 0x68, 0x35, 0xad, 0xd5, 0xce, 0xe5, 0xbc, 0xe9, 0x2a, 0x6a, + 0x3c, 0x97, 0x29, 0x03, +}; +static const unsigned char kat2553_nonce[] = {0}; +static const unsigned char kat2553_persstr[] = { + 0x86, 0x4e, 0x83, 0xc6, 0xe5, 0x17, 0x2a, 0xd9, 0xa6, 0x4f, 0x2d, 0x3c, + 0x8c, 0x50, 0x27, 0x8c, 0x18, 0x59, 0x99, 0x6d, 0x65, 0x13, 0xfc, 0x40, + 0xac, 0xe1, 0x99, 0x92, 0xa0, 0xdd, 0xa0, 0x10, 0xcf, 0x37, 0x1d, 0x66, + 0x07, 0x21, 0xb2, 0x6f, +}; +static const unsigned char kat2553_entropyinreseed[] = { + 0x39, 0x0d, 0x5e, 0x0d, 0xbe, 0x18, 0x4f, 0x93, 0x9b, 0xef, 0x7c, 0x64, + 0xb6, 0xe6, 0x8a, 0x35, 0x30, 0xf9, 0x26, 0xd4, 0x3e, 0xbf, 0x64, 0x4d, + 0x6c, 0xbf, 0x77, 0x6c, 0x6d, 0x26, 0x89, 0xa5, 0x9f, 0xec, 0xd9, 0x51, + 0x6b, 0xc6, 0x1f, 0xb5, +}; +static const unsigned char kat2553_addinreseed[] = {0}; +static const unsigned char kat2553_addin0[] = {0}; +static const unsigned char kat2553_addin1[] = {0}; +static const unsigned char kat2553_retbits[] = { + 0x35, 0xdd, 0x52, 0x55, 0x94, 0x60, 0x04, 0xc9, 0x86, 0xca, 0x03, 0x58, + 0xe9, 0xc3, 0xad, 0xc7, 0xfe, 0xfd, 0x15, 0x19, 0x6f, 0x4a, 0xda, 0xa2, + 0xdb, 0x14, 0x72, 0x90, 0x82, 0x9c, 0xf4, 0x4c, 0xfb, 0x0d, 0x53, 0x6e, + 0xf1, 0x34, 0x09, 0x62, 0x48, 0x0d, 0x96, 0x60, 0x7b, 0x2d, 0x53, 0x3d, + 0xc6, 0xc0, 0xc7, 0xa9, 0xca, 0xe6, 0xaf, 0x07, 0xf2, 0x55, 0x56, 0x84, + 0xce, 0x6a, 0x23, 0x17, +}; +static const struct drbg_kat_pr_false kat2553_t = { + 2, kat2553_entropyin, kat2553_nonce, kat2553_persstr, + kat2553_entropyinreseed, kat2553_addinreseed, kat2553_addin0, + kat2553_addin1, kat2553_retbits +}; +static const struct drbg_kat kat2553 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2553_t +}; + +static const unsigned char kat2554_entropyin[] = { + 0xfa, 0xf4, 0xe0, 0xb0, 0x2e, 0xe9, 0xd6, 0xbc, 0xd3, 0x07, 0x1d, 0x08, + 0xaa, 0x09, 0xfd, 0xac, 0xf1, 0x65, 0xa1, 0x06, 0x41, 0x2f, 0xb6, 0x28, + 0xa3, 0xaf, 0x5d, 0x96, 0x81, 0xa6, 0x94, 0x11, 0xdc, 0xf5, 0x75, 0x32, + 0xd8, 0x9e, 0xb7, 0x72, +}; +static const unsigned char kat2554_nonce[] = {0}; +static const unsigned char kat2554_persstr[] = { + 0x29, 0x26, 0x20, 0x27, 0x40, 0xb7, 0xd5, 0xff, 0xcb, 0xdb, 0x22, 0xf8, + 0x23, 0xd3, 0xe4, 0x7f, 0x3b, 0x92, 0x24, 0x38, 0x22, 0x77, 0xf0, 0x7c, + 0x95, 0x6d, 0x25, 0xfa, 0x0b, 0x18, 0x12, 0x4c, 0x28, 0xe9, 0x6f, 0x04, + 0xdc, 0x1b, 0xaa, 0x43, +}; +static const unsigned char kat2554_entropyinreseed[] = { + 0x63, 0x2a, 0x9e, 0xe7, 0x1f, 0xc6, 0xbe, 0x34, 0xcc, 0x0a, 0x4f, 0xf2, + 0x12, 0xd1, 0x5f, 0x48, 0x27, 0xd1, 0x74, 0x48, 0x9f, 0x2d, 0x4c, 0x93, + 0x63, 0xe0, 0x55, 0x62, 0x5a, 0xa3, 0x68, 0xbd, 0x72, 0x58, 0x78, 0x25, + 0x17, 0x45, 0x8f, 0x3d, +}; +static const unsigned char kat2554_addinreseed[] = {0}; +static const unsigned char kat2554_addin0[] = {0}; +static const unsigned char kat2554_addin1[] = {0}; +static const unsigned char kat2554_retbits[] = { + 0x91, 0x73, 0xe1, 0xa6, 0x8a, 0x70, 0x8f, 0x14, 0x56, 0xfd, 0x19, 0xd3, + 0x4c, 0x53, 0x97, 0x87, 0xb8, 0xca, 0x9c, 0x8e, 0x2c, 0x3c, 0x0a, 0xb7, + 0xad, 0x73, 0xac, 0x06, 0xa1, 0x31, 0xa5, 0xf1, 0xc1, 0xb0, 0xbd, 0x64, + 0xaa, 0x28, 0xe1, 0xdd, 0xb8, 0xf7, 0x11, 0xb4, 0xc0, 0x13, 0xf3, 0x25, + 0x47, 0xc8, 0xa6, 0x37, 0x01, 0xb8, 0x35, 0xd3, 0x85, 0x18, 0x2a, 0x69, + 0x76, 0x1b, 0xf8, 0x53, +}; +static const struct drbg_kat_pr_false kat2554_t = { + 3, kat2554_entropyin, kat2554_nonce, kat2554_persstr, + kat2554_entropyinreseed, kat2554_addinreseed, kat2554_addin0, + kat2554_addin1, kat2554_retbits +}; +static const struct drbg_kat kat2554 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2554_t +}; + +static const unsigned char kat2555_entropyin[] = { + 0x07, 0xc5, 0x3c, 0x6c, 0x51, 0x1c, 0xe7, 0xad, 0x81, 0xa0, 0x9d, 0x3b, + 0x12, 0x54, 0x5b, 0x59, 0x20, 0x4b, 0x02, 0x87, 0x8e, 0xa4, 0x81, 0xe0, + 0xc1, 0x6e, 0xa5, 0x1f, 0x16, 0x9b, 0x1c, 0xd7, 0x82, 0x43, 0x03, 0x7a, + 0xea, 0xf9, 0xdb, 0xef, +}; +static const unsigned char kat2555_nonce[] = {0}; +static const unsigned char kat2555_persstr[] = { + 0xa9, 0x06, 0xff, 0x51, 0xad, 0x03, 0x43, 0x24, 0x26, 0xd0, 0x26, 0xc3, + 0xeb, 0x57, 0x3f, 0xf6, 0x68, 0xc9, 0xb4, 0x6f, 0x1d, 0x48, 0xac, 0x2d, + 0x51, 0xb2, 0x1a, 0xfe, 0x65, 0x02, 0x25, 0x0d, 0xa0, 0xcc, 0x2e, 0x1e, + 0x9f, 0xb4, 0x68, 0x72, +}; +static const unsigned char kat2555_entropyinreseed[] = { + 0xe1, 0x05, 0xc2, 0x9c, 0x72, 0x59, 0xe6, 0xc4, 0xf4, 0xad, 0x2e, 0xd9, + 0x32, 0xd0, 0xe1, 0x24, 0x75, 0x1d, 0xd6, 0x92, 0x70, 0xd3, 0xf0, 0xea, + 0x3d, 0x82, 0x66, 0x73, 0xb8, 0x06, 0xbc, 0x52, 0x67, 0x38, 0x66, 0xb7, + 0x26, 0x8e, 0x91, 0xbf, +}; +static const unsigned char kat2555_addinreseed[] = {0}; +static const unsigned char kat2555_addin0[] = {0}; +static const unsigned char kat2555_addin1[] = {0}; +static const unsigned char kat2555_retbits[] = { + 0xf0, 0x18, 0x75, 0x11, 0x33, 0x52, 0xca, 0x1c, 0xc7, 0x5f, 0x61, 0x78, + 0x67, 0xf9, 0x2a, 0x14, 0xa9, 0x64, 0xfa, 0x2e, 0x2a, 0x07, 0xc4, 0x3a, + 0xdc, 0xc0, 0x49, 0x63, 0x5b, 0x78, 0xc9, 0x2e, 0x5c, 0x71, 0x74, 0x70, + 0x18, 0x6b, 0x94, 0x67, 0x39, 0x0d, 0xb9, 0x81, 0x0d, 0xc3, 0xc3, 0xf7, + 0x66, 0x71, 0x27, 0xe8, 0x26, 0x31, 0x4f, 0xda, 0x7a, 0x01, 0xb8, 0x89, + 0x7b, 0x05, 0xd2, 0x74, +}; +static const struct drbg_kat_pr_false kat2555_t = { + 4, kat2555_entropyin, kat2555_nonce, kat2555_persstr, + kat2555_entropyinreseed, kat2555_addinreseed, kat2555_addin0, + kat2555_addin1, kat2555_retbits +}; +static const struct drbg_kat kat2555 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2555_t +}; + +static const unsigned char kat2556_entropyin[] = { + 0xc7, 0x58, 0x43, 0x26, 0xf2, 0x95, 0xce, 0x20, 0xc6, 0xff, 0xc9, 0xa5, + 0x31, 0x9e, 0x70, 0x55, 0x4f, 0x96, 0xcc, 0x24, 0xab, 0x23, 0xd8, 0x44, + 0xd1, 0x4b, 0xfa, 0xf5, 0x32, 0xb2, 0xb9, 0x5d, 0xf7, 0x7c, 0x5f, 0x4e, + 0x57, 0x1b, 0x75, 0x5c, +}; +static const unsigned char kat2556_nonce[] = {0}; +static const unsigned char kat2556_persstr[] = { + 0xd9, 0x1b, 0xa3, 0xbd, 0x00, 0x97, 0xcc, 0x53, 0x25, 0x3a, 0xa1, 0x67, + 0x49, 0xd4, 0xd2, 0xb9, 0xfd, 0xd3, 0x25, 0xf4, 0xd9, 0x89, 0xe3, 0x5b, + 0x42, 0x8e, 0x16, 0x45, 0x6b, 0xe3, 0x23, 0x08, 0x64, 0xcb, 0x2e, 0xd1, + 0x3d, 0xf5, 0xf1, 0xfd, +}; +static const unsigned char kat2556_entropyinreseed[] = { + 0xa4, 0xab, 0x7c, 0xba, 0x17, 0xcc, 0x5a, 0x21, 0x1e, 0x75, 0xcf, 0x6e, + 0xdf, 0x5f, 0x42, 0xf2, 0xe6, 0xad, 0xb2, 0x97, 0xc8, 0xa8, 0xa7, 0x1b, + 0x0b, 0x10, 0xd4, 0x79, 0x45, 0x4e, 0xc9, 0xe5, 0x1a, 0xb1, 0x4c, 0x67, + 0x94, 0x68, 0xf5, 0xa6, +}; +static const unsigned char kat2556_addinreseed[] = {0}; +static const unsigned char kat2556_addin0[] = {0}; +static const unsigned char kat2556_addin1[] = {0}; +static const unsigned char kat2556_retbits[] = { + 0x12, 0x23, 0x2f, 0x1f, 0x47, 0xa8, 0xfd, 0xc6, 0xaf, 0x93, 0x11, 0x15, + 0x70, 0xb9, 0x2a, 0x30, 0x5f, 0x69, 0x94, 0xbb, 0xa3, 0xdb, 0x06, 0xea, + 0x1c, 0x61, 0x7e, 0x4a, 0x2f, 0x45, 0xf0, 0xb9, 0x5c, 0x3f, 0x3f, 0x4a, + 0x81, 0x1b, 0x97, 0x77, 0x02, 0x31, 0xf2, 0xed, 0xcc, 0x14, 0x9b, 0x0e, + 0x6b, 0x13, 0x65, 0x7c, 0x75, 0x4b, 0x69, 0xf9, 0xd7, 0x82, 0x82, 0x49, + 0x1b, 0xd0, 0x30, 0xf7, +}; +static const struct drbg_kat_pr_false kat2556_t = { + 5, kat2556_entropyin, kat2556_nonce, kat2556_persstr, + kat2556_entropyinreseed, kat2556_addinreseed, kat2556_addin0, + kat2556_addin1, kat2556_retbits +}; +static const struct drbg_kat kat2556 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2556_t +}; + +static const unsigned char kat2557_entropyin[] = { + 0xfd, 0x86, 0xc7, 0x7c, 0x64, 0xfc, 0x5b, 0x21, 0x93, 0x1a, 0x98, 0xf3, + 0x4a, 0xe2, 0x30, 0x3f, 0x64, 0xf4, 0x9c, 0xc6, 0xa5, 0x82, 0xff, 0x8e, + 0x44, 0xb8, 0xec, 0xa0, 0xac, 0xd7, 0xc2, 0xee, 0x7b, 0x15, 0x18, 0x14, + 0xc7, 0x46, 0x88, 0x23, +}; +static const unsigned char kat2557_nonce[] = {0}; +static const unsigned char kat2557_persstr[] = { + 0x07, 0x25, 0x86, 0x68, 0xa7, 0x49, 0x22, 0xc6, 0x58, 0x3b, 0x88, 0xf5, + 0xe8, 0xdf, 0xa5, 0xc6, 0x28, 0x10, 0x0a, 0xcd, 0x2f, 0x7e, 0x8a, 0xaf, + 0x81, 0x00, 0x27, 0xf6, 0xb0, 0xfc, 0xbe, 0x89, 0xd8, 0xde, 0x16, 0xfa, + 0xb6, 0x55, 0x98, 0x92, +}; +static const unsigned char kat2557_entropyinreseed[] = { + 0x6d, 0x8c, 0x53, 0xd3, 0xaf, 0xfe, 0xad, 0x61, 0xe6, 0xdd, 0xfc, 0x26, + 0xd4, 0xb8, 0x91, 0x74, 0x2f, 0x9a, 0x7e, 0x5d, 0x59, 0xef, 0x51, 0x1a, + 0xb8, 0x8a, 0x44, 0xaa, 0xc3, 0x42, 0x1d, 0x03, 0x55, 0xd3, 0x73, 0x98, + 0x32, 0xe3, 0x4c, 0x4e, +}; +static const unsigned char kat2557_addinreseed[] = {0}; +static const unsigned char kat2557_addin0[] = {0}; +static const unsigned char kat2557_addin1[] = {0}; +static const unsigned char kat2557_retbits[] = { + 0xfa, 0xa3, 0xd6, 0x5e, 0xda, 0xac, 0x98, 0xd3, 0x31, 0x6d, 0xcb, 0x13, + 0x44, 0x5e, 0xaa, 0xd0, 0xcd, 0xfc, 0x69, 0xa4, 0xa5, 0x78, 0xb8, 0x1a, + 0x79, 0x2a, 0x49, 0x47, 0x9f, 0x15, 0xed, 0x0a, 0xb3, 0xc6, 0x06, 0x13, + 0xa6, 0x89, 0xbc, 0x79, 0xac, 0x38, 0x08, 0x07, 0xb1, 0xb7, 0xd5, 0x02, + 0xba, 0x88, 0x74, 0x57, 0x96, 0x8e, 0xbb, 0x22, 0x10, 0xb8, 0xd2, 0xe9, + 0x7b, 0xdf, 0xdc, 0xb1, +}; +static const struct drbg_kat_pr_false kat2557_t = { + 6, kat2557_entropyin, kat2557_nonce, kat2557_persstr, + kat2557_entropyinreseed, kat2557_addinreseed, kat2557_addin0, + kat2557_addin1, kat2557_retbits +}; +static const struct drbg_kat kat2557 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2557_t +}; + +static const unsigned char kat2558_entropyin[] = { + 0x6c, 0xac, 0x4b, 0x31, 0x28, 0x61, 0x8c, 0x27, 0xc2, 0xa3, 0xa2, 0x73, + 0x54, 0xab, 0x6a, 0x62, 0x99, 0x94, 0xf6, 0x79, 0xdb, 0x20, 0x15, 0x21, + 0xd8, 0x67, 0x9c, 0xd0, 0x3a, 0xfd, 0xbb, 0x71, 0x7e, 0xd9, 0x2e, 0xfb, + 0x02, 0x5f, 0x8c, 0x45, +}; +static const unsigned char kat2558_nonce[] = {0}; +static const unsigned char kat2558_persstr[] = { + 0xd0, 0xef, 0x6a, 0xb5, 0xc7, 0x14, 0x75, 0x47, 0x83, 0x4b, 0x52, 0x97, + 0xc5, 0x1e, 0x45, 0xb6, 0x11, 0x30, 0xac, 0x0d, 0x7d, 0x8d, 0x7d, 0xa9, + 0xfb, 0xee, 0x0a, 0x2a, 0xe5, 0x9a, 0x09, 0x3f, 0xe9, 0x34, 0xab, 0xc7, + 0x19, 0x4e, 0x57, 0x23, +}; +static const unsigned char kat2558_entropyinreseed[] = { + 0x09, 0x76, 0x36, 0x46, 0x41, 0x11, 0x8f, 0x8f, 0x1f, 0x02, 0x20, 0x56, + 0xa8, 0x45, 0x41, 0x73, 0x1c, 0xb4, 0xa6, 0x16, 0xbe, 0x61, 0x76, 0x07, + 0x60, 0x06, 0x64, 0x23, 0x04, 0x49, 0xbb, 0xb0, 0x3b, 0xe3, 0x4d, 0x2d, + 0x31, 0xc8, 0x29, 0xf8, +}; +static const unsigned char kat2558_addinreseed[] = {0}; +static const unsigned char kat2558_addin0[] = {0}; +static const unsigned char kat2558_addin1[] = {0}; +static const unsigned char kat2558_retbits[] = { + 0x87, 0x48, 0xf9, 0x0e, 0xef, 0xe8, 0x4f, 0xdf, 0xd8, 0xc2, 0x33, 0x8a, + 0x5f, 0x7c, 0xd7, 0xdf, 0xa0, 0x60, 0x97, 0xe7, 0x7d, 0xf9, 0x9e, 0x7e, + 0x5e, 0x7d, 0x17, 0x02, 0x85, 0xd1, 0xce, 0x6a, 0x77, 0x09, 0x9d, 0xf7, + 0x5e, 0x47, 0xbf, 0xe0, 0x9e, 0xa5, 0xcb, 0xc6, 0x89, 0xef, 0xc7, 0x9a, + 0xb4, 0x12, 0x55, 0x11, 0x58, 0x9e, 0xd2, 0x6c, 0x1e, 0x67, 0xa7, 0xa3, + 0xc6, 0x67, 0x36, 0x98, +}; +static const struct drbg_kat_pr_false kat2558_t = { + 7, kat2558_entropyin, kat2558_nonce, kat2558_persstr, + kat2558_entropyinreseed, kat2558_addinreseed, kat2558_addin0, + kat2558_addin1, kat2558_retbits +}; +static const struct drbg_kat kat2558 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2558_t +}; + +static const unsigned char kat2559_entropyin[] = { + 0x78, 0xbc, 0xfe, 0x65, 0xd4, 0x36, 0x52, 0xcb, 0xc1, 0x76, 0xc1, 0x1d, + 0xf1, 0x2d, 0x80, 0xd0, 0x85, 0x86, 0xcd, 0xff, 0x69, 0x4a, 0xff, 0x78, + 0x2b, 0x72, 0xe2, 0x9b, 0x73, 0x7d, 0x38, 0xa7, 0x10, 0x94, 0x92, 0x27, + 0x89, 0x8e, 0x98, 0xab, +}; +static const unsigned char kat2559_nonce[] = {0}; +static const unsigned char kat2559_persstr[] = { + 0xaa, 0xd3, 0xca, 0xca, 0x9f, 0x6e, 0x34, 0xcb, 0xf1, 0x50, 0x92, 0xdd, + 0x29, 0x85, 0x48, 0x93, 0xf6, 0x33, 0x8d, 0xf7, 0x7c, 0x79, 0x65, 0x99, + 0x20, 0xec, 0x9f, 0xa8, 0xcb, 0x9a, 0x92, 0xc2, 0xa5, 0x8c, 0x4d, 0x1e, + 0x0e, 0x19, 0x9c, 0x41, +}; +static const unsigned char kat2559_entropyinreseed[] = { + 0x55, 0xeb, 0x2d, 0x71, 0x01, 0x6d, 0xf0, 0x60, 0x28, 0x6e, 0x20, 0x31, + 0x3d, 0xe6, 0x6a, 0xde, 0xee, 0x61, 0x21, 0x58, 0xfd, 0x57, 0xa6, 0x85, + 0x18, 0x1c, 0x82, 0xd0, 0xb9, 0x11, 0x31, 0xdf, 0xb2, 0xae, 0xb0, 0xed, + 0xff, 0x73, 0xda, 0x20, +}; +static const unsigned char kat2559_addinreseed[] = {0}; +static const unsigned char kat2559_addin0[] = {0}; +static const unsigned char kat2559_addin1[] = {0}; +static const unsigned char kat2559_retbits[] = { + 0xa3, 0x43, 0x4d, 0x9e, 0xb1, 0xaf, 0x5e, 0x68, 0xc5, 0xfe, 0x25, 0xa5, + 0x36, 0x5f, 0x8d, 0x67, 0x21, 0xbf, 0x61, 0x49, 0x5e, 0x81, 0x74, 0xaa, + 0x01, 0x8c, 0xe7, 0x35, 0x4d, 0xae, 0xc8, 0xda, 0xaa, 0x55, 0x91, 0x12, + 0xad, 0x6c, 0x8e, 0x6e, 0x40, 0x29, 0x04, 0x04, 0xce, 0xa2, 0x24, 0xe2, + 0xf6, 0x60, 0xf1, 0xc2, 0x45, 0xe2, 0x5f, 0x17, 0x5b, 0xdb, 0x18, 0x24, + 0x9a, 0xb0, 0xcc, 0x54, +}; +static const struct drbg_kat_pr_false kat2559_t = { + 8, kat2559_entropyin, kat2559_nonce, kat2559_persstr, + kat2559_entropyinreseed, kat2559_addinreseed, kat2559_addin0, + kat2559_addin1, kat2559_retbits +}; +static const struct drbg_kat kat2559 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2559_t +}; + +static const unsigned char kat2560_entropyin[] = { + 0xb8, 0xa8, 0x84, 0xe0, 0x48, 0x94, 0x51, 0x55, 0x10, 0x4e, 0x51, 0xc1, + 0xac, 0x9e, 0xd5, 0x24, 0x5f, 0xc0, 0xdd, 0x69, 0x22, 0x08, 0xf3, 0x25, + 0xaa, 0xda, 0x39, 0x01, 0x27, 0x54, 0xb4, 0xcb, 0x8a, 0x0e, 0x57, 0xed, + 0x0f, 0xae, 0x1f, 0xb9, +}; +static const unsigned char kat2560_nonce[] = {0}; +static const unsigned char kat2560_persstr[] = { + 0xb9, 0x45, 0x4b, 0x50, 0xab, 0xd7, 0x77, 0x57, 0xea, 0x0c, 0xc8, 0x69, + 0x2b, 0xc6, 0x4d, 0x3d, 0x8b, 0xf5, 0x56, 0xc9, 0xd6, 0x2f, 0x7a, 0x6f, + 0xc0, 0x61, 0x92, 0x2b, 0x4d, 0x15, 0xe5, 0xc3, 0xad, 0xa7, 0x14, 0x0c, + 0xe8, 0x56, 0x82, 0x76, +}; +static const unsigned char kat2560_entropyinreseed[] = { + 0x0f, 0x36, 0xab, 0x0c, 0x37, 0x57, 0xe9, 0xe5, 0x3f, 0x07, 0x1b, 0x23, + 0xf8, 0x6a, 0x3f, 0x98, 0xaf, 0x4c, 0x81, 0x53, 0x87, 0x0d, 0x3c, 0x7d, + 0x3f, 0x34, 0x54, 0x59, 0xc2, 0x88, 0xab, 0x65, 0xc1, 0x68, 0x20, 0xf6, + 0x62, 0xa1, 0x57, 0x69, +}; +static const unsigned char kat2560_addinreseed[] = {0}; +static const unsigned char kat2560_addin0[] = {0}; +static const unsigned char kat2560_addin1[] = {0}; +static const unsigned char kat2560_retbits[] = { + 0x96, 0x83, 0xb2, 0x63, 0x52, 0x2d, 0x8d, 0xb7, 0xcb, 0xb0, 0x32, 0xb1, + 0x94, 0x1b, 0x9d, 0x2f, 0x91, 0x83, 0xe5, 0x01, 0x21, 0xe8, 0xf7, 0x00, + 0x1c, 0x53, 0x76, 0xbb, 0x8b, 0xfc, 0xf7, 0x6b, 0x7d, 0x4e, 0x44, 0x93, + 0xa9, 0x79, 0x9d, 0xbf, 0x87, 0xd1, 0x7c, 0x12, 0x7b, 0x77, 0xa3, 0x59, + 0x64, 0x58, 0x35, 0x97, 0x89, 0x80, 0xd0, 0xfa, 0xcb, 0xed, 0xfd, 0xfb, + 0xa8, 0xc4, 0x18, 0x8e, +}; +static const struct drbg_kat_pr_false kat2560_t = { + 9, kat2560_entropyin, kat2560_nonce, kat2560_persstr, + kat2560_entropyinreseed, kat2560_addinreseed, kat2560_addin0, + kat2560_addin1, kat2560_retbits +}; +static const struct drbg_kat kat2560 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2560_t +}; + +static const unsigned char kat2561_entropyin[] = { + 0x26, 0x93, 0x65, 0xf7, 0xdf, 0x50, 0x8e, 0x36, 0x31, 0x45, 0x53, 0xee, + 0x04, 0x35, 0xb2, 0x42, 0x37, 0x23, 0xe5, 0xaf, 0x6a, 0xe2, 0x80, 0x34, + 0x10, 0xb0, 0x18, 0x82, 0xed, 0x86, 0xb4, 0xb0, 0x75, 0x17, 0x05, 0xb0, + 0x12, 0x98, 0xc7, 0x45, +}; +static const unsigned char kat2561_nonce[] = {0}; +static const unsigned char kat2561_persstr[] = { + 0x33, 0x27, 0x95, 0x85, 0x05, 0x16, 0xf0, 0xa8, 0xfa, 0xfc, 0x2d, 0xb0, + 0x6f, 0x26, 0x35, 0x22, 0xa4, 0x74, 0xb2, 0x1e, 0xbb, 0xd5, 0xde, 0xef, + 0x68, 0xc7, 0xdb, 0xbe, 0x89, 0x8b, 0xce, 0x1d, 0xd0, 0xbf, 0x9c, 0x58, + 0x89, 0x17, 0x96, 0x6d, +}; +static const unsigned char kat2561_entropyinreseed[] = { + 0x18, 0x85, 0x46, 0x4a, 0xba, 0x81, 0xf8, 0xb6, 0xa0, 0x1d, 0x71, 0x15, + 0x52, 0x71, 0xad, 0xcd, 0x2c, 0x0b, 0x30, 0xa6, 0x33, 0x4d, 0x1d, 0x0c, + 0xd7, 0x36, 0x7c, 0xd1, 0xfd, 0x14, 0x29, 0x28, 0x40, 0xa9, 0xd7, 0x13, + 0x24, 0xd0, 0x56, 0x7d, +}; +static const unsigned char kat2561_addinreseed[] = {0}; +static const unsigned char kat2561_addin0[] = {0}; +static const unsigned char kat2561_addin1[] = {0}; +static const unsigned char kat2561_retbits[] = { + 0xb3, 0x87, 0x97, 0x50, 0xb4, 0x88, 0x16, 0xbd, 0x71, 0xbf, 0x8d, 0x31, + 0x21, 0xfb, 0x97, 0x78, 0x58, 0xef, 0x81, 0xf2, 0xa9, 0x15, 0xfe, 0x09, + 0x28, 0x4d, 0x89, 0xe9, 0x33, 0x2c, 0xe4, 0x37, 0x4d, 0x5b, 0xf6, 0x52, + 0x9c, 0x9f, 0xf8, 0xb2, 0x93, 0xb2, 0x4e, 0x67, 0xed, 0x5e, 0x47, 0x92, + 0x34, 0xdb, 0xad, 0x73, 0x77, 0x89, 0xed, 0x3d, 0xfd, 0xed, 0x64, 0x1b, + 0xe6, 0x4c, 0x0f, 0xe7, +}; +static const struct drbg_kat_pr_false kat2561_t = { + 10, kat2561_entropyin, kat2561_nonce, kat2561_persstr, + kat2561_entropyinreseed, kat2561_addinreseed, kat2561_addin0, + kat2561_addin1, kat2561_retbits +}; +static const struct drbg_kat kat2561 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2561_t +}; + +static const unsigned char kat2562_entropyin[] = { + 0x93, 0x77, 0xfe, 0xbe, 0x57, 0x7b, 0xf5, 0x63, 0x01, 0x2f, 0x09, 0x68, + 0xae, 0x6d, 0x85, 0x56, 0xf5, 0x04, 0xb5, 0x6d, 0x29, 0xb0, 0xad, 0x1e, + 0x78, 0x5f, 0x82, 0xeb, 0x6a, 0x78, 0x84, 0x08, 0xd1, 0xc4, 0x69, 0xac, + 0xbe, 0x57, 0xc5, 0xe1, +}; +static const unsigned char kat2562_nonce[] = {0}; +static const unsigned char kat2562_persstr[] = { + 0x98, 0xeb, 0x22, 0x15, 0xfd, 0x93, 0x1f, 0xea, 0x2c, 0xdf, 0x97, 0xa7, + 0xdc, 0xfd, 0x08, 0x5c, 0x01, 0x23, 0xea, 0x75, 0x85, 0xa9, 0x1c, 0x70, + 0x4e, 0x2f, 0x44, 0x04, 0xd8, 0x96, 0x77, 0x4e, 0x7a, 0xcd, 0xe9, 0x55, + 0x8e, 0x26, 0x44, 0x20, +}; +static const unsigned char kat2562_entropyinreseed[] = { + 0x0b, 0xda, 0x0c, 0x7b, 0xb2, 0x3a, 0x45, 0xb1, 0x06, 0x6d, 0x83, 0x81, + 0xee, 0x56, 0xa6, 0x9b, 0xe9, 0x96, 0x75, 0x6c, 0x18, 0x46, 0x98, 0x6c, + 0x4c, 0x25, 0xcc, 0xf0, 0x90, 0x8a, 0xda, 0xcc, 0xfe, 0xf6, 0xe3, 0xa5, + 0x02, 0xc0, 0xb8, 0x67, +}; +static const unsigned char kat2562_addinreseed[] = {0}; +static const unsigned char kat2562_addin0[] = {0}; +static const unsigned char kat2562_addin1[] = {0}; +static const unsigned char kat2562_retbits[] = { + 0xca, 0xe3, 0x9e, 0x0f, 0x3e, 0xca, 0x42, 0x10, 0x19, 0x60, 0xb3, 0x6c, + 0x20, 0x8b, 0xf4, 0x22, 0xc0, 0xf3, 0xb4, 0xe8, 0x35, 0x19, 0xe8, 0x8c, + 0x10, 0x2c, 0x70, 0x5e, 0x28, 0xa6, 0x60, 0xff, 0x8f, 0x86, 0x1b, 0x12, + 0xff, 0xdc, 0x9a, 0xe5, 0x1e, 0xe5, 0x6e, 0xb9, 0x28, 0x7e, 0xa2, 0xa3, + 0x0e, 0x35, 0x15, 0xd7, 0xf2, 0x11, 0x92, 0x18, 0xa7, 0x99, 0x5f, 0x6b, + 0x67, 0x0d, 0x31, 0xf2, +}; +static const struct drbg_kat_pr_false kat2562_t = { + 11, kat2562_entropyin, kat2562_nonce, kat2562_persstr, + kat2562_entropyinreseed, kat2562_addinreseed, kat2562_addin0, + kat2562_addin1, kat2562_retbits +}; +static const struct drbg_kat kat2562 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2562_t +}; + +static const unsigned char kat2563_entropyin[] = { + 0x45, 0x32, 0xbd, 0x9e, 0xd2, 0x8c, 0xf9, 0x91, 0xf0, 0x74, 0x21, 0x37, + 0xd9, 0xe3, 0x6a, 0x61, 0x82, 0x35, 0xe6, 0x12, 0xc6, 0x98, 0xf0, 0x3a, + 0xff, 0x47, 0x78, 0xb9, 0x17, 0xd1, 0x1a, 0x3d, 0x61, 0xc2, 0x98, 0x14, + 0x25, 0x27, 0x9b, 0xb8, +}; +static const unsigned char kat2563_nonce[] = {0}; +static const unsigned char kat2563_persstr[] = { + 0xd6, 0x8a, 0x3d, 0x3a, 0x5b, 0x4b, 0x09, 0xf6, 0xaf, 0xac, 0xcf, 0xc7, + 0xda, 0x34, 0x85, 0x92, 0x9a, 0x60, 0xb7, 0xb2, 0xc1, 0x0b, 0xa0, 0x4d, + 0x7b, 0x82, 0xab, 0xbc, 0x56, 0xa8, 0xfe, 0x88, 0x74, 0xd7, 0x87, 0x4d, + 0xca, 0x35, 0xdb, 0x30, +}; +static const unsigned char kat2563_entropyinreseed[] = { + 0x91, 0xdc, 0x2e, 0x07, 0x9b, 0xc1, 0x26, 0x10, 0x67, 0x04, 0x95, 0x72, + 0x51, 0x99, 0xbe, 0xf1, 0x2f, 0xff, 0x85, 0xa2, 0x68, 0x86, 0x11, 0x0d, + 0x11, 0x92, 0x5b, 0xc9, 0xf1, 0x4e, 0x2c, 0x08, 0x19, 0x18, 0x17, 0x33, + 0x7a, 0x7b, 0xd6, 0x47, +}; +static const unsigned char kat2563_addinreseed[] = {0}; +static const unsigned char kat2563_addin0[] = {0}; +static const unsigned char kat2563_addin1[] = {0}; +static const unsigned char kat2563_retbits[] = { + 0xe7, 0x9f, 0x16, 0xb3, 0x20, 0x13, 0xd7, 0x43, 0x3c, 0xcb, 0x41, 0xdc, + 0xde, 0x09, 0x56, 0xc6, 0xe7, 0xfd, 0x85, 0x25, 0xc7, 0x46, 0x6c, 0x6d, + 0xfe, 0x8c, 0x28, 0xa1, 0x6b, 0xe0, 0x70, 0x00, 0x6c, 0x98, 0xcf, 0x0c, + 0x07, 0xe8, 0x21, 0x1a, 0x5d, 0xaa, 0xdc, 0xf8, 0xba, 0x5c, 0x36, 0xcb, + 0x14, 0x75, 0x3f, 0x34, 0x4f, 0x34, 0x67, 0x56, 0x4d, 0x64, 0xe5, 0x0b, + 0x7f, 0xe6, 0xb7, 0xbb, +}; +static const struct drbg_kat_pr_false kat2563_t = { + 12, kat2563_entropyin, kat2563_nonce, kat2563_persstr, + kat2563_entropyinreseed, kat2563_addinreseed, kat2563_addin0, + kat2563_addin1, kat2563_retbits +}; +static const struct drbg_kat kat2563 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2563_t +}; + +static const unsigned char kat2564_entropyin[] = { + 0x38, 0xf6, 0x89, 0xcb, 0xa9, 0x01, 0x7b, 0xe3, 0x72, 0x6a, 0xcc, 0x5a, + 0xb4, 0xa1, 0x49, 0xa8, 0x56, 0x2b, 0x44, 0xdf, 0xb7, 0x44, 0xeb, 0xd8, + 0x03, 0xc1, 0xf9, 0x97, 0x2a, 0xf7, 0x4e, 0x42, 0x1e, 0x5a, 0x7d, 0x26, + 0x8a, 0x2f, 0x58, 0xfb, +}; +static const unsigned char kat2564_nonce[] = {0}; +static const unsigned char kat2564_persstr[] = { + 0x6b, 0x43, 0x3b, 0x63, 0xaf, 0xe6, 0x29, 0x4f, 0x63, 0x40, 0x26, 0x20, + 0xeb, 0xd8, 0x6d, 0x35, 0x09, 0xba, 0x6c, 0x62, 0xd6, 0xab, 0x9d, 0x84, + 0x4f, 0x59, 0x90, 0x6d, 0x19, 0xd6, 0x24, 0xd9, 0x12, 0xc1, 0x1f, 0x9b, + 0x0a, 0x5c, 0x9f, 0xae, +}; +static const unsigned char kat2564_entropyinreseed[] = { + 0x2c, 0xa0, 0xb3, 0x02, 0xb2, 0xe2, 0x91, 0xb6, 0xa3, 0xfb, 0x6d, 0x78, + 0xd5, 0xb9, 0x58, 0x13, 0xed, 0x25, 0x49, 0x05, 0x25, 0x3a, 0x99, 0xf9, + 0xfd, 0xa2, 0x56, 0x15, 0x7a, 0xbb, 0x68, 0x47, 0x5c, 0xf4, 0x40, 0xd8, + 0x0f, 0xb8, 0xfb, 0x2b, +}; +static const unsigned char kat2564_addinreseed[] = {0}; +static const unsigned char kat2564_addin0[] = {0}; +static const unsigned char kat2564_addin1[] = {0}; +static const unsigned char kat2564_retbits[] = { + 0xac, 0x6f, 0x9e, 0xb6, 0x9b, 0xaa, 0xe9, 0xd3, 0x31, 0xcb, 0x8a, 0x7c, + 0xa7, 0x6f, 0x88, 0x9e, 0xd3, 0x37, 0xd6, 0xf3, 0xdb, 0xb5, 0xe3, 0xb9, + 0xe4, 0xb6, 0x84, 0x62, 0x3d, 0xf6, 0xc7, 0x97, 0xc5, 0xb5, 0xbc, 0x2a, + 0x14, 0x17, 0xa3, 0x75, 0xef, 0xdc, 0xfb, 0x02, 0x26, 0xf5, 0x51, 0xfd, + 0x93, 0x01, 0xf0, 0xaa, 0x54, 0xf0, 0xd4, 0x3c, 0x92, 0x4b, 0xa2, 0xc8, + 0xdc, 0x2f, 0x09, 0x5d, +}; +static const struct drbg_kat_pr_false kat2564_t = { + 13, kat2564_entropyin, kat2564_nonce, kat2564_persstr, + kat2564_entropyinreseed, kat2564_addinreseed, kat2564_addin0, + kat2564_addin1, kat2564_retbits +}; +static const struct drbg_kat kat2564 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2564_t +}; + +static const unsigned char kat2565_entropyin[] = { + 0x8f, 0x00, 0x1f, 0x32, 0x77, 0xb7, 0x15, 0x5d, 0x21, 0xe6, 0xab, 0x80, + 0x38, 0xb5, 0xce, 0xd7, 0x62, 0x73, 0x7e, 0x2d, 0xe8, 0x4d, 0xcf, 0x07, + 0xa8, 0xf4, 0xbb, 0xe0, 0xf0, 0x28, 0x14, 0xe8, 0xa6, 0x08, 0x43, 0xa1, + 0x43, 0xee, 0xef, 0x1d, +}; +static const unsigned char kat2565_nonce[] = {0}; +static const unsigned char kat2565_persstr[] = { + 0xd8, 0x11, 0xd4, 0x76, 0x96, 0x0f, 0x2d, 0x50, 0x32, 0xcc, 0x3f, 0xb7, + 0x00, 0x2b, 0xe1, 0x55, 0xc6, 0x31, 0x4e, 0x03, 0xae, 0x77, 0x88, 0xdc, + 0x88, 0x6d, 0x0e, 0x18, 0xc7, 0x6e, 0xe4, 0xff, 0xf3, 0x00, 0x89, 0x82, + 0xce, 0xa4, 0x3e, 0xa2, +}; +static const unsigned char kat2565_entropyinreseed[] = { + 0x8f, 0xad, 0x4a, 0xec, 0x11, 0x50, 0x7a, 0x39, 0x4b, 0xe8, 0xbf, 0x8c, + 0xf2, 0x4c, 0x4f, 0x24, 0x42, 0xc4, 0x59, 0x48, 0xb5, 0xdd, 0xf2, 0x8e, + 0xbe, 0x33, 0xf9, 0x64, 0x3a, 0xe5, 0xd2, 0x13, 0x37, 0xec, 0x8d, 0xed, + 0xc9, 0xb2, 0x3e, 0x1a, +}; +static const unsigned char kat2565_addinreseed[] = {0}; +static const unsigned char kat2565_addin0[] = {0}; +static const unsigned char kat2565_addin1[] = {0}; +static const unsigned char kat2565_retbits[] = { + 0x6d, 0x35, 0x3a, 0x66, 0xb4, 0xcd, 0x16, 0xff, 0xc5, 0x46, 0x9b, 0x1c, + 0x16, 0x95, 0x1b, 0xa0, 0x0b, 0x07, 0x5d, 0xb4, 0xf1, 0x28, 0x2d, 0xf1, + 0xcb, 0xa7, 0x26, 0x7b, 0x9e, 0x19, 0x1e, 0x21, 0xf6, 0x04, 0xdd, 0xa9, + 0xeb, 0x48, 0x92, 0x1f, 0x92, 0x7f, 0x1d, 0x7b, 0x45, 0x48, 0xd5, 0xbc, + 0xc5, 0x80, 0x82, 0x9c, 0x42, 0x2e, 0xf0, 0xd5, 0xb2, 0x12, 0x7d, 0x5e, + 0xff, 0x4b, 0x02, 0x0c, +}; +static const struct drbg_kat_pr_false kat2565_t = { + 14, kat2565_entropyin, kat2565_nonce, kat2565_persstr, + kat2565_entropyinreseed, kat2565_addinreseed, kat2565_addin0, + kat2565_addin1, kat2565_retbits +}; +static const struct drbg_kat kat2565 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2565_t +}; + +static const unsigned char kat2566_entropyin[] = { + 0xff, 0x9e, 0x27, 0x5e, 0xd0, 0xed, 0x21, 0xe8, 0xd9, 0x08, 0x7a, 0x2a, + 0xe0, 0xab, 0x2b, 0x26, 0xfd, 0x6e, 0x3e, 0x22, 0xc3, 0x66, 0x1d, 0x16, + 0xdd, 0xcb, 0xfd, 0x10, 0x96, 0x09, 0x92, 0x0e, 0xd2, 0x49, 0x31, 0xb8, + 0xe4, 0xc9, 0x13, 0xd9, +}; +static const unsigned char kat2566_nonce[] = {0}; +static const unsigned char kat2566_persstr[] = { + 0xc2, 0xaf, 0x00, 0xb6, 0xfd, 0xea, 0xe0, 0x15, 0x39, 0x19, 0x54, 0x96, + 0x30, 0x75, 0xfb, 0xde, 0xdc, 0x67, 0xf6, 0x74, 0x98, 0xdc, 0xf1, 0xe2, + 0x17, 0x32, 0x5c, 0xd0, 0x2d, 0x6c, 0xd9, 0x42, 0x35, 0x06, 0x7a, 0xaf, + 0xef, 0xbd, 0x65, 0xfd, +}; +static const unsigned char kat2566_entropyinreseed[] = { + 0x58, 0xbb, 0x40, 0xbd, 0xe2, 0xd0, 0xb5, 0x46, 0x48, 0xb0, 0xe6, 0x49, + 0x73, 0xa8, 0x53, 0x1f, 0x64, 0x3e, 0xd1, 0x71, 0xaf, 0x3a, 0xb2, 0x65, + 0xd3, 0x82, 0xfe, 0x52, 0x77, 0xc6, 0xa3, 0x3d, 0x33, 0x90, 0xbe, 0x15, + 0x27, 0x26, 0x36, 0xf6, +}; +static const unsigned char kat2566_addinreseed[] = { + 0x46, 0x1b, 0xdf, 0xba, 0x36, 0x3d, 0x12, 0x75, 0xad, 0xe5, 0x9e, 0x9b, + 0x9b, 0x73, 0xd4, 0x5a, 0x4d, 0x9a, 0xbf, 0xad, 0xcc, 0x73, 0x31, 0x06, + 0xbc, 0x2f, 0xa4, 0x69, 0x74, 0xc4, 0x02, 0x47, 0x65, 0xcd, 0x40, 0xdf, + 0xf1, 0xff, 0x94, 0x91, +}; +static const unsigned char kat2566_addin0[] = { + 0x38, 0x9c, 0x8b, 0x0d, 0x7a, 0x43, 0x45, 0xcb, 0xfa, 0x60, 0x23, 0x63, + 0xbe, 0x3d, 0x3e, 0x31, 0x06, 0xf4, 0xe5, 0xfd, 0x4b, 0xd7, 0xbd, 0x8b, + 0xd9, 0xf9, 0x12, 0x1d, 0x12, 0xe5, 0x3a, 0x09, 0xab, 0x4a, 0x00, 0xc5, + 0x45, 0xfa, 0x18, 0xa4, +}; +static const unsigned char kat2566_addin1[] = { + 0xe0, 0x68, 0x2c, 0xcd, 0xf0, 0xda, 0x0f, 0x4b, 0x9c, 0x03, 0x9e, 0x6e, + 0xd4, 0xff, 0x27, 0x8f, 0xd1, 0xa2, 0x9a, 0xb8, 0x0a, 0x32, 0xb2, 0x07, + 0x2a, 0x02, 0x81, 0xf3, 0xe9, 0xb5, 0x28, 0x29, 0x3a, 0xdf, 0xfd, 0x60, + 0x64, 0x67, 0xd2, 0x14, +}; +static const unsigned char kat2566_retbits[] = { + 0x70, 0x1b, 0x1b, 0x9a, 0x14, 0x04, 0x28, 0x37, 0x96, 0x0d, 0x4f, 0x42, + 0x8a, 0x56, 0x58, 0x61, 0xc8, 0xf7, 0x20, 0xdd, 0xce, 0x6a, 0x53, 0xab, + 0x82, 0x59, 0xe3, 0xdc, 0xba, 0xc4, 0x59, 0x8b, 0xfd, 0xc0, 0xa5, 0xad, + 0x95, 0x50, 0xde, 0x31, 0x0b, 0x10, 0xfa, 0x5c, 0x39, 0xfe, 0xef, 0x74, + 0xe9, 0x57, 0x4e, 0x20, 0x80, 0x47, 0x7b, 0x5b, 0x82, 0xb9, 0xee, 0xf0, + 0xbb, 0xd5, 0xc3, 0x4d, +}; +static const struct drbg_kat_pr_false kat2566_t = { + 0, kat2566_entropyin, kat2566_nonce, kat2566_persstr, + kat2566_entropyinreseed, kat2566_addinreseed, kat2566_addin0, + kat2566_addin1, kat2566_retbits +}; +static const struct drbg_kat kat2566 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2566_t +}; + +static const unsigned char kat2567_entropyin[] = { + 0x0a, 0xe8, 0x3c, 0x3e, 0x1f, 0xc9, 0x74, 0x71, 0x8b, 0x83, 0xa1, 0xa8, + 0x49, 0x37, 0x1f, 0x4f, 0x98, 0x3c, 0xdb, 0xb8, 0x7f, 0xec, 0x82, 0x2a, + 0xde, 0x85, 0x6f, 0xb1, 0x27, 0xba, 0x91, 0xe8, 0xde, 0x71, 0xd1, 0xd9, + 0x57, 0x86, 0x19, 0xf9, +}; +static const unsigned char kat2567_nonce[] = {0}; +static const unsigned char kat2567_persstr[] = { + 0x31, 0x55, 0x5b, 0x81, 0x5b, 0x91, 0xe2, 0x9e, 0xb3, 0x0b, 0x9c, 0x72, + 0x75, 0xdf, 0x4f, 0x14, 0xd2, 0xe3, 0x1c, 0x5e, 0x0a, 0x39, 0x4d, 0x44, + 0x33, 0xb3, 0xa4, 0x48, 0x34, 0xdb, 0x27, 0x35, 0xc6, 0xe1, 0x59, 0x01, + 0xf2, 0xa2, 0x5e, 0x9f, +}; +static const unsigned char kat2567_entropyinreseed[] = { + 0x86, 0x5a, 0xda, 0xc3, 0xce, 0x8e, 0xd5, 0x6b, 0xfe, 0x19, 0x02, 0xc6, + 0xa7, 0x75, 0x2e, 0x3b, 0xf0, 0xb6, 0x37, 0x2b, 0x9c, 0xdb, 0x31, 0xf7, + 0xe2, 0x23, 0x67, 0x7b, 0xf8, 0x78, 0xa1, 0x71, 0xb7, 0x17, 0x1c, 0x66, + 0x6c, 0x28, 0xcb, 0x77, +}; +static const unsigned char kat2567_addinreseed[] = { + 0xb4, 0x4f, 0x2a, 0x10, 0xdd, 0x22, 0x33, 0x5a, 0x48, 0xf8, 0x07, 0x75, + 0xbe, 0x2f, 0x5e, 0x71, 0x0a, 0x92, 0x12, 0x8b, 0x07, 0xd8, 0x44, 0xb0, + 0xf3, 0xc9, 0xf7, 0x80, 0xaf, 0xe4, 0x0d, 0x88, 0x57, 0xce, 0x35, 0xee, + 0xb7, 0x0f, 0x7d, 0x5a, +}; +static const unsigned char kat2567_addin0[] = { + 0x06, 0x44, 0x33, 0xef, 0xd9, 0xe7, 0x9e, 0xb0, 0x6c, 0xa4, 0x98, 0xa9, + 0xff, 0x36, 0x35, 0xb0, 0x1e, 0x27, 0x79, 0x7e, 0x16, 0xcf, 0x55, 0x94, + 0xd5, 0x5b, 0x90, 0xd5, 0x8a, 0x2b, 0x2c, 0x58, 0x1c, 0xd8, 0x4c, 0x2d, + 0x93, 0xc5, 0xf6, 0xa9, +}; +static const unsigned char kat2567_addin1[] = { + 0x66, 0x30, 0x4e, 0xc5, 0x79, 0x76, 0x35, 0x6b, 0x51, 0xb9, 0x27, 0xf9, + 0x29, 0xab, 0xfa, 0xcf, 0x80, 0x1b, 0x52, 0x59, 0xd6, 0xaa, 0xd2, 0xc6, + 0x98, 0xcc, 0x53, 0x18, 0xf0, 0x5f, 0xaf, 0x7d, 0xa5, 0x28, 0xea, 0xde, + 0x5e, 0x36, 0xe8, 0x59, +}; +static const unsigned char kat2567_retbits[] = { + 0x66, 0x42, 0xb9, 0x5b, 0x92, 0xb4, 0xb7, 0x58, 0xac, 0x06, 0x9d, 0x5e, + 0x0a, 0xfc, 0xd2, 0xa2, 0x0a, 0x36, 0x59, 0x63, 0xf1, 0xb7, 0xc4, 0xcd, + 0x54, 0xa2, 0xa3, 0x67, 0xe9, 0x81, 0xa2, 0xeb, 0x32, 0x5b, 0x47, 0x1a, + 0xd8, 0x35, 0x85, 0xe1, 0x2a, 0xa5, 0x16, 0x6d, 0xb1, 0xf7, 0x2e, 0x76, + 0xe0, 0xdb, 0x26, 0xbc, 0x30, 0x58, 0x0e, 0xd3, 0x4a, 0x2d, 0xaa, 0xf6, + 0xb0, 0x84, 0xb7, 0x83, +}; +static const struct drbg_kat_pr_false kat2567_t = { + 1, kat2567_entropyin, kat2567_nonce, kat2567_persstr, + kat2567_entropyinreseed, kat2567_addinreseed, kat2567_addin0, + kat2567_addin1, kat2567_retbits +}; +static const struct drbg_kat kat2567 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2567_t +}; + +static const unsigned char kat2568_entropyin[] = { + 0xb1, 0xa8, 0xbb, 0x8d, 0x2d, 0xcf, 0xdf, 0xd8, 0x1a, 0xc5, 0x4d, 0x71, + 0x44, 0x89, 0x1c, 0x37, 0x73, 0x47, 0xdc, 0xa9, 0x64, 0x1e, 0xff, 0x74, + 0x86, 0x99, 0xf8, 0x06, 0xdc, 0x78, 0xe7, 0x5b, 0xb7, 0xc9, 0xcf, 0xfd, + 0x38, 0xaf, 0xa8, 0xd2, +}; +static const unsigned char kat2568_nonce[] = {0}; +static const unsigned char kat2568_persstr[] = { + 0x82, 0xff, 0xbd, 0x38, 0xfb, 0x7e, 0x75, 0x62, 0x0d, 0x75, 0x31, 0x02, + 0x6b, 0xcf, 0xee, 0xde, 0x58, 0xf2, 0xa7, 0xc7, 0x31, 0x6c, 0xd3, 0xad, + 0xcf, 0xd5, 0x76, 0xe5, 0x3e, 0x26, 0x7a, 0x79, 0xe3, 0x87, 0xed, 0x31, + 0x10, 0x1a, 0xb8, 0x49, +}; +static const unsigned char kat2568_entropyinreseed[] = { + 0xac, 0x91, 0x39, 0x95, 0x0d, 0x56, 0x4e, 0x0c, 0x4e, 0xb3, 0x3e, 0x21, + 0x31, 0x5a, 0x4c, 0xf5, 0xa2, 0x67, 0x53, 0x46, 0x37, 0x11, 0xe9, 0xbd, + 0x41, 0x24, 0x4d, 0xfa, 0x90, 0xb0, 0x9d, 0x6b, 0x57, 0x54, 0x93, 0xa3, + 0x29, 0xc6, 0xa5, 0x4c, +}; +static const unsigned char kat2568_addinreseed[] = { + 0x12, 0x16, 0x7b, 0x09, 0x9d, 0xfa, 0xa3, 0x57, 0xac, 0xf4, 0x9c, 0x76, + 0x09, 0xeb, 0xee, 0xe2, 0xc4, 0xea, 0x25, 0x02, 0x0d, 0xc4, 0x8b, 0x06, + 0xce, 0x99, 0x47, 0x40, 0x77, 0x8e, 0xa8, 0xff, 0xff, 0x1f, 0xc7, 0x30, + 0xae, 0x92, 0x95, 0x20, +}; +static const unsigned char kat2568_addin0[] = { + 0x87, 0xe3, 0x06, 0x50, 0x67, 0x60, 0xf2, 0x57, 0x1e, 0x07, 0xf0, 0x49, + 0x74, 0x75, 0x86, 0xdd, 0x91, 0x3b, 0x36, 0x56, 0x12, 0x1d, 0xf1, 0xf5, + 0xae, 0x2e, 0xe2, 0x88, 0x85, 0xb8, 0xd6, 0x5d, 0xb4, 0xf1, 0x8e, 0x9e, + 0x8a, 0x5b, 0xa8, 0x71, +}; +static const unsigned char kat2568_addin1[] = { + 0xa3, 0xb3, 0x00, 0x69, 0x6d, 0x04, 0x85, 0x3e, 0x83, 0x39, 0xed, 0x0e, + 0xd0, 0x5b, 0xbe, 0x23, 0xd0, 0x44, 0x3b, 0xf9, 0x63, 0x91, 0x5b, 0x62, + 0x23, 0xf2, 0xa5, 0x0b, 0x0e, 0x79, 0xe6, 0xb0, 0x18, 0xa9, 0x4b, 0x9b, + 0x51, 0x25, 0x83, 0x1c, +}; +static const unsigned char kat2568_retbits[] = { + 0x9f, 0x3e, 0x34, 0x9e, 0xc7, 0x94, 0xfa, 0xfa, 0xad, 0xcb, 0x09, 0xe3, + 0x72, 0xfd, 0x39, 0x94, 0x8a, 0x85, 0xaa, 0x7e, 0xb5, 0x81, 0x4f, 0x8c, + 0xf4, 0xcf, 0xa2, 0xdf, 0x59, 0xea, 0x2f, 0x69, 0x8a, 0xa9, 0x9d, 0x8f, + 0xb2, 0xcd, 0x1c, 0xef, 0xc4, 0xb8, 0x9d, 0x4d, 0x61, 0x02, 0xb2, 0x87, + 0x41, 0x3b, 0x6a, 0x69, 0xd8, 0x1e, 0x13, 0xe4, 0x88, 0x78, 0xda, 0x82, + 0x90, 0x82, 0xfe, 0xf2, +}; +static const struct drbg_kat_pr_false kat2568_t = { + 2, kat2568_entropyin, kat2568_nonce, kat2568_persstr, + kat2568_entropyinreseed, kat2568_addinreseed, kat2568_addin0, + kat2568_addin1, kat2568_retbits +}; +static const struct drbg_kat kat2568 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2568_t +}; + +static const unsigned char kat2569_entropyin[] = { + 0x5c, 0x49, 0xaf, 0xdf, 0x8b, 0xf5, 0x96, 0x66, 0x9e, 0x8a, 0xed, 0x62, + 0x1b, 0xea, 0x0f, 0xd3, 0x78, 0x4b, 0x67, 0x0c, 0xa4, 0x2f, 0x85, 0x0d, + 0x41, 0xa2, 0x29, 0xac, 0x9f, 0x77, 0x24, 0x25, 0x51, 0xd6, 0xb0, 0xe0, + 0x67, 0xa1, 0xd4, 0x60, +}; +static const unsigned char kat2569_nonce[] = {0}; +static const unsigned char kat2569_persstr[] = { + 0x48, 0x1b, 0xf6, 0xc7, 0xb6, 0x69, 0x07, 0xba, 0x48, 0x5c, 0x7b, 0xba, + 0x4d, 0x66, 0x8a, 0x0d, 0xea, 0xea, 0x5d, 0xdb, 0xb8, 0x41, 0x6b, 0xc5, + 0xa8, 0x53, 0xd7, 0xa5, 0xdb, 0x41, 0xd4, 0x8a, 0x94, 0xc6, 0x35, 0xb1, + 0xb2, 0xe0, 0x08, 0x4e, +}; +static const unsigned char kat2569_entropyinreseed[] = { + 0x2b, 0x7c, 0xec, 0x04, 0x6f, 0x5e, 0x14, 0xdb, 0xb1, 0x59, 0x89, 0x91, + 0x02, 0xfc, 0x9b, 0x53, 0x86, 0x11, 0x56, 0xa2, 0x52, 0x8a, 0x89, 0x1f, + 0xa2, 0x9b, 0x6e, 0x82, 0x4b, 0x5f, 0x54, 0x03, 0xb2, 0x5c, 0x9f, 0x10, + 0x3a, 0x58, 0x4c, 0x91, +}; +static const unsigned char kat2569_addinreseed[] = { + 0xd3, 0x10, 0x33, 0x5b, 0x06, 0x55, 0xac, 0xf8, 0x5d, 0x3f, 0x0d, 0x75, + 0xb1, 0x00, 0x52, 0x73, 0x9f, 0xac, 0x96, 0x6a, 0xb3, 0xe7, 0xbb, 0xd0, + 0x01, 0x54, 0xcf, 0xa1, 0x45, 0xc4, 0x5d, 0xe0, 0xa7, 0x4e, 0x29, 0x9a, + 0x2d, 0xf7, 0xd8, 0x52, +}; +static const unsigned char kat2569_addin0[] = { + 0x3f, 0x2f, 0x29, 0x25, 0xeb, 0xfc, 0x44, 0x7e, 0x7a, 0x29, 0xf8, 0x42, + 0xb0, 0x9b, 0x02, 0x2e, 0xa6, 0xa7, 0xce, 0x7d, 0x69, 0xa8, 0x23, 0x18, + 0xfa, 0x5a, 0xa1, 0xbc, 0x87, 0xe6, 0x08, 0x7d, 0x15, 0xa0, 0xbc, 0x22, + 0x6f, 0xee, 0x32, 0x8c, +}; +static const unsigned char kat2569_addin1[] = { + 0xc8, 0x4b, 0xe9, 0x10, 0x08, 0xf1, 0x5b, 0x18, 0x30, 0x87, 0x8a, 0xc7, + 0xbe, 0xe7, 0x85, 0xb0, 0x4d, 0x38, 0xc1, 0x21, 0x1b, 0x6e, 0xcd, 0x72, + 0x3a, 0xc1, 0x3b, 0xd2, 0xaf, 0xee, 0x49, 0x67, 0x23, 0xe4, 0x57, 0x8c, + 0x2c, 0xf2, 0x70, 0xd4, +}; +static const unsigned char kat2569_retbits[] = { + 0x6a, 0xc8, 0x8e, 0xe2, 0x8b, 0x60, 0xec, 0xef, 0xc8, 0x87, 0xc9, 0xdc, + 0x49, 0x79, 0x99, 0x3a, 0x21, 0x09, 0xb8, 0xec, 0xcc, 0x37, 0x09, 0xaf, + 0x70, 0xb9, 0x4f, 0xd2, 0x47, 0x2f, 0x7e, 0x4c, 0x17, 0x29, 0xd8, 0xbe, + 0x4a, 0x46, 0xaa, 0x23, 0x60, 0x84, 0x0a, 0xda, 0xbd, 0xce, 0xda, 0x31, + 0x25, 0x19, 0x03, 0xc7, 0x38, 0x9d, 0x89, 0x43, 0x7a, 0xfd, 0x07, 0xdf, + 0x2c, 0xed, 0xb7, 0x09, +}; +static const struct drbg_kat_pr_false kat2569_t = { + 3, kat2569_entropyin, kat2569_nonce, kat2569_persstr, + kat2569_entropyinreseed, kat2569_addinreseed, kat2569_addin0, + kat2569_addin1, kat2569_retbits +}; +static const struct drbg_kat kat2569 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2569_t +}; + +static const unsigned char kat2570_entropyin[] = { + 0xc8, 0xf2, 0xec, 0x6b, 0x16, 0xb4, 0xb2, 0x7c, 0xad, 0x06, 0x7c, 0x22, + 0xa4, 0xbd, 0xc8, 0xd9, 0x7a, 0xae, 0xba, 0xf4, 0x19, 0x91, 0x36, 0xc0, + 0x7e, 0x43, 0x39, 0x26, 0x82, 0x7f, 0x66, 0x84, 0x2b, 0xe0, 0xbe, 0x1b, + 0x4b, 0xbb, 0xf4, 0xb2, +}; +static const unsigned char kat2570_nonce[] = {0}; +static const unsigned char kat2570_persstr[] = { + 0x61, 0x00, 0x39, 0xfb, 0x01, 0x00, 0xc1, 0x70, 0xc6, 0x28, 0x93, 0xeb, + 0x6e, 0xdb, 0x0b, 0xc2, 0xd6, 0xc3, 0xdf, 0xe7, 0x88, 0xd9, 0x98, 0x93, + 0x8e, 0x46, 0x26, 0x41, 0xe0, 0xe2, 0x3c, 0x07, 0x68, 0xc7, 0x4f, 0xc5, + 0xab, 0xe1, 0x3c, 0x16, +}; +static const unsigned char kat2570_entropyinreseed[] = { + 0x3c, 0x39, 0x9a, 0xa0, 0x6c, 0xee, 0x38, 0xb6, 0x5d, 0x83, 0x49, 0xa1, + 0x82, 0x22, 0x7a, 0x57, 0xa0, 0xc2, 0x99, 0xc7, 0x4a, 0x63, 0x5f, 0xe0, + 0xad, 0xda, 0x89, 0x92, 0x90, 0xe5, 0xba, 0x0c, 0xc3, 0x3c, 0x59, 0x69, + 0x6e, 0xc4, 0xc8, 0xe2, +}; +static const unsigned char kat2570_addinreseed[] = { + 0x13, 0xa3, 0x13, 0x31, 0x8a, 0x44, 0xc7, 0x41, 0x11, 0x79, 0x0a, 0xec, + 0x45, 0x40, 0xa3, 0xaa, 0x66, 0xcd, 0xcc, 0xd1, 0xb4, 0x91, 0x23, 0x80, + 0xdd, 0xb1, 0x67, 0x0c, 0x34, 0x24, 0x35, 0x30, 0x1d, 0x7c, 0xea, 0xcc, + 0x24, 0x0a, 0xd9, 0x03, +}; +static const unsigned char kat2570_addin0[] = { + 0x31, 0x87, 0x78, 0x75, 0xf4, 0xb6, 0x71, 0x3c, 0x13, 0x82, 0x39, 0x05, + 0x01, 0x2e, 0xe4, 0x09, 0x90, 0x9c, 0xcc, 0x9d, 0xc5, 0x37, 0x51, 0xb8, + 0x97, 0x1c, 0x09, 0x3d, 0xca, 0x78, 0xc5, 0x23, 0xdb, 0xaa, 0x61, 0x9e, + 0x7a, 0x5d, 0x46, 0xe2, +}; +static const unsigned char kat2570_addin1[] = { + 0x76, 0xb5, 0x1b, 0x2c, 0x5e, 0xe0, 0x3e, 0x8f, 0xba, 0x8e, 0xef, 0x27, + 0x61, 0x73, 0xff, 0xc3, 0x54, 0xb1, 0x84, 0x14, 0x43, 0x45, 0x95, 0x99, + 0x63, 0xfc, 0x2f, 0x0e, 0xbd, 0xa9, 0x24, 0x6a, 0x8a, 0x1a, 0xfb, 0x7a, + 0x45, 0x73, 0xe3, 0xca, +}; +static const unsigned char kat2570_retbits[] = { + 0x4a, 0x8b, 0xa9, 0x45, 0x02, 0x01, 0xfd, 0x42, 0x5b, 0x7a, 0x7b, 0xbc, + 0xee, 0x08, 0x41, 0x93, 0x55, 0x4d, 0x39, 0xaf, 0x87, 0x77, 0x56, 0x92, + 0x13, 0x58, 0x40, 0x10, 0x6a, 0x1d, 0x64, 0xc7, 0xf1, 0x74, 0x3d, 0x40, + 0x97, 0x87, 0x4c, 0x6f, 0x30, 0xd8, 0x01, 0xab, 0x62, 0xa6, 0xb7, 0x2b, + 0x34, 0x15, 0x37, 0x42, 0xe9, 0x0c, 0xa4, 0x52, 0x91, 0x1f, 0x47, 0x9a, + 0x12, 0xc2, 0x38, 0x61, +}; +static const struct drbg_kat_pr_false kat2570_t = { + 4, kat2570_entropyin, kat2570_nonce, kat2570_persstr, + kat2570_entropyinreseed, kat2570_addinreseed, kat2570_addin0, + kat2570_addin1, kat2570_retbits +}; +static const struct drbg_kat kat2570 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2570_t +}; + +static const unsigned char kat2571_entropyin[] = { + 0x60, 0xac, 0x94, 0x6f, 0x4b, 0xe9, 0xdf, 0x8d, 0xdb, 0xce, 0x3c, 0x77, + 0x64, 0x43, 0x5f, 0x6f, 0xaa, 0x99, 0x98, 0x56, 0x02, 0x80, 0xdd, 0x91, + 0xe2, 0x36, 0x66, 0xa9, 0x27, 0x43, 0x5c, 0x9c, 0x8f, 0xad, 0x49, 0x62, + 0x5b, 0xd4, 0x22, 0xd5, +}; +static const unsigned char kat2571_nonce[] = {0}; +static const unsigned char kat2571_persstr[] = { + 0x37, 0xfb, 0x24, 0xe8, 0xfd, 0x6a, 0x8c, 0x3c, 0xa8, 0xc0, 0xd9, 0x4c, + 0x36, 0x58, 0x4f, 0x8b, 0x70, 0x65, 0xb4, 0x01, 0x9a, 0xcf, 0xdc, 0x33, + 0x5f, 0x98, 0xb5, 0x86, 0x65, 0xff, 0x39, 0xcc, 0x92, 0x55, 0xe7, 0xae, + 0x34, 0x2c, 0xe6, 0x28, +}; +static const unsigned char kat2571_entropyinreseed[] = { + 0xfa, 0xe9, 0x37, 0x1c, 0xcc, 0x51, 0x7e, 0x02, 0x4c, 0x66, 0x38, 0xeb, + 0x17, 0x70, 0x19, 0x21, 0x7a, 0x8a, 0xbf, 0x83, 0x3f, 0xc6, 0x1c, 0x29, + 0xb6, 0x91, 0xc0, 0x94, 0x3e, 0x20, 0x27, 0xb3, 0xdb, 0xbd, 0x67, 0x8c, + 0xbb, 0xe1, 0x78, 0xe1, +}; +static const unsigned char kat2571_addinreseed[] = { + 0xd6, 0xd5, 0xe3, 0xf4, 0x3b, 0x2b, 0x6c, 0x86, 0x61, 0xe9, 0xc8, 0xe2, + 0xd9, 0x1a, 0xe8, 0x10, 0x2f, 0x61, 0x83, 0x54, 0x24, 0xe3, 0x47, 0xd4, + 0x9b, 0x14, 0x84, 0xd1, 0x1d, 0x3f, 0x5f, 0x31, 0x55, 0x99, 0x57, 0x8d, + 0x57, 0xca, 0x53, 0x8b, +}; +static const unsigned char kat2571_addin0[] = { + 0x47, 0x4b, 0xef, 0x43, 0xe9, 0xe2, 0xba, 0x2f, 0xda, 0xc4, 0x70, 0xf8, + 0x16, 0xba, 0x49, 0xc8, 0x33, 0x5e, 0x71, 0x20, 0xba, 0x38, 0x9e, 0x22, + 0x33, 0x82, 0xd0, 0x91, 0xa4, 0x7d, 0x2d, 0x87, 0xe1, 0xcb, 0x99, 0x13, + 0xfd, 0xcb, 0x29, 0xad, +}; +static const unsigned char kat2571_addin1[] = { + 0xb8, 0x91, 0xdd, 0xc1, 0x6d, 0x98, 0x89, 0x7b, 0xcb, 0x8d, 0x3d, 0xb9, + 0x31, 0xd7, 0xab, 0xe2, 0x17, 0xdb, 0xb9, 0x14, 0x95, 0x73, 0x64, 0x77, + 0xbe, 0xb6, 0xb9, 0x71, 0xc5, 0xc8, 0xdf, 0x2e, 0x46, 0x80, 0x04, 0x15, + 0xc5, 0x2e, 0x7c, 0x28, +}; +static const unsigned char kat2571_retbits[] = { + 0x1a, 0x40, 0x20, 0xce, 0xa2, 0xde, 0x8a, 0x1d, 0x3b, 0x3f, 0xa9, 0xa2, + 0xf6, 0x81, 0xb9, 0x66, 0xa3, 0xf7, 0xb8, 0x41, 0x9e, 0x0d, 0x9f, 0xc0, + 0x33, 0x46, 0x7e, 0xa1, 0x67, 0x82, 0x81, 0xa4, 0xf4, 0xe3, 0x68, 0xc6, + 0x4b, 0xd1, 0xce, 0xfe, 0xfa, 0xa5, 0x1b, 0x26, 0x0d, 0x11, 0xca, 0x2d, + 0xf9, 0xf8, 0x0d, 0x99, 0x12, 0x44, 0x18, 0x5f, 0x59, 0x20, 0x18, 0x4a, + 0x75, 0x21, 0x5a, 0x68, +}; +static const struct drbg_kat_pr_false kat2571_t = { + 5, kat2571_entropyin, kat2571_nonce, kat2571_persstr, + kat2571_entropyinreseed, kat2571_addinreseed, kat2571_addin0, + kat2571_addin1, kat2571_retbits +}; +static const struct drbg_kat kat2571 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2571_t +}; + +static const unsigned char kat2572_entropyin[] = { + 0xdd, 0xc9, 0x92, 0x97, 0xbe, 0xb0, 0x79, 0x33, 0xc1, 0xad, 0x17, 0xab, + 0x65, 0x74, 0xd3, 0xe2, 0x76, 0xd5, 0xe1, 0x83, 0xe8, 0xa8, 0x65, 0x8f, + 0x95, 0xc6, 0x9d, 0x73, 0x89, 0x45, 0xce, 0x95, 0x42, 0xf8, 0xc8, 0xac, + 0x79, 0xf9, 0xfd, 0xc6, +}; +static const unsigned char kat2572_nonce[] = {0}; +static const unsigned char kat2572_persstr[] = { + 0x1d, 0xbd, 0x1d, 0xfb, 0x7e, 0xfe, 0xa7, 0xa6, 0x23, 0x79, 0xba, 0x1f, + 0xf1, 0x17, 0x1e, 0x51, 0xdb, 0x2e, 0xd4, 0x9d, 0x54, 0xff, 0xbb, 0xf5, + 0x50, 0x88, 0x79, 0x01, 0xd5, 0x04, 0x62, 0xd9, 0x8f, 0xeb, 0x78, 0x6e, + 0x1f, 0x09, 0x69, 0xbb, +}; +static const unsigned char kat2572_entropyinreseed[] = { + 0xd2, 0x61, 0x80, 0x44, 0x8a, 0x8c, 0x34, 0xd0, 0x55, 0x2d, 0x9f, 0x3b, + 0x16, 0xaf, 0xb0, 0x8f, 0xb9, 0xc9, 0x05, 0x9b, 0xd6, 0x2b, 0x6b, 0x87, + 0x4e, 0xc6, 0x2a, 0xda, 0x23, 0x2c, 0x7f, 0x50, 0x02, 0x7d, 0xd3, 0x59, + 0xf9, 0x40, 0x7d, 0xb2, +}; +static const unsigned char kat2572_addinreseed[] = { + 0x16, 0x41, 0x92, 0x5c, 0x63, 0xc2, 0xc6, 0xd6, 0xb0, 0x6f, 0xf2, 0x64, + 0x83, 0xc7, 0xec, 0xa3, 0x40, 0xff, 0xed, 0x1f, 0xb7, 0xf6, 0x54, 0x24, + 0x34, 0x77, 0x5b, 0xaf, 0xa2, 0xc8, 0xed, 0x86, 0x2d, 0xa6, 0x73, 0xd8, + 0xf0, 0xfd, 0x15, 0x7f, +}; +static const unsigned char kat2572_addin0[] = { + 0x35, 0x99, 0x6d, 0xc4, 0x3b, 0xc4, 0x46, 0x96, 0xab, 0xed, 0x94, 0xef, + 0x74, 0xc0, 0x97, 0xf1, 0xb0, 0xe8, 0xd1, 0x4f, 0xfa, 0x84, 0x12, 0xd6, + 0xf7, 0x7d, 0xba, 0x98, 0xfe, 0x9f, 0xab, 0x88, 0x57, 0xae, 0xf8, 0x2f, + 0xb8, 0x23, 0x2b, 0xb1, +}; +static const unsigned char kat2572_addin1[] = { + 0x71, 0x24, 0x85, 0xb7, 0x86, 0xce, 0x3b, 0x47, 0xca, 0x6b, 0xb4, 0x34, + 0x85, 0xa4, 0x83, 0xa1, 0xe8, 0xd7, 0x45, 0xb8, 0xae, 0xbc, 0x13, 0x02, + 0xd1, 0xfe, 0x84, 0xc4, 0xa3, 0x11, 0x5b, 0xc7, 0x0b, 0x76, 0xc2, 0xa1, + 0x78, 0xc8, 0xf6, 0xcc, +}; +static const unsigned char kat2572_retbits[] = { + 0x26, 0xb5, 0xf2, 0x50, 0x09, 0x30, 0x4e, 0x6b, 0xbe, 0x83, 0x67, 0xc5, + 0xbf, 0xb5, 0x87, 0xd4, 0x63, 0xdf, 0x6a, 0x27, 0xe3, 0xde, 0x30, 0xb6, + 0xdd, 0xc1, 0x09, 0x0e, 0x5b, 0x8c, 0xed, 0x13, 0xa0, 0xf0, 0x1d, 0xfe, + 0x4c, 0x81, 0x0d, 0x6e, 0x5e, 0xc2, 0x4d, 0x6e, 0x0b, 0xc8, 0xb4, 0xed, + 0xc2, 0x90, 0xa4, 0xf7, 0xbb, 0xc2, 0x32, 0x78, 0x36, 0xb7, 0x76, 0x8a, + 0x3d, 0xf5, 0xed, 0x3c, +}; +static const struct drbg_kat_pr_false kat2572_t = { + 6, kat2572_entropyin, kat2572_nonce, kat2572_persstr, + kat2572_entropyinreseed, kat2572_addinreseed, kat2572_addin0, + kat2572_addin1, kat2572_retbits +}; +static const struct drbg_kat kat2572 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2572_t +}; + +static const unsigned char kat2573_entropyin[] = { + 0xa9, 0x04, 0x5a, 0xfa, 0x9d, 0xee, 0x70, 0x73, 0xc8, 0x14, 0xd6, 0x0e, + 0x26, 0x9c, 0xb0, 0x19, 0x65, 0x64, 0xb6, 0x26, 0x0c, 0xa3, 0x68, 0x98, + 0x4b, 0xfb, 0xda, 0x40, 0xfc, 0xf6, 0x78, 0x7f, 0xa0, 0x13, 0x82, 0xfd, + 0x1b, 0xcd, 0x5c, 0xb0, +}; +static const unsigned char kat2573_nonce[] = {0}; +static const unsigned char kat2573_persstr[] = { + 0xfe, 0x7b, 0xfd, 0x09, 0x0b, 0xb1, 0xe4, 0x93, 0x26, 0xef, 0xc3, 0x8c, + 0x28, 0x1e, 0x4e, 0x36, 0xe2, 0x06, 0x14, 0x4c, 0x4a, 0x6d, 0xc3, 0x4f, + 0x21, 0x5a, 0x2d, 0x58, 0x52, 0x2b, 0x17, 0x2f, 0x33, 0x7e, 0xb7, 0x74, + 0x5f, 0xa6, 0x3b, 0xec, +}; +static const unsigned char kat2573_entropyinreseed[] = { + 0x6e, 0x79, 0x9f, 0x65, 0xd9, 0x41, 0x2b, 0x40, 0x76, 0x72, 0x29, 0xe8, + 0x3d, 0x53, 0xe8, 0x86, 0x77, 0x59, 0x84, 0xd4, 0xe9, 0xe9, 0x00, 0x58, + 0xa3, 0x1c, 0x88, 0xa0, 0xa2, 0x77, 0x14, 0x26, 0x96, 0x53, 0xb5, 0x75, + 0x03, 0x48, 0x7c, 0x3c, +}; +static const unsigned char kat2573_addinreseed[] = { + 0x8a, 0x2d, 0xc5, 0xfe, 0x64, 0x37, 0xe2, 0x5c, 0x20, 0x72, 0x6f, 0xc4, + 0x3f, 0x88, 0x6c, 0xb0, 0x19, 0x46, 0x32, 0xbe, 0xb4, 0x85, 0x5e, 0xc5, + 0xdb, 0xf3, 0xb3, 0x81, 0x5c, 0x90, 0x0d, 0x1a, 0x38, 0xa3, 0x11, 0xe7, + 0x5b, 0x21, 0x35, 0x99, +}; +static const unsigned char kat2573_addin0[] = { + 0x08, 0x44, 0x55, 0x98, 0x20, 0x31, 0xbd, 0x46, 0x74, 0x80, 0x22, 0x52, + 0x25, 0xc4, 0x50, 0xc2, 0x7a, 0x62, 0x9d, 0x77, 0x1b, 0xbe, 0x07, 0xd9, + 0xa7, 0x8a, 0xf0, 0x6e, 0x4b, 0x40, 0xff, 0x8e, 0xd7, 0x12, 0x9e, 0x2c, + 0x0e, 0xe7, 0xf6, 0x9a, +}; +static const unsigned char kat2573_addin1[] = { + 0x9f, 0x3d, 0xee, 0x85, 0x62, 0x3e, 0x81, 0xce, 0x86, 0x8e, 0x97, 0xc5, + 0x4f, 0x36, 0xd0, 0x5e, 0x3e, 0x76, 0x5a, 0xc9, 0x4a, 0xd1, 0x92, 0xf6, + 0x3d, 0xf9, 0xad, 0x0a, 0xf3, 0x77, 0x7e, 0xfd, 0x1f, 0x3d, 0xfe, 0xe2, + 0xa1, 0x80, 0xa9, 0xa6, +}; +static const unsigned char kat2573_retbits[] = { + 0xaa, 0xde, 0x92, 0xa4, 0xf7, 0x8b, 0xd4, 0xb6, 0x63, 0x22, 0xe3, 0x41, + 0xc6, 0x41, 0xeb, 0x4a, 0x57, 0x5c, 0xf2, 0xe9, 0xf9, 0x6c, 0x46, 0x24, + 0x3c, 0x5d, 0xe5, 0xec, 0xab, 0x0e, 0x04, 0x7c, 0x9c, 0x32, 0x54, 0xa1, + 0x11, 0x5b, 0xac, 0x0c, 0x9e, 0x80, 0xae, 0x6e, 0xe5, 0xdf, 0xf2, 0x4e, + 0x81, 0x6a, 0x0a, 0x78, 0xc5, 0x92, 0x49, 0x0b, 0xe8, 0xc0, 0xb2, 0xb5, + 0xeb, 0xcc, 0x4b, 0x65, +}; +static const struct drbg_kat_pr_false kat2573_t = { + 7, kat2573_entropyin, kat2573_nonce, kat2573_persstr, + kat2573_entropyinreseed, kat2573_addinreseed, kat2573_addin0, + kat2573_addin1, kat2573_retbits +}; +static const struct drbg_kat kat2573 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2573_t +}; + +static const unsigned char kat2574_entropyin[] = { + 0x44, 0x2a, 0x81, 0x56, 0x37, 0x4c, 0x2f, 0x82, 0x77, 0x9c, 0xb3, 0x16, + 0xb0, 0x91, 0xaa, 0xfd, 0x42, 0x95, 0x27, 0x13, 0x65, 0x92, 0x52, 0x48, + 0xc6, 0xbb, 0xe5, 0xae, 0x4d, 0xd7, 0x55, 0x52, 0xe1, 0x04, 0x93, 0xc4, + 0x5b, 0xea, 0xd8, 0xa0, +}; +static const unsigned char kat2574_nonce[] = {0}; +static const unsigned char kat2574_persstr[] = { + 0x84, 0x4a, 0x79, 0xa6, 0xdb, 0xfc, 0x60, 0x8b, 0x89, 0x9b, 0x40, 0xe8, + 0xef, 0x73, 0x3d, 0x3e, 0xee, 0x9b, 0x63, 0x85, 0x60, 0x4d, 0x73, 0x3c, + 0x46, 0x7c, 0xfb, 0x0c, 0x3b, 0x61, 0xc1, 0xf7, 0xad, 0x7b, 0xd5, 0xb1, + 0x78, 0x01, 0xa2, 0x59, +}; +static const unsigned char kat2574_entropyinreseed[] = { + 0xf2, 0x90, 0x47, 0x95, 0x0b, 0x53, 0xca, 0x74, 0x0a, 0x81, 0x20, 0x4c, + 0x89, 0x0a, 0x4a, 0x82, 0x5b, 0x70, 0x9e, 0xd0, 0x5c, 0xe7, 0x9d, 0x09, + 0xd4, 0x3d, 0x5d, 0x2f, 0x11, 0x62, 0x63, 0x05, 0x39, 0xde, 0xc2, 0x3b, + 0xfe, 0xb0, 0x9e, 0x7d, +}; +static const unsigned char kat2574_addinreseed[] = { + 0x02, 0x62, 0x6c, 0xa7, 0x3b, 0x24, 0x3b, 0x5b, 0x20, 0xa3, 0x20, 0xe6, + 0x85, 0x07, 0xd5, 0xcd, 0x91, 0x71, 0x55, 0x6b, 0x3d, 0x33, 0x7e, 0xb4, + 0x08, 0xa2, 0xe6, 0xb4, 0x12, 0x12, 0xb2, 0x70, 0x32, 0x42, 0xea, 0xdd, + 0x9e, 0x27, 0xe7, 0x8c, +}; +static const unsigned char kat2574_addin0[] = { + 0xa8, 0x77, 0x0a, 0xc0, 0xe4, 0x65, 0xb0, 0xe1, 0x56, 0x25, 0x4f, 0x5c, + 0x1a, 0x96, 0x5c, 0x05, 0xfe, 0xf6, 0x76, 0x53, 0x14, 0xd3, 0x96, 0x87, + 0x11, 0xea, 0xee, 0x70, 0x06, 0x73, 0x9f, 0x9f, 0x00, 0x91, 0xf0, 0x16, + 0xca, 0x42, 0x0a, 0x79, +}; +static const unsigned char kat2574_addin1[] = { + 0xd3, 0x03, 0xb3, 0x02, 0xb5, 0x1d, 0xfe, 0xee, 0x5f, 0x55, 0x50, 0x5c, + 0x15, 0x5a, 0xfb, 0x79, 0xcf, 0x8f, 0x0a, 0x36, 0xaa, 0xb3, 0x02, 0x23, + 0x14, 0x92, 0x46, 0x1a, 0xe5, 0x3d, 0x15, 0x98, 0x2a, 0xd4, 0x52, 0xfd, + 0x2e, 0xfd, 0x7d, 0xc7, +}; +static const unsigned char kat2574_retbits[] = { + 0xd6, 0xa1, 0x31, 0xb2, 0xbb, 0x36, 0xf7, 0x01, 0x55, 0xb9, 0xca, 0x85, + 0xab, 0x35, 0x80, 0x1e, 0x4a, 0x00, 0x49, 0x85, 0xfe, 0x80, 0xbb, 0xfb, + 0x5a, 0x20, 0xf7, 0x7a, 0x1f, 0x73, 0x7d, 0xc1, 0x8d, 0xb7, 0x02, 0xf2, + 0x4f, 0x22, 0x87, 0xb3, 0x33, 0x6e, 0xcd, 0x6a, 0x21, 0x64, 0x24, 0xa3, + 0x20, 0xce, 0x46, 0x8d, 0x2d, 0xc3, 0x44, 0xf4, 0x8a, 0x45, 0x76, 0x7e, + 0xa2, 0xab, 0xd1, 0xcd, +}; +static const struct drbg_kat_pr_false kat2574_t = { + 8, kat2574_entropyin, kat2574_nonce, kat2574_persstr, + kat2574_entropyinreseed, kat2574_addinreseed, kat2574_addin0, + kat2574_addin1, kat2574_retbits +}; +static const struct drbg_kat kat2574 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2574_t +}; + +static const unsigned char kat2575_entropyin[] = { + 0xc9, 0x6f, 0x5d, 0x16, 0x6c, 0x80, 0x8c, 0xa6, 0xa1, 0xae, 0x90, 0x14, + 0x77, 0xad, 0x03, 0xde, 0x00, 0x72, 0x23, 0x97, 0xb3, 0x0b, 0x52, 0xaa, + 0xce, 0x06, 0x25, 0x88, 0x26, 0xc9, 0xd6, 0xf8, 0x90, 0x97, 0x83, 0xff, + 0x52, 0xe3, 0x1a, 0xf5, +}; +static const unsigned char kat2575_nonce[] = {0}; +static const unsigned char kat2575_persstr[] = { + 0x47, 0x25, 0xb7, 0x91, 0xd3, 0xf6, 0xd0, 0x3f, 0xcd, 0x07, 0x4b, 0xba, + 0x54, 0xab, 0x7c, 0x92, 0xa7, 0x81, 0x66, 0xe7, 0xcb, 0xbd, 0x73, 0xd0, + 0x27, 0xa3, 0x90, 0xf7, 0x49, 0x0d, 0x2b, 0x37, 0x16, 0x2f, 0x1a, 0x95, + 0x18, 0x2b, 0xe4, 0x31, +}; +static const unsigned char kat2575_entropyinreseed[] = { + 0xee, 0xd3, 0xc4, 0xc7, 0x8f, 0x96, 0xb2, 0xce, 0x75, 0xc0, 0x08, 0xc1, + 0x0c, 0xf1, 0x53, 0x34, 0x6f, 0x11, 0x77, 0xe2, 0xde, 0xd8, 0xd6, 0xca, + 0x85, 0x68, 0x9b, 0x04, 0xe1, 0xa3, 0x05, 0xff, 0x9e, 0xa9, 0xaa, 0xcc, + 0x84, 0xd7, 0xe4, 0x45, +}; +static const unsigned char kat2575_addinreseed[] = { + 0xb8, 0x8b, 0x89, 0x01, 0xe3, 0x98, 0xd5, 0xe1, 0x76, 0x9f, 0x62, 0xd2, + 0x08, 0xe7, 0x7a, 0xe6, 0x99, 0xc7, 0x22, 0xe5, 0x5f, 0x7d, 0x86, 0xa0, + 0x1b, 0xa9, 0x99, 0x6c, 0x6c, 0xe5, 0x5a, 0xf4, 0xc0, 0xac, 0xc2, 0x0d, + 0x10, 0x21, 0x7d, 0x97, +}; +static const unsigned char kat2575_addin0[] = { + 0x1a, 0xa0, 0x71, 0xaf, 0xa4, 0x0d, 0xdd, 0xb3, 0xad, 0x66, 0x55, 0x43, + 0x5a, 0xb0, 0x5a, 0xed, 0x18, 0x58, 0xbd, 0xb8, 0xa2, 0x65, 0xb7, 0xda, + 0x29, 0x98, 0x93, 0xed, 0xf9, 0xc9, 0x1e, 0x87, 0xa2, 0x40, 0x1b, 0xc0, + 0x52, 0x33, 0x87, 0xb5, +}; +static const unsigned char kat2575_addin1[] = { + 0x02, 0xf6, 0xda, 0xf6, 0xb8, 0x48, 0xc3, 0x3e, 0xcf, 0x63, 0xd3, 0x0d, + 0x50, 0xaa, 0x22, 0x83, 0xe9, 0x50, 0xb0, 0xf8, 0x48, 0x6c, 0xd6, 0x04, + 0x3f, 0x62, 0x62, 0x91, 0x00, 0xde, 0x8e, 0x25, 0x3c, 0x69, 0x00, 0x35, + 0x0b, 0xff, 0x1f, 0x3d, +}; +static const unsigned char kat2575_retbits[] = { + 0x88, 0xcc, 0x64, 0x5b, 0x03, 0x80, 0x09, 0xfc, 0xcd, 0xf0, 0xa1, 0x76, + 0xf8, 0x7b, 0x86, 0xc4, 0xd6, 0x7a, 0x95, 0x8b, 0x30, 0x83, 0x30, 0x80, + 0xe5, 0x84, 0x1c, 0x84, 0x4b, 0x08, 0xaf, 0x07, 0xd3, 0xe2, 0xca, 0x10, + 0xfd, 0x2e, 0x2a, 0x29, 0x52, 0x13, 0x04, 0xde, 0x70, 0x25, 0x6c, 0xf9, + 0x59, 0x82, 0x96, 0xac, 0xdd, 0xd3, 0x2c, 0x8f, 0x06, 0x55, 0x2d, 0xae, + 0xc7, 0x48, 0xb4, 0x4f, +}; +static const struct drbg_kat_pr_false kat2575_t = { + 9, kat2575_entropyin, kat2575_nonce, kat2575_persstr, + kat2575_entropyinreseed, kat2575_addinreseed, kat2575_addin0, + kat2575_addin1, kat2575_retbits +}; +static const struct drbg_kat kat2575 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2575_t +}; + +static const unsigned char kat2576_entropyin[] = { + 0xfe, 0x88, 0xca, 0x22, 0xf5, 0x68, 0xe9, 0x59, 0xe3, 0xe9, 0x39, 0xe3, + 0x9c, 0x7c, 0x81, 0x17, 0x60, 0x38, 0x5e, 0x49, 0x99, 0x95, 0xd8, 0x7f, + 0x39, 0x3f, 0x14, 0x81, 0xbd, 0x35, 0x78, 0xa6, 0xf1, 0x67, 0x30, 0xa8, + 0xc3, 0x34, 0xe1, 0xe4, +}; +static const unsigned char kat2576_nonce[] = {0}; +static const unsigned char kat2576_persstr[] = { + 0xe4, 0xa4, 0x7e, 0x7f, 0x8b, 0x55, 0x17, 0xbb, 0xe3, 0xdf, 0xe4, 0xee, + 0xb8, 0xaa, 0x01, 0x83, 0x20, 0xde, 0x95, 0xfe, 0x8d, 0xbd, 0x74, 0x55, + 0x1f, 0x49, 0x8e, 0x4a, 0xe3, 0x35, 0x62, 0xeb, 0xb7, 0x9b, 0xe4, 0x48, + 0xaf, 0xdd, 0x11, 0xf9, +}; +static const unsigned char kat2576_entropyinreseed[] = { + 0xcb, 0xc8, 0xf6, 0x72, 0x51, 0x3e, 0xd1, 0x36, 0x6b, 0xa3, 0xdf, 0x0a, + 0xfd, 0xba, 0x62, 0x6f, 0xe8, 0x4f, 0x4f, 0xaa, 0xc9, 0x4d, 0x13, 0x5f, + 0x0f, 0x71, 0xbd, 0x38, 0x59, 0x0c, 0x2a, 0x16, 0x4a, 0xa3, 0x03, 0x44, + 0xeb, 0xb0, 0xda, 0x68, +}; +static const unsigned char kat2576_addinreseed[] = { + 0x88, 0xcd, 0x4b, 0x98, 0xc5, 0xea, 0xe5, 0x1b, 0x07, 0x84, 0x33, 0x20, + 0x50, 0x61, 0xdf, 0xbe, 0x7e, 0xca, 0x1e, 0x0f, 0x0e, 0x52, 0xb1, 0x67, + 0xd6, 0x98, 0x51, 0x68, 0x25, 0x04, 0x90, 0xa1, 0x50, 0x82, 0xc0, 0xc1, + 0x6b, 0x8f, 0xf2, 0xeb, +}; +static const unsigned char kat2576_addin0[] = { + 0xfb, 0x8f, 0x52, 0xd8, 0x1c, 0xad, 0x18, 0x6e, 0x7b, 0x9e, 0x97, 0x44, + 0x00, 0xfc, 0xeb, 0x4b, 0x1b, 0x78, 0xbf, 0xd8, 0xb5, 0xa6, 0xb0, 0xb1, + 0x1c, 0x83, 0x65, 0xb8, 0xdd, 0x40, 0xa2, 0xb1, 0x35, 0xda, 0x72, 0x08, + 0xd3, 0xa4, 0xa3, 0x83, +}; +static const unsigned char kat2576_addin1[] = { + 0x3d, 0x3f, 0xd6, 0x66, 0x02, 0x0d, 0xc1, 0x27, 0x12, 0x6c, 0x46, 0x2b, + 0xe2, 0xd6, 0x28, 0xf2, 0x77, 0x37, 0x3d, 0x24, 0x0b, 0xcd, 0x46, 0xd4, + 0x8f, 0x16, 0x7d, 0x33, 0x32, 0xb6, 0x32, 0x98, 0x63, 0x08, 0x28, 0xb5, + 0x19, 0x6e, 0x6f, 0x5e, +}; +static const unsigned char kat2576_retbits[] = { + 0x31, 0x62, 0xda, 0x5c, 0x34, 0x5c, 0xa3, 0xf8, 0x6d, 0xeb, 0x34, 0x5f, + 0x62, 0x7c, 0xb2, 0xc8, 0xd8, 0xaa, 0x03, 0x47, 0x5b, 0x5a, 0xe2, 0x7e, + 0x11, 0x4c, 0x56, 0x7e, 0x7a, 0x1a, 0xb9, 0x26, 0x7c, 0xc7, 0x1e, 0x1f, + 0xa8, 0x26, 0xcc, 0x4d, 0xf8, 0xb7, 0x98, 0x4d, 0x72, 0x13, 0xeb, 0x21, + 0x8f, 0xd5, 0xab, 0x73, 0xfe, 0x6c, 0x2c, 0x75, 0x26, 0xe2, 0x04, 0x1f, + 0xbf, 0x45, 0x6f, 0x96, +}; +static const struct drbg_kat_pr_false kat2576_t = { + 10, kat2576_entropyin, kat2576_nonce, kat2576_persstr, + kat2576_entropyinreseed, kat2576_addinreseed, kat2576_addin0, + kat2576_addin1, kat2576_retbits +}; +static const struct drbg_kat kat2576 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2576_t +}; + +static const unsigned char kat2577_entropyin[] = { + 0x39, 0x66, 0x5a, 0xc9, 0xd8, 0x96, 0x61, 0x1e, 0x0e, 0x4c, 0xfe, 0x2d, + 0x5f, 0x0d, 0xb8, 0x2a, 0x5c, 0x16, 0x0d, 0x1b, 0xf4, 0x66, 0xa6, 0xaa, + 0x21, 0x1b, 0x87, 0x69, 0x08, 0xee, 0x09, 0x37, 0x14, 0x56, 0xb8, 0x49, + 0x80, 0x84, 0xef, 0xc1, +}; +static const unsigned char kat2577_nonce[] = {0}; +static const unsigned char kat2577_persstr[] = { + 0x7b, 0x08, 0x36, 0xc9, 0xa0, 0x5b, 0xd3, 0x4e, 0x2f, 0x92, 0x5c, 0x48, + 0x8f, 0xb4, 0x9d, 0xa7, 0xa4, 0x48, 0x99, 0x63, 0x64, 0x20, 0x1f, 0x07, + 0xef, 0xa9, 0x04, 0xfd, 0xd4, 0xf9, 0x13, 0xde, 0x97, 0x1f, 0x04, 0xa2, + 0x58, 0x79, 0x7f, 0xd0, +}; +static const unsigned char kat2577_entropyinreseed[] = { + 0xfe, 0xdd, 0xd0, 0x72, 0x64, 0xc3, 0xbc, 0x84, 0x0e, 0x3f, 0x97, 0x4e, + 0x37, 0xb5, 0xfd, 0x4c, 0xc5, 0x70, 0x5a, 0x9a, 0x6c, 0xdd, 0x40, 0x6e, + 0x92, 0x01, 0x1b, 0xfe, 0xc6, 0x11, 0x0f, 0xed, 0x47, 0x64, 0x46, 0xe8, + 0x9e, 0x28, 0xac, 0xa2, +}; +static const unsigned char kat2577_addinreseed[] = { + 0x6e, 0x53, 0x31, 0x0d, 0xf1, 0xf2, 0xc7, 0x98, 0x11, 0x6b, 0x1e, 0xca, + 0x82, 0xe4, 0xa1, 0xb5, 0x25, 0xf5, 0x99, 0x6b, 0xf6, 0x9b, 0x71, 0x69, + 0x3d, 0xf2, 0x3b, 0x59, 0x83, 0xcb, 0xb2, 0x23, 0x0f, 0x4b, 0x03, 0xbd, + 0x98, 0xb6, 0xe7, 0x19, +}; +static const unsigned char kat2577_addin0[] = { + 0xee, 0xa9, 0x98, 0x7d, 0xa8, 0xe7, 0x62, 0x75, 0xed, 0x48, 0x87, 0xf1, + 0x47, 0xb8, 0xfa, 0x15, 0xcb, 0x59, 0xcb, 0x26, 0xc6, 0x0a, 0x39, 0x79, + 0xb0, 0xb3, 0x35, 0xfc, 0xdb, 0xd3, 0x5a, 0x0c, 0x8e, 0x1d, 0x83, 0x74, + 0x2c, 0xc3, 0xf0, 0xbf, +}; +static const unsigned char kat2577_addin1[] = { + 0x1f, 0xe4, 0xbd, 0x9c, 0x1b, 0xbc, 0x03, 0x1e, 0xde, 0xd4, 0x8a, 0x0d, + 0x43, 0xa4, 0x14, 0x10, 0xa1, 0xb4, 0x04, 0x2b, 0x59, 0xd2, 0x12, 0x67, + 0x11, 0x24, 0xd1, 0x8d, 0xf5, 0xd8, 0xb1, 0x2b, 0xd8, 0x55, 0xa1, 0x68, + 0x0e, 0x6a, 0x49, 0xd5, +}; +static const unsigned char kat2577_retbits[] = { + 0xfe, 0x63, 0x9a, 0xeb, 0x66, 0x70, 0x32, 0x09, 0x27, 0x9c, 0x40, 0x5d, + 0x99, 0x16, 0x9e, 0x57, 0x0d, 0x96, 0xe5, 0x7d, 0xfe, 0x94, 0x0d, 0x12, + 0x6c, 0xfc, 0x42, 0xe7, 0x3c, 0x3b, 0x1c, 0x65, 0xb7, 0x80, 0x3b, 0x7f, + 0x66, 0xbc, 0x74, 0x35, 0xf3, 0xa5, 0xcc, 0xc7, 0x0c, 0x94, 0x67, 0xc4, + 0x35, 0x2c, 0x89, 0x56, 0x86, 0x5a, 0x3e, 0x5a, 0xee, 0x36, 0x14, 0x61, + 0x83, 0xc9, 0x59, 0x2b, +}; +static const struct drbg_kat_pr_false kat2577_t = { + 11, kat2577_entropyin, kat2577_nonce, kat2577_persstr, + kat2577_entropyinreseed, kat2577_addinreseed, kat2577_addin0, + kat2577_addin1, kat2577_retbits +}; +static const struct drbg_kat kat2577 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2577_t +}; + +static const unsigned char kat2578_entropyin[] = { + 0x37, 0x49, 0x86, 0xac, 0xbb, 0xfa, 0xf7, 0x62, 0xad, 0xbd, 0xd8, 0x2c, + 0x84, 0x20, 0x30, 0xa3, 0x1d, 0xc7, 0xe6, 0x55, 0x54, 0xd8, 0xcd, 0xf3, + 0xa5, 0x31, 0x97, 0x95, 0x21, 0x8c, 0xbc, 0x1b, 0xf2, 0x95, 0xc2, 0x59, + 0xb8, 0x8e, 0xcd, 0x16, +}; +static const unsigned char kat2578_nonce[] = {0}; +static const unsigned char kat2578_persstr[] = { + 0x9a, 0xc0, 0xbc, 0x5c, 0x87, 0xe1, 0x1e, 0x44, 0x02, 0xb7, 0xb2, 0xdc, + 0x59, 0xe5, 0x26, 0x31, 0x4f, 0x27, 0xb4, 0x1e, 0xa0, 0x28, 0x98, 0x38, + 0xe7, 0x50, 0x37, 0x2a, 0x0f, 0x38, 0xc3, 0x40, 0x6a, 0xb3, 0xc5, 0x7a, + 0xb8, 0xa8, 0xed, 0x58, +}; +static const unsigned char kat2578_entropyinreseed[] = { + 0xf9, 0xd9, 0x38, 0x2b, 0xa0, 0x19, 0xff, 0xd3, 0xe3, 0xa9, 0xd8, 0x63, + 0x00, 0x9c, 0xec, 0x19, 0x41, 0xfd, 0x7a, 0x26, 0x6f, 0x24, 0xd3, 0xa5, + 0x7e, 0x19, 0x03, 0x76, 0x68, 0x5a, 0x93, 0x9c, 0x04, 0x8c, 0xdb, 0x7d, + 0x7e, 0xd1, 0x95, 0x6b, +}; +static const unsigned char kat2578_addinreseed[] = { + 0xff, 0x60, 0xd2, 0xa4, 0x9e, 0x1c, 0xa1, 0x78, 0xb4, 0x42, 0xa4, 0x26, + 0x7d, 0x03, 0xf2, 0x58, 0x3f, 0xa0, 0x83, 0x45, 0xb5, 0xf2, 0xee, 0x51, + 0x53, 0x95, 0x99, 0xac, 0x94, 0x5e, 0x13, 0x3b, 0xaf, 0xf2, 0x56, 0x93, + 0xa6, 0x09, 0xd8, 0x24, +}; +static const unsigned char kat2578_addin0[] = { + 0xd5, 0xe5, 0x05, 0xaa, 0xdb, 0xde, 0x83, 0xfe, 0x2d, 0xff, 0x00, 0x9c, + 0xb1, 0xf5, 0xa3, 0xeb, 0x60, 0x6e, 0x4f, 0xe1, 0x4c, 0x6d, 0x34, 0xc5, + 0x93, 0x55, 0xfe, 0xc1, 0x57, 0x9b, 0x3e, 0xf2, 0xfb, 0xa8, 0x67, 0x46, + 0x9a, 0x92, 0xaf, 0xb9, +}; +static const unsigned char kat2578_addin1[] = { + 0x16, 0x21, 0x6b, 0xae, 0xc7, 0x93, 0xac, 0x9b, 0x8b, 0xbc, 0x69, 0x28, + 0xd6, 0xf8, 0x04, 0xcf, 0xac, 0x63, 0x11, 0x36, 0xc3, 0xb1, 0x2e, 0xee, + 0xc6, 0x4e, 0xe4, 0x78, 0x4f, 0xfc, 0xee, 0x57, 0x64, 0xef, 0x66, 0x37, + 0x8e, 0x7d, 0xd1, 0x7e, +}; +static const unsigned char kat2578_retbits[] = { + 0xf9, 0xa7, 0x5e, 0x5a, 0xf1, 0x26, 0xf6, 0x10, 0x96, 0xb3, 0x69, 0x1d, + 0xd1, 0x4b, 0x05, 0x38, 0x51, 0x21, 0x5b, 0x2b, 0xa3, 0x3d, 0x59, 0xbf, + 0x4c, 0x6f, 0x2f, 0xbd, 0xcd, 0x3e, 0xea, 0x28, 0x1e, 0x74, 0x87, 0x06, + 0x39, 0x8c, 0xf7, 0xed, 0xf0, 0x93, 0x8e, 0xd8, 0x92, 0x4d, 0x8f, 0x93, + 0x5c, 0xd7, 0x0c, 0x13, 0x2a, 0xcc, 0x6c, 0x66, 0x6e, 0xde, 0x6b, 0xd6, + 0xd4, 0xd7, 0x11, 0xe7, +}; +static const struct drbg_kat_pr_false kat2578_t = { + 12, kat2578_entropyin, kat2578_nonce, kat2578_persstr, + kat2578_entropyinreseed, kat2578_addinreseed, kat2578_addin0, + kat2578_addin1, kat2578_retbits +}; +static const struct drbg_kat kat2578 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2578_t +}; + +static const unsigned char kat2579_entropyin[] = { + 0x3d, 0x5a, 0x03, 0xf6, 0xd1, 0x25, 0x04, 0xb0, 0x9e, 0x9e, 0x47, 0x48, + 0x22, 0xe5, 0x4a, 0x60, 0x8c, 0xc6, 0x25, 0x58, 0x9d, 0x9f, 0xf2, 0xfc, + 0xee, 0x96, 0xf3, 0xb6, 0x19, 0x14, 0xaf, 0x68, 0xd8, 0x2e, 0x36, 0x7f, + 0x15, 0x1b, 0x13, 0xb1, +}; +static const unsigned char kat2579_nonce[] = {0}; +static const unsigned char kat2579_persstr[] = { + 0x20, 0x5f, 0x01, 0x55, 0xcd, 0x5c, 0x00, 0x31, 0x0b, 0xa1, 0x0f, 0x93, + 0x07, 0xf4, 0xac, 0x9f, 0x95, 0x6d, 0x07, 0x31, 0x2f, 0x04, 0x7b, 0xf1, + 0xde, 0x46, 0x40, 0xc8, 0x0b, 0xf7, 0x85, 0xc6, 0x2f, 0x60, 0x1d, 0xae, + 0x65, 0x2c, 0x44, 0xc1, +}; +static const unsigned char kat2579_entropyinreseed[] = { + 0x80, 0xdc, 0x2a, 0xad, 0x56, 0x7a, 0x43, 0x45, 0x00, 0xa2, 0x9c, 0xff, + 0x1c, 0x5e, 0xf3, 0xea, 0x01, 0xd2, 0x6d, 0x54, 0x1d, 0xe2, 0xee, 0xa1, + 0x6b, 0x65, 0xc3, 0x3e, 0x94, 0xf4, 0x03, 0x83, 0x61, 0x83, 0x28, 0x77, + 0x1e, 0x27, 0x44, 0x42, +}; +static const unsigned char kat2579_addinreseed[] = { + 0x79, 0x7d, 0x7e, 0xf2, 0x6e, 0x18, 0xb7, 0x8d, 0x0f, 0xf2, 0x14, 0x04, + 0xa2, 0xe8, 0x85, 0x88, 0x82, 0xe2, 0x0c, 0x97, 0x7b, 0xbe, 0x04, 0x62, + 0x97, 0x51, 0x82, 0x73, 0x66, 0x13, 0x84, 0xe4, 0xda, 0x22, 0xe0, 0x6e, + 0x6f, 0x91, 0xfa, 0x2d, +}; +static const unsigned char kat2579_addin0[] = { + 0xb6, 0x7c, 0xac, 0xea, 0x64, 0xcb, 0xb3, 0x5c, 0xe4, 0xcc, 0xe0, 0x9b, + 0xfe, 0xe1, 0x95, 0xf5, 0x16, 0x90, 0x73, 0x5a, 0x18, 0x81, 0xd9, 0x69, + 0xd0, 0x4a, 0xd8, 0xa3, 0xe7, 0x99, 0x5f, 0x9c, 0x80, 0x08, 0xa7, 0x63, + 0x03, 0xc6, 0x28, 0x48, +}; +static const unsigned char kat2579_addin1[] = { + 0x4d, 0x8b, 0x9c, 0xad, 0x9c, 0x93, 0x32, 0x53, 0x31, 0x6d, 0x46, 0xe1, + 0xd2, 0xb9, 0x97, 0xcf, 0xd7, 0xd5, 0x48, 0x09, 0x19, 0xb5, 0xbe, 0x40, + 0xba, 0x0d, 0xa2, 0xbf, 0xe1, 0xc7, 0xec, 0x1e, 0xf2, 0x29, 0xb2, 0x13, + 0xb5, 0xa2, 0x03, 0x9a, +}; +static const unsigned char kat2579_retbits[] = { + 0xfe, 0x7e, 0x78, 0x75, 0x09, 0x9f, 0xac, 0x19, 0xd4, 0xcf, 0xd0, 0x5f, + 0x2f, 0x79, 0x19, 0x5f, 0x95, 0x29, 0xdf, 0x6c, 0xd1, 0x7d, 0xe0, 0xdd, + 0xa6, 0xf7, 0xd2, 0x19, 0xcd, 0x4c, 0x8d, 0x11, 0xa2, 0x7a, 0x6a, 0xfe, + 0x25, 0x2c, 0x50, 0x8a, 0xa9, 0x05, 0xa3, 0x94, 0x58, 0x58, 0xb1, 0x12, + 0x2b, 0xec, 0x2a, 0x4b, 0xc3, 0x30, 0xcf, 0x97, 0x51, 0x4b, 0x97, 0x92, + 0x36, 0x9e, 0xda, 0x0d, +}; +static const struct drbg_kat_pr_false kat2579_t = { + 13, kat2579_entropyin, kat2579_nonce, kat2579_persstr, + kat2579_entropyinreseed, kat2579_addinreseed, kat2579_addin0, + kat2579_addin1, kat2579_retbits +}; +static const struct drbg_kat kat2579 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2579_t +}; + +static const unsigned char kat2580_entropyin[] = { + 0x04, 0xaf, 0x41, 0x0c, 0xe3, 0x90, 0xf2, 0x9b, 0x89, 0xaf, 0x36, 0xbf, + 0x87, 0xbe, 0x36, 0x5c, 0xff, 0x56, 0x9f, 0x24, 0x06, 0x7f, 0x24, 0x2d, + 0x15, 0xa8, 0x16, 0x78, 0x37, 0x8d, 0x43, 0x16, 0x08, 0x1c, 0x34, 0xe0, + 0x92, 0x00, 0xca, 0x52, +}; +static const unsigned char kat2580_nonce[] = {0}; +static const unsigned char kat2580_persstr[] = { + 0xcd, 0x05, 0x96, 0xaa, 0x89, 0x6d, 0x5e, 0xb9, 0x9b, 0x3f, 0x57, 0xdf, + 0x89, 0xd7, 0xcd, 0xa6, 0x50, 0xc6, 0xe6, 0xeb, 0xc1, 0x39, 0x1e, 0x16, + 0x86, 0x74, 0x44, 0x98, 0xad, 0xee, 0x30, 0xaa, 0xbb, 0xfc, 0xad, 0x86, + 0x18, 0x8e, 0x72, 0x5f, +}; +static const unsigned char kat2580_entropyinreseed[] = { + 0x72, 0x6b, 0xce, 0x25, 0x18, 0x38, 0x7a, 0xa2, 0x52, 0x1e, 0x1e, 0x89, + 0x61, 0x23, 0x4b, 0xd4, 0x8b, 0xc5, 0xaf, 0xf9, 0x70, 0xe4, 0xdb, 0x3d, + 0xe5, 0x1c, 0x67, 0x05, 0xaf, 0x42, 0x8e, 0x82, 0x03, 0x51, 0xf0, 0x84, + 0xce, 0x64, 0x54, 0xbf, +}; +static const unsigned char kat2580_addinreseed[] = { + 0x4f, 0x42, 0x0a, 0x15, 0x95, 0xc8, 0x89, 0x87, 0xaf, 0xee, 0x6f, 0x70, + 0x51, 0xec, 0xea, 0xd3, 0xf2, 0xe1, 0x74, 0x14, 0xbe, 0x73, 0xa9, 0xda, + 0x10, 0x7d, 0xfc, 0x0b, 0xe8, 0x18, 0x2d, 0x41, 0xa3, 0x1d, 0x7a, 0x17, + 0x5c, 0x45, 0x74, 0xf3, +}; +static const unsigned char kat2580_addin0[] = { + 0xeb, 0x4f, 0xa0, 0xae, 0x2b, 0xd5, 0xff, 0x9a, 0xb1, 0x95, 0x45, 0xd3, + 0x03, 0x50, 0xfa, 0xb0, 0x97, 0x19, 0xdb, 0x12, 0xf4, 0x28, 0xcc, 0xc3, + 0xfe, 0xa3, 0x6d, 0xa4, 0xa0, 0x2e, 0x8b, 0xec, 0x1f, 0x9d, 0x94, 0x0e, + 0x2e, 0x62, 0xd4, 0xc3, +}; +static const unsigned char kat2580_addin1[] = { + 0xf1, 0xd0, 0x85, 0x3f, 0xc6, 0xfe, 0xcc, 0xa6, 0x73, 0x00, 0x79, 0xb5, + 0xe6, 0x48, 0x40, 0xbd, 0xcb, 0xc2, 0xcc, 0xf4, 0xa9, 0xe2, 0x0a, 0xa0, + 0x8e, 0x8e, 0xe2, 0xe4, 0x8c, 0x78, 0x58, 0x38, 0xb1, 0x54, 0xc6, 0x68, + 0x45, 0xe2, 0x42, 0x3b, +}; +static const unsigned char kat2580_retbits[] = { + 0xa2, 0x99, 0x49, 0xeb, 0x92, 0x71, 0x6b, 0x06, 0x82, 0xcd, 0x27, 0xf6, + 0x2c, 0xa0, 0x0c, 0xfb, 0xad, 0x71, 0x7f, 0xc9, 0x76, 0xc5, 0x5d, 0xdd, + 0xd8, 0x54, 0xde, 0xd4, 0x4a, 0x53, 0xea, 0x2c, 0xd0, 0xdc, 0x0a, 0x97, + 0xdb, 0x8b, 0x60, 0x11, 0xd5, 0x83, 0xf8, 0xfc, 0xb5, 0x22, 0xb7, 0xf8, + 0xc3, 0xd2, 0xfd, 0xd6, 0x8e, 0xbd, 0xc0, 0x83, 0xe2, 0x3d, 0x5f, 0x57, + 0x37, 0xdf, 0xb5, 0x72, +}; +static const struct drbg_kat_pr_false kat2580_t = { + 14, kat2580_entropyin, kat2580_nonce, kat2580_persstr, + kat2580_entropyinreseed, kat2580_addinreseed, kat2580_addin0, + kat2580_addin1, kat2580_retbits +}; +static const struct drbg_kat kat2580 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2580_t +}; + +static const unsigned char kat2581_entropyin[] = { + 0x41, 0x43, 0xf1, 0x49, 0x49, 0xa4, 0xc1, 0x02, 0xed, 0x08, 0xe4, 0xe2, + 0x43, 0x88, 0xd0, 0xef, 0x7f, 0x66, 0xba, 0xac, 0x16, 0x1a, 0x6e, 0x6a, + 0xf1, 0xa3, 0x58, 0xd4, 0x78, 0x74, 0x5b, 0x6e, 0xe7, 0x96, 0x34, 0xb8, + 0xfb, 0x7a, 0x94, 0xe4, +}; +static const unsigned char kat2581_nonce[] = {0}; +static const unsigned char kat2581_persstr[] = {0}; +static const unsigned char kat2581_entropyinreseed[] = { + 0x43, 0x81, 0x0b, 0xb8, 0xf9, 0x4e, 0x76, 0xcf, 0xe7, 0xf6, 0xf9, 0x83, + 0xbd, 0x83, 0xe3, 0xe2, 0x16, 0xb6, 0x30, 0x43, 0x17, 0x57, 0xe2, 0xbf, + 0x64, 0xa7, 0x83, 0x31, 0x80, 0x2f, 0x62, 0x76, 0xdd, 0x8d, 0x8f, 0x3d, + 0x76, 0x88, 0xc3, 0x0d, +}; +static const unsigned char kat2581_addinreseed[] = {0}; +static const unsigned char kat2581_addin0[] = {0}; +static const unsigned char kat2581_addin1[] = {0}; +static const unsigned char kat2581_retbits[] = { + 0xa5, 0xe6, 0xfd, 0xc2, 0xb9, 0xee, 0xcf, 0x4d, 0xd7, 0x8a, 0x31, 0xf2, + 0x64, 0x85, 0xbb, 0xd5, 0xb1, 0x7b, 0xad, 0x6c, 0xd3, 0x15, 0xfd, 0x44, + 0x89, 0x70, 0xf3, 0x74, 0xb4, 0xf1, 0xc3, 0xa6, 0x05, 0x4f, 0xee, 0x54, + 0x50, 0x73, 0x5f, 0xba, 0x04, 0x97, 0x45, 0xa7, 0xa6, 0x67, 0x52, 0x73, + 0x58, 0x02, 0xb1, 0x95, 0x69, 0xde, 0x2a, 0x01, 0x7c, 0x54, 0x75, 0xa2, + 0x5a, 0xe9, 0x9d, 0x2b, +}; +static const struct drbg_kat_pr_false kat2581_t = { + 0, kat2581_entropyin, kat2581_nonce, kat2581_persstr, + kat2581_entropyinreseed, kat2581_addinreseed, kat2581_addin0, + kat2581_addin1, kat2581_retbits +}; +static const struct drbg_kat kat2581 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2581_t +}; + +static const unsigned char kat2582_entropyin[] = { + 0xa1, 0xe8, 0x12, 0x7d, 0x48, 0x5c, 0x22, 0xc2, 0x69, 0x1b, 0x34, 0x2a, + 0x42, 0x9d, 0x05, 0xdb, 0xed, 0x20, 0x0f, 0x41, 0x11, 0xde, 0xc8, 0xc1, + 0x90, 0x6e, 0xd3, 0x3f, 0xd0, 0x57, 0xea, 0xb3, 0x6c, 0xff, 0xb0, 0x95, + 0xf7, 0xe7, 0x64, 0xfb, +}; +static const unsigned char kat2582_nonce[] = {0}; +static const unsigned char kat2582_persstr[] = {0}; +static const unsigned char kat2582_entropyinreseed[] = { + 0x12, 0xa7, 0xe9, 0x46, 0x4f, 0x47, 0x58, 0xb7, 0x89, 0xcb, 0x32, 0xf2, + 0xb0, 0x25, 0xba, 0x12, 0x06, 0x79, 0x43, 0x24, 0x63, 0x6b, 0x2e, 0xa1, + 0xda, 0x3e, 0x12, 0x0f, 0x97, 0xc2, 0x16, 0xee, 0x14, 0xbf, 0x33, 0x2f, + 0x79, 0xd3, 0x39, 0x5c, +}; +static const unsigned char kat2582_addinreseed[] = {0}; +static const unsigned char kat2582_addin0[] = {0}; +static const unsigned char kat2582_addin1[] = {0}; +static const unsigned char kat2582_retbits[] = { + 0x09, 0xa3, 0x7b, 0x3d, 0x31, 0x46, 0xe0, 0xd4, 0x1b, 0x93, 0xbf, 0x0d, + 0xec, 0xf4, 0x51, 0x21, 0xaf, 0xd3, 0x0d, 0x30, 0x7b, 0x8a, 0xfb, 0x4b, + 0x1a, 0x6e, 0x4a, 0xf9, 0x18, 0x36, 0x9c, 0x80, 0xd3, 0x04, 0x9f, 0x75, + 0x70, 0x83, 0xfb, 0xac, 0xb3, 0xb6, 0xbf, 0xf8, 0x5e, 0x01, 0xe3, 0x93, + 0x62, 0xfe, 0xca, 0xb5, 0x42, 0x7d, 0x33, 0x00, 0x5b, 0xd8, 0x3e, 0xac, + 0x1a, 0xba, 0x6d, 0xba, +}; +static const struct drbg_kat_pr_false kat2582_t = { + 1, kat2582_entropyin, kat2582_nonce, kat2582_persstr, + kat2582_entropyinreseed, kat2582_addinreseed, kat2582_addin0, + kat2582_addin1, kat2582_retbits +}; +static const struct drbg_kat kat2582 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2582_t +}; + +static const unsigned char kat2583_entropyin[] = { + 0xe9, 0xbb, 0x16, 0x37, 0x2a, 0xb0, 0x2b, 0x3d, 0x0c, 0x12, 0x44, 0xa5, + 0xf3, 0xa6, 0xfa, 0x6e, 0x76, 0x0c, 0x9a, 0xd5, 0x99, 0xcb, 0xcd, 0x17, + 0x01, 0x1d, 0xdf, 0xc6, 0xcb, 0x85, 0x1f, 0x01, 0x85, 0x43, 0xa4, 0xe8, + 0x2c, 0x3c, 0xd1, 0xc6, +}; +static const unsigned char kat2583_nonce[] = {0}; +static const unsigned char kat2583_persstr[] = {0}; +static const unsigned char kat2583_entropyinreseed[] = { + 0x24, 0x31, 0x20, 0x89, 0x77, 0x4e, 0x11, 0x8f, 0xfb, 0x3e, 0xca, 0x0d, + 0x28, 0x18, 0x14, 0x1f, 0x17, 0x18, 0xc1, 0x02, 0xc9, 0x98, 0xb7, 0x59, + 0x4a, 0xa5, 0x57, 0x8a, 0xf9, 0x6b, 0xc5, 0x89, 0x95, 0x20, 0xab, 0x36, + 0x46, 0x67, 0xa9, 0xef, +}; +static const unsigned char kat2583_addinreseed[] = {0}; +static const unsigned char kat2583_addin0[] = {0}; +static const unsigned char kat2583_addin1[] = {0}; +static const unsigned char kat2583_retbits[] = { + 0x71, 0xe3, 0x05, 0xd9, 0x1a, 0x09, 0x74, 0xf3, 0xf4, 0xf9, 0x2f, 0x3a, + 0x49, 0x8e, 0xc1, 0xf3, 0xa5, 0x80, 0x24, 0xc9, 0x99, 0x7f, 0x73, 0x70, + 0x70, 0x18, 0x38, 0x29, 0xa0, 0x48, 0x50, 0x25, 0x8d, 0x94, 0xf8, 0xfb, + 0x53, 0x14, 0x69, 0xb9, 0x31, 0x17, 0x7e, 0x84, 0x7d, 0xed, 0x10, 0x9f, + 0x0f, 0x54, 0x23, 0x9e, 0x8e, 0x98, 0x4f, 0xe9, 0x6d, 0xf3, 0x53, 0xc4, + 0x48, 0x6d, 0x15, 0x50, +}; +static const struct drbg_kat_pr_false kat2583_t = { + 2, kat2583_entropyin, kat2583_nonce, kat2583_persstr, + kat2583_entropyinreseed, kat2583_addinreseed, kat2583_addin0, + kat2583_addin1, kat2583_retbits +}; +static const struct drbg_kat kat2583 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2583_t +}; + +static const unsigned char kat2584_entropyin[] = { + 0x25, 0xab, 0x26, 0x7f, 0xba, 0xcb, 0x41, 0x1e, 0x5f, 0x2d, 0x38, 0x9e, + 0x84, 0x2b, 0x4e, 0x66, 0x5c, 0x06, 0x44, 0x6e, 0x65, 0x7b, 0x00, 0xed, + 0x37, 0x7f, 0x75, 0x34, 0xe5, 0x6a, 0xfe, 0x92, 0xee, 0x3f, 0x07, 0xc1, + 0xd3, 0xaa, 0x02, 0xe2, +}; +static const unsigned char kat2584_nonce[] = {0}; +static const unsigned char kat2584_persstr[] = {0}; +static const unsigned char kat2584_entropyinreseed[] = { + 0x18, 0x68, 0xbe, 0x40, 0x8b, 0xbd, 0x4c, 0xdf, 0x90, 0x37, 0x98, 0xeb, + 0xe4, 0xc8, 0x9b, 0x9b, 0x5a, 0xec, 0xc3, 0xc8, 0x8e, 0x01, 0x8d, 0x77, + 0xb2, 0xcf, 0x58, 0x13, 0x37, 0x88, 0xe9, 0x29, 0xae, 0x90, 0x54, 0x5a, + 0x3d, 0xc7, 0x6a, 0xf8, +}; +static const unsigned char kat2584_addinreseed[] = {0}; +static const unsigned char kat2584_addin0[] = {0}; +static const unsigned char kat2584_addin1[] = {0}; +static const unsigned char kat2584_retbits[] = { + 0x35, 0x25, 0x63, 0xf9, 0x30, 0x73, 0x69, 0x7e, 0xab, 0x3c, 0xfb, 0x4d, + 0x97, 0xbc, 0xca, 0x1f, 0x27, 0xda, 0x4f, 0xd8, 0x71, 0x77, 0x16, 0x54, + 0xee, 0x47, 0x90, 0x28, 0x6a, 0xd7, 0x03, 0x2c, 0x77, 0x35, 0xe8, 0x7a, + 0x3f, 0xe4, 0x80, 0x89, 0x94, 0x92, 0xf6, 0x8a, 0x73, 0xea, 0x3b, 0xe3, + 0xbc, 0xa3, 0x6b, 0xb0, 0x99, 0x7f, 0xf0, 0x8b, 0x2c, 0x72, 0x42, 0x15, + 0x67, 0xc8, 0x87, 0x1c, +}; +static const struct drbg_kat_pr_false kat2584_t = { + 3, kat2584_entropyin, kat2584_nonce, kat2584_persstr, + kat2584_entropyinreseed, kat2584_addinreseed, kat2584_addin0, + kat2584_addin1, kat2584_retbits +}; +static const struct drbg_kat kat2584 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2584_t +}; + +static const unsigned char kat2585_entropyin[] = { + 0x7b, 0xf7, 0x76, 0x38, 0x91, 0x09, 0xd7, 0x52, 0xd7, 0xca, 0x8d, 0x29, + 0xf1, 0x51, 0x91, 0xda, 0x3c, 0x43, 0x77, 0x58, 0xba, 0xb4, 0xa8, 0x90, + 0x0d, 0x39, 0xd2, 0x63, 0xf4, 0xa8, 0x78, 0xd4, 0xbc, 0x19, 0x15, 0xf6, + 0x30, 0x46, 0xed, 0xfe, +}; +static const unsigned char kat2585_nonce[] = {0}; +static const unsigned char kat2585_persstr[] = {0}; +static const unsigned char kat2585_entropyinreseed[] = { + 0xd9, 0xfa, 0x77, 0x1d, 0x12, 0x1f, 0xda, 0x64, 0x8c, 0x98, 0x02, 0xfe, + 0xd5, 0x8b, 0x25, 0x9b, 0x57, 0xff, 0x99, 0xb0, 0x1d, 0x45, 0x21, 0x8f, + 0x22, 0x6d, 0x89, 0x68, 0x5d, 0xda, 0x4f, 0x4d, 0xee, 0x0e, 0x54, 0x3a, + 0xda, 0x9b, 0x18, 0x1f, +}; +static const unsigned char kat2585_addinreseed[] = {0}; +static const unsigned char kat2585_addin0[] = {0}; +static const unsigned char kat2585_addin1[] = {0}; +static const unsigned char kat2585_retbits[] = { + 0x9b, 0xe5, 0x53, 0xc2, 0x94, 0xa5, 0xc8, 0x93, 0x94, 0xd9, 0xeb, 0x0b, + 0x43, 0x0d, 0x05, 0xc9, 0xbe, 0xc0, 0xf7, 0xb7, 0x5c, 0xe1, 0x83, 0xef, + 0x06, 0x04, 0x85, 0x95, 0x19, 0xa7, 0xe5, 0x05, 0xaa, 0xe4, 0x41, 0x6c, + 0x98, 0x72, 0x98, 0x28, 0x58, 0xdd, 0x27, 0x51, 0x67, 0x3c, 0x31, 0xaa, + 0xeb, 0x15, 0x15, 0xcd, 0x95, 0x7c, 0x11, 0xf4, 0xe0, 0x1d, 0x49, 0x31, + 0x8a, 0x94, 0x81, 0x7e, +}; +static const struct drbg_kat_pr_false kat2585_t = { + 4, kat2585_entropyin, kat2585_nonce, kat2585_persstr, + kat2585_entropyinreseed, kat2585_addinreseed, kat2585_addin0, + kat2585_addin1, kat2585_retbits +}; +static const struct drbg_kat kat2585 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2585_t +}; + +static const unsigned char kat2586_entropyin[] = { + 0x8e, 0xfb, 0x09, 0xa2, 0x5e, 0x68, 0x51, 0x78, 0x1e, 0x61, 0x44, 0x98, + 0x7c, 0x57, 0xc8, 0x18, 0x46, 0x81, 0xf7, 0x32, 0x0a, 0x86, 0xd4, 0x95, + 0x2c, 0x18, 0xda, 0xaa, 0x7b, 0x96, 0xb3, 0x8b, 0x2c, 0x1e, 0x13, 0x88, + 0x1a, 0x89, 0x95, 0xa3, +}; +static const unsigned char kat2586_nonce[] = {0}; +static const unsigned char kat2586_persstr[] = {0}; +static const unsigned char kat2586_entropyinreseed[] = { + 0x5f, 0x41, 0x3a, 0x40, 0x76, 0x92, 0xd8, 0xe5, 0x31, 0x76, 0xb1, 0x90, + 0xaf, 0x27, 0xda, 0xe1, 0x7b, 0x08, 0xb3, 0xf7, 0x08, 0xb6, 0xac, 0x3c, + 0x57, 0x22, 0xe4, 0x35, 0xfe, 0x00, 0x89, 0x7e, 0x25, 0x6d, 0xc7, 0xeb, + 0xe5, 0xcf, 0x38, 0x00, +}; +static const unsigned char kat2586_addinreseed[] = {0}; +static const unsigned char kat2586_addin0[] = {0}; +static const unsigned char kat2586_addin1[] = {0}; +static const unsigned char kat2586_retbits[] = { + 0xe8, 0x46, 0x62, 0x22, 0x36, 0xeb, 0x1e, 0x51, 0xee, 0xe5, 0x8a, 0x3f, + 0xae, 0x3d, 0x65, 0x3c, 0x05, 0x82, 0x0d, 0xcb, 0x32, 0x88, 0xa5, 0x58, + 0xcd, 0x69, 0x8c, 0x44, 0x9a, 0x9b, 0xc4, 0x02, 0xc7, 0x99, 0x6c, 0xf0, + 0xe0, 0xb2, 0x4c, 0x00, 0x15, 0x86, 0x20, 0x9e, 0x8a, 0x57, 0xc4, 0x54, + 0xf7, 0x27, 0xaf, 0x38, 0x17, 0x22, 0xe4, 0x8b, 0x4c, 0xed, 0xf2, 0x7e, + 0x23, 0xb0, 0x86, 0xa6, +}; +static const struct drbg_kat_pr_false kat2586_t = { + 5, kat2586_entropyin, kat2586_nonce, kat2586_persstr, + kat2586_entropyinreseed, kat2586_addinreseed, kat2586_addin0, + kat2586_addin1, kat2586_retbits +}; +static const struct drbg_kat kat2586 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2586_t +}; + +static const unsigned char kat2587_entropyin[] = { + 0x43, 0x59, 0x7c, 0x42, 0xcd, 0xb2, 0xec, 0x6c, 0xcd, 0xd3, 0x7c, 0xaa, + 0xa2, 0x67, 0x34, 0x1b, 0x51, 0x5b, 0x7d, 0x50, 0xd7, 0x7f, 0xba, 0x14, + 0x59, 0xe9, 0x10, 0x71, 0x8f, 0x76, 0xbc, 0x11, 0x00, 0xd6, 0x87, 0x43, + 0x35, 0xf3, 0x3e, 0x67, +}; +static const unsigned char kat2587_nonce[] = {0}; +static const unsigned char kat2587_persstr[] = {0}; +static const unsigned char kat2587_entropyinreseed[] = { + 0x3a, 0x1b, 0x97, 0xd4, 0xb6, 0xa2, 0xe9, 0xb5, 0x84, 0xee, 0xeb, 0x90, + 0xa3, 0x49, 0xe7, 0xb2, 0x11, 0x71, 0xe6, 0xa7, 0x0d, 0xf3, 0x53, 0xf0, + 0xeb, 0x8e, 0x3a, 0xd4, 0x1a, 0x4c, 0x15, 0x7c, 0x0c, 0x4f, 0xe5, 0x1b, + 0x17, 0x31, 0xb3, 0xd0, +}; +static const unsigned char kat2587_addinreseed[] = {0}; +static const unsigned char kat2587_addin0[] = {0}; +static const unsigned char kat2587_addin1[] = {0}; +static const unsigned char kat2587_retbits[] = { + 0x3d, 0x67, 0xc0, 0xf1, 0x42, 0x51, 0xb7, 0xc1, 0x82, 0x28, 0xcb, 0x1e, + 0xde, 0x24, 0x75, 0xa3, 0x57, 0x13, 0x5a, 0xf2, 0x7a, 0x17, 0x88, 0x18, + 0xe6, 0x1f, 0xf8, 0xc0, 0x6c, 0x0a, 0x59, 0xfa, 0xd9, 0xba, 0x12, 0xcc, + 0x2f, 0x2d, 0xcd, 0xed, 0xb6, 0x1a, 0xf5, 0x64, 0x97, 0x22, 0x5b, 0x1a, + 0xdb, 0x1b, 0xd1, 0x5a, 0x81, 0x37, 0x96, 0x4a, 0x43, 0xa7, 0x5d, 0x52, + 0x5f, 0x2c, 0xbf, 0x6b, +}; +static const struct drbg_kat_pr_false kat2587_t = { + 6, kat2587_entropyin, kat2587_nonce, kat2587_persstr, + kat2587_entropyinreseed, kat2587_addinreseed, kat2587_addin0, + kat2587_addin1, kat2587_retbits +}; +static const struct drbg_kat kat2587 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2587_t +}; + +static const unsigned char kat2588_entropyin[] = { + 0x8b, 0xcc, 0x87, 0xf4, 0xd6, 0x3d, 0x0e, 0xc1, 0x78, 0x44, 0x2d, 0xd3, + 0x5e, 0xd2, 0x5f, 0xc0, 0x64, 0x40, 0x48, 0x21, 0x47, 0x7f, 0xb4, 0x9e, + 0xf2, 0x16, 0x8b, 0xc7, 0x30, 0x25, 0x5d, 0x97, 0x9a, 0x5d, 0x59, 0x9a, + 0x42, 0xb3, 0x76, 0x3d, +}; +static const unsigned char kat2588_nonce[] = {0}; +static const unsigned char kat2588_persstr[] = {0}; +static const unsigned char kat2588_entropyinreseed[] = { + 0x7d, 0x4f, 0xfe, 0xae, 0xd0, 0x3a, 0xc4, 0x06, 0x37, 0x7b, 0x87, 0xa1, + 0x3f, 0x35, 0x16, 0xac, 0x6e, 0xff, 0x95, 0xf2, 0x19, 0x2f, 0x37, 0x97, + 0x3f, 0xf2, 0x30, 0xa8, 0x79, 0xd3, 0x5f, 0xb2, 0x42, 0x4f, 0x3f, 0xf8, + 0x6f, 0x1c, 0xfa, 0x77, +}; +static const unsigned char kat2588_addinreseed[] = {0}; +static const unsigned char kat2588_addin0[] = {0}; +static const unsigned char kat2588_addin1[] = {0}; +static const unsigned char kat2588_retbits[] = { + 0x6a, 0x02, 0x8d, 0x7e, 0x73, 0xd1, 0x1b, 0x35, 0x72, 0x46, 0x49, 0x98, + 0x0a, 0xa8, 0xf5, 0xa6, 0x81, 0x37, 0x20, 0x9b, 0xd2, 0xc9, 0x88, 0x65, + 0x65, 0x66, 0x50, 0xff, 0x4f, 0x10, 0xc0, 0x74, 0x55, 0x23, 0x22, 0x46, + 0x32, 0xbb, 0x02, 0x44, 0x2e, 0x75, 0x77, 0x7d, 0x1e, 0xd8, 0x82, 0xb2, + 0x5f, 0x18, 0x37, 0x21, 0x97, 0x72, 0x72, 0x9b, 0x22, 0x85, 0x93, 0x5c, + 0x6f, 0x53, 0x5e, 0xa9, +}; +static const struct drbg_kat_pr_false kat2588_t = { + 7, kat2588_entropyin, kat2588_nonce, kat2588_persstr, + kat2588_entropyinreseed, kat2588_addinreseed, kat2588_addin0, + kat2588_addin1, kat2588_retbits +}; +static const struct drbg_kat kat2588 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2588_t +}; + +static const unsigned char kat2589_entropyin[] = { + 0x0b, 0x0b, 0xa1, 0x33, 0x61, 0xb6, 0xb3, 0x6e, 0x93, 0x28, 0x69, 0xc3, + 0x0b, 0x9e, 0x88, 0xe7, 0xf9, 0xdc, 0x2b, 0xdf, 0x9d, 0x9e, 0x0d, 0xac, + 0x48, 0x7b, 0x0c, 0x1c, 0x89, 0x25, 0xe1, 0xdf, 0xc4, 0xec, 0x4e, 0xbb, + 0xca, 0x50, 0xa6, 0x4f, +}; +static const unsigned char kat2589_nonce[] = {0}; +static const unsigned char kat2589_persstr[] = {0}; +static const unsigned char kat2589_entropyinreseed[] = { + 0x8e, 0xeb, 0x7d, 0x77, 0x3e, 0xa5, 0xa5, 0xe1, 0xba, 0x66, 0xee, 0x64, + 0xfb, 0x4f, 0x80, 0x47, 0xd9, 0x5f, 0x3a, 0x20, 0x86, 0x07, 0x9f, 0xd6, + 0x31, 0xb2, 0xa1, 0x7b, 0xe8, 0xb9, 0x28, 0xb4, 0xe0, 0xdb, 0xd5, 0x0a, + 0x7e, 0x6e, 0xb2, 0xa1, +}; +static const unsigned char kat2589_addinreseed[] = {0}; +static const unsigned char kat2589_addin0[] = {0}; +static const unsigned char kat2589_addin1[] = {0}; +static const unsigned char kat2589_retbits[] = { + 0x0e, 0xe5, 0x63, 0x1c, 0xff, 0x99, 0xaa, 0xf7, 0xbb, 0xa4, 0xe1, 0x71, + 0x8d, 0x3c, 0x3d, 0x87, 0x3e, 0xe8, 0xe7, 0xc4, 0x1c, 0x6c, 0x1c, 0x55, + 0x32, 0x01, 0xc7, 0x82, 0x99, 0x67, 0x7b, 0xca, 0x17, 0x2f, 0x85, 0xab, + 0x7c, 0x6c, 0xb5, 0x26, 0x58, 0x62, 0xd8, 0xa6, 0xaf, 0xa8, 0x23, 0xf5, + 0xbb, 0xef, 0xf1, 0x41, 0xd6, 0x89, 0xf6, 0x23, 0x12, 0x8c, 0x15, 0x9f, + 0xb5, 0xd4, 0xde, 0x7d, +}; +static const struct drbg_kat_pr_false kat2589_t = { + 8, kat2589_entropyin, kat2589_nonce, kat2589_persstr, + kat2589_entropyinreseed, kat2589_addinreseed, kat2589_addin0, + kat2589_addin1, kat2589_retbits +}; +static const struct drbg_kat kat2589 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2589_t +}; + +static const unsigned char kat2590_entropyin[] = { + 0xc9, 0xbb, 0xd2, 0x7e, 0x20, 0x7f, 0x1b, 0x22, 0x9c, 0x25, 0xa2, 0xbb, + 0x37, 0xfd, 0xff, 0x34, 0xd8, 0xc5, 0x65, 0xd1, 0x7a, 0xcb, 0xad, 0xd9, + 0xdf, 0xe4, 0x61, 0x18, 0xb2, 0xaf, 0xd9, 0x72, 0x36, 0xf3, 0x0e, 0x12, + 0x93, 0x4a, 0x24, 0xea, +}; +static const unsigned char kat2590_nonce[] = {0}; +static const unsigned char kat2590_persstr[] = {0}; +static const unsigned char kat2590_entropyinreseed[] = { + 0xef, 0xca, 0xa4, 0x52, 0x74, 0x30, 0xb8, 0xc5, 0xc2, 0x6b, 0x8b, 0x11, + 0xda, 0x23, 0xd5, 0xca, 0x05, 0xc4, 0xdb, 0x14, 0xb1, 0xc8, 0x2c, 0xdb, + 0x7d, 0x20, 0x04, 0xfc, 0x9b, 0xd0, 0xfd, 0xa1, 0xb8, 0xf3, 0x23, 0x42, + 0x4d, 0x03, 0x53, 0x47, +}; +static const unsigned char kat2590_addinreseed[] = {0}; +static const unsigned char kat2590_addin0[] = {0}; +static const unsigned char kat2590_addin1[] = {0}; +static const unsigned char kat2590_retbits[] = { + 0x14, 0x0c, 0x02, 0x0b, 0xb4, 0x13, 0x91, 0xff, 0x2d, 0xdc, 0x1b, 0x48, + 0xe7, 0x73, 0x55, 0x4a, 0x61, 0x66, 0x51, 0xa5, 0xe0, 0x38, 0x23, 0xe3, + 0xa6, 0xfa, 0x53, 0x12, 0xdd, 0x65, 0x27, 0x79, 0x24, 0x57, 0x38, 0xf4, + 0xe0, 0xd4, 0xcf, 0xb4, 0x63, 0x1e, 0x7e, 0x70, 0xbb, 0xba, 0x90, 0x8f, + 0xde, 0x87, 0xf9, 0x5c, 0x00, 0x55, 0xbd, 0x7f, 0xd0, 0xae, 0xd9, 0x5f, + 0xf7, 0xeb, 0x99, 0x0b, +}; +static const struct drbg_kat_pr_false kat2590_t = { + 9, kat2590_entropyin, kat2590_nonce, kat2590_persstr, + kat2590_entropyinreseed, kat2590_addinreseed, kat2590_addin0, + kat2590_addin1, kat2590_retbits +}; +static const struct drbg_kat kat2590 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2590_t +}; + +static const unsigned char kat2591_entropyin[] = { + 0xa3, 0xca, 0x9f, 0xb8, 0x97, 0x07, 0xf0, 0xd5, 0x62, 0xf1, 0xd0, 0xf7, + 0x07, 0xb7, 0x70, 0xcc, 0x2b, 0x2d, 0x5d, 0x03, 0x8e, 0x89, 0x05, 0xdd, + 0x02, 0xb0, 0xe2, 0x86, 0xdc, 0x95, 0x4e, 0xc2, 0xa9, 0xe0, 0x4b, 0x12, + 0x83, 0x72, 0xe5, 0x67, +}; +static const unsigned char kat2591_nonce[] = {0}; +static const unsigned char kat2591_persstr[] = {0}; +static const unsigned char kat2591_entropyinreseed[] = { + 0x70, 0xf0, 0xd7, 0x52, 0x8b, 0x59, 0x85, 0x3b, 0xbb, 0x04, 0x65, 0xf2, + 0xe5, 0xe0, 0xbe, 0xef, 0xd7, 0xfa, 0x33, 0x35, 0xf8, 0xe6, 0x56, 0xc3, + 0x11, 0xcc, 0x07, 0x4b, 0x8c, 0x15, 0xa8, 0xa5, 0xed, 0x3e, 0xce, 0xd8, + 0xc4, 0x8a, 0x2f, 0x25, +}; +static const unsigned char kat2591_addinreseed[] = {0}; +static const unsigned char kat2591_addin0[] = {0}; +static const unsigned char kat2591_addin1[] = {0}; +static const unsigned char kat2591_retbits[] = { + 0x1b, 0xb0, 0xe5, 0x0a, 0x0c, 0x13, 0x81, 0xce, 0x3a, 0x72, 0x2b, 0xb4, + 0xf7, 0xa0, 0xda, 0x28, 0x00, 0x9a, 0x4c, 0x24, 0x06, 0x35, 0x03, 0xb9, + 0x1b, 0x4b, 0x7b, 0x87, 0x71, 0xce, 0xa3, 0xf8, 0x88, 0xae, 0xfa, 0x14, + 0xe9, 0x56, 0xcc, 0x43, 0xb8, 0xa7, 0xdd, 0x38, 0xd2, 0x1a, 0x2b, 0x88, + 0xfc, 0x0b, 0x3a, 0x11, 0xca, 0x3a, 0x4b, 0x0e, 0xa5, 0x2b, 0x53, 0xbb, + 0x3a, 0xd3, 0xe2, 0x62, +}; +static const struct drbg_kat_pr_false kat2591_t = { + 10, kat2591_entropyin, kat2591_nonce, kat2591_persstr, + kat2591_entropyinreseed, kat2591_addinreseed, kat2591_addin0, + kat2591_addin1, kat2591_retbits +}; +static const struct drbg_kat kat2591 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2591_t +}; + +static const unsigned char kat2592_entropyin[] = { + 0xb9, 0x21, 0x08, 0xb6, 0xea, 0x0c, 0x1a, 0x24, 0x14, 0xc2, 0x04, 0x90, + 0x3e, 0x7c, 0x80, 0x71, 0xf5, 0xdd, 0xc8, 0xf7, 0xe3, 0x22, 0x1d, 0x6d, + 0x0b, 0x4c, 0xbc, 0x2f, 0xb5, 0x61, 0x7b, 0xe6, 0xc1, 0xda, 0x96, 0x00, + 0x63, 0xf9, 0xa2, 0x1a, +}; +static const unsigned char kat2592_nonce[] = {0}; +static const unsigned char kat2592_persstr[] = {0}; +static const unsigned char kat2592_entropyinreseed[] = { + 0xed, 0xc9, 0x6d, 0xf8, 0xa7, 0x0d, 0x2e, 0xe1, 0xab, 0x5f, 0xc7, 0xdc, + 0x11, 0x00, 0x8a, 0xa3, 0xc6, 0xdf, 0xd2, 0x40, 0x48, 0xeb, 0xeb, 0x89, + 0x95, 0x14, 0x49, 0x40, 0x44, 0x4a, 0x89, 0xd5, 0x03, 0x94, 0x0f, 0xb3, + 0x69, 0x6b, 0xec, 0x29, +}; +static const unsigned char kat2592_addinreseed[] = {0}; +static const unsigned char kat2592_addin0[] = {0}; +static const unsigned char kat2592_addin1[] = {0}; +static const unsigned char kat2592_retbits[] = { + 0xf1, 0xb0, 0xc1, 0x0a, 0x67, 0x36, 0x76, 0x0a, 0xd8, 0x17, 0x11, 0xfa, + 0x1e, 0x84, 0xb1, 0x08, 0x4a, 0x06, 0xf7, 0x0e, 0xed, 0x3f, 0x08, 0x07, + 0xb5, 0x99, 0x2b, 0xfb, 0x59, 0x5f, 0xef, 0xa2, 0x77, 0x41, 0xbb, 0xc6, + 0x38, 0xbe, 0x1c, 0xf1, 0xd4, 0x57, 0x6e, 0xec, 0xf2, 0xef, 0x82, 0xf1, + 0x2e, 0xe2, 0x49, 0xa2, 0x47, 0x91, 0x03, 0x30, 0xd9, 0x59, 0x3e, 0x37, + 0x41, 0x92, 0xf9, 0xf5, +}; +static const struct drbg_kat_pr_false kat2592_t = { + 11, kat2592_entropyin, kat2592_nonce, kat2592_persstr, + kat2592_entropyinreseed, kat2592_addinreseed, kat2592_addin0, + kat2592_addin1, kat2592_retbits +}; +static const struct drbg_kat kat2592 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2592_t +}; + +static const unsigned char kat2593_entropyin[] = { + 0x54, 0x4d, 0x73, 0x39, 0x09, 0x07, 0x42, 0x47, 0x6c, 0xa8, 0xa3, 0x26, + 0x57, 0x4e, 0x52, 0x02, 0x9b, 0xd5, 0xe9, 0x30, 0x9c, 0xc9, 0x13, 0x38, + 0x60, 0x1e, 0x24, 0xd4, 0x64, 0xe0, 0xcf, 0xcb, 0xa3, 0xe7, 0x2e, 0x36, + 0x78, 0xa2, 0xa8, 0xa4, +}; +static const unsigned char kat2593_nonce[] = {0}; +static const unsigned char kat2593_persstr[] = {0}; +static const unsigned char kat2593_entropyinreseed[] = { + 0x41, 0xfa, 0x1a, 0xdd, 0x1c, 0xa9, 0x1b, 0x3d, 0x4d, 0x2d, 0xf9, 0xdf, + 0x78, 0xbc, 0x7d, 0xe4, 0x1b, 0x00, 0xfb, 0xcb, 0xdf, 0x79, 0x32, 0xdd, + 0xa0, 0x95, 0x2a, 0x41, 0x15, 0x13, 0x79, 0xb7, 0xc0, 0x98, 0x01, 0x2f, + 0x86, 0x0f, 0x0a, 0xf7, +}; +static const unsigned char kat2593_addinreseed[] = {0}; +static const unsigned char kat2593_addin0[] = {0}; +static const unsigned char kat2593_addin1[] = {0}; +static const unsigned char kat2593_retbits[] = { + 0x28, 0xbb, 0x3f, 0x53, 0x51, 0x4a, 0xa1, 0xac, 0xc1, 0x58, 0x1a, 0xf7, + 0xcc, 0x31, 0x7b, 0x00, 0xa4, 0xd6, 0xa0, 0x3f, 0x4a, 0x66, 0x9f, 0x78, + 0x48, 0x91, 0xef, 0x21, 0xa0, 0x7f, 0xfe, 0xcd, 0x3d, 0x7a, 0x40, 0xf9, + 0xdb, 0x60, 0x59, 0xd6, 0xbf, 0x90, 0xe6, 0x95, 0x44, 0x5b, 0xd5, 0xe2, + 0x4f, 0x2e, 0xfa, 0xc0, 0xaf, 0x49, 0xe7, 0x52, 0xc0, 0xdf, 0x8c, 0x98, + 0xc8, 0x0b, 0x39, 0x85, +}; +static const struct drbg_kat_pr_false kat2593_t = { + 12, kat2593_entropyin, kat2593_nonce, kat2593_persstr, + kat2593_entropyinreseed, kat2593_addinreseed, kat2593_addin0, + kat2593_addin1, kat2593_retbits +}; +static const struct drbg_kat kat2593 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2593_t +}; + +static const unsigned char kat2594_entropyin[] = { + 0x85, 0x06, 0xb2, 0x22, 0x0b, 0xc2, 0xf4, 0x52, 0xd6, 0x40, 0x68, 0x5d, + 0x06, 0x8a, 0xea, 0xb3, 0x1d, 0x5c, 0x66, 0x57, 0x02, 0xa5, 0xf4, 0x2d, + 0xa6, 0x85, 0x6a, 0xa8, 0x25, 0x88, 0x4a, 0x08, 0xb6, 0x13, 0xb2, 0x7b, + 0xe4, 0xe8, 0x57, 0x17, +}; +static const unsigned char kat2594_nonce[] = {0}; +static const unsigned char kat2594_persstr[] = {0}; +static const unsigned char kat2594_entropyinreseed[] = { + 0xab, 0x28, 0x9b, 0xac, 0x2c, 0x6a, 0xea, 0xb3, 0x74, 0x41, 0x89, 0x45, + 0x71, 0xed, 0xf9, 0x1e, 0x87, 0xe4, 0x3b, 0x9d, 0xd3, 0xa5, 0x02, 0xe7, + 0xa5, 0x3c, 0xb0, 0x6b, 0x08, 0x23, 0x74, 0x04, 0x4f, 0x11, 0xb9, 0x00, + 0x9c, 0xd1, 0x95, 0x92, +}; +static const unsigned char kat2594_addinreseed[] = {0}; +static const unsigned char kat2594_addin0[] = {0}; +static const unsigned char kat2594_addin1[] = {0}; +static const unsigned char kat2594_retbits[] = { + 0xe1, 0xa7, 0xd5, 0xc1, 0x27, 0x74, 0x1b, 0x90, 0x3e, 0x56, 0xcb, 0xd0, + 0x3f, 0xe9, 0x20, 0x79, 0x53, 0xe2, 0x1d, 0xd1, 0xa9, 0x75, 0x0b, 0x0e, + 0xc5, 0x48, 0x43, 0xd2, 0x12, 0xfb, 0xb2, 0xae, 0x02, 0x08, 0xcb, 0xeb, + 0x1d, 0x6c, 0x7b, 0x34, 0x8c, 0xc0, 0x26, 0x20, 0xf0, 0x43, 0x0d, 0x24, + 0x2b, 0xff, 0x65, 0xf7, 0x5b, 0x8a, 0x1a, 0xd4, 0x36, 0x24, 0x09, 0xb5, + 0xae, 0xa0, 0xe3, 0x8d, +}; +static const struct drbg_kat_pr_false kat2594_t = { + 13, kat2594_entropyin, kat2594_nonce, kat2594_persstr, + kat2594_entropyinreseed, kat2594_addinreseed, kat2594_addin0, + kat2594_addin1, kat2594_retbits +}; +static const struct drbg_kat kat2594 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2594_t +}; + +static const unsigned char kat2595_entropyin[] = { + 0x96, 0x3f, 0xe5, 0x75, 0xc9, 0x6b, 0x31, 0x9a, 0x34, 0x18, 0xcc, 0x75, + 0x48, 0x48, 0x4a, 0xb8, 0x27, 0xdf, 0x1f, 0x7b, 0xa5, 0x6b, 0x0d, 0xa8, + 0x13, 0x1f, 0xd1, 0x9f, 0x77, 0x12, 0xad, 0xd1, 0xd2, 0x9a, 0x03, 0xed, + 0x0a, 0x20, 0xcc, 0x90, +}; +static const unsigned char kat2595_nonce[] = {0}; +static const unsigned char kat2595_persstr[] = {0}; +static const unsigned char kat2595_entropyinreseed[] = { + 0xe1, 0x47, 0x0e, 0xe3, 0x67, 0xe5, 0x5b, 0xd8, 0xdd, 0x82, 0xde, 0xa6, + 0xf7, 0xfb, 0xd9, 0x05, 0xb9, 0x8d, 0x59, 0x63, 0x06, 0x80, 0x7f, 0x8a, + 0xae, 0x52, 0x98, 0x07, 0xb3, 0x6a, 0xa0, 0x65, 0x5b, 0xd2, 0x60, 0xe1, + 0xe2, 0xba, 0xb7, 0x5c, +}; +static const unsigned char kat2595_addinreseed[] = {0}; +static const unsigned char kat2595_addin0[] = {0}; +static const unsigned char kat2595_addin1[] = {0}; +static const unsigned char kat2595_retbits[] = { + 0xa1, 0xe6, 0x28, 0x65, 0x29, 0xfa, 0xb4, 0x0e, 0x3d, 0xb9, 0xb5, 0x77, + 0x41, 0xbf, 0x6e, 0x5b, 0x49, 0x04, 0x59, 0x0d, 0x05, 0x56, 0x9a, 0x7d, + 0x57, 0x1b, 0xaf, 0x77, 0x84, 0x20, 0x65, 0xbe, 0x74, 0x2e, 0x2c, 0x26, + 0xc1, 0x4e, 0x85, 0x99, 0xe4, 0x6a, 0x52, 0x0f, 0xa3, 0x9b, 0x81, 0xeb, + 0xe3, 0x2d, 0xd8, 0x57, 0x55, 0x6d, 0x9f, 0x55, 0xe4, 0xbd, 0x37, 0xc1, + 0x95, 0x2a, 0xfc, 0x0d, +}; +static const struct drbg_kat_pr_false kat2595_t = { + 14, kat2595_entropyin, kat2595_nonce, kat2595_persstr, + kat2595_entropyinreseed, kat2595_addinreseed, kat2595_addin0, + kat2595_addin1, kat2595_retbits +}; +static const struct drbg_kat kat2595 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat2595_t +}; + +static const unsigned char kat2596_entropyin[] = { + 0xf5, 0x76, 0x2c, 0x0a, 0x6d, 0x0a, 0x2f, 0xf4, 0xda, 0x58, 0xa9, 0x68, + 0x5a, 0xea, 0xb4, 0xe6, 0x0c, 0xc1, 0xaf, 0xfc, 0xa6, 0x29, 0x93, 0x6f, + 0x91, 0xdc, 0xc2, 0xb6, 0x53, 0x2b, 0xb1, 0x53, 0x21, 0x1c, 0xa1, 0x46, + 0x78, 0xe3, 0xab, 0x82, +}; +static const unsigned char kat2596_nonce[] = {0}; +static const unsigned char kat2596_persstr[] = {0}; +static const unsigned char kat2596_entropyinreseed[] = { + 0xfd, 0xf0, 0x03, 0xb1, 0x38, 0x86, 0xec, 0x04, 0x24, 0x0a, 0x4d, 0x2f, + 0x94, 0x48, 0xf7, 0x73, 0xe0, 0x0f, 0x2b, 0x5b, 0x9e, 0x21, 0x03, 0x4b, + 0x72, 0x3d, 0x9b, 0xdd, 0xc2, 0xf0, 0x79, 0x65, 0x49, 0x47, 0xa1, 0x12, + 0x2c, 0x7d, 0x9a, 0xdb, +}; +static const unsigned char kat2596_addinreseed[] = { + 0x39, 0x51, 0x73, 0x6b, 0xad, 0xd2, 0xa4, 0x3d, 0xc2, 0xe8, 0xa8, 0x47, + 0xc3, 0xe1, 0x63, 0xcb, 0xc0, 0xf3, 0x52, 0x32, 0x7e, 0x88, 0x89, 0xbf, + 0x40, 0x07, 0x15, 0xc7, 0x24, 0x9b, 0xc7, 0x21, 0xf0, 0x8a, 0xbf, 0x85, + 0x82, 0xb2, 0x9d, 0x9c, +}; +static const unsigned char kat2596_addin0[] = { + 0xce, 0x6b, 0x78, 0x5c, 0x04, 0xac, 0x27, 0x5c, 0xd4, 0x7d, 0x25, 0x17, + 0xb0, 0x86, 0xf2, 0x09, 0xc1, 0x5c, 0x79, 0x63, 0x8c, 0x31, 0xb4, 0x0d, + 0xb8, 0x58, 0x23, 0xf6, 0xc9, 0xf9, 0xf7, 0x7a, 0x63, 0x33, 0xdd, 0xad, + 0xc5, 0x79, 0x24, 0xf8, +}; +static const unsigned char kat2596_addin1[] = { + 0x44, 0x70, 0x0e, 0xf1, 0x6d, 0x91, 0x4b, 0x3b, 0x92, 0x97, 0x8c, 0xf4, + 0xca, 0x2d, 0xd4, 0xae, 0x79, 0xa9, 0x14, 0xee, 0x55, 0x64, 0x97, 0x75, + 0xb3, 0x20, 0xee, 0x70, 0x0e, 0xb1, 0x40, 0x33, 0xab, 0xb8, 0xba, 0x73, + 0x06, 0xce, 0x75, 0xd6, +}; +static const unsigned char kat2596_retbits[] = { + 0x17, 0xa3, 0x92, 0xa8, 0xa5, 0x8d, 0x2b, 0x65, 0x09, 0x03, 0x12, 0xeb, + 0x9f, 0x0f, 0xf7, 0xf3, 0x00, 0xa1, 0x05, 0xa3, 0x42, 0xae, 0x7b, 0x53, + 0x75, 0x1b, 0xa6, 0x56, 0xd1, 0x12, 0x7a, 0x02, 0xf9, 0xda, 0x4a, 0xc3, + 0xb4, 0xbb, 0x7b, 0x29, 0x54, 0xad, 0xda, 0x54, 0xa4, 0xad, 0xd6, 0xc9, + 0x5b, 0x5a, 0x09, 0xb0, 0x10, 0x87, 0x8b, 0x04, 0x57, 0x8b, 0x60, 0x95, + 0xd7, 0x01, 0xe2, 0x25, +}; +static const struct drbg_kat_pr_false kat2596_t = { + 0, kat2596_entropyin, kat2596_nonce, kat2596_persstr, + kat2596_entropyinreseed, kat2596_addinreseed, kat2596_addin0, + kat2596_addin1, kat2596_retbits +}; +static const struct drbg_kat kat2596 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2596_t +}; + +static const unsigned char kat2597_entropyin[] = { + 0xad, 0xe7, 0x3a, 0x2f, 0xd5, 0x9b, 0x21, 0x94, 0xe7, 0x80, 0x97, 0xe2, + 0xbe, 0x43, 0xc9, 0xa6, 0xaf, 0x65, 0x98, 0xa6, 0x3c, 0x51, 0x07, 0x7d, + 0x8a, 0x4c, 0xd8, 0xe3, 0xb3, 0xa5, 0xe9, 0x08, 0x6b, 0xc4, 0xe3, 0x69, + 0x99, 0x0d, 0x7d, 0xc2, +}; +static const unsigned char kat2597_nonce[] = {0}; +static const unsigned char kat2597_persstr[] = {0}; +static const unsigned char kat2597_entropyinreseed[] = { + 0x38, 0xac, 0xf4, 0xbc, 0x97, 0xc1, 0xcc, 0xcc, 0x25, 0x2c, 0xa5, 0x0e, + 0xb2, 0x33, 0x8d, 0x81, 0x54, 0x68, 0x84, 0x96, 0xee, 0x06, 0xb9, 0xca, + 0x48, 0x25, 0xa5, 0x9f, 0x63, 0xbc, 0x57, 0x83, 0xe8, 0xb7, 0x36, 0xe8, + 0xee, 0x5c, 0x74, 0xa2, +}; +static const unsigned char kat2597_addinreseed[] = { + 0x3c, 0x37, 0xfe, 0x0d, 0x99, 0x6d, 0x26, 0xbd, 0x93, 0xc5, 0x90, 0xae, + 0x89, 0xa8, 0x89, 0x00, 0x46, 0xfa, 0x61, 0x6d, 0xed, 0xef, 0xe2, 0x7b, + 0xcd, 0xbf, 0x9c, 0x41, 0x80, 0x13, 0x5e, 0xa4, 0x29, 0xd6, 0x50, 0x48, + 0x03, 0x9b, 0x80, 0xeb, +}; +static const unsigned char kat2597_addin0[] = { + 0xdc, 0x28, 0x42, 0x3f, 0x45, 0x79, 0xb9, 0x1b, 0x40, 0x97, 0x7a, 0xa1, + 0x24, 0xc3, 0xe5, 0xd4, 0x3d, 0xfa, 0x7e, 0xa5, 0xb0, 0xff, 0x1f, 0x62, + 0xd6, 0x6b, 0xf8, 0x9a, 0x22, 0x63, 0xdc, 0xba, 0x28, 0xd9, 0xd3, 0xa9, + 0x82, 0x6b, 0xd4, 0x81, +}; +static const unsigned char kat2597_addin1[] = { + 0x19, 0x16, 0xea, 0x19, 0xd6, 0x83, 0xac, 0xa2, 0xd0, 0x68, 0x41, 0xc7, + 0x7f, 0x30, 0xfe, 0x83, 0x27, 0x61, 0x12, 0x29, 0xa2, 0xf4, 0x03, 0xc7, + 0xce, 0x63, 0xde, 0xa6, 0xb9, 0x7e, 0xeb, 0x1a, 0x85, 0x55, 0x13, 0x1c, + 0xa7, 0x0b, 0xa5, 0x4d, +}; +static const unsigned char kat2597_retbits[] = { + 0x20, 0x57, 0x20, 0x91, 0x4b, 0xda, 0x38, 0x42, 0x8b, 0x81, 0x85, 0x3d, + 0xec, 0x06, 0x02, 0xf1, 0x2a, 0xe3, 0xf3, 0x20, 0x0a, 0xaf, 0x6e, 0xd1, + 0xe7, 0xbf, 0x32, 0xc7, 0xc6, 0x9e, 0x5b, 0x2d, 0x8f, 0x3f, 0x75, 0x3e, + 0x08, 0x87, 0xa4, 0x9b, 0x19, 0x33, 0xe1, 0x53, 0xf6, 0x51, 0xa2, 0xc9, + 0x1e, 0x08, 0x1d, 0xe6, 0xc2, 0x5c, 0x24, 0x8c, 0x21, 0xb3, 0x17, 0x42, + 0x33, 0xed, 0x9c, 0xf8, +}; +static const struct drbg_kat_pr_false kat2597_t = { + 1, kat2597_entropyin, kat2597_nonce, kat2597_persstr, + kat2597_entropyinreseed, kat2597_addinreseed, kat2597_addin0, + kat2597_addin1, kat2597_retbits +}; +static const struct drbg_kat kat2597 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2597_t +}; + +static const unsigned char kat2598_entropyin[] = { + 0x24, 0x3d, 0x21, 0x6d, 0x2d, 0xb2, 0x6e, 0xd1, 0xb3, 0xc6, 0xd1, 0xd2, + 0x97, 0xb4, 0x7d, 0xfa, 0x5a, 0x37, 0xa3, 0xa8, 0xba, 0xd0, 0x0a, 0xbe, + 0xfc, 0x67, 0xe9, 0x2a, 0x93, 0xcd, 0x00, 0x87, 0x33, 0xc9, 0x26, 0x53, + 0xf8, 0xe6, 0xfb, 0xe2, +}; +static const unsigned char kat2598_nonce[] = {0}; +static const unsigned char kat2598_persstr[] = {0}; +static const unsigned char kat2598_entropyinreseed[] = { + 0x93, 0xd9, 0x40, 0x6f, 0x16, 0xed, 0x0f, 0x1d, 0x8f, 0x61, 0x4a, 0xc8, + 0x89, 0xd3, 0x3d, 0x42, 0x78, 0x74, 0xe0, 0x07, 0x20, 0xab, 0x77, 0x33, + 0x37, 0x8a, 0x13, 0x60, 0x08, 0x8f, 0xb8, 0x13, 0x47, 0x39, 0x2b, 0x97, + 0xb0, 0x9c, 0x56, 0xc6, +}; +static const unsigned char kat2598_addinreseed[] = { + 0x47, 0x0b, 0x4d, 0xed, 0xa8, 0xe7, 0x11, 0xc0, 0x23, 0xd4, 0x35, 0x42, + 0x10, 0x71, 0x24, 0x80, 0xaf, 0x04, 0x2c, 0xa5, 0xa5, 0xa2, 0x0d, 0xf7, + 0xef, 0x30, 0x75, 0x0a, 0x45, 0xf6, 0x59, 0xef, 0x13, 0x87, 0x95, 0xb1, + 0x2f, 0xc5, 0x59, 0x65, +}; +static const unsigned char kat2598_addin0[] = { + 0x28, 0x48, 0x50, 0xe5, 0x88, 0x5b, 0x28, 0x00, 0x09, 0x3b, 0x07, 0x6e, + 0xab, 0x54, 0x8d, 0x7a, 0x23, 0xab, 0x42, 0x1e, 0x19, 0xb1, 0x3d, 0x53, + 0x5f, 0x33, 0x5f, 0xaf, 0xc8, 0x57, 0xf1, 0x07, 0x3b, 0x38, 0x49, 0x85, + 0x7f, 0x06, 0x1f, 0x24, +}; +static const unsigned char kat2598_addin1[] = { + 0x4a, 0xba, 0xd0, 0xb3, 0xc4, 0xe7, 0xf2, 0x6c, 0x43, 0xb8, 0xbd, 0x91, + 0x4a, 0x08, 0x77, 0xfb, 0xfd, 0x0d, 0xa4, 0x55, 0x19, 0x2d, 0x6d, 0x1f, + 0x82, 0x1a, 0xed, 0xca, 0x5e, 0xf6, 0x17, 0xca, 0x7e, 0xaa, 0x4d, 0x05, + 0x6a, 0xec, 0x65, 0xa2, +}; +static const unsigned char kat2598_retbits[] = { + 0x59, 0xa2, 0xa3, 0x7a, 0x6c, 0x42, 0xd3, 0x5c, 0x32, 0xb3, 0x93, 0xca, + 0x0a, 0xdd, 0xa3, 0x6f, 0x2b, 0xea, 0xe8, 0x85, 0xd7, 0x52, 0x32, 0xe1, + 0xc3, 0x69, 0x77, 0x57, 0x09, 0xf8, 0x73, 0xb4, 0x9a, 0xf8, 0x3a, 0x3b, + 0x0e, 0x2c, 0xf7, 0x9a, 0xbb, 0xcf, 0x4e, 0x16, 0xd4, 0x6d, 0x6d, 0xd2, + 0x6f, 0xec, 0x8b, 0xbe, 0x65, 0xdd, 0x72, 0xe8, 0x2f, 0x70, 0x56, 0x55, + 0xd8, 0x8e, 0x21, 0x49, +}; +static const struct drbg_kat_pr_false kat2598_t = { + 2, kat2598_entropyin, kat2598_nonce, kat2598_persstr, + kat2598_entropyinreseed, kat2598_addinreseed, kat2598_addin0, + kat2598_addin1, kat2598_retbits +}; +static const struct drbg_kat kat2598 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2598_t +}; + +static const unsigned char kat2599_entropyin[] = { + 0xe1, 0xd7, 0xb3, 0xf4, 0xe8, 0xbf, 0x14, 0x8f, 0x77, 0x42, 0x95, 0x19, + 0x87, 0xc5, 0xef, 0x32, 0x48, 0x0b, 0xdf, 0x4f, 0x34, 0x7d, 0xe6, 0x70, + 0x43, 0x11, 0xda, 0x8f, 0x1c, 0x96, 0x31, 0x35, 0x91, 0x37, 0x24, 0x0b, + 0xa5, 0xa9, 0xed, 0x8f, +}; +static const unsigned char kat2599_nonce[] = {0}; +static const unsigned char kat2599_persstr[] = {0}; +static const unsigned char kat2599_entropyinreseed[] = { + 0x01, 0x8e, 0xea, 0x7b, 0x45, 0xbd, 0x7a, 0x39, 0xa6, 0x39, 0xa1, 0x16, + 0x4b, 0xf3, 0xf4, 0x75, 0x38, 0x2c, 0x9f, 0x2d, 0xc8, 0x4f, 0xc0, 0x68, + 0xf0, 0x4a, 0x6f, 0x71, 0x71, 0x0c, 0x58, 0x93, 0x09, 0xe9, 0x75, 0xc0, + 0x8a, 0xc1, 0x52, 0xfa, +}; +static const unsigned char kat2599_addinreseed[] = { + 0x63, 0x52, 0x43, 0x2e, 0x6c, 0x58, 0x26, 0x32, 0x33, 0xad, 0x95, 0x87, + 0xe1, 0xea, 0x76, 0x43, 0xf8, 0xaf, 0x17, 0xa2, 0x8f, 0x15, 0x31, 0x37, + 0xbe, 0x03, 0x05, 0x6c, 0x6a, 0x98, 0xc8, 0x09, 0x20, 0xe4, 0x8c, 0x05, + 0xa0, 0x57, 0x4f, 0x87, +}; +static const unsigned char kat2599_addin0[] = { + 0x14, 0xf9, 0xdf, 0x22, 0xe9, 0x50, 0xe4, 0xf0, 0xcd, 0x57, 0xc5, 0x9a, + 0x0e, 0xc7, 0x8c, 0x1f, 0x5c, 0x1d, 0x8b, 0x78, 0xa3, 0x9b, 0x6e, 0x7a, + 0xbf, 0x5a, 0x66, 0xb6, 0x1e, 0x5d, 0x74, 0xff, 0xe7, 0xe0, 0x46, 0xfe, + 0xc4, 0xcb, 0x83, 0x4f, +}; +static const unsigned char kat2599_addin1[] = { + 0x32, 0xd0, 0xff, 0x81, 0x2a, 0x6f, 0x6e, 0xa9, 0x3c, 0x9b, 0x34, 0x89, + 0xcb, 0xae, 0xfd, 0x1e, 0x25, 0x69, 0x2b, 0x11, 0x3d, 0xac, 0x79, 0xc4, + 0x8e, 0xd5, 0x12, 0x9b, 0xf1, 0x44, 0x20, 0xad, 0x52, 0xc3, 0xae, 0xf2, + 0xb2, 0x3f, 0x9c, 0x0b, +}; +static const unsigned char kat2599_retbits[] = { + 0x10, 0x16, 0xd5, 0x3d, 0xcb, 0x2f, 0x29, 0x1f, 0xd0, 0x42, 0xc7, 0xeb, + 0xb7, 0x92, 0x5a, 0xe9, 0xb9, 0x38, 0xcd, 0x59, 0xd2, 0xc3, 0xb3, 0x72, + 0xf4, 0xb2, 0xaa, 0x6c, 0xbf, 0xcd, 0x47, 0x17, 0x1a, 0xc9, 0x52, 0xfd, + 0xc1, 0x16, 0xa6, 0x30, 0xeb, 0x37, 0x90, 0x58, 0xbc, 0x6c, 0x90, 0xc4, + 0xc9, 0x60, 0x42, 0x69, 0x72, 0x38, 0x52, 0xe8, 0x21, 0x1e, 0xbb, 0x26, + 0x16, 0x69, 0x50, 0x4a, +}; +static const struct drbg_kat_pr_false kat2599_t = { + 3, kat2599_entropyin, kat2599_nonce, kat2599_persstr, + kat2599_entropyinreseed, kat2599_addinreseed, kat2599_addin0, + kat2599_addin1, kat2599_retbits +}; +static const struct drbg_kat kat2599 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2599_t +}; + +static const unsigned char kat2600_entropyin[] = { + 0xfc, 0xa6, 0x39, 0x84, 0x2d, 0xfa, 0x24, 0x5a, 0xff, 0xe0, 0x2a, 0xed, + 0x08, 0xc0, 0x88, 0x46, 0x34, 0x08, 0x2c, 0x40, 0xaf, 0x9e, 0x29, 0x60, + 0x8b, 0x28, 0x29, 0x11, 0x32, 0xec, 0x48, 0x7c, 0x6b, 0x5c, 0x76, 0x0f, + 0x8f, 0x1e, 0x4c, 0x92, +}; +static const unsigned char kat2600_nonce[] = {0}; +static const unsigned char kat2600_persstr[] = {0}; +static const unsigned char kat2600_entropyinreseed[] = { + 0x2d, 0x56, 0x5b, 0x40, 0x1f, 0xc0, 0xb0, 0x77, 0x2f, 0x62, 0x97, 0xf3, + 0xfc, 0x17, 0x8b, 0xb9, 0x81, 0x60, 0xc9, 0x8b, 0xcb, 0x43, 0x21, 0x56, + 0xc0, 0xa2, 0x0c, 0x2e, 0xbc, 0x2c, 0xe4, 0x78, 0x84, 0xc5, 0x21, 0xf2, + 0x4f, 0x6b, 0x3a, 0x61, +}; +static const unsigned char kat2600_addinreseed[] = { + 0xdd, 0x7f, 0xa0, 0xed, 0x97, 0x98, 0x3c, 0x64, 0xe0, 0x5f, 0x45, 0x03, + 0xbf, 0xb3, 0x85, 0xe0, 0x7a, 0xa3, 0xf9, 0xd7, 0x73, 0x87, 0x02, 0x99, + 0xb9, 0x3c, 0x46, 0x33, 0x0b, 0xac, 0x7a, 0xb4, 0x31, 0x2e, 0xd2, 0xb8, + 0x00, 0xf7, 0x1a, 0x99, +}; +static const unsigned char kat2600_addin0[] = { + 0x8a, 0x55, 0xe7, 0x2d, 0xe7, 0x27, 0x49, 0xf9, 0x04, 0xfa, 0x99, 0x2e, + 0xaa, 0x6f, 0x4f, 0xd2, 0x86, 0xe3, 0x07, 0x5c, 0xe7, 0x34, 0xf4, 0x13, + 0x27, 0xaf, 0xeb, 0xde, 0xfb, 0x18, 0xa9, 0x3b, 0xc0, 0x43, 0x7f, 0xf4, + 0xa6, 0x0e, 0x0b, 0x46, +}; +static const unsigned char kat2600_addin1[] = { + 0xf1, 0xe4, 0x03, 0xdb, 0x1f, 0x19, 0x98, 0x6a, 0xd5, 0xef, 0xd4, 0x5e, + 0x95, 0xfe, 0x4e, 0xb8, 0x72, 0xe1, 0x97, 0x4e, 0xbb, 0x55, 0xca, 0x98, + 0x1f, 0x97, 0xe6, 0x88, 0x45, 0x58, 0x6e, 0x50, 0x9b, 0xc4, 0x80, 0x5f, + 0xa0, 0x5e, 0xb3, 0xa3, +}; +static const unsigned char kat2600_retbits[] = { + 0x79, 0x90, 0xfa, 0x66, 0xca, 0x6a, 0x81, 0xcf, 0x9a, 0x49, 0xb5, 0x8b, + 0x33, 0xbe, 0x63, 0xa7, 0x79, 0xc7, 0x04, 0x20, 0xb0, 0xbc, 0x8a, 0xd7, + 0x8f, 0x4b, 0xd1, 0x89, 0x40, 0xbe, 0xd0, 0x90, 0x6b, 0x52, 0x0e, 0xc5, + 0xa5, 0xe7, 0x70, 0x5c, 0x0b, 0x89, 0xba, 0x20, 0x6a, 0x71, 0x8c, 0x37, + 0x60, 0x3c, 0x78, 0x1b, 0xea, 0x51, 0x05, 0x64, 0x2f, 0x4e, 0x75, 0x0f, + 0x7b, 0xec, 0x63, 0x7f, +}; +static const struct drbg_kat_pr_false kat2600_t = { + 4, kat2600_entropyin, kat2600_nonce, kat2600_persstr, + kat2600_entropyinreseed, kat2600_addinreseed, kat2600_addin0, + kat2600_addin1, kat2600_retbits +}; +static const struct drbg_kat kat2600 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2600_t +}; + +static const unsigned char kat2601_entropyin[] = { + 0x92, 0x21, 0xef, 0x9d, 0xda, 0x3e, 0x34, 0xaa, 0x94, 0xa7, 0x34, 0x8e, + 0x6c, 0x85, 0x20, 0x6c, 0xfb, 0xf4, 0xba, 0x5f, 0x0c, 0xa7, 0xd8, 0x7f, + 0xf0, 0xe9, 0x0d, 0x9c, 0xf0, 0xe9, 0xaa, 0xfe, 0x31, 0x0e, 0xdc, 0x48, + 0xfe, 0x16, 0x23, 0x14, +}; +static const unsigned char kat2601_nonce[] = {0}; +static const unsigned char kat2601_persstr[] = {0}; +static const unsigned char kat2601_entropyinreseed[] = { + 0xda, 0x4b, 0xd5, 0x1e, 0xd4, 0xae, 0xef, 0x2f, 0x54, 0xc6, 0x18, 0xa8, + 0x76, 0x4b, 0x28, 0xd3, 0xef, 0x43, 0x73, 0x0d, 0x5b, 0x52, 0xc0, 0xe1, + 0xfc, 0xa7, 0x44, 0x12, 0xc4, 0x7d, 0xcf, 0xd7, 0x6c, 0x64, 0xfc, 0x04, + 0xb6, 0xb2, 0x5a, 0xeb, +}; +static const unsigned char kat2601_addinreseed[] = { + 0x88, 0x90, 0xd7, 0x60, 0x4e, 0x2c, 0x7b, 0x52, 0x20, 0xec, 0xf9, 0x4d, + 0x0e, 0x01, 0xc4, 0x7a, 0x57, 0x46, 0x7d, 0x67, 0x98, 0xd4, 0xba, 0x37, + 0x7b, 0xf0, 0xde, 0x20, 0x31, 0x65, 0xe2, 0x66, 0x0e, 0xc1, 0x2e, 0x79, + 0xe2, 0x91, 0x4e, 0xb2, +}; +static const unsigned char kat2601_addin0[] = { + 0xf7, 0x81, 0x28, 0x07, 0x3c, 0x68, 0x1f, 0x1b, 0x27, 0xb7, 0x54, 0x00, + 0x12, 0x9a, 0xf2, 0xce, 0x42, 0xfc, 0x10, 0xe1, 0x79, 0xf0, 0xd4, 0x04, + 0x53, 0x08, 0xce, 0x43, 0xf5, 0xbc, 0x29, 0xb5, 0x9e, 0x17, 0xc8, 0xca, + 0xe0, 0xce, 0xbd, 0xad, +}; +static const unsigned char kat2601_addin1[] = { + 0x06, 0xf7, 0x5c, 0x13, 0xe4, 0xa9, 0x0c, 0x56, 0x99, 0xa6, 0x53, 0xb4, + 0x2d, 0xc2, 0x5a, 0x03, 0x51, 0x81, 0x85, 0xf6, 0x36, 0x12, 0x44, 0xc1, + 0x80, 0x34, 0x56, 0x3b, 0x96, 0x9c, 0x9b, 0xa0, 0x79, 0xe0, 0x2f, 0xf0, + 0x00, 0xce, 0x32, 0x09, +}; +static const unsigned char kat2601_retbits[] = { + 0x61, 0x01, 0x0d, 0xf7, 0xcb, 0x9d, 0x72, 0x26, 0xa3, 0x31, 0x28, 0x30, + 0x07, 0xfb, 0x31, 0x04, 0x56, 0x9a, 0xe1, 0x3d, 0xa8, 0x27, 0xb0, 0xe1, + 0x55, 0x91, 0xde, 0x91, 0x24, 0xb5, 0x5f, 0x8e, 0xe0, 0xc8, 0xfd, 0xc0, + 0xf3, 0x4b, 0x9b, 0x81, 0x7e, 0x26, 0x17, 0x64, 0xfe, 0x1a, 0x17, 0x94, + 0xbe, 0xe1, 0x38, 0x04, 0xe6, 0x11, 0xba, 0x54, 0x6e, 0x62, 0x35, 0x95, + 0x50, 0xd0, 0x80, 0x07, +}; +static const struct drbg_kat_pr_false kat2601_t = { + 5, kat2601_entropyin, kat2601_nonce, kat2601_persstr, + kat2601_entropyinreseed, kat2601_addinreseed, kat2601_addin0, + kat2601_addin1, kat2601_retbits +}; +static const struct drbg_kat kat2601 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2601_t +}; + +static const unsigned char kat2602_entropyin[] = { + 0x20, 0xd8, 0xaf, 0x17, 0xf8, 0xaa, 0x4a, 0x79, 0x48, 0x37, 0x8b, 0x42, + 0x3f, 0x10, 0xdf, 0xd0, 0x16, 0x8e, 0x21, 0x74, 0xb0, 0xdd, 0x23, 0xd3, + 0x79, 0x4e, 0xf2, 0xad, 0x5a, 0x28, 0x42, 0x9e, 0x6f, 0xa4, 0xec, 0xc8, + 0xea, 0x71, 0x86, 0xf9, +}; +static const unsigned char kat2602_nonce[] = {0}; +static const unsigned char kat2602_persstr[] = {0}; +static const unsigned char kat2602_entropyinreseed[] = { + 0xe5, 0x72, 0x55, 0xab, 0x59, 0x55, 0xf1, 0xae, 0xa4, 0xf5, 0x57, 0x98, + 0xf5, 0x46, 0xee, 0xc2, 0x00, 0x99, 0x6f, 0x5c, 0xa3, 0x7c, 0x50, 0xf8, + 0x07, 0x6c, 0x38, 0xff, 0x2b, 0x8b, 0x8d, 0x93, 0xf1, 0x5a, 0x38, 0xb4, + 0x39, 0x1b, 0x34, 0x9e, +}; +static const unsigned char kat2602_addinreseed[] = { + 0x4b, 0xfd, 0xb3, 0x40, 0xfb, 0xc9, 0x72, 0x6c, 0xf4, 0x42, 0x2c, 0x0a, + 0x3b, 0xf6, 0x99, 0x4c, 0x4b, 0xe3, 0x99, 0x69, 0x5c, 0x1b, 0x97, 0x22, + 0x6c, 0x9c, 0xc0, 0x15, 0xc0, 0x68, 0xc5, 0x9d, 0x94, 0x49, 0xcc, 0x1b, + 0x26, 0x87, 0x19, 0x77, +}; +static const unsigned char kat2602_addin0[] = { + 0x66, 0x25, 0xa9, 0x16, 0x84, 0xd4, 0x97, 0x61, 0x0e, 0xdd, 0xc2, 0x3c, + 0xdd, 0x29, 0x37, 0x03, 0x20, 0x92, 0x1b, 0x57, 0x2c, 0xaa, 0x38, 0xdb, + 0x38, 0x3f, 0xaf, 0xeb, 0x6d, 0xdb, 0xb9, 0xca, 0xdd, 0xfd, 0xdb, 0x9d, + 0xa1, 0x3c, 0x59, 0x5b, +}; +static const unsigned char kat2602_addin1[] = { + 0xe8, 0xbd, 0xd1, 0x1c, 0x96, 0x68, 0xd1, 0x5e, 0x6c, 0x51, 0xed, 0xd9, + 0x2e, 0x0c, 0xcb, 0xe8, 0x0b, 0xd1, 0x74, 0xa6, 0xd4, 0xe0, 0x0a, 0x9c, + 0x47, 0x57, 0x03, 0xff, 0xa8, 0x82, 0xe7, 0x13, 0x7e, 0xa9, 0x83, 0xbf, + 0x94, 0x1c, 0xe7, 0x2f, +}; +static const unsigned char kat2602_retbits[] = { + 0xe6, 0xf9, 0xda, 0xdc, 0x5e, 0x12, 0x7b, 0x4f, 0x96, 0xe2, 0x91, 0x84, + 0x17, 0xce, 0xc9, 0xc3, 0x5e, 0x0c, 0x75, 0xb6, 0xbb, 0xe6, 0xf3, 0xd9, + 0x5c, 0x52, 0x72, 0x63, 0x1e, 0x99, 0xea, 0x20, 0x89, 0xea, 0xf6, 0xc1, + 0x4d, 0x20, 0xf7, 0x7f, 0x80, 0x70, 0xa9, 0x3a, 0x75, 0x49, 0x59, 0x9e, + 0x11, 0x11, 0x9a, 0xaa, 0x1e, 0x04, 0x43, 0x80, 0x05, 0x65, 0x9c, 0x02, + 0xc4, 0x04, 0xd8, 0x70, +}; +static const struct drbg_kat_pr_false kat2602_t = { + 6, kat2602_entropyin, kat2602_nonce, kat2602_persstr, + kat2602_entropyinreseed, kat2602_addinreseed, kat2602_addin0, + kat2602_addin1, kat2602_retbits +}; +static const struct drbg_kat kat2602 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2602_t +}; + +static const unsigned char kat2603_entropyin[] = { + 0xee, 0x30, 0x04, 0x9f, 0xc1, 0x1a, 0xe1, 0x5c, 0xe0, 0x97, 0x61, 0x64, + 0x89, 0x74, 0xf0, 0xaa, 0x4f, 0xa6, 0xe6, 0xc7, 0xdb, 0x37, 0x2c, 0x1d, + 0x83, 0x20, 0x96, 0xbb, 0x24, 0xe4, 0x02, 0xdd, 0x6a, 0x68, 0x30, 0x23, + 0x3a, 0xb9, 0xb4, 0xbb, +}; +static const unsigned char kat2603_nonce[] = {0}; +static const unsigned char kat2603_persstr[] = {0}; +static const unsigned char kat2603_entropyinreseed[] = { + 0x45, 0x9c, 0xd0, 0xf4, 0x9f, 0x8a, 0x4e, 0x8b, 0x65, 0x21, 0x10, 0xc0, + 0xb1, 0x48, 0x53, 0x94, 0x61, 0xe6, 0xe7, 0xd9, 0x66, 0xd1, 0xba, 0x68, + 0xfe, 0x11, 0x17, 0x5b, 0x77, 0x8e, 0x18, 0x9b, 0xd1, 0xbc, 0xb0, 0x84, + 0x03, 0x09, 0x87, 0x49, +}; +static const unsigned char kat2603_addinreseed[] = { + 0xb2, 0xf3, 0xfe, 0x99, 0x85, 0x57, 0x25, 0x70, 0x29, 0x41, 0x43, 0x6c, + 0x2a, 0xf8, 0x76, 0x6c, 0x39, 0x7c, 0xaa, 0xad, 0xe7, 0x09, 0x58, 0xf5, + 0x6e, 0x9a, 0xc5, 0xd7, 0xf2, 0x82, 0xff, 0x92, 0x64, 0x45, 0x3b, 0x13, + 0x4d, 0x21, 0xfe, 0x03, +}; +static const unsigned char kat2603_addin0[] = { + 0x2f, 0xb4, 0x6f, 0xa2, 0x0e, 0x0e, 0xc2, 0xe4, 0x55, 0x00, 0x24, 0x7a, + 0x91, 0x65, 0x75, 0xab, 0x27, 0x12, 0xf3, 0x52, 0x0b, 0x76, 0x34, 0xdd, + 0x29, 0x30, 0x7f, 0x17, 0x60, 0xcf, 0x10, 0x2b, 0x9a, 0xff, 0x9a, 0x48, + 0x15, 0x09, 0x72, 0xf4, +}; +static const unsigned char kat2603_addin1[] = { + 0x99, 0x6e, 0x03, 0xa4, 0xd7, 0xc6, 0xaf, 0xda, 0x5d, 0xbb, 0x7f, 0x52, + 0xf6, 0xe0, 0x16, 0x61, 0x2b, 0xc5, 0xe8, 0x81, 0xe0, 0xe1, 0xab, 0x09, + 0x38, 0x29, 0x5c, 0x66, 0x3e, 0x4b, 0xc2, 0x84, 0x68, 0xbf, 0xcf, 0xdf, + 0xef, 0xb9, 0x0d, 0xed, +}; +static const unsigned char kat2603_retbits[] = { + 0x07, 0xf5, 0x2d, 0xbc, 0x71, 0x8c, 0x6e, 0x8b, 0xd8, 0x4c, 0x6b, 0x7d, + 0xa4, 0x8a, 0x22, 0x5f, 0xd1, 0xeb, 0xaa, 0x7e, 0xc3, 0x91, 0x60, 0x3e, + 0x9f, 0xed, 0xea, 0xd9, 0x22, 0x34, 0x86, 0x54, 0x70, 0xe5, 0x61, 0x11, + 0x2a, 0xe3, 0x22, 0xa1, 0xe1, 0xaa, 0xc6, 0x61, 0xbb, 0xb1, 0xba, 0x6b, + 0xf0, 0x65, 0x69, 0x15, 0x69, 0x6b, 0x9b, 0x1a, 0x08, 0x44, 0x98, 0x34, + 0xb2, 0x6c, 0xe7, 0x35, +}; +static const struct drbg_kat_pr_false kat2603_t = { + 7, kat2603_entropyin, kat2603_nonce, kat2603_persstr, + kat2603_entropyinreseed, kat2603_addinreseed, kat2603_addin0, + kat2603_addin1, kat2603_retbits +}; +static const struct drbg_kat kat2603 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2603_t +}; + +static const unsigned char kat2604_entropyin[] = { + 0xf0, 0xf5, 0xbf, 0xcb, 0x50, 0xce, 0xc0, 0x05, 0xda, 0x11, 0x8f, 0xed, + 0x88, 0x37, 0xa0, 0x2d, 0xb1, 0xec, 0xc0, 0x41, 0x7e, 0x88, 0xec, 0x45, + 0x85, 0x77, 0x3f, 0x3c, 0x20, 0xb9, 0xf9, 0x0d, 0x5e, 0x5a, 0x9e, 0x03, + 0xd0, 0x5d, 0x0d, 0x11, +}; +static const unsigned char kat2604_nonce[] = {0}; +static const unsigned char kat2604_persstr[] = {0}; +static const unsigned char kat2604_entropyinreseed[] = { + 0xb1, 0x73, 0xa1, 0x55, 0xe3, 0x25, 0xee, 0x68, 0x11, 0xec, 0xf9, 0x5b, + 0xd1, 0xb6, 0x7f, 0x3c, 0xed, 0xc7, 0x26, 0x56, 0x1e, 0x08, 0x14, 0x46, + 0xd9, 0xb4, 0xa6, 0x7e, 0x92, 0x75, 0x40, 0x7c, 0xeb, 0x07, 0x68, 0x5c, + 0x03, 0x2f, 0xf7, 0x0e, +}; +static const unsigned char kat2604_addinreseed[] = { + 0xe9, 0xbc, 0xdb, 0x16, 0x02, 0x94, 0x03, 0xb1, 0x52, 0x34, 0xdf, 0xbb, + 0x5d, 0x28, 0x0c, 0x50, 0xb0, 0x1f, 0x10, 0x53, 0x9e, 0x76, 0x7c, 0xfe, + 0x22, 0x72, 0x02, 0xce, 0x06, 0x60, 0xca, 0xa5, 0x84, 0xc3, 0x59, 0xd0, + 0x72, 0x58, 0x97, 0x1b, +}; +static const unsigned char kat2604_addin0[] = { + 0xe8, 0x47, 0xc8, 0xff, 0xa1, 0x53, 0xfb, 0x9b, 0x00, 0xfb, 0xb2, 0xc6, + 0x8e, 0x9f, 0x67, 0x7e, 0xe4, 0x81, 0xd2, 0x63, 0x42, 0xc1, 0xd4, 0x01, + 0xd2, 0x46, 0x24, 0x4c, 0x70, 0xba, 0x04, 0x96, 0x18, 0xf5, 0x16, 0x48, + 0xac, 0x98, 0xcf, 0xcc, +}; +static const unsigned char kat2604_addin1[] = { + 0xb4, 0xa4, 0x6d, 0x6a, 0x5a, 0x66, 0xc7, 0x22, 0xef, 0x75, 0xa5, 0xec, + 0x0f, 0x46, 0xdb, 0xf2, 0x6d, 0xb7, 0x90, 0x6a, 0x50, 0x01, 0x31, 0xbf, + 0xca, 0xb6, 0x62, 0x2e, 0xd3, 0xb6, 0x54, 0x01, 0xd6, 0xcd, 0x35, 0x67, + 0x2d, 0xb0, 0xf0, 0xe1, +}; +static const unsigned char kat2604_retbits[] = { + 0x2d, 0x65, 0x00, 0x76, 0x14, 0xef, 0x03, 0xd5, 0x98, 0xdb, 0xf0, 0xf7, + 0x8f, 0xd5, 0x5d, 0x56, 0x52, 0x86, 0x12, 0xd7, 0xc2, 0x12, 0x46, 0xf0, + 0xdd, 0xd4, 0xa9, 0x0d, 0x4f, 0x66, 0x61, 0xe2, 0x87, 0xd7, 0xaa, 0x90, + 0x94, 0x88, 0xe2, 0xf6, 0xb9, 0x14, 0xbf, 0x28, 0x47, 0xbd, 0x83, 0xdb, + 0x4c, 0x0a, 0xf5, 0x64, 0xb7, 0x35, 0x3e, 0xba, 0x35, 0x42, 0xf7, 0x8f, + 0x36, 0xc6, 0x9c, 0xf4, +}; +static const struct drbg_kat_pr_false kat2604_t = { + 8, kat2604_entropyin, kat2604_nonce, kat2604_persstr, + kat2604_entropyinreseed, kat2604_addinreseed, kat2604_addin0, + kat2604_addin1, kat2604_retbits +}; +static const struct drbg_kat kat2604 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2604_t +}; + +static const unsigned char kat2605_entropyin[] = { + 0xa3, 0x13, 0xf8, 0x6d, 0x26, 0xe3, 0x7d, 0x1c, 0xd1, 0x2b, 0xbb, 0x29, + 0x80, 0x18, 0xd5, 0x11, 0x3e, 0x77, 0x28, 0x1c, 0x94, 0x41, 0xb5, 0x81, + 0xf1, 0x7d, 0x82, 0xf8, 0x5b, 0x58, 0xca, 0x9d, 0x53, 0x06, 0xed, 0x8a, + 0xf6, 0xa8, 0x70, 0xfe, +}; +static const unsigned char kat2605_nonce[] = {0}; +static const unsigned char kat2605_persstr[] = {0}; +static const unsigned char kat2605_entropyinreseed[] = { + 0x99, 0x26, 0x60, 0x7c, 0xdb, 0xa5, 0x25, 0xe7, 0x90, 0xb4, 0xa3, 0xc7, + 0xd0, 0xa4, 0x99, 0xf1, 0x9c, 0x63, 0xa8, 0x25, 0x72, 0x2c, 0x64, 0x42, + 0xa8, 0x8c, 0xf8, 0x40, 0x14, 0x1d, 0xb1, 0xd8, 0x5c, 0x9d, 0x8e, 0x2c, + 0x0d, 0xb8, 0xd9, 0x81, +}; +static const unsigned char kat2605_addinreseed[] = { + 0xf0, 0x29, 0x80, 0x3f, 0x4d, 0x5c, 0xda, 0x3c, 0xe6, 0x18, 0xb1, 0x7a, + 0xfe, 0xa1, 0x2f, 0x14, 0x8e, 0xa3, 0x48, 0xe6, 0xb2, 0x6d, 0xc0, 0x47, + 0xee, 0x42, 0x78, 0xe4, 0x0e, 0x39, 0xa3, 0x9f, 0x27, 0xf1, 0x3d, 0x03, + 0x06, 0xe7, 0x0d, 0x1b, +}; +static const unsigned char kat2605_addin0[] = { + 0xd1, 0xdd, 0x47, 0xba, 0x88, 0x6d, 0x21, 0x5d, 0x8d, 0xc4, 0x44, 0xb4, + 0x51, 0xf1, 0x54, 0xf5, 0xa6, 0x6f, 0x38, 0x3f, 0x6c, 0xe1, 0xe3, 0x58, + 0x86, 0x68, 0xf8, 0xbb, 0x8c, 0xd4, 0xfe, 0xae, 0x96, 0x95, 0xc0, 0x1a, + 0x37, 0x56, 0x65, 0x60, +}; +static const unsigned char kat2605_addin1[] = { + 0xf6, 0xa8, 0xb5, 0x23, 0x9d, 0x85, 0x4c, 0x59, 0xb1, 0x44, 0x36, 0x5f, + 0x89, 0xd4, 0x73, 0x74, 0xb3, 0x80, 0xc8, 0x5c, 0x3b, 0xcb, 0x43, 0xfc, + 0x34, 0xbd, 0x4a, 0xd5, 0x58, 0xb5, 0xd4, 0xda, 0xc9, 0xe4, 0x9b, 0x31, + 0xdc, 0xee, 0x36, 0x3a, +}; +static const unsigned char kat2605_retbits[] = { + 0xb2, 0x47, 0x72, 0x53, 0xda, 0x7f, 0x7f, 0x36, 0x4b, 0x14, 0x41, 0x0a, + 0x6e, 0xe6, 0xc1, 0xcd, 0x78, 0x41, 0xf4, 0x7e, 0xf1, 0x52, 0xd9, 0x0e, + 0x4b, 0x81, 0x1e, 0xcb, 0xbf, 0x5f, 0x60, 0x82, 0xbc, 0x67, 0xa0, 0x7c, + 0xf0, 0xa0, 0x0f, 0x30, 0x4a, 0x15, 0x7e, 0x4b, 0x95, 0x57, 0x53, 0x1b, + 0x4b, 0xf4, 0xf2, 0xf9, 0x4f, 0xd7, 0x53, 0x7e, 0x00, 0x0c, 0x8d, 0x53, + 0x79, 0x43, 0x24, 0x69, +}; +static const struct drbg_kat_pr_false kat2605_t = { + 9, kat2605_entropyin, kat2605_nonce, kat2605_persstr, + kat2605_entropyinreseed, kat2605_addinreseed, kat2605_addin0, + kat2605_addin1, kat2605_retbits +}; +static const struct drbg_kat kat2605 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2605_t +}; + +static const unsigned char kat2606_entropyin[] = { + 0xbe, 0xa7, 0xd6, 0x35, 0x77, 0x5b, 0xad, 0xfc, 0xef, 0x7d, 0xa7, 0x0c, + 0xa4, 0xe4, 0x4f, 0xc1, 0x7c, 0xe8, 0x30, 0x87, 0x91, 0xee, 0x1a, 0x89, + 0xd1, 0xa6, 0x0d, 0x90, 0xf2, 0x9a, 0x59, 0xdc, 0xb7, 0xe3, 0xe2, 0x56, + 0x2d, 0x92, 0xc7, 0xd2, +}; +static const unsigned char kat2606_nonce[] = {0}; +static const unsigned char kat2606_persstr[] = {0}; +static const unsigned char kat2606_entropyinreseed[] = { + 0x3b, 0xed, 0x52, 0x54, 0x29, 0x6e, 0x8a, 0xf2, 0x39, 0xa9, 0x5f, 0x9d, + 0x3c, 0x2b, 0xbb, 0xa7, 0x52, 0x00, 0xd1, 0x9c, 0x5d, 0x84, 0x82, 0x3a, + 0x3d, 0x5c, 0x9d, 0xcd, 0x8b, 0x59, 0x61, 0x52, 0xac, 0xf2, 0x2c, 0xe4, + 0xc3, 0xa8, 0xb6, 0xa8, +}; +static const unsigned char kat2606_addinreseed[] = { + 0x8b, 0x3b, 0xf1, 0xb6, 0x60, 0x68, 0x5e, 0x08, 0xcd, 0xb3, 0xee, 0x0d, + 0x90, 0x2c, 0x0f, 0x80, 0x69, 0x36, 0x3c, 0x5d, 0xac, 0x0c, 0x3d, 0x32, + 0x2b, 0x68, 0x93, 0x5c, 0xd2, 0x6b, 0x99, 0xa0, 0x28, 0x0b, 0xf2, 0x43, + 0x26, 0x07, 0x85, 0x9e, +}; +static const unsigned char kat2606_addin0[] = { + 0x71, 0x18, 0xc9, 0xcd, 0x79, 0xda, 0x67, 0x52, 0xb7, 0x4a, 0x7c, 0xfc, + 0x33, 0x90, 0xce, 0x94, 0x9b, 0xfb, 0xf1, 0x39, 0x80, 0x36, 0x38, 0x79, + 0x9b, 0xe9, 0xbc, 0x69, 0x15, 0x5f, 0x2c, 0x4c, 0xa0, 0x98, 0xd9, 0xd8, + 0xaa, 0x13, 0x25, 0x82, +}; +static const unsigned char kat2606_addin1[] = { + 0xd5, 0x27, 0xbb, 0x22, 0x91, 0x87, 0x3b, 0x58, 0xe2, 0x3a, 0x9f, 0xde, + 0x22, 0xb1, 0x7b, 0x42, 0xc7, 0x48, 0xd3, 0x5e, 0x1e, 0x82, 0x78, 0xef, + 0x6f, 0xd5, 0xf3, 0xc5, 0x6f, 0x40, 0x64, 0xe9, 0x9b, 0x3a, 0x57, 0xc8, + 0xd2, 0xcb, 0x01, 0x66, +}; +static const unsigned char kat2606_retbits[] = { + 0x6e, 0xd8, 0xc3, 0xe8, 0x6f, 0x9c, 0xb1, 0x62, 0xdc, 0xe0, 0xd4, 0xad, + 0x8d, 0x5f, 0xa8, 0xe2, 0xef, 0x53, 0x23, 0xb8, 0xe7, 0x0d, 0x5d, 0x54, + 0x73, 0x91, 0xc8, 0x46, 0x63, 0xe3, 0x0e, 0x1f, 0xc3, 0xe7, 0x89, 0x93, + 0xfa, 0xbd, 0xaa, 0x6c, 0xa5, 0x44, 0x9e, 0x37, 0x96, 0x4c, 0x87, 0xc2, + 0xf7, 0x94, 0x4e, 0xf9, 0x47, 0x11, 0x61, 0x26, 0x04, 0xc5, 0x76, 0xe6, + 0xc3, 0xd7, 0x1a, 0x19, +}; +static const struct drbg_kat_pr_false kat2606_t = { + 10, kat2606_entropyin, kat2606_nonce, kat2606_persstr, + kat2606_entropyinreseed, kat2606_addinreseed, kat2606_addin0, + kat2606_addin1, kat2606_retbits +}; +static const struct drbg_kat kat2606 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2606_t +}; + +static const unsigned char kat2607_entropyin[] = { + 0x15, 0x0f, 0x8c, 0x56, 0x56, 0xd4, 0x72, 0x69, 0x28, 0x95, 0xca, 0x10, + 0x8e, 0x68, 0x77, 0xaf, 0xab, 0x5c, 0x8e, 0x37, 0xf4, 0xc4, 0xd9, 0xfc, + 0xcc, 0x6e, 0xe6, 0xe9, 0x46, 0x53, 0x71, 0xe3, 0x29, 0xa1, 0x71, 0xd0, + 0x1b, 0x6d, 0x7e, 0x71, +}; +static const unsigned char kat2607_nonce[] = {0}; +static const unsigned char kat2607_persstr[] = {0}; +static const unsigned char kat2607_entropyinreseed[] = { + 0x4f, 0x63, 0xc5, 0x0e, 0x65, 0x3e, 0xbf, 0x1c, 0x98, 0xc0, 0x33, 0xbc, + 0x22, 0xf2, 0xab, 0xab, 0xca, 0x5c, 0x85, 0xa7, 0xf3, 0xbc, 0xe0, 0x0f, + 0x67, 0x36, 0xeb, 0x20, 0xe1, 0x1a, 0x8c, 0x52, 0x03, 0x82, 0x09, 0xc3, + 0x3a, 0xd2, 0xff, 0x67, +}; +static const unsigned char kat2607_addinreseed[] = { + 0xad, 0x4b, 0x09, 0xc5, 0x82, 0x5c, 0x4c, 0x44, 0x90, 0x95, 0x58, 0xae, + 0x12, 0x62, 0x7d, 0x52, 0x82, 0x87, 0xf9, 0x19, 0x52, 0xf3, 0x89, 0x88, + 0x2e, 0x62, 0x0c, 0xa8, 0xd4, 0x20, 0x57, 0xe7, 0x94, 0xce, 0x5c, 0x19, + 0x49, 0x8e, 0x08, 0x76, +}; +static const unsigned char kat2607_addin0[] = { + 0xe8, 0xed, 0x80, 0x77, 0x46, 0x51, 0x50, 0xb5, 0xae, 0x54, 0x20, 0x9c, + 0xa2, 0x30, 0xc5, 0x4a, 0x79, 0xfe, 0x03, 0x96, 0xe3, 0x8d, 0x4a, 0x27, + 0x17, 0xd6, 0xbe, 0xf9, 0x59, 0x99, 0x5b, 0xf6, 0x90, 0xb9, 0xb4, 0xc5, + 0x11, 0x93, 0xc7, 0x9c, +}; +static const unsigned char kat2607_addin1[] = { + 0x9c, 0xce, 0xac, 0x68, 0xa4, 0xa4, 0xc6, 0xe1, 0x11, 0x5d, 0xad, 0xff, + 0x7a, 0xa7, 0x77, 0x29, 0x6a, 0xf2, 0x2f, 0xde, 0x48, 0xc8, 0xd7, 0x25, + 0xa0, 0x70, 0x56, 0xee, 0xcc, 0x22, 0x0c, 0x3a, 0x40, 0x7e, 0x2c, 0xd8, + 0xf4, 0x01, 0x93, 0x47, +}; +static const unsigned char kat2607_retbits[] = { + 0x2c, 0x71, 0xcb, 0xdf, 0x0c, 0x7c, 0xf3, 0xc4, 0x77, 0x13, 0xab, 0xe5, + 0x93, 0x22, 0x8c, 0x42, 0x33, 0xe3, 0x80, 0x58, 0x0f, 0x05, 0x80, 0x76, + 0x31, 0xec, 0x1e, 0x49, 0x72, 0x95, 0xc2, 0x8a, 0x55, 0x3f, 0xe5, 0x5b, + 0xc4, 0x34, 0xcd, 0x76, 0xd9, 0xdb, 0x10, 0xc3, 0x07, 0xca, 0xa4, 0xc2, + 0xa4, 0x82, 0x55, 0xb2, 0xe8, 0xd7, 0xbf, 0x30, 0x13, 0x66, 0xab, 0x40, + 0xeb, 0x95, 0x73, 0xef, +}; +static const struct drbg_kat_pr_false kat2607_t = { + 11, kat2607_entropyin, kat2607_nonce, kat2607_persstr, + kat2607_entropyinreseed, kat2607_addinreseed, kat2607_addin0, + kat2607_addin1, kat2607_retbits +}; +static const struct drbg_kat kat2607 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2607_t +}; + +static const unsigned char kat2608_entropyin[] = { + 0xfa, 0x5e, 0xa6, 0xbd, 0x7f, 0x8a, 0x4d, 0x05, 0x90, 0x57, 0x82, 0x2c, + 0xb6, 0xda, 0xdb, 0xfb, 0x51, 0xed, 0x0a, 0xdc, 0x92, 0x77, 0x71, 0xe0, + 0x13, 0x0e, 0xff, 0xa6, 0xdc, 0x63, 0x83, 0xba, 0x04, 0x8e, 0xa5, 0x22, + 0xbc, 0x38, 0xeb, 0x6c, +}; +static const unsigned char kat2608_nonce[] = {0}; +static const unsigned char kat2608_persstr[] = {0}; +static const unsigned char kat2608_entropyinreseed[] = { + 0x32, 0xbf, 0x4f, 0xf5, 0xd9, 0x6f, 0x2e, 0x73, 0x8e, 0x1d, 0xca, 0x1f, + 0xa6, 0xfd, 0xc6, 0x84, 0x1b, 0x08, 0x57, 0x60, 0xb2, 0x33, 0x0c, 0x44, + 0xa5, 0x10, 0x31, 0x7c, 0x33, 0xa3, 0x0c, 0xd0, 0xea, 0x67, 0x49, 0x12, + 0x59, 0xc0, 0xec, 0xb3, +}; +static const unsigned char kat2608_addinreseed[] = { + 0xb1, 0xbc, 0x3a, 0xde, 0x5f, 0x8e, 0x28, 0xee, 0xd4, 0x1f, 0xca, 0x48, + 0xb5, 0xf3, 0xc1, 0xed, 0xe5, 0x7b, 0x1e, 0x87, 0x95, 0x5e, 0x10, 0xf4, + 0x71, 0xc6, 0x44, 0xc4, 0x7a, 0xb1, 0xdb, 0xf5, 0xd9, 0x20, 0x98, 0xcc, + 0x23, 0x71, 0x68, 0x29, +}; +static const unsigned char kat2608_addin0[] = { + 0x78, 0xe9, 0xb9, 0x91, 0x89, 0xe3, 0x60, 0x46, 0x99, 0x2b, 0xf8, 0x2f, + 0x58, 0x8b, 0xb8, 0x14, 0x5b, 0x16, 0xf3, 0x5e, 0x65, 0x37, 0xf7, 0x62, + 0x05, 0xf1, 0xb9, 0x9b, 0x9a, 0xe9, 0x2a, 0x84, 0xc2, 0x9b, 0x65, 0xb9, + 0xd0, 0x7c, 0x1c, 0x4c, +}; +static const unsigned char kat2608_addin1[] = { + 0x5c, 0xff, 0xda, 0x30, 0xab, 0x0d, 0x71, 0xfe, 0x82, 0x11, 0x99, 0xae, + 0x88, 0x21, 0x8b, 0x82, 0x30, 0x34, 0x5c, 0x94, 0xf6, 0x67, 0xb6, 0x64, + 0x2d, 0xb6, 0x54, 0x21, 0x4f, 0x3a, 0x15, 0xa7, 0xc6, 0xf1, 0x60, 0x95, + 0x33, 0xbc, 0x6e, 0x52, +}; +static const unsigned char kat2608_retbits[] = { + 0x3e, 0x32, 0x63, 0xc6, 0xff, 0x3f, 0x28, 0x61, 0xfe, 0x59, 0xfa, 0x76, + 0x4d, 0xd2, 0x03, 0x48, 0x99, 0x17, 0xdd, 0x55, 0xe0, 0x07, 0xe1, 0xac, + 0x28, 0xed, 0xa8, 0x50, 0x05, 0x3a, 0x94, 0xef, 0x3c, 0x54, 0x00, 0x8d, + 0x06, 0xd9, 0xdc, 0xd2, 0x78, 0x17, 0x1c, 0xe6, 0x92, 0x69, 0xb4, 0x7e, + 0x7e, 0xf8, 0xc0, 0x4d, 0x5a, 0xd1, 0x7c, 0xda, 0xf5, 0xaf, 0xec, 0x02, + 0x1a, 0xca, 0xe1, 0x6e, +}; +static const struct drbg_kat_pr_false kat2608_t = { + 12, kat2608_entropyin, kat2608_nonce, kat2608_persstr, + kat2608_entropyinreseed, kat2608_addinreseed, kat2608_addin0, + kat2608_addin1, kat2608_retbits +}; +static const struct drbg_kat kat2608 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2608_t +}; + +static const unsigned char kat2609_entropyin[] = { + 0x8d, 0xe5, 0x81, 0x4b, 0x66, 0x83, 0x87, 0x41, 0x88, 0x09, 0xcc, 0xee, + 0xc4, 0x66, 0x7f, 0x7b, 0x67, 0xdb, 0x3c, 0x87, 0x55, 0xd7, 0xf0, 0x45, + 0x0b, 0x65, 0x06, 0x8f, 0x84, 0x6c, 0x34, 0x1c, 0xd1, 0xc4, 0x5a, 0xfa, + 0x4a, 0xcb, 0x39, 0x64, +}; +static const unsigned char kat2609_nonce[] = {0}; +static const unsigned char kat2609_persstr[] = {0}; +static const unsigned char kat2609_entropyinreseed[] = { + 0x48, 0x64, 0x00, 0xe9, 0x61, 0x34, 0xc7, 0xfc, 0x67, 0x8a, 0x9d, 0x5d, + 0x7b, 0xd2, 0x2e, 0x8a, 0xf0, 0x92, 0x7a, 0x09, 0x06, 0x36, 0x02, 0x9b, + 0x61, 0x3a, 0xfd, 0x1b, 0x1b, 0x8c, 0x6b, 0x97, 0xdd, 0xf5, 0x7e, 0xef, + 0xba, 0xf4, 0x1a, 0xe8, +}; +static const unsigned char kat2609_addinreseed[] = { + 0x77, 0x30, 0x6a, 0xb1, 0x97, 0xaa, 0x94, 0x6c, 0xaf, 0x00, 0x04, 0x46, + 0x85, 0x4d, 0x9a, 0x0b, 0x44, 0xbf, 0x6d, 0x48, 0x22, 0xb2, 0x27, 0xc4, + 0x27, 0x56, 0xe3, 0xb7, 0x35, 0x1e, 0xd6, 0x28, 0x4c, 0xa1, 0x4b, 0x07, + 0xb1, 0x64, 0x81, 0x38, +}; +static const unsigned char kat2609_addin0[] = { + 0x44, 0x0b, 0xe6, 0x64, 0x8f, 0xb2, 0x53, 0xca, 0xc8, 0xb4, 0xfa, 0x2f, + 0xf0, 0x64, 0x4c, 0x30, 0x54, 0x15, 0xc7, 0x17, 0x53, 0x10, 0x8e, 0xae, + 0x20, 0x07, 0x34, 0x83, 0x89, 0xf5, 0xba, 0x83, 0xa8, 0x71, 0x28, 0x79, + 0xf5, 0xd9, 0x02, 0x15, +}; +static const unsigned char kat2609_addin1[] = { + 0xbc, 0x00, 0x5a, 0x5a, 0xb1, 0x1b, 0x11, 0x44, 0x1c, 0x1d, 0x7b, 0x69, + 0x6e, 0x23, 0x1d, 0xfe, 0x74, 0xfc, 0x4c, 0xa0, 0x68, 0x9d, 0xe4, 0xa4, + 0xc2, 0x6c, 0x65, 0x55, 0xcd, 0x19, 0xc1, 0xd9, 0x8d, 0x88, 0xa8, 0xae, + 0xc4, 0x78, 0x49, 0x8b, +}; +static const unsigned char kat2609_retbits[] = { + 0x00, 0x34, 0x9b, 0xcd, 0xf0, 0xc4, 0xdb, 0x17, 0x34, 0x2f, 0xdb, 0xa2, + 0xdf, 0x34, 0x51, 0xdc, 0x07, 0x95, 0x8a, 0x23, 0xdf, 0x82, 0xc8, 0x90, + 0x73, 0x96, 0xa3, 0x2b, 0xd5, 0x4e, 0x8b, 0xb2, 0xcb, 0x24, 0x6e, 0x31, + 0xe0, 0xa2, 0xfb, 0xfe, 0x80, 0xd1, 0xad, 0x43, 0x86, 0x92, 0xdb, 0x16, + 0x2d, 0xe9, 0x4d, 0xf7, 0xbc, 0x49, 0x39, 0xbf, 0xf7, 0x34, 0x36, 0x13, + 0xcf, 0x40, 0x06, 0xb2, +}; +static const struct drbg_kat_pr_false kat2609_t = { + 13, kat2609_entropyin, kat2609_nonce, kat2609_persstr, + kat2609_entropyinreseed, kat2609_addinreseed, kat2609_addin0, + kat2609_addin1, kat2609_retbits +}; +static const struct drbg_kat kat2609 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2609_t +}; + +static const unsigned char kat2610_entropyin[] = { + 0xc4, 0x76, 0x3f, 0x91, 0x72, 0x8f, 0x95, 0x70, 0x06, 0xda, 0x20, 0xa8, + 0x1f, 0xae, 0x7d, 0xfc, 0xda, 0x64, 0x9b, 0xe1, 0xa6, 0x41, 0xdf, 0x44, + 0xd7, 0xce, 0x12, 0x6f, 0xdc, 0x0d, 0x13, 0xd9, 0xee, 0xe6, 0x4e, 0xcc, + 0x1e, 0x0e, 0xea, 0xf0, +}; +static const unsigned char kat2610_nonce[] = {0}; +static const unsigned char kat2610_persstr[] = {0}; +static const unsigned char kat2610_entropyinreseed[] = { + 0xc5, 0xd8, 0xfe, 0x8f, 0x0e, 0x54, 0xc5, 0x23, 0x86, 0x1e, 0x80, 0x14, + 0x6a, 0x0d, 0x44, 0x5a, 0x4f, 0xa0, 0xe9, 0xaa, 0x55, 0x67, 0x5e, 0x7c, + 0x94, 0x2c, 0x06, 0x60, 0x1e, 0xb9, 0x82, 0x58, 0xfa, 0x54, 0x9f, 0xf4, + 0x1e, 0xa6, 0xaf, 0x38, +}; +static const unsigned char kat2610_addinreseed[] = { + 0x96, 0x25, 0x6e, 0xc3, 0x2a, 0x07, 0x6f, 0x5c, 0xc0, 0x35, 0xc6, 0x3d, + 0x9d, 0x2d, 0x62, 0x32, 0x69, 0x9d, 0x3c, 0x9a, 0x2b, 0xfc, 0xbe, 0x8d, + 0x7d, 0x11, 0x01, 0xb9, 0x2c, 0x87, 0x58, 0xe7, 0x51, 0xfb, 0xb9, 0xc9, + 0x44, 0xf2, 0x4c, 0x57, +}; +static const unsigned char kat2610_addin0[] = { + 0xbf, 0x76, 0x97, 0x37, 0x91, 0xb5, 0x2d, 0x93, 0x87, 0xe2, 0xa3, 0x6f, + 0x3a, 0xb3, 0x62, 0x0b, 0xb9, 0x83, 0xdc, 0xd2, 0x39, 0x9f, 0xef, 0x3c, + 0xc6, 0xbf, 0x4c, 0xf8, 0x6c, 0xf7, 0x88, 0x99, 0x64, 0x30, 0x0f, 0xd4, + 0xf9, 0x85, 0x1a, 0xa6, +}; +static const unsigned char kat2610_addin1[] = { + 0x20, 0x89, 0xac, 0xf7, 0xac, 0xa4, 0x3a, 0x77, 0xd8, 0x45, 0x9d, 0x4f, + 0x38, 0x49, 0x19, 0x57, 0x5e, 0xd8, 0x8c, 0x7c, 0x47, 0x59, 0xb9, 0xdd, + 0x70, 0x33, 0xa1, 0x32, 0xa8, 0x5c, 0x2e, 0xc6, 0xc7, 0x10, 0x25, 0xc1, + 0x66, 0x08, 0x3b, 0xc7, +}; +static const unsigned char kat2610_retbits[] = { + 0x81, 0x30, 0x9a, 0x10, 0xac, 0x3f, 0x02, 0xd3, 0xfe, 0xe0, 0x49, 0xa5, + 0xdd, 0xb9, 0xf0, 0x2f, 0x64, 0xdf, 0xf3, 0xd6, 0xb7, 0x52, 0x59, 0xd5, + 0x61, 0x92, 0x1a, 0x83, 0x49, 0xb3, 0x00, 0x54, 0x05, 0x9b, 0x2a, 0xf8, + 0x1c, 0x6f, 0x7d, 0x50, 0x18, 0x9a, 0x0b, 0xb6, 0xd3, 0x60, 0xda, 0x06, + 0xbc, 0xbd, 0xc9, 0x44, 0x99, 0x7d, 0x6f, 0x8b, 0x05, 0x1f, 0x23, 0x99, + 0x8c, 0x8c, 0x36, 0xae, +}; +static const struct drbg_kat_pr_false kat2610_t = { + 14, kat2610_entropyin, kat2610_nonce, kat2610_persstr, + kat2610_entropyinreseed, kat2610_addinreseed, kat2610_addin0, + kat2610_addin1, kat2610_retbits +}; +static const struct drbg_kat kat2610 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat2610_t +}; + +static const unsigned char kat2611_entropyin[] = { + 0xc1, 0x80, 0x5a, 0xcd, 0x7f, 0xbd, 0x1a, 0x8e, 0x59, 0x8a, 0x5d, 0x6b, + 0x71, 0x8e, 0x62, 0xa9, 0xa8, 0x04, 0x01, 0x7b, 0xea, 0x21, 0x56, 0xa5, + 0x76, 0xd0, 0xc7, 0x9a, 0xc1, 0xb6, 0x5d, 0xe8, 0xb9, 0xa9, 0xf1, 0x6b, + 0x2d, 0x39, 0xf5, 0x17, +}; +static const unsigned char kat2611_nonce[] = {0}; +static const unsigned char kat2611_persstr[] = { + 0x36, 0x4a, 0x2d, 0x14, 0xae, 0xaa, 0x9e, 0xff, 0xa3, 0xda, 0x10, 0x8d, + 0x88, 0x6c, 0x8b, 0xb1, 0x27, 0x7d, 0x3c, 0x79, 0xe4, 0x7d, 0x44, 0x4e, + 0xd9, 0x3c, 0xb6, 0x7f, 0xe2, 0x82, 0xf8, 0xd0, 0x16, 0x2b, 0xe2, 0x62, + 0xec, 0x43, 0x5c, 0x24, +}; +static const unsigned char kat2611_entropyinreseed[] = { + 0x6b, 0xd4, 0x3a, 0xf1, 0x8c, 0x45, 0x58, 0xa4, 0x3d, 0x85, 0x50, 0x12, + 0x74, 0xfb, 0x96, 0xb0, 0x97, 0x08, 0xe1, 0x21, 0xa7, 0x4d, 0x44, 0x4a, + 0x14, 0x88, 0x6c, 0x47, 0x1f, 0x8d, 0xd0, 0xe1, 0xb6, 0x0c, 0xdf, 0xd6, + 0xcd, 0xcb, 0xa9, 0x9f, +}; +static const unsigned char kat2611_addinreseed[] = {0}; +static const unsigned char kat2611_addin0[] = {0}; +static const unsigned char kat2611_addin1[] = {0}; +static const unsigned char kat2611_retbits[] = { + 0x59, 0x93, 0x40, 0x2f, 0x0e, 0x1f, 0xbc, 0xef, 0x2b, 0x31, 0x59, 0x28, + 0xe2, 0x6e, 0x14, 0xae, 0x8d, 0x9e, 0x6d, 0xc4, 0x18, 0xe9, 0xcb, 0xc9, + 0x86, 0x62, 0x3e, 0x13, 0x00, 0xd2, 0xcc, 0x78, 0x98, 0x54, 0xed, 0x7c, + 0x5d, 0xf9, 0x3e, 0xbd, 0x42, 0xde, 0xdc, 0xde, 0xc7, 0x03, 0x15, 0x3f, + 0x12, 0x78, 0x32, 0x43, 0xa2, 0x34, 0x46, 0x4c, 0x00, 0x36, 0x0c, 0xe5, + 0x40, 0x51, 0x00, 0xaa, +}; +static const struct drbg_kat_pr_false kat2611_t = { + 0, kat2611_entropyin, kat2611_nonce, kat2611_persstr, + kat2611_entropyinreseed, kat2611_addinreseed, kat2611_addin0, + kat2611_addin1, kat2611_retbits +}; +static const struct drbg_kat kat2611 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2611_t +}; + +static const unsigned char kat2612_entropyin[] = { + 0xfb, 0xe6, 0x2f, 0x35, 0x35, 0x19, 0xed, 0xa7, 0x41, 0xda, 0x26, 0x0c, + 0x97, 0x28, 0x9c, 0xa5, 0x66, 0xe5, 0x42, 0x44, 0x95, 0xcc, 0x65, 0x91, + 0xb9, 0xbe, 0x7d, 0xed, 0x77, 0xd4, 0x90, 0x74, 0x76, 0x6b, 0x64, 0x39, + 0x4e, 0xda, 0xe2, 0xff, +}; +static const unsigned char kat2612_nonce[] = {0}; +static const unsigned char kat2612_persstr[] = { + 0x6e, 0x47, 0x56, 0x68, 0xd4, 0xd7, 0x19, 0x44, 0xd8, 0xe7, 0x3e, 0xe2, + 0x93, 0xb1, 0xc5, 0x8f, 0xe4, 0x7a, 0x73, 0x03, 0xd8, 0x1c, 0xce, 0x68, + 0x65, 0x5d, 0xa8, 0x5b, 0x59, 0x42, 0x3f, 0xb7, 0xcb, 0xdc, 0xb2, 0xdd, + 0x71, 0x9f, 0x48, 0xb6, +}; +static const unsigned char kat2612_entropyinreseed[] = { + 0x4b, 0x25, 0xa9, 0x6e, 0x85, 0x4b, 0xde, 0x02, 0x3e, 0x1b, 0x9c, 0xee, + 0x72, 0xab, 0xc1, 0xd6, 0x39, 0xa8, 0x4e, 0xfa, 0x87, 0x6b, 0xd7, 0x63, + 0xb0, 0x92, 0xcb, 0x93, 0x60, 0x37, 0x41, 0x5e, 0x16, 0xac, 0xa4, 0x5d, + 0x22, 0xae, 0x82, 0x2b, +}; +static const unsigned char kat2612_addinreseed[] = {0}; +static const unsigned char kat2612_addin0[] = {0}; +static const unsigned char kat2612_addin1[] = {0}; +static const unsigned char kat2612_retbits[] = { + 0x25, 0x8a, 0x9a, 0xb1, 0x4b, 0x16, 0xcb, 0x18, 0xeb, 0xe8, 0x0b, 0x4f, + 0x4a, 0x74, 0x9e, 0x4f, 0xa1, 0x89, 0x4a, 0x43, 0xd8, 0xb6, 0xab, 0x62, + 0x46, 0x27, 0xaf, 0x1d, 0xb8, 0x57, 0xc1, 0xfd, 0xd0, 0xf6, 0x0f, 0xc3, + 0x45, 0x50, 0x72, 0x2d, 0xbe, 0xcc, 0xad, 0x4d, 0xe7, 0xb0, 0x63, 0x16, + 0x1b, 0xaa, 0x45, 0x04, 0x9b, 0xe3, 0xab, 0xdf, 0x28, 0x68, 0x92, 0xc2, + 0x72, 0x87, 0xb6, 0x7a, +}; +static const struct drbg_kat_pr_false kat2612_t = { + 1, kat2612_entropyin, kat2612_nonce, kat2612_persstr, + kat2612_entropyinreseed, kat2612_addinreseed, kat2612_addin0, + kat2612_addin1, kat2612_retbits +}; +static const struct drbg_kat kat2612 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2612_t +}; + +static const unsigned char kat2613_entropyin[] = { + 0xe3, 0xd0, 0x30, 0x44, 0x40, 0x10, 0x5d, 0xe3, 0x61, 0x77, 0x44, 0x6d, + 0x97, 0xe3, 0x7c, 0x2e, 0xb2, 0x9b, 0xd0, 0xd0, 0xd4, 0x07, 0x0e, 0xe1, + 0x8f, 0x3a, 0xf1, 0x42, 0x43, 0x49, 0xd8, 0x60, 0xa9, 0xc4, 0xba, 0x9f, + 0x32, 0xe2, 0xbc, 0x1d, +}; +static const unsigned char kat2613_nonce[] = {0}; +static const unsigned char kat2613_persstr[] = { + 0x7b, 0x7b, 0xbe, 0x07, 0xf3, 0x67, 0x2a, 0x3b, 0xf2, 0x66, 0xae, 0x2d, + 0xcd, 0x50, 0x3b, 0x94, 0x2a, 0xbb, 0xd6, 0xd6, 0x37, 0x9d, 0x59, 0xca, + 0xac, 0x34, 0xee, 0xd9, 0x6b, 0xea, 0xb8, 0xcc, 0x2e, 0x51, 0xc5, 0x31, + 0xf4, 0x77, 0xee, 0x1c, +}; +static const unsigned char kat2613_entropyinreseed[] = { + 0x2a, 0x62, 0xd0, 0x6d, 0xfb, 0x47, 0xb2, 0x83, 0x4e, 0x09, 0x9f, 0xc6, + 0x6e, 0xf5, 0x0c, 0x34, 0x90, 0xe7, 0x34, 0x24, 0x25, 0x45, 0xe5, 0x0a, + 0xd8, 0xc6, 0x52, 0x74, 0x87, 0xfc, 0xa4, 0xb7, 0xbc, 0x15, 0x20, 0x93, + 0x6d, 0xd3, 0x6d, 0x0b, +}; +static const unsigned char kat2613_addinreseed[] = {0}; +static const unsigned char kat2613_addin0[] = {0}; +static const unsigned char kat2613_addin1[] = {0}; +static const unsigned char kat2613_retbits[] = { + 0xed, 0xa9, 0xfd, 0xa6, 0xad, 0xe2, 0x28, 0x13, 0x32, 0x44, 0xb5, 0x91, + 0xfc, 0x63, 0xa7, 0xf9, 0xab, 0xf0, 0xb6, 0x85, 0x79, 0xaf, 0x45, 0xd4, + 0x45, 0x6b, 0x00, 0xa3, 0x90, 0x82, 0xdc, 0xf6, 0xd3, 0x02, 0x98, 0x65, + 0xb2, 0x03, 0xf1, 0xd0, 0x44, 0xf4, 0xb3, 0x0f, 0x4f, 0x67, 0x39, 0x47, + 0x66, 0xc1, 0xad, 0xd5, 0x70, 0x48, 0xba, 0x45, 0x74, 0x8e, 0x9d, 0xfc, + 0x6e, 0x59, 0x01, 0xda, +}; +static const struct drbg_kat_pr_false kat2613_t = { + 2, kat2613_entropyin, kat2613_nonce, kat2613_persstr, + kat2613_entropyinreseed, kat2613_addinreseed, kat2613_addin0, + kat2613_addin1, kat2613_retbits +}; +static const struct drbg_kat kat2613 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2613_t +}; + +static const unsigned char kat2614_entropyin[] = { + 0x64, 0x08, 0x28, 0x7f, 0x33, 0x97, 0xcb, 0x4e, 0xbc, 0xa2, 0xb5, 0x31, + 0xef, 0x99, 0xb1, 0xfc, 0x18, 0x7a, 0x68, 0xa4, 0x04, 0x7e, 0xe9, 0x07, + 0x56, 0x12, 0x04, 0x68, 0x2c, 0x71, 0x47, 0xe9, 0xb5, 0x63, 0xb1, 0x0a, + 0xff, 0x89, 0x88, 0xb5, +}; +static const unsigned char kat2614_nonce[] = {0}; +static const unsigned char kat2614_persstr[] = { + 0xea, 0x02, 0xe2, 0x32, 0x6b, 0x5e, 0x8e, 0x3f, 0x2c, 0x80, 0xe3, 0xcd, + 0xd0, 0x1b, 0x78, 0x98, 0x47, 0x31, 0xae, 0x13, 0x80, 0x2a, 0xd0, 0xbd, + 0x72, 0xea, 0x5e, 0xe3, 0xd3, 0x52, 0xd7, 0x31, 0x82, 0xcf, 0x4a, 0x9f, + 0x5b, 0x45, 0x9d, 0x81, +}; +static const unsigned char kat2614_entropyinreseed[] = { + 0x84, 0xa9, 0x5e, 0xe2, 0xd3, 0x59, 0x74, 0x71, 0x0a, 0x7f, 0xc6, 0xc4, + 0x83, 0x3c, 0x83, 0x1c, 0x06, 0x00, 0x01, 0x9f, 0x25, 0xcb, 0x62, 0x54, + 0xfe, 0x88, 0x69, 0x10, 0x9e, 0x81, 0xe0, 0x86, 0x67, 0x51, 0x7b, 0xbf, + 0xa9, 0xe8, 0x1a, 0xf0, +}; +static const unsigned char kat2614_addinreseed[] = {0}; +static const unsigned char kat2614_addin0[] = {0}; +static const unsigned char kat2614_addin1[] = {0}; +static const unsigned char kat2614_retbits[] = { + 0xeb, 0xab, 0x51, 0xb0, 0x46, 0xcc, 0x15, 0x77, 0xd0, 0xe9, 0x32, 0xe5, + 0x68, 0x3a, 0x06, 0x9b, 0x07, 0xbe, 0x28, 0x6f, 0xee, 0x08, 0x64, 0x43, + 0xd0, 0x1f, 0xd3, 0x00, 0x02, 0x5a, 0x62, 0xb7, 0x06, 0x34, 0x95, 0x6e, + 0x8c, 0x37, 0xa7, 0xbd, 0x18, 0x09, 0xdb, 0xa4, 0x9e, 0x11, 0x44, 0x21, + 0x75, 0x91, 0xf2, 0x8c, 0x9d, 0xa9, 0xc3, 0xfd, 0x21, 0x41, 0xbd, 0xdc, + 0xe4, 0x2a, 0xc8, 0xb4, +}; +static const struct drbg_kat_pr_false kat2614_t = { + 3, kat2614_entropyin, kat2614_nonce, kat2614_persstr, + kat2614_entropyinreseed, kat2614_addinreseed, kat2614_addin0, + kat2614_addin1, kat2614_retbits +}; +static const struct drbg_kat kat2614 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2614_t +}; + +static const unsigned char kat2615_entropyin[] = { + 0x89, 0x9a, 0xca, 0x60, 0xa3, 0x07, 0x62, 0x11, 0xe2, 0xe2, 0x98, 0x7b, + 0x55, 0xb9, 0x0a, 0xa0, 0x01, 0xfb, 0xae, 0x82, 0x48, 0x7a, 0xa1, 0x1f, + 0x3c, 0xbc, 0xad, 0xdd, 0x49, 0xbb, 0xd1, 0x32, 0xc7, 0x46, 0xdd, 0xde, + 0x61, 0xd4, 0x32, 0x1d, +}; +static const unsigned char kat2615_nonce[] = {0}; +static const unsigned char kat2615_persstr[] = { + 0xb1, 0x79, 0x7f, 0xf6, 0x84, 0xcc, 0x5e, 0x4c, 0x7e, 0xb4, 0xa7, 0x79, + 0xc8, 0x59, 0xe3, 0xf1, 0xde, 0x79, 0xf8, 0xa5, 0x67, 0xef, 0xe1, 0xe8, + 0x68, 0x94, 0x5c, 0x67, 0xdc, 0x6f, 0xdb, 0x91, 0xfc, 0xfb, 0x98, 0xe3, + 0x40, 0xe6, 0x98, 0x57, +}; +static const unsigned char kat2615_entropyinreseed[] = { + 0xaf, 0x9d, 0x3c, 0x7d, 0x7a, 0x4d, 0x23, 0xba, 0xe1, 0xe2, 0xea, 0x1d, + 0x38, 0x28, 0x4d, 0x1b, 0xa9, 0xc8, 0x7f, 0xb9, 0x1f, 0x16, 0xf2, 0x24, + 0x99, 0xdd, 0x61, 0x31, 0x63, 0x6c, 0xcb, 0x84, 0xe8, 0x5b, 0x20, 0x26, + 0x95, 0x5c, 0xba, 0x4a, +}; +static const unsigned char kat2615_addinreseed[] = {0}; +static const unsigned char kat2615_addin0[] = {0}; +static const unsigned char kat2615_addin1[] = {0}; +static const unsigned char kat2615_retbits[] = { + 0x32, 0x0d, 0x59, 0xb9, 0x33, 0x62, 0x81, 0xa3, 0xec, 0x59, 0x25, 0x3f, + 0x36, 0xde, 0xc4, 0x8c, 0x1c, 0x68, 0x68, 0x95, 0xe8, 0xba, 0xd8, 0xf7, + 0x01, 0xd7, 0x67, 0x21, 0x85, 0x27, 0x48, 0xcf, 0x70, 0xb3, 0x38, 0x56, + 0x3c, 0x7f, 0x4f, 0xb8, 0x19, 0x98, 0x96, 0xaa, 0x2d, 0x37, 0xcb, 0x2a, + 0xf3, 0xe4, 0x14, 0x02, 0x90, 0xe4, 0x75, 0x28, 0x52, 0xc6, 0x42, 0xe0, + 0x7d, 0x5a, 0x60, 0x96, +}; +static const struct drbg_kat_pr_false kat2615_t = { + 4, kat2615_entropyin, kat2615_nonce, kat2615_persstr, + kat2615_entropyinreseed, kat2615_addinreseed, kat2615_addin0, + kat2615_addin1, kat2615_retbits +}; +static const struct drbg_kat kat2615 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2615_t +}; + +static const unsigned char kat2616_entropyin[] = { + 0x35, 0x52, 0xd6, 0xad, 0x42, 0x44, 0x0b, 0x56, 0x46, 0x27, 0xfb, 0x40, + 0xf8, 0xe5, 0xba, 0x60, 0xfb, 0x95, 0x5d, 0x33, 0x40, 0xc4, 0x23, 0x09, + 0xd4, 0xb2, 0xf5, 0x2e, 0xe9, 0xc5, 0x16, 0xf2, 0x6d, 0x94, 0x6a, 0x35, + 0x33, 0x52, 0xba, 0x82, +}; +static const unsigned char kat2616_nonce[] = {0}; +static const unsigned char kat2616_persstr[] = { + 0xeb, 0x5c, 0x00, 0xd6, 0xce, 0x44, 0xff, 0x83, 0x75, 0x9f, 0x5c, 0x65, + 0x7c, 0x55, 0x81, 0x0a, 0xc1, 0x3c, 0x8d, 0xf1, 0x75, 0x60, 0x33, 0xc0, + 0x20, 0x9f, 0xb6, 0xbe, 0xaa, 0x7e, 0x1c, 0xb0, 0x86, 0x23, 0x1d, 0xbd, + 0x75, 0xc0, 0xde, 0x3d, +}; +static const unsigned char kat2616_entropyinreseed[] = { + 0x30, 0x0d, 0x3e, 0xf9, 0x95, 0x24, 0x61, 0x72, 0x3e, 0xc0, 0x9e, 0xa5, + 0x0e, 0x41, 0x7c, 0x13, 0x3f, 0x6d, 0x00, 0x32, 0x94, 0x19, 0x9a, 0x69, + 0x92, 0xd5, 0x0d, 0x55, 0xd3, 0xca, 0x27, 0x3e, 0x7b, 0x1d, 0x05, 0x4f, + 0x18, 0xc5, 0x35, 0x7b, +}; +static const unsigned char kat2616_addinreseed[] = {0}; +static const unsigned char kat2616_addin0[] = {0}; +static const unsigned char kat2616_addin1[] = {0}; +static const unsigned char kat2616_retbits[] = { + 0xba, 0x59, 0xeb, 0x9f, 0x44, 0x4d, 0xef, 0x7b, 0x22, 0x8f, 0xcf, 0x04, + 0x86, 0xba, 0x25, 0xa6, 0xb2, 0x6d, 0xc6, 0x34, 0x02, 0xc6, 0xae, 0x7c, + 0xfc, 0x80, 0xf4, 0x61, 0x4d, 0x33, 0x1e, 0xf4, 0x78, 0x21, 0x94, 0xa7, + 0xd6, 0xc5, 0x81, 0x88, 0x69, 0xcd, 0x5b, 0x63, 0xbc, 0x27, 0x77, 0xbe, + 0x77, 0xe7, 0xde, 0x8e, 0xf3, 0x79, 0x5e, 0xa8, 0x6f, 0xb3, 0x63, 0xd8, + 0x09, 0x94, 0xb0, 0x04, +}; +static const struct drbg_kat_pr_false kat2616_t = { + 5, kat2616_entropyin, kat2616_nonce, kat2616_persstr, + kat2616_entropyinreseed, kat2616_addinreseed, kat2616_addin0, + kat2616_addin1, kat2616_retbits +}; +static const struct drbg_kat kat2616 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2616_t +}; + +static const unsigned char kat2617_entropyin[] = { + 0xc3, 0xd2, 0x9d, 0xfa, 0x16, 0xf9, 0xa0, 0x60, 0x91, 0x02, 0xf0, 0xbc, + 0xcf, 0x17, 0xe6, 0x2d, 0x02, 0xc2, 0x62, 0x6f, 0x7b, 0x31, 0x53, 0x86, + 0x97, 0x35, 0x0c, 0xe3, 0x16, 0x03, 0x92, 0xf7, 0x7c, 0x0d, 0x30, 0x1e, + 0x89, 0xcc, 0x22, 0x81, +}; +static const unsigned char kat2617_nonce[] = {0}; +static const unsigned char kat2617_persstr[] = { + 0xb2, 0x41, 0xd4, 0x9b, 0xca, 0xaa, 0xd0, 0xc4, 0x28, 0xe0, 0x6d, 0x3a, + 0x28, 0x20, 0x1b, 0x7b, 0x7e, 0xc8, 0x06, 0xe6, 0x03, 0x0c, 0xe4, 0x3d, + 0x6d, 0x6b, 0x55, 0xb8, 0x2e, 0x83, 0x99, 0xb7, 0x5d, 0x8f, 0x9c, 0x0e, + 0x77, 0x08, 0x6d, 0x84, +}; +static const unsigned char kat2617_entropyinreseed[] = { + 0xff, 0x76, 0x6d, 0x8b, 0xb9, 0xe8, 0x1f, 0xf8, 0xf6, 0x5c, 0xc6, 0x90, + 0xa0, 0x04, 0xda, 0xad, 0x66, 0xb1, 0x0c, 0x13, 0x77, 0x76, 0x8e, 0x7b, + 0x91, 0x5a, 0x59, 0x8f, 0x1c, 0x62, 0x0c, 0xa8, 0xa3, 0x9a, 0x5b, 0x89, + 0x14, 0x05, 0x1a, 0x80, +}; +static const unsigned char kat2617_addinreseed[] = {0}; +static const unsigned char kat2617_addin0[] = {0}; +static const unsigned char kat2617_addin1[] = {0}; +static const unsigned char kat2617_retbits[] = { + 0x28, 0x4d, 0xde, 0x49, 0xfc, 0xef, 0xfe, 0x95, 0xcd, 0x55, 0x1a, 0x73, + 0x53, 0x35, 0xd1, 0x07, 0x67, 0x7f, 0xcf, 0xb3, 0x37, 0xe4, 0x9f, 0x58, + 0xc8, 0xeb, 0xd4, 0x54, 0x99, 0x7a, 0xdb, 0x80, 0x9f, 0x66, 0x62, 0x3f, + 0xc3, 0xaf, 0x1c, 0xd2, 0x16, 0xf2, 0x88, 0x48, 0xe2, 0xd2, 0xf8, 0xd6, + 0x14, 0xee, 0xf5, 0x5b, 0x3f, 0xa9, 0xb7, 0x21, 0xbf, 0xf6, 0x03, 0xf6, + 0x6d, 0x70, 0x8f, 0xab, +}; +static const struct drbg_kat_pr_false kat2617_t = { + 6, kat2617_entropyin, kat2617_nonce, kat2617_persstr, + kat2617_entropyinreseed, kat2617_addinreseed, kat2617_addin0, + kat2617_addin1, kat2617_retbits +}; +static const struct drbg_kat kat2617 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2617_t +}; + +static const unsigned char kat2618_entropyin[] = { + 0x4d, 0x78, 0x8b, 0xd9, 0x26, 0xd7, 0x83, 0xb1, 0x04, 0x9e, 0x24, 0x9f, + 0x6b, 0x59, 0x93, 0xd6, 0xe8, 0x45, 0x16, 0x32, 0xfa, 0xfe, 0xe2, 0x97, + 0x4e, 0xdc, 0x14, 0x3b, 0xe0, 0x9c, 0x3c, 0x51, 0xdd, 0xd6, 0xb6, 0x0a, + 0xb3, 0x08, 0x48, 0x6e, +}; +static const unsigned char kat2618_nonce[] = {0}; +static const unsigned char kat2618_persstr[] = { + 0x4c, 0xaf, 0x47, 0xff, 0xe9, 0x22, 0x6c, 0x25, 0xa2, 0x08, 0x43, 0x1e, + 0x93, 0xa8, 0xb7, 0xa9, 0xa6, 0x4b, 0x3d, 0x8d, 0xee, 0x8d, 0x21, 0x0c, + 0x9a, 0xde, 0x32, 0x56, 0x47, 0x2f, 0xd0, 0xb4, 0xe2, 0xf2, 0x2c, 0xac, + 0x21, 0x45, 0x5f, 0xea, +}; +static const unsigned char kat2618_entropyinreseed[] = { + 0xab, 0x80, 0x0d, 0xc2, 0xed, 0x83, 0xff, 0x77, 0x52, 0xf6, 0x5c, 0xec, + 0xce, 0xb3, 0xf8, 0xe5, 0xee, 0x69, 0xe3, 0x4b, 0xca, 0x6c, 0x52, 0xc0, + 0xbf, 0xe0, 0xb5, 0xbe, 0xa5, 0x9b, 0xcb, 0xee, 0x38, 0x0c, 0xab, 0x83, + 0x10, 0x36, 0x00, 0x04, +}; +static const unsigned char kat2618_addinreseed[] = {0}; +static const unsigned char kat2618_addin0[] = {0}; +static const unsigned char kat2618_addin1[] = {0}; +static const unsigned char kat2618_retbits[] = { + 0xab, 0xa5, 0xd0, 0xbc, 0x19, 0xa2, 0x8a, 0xbb, 0xf4, 0x67, 0x4f, 0x3d, + 0xff, 0x8f, 0xc6, 0x38, 0xa4, 0x79, 0x91, 0x8a, 0xfb, 0xa6, 0xa1, 0x9c, + 0xa1, 0x7b, 0xfe, 0x57, 0xf2, 0x22, 0xe1, 0xb9, 0x0b, 0xfa, 0xf2, 0x77, + 0x8e, 0x33, 0xa4, 0xad, 0xe1, 0x47, 0x38, 0x9e, 0xf5, 0xad, 0xa4, 0x8d, + 0x48, 0x32, 0x36, 0xa1, 0x2b, 0x40, 0x36, 0xc7, 0xf7, 0x7f, 0xbc, 0xae, + 0xa0, 0xf9, 0x1c, 0xd8, +}; +static const struct drbg_kat_pr_false kat2618_t = { + 7, kat2618_entropyin, kat2618_nonce, kat2618_persstr, + kat2618_entropyinreseed, kat2618_addinreseed, kat2618_addin0, + kat2618_addin1, kat2618_retbits +}; +static const struct drbg_kat kat2618 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2618_t +}; + +static const unsigned char kat2619_entropyin[] = { + 0x65, 0xbb, 0xf5, 0x44, 0x09, 0x53, 0xce, 0x0a, 0x76, 0xb8, 0xdd, 0x2e, + 0x8c, 0xd4, 0x2d, 0x6d, 0x89, 0x71, 0x3d, 0x70, 0xaa, 0xa8, 0x06, 0xb6, + 0x16, 0x2e, 0x52, 0x4b, 0xfc, 0xbc, 0x5d, 0xfe, 0x36, 0x12, 0xfc, 0x75, + 0xdb, 0x35, 0x9e, 0x30, +}; +static const unsigned char kat2619_nonce[] = {0}; +static const unsigned char kat2619_persstr[] = { + 0x0d, 0xd3, 0x45, 0x1d, 0xbe, 0xa7, 0x4e, 0x0c, 0xbe, 0xbd, 0x2a, 0xac, + 0x22, 0xf5, 0x93, 0xa1, 0x62, 0x7e, 0x70, 0xd9, 0xd1, 0xda, 0x58, 0xc7, + 0x3d, 0x24, 0x28, 0x59, 0xa2, 0x40, 0xe2, 0x78, 0x20, 0x92, 0x3f, 0x33, + 0x27, 0x09, 0xf2, 0x74, +}; +static const unsigned char kat2619_entropyinreseed[] = { + 0xbc, 0x1d, 0x06, 0xc0, 0xb2, 0xa5, 0x36, 0x76, 0x96, 0x41, 0x6b, 0x45, + 0x6a, 0x64, 0xaf, 0x7b, 0xbf, 0xdc, 0x22, 0x32, 0x09, 0x00, 0x33, 0x81, + 0x65, 0x1c, 0x41, 0x98, 0xf8, 0x1f, 0xe1, 0x20, 0xe5, 0x70, 0x39, 0xbb, + 0x53, 0x86, 0x9a, 0x79, +}; +static const unsigned char kat2619_addinreseed[] = {0}; +static const unsigned char kat2619_addin0[] = {0}; +static const unsigned char kat2619_addin1[] = {0}; +static const unsigned char kat2619_retbits[] = { + 0x3a, 0x0d, 0x62, 0x0e, 0x3e, 0xc9, 0xef, 0x17, 0x9e, 0x87, 0x80, 0xae, + 0x42, 0x9c, 0xb2, 0x18, 0xab, 0xe7, 0x92, 0x3b, 0xf8, 0x08, 0xda, 0x98, + 0xe1, 0x72, 0xfe, 0xf7, 0x2f, 0x79, 0xf7, 0xcb, 0x0e, 0xc4, 0x7a, 0x61, + 0x62, 0x7a, 0x5b, 0x7d, 0x60, 0xa1, 0x29, 0xc8, 0x44, 0x92, 0xbe, 0xf4, + 0x33, 0xf1, 0xf4, 0x4c, 0x4e, 0xa3, 0xef, 0x4c, 0x53, 0xe0, 0x99, 0xed, + 0xa5, 0xb0, 0x66, 0x28, +}; +static const struct drbg_kat_pr_false kat2619_t = { + 8, kat2619_entropyin, kat2619_nonce, kat2619_persstr, + kat2619_entropyinreseed, kat2619_addinreseed, kat2619_addin0, + kat2619_addin1, kat2619_retbits +}; +static const struct drbg_kat kat2619 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2619_t +}; + +static const unsigned char kat2620_entropyin[] = { + 0x53, 0x42, 0x6e, 0xd4, 0x6b, 0x9b, 0x56, 0x8c, 0x69, 0x2f, 0x2c, 0xb3, + 0xff, 0xdf, 0x49, 0x19, 0xc8, 0x0e, 0x41, 0xbd, 0x15, 0xcb, 0x54, 0xa0, + 0x1f, 0x64, 0x0b, 0x0f, 0x0d, 0xa6, 0x4e, 0xea, 0x22, 0x03, 0x11, 0x2b, + 0xe9, 0xfe, 0x4d, 0xd0, +}; +static const unsigned char kat2620_nonce[] = {0}; +static const unsigned char kat2620_persstr[] = { + 0x86, 0xa2, 0x43, 0xea, 0xbc, 0x00, 0x39, 0xf6, 0xc4, 0x7d, 0x85, 0xed, + 0x07, 0xc6, 0x4b, 0xae, 0x29, 0xf9, 0x82, 0x1b, 0x86, 0x65, 0x4a, 0x5e, + 0x1d, 0xfe, 0x7b, 0xff, 0x2f, 0x92, 0xeb, 0x4a, 0x8f, 0x99, 0x45, 0xbf, + 0x64, 0xbd, 0xba, 0x29, +}; +static const unsigned char kat2620_entropyinreseed[] = { + 0x5c, 0x8b, 0xd6, 0x15, 0xdc, 0xa2, 0xe8, 0x24, 0x9c, 0x82, 0x71, 0xcc, + 0x02, 0x4f, 0x91, 0xb0, 0x69, 0x41, 0xe3, 0xcc, 0x89, 0x71, 0x5e, 0x7d, + 0xa3, 0xb9, 0x3f, 0x70, 0xbf, 0xb8, 0xac, 0xbf, 0x6c, 0xca, 0x92, 0x43, + 0x42, 0xc9, 0x02, 0xe3, +}; +static const unsigned char kat2620_addinreseed[] = {0}; +static const unsigned char kat2620_addin0[] = {0}; +static const unsigned char kat2620_addin1[] = {0}; +static const unsigned char kat2620_retbits[] = { + 0xf8, 0xef, 0x77, 0x4f, 0xbe, 0xc5, 0x05, 0x1d, 0x3f, 0x6b, 0xf9, 0xcb, + 0xa3, 0xdf, 0x3c, 0xb5, 0x45, 0x74, 0x2a, 0xbe, 0xc4, 0xa4, 0xce, 0xeb, + 0xcd, 0x94, 0x60, 0xd6, 0x4b, 0x6b, 0xfc, 0x19, 0xa8, 0x4a, 0x07, 0x0a, + 0x6b, 0x8e, 0x7b, 0x56, 0x3e, 0x88, 0x2b, 0x1d, 0xa0, 0x1a, 0xe5, 0x0b, + 0xda, 0xa0, 0x13, 0xdc, 0xd6, 0xbb, 0x2a, 0x25, 0xa3, 0x83, 0xac, 0xb3, + 0xeb, 0x23, 0xbd, 0xea, +}; +static const struct drbg_kat_pr_false kat2620_t = { + 9, kat2620_entropyin, kat2620_nonce, kat2620_persstr, + kat2620_entropyinreseed, kat2620_addinreseed, kat2620_addin0, + kat2620_addin1, kat2620_retbits +}; +static const struct drbg_kat kat2620 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2620_t +}; + +static const unsigned char kat2621_entropyin[] = { + 0x2e, 0x04, 0x57, 0x30, 0xc9, 0x18, 0x78, 0x2f, 0xb7, 0x48, 0xdc, 0x80, + 0xba, 0xa7, 0x73, 0x40, 0x7c, 0xab, 0xec, 0x74, 0xd7, 0x8c, 0x30, 0xb3, + 0x02, 0x6f, 0x46, 0x82, 0xd6, 0xa9, 0xd1, 0x27, 0x16, 0x8e, 0x77, 0x91, + 0x42, 0xf9, 0xc6, 0xd9, +}; +static const unsigned char kat2621_nonce[] = {0}; +static const unsigned char kat2621_persstr[] = { + 0xf3, 0x07, 0x14, 0x75, 0x9a, 0x27, 0x4b, 0xd7, 0x51, 0x4c, 0xb1, 0x91, + 0x42, 0xfa, 0x42, 0x07, 0x6e, 0x25, 0x19, 0x7f, 0x68, 0x45, 0xb0, 0xb9, + 0xa9, 0x96, 0x15, 0x0d, 0xff, 0x24, 0x9e, 0x79, 0x0c, 0xa2, 0x7a, 0x9e, + 0x8c, 0x46, 0xf4, 0x0e, +}; +static const unsigned char kat2621_entropyinreseed[] = { + 0xa3, 0x61, 0xa7, 0x34, 0x46, 0xe8, 0xf9, 0x53, 0x91, 0x0e, 0xb6, 0x81, + 0x0a, 0x13, 0x0d, 0x9f, 0x9b, 0x2b, 0xf4, 0x63, 0x1c, 0x53, 0x9c, 0x5c, + 0x0c, 0xdb, 0xf1, 0xf2, 0x47, 0xbb, 0x85, 0xda, 0x23, 0x09, 0x9e, 0x04, + 0x4d, 0x11, 0x91, 0x36, +}; +static const unsigned char kat2621_addinreseed[] = {0}; +static const unsigned char kat2621_addin0[] = {0}; +static const unsigned char kat2621_addin1[] = {0}; +static const unsigned char kat2621_retbits[] = { + 0x6b, 0x94, 0xd7, 0xe3, 0xb4, 0x29, 0x99, 0xa2, 0x5b, 0xe4, 0xe4, 0x9e, + 0x1e, 0x6b, 0xc3, 0xaf, 0x0d, 0xea, 0xdb, 0x9d, 0xbd, 0x05, 0xd0, 0xcb, + 0x3b, 0xae, 0x65, 0x28, 0xf9, 0x9d, 0x79, 0x56, 0xd0, 0x01, 0x8f, 0x98, + 0xf4, 0x42, 0xb9, 0xe1, 0xcd, 0x5c, 0xcc, 0xd7, 0x80, 0x54, 0x15, 0x1e, + 0x58, 0xef, 0xe6, 0xe4, 0xc9, 0x7b, 0xe9, 0x47, 0xbe, 0x08, 0x11, 0xcf, + 0xd9, 0xde, 0x08, 0x94, +}; +static const struct drbg_kat_pr_false kat2621_t = { + 10, kat2621_entropyin, kat2621_nonce, kat2621_persstr, + kat2621_entropyinreseed, kat2621_addinreseed, kat2621_addin0, + kat2621_addin1, kat2621_retbits +}; +static const struct drbg_kat kat2621 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2621_t +}; + +static const unsigned char kat2622_entropyin[] = { + 0x63, 0x32, 0x56, 0x51, 0x04, 0x4c, 0xb9, 0xb4, 0x28, 0x83, 0x6e, 0x03, + 0x4f, 0x3e, 0x6a, 0x27, 0x14, 0x4e, 0x35, 0xc1, 0x84, 0x6a, 0xfb, 0xbd, + 0x49, 0xbd, 0xa1, 0xfb, 0x42, 0xf3, 0xc4, 0xe5, 0x53, 0x37, 0x28, 0x54, + 0x98, 0xb4, 0x47, 0x80, +}; +static const unsigned char kat2622_nonce[] = {0}; +static const unsigned char kat2622_persstr[] = { + 0xed, 0x9d, 0xaf, 0x17, 0xf4, 0x85, 0xf6, 0xd5, 0x6a, 0xab, 0x27, 0xe9, + 0x9a, 0xf0, 0xf6, 0xba, 0xc4, 0x5a, 0xc4, 0xa4, 0x23, 0x4a, 0xd7, 0x08, + 0xd3, 0xd3, 0xe3, 0xdb, 0x48, 0x90, 0xf6, 0xac, 0xec, 0x7f, 0x3f, 0xc1, + 0x5e, 0x06, 0xb5, 0x83, +}; +static const unsigned char kat2622_entropyinreseed[] = { + 0x87, 0xb8, 0x0a, 0x16, 0xec, 0x61, 0x93, 0x4f, 0x60, 0xa5, 0xc7, 0xa9, + 0x37, 0xf2, 0xf7, 0x63, 0x6f, 0xde, 0x1e, 0x06, 0xbf, 0x1b, 0x89, 0xe2, + 0x39, 0x76, 0xa6, 0x7d, 0xae, 0x4d, 0x3e, 0x31, 0xa2, 0xda, 0x6d, 0xb4, + 0x4d, 0x50, 0x20, 0x66, +}; +static const unsigned char kat2622_addinreseed[] = {0}; +static const unsigned char kat2622_addin0[] = {0}; +static const unsigned char kat2622_addin1[] = {0}; +static const unsigned char kat2622_retbits[] = { + 0x73, 0xd2, 0xf3, 0x53, 0x75, 0xf1, 0x72, 0xd8, 0xf9, 0x87, 0xb8, 0xa2, + 0x6e, 0xde, 0x87, 0x00, 0x6f, 0xd5, 0x18, 0x72, 0xf6, 0xb5, 0xd1, 0xe4, + 0xae, 0x1e, 0x9b, 0xf2, 0xee, 0xdf, 0x75, 0x6d, 0x59, 0x7e, 0xfc, 0x1f, + 0x93, 0x2f, 0x8c, 0xdc, 0x4c, 0x1a, 0x5d, 0xf6, 0xc6, 0x7e, 0x66, 0xaf, + 0x1b, 0x72, 0x5c, 0x0b, 0x63, 0x8d, 0x91, 0xe7, 0x17, 0x29, 0xb1, 0xca, + 0xac, 0x47, 0x3b, 0x43, +}; +static const struct drbg_kat_pr_false kat2622_t = { + 11, kat2622_entropyin, kat2622_nonce, kat2622_persstr, + kat2622_entropyinreseed, kat2622_addinreseed, kat2622_addin0, + kat2622_addin1, kat2622_retbits +}; +static const struct drbg_kat kat2622 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2622_t +}; + +static const unsigned char kat2623_entropyin[] = { + 0x7d, 0x39, 0x0f, 0xbf, 0xa7, 0xd5, 0x25, 0xc8, 0x4a, 0xb7, 0x41, 0xc3, + 0x9c, 0x31, 0xbf, 0xd6, 0xd1, 0x05, 0x90, 0x95, 0x1f, 0xbb, 0x8b, 0xba, + 0xb8, 0x5e, 0x93, 0x9b, 0x3d, 0x65, 0x55, 0x27, 0x76, 0x5b, 0x76, 0x6b, + 0x0f, 0x19, 0x3a, 0x7f, +}; +static const unsigned char kat2623_nonce[] = {0}; +static const unsigned char kat2623_persstr[] = { + 0xb0, 0x72, 0x1b, 0x93, 0x5d, 0x8c, 0xc6, 0x0e, 0xb1, 0xdf, 0x04, 0x1c, + 0x8a, 0x08, 0x49, 0xb0, 0xe1, 0xf2, 0xf1, 0x18, 0x0a, 0xee, 0xbc, 0x7b, + 0x03, 0x5c, 0x18, 0x0e, 0x9e, 0x02, 0xc4, 0x44, 0x1b, 0x7e, 0xaa, 0x0d, + 0xb9, 0x00, 0x08, 0x3e, +}; +static const unsigned char kat2623_entropyinreseed[] = { + 0x0b, 0x29, 0x49, 0xd4, 0x08, 0x5f, 0x74, 0x80, 0x02, 0xa5, 0x1f, 0x2f, + 0xed, 0x76, 0x7f, 0x76, 0xfd, 0x20, 0xf2, 0xae, 0x11, 0x99, 0xfc, 0xe6, + 0x2b, 0x0f, 0xce, 0x5a, 0x88, 0xbd, 0x9b, 0x7e, 0xc4, 0xf1, 0xd5, 0x53, + 0xd0, 0x9a, 0x48, 0x58, +}; +static const unsigned char kat2623_addinreseed[] = {0}; +static const unsigned char kat2623_addin0[] = {0}; +static const unsigned char kat2623_addin1[] = {0}; +static const unsigned char kat2623_retbits[] = { + 0xf4, 0xb5, 0xb7, 0x6b, 0xbb, 0xa4, 0x96, 0x24, 0x6a, 0x6a, 0xb0, 0xa0, + 0xd6, 0x7b, 0x6f, 0x63, 0xc4, 0x75, 0xd7, 0x2c, 0xf6, 0x02, 0x87, 0x61, + 0xf2, 0x56, 0xc2, 0xfb, 0xac, 0x40, 0x5f, 0xee, 0x4a, 0xcb, 0x22, 0x6b, + 0x6d, 0x6d, 0x6d, 0x81, 0x65, 0x00, 0xed, 0x37, 0x3e, 0xa3, 0x55, 0x60, + 0xe7, 0x32, 0x42, 0x21, 0x73, 0x3c, 0x4a, 0x05, 0xb2, 0x87, 0x1f, 0x10, + 0xfc, 0xf5, 0x04, 0xef, +}; +static const struct drbg_kat_pr_false kat2623_t = { + 12, kat2623_entropyin, kat2623_nonce, kat2623_persstr, + kat2623_entropyinreseed, kat2623_addinreseed, kat2623_addin0, + kat2623_addin1, kat2623_retbits +}; +static const struct drbg_kat kat2623 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2623_t +}; + +static const unsigned char kat2624_entropyin[] = { + 0xea, 0x33, 0x1f, 0xa8, 0x99, 0x0c, 0xdc, 0xdb, 0x98, 0xab, 0x3e, 0x5b, + 0xde, 0xdf, 0xe6, 0x9b, 0x97, 0x76, 0x78, 0x4d, 0xef, 0x61, 0x4b, 0x55, + 0x62, 0xf4, 0x3a, 0x4a, 0x5c, 0xfe, 0xdb, 0xd3, 0x15, 0x7e, 0xa0, 0xbd, + 0x11, 0x94, 0xa9, 0x9e, +}; +static const unsigned char kat2624_nonce[] = {0}; +static const unsigned char kat2624_persstr[] = { + 0xc0, 0x16, 0xb0, 0xd6, 0x5d, 0x68, 0xcd, 0x0a, 0x81, 0xee, 0xe6, 0x56, + 0x2e, 0x20, 0xb9, 0xf5, 0x9e, 0xf6, 0x84, 0x27, 0x67, 0x9b, 0x72, 0xae, + 0x46, 0x1d, 0x29, 0x6f, 0xcd, 0xac, 0x55, 0x10, 0x47, 0x1d, 0xfb, 0xaf, + 0x0d, 0x43, 0xe3, 0xc7, +}; +static const unsigned char kat2624_entropyinreseed[] = { + 0x8f, 0xfe, 0x2e, 0x9f, 0x2b, 0x23, 0xa0, 0x97, 0x49, 0xfc, 0x29, 0x07, + 0x62, 0x63, 0x75, 0x65, 0x9a, 0xd0, 0x04, 0x80, 0xa0, 0x02, 0x7f, 0x7d, + 0x6b, 0xaf, 0x5a, 0x75, 0x0d, 0xeb, 0x8a, 0xed, 0x3d, 0x19, 0x28, 0xf6, + 0xa5, 0x33, 0x41, 0xd8, +}; +static const unsigned char kat2624_addinreseed[] = {0}; +static const unsigned char kat2624_addin0[] = {0}; +static const unsigned char kat2624_addin1[] = {0}; +static const unsigned char kat2624_retbits[] = { + 0x38, 0xed, 0xd9, 0xf3, 0xa4, 0x21, 0x92, 0x43, 0x2a, 0xc7, 0x04, 0xf4, + 0x84, 0xf3, 0x32, 0x71, 0x0a, 0x48, 0xac, 0x5c, 0x65, 0xa2, 0xe9, 0x9d, + 0xf2, 0x80, 0x3f, 0xbd, 0x81, 0xc9, 0xa5, 0x78, 0xbd, 0xb7, 0x9f, 0xf9, + 0x41, 0x19, 0x72, 0x9e, 0x6a, 0xe1, 0x0f, 0x3c, 0x36, 0xc8, 0x4f, 0x3c, + 0x76, 0xaa, 0xbe, 0x37, 0xf4, 0x75, 0x12, 0xdc, 0x8d, 0x03, 0xc0, 0x24, + 0xd7, 0x47, 0x7b, 0xf8, +}; +static const struct drbg_kat_pr_false kat2624_t = { + 13, kat2624_entropyin, kat2624_nonce, kat2624_persstr, + kat2624_entropyinreseed, kat2624_addinreseed, kat2624_addin0, + kat2624_addin1, kat2624_retbits +}; +static const struct drbg_kat kat2624 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2624_t +}; + +static const unsigned char kat2625_entropyin[] = { + 0xd1, 0x49, 0x7e, 0x39, 0x6a, 0x2e, 0x1b, 0x48, 0x22, 0x46, 0xca, 0x8a, + 0xa7, 0x78, 0xcb, 0xc9, 0x8a, 0x20, 0x08, 0x62, 0x7f, 0xfd, 0x01, 0x4c, + 0x10, 0x77, 0x2d, 0xf3, 0x8f, 0x9a, 0xc3, 0x89, 0x08, 0x2e, 0x04, 0x27, + 0x77, 0x9e, 0x1f, 0x6b, +}; +static const unsigned char kat2625_nonce[] = {0}; +static const unsigned char kat2625_persstr[] = { + 0xa4, 0x77, 0xa4, 0x2a, 0x22, 0x1c, 0xd2, 0xcb, 0xcf, 0x79, 0x0c, 0xa7, + 0x0f, 0xb6, 0xa5, 0xf1, 0x8a, 0x91, 0xc2, 0x97, 0x61, 0x75, 0x61, 0xac, + 0xd1, 0xbc, 0x50, 0x90, 0x57, 0x35, 0x40, 0xb3, 0xfa, 0x41, 0x0f, 0xf5, + 0xab, 0x41, 0xae, 0xc7, +}; +static const unsigned char kat2625_entropyinreseed[] = { + 0x10, 0x8f, 0x6f, 0x37, 0x62, 0x1a, 0xce, 0x41, 0x8e, 0x21, 0x55, 0xf7, + 0x0d, 0xda, 0x4c, 0x2b, 0x5d, 0x6a, 0xaf, 0xa9, 0x26, 0x9f, 0x6a, 0xa9, + 0x8a, 0x54, 0x55, 0xe3, 0xa1, 0xd1, 0x88, 0xe6, 0x4e, 0xc0, 0x22, 0xc4, + 0x54, 0xc6, 0x86, 0x20, +}; +static const unsigned char kat2625_addinreseed[] = {0}; +static const unsigned char kat2625_addin0[] = {0}; +static const unsigned char kat2625_addin1[] = {0}; +static const unsigned char kat2625_retbits[] = { + 0x05, 0xe4, 0x89, 0x64, 0x94, 0xb0, 0x28, 0x61, 0xa5, 0x13, 0x57, 0x46, + 0x3f, 0x70, 0x5e, 0x81, 0x2a, 0x14, 0xf5, 0x7e, 0xb8, 0x63, 0x0c, 0xf1, + 0xfb, 0x02, 0x5c, 0x42, 0xec, 0x9d, 0xd5, 0x4d, 0xe3, 0xf5, 0xfa, 0x1b, + 0x38, 0xd1, 0xf3, 0xd8, 0x90, 0xaa, 0xd7, 0x4d, 0x5a, 0xd1, 0x68, 0x3d, + 0x0b, 0x59, 0x81, 0xda, 0x4d, 0x3a, 0x93, 0x9d, 0x05, 0xfd, 0x54, 0x35, + 0xb1, 0xd5, 0x0f, 0x38, +}; +static const struct drbg_kat_pr_false kat2625_t = { + 14, kat2625_entropyin, kat2625_nonce, kat2625_persstr, + kat2625_entropyinreseed, kat2625_addinreseed, kat2625_addin0, + kat2625_addin1, kat2625_retbits +}; +static const struct drbg_kat kat2625 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat2625_t +}; + +static const unsigned char kat2626_entropyin[] = { + 0xde, 0xc0, 0x8a, 0x9e, 0xaf, 0xc4, 0xa8, 0x38, 0x11, 0x25, 0x54, 0x73, + 0x0e, 0x4f, 0xc4, 0xc6, 0x71, 0x98, 0x02, 0xaa, 0x3c, 0x42, 0xf9, 0x83, + 0x56, 0x2d, 0x07, 0x91, 0x5f, 0xad, 0x7e, 0x31, 0x91, 0xe6, 0x45, 0xab, + 0x5a, 0x61, 0x08, 0x45, +}; +static const unsigned char kat2626_nonce[] = {0}; +static const unsigned char kat2626_persstr[] = { + 0x56, 0x95, 0x8b, 0xd4, 0x8e, 0xd6, 0xbb, 0x27, 0x08, 0xe5, 0x77, 0xfd, + 0xdd, 0x00, 0x9e, 0x83, 0x71, 0xad, 0x33, 0x4b, 0x67, 0x4f, 0x8b, 0x85, + 0x9e, 0x7a, 0x23, 0xbe, 0xa4, 0x6a, 0xea, 0x53, 0x90, 0xd9, 0x2a, 0xe0, + 0x80, 0x9a, 0x29, 0x44, +}; +static const unsigned char kat2626_entropyinreseed[] = { + 0x96, 0x8d, 0x72, 0xe4, 0x2d, 0x8e, 0x95, 0xf1, 0x10, 0x65, 0x74, 0xc5, + 0xdd, 0x03, 0x52, 0x8d, 0x9e, 0x89, 0xb8, 0xee, 0x7d, 0x22, 0xbd, 0xa6, + 0x21, 0xd0, 0x6d, 0x05, 0xfb, 0x2d, 0x67, 0xd9, 0x94, 0x52, 0x34, 0x38, + 0x1f, 0xde, 0x49, 0xee, +}; +static const unsigned char kat2626_addinreseed[] = { + 0xac, 0xa4, 0x7c, 0x2b, 0x4f, 0x33, 0xfd, 0xfc, 0x24, 0xcf, 0xc5, 0x4f, + 0xeb, 0x9c, 0xd2, 0xb4, 0x7e, 0x77, 0x6f, 0x59, 0xaa, 0x9f, 0xe1, 0xa0, + 0x24, 0x67, 0xa4, 0x58, 0xab, 0xd2, 0x1d, 0x34, 0x0b, 0x3c, 0xf4, 0xbd, + 0xf8, 0xb4, 0x6b, 0x66, +}; +static const unsigned char kat2626_addin0[] = { + 0x98, 0x79, 0x1e, 0x95, 0x24, 0x9c, 0x6a, 0x06, 0xbe, 0x4e, 0xf0, 0xae, + 0xbf, 0xb8, 0xaf, 0x3f, 0x0f, 0xce, 0x39, 0xeb, 0x9d, 0x95, 0xc4, 0xec, + 0x53, 0x6c, 0xe7, 0x86, 0x7c, 0xa6, 0xfb, 0x26, 0xec, 0x28, 0x86, 0xa5, + 0x7a, 0xed, 0x80, 0x85, +}; +static const unsigned char kat2626_addin1[] = { + 0xa7, 0xc2, 0x76, 0xe8, 0x4e, 0x52, 0x91, 0xe9, 0x60, 0x3d, 0x2c, 0x7e, + 0x55, 0x2a, 0x2c, 0xe2, 0x9a, 0x74, 0xb9, 0x05, 0x46, 0x05, 0x70, 0x4a, + 0xe5, 0x87, 0x3b, 0x0d, 0x09, 0x31, 0xe2, 0x76, 0x11, 0xe3, 0xe7, 0x92, + 0x62, 0xed, 0xcb, 0x89, +}; +static const unsigned char kat2626_retbits[] = { + 0x34, 0xac, 0x66, 0xe2, 0x36, 0xda, 0x0f, 0xac, 0x76, 0x53, 0xf0, 0xe0, + 0x1d, 0x5e, 0xa5, 0x35, 0xb8, 0xb1, 0xf5, 0xf5, 0xb0, 0x92, 0xae, 0x27, + 0xfa, 0xa8, 0xa3, 0xb3, 0x33, 0xc8, 0xe5, 0x86, 0x6e, 0xc3, 0xb3, 0x1c, + 0xef, 0x92, 0x90, 0xab, 0x52, 0xcc, 0xfe, 0xe6, 0x30, 0x09, 0x4d, 0xaf, + 0x23, 0xf8, 0x24, 0x7d, 0x98, 0xba, 0x20, 0x21, 0x7d, 0x74, 0x70, 0xde, + 0x77, 0x5f, 0x95, 0x41, +}; +static const struct drbg_kat_pr_false kat2626_t = { + 0, kat2626_entropyin, kat2626_nonce, kat2626_persstr, + kat2626_entropyinreseed, kat2626_addinreseed, kat2626_addin0, + kat2626_addin1, kat2626_retbits +}; +static const struct drbg_kat kat2626 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2626_t +}; + +static const unsigned char kat2627_entropyin[] = { + 0xfd, 0x0b, 0xe4, 0xd7, 0xb3, 0xa7, 0x53, 0x1d, 0x01, 0xb7, 0x86, 0xf3, + 0x49, 0xef, 0x93, 0x87, 0xb9, 0x84, 0xf3, 0x8e, 0xb5, 0x32, 0x6a, 0x1e, + 0x09, 0xc3, 0x7e, 0x95, 0x5a, 0x3b, 0x88, 0x0f, 0xff, 0x1d, 0xe8, 0xc3, + 0xd1, 0x13, 0xb8, 0xc2, +}; +static const unsigned char kat2627_nonce[] = {0}; +static const unsigned char kat2627_persstr[] = { + 0x1d, 0xde, 0xad, 0x5b, 0x3a, 0x39, 0xdf, 0x02, 0xc6, 0x0d, 0x1e, 0x9f, + 0x93, 0xa7, 0xe2, 0x4b, 0x75, 0x13, 0xec, 0x4e, 0x47, 0x0d, 0xe5, 0x68, + 0x80, 0xf6, 0xf7, 0xab, 0xbc, 0x96, 0xea, 0x7e, 0x99, 0x67, 0x96, 0x01, + 0x76, 0x23, 0x42, 0x37, +}; +static const unsigned char kat2627_entropyinreseed[] = { + 0xac, 0x53, 0xb1, 0x9d, 0xff, 0xbf, 0xd0, 0xef, 0x02, 0x45, 0x5c, 0xd9, + 0xbb, 0x19, 0x8e, 0xad, 0x37, 0x8c, 0x02, 0x56, 0xe7, 0xcb, 0xe4, 0x07, + 0x82, 0xe0, 0x1a, 0xff, 0x52, 0x90, 0xf5, 0xd0, 0x40, 0xfe, 0xa2, 0x36, + 0x7c, 0x58, 0xfb, 0x34, +}; +static const unsigned char kat2627_addinreseed[] = { + 0x89, 0x9f, 0xfc, 0x01, 0x0b, 0xbd, 0x6c, 0x1e, 0x0e, 0x07, 0x0b, 0x81, + 0xc9, 0xe9, 0x62, 0x60, 0x28, 0x20, 0x2a, 0xb2, 0xb9, 0x83, 0x67, 0x0f, + 0x31, 0xff, 0x0f, 0x79, 0x75, 0xc6, 0x3d, 0x11, 0x34, 0xf6, 0x9a, 0x49, + 0x86, 0xea, 0xbc, 0x99, +}; +static const unsigned char kat2627_addin0[] = { + 0x1a, 0x92, 0x00, 0x3e, 0x60, 0xf5, 0xd5, 0xf7, 0x22, 0x79, 0xf0, 0x23, + 0xe7, 0x2e, 0x5d, 0xc5, 0xf9, 0x5b, 0x2b, 0xc7, 0x54, 0xbf, 0x88, 0x4a, + 0xf8, 0xd0, 0x82, 0xd0, 0x1d, 0xc3, 0x97, 0xc4, 0xc5, 0xcd, 0x96, 0x4b, + 0x31, 0x76, 0xc5, 0x1a, +}; +static const unsigned char kat2627_addin1[] = { + 0x9f, 0xf2, 0x67, 0xa1, 0xc9, 0x6c, 0xe4, 0x3a, 0x7c, 0x8a, 0xf9, 0xe9, + 0xdb, 0xd3, 0xb8, 0x76, 0x64, 0xbb, 0x57, 0xd2, 0x4e, 0x4d, 0x71, 0xff, + 0x4b, 0x43, 0x61, 0xda, 0x9c, 0x80, 0x84, 0x85, 0xe1, 0x78, 0x0f, 0xb2, + 0x1b, 0x42, 0x52, 0x04, +}; +static const unsigned char kat2627_retbits[] = { + 0x50, 0x3e, 0x4d, 0x5e, 0xbf, 0xa7, 0x67, 0x1c, 0x3f, 0xf3, 0x70, 0x97, + 0x58, 0x88, 0xab, 0x38, 0xcb, 0xb5, 0x8a, 0xb2, 0xb7, 0x1f, 0x20, 0xb3, + 0xa6, 0xf2, 0x84, 0x83, 0x1a, 0x84, 0xe0, 0xe8, 0xdf, 0xc3, 0x9f, 0x8f, + 0xeb, 0x11, 0x4b, 0xfc, 0x83, 0xa5, 0xf0, 0x65, 0xc4, 0xbb, 0xe5, 0xaf, + 0x8b, 0x4a, 0x7c, 0x5b, 0x4c, 0x13, 0x50, 0xbe, 0x9c, 0x3c, 0xc9, 0xb3, + 0x4e, 0xca, 0x4a, 0x7e, +}; +static const struct drbg_kat_pr_false kat2627_t = { + 1, kat2627_entropyin, kat2627_nonce, kat2627_persstr, + kat2627_entropyinreseed, kat2627_addinreseed, kat2627_addin0, + kat2627_addin1, kat2627_retbits +}; +static const struct drbg_kat kat2627 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2627_t +}; + +static const unsigned char kat2628_entropyin[] = { + 0xae, 0xdd, 0xee, 0x12, 0xc0, 0x1a, 0x13, 0x43, 0x42, 0x42, 0xd7, 0x37, + 0x8c, 0x8b, 0x26, 0xe8, 0x3e, 0x67, 0xca, 0x4c, 0xa9, 0x24, 0xe2, 0xba, + 0x47, 0x26, 0x32, 0x94, 0x42, 0x7f, 0x16, 0x04, 0x80, 0x20, 0x4d, 0xa3, + 0x3a, 0xd8, 0x35, 0x4c, +}; +static const unsigned char kat2628_nonce[] = {0}; +static const unsigned char kat2628_persstr[] = { + 0x39, 0x41, 0x12, 0x7a, 0x2d, 0x8b, 0x43, 0xe9, 0xc4, 0x29, 0x9b, 0xbb, + 0xdb, 0x90, 0x17, 0x2e, 0x93, 0x6e, 0x0e, 0x7a, 0x18, 0x5c, 0xca, 0xdf, + 0x1b, 0xc5, 0x0a, 0x34, 0xd2, 0xe2, 0xe0, 0x14, 0xcd, 0x05, 0x15, 0x2a, + 0xb2, 0xe7, 0x09, 0x54, +}; +static const unsigned char kat2628_entropyinreseed[] = { + 0x5f, 0x1d, 0x6f, 0xf5, 0x92, 0x94, 0xda, 0x89, 0x4d, 0x8d, 0x21, 0x76, + 0xd4, 0x19, 0x8d, 0x6c, 0x25, 0xa7, 0x22, 0xfc, 0x57, 0x1a, 0x6f, 0x63, + 0x38, 0x65, 0x48, 0x98, 0xed, 0x41, 0x9a, 0xfe, 0xb9, 0x5d, 0x48, 0xff, + 0x82, 0x26, 0x40, 0x89, +}; +static const unsigned char kat2628_addinreseed[] = { + 0x05, 0x8e, 0xff, 0xdc, 0xd3, 0xb8, 0xab, 0x7c, 0x75, 0xe1, 0x38, 0xa2, + 0xf2, 0x7d, 0x2b, 0x7a, 0x61, 0x65, 0x14, 0x4d, 0xa9, 0x65, 0xc4, 0xaa, + 0x80, 0x50, 0x4d, 0x48, 0xa2, 0xee, 0x83, 0x5b, 0xc5, 0x3f, 0x5a, 0xf3, + 0x72, 0x27, 0xd9, 0x5b, +}; +static const unsigned char kat2628_addin0[] = { + 0x5b, 0x20, 0x86, 0xec, 0x74, 0xff, 0x24, 0x8d, 0xf7, 0xe1, 0x72, 0x6b, + 0x93, 0xcc, 0x91, 0x5a, 0xd1, 0x27, 0x6a, 0x13, 0x87, 0xef, 0xeb, 0x58, + 0x5f, 0xe6, 0x15, 0x7b, 0xc8, 0x20, 0xdd, 0x93, 0xf5, 0x07, 0x69, 0x4a, + 0xa2, 0xab, 0xfd, 0x53, +}; +static const unsigned char kat2628_addin1[] = { + 0x1f, 0x2b, 0x47, 0x99, 0xf4, 0x93, 0x23, 0xae, 0xf8, 0x96, 0x49, 0xd6, + 0x2f, 0x22, 0xa3, 0x93, 0x74, 0x52, 0xee, 0xa1, 0x0c, 0x1d, 0x29, 0x65, + 0x49, 0xa2, 0x05, 0x62, 0xd5, 0x22, 0xf1, 0xab, 0x91, 0xcf, 0x8a, 0x41, + 0x81, 0xea, 0x00, 0x8e, +}; +static const unsigned char kat2628_retbits[] = { + 0x11, 0xf2, 0xcf, 0xdb, 0x29, 0x54, 0x9a, 0x0f, 0xa2, 0x69, 0x54, 0xbf, + 0xf5, 0xc3, 0x6a, 0x4d, 0x50, 0xba, 0x39, 0xec, 0x1d, 0xcc, 0x85, 0x43, + 0xb0, 0x9c, 0x18, 0x0b, 0x16, 0x8c, 0x85, 0xa4, 0xb4, 0x17, 0x72, 0x5b, + 0x54, 0x13, 0x2c, 0xda, 0xda, 0xe8, 0x8d, 0x3c, 0xdf, 0xf8, 0x41, 0xda, + 0x81, 0x9b, 0x11, 0x7c, 0x03, 0x6b, 0xdb, 0xb7, 0xed, 0x59, 0x5f, 0xe7, + 0x9e, 0x48, 0xd9, 0xd2, +}; +static const struct drbg_kat_pr_false kat2628_t = { + 2, kat2628_entropyin, kat2628_nonce, kat2628_persstr, + kat2628_entropyinreseed, kat2628_addinreseed, kat2628_addin0, + kat2628_addin1, kat2628_retbits +}; +static const struct drbg_kat kat2628 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2628_t +}; + +static const unsigned char kat2629_entropyin[] = { + 0xd0, 0x69, 0xdf, 0x59, 0x75, 0xaa, 0x84, 0xa8, 0x6a, 0xbf, 0x8e, 0xf3, + 0x3e, 0xba, 0xc6, 0x12, 0x82, 0xc0, 0xb5, 0xd7, 0xf4, 0xa9, 0x4e, 0xb1, + 0x2e, 0x9e, 0x87, 0x15, 0x56, 0x16, 0x55, 0x54, 0xfc, 0x1b, 0x75, 0x2b, + 0x17, 0xd6, 0xef, 0x6e, +}; +static const unsigned char kat2629_nonce[] = {0}; +static const unsigned char kat2629_persstr[] = { + 0x63, 0x21, 0x4e, 0xa6, 0x27, 0xd8, 0xf6, 0xcb, 0xb6, 0x85, 0x37, 0x00, + 0xb9, 0xad, 0x43, 0xde, 0x72, 0x48, 0xc1, 0x68, 0xe1, 0x5e, 0xd0, 0x84, + 0x76, 0x4f, 0x4d, 0x24, 0x4b, 0xf5, 0x1f, 0x08, 0x61, 0xe9, 0x43, 0x5a, + 0x17, 0x40, 0x6c, 0x96, +}; +static const unsigned char kat2629_entropyinreseed[] = { + 0x09, 0xf9, 0x8d, 0x5f, 0xbf, 0xda, 0x0c, 0xeb, 0x76, 0xf7, 0x84, 0xa5, + 0x4c, 0x84, 0x99, 0xeb, 0x79, 0x3a, 0xba, 0x71, 0x80, 0x6b, 0x31, 0x21, + 0x6e, 0x77, 0xeb, 0x25, 0x20, 0xe7, 0x97, 0xc9, 0x31, 0xac, 0xf0, 0x59, + 0x18, 0x0e, 0x1e, 0xc8, +}; +static const unsigned char kat2629_addinreseed[] = { + 0x0f, 0x99, 0x14, 0x99, 0x0f, 0xba, 0x6d, 0x69, 0x10, 0xca, 0x7c, 0xa9, + 0xd0, 0xe5, 0xc2, 0xca, 0x1e, 0x3c, 0x62, 0xf3, 0x9c, 0x5d, 0x71, 0xfe, + 0xd4, 0x6d, 0x69, 0x9f, 0x40, 0x8b, 0x1c, 0x2c, 0x1e, 0xfd, 0x45, 0x7d, + 0xc3, 0xe0, 0xd3, 0x8d, +}; +static const unsigned char kat2629_addin0[] = { + 0x20, 0x48, 0xce, 0x70, 0xca, 0x50, 0x3c, 0x1c, 0x97, 0x75, 0x60, 0x4b, + 0x84, 0x5f, 0xf2, 0x2f, 0x91, 0xb9, 0xa8, 0x37, 0x6c, 0xd1, 0xc0, 0x14, + 0x68, 0xc6, 0xb1, 0x1e, 0x47, 0xfa, 0x62, 0x20, 0x1c, 0xab, 0x40, 0xa5, + 0x51, 0xf3, 0x9e, 0x0e, +}; +static const unsigned char kat2629_addin1[] = { + 0x96, 0xca, 0xc7, 0x30, 0x37, 0x7d, 0xc4, 0x5f, 0x55, 0x16, 0xe8, 0x55, + 0x31, 0x02, 0x30, 0xee, 0xf1, 0xd5, 0xc1, 0x56, 0x92, 0xbb, 0x9f, 0xe5, + 0x56, 0xd4, 0xdb, 0x53, 0xcb, 0xce, 0xa8, 0x10, 0xeb, 0xe2, 0xec, 0xfd, + 0x7d, 0x64, 0x8b, 0x1c, +}; +static const unsigned char kat2629_retbits[] = { + 0x71, 0x20, 0x53, 0xf9, 0x02, 0x71, 0x10, 0xa9, 0xb4, 0x8c, 0x68, 0x5a, + 0x60, 0x8c, 0x16, 0x91, 0xe1, 0x24, 0x65, 0x6d, 0xe8, 0xb9, 0xcf, 0xe9, + 0x45, 0x46, 0x87, 0xc3, 0x90, 0x43, 0x2d, 0x3c, 0x81, 0xcb, 0xba, 0xdd, + 0x9b, 0x66, 0xa5, 0xdc, 0xd2, 0x22, 0x22, 0x5c, 0x65, 0xc8, 0x19, 0x66, + 0x7d, 0xba, 0xf3, 0xdf, 0xfa, 0x9f, 0xca, 0x2a, 0x09, 0x8c, 0xa7, 0x6c, + 0xac, 0x82, 0x35, 0x4e, +}; +static const struct drbg_kat_pr_false kat2629_t = { + 3, kat2629_entropyin, kat2629_nonce, kat2629_persstr, + kat2629_entropyinreseed, kat2629_addinreseed, kat2629_addin0, + kat2629_addin1, kat2629_retbits +}; +static const struct drbg_kat kat2629 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2629_t +}; + +static const unsigned char kat2630_entropyin[] = { + 0x11, 0xc6, 0x50, 0x00, 0xd9, 0x6b, 0xb2, 0xe1, 0xdb, 0x99, 0xf0, 0x7b, + 0xdc, 0x7b, 0x62, 0x0e, 0x02, 0x98, 0xa0, 0x35, 0x83, 0x30, 0x7b, 0xd1, + 0x52, 0x91, 0x6d, 0xe1, 0x95, 0x7e, 0x43, 0xaf, 0x1b, 0xff, 0xde, 0xca, + 0x1c, 0x38, 0x36, 0x4a, +}; +static const unsigned char kat2630_nonce[] = {0}; +static const unsigned char kat2630_persstr[] = { + 0xa9, 0x07, 0x30, 0x71, 0xbf, 0xc1, 0x8d, 0x38, 0x55, 0x0a, 0x16, 0x88, + 0x4b, 0x26, 0x7c, 0xc1, 0x4a, 0xb6, 0x2e, 0xb7, 0x06, 0x4e, 0x29, 0xc2, + 0xba, 0x9e, 0x44, 0x03, 0x98, 0xcf, 0x84, 0xaf, 0x30, 0xdb, 0x57, 0x78, + 0x3f, 0xca, 0x0e, 0x90, +}; +static const unsigned char kat2630_entropyinreseed[] = { + 0x14, 0x47, 0x34, 0xce, 0x49, 0x7c, 0xf2, 0x78, 0xcf, 0x58, 0x0c, 0x72, + 0xb3, 0xa5, 0x8e, 0xd8, 0xdd, 0x47, 0xa3, 0x24, 0x3d, 0x4a, 0x1c, 0xd4, + 0x4b, 0xc1, 0x5c, 0x94, 0x4a, 0xf3, 0xb0, 0xd4, 0x11, 0x13, 0x65, 0xf0, + 0x8c, 0x48, 0xf3, 0xea, +}; +static const unsigned char kat2630_addinreseed[] = { + 0x4a, 0xa6, 0x03, 0x76, 0xbc, 0x60, 0x69, 0x57, 0xdb, 0xbc, 0xba, 0x31, + 0x93, 0xd5, 0x0b, 0x8d, 0xd5, 0x71, 0x9c, 0x0f, 0x88, 0xa1, 0x8d, 0x5f, + 0xac, 0x29, 0x19, 0x60, 0x0f, 0xbb, 0xce, 0xc6, 0x48, 0xc8, 0x2c, 0xff, + 0x65, 0x40, 0xef, 0xfe, +}; +static const unsigned char kat2630_addin0[] = { + 0xf9, 0x70, 0x02, 0xf0, 0x3a, 0x25, 0xeb, 0x4f, 0x3b, 0x8f, 0x82, 0x90, + 0x76, 0xe6, 0x65, 0xe2, 0x0e, 0xbb, 0x79, 0x04, 0x62, 0xa6, 0x5d, 0xa7, + 0xdc, 0xac, 0xb8, 0xa5, 0xe6, 0xe1, 0x4e, 0xa9, 0x8e, 0xb5, 0x6f, 0xf3, + 0xeb, 0x97, 0x48, 0x08, +}; +static const unsigned char kat2630_addin1[] = { + 0xf2, 0x23, 0x8e, 0xcb, 0x9b, 0x3d, 0x0c, 0x32, 0x18, 0xd9, 0x2f, 0x9a, + 0x50, 0x20, 0x56, 0x86, 0xeb, 0xd1, 0x5d, 0x38, 0x28, 0xb3, 0xc9, 0xc6, + 0x38, 0x12, 0xe3, 0xc2, 0x78, 0xf7, 0x45, 0x06, 0x94, 0x3b, 0x05, 0xa5, + 0xcc, 0xed, 0x5b, 0x2b, +}; +static const unsigned char kat2630_retbits[] = { + 0x45, 0xb9, 0x57, 0x05, 0x5b, 0x89, 0x7b, 0xc7, 0xf8, 0x30, 0x6b, 0x93, + 0x84, 0xb4, 0x7f, 0x23, 0xfa, 0xc5, 0x7d, 0xb9, 0x36, 0x43, 0x71, 0x6c, + 0x7f, 0x9d, 0x44, 0x70, 0x1e, 0x7d, 0xd5, 0x87, 0x71, 0x38, 0xc2, 0x05, + 0xed, 0x61, 0x99, 0x2d, 0x6e, 0x7b, 0xd6, 0xad, 0x60, 0x1b, 0xc7, 0x2b, + 0x7b, 0xaf, 0x65, 0xde, 0xef, 0x83, 0x9d, 0x28, 0xb4, 0x34, 0xe1, 0x8d, + 0x7c, 0xf8, 0xcb, 0xfd, +}; +static const struct drbg_kat_pr_false kat2630_t = { + 4, kat2630_entropyin, kat2630_nonce, kat2630_persstr, + kat2630_entropyinreseed, kat2630_addinreseed, kat2630_addin0, + kat2630_addin1, kat2630_retbits +}; +static const struct drbg_kat kat2630 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2630_t +}; + +static const unsigned char kat2631_entropyin[] = { + 0x55, 0x51, 0x56, 0x0c, 0xbc, 0xef, 0x99, 0x84, 0xd7, 0x0e, 0x62, 0x73, + 0x2b, 0xb5, 0xeb, 0xca, 0xc0, 0x53, 0x28, 0xda, 0x6c, 0x70, 0x18, 0x9a, + 0xc4, 0x49, 0xbc, 0xb8, 0x12, 0x99, 0x15, 0xbc, 0x15, 0xd5, 0x8c, 0x9c, + 0xf3, 0x26, 0x5c, 0x9b, +}; +static const unsigned char kat2631_nonce[] = {0}; +static const unsigned char kat2631_persstr[] = { + 0xac, 0x69, 0xee, 0x98, 0xa3, 0xbc, 0xb0, 0x19, 0xc1, 0x86, 0xc1, 0x0d, + 0x8d, 0xd8, 0xb1, 0x1e, 0xc8, 0xb7, 0x90, 0x8a, 0x20, 0xe1, 0x5d, 0x77, + 0xdc, 0xa8, 0xea, 0x51, 0xe2, 0xcc, 0x27, 0xd7, 0x39, 0xfe, 0x8f, 0x42, + 0xec, 0x4b, 0x4c, 0x7f, +}; +static const unsigned char kat2631_entropyinreseed[] = { + 0xf6, 0x80, 0xda, 0x37, 0xce, 0x8d, 0xba, 0xde, 0x3d, 0x41, 0x48, 0x9f, + 0x8e, 0xbe, 0x5a, 0xce, 0x49, 0xf7, 0x6d, 0x99, 0x5a, 0x2a, 0xbf, 0x4b, + 0x23, 0xb1, 0x64, 0xca, 0x35, 0x7a, 0x07, 0xd5, 0x5c, 0x77, 0x2a, 0x46, + 0x41, 0xa1, 0x03, 0x7b, +}; +static const unsigned char kat2631_addinreseed[] = { + 0x0c, 0xc6, 0xab, 0x5b, 0x55, 0x79, 0xb6, 0xc3, 0x46, 0x53, 0xc4, 0xa3, + 0x2a, 0x6a, 0xdf, 0x43, 0x75, 0x72, 0x3e, 0xb2, 0xd9, 0xa8, 0x40, 0x78, + 0xb4, 0x83, 0xff, 0x5d, 0x68, 0xc5, 0xf3, 0x6f, 0xa8, 0xab, 0x1a, 0x04, + 0x68, 0x91, 0xaf, 0xf7, +}; +static const unsigned char kat2631_addin0[] = { + 0x05, 0xcb, 0xe8, 0x10, 0x16, 0xed, 0x81, 0xdf, 0xc5, 0xf2, 0x56, 0x6f, + 0xb7, 0xcd, 0xad, 0x39, 0xf5, 0xf1, 0x33, 0x83, 0xfc, 0xf4, 0xa7, 0x6d, + 0x65, 0x2d, 0xff, 0x36, 0x24, 0x65, 0x5c, 0xaa, 0xa8, 0x4c, 0xaa, 0x5a, + 0xc8, 0x18, 0x0a, 0xa3, +}; +static const unsigned char kat2631_addin1[] = { + 0xff, 0x51, 0xb1, 0x92, 0xf7, 0x3e, 0x0e, 0x5c, 0xe5, 0x8b, 0x79, 0xb0, + 0xe1, 0x1b, 0x6e, 0xa5, 0x2e, 0x4d, 0xfd, 0xcd, 0xc8, 0x14, 0x9d, 0xa5, + 0xee, 0xf1, 0x46, 0xe5, 0x7a, 0x15, 0xb0, 0x9b, 0xcd, 0x1f, 0x39, 0xd8, + 0xda, 0x07, 0x37, 0x8a, +}; +static const unsigned char kat2631_retbits[] = { + 0x63, 0xe7, 0x3b, 0x6b, 0xc6, 0xab, 0xcc, 0x44, 0xf2, 0xd2, 0x81, 0xa2, + 0x89, 0xec, 0x1c, 0xe2, 0x2c, 0x49, 0xec, 0x39, 0x31, 0x13, 0xb6, 0x6a, + 0xb5, 0x9d, 0x21, 0xb2, 0xec, 0xe0, 0xfd, 0x89, 0x2f, 0x09, 0x1b, 0xd8, + 0xb1, 0x06, 0x3e, 0x78, 0xb5, 0x94, 0x59, 0x30, 0xe9, 0x1c, 0x74, 0xf4, + 0x8b, 0x5b, 0xec, 0x7e, 0xac, 0xa9, 0xcc, 0xac, 0xeb, 0xeb, 0xeb, 0x78, + 0x41, 0x10, 0x3c, 0x23, +}; +static const struct drbg_kat_pr_false kat2631_t = { + 5, kat2631_entropyin, kat2631_nonce, kat2631_persstr, + kat2631_entropyinreseed, kat2631_addinreseed, kat2631_addin0, + kat2631_addin1, kat2631_retbits +}; +static const struct drbg_kat kat2631 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2631_t +}; + +static const unsigned char kat2632_entropyin[] = { + 0x48, 0x29, 0x60, 0x09, 0xfd, 0x60, 0xd6, 0x04, 0x00, 0x23, 0x01, 0x4c, + 0xce, 0x63, 0xc6, 0xbc, 0x00, 0x10, 0xc7, 0x9d, 0x15, 0x2c, 0x77, 0x76, + 0xad, 0x53, 0x5c, 0x2c, 0x75, 0x81, 0x75, 0x4e, 0xf6, 0x66, 0x35, 0x55, + 0x50, 0x52, 0xd2, 0x37, +}; +static const unsigned char kat2632_nonce[] = {0}; +static const unsigned char kat2632_persstr[] = { + 0xf8, 0x06, 0x94, 0x59, 0x92, 0x1f, 0x69, 0x19, 0x11, 0x3c, 0x48, 0x76, + 0x3e, 0x2c, 0x1c, 0x3c, 0xf8, 0x92, 0x3b, 0xc6, 0x9a, 0x19, 0x2d, 0xcd, + 0x07, 0xd0, 0x6b, 0x51, 0xe0, 0x70, 0xb4, 0x64, 0x78, 0x1f, 0x19, 0x7c, + 0x77, 0x76, 0x78, 0x81, +}; +static const unsigned char kat2632_entropyinreseed[] = { + 0x48, 0x0e, 0x60, 0x2e, 0x1a, 0x30, 0x42, 0x56, 0x2c, 0x06, 0x80, 0xf1, + 0x31, 0xaa, 0x61, 0xcb, 0xe0, 0x1b, 0x11, 0x7b, 0x58, 0x2d, 0x8f, 0x98, + 0x12, 0x1a, 0x50, 0x57, 0xc7, 0xad, 0x13, 0x60, 0xe5, 0x1d, 0xf6, 0x4f, + 0x8c, 0xc7, 0x90, 0x6d, +}; +static const unsigned char kat2632_addinreseed[] = { + 0xf0, 0xde, 0x8c, 0xf5, 0x49, 0x1b, 0xd8, 0x3d, 0x20, 0x01, 0x03, 0x1c, + 0x34, 0x9f, 0x88, 0x71, 0xa3, 0xdd, 0xd0, 0xdc, 0x6a, 0x6f, 0x3c, 0xc1, + 0xe3, 0x74, 0x91, 0xaa, 0x2b, 0xfe, 0x76, 0xe9, 0xf5, 0x53, 0x65, 0x03, + 0x10, 0xfd, 0xf1, 0x6a, +}; +static const unsigned char kat2632_addin0[] = { + 0x32, 0xd4, 0x4d, 0x8b, 0xe9, 0xe9, 0xc2, 0x30, 0xbf, 0x1a, 0x19, 0x51, + 0x1f, 0x6e, 0xab, 0x4b, 0xb2, 0xb1, 0xae, 0xad, 0xba, 0xaa, 0xa6, 0x5c, + 0x6c, 0x82, 0x60, 0x4d, 0xba, 0x9d, 0xf5, 0x90, 0x20, 0xd1, 0xb7, 0x00, + 0x0a, 0xf7, 0x7f, 0x62, +}; +static const unsigned char kat2632_addin1[] = { + 0x07, 0x4d, 0x03, 0xe6, 0x1a, 0x8b, 0xff, 0xa9, 0xe0, 0xda, 0x64, 0x81, + 0x4d, 0xa2, 0x23, 0x9e, 0x6e, 0xd3, 0x56, 0xa9, 0x40, 0xcf, 0x9a, 0xca, + 0xba, 0x2a, 0x4a, 0x36, 0xac, 0xf2, 0x33, 0xd2, 0xdf, 0xf1, 0x83, 0xf4, + 0xe4, 0xfe, 0x0f, 0x32, +}; +static const unsigned char kat2632_retbits[] = { + 0x0b, 0x58, 0xfd, 0xf2, 0x1d, 0xbe, 0x6e, 0xe8, 0xa3, 0xc9, 0xb6, 0xf2, + 0x9b, 0xf5, 0xbe, 0x0f, 0x50, 0x45, 0x52, 0x7f, 0x9c, 0x27, 0x28, 0x8b, + 0x65, 0x6d, 0xb4, 0xe4, 0x9c, 0x89, 0x5c, 0xf8, 0xaa, 0xe3, 0x5a, 0x6f, + 0xc9, 0x33, 0x94, 0xca, 0x54, 0xa5, 0x33, 0xaf, 0x35, 0x97, 0xec, 0xe7, + 0xad, 0x62, 0xd2, 0xe2, 0x9f, 0x31, 0x3e, 0x1a, 0xfb, 0x3f, 0x81, 0xcf, + 0x6d, 0xff, 0x5c, 0x6b, +}; +static const struct drbg_kat_pr_false kat2632_t = { + 6, kat2632_entropyin, kat2632_nonce, kat2632_persstr, + kat2632_entropyinreseed, kat2632_addinreseed, kat2632_addin0, + kat2632_addin1, kat2632_retbits +}; +static const struct drbg_kat kat2632 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2632_t +}; + +static const unsigned char kat2633_entropyin[] = { + 0xa0, 0x7f, 0xdd, 0x2a, 0x4e, 0x21, 0xd9, 0x13, 0xbb, 0xa2, 0xa6, 0xeb, + 0x10, 0xb3, 0x58, 0x36, 0xed, 0x80, 0xf4, 0x88, 0x25, 0xcb, 0x76, 0x61, + 0x87, 0x46, 0x06, 0x3a, 0xcd, 0xb2, 0x65, 0xb7, 0x16, 0xcb, 0x91, 0x68, + 0x9b, 0x58, 0x0c, 0x41, +}; +static const unsigned char kat2633_nonce[] = {0}; +static const unsigned char kat2633_persstr[] = { + 0xa9, 0x9c, 0x67, 0x1e, 0x4a, 0x72, 0x6a, 0xe0, 0x7f, 0xa7, 0x08, 0xdf, + 0x80, 0x23, 0xbd, 0x20, 0x76, 0x53, 0x97, 0xd8, 0xae, 0xcb, 0x85, 0xec, + 0x56, 0x9e, 0x99, 0x01, 0xdb, 0xa6, 0xde, 0x3e, 0x4d, 0xf1, 0xc8, 0xee, + 0x46, 0x4c, 0x96, 0xd6, +}; +static const unsigned char kat2633_entropyinreseed[] = { + 0xb5, 0x1b, 0x3c, 0x5b, 0x27, 0x16, 0x99, 0xa0, 0xb9, 0x1e, 0xe1, 0x95, + 0x6e, 0x99, 0x4e, 0x4a, 0x6a, 0x63, 0xbe, 0x4c, 0x66, 0xa3, 0x6b, 0x20, + 0x79, 0x9e, 0x75, 0xbb, 0x3f, 0x11, 0xcb, 0xdb, 0x9c, 0x54, 0xe6, 0x4a, + 0x97, 0x77, 0x02, 0x99, +}; +static const unsigned char kat2633_addinreseed[] = { + 0xc3, 0x59, 0x51, 0x43, 0x06, 0x97, 0x71, 0x7b, 0xa1, 0xe1, 0x2b, 0x05, + 0x7f, 0x2a, 0x2a, 0x2a, 0x5f, 0x87, 0xcb, 0x15, 0x78, 0x28, 0x89, 0x40, + 0x68, 0xb0, 0xd1, 0xf4, 0x36, 0x40, 0xdd, 0x86, 0x74, 0xd6, 0x9b, 0x13, + 0x42, 0x14, 0x2f, 0xec, +}; +static const unsigned char kat2633_addin0[] = { + 0xe8, 0xa8, 0x3c, 0x91, 0x42, 0xee, 0x88, 0x47, 0x9f, 0xa1, 0x65, 0x56, + 0xb9, 0x70, 0x26, 0xfb, 0x35, 0x74, 0x39, 0x0b, 0xc0, 0x3b, 0x18, 0x23, + 0xce, 0x0e, 0x91, 0x60, 0xce, 0xd7, 0xe1, 0x4b, 0xdb, 0x43, 0x28, 0x2a, + 0xfc, 0xb3, 0x86, 0x9b, +}; +static const unsigned char kat2633_addin1[] = { + 0x9d, 0xf3, 0xa7, 0x7e, 0xec, 0x55, 0x17, 0x62, 0x44, 0x2f, 0x08, 0xd5, + 0x15, 0x29, 0xc1, 0xf5, 0x02, 0x50, 0x7f, 0xaa, 0xf3, 0xd3, 0xf9, 0x48, + 0x5c, 0x75, 0xbf, 0x1e, 0x02, 0x79, 0xea, 0x7e, 0x05, 0x5f, 0x51, 0xf6, + 0xc4, 0x1a, 0x39, 0xf6, +}; +static const unsigned char kat2633_retbits[] = { + 0xc7, 0x21, 0xcb, 0x5c, 0x65, 0x4b, 0xaf, 0xbe, 0xee, 0x5f, 0x61, 0x1c, + 0x73, 0xcf, 0xa2, 0x6a, 0x3b, 0x8f, 0x10, 0xc0, 0x62, 0x5f, 0x5a, 0x89, + 0xf9, 0x28, 0x55, 0x66, 0xc9, 0x5a, 0x12, 0xc9, 0x5a, 0xd2, 0x97, 0x9e, + 0x04, 0x37, 0x6f, 0x25, 0xb0, 0x47, 0xce, 0x42, 0xeb, 0xdc, 0xa0, 0xca, + 0x15, 0x2b, 0xcd, 0x6c, 0xa8, 0x0f, 0xe9, 0x3e, 0xd3, 0x50, 0x47, 0xe2, + 0x30, 0x75, 0x81, 0x90, +}; +static const struct drbg_kat_pr_false kat2633_t = { + 7, kat2633_entropyin, kat2633_nonce, kat2633_persstr, + kat2633_entropyinreseed, kat2633_addinreseed, kat2633_addin0, + kat2633_addin1, kat2633_retbits +}; +static const struct drbg_kat kat2633 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2633_t +}; + +static const unsigned char kat2634_entropyin[] = { + 0x35, 0x2d, 0xe6, 0xd4, 0x70, 0x17, 0xde, 0x06, 0x65, 0x9b, 0x13, 0x44, + 0x85, 0xa1, 0x54, 0x1e, 0xb3, 0x34, 0xc8, 0x7f, 0x1f, 0x74, 0xc0, 0x94, + 0xe5, 0xef, 0x9d, 0xa5, 0x31, 0xcf, 0x7a, 0x70, 0x1c, 0x57, 0x73, 0xe3, + 0x43, 0xa6, 0xf9, 0x2f, +}; +static const unsigned char kat2634_nonce[] = {0}; +static const unsigned char kat2634_persstr[] = { + 0xb6, 0x0a, 0x38, 0x23, 0x1d, 0x74, 0x96, 0xf4, 0x71, 0x61, 0xa5, 0xcc, + 0x86, 0xff, 0x7d, 0xbe, 0x3f, 0xa9, 0x1e, 0xe8, 0x8f, 0x2d, 0x23, 0x01, + 0x8f, 0xe2, 0x1e, 0xd8, 0x5b, 0x08, 0x4c, 0x81, 0xff, 0xf6, 0x52, 0x4b, + 0xec, 0xba, 0x40, 0xea, +}; +static const unsigned char kat2634_entropyinreseed[] = { + 0x07, 0x8a, 0xeb, 0xf7, 0x6d, 0x37, 0xb3, 0x7d, 0x7b, 0x24, 0xce, 0x4f, + 0xc3, 0xbe, 0x77, 0x0e, 0x27, 0xb6, 0xc6, 0xb6, 0x14, 0x14, 0x5f, 0xf5, + 0x85, 0x58, 0xd8, 0x6e, 0xea, 0x6c, 0x46, 0xec, 0x43, 0x51, 0x28, 0xe1, + 0xd5, 0x69, 0x59, 0x62, +}; +static const unsigned char kat2634_addinreseed[] = { + 0xc4, 0x42, 0x45, 0x51, 0x56, 0x62, 0xc7, 0x2c, 0xbe, 0x1a, 0x50, 0xd3, + 0xed, 0x3e, 0x78, 0xcd, 0xce, 0x96, 0x6b, 0x11, 0x93, 0x28, 0x00, 0x22, + 0x54, 0xad, 0xc2, 0x89, 0xee, 0xda, 0x35, 0x1c, 0xcb, 0x86, 0x7f, 0x75, + 0x29, 0xea, 0xf9, 0xd5, +}; +static const unsigned char kat2634_addin0[] = { + 0x23, 0x10, 0x20, 0x5e, 0x41, 0x47, 0x4d, 0xc7, 0x14, 0xe0, 0x2c, 0x5b, + 0x67, 0x4b, 0x2d, 0x25, 0xf8, 0x50, 0x37, 0x20, 0x31, 0xcf, 0x1a, 0x10, + 0x95, 0x8c, 0x2d, 0x14, 0x10, 0xaf, 0xa3, 0xa2, 0xfd, 0xca, 0x47, 0xa0, + 0xb3, 0xb3, 0xc8, 0x18, +}; +static const unsigned char kat2634_addin1[] = { + 0xb5, 0xa3, 0xa8, 0x59, 0x30, 0x38, 0xaa, 0x26, 0x49, 0x91, 0x71, 0x4e, + 0xa9, 0x84, 0xdb, 0xa9, 0xff, 0x76, 0xa4, 0x9f, 0x69, 0xc7, 0x5f, 0xa9, + 0xd2, 0x16, 0x4b, 0xc1, 0x7a, 0x0b, 0xa4, 0x12, 0x73, 0x99, 0x03, 0x67, + 0xbc, 0xd6, 0xa4, 0x9d, +}; +static const unsigned char kat2634_retbits[] = { + 0x34, 0x8a, 0x41, 0xb2, 0x31, 0xb3, 0x3c, 0x4e, 0x45, 0x96, 0x4f, 0xa8, + 0x90, 0x6c, 0xc9, 0xf7, 0x6d, 0xe3, 0x23, 0x25, 0x7d, 0xbb, 0x9d, 0x68, + 0x3f, 0x6c, 0xb4, 0xb8, 0xa6, 0x7b, 0x5d, 0xcf, 0x59, 0x8a, 0x2e, 0x15, + 0xbf, 0x49, 0x82, 0xc8, 0x3f, 0x61, 0x36, 0xe5, 0xff, 0xb0, 0x6d, 0x52, + 0x90, 0x92, 0x78, 0xb6, 0x83, 0x69, 0x5f, 0x94, 0x5a, 0x9a, 0xc3, 0xc7, + 0xac, 0x00, 0x3b, 0xb6, +}; +static const struct drbg_kat_pr_false kat2634_t = { + 8, kat2634_entropyin, kat2634_nonce, kat2634_persstr, + kat2634_entropyinreseed, kat2634_addinreseed, kat2634_addin0, + kat2634_addin1, kat2634_retbits +}; +static const struct drbg_kat kat2634 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2634_t +}; + +static const unsigned char kat2635_entropyin[] = { + 0x92, 0x61, 0xac, 0x19, 0x64, 0xa0, 0xf1, 0x1a, 0x47, 0x9e, 0x9f, 0x8b, + 0x23, 0x6f, 0x4a, 0x0d, 0x1b, 0xc6, 0x92, 0x4b, 0x0f, 0xd3, 0xb3, 0x89, + 0x87, 0xef, 0xa4, 0x19, 0x25, 0xc4, 0x79, 0xc3, 0x7c, 0xdd, 0x63, 0xdd, + 0x86, 0x67, 0x88, 0x4e, +}; +static const unsigned char kat2635_nonce[] = {0}; +static const unsigned char kat2635_persstr[] = { + 0x73, 0x61, 0x0e, 0x5f, 0xb9, 0x90, 0x69, 0xd7, 0xe9, 0xdc, 0xd6, 0x14, + 0xa6, 0x3f, 0x53, 0x11, 0x3e, 0x8d, 0x8f, 0xea, 0x7b, 0x68, 0x86, 0x6c, + 0x4a, 0x18, 0x44, 0xe8, 0x68, 0xf0, 0xa5, 0x65, 0x5e, 0xd7, 0xdb, 0x74, + 0xb8, 0x61, 0x28, 0xc3, +}; +static const unsigned char kat2635_entropyinreseed[] = { + 0x75, 0x74, 0x4d, 0x63, 0x5a, 0x71, 0xd5, 0xb6, 0x3f, 0x1b, 0x39, 0x61, + 0x34, 0x36, 0x9b, 0x03, 0xc9, 0x69, 0x1d, 0x07, 0x1f, 0xf2, 0xa7, 0x16, + 0xef, 0x8d, 0x09, 0x3a, 0xc2, 0xda, 0xb2, 0x3b, 0x2b, 0xd5, 0xdc, 0x1b, + 0x97, 0x29, 0x47, 0xf1, +}; +static const unsigned char kat2635_addinreseed[] = { + 0xe5, 0x3b, 0xf2, 0x52, 0x21, 0x8a, 0x02, 0xed, 0xad, 0x67, 0x5a, 0x22, + 0x77, 0xa2, 0x79, 0xcb, 0xab, 0xc9, 0x51, 0x88, 0xe9, 0xe1, 0xb0, 0x16, + 0xa3, 0x93, 0xc2, 0xad, 0x37, 0xf8, 0x9c, 0xad, 0xb0, 0x30, 0x3a, 0x58, + 0xf4, 0x85, 0xb5, 0x94, +}; +static const unsigned char kat2635_addin0[] = { + 0xcb, 0xe3, 0xcd, 0x60, 0xa4, 0x2c, 0x24, 0x68, 0x45, 0xa6, 0x1f, 0x8f, + 0x69, 0xa7, 0xb3, 0x9e, 0x16, 0xad, 0x67, 0x77, 0xb7, 0x2d, 0xc7, 0xea, + 0x96, 0xf6, 0xf7, 0x69, 0x30, 0xa4, 0x7e, 0xc1, 0xf2, 0xc0, 0x5b, 0xc4, + 0xc6, 0xe1, 0xb5, 0xba, +}; +static const unsigned char kat2635_addin1[] = { + 0xd0, 0xba, 0x14, 0x96, 0xae, 0x38, 0x2a, 0xb4, 0xcc, 0x47, 0xfd, 0x82, + 0xb5, 0xcf, 0x30, 0xb8, 0x8a, 0xb8, 0xf3, 0xc9, 0xd7, 0x2d, 0x68, 0xc1, + 0x3f, 0xe5, 0xe5, 0x13, 0x35, 0xa6, 0x2f, 0xc5, 0x50, 0x3a, 0x52, 0x19, + 0x87, 0x4e, 0x64, 0x7d, +}; +static const unsigned char kat2635_retbits[] = { + 0xdf, 0xb6, 0xa0, 0x27, 0x59, 0x4c, 0xfe, 0xab, 0x6d, 0x5a, 0xa8, 0x52, + 0x50, 0xd7, 0x97, 0xc6, 0xc7, 0x2f, 0x55, 0x29, 0x77, 0xe3, 0xd3, 0x08, + 0x75, 0x8a, 0xc6, 0xef, 0xa4, 0x17, 0x9d, 0x65, 0x1f, 0x63, 0x57, 0xdf, + 0xf7, 0xbe, 0x90, 0x09, 0x56, 0x6b, 0x04, 0x1c, 0xbf, 0x22, 0x9f, 0x4e, + 0x9f, 0x26, 0xa3, 0x82, 0x35, 0x55, 0x9a, 0xac, 0x35, 0xb2, 0x64, 0xda, + 0xa3, 0x77, 0x63, 0xe2, +}; +static const struct drbg_kat_pr_false kat2635_t = { + 9, kat2635_entropyin, kat2635_nonce, kat2635_persstr, + kat2635_entropyinreseed, kat2635_addinreseed, kat2635_addin0, + kat2635_addin1, kat2635_retbits +}; +static const struct drbg_kat kat2635 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2635_t +}; + +static const unsigned char kat2636_entropyin[] = { + 0xbe, 0x5a, 0x99, 0x78, 0x97, 0x45, 0x43, 0x2f, 0x37, 0xef, 0xf1, 0x53, + 0x2d, 0x2f, 0x08, 0xed, 0xbb, 0xac, 0x01, 0x9e, 0x9f, 0xd2, 0xa6, 0x88, + 0xd9, 0xca, 0x48, 0x92, 0xac, 0x4c, 0x92, 0x8f, 0xae, 0x2a, 0x4d, 0xdf, + 0x95, 0x95, 0xd4, 0x49, +}; +static const unsigned char kat2636_nonce[] = {0}; +static const unsigned char kat2636_persstr[] = { + 0x01, 0x26, 0xc2, 0x47, 0x8d, 0x7b, 0x41, 0x94, 0xe1, 0xfd, 0x66, 0xe1, + 0xff, 0x66, 0x32, 0xf4, 0x2b, 0x82, 0x01, 0x36, 0xc3, 0xa6, 0x87, 0x15, + 0x24, 0xda, 0x7d, 0xcf, 0x0b, 0xa2, 0x73, 0x32, 0x29, 0x3f, 0x25, 0x7e, + 0x52, 0xda, 0xe1, 0xf3, +}; +static const unsigned char kat2636_entropyinreseed[] = { + 0xbf, 0xd5, 0x03, 0xa5, 0x82, 0xd6, 0xec, 0x5a, 0x7f, 0x84, 0x3a, 0x97, + 0x22, 0xed, 0xf6, 0xf9, 0x9d, 0xe2, 0x69, 0x7f, 0xd5, 0x14, 0xd1, 0x0b, + 0x78, 0x69, 0x1d, 0xd8, 0x03, 0xc3, 0x8c, 0xc6, 0x29, 0xe1, 0x16, 0x1b, + 0x93, 0x3d, 0x42, 0xdd, +}; +static const unsigned char kat2636_addinreseed[] = { + 0x00, 0x9e, 0x0b, 0x92, 0x63, 0x1c, 0x7d, 0x3a, 0x13, 0xd9, 0xaf, 0x5e, + 0x91, 0x7e, 0x5b, 0xbb, 0x92, 0xd0, 0x1d, 0x52, 0xb7, 0x1b, 0x76, 0x7b, + 0x8e, 0x16, 0xf4, 0xc0, 0x90, 0x6c, 0x96, 0x43, 0xfe, 0x0e, 0xda, 0x52, + 0x91, 0x26, 0xcc, 0xed, +}; +static const unsigned char kat2636_addin0[] = { + 0x51, 0xdc, 0xff, 0x3b, 0x18, 0xbb, 0xc6, 0xbe, 0xb0, 0xf2, 0xd4, 0x5b, + 0x09, 0x90, 0x48, 0x01, 0xb5, 0x48, 0x88, 0x25, 0x14, 0x03, 0x7a, 0x30, + 0x44, 0x5d, 0x88, 0x86, 0x95, 0xc6, 0x13, 0x69, 0x2a, 0x5a, 0xef, 0xff, + 0x5d, 0x95, 0xdd, 0xde, +}; +static const unsigned char kat2636_addin1[] = { + 0x22, 0x82, 0x9c, 0x4e, 0x7c, 0x1b, 0x3c, 0xe2, 0x0c, 0xe9, 0x85, 0x89, + 0xff, 0x98, 0xbe, 0x88, 0xee, 0x98, 0x3e, 0x50, 0x2b, 0x0a, 0x90, 0xa3, + 0x58, 0x26, 0x20, 0x18, 0x43, 0xea, 0x82, 0xdf, 0xf5, 0x70, 0xda, 0x7e, + 0x9a, 0x74, 0x12, 0x67, +}; +static const unsigned char kat2636_retbits[] = { + 0x5c, 0x66, 0xca, 0x9b, 0x13, 0xdf, 0xd3, 0xf6, 0xdf, 0xb5, 0x04, 0x7c, + 0x5a, 0xb4, 0x79, 0x27, 0x7c, 0x04, 0x04, 0x92, 0xa0, 0xe7, 0xea, 0x65, + 0x82, 0xf1, 0x6b, 0xab, 0xe6, 0x42, 0x78, 0xd1, 0x8c, 0x37, 0x3b, 0xf9, + 0x17, 0x26, 0x59, 0x71, 0x43, 0xb0, 0x10, 0x84, 0x41, 0x7b, 0x05, 0x7e, + 0xbf, 0xb6, 0x10, 0xdd, 0x86, 0xee, 0x56, 0xff, 0x3d, 0xbb, 0xad, 0xd2, + 0x58, 0x70, 0x8e, 0xc7, +}; +static const struct drbg_kat_pr_false kat2636_t = { + 10, kat2636_entropyin, kat2636_nonce, kat2636_persstr, + kat2636_entropyinreseed, kat2636_addinreseed, kat2636_addin0, + kat2636_addin1, kat2636_retbits +}; +static const struct drbg_kat kat2636 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2636_t +}; + +static const unsigned char kat2637_entropyin[] = { + 0x1f, 0xaf, 0xe7, 0x02, 0x35, 0x97, 0xe0, 0x29, 0x75, 0xea, 0x23, 0x23, + 0x41, 0x93, 0x1b, 0xbd, 0xa0, 0xdd, 0xf1, 0x18, 0x06, 0xf5, 0x76, 0x67, + 0x98, 0x25, 0xdd, 0xaf, 0xf6, 0x9f, 0x21, 0xdc, 0x3e, 0xe7, 0x71, 0xfe, + 0x37, 0x98, 0x65, 0xdf, +}; +static const unsigned char kat2637_nonce[] = {0}; +static const unsigned char kat2637_persstr[] = { + 0x74, 0x67, 0x83, 0xd0, 0x0a, 0xc7, 0x78, 0xc1, 0x06, 0xef, 0x72, 0xf9, + 0x96, 0x1a, 0x78, 0x82, 0x97, 0x99, 0xe7, 0x5e, 0x42, 0xf6, 0xa7, 0x27, + 0x0b, 0xc4, 0xad, 0x33, 0x09, 0xa9, 0x1a, 0x50, 0x58, 0x25, 0x18, 0x99, + 0x6a, 0x60, 0xec, 0xf4, +}; +static const unsigned char kat2637_entropyinreseed[] = { + 0x62, 0x63, 0x1b, 0x75, 0x60, 0x52, 0xc4, 0x81, 0x86, 0xa8, 0x8d, 0xb3, + 0x5f, 0xb1, 0xfe, 0xf9, 0xc6, 0x58, 0x72, 0x1c, 0x51, 0x65, 0x18, 0x84, + 0x17, 0x56, 0x52, 0xed, 0x66, 0xd2, 0x4a, 0xa1, 0xb2, 0x04, 0x23, 0xfa, + 0xe2, 0xb5, 0x58, 0xf4, +}; +static const unsigned char kat2637_addinreseed[] = { + 0x66, 0xea, 0x5c, 0x41, 0x08, 0x99, 0x63, 0x57, 0x7a, 0xe0, 0x4d, 0x1c, + 0xd1, 0xe4, 0xc5, 0xdc, 0xd2, 0x01, 0xa5, 0xa1, 0xc6, 0x52, 0xbd, 0xed, + 0x83, 0x7b, 0x06, 0x62, 0x6a, 0x55, 0x70, 0x5c, 0x10, 0xb5, 0xbe, 0x03, + 0x23, 0x73, 0x58, 0xfd, +}; +static const unsigned char kat2637_addin0[] = { + 0x6b, 0xf8, 0x10, 0x0c, 0xeb, 0x82, 0x80, 0x76, 0xed, 0x58, 0x3d, 0x56, + 0xa2, 0xd2, 0x33, 0x3a, 0x75, 0xff, 0x9a, 0xf9, 0x9e, 0x87, 0xaf, 0x15, + 0xe4, 0x5e, 0x46, 0x31, 0x6b, 0x2c, 0x8f, 0xe1, 0x55, 0x18, 0x1f, 0x2f, + 0x63, 0xcc, 0xd7, 0xf6, +}; +static const unsigned char kat2637_addin1[] = { + 0x39, 0x3b, 0xd4, 0xcc, 0x23, 0x4c, 0x4b, 0x88, 0xfa, 0xfd, 0x48, 0x5a, + 0x81, 0xb3, 0x4e, 0xa5, 0x30, 0xc5, 0x1d, 0xc5, 0xcc, 0x87, 0x85, 0x46, + 0x5d, 0xda, 0xd6, 0xc4, 0x89, 0x7b, 0x71, 0x43, 0x17, 0x9a, 0x03, 0xff, + 0x30, 0x68, 0xb2, 0xb9, +}; +static const unsigned char kat2637_retbits[] = { + 0x14, 0x97, 0xda, 0x85, 0x00, 0x1b, 0xf9, 0x5b, 0x2a, 0x08, 0xac, 0x16, + 0x11, 0x65, 0xb1, 0x17, 0x70, 0xe3, 0x06, 0x53, 0xc6, 0x8a, 0x88, 0x48, + 0xd5, 0xe0, 0xa0, 0x55, 0x78, 0x9f, 0x02, 0x9e, 0x2f, 0x9b, 0x80, 0xb5, + 0xf8, 0x09, 0xdd, 0x8b, 0x75, 0xaa, 0xaf, 0xd8, 0xfe, 0x50, 0x95, 0xba, + 0x08, 0xcf, 0x7e, 0x40, 0x9b, 0x20, 0xa1, 0x37, 0xab, 0x3f, 0x88, 0x95, + 0x0d, 0x7a, 0x05, 0xa3, +}; +static const struct drbg_kat_pr_false kat2637_t = { + 11, kat2637_entropyin, kat2637_nonce, kat2637_persstr, + kat2637_entropyinreseed, kat2637_addinreseed, kat2637_addin0, + kat2637_addin1, kat2637_retbits +}; +static const struct drbg_kat kat2637 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2637_t +}; + +static const unsigned char kat2638_entropyin[] = { + 0xf3, 0x37, 0x05, 0x56, 0x46, 0x06, 0x14, 0xe6, 0x6b, 0xc8, 0xe2, 0x89, + 0xf5, 0xf0, 0xd9, 0x8e, 0x8b, 0x06, 0x29, 0x0f, 0x82, 0x2d, 0xef, 0x77, + 0x73, 0x8a, 0xaa, 0x33, 0x3d, 0x0d, 0xfe, 0x68, 0x89, 0x08, 0x46, 0xe0, + 0x69, 0x34, 0x93, 0x87, +}; +static const unsigned char kat2638_nonce[] = {0}; +static const unsigned char kat2638_persstr[] = { + 0xe2, 0x56, 0x37, 0xdc, 0xc4, 0xae, 0x0e, 0x8d, 0x9b, 0xbd, 0x40, 0x23, + 0x45, 0x74, 0xfc, 0x76, 0xe5, 0x4e, 0x02, 0xe1, 0x66, 0x4f, 0xb4, 0x64, + 0x55, 0xc8, 0x66, 0x0e, 0x33, 0xb4, 0x96, 0xcb, 0xbb, 0xa1, 0xbb, 0x98, + 0xdb, 0x1e, 0xc3, 0xf8, +}; +static const unsigned char kat2638_entropyinreseed[] = { + 0xb9, 0xc1, 0xe0, 0x34, 0xa0, 0x0b, 0xe6, 0x50, 0xba, 0x3f, 0x22, 0x51, + 0x7c, 0xa7, 0xba, 0x34, 0x9e, 0xf4, 0x6f, 0x7f, 0xdd, 0xdb, 0x5c, 0x49, + 0xe1, 0x9b, 0xbe, 0x2a, 0x97, 0x45, 0x97, 0xd0, 0x6d, 0x5f, 0xd1, 0xc9, + 0x99, 0xdc, 0x31, 0x21, +}; +static const unsigned char kat2638_addinreseed[] = { + 0x91, 0xd0, 0x9c, 0xb6, 0xbf, 0x47, 0x33, 0x0c, 0xa7, 0x1d, 0xad, 0xd6, + 0x8b, 0x28, 0x3b, 0x6b, 0xc2, 0x3c, 0xbe, 0x8b, 0x63, 0xe3, 0x71, 0x7c, + 0x3f, 0x57, 0xe6, 0x9a, 0x06, 0xf8, 0xcf, 0x23, 0x65, 0xaa, 0xbd, 0xf1, + 0x82, 0x60, 0xb9, 0xeb, +}; +static const unsigned char kat2638_addin0[] = { + 0x77, 0x99, 0xf7, 0x48, 0x6f, 0x88, 0x08, 0xfe, 0x8f, 0x77, 0xee, 0xb6, + 0x22, 0x16, 0xc3, 0x47, 0x69, 0xfd, 0x66, 0x00, 0x5f, 0x32, 0x80, 0x16, + 0xd6, 0x71, 0x5c, 0x2f, 0x53, 0x87, 0x95, 0x26, 0x7a, 0x71, 0xde, 0x47, + 0xc9, 0x7e, 0x91, 0x87, +}; +static const unsigned char kat2638_addin1[] = { + 0x1f, 0x8e, 0x44, 0xe8, 0x29, 0x65, 0x6f, 0x5d, 0xe2, 0xbf, 0x98, 0x8d, + 0xcf, 0xf0, 0xaa, 0xc9, 0x87, 0xae, 0x67, 0x61, 0x8c, 0x49, 0x76, 0x82, + 0x4d, 0xba, 0x40, 0x1a, 0x83, 0x0e, 0x94, 0x5a, 0x32, 0x1d, 0x9d, 0x5c, + 0x2f, 0x07, 0x66, 0xad, +}; +static const unsigned char kat2638_retbits[] = { + 0xa4, 0x5b, 0x6c, 0x0d, 0xca, 0x56, 0xb0, 0x4b, 0x03, 0x9e, 0x5e, 0x97, + 0xb3, 0x22, 0x1f, 0x9f, 0x1c, 0xda, 0xe5, 0xde, 0x69, 0x54, 0x71, 0x53, + 0x43, 0x0f, 0xee, 0xa9, 0x39, 0x5e, 0x2c, 0x31, 0x35, 0x5e, 0x60, 0x52, + 0xca, 0xb0, 0x89, 0xb3, 0x39, 0xd0, 0x8d, 0xba, 0x26, 0xad, 0x3d, 0x53, + 0x49, 0xc5, 0xfc, 0x8e, 0x92, 0x68, 0xf1, 0x13, 0xd0, 0xab, 0x00, 0xb5, + 0x96, 0x22, 0xb1, 0xbd, +}; +static const struct drbg_kat_pr_false kat2638_t = { + 12, kat2638_entropyin, kat2638_nonce, kat2638_persstr, + kat2638_entropyinreseed, kat2638_addinreseed, kat2638_addin0, + kat2638_addin1, kat2638_retbits +}; +static const struct drbg_kat kat2638 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2638_t +}; + +static const unsigned char kat2639_entropyin[] = { + 0x82, 0x97, 0x7d, 0x0f, 0xcd, 0xf8, 0x37, 0x2a, 0xc1, 0xc5, 0x4b, 0xbd, + 0x56, 0x2d, 0xb0, 0x4a, 0x93, 0xf9, 0x97, 0x11, 0xf9, 0x7b, 0x68, 0x50, + 0x3f, 0xd2, 0x83, 0x33, 0xf6, 0x7e, 0xaa, 0x65, 0x71, 0x0e, 0xb9, 0xad, + 0xb8, 0x85, 0xad, 0xeb, +}; +static const unsigned char kat2639_nonce[] = {0}; +static const unsigned char kat2639_persstr[] = { + 0xe6, 0x48, 0x95, 0xf0, 0x5e, 0xee, 0x65, 0x5d, 0x18, 0x5f, 0x72, 0xae, + 0xa7, 0x9b, 0xdc, 0x33, 0x23, 0x72, 0xe5, 0xba, 0xe7, 0xe4, 0xf0, 0xae, + 0xaf, 0x80, 0xd9, 0x06, 0x70, 0x8b, 0x6e, 0x14, 0xe9, 0x8e, 0xf7, 0xb6, + 0xd9, 0xce, 0x63, 0x57, +}; +static const unsigned char kat2639_entropyinreseed[] = { + 0x06, 0x2b, 0x41, 0xab, 0x5c, 0xf7, 0xdc, 0xdc, 0xac, 0x34, 0x31, 0x3d, + 0x60, 0xf0, 0x06, 0x9d, 0x3f, 0x48, 0x61, 0xe9, 0x7b, 0x92, 0xa1, 0x21, + 0x87, 0x9b, 0xa3, 0x06, 0x77, 0x0a, 0x61, 0x31, 0x00, 0x11, 0x28, 0x6d, + 0x91, 0x1c, 0x0f, 0x13, +}; +static const unsigned char kat2639_addinreseed[] = { + 0xb1, 0x88, 0x3f, 0x92, 0x30, 0x7c, 0x92, 0x43, 0xd0, 0xbd, 0x86, 0x8f, + 0xb2, 0x47, 0xc3, 0xfa, 0x0e, 0x21, 0xc8, 0xba, 0x43, 0x2b, 0x00, 0x3a, + 0xfe, 0x9f, 0x3c, 0x00, 0x10, 0x46, 0xde, 0x43, 0x28, 0x0b, 0x69, 0x65, + 0x47, 0xd1, 0xf7, 0xf3, +}; +static const unsigned char kat2639_addin0[] = { + 0xe9, 0x4c, 0xa9, 0x02, 0x43, 0x3a, 0x4d, 0xf3, 0x81, 0x6c, 0xae, 0x0a, + 0xe6, 0xd4, 0x3f, 0xec, 0xc2, 0x4d, 0x3c, 0x6f, 0x6e, 0x14, 0x36, 0xc7, + 0x88, 0xba, 0xe6, 0x53, 0x4d, 0xa0, 0xf1, 0xaf, 0xe0, 0xa8, 0x71, 0x42, + 0xa0, 0x84, 0xd9, 0x56, +}; +static const unsigned char kat2639_addin1[] = { + 0xe2, 0x78, 0xd1, 0x5e, 0x1d, 0x5d, 0xb2, 0x44, 0xf7, 0x26, 0xf7, 0x20, + 0x9e, 0xca, 0x4c, 0x95, 0x58, 0x94, 0x18, 0x54, 0x9b, 0xb0, 0x2c, 0x6e, + 0x7f, 0xb5, 0x0f, 0xb3, 0xa6, 0xa1, 0x76, 0x03, 0x26, 0x62, 0x41, 0x4b, + 0x23, 0x1f, 0xe4, 0x2f, +}; +static const unsigned char kat2639_retbits[] = { + 0x4c, 0x30, 0xaf, 0x81, 0x2c, 0x12, 0xe9, 0xbb, 0x12, 0xb6, 0xb2, 0x26, + 0x35, 0x32, 0xcf, 0x2e, 0xe5, 0x0b, 0x94, 0x07, 0x5b, 0xc7, 0x43, 0x38, + 0xb0, 0xbf, 0x7b, 0xda, 0xbf, 0xd3, 0x4d, 0x08, 0xb5, 0x6f, 0xc2, 0x71, + 0x68, 0xdd, 0x77, 0x5b, 0x9d, 0x37, 0x71, 0x8e, 0xb2, 0x1b, 0xbe, 0x60, + 0xc8, 0xe2, 0xf9, 0x07, 0xcf, 0xdb, 0xc6, 0xca, 0x26, 0xe7, 0xa5, 0x85, + 0x1b, 0x0a, 0xb8, 0x33, +}; +static const struct drbg_kat_pr_false kat2639_t = { + 13, kat2639_entropyin, kat2639_nonce, kat2639_persstr, + kat2639_entropyinreseed, kat2639_addinreseed, kat2639_addin0, + kat2639_addin1, kat2639_retbits +}; +static const struct drbg_kat kat2639 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2639_t +}; + +static const unsigned char kat2640_entropyin[] = { + 0x6a, 0x93, 0x39, 0x1a, 0x44, 0xc3, 0x0d, 0xb3, 0x86, 0xa0, 0x73, 0x57, + 0x1b, 0x0e, 0x5b, 0xb3, 0x6a, 0x6d, 0x73, 0x69, 0xb6, 0xb5, 0xcd, 0x7d, + 0xd0, 0xf3, 0x84, 0xde, 0xb9, 0xbf, 0xc6, 0x95, 0x87, 0x86, 0x7b, 0xd7, + 0xe1, 0x98, 0x2f, 0xa7, +}; +static const unsigned char kat2640_nonce[] = {0}; +static const unsigned char kat2640_persstr[] = { + 0x09, 0x96, 0x08, 0xcd, 0xb2, 0xce, 0xae, 0xd0, 0xd0, 0x74, 0xfe, 0x92, + 0x4b, 0x48, 0x3f, 0x8b, 0x7b, 0x74, 0xb1, 0x65, 0x4e, 0xd8, 0xea, 0xd4, + 0xf4, 0xd4, 0x90, 0x08, 0xe6, 0xd8, 0x52, 0xce, 0xbc, 0xac, 0xf7, 0x48, + 0x51, 0xe4, 0x8a, 0x5b, +}; +static const unsigned char kat2640_entropyinreseed[] = { + 0x3b, 0x95, 0x4a, 0x58, 0xd7, 0xcb, 0xfc, 0xb0, 0xb5, 0xad, 0x0b, 0x58, + 0x51, 0x5c, 0xe9, 0x3f, 0x52, 0x38, 0x02, 0xfe, 0x94, 0x72, 0x5e, 0x25, + 0xfd, 0xa9, 0x7b, 0x26, 0xcf, 0x16, 0x2e, 0x00, 0x03, 0xb1, 0xd0, 0x88, + 0xd8, 0xea, 0xc3, 0x9f, +}; +static const unsigned char kat2640_addinreseed[] = { + 0x24, 0x7d, 0xa8, 0xb5, 0xd0, 0xe1, 0x61, 0xf1, 0x59, 0x44, 0x35, 0x6a, + 0x46, 0x56, 0x23, 0x85, 0xcd, 0xf9, 0x8d, 0xe3, 0x32, 0xae, 0xd8, 0xce, + 0x25, 0x0b, 0xbc, 0xe3, 0x7f, 0xd3, 0xc2, 0x7c, 0x53, 0xb1, 0xae, 0xc2, + 0x64, 0x73, 0x4a, 0x1a, +}; +static const unsigned char kat2640_addin0[] = { + 0x6a, 0xec, 0x5f, 0x8c, 0x3d, 0xc5, 0x49, 0x24, 0x10, 0x4e, 0x04, 0x63, + 0x5a, 0xb8, 0x0b, 0x1f, 0x78, 0x28, 0x69, 0xbc, 0x5c, 0x15, 0x57, 0xf7, + 0xd8, 0x9d, 0xaa, 0x1e, 0x1b, 0x3b, 0xfb, 0x3c, 0xab, 0x96, 0x33, 0x89, + 0x22, 0x70, 0x5a, 0x78, +}; +static const unsigned char kat2640_addin1[] = { + 0x66, 0x8d, 0x73, 0x2a, 0x98, 0xf7, 0xae, 0x8c, 0xdc, 0x92, 0x35, 0xd6, + 0x3e, 0x70, 0x59, 0x55, 0xc0, 0x96, 0x00, 0xa4, 0x90, 0x02, 0x1a, 0x19, + 0xa3, 0x4c, 0x1b, 0xef, 0xba, 0x8c, 0xb6, 0x13, 0xee, 0x7d, 0x8e, 0x4c, + 0x57, 0x74, 0xab, 0xa4, +}; +static const unsigned char kat2640_retbits[] = { + 0x1d, 0xfb, 0x0a, 0x6b, 0xf4, 0x11, 0x58, 0x0a, 0xa5, 0x50, 0x44, 0xf2, + 0x6c, 0x59, 0x8d, 0x26, 0x20, 0x96, 0x5f, 0xc9, 0x4a, 0x76, 0x90, 0x01, + 0xf1, 0x0b, 0x19, 0x09, 0x22, 0x86, 0x16, 0x14, 0x6b, 0xc9, 0xd0, 0x2f, + 0x74, 0x9d, 0x09, 0x47, 0x86, 0x80, 0x5e, 0x3d, 0xb8, 0x59, 0xda, 0x9e, + 0x6a, 0x57, 0x28, 0x33, 0xaf, 0x5c, 0xef, 0xdb, 0x14, 0x78, 0x73, 0xec, + 0x60, 0x23, 0xb0, 0x28, +}; +static const struct drbg_kat_pr_false kat2640_t = { + 14, kat2640_entropyin, kat2640_nonce, kat2640_persstr, + kat2640_entropyinreseed, kat2640_addinreseed, kat2640_addin0, + kat2640_addin1, kat2640_retbits +}; +static const struct drbg_kat kat2640 = { + PR_FALSE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat2640_t +}; + +static const unsigned char kat2641_entropyin[] = { + 0xe4, 0xbc, 0x23, 0xc5, 0x08, 0x9a, 0x19, 0xd8, 0x6f, 0x41, 0x19, 0xcb, + 0x3f, 0xa0, 0x8c, 0x0a, 0x49, 0x91, 0xe0, 0xa1, 0xde, 0xf1, 0x7e, 0x10, + 0x1e, 0x4c, 0x14, 0xd9, 0xc3, 0x23, 0x46, 0x0a, 0x7c, 0x2f, 0xb5, 0x8e, + 0x0b, 0x08, 0x6c, 0x6c, 0x57, 0xb5, 0x5f, 0x56, 0xca, 0xe2, 0x5b, 0xad, +}; +static const unsigned char kat2641_nonce[] = {0}; +static const unsigned char kat2641_persstr[] = {0}; +static const unsigned char kat2641_entropyinreseed[] = { + 0xfd, 0x85, 0xa8, 0x36, 0xbb, 0xa8, 0x50, 0x19, 0x88, 0x1e, 0x8c, 0x6b, + 0xad, 0x23, 0xc9, 0x06, 0x1a, 0xdc, 0x75, 0x47, 0x76, 0x59, 0xac, 0xae, + 0xa8, 0xe4, 0xa0, 0x1d, 0xfe, 0x07, 0xa1, 0x83, 0x2d, 0xad, 0x1c, 0x13, + 0x6f, 0x59, 0xd7, 0x0f, 0x86, 0x53, 0xa5, 0xdc, 0x11, 0x86, 0x63, 0xd6, +}; +static const unsigned char kat2641_addinreseed[] = {0}; +static const unsigned char kat2641_addin0[] = {0}; +static const unsigned char kat2641_addin1[] = {0}; +static const unsigned char kat2641_retbits[] = { + 0xb2, 0xcb, 0x89, 0x05, 0xc0, 0x5e, 0x59, 0x50, 0xca, 0x31, 0x89, 0x50, + 0x96, 0xbe, 0x29, 0xea, 0x3d, 0x5a, 0x3b, 0x82, 0xb2, 0x69, 0x49, 0x55, + 0x54, 0xeb, 0x80, 0xfe, 0x07, 0xde, 0x43, 0xe1, 0x93, 0xb9, 0xe7, 0xc3, + 0xec, 0xe7, 0x3b, 0x80, 0xe0, 0x62, 0xb1, 0xc1, 0xf6, 0x82, 0x02, 0xfb, + 0xb1, 0xc5, 0x2a, 0x04, 0x0e, 0xa2, 0x47, 0x88, 0x64, 0x29, 0x52, 0x82, + 0x23, 0x4a, 0xaa, 0xda, +}; +static const struct drbg_kat_pr_false kat2641_t = { + 0, kat2641_entropyin, kat2641_nonce, kat2641_persstr, + kat2641_entropyinreseed, kat2641_addinreseed, kat2641_addin0, + kat2641_addin1, kat2641_retbits +}; +static const struct drbg_kat kat2641 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2641_t +}; + +static const unsigned char kat2642_entropyin[] = { + 0xed, 0xfd, 0xb5, 0x5e, 0x77, 0xd4, 0x18, 0xa6, 0x3e, 0x44, 0x14, 0xdf, + 0xd4, 0x22, 0x25, 0xed, 0x25, 0x7c, 0xf7, 0x4e, 0x99, 0x32, 0x5f, 0xba, + 0x26, 0xe8, 0xf3, 0xa4, 0x52, 0x4a, 0x71, 0xbc, 0x80, 0xa7, 0x31, 0xaf, + 0x23, 0x25, 0x69, 0x08, 0xcb, 0x46, 0x75, 0xa9, 0xc2, 0x53, 0xea, 0x6f, +}; +static const unsigned char kat2642_nonce[] = {0}; +static const unsigned char kat2642_persstr[] = {0}; +static const unsigned char kat2642_entropyinreseed[] = { + 0xa9, 0x37, 0x2f, 0xea, 0x93, 0xd6, 0x07, 0xfb, 0xbc, 0x75, 0xa9, 0x7b, + 0x7f, 0x65, 0xf2, 0xd4, 0xae, 0x8c, 0x06, 0xbd, 0x18, 0x49, 0x81, 0x57, + 0x2e, 0x88, 0x8a, 0x35, 0xc5, 0x79, 0x4d, 0x2b, 0xb3, 0x80, 0xa4, 0xae, + 0x04, 0xbb, 0xa2, 0x7f, 0x2e, 0xfc, 0xc9, 0xe7, 0x91, 0x4b, 0x96, 0xdc, +}; +static const unsigned char kat2642_addinreseed[] = {0}; +static const unsigned char kat2642_addin0[] = {0}; +static const unsigned char kat2642_addin1[] = {0}; +static const unsigned char kat2642_retbits[] = { + 0x11, 0xb1, 0xa0, 0xf0, 0xbb, 0x93, 0x5e, 0xc0, 0xc5, 0x4e, 0x08, 0x9e, + 0x0c, 0xd2, 0x08, 0x32, 0xd1, 0xf0, 0x0e, 0x70, 0x69, 0xf3, 0x0e, 0x9e, + 0xa2, 0xe3, 0x5b, 0x7f, 0x15, 0xec, 0xf0, 0x57, 0x7d, 0x0e, 0x90, 0x03, + 0x5b, 0xf0, 0xf9, 0x1f, 0xfd, 0x9e, 0x8a, 0x1f, 0xa8, 0xa5, 0x07, 0x50, + 0x37, 0x39, 0xaf, 0xbe, 0xc1, 0x93, 0x93, 0xe0, 0x2c, 0x9b, 0x7c, 0x23, + 0x0c, 0xde, 0xa3, 0x6f, +}; +static const struct drbg_kat_pr_false kat2642_t = { + 1, kat2642_entropyin, kat2642_nonce, kat2642_persstr, + kat2642_entropyinreseed, kat2642_addinreseed, kat2642_addin0, + kat2642_addin1, kat2642_retbits +}; +static const struct drbg_kat kat2642 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2642_t +}; + +static const unsigned char kat2643_entropyin[] = { + 0xf2, 0x53, 0xfd, 0x44, 0x2b, 0x10, 0x54, 0x34, 0xc0, 0xf4, 0x7b, 0xa9, + 0xb6, 0x79, 0x8b, 0xc2, 0x0c, 0x88, 0x32, 0xa1, 0x42, 0xa2, 0xa6, 0xd9, + 0x65, 0x67, 0x84, 0x85, 0xa3, 0xac, 0x52, 0x39, 0x35, 0x28, 0xa5, 0xe0, + 0x92, 0x34, 0x1d, 0x60, 0xad, 0x74, 0x42, 0x9f, 0x40, 0x05, 0xf8, 0xbb, +}; +static const unsigned char kat2643_nonce[] = {0}; +static const unsigned char kat2643_persstr[] = {0}; +static const unsigned char kat2643_entropyinreseed[] = { + 0x60, 0x0c, 0x82, 0x2b, 0x19, 0x8d, 0xbd, 0xcd, 0x9d, 0x13, 0xee, 0x25, + 0xbd, 0x4b, 0x84, 0x6e, 0x5d, 0x86, 0x65, 0x72, 0x5e, 0xac, 0x53, 0x47, + 0xb4, 0xcf, 0xe7, 0x51, 0x2c, 0x1f, 0x3f, 0xbd, 0xc4, 0xc5, 0x1c, 0x85, + 0xd9, 0x77, 0xca, 0x58, 0xe9, 0xe6, 0x48, 0x5a, 0x17, 0xc5, 0x33, 0xbb, +}; +static const unsigned char kat2643_addinreseed[] = {0}; +static const unsigned char kat2643_addin0[] = {0}; +static const unsigned char kat2643_addin1[] = {0}; +static const unsigned char kat2643_retbits[] = { + 0x07, 0x64, 0x19, 0xbd, 0xd3, 0x54, 0xd6, 0xa1, 0xf1, 0x41, 0x5a, 0x0a, + 0x71, 0xbe, 0xd9, 0x4d, 0xb2, 0x9c, 0xad, 0x22, 0xf0, 0x20, 0x5d, 0x98, + 0x3c, 0x84, 0x18, 0x74, 0x49, 0x78, 0x75, 0xa4, 0x85, 0x74, 0x04, 0xe5, + 0x73, 0x54, 0x53, 0x66, 0x85, 0x0f, 0xe6, 0xeb, 0x52, 0x86, 0xe0, 0xde, + 0xb8, 0x7d, 0xdd, 0x63, 0xbb, 0x33, 0x17, 0xb4, 0x55, 0x6a, 0x82, 0x92, + 0x04, 0x12, 0xae, 0xef, +}; +static const struct drbg_kat_pr_false kat2643_t = { + 2, kat2643_entropyin, kat2643_nonce, kat2643_persstr, + kat2643_entropyinreseed, kat2643_addinreseed, kat2643_addin0, + kat2643_addin1, kat2643_retbits +}; +static const struct drbg_kat kat2643 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2643_t +}; + +static const unsigned char kat2644_entropyin[] = { + 0x8d, 0xbf, 0x2c, 0x37, 0xdb, 0xbf, 0x38, 0x62, 0xf0, 0x5a, 0xf4, 0xb3, + 0x2e, 0x98, 0xed, 0xd3, 0xd8, 0xcd, 0x7b, 0xd3, 0x4d, 0x8a, 0x23, 0xda, + 0xa2, 0xd1, 0x52, 0x00, 0xda, 0xed, 0x6e, 0x9d, 0x23, 0x83, 0x87, 0xba, + 0x85, 0xdd, 0xfd, 0x35, 0xa2, 0x98, 0x6b, 0xdf, 0x57, 0x90, 0xe1, 0xa7, +}; +static const unsigned char kat2644_nonce[] = {0}; +static const unsigned char kat2644_persstr[] = {0}; +static const unsigned char kat2644_entropyinreseed[] = { + 0xf6, 0x7a, 0xed, 0x05, 0xde, 0xa0, 0x8b, 0xaa, 0x16, 0xcb, 0xb6, 0x69, + 0xae, 0x31, 0x0a, 0x0b, 0x8e, 0x01, 0x9d, 0xa0, 0xa7, 0xfe, 0x27, 0x62, + 0xab, 0xf6, 0x84, 0x12, 0x12, 0x92, 0x18, 0x6a, 0x50, 0xbc, 0x13, 0xd5, + 0x68, 0x57, 0x6c, 0xe5, 0xd7, 0xae, 0xb0, 0x80, 0xe4, 0x60, 0x4a, 0x1e, +}; +static const unsigned char kat2644_addinreseed[] = {0}; +static const unsigned char kat2644_addin0[] = {0}; +static const unsigned char kat2644_addin1[] = {0}; +static const unsigned char kat2644_retbits[] = { + 0x69, 0x66, 0x6e, 0x65, 0xc5, 0x62, 0x31, 0x40, 0xda, 0x35, 0x92, 0x7e, + 0xc3, 0x91, 0x89, 0xfc, 0xfd, 0xa0, 0x89, 0x16, 0x74, 0xef, 0xdc, 0xd2, + 0xa7, 0xd6, 0xf2, 0x62, 0x89, 0x21, 0xa3, 0x7b, 0xd4, 0x9a, 0x16, 0x45, + 0x90, 0x41, 0x3c, 0x04, 0xf6, 0x09, 0x0a, 0x50, 0x33, 0x6f, 0x04, 0x0b, + 0x01, 0x5d, 0xd8, 0xc4, 0x54, 0x52, 0x99, 0x1b, 0xcd, 0xd9, 0x69, 0x94, + 0xc5, 0xec, 0xc6, 0xbd, +}; +static const struct drbg_kat_pr_false kat2644_t = { + 3, kat2644_entropyin, kat2644_nonce, kat2644_persstr, + kat2644_entropyinreseed, kat2644_addinreseed, kat2644_addin0, + kat2644_addin1, kat2644_retbits +}; +static const struct drbg_kat kat2644 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2644_t +}; + +static const unsigned char kat2645_entropyin[] = { + 0x2f, 0xac, 0x25, 0xdc, 0xea, 0x52, 0x74, 0xa7, 0xdb, 0xd6, 0xaf, 0x11, + 0x2d, 0x75, 0x7b, 0x59, 0xa4, 0x44, 0x7f, 0x5d, 0xcb, 0xda, 0x97, 0x26, + 0x66, 0xaf, 0x07, 0x1c, 0x5d, 0x8f, 0x71, 0x58, 0x3e, 0xc6, 0x91, 0x4a, + 0x1e, 0x68, 0x5f, 0x61, 0x0b, 0x8a, 0x43, 0xff, 0xad, 0xa0, 0xb4, 0x11, +}; +static const unsigned char kat2645_nonce[] = {0}; +static const unsigned char kat2645_persstr[] = {0}; +static const unsigned char kat2645_entropyinreseed[] = { + 0x52, 0xf5, 0xb1, 0xf9, 0x27, 0xc0, 0x87, 0x3a, 0xe3, 0x75, 0xd6, 0xa6, + 0xe1, 0x40, 0xfe, 0x59, 0x4f, 0xd4, 0x74, 0xa6, 0x3b, 0xcd, 0xcd, 0x6a, + 0x98, 0x10, 0x9e, 0x32, 0xad, 0x98, 0x0c, 0xe5, 0x34, 0x71, 0x4e, 0xc6, + 0x26, 0xda, 0xd7, 0xac, 0xd4, 0x31, 0x01, 0x41, 0x5e, 0x58, 0x17, 0xd2, +}; +static const unsigned char kat2645_addinreseed[] = {0}; +static const unsigned char kat2645_addin0[] = {0}; +static const unsigned char kat2645_addin1[] = {0}; +static const unsigned char kat2645_retbits[] = { + 0x30, 0x96, 0xcf, 0x20, 0x13, 0x7e, 0xb6, 0xf9, 0x4d, 0x9d, 0x26, 0xa4, + 0x87, 0x1e, 0xdd, 0xf1, 0x02, 0x85, 0xc6, 0x98, 0x47, 0x76, 0x84, 0x71, + 0x05, 0xca, 0x92, 0x94, 0xaa, 0xfc, 0x68, 0x92, 0x5a, 0xd8, 0xbd, 0x7f, + 0x36, 0xbb, 0x68, 0xfe, 0x37, 0x14, 0x76, 0x11, 0x46, 0x49, 0xea, 0xd1, + 0x1b, 0x92, 0x6f, 0x9f, 0x0f, 0xc1, 0xd2, 0x1c, 0x74, 0x43, 0x42, 0xff, + 0x5c, 0x44, 0xc8, 0xe3, +}; +static const struct drbg_kat_pr_false kat2645_t = { + 4, kat2645_entropyin, kat2645_nonce, kat2645_persstr, + kat2645_entropyinreseed, kat2645_addinreseed, kat2645_addin0, + kat2645_addin1, kat2645_retbits +}; +static const struct drbg_kat kat2645 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2645_t +}; + +static const unsigned char kat2646_entropyin[] = { + 0x41, 0x33, 0xa0, 0xe6, 0xce, 0x83, 0x71, 0x25, 0xf4, 0x6f, 0x2a, 0x44, + 0xe0, 0x5c, 0x4f, 0x64, 0xd7, 0x68, 0x79, 0x15, 0x6e, 0xa1, 0x6a, 0x1d, + 0x16, 0xdb, 0x1d, 0x3e, 0xc4, 0x60, 0xcc, 0x53, 0x60, 0x9f, 0xa9, 0xe4, + 0xb3, 0x08, 0x1f, 0x9d, 0xde, 0x0b, 0x79, 0xf0, 0x0c, 0x93, 0xac, 0x5a, +}; +static const unsigned char kat2646_nonce[] = {0}; +static const unsigned char kat2646_persstr[] = {0}; +static const unsigned char kat2646_entropyinreseed[] = { + 0x46, 0x13, 0xb2, 0x32, 0x7d, 0xc9, 0x05, 0x4f, 0x34, 0xfa, 0xf9, 0x33, + 0xd6, 0x2b, 0xf7, 0xb1, 0x2e, 0xc8, 0xb3, 0x46, 0x26, 0xc0, 0x7e, 0xf7, + 0x51, 0x2c, 0xec, 0xd8, 0xae, 0xdc, 0xbd, 0x40, 0x23, 0xf2, 0x6b, 0x85, + 0x9a, 0x94, 0x1c, 0x5a, 0xf7, 0x7e, 0xc1, 0xe2, 0xe0, 0x2a, 0x1d, 0x9c, +}; +static const unsigned char kat2646_addinreseed[] = {0}; +static const unsigned char kat2646_addin0[] = {0}; +static const unsigned char kat2646_addin1[] = {0}; +static const unsigned char kat2646_retbits[] = { + 0xbe, 0x02, 0xe9, 0x4f, 0xd1, 0x8c, 0x48, 0x87, 0x41, 0xfd, 0x90, 0xb6, + 0x98, 0x01, 0x18, 0xdf, 0xfb, 0xa1, 0xcd, 0xa5, 0xbd, 0x25, 0xaa, 0x23, + 0xd4, 0x44, 0x14, 0x39, 0x22, 0x01, 0xc5, 0xa7, 0x8c, 0x3e, 0xa6, 0x82, + 0x52, 0xf9, 0x2a, 0xfa, 0xaf, 0x54, 0x0b, 0x29, 0x8d, 0x3f, 0x80, 0xa9, + 0x48, 0x18, 0xf1, 0xd1, 0xca, 0x84, 0xc2, 0xbe, 0x5f, 0x66, 0xa4, 0x61, + 0x91, 0xa7, 0x54, 0x8b, +}; +static const struct drbg_kat_pr_false kat2646_t = { + 5, kat2646_entropyin, kat2646_nonce, kat2646_persstr, + kat2646_entropyinreseed, kat2646_addinreseed, kat2646_addin0, + kat2646_addin1, kat2646_retbits +}; +static const struct drbg_kat kat2646 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2646_t +}; + +static const unsigned char kat2647_entropyin[] = { + 0xe3, 0x12, 0xfd, 0x67, 0xb5, 0x00, 0x9a, 0xb1, 0xc8, 0x96, 0xba, 0x8f, + 0x85, 0xd5, 0x3f, 0xb2, 0x95, 0x17, 0xed, 0x2a, 0x26, 0xd2, 0x0a, 0x4b, + 0x9d, 0x09, 0x50, 0x5e, 0xc0, 0x04, 0xbe, 0xf5, 0x73, 0x9c, 0xc9, 0x4e, + 0x7f, 0x36, 0x89, 0x89, 0xc6, 0x75, 0xee, 0xe1, 0xf4, 0x05, 0x01, 0xa2, +}; +static const unsigned char kat2647_nonce[] = {0}; +static const unsigned char kat2647_persstr[] = {0}; +static const unsigned char kat2647_entropyinreseed[] = { + 0x17, 0x6e, 0xc1, 0x1c, 0x0d, 0x44, 0x62, 0xea, 0x26, 0xb1, 0xbd, 0xee, + 0x41, 0x20, 0x8e, 0x3f, 0xf3, 0xb4, 0x30, 0xde, 0x11, 0xf1, 0x25, 0x67, + 0xeb, 0xe9, 0x82, 0xc1, 0x6d, 0x70, 0x9f, 0x68, 0x1f, 0xcd, 0x9f, 0x5b, + 0xd5, 0x30, 0x9f, 0x3f, 0x2a, 0x9d, 0x80, 0xb3, 0xa4, 0x26, 0x92, 0x9a, +}; +static const unsigned char kat2647_addinreseed[] = {0}; +static const unsigned char kat2647_addin0[] = {0}; +static const unsigned char kat2647_addin1[] = {0}; +static const unsigned char kat2647_retbits[] = { + 0x07, 0xcb, 0x9f, 0x51, 0xe3, 0x4b, 0xe3, 0x8f, 0xe1, 0xd1, 0xc1, 0x88, + 0x58, 0xee, 0x44, 0xdb, 0x22, 0x7c, 0x1e, 0x6a, 0x6c, 0x2f, 0x7d, 0x09, + 0xe9, 0x14, 0x3e, 0x87, 0xe9, 0xe0, 0x9d, 0xf0, 0xaf, 0x9a, 0x5c, 0xb7, + 0xa1, 0x83, 0xe5, 0xd2, 0x63, 0x59, 0x50, 0x9f, 0xe6, 0x19, 0xe5, 0x2e, + 0x59, 0xe3, 0x33, 0x3d, 0x36, 0x20, 0x37, 0x3d, 0x3a, 0xe5, 0xa0, 0x08, + 0xb5, 0x1e, 0xf7, 0x86, +}; +static const struct drbg_kat_pr_false kat2647_t = { + 6, kat2647_entropyin, kat2647_nonce, kat2647_persstr, + kat2647_entropyinreseed, kat2647_addinreseed, kat2647_addin0, + kat2647_addin1, kat2647_retbits +}; +static const struct drbg_kat kat2647 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2647_t +}; + +static const unsigned char kat2648_entropyin[] = { + 0x3e, 0xaf, 0x30, 0x11, 0x71, 0x35, 0xd9, 0x16, 0x7c, 0x82, 0x9e, 0x35, + 0xbd, 0x8d, 0xa2, 0x27, 0xa6, 0x30, 0x24, 0x71, 0xb6, 0x49, 0x38, 0x18, + 0x58, 0x08, 0x5e, 0x67, 0xc6, 0x54, 0x96, 0x05, 0x8d, 0xed, 0x0a, 0xb1, + 0x76, 0xa3, 0x8b, 0x38, 0x88, 0xf4, 0xe3, 0xc2, 0xe6, 0x52, 0x69, 0xdd, +}; +static const unsigned char kat2648_nonce[] = {0}; +static const unsigned char kat2648_persstr[] = {0}; +static const unsigned char kat2648_entropyinreseed[] = { + 0xdf, 0x60, 0xa1, 0xb9, 0xfb, 0x2f, 0x85, 0x01, 0x75, 0x6e, 0xdd, 0x09, + 0xe4, 0x89, 0xfc, 0x98, 0xa6, 0x0e, 0xd0, 0x86, 0x46, 0xf5, 0xa2, 0xe0, + 0x18, 0xf5, 0x5b, 0x71, 0xc7, 0x6b, 0x9b, 0x77, 0x18, 0xac, 0x4a, 0xe6, + 0x1b, 0x41, 0x24, 0x15, 0x93, 0x82, 0x91, 0x08, 0xdd, 0xeb, 0x0e, 0xf0, +}; +static const unsigned char kat2648_addinreseed[] = {0}; +static const unsigned char kat2648_addin0[] = {0}; +static const unsigned char kat2648_addin1[] = {0}; +static const unsigned char kat2648_retbits[] = { + 0x29, 0xc4, 0xd5, 0x40, 0x35, 0x4e, 0x97, 0xf5, 0x0f, 0x3f, 0xb1, 0xde, + 0x84, 0xee, 0xf4, 0x71, 0x19, 0x2c, 0xd7, 0x6a, 0x67, 0x0d, 0xe3, 0x41, + 0x76, 0xc6, 0x46, 0x55, 0x23, 0xff, 0x24, 0x9e, 0xd5, 0xea, 0xfe, 0x2c, + 0x09, 0xf0, 0x91, 0xf5, 0xed, 0x10, 0x1c, 0xf8, 0xa9, 0x71, 0xd7, 0x82, + 0xf1, 0x50, 0xa2, 0x64, 0x2e, 0xd2, 0x91, 0xe8, 0x50, 0x90, 0x6e, 0x29, + 0x32, 0x8d, 0x6b, 0x8a, +}; +static const struct drbg_kat_pr_false kat2648_t = { + 7, kat2648_entropyin, kat2648_nonce, kat2648_persstr, + kat2648_entropyinreseed, kat2648_addinreseed, kat2648_addin0, + kat2648_addin1, kat2648_retbits +}; +static const struct drbg_kat kat2648 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2648_t +}; + +static const unsigned char kat2649_entropyin[] = { + 0x99, 0xd5, 0x54, 0x3c, 0x19, 0x2c, 0x6a, 0x10, 0x69, 0xbf, 0x54, 0x8d, + 0x80, 0xd6, 0x78, 0xbc, 0x42, 0xc1, 0xf0, 0x20, 0xf0, 0xb2, 0x9a, 0x0c, + 0xee, 0xba, 0x42, 0x4c, 0x03, 0xf8, 0xa8, 0xaa, 0x38, 0xdf, 0x1c, 0x0f, + 0xe1, 0x00, 0xee, 0x4c, 0x1b, 0x0b, 0xc8, 0x70, 0xb4, 0xaf, 0xa3, 0xd2, +}; +static const unsigned char kat2649_nonce[] = {0}; +static const unsigned char kat2649_persstr[] = {0}; +static const unsigned char kat2649_entropyinreseed[] = { + 0xa0, 0xfd, 0xdd, 0x29, 0xc7, 0x92, 0xf6, 0xf4, 0x11, 0xb5, 0xd5, 0x32, + 0xff, 0xf2, 0x56, 0x4d, 0x49, 0x2c, 0xa1, 0x5a, 0xc8, 0xb7, 0xfe, 0x1b, + 0x45, 0x75, 0xe9, 0xb5, 0x98, 0x06, 0x82, 0x36, 0x65, 0xad, 0x7a, 0xc4, + 0xe2, 0xad, 0xcd, 0x28, 0x03, 0xcc, 0xaa, 0xbe, 0x87, 0xab, 0x75, 0xed, +}; +static const unsigned char kat2649_addinreseed[] = {0}; +static const unsigned char kat2649_addin0[] = {0}; +static const unsigned char kat2649_addin1[] = {0}; +static const unsigned char kat2649_retbits[] = { + 0x3d, 0x58, 0xe9, 0x8a, 0x1f, 0x4b, 0xed, 0xa5, 0x0f, 0x84, 0xf7, 0x73, + 0xc4, 0x05, 0xd1, 0x06, 0xb2, 0x8f, 0x4b, 0xe6, 0xda, 0x2a, 0x29, 0x42, + 0x09, 0x84, 0x03, 0x84, 0x3b, 0xff, 0xa3, 0x32, 0x3c, 0x53, 0x66, 0x1a, + 0x7f, 0x07, 0x2a, 0x02, 0x0c, 0x68, 0xf5, 0x5e, 0xa2, 0xb3, 0xa9, 0xcf, + 0x91, 0x57, 0xb7, 0xc4, 0xcd, 0xff, 0x5e, 0x64, 0x2e, 0xe9, 0xbe, 0x1f, + 0x43, 0x6f, 0x9c, 0x18, +}; +static const struct drbg_kat_pr_false kat2649_t = { + 8, kat2649_entropyin, kat2649_nonce, kat2649_persstr, + kat2649_entropyinreseed, kat2649_addinreseed, kat2649_addin0, + kat2649_addin1, kat2649_retbits +}; +static const struct drbg_kat kat2649 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2649_t +}; + +static const unsigned char kat2650_entropyin[] = { + 0x21, 0x51, 0xba, 0x6c, 0xf2, 0xed, 0x6a, 0x73, 0x66, 0x99, 0x1e, 0x51, + 0x64, 0x43, 0x16, 0x2b, 0x6e, 0xd4, 0xe7, 0xf8, 0xef, 0x2d, 0x6c, 0x81, + 0xec, 0x5e, 0x5f, 0xeb, 0x00, 0x61, 0xe2, 0x0c, 0xed, 0x65, 0xda, 0x27, + 0x84, 0x79, 0x56, 0x19, 0x4d, 0xc6, 0x17, 0x7b, 0x5e, 0x0b, 0xef, 0xa9, +}; +static const unsigned char kat2650_nonce[] = {0}; +static const unsigned char kat2650_persstr[] = {0}; +static const unsigned char kat2650_entropyinreseed[] = { + 0x73, 0x41, 0x8e, 0xfa, 0xb1, 0xc6, 0x03, 0x91, 0x45, 0xdc, 0x6c, 0xe0, + 0x9b, 0x84, 0xab, 0xde, 0x4e, 0xf4, 0xf8, 0xea, 0xcc, 0xba, 0xc2, 0x50, + 0x21, 0x3b, 0xdd, 0x75, 0xe2, 0xa5, 0xe8, 0xb4, 0x2f, 0xfb, 0x13, 0x67, + 0xbd, 0x8d, 0x12, 0x81, 0xe3, 0xb0, 0x05, 0x16, 0x51, 0xf7, 0x8a, 0x05, +}; +static const unsigned char kat2650_addinreseed[] = {0}; +static const unsigned char kat2650_addin0[] = {0}; +static const unsigned char kat2650_addin1[] = {0}; +static const unsigned char kat2650_retbits[] = { + 0x5b, 0x21, 0x9c, 0xb2, 0x85, 0xc8, 0x20, 0xf3, 0xbc, 0xe5, 0x2b, 0x9e, + 0xff, 0x15, 0xaf, 0xa0, 0x42, 0xde, 0x30, 0x36, 0xf1, 0xa5, 0x28, 0x96, + 0xea, 0xb3, 0x4e, 0x44, 0x76, 0xc2, 0x8c, 0x60, 0x12, 0x7c, 0xf8, 0xda, + 0xdd, 0xce, 0x08, 0x09, 0xef, 0xaf, 0xab, 0x03, 0xc9, 0x26, 0x9c, 0xd2, + 0x20, 0xa4, 0x9f, 0x79, 0x22, 0x0e, 0x14, 0xdb, 0x9d, 0x20, 0x83, 0x11, + 0xd2, 0xa2, 0x2a, 0x1b, +}; +static const struct drbg_kat_pr_false kat2650_t = { + 9, kat2650_entropyin, kat2650_nonce, kat2650_persstr, + kat2650_entropyinreseed, kat2650_addinreseed, kat2650_addin0, + kat2650_addin1, kat2650_retbits +}; +static const struct drbg_kat kat2650 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2650_t +}; + +static const unsigned char kat2651_entropyin[] = { + 0x7c, 0x73, 0x21, 0xb6, 0x9f, 0xde, 0xfd, 0xec, 0xe3, 0x2c, 0x45, 0xe4, + 0x7c, 0xce, 0x07, 0xa0, 0xd5, 0x99, 0xe8, 0x3e, 0xa8, 0xee, 0x57, 0x81, + 0xe2, 0xf2, 0xff, 0x34, 0x1f, 0x29, 0x2c, 0x0b, 0xdb, 0x84, 0x8e, 0x5a, + 0xb3, 0x79, 0x77, 0x16, 0x39, 0xe8, 0x11, 0xfe, 0xd4, 0x5f, 0x63, 0xd7, +}; +static const unsigned char kat2651_nonce[] = {0}; +static const unsigned char kat2651_persstr[] = {0}; +static const unsigned char kat2651_entropyinreseed[] = { + 0x4b, 0x04, 0x65, 0x2d, 0x3d, 0x05, 0x15, 0xb3, 0x05, 0xf4, 0xda, 0x34, + 0x67, 0x54, 0xc0, 0xd3, 0x98, 0xc8, 0xcf, 0xef, 0xe8, 0xe5, 0xc1, 0xed, + 0xac, 0xb7, 0x9c, 0xb8, 0x39, 0x60, 0x18, 0xbd, 0xa1, 0x2a, 0xd7, 0xd4, + 0x2b, 0xf8, 0x6e, 0x80, 0x11, 0x59, 0xbb, 0x62, 0xc3, 0x4f, 0xff, 0x68, +}; +static const unsigned char kat2651_addinreseed[] = {0}; +static const unsigned char kat2651_addin0[] = {0}; +static const unsigned char kat2651_addin1[] = {0}; +static const unsigned char kat2651_retbits[] = { + 0x37, 0x9c, 0x12, 0xdc, 0x2c, 0x8a, 0x88, 0x4c, 0x6f, 0x40, 0xdf, 0x53, + 0x53, 0x04, 0x7d, 0x74, 0xef, 0xbd, 0x9c, 0x62, 0x67, 0x95, 0xb8, 0x62, + 0x56, 0xab, 0xec, 0x4a, 0x6f, 0x42, 0xba, 0x26, 0x52, 0x9f, 0x19, 0xe4, + 0xb0, 0x43, 0xf5, 0x37, 0x76, 0x18, 0x0c, 0x7a, 0xb1, 0x6a, 0x38, 0x17, + 0xb4, 0xa5, 0x0c, 0x09, 0xbb, 0x33, 0x55, 0x23, 0x47, 0x86, 0xe7, 0x14, + 0xed, 0xb9, 0xe2, 0xb4, +}; +static const struct drbg_kat_pr_false kat2651_t = { + 10, kat2651_entropyin, kat2651_nonce, kat2651_persstr, + kat2651_entropyinreseed, kat2651_addinreseed, kat2651_addin0, + kat2651_addin1, kat2651_retbits +}; +static const struct drbg_kat kat2651 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2651_t +}; + +static const unsigned char kat2652_entropyin[] = { + 0x3a, 0x56, 0x32, 0x9b, 0x07, 0xdf, 0xfb, 0x8b, 0xc7, 0x76, 0x1c, 0x0c, + 0x2b, 0x4e, 0xc4, 0xec, 0x3b, 0x7e, 0xd2, 0x51, 0x3f, 0x0c, 0xc3, 0xd9, + 0xbe, 0x3e, 0xb9, 0xa1, 0x53, 0xe8, 0xe1, 0x60, 0x5d, 0x93, 0x92, 0xdb, + 0xb9, 0x51, 0xe4, 0xb0, 0x98, 0x9e, 0xf4, 0x73, 0x30, 0x1f, 0x6f, 0x57, +}; +static const unsigned char kat2652_nonce[] = {0}; +static const unsigned char kat2652_persstr[] = {0}; +static const unsigned char kat2652_entropyinreseed[] = { + 0xff, 0x6e, 0xfb, 0x9b, 0x94, 0x67, 0x48, 0xaf, 0x09, 0x92, 0xbd, 0xc3, + 0x8e, 0xeb, 0x15, 0xd4, 0x99, 0x1b, 0xb6, 0x10, 0x69, 0x2e, 0x1f, 0xe5, + 0x3f, 0xf8, 0x28, 0x40, 0x59, 0x24, 0xa5, 0x44, 0xee, 0x0e, 0x4d, 0xa7, + 0x0a, 0xa1, 0xd0, 0xae, 0x55, 0xe7, 0x92, 0x5a, 0x58, 0xcf, 0x55, 0x97, +}; +static const unsigned char kat2652_addinreseed[] = {0}; +static const unsigned char kat2652_addin0[] = {0}; +static const unsigned char kat2652_addin1[] = {0}; +static const unsigned char kat2652_retbits[] = { + 0x9f, 0x32, 0xe4, 0x03, 0x91, 0x21, 0x78, 0x33, 0x17, 0x6c, 0xa7, 0x68, + 0xbe, 0xed, 0xd2, 0x83, 0x98, 0x92, 0xc6, 0xfc, 0x17, 0xde, 0xc5, 0xc2, + 0x50, 0xf0, 0x82, 0x0c, 0x57, 0x6e, 0x4e, 0xd6, 0x15, 0x72, 0x96, 0x53, + 0x51, 0x5a, 0xe1, 0x32, 0x92, 0xa2, 0xe4, 0xae, 0xda, 0xa2, 0xdf, 0x74, + 0xc6, 0x53, 0x5d, 0x8c, 0x62, 0x5d, 0xd1, 0xca, 0xb4, 0x79, 0xd3, 0xc5, + 0xae, 0x7b, 0xf9, 0x55, +}; +static const struct drbg_kat_pr_false kat2652_t = { + 11, kat2652_entropyin, kat2652_nonce, kat2652_persstr, + kat2652_entropyinreseed, kat2652_addinreseed, kat2652_addin0, + kat2652_addin1, kat2652_retbits +}; +static const struct drbg_kat kat2652 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2652_t +}; + +static const unsigned char kat2653_entropyin[] = { + 0xd5, 0x50, 0xf4, 0x8a, 0xf4, 0x36, 0xae, 0x42, 0xea, 0x48, 0xa8, 0xcb, + 0x0c, 0xd6, 0x15, 0xbe, 0x8d, 0xb5, 0x16, 0x91, 0xb3, 0x65, 0xef, 0x20, + 0xed, 0x82, 0x6b, 0x28, 0x56, 0x1f, 0xba, 0xcc, 0x9d, 0xeb, 0x28, 0xcd, + 0x3d, 0x83, 0x65, 0x50, 0x33, 0x06, 0x89, 0x48, 0xc5, 0x56, 0x83, 0xda, +}; +static const unsigned char kat2653_nonce[] = {0}; +static const unsigned char kat2653_persstr[] = {0}; +static const unsigned char kat2653_entropyinreseed[] = { + 0x76, 0xea, 0x2e, 0x73, 0x2f, 0x77, 0xb3, 0x37, 0xdd, 0xd4, 0x02, 0xe3, + 0x67, 0xc1, 0x58, 0xda, 0xcc, 0x34, 0x33, 0xfe, 0xb4, 0x0d, 0x7b, 0x43, + 0x76, 0xfb, 0x8d, 0xc4, 0x49, 0x89, 0x13, 0x36, 0xb0, 0x08, 0x41, 0x58, + 0x0e, 0xa1, 0x89, 0x58, 0x3a, 0xda, 0x95, 0xce, 0xf7, 0x83, 0xd5, 0x40, +}; +static const unsigned char kat2653_addinreseed[] = {0}; +static const unsigned char kat2653_addin0[] = {0}; +static const unsigned char kat2653_addin1[] = {0}; +static const unsigned char kat2653_retbits[] = { + 0x84, 0x33, 0xb2, 0xac, 0x45, 0xda, 0x6f, 0xdc, 0xbe, 0xaf, 0x3e, 0x6f, + 0x76, 0xe6, 0x6b, 0xeb, 0x5b, 0x90, 0xa8, 0x9a, 0x9c, 0xb1, 0x97, 0xcf, + 0xbe, 0x40, 0x5e, 0xd5, 0x3b, 0x1d, 0xd5, 0x1a, 0x42, 0xcf, 0xc9, 0xae, + 0xc5, 0xfe, 0x7c, 0xf7, 0x78, 0xf8, 0x80, 0x31, 0xfb, 0x7b, 0x15, 0xb0, + 0x87, 0x4d, 0x4d, 0x1e, 0xa8, 0x7e, 0xf3, 0x89, 0x58, 0x48, 0x72, 0x1b, + 0x34, 0xfb, 0x1a, 0x35, +}; +static const struct drbg_kat_pr_false kat2653_t = { + 12, kat2653_entropyin, kat2653_nonce, kat2653_persstr, + kat2653_entropyinreseed, kat2653_addinreseed, kat2653_addin0, + kat2653_addin1, kat2653_retbits +}; +static const struct drbg_kat kat2653 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2653_t +}; + +static const unsigned char kat2654_entropyin[] = { + 0xce, 0x61, 0x37, 0xf7, 0x20, 0xaf, 0xfd, 0x10, 0x63, 0x96, 0xd9, 0xb6, + 0x65, 0x40, 0x58, 0x0a, 0xe2, 0x16, 0xd5, 0xd7, 0xda, 0xb4, 0x8e, 0xd2, + 0x72, 0x9c, 0xdb, 0x3e, 0x58, 0x7c, 0x7d, 0x8d, 0xa1, 0x3c, 0xe3, 0x9e, + 0xa8, 0xd9, 0xd8, 0xc2, 0x22, 0x20, 0xa9, 0x6b, 0x74, 0xe7, 0xee, 0x9d, +}; +static const unsigned char kat2654_nonce[] = {0}; +static const unsigned char kat2654_persstr[] = {0}; +static const unsigned char kat2654_entropyinreseed[] = { + 0xaf, 0x9f, 0x12, 0xfd, 0xde, 0xef, 0x00, 0x1b, 0x08, 0xa5, 0x99, 0x3f, + 0x62, 0xda, 0x5e, 0x7c, 0x3a, 0xff, 0x23, 0xf8, 0x82, 0xae, 0x87, 0x4b, + 0x9f, 0x66, 0xf2, 0x8e, 0xca, 0x11, 0x06, 0xe6, 0x38, 0x6d, 0xd8, 0x2f, + 0x07, 0xae, 0x1f, 0xb6, 0x86, 0x8f, 0x18, 0x6e, 0x2e, 0xc4, 0xf4, 0x49, +}; +static const unsigned char kat2654_addinreseed[] = {0}; +static const unsigned char kat2654_addin0[] = {0}; +static const unsigned char kat2654_addin1[] = {0}; +static const unsigned char kat2654_retbits[] = { + 0x21, 0x9f, 0xc1, 0x60, 0xdb, 0xc1, 0x36, 0xcd, 0xc9, 0xa7, 0xc3, 0x40, + 0x7e, 0xaf, 0xde, 0x46, 0x39, 0x60, 0x2c, 0xc5, 0x81, 0x01, 0xc5, 0x12, + 0xdf, 0xbd, 0x85, 0xcc, 0x26, 0xb6, 0x1f, 0xc9, 0xa9, 0x4c, 0xdf, 0x76, + 0xf1, 0x5a, 0x1d, 0xe7, 0xa4, 0x6e, 0x36, 0xab, 0x64, 0xac, 0xa3, 0xee, + 0xae, 0x36, 0xac, 0xd6, 0xe3, 0xd0, 0xb3, 0xfe, 0x59, 0xb7, 0x59, 0x58, + 0xb3, 0xed, 0xdd, 0x24, +}; +static const struct drbg_kat_pr_false kat2654_t = { + 13, kat2654_entropyin, kat2654_nonce, kat2654_persstr, + kat2654_entropyinreseed, kat2654_addinreseed, kat2654_addin0, + kat2654_addin1, kat2654_retbits +}; +static const struct drbg_kat kat2654 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2654_t +}; + +static const unsigned char kat2655_entropyin[] = { + 0x1a, 0xcc, 0xff, 0x5a, 0x19, 0x86, 0x11, 0x64, 0xc5, 0xd2, 0xcf, 0x54, + 0x2c, 0xf4, 0x1a, 0x78, 0x9f, 0x14, 0x3c, 0x79, 0x56, 0x51, 0x8a, 0xe1, + 0x58, 0xd4, 0x44, 0x9f, 0xf0, 0xc2, 0x57, 0xa0, 0x09, 0x66, 0xfa, 0xa8, + 0x62, 0xcc, 0xbb, 0x36, 0x3b, 0xcf, 0x4a, 0xeb, 0x31, 0x08, 0x91, 0x34, +}; +static const unsigned char kat2655_nonce[] = {0}; +static const unsigned char kat2655_persstr[] = {0}; +static const unsigned char kat2655_entropyinreseed[] = { + 0xf2, 0xfa, 0x58, 0x20, 0x97, 0x59, 0xd8, 0x4b, 0xf3, 0x8a, 0x16, 0x56, + 0xba, 0xe6, 0x55, 0x66, 0x97, 0x67, 0xa9, 0x02, 0xad, 0xe2, 0x2a, 0x83, + 0x0d, 0xf5, 0x6b, 0x32, 0xef, 0x9e, 0x1c, 0x99, 0x23, 0x35, 0xeb, 0x4c, + 0xb2, 0x7e, 0xeb, 0x14, 0x2b, 0xfd, 0x21, 0xb5, 0xd3, 0x14, 0x51, 0xde, +}; +static const unsigned char kat2655_addinreseed[] = {0}; +static const unsigned char kat2655_addin0[] = {0}; +static const unsigned char kat2655_addin1[] = {0}; +static const unsigned char kat2655_retbits[] = { + 0xf2, 0x14, 0xb4, 0x05, 0x5d, 0x18, 0x2c, 0xb2, 0x58, 0xd9, 0xe9, 0xb6, + 0x12, 0x51, 0xbe, 0xbc, 0x9b, 0xf0, 0x90, 0xdb, 0x66, 0x2c, 0x4e, 0x36, + 0x02, 0x3c, 0xc1, 0x56, 0x96, 0x4f, 0xbb, 0xe1, 0xce, 0xdf, 0x69, 0x1c, + 0xd0, 0xc3, 0xd7, 0xdb, 0x42, 0x62, 0xfb, 0x65, 0xa5, 0xd3, 0x4b, 0x94, + 0x2f, 0x90, 0x9b, 0x0f, 0x31, 0xfc, 0x18, 0x00, 0x97, 0x66, 0x41, 0x35, + 0x23, 0xdc, 0xaf, 0x40, +}; +static const struct drbg_kat_pr_false kat2655_t = { + 14, kat2655_entropyin, kat2655_nonce, kat2655_persstr, + kat2655_entropyinreseed, kat2655_addinreseed, kat2655_addin0, + kat2655_addin1, kat2655_retbits +}; +static const struct drbg_kat kat2655 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2655_t +}; + +static const unsigned char kat2656_entropyin[] = { + 0x99, 0x90, 0x31, 0x65, 0x90, 0x3f, 0xea, 0x49, 0xc2, 0xdb, 0x26, 0xed, + 0x67, 0x5e, 0x44, 0xcc, 0x14, 0xcb, 0x2c, 0x1f, 0x28, 0xb8, 0x36, 0xb2, + 0x03, 0x24, 0x0b, 0x02, 0x77, 0x1e, 0x83, 0x11, 0x46, 0xff, 0xc4, 0x33, + 0x53, 0x73, 0xbb, 0x34, 0x46, 0x88, 0xc5, 0xc9, 0x50, 0x67, 0x02, 0x91, +}; +static const unsigned char kat2656_nonce[] = {0}; +static const unsigned char kat2656_persstr[] = {0}; +static const unsigned char kat2656_entropyinreseed[] = { + 0xb4, 0xee, 0x99, 0xfa, 0x9e, 0x0e, 0xdd, 0xaf, 0x4a, 0x36, 0x12, 0x01, + 0x3c, 0xd6, 0x36, 0xc4, 0xaf, 0x69, 0x17, 0x7b, 0x43, 0xee, 0xbb, 0x3c, + 0x58, 0xa3, 0x05, 0xb9, 0x97, 0x9b, 0x68, 0xb5, 0xcc, 0x82, 0x05, 0x04, + 0xf6, 0xc0, 0x29, 0xaa, 0xd7, 0x8a, 0x5d, 0x29, 0xc6, 0x6e, 0x84, 0xa0, +}; +static const unsigned char kat2656_addinreseed[] = { + 0x2d, 0x8c, 0x5c, 0x28, 0xb0, 0x56, 0x96, 0xe7, 0x47, 0x74, 0xeb, 0x69, + 0xa1, 0x0f, 0x01, 0xc5, 0xfa, 0xbc, 0x62, 0x69, 0x1d, 0xdf, 0x78, 0x48, + 0xa8, 0x00, 0x4b, 0xb5, 0xee, 0xb4, 0xd2, 0xc5, 0xfe, 0xbe, 0x1a, 0xa0, + 0x1f, 0x4d, 0x55, 0x7b, 0x23, 0xd7, 0xe9, 0xa0, 0xe4, 0xe9, 0x06, 0x55, +}; +static const unsigned char kat2656_addin0[] = { + 0x0d, 0xc9, 0xcd, 0xe4, 0x2a, 0xc6, 0xe8, 0x56, 0xf0, 0x1a, 0x55, 0xf2, + 0x19, 0xc6, 0x14, 0xde, 0x90, 0xc6, 0x59, 0x26, 0x09, 0x48, 0xdb, 0x50, + 0x53, 0xd4, 0x14, 0xba, 0xb0, 0xec, 0x2e, 0x13, 0xe9, 0x95, 0x12, 0x0c, + 0x3e, 0xb5, 0xaa, 0xfc, 0x25, 0xdc, 0x4b, 0xdc, 0xef, 0x8a, 0xce, 0x24, +}; +static const unsigned char kat2656_addin1[] = { + 0x71, 0x1b, 0xe6, 0xc0, 0x35, 0x01, 0x31, 0x89, 0xf3, 0x62, 0x21, 0x18, + 0x89, 0x24, 0x8c, 0xa8, 0xa3, 0x26, 0x8e, 0x63, 0xa7, 0xeb, 0x26, 0x83, + 0x6d, 0x91, 0x58, 0x10, 0xa6, 0x80, 0xac, 0x4a, 0x33, 0xcd, 0x11, 0x80, + 0x81, 0x1a, 0x31, 0xa0, 0xf4, 0x4f, 0x08, 0xdb, 0x3d, 0xd6, 0x4f, 0x91, +}; +static const unsigned char kat2656_retbits[] = { + 0x11, 0xc7, 0xa0, 0x32, 0x6e, 0xa7, 0x37, 0xba, 0xa7, 0xa9, 0x93, 0xd5, + 0x10, 0xfa, 0xfe, 0xe5, 0x37, 0x4e, 0x7b, 0xbe, 0x17, 0xef, 0x0e, 0x3e, + 0x29, 0xf5, 0x0f, 0xa6, 0x8a, 0xac, 0x21, 0x24, 0xb0, 0x17, 0xd4, 0x49, + 0x76, 0x84, 0x91, 0xca, 0xc0, 0x6d, 0x13, 0x6d, 0x69, 0x1a, 0x4e, 0x80, + 0x78, 0x57, 0x39, 0xf9, 0xaa, 0xed, 0xf3, 0x11, 0xbb, 0xa7, 0x52, 0xa3, + 0x26, 0x8c, 0xc5, 0x31, +}; +static const struct drbg_kat_pr_false kat2656_t = { + 0, kat2656_entropyin, kat2656_nonce, kat2656_persstr, + kat2656_entropyinreseed, kat2656_addinreseed, kat2656_addin0, + kat2656_addin1, kat2656_retbits +}; +static const struct drbg_kat kat2656 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2656_t +}; + +static const unsigned char kat2657_entropyin[] = { + 0xf9, 0x63, 0x09, 0x65, 0x40, 0xd0, 0x02, 0x3d, 0x67, 0x03, 0xe1, 0x82, + 0x48, 0x75, 0x5a, 0xd1, 0x6a, 0xea, 0x91, 0x85, 0x2a, 0x2d, 0xb0, 0xdd, + 0x0f, 0x6a, 0x41, 0x4d, 0x2a, 0x58, 0x22, 0xf3, 0x22, 0x4a, 0xc8, 0xb1, + 0xd4, 0x7b, 0x01, 0xaa, 0xec, 0xc9, 0x3a, 0xe2, 0x99, 0x08, 0x1d, 0x7d, +}; +static const unsigned char kat2657_nonce[] = {0}; +static const unsigned char kat2657_persstr[] = {0}; +static const unsigned char kat2657_entropyinreseed[] = { + 0x39, 0x9e, 0xd5, 0x4b, 0xd8, 0x46, 0xde, 0x00, 0xd4, 0x2f, 0xb1, 0xf9, + 0x2d, 0x1a, 0xde, 0x93, 0xe8, 0x1e, 0x32, 0xcd, 0x6c, 0xe7, 0x38, 0x25, + 0xf0, 0xbf, 0x86, 0x17, 0x9d, 0xd4, 0x6f, 0xd7, 0x9b, 0xc8, 0xcb, 0xbd, + 0x3b, 0x88, 0x34, 0xe5, 0x8c, 0xc8, 0x66, 0x19, 0xe1, 0x9b, 0x08, 0xb4, +}; +static const unsigned char kat2657_addinreseed[] = { + 0xee, 0x07, 0x3f, 0x9f, 0x61, 0x45, 0xd0, 0xa7, 0xc0, 0x9a, 0x5e, 0x4a, + 0x12, 0xd6, 0x5b, 0xae, 0xba, 0x36, 0x0b, 0xc9, 0xb5, 0xd7, 0xca, 0xdf, + 0x93, 0xe7, 0xd2, 0x45, 0x4d, 0xfd, 0xe5, 0x07, 0xaf, 0x37, 0xe4, 0x97, + 0x82, 0xcf, 0x85, 0x50, 0xdd, 0x3a, 0x54, 0x8e, 0x8c, 0xf9, 0x85, 0x63, +}; +static const unsigned char kat2657_addin0[] = { + 0x6a, 0x42, 0xff, 0xe5, 0x6d, 0xac, 0x0b, 0x4d, 0xc5, 0xd8, 0x4b, 0x49, + 0x69, 0x88, 0x59, 0xb3, 0x64, 0x5c, 0x92, 0x01, 0x51, 0x56, 0x5b, 0xf2, + 0x9f, 0x56, 0xb6, 0x32, 0x22, 0x44, 0xbc, 0xaa, 0x7c, 0xd1, 0xeb, 0xb8, + 0xee, 0x99, 0x36, 0xd8, 0xee, 0x1d, 0x28, 0x0f, 0x54, 0x7a, 0xe2, 0x45, +}; +static const unsigned char kat2657_addin1[] = { + 0xd0, 0x57, 0xc4, 0x18, 0xa7, 0x58, 0xd9, 0x9a, 0x8e, 0xe8, 0x55, 0x09, + 0x3d, 0xa9, 0xbc, 0x17, 0x34, 0xa5, 0x16, 0x8a, 0x6d, 0xf9, 0xd9, 0xc9, + 0x92, 0x4e, 0x8b, 0xb4, 0x72, 0xb5, 0x94, 0x55, 0x63, 0xd8, 0x63, 0x50, + 0xdc, 0xf3, 0xe1, 0x1a, 0xeb, 0xcb, 0xd0, 0x6a, 0x22, 0xb9, 0xef, 0x78, +}; +static const unsigned char kat2657_retbits[] = { + 0xa0, 0xcd, 0x72, 0xe6, 0x3f, 0x49, 0xce, 0x4c, 0x1d, 0x64, 0xe2, 0x1e, + 0x92, 0x54, 0x6a, 0xfc, 0xed, 0x2a, 0xf2, 0x68, 0x54, 0x9e, 0xf4, 0x8d, + 0x3c, 0xa8, 0x8a, 0xfe, 0x4d, 0x40, 0x97, 0xf9, 0x1a, 0x52, 0xec, 0xd0, + 0xe7, 0xad, 0x12, 0xec, 0x0a, 0x1f, 0x67, 0xdd, 0x8c, 0x53, 0x25, 0xb7, + 0x8e, 0xe5, 0x07, 0xc0, 0xa6, 0x3c, 0xf9, 0x0d, 0x64, 0xe9, 0xc4, 0x78, + 0x62, 0xac, 0xed, 0xf3, +}; +static const struct drbg_kat_pr_false kat2657_t = { + 1, kat2657_entropyin, kat2657_nonce, kat2657_persstr, + kat2657_entropyinreseed, kat2657_addinreseed, kat2657_addin0, + kat2657_addin1, kat2657_retbits +}; +static const struct drbg_kat kat2657 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2657_t +}; + +static const unsigned char kat2658_entropyin[] = { + 0x33, 0x3a, 0x02, 0x69, 0xeb, 0x0f, 0xb1, 0xd9, 0xd1, 0xe9, 0x2f, 0x55, + 0xde, 0x9e, 0x13, 0xcd, 0x7e, 0x24, 0xde, 0x64, 0xf5, 0xf2, 0x76, 0x38, + 0x2d, 0x3e, 0xb2, 0xff, 0x35, 0x6a, 0x66, 0x67, 0x9a, 0x9a, 0x75, 0xd2, + 0xda, 0x31, 0xd3, 0x9a, 0x94, 0x0a, 0x09, 0xcc, 0x85, 0xd9, 0xd5, 0x31, +}; +static const unsigned char kat2658_nonce[] = {0}; +static const unsigned char kat2658_persstr[] = {0}; +static const unsigned char kat2658_entropyinreseed[] = { + 0xcb, 0xf5, 0x04, 0xcc, 0x47, 0x3c, 0x9a, 0x6e, 0x66, 0x49, 0x3b, 0x71, + 0xb9, 0x68, 0x4e, 0x8d, 0xf4, 0x58, 0xe6, 0x5d, 0x2c, 0xc6, 0x76, 0xe4, + 0xe6, 0xad, 0x43, 0xeb, 0x59, 0x17, 0x29, 0x32, 0xc0, 0x95, 0x6d, 0x06, + 0x23, 0x13, 0x4a, 0x6a, 0x3b, 0xba, 0x23, 0x90, 0x6e, 0xc9, 0xda, 0x0a, +}; +static const unsigned char kat2658_addinreseed[] = { + 0xab, 0xc8, 0x6c, 0x71, 0xae, 0x05, 0x85, 0x82, 0x7f, 0xfe, 0x0d, 0x19, + 0xa9, 0xfe, 0x97, 0xf2, 0x3c, 0xdc, 0x4a, 0xfd, 0x67, 0x97, 0x8e, 0x55, + 0x3e, 0x06, 0x69, 0xd4, 0x63, 0x5c, 0xa1, 0xdf, 0x30, 0x25, 0x08, 0x43, + 0xfe, 0xfd, 0x4d, 0x12, 0x88, 0xf6, 0xfb, 0xc3, 0xbf, 0xe0, 0x4a, 0x72, +}; +static const unsigned char kat2658_addin0[] = { + 0x15, 0xd1, 0x5f, 0xbe, 0x7c, 0x06, 0x0e, 0x68, 0x11, 0xbf, 0x47, 0xc2, + 0x1e, 0x93, 0x63, 0x9c, 0x00, 0xcd, 0xcc, 0x56, 0x2f, 0x4e, 0x02, 0xc8, + 0x8f, 0x7e, 0x34, 0x7e, 0xc1, 0x4a, 0x2c, 0x84, 0x10, 0xfd, 0xb2, 0xdd, + 0xc3, 0xdf, 0xa6, 0x2b, 0xa9, 0xed, 0x17, 0x58, 0xf1, 0x20, 0x17, 0xdf, +}; +static const unsigned char kat2658_addin1[] = { + 0xff, 0xf3, 0x11, 0xea, 0x4c, 0x5c, 0xbd, 0x8c, 0xe5, 0x3c, 0x45, 0xfe, + 0x8d, 0x81, 0x06, 0xc2, 0x8e, 0xb0, 0x6d, 0x01, 0xec, 0x9d, 0x82, 0x45, + 0xc2, 0x9f, 0x95, 0xb5, 0x0b, 0x13, 0x08, 0x5a, 0x0e, 0xc2, 0x88, 0x03, + 0xd7, 0x33, 0xbd, 0x0d, 0x8a, 0x75, 0x19, 0x3e, 0x63, 0xe2, 0x1d, 0x5d, +}; +static const unsigned char kat2658_retbits[] = { + 0xfc, 0xdb, 0x52, 0xbb, 0x6e, 0x2b, 0xa8, 0xd8, 0x96, 0x97, 0x3b, 0x92, + 0x84, 0xb3, 0x2a, 0xf6, 0x36, 0x4a, 0x34, 0xa2, 0xb8, 0x0b, 0x3e, 0x3c, + 0x76, 0x84, 0xc2, 0x00, 0xc9, 0xe0, 0xa0, 0x2f, 0x7b, 0xc6, 0xc3, 0xcd, + 0x32, 0xb1, 0x59, 0xdf, 0x9b, 0x98, 0xda, 0x07, 0xa1, 0x7b, 0xaa, 0xb9, + 0xb0, 0xb0, 0x7e, 0xab, 0x21, 0x45, 0x44, 0xd5, 0xc5, 0x62, 0xe4, 0x54, + 0xec, 0x64, 0x3d, 0xe1, +}; +static const struct drbg_kat_pr_false kat2658_t = { + 2, kat2658_entropyin, kat2658_nonce, kat2658_persstr, + kat2658_entropyinreseed, kat2658_addinreseed, kat2658_addin0, + kat2658_addin1, kat2658_retbits +}; +static const struct drbg_kat kat2658 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2658_t +}; + +static const unsigned char kat2659_entropyin[] = { + 0x86, 0xe4, 0xc3, 0x0c, 0x5a, 0x7d, 0xfc, 0xca, 0x86, 0xed, 0xa7, 0x72, + 0x39, 0x30, 0xab, 0x32, 0x72, 0x63, 0x5f, 0x0a, 0xd9, 0xe2, 0xfd, 0x70, + 0xa2, 0xd7, 0xa6, 0x9b, 0x6a, 0x07, 0xdc, 0x0c, 0xdd, 0xea, 0xbf, 0xfa, + 0x9c, 0x41, 0x11, 0x98, 0xe3, 0xcb, 0x75, 0x89, 0xcb, 0x29, 0xd3, 0xf2, +}; +static const unsigned char kat2659_nonce[] = {0}; +static const unsigned char kat2659_persstr[] = {0}; +static const unsigned char kat2659_entropyinreseed[] = { + 0xe1, 0xaf, 0x1c, 0x42, 0xcd, 0x29, 0xdd, 0x00, 0x2e, 0x10, 0xe5, 0x83, + 0x9e, 0x8b, 0x67, 0x9d, 0x3c, 0x51, 0x92, 0xda, 0x5e, 0x1b, 0x65, 0x51, + 0x23, 0x13, 0x2f, 0xf1, 0xad, 0xe2, 0x2b, 0x35, 0x65, 0x1a, 0xc6, 0xdf, + 0x66, 0xfa, 0x14, 0xf3, 0x6e, 0x18, 0x32, 0xbe, 0x7a, 0x17, 0x68, 0x95, +}; +static const unsigned char kat2659_addinreseed[] = { + 0x5f, 0x61, 0x90, 0x73, 0xfa, 0x2e, 0x98, 0xb9, 0xf0, 0x6b, 0xb4, 0x67, + 0x6b, 0xb9, 0x72, 0x37, 0x9c, 0xeb, 0x72, 0x7e, 0x1e, 0x87, 0x68, 0xef, + 0x09, 0xe5, 0x32, 0xcf, 0x3d, 0x8f, 0xed, 0x5c, 0xe9, 0x2a, 0x75, 0x28, + 0xeb, 0x55, 0xae, 0x55, 0x29, 0x59, 0xd7, 0x4f, 0x75, 0xdd, 0x03, 0x24, +}; +static const unsigned char kat2659_addin0[] = { + 0x33, 0x0e, 0x31, 0x6b, 0xec, 0x49, 0x55, 0xd9, 0x07, 0xd7, 0xd7, 0xbf, + 0x2b, 0x71, 0x49, 0xf0, 0xaa, 0xf4, 0x28, 0x5e, 0xd1, 0xa2, 0xb7, 0xe3, + 0x87, 0x37, 0x6e, 0xa1, 0xa4, 0xe0, 0x85, 0x8c, 0x11, 0x4e, 0xc3, 0xdd, + 0xdd, 0xf7, 0xa1, 0xed, 0xd7, 0xc8, 0xa2, 0x9b, 0x1f, 0x12, 0xb9, 0x98, +}; +static const unsigned char kat2659_addin1[] = { + 0x40, 0x59, 0x11, 0xcf, 0x7c, 0x67, 0x79, 0xe0, 0x2e, 0x47, 0x40, 0xfa, + 0x97, 0x37, 0xf1, 0x89, 0x37, 0x02, 0x92, 0x49, 0x4c, 0x80, 0x62, 0x1c, + 0xfa, 0xa9, 0xf7, 0xd1, 0x6d, 0x68, 0x21, 0x9e, 0x72, 0xd4, 0x74, 0xf8, + 0xd5, 0xa5, 0x4a, 0xa8, 0xea, 0x80, 0x20, 0xdf, 0xf9, 0xc3, 0x66, 0x50, +}; +static const unsigned char kat2659_retbits[] = { + 0xe3, 0x59, 0xc3, 0xe2, 0x33, 0x15, 0xc9, 0xc1, 0xd6, 0x9a, 0xb2, 0xec, + 0x96, 0xec, 0x3c, 0x6c, 0x5a, 0xad, 0x86, 0x8e, 0x58, 0x70, 0x9e, 0x10, + 0x1b, 0x0f, 0xa0, 0x8c, 0x40, 0x41, 0x24, 0x8e, 0x4d, 0x53, 0x8d, 0x03, + 0x89, 0x93, 0x25, 0x0d, 0x39, 0x5d, 0x96, 0x51, 0x51, 0x35, 0x14, 0xfc, + 0xa5, 0x76, 0x0d, 0xcb, 0x99, 0x70, 0xdc, 0xe5, 0x3d, 0x2d, 0x1c, 0x27, + 0x12, 0xbc, 0x56, 0xd0, +}; +static const struct drbg_kat_pr_false kat2659_t = { + 3, kat2659_entropyin, kat2659_nonce, kat2659_persstr, + kat2659_entropyinreseed, kat2659_addinreseed, kat2659_addin0, + kat2659_addin1, kat2659_retbits +}; +static const struct drbg_kat kat2659 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2659_t +}; + +static const unsigned char kat2660_entropyin[] = { + 0xd8, 0xcc, 0x5d, 0x13, 0xba, 0xde, 0xdb, 0xdc, 0x2f, 0xd4, 0x18, 0x52, + 0x24, 0x7a, 0x9f, 0x28, 0x79, 0xb0, 0x10, 0x3b, 0x4a, 0x81, 0x86, 0xf0, + 0xa0, 0x8d, 0xa7, 0xd5, 0x54, 0x53, 0xb7, 0x48, 0x4f, 0x64, 0x2a, 0x9e, + 0x5a, 0x51, 0x82, 0x34, 0x05, 0x84, 0xd2, 0xca, 0x7c, 0xd5, 0xed, 0x10, +}; +static const unsigned char kat2660_nonce[] = {0}; +static const unsigned char kat2660_persstr[] = {0}; +static const unsigned char kat2660_entropyinreseed[] = { + 0x35, 0x78, 0x8b, 0x83, 0x69, 0xfd, 0xc3, 0xdf, 0xd2, 0x06, 0xef, 0xb8, + 0x73, 0xb5, 0xc5, 0x21, 0x5f, 0x5b, 0x8e, 0xcb, 0x05, 0x41, 0xfc, 0x0a, + 0x0e, 0x02, 0x7e, 0x86, 0x8a, 0x91, 0x05, 0x3b, 0x5d, 0x58, 0xcc, 0x8c, + 0xa0, 0x75, 0x1e, 0x0c, 0x08, 0x93, 0xc8, 0x68, 0xe2, 0x32, 0x24, 0x71, +}; +static const unsigned char kat2660_addinreseed[] = { + 0x6a, 0xfc, 0xdc, 0x76, 0x0f, 0xe6, 0x2b, 0x08, 0x0f, 0x14, 0x18, 0x86, + 0xb5, 0x16, 0x62, 0x39, 0x71, 0xf8, 0x01, 0x4e, 0xde, 0x86, 0xe5, 0x0d, + 0x62, 0xd3, 0x07, 0xa9, 0x0c, 0xf3, 0x51, 0x2d, 0xa5, 0xfe, 0xfd, 0x37, + 0xb3, 0x93, 0x2d, 0x3d, 0x9d, 0x86, 0xad, 0x0c, 0x03, 0x44, 0x7b, 0xe4, +}; +static const unsigned char kat2660_addin0[] = { + 0x72, 0x10, 0x57, 0x02, 0xfb, 0xf1, 0xda, 0x4c, 0x10, 0xff, 0x08, 0x7b, + 0x02, 0xdb, 0x76, 0x48, 0x04, 0x96, 0x3f, 0xd9, 0x86, 0xde, 0x93, 0x3b, + 0x75, 0x7b, 0x8f, 0xe5, 0xa6, 0x01, 0x6e, 0x0f, 0x27, 0x00, 0x57, 0x39, + 0x25, 0xac, 0xed, 0x85, 0xc0, 0x9e, 0x2a, 0xd9, 0xf9, 0xf7, 0xb2, 0xc2, +}; +static const unsigned char kat2660_addin1[] = { + 0x65, 0xf9, 0xa3, 0xfe, 0x4e, 0x19, 0x53, 0xb7, 0xd5, 0x38, 0xf6, 0xd6, + 0xca, 0x3c, 0x0a, 0x73, 0xbd, 0xa2, 0x27, 0x6f, 0xe8, 0xf8, 0x08, 0x60, + 0xc0, 0x7b, 0x7e, 0xd1, 0x39, 0xd7, 0x48, 0xc3, 0xc4, 0x5d, 0xb5, 0xd9, + 0x65, 0x98, 0xf7, 0x7f, 0xf8, 0x63, 0xa4, 0x39, 0x77, 0xba, 0x39, 0x0c, +}; +static const unsigned char kat2660_retbits[] = { + 0x7c, 0x2b, 0x60, 0x0c, 0x3f, 0x55, 0x06, 0x71, 0x21, 0x5b, 0x03, 0xad, + 0x7a, 0xeb, 0xf7, 0x10, 0x86, 0xec, 0x59, 0xaa, 0x4f, 0x45, 0xcf, 0x6b, + 0x3b, 0xac, 0x9b, 0xba, 0x2e, 0x10, 0x8f, 0x80, 0x1f, 0x64, 0x78, 0xb0, + 0x98, 0xfc, 0xc4, 0xe0, 0x63, 0x45, 0x4c, 0xd3, 0xf6, 0x4a, 0x95, 0x1e, + 0xd7, 0x0f, 0x61, 0x98, 0x66, 0xc1, 0xa4, 0xe7, 0x0b, 0x5c, 0x47, 0x45, + 0x8c, 0x09, 0xe0, 0x83, +}; +static const struct drbg_kat_pr_false kat2660_t = { + 4, kat2660_entropyin, kat2660_nonce, kat2660_persstr, + kat2660_entropyinreseed, kat2660_addinreseed, kat2660_addin0, + kat2660_addin1, kat2660_retbits +}; +static const struct drbg_kat kat2660 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2660_t +}; + +static const unsigned char kat2661_entropyin[] = { + 0x07, 0xd1, 0x4a, 0x0d, 0x9f, 0xbc, 0x76, 0xa1, 0x55, 0x04, 0x7a, 0x93, + 0xbc, 0x0b, 0xb2, 0xb5, 0x78, 0xfa, 0x7d, 0xd7, 0x5c, 0xfe, 0x9a, 0x44, + 0xbb, 0x87, 0x09, 0xfe, 0x3c, 0xc2, 0x30, 0x2f, 0xdc, 0xc0, 0x6a, 0x9c, + 0x67, 0x51, 0xf4, 0x60, 0x2a, 0x3a, 0x49, 0x55, 0xc0, 0xf3, 0x8c, 0x7e, +}; +static const unsigned char kat2661_nonce[] = {0}; +static const unsigned char kat2661_persstr[] = {0}; +static const unsigned char kat2661_entropyinreseed[] = { + 0x8b, 0xab, 0xab, 0x6b, 0x9f, 0x84, 0x29, 0xf5, 0x54, 0x15, 0x6d, 0xa3, + 0x90, 0x51, 0x22, 0xcb, 0x48, 0xc0, 0xb9, 0x01, 0xfb, 0x6e, 0xaa, 0xd8, + 0xdf, 0x77, 0x1e, 0x8d, 0x58, 0x3b, 0xa8, 0x85, 0xdf, 0xba, 0xd0, 0x2e, + 0x47, 0x52, 0x4b, 0x19, 0x81, 0x76, 0x85, 0x93, 0xbd, 0xe8, 0x82, 0x60, +}; +static const unsigned char kat2661_addinreseed[] = { + 0xc1, 0x85, 0xc4, 0x5c, 0xb0, 0x7e, 0x8c, 0x8b, 0xa8, 0xeb, 0x31, 0xd3, + 0xbd, 0x48, 0xa7, 0xc8, 0x64, 0x13, 0x7c, 0x68, 0x92, 0x14, 0xc2, 0xfb, + 0x3b, 0x1d, 0x6d, 0x6a, 0xbc, 0xda, 0x84, 0xf2, 0x92, 0x2a, 0x86, 0x2a, + 0x09, 0x55, 0xe6, 0x76, 0x95, 0x39, 0x1d, 0x60, 0xd6, 0xf2, 0xd1, 0xbf, +}; +static const unsigned char kat2661_addin0[] = { + 0x32, 0x6a, 0x5c, 0x9c, 0x4a, 0x1a, 0x2b, 0x6f, 0xdc, 0x36, 0x9f, 0xe2, + 0xa1, 0x71, 0xbf, 0x62, 0x5d, 0xc2, 0x6e, 0x23, 0xd1, 0xa3, 0x4f, 0xaa, + 0xcf, 0x59, 0xbd, 0x33, 0xbe, 0x98, 0xff, 0x7a, 0xc7, 0xf1, 0x6e, 0x48, + 0x5b, 0x6d, 0xa3, 0x14, 0x5e, 0xa4, 0xdb, 0x37, 0xee, 0x4f, 0xfe, 0xfa, +}; +static const unsigned char kat2661_addin1[] = { + 0xde, 0x09, 0x6a, 0xd1, 0x3d, 0xcc, 0x1e, 0xe1, 0x44, 0x9c, 0x3a, 0x06, + 0x61, 0xed, 0xee, 0x02, 0x86, 0x03, 0x59, 0x0f, 0x08, 0x74, 0x74, 0x16, + 0x1a, 0x7a, 0xb8, 0xfc, 0xfa, 0xc8, 0x96, 0xa9, 0x24, 0xe1, 0x4b, 0x0a, + 0x57, 0xae, 0xac, 0x17, 0xfe, 0xd6, 0x76, 0xf4, 0xb9, 0xc7, 0x16, 0x8c, +}; +static const unsigned char kat2661_retbits[] = { + 0x60, 0x91, 0x1e, 0x6e, 0x64, 0x55, 0xbf, 0x4d, 0x85, 0xa4, 0xf7, 0x63, + 0x78, 0x39, 0x0f, 0x6c, 0xd5, 0x37, 0xd7, 0xcc, 0xe8, 0x82, 0x28, 0xcf, + 0x34, 0xe4, 0xa4, 0x88, 0x9a, 0xdf, 0x62, 0xa9, 0xcc, 0x10, 0x70, 0xdf, + 0xc3, 0x9c, 0x25, 0x4e, 0x81, 0xa8, 0x55, 0x7b, 0xb2, 0xc3, 0x50, 0xfe, + 0x3f, 0x46, 0x21, 0x99, 0xe3, 0x77, 0xd3, 0x79, 0x6e, 0xd1, 0x39, 0x11, + 0x7b, 0x6b, 0x0f, 0x45, +}; +static const struct drbg_kat_pr_false kat2661_t = { + 5, kat2661_entropyin, kat2661_nonce, kat2661_persstr, + kat2661_entropyinreseed, kat2661_addinreseed, kat2661_addin0, + kat2661_addin1, kat2661_retbits +}; +static const struct drbg_kat kat2661 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2661_t +}; + +static const unsigned char kat2662_entropyin[] = { + 0xb3, 0x45, 0x8c, 0x6b, 0x38, 0xca, 0x70, 0xc4, 0x4f, 0xc6, 0xc6, 0x01, + 0xe0, 0x88, 0x86, 0x3f, 0xaf, 0xc9, 0x53, 0xc6, 0xb5, 0xd3, 0xee, 0x57, + 0xfb, 0x1a, 0x07, 0xf3, 0xf6, 0x5d, 0xd5, 0xe6, 0xdc, 0x19, 0xae, 0xd1, + 0x7a, 0xa5, 0x53, 0x09, 0x13, 0xac, 0xa5, 0x98, 0xb2, 0x6a, 0x40, 0xc0, +}; +static const unsigned char kat2662_nonce[] = {0}; +static const unsigned char kat2662_persstr[] = {0}; +static const unsigned char kat2662_entropyinreseed[] = { + 0xfa, 0xa8, 0xd3, 0xfe, 0xab, 0xf9, 0x72, 0xe4, 0x82, 0xe5, 0xa0, 0xb3, + 0x82, 0x1c, 0x23, 0xba, 0x06, 0x7c, 0x45, 0x26, 0x7e, 0x37, 0x15, 0xa4, + 0xc1, 0x0f, 0x65, 0x71, 0x6a, 0x34, 0x80, 0x30, 0xd7, 0xfa, 0x56, 0x37, + 0xe9, 0xf0, 0x00, 0xb3, 0xe4, 0x7d, 0x78, 0x6c, 0x01, 0x3f, 0xc0, 0x35, +}; +static const unsigned char kat2662_addinreseed[] = { + 0x90, 0x1e, 0xf8, 0x9e, 0xa3, 0x82, 0x03, 0xb8, 0x32, 0x49, 0xa3, 0x4a, + 0x1a, 0x8c, 0xbd, 0x0d, 0xa4, 0x77, 0x3c, 0xcd, 0x50, 0x3d, 0x60, 0xa3, + 0x95, 0xbe, 0x3a, 0x3d, 0xb1, 0x13, 0x61, 0x3e, 0x6c, 0x57, 0x1a, 0x49, + 0x96, 0x0a, 0x4e, 0x99, 0xd3, 0x02, 0xb6, 0xf2, 0x37, 0xf6, 0x4d, 0x54, +}; +static const unsigned char kat2662_addin0[] = { + 0xf2, 0xf8, 0x76, 0x93, 0xd1, 0xf2, 0x8f, 0x95, 0xb0, 0xa6, 0x45, 0x9c, + 0x53, 0x8e, 0x82, 0xbe, 0x99, 0xa8, 0xce, 0xfe, 0x8a, 0x2c, 0x7c, 0xa0, + 0x37, 0x82, 0x20, 0x72, 0xe6, 0x36, 0x70, 0xdd, 0x14, 0x18, 0x73, 0xf3, + 0xdc, 0x9e, 0x30, 0x9c, 0x6e, 0xad, 0x40, 0x78, 0x3f, 0x46, 0x79, 0x4e, +}; +static const unsigned char kat2662_addin1[] = { + 0x93, 0xcf, 0xef, 0xbb, 0x76, 0x24, 0xa1, 0x37, 0xcb, 0xd7, 0xb1, 0x77, + 0x91, 0x88, 0x23, 0x89, 0x3e, 0x77, 0x25, 0x1f, 0xc5, 0x66, 0x0a, 0x76, + 0xab, 0x0c, 0xfa, 0xa3, 0xb3, 0x40, 0xae, 0x82, 0x2a, 0x8a, 0x75, 0x36, + 0x50, 0x56, 0xf0, 0x6b, 0x0a, 0x7e, 0x76, 0xaf, 0xc3, 0x9f, 0x68, 0x19, +}; +static const unsigned char kat2662_retbits[] = { + 0x5b, 0xbc, 0xde, 0xb5, 0xd7, 0xd1, 0xae, 0x19, 0xe4, 0xef, 0x78, 0x78, + 0xab, 0xd1, 0xca, 0x4f, 0x26, 0x41, 0xd4, 0x2c, 0x76, 0x5b, 0x94, 0xa7, + 0x68, 0x91, 0x72, 0xa4, 0xe9, 0x0b, 0xaa, 0xe4, 0x6e, 0xbc, 0xfa, 0x54, + 0x27, 0xa8, 0x82, 0xc1, 0x61, 0x4c, 0xab, 0x36, 0xf1, 0x86, 0xa9, 0x8d, + 0xd3, 0xa1, 0x5f, 0xeb, 0xc4, 0xb2, 0x3a, 0xdd, 0x95, 0x5f, 0x69, 0xdb, + 0xfd, 0x5e, 0x5d, 0x2e, +}; +static const struct drbg_kat_pr_false kat2662_t = { + 6, kat2662_entropyin, kat2662_nonce, kat2662_persstr, + kat2662_entropyinreseed, kat2662_addinreseed, kat2662_addin0, + kat2662_addin1, kat2662_retbits +}; +static const struct drbg_kat kat2662 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2662_t +}; + +static const unsigned char kat2663_entropyin[] = { + 0x6d, 0xbc, 0xf6, 0xf2, 0xf3, 0x99, 0x7e, 0xd5, 0x54, 0x71, 0xf7, 0x79, + 0x03, 0x99, 0x82, 0xbc, 0x84, 0xa1, 0xc0, 0x52, 0xfb, 0xf5, 0x88, 0x3d, + 0x6f, 0x62, 0xc0, 0xa6, 0x1d, 0xb1, 0x08, 0x38, 0x6e, 0x74, 0x75, 0x9d, + 0x72, 0x37, 0xbb, 0x0e, 0xfc, 0xa0, 0x30, 0xaa, 0xc7, 0x6b, 0xc7, 0xe6, +}; +static const unsigned char kat2663_nonce[] = {0}; +static const unsigned char kat2663_persstr[] = {0}; +static const unsigned char kat2663_entropyinreseed[] = { + 0x1a, 0x16, 0x75, 0x3c, 0x19, 0x5f, 0xed, 0x27, 0xa1, 0xab, 0xbe, 0x06, + 0x7b, 0x2b, 0x22, 0xaf, 0xf4, 0xc4, 0x9a, 0xe7, 0x83, 0x2d, 0x18, 0xd0, + 0x1c, 0xef, 0x5e, 0xa5, 0xc7, 0xd5, 0x83, 0x30, 0x08, 0x03, 0x6f, 0x71, + 0xe9, 0xc7, 0x7c, 0x16, 0x29, 0xb6, 0xf6, 0x13, 0x70, 0xb5, 0x7f, 0x7b, +}; +static const unsigned char kat2663_addinreseed[] = { + 0xec, 0x54, 0x39, 0x59, 0x31, 0xac, 0x0a, 0xea, 0x2a, 0x87, 0x39, 0xd4, + 0xc5, 0x1e, 0x33, 0xc8, 0x42, 0x59, 0x06, 0x00, 0x5c, 0x34, 0x1d, 0xb3, + 0x73, 0x24, 0x7e, 0x73, 0xb9, 0x68, 0xc2, 0xc7, 0x92, 0x57, 0xcf, 0x7a, + 0xc7, 0x43, 0x53, 0xc0, 0x0f, 0xd8, 0x1a, 0x80, 0xf4, 0xc9, 0x5b, 0x8c, +}; +static const unsigned char kat2663_addin0[] = { + 0xdb, 0xd6, 0xbb, 0x55, 0x79, 0xa1, 0x0e, 0x39, 0x5b, 0x53, 0x44, 0x31, + 0xf3, 0xab, 0x7c, 0x80, 0x25, 0x52, 0x7b, 0xf9, 0x9e, 0x4f, 0x7c, 0x16, + 0x2d, 0x68, 0x1f, 0x8d, 0x35, 0xa5, 0x6f, 0x6a, 0x03, 0x72, 0x9f, 0x07, + 0xab, 0x43, 0x89, 0x7a, 0xd0, 0xe8, 0x01, 0x46, 0x04, 0x4b, 0x16, 0x14, +}; +static const unsigned char kat2663_addin1[] = { + 0x5d, 0x35, 0x74, 0x2c, 0x25, 0x62, 0x0b, 0xb7, 0x95, 0xea, 0xe4, 0x11, + 0x78, 0xd7, 0xfc, 0x86, 0xd9, 0xcb, 0xe0, 0x50, 0xea, 0x70, 0x25, 0x73, + 0xae, 0x6a, 0xdb, 0x61, 0xe1, 0x6c, 0x41, 0x1b, 0x74, 0x45, 0x54, 0x8d, + 0xc5, 0x35, 0xd5, 0x73, 0x71, 0xbb, 0x11, 0xe2, 0xcd, 0xd5, 0x95, 0x97, +}; +static const unsigned char kat2663_retbits[] = { + 0xba, 0x39, 0x05, 0xbf, 0xdd, 0xca, 0xbf, 0x6d, 0xae, 0x31, 0x1d, 0x1f, + 0xc1, 0x9f, 0xff, 0x1f, 0x6f, 0xc1, 0xce, 0x77, 0x9e, 0x38, 0xf8, 0x64, + 0xb7, 0xcc, 0xd2, 0xae, 0xb1, 0xb3, 0xd6, 0xec, 0x18, 0x45, 0x30, 0x5c, + 0x29, 0xd3, 0x9b, 0x87, 0x36, 0xb3, 0x97, 0x72, 0x77, 0xec, 0xaf, 0x57, + 0x35, 0xd0, 0xe4, 0xac, 0xef, 0xcc, 0xf7, 0x77, 0x8a, 0xc3, 0x54, 0x2a, + 0xf8, 0x15, 0xfd, 0x41, +}; +static const struct drbg_kat_pr_false kat2663_t = { + 7, kat2663_entropyin, kat2663_nonce, kat2663_persstr, + kat2663_entropyinreseed, kat2663_addinreseed, kat2663_addin0, + kat2663_addin1, kat2663_retbits +}; +static const struct drbg_kat kat2663 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2663_t +}; + +static const unsigned char kat2664_entropyin[] = { + 0x3a, 0x9e, 0x80, 0x99, 0x00, 0x7c, 0x67, 0xf6, 0xe5, 0xf9, 0x85, 0x25, + 0xcc, 0x42, 0x95, 0xa6, 0x8c, 0x5d, 0x51, 0x35, 0xd0, 0x1f, 0x5f, 0x66, + 0x30, 0x5c, 0x70, 0x48, 0xca, 0x02, 0x52, 0x5c, 0xaa, 0x3f, 0x79, 0x0b, + 0x2d, 0x12, 0xa8, 0x52, 0x0e, 0x99, 0x63, 0xa9, 0xcd, 0xd5, 0x97, 0xa8, +}; +static const unsigned char kat2664_nonce[] = {0}; +static const unsigned char kat2664_persstr[] = {0}; +static const unsigned char kat2664_entropyinreseed[] = { + 0x15, 0x99, 0x3d, 0xba, 0x97, 0x75, 0xdb, 0x8a, 0x5b, 0xf7, 0x97, 0x78, + 0xa3, 0x16, 0xf2, 0x91, 0x0d, 0x4d, 0xc0, 0xbe, 0x59, 0xc3, 0xb2, 0x1c, + 0x65, 0x0e, 0x3a, 0xa8, 0x9c, 0x8c, 0x89, 0xb3, 0x3f, 0xc6, 0x9e, 0x9e, + 0x5d, 0x64, 0x2e, 0x7f, 0xee, 0x16, 0xd6, 0x1b, 0x69, 0x1d, 0xe2, 0xbf, +}; +static const unsigned char kat2664_addinreseed[] = { + 0x94, 0x61, 0x21, 0xba, 0xe2, 0x7e, 0x58, 0x04, 0xda, 0xeb, 0xa0, 0xd7, + 0xdc, 0x7a, 0xe0, 0xc1, 0xc3, 0x97, 0xbf, 0xab, 0x10, 0x6e, 0x13, 0xb8, + 0xb7, 0xc5, 0x46, 0x2b, 0x54, 0x0d, 0x14, 0x71, 0x19, 0xaf, 0x5b, 0x7c, + 0x4f, 0x9c, 0x19, 0x81, 0x61, 0xe5, 0xaa, 0x9b, 0xe3, 0x4e, 0x2d, 0x28, +}; +static const unsigned char kat2664_addin0[] = { + 0xe9, 0x79, 0x94, 0x21, 0xe7, 0x5b, 0xae, 0x70, 0x86, 0x73, 0x1a, 0x21, + 0x24, 0x2d, 0xc1, 0x01, 0xc9, 0x3b, 0x76, 0x8f, 0xc7, 0x47, 0x73, 0x4a, + 0x35, 0x74, 0x54, 0xfc, 0x0f, 0x7c, 0x08, 0x2c, 0xfd, 0xb7, 0x9b, 0x8b, + 0xbc, 0xea, 0x2d, 0x11, 0x22, 0xd8, 0x93, 0x16, 0xa7, 0xbf, 0xbd, 0x3d, +}; +static const unsigned char kat2664_addin1[] = { + 0xca, 0xa0, 0x4f, 0x94, 0xb4, 0xb9, 0xd6, 0x94, 0xe2, 0xc4, 0xbf, 0xa1, + 0xe8, 0xe7, 0x08, 0xb9, 0xc0, 0x0d, 0x9c, 0x3d, 0x64, 0x52, 0x43, 0xac, + 0xfc, 0xb8, 0x79, 0xd2, 0xe2, 0xba, 0x72, 0x3d, 0x9e, 0x48, 0x90, 0x87, + 0x38, 0x11, 0x4e, 0xab, 0x7d, 0x15, 0xf8, 0xcf, 0x36, 0xb0, 0x43, 0xae, +}; +static const unsigned char kat2664_retbits[] = { + 0x9b, 0xd5, 0x0f, 0x3c, 0x53, 0x84, 0xeb, 0x28, 0xd9, 0x31, 0xf0, 0x3a, + 0x64, 0xeb, 0x97, 0xef, 0x14, 0x0e, 0x1e, 0x81, 0xf4, 0xc1, 0xd9, 0xc9, + 0x10, 0xcd, 0x7d, 0x79, 0xa4, 0x04, 0x94, 0xe1, 0xfc, 0xc5, 0x3d, 0x82, + 0xcd, 0x32, 0xdf, 0x35, 0xd5, 0x3b, 0x05, 0xa4, 0x50, 0xe5, 0x4b, 0x7e, + 0xc7, 0x1e, 0x28, 0x35, 0x9c, 0x12, 0x73, 0x84, 0x8e, 0x5a, 0xb1, 0x17, + 0xd5, 0xde, 0xd8, 0x8f, +}; +static const struct drbg_kat_pr_false kat2664_t = { + 8, kat2664_entropyin, kat2664_nonce, kat2664_persstr, + kat2664_entropyinreseed, kat2664_addinreseed, kat2664_addin0, + kat2664_addin1, kat2664_retbits +}; +static const struct drbg_kat kat2664 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2664_t +}; + +static const unsigned char kat2665_entropyin[] = { + 0x7f, 0x2a, 0x02, 0x13, 0xde, 0x67, 0x38, 0xec, 0x62, 0xbe, 0xda, 0xb7, + 0x69, 0xa5, 0xf0, 0x17, 0x32, 0xda, 0xd2, 0xd3, 0x5d, 0xd4, 0xca, 0xd7, + 0xa7, 0x65, 0xdb, 0xbb, 0x6f, 0x91, 0x01, 0xf5, 0x7b, 0x65, 0xec, 0x8f, + 0xc4, 0xe2, 0x3f, 0xb3, 0x47, 0x9c, 0xe6, 0x21, 0x1c, 0xa3, 0xd8, 0x4e, +}; +static const unsigned char kat2665_nonce[] = {0}; +static const unsigned char kat2665_persstr[] = {0}; +static const unsigned char kat2665_entropyinreseed[] = { + 0xae, 0xb0, 0x97, 0xe9, 0xdd, 0xc4, 0xdf, 0xe8, 0x78, 0x74, 0xdd, 0xb1, + 0xa8, 0x56, 0xec, 0x3d, 0x00, 0xff, 0xf1, 0xb3, 0x8c, 0x8f, 0x95, 0x46, + 0x81, 0xc1, 0x1e, 0x61, 0xba, 0xc8, 0xb6, 0xb2, 0xe2, 0xd8, 0xd0, 0x10, + 0xe6, 0x82, 0x0f, 0x9c, 0x4d, 0x80, 0x7b, 0x29, 0x5a, 0xcb, 0x8a, 0xb0, +}; +static const unsigned char kat2665_addinreseed[] = { + 0xb3, 0x3a, 0xd3, 0xde, 0xc7, 0xd5, 0x29, 0xb7, 0x1e, 0x39, 0xd5, 0x91, + 0x47, 0xf7, 0x9b, 0x48, 0x84, 0x03, 0x9d, 0x11, 0x12, 0x80, 0x4f, 0xe8, + 0xc7, 0x0e, 0x17, 0x4f, 0xdd, 0x98, 0x28, 0xc0, 0x6a, 0x4d, 0x44, 0xd2, + 0x0a, 0xa5, 0xfc, 0x19, 0x18, 0xc3, 0xee, 0x80, 0x82, 0xa2, 0xbf, 0x93, +}; +static const unsigned char kat2665_addin0[] = { + 0x86, 0x32, 0xd2, 0x21, 0x75, 0x71, 0x32, 0xbb, 0x7b, 0x88, 0x3b, 0x7d, + 0xc2, 0x67, 0x55, 0xf6, 0x2e, 0xc2, 0xff, 0xab, 0x08, 0x76, 0x16, 0x8d, + 0x11, 0xea, 0x7b, 0x92, 0x77, 0x4c, 0x15, 0xc5, 0x53, 0xb1, 0x13, 0x20, + 0x39, 0x3d, 0x64, 0xa2, 0x26, 0x21, 0x33, 0x60, 0x8c, 0xa9, 0x2a, 0x18, +}; +static const unsigned char kat2665_addin1[] = { + 0xcc, 0xaf, 0x3b, 0xc3, 0xae, 0x9c, 0xdb, 0xfa, 0x88, 0x5a, 0xa8, 0x41, + 0x4c, 0x1f, 0x82, 0x3c, 0x6a, 0x3e, 0xcc, 0x02, 0x0b, 0x61, 0x92, 0x01, + 0xa5, 0x2c, 0xe0, 0xb7, 0x51, 0x6b, 0xa1, 0xf4, 0x97, 0x55, 0xc4, 0x50, + 0xc5, 0x32, 0xbf, 0xe1, 0x1c, 0x06, 0xb9, 0xd0, 0xe0, 0x49, 0xcc, 0xae, +}; +static const unsigned char kat2665_retbits[] = { + 0x4b, 0x1c, 0x06, 0x5a, 0x28, 0x8e, 0x5e, 0xec, 0x56, 0xb6, 0x7f, 0xb3, + 0x41, 0xe2, 0x5f, 0xc7, 0x52, 0x1b, 0x79, 0x4b, 0x52, 0xb9, 0x4f, 0x95, + 0x70, 0xbd, 0xb1, 0x65, 0x83, 0xbb, 0x6f, 0x7a, 0x78, 0x0a, 0xea, 0x52, + 0x97, 0x49, 0x63, 0x55, 0xff, 0xb4, 0xbf, 0x5a, 0x44, 0x4c, 0x27, 0x7c, + 0x96, 0x39, 0x46, 0x19, 0xcc, 0x33, 0xcb, 0xb5, 0xa3, 0xb2, 0xa9, 0xf4, + 0x9b, 0x00, 0xf9, 0xdf, +}; +static const struct drbg_kat_pr_false kat2665_t = { + 9, kat2665_entropyin, kat2665_nonce, kat2665_persstr, + kat2665_entropyinreseed, kat2665_addinreseed, kat2665_addin0, + kat2665_addin1, kat2665_retbits +}; +static const struct drbg_kat kat2665 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2665_t +}; + +static const unsigned char kat2666_entropyin[] = { + 0x80, 0x77, 0x3d, 0x02, 0x72, 0xff, 0x48, 0xba, 0x84, 0xb9, 0x8c, 0x81, + 0x73, 0x65, 0xb0, 0x97, 0xf2, 0x12, 0x58, 0x62, 0x4d, 0x0d, 0xe8, 0x52, + 0x93, 0x81, 0x97, 0x79, 0x50, 0xa5, 0xe4, 0x9f, 0xf2, 0xb7, 0x9d, 0x0f, + 0x25, 0x22, 0x26, 0x99, 0x70, 0xea, 0x6d, 0x48, 0x41, 0x98, 0x92, 0x2c, +}; +static const unsigned char kat2666_nonce[] = {0}; +static const unsigned char kat2666_persstr[] = {0}; +static const unsigned char kat2666_entropyinreseed[] = { + 0x9b, 0x10, 0x1a, 0xc0, 0x18, 0xbe, 0x88, 0xda, 0x36, 0x11, 0xa2, 0x36, + 0xdf, 0xb1, 0x30, 0x0c, 0x00, 0x49, 0x94, 0x7e, 0x9f, 0x6e, 0xbe, 0xf7, + 0xa3, 0xad, 0x6e, 0x14, 0x99, 0xef, 0xec, 0xa0, 0xb1, 0x42, 0x82, 0x6f, + 0xa0, 0x6f, 0x42, 0x7e, 0x27, 0x18, 0x65, 0x23, 0x2a, 0x18, 0xdd, 0x29, +}; +static const unsigned char kat2666_addinreseed[] = { + 0xa6, 0x7e, 0xe2, 0x24, 0x53, 0xdc, 0xaa, 0x5e, 0x47, 0x26, 0xe3, 0x08, + 0x48, 0x72, 0x14, 0x5a, 0xb6, 0x04, 0x89, 0xbc, 0xb6, 0xe8, 0x33, 0x46, + 0xc1, 0x08, 0xf3, 0xef, 0xcc, 0xe5, 0xb3, 0xd9, 0x88, 0xb8, 0x4d, 0x58, + 0x78, 0x66, 0x58, 0xd8, 0x7c, 0x2d, 0xc3, 0xb9, 0x03, 0x5e, 0x9d, 0x88, +}; +static const unsigned char kat2666_addin0[] = { + 0x54, 0x65, 0x15, 0xbf, 0x86, 0xe4, 0x8d, 0xfb, 0x2b, 0x4d, 0xd2, 0x1c, + 0x2b, 0x46, 0xf1, 0x0c, 0x1e, 0x79, 0x7a, 0xb7, 0x99, 0xb5, 0x18, 0x22, + 0xe8, 0xe7, 0xcd, 0x99, 0xcc, 0xeb, 0xcc, 0xa0, 0x0b, 0x88, 0x99, 0xef, + 0x6a, 0xf5, 0xcb, 0x39, 0x51, 0x68, 0xaa, 0xda, 0x90, 0x56, 0xa6, 0xc9, +}; +static const unsigned char kat2666_addin1[] = { + 0x57, 0xbe, 0xdd, 0xa6, 0x3f, 0xc5, 0xf7, 0x92, 0xa6, 0x08, 0xbe, 0x11, + 0x11, 0x41, 0xa1, 0x2e, 0x52, 0x24, 0x96, 0xc0, 0x86, 0x19, 0x45, 0x15, + 0x90, 0x9b, 0xdd, 0xcd, 0x86, 0x8b, 0xe9, 0x97, 0xe7, 0x18, 0xe7, 0xc5, + 0x89, 0x9e, 0x28, 0xdd, 0x6b, 0x12, 0x3c, 0xbc, 0xc3, 0xf2, 0xa8, 0xf2, +}; +static const unsigned char kat2666_retbits[] = { + 0x40, 0x75, 0x46, 0x1e, 0x45, 0x9f, 0x15, 0xcd, 0x32, 0x03, 0x05, 0x51, + 0xbe, 0x47, 0x52, 0x82, 0x23, 0x69, 0x3c, 0x2f, 0x44, 0xe3, 0x24, 0x43, + 0xcb, 0xe9, 0x27, 0x1e, 0xef, 0xe7, 0x4f, 0xa0, 0xa6, 0xe1, 0xec, 0x04, + 0xf4, 0xb8, 0xf4, 0x1d, 0x7e, 0xd6, 0xc5, 0xf4, 0x55, 0x28, 0x1a, 0x3c, + 0xba, 0x56, 0xd9, 0x52, 0xb0, 0x8b, 0x77, 0x53, 0xf6, 0xa3, 0xd7, 0xda, + 0x35, 0x17, 0x31, 0x7a, +}; +static const struct drbg_kat_pr_false kat2666_t = { + 10, kat2666_entropyin, kat2666_nonce, kat2666_persstr, + kat2666_entropyinreseed, kat2666_addinreseed, kat2666_addin0, + kat2666_addin1, kat2666_retbits +}; +static const struct drbg_kat kat2666 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2666_t +}; + +static const unsigned char kat2667_entropyin[] = { + 0xdc, 0x13, 0x2c, 0x15, 0xaf, 0x0e, 0x21, 0x4d, 0x1b, 0x56, 0xeb, 0x88, + 0x84, 0x9e, 0x96, 0xb8, 0x1d, 0xc1, 0x7f, 0x23, 0x8e, 0xb3, 0xd1, 0xbb, + 0x9a, 0x65, 0x92, 0x19, 0xdb, 0xd7, 0x7e, 0xba, 0x38, 0xca, 0x27, 0x96, + 0xa8, 0x01, 0x1e, 0x29, 0xcf, 0xad, 0x76, 0xf8, 0xcb, 0xbf, 0x09, 0x9d, +}; +static const unsigned char kat2667_nonce[] = {0}; +static const unsigned char kat2667_persstr[] = {0}; +static const unsigned char kat2667_entropyinreseed[] = { + 0xcb, 0xa2, 0x3d, 0x4f, 0xdb, 0xb6, 0xc1, 0x1e, 0x38, 0x01, 0x2b, 0x71, + 0xca, 0x26, 0x4b, 0xff, 0x9d, 0x12, 0x64, 0xbb, 0x20, 0xa3, 0x9b, 0xb2, + 0x7d, 0x86, 0xdc, 0xdf, 0x7d, 0x72, 0xce, 0x7a, 0x4f, 0x5c, 0x12, 0x4c, + 0xdf, 0x2a, 0xca, 0x6a, 0xae, 0xe2, 0x08, 0x32, 0x49, 0x51, 0x81, 0xe6, +}; +static const unsigned char kat2667_addinreseed[] = { + 0x07, 0xe0, 0x43, 0xad, 0xd7, 0xcc, 0x14, 0x61, 0x2a, 0x82, 0x92, 0x6c, + 0x09, 0x93, 0x4d, 0xea, 0x09, 0x2f, 0x46, 0x18, 0xcc, 0xe2, 0x56, 0x74, + 0x97, 0x2b, 0x1f, 0x50, 0xb2, 0x90, 0x7c, 0x7e, 0x3d, 0x40, 0xa2, 0x57, + 0x22, 0xea, 0x49, 0xb0, 0xc7, 0xce, 0xb6, 0xb5, 0x7f, 0xf2, 0xd8, 0x70, +}; +static const unsigned char kat2667_addin0[] = { + 0x00, 0x17, 0xff, 0x83, 0x49, 0x67, 0xcf, 0xf8, 0x82, 0x75, 0x98, 0xff, + 0x6c, 0x00, 0xa9, 0xc9, 0x7f, 0x03, 0x47, 0xc3, 0x4f, 0x25, 0x23, 0xa8, + 0x5d, 0xd7, 0xd1, 0x8f, 0xf5, 0x57, 0x57, 0x56, 0xc1, 0xf5, 0x38, 0x3d, + 0xe5, 0x03, 0x38, 0xd0, 0xab, 0x05, 0x05, 0x84, 0x1d, 0x70, 0xa1, 0x93, +}; +static const unsigned char kat2667_addin1[] = { + 0xc4, 0x04, 0xdb, 0xc3, 0xcb, 0x08, 0x51, 0xb0, 0x85, 0x30, 0xf9, 0x65, + 0x00, 0xf5, 0xa2, 0xc1, 0x0d, 0x89, 0x85, 0xc8, 0x2d, 0xec, 0x2b, 0xa3, + 0x1d, 0x41, 0x99, 0xfd, 0x07, 0x68, 0x7c, 0xcf, 0x12, 0x43, 0x82, 0xfb, + 0xee, 0x3f, 0xa1, 0x19, 0x93, 0x8f, 0x0c, 0x72, 0xac, 0x58, 0x61, 0x02, +}; +static const unsigned char kat2667_retbits[] = { + 0x19, 0x35, 0xcc, 0xe8, 0x6b, 0xde, 0x70, 0x87, 0xfc, 0xab, 0x30, 0xb5, + 0xdc, 0xe0, 0xe0, 0x72, 0xad, 0x74, 0x1c, 0x2f, 0x28, 0x19, 0x02, 0xe1, + 0x80, 0x1e, 0x56, 0xc0, 0x8a, 0xe8, 0xb2, 0x56, 0xd2, 0x75, 0x14, 0xde, + 0x92, 0xdd, 0x48, 0xa8, 0x38, 0xca, 0x42, 0x68, 0x20, 0x00, 0x2c, 0x12, + 0x06, 0xf8, 0x6c, 0xad, 0x37, 0xcf, 0xd9, 0x9d, 0x3a, 0x93, 0x5e, 0x05, + 0xf5, 0x6a, 0x75, 0x07, +}; +static const struct drbg_kat_pr_false kat2667_t = { + 11, kat2667_entropyin, kat2667_nonce, kat2667_persstr, + kat2667_entropyinreseed, kat2667_addinreseed, kat2667_addin0, + kat2667_addin1, kat2667_retbits +}; +static const struct drbg_kat kat2667 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2667_t +}; + +static const unsigned char kat2668_entropyin[] = { + 0xe4, 0x84, 0x95, 0x93, 0x0a, 0x7f, 0xc8, 0x6e, 0xcb, 0xfa, 0xd8, 0x07, + 0xd4, 0x0c, 0xa8, 0x4b, 0xa3, 0x5e, 0x34, 0x6c, 0x81, 0x20, 0x90, 0xde, + 0xf8, 0xf4, 0x4d, 0x9e, 0x48, 0xb0, 0xa4, 0x07, 0x04, 0xac, 0x67, 0xec, + 0x80, 0xae, 0x15, 0xb1, 0x2e, 0x85, 0x8a, 0xe8, 0x5a, 0x7e, 0xd9, 0xcf, +}; +static const unsigned char kat2668_nonce[] = {0}; +static const unsigned char kat2668_persstr[] = {0}; +static const unsigned char kat2668_entropyinreseed[] = { + 0xf4, 0x73, 0x59, 0x54, 0xd1, 0x7e, 0x99, 0x07, 0x70, 0x61, 0xc9, 0x60, + 0x4e, 0x8f, 0x17, 0x34, 0xd6, 0x1d, 0xd6, 0x62, 0xe5, 0x4e, 0x37, 0x25, + 0x6c, 0x0f, 0x8b, 0xf2, 0x76, 0xe0, 0x25, 0xd5, 0x9d, 0x21, 0xca, 0xcc, + 0x08, 0x69, 0xed, 0xed, 0xb4, 0x4a, 0x2a, 0xac, 0x9f, 0xcf, 0x2c, 0xcc, +}; +static const unsigned char kat2668_addinreseed[] = { + 0xe7, 0x96, 0x32, 0x2f, 0xc0, 0xef, 0x50, 0x32, 0x51, 0xf6, 0xd4, 0xbd, + 0x72, 0xdc, 0x5e, 0xa8, 0x10, 0x0c, 0x5a, 0x59, 0xf1, 0xa4, 0xfe, 0x48, + 0x37, 0xfa, 0x8e, 0xb2, 0x62, 0x3b, 0xc6, 0x50, 0xa0, 0xcd, 0x48, 0xc3, + 0x06, 0xf1, 0x39, 0xe0, 0xec, 0xd1, 0x69, 0xa5, 0x1d, 0xeb, 0x2c, 0xd0, +}; +static const unsigned char kat2668_addin0[] = { + 0x1c, 0x84, 0x4d, 0x24, 0xb7, 0xcd, 0x95, 0x12, 0xe5, 0x03, 0x5b, 0xc4, + 0x57, 0x61, 0x2e, 0xbf, 0x6d, 0x3d, 0xf6, 0x86, 0x7a, 0xa9, 0x09, 0x03, + 0x8b, 0xcb, 0xc1, 0xf4, 0x74, 0xf7, 0xd0, 0x78, 0x3e, 0xd4, 0x74, 0xe3, + 0x45, 0x25, 0xa8, 0x17, 0xbe, 0xa1, 0xfb, 0xc8, 0x83, 0x96, 0x1e, 0x31, +}; +static const unsigned char kat2668_addin1[] = { + 0x5c, 0x56, 0x71, 0xba, 0x79, 0xbd, 0x0b, 0x83, 0xf7, 0x4d, 0x0e, 0xd9, + 0x8e, 0x9c, 0x8b, 0x36, 0x9a, 0x2d, 0xe3, 0x41, 0x88, 0xd8, 0xb7, 0xca, + 0xda, 0x20, 0xb3, 0x36, 0x37, 0x38, 0xd1, 0x25, 0x2e, 0xce, 0x1e, 0x6a, + 0x26, 0xd0, 0x07, 0xac, 0xdf, 0xc5, 0xb6, 0x10, 0x84, 0x12, 0x76, 0x6a, +}; +static const unsigned char kat2668_retbits[] = { + 0x40, 0xf1, 0x7e, 0x2b, 0xf6, 0x08, 0x4a, 0x64, 0x47, 0xf2, 0xc4, 0x0d, + 0x60, 0x1e, 0x16, 0xa4, 0x30, 0x98, 0xda, 0xdd, 0x9f, 0x96, 0x14, 0xd5, + 0x18, 0x87, 0x46, 0x23, 0xe8, 0xe6, 0x84, 0x43, 0x8c, 0x02, 0xe1, 0x27, + 0xe5, 0x82, 0xb0, 0x00, 0xdf, 0xd4, 0x6d, 0xf0, 0x3d, 0xd5, 0x43, 0x5e, + 0xdc, 0x4f, 0x0f, 0x47, 0x09, 0x83, 0x20, 0xfd, 0x31, 0x1a, 0xfd, 0xbb, + 0x85, 0x42, 0xc4, 0xdb, +}; +static const struct drbg_kat_pr_false kat2668_t = { + 12, kat2668_entropyin, kat2668_nonce, kat2668_persstr, + kat2668_entropyinreseed, kat2668_addinreseed, kat2668_addin0, + kat2668_addin1, kat2668_retbits +}; +static const struct drbg_kat kat2668 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2668_t +}; + +static const unsigned char kat2669_entropyin[] = { + 0xdf, 0x4a, 0x88, 0x8e, 0xc7, 0x36, 0x3f, 0xad, 0xd9, 0x9c, 0xe2, 0x22, + 0x3e, 0xd3, 0x95, 0x77, 0xa4, 0x1b, 0xc2, 0x20, 0xd2, 0x0b, 0x25, 0x3f, + 0x98, 0xdb, 0xfc, 0x61, 0x7a, 0xff, 0x8f, 0xe4, 0xac, 0x66, 0xe5, 0xda, + 0x1b, 0x50, 0x97, 0x22, 0x84, 0x22, 0xcf, 0x82, 0x42, 0xba, 0xaf, 0x53, +}; +static const unsigned char kat2669_nonce[] = {0}; +static const unsigned char kat2669_persstr[] = {0}; +static const unsigned char kat2669_entropyinreseed[] = { + 0xe1, 0x6d, 0xca, 0x80, 0xb2, 0x06, 0x17, 0x06, 0xe8, 0x18, 0x0d, 0xce, + 0x8f, 0x59, 0xe8, 0x88, 0xf1, 0x50, 0x83, 0x6a, 0x0b, 0xbc, 0xea, 0xc1, + 0x79, 0xa4, 0xb8, 0xd8, 0x82, 0xee, 0xad, 0x78, 0x70, 0x9e, 0xd9, 0x95, + 0x11, 0x02, 0x72, 0x8a, 0xbb, 0xbb, 0xf9, 0x22, 0x6a, 0x2d, 0x91, 0x3e, +}; +static const unsigned char kat2669_addinreseed[] = { + 0xfe, 0xbc, 0x9f, 0x6b, 0x9f, 0x2b, 0x90, 0xb4, 0x32, 0x0d, 0x5d, 0x41, + 0xe5, 0xc5, 0x50, 0x6f, 0xa3, 0x2b, 0x16, 0x4d, 0x86, 0xd5, 0xe7, 0xf9, + 0x1d, 0x4a, 0x36, 0x0f, 0xe1, 0x79, 0xc1, 0x27, 0xbd, 0x2b, 0xde, 0xb7, + 0x8f, 0xe7, 0x60, 0x17, 0x4e, 0x85, 0x6a, 0x5e, 0x04, 0xed, 0x89, 0x8b, +}; +static const unsigned char kat2669_addin0[] = { + 0x0a, 0xba, 0x74, 0xcd, 0x29, 0x9e, 0x75, 0x88, 0x6c, 0x9e, 0x7e, 0x52, + 0x93, 0xe5, 0x91, 0x5d, 0x72, 0x0d, 0xa2, 0xc8, 0xc1, 0xcc, 0xa7, 0xf0, + 0xe1, 0xd6, 0xf2, 0xb6, 0x72, 0xb4, 0x01, 0x4e, 0xb4, 0x58, 0x2e, 0x97, + 0xa8, 0x77, 0x12, 0x1c, 0x87, 0x95, 0x61, 0x85, 0x73, 0x6b, 0xa0, 0xe9, +}; +static const unsigned char kat2669_addin1[] = { + 0xe4, 0x51, 0xea, 0xc8, 0x02, 0x66, 0x0a, 0xc8, 0x43, 0xfc, 0x72, 0xb6, + 0x6d, 0x59, 0xf1, 0xe1, 0xca, 0x83, 0x1f, 0x22, 0xd6, 0xa3, 0x61, 0x92, + 0x90, 0x43, 0xf7, 0x62, 0x6f, 0x1d, 0x82, 0x13, 0x3f, 0x51, 0x2f, 0xb1, + 0xf2, 0xd8, 0xca, 0x51, 0x00, 0x4f, 0x80, 0xed, 0x60, 0x06, 0x09, 0xe4, +}; +static const unsigned char kat2669_retbits[] = { + 0x96, 0x8b, 0x70, 0x8e, 0xd6, 0xb5, 0x4d, 0x2e, 0x5a, 0x66, 0xd4, 0x6f, + 0x22, 0x99, 0x87, 0x48, 0xdf, 0xb5, 0xcf, 0x47, 0xe8, 0x17, 0x73, 0x2a, + 0x40, 0x93, 0x8b, 0xf3, 0x59, 0x3f, 0xb2, 0x51, 0xcc, 0xf8, 0xf2, 0x07, + 0x68, 0x37, 0x71, 0x5d, 0x14, 0xb3, 0x16, 0xbf, 0xb5, 0x25, 0x60, 0x13, + 0x56, 0x02, 0xff, 0x98, 0x33, 0x85, 0x93, 0x69, 0x6b, 0xf8, 0x0a, 0x46, + 0x2b, 0x21, 0x4c, 0x4b, +}; +static const struct drbg_kat_pr_false kat2669_t = { + 13, kat2669_entropyin, kat2669_nonce, kat2669_persstr, + kat2669_entropyinreseed, kat2669_addinreseed, kat2669_addin0, + kat2669_addin1, kat2669_retbits +}; +static const struct drbg_kat kat2669 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2669_t +}; + +static const unsigned char kat2670_entropyin[] = { + 0x43, 0xbc, 0x56, 0x1c, 0x4d, 0xd1, 0xb9, 0x04, 0xa5, 0x33, 0x3a, 0x09, + 0x2a, 0x67, 0x0d, 0x0d, 0x1b, 0x61, 0x12, 0x8a, 0x13, 0xbe, 0x2e, 0x53, + 0x8a, 0x32, 0x90, 0x94, 0x57, 0x48, 0x19, 0x28, 0x4e, 0x41, 0x4b, 0x93, + 0x8d, 0xc8, 0xb1, 0x86, 0x0b, 0x38, 0x5c, 0x29, 0x3c, 0x03, 0x01, 0x0d, +}; +static const unsigned char kat2670_nonce[] = {0}; +static const unsigned char kat2670_persstr[] = {0}; +static const unsigned char kat2670_entropyinreseed[] = { + 0xeb, 0x36, 0x21, 0x36, 0xf4, 0xcc, 0xc9, 0xe3, 0x02, 0x50, 0x5d, 0x52, + 0x5b, 0xef, 0xbf, 0xa9, 0x9d, 0x8c, 0x33, 0x36, 0x18, 0x7d, 0x59, 0x02, + 0xb0, 0x3e, 0xd7, 0x56, 0x41, 0x91, 0x3c, 0xe9, 0x73, 0x74, 0x37, 0x57, + 0xf9, 0x7d, 0xae, 0x93, 0x66, 0x87, 0x4b, 0xa6, 0x2b, 0xd8, 0x70, 0x13, +}; +static const unsigned char kat2670_addinreseed[] = { + 0xa9, 0x01, 0xf4, 0xda, 0xaa, 0x63, 0x88, 0x04, 0x17, 0x7a, 0x0b, 0x26, + 0x3e, 0x8c, 0xbc, 0x81, 0x68, 0x8d, 0xf3, 0xbe, 0xb2, 0x18, 0xb0, 0x23, + 0x16, 0xda, 0x83, 0xb7, 0x29, 0x23, 0x0a, 0x9e, 0x51, 0x12, 0xfb, 0x38, + 0x96, 0xb7, 0x27, 0x29, 0x87, 0x55, 0xbb, 0x9a, 0xc6, 0xb6, 0x25, 0x0a, +}; +static const unsigned char kat2670_addin0[] = { + 0xe3, 0x3d, 0x18, 0x1f, 0x31, 0x59, 0xfb, 0x08, 0x74, 0xef, 0xf5, 0xef, + 0x8d, 0xdd, 0x2b, 0x51, 0xa6, 0x0b, 0x13, 0xcc, 0xf0, 0x46, 0xf7, 0xe6, + 0x37, 0xed, 0x27, 0xbe, 0xd8, 0x1b, 0xb6, 0x04, 0x27, 0x7f, 0x73, 0x45, + 0xe6, 0xb8, 0xf0, 0xe0, 0x9f, 0x92, 0x57, 0x93, 0xce, 0x41, 0x7f, 0xff, +}; +static const unsigned char kat2670_addin1[] = { + 0x3e, 0xcf, 0x62, 0x33, 0x82, 0x0e, 0x6c, 0xce, 0xdd, 0xac, 0x7b, 0x02, + 0x4c, 0x49, 0x0c, 0x5e, 0xe1, 0x4c, 0x73, 0xd5, 0xb5, 0x98, 0xc9, 0x2c, + 0xda, 0x30, 0x94, 0x04, 0x71, 0xb6, 0xed, 0x45, 0x00, 0x19, 0x12, 0x06, + 0x89, 0xaa, 0xf1, 0x57, 0xfd, 0x87, 0xb7, 0x1b, 0x13, 0xaf, 0xea, 0x25, +}; +static const unsigned char kat2670_retbits[] = { + 0x9d, 0x79, 0x3d, 0xd9, 0x6b, 0x87, 0x0d, 0xfa, 0x02, 0x67, 0x62, 0x3b, + 0xd1, 0xc2, 0xd8, 0xbd, 0x3e, 0x2c, 0x63, 0xe9, 0xf2, 0x11, 0x34, 0x0f, + 0x63, 0x0f, 0xea, 0x01, 0x35, 0x80, 0x11, 0x39, 0x41, 0x54, 0x14, 0x5a, + 0x10, 0x65, 0x9c, 0x4d, 0x98, 0x27, 0x4a, 0x52, 0x5c, 0x48, 0xa9, 0x0d, + 0xa0, 0x12, 0x6a, 0x99, 0xb8, 0x5e, 0xd5, 0xb4, 0xb9, 0x03, 0x19, 0x5f, + 0x0d, 0xdd, 0xc7, 0x62, +}; +static const struct drbg_kat_pr_false kat2670_t = { + 14, kat2670_entropyin, kat2670_nonce, kat2670_persstr, + kat2670_entropyinreseed, kat2670_addinreseed, kat2670_addin0, + kat2670_addin1, kat2670_retbits +}; +static const struct drbg_kat kat2670 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2670_t +}; + +static const unsigned char kat2671_entropyin[] = { + 0xff, 0xad, 0x10, 0x10, 0x00, 0x25, 0xa8, 0x79, 0x67, 0x2f, 0xf5, 0x03, + 0x74, 0xb2, 0x86, 0x71, 0x2f, 0x45, 0x7d, 0xd0, 0x14, 0x41, 0xd7, 0x6a, + 0xc1, 0xa1, 0xcd, 0x15, 0xc7, 0x39, 0x0d, 0xd9, 0x31, 0x79, 0xa2, 0xf5, + 0x92, 0x0d, 0x19, 0x8b, 0xf3, 0x4a, 0x1b, 0x76, 0xfb, 0xc2, 0x12, 0x89, +}; +static const unsigned char kat2671_nonce[] = {0}; +static const unsigned char kat2671_persstr[] = { + 0x1d, 0x2b, 0xe6, 0xf2, 0x5e, 0x88, 0xfa, 0x30, 0xc4, 0xef, 0x42, 0xe4, + 0xd5, 0x4e, 0xfd, 0x95, 0x7d, 0xec, 0x23, 0x1f, 0xa0, 0x01, 0x43, 0xca, + 0x47, 0x58, 0x0b, 0xe6, 0x66, 0xa8, 0xc1, 0x43, 0xa9, 0x16, 0xc9, 0x0b, + 0x38, 0x19, 0xa0, 0xa7, 0xea, 0x91, 0x4e, 0x3c, 0x9a, 0x2e, 0x7a, 0x3f, +}; +static const unsigned char kat2671_entropyinreseed[] = { + 0x6c, 0x1a, 0x08, 0x9c, 0xae, 0x31, 0x33, 0x63, 0xbc, 0x76, 0xa7, 0x80, + 0x13, 0x9e, 0xb4, 0xf2, 0xf2, 0x04, 0x8b, 0x1f, 0x6b, 0x07, 0x89, 0x6c, + 0x5c, 0x41, 0x2b, 0xff, 0x03, 0x85, 0x44, 0x0f, 0xc4, 0x3b, 0x73, 0xfa, + 0xcb, 0xb7, 0x9e, 0x3a, 0x25, 0x2f, 0xa0, 0x1f, 0xe1, 0x7a, 0xb3, 0x91, +}; +static const unsigned char kat2671_addinreseed[] = {0}; +static const unsigned char kat2671_addin0[] = {0}; +static const unsigned char kat2671_addin1[] = {0}; +static const unsigned char kat2671_retbits[] = { + 0xe0, 0x53, 0xc7, 0xd4, 0xbd, 0x90, 0x99, 0xef, 0x6a, 0x99, 0xf1, 0x90, + 0xa5, 0xfd, 0x80, 0x21, 0x94, 0x37, 0xd6, 0x42, 0x00, 0x66, 0x72, 0x33, + 0x8d, 0xa6, 0xe0, 0xfe, 0x73, 0xca, 0x4d, 0x24, 0xff, 0xa5, 0x11, 0x51, + 0xbf, 0xbd, 0xac, 0x78, 0xd8, 0xa2, 0xf6, 0x25, 0x50, 0x46, 0xed, 0xf5, + 0x7a, 0x04, 0x62, 0x6e, 0x99, 0x77, 0x13, 0x9c, 0x69, 0x33, 0x27, 0x42, + 0x99, 0xf3, 0xbd, 0xff, +}; +static const struct drbg_kat_pr_false kat2671_t = { + 0, kat2671_entropyin, kat2671_nonce, kat2671_persstr, + kat2671_entropyinreseed, kat2671_addinreseed, kat2671_addin0, + kat2671_addin1, kat2671_retbits +}; +static const struct drbg_kat kat2671 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2671_t +}; + +static const unsigned char kat2672_entropyin[] = { + 0xf1, 0xe0, 0xd7, 0xb1, 0xac, 0x7e, 0x4e, 0x15, 0x5b, 0xb5, 0x88, 0x50, + 0x0f, 0x57, 0xd0, 0xc5, 0x99, 0x69, 0x26, 0x7e, 0xa5, 0x42, 0x7e, 0x2d, + 0x7f, 0xde, 0x1f, 0x9c, 0x54, 0xe6, 0x7b, 0x7f, 0x65, 0x62, 0xbf, 0xc1, + 0x01, 0x9b, 0x8b, 0x57, 0x99, 0xd2, 0xa8, 0x33, 0xfd, 0xcc, 0xac, 0x79, +}; +static const unsigned char kat2672_nonce[] = {0}; +static const unsigned char kat2672_persstr[] = { + 0x86, 0xda, 0x37, 0x24, 0x5d, 0x9b, 0xd1, 0xfb, 0x59, 0xa4, 0xbc, 0x7a, + 0xbd, 0x28, 0x9e, 0xa2, 0x99, 0x92, 0x58, 0x04, 0x2c, 0x5f, 0xa6, 0x96, + 0xf2, 0xda, 0x73, 0x44, 0xbb, 0x6e, 0xbc, 0x5b, 0x77, 0x0c, 0xa2, 0x84, + 0xbf, 0xe6, 0x42, 0x57, 0x0b, 0x52, 0xef, 0x47, 0xb7, 0x80, 0xd5, 0xc9, +}; +static const unsigned char kat2672_entropyinreseed[] = { + 0x9c, 0x2c, 0x9c, 0x07, 0xca, 0xb1, 0x2c, 0xf5, 0x0f, 0x88, 0x46, 0x14, + 0x80, 0x34, 0xa4, 0x16, 0xc8, 0x33, 0x66, 0xc1, 0xe2, 0x07, 0x76, 0x07, + 0x37, 0x51, 0x55, 0x3c, 0xae, 0x69, 0xda, 0x8d, 0x1f, 0x6b, 0xce, 0x6b, + 0xde, 0x27, 0x08, 0x76, 0x59, 0xd6, 0x9a, 0x62, 0xe2, 0xba, 0x7c, 0x3c, +}; +static const unsigned char kat2672_addinreseed[] = {0}; +static const unsigned char kat2672_addin0[] = {0}; +static const unsigned char kat2672_addin1[] = {0}; +static const unsigned char kat2672_retbits[] = { + 0xe0, 0xac, 0x06, 0xd7, 0xea, 0xe8, 0x94, 0x69, 0xb6, 0xc1, 0x4a, 0x31, + 0xe7, 0xf0, 0x46, 0x4e, 0xe2, 0x1f, 0x7b, 0x30, 0xd2, 0x26, 0x4c, 0x2d, + 0xe3, 0xe4, 0x35, 0xcb, 0x40, 0xd0, 0xe5, 0x04, 0x3e, 0xe1, 0x3d, 0xfb, + 0xc0, 0x34, 0x21, 0x56, 0x75, 0x08, 0x80, 0xb2, 0xd5, 0xdd, 0xdb, 0x3b, + 0xeb, 0xb4, 0x3b, 0x16, 0x2a, 0x84, 0x78, 0x23, 0x5c, 0x8b, 0x87, 0xf9, + 0x6d, 0x02, 0x84, 0xfd, +}; +static const struct drbg_kat_pr_false kat2672_t = { + 1, kat2672_entropyin, kat2672_nonce, kat2672_persstr, + kat2672_entropyinreseed, kat2672_addinreseed, kat2672_addin0, + kat2672_addin1, kat2672_retbits +}; +static const struct drbg_kat kat2672 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2672_t +}; + +static const unsigned char kat2673_entropyin[] = { + 0x1d, 0xbe, 0xe7, 0x67, 0xe9, 0x91, 0x6a, 0xb3, 0x22, 0xba, 0x46, 0x1f, + 0xbf, 0x9f, 0x75, 0x15, 0xcf, 0xbc, 0xb4, 0x59, 0x44, 0xa7, 0xb4, 0x71, + 0x57, 0x7d, 0xa0, 0x87, 0x69, 0x0d, 0x94, 0xd9, 0x67, 0x01, 0x8b, 0x63, + 0x1e, 0x0c, 0x1f, 0x64, 0xda, 0x3c, 0x80, 0x5d, 0x04, 0x9f, 0x44, 0x9a, +}; +static const unsigned char kat2673_nonce[] = {0}; +static const unsigned char kat2673_persstr[] = { + 0x96, 0x6b, 0x5c, 0xd9, 0x40, 0x19, 0xd4, 0xd9, 0x0b, 0x48, 0xea, 0x7f, + 0x54, 0x0a, 0x69, 0x8c, 0xfe, 0x30, 0xd7, 0xeb, 0x25, 0xf5, 0xf7, 0xe5, + 0xfe, 0x42, 0xd9, 0xf5, 0x3e, 0xbe, 0xd6, 0xe9, 0x4e, 0x73, 0x3b, 0x07, + 0x94, 0xfc, 0x6b, 0xf3, 0x06, 0x27, 0x91, 0x1e, 0x20, 0xcc, 0x18, 0xe8, +}; +static const unsigned char kat2673_entropyinreseed[] = { + 0x96, 0xe8, 0x28, 0x12, 0x8f, 0x18, 0x3c, 0x76, 0xc9, 0x0e, 0xc8, 0x34, + 0x1a, 0x43, 0x56, 0x13, 0x68, 0xb7, 0x71, 0x14, 0x04, 0x8c, 0xcb, 0x05, + 0xdb, 0x66, 0x12, 0x8d, 0x54, 0xc9, 0x53, 0x9d, 0x1a, 0xdc, 0x1d, 0x72, + 0xf7, 0xfb, 0x09, 0x50, 0xe4, 0x1b, 0x13, 0x43, 0xa9, 0xe4, 0xdf, 0x76, +}; +static const unsigned char kat2673_addinreseed[] = {0}; +static const unsigned char kat2673_addin0[] = {0}; +static const unsigned char kat2673_addin1[] = {0}; +static const unsigned char kat2673_retbits[] = { + 0xc4, 0xd3, 0xf5, 0xc5, 0x5d, 0x39, 0x79, 0xb1, 0x74, 0x02, 0x06, 0x50, + 0xad, 0x7a, 0x46, 0xb4, 0x23, 0xec, 0x44, 0x6d, 0xff, 0x2a, 0x9e, 0x9f, + 0xe0, 0xa7, 0x82, 0xbf, 0x65, 0xa7, 0x2d, 0x5f, 0xcb, 0x18, 0x96, 0xbc, + 0x10, 0x92, 0xa8, 0xc7, 0x3f, 0x41, 0x29, 0x5e, 0x2e, 0x70, 0x44, 0x43, + 0x4f, 0x88, 0xaa, 0x0a, 0xca, 0x78, 0xf7, 0xea, 0xc4, 0x0e, 0x32, 0x2c, + 0xb7, 0xc2, 0x55, 0x63, +}; +static const struct drbg_kat_pr_false kat2673_t = { + 2, kat2673_entropyin, kat2673_nonce, kat2673_persstr, + kat2673_entropyinreseed, kat2673_addinreseed, kat2673_addin0, + kat2673_addin1, kat2673_retbits +}; +static const struct drbg_kat kat2673 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2673_t +}; + +static const unsigned char kat2674_entropyin[] = { + 0xdf, 0x58, 0x8b, 0xff, 0x3a, 0x1f, 0xc9, 0x7a, 0x90, 0x80, 0x67, 0xda, + 0x6a, 0x7f, 0xef, 0x08, 0xc8, 0x89, 0xac, 0x29, 0xad, 0x7d, 0x63, 0x9b, + 0xd0, 0x47, 0x15, 0x7b, 0xac, 0xab, 0x4d, 0xbd, 0xee, 0x3d, 0xff, 0xe5, + 0x75, 0xf3, 0x7d, 0x07, 0x1a, 0xf9, 0x4c, 0xbd, 0x76, 0x28, 0xd3, 0x98, +}; +static const unsigned char kat2674_nonce[] = {0}; +static const unsigned char kat2674_persstr[] = { + 0x54, 0x87, 0x15, 0xcf, 0xb2, 0x8c, 0x1b, 0xc5, 0x64, 0x53, 0xb8, 0xc3, + 0x9e, 0x24, 0xcf, 0xd6, 0x40, 0x77, 0xc0, 0xf6, 0xe9, 0xd9, 0x59, 0xd5, + 0x1b, 0x9f, 0x06, 0x67, 0xb9, 0x7d, 0x3c, 0x4e, 0x1a, 0x17, 0x9d, 0x1a, + 0x55, 0x4d, 0xf8, 0x45, 0xb2, 0x4c, 0x26, 0xda, 0xec, 0x85, 0x84, 0x5a, +}; +static const unsigned char kat2674_entropyinreseed[] = { + 0xf8, 0xc1, 0x65, 0xb5, 0xeb, 0xd8, 0x34, 0x7a, 0x2f, 0xfe, 0xf2, 0x21, + 0x8f, 0x99, 0x38, 0x77, 0x02, 0x7e, 0x97, 0x75, 0x98, 0xb4, 0xfd, 0xac, + 0x2f, 0x65, 0xd8, 0xd9, 0x94, 0xc7, 0x43, 0x29, 0x00, 0xf8, 0x40, 0x7a, + 0xb5, 0xae, 0xd1, 0x88, 0x5d, 0xee, 0x5a, 0xa2, 0x45, 0x8f, 0x59, 0x98, +}; +static const unsigned char kat2674_addinreseed[] = {0}; +static const unsigned char kat2674_addin0[] = {0}; +static const unsigned char kat2674_addin1[] = {0}; +static const unsigned char kat2674_retbits[] = { + 0xde, 0xed, 0x18, 0x22, 0x0b, 0xd8, 0xf7, 0x2a, 0x34, 0x55, 0x99, 0x24, + 0xf3, 0xca, 0xd9, 0x25, 0xee, 0x71, 0x76, 0x90, 0xf7, 0x6b, 0xc2, 0x23, + 0xd5, 0xff, 0xee, 0xbb, 0xb5, 0x54, 0xb6, 0x1b, 0x9d, 0x9e, 0xb6, 0xac, + 0x56, 0x97, 0xb0, 0x63, 0x31, 0xe2, 0x36, 0x67, 0x26, 0x77, 0xe2, 0xe0, + 0x1d, 0x6e, 0x3f, 0xd5, 0x81, 0xa4, 0xfa, 0x1e, 0xba, 0xd2, 0x89, 0x79, + 0x7b, 0x68, 0x95, 0x5f, +}; +static const struct drbg_kat_pr_false kat2674_t = { + 3, kat2674_entropyin, kat2674_nonce, kat2674_persstr, + kat2674_entropyinreseed, kat2674_addinreseed, kat2674_addin0, + kat2674_addin1, kat2674_retbits +}; +static const struct drbg_kat kat2674 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2674_t +}; + +static const unsigned char kat2675_entropyin[] = { + 0x98, 0x55, 0x50, 0x93, 0xe4, 0x43, 0xfe, 0x8e, 0x2b, 0xc8, 0xd2, 0xeb, + 0x4d, 0x3a, 0x7a, 0xbb, 0x8e, 0xba, 0x00, 0xb2, 0x56, 0x83, 0xa6, 0xb3, + 0x11, 0x91, 0xff, 0xf7, 0xc0, 0x43, 0x66, 0x5e, 0xc2, 0xca, 0xd3, 0xe9, + 0x9e, 0x55, 0xbb, 0xc2, 0x41, 0xb8, 0xed, 0xc6, 0x99, 0xdb, 0xc9, 0xed, +}; +static const unsigned char kat2675_nonce[] = {0}; +static const unsigned char kat2675_persstr[] = { + 0x56, 0x27, 0xa0, 0xa5, 0x54, 0x57, 0xdb, 0x05, 0xe3, 0x90, 0x3d, 0x4b, + 0x69, 0xce, 0x15, 0xf5, 0x5f, 0x93, 0x31, 0x68, 0xd6, 0xeb, 0x37, 0x4c, + 0x04, 0x4e, 0x8f, 0x10, 0x40, 0xf6, 0x1e, 0xd7, 0xeb, 0x24, 0xf8, 0x7f, + 0x91, 0xc6, 0x8c, 0xde, 0x05, 0x0f, 0x50, 0x4b, 0x89, 0x65, 0xdd, 0x81, +}; +static const unsigned char kat2675_entropyinreseed[] = { + 0x18, 0xd1, 0x7e, 0x1b, 0x68, 0x37, 0x88, 0x01, 0xf8, 0x3e, 0x7a, 0xa9, + 0xa6, 0xd4, 0xb8, 0x4d, 0x39, 0x60, 0x02, 0x2c, 0x74, 0x0e, 0x6c, 0x84, + 0x58, 0x69, 0xa5, 0xdb, 0x55, 0x3d, 0x2e, 0x02, 0x47, 0x9c, 0xd9, 0x2f, + 0x3c, 0x0d, 0x8a, 0xbd, 0x3e, 0x92, 0xfc, 0x9c, 0x9f, 0xbc, 0x6a, 0x3f, +}; +static const unsigned char kat2675_addinreseed[] = {0}; +static const unsigned char kat2675_addin0[] = {0}; +static const unsigned char kat2675_addin1[] = {0}; +static const unsigned char kat2675_retbits[] = { + 0x7a, 0x7f, 0x0a, 0xb0, 0x7a, 0x54, 0x0b, 0x4e, 0x9a, 0x3e, 0xda, 0x3f, + 0x8b, 0xd1, 0x26, 0x20, 0x15, 0xd8, 0xea, 0x6d, 0x51, 0x2d, 0xbe, 0xa0, + 0x59, 0x42, 0x42, 0x1f, 0x5a, 0x73, 0x24, 0x2a, 0xc2, 0x36, 0x00, 0x9e, + 0xf0, 0x83, 0xbf, 0x2e, 0x51, 0xb1, 0x9c, 0x40, 0xd1, 0xa0, 0x19, 0x36, + 0x7a, 0x6b, 0x96, 0xfb, 0x52, 0xd2, 0x54, 0xe4, 0xd8, 0x81, 0x55, 0x0a, + 0xef, 0x05, 0x49, 0xed, +}; +static const struct drbg_kat_pr_false kat2675_t = { + 4, kat2675_entropyin, kat2675_nonce, kat2675_persstr, + kat2675_entropyinreseed, kat2675_addinreseed, kat2675_addin0, + kat2675_addin1, kat2675_retbits +}; +static const struct drbg_kat kat2675 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2675_t +}; + +static const unsigned char kat2676_entropyin[] = { + 0x07, 0x79, 0x3b, 0xac, 0x64, 0x61, 0xf2, 0x3e, 0x5e, 0xb0, 0xd1, 0xbc, + 0x60, 0xb5, 0xf7, 0x35, 0x51, 0x54, 0x58, 0xd1, 0x53, 0x05, 0x40, 0xdf, + 0x1c, 0x8e, 0x6f, 0xc5, 0xc3, 0xeb, 0xfb, 0x06, 0xb9, 0xdb, 0x60, 0xa8, + 0x94, 0x7e, 0xb6, 0x29, 0xff, 0x7a, 0x37, 0x5f, 0xe6, 0x80, 0xd6, 0x96, +}; +static const unsigned char kat2676_nonce[] = {0}; +static const unsigned char kat2676_persstr[] = { + 0xc1, 0xe2, 0x13, 0x2b, 0x77, 0xb6, 0xc1, 0x57, 0x42, 0xe0, 0x6e, 0x85, + 0x6c, 0x15, 0x49, 0xc4, 0xcc, 0xeb, 0xd1, 0xb2, 0xed, 0xa9, 0x3e, 0x2c, + 0x43, 0x39, 0x1b, 0x52, 0xca, 0xd5, 0x14, 0x90, 0xfe, 0x34, 0x15, 0x7f, + 0x57, 0xbe, 0x9e, 0xb4, 0xef, 0xf4, 0x63, 0xb0, 0x59, 0x98, 0x66, 0x80, +}; +static const unsigned char kat2676_entropyinreseed[] = { + 0x23, 0xe4, 0x7e, 0x0c, 0x41, 0x46, 0x2f, 0x7c, 0x61, 0x9b, 0xbc, 0xd5, + 0xb7, 0x3f, 0x9a, 0xb1, 0xc6, 0x8c, 0x7c, 0xdf, 0x1e, 0xc9, 0x2c, 0x4c, + 0x37, 0x12, 0x64, 0x02, 0x95, 0x8e, 0x11, 0x0e, 0x32, 0x91, 0x07, 0x74, + 0x2e, 0x70, 0xdb, 0x61, 0x1b, 0x93, 0x97, 0x4c, 0x39, 0x39, 0x36, 0xa6, +}; +static const unsigned char kat2676_addinreseed[] = {0}; +static const unsigned char kat2676_addin0[] = {0}; +static const unsigned char kat2676_addin1[] = {0}; +static const unsigned char kat2676_retbits[] = { + 0xe6, 0xda, 0xb4, 0xa8, 0x87, 0xf4, 0x8e, 0xc3, 0x3c, 0xb2, 0x93, 0xff, + 0xda, 0xb5, 0xfc, 0x69, 0x59, 0x5f, 0x94, 0xc7, 0x2c, 0x5a, 0x9b, 0xb4, + 0x3f, 0x46, 0x8f, 0x75, 0x49, 0x01, 0x90, 0xb7, 0xe0, 0xf1, 0x4f, 0x5c, + 0x04, 0x55, 0x0c, 0xb6, 0x2a, 0x6d, 0x0e, 0xe0, 0xc3, 0xd8, 0x34, 0xbe, + 0x34, 0x34, 0xc8, 0x22, 0x9c, 0x12, 0x40, 0x87, 0xbb, 0x98, 0x5a, 0x06, + 0xb9, 0xa3, 0x72, 0x67, +}; +static const struct drbg_kat_pr_false kat2676_t = { + 5, kat2676_entropyin, kat2676_nonce, kat2676_persstr, + kat2676_entropyinreseed, kat2676_addinreseed, kat2676_addin0, + kat2676_addin1, kat2676_retbits +}; +static const struct drbg_kat kat2676 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2676_t +}; + +static const unsigned char kat2677_entropyin[] = { + 0x25, 0xce, 0xfa, 0x05, 0x12, 0x92, 0x1f, 0xd4, 0xa3, 0xa4, 0xe5, 0xe7, + 0xc4, 0x8c, 0x62, 0x01, 0x18, 0x5a, 0x69, 0x68, 0x41, 0x9a, 0xe5, 0xbc, + 0xc6, 0x66, 0x7b, 0xb7, 0x4c, 0x35, 0xde, 0x4f, 0x91, 0x98, 0x8a, 0x33, + 0xf2, 0x5e, 0xa8, 0x8a, 0x84, 0x43, 0xc6, 0x56, 0x43, 0xcc, 0x73, 0xdd, +}; +static const unsigned char kat2677_nonce[] = {0}; +static const unsigned char kat2677_persstr[] = { + 0x07, 0xdd, 0xf1, 0x25, 0x96, 0x0c, 0x34, 0x66, 0x80, 0xb4, 0xb3, 0x61, + 0xc0, 0xa9, 0xc6, 0xdc, 0x10, 0x08, 0xa8, 0x5c, 0xe1, 0x86, 0x1b, 0x45, + 0xff, 0x18, 0x90, 0x7e, 0x6e, 0x7d, 0xb4, 0x1b, 0x04, 0x6e, 0x5f, 0x01, + 0x66, 0x17, 0xe6, 0xc5, 0xb0, 0xce, 0xb5, 0x57, 0x5a, 0xc2, 0x78, 0xa8, +}; +static const unsigned char kat2677_entropyinreseed[] = { + 0x8c, 0xf4, 0x1e, 0x54, 0x13, 0xb0, 0xc8, 0xff, 0xac, 0xbc, 0x4d, 0xfc, + 0x11, 0x9f, 0x10, 0xb4, 0x75, 0x69, 0x35, 0x9b, 0x91, 0x14, 0x48, 0xf4, + 0x5c, 0x7a, 0xd6, 0x3d, 0xd5, 0x8e, 0x87, 0x24, 0x10, 0xc2, 0x51, 0x76, + 0xb9, 0x86, 0xfe, 0xe8, 0xb8, 0x39, 0x66, 0xd0, 0x09, 0x8d, 0x99, 0x6a, +}; +static const unsigned char kat2677_addinreseed[] = {0}; +static const unsigned char kat2677_addin0[] = {0}; +static const unsigned char kat2677_addin1[] = {0}; +static const unsigned char kat2677_retbits[] = { + 0xab, 0x58, 0xec, 0x5c, 0x35, 0x60, 0x05, 0x66, 0xdd, 0x2e, 0xe1, 0x87, + 0xa5, 0xb6, 0x7d, 0xfa, 0x65, 0xbe, 0xbe, 0x13, 0x33, 0x36, 0x70, 0xd2, + 0xa1, 0x98, 0xfa, 0x5a, 0xf0, 0xc2, 0x02, 0x94, 0xc6, 0xcb, 0x69, 0xd3, + 0x75, 0x64, 0xd2, 0xb2, 0x58, 0x7e, 0xa5, 0x58, 0x7e, 0x12, 0x34, 0x1e, + 0x77, 0xf4, 0x7f, 0x17, 0x3d, 0x6c, 0xc9, 0xf9, 0xb9, 0xe5, 0xde, 0xdf, + 0x0e, 0xe1, 0xa8, 0xd0, +}; +static const struct drbg_kat_pr_false kat2677_t = { + 6, kat2677_entropyin, kat2677_nonce, kat2677_persstr, + kat2677_entropyinreseed, kat2677_addinreseed, kat2677_addin0, + kat2677_addin1, kat2677_retbits +}; +static const struct drbg_kat kat2677 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2677_t +}; + +static const unsigned char kat2678_entropyin[] = { + 0x92, 0x9f, 0x1d, 0xec, 0x0a, 0x6d, 0x14, 0xde, 0x48, 0x3a, 0x2f, 0xe1, + 0x14, 0xa4, 0x30, 0x79, 0x6d, 0x0b, 0x44, 0x9f, 0xca, 0x56, 0xa4, 0xdd, + 0xbb, 0xe6, 0x61, 0xbd, 0xc2, 0x6a, 0x8d, 0xf8, 0x5c, 0xaf, 0xad, 0x7b, + 0x67, 0x7c, 0xcb, 0xf1, 0xfe, 0x4c, 0xb0, 0xd5, 0xe8, 0xcb, 0x57, 0xa9, +}; +static const unsigned char kat2678_nonce[] = {0}; +static const unsigned char kat2678_persstr[] = { + 0x0b, 0xf8, 0xc5, 0x90, 0xa6, 0x66, 0x53, 0xc0, 0x49, 0x47, 0x50, 0xd1, + 0x02, 0x74, 0xb5, 0x83, 0xd8, 0x6e, 0x54, 0x0b, 0x51, 0x7b, 0xfc, 0x23, + 0xbb, 0x3b, 0x0c, 0x9f, 0xde, 0x37, 0x3e, 0x45, 0x65, 0x58, 0x46, 0x86, + 0x03, 0xc2, 0x11, 0x5c, 0x97, 0xd3, 0x66, 0x2e, 0x68, 0x25, 0xf4, 0xf2, +}; +static const unsigned char kat2678_entropyinreseed[] = { + 0x84, 0x03, 0x06, 0x28, 0x53, 0x4b, 0x75, 0x25, 0xdb, 0xd4, 0x02, 0x3a, + 0xed, 0x1a, 0xb0, 0x8c, 0x4f, 0x2b, 0x86, 0xa7, 0xc2, 0xfa, 0x3b, 0xc9, + 0x55, 0x9b, 0x42, 0x5c, 0xce, 0x07, 0xc3, 0x4f, 0xac, 0x14, 0xe9, 0x63, + 0x25, 0x6a, 0xea, 0x03, 0xf7, 0x4f, 0x11, 0x22, 0xa7, 0xa3, 0x04, 0x83, +}; +static const unsigned char kat2678_addinreseed[] = {0}; +static const unsigned char kat2678_addin0[] = {0}; +static const unsigned char kat2678_addin1[] = {0}; +static const unsigned char kat2678_retbits[] = { + 0x19, 0x9f, 0x2d, 0xce, 0x5b, 0xbe, 0x32, 0xc6, 0x93, 0x15, 0x1a, 0x21, + 0x6f, 0xb3, 0x6c, 0xce, 0xa7, 0x99, 0x6c, 0x31, 0x3f, 0x6b, 0x78, 0xfa, + 0x30, 0xad, 0x81, 0x2a, 0x0e, 0x60, 0x39, 0x65, 0x02, 0x3f, 0xc2, 0x97, + 0x06, 0xa7, 0x1b, 0x75, 0x3d, 0x79, 0x24, 0x4c, 0xb9, 0xe8, 0xfd, 0xaf, + 0xf4, 0x67, 0xe0, 0xf9, 0x63, 0x42, 0x6b, 0x10, 0xad, 0x89, 0xa9, 0x8e, + 0x98, 0x7a, 0xf3, 0x16, +}; +static const struct drbg_kat_pr_false kat2678_t = { + 7, kat2678_entropyin, kat2678_nonce, kat2678_persstr, + kat2678_entropyinreseed, kat2678_addinreseed, kat2678_addin0, + kat2678_addin1, kat2678_retbits +}; +static const struct drbg_kat kat2678 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2678_t +}; + +static const unsigned char kat2679_entropyin[] = { + 0x7b, 0xc5, 0xd9, 0x70, 0x18, 0x6b, 0x9e, 0x1b, 0x00, 0x52, 0xb7, 0x56, + 0x4d, 0xba, 0xbf, 0x61, 0xc8, 0x9c, 0xb3, 0xd6, 0x4f, 0xf4, 0x2f, 0x9a, + 0x62, 0xd6, 0x25, 0x11, 0x2a, 0xca, 0x04, 0x86, 0xcd, 0xf0, 0x33, 0x6c, + 0x36, 0x12, 0x25, 0x4b, 0x40, 0xcb, 0xfb, 0xa8, 0x3a, 0xb6, 0x5b, 0x42, +}; +static const unsigned char kat2679_nonce[] = {0}; +static const unsigned char kat2679_persstr[] = { + 0xa2, 0x53, 0x26, 0xfe, 0xf3, 0x0f, 0x9c, 0x94, 0x42, 0x3d, 0x99, 0x75, + 0x9a, 0x1e, 0xe5, 0x75, 0x53, 0x6a, 0x97, 0x15, 0xdf, 0x95, 0x26, 0xde, + 0x9a, 0x0b, 0x8d, 0xbc, 0xc3, 0xa2, 0x23, 0x4c, 0xd8, 0x35, 0x61, 0x5f, + 0x5d, 0xfe, 0x78, 0x23, 0x92, 0x73, 0x55, 0xf5, 0x69, 0xec, 0x6f, 0x02, +}; +static const unsigned char kat2679_entropyinreseed[] = { + 0xef, 0x8a, 0x01, 0x37, 0x01, 0x3b, 0xe2, 0x12, 0x40, 0x2e, 0x42, 0xb2, + 0x8c, 0x03, 0xed, 0x64, 0x20, 0x88, 0x1a, 0xa3, 0x8b, 0x3a, 0x3e, 0x6e, + 0x90, 0xa8, 0x61, 0x11, 0x65, 0x16, 0xdf, 0x1e, 0xf7, 0x32, 0xa1, 0x9e, + 0x89, 0x35, 0xff, 0xcd, 0x9b, 0xe7, 0xa2, 0xfc, 0x23, 0x67, 0x83, 0xb7, +}; +static const unsigned char kat2679_addinreseed[] = {0}; +static const unsigned char kat2679_addin0[] = {0}; +static const unsigned char kat2679_addin1[] = {0}; +static const unsigned char kat2679_retbits[] = { + 0x29, 0xf8, 0x1e, 0xcf, 0x3f, 0x41, 0xd2, 0x78, 0xc0, 0x1b, 0xba, 0x9a, + 0xf9, 0xbc, 0x0f, 0xe6, 0x00, 0x95, 0x39, 0x68, 0x2f, 0x46, 0x72, 0x3c, + 0xe5, 0xb0, 0xff, 0x75, 0xfe, 0xd2, 0x17, 0xad, 0x71, 0x58, 0x0b, 0x5d, + 0xac, 0x46, 0x28, 0x9e, 0x32, 0x4d, 0x82, 0x40, 0x94, 0xc3, 0x32, 0xc3, + 0x95, 0x5c, 0x52, 0x82, 0x57, 0x70, 0x1a, 0x14, 0xec, 0x2b, 0xfe, 0xcc, + 0xe4, 0xf6, 0x2a, 0x6c, +}; +static const struct drbg_kat_pr_false kat2679_t = { + 8, kat2679_entropyin, kat2679_nonce, kat2679_persstr, + kat2679_entropyinreseed, kat2679_addinreseed, kat2679_addin0, + kat2679_addin1, kat2679_retbits +}; +static const struct drbg_kat kat2679 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2679_t +}; + +static const unsigned char kat2680_entropyin[] = { + 0x0c, 0x84, 0x1a, 0x24, 0x5a, 0x19, 0x29, 0x52, 0x81, 0x16, 0x3b, 0x07, + 0x54, 0x15, 0x90, 0x37, 0x6d, 0x31, 0xd8, 0x6a, 0x9b, 0xe9, 0x9e, 0x66, + 0xcc, 0x22, 0x35, 0x2d, 0xab, 0xb2, 0x9f, 0x95, 0xe1, 0x13, 0xee, 0x23, + 0x3d, 0x74, 0xd3, 0xf2, 0xb7, 0xf2, 0xf6, 0x08, 0x83, 0x05, 0x25, 0xf0, +}; +static const unsigned char kat2680_nonce[] = {0}; +static const unsigned char kat2680_persstr[] = { + 0x28, 0xd3, 0x58, 0x10, 0x54, 0xd8, 0x7f, 0x15, 0x3a, 0xee, 0x12, 0xed, + 0xca, 0x47, 0xba, 0xd8, 0x0b, 0xfc, 0x9b, 0x06, 0x6a, 0xd1, 0xe8, 0xb9, + 0xd9, 0x6c, 0x85, 0x1d, 0xc7, 0xb8, 0xed, 0x76, 0x8c, 0xad, 0x00, 0x7b, + 0x89, 0x1d, 0x1c, 0x94, 0x47, 0xd4, 0x30, 0x65, 0xb4, 0x83, 0xd0, 0x85, +}; +static const unsigned char kat2680_entropyinreseed[] = { + 0x58, 0x7a, 0x1d, 0xae, 0x75, 0xc2, 0xa1, 0xf2, 0xde, 0xa7, 0xfb, 0x42, + 0xef, 0x7b, 0xf3, 0x86, 0x46, 0xb7, 0x6a, 0x96, 0x4e, 0xcd, 0x70, 0x43, + 0xd8, 0xb6, 0x2f, 0xdd, 0x9e, 0x6a, 0x5c, 0x00, 0x78, 0x82, 0xf0, 0x2f, + 0x78, 0xfd, 0x04, 0x05, 0x61, 0xd1, 0x5a, 0x33, 0x7e, 0x59, 0xf2, 0x57, +}; +static const unsigned char kat2680_addinreseed[] = {0}; +static const unsigned char kat2680_addin0[] = {0}; +static const unsigned char kat2680_addin1[] = {0}; +static const unsigned char kat2680_retbits[] = { + 0xba, 0x7b, 0xce, 0x08, 0x09, 0x63, 0xfe, 0x2b, 0x4e, 0x8f, 0x0e, 0x1a, + 0xa7, 0x00, 0xe9, 0x2b, 0x39, 0x08, 0xe1, 0x8d, 0xc7, 0x87, 0x28, 0x66, + 0x69, 0x04, 0xb0, 0x22, 0x0e, 0x40, 0x77, 0xfe, 0xf2, 0xcd, 0x18, 0xbb, + 0xea, 0x29, 0xa2, 0x75, 0x5a, 0x34, 0x99, 0x79, 0x8c, 0xca, 0x44, 0x5b, + 0xb7, 0x52, 0x69, 0xa5, 0xad, 0xca, 0x2f, 0x29, 0x1d, 0xd3, 0x87, 0x54, + 0x57, 0xc6, 0x9a, 0x89, +}; +static const struct drbg_kat_pr_false kat2680_t = { + 9, kat2680_entropyin, kat2680_nonce, kat2680_persstr, + kat2680_entropyinreseed, kat2680_addinreseed, kat2680_addin0, + kat2680_addin1, kat2680_retbits +}; +static const struct drbg_kat kat2680 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2680_t +}; + +static const unsigned char kat2681_entropyin[] = { + 0xf4, 0xaf, 0xdd, 0xab, 0xe5, 0x15, 0xca, 0x3e, 0x77, 0x67, 0x30, 0xe7, + 0xd4, 0x44, 0x61, 0xb2, 0x7e, 0x8f, 0x72, 0x40, 0x7c, 0xa3, 0x98, 0xd3, + 0xfb, 0x57, 0x83, 0x65, 0xe0, 0x9e, 0xa8, 0xc2, 0x4d, 0x6c, 0x4b, 0x09, + 0x72, 0x49, 0x07, 0xa6, 0x10, 0xd7, 0x55, 0x40, 0x7d, 0x38, 0x66, 0x7f, +}; +static const unsigned char kat2681_nonce[] = {0}; +static const unsigned char kat2681_persstr[] = { + 0x84, 0x6b, 0xcb, 0xc7, 0x01, 0x4c, 0xa8, 0xc6, 0xfb, 0x04, 0x2a, 0x80, + 0xd4, 0xa8, 0xc3, 0xaa, 0x50, 0xb6, 0xc5, 0xef, 0xf1, 0x5e, 0x4b, 0x12, + 0xf9, 0x66, 0xab, 0x17, 0xe6, 0x51, 0x4c, 0xbb, 0x22, 0xfb, 0x2e, 0xed, + 0x62, 0x8e, 0xe5, 0xc2, 0xa8, 0xac, 0xde, 0x82, 0x1a, 0x95, 0x60, 0x78, +}; +static const unsigned char kat2681_entropyinreseed[] = { + 0xb2, 0xae, 0xab, 0x11, 0x65, 0xb1, 0x50, 0x90, 0x8c, 0x9b, 0xb5, 0x2c, + 0x2b, 0x71, 0x67, 0xc1, 0x49, 0xea, 0x4f, 0xb4, 0x71, 0x0e, 0xdc, 0x8a, + 0xcf, 0xbc, 0x63, 0xf7, 0x65, 0x2b, 0xb5, 0x52, 0xd6, 0x36, 0xa7, 0xe6, + 0xfc, 0x3d, 0x1e, 0x74, 0xd3, 0xf6, 0x54, 0x61, 0xba, 0xaa, 0xc0, 0x87, +}; +static const unsigned char kat2681_addinreseed[] = {0}; +static const unsigned char kat2681_addin0[] = {0}; +static const unsigned char kat2681_addin1[] = {0}; +static const unsigned char kat2681_retbits[] = { + 0x2a, 0x03, 0x35, 0xc3, 0xca, 0xee, 0xec, 0x7c, 0x79, 0x7f, 0x99, 0xfb, + 0xc1, 0x45, 0x65, 0x4d, 0x39, 0x85, 0xc3, 0xc7, 0x10, 0x25, 0xc8, 0xe4, + 0xbd, 0x4b, 0x09, 0x88, 0x01, 0xf1, 0x5d, 0x21, 0xc2, 0x72, 0x42, 0x04, + 0x17, 0xd8, 0x05, 0xb0, 0xad, 0x1c, 0xe6, 0x8f, 0x90, 0x45, 0x02, 0xa4, + 0x61, 0x30, 0x24, 0x63, 0x15, 0x95, 0x7b, 0xc0, 0x7a, 0x5d, 0xb4, 0xf3, + 0x44, 0x7a, 0x84, 0xe7, +}; +static const struct drbg_kat_pr_false kat2681_t = { + 10, kat2681_entropyin, kat2681_nonce, kat2681_persstr, + kat2681_entropyinreseed, kat2681_addinreseed, kat2681_addin0, + kat2681_addin1, kat2681_retbits +}; +static const struct drbg_kat kat2681 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2681_t +}; + +static const unsigned char kat2682_entropyin[] = { + 0x69, 0x42, 0x41, 0x3e, 0x05, 0xac, 0x48, 0x7c, 0xf5, 0x39, 0xbc, 0x61, + 0xaa, 0x68, 0x66, 0xef, 0x8c, 0xbd, 0x9d, 0x0f, 0x15, 0xe1, 0x38, 0x5f, + 0x37, 0xbb, 0xa5, 0xa9, 0x51, 0xa2, 0x9f, 0xc9, 0x56, 0xd4, 0x6f, 0x87, + 0x40, 0x60, 0x3a, 0xf7, 0xc7, 0x18, 0x00, 0x04, 0x8c, 0x83, 0x12, 0xad, +}; +static const unsigned char kat2682_nonce[] = {0}; +static const unsigned char kat2682_persstr[] = { + 0x47, 0xeb, 0xb1, 0x6c, 0x24, 0xbc, 0x17, 0xad, 0x17, 0x9e, 0x67, 0x30, + 0x40, 0x75, 0x26, 0x18, 0x7c, 0xf9, 0x33, 0x2c, 0x17, 0x2a, 0xe5, 0x60, + 0x37, 0xae, 0xe4, 0x71, 0xa0, 0xdc, 0xfa, 0x76, 0x6f, 0xe5, 0x18, 0x08, + 0xc0, 0xa4, 0x7f, 0xd0, 0x6b, 0x9e, 0x34, 0xbd, 0xed, 0x00, 0x6c, 0x8b, +}; +static const unsigned char kat2682_entropyinreseed[] = { + 0xd8, 0x27, 0x5a, 0xd1, 0x54, 0x5b, 0xc2, 0x4e, 0x77, 0x21, 0x3c, 0xe1, + 0xdf, 0xa4, 0x80, 0xd3, 0xb7, 0xa5, 0x6a, 0x2d, 0x5f, 0x26, 0xc1, 0xab, + 0x34, 0x5f, 0x9f, 0x0a, 0xc7, 0x12, 0xad, 0x00, 0x4b, 0x0f, 0x6f, 0x03, + 0x3b, 0x60, 0x14, 0xc0, 0xf7, 0x80, 0x69, 0xf9, 0x28, 0x40, 0xf6, 0x2b, +}; +static const unsigned char kat2682_addinreseed[] = {0}; +static const unsigned char kat2682_addin0[] = {0}; +static const unsigned char kat2682_addin1[] = {0}; +static const unsigned char kat2682_retbits[] = { + 0x1b, 0x74, 0xcf, 0xa6, 0x34, 0x4d, 0x29, 0x4e, 0xc3, 0xac, 0x80, 0x02, + 0xc5, 0x10, 0xb8, 0x6c, 0x0b, 0x45, 0x9c, 0xf7, 0x82, 0x3a, 0xeb, 0x05, + 0x33, 0x6a, 0x20, 0xc1, 0x35, 0x5a, 0x31, 0x93, 0x96, 0x6f, 0xdc, 0x8b, + 0xa8, 0xf7, 0xcc, 0x13, 0x71, 0xc9, 0xc7, 0x0a, 0x9f, 0x7f, 0xf5, 0x53, + 0xc4, 0xc6, 0xda, 0xdf, 0x23, 0xf2, 0xcb, 0x08, 0xe4, 0x04, 0x0a, 0xf5, + 0x1f, 0x17, 0x2a, 0xc0, +}; +static const struct drbg_kat_pr_false kat2682_t = { + 11, kat2682_entropyin, kat2682_nonce, kat2682_persstr, + kat2682_entropyinreseed, kat2682_addinreseed, kat2682_addin0, + kat2682_addin1, kat2682_retbits +}; +static const struct drbg_kat kat2682 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2682_t +}; + +static const unsigned char kat2683_entropyin[] = { + 0x9c, 0x14, 0x64, 0x6d, 0x10, 0x47, 0x85, 0x54, 0x6c, 0x4c, 0xf4, 0x73, + 0x96, 0xff, 0x1c, 0xcd, 0xd2, 0x6c, 0xc0, 0xcd, 0xe8, 0xc2, 0x0b, 0x5a, + 0xa6, 0x4a, 0xa0, 0xba, 0xea, 0xe8, 0x7b, 0x58, 0xf3, 0x48, 0x91, 0x40, + 0x81, 0xa1, 0xb3, 0x1d, 0x9a, 0xe0, 0x83, 0xa0, 0xb3, 0x58, 0x8a, 0xa2, +}; +static const unsigned char kat2683_nonce[] = {0}; +static const unsigned char kat2683_persstr[] = { + 0x24, 0x76, 0xed, 0xda, 0x75, 0x43, 0xed, 0xfd, 0xd3, 0x97, 0x0a, 0xe9, + 0xb2, 0x79, 0x24, 0x42, 0x49, 0x55, 0xb9, 0x58, 0x80, 0x11, 0xbf, 0x7e, + 0xab, 0xd9, 0x64, 0x56, 0xff, 0xff, 0xc4, 0xc9, 0xa0, 0x8e, 0x6b, 0x81, + 0x4b, 0x7d, 0xa3, 0x2d, 0x68, 0x0c, 0x25, 0x75, 0xf9, 0xb8, 0x9e, 0x66, +}; +static const unsigned char kat2683_entropyinreseed[] = { + 0x04, 0x15, 0x41, 0x28, 0x28, 0x48, 0x36, 0x62, 0x1b, 0xbe, 0x44, 0x51, + 0x48, 0xf7, 0x1e, 0x60, 0xdd, 0x84, 0x21, 0x32, 0x7a, 0x0f, 0xbf, 0x7f, + 0xce, 0x07, 0xd6, 0xf4, 0x0a, 0x88, 0xcf, 0x09, 0x8d, 0x4f, 0x77, 0x5f, + 0xb7, 0x81, 0x55, 0xe7, 0xe9, 0x09, 0x5a, 0x1f, 0x63, 0x5d, 0x26, 0x5f, +}; +static const unsigned char kat2683_addinreseed[] = {0}; +static const unsigned char kat2683_addin0[] = {0}; +static const unsigned char kat2683_addin1[] = {0}; +static const unsigned char kat2683_retbits[] = { + 0xdf, 0x70, 0xff, 0x84, 0xc4, 0x16, 0x96, 0x4c, 0xec, 0x92, 0x31, 0xc3, + 0x08, 0x65, 0x7f, 0x91, 0x81, 0x24, 0xb7, 0x5a, 0xc9, 0x3e, 0xec, 0x80, + 0x83, 0xe7, 0x6a, 0xca, 0x89, 0xf9, 0x2a, 0x1c, 0x6b, 0x54, 0xdf, 0x39, + 0x77, 0x00, 0x31, 0x75, 0x48, 0x4b, 0xcd, 0x6f, 0xd5, 0xab, 0x5b, 0x4a, + 0x90, 0x2d, 0x77, 0x5c, 0x32, 0xdd, 0xd8, 0xbc, 0xf2, 0x35, 0x9b, 0x66, + 0x0d, 0xf1, 0x69, 0x1f, +}; +static const struct drbg_kat_pr_false kat2683_t = { + 12, kat2683_entropyin, kat2683_nonce, kat2683_persstr, + kat2683_entropyinreseed, kat2683_addinreseed, kat2683_addin0, + kat2683_addin1, kat2683_retbits +}; +static const struct drbg_kat kat2683 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2683_t +}; + +static const unsigned char kat2684_entropyin[] = { + 0xd2, 0x04, 0x64, 0xfa, 0xf4, 0x11, 0xc7, 0xd8, 0x4e, 0x67, 0x3c, 0xdb, + 0x70, 0x58, 0xd0, 0x45, 0x1b, 0xe6, 0x0a, 0x4c, 0x54, 0xb4, 0x19, 0xec, + 0x60, 0xcc, 0xec, 0xa7, 0x57, 0xfb, 0x97, 0xdf, 0xc4, 0xf0, 0xb9, 0x1e, + 0x66, 0xb3, 0x52, 0x95, 0xd6, 0x8e, 0x86, 0x74, 0x63, 0x49, 0x69, 0x44, +}; +static const unsigned char kat2684_nonce[] = {0}; +static const unsigned char kat2684_persstr[] = { + 0xbd, 0xd2, 0x84, 0x25, 0x55, 0xcb, 0x7a, 0x3f, 0xf2, 0xce, 0x27, 0x43, + 0xb6, 0xc7, 0xe3, 0xcb, 0x46, 0x5c, 0xcb, 0xbc, 0x04, 0x4f, 0xc5, 0xc2, + 0xfa, 0xf3, 0x5e, 0xe9, 0x94, 0x13, 0xfd, 0x1f, 0x87, 0x91, 0x57, 0x04, + 0xcb, 0x82, 0xfc, 0xd6, 0x2c, 0x50, 0x0c, 0xf4, 0xfd, 0x5a, 0x43, 0x0c, +}; +static const unsigned char kat2684_entropyinreseed[] = { + 0xce, 0x02, 0xee, 0x2c, 0x64, 0x7d, 0xc9, 0xa4, 0x55, 0x32, 0x2a, 0x14, + 0x2b, 0x92, 0x26, 0xf9, 0x6e, 0xb5, 0x3c, 0x2a, 0x99, 0x51, 0x3a, 0x7a, + 0xb3, 0x49, 0xdb, 0x70, 0x2c, 0xdc, 0x55, 0xc8, 0x81, 0x25, 0xf4, 0xee, + 0x5a, 0xa8, 0x2a, 0x21, 0x47, 0x96, 0xb2, 0xda, 0xe6, 0x20, 0x91, 0x38, +}; +static const unsigned char kat2684_addinreseed[] = {0}; +static const unsigned char kat2684_addin0[] = {0}; +static const unsigned char kat2684_addin1[] = {0}; +static const unsigned char kat2684_retbits[] = { + 0xac, 0xc5, 0xfd, 0x67, 0x2f, 0xa8, 0x3b, 0x2d, 0xaa, 0xe7, 0x03, 0xba, + 0xcf, 0x21, 0x8c, 0x98, 0xac, 0x29, 0xd0, 0x75, 0x1d, 0x9d, 0x5c, 0x9b, + 0x7b, 0xc6, 0x85, 0x82, 0xfb, 0xd5, 0x93, 0xb1, 0xa6, 0x91, 0xac, 0xb1, + 0x25, 0xbe, 0xf3, 0xc2, 0xed, 0xc1, 0x25, 0xf9, 0xb7, 0x3c, 0xa3, 0x39, + 0x19, 0x58, 0xb3, 0xbd, 0xd8, 0x00, 0x7f, 0xc5, 0x04, 0x22, 0xcb, 0xf8, + 0x9b, 0x00, 0xca, 0x05, +}; +static const struct drbg_kat_pr_false kat2684_t = { + 13, kat2684_entropyin, kat2684_nonce, kat2684_persstr, + kat2684_entropyinreseed, kat2684_addinreseed, kat2684_addin0, + kat2684_addin1, kat2684_retbits +}; +static const struct drbg_kat kat2684 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2684_t +}; + +static const unsigned char kat2685_entropyin[] = { + 0x44, 0x92, 0x7d, 0x98, 0xe9, 0xc2, 0x75, 0xad, 0x4d, 0x07, 0xbd, 0xa6, + 0xb4, 0xc6, 0x2b, 0x29, 0xfe, 0x56, 0x29, 0x27, 0xfb, 0x1e, 0xe7, 0x18, + 0x47, 0x3b, 0x3c, 0x74, 0xb9, 0xb2, 0x18, 0x9a, 0x13, 0x3c, 0x11, 0xae, + 0xc3, 0x60, 0x7d, 0x39, 0xd6, 0x23, 0xef, 0x35, 0x09, 0x6a, 0x05, 0x5f, +}; +static const unsigned char kat2685_nonce[] = {0}; +static const unsigned char kat2685_persstr[] = { + 0x8c, 0x40, 0xc5, 0x31, 0x7f, 0x29, 0xb6, 0x4d, 0xa7, 0xf4, 0x02, 0x5c, + 0xda, 0x90, 0xae, 0x3e, 0x99, 0xba, 0x1e, 0xd3, 0x50, 0x48, 0x20, 0x48, + 0xf8, 0x41, 0x1a, 0xf8, 0xb6, 0x94, 0xa9, 0x92, 0x72, 0x62, 0x50, 0x31, + 0x71, 0x6c, 0x09, 0x0f, 0x68, 0xc0, 0xfd, 0xdc, 0x7a, 0x70, 0x1e, 0x0d, +}; +static const unsigned char kat2685_entropyinreseed[] = { + 0xcb, 0x79, 0x33, 0xc3, 0xc8, 0x03, 0x64, 0x4d, 0x4a, 0xb7, 0xc3, 0x5b, + 0x94, 0x13, 0x19, 0xbe, 0xbf, 0x67, 0x84, 0xf9, 0x8c, 0x04, 0x75, 0x4c, + 0x69, 0x35, 0x9e, 0x10, 0xc9, 0x69, 0x3b, 0x57, 0xae, 0x12, 0xe3, 0x8b, + 0x08, 0xca, 0x8a, 0x9f, 0x0f, 0x15, 0x14, 0x2c, 0x44, 0x76, 0xf0, 0xbc, +}; +static const unsigned char kat2685_addinreseed[] = {0}; +static const unsigned char kat2685_addin0[] = {0}; +static const unsigned char kat2685_addin1[] = {0}; +static const unsigned char kat2685_retbits[] = { + 0xe9, 0x5d, 0x37, 0x5c, 0x7b, 0x33, 0x54, 0x19, 0x07, 0x21, 0xd5, 0x98, + 0xe8, 0xfd, 0xe7, 0xae, 0xf1, 0x6f, 0xb2, 0xa9, 0xdc, 0x96, 0x3e, 0xd7, + 0x6e, 0xef, 0x6a, 0x12, 0xab, 0xe2, 0x00, 0x16, 0x22, 0x72, 0x5a, 0x8e, + 0x15, 0x45, 0xc7, 0x3c, 0x9a, 0x85, 0x99, 0x5e, 0x6b, 0x07, 0x80, 0x6e, + 0x2a, 0xc3, 0x9b, 0x17, 0x9b, 0x59, 0x5b, 0xcf, 0xd9, 0x6b, 0x21, 0x89, + 0xb5, 0xd1, 0x04, 0x97, +}; +static const struct drbg_kat_pr_false kat2685_t = { + 14, kat2685_entropyin, kat2685_nonce, kat2685_persstr, + kat2685_entropyinreseed, kat2685_addinreseed, kat2685_addin0, + kat2685_addin1, kat2685_retbits +}; +static const struct drbg_kat kat2685 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2685_t +}; + +static const unsigned char kat2686_entropyin[] = { + 0xae, 0x7e, 0xbe, 0x06, 0x29, 0x71, 0xf5, 0xeb, 0x32, 0xe5, 0xb2, 0x14, + 0x44, 0x75, 0x07, 0x85, 0xde, 0x81, 0x65, 0x95, 0xad, 0x2c, 0xbe, 0x80, + 0xa2, 0x09, 0xc8, 0xf8, 0xab, 0x04, 0xb5, 0x46, 0x81, 0x66, 0xde, 0x8c, + 0x6a, 0xe5, 0x22, 0xd8, 0xf1, 0x0b, 0x56, 0x38, 0x6a, 0x3b, 0x42, 0x4f, +}; +static const unsigned char kat2686_nonce[] = {0}; +static const unsigned char kat2686_persstr[] = { + 0x55, 0x86, 0x0d, 0xae, 0x57, 0xfc, 0xac, 0x29, 0x70, 0x87, 0xc1, 0x37, + 0xef, 0xb7, 0x96, 0x87, 0x8a, 0x75, 0x86, 0x8f, 0x6e, 0x76, 0x81, 0x11, + 0x4e, 0x9b, 0x73, 0xed, 0x0c, 0x67, 0xe3, 0xc6, 0x2b, 0xfc, 0x9f, 0x5d, + 0x77, 0xe8, 0xca, 0xa5, 0x9b, 0xcd, 0xb2, 0x23, 0xf4, 0xff, 0xd2, 0x47, +}; +static const unsigned char kat2686_entropyinreseed[] = { + 0xa4, 0x24, 0x07, 0x93, 0x1b, 0xfe, 0xca, 0x70, 0xe6, 0xee, 0x5d, 0xd1, + 0x97, 0x02, 0x1a, 0x12, 0x95, 0x25, 0x05, 0x1c, 0x07, 0x46, 0x8e, 0x8b, + 0x25, 0x58, 0x7c, 0x5a, 0xd5, 0x0a, 0xbe, 0x92, 0x04, 0xe8, 0x82, 0xfe, + 0x84, 0x7b, 0x8f, 0xd4, 0x7c, 0xf7, 0xb4, 0x36, 0x0e, 0x5a, 0xa0, 0x34, +}; +static const unsigned char kat2686_addinreseed[] = { + 0xee, 0x4c, 0x88, 0xd1, 0xeb, 0x05, 0xf4, 0x85, 0x36, 0x63, 0xea, 0xda, + 0x50, 0x1d, 0x2f, 0xc4, 0xb4, 0x98, 0x4b, 0x28, 0x3a, 0x88, 0xdb, 0x57, + 0x9a, 0xf2, 0x11, 0x30, 0x31, 0xe0, 0x3d, 0x9b, 0xc5, 0x70, 0xde, 0x94, + 0x3d, 0xd1, 0x68, 0x91, 0x8f, 0x3b, 0xa8, 0x06, 0x55, 0x81, 0xfe, 0xa7, +}; +static const unsigned char kat2686_addin0[] = { + 0x4b, 0x4b, 0x03, 0xef, 0x19, 0xb0, 0xf2, 0x59, 0xdc, 0xa2, 0xb3, 0xee, + 0x3a, 0xe4, 0xcd, 0x86, 0xc3, 0x89, 0x5a, 0x78, 0x4b, 0x3d, 0x8e, 0xee, + 0x04, 0x3a, 0x20, 0x03, 0xc0, 0x82, 0x89, 0xf8, 0xff, 0xfd, 0xad, 0x14, + 0x1e, 0x6b, 0x1a, 0xb2, 0x17, 0x4d, 0x8d, 0x5d, 0x79, 0xc1, 0xe5, 0x81, +}; +static const unsigned char kat2686_addin1[] = { + 0x30, 0x62, 0xb3, 0x3f, 0x11, 0x6b, 0x46, 0xe2, 0x0f, 0xe3, 0xc3, 0x54, + 0x72, 0x6a, 0xe9, 0xb2, 0xa3, 0xa4, 0xc5, 0x19, 0x22, 0xc8, 0x10, 0x78, + 0x63, 0xcb, 0x86, 0xf1, 0xf0, 0xbd, 0xad, 0x75, 0x54, 0x07, 0x56, 0x59, + 0xd9, 0x1c, 0x37, 0x1e, 0x2b, 0x11, 0xb1, 0xe8, 0x10, 0x6a, 0x1e, 0xd5, +}; +static const unsigned char kat2686_retbits[] = { + 0x0d, 0x27, 0x05, 0x18, 0xba, 0xea, 0xfa, 0xc1, 0x60, 0xff, 0x1c, 0xb2, + 0x8c, 0x11, 0xef, 0x68, 0x71, 0x2c, 0x76, 0x4c, 0x0c, 0x01, 0x67, 0x4e, + 0x6c, 0x9c, 0xa2, 0xcc, 0x9c, 0x7e, 0x0e, 0x8a, 0xcc, 0xfd, 0x3c, 0x75, + 0x36, 0x35, 0xee, 0x07, 0x00, 0x81, 0xee, 0xe7, 0x62, 0x8a, 0xf6, 0x18, + 0x7f, 0xbc, 0x28, 0x54, 0xb3, 0xc2, 0x04, 0x46, 0x1a, 0x79, 0x6c, 0xf3, + 0xf3, 0xfc, 0xb0, 0x92, +}; +static const struct drbg_kat_pr_false kat2686_t = { + 0, kat2686_entropyin, kat2686_nonce, kat2686_persstr, + kat2686_entropyinreseed, kat2686_addinreseed, kat2686_addin0, + kat2686_addin1, kat2686_retbits +}; +static const struct drbg_kat kat2686 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2686_t +}; + +static const unsigned char kat2687_entropyin[] = { + 0xcc, 0x1f, 0x1e, 0x4f, 0x22, 0xc7, 0xd7, 0x8b, 0xc7, 0xa4, 0x59, 0x83, + 0x45, 0x22, 0xe8, 0x5a, 0x09, 0xbb, 0xf6, 0xcd, 0xdc, 0xd3, 0x73, 0x7e, + 0xf9, 0x8f, 0xf0, 0xde, 0x95, 0x0b, 0xf2, 0x89, 0x9f, 0x6c, 0x27, 0xb5, + 0x5a, 0x05, 0x0b, 0xaa, 0xb0, 0x30, 0x2c, 0x01, 0x44, 0xc4, 0x32, 0xf4, +}; +static const unsigned char kat2687_nonce[] = {0}; +static const unsigned char kat2687_persstr[] = { + 0x49, 0xd8, 0x95, 0xca, 0x0d, 0xb6, 0x83, 0x7a, 0xf2, 0xfa, 0xa6, 0x50, + 0x88, 0x44, 0x75, 0xe8, 0x00, 0xe7, 0x20, 0x05, 0x36, 0x5d, 0xd8, 0xc9, + 0x7a, 0xc5, 0x5b, 0xbb, 0x82, 0x4c, 0x42, 0x09, 0x90, 0x3b, 0xa4, 0x40, + 0xb0, 0x12, 0x9c, 0x9e, 0xfc, 0x42, 0x0b, 0x4d, 0xd7, 0x4e, 0x56, 0xcb, +}; +static const unsigned char kat2687_entropyinreseed[] = { + 0x00, 0x1c, 0xdf, 0x14, 0x83, 0xbf, 0x3f, 0xa1, 0x7d, 0xca, 0xb3, 0x0e, + 0x40, 0xfa, 0x90, 0x0a, 0x4d, 0xdd, 0x78, 0x01, 0x2a, 0x62, 0xc6, 0x9d, + 0x84, 0x7c, 0x51, 0x09, 0x0e, 0x08, 0x98, 0xf1, 0x5f, 0x9a, 0x3e, 0x7e, + 0xfd, 0x5f, 0x5f, 0xbf, 0x38, 0x0c, 0x95, 0x79, 0x1d, 0xb9, 0xfc, 0xce, +}; +static const unsigned char kat2687_addinreseed[] = { + 0xf8, 0x7d, 0x37, 0x59, 0x9c, 0xc7, 0x94, 0x60, 0x55, 0x4a, 0xff, 0xb5, + 0x32, 0xdf, 0xad, 0x33, 0x93, 0xa3, 0xf9, 0x25, 0xcc, 0x11, 0x9e, 0xc3, + 0xc7, 0xfe, 0xf1, 0x78, 0xb4, 0x9a, 0xdc, 0x83, 0x8a, 0x38, 0xf3, 0x95, + 0x09, 0x1a, 0xdd, 0x5e, 0x78, 0xa9, 0x73, 0x3b, 0x38, 0x34, 0x71, 0x68, +}; +static const unsigned char kat2687_addin0[] = { + 0x9f, 0x0d, 0xb4, 0x8e, 0x5a, 0x14, 0x85, 0x70, 0xd1, 0x52, 0x32, 0xf5, + 0x68, 0x21, 0x62, 0x16, 0xeb, 0xa4, 0xfc, 0xcc, 0x1c, 0x52, 0xa1, 0xe7, + 0x3f, 0x19, 0x7a, 0x5e, 0x16, 0x25, 0xe4, 0x5d, 0xa8, 0x36, 0x9b, 0xb2, + 0x9a, 0xfc, 0xdb, 0xb6, 0xcb, 0x31, 0x88, 0xa9, 0x00, 0x4b, 0xb4, 0x7b, +}; +static const unsigned char kat2687_addin1[] = { + 0xe7, 0xbb, 0x50, 0x5a, 0x81, 0x96, 0x42, 0x8f, 0xaa, 0x5c, 0x40, 0xc6, + 0xdd, 0x9b, 0x87, 0x40, 0xc2, 0x46, 0x9e, 0xa5, 0xeb, 0xa1, 0xb5, 0x07, + 0x22, 0x78, 0x33, 0xa1, 0x6e, 0x96, 0xfb, 0x2e, 0x8d, 0x2e, 0xb2, 0x27, + 0x36, 0x8c, 0x81, 0x7c, 0xcf, 0x3c, 0xe7, 0x85, 0xed, 0x32, 0x75, 0xf0, +}; +static const unsigned char kat2687_retbits[] = { + 0xa3, 0xec, 0xa2, 0xad, 0xeb, 0x14, 0xd3, 0x06, 0xdf, 0x13, 0x9f, 0x28, + 0x06, 0x04, 0x98, 0x02, 0x07, 0x22, 0x9f, 0x7d, 0x72, 0x80, 0x6e, 0x9e, + 0x2f, 0x7b, 0x91, 0x60, 0x78, 0xde, 0x0e, 0x09, 0xf1, 0xa7, 0xb2, 0xca, + 0xc4, 0x1b, 0xf0, 0x18, 0x12, 0xbf, 0x80, 0xc1, 0xb1, 0x3c, 0xd2, 0x27, + 0x44, 0xad, 0xce, 0x23, 0xe1, 0xe2, 0x00, 0x01, 0x46, 0xc6, 0x23, 0x6f, + 0xb6, 0x7a, 0x92, 0x3c, +}; +static const struct drbg_kat_pr_false kat2687_t = { + 1, kat2687_entropyin, kat2687_nonce, kat2687_persstr, + kat2687_entropyinreseed, kat2687_addinreseed, kat2687_addin0, + kat2687_addin1, kat2687_retbits +}; +static const struct drbg_kat kat2687 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2687_t +}; + +static const unsigned char kat2688_entropyin[] = { + 0xe4, 0x39, 0x43, 0xdf, 0x12, 0xf8, 0x99, 0xfe, 0x7f, 0xbe, 0x1e, 0x65, + 0x7d, 0x1b, 0x3d, 0x22, 0xf6, 0x37, 0x1b, 0x96, 0xe0, 0x7a, 0xc8, 0x9a, + 0x82, 0xc1, 0x56, 0xc1, 0xe2, 0x8b, 0xf3, 0x39, 0x22, 0xf8, 0xd1, 0x31, + 0x6d, 0x52, 0x4c, 0xdc, 0xb9, 0xaf, 0x34, 0x9c, 0x14, 0xfa, 0x23, 0x08, +}; +static const unsigned char kat2688_nonce[] = {0}; +static const unsigned char kat2688_persstr[] = { + 0x0e, 0x2c, 0x55, 0xb0, 0x23, 0xd4, 0x53, 0x61, 0xc4, 0xe7, 0xc5, 0x0a, + 0xad, 0x6b, 0x0b, 0x97, 0xa1, 0x9f, 0xe7, 0x03, 0x66, 0x1c, 0xbc, 0xe3, + 0xa7, 0x4d, 0x29, 0xf1, 0x31, 0x9f, 0x04, 0x8d, 0xdf, 0x00, 0xe0, 0x1b, + 0x66, 0x17, 0xa3, 0xab, 0x64, 0x3c, 0x1c, 0x6e, 0x39, 0xd7, 0x42, 0x0e, +}; +static const unsigned char kat2688_entropyinreseed[] = { + 0x35, 0xb7, 0xf4, 0x79, 0x07, 0x12, 0x71, 0xb6, 0x1d, 0x07, 0x5b, 0x0c, + 0x0b, 0xe3, 0xe0, 0xd1, 0x0c, 0xff, 0x77, 0xd9, 0x75, 0x49, 0x2a, 0x93, + 0xa5, 0x3c, 0xac, 0x28, 0xc5, 0xdd, 0x6e, 0x9f, 0xfd, 0x39, 0x0a, 0x1e, + 0x65, 0x1f, 0x0b, 0xb3, 0xee, 0x68, 0x8b, 0x77, 0xb8, 0x20, 0x35, 0x53, +}; +static const unsigned char kat2688_addinreseed[] = { + 0x45, 0x04, 0x5c, 0x97, 0xd7, 0x11, 0x8f, 0x75, 0x42, 0x9c, 0x14, 0x26, + 0xa4, 0xe1, 0x6a, 0x43, 0x59, 0x88, 0xe3, 0x34, 0xe4, 0xe0, 0x66, 0xbd, + 0x8e, 0x2f, 0xdb, 0x8b, 0xfc, 0xfc, 0x78, 0x3e, 0x32, 0xf7, 0xce, 0x81, + 0x97, 0x29, 0x26, 0xb3, 0xe1, 0xb4, 0x2e, 0x5b, 0x7d, 0xfe, 0x8e, 0xb9, +}; +static const unsigned char kat2688_addin0[] = { + 0x56, 0xbf, 0xee, 0x26, 0x28, 0x51, 0x52, 0xa1, 0x14, 0x83, 0xf7, 0xae, + 0x95, 0x1c, 0xae, 0x3b, 0x80, 0xeb, 0x11, 0xa1, 0x3a, 0x13, 0x70, 0xfd, + 0x10, 0xd6, 0xa5, 0xe2, 0x59, 0xd8, 0x4b, 0xac, 0x37, 0xaa, 0x2c, 0xbb, + 0x3c, 0x75, 0x77, 0xf3, 0x92, 0xd3, 0x18, 0x76, 0xc3, 0xea, 0x10, 0x51, +}; +static const unsigned char kat2688_addin1[] = { + 0x8f, 0xf6, 0x9a, 0xcb, 0x96, 0x8b, 0x1b, 0xc3, 0xbe, 0xbb, 0x71, 0xfa, + 0xc8, 0x20, 0xb0, 0xed, 0x44, 0x51, 0x30, 0x22, 0xa3, 0x0a, 0xf4, 0x64, + 0x65, 0xdb, 0xd0, 0x28, 0x5a, 0xab, 0xf1, 0xc5, 0x1f, 0x9d, 0x80, 0xac, + 0xeb, 0xd3, 0x46, 0x79, 0x89, 0xdd, 0xdc, 0x9b, 0xa3, 0xc1, 0xc4, 0x91, +}; +static const unsigned char kat2688_retbits[] = { + 0x1e, 0x77, 0xb4, 0xcc, 0xd6, 0x1c, 0x11, 0x73, 0x2f, 0x2c, 0x6f, 0x0f, + 0x06, 0x0e, 0x0f, 0xd0, 0x3c, 0x9e, 0x17, 0x34, 0xc1, 0xea, 0x1e, 0xc9, + 0x80, 0x49, 0x0a, 0x1d, 0x9f, 0x5b, 0x00, 0x36, 0x29, 0xaa, 0xaf, 0x05, + 0x40, 0x52, 0x07, 0x39, 0x47, 0x65, 0xba, 0x42, 0x09, 0x94, 0xea, 0x69, + 0x4f, 0xfb, 0x3f, 0xb1, 0xe5, 0xd1, 0x19, 0x4f, 0x5e, 0x2c, 0xea, 0xfa, + 0x3f, 0xc4, 0xe3, 0xbd, +}; +static const struct drbg_kat_pr_false kat2688_t = { + 2, kat2688_entropyin, kat2688_nonce, kat2688_persstr, + kat2688_entropyinreseed, kat2688_addinreseed, kat2688_addin0, + kat2688_addin1, kat2688_retbits +}; +static const struct drbg_kat kat2688 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2688_t +}; + +static const unsigned char kat2689_entropyin[] = { + 0x0d, 0x94, 0xc5, 0x62, 0x43, 0x52, 0xe4, 0x4f, 0x84, 0x26, 0xc7, 0x7a, + 0x96, 0xaa, 0xe9, 0x40, 0x94, 0xad, 0x14, 0x98, 0xc4, 0x3a, 0x50, 0x11, + 0x21, 0xf7, 0x78, 0x8a, 0x35, 0x6b, 0x1b, 0x02, 0xa1, 0x6a, 0xbc, 0x92, + 0x48, 0x37, 0x5a, 0x99, 0x74, 0xeb, 0x7b, 0x3c, 0xaf, 0x3c, 0xb3, 0x09, +}; +static const unsigned char kat2689_nonce[] = {0}; +static const unsigned char kat2689_persstr[] = { + 0xb6, 0x65, 0xeb, 0x6b, 0x67, 0xf2, 0x13, 0x96, 0x8a, 0x35, 0xb2, 0xc0, + 0x06, 0xec, 0x99, 0xa4, 0xfd, 0x93, 0x5c, 0x79, 0xbc, 0xf5, 0xa7, 0xe0, + 0x28, 0x67, 0x93, 0xc1, 0x13, 0xed, 0x18, 0xd4, 0x75, 0xe2, 0x90, 0x46, + 0x72, 0xff, 0x70, 0x9a, 0x42, 0x26, 0xf2, 0xab, 0x45, 0x1f, 0x20, 0xd6, +}; +static const unsigned char kat2689_entropyinreseed[] = { + 0x38, 0x47, 0xe8, 0x37, 0x34, 0xd3, 0xba, 0x20, 0xb9, 0x03, 0x6c, 0xed, + 0x96, 0x82, 0x67, 0xc9, 0x19, 0x65, 0xe3, 0xb4, 0xbf, 0x6a, 0x95, 0x29, + 0x8a, 0xea, 0xfc, 0x77, 0x1c, 0xd7, 0x20, 0x40, 0xba, 0x5f, 0xa8, 0xde, + 0x47, 0xe1, 0x70, 0x37, 0x4e, 0xed, 0xea, 0xc3, 0x61, 0x9e, 0x39, 0x70, +}; +static const unsigned char kat2689_addinreseed[] = { + 0x8a, 0xab, 0x05, 0x54, 0xd3, 0x9c, 0x30, 0xdd, 0xbe, 0x84, 0x21, 0xc0, + 0xcb, 0xbd, 0x29, 0x24, 0xe5, 0xc5, 0x84, 0x1e, 0x91, 0x94, 0xdc, 0xb4, + 0x12, 0x97, 0xea, 0x54, 0xab, 0xbc, 0x49, 0x15, 0x3f, 0x10, 0xa7, 0xae, + 0xeb, 0x87, 0x8c, 0x01, 0x65, 0x9f, 0x40, 0x73, 0x12, 0x4b, 0xae, 0x25, +}; +static const unsigned char kat2689_addin0[] = { + 0x4a, 0x6b, 0x0e, 0x63, 0xf6, 0xcb, 0xeb, 0xf0, 0x63, 0x61, 0x45, 0xc9, + 0x42, 0x4a, 0xf0, 0x7d, 0x1b, 0x36, 0x27, 0x6d, 0x21, 0x45, 0x92, 0xf8, + 0x25, 0x96, 0x5c, 0xe8, 0x05, 0x21, 0x96, 0x6a, 0x8a, 0x6a, 0x7d, 0x1a, + 0x58, 0x07, 0x47, 0x72, 0x13, 0x1d, 0x6b, 0x52, 0x8a, 0x74, 0x54, 0xd0, +}; +static const unsigned char kat2689_addin1[] = { + 0x25, 0xcf, 0xf5, 0x5c, 0x77, 0x60, 0x47, 0x58, 0x35, 0x86, 0x90, 0x1c, + 0x1f, 0x73, 0x0d, 0xe3, 0xd8, 0x6f, 0xb9, 0x12, 0xc4, 0x06, 0x94, 0xb0, + 0x92, 0x6c, 0xfb, 0x6e, 0xce, 0x19, 0x96, 0x57, 0x8a, 0xf6, 0xf1, 0x5c, + 0x35, 0xf6, 0xb2, 0xcf, 0x82, 0xad, 0xbd, 0x4b, 0xf6, 0xe0, 0xb3, 0xab, +}; +static const unsigned char kat2689_retbits[] = { + 0xec, 0x7d, 0x74, 0x07, 0x4d, 0x81, 0x83, 0xa0, 0xdf, 0x88, 0x5c, 0x28, + 0xc1, 0x00, 0x1f, 0x80, 0xfe, 0x00, 0x97, 0x75, 0x84, 0xc8, 0x66, 0x7d, + 0xed, 0x0b, 0xd3, 0x63, 0x0f, 0x55, 0x44, 0x89, 0x99, 0x0a, 0x94, 0xab, + 0x40, 0xee, 0x2f, 0x01, 0xd9, 0xfd, 0xb4, 0xe2, 0xd0, 0xf7, 0xbb, 0x0e, + 0x00, 0xd4, 0x1c, 0x6b, 0x6c, 0x56, 0x8a, 0xde, 0x2c, 0x23, 0x94, 0xa2, + 0xb3, 0x2a, 0x1f, 0x14, +}; +static const struct drbg_kat_pr_false kat2689_t = { + 3, kat2689_entropyin, kat2689_nonce, kat2689_persstr, + kat2689_entropyinreseed, kat2689_addinreseed, kat2689_addin0, + kat2689_addin1, kat2689_retbits +}; +static const struct drbg_kat kat2689 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2689_t +}; + +static const unsigned char kat2690_entropyin[] = { + 0x86, 0xb4, 0x43, 0x70, 0x92, 0xcd, 0x13, 0xf4, 0x27, 0x43, 0x1f, 0xf7, + 0xb5, 0x5d, 0x3b, 0x9f, 0xd8, 0x73, 0x26, 0x41, 0x5f, 0xba, 0xcb, 0xd6, + 0x6e, 0xeb, 0x6c, 0x43, 0xa4, 0x90, 0xc0, 0xfe, 0x33, 0x98, 0x83, 0x77, + 0x76, 0x78, 0x8f, 0x67, 0x72, 0x7d, 0x63, 0x2a, 0x60, 0x3b, 0xdf, 0x2a, +}; +static const unsigned char kat2690_nonce[] = {0}; +static const unsigned char kat2690_persstr[] = { + 0xe2, 0x36, 0xba, 0x93, 0x93, 0x70, 0x34, 0xae, 0x24, 0xf1, 0x8f, 0x4e, + 0xbd, 0x13, 0x41, 0x79, 0xa3, 0x5d, 0x25, 0x69, 0xcf, 0x2b, 0xaf, 0x0a, + 0xf4, 0x30, 0x54, 0x7b, 0xc5, 0xe2, 0xec, 0x4f, 0x6d, 0xb3, 0x36, 0xbf, + 0xa8, 0x8d, 0x18, 0x19, 0x70, 0x67, 0x58, 0x75, 0xe5, 0xfb, 0xe1, 0xab, +}; +static const unsigned char kat2690_entropyinreseed[] = { + 0x16, 0x40, 0x84, 0xc7, 0x0f, 0x3b, 0xbb, 0x15, 0x9b, 0x82, 0xf1, 0x3e, + 0xd3, 0xd8, 0x13, 0xfa, 0x7a, 0x07, 0x75, 0x6a, 0x96, 0x03, 0x7b, 0xe0, + 0x6b, 0x55, 0x61, 0x1d, 0x98, 0xfc, 0xe6, 0x09, 0x87, 0x2e, 0x65, 0x50, + 0x7b, 0x99, 0xb5, 0x03, 0xb0, 0x95, 0x9c, 0xad, 0x84, 0x37, 0x2a, 0xa9, +}; +static const unsigned char kat2690_addinreseed[] = { + 0xaa, 0x7e, 0xe7, 0xfe, 0xc7, 0x42, 0x23, 0xdd, 0xa7, 0x30, 0x4e, 0x43, + 0xae, 0xfa, 0x8c, 0xeb, 0x51, 0x44, 0xdb, 0x04, 0xd9, 0x8b, 0x73, 0x92, + 0xab, 0x09, 0x70, 0x05, 0xa3, 0xa1, 0x23, 0x87, 0xee, 0x1b, 0xbe, 0x36, + 0x62, 0xa0, 0xbd, 0x27, 0x78, 0x78, 0x85, 0x5a, 0xc8, 0x92, 0xdc, 0x94, +}; +static const unsigned char kat2690_addin0[] = { + 0xec, 0x19, 0xa5, 0xd7, 0xd6, 0x6a, 0x60, 0x34, 0xef, 0x83, 0xff, 0xdb, + 0x24, 0xac, 0x54, 0xe9, 0xd3, 0xd3, 0x8f, 0x05, 0x17, 0xed, 0x7e, 0xdb, + 0xb9, 0xa3, 0xac, 0xb6, 0x48, 0xe4, 0xc4, 0xb0, 0x2f, 0x97, 0x48, 0x75, + 0xcd, 0x31, 0x49, 0xb3, 0x74, 0x32, 0xae, 0x5d, 0x3b, 0x0d, 0x90, 0xee, +}; +static const unsigned char kat2690_addin1[] = { + 0x98, 0xea, 0x06, 0x24, 0xbf, 0xc9, 0x5d, 0x0c, 0x0f, 0x7b, 0x81, 0x0c, + 0x46, 0x4e, 0xf2, 0x2e, 0x94, 0xc1, 0x23, 0x92, 0xdf, 0x54, 0x14, 0xcf, + 0x6e, 0x62, 0x01, 0xc2, 0xd7, 0xdb, 0x2e, 0x85, 0x70, 0xf0, 0x95, 0x41, + 0x33, 0x4d, 0xb0, 0xf1, 0x35, 0x8b, 0x5c, 0x0f, 0xa2, 0xcf, 0x6d, 0x77, +}; +static const unsigned char kat2690_retbits[] = { + 0xa2, 0x7f, 0xac, 0xdb, 0xdb, 0xf4, 0x9e, 0x64, 0xb5, 0x53, 0x90, 0xbe, + 0xb3, 0x52, 0x60, 0xa0, 0x71, 0x3a, 0xb9, 0x13, 0xd7, 0xe5, 0xa0, 0x8a, + 0xaf, 0x01, 0xe8, 0x3c, 0xc9, 0x45, 0x03, 0xe3, 0x2d, 0x6a, 0x44, 0xa7, + 0x70, 0xf7, 0xa9, 0xef, 0x6d, 0x3a, 0x9f, 0x96, 0xd3, 0xa3, 0x38, 0x59, + 0xd5, 0x68, 0xdb, 0xf3, 0xe8, 0x56, 0xfd, 0x91, 0x17, 0x7a, 0x05, 0xfb, + 0xf9, 0x9d, 0xc4, 0xfb, +}; +static const struct drbg_kat_pr_false kat2690_t = { + 4, kat2690_entropyin, kat2690_nonce, kat2690_persstr, + kat2690_entropyinreseed, kat2690_addinreseed, kat2690_addin0, + kat2690_addin1, kat2690_retbits +}; +static const struct drbg_kat kat2690 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2690_t +}; + +static const unsigned char kat2691_entropyin[] = { + 0x1a, 0x77, 0xf3, 0x3b, 0xfc, 0xee, 0xad, 0xf6, 0x8b, 0x79, 0xdd, 0x40, + 0xee, 0x85, 0x6e, 0x9e, 0x06, 0x68, 0x05, 0x91, 0x79, 0x78, 0x3f, 0xa7, + 0x3d, 0x91, 0xf5, 0x88, 0xef, 0xf2, 0x42, 0xbc, 0xe1, 0x1d, 0xc6, 0x6c, + 0xcb, 0x90, 0x31, 0x0b, 0x29, 0x1f, 0x4a, 0x96, 0x3f, 0x2a, 0x96, 0xb4, +}; +static const unsigned char kat2691_nonce[] = {0}; +static const unsigned char kat2691_persstr[] = { + 0x98, 0x43, 0x5f, 0xc8, 0x21, 0x60, 0x67, 0x72, 0x89, 0x4e, 0x46, 0xc5, + 0x53, 0x56, 0xfa, 0x88, 0x3f, 0x0a, 0xfb, 0x1b, 0x1f, 0x4e, 0xe4, 0x0f, + 0xa5, 0x6c, 0xac, 0x09, 0xcc, 0xbd, 0xc3, 0x8b, 0x7d, 0x3a, 0x3f, 0xb2, + 0x57, 0x1d, 0x2f, 0xcb, 0x9e, 0xb5, 0x91, 0x8b, 0x60, 0xc0, 0xba, 0x3e, +}; +static const unsigned char kat2691_entropyinreseed[] = { + 0x6b, 0x0a, 0x37, 0x51, 0x52, 0x49, 0xab, 0x5e, 0x26, 0x60, 0x5b, 0xd0, + 0x8c, 0xbc, 0x7f, 0x55, 0x23, 0xf4, 0xe5, 0x52, 0xf0, 0x06, 0xfa, 0xa7, + 0xc2, 0x43, 0x31, 0x32, 0xc0, 0xa4, 0x5f, 0xeb, 0x87, 0x5c, 0x88, 0x01, + 0xec, 0x35, 0x45, 0x4a, 0x1e, 0xb1, 0x36, 0x04, 0xef, 0xdb, 0x33, 0x25, +}; +static const unsigned char kat2691_addinreseed[] = { + 0xc6, 0xba, 0x05, 0xb7, 0x19, 0x7e, 0x06, 0xf1, 0x1b, 0x35, 0xa7, 0x82, + 0x4f, 0x6b, 0x8f, 0x51, 0xaf, 0xe1, 0xd6, 0xcd, 0x80, 0x64, 0x06, 0x97, + 0x56, 0x7b, 0x93, 0x4d, 0xaa, 0x62, 0xac, 0xbe, 0x73, 0x1a, 0xd8, 0xba, + 0x2f, 0xc7, 0x82, 0x17, 0xde, 0xce, 0xc4, 0xce, 0xbd, 0x46, 0xd5, 0x22, +}; +static const unsigned char kat2691_addin0[] = { + 0x2e, 0xba, 0x46, 0x3e, 0x52, 0xff, 0x2a, 0x18, 0x0a, 0xad, 0x34, 0x93, + 0xe9, 0x47, 0x6a, 0x4b, 0x97, 0x2b, 0xf3, 0x2c, 0x9c, 0xcb, 0x13, 0xef, + 0xab, 0xf0, 0x62, 0x4f, 0x1c, 0x44, 0xdf, 0x80, 0x48, 0xc8, 0xc6, 0x47, + 0x2f, 0x73, 0xfd, 0xaa, 0x60, 0x12, 0x7e, 0x66, 0x9a, 0x43, 0x22, 0x94, +}; +static const unsigned char kat2691_addin1[] = { + 0x25, 0x11, 0x07, 0x98, 0xe0, 0x6a, 0xf4, 0x73, 0x01, 0x3a, 0x2a, 0x04, + 0xf3, 0x59, 0xe1, 0x5f, 0xdf, 0xdd, 0x03, 0x06, 0xb8, 0xb9, 0x28, 0x98, + 0x5f, 0x67, 0x87, 0x2b, 0xba, 0xa4, 0x4c, 0xef, 0x57, 0x93, 0xac, 0x14, + 0xd6, 0xa9, 0x9d, 0x05, 0xd2, 0xc2, 0x69, 0x2d, 0x08, 0xd5, 0xe3, 0x96, +}; +static const unsigned char kat2691_retbits[] = { + 0x92, 0x79, 0x02, 0xf7, 0x5f, 0x10, 0xc5, 0x88, 0x0f, 0x0d, 0x93, 0x0c, + 0xa6, 0xc3, 0x6a, 0x20, 0xc7, 0xe4, 0xf2, 0x53, 0x56, 0x72, 0x71, 0x4f, + 0x96, 0xbe, 0xf7, 0x2d, 0x77, 0xb0, 0xf8, 0x71, 0x8e, 0x45, 0x46, 0xe4, + 0xe3, 0xfa, 0x2e, 0x7b, 0x24, 0x5e, 0x4d, 0xed, 0xb7, 0x42, 0x5e, 0xa6, + 0x78, 0xa1, 0x8e, 0xda, 0xdc, 0x90, 0xad, 0xe8, 0x6b, 0xc2, 0x61, 0x99, + 0x2b, 0x02, 0xbd, 0x9a, +}; +static const struct drbg_kat_pr_false kat2691_t = { + 5, kat2691_entropyin, kat2691_nonce, kat2691_persstr, + kat2691_entropyinreseed, kat2691_addinreseed, kat2691_addin0, + kat2691_addin1, kat2691_retbits +}; +static const struct drbg_kat kat2691 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2691_t +}; + +static const unsigned char kat2692_entropyin[] = { + 0x4f, 0xad, 0xa5, 0x8a, 0x9f, 0xca, 0x48, 0xa9, 0x57, 0x2c, 0xb9, 0xfd, + 0x1d, 0xe3, 0x80, 0xa2, 0xd9, 0xe0, 0x39, 0x97, 0x14, 0x87, 0xad, 0x53, + 0xa5, 0xf8, 0xc8, 0x64, 0x13, 0x50, 0xd0, 0x54, 0x32, 0xdc, 0xfb, 0x68, + 0x31, 0x31, 0x38, 0x0d, 0x35, 0xcf, 0x1c, 0x6d, 0x47, 0x4e, 0x4f, 0x3d, +}; +static const unsigned char kat2692_nonce[] = {0}; +static const unsigned char kat2692_persstr[] = { + 0xa0, 0xb4, 0x53, 0xb3, 0xf8, 0x6b, 0x45, 0x5c, 0x02, 0xd2, 0x7d, 0xf3, + 0x47, 0x77, 0x53, 0x66, 0xae, 0x01, 0x46, 0x6c, 0x9a, 0xba, 0x27, 0xd5, + 0x1c, 0x75, 0x92, 0x8a, 0xd1, 0xf3, 0x1b, 0x27, 0x8b, 0xc0, 0xe4, 0x05, + 0x2e, 0xf7, 0x02, 0xd9, 0x95, 0xf3, 0x02, 0xc3, 0x13, 0x94, 0xf9, 0x43, +}; +static const unsigned char kat2692_entropyinreseed[] = { + 0x6c, 0xd3, 0xb9, 0xec, 0x6e, 0x0d, 0xfc, 0xfc, 0x3c, 0xaa, 0x90, 0xad, + 0x28, 0x12, 0xd0, 0x95, 0x13, 0x31, 0x0e, 0xbd, 0x95, 0x06, 0x06, 0x4d, + 0x05, 0xa5, 0x9d, 0x68, 0xa9, 0x44, 0x05, 0x38, 0x8a, 0xfa, 0x31, 0x35, + 0x18, 0xa7, 0x05, 0x5e, 0x29, 0xb2, 0xe2, 0xfc, 0x52, 0xa9, 0xa9, 0x88, +}; +static const unsigned char kat2692_addinreseed[] = { + 0x39, 0xaa, 0x04, 0x1c, 0x27, 0xcd, 0x50, 0xf6, 0xd4, 0x35, 0x6d, 0x7b, + 0xf9, 0x02, 0x43, 0xba, 0x4f, 0x69, 0x64, 0x34, 0x8a, 0x88, 0x2c, 0xa5, + 0x03, 0x30, 0xc6, 0xf3, 0x98, 0xf0, 0xb8, 0x99, 0x2b, 0xc3, 0xc6, 0xda, + 0x90, 0xe0, 0xcd, 0x57, 0x07, 0x7a, 0xa0, 0xa9, 0xda, 0x48, 0x01, 0x6b, +}; +static const unsigned char kat2692_addin0[] = { + 0xc6, 0xe3, 0x42, 0xa2, 0x36, 0x5a, 0xfa, 0xf6, 0x1d, 0xa4, 0x0a, 0x91, + 0xfe, 0x6b, 0xa9, 0x50, 0xb0, 0xa1, 0x0a, 0x05, 0xcc, 0x68, 0xf5, 0xff, + 0xde, 0x7c, 0xb1, 0x2c, 0xa4, 0x65, 0x0f, 0xfa, 0xb8, 0x17, 0x8b, 0x1f, + 0xd6, 0xeb, 0x07, 0xc6, 0xe3, 0x69, 0xb2, 0xea, 0x41, 0xdc, 0x2a, 0xdb, +}; +static const unsigned char kat2692_addin1[] = { + 0x75, 0x5c, 0x62, 0x10, 0x63, 0x60, 0x79, 0xab, 0x96, 0x6f, 0xa2, 0x95, + 0x68, 0x97, 0x5d, 0xe9, 0x80, 0xb0, 0xe5, 0xdb, 0xe4, 0xea, 0x1f, 0xc1, + 0xd3, 0xa8, 0x6e, 0x21, 0x7f, 0xf6, 0xb5, 0x7d, 0xc0, 0x4d, 0x7a, 0x71, + 0x37, 0x79, 0xe9, 0x29, 0xd4, 0x22, 0x77, 0x57, 0x16, 0x1e, 0x1d, 0xfd, +}; +static const unsigned char kat2692_retbits[] = { + 0x02, 0xa6, 0x00, 0xe0, 0x72, 0x87, 0x3e, 0x39, 0x6a, 0xe4, 0xdf, 0x5d, + 0x71, 0x19, 0xdc, 0xf0, 0x0c, 0x25, 0x6b, 0xdb, 0xa7, 0x68, 0x08, 0x41, + 0x9a, 0x50, 0xd4, 0x10, 0x36, 0xbe, 0xe1, 0x5f, 0xcd, 0x3d, 0x6f, 0xbe, + 0x03, 0xf2, 0x25, 0xa4, 0x87, 0x03, 0x86, 0xd4, 0x4e, 0x73, 0x5a, 0xf5, + 0x1c, 0xe4, 0x14, 0xf5, 0xc7, 0x03, 0xee, 0x9d, 0xb5, 0x16, 0xb5, 0x62, + 0xb4, 0x12, 0xbb, 0xc9, +}; +static const struct drbg_kat_pr_false kat2692_t = { + 6, kat2692_entropyin, kat2692_nonce, kat2692_persstr, + kat2692_entropyinreseed, kat2692_addinreseed, kat2692_addin0, + kat2692_addin1, kat2692_retbits +}; +static const struct drbg_kat kat2692 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2692_t +}; + +static const unsigned char kat2693_entropyin[] = { + 0x85, 0x98, 0x99, 0x6f, 0x8b, 0x6a, 0xdc, 0xb8, 0xac, 0x64, 0x4d, 0x73, + 0x84, 0xeb, 0x95, 0xbf, 0x6f, 0x95, 0x29, 0xac, 0x0f, 0x3d, 0xab, 0xd2, + 0x38, 0x85, 0x5e, 0x6d, 0x45, 0x45, 0xc4, 0x3b, 0x85, 0xbf, 0xf2, 0x99, + 0x76, 0xd6, 0x7c, 0xf1, 0xc9, 0x7b, 0x4b, 0x33, 0x30, 0x17, 0x67, 0xb1, +}; +static const unsigned char kat2693_nonce[] = {0}; +static const unsigned char kat2693_persstr[] = { + 0xff, 0x20, 0x7a, 0x4f, 0x36, 0xeb, 0x9d, 0xae, 0xdc, 0xe0, 0xac, 0xd9, + 0x9e, 0x63, 0x91, 0x3c, 0x16, 0xc3, 0x68, 0xb4, 0x67, 0x56, 0x2a, 0x92, + 0xea, 0x2c, 0x47, 0xcc, 0x4d, 0xd6, 0xb5, 0xc9, 0xb6, 0x37, 0x69, 0x1d, + 0x6d, 0x07, 0xf6, 0x1c, 0x05, 0xf4, 0xb8, 0x69, 0x54, 0xa2, 0xbd, 0x26, +}; +static const unsigned char kat2693_entropyinreseed[] = { + 0x5a, 0x74, 0x8c, 0x44, 0xbe, 0xe4, 0x75, 0x86, 0x2d, 0xb1, 0xe0, 0xd1, + 0xd4, 0x96, 0x79, 0xe9, 0x34, 0xb0, 0x3a, 0x5a, 0x4b, 0x19, 0x9d, 0xdd, + 0xcb, 0x5e, 0x6a, 0x91, 0xac, 0xc0, 0x12, 0x63, 0xfd, 0xc8, 0xea, 0xab, + 0xdf, 0x7a, 0xe0, 0xfb, 0x7b, 0x75, 0x2b, 0x20, 0x73, 0x1b, 0x03, 0xd1, +}; +static const unsigned char kat2693_addinreseed[] = { + 0x94, 0x98, 0xd3, 0xa6, 0x65, 0xf7, 0x87, 0x45, 0xd6, 0x5a, 0x04, 0x14, + 0x14, 0x20, 0xcb, 0x5c, 0xa1, 0x38, 0x9c, 0x15, 0x47, 0x82, 0xfa, 0x10, + 0x17, 0x4e, 0x48, 0x4c, 0xf7, 0xbf, 0x27, 0xf8, 0x29, 0x2b, 0xad, 0x48, + 0x95, 0x6e, 0x2a, 0x16, 0xdc, 0x80, 0xad, 0x13, 0x53, 0x79, 0xc2, 0xa8, +}; +static const unsigned char kat2693_addin0[] = { + 0xa1, 0xf1, 0xb6, 0x81, 0x57, 0x99, 0xed, 0x98, 0xf3, 0x05, 0x62, 0x47, + 0xc7, 0x1c, 0x17, 0x48, 0x5e, 0xc6, 0x15, 0x83, 0x92, 0x21, 0x16, 0xcd, + 0xf4, 0xce, 0xb8, 0xfb, 0xa2, 0x4b, 0x80, 0xf0, 0x87, 0xcf, 0x91, 0x9f, + 0x3a, 0xae, 0x69, 0x62, 0xae, 0x2a, 0x35, 0x33, 0x05, 0x46, 0x91, 0x51, +}; +static const unsigned char kat2693_addin1[] = { + 0xb6, 0xf2, 0x56, 0xef, 0x1c, 0x62, 0xd4, 0xd7, 0xb0, 0x60, 0x57, 0xcc, + 0x93, 0x96, 0x8e, 0xeb, 0x18, 0xc5, 0x47, 0x4d, 0x0b, 0xb8, 0xc2, 0x18, + 0xd3, 0x6d, 0x89, 0x09, 0x7a, 0x89, 0xd7, 0x59, 0x91, 0xad, 0x80, 0xc9, + 0xe3, 0x95, 0x37, 0x51, 0x5c, 0x5a, 0xec, 0x3e, 0x55, 0xb3, 0x20, 0x51, +}; +static const unsigned char kat2693_retbits[] = { + 0x2b, 0x69, 0xdf, 0xb0, 0xeb, 0x74, 0x3e, 0xaf, 0x89, 0x26, 0x89, 0x11, + 0x7a, 0x30, 0x17, 0xa6, 0x2d, 0xe6, 0x3f, 0x65, 0x3e, 0xa7, 0x44, 0x0f, + 0xb2, 0x9c, 0x47, 0x3d, 0x0b, 0x72, 0x9e, 0x64, 0x9a, 0x41, 0x6f, 0xee, + 0x20, 0x2b, 0x2d, 0xe9, 0x4e, 0x19, 0xe0, 0x91, 0x5c, 0x38, 0xfc, 0xbb, + 0x81, 0x39, 0xda, 0x40, 0x76, 0xca, 0xca, 0x86, 0x5f, 0x01, 0x24, 0xae, + 0x8b, 0x6b, 0xac, 0xd2, +}; +static const struct drbg_kat_pr_false kat2693_t = { + 7, kat2693_entropyin, kat2693_nonce, kat2693_persstr, + kat2693_entropyinreseed, kat2693_addinreseed, kat2693_addin0, + kat2693_addin1, kat2693_retbits +}; +static const struct drbg_kat kat2693 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2693_t +}; + +static const unsigned char kat2694_entropyin[] = { + 0x77, 0xa9, 0x54, 0x9d, 0x33, 0xe3, 0x50, 0xa7, 0x18, 0x39, 0x56, 0xbb, + 0x94, 0x74, 0x6d, 0x32, 0xd3, 0x64, 0x9c, 0xcd, 0xe8, 0xa5, 0x8f, 0x7b, + 0x8e, 0x78, 0xd5, 0x4d, 0xc2, 0x0c, 0xb1, 0x8a, 0x67, 0x58, 0xf4, 0x54, + 0xb8, 0x72, 0x7c, 0xb3, 0x47, 0xeb, 0xfb, 0x54, 0x30, 0x56, 0xf9, 0x51, +}; +static const unsigned char kat2694_nonce[] = {0}; +static const unsigned char kat2694_persstr[] = { + 0xf4, 0x49, 0x33, 0x9c, 0x1e, 0xae, 0xf6, 0xe6, 0x56, 0x32, 0x50, 0x39, + 0xba, 0xaf, 0x4b, 0xec, 0x9e, 0x12, 0x54, 0x17, 0x77, 0xe9, 0x9b, 0x2b, + 0xf3, 0xb3, 0xc8, 0x07, 0x7d, 0x8f, 0x95, 0x70, 0xf9, 0x59, 0xcc, 0x18, + 0xe5, 0x0b, 0xcc, 0x01, 0xda, 0xfa, 0x91, 0xf8, 0x0a, 0x8f, 0x9d, 0x6e, +}; +static const unsigned char kat2694_entropyinreseed[] = { + 0x08, 0x12, 0xe9, 0xb4, 0x71, 0x13, 0x6b, 0x0b, 0x11, 0xda, 0xbe, 0x90, + 0x2e, 0x76, 0xf6, 0xef, 0x07, 0x82, 0xfa, 0xf0, 0x65, 0x50, 0x6f, 0x2d, + 0x21, 0xef, 0x7d, 0x4b, 0xba, 0x85, 0xc9, 0x53, 0x6a, 0x10, 0xdf, 0xbf, + 0xbf, 0x0d, 0x4f, 0xb0, 0x5c, 0x67, 0x47, 0xe9, 0xa6, 0x32, 0xae, 0xba, +}; +static const unsigned char kat2694_addinreseed[] = { + 0x56, 0xf2, 0x78, 0x37, 0x73, 0xf8, 0xeb, 0xcb, 0x04, 0x28, 0xd1, 0x25, + 0x2b, 0x6a, 0x46, 0x72, 0x49, 0xcf, 0x9a, 0x2f, 0xab, 0xc5, 0xef, 0x08, + 0x4a, 0x35, 0x62, 0xac, 0x57, 0x66, 0x5c, 0x05, 0xf8, 0x21, 0x4e, 0xb6, + 0xa1, 0xaf, 0x29, 0xa2, 0xab, 0x67, 0x3f, 0xc1, 0xa7, 0x0d, 0xe1, 0x77, +}; +static const unsigned char kat2694_addin0[] = { + 0x36, 0x8c, 0x30, 0x91, 0xd7, 0x0d, 0x55, 0xcf, 0xb0, 0x9a, 0x97, 0xa6, + 0xc7, 0x9c, 0xae, 0x15, 0x6a, 0x45, 0xfb, 0x1d, 0x53, 0xa1, 0x26, 0x15, + 0xf0, 0xf1, 0xf4, 0x63, 0xbe, 0x07, 0x52, 0x73, 0xa3, 0x11, 0xad, 0x9e, + 0x41, 0x42, 0x91, 0xcd, 0x51, 0xcf, 0x82, 0xaa, 0x81, 0xa2, 0xdb, 0x42, +}; +static const unsigned char kat2694_addin1[] = { + 0x31, 0xa6, 0xb7, 0x34, 0xe6, 0xf9, 0xb1, 0x2e, 0xaf, 0xb2, 0xea, 0x23, + 0xd0, 0xd8, 0xdf, 0xcf, 0x74, 0x67, 0x7f, 0xd3, 0x7f, 0x83, 0xc9, 0xe9, + 0x49, 0xf4, 0xb4, 0x6d, 0xf5, 0x6f, 0x5c, 0x1e, 0x15, 0xde, 0x91, 0x30, + 0x8c, 0x43, 0x84, 0x8f, 0xb0, 0xe1, 0x2b, 0xda, 0x36, 0xbe, 0x13, 0xfd, +}; +static const unsigned char kat2694_retbits[] = { + 0xc4, 0x68, 0x57, 0x92, 0x91, 0xe3, 0x90, 0x6a, 0x13, 0xad, 0x74, 0x75, + 0xa0, 0x56, 0xee, 0xbe, 0x94, 0x0a, 0xdc, 0x2f, 0x06, 0xd1, 0x95, 0xcc, + 0x68, 0x6b, 0xc4, 0x25, 0x20, 0x6e, 0xba, 0x21, 0x71, 0x7c, 0xdf, 0xc7, + 0x9f, 0xb6, 0x3f, 0x6b, 0x0f, 0x1b, 0x78, 0x20, 0x5d, 0x99, 0x42, 0x9b, + 0x55, 0x74, 0x63, 0x06, 0x70, 0xf9, 0xab, 0xda, 0xc1, 0x52, 0x7e, 0xde, + 0x9e, 0xfe, 0xb0, 0xed, +}; +static const struct drbg_kat_pr_false kat2694_t = { + 8, kat2694_entropyin, kat2694_nonce, kat2694_persstr, + kat2694_entropyinreseed, kat2694_addinreseed, kat2694_addin0, + kat2694_addin1, kat2694_retbits +}; +static const struct drbg_kat kat2694 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2694_t +}; + +static const unsigned char kat2695_entropyin[] = { + 0x61, 0x4d, 0x94, 0x22, 0x69, 0x48, 0x51, 0x64, 0x73, 0x9e, 0xb1, 0x9b, + 0x28, 0xef, 0x16, 0x30, 0xc6, 0x9d, 0x0e, 0xf4, 0xe9, 0xa4, 0x32, 0xbd, + 0x82, 0x24, 0x0c, 0x07, 0x60, 0xf2, 0xfd, 0x08, 0x12, 0xa6, 0x6e, 0xac, + 0x75, 0xf0, 0xbd, 0x71, 0xf1, 0x85, 0xad, 0x06, 0xd0, 0x6c, 0xab, 0x4e, +}; +static const unsigned char kat2695_nonce[] = {0}; +static const unsigned char kat2695_persstr[] = { + 0xc2, 0x5d, 0x67, 0x67, 0x6e, 0x29, 0x38, 0xfb, 0x26, 0x14, 0x06, 0xbd, + 0x65, 0xf1, 0xfb, 0xe7, 0xf9, 0x92, 0x97, 0x9a, 0x65, 0x5b, 0xda, 0xba, + 0x40, 0xfd, 0xd8, 0xfe, 0x78, 0x87, 0x17, 0x32, 0x8c, 0xf4, 0xfd, 0xaa, + 0x22, 0xf3, 0x86, 0xe5, 0x34, 0x16, 0x77, 0x31, 0x3b, 0xac, 0xed, 0x1f, +}; +static const unsigned char kat2695_entropyinreseed[] = { + 0x53, 0x4d, 0xba, 0x01, 0xad, 0xbf, 0x78, 0xe6, 0x7c, 0xbc, 0x50, 0x82, + 0xab, 0x0c, 0x08, 0x95, 0xd2, 0x2a, 0x7c, 0x96, 0x34, 0x48, 0x3a, 0xfb, + 0xb9, 0x49, 0xc0, 0x9a, 0x46, 0x38, 0xfa, 0x28, 0xe3, 0x3b, 0x4a, 0xd7, + 0x8b, 0x02, 0x4b, 0xc6, 0x39, 0xf3, 0x8f, 0x77, 0x10, 0xff, 0x00, 0x4f, +}; +static const unsigned char kat2695_addinreseed[] = { + 0xaa, 0x83, 0xad, 0x17, 0xb8, 0xca, 0x4c, 0x98, 0x26, 0xae, 0xba, 0x8b, + 0x34, 0xe2, 0x5e, 0x98, 0x8c, 0x33, 0x35, 0xd6, 0x53, 0xf1, 0x27, 0x49, + 0xb2, 0x19, 0x5e, 0x73, 0x43, 0xfd, 0x66, 0x83, 0x13, 0x43, 0x20, 0x3a, + 0x7f, 0x45, 0xbe, 0x2b, 0x54, 0xc4, 0xb2, 0xe6, 0xd9, 0x4f, 0x6f, 0x09, +}; +static const unsigned char kat2695_addin0[] = { + 0x6b, 0x8e, 0x07, 0xfe, 0x59, 0xf9, 0x11, 0xce, 0x5e, 0x34, 0x2b, 0xce, + 0xc2, 0xea, 0x7e, 0x3f, 0xa8, 0x9b, 0x21, 0xb8, 0x3f, 0xf7, 0x55, 0x14, + 0xa8, 0xbf, 0x17, 0x8b, 0x36, 0x28, 0xa8, 0x83, 0xb8, 0x28, 0x2b, 0xc4, + 0xe1, 0xfc, 0xcb, 0x63, 0xd6, 0xdb, 0x0b, 0x0a, 0x2d, 0x46, 0x2d, 0x5a, +}; +static const unsigned char kat2695_addin1[] = { + 0x56, 0xc2, 0x58, 0x35, 0x92, 0x7f, 0x85, 0xa3, 0x6a, 0x9a, 0xd5, 0xce, + 0x31, 0x19, 0x99, 0x97, 0x6d, 0x64, 0x9b, 0x25, 0x42, 0x42, 0x6f, 0x10, + 0x3b, 0x9c, 0x43, 0x96, 0x28, 0x4d, 0x0f, 0xb8, 0x5c, 0x62, 0xa2, 0x52, + 0x06, 0xd2, 0x0b, 0xc4, 0x85, 0xf7, 0x6a, 0x63, 0x96, 0x2d, 0x2a, 0x98, +}; +static const unsigned char kat2695_retbits[] = { + 0x67, 0xc6, 0x75, 0xcd, 0x16, 0x6d, 0x68, 0xba, 0x4a, 0x9e, 0xd0, 0x7a, + 0xc6, 0xec, 0xde, 0x44, 0xd9, 0x8f, 0x80, 0xca, 0x9b, 0x6d, 0x58, 0xdc, + 0xb2, 0xe8, 0xcf, 0x4a, 0x6c, 0x92, 0xd9, 0x48, 0xb7, 0x05, 0xc4, 0x48, + 0xc8, 0x24, 0x05, 0x99, 0x24, 0x5a, 0xc8, 0x76, 0x74, 0xb6, 0xbe, 0xee, + 0x01, 0xf2, 0x0b, 0x93, 0xb7, 0x21, 0xea, 0xf0, 0x17, 0x94, 0xc5, 0x9d, + 0x66, 0x30, 0xdd, 0xab, +}; +static const struct drbg_kat_pr_false kat2695_t = { + 9, kat2695_entropyin, kat2695_nonce, kat2695_persstr, + kat2695_entropyinreseed, kat2695_addinreseed, kat2695_addin0, + kat2695_addin1, kat2695_retbits +}; +static const struct drbg_kat kat2695 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2695_t +}; + +static const unsigned char kat2696_entropyin[] = { + 0x73, 0xa0, 0xa9, 0xe3, 0xa1, 0x87, 0xcf, 0x98, 0x0a, 0xf3, 0x97, 0x0b, + 0x40, 0x4c, 0x85, 0x85, 0xd7, 0x8c, 0x4e, 0x1c, 0x06, 0xf8, 0x8b, 0x91, + 0x10, 0xd4, 0xb1, 0xf2, 0x7f, 0xed, 0xfe, 0xab, 0x5c, 0x94, 0x58, 0xbb, + 0x5d, 0x22, 0x7d, 0xe5, 0x8e, 0x70, 0x3a, 0x8d, 0x40, 0xae, 0xcd, 0xfa, +}; +static const unsigned char kat2696_nonce[] = {0}; +static const unsigned char kat2696_persstr[] = { + 0xbe, 0xf4, 0xbe, 0xac, 0x0a, 0x3b, 0x08, 0x5c, 0x62, 0x60, 0x14, 0xd3, + 0x68, 0xfa, 0x53, 0x1b, 0x42, 0xd7, 0x81, 0x87, 0x36, 0x56, 0xec, 0x38, + 0x4f, 0xb1, 0x96, 0x74, 0xf8, 0x8a, 0x9e, 0xa4, 0xab, 0x34, 0x9a, 0x5a, + 0x8c, 0x06, 0x85, 0xab, 0x23, 0xec, 0x89, 0xb4, 0xab, 0x35, 0x71, 0x8b, +}; +static const unsigned char kat2696_entropyinreseed[] = { + 0x41, 0x6e, 0xf8, 0x5f, 0x8f, 0x20, 0x1b, 0x2b, 0x00, 0xb9, 0x5f, 0x2e, + 0xd8, 0x47, 0x7c, 0x1b, 0x61, 0xe6, 0x04, 0x3b, 0xfc, 0x4a, 0x07, 0x5a, + 0x47, 0x9d, 0xa6, 0x38, 0x14, 0x13, 0xcc, 0xb2, 0x48, 0xc6, 0x67, 0xaf, + 0x2e, 0x2b, 0xbc, 0x77, 0x6a, 0xf3, 0x8a, 0x61, 0xc9, 0xe4, 0xef, 0x56, +}; +static const unsigned char kat2696_addinreseed[] = { + 0x43, 0x32, 0x65, 0x92, 0xd4, 0xd6, 0x74, 0xde, 0xc7, 0xd7, 0xc1, 0x8f, + 0x76, 0xe1, 0x00, 0x6a, 0xf1, 0x8e, 0x46, 0x10, 0x00, 0xc4, 0x95, 0xc5, + 0x6d, 0x25, 0xf4, 0x0b, 0x18, 0x0a, 0x6c, 0xc5, 0x12, 0xb9, 0x91, 0xcb, + 0x7a, 0x5b, 0x8e, 0x81, 0xad, 0x53, 0xa1, 0xa3, 0x30, 0x7a, 0x2f, 0x32, +}; +static const unsigned char kat2696_addin0[] = { + 0xf8, 0x77, 0x6c, 0x1d, 0x1a, 0x26, 0x00, 0xee, 0x34, 0x38, 0x6c, 0x29, + 0x3d, 0xa3, 0x83, 0x1c, 0xd0, 0xfa, 0x37, 0xdf, 0x3e, 0xf3, 0x7a, 0xb8, + 0xd8, 0xf8, 0x4b, 0xbd, 0xc1, 0x55, 0x95, 0xb5, 0xe7, 0x33, 0xad, 0xb6, + 0xa8, 0x63, 0x26, 0xe8, 0xa4, 0xdc, 0x77, 0xcf, 0x03, 0xc3, 0xbe, 0x97, +}; +static const unsigned char kat2696_addin1[] = { + 0x2b, 0x36, 0x9b, 0x92, 0x16, 0x53, 0xe1, 0xaa, 0xf6, 0x6a, 0xf6, 0x5b, + 0x06, 0x6f, 0x71, 0x0d, 0x6c, 0x5d, 0xa4, 0xab, 0xd1, 0x91, 0x84, 0xef, + 0x84, 0x95, 0x62, 0x60, 0xdb, 0x34, 0x36, 0x15, 0x84, 0x6e, 0xdd, 0x85, + 0x6f, 0x7f, 0xa5, 0xa1, 0x72, 0x66, 0x43, 0x20, 0x3b, 0x8a, 0x8c, 0xd3, +}; +static const unsigned char kat2696_retbits[] = { + 0xbe, 0x59, 0x8f, 0x18, 0x1c, 0xc3, 0xef, 0x73, 0xf9, 0xdc, 0xa4, 0x1b, + 0xae, 0x4e, 0x9a, 0xb7, 0x76, 0xd8, 0x44, 0x73, 0xc1, 0x6c, 0xed, 0x60, + 0x5d, 0x4e, 0x1a, 0xae, 0xbc, 0x58, 0xca, 0x1b, 0x86, 0x8b, 0xbc, 0xd1, + 0x39, 0xa1, 0xd4, 0xe6, 0x5c, 0xa1, 0x62, 0x8e, 0x41, 0x3b, 0x7f, 0x1d, + 0x06, 0x1e, 0x56, 0x90, 0x28, 0xf1, 0xeb, 0xbc, 0xfe, 0xba, 0xf2, 0x79, + 0x82, 0x0f, 0x09, 0x00, +}; +static const struct drbg_kat_pr_false kat2696_t = { + 10, kat2696_entropyin, kat2696_nonce, kat2696_persstr, + kat2696_entropyinreseed, kat2696_addinreseed, kat2696_addin0, + kat2696_addin1, kat2696_retbits +}; +static const struct drbg_kat kat2696 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2696_t +}; + +static const unsigned char kat2697_entropyin[] = { + 0x7c, 0xaf, 0xce, 0xd4, 0x29, 0x93, 0x0e, 0x19, 0x7f, 0x8e, 0x09, 0x2e, + 0xb7, 0x19, 0x08, 0x98, 0x6b, 0xfa, 0xfd, 0x7f, 0x07, 0xc5, 0x29, 0x8e, + 0x6f, 0x4f, 0x88, 0xed, 0x94, 0x08, 0x5e, 0xd9, 0x2f, 0x6a, 0xf7, 0x68, + 0x43, 0x7f, 0xf8, 0xbd, 0xc8, 0xf4, 0x4e, 0x17, 0xcc, 0xbb, 0x83, 0xe9, +}; +static const unsigned char kat2697_nonce[] = {0}; +static const unsigned char kat2697_persstr[] = { + 0xc0, 0xb4, 0x35, 0xa5, 0x1c, 0x08, 0x53, 0x2b, 0xeb, 0x12, 0x64, 0xdc, + 0x51, 0xc3, 0x27, 0x1a, 0x51, 0x20, 0xe0, 0x05, 0xca, 0x1f, 0xf2, 0x09, + 0x03, 0x19, 0x05, 0xd3, 0x70, 0xc9, 0x50, 0x92, 0x13, 0xb9, 0x0c, 0x7e, + 0x62, 0x0c, 0xf0, 0xad, 0x55, 0xfd, 0xbf, 0x15, 0xb2, 0xff, 0x34, 0x1f, +}; +static const unsigned char kat2697_entropyinreseed[] = { + 0xf5, 0x9e, 0xfd, 0x8d, 0x25, 0x31, 0x42, 0xa0, 0x34, 0x63, 0x10, 0xb1, + 0x46, 0x7e, 0xea, 0x0f, 0x49, 0xf9, 0xe0, 0x39, 0xcb, 0x0c, 0x69, 0x54, + 0x51, 0x6a, 0x52, 0x28, 0x89, 0x6c, 0xb0, 0xed, 0xb5, 0xe4, 0x6c, 0x86, + 0x35, 0x75, 0x84, 0x2c, 0xdc, 0xcf, 0x55, 0x6a, 0xc1, 0xba, 0x3e, 0xde, +}; +static const unsigned char kat2697_addinreseed[] = { + 0xb6, 0x4c, 0x2d, 0xc0, 0x57, 0x3f, 0x0d, 0x87, 0x40, 0xa5, 0xf9, 0x34, + 0xe3, 0xcc, 0xc2, 0xe3, 0xbb, 0x1d, 0xd0, 0x1a, 0x9a, 0x50, 0xef, 0xb5, + 0x16, 0xdb, 0xbe, 0x58, 0x15, 0x66, 0xcf, 0xad, 0xe2, 0xb5, 0x21, 0xb8, + 0x85, 0x29, 0x5b, 0x53, 0x5a, 0xad, 0xb0, 0x5a, 0x76, 0xb7, 0xcc, 0xec, +}; +static const unsigned char kat2697_addin0[] = { + 0x41, 0x8a, 0x23, 0x29, 0x34, 0x12, 0x0f, 0x0f, 0xd3, 0x4f, 0xb4, 0xa8, + 0x4e, 0x82, 0x0f, 0xb6, 0x24, 0x08, 0x92, 0x16, 0x77, 0xe9, 0x71, 0xd7, + 0xf3, 0x39, 0x49, 0x73, 0x62, 0xe3, 0xea, 0xa1, 0xde, 0xad, 0x14, 0xd2, + 0xcd, 0xf1, 0xe2, 0xf0, 0xe3, 0xfc, 0xcb, 0xce, 0xc3, 0xe7, 0x40, 0xb2, +}; +static const unsigned char kat2697_addin1[] = { + 0xc4, 0xce, 0x8b, 0x89, 0xa8, 0xd9, 0x96, 0x14, 0xfc, 0x94, 0x42, 0xbc, + 0x64, 0x7f, 0x53, 0x98, 0xea, 0x20, 0xc0, 0x2d, 0x5b, 0x7e, 0xae, 0xa6, + 0xce, 0x26, 0xbd, 0xa4, 0xa9, 0x57, 0xb2, 0x89, 0xd8, 0xee, 0x4a, 0x77, + 0x1a, 0xc2, 0xed, 0xe6, 0x1a, 0xea, 0x9a, 0x9b, 0xe5, 0xb6, 0x85, 0xcf, +}; +static const unsigned char kat2697_retbits[] = { + 0x1b, 0xed, 0x88, 0xce, 0x25, 0xc4, 0xbd, 0x7c, 0xcc, 0x2a, 0xc9, 0x81, + 0x3c, 0x32, 0xee, 0x7f, 0x12, 0x8f, 0x56, 0x09, 0x71, 0x94, 0x4c, 0xe9, + 0xa0, 0xd0, 0x28, 0xc4, 0x70, 0x68, 0x75, 0x48, 0x2d, 0x3f, 0x64, 0x8e, + 0x5b, 0xc5, 0x8e, 0xdf, 0xc4, 0xe4, 0x90, 0xff, 0x75, 0x45, 0x75, 0x50, + 0x1f, 0x60, 0x5d, 0x5e, 0xfc, 0x71, 0x6f, 0xcc, 0x44, 0xbc, 0x5c, 0x69, + 0x05, 0xa8, 0x3d, 0x93, +}; +static const struct drbg_kat_pr_false kat2697_t = { + 11, kat2697_entropyin, kat2697_nonce, kat2697_persstr, + kat2697_entropyinreseed, kat2697_addinreseed, kat2697_addin0, + kat2697_addin1, kat2697_retbits +}; +static const struct drbg_kat kat2697 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2697_t +}; + +static const unsigned char kat2698_entropyin[] = { + 0x16, 0xfa, 0x70, 0x55, 0x91, 0x4d, 0xeb, 0xfd, 0xe6, 0x43, 0xda, 0x69, + 0x38, 0xa9, 0x27, 0x00, 0x4b, 0x2d, 0x77, 0x3f, 0x99, 0x50, 0x7c, 0x6d, + 0xe1, 0xbc, 0x66, 0x1d, 0x91, 0x4b, 0xc2, 0xd6, 0x33, 0xd3, 0xc2, 0x74, + 0xfc, 0x62, 0x39, 0xb3, 0xe4, 0x84, 0x40, 0xc0, 0x3d, 0x80, 0x85, 0x21, +}; +static const unsigned char kat2698_nonce[] = {0}; +static const unsigned char kat2698_persstr[] = { + 0xe2, 0x95, 0xe1, 0x6a, 0xf5, 0xd4, 0x1f, 0x8f, 0xf3, 0xac, 0x89, 0xcf, + 0x3b, 0x8b, 0xb5, 0xbb, 0x54, 0x2f, 0x6b, 0x34, 0x73, 0x64, 0x2c, 0xc9, + 0x34, 0x48, 0xfa, 0x3a, 0xb7, 0x8e, 0x20, 0x67, 0x7f, 0x88, 0xdd, 0xe2, + 0x26, 0x95, 0x58, 0x52, 0xf0, 0x7e, 0x3f, 0x32, 0xe0, 0x81, 0x2c, 0xbc, +}; +static const unsigned char kat2698_entropyinreseed[] = { + 0x00, 0x71, 0xbc, 0xc9, 0xe4, 0x40, 0xb1, 0x77, 0xaa, 0x6d, 0xdc, 0xef, + 0x17, 0x8e, 0x72, 0x8f, 0x49, 0x23, 0x9e, 0x58, 0xc7, 0x62, 0xa1, 0x44, + 0x81, 0x68, 0xfe, 0xc7, 0x15, 0x6b, 0xed, 0xf1, 0x06, 0xf7, 0x97, 0x90, + 0xcc, 0x69, 0x61, 0x64, 0x84, 0xa4, 0x8f, 0x93, 0xac, 0x08, 0x68, 0x82, +}; +static const unsigned char kat2698_addinreseed[] = { + 0x0b, 0x50, 0x8c, 0xcf, 0x33, 0x1f, 0x0d, 0xc6, 0x9e, 0x63, 0xb5, 0x48, + 0xa9, 0x09, 0x70, 0xd6, 0xa1, 0xd5, 0xd0, 0xe4, 0x94, 0x1a, 0x70, 0x57, + 0x1a, 0xc1, 0x3d, 0xc9, 0x04, 0xed, 0x19, 0xe6, 0xe0, 0xa3, 0xa5, 0x82, + 0xbd, 0x6d, 0x97, 0x9d, 0x45, 0x93, 0x4d, 0xe9, 0x29, 0x87, 0xeb, 0x53, +}; +static const unsigned char kat2698_addin0[] = { + 0xb4, 0x96, 0x74, 0x97, 0x10, 0xef, 0xa7, 0x1e, 0x6a, 0xb4, 0xe3, 0xed, + 0x2f, 0x37, 0x55, 0xfd, 0xec, 0x00, 0xec, 0x51, 0xe8, 0x5b, 0xbd, 0xb9, + 0xf6, 0x2f, 0xa5, 0xc6, 0x7f, 0xe3, 0x88, 0x2e, 0xe9, 0x1f, 0x40, 0x4f, + 0xf0, 0x03, 0xe0, 0xe1, 0x62, 0x28, 0x0d, 0xeb, 0x6b, 0xf6, 0x48, 0xaf, +}; +static const unsigned char kat2698_addin1[] = { + 0x75, 0x53, 0x41, 0xc4, 0x62, 0x8a, 0x60, 0xb7, 0xaf, 0x20, 0xe4, 0x84, + 0x2b, 0x29, 0x12, 0xd0, 0x83, 0xb5, 0xdb, 0x8b, 0xb0, 0xb1, 0x4d, 0xdf, + 0x3c, 0xde, 0x54, 0xf6, 0xfa, 0x10, 0xf1, 0x38, 0x1b, 0x0d, 0x07, 0xe6, + 0x9a, 0x87, 0xa6, 0xf0, 0x15, 0x61, 0x6b, 0xed, 0x96, 0x6e, 0xdd, 0x49, +}; +static const unsigned char kat2698_retbits[] = { + 0x5f, 0xda, 0x95, 0x4f, 0x37, 0xf7, 0xf0, 0x2e, 0x37, 0x80, 0x5c, 0x78, + 0x88, 0xf9, 0xcf, 0x46, 0xae, 0x8f, 0x3a, 0xca, 0x98, 0x43, 0xd0, 0xe8, + 0xfd, 0xc7, 0x61, 0x4b, 0xc8, 0x89, 0xa2, 0x06, 0x59, 0xb3, 0xeb, 0x28, + 0x84, 0x28, 0x6c, 0xe0, 0xe4, 0xb7, 0xed, 0xff, 0x91, 0x14, 0xee, 0x4b, + 0xd8, 0xcf, 0xa1, 0x73, 0xb3, 0x1b, 0x2d, 0xff, 0x3d, 0xae, 0xdd, 0xf1, + 0x9f, 0xbf, 0x88, 0xe4, +}; +static const struct drbg_kat_pr_false kat2698_t = { + 12, kat2698_entropyin, kat2698_nonce, kat2698_persstr, + kat2698_entropyinreseed, kat2698_addinreseed, kat2698_addin0, + kat2698_addin1, kat2698_retbits +}; +static const struct drbg_kat kat2698 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2698_t +}; + +static const unsigned char kat2699_entropyin[] = { + 0x44, 0x99, 0x77, 0x06, 0x17, 0x47, 0x6f, 0xe6, 0xb1, 0xc4, 0x8a, 0x31, + 0x43, 0x1a, 0x30, 0x49, 0xf4, 0x2a, 0xf9, 0x31, 0xc2, 0x8b, 0x48, 0x60, + 0xfe, 0x0d, 0xae, 0x13, 0x8e, 0x70, 0xb5, 0xd2, 0xf6, 0x43, 0xff, 0x92, + 0x71, 0x93, 0x4f, 0xb1, 0xc9, 0xd6, 0xcc, 0xde, 0x83, 0x9f, 0xd5, 0x5f, +}; +static const unsigned char kat2699_nonce[] = {0}; +static const unsigned char kat2699_persstr[] = { + 0x16, 0x4a, 0xab, 0x76, 0xbf, 0x81, 0x33, 0x13, 0x93, 0x6e, 0x2a, 0x02, + 0x2c, 0x07, 0xfd, 0x74, 0x90, 0x8e, 0x57, 0x90, 0xf0, 0xbd, 0xb9, 0x2a, + 0xdd, 0xf0, 0x29, 0xde, 0x6e, 0x5f, 0x7d, 0x09, 0xb0, 0x10, 0x80, 0xa4, + 0xab, 0xc9, 0x54, 0x2e, 0xa4, 0x9f, 0xc8, 0x85, 0x45, 0xd1, 0x53, 0x34, +}; +static const unsigned char kat2699_entropyinreseed[] = { + 0x0d, 0x6e, 0xc2, 0xb8, 0x1f, 0xa5, 0x6f, 0x5b, 0x0d, 0x0b, 0xab, 0x64, + 0x8a, 0x8b, 0x7b, 0x68, 0x6e, 0x0b, 0x6f, 0xef, 0xb4, 0xa5, 0x17, 0xf8, + 0x72, 0x66, 0x38, 0xa1, 0xc9, 0xda, 0xc7, 0xd3, 0x33, 0xeb, 0xdd, 0x7d, + 0x71, 0xc0, 0x6d, 0xb5, 0x13, 0x6b, 0x93, 0x0e, 0x5c, 0x77, 0x6e, 0xf9, +}; +static const unsigned char kat2699_addinreseed[] = { + 0x78, 0x08, 0x85, 0x87, 0x92, 0x6a, 0xec, 0xfa, 0x25, 0x08, 0x1c, 0xd8, + 0x11, 0xf9, 0x17, 0x95, 0xc6, 0x0f, 0xc1, 0x88, 0x62, 0xee, 0xc5, 0xa9, + 0x0b, 0x0b, 0x38, 0xe8, 0x19, 0x76, 0x84, 0x62, 0x34, 0x50, 0xce, 0xc1, + 0xb4, 0x44, 0xdd, 0x2a, 0xfb, 0xbb, 0x1e, 0x52, 0xee, 0x18, 0x4f, 0x4e, +}; +static const unsigned char kat2699_addin0[] = { + 0x3c, 0x32, 0xbb, 0x43, 0xf8, 0x0b, 0xde, 0xce, 0xaf, 0xdb, 0xc4, 0x6a, + 0x6f, 0xd4, 0x33, 0x00, 0xbf, 0x99, 0xf2, 0x6e, 0x87, 0x75, 0xff, 0x31, + 0x28, 0x1e, 0x0a, 0xb0, 0xb3, 0x59, 0x2e, 0xab, 0xe7, 0xeb, 0x2e, 0xbf, + 0xe7, 0x5c, 0xc4, 0x61, 0xb2, 0xd8, 0x04, 0xed, 0xb4, 0x09, 0xb2, 0xf6, +}; +static const unsigned char kat2699_addin1[] = { + 0x2a, 0xe5, 0x4d, 0x1e, 0x99, 0x3b, 0xbc, 0xad, 0xee, 0xf2, 0xe8, 0x34, + 0x9f, 0xb7, 0xe6, 0x4f, 0x19, 0xe0, 0x42, 0xba, 0x3a, 0xb4, 0xe9, 0x58, + 0x2b, 0xfd, 0x87, 0xc9, 0xe1, 0x88, 0x46, 0x9f, 0xf3, 0xa9, 0xcc, 0xe3, + 0xab, 0x91, 0x4a, 0x59, 0xdc, 0x46, 0x69, 0x62, 0xf0, 0xfd, 0x9a, 0x52, +}; +static const unsigned char kat2699_retbits[] = { + 0xb2, 0x39, 0x31, 0x43, 0xe2, 0xf7, 0xc8, 0x6a, 0x6b, 0xb8, 0x2b, 0x5c, + 0x40, 0x94, 0x5f, 0x94, 0x9e, 0x6e, 0xcc, 0xc0, 0x5f, 0x8a, 0xe5, 0x3c, + 0xd5, 0xc6, 0xd8, 0x32, 0x1c, 0x01, 0xdf, 0x71, 0x5a, 0x29, 0x4f, 0x2f, + 0x78, 0x71, 0xc0, 0xe4, 0x18, 0xf0, 0x47, 0x57, 0x93, 0x27, 0xdb, 0x15, + 0x1d, 0x3c, 0xb0, 0xb0, 0xd3, 0x86, 0x8a, 0xc9, 0x62, 0x01, 0x2c, 0x2b, + 0x06, 0xf5, 0x94, 0xa3, +}; +static const struct drbg_kat_pr_false kat2699_t = { + 13, kat2699_entropyin, kat2699_nonce, kat2699_persstr, + kat2699_entropyinreseed, kat2699_addinreseed, kat2699_addin0, + kat2699_addin1, kat2699_retbits +}; +static const struct drbg_kat kat2699 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2699_t +}; + +static const unsigned char kat2700_entropyin[] = { + 0x70, 0x83, 0x27, 0x5a, 0x4e, 0x52, 0xde, 0x2a, 0x4a, 0x96, 0xb2, 0xbf, + 0xf5, 0xe9, 0xab, 0xd9, 0x76, 0x81, 0x0e, 0xd6, 0xbc, 0x0e, 0xcd, 0xae, + 0xed, 0xac, 0xeb, 0x90, 0xe0, 0x7e, 0xef, 0xdd, 0xfa, 0x52, 0xef, 0x32, + 0x6e, 0x22, 0xb5, 0x08, 0x80, 0x60, 0x44, 0x19, 0x9b, 0x27, 0x40, 0x27, +}; +static const unsigned char kat2700_nonce[] = {0}; +static const unsigned char kat2700_persstr[] = { + 0x3b, 0x9f, 0xb5, 0x93, 0x26, 0x6f, 0xc5, 0x48, 0x42, 0x17, 0x52, 0xa7, + 0x05, 0xdf, 0xe1, 0x1d, 0xe5, 0xcf, 0x1e, 0x1a, 0x3f, 0x6d, 0x17, 0xc2, + 0xa9, 0xa8, 0x79, 0xbc, 0x9d, 0xbe, 0x2e, 0x25, 0x4f, 0x79, 0xe7, 0x3d, + 0xde, 0xa4, 0x46, 0x99, 0x4f, 0x68, 0xb3, 0x18, 0xbf, 0xaa, 0xb9, 0x79, +}; +static const unsigned char kat2700_entropyinreseed[] = { + 0xbc, 0xbf, 0x9b, 0x7a, 0xf0, 0x8c, 0xe5, 0x04, 0xaa, 0x7c, 0x08, 0x7d, + 0x6f, 0x22, 0xb9, 0xe4, 0x7b, 0x40, 0xcf, 0x7b, 0xdc, 0x81, 0xf3, 0x32, + 0xbe, 0xb9, 0x44, 0x6c, 0x33, 0xd2, 0x6b, 0xf4, 0x74, 0x60, 0xcf, 0x70, + 0xff, 0x16, 0x25, 0x12, 0x8c, 0xa9, 0x2f, 0x5b, 0x0a, 0xf7, 0x3a, 0x9a, +}; +static const unsigned char kat2700_addinreseed[] = { + 0xf9, 0xc0, 0x16, 0xd2, 0xa0, 0x0c, 0x57, 0x2f, 0x8c, 0x0c, 0x9d, 0xea, + 0xa2, 0x3d, 0xb1, 0x35, 0xe7, 0x38, 0xed, 0x70, 0x4c, 0xc6, 0x37, 0xbf, + 0x49, 0x91, 0xc1, 0x25, 0xaf, 0xe7, 0x32, 0x8a, 0x6a, 0x74, 0xe6, 0x7c, + 0x0b, 0xf3, 0x65, 0x44, 0x6b, 0x58, 0x3b, 0x3a, 0x64, 0x51, 0xc2, 0xbc, +}; +static const unsigned char kat2700_addin0[] = { + 0x58, 0x8e, 0xb7, 0x22, 0xd4, 0x06, 0x6c, 0xe1, 0xe9, 0x14, 0x8d, 0x2e, + 0x7a, 0x6d, 0x43, 0xd1, 0xd8, 0xb4, 0x88, 0x6b, 0xd9, 0x7f, 0x36, 0xf2, + 0x45, 0x99, 0xdc, 0xde, 0xdb, 0x63, 0x8d, 0x2e, 0x7c, 0xfc, 0x4b, 0x5e, + 0xa4, 0x6a, 0x45, 0xe1, 0x47, 0x4b, 0xc1, 0x8b, 0x21, 0xb0, 0x7f, 0x14, +}; +static const unsigned char kat2700_addin1[] = { + 0x1b, 0x4e, 0x90, 0x4a, 0x6b, 0x86, 0x12, 0x01, 0x02, 0x85, 0x06, 0x07, + 0x5d, 0x7d, 0x7f, 0xec, 0xb8, 0x11, 0x58, 0xea, 0x37, 0x49, 0x42, 0x1d, + 0x4d, 0x47, 0x10, 0xba, 0x0f, 0xcb, 0x15, 0x7b, 0x50, 0x19, 0xdb, 0xca, + 0x19, 0x9c, 0x83, 0x02, 0xd3, 0x47, 0x45, 0xcb, 0x0c, 0x23, 0x30, 0xb1, +}; +static const unsigned char kat2700_retbits[] = { + 0xd1, 0x55, 0x94, 0x1b, 0x54, 0xab, 0x48, 0xdc, 0x18, 0x66, 0x64, 0x1c, + 0x03, 0x4b, 0x11, 0x7d, 0x6d, 0xd8, 0xa7, 0xd0, 0x68, 0xd2, 0x92, 0x01, + 0x10, 0x5d, 0x84, 0x53, 0x15, 0xdb, 0xc7, 0x47, 0xaf, 0xd8, 0xfb, 0x1f, + 0x9b, 0xa5, 0xc9, 0x76, 0xc7, 0x5f, 0xf8, 0xc7, 0x05, 0x2a, 0xff, 0x7b, + 0x34, 0x2c, 0x14, 0x89, 0xbc, 0x0c, 0x9f, 0x8a, 0x7d, 0x89, 0x8b, 0x88, + 0xed, 0x0d, 0x57, 0x46, +}; +static const struct drbg_kat_pr_false kat2700_t = { + 14, kat2700_entropyin, kat2700_nonce, kat2700_persstr, + kat2700_entropyinreseed, kat2700_addinreseed, kat2700_addin0, + kat2700_addin1, kat2700_retbits +}; +static const struct drbg_kat kat2700 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2700_t +}; + +static const unsigned char kat2701_entropyin[] = { + 0xfc, 0xa0, 0xb6, 0xe5, 0x57, 0xf5, 0x14, 0x30, 0xdd, 0x78, 0x7a, 0xb4, + 0xd3, 0x3f, 0x18, 0xd9, 0xae, 0xc2, 0x19, 0x62, 0x9d, 0x1b, 0x83, 0x9a, + 0x35, 0xca, 0xaf, 0xc8, 0x25, 0xab, 0x55, 0xbe, 0x6a, 0x88, 0x03, 0x21, + 0xbe, 0x58, 0xc1, 0x6e, 0xac, 0xb9, 0x45, 0xb7, 0xbb, 0x7c, 0xad, 0xb7, +}; +static const unsigned char kat2701_nonce[] = {0}; +static const unsigned char kat2701_persstr[] = {0}; +static const unsigned char kat2701_entropyinreseed[] = { + 0x7b, 0x68, 0x49, 0x23, 0xae, 0x50, 0x86, 0x6f, 0x71, 0x0d, 0x3b, 0x5b, + 0x2e, 0xdf, 0x24, 0x45, 0x59, 0x3f, 0xe6, 0x6d, 0x15, 0xf2, 0xdc, 0x73, + 0x5e, 0x2b, 0x0c, 0x27, 0x8f, 0x1c, 0xc9, 0x73, 0x50, 0x75, 0xdd, 0x26, + 0x8b, 0x91, 0x40, 0x8e, 0xf7, 0x3d, 0x55, 0x04, 0x23, 0x54, 0x5a, 0xdc, +}; +static const unsigned char kat2701_addinreseed[] = {0}; +static const unsigned char kat2701_addin0[] = {0}; +static const unsigned char kat2701_addin1[] = {0}; +static const unsigned char kat2701_retbits[] = { + 0x29, 0x37, 0x56, 0x71, 0x40, 0x7b, 0x1a, 0x45, 0xb9, 0xfd, 0x8b, 0x4f, + 0x50, 0x7d, 0xda, 0x23, 0x48, 0x22, 0xd5, 0x57, 0xe4, 0x8b, 0x9a, 0x52, + 0x99, 0x7b, 0x13, 0x75, 0x7e, 0x0c, 0x2f, 0x79, 0x6c, 0x87, 0x41, 0xf9, + 0x4b, 0xc2, 0xbd, 0x0d, 0x8c, 0x98, 0xe5, 0xe2, 0x5e, 0x4c, 0xee, 0x65, + 0xe4, 0xdd, 0x63, 0x4c, 0x98, 0xbc, 0x3b, 0x66, 0xfb, 0x62, 0x79, 0xf9, + 0x46, 0x8a, 0xc8, 0x41, +}; +static const struct drbg_kat_pr_false kat2701_t = { + 0, kat2701_entropyin, kat2701_nonce, kat2701_persstr, + kat2701_entropyinreseed, kat2701_addinreseed, kat2701_addin0, + kat2701_addin1, kat2701_retbits +}; +static const struct drbg_kat kat2701 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2701_t +}; + +static const unsigned char kat2702_entropyin[] = { + 0xf6, 0x0f, 0x77, 0x73, 0xf2, 0x1a, 0x71, 0x9e, 0x98, 0xc1, 0x0d, 0x19, + 0x63, 0xf4, 0x06, 0x90, 0xaf, 0x58, 0xc3, 0x8c, 0x81, 0x5b, 0xa6, 0x50, + 0x7f, 0x76, 0x83, 0x46, 0xf8, 0x95, 0x7e, 0x4c, 0x2e, 0x9c, 0x94, 0x93, + 0x2c, 0xb8, 0xae, 0xc5, 0x44, 0xc1, 0xdc, 0x77, 0x65, 0x91, 0x2f, 0x7a, +}; +static const unsigned char kat2702_nonce[] = {0}; +static const unsigned char kat2702_persstr[] = {0}; +static const unsigned char kat2702_entropyinreseed[] = { + 0x3a, 0x4f, 0x75, 0xac, 0x9b, 0x19, 0xc4, 0x5f, 0xba, 0x3e, 0xad, 0x79, + 0x16, 0x5a, 0xde, 0x8c, 0xa5, 0x6d, 0x33, 0xd0, 0xbf, 0xb2, 0xd9, 0xe0, + 0xbc, 0x2e, 0x4a, 0x9f, 0xaa, 0x2d, 0x86, 0xa7, 0x74, 0xc7, 0x37, 0xd2, + 0x3a, 0x33, 0xa8, 0x60, 0xbd, 0x4b, 0xc4, 0x2c, 0x15, 0x71, 0xc1, 0x60, +}; +static const unsigned char kat2702_addinreseed[] = {0}; +static const unsigned char kat2702_addin0[] = {0}; +static const unsigned char kat2702_addin1[] = {0}; +static const unsigned char kat2702_retbits[] = { + 0x10, 0xf3, 0x86, 0x26, 0x7b, 0xdb, 0x88, 0x5d, 0xdb, 0x55, 0xfc, 0xb5, + 0x06, 0x85, 0x1e, 0xf1, 0x4f, 0x59, 0x8d, 0xac, 0xf1, 0x5b, 0xc8, 0x11, + 0x95, 0xe3, 0x7f, 0x3f, 0xac, 0xde, 0x8b, 0x65, 0x29, 0x1d, 0x03, 0x55, + 0x81, 0x8a, 0x75, 0xd9, 0x6d, 0x4a, 0x65, 0x05, 0x78, 0x97, 0x29, 0xcc, + 0x2c, 0x5d, 0x19, 0x9a, 0x23, 0x2c, 0xb9, 0xd1, 0x17, 0x3e, 0x90, 0xda, + 0x71, 0xcc, 0xb8, 0xac, +}; +static const struct drbg_kat_pr_false kat2702_t = { + 1, kat2702_entropyin, kat2702_nonce, kat2702_persstr, + kat2702_entropyinreseed, kat2702_addinreseed, kat2702_addin0, + kat2702_addin1, kat2702_retbits +}; +static const struct drbg_kat kat2702 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2702_t +}; + +static const unsigned char kat2703_entropyin[] = { + 0xf3, 0x75, 0xd3, 0xd9, 0xf8, 0x56, 0xf3, 0x31, 0x3f, 0xbb, 0xb2, 0xec, + 0xda, 0x79, 0x72, 0xe7, 0xcf, 0xe2, 0x47, 0x66, 0x18, 0x00, 0x53, 0x95, + 0xa3, 0x65, 0x16, 0x5a, 0x2d, 0x75, 0x5a, 0x26, 0xd0, 0x44, 0x52, 0xd4, + 0xf9, 0xab, 0x1b, 0x6f, 0xb4, 0xd4, 0xe3, 0x13, 0x56, 0x05, 0x70, 0x36, +}; +static const unsigned char kat2703_nonce[] = {0}; +static const unsigned char kat2703_persstr[] = {0}; +static const unsigned char kat2703_entropyinreseed[] = { + 0xff, 0xb9, 0xbb, 0x89, 0x2f, 0x95, 0xfe, 0x3c, 0x95, 0xcc, 0x78, 0x99, + 0x0e, 0x8d, 0x9c, 0xab, 0xa0, 0x4d, 0x61, 0x3f, 0xa5, 0xf3, 0x48, 0x99, + 0xa5, 0x92, 0xbd, 0xf5, 0xde, 0x19, 0x70, 0x98, 0xca, 0x4b, 0x6e, 0xfd, + 0xcb, 0xbc, 0x23, 0x7a, 0x34, 0x4c, 0x66, 0x52, 0x0c, 0x11, 0x11, 0x2e, +}; +static const unsigned char kat2703_addinreseed[] = {0}; +static const unsigned char kat2703_addin0[] = {0}; +static const unsigned char kat2703_addin1[] = {0}; +static const unsigned char kat2703_retbits[] = { + 0xf8, 0xf6, 0x92, 0x1d, 0x96, 0xdf, 0xb6, 0x5f, 0x03, 0x8c, 0xa9, 0x93, + 0xc0, 0x17, 0xb2, 0x28, 0xa2, 0x28, 0x3b, 0x3b, 0x8f, 0xcb, 0x5b, 0x22, + 0xa3, 0xd6, 0xc0, 0xf8, 0x2d, 0x7c, 0xf2, 0xa6, 0x8b, 0xc7, 0x21, 0xf1, + 0x13, 0xbf, 0x37, 0x6b, 0x25, 0x6b, 0xf7, 0x38, 0x9f, 0x31, 0xa1, 0x97, + 0x5b, 0x30, 0x40, 0xcd, 0xea, 0x9e, 0x11, 0xb8, 0x3b, 0x23, 0xcc, 0x26, + 0xed, 0x15, 0xa7, 0x81, +}; +static const struct drbg_kat_pr_false kat2703_t = { + 2, kat2703_entropyin, kat2703_nonce, kat2703_persstr, + kat2703_entropyinreseed, kat2703_addinreseed, kat2703_addin0, + kat2703_addin1, kat2703_retbits +}; +static const struct drbg_kat kat2703 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2703_t +}; + +static const unsigned char kat2704_entropyin[] = { + 0x40, 0x1d, 0xd5, 0x0c, 0x95, 0x96, 0xe9, 0x2d, 0xb4, 0x11, 0x65, 0xba, + 0x0e, 0xdd, 0x63, 0x89, 0x77, 0x3d, 0x80, 0x96, 0xcc, 0xa1, 0xfc, 0x59, + 0x6e, 0x4a, 0x58, 0xb7, 0x8f, 0x0c, 0xcf, 0x72, 0x16, 0x96, 0xf2, 0xba, + 0xf2, 0xad, 0x87, 0x46, 0x87, 0xb5, 0xd6, 0xb1, 0xd9, 0x60, 0xbf, 0x15, +}; +static const unsigned char kat2704_nonce[] = {0}; +static const unsigned char kat2704_persstr[] = {0}; +static const unsigned char kat2704_entropyinreseed[] = { + 0x8c, 0x4d, 0xf6, 0xfc, 0x9b, 0x35, 0x81, 0x5d, 0x9d, 0x5a, 0x2d, 0xdd, + 0x8a, 0x62, 0x43, 0x4c, 0x89, 0x92, 0xce, 0x1c, 0x21, 0xad, 0xd1, 0xb9, + 0x6f, 0xe1, 0xe1, 0x74, 0x86, 0xb7, 0x7a, 0xe3, 0x38, 0xfc, 0x65, 0x5b, + 0x32, 0x76, 0x86, 0xbb, 0xa0, 0x11, 0x99, 0x1b, 0x85, 0xb2, 0xfa, 0x0d, +}; +static const unsigned char kat2704_addinreseed[] = {0}; +static const unsigned char kat2704_addin0[] = {0}; +static const unsigned char kat2704_addin1[] = {0}; +static const unsigned char kat2704_retbits[] = { + 0x29, 0xb9, 0xb2, 0x12, 0x7d, 0x14, 0x16, 0x5b, 0xbf, 0xbd, 0x07, 0x55, + 0xa9, 0x65, 0x06, 0xb8, 0xcb, 0xdf, 0x94, 0x16, 0xf3, 0x76, 0x16, 0xbe, + 0xec, 0xa4, 0x4d, 0x94, 0xd5, 0x2f, 0x13, 0x21, 0x18, 0xdc, 0x5a, 0x93, + 0xa9, 0x49, 0x4b, 0x05, 0x82, 0x75, 0x78, 0x8e, 0xd2, 0x08, 0x35, 0x37, + 0x41, 0x81, 0x12, 0x8a, 0xf6, 0x2e, 0x0d, 0x86, 0x20, 0x51, 0x11, 0x5f, + 0x03, 0x99, 0x63, 0x6e, +}; +static const struct drbg_kat_pr_false kat2704_t = { + 3, kat2704_entropyin, kat2704_nonce, kat2704_persstr, + kat2704_entropyinreseed, kat2704_addinreseed, kat2704_addin0, + kat2704_addin1, kat2704_retbits +}; +static const struct drbg_kat kat2704 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2704_t +}; + +static const unsigned char kat2705_entropyin[] = { + 0xd3, 0xff, 0x8f, 0x55, 0x90, 0xec, 0xc6, 0x3f, 0x1d, 0xad, 0x8a, 0x15, + 0xa5, 0xd2, 0x45, 0xdb, 0x51, 0x38, 0xa4, 0x9d, 0x2a, 0xf8, 0xef, 0x89, + 0x01, 0xdf, 0xaa, 0x3a, 0x6a, 0xed, 0xe3, 0xb3, 0xc8, 0xb8, 0x05, 0xdf, + 0xda, 0xe7, 0x3f, 0x62, 0x2e, 0xf6, 0x08, 0xde, 0x43, 0x3c, 0x41, 0x7c, +}; +static const unsigned char kat2705_nonce[] = {0}; +static const unsigned char kat2705_persstr[] = {0}; +static const unsigned char kat2705_entropyinreseed[] = { + 0xd7, 0x90, 0x8a, 0xc9, 0xd3, 0xb4, 0xb7, 0xc4, 0x66, 0x00, 0xc4, 0x7f, + 0x16, 0x47, 0xdd, 0xcc, 0x62, 0x1b, 0x71, 0xb7, 0x55, 0x30, 0xfd, 0x9b, + 0xcf, 0xe0, 0x5e, 0x26, 0xf8, 0x2d, 0xbf, 0xa6, 0x5a, 0x60, 0xa9, 0x61, + 0x4f, 0x0a, 0x09, 0xd0, 0x36, 0x64, 0x19, 0x02, 0x3e, 0xd9, 0xf4, 0xdb, +}; +static const unsigned char kat2705_addinreseed[] = {0}; +static const unsigned char kat2705_addin0[] = {0}; +static const unsigned char kat2705_addin1[] = {0}; +static const unsigned char kat2705_retbits[] = { + 0xb8, 0x3d, 0x06, 0xfc, 0x0e, 0x5b, 0xd3, 0x39, 0x9d, 0x71, 0x6c, 0x7e, + 0x3c, 0xd8, 0x02, 0x9f, 0x79, 0xda, 0x4e, 0x03, 0xa1, 0x77, 0xdd, 0xf4, + 0x25, 0x0c, 0x40, 0x0a, 0xa4, 0xf4, 0xf9, 0x40, 0x83, 0x33, 0x81, 0x3c, + 0x9c, 0xee, 0x37, 0x1a, 0x4d, 0x9f, 0x42, 0x46, 0xaa, 0x7f, 0xe4, 0xb2, + 0x0f, 0xa9, 0x36, 0xa9, 0x16, 0xb3, 0xe1, 0xfa, 0x73, 0x90, 0x1c, 0xe2, + 0x8d, 0xf5, 0x67, 0xcc, +}; +static const struct drbg_kat_pr_false kat2705_t = { + 4, kat2705_entropyin, kat2705_nonce, kat2705_persstr, + kat2705_entropyinreseed, kat2705_addinreseed, kat2705_addin0, + kat2705_addin1, kat2705_retbits +}; +static const struct drbg_kat kat2705 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2705_t +}; + +static const unsigned char kat2706_entropyin[] = { + 0x11, 0x4b, 0xb3, 0x46, 0xcf, 0x39, 0xf2, 0xb1, 0x9a, 0x0c, 0x00, 0x3e, + 0x97, 0x80, 0x95, 0xb6, 0xa5, 0x44, 0x8b, 0x73, 0x9b, 0x6b, 0xed, 0xba, + 0x1d, 0x41, 0x05, 0x3f, 0x79, 0x2d, 0x0a, 0x34, 0xc6, 0x2e, 0xb9, 0xff, + 0x08, 0xc0, 0xd1, 0x61, 0xd3, 0x69, 0xe8, 0xae, 0xa9, 0xf6, 0x81, 0x82, +}; +static const unsigned char kat2706_nonce[] = {0}; +static const unsigned char kat2706_persstr[] = {0}; +static const unsigned char kat2706_entropyinreseed[] = { + 0x73, 0x59, 0xd2, 0x3f, 0xf0, 0x81, 0xa7, 0x76, 0xc2, 0xc9, 0xc3, 0xbc, + 0xed, 0x8e, 0x01, 0xb2, 0xc2, 0xc6, 0xdc, 0xb4, 0x12, 0xa3, 0x37, 0x06, + 0x6f, 0x4c, 0xf5, 0xc6, 0xc3, 0x49, 0x94, 0xfc, 0x0f, 0x6d, 0xa9, 0x70, + 0x12, 0xc9, 0x82, 0xb1, 0x54, 0x40, 0xea, 0x0d, 0x6a, 0xc3, 0x21, 0xff, +}; +static const unsigned char kat2706_addinreseed[] = {0}; +static const unsigned char kat2706_addin0[] = {0}; +static const unsigned char kat2706_addin1[] = {0}; +static const unsigned char kat2706_retbits[] = { + 0x84, 0x84, 0x0c, 0x71, 0x2b, 0xa0, 0x18, 0x24, 0xf8, 0x5c, 0x23, 0x52, + 0x40, 0x24, 0xc2, 0x27, 0x7e, 0xe6, 0x9f, 0xe9, 0x7e, 0xeb, 0x44, 0x29, + 0x94, 0x7c, 0xce, 0xdb, 0x3d, 0x29, 0xcc, 0x20, 0x41, 0x77, 0x57, 0x62, + 0x54, 0x10, 0xf4, 0xf3, 0x0a, 0x68, 0x9b, 0xad, 0xab, 0x50, 0x37, 0x66, + 0x87, 0x36, 0xf8, 0xbe, 0x50, 0xf1, 0x3a, 0xdb, 0x7b, 0x8c, 0xd2, 0xe2, + 0xb9, 0x76, 0x1f, 0x39, +}; +static const struct drbg_kat_pr_false kat2706_t = { + 5, kat2706_entropyin, kat2706_nonce, kat2706_persstr, + kat2706_entropyinreseed, kat2706_addinreseed, kat2706_addin0, + kat2706_addin1, kat2706_retbits +}; +static const struct drbg_kat kat2706 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2706_t +}; + +static const unsigned char kat2707_entropyin[] = { + 0x1d, 0x7a, 0xe2, 0xfe, 0xdc, 0x12, 0xd7, 0xe7, 0x46, 0xd2, 0x59, 0xfd, + 0x17, 0x86, 0x59, 0x22, 0x20, 0xd5, 0x29, 0x3d, 0x97, 0x4b, 0xd8, 0xf0, + 0xc3, 0x95, 0x29, 0xc8, 0x41, 0x7e, 0x04, 0xde, 0x1e, 0x44, 0xf8, 0x07, + 0x4f, 0xcb, 0x90, 0x73, 0x4a, 0x5c, 0x64, 0x8f, 0x5f, 0xba, 0xb7, 0x87, +}; +static const unsigned char kat2707_nonce[] = {0}; +static const unsigned char kat2707_persstr[] = {0}; +static const unsigned char kat2707_entropyinreseed[] = { + 0x82, 0x73, 0xc6, 0xee, 0x3a, 0x82, 0x13, 0x14, 0x64, 0xee, 0x67, 0x59, + 0x13, 0x19, 0xf4, 0x60, 0xef, 0x13, 0x30, 0x3a, 0x36, 0x31, 0x67, 0xfb, + 0x7b, 0x6c, 0x2b, 0x54, 0x89, 0xc7, 0xcd, 0x34, 0x36, 0xbb, 0x11, 0x7b, + 0xfd, 0x92, 0xa9, 0xe4, 0x51, 0xcc, 0x30, 0x19, 0xad, 0xbe, 0x8f, 0xe4, +}; +static const unsigned char kat2707_addinreseed[] = {0}; +static const unsigned char kat2707_addin0[] = {0}; +static const unsigned char kat2707_addin1[] = {0}; +static const unsigned char kat2707_retbits[] = { + 0x05, 0xad, 0xa0, 0xce, 0x82, 0x20, 0x6c, 0x9d, 0x97, 0xf6, 0x60, 0xf3, + 0x3e, 0x6b, 0x0c, 0x22, 0xbd, 0x26, 0x3d, 0xab, 0x58, 0xc4, 0x38, 0xf3, + 0xa9, 0x00, 0xf9, 0xb3, 0x06, 0x29, 0x15, 0xed, 0x2f, 0x27, 0x2c, 0xe5, + 0x11, 0x0d, 0x85, 0xa7, 0xe5, 0x54, 0xbe, 0x35, 0x95, 0xe0, 0xad, 0x0c, + 0x05, 0x84, 0x6f, 0xc3, 0xf0, 0x7f, 0x35, 0xaa, 0xfd, 0x32, 0x42, 0x7f, + 0x1b, 0x96, 0xb4, 0x66, +}; +static const struct drbg_kat_pr_false kat2707_t = { + 6, kat2707_entropyin, kat2707_nonce, kat2707_persstr, + kat2707_entropyinreseed, kat2707_addinreseed, kat2707_addin0, + kat2707_addin1, kat2707_retbits +}; +static const struct drbg_kat kat2707 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2707_t +}; + +static const unsigned char kat2708_entropyin[] = { + 0x10, 0xe7, 0x5f, 0xc1, 0x6a, 0xa8, 0x60, 0xcc, 0x85, 0xb4, 0x4e, 0x1d, + 0x62, 0xbf, 0x05, 0xdd, 0x19, 0x54, 0x16, 0x59, 0x44, 0xf5, 0xaf, 0xce, + 0xe8, 0xb7, 0x14, 0x77, 0x8f, 0x0e, 0x2c, 0x46, 0xe6, 0x70, 0x9c, 0xb9, + 0xee, 0x7d, 0xca, 0x65, 0xd2, 0x7c, 0x58, 0xdb, 0x32, 0x2d, 0x85, 0x56, +}; +static const unsigned char kat2708_nonce[] = {0}; +static const unsigned char kat2708_persstr[] = {0}; +static const unsigned char kat2708_entropyinreseed[] = { + 0x67, 0x7c, 0x91, 0x81, 0xaa, 0x6c, 0x59, 0x61, 0x17, 0x25, 0x5f, 0x46, + 0xb6, 0x9f, 0xbc, 0x2d, 0x64, 0x45, 0x57, 0xbb, 0x8c, 0xf7, 0x27, 0x5e, + 0xcf, 0x15, 0xd2, 0x58, 0xe0, 0x55, 0x9b, 0x6a, 0x55, 0xe3, 0x16, 0xf7, + 0x7c, 0x88, 0xd4, 0x47, 0x0e, 0xf5, 0x5d, 0x9b, 0x4d, 0x01, 0x5f, 0x9e, +}; +static const unsigned char kat2708_addinreseed[] = {0}; +static const unsigned char kat2708_addin0[] = {0}; +static const unsigned char kat2708_addin1[] = {0}; +static const unsigned char kat2708_retbits[] = { + 0x6d, 0xab, 0xd2, 0xc4, 0x1d, 0x07, 0x3e, 0x32, 0xbd, 0xc2, 0x6a, 0xf0, + 0x59, 0x64, 0x61, 0x94, 0x50, 0x48, 0x2d, 0x74, 0xc6, 0xa5, 0x3b, 0x5f, + 0x29, 0xe5, 0x66, 0x9b, 0x03, 0x79, 0xde, 0x22, 0x1f, 0x31, 0x72, 0x7d, + 0x53, 0x03, 0x65, 0xdb, 0x27, 0x16, 0x06, 0x6b, 0xde, 0x88, 0x3e, 0x07, + 0xaa, 0x67, 0x9e, 0x80, 0x11, 0xbe, 0x1d, 0x50, 0x13, 0x14, 0x0a, 0x7f, + 0x97, 0xd7, 0x3f, 0xfc, +}; +static const struct drbg_kat_pr_false kat2708_t = { + 7, kat2708_entropyin, kat2708_nonce, kat2708_persstr, + kat2708_entropyinreseed, kat2708_addinreseed, kat2708_addin0, + kat2708_addin1, kat2708_retbits +}; +static const struct drbg_kat kat2708 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2708_t +}; + +static const unsigned char kat2709_entropyin[] = { + 0x00, 0xe4, 0x87, 0x17, 0xe8, 0xea, 0x0f, 0x20, 0x3d, 0xcc, 0x3a, 0x60, + 0xac, 0xa9, 0x8f, 0x1a, 0xf8, 0xbb, 0xde, 0x96, 0x13, 0x11, 0xdd, 0xa2, + 0x4b, 0xb8, 0xc4, 0x14, 0x51, 0x2c, 0x26, 0x98, 0xfe, 0x08, 0x59, 0x54, + 0x97, 0x9d, 0x76, 0x15, 0xbf, 0x20, 0xa7, 0xbc, 0xb7, 0x3e, 0xa7, 0xa5, +}; +static const unsigned char kat2709_nonce[] = {0}; +static const unsigned char kat2709_persstr[] = {0}; +static const unsigned char kat2709_entropyinreseed[] = { + 0x41, 0xb3, 0xbd, 0x28, 0x2d, 0xc0, 0xd9, 0x6a, 0xbc, 0x61, 0xdb, 0xdd, + 0x1e, 0x3d, 0x61, 0x4b, 0x66, 0x4c, 0x93, 0x63, 0xfd, 0x0a, 0x54, 0x44, + 0x08, 0x4f, 0x46, 0xeb, 0x10, 0xd8, 0xf7, 0x6c, 0x02, 0xa0, 0xc6, 0x0c, + 0xb8, 0x21, 0x70, 0x6b, 0x65, 0x33, 0x5f, 0x04, 0xc5, 0x5f, 0x24, 0xd7, +}; +static const unsigned char kat2709_addinreseed[] = {0}; +static const unsigned char kat2709_addin0[] = {0}; +static const unsigned char kat2709_addin1[] = {0}; +static const unsigned char kat2709_retbits[] = { + 0x21, 0x6b, 0x0b, 0xb7, 0x3f, 0xa6, 0x30, 0x40, 0xc4, 0x4b, 0x45, 0x1f, + 0x8b, 0x8d, 0xd7, 0x9d, 0x2e, 0x6e, 0x9b, 0x27, 0xaa, 0x51, 0xbe, 0x43, + 0xa6, 0x31, 0x96, 0x41, 0xe5, 0x53, 0x01, 0x95, 0x6d, 0xd7, 0xfe, 0xb1, + 0x45, 0xa8, 0xe5, 0x05, 0x8e, 0x83, 0xa5, 0x54, 0x45, 0xcd, 0xb4, 0x8e, + 0x50, 0xa7, 0x09, 0xd0, 0xd2, 0xf7, 0xf1, 0xf3, 0x4e, 0xa1, 0x64, 0x6b, + 0x66, 0x21, 0x84, 0x81, +}; +static const struct drbg_kat_pr_false kat2709_t = { + 8, kat2709_entropyin, kat2709_nonce, kat2709_persstr, + kat2709_entropyinreseed, kat2709_addinreseed, kat2709_addin0, + kat2709_addin1, kat2709_retbits +}; +static const struct drbg_kat kat2709 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2709_t +}; + +static const unsigned char kat2710_entropyin[] = { + 0x52, 0x74, 0x0d, 0x90, 0x61, 0xb0, 0x96, 0x0f, 0x62, 0x7f, 0xc8, 0xc6, + 0x98, 0xb7, 0xbb, 0xdb, 0x80, 0xd5, 0x99, 0xbc, 0x32, 0xb6, 0xb8, 0xc5, + 0x07, 0x45, 0xc9, 0xbf, 0x19, 0x41, 0x5e, 0x8f, 0xf7, 0xec, 0x79, 0x2d, + 0x41, 0x65, 0x89, 0x32, 0x2e, 0x50, 0xea, 0x01, 0x42, 0x60, 0x1f, 0xd7, +}; +static const unsigned char kat2710_nonce[] = {0}; +static const unsigned char kat2710_persstr[] = {0}; +static const unsigned char kat2710_entropyinreseed[] = { + 0xbb, 0x23, 0x2b, 0xa5, 0xa3, 0x58, 0x48, 0xd3, 0x24, 0xdf, 0xe2, 0x95, + 0x69, 0x74, 0x21, 0x25, 0x04, 0x69, 0x18, 0x55, 0x08, 0xcc, 0x79, 0xfc, + 0xbc, 0x79, 0x53, 0x5d, 0x0a, 0x43, 0xdd, 0x4f, 0x16, 0x40, 0xc4, 0x32, + 0x51, 0xa2, 0xb2, 0xc2, 0x90, 0xf0, 0xae, 0x82, 0xe5, 0xf4, 0xe7, 0xbc, +}; +static const unsigned char kat2710_addinreseed[] = {0}; +static const unsigned char kat2710_addin0[] = {0}; +static const unsigned char kat2710_addin1[] = {0}; +static const unsigned char kat2710_retbits[] = { + 0x1c, 0x93, 0xd4, 0xdb, 0xd9, 0x72, 0x54, 0xee, 0xda, 0x5b, 0xc2, 0x5a, + 0x36, 0x2d, 0xb4, 0xb8, 0xb6, 0x78, 0xaf, 0xb0, 0x17, 0x00, 0xe3, 0x7d, + 0xf5, 0x32, 0xfd, 0x39, 0x4d, 0x9b, 0x79, 0x55, 0x36, 0x8a, 0x28, 0x6b, + 0xd2, 0x83, 0x28, 0x73, 0xbb, 0x01, 0xec, 0x1c, 0xc3, 0x09, 0x3a, 0x10, + 0xc1, 0xc2, 0x23, 0xfb, 0x0b, 0xf2, 0x04, 0x72, 0x34, 0x27, 0x07, 0x24, + 0x7c, 0xa4, 0xe3, 0xc8, +}; +static const struct drbg_kat_pr_false kat2710_t = { + 9, kat2710_entropyin, kat2710_nonce, kat2710_persstr, + kat2710_entropyinreseed, kat2710_addinreseed, kat2710_addin0, + kat2710_addin1, kat2710_retbits +}; +static const struct drbg_kat kat2710 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2710_t +}; + +static const unsigned char kat2711_entropyin[] = { + 0x00, 0xa9, 0x48, 0x9b, 0x6e, 0xaa, 0xa9, 0xd7, 0x81, 0xe5, 0xb3, 0xa6, + 0xaa, 0x7a, 0x87, 0x79, 0x80, 0xcd, 0xcd, 0x43, 0xf9, 0x98, 0x9d, 0xa4, + 0xde, 0xd7, 0xed, 0xca, 0x9a, 0x70, 0x55, 0xdb, 0xde, 0xb4, 0x53, 0x66, + 0x8e, 0x9b, 0x2a, 0xff, 0x3d, 0xf6, 0x27, 0x9a, 0xbf, 0x2f, 0x41, 0xd1, +}; +static const unsigned char kat2711_nonce[] = {0}; +static const unsigned char kat2711_persstr[] = {0}; +static const unsigned char kat2711_entropyinreseed[] = { + 0x49, 0x1a, 0xd6, 0x3b, 0xbd, 0xaf, 0x1a, 0x3c, 0xec, 0xc2, 0x0a, 0x94, + 0xa0, 0x23, 0x54, 0xd3, 0xf9, 0xe0, 0x5d, 0xba, 0xb9, 0xbe, 0x9b, 0x9f, + 0xab, 0x21, 0xb7, 0x4b, 0x44, 0xc1, 0xd7, 0x49, 0x03, 0x31, 0xc3, 0x6b, + 0xb8, 0x53, 0x25, 0x11, 0x7c, 0x9f, 0xa9, 0x88, 0x02, 0xa5, 0x8f, 0x77, +}; +static const unsigned char kat2711_addinreseed[] = {0}; +static const unsigned char kat2711_addin0[] = {0}; +static const unsigned char kat2711_addin1[] = {0}; +static const unsigned char kat2711_retbits[] = { + 0xec, 0x0e, 0x9b, 0xf5, 0xc3, 0xd2, 0x0c, 0xab, 0xfe, 0xff, 0x79, 0x48, + 0x85, 0x1f, 0x5d, 0x51, 0xff, 0xae, 0xe6, 0x34, 0x5d, 0x90, 0x48, 0x0e, + 0x56, 0x01, 0xea, 0x1c, 0xf7, 0xdc, 0x4d, 0x04, 0xbd, 0xa3, 0xea, 0x0c, + 0xee, 0x43, 0x87, 0xcf, 0x92, 0x2c, 0x07, 0xdf, 0x82, 0x0f, 0xc8, 0x2b, + 0x8d, 0x03, 0x85, 0xa7, 0xdf, 0x53, 0x0c, 0x97, 0x77, 0x97, 0x83, 0x1f, + 0x6b, 0xc3, 0x65, 0x83, +}; +static const struct drbg_kat_pr_false kat2711_t = { + 10, kat2711_entropyin, kat2711_nonce, kat2711_persstr, + kat2711_entropyinreseed, kat2711_addinreseed, kat2711_addin0, + kat2711_addin1, kat2711_retbits +}; +static const struct drbg_kat kat2711 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2711_t +}; + +static const unsigned char kat2712_entropyin[] = { + 0x16, 0x94, 0xab, 0xa5, 0x88, 0x7e, 0x90, 0xe8, 0x62, 0x13, 0x94, 0x22, + 0x9c, 0x3d, 0x58, 0xec, 0x20, 0xb6, 0xfe, 0x24, 0x89, 0x6d, 0x84, 0x39, + 0x72, 0x82, 0x84, 0x50, 0x41, 0xa5, 0x51, 0x9b, 0x32, 0xa8, 0xcb, 0xa4, + 0x05, 0x10, 0xd9, 0x7d, 0xb6, 0xea, 0x33, 0xeb, 0x93, 0x4f, 0x11, 0xc2, +}; +static const unsigned char kat2712_nonce[] = {0}; +static const unsigned char kat2712_persstr[] = {0}; +static const unsigned char kat2712_entropyinreseed[] = { + 0x6b, 0x01, 0xbb, 0xcf, 0xc8, 0x32, 0x29, 0x94, 0x8e, 0xf2, 0x47, 0x81, + 0x74, 0x10, 0xbe, 0xca, 0x2d, 0xe2, 0x37, 0xce, 0xdd, 0x56, 0x9e, 0x47, + 0xed, 0xd0, 0xe3, 0x0d, 0x57, 0xfb, 0x2a, 0xb1, 0xb7, 0xb4, 0xe0, 0xeb, + 0xac, 0xe0, 0x91, 0x6f, 0x72, 0x66, 0x0e, 0x9d, 0x45, 0x8f, 0x1d, 0xb6, +}; +static const unsigned char kat2712_addinreseed[] = {0}; +static const unsigned char kat2712_addin0[] = {0}; +static const unsigned char kat2712_addin1[] = {0}; +static const unsigned char kat2712_retbits[] = { + 0x8d, 0xd4, 0x64, 0x00, 0xda, 0xe3, 0x5d, 0xaa, 0x5f, 0x89, 0x4d, 0xf7, + 0xa7, 0x2d, 0x6f, 0x54, 0x5a, 0xbd, 0x1b, 0x6a, 0x56, 0x41, 0x87, 0x19, + 0xc9, 0xef, 0x87, 0x69, 0x2d, 0xec, 0xc2, 0x0e, 0x2c, 0x7b, 0xd9, 0x2f, + 0x2c, 0xe5, 0xac, 0xf5, 0xa6, 0x2c, 0xd0, 0xdb, 0xed, 0x86, 0x1a, 0x88, + 0x4c, 0xc2, 0xd3, 0x0d, 0xd2, 0xb5, 0x22, 0x73, 0x93, 0xce, 0x14, 0x76, + 0xa2, 0xc4, 0x22, 0x4b, +}; +static const struct drbg_kat_pr_false kat2712_t = { + 11, kat2712_entropyin, kat2712_nonce, kat2712_persstr, + kat2712_entropyinreseed, kat2712_addinreseed, kat2712_addin0, + kat2712_addin1, kat2712_retbits +}; +static const struct drbg_kat kat2712 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2712_t +}; + +static const unsigned char kat2713_entropyin[] = { + 0x43, 0xf4, 0x70, 0x88, 0x76, 0xba, 0x02, 0x94, 0xd2, 0x2b, 0xd1, 0xbf, + 0xc9, 0xa5, 0xe5, 0xc2, 0x50, 0x69, 0xbc, 0xc0, 0xf4, 0x64, 0x79, 0xb0, + 0x41, 0xce, 0x1a, 0xf4, 0x9b, 0xce, 0x5c, 0xdc, 0x24, 0x55, 0x84, 0x9b, + 0xc3, 0x4e, 0x64, 0x12, 0xc1, 0x03, 0x69, 0x21, 0xab, 0x43, 0x0a, 0x05, +}; +static const unsigned char kat2713_nonce[] = {0}; +static const unsigned char kat2713_persstr[] = {0}; +static const unsigned char kat2713_entropyinreseed[] = { + 0x53, 0xf2, 0x0c, 0x82, 0xd1, 0xc0, 0x33, 0x48, 0x45, 0x19, 0x0d, 0x28, + 0xf9, 0xf7, 0xca, 0xea, 0x76, 0x83, 0xef, 0x4c, 0x6f, 0x76, 0x02, 0x8b, + 0xd6, 0x8d, 0x1e, 0xef, 0xa1, 0x74, 0x59, 0xa6, 0xf2, 0x41, 0xc8, 0xf1, + 0x81, 0x90, 0x7c, 0x12, 0x23, 0xc8, 0x1d, 0x5f, 0x82, 0x97, 0x51, 0xca, +}; +static const unsigned char kat2713_addinreseed[] = {0}; +static const unsigned char kat2713_addin0[] = {0}; +static const unsigned char kat2713_addin1[] = {0}; +static const unsigned char kat2713_retbits[] = { + 0xdb, 0xae, 0xd5, 0x92, 0xb1, 0x08, 0x53, 0xda, 0x9f, 0xe8, 0x16, 0xd2, + 0xc7, 0x01, 0x07, 0xef, 0x55, 0xb6, 0x78, 0xdb, 0xf1, 0x45, 0xb2, 0xb3, + 0x74, 0x99, 0x74, 0x0d, 0x56, 0xf1, 0x88, 0xe1, 0xd0, 0xb7, 0xc8, 0x61, + 0x35, 0x03, 0x53, 0x9a, 0x62, 0x2c, 0xc0, 0x66, 0x74, 0xbc, 0xd1, 0x0c, + 0x18, 0xf4, 0x09, 0x69, 0x27, 0x3b, 0xd3, 0x39, 0x7d, 0xb8, 0x68, 0x9b, + 0x7f, 0xaf, 0xca, 0xd6, +}; +static const struct drbg_kat_pr_false kat2713_t = { + 12, kat2713_entropyin, kat2713_nonce, kat2713_persstr, + kat2713_entropyinreseed, kat2713_addinreseed, kat2713_addin0, + kat2713_addin1, kat2713_retbits +}; +static const struct drbg_kat kat2713 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2713_t +}; + +static const unsigned char kat2714_entropyin[] = { + 0xd3, 0x87, 0x08, 0x57, 0xb4, 0x86, 0xc2, 0x84, 0x40, 0x51, 0xe9, 0xe5, + 0xd9, 0x37, 0xb1, 0xff, 0x7c, 0x8c, 0x90, 0xa3, 0x78, 0xa9, 0xed, 0x76, + 0x6e, 0xc5, 0xe0, 0xa8, 0x3e, 0x43, 0x11, 0xb8, 0x3b, 0x92, 0xa8, 0xe8, + 0xbd, 0x59, 0x1d, 0x5b, 0x9a, 0xf5, 0x37, 0x15, 0x8e, 0x34, 0xb3, 0xd7, +}; +static const unsigned char kat2714_nonce[] = {0}; +static const unsigned char kat2714_persstr[] = {0}; +static const unsigned char kat2714_entropyinreseed[] = { + 0xf4, 0x8c, 0x35, 0x51, 0x24, 0xc3, 0x4e, 0x02, 0x0f, 0xde, 0x83, 0x53, + 0x2c, 0x62, 0x67, 0x66, 0xc7, 0x1b, 0x85, 0xe3, 0x21, 0x4d, 0x37, 0xaa, + 0x63, 0xb4, 0xf3, 0x00, 0x15, 0x96, 0x95, 0x24, 0x28, 0x18, 0x73, 0xa6, + 0xec, 0x9e, 0x47, 0xc2, 0xb0, 0xa6, 0x1e, 0x23, 0xd7, 0x82, 0x3a, 0xc1, +}; +static const unsigned char kat2714_addinreseed[] = {0}; +static const unsigned char kat2714_addin0[] = {0}; +static const unsigned char kat2714_addin1[] = {0}; +static const unsigned char kat2714_retbits[] = { + 0x62, 0xfe, 0x61, 0xcc, 0x6b, 0xe7, 0x13, 0x29, 0x32, 0x31, 0x97, 0x9d, + 0xf1, 0x24, 0x25, 0x80, 0x66, 0xdd, 0x3b, 0xc5, 0x6f, 0x44, 0x33, 0x38, + 0x89, 0x78, 0x3d, 0xa7, 0xfd, 0x80, 0x75, 0xd8, 0xbe, 0x62, 0x39, 0xbe, + 0xd1, 0xbe, 0xcd, 0xfb, 0xe6, 0xbd, 0x71, 0x35, 0x2b, 0xc7, 0x7c, 0x38, + 0xd9, 0x51, 0x1b, 0xe5, 0xdf, 0x7a, 0x7d, 0xbd, 0xc4, 0x0d, 0x7f, 0x23, + 0x6d, 0x0e, 0x8d, 0x20, +}; +static const struct drbg_kat_pr_false kat2714_t = { + 13, kat2714_entropyin, kat2714_nonce, kat2714_persstr, + kat2714_entropyinreseed, kat2714_addinreseed, kat2714_addin0, + kat2714_addin1, kat2714_retbits +}; +static const struct drbg_kat kat2714 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2714_t +}; + +static const unsigned char kat2715_entropyin[] = { + 0x68, 0xe9, 0x1e, 0x73, 0x62, 0x3f, 0xa6, 0xa3, 0xce, 0x22, 0xf4, 0x24, + 0xe9, 0xdb, 0x97, 0x14, 0x59, 0xdf, 0xbe, 0x06, 0x60, 0x1c, 0xcf, 0xf9, + 0x6f, 0x17, 0x26, 0xfa, 0x18, 0xe6, 0x1d, 0x5c, 0xdc, 0x1d, 0xf9, 0x75, + 0x19, 0xc8, 0xe7, 0x19, 0x0a, 0xb6, 0xaa, 0xbf, 0x95, 0xbd, 0x1e, 0xe8, +}; +static const unsigned char kat2715_nonce[] = {0}; +static const unsigned char kat2715_persstr[] = {0}; +static const unsigned char kat2715_entropyinreseed[] = { + 0x24, 0x9b, 0x56, 0xdc, 0xdc, 0x4c, 0x5c, 0x8e, 0xaf, 0x79, 0x6c, 0x86, + 0x85, 0xa7, 0x40, 0xfd, 0x4e, 0xa2, 0x45, 0x5c, 0x13, 0x5e, 0x0d, 0x7b, + 0x8e, 0x50, 0x53, 0x2f, 0xd8, 0x7c, 0x95, 0xb7, 0x81, 0xc8, 0xf3, 0x77, + 0x5c, 0x21, 0x3c, 0x27, 0x14, 0xee, 0xce, 0xf1, 0x40, 0x12, 0x5b, 0x78, +}; +static const unsigned char kat2715_addinreseed[] = {0}; +static const unsigned char kat2715_addin0[] = {0}; +static const unsigned char kat2715_addin1[] = {0}; +static const unsigned char kat2715_retbits[] = { + 0xa1, 0x5d, 0x3d, 0x61, 0x40, 0x8d, 0xde, 0xa3, 0xb9, 0x75, 0x3c, 0x85, + 0x4c, 0x69, 0x3c, 0xa1, 0xa9, 0x1c, 0xf4, 0x9d, 0x17, 0x21, 0x60, 0xbf, + 0x15, 0xf5, 0x12, 0xf3, 0x45, 0xbb, 0x1b, 0xda, 0x9a, 0xa7, 0xbc, 0x4f, + 0xcc, 0xe1, 0x77, 0xfd, 0xfe, 0xbb, 0x3f, 0xea, 0x4c, 0xc6, 0x40, 0x4c, + 0x60, 0x24, 0x52, 0x7e, 0xa6, 0x62, 0x66, 0x9a, 0x5e, 0xb7, 0x87, 0x53, + 0x82, 0x2b, 0xfd, 0xd3, +}; +static const struct drbg_kat_pr_false kat2715_t = { + 14, kat2715_entropyin, kat2715_nonce, kat2715_persstr, + kat2715_entropyinreseed, kat2715_addinreseed, kat2715_addin0, + kat2715_addin1, kat2715_retbits +}; +static const struct drbg_kat kat2715 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2715_t +}; + +static const unsigned char kat2716_entropyin[] = { + 0x79, 0x1f, 0xa5, 0xe8, 0x1f, 0x80, 0xe8, 0xb1, 0x41, 0xe2, 0x28, 0xa0, + 0xd6, 0x23, 0x43, 0x6f, 0x3b, 0xb5, 0x23, 0xd8, 0xa0, 0x3e, 0x98, 0xb0, + 0x23, 0x47, 0x05, 0xcd, 0x8b, 0x9d, 0x94, 0xbe, 0x97, 0x94, 0xa2, 0xf6, + 0xff, 0xe0, 0x29, 0xa8, 0x53, 0xa6, 0x27, 0xf9, 0x26, 0x0f, 0xbc, 0x7e, +}; +static const unsigned char kat2716_nonce[] = {0}; +static const unsigned char kat2716_persstr[] = {0}; +static const unsigned char kat2716_entropyinreseed[] = { + 0xfe, 0x04, 0x24, 0x55, 0x37, 0x63, 0x7c, 0xef, 0x4c, 0x8c, 0x5c, 0xd3, + 0x3b, 0xa9, 0x41, 0xd5, 0xaa, 0x03, 0xca, 0x9f, 0x1d, 0xeb, 0x58, 0x69, + 0x79, 0x12, 0x35, 0x21, 0xaa, 0x81, 0x15, 0x98, 0xf8, 0x1c, 0x0c, 0x44, + 0x34, 0x69, 0xb0, 0x29, 0xba, 0xd0, 0xbb, 0x7f, 0xb0, 0xc9, 0x9f, 0x82, +}; +static const unsigned char kat2716_addinreseed[] = { + 0xef, 0xc1, 0x27, 0xb0, 0x13, 0xc3, 0x4b, 0x70, 0xa9, 0xf2, 0x84, 0xfd, + 0x1d, 0xf3, 0xbe, 0x0f, 0x28, 0x85, 0xd3, 0xca, 0xbe, 0x06, 0x67, 0x76, + 0x2f, 0x0e, 0xa8, 0x07, 0x34, 0x0e, 0x29, 0xd6, 0x5c, 0xc2, 0xc0, 0xf9, + 0x62, 0xf5, 0x43, 0x57, 0x70, 0x6c, 0xa0, 0xb6, 0xfc, 0x1f, 0x2e, 0x22, +}; +static const unsigned char kat2716_addin0[] = { + 0x6c, 0x68, 0xa2, 0xf1, 0xe5, 0x95, 0x5d, 0xc8, 0x38, 0x29, 0xa7, 0xe5, + 0xac, 0xbb, 0x9e, 0x11, 0x02, 0x87, 0x52, 0x40, 0x32, 0xf0, 0xee, 0x91, + 0x4a, 0x78, 0x3c, 0x56, 0x1a, 0x1f, 0x44, 0x4a, 0xea, 0xe6, 0x8a, 0x35, + 0x56, 0x7d, 0x44, 0x3c, 0x0c, 0x91, 0x8e, 0x38, 0xc5, 0x65, 0x06, 0x7a, +}; +static const unsigned char kat2716_addin1[] = { + 0x8a, 0x68, 0x25, 0x42, 0x05, 0x31, 0xf9, 0x24, 0x93, 0x5c, 0xf3, 0x38, + 0xd6, 0x8d, 0xf9, 0x9f, 0x0f, 0x7c, 0xfa, 0x32, 0xeb, 0x9d, 0x00, 0x24, + 0x68, 0xe6, 0xb2, 0x62, 0x1f, 0x09, 0x55, 0xa8, 0x2b, 0x2c, 0x4a, 0xc7, + 0x54, 0xba, 0x0c, 0x8e, 0xed, 0x24, 0xc5, 0xd8, 0xe9, 0x03, 0x63, 0xc6, +}; +static const unsigned char kat2716_retbits[] = { + 0x65, 0x8d, 0xd9, 0x7b, 0x30, 0xa6, 0x43, 0x26, 0x90, 0xc6, 0x23, 0x22, + 0xee, 0x93, 0x3b, 0x44, 0xdb, 0xe5, 0x4d, 0x64, 0x64, 0x4a, 0x59, 0xd9, + 0xb9, 0x44, 0xbf, 0xf4, 0x7c, 0x3d, 0xbc, 0x1c, 0x9f, 0x12, 0x3a, 0x53, + 0xb8, 0x99, 0xd9, 0xb8, 0x6d, 0xcf, 0xa1, 0xed, 0x1d, 0x5f, 0xbf, 0xee, + 0xb9, 0x03, 0x3d, 0xfd, 0xf2, 0x91, 0xf9, 0xe8, 0x43, 0x56, 0x83, 0x09, + 0x46, 0x4d, 0x23, 0xd1, +}; +static const struct drbg_kat_pr_false kat2716_t = { + 0, kat2716_entropyin, kat2716_nonce, kat2716_persstr, + kat2716_entropyinreseed, kat2716_addinreseed, kat2716_addin0, + kat2716_addin1, kat2716_retbits +}; +static const struct drbg_kat kat2716 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2716_t +}; + +static const unsigned char kat2717_entropyin[] = { + 0x67, 0x93, 0x8e, 0x50, 0xe2, 0xd6, 0x90, 0xcb, 0xd3, 0xb6, 0xe1, 0x57, + 0xf7, 0xd5, 0xee, 0x7f, 0x0d, 0x54, 0x00, 0x95, 0xc5, 0x58, 0xe0, 0x56, + 0x0b, 0xef, 0x48, 0x4a, 0xbd, 0x67, 0xd7, 0xb0, 0x98, 0x5a, 0xdc, 0xa7, + 0x83, 0x89, 0xaa, 0x46, 0x7c, 0x63, 0x06, 0x6f, 0x5f, 0x83, 0x05, 0x3d, +}; +static const unsigned char kat2717_nonce[] = {0}; +static const unsigned char kat2717_persstr[] = {0}; +static const unsigned char kat2717_entropyinreseed[] = { + 0x3d, 0xbf, 0x9a, 0xaa, 0xdd, 0x0d, 0xc4, 0xdb, 0x5d, 0x5e, 0x36, 0xfa, + 0x77, 0x03, 0x17, 0xc4, 0xec, 0x2e, 0x57, 0x3a, 0xb9, 0x0f, 0x09, 0xdc, + 0x10, 0x27, 0xa7, 0xea, 0x24, 0x1a, 0x9b, 0x23, 0xb7, 0x08, 0x48, 0xe6, + 0x92, 0xff, 0x31, 0x17, 0xd6, 0x51, 0x9c, 0x25, 0x8d, 0x58, 0xea, 0x73, +}; +static const unsigned char kat2717_addinreseed[] = { + 0x04, 0x6a, 0xdc, 0x95, 0x42, 0x97, 0x65, 0x9c, 0x95, 0x28, 0x85, 0xff, + 0xe5, 0x68, 0xc0, 0xad, 0x2b, 0x7b, 0x16, 0x04, 0x16, 0x58, 0x84, 0x16, + 0x51, 0xb8, 0x08, 0x16, 0x7d, 0x99, 0x63, 0x9f, 0x4e, 0xa3, 0x24, 0x41, + 0x84, 0x8d, 0x03, 0xe1, 0x48, 0xc4, 0xaf, 0xfc, 0x4b, 0xec, 0xed, 0x13, +}; +static const unsigned char kat2717_addin0[] = { + 0xc3, 0x62, 0x2c, 0xa8, 0x49, 0xdc, 0x70, 0x93, 0xdc, 0xea, 0x24, 0xa1, + 0x46, 0xae, 0x23, 0x1d, 0x8a, 0x03, 0xf9, 0x04, 0xa5, 0x0c, 0x21, 0x87, + 0x08, 0x5b, 0xb7, 0x65, 0x57, 0xb5, 0xe5, 0xba, 0xbb, 0xb7, 0x8f, 0x50, + 0x2e, 0x24, 0x0c, 0x03, 0x79, 0xf4, 0xe6, 0xc7, 0x2e, 0xaf, 0x33, 0x82, +}; +static const unsigned char kat2717_addin1[] = { + 0xf4, 0x37, 0x85, 0x36, 0x10, 0x12, 0xa3, 0xb7, 0xc6, 0xf0, 0x86, 0x4a, + 0x3c, 0xd3, 0x82, 0x80, 0x0c, 0x45, 0x0b, 0xe0, 0xe2, 0xf0, 0x9c, 0x77, + 0x37, 0xf5, 0xa4, 0xc3, 0xa1, 0x98, 0xaa, 0xac, 0xc7, 0x87, 0x9f, 0x92, + 0x42, 0xe1, 0x83, 0x34, 0xc9, 0x43, 0x66, 0x05, 0x1a, 0xa5, 0xf7, 0x4f, +}; +static const unsigned char kat2717_retbits[] = { + 0x2e, 0x95, 0x8a, 0xbb, 0xee, 0x0a, 0x85, 0x57, 0x9b, 0x35, 0xb0, 0x8a, + 0x07, 0xe6, 0x0b, 0xea, 0x67, 0xa4, 0x72, 0x34, 0x0b, 0x78, 0xdc, 0x3c, + 0x3f, 0x5a, 0x27, 0x31, 0x82, 0x8c, 0x3f, 0x4d, 0x8a, 0xef, 0x3f, 0xbb, + 0x6f, 0xe6, 0x22, 0x13, 0x3c, 0x15, 0x04, 0x84, 0x9d, 0xfa, 0x8f, 0x04, + 0x62, 0x1b, 0x5b, 0x3f, 0xe5, 0xd9, 0xea, 0x64, 0xdb, 0x70, 0x93, 0x1d, + 0xfd, 0xd6, 0x22, 0xe3, +}; +static const struct drbg_kat_pr_false kat2717_t = { + 1, kat2717_entropyin, kat2717_nonce, kat2717_persstr, + kat2717_entropyinreseed, kat2717_addinreseed, kat2717_addin0, + kat2717_addin1, kat2717_retbits +}; +static const struct drbg_kat kat2717 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2717_t +}; + +static const unsigned char kat2718_entropyin[] = { + 0x39, 0xc4, 0x02, 0x6c, 0x12, 0x99, 0x11, 0x58, 0x60, 0x04, 0xfb, 0x5b, + 0x48, 0xcb, 0x3d, 0x0e, 0xab, 0x46, 0x5d, 0x1a, 0xed, 0x16, 0xa4, 0x71, + 0x99, 0xd7, 0x40, 0x51, 0x37, 0xff, 0x14, 0x28, 0x29, 0xc5, 0x07, 0xa6, + 0x6e, 0x70, 0x23, 0xf9, 0x38, 0xd5, 0xcf, 0x03, 0x64, 0x6f, 0x55, 0xc0, +}; +static const unsigned char kat2718_nonce[] = {0}; +static const unsigned char kat2718_persstr[] = {0}; +static const unsigned char kat2718_entropyinreseed[] = { + 0x84, 0x76, 0x30, 0x08, 0x35, 0x43, 0xd0, 0xb3, 0x31, 0xff, 0xbd, 0xdf, + 0x05, 0x99, 0x53, 0x0d, 0xb9, 0x4e, 0x37, 0x8f, 0xdc, 0x17, 0x2d, 0xe2, + 0x78, 0x1a, 0x28, 0xf7, 0x4d, 0x94, 0x37, 0xbe, 0x2c, 0xb4, 0x52, 0x32, + 0xd9, 0xc6, 0x89, 0x23, 0x92, 0x27, 0x42, 0xdc, 0xf2, 0xac, 0xef, 0xd5, +}; +static const unsigned char kat2718_addinreseed[] = { + 0xfc, 0x5a, 0x55, 0xd8, 0x28, 0xaf, 0x7e, 0xc6, 0xe6, 0xce, 0x68, 0xd6, + 0x60, 0xc8, 0xfa, 0x2b, 0x85, 0x21, 0x01, 0x67, 0xe0, 0x12, 0x31, 0x6b, + 0x7c, 0x41, 0x58, 0x80, 0x52, 0xb6, 0xd3, 0x24, 0x41, 0x4d, 0xb3, 0xc4, + 0x77, 0xc0, 0x7d, 0xdf, 0xb7, 0xe0, 0xb7, 0xfc, 0x76, 0xc5, 0x93, 0x54, +}; +static const unsigned char kat2718_addin0[] = { + 0x01, 0x9d, 0xb1, 0x90, 0xc9, 0xb3, 0x5f, 0xb0, 0xd3, 0x5e, 0x2a, 0x92, + 0x1f, 0x2b, 0xf3, 0x57, 0x6f, 0x1a, 0x1f, 0xf2, 0xc5, 0x89, 0x57, 0xdd, + 0x2a, 0xc4, 0xc7, 0x45, 0x28, 0x3b, 0xa9, 0x17, 0xed, 0xdb, 0x5d, 0xea, + 0x40, 0x79, 0xef, 0x9a, 0x43, 0xad, 0x0c, 0x5e, 0xa9, 0xfb, 0xdd, 0xc2, +}; +static const unsigned char kat2718_addin1[] = { + 0x51, 0xf1, 0x49, 0x3e, 0xaf, 0x56, 0x47, 0xc3, 0xda, 0x74, 0x31, 0x4d, + 0xff, 0xa1, 0xf0, 0xaf, 0x27, 0x9b, 0x3b, 0x93, 0x1a, 0xa0, 0x40, 0x35, + 0x33, 0x31, 0xd9, 0x0e, 0xc7, 0x9d, 0x1c, 0x01, 0xeb, 0xd2, 0xf2, 0x01, + 0x45, 0x7b, 0x7b, 0xb0, 0x96, 0xef, 0x80, 0xc7, 0xc9, 0x4e, 0xf9, 0x7a, +}; +static const unsigned char kat2718_retbits[] = { + 0xe8, 0xe2, 0x21, 0xed, 0xb4, 0x41, 0x47, 0x0c, 0x5f, 0x00, 0x20, 0xf9, + 0x16, 0xb9, 0x5b, 0x9e, 0xa8, 0x18, 0xc8, 0x28, 0xe3, 0xd3, 0x6e, 0x67, + 0xd4, 0x63, 0xdd, 0xd1, 0x35, 0xbe, 0xf9, 0x13, 0x87, 0xf5, 0x69, 0xf2, + 0xf2, 0xd7, 0xd0, 0xd9, 0x1e, 0x49, 0x28, 0x69, 0x6e, 0xc2, 0xfa, 0x9f, + 0x55, 0x55, 0xbf, 0x9d, 0xbd, 0x02, 0x2d, 0x17, 0x97, 0xa6, 0x2f, 0x3e, + 0x0b, 0x12, 0x92, 0x6d, +}; +static const struct drbg_kat_pr_false kat2718_t = { + 2, kat2718_entropyin, kat2718_nonce, kat2718_persstr, + kat2718_entropyinreseed, kat2718_addinreseed, kat2718_addin0, + kat2718_addin1, kat2718_retbits +}; +static const struct drbg_kat kat2718 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2718_t +}; + +static const unsigned char kat2719_entropyin[] = { + 0xd4, 0x4d, 0x6e, 0x6b, 0xc7, 0x42, 0xc9, 0x94, 0x60, 0x03, 0x3a, 0x10, + 0x28, 0xf5, 0x1d, 0xa3, 0x82, 0x84, 0xa3, 0xa4, 0x22, 0x44, 0x90, 0x3d, + 0xb3, 0x83, 0xcb, 0x2c, 0xe7, 0x54, 0xdf, 0x46, 0x8e, 0xd0, 0x7c, 0xfa, + 0x40, 0x96, 0xd2, 0x95, 0x32, 0xd1, 0x34, 0x14, 0xde, 0x81, 0x01, 0xb3, +}; +static const unsigned char kat2719_nonce[] = {0}; +static const unsigned char kat2719_persstr[] = {0}; +static const unsigned char kat2719_entropyinreseed[] = { + 0x90, 0xc6, 0x3b, 0x62, 0x4e, 0x22, 0xbe, 0x43, 0xa5, 0x99, 0xf5, 0xc5, + 0xb0, 0x66, 0x52, 0x5b, 0x3d, 0xbc, 0xf1, 0x6a, 0xe7, 0x4b, 0xaa, 0x9c, + 0x84, 0xd0, 0xe5, 0x6a, 0x6b, 0xa0, 0x4b, 0x71, 0x3f, 0x9d, 0x1b, 0x34, + 0x52, 0x92, 0x52, 0x6f, 0xc8, 0xe8, 0xf6, 0xd8, 0x2f, 0x49, 0x34, 0xd1, +}; +static const unsigned char kat2719_addinreseed[] = { + 0x91, 0xb2, 0x1d, 0xc2, 0x3b, 0x63, 0x99, 0x2e, 0xe4, 0x6d, 0xd0, 0x9e, + 0x35, 0xad, 0xf4, 0x17, 0xbc, 0x36, 0x92, 0xaa, 0xa6, 0x05, 0xae, 0x0d, + 0xb0, 0x00, 0x1f, 0x9e, 0x8b, 0x3c, 0xa3, 0x35, 0x3d, 0xa3, 0x83, 0x08, + 0xde, 0x5a, 0xd3, 0x28, 0xf1, 0x36, 0x3a, 0x33, 0x4e, 0x88, 0x0e, 0x09, +}; +static const unsigned char kat2719_addin0[] = { + 0x96, 0x9d, 0x80, 0x70, 0xe5, 0xa5, 0x35, 0x51, 0xcb, 0xaa, 0x6c, 0x86, + 0x92, 0x4f, 0xf5, 0x8c, 0x72, 0x0f, 0xa4, 0xee, 0x5a, 0x81, 0xf0, 0x22, + 0x4b, 0x64, 0xb0, 0xa0, 0xa1, 0xe4, 0xa6, 0x4a, 0x3c, 0xdc, 0x69, 0x52, + 0x22, 0xc6, 0xf3, 0x84, 0xe0, 0xbc, 0x5e, 0x3d, 0xf1, 0xd7, 0x61, 0x22, +}; +static const unsigned char kat2719_addin1[] = { + 0x1e, 0x88, 0x89, 0x83, 0xb3, 0x98, 0xd0, 0xa5, 0xff, 0x8f, 0x25, 0xb8, + 0xdc, 0x69, 0x2a, 0x8a, 0x62, 0x15, 0xa4, 0x90, 0xb0, 0x42, 0xc2, 0x6e, + 0xc1, 0xd6, 0xcb, 0xd0, 0xbe, 0x24, 0xe7, 0xdb, 0xfb, 0x3f, 0xd9, 0x10, + 0xbf, 0x22, 0xa9, 0xfb, 0x78, 0x15, 0x6d, 0xfa, 0x94, 0x2d, 0x0a, 0xd8, +}; +static const unsigned char kat2719_retbits[] = { + 0x0e, 0xed, 0x7d, 0x0b, 0x13, 0xb0, 0x86, 0x94, 0x55, 0x9d, 0x74, 0x38, + 0xa7, 0x77, 0x1c, 0x31, 0x27, 0xbf, 0xc0, 0xa3, 0x51, 0xcf, 0xfc, 0x1f, + 0x5b, 0x32, 0x8b, 0xdf, 0x7f, 0x6f, 0xfb, 0xde, 0xc6, 0x6b, 0xfa, 0xa3, + 0xd3, 0xf0, 0x60, 0x39, 0x90, 0x99, 0x12, 0x6d, 0x4b, 0xf5, 0x88, 0xb8, + 0xc6, 0x7b, 0x9f, 0x2e, 0xc5, 0x09, 0xcf, 0x11, 0x1b, 0xef, 0xed, 0xa7, + 0xeb, 0xfc, 0x5a, 0xd8, +}; +static const struct drbg_kat_pr_false kat2719_t = { + 3, kat2719_entropyin, kat2719_nonce, kat2719_persstr, + kat2719_entropyinreseed, kat2719_addinreseed, kat2719_addin0, + kat2719_addin1, kat2719_retbits +}; +static const struct drbg_kat kat2719 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2719_t +}; + +static const unsigned char kat2720_entropyin[] = { + 0xa5, 0x26, 0xf4, 0x71, 0x4b, 0x36, 0x83, 0x03, 0xb4, 0x6f, 0x21, 0x3c, + 0xa0, 0x3f, 0x43, 0x1c, 0x6d, 0x3f, 0x7a, 0xe0, 0xb0, 0xc6, 0xba, 0xe4, + 0x0a, 0xce, 0x63, 0xf2, 0x70, 0x23, 0xfd, 0x6a, 0x89, 0x63, 0xb7, 0x40, + 0xde, 0xb4, 0xd1, 0x2e, 0x92, 0x4f, 0x8b, 0xde, 0x93, 0x19, 0x1e, 0x1f, +}; +static const unsigned char kat2720_nonce[] = {0}; +static const unsigned char kat2720_persstr[] = {0}; +static const unsigned char kat2720_entropyinreseed[] = { + 0xb8, 0xf1, 0x45, 0x4e, 0x83, 0x53, 0xe2, 0x3f, 0xf3, 0x61, 0x4f, 0xd8, + 0x55, 0xcb, 0xcc, 0x17, 0x8b, 0x3c, 0x95, 0x34, 0x55, 0xe7, 0x0a, 0x98, + 0x16, 0x85, 0xe4, 0x7b, 0xce, 0xe9, 0xb1, 0xb6, 0xd4, 0x46, 0x2a, 0x4b, + 0x1c, 0x49, 0x07, 0x03, 0x27, 0x3e, 0xe1, 0xa7, 0x33, 0xe9, 0xa3, 0x44, +}; +static const unsigned char kat2720_addinreseed[] = { + 0x4b, 0x51, 0xf0, 0xaf, 0x14, 0x42, 0xcd, 0xab, 0x24, 0x97, 0xf3, 0x5b, + 0x58, 0x17, 0x96, 0xdd, 0x5b, 0xf7, 0x69, 0x97, 0xc3, 0x28, 0x2f, 0x84, + 0x2f, 0xe2, 0x88, 0x40, 0x7e, 0xc9, 0x83, 0x81, 0x8e, 0x52, 0xd1, 0x8d, + 0xdc, 0x27, 0xd5, 0xa0, 0xef, 0x16, 0x14, 0x1c, 0x28, 0x9b, 0x8f, 0x44, +}; +static const unsigned char kat2720_addin0[] = { + 0x6c, 0x37, 0xcd, 0x5a, 0xa6, 0xdb, 0x94, 0xa1, 0x7b, 0xa3, 0x98, 0x00, + 0x67, 0xf2, 0x5e, 0x03, 0xf6, 0x54, 0x73, 0xb8, 0xf2, 0xdb, 0xe5, 0x6a, + 0x0f, 0x12, 0x45, 0x2a, 0xc2, 0x70, 0x99, 0x90, 0x9e, 0x20, 0x33, 0x2b, + 0x39, 0x4a, 0xb2, 0x36, 0x4d, 0x5e, 0x80, 0x3c, 0x9b, 0x05, 0xce, 0xea, +}; +static const unsigned char kat2720_addin1[] = { + 0x16, 0x2a, 0x95, 0xc2, 0xb7, 0x7e, 0xe5, 0xbb, 0x30, 0x12, 0xcf, 0x0c, + 0x18, 0x31, 0xa7, 0xee, 0x2e, 0xd3, 0xe0, 0x7a, 0x35, 0x0f, 0x3b, 0x06, + 0x55, 0x77, 0x79, 0x1c, 0xef, 0x78, 0xc1, 0xaf, 0xd4, 0x9b, 0xa1, 0x17, + 0x80, 0xaa, 0xa1, 0xc4, 0x49, 0x43, 0xd6, 0x2d, 0x0f, 0xcd, 0x5b, 0xc9, +}; +static const unsigned char kat2720_retbits[] = { + 0xdf, 0x89, 0x48, 0x35, 0xe0, 0x70, 0x73, 0xba, 0x4f, 0x0f, 0x75, 0xc4, + 0x80, 0xf8, 0x68, 0x78, 0xd1, 0xfb, 0xca, 0x27, 0xf7, 0xb4, 0xf9, 0xa8, + 0x26, 0x83, 0x9d, 0x76, 0xef, 0x17, 0x29, 0x91, 0xdf, 0x4f, 0xcc, 0x86, + 0x8b, 0x75, 0x40, 0x8e, 0xca, 0x2a, 0x6e, 0xaf, 0xb6, 0x2f, 0x9c, 0xa6, + 0xad, 0x9a, 0x93, 0x35, 0xe3, 0x63, 0xc6, 0x27, 0xdf, 0xc8, 0xf2, 0x32, + 0xcf, 0x25, 0x4a, 0x1e, +}; +static const struct drbg_kat_pr_false kat2720_t = { + 4, kat2720_entropyin, kat2720_nonce, kat2720_persstr, + kat2720_entropyinreseed, kat2720_addinreseed, kat2720_addin0, + kat2720_addin1, kat2720_retbits +}; +static const struct drbg_kat kat2720 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2720_t +}; + +static const unsigned char kat2721_entropyin[] = { + 0xe7, 0xcf, 0x17, 0x41, 0x47, 0x8a, 0x81, 0xe4, 0x09, 0x0c, 0xe2, 0x08, + 0xc5, 0xb8, 0x30, 0x0c, 0xeb, 0x54, 0x87, 0xe0, 0x6c, 0x83, 0xde, 0xe0, + 0x86, 0x05, 0x10, 0x9c, 0xb0, 0x0c, 0xb5, 0x2d, 0x1c, 0x3a, 0x72, 0x18, + 0x71, 0x22, 0xc9, 0x65, 0xf6, 0x8c, 0x5e, 0x7e, 0x54, 0xa8, 0xea, 0x10, +}; +static const unsigned char kat2721_nonce[] = {0}; +static const unsigned char kat2721_persstr[] = {0}; +static const unsigned char kat2721_entropyinreseed[] = { + 0x08, 0x09, 0xaa, 0x01, 0x31, 0x10, 0xfc, 0xd6, 0xe7, 0x03, 0xcd, 0x5f, + 0x47, 0x40, 0x36, 0xf7, 0xee, 0x4c, 0xd1, 0x91, 0xc5, 0x22, 0x7c, 0xee, + 0x6c, 0x50, 0x9e, 0x86, 0x32, 0x4e, 0x7b, 0x2f, 0x96, 0x68, 0xbd, 0xb4, + 0x06, 0x29, 0xe5, 0x17, 0x04, 0xed, 0x16, 0x64, 0x26, 0xbe, 0x48, 0x3e, +}; +static const unsigned char kat2721_addinreseed[] = { + 0xd6, 0x53, 0xea, 0xed, 0x49, 0x3f, 0xf4, 0xc2, 0x79, 0x1d, 0x5f, 0x18, + 0x6c, 0x44, 0x2d, 0xd4, 0x8b, 0x7e, 0xe4, 0x66, 0x6c, 0x90, 0x42, 0x6b, + 0x82, 0x93, 0xf8, 0x21, 0x30, 0xb2, 0x46, 0xf5, 0x90, 0x85, 0xfa, 0x2b, + 0x82, 0xc2, 0x59, 0x7d, 0x90, 0x7b, 0x35, 0xcd, 0x3f, 0x29, 0x00, 0xe5, +}; +static const unsigned char kat2721_addin0[] = { + 0x43, 0x90, 0x64, 0x99, 0x73, 0xc3, 0x4e, 0x1a, 0x36, 0x8b, 0x55, 0x4d, + 0x91, 0x23, 0x97, 0xf4, 0x25, 0xad, 0xb3, 0xd9, 0x6a, 0xe7, 0x98, 0x29, + 0xeb, 0x64, 0xf3, 0xc3, 0xfb, 0x27, 0x56, 0x69, 0x2e, 0x66, 0x12, 0xdb, + 0xcc, 0xed, 0x4b, 0x3c, 0xd3, 0x34, 0xbb, 0x78, 0x80, 0xc3, 0x4c, 0xb9, +}; +static const unsigned char kat2721_addin1[] = { + 0xb0, 0x9e, 0x0d, 0xfd, 0x27, 0x06, 0x72, 0xea, 0x55, 0x37, 0x90, 0x16, + 0x37, 0x50, 0xd0, 0x07, 0x3f, 0xe1, 0x56, 0x79, 0x9d, 0x23, 0xbe, 0x5d, + 0xcf, 0x78, 0xd7, 0x84, 0xc7, 0xec, 0xb4, 0xd4, 0xec, 0x05, 0x4f, 0x30, + 0x9c, 0x70, 0x4b, 0xa4, 0xe1, 0x53, 0xae, 0x3f, 0xcc, 0x60, 0xd3, 0xb5, +}; +static const unsigned char kat2721_retbits[] = { + 0x9e, 0x2f, 0xb5, 0xe6, 0x69, 0xc4, 0x9f, 0x12, 0xab, 0x98, 0x9a, 0xae, + 0x82, 0x2e, 0x12, 0x91, 0x34, 0xbf, 0x5b, 0x11, 0x19, 0xc6, 0x9c, 0x92, + 0xda, 0xfc, 0xf5, 0x3a, 0x7d, 0xd1, 0xf7, 0x05, 0x5c, 0x6b, 0x2e, 0x57, + 0xbb, 0x59, 0x25, 0x9d, 0x2c, 0x48, 0x6e, 0x33, 0xa2, 0xec, 0x41, 0xbe, + 0x3f, 0xd9, 0x67, 0x99, 0x7b, 0xe9, 0xb0, 0xc7, 0xb1, 0x1c, 0xd7, 0x90, + 0xf3, 0xb3, 0x0c, 0x7c, +}; +static const struct drbg_kat_pr_false kat2721_t = { + 5, kat2721_entropyin, kat2721_nonce, kat2721_persstr, + kat2721_entropyinreseed, kat2721_addinreseed, kat2721_addin0, + kat2721_addin1, kat2721_retbits +}; +static const struct drbg_kat kat2721 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2721_t +}; + +static const unsigned char kat2722_entropyin[] = { + 0x80, 0x9f, 0x1f, 0x12, 0x37, 0x46, 0x09, 0xf0, 0x11, 0x1c, 0x34, 0x7f, + 0xb8, 0x89, 0x35, 0xac, 0x53, 0xd4, 0x73, 0xf5, 0xf7, 0xe0, 0x93, 0x89, + 0x80, 0x01, 0xe9, 0xc4, 0xa8, 0x1e, 0xd0, 0x78, 0xcd, 0xf5, 0xee, 0xfa, + 0x0b, 0x16, 0x68, 0x26, 0xc6, 0x32, 0xd1, 0x3b, 0x1a, 0x0d, 0x93, 0x7c, +}; +static const unsigned char kat2722_nonce[] = {0}; +static const unsigned char kat2722_persstr[] = {0}; +static const unsigned char kat2722_entropyinreseed[] = { + 0xf2, 0xd0, 0x18, 0x28, 0xe4, 0xae, 0x75, 0x7d, 0x90, 0xc3, 0x6f, 0xe5, + 0xad, 0x18, 0x33, 0x78, 0xac, 0x44, 0x2c, 0x07, 0xb4, 0x74, 0x1c, 0x85, + 0xcc, 0x34, 0x0c, 0x86, 0x26, 0xf5, 0x64, 0x72, 0xf0, 0xea, 0xc7, 0xbf, + 0x48, 0x48, 0xfa, 0x18, 0xef, 0xba, 0x8d, 0x37, 0xd1, 0x99, 0x8c, 0x4a, +}; +static const unsigned char kat2722_addinreseed[] = { + 0x80, 0xa3, 0x46, 0xbd, 0x1c, 0x05, 0xf0, 0x0c, 0x08, 0xd9, 0xe6, 0xc1, + 0x0a, 0xc0, 0xfc, 0x38, 0x68, 0x06, 0xcc, 0x22, 0xd6, 0x2e, 0xc9, 0xdb, + 0xc2, 0xeb, 0x30, 0x13, 0x1a, 0xe7, 0xd8, 0x9a, 0xa9, 0x1a, 0x67, 0xa8, + 0x48, 0xd0, 0x1b, 0xb8, 0xd9, 0xeb, 0x8a, 0x93, 0x26, 0xc4, 0xcc, 0x81, +}; +static const unsigned char kat2722_addin0[] = { + 0x0f, 0xc7, 0xcb, 0x58, 0x9c, 0xbc, 0x14, 0x11, 0x11, 0xf5, 0x57, 0xd8, + 0x52, 0xc5, 0xcf, 0x47, 0x63, 0x3f, 0x44, 0x30, 0xba, 0xfd, 0xe1, 0x47, + 0x25, 0x42, 0x06, 0x10, 0xf6, 0xc2, 0x27, 0x77, 0xca, 0x93, 0x94, 0xd4, + 0x4d, 0xc1, 0x70, 0x1a, 0xaa, 0xe0, 0xa6, 0xf2, 0x36, 0x27, 0x89, 0xb9, +}; +static const unsigned char kat2722_addin1[] = { + 0xed, 0x60, 0xa2, 0xa9, 0x6c, 0xef, 0x44, 0x2e, 0xcb, 0x1b, 0x0b, 0x83, + 0x11, 0xd5, 0x47, 0x0f, 0x42, 0x5f, 0xb6, 0x0c, 0xd1, 0xca, 0x81, 0xd4, + 0x84, 0x6b, 0xe2, 0xd4, 0x5e, 0xbb, 0xf8, 0x57, 0xcd, 0xd5, 0x8c, 0xb2, + 0x2a, 0x72, 0x57, 0x87, 0x03, 0x75, 0x9f, 0xcf, 0xe6, 0x97, 0xa3, 0xcc, +}; +static const unsigned char kat2722_retbits[] = { + 0xa0, 0xa7, 0xd1, 0x6b, 0xd8, 0x3e, 0x64, 0xaf, 0xaf, 0x0a, 0xd5, 0xc1, + 0x37, 0x8f, 0x34, 0x1a, 0x6a, 0xce, 0xfd, 0xdb, 0x15, 0xa1, 0x05, 0x66, + 0xbd, 0x23, 0x1e, 0xd7, 0x43, 0x79, 0x61, 0xc5, 0x0a, 0x47, 0xef, 0x8b, + 0x03, 0x23, 0x89, 0xfd, 0x8a, 0x52, 0x73, 0xcf, 0x92, 0x6c, 0x70, 0xb1, + 0xce, 0xbf, 0xcf, 0xb9, 0x31, 0x76, 0xfe, 0xc6, 0x4d, 0xa8, 0x81, 0x0e, + 0x93, 0xee, 0xc5, 0x3c, +}; +static const struct drbg_kat_pr_false kat2722_t = { + 6, kat2722_entropyin, kat2722_nonce, kat2722_persstr, + kat2722_entropyinreseed, kat2722_addinreseed, kat2722_addin0, + kat2722_addin1, kat2722_retbits +}; +static const struct drbg_kat kat2722 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2722_t +}; + +static const unsigned char kat2723_entropyin[] = { + 0xb8, 0x9c, 0x72, 0x42, 0x62, 0xf8, 0xeb, 0xe3, 0xc2, 0x9e, 0x8c, 0x8b, + 0xf9, 0x92, 0x95, 0x9e, 0x3b, 0x7f, 0x42, 0xa5, 0xab, 0xf0, 0xd3, 0x36, + 0xb8, 0x27, 0xf6, 0xb6, 0x84, 0x82, 0xbf, 0x9a, 0x75, 0xb5, 0xf1, 0x15, + 0x74, 0xaf, 0xfe, 0x92, 0x9b, 0xae, 0x0c, 0xfd, 0xf2, 0x13, 0xbd, 0x3d, +}; +static const unsigned char kat2723_nonce[] = {0}; +static const unsigned char kat2723_persstr[] = {0}; +static const unsigned char kat2723_entropyinreseed[] = { + 0x7a, 0x13, 0x1f, 0xe4, 0x12, 0xb2, 0x5a, 0x66, 0xd4, 0x0e, 0xcb, 0x9e, + 0xd7, 0xc5, 0xcd, 0x5d, 0x0e, 0x85, 0xc3, 0x3c, 0x72, 0xec, 0x77, 0x96, + 0xfd, 0x63, 0x20, 0xf3, 0xfd, 0xfe, 0x9c, 0x71, 0x09, 0x96, 0x97, 0x3d, + 0x7a, 0xf3, 0xaf, 0x53, 0x9a, 0xeb, 0xb4, 0xe6, 0x87, 0xd1, 0x6a, 0xf6, +}; +static const unsigned char kat2723_addinreseed[] = { + 0x3a, 0x3b, 0x2a, 0x07, 0xc5, 0x87, 0x70, 0xef, 0x94, 0xcd, 0x0f, 0xa6, + 0x34, 0x8a, 0xcd, 0x06, 0x0d, 0xf2, 0xfd, 0xe2, 0x6e, 0x67, 0x47, 0x3d, + 0x43, 0xde, 0x7a, 0x92, 0x9b, 0x0d, 0xf7, 0xae, 0x35, 0x9e, 0xe3, 0xb3, + 0x6a, 0x37, 0x07, 0xd2, 0x7d, 0x29, 0x36, 0xa5, 0x6e, 0x53, 0xf7, 0xe0, +}; +static const unsigned char kat2723_addin0[] = { + 0x5f, 0x9b, 0xe2, 0x1e, 0xe1, 0x24, 0x77, 0x6b, 0x93, 0x1c, 0x18, 0x84, + 0xf4, 0x76, 0x03, 0x96, 0xcd, 0x04, 0x16, 0x04, 0x80, 0x3a, 0xc8, 0x63, + 0x14, 0x79, 0xe0, 0xb0, 0xdd, 0x90, 0x0d, 0x18, 0x66, 0xd8, 0xb0, 0xb4, + 0x41, 0xdb, 0x82, 0xbc, 0x66, 0xd5, 0xc0, 0xda, 0x79, 0xb4, 0xf8, 0xa7, +}; +static const unsigned char kat2723_addin1[] = { + 0x68, 0x20, 0xab, 0xa2, 0x5b, 0x1a, 0xf7, 0xfd, 0x7a, 0x08, 0x79, 0xdf, + 0xdd, 0x6e, 0xd1, 0x32, 0xee, 0x5d, 0x0b, 0xa8, 0x92, 0xf7, 0x5e, 0x31, + 0xff, 0xb0, 0xad, 0x0e, 0xea, 0x6f, 0x3e, 0xa3, 0x7a, 0x42, 0x1e, 0x06, + 0xbb, 0x74, 0x65, 0xc3, 0x25, 0x9e, 0x59, 0xc4, 0xa7, 0xe0, 0x78, 0x33, +}; +static const unsigned char kat2723_retbits[] = { + 0x2a, 0x44, 0xd6, 0x85, 0x4e, 0xbe, 0x70, 0x9e, 0x26, 0x4b, 0x25, 0x3f, + 0xf1, 0xe0, 0xa7, 0xe4, 0x5e, 0x6c, 0x99, 0x6f, 0x5e, 0xe5, 0xc3, 0x71, + 0xec, 0xe0, 0xac, 0xc7, 0xbc, 0xfd, 0x55, 0x93, 0xfc, 0x2a, 0x0d, 0xcd, + 0x4f, 0xad, 0x29, 0x82, 0x0d, 0xdb, 0x9d, 0x61, 0x05, 0x57, 0xb4, 0xe3, + 0x61, 0x90, 0x09, 0xa1, 0x5c, 0x85, 0x3a, 0x5e, 0x46, 0xf0, 0x66, 0x1b, + 0x72, 0x7d, 0x41, 0xe8, +}; +static const struct drbg_kat_pr_false kat2723_t = { + 7, kat2723_entropyin, kat2723_nonce, kat2723_persstr, + kat2723_entropyinreseed, kat2723_addinreseed, kat2723_addin0, + kat2723_addin1, kat2723_retbits +}; +static const struct drbg_kat kat2723 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2723_t +}; + +static const unsigned char kat2724_entropyin[] = { + 0x2b, 0x1f, 0xe5, 0xb6, 0xd4, 0x2a, 0x71, 0x2a, 0xe6, 0x59, 0xaa, 0x1b, + 0x62, 0x23, 0x33, 0x92, 0x0e, 0x3b, 0x08, 0x25, 0x5a, 0xd4, 0x08, 0x80, + 0x33, 0x01, 0xf8, 0xcb, 0x9f, 0x82, 0xb9, 0x5a, 0x69, 0x1f, 0x66, 0x92, + 0x21, 0x73, 0xaf, 0xfb, 0xeb, 0x9d, 0xa3, 0x5d, 0x40, 0xcf, 0x2d, 0x1c, +}; +static const unsigned char kat2724_nonce[] = {0}; +static const unsigned char kat2724_persstr[] = {0}; +static const unsigned char kat2724_entropyinreseed[] = { + 0x2f, 0xf2, 0x97, 0x76, 0xef, 0x48, 0xc0, 0xd2, 0x03, 0x08, 0xd0, 0x7f, + 0xa0, 0x26, 0x95, 0x13, 0x86, 0x6a, 0x59, 0xdb, 0x42, 0xa1, 0xda, 0xf8, + 0xee, 0x75, 0xd8, 0xf5, 0x63, 0x38, 0x8c, 0xb5, 0x7c, 0xc6, 0x63, 0xff, + 0x25, 0x70, 0xc2, 0xfe, 0x4a, 0x40, 0x75, 0x25, 0x31, 0xe0, 0xc7, 0x79, +}; +static const unsigned char kat2724_addinreseed[] = { + 0xa2, 0xc6, 0xd3, 0x44, 0xde, 0xcb, 0xbe, 0xfa, 0xb1, 0x76, 0x4c, 0x42, + 0x40, 0x01, 0x44, 0x24, 0x55, 0xc9, 0xe8, 0x7c, 0x06, 0xd6, 0x2b, 0xee, + 0x63, 0xd6, 0xd1, 0x8b, 0x87, 0xce, 0xd4, 0xec, 0xe2, 0x8d, 0x6c, 0x0f, + 0xec, 0x41, 0x40, 0x40, 0x99, 0x22, 0x91, 0x5f, 0x07, 0x44, 0xd3, 0xae, +}; +static const unsigned char kat2724_addin0[] = { + 0x01, 0xcc, 0x14, 0x2d, 0x20, 0xa2, 0x01, 0x87, 0xc3, 0xc7, 0x2c, 0xdf, + 0xc3, 0x00, 0x2e, 0x4d, 0xa9, 0x9a, 0x09, 0x96, 0x4a, 0xf9, 0xa0, 0x0d, + 0x00, 0x01, 0xf3, 0x48, 0x38, 0x33, 0x73, 0xc4, 0x3f, 0xbe, 0xce, 0x59, + 0x46, 0xa9, 0xda, 0x9e, 0x50, 0x83, 0x32, 0x1d, 0xb9, 0x05, 0xe0, 0xef, +}; +static const unsigned char kat2724_addin1[] = { + 0x38, 0xa6, 0x08, 0x06, 0xc0, 0x8f, 0x0d, 0x0a, 0xff, 0xcf, 0x1d, 0x30, + 0x45, 0xa2, 0x09, 0xcd, 0xe9, 0x7c, 0x89, 0xaf, 0x7d, 0xc7, 0xc0, 0xbb, + 0x1e, 0x16, 0x0e, 0x47, 0x83, 0xce, 0x5d, 0xef, 0xd6, 0x51, 0x76, 0x74, + 0x06, 0xfa, 0xf6, 0x5f, 0x15, 0xb0, 0xc5, 0xf6, 0xea, 0x19, 0x1a, 0x6e, +}; +static const unsigned char kat2724_retbits[] = { + 0x33, 0x5d, 0xad, 0xa2, 0x0a, 0xd6, 0x87, 0x46, 0x08, 0x82, 0xb6, 0x40, + 0x61, 0x99, 0x4b, 0x86, 0x0e, 0x74, 0xd0, 0x53, 0xf5, 0x39, 0x7e, 0x0b, + 0x70, 0x0c, 0x9d, 0xb6, 0x10, 0xf9, 0xb4, 0x65, 0x01, 0x41, 0xf2, 0x5d, + 0xc2, 0x4e, 0x69, 0xff, 0x1e, 0xb6, 0x36, 0x12, 0xcb, 0x2b, 0x3b, 0x90, + 0x5d, 0x29, 0x22, 0xac, 0x88, 0xb0, 0x91, 0xcc, 0xce, 0x52, 0x3b, 0x1c, + 0x62, 0xcd, 0x14, 0xf3, +}; +static const struct drbg_kat_pr_false kat2724_t = { + 8, kat2724_entropyin, kat2724_nonce, kat2724_persstr, + kat2724_entropyinreseed, kat2724_addinreseed, kat2724_addin0, + kat2724_addin1, kat2724_retbits +}; +static const struct drbg_kat kat2724 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2724_t +}; + +static const unsigned char kat2725_entropyin[] = { + 0x54, 0x53, 0x00, 0x87, 0x43, 0xd1, 0xd5, 0xda, 0x6a, 0xcf, 0x27, 0xe8, + 0xc3, 0x61, 0x64, 0xb2, 0xfc, 0x13, 0xfc, 0xa4, 0xe2, 0x83, 0xbd, 0x87, + 0x34, 0xf0, 0xf5, 0xb2, 0x7f, 0xcb, 0xbc, 0x4d, 0x62, 0x2a, 0x8f, 0xa2, + 0x1a, 0xdd, 0x04, 0x03, 0xfb, 0x70, 0xe1, 0x5f, 0x8d, 0x7a, 0xd2, 0x28, +}; +static const unsigned char kat2725_nonce[] = {0}; +static const unsigned char kat2725_persstr[] = {0}; +static const unsigned char kat2725_entropyinreseed[] = { + 0xd6, 0xf8, 0xce, 0x10, 0xdd, 0x87, 0xf3, 0x1b, 0x35, 0xd2, 0xa0, 0x80, + 0xcb, 0x1a, 0xd3, 0x48, 0x2d, 0x1b, 0x3b, 0xf5, 0x94, 0xd5, 0xfa, 0x70, + 0x50, 0xdc, 0xcd, 0xfe, 0x78, 0x67, 0x97, 0x50, 0x8a, 0x83, 0xb2, 0xae, + 0xe1, 0x85, 0x12, 0x0f, 0x9a, 0x4c, 0x83, 0x93, 0xaf, 0x87, 0xc9, 0x7e, +}; +static const unsigned char kat2725_addinreseed[] = { + 0x41, 0x13, 0xbe, 0x07, 0x17, 0x59, 0x1b, 0xec, 0x73, 0xcb, 0xfd, 0x3c, + 0x4c, 0x3c, 0x57, 0x42, 0xd2, 0x0c, 0x5e, 0x9b, 0x48, 0xb6, 0xec, 0x70, + 0x00, 0xf1, 0x12, 0xce, 0xc4, 0x69, 0x3d, 0xcf, 0xc1, 0x93, 0xbb, 0x94, + 0x9d, 0xca, 0x2f, 0xd1, 0xac, 0x9d, 0x67, 0xf0, 0x8b, 0xa7, 0x14, 0x07, +}; +static const unsigned char kat2725_addin0[] = { + 0x87, 0xc9, 0x49, 0xf5, 0x9d, 0x22, 0x5b, 0x25, 0x3e, 0xc6, 0x16, 0xa2, + 0x82, 0x7c, 0x28, 0x19, 0x7f, 0xff, 0x51, 0x05, 0xa1, 0x23, 0xd9, 0x6e, + 0x8b, 0xac, 0xdd, 0x28, 0x83, 0xb8, 0xcd, 0x57, 0x0f, 0x20, 0xf6, 0xd5, + 0xd6, 0x4b, 0x3f, 0xdd, 0x6b, 0xc8, 0x8e, 0xe2, 0x27, 0xe2, 0x8b, 0xab, +}; +static const unsigned char kat2725_addin1[] = { + 0x5e, 0x8a, 0x1a, 0xab, 0x2c, 0xf9, 0x72, 0x44, 0x66, 0xd2, 0x98, 0x94, + 0x3c, 0xbb, 0xbc, 0xc0, 0xf2, 0x76, 0x39, 0x29, 0xff, 0x7c, 0xbf, 0xb4, + 0x21, 0x5f, 0xf6, 0x7c, 0xb5, 0x4c, 0x05, 0x81, 0xd9, 0x3c, 0x95, 0x2c, + 0x82, 0x01, 0x2b, 0xd7, 0x04, 0xbf, 0x66, 0xe7, 0x6a, 0x9b, 0x78, 0xe6, +}; +static const unsigned char kat2725_retbits[] = { + 0xde, 0x38, 0xc1, 0x73, 0x13, 0x75, 0x20, 0x04, 0x47, 0x13, 0x37, 0x7c, + 0xe2, 0xb4, 0xe6, 0x72, 0xab, 0x7f, 0x1a, 0xae, 0x1a, 0x88, 0xc4, 0xa3, + 0xb7, 0x8a, 0x2a, 0xdf, 0x76, 0xd9, 0x58, 0xb5, 0xaa, 0x6c, 0x93, 0x45, + 0xcd, 0xeb, 0x00, 0xc3, 0x5f, 0x09, 0x9c, 0xf0, 0x5a, 0xe8, 0x5f, 0x7a, + 0xff, 0xb3, 0x2a, 0xa4, 0xe5, 0xbe, 0x43, 0xec, 0xc4, 0x06, 0xf7, 0x1c, + 0x77, 0x9e, 0x02, 0x07, +}; +static const struct drbg_kat_pr_false kat2725_t = { + 9, kat2725_entropyin, kat2725_nonce, kat2725_persstr, + kat2725_entropyinreseed, kat2725_addinreseed, kat2725_addin0, + kat2725_addin1, kat2725_retbits +}; +static const struct drbg_kat kat2725 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2725_t +}; + +static const unsigned char kat2726_entropyin[] = { + 0x1d, 0xb1, 0x47, 0xaf, 0xfb, 0x57, 0xd3, 0xee, 0x43, 0x1f, 0x17, 0x99, + 0xec, 0xd2, 0xa1, 0x8b, 0xc4, 0x5a, 0xd7, 0x35, 0xd1, 0x40, 0x9c, 0x9b, + 0x70, 0x9e, 0x1f, 0x2a, 0x2b, 0x20, 0x75, 0x2d, 0x04, 0x16, 0x7d, 0x79, + 0x39, 0xd9, 0x15, 0x36, 0x76, 0x9b, 0x61, 0xc2, 0x29, 0x9b, 0x4a, 0xeb, +}; +static const unsigned char kat2726_nonce[] = {0}; +static const unsigned char kat2726_persstr[] = {0}; +static const unsigned char kat2726_entropyinreseed[] = { + 0x44, 0x9a, 0x75, 0x36, 0x19, 0x7b, 0x23, 0x56, 0x38, 0x0b, 0xb4, 0x42, + 0xfe, 0x26, 0xfb, 0x84, 0x6f, 0xdd, 0xea, 0x8b, 0xe7, 0x6e, 0xc6, 0xde, + 0xe4, 0x63, 0x83, 0x7d, 0x2e, 0x2b, 0x55, 0x11, 0x83, 0x09, 0x07, 0x15, + 0x8d, 0x4f, 0x84, 0xde, 0x5b, 0xba, 0xc1, 0x37, 0x4d, 0x13, 0x20, 0xc8, +}; +static const unsigned char kat2726_addinreseed[] = { + 0xce, 0x21, 0x77, 0x55, 0x55, 0x60, 0xa5, 0x43, 0x93, 0x81, 0xe0, 0x87, + 0xf5, 0xab, 0xef, 0x9a, 0x1b, 0xce, 0xf2, 0x8d, 0x62, 0xd1, 0xb5, 0xbb, + 0x80, 0x17, 0x61, 0xd9, 0xdb, 0x9a, 0x81, 0xc6, 0x27, 0x0b, 0x9e, 0xed, + 0x79, 0x3f, 0xe5, 0xb8, 0x83, 0x65, 0xf9, 0x35, 0x41, 0x9c, 0xe4, 0x85, +}; +static const unsigned char kat2726_addin0[] = { + 0x4d, 0x3c, 0x0b, 0x97, 0x0f, 0x3f, 0x33, 0x74, 0x56, 0x40, 0x07, 0x31, + 0xe8, 0xac, 0x66, 0x7a, 0xb5, 0x17, 0x34, 0x3f, 0x0b, 0xd0, 0x32, 0x60, + 0x06, 0x6a, 0x73, 0xaf, 0xde, 0x92, 0xc9, 0xd5, 0x67, 0x6a, 0x59, 0x5d, + 0xd9, 0x43, 0x83, 0x7e, 0x12, 0xe9, 0xcb, 0x5c, 0x9b, 0xa1, 0x9b, 0xf8, +}; +static const unsigned char kat2726_addin1[] = { + 0xe0, 0x69, 0x0e, 0xe6, 0xa3, 0xda, 0xb9, 0xa0, 0x06, 0x4b, 0x9f, 0x66, + 0x24, 0x65, 0xf3, 0xbd, 0x64, 0xef, 0x58, 0x17, 0xe1, 0x57, 0x6d, 0x1a, + 0x03, 0x14, 0xcd, 0x53, 0x10, 0x05, 0x0e, 0x9e, 0xec, 0xce, 0x9a, 0xf2, + 0xab, 0x25, 0xd0, 0xbc, 0x75, 0xd5, 0x2a, 0x7f, 0xe5, 0xc8, 0xb8, 0x3d, +}; +static const unsigned char kat2726_retbits[] = { + 0xe2, 0xb0, 0xd8, 0xa4, 0x4e, 0x3f, 0x8b, 0xa7, 0xfa, 0x4d, 0xfe, 0xbd, + 0x53, 0x45, 0xa9, 0x09, 0x96, 0xce, 0xa8, 0xdf, 0x80, 0xce, 0xc9, 0xa7, + 0x28, 0x91, 0x0d, 0x7f, 0xc5, 0xc0, 0x94, 0xf5, 0x32, 0x68, 0xfc, 0xee, + 0x40, 0x25, 0x1f, 0x6f, 0x47, 0xba, 0x66, 0x19, 0x2e, 0x3b, 0x8f, 0x3a, + 0x62, 0x70, 0x10, 0xea, 0x35, 0xf1, 0x11, 0x60, 0x7c, 0x44, 0x75, 0x82, + 0x03, 0xc8, 0x39, 0x5f, +}; +static const struct drbg_kat_pr_false kat2726_t = { + 10, kat2726_entropyin, kat2726_nonce, kat2726_persstr, + kat2726_entropyinreseed, kat2726_addinreseed, kat2726_addin0, + kat2726_addin1, kat2726_retbits +}; +static const struct drbg_kat kat2726 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2726_t +}; + +static const unsigned char kat2727_entropyin[] = { + 0xa4, 0xf0, 0x60, 0x38, 0x5b, 0x08, 0x50, 0xd4, 0x7d, 0x0c, 0x0b, 0x0a, + 0xc0, 0xec, 0xda, 0x01, 0x4b, 0x1f, 0xc6, 0xf9, 0x37, 0xc2, 0x9a, 0x07, + 0x13, 0x1a, 0x06, 0x9a, 0x8e, 0x92, 0xc2, 0xcb, 0x6c, 0xcf, 0x7e, 0xc4, + 0x02, 0x0e, 0x66, 0xff, 0xd5, 0x43, 0x7c, 0x9e, 0x5d, 0x4c, 0xaf, 0xce, +}; +static const unsigned char kat2727_nonce[] = {0}; +static const unsigned char kat2727_persstr[] = {0}; +static const unsigned char kat2727_entropyinreseed[] = { + 0xef, 0x46, 0x49, 0x80, 0xf1, 0xce, 0x99, 0x63, 0x0c, 0xdc, 0xbd, 0xcc, + 0x21, 0xe8, 0x11, 0x7e, 0x59, 0x2f, 0xd7, 0x40, 0x4d, 0x82, 0x32, 0xf6, + 0xcf, 0xbb, 0x2c, 0x85, 0x1b, 0x93, 0xc7, 0x7a, 0x0c, 0x59, 0x4b, 0x22, + 0xb8, 0xcd, 0xc5, 0xb0, 0xae, 0x94, 0xd4, 0x48, 0xe8, 0x21, 0x8c, 0x4f, +}; +static const unsigned char kat2727_addinreseed[] = { + 0x4f, 0x2f, 0x1b, 0x15, 0x89, 0xf6, 0x13, 0xc2, 0x3c, 0xbc, 0x06, 0x6b, + 0x1c, 0xbc, 0x89, 0x14, 0x6c, 0x47, 0x09, 0x58, 0x0a, 0x76, 0xda, 0xce, + 0x35, 0x2e, 0x90, 0x56, 0xb9, 0x11, 0x06, 0x31, 0x37, 0xd4, 0x20, 0xf2, + 0x08, 0x18, 0xd1, 0x0f, 0x2c, 0x4a, 0xf5, 0xff, 0xe3, 0xfb, 0xf0, 0x13, +}; +static const unsigned char kat2727_addin0[] = { + 0xa9, 0x8e, 0xd1, 0x98, 0x9a, 0x02, 0x26, 0xf8, 0xa2, 0xae, 0x30, 0xd0, + 0x3b, 0xb8, 0x27, 0x0d, 0x48, 0x68, 0x00, 0xfb, 0x7a, 0x3f, 0x92, 0x45, + 0xd8, 0xfa, 0x5e, 0xe3, 0xef, 0x7b, 0x73, 0x21, 0xcc, 0x1a, 0x7a, 0x4b, + 0xdf, 0xfb, 0x07, 0x6f, 0x67, 0xe3, 0xcc, 0xca, 0xaf, 0x55, 0xaf, 0x53, +}; +static const unsigned char kat2727_addin1[] = { + 0x2c, 0xe1, 0x65, 0xd5, 0x6b, 0x27, 0x06, 0xb8, 0x4b, 0x8d, 0x3d, 0x85, + 0xba, 0xf9, 0xeb, 0x00, 0x31, 0x99, 0xbc, 0xf8, 0xd9, 0xb1, 0x62, 0x31, + 0x21, 0x82, 0xbc, 0x94, 0xe9, 0x6f, 0xbb, 0x23, 0x6e, 0x7a, 0x6c, 0xd2, + 0x5a, 0x1d, 0x67, 0x68, 0x98, 0x08, 0x5a, 0xad, 0x9e, 0xab, 0x53, 0x63, +}; +static const unsigned char kat2727_retbits[] = { + 0xa3, 0x44, 0xfd, 0x1c, 0x8b, 0x3b, 0x8b, 0x31, 0x5c, 0xc7, 0x1f, 0x7e, + 0xa0, 0x8d, 0x7f, 0x7b, 0x67, 0x28, 0x51, 0x85, 0x6c, 0xce, 0x86, 0x3f, + 0x46, 0x8e, 0x22, 0xc7, 0x0f, 0x46, 0xff, 0x1e, 0x60, 0x54, 0xcb, 0xbd, + 0xdb, 0xb9, 0x11, 0x1c, 0x43, 0x6d, 0xf3, 0xdf, 0xf2, 0x10, 0x0b, 0x83, + 0x79, 0xca, 0xd9, 0xbd, 0x44, 0x95, 0x06, 0x7a, 0xb4, 0x8a, 0x0f, 0x3a, + 0x1b, 0x7b, 0x80, 0x13, +}; +static const struct drbg_kat_pr_false kat2727_t = { + 11, kat2727_entropyin, kat2727_nonce, kat2727_persstr, + kat2727_entropyinreseed, kat2727_addinreseed, kat2727_addin0, + kat2727_addin1, kat2727_retbits +}; +static const struct drbg_kat kat2727 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2727_t +}; + +static const unsigned char kat2728_entropyin[] = { + 0x87, 0xc9, 0xa6, 0x2e, 0xfa, 0x5b, 0x02, 0x10, 0x14, 0x8f, 0x21, 0x29, + 0x95, 0x8e, 0xb8, 0x48, 0x6e, 0x44, 0x4a, 0xb7, 0x99, 0xd8, 0x6c, 0x04, + 0x52, 0x62, 0xa0, 0x7c, 0xa0, 0x5f, 0x64, 0x40, 0x03, 0xb5, 0xce, 0x88, + 0xfa, 0x05, 0x17, 0x0f, 0x3b, 0x65, 0x3c, 0x9b, 0x3f, 0xc2, 0xfb, 0xfd, +}; +static const unsigned char kat2728_nonce[] = {0}; +static const unsigned char kat2728_persstr[] = {0}; +static const unsigned char kat2728_entropyinreseed[] = { + 0xe8, 0x9f, 0x28, 0x27, 0xfe, 0x7b, 0x20, 0x0c, 0xa1, 0x76, 0x04, 0x35, + 0x27, 0xb2, 0xad, 0x8b, 0x31, 0x74, 0x34, 0x95, 0xbb, 0x61, 0xf5, 0xfc, + 0xd5, 0x9f, 0xdd, 0x54, 0xa5, 0x29, 0x80, 0x3b, 0xd3, 0x1e, 0xd3, 0x8f, + 0x51, 0x84, 0x9e, 0xa4, 0x22, 0x02, 0xd8, 0x40, 0xf5, 0xa5, 0xd8, 0x69, +}; +static const unsigned char kat2728_addinreseed[] = { + 0x21, 0x25, 0x4e, 0xc3, 0xb1, 0xad, 0x3a, 0xbf, 0xc3, 0xc2, 0x37, 0xbc, + 0x6e, 0xac, 0x8f, 0xb1, 0x73, 0xbb, 0xd9, 0x96, 0xd9, 0xab, 0xcb, 0xce, + 0x9c, 0x78, 0xda, 0xe6, 0x49, 0xce, 0x1c, 0x2a, 0xcd, 0x9e, 0xae, 0x88, + 0xa2, 0xe1, 0x17, 0xaa, 0xa7, 0x33, 0x76, 0x48, 0x37, 0x7b, 0x2d, 0xb7, +}; +static const unsigned char kat2728_addin0[] = { + 0xd8, 0x13, 0x19, 0x28, 0x93, 0x26, 0x6c, 0xfd, 0xad, 0x9b, 0x9c, 0xd5, + 0x9a, 0xba, 0x0c, 0xc0, 0xd0, 0x7d, 0x2a, 0xc8, 0x84, 0x87, 0x7c, 0xf9, + 0x03, 0x3b, 0x08, 0xe4, 0xe9, 0x87, 0x7e, 0x70, 0x8d, 0x25, 0x33, 0xcd, + 0xeb, 0x60, 0x40, 0x73, 0xca, 0x1c, 0x92, 0x1b, 0x69, 0x63, 0x55, 0xc0, +}; +static const unsigned char kat2728_addin1[] = { + 0xfe, 0x1e, 0x3c, 0x46, 0x0d, 0x88, 0x02, 0x74, 0x3a, 0xf6, 0xd8, 0x8b, + 0x1b, 0x2f, 0x0a, 0xac, 0xec, 0x84, 0x68, 0x03, 0x78, 0x35, 0xaf, 0x56, + 0xe2, 0x5a, 0x8a, 0x1c, 0xb4, 0x8f, 0x6c, 0x35, 0x17, 0xa9, 0xe4, 0xd4, + 0x04, 0xd3, 0x0c, 0x34, 0x18, 0x63, 0x95, 0xda, 0x17, 0x29, 0xa6, 0x7d, +}; +static const unsigned char kat2728_retbits[] = { + 0x8e, 0x6d, 0x98, 0xa2, 0xf8, 0x64, 0xca, 0x79, 0x5f, 0x57, 0x50, 0xe1, + 0x40, 0x4e, 0xc2, 0x24, 0x14, 0xf8, 0xcb, 0xf2, 0x70, 0xfd, 0x65, 0x54, + 0x50, 0x42, 0x2c, 0x97, 0x95, 0x97, 0xb6, 0xea, 0x5d, 0xf9, 0x79, 0xd2, + 0x13, 0xda, 0x7e, 0x03, 0x8c, 0xab, 0x9e, 0x25, 0x00, 0xd4, 0xcc, 0x8c, + 0x4d, 0xec, 0x89, 0xbf, 0x77, 0x83, 0xab, 0xa6, 0xbc, 0x3b, 0x2b, 0xb2, + 0x80, 0xf4, 0xe1, 0x94, +}; +static const struct drbg_kat_pr_false kat2728_t = { + 12, kat2728_entropyin, kat2728_nonce, kat2728_persstr, + kat2728_entropyinreseed, kat2728_addinreseed, kat2728_addin0, + kat2728_addin1, kat2728_retbits +}; +static const struct drbg_kat kat2728 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2728_t +}; + +static const unsigned char kat2729_entropyin[] = { + 0xd9, 0x48, 0x60, 0x04, 0x71, 0x79, 0xb7, 0x5b, 0x27, 0xbf, 0xf1, 0x65, + 0x71, 0x64, 0xf4, 0x9e, 0x6d, 0xa6, 0x7d, 0x26, 0x5a, 0xeb, 0x48, 0x26, + 0xfe, 0xaa, 0xd5, 0x24, 0xea, 0x87, 0xac, 0xc5, 0xb8, 0x89, 0x5e, 0xee, + 0xe0, 0x08, 0xd0, 0x67, 0x23, 0x4c, 0x46, 0xda, 0x14, 0x72, 0x65, 0x44, +}; +static const unsigned char kat2729_nonce[] = {0}; +static const unsigned char kat2729_persstr[] = {0}; +static const unsigned char kat2729_entropyinreseed[] = { + 0xc4, 0xa3, 0x47, 0x13, 0xf6, 0x7c, 0x2f, 0x97, 0x3b, 0xdd, 0x8f, 0x6e, + 0xd5, 0x82, 0x57, 0xaa, 0xa1, 0xca, 0x04, 0x9f, 0x41, 0x39, 0x37, 0x66, + 0x0c, 0xc1, 0xa9, 0x0d, 0xee, 0xf0, 0x75, 0xc7, 0x25, 0x3a, 0x08, 0x4d, + 0x33, 0x44, 0x23, 0xd5, 0xe8, 0xb8, 0x19, 0x9c, 0xfe, 0xba, 0xc2, 0xdd, +}; +static const unsigned char kat2729_addinreseed[] = { + 0xcb, 0xa1, 0x20, 0xea, 0xbd, 0xe1, 0x83, 0x32, 0xc4, 0x7d, 0x02, 0x5b, + 0xe3, 0x55, 0x20, 0xe8, 0xaf, 0x7d, 0xfd, 0x95, 0x15, 0x99, 0x10, 0xbe, + 0x86, 0xca, 0xfb, 0x74, 0x7f, 0x17, 0xa9, 0x2a, 0x5e, 0x66, 0x77, 0x4c, + 0x4c, 0xdb, 0xd9, 0x05, 0xa2, 0x98, 0x4c, 0x40, 0xe8, 0x8f, 0xd7, 0xa5, +}; +static const unsigned char kat2729_addin0[] = { + 0xef, 0xa2, 0xf6, 0xea, 0xb2, 0xbf, 0xcf, 0x05, 0x27, 0xb2, 0x05, 0x67, + 0x16, 0xfb, 0x0a, 0x45, 0xc7, 0xc5, 0xdf, 0x00, 0xf2, 0x0c, 0xaf, 0x0a, + 0xb7, 0xc8, 0x51, 0x51, 0x14, 0x45, 0xcd, 0x78, 0x40, 0x0d, 0xfa, 0x03, + 0x18, 0x56, 0x97, 0x8f, 0x43, 0x23, 0xa3, 0x77, 0xcf, 0xf0, 0xb4, 0x85, +}; +static const unsigned char kat2729_addin1[] = { + 0x8a, 0xe9, 0xec, 0xde, 0xcf, 0x22, 0x43, 0xb8, 0x26, 0xbf, 0xb9, 0x52, + 0xc5, 0x5c, 0x2e, 0xae, 0x59, 0xa4, 0x49, 0x42, 0x0e, 0x7b, 0xb8, 0xc0, + 0x46, 0xa5, 0xb0, 0x3f, 0x76, 0xfd, 0xa9, 0x0c, 0xe5, 0xb1, 0x3d, 0x5a, + 0x21, 0xc7, 0x4b, 0x0d, 0x96, 0x1b, 0x2d, 0x1c, 0xb5, 0x0d, 0xf9, 0x0b, +}; +static const unsigned char kat2729_retbits[] = { + 0xeb, 0xa9, 0x16, 0x5b, 0xc1, 0x9b, 0x83, 0x16, 0xd6, 0x15, 0x47, 0x56, + 0xf9, 0xa8, 0xd7, 0xae, 0xde, 0x3a, 0xa4, 0x24, 0xdf, 0x4d, 0x42, 0x5b, + 0x4b, 0x9a, 0x1d, 0xd9, 0xd6, 0x32, 0xf8, 0x3b, 0x94, 0x88, 0x16, 0x3b, + 0x73, 0xe0, 0xe0, 0x6a, 0x1f, 0xbc, 0xf9, 0xff, 0xef, 0x3b, 0x5c, 0x8f, + 0x6b, 0xa9, 0x91, 0xec, 0x94, 0xc5, 0x7e, 0xfc, 0x06, 0xb9, 0x48, 0xf1, + 0xe0, 0x72, 0x41, 0x20, +}; +static const struct drbg_kat_pr_false kat2729_t = { + 13, kat2729_entropyin, kat2729_nonce, kat2729_persstr, + kat2729_entropyinreseed, kat2729_addinreseed, kat2729_addin0, + kat2729_addin1, kat2729_retbits +}; +static const struct drbg_kat kat2729 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2729_t +}; + +static const unsigned char kat2730_entropyin[] = { + 0x2c, 0xb0, 0xd6, 0xe2, 0x7d, 0xe0, 0x4e, 0x6a, 0x6e, 0x95, 0xaf, 0x5c, + 0x5e, 0x4c, 0xbf, 0x3f, 0x99, 0x78, 0x85, 0x15, 0xa4, 0xe0, 0x86, 0xba, + 0xea, 0xf0, 0x94, 0x16, 0xee, 0xf5, 0xef, 0xcf, 0x04, 0xbd, 0x72, 0xe6, + 0x6f, 0x3b, 0x9b, 0x0f, 0x8c, 0xc0, 0x87, 0x58, 0x65, 0x95, 0x0e, 0x9d, +}; +static const unsigned char kat2730_nonce[] = {0}; +static const unsigned char kat2730_persstr[] = {0}; +static const unsigned char kat2730_entropyinreseed[] = { + 0x70, 0x0d, 0x72, 0xc6, 0x78, 0x7e, 0xee, 0x74, 0x8c, 0xf3, 0x56, 0xe0, + 0x52, 0x95, 0x44, 0x39, 0xbd, 0xc4, 0x1e, 0x2c, 0x4e, 0x51, 0xf1, 0xef, + 0x3b, 0x7b, 0xf3, 0x7c, 0x21, 0x9f, 0x11, 0x1e, 0x7c, 0x21, 0xf7, 0x07, + 0x2e, 0xed, 0xe6, 0x17, 0xc2, 0x12, 0xcb, 0xcf, 0x54, 0x1a, 0x33, 0xba, +}; +static const unsigned char kat2730_addinreseed[] = { + 0x45, 0x94, 0x32, 0x63, 0x35, 0xf4, 0x7b, 0x93, 0x5b, 0x2b, 0x66, 0x96, + 0x67, 0xcd, 0xe0, 0x24, 0x49, 0xf7, 0x2b, 0x4d, 0xfd, 0x86, 0xd5, 0xa7, + 0xd1, 0xaa, 0xe3, 0xcc, 0x44, 0xb0, 0x8e, 0x94, 0x11, 0x82, 0x70, 0x66, + 0x02, 0x9d, 0xfe, 0x7d, 0x9c, 0x9e, 0x15, 0x4c, 0xe2, 0x14, 0x67, 0xd5, +}; +static const unsigned char kat2730_addin0[] = { + 0xed, 0x3f, 0x47, 0xe5, 0x9a, 0x12, 0xb3, 0x6a, 0x42, 0x61, 0x6b, 0x33, + 0x8c, 0x7a, 0x77, 0xa1, 0x8e, 0x33, 0x3d, 0x38, 0xab, 0xb9, 0xda, 0x4e, + 0x36, 0x91, 0x4b, 0x69, 0xf3, 0xc3, 0x47, 0x68, 0x80, 0x70, 0x55, 0x25, + 0x17, 0x0a, 0x32, 0x0d, 0xa2, 0x6d, 0xc4, 0x02, 0xc6, 0xaf, 0xdf, 0x49, +}; +static const unsigned char kat2730_addin1[] = { + 0x6e, 0x39, 0xb2, 0x49, 0xf1, 0xb8, 0x11, 0x1f, 0xf1, 0x2f, 0xa2, 0x4f, + 0x9f, 0x23, 0x20, 0xdf, 0x2d, 0xc8, 0x75, 0x2e, 0x15, 0x41, 0xf5, 0x56, + 0xb5, 0xce, 0xdf, 0xff, 0x40, 0x9b, 0x6a, 0x85, 0x84, 0x90, 0xc2, 0x7e, + 0x05, 0x2a, 0x63, 0x50, 0x4c, 0x71, 0x31, 0xb4, 0x38, 0xf4, 0x43, 0x56, +}; +static const unsigned char kat2730_retbits[] = { + 0x65, 0x0b, 0xee, 0x69, 0x39, 0x3d, 0x5d, 0x77, 0x93, 0xc8, 0xa5, 0xa4, + 0x0c, 0xae, 0x79, 0xbd, 0x47, 0x0d, 0x15, 0xfd, 0xac, 0xab, 0x7b, 0x51, + 0xb2, 0x51, 0xf5, 0x1d, 0xc5, 0xd3, 0xe3, 0x83, 0xd2, 0x8d, 0x80, 0x8c, + 0x7f, 0x9e, 0x01, 0x8c, 0x71, 0xec, 0xcc, 0x80, 0x37, 0x1a, 0x9e, 0x02, + 0x67, 0xba, 0x40, 0x53, 0xec, 0x0e, 0x4c, 0x07, 0x1d, 0x11, 0x09, 0x42, + 0xc4, 0x31, 0x49, 0xc0, +}; +static const struct drbg_kat_pr_false kat2730_t = { + 14, kat2730_entropyin, kat2730_nonce, kat2730_persstr, + kat2730_entropyinreseed, kat2730_addinreseed, kat2730_addin0, + kat2730_addin1, kat2730_retbits +}; +static const struct drbg_kat kat2730 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2730_t +}; + +static const unsigned char kat2731_entropyin[] = { + 0x91, 0xe1, 0x5b, 0x57, 0x88, 0x61, 0x56, 0xd0, 0xea, 0xe2, 0xed, 0xa3, + 0x68, 0x7c, 0xc4, 0xb6, 0x17, 0x72, 0x56, 0x47, 0xfc, 0x34, 0x23, 0xfb, + 0x54, 0x8f, 0x18, 0x03, 0x38, 0x06, 0x4a, 0xb6, 0x68, 0x98, 0x00, 0x50, + 0x09, 0xc2, 0xc9, 0xc5, 0xf7, 0xc4, 0x20, 0xd9, 0x9e, 0x4f, 0x35, 0x1a, +}; +static const unsigned char kat2731_nonce[] = {0}; +static const unsigned char kat2731_persstr[] = { + 0x71, 0x00, 0xbe, 0xe1, 0xf8, 0xca, 0x38, 0xf4, 0xf0, 0x7b, 0x99, 0x10, + 0xb1, 0x2b, 0xae, 0xce, 0x71, 0x52, 0x22, 0x66, 0x3a, 0x1d, 0x5c, 0x16, + 0x99, 0xb5, 0xd4, 0x02, 0x2c, 0x0e, 0x0b, 0x1a, 0x49, 0xc9, 0x4b, 0x89, + 0x8e, 0x53, 0x18, 0xf6, 0x86, 0x1b, 0x43, 0xa8, 0xf1, 0xa4, 0xa8, 0x82, +}; +static const unsigned char kat2731_entropyinreseed[] = { + 0x25, 0xda, 0x97, 0x00, 0xe7, 0x98, 0x8a, 0x46, 0xb2, 0xfb, 0x44, 0x35, + 0x8f, 0xc3, 0xb1, 0x40, 0xaf, 0x96, 0xb9, 0xf8, 0x5c, 0xfc, 0x74, 0x79, + 0x78, 0xe8, 0x5a, 0xfc, 0xca, 0x0b, 0xcc, 0x02, 0xe8, 0x07, 0xaf, 0x83, + 0x0b, 0x3c, 0x0e, 0x69, 0x60, 0xa6, 0x0b, 0xbc, 0x2d, 0xed, 0x89, 0x1b, +}; +static const unsigned char kat2731_addinreseed[] = {0}; +static const unsigned char kat2731_addin0[] = {0}; +static const unsigned char kat2731_addin1[] = {0}; +static const unsigned char kat2731_retbits[] = { + 0xea, 0xa8, 0x0c, 0x6f, 0x59, 0x0f, 0x28, 0xcc, 0x7b, 0x5e, 0xdb, 0xd3, + 0xd8, 0x64, 0x3a, 0x68, 0xf7, 0xe6, 0xde, 0x87, 0x3b, 0x0b, 0x9d, 0x83, + 0x9b, 0x0a, 0xb9, 0x6c, 0xa2, 0x48, 0xbb, 0x4b, 0x92, 0x34, 0xb1, 0xc0, + 0x65, 0x85, 0x7d, 0x93, 0x6c, 0xe6, 0xdd, 0x0f, 0xc9, 0x2d, 0x6b, 0x3c, + 0xf9, 0x8f, 0x3a, 0x29, 0xc1, 0x6b, 0xb5, 0x49, 0xf6, 0xde, 0xa4, 0x22, + 0x12, 0x26, 0xe5, 0x50, +}; +static const struct drbg_kat_pr_false kat2731_t = { + 0, kat2731_entropyin, kat2731_nonce, kat2731_persstr, + kat2731_entropyinreseed, kat2731_addinreseed, kat2731_addin0, + kat2731_addin1, kat2731_retbits +}; +static const struct drbg_kat kat2731 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2731_t +}; + +static const unsigned char kat2732_entropyin[] = { + 0x6e, 0x3b, 0x47, 0x2f, 0xea, 0x5f, 0x25, 0xa7, 0x9c, 0x5d, 0xe8, 0x59, + 0xc0, 0xff, 0x7e, 0x63, 0x7f, 0x4c, 0xfa, 0xc5, 0x75, 0x87, 0x8b, 0xf2, + 0x01, 0x6d, 0xa2, 0xdb, 0x6a, 0xff, 0x49, 0xde, 0x45, 0x89, 0xa5, 0x9b, + 0x26, 0x6d, 0x50, 0xf5, 0x43, 0x4f, 0x3e, 0xc4, 0xa3, 0xf2, 0x18, 0xd3, +}; +static const unsigned char kat2732_nonce[] = {0}; +static const unsigned char kat2732_persstr[] = { + 0x74, 0x97, 0xe7, 0x6b, 0xdd, 0x5d, 0xf3, 0xdf, 0xec, 0xdf, 0xf6, 0x1a, + 0x13, 0x9b, 0xcd, 0xe7, 0xda, 0x45, 0xd8, 0xe8, 0x8f, 0x7b, 0xf1, 0x20, + 0xca, 0x78, 0xeb, 0xd1, 0xf6, 0x42, 0xb0, 0x9d, 0x6e, 0xac, 0x78, 0xce, + 0x16, 0xca, 0x05, 0x27, 0x5b, 0xfa, 0xda, 0xa2, 0xe1, 0x3c, 0xea, 0xec, +}; +static const unsigned char kat2732_entropyinreseed[] = { + 0x2b, 0xe8, 0xa6, 0x57, 0xb7, 0xf5, 0xdf, 0xd9, 0x9e, 0x4c, 0x93, 0x78, + 0xc4, 0x19, 0x2e, 0x45, 0x0a, 0x48, 0xe9, 0x15, 0x2b, 0x5a, 0x6e, 0xd1, + 0x21, 0x94, 0x28, 0xa0, 0x5a, 0x69, 0x8f, 0x42, 0x29, 0xf5, 0x49, 0xb5, + 0x0f, 0x06, 0xbd, 0xc1, 0x08, 0x50, 0x06, 0xec, 0x69, 0x88, 0x26, 0xf7, +}; +static const unsigned char kat2732_addinreseed[] = {0}; +static const unsigned char kat2732_addin0[] = {0}; +static const unsigned char kat2732_addin1[] = {0}; +static const unsigned char kat2732_retbits[] = { + 0xf8, 0xa1, 0x1f, 0xfd, 0xc1, 0xd3, 0xe0, 0x67, 0x80, 0x07, 0x10, 0x40, + 0xf6, 0x13, 0xbb, 0xbb, 0x40, 0xeb, 0x3d, 0xd4, 0x7a, 0x2e, 0x62, 0x78, + 0x77, 0x9d, 0x25, 0xed, 0x33, 0x56, 0x43, 0x8a, 0x44, 0xaa, 0x45, 0x10, + 0xbd, 0x2c, 0xd3, 0x86, 0xc7, 0x45, 0x99, 0x6e, 0x15, 0x69, 0x49, 0xbc, + 0x5d, 0x7a, 0x1f, 0x2d, 0x8a, 0xb7, 0x98, 0x92, 0xa6, 0x05, 0xff, 0x2c, + 0x8a, 0x80, 0x19, 0xcc, +}; +static const struct drbg_kat_pr_false kat2732_t = { + 1, kat2732_entropyin, kat2732_nonce, kat2732_persstr, + kat2732_entropyinreseed, kat2732_addinreseed, kat2732_addin0, + kat2732_addin1, kat2732_retbits +}; +static const struct drbg_kat kat2732 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2732_t +}; + +static const unsigned char kat2733_entropyin[] = { + 0x82, 0xf5, 0xdd, 0xd3, 0xa5, 0x42, 0x2d, 0x53, 0x66, 0x95, 0x19, 0x0a, + 0xb2, 0x14, 0x73, 0xff, 0x7c, 0x14, 0xa7, 0xf1, 0xf1, 0xa0, 0xce, 0xa9, + 0x02, 0x5b, 0x37, 0xbe, 0xdb, 0x05, 0x6a, 0xe9, 0xab, 0xd7, 0x1e, 0x55, + 0x9e, 0x6c, 0x5c, 0xf0, 0xaf, 0x69, 0xe6, 0xed, 0x4a, 0xf3, 0x98, 0x76, +}; +static const unsigned char kat2733_nonce[] = {0}; +static const unsigned char kat2733_persstr[] = { + 0x56, 0x04, 0x27, 0x9f, 0x9d, 0x30, 0x62, 0xf2, 0xc6, 0x6f, 0x31, 0x14, + 0x8b, 0x2c, 0x14, 0x62, 0x24, 0x69, 0xb5, 0x95, 0xd0, 0x2d, 0xa1, 0xf1, + 0xad, 0x49, 0xa5, 0x73, 0xbb, 0xb7, 0xa3, 0xcd, 0x5d, 0x50, 0xdc, 0x4a, + 0xf9, 0xd0, 0xe0, 0xf1, 0xbd, 0xd7, 0x07, 0x90, 0x41, 0xb0, 0x0d, 0x46, +}; +static const unsigned char kat2733_entropyinreseed[] = { + 0xc2, 0xab, 0x5c, 0x98, 0xa6, 0x77, 0x0b, 0xed, 0xff, 0x18, 0xba, 0xea, + 0xaf, 0xf9, 0xc4, 0x65, 0x6e, 0x9a, 0xfa, 0x23, 0xca, 0xf9, 0xbf, 0xca, + 0xdd, 0x98, 0x71, 0xc9, 0x9a, 0xb4, 0xf9, 0x33, 0xd4, 0xce, 0x81, 0xd0, + 0x5f, 0xd1, 0xe5, 0x8a, 0x90, 0x3a, 0xdd, 0x27, 0xc3, 0xb9, 0x93, 0x0f, +}; +static const unsigned char kat2733_addinreseed[] = {0}; +static const unsigned char kat2733_addin0[] = {0}; +static const unsigned char kat2733_addin1[] = {0}; +static const unsigned char kat2733_retbits[] = { + 0x69, 0x8d, 0xb7, 0x10, 0x0c, 0x3d, 0xf5, 0x35, 0xc7, 0x55, 0x87, 0xca, + 0x23, 0x42, 0xc7, 0x05, 0x18, 0xf3, 0xa5, 0xec, 0xb6, 0x7a, 0x74, 0x2f, + 0x7c, 0x83, 0x5d, 0x59, 0x13, 0xe0, 0xca, 0x72, 0x8e, 0xe9, 0x49, 0x23, + 0xe8, 0x7f, 0xc9, 0xd5, 0xcc, 0x21, 0x60, 0xf7, 0x0e, 0x69, 0x9a, 0x32, + 0x87, 0xda, 0x42, 0x65, 0xdb, 0x0e, 0xde, 0xff, 0xf8, 0xb1, 0x9a, 0xe2, + 0x0e, 0x52, 0x7d, 0xe2, +}; +static const struct drbg_kat_pr_false kat2733_t = { + 2, kat2733_entropyin, kat2733_nonce, kat2733_persstr, + kat2733_entropyinreseed, kat2733_addinreseed, kat2733_addin0, + kat2733_addin1, kat2733_retbits +}; +static const struct drbg_kat kat2733 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2733_t +}; + +static const unsigned char kat2734_entropyin[] = { + 0x9f, 0x71, 0xab, 0x85, 0x37, 0xb7, 0xc4, 0x79, 0x3d, 0xde, 0x60, 0xc6, + 0xfe, 0xe3, 0xd4, 0x54, 0xf0, 0xe7, 0x06, 0x5f, 0xe6, 0xc2, 0xc0, 0x84, + 0x4f, 0xf6, 0xcd, 0x83, 0x8b, 0xa5, 0xae, 0x9e, 0x77, 0xe8, 0x72, 0x40, + 0xf4, 0x70, 0xf7, 0x25, 0x11, 0x65, 0xa3, 0x31, 0x60, 0x83, 0x08, 0x3d, +}; +static const unsigned char kat2734_nonce[] = {0}; +static const unsigned char kat2734_persstr[] = { + 0x29, 0x77, 0xd0, 0xfd, 0xf3, 0x66, 0xff, 0xc1, 0x39, 0x18, 0x7b, 0xf7, + 0x43, 0x12, 0x45, 0x1d, 0xc0, 0xba, 0x01, 0x06, 0xef, 0xbc, 0xf2, 0x3d, + 0xb1, 0x46, 0x8d, 0xa3, 0x79, 0xed, 0xff, 0x5d, 0x2b, 0x06, 0xca, 0x01, + 0x7f, 0xdb, 0x7b, 0x1c, 0x1d, 0x3e, 0xdc, 0x0a, 0xa3, 0xcd, 0xe8, 0x48, +}; +static const unsigned char kat2734_entropyinreseed[] = { + 0x12, 0x2c, 0xbf, 0x6b, 0xc8, 0xe2, 0xb5, 0xdd, 0x7e, 0xd3, 0x75, 0xe0, + 0xd5, 0x4f, 0x5f, 0x8d, 0x93, 0x91, 0x73, 0x4f, 0xc3, 0x48, 0x08, 0xaf, + 0x73, 0x67, 0xcb, 0x48, 0x6d, 0x02, 0x58, 0x22, 0xb8, 0xaa, 0xe7, 0x4d, + 0xe3, 0x76, 0xb4, 0x75, 0x86, 0xcd, 0xad, 0x37, 0x4f, 0x05, 0x99, 0xe6, +}; +static const unsigned char kat2734_addinreseed[] = {0}; +static const unsigned char kat2734_addin0[] = {0}; +static const unsigned char kat2734_addin1[] = {0}; +static const unsigned char kat2734_retbits[] = { + 0x03, 0xde, 0x46, 0x36, 0x85, 0x03, 0x7a, 0xa9, 0x4a, 0x5b, 0x83, 0x52, + 0x1a, 0x36, 0x9e, 0x8c, 0xf7, 0xaf, 0x62, 0xec, 0x22, 0x8e, 0x7c, 0x96, + 0x15, 0xde, 0xf0, 0x82, 0x4a, 0x8e, 0x47, 0x11, 0x68, 0x66, 0x95, 0xe0, + 0x3e, 0x33, 0x90, 0x18, 0xcf, 0x70, 0xce, 0xa9, 0xc9, 0x59, 0x0a, 0xc4, + 0xe9, 0x56, 0x94, 0xf0, 0x9e, 0xe7, 0xd7, 0xd1, 0xb7, 0x0e, 0xab, 0x65, + 0xe1, 0xa0, 0x34, 0xc1, +}; +static const struct drbg_kat_pr_false kat2734_t = { + 3, kat2734_entropyin, kat2734_nonce, kat2734_persstr, + kat2734_entropyinreseed, kat2734_addinreseed, kat2734_addin0, + kat2734_addin1, kat2734_retbits +}; +static const struct drbg_kat kat2734 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2734_t +}; + +static const unsigned char kat2735_entropyin[] = { + 0xec, 0x2c, 0xb7, 0xfd, 0x16, 0x87, 0xee, 0xb7, 0x68, 0xe0, 0xaa, 0x90, + 0xe5, 0x02, 0x37, 0xf6, 0xf6, 0xb6, 0x94, 0x60, 0xbb, 0x90, 0x7a, 0x26, + 0xb0, 0x32, 0xf2, 0xe7, 0x2b, 0xc2, 0x0d, 0x9a, 0xe3, 0x1c, 0x39, 0x44, + 0x0f, 0xee, 0x46, 0x37, 0xb3, 0xb9, 0xc6, 0x09, 0xb0, 0x79, 0x3b, 0x8a, +}; +static const unsigned char kat2735_nonce[] = {0}; +static const unsigned char kat2735_persstr[] = { + 0xe3, 0x6b, 0x7f, 0x06, 0x00, 0x48, 0x29, 0xa8, 0x9b, 0x97, 0xf8, 0x40, + 0xe4, 0x1a, 0x19, 0x03, 0xea, 0x85, 0x8c, 0xce, 0x5d, 0x4b, 0x5b, 0x5c, + 0x20, 0xf7, 0x2d, 0x61, 0x3b, 0x8b, 0xf3, 0x19, 0xbf, 0x47, 0x45, 0x34, + 0x3e, 0x2c, 0x51, 0xb4, 0xec, 0x07, 0x01, 0x93, 0x8a, 0xd7, 0xeb, 0xdb, +}; +static const unsigned char kat2735_entropyinreseed[] = { + 0x1c, 0xed, 0x71, 0xaa, 0x0d, 0xb6, 0xa7, 0xdd, 0x04, 0xab, 0x97, 0x7a, + 0xb3, 0x3a, 0x9e, 0xc9, 0x7d, 0xe3, 0x93, 0x4b, 0x19, 0x94, 0x51, 0x6b, + 0x48, 0xb1, 0x93, 0x77, 0x77, 0xa9, 0x17, 0xae, 0x79, 0x3d, 0x83, 0xb3, + 0xdd, 0x50, 0x30, 0x5d, 0xd2, 0x36, 0xf2, 0x77, 0xbc, 0xab, 0x92, 0x2e, +}; +static const unsigned char kat2735_addinreseed[] = {0}; +static const unsigned char kat2735_addin0[] = {0}; +static const unsigned char kat2735_addin1[] = {0}; +static const unsigned char kat2735_retbits[] = { + 0xb9, 0xc8, 0x3e, 0x1f, 0xf7, 0x79, 0xbd, 0x79, 0xd2, 0x96, 0xa5, 0xfa, + 0x5c, 0xca, 0xd5, 0x3c, 0x87, 0xdf, 0x26, 0xed, 0x36, 0x4b, 0xc8, 0xb5, + 0xc9, 0xf9, 0xa3, 0xee, 0xa5, 0x48, 0xfa, 0xa3, 0x41, 0x49, 0xb6, 0x8c, + 0xa6, 0x5f, 0x6f, 0x39, 0x47, 0x24, 0x6c, 0x93, 0xf0, 0xbb, 0x4e, 0x43, + 0x07, 0xe5, 0x3f, 0x86, 0x26, 0xf1, 0x76, 0x36, 0x08, 0x96, 0x60, 0x81, + 0x35, 0x73, 0x8f, 0x75, +}; +static const struct drbg_kat_pr_false kat2735_t = { + 4, kat2735_entropyin, kat2735_nonce, kat2735_persstr, + kat2735_entropyinreseed, kat2735_addinreseed, kat2735_addin0, + kat2735_addin1, kat2735_retbits +}; +static const struct drbg_kat kat2735 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2735_t +}; + +static const unsigned char kat2736_entropyin[] = { + 0x37, 0x62, 0x81, 0x9e, 0xb5, 0x55, 0x27, 0x7d, 0x06, 0xed, 0x93, 0x23, + 0xab, 0x98, 0x9c, 0xf5, 0x10, 0x18, 0x87, 0xf5, 0x94, 0xe8, 0x3e, 0x4e, + 0x6a, 0xcb, 0x79, 0xc6, 0xe9, 0x8f, 0x41, 0x4a, 0x99, 0xa7, 0x6e, 0x6d, + 0xe2, 0x44, 0xe3, 0xe6, 0x0c, 0xe0, 0xa2, 0xd7, 0xe8, 0xa9, 0x9a, 0xef, +}; +static const unsigned char kat2736_nonce[] = {0}; +static const unsigned char kat2736_persstr[] = { + 0xdc, 0x31, 0xa8, 0x54, 0x91, 0x58, 0x5c, 0x0e, 0x1c, 0x6a, 0x7f, 0xa4, + 0x09, 0x45, 0x40, 0xf7, 0x7d, 0xee, 0xdd, 0x92, 0x45, 0x6e, 0x5e, 0x58, + 0xa3, 0x5f, 0x30, 0x66, 0x20, 0x6d, 0x7e, 0xbb, 0xd6, 0xb9, 0x35, 0x1d, + 0x4f, 0x7e, 0x0a, 0xe2, 0x38, 0x67, 0xc4, 0xd6, 0xe8, 0x9e, 0x3c, 0x50, +}; +static const unsigned char kat2736_entropyinreseed[] = { + 0xaa, 0x86, 0xce, 0x83, 0x63, 0xce, 0xc6, 0x55, 0xcf, 0x3e, 0x61, 0x7b, + 0x5c, 0x1f, 0xf6, 0x83, 0x47, 0x8b, 0x15, 0x53, 0x4c, 0x43, 0xf2, 0x96, + 0x7e, 0x64, 0xb2, 0x5f, 0x97, 0x22, 0x0d, 0x0a, 0x55, 0x01, 0x02, 0xb9, + 0xc8, 0x1a, 0x24, 0x34, 0x69, 0xd7, 0xf6, 0xec, 0x36, 0x91, 0x58, 0x6f, +}; +static const unsigned char kat2736_addinreseed[] = {0}; +static const unsigned char kat2736_addin0[] = {0}; +static const unsigned char kat2736_addin1[] = {0}; +static const unsigned char kat2736_retbits[] = { + 0x47, 0xf6, 0x78, 0xbe, 0x2f, 0x23, 0x06, 0x90, 0x2c, 0xc4, 0xd1, 0xc3, + 0xe6, 0x12, 0xaf, 0x02, 0x9b, 0xa7, 0x35, 0x10, 0x5f, 0x2d, 0x63, 0x1a, + 0xa5, 0x5e, 0x77, 0x4d, 0x71, 0x27, 0xb8, 0xd8, 0x63, 0x76, 0x72, 0x4e, + 0xb6, 0x7f, 0x3f, 0x19, 0x86, 0x7d, 0x6c, 0x57, 0xa6, 0x1a, 0x2b, 0xc7, + 0x2f, 0xd2, 0x17, 0x1d, 0xf2, 0xc3, 0xb9, 0xe0, 0x5e, 0x62, 0xfa, 0xa8, + 0xbc, 0xf6, 0xf5, 0xe2, +}; +static const struct drbg_kat_pr_false kat2736_t = { + 5, kat2736_entropyin, kat2736_nonce, kat2736_persstr, + kat2736_entropyinreseed, kat2736_addinreseed, kat2736_addin0, + kat2736_addin1, kat2736_retbits +}; +static const struct drbg_kat kat2736 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2736_t +}; + +static const unsigned char kat2737_entropyin[] = { + 0xae, 0x97, 0x8a, 0xfd, 0x23, 0x7a, 0x85, 0xe4, 0xde, 0x2c, 0xd3, 0x1a, + 0x18, 0xb9, 0xb3, 0x88, 0x17, 0xd7, 0xf9, 0x18, 0x82, 0x28, 0x5c, 0x94, + 0xdf, 0xc0, 0x90, 0x5f, 0x46, 0xe4, 0x84, 0x06, 0x3e, 0x7a, 0xab, 0x1f, + 0xde, 0x07, 0xeb, 0x63, 0x42, 0x4d, 0x07, 0x9a, 0x92, 0xb3, 0xc6, 0xd8, +}; +static const unsigned char kat2737_nonce[] = {0}; +static const unsigned char kat2737_persstr[] = { + 0x48, 0xf6, 0xc7, 0x5b, 0x8b, 0x2d, 0xc0, 0x18, 0x64, 0xb2, 0xca, 0x28, + 0x83, 0x3a, 0x64, 0xa5, 0x46, 0x2a, 0x4a, 0x3b, 0x51, 0x62, 0xbb, 0xf6, + 0xd9, 0xbb, 0x48, 0xd4, 0x6e, 0x96, 0x52, 0x9b, 0x67, 0xf8, 0x65, 0x1c, + 0xd7, 0x82, 0xba, 0x7b, 0xbe, 0x2b, 0x5f, 0xf3, 0xfd, 0x8b, 0x20, 0x4a, +}; +static const unsigned char kat2737_entropyinreseed[] = { + 0x5e, 0x3d, 0x63, 0xb5, 0x19, 0xf1, 0xed, 0x0d, 0xdf, 0x0f, 0x16, 0xdf, + 0x03, 0x40, 0x60, 0xe6, 0xc6, 0x53, 0x43, 0x6c, 0x79, 0xdf, 0xf1, 0xa6, + 0xe7, 0x83, 0x20, 0x07, 0x28, 0x7d, 0xb3, 0x94, 0xfb, 0xca, 0x52, 0x7b, + 0x57, 0x04, 0x8f, 0x00, 0x86, 0xf8, 0xae, 0xeb, 0x5c, 0x01, 0x6f, 0x70, +}; +static const unsigned char kat2737_addinreseed[] = {0}; +static const unsigned char kat2737_addin0[] = {0}; +static const unsigned char kat2737_addin1[] = {0}; +static const unsigned char kat2737_retbits[] = { + 0xc3, 0xa5, 0xf9, 0xa7, 0xf2, 0x21, 0x9e, 0x8e, 0xde, 0x06, 0xf2, 0xe6, + 0x01, 0xb2, 0x92, 0x3e, 0x7c, 0x6b, 0x71, 0xc5, 0x6f, 0x02, 0x9e, 0x47, + 0xd0, 0x0d, 0x1d, 0xc1, 0x07, 0x67, 0x53, 0xf0, 0xa7, 0x25, 0x51, 0x1f, + 0x57, 0xd0, 0xf7, 0x2c, 0x8c, 0x1c, 0x71, 0x6f, 0x4e, 0xab, 0xcb, 0x8f, + 0x97, 0x8b, 0x23, 0xd3, 0xbe, 0x57, 0x2d, 0x86, 0x72, 0xa3, 0xeb, 0x58, + 0xe4, 0xdb, 0x4e, 0x54, +}; +static const struct drbg_kat_pr_false kat2737_t = { + 6, kat2737_entropyin, kat2737_nonce, kat2737_persstr, + kat2737_entropyinreseed, kat2737_addinreseed, kat2737_addin0, + kat2737_addin1, kat2737_retbits +}; +static const struct drbg_kat kat2737 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2737_t +}; + +static const unsigned char kat2738_entropyin[] = { + 0x0a, 0x57, 0xf0, 0x9c, 0x06, 0x23, 0x67, 0x3f, 0xc5, 0xca, 0x4d, 0xb9, + 0x81, 0x6c, 0xcb, 0x02, 0x1f, 0xfe, 0x39, 0xe7, 0xd8, 0x3b, 0x44, 0x48, + 0xc8, 0x94, 0xce, 0x8f, 0x48, 0x14, 0x90, 0x3a, 0x3d, 0x92, 0x11, 0x81, + 0x93, 0x84, 0x37, 0x4a, 0x2e, 0xfb, 0x7b, 0x2e, 0x53, 0xf4, 0xeb, 0x0a, +}; +static const unsigned char kat2738_nonce[] = {0}; +static const unsigned char kat2738_persstr[] = { + 0xf1, 0xab, 0x27, 0xd8, 0xd7, 0xf7, 0xa4, 0xa4, 0x80, 0x2c, 0x0d, 0xba, + 0xe5, 0x16, 0x45, 0x4e, 0x38, 0x5d, 0x5e, 0xfb, 0xb8, 0x4b, 0x65, 0x2f, + 0xae, 0x49, 0xca, 0xeb, 0xc1, 0xf2, 0x8e, 0x5c, 0xd3, 0xde, 0x4f, 0x7e, + 0x9a, 0xb8, 0x59, 0xd7, 0x1e, 0x9d, 0xf5, 0x32, 0xce, 0x3f, 0xf5, 0xd9, +}; +static const unsigned char kat2738_entropyinreseed[] = { + 0x1e, 0xcf, 0xb8, 0x01, 0x9f, 0xdf, 0xb9, 0x6f, 0xf4, 0x76, 0x33, 0x7c, + 0x1e, 0xd5, 0xb5, 0x3c, 0x58, 0xd5, 0x10, 0x1c, 0x0b, 0xd3, 0x81, 0xa9, + 0x15, 0xc3, 0x55, 0x3e, 0xe0, 0x0c, 0x52, 0xf1, 0x22, 0xb5, 0x94, 0xbb, + 0x2c, 0x60, 0x82, 0xfb, 0xc8, 0xb4, 0x74, 0xe0, 0xad, 0x87, 0x02, 0x33, +}; +static const unsigned char kat2738_addinreseed[] = {0}; +static const unsigned char kat2738_addin0[] = {0}; +static const unsigned char kat2738_addin1[] = {0}; +static const unsigned char kat2738_retbits[] = { + 0xe3, 0xd7, 0xd1, 0x05, 0x74, 0x50, 0xf9, 0xd8, 0xc6, 0x7a, 0xed, 0x69, + 0xfd, 0x4d, 0x5a, 0x22, 0xc5, 0xe7, 0xa3, 0xfd, 0x0e, 0x67, 0x67, 0x9d, + 0xcb, 0xed, 0x90, 0xd6, 0xc4, 0x43, 0x51, 0x7f, 0xda, 0xe2, 0x0a, 0xa0, + 0x13, 0xcb, 0x9b, 0xff, 0x3f, 0x28, 0x06, 0xd4, 0x73, 0x14, 0x30, 0xc4, + 0x27, 0xf3, 0xd2, 0xb2, 0xf5, 0xf4, 0x64, 0x50, 0xaf, 0x8b, 0x04, 0x59, + 0x40, 0xa4, 0x59, 0xdc, +}; +static const struct drbg_kat_pr_false kat2738_t = { + 7, kat2738_entropyin, kat2738_nonce, kat2738_persstr, + kat2738_entropyinreseed, kat2738_addinreseed, kat2738_addin0, + kat2738_addin1, kat2738_retbits +}; +static const struct drbg_kat kat2738 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2738_t +}; + +static const unsigned char kat2739_entropyin[] = { + 0x42, 0x59, 0x55, 0xfd, 0xfa, 0x0f, 0x37, 0xf1, 0xef, 0x8f, 0xf3, 0x6c, + 0xa9, 0x01, 0x35, 0x20, 0xda, 0xee, 0x7f, 0xea, 0x30, 0xd7, 0x81, 0x0b, + 0x3f, 0xed, 0xce, 0xc3, 0x1b, 0xa3, 0x7f, 0x38, 0xfe, 0x51, 0x0c, 0x91, + 0xaa, 0x3a, 0x29, 0x79, 0x5e, 0x47, 0x4a, 0x85, 0x1d, 0x3a, 0x51, 0x5d, +}; +static const unsigned char kat2739_nonce[] = {0}; +static const unsigned char kat2739_persstr[] = { + 0x72, 0x3d, 0x97, 0x3a, 0xee, 0xeb, 0x21, 0xbd, 0xb1, 0x45, 0x0a, 0x39, + 0x90, 0x33, 0x48, 0xbf, 0x22, 0x2e, 0x86, 0xd3, 0x23, 0xda, 0xe0, 0x43, + 0x5f, 0x5e, 0xb8, 0x2d, 0xf9, 0xa0, 0xce, 0xc5, 0x6c, 0x1a, 0xd4, 0x83, + 0xf9, 0xeb, 0xe9, 0xd1, 0x97, 0x64, 0xff, 0xe2, 0x55, 0x79, 0xc6, 0xe5, +}; +static const unsigned char kat2739_entropyinreseed[] = { + 0x1a, 0xa4, 0x9c, 0xc9, 0xb8, 0xfc, 0x0c, 0xae, 0x63, 0xac, 0x66, 0x7a, + 0x5f, 0xcc, 0xc7, 0x77, 0x57, 0xee, 0xc0, 0x1b, 0xa2, 0xb6, 0xa9, 0x65, + 0x47, 0xdf, 0xba, 0xe1, 0xf0, 0xa7, 0x8b, 0x9a, 0xcc, 0xf0, 0xd5, 0x44, + 0x95, 0x47, 0x54, 0x76, 0xcb, 0xa4, 0x72, 0xd5, 0x06, 0x38, 0xe7, 0x18, +}; +static const unsigned char kat2739_addinreseed[] = {0}; +static const unsigned char kat2739_addin0[] = {0}; +static const unsigned char kat2739_addin1[] = {0}; +static const unsigned char kat2739_retbits[] = { + 0x76, 0x72, 0x60, 0x6b, 0xa0, 0xe9, 0x4b, 0x33, 0x33, 0x43, 0x2a, 0x5b, + 0x6a, 0x3a, 0xe1, 0x60, 0x18, 0x48, 0xc1, 0x51, 0x45, 0x6b, 0xe3, 0xc9, + 0x86, 0x17, 0xf5, 0xc7, 0x37, 0x7a, 0xba, 0x1c, 0xfa, 0xbe, 0x23, 0x95, + 0x73, 0xfb, 0xbc, 0xcb, 0xf0, 0xa6, 0x3a, 0xf5, 0xb1, 0xf6, 0x7b, 0x15, + 0x2e, 0x7e, 0x84, 0xbf, 0xd7, 0x6e, 0x54, 0x83, 0xfd, 0x07, 0x99, 0xd8, + 0x79, 0xf1, 0xe3, 0xbb, +}; +static const struct drbg_kat_pr_false kat2739_t = { + 8, kat2739_entropyin, kat2739_nonce, kat2739_persstr, + kat2739_entropyinreseed, kat2739_addinreseed, kat2739_addin0, + kat2739_addin1, kat2739_retbits +}; +static const struct drbg_kat kat2739 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2739_t +}; + +static const unsigned char kat2740_entropyin[] = { + 0x8b, 0xce, 0x33, 0xcd, 0x43, 0x24, 0xfa, 0x53, 0xe5, 0xba, 0x97, 0x79, + 0x04, 0x9e, 0xc6, 0x8a, 0x58, 0xf6, 0xec, 0x84, 0x0d, 0x4e, 0x23, 0x61, + 0x76, 0x02, 0xa6, 0xca, 0x11, 0x25, 0xaa, 0x18, 0x4f, 0x6d, 0x6c, 0xc3, + 0x46, 0x1f, 0xd4, 0xb7, 0x3f, 0x53, 0x21, 0x3f, 0xff, 0x2a, 0x6d, 0xab, +}; +static const unsigned char kat2740_nonce[] = {0}; +static const unsigned char kat2740_persstr[] = { + 0x4e, 0xec, 0x7d, 0xb6, 0xd4, 0x98, 0xef, 0x2d, 0x80, 0xc0, 0xfd, 0xab, + 0xe2, 0x86, 0xb4, 0xa7, 0xd2, 0x51, 0x74, 0x8b, 0x74, 0x0a, 0x45, 0x87, + 0x84, 0xc8, 0x34, 0xe3, 0x31, 0x1c, 0x89, 0x44, 0x14, 0x9d, 0xb6, 0xae, + 0x7c, 0x4b, 0x3c, 0xe0, 0x09, 0x82, 0xa9, 0x05, 0x82, 0x81, 0x21, 0x6b, +}; +static const unsigned char kat2740_entropyinreseed[] = { + 0x05, 0x5a, 0xee, 0x66, 0x40, 0x88, 0x2c, 0x70, 0x0f, 0xac, 0xaa, 0x89, + 0x4e, 0xe6, 0x1a, 0x48, 0x7f, 0x82, 0x4e, 0xc6, 0x8c, 0x1f, 0xc0, 0xd8, + 0xfb, 0x10, 0x58, 0x48, 0x10, 0xf4, 0x4a, 0x5d, 0x82, 0x66, 0x55, 0x0d, + 0x93, 0x93, 0xc9, 0x14, 0x55, 0x53, 0xc3, 0x67, 0xca, 0x56, 0x81, 0x85, +}; +static const unsigned char kat2740_addinreseed[] = {0}; +static const unsigned char kat2740_addin0[] = {0}; +static const unsigned char kat2740_addin1[] = {0}; +static const unsigned char kat2740_retbits[] = { + 0xa7, 0x08, 0x8e, 0x0b, 0x15, 0xc1, 0x2b, 0x18, 0x87, 0x18, 0x85, 0x55, + 0x50, 0xd0, 0x4a, 0xf7, 0x32, 0x78, 0x00, 0x2d, 0x63, 0x2d, 0x1a, 0x34, + 0x1a, 0xb6, 0xb3, 0xa5, 0x70, 0x0f, 0x04, 0xf8, 0x4d, 0x3c, 0x4c, 0xa6, + 0x49, 0x72, 0xce, 0xd4, 0x3e, 0x9f, 0x76, 0x14, 0x3e, 0xa2, 0x07, 0x46, + 0x44, 0xce, 0xef, 0x7f, 0x5c, 0x8a, 0xa5, 0x79, 0x5e, 0x8f, 0x69, 0x20, + 0x74, 0xac, 0x95, 0xc1, +}; +static const struct drbg_kat_pr_false kat2740_t = { + 9, kat2740_entropyin, kat2740_nonce, kat2740_persstr, + kat2740_entropyinreseed, kat2740_addinreseed, kat2740_addin0, + kat2740_addin1, kat2740_retbits +}; +static const struct drbg_kat kat2740 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2740_t +}; + +static const unsigned char kat2741_entropyin[] = { + 0x09, 0x74, 0x1d, 0xe4, 0x7f, 0x53, 0x77, 0xfb, 0x94, 0xf9, 0x9a, 0x0d, + 0xe8, 0x76, 0x12, 0x7a, 0xad, 0x00, 0xf8, 0x8e, 0x59, 0x89, 0xe5, 0xea, + 0xbc, 0xec, 0x2e, 0x75, 0xf3, 0xcf, 0x9e, 0x8c, 0x72, 0x65, 0xda, 0x02, + 0xc8, 0x02, 0x61, 0xdb, 0x4d, 0xbe, 0xea, 0x46, 0x6a, 0x80, 0xa6, 0xf4, +}; +static const unsigned char kat2741_nonce[] = {0}; +static const unsigned char kat2741_persstr[] = { + 0xb6, 0x5b, 0xc8, 0xfd, 0x77, 0xe2, 0xe3, 0xe3, 0x44, 0x3d, 0x73, 0xa3, + 0x0c, 0x09, 0xdd, 0x08, 0x5c, 0x0b, 0xd6, 0x56, 0x4a, 0xc0, 0xec, 0xec, + 0xb4, 0xfd, 0xab, 0x5a, 0xcc, 0xb7, 0x22, 0x28, 0x6a, 0xd8, 0x40, 0x28, + 0x6c, 0x48, 0x22, 0x1a, 0xf5, 0xab, 0xd5, 0x55, 0x1b, 0x58, 0xe8, 0x3a, +}; +static const unsigned char kat2741_entropyinreseed[] = { + 0x65, 0x90, 0x01, 0x06, 0x56, 0x7b, 0xe7, 0x90, 0xba, 0xba, 0xe0, 0xb8, + 0x1f, 0x28, 0x77, 0xa9, 0xc1, 0x64, 0x2a, 0xf3, 0xc5, 0x82, 0x82, 0xe1, + 0x34, 0xcd, 0xd3, 0xb0, 0x92, 0x00, 0x99, 0xf9, 0x36, 0xcb, 0xbf, 0x14, + 0x15, 0x02, 0xcc, 0xb5, 0x86, 0x0e, 0xa1, 0x0b, 0xce, 0x39, 0x4c, 0x0b, +}; +static const unsigned char kat2741_addinreseed[] = {0}; +static const unsigned char kat2741_addin0[] = {0}; +static const unsigned char kat2741_addin1[] = {0}; +static const unsigned char kat2741_retbits[] = { + 0x1a, 0xce, 0x19, 0xb7, 0x25, 0xa9, 0xde, 0xb1, 0x3b, 0xcf, 0xcc, 0x1e, + 0x4d, 0x39, 0xb6, 0x04, 0xb2, 0x65, 0x56, 0x92, 0x7f, 0x60, 0xc3, 0x67, + 0x93, 0x6c, 0xbe, 0x0e, 0x76, 0x12, 0x7d, 0x3d, 0xde, 0xcb, 0x73, 0xf5, + 0x2e, 0xf3, 0x98, 0x83, 0xa9, 0xde, 0xf2, 0x35, 0x56, 0x6d, 0x01, 0xdd, + 0x4f, 0x73, 0x40, 0x28, 0xce, 0x82, 0xbc, 0x5f, 0xb9, 0xca, 0x30, 0x0f, + 0x3f, 0x5d, 0xd0, 0x80, +}; +static const struct drbg_kat_pr_false kat2741_t = { + 10, kat2741_entropyin, kat2741_nonce, kat2741_persstr, + kat2741_entropyinreseed, kat2741_addinreseed, kat2741_addin0, + kat2741_addin1, kat2741_retbits +}; +static const struct drbg_kat kat2741 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2741_t +}; + +static const unsigned char kat2742_entropyin[] = { + 0x5e, 0xd4, 0xb6, 0xe4, 0x53, 0xa3, 0x1c, 0x0b, 0x04, 0xf9, 0x60, 0xb7, + 0x39, 0xf4, 0xac, 0x06, 0x1c, 0xb7, 0x19, 0xa7, 0x09, 0x19, 0x70, 0x9b, + 0xd5, 0xdb, 0xfe, 0xa9, 0x10, 0xeb, 0x4e, 0x4d, 0xc3, 0x40, 0x31, 0xe0, + 0x29, 0x8a, 0x12, 0xc7, 0xd6, 0x8e, 0x65, 0xa3, 0x8e, 0x6e, 0xaa, 0xe9, +}; +static const unsigned char kat2742_nonce[] = {0}; +static const unsigned char kat2742_persstr[] = { + 0x45, 0x8d, 0x21, 0x4a, 0x18, 0xfe, 0x1f, 0xd2, 0xc7, 0x62, 0xc7, 0x7c, + 0xb9, 0x8a, 0x56, 0x19, 0xd7, 0xe4, 0x8a, 0xaf, 0xa8, 0x31, 0x10, 0xc8, + 0x57, 0x8d, 0x10, 0x72, 0xd5, 0x77, 0xb9, 0x3e, 0x53, 0xa1, 0x3a, 0xc7, + 0x00, 0x61, 0x21, 0x01, 0xb7, 0x86, 0x2c, 0xa9, 0x4e, 0xb8, 0x7c, 0xa4, +}; +static const unsigned char kat2742_entropyinreseed[] = { + 0xaa, 0x82, 0x9f, 0x4e, 0xa1, 0x5b, 0xec, 0x4a, 0x9d, 0xdd, 0x93, 0x3c, + 0xf6, 0xc4, 0x7d, 0xe6, 0x0f, 0x7e, 0x2c, 0xd1, 0x72, 0x28, 0x7e, 0xb5, + 0x02, 0xb9, 0xc7, 0xbe, 0xda, 0x32, 0x66, 0x1e, 0x1c, 0xa2, 0x7b, 0xe2, + 0x6c, 0x1f, 0xb2, 0xe7, 0xa6, 0x67, 0xca, 0x1e, 0x04, 0x66, 0xaa, 0xd4, +}; +static const unsigned char kat2742_addinreseed[] = {0}; +static const unsigned char kat2742_addin0[] = {0}; +static const unsigned char kat2742_addin1[] = {0}; +static const unsigned char kat2742_retbits[] = { + 0xef, 0x40, 0x26, 0x14, 0x4d, 0x7d, 0xba, 0x42, 0xbc, 0xa2, 0x58, 0xa0, + 0xb0, 0xcf, 0xe8, 0x81, 0xe6, 0x21, 0xf6, 0x5e, 0x19, 0xc2, 0x67, 0x17, + 0x9c, 0x00, 0x88, 0xb7, 0x82, 0x9d, 0x9d, 0xdf, 0xee, 0x39, 0xfc, 0x8f, + 0x9c, 0xdf, 0xec, 0xf0, 0xd4, 0x51, 0xdc, 0x7d, 0xf1, 0x73, 0xd6, 0x79, + 0xbc, 0x50, 0x31, 0x90, 0x79, 0x5d, 0x4b, 0xe6, 0x79, 0x09, 0xac, 0xc1, + 0x7b, 0xb2, 0x04, 0x70, +}; +static const struct drbg_kat_pr_false kat2742_t = { + 11, kat2742_entropyin, kat2742_nonce, kat2742_persstr, + kat2742_entropyinreseed, kat2742_addinreseed, kat2742_addin0, + kat2742_addin1, kat2742_retbits +}; +static const struct drbg_kat kat2742 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2742_t +}; + +static const unsigned char kat2743_entropyin[] = { + 0x93, 0x86, 0x02, 0xd7, 0x5e, 0xa1, 0x1e, 0x8b, 0x1e, 0xb0, 0x37, 0x38, + 0x1b, 0x8e, 0x76, 0x43, 0xb1, 0x29, 0x67, 0xaa, 0xe4, 0x98, 0x2a, 0x4b, + 0x4e, 0xed, 0x05, 0x4b, 0xab, 0xc7, 0x8f, 0xe4, 0xdb, 0xfa, 0x83, 0x2a, + 0x0b, 0x3d, 0xde, 0x8d, 0x2d, 0x1e, 0xd4, 0x23, 0xd8, 0x07, 0xc1, 0x3a, +}; +static const unsigned char kat2743_nonce[] = {0}; +static const unsigned char kat2743_persstr[] = { + 0xc0, 0x94, 0x24, 0xe7, 0x79, 0x01, 0xb1, 0xf0, 0x21, 0xc9, 0x61, 0x24, + 0xc8, 0xb2, 0xe8, 0x70, 0x8e, 0x3d, 0xea, 0x33, 0x9d, 0x15, 0xd7, 0x55, + 0x4d, 0xbe, 0x19, 0x76, 0x0a, 0x99, 0xa8, 0xc6, 0x0b, 0x2e, 0x8f, 0x20, + 0x88, 0x04, 0xeb, 0x6f, 0x6b, 0xef, 0x43, 0xd5, 0xb7, 0xdb, 0x62, 0x3f, +}; +static const unsigned char kat2743_entropyinreseed[] = { + 0xef, 0x63, 0x64, 0xff, 0x1c, 0x3d, 0x9b, 0x0c, 0x24, 0x0e, 0xbf, 0x62, + 0xfc, 0x52, 0x76, 0x8b, 0x74, 0x8f, 0x16, 0x58, 0x10, 0x07, 0x64, 0x9a, + 0xd9, 0xef, 0x4b, 0x6c, 0x72, 0x17, 0x62, 0x55, 0x50, 0x8f, 0x6e, 0x20, + 0x15, 0xaa, 0xb2, 0xf9, 0x54, 0x21, 0xac, 0x7a, 0x58, 0x2c, 0x62, 0x05, +}; +static const unsigned char kat2743_addinreseed[] = {0}; +static const unsigned char kat2743_addin0[] = {0}; +static const unsigned char kat2743_addin1[] = {0}; +static const unsigned char kat2743_retbits[] = { + 0xfa, 0xa4, 0x8f, 0x2f, 0xdb, 0xf3, 0x1e, 0xa2, 0x57, 0xe0, 0x10, 0xcc, + 0x74, 0xef, 0x2d, 0x50, 0xd3, 0x36, 0xb2, 0xaa, 0xfd, 0x4f, 0xe8, 0xb3, + 0xce, 0x8f, 0xcf, 0x80, 0x3a, 0x43, 0x5e, 0x57, 0xea, 0xfa, 0x18, 0x93, + 0x8e, 0x35, 0xfe, 0x9c, 0x3a, 0x01, 0xd9, 0x2f, 0x2b, 0x7b, 0x1b, 0xbe, + 0x7e, 0x05, 0x5d, 0xc6, 0x30, 0xc7, 0x01, 0xe2, 0x88, 0xc1, 0xfd, 0xed, + 0x75, 0xe5, 0xb0, 0xe0, +}; +static const struct drbg_kat_pr_false kat2743_t = { + 12, kat2743_entropyin, kat2743_nonce, kat2743_persstr, + kat2743_entropyinreseed, kat2743_addinreseed, kat2743_addin0, + kat2743_addin1, kat2743_retbits +}; +static const struct drbg_kat kat2743 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2743_t +}; + +static const unsigned char kat2744_entropyin[] = { + 0xb8, 0xf2, 0x02, 0x8c, 0xa7, 0x4f, 0x8a, 0x05, 0x92, 0xc9, 0x9d, 0x0a, + 0xe4, 0x97, 0x43, 0x85, 0x62, 0xce, 0x1b, 0x7a, 0x49, 0x1f, 0xb6, 0xdb, + 0x73, 0xc4, 0xf8, 0xcd, 0xa2, 0x85, 0xa9, 0x34, 0x77, 0x7b, 0x17, 0xe4, + 0x72, 0x70, 0x7f, 0x22, 0x17, 0x07, 0x9b, 0x9d, 0x8d, 0x65, 0x56, 0x2b, +}; +static const unsigned char kat2744_nonce[] = {0}; +static const unsigned char kat2744_persstr[] = { + 0x21, 0xde, 0xf8, 0xc9, 0xfc, 0x10, 0xce, 0xe6, 0xfc, 0xe2, 0x24, 0x01, + 0xc4, 0xef, 0x13, 0xb1, 0x7d, 0x33, 0xa6, 0x04, 0xaa, 0xa7, 0x0f, 0x92, + 0x41, 0x36, 0xf6, 0x63, 0x5b, 0x2e, 0x59, 0xe0, 0x09, 0x9c, 0x77, 0x8e, + 0x4c, 0xb2, 0x7b, 0x09, 0x3b, 0xae, 0xf9, 0x4d, 0x5a, 0xc1, 0x07, 0x70, +}; +static const unsigned char kat2744_entropyinreseed[] = { + 0x80, 0xe9, 0x6e, 0x6b, 0x97, 0x1d, 0x14, 0x36, 0x86, 0x1f, 0x85, 0xf1, + 0xb2, 0x3c, 0xd7, 0xf4, 0x79, 0x74, 0xa0, 0x6b, 0x17, 0x57, 0x0c, 0x33, + 0x7d, 0x6f, 0x5e, 0x98, 0xac, 0x42, 0xd0, 0xc3, 0x0e, 0x23, 0xf7, 0x4d, + 0x78, 0x97, 0x85, 0x01, 0xcd, 0x99, 0x0c, 0x93, 0x0a, 0xf4, 0xf8, 0xe8, +}; +static const unsigned char kat2744_addinreseed[] = {0}; +static const unsigned char kat2744_addin0[] = {0}; +static const unsigned char kat2744_addin1[] = {0}; +static const unsigned char kat2744_retbits[] = { + 0x77, 0x20, 0x21, 0x2b, 0x01, 0x89, 0xce, 0x42, 0xe9, 0x69, 0xa9, 0xbc, + 0x59, 0x8a, 0x17, 0x94, 0x91, 0xd3, 0x93, 0x48, 0x3f, 0xd7, 0x45, 0x60, + 0x47, 0xf8, 0x1a, 0x70, 0x80, 0x76, 0xf8, 0x8d, 0x34, 0xa7, 0x15, 0x46, + 0xea, 0xfd, 0xc3, 0x55, 0x6e, 0x31, 0x21, 0x38, 0xa3, 0x31, 0x08, 0xc9, + 0x1f, 0xd8, 0xe8, 0x1a, 0x96, 0x3d, 0xd3, 0x7e, 0x03, 0xc8, 0x95, 0xb6, + 0x30, 0x44, 0x86, 0x98, +}; +static const struct drbg_kat_pr_false kat2744_t = { + 13, kat2744_entropyin, kat2744_nonce, kat2744_persstr, + kat2744_entropyinreseed, kat2744_addinreseed, kat2744_addin0, + kat2744_addin1, kat2744_retbits +}; +static const struct drbg_kat kat2744 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2744_t +}; + +static const unsigned char kat2745_entropyin[] = { + 0xd1, 0x75, 0x7e, 0x36, 0x87, 0xb5, 0x7a, 0xb3, 0xb1, 0x6e, 0xf6, 0xf4, + 0x3a, 0xb4, 0x56, 0xe7, 0xd2, 0xc6, 0xcc, 0x18, 0x2c, 0x0b, 0x83, 0x76, + 0xcf, 0x84, 0x77, 0x98, 0xa0, 0x21, 0x77, 0x07, 0xe5, 0x7b, 0xce, 0x5c, + 0xb3, 0x26, 0xcc, 0x7d, 0x1b, 0x5b, 0xb3, 0x6f, 0x21, 0x3c, 0xc6, 0x21, +}; +static const unsigned char kat2745_nonce[] = {0}; +static const unsigned char kat2745_persstr[] = { + 0x53, 0x1b, 0x64, 0xbe, 0x5d, 0x25, 0x93, 0x7f, 0x30, 0xbe, 0xd8, 0x86, + 0xf2, 0x02, 0x18, 0x55, 0xdb, 0x1b, 0x63, 0x77, 0x7f, 0xeb, 0xe6, 0x69, + 0x5e, 0xb4, 0xf2, 0xa5, 0xe3, 0xbb, 0xfe, 0x6c, 0xe8, 0x0f, 0xaf, 0xeb, + 0x8e, 0x7f, 0x81, 0x1e, 0x06, 0xcb, 0x87, 0xe5, 0x20, 0xa7, 0x03, 0x6f, +}; +static const unsigned char kat2745_entropyinreseed[] = { + 0x35, 0x01, 0x12, 0x07, 0x1b, 0x83, 0x15, 0xaf, 0xa2, 0x6f, 0xa3, 0xd9, + 0xbe, 0x6b, 0x6d, 0xec, 0x59, 0xba, 0x7f, 0xed, 0x23, 0x87, 0x55, 0x6c, + 0xde, 0xc4, 0x3a, 0xb8, 0xde, 0xf9, 0x20, 0x50, 0xd2, 0xf0, 0xfd, 0x34, + 0xef, 0x0c, 0x83, 0x7c, 0x02, 0x2c, 0x33, 0x7f, 0x22, 0x7b, 0x21, 0x69, +}; +static const unsigned char kat2745_addinreseed[] = {0}; +static const unsigned char kat2745_addin0[] = {0}; +static const unsigned char kat2745_addin1[] = {0}; +static const unsigned char kat2745_retbits[] = { + 0x47, 0xad, 0x3d, 0x7e, 0xf4, 0xe7, 0xbc, 0x46, 0x96, 0xd0, 0x39, 0xb6, + 0xe4, 0x24, 0x66, 0x92, 0x00, 0xb5, 0xf6, 0xc6, 0x87, 0xf8, 0x13, 0xc2, + 0x70, 0x48, 0x37, 0x93, 0x51, 0x8a, 0xdf, 0x66, 0x98, 0xaa, 0x40, 0xa7, + 0x81, 0x20, 0x88, 0x78, 0x01, 0x7b, 0xf7, 0x7a, 0xfe, 0xb2, 0xf9, 0x87, + 0x94, 0xd2, 0x15, 0x78, 0x62, 0x38, 0x88, 0xeb, 0x98, 0x13, 0x5e, 0xf0, + 0xe5, 0x12, 0x1c, 0x57, +}; +static const struct drbg_kat_pr_false kat2745_t = { + 14, kat2745_entropyin, kat2745_nonce, kat2745_persstr, + kat2745_entropyinreseed, kat2745_addinreseed, kat2745_addin0, + kat2745_addin1, kat2745_retbits +}; +static const struct drbg_kat kat2745 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2745_t +}; + +static const unsigned char kat2746_entropyin[] = { + 0xee, 0xd2, 0xcf, 0x41, 0xef, 0x92, 0x0a, 0x29, 0x8a, 0xa7, 0x1c, 0x28, + 0xc4, 0x63, 0x77, 0x39, 0x2b, 0x95, 0xcf, 0x75, 0x18, 0x2c, 0xb4, 0x7f, + 0xf2, 0x53, 0x9a, 0xc9, 0xdf, 0x5d, 0xb7, 0xb2, 0xb1, 0x4c, 0x3c, 0x99, + 0x90, 0x0c, 0xc7, 0x38, 0x9e, 0xff, 0xb7, 0x19, 0xba, 0xcb, 0x58, 0x1f, +}; +static const unsigned char kat2746_nonce[] = {0}; +static const unsigned char kat2746_persstr[] = { + 0x88, 0xcb, 0x73, 0x5f, 0x56, 0x98, 0x79, 0xf2, 0x4d, 0x95, 0x8b, 0x54, + 0xd4, 0xa5, 0x54, 0x4b, 0xd7, 0x28, 0x97, 0x1e, 0xc5, 0x31, 0xf8, 0x2e, + 0x02, 0xc1, 0x13, 0xb7, 0x83, 0x44, 0x6a, 0xfb, 0xec, 0x85, 0x7b, 0x50, + 0x5e, 0x00, 0xa1, 0xb5, 0xc8, 0xb2, 0x74, 0x9e, 0x1e, 0xb1, 0x9b, 0x03, +}; +static const unsigned char kat2746_entropyinreseed[] = { + 0xf0, 0x33, 0x01, 0xf2, 0x7e, 0x7f, 0x95, 0x19, 0xad, 0x94, 0x7d, 0x8b, + 0x16, 0x86, 0x2b, 0x47, 0x00, 0x8b, 0xc0, 0x3e, 0x55, 0xd2, 0xf0, 0xce, + 0x9b, 0xf8, 0x32, 0x32, 0xd3, 0xb0, 0xc8, 0x16, 0x58, 0x0f, 0xa5, 0x8b, + 0x5b, 0xc3, 0xfe, 0x63, 0x01, 0xf2, 0xcc, 0x8d, 0x03, 0xc9, 0xf8, 0x5e, +}; +static const unsigned char kat2746_addinreseed[] = { + 0xff, 0xc2, 0x3a, 0x43, 0xf8, 0x5a, 0xef, 0x5d, 0x29, 0xcf, 0xf5, 0xcd, + 0xf3, 0x27, 0x51, 0x77, 0x77, 0xf6, 0x8c, 0x01, 0x74, 0x22, 0x0f, 0xbc, + 0x82, 0x5c, 0x70, 0xeb, 0xa3, 0x52, 0x5f, 0x57, 0x9b, 0x10, 0xdd, 0x36, + 0x7d, 0x16, 0x3c, 0x74, 0x0c, 0x57, 0xdb, 0x0b, 0x6d, 0x88, 0xb3, 0x7c, +}; +static const unsigned char kat2746_addin0[] = { + 0xc5, 0xf1, 0x08, 0xeb, 0x45, 0x0d, 0xd6, 0x28, 0x42, 0x9a, 0x32, 0x1a, + 0xf4, 0x3a, 0x9d, 0xfa, 0xae, 0xc6, 0xbe, 0xf2, 0xd1, 0xca, 0xad, 0x89, + 0xbc, 0xd8, 0x6c, 0xc3, 0x5c, 0xa9, 0x5e, 0xd8, 0x5f, 0x79, 0x6b, 0xb3, + 0xba, 0xfb, 0x07, 0x1a, 0xd2, 0xd7, 0x08, 0x23, 0x0b, 0xf1, 0xbe, 0x84, +}; +static const unsigned char kat2746_addin1[] = { + 0xda, 0x2a, 0x98, 0xb2, 0x29, 0x8e, 0x3f, 0x4f, 0x69, 0x1e, 0x91, 0xfb, + 0x6c, 0x71, 0x9d, 0x67, 0xd3, 0xc3, 0x7a, 0x91, 0x6e, 0x50, 0xbd, 0x2a, + 0xec, 0x09, 0x26, 0x3c, 0x8e, 0x76, 0x16, 0xb7, 0x56, 0x19, 0x47, 0x2f, + 0x4d, 0xcf, 0xd9, 0x7b, 0xe1, 0x35, 0xc0, 0x9f, 0x0b, 0x82, 0x5f, 0x0a, +}; +static const unsigned char kat2746_retbits[] = { + 0x4e, 0xb6, 0xca, 0xac, 0xcc, 0x31, 0x7d, 0xad, 0xc8, 0x90, 0x37, 0x64, + 0x2e, 0x62, 0x16, 0xfa, 0x3a, 0x48, 0x32, 0x91, 0x51, 0x33, 0xe7, 0x36, + 0xd6, 0xa5, 0xc1, 0x00, 0x61, 0x39, 0x07, 0x6b, 0x4d, 0x8b, 0xb4, 0x4b, + 0x60, 0x5e, 0x1d, 0x6b, 0xf4, 0x14, 0xe2, 0x00, 0x52, 0x9d, 0x5f, 0xd9, + 0xd9, 0x5c, 0x76, 0xa9, 0x71, 0x4f, 0xd9, 0x1d, 0x4e, 0x56, 0xfc, 0x7d, + 0x90, 0xd6, 0x60, 0xa3, +}; +static const struct drbg_kat_pr_false kat2746_t = { + 0, kat2746_entropyin, kat2746_nonce, kat2746_persstr, + kat2746_entropyinreseed, kat2746_addinreseed, kat2746_addin0, + kat2746_addin1, kat2746_retbits +}; +static const struct drbg_kat kat2746 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2746_t +}; + +static const unsigned char kat2747_entropyin[] = { + 0x7e, 0xee, 0x67, 0x1f, 0x99, 0x8a, 0xe5, 0xa3, 0xa3, 0xe1, 0xa4, 0x71, + 0xee, 0xfa, 0x10, 0x9b, 0x3b, 0x1a, 0xcc, 0xa3, 0x30, 0x71, 0xec, 0x20, + 0x71, 0xc6, 0xb0, 0xb7, 0x9e, 0xdd, 0x10, 0x0c, 0x4e, 0xc6, 0x6d, 0xb8, + 0x8e, 0x0f, 0xab, 0xcd, 0x63, 0x0d, 0x3b, 0x11, 0x29, 0xf5, 0x65, 0x2a, +}; +static const unsigned char kat2747_nonce[] = {0}; +static const unsigned char kat2747_persstr[] = { + 0x24, 0x32, 0x97, 0x16, 0x12, 0x68, 0xc4, 0xdd, 0x27, 0x01, 0x2e, 0x77, + 0xe9, 0xe8, 0x0e, 0xe8, 0xaa, 0x3c, 0xd7, 0x2e, 0x02, 0x42, 0xe5, 0xc0, + 0xc3, 0xd2, 0x16, 0x68, 0x34, 0x49, 0x08, 0x61, 0x3a, 0x1e, 0x4e, 0x3b, + 0x65, 0x85, 0x85, 0xed, 0xa4, 0xde, 0x66, 0x39, 0x05, 0x80, 0xc5, 0xfc, +}; +static const unsigned char kat2747_entropyinreseed[] = { + 0xe7, 0xba, 0x06, 0xcb, 0x5d, 0xad, 0x2c, 0xe7, 0x3d, 0xd0, 0x7c, 0x79, + 0x39, 0x58, 0x1b, 0x13, 0x62, 0x72, 0x7e, 0xcd, 0xe7, 0x56, 0x7e, 0xfb, + 0xb1, 0x48, 0x3f, 0xba, 0x1f, 0x8c, 0xc7, 0x02, 0xd4, 0x25, 0x54, 0x4a, + 0xd9, 0x52, 0xf3, 0x44, 0x2d, 0xe7, 0x0c, 0x8b, 0x5c, 0xce, 0x53, 0xfd, +}; +static const unsigned char kat2747_addinreseed[] = { + 0x4a, 0x2c, 0xbe, 0xa0, 0x21, 0xae, 0xe0, 0xdb, 0xae, 0x40, 0xd7, 0x57, + 0x77, 0x83, 0xb8, 0xa7, 0x5c, 0xfd, 0x9d, 0x5f, 0x31, 0xc0, 0x46, 0x3e, + 0xbe, 0x98, 0x17, 0xc1, 0x1c, 0x6d, 0xe0, 0xdd, 0xa1, 0x54, 0x24, 0xa1, + 0x04, 0x55, 0xb3, 0xf4, 0xdc, 0x7f, 0x2b, 0xb1, 0xe2, 0xb7, 0xd9, 0x28, +}; +static const unsigned char kat2747_addin0[] = { + 0x2d, 0xf7, 0x57, 0xdc, 0x57, 0x6c, 0x62, 0x63, 0xe7, 0x0c, 0x3c, 0x69, + 0x3a, 0x0f, 0x96, 0x3c, 0xe6, 0x14, 0x72, 0xf8, 0x2f, 0x7f, 0x4d, 0x9c, + 0x90, 0x51, 0xe5, 0xc4, 0x43, 0xbd, 0x63, 0xe1, 0x87, 0x0d, 0x83, 0x2d, + 0x41, 0xbb, 0x09, 0x1f, 0xe8, 0xf0, 0x1b, 0xde, 0x07, 0x08, 0x8c, 0x93, +}; +static const unsigned char kat2747_addin1[] = { + 0x28, 0xeb, 0x9a, 0x03, 0xb4, 0xe9, 0x1d, 0x2f, 0xeb, 0x96, 0x03, 0x66, + 0xe7, 0xd8, 0xd5, 0x71, 0xe0, 0x23, 0x25, 0x73, 0x37, 0x86, 0x15, 0x32, + 0x51, 0x85, 0xc0, 0xea, 0xa6, 0x09, 0xf5, 0x52, 0x6b, 0x06, 0x37, 0x7e, + 0xac, 0x6b, 0x40, 0x94, 0x97, 0x3d, 0x01, 0x40, 0x4a, 0xda, 0xa4, 0x2c, +}; +static const unsigned char kat2747_retbits[] = { + 0xd6, 0x77, 0xc5, 0xa7, 0x2c, 0x23, 0xb5, 0x89, 0xfd, 0x15, 0xa6, 0x55, + 0x16, 0xb4, 0xa5, 0xc3, 0xbf, 0xe4, 0xb0, 0x03, 0xe4, 0x24, 0xc6, 0xa9, + 0x10, 0x4f, 0x4a, 0x23, 0x37, 0xeb, 0x36, 0x11, 0x1e, 0xd6, 0xd1, 0x51, + 0x74, 0xf4, 0x97, 0xd0, 0x6b, 0x12, 0x98, 0x54, 0x29, 0xab, 0x01, 0x29, + 0x4f, 0x50, 0x8f, 0x69, 0x87, 0x95, 0x9f, 0x78, 0x4e, 0x4f, 0xef, 0xd7, + 0x3d, 0x5a, 0x37, 0xf5, +}; +static const struct drbg_kat_pr_false kat2747_t = { + 1, kat2747_entropyin, kat2747_nonce, kat2747_persstr, + kat2747_entropyinreseed, kat2747_addinreseed, kat2747_addin0, + kat2747_addin1, kat2747_retbits +}; +static const struct drbg_kat kat2747 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2747_t +}; + +static const unsigned char kat2748_entropyin[] = { + 0x14, 0x57, 0x9c, 0xe1, 0xa2, 0xb1, 0x09, 0x6f, 0xf9, 0x32, 0xdc, 0x3c, + 0x6e, 0x38, 0x29, 0x65, 0xf6, 0x12, 0xce, 0xda, 0xef, 0xf2, 0x7e, 0x90, + 0xc9, 0x6e, 0x32, 0xf8, 0x7a, 0x26, 0xa8, 0x61, 0x56, 0x5a, 0x1d, 0x4d, + 0x16, 0xfc, 0x8b, 0xc3, 0x51, 0xb5, 0x0b, 0xf1, 0x18, 0x86, 0xef, 0xa4, +}; +static const unsigned char kat2748_nonce[] = {0}; +static const unsigned char kat2748_persstr[] = { + 0xc3, 0x59, 0xdc, 0x15, 0x74, 0x07, 0xa5, 0x7a, 0x3e, 0xab, 0x7b, 0x6e, + 0x9c, 0x96, 0xb1, 0xf0, 0xf6, 0x32, 0xd5, 0x33, 0xb2, 0xfc, 0xa8, 0x41, + 0x5f, 0x43, 0x42, 0x1d, 0xd1, 0x7f, 0xfb, 0x25, 0x37, 0x0f, 0x6d, 0x5b, + 0x64, 0x7f, 0x46, 0x0d, 0x78, 0x76, 0x1d, 0x54, 0xa5, 0x10, 0x03, 0x8e, +}; +static const unsigned char kat2748_entropyinreseed[] = { + 0x27, 0xd3, 0xd9, 0x45, 0x01, 0x09, 0xd0, 0x2d, 0x52, 0xf0, 0x90, 0xb5, + 0x09, 0x50, 0x1f, 0x2a, 0x6d, 0x5c, 0xca, 0x3f, 0xec, 0xec, 0x1b, 0x8f, + 0x20, 0x17, 0x49, 0x4d, 0xc6, 0x14, 0x80, 0xa5, 0xb9, 0xfa, 0xae, 0x6a, + 0x3c, 0x66, 0x22, 0x90, 0xce, 0x80, 0xbc, 0xcb, 0x4b, 0x3c, 0x3a, 0x62, +}; +static const unsigned char kat2748_addinreseed[] = { + 0x46, 0x9a, 0x5d, 0xa3, 0xa1, 0x44, 0x3d, 0x03, 0xf9, 0x2b, 0x37, 0xd0, + 0x69, 0x3a, 0xb7, 0x2f, 0x78, 0x57, 0xc5, 0xb8, 0x3b, 0x47, 0xcb, 0x57, + 0xc3, 0xab, 0x88, 0x01, 0x1a, 0x56, 0x26, 0x6e, 0x25, 0x13, 0xc3, 0x86, + 0xdf, 0x7f, 0x60, 0x4f, 0xba, 0x73, 0xc5, 0x4c, 0x2d, 0xcb, 0x8a, 0x9b, +}; +static const unsigned char kat2748_addin0[] = { + 0xff, 0x25, 0x7f, 0x91, 0xed, 0xdd, 0xe2, 0x51, 0x01, 0xb2, 0x9f, 0x4f, + 0x77, 0x53, 0x70, 0x7e, 0xee, 0x7b, 0xfd, 0x33, 0xc9, 0xcc, 0x3d, 0x7c, + 0x2a, 0xc4, 0xf2, 0xfa, 0x44, 0x2e, 0x9e, 0xd8, 0x7d, 0xa4, 0x3e, 0x16, + 0x42, 0xd1, 0x60, 0x1c, 0xef, 0x6f, 0x62, 0x9a, 0xcd, 0xf1, 0x8f, 0x54, +}; +static const unsigned char kat2748_addin1[] = { + 0x84, 0xdb, 0x1f, 0xcd, 0x48, 0x4c, 0x63, 0xe4, 0x91, 0x5b, 0xd5, 0x68, + 0x0d, 0x96, 0xb8, 0x31, 0x3c, 0xdf, 0x82, 0xeb, 0x1d, 0x04, 0xc1, 0x2b, + 0x1c, 0x40, 0xd8, 0xbb, 0xce, 0xeb, 0x23, 0xcb, 0xc4, 0xd0, 0x5c, 0x63, + 0x89, 0x12, 0xc7, 0xc7, 0x0b, 0x51, 0x43, 0xfc, 0x1e, 0xb7, 0x99, 0x70, +}; +static const unsigned char kat2748_retbits[] = { + 0x26, 0x04, 0xc2, 0xef, 0x69, 0x14, 0xa3, 0x3e, 0x0f, 0xf7, 0xf4, 0xd4, + 0xe8, 0x1d, 0xa8, 0xb5, 0xac, 0xb7, 0x46, 0x01, 0xa5, 0x9d, 0xa1, 0x7d, + 0x64, 0x6a, 0x77, 0x93, 0x5f, 0x15, 0xbd, 0x34, 0x06, 0x14, 0x4c, 0x6b, + 0x98, 0x7b, 0xd8, 0xd4, 0x46, 0x96, 0x97, 0x91, 0x12, 0x8b, 0xf7, 0x20, + 0x34, 0x2e, 0x5a, 0x48, 0x9b, 0xf1, 0xf5, 0x49, 0x5b, 0x92, 0xc1, 0xdf, + 0x27, 0x5f, 0x77, 0xba, +}; +static const struct drbg_kat_pr_false kat2748_t = { + 2, kat2748_entropyin, kat2748_nonce, kat2748_persstr, + kat2748_entropyinreseed, kat2748_addinreseed, kat2748_addin0, + kat2748_addin1, kat2748_retbits +}; +static const struct drbg_kat kat2748 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2748_t +}; + +static const unsigned char kat2749_entropyin[] = { + 0x83, 0x83, 0x13, 0x70, 0xdb, 0xdb, 0xce, 0x5f, 0x2f, 0x08, 0x80, 0x5e, + 0xce, 0xe4, 0x8a, 0x56, 0xfe, 0xf7, 0xb8, 0x57, 0x37, 0x51, 0x22, 0x58, + 0xae, 0xf9, 0x78, 0x96, 0x57, 0x4e, 0x3b, 0xde, 0xd7, 0xa8, 0x76, 0xbb, + 0x70, 0xd2, 0x9d, 0x88, 0xaa, 0xdf, 0x15, 0xf9, 0x40, 0xff, 0x42, 0x41, +}; +static const unsigned char kat2749_nonce[] = {0}; +static const unsigned char kat2749_persstr[] = { + 0xea, 0x51, 0x22, 0x7d, 0x77, 0x60, 0xff, 0xf9, 0xd8, 0x60, 0xa0, 0x02, + 0xf0, 0xde, 0x37, 0x3d, 0xc9, 0xb8, 0xab, 0x86, 0x22, 0x72, 0xc7, 0x1d, + 0x0a, 0x65, 0x56, 0xab, 0x6d, 0xb9, 0x9e, 0x90, 0x0b, 0x11, 0x3a, 0x79, + 0x24, 0x57, 0xb8, 0x90, 0x57, 0x60, 0xe3, 0x77, 0xdd, 0x15, 0x83, 0x46, +}; +static const unsigned char kat2749_entropyinreseed[] = { + 0x86, 0x8b, 0x21, 0xad, 0xaa, 0xf5, 0x8a, 0x83, 0x91, 0x79, 0x4f, 0xd2, + 0x59, 0x98, 0x57, 0x42, 0x16, 0x9d, 0xb4, 0x7c, 0x27, 0x30, 0xeb, 0x78, + 0x6c, 0xa2, 0x8f, 0x80, 0xe3, 0xf1, 0x6a, 0x2e, 0xbb, 0xa6, 0xbf, 0xd0, + 0x0f, 0x37, 0x81, 0x4f, 0x93, 0x80, 0x00, 0xc6, 0xfa, 0x82, 0xaf, 0x1d, +}; +static const unsigned char kat2749_addinreseed[] = { + 0xa1, 0xa3, 0x8c, 0xf2, 0x6e, 0x0c, 0x3f, 0x85, 0xa0, 0x42, 0x85, 0x6c, + 0x7c, 0xe9, 0xec, 0x2c, 0x11, 0x3b, 0x09, 0x4e, 0x5a, 0xd5, 0xe6, 0x62, + 0x25, 0x46, 0x92, 0xd2, 0x72, 0x43, 0x57, 0xc9, 0x2b, 0x17, 0x72, 0x29, + 0xb8, 0xfe, 0x25, 0x94, 0x45, 0x15, 0xdc, 0xcd, 0x46, 0x92, 0x78, 0xb1, +}; +static const unsigned char kat2749_addin0[] = { + 0x02, 0x1a, 0xf3, 0x66, 0x50, 0xe7, 0xac, 0xc3, 0xc5, 0xf5, 0x26, 0xab, + 0xe7, 0x24, 0x32, 0x58, 0xc5, 0x18, 0x20, 0x01, 0xd6, 0x4c, 0xe8, 0x0d, + 0x4b, 0xf0, 0xa6, 0x33, 0x72, 0x5c, 0x1d, 0xcc, 0x38, 0xf3, 0xf2, 0xb7, + 0x06, 0x77, 0x11, 0x22, 0xbb, 0xa5, 0x02, 0x6c, 0x3d, 0xac, 0x60, 0x40, +}; +static const unsigned char kat2749_addin1[] = { + 0x6b, 0xb5, 0x2d, 0xa3, 0x4c, 0x8a, 0x45, 0x28, 0xa2, 0x58, 0x5b, 0x9f, + 0x42, 0xc0, 0x4f, 0xc4, 0x48, 0x7f, 0xf3, 0x55, 0xe3, 0xb7, 0xa4, 0x2c, + 0x37, 0xc8, 0x33, 0xff, 0xac, 0x63, 0x6d, 0xe5, 0x45, 0xab, 0xa1, 0x56, + 0xf5, 0x16, 0xef, 0xa0, 0xbb, 0xa5, 0x2b, 0x91, 0x16, 0x98, 0x6f, 0x8e, +}; +static const unsigned char kat2749_retbits[] = { + 0x77, 0x0c, 0xfb, 0xda, 0xe6, 0x52, 0xc3, 0xbc, 0xf5, 0x09, 0x6f, 0x4a, + 0x60, 0x04, 0xa2, 0x60, 0xcf, 0x61, 0xe8, 0x46, 0x06, 0xcf, 0xd6, 0x0a, + 0xc6, 0x71, 0x9d, 0x72, 0xea, 0xf4, 0x63, 0xda, 0x13, 0x5d, 0xea, 0x67, + 0x1c, 0x00, 0x25, 0x8e, 0x77, 0xd4, 0x9d, 0x72, 0xc3, 0x0c, 0xb2, 0xa5, + 0xb6, 0x6f, 0x79, 0xf3, 0x31, 0x72, 0x58, 0x1d, 0x95, 0xad, 0xe3, 0xf7, + 0xd6, 0x95, 0xcb, 0x61, +}; +static const struct drbg_kat_pr_false kat2749_t = { + 3, kat2749_entropyin, kat2749_nonce, kat2749_persstr, + kat2749_entropyinreseed, kat2749_addinreseed, kat2749_addin0, + kat2749_addin1, kat2749_retbits +}; +static const struct drbg_kat kat2749 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2749_t +}; + +static const unsigned char kat2750_entropyin[] = { + 0x3a, 0x56, 0xe4, 0x58, 0x5b, 0x56, 0xaf, 0x93, 0xb4, 0xa2, 0x05, 0xc3, + 0x01, 0x86, 0xc5, 0x8f, 0xe9, 0xed, 0x18, 0x58, 0x10, 0xd9, 0x26, 0x7f, + 0x73, 0x4f, 0x39, 0x90, 0xb9, 0x1e, 0x36, 0x61, 0x84, 0xe0, 0xb4, 0x6f, + 0x5f, 0x8b, 0xc7, 0xc3, 0x64, 0xcf, 0x8a, 0xc5, 0xdf, 0x64, 0x3c, 0xd7, +}; +static const unsigned char kat2750_nonce[] = {0}; +static const unsigned char kat2750_persstr[] = { + 0xc8, 0x72, 0x5d, 0x49, 0xec, 0x89, 0xb7, 0x6b, 0x9c, 0x29, 0x2c, 0xee, + 0x1b, 0xfc, 0x22, 0xf7, 0xa6, 0x59, 0x3c, 0x7f, 0xd3, 0x7a, 0x96, 0x33, + 0xf0, 0x34, 0x1b, 0x68, 0x90, 0x5f, 0x16, 0xca, 0x25, 0xdd, 0x09, 0x6a, + 0xaf, 0xd3, 0x98, 0x84, 0xa2, 0x30, 0x1c, 0xfe, 0x17, 0x8c, 0x63, 0xb3, +}; +static const unsigned char kat2750_entropyinreseed[] = { + 0x3e, 0x5a, 0x81, 0x4e, 0xe0, 0x9a, 0xaa, 0xd3, 0x66, 0xc2, 0x02, 0x12, + 0xd4, 0x9f, 0x18, 0x6e, 0x7e, 0x30, 0xd7, 0xbf, 0x7e, 0xb4, 0x70, 0x95, + 0x8b, 0x1b, 0x35, 0x6b, 0x6f, 0xdb, 0x11, 0x14, 0xc6, 0xec, 0xaa, 0x8b, + 0x18, 0xf3, 0x9e, 0x78, 0xca, 0xa9, 0xc2, 0x97, 0x26, 0x39, 0x42, 0x41, +}; +static const unsigned char kat2750_addinreseed[] = { + 0xc1, 0x7a, 0x4f, 0xd0, 0x37, 0x1f, 0x50, 0x50, 0xc3, 0xff, 0x35, 0x79, + 0xd2, 0xe6, 0x80, 0x9a, 0x8e, 0x5d, 0xbe, 0x62, 0xf2, 0xbe, 0x35, 0x9f, + 0x91, 0xfa, 0xff, 0x57, 0x31, 0x03, 0x1c, 0x6c, 0x2a, 0xd9, 0xea, 0x8f, + 0xda, 0xb1, 0x05, 0x61, 0xf1, 0xfb, 0x9c, 0xb8, 0x5d, 0xcb, 0x9c, 0x91, +}; +static const unsigned char kat2750_addin0[] = { + 0xb3, 0x42, 0x8e, 0xf3, 0x01, 0xe8, 0x91, 0x02, 0x2e, 0xab, 0xb4, 0xaf, + 0x05, 0x92, 0xd9, 0x18, 0xac, 0x6e, 0xe1, 0x5d, 0xe2, 0x9c, 0x12, 0xa0, + 0x50, 0x97, 0xe9, 0xf5, 0xc0, 0xec, 0x7f, 0x93, 0x6e, 0xf5, 0x33, 0x1c, + 0x63, 0x3a, 0x39, 0x9c, 0x3f, 0x90, 0xaa, 0x47, 0xf2, 0x4f, 0xd9, 0xad, +}; +static const unsigned char kat2750_addin1[] = { + 0xbf, 0x0b, 0x17, 0xe6, 0x58, 0xcb, 0x49, 0xd2, 0xea, 0xb6, 0x81, 0xca, + 0x34, 0x8f, 0xfc, 0x76, 0x63, 0x57, 0x0a, 0x55, 0x96, 0xc8, 0x84, 0xd9, + 0x6d, 0x1d, 0x91, 0xd5, 0xcb, 0x85, 0x6c, 0xc9, 0xa7, 0x2a, 0x7c, 0xf8, + 0xc3, 0x59, 0x13, 0x52, 0x5b, 0x5e, 0x01, 0x94, 0xc5, 0xf8, 0x3d, 0x8d, +}; +static const unsigned char kat2750_retbits[] = { + 0x93, 0x21, 0xa8, 0x46, 0x0a, 0xd4, 0x53, 0xd3, 0x46, 0x60, 0x6d, 0x0f, + 0xa8, 0x8e, 0x44, 0xe4, 0xc0, 0xa3, 0xa3, 0x2d, 0x43, 0xd8, 0x4d, 0x4c, + 0xbf, 0xa7, 0xad, 0xfe, 0x41, 0x1e, 0xd4, 0xda, 0x44, 0xe4, 0x58, 0xc1, + 0x68, 0x43, 0x92, 0x79, 0xc9, 0xac, 0xd7, 0x28, 0x7e, 0xf4, 0x20, 0x1e, + 0x7d, 0xcb, 0x60, 0x08, 0x7a, 0xa8, 0x0d, 0x05, 0x74, 0xcb, 0xad, 0xec, + 0x2f, 0xeb, 0x2e, 0x41, +}; +static const struct drbg_kat_pr_false kat2750_t = { + 4, kat2750_entropyin, kat2750_nonce, kat2750_persstr, + kat2750_entropyinreseed, kat2750_addinreseed, kat2750_addin0, + kat2750_addin1, kat2750_retbits +}; +static const struct drbg_kat kat2750 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2750_t +}; + +static const unsigned char kat2751_entropyin[] = { + 0x4f, 0xe6, 0x7b, 0xec, 0x0f, 0x34, 0x32, 0x00, 0x57, 0x0b, 0xe3, 0x1e, + 0x93, 0xbb, 0x93, 0xff, 0x5d, 0x1a, 0x29, 0x54, 0xd6, 0xee, 0x39, 0x54, + 0xfa, 0xd3, 0x1f, 0x22, 0x19, 0xe1, 0x81, 0x64, 0x5d, 0x95, 0x99, 0x1e, + 0xaa, 0xd9, 0x5c, 0xc2, 0x03, 0xc2, 0x97, 0x4b, 0x4f, 0x8f, 0x92, 0x99, +}; +static const unsigned char kat2751_nonce[] = {0}; +static const unsigned char kat2751_persstr[] = { + 0x84, 0xeb, 0xb9, 0x99, 0x11, 0x4c, 0xd1, 0x0e, 0x2f, 0x3f, 0x9e, 0x8b, + 0x23, 0x16, 0x35, 0xcd, 0x9a, 0x5b, 0x1f, 0x89, 0x4e, 0x5a, 0xe7, 0x2e, + 0x88, 0x63, 0x67, 0xd1, 0xbc, 0x65, 0x30, 0x3f, 0xa0, 0x92, 0xf8, 0xaa, + 0xb9, 0x02, 0x30, 0x77, 0xfb, 0x60, 0xe9, 0x8f, 0x1a, 0x77, 0xbe, 0xb1, +}; +static const unsigned char kat2751_entropyinreseed[] = { + 0xdc, 0x5e, 0xd2, 0x42, 0x12, 0xfc, 0xf4, 0x17, 0xb2, 0x64, 0x6e, 0x2a, + 0x23, 0xad, 0x21, 0x36, 0x3e, 0x78, 0xf7, 0xea, 0x28, 0x64, 0x17, 0x83, + 0x0b, 0x85, 0x3f, 0x4f, 0x69, 0x29, 0x8a, 0x26, 0x0f, 0xcd, 0x54, 0xfe, + 0xec, 0x55, 0x8d, 0x38, 0x47, 0xf1, 0x6a, 0x71, 0x39, 0x15, 0x1d, 0x42, +}; +static const unsigned char kat2751_addinreseed[] = { + 0xa4, 0x8c, 0xbb, 0xa2, 0x16, 0x52, 0x42, 0xa8, 0x24, 0xb8, 0x81, 0x7c, + 0x71, 0x23, 0x15, 0xf6, 0xcc, 0x63, 0x64, 0x25, 0x49, 0xcb, 0x86, 0xf3, + 0x7a, 0xd5, 0x12, 0x10, 0x07, 0xc5, 0x71, 0x9b, 0x55, 0x85, 0x54, 0x35, + 0x2d, 0x51, 0xba, 0x44, 0x4d, 0xea, 0x5a, 0x58, 0xcc, 0xdf, 0x5f, 0x7f, +}; +static const unsigned char kat2751_addin0[] = { + 0x2d, 0x01, 0x88, 0xea, 0x68, 0x5a, 0x72, 0xb1, 0x55, 0x55, 0xbf, 0xdd, + 0xa2, 0x61, 0x07, 0xda, 0xe1, 0x46, 0x65, 0xb2, 0xfb, 0xd9, 0x69, 0x4e, + 0xca, 0x5a, 0xee, 0x9f, 0x4c, 0x0b, 0x21, 0x22, 0xaf, 0x51, 0x81, 0x15, + 0xc3, 0x85, 0xb1, 0x66, 0xee, 0x21, 0xd6, 0x3d, 0x20, 0xd8, 0xf2, 0x80, +}; +static const unsigned char kat2751_addin1[] = { + 0x31, 0x05, 0x6e, 0x76, 0xfa, 0xb1, 0x96, 0xd3, 0x4b, 0x79, 0x4e, 0x28, + 0x90, 0x53, 0x6f, 0xd2, 0x22, 0x7a, 0x49, 0x66, 0x1b, 0x59, 0xac, 0x24, + 0x0c, 0xcd, 0xe5, 0x97, 0xe4, 0x1b, 0x1d, 0x03, 0x8c, 0xb1, 0xbe, 0x27, + 0x1e, 0x18, 0xdc, 0xfe, 0x4a, 0x58, 0x58, 0x65, 0x32, 0xf6, 0xc7, 0xd0, +}; +static const unsigned char kat2751_retbits[] = { + 0x51, 0x2a, 0x2c, 0x24, 0xc7, 0xb1, 0x70, 0x9c, 0xba, 0x34, 0xa7, 0xef, + 0x97, 0xcb, 0x16, 0x03, 0x2a, 0x99, 0x28, 0x2f, 0xfd, 0x3e, 0x80, 0xc3, + 0x07, 0x28, 0x21, 0xbb, 0xc8, 0x8d, 0x0d, 0x4e, 0x23, 0x6c, 0x17, 0xb9, + 0x9a, 0xff, 0x7b, 0xf5, 0x90, 0xe4, 0xdb, 0xaa, 0xba, 0x3c, 0xef, 0x0b, + 0xc4, 0x79, 0x6f, 0x20, 0x11, 0x76, 0x15, 0xc9, 0x73, 0x56, 0xf4, 0xa7, + 0x45, 0xd1, 0x2f, 0xa0, +}; +static const struct drbg_kat_pr_false kat2751_t = { + 5, kat2751_entropyin, kat2751_nonce, kat2751_persstr, + kat2751_entropyinreseed, kat2751_addinreseed, kat2751_addin0, + kat2751_addin1, kat2751_retbits +}; +static const struct drbg_kat kat2751 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2751_t +}; + +static const unsigned char kat2752_entropyin[] = { + 0xe1, 0xf2, 0xa3, 0x26, 0xf4, 0xf5, 0x9d, 0x68, 0x52, 0x72, 0xc4, 0x7f, + 0x1a, 0x18, 0xb7, 0x6c, 0x1e, 0x83, 0x1d, 0xa6, 0xae, 0xf5, 0x43, 0x2e, + 0x36, 0x3f, 0xdc, 0x7e, 0x1c, 0xce, 0xd7, 0xda, 0xfa, 0xcf, 0x44, 0xb7, + 0x76, 0x3e, 0x24, 0x66, 0x1b, 0xc9, 0x2a, 0x7d, 0xce, 0x8e, 0xf5, 0x13, +}; +static const unsigned char kat2752_nonce[] = {0}; +static const unsigned char kat2752_persstr[] = { + 0xd1, 0xd0, 0xf2, 0x98, 0x53, 0x9e, 0xeb, 0xc0, 0xa4, 0x54, 0x32, 0xe4, + 0x0d, 0x3f, 0x82, 0xc0, 0xa4, 0x2d, 0xa5, 0xa9, 0xf7, 0x19, 0x86, 0xd1, + 0xe4, 0x6c, 0x0d, 0x8f, 0x02, 0xd0, 0x51, 0x8d, 0xb5, 0xf7, 0xd4, 0xc9, + 0xd4, 0xb7, 0x63, 0x7c, 0x08, 0x28, 0x37, 0x37, 0xf3, 0xd3, 0xde, 0x53, +}; +static const unsigned char kat2752_entropyinreseed[] = { + 0xdc, 0xdc, 0x98, 0x36, 0xab, 0xc8, 0xcd, 0x43, 0x49, 0x89, 0xf3, 0x37, + 0xfc, 0x1e, 0xd1, 0xfc, 0x88, 0xe4, 0xb5, 0xc6, 0x7e, 0xea, 0xe3, 0x3c, + 0x15, 0x91, 0xb9, 0x56, 0xde, 0x15, 0x71, 0x0d, 0xda, 0xed, 0x7d, 0x5e, + 0xdb, 0x26, 0x86, 0x63, 0x79, 0x70, 0x13, 0x1d, 0xbd, 0x8f, 0x7e, 0xbf, +}; +static const unsigned char kat2752_addinreseed[] = { + 0xa5, 0xb9, 0x65, 0x5d, 0x68, 0x8b, 0xe8, 0xff, 0x55, 0x61, 0x64, 0x61, + 0xb6, 0xdc, 0x7c, 0x8a, 0x63, 0xff, 0xfb, 0xe8, 0x50, 0x92, 0x69, 0xa3, + 0xbc, 0xdc, 0xf3, 0xd9, 0x62, 0x5b, 0x8a, 0x1e, 0xfd, 0x7f, 0x7e, 0x7e, + 0x19, 0x6c, 0x2d, 0xf0, 0x94, 0xcc, 0x27, 0xb6, 0xf4, 0x3d, 0x4c, 0xe4, +}; +static const unsigned char kat2752_addin0[] = { + 0x87, 0xeb, 0xdd, 0xba, 0xd4, 0xcd, 0xc4, 0xc7, 0x3b, 0x06, 0x1e, 0x04, + 0x7a, 0xc0, 0xcf, 0xa7, 0x7b, 0x9c, 0x01, 0x99, 0x6a, 0x16, 0xca, 0xae, + 0xf1, 0xea, 0x9c, 0xd9, 0x57, 0x95, 0x37, 0x77, 0xaf, 0xa7, 0x81, 0xac, + 0x00, 0x5e, 0xb5, 0x85, 0x9d, 0x88, 0xcc, 0x87, 0x80, 0x56, 0xf1, 0xec, +}; +static const unsigned char kat2752_addin1[] = { + 0x4f, 0x3d, 0x5b, 0x85, 0x6e, 0x15, 0x4f, 0xcc, 0x18, 0xba, 0x79, 0x89, + 0xf3, 0x62, 0xc5, 0xf1, 0x5c, 0x5f, 0xcc, 0x3d, 0x93, 0x3f, 0x3d, 0xe7, + 0xe0, 0xa7, 0x6a, 0x57, 0x56, 0x1b, 0xad, 0x23, 0x37, 0xe7, 0xba, 0x22, + 0x35, 0xc4, 0xe4, 0x4c, 0x5b, 0x83, 0x54, 0x32, 0x3f, 0x56, 0x0b, 0x02, +}; +static const unsigned char kat2752_retbits[] = { + 0xf5, 0xdb, 0x63, 0x4b, 0x59, 0x06, 0xf3, 0xaa, 0x68, 0xef, 0x1a, 0xb7, + 0x8b, 0xdb, 0xa4, 0xdd, 0xfb, 0xd5, 0x3c, 0xc6, 0x04, 0x3f, 0xd3, 0xec, + 0xc6, 0xdf, 0x2e, 0x9c, 0x7a, 0x47, 0xbd, 0xf5, 0x40, 0x80, 0xa4, 0x6b, + 0x68, 0x9e, 0x9e, 0x5f, 0x96, 0xc8, 0x5f, 0xff, 0x5b, 0x78, 0xd1, 0x27, + 0x02, 0xd0, 0xa2, 0x05, 0x3b, 0xdf, 0x68, 0x39, 0xff, 0xbb, 0x1c, 0x92, + 0x07, 0x5d, 0xd1, 0x89, +}; +static const struct drbg_kat_pr_false kat2752_t = { + 6, kat2752_entropyin, kat2752_nonce, kat2752_persstr, + kat2752_entropyinreseed, kat2752_addinreseed, kat2752_addin0, + kat2752_addin1, kat2752_retbits +}; +static const struct drbg_kat kat2752 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2752_t +}; + +static const unsigned char kat2753_entropyin[] = { + 0xe2, 0x01, 0xfa, 0xec, 0x2d, 0x5f, 0x45, 0x30, 0xf1, 0xaf, 0xfa, 0x18, + 0x89, 0xf1, 0xea, 0xe9, 0x80, 0x9a, 0x8a, 0xe7, 0xd3, 0x2a, 0x04, 0x14, + 0xdc, 0xfd, 0xdf, 0xa3, 0x73, 0xeb, 0xf2, 0x42, 0xb8, 0xc1, 0x08, 0xcd, + 0x6c, 0xeb, 0x55, 0x5a, 0xd3, 0x12, 0x18, 0x8f, 0xb1, 0x65, 0x11, 0xb5, +}; +static const unsigned char kat2753_nonce[] = {0}; +static const unsigned char kat2753_persstr[] = { + 0x3c, 0x33, 0xd1, 0x5c, 0x59, 0xa5, 0x9b, 0x0b, 0x3c, 0x39, 0xb0, 0x08, + 0xc1, 0x7d, 0xba, 0xa2, 0xe4, 0x13, 0x7a, 0xb4, 0x73, 0xca, 0xac, 0x6b, + 0x00, 0xfd, 0xfb, 0xaf, 0xa7, 0x3f, 0x68, 0xf2, 0xe2, 0x44, 0xa3, 0x15, + 0x1f, 0xe1, 0x29, 0xea, 0x47, 0x34, 0x5d, 0x1b, 0xcb, 0xba, 0x44, 0x07, +}; +static const unsigned char kat2753_entropyinreseed[] = { + 0xaa, 0x3b, 0xec, 0x50, 0x4e, 0xd8, 0x83, 0x77, 0x79, 0x90, 0x3a, 0x62, + 0x5d, 0xab, 0x0f, 0x6b, 0x6e, 0x25, 0x08, 0xdf, 0x5c, 0x7a, 0xe5, 0x37, + 0x5a, 0x54, 0x25, 0x9a, 0x3d, 0x7f, 0x35, 0xa4, 0x15, 0x71, 0x66, 0x8f, + 0xe2, 0x7a, 0x36, 0x8d, 0x20, 0x11, 0x06, 0x51, 0x9f, 0xf4, 0x01, 0xbb, +}; +static const unsigned char kat2753_addinreseed[] = { + 0xd7, 0x5b, 0xc7, 0x21, 0xd3, 0xb2, 0xef, 0x78, 0x8f, 0x2e, 0xe4, 0xca, + 0xdb, 0x77, 0x56, 0xe0, 0x61, 0xc6, 0xec, 0x78, 0x6f, 0x7c, 0x8e, 0x37, + 0x88, 0x87, 0x95, 0x66, 0x30, 0x98, 0x17, 0x6f, 0xc7, 0x4a, 0xff, 0xa4, + 0x9f, 0xfd, 0xcb, 0x22, 0xd0, 0x3e, 0x0b, 0xc5, 0x97, 0xda, 0xca, 0xef, +}; +static const unsigned char kat2753_addin0[] = { + 0xa6, 0x24, 0xdb, 0x91, 0xdc, 0x18, 0x34, 0x9a, 0xef, 0x33, 0x96, 0x78, + 0xd7, 0x56, 0x40, 0xcb, 0x5f, 0x98, 0x68, 0xb1, 0xbc, 0x77, 0xf9, 0xc4, + 0x0b, 0xcf, 0xfd, 0xc7, 0x11, 0x9f, 0x51, 0x2f, 0xc9, 0xa9, 0xa4, 0xf5, + 0x3f, 0x88, 0xc1, 0xf2, 0xda, 0x76, 0x77, 0x7b, 0xab, 0x87, 0xf0, 0x73, +}; +static const unsigned char kat2753_addin1[] = { + 0x4d, 0x94, 0x7e, 0xcc, 0x8f, 0x47, 0xbe, 0x6e, 0xe6, 0xfc, 0xab, 0x95, + 0x2b, 0xf3, 0xad, 0x0f, 0x8f, 0xcc, 0xd8, 0x7e, 0x84, 0x0b, 0xa9, 0x31, + 0xcd, 0x5a, 0x3b, 0x4c, 0xab, 0x65, 0x0a, 0x5d, 0x86, 0xf8, 0x4a, 0xbd, + 0x83, 0xe8, 0x86, 0x65, 0x87, 0xc6, 0x6f, 0xf9, 0x3f, 0x37, 0xec, 0xbc, +}; +static const unsigned char kat2753_retbits[] = { + 0x78, 0x31, 0xe9, 0x53, 0xdd, 0xcc, 0xc1, 0x9d, 0x5d, 0x31, 0xca, 0xe3, + 0x2b, 0xb6, 0x37, 0x66, 0xb3, 0x12, 0x3f, 0x3d, 0xc7, 0xbf, 0xd2, 0x7f, + 0x0f, 0xa4, 0x9f, 0x9a, 0x61, 0x56, 0x01, 0xa8, 0x71, 0xb5, 0x71, 0x09, + 0xc2, 0x69, 0x23, 0x06, 0x66, 0x39, 0x05, 0x48, 0x1f, 0x9d, 0xf4, 0x6b, + 0x81, 0xa7, 0xad, 0xbe, 0xc5, 0xef, 0x14, 0xcc, 0x12, 0xfa, 0x68, 0xbd, + 0xef, 0xf5, 0x6a, 0x12, +}; +static const struct drbg_kat_pr_false kat2753_t = { + 7, kat2753_entropyin, kat2753_nonce, kat2753_persstr, + kat2753_entropyinreseed, kat2753_addinreseed, kat2753_addin0, + kat2753_addin1, kat2753_retbits +}; +static const struct drbg_kat kat2753 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2753_t +}; + +static const unsigned char kat2754_entropyin[] = { + 0xaa, 0x55, 0x93, 0x95, 0x54, 0x52, 0x31, 0x29, 0xc2, 0xce, 0x9f, 0xc4, + 0x31, 0x82, 0xcb, 0xcf, 0x2a, 0xd8, 0x8b, 0xb5, 0x10, 0xa0, 0xe6, 0x49, + 0x60, 0xa4, 0x99, 0x81, 0x87, 0xcd, 0x71, 0xe6, 0xb3, 0x59, 0x17, 0xde, + 0xa2, 0xfd, 0x1b, 0x1d, 0x77, 0xed, 0x21, 0x1b, 0x0b, 0xf4, 0x92, 0x80, +}; +static const unsigned char kat2754_nonce[] = {0}; +static const unsigned char kat2754_persstr[] = { + 0x3f, 0x75, 0x1f, 0xcc, 0x46, 0x07, 0x60, 0xc6, 0x0a, 0x52, 0xe2, 0x09, + 0x3a, 0xb0, 0xa8, 0xa6, 0x50, 0x2e, 0x2f, 0x3e, 0x63, 0xb6, 0xac, 0x4f, + 0x0c, 0xf8, 0xc4, 0xbc, 0xf1, 0x1c, 0x05, 0x4c, 0x87, 0x8c, 0x50, 0x0c, + 0x7d, 0xa6, 0x40, 0x33, 0x3c, 0x36, 0x70, 0x5b, 0x33, 0xe8, 0x47, 0xe9, +}; +static const unsigned char kat2754_entropyinreseed[] = { + 0xed, 0x41, 0x10, 0x72, 0x7a, 0x64, 0x38, 0x51, 0xe2, 0x26, 0xb7, 0xbb, + 0x0d, 0x07, 0xd3, 0x5e, 0x54, 0x56, 0x5d, 0x72, 0x6b, 0xeb, 0x61, 0x38, + 0xb5, 0x38, 0x22, 0x7d, 0x94, 0xf3, 0x21, 0x45, 0xf3, 0x2a, 0xef, 0xb7, + 0xa0, 0xa7, 0x5d, 0x21, 0x39, 0xcc, 0xae, 0x41, 0xc4, 0x81, 0x3d, 0xca, +}; +static const unsigned char kat2754_addinreseed[] = { + 0xbd, 0xe5, 0x69, 0x05, 0x88, 0xc7, 0xf3, 0xa3, 0x43, 0xf7, 0x41, 0xf2, + 0xb8, 0x35, 0xed, 0xbe, 0xad, 0x44, 0x48, 0x59, 0xf4, 0x6c, 0x55, 0x04, + 0xfe, 0xac, 0xa0, 0x48, 0xeb, 0xff, 0x1b, 0x37, 0x86, 0x02, 0x77, 0x60, + 0xda, 0x9c, 0x21, 0xe5, 0xc1, 0xcb, 0x54, 0x36, 0x9e, 0xfa, 0x45, 0x00, +}; +static const unsigned char kat2754_addin0[] = { + 0x2d, 0x44, 0x8f, 0x2d, 0x9c, 0xbe, 0x15, 0x33, 0xe4, 0xfd, 0x50, 0xfa, + 0xcc, 0xe3, 0xa1, 0x99, 0xf9, 0x1d, 0x88, 0x88, 0x24, 0xa0, 0xfe, 0xcd, + 0xa7, 0x4b, 0x16, 0x90, 0x0d, 0xa7, 0xb1, 0x25, 0x50, 0x7f, 0xca, 0x2e, + 0xb7, 0xb3, 0x9b, 0xdf, 0xd5, 0xa2, 0xed, 0x68, 0x08, 0x23, 0x27, 0x8f, +}; +static const unsigned char kat2754_addin1[] = { + 0xad, 0x4d, 0x12, 0x7d, 0xb0, 0xe7, 0x8b, 0x80, 0xee, 0x18, 0xad, 0xef, + 0x40, 0xaa, 0x78, 0xae, 0xbe, 0x09, 0xf2, 0x02, 0xb5, 0xe7, 0x14, 0x96, + 0xd2, 0xe0, 0xac, 0x8d, 0x21, 0x4c, 0x01, 0xfa, 0x6e, 0x98, 0x61, 0x2c, + 0x03, 0xa0, 0x74, 0x1a, 0xe0, 0xd7, 0xb1, 0x8b, 0xb9, 0x0b, 0xa3, 0xef, +}; +static const unsigned char kat2754_retbits[] = { + 0xcf, 0xba, 0x8d, 0xaa, 0xb4, 0xc9, 0x96, 0xc1, 0x25, 0x10, 0x2c, 0x46, + 0xfd, 0x1d, 0xe2, 0xaf, 0xb7, 0x5d, 0x89, 0xa3, 0xca, 0xa8, 0x3e, 0x96, + 0x52, 0x15, 0xd2, 0x32, 0x91, 0x92, 0x58, 0x73, 0xd7, 0xd5, 0x3a, 0x81, + 0x81, 0xa9, 0x2f, 0xea, 0x33, 0x47, 0xc2, 0x82, 0xda, 0x5f, 0xb1, 0xc0, + 0xf0, 0x01, 0x8a, 0xaf, 0xbe, 0x67, 0x2b, 0x9c, 0xd7, 0xc7, 0xa8, 0x1c, + 0xe0, 0xae, 0x49, 0x56, +}; +static const struct drbg_kat_pr_false kat2754_t = { + 8, kat2754_entropyin, kat2754_nonce, kat2754_persstr, + kat2754_entropyinreseed, kat2754_addinreseed, kat2754_addin0, + kat2754_addin1, kat2754_retbits +}; +static const struct drbg_kat kat2754 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2754_t +}; + +static const unsigned char kat2755_entropyin[] = { + 0x83, 0xff, 0xd3, 0x6b, 0x1d, 0x8c, 0x06, 0xa9, 0x89, 0xe9, 0x8c, 0xbe, + 0x90, 0x48, 0xd8, 0x06, 0x85, 0x50, 0xa5, 0x1a, 0x90, 0x3b, 0xe2, 0x88, + 0xef, 0x26, 0xb6, 0x06, 0x41, 0x34, 0x31, 0x60, 0xab, 0xf6, 0xad, 0xac, + 0x16, 0xe8, 0x9a, 0xb2, 0x52, 0x64, 0x7f, 0xf9, 0xe7, 0xe9, 0xfb, 0x00, +}; +static const unsigned char kat2755_nonce[] = {0}; +static const unsigned char kat2755_persstr[] = { + 0x49, 0xb3, 0x78, 0x0b, 0xea, 0xdd, 0xd3, 0xd2, 0x56, 0x67, 0xc8, 0xe3, + 0x82, 0x5d, 0x49, 0xa4, 0x21, 0x1b, 0xc9, 0xa0, 0x5c, 0x18, 0xf8, 0xd4, + 0xed, 0x06, 0x1b, 0xe8, 0xbf, 0x52, 0x9d, 0xbe, 0xa6, 0x81, 0x93, 0xbd, + 0xbc, 0x7a, 0xdf, 0x92, 0x4e, 0x27, 0x96, 0x80, 0x5b, 0x97, 0x0f, 0x2c, +}; +static const unsigned char kat2755_entropyinreseed[] = { + 0x7a, 0xbc, 0xd3, 0xb3, 0x64, 0x4f, 0xd4, 0x04, 0x0e, 0xae, 0x48, 0x19, + 0x68, 0xda, 0x7e, 0x71, 0x95, 0x33, 0x33, 0x4d, 0x43, 0xf0, 0x46, 0xe9, + 0x2f, 0x40, 0xce, 0xae, 0xb4, 0x7f, 0x78, 0x2b, 0xec, 0x6f, 0xb9, 0x3e, + 0xa8, 0xb8, 0x21, 0x23, 0x5a, 0x24, 0xc0, 0x7f, 0x4e, 0x4d, 0x23, 0x95, +}; +static const unsigned char kat2755_addinreseed[] = { + 0x32, 0x5b, 0x2e, 0xa7, 0xcd, 0xf2, 0x2f, 0x96, 0x9b, 0x0e, 0xaa, 0xc5, + 0x70, 0xf9, 0xf3, 0x91, 0x36, 0x5a, 0x0c, 0xf6, 0xcf, 0x46, 0x7d, 0x5f, + 0x1e, 0xac, 0xc5, 0xc4, 0xf2, 0xf4, 0x2e, 0x11, 0x75, 0x38, 0x93, 0xef, + 0x92, 0xd9, 0x06, 0xe3, 0x59, 0x55, 0x43, 0x51, 0xdb, 0xc8, 0x70, 0x55, +}; +static const unsigned char kat2755_addin0[] = { + 0xcb, 0xf5, 0x24, 0x67, 0x02, 0xdf, 0x6d, 0x97, 0xe2, 0xd8, 0xe7, 0x6b, + 0xad, 0x1c, 0x92, 0x89, 0x03, 0xab, 0xec, 0x59, 0x1c, 0x33, 0x93, 0xde, + 0xfe, 0x18, 0x46, 0xbb, 0xa0, 0x2a, 0x0d, 0x7f, 0x56, 0xc4, 0xaa, 0x0b, + 0xed, 0x78, 0x85, 0x0f, 0x94, 0x43, 0x22, 0xae, 0x1d, 0xe0, 0x39, 0x13, +}; +static const unsigned char kat2755_addin1[] = { + 0x80, 0x96, 0xf5, 0x29, 0x62, 0xcb, 0x85, 0xca, 0x4d, 0x59, 0x77, 0x46, + 0x34, 0xb0, 0xec, 0x4d, 0xc9, 0x16, 0x56, 0xe1, 0x4c, 0x0c, 0x6f, 0x39, + 0xf1, 0xcf, 0x00, 0x3c, 0x04, 0xff, 0x4f, 0x1d, 0x96, 0x0a, 0x0c, 0x1e, + 0x75, 0xa2, 0xd4, 0xde, 0xe7, 0xac, 0xd3, 0x93, 0x85, 0x67, 0xc7, 0x6f, +}; +static const unsigned char kat2755_retbits[] = { + 0x18, 0xba, 0x05, 0x71, 0xab, 0x63, 0x7e, 0x0d, 0x0b, 0xdb, 0x7d, 0x8c, + 0x2e, 0x4e, 0x4a, 0x7b, 0x35, 0x7a, 0x82, 0x64, 0x9a, 0x10, 0x16, 0xaa, + 0x0a, 0x10, 0x66, 0xc8, 0x91, 0xef, 0x54, 0xbd, 0xcf, 0xe3, 0x9d, 0x72, + 0xd0, 0xc4, 0xb9, 0xc1, 0xa8, 0x43, 0x03, 0x02, 0xa6, 0x6d, 0xf9, 0xaa, + 0x88, 0xc2, 0xd2, 0x91, 0xc5, 0x39, 0x05, 0x13, 0x47, 0x87, 0x80, 0x04, + 0x45, 0x37, 0xdc, 0xcf, +}; +static const struct drbg_kat_pr_false kat2755_t = { + 9, kat2755_entropyin, kat2755_nonce, kat2755_persstr, + kat2755_entropyinreseed, kat2755_addinreseed, kat2755_addin0, + kat2755_addin1, kat2755_retbits +}; +static const struct drbg_kat kat2755 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2755_t +}; + +static const unsigned char kat2756_entropyin[] = { + 0xc6, 0x77, 0xfd, 0x96, 0xfe, 0xf5, 0xcd, 0x09, 0x2e, 0x02, 0xf0, 0x65, + 0x3e, 0xc7, 0x26, 0xbf, 0x9c, 0x0e, 0x6b, 0x07, 0x9a, 0x00, 0x7e, 0x78, + 0xab, 0x7c, 0xe0, 0xcf, 0x76, 0xfe, 0xf5, 0xfd, 0xa2, 0xe9, 0x6e, 0xdf, + 0x7d, 0xbe, 0xee, 0xa7, 0x61, 0x4f, 0xc3, 0xe5, 0x97, 0x6e, 0x3a, 0x6d, +}; +static const unsigned char kat2756_nonce[] = {0}; +static const unsigned char kat2756_persstr[] = { + 0x59, 0x52, 0xa6, 0x61, 0xc3, 0x80, 0x2d, 0x16, 0xe3, 0xe2, 0x44, 0x6a, + 0xcc, 0x89, 0x32, 0x4b, 0x3e, 0xab, 0x96, 0xa6, 0x32, 0xbf, 0x72, 0xc1, + 0xd1, 0x5b, 0xe7, 0x1b, 0xd1, 0x26, 0x9f, 0x03, 0x94, 0xcf, 0x10, 0x7c, + 0x28, 0x11, 0x8f, 0xb6, 0x07, 0x82, 0x27, 0xd6, 0x40, 0x41, 0x4e, 0x9d, +}; +static const unsigned char kat2756_entropyinreseed[] = { + 0xbb, 0x24, 0xe6, 0xa5, 0x79, 0x96, 0xf7, 0x5f, 0x02, 0x10, 0x0c, 0x4f, + 0xc8, 0x8d, 0x2f, 0x63, 0x59, 0x48, 0xd4, 0x32, 0x2a, 0x77, 0x8f, 0x05, + 0xb9, 0x1a, 0xf4, 0x65, 0xa9, 0xd7, 0xf6, 0x5f, 0xe0, 0x47, 0x0f, 0x18, + 0x7f, 0x61, 0x92, 0xa6, 0x30, 0x32, 0x43, 0x8d, 0xa8, 0xf3, 0x44, 0xb2, +}; +static const unsigned char kat2756_addinreseed[] = { + 0xd6, 0x95, 0x35, 0xeb, 0x84, 0xbe, 0xf4, 0xeb, 0xc5, 0x4b, 0xeb, 0xe8, + 0x37, 0x51, 0x2c, 0xa7, 0x36, 0xd1, 0x48, 0x51, 0xb0, 0x3a, 0xa9, 0x5a, + 0x52, 0x43, 0xff, 0x37, 0x0c, 0xa8, 0x22, 0x56, 0xd1, 0xa1, 0xbb, 0x40, + 0x50, 0xfd, 0xa6, 0x1e, 0x21, 0x59, 0x76, 0x9a, 0x0e, 0xac, 0x65, 0xef, +}; +static const unsigned char kat2756_addin0[] = { + 0x3a, 0x1b, 0x3d, 0xfc, 0x0c, 0xf1, 0x9c, 0xa5, 0xf1, 0x9f, 0x0a, 0xed, + 0xbe, 0x44, 0x3b, 0x77, 0x48, 0xa1, 0x2a, 0x10, 0x4d, 0xf6, 0x65, 0x9a, + 0x46, 0x12, 0x00, 0x6d, 0xaa, 0xf1, 0xa3, 0xf5, 0x67, 0x77, 0x22, 0x49, + 0x59, 0x64, 0x87, 0xcc, 0x66, 0x55, 0x0c, 0xc9, 0xa5, 0xa7, 0xe4, 0x21, +}; +static const unsigned char kat2756_addin1[] = { + 0xcc, 0x76, 0x40, 0x00, 0x32, 0x0f, 0x33, 0x71, 0x70, 0x9e, 0x92, 0x44, + 0x2b, 0xad, 0xbe, 0xe1, 0x2b, 0xeb, 0x7c, 0xaf, 0xf2, 0xef, 0xc7, 0x30, + 0x78, 0x0b, 0x3e, 0xca, 0x22, 0xaf, 0xe4, 0x3e, 0xe7, 0x0d, 0x5e, 0xc4, + 0xc7, 0x6c, 0x09, 0x1a, 0xf0, 0x89, 0x6f, 0x47, 0x16, 0x51, 0xdd, 0xed, +}; +static const unsigned char kat2756_retbits[] = { + 0x09, 0x4d, 0x52, 0x99, 0xcf, 0x69, 0xee, 0x54, 0x62, 0x4b, 0x18, 0x08, + 0x64, 0x53, 0x79, 0x66, 0x7d, 0xa9, 0xd2, 0xcc, 0xf5, 0x17, 0x64, 0x4f, + 0x9b, 0xe0, 0x21, 0x37, 0x9b, 0x0b, 0xbf, 0xf8, 0x5f, 0x0e, 0x66, 0x1c, + 0xc4, 0x64, 0x9b, 0xfb, 0xaf, 0xe6, 0x7e, 0x20, 0xb9, 0x27, 0xb4, 0x34, + 0x6e, 0x5f, 0xa4, 0xab, 0x86, 0xbf, 0x9f, 0x1d, 0xd5, 0xef, 0x75, 0x97, + 0x1d, 0xf8, 0xdf, 0xba, +}; +static const struct drbg_kat_pr_false kat2756_t = { + 10, kat2756_entropyin, kat2756_nonce, kat2756_persstr, + kat2756_entropyinreseed, kat2756_addinreseed, kat2756_addin0, + kat2756_addin1, kat2756_retbits +}; +static const struct drbg_kat kat2756 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2756_t +}; + +static const unsigned char kat2757_entropyin[] = { + 0x4a, 0x07, 0x94, 0x72, 0x52, 0xaa, 0xb1, 0xa1, 0x41, 0xf9, 0x36, 0x01, + 0x50, 0x9b, 0x6a, 0x5f, 0x44, 0x2f, 0x5e, 0x0f, 0xd4, 0x55, 0xe6, 0xd6, + 0x9c, 0xf5, 0xd5, 0x82, 0xa3, 0x96, 0x15, 0x97, 0xc1, 0xf1, 0x01, 0xa2, + 0xbd, 0x25, 0xb3, 0xdc, 0xbb, 0x47, 0x1d, 0xdd, 0x70, 0x99, 0xf8, 0x43, +}; +static const unsigned char kat2757_nonce[] = {0}; +static const unsigned char kat2757_persstr[] = { + 0xaf, 0x96, 0xf1, 0xec, 0x13, 0xd0, 0x5d, 0x57, 0x40, 0x9e, 0x9c, 0x06, + 0xfc, 0x7c, 0x1d, 0x30, 0x00, 0xed, 0x44, 0xb3, 0x54, 0x93, 0x22, 0x97, + 0x62, 0x9f, 0x28, 0x8d, 0xe2, 0x29, 0x42, 0x4a, 0xc3, 0xb0, 0x1e, 0xc8, + 0xaf, 0x7b, 0xca, 0xb4, 0x4a, 0x54, 0x50, 0xd7, 0x12, 0x5b, 0xa4, 0x7a, +}; +static const unsigned char kat2757_entropyinreseed[] = { + 0x45, 0xa2, 0x83, 0x3a, 0x53, 0x6c, 0xec, 0xc4, 0xbb, 0x1f, 0x36, 0xa2, + 0xef, 0xa3, 0x69, 0xc4, 0x6f, 0x47, 0x1c, 0x70, 0x80, 0xc0, 0xd8, 0x23, + 0x0d, 0xa2, 0x1f, 0x61, 0x90, 0x8b, 0xb4, 0x03, 0xe1, 0x1a, 0x38, 0xef, + 0xcd, 0x77, 0x92, 0xbb, 0x81, 0xe1, 0xec, 0x64, 0xc6, 0x1a, 0x69, 0x73, +}; +static const unsigned char kat2757_addinreseed[] = { + 0x86, 0xa6, 0xdb, 0x8b, 0x6f, 0x89, 0xc9, 0x2f, 0x33, 0xc2, 0x0d, 0x9c, + 0x7f, 0x1f, 0x35, 0xe6, 0xee, 0xa2, 0x5f, 0x3e, 0x62, 0xc7, 0xa7, 0xce, + 0xfa, 0xab, 0x07, 0x1b, 0x58, 0xe4, 0xdc, 0x72, 0xa9, 0x96, 0x60, 0x90, + 0x40, 0x23, 0x3c, 0xeb, 0xc0, 0x71, 0x21, 0x01, 0x36, 0x06, 0x41, 0x14, +}; +static const unsigned char kat2757_addin0[] = { + 0x91, 0x95, 0x35, 0x2c, 0xcf, 0x0f, 0xa0, 0x04, 0xc3, 0xea, 0x45, 0xcc, + 0x3f, 0x36, 0x35, 0x51, 0x9d, 0xc8, 0xf5, 0xa7, 0x6f, 0x2a, 0x60, 0x08, + 0x63, 0xd8, 0x86, 0x45, 0x18, 0xcf, 0xc7, 0xe4, 0xad, 0xc7, 0x00, 0xaf, + 0x90, 0x50, 0x4e, 0x5c, 0xeb, 0x8e, 0xc2, 0xf9, 0x79, 0x5c, 0xa8, 0x45, +}; +static const unsigned char kat2757_addin1[] = { + 0x9e, 0x3c, 0x66, 0x56, 0x44, 0x2c, 0x70, 0x97, 0x93, 0x62, 0xb9, 0xcb, + 0xc9, 0x76, 0x0c, 0x59, 0x58, 0x74, 0x49, 0x44, 0x3f, 0x53, 0xbf, 0x4e, + 0x8e, 0x7a, 0x52, 0x03, 0x8f, 0x3c, 0xd4, 0xba, 0xa2, 0x71, 0x57, 0x49, + 0xfa, 0x9f, 0x21, 0x46, 0x9c, 0x52, 0x76, 0x1f, 0x1b, 0xed, 0x4f, 0xe9, +}; +static const unsigned char kat2757_retbits[] = { + 0x35, 0xd2, 0x6b, 0xf9, 0x4f, 0x67, 0xfc, 0xa7, 0x62, 0xa4, 0xf4, 0xe7, + 0xda, 0x4c, 0xd8, 0x7d, 0x12, 0x39, 0xd2, 0x45, 0x4b, 0x01, 0xdd, 0xc8, + 0xf7, 0xc5, 0xdb, 0x94, 0x49, 0xf5, 0x5c, 0x56, 0x87, 0xc4, 0x8c, 0x64, + 0x83, 0xde, 0xcc, 0xd2, 0x91, 0x10, 0xe6, 0x24, 0x21, 0x21, 0x21, 0x97, + 0x65, 0x90, 0x15, 0xd7, 0xa7, 0xf2, 0xf4, 0x8d, 0x6d, 0xdb, 0xff, 0x09, + 0x91, 0x6b, 0x64, 0x1d, +}; +static const struct drbg_kat_pr_false kat2757_t = { + 11, kat2757_entropyin, kat2757_nonce, kat2757_persstr, + kat2757_entropyinreseed, kat2757_addinreseed, kat2757_addin0, + kat2757_addin1, kat2757_retbits +}; +static const struct drbg_kat kat2757 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2757_t +}; + +static const unsigned char kat2758_entropyin[] = { + 0xcd, 0x03, 0xd0, 0xa5, 0x93, 0xcb, 0x60, 0x03, 0xe6, 0x00, 0x9a, 0x75, + 0x68, 0x9e, 0xa7, 0xc7, 0x1d, 0x28, 0xb7, 0xbe, 0xa6, 0xb7, 0x4b, 0x68, + 0xe9, 0x30, 0x92, 0xbc, 0x14, 0x0b, 0x37, 0xb3, 0x52, 0xca, 0x8b, 0x1c, + 0x39, 0x66, 0x94, 0x40, 0x5f, 0x94, 0xb0, 0xf6, 0xfe, 0x39, 0xa4, 0x6a, +}; +static const unsigned char kat2758_nonce[] = {0}; +static const unsigned char kat2758_persstr[] = { + 0x26, 0x3d, 0x10, 0xef, 0x97, 0x3f, 0xc8, 0x77, 0xa3, 0xce, 0xbf, 0x51, + 0x2d, 0xc1, 0xab, 0xe5, 0xfd, 0x18, 0x9f, 0x1c, 0x42, 0xb7, 0x4f, 0x07, + 0x18, 0x43, 0xb6, 0xcd, 0xe7, 0xb0, 0x25, 0xbe, 0xf4, 0x26, 0x6f, 0x8f, + 0x31, 0x2b, 0x42, 0xf9, 0x25, 0x8a, 0xa7, 0x4f, 0xe0, 0xed, 0xe0, 0x89, +}; +static const unsigned char kat2758_entropyinreseed[] = { + 0x9a, 0x01, 0xb2, 0x5f, 0x8d, 0x8b, 0xf3, 0xfd, 0xf0, 0x67, 0x3c, 0x3d, + 0x0b, 0x5a, 0x29, 0x9b, 0x18, 0x5f, 0xf4, 0x2e, 0x80, 0xd2, 0x23, 0x16, + 0x69, 0x08, 0xe4, 0xfa, 0x09, 0xc0, 0x63, 0xa3, 0xfe, 0x7d, 0x33, 0x5f, + 0x52, 0x6d, 0x2d, 0x7f, 0x7a, 0xa5, 0xfa, 0xc4, 0x4d, 0xac, 0x6d, 0x84, +}; +static const unsigned char kat2758_addinreseed[] = { + 0xe7, 0x12, 0xaf, 0xbd, 0xac, 0x4f, 0xbd, 0x71, 0xde, 0x6f, 0x4f, 0xf5, + 0xab, 0x04, 0x4b, 0xae, 0xd9, 0xc7, 0xa0, 0x4f, 0x7b, 0xd4, 0xbb, 0x14, + 0x2d, 0xd1, 0xd3, 0x41, 0xcf, 0xd9, 0xc4, 0x11, 0xfa, 0x19, 0xda, 0x5c, + 0x19, 0xbf, 0xf2, 0x7d, 0x1b, 0x6e, 0xc2, 0x83, 0xdb, 0x0d, 0xe9, 0xd1, +}; +static const unsigned char kat2758_addin0[] = { + 0xa4, 0xf3, 0xb9, 0xd8, 0xb8, 0x6f, 0xa4, 0x6d, 0x8c, 0x26, 0xf3, 0xea, + 0xd6, 0xf8, 0xeb, 0x47, 0xcf, 0xa6, 0xca, 0x44, 0x8f, 0x16, 0x59, 0xd6, + 0xd2, 0x25, 0x42, 0xc3, 0xdd, 0x98, 0x3c, 0xe2, 0xf2, 0x70, 0x70, 0x1c, + 0x06, 0x51, 0xb6, 0xc0, 0xa1, 0x07, 0x79, 0xcc, 0x62, 0x47, 0xa8, 0x1e, +}; +static const unsigned char kat2758_addin1[] = { + 0x1a, 0xa9, 0x6f, 0x73, 0xfb, 0x1a, 0x85, 0x46, 0xdc, 0xbc, 0x30, 0x9d, + 0x32, 0x24, 0x98, 0x6e, 0x0a, 0x4a, 0xe3, 0x52, 0x0d, 0x2f, 0xe8, 0x4b, + 0x54, 0x95, 0x16, 0x2b, 0x1e, 0x9d, 0x23, 0xeb, 0x08, 0x50, 0x72, 0x06, + 0xdb, 0x36, 0x69, 0x16, 0x28, 0x86, 0xba, 0x48, 0xf7, 0xbf, 0x1f, 0x29, +}; +static const unsigned char kat2758_retbits[] = { + 0x09, 0xd1, 0xeb, 0x9b, 0xac, 0x2b, 0x9e, 0xd7, 0x1f, 0x60, 0x96, 0xeb, + 0xc8, 0xd6, 0x58, 0xb2, 0x6f, 0x4a, 0x7f, 0x52, 0xed, 0xd4, 0x9c, 0x2a, + 0xd3, 0xbd, 0x9d, 0x00, 0xe5, 0x7b, 0x05, 0xbd, 0x96, 0x49, 0x6c, 0x0d, + 0x63, 0xf5, 0x32, 0x68, 0xa8, 0xf3, 0x4c, 0xd3, 0xc3, 0xfd, 0x75, 0x43, + 0x84, 0x6a, 0x9b, 0xb2, 0xd8, 0x5c, 0x37, 0x79, 0x81, 0xf6, 0xe9, 0xb4, + 0xc1, 0xe4, 0x40, 0x6d, +}; +static const struct drbg_kat_pr_false kat2758_t = { + 12, kat2758_entropyin, kat2758_nonce, kat2758_persstr, + kat2758_entropyinreseed, kat2758_addinreseed, kat2758_addin0, + kat2758_addin1, kat2758_retbits +}; +static const struct drbg_kat kat2758 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2758_t +}; + +static const unsigned char kat2759_entropyin[] = { + 0xe7, 0x10, 0x8a, 0x71, 0x40, 0x20, 0x32, 0xf8, 0xbe, 0x94, 0xfd, 0x18, + 0x28, 0x87, 0x76, 0x8b, 0x52, 0x34, 0xb8, 0x67, 0xe7, 0x2d, 0xbc, 0xb5, + 0x82, 0xa2, 0xbc, 0xd3, 0xe4, 0x80, 0x97, 0x4d, 0x9c, 0x87, 0x80, 0x92, + 0x20, 0xc9, 0xcb, 0xf1, 0x18, 0x67, 0xe9, 0x74, 0xa7, 0xc7, 0x5f, 0xdd, +}; +static const unsigned char kat2759_nonce[] = {0}; +static const unsigned char kat2759_persstr[] = { + 0x69, 0x24, 0x14, 0x5a, 0x85, 0x1a, 0xd2, 0x2a, 0xb7, 0x3e, 0x66, 0x21, + 0x17, 0xe8, 0x67, 0xcb, 0x6a, 0x9f, 0x09, 0x15, 0xf2, 0x2c, 0xe8, 0x32, + 0x13, 0xa7, 0xb6, 0xce, 0xa6, 0xd1, 0xad, 0xe7, 0x9d, 0x67, 0xea, 0xe3, + 0x13, 0x52, 0xdc, 0xc1, 0x87, 0x4e, 0x1e, 0x3f, 0xb9, 0x28, 0xf0, 0xfb, +}; +static const unsigned char kat2759_entropyinreseed[] = { + 0x44, 0x38, 0x1f, 0xbe, 0x2a, 0x5f, 0x25, 0x3a, 0xb0, 0xb3, 0x7c, 0xb7, + 0x98, 0x24, 0x01, 0xe2, 0xb6, 0x17, 0x44, 0x52, 0xea, 0x66, 0x67, 0x3c, + 0x12, 0x62, 0xd5, 0x98, 0x46, 0x05, 0xe5, 0xdb, 0x4f, 0xc2, 0x78, 0xe8, + 0x61, 0x10, 0xfd, 0xdd, 0xab, 0xeb, 0x6a, 0x39, 0x16, 0x86, 0x26, 0x74, +}; +static const unsigned char kat2759_addinreseed[] = { + 0xe5, 0xd9, 0x4f, 0x80, 0x9a, 0x80, 0x5d, 0x04, 0x18, 0xc4, 0x4a, 0x84, + 0xbe, 0x93, 0xd9, 0x04, 0xf2, 0x4d, 0x0a, 0x57, 0xeb, 0xb4, 0x92, 0x4a, + 0xdc, 0x73, 0x59, 0x76, 0x1a, 0xb6, 0xd7, 0x3d, 0x5b, 0x17, 0x02, 0xde, + 0xa1, 0x7f, 0x8c, 0x01, 0x87, 0x7e, 0xe5, 0xf4, 0x4f, 0xb5, 0xc5, 0xfb, +}; +static const unsigned char kat2759_addin0[] = { + 0x1d, 0x97, 0x1b, 0xf8, 0xb3, 0x64, 0x37, 0x93, 0x23, 0xd6, 0x97, 0x2b, + 0xf0, 0xdc, 0x86, 0x41, 0xa2, 0x29, 0x87, 0x59, 0x21, 0xb3, 0x97, 0x38, + 0xea, 0x8d, 0xad, 0xbd, 0xfa, 0x0a, 0xd3, 0x51, 0x18, 0x16, 0x9b, 0x4a, + 0x14, 0xb0, 0xca, 0xb6, 0x05, 0xbb, 0x18, 0xc5, 0x02, 0x65, 0xdb, 0x06, +}; +static const unsigned char kat2759_addin1[] = { + 0xed, 0x85, 0x70, 0x59, 0x69, 0x09, 0x1f, 0x43, 0xe3, 0x23, 0xdb, 0xcc, + 0xac, 0xad, 0xf7, 0xa3, 0xec, 0x7d, 0x06, 0xd6, 0x9b, 0x2b, 0x50, 0x0e, + 0x33, 0x42, 0x95, 0xa6, 0x87, 0x4e, 0x41, 0x5d, 0xcf, 0x11, 0x5b, 0x99, + 0xe2, 0x2a, 0xba, 0xc7, 0x8b, 0x4a, 0xdf, 0xa1, 0x0c, 0x78, 0x06, 0x95, +}; +static const unsigned char kat2759_retbits[] = { + 0x66, 0x3d, 0x9c, 0xa9, 0x85, 0x0d, 0x48, 0xdc, 0x4d, 0x95, 0x05, 0x05, + 0xb3, 0xcb, 0x2c, 0xc0, 0x68, 0x66, 0xd9, 0x33, 0xa8, 0xb8, 0x7b, 0xc5, + 0x89, 0x14, 0xf9, 0xb8, 0xe9, 0x59, 0xd4, 0x34, 0x06, 0x4b, 0xc6, 0x00, + 0x08, 0xb5, 0x7f, 0x7f, 0x19, 0x29, 0x63, 0x7a, 0x6f, 0xf7, 0x78, 0xbb, + 0x88, 0x28, 0xe5, 0x56, 0x31, 0xb4, 0xac, 0x28, 0x52, 0x22, 0x96, 0xd6, + 0x54, 0x96, 0x93, 0x4c, +}; +static const struct drbg_kat_pr_false kat2759_t = { + 13, kat2759_entropyin, kat2759_nonce, kat2759_persstr, + kat2759_entropyinreseed, kat2759_addinreseed, kat2759_addin0, + kat2759_addin1, kat2759_retbits +}; +static const struct drbg_kat kat2759 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2759_t +}; + +static const unsigned char kat2760_entropyin[] = { + 0x1f, 0xc3, 0x9d, 0x0e, 0x57, 0x52, 0x2b, 0x52, 0xd0, 0x50, 0x68, 0x17, + 0xc8, 0x24, 0x22, 0xcc, 0x7c, 0x15, 0xde, 0xc0, 0xd2, 0x75, 0xf8, 0xf9, + 0x4a, 0x41, 0x56, 0xc8, 0xec, 0x3b, 0x69, 0x8d, 0xbe, 0xde, 0x1e, 0x15, + 0x80, 0x4b, 0x82, 0x2d, 0xf6, 0x43, 0x3d, 0x0a, 0xfa, 0xdf, 0x1a, 0x50, +}; +static const unsigned char kat2760_nonce[] = {0}; +static const unsigned char kat2760_persstr[] = { + 0xee, 0xbd, 0x8b, 0x07, 0x8b, 0x80, 0x04, 0xf1, 0x61, 0x7b, 0xff, 0x59, + 0x34, 0x17, 0x9f, 0x81, 0x46, 0x3f, 0x43, 0xfe, 0xe8, 0xd0, 0x43, 0x76, + 0x23, 0x45, 0xbc, 0x08, 0x4d, 0xa2, 0xb7, 0xe9, 0x70, 0x11, 0xca, 0xc6, + 0xf4, 0x88, 0xe3, 0x1d, 0xa5, 0xdc, 0x00, 0xa7, 0xaf, 0x5b, 0x97, 0xd7, +}; +static const unsigned char kat2760_entropyinreseed[] = { + 0x60, 0xbf, 0xd2, 0x52, 0x9b, 0x39, 0x12, 0x04, 0xee, 0x81, 0x70, 0x55, + 0xc8, 0xba, 0xf5, 0xd4, 0xa4, 0x70, 0xf4, 0x33, 0x77, 0x39, 0x46, 0x40, + 0x14, 0x0e, 0xc1, 0x22, 0x65, 0x77, 0x87, 0x34, 0x4a, 0x9d, 0x5d, 0x2d, + 0x65, 0xd1, 0x12, 0xae, 0x20, 0x3f, 0xc7, 0x8e, 0x71, 0x09, 0x87, 0x2c, +}; +static const unsigned char kat2760_addinreseed[] = { + 0x86, 0xff, 0x4f, 0x59, 0x42, 0xd3, 0x41, 0x17, 0x51, 0xef, 0x63, 0x75, + 0xf8, 0xc6, 0x50, 0x16, 0xd4, 0x3c, 0x13, 0x20, 0x07, 0xcc, 0x95, 0x83, + 0x5b, 0x10, 0x4b, 0x44, 0xf9, 0x73, 0x3d, 0xc5, 0xca, 0xae, 0x17, 0xd3, + 0xda, 0x66, 0x33, 0x69, 0xbf, 0x4f, 0xf8, 0x2a, 0xdb, 0x83, 0x04, 0x43, +}; +static const unsigned char kat2760_addin0[] = { + 0x02, 0xa4, 0xbf, 0xd4, 0xa8, 0x25, 0xe4, 0xd8, 0x11, 0x77, 0x01, 0x27, + 0xc6, 0xf5, 0xa5, 0x68, 0xde, 0xff, 0x4d, 0x79, 0x89, 0x30, 0x0a, 0x0b, + 0xd2, 0x32, 0x20, 0xa5, 0x86, 0x31, 0xe0, 0x3e, 0x13, 0x8c, 0x55, 0xb5, + 0x65, 0x03, 0x2b, 0x8a, 0x7c, 0x6f, 0x3a, 0xbd, 0xd3, 0x4a, 0x0c, 0x30, +}; +static const unsigned char kat2760_addin1[] = { + 0xf9, 0x77, 0x5f, 0x8f, 0xb1, 0xb7, 0x67, 0xc4, 0x63, 0x9e, 0x2c, 0x3f, + 0xe9, 0xf0, 0x82, 0x0e, 0x03, 0xe2, 0x87, 0x80, 0x64, 0x1e, 0xcb, 0xf8, + 0x32, 0x45, 0x1b, 0xae, 0xa5, 0xe1, 0xef, 0x83, 0xcf, 0x9e, 0x07, 0x8c, + 0xc3, 0x25, 0xb1, 0xfc, 0x7a, 0x8a, 0x14, 0xbf, 0x07, 0xcc, 0x4f, 0xf5, +}; +static const unsigned char kat2760_retbits[] = { + 0xba, 0x47, 0x39, 0x79, 0xf2, 0x33, 0x58, 0xb9, 0x5f, 0xf4, 0x96, 0x10, + 0xa7, 0xb9, 0x19, 0x36, 0xb7, 0xd1, 0xda, 0x44, 0xbf, 0x88, 0x91, 0xcc, + 0x19, 0xac, 0x6c, 0xeb, 0x9f, 0x02, 0x41, 0xa8, 0xc3, 0x77, 0x1a, 0x2e, + 0xfb, 0x40, 0x32, 0x75, 0xbf, 0x59, 0x9a, 0xad, 0x30, 0xb9, 0xe4, 0x60, + 0x4e, 0x90, 0x72, 0x92, 0x41, 0x76, 0x38, 0x01, 0x38, 0x7a, 0xb2, 0x39, + 0xae, 0x54, 0x36, 0x25, +}; +static const struct drbg_kat_pr_false kat2760_t = { + 14, kat2760_entropyin, kat2760_nonce, kat2760_persstr, + kat2760_entropyinreseed, kat2760_addinreseed, kat2760_addin0, + kat2760_addin1, kat2760_retbits +}; +static const struct drbg_kat kat2760 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2760_t +}; + +static const unsigned char kat2761_entropyin[] = { + 0x3f, 0xa9, 0x04, 0x74, 0x70, 0x34, 0xcc, 0x30, 0x93, 0xde, 0xaa, 0xc4, + 0x97, 0xe3, 0xc1, 0x43, 0xfa, 0x44, 0x00, 0xac, 0xcf, 0xc5, 0x58, 0x85, + 0x71, 0x7f, 0xa9, 0x43, 0xf4, 0x3c, 0xba, 0xd1, 0xa8, 0x91, 0x68, 0xaa, + 0x76, 0x96, 0x1e, 0x15, 0x0e, 0x26, 0x49, 0xec, 0x1e, 0xd6, 0x73, 0x61, +}; +static const unsigned char kat2761_nonce[] = {0}; +static const unsigned char kat2761_persstr[] = {0}; +static const unsigned char kat2761_entropyinreseed[] = { + 0xc6, 0x0c, 0x5b, 0x41, 0x5b, 0xad, 0x71, 0x54, 0x93, 0x48, 0x6b, 0x7a, + 0x12, 0x3b, 0xa6, 0xc0, 0x46, 0x08, 0x9e, 0x95, 0x49, 0xea, 0x8b, 0xb2, + 0x2a, 0x7a, 0xd4, 0x10, 0x8b, 0xec, 0x98, 0x11, 0x7f, 0x75, 0x1a, 0x2e, + 0x4c, 0xc2, 0x0b, 0x02, 0x51, 0x0d, 0x2a, 0x3d, 0x02, 0x60, 0x5b, 0x4d, +}; +static const unsigned char kat2761_addinreseed[] = {0}; +static const unsigned char kat2761_addin0[] = {0}; +static const unsigned char kat2761_addin1[] = {0}; +static const unsigned char kat2761_retbits[] = { + 0xab, 0x2d, 0x70, 0x9d, 0xe8, 0x81, 0x16, 0x4b, 0x6c, 0x21, 0x49, 0xb2, + 0x1e, 0xae, 0x15, 0x17, 0xf8, 0x75, 0x61, 0x64, 0x9e, 0x0d, 0xd9, 0xca, + 0x5c, 0xe5, 0x51, 0xc5, 0xbd, 0x12, 0xfd, 0xf7, 0x09, 0x1e, 0x08, 0x1d, + 0x30, 0x71, 0x23, 0xae, 0xc5, 0xae, 0x7c, 0x30, 0xaf, 0xd2, 0xa6, 0x4c, + 0x8d, 0x13, 0x6e, 0xa0, 0x7f, 0x7e, 0xc5, 0xed, 0xb4, 0x40, 0x0b, 0x9a, + 0x64, 0x45, 0x66, 0x42, +}; +static const struct drbg_kat_pr_false kat2761_t = { + 0, kat2761_entropyin, kat2761_nonce, kat2761_persstr, + kat2761_entropyinreseed, kat2761_addinreseed, kat2761_addin0, + kat2761_addin1, kat2761_retbits +}; +static const struct drbg_kat kat2761 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2761_t +}; + +static const unsigned char kat2762_entropyin[] = { + 0x09, 0x12, 0xb0, 0xbd, 0xba, 0x55, 0xff, 0xab, 0x83, 0xd8, 0xe9, 0x32, + 0xb2, 0xc1, 0x43, 0x80, 0x03, 0x32, 0x4e, 0xcc, 0x2e, 0x59, 0x93, 0x3d, + 0x6e, 0x20, 0xbc, 0xca, 0x9b, 0x5c, 0x34, 0x2c, 0x07, 0x7e, 0x75, 0xf4, + 0x7e, 0x1d, 0x33, 0x59, 0xdc, 0x3c, 0xb6, 0x9b, 0xec, 0xe4, 0xa1, 0xc8, +}; +static const unsigned char kat2762_nonce[] = {0}; +static const unsigned char kat2762_persstr[] = {0}; +static const unsigned char kat2762_entropyinreseed[] = { + 0x02, 0xe5, 0x03, 0xbd, 0x3f, 0x34, 0x85, 0x98, 0x8d, 0x5e, 0x0e, 0x6a, + 0xf4, 0x58, 0x9f, 0xff, 0xda, 0x79, 0x70, 0x93, 0xe6, 0xfa, 0x77, 0xa4, + 0xa8, 0x40, 0x21, 0x26, 0x9f, 0xb8, 0xe2, 0xb5, 0x8e, 0xf7, 0x0e, 0xe9, + 0xb6, 0x0f, 0x79, 0x45, 0x5b, 0xc9, 0xc3, 0x61, 0xb7, 0xe4, 0x30, 0x29, +}; +static const unsigned char kat2762_addinreseed[] = {0}; +static const unsigned char kat2762_addin0[] = {0}; +static const unsigned char kat2762_addin1[] = {0}; +static const unsigned char kat2762_retbits[] = { + 0xb1, 0x6a, 0x7e, 0x86, 0xb1, 0x43, 0x6f, 0x13, 0xaa, 0xe4, 0x15, 0x76, + 0xdf, 0x30, 0x3a, 0xbd, 0x13, 0x1f, 0xd4, 0x58, 0x86, 0xf0, 0x2f, 0x48, + 0xef, 0x8e, 0x9f, 0x57, 0x06, 0x85, 0xff, 0xcd, 0x0d, 0xcc, 0x1f, 0x5f, + 0x1d, 0x3b, 0xed, 0xc2, 0xde, 0x37, 0x82, 0x29, 0x0f, 0x36, 0xbc, 0xfd, + 0x46, 0x84, 0xd7, 0x6e, 0x3e, 0x56, 0xa3, 0x2b, 0x75, 0x09, 0xf6, 0x7f, + 0x50, 0xdf, 0xb1, 0x4c, +}; +static const struct drbg_kat_pr_false kat2762_t = { + 1, kat2762_entropyin, kat2762_nonce, kat2762_persstr, + kat2762_entropyinreseed, kat2762_addinreseed, kat2762_addin0, + kat2762_addin1, kat2762_retbits +}; +static const struct drbg_kat kat2762 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2762_t +}; + +static const unsigned char kat2763_entropyin[] = { + 0xfd, 0x5e, 0xfc, 0xfa, 0x98, 0x60, 0x60, 0x50, 0x4d, 0xb9, 0x21, 0x09, + 0x56, 0x38, 0xcb, 0xf7, 0x0c, 0x78, 0xb7, 0xfd, 0xb1, 0xb3, 0x3d, 0x77, + 0xd4, 0xa5, 0x57, 0xef, 0x47, 0xa3, 0x65, 0x30, 0x85, 0x39, 0x84, 0x4b, + 0xe4, 0x16, 0x03, 0xe9, 0x7a, 0x78, 0xfa, 0x9f, 0x55, 0x04, 0xa4, 0x98, +}; +static const unsigned char kat2763_nonce[] = {0}; +static const unsigned char kat2763_persstr[] = {0}; +static const unsigned char kat2763_entropyinreseed[] = { + 0xc9, 0x94, 0x89, 0x73, 0x87, 0x67, 0xca, 0x8b, 0x22, 0x02, 0x2e, 0x8f, + 0xf1, 0xaa, 0x5a, 0xa6, 0x28, 0x9f, 0x2a, 0x82, 0x2e, 0x4a, 0x8c, 0x93, + 0x37, 0xed, 0x39, 0x3d, 0xb4, 0xff, 0x58, 0x70, 0xb9, 0x95, 0x2a, 0xf5, + 0x3e, 0x88, 0xbd, 0xae, 0xdb, 0xbc, 0x00, 0x26, 0x25, 0x6f, 0x9f, 0x6d, +}; +static const unsigned char kat2763_addinreseed[] = {0}; +static const unsigned char kat2763_addin0[] = {0}; +static const unsigned char kat2763_addin1[] = {0}; +static const unsigned char kat2763_retbits[] = { + 0x60, 0x7b, 0x45, 0x5e, 0xb3, 0x01, 0x93, 0x40, 0x02, 0x51, 0x61, 0x2d, + 0x1f, 0x96, 0x7a, 0xfb, 0x7a, 0x7d, 0x0f, 0x4e, 0xee, 0xfd, 0x69, 0x04, + 0x11, 0xb3, 0x2b, 0x56, 0x0b, 0xed, 0x69, 0xad, 0x74, 0x56, 0x90, 0xf9, + 0x8f, 0xa5, 0x8f, 0xb0, 0x99, 0x8c, 0x06, 0x3e, 0x52, 0x6d, 0x12, 0x4c, + 0x40, 0x35, 0xf5, 0x65, 0xee, 0x91, 0x33, 0xa8, 0x61, 0x84, 0xd6, 0xc0, + 0x13, 0x50, 0xa5, 0xd9, +}; +static const struct drbg_kat_pr_false kat2763_t = { + 2, kat2763_entropyin, kat2763_nonce, kat2763_persstr, + kat2763_entropyinreseed, kat2763_addinreseed, kat2763_addin0, + kat2763_addin1, kat2763_retbits +}; +static const struct drbg_kat kat2763 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2763_t +}; + +static const unsigned char kat2764_entropyin[] = { + 0xfd, 0xdf, 0x8a, 0x15, 0x12, 0x66, 0xa5, 0x50, 0xee, 0x2c, 0x72, 0x8f, + 0xa2, 0x5d, 0xc5, 0x92, 0xc6, 0xd5, 0x5c, 0x64, 0x4a, 0xb0, 0xd3, 0xcd, + 0x70, 0x47, 0x24, 0x8b, 0x31, 0xe2, 0xdf, 0xad, 0xe4, 0xac, 0xaa, 0x8c, + 0x40, 0xfa, 0x2c, 0xc5, 0xb7, 0x14, 0xbe, 0xd1, 0x77, 0x7b, 0x3d, 0x3d, +}; +static const unsigned char kat2764_nonce[] = {0}; +static const unsigned char kat2764_persstr[] = {0}; +static const unsigned char kat2764_entropyinreseed[] = { + 0x50, 0x81, 0x8e, 0x85, 0xd8, 0x56, 0x05, 0x9a, 0x8c, 0xe2, 0x9e, 0xc9, + 0xc8, 0xc0, 0xb8, 0x54, 0xce, 0x04, 0x19, 0x9d, 0x12, 0x81, 0x65, 0x35, + 0x5d, 0xc9, 0x9c, 0x25, 0x80, 0x47, 0xce, 0x73, 0x3a, 0x32, 0x4e, 0xad, + 0x4d, 0x33, 0x4f, 0x07, 0xaa, 0x4c, 0xd3, 0x3e, 0x2f, 0xb5, 0xf2, 0x77, +}; +static const unsigned char kat2764_addinreseed[] = {0}; +static const unsigned char kat2764_addin0[] = {0}; +static const unsigned char kat2764_addin1[] = {0}; +static const unsigned char kat2764_retbits[] = { + 0x3a, 0x4f, 0xe0, 0x79, 0x62, 0xac, 0x26, 0x9b, 0x4f, 0x40, 0xcf, 0x5e, + 0xc0, 0x21, 0x50, 0xc1, 0x5b, 0x07, 0x6e, 0x8d, 0xff, 0x34, 0x78, 0xdf, + 0xbe, 0xc9, 0xbc, 0xc7, 0x04, 0x9e, 0xb8, 0x46, 0xb8, 0x6b, 0x2e, 0x0d, + 0xbd, 0x2c, 0x1e, 0x4c, 0x38, 0x7b, 0x77, 0xc2, 0x19, 0x6a, 0xe1, 0xdf, + 0x79, 0x21, 0xef, 0x66, 0x55, 0x70, 0x0d, 0x9c, 0xff, 0xcd, 0x93, 0xdf, + 0x24, 0xee, 0xe4, 0xd0, +}; +static const struct drbg_kat_pr_false kat2764_t = { + 3, kat2764_entropyin, kat2764_nonce, kat2764_persstr, + kat2764_entropyinreseed, kat2764_addinreseed, kat2764_addin0, + kat2764_addin1, kat2764_retbits +}; +static const struct drbg_kat kat2764 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2764_t +}; + +static const unsigned char kat2765_entropyin[] = { + 0x9f, 0x9a, 0x52, 0x02, 0xa5, 0x42, 0x52, 0x5b, 0x10, 0x7b, 0xbb, 0xf2, + 0xad, 0x34, 0xed, 0x1f, 0x9a, 0x3d, 0x6a, 0x27, 0xf2, 0x06, 0x69, 0x5f, + 0x8d, 0xef, 0x3c, 0x21, 0x90, 0xb0, 0x37, 0xbf, 0x33, 0x2c, 0xe3, 0xe2, + 0xdf, 0xd6, 0x5c, 0xcf, 0x74, 0xef, 0xae, 0xbd, 0x51, 0x8f, 0xd3, 0x45, +}; +static const unsigned char kat2765_nonce[] = {0}; +static const unsigned char kat2765_persstr[] = {0}; +static const unsigned char kat2765_entropyinreseed[] = { + 0x7e, 0x96, 0x2c, 0xc7, 0xca, 0xb2, 0x31, 0xcf, 0x76, 0xc2, 0x70, 0x22, + 0xc0, 0x1a, 0x79, 0x6b, 0x76, 0xcd, 0x97, 0x74, 0x81, 0x73, 0x55, 0x33, + 0x14, 0xfd, 0xb5, 0xbb, 0x67, 0xcf, 0x56, 0x34, 0x6e, 0x35, 0xbb, 0xbe, + 0x47, 0xf3, 0x6f, 0x98, 0x9a, 0xa1, 0x60, 0x74, 0x97, 0x5b, 0x6b, 0x5e, +}; +static const unsigned char kat2765_addinreseed[] = {0}; +static const unsigned char kat2765_addin0[] = {0}; +static const unsigned char kat2765_addin1[] = {0}; +static const unsigned char kat2765_retbits[] = { + 0x41, 0x62, 0xfb, 0x10, 0xe2, 0x5b, 0x37, 0x54, 0xbd, 0xfb, 0x91, 0x3a, + 0x9e, 0xdd, 0x01, 0x56, 0x7e, 0x89, 0x7b, 0x2a, 0x1b, 0x37, 0xae, 0xa8, + 0xcb, 0x7a, 0xf0, 0x69, 0xf3, 0x33, 0xa5, 0x2a, 0xe1, 0x5b, 0xd2, 0xc8, + 0x97, 0x16, 0x0d, 0xb0, 0x34, 0xbf, 0xb5, 0x4d, 0x53, 0x48, 0x1e, 0xac, + 0x11, 0x51, 0x06, 0x4d, 0xaa, 0x3c, 0xe8, 0x85, 0x79, 0x83, 0x8e, 0xfb, + 0x1d, 0x36, 0xe0, 0x77, +}; +static const struct drbg_kat_pr_false kat2765_t = { + 4, kat2765_entropyin, kat2765_nonce, kat2765_persstr, + kat2765_entropyinreseed, kat2765_addinreseed, kat2765_addin0, + kat2765_addin1, kat2765_retbits +}; +static const struct drbg_kat kat2765 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2765_t +}; + +static const unsigned char kat2766_entropyin[] = { + 0x8f, 0x5f, 0xfa, 0x82, 0x01, 0x03, 0xb8, 0x54, 0x5c, 0x48, 0x12, 0xae, + 0x70, 0xcd, 0x77, 0xf5, 0x39, 0x17, 0xda, 0xf9, 0x7e, 0x79, 0xc1, 0x96, + 0x14, 0x92, 0xee, 0x1f, 0x6a, 0x72, 0xd6, 0x7f, 0x4f, 0x9c, 0x4b, 0xf8, + 0x48, 0xa3, 0xa0, 0xb0, 0x94, 0x18, 0x2a, 0xfd, 0xae, 0xb8, 0x3e, 0x78, +}; +static const unsigned char kat2766_nonce[] = {0}; +static const unsigned char kat2766_persstr[] = {0}; +static const unsigned char kat2766_entropyinreseed[] = { + 0xfb, 0xb0, 0x8a, 0x78, 0xba, 0xb9, 0x92, 0xfc, 0x76, 0xa5, 0x70, 0x2c, + 0x20, 0xac, 0x27, 0x65, 0xa0, 0x90, 0xd2, 0xd4, 0xb8, 0xbe, 0x5a, 0x31, + 0x29, 0x12, 0xbb, 0x66, 0x57, 0x6b, 0xd1, 0x52, 0xe7, 0x06, 0xbf, 0x80, + 0x80, 0xd4, 0xf2, 0x39, 0x68, 0x0d, 0xf9, 0x1a, 0xc2, 0x20, 0x16, 0x08, +}; +static const unsigned char kat2766_addinreseed[] = {0}; +static const unsigned char kat2766_addin0[] = {0}; +static const unsigned char kat2766_addin1[] = {0}; +static const unsigned char kat2766_retbits[] = { + 0x81, 0x1e, 0xc7, 0x25, 0xc9, 0xa7, 0xb3, 0xab, 0xff, 0x96, 0x2b, 0xf7, + 0xc2, 0x8b, 0x8f, 0xb8, 0x3b, 0xbf, 0x39, 0x4e, 0x10, 0x0a, 0x56, 0xa1, + 0xe4, 0x02, 0x81, 0xe3, 0x72, 0x21, 0xe8, 0xb0, 0x36, 0x61, 0x56, 0x7c, + 0xdb, 0x2e, 0xc5, 0x7b, 0x95, 0xbd, 0xd5, 0xf4, 0xce, 0x89, 0xad, 0xae, + 0x3d, 0x43, 0xe3, 0xba, 0x4a, 0xcc, 0x46, 0xfa, 0xab, 0x26, 0xa3, 0xd5, + 0xc7, 0xa9, 0x73, 0xa8, +}; +static const struct drbg_kat_pr_false kat2766_t = { + 5, kat2766_entropyin, kat2766_nonce, kat2766_persstr, + kat2766_entropyinreseed, kat2766_addinreseed, kat2766_addin0, + kat2766_addin1, kat2766_retbits +}; +static const struct drbg_kat kat2766 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2766_t +}; + +static const unsigned char kat2767_entropyin[] = { + 0x98, 0x1d, 0x97, 0xc7, 0x75, 0x0e, 0x5b, 0x75, 0x8d, 0x49, 0x0a, 0x76, + 0x8d, 0xc4, 0x49, 0xdd, 0x6e, 0x12, 0x21, 0x90, 0x3a, 0x70, 0x65, 0xac, + 0xb2, 0x9d, 0xd2, 0x4d, 0x63, 0xf5, 0x64, 0x42, 0xe8, 0x9d, 0xee, 0x90, + 0xa6, 0xf4, 0x76, 0xca, 0xd8, 0xe8, 0x2a, 0x12, 0x9b, 0x5e, 0x89, 0x4a, +}; +static const unsigned char kat2767_nonce[] = {0}; +static const unsigned char kat2767_persstr[] = {0}; +static const unsigned char kat2767_entropyinreseed[] = { + 0x62, 0x39, 0x7c, 0x5d, 0x20, 0x3a, 0xfe, 0x8d, 0x29, 0xa2, 0x04, 0x4f, + 0x21, 0xdd, 0x8c, 0x10, 0x2b, 0xb8, 0x7d, 0x36, 0xfd, 0x67, 0xd5, 0xc3, + 0xc2, 0x2a, 0xd6, 0x11, 0x6f, 0xb3, 0xf3, 0xf8, 0x62, 0xd3, 0xca, 0xcf, + 0xe1, 0x8b, 0x85, 0x1e, 0x81, 0xb5, 0xbb, 0x3e, 0xb0, 0x74, 0xf9, 0x70, +}; +static const unsigned char kat2767_addinreseed[] = {0}; +static const unsigned char kat2767_addin0[] = {0}; +static const unsigned char kat2767_addin1[] = {0}; +static const unsigned char kat2767_retbits[] = { + 0x0a, 0x58, 0xda, 0x0e, 0x42, 0xac, 0x11, 0x86, 0xef, 0x8e, 0x1c, 0xe6, + 0xf8, 0x51, 0xe2, 0x30, 0xed, 0xfb, 0x91, 0xae, 0x3e, 0xc0, 0x9f, 0xc3, + 0x74, 0x95, 0x54, 0x45, 0xaf, 0xc8, 0xfc, 0x59, 0x71, 0x3d, 0x05, 0x51, + 0x80, 0xbc, 0xd5, 0x6c, 0x3c, 0xa5, 0x1b, 0x71, 0xeb, 0x6e, 0xda, 0xf4, + 0x3e, 0xea, 0xd8, 0x09, 0x30, 0x36, 0x0d, 0x09, 0x30, 0x0e, 0x16, 0xb5, + 0x51, 0xc3, 0x01, 0x5d, +}; +static const struct drbg_kat_pr_false kat2767_t = { + 6, kat2767_entropyin, kat2767_nonce, kat2767_persstr, + kat2767_entropyinreseed, kat2767_addinreseed, kat2767_addin0, + kat2767_addin1, kat2767_retbits +}; +static const struct drbg_kat kat2767 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2767_t +}; + +static const unsigned char kat2768_entropyin[] = { + 0x31, 0xd5, 0x0c, 0xe8, 0xe9, 0x25, 0xa6, 0x83, 0x8f, 0x08, 0x34, 0xd7, + 0x5a, 0xd6, 0x1c, 0x21, 0xd2, 0x9d, 0xb4, 0x8a, 0x83, 0x39, 0xf1, 0x1a, + 0xdb, 0x2a, 0x29, 0xde, 0xb4, 0x60, 0xd2, 0xa3, 0xf6, 0xad, 0x86, 0xa2, + 0x7b, 0xb0, 0x08, 0xc8, 0x59, 0x25, 0xc5, 0x40, 0xfc, 0x9e, 0x33, 0x98, +}; +static const unsigned char kat2768_nonce[] = {0}; +static const unsigned char kat2768_persstr[] = {0}; +static const unsigned char kat2768_entropyinreseed[] = { + 0x52, 0x0d, 0xa2, 0x53, 0xda, 0xaf, 0x68, 0x14, 0x09, 0xa8, 0x2a, 0xaa, + 0x2f, 0xe1, 0x6d, 0x6b, 0x10, 0xda, 0xc5, 0x64, 0x9d, 0xaf, 0x4f, 0x1d, + 0xe6, 0x73, 0xd1, 0xed, 0x7c, 0x6a, 0x6b, 0x8e, 0x45, 0xd0, 0x77, 0x52, + 0xf8, 0x17, 0x75, 0xc9, 0xd0, 0x03, 0x45, 0x45, 0xd6, 0x53, 0x5a, 0x8e, +}; +static const unsigned char kat2768_addinreseed[] = {0}; +static const unsigned char kat2768_addin0[] = {0}; +static const unsigned char kat2768_addin1[] = {0}; +static const unsigned char kat2768_retbits[] = { + 0x72, 0x12, 0xda, 0x37, 0x07, 0xf4, 0xde, 0xa6, 0x82, 0x8a, 0x1e, 0x7e, + 0x84, 0xee, 0x7b, 0xba, 0x2b, 0x88, 0x16, 0xc1, 0x11, 0xa7, 0xf6, 0x64, + 0x3d, 0x49, 0x2b, 0xcf, 0xf5, 0xf4, 0xba, 0x5b, 0x10, 0xaf, 0x6b, 0x25, + 0xed, 0xc5, 0x67, 0xa8, 0x28, 0x0d, 0xad, 0x55, 0x7c, 0x42, 0x90, 0x85, + 0xf5, 0xbc, 0xe7, 0x6e, 0xcb, 0x8f, 0x7d, 0xef, 0x37, 0x6e, 0x85, 0xea, + 0x99, 0x9e, 0x81, 0x5b, +}; +static const struct drbg_kat_pr_false kat2768_t = { + 7, kat2768_entropyin, kat2768_nonce, kat2768_persstr, + kat2768_entropyinreseed, kat2768_addinreseed, kat2768_addin0, + kat2768_addin1, kat2768_retbits +}; +static const struct drbg_kat kat2768 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2768_t +}; + +static const unsigned char kat2769_entropyin[] = { + 0x10, 0x52, 0xe5, 0x2b, 0xcf, 0xfa, 0x8d, 0x9b, 0xcf, 0x24, 0x16, 0x62, + 0xaf, 0x4b, 0x28, 0x1c, 0x81, 0xdb, 0x5b, 0xaa, 0x8a, 0x49, 0x9c, 0x1a, + 0x11, 0x32, 0x55, 0xeb, 0xed, 0xaa, 0x29, 0x53, 0x88, 0x8d, 0x39, 0xc8, + 0x0e, 0x50, 0xcf, 0xb4, 0x77, 0xe8, 0xa2, 0xae, 0xb1, 0xb7, 0xe4, 0x32, +}; +static const unsigned char kat2769_nonce[] = {0}; +static const unsigned char kat2769_persstr[] = {0}; +static const unsigned char kat2769_entropyinreseed[] = { + 0x23, 0xe2, 0xd6, 0xcc, 0x4e, 0xa0, 0x30, 0xe3, 0x34, 0xe1, 0xa1, 0xde, + 0x4f, 0xe7, 0x1e, 0x10, 0xed, 0x0a, 0xff, 0xe7, 0xac, 0xa2, 0xb4, 0x2e, + 0x97, 0xb9, 0x14, 0x99, 0x36, 0x91, 0x0b, 0x93, 0xd9, 0x50, 0x70, 0x60, + 0x83, 0xad, 0x26, 0x1d, 0x51, 0xa1, 0x7b, 0xdf, 0xcc, 0x7a, 0xac, 0x23, +}; +static const unsigned char kat2769_addinreseed[] = {0}; +static const unsigned char kat2769_addin0[] = {0}; +static const unsigned char kat2769_addin1[] = {0}; +static const unsigned char kat2769_retbits[] = { + 0xec, 0x6f, 0x01, 0xe3, 0x9f, 0x26, 0xfa, 0x63, 0xd4, 0x38, 0xf1, 0xaa, + 0x82, 0x56, 0x4d, 0x7e, 0x0b, 0xfc, 0xd0, 0xc3, 0xc4, 0x67, 0x1e, 0xf1, + 0x07, 0x70, 0x4c, 0xfb, 0x6e, 0xc3, 0x2a, 0xf5, 0x25, 0x9c, 0xe1, 0x4f, + 0x36, 0x04, 0x93, 0x88, 0x89, 0x1d, 0xd2, 0xd2, 0x36, 0xb2, 0x07, 0x3d, + 0xea, 0xce, 0x8e, 0x55, 0xc3, 0xcf, 0x4b, 0x98, 0x49, 0x0a, 0x6f, 0xa4, + 0x34, 0x2e, 0x00, 0x4e, +}; +static const struct drbg_kat_pr_false kat2769_t = { + 8, kat2769_entropyin, kat2769_nonce, kat2769_persstr, + kat2769_entropyinreseed, kat2769_addinreseed, kat2769_addin0, + kat2769_addin1, kat2769_retbits +}; +static const struct drbg_kat kat2769 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2769_t +}; + +static const unsigned char kat2770_entropyin[] = { + 0xfc, 0x5b, 0xdb, 0x09, 0x53, 0xcb, 0x88, 0xe2, 0x40, 0xbc, 0xa5, 0x83, + 0xeb, 0x79, 0xa3, 0x9d, 0x61, 0xe7, 0x65, 0x68, 0x34, 0x49, 0xe1, 0x5e, + 0x7e, 0x6c, 0x3f, 0xe4, 0xf2, 0xe4, 0x6f, 0x02, 0x3d, 0x7c, 0x27, 0xf3, + 0x5c, 0xa9, 0xc4, 0x28, 0x8d, 0x2f, 0x1a, 0xf9, 0xa1, 0x16, 0x99, 0xcc, +}; +static const unsigned char kat2770_nonce[] = {0}; +static const unsigned char kat2770_persstr[] = {0}; +static const unsigned char kat2770_entropyinreseed[] = { + 0x48, 0xf5, 0xd6, 0x52, 0x15, 0x8a, 0xa1, 0xb6, 0x31, 0x81, 0x65, 0x4a, + 0xae, 0x4f, 0xa3, 0x5e, 0x10, 0x78, 0x66, 0xb2, 0x74, 0x81, 0x47, 0xd6, + 0x66, 0x14, 0x1a, 0x60, 0x28, 0x71, 0x19, 0xef, 0x7e, 0xdf, 0x19, 0xc2, + 0xee, 0x52, 0x7a, 0x96, 0x10, 0xaf, 0x88, 0x54, 0x00, 0xe3, 0xf8, 0x3c, +}; +static const unsigned char kat2770_addinreseed[] = {0}; +static const unsigned char kat2770_addin0[] = {0}; +static const unsigned char kat2770_addin1[] = {0}; +static const unsigned char kat2770_retbits[] = { + 0x2c, 0x03, 0x10, 0x6b, 0xa0, 0xd3, 0x9d, 0x44, 0xff, 0x6a, 0x45, 0xc3, + 0x12, 0xc5, 0x25, 0xe9, 0x9f, 0x1f, 0x96, 0x68, 0x0f, 0xac, 0xe8, 0x3e, + 0x12, 0x75, 0x5e, 0xc6, 0x0c, 0x22, 0x89, 0x55, 0x75, 0xa0, 0x98, 0x0b, + 0x33, 0x89, 0x67, 0xe6, 0xca, 0x39, 0x0a, 0xbf, 0x8b, 0xc3, 0xd4, 0xef, + 0xe2, 0x4d, 0x2f, 0xb7, 0xea, 0x83, 0xc2, 0x91, 0x9f, 0x98, 0x6e, 0xc7, + 0xeb, 0xfc, 0xe5, 0x2e, +}; +static const struct drbg_kat_pr_false kat2770_t = { + 9, kat2770_entropyin, kat2770_nonce, kat2770_persstr, + kat2770_entropyinreseed, kat2770_addinreseed, kat2770_addin0, + kat2770_addin1, kat2770_retbits +}; +static const struct drbg_kat kat2770 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2770_t +}; + +static const unsigned char kat2771_entropyin[] = { + 0xae, 0x2c, 0x5d, 0x1a, 0x8d, 0x8b, 0x81, 0x3f, 0x40, 0xd3, 0xe2, 0x65, + 0x63, 0xfe, 0xc0, 0xe4, 0x06, 0x20, 0x93, 0xdd, 0xb6, 0x3d, 0xf4, 0xbe, + 0xe7, 0xd1, 0x02, 0xc1, 0x3c, 0x10, 0x26, 0xf3, 0xcd, 0x0c, 0x81, 0x8e, + 0x2a, 0xf5, 0xc7, 0xdc, 0x3d, 0x3e, 0x3e, 0x1f, 0xa6, 0xd5, 0x66, 0xc2, +}; +static const unsigned char kat2771_nonce[] = {0}; +static const unsigned char kat2771_persstr[] = {0}; +static const unsigned char kat2771_entropyinreseed[] = { + 0x6d, 0x8d, 0x60, 0xef, 0x2f, 0x87, 0xf9, 0x41, 0xb1, 0x00, 0xf3, 0xc1, + 0x21, 0x4a, 0x75, 0x1b, 0x23, 0xcf, 0x34, 0x1b, 0x30, 0xf7, 0xf7, 0xeb, + 0xb1, 0x83, 0x05, 0x0f, 0xd0, 0xaa, 0x5d, 0x22, 0x2e, 0x87, 0x62, 0x41, + 0x84, 0x02, 0x02, 0xa9, 0x33, 0x7a, 0xff, 0x17, 0xd7, 0x02, 0x68, 0x2e, +}; +static const unsigned char kat2771_addinreseed[] = {0}; +static const unsigned char kat2771_addin0[] = {0}; +static const unsigned char kat2771_addin1[] = {0}; +static const unsigned char kat2771_retbits[] = { + 0xb7, 0xb9, 0xf0, 0xbd, 0x79, 0x54, 0xc0, 0xe0, 0x45, 0xbe, 0xd8, 0x6c, + 0x3c, 0x2e, 0x23, 0xce, 0x3a, 0xf1, 0x7d, 0xcc, 0x85, 0x5e, 0xc5, 0xaa, + 0x4f, 0x04, 0xf0, 0x92, 0x93, 0x51, 0xae, 0x66, 0x98, 0xbe, 0xa4, 0xf2, + 0x5e, 0xcf, 0xf4, 0xf5, 0x2c, 0x2f, 0x6d, 0x75, 0x8e, 0xeb, 0x94, 0x12, + 0xe5, 0x83, 0x91, 0x4d, 0x33, 0xe9, 0x14, 0x74, 0x4d, 0x49, 0xda, 0xfb, + 0x27, 0x40, 0x01, 0x0a, +}; +static const struct drbg_kat_pr_false kat2771_t = { + 10, kat2771_entropyin, kat2771_nonce, kat2771_persstr, + kat2771_entropyinreseed, kat2771_addinreseed, kat2771_addin0, + kat2771_addin1, kat2771_retbits +}; +static const struct drbg_kat kat2771 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2771_t +}; + +static const unsigned char kat2772_entropyin[] = { + 0x73, 0x06, 0x11, 0x58, 0x0f, 0xe7, 0xa0, 0x8d, 0xa6, 0x79, 0xf8, 0x64, + 0x65, 0x4f, 0xde, 0x5a, 0x8d, 0x56, 0x4d, 0x68, 0xdd, 0x41, 0xd2, 0xa1, + 0x88, 0xd7, 0x90, 0x02, 0xf8, 0x93, 0x95, 0x43, 0xfb, 0x7d, 0xfa, 0xc8, + 0xa6, 0x56, 0x76, 0x0f, 0xa0, 0xf6, 0x6d, 0xcc, 0x21, 0x16, 0x17, 0x6c, +}; +static const unsigned char kat2772_nonce[] = {0}; +static const unsigned char kat2772_persstr[] = {0}; +static const unsigned char kat2772_entropyinreseed[] = { + 0xda, 0xc5, 0xd0, 0xbb, 0x45, 0x26, 0x21, 0x53, 0xd7, 0x1c, 0xd3, 0x30, + 0xdf, 0xf5, 0x22, 0x44, 0x68, 0x16, 0xad, 0x5e, 0x28, 0xe3, 0x86, 0x66, + 0x26, 0xf6, 0xe7, 0xfe, 0x5b, 0x6d, 0x31, 0x70, 0xd9, 0x44, 0x2e, 0x72, + 0x61, 0xa5, 0xce, 0x02, 0x99, 0x15, 0x5c, 0xae, 0x74, 0xea, 0x5e, 0x08, +}; +static const unsigned char kat2772_addinreseed[] = {0}; +static const unsigned char kat2772_addin0[] = {0}; +static const unsigned char kat2772_addin1[] = {0}; +static const unsigned char kat2772_retbits[] = { + 0x47, 0x02, 0x12, 0xb1, 0x90, 0x0f, 0xb4, 0xb1, 0xf4, 0x9c, 0xea, 0xf8, + 0xc0, 0x33, 0x3f, 0xaf, 0xf0, 0xd2, 0xa7, 0x9f, 0xd5, 0xe9, 0x13, 0xd5, + 0x2d, 0x66, 0x97, 0x0a, 0xb3, 0x1f, 0x64, 0xc2, 0x97, 0xb5, 0x5e, 0xe8, + 0x12, 0x82, 0x6c, 0xe7, 0xad, 0x35, 0x8f, 0xe5, 0x5e, 0x48, 0xb8, 0x96, + 0xdc, 0x44, 0x42, 0x87, 0x7a, 0x05, 0xc2, 0x52, 0x6d, 0xa0, 0xe5, 0x18, + 0x8f, 0x6f, 0xd5, 0xee, +}; +static const struct drbg_kat_pr_false kat2772_t = { + 11, kat2772_entropyin, kat2772_nonce, kat2772_persstr, + kat2772_entropyinreseed, kat2772_addinreseed, kat2772_addin0, + kat2772_addin1, kat2772_retbits +}; +static const struct drbg_kat kat2772 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2772_t +}; + +static const unsigned char kat2773_entropyin[] = { + 0xcd, 0xd4, 0x63, 0x97, 0x7b, 0xc8, 0x8b, 0x0e, 0x66, 0x0f, 0x3c, 0xec, + 0xe4, 0xfc, 0xf4, 0x09, 0x7f, 0xc7, 0x9f, 0x1e, 0x20, 0xdb, 0xa9, 0x6c, + 0x81, 0x96, 0x44, 0xc3, 0x70, 0x04, 0x3a, 0xc3, 0x9d, 0x49, 0x97, 0xea, + 0x9f, 0x63, 0x49, 0x69, 0xa8, 0x0e, 0x6d, 0xa6, 0xd9, 0xdd, 0x9e, 0x9a, +}; +static const unsigned char kat2773_nonce[] = {0}; +static const unsigned char kat2773_persstr[] = {0}; +static const unsigned char kat2773_entropyinreseed[] = { + 0xc7, 0xdb, 0xc9, 0x7c, 0x20, 0x90, 0x64, 0xa4, 0xa6, 0x63, 0xc8, 0x65, + 0xe9, 0xd4, 0xaf, 0x0d, 0xa3, 0xf7, 0x09, 0xb6, 0xc1, 0x7f, 0xdd, 0x66, + 0xa9, 0x69, 0x05, 0x48, 0x56, 0xaa, 0xdf, 0xaa, 0xa1, 0xb9, 0x73, 0x61, + 0xd5, 0xa6, 0xd2, 0xed, 0x8e, 0x68, 0xcc, 0xb2, 0x03, 0xab, 0xa8, 0xc9, +}; +static const unsigned char kat2773_addinreseed[] = {0}; +static const unsigned char kat2773_addin0[] = {0}; +static const unsigned char kat2773_addin1[] = {0}; +static const unsigned char kat2773_retbits[] = { + 0x82, 0x62, 0xe7, 0x97, 0x52, 0xc9, 0xe3, 0x03, 0x6e, 0x00, 0xf3, 0x6c, + 0x5b, 0x3d, 0x06, 0xee, 0x49, 0x55, 0x5c, 0x59, 0x91, 0x93, 0xac, 0x35, + 0xae, 0x2a, 0x3a, 0x2a, 0x6b, 0xd0, 0x7c, 0x19, 0x67, 0xe7, 0xc0, 0xfb, + 0x4e, 0xbc, 0xb1, 0x4e, 0x42, 0x2f, 0x66, 0x2f, 0xe9, 0xce, 0xf0, 0x8b, + 0xe7, 0x46, 0xbf, 0x27, 0xf3, 0xce, 0xab, 0xb7, 0xff, 0x3d, 0x71, 0x68, + 0xeb, 0xa0, 0x47, 0x1b, +}; +static const struct drbg_kat_pr_false kat2773_t = { + 12, kat2773_entropyin, kat2773_nonce, kat2773_persstr, + kat2773_entropyinreseed, kat2773_addinreseed, kat2773_addin0, + kat2773_addin1, kat2773_retbits +}; +static const struct drbg_kat kat2773 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2773_t +}; + +static const unsigned char kat2774_entropyin[] = { + 0xf4, 0x7c, 0xe5, 0x66, 0x3e, 0xa7, 0x2c, 0xe3, 0xf4, 0x2b, 0x00, 0x83, + 0x8b, 0x0e, 0x8e, 0x90, 0xad, 0xf6, 0x74, 0x6d, 0x35, 0x5b, 0x5c, 0xdb, + 0xbf, 0xc0, 0xbb, 0x80, 0xe3, 0x35, 0xb0, 0x49, 0xed, 0x28, 0x01, 0x1c, + 0x7c, 0x0b, 0xe7, 0xac, 0xbe, 0xde, 0x87, 0xb5, 0x71, 0x92, 0xb1, 0xc3, +}; +static const unsigned char kat2774_nonce[] = {0}; +static const unsigned char kat2774_persstr[] = {0}; +static const unsigned char kat2774_entropyinreseed[] = { + 0x61, 0xcf, 0x94, 0x47, 0xc7, 0xc0, 0x24, 0xe0, 0xa8, 0xee, 0x04, 0x63, + 0x55, 0xe3, 0x92, 0x43, 0x73, 0xe7, 0x9f, 0xea, 0x7e, 0xfe, 0x1c, 0x3c, + 0x8b, 0x1f, 0x7b, 0xf3, 0xae, 0xba, 0xe2, 0x46, 0x88, 0x79, 0x39, 0x89, + 0x43, 0x38, 0xe3, 0x04, 0xe5, 0x3d, 0x01, 0x41, 0xb4, 0xc2, 0x2c, 0x87, +}; +static const unsigned char kat2774_addinreseed[] = {0}; +static const unsigned char kat2774_addin0[] = {0}; +static const unsigned char kat2774_addin1[] = {0}; +static const unsigned char kat2774_retbits[] = { + 0xd1, 0xac, 0x84, 0x90, 0x3a, 0x9b, 0xbd, 0xcd, 0xca, 0x45, 0xbb, 0x7c, + 0xee, 0x7a, 0x5f, 0x49, 0xe1, 0x4a, 0x68, 0xf0, 0xd8, 0x46, 0x7d, 0xa6, + 0x8a, 0xdc, 0xc2, 0x2c, 0x9d, 0x0b, 0xb0, 0x21, 0x18, 0xb3, 0xbb, 0x7f, + 0x2d, 0x4e, 0x11, 0xc6, 0x98, 0xbc, 0xf4, 0x21, 0xed, 0xca, 0x53, 0x38, + 0xad, 0xb0, 0xa2, 0x9b, 0x29, 0x1f, 0xea, 0x9f, 0x65, 0xa4, 0x80, 0xd4, + 0x51, 0x59, 0xda, 0x95, +}; +static const struct drbg_kat_pr_false kat2774_t = { + 13, kat2774_entropyin, kat2774_nonce, kat2774_persstr, + kat2774_entropyinreseed, kat2774_addinreseed, kat2774_addin0, + kat2774_addin1, kat2774_retbits +}; +static const struct drbg_kat kat2774 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2774_t +}; + +static const unsigned char kat2775_entropyin[] = { + 0xe2, 0x3a, 0x7f, 0x95, 0xc3, 0xcf, 0x3f, 0xdd, 0xdd, 0xec, 0x66, 0xcb, + 0x16, 0xe1, 0xfb, 0xc3, 0x84, 0x95, 0xeb, 0xe9, 0x8b, 0x3e, 0x14, 0xd8, + 0xf3, 0x51, 0xe5, 0x8b, 0xc4, 0x57, 0xcd, 0x38, 0xb7, 0x97, 0x59, 0x84, + 0x99, 0x8c, 0xa9, 0x9e, 0x9c, 0x2d, 0x14, 0xb3, 0x40, 0x68, 0xc3, 0xa4, +}; +static const unsigned char kat2775_nonce[] = {0}; +static const unsigned char kat2775_persstr[] = {0}; +static const unsigned char kat2775_entropyinreseed[] = { + 0x36, 0x41, 0x0a, 0xbe, 0x45, 0x6d, 0x7a, 0x51, 0x94, 0x80, 0x98, 0x89, + 0x7e, 0xc2, 0x05, 0xf7, 0x5f, 0x22, 0xee, 0x09, 0xcf, 0xcc, 0x94, 0xca, + 0x88, 0xfb, 0xaf, 0xf8, 0xd1, 0x59, 0xfc, 0x77, 0x9a, 0x8e, 0x42, 0x0d, + 0x11, 0xfc, 0x1a, 0xc0, 0x95, 0x18, 0x23, 0x7b, 0xfd, 0xb7, 0x44, 0x62, +}; +static const unsigned char kat2775_addinreseed[] = {0}; +static const unsigned char kat2775_addin0[] = {0}; +static const unsigned char kat2775_addin1[] = {0}; +static const unsigned char kat2775_retbits[] = { + 0x3c, 0x14, 0xa6, 0x3a, 0x9c, 0x74, 0xdd, 0x02, 0x05, 0x1c, 0x01, 0x47, + 0x63, 0x74, 0x01, 0x64, 0x9a, 0x68, 0x45, 0x2c, 0x28, 0xaf, 0x90, 0xe9, + 0x62, 0x8f, 0x1a, 0xc8, 0x7d, 0xf1, 0xd2, 0x76, 0x71, 0x39, 0x7b, 0xa3, + 0x4f, 0x49, 0x39, 0x97, 0xef, 0x63, 0x42, 0x84, 0xb7, 0x4b, 0x3b, 0x28, + 0xb2, 0xe7, 0xd4, 0x17, 0x1e, 0xb0, 0x25, 0xe4, 0x70, 0xf3, 0x9d, 0xfd, + 0x12, 0x63, 0x6a, 0x5f, +}; +static const struct drbg_kat_pr_false kat2775_t = { + 14, kat2775_entropyin, kat2775_nonce, kat2775_persstr, + kat2775_entropyinreseed, kat2775_addinreseed, kat2775_addin0, + kat2775_addin1, kat2775_retbits +}; +static const struct drbg_kat kat2775 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2775_t +}; + +static const unsigned char kat2776_entropyin[] = { + 0x69, 0x6c, 0xbd, 0x64, 0xf0, 0x7b, 0x11, 0x21, 0x55, 0xe7, 0xfd, 0xf5, + 0xc6, 0xf4, 0xf3, 0x05, 0xff, 0x0e, 0x82, 0xf9, 0xd9, 0x1c, 0xc0, 0x12, + 0xe2, 0x25, 0xf0, 0x5a, 0xfe, 0x8b, 0xce, 0x31, 0x14, 0x34, 0x76, 0x96, + 0xb6, 0x3c, 0x46, 0xca, 0x03, 0x08, 0xad, 0xec, 0xc0, 0xd6, 0xc9, 0x08, +}; +static const unsigned char kat2776_nonce[] = {0}; +static const unsigned char kat2776_persstr[] = {0}; +static const unsigned char kat2776_entropyinreseed[] = { + 0x23, 0xf7, 0xa5, 0x5a, 0xe9, 0xbd, 0x6d, 0x13, 0xe4, 0x99, 0x9b, 0x1d, + 0xed, 0xf4, 0xc0, 0x88, 0x97, 0xc4, 0x1e, 0x12, 0xa5, 0x19, 0x91, 0xba, + 0x40, 0xa4, 0xf5, 0x3f, 0x19, 0xaf, 0xdf, 0x51, 0x4a, 0x77, 0xa5, 0x80, + 0x8c, 0x65, 0xab, 0xbd, 0xbb, 0x22, 0xcc, 0x70, 0xc2, 0xe4, 0x1b, 0xd9, +}; +static const unsigned char kat2776_addinreseed[] = { + 0xbe, 0xb4, 0x21, 0x3e, 0xfc, 0x8b, 0x9f, 0x23, 0xb7, 0xe2, 0x07, 0x06, + 0x1b, 0xea, 0xc4, 0x0e, 0x00, 0x95, 0xe4, 0xd7, 0x63, 0x6d, 0x97, 0x50, + 0x4b, 0x16, 0xea, 0x97, 0x2e, 0xce, 0xa6, 0xfc, 0x07, 0x41, 0x45, 0xd3, + 0x18, 0x47, 0x44, 0x1a, 0x31, 0x0e, 0xa3, 0xd0, 0x9d, 0x2c, 0x2e, 0x86, +}; +static const unsigned char kat2776_addin0[] = { + 0xaf, 0xe6, 0x82, 0x49, 0x56, 0x3b, 0x6d, 0xc7, 0xab, 0xe5, 0xa1, 0xf6, + 0x91, 0xd9, 0x2f, 0x37, 0x86, 0x78, 0x72, 0x14, 0x78, 0xbd, 0x45, 0x20, + 0x03, 0xa8, 0xf7, 0x2d, 0xb0, 0x26, 0x2e, 0x40, 0xc5, 0x5e, 0x9e, 0x56, + 0x56, 0x1a, 0x50, 0x91, 0x66, 0x75, 0x90, 0x3a, 0x31, 0x10, 0xca, 0x6e, +}; +static const unsigned char kat2776_addin1[] = { + 0x5f, 0x21, 0xd7, 0x84, 0xfa, 0x33, 0x14, 0xbd, 0x38, 0x6f, 0xe0, 0x82, + 0x86, 0xc5, 0xc9, 0x03, 0xc3, 0xf7, 0x70, 0x05, 0x42, 0x5c, 0x63, 0x31, + 0xbf, 0x90, 0x32, 0x33, 0x83, 0x9a, 0xa2, 0x30, 0x6e, 0x34, 0x07, 0x7c, + 0x91, 0xdc, 0x57, 0x83, 0xb8, 0xb9, 0x46, 0x41, 0x0b, 0x17, 0x85, 0xfd, +}; +static const unsigned char kat2776_retbits[] = { + 0x97, 0x5c, 0x38, 0xfb, 0x31, 0x91, 0xd3, 0xe1, 0x5a, 0x80, 0x84, 0x42, + 0xa6, 0xda, 0x6e, 0x27, 0x27, 0xc3, 0x73, 0xaa, 0x64, 0xa9, 0xb1, 0x6f, + 0xa4, 0x69, 0xc2, 0x3c, 0xc4, 0xc2, 0x2f, 0xf8, 0xc1, 0xc3, 0x39, 0x49, + 0xfa, 0x61, 0x88, 0xe3, 0x19, 0xd6, 0xd6, 0x6b, 0x0c, 0x3c, 0xaa, 0xab, + 0x73, 0x95, 0xb3, 0x8c, 0xd5, 0x49, 0x79, 0xaa, 0x18, 0xd5, 0x05, 0x25, + 0x9d, 0x8d, 0x23, 0x52, +}; +static const struct drbg_kat_pr_false kat2776_t = { + 0, kat2776_entropyin, kat2776_nonce, kat2776_persstr, + kat2776_entropyinreseed, kat2776_addinreseed, kat2776_addin0, + kat2776_addin1, kat2776_retbits +}; +static const struct drbg_kat kat2776 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2776_t +}; + +static const unsigned char kat2777_entropyin[] = { + 0xe6, 0xda, 0xfe, 0x8a, 0xd4, 0x62, 0x6d, 0xb2, 0x37, 0x4c, 0x09, 0xe9, + 0x86, 0x3d, 0x4e, 0x68, 0xbc, 0x5a, 0xce, 0x27, 0xa7, 0x8f, 0x1a, 0xdb, + 0x3d, 0xe7, 0x2b, 0xf6, 0x9d, 0x29, 0x16, 0x1f, 0x6f, 0x15, 0x36, 0x37, + 0xee, 0xdb, 0xa3, 0x5c, 0xbf, 0xc6, 0x78, 0xb4, 0xc4, 0x71, 0x54, 0xf7, +}; +static const unsigned char kat2777_nonce[] = {0}; +static const unsigned char kat2777_persstr[] = {0}; +static const unsigned char kat2777_entropyinreseed[] = { + 0x59, 0x70, 0x9d, 0x21, 0x32, 0x5a, 0x5d, 0xe0, 0x9b, 0xe9, 0x08, 0xd3, + 0x30, 0xb7, 0x10, 0x1d, 0x17, 0x46, 0x69, 0x87, 0x17, 0xff, 0xcb, 0x53, + 0xc3, 0x1b, 0x44, 0xc2, 0xbd, 0x5e, 0x5f, 0xd2, 0x74, 0x7a, 0xb3, 0xd1, + 0x31, 0xd9, 0x00, 0x4d, 0x40, 0x28, 0x70, 0xc7, 0x79, 0xa3, 0xe3, 0x07, +}; +static const unsigned char kat2777_addinreseed[] = { + 0x88, 0x2e, 0xa5, 0x8e, 0xb5, 0x03, 0x06, 0xa7, 0xfa, 0x61, 0x48, 0xc4, + 0x15, 0xe4, 0x02, 0x2d, 0x0a, 0x07, 0x78, 0x98, 0x7a, 0x35, 0xdc, 0xf0, + 0xf6, 0x70, 0xcc, 0xa8, 0xab, 0x52, 0x8f, 0xea, 0x2e, 0x97, 0x91, 0xe3, + 0x22, 0x39, 0x73, 0x12, 0xd7, 0xcd, 0xb6, 0xeb, 0xf0, 0x39, 0x0d, 0x7a, +}; +static const unsigned char kat2777_addin0[] = { + 0x18, 0x00, 0xec, 0x46, 0x78, 0xb3, 0x13, 0x20, 0xa5, 0x92, 0xd8, 0xa7, + 0xcf, 0x8f, 0x4e, 0xf4, 0xf7, 0xab, 0xa3, 0xf5, 0x57, 0x16, 0x25, 0x24, + 0xba, 0x69, 0x63, 0xdf, 0xb1, 0x63, 0x2c, 0xae, 0x34, 0xe8, 0xd9, 0xf6, + 0xa1, 0x1e, 0x46, 0x20, 0x4a, 0x3b, 0x91, 0x2a, 0xec, 0x2a, 0x9e, 0x54, +}; +static const unsigned char kat2777_addin1[] = { + 0x0f, 0xea, 0x4f, 0x0f, 0x32, 0x7d, 0xc8, 0x38, 0x4d, 0x51, 0xf3, 0x60, + 0x16, 0x01, 0x27, 0x7e, 0xff, 0x9d, 0xa6, 0xde, 0xdb, 0xa1, 0x77, 0x89, + 0xdc, 0xf6, 0xa0, 0x97, 0x93, 0x51, 0xff, 0xbf, 0x57, 0x64, 0xa6, 0x1e, + 0x5a, 0xd3, 0x4b, 0xcb, 0x12, 0xa2, 0x22, 0x86, 0x44, 0x34, 0x83, 0x57, +}; +static const unsigned char kat2777_retbits[] = { + 0xa4, 0x63, 0xeb, 0x0c, 0xc9, 0xa7, 0xd2, 0x4f, 0x98, 0x6e, 0xab, 0x26, + 0xef, 0x86, 0xa5, 0x42, 0xd8, 0x29, 0x69, 0xf6, 0xac, 0x99, 0x3b, 0x8d, + 0xf0, 0xcb, 0x74, 0xae, 0x18, 0x57, 0xe7, 0x17, 0xb8, 0xbc, 0x36, 0x29, + 0x7f, 0x3f, 0xd4, 0xb5, 0x6d, 0xcc, 0x30, 0x54, 0x83, 0x88, 0x9e, 0xe1, + 0x14, 0x0f, 0x25, 0x43, 0xb7, 0x4f, 0x3b, 0x15, 0x2a, 0xdf, 0x1c, 0xcc, + 0x2b, 0x3f, 0x7d, 0xbf, +}; +static const struct drbg_kat_pr_false kat2777_t = { + 1, kat2777_entropyin, kat2777_nonce, kat2777_persstr, + kat2777_entropyinreseed, kat2777_addinreseed, kat2777_addin0, + kat2777_addin1, kat2777_retbits +}; +static const struct drbg_kat kat2777 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2777_t +}; + +static const unsigned char kat2778_entropyin[] = { + 0x24, 0xa5, 0xf6, 0xf9, 0x36, 0xa1, 0xf4, 0x33, 0xa7, 0x27, 0xff, 0xff, + 0x1d, 0x15, 0xcf, 0x44, 0x0d, 0xd0, 0x78, 0x1d, 0xa3, 0x6c, 0xa7, 0x91, + 0x8f, 0x0e, 0xee, 0x0c, 0x26, 0x99, 0xad, 0x82, 0x04, 0x88, 0xd9, 0x6c, + 0xf2, 0x7a, 0xc0, 0x68, 0x9c, 0x25, 0x8d, 0x37, 0xc7, 0xff, 0x34, 0x3b, +}; +static const unsigned char kat2778_nonce[] = {0}; +static const unsigned char kat2778_persstr[] = {0}; +static const unsigned char kat2778_entropyinreseed[] = { + 0xda, 0x9c, 0xac, 0xae, 0x8a, 0x7c, 0x86, 0xa1, 0xbc, 0x55, 0x98, 0xcd, + 0x1e, 0x7e, 0x08, 0xf2, 0x5c, 0xfd, 0x69, 0xaa, 0x6f, 0x93, 0x1f, 0x7b, + 0x32, 0x07, 0xed, 0x00, 0x42, 0x03, 0xff, 0x7a, 0x6a, 0x67, 0x3d, 0xde, + 0x66, 0x24, 0xfb, 0x3f, 0x79, 0x05, 0x79, 0x75, 0xe0, 0x76, 0x7f, 0x50, +}; +static const unsigned char kat2778_addinreseed[] = { + 0x69, 0x54, 0xe7, 0xa1, 0x70, 0x56, 0xb7, 0xbe, 0x8a, 0xd3, 0xe2, 0xb5, + 0x06, 0x0b, 0x1b, 0xd4, 0x7c, 0x51, 0x81, 0xbf, 0x15, 0xc5, 0x61, 0xa6, + 0x2e, 0x39, 0x17, 0xcc, 0x73, 0x9b, 0xef, 0x24, 0xc4, 0x00, 0x68, 0xa2, + 0x8a, 0xbd, 0xf0, 0xf1, 0x57, 0x70, 0xed, 0x6c, 0x26, 0xf4, 0x0e, 0x40, +}; +static const unsigned char kat2778_addin0[] = { + 0x99, 0x7a, 0x08, 0x35, 0x08, 0x45, 0xe1, 0x0b, 0x25, 0x90, 0x76, 0xad, + 0xc7, 0xb6, 0x0a, 0x94, 0x09, 0x1b, 0x0a, 0xc7, 0x6f, 0x64, 0x3c, 0x43, + 0x2d, 0x9c, 0xfa, 0x70, 0x03, 0x35, 0xed, 0x5a, 0x6e, 0xbc, 0x40, 0x69, + 0xf8, 0x6d, 0xcf, 0xa1, 0xe8, 0xb7, 0x34, 0x8e, 0xb6, 0xa7, 0x73, 0x82, +}; +static const unsigned char kat2778_addin1[] = { + 0x55, 0x22, 0xa7, 0xe0, 0xda, 0x07, 0x95, 0x50, 0x27, 0xd9, 0xb4, 0xf3, + 0x1c, 0x43, 0x49, 0x09, 0x87, 0x9a, 0xd3, 0x63, 0xac, 0x17, 0xa4, 0x6d, + 0xae, 0xb0, 0xa8, 0x1e, 0x6b, 0xa2, 0xe3, 0x82, 0x06, 0x99, 0x94, 0x47, + 0x58, 0xc4, 0x3f, 0xf1, 0x6b, 0xcd, 0x5f, 0x98, 0x58, 0xbe, 0xf9, 0xc9, +}; +static const unsigned char kat2778_retbits[] = { + 0x7f, 0x7d, 0x10, 0xdb, 0xa2, 0x32, 0x4d, 0x25, 0x1c, 0x55, 0x54, 0x71, + 0x71, 0x39, 0xa6, 0x20, 0xf5, 0xeb, 0x78, 0x80, 0x97, 0xc1, 0x4d, 0x92, + 0x93, 0x29, 0xa0, 0xdb, 0xf0, 0x2a, 0x1d, 0x88, 0x57, 0x9c, 0xd0, 0x70, + 0xfa, 0xf7, 0x96, 0xd0, 0xb6, 0x89, 0xc9, 0xea, 0x7c, 0x57, 0x6c, 0xf8, + 0x27, 0x6b, 0x1b, 0x2a, 0xad, 0xf0, 0xe5, 0x60, 0xa7, 0xac, 0xdb, 0x30, + 0x69, 0xec, 0x4b, 0xec, +}; +static const struct drbg_kat_pr_false kat2778_t = { + 2, kat2778_entropyin, kat2778_nonce, kat2778_persstr, + kat2778_entropyinreseed, kat2778_addinreseed, kat2778_addin0, + kat2778_addin1, kat2778_retbits +}; +static const struct drbg_kat kat2778 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2778_t +}; + +static const unsigned char kat2779_entropyin[] = { + 0x9c, 0xef, 0xa1, 0xee, 0x09, 0x0d, 0xfb, 0xfd, 0xa9, 0x33, 0xec, 0xae, + 0xde, 0x9d, 0x86, 0x4b, 0x8d, 0x2f, 0x1e, 0x41, 0x76, 0xaf, 0xd5, 0x44, + 0x6e, 0x6e, 0x3e, 0x07, 0xb8, 0xae, 0xbd, 0xfb, 0xf1, 0xdf, 0xeb, 0x5c, + 0x30, 0xaf, 0xb0, 0x2c, 0x80, 0xf6, 0xd8, 0x44, 0xa0, 0x72, 0x1e, 0x16, +}; +static const unsigned char kat2779_nonce[] = {0}; +static const unsigned char kat2779_persstr[] = {0}; +static const unsigned char kat2779_entropyinreseed[] = { + 0x24, 0xbe, 0x2a, 0x8e, 0x42, 0xf1, 0x70, 0xfd, 0x93, 0xde, 0x15, 0x97, + 0x75, 0x09, 0x86, 0x18, 0xf6, 0x51, 0x1f, 0x05, 0xb6, 0x77, 0xef, 0xd2, + 0x46, 0xdc, 0xe5, 0x8e, 0xee, 0x5e, 0xe9, 0x89, 0x4d, 0x68, 0x1a, 0xbe, + 0x5b, 0x71, 0x8f, 0x2d, 0xef, 0x41, 0xb5, 0x2f, 0xe3, 0x34, 0x73, 0x76, +}; +static const unsigned char kat2779_addinreseed[] = { + 0x5e, 0xc6, 0x67, 0x39, 0xbb, 0x2d, 0x02, 0x90, 0x2c, 0xbe, 0x54, 0xdc, + 0xe7, 0x24, 0x7a, 0xdc, 0xd9, 0xa7, 0x13, 0x9a, 0x23, 0x0c, 0x7a, 0xaf, + 0x3e, 0xbe, 0x83, 0xdf, 0xe4, 0x70, 0x40, 0x84, 0x9f, 0x86, 0x35, 0x0e, + 0xc1, 0xf1, 0x2e, 0xfc, 0xfe, 0x31, 0x33, 0x21, 0x40, 0xb0, 0xfb, 0x49, +}; +static const unsigned char kat2779_addin0[] = { + 0x82, 0xe9, 0x05, 0xcc, 0x9f, 0xc6, 0x1f, 0x33, 0xbd, 0x3b, 0x76, 0xd3, + 0x31, 0x32, 0x69, 0x2b, 0xb1, 0x82, 0xdc, 0xe8, 0xff, 0xda, 0x7b, 0x5f, + 0x9f, 0x13, 0xff, 0xec, 0x9e, 0x9e, 0xb1, 0x70, 0xde, 0x96, 0x7c, 0x4a, + 0x3b, 0xd6, 0x6d, 0xfb, 0xe6, 0x6c, 0x38, 0xfe, 0x2d, 0x63, 0x45, 0x4d, +}; +static const unsigned char kat2779_addin1[] = { + 0xd6, 0x5c, 0x7a, 0xd4, 0x38, 0xb6, 0xb2, 0x7e, 0xdd, 0xc7, 0xb6, 0xb7, + 0x49, 0x7b, 0xe3, 0xf5, 0xf3, 0xe8, 0x88, 0xb0, 0x7c, 0xdd, 0x86, 0xfe, + 0x3d, 0x81, 0xac, 0x0a, 0xa0, 0xa2, 0xd5, 0x31, 0x97, 0xf3, 0xbe, 0xa5, + 0x96, 0x8b, 0x41, 0xad, 0x58, 0x70, 0x1f, 0xc4, 0x35, 0xf3, 0x4c, 0xad, +}; +static const unsigned char kat2779_retbits[] = { + 0xba, 0x66, 0xe1, 0x63, 0xd3, 0x5c, 0xe7, 0xd2, 0xd2, 0x87, 0x8f, 0xbc, + 0x9e, 0x7b, 0x49, 0x32, 0x8e, 0xb7, 0x0a, 0x3b, 0x06, 0xdf, 0xe9, 0xaa, + 0x1e, 0x9d, 0x78, 0x9f, 0xd6, 0x7a, 0xaa, 0x56, 0x3c, 0x46, 0x92, 0xa9, + 0x86, 0x55, 0xb7, 0xae, 0x77, 0x04, 0x2f, 0x46, 0x05, 0xce, 0x99, 0x57, + 0x5d, 0xcd, 0xfa, 0x2c, 0x96, 0xd9, 0x3d, 0x76, 0xef, 0xf4, 0x4c, 0xff, + 0xf7, 0x9f, 0x34, 0xe8, +}; +static const struct drbg_kat_pr_false kat2779_t = { + 3, kat2779_entropyin, kat2779_nonce, kat2779_persstr, + kat2779_entropyinreseed, kat2779_addinreseed, kat2779_addin0, + kat2779_addin1, kat2779_retbits +}; +static const struct drbg_kat kat2779 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2779_t +}; + +static const unsigned char kat2780_entropyin[] = { + 0x53, 0x8d, 0xee, 0xe0, 0xc5, 0x9f, 0xe7, 0x1b, 0x6c, 0x67, 0xea, 0x8b, + 0x0f, 0xf5, 0xfd, 0xc1, 0xf3, 0xc9, 0x4a, 0xbd, 0xb1, 0x23, 0x7d, 0xaf, + 0xd6, 0xe9, 0xc9, 0x86, 0xa4, 0x45, 0x42, 0x9a, 0xa0, 0x98, 0xa6, 0xbc, + 0x55, 0x51, 0x90, 0x25, 0xc3, 0x6f, 0x25, 0x3a, 0xe1, 0xce, 0xdc, 0xce, +}; +static const unsigned char kat2780_nonce[] = {0}; +static const unsigned char kat2780_persstr[] = {0}; +static const unsigned char kat2780_entropyinreseed[] = { + 0x9d, 0x16, 0x39, 0xbb, 0x40, 0xeb, 0xf0, 0x2a, 0x27, 0x0f, 0x49, 0x20, + 0x5a, 0x4f, 0x5d, 0xa3, 0xc1, 0x45, 0x83, 0xb4, 0x5d, 0x70, 0x64, 0xf9, + 0x7f, 0x55, 0x22, 0x82, 0x83, 0x3e, 0x73, 0x38, 0xfd, 0xdc, 0xee, 0x59, + 0xe9, 0x1f, 0xa8, 0x08, 0x9e, 0xa9, 0x5e, 0xb6, 0xda, 0x49, 0x3c, 0x31, +}; +static const unsigned char kat2780_addinreseed[] = { + 0xe7, 0x02, 0xbb, 0x3d, 0x95, 0x9c, 0xc1, 0x68, 0x79, 0x6a, 0x8e, 0x21, + 0x0b, 0x80, 0x5e, 0x00, 0x16, 0x7d, 0x2f, 0x4d, 0x32, 0x82, 0xd4, 0x72, + 0x35, 0xd0, 0x29, 0x59, 0x7f, 0x8a, 0x90, 0x77, 0x2e, 0x90, 0x4e, 0x8a, + 0x58, 0x19, 0x99, 0xdb, 0x0c, 0xe0, 0x10, 0xb3, 0x00, 0x57, 0x90, 0xdd, +}; +static const unsigned char kat2780_addin0[] = { + 0x31, 0x93, 0xb3, 0x78, 0x39, 0x03, 0x51, 0xa8, 0x39, 0x6e, 0xed, 0x93, + 0xbf, 0x1f, 0x41, 0xd7, 0x48, 0xbc, 0x3d, 0xb1, 0x78, 0x44, 0x2d, 0x7e, + 0x76, 0xf4, 0xaa, 0xe0, 0x57, 0x61, 0x28, 0x61, 0xae, 0x27, 0xa3, 0xcf, + 0x71, 0xb2, 0xa1, 0x78, 0x5d, 0x96, 0xd5, 0x9c, 0xe0, 0x2e, 0x1c, 0x6a, +}; +static const unsigned char kat2780_addin1[] = { + 0x23, 0x89, 0x56, 0xe0, 0xd2, 0x06, 0xd4, 0xe9, 0x92, 0xab, 0x9c, 0x45, + 0x87, 0x7d, 0x99, 0x53, 0xc1, 0xe4, 0x8e, 0x76, 0xe0, 0xfb, 0x46, 0xd8, + 0x71, 0x7a, 0x0a, 0x64, 0x12, 0xcc, 0x9e, 0x9c, 0x16, 0x18, 0x94, 0x97, + 0x95, 0x06, 0x69, 0x4c, 0x63, 0xc8, 0xeb, 0x8c, 0x5d, 0x10, 0x67, 0x67, +}; +static const unsigned char kat2780_retbits[] = { + 0x7a, 0x54, 0xf5, 0x0a, 0xf3, 0xa5, 0x92, 0x93, 0x78, 0x1a, 0xe8, 0x43, + 0x8c, 0x6f, 0xb0, 0xff, 0xdd, 0xde, 0x2a, 0x33, 0x00, 0xe6, 0x05, 0x54, + 0x5c, 0xf3, 0x02, 0xd9, 0x7b, 0x81, 0xfc, 0x5e, 0x49, 0x5c, 0xe3, 0x82, + 0x57, 0x2d, 0xc7, 0x6f, 0xc9, 0x87, 0x4c, 0xdf, 0xb3, 0x17, 0x22, 0x82, + 0x2b, 0xff, 0x15, 0xbf, 0xed, 0xcd, 0xce, 0x2f, 0x70, 0xe5, 0xf8, 0x9d, + 0xe5, 0xb4, 0x1c, 0x6c, +}; +static const struct drbg_kat_pr_false kat2780_t = { + 4, kat2780_entropyin, kat2780_nonce, kat2780_persstr, + kat2780_entropyinreseed, kat2780_addinreseed, kat2780_addin0, + kat2780_addin1, kat2780_retbits +}; +static const struct drbg_kat kat2780 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2780_t +}; + +static const unsigned char kat2781_entropyin[] = { + 0xc0, 0x87, 0xc7, 0x16, 0x56, 0x76, 0x83, 0xbc, 0x38, 0x80, 0xbe, 0x56, + 0xe3, 0x22, 0xbe, 0x85, 0xf6, 0xdf, 0xc2, 0x36, 0xd3, 0x4c, 0xc6, 0x27, + 0xf7, 0xe3, 0xcb, 0xc0, 0xf1, 0xee, 0x1f, 0x0b, 0xbd, 0x2a, 0xa7, 0x5b, + 0xab, 0x3f, 0x4a, 0x96, 0xd8, 0x5c, 0xd3, 0xd5, 0x97, 0xc4, 0xd2, 0x0b, +}; +static const unsigned char kat2781_nonce[] = {0}; +static const unsigned char kat2781_persstr[] = {0}; +static const unsigned char kat2781_entropyinreseed[] = { + 0x46, 0x31, 0xd8, 0x7a, 0x5e, 0x5e, 0x86, 0x28, 0xfd, 0xfa, 0x55, 0xcf, + 0xfc, 0xb5, 0x86, 0x67, 0xef, 0x4c, 0xf8, 0xe4, 0xb1, 0xf5, 0xea, 0xf0, + 0xd5, 0xfd, 0xb7, 0xe2, 0xbf, 0xfc, 0xc8, 0x05, 0xb7, 0x4a, 0xa3, 0xc0, + 0xf1, 0xec, 0x95, 0xfd, 0x1a, 0xc0, 0xa0, 0xbe, 0x1c, 0x1f, 0x86, 0x69, +}; +static const unsigned char kat2781_addinreseed[] = { + 0x6b, 0xe5, 0x8d, 0x52, 0x97, 0xf9, 0xc1, 0x87, 0xca, 0x97, 0xab, 0x5b, + 0x66, 0x2a, 0x29, 0x5f, 0xce, 0x4c, 0x27, 0x9b, 0xd6, 0x6f, 0x73, 0x7c, + 0x70, 0xb7, 0x60, 0xda, 0xd0, 0xdb, 0x4c, 0xd5, 0x9c, 0x27, 0x7a, 0xba, + 0x7f, 0xde, 0xd7, 0x80, 0xed, 0x87, 0x8a, 0x87, 0x1f, 0xb8, 0x65, 0x0e, +}; +static const unsigned char kat2781_addin0[] = { + 0x65, 0x43, 0x69, 0xdc, 0xce, 0x04, 0x96, 0x48, 0x42, 0x55, 0x67, 0x27, + 0x9b, 0xf0, 0x80, 0x79, 0xa9, 0xa5, 0x5b, 0x17, 0x2b, 0x60, 0x95, 0x07, + 0x79, 0x9a, 0xee, 0x7d, 0x85, 0x99, 0x70, 0x75, 0x29, 0x2f, 0x8e, 0x98, + 0x8e, 0xd0, 0xca, 0x59, 0x65, 0x98, 0x82, 0x04, 0x95, 0x34, 0x63, 0x57, +}; +static const unsigned char kat2781_addin1[] = { + 0x76, 0x1d, 0x17, 0xaa, 0x9e, 0xec, 0xfd, 0xf8, 0x73, 0xf0, 0x7f, 0xc2, + 0x16, 0xca, 0x0f, 0x78, 0x5f, 0x33, 0x4e, 0x4f, 0xdb, 0x87, 0x4f, 0xfe, + 0xa8, 0x7d, 0x60, 0x09, 0xef, 0x47, 0xe2, 0x33, 0xcd, 0xcf, 0x46, 0xd3, + 0xba, 0xf6, 0xec, 0x64, 0x56, 0x93, 0xf2, 0xc9, 0xcc, 0x4b, 0x6d, 0x2f, +}; +static const unsigned char kat2781_retbits[] = { + 0xe2, 0x5a, 0x8b, 0x59, 0x18, 0xec, 0x0d, 0xb4, 0xdb, 0xf7, 0x21, 0x7a, + 0xbb, 0xd2, 0x26, 0x94, 0x64, 0x1a, 0x96, 0x96, 0xa0, 0x58, 0x5a, 0xcb, + 0x11, 0x77, 0x91, 0xea, 0x04, 0xe0, 0xae, 0xdf, 0xaa, 0x78, 0xa2, 0x4b, + 0x08, 0x6b, 0x2f, 0x7f, 0xcb, 0xce, 0xa2, 0xe4, 0xe7, 0xd8, 0xd1, 0xab, + 0x06, 0xa4, 0xa4, 0x83, 0x00, 0x8e, 0x19, 0xde, 0x51, 0xaa, 0x1e, 0xc0, + 0x07, 0xbf, 0x49, 0x57, +}; +static const struct drbg_kat_pr_false kat2781_t = { + 5, kat2781_entropyin, kat2781_nonce, kat2781_persstr, + kat2781_entropyinreseed, kat2781_addinreseed, kat2781_addin0, + kat2781_addin1, kat2781_retbits +}; +static const struct drbg_kat kat2781 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2781_t +}; + +static const unsigned char kat2782_entropyin[] = { + 0x23, 0x9f, 0x0a, 0x58, 0x3c, 0x5e, 0xa0, 0x2c, 0xd5, 0xed, 0xb9, 0x57, + 0x1a, 0x81, 0xdd, 0x47, 0xbf, 0x50, 0xe6, 0x14, 0x61, 0x54, 0x64, 0x52, + 0x2c, 0x1e, 0x6a, 0x05, 0x33, 0x61, 0xe7, 0x82, 0xb5, 0x48, 0xdb, 0x78, + 0xaa, 0x5b, 0x70, 0x64, 0xdd, 0xe3, 0xc1, 0x3f, 0xc4, 0x0f, 0x60, 0x99, +}; +static const unsigned char kat2782_nonce[] = {0}; +static const unsigned char kat2782_persstr[] = {0}; +static const unsigned char kat2782_entropyinreseed[] = { + 0xa8, 0xb9, 0xf9, 0x94, 0xe2, 0x07, 0x45, 0x1b, 0x84, 0x21, 0xff, 0x55, + 0x59, 0xf7, 0x5a, 0x4a, 0x4f, 0xc2, 0x27, 0xbc, 0x86, 0x5b, 0x67, 0xfa, + 0xf1, 0xa0, 0x5f, 0x2e, 0x87, 0xdd, 0x5e, 0x05, 0x9b, 0x76, 0xd6, 0x7a, + 0x14, 0xf6, 0x84, 0x51, 0x14, 0x3f, 0x3b, 0x6e, 0x1d, 0xd7, 0xa4, 0xa4, +}; +static const unsigned char kat2782_addinreseed[] = { + 0xec, 0xc9, 0x55, 0x99, 0x6b, 0x08, 0xc3, 0xa2, 0x7d, 0x1d, 0xd7, 0x7c, + 0x6a, 0xd2, 0x76, 0x2a, 0x00, 0x33, 0xac, 0x1d, 0x59, 0x86, 0xd5, 0x90, + 0xcc, 0x08, 0x70, 0x54, 0xe6, 0xad, 0x3b, 0xc6, 0x88, 0x41, 0xf3, 0x34, + 0xd3, 0xd2, 0x05, 0x1c, 0x40, 0x6c, 0x5c, 0x76, 0x87, 0xa3, 0x2b, 0xc1, +}; +static const unsigned char kat2782_addin0[] = { + 0xad, 0x20, 0x55, 0xd4, 0x30, 0x42, 0x36, 0x81, 0x85, 0x20, 0xe1, 0xa9, + 0xd0, 0x86, 0xb3, 0x41, 0x76, 0x8b, 0xd9, 0xbe, 0xdc, 0x35, 0xd3, 0xb8, + 0x16, 0x57, 0x6e, 0xfd, 0xbd, 0x13, 0xaa, 0x2d, 0x5f, 0x3c, 0x34, 0xd5, + 0xbd, 0xad, 0x99, 0x34, 0x4e, 0xed, 0xf0, 0x48, 0x14, 0x93, 0xf5, 0x28, +}; +static const unsigned char kat2782_addin1[] = { + 0x2a, 0xd6, 0x95, 0x0c, 0xc9, 0x33, 0x5b, 0x6c, 0xc3, 0x7e, 0x4f, 0xee, + 0x05, 0xa3, 0xdc, 0x6c, 0xcf, 0x8c, 0x72, 0xa7, 0xe6, 0xfe, 0xf9, 0xe9, + 0xbc, 0x7e, 0x5a, 0x24, 0xab, 0x82, 0x4e, 0x70, 0x72, 0xed, 0x8f, 0x0a, + 0x75, 0x13, 0xc5, 0x1c, 0x2c, 0xa3, 0x8d, 0x56, 0x26, 0x75, 0xe3, 0xfd, +}; +static const unsigned char kat2782_retbits[] = { + 0x26, 0xc5, 0x55, 0xad, 0xbe, 0x8f, 0x15, 0x6f, 0x5c, 0x9e, 0xde, 0xd8, + 0x39, 0x7a, 0xa3, 0xee, 0xae, 0x2b, 0x43, 0xe3, 0x03, 0xff, 0x5f, 0x92, + 0x26, 0xf4, 0xf5, 0x91, 0x80, 0xcb, 0x4d, 0x56, 0x2b, 0xa2, 0xed, 0x48, + 0x27, 0xfc, 0x2b, 0xd9, 0x4d, 0xf6, 0xf5, 0xc6, 0x89, 0x28, 0x0f, 0x4c, + 0x7f, 0x3c, 0xd6, 0xf3, 0x6e, 0x40, 0x6e, 0xed, 0xdc, 0x38, 0x6d, 0xb6, + 0xc4, 0x74, 0xd9, 0xb9, +}; +static const struct drbg_kat_pr_false kat2782_t = { + 6, kat2782_entropyin, kat2782_nonce, kat2782_persstr, + kat2782_entropyinreseed, kat2782_addinreseed, kat2782_addin0, + kat2782_addin1, kat2782_retbits +}; +static const struct drbg_kat kat2782 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2782_t +}; + +static const unsigned char kat2783_entropyin[] = { + 0xba, 0xe4, 0xb7, 0x6b, 0xa2, 0x69, 0x1f, 0x2b, 0x94, 0x74, 0x89, 0xb4, + 0x63, 0xad, 0x9d, 0x95, 0x4e, 0x38, 0xdc, 0x48, 0xc9, 0x4b, 0x8a, 0xd1, + 0x17, 0xfb, 0x0c, 0x10, 0xe1, 0xa9, 0x14, 0x1b, 0x54, 0xbb, 0x49, 0x27, + 0x5e, 0x3b, 0xe6, 0xc8, 0x9c, 0x6c, 0xad, 0xe6, 0xc4, 0x4a, 0x17, 0x9b, +}; +static const unsigned char kat2783_nonce[] = {0}; +static const unsigned char kat2783_persstr[] = {0}; +static const unsigned char kat2783_entropyinreseed[] = { + 0x09, 0xb4, 0x28, 0x0c, 0x60, 0xa3, 0xc1, 0x11, 0x6f, 0xe9, 0x26, 0x23, + 0xb5, 0xec, 0xd5, 0x9b, 0x2b, 0xf1, 0x48, 0xa2, 0x98, 0xb0, 0xda, 0xad, + 0x7c, 0x85, 0x44, 0x0d, 0xf9, 0x4c, 0x20, 0xed, 0xa1, 0x26, 0xbd, 0x52, + 0x36, 0x30, 0x06, 0xcc, 0xee, 0x2e, 0xa2, 0x2e, 0xa3, 0xe3, 0x69, 0x1a, +}; +static const unsigned char kat2783_addinreseed[] = { + 0xa8, 0xfd, 0x5f, 0x95, 0xe6, 0x4d, 0xd4, 0x81, 0x1b, 0x97, 0x12, 0x3d, + 0x17, 0x08, 0xe9, 0x45, 0x0a, 0x76, 0x6c, 0xad, 0x88, 0xc3, 0x9e, 0xe0, + 0x63, 0xcf, 0xce, 0x64, 0xba, 0xb2, 0xa1, 0x7e, 0xee, 0xa6, 0x64, 0x0a, + 0xbd, 0x70, 0x1a, 0x34, 0x5a, 0x58, 0x85, 0x87, 0x04, 0x7d, 0xb9, 0xd1, +}; +static const unsigned char kat2783_addin0[] = { + 0x9b, 0xd0, 0xc9, 0x29, 0x01, 0x4b, 0x8f, 0x03, 0x6e, 0x2b, 0xde, 0x99, + 0x35, 0xd6, 0xf8, 0xf9, 0x3c, 0xe6, 0xc5, 0x11, 0x40, 0x0e, 0x72, 0xa5, + 0xe2, 0x0c, 0x21, 0xee, 0xe7, 0xea, 0xcd, 0x6b, 0x8f, 0x22, 0xbb, 0x1c, + 0x12, 0xf5, 0x39, 0x2b, 0x47, 0x55, 0x03, 0xb0, 0x3b, 0xd0, 0xbc, 0x30, +}; +static const unsigned char kat2783_addin1[] = { + 0xc5, 0x6f, 0x4b, 0x4b, 0x85, 0x85, 0x4d, 0x4e, 0xc3, 0xa1, 0x0f, 0x3f, + 0xf3, 0xe9, 0x00, 0x8f, 0x5b, 0xcd, 0x6d, 0x81, 0xf8, 0xd7, 0x93, 0x57, + 0xe6, 0x5f, 0x4c, 0x7e, 0xf1, 0xec, 0xe3, 0xdd, 0x76, 0x22, 0xcb, 0x4b, + 0xf6, 0x76, 0x1f, 0x18, 0x88, 0x8c, 0xd7, 0x9f, 0x1f, 0x8b, 0x7a, 0xff, +}; +static const unsigned char kat2783_retbits[] = { + 0x29, 0x57, 0x9a, 0x8f, 0xe7, 0x54, 0xee, 0xaa, 0xfc, 0x6b, 0x62, 0x0a, + 0x2e, 0x50, 0xce, 0xb1, 0x83, 0x92, 0xd7, 0x57, 0xf2, 0x0b, 0xcc, 0x67, + 0x9a, 0xd0, 0xad, 0x61, 0x44, 0x1d, 0x54, 0x48, 0xeb, 0x15, 0xb3, 0xac, + 0xfc, 0x97, 0x2f, 0x99, 0xb5, 0xd0, 0xf8, 0x56, 0x09, 0x1c, 0x52, 0x17, + 0x4c, 0x5d, 0x6b, 0x2f, 0x39, 0x06, 0x25, 0x3d, 0x9f, 0x1a, 0x68, 0x65, + 0xaa, 0x06, 0xc8, 0xae, +}; +static const struct drbg_kat_pr_false kat2783_t = { + 7, kat2783_entropyin, kat2783_nonce, kat2783_persstr, + kat2783_entropyinreseed, kat2783_addinreseed, kat2783_addin0, + kat2783_addin1, kat2783_retbits +}; +static const struct drbg_kat kat2783 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2783_t +}; + +static const unsigned char kat2784_entropyin[] = { + 0x99, 0xeb, 0x1b, 0x06, 0xdd, 0x87, 0x7c, 0x31, 0x32, 0xf4, 0xf2, 0xa7, + 0x8d, 0xbd, 0x0c, 0xbd, 0x74, 0xf3, 0x65, 0x3a, 0xf0, 0xcd, 0x9e, 0x45, + 0xcb, 0xd2, 0x3c, 0x2f, 0x8b, 0x43, 0x1a, 0x68, 0xd9, 0x5b, 0x36, 0x59, + 0x77, 0x22, 0x5c, 0x35, 0x1b, 0x3b, 0xc1, 0xe9, 0x3d, 0xa8, 0xe7, 0x26, +}; +static const unsigned char kat2784_nonce[] = {0}; +static const unsigned char kat2784_persstr[] = {0}; +static const unsigned char kat2784_entropyinreseed[] = { + 0xfa, 0x48, 0xfe, 0x93, 0x35, 0x27, 0xd7, 0x63, 0xca, 0xe6, 0x60, 0x5d, + 0x04, 0xcb, 0xa0, 0x2b, 0x5b, 0x4b, 0x0c, 0xe8, 0x51, 0x22, 0x01, 0x1a, + 0x28, 0x78, 0x9b, 0xee, 0x1f, 0x10, 0x50, 0x70, 0x44, 0xa0, 0x21, 0xcc, + 0xd9, 0x24, 0x60, 0x28, 0x4f, 0xbf, 0x14, 0x48, 0x6c, 0x33, 0x97, 0xc3, +}; +static const unsigned char kat2784_addinreseed[] = { + 0xd9, 0x6d, 0x04, 0x3c, 0x93, 0x22, 0x9d, 0xcf, 0x3a, 0x93, 0x9e, 0xe2, + 0x48, 0x4b, 0xa9, 0xf9, 0xcd, 0xaa, 0x3c, 0x84, 0x88, 0xdf, 0xc1, 0xd3, + 0x71, 0x37, 0x53, 0x20, 0xbe, 0x95, 0x1c, 0xc3, 0x33, 0x6d, 0xa4, 0x8e, + 0xa2, 0xf5, 0xb2, 0xc0, 0x8f, 0x66, 0x64, 0x57, 0x91, 0x60, 0xbc, 0x01, +}; +static const unsigned char kat2784_addin0[] = { + 0x68, 0xdc, 0x3b, 0x3c, 0xee, 0xa6, 0xf4, 0x70, 0x3f, 0x80, 0x03, 0x04, + 0x81, 0xaa, 0x81, 0xb9, 0xeb, 0xe8, 0xfa, 0x5d, 0x00, 0x37, 0x34, 0x71, + 0x9a, 0x04, 0x2d, 0x75, 0x5c, 0x14, 0x55, 0x4a, 0xf6, 0xde, 0x54, 0x7e, + 0x6b, 0xeb, 0x3d, 0x9e, 0x8a, 0x6e, 0x67, 0x5e, 0xd1, 0x51, 0x81, 0xa6, +}; +static const unsigned char kat2784_addin1[] = { + 0x95, 0x78, 0x3a, 0xce, 0x4b, 0x7e, 0xa4, 0x50, 0xe0, 0x42, 0xd6, 0x5b, + 0x7a, 0x4d, 0xf3, 0xfa, 0x50, 0x58, 0xd5, 0xc9, 0xc2, 0xeb, 0x94, 0xff, + 0xf8, 0x8f, 0xb3, 0x0c, 0xb1, 0xb9, 0x13, 0x2b, 0xcd, 0x07, 0xab, 0xca, + 0x64, 0x26, 0xaa, 0xc4, 0x80, 0x47, 0xe7, 0x2b, 0xaa, 0xeb, 0x2b, 0x77, +}; +static const unsigned char kat2784_retbits[] = { + 0xe4, 0x7c, 0x11, 0xf7, 0xbc, 0x38, 0x7b, 0xe3, 0xfe, 0x4b, 0x70, 0xec, + 0x35, 0x48, 0x70, 0xa1, 0xd7, 0x35, 0xc4, 0x56, 0x37, 0xba, 0xa1, 0x3d, + 0x27, 0x40, 0xfb, 0x4b, 0x26, 0x5e, 0x48, 0x5a, 0x6b, 0x5b, 0x2d, 0xeb, + 0xad, 0x2e, 0x35, 0xfb, 0x5c, 0xe8, 0x77, 0xb7, 0xc6, 0x08, 0xa7, 0xaf, + 0x0e, 0x76, 0x2a, 0x7d, 0xfe, 0x95, 0xee, 0x74, 0xdb, 0xb3, 0xeb, 0x67, + 0xb0, 0x1f, 0xa1, 0x25, +}; +static const struct drbg_kat_pr_false kat2784_t = { + 8, kat2784_entropyin, kat2784_nonce, kat2784_persstr, + kat2784_entropyinreseed, kat2784_addinreseed, kat2784_addin0, + kat2784_addin1, kat2784_retbits +}; +static const struct drbg_kat kat2784 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2784_t +}; + +static const unsigned char kat2785_entropyin[] = { + 0x3a, 0x31, 0x91, 0x50, 0xf3, 0xa6, 0x68, 0x31, 0x79, 0x06, 0x54, 0x96, + 0x1a, 0x61, 0x7e, 0xaa, 0xb9, 0xe5, 0x20, 0xaa, 0x43, 0x21, 0x4e, 0x2f, + 0xb7, 0x80, 0x79, 0x93, 0xc9, 0x05, 0x7e, 0x9f, 0x89, 0xa1, 0xa9, 0x4b, + 0x95, 0x40, 0xc8, 0x49, 0x75, 0x98, 0x89, 0xd8, 0x53, 0xae, 0x99, 0x15, +}; +static const unsigned char kat2785_nonce[] = {0}; +static const unsigned char kat2785_persstr[] = {0}; +static const unsigned char kat2785_entropyinreseed[] = { + 0x92, 0x68, 0x44, 0x48, 0x8d, 0x83, 0x42, 0x09, 0xed, 0x83, 0x36, 0xf6, + 0x70, 0x27, 0x42, 0x4b, 0xd3, 0x85, 0x81, 0xc0, 0x74, 0x03, 0x54, 0x2e, + 0x70, 0x04, 0x99, 0x80, 0xf0, 0x81, 0xef, 0x05, 0x5f, 0x95, 0xa2, 0x0f, + 0x5a, 0x96, 0x88, 0xa2, 0xfa, 0x00, 0xb2, 0x13, 0xf4, 0x1f, 0xed, 0x1e, +}; +static const unsigned char kat2785_addinreseed[] = { + 0x37, 0xa7, 0x30, 0xe1, 0xd3, 0xe6, 0xc0, 0xeb, 0xba, 0x1c, 0xea, 0x9d, + 0xdd, 0xac, 0xd3, 0x08, 0xd9, 0x5c, 0xee, 0x60, 0x45, 0xcf, 0x4b, 0xbc, + 0x8f, 0x82, 0x20, 0x13, 0x94, 0x2d, 0x22, 0xfb, 0xfc, 0x8f, 0xb0, 0x2b, + 0xfa, 0x90, 0xdc, 0xd0, 0xf6, 0x59, 0xa0, 0x0c, 0xac, 0x1f, 0x33, 0x67, +}; +static const unsigned char kat2785_addin0[] = { + 0x11, 0xf3, 0x3a, 0x6b, 0x9d, 0x0e, 0x37, 0xfe, 0xfa, 0xc0, 0x4c, 0x43, + 0xf5, 0xfe, 0x1e, 0x05, 0x3d, 0xbb, 0xf3, 0xdd, 0xc6, 0x57, 0xfb, 0xe1, + 0xf4, 0xcf, 0x95, 0xf2, 0x8c, 0x62, 0xb1, 0x0f, 0x41, 0x88, 0x8a, 0x53, + 0x0b, 0x08, 0x3c, 0xbf, 0x3c, 0xa7, 0x83, 0xc8, 0x64, 0xee, 0x76, 0xc7, +}; +static const unsigned char kat2785_addin1[] = { + 0xef, 0x83, 0x70, 0xee, 0xd1, 0xe2, 0x6d, 0x66, 0x8f, 0x8e, 0x13, 0x6e, + 0xc1, 0x15, 0x9b, 0x11, 0xbb, 0xbf, 0xd7, 0x71, 0xbc, 0x5b, 0xb7, 0x6a, + 0x37, 0xbe, 0xaf, 0xae, 0xe8, 0x7a, 0x07, 0x71, 0x40, 0xd8, 0xa4, 0xe4, + 0x0c, 0xc6, 0x21, 0x3e, 0x0e, 0xad, 0x81, 0xb5, 0x14, 0x71, 0xe6, 0x0c, +}; +static const unsigned char kat2785_retbits[] = { + 0x45, 0x54, 0x99, 0xd1, 0x61, 0xa9, 0xe2, 0x6c, 0x8b, 0xb1, 0xb7, 0x0d, + 0xe5, 0x47, 0x58, 0xd0, 0x6a, 0x41, 0x64, 0x78, 0x58, 0xa0, 0xa6, 0x8f, + 0x3d, 0x06, 0x4d, 0xe6, 0x23, 0xd7, 0x0c, 0x4f, 0xf7, 0xc9, 0x2a, 0x5d, + 0xde, 0x29, 0x38, 0xa9, 0x76, 0x83, 0x45, 0xfe, 0xc9, 0x6b, 0x43, 0x39, + 0xb3, 0xfa, 0xff, 0x29, 0x28, 0xe2, 0x00, 0xf8, 0x89, 0xf8, 0x38, 0x57, + 0x6f, 0xe9, 0xe7, 0x95, +}; +static const struct drbg_kat_pr_false kat2785_t = { + 9, kat2785_entropyin, kat2785_nonce, kat2785_persstr, + kat2785_entropyinreseed, kat2785_addinreseed, kat2785_addin0, + kat2785_addin1, kat2785_retbits +}; +static const struct drbg_kat kat2785 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2785_t +}; + +static const unsigned char kat2786_entropyin[] = { + 0xe1, 0xa7, 0x8f, 0x06, 0x25, 0x15, 0x8b, 0xe3, 0x0c, 0xfb, 0xc2, 0x7c, + 0xe1, 0x59, 0x8f, 0x1e, 0xe8, 0xdf, 0xfd, 0x8e, 0x97, 0x47, 0xe9, 0xfd, + 0x05, 0x20, 0xa3, 0x72, 0xb0, 0xe3, 0x61, 0x06, 0xb7, 0x8f, 0x22, 0x10, + 0x85, 0xf6, 0xb6, 0x9d, 0x19, 0x14, 0x8a, 0xdc, 0xdd, 0x6b, 0xbc, 0xd0, +}; +static const unsigned char kat2786_nonce[] = {0}; +static const unsigned char kat2786_persstr[] = {0}; +static const unsigned char kat2786_entropyinreseed[] = { + 0x0c, 0xff, 0xe9, 0xc0, 0xc0, 0x62, 0xf2, 0x4e, 0x8e, 0x67, 0x96, 0x58, + 0x95, 0x96, 0x0c, 0xd6, 0xd0, 0x9d, 0x35, 0x34, 0x2d, 0xf5, 0x19, 0x9b, + 0xf8, 0x45, 0xac, 0x06, 0x47, 0x95, 0x45, 0xf6, 0x3a, 0xd6, 0x2c, 0xea, + 0xe2, 0x7a, 0xd7, 0x33, 0x79, 0xcc, 0x15, 0xd1, 0x00, 0xd6, 0xc8, 0x87, +}; +static const unsigned char kat2786_addinreseed[] = { + 0x2b, 0x82, 0xe6, 0x87, 0xab, 0x86, 0x69, 0x0a, 0x56, 0xe3, 0xae, 0x92, + 0xcf, 0x87, 0xaf, 0xf5, 0x18, 0xc2, 0x7e, 0x7b, 0x8c, 0xc2, 0x4e, 0x77, + 0xb5, 0x7e, 0xd4, 0x0b, 0xc4, 0x32, 0x25, 0x9c, 0x0b, 0x5f, 0x0a, 0x79, + 0x50, 0xb0, 0x28, 0xf6, 0x98, 0xad, 0x73, 0x84, 0xbe, 0x2e, 0x12, 0x29, +}; +static const unsigned char kat2786_addin0[] = { + 0x46, 0x4b, 0x2b, 0xa2, 0x82, 0x3f, 0x1f, 0xef, 0x3e, 0xe8, 0xa6, 0x95, + 0x8a, 0xe1, 0xfd, 0x15, 0x89, 0xe5, 0x5d, 0x60, 0x89, 0x1e, 0x7b, 0xe6, + 0xc3, 0x6c, 0x66, 0xd2, 0x6c, 0x09, 0x0b, 0xf3, 0xd4, 0xec, 0x68, 0xf9, + 0x14, 0x85, 0xeb, 0x4c, 0x9b, 0x86, 0x89, 0x4f, 0x1d, 0xfe, 0xd9, 0x62, +}; +static const unsigned char kat2786_addin1[] = { + 0xc9, 0x03, 0x9d, 0x29, 0x51, 0x76, 0x29, 0x42, 0x7d, 0xa7, 0x89, 0x38, + 0x83, 0x5f, 0x63, 0xb3, 0x70, 0xcd, 0x35, 0x02, 0xfa, 0x4f, 0x72, 0x51, + 0xe9, 0xca, 0x38, 0xd0, 0xaf, 0x24, 0x62, 0x85, 0xc4, 0xab, 0xd5, 0xe3, + 0xae, 0x18, 0xa3, 0xe7, 0x7e, 0xfe, 0x44, 0x64, 0x75, 0xb7, 0x5e, 0x0b, +}; +static const unsigned char kat2786_retbits[] = { + 0xae, 0x71, 0x0c, 0x09, 0xcb, 0x0f, 0x56, 0x77, 0x51, 0xff, 0x11, 0xe6, + 0x52, 0x06, 0x03, 0xbe, 0xbc, 0x1f, 0xfb, 0x6c, 0x0a, 0x1f, 0x85, 0x15, + 0xf2, 0xbb, 0xee, 0x1a, 0xa9, 0xe1, 0xcc, 0x7f, 0x74, 0x67, 0x25, 0x61, + 0x51, 0xe1, 0xd8, 0x9a, 0x30, 0x5e, 0x0f, 0xd5, 0x82, 0xf2, 0xdf, 0x09, + 0x94, 0x71, 0x0d, 0xf1, 0x34, 0x1e, 0xee, 0x98, 0x7b, 0xfb, 0xeb, 0xa1, + 0x9e, 0xfc, 0xb0, 0xfc, +}; +static const struct drbg_kat_pr_false kat2786_t = { + 10, kat2786_entropyin, kat2786_nonce, kat2786_persstr, + kat2786_entropyinreseed, kat2786_addinreseed, kat2786_addin0, + kat2786_addin1, kat2786_retbits +}; +static const struct drbg_kat kat2786 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2786_t +}; + +static const unsigned char kat2787_entropyin[] = { + 0x6e, 0xe4, 0x1a, 0xc5, 0x96, 0xed, 0x7b, 0x33, 0x73, 0xb5, 0x41, 0x14, + 0x99, 0x10, 0xea, 0x49, 0xa4, 0xd3, 0xa9, 0x6c, 0xac, 0x50, 0x8e, 0xcb, + 0xff, 0xf7, 0x46, 0x8e, 0x60, 0x1d, 0x15, 0xdc, 0x52, 0x4c, 0xd1, 0xd7, + 0x36, 0xc7, 0xfa, 0x67, 0xe6, 0xcd, 0x8b, 0xf6, 0x73, 0xc4, 0xac, 0xc4, +}; +static const unsigned char kat2787_nonce[] = {0}; +static const unsigned char kat2787_persstr[] = {0}; +static const unsigned char kat2787_entropyinreseed[] = { + 0xf5, 0x10, 0x6b, 0x8e, 0x7e, 0xae, 0x15, 0x72, 0x9f, 0xe7, 0x9d, 0xbc, + 0xdf, 0xc7, 0xc9, 0xa7, 0x0b, 0xd5, 0x01, 0x93, 0xe5, 0xeb, 0x96, 0x23, + 0x4d, 0x91, 0xe5, 0xef, 0xf4, 0xd3, 0x39, 0x08, 0x3f, 0x1e, 0x6a, 0x29, + 0xda, 0x9f, 0x8e, 0x49, 0x7c, 0xf2, 0x2b, 0x8b, 0xd6, 0x6c, 0xe6, 0x08, +}; +static const unsigned char kat2787_addinreseed[] = { + 0x22, 0xb8, 0xe2, 0xd1, 0xf6, 0x5b, 0x7b, 0xf2, 0xee, 0xce, 0xc1, 0xe9, + 0x28, 0x69, 0x49, 0xa2, 0x6e, 0x51, 0xff, 0x12, 0xbb, 0x5a, 0x40, 0x86, + 0xe0, 0x21, 0x8f, 0x41, 0x42, 0x7e, 0xf3, 0x60, 0x9c, 0x47, 0x9f, 0x2f, + 0x20, 0x71, 0x7d, 0x01, 0x0b, 0x43, 0x1a, 0xdb, 0x53, 0xe1, 0xc6, 0x03, +}; +static const unsigned char kat2787_addin0[] = { + 0xaf, 0x62, 0x07, 0x1a, 0x46, 0x9f, 0xc9, 0x14, 0x12, 0x5b, 0xdf, 0x01, + 0x31, 0xed, 0x54, 0x8d, 0xd1, 0x83, 0x74, 0x5d, 0xeb, 0x5e, 0x78, 0xba, + 0x70, 0xf5, 0x47, 0x5c, 0x3c, 0x63, 0xd2, 0x42, 0x16, 0xa0, 0x31, 0xb8, + 0x3d, 0x53, 0xeb, 0x2d, 0x62, 0xc9, 0x47, 0xfa, 0xb1, 0xd5, 0x19, 0xdc, +}; +static const unsigned char kat2787_addin1[] = { + 0x8c, 0x5d, 0xb2, 0x58, 0xad, 0xb3, 0x4e, 0xeb, 0xf8, 0xd2, 0x1a, 0xf1, + 0xaa, 0x63, 0x08, 0x16, 0x51, 0xb3, 0xb4, 0xf7, 0x6c, 0x07, 0x9b, 0x07, + 0x5c, 0xc5, 0x6d, 0x78, 0x55, 0x05, 0xd4, 0xc6, 0xbb, 0x2b, 0x75, 0x64, + 0x60, 0x30, 0x90, 0x2c, 0x88, 0x08, 0x52, 0x14, 0xe5, 0xaf, 0x2e, 0x65, +}; +static const unsigned char kat2787_retbits[] = { + 0x21, 0xdd, 0xfa, 0x80, 0x77, 0xfe, 0xfa, 0x53, 0x54, 0x53, 0xb7, 0xaa, + 0xfe, 0xb7, 0x3c, 0xa1, 0xad, 0xf3, 0x40, 0x91, 0x3a, 0xfa, 0xd5, 0x05, + 0x12, 0xb8, 0x15, 0x68, 0x86, 0x3f, 0xac, 0x63, 0x33, 0xfb, 0x77, 0x7a, + 0x21, 0x18, 0x09, 0x76, 0xa6, 0x9c, 0x42, 0xc3, 0x89, 0x70, 0x9c, 0x0a, + 0x98, 0xdb, 0xee, 0xa3, 0x3b, 0x74, 0xdd, 0x22, 0x59, 0x3b, 0xde, 0xc1, + 0xcb, 0xa8, 0x69, 0x6a, +}; +static const struct drbg_kat_pr_false kat2787_t = { + 11, kat2787_entropyin, kat2787_nonce, kat2787_persstr, + kat2787_entropyinreseed, kat2787_addinreseed, kat2787_addin0, + kat2787_addin1, kat2787_retbits +}; +static const struct drbg_kat kat2787 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2787_t +}; + +static const unsigned char kat2788_entropyin[] = { + 0x2e, 0xb1, 0xb2, 0xc3, 0xdb, 0xb0, 0xa6, 0x01, 0xb9, 0x70, 0x1d, 0xb0, + 0xf3, 0xf6, 0x34, 0xd3, 0x45, 0x5c, 0x81, 0x52, 0x8c, 0x55, 0x69, 0x65, + 0x3d, 0xf9, 0x2f, 0x77, 0x43, 0x4d, 0x47, 0x85, 0x61, 0xce, 0x88, 0x60, + 0xa1, 0xcc, 0xa6, 0x85, 0xa9, 0x5c, 0x82, 0x15, 0x4c, 0x05, 0x77, 0x4a, +}; +static const unsigned char kat2788_nonce[] = {0}; +static const unsigned char kat2788_persstr[] = {0}; +static const unsigned char kat2788_entropyinreseed[] = { + 0xc3, 0xc6, 0x41, 0x1c, 0xb7, 0xca, 0xc3, 0xcf, 0xaa, 0x3a, 0xc6, 0x87, + 0xd1, 0x92, 0xfb, 0x7e, 0xdf, 0xdf, 0xfc, 0x61, 0x51, 0x19, 0xe0, 0xb3, + 0xd1, 0x07, 0x66, 0x93, 0xe7, 0x2f, 0xae, 0xe5, 0xdb, 0xb2, 0x48, 0xaf, + 0xcd, 0xd7, 0xd8, 0xe5, 0x09, 0x92, 0x0e, 0x69, 0x57, 0xfe, 0xfc, 0x55, +}; +static const unsigned char kat2788_addinreseed[] = { + 0xd8, 0x3e, 0x03, 0xb9, 0x14, 0x8d, 0x44, 0x5e, 0xca, 0x62, 0x18, 0x16, + 0x92, 0xa3, 0x66, 0x22, 0xf1, 0xd1, 0x97, 0x2a, 0x5c, 0x98, 0x81, 0x81, + 0xd0, 0x3a, 0x93, 0xf7, 0x65, 0x54, 0xe9, 0xe7, 0xfe, 0xda, 0xee, 0xb0, + 0x26, 0x83, 0xd0, 0x0a, 0xc5, 0x39, 0x18, 0x9b, 0xcd, 0x06, 0x50, 0xb5, +}; +static const unsigned char kat2788_addin0[] = { + 0x9e, 0x98, 0xf7, 0x15, 0x32, 0x6b, 0xe4, 0xbf, 0xec, 0x64, 0xda, 0x9c, + 0x7d, 0x6c, 0x58, 0x44, 0x40, 0x97, 0x6d, 0xca, 0x41, 0xc3, 0xf2, 0xaa, + 0xa3, 0xc5, 0x9c, 0xe3, 0xbe, 0x9c, 0x3c, 0x95, 0x8d, 0x16, 0x7b, 0x41, + 0x51, 0x6f, 0xc4, 0xc2, 0xdb, 0xdd, 0x0c, 0xe7, 0xf7, 0x01, 0x54, 0xda, +}; +static const unsigned char kat2788_addin1[] = { + 0x24, 0xb6, 0xd4, 0x87, 0xa6, 0x9f, 0x1f, 0xd5, 0x51, 0xf3, 0xee, 0xe4, + 0xfc, 0xff, 0xf0, 0xd5, 0x2f, 0xe9, 0x63, 0xb9, 0x18, 0xaa, 0xd7, 0xa6, + 0x6c, 0x14, 0x6f, 0x92, 0x2b, 0x85, 0x1a, 0xd4, 0x64, 0x0b, 0xac, 0x35, + 0x88, 0xb4, 0x6a, 0x7e, 0x55, 0xc4, 0x1b, 0xcc, 0x27, 0xf7, 0xf1, 0x12, +}; +static const unsigned char kat2788_retbits[] = { + 0xaa, 0x5f, 0x42, 0x04, 0x3d, 0x1e, 0x39, 0xc0, 0x39, 0xb6, 0xba, 0x8f, + 0xae, 0x24, 0x0e, 0xfb, 0x2a, 0xad, 0x26, 0xc5, 0x0d, 0xc7, 0x66, 0xb0, + 0x00, 0xe6, 0x4a, 0x08, 0x3c, 0xf4, 0x74, 0x05, 0x1d, 0xb2, 0xed, 0x49, + 0x7f, 0x3d, 0xb6, 0x8f, 0x9e, 0xa6, 0xa2, 0x96, 0x1a, 0x3e, 0xe1, 0x7b, + 0xe5, 0x81, 0x29, 0xde, 0x44, 0x3c, 0x08, 0x78, 0x67, 0x8a, 0x02, 0x1d, + 0xe0, 0xd2, 0x3e, 0x18, +}; +static const struct drbg_kat_pr_false kat2788_t = { + 12, kat2788_entropyin, kat2788_nonce, kat2788_persstr, + kat2788_entropyinreseed, kat2788_addinreseed, kat2788_addin0, + kat2788_addin1, kat2788_retbits +}; +static const struct drbg_kat kat2788 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2788_t +}; + +static const unsigned char kat2789_entropyin[] = { + 0x48, 0xa7, 0x73, 0x52, 0xe7, 0x02, 0x4e, 0xda, 0x47, 0xbf, 0x94, 0xeb, + 0xff, 0x6c, 0xb6, 0x1c, 0x78, 0x7e, 0x1e, 0x4a, 0xfa, 0x22, 0x3c, 0x25, + 0x4f, 0x1f, 0xdc, 0x8b, 0x71, 0x0b, 0x27, 0xb4, 0x4c, 0x2e, 0x8d, 0xbd, + 0x32, 0x1d, 0x12, 0xa6, 0xf5, 0x45, 0x9e, 0xd4, 0x95, 0x66, 0x76, 0x1b, +}; +static const unsigned char kat2789_nonce[] = {0}; +static const unsigned char kat2789_persstr[] = {0}; +static const unsigned char kat2789_entropyinreseed[] = { + 0x4c, 0xec, 0x0a, 0xb2, 0x1a, 0x20, 0xc8, 0x19, 0x2c, 0x12, 0x97, 0xcf, + 0x64, 0x88, 0x09, 0x4e, 0x77, 0x93, 0x23, 0xcd, 0x78, 0xe1, 0x7f, 0x05, + 0xfc, 0xf0, 0xdb, 0x63, 0x72, 0x93, 0xfb, 0x81, 0xc8, 0xf2, 0x35, 0x25, + 0xe6, 0x7b, 0xae, 0xfe, 0xc9, 0x52, 0xc3, 0x4e, 0xa2, 0x3a, 0x7a, 0x6f, +}; +static const unsigned char kat2789_addinreseed[] = { + 0xf7, 0xef, 0x5f, 0x55, 0x3b, 0xd3, 0x4d, 0x53, 0x15, 0x9b, 0x8a, 0x43, + 0x8b, 0x9a, 0xe4, 0x19, 0x47, 0xab, 0x4f, 0x45, 0x2f, 0x8e, 0xcf, 0xa6, + 0x1b, 0xc0, 0x9c, 0x7d, 0x97, 0x4b, 0x53, 0x93, 0x6a, 0x14, 0xb5, 0x00, + 0xbb, 0x90, 0xe8, 0xe9, 0xd3, 0xd5, 0xcf, 0x73, 0x41, 0xa6, 0x0d, 0xa0, +}; +static const unsigned char kat2789_addin0[] = { + 0x5e, 0xc1, 0x77, 0x34, 0x85, 0x77, 0x9c, 0x3d, 0x62, 0x29, 0xf8, 0x9d, + 0xc6, 0xc1, 0x60, 0x99, 0xe7, 0x56, 0x1a, 0xd6, 0xb9, 0x82, 0x36, 0x59, + 0xc1, 0xbf, 0xe3, 0x95, 0x76, 0xa4, 0x6f, 0xe3, 0xbe, 0x91, 0x27, 0xcb, + 0xc4, 0xe7, 0x87, 0x82, 0xfb, 0x09, 0xdb, 0x28, 0x1b, 0x76, 0xbd, 0x1c, +}; +static const unsigned char kat2789_addin1[] = { + 0x53, 0x99, 0x1f, 0x7e, 0x6e, 0xe6, 0xe7, 0x1b, 0x04, 0x50, 0xae, 0x2e, + 0x9a, 0xe7, 0xc2, 0x13, 0x0c, 0x89, 0x0a, 0x16, 0x7b, 0xd8, 0xb3, 0x5e, + 0x1f, 0x5f, 0x8b, 0xca, 0xf9, 0x9b, 0xf1, 0xd6, 0xcb, 0x1b, 0x35, 0x9b, + 0xf6, 0xeb, 0xe9, 0x3a, 0x32, 0xfb, 0xba, 0xb5, 0x81, 0x13, 0x9f, 0xb8, +}; +static const unsigned char kat2789_retbits[] = { + 0x69, 0x7b, 0x34, 0xf5, 0x42, 0x77, 0x86, 0x21, 0xd1, 0x62, 0x11, 0x37, + 0x57, 0x15, 0x71, 0x61, 0x0a, 0xc5, 0x4c, 0x2e, 0x32, 0x52, 0x67, 0xc1, + 0x22, 0x43, 0x88, 0xdb, 0xa9, 0x95, 0x2b, 0xcf, 0x09, 0x84, 0xf6, 0x22, + 0x80, 0x02, 0xb8, 0xe1, 0xfe, 0xad, 0x00, 0x0a, 0x69, 0x76, 0x7b, 0x95, + 0x3c, 0x76, 0x22, 0x62, 0x03, 0x55, 0x06, 0x6f, 0x78, 0x8a, 0x79, 0x6f, + 0x0a, 0xde, 0xd6, 0x62, +}; +static const struct drbg_kat_pr_false kat2789_t = { + 13, kat2789_entropyin, kat2789_nonce, kat2789_persstr, + kat2789_entropyinreseed, kat2789_addinreseed, kat2789_addin0, + kat2789_addin1, kat2789_retbits +}; +static const struct drbg_kat kat2789 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2789_t +}; + +static const unsigned char kat2790_entropyin[] = { + 0xa2, 0x8d, 0x23, 0x15, 0x5b, 0x97, 0x25, 0x0a, 0x9b, 0xa1, 0x3c, 0x23, + 0xf2, 0xe9, 0x1c, 0xbd, 0x39, 0x94, 0xee, 0x89, 0x97, 0xd3, 0x05, 0xb1, + 0xb5, 0x7b, 0x2d, 0x91, 0x17, 0x55, 0xc6, 0x25, 0x84, 0xdb, 0xe2, 0x38, + 0x34, 0x8d, 0x75, 0xfd, 0x9a, 0xbe, 0x4a, 0x06, 0xae, 0x78, 0xb5, 0x9a, +}; +static const unsigned char kat2790_nonce[] = {0}; +static const unsigned char kat2790_persstr[] = {0}; +static const unsigned char kat2790_entropyinreseed[] = { + 0x4b, 0x64, 0xfc, 0xe2, 0x16, 0x64, 0xdd, 0x54, 0xd0, 0x53, 0x2c, 0xe9, + 0x29, 0x58, 0xd2, 0x76, 0xd4, 0xca, 0xdf, 0xe5, 0x34, 0x94, 0x0a, 0x4c, + 0xaf, 0xcf, 0xf7, 0x11, 0xc3, 0x75, 0x8d, 0x23, 0xce, 0x1c, 0x14, 0x16, + 0x63, 0x08, 0x3b, 0x6f, 0x2a, 0x47, 0x7b, 0x9f, 0x25, 0xb7, 0x0f, 0x22, +}; +static const unsigned char kat2790_addinreseed[] = { + 0xae, 0xea, 0x3d, 0x55, 0x69, 0xb1, 0x3e, 0xc4, 0x2c, 0x1f, 0x62, 0x46, + 0x73, 0x66, 0x5d, 0xed, 0x1f, 0x7d, 0x5d, 0xce, 0x6e, 0x71, 0x57, 0x95, + 0x4f, 0x7c, 0x51, 0x3e, 0x17, 0x9a, 0x92, 0xd4, 0xe4, 0xbc, 0x72, 0x27, + 0x8a, 0xb8, 0x61, 0x62, 0x06, 0xfb, 0x5b, 0x7f, 0xa1, 0xd3, 0x5a, 0x8c, +}; +static const unsigned char kat2790_addin0[] = { + 0xaf, 0xf4, 0x06, 0xd3, 0xd5, 0x14, 0xec, 0x11, 0x8c, 0x9a, 0x8f, 0x47, + 0x0d, 0xb3, 0x49, 0x22, 0xb8, 0xbb, 0x26, 0x2f, 0x78, 0xc1, 0xee, 0x6e, + 0xcb, 0xc6, 0x47, 0xea, 0xa2, 0xc0, 0xe4, 0xd7, 0xfd, 0x33, 0xd8, 0x1b, + 0x3c, 0x90, 0x67, 0xee, 0x4c, 0x57, 0xdd, 0x36, 0xd4, 0x02, 0x38, 0x60, +}; +static const unsigned char kat2790_addin1[] = { + 0x50, 0xd8, 0xe7, 0x88, 0x7d, 0xf0, 0x78, 0x5c, 0x33, 0x1a, 0x38, 0x1b, + 0x6f, 0x11, 0x05, 0x7e, 0xd7, 0x20, 0xab, 0xae, 0xce, 0x80, 0xb7, 0xf8, + 0x35, 0x83, 0x86, 0xfa, 0xbf, 0x5d, 0xa2, 0x4a, 0x91, 0x2b, 0x8f, 0x15, + 0x63, 0x30, 0x1f, 0xbc, 0xd7, 0xad, 0x24, 0x0c, 0x03, 0xa5, 0xe4, 0x44, +}; +static const unsigned char kat2790_retbits[] = { + 0xbe, 0x00, 0x45, 0xc0, 0xbe, 0xe7, 0x0d, 0xaf, 0x5a, 0x57, 0xe5, 0xb4, + 0x49, 0xfd, 0xe2, 0xe9, 0x32, 0x0a, 0x0e, 0x0d, 0x42, 0x99, 0x50, 0xec, + 0x3b, 0x8e, 0xc1, 0x4c, 0xa2, 0xac, 0xdd, 0x7c, 0xa2, 0xa3, 0x65, 0xbe, + 0xbf, 0x11, 0xf4, 0x5f, 0x35, 0x6c, 0x34, 0xf7, 0xe5, 0x2a, 0x8c, 0x39, + 0xac, 0x2e, 0x14, 0x18, 0x15, 0x13, 0x4b, 0xab, 0x3b, 0x79, 0xce, 0x3d, + 0xc1, 0xd2, 0xa4, 0x4f, +}; +static const struct drbg_kat_pr_false kat2790_t = { + 14, kat2790_entropyin, kat2790_nonce, kat2790_persstr, + kat2790_entropyinreseed, kat2790_addinreseed, kat2790_addin0, + kat2790_addin1, kat2790_retbits +}; +static const struct drbg_kat kat2790 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2790_t +}; + +static const unsigned char kat2791_entropyin[] = { + 0xa3, 0x68, 0x73, 0x75, 0x12, 0x9c, 0x98, 0x86, 0xea, 0x48, 0xa2, 0xf4, + 0x9b, 0xe3, 0x28, 0xdd, 0x2b, 0xcf, 0x46, 0x68, 0x9a, 0x59, 0xde, 0x69, + 0xa9, 0x29, 0xdc, 0xb0, 0x1e, 0x6b, 0x79, 0xac, 0x96, 0xf9, 0x8d, 0xde, + 0xd9, 0xe1, 0x38, 0x11, 0xc2, 0x5c, 0x55, 0x59, 0x7b, 0xbd, 0x3f, 0x8b, +}; +static const unsigned char kat2791_nonce[] = {0}; +static const unsigned char kat2791_persstr[] = { + 0xda, 0x7c, 0x74, 0x2b, 0x40, 0x8d, 0xeb, 0x1b, 0x02, 0x6e, 0xc5, 0xdf, + 0xeb, 0x00, 0xdd, 0x07, 0x5f, 0x48, 0x06, 0x9c, 0x18, 0x5e, 0x5d, 0x35, + 0x5b, 0x09, 0xef, 0xf8, 0x8f, 0xcc, 0xf2, 0x89, 0xef, 0x04, 0x52, 0x26, + 0xc2, 0xe2, 0x99, 0x1e, 0x20, 0xb0, 0x97, 0x64, 0x33, 0x99, 0x4c, 0x0d, +}; +static const unsigned char kat2791_entropyinreseed[] = { + 0x40, 0xca, 0x11, 0x4f, 0x31, 0xa5, 0x45, 0xb9, 0x29, 0xc4, 0x22, 0x5d, + 0x0d, 0x21, 0x99, 0x74, 0x3a, 0x5d, 0xf3, 0x6a, 0x83, 0x61, 0x89, 0x2d, + 0x5c, 0xdf, 0x35, 0x21, 0x8e, 0xed, 0x63, 0x54, 0xa6, 0x5c, 0xaf, 0x04, + 0xd8, 0x61, 0xf6, 0x14, 0x75, 0x62, 0x5b, 0x21, 0x5a, 0xc6, 0x38, 0x3c, +}; +static const unsigned char kat2791_addinreseed[] = {0}; +static const unsigned char kat2791_addin0[] = {0}; +static const unsigned char kat2791_addin1[] = {0}; +static const unsigned char kat2791_retbits[] = { + 0x47, 0xa4, 0x52, 0x1d, 0xd4, 0x5c, 0x7b, 0x72, 0xe3, 0x9b, 0x7b, 0xb6, + 0xbe, 0x14, 0xbf, 0xb4, 0x02, 0x9f, 0x33, 0xea, 0x87, 0xbf, 0x11, 0xf1, + 0x84, 0x1e, 0x01, 0xd3, 0x37, 0x2d, 0x7a, 0x0c, 0x6d, 0x12, 0x89, 0xe0, + 0xec, 0x60, 0x59, 0x9c, 0x28, 0xc4, 0x0f, 0x38, 0x2f, 0x7d, 0xce, 0x33, + 0xcf, 0x81, 0x57, 0x55, 0x20, 0xbf, 0xf5, 0x58, 0x00, 0x87, 0xf3, 0x01, + 0x08, 0x80, 0xbd, 0xbc, +}; +static const struct drbg_kat_pr_false kat2791_t = { + 0, kat2791_entropyin, kat2791_nonce, kat2791_persstr, + kat2791_entropyinreseed, kat2791_addinreseed, kat2791_addin0, + kat2791_addin1, kat2791_retbits +}; +static const struct drbg_kat kat2791 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2791_t +}; + +static const unsigned char kat2792_entropyin[] = { + 0xdc, 0xe0, 0xfd, 0x6c, 0x4a, 0xcf, 0xf8, 0xf5, 0x09, 0xf0, 0xde, 0xab, + 0x69, 0x06, 0xec, 0xd9, 0x22, 0x16, 0xd2, 0x6e, 0x24, 0xf8, 0x07, 0x50, + 0x61, 0x3f, 0x19, 0xa0, 0x57, 0x16, 0x83, 0xa6, 0x80, 0x81, 0x65, 0xe3, + 0x34, 0xb9, 0x12, 0x8f, 0x8b, 0x0c, 0xaa, 0x36, 0x5d, 0xd9, 0x25, 0x4c, +}; +static const unsigned char kat2792_nonce[] = {0}; +static const unsigned char kat2792_persstr[] = { + 0x55, 0x0d, 0x79, 0xef, 0x80, 0x33, 0x16, 0x8c, 0xfe, 0xed, 0x31, 0x58, + 0xc8, 0x28, 0xb8, 0x8a, 0x09, 0xe9, 0x9b, 0x62, 0xed, 0x10, 0xac, 0x65, + 0xb3, 0x35, 0x34, 0x54, 0x77, 0x41, 0x37, 0xbb, 0xbb, 0x3d, 0x05, 0xda, + 0x17, 0x62, 0x82, 0x38, 0xb7, 0x20, 0x0b, 0x6b, 0x57, 0x65, 0xf9, 0xd8, +}; +static const unsigned char kat2792_entropyinreseed[] = { + 0x73, 0x8c, 0x00, 0x37, 0x8b, 0x79, 0x8a, 0x8a, 0xe8, 0x20, 0x2f, 0xeb, + 0xd2, 0x3b, 0x03, 0x49, 0xfd, 0xb1, 0xb2, 0x7d, 0x0d, 0xac, 0x45, 0x8a, + 0x01, 0x7a, 0x56, 0xb3, 0x94, 0x03, 0x38, 0x18, 0xf9, 0xaa, 0x50, 0x67, + 0xcf, 0xf4, 0x9a, 0xf5, 0xe0, 0x3e, 0x26, 0x6c, 0x65, 0xfc, 0xfb, 0x5d, +}; +static const unsigned char kat2792_addinreseed[] = {0}; +static const unsigned char kat2792_addin0[] = {0}; +static const unsigned char kat2792_addin1[] = {0}; +static const unsigned char kat2792_retbits[] = { + 0x6f, 0x06, 0xb1, 0xf8, 0x73, 0x6a, 0x25, 0x63, 0x90, 0x33, 0x52, 0x6a, + 0x84, 0xb1, 0x21, 0x5c, 0xfe, 0xf4, 0x9b, 0x1d, 0xa0, 0x48, 0xf4, 0x03, + 0xfa, 0x7b, 0x34, 0xa1, 0x47, 0xc6, 0x54, 0x69, 0xac, 0x39, 0x6f, 0x20, + 0xdd, 0x68, 0x92, 0x98, 0x04, 0x51, 0xda, 0xeb, 0xa1, 0xb8, 0x7c, 0x3d, + 0x47, 0x1f, 0x32, 0xf2, 0xd0, 0x9b, 0x4f, 0x34, 0x0c, 0x3e, 0x35, 0xfb, + 0xfc, 0x1b, 0x99, 0x69, +}; +static const struct drbg_kat_pr_false kat2792_t = { + 1, kat2792_entropyin, kat2792_nonce, kat2792_persstr, + kat2792_entropyinreseed, kat2792_addinreseed, kat2792_addin0, + kat2792_addin1, kat2792_retbits +}; +static const struct drbg_kat kat2792 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2792_t +}; + +static const unsigned char kat2793_entropyin[] = { + 0x18, 0x1c, 0x55, 0x91, 0x4e, 0x45, 0x72, 0x53, 0xd4, 0x66, 0xa5, 0x62, + 0x21, 0x16, 0x32, 0xeb, 0x16, 0x4c, 0x83, 0x2b, 0x61, 0x77, 0xf6, 0x14, + 0x1e, 0x46, 0xfa, 0x9f, 0x2c, 0x88, 0x31, 0x59, 0xfe, 0x23, 0x31, 0xf9, + 0xf3, 0x36, 0x7f, 0x30, 0xcd, 0x2d, 0x8b, 0xa1, 0xe8, 0x93, 0x50, 0x55, +}; +static const unsigned char kat2793_nonce[] = {0}; +static const unsigned char kat2793_persstr[] = { + 0x15, 0x4b, 0x2a, 0xfe, 0x46, 0x2a, 0xf6, 0x5b, 0x12, 0xdb, 0xe2, 0x87, + 0x26, 0x5f, 0xa5, 0xa6, 0xc2, 0x56, 0xc0, 0x0d, 0x9b, 0x7e, 0x4c, 0x3e, + 0x22, 0x08, 0xcb, 0x69, 0x6a, 0x73, 0x61, 0xe9, 0xbf, 0xb6, 0x7c, 0x8a, + 0xd4, 0xe8, 0xa0, 0x62, 0xf9, 0xd1, 0xd4, 0xbc, 0x4a, 0x08, 0x3b, 0x47, +}; +static const unsigned char kat2793_entropyinreseed[] = { + 0x03, 0xf7, 0xfb, 0xb8, 0xfa, 0x8e, 0x99, 0xd7, 0x35, 0xdf, 0xd0, 0x64, + 0x12, 0x65, 0xdb, 0x18, 0x89, 0x62, 0xa6, 0xd7, 0x23, 0x8c, 0xc8, 0x7a, + 0xc6, 0x25, 0x0f, 0x1a, 0x53, 0x89, 0x7d, 0x07, 0x41, 0xb1, 0xb0, 0x17, + 0x34, 0x0c, 0xba, 0x42, 0x67, 0xc5, 0x10, 0xa8, 0x12, 0xb2, 0x2a, 0x94, +}; +static const unsigned char kat2793_addinreseed[] = {0}; +static const unsigned char kat2793_addin0[] = {0}; +static const unsigned char kat2793_addin1[] = {0}; +static const unsigned char kat2793_retbits[] = { + 0x0e, 0x8d, 0x00, 0x74, 0x97, 0x03, 0x39, 0x01, 0xb3, 0xbe, 0x46, 0x0d, + 0x6c, 0x54, 0x5b, 0x82, 0x0f, 0x51, 0x03, 0x5b, 0xa3, 0x3a, 0x47, 0x26, + 0xde, 0xed, 0x2d, 0xcd, 0x24, 0x05, 0xe3, 0x10, 0x6a, 0x8c, 0x79, 0xde, + 0x92, 0x9f, 0x79, 0xee, 0x92, 0xa5, 0x5e, 0x2e, 0x65, 0xc0, 0xdd, 0x63, + 0xb8, 0x2b, 0xcd, 0x19, 0xa0, 0x85, 0x99, 0x21, 0x53, 0x1e, 0x06, 0x3a, + 0x07, 0xdd, 0x0f, 0x8c, +}; +static const struct drbg_kat_pr_false kat2793_t = { + 2, kat2793_entropyin, kat2793_nonce, kat2793_persstr, + kat2793_entropyinreseed, kat2793_addinreseed, kat2793_addin0, + kat2793_addin1, kat2793_retbits +}; +static const struct drbg_kat kat2793 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2793_t +}; + +static const unsigned char kat2794_entropyin[] = { + 0x1f, 0xa7, 0x41, 0xe7, 0x3b, 0x3b, 0x75, 0xe9, 0x97, 0x7e, 0xec, 0x90, + 0x20, 0x5c, 0x34, 0xdc, 0x57, 0xb8, 0xcf, 0xc1, 0x70, 0x84, 0x07, 0x92, + 0xe0, 0xda, 0xf7, 0x0f, 0x3a, 0x11, 0x89, 0xb1, 0x7b, 0x68, 0x99, 0x23, + 0xc8, 0x48, 0x7c, 0x26, 0x84, 0x65, 0x95, 0x14, 0x87, 0x75, 0xa8, 0xa9, +}; +static const unsigned char kat2794_nonce[] = {0}; +static const unsigned char kat2794_persstr[] = { + 0xd5, 0x97, 0x32, 0xb5, 0xa1, 0x5d, 0xcf, 0x62, 0xc8, 0x65, 0xb5, 0x2f, + 0xab, 0xce, 0x93, 0x06, 0xb2, 0xc1, 0x56, 0x88, 0x8f, 0x84, 0x30, 0xf8, + 0x16, 0xd0, 0x7a, 0x2c, 0x15, 0xf2, 0x15, 0xe7, 0xe9, 0x60, 0x89, 0x94, + 0x5c, 0x71, 0xa6, 0x0d, 0x11, 0x26, 0x0c, 0xf2, 0x99, 0x9a, 0x9b, 0xf7, +}; +static const unsigned char kat2794_entropyinreseed[] = { + 0xe2, 0xaa, 0x12, 0x84, 0x2d, 0x2d, 0x5d, 0xad, 0xcb, 0xbc, 0x15, 0x01, + 0x17, 0x24, 0x47, 0xe0, 0x08, 0x62, 0x63, 0x04, 0x14, 0xcd, 0xb2, 0x21, + 0x17, 0xdc, 0xe2, 0xcd, 0x3d, 0xee, 0xfc, 0x0d, 0xa2, 0x18, 0xae, 0x26, + 0x74, 0x96, 0x66, 0x4e, 0x3b, 0x76, 0x01, 0xb4, 0xd6, 0xe7, 0xff, 0xa0, +}; +static const unsigned char kat2794_addinreseed[] = {0}; +static const unsigned char kat2794_addin0[] = {0}; +static const unsigned char kat2794_addin1[] = {0}; +static const unsigned char kat2794_retbits[] = { + 0x9d, 0x63, 0xf1, 0x58, 0x4b, 0x41, 0xc0, 0xa3, 0x39, 0x3b, 0x88, 0xf1, + 0x44, 0xf2, 0x5e, 0x74, 0x49, 0x6f, 0x38, 0xa6, 0x2d, 0xc4, 0xc8, 0x70, + 0xb8, 0xa2, 0x85, 0xfa, 0x08, 0x19, 0x6c, 0x2d, 0x65, 0xf9, 0xd9, 0x2e, + 0xfc, 0xde, 0xdb, 0x4a, 0x41, 0x51, 0x89, 0x7d, 0x79, 0x98, 0xd4, 0x98, + 0xa0, 0x62, 0xc4, 0x53, 0x3d, 0xff, 0xa5, 0x70, 0x1c, 0x78, 0xdd, 0x57, + 0x46, 0x86, 0x4f, 0x42, +}; +static const struct drbg_kat_pr_false kat2794_t = { + 3, kat2794_entropyin, kat2794_nonce, kat2794_persstr, + kat2794_entropyinreseed, kat2794_addinreseed, kat2794_addin0, + kat2794_addin1, kat2794_retbits +}; +static const struct drbg_kat kat2794 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2794_t +}; + +static const unsigned char kat2795_entropyin[] = { + 0x1c, 0xd1, 0xa0, 0x73, 0x93, 0xd6, 0xfb, 0x0e, 0x28, 0xd1, 0x20, 0xa5, + 0x79, 0xd4, 0x9c, 0x62, 0x78, 0xce, 0x5f, 0x08, 0xa9, 0x52, 0xcb, 0xa8, + 0x6c, 0x58, 0xce, 0x71, 0x2c, 0x94, 0x48, 0x8e, 0xa8, 0x05, 0x85, 0xb8, + 0x04, 0x91, 0x09, 0xca, 0xf7, 0x91, 0x79, 0xc8, 0xee, 0x30, 0x7b, 0xa7, +}; +static const unsigned char kat2795_nonce[] = {0}; +static const unsigned char kat2795_persstr[] = { + 0xcf, 0x7d, 0xc6, 0x09, 0xb1, 0x0c, 0xa1, 0x3d, 0xd9, 0xff, 0x5e, 0xeb, + 0xf4, 0x6c, 0x7b, 0x87, 0x77, 0x30, 0xba, 0x20, 0x01, 0x26, 0xd4, 0x66, + 0x84, 0x7a, 0x79, 0xe8, 0x5e, 0x09, 0x85, 0xce, 0x86, 0xec, 0x4d, 0x10, + 0x2f, 0xe5, 0x14, 0xd3, 0x25, 0x69, 0x50, 0xd0, 0x69, 0xb4, 0x0a, 0x43, +}; +static const unsigned char kat2795_entropyinreseed[] = { + 0xa2, 0xa5, 0xfe, 0x34, 0x07, 0x51, 0x0e, 0xb8, 0x2d, 0xc9, 0xcb, 0xc3, + 0xa4, 0x81, 0x1f, 0x9c, 0x92, 0x83, 0x2b, 0x69, 0x95, 0xb6, 0x78, 0x41, + 0x1b, 0xae, 0xde, 0x9d, 0xea, 0xb6, 0x8c, 0x5d, 0x7b, 0x12, 0x13, 0xc1, + 0x39, 0xf2, 0xe0, 0x14, 0x39, 0xd7, 0x68, 0x53, 0xd0, 0x49, 0x64, 0x77, +}; +static const unsigned char kat2795_addinreseed[] = {0}; +static const unsigned char kat2795_addin0[] = {0}; +static const unsigned char kat2795_addin1[] = {0}; +static const unsigned char kat2795_retbits[] = { + 0x14, 0x38, 0x2b, 0xdc, 0x4e, 0x43, 0x0b, 0x2c, 0x89, 0x6c, 0x2c, 0x59, + 0x7d, 0x2f, 0xe8, 0x5f, 0x52, 0x4e, 0x90, 0x8a, 0xb2, 0x35, 0x39, 0x15, + 0x8c, 0xfd, 0xef, 0x48, 0x1a, 0x69, 0x40, 0x91, 0x81, 0xf0, 0x59, 0x4f, + 0xe6, 0xc5, 0x4d, 0xb7, 0xa0, 0x52, 0xb0, 0x01, 0xc4, 0xcb, 0x03, 0xd6, + 0xa7, 0x07, 0xb5, 0x92, 0x39, 0xe7, 0xd5, 0xf1, 0xc6, 0xe0, 0x8a, 0xa6, + 0x25, 0x74, 0x0c, 0x2d, +}; +static const struct drbg_kat_pr_false kat2795_t = { + 4, kat2795_entropyin, kat2795_nonce, kat2795_persstr, + kat2795_entropyinreseed, kat2795_addinreseed, kat2795_addin0, + kat2795_addin1, kat2795_retbits +}; +static const struct drbg_kat kat2795 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2795_t +}; + +static const unsigned char kat2796_entropyin[] = { + 0x14, 0xf5, 0xc7, 0x7d, 0x7f, 0xc6, 0x4b, 0x04, 0xd3, 0xc7, 0x32, 0x68, + 0xbf, 0x93, 0x6e, 0x6c, 0x07, 0x5b, 0x32, 0x69, 0x46, 0x2d, 0xc6, 0x18, + 0x58, 0x84, 0x42, 0x13, 0x31, 0xb7, 0xa8, 0x40, 0xfb, 0xc7, 0xc3, 0xc3, + 0x1e, 0x26, 0x9b, 0x2b, 0xfc, 0x8c, 0xbc, 0xa5, 0x3f, 0x85, 0x4c, 0x98, +}; +static const unsigned char kat2796_nonce[] = {0}; +static const unsigned char kat2796_persstr[] = { + 0xe4, 0xb3, 0x96, 0xca, 0x9f, 0xf4, 0xe4, 0x07, 0x90, 0x02, 0x84, 0x08, + 0x4a, 0xef, 0x7a, 0xa4, 0x79, 0xea, 0xd2, 0x2a, 0xa6, 0x72, 0x56, 0x5d, + 0x81, 0x01, 0x0f, 0x1d, 0x4a, 0x70, 0x28, 0x36, 0x76, 0xbd, 0xc2, 0x0c, + 0xba, 0x71, 0xf8, 0xf0, 0xab, 0x8d, 0x1e, 0x02, 0x4a, 0x0d, 0x2e, 0x66, +}; +static const unsigned char kat2796_entropyinreseed[] = { + 0xb6, 0x32, 0xaf, 0xd8, 0x48, 0x1f, 0x67, 0x35, 0x2d, 0x53, 0x4e, 0x24, + 0x0c, 0xfa, 0x4f, 0x5e, 0x74, 0x05, 0x70, 0x7d, 0xf5, 0xba, 0x17, 0xa4, + 0x1c, 0xfa, 0x17, 0xc5, 0x74, 0xb7, 0x09, 0x75, 0x58, 0xb0, 0x8c, 0x36, + 0x1c, 0x6f, 0x04, 0x65, 0xc7, 0x35, 0x1b, 0xc2, 0xcb, 0x96, 0xd7, 0xd3, +}; +static const unsigned char kat2796_addinreseed[] = {0}; +static const unsigned char kat2796_addin0[] = {0}; +static const unsigned char kat2796_addin1[] = {0}; +static const unsigned char kat2796_retbits[] = { + 0xdd, 0xbf, 0x4c, 0x5d, 0xc3, 0x22, 0x20, 0x27, 0x18, 0xd0, 0xb4, 0x8a, + 0x16, 0xf1, 0x8c, 0x14, 0xfc, 0xee, 0xb9, 0xd1, 0x78, 0xe0, 0xfb, 0x03, + 0x8b, 0x0a, 0xe6, 0xb0, 0x1d, 0x6b, 0x0d, 0x6d, 0xd0, 0x66, 0x49, 0xe8, + 0x18, 0x97, 0x26, 0xf1, 0x2b, 0x50, 0xf7, 0xec, 0x53, 0xf2, 0x50, 0xec, + 0x18, 0x07, 0x8d, 0xa6, 0x7b, 0x56, 0xfd, 0x7b, 0xa8, 0xcd, 0xb3, 0xca, + 0xd1, 0xa6, 0x02, 0xec, +}; +static const struct drbg_kat_pr_false kat2796_t = { + 5, kat2796_entropyin, kat2796_nonce, kat2796_persstr, + kat2796_entropyinreseed, kat2796_addinreseed, kat2796_addin0, + kat2796_addin1, kat2796_retbits +}; +static const struct drbg_kat kat2796 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2796_t +}; + +static const unsigned char kat2797_entropyin[] = { + 0x45, 0x32, 0x9b, 0xc7, 0x46, 0x85, 0xc7, 0xb2, 0x9a, 0x1e, 0x9b, 0xb9, + 0xe6, 0xc1, 0x9e, 0xac, 0xf9, 0xa1, 0xec, 0xd1, 0x68, 0xbe, 0x3b, 0x5a, + 0x2e, 0x2f, 0xf4, 0x37, 0xb5, 0xe6, 0xcd, 0xd5, 0x6e, 0x89, 0xa4, 0xb2, + 0xb8, 0xb6, 0xab, 0xb5, 0x27, 0x13, 0xa4, 0x8a, 0x51, 0xcc, 0xb3, 0x02, +}; +static const unsigned char kat2797_nonce[] = {0}; +static const unsigned char kat2797_persstr[] = { + 0xd6, 0xb1, 0x95, 0x5d, 0x30, 0xdb, 0x95, 0x3a, 0x40, 0x09, 0xc7, 0x66, + 0x4b, 0x96, 0xae, 0xf4, 0x7c, 0xc3, 0x0d, 0x33, 0xdb, 0x74, 0x98, 0x6b, + 0x17, 0x1e, 0xb1, 0x99, 0xc3, 0x92, 0x25, 0xe0, 0xeb, 0xd2, 0x5c, 0x7a, + 0xba, 0xcc, 0x06, 0xed, 0x6c, 0x27, 0x92, 0x1c, 0x2f, 0x9d, 0x7e, 0x10, +}; +static const unsigned char kat2797_entropyinreseed[] = { + 0x6e, 0x5c, 0x46, 0x4c, 0xc4, 0x65, 0x80, 0x18, 0x87, 0xc5, 0x72, 0x91, + 0xd4, 0x74, 0x75, 0xac, 0x48, 0x1c, 0x98, 0xd0, 0x33, 0xa8, 0x96, 0x30, + 0x53, 0xf2, 0xf6, 0x14, 0xe9, 0x95, 0xd1, 0x43, 0x5a, 0x4b, 0x2d, 0x52, + 0x49, 0xcb, 0xf8, 0x3f, 0x62, 0x0d, 0x74, 0x37, 0x0d, 0x48, 0xc5, 0x81, +}; +static const unsigned char kat2797_addinreseed[] = {0}; +static const unsigned char kat2797_addin0[] = {0}; +static const unsigned char kat2797_addin1[] = {0}; +static const unsigned char kat2797_retbits[] = { + 0x96, 0xc6, 0x58, 0x3b, 0x98, 0xf2, 0xd7, 0x5c, 0x9b, 0x6c, 0x87, 0xaa, + 0xa7, 0x88, 0xca, 0x6d, 0xd9, 0xda, 0x10, 0xb0, 0x27, 0x32, 0x00, 0x1b, + 0x55, 0xab, 0x1c, 0xe7, 0x32, 0x3c, 0xb4, 0xd6, 0x0c, 0x60, 0x59, 0xe1, + 0xed, 0x95, 0xc0, 0x56, 0x13, 0x02, 0xd2, 0xce, 0x43, 0x81, 0xbf, 0xae, + 0x8c, 0x2b, 0x7c, 0x49, 0x18, 0x3a, 0xb7, 0x2b, 0x42, 0xf8, 0x0b, 0x7a, + 0xd1, 0x58, 0x7b, 0x75, +}; +static const struct drbg_kat_pr_false kat2797_t = { + 6, kat2797_entropyin, kat2797_nonce, kat2797_persstr, + kat2797_entropyinreseed, kat2797_addinreseed, kat2797_addin0, + kat2797_addin1, kat2797_retbits +}; +static const struct drbg_kat kat2797 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2797_t +}; + +static const unsigned char kat2798_entropyin[] = { + 0x63, 0x3a, 0xd6, 0xf4, 0xcf, 0x50, 0x3c, 0x71, 0x74, 0x6c, 0x19, 0xba, + 0x66, 0x3d, 0x33, 0xc4, 0x4b, 0x11, 0x7f, 0x5f, 0xe1, 0x82, 0x90, 0x40, + 0x59, 0xf1, 0x9e, 0xa9, 0x3a, 0x86, 0x95, 0xcf, 0x8d, 0x91, 0x9d, 0xa9, + 0xe2, 0x6f, 0x58, 0x85, 0x30, 0x52, 0x94, 0xea, 0x25, 0x1f, 0x81, 0x18, +}; +static const unsigned char kat2798_nonce[] = {0}; +static const unsigned char kat2798_persstr[] = { + 0x2c, 0xb1, 0x47, 0x94, 0xde, 0x9e, 0xd7, 0x1b, 0x4c, 0x72, 0xab, 0x22, + 0x19, 0x0a, 0x18, 0x58, 0x1c, 0x1c, 0xe5, 0xdc, 0x4f, 0x29, 0x69, 0x0b, + 0xd5, 0x82, 0x5f, 0xaf, 0x8f, 0x06, 0x7b, 0x11, 0xa0, 0x65, 0x90, 0xdc, + 0xd7, 0x47, 0x6f, 0xff, 0xaf, 0x89, 0xc9, 0x7d, 0x86, 0xb4, 0x2d, 0x96, +}; +static const unsigned char kat2798_entropyinreseed[] = { + 0x55, 0xc4, 0x9d, 0x46, 0xf1, 0x0d, 0x08, 0x54, 0xa8, 0x04, 0xbb, 0xf2, + 0xcc, 0x69, 0x91, 0x41, 0x95, 0xaf, 0x22, 0x7a, 0xfc, 0x5e, 0xa2, 0xb2, + 0x35, 0xf4, 0x9d, 0x75, 0x58, 0xf7, 0x4d, 0x02, 0x69, 0xc4, 0xfa, 0x96, + 0xe9, 0xe1, 0x62, 0x3c, 0xc8, 0x58, 0x13, 0xee, 0xa2, 0x28, 0xeb, 0x43, +}; +static const unsigned char kat2798_addinreseed[] = {0}; +static const unsigned char kat2798_addin0[] = {0}; +static const unsigned char kat2798_addin1[] = {0}; +static const unsigned char kat2798_retbits[] = { + 0x47, 0x1f, 0xf7, 0x0d, 0xf1, 0x71, 0x53, 0x53, 0x68, 0xf1, 0x96, 0xbb, + 0x26, 0x61, 0x00, 0xdb, 0xe1, 0xbc, 0x3f, 0x2b, 0x1c, 0xe1, 0xe2, 0xd6, + 0x05, 0x5f, 0x40, 0x97, 0x67, 0x62, 0x18, 0x8a, 0xbd, 0xcf, 0xac, 0xb5, + 0x2b, 0x80, 0x80, 0xbd, 0x24, 0x1b, 0x88, 0xfe, 0xff, 0x2e, 0x1c, 0x16, + 0x74, 0xa1, 0xb7, 0xc4, 0x4a, 0x9f, 0x60, 0x28, 0xc9, 0xfd, 0x6a, 0x41, + 0x2f, 0xc4, 0x43, 0x18, +}; +static const struct drbg_kat_pr_false kat2798_t = { + 7, kat2798_entropyin, kat2798_nonce, kat2798_persstr, + kat2798_entropyinreseed, kat2798_addinreseed, kat2798_addin0, + kat2798_addin1, kat2798_retbits +}; +static const struct drbg_kat kat2798 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2798_t +}; + +static const unsigned char kat2799_entropyin[] = { + 0x75, 0x1e, 0x97, 0x7d, 0x77, 0x58, 0xc7, 0x50, 0x25, 0x28, 0xbb, 0xce, + 0x7a, 0xda, 0x64, 0xc1, 0xba, 0x33, 0x5a, 0x33, 0x9d, 0x94, 0x85, 0xfa, + 0x91, 0xc6, 0x5d, 0x4e, 0x66, 0x97, 0xee, 0xfa, 0x46, 0xeb, 0xd3, 0x83, + 0x4d, 0x80, 0xdb, 0x42, 0xbd, 0xf9, 0x50, 0xf6, 0xe0, 0x06, 0xa5, 0x5e, +}; +static const unsigned char kat2799_nonce[] = {0}; +static const unsigned char kat2799_persstr[] = { + 0x5b, 0x42, 0xeb, 0x47, 0x91, 0x87, 0xfa, 0xc0, 0x97, 0x2e, 0x58, 0x28, + 0xf2, 0x7a, 0x5f, 0x73, 0xda, 0xec, 0x30, 0x6e, 0x06, 0xaa, 0x64, 0x9f, + 0x5d, 0x5b, 0xa5, 0x3b, 0xc1, 0xa6, 0x48, 0x4c, 0x2c, 0xa3, 0x5b, 0xed, + 0x94, 0x6f, 0xa1, 0xa4, 0x3e, 0xd3, 0x40, 0x65, 0x57, 0x9e, 0x3f, 0xc0, +}; +static const unsigned char kat2799_entropyinreseed[] = { + 0xd5, 0x5d, 0x4a, 0x2f, 0xc2, 0x96, 0x4b, 0xa0, 0x3e, 0x0a, 0x30, 0x3a, + 0xba, 0xb5, 0xdd, 0x8f, 0x38, 0x10, 0x26, 0x06, 0xf0, 0x01, 0x92, 0x92, + 0x3a, 0xa3, 0x14, 0xde, 0x9f, 0xa4, 0x0f, 0x62, 0xa4, 0xa5, 0xd0, 0xd1, + 0x62, 0xe7, 0x17, 0x4e, 0xc5, 0xec, 0x6e, 0x4d, 0x2b, 0x24, 0xf0, 0xff, +}; +static const unsigned char kat2799_addinreseed[] = {0}; +static const unsigned char kat2799_addin0[] = {0}; +static const unsigned char kat2799_addin1[] = {0}; +static const unsigned char kat2799_retbits[] = { + 0x3b, 0xb4, 0x7e, 0xdc, 0x5b, 0xe1, 0x04, 0x92, 0x28, 0x02, 0x2c, 0x59, + 0x3b, 0xdd, 0x6c, 0x84, 0xc6, 0x67, 0x96, 0xb5, 0xce, 0xaa, 0xba, 0x1d, + 0x91, 0x98, 0xa4, 0x7a, 0x4c, 0x35, 0xcf, 0x18, 0xe2, 0x6e, 0x33, 0xbf, + 0x46, 0x42, 0xe9, 0xcc, 0x2d, 0x91, 0x8a, 0x6b, 0x6f, 0x95, 0x7d, 0x18, + 0x3a, 0x56, 0x1a, 0xfd, 0x59, 0x5f, 0x38, 0xb7, 0x8d, 0xe0, 0x54, 0xc4, + 0x77, 0x63, 0x26, 0x91, +}; +static const struct drbg_kat_pr_false kat2799_t = { + 8, kat2799_entropyin, kat2799_nonce, kat2799_persstr, + kat2799_entropyinreseed, kat2799_addinreseed, kat2799_addin0, + kat2799_addin1, kat2799_retbits +}; +static const struct drbg_kat kat2799 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2799_t +}; + +static const unsigned char kat2800_entropyin[] = { + 0x0b, 0x51, 0x13, 0x5d, 0x3d, 0xa2, 0x43, 0x2f, 0xcf, 0x11, 0xdd, 0xa0, + 0x87, 0xf7, 0xd1, 0x6f, 0xa5, 0xeb, 0xa2, 0xeb, 0xa0, 0xe1, 0x64, 0x8d, + 0x20, 0xd9, 0xe9, 0x45, 0x4c, 0x20, 0xbf, 0xe7, 0xcf, 0x45, 0x20, 0x56, + 0x45, 0x39, 0xd6, 0xaf, 0x4c, 0x50, 0x8a, 0x3e, 0xff, 0x21, 0xa0, 0x7d, +}; +static const unsigned char kat2800_nonce[] = {0}; +static const unsigned char kat2800_persstr[] = { + 0x1f, 0x16, 0x7d, 0xef, 0x62, 0xfd, 0x06, 0x15, 0x8b, 0x63, 0xe4, 0x6f, + 0x62, 0x70, 0x01, 0x2c, 0xa9, 0x8f, 0x5b, 0xee, 0x3f, 0x53, 0x46, 0x5e, + 0xc7, 0x54, 0x60, 0xe6, 0xf1, 0x46, 0x1c, 0x40, 0xa1, 0x7e, 0x06, 0xf9, + 0xa1, 0x98, 0xa5, 0x89, 0xb1, 0x76, 0xc5, 0x1b, 0xeb, 0x12, 0x95, 0x41, +}; +static const unsigned char kat2800_entropyinreseed[] = { + 0xed, 0xd8, 0xa4, 0x70, 0xef, 0x55, 0xfe, 0x21, 0x68, 0xce, 0x55, 0x59, + 0xa6, 0xb4, 0x9b, 0x70, 0xf8, 0xc1, 0x03, 0xaf, 0xbc, 0xa8, 0xab, 0xff, + 0x76, 0x0c, 0xf7, 0x53, 0xdc, 0x54, 0xb9, 0xda, 0xdd, 0xc0, 0x10, 0x9d, + 0x33, 0xf7, 0x3b, 0x5c, 0xb4, 0x1a, 0xc3, 0x5a, 0xd1, 0x74, 0x97, 0xfe, +}; +static const unsigned char kat2800_addinreseed[] = {0}; +static const unsigned char kat2800_addin0[] = {0}; +static const unsigned char kat2800_addin1[] = {0}; +static const unsigned char kat2800_retbits[] = { + 0x7f, 0x37, 0x30, 0xcd, 0x13, 0x39, 0x99, 0x22, 0x47, 0x64, 0x99, 0xcd, + 0x42, 0xa4, 0x75, 0x9a, 0xc2, 0x12, 0xd2, 0x86, 0x01, 0xa3, 0x49, 0x7b, + 0x22, 0x33, 0x3e, 0xbc, 0xc6, 0x78, 0xf6, 0xd8, 0x05, 0xf6, 0x6c, 0xd1, + 0xb9, 0x82, 0xbc, 0xbe, 0x9f, 0x4b, 0x36, 0x38, 0x48, 0x71, 0x89, 0x04, + 0x5e, 0xfe, 0x55, 0xba, 0x19, 0x06, 0x4c, 0x9f, 0x07, 0x5d, 0xec, 0x9e, + 0x55, 0x32, 0x00, 0x98, +}; +static const struct drbg_kat_pr_false kat2800_t = { + 9, kat2800_entropyin, kat2800_nonce, kat2800_persstr, + kat2800_entropyinreseed, kat2800_addinreseed, kat2800_addin0, + kat2800_addin1, kat2800_retbits +}; +static const struct drbg_kat kat2800 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2800_t +}; + +static const unsigned char kat2801_entropyin[] = { + 0x27, 0xd1, 0xb6, 0x59, 0xd8, 0x30, 0x06, 0xbd, 0xb2, 0x1f, 0x96, 0xe9, + 0x2b, 0x92, 0x80, 0x2a, 0x56, 0xcb, 0x96, 0xd8, 0x03, 0x19, 0x52, 0x8b, + 0x24, 0x3d, 0x1a, 0xa5, 0xdb, 0xb2, 0x6a, 0xbf, 0x66, 0xba, 0x9b, 0x60, + 0x35, 0xe0, 0xd9, 0xf1, 0x74, 0x62, 0x3a, 0xd0, 0x33, 0xdf, 0x2b, 0xa1, +}; +static const unsigned char kat2801_nonce[] = {0}; +static const unsigned char kat2801_persstr[] = { + 0xe7, 0x53, 0x57, 0x03, 0xc1, 0x10, 0x48, 0xc4, 0xfd, 0x19, 0x31, 0x52, + 0x6b, 0x2d, 0xcc, 0x5f, 0x6f, 0x26, 0xaa, 0x97, 0x24, 0x7e, 0xa8, 0xbb, + 0x18, 0x31, 0xdc, 0xd7, 0xc3, 0xf5, 0xa4, 0xd6, 0x5b, 0xdd, 0xd5, 0x0f, + 0x4f, 0xa3, 0x59, 0x3a, 0xfd, 0x30, 0x58, 0x6e, 0x86, 0x3b, 0x90, 0x06, +}; +static const unsigned char kat2801_entropyinreseed[] = { + 0x5c, 0xa1, 0x90, 0x8a, 0xe5, 0x27, 0x7c, 0x17, 0xf1, 0xb2, 0xff, 0xc4, + 0x01, 0x6e, 0x7b, 0x1c, 0x81, 0xbf, 0xb2, 0x3e, 0xb0, 0xfa, 0x9b, 0x1f, + 0xba, 0xba, 0xc1, 0xf5, 0x8d, 0xe6, 0x96, 0x91, 0x57, 0xc0, 0x69, 0x45, + 0x1d, 0x88, 0xcd, 0x41, 0x18, 0x3a, 0xe6, 0xbf, 0x9b, 0x09, 0x24, 0x66, +}; +static const unsigned char kat2801_addinreseed[] = {0}; +static const unsigned char kat2801_addin0[] = {0}; +static const unsigned char kat2801_addin1[] = {0}; +static const unsigned char kat2801_retbits[] = { + 0x3d, 0x4e, 0x16, 0xcc, 0xe1, 0x6a, 0xb1, 0x6e, 0x81, 0x3a, 0xfe, 0x20, + 0x20, 0xbd, 0xfe, 0x9f, 0x48, 0xf2, 0x51, 0xe6, 0x93, 0x4f, 0x2d, 0xb3, + 0xd3, 0xd2, 0xd5, 0x20, 0x39, 0x0d, 0x78, 0xd2, 0xea, 0x84, 0xe3, 0xde, + 0x56, 0xe3, 0x8f, 0x44, 0x4f, 0xce, 0x89, 0xba, 0xa1, 0xc2, 0x12, 0xae, + 0x15, 0x97, 0x3b, 0xa1, 0xe9, 0xf5, 0xdb, 0x1a, 0xec, 0x06, 0xec, 0x4e, + 0x4b, 0x56, 0xf6, 0x44, +}; +static const struct drbg_kat_pr_false kat2801_t = { + 10, kat2801_entropyin, kat2801_nonce, kat2801_persstr, + kat2801_entropyinreseed, kat2801_addinreseed, kat2801_addin0, + kat2801_addin1, kat2801_retbits +}; +static const struct drbg_kat kat2801 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2801_t +}; + +static const unsigned char kat2802_entropyin[] = { + 0xd5, 0x71, 0x27, 0x11, 0x2c, 0x44, 0xd1, 0xf4, 0xe9, 0x4c, 0x0c, 0x78, + 0x5f, 0x5c, 0x66, 0xf9, 0x23, 0x4a, 0x80, 0x59, 0x10, 0xf8, 0x84, 0x5c, + 0x20, 0x86, 0x5a, 0x79, 0x03, 0x1b, 0x74, 0xed, 0xf0, 0xc8, 0xf1, 0x10, + 0x33, 0x3c, 0x39, 0x8f, 0xd3, 0x2f, 0x0e, 0xe1, 0x0a, 0x5a, 0x7a, 0x2a, +}; +static const unsigned char kat2802_nonce[] = {0}; +static const unsigned char kat2802_persstr[] = { + 0xd1, 0xca, 0x7e, 0x7e, 0x07, 0x40, 0x39, 0x1c, 0x4a, 0x95, 0x15, 0x70, + 0xee, 0x05, 0x60, 0xe0, 0x38, 0xbb, 0xc2, 0xf5, 0x20, 0x75, 0x3f, 0x05, + 0x8e, 0xd9, 0x69, 0xe1, 0xbd, 0x0f, 0xd6, 0xd5, 0xa2, 0xa1, 0xb2, 0x4f, + 0xde, 0xe5, 0xe3, 0x73, 0x9e, 0xa2, 0xee, 0xb1, 0x24, 0x0f, 0x3e, 0x65, +}; +static const unsigned char kat2802_entropyinreseed[] = { + 0x2a, 0x31, 0x90, 0x61, 0x61, 0x1e, 0x70, 0xdf, 0x56, 0x51, 0x65, 0x72, + 0xaf, 0x29, 0x05, 0x12, 0xb3, 0xdc, 0x1b, 0xee, 0x0a, 0x0f, 0xaf, 0x62, + 0xdf, 0xba, 0xe0, 0x3f, 0x26, 0x24, 0x89, 0x5e, 0x53, 0xd8, 0x9f, 0xd0, + 0xb8, 0x80, 0xc9, 0x7d, 0x82, 0xb4, 0xae, 0xc0, 0x88, 0x38, 0x28, 0xa3, +}; +static const unsigned char kat2802_addinreseed[] = {0}; +static const unsigned char kat2802_addin0[] = {0}; +static const unsigned char kat2802_addin1[] = {0}; +static const unsigned char kat2802_retbits[] = { + 0x55, 0xac, 0x40, 0x8c, 0xea, 0x1f, 0xe3, 0xb1, 0xba, 0xd3, 0xe5, 0x12, + 0x7e, 0x42, 0xfc, 0xc8, 0x48, 0x9c, 0x19, 0x16, 0x6a, 0x86, 0xba, 0xb2, + 0x12, 0xbf, 0x06, 0x7b, 0x8b, 0x05, 0x82, 0x09, 0x99, 0x89, 0x9f, 0x42, + 0x2f, 0x7b, 0x37, 0x5b, 0x59, 0x5b, 0xeb, 0xbc, 0x78, 0x6a, 0x94, 0xec, + 0x14, 0xe3, 0xe3, 0x14, 0x9c, 0x9d, 0xf1, 0x67, 0xec, 0xdc, 0x63, 0x5d, + 0xb5, 0xbc, 0xfb, 0xbb, +}; +static const struct drbg_kat_pr_false kat2802_t = { + 11, kat2802_entropyin, kat2802_nonce, kat2802_persstr, + kat2802_entropyinreseed, kat2802_addinreseed, kat2802_addin0, + kat2802_addin1, kat2802_retbits +}; +static const struct drbg_kat kat2802 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2802_t +}; + +static const unsigned char kat2803_entropyin[] = { + 0x67, 0x2a, 0xaf, 0x34, 0x02, 0x38, 0x38, 0x1b, 0xa8, 0xd3, 0x1b, 0xeb, + 0x22, 0xbd, 0xc2, 0x63, 0xe8, 0x01, 0x8c, 0xfb, 0x94, 0x02, 0xab, 0xa7, + 0x69, 0xe4, 0x40, 0xaf, 0x29, 0xef, 0xe2, 0x7f, 0xa7, 0x9b, 0xcc, 0x91, + 0xcc, 0xcb, 0xae, 0x53, 0x10, 0x6a, 0x64, 0xd6, 0x5c, 0x07, 0x50, 0x5b, +}; +static const unsigned char kat2803_nonce[] = {0}; +static const unsigned char kat2803_persstr[] = { + 0x65, 0x4f, 0xb5, 0x8b, 0x7c, 0xb2, 0x49, 0x61, 0x04, 0x61, 0xa4, 0x1c, + 0xce, 0x27, 0x40, 0x21, 0x42, 0x60, 0x3f, 0xf3, 0x87, 0x95, 0xec, 0x6b, + 0x1a, 0x98, 0x66, 0x6d, 0xbf, 0x95, 0x38, 0xeb, 0xe1, 0x56, 0x40, 0x13, + 0x03, 0x74, 0x51, 0xbd, 0x33, 0x7e, 0x81, 0x42, 0xdb, 0x56, 0x76, 0x7b, +}; +static const unsigned char kat2803_entropyinreseed[] = { + 0x3a, 0x4f, 0x73, 0x1d, 0xe8, 0x29, 0xf0, 0x02, 0x9f, 0xa9, 0x9b, 0x24, + 0x99, 0x12, 0x2a, 0xb7, 0xb4, 0xb1, 0x59, 0x99, 0x93, 0x0b, 0xa3, 0x70, + 0x41, 0x7c, 0x87, 0x53, 0x96, 0x6e, 0x40, 0x27, 0x3f, 0x3d, 0x02, 0xa2, + 0xb1, 0x6a, 0x3b, 0xa5, 0xf4, 0x9b, 0xa2, 0xbf, 0xa0, 0xc1, 0xf6, 0x00, +}; +static const unsigned char kat2803_addinreseed[] = {0}; +static const unsigned char kat2803_addin0[] = {0}; +static const unsigned char kat2803_addin1[] = {0}; +static const unsigned char kat2803_retbits[] = { + 0xb6, 0x64, 0x96, 0xd4, 0x11, 0xc2, 0xb2, 0x99, 0x3e, 0x6e, 0x47, 0xf1, + 0x51, 0x15, 0xe1, 0x58, 0xc9, 0x37, 0x27, 0x99, 0x68, 0xc7, 0xd7, 0xd9, + 0xef, 0xc0, 0xa6, 0xb1, 0x2d, 0xe6, 0x66, 0x00, 0xd0, 0x93, 0x08, 0xee, + 0xbb, 0x4c, 0xa3, 0x18, 0xa3, 0x8e, 0x49, 0xf0, 0x91, 0x23, 0x61, 0xf5, + 0xf8, 0x86, 0xf7, 0xff, 0x21, 0xee, 0x54, 0xff, 0x11, 0x2f, 0x83, 0x02, + 0xcb, 0x1a, 0xd6, 0x3f, +}; +static const struct drbg_kat_pr_false kat2803_t = { + 12, kat2803_entropyin, kat2803_nonce, kat2803_persstr, + kat2803_entropyinreseed, kat2803_addinreseed, kat2803_addin0, + kat2803_addin1, kat2803_retbits +}; +static const struct drbg_kat kat2803 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2803_t +}; + +static const unsigned char kat2804_entropyin[] = { + 0xf3, 0xbe, 0x4e, 0x37, 0x70, 0x15, 0x30, 0x10, 0x79, 0xd1, 0x80, 0xca, + 0x28, 0x04, 0x54, 0xe3, 0x4f, 0x60, 0x64, 0x04, 0x0e, 0x35, 0x9b, 0xdf, + 0x09, 0x83, 0xa0, 0x99, 0x39, 0x42, 0x9d, 0x52, 0x62, 0xe6, 0xe5, 0xd8, + 0x66, 0x64, 0xfe, 0x92, 0x94, 0x45, 0xfe, 0x34, 0xab, 0xd9, 0x79, 0x4d, +}; +static const unsigned char kat2804_nonce[] = {0}; +static const unsigned char kat2804_persstr[] = { + 0x2a, 0xa1, 0xe4, 0x91, 0x95, 0x22, 0x32, 0xd3, 0x35, 0xc6, 0x73, 0x7f, + 0x47, 0x88, 0x71, 0xf5, 0xbf, 0x07, 0xf9, 0x67, 0xb8, 0x6f, 0x10, 0xa0, + 0x10, 0x3c, 0xfa, 0x2c, 0x31, 0xef, 0x5f, 0x5a, 0xd2, 0xe4, 0xdb, 0x48, + 0x24, 0xcb, 0x0a, 0xc3, 0xc2, 0x9a, 0xda, 0x3a, 0xb0, 0x28, 0xcb, 0x96, +}; +static const unsigned char kat2804_entropyinreseed[] = { + 0x9a, 0x6b, 0xe2, 0x9c, 0x44, 0x11, 0xd7, 0xde, 0x2e, 0x93, 0x21, 0xb0, + 0xd8, 0xc1, 0xee, 0x06, 0xd7, 0x99, 0x8a, 0x19, 0x34, 0xec, 0xe5, 0x34, + 0x5e, 0xd3, 0xfb, 0x49, 0x69, 0xa6, 0x81, 0x12, 0xc0, 0x05, 0x1e, 0xde, + 0x82, 0xa1, 0x9a, 0xfd, 0x76, 0xc4, 0x19, 0xe4, 0x69, 0x60, 0x36, 0x79, +}; +static const unsigned char kat2804_addinreseed[] = {0}; +static const unsigned char kat2804_addin0[] = {0}; +static const unsigned char kat2804_addin1[] = {0}; +static const unsigned char kat2804_retbits[] = { + 0x3c, 0x58, 0x55, 0x01, 0x51, 0xaa, 0x02, 0xfc, 0x55, 0x98, 0xef, 0xf9, + 0x21, 0xd2, 0xa0, 0x63, 0x63, 0x45, 0x95, 0x5b, 0xb0, 0x3e, 0x6c, 0x8a, + 0x39, 0xe7, 0xc9, 0xa9, 0x56, 0x55, 0xde, 0x29, 0x7c, 0x61, 0x99, 0xc0, + 0xf9, 0xe6, 0xc5, 0xe2, 0x28, 0x0e, 0x9e, 0x83, 0xe8, 0x53, 0x06, 0x95, + 0x8d, 0x5d, 0x37, 0xd7, 0x0b, 0xd8, 0x00, 0x91, 0xf0, 0xc5, 0x1f, 0x96, + 0xed, 0x74, 0xd4, 0x20, +}; +static const struct drbg_kat_pr_false kat2804_t = { + 13, kat2804_entropyin, kat2804_nonce, kat2804_persstr, + kat2804_entropyinreseed, kat2804_addinreseed, kat2804_addin0, + kat2804_addin1, kat2804_retbits +}; +static const struct drbg_kat kat2804 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2804_t +}; + +static const unsigned char kat2805_entropyin[] = { + 0xec, 0x97, 0x5b, 0x46, 0x29, 0x47, 0x11, 0xa8, 0xac, 0x5b, 0x1d, 0x19, + 0xb6, 0x0a, 0x69, 0x81, 0xbb, 0x06, 0x75, 0xc5, 0xe2, 0x02, 0xfa, 0xe9, + 0x3f, 0xb7, 0xca, 0x8a, 0xdf, 0xbc, 0x29, 0x07, 0xdb, 0x92, 0x3c, 0x78, + 0x6c, 0x40, 0x3f, 0xc5, 0x14, 0xf0, 0xdc, 0x46, 0xb0, 0x02, 0xfd, 0xfd, +}; +static const unsigned char kat2805_nonce[] = {0}; +static const unsigned char kat2805_persstr[] = { + 0xcf, 0xbb, 0xe0, 0x1c, 0xda, 0x29, 0x0c, 0x89, 0xb2, 0x84, 0x1f, 0x37, + 0x95, 0x2c, 0xfc, 0x1d, 0x9a, 0x42, 0x22, 0xfb, 0x42, 0x5e, 0x94, 0x53, + 0xde, 0x30, 0x7b, 0xa9, 0xf8, 0x2b, 0xc5, 0x73, 0x82, 0x68, 0x44, 0x84, + 0x80, 0x1e, 0xd6, 0x8b, 0x61, 0x51, 0xfc, 0x7d, 0xbb, 0x7a, 0x17, 0xba, +}; +static const unsigned char kat2805_entropyinreseed[] = { + 0xdc, 0x9c, 0x22, 0xb1, 0x00, 0x64, 0x62, 0xaf, 0x08, 0x61, 0x5e, 0xca, + 0x59, 0x98, 0xea, 0x81, 0xa8, 0x14, 0x11, 0xbe, 0x22, 0x6a, 0x24, 0x1c, + 0x38, 0xd4, 0x80, 0xe7, 0xae, 0x0a, 0xb5, 0xbb, 0x34, 0x72, 0x1f, 0x0a, + 0xb9, 0x22, 0x66, 0x33, 0xd6, 0x55, 0x67, 0x5f, 0xfd, 0x95, 0x34, 0x20, +}; +static const unsigned char kat2805_addinreseed[] = {0}; +static const unsigned char kat2805_addin0[] = {0}; +static const unsigned char kat2805_addin1[] = {0}; +static const unsigned char kat2805_retbits[] = { + 0xe5, 0x44, 0x66, 0x8d, 0xbc, 0xa5, 0xb3, 0x5b, 0xb5, 0x9a, 0xb0, 0x49, + 0x45, 0x64, 0x9c, 0xea, 0xd8, 0xd8, 0x22, 0xa1, 0xd8, 0xce, 0x12, 0x5e, + 0x3a, 0xe5, 0xdb, 0x8b, 0x23, 0xe3, 0xbc, 0xc0, 0x5b, 0xf6, 0x92, 0x1c, + 0xe9, 0x5b, 0x85, 0x76, 0x6b, 0x92, 0xc1, 0x3c, 0x59, 0xae, 0x83, 0xd9, + 0x08, 0x47, 0x1e, 0x03, 0xe0, 0x20, 0xfd, 0xeb, 0x59, 0xe5, 0xce, 0xa8, + 0x17, 0xa4, 0x88, 0x02, +}; +static const struct drbg_kat_pr_false kat2805_t = { + 14, kat2805_entropyin, kat2805_nonce, kat2805_persstr, + kat2805_entropyinreseed, kat2805_addinreseed, kat2805_addin0, + kat2805_addin1, kat2805_retbits +}; +static const struct drbg_kat kat2805 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2805_t +}; + +static const unsigned char kat2806_entropyin[] = { + 0xed, 0x64, 0xcf, 0x25, 0xe9, 0xca, 0x81, 0xe5, 0x57, 0x2e, 0xbc, 0xcb, + 0xf8, 0x92, 0xc8, 0xac, 0x9d, 0x88, 0xc2, 0x56, 0xb7, 0xdd, 0xd3, 0xf7, + 0xf4, 0x77, 0x57, 0x9f, 0x80, 0xea, 0x8f, 0xec, 0x7c, 0x45, 0x21, 0x59, + 0xb1, 0xa6, 0xac, 0x9c, 0x59, 0x76, 0x75, 0x04, 0xc0, 0x57, 0x3b, 0x29, +}; +static const unsigned char kat2806_nonce[] = {0}; +static const unsigned char kat2806_persstr[] = { + 0xf1, 0x9c, 0xf2, 0xf8, 0x21, 0x44, 0x0a, 0xdf, 0xa1, 0xf7, 0xf6, 0x34, + 0xa2, 0x69, 0x25, 0xdc, 0x63, 0xe2, 0x9b, 0x79, 0x93, 0xf7, 0x86, 0x05, + 0x58, 0xaf, 0xc4, 0xd7, 0xc6, 0x1f, 0x0d, 0x83, 0x14, 0x5c, 0xdb, 0x13, + 0x10, 0x2e, 0x51, 0x3e, 0xdd, 0xdf, 0xcf, 0x48, 0xbe, 0xf1, 0x74, 0x64, +}; +static const unsigned char kat2806_entropyinreseed[] = { + 0xd9, 0x1c, 0x7a, 0x31, 0xdc, 0x11, 0xed, 0xf5, 0xc7, 0x78, 0xbb, 0x1b, + 0xc9, 0x20, 0x67, 0xb6, 0xdf, 0x2b, 0x5b, 0x5e, 0x90, 0xc0, 0x4d, 0xf5, + 0x17, 0x25, 0x62, 0xbb, 0xd3, 0x89, 0x37, 0xad, 0x62, 0x71, 0x5c, 0x28, + 0x76, 0x51, 0xce, 0x8a, 0xd4, 0xbf, 0x4c, 0x80, 0xb1, 0x4c, 0x8c, 0x1e, +}; +static const unsigned char kat2806_addinreseed[] = { + 0x02, 0xba, 0xc9, 0x41, 0x71, 0xc1, 0x12, 0xc3, 0x77, 0x47, 0x69, 0x14, + 0x8f, 0x13, 0x7e, 0x6b, 0x72, 0xfd, 0x4b, 0xf9, 0xa7, 0x44, 0x64, 0xcd, + 0x24, 0xa7, 0xdf, 0xc6, 0xf7, 0x5c, 0xab, 0x82, 0xa1, 0x5e, 0x38, 0x47, + 0xaf, 0xe8, 0x69, 0x99, 0xd0, 0xf6, 0x65, 0x57, 0x7b, 0xba, 0x6c, 0x20, +}; +static const unsigned char kat2806_addin0[] = { + 0xff, 0xb7, 0x38, 0xe9, 0x75, 0xf4, 0x8c, 0x5a, 0x5a, 0x7d, 0x8a, 0x63, + 0xc4, 0x18, 0xab, 0xb0, 0x60, 0x4e, 0xfe, 0x3c, 0xec, 0xac, 0x61, 0x1b, + 0xdf, 0x29, 0x2e, 0x2a, 0xb4, 0x7a, 0x4d, 0x33, 0x09, 0x9e, 0xbd, 0xcb, + 0x0d, 0x6c, 0x89, 0xc5, 0x84, 0x9c, 0x1e, 0xd9, 0x69, 0x3c, 0x43, 0x5e, +}; +static const unsigned char kat2806_addin1[] = { + 0x45, 0x9f, 0x3d, 0x97, 0x9e, 0xda, 0x0f, 0x8f, 0x8c, 0x27, 0x37, 0x68, + 0xdf, 0x1f, 0x92, 0x34, 0x4a, 0xbf, 0xba, 0x4e, 0xae, 0xdf, 0x00, 0x35, + 0x6f, 0x02, 0x46, 0x1e, 0x44, 0x9d, 0xa1, 0x88, 0x43, 0xa4, 0x4b, 0x08, + 0xa4, 0x64, 0x13, 0xdd, 0x3a, 0x1e, 0xb1, 0xab, 0x5b, 0xd1, 0x46, 0xec, +}; +static const unsigned char kat2806_retbits[] = { + 0x2a, 0x6a, 0x38, 0xfb, 0x65, 0x75, 0xf5, 0x5c, 0xdd, 0xb7, 0x74, 0xef, + 0x51, 0xca, 0x9d, 0xb7, 0x2e, 0x72, 0x90, 0x65, 0xd1, 0x02, 0xe8, 0x66, + 0x87, 0x77, 0x98, 0x65, 0x1f, 0x18, 0x50, 0xcf, 0x3b, 0xe8, 0x08, 0xf6, + 0x37, 0x8f, 0x86, 0x0f, 0xcd, 0xe6, 0xfc, 0x63, 0x1b, 0x95, 0x5f, 0xa0, + 0x7b, 0x5b, 0x7f, 0x5d, 0xd1, 0xad, 0x1d, 0x1f, 0x32, 0x83, 0x7f, 0xfa, + 0x07, 0x31, 0x13, 0x83, +}; +static const struct drbg_kat_pr_false kat2806_t = { + 0, kat2806_entropyin, kat2806_nonce, kat2806_persstr, + kat2806_entropyinreseed, kat2806_addinreseed, kat2806_addin0, + kat2806_addin1, kat2806_retbits +}; +static const struct drbg_kat kat2806 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2806_t +}; + +static const unsigned char kat2807_entropyin[] = { + 0xc4, 0xa8, 0x15, 0x68, 0x2b, 0x8e, 0xc7, 0x83, 0x97, 0x6c, 0x7a, 0xec, + 0xfb, 0x71, 0x20, 0x1e, 0x5c, 0x25, 0xab, 0x4d, 0x20, 0x99, 0xff, 0x7f, + 0x08, 0x00, 0xa9, 0x1e, 0xfd, 0xbd, 0x88, 0x46, 0x59, 0x25, 0x8b, 0x1d, + 0xb9, 0xa1, 0x0d, 0x51, 0x8b, 0x0e, 0x11, 0x28, 0x5e, 0xfb, 0x98, 0x66, +}; +static const unsigned char kat2807_nonce[] = {0}; +static const unsigned char kat2807_persstr[] = { + 0x6d, 0x3b, 0x23, 0x47, 0xa6, 0x1b, 0x37, 0x35, 0x04, 0xd8, 0x55, 0x7a, + 0xcd, 0x1b, 0x86, 0xe8, 0xc4, 0x9d, 0x3c, 0x1c, 0x2f, 0x97, 0x59, 0x26, + 0x4a, 0x73, 0xf9, 0x64, 0xd1, 0x9b, 0xbe, 0xb7, 0xd5, 0x49, 0x0b, 0xd0, + 0x48, 0x64, 0x73, 0x3f, 0x9f, 0xd6, 0xc1, 0x40, 0xd0, 0x47, 0x5d, 0x9a, +}; +static const unsigned char kat2807_entropyinreseed[] = { + 0xf7, 0x6c, 0x5b, 0xfb, 0xed, 0xfe, 0x08, 0xa0, 0x0a, 0x72, 0x74, 0xed, + 0x2a, 0x70, 0xcc, 0xd7, 0x9d, 0xf3, 0xa6, 0x2a, 0x1c, 0x3b, 0xbd, 0x89, + 0xea, 0x4e, 0xf8, 0x50, 0x5b, 0x95, 0x41, 0x0e, 0xb6, 0x77, 0x36, 0x9d, + 0x26, 0x33, 0xcf, 0x6c, 0x96, 0x43, 0x05, 0xc3, 0xa3, 0xe8, 0xf6, 0x2b, +}; +static const unsigned char kat2807_addinreseed[] = { + 0xc8, 0x19, 0xd5, 0xec, 0x12, 0x6f, 0x00, 0xdf, 0x73, 0xef, 0x40, 0xc4, + 0xca, 0x1d, 0x1d, 0xe8, 0xb6, 0xe9, 0x38, 0x8b, 0x1b, 0xef, 0x50, 0x83, + 0x5b, 0xbe, 0x88, 0x0a, 0xe4, 0xa0, 0xf2, 0x01, 0xf2, 0xfe, 0xbf, 0xdd, + 0x41, 0x67, 0xbb, 0x47, 0xbf, 0x24, 0xb7, 0x82, 0xe0, 0x7b, 0xdc, 0x1b, +}; +static const unsigned char kat2807_addin0[] = { + 0x89, 0x77, 0x0a, 0x03, 0xe8, 0xec, 0x7a, 0x8c, 0x39, 0xd4, 0xa1, 0x85, + 0xf5, 0xa4, 0x57, 0xa9, 0x1f, 0xdb, 0x14, 0x9f, 0xef, 0xc9, 0xe7, 0xda, + 0xf0, 0x41, 0xfe, 0xf3, 0xe2, 0x32, 0xe8, 0x10, 0x17, 0x41, 0xd8, 0x6c, + 0xab, 0xc0, 0xaf, 0x59, 0xab, 0x8c, 0x3e, 0x2c, 0xc3, 0xf7, 0x1a, 0x9f, +}; +static const unsigned char kat2807_addin1[] = { + 0x6e, 0x24, 0x3b, 0x50, 0x6b, 0x47, 0x0c, 0xf3, 0x20, 0x9e, 0xc2, 0xf4, + 0x4f, 0x50, 0x5c, 0xc7, 0x4f, 0xf7, 0xa0, 0x14, 0x6d, 0x94, 0xf1, 0xb4, + 0xb0, 0xe6, 0x41, 0x9b, 0xb4, 0x19, 0xc4, 0xc1, 0x63, 0x4a, 0x82, 0xfc, + 0xd6, 0x22, 0xda, 0x52, 0x2b, 0x5d, 0x27, 0xc1, 0x61, 0x84, 0x66, 0x83, +}; +static const unsigned char kat2807_retbits[] = { + 0x4b, 0x6b, 0xef, 0x57, 0x5a, 0x55, 0x52, 0x18, 0x46, 0x9c, 0x8f, 0x79, + 0x34, 0x56, 0x5e, 0xe8, 0x23, 0x2c, 0xdb, 0x51, 0x1e, 0x25, 0xe4, 0xcf, + 0xe4, 0xbe, 0xde, 0x0d, 0xe0, 0x25, 0x4a, 0xc8, 0x00, 0x5c, 0x06, 0x15, + 0x85, 0x4d, 0x5a, 0xad, 0x53, 0x05, 0xe0, 0xcd, 0x06, 0xb6, 0x1d, 0x27, + 0x69, 0x73, 0x90, 0x77, 0x41, 0xb4, 0xb1, 0xe4, 0xb4, 0x4e, 0xf9, 0x75, + 0x46, 0x8b, 0x2d, 0xc9, +}; +static const struct drbg_kat_pr_false kat2807_t = { + 1, kat2807_entropyin, kat2807_nonce, kat2807_persstr, + kat2807_entropyinreseed, kat2807_addinreseed, kat2807_addin0, + kat2807_addin1, kat2807_retbits +}; +static const struct drbg_kat kat2807 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2807_t +}; + +static const unsigned char kat2808_entropyin[] = { + 0x3e, 0xcd, 0x19, 0xf7, 0x9b, 0x77, 0x94, 0x2e, 0xf8, 0x2c, 0x12, 0x0b, + 0x5d, 0x6b, 0x3e, 0x7a, 0x84, 0x26, 0x22, 0x98, 0xd1, 0x8d, 0x35, 0x14, + 0x0b, 0x55, 0x92, 0x36, 0xe8, 0xd4, 0x65, 0x39, 0x43, 0x39, 0xe7, 0x93, + 0x7b, 0x60, 0xbf, 0x96, 0xd7, 0x5b, 0x15, 0x0b, 0x99, 0x7b, 0xe7, 0x06, +}; +static const unsigned char kat2808_nonce[] = {0}; +static const unsigned char kat2808_persstr[] = { + 0xa2, 0x50, 0x19, 0x64, 0xf9, 0xb2, 0x33, 0x38, 0x4f, 0xa2, 0x83, 0x9e, + 0xe5, 0x95, 0x07, 0x38, 0xf0, 0xa3, 0x9d, 0x5e, 0xb9, 0x2b, 0x9f, 0x97, + 0x8c, 0x22, 0xcf, 0x02, 0x37, 0x14, 0x44, 0xb3, 0x11, 0x8f, 0x0d, 0x6d, + 0x2e, 0x36, 0x97, 0x08, 0x94, 0x2e, 0x63, 0xe0, 0xe4, 0x00, 0x61, 0xcc, +}; +static const unsigned char kat2808_entropyinreseed[] = { + 0xab, 0x5e, 0xac, 0x95, 0x06, 0x38, 0x4a, 0xd8, 0xae, 0x49, 0xb1, 0x11, + 0x2e, 0xeb, 0x9a, 0x24, 0x83, 0x76, 0x8e, 0xe6, 0xb3, 0xf0, 0xc2, 0x23, + 0x1e, 0x45, 0x65, 0x54, 0x5b, 0xaa, 0x94, 0xd5, 0xd0, 0x2b, 0xc2, 0x8a, + 0x3e, 0xb3, 0x35, 0xee, 0xa3, 0x3c, 0xc1, 0x00, 0xe2, 0xe4, 0xa0, 0xd6, +}; +static const unsigned char kat2808_addinreseed[] = { + 0x42, 0x5e, 0xb9, 0x6a, 0xf3, 0x5f, 0xb2, 0xfe, 0x78, 0x69, 0x93, 0xf0, + 0xb4, 0xdb, 0x33, 0x95, 0xfe, 0x08, 0xfd, 0x00, 0x2d, 0x8e, 0x29, 0x4b, + 0xd6, 0xd2, 0x42, 0x50, 0x91, 0x7c, 0x92, 0xfe, 0x45, 0x56, 0x86, 0xb5, + 0xa2, 0x9c, 0x44, 0x91, 0x0a, 0x85, 0xe3, 0xa3, 0x6c, 0xd7, 0xb0, 0x7c, +}; +static const unsigned char kat2808_addin0[] = { + 0x18, 0xda, 0x79, 0x90, 0x4a, 0xcf, 0x7c, 0x74, 0xb2, 0xbb, 0x48, 0xe2, + 0xf1, 0x73, 0x00, 0x38, 0xba, 0xc5, 0xdf, 0x65, 0x48, 0x15, 0xfa, 0xc8, + 0x88, 0x82, 0x6c, 0xff, 0xc8, 0x58, 0x1e, 0x96, 0x34, 0x57, 0xe2, 0x6e, + 0x90, 0x6c, 0x86, 0xb6, 0xcb, 0x86, 0x21, 0x33, 0x24, 0x0f, 0x49, 0xe4, +}; +static const unsigned char kat2808_addin1[] = { + 0x3e, 0xb1, 0xab, 0x2a, 0xf1, 0x8c, 0xad, 0xae, 0xab, 0x7b, 0x8e, 0x5c, + 0xa4, 0x54, 0xad, 0xc5, 0x5e, 0x67, 0xee, 0xd6, 0x8e, 0xb8, 0x60, 0xad, + 0xec, 0x3b, 0x9a, 0xbc, 0xaf, 0xda, 0xbb, 0x3b, 0xef, 0xe0, 0x22, 0x9a, + 0x61, 0x16, 0x98, 0x87, 0x3a, 0xdd, 0x42, 0x2e, 0x59, 0x6c, 0x84, 0x00, +}; +static const unsigned char kat2808_retbits[] = { + 0xe5, 0x4b, 0x61, 0x08, 0x04, 0xa2, 0xf9, 0x41, 0x2f, 0xa1, 0x54, 0xb8, + 0x85, 0xfa, 0xba, 0x9b, 0xdd, 0xc1, 0xf4, 0xe3, 0x7e, 0x71, 0x4a, 0x50, + 0x19, 0x92, 0xb0, 0xb8, 0x93, 0x28, 0x92, 0x6b, 0xc5, 0x02, 0x17, 0xa7, + 0xf4, 0x7b, 0x14, 0x0d, 0x41, 0xdf, 0xfa, 0xd7, 0x4e, 0x34, 0x3e, 0x91, + 0x72, 0x91, 0xba, 0x5b, 0x89, 0xdc, 0xf0, 0x00, 0x70, 0xa1, 0x59, 0xfe, + 0x22, 0x2a, 0x68, 0x8b, +}; +static const struct drbg_kat_pr_false kat2808_t = { + 2, kat2808_entropyin, kat2808_nonce, kat2808_persstr, + kat2808_entropyinreseed, kat2808_addinreseed, kat2808_addin0, + kat2808_addin1, kat2808_retbits +}; +static const struct drbg_kat kat2808 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2808_t +}; + +static const unsigned char kat2809_entropyin[] = { + 0xac, 0x59, 0xf2, 0x62, 0x84, 0xb8, 0xe8, 0x02, 0xe1, 0xaf, 0xa6, 0xbb, + 0x7a, 0x2f, 0x97, 0x91, 0x59, 0xd2, 0xc3, 0xab, 0x90, 0x3b, 0x62, 0xec, + 0x90, 0x14, 0xc1, 0x2a, 0xdb, 0x3d, 0x1f, 0x12, 0x62, 0xa4, 0x35, 0xfc, + 0x16, 0xbf, 0xd3, 0x01, 0x48, 0x12, 0xee, 0xf8, 0xa4, 0x51, 0xc4, 0xe3, +}; +static const unsigned char kat2809_nonce[] = {0}; +static const unsigned char kat2809_persstr[] = { + 0x5d, 0x49, 0x81, 0x23, 0x55, 0x6a, 0x05, 0x26, 0xc6, 0xaa, 0xfd, 0xc3, + 0x36, 0x16, 0xcd, 0xa0, 0x1e, 0xda, 0x9d, 0x8f, 0xd4, 0x2d, 0xa7, 0xda, + 0x4b, 0xe9, 0x87, 0x7f, 0x0b, 0x40, 0x43, 0x10, 0xde, 0x76, 0xdc, 0x48, + 0xb5, 0x44, 0x43, 0x8c, 0xae, 0xcf, 0x25, 0x63, 0x29, 0x78, 0x26, 0x1a, +}; +static const unsigned char kat2809_entropyinreseed[] = { + 0xd5, 0x65, 0xbf, 0xf0, 0x3c, 0x61, 0x74, 0x97, 0xac, 0xb5, 0x8f, 0xbe, + 0x01, 0x24, 0x97, 0xcd, 0xbf, 0x6e, 0xc2, 0x77, 0xb2, 0x2e, 0x1c, 0x21, + 0xe6, 0x5a, 0xea, 0x0f, 0x68, 0x49, 0x62, 0x74, 0x70, 0x75, 0xbd, 0x2c, + 0x4a, 0x1b, 0x18, 0x4c, 0xe4, 0x23, 0xf1, 0xa5, 0xee, 0x9e, 0x76, 0x2f, +}; +static const unsigned char kat2809_addinreseed[] = { + 0xb9, 0x57, 0x10, 0x00, 0x0d, 0x08, 0x55, 0x2f, 0xff, 0x16, 0x2f, 0xdf, + 0xf9, 0x05, 0xc3, 0x68, 0x24, 0x90, 0xbe, 0x38, 0x8a, 0xda, 0xed, 0xab, + 0xad, 0xe8, 0x82, 0x4b, 0x38, 0xbb, 0x47, 0x29, 0x12, 0x7b, 0x26, 0xf4, + 0x96, 0x86, 0xc7, 0x4c, 0x3e, 0x83, 0xd2, 0xf3, 0x7e, 0xe6, 0x70, 0xbf, +}; +static const unsigned char kat2809_addin0[] = { + 0xd5, 0xc3, 0x01, 0x97, 0x6a, 0x5c, 0xe6, 0x34, 0x9f, 0xa2, 0x9b, 0x30, + 0xd5, 0xed, 0x76, 0x1d, 0x9f, 0xb2, 0xe5, 0xe9, 0xf7, 0x62, 0x4b, 0x61, + 0x3a, 0x19, 0x8b, 0x40, 0xcc, 0x10, 0x7e, 0xcf, 0xb3, 0xd7, 0x72, 0x11, + 0x31, 0xea, 0x19, 0xb4, 0x01, 0x75, 0x1d, 0x85, 0xfb, 0x11, 0xbe, 0x90, +}; +static const unsigned char kat2809_addin1[] = { + 0x86, 0xa0, 0x0e, 0x4c, 0xa6, 0xe2, 0xc1, 0x93, 0x2d, 0xf0, 0x24, 0x8c, + 0x31, 0xcc, 0xb2, 0xab, 0x8d, 0x5f, 0xdd, 0x99, 0x1a, 0x2d, 0xb7, 0xcd, + 0x27, 0xe8, 0x24, 0xb2, 0x10, 0x7f, 0xf0, 0x0b, 0xf4, 0x6e, 0x5d, 0xf9, + 0x3d, 0x41, 0xd5, 0x78, 0xe6, 0x12, 0x36, 0xaa, 0x4f, 0x7b, 0x02, 0x74, +}; +static const unsigned char kat2809_retbits[] = { + 0xdb, 0x29, 0xec, 0xef, 0xa8, 0x71, 0x69, 0xfd, 0x87, 0xb5, 0x33, 0xdd, + 0xea, 0x1e, 0xc0, 0x0f, 0x50, 0xd2, 0x88, 0xe7, 0xff, 0xf4, 0x72, 0x93, + 0x49, 0xa8, 0x12, 0xdd, 0x20, 0xb1, 0x92, 0x96, 0x9d, 0x1c, 0x3f, 0x3b, + 0x87, 0x11, 0xfd, 0xd0, 0xd2, 0x68, 0x12, 0xdf, 0xbc, 0xa6, 0xa9, 0x19, + 0x08, 0x9b, 0xe2, 0x83, 0xbb, 0xfc, 0x94, 0x66, 0xf0, 0x0e, 0x1d, 0x1a, + 0x63, 0x94, 0xfb, 0x72, +}; +static const struct drbg_kat_pr_false kat2809_t = { + 3, kat2809_entropyin, kat2809_nonce, kat2809_persstr, + kat2809_entropyinreseed, kat2809_addinreseed, kat2809_addin0, + kat2809_addin1, kat2809_retbits +}; +static const struct drbg_kat kat2809 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2809_t +}; + +static const unsigned char kat2810_entropyin[] = { + 0xbe, 0xef, 0x8f, 0x0e, 0xd9, 0xd7, 0x71, 0x61, 0xdc, 0xb7, 0xb2, 0xda, + 0x5f, 0x03, 0x3e, 0x54, 0x6e, 0x7c, 0x1d, 0x3d, 0x4c, 0x4e, 0xd5, 0xa4, + 0x23, 0xe9, 0xa6, 0xe7, 0x06, 0x97, 0xed, 0xc8, 0x42, 0x23, 0x5a, 0x08, + 0xf9, 0xf6, 0x8f, 0x27, 0x90, 0x7c, 0x97, 0x36, 0xf4, 0xef, 0xc4, 0xc6, +}; +static const unsigned char kat2810_nonce[] = {0}; +static const unsigned char kat2810_persstr[] = { + 0x2d, 0x5e, 0xdc, 0xd6, 0x34, 0x50, 0x1c, 0x4b, 0x1d, 0x12, 0x36, 0xcf, + 0x9f, 0x86, 0x41, 0x93, 0xcf, 0x2c, 0xe7, 0xa7, 0x45, 0x7e, 0x6b, 0x9a, + 0xeb, 0xfb, 0xc8, 0xb6, 0x68, 0x5b, 0x79, 0xbc, 0x81, 0xb9, 0x43, 0x04, + 0x64, 0x0e, 0xc0, 0xaf, 0xa7, 0x01, 0xf6, 0xdb, 0x06, 0x85, 0x4a, 0x62, +}; +static const unsigned char kat2810_entropyinreseed[] = { + 0xe5, 0x3e, 0x04, 0x42, 0x37, 0x71, 0xfe, 0xdf, 0x9e, 0xce, 0x3f, 0xdf, + 0x04, 0xee, 0x8b, 0x66, 0x76, 0x6c, 0x97, 0x9f, 0x7e, 0xa3, 0xaa, 0xe2, + 0x58, 0xeb, 0x94, 0x72, 0xe1, 0xaa, 0x99, 0xb8, 0x17, 0x84, 0x7f, 0xc0, + 0x22, 0xf6, 0xbb, 0x0c, 0xa2, 0x8c, 0x0d, 0x6e, 0x6c, 0x63, 0x81, 0xa5, +}; +static const unsigned char kat2810_addinreseed[] = { + 0x38, 0x7f, 0xed, 0xd1, 0x27, 0x60, 0x0d, 0x3b, 0x9a, 0x1e, 0x40, 0xd4, + 0x7b, 0x61, 0xaa, 0x07, 0x25, 0xb8, 0x82, 0x9b, 0x81, 0x77, 0xee, 0x66, + 0x51, 0x08, 0x6d, 0x15, 0x01, 0x87, 0x8d, 0x59, 0x79, 0x3b, 0xee, 0x23, + 0xae, 0x21, 0x72, 0x03, 0xc2, 0xe2, 0x56, 0x5d, 0x83, 0xb8, 0xd6, 0x25, +}; +static const unsigned char kat2810_addin0[] = { + 0x94, 0xc3, 0x43, 0x01, 0x4f, 0xff, 0x90, 0xb6, 0x68, 0xd7, 0xbf, 0xd0, + 0xd7, 0x2d, 0xfd, 0xe1, 0xad, 0xff, 0xef, 0x71, 0x59, 0x57, 0xe0, 0xae, + 0xab, 0xfa, 0xa9, 0xf3, 0x7c, 0xb8, 0x5f, 0x5d, 0x01, 0x08, 0xdf, 0xf0, + 0x94, 0xa0, 0x64, 0xbc, 0x6f, 0xac, 0x05, 0x25, 0x64, 0xf2, 0x61, 0x5d, +}; +static const unsigned char kat2810_addin1[] = { + 0x46, 0x63, 0xff, 0x1f, 0x64, 0xbb, 0xc3, 0x51, 0xb1, 0x64, 0x6f, 0xcf, + 0x1c, 0xae, 0xef, 0xf5, 0xa2, 0xd5, 0x79, 0x6c, 0xe7, 0xbd, 0xbc, 0x39, + 0x3c, 0x1d, 0xf6, 0x2c, 0xa0, 0x44, 0x5f, 0xa3, 0x0d, 0xd0, 0x0f, 0x73, + 0x85, 0x56, 0x9b, 0x9e, 0x9b, 0xf6, 0x49, 0x02, 0x60, 0xb2, 0x34, 0x32, +}; +static const unsigned char kat2810_retbits[] = { + 0x06, 0xd6, 0x04, 0x87, 0xa5, 0x31, 0x7b, 0x28, 0x9e, 0x68, 0xa1, 0x71, + 0xa0, 0x09, 0x7e, 0xd4, 0xa3, 0x0d, 0x69, 0x91, 0xc5, 0xe8, 0xf5, 0xaf, + 0x2e, 0x88, 0x2c, 0x11, 0x09, 0xea, 0x3e, 0x36, 0x2a, 0x6c, 0x11, 0x5d, + 0x1f, 0xfe, 0xa0, 0x69, 0xa0, 0x9f, 0x50, 0x1b, 0xd6, 0xf0, 0x3c, 0x66, + 0xe8, 0xaf, 0xd5, 0x2a, 0x11, 0x47, 0xfe, 0xcb, 0x21, 0x63, 0x36, 0xe2, + 0x38, 0x2e, 0x18, 0x05, +}; +static const struct drbg_kat_pr_false kat2810_t = { + 4, kat2810_entropyin, kat2810_nonce, kat2810_persstr, + kat2810_entropyinreseed, kat2810_addinreseed, kat2810_addin0, + kat2810_addin1, kat2810_retbits +}; +static const struct drbg_kat kat2810 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2810_t +}; + +static const unsigned char kat2811_entropyin[] = { + 0xa8, 0x15, 0x7b, 0x1d, 0xd2, 0x9f, 0x1e, 0xd9, 0x5a, 0x70, 0x92, 0x2a, + 0xcc, 0xbb, 0x14, 0xe6, 0x83, 0xa1, 0x0d, 0x5d, 0x22, 0xca, 0x23, 0x11, + 0x94, 0x8d, 0x4e, 0xf0, 0x91, 0xc3, 0x73, 0x38, 0xd6, 0x96, 0x5a, 0x08, + 0xf9, 0x42, 0xe3, 0x37, 0x30, 0xe6, 0x36, 0xdc, 0x04, 0xad, 0xe1, 0x18, +}; +static const unsigned char kat2811_nonce[] = {0}; +static const unsigned char kat2811_persstr[] = { + 0x15, 0x06, 0x9f, 0xbb, 0x16, 0xc0, 0xd9, 0xca, 0xc6, 0x71, 0xc9, 0xef, + 0x23, 0x8c, 0x5e, 0x89, 0x66, 0xf9, 0xf2, 0x62, 0x75, 0x8d, 0x9a, 0x7c, + 0xb0, 0xc1, 0x96, 0xd9, 0x37, 0xc3, 0xc5, 0xa7, 0x90, 0x67, 0xb9, 0xe6, + 0x4e, 0x74, 0xd3, 0x06, 0x32, 0x1a, 0xd5, 0x8d, 0xda, 0x6d, 0x2b, 0xa8, +}; +static const unsigned char kat2811_entropyinreseed[] = { + 0xcb, 0xd6, 0xf2, 0x59, 0x94, 0x16, 0x70, 0x2c, 0x18, 0x15, 0xfa, 0x82, + 0x70, 0xb5, 0x49, 0x05, 0x99, 0x83, 0x30, 0xe8, 0xb2, 0xdb, 0xa6, 0xf9, + 0xd2, 0x34, 0xb6, 0x51, 0x76, 0xdb, 0xfc, 0x85, 0x79, 0xfb, 0x89, 0x9a, + 0xeb, 0x4a, 0xbb, 0x7a, 0x9d, 0x19, 0xd3, 0x26, 0x8d, 0x7c, 0xa1, 0xc8, +}; +static const unsigned char kat2811_addinreseed[] = { + 0x5c, 0x96, 0x08, 0x52, 0xe0, 0x5b, 0x9d, 0xee, 0x8a, 0xb4, 0xb4, 0x94, + 0x81, 0xde, 0xf6, 0x03, 0x67, 0x34, 0xb3, 0x9c, 0xb9, 0xbc, 0x99, 0x36, + 0x6c, 0x5c, 0x55, 0xa5, 0xd2, 0xea, 0x12, 0x79, 0xea, 0xdf, 0x73, 0xd3, + 0x10, 0x57, 0x84, 0x73, 0x6a, 0x30, 0xd8, 0xd0, 0x5d, 0xd5, 0x9a, 0xe5, +}; +static const unsigned char kat2811_addin0[] = { + 0x75, 0x69, 0xe6, 0xdb, 0x52, 0xe1, 0x47, 0x8e, 0x3c, 0xbe, 0xd5, 0x41, + 0x71, 0xa4, 0x16, 0xef, 0x69, 0xb6, 0xe6, 0xdc, 0x9b, 0x88, 0xfb, 0x3f, + 0x52, 0xc9, 0x5e, 0x0b, 0x68, 0x2d, 0x44, 0xbf, 0x5d, 0xa2, 0x7f, 0x63, + 0x92, 0x9d, 0x4e, 0xc4, 0x67, 0xbb, 0x32, 0xaa, 0x1c, 0x1d, 0xbf, 0x4c, +}; +static const unsigned char kat2811_addin1[] = { + 0xb3, 0xb9, 0xae, 0x19, 0xc3, 0x6e, 0xce, 0x86, 0x23, 0xfa, 0x47, 0xaa, + 0x82, 0x0f, 0x7c, 0x94, 0xbf, 0x20, 0x66, 0x4f, 0xea, 0x1e, 0x54, 0x4c, + 0x45, 0xcb, 0x55, 0x69, 0x5b, 0x21, 0xb3, 0x9c, 0x62, 0xe8, 0x51, 0xf7, + 0xa3, 0xe9, 0x17, 0x4e, 0x66, 0x2d, 0x8e, 0x97, 0x9a, 0x16, 0xf1, 0x19, +}; +static const unsigned char kat2811_retbits[] = { + 0x0e, 0x45, 0x94, 0xb7, 0x34, 0xe7, 0xfa, 0x15, 0xff, 0x6c, 0x08, 0x03, + 0x2d, 0xe7, 0xce, 0x3d, 0xdc, 0x47, 0xef, 0x3a, 0x02, 0x0b, 0x76, 0xb3, + 0xc9, 0x5f, 0xda, 0x71, 0x49, 0x9d, 0xef, 0x81, 0x8a, 0xf8, 0xd6, 0x25, + 0xbb, 0x81, 0xeb, 0x89, 0x25, 0x7d, 0x28, 0xdc, 0x68, 0xdc, 0x4c, 0x95, + 0x50, 0xe3, 0x5c, 0x09, 0x0a, 0x49, 0xcf, 0xf1, 0x6a, 0x65, 0x94, 0x8e, + 0xa2, 0x05, 0x74, 0x97, +}; +static const struct drbg_kat_pr_false kat2811_t = { + 5, kat2811_entropyin, kat2811_nonce, kat2811_persstr, + kat2811_entropyinreseed, kat2811_addinreseed, kat2811_addin0, + kat2811_addin1, kat2811_retbits +}; +static const struct drbg_kat kat2811 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2811_t +}; + +static const unsigned char kat2812_entropyin[] = { + 0x2e, 0x28, 0xe4, 0x58, 0xa1, 0xd3, 0x35, 0xf7, 0x4a, 0x1f, 0xb2, 0xe2, + 0x2e, 0xa5, 0xbe, 0x77, 0x83, 0xf7, 0x8c, 0x72, 0x1e, 0x7e, 0x68, 0x7b, + 0xba, 0x6a, 0xb9, 0xa5, 0xc9, 0x3e, 0x41, 0x14, 0xb4, 0x25, 0xba, 0x74, + 0x97, 0x8c, 0x2e, 0x68, 0xb4, 0x98, 0xfb, 0x53, 0xa7, 0x60, 0xd4, 0xe0, +}; +static const unsigned char kat2812_nonce[] = {0}; +static const unsigned char kat2812_persstr[] = { + 0x89, 0xcd, 0x5a, 0x82, 0x95, 0x3f, 0x88, 0x39, 0xb6, 0x13, 0x50, 0xa8, + 0x68, 0x4e, 0x92, 0x8c, 0x7d, 0xf7, 0x44, 0x93, 0x56, 0x2b, 0x5c, 0x7c, + 0x4b, 0x2f, 0x2f, 0x3e, 0xef, 0x74, 0xce, 0x5d, 0xb8, 0x8c, 0x2b, 0xc3, + 0xf0, 0xe5, 0xed, 0x03, 0xfa, 0x1b, 0xea, 0x84, 0x01, 0x4c, 0x3f, 0x9a, +}; +static const unsigned char kat2812_entropyinreseed[] = { + 0xc1, 0x6a, 0x67, 0x69, 0x37, 0x24, 0x0e, 0x05, 0x23, 0xc5, 0x66, 0x4f, + 0xe3, 0x7d, 0xa9, 0x24, 0x3b, 0x6e, 0x91, 0x50, 0x42, 0x00, 0x7c, 0x5a, + 0xc5, 0xaf, 0x4c, 0x33, 0x45, 0x19, 0xa5, 0x19, 0x5d, 0xd6, 0x41, 0x9d, + 0x0e, 0x1f, 0xcc, 0x86, 0xc9, 0xb9, 0x6a, 0x27, 0x22, 0x11, 0xac, 0xcd, +}; +static const unsigned char kat2812_addinreseed[] = { + 0xc3, 0x92, 0xdf, 0x2a, 0x33, 0x8e, 0x16, 0x81, 0xa0, 0x4d, 0xd1, 0x62, + 0x86, 0x0d, 0xdb, 0x3b, 0x2d, 0x55, 0x56, 0x6b, 0xa4, 0xe5, 0x14, 0xa3, + 0x71, 0xfc, 0x31, 0xa3, 0x56, 0xb9, 0xb5, 0xd4, 0x4f, 0x71, 0xa3, 0x94, + 0x9a, 0xbb, 0xfb, 0xc4, 0xb3, 0x33, 0x79, 0x39, 0xe2, 0xa9, 0x1d, 0xd6, +}; +static const unsigned char kat2812_addin0[] = { + 0x03, 0x42, 0xc1, 0x22, 0xb8, 0x84, 0x73, 0xb9, 0x51, 0xa2, 0x7b, 0xa4, + 0x54, 0x4b, 0xc3, 0x0a, 0x10, 0x44, 0xcf, 0xa5, 0x22, 0xaf, 0xf3, 0x4e, + 0xa1, 0x27, 0xc0, 0x19, 0x50, 0xa0, 0x76, 0xed, 0xd9, 0x7a, 0x4a, 0x2e, + 0x0f, 0x19, 0x33, 0xa7, 0x43, 0xae, 0x7b, 0x9a, 0x17, 0xcc, 0x7e, 0xbd, +}; +static const unsigned char kat2812_addin1[] = { + 0x21, 0x39, 0x80, 0x20, 0xe3, 0x72, 0x05, 0xc9, 0x6c, 0xc5, 0x95, 0x6e, + 0xb6, 0x2f, 0x28, 0x4b, 0x15, 0xea, 0x5e, 0x73, 0xc2, 0xc6, 0x5d, 0xf7, + 0x0f, 0xdd, 0xee, 0xcc, 0xa7, 0x9b, 0x85, 0x7b, 0x29, 0x8a, 0xa2, 0x1f, + 0x67, 0xfb, 0x20, 0x42, 0xa0, 0xb1, 0x8a, 0xb6, 0xca, 0x93, 0x69, 0xb6, +}; +static const unsigned char kat2812_retbits[] = { + 0x6c, 0xd8, 0x2d, 0xac, 0xda, 0x43, 0xcc, 0x66, 0x38, 0xbf, 0x6b, 0x17, + 0xa5, 0x63, 0x51, 0xc0, 0x0c, 0x58, 0x0f, 0x5a, 0xb0, 0xf5, 0xb6, 0x52, + 0xc9, 0x0f, 0x3e, 0x77, 0xa6, 0x37, 0x53, 0xd7, 0x83, 0x75, 0x1a, 0x4c, + 0x29, 0xaf, 0xe8, 0x28, 0x6e, 0x48, 0xf3, 0xe5, 0x73, 0xd5, 0xfa, 0x50, + 0xb5, 0x12, 0x5b, 0x4c, 0x71, 0x89, 0x2e, 0x7f, 0x09, 0x78, 0x1e, 0x8b, + 0x9c, 0x0f, 0x45, 0xf7, +}; +static const struct drbg_kat_pr_false kat2812_t = { + 6, kat2812_entropyin, kat2812_nonce, kat2812_persstr, + kat2812_entropyinreseed, kat2812_addinreseed, kat2812_addin0, + kat2812_addin1, kat2812_retbits +}; +static const struct drbg_kat kat2812 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2812_t +}; + +static const unsigned char kat2813_entropyin[] = { + 0xcb, 0x05, 0xe1, 0xee, 0x85, 0xac, 0x6e, 0x9f, 0x6e, 0x20, 0x89, 0xd1, + 0x35, 0xc7, 0xd4, 0x3a, 0x6b, 0xb1, 0x58, 0x1b, 0x73, 0x73, 0x36, 0x6b, + 0xe8, 0x60, 0x19, 0xfc, 0xbf, 0x92, 0x78, 0xb7, 0x84, 0xe0, 0xed, 0x78, + 0x66, 0x61, 0x43, 0x07, 0x30, 0xe6, 0xb0, 0x20, 0x41, 0x03, 0x5e, 0xe0, +}; +static const unsigned char kat2813_nonce[] = {0}; +static const unsigned char kat2813_persstr[] = { + 0x19, 0xa4, 0xf5, 0xce, 0x1e, 0x9a, 0x9f, 0x8a, 0x5a, 0x16, 0x18, 0xb2, + 0x35, 0x49, 0x0f, 0xf2, 0x2f, 0xc7, 0xb3, 0xa8, 0x11, 0x6d, 0x14, 0x43, + 0x59, 0x67, 0x6a, 0x43, 0x86, 0x06, 0x3b, 0x1b, 0xd0, 0x23, 0x09, 0x13, + 0x0b, 0x8d, 0x6c, 0x8a, 0x4b, 0xa3, 0xb4, 0x12, 0xf3, 0x6a, 0x48, 0x8b, +}; +static const unsigned char kat2813_entropyinreseed[] = { + 0xec, 0xc2, 0x94, 0x02, 0xfb, 0xfb, 0x7e, 0x81, 0x94, 0xb1, 0xf4, 0x45, + 0x29, 0x73, 0xcf, 0x27, 0x48, 0x86, 0x19, 0xd3, 0xec, 0xc9, 0xad, 0x6c, + 0x25, 0xec, 0xe7, 0x5b, 0xd5, 0x97, 0xe0, 0xe8, 0x66, 0xcb, 0x53, 0x32, + 0x4b, 0xa5, 0xf9, 0xb7, 0x8f, 0xaf, 0xe5, 0x69, 0x8c, 0x56, 0x0a, 0xe9, +}; +static const unsigned char kat2813_addinreseed[] = { + 0xf7, 0x54, 0xc6, 0x0d, 0x68, 0xce, 0x5f, 0xcd, 0xc7, 0xdf, 0x8c, 0xde, + 0x14, 0x7a, 0xf6, 0xd3, 0x19, 0x1b, 0xa4, 0x7f, 0x6a, 0x02, 0x92, 0x6d, + 0xee, 0xa2, 0xe5, 0xfc, 0x55, 0x88, 0xb0, 0xc2, 0x8d, 0x58, 0x06, 0x52, + 0x43, 0x8e, 0x18, 0xc7, 0xb8, 0xd5, 0x78, 0x37, 0xe8, 0x05, 0xf4, 0x39, +}; +static const unsigned char kat2813_addin0[] = { + 0xc7, 0x09, 0xca, 0xd8, 0x78, 0x5e, 0x54, 0xf3, 0xde, 0xa0, 0xdd, 0xd4, + 0x4a, 0x46, 0x38, 0x4a, 0x1e, 0x59, 0x4a, 0xbf, 0x9d, 0x9d, 0xb7, 0xeb, + 0xa0, 0x13, 0x15, 0x3c, 0xb9, 0xc7, 0x77, 0x37, 0x01, 0x1f, 0xd1, 0x39, + 0x19, 0x7c, 0xf9, 0x67, 0xf5, 0x15, 0x44, 0x5c, 0xc0, 0x82, 0xe5, 0xe8, +}; +static const unsigned char kat2813_addin1[] = { + 0x2d, 0x95, 0x86, 0x82, 0x85, 0xeb, 0xd3, 0x12, 0x4e, 0x8d, 0x40, 0xd5, + 0xba, 0x0f, 0x53, 0xd5, 0x31, 0x1a, 0xde, 0x0f, 0x70, 0x7f, 0x22, 0x5f, + 0xc4, 0x7a, 0x0a, 0x5f, 0x0e, 0x79, 0x48, 0x87, 0x8e, 0xb8, 0xab, 0x98, + 0x5d, 0xac, 0x3d, 0x3a, 0x37, 0x8b, 0x2c, 0xf9, 0x15, 0x52, 0x39, 0xc6, +}; +static const unsigned char kat2813_retbits[] = { + 0x34, 0x51, 0x64, 0x22, 0xc3, 0x33, 0x15, 0xf6, 0xa5, 0x2c, 0x13, 0x19, + 0x65, 0xe3, 0x05, 0xe6, 0x97, 0x48, 0x8f, 0x01, 0x04, 0xdd, 0xb7, 0x19, + 0x36, 0xc2, 0x7d, 0xc6, 0x01, 0x2a, 0x6c, 0x41, 0x81, 0x33, 0x89, 0x79, + 0xc2, 0x38, 0xd9, 0x98, 0x20, 0xf4, 0xfb, 0xbc, 0x0b, 0xb1, 0x2f, 0x54, + 0xed, 0x39, 0x1a, 0x31, 0xd7, 0x4a, 0x4f, 0x1c, 0x89, 0x9c, 0xae, 0xb5, + 0xfa, 0x25, 0xde, 0x3e, +}; +static const struct drbg_kat_pr_false kat2813_t = { + 7, kat2813_entropyin, kat2813_nonce, kat2813_persstr, + kat2813_entropyinreseed, kat2813_addinreseed, kat2813_addin0, + kat2813_addin1, kat2813_retbits +}; +static const struct drbg_kat kat2813 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2813_t +}; + +static const unsigned char kat2814_entropyin[] = { + 0x85, 0x5a, 0xb5, 0x42, 0x14, 0xdc, 0x0a, 0x64, 0xf6, 0x69, 0x9f, 0x4f, + 0x3f, 0xc1, 0xbf, 0x1b, 0xa6, 0x4c, 0xbc, 0xe4, 0x2d, 0x32, 0x2b, 0x86, + 0xb4, 0x27, 0xd8, 0x86, 0x4e, 0x8f, 0x86, 0xef, 0x85, 0x43, 0x55, 0x78, + 0xfa, 0x20, 0x32, 0xce, 0x7c, 0x6b, 0x2d, 0xa4, 0x04, 0x4c, 0x78, 0x9f, +}; +static const unsigned char kat2814_nonce[] = {0}; +static const unsigned char kat2814_persstr[] = { + 0x7b, 0x71, 0x25, 0x85, 0x9d, 0xaa, 0xe9, 0x64, 0x49, 0xa3, 0x99, 0x7b, + 0x49, 0x97, 0x11, 0x30, 0x17, 0x77, 0x5e, 0x6d, 0x48, 0x76, 0x7e, 0x2c, + 0x89, 0xba, 0xf9, 0x8e, 0x77, 0xd1, 0x89, 0x17, 0x34, 0x3f, 0x72, 0x2b, + 0x41, 0x0c, 0x62, 0xfb, 0x69, 0x4c, 0x2e, 0x5d, 0x24, 0xa2, 0x59, 0x09, +}; +static const unsigned char kat2814_entropyinreseed[] = { + 0xda, 0xcf, 0xd6, 0x60, 0x33, 0xc7, 0x5f, 0x3d, 0x87, 0x5a, 0x23, 0xbe, + 0x63, 0x19, 0x8a, 0x67, 0x24, 0xfb, 0x14, 0x30, 0xb2, 0xc3, 0xb8, 0x8d, + 0x7b, 0xe8, 0xa9, 0x83, 0xa3, 0x18, 0xd0, 0x64, 0xb8, 0x0c, 0x63, 0x98, + 0xf1, 0xec, 0x35, 0x16, 0x85, 0x94, 0x55, 0x57, 0xcc, 0xad, 0x84, 0x71, +}; +static const unsigned char kat2814_addinreseed[] = { + 0x1a, 0x1c, 0xa1, 0xdd, 0x4f, 0xa3, 0x0f, 0x58, 0x50, 0xd7, 0xbc, 0x7d, + 0xa7, 0xd8, 0x4a, 0x8e, 0x16, 0x0e, 0xba, 0x1b, 0xb8, 0xd7, 0xc7, 0x1f, + 0xdc, 0x0b, 0xf0, 0xe0, 0x4d, 0x99, 0x95, 0x3f, 0x30, 0xbc, 0x51, 0xc0, + 0xf4, 0x72, 0x0a, 0xad, 0x3d, 0x35, 0x96, 0x38, 0xc1, 0x35, 0x51, 0xac, +}; +static const unsigned char kat2814_addin0[] = { + 0x93, 0x4b, 0x52, 0xe8, 0x6c, 0x93, 0x8f, 0x09, 0xc0, 0x05, 0x62, 0xac, + 0x21, 0x93, 0x47, 0xce, 0xa8, 0xb4, 0x89, 0x27, 0x76, 0xbf, 0x1b, 0x46, + 0x0b, 0x3d, 0x07, 0xe4, 0xaf, 0x2c, 0x13, 0xc6, 0x45, 0x8b, 0xe1, 0x08, + 0x07, 0xb5, 0xa6, 0xcb, 0xa2, 0xce, 0x00, 0x67, 0xd3, 0x94, 0x99, 0x48, +}; +static const unsigned char kat2814_addin1[] = { + 0x2d, 0x99, 0x10, 0x38, 0xc3, 0xc8, 0x6a, 0x63, 0x3d, 0x42, 0xc1, 0x7d, + 0xb0, 0xad, 0x47, 0xac, 0x45, 0x37, 0x19, 0xfe, 0xc3, 0xe3, 0x19, 0x88, + 0x8b, 0x77, 0x7e, 0xb0, 0x3d, 0x43, 0x3d, 0xd3, 0x06, 0xe3, 0x87, 0x0a, + 0x32, 0x97, 0x2e, 0xf9, 0x2e, 0x0e, 0x05, 0xb7, 0xef, 0xe6, 0xe5, 0x54, +}; +static const unsigned char kat2814_retbits[] = { + 0xf6, 0x22, 0xde, 0x89, 0x0e, 0xa3, 0x07, 0x89, 0x57, 0x4e, 0xf1, 0xbd, + 0xbe, 0x47, 0xb0, 0x11, 0xe8, 0xca, 0x53, 0x80, 0xc7, 0xc8, 0x6c, 0x8f, + 0xe8, 0x2a, 0xc0, 0x83, 0x1a, 0x00, 0x3b, 0x20, 0xaf, 0x8f, 0x39, 0x33, + 0x96, 0x97, 0x60, 0x0a, 0xc4, 0x75, 0xff, 0x97, 0xf4, 0x07, 0x36, 0x33, + 0x9a, 0xe3, 0x4d, 0xa7, 0xfa, 0x42, 0x18, 0x0d, 0x44, 0x4a, 0xfe, 0x8f, + 0xfd, 0x48, 0x62, 0x96, +}; +static const struct drbg_kat_pr_false kat2814_t = { + 8, kat2814_entropyin, kat2814_nonce, kat2814_persstr, + kat2814_entropyinreseed, kat2814_addinreseed, kat2814_addin0, + kat2814_addin1, kat2814_retbits +}; +static const struct drbg_kat kat2814 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2814_t +}; + +static const unsigned char kat2815_entropyin[] = { + 0x55, 0x4a, 0x4d, 0xbd, 0x10, 0xbd, 0x99, 0xcc, 0xaf, 0x1e, 0x95, 0x0e, + 0xac, 0xc0, 0x38, 0xef, 0x51, 0x82, 0x62, 0xc9, 0xd3, 0xc3, 0x0e, 0xaf, + 0x42, 0x1b, 0xee, 0x22, 0xe7, 0x83, 0x56, 0xf6, 0xc3, 0x45, 0x82, 0x2a, + 0xdb, 0x58, 0x89, 0xac, 0xd9, 0x60, 0xdb, 0xc6, 0x22, 0xe1, 0x30, 0x7b, +}; +static const unsigned char kat2815_nonce[] = {0}; +static const unsigned char kat2815_persstr[] = { + 0xeb, 0x10, 0xac, 0x13, 0x6e, 0xd6, 0xbc, 0x91, 0x01, 0x81, 0x8b, 0xbc, + 0x1e, 0x27, 0xf6, 0xf4, 0x45, 0x3e, 0x90, 0x88, 0xcf, 0x5a, 0xa4, 0xa8, + 0x9d, 0xb9, 0x33, 0xea, 0x00, 0xc8, 0xce, 0x21, 0x55, 0xfc, 0x06, 0x09, + 0x38, 0xda, 0x0a, 0xa0, 0x68, 0xdd, 0xfb, 0x4e, 0x44, 0xb9, 0xae, 0x8e, +}; +static const unsigned char kat2815_entropyinreseed[] = { + 0x5d, 0xca, 0xd8, 0x0c, 0x27, 0x49, 0x2f, 0x34, 0xf6, 0x87, 0x43, 0xbb, + 0x07, 0x69, 0x1b, 0x35, 0x2f, 0x53, 0x7f, 0x02, 0x2a, 0x1b, 0x63, 0xd9, + 0x6a, 0x91, 0xda, 0x39, 0x1d, 0xdc, 0x53, 0x08, 0x09, 0xd8, 0x74, 0xae, + 0x11, 0x88, 0x76, 0x98, 0x5a, 0xd2, 0xdc, 0xa9, 0x17, 0xad, 0x8b, 0x6d, +}; +static const unsigned char kat2815_addinreseed[] = { + 0x63, 0x24, 0x2c, 0x7e, 0xf2, 0x23, 0x58, 0x12, 0x05, 0x6e, 0xd1, 0x5c, + 0xbf, 0x68, 0xbe, 0x91, 0x73, 0xdb, 0xe1, 0x1a, 0xc7, 0x33, 0x13, 0x1e, + 0xc7, 0xe3, 0x92, 0xda, 0x9d, 0x27, 0x5b, 0xe2, 0x59, 0x1c, 0x95, 0xf3, + 0xd8, 0xf6, 0x71, 0xab, 0x21, 0x50, 0x74, 0x74, 0xa5, 0x9e, 0xca, 0x18, +}; +static const unsigned char kat2815_addin0[] = { + 0x25, 0x86, 0xa1, 0xaf, 0x83, 0x23, 0x76, 0xb5, 0x26, 0x67, 0x9c, 0xce, + 0x9d, 0x0d, 0xc5, 0x75, 0x10, 0x8d, 0x64, 0xcb, 0xf5, 0x40, 0x16, 0x7e, + 0xa3, 0x21, 0xd1, 0x4e, 0xc6, 0x72, 0xe4, 0xe9, 0xd9, 0x81, 0xf9, 0xf3, + 0xb3, 0x7a, 0x52, 0xb0, 0xbd, 0x42, 0xb6, 0x66, 0x69, 0xcc, 0xe1, 0x40, +}; +static const unsigned char kat2815_addin1[] = { + 0x6b, 0xc0, 0x88, 0x87, 0x46, 0xc1, 0x2f, 0x94, 0x58, 0x12, 0xd5, 0xfa, + 0x38, 0x2b, 0x25, 0x2c, 0x4e, 0x5c, 0x89, 0x4a, 0x8f, 0x65, 0xad, 0xd7, + 0x1e, 0x9c, 0x9d, 0x0f, 0xfd, 0x5b, 0x22, 0xf5, 0x37, 0xc4, 0x40, 0x87, + 0x0f, 0x0a, 0x0b, 0x70, 0xfa, 0xa5, 0x1a, 0xf7, 0x71, 0xdb, 0x84, 0x9e, +}; +static const unsigned char kat2815_retbits[] = { + 0xce, 0x62, 0x7e, 0xe4, 0xc9, 0xf2, 0x09, 0x61, 0x66, 0xaf, 0x58, 0xec, + 0x03, 0x29, 0x21, 0x84, 0x69, 0x12, 0x0f, 0x7f, 0x30, 0x3f, 0x7d, 0x12, + 0xb5, 0xd9, 0xb0, 0xee, 0xf3, 0x5c, 0x66, 0x48, 0x65, 0xfe, 0x85, 0x17, + 0x0f, 0xbb, 0xf5, 0x10, 0x60, 0xaa, 0xd0, 0xe6, 0xf7, 0xf6, 0x4f, 0xba, + 0x86, 0xfd, 0x4c, 0x71, 0xee, 0x57, 0xbb, 0x07, 0xb9, 0x61, 0x3a, 0x85, + 0x86, 0x11, 0xc8, 0xe3, +}; +static const struct drbg_kat_pr_false kat2815_t = { + 9, kat2815_entropyin, kat2815_nonce, kat2815_persstr, + kat2815_entropyinreseed, kat2815_addinreseed, kat2815_addin0, + kat2815_addin1, kat2815_retbits +}; +static const struct drbg_kat kat2815 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2815_t +}; + +static const unsigned char kat2816_entropyin[] = { + 0xd1, 0x99, 0xbb, 0xd5, 0x1c, 0xeb, 0xa0, 0x32, 0x3a, 0xc4, 0x91, 0xff, + 0x14, 0x52, 0x08, 0xef, 0xf3, 0xfb, 0x45, 0xf1, 0x7b, 0xd4, 0x99, 0xd0, + 0x0c, 0x79, 0xb5, 0xcd, 0x42, 0x92, 0x86, 0xad, 0x9e, 0x33, 0xd1, 0x00, + 0x59, 0x22, 0x34, 0x89, 0xac, 0xbc, 0x27, 0x96, 0x88, 0x04, 0x07, 0xee, +}; +static const unsigned char kat2816_nonce[] = {0}; +static const unsigned char kat2816_persstr[] = { + 0x67, 0x0d, 0x10, 0x83, 0xe6, 0xe0, 0xa8, 0x3b, 0x8a, 0xc6, 0xf2, 0x58, + 0xa6, 0x00, 0x4a, 0xed, 0x9b, 0x91, 0x17, 0xb6, 0xf9, 0x90, 0x2b, 0x4f, + 0xa8, 0xa1, 0x4f, 0xc5, 0x58, 0x0f, 0x3e, 0x9d, 0x40, 0x41, 0x3c, 0x72, + 0xc8, 0xce, 0x8d, 0x7c, 0x53, 0x62, 0x84, 0x95, 0xce, 0x29, 0x24, 0xf4, +}; +static const unsigned char kat2816_entropyinreseed[] = { + 0xd6, 0xa3, 0x3a, 0x4f, 0xba, 0x1e, 0x88, 0x39, 0xbc, 0x5f, 0xca, 0x6c, + 0x7b, 0xa6, 0x31, 0x71, 0x77, 0xc5, 0xc9, 0xa2, 0x98, 0x6b, 0x03, 0x97, + 0x8c, 0x9a, 0x43, 0xa8, 0x2f, 0x6b, 0x1f, 0x6c, 0xee, 0x44, 0x3e, 0x76, + 0x27, 0x28, 0x39, 0x93, 0x76, 0xdd, 0x86, 0x6d, 0x8a, 0x99, 0xba, 0x60, +}; +static const unsigned char kat2816_addinreseed[] = { + 0x6f, 0xad, 0xa6, 0x6c, 0xce, 0xa9, 0xe9, 0x52, 0x77, 0xce, 0x1d, 0xe3, + 0x5f, 0xcb, 0x5d, 0x1b, 0x42, 0xea, 0x35, 0xa0, 0x0e, 0xb5, 0x88, 0xab, + 0xd4, 0x06, 0x2c, 0x23, 0x16, 0x56, 0x6d, 0x0e, 0xf6, 0xae, 0x9f, 0xe3, + 0xb4, 0xe4, 0x9d, 0xd1, 0xd8, 0x6f, 0x07, 0xc9, 0x69, 0x55, 0x05, 0xfc, +}; +static const unsigned char kat2816_addin0[] = { + 0x2d, 0x78, 0xcb, 0x13, 0x16, 0x61, 0xc5, 0x5a, 0xee, 0xd6, 0x8c, 0x22, + 0x5e, 0x97, 0x10, 0x7a, 0xc6, 0x66, 0xc8, 0x4c, 0xca, 0xa7, 0x77, 0x0c, + 0x49, 0x8e, 0xa9, 0xed, 0xaf, 0x38, 0xe5, 0xc3, 0xe2, 0x41, 0xa5, 0x4f, + 0xa9, 0x31, 0x05, 0xef, 0xfc, 0xf8, 0x64, 0xdd, 0x0d, 0x74, 0xe3, 0x13, +}; +static const unsigned char kat2816_addin1[] = { + 0x06, 0xb1, 0x6d, 0x02, 0x6a, 0xca, 0x61, 0x0a, 0xf5, 0xe0, 0x84, 0xf7, + 0x58, 0x9f, 0x8c, 0x29, 0x66, 0xf8, 0xce, 0xce, 0xed, 0x4d, 0x2d, 0x56, + 0x0e, 0xd6, 0xaa, 0x52, 0x94, 0x50, 0x35, 0x87, 0xc8, 0x99, 0xb0, 0xe2, + 0xef, 0x0f, 0x22, 0x2d, 0xf0, 0xe7, 0xab, 0xbe, 0x89, 0x37, 0x12, 0x82, +}; +static const unsigned char kat2816_retbits[] = { + 0xd4, 0xf0, 0x44, 0x1b, 0x30, 0x3a, 0x63, 0x27, 0xc7, 0xfb, 0x75, 0x11, + 0x3e, 0xe6, 0x74, 0x6c, 0xff, 0xf5, 0xd2, 0xfe, 0xdf, 0x63, 0xe8, 0xc8, + 0xde, 0x8e, 0x2a, 0xf0, 0xf6, 0xa5, 0x94, 0x8a, 0x12, 0xa9, 0x4c, 0xa9, + 0x2e, 0x08, 0xbe, 0x8e, 0xb9, 0xbf, 0x5d, 0xa8, 0xfd, 0x4b, 0x45, 0xef, + 0xad, 0xc9, 0x32, 0x7f, 0x8e, 0x3a, 0x45, 0x8b, 0x0a, 0x3b, 0x74, 0xda, + 0xde, 0x4a, 0x33, 0x59, +}; +static const struct drbg_kat_pr_false kat2816_t = { + 10, kat2816_entropyin, kat2816_nonce, kat2816_persstr, + kat2816_entropyinreseed, kat2816_addinreseed, kat2816_addin0, + kat2816_addin1, kat2816_retbits +}; +static const struct drbg_kat kat2816 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2816_t +}; + +static const unsigned char kat2817_entropyin[] = { + 0xee, 0x95, 0x3e, 0xce, 0xfa, 0xb5, 0x55, 0x91, 0x3a, 0xef, 0xbf, 0xf2, + 0x4a, 0x58, 0x8b, 0xcc, 0x38, 0x06, 0x60, 0x75, 0x9e, 0x18, 0x91, 0xf6, + 0x8e, 0x60, 0x2e, 0xf7, 0xb0, 0x90, 0xbd, 0x33, 0x02, 0x6c, 0x2e, 0x34, + 0x6f, 0x67, 0xd3, 0x41, 0x51, 0xb6, 0xe6, 0x9a, 0x40, 0xd6, 0xd8, 0xd5, +}; +static const unsigned char kat2817_nonce[] = {0}; +static const unsigned char kat2817_persstr[] = { + 0xe0, 0x77, 0xd4, 0x2d, 0xfe, 0x69, 0x76, 0x20, 0xf2, 0x1a, 0x9f, 0x8a, + 0xd5, 0xea, 0xe6, 0xc8, 0x75, 0x89, 0xd9, 0xc1, 0xc3, 0x7d, 0x30, 0xdd, + 0xde, 0xf2, 0xab, 0x81, 0xcf, 0xba, 0xe9, 0x79, 0x75, 0x00, 0x79, 0x5c, + 0xe5, 0xa0, 0x0d, 0x79, 0xb3, 0x51, 0x8f, 0xee, 0xcb, 0x1e, 0xd8, 0xeb, +}; +static const unsigned char kat2817_entropyinreseed[] = { + 0x4e, 0xe2, 0xc4, 0x6c, 0xd9, 0x9e, 0x8b, 0x5d, 0x8f, 0xab, 0x2f, 0x0d, + 0x27, 0x20, 0x0e, 0x29, 0x92, 0xf1, 0x5a, 0xcb, 0xe2, 0xf1, 0x3a, 0x8f, + 0x40, 0x58, 0x77, 0xed, 0xf4, 0xff, 0x7e, 0xb2, 0x37, 0x3c, 0xca, 0xf4, + 0x02, 0xfa, 0x8a, 0xdf, 0x97, 0xe8, 0x06, 0xf5, 0x5f, 0xde, 0x21, 0x0c, +}; +static const unsigned char kat2817_addinreseed[] = { + 0x94, 0x4a, 0x1e, 0xe0, 0x31, 0x96, 0x7b, 0xd9, 0xd3, 0x52, 0x60, 0x6f, + 0x97, 0x0a, 0x3e, 0x52, 0x2f, 0x03, 0xb9, 0x38, 0x5d, 0x73, 0x51, 0x88, + 0x7e, 0x74, 0x82, 0xc2, 0x62, 0xee, 0x88, 0x4b, 0xda, 0xb3, 0xc7, 0xcf, + 0xd0, 0x25, 0x90, 0x75, 0x93, 0x10, 0x33, 0xc4, 0xbc, 0x19, 0x9f, 0x80, +}; +static const unsigned char kat2817_addin0[] = { + 0xc8, 0xfd, 0x47, 0x59, 0xc1, 0x27, 0x70, 0x51, 0xb6, 0x84, 0x1a, 0xe7, + 0x1e, 0xfc, 0xad, 0xc4, 0xf0, 0x97, 0x8c, 0x42, 0x26, 0x6d, 0x1f, 0xd4, + 0x87, 0x2b, 0x00, 0x51, 0xa4, 0x88, 0x45, 0xb8, 0xdf, 0xc5, 0xd2, 0xaa, + 0xba, 0x69, 0x2e, 0x08, 0xfe, 0x5f, 0x91, 0x81, 0xf0, 0xcd, 0xdd, 0x85, +}; +static const unsigned char kat2817_addin1[] = { + 0x2d, 0xe6, 0xbe, 0x84, 0x8d, 0xe7, 0xa0, 0x3b, 0xef, 0xd8, 0xfa, 0xb5, + 0x22, 0x8f, 0x23, 0x54, 0xb5, 0x87, 0x62, 0xfd, 0x42, 0x43, 0x8c, 0xdb, + 0x7c, 0xe5, 0x50, 0xef, 0x06, 0x37, 0xee, 0x30, 0xd7, 0xaa, 0x13, 0xed, + 0x01, 0xa7, 0x90, 0xac, 0xd4, 0x2f, 0xeb, 0x84, 0xad, 0xc8, 0xfa, 0x09, +}; +static const unsigned char kat2817_retbits[] = { + 0xa8, 0xed, 0x5b, 0xd8, 0x3c, 0x15, 0xec, 0xdb, 0x7d, 0xf0, 0xf6, 0xed, + 0x18, 0x6f, 0xb8, 0x99, 0xc9, 0x8a, 0x15, 0x4f, 0xee, 0x04, 0x75, 0x91, + 0x6f, 0xe1, 0x10, 0x89, 0xd4, 0x8f, 0x21, 0x74, 0x0f, 0x7c, 0xea, 0xa8, + 0x3f, 0xc5, 0x3f, 0x91, 0xc6, 0xb0, 0x3b, 0x16, 0x7b, 0x69, 0x7c, 0xf0, + 0x90, 0x53, 0x50, 0x9f, 0x10, 0x0f, 0x69, 0x98, 0xc9, 0x50, 0xec, 0xc6, + 0x34, 0xf2, 0x66, 0xee, +}; +static const struct drbg_kat_pr_false kat2817_t = { + 11, kat2817_entropyin, kat2817_nonce, kat2817_persstr, + kat2817_entropyinreseed, kat2817_addinreseed, kat2817_addin0, + kat2817_addin1, kat2817_retbits +}; +static const struct drbg_kat kat2817 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2817_t +}; + +static const unsigned char kat2818_entropyin[] = { + 0x0a, 0x34, 0xb8, 0x2b, 0x54, 0x64, 0x5f, 0x46, 0xe7, 0x4e, 0x41, 0x61, + 0x49, 0x8e, 0x75, 0xf5, 0xfe, 0x35, 0x53, 0x17, 0x38, 0xb9, 0xee, 0x00, + 0x2e, 0xec, 0xb3, 0xfd, 0x83, 0xc2, 0x17, 0xb1, 0xe0, 0xf9, 0x58, 0x89, + 0x7a, 0x3e, 0x88, 0x00, 0xd8, 0xc5, 0x88, 0x21, 0x89, 0xcf, 0x2f, 0x95, +}; +static const unsigned char kat2818_nonce[] = {0}; +static const unsigned char kat2818_persstr[] = { + 0x9a, 0x25, 0x1b, 0x28, 0xcd, 0xfd, 0x57, 0xfa, 0x1f, 0x58, 0xa0, 0x0e, + 0xd4, 0x23, 0xd5, 0x21, 0xd6, 0xe0, 0xa4, 0x03, 0x6e, 0x5a, 0x54, 0x9a, + 0xbd, 0x81, 0xe5, 0x3f, 0x17, 0x93, 0xcf, 0xa3, 0x16, 0x2c, 0xec, 0xcf, + 0x01, 0x00, 0x49, 0xa5, 0xc9, 0xdd, 0x55, 0x50, 0xff, 0x3f, 0xdd, 0x80, +}; +static const unsigned char kat2818_entropyinreseed[] = { + 0x9e, 0x4b, 0x5d, 0x5e, 0xc7, 0x03, 0x2c, 0x09, 0xde, 0x00, 0xc7, 0xfa, + 0xf6, 0x51, 0x5b, 0x05, 0xe5, 0x76, 0x46, 0x09, 0x2a, 0x3d, 0xf2, 0x08, + 0x3e, 0xd0, 0x6b, 0x61, 0xf9, 0x63, 0x2a, 0xa7, 0x02, 0x85, 0xa4, 0x3a, + 0xb0, 0xb5, 0x69, 0xfa, 0x42, 0x96, 0x84, 0xdf, 0xd2, 0x9b, 0xc4, 0x05, +}; +static const unsigned char kat2818_addinreseed[] = { + 0xfd, 0x44, 0x06, 0x0a, 0x04, 0xdf, 0x78, 0xe5, 0x55, 0xb9, 0x45, 0x6f, + 0xbc, 0x84, 0x0a, 0x5f, 0x4a, 0x29, 0xd0, 0xed, 0xb3, 0x59, 0x6b, 0x79, + 0x3c, 0x39, 0xf1, 0xa7, 0xd7, 0xec, 0xd7, 0xb7, 0x55, 0xf6, 0x98, 0x67, + 0x2e, 0xee, 0xef, 0x14, 0xf4, 0x28, 0x25, 0x54, 0x0a, 0xa4, 0x55, 0x8c, +}; +static const unsigned char kat2818_addin0[] = { + 0xdd, 0x06, 0x50, 0x94, 0xe4, 0x0c, 0x6c, 0xec, 0xe1, 0x9b, 0xa1, 0x2a, + 0xee, 0x2d, 0x37, 0xc6, 0x15, 0xa7, 0x89, 0xed, 0xbe, 0xca, 0xc7, 0x02, + 0x55, 0xd2, 0x60, 0x6a, 0xba, 0x6f, 0xff, 0xee, 0xae, 0x98, 0x27, 0x22, + 0x85, 0xcb, 0xb3, 0x75, 0xe7, 0xbb, 0x4d, 0x0b, 0x8c, 0x8b, 0x8c, 0xff, +}; +static const unsigned char kat2818_addin1[] = { + 0xb4, 0x51, 0x66, 0xe7, 0xf7, 0x55, 0x57, 0x1c, 0x72, 0xd4, 0x06, 0xe7, + 0x3a, 0x4a, 0xe6, 0xb3, 0xd3, 0x75, 0x41, 0x17, 0x74, 0x10, 0xab, 0xf2, + 0xfa, 0xef, 0x93, 0xd3, 0x0b, 0x4c, 0x67, 0x9c, 0xc9, 0xb3, 0x46, 0xf1, + 0x00, 0x6b, 0x24, 0xcf, 0xc4, 0x67, 0xe3, 0x78, 0xf1, 0x76, 0x29, 0x6d, +}; +static const unsigned char kat2818_retbits[] = { + 0xd7, 0xdd, 0xec, 0xf1, 0xcf, 0x61, 0x84, 0x1e, 0x65, 0xe6, 0x50, 0x84, + 0x3e, 0xb1, 0x57, 0xe2, 0xcb, 0xfc, 0x09, 0x9f, 0xae, 0x94, 0x36, 0x5a, + 0xb9, 0x50, 0x79, 0x4f, 0x91, 0x1a, 0x8f, 0x8b, 0x22, 0x7c, 0xf7, 0x34, + 0x89, 0xfd, 0x78, 0x31, 0xbf, 0x41, 0x0f, 0xab, 0x02, 0x6d, 0x90, 0xed, + 0x9d, 0x03, 0x12, 0x06, 0xa7, 0x59, 0xb1, 0x2c, 0x49, 0xa9, 0x58, 0x40, + 0x23, 0x63, 0xed, 0x7d, +}; +static const struct drbg_kat_pr_false kat2818_t = { + 12, kat2818_entropyin, kat2818_nonce, kat2818_persstr, + kat2818_entropyinreseed, kat2818_addinreseed, kat2818_addin0, + kat2818_addin1, kat2818_retbits +}; +static const struct drbg_kat kat2818 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2818_t +}; + +static const unsigned char kat2819_entropyin[] = { + 0xb5, 0x80, 0x99, 0x57, 0xb1, 0x79, 0xe5, 0x5b, 0x2b, 0xfe, 0x55, 0xf4, + 0x8d, 0x24, 0xf1, 0xfe, 0x81, 0x56, 0xa3, 0x6d, 0xf7, 0xa9, 0xed, 0x5f, + 0xec, 0xa0, 0x1c, 0x7a, 0xea, 0x01, 0x9b, 0xe7, 0x74, 0x82, 0x09, 0x33, + 0xb7, 0xec, 0x5e, 0x56, 0x91, 0x3d, 0x96, 0xeb, 0x67, 0x2f, 0xc0, 0x65, +}; +static const unsigned char kat2819_nonce[] = {0}; +static const unsigned char kat2819_persstr[] = { + 0xa1, 0x5d, 0x7e, 0xe8, 0x3b, 0x11, 0x57, 0xb9, 0xa5, 0x19, 0x8d, 0x20, + 0x1e, 0xfc, 0x46, 0x60, 0x82, 0x07, 0x24, 0x30, 0xc4, 0x84, 0x37, 0x5a, + 0xef, 0xc8, 0x57, 0xec, 0x23, 0x5f, 0x98, 0x8c, 0xfb, 0x28, 0x73, 0xaa, + 0x6d, 0x43, 0x31, 0xf8, 0x10, 0xa0, 0xc3, 0x88, 0x35, 0x8b, 0xb5, 0x2f, +}; +static const unsigned char kat2819_entropyinreseed[] = { + 0xd9, 0x89, 0xc2, 0xe2, 0xc3, 0x5a, 0x89, 0xca, 0x31, 0x42, 0x84, 0x4d, + 0x8a, 0x9b, 0xc0, 0x9d, 0xf2, 0xb1, 0xbc, 0x52, 0x5d, 0xec, 0x29, 0xe4, + 0x53, 0x8a, 0xfa, 0x6a, 0x7c, 0xae, 0x5a, 0xff, 0x97, 0xf9, 0x6d, 0x97, + 0x03, 0x11, 0x22, 0x60, 0x69, 0xed, 0x87, 0x68, 0x67, 0x9d, 0x2d, 0x1f, +}; +static const unsigned char kat2819_addinreseed[] = { + 0x57, 0x7f, 0x1f, 0x48, 0x18, 0xbd, 0x6e, 0x4f, 0xe0, 0xaf, 0xcd, 0x83, + 0x48, 0xb9, 0xf3, 0x74, 0xc9, 0x8e, 0xec, 0xf4, 0xba, 0x4a, 0xf5, 0x5c, + 0x3d, 0x17, 0xed, 0xe2, 0xa6, 0x4b, 0xbf, 0xee, 0x67, 0x03, 0xff, 0xe6, + 0x8b, 0xdf, 0xd2, 0x3a, 0x78, 0xc0, 0xcd, 0x79, 0xa6, 0x3e, 0xcc, 0xca, +}; +static const unsigned char kat2819_addin0[] = { + 0xdd, 0x6b, 0x7e, 0x68, 0xe8, 0x0c, 0x0b, 0xf3, 0x51, 0xe5, 0x0e, 0x4e, + 0xfc, 0x66, 0x15, 0x1e, 0x08, 0x43, 0xdf, 0x82, 0x1d, 0x11, 0xf5, 0xc2, + 0xae, 0xcd, 0xad, 0xe8, 0x28, 0x9d, 0x7a, 0x51, 0x75, 0xd4, 0x87, 0xa8, + 0xdd, 0x24, 0x81, 0x3c, 0x6b, 0xf9, 0x7c, 0xf7, 0x3a, 0xa1, 0x4f, 0x33, +}; +static const unsigned char kat2819_addin1[] = { + 0x3a, 0x29, 0xc7, 0xbc, 0xd4, 0x38, 0x79, 0x03, 0x4f, 0xf0, 0x4a, 0x9b, + 0x19, 0x27, 0xd3, 0x8d, 0xcc, 0x17, 0x6f, 0xdb, 0xb5, 0x8e, 0x9c, 0xc2, + 0x3e, 0x00, 0xa1, 0x4c, 0xf5, 0x6f, 0xb2, 0x6c, 0x32, 0xa3, 0x38, 0x34, + 0x4e, 0xa9, 0x7a, 0xaf, 0x41, 0x01, 0x07, 0x80, 0x13, 0x93, 0xf0, 0x77, +}; +static const unsigned char kat2819_retbits[] = { + 0xfe, 0x26, 0x30, 0x9d, 0xcc, 0x58, 0xcd, 0xb6, 0x41, 0xcd, 0xa5, 0x3f, + 0xe4, 0x43, 0x3c, 0x25, 0x06, 0x79, 0x19, 0xe5, 0x55, 0x25, 0xa4, 0xa2, + 0x6c, 0x74, 0x28, 0x30, 0xda, 0xe2, 0x2c, 0x1b, 0xe3, 0xe7, 0xe9, 0x6f, + 0x6f, 0xa5, 0x02, 0xa6, 0xca, 0xbf, 0x6c, 0x79, 0xf3, 0x43, 0x8d, 0xb8, + 0x0d, 0x58, 0x0c, 0x26, 0xe6, 0x75, 0xf9, 0x39, 0xa9, 0x51, 0x83, 0x27, + 0x2c, 0xc8, 0x16, 0xc9, +}; +static const struct drbg_kat_pr_false kat2819_t = { + 13, kat2819_entropyin, kat2819_nonce, kat2819_persstr, + kat2819_entropyinreseed, kat2819_addinreseed, kat2819_addin0, + kat2819_addin1, kat2819_retbits +}; +static const struct drbg_kat kat2819 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2819_t +}; + +static const unsigned char kat2820_entropyin[] = { + 0xa1, 0x9f, 0x8c, 0xfa, 0x22, 0x3a, 0xd1, 0xb2, 0x5d, 0x10, 0x9d, 0x90, + 0x1a, 0x10, 0x61, 0xe8, 0xfb, 0x02, 0x37, 0x59, 0x86, 0x90, 0x65, 0x4c, + 0x83, 0xf1, 0x27, 0x1c, 0xa7, 0xdb, 0x6a, 0x0c, 0x8a, 0x0e, 0x09, 0x3b, + 0x7e, 0x80, 0x31, 0x4f, 0xa6, 0x80, 0x14, 0x39, 0x7c, 0x12, 0xed, 0xea, +}; +static const unsigned char kat2820_nonce[] = {0}; +static const unsigned char kat2820_persstr[] = { + 0xef, 0x6b, 0x17, 0xca, 0x95, 0xa7, 0x4a, 0x72, 0xf1, 0x03, 0x50, 0x06, + 0xc0, 0xb9, 0x94, 0x06, 0xf6, 0xe2, 0xe7, 0xdc, 0xc9, 0x08, 0x92, 0xd0, + 0xf3, 0x1e, 0xd0, 0xab, 0xa7, 0xfa, 0x36, 0x94, 0x45, 0x9c, 0xd3, 0xde, + 0x63, 0x2f, 0xef, 0x04, 0xaf, 0xdc, 0x31, 0xfa, 0x32, 0x6e, 0x42, 0x4a, +}; +static const unsigned char kat2820_entropyinreseed[] = { + 0x12, 0x96, 0x22, 0x7f, 0xec, 0x4c, 0x2b, 0xac, 0x91, 0x44, 0x16, 0xdd, + 0x33, 0xe3, 0x0d, 0xcf, 0x3e, 0x96, 0x4d, 0x64, 0xd2, 0xea, 0x6c, 0x9d, + 0xd3, 0x97, 0xe8, 0x3c, 0x1c, 0x2d, 0xd1, 0x73, 0xbc, 0xea, 0xc9, 0x04, + 0xdf, 0x23, 0x30, 0x98, 0xff, 0x7b, 0x53, 0x19, 0xe8, 0x9b, 0x74, 0x8b, +}; +static const unsigned char kat2820_addinreseed[] = { + 0xa4, 0xfa, 0x86, 0xd5, 0xd2, 0xdd, 0x13, 0x68, 0xa9, 0x3b, 0xdf, 0x19, + 0xe4, 0x07, 0x1e, 0xcf, 0x2d, 0x4f, 0xc3, 0xcb, 0xed, 0x04, 0xf5, 0x44, + 0xfd, 0xb9, 0x61, 0x83, 0xea, 0x5a, 0x55, 0xb9, 0xc2, 0x93, 0x63, 0x6f, + 0xe0, 0x98, 0xe2, 0x71, 0x0d, 0x95, 0x2a, 0x51, 0x1a, 0x36, 0xa6, 0x6d, +}; +static const unsigned char kat2820_addin0[] = { + 0xbd, 0x20, 0x3c, 0xdd, 0x94, 0x30, 0x7b, 0xab, 0x1a, 0x53, 0x73, 0x4a, + 0x3a, 0x45, 0x1f, 0x0b, 0x03, 0x86, 0x14, 0x89, 0x21, 0x86, 0xb2, 0x68, + 0x77, 0xb2, 0xc1, 0xc8, 0x49, 0x2b, 0x03, 0x98, 0x6e, 0x2e, 0xc4, 0xae, + 0xeb, 0x09, 0xd2, 0xe9, 0x06, 0xe7, 0x8c, 0x1c, 0x23, 0x4f, 0xa6, 0x75, +}; +static const unsigned char kat2820_addin1[] = { + 0x63, 0x1c, 0xf0, 0x31, 0x7b, 0x71, 0x3d, 0x07, 0xce, 0x74, 0xf7, 0xb0, + 0x5f, 0xf4, 0xe7, 0xa1, 0x58, 0xc7, 0x69, 0x99, 0x3d, 0x35, 0x73, 0x25, + 0xf8, 0xe9, 0xd1, 0x6b, 0x25, 0x07, 0x6b, 0xc9, 0xb0, 0xfe, 0xbb, 0xbd, + 0x66, 0xbf, 0x23, 0xfb, 0xc9, 0xc2, 0x72, 0x86, 0xdc, 0x16, 0x63, 0xe7, +}; +static const unsigned char kat2820_retbits[] = { + 0x40, 0x11, 0x76, 0x18, 0x5d, 0x33, 0xef, 0x08, 0xd0, 0xb6, 0x5a, 0x5b, + 0x85, 0x3d, 0x57, 0x58, 0x32, 0x50, 0xdd, 0x2e, 0xfa, 0xf4, 0x4c, 0xa0, + 0xf9, 0x87, 0xb4, 0x5f, 0x89, 0xea, 0xfe, 0xb5, 0x2d, 0x2f, 0x43, 0x46, + 0xbf, 0x9b, 0x9d, 0x0b, 0x7d, 0xd4, 0xf7, 0x12, 0x6e, 0x7d, 0x89, 0xdd, + 0x32, 0xf5, 0x3b, 0x73, 0x7c, 0xef, 0x79, 0xab, 0x5d, 0xd0, 0x79, 0x4f, + 0xb8, 0xa4, 0xc8, 0x9d, +}; +static const struct drbg_kat_pr_false kat2820_t = { + 14, kat2820_entropyin, kat2820_nonce, kat2820_persstr, + kat2820_entropyinreseed, kat2820_addinreseed, kat2820_addin0, + kat2820_addin1, kat2820_retbits +}; +static const struct drbg_kat kat2820 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2820_t +}; + +static const unsigned char kat2821_entropyin[] = { + 0xf5, 0x2b, 0x9e, 0x21, 0x16, 0x05, 0x27, 0x7c, 0x77, 0x20, 0xc9, 0xa6, + 0xe2, 0x52, 0x84, 0x6e, 0x54, 0xd9, 0xf1, 0xce, 0x44, 0x2e, 0xd8, 0x91, + 0xc5, 0x8d, 0xba, 0x70, 0xc5, 0x8a, 0x8a, 0x3b, 0x59, 0xbb, 0xac, 0x22, + 0xfa, 0x78, 0xdc, 0x26, 0x83, 0xbe, 0x96, 0x4a, 0x7b, 0x33, 0x49, 0xf3, +}; +static const unsigned char kat2821_nonce[] = {0}; +static const unsigned char kat2821_persstr[] = {0}; +static const unsigned char kat2821_entropyinreseed[] = { + 0xa1, 0x6a, 0xe5, 0x8c, 0x90, 0x0f, 0xd2, 0xc8, 0x94, 0x45, 0xd6, 0xb1, + 0x77, 0x5b, 0x4e, 0xd8, 0x79, 0xb9, 0x18, 0xa5, 0x77, 0x62, 0x26, 0x87, + 0xe5, 0xe7, 0x66, 0x85, 0xf0, 0x5d, 0x04, 0x26, 0x50, 0x58, 0x28, 0x6a, + 0x1a, 0x42, 0x79, 0x4a, 0xbe, 0x44, 0xca, 0x79, 0x8e, 0x32, 0xed, 0xa1, +}; +static const unsigned char kat2821_addinreseed[] = {0}; +static const unsigned char kat2821_addin0[] = {0}; +static const unsigned char kat2821_addin1[] = {0}; +static const unsigned char kat2821_retbits[] = { + 0x5d, 0x25, 0x44, 0x95, 0x1b, 0x74, 0xe0, 0x9b, 0x86, 0x01, 0xc1, 0x9c, + 0x99, 0x30, 0x17, 0x84, 0x93, 0x8c, 0x59, 0x5b, 0x4d, 0xb3, 0xb2, 0xdf, + 0x47, 0x4b, 0x10, 0xca, 0xad, 0x9e, 0x49, 0x30, 0xe1, 0xf0, 0x10, 0x76, + 0x62, 0x40, 0x8e, 0xc3, 0x74, 0xdd, 0xee, 0x05, 0xd8, 0x45, 0x21, 0xe3, + 0xe9, 0xea, 0x7d, 0x21, 0x14, 0xf0, 0x3f, 0x9a, 0x9a, 0x92, 0xad, 0xa6, + 0x25, 0x3c, 0xc3, 0xe5, +}; +static const struct drbg_kat_pr_false kat2821_t = { + 0, kat2821_entropyin, kat2821_nonce, kat2821_persstr, + kat2821_entropyinreseed, kat2821_addinreseed, kat2821_addin0, + kat2821_addin1, kat2821_retbits +}; +static const struct drbg_kat kat2821 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2821_t +}; + +static const unsigned char kat2822_entropyin[] = { + 0xcf, 0x1d, 0xe6, 0x1c, 0xff, 0xd8, 0xed, 0x4e, 0x6e, 0xbe, 0x72, 0x46, + 0xef, 0x18, 0x55, 0x57, 0x03, 0x97, 0x92, 0xeb, 0xcb, 0x75, 0x08, 0x1b, + 0xa3, 0xf4, 0x7f, 0xe4, 0xee, 0x44, 0x2b, 0x73, 0x32, 0x74, 0xf4, 0x20, + 0x24, 0xd2, 0x4d, 0x2e, 0x19, 0x94, 0x0d, 0x88, 0xab, 0xcf, 0xfe, 0x40, +}; +static const unsigned char kat2822_nonce[] = {0}; +static const unsigned char kat2822_persstr[] = {0}; +static const unsigned char kat2822_entropyinreseed[] = { + 0xa5, 0x4d, 0x64, 0x42, 0x1d, 0xab, 0x04, 0x66, 0x06, 0xe1, 0x67, 0xc8, + 0x62, 0xe5, 0x57, 0xa4, 0xd4, 0xa8, 0xd5, 0xb4, 0xe8, 0x6f, 0x2b, 0x26, + 0x9f, 0x83, 0x36, 0xaf, 0x20, 0xd3, 0x3d, 0x5a, 0xc5, 0x31, 0x22, 0x92, + 0x79, 0x04, 0x9e, 0x40, 0x4c, 0x74, 0x95, 0x6b, 0x75, 0x37, 0x47, 0xb0, +}; +static const unsigned char kat2822_addinreseed[] = {0}; +static const unsigned char kat2822_addin0[] = {0}; +static const unsigned char kat2822_addin1[] = {0}; +static const unsigned char kat2822_retbits[] = { + 0x69, 0x21, 0x65, 0xd9, 0x93, 0x65, 0xee, 0x68, 0x3b, 0x71, 0x48, 0xf7, + 0x05, 0x0a, 0x0a, 0xbf, 0x2c, 0x36, 0x93, 0xb7, 0x77, 0x25, 0xd2, 0xba, + 0xbe, 0xa7, 0x1f, 0xb7, 0x16, 0x5b, 0xf7, 0x49, 0x8e, 0x03, 0xea, 0x82, + 0x00, 0xe5, 0xc5, 0x0f, 0xbc, 0x6b, 0xbc, 0xdc, 0x77, 0x49, 0x9f, 0x54, + 0x21, 0x38, 0x5a, 0x09, 0xbb, 0xc6, 0x92, 0x38, 0x27, 0xa3, 0x28, 0xee, + 0x49, 0x14, 0x31, 0xe6, +}; +static const struct drbg_kat_pr_false kat2822_t = { + 1, kat2822_entropyin, kat2822_nonce, kat2822_persstr, + kat2822_entropyinreseed, kat2822_addinreseed, kat2822_addin0, + kat2822_addin1, kat2822_retbits +}; +static const struct drbg_kat kat2822 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2822_t +}; + +static const unsigned char kat2823_entropyin[] = { + 0xbd, 0xf7, 0x42, 0x92, 0x60, 0xef, 0x6f, 0xc8, 0xa3, 0x81, 0x73, 0x68, + 0xfb, 0x72, 0xca, 0x1b, 0xcc, 0x05, 0x74, 0xbd, 0x53, 0x61, 0xd6, 0xf3, + 0x04, 0x31, 0x18, 0x7b, 0xec, 0x83, 0xc5, 0x2c, 0x66, 0x7f, 0x12, 0xfe, + 0xe1, 0x92, 0xc2, 0xfd, 0x91, 0x1b, 0x6f, 0x9d, 0xee, 0xe3, 0x8f, 0x30, +}; +static const unsigned char kat2823_nonce[] = {0}; +static const unsigned char kat2823_persstr[] = {0}; +static const unsigned char kat2823_entropyinreseed[] = { + 0xb6, 0x69, 0x8f, 0x96, 0x46, 0x31, 0x2c, 0xca, 0xb3, 0x03, 0x44, 0xf8, + 0xb5, 0xe8, 0x35, 0xaa, 0x47, 0xab, 0xd8, 0x3b, 0xf1, 0xc4, 0x0c, 0x3e, + 0xc4, 0x88, 0x34, 0xeb, 0xa6, 0x8e, 0x50, 0xba, 0xf5, 0x2e, 0x41, 0x77, + 0xa2, 0x15, 0xdc, 0x90, 0xf9, 0xe8, 0x76, 0x15, 0x62, 0xbe, 0xfb, 0xac, +}; +static const unsigned char kat2823_addinreseed[] = {0}; +static const unsigned char kat2823_addin0[] = {0}; +static const unsigned char kat2823_addin1[] = {0}; +static const unsigned char kat2823_retbits[] = { + 0x7d, 0xb8, 0x6c, 0x35, 0xf0, 0xa6, 0x94, 0xaa, 0xca, 0x6c, 0x09, 0x7b, + 0x18, 0x16, 0x42, 0x4d, 0x18, 0x33, 0xee, 0xc2, 0x00, 0xd1, 0x8a, 0x1e, + 0xf6, 0xcf, 0xc4, 0x9a, 0xb5, 0xff, 0x44, 0x4e, 0x3b, 0xb6, 0x06, 0x4f, + 0xf1, 0xcb, 0x6b, 0x1d, 0x63, 0xdd, 0xab, 0x2a, 0x2b, 0x8c, 0x18, 0xa1, + 0x1c, 0x4c, 0xcc, 0x3c, 0x41, 0x9e, 0x10, 0x6a, 0x03, 0xff, 0x57, 0xc9, + 0x07, 0xf7, 0xa7, 0x69, +}; +static const struct drbg_kat_pr_false kat2823_t = { + 2, kat2823_entropyin, kat2823_nonce, kat2823_persstr, + kat2823_entropyinreseed, kat2823_addinreseed, kat2823_addin0, + kat2823_addin1, kat2823_retbits +}; +static const struct drbg_kat kat2823 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2823_t +}; + +static const unsigned char kat2824_entropyin[] = { + 0xf1, 0xc7, 0x1c, 0x38, 0x5e, 0xf4, 0xc9, 0xb1, 0x55, 0xde, 0x46, 0xa8, + 0x85, 0x2a, 0xd8, 0x96, 0x22, 0x33, 0x72, 0xef, 0x8d, 0xb0, 0x6c, 0x1a, + 0x5a, 0xc4, 0xc8, 0x7a, 0x56, 0x13, 0x31, 0xe9, 0x23, 0x29, 0x96, 0xb5, + 0x48, 0xa7, 0xe7, 0x97, 0xe3, 0x4d, 0xfc, 0x0a, 0x06, 0x39, 0x83, 0x4a, +}; +static const unsigned char kat2824_nonce[] = {0}; +static const unsigned char kat2824_persstr[] = {0}; +static const unsigned char kat2824_entropyinreseed[] = { + 0x4c, 0x27, 0x5f, 0xc8, 0xce, 0x30, 0x10, 0x4b, 0x6b, 0x4e, 0x4c, 0x16, + 0xe2, 0x11, 0x99, 0xd3, 0xcb, 0xbb, 0xf7, 0x39, 0x3c, 0x05, 0x4c, 0x89, + 0xcb, 0x9c, 0x3b, 0x85, 0xe5, 0xaf, 0x5a, 0xb2, 0x5a, 0x26, 0x50, 0x23, + 0x09, 0x20, 0x2e, 0x8d, 0x78, 0xc1, 0xd3, 0x07, 0x40, 0x97, 0x3d, 0x0a, +}; +static const unsigned char kat2824_addinreseed[] = {0}; +static const unsigned char kat2824_addin0[] = {0}; +static const unsigned char kat2824_addin1[] = {0}; +static const unsigned char kat2824_retbits[] = { + 0xc7, 0xa9, 0x2d, 0xfd, 0x51, 0x94, 0x88, 0xb5, 0xf4, 0xaa, 0xcc, 0x42, + 0xd7, 0x04, 0x14, 0x6c, 0x72, 0x19, 0xf3, 0x3f, 0xf3, 0xb9, 0x30, 0xd4, + 0xfe, 0xd2, 0x28, 0x27, 0xef, 0x7d, 0xf2, 0x87, 0xe7, 0x1e, 0x0c, 0x72, + 0xca, 0xdd, 0x8f, 0xae, 0x20, 0xff, 0x0e, 0x05, 0x83, 0x08, 0xf4, 0x88, + 0xfc, 0x45, 0x1c, 0x3b, 0xec, 0x0d, 0x85, 0x48, 0x8d, 0x2b, 0x81, 0xf2, + 0xec, 0xd3, 0x2e, 0x2f, +}; +static const struct drbg_kat_pr_false kat2824_t = { + 3, kat2824_entropyin, kat2824_nonce, kat2824_persstr, + kat2824_entropyinreseed, kat2824_addinreseed, kat2824_addin0, + kat2824_addin1, kat2824_retbits +}; +static const struct drbg_kat kat2824 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2824_t +}; + +static const unsigned char kat2825_entropyin[] = { + 0x29, 0xa1, 0x00, 0xa2, 0x9a, 0x00, 0x2c, 0x98, 0xf3, 0xf5, 0xe8, 0x17, + 0x0d, 0x73, 0x1c, 0xc3, 0xfd, 0x2d, 0x8f, 0xdb, 0x4a, 0x3c, 0x68, 0x79, + 0x05, 0x7f, 0x88, 0xf9, 0x6f, 0xf7, 0xf6, 0x6f, 0x08, 0x5b, 0xb2, 0xd3, + 0x09, 0x57, 0xaa, 0x0d, 0xb7, 0x8a, 0x4e, 0xd2, 0x47, 0xa9, 0x39, 0xc9, +}; +static const unsigned char kat2825_nonce[] = {0}; +static const unsigned char kat2825_persstr[] = {0}; +static const unsigned char kat2825_entropyinreseed[] = { + 0x5e, 0x98, 0xaf, 0x56, 0xd5, 0x06, 0x6c, 0x99, 0xf1, 0x85, 0x01, 0x5e, + 0xb8, 0xe3, 0x6c, 0xc4, 0x35, 0x69, 0x0e, 0x96, 0x5f, 0xea, 0x9d, 0x2e, + 0xca, 0x10, 0xbf, 0xf1, 0x47, 0xc1, 0x8a, 0x2c, 0x06, 0x75, 0x5d, 0x7e, + 0x0c, 0xeb, 0x9c, 0x22, 0x03, 0xd6, 0xd4, 0x8e, 0xe5, 0x3e, 0xc0, 0xc4, +}; +static const unsigned char kat2825_addinreseed[] = {0}; +static const unsigned char kat2825_addin0[] = {0}; +static const unsigned char kat2825_addin1[] = {0}; +static const unsigned char kat2825_retbits[] = { + 0x92, 0x45, 0xcb, 0x55, 0x8f, 0x4d, 0xd7, 0xdd, 0x7c, 0xb4, 0x48, 0xfc, + 0x13, 0x10, 0xcf, 0x58, 0xcb, 0xd1, 0x8e, 0xa6, 0xd9, 0xc5, 0x89, 0x53, + 0xe3, 0xa8, 0x22, 0x21, 0xcb, 0x49, 0xa9, 0xa5, 0xaf, 0xd0, 0x2d, 0xfc, + 0xc8, 0x6f, 0xc4, 0x25, 0x84, 0xfb, 0x9c, 0xc1, 0xe2, 0x3c, 0x24, 0x83, + 0xbb, 0xc6, 0x1a, 0x4b, 0x14, 0x6b, 0x1c, 0x71, 0x93, 0x70, 0x5b, 0xfa, + 0x50, 0xfd, 0x67, 0xa0, +}; +static const struct drbg_kat_pr_false kat2825_t = { + 4, kat2825_entropyin, kat2825_nonce, kat2825_persstr, + kat2825_entropyinreseed, kat2825_addinreseed, kat2825_addin0, + kat2825_addin1, kat2825_retbits +}; +static const struct drbg_kat kat2825 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2825_t +}; + +static const unsigned char kat2826_entropyin[] = { + 0xa8, 0x07, 0x0c, 0xe6, 0xe7, 0x69, 0xff, 0x82, 0xe9, 0x0b, 0x9a, 0xe0, + 0xae, 0x91, 0x42, 0x0e, 0xf1, 0xc4, 0x61, 0x89, 0x37, 0xfe, 0x00, 0x6d, + 0x17, 0x99, 0x81, 0xff, 0xce, 0x04, 0xaf, 0xeb, 0x7f, 0x98, 0x82, 0x09, + 0x12, 0x51, 0x2a, 0xe4, 0x8d, 0x7e, 0x3c, 0xd2, 0xbe, 0x80, 0xda, 0x46, +}; +static const unsigned char kat2826_nonce[] = {0}; +static const unsigned char kat2826_persstr[] = {0}; +static const unsigned char kat2826_entropyinreseed[] = { + 0x3b, 0x14, 0x19, 0x7c, 0x3e, 0xaf, 0x4f, 0x3c, 0x7f, 0xd1, 0xd7, 0x5c, + 0xac, 0xcf, 0xfc, 0xa2, 0x07, 0x08, 0x3d, 0xab, 0x30, 0xcf, 0x31, 0xe0, + 0x14, 0x05, 0x61, 0x74, 0x08, 0x3a, 0xe2, 0xbf, 0x3c, 0xa8, 0x31, 0x95, + 0xfd, 0xe7, 0xd2, 0xed, 0x47, 0xa4, 0xbc, 0x77, 0xe9, 0x0b, 0x42, 0x04, +}; +static const unsigned char kat2826_addinreseed[] = {0}; +static const unsigned char kat2826_addin0[] = {0}; +static const unsigned char kat2826_addin1[] = {0}; +static const unsigned char kat2826_retbits[] = { + 0xbd, 0xc7, 0x46, 0x2f, 0x1b, 0xcd, 0x82, 0xe4, 0x05, 0x02, 0x2a, 0x5e, + 0xe5, 0x83, 0x45, 0xef, 0xfd, 0x90, 0xe4, 0x9a, 0x8f, 0x15, 0xbc, 0x1c, + 0xb1, 0xf7, 0xf5, 0x67, 0xab, 0x26, 0xdc, 0x05, 0x77, 0xce, 0xa1, 0xa9, + 0xc7, 0xe4, 0x63, 0xa8, 0x1a, 0xcd, 0xbf, 0x62, 0x90, 0x6b, 0x25, 0x65, + 0xe8, 0xbc, 0xb1, 0x6e, 0x19, 0x50, 0x30, 0xae, 0xf3, 0xd2, 0xcd, 0x60, + 0xfa, 0x98, 0x7a, 0x60, +}; +static const struct drbg_kat_pr_false kat2826_t = { + 5, kat2826_entropyin, kat2826_nonce, kat2826_persstr, + kat2826_entropyinreseed, kat2826_addinreseed, kat2826_addin0, + kat2826_addin1, kat2826_retbits +}; +static const struct drbg_kat kat2826 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2826_t +}; + +static const unsigned char kat2827_entropyin[] = { + 0x4c, 0x0d, 0x49, 0x89, 0xe2, 0x84, 0xff, 0xe3, 0x8f, 0x1a, 0x04, 0x58, + 0x18, 0x6e, 0x00, 0x78, 0x76, 0xda, 0xf4, 0x0c, 0x2e, 0xe7, 0x55, 0xec, + 0xcc, 0xb0, 0x9c, 0xb0, 0xdb, 0x7f, 0x49, 0x7f, 0x9b, 0x3a, 0x80, 0xba, + 0x78, 0x42, 0x6b, 0x04, 0x9c, 0x0c, 0xf7, 0x76, 0x6e, 0x1b, 0xd1, 0x29, +}; +static const unsigned char kat2827_nonce[] = {0}; +static const unsigned char kat2827_persstr[] = {0}; +static const unsigned char kat2827_entropyinreseed[] = { + 0xf4, 0xcb, 0x57, 0x00, 0x14, 0x5e, 0x33, 0x70, 0x01, 0x1f, 0x5d, 0x1b, + 0x0c, 0x10, 0x4e, 0xc3, 0x6f, 0x12, 0x40, 0xab, 0x58, 0x71, 0x22, 0x6c, + 0xe4, 0xde, 0x0e, 0x38, 0x62, 0xd9, 0x43, 0x2c, 0x74, 0x9e, 0x6f, 0x04, + 0xb5, 0x70, 0x8c, 0xdf, 0x24, 0xc0, 0xca, 0xf4, 0x91, 0x9e, 0x15, 0x20, +}; +static const unsigned char kat2827_addinreseed[] = {0}; +static const unsigned char kat2827_addin0[] = {0}; +static const unsigned char kat2827_addin1[] = {0}; +static const unsigned char kat2827_retbits[] = { + 0xa9, 0x36, 0xe1, 0x17, 0x9b, 0xa7, 0x5b, 0x2f, 0x3f, 0xab, 0x69, 0x03, + 0xec, 0x11, 0x61, 0xc8, 0x7b, 0x6e, 0x12, 0x44, 0x85, 0x2f, 0xb0, 0x61, + 0x32, 0x42, 0x99, 0x64, 0x51, 0x05, 0xbf, 0x5e, 0x38, 0xb6, 0x7c, 0x59, + 0x41, 0x20, 0x0e, 0xa5, 0xe6, 0xef, 0x29, 0x62, 0xec, 0xcc, 0xfe, 0x05, + 0x16, 0xe2, 0x03, 0x14, 0xf8, 0x3e, 0xe5, 0x81, 0x5a, 0x92, 0x5d, 0x70, + 0x26, 0x96, 0x5e, 0x00, +}; +static const struct drbg_kat_pr_false kat2827_t = { + 6, kat2827_entropyin, kat2827_nonce, kat2827_persstr, + kat2827_entropyinreseed, kat2827_addinreseed, kat2827_addin0, + kat2827_addin1, kat2827_retbits +}; +static const struct drbg_kat kat2827 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2827_t +}; + +static const unsigned char kat2828_entropyin[] = { + 0x62, 0x16, 0x63, 0xb9, 0xaa, 0x2f, 0x9f, 0x7f, 0xf6, 0x1e, 0x8d, 0xb0, + 0xd9, 0x90, 0x07, 0xea, 0x98, 0x19, 0xb5, 0x0a, 0xd4, 0x87, 0x64, 0x39, + 0xd6, 0x6f, 0xdf, 0xc5, 0x4b, 0xf1, 0x74, 0xfa, 0x74, 0x0f, 0xd6, 0xe1, + 0xd2, 0x29, 0x2b, 0x11, 0x95, 0xb3, 0x7d, 0x58, 0x4a, 0x7b, 0x46, 0x06, +}; +static const unsigned char kat2828_nonce[] = {0}; +static const unsigned char kat2828_persstr[] = {0}; +static const unsigned char kat2828_entropyinreseed[] = { + 0xf2, 0x47, 0x3f, 0xd7, 0x41, 0x86, 0xf1, 0x3d, 0x6d, 0x59, 0x9b, 0xf2, + 0x32, 0x68, 0x0f, 0x4d, 0xae, 0x2e, 0x8c, 0xe6, 0x9d, 0xaf, 0xd2, 0xdd, + 0x2a, 0x6b, 0x2b, 0x2b, 0x13, 0xdd, 0x0b, 0x2f, 0x6d, 0xc8, 0xcd, 0x43, + 0x61, 0x36, 0x21, 0x5e, 0xfb, 0x27, 0xbd, 0xd5, 0x30, 0xf9, 0x28, 0x10, +}; +static const unsigned char kat2828_addinreseed[] = {0}; +static const unsigned char kat2828_addin0[] = {0}; +static const unsigned char kat2828_addin1[] = {0}; +static const unsigned char kat2828_retbits[] = { + 0x9b, 0xbe, 0x30, 0x86, 0x8c, 0x8d, 0x86, 0xd0, 0x08, 0xc4, 0xf1, 0xbf, + 0x18, 0x05, 0x2c, 0x73, 0xa5, 0xc3, 0x6c, 0x06, 0x2c, 0x05, 0x57, 0xf6, + 0xee, 0x41, 0x76, 0xbc, 0xf3, 0x08, 0xb7, 0x74, 0x11, 0x42, 0x1c, 0xef, + 0x0c, 0x4c, 0x24, 0xa7, 0x40, 0xca, 0x31, 0xa4, 0x92, 0x1a, 0x86, 0x94, + 0x4d, 0xa2, 0xb5, 0x4d, 0x9d, 0x29, 0xc2, 0xd3, 0xb5, 0x3a, 0xd1, 0x7b, + 0xfa, 0x9c, 0x80, 0x8c, +}; +static const struct drbg_kat_pr_false kat2828_t = { + 7, kat2828_entropyin, kat2828_nonce, kat2828_persstr, + kat2828_entropyinreseed, kat2828_addinreseed, kat2828_addin0, + kat2828_addin1, kat2828_retbits +}; +static const struct drbg_kat kat2828 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2828_t +}; + +static const unsigned char kat2829_entropyin[] = { + 0x3e, 0x9c, 0x7a, 0xa2, 0xbb, 0x18, 0x21, 0x39, 0x33, 0xc7, 0xc6, 0xf2, + 0x23, 0x23, 0xbc, 0x29, 0xbb, 0x94, 0xae, 0xd2, 0x4f, 0xa2, 0xfa, 0xa7, + 0xca, 0xa5, 0x72, 0xc8, 0x6c, 0x10, 0x9f, 0x22, 0x47, 0xde, 0x31, 0x73, + 0x47, 0x98, 0x93, 0xfe, 0xa3, 0x25, 0xdc, 0x12, 0xc8, 0x36, 0x32, 0x44, +}; +static const unsigned char kat2829_nonce[] = {0}; +static const unsigned char kat2829_persstr[] = {0}; +static const unsigned char kat2829_entropyinreseed[] = { + 0x43, 0x56, 0xac, 0xee, 0x8a, 0x2f, 0x6d, 0x5b, 0xae, 0x66, 0x2d, 0x5e, + 0xd8, 0x95, 0x7b, 0xae, 0x47, 0xde, 0x31, 0xa9, 0x06, 0x1c, 0xd9, 0x5e, + 0x8e, 0x56, 0x7b, 0x74, 0xe5, 0x86, 0x80, 0x62, 0x29, 0x86, 0x14, 0x2f, + 0xd2, 0x99, 0xbf, 0x15, 0xa5, 0x07, 0x6a, 0x07, 0x36, 0x5b, 0xfe, 0x00, +}; +static const unsigned char kat2829_addinreseed[] = {0}; +static const unsigned char kat2829_addin0[] = {0}; +static const unsigned char kat2829_addin1[] = {0}; +static const unsigned char kat2829_retbits[] = { + 0x95, 0xa8, 0x5a, 0x17, 0x6a, 0xfa, 0xd0, 0x6e, 0x24, 0x5c, 0x50, 0xe5, + 0x96, 0x64, 0x1e, 0x15, 0xfd, 0x5d, 0x9d, 0xfa, 0x02, 0x42, 0x8b, 0xf8, + 0xdd, 0xb2, 0xa4, 0x49, 0x10, 0x6e, 0xe0, 0xf9, 0x28, 0x15, 0x53, 0x43, + 0xa6, 0xea, 0x69, 0xdc, 0xed, 0xe1, 0x4a, 0x71, 0x1c, 0x0c, 0x74, 0xb0, + 0xab, 0x23, 0x2d, 0xb7, 0xf4, 0xe6, 0x71, 0x14, 0x51, 0x4a, 0x2f, 0xbe, + 0x34, 0xa1, 0xce, 0x38, +}; +static const struct drbg_kat_pr_false kat2829_t = { + 8, kat2829_entropyin, kat2829_nonce, kat2829_persstr, + kat2829_entropyinreseed, kat2829_addinreseed, kat2829_addin0, + kat2829_addin1, kat2829_retbits +}; +static const struct drbg_kat kat2829 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2829_t +}; + +static const unsigned char kat2830_entropyin[] = { + 0xfa, 0x3c, 0xcd, 0xae, 0x46, 0x15, 0x78, 0xa2, 0x89, 0xed, 0xdb, 0x41, + 0x3c, 0xc8, 0x7a, 0x89, 0xdc, 0x67, 0x64, 0x8c, 0xd5, 0x24, 0x45, 0x56, + 0x3a, 0x7b, 0x3b, 0x47, 0xa8, 0x7c, 0x89, 0x33, 0x75, 0x03, 0x27, 0x15, + 0x11, 0xc7, 0x50, 0x35, 0xd9, 0x39, 0xbc, 0x50, 0x09, 0x8e, 0xd1, 0xcf, +}; +static const unsigned char kat2830_nonce[] = {0}; +static const unsigned char kat2830_persstr[] = {0}; +static const unsigned char kat2830_entropyinreseed[] = { + 0x35, 0x7a, 0x52, 0x86, 0x74, 0x50, 0xca, 0xde, 0xde, 0xfc, 0xc9, 0x3b, + 0x2e, 0x73, 0x00, 0x34, 0xa6, 0x43, 0xb9, 0xfd, 0xd0, 0x99, 0xb9, 0x84, + 0x9e, 0x81, 0x5a, 0x74, 0x37, 0xdb, 0xe3, 0x3e, 0x19, 0xb6, 0xa2, 0x82, + 0x6f, 0xa7, 0xff, 0xb5, 0xd7, 0xb9, 0xe5, 0x12, 0x22, 0x48, 0x4e, 0x44, +}; +static const unsigned char kat2830_addinreseed[] = {0}; +static const unsigned char kat2830_addin0[] = {0}; +static const unsigned char kat2830_addin1[] = {0}; +static const unsigned char kat2830_retbits[] = { + 0xd0, 0x97, 0x06, 0x2e, 0xe8, 0x06, 0xdc, 0xe8, 0xb2, 0x4c, 0xdb, 0x36, + 0xa1, 0x7e, 0x7c, 0x38, 0x7d, 0x4f, 0x78, 0x13, 0x39, 0xce, 0x87, 0xcb, + 0xb8, 0x91, 0x64, 0xaf, 0x15, 0xee, 0xd2, 0x20, 0x89, 0xf8, 0x3a, 0xe0, + 0xa3, 0x71, 0xd3, 0x66, 0x2e, 0xab, 0x2b, 0xdd, 0xca, 0x6b, 0xa0, 0x59, + 0x5d, 0xb1, 0x63, 0x32, 0x6d, 0x97, 0x1a, 0x36, 0x3d, 0xff, 0xef, 0x05, + 0x3b, 0x35, 0x7f, 0xcf, +}; +static const struct drbg_kat_pr_false kat2830_t = { + 9, kat2830_entropyin, kat2830_nonce, kat2830_persstr, + kat2830_entropyinreseed, kat2830_addinreseed, kat2830_addin0, + kat2830_addin1, kat2830_retbits +}; +static const struct drbg_kat kat2830 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2830_t +}; + +static const unsigned char kat2831_entropyin[] = { + 0xd5, 0x4e, 0x0e, 0x09, 0x6b, 0xff, 0xa6, 0x12, 0x1e, 0xec, 0xa0, 0xf8, + 0x15, 0x32, 0xea, 0xa0, 0xd3, 0xd1, 0xd9, 0x83, 0x61, 0x88, 0x3c, 0xcd, + 0x51, 0x6a, 0xb0, 0xdc, 0xcf, 0x7b, 0x0b, 0xfa, 0xa1, 0xb4, 0x38, 0x39, + 0xa1, 0x48, 0x4d, 0x15, 0xd2, 0x70, 0x62, 0x96, 0xe2, 0xad, 0x80, 0x36, +}; +static const unsigned char kat2831_nonce[] = {0}; +static const unsigned char kat2831_persstr[] = {0}; +static const unsigned char kat2831_entropyinreseed[] = { + 0x43, 0x27, 0x6e, 0x93, 0xb3, 0xfc, 0x7c, 0xfb, 0x49, 0x62, 0xd7, 0xb6, + 0x46, 0x50, 0x96, 0xaf, 0xfd, 0x5c, 0x1f, 0xe1, 0x22, 0x8f, 0xbe, 0xcc, + 0xb3, 0x2e, 0x93, 0xc2, 0x70, 0x46, 0x24, 0xab, 0x7d, 0x4d, 0x88, 0xf8, + 0x0f, 0x04, 0xb8, 0x1d, 0x2e, 0x44, 0x82, 0xdf, 0x6d, 0x4f, 0x94, 0xbe, +}; +static const unsigned char kat2831_addinreseed[] = {0}; +static const unsigned char kat2831_addin0[] = {0}; +static const unsigned char kat2831_addin1[] = {0}; +static const unsigned char kat2831_retbits[] = { + 0x54, 0xd2, 0x8f, 0xe0, 0x68, 0xbe, 0x42, 0xe8, 0x80, 0xfe, 0x2f, 0x0d, + 0x60, 0xa5, 0x2f, 0x9f, 0x9e, 0x6a, 0xb1, 0xd2, 0x2f, 0x11, 0x61, 0xea, + 0x55, 0x89, 0x27, 0x32, 0xe1, 0x92, 0x52, 0xe4, 0x8a, 0xec, 0x60, 0x0a, + 0x95, 0xaf, 0x17, 0xce, 0xed, 0x15, 0xaa, 0xf1, 0xc9, 0x93, 0x72, 0x6e, + 0x1a, 0xb0, 0x2d, 0x82, 0x15, 0x18, 0x4c, 0xe8, 0xde, 0x00, 0xc1, 0x38, + 0xa7, 0x9f, 0x67, 0x2c, +}; +static const struct drbg_kat_pr_false kat2831_t = { + 10, kat2831_entropyin, kat2831_nonce, kat2831_persstr, + kat2831_entropyinreseed, kat2831_addinreseed, kat2831_addin0, + kat2831_addin1, kat2831_retbits +}; +static const struct drbg_kat kat2831 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2831_t +}; + +static const unsigned char kat2832_entropyin[] = { + 0x05, 0x5e, 0xda, 0x65, 0x80, 0x19, 0xbe, 0x58, 0x47, 0xba, 0xaa, 0xd8, + 0x7f, 0xe2, 0x90, 0xc3, 0x7c, 0x05, 0x0b, 0xe4, 0xdb, 0xef, 0x1b, 0x07, + 0x08, 0x34, 0x49, 0xc9, 0xc8, 0x4d, 0xfd, 0x6d, 0xf4, 0xb6, 0x67, 0xea, + 0x92, 0x88, 0x3b, 0xe5, 0xe7, 0x16, 0x37, 0xa7, 0x24, 0x18, 0xc5, 0xb9, +}; +static const unsigned char kat2832_nonce[] = {0}; +static const unsigned char kat2832_persstr[] = {0}; +static const unsigned char kat2832_entropyinreseed[] = { + 0xc8, 0xda, 0x53, 0x7f, 0xdc, 0x88, 0xc0, 0x20, 0x2c, 0x6d, 0x58, 0xd3, + 0xf7, 0xfc, 0x0f, 0x00, 0x5e, 0xf5, 0xa5, 0xb3, 0x51, 0x75, 0x82, 0x65, + 0xa5, 0x29, 0xc5, 0x50, 0x67, 0xcf, 0x0d, 0xd3, 0xd3, 0x30, 0x8e, 0x7a, + 0x5c, 0x43, 0xb6, 0x83, 0xee, 0xbf, 0xf0, 0x1f, 0xb9, 0x13, 0x47, 0xa7, +}; +static const unsigned char kat2832_addinreseed[] = {0}; +static const unsigned char kat2832_addin0[] = {0}; +static const unsigned char kat2832_addin1[] = {0}; +static const unsigned char kat2832_retbits[] = { + 0xd9, 0x18, 0xe2, 0x05, 0x31, 0x86, 0x96, 0x62, 0x1a, 0x86, 0x71, 0xa8, + 0xf4, 0x22, 0x36, 0xa5, 0x23, 0x08, 0x30, 0xbb, 0x61, 0xfe, 0xb7, 0x14, + 0x6d, 0x22, 0xd8, 0xb8, 0x9d, 0x29, 0x71, 0x5a, 0x5a, 0xc1, 0x77, 0x45, + 0x37, 0xaa, 0x9a, 0x50, 0xe5, 0x70, 0x99, 0x14, 0xd1, 0x33, 0x42, 0xd7, + 0x68, 0xfe, 0x86, 0xa9, 0xbc, 0xef, 0x35, 0x3c, 0x30, 0xac, 0x88, 0xaa, + 0x16, 0xae, 0x19, 0x69, +}; +static const struct drbg_kat_pr_false kat2832_t = { + 11, kat2832_entropyin, kat2832_nonce, kat2832_persstr, + kat2832_entropyinreseed, kat2832_addinreseed, kat2832_addin0, + kat2832_addin1, kat2832_retbits +}; +static const struct drbg_kat kat2832 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2832_t +}; + +static const unsigned char kat2833_entropyin[] = { + 0x09, 0xa1, 0xd2, 0x88, 0x57, 0x22, 0x4e, 0x96, 0xd7, 0xb2, 0x2c, 0xab, + 0x8f, 0x18, 0x54, 0x38, 0xc0, 0xe8, 0x76, 0x47, 0x88, 0x58, 0x2a, 0x79, + 0xed, 0xe7, 0x0d, 0x78, 0xb2, 0x28, 0x7a, 0x9a, 0xea, 0x82, 0x9e, 0x25, + 0x40, 0x61, 0x72, 0xa9, 0x08, 0xdc, 0x5a, 0x15, 0xfb, 0x8a, 0x8e, 0x20, +}; +static const unsigned char kat2833_nonce[] = {0}; +static const unsigned char kat2833_persstr[] = {0}; +static const unsigned char kat2833_entropyinreseed[] = { + 0x26, 0x85, 0x90, 0x27, 0xff, 0x5b, 0x50, 0x97, 0xf4, 0x1e, 0x66, 0xb5, + 0x2f, 0x36, 0x89, 0xdd, 0x82, 0x9f, 0x13, 0x9b, 0xf5, 0xed, 0x79, 0xa5, + 0xc4, 0x05, 0x27, 0x95, 0xd1, 0xb8, 0x67, 0x6d, 0x0b, 0xb7, 0x01, 0x9a, + 0x55, 0x1d, 0xd5, 0x9a, 0x65, 0xac, 0x02, 0x98, 0xe7, 0x1c, 0x1c, 0x1f, +}; +static const unsigned char kat2833_addinreseed[] = {0}; +static const unsigned char kat2833_addin0[] = {0}; +static const unsigned char kat2833_addin1[] = {0}; +static const unsigned char kat2833_retbits[] = { + 0xe4, 0xda, 0x2f, 0x0a, 0xf6, 0x00, 0xc7, 0x86, 0x65, 0x26, 0x88, 0x82, + 0xea, 0x07, 0xed, 0x63, 0x22, 0xd7, 0x36, 0x9d, 0x04, 0x14, 0x8a, 0x7c, + 0xd7, 0x84, 0x79, 0x52, 0xed, 0x7e, 0x6a, 0x89, 0x4e, 0x3f, 0x1f, 0x4c, + 0x2d, 0x4d, 0x76, 0x8f, 0x5a, 0x7f, 0xd4, 0x03, 0x32, 0xda, 0xbd, 0xd8, + 0x8a, 0xfb, 0x23, 0x84, 0x57, 0x3a, 0xfb, 0xb6, 0xd7, 0x9e, 0x0b, 0x3c, + 0x3e, 0x8d, 0x4f, 0x9a, +}; +static const struct drbg_kat_pr_false kat2833_t = { + 12, kat2833_entropyin, kat2833_nonce, kat2833_persstr, + kat2833_entropyinreseed, kat2833_addinreseed, kat2833_addin0, + kat2833_addin1, kat2833_retbits +}; +static const struct drbg_kat kat2833 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2833_t +}; + +static const unsigned char kat2834_entropyin[] = { + 0xa4, 0x44, 0x67, 0x88, 0xf2, 0x43, 0x69, 0x1c, 0xda, 0x9a, 0xd6, 0x92, + 0x0e, 0x44, 0x30, 0xf9, 0x46, 0x9e, 0x58, 0xe8, 0x37, 0xb8, 0x01, 0xce, + 0xbe, 0x0f, 0x8d, 0x5c, 0x51, 0x8f, 0xac, 0x53, 0x50, 0x51, 0xf3, 0xeb, + 0xd3, 0x57, 0x9e, 0x1f, 0xcb, 0x90, 0x8d, 0xc9, 0x89, 0xa7, 0x90, 0xe2, +}; +static const unsigned char kat2834_nonce[] = {0}; +static const unsigned char kat2834_persstr[] = {0}; +static const unsigned char kat2834_entropyinreseed[] = { + 0xc5, 0xbb, 0xc3, 0x3a, 0x3a, 0xbb, 0xe3, 0x55, 0xf3, 0x8d, 0xc8, 0xf0, + 0x30, 0x54, 0x0b, 0xd7, 0xe4, 0x23, 0xbc, 0x42, 0xc5, 0x26, 0xea, 0x76, + 0x6d, 0x9f, 0x10, 0xd1, 0x61, 0x3b, 0x00, 0x28, 0xb5, 0x5b, 0x99, 0xef, + 0xa5, 0x74, 0xd5, 0x09, 0xfd, 0xe9, 0x2a, 0x1e, 0xc3, 0x67, 0x86, 0x83, +}; +static const unsigned char kat2834_addinreseed[] = {0}; +static const unsigned char kat2834_addin0[] = {0}; +static const unsigned char kat2834_addin1[] = {0}; +static const unsigned char kat2834_retbits[] = { + 0xa1, 0x31, 0xb5, 0x51, 0xc8, 0xf3, 0x1d, 0x4b, 0x4a, 0x9e, 0x33, 0xb0, + 0xe5, 0x4f, 0x7c, 0x6f, 0x14, 0x2d, 0x12, 0x6d, 0xa7, 0x38, 0xd7, 0x9d, + 0x31, 0x17, 0x6c, 0xf5, 0xae, 0x7c, 0x04, 0x0c, 0x23, 0x5f, 0x2c, 0xa0, + 0xfd, 0x7a, 0x69, 0x07, 0x7c, 0x09, 0x6a, 0xc3, 0x00, 0xf7, 0x44, 0x59, + 0x85, 0xf2, 0xed, 0x39, 0xcd, 0x22, 0xe2, 0xcf, 0x8d, 0x14, 0x66, 0x65, + 0xf6, 0xb8, 0x1e, 0x9e, +}; +static const struct drbg_kat_pr_false kat2834_t = { + 13, kat2834_entropyin, kat2834_nonce, kat2834_persstr, + kat2834_entropyinreseed, kat2834_addinreseed, kat2834_addin0, + kat2834_addin1, kat2834_retbits +}; +static const struct drbg_kat kat2834 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2834_t +}; + +static const unsigned char kat2835_entropyin[] = { + 0x91, 0xfa, 0x80, 0xb7, 0x27, 0x04, 0x02, 0x95, 0xb8, 0x50, 0x11, 0x9e, + 0x9f, 0xb7, 0xe4, 0xcc, 0xe4, 0x55, 0x1a, 0xe2, 0x34, 0xf2, 0x96, 0x16, + 0xaf, 0x15, 0x57, 0x25, 0x57, 0xd1, 0x55, 0x5d, 0xe0, 0x42, 0x4a, 0xc3, + 0x92, 0x8e, 0x39, 0xca, 0x0e, 0xe3, 0x97, 0x8d, 0x95, 0x6f, 0x32, 0x58, +}; +static const unsigned char kat2835_nonce[] = {0}; +static const unsigned char kat2835_persstr[] = {0}; +static const unsigned char kat2835_entropyinreseed[] = { + 0x99, 0x37, 0xf7, 0x76, 0xdd, 0xae, 0x1d, 0xd4, 0xa6, 0xed, 0x76, 0xcc, + 0x17, 0x95, 0xd4, 0x50, 0xe1, 0x4d, 0x1e, 0x46, 0x2c, 0x30, 0xa9, 0xe1, + 0xa8, 0x53, 0x34, 0xb3, 0xca, 0x14, 0x84, 0x51, 0xb9, 0x4e, 0x00, 0x05, + 0x5b, 0x3e, 0xd2, 0x27, 0xf0, 0xa2, 0xfc, 0x24, 0x7d, 0xb4, 0xdb, 0x6d, +}; +static const unsigned char kat2835_addinreseed[] = {0}; +static const unsigned char kat2835_addin0[] = {0}; +static const unsigned char kat2835_addin1[] = {0}; +static const unsigned char kat2835_retbits[] = { + 0xe6, 0x59, 0xa7, 0xde, 0x7a, 0x1b, 0x1b, 0x15, 0xa5, 0x61, 0x70, 0xa1, + 0xd6, 0x33, 0x4d, 0xec, 0x91, 0xb6, 0xff, 0xfc, 0x47, 0xfb, 0x7a, 0xe1, + 0xf2, 0xb3, 0xaf, 0x03, 0xcb, 0xc2, 0x5f, 0x7b, 0xec, 0x0c, 0xb6, 0xaf, + 0xad, 0xb7, 0x6a, 0xf9, 0xd3, 0x62, 0x16, 0x82, 0x5e, 0xe0, 0xe1, 0x3a, + 0xa3, 0x91, 0x5b, 0xc5, 0x15, 0x32, 0x5c, 0x27, 0x27, 0x08, 0x58, 0x65, + 0x41, 0x75, 0xa8, 0x1d, +}; +static const struct drbg_kat_pr_false kat2835_t = { + 14, kat2835_entropyin, kat2835_nonce, kat2835_persstr, + kat2835_entropyinreseed, kat2835_addinreseed, kat2835_addin0, + kat2835_addin1, kat2835_retbits +}; +static const struct drbg_kat kat2835 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat2835_t +}; + +static const unsigned char kat2836_entropyin[] = { + 0x20, 0xa8, 0xe7, 0xe4, 0x71, 0x08, 0xcd, 0x4f, 0x28, 0x3e, 0x5b, 0x16, + 0x98, 0x55, 0xbd, 0xa8, 0x38, 0x99, 0x51, 0x6e, 0x51, 0x82, 0x5b, 0xb5, + 0x22, 0x48, 0xba, 0x8c, 0x40, 0x5d, 0xa4, 0x49, 0x64, 0x50, 0x2c, 0x9f, + 0xc7, 0x4d, 0xa0, 0xe2, 0xad, 0x4c, 0xa1, 0xf4, 0x93, 0x13, 0x42, 0x43, +}; +static const unsigned char kat2836_nonce[] = {0}; +static const unsigned char kat2836_persstr[] = {0}; +static const unsigned char kat2836_entropyinreseed[] = { + 0x98, 0xba, 0x67, 0xc7, 0xe0, 0x57, 0xa5, 0xa3, 0x28, 0xbc, 0x9b, 0x22, + 0x37, 0x96, 0xb3, 0x69, 0x47, 0xb1, 0xfc, 0xa1, 0xab, 0x6b, 0x20, 0xc1, + 0xdd, 0x25, 0x14, 0x2e, 0x94, 0x9d, 0xf2, 0x7e, 0x81, 0x22, 0xc8, 0xa6, + 0x79, 0x2d, 0x8a, 0x11, 0x56, 0xa6, 0x0b, 0x11, 0x70, 0xa3, 0xb5, 0xc4, +}; +static const unsigned char kat2836_addinreseed[] = { + 0x64, 0x8f, 0xa2, 0x29, 0xf5, 0xea, 0x25, 0xee, 0x6c, 0x74, 0x53, 0xed, + 0x57, 0x7c, 0x70, 0xf7, 0x55, 0xa2, 0xcb, 0x90, 0xf8, 0x52, 0xb7, 0x2b, + 0x28, 0x2d, 0x30, 0xbe, 0xde, 0xba, 0xf7, 0x4a, 0xf4, 0x61, 0xa2, 0xa8, + 0xa3, 0x45, 0x6e, 0x65, 0x3e, 0x7d, 0xe9, 0xef, 0x37, 0x40, 0xbc, 0x44, +}; +static const unsigned char kat2836_addin0[] = { + 0xda, 0xf5, 0xb6, 0x4b, 0xa4, 0x09, 0xb5, 0x24, 0xc2, 0x11, 0xa3, 0x00, + 0x46, 0x5c, 0x63, 0x1b, 0xd9, 0x00, 0x45, 0x32, 0x21, 0x02, 0x3a, 0x41, + 0x92, 0x7b, 0x3d, 0x14, 0x4d, 0xa0, 0x13, 0x1d, 0x89, 0xf7, 0x4c, 0x0f, + 0x18, 0xb0, 0x29, 0x99, 0x4c, 0xe8, 0x4e, 0xc9, 0xb3, 0x68, 0x42, 0x93, +}; +static const unsigned char kat2836_addin1[] = { + 0x61, 0x38, 0x15, 0x6c, 0xcc, 0x58, 0xe7, 0x59, 0xd7, 0x62, 0xfb, 0x5d, + 0xb2, 0xc0, 0x92, 0x6a, 0xde, 0x76, 0x0f, 0xf5, 0x31, 0x58, 0x2f, 0x1b, + 0xd8, 0xef, 0x43, 0x0f, 0x7f, 0x7a, 0xb6, 0x23, 0xf8, 0x20, 0x82, 0xad, + 0x58, 0xc2, 0xd6, 0x29, 0x34, 0x09, 0x45, 0x54, 0x6b, 0xf9, 0x4e, 0x2d, +}; +static const unsigned char kat2836_retbits[] = { + 0xdb, 0x51, 0xc6, 0x8e, 0x5d, 0xc6, 0xdc, 0x50, 0x0d, 0xaf, 0xa4, 0xd0, + 0x78, 0x36, 0x74, 0x9d, 0xf4, 0xfc, 0x54, 0xd0, 0xc8, 0xe7, 0x8a, 0x3a, + 0x01, 0xad, 0x31, 0x62, 0xc2, 0x43, 0x8d, 0x8a, 0xa1, 0x69, 0x8c, 0x4a, + 0xb6, 0xb4, 0x48, 0xc3, 0xeb, 0xd3, 0x7d, 0x23, 0xfa, 0xe3, 0xc9, 0xba, + 0x6a, 0xad, 0x09, 0x12, 0xcd, 0x15, 0x47, 0x5e, 0x94, 0x78, 0xd4, 0x79, + 0x36, 0x17, 0xa3, 0xce, +}; +static const struct drbg_kat_pr_false kat2836_t = { + 0, kat2836_entropyin, kat2836_nonce, kat2836_persstr, + kat2836_entropyinreseed, kat2836_addinreseed, kat2836_addin0, + kat2836_addin1, kat2836_retbits +}; +static const struct drbg_kat kat2836 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2836_t +}; + +static const unsigned char kat2837_entropyin[] = { + 0xa7, 0x81, 0x01, 0x5e, 0x06, 0x6e, 0xae, 0xe1, 0x8f, 0x30, 0x13, 0x5e, + 0x51, 0x8b, 0x87, 0xce, 0xbb, 0xb7, 0x9c, 0x5f, 0x0a, 0xfa, 0xa4, 0xab, + 0x21, 0xbb, 0x5a, 0xb8, 0x08, 0xf0, 0x9f, 0xfd, 0x8c, 0xcd, 0x2a, 0xd0, + 0x26, 0x06, 0xf8, 0xcd, 0xab, 0x95, 0xbf, 0x89, 0x7e, 0x2b, 0xbb, 0x1b, +}; +static const unsigned char kat2837_nonce[] = {0}; +static const unsigned char kat2837_persstr[] = {0}; +static const unsigned char kat2837_entropyinreseed[] = { + 0x28, 0x7e, 0x14, 0xff, 0x54, 0x46, 0xa2, 0xee, 0xfd, 0x02, 0x3f, 0x20, + 0x8b, 0xc8, 0xf5, 0x83, 0xc8, 0x0d, 0xdf, 0x84, 0xfa, 0x88, 0xe0, 0xa5, + 0x5c, 0x5a, 0x41, 0x41, 0x4f, 0xfd, 0x1a, 0x72, 0x97, 0xd4, 0x10, 0x17, + 0xb3, 0xa3, 0x7e, 0xf1, 0x29, 0x0a, 0xed, 0x62, 0x9e, 0x74, 0x37, 0x6e, +}; +static const unsigned char kat2837_addinreseed[] = { + 0xa7, 0xa3, 0xd0, 0x11, 0xfb, 0x2d, 0x74, 0x94, 0xe0, 0x23, 0xd5, 0xde, + 0x0c, 0x32, 0x64, 0x2e, 0x0e, 0xbb, 0x76, 0x5e, 0x0c, 0xe5, 0xe7, 0x9d, + 0xab, 0x2d, 0xcb, 0x76, 0x37, 0x48, 0x0b, 0xa6, 0x11, 0x0d, 0x7a, 0x07, + 0xa3, 0xad, 0x7c, 0x13, 0x01, 0x39, 0x04, 0x8f, 0x80, 0xa1, 0xc1, 0x6b, +}; +static const unsigned char kat2837_addin0[] = { + 0x17, 0x86, 0xeb, 0x12, 0x5d, 0x51, 0xcf, 0xff, 0x91, 0x64, 0x44, 0x9b, + 0xa2, 0xba, 0xcf, 0x9a, 0x21, 0x6f, 0x4c, 0x45, 0xa6, 0x85, 0xc0, 0x75, + 0x02, 0xbf, 0x07, 0x4c, 0xe4, 0xa6, 0x1a, 0x6a, 0xc6, 0x40, 0xe2, 0xc1, + 0x83, 0x6f, 0x2e, 0x20, 0x45, 0x98, 0xd5, 0x14, 0x28, 0x83, 0x92, 0x69, +}; +static const unsigned char kat2837_addin1[] = { + 0xd2, 0xfe, 0xe3, 0xf2, 0xe3, 0xa0, 0x0e, 0xe4, 0xbc, 0x3d, 0xbc, 0xd1, + 0x9c, 0x31, 0x3c, 0xf7, 0x4d, 0x5d, 0x34, 0xab, 0x62, 0x19, 0x40, 0x7e, + 0xfa, 0x16, 0xdb, 0x64, 0xf7, 0x26, 0xcd, 0xaa, 0x68, 0x69, 0x2f, 0x8e, + 0xdd, 0x2a, 0xbc, 0x87, 0x1b, 0x08, 0xa3, 0x3d, 0x2a, 0x9c, 0x92, 0x2d, +}; +static const unsigned char kat2837_retbits[] = { + 0x94, 0xb2, 0xf1, 0x66, 0x10, 0xcb, 0x7e, 0x30, 0x0b, 0xd1, 0xbe, 0xa6, + 0xb4, 0xc3, 0xa8, 0xd6, 0x71, 0xf2, 0xb8, 0x7e, 0xf4, 0x19, 0xd7, 0x58, + 0xdf, 0xd0, 0x21, 0x7a, 0x3d, 0x3e, 0x46, 0x2b, 0x5e, 0x3f, 0x5e, 0xc0, + 0x54, 0xd0, 0x93, 0x4d, 0x70, 0x17, 0x48, 0xd7, 0x0f, 0xc8, 0x91, 0xc4, + 0x87, 0xf7, 0x15, 0xc8, 0x81, 0x41, 0x6a, 0x87, 0x24, 0x03, 0x71, 0xe9, + 0x53, 0x28, 0x48, 0xfe, +}; +static const struct drbg_kat_pr_false kat2837_t = { + 1, kat2837_entropyin, kat2837_nonce, kat2837_persstr, + kat2837_entropyinreseed, kat2837_addinreseed, kat2837_addin0, + kat2837_addin1, kat2837_retbits +}; +static const struct drbg_kat kat2837 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2837_t +}; + +static const unsigned char kat2838_entropyin[] = { + 0xe7, 0x44, 0xb4, 0x98, 0xe9, 0xa6, 0xf2, 0xf1, 0x84, 0x4f, 0xd2, 0x34, + 0xe0, 0x24, 0xd4, 0xfc, 0xe3, 0x4c, 0xac, 0x87, 0xbc, 0x71, 0x37, 0xb2, + 0x07, 0xcd, 0x29, 0xc9, 0x10, 0xc7, 0x7f, 0xb9, 0x49, 0xe2, 0xa7, 0x8a, + 0x39, 0x7f, 0xb0, 0x3e, 0x66, 0x55, 0x44, 0x09, 0x13, 0x85, 0xcd, 0xc5, +}; +static const unsigned char kat2838_nonce[] = {0}; +static const unsigned char kat2838_persstr[] = {0}; +static const unsigned char kat2838_entropyinreseed[] = { + 0x80, 0x7d, 0xf3, 0x85, 0xe0, 0xb0, 0x25, 0x26, 0x30, 0x3a, 0xe2, 0x44, + 0x26, 0xcf, 0x4c, 0xa7, 0x7d, 0xf3, 0x19, 0xc6, 0x4a, 0x14, 0x5c, 0xdb, + 0xc8, 0x65, 0x40, 0x42, 0x2c, 0xca, 0x77, 0xed, 0xc5, 0x72, 0x71, 0x90, + 0x71, 0x9b, 0x5b, 0x22, 0x74, 0x3c, 0x44, 0x52, 0x43, 0x57, 0xe1, 0xa5, +}; +static const unsigned char kat2838_addinreseed[] = { + 0xb0, 0xcf, 0xa6, 0x99, 0xd9, 0x08, 0xb0, 0x3f, 0x80, 0xb5, 0x35, 0x2f, + 0x5f, 0x92, 0x60, 0x13, 0xbb, 0x54, 0xfa, 0x95, 0x72, 0x42, 0x39, 0xf3, + 0x2b, 0x9f, 0xac, 0xf9, 0x4e, 0x80, 0xd0, 0xc6, 0x36, 0x12, 0x4c, 0xe0, + 0x42, 0xd7, 0xa2, 0xaf, 0x62, 0xf5, 0x5c, 0xa7, 0xa3, 0x20, 0xfc, 0x83, +}; +static const unsigned char kat2838_addin0[] = { + 0xa4, 0x5e, 0xf1, 0x2d, 0xc1, 0x3e, 0xd4, 0xf8, 0x6e, 0xbb, 0x70, 0x81, + 0x13, 0x46, 0x17, 0x3c, 0xa4, 0x70, 0x9d, 0x6d, 0x22, 0x9b, 0xbb, 0x81, + 0x5c, 0x6d, 0x55, 0x38, 0x36, 0x67, 0x01, 0xae, 0xe3, 0x90, 0xe1, 0xe7, + 0x2d, 0xcc, 0x7b, 0x06, 0x4f, 0x52, 0x4a, 0x25, 0x37, 0xe1, 0xb4, 0x20, +}; +static const unsigned char kat2838_addin1[] = { + 0xf8, 0x0f, 0x9e, 0xed, 0xc0, 0xc0, 0x63, 0x64, 0x77, 0x98, 0x50, 0x06, + 0xb3, 0xba, 0xee, 0x45, 0xa0, 0xf0, 0x8c, 0x36, 0x5b, 0x1c, 0xac, 0xfc, + 0x9d, 0x64, 0x98, 0x41, 0x7c, 0x3d, 0x51, 0xbf, 0xdd, 0xdf, 0xa8, 0x19, + 0xb7, 0xa8, 0x96, 0xf5, 0x69, 0xb1, 0x13, 0xac, 0x9b, 0xff, 0xf8, 0x44, +}; +static const unsigned char kat2838_retbits[] = { + 0x12, 0xf5, 0x70, 0xa2, 0xd2, 0xa3, 0x41, 0xe5, 0xb3, 0x4b, 0xfc, 0x98, + 0xd1, 0xc7, 0x23, 0x61, 0xb8, 0x45, 0x4f, 0xe5, 0x57, 0x27, 0xa6, 0xa3, + 0x6d, 0x77, 0x16, 0xc8, 0xcb, 0xab, 0x2c, 0xa7, 0x85, 0xd3, 0x10, 0x06, + 0x5f, 0xcf, 0x88, 0x2d, 0xe2, 0x1a, 0x7b, 0xb5, 0x74, 0x9e, 0xe8, 0xaf, + 0xd3, 0x67, 0xaa, 0xbf, 0xf8, 0x98, 0xa3, 0x16, 0x21, 0xe0, 0x6e, 0xc5, + 0x13, 0x5f, 0x04, 0xe8, +}; +static const struct drbg_kat_pr_false kat2838_t = { + 2, kat2838_entropyin, kat2838_nonce, kat2838_persstr, + kat2838_entropyinreseed, kat2838_addinreseed, kat2838_addin0, + kat2838_addin1, kat2838_retbits +}; +static const struct drbg_kat kat2838 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2838_t +}; + +static const unsigned char kat2839_entropyin[] = { + 0x3c, 0x2d, 0x81, 0x1b, 0x1e, 0x8d, 0x2f, 0x13, 0x51, 0xd3, 0x5a, 0x4d, + 0xff, 0x67, 0x0f, 0xcc, 0xb2, 0x27, 0xfa, 0x44, 0xca, 0xcc, 0xc0, 0xd0, + 0xb7, 0x1c, 0x16, 0x54, 0xae, 0x09, 0x60, 0x19, 0x27, 0xf2, 0x71, 0xab, + 0x0c, 0x96, 0x83, 0xad, 0x5f, 0xaf, 0x4a, 0x3c, 0x3b, 0x80, 0xbe, 0xb3, +}; +static const unsigned char kat2839_nonce[] = {0}; +static const unsigned char kat2839_persstr[] = {0}; +static const unsigned char kat2839_entropyinreseed[] = { + 0xbf, 0xd0, 0xa1, 0x3b, 0x0e, 0x2b, 0xb9, 0x04, 0x0b, 0xaf, 0xff, 0x29, + 0x5d, 0x0b, 0x08, 0xc4, 0x51, 0x71, 0x5e, 0xf0, 0xf9, 0xe3, 0x0d, 0xb5, + 0x0c, 0x38, 0xa1, 0x35, 0xc5, 0x6a, 0xd9, 0xf5, 0x87, 0x24, 0xbf, 0xaf, + 0x26, 0x80, 0x06, 0xf5, 0x57, 0x96, 0x9f, 0x14, 0x33, 0xb6, 0x34, 0x26, +}; +static const unsigned char kat2839_addinreseed[] = { + 0x9b, 0xca, 0x5a, 0x77, 0xa8, 0x1b, 0xf9, 0x7d, 0x69, 0x9f, 0xbe, 0xe6, + 0xcb, 0x22, 0x22, 0xc4, 0x7b, 0xbe, 0xfc, 0xd8, 0x1b, 0x6e, 0x6c, 0x69, + 0x3b, 0x72, 0xac, 0xe0, 0xf4, 0x66, 0x8e, 0x5e, 0xf8, 0xd3, 0xaf, 0xa8, + 0x25, 0xb2, 0x14, 0x19, 0xf5, 0x01, 0xa6, 0xf7, 0xe3, 0x9c, 0x3f, 0xc1, +}; +static const unsigned char kat2839_addin0[] = { + 0x4b, 0x9a, 0x7e, 0xb9, 0x41, 0xdf, 0xbe, 0xf0, 0x5d, 0xf2, 0x06, 0x35, + 0x43, 0x86, 0xa3, 0xc3, 0xb1, 0x36, 0xa9, 0xde, 0x21, 0xea, 0x30, 0x7a, + 0x96, 0xd8, 0x3b, 0xdf, 0xd1, 0xc2, 0xcc, 0xa8, 0xbd, 0xfd, 0x60, 0x8d, + 0x37, 0x65, 0x88, 0x0f, 0x0e, 0xb0, 0x5d, 0x6f, 0x88, 0x13, 0x68, 0x21, +}; +static const unsigned char kat2839_addin1[] = { + 0xc2, 0x11, 0xfa, 0x5e, 0xca, 0xdc, 0xac, 0x40, 0xfe, 0xe7, 0x53, 0x3a, + 0xba, 0x6e, 0xf6, 0x5f, 0x93, 0xa2, 0x27, 0x6e, 0xc1, 0x02, 0x39, 0x51, + 0xc6, 0x74, 0xdf, 0xea, 0xca, 0xd3, 0x9a, 0xc0, 0xd3, 0x73, 0x6f, 0xb6, + 0xd9, 0x16, 0xe9, 0xd4, 0x6e, 0x6c, 0xaa, 0x78, 0x57, 0x53, 0x8f, 0x02, +}; +static const unsigned char kat2839_retbits[] = { + 0x67, 0x3f, 0xde, 0xd4, 0xf9, 0x42, 0x8d, 0xd5, 0xfc, 0xc1, 0x6e, 0x8d, + 0xd1, 0x4c, 0x69, 0xcf, 0xbc, 0xc1, 0xa6, 0xab, 0x5a, 0x4c, 0xd4, 0x76, + 0x79, 0xba, 0x12, 0xd9, 0x6e, 0x4a, 0x06, 0x9d, 0x29, 0x22, 0x68, 0xc5, + 0xad, 0x6c, 0x43, 0x1c, 0x7e, 0x91, 0x19, 0x98, 0xb4, 0x19, 0xdd, 0x0e, + 0x99, 0x97, 0x75, 0x59, 0x40, 0xe6, 0xaa, 0xe0, 0x76, 0x8a, 0x86, 0xb7, + 0xfb, 0xf5, 0x57, 0xda, +}; +static const struct drbg_kat_pr_false kat2839_t = { + 3, kat2839_entropyin, kat2839_nonce, kat2839_persstr, + kat2839_entropyinreseed, kat2839_addinreseed, kat2839_addin0, + kat2839_addin1, kat2839_retbits +}; +static const struct drbg_kat kat2839 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2839_t +}; + +static const unsigned char kat2840_entropyin[] = { + 0x2b, 0x3f, 0xce, 0x2c, 0x05, 0x53, 0x3f, 0xa1, 0x34, 0x9a, 0x75, 0x44, + 0xa0, 0x80, 0xd1, 0xef, 0xf8, 0x4d, 0x78, 0x00, 0x8c, 0x69, 0xe4, 0x14, + 0x62, 0xc6, 0x59, 0xec, 0x3c, 0x13, 0x93, 0x13, 0xdc, 0x3e, 0xf2, 0x31, + 0x78, 0xc5, 0x76, 0x46, 0xce, 0x0e, 0x4c, 0xf6, 0xc3, 0x46, 0x5e, 0x22, +}; +static const unsigned char kat2840_nonce[] = {0}; +static const unsigned char kat2840_persstr[] = {0}; +static const unsigned char kat2840_entropyinreseed[] = { + 0x73, 0x6c, 0x35, 0xc4, 0x6e, 0x6c, 0x8a, 0xcf, 0xe3, 0x01, 0xec, 0x58, + 0x07, 0x0c, 0x54, 0x8c, 0x55, 0x30, 0xfd, 0x84, 0x94, 0xf9, 0xc5, 0x86, + 0xf4, 0x51, 0xa1, 0x32, 0xc7, 0x0a, 0x91, 0x15, 0xfa, 0x28, 0x42, 0xf1, + 0x64, 0xe5, 0xc1, 0x0a, 0x0a, 0xe5, 0x28, 0xee, 0x20, 0x9a, 0x4f, 0x32, +}; +static const unsigned char kat2840_addinreseed[] = { + 0x03, 0xc0, 0x28, 0xdf, 0xc0, 0x95, 0xeb, 0x49, 0xb4, 0xae, 0x76, 0x57, + 0x6e, 0xe7, 0xfc, 0x56, 0xb7, 0x6a, 0x1b, 0xaf, 0x14, 0xcf, 0x30, 0xa8, + 0x3d, 0x65, 0xd4, 0xc9, 0x71, 0x40, 0x00, 0x8a, 0x06, 0xf0, 0x3c, 0x1c, + 0xa3, 0x3c, 0x4b, 0x93, 0xd2, 0x4c, 0x36, 0x6c, 0x92, 0x2c, 0xd9, 0xbd, +}; +static const unsigned char kat2840_addin0[] = { + 0xbf, 0x7d, 0x34, 0xc4, 0xcc, 0x7b, 0xed, 0x84, 0x55, 0x9e, 0xde, 0x04, + 0x2a, 0xb3, 0x99, 0x11, 0x02, 0x2a, 0x59, 0x88, 0x35, 0x0c, 0x55, 0xc3, + 0x82, 0xcc, 0x8d, 0x78, 0xdc, 0xa6, 0x57, 0xfc, 0x16, 0x3a, 0xba, 0x71, + 0x6b, 0x4f, 0xee, 0xfd, 0x2d, 0xd3, 0xa1, 0xeb, 0x88, 0x3b, 0xd0, 0xed, +}; +static const unsigned char kat2840_addin1[] = { + 0xd3, 0xb7, 0xae, 0xa7, 0xfe, 0x27, 0xa1, 0x68, 0x76, 0x62, 0x79, 0x2f, + 0x8a, 0x2a, 0x62, 0x48, 0x75, 0x00, 0xb2, 0x73, 0xfb, 0xdf, 0xae, 0x74, + 0x21, 0x44, 0x78, 0x89, 0x1d, 0x3e, 0x06, 0x18, 0x70, 0x61, 0x5d, 0x9c, + 0xc0, 0x3f, 0x00, 0x73, 0xc7, 0x27, 0x48, 0xb4, 0x48, 0xbb, 0x7f, 0x82, +}; +static const unsigned char kat2840_retbits[] = { + 0xd9, 0x5e, 0x14, 0xec, 0x18, 0x70, 0xb8, 0xf6, 0xe9, 0xeb, 0x9e, 0xf6, + 0xcc, 0xc0, 0xd6, 0xbe, 0x94, 0x3f, 0xed, 0x07, 0xc4, 0xcb, 0x96, 0x09, + 0x19, 0xe8, 0x2c, 0xba, 0xdb, 0x92, 0xb4, 0x3f, 0x11, 0x48, 0x11, 0x76, + 0x5b, 0xe1, 0xaa, 0xd7, 0x48, 0xf7, 0x36, 0x15, 0x15, 0xa9, 0x65, 0xdc, + 0x8e, 0x4a, 0xc2, 0x33, 0xfa, 0x02, 0x46, 0x53, 0x61, 0x21, 0x24, 0x03, + 0xc8, 0x0d, 0x3f, 0x67, +}; +static const struct drbg_kat_pr_false kat2840_t = { + 4, kat2840_entropyin, kat2840_nonce, kat2840_persstr, + kat2840_entropyinreseed, kat2840_addinreseed, kat2840_addin0, + kat2840_addin1, kat2840_retbits +}; +static const struct drbg_kat kat2840 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2840_t +}; + +static const unsigned char kat2841_entropyin[] = { + 0x81, 0xb0, 0xb1, 0xec, 0xfd, 0x3c, 0x19, 0x20, 0x02, 0x2c, 0x8a, 0x73, + 0xb7, 0x74, 0x65, 0xa7, 0x98, 0xbc, 0x4c, 0x29, 0xb4, 0x48, 0xd8, 0x83, + 0x53, 0x05, 0x44, 0x34, 0xab, 0xbd, 0x21, 0xc2, 0x85, 0xc4, 0x26, 0x9e, + 0x86, 0x21, 0xc7, 0xfc, 0xae, 0x18, 0x49, 0xe3, 0xd3, 0x4f, 0x93, 0xe2, +}; +static const unsigned char kat2841_nonce[] = {0}; +static const unsigned char kat2841_persstr[] = {0}; +static const unsigned char kat2841_entropyinreseed[] = { + 0xfb, 0x80, 0x7f, 0xd0, 0x62, 0x2a, 0x62, 0x6f, 0x2c, 0x8f, 0x36, 0x49, + 0x67, 0x15, 0xa8, 0x90, 0x94, 0x4d, 0x50, 0x1c, 0x4b, 0x40, 0x22, 0xb4, + 0x87, 0x36, 0x34, 0x7a, 0x30, 0x18, 0xb0, 0xaa, 0x0f, 0x61, 0x57, 0xee, + 0x60, 0x18, 0xda, 0x87, 0x13, 0x95, 0x55, 0xa5, 0xcc, 0xcb, 0xe6, 0x79, +}; +static const unsigned char kat2841_addinreseed[] = { + 0x27, 0x1f, 0x48, 0x2a, 0x81, 0x2e, 0x67, 0x9a, 0x2c, 0xc8, 0x75, 0x45, + 0x08, 0x22, 0xb9, 0xca, 0xf4, 0xd6, 0xdb, 0x61, 0xf3, 0xd2, 0x02, 0x63, + 0xe1, 0x90, 0x47, 0x65, 0x63, 0x48, 0xc7, 0xb0, 0x53, 0x9e, 0xe3, 0x42, + 0x87, 0x91, 0x1a, 0x0b, 0xf6, 0xa7, 0xa2, 0x7e, 0x63, 0x7a, 0xdb, 0xbb, +}; +static const unsigned char kat2841_addin0[] = { + 0xcd, 0xa4, 0x74, 0x06, 0x7d, 0x78, 0xa3, 0x94, 0x31, 0x97, 0x05, 0xa6, + 0x17, 0x48, 0x23, 0xa2, 0x9b, 0x1b, 0xcc, 0xcb, 0x93, 0xe4, 0xf1, 0xc0, + 0x32, 0x77, 0x00, 0x1f, 0x4c, 0x52, 0xfe, 0x7c, 0x65, 0xe4, 0x6d, 0xa1, + 0x4b, 0x32, 0xa5, 0x18, 0x3b, 0x07, 0x57, 0x0d, 0xb8, 0xc9, 0x1d, 0x4a, +}; +static const unsigned char kat2841_addin1[] = { + 0xcd, 0xb0, 0x48, 0xf3, 0x60, 0x7f, 0x31, 0xff, 0x5a, 0xab, 0x41, 0x9d, + 0x69, 0xf8, 0xcd, 0x25, 0x69, 0x88, 0x62, 0x82, 0xb2, 0x59, 0xfb, 0xd4, + 0x9a, 0x7c, 0xdd, 0x8e, 0x7d, 0x86, 0x1f, 0xc6, 0x62, 0x4d, 0x3f, 0x55, + 0xb4, 0xae, 0xaf, 0xbb, 0x85, 0x42, 0xeb, 0xce, 0x1c, 0xd8, 0x76, 0x18, +}; +static const unsigned char kat2841_retbits[] = { + 0x4c, 0x0e, 0x55, 0x3a, 0xda, 0x4e, 0x6f, 0xe6, 0xf1, 0xd3, 0xdd, 0x84, + 0xa9, 0x91, 0x85, 0x6b, 0x55, 0x1f, 0xe7, 0x20, 0x98, 0xe3, 0xa0, 0x08, + 0xa7, 0x53, 0x71, 0x6a, 0xfe, 0x06, 0x28, 0x86, 0x1c, 0xd8, 0x3c, 0xe2, + 0xe0, 0xea, 0x64, 0x5b, 0x24, 0xb8, 0x40, 0x83, 0x60, 0xf6, 0xd9, 0xe1, + 0x10, 0x03, 0xee, 0x20, 0x3e, 0x01, 0xfb, 0x26, 0xaa, 0x4a, 0xfe, 0x21, + 0xcc, 0xfd, 0x03, 0x91, +}; +static const struct drbg_kat_pr_false kat2841_t = { + 5, kat2841_entropyin, kat2841_nonce, kat2841_persstr, + kat2841_entropyinreseed, kat2841_addinreseed, kat2841_addin0, + kat2841_addin1, kat2841_retbits +}; +static const struct drbg_kat kat2841 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2841_t +}; + +static const unsigned char kat2842_entropyin[] = { + 0xb5, 0x2d, 0xcf, 0xa7, 0xf8, 0x5a, 0x03, 0x83, 0x26, 0x65, 0x90, 0xb5, + 0x8f, 0xc2, 0xd1, 0x95, 0x25, 0xae, 0xcd, 0x9d, 0x22, 0x6f, 0xca, 0xd4, + 0xcf, 0x9e, 0x15, 0xc3, 0x75, 0x11, 0x98, 0xc4, 0xfe, 0xb9, 0x35, 0x59, + 0xdb, 0x7d, 0xd8, 0xac, 0x67, 0xa0, 0xc6, 0xb8, 0xd3, 0x71, 0x70, 0xc8, +}; +static const unsigned char kat2842_nonce[] = {0}; +static const unsigned char kat2842_persstr[] = {0}; +static const unsigned char kat2842_entropyinreseed[] = { + 0x40, 0xd6, 0x41, 0x3d, 0xdb, 0x86, 0x24, 0xd9, 0x83, 0x73, 0x34, 0x1a, + 0x46, 0x39, 0x13, 0x51, 0xd8, 0x48, 0xc9, 0xd8, 0xe8, 0x06, 0x68, 0xd0, + 0x23, 0xe7, 0x35, 0x44, 0xcc, 0xd3, 0xf0, 0xbd, 0x34, 0x11, 0x45, 0xa5, + 0xd1, 0xc1, 0xa0, 0xc7, 0xd4, 0x09, 0xb8, 0x3d, 0x5a, 0xa3, 0x96, 0xb9, +}; +static const unsigned char kat2842_addinreseed[] = { + 0x04, 0xe3, 0x40, 0xba, 0xb1, 0xe1, 0xe1, 0x8e, 0x96, 0xb5, 0xef, 0x84, + 0xf9, 0xcf, 0x3e, 0x40, 0xb5, 0x87, 0x37, 0xd9, 0xa9, 0xd0, 0xf8, 0xa4, + 0x48, 0xcd, 0xa6, 0xaf, 0xfa, 0xf4, 0x6f, 0xcb, 0x4c, 0x25, 0x10, 0x0e, + 0x5d, 0xe0, 0xf6, 0xd8, 0xd4, 0xb8, 0x72, 0xe3, 0xde, 0x77, 0xab, 0x77, +}; +static const unsigned char kat2842_addin0[] = { + 0x0a, 0x70, 0xb0, 0xb0, 0xd9, 0xb3, 0xf1, 0xb1, 0x96, 0xf9, 0x2c, 0x68, + 0xe7, 0x92, 0x62, 0x97, 0x87, 0x3e, 0x98, 0x97, 0x3b, 0x2e, 0xee, 0x4f, + 0x2a, 0x48, 0xc3, 0x4c, 0x9a, 0x10, 0xa4, 0x7d, 0xa0, 0x66, 0xd4, 0xfa, + 0xf4, 0xa3, 0xf0, 0xa8, 0x0e, 0xa3, 0xf3, 0x4d, 0xc2, 0x9b, 0xcf, 0x67, +}; +static const unsigned char kat2842_addin1[] = { + 0x17, 0x9b, 0x17, 0xe3, 0x06, 0xc2, 0x9e, 0x46, 0x00, 0x50, 0x6d, 0xed, + 0xeb, 0x94, 0x15, 0x09, 0xf7, 0x6e, 0x52, 0x8d, 0x88, 0x64, 0x62, 0xc5, + 0xee, 0x71, 0xf7, 0xfe, 0xa9, 0xe2, 0xbe, 0xdb, 0xb9, 0xaa, 0x31, 0x07, + 0xcb, 0xa5, 0x5a, 0x48, 0x4e, 0x36, 0x75, 0xf7, 0x75, 0xf7, 0x28, 0x63, +}; +static const unsigned char kat2842_retbits[] = { + 0xf3, 0x90, 0xb9, 0x47, 0xe7, 0x83, 0x7c, 0x91, 0xfc, 0xb9, 0x77, 0x4b, + 0x1d, 0xfd, 0x4d, 0xda, 0x30, 0x59, 0x65, 0xa8, 0xa5, 0xbc, 0x06, 0xd6, + 0xa1, 0x08, 0x2d, 0x97, 0xa9, 0x05, 0x0d, 0x13, 0xae, 0x43, 0x33, 0xbe, + 0xad, 0x8e, 0x89, 0x07, 0xb5, 0x7c, 0x6d, 0xf0, 0xba, 0x65, 0x8a, 0xbb, + 0x35, 0xfd, 0xfd, 0x59, 0x5b, 0x6d, 0x68, 0xdd, 0x4b, 0x06, 0x93, 0x75, + 0x8e, 0x18, 0x6a, 0x65, +}; +static const struct drbg_kat_pr_false kat2842_t = { + 6, kat2842_entropyin, kat2842_nonce, kat2842_persstr, + kat2842_entropyinreseed, kat2842_addinreseed, kat2842_addin0, + kat2842_addin1, kat2842_retbits +}; +static const struct drbg_kat kat2842 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2842_t +}; + +static const unsigned char kat2843_entropyin[] = { + 0xc3, 0x37, 0xa3, 0xe7, 0x8d, 0x7d, 0x2e, 0x11, 0xc8, 0x49, 0x87, 0x00, + 0x06, 0xf2, 0xe7, 0x6e, 0x7f, 0xee, 0x30, 0xec, 0x07, 0x6d, 0x37, 0x7b, + 0xdc, 0x87, 0x9f, 0x25, 0x83, 0x24, 0x1e, 0x3b, 0x3b, 0x7b, 0x86, 0x3d, + 0xd9, 0xc2, 0xe1, 0x37, 0x9a, 0xed, 0x93, 0xf2, 0xf8, 0xda, 0xe5, 0x22, +}; +static const unsigned char kat2843_nonce[] = {0}; +static const unsigned char kat2843_persstr[] = {0}; +static const unsigned char kat2843_entropyinreseed[] = { + 0xad, 0x41, 0x07, 0x91, 0xad, 0x78, 0x1f, 0x70, 0xd6, 0xbb, 0x8b, 0x88, + 0x3d, 0x17, 0x24, 0xf6, 0xce, 0xcb, 0x32, 0x45, 0x14, 0x1f, 0x78, 0x9c, + 0x1a, 0x8a, 0x9a, 0x1d, 0x45, 0x70, 0x64, 0x93, 0xba, 0xab, 0x5b, 0x2b, + 0x3d, 0x1c, 0xbe, 0x5d, 0x2b, 0xa4, 0x1e, 0x41, 0x23, 0xe0, 0x5b, 0x95, +}; +static const unsigned char kat2843_addinreseed[] = { + 0x13, 0xd4, 0x25, 0xb3, 0x6b, 0xcd, 0x17, 0x80, 0x1b, 0x07, 0x7e, 0x71, + 0xb0, 0x0a, 0xe3, 0xc9, 0x0e, 0x8b, 0x6b, 0xf9, 0xb5, 0x20, 0xc0, 0x06, + 0xf6, 0x8c, 0xbc, 0x23, 0x8e, 0x5a, 0x95, 0x92, 0x22, 0x70, 0x13, 0x27, + 0x6e, 0x55, 0x9a, 0x72, 0xe1, 0xb9, 0x52, 0xf6, 0x1e, 0x8a, 0x4c, 0x62, +}; +static const unsigned char kat2843_addin0[] = { + 0x9c, 0x49, 0x41, 0x9e, 0x86, 0x90, 0x18, 0x26, 0x8c, 0x9d, 0xb5, 0xfc, + 0xc0, 0xf7, 0xa9, 0x35, 0xd1, 0x7c, 0xb9, 0xff, 0x04, 0xea, 0x4d, 0x56, + 0xa6, 0x55, 0x5c, 0xeb, 0xb8, 0x9a, 0x6f, 0x4c, 0xd0, 0xd1, 0xeb, 0x83, + 0x23, 0x42, 0xc4, 0x22, 0x64, 0xdb, 0xae, 0x1d, 0x33, 0x52, 0x25, 0xb3, +}; +static const unsigned char kat2843_addin1[] = { + 0xee, 0x20, 0x49, 0xb4, 0xc3, 0x62, 0x92, 0xa4, 0x51, 0xaa, 0xaa, 0x87, + 0xe7, 0xf7, 0xeb, 0x91, 0x8e, 0x8e, 0x0a, 0x49, 0x2e, 0xbe, 0x71, 0xfc, + 0x3b, 0x24, 0x49, 0x9f, 0x92, 0x1a, 0x23, 0xd2, 0xa0, 0x1b, 0x7b, 0xd8, + 0xe7, 0x58, 0x51, 0xc8, 0x92, 0xcc, 0xf1, 0x24, 0xcc, 0x29, 0x88, 0x76, +}; +static const unsigned char kat2843_retbits[] = { + 0xfa, 0x1a, 0xc7, 0xad, 0x59, 0x92, 0x4d, 0x7a, 0xb5, 0x7c, 0x01, 0x86, + 0xde, 0xf6, 0x94, 0x64, 0x58, 0x05, 0xf8, 0x95, 0xf6, 0xb0, 0x45, 0xdd, + 0xe1, 0x29, 0x33, 0x37, 0x1f, 0x96, 0x01, 0xc6, 0xc9, 0x13, 0x32, 0x05, + 0x09, 0x34, 0x45, 0x62, 0x0d, 0x2a, 0xcf, 0xea, 0xb4, 0x4b, 0x13, 0x3b, + 0xf9, 0x3f, 0x27, 0xe5, 0xda, 0xaf, 0x74, 0x53, 0xe9, 0x8e, 0x6e, 0x47, + 0x78, 0x13, 0xd3, 0xca, +}; +static const struct drbg_kat_pr_false kat2843_t = { + 7, kat2843_entropyin, kat2843_nonce, kat2843_persstr, + kat2843_entropyinreseed, kat2843_addinreseed, kat2843_addin0, + kat2843_addin1, kat2843_retbits +}; +static const struct drbg_kat kat2843 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2843_t +}; + +static const unsigned char kat2844_entropyin[] = { + 0x7c, 0xd6, 0x8d, 0x97, 0x9a, 0x01, 0x24, 0x4c, 0x08, 0xea, 0xc6, 0xbd, + 0x20, 0xc0, 0x76, 0x91, 0x99, 0x18, 0xdb, 0xc7, 0xf0, 0x9e, 0xf5, 0x02, + 0x72, 0x7d, 0xbf, 0x50, 0xbb, 0xf2, 0x57, 0x62, 0xf6, 0xc0, 0x6e, 0x0e, + 0x6c, 0x55, 0x45, 0x5f, 0x54, 0x28, 0x91, 0x57, 0x2c, 0xc5, 0xd7, 0x5e, +}; +static const unsigned char kat2844_nonce[] = {0}; +static const unsigned char kat2844_persstr[] = {0}; +static const unsigned char kat2844_entropyinreseed[] = { + 0xa0, 0xde, 0x6b, 0x1d, 0x84, 0x16, 0x31, 0xd3, 0x70, 0xc3, 0x5e, 0xd2, + 0x29, 0x76, 0x9e, 0xea, 0xb4, 0x25, 0xe1, 0x44, 0xce, 0x5b, 0xbe, 0x98, + 0x50, 0x5a, 0xf5, 0x38, 0x1f, 0xed, 0x45, 0xaa, 0xb7, 0x11, 0xaf, 0xa0, + 0x59, 0x62, 0x4d, 0x05, 0xf0, 0xf7, 0x32, 0xfc, 0xe3, 0x99, 0x7e, 0x71, +}; +static const unsigned char kat2844_addinreseed[] = { + 0x92, 0xc2, 0x7d, 0x00, 0x5f, 0xc4, 0x97, 0x88, 0x69, 0x58, 0x08, 0x5a, + 0xe5, 0xa2, 0x43, 0xfe, 0x28, 0xcc, 0x6d, 0x31, 0x42, 0xb3, 0x81, 0x7b, + 0x20, 0x1a, 0x06, 0x7e, 0x45, 0xf6, 0xb8, 0x5b, 0x8a, 0x7d, 0x67, 0xd2, + 0xb5, 0x7b, 0xea, 0x16, 0x7c, 0xc7, 0xb5, 0x31, 0x53, 0xf9, 0x64, 0x56, +}; +static const unsigned char kat2844_addin0[] = { + 0x50, 0x2b, 0xa3, 0x86, 0x88, 0x1f, 0xa8, 0x16, 0x7c, 0x9a, 0xc1, 0x44, + 0x27, 0x56, 0x30, 0xe7, 0xcb, 0x6b, 0x83, 0xf0, 0xb0, 0x9d, 0xbc, 0xa2, + 0x9b, 0x60, 0xf4, 0x34, 0xb6, 0x63, 0xaf, 0x1f, 0x3c, 0x73, 0xdc, 0x50, + 0xe6, 0x4e, 0xea, 0xa8, 0x6a, 0xa6, 0x6c, 0xb7, 0xab, 0xa3, 0x65, 0xe9, +}; +static const unsigned char kat2844_addin1[] = { + 0x1d, 0x73, 0x7c, 0x09, 0x2b, 0xc0, 0x86, 0x7d, 0x93, 0x5c, 0x0a, 0x86, + 0x95, 0x39, 0x47, 0x63, 0x58, 0xf3, 0xcd, 0xe9, 0x32, 0xd0, 0x7d, 0x94, + 0x9b, 0x26, 0xcc, 0x19, 0x0d, 0x45, 0x0f, 0xa7, 0x59, 0x5f, 0x16, 0x2b, + 0x29, 0xc9, 0xc9, 0x6e, 0x9a, 0x84, 0x23, 0x91, 0x73, 0xc9, 0x39, 0x42, +}; +static const unsigned char kat2844_retbits[] = { + 0x97, 0x9c, 0xb9, 0xeb, 0x1e, 0x30, 0xe4, 0x00, 0x85, 0xf0, 0x7c, 0x23, + 0xc2, 0x0f, 0x34, 0x93, 0x81, 0xff, 0xf8, 0x33, 0xd3, 0x86, 0x8a, 0xd9, + 0x8d, 0x36, 0xc7, 0xf8, 0x96, 0x1c, 0xe7, 0x3b, 0xb3, 0xdc, 0x99, 0x51, + 0x36, 0xeb, 0x47, 0x2e, 0x4b, 0xff, 0x71, 0xfa, 0x1c, 0x29, 0x38, 0xa7, + 0x8c, 0xbb, 0xde, 0x64, 0x27, 0xf2, 0x11, 0x0f, 0xb6, 0xd6, 0x4c, 0x6d, + 0x32, 0x77, 0xca, 0xdd, +}; +static const struct drbg_kat_pr_false kat2844_t = { + 8, kat2844_entropyin, kat2844_nonce, kat2844_persstr, + kat2844_entropyinreseed, kat2844_addinreseed, kat2844_addin0, + kat2844_addin1, kat2844_retbits +}; +static const struct drbg_kat kat2844 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2844_t +}; + +static const unsigned char kat2845_entropyin[] = { + 0x13, 0x87, 0xd5, 0x3e, 0xa4, 0x72, 0xd7, 0x01, 0x98, 0x69, 0x8e, 0xa5, + 0x97, 0xb1, 0x46, 0xb5, 0xb4, 0x01, 0x03, 0x34, 0xd1, 0x41, 0xf7, 0x45, + 0x43, 0x6c, 0xd4, 0xc1, 0xe0, 0xf6, 0x12, 0xb2, 0x0e, 0x66, 0x8a, 0x0a, + 0x7a, 0x6c, 0x8e, 0x7d, 0xd6, 0xe4, 0x7c, 0x0c, 0x0f, 0x02, 0xd4, 0x5a, +}; +static const unsigned char kat2845_nonce[] = {0}; +static const unsigned char kat2845_persstr[] = {0}; +static const unsigned char kat2845_entropyinreseed[] = { + 0xa7, 0x9e, 0x5d, 0x18, 0x1f, 0x95, 0x5a, 0x46, 0x40, 0xf1, 0x5e, 0x7b, + 0xb5, 0xa3, 0x27, 0x88, 0xf5, 0x41, 0x5d, 0xea, 0xb9, 0x8c, 0x09, 0x52, + 0x4f, 0x63, 0x0b, 0xa7, 0x34, 0x59, 0xa5, 0xf7, 0x05, 0x04, 0x62, 0x67, + 0x02, 0x05, 0x4b, 0x3b, 0xca, 0xd3, 0x77, 0x39, 0xde, 0xc3, 0x3b, 0xb1, +}; +static const unsigned char kat2845_addinreseed[] = { + 0x1f, 0x6a, 0xba, 0xa4, 0x24, 0xba, 0xde, 0x0d, 0x26, 0x19, 0x85, 0x44, + 0xae, 0xd6, 0x4e, 0xff, 0x7a, 0x37, 0x2d, 0x16, 0xad, 0xe1, 0x9c, 0x8f, + 0xdd, 0xe4, 0xd8, 0x33, 0x8d, 0xed, 0x29, 0xbb, 0x10, 0x76, 0x60, 0x49, + 0x2e, 0x0b, 0xfb, 0xbd, 0x0e, 0xec, 0x76, 0x79, 0xa6, 0x91, 0x84, 0xf9, +}; +static const unsigned char kat2845_addin0[] = { + 0xc1, 0xca, 0x5c, 0xd0, 0xfb, 0x1b, 0x6a, 0x3f, 0x46, 0x8f, 0x9d, 0x9e, + 0xfe, 0xab, 0x54, 0x64, 0x18, 0x36, 0xae, 0xfa, 0xa4, 0xf6, 0xf2, 0xf6, + 0xd8, 0xcf, 0xca, 0x3e, 0xad, 0x7f, 0x73, 0x6f, 0xb2, 0xa0, 0x4b, 0xb1, + 0x7a, 0x9d, 0x64, 0xf2, 0xd1, 0xe8, 0xfb, 0x12, 0xef, 0x06, 0x91, 0x7b, +}; +static const unsigned char kat2845_addin1[] = { + 0x5d, 0xc9, 0x49, 0x96, 0x90, 0xcb, 0x78, 0xfb, 0xf3, 0xdf, 0x33, 0x30, + 0x26, 0xab, 0x04, 0x77, 0xd8, 0x00, 0xee, 0xfe, 0x99, 0x73, 0xdc, 0x5f, + 0x33, 0xc4, 0x63, 0x47, 0x4b, 0x84, 0x46, 0x5a, 0x95, 0x56, 0xc8, 0xab, + 0xbd, 0xde, 0x3f, 0x7e, 0x86, 0xbe, 0x57, 0xf7, 0x36, 0x8e, 0x6d, 0x63, +}; +static const unsigned char kat2845_retbits[] = { + 0x5c, 0xef, 0x6e, 0xc5, 0x3c, 0x22, 0x44, 0x8b, 0x52, 0x80, 0xad, 0xe0, + 0x51, 0xdb, 0xbe, 0x33, 0x23, 0x98, 0xa8, 0x58, 0x1c, 0x9f, 0x41, 0x88, + 0x58, 0x72, 0xa5, 0xdc, 0x54, 0xea, 0x95, 0xdf, 0x6c, 0x82, 0xfa, 0x8c, + 0x10, 0xc2, 0xf3, 0xe1, 0xf0, 0xdf, 0xd7, 0x88, 0xe4, 0x61, 0x6b, 0x97, + 0x38, 0x96, 0x03, 0xa7, 0x00, 0x09, 0x80, 0x29, 0xd0, 0x7d, 0xc6, 0xee, + 0x8c, 0x38, 0xdd, 0x41, +}; +static const struct drbg_kat_pr_false kat2845_t = { + 9, kat2845_entropyin, kat2845_nonce, kat2845_persstr, + kat2845_entropyinreseed, kat2845_addinreseed, kat2845_addin0, + kat2845_addin1, kat2845_retbits +}; +static const struct drbg_kat kat2845 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2845_t +}; + +static const unsigned char kat2846_entropyin[] = { + 0x30, 0xcc, 0xde, 0xa1, 0x31, 0xc4, 0x68, 0xd1, 0xc1, 0x80, 0xbd, 0x53, + 0x68, 0x99, 0xf6, 0xa5, 0x50, 0xd2, 0x5c, 0x31, 0xce, 0xe1, 0x0c, 0xe0, + 0xf8, 0x28, 0x59, 0x15, 0x8b, 0x5f, 0xfd, 0x3e, 0xe7, 0x71, 0xe4, 0x50, + 0x2d, 0x24, 0xb5, 0xe2, 0x69, 0xb5, 0x27, 0xba, 0x6d, 0x2e, 0xc5, 0x87, +}; +static const unsigned char kat2846_nonce[] = {0}; +static const unsigned char kat2846_persstr[] = {0}; +static const unsigned char kat2846_entropyinreseed[] = { + 0x4b, 0xbe, 0x5f, 0xe0, 0xd0, 0xcf, 0x26, 0x68, 0xd1, 0xd2, 0xc6, 0x96, + 0x71, 0xe3, 0x8c, 0x32, 0x13, 0xe5, 0x9c, 0x74, 0xed, 0x06, 0xc8, 0xfe, + 0x5a, 0x53, 0x4e, 0xe8, 0x3a, 0x37, 0xf5, 0x49, 0xf1, 0xa6, 0x83, 0xd9, + 0x95, 0xb6, 0x07, 0x85, 0xbe, 0x71, 0x35, 0x63, 0x80, 0x82, 0xf7, 0x06, +}; +static const unsigned char kat2846_addinreseed[] = { + 0x44, 0x71, 0x09, 0x2a, 0x77, 0x1a, 0x15, 0x0b, 0xcd, 0xe9, 0x90, 0x05, + 0xcb, 0x67, 0x6c, 0xdf, 0xf4, 0xd5, 0xb4, 0x78, 0xcc, 0xdd, 0x53, 0xb6, + 0x19, 0xe1, 0x9d, 0xfd, 0x4b, 0xec, 0x32, 0x5f, 0xe9, 0x8f, 0x72, 0xd0, + 0x32, 0x0a, 0x36, 0xa6, 0x4d, 0xb4, 0x0b, 0x53, 0x55, 0x8d, 0x13, 0x79, +}; +static const unsigned char kat2846_addin0[] = { + 0x7d, 0x15, 0x98, 0x95, 0xec, 0xc2, 0x45, 0xe4, 0x91, 0x2d, 0xf0, 0xa2, + 0x17, 0x75, 0x34, 0x7e, 0x1c, 0x1a, 0x16, 0x60, 0x1b, 0xc7, 0xf0, 0xa1, + 0x5a, 0x75, 0x92, 0xa4, 0xe5, 0x7c, 0x2d, 0x6b, 0x9f, 0xed, 0xae, 0x13, + 0x65, 0x39, 0x06, 0x31, 0x6c, 0xca, 0x0d, 0x15, 0xe1, 0xa5, 0xeb, 0x65, +}; +static const unsigned char kat2846_addin1[] = { + 0x5e, 0xba, 0xe3, 0x24, 0x49, 0x54, 0x6e, 0xcc, 0xe2, 0x03, 0xfc, 0xb5, + 0x8f, 0xeb, 0x40, 0x3e, 0x7b, 0xf8, 0x45, 0x94, 0xa7, 0xfd, 0xcb, 0xe9, + 0x76, 0x7b, 0xda, 0xe6, 0xcb, 0x09, 0x0d, 0xa3, 0x8b, 0x9f, 0xd2, 0xbd, + 0xa4, 0xb1, 0x01, 0x58, 0x31, 0x47, 0x9d, 0x83, 0x04, 0x23, 0x65, 0x2c, +}; +static const unsigned char kat2846_retbits[] = { + 0x9b, 0xb5, 0x0d, 0x63, 0xfa, 0xfb, 0xc2, 0x65, 0x65, 0xe1, 0xd6, 0xd2, + 0x14, 0x7d, 0x99, 0xe5, 0xac, 0xb0, 0xa6, 0x23, 0x7e, 0x23, 0xa1, 0xbd, + 0xa0, 0x6d, 0xb8, 0xed, 0x35, 0xa5, 0xde, 0x9d, 0xb1, 0x04, 0x20, 0x60, + 0xcd, 0x46, 0xe4, 0x42, 0x0d, 0x40, 0x16, 0x33, 0xc3, 0x33, 0x1a, 0x6c, + 0xfd, 0x62, 0xdd, 0x20, 0xd4, 0xae, 0x8f, 0xc1, 0x50, 0x0f, 0x7e, 0x28, + 0xdd, 0x2e, 0xc4, 0x06, +}; +static const struct drbg_kat_pr_false kat2846_t = { + 10, kat2846_entropyin, kat2846_nonce, kat2846_persstr, + kat2846_entropyinreseed, kat2846_addinreseed, kat2846_addin0, + kat2846_addin1, kat2846_retbits +}; +static const struct drbg_kat kat2846 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2846_t +}; + +static const unsigned char kat2847_entropyin[] = { + 0x94, 0xb6, 0x35, 0xe2, 0x06, 0xc6, 0x21, 0xc4, 0x1d, 0x39, 0xe5, 0x04, + 0x83, 0x7a, 0xf3, 0x87, 0x57, 0xb9, 0xe0, 0x47, 0x47, 0xd1, 0x57, 0xf9, + 0x51, 0x52, 0x78, 0x21, 0x4f, 0xf2, 0x49, 0x9c, 0xae, 0xd1, 0x55, 0xc6, + 0xcd, 0x5c, 0xbe, 0x33, 0x3b, 0xd7, 0xfd, 0x3b, 0x95, 0x21, 0x68, 0xeb, +}; +static const unsigned char kat2847_nonce[] = {0}; +static const unsigned char kat2847_persstr[] = {0}; +static const unsigned char kat2847_entropyinreseed[] = { + 0xd3, 0xc5, 0x9c, 0x86, 0xfd, 0xf1, 0xc0, 0xe6, 0x4c, 0x68, 0x73, 0x4b, + 0x0e, 0x79, 0x18, 0x3c, 0xb6, 0x96, 0x54, 0xe3, 0xea, 0x88, 0x4b, 0x92, + 0x75, 0xb1, 0x6e, 0x51, 0x34, 0xba, 0x88, 0xec, 0x68, 0x3c, 0xad, 0xa5, + 0xc7, 0xe0, 0xb8, 0x44, 0xcf, 0x56, 0x65, 0x52, 0x0d, 0x21, 0xd4, 0x95, +}; +static const unsigned char kat2847_addinreseed[] = { + 0x3e, 0x0b, 0x17, 0xa8, 0x3a, 0x2e, 0x99, 0xe3, 0x31, 0x9b, 0x5e, 0x33, + 0xd0, 0x29, 0xaf, 0x66, 0x16, 0x9b, 0x83, 0x21, 0x40, 0x74, 0xf6, 0x22, + 0x07, 0x84, 0xed, 0xf6, 0x65, 0xeb, 0x3b, 0x22, 0x82, 0xa0, 0x22, 0xff, + 0x3b, 0xa1, 0x72, 0x7b, 0x0b, 0xe9, 0x8d, 0xc3, 0xa4, 0xab, 0xb7, 0xce, +}; +static const unsigned char kat2847_addin0[] = { + 0xf6, 0xc2, 0x88, 0x42, 0x8d, 0xeb, 0x32, 0xde, 0x2f, 0xdf, 0x95, 0xc8, + 0x52, 0x22, 0xc5, 0xa9, 0x20, 0xd6, 0x2d, 0xee, 0x13, 0x21, 0xc6, 0xb3, + 0x26, 0x40, 0x04, 0x91, 0x7a, 0xe7, 0x65, 0x17, 0x00, 0x5b, 0xeb, 0x3e, + 0xbf, 0xbe, 0xab, 0xce, 0xca, 0x84, 0x4f, 0xe7, 0x89, 0xe3, 0xdc, 0x1b, +}; +static const unsigned char kat2847_addin1[] = { + 0xc0, 0x8a, 0x89, 0x6f, 0xc0, 0xba, 0xe0, 0x5a, 0x44, 0xca, 0x97, 0x07, + 0x1e, 0xcc, 0x0b, 0x71, 0x75, 0x46, 0x87, 0xb0, 0x79, 0xbb, 0x95, 0x0d, + 0x7f, 0x7b, 0x9d, 0x3d, 0xcf, 0x20, 0x57, 0x04, 0x26, 0x8d, 0x0f, 0xa2, + 0xf9, 0xb0, 0x34, 0x30, 0x65, 0xc8, 0x9a, 0xa8, 0x59, 0x09, 0xa7, 0x60, +}; +static const unsigned char kat2847_retbits[] = { + 0x57, 0x5a, 0x0d, 0xc1, 0x79, 0x0b, 0x09, 0xfd, 0x56, 0x2d, 0x88, 0xaf, + 0xba, 0x38, 0x5a, 0x20, 0xc1, 0x27, 0xad, 0xc4, 0x59, 0x48, 0x23, 0xeb, + 0x59, 0xcc, 0x08, 0x28, 0x21, 0x87, 0xfc, 0xae, 0x14, 0xc8, 0xc7, 0x83, + 0x49, 0x2b, 0x8d, 0xf1, 0x73, 0xfc, 0xc6, 0x10, 0x89, 0xc0, 0x8d, 0x0e, + 0x42, 0x1b, 0x6d, 0x7d, 0x15, 0xb0, 0xc0, 0x0a, 0x77, 0x1e, 0x9d, 0xac, + 0x8b, 0xb6, 0xbf, 0xf9, +}; +static const struct drbg_kat_pr_false kat2847_t = { + 11, kat2847_entropyin, kat2847_nonce, kat2847_persstr, + kat2847_entropyinreseed, kat2847_addinreseed, kat2847_addin0, + kat2847_addin1, kat2847_retbits +}; +static const struct drbg_kat kat2847 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2847_t +}; + +static const unsigned char kat2848_entropyin[] = { + 0x38, 0x40, 0xa4, 0xae, 0xc3, 0x52, 0xa6, 0x41, 0xa9, 0xfa, 0xc7, 0x7b, + 0xb2, 0x65, 0x03, 0x1f, 0x80, 0x7c, 0x26, 0xa5, 0x4a, 0x56, 0x1d, 0x5f, + 0x8a, 0x27, 0x53, 0x34, 0x52, 0xc3, 0x57, 0xf2, 0xb4, 0x51, 0xfb, 0x93, + 0x87, 0x2f, 0x4a, 0x03, 0xd8, 0x27, 0xfd, 0xc1, 0x79, 0x57, 0x3d, 0xb9, +}; +static const unsigned char kat2848_nonce[] = {0}; +static const unsigned char kat2848_persstr[] = {0}; +static const unsigned char kat2848_entropyinreseed[] = { + 0xd5, 0x5d, 0x27, 0x76, 0x8a, 0xe2, 0xbe, 0xeb, 0x68, 0x01, 0xa1, 0xb1, + 0xd4, 0x40, 0xc9, 0x81, 0xc6, 0x03, 0xdf, 0x06, 0xfb, 0xe9, 0xbd, 0xee, + 0x32, 0xfe, 0x97, 0xa4, 0xb2, 0x04, 0x41, 0x78, 0x56, 0x48, 0x6b, 0x4a, + 0x34, 0x0f, 0x16, 0xc0, 0x2f, 0x67, 0x24, 0x5c, 0x29, 0x23, 0xdb, 0xc2, +}; +static const unsigned char kat2848_addinreseed[] = { + 0x08, 0xae, 0xd0, 0xdf, 0xf1, 0xe1, 0x4c, 0x4f, 0x11, 0x90, 0xe9, 0x13, + 0x54, 0x9a, 0x95, 0x37, 0x00, 0x57, 0xc7, 0x9f, 0x9a, 0xb2, 0x00, 0x5e, + 0x1d, 0x9d, 0x01, 0xa3, 0xba, 0x1f, 0x0f, 0x43, 0x78, 0xca, 0xbd, 0xca, + 0x0b, 0x37, 0x93, 0x22, 0xb2, 0x86, 0x96, 0xdf, 0x4a, 0x2d, 0xd5, 0x03, +}; +static const unsigned char kat2848_addin0[] = { + 0xc9, 0x62, 0x12, 0x8b, 0x63, 0xbe, 0x95, 0x94, 0x10, 0xf9, 0x98, 0x67, + 0xcf, 0xce, 0x8e, 0xf7, 0x8b, 0xed, 0xfd, 0x4a, 0xa3, 0xfc, 0x6b, 0xbe, + 0x92, 0xac, 0xe9, 0x50, 0xf6, 0x6a, 0x9d, 0xc1, 0x82, 0x35, 0x90, 0x8c, + 0xcf, 0x18, 0x9e, 0x58, 0x40, 0xf5, 0x84, 0x60, 0x34, 0x8f, 0xd5, 0xa3, +}; +static const unsigned char kat2848_addin1[] = { + 0x04, 0xc1, 0x15, 0xc2, 0x87, 0x11, 0x65, 0xe9, 0x21, 0x35, 0x90, 0xc1, + 0x5c, 0x03, 0x45, 0x1c, 0x72, 0x8b, 0xb6, 0xe2, 0x81, 0x91, 0x8a, 0x37, + 0xce, 0xe3, 0x50, 0xd5, 0x9e, 0x06, 0x26, 0x6d, 0x65, 0xff, 0x8c, 0xee, + 0xa5, 0xf9, 0xb3, 0xc5, 0x79, 0x3b, 0x1c, 0x66, 0x45, 0xfb, 0x86, 0xd4, +}; +static const unsigned char kat2848_retbits[] = { + 0xa8, 0x56, 0x1d, 0x30, 0xe2, 0xfb, 0x9e, 0xaa, 0x7e, 0x30, 0x81, 0x38, + 0x5c, 0x82, 0xb3, 0xba, 0x5a, 0xfe, 0x99, 0x18, 0x59, 0x5d, 0x55, 0xaf, + 0xc4, 0x40, 0x2e, 0x88, 0x6a, 0x6c, 0x2f, 0xe0, 0xa0, 0x04, 0xb0, 0xd9, + 0xad, 0x2b, 0x7b, 0x2a, 0xe3, 0xff, 0x75, 0xaf, 0x39, 0x61, 0xe6, 0x90, + 0xd7, 0xec, 0x94, 0x84, 0x7d, 0xc3, 0x2e, 0x2c, 0x4a, 0x89, 0x68, 0x51, + 0xe6, 0xdd, 0x06, 0x70, +}; +static const struct drbg_kat_pr_false kat2848_t = { + 12, kat2848_entropyin, kat2848_nonce, kat2848_persstr, + kat2848_entropyinreseed, kat2848_addinreseed, kat2848_addin0, + kat2848_addin1, kat2848_retbits +}; +static const struct drbg_kat kat2848 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2848_t +}; + +static const unsigned char kat2849_entropyin[] = { + 0x07, 0xf0, 0xe0, 0xd4, 0xb9, 0xcb, 0x7d, 0x6d, 0xdb, 0xde, 0x41, 0xc3, + 0xf2, 0xeb, 0x34, 0x25, 0x68, 0x22, 0x76, 0x85, 0x0d, 0xfa, 0x1a, 0xff, + 0xf6, 0x39, 0x0a, 0x58, 0xd0, 0x47, 0x1f, 0xd7, 0x56, 0xd0, 0xdd, 0xee, + 0x3b, 0x07, 0x9e, 0x0d, 0xdb, 0x59, 0xb5, 0x25, 0xca, 0x45, 0xbe, 0xae, +}; +static const unsigned char kat2849_nonce[] = {0}; +static const unsigned char kat2849_persstr[] = {0}; +static const unsigned char kat2849_entropyinreseed[] = { + 0x05, 0x5c, 0xd0, 0x20, 0xdd, 0xd6, 0xf5, 0x32, 0x95, 0xbc, 0x19, 0x9a, + 0x63, 0x70, 0x21, 0xc0, 0x1f, 0x27, 0xe3, 0x23, 0xe6, 0x5d, 0x7b, 0xef, + 0x36, 0xec, 0xe3, 0xfb, 0x4e, 0x11, 0xa9, 0x17, 0xfd, 0x41, 0xe7, 0x3a, + 0xef, 0x00, 0xac, 0x38, 0xbd, 0x2b, 0x40, 0x75, 0x23, 0x6a, 0xdb, 0x7a, +}; +static const unsigned char kat2849_addinreseed[] = { + 0x74, 0x8c, 0xbd, 0x4b, 0x23, 0xf1, 0xe7, 0x3b, 0xc1, 0x78, 0xb0, 0x90, + 0xa8, 0x8a, 0x70, 0x6e, 0xf4, 0x23, 0x7f, 0xd7, 0x0c, 0xb6, 0xbb, 0x2f, + 0x05, 0xba, 0x89, 0x06, 0x86, 0xfd, 0xb9, 0x86, 0x3e, 0xd4, 0x0a, 0x88, + 0x31, 0x89, 0x71, 0x9c, 0x12, 0xdf, 0x60, 0x71, 0xbd, 0xfd, 0x65, 0xed, +}; +static const unsigned char kat2849_addin0[] = { + 0x43, 0x17, 0x1a, 0x09, 0x02, 0x19, 0x89, 0x1a, 0xc2, 0xde, 0xde, 0xc6, + 0x23, 0xb7, 0x22, 0x09, 0xbe, 0x58, 0xf6, 0xca, 0x36, 0x7d, 0xe9, 0xe2, + 0x3f, 0xe7, 0x1c, 0x43, 0x9d, 0x5c, 0x66, 0xd2, 0xfb, 0x5c, 0x3c, 0x9b, + 0x6d, 0xa5, 0xfe, 0xe4, 0xe7, 0xf5, 0xe0, 0x73, 0x7d, 0x21, 0x7f, 0x2f, +}; +static const unsigned char kat2849_addin1[] = { + 0xd5, 0x3a, 0xc1, 0x18, 0xa6, 0xc1, 0xb8, 0x19, 0x46, 0xee, 0xd0, 0x5c, + 0xcc, 0x6f, 0xfa, 0xf9, 0x93, 0x46, 0x40, 0x72, 0xb8, 0x6b, 0x68, 0x95, + 0xf7, 0x34, 0xb6, 0x64, 0xf6, 0x82, 0x64, 0xbb, 0x35, 0x1a, 0x82, 0x4e, + 0x07, 0x52, 0xd1, 0xb1, 0x91, 0x61, 0xf7, 0x1c, 0xcf, 0xcf, 0x93, 0xfc, +}; +static const unsigned char kat2849_retbits[] = { + 0xbd, 0xfe, 0xa3, 0x8e, 0x7f, 0xf3, 0x7e, 0xd4, 0x7d, 0x7a, 0x45, 0x0a, + 0xda, 0x63, 0xbe, 0x5f, 0xa2, 0x6e, 0xb1, 0xfe, 0x80, 0x32, 0x5e, 0x57, + 0xa3, 0xcd, 0x39, 0x1b, 0xda, 0xf0, 0x74, 0x02, 0x2b, 0xee, 0x4a, 0x0f, + 0x6c, 0x80, 0x6c, 0xf3, 0xb3, 0x64, 0x8a, 0x4e, 0xdd, 0x68, 0x22, 0x63, + 0x76, 0xa9, 0x55, 0x66, 0x82, 0x81, 0xeb, 0x3e, 0x0e, 0xdd, 0xfb, 0xa0, + 0x2d, 0xfe, 0xca, 0xe8, +}; +static const struct drbg_kat_pr_false kat2849_t = { + 13, kat2849_entropyin, kat2849_nonce, kat2849_persstr, + kat2849_entropyinreseed, kat2849_addinreseed, kat2849_addin0, + kat2849_addin1, kat2849_retbits +}; +static const struct drbg_kat kat2849 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2849_t +}; + +static const unsigned char kat2850_entropyin[] = { + 0x54, 0xd6, 0xfc, 0xcc, 0x17, 0x3c, 0x92, 0xe9, 0x39, 0xbf, 0xaa, 0xab, + 0xbf, 0x0b, 0x67, 0xb3, 0x62, 0xe5, 0xe2, 0x8e, 0xf1, 0x9b, 0xb2, 0x28, + 0x04, 0xdc, 0x4d, 0x08, 0x30, 0x78, 0x4c, 0x65, 0x34, 0x37, 0x6d, 0xb0, + 0xfb, 0x57, 0x95, 0x3d, 0xe7, 0x1d, 0xa4, 0x83, 0x94, 0x7f, 0x2f, 0x86, +}; +static const unsigned char kat2850_nonce[] = {0}; +static const unsigned char kat2850_persstr[] = {0}; +static const unsigned char kat2850_entropyinreseed[] = { + 0xa9, 0x7d, 0xe5, 0x96, 0x24, 0xf1, 0x8f, 0x7a, 0x94, 0xa6, 0xd4, 0x81, + 0x29, 0xe1, 0x98, 0x8d, 0xe1, 0x24, 0x8b, 0x1b, 0xa6, 0xc8, 0x1e, 0xcd, + 0x38, 0x82, 0xda, 0xf0, 0x31, 0x33, 0x43, 0xd5, 0xbb, 0x74, 0xe1, 0x62, + 0xe2, 0xe4, 0x63, 0xa6, 0xc1, 0xe5, 0xde, 0xf3, 0x89, 0xe2, 0x4e, 0x10, +}; +static const unsigned char kat2850_addinreseed[] = { + 0x86, 0x05, 0x0f, 0x8c, 0x9a, 0x0d, 0xf8, 0x12, 0xe6, 0xc4, 0x4d, 0x83, + 0xea, 0x9c, 0x9f, 0xfc, 0x47, 0x95, 0x34, 0xa6, 0xc4, 0x08, 0x7e, 0x91, + 0x2a, 0x63, 0x09, 0x2e, 0x18, 0x9c, 0xc1, 0x6e, 0xc0, 0x48, 0x93, 0x1e, + 0xb7, 0xaf, 0x64, 0x60, 0xd6, 0x7c, 0xc2, 0x74, 0x15, 0x4e, 0xe9, 0x14, +}; +static const unsigned char kat2850_addin0[] = { + 0x54, 0xdd, 0x28, 0x54, 0x3c, 0x85, 0x9f, 0xd4, 0xdc, 0x1e, 0x4f, 0x0a, + 0x44, 0xec, 0x9a, 0xa2, 0xb7, 0x58, 0xd5, 0x13, 0x79, 0xc0, 0xa9, 0xc7, + 0x58, 0x05, 0x35, 0x67, 0x93, 0x9d, 0xb6, 0xa9, 0x06, 0x32, 0x0d, 0x83, + 0x69, 0x3a, 0x0a, 0x59, 0x1f, 0xe9, 0x9c, 0x3e, 0x24, 0xd1, 0x29, 0x3d, +}; +static const unsigned char kat2850_addin1[] = { + 0x38, 0x03, 0xa5, 0x8e, 0x41, 0xfb, 0x76, 0x68, 0x47, 0xb9, 0xf5, 0x68, + 0xec, 0xd7, 0xf1, 0x99, 0x30, 0x91, 0xc4, 0x68, 0x9f, 0xcf, 0x70, 0xf7, + 0x54, 0xd3, 0x45, 0xec, 0x7a, 0x3f, 0x45, 0xd1, 0xfe, 0xcb, 0xfc, 0xc5, + 0x2c, 0xd6, 0x0b, 0x47, 0xb5, 0xa4, 0x86, 0xac, 0xb1, 0x55, 0xe2, 0x13, +}; +static const unsigned char kat2850_retbits[] = { + 0x3c, 0xfb, 0x2e, 0xda, 0x22, 0xc4, 0xf0, 0x18, 0x93, 0xb4, 0x76, 0x0b, + 0x78, 0x5d, 0x33, 0x0c, 0xb7, 0x71, 0x93, 0x8e, 0xd6, 0xf2, 0xf9, 0x29, + 0x03, 0x0f, 0xe6, 0x25, 0x78, 0x0f, 0xb9, 0x1f, 0xc2, 0xf9, 0x95, 0x24, + 0x09, 0xb9, 0x9f, 0x01, 0x1c, 0xb5, 0xe7, 0xe0, 0xb4, 0xa7, 0xd4, 0x61, + 0xbe, 0x80, 0xe9, 0x4e, 0x91, 0x11, 0x1a, 0xce, 0x06, 0x04, 0xa7, 0xa4, + 0x17, 0x19, 0xf3, 0xb3, +}; +static const struct drbg_kat_pr_false kat2850_t = { + 14, kat2850_entropyin, kat2850_nonce, kat2850_persstr, + kat2850_entropyinreseed, kat2850_addinreseed, kat2850_addin0, + kat2850_addin1, kat2850_retbits +}; +static const struct drbg_kat kat2850 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat2850_t +}; + +static const unsigned char kat2851_entropyin[] = { + 0xb5, 0xe2, 0xaf, 0x38, 0x59, 0x1a, 0x97, 0x43, 0xe5, 0xd3, 0xe4, 0x58, + 0x84, 0x8a, 0x39, 0x98, 0x53, 0x6d, 0x3b, 0x62, 0x5e, 0x16, 0x94, 0xbe, + 0x84, 0x7f, 0x95, 0xc3, 0xbf, 0xbd, 0xa2, 0x67, 0xf0, 0x86, 0x24, 0xbe, + 0x4b, 0xb6, 0xaa, 0x49, 0x6e, 0x1b, 0x59, 0x6b, 0xe5, 0x23, 0xe7, 0xc4, +}; +static const unsigned char kat2851_nonce[] = {0}; +static const unsigned char kat2851_persstr[] = { + 0x0a, 0x9a, 0x59, 0xe7, 0x60, 0x5c, 0x0e, 0x12, 0xfa, 0xe3, 0x17, 0xbb, + 0x00, 0x4a, 0xec, 0xf1, 0x42, 0x7b, 0xda, 0x4d, 0xca, 0x77, 0x18, 0x80, + 0x18, 0x95, 0xc3, 0x81, 0x79, 0xfd, 0x36, 0xcd, 0x92, 0x26, 0x34, 0xc3, + 0x78, 0x9a, 0x99, 0xb9, 0xd9, 0xc5, 0x56, 0xfe, 0x50, 0xa4, 0x1d, 0xe4, +}; +static const unsigned char kat2851_entropyinreseed[] = { + 0x94, 0x2e, 0xe9, 0x72, 0xa5, 0x99, 0xf3, 0x46, 0xbe, 0x15, 0x29, 0x9d, + 0x34, 0x78, 0x23, 0x02, 0x84, 0x69, 0xfc, 0x88, 0x3c, 0x5e, 0x45, 0x47, + 0x9e, 0x92, 0x43, 0xdf, 0x87, 0x10, 0xd1, 0xdc, 0x5c, 0x30, 0x73, 0x03, + 0x1e, 0x62, 0xf6, 0x05, 0xf2, 0x97, 0x47, 0x9c, 0x5b, 0xcf, 0xf9, 0x93, +}; +static const unsigned char kat2851_addinreseed[] = {0}; +static const unsigned char kat2851_addin0[] = {0}; +static const unsigned char kat2851_addin1[] = {0}; +static const unsigned char kat2851_retbits[] = { + 0x1f, 0x81, 0x82, 0x18, 0xf0, 0x6c, 0x98, 0x33, 0xf0, 0x84, 0xc2, 0xb0, + 0xec, 0xd0, 0x58, 0xd3, 0x77, 0xb2, 0xd0, 0x8c, 0x29, 0x43, 0xf4, 0xd2, + 0x4d, 0x2b, 0x5d, 0x7c, 0xad, 0x2b, 0xa4, 0x96, 0x97, 0xdc, 0x3a, 0xd8, + 0xd6, 0xc5, 0xc5, 0xaf, 0x63, 0x72, 0xf0, 0x2c, 0x18, 0x68, 0x75, 0x6c, + 0xa7, 0xb3, 0x9b, 0x54, 0x8c, 0xbf, 0x0d, 0x2b, 0xc5, 0xda, 0x2d, 0x11, + 0xed, 0x5c, 0x8f, 0x7f, +}; +static const struct drbg_kat_pr_false kat2851_t = { + 0, kat2851_entropyin, kat2851_nonce, kat2851_persstr, + kat2851_entropyinreseed, kat2851_addinreseed, kat2851_addin0, + kat2851_addin1, kat2851_retbits +}; +static const struct drbg_kat kat2851 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2851_t +}; + +static const unsigned char kat2852_entropyin[] = { + 0x60, 0xe9, 0x82, 0x30, 0x04, 0xe2, 0x95, 0x24, 0x13, 0x8c, 0x8f, 0x86, + 0x61, 0x65, 0x7d, 0x1f, 0x04, 0xcc, 0xc4, 0x18, 0xc5, 0xe2, 0xc6, 0x77, + 0xd2, 0x60, 0x78, 0xbe, 0xe0, 0x24, 0xe7, 0x16, 0x90, 0x63, 0xb1, 0x47, + 0xb7, 0xe0, 0x99, 0x46, 0x46, 0x8f, 0x4b, 0x9e, 0x34, 0x81, 0x97, 0x48, +}; +static const unsigned char kat2852_nonce[] = {0}; +static const unsigned char kat2852_persstr[] = { + 0x13, 0xaa, 0x6b, 0x6c, 0xa5, 0xe9, 0x4d, 0x0f, 0x2a, 0x5b, 0x3f, 0x50, + 0x5f, 0x8e, 0xb3, 0xaa, 0xc2, 0x2f, 0xc3, 0x93, 0x71, 0x5c, 0xde, 0x10, + 0x19, 0x63, 0xec, 0x87, 0x20, 0x69, 0x12, 0x60, 0x7d, 0x74, 0xa1, 0x1f, + 0x3c, 0x09, 0xa5, 0x5a, 0xfa, 0x18, 0xc5, 0xcc, 0x8a, 0xe1, 0x19, 0x17, +}; +static const unsigned char kat2852_entropyinreseed[] = { + 0x4a, 0x16, 0xf6, 0x7d, 0x28, 0x0b, 0x34, 0x62, 0x85, 0x97, 0xc6, 0x95, + 0x3a, 0xb5, 0xaf, 0x39, 0x02, 0xb9, 0x1b, 0x05, 0xc2, 0xc0, 0xc7, 0xc9, + 0x53, 0x66, 0xb9, 0x9c, 0x7e, 0x6a, 0x9c, 0x30, 0xe8, 0x76, 0xd1, 0xe3, + 0xc6, 0x34, 0xbd, 0x03, 0x77, 0xdc, 0x96, 0x9e, 0xa1, 0x19, 0x24, 0x7d, +}; +static const unsigned char kat2852_addinreseed[] = {0}; +static const unsigned char kat2852_addin0[] = {0}; +static const unsigned char kat2852_addin1[] = {0}; +static const unsigned char kat2852_retbits[] = { + 0x1b, 0x80, 0x9b, 0xde, 0x83, 0x2e, 0x7a, 0xb5, 0xf3, 0x72, 0x73, 0xd7, + 0xf1, 0xcc, 0xb4, 0xd7, 0xbb, 0xb1, 0xa1, 0x10, 0x53, 0xcc, 0x72, 0x27, + 0x1c, 0x44, 0xf4, 0xd2, 0x1a, 0x3e, 0xfb, 0x9a, 0x06, 0xa5, 0x48, 0x13, + 0x91, 0x1d, 0xc9, 0x9e, 0xd0, 0x16, 0x11, 0xf7, 0x57, 0x57, 0x67, 0x7b, + 0xa8, 0x92, 0x71, 0x9c, 0xb6, 0xce, 0x9d, 0xde, 0x26, 0x22, 0x90, 0x45, + 0x3e, 0x4f, 0x00, 0xc3, +}; +static const struct drbg_kat_pr_false kat2852_t = { + 1, kat2852_entropyin, kat2852_nonce, kat2852_persstr, + kat2852_entropyinreseed, kat2852_addinreseed, kat2852_addin0, + kat2852_addin1, kat2852_retbits +}; +static const struct drbg_kat kat2852 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2852_t +}; + +static const unsigned char kat2853_entropyin[] = { + 0xf4, 0xd2, 0xdb, 0xd7, 0xc0, 0xf5, 0x21, 0x89, 0xe3, 0x29, 0x41, 0x5d, + 0x96, 0x90, 0xc8, 0x61, 0x56, 0x63, 0xc8, 0x6f, 0x5c, 0x09, 0x75, 0x29, + 0xe6, 0x8c, 0x9a, 0x7e, 0xca, 0x0a, 0xd0, 0xbc, 0x2e, 0xae, 0xcf, 0x91, + 0x18, 0x87, 0x62, 0x22, 0x04, 0xca, 0x9e, 0xdc, 0x1e, 0xae, 0x41, 0x0d, +}; +static const unsigned char kat2853_nonce[] = {0}; +static const unsigned char kat2853_persstr[] = { + 0x99, 0x62, 0xca, 0xa3, 0x5f, 0x06, 0xbc, 0x27, 0x6a, 0x23, 0x61, 0xe4, + 0x02, 0x9b, 0x1b, 0xf0, 0x21, 0x84, 0x02, 0x4c, 0x52, 0xcb, 0xbf, 0xf2, + 0xd8, 0xfd, 0x1e, 0xeb, 0xfa, 0xa2, 0x31, 0xab, 0x49, 0x13, 0x68, 0x0c, + 0x2f, 0xca, 0x1a, 0xfd, 0xd2, 0x29, 0x79, 0x24, 0x1a, 0x29, 0x1d, 0xb2, +}; +static const unsigned char kat2853_entropyinreseed[] = { + 0x43, 0x07, 0xea, 0x69, 0x5c, 0x2a, 0xd7, 0xd8, 0x0b, 0x36, 0x47, 0x6a, + 0x5e, 0x35, 0x27, 0xca, 0x13, 0xff, 0x8f, 0xdd, 0x7c, 0x5c, 0xc7, 0x12, + 0xbb, 0x0a, 0x40, 0x71, 0xc0, 0x08, 0xfd, 0x5a, 0xde, 0xff, 0x70, 0xe5, + 0xde, 0x94, 0x39, 0x0f, 0x58, 0xe1, 0xfe, 0x88, 0x4b, 0x41, 0x96, 0xeb, +}; +static const unsigned char kat2853_addinreseed[] = {0}; +static const unsigned char kat2853_addin0[] = {0}; +static const unsigned char kat2853_addin1[] = {0}; +static const unsigned char kat2853_retbits[] = { + 0xd9, 0xd0, 0xde, 0xf9, 0x80, 0x0d, 0xde, 0x19, 0xe1, 0x24, 0x05, 0xb9, + 0x20, 0xa6, 0x80, 0x60, 0x27, 0x15, 0xcc, 0x91, 0xc7, 0x40, 0x88, 0xf4, + 0x19, 0x7b, 0x2c, 0x1d, 0x60, 0xf0, 0xb3, 0x3d, 0x34, 0xcd, 0x05, 0x01, + 0x6f, 0xcb, 0x69, 0x91, 0x39, 0x40, 0x2c, 0xf4, 0xfd, 0x5b, 0x7f, 0xa2, + 0xd3, 0xd7, 0x44, 0xad, 0x56, 0x75, 0xec, 0x06, 0x1a, 0xdb, 0xfc, 0x93, + 0x79, 0xa4, 0xca, 0xdb, +}; +static const struct drbg_kat_pr_false kat2853_t = { + 2, kat2853_entropyin, kat2853_nonce, kat2853_persstr, + kat2853_entropyinreseed, kat2853_addinreseed, kat2853_addin0, + kat2853_addin1, kat2853_retbits +}; +static const struct drbg_kat kat2853 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2853_t +}; + +static const unsigned char kat2854_entropyin[] = { + 0xd4, 0x42, 0x89, 0x5e, 0x5f, 0x7b, 0x2a, 0x33, 0xde, 0x8c, 0xab, 0xe3, + 0x0e, 0xa2, 0xaa, 0xca, 0x3b, 0xd4, 0x13, 0xe6, 0x2f, 0x65, 0x14, 0xd0, + 0xe6, 0x50, 0x9a, 0xba, 0x81, 0xaa, 0x58, 0xf9, 0xfc, 0x7f, 0xa9, 0xde, + 0xb5, 0xb1, 0x0d, 0xc2, 0x75, 0xdf, 0x63, 0x83, 0xfc, 0x54, 0x90, 0x24, +}; +static const unsigned char kat2854_nonce[] = {0}; +static const unsigned char kat2854_persstr[] = { + 0xe4, 0x32, 0xbe, 0x1e, 0xa0, 0x4e, 0x11, 0xe5, 0xef, 0x9d, 0x39, 0x89, + 0x2b, 0xbd, 0x38, 0xae, 0x2e, 0xa8, 0x99, 0x14, 0x38, 0x18, 0x1a, 0x34, + 0x28, 0x34, 0x85, 0x30, 0xec, 0x37, 0x7f, 0xb0, 0xd8, 0xa8, 0x3f, 0xbf, + 0xe0, 0xfb, 0x34, 0xec, 0x0e, 0xb1, 0xe6, 0x94, 0xd9, 0x1a, 0x5d, 0xa2, +}; +static const unsigned char kat2854_entropyinreseed[] = { + 0xb5, 0xc6, 0x20, 0x1a, 0xd5, 0x05, 0x9f, 0xf6, 0x61, 0xc2, 0x73, 0x67, + 0xc5, 0x60, 0x02, 0x9f, 0x06, 0xcb, 0x93, 0x6c, 0x97, 0x0a, 0x74, 0x4e, + 0xa1, 0xac, 0xa4, 0x64, 0xb9, 0x03, 0xc0, 0x69, 0x88, 0xb4, 0x80, 0x00, + 0x46, 0x20, 0x8c, 0xf3, 0x65, 0x94, 0xd0, 0x6c, 0xa3, 0x97, 0x77, 0x35, +}; +static const unsigned char kat2854_addinreseed[] = {0}; +static const unsigned char kat2854_addin0[] = {0}; +static const unsigned char kat2854_addin1[] = {0}; +static const unsigned char kat2854_retbits[] = { + 0x8e, 0xdb, 0xaf, 0xd5, 0x51, 0xfd, 0x28, 0xea, 0x37, 0x19, 0x0c, 0x6a, + 0x99, 0xb5, 0x48, 0x31, 0x89, 0x4a, 0xc5, 0x4c, 0x93, 0x4d, 0x01, 0xb6, + 0xfc, 0x3e, 0x43, 0x48, 0x4c, 0x87, 0xcd, 0x78, 0x19, 0x54, 0x72, 0xab, + 0x30, 0x44, 0xec, 0x99, 0xcc, 0x19, 0x74, 0xbe, 0x04, 0xe9, 0x0c, 0x23, + 0x3e, 0x02, 0xc8, 0x37, 0xbc, 0x5e, 0xaf, 0x42, 0x7a, 0x0f, 0xc0, 0xfd, + 0x38, 0xd3, 0x5f, 0x5e, +}; +static const struct drbg_kat_pr_false kat2854_t = { + 3, kat2854_entropyin, kat2854_nonce, kat2854_persstr, + kat2854_entropyinreseed, kat2854_addinreseed, kat2854_addin0, + kat2854_addin1, kat2854_retbits +}; +static const struct drbg_kat kat2854 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2854_t +}; + +static const unsigned char kat2855_entropyin[] = { + 0xe1, 0x1e, 0x6a, 0x3f, 0x6a, 0x33, 0xe0, 0x20, 0xcf, 0x04, 0x96, 0x5a, + 0xa4, 0x29, 0x94, 0xdd, 0x9c, 0x6d, 0x30, 0xcd, 0xec, 0x75, 0x8a, 0x2e, + 0x02, 0xca, 0x01, 0x4a, 0x6c, 0x48, 0xd5, 0xb6, 0x5f, 0xc0, 0x3a, 0x0c, + 0x25, 0x54, 0xa0, 0x30, 0x3f, 0xd6, 0x08, 0x5d, 0xf7, 0x8d, 0x54, 0xde, +}; +static const unsigned char kat2855_nonce[] = {0}; +static const unsigned char kat2855_persstr[] = { + 0x5a, 0x4c, 0xad, 0x89, 0xf2, 0xd9, 0xb4, 0x0d, 0xb9, 0xcf, 0xe1, 0x2d, + 0x45, 0xed, 0x7f, 0x4c, 0x63, 0xe7, 0x65, 0xe2, 0x6c, 0x84, 0xae, 0x3c, + 0xe5, 0xfa, 0xc8, 0x44, 0xfe, 0x6b, 0x03, 0xa7, 0x38, 0x89, 0x0f, 0x21, + 0xfb, 0xb7, 0xf2, 0xd0, 0x9a, 0x56, 0xe0, 0x25, 0x2f, 0x52, 0xc5, 0x99, +}; +static const unsigned char kat2855_entropyinreseed[] = { + 0xb8, 0x96, 0x15, 0x21, 0xb6, 0x78, 0xc4, 0xe2, 0x73, 0x7c, 0x6c, 0x62, + 0xa3, 0x19, 0x51, 0x01, 0x90, 0xfe, 0xe1, 0x4b, 0x79, 0x3a, 0xdb, 0x0b, + 0x4f, 0xe1, 0x13, 0xca, 0x9b, 0xf8, 0xc8, 0x6d, 0x28, 0x36, 0x6d, 0xf0, + 0xfe, 0x5f, 0x36, 0x13, 0x1b, 0x7d, 0xc1, 0xb0, 0x63, 0x7a, 0x70, 0x46, +}; +static const unsigned char kat2855_addinreseed[] = {0}; +static const unsigned char kat2855_addin0[] = {0}; +static const unsigned char kat2855_addin1[] = {0}; +static const unsigned char kat2855_retbits[] = { + 0x14, 0x04, 0xfb, 0xbe, 0x62, 0xe0, 0x34, 0x63, 0xc4, 0x35, 0xc2, 0xb6, + 0x75, 0xf7, 0x6d, 0xbd, 0x22, 0xaf, 0x1b, 0x2f, 0xce, 0x2b, 0x6e, 0x94, + 0x9e, 0x2d, 0xf9, 0xef, 0xb8, 0xa3, 0xff, 0xe7, 0x38, 0xc3, 0xf7, 0x8f, + 0x9c, 0x85, 0x2a, 0x3c, 0xb1, 0xf4, 0x13, 0x12, 0x2d, 0x42, 0x76, 0xd1, + 0x85, 0xf1, 0x59, 0x9e, 0xe6, 0xcb, 0x7f, 0x21, 0x8c, 0x23, 0xb1, 0xa9, + 0xc9, 0xe0, 0xe8, 0x0c, +}; +static const struct drbg_kat_pr_false kat2855_t = { + 4, kat2855_entropyin, kat2855_nonce, kat2855_persstr, + kat2855_entropyinreseed, kat2855_addinreseed, kat2855_addin0, + kat2855_addin1, kat2855_retbits +}; +static const struct drbg_kat kat2855 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2855_t +}; + +static const unsigned char kat2856_entropyin[] = { + 0x04, 0x30, 0xe1, 0x1d, 0x66, 0x4a, 0xd3, 0xcf, 0x63, 0xee, 0x3e, 0xbd, + 0xf5, 0x5c, 0x27, 0xe7, 0xb3, 0xde, 0xb7, 0xfb, 0xe7, 0xa9, 0x74, 0xe4, + 0x0e, 0x89, 0x43, 0x7b, 0x7f, 0xfd, 0x30, 0xc2, 0x3a, 0xe3, 0xe0, 0x04, + 0x5a, 0x53, 0x68, 0x1b, 0x82, 0x89, 0x91, 0xa6, 0x90, 0x48, 0x86, 0xfa, +}; +static const unsigned char kat2856_nonce[] = {0}; +static const unsigned char kat2856_persstr[] = { + 0xec, 0x0f, 0xf9, 0x52, 0xdd, 0x69, 0x26, 0xa4, 0xe8, 0x58, 0xe8, 0x13, + 0xc4, 0x89, 0xc9, 0xcd, 0x13, 0xcd, 0xbc, 0xc3, 0x09, 0x2e, 0xcb, 0x30, + 0x05, 0x4a, 0xf7, 0x8c, 0x29, 0x74, 0xf3, 0xe8, 0xa1, 0x9a, 0x2d, 0x13, + 0xe8, 0x22, 0xde, 0xf7, 0xfa, 0x66, 0xdc, 0x77, 0x7b, 0x07, 0x2d, 0x2e, +}; +static const unsigned char kat2856_entropyinreseed[] = { + 0x3a, 0x02, 0xe3, 0x81, 0xd3, 0x79, 0xc9, 0xde, 0x62, 0x4e, 0xb5, 0x3a, + 0x8b, 0xae, 0xd2, 0xd9, 0xfe, 0x00, 0xa5, 0xe0, 0xd0, 0xbf, 0xba, 0x5b, + 0x8d, 0x75, 0x43, 0x6e, 0xc7, 0x2c, 0x56, 0x36, 0xb0, 0x90, 0x0b, 0x52, + 0x50, 0x0c, 0xb2, 0x44, 0x08, 0x8c, 0x97, 0x75, 0x45, 0x10, 0xdd, 0x8a, +}; +static const unsigned char kat2856_addinreseed[] = {0}; +static const unsigned char kat2856_addin0[] = {0}; +static const unsigned char kat2856_addin1[] = {0}; +static const unsigned char kat2856_retbits[] = { + 0x85, 0x16, 0x89, 0xef, 0x8c, 0xd6, 0x08, 0x00, 0xe5, 0x50, 0xc6, 0x9a, + 0x9f, 0x1a, 0xde, 0xc3, 0x1d, 0x75, 0x20, 0x8f, 0xf4, 0xb3, 0x95, 0x0a, + 0xa0, 0xfd, 0x8b, 0x49, 0x65, 0x6a, 0x54, 0xce, 0xef, 0xf9, 0x25, 0x07, + 0x52, 0xb5, 0x64, 0xcc, 0x8e, 0x92, 0x39, 0x75, 0xdb, 0x08, 0xeb, 0x04, + 0x79, 0xb1, 0x5d, 0x2a, 0xd7, 0x7e, 0xc9, 0x33, 0x1f, 0x89, 0xd7, 0xe7, + 0x62, 0x18, 0x51, 0xe9, +}; +static const struct drbg_kat_pr_false kat2856_t = { + 5, kat2856_entropyin, kat2856_nonce, kat2856_persstr, + kat2856_entropyinreseed, kat2856_addinreseed, kat2856_addin0, + kat2856_addin1, kat2856_retbits +}; +static const struct drbg_kat kat2856 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2856_t +}; + +static const unsigned char kat2857_entropyin[] = { + 0x55, 0x48, 0x8d, 0x38, 0x83, 0xe3, 0x7a, 0x2f, 0xd1, 0x16, 0xaf, 0x22, + 0x4b, 0xa4, 0xfb, 0xf5, 0x44, 0x89, 0x69, 0xac, 0x05, 0xe5, 0x56, 0xbb, + 0x87, 0x72, 0x30, 0x6d, 0xca, 0xea, 0x51, 0x84, 0xbe, 0x73, 0xdf, 0x55, + 0x45, 0xc2, 0x56, 0xc1, 0x77, 0x03, 0x8d, 0x9b, 0x72, 0x48, 0x92, 0x4a, +}; +static const unsigned char kat2857_nonce[] = {0}; +static const unsigned char kat2857_persstr[] = { + 0x5f, 0x01, 0xf6, 0x6a, 0x7e, 0x69, 0x87, 0xf9, 0x01, 0x81, 0x97, 0x09, + 0x64, 0x04, 0xe7, 0x4e, 0x29, 0xa9, 0x28, 0x57, 0x31, 0xc3, 0x58, 0x6a, + 0xf4, 0xf3, 0x0e, 0xd5, 0xf1, 0x48, 0x8e, 0x6c, 0xa6, 0x1a, 0xf4, 0x9c, + 0x46, 0xb8, 0x00, 0xa6, 0x4a, 0xe0, 0xc4, 0x59, 0xb8, 0xff, 0xf5, 0x7a, +}; +static const unsigned char kat2857_entropyinreseed[] = { + 0x6f, 0x41, 0x2c, 0x13, 0x8b, 0x00, 0x14, 0xb8, 0xbc, 0x93, 0xc2, 0x8e, + 0x28, 0x7a, 0x61, 0x11, 0x1b, 0xea, 0xa8, 0xbf, 0x0b, 0xc1, 0x87, 0xa3, + 0x40, 0x10, 0x22, 0x08, 0x3b, 0xa3, 0xd8, 0xc0, 0x1b, 0x87, 0x98, 0xda, + 0xac, 0xbd, 0x8d, 0xfd, 0xb1, 0xa6, 0xff, 0xc2, 0x2b, 0xf0, 0x52, 0xff, +}; +static const unsigned char kat2857_addinreseed[] = {0}; +static const unsigned char kat2857_addin0[] = {0}; +static const unsigned char kat2857_addin1[] = {0}; +static const unsigned char kat2857_retbits[] = { + 0x19, 0x42, 0x51, 0xba, 0x61, 0x1a, 0x8c, 0x56, 0x7e, 0x1a, 0x1b, 0x1e, + 0xe5, 0xf9, 0x49, 0x84, 0xe2, 0xb1, 0xbd, 0x47, 0x58, 0xa6, 0x88, 0x17, + 0x53, 0x6b, 0x1c, 0x21, 0xae, 0xa3, 0x03, 0x55, 0x17, 0xca, 0x2b, 0x6f, + 0x61, 0xa0, 0x01, 0x86, 0xd3, 0xee, 0x3c, 0x72, 0x30, 0xfc, 0x39, 0x3a, + 0x8d, 0x40, 0x00, 0x52, 0x4b, 0x50, 0x85, 0x43, 0x12, 0x51, 0x98, 0xc9, + 0xe8, 0x46, 0x4b, 0xd4, +}; +static const struct drbg_kat_pr_false kat2857_t = { + 6, kat2857_entropyin, kat2857_nonce, kat2857_persstr, + kat2857_entropyinreseed, kat2857_addinreseed, kat2857_addin0, + kat2857_addin1, kat2857_retbits +}; +static const struct drbg_kat kat2857 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2857_t +}; + +static const unsigned char kat2858_entropyin[] = { + 0x90, 0x90, 0x58, 0xc5, 0x37, 0xb8, 0x6e, 0x34, 0x80, 0x39, 0x6e, 0x17, + 0x99, 0xfa, 0x9b, 0xdb, 0xb4, 0x27, 0x3b, 0x71, 0x23, 0xd6, 0xba, 0x3d, + 0x79, 0xc8, 0x5b, 0x98, 0x71, 0x95, 0x23, 0x68, 0x63, 0x1c, 0x85, 0xc9, + 0xb3, 0xd1, 0x7e, 0x75, 0xe3, 0xe6, 0xb2, 0x3b, 0xfa, 0xd6, 0x66, 0x58, +}; +static const unsigned char kat2858_nonce[] = {0}; +static const unsigned char kat2858_persstr[] = { + 0xd0, 0x24, 0x48, 0xc0, 0x61, 0x18, 0xec, 0x9a, 0x2b, 0x0c, 0xc6, 0x86, + 0x11, 0x4a, 0xfd, 0xba, 0x9b, 0x30, 0x41, 0xe4, 0xb9, 0x2a, 0xb9, 0x79, + 0x64, 0xcb, 0x6d, 0x30, 0xf0, 0xbf, 0x8c, 0x13, 0xe2, 0xb7, 0x1d, 0x6a, + 0x04, 0x3e, 0x64, 0x6d, 0x41, 0x34, 0x44, 0x05, 0x69, 0x64, 0xff, 0x7a, +}; +static const unsigned char kat2858_entropyinreseed[] = { + 0x96, 0x91, 0x9c, 0x4a, 0xef, 0x8d, 0x31, 0x81, 0xdc, 0x51, 0x84, 0x37, + 0x96, 0x91, 0x09, 0xa5, 0x0a, 0xd6, 0xe7, 0x61, 0xc8, 0x69, 0x30, 0x61, + 0xff, 0xa7, 0x1c, 0x45, 0xbc, 0x12, 0xbd, 0x96, 0x86, 0xd7, 0x84, 0x41, + 0x59, 0x8e, 0xd4, 0x54, 0x18, 0x3e, 0x5d, 0xe1, 0x2d, 0x9d, 0x23, 0x5a, +}; +static const unsigned char kat2858_addinreseed[] = {0}; +static const unsigned char kat2858_addin0[] = {0}; +static const unsigned char kat2858_addin1[] = {0}; +static const unsigned char kat2858_retbits[] = { + 0x7b, 0x97, 0x74, 0x0b, 0xeb, 0xdd, 0x21, 0x6d, 0x43, 0x60, 0x34, 0x40, + 0xd0, 0xa3, 0x99, 0xf8, 0x36, 0xf5, 0x80, 0xcc, 0x8d, 0x13, 0x29, 0xcd, + 0x65, 0x3c, 0x5a, 0x7a, 0xc7, 0x87, 0x36, 0x6d, 0x98, 0x0d, 0x7a, 0xd5, + 0xb7, 0x36, 0xb8, 0x67, 0x32, 0x56, 0x80, 0xe2, 0xf8, 0xfa, 0x71, 0x35, + 0x30, 0x8e, 0x73, 0xe1, 0x85, 0xd4, 0x76, 0x23, 0xa3, 0xfc, 0x46, 0x83, + 0x55, 0x7b, 0xee, 0x8e, +}; +static const struct drbg_kat_pr_false kat2858_t = { + 7, kat2858_entropyin, kat2858_nonce, kat2858_persstr, + kat2858_entropyinreseed, kat2858_addinreseed, kat2858_addin0, + kat2858_addin1, kat2858_retbits +}; +static const struct drbg_kat kat2858 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2858_t +}; + +static const unsigned char kat2859_entropyin[] = { + 0x2b, 0xdb, 0x7d, 0x32, 0xeb, 0x81, 0xdb, 0x9d, 0x9c, 0xf1, 0xe4, 0xbd, + 0xc4, 0xe0, 0x2d, 0xe2, 0x77, 0xf7, 0x4e, 0xfd, 0xec, 0x24, 0x1b, 0x2f, + 0x28, 0x7b, 0xc8, 0x23, 0x62, 0xbe, 0x45, 0x33, 0xe4, 0x15, 0x17, 0x58, + 0xbd, 0x73, 0x7d, 0x57, 0x5a, 0x22, 0x68, 0x40, 0xfe, 0x48, 0xd8, 0x37, +}; +static const unsigned char kat2859_nonce[] = {0}; +static const unsigned char kat2859_persstr[] = { + 0xad, 0x07, 0xfa, 0x56, 0xa9, 0xc3, 0x65, 0xbf, 0x4f, 0x16, 0xaa, 0x90, + 0x33, 0xf7, 0x1b, 0x4c, 0xf2, 0x10, 0xd7, 0xd8, 0x3c, 0xcf, 0xa7, 0x48, + 0x5d, 0x4c, 0xca, 0x10, 0x5a, 0xa0, 0x14, 0x62, 0x45, 0x06, 0x13, 0xa7, + 0xa9, 0xe2, 0x60, 0x0a, 0x18, 0x72, 0xb2, 0x92, 0xc0, 0xe6, 0xf4, 0xb3, +}; +static const unsigned char kat2859_entropyinreseed[] = { + 0x07, 0x29, 0xf2, 0xa2, 0xf8, 0x4e, 0xa9, 0x02, 0xcb, 0x6e, 0x84, 0xa8, + 0xfa, 0x6a, 0xa4, 0x0e, 0x24, 0xc6, 0x4a, 0x1b, 0x67, 0xa0, 0x60, 0xdd, + 0x47, 0xa1, 0x17, 0xcc, 0x85, 0x4d, 0x5c, 0xa0, 0x06, 0xba, 0xd5, 0x21, + 0x8e, 0x64, 0x00, 0x5b, 0x1b, 0xcb, 0x88, 0x80, 0xa0, 0x20, 0x7d, 0x7c, +}; +static const unsigned char kat2859_addinreseed[] = {0}; +static const unsigned char kat2859_addin0[] = {0}; +static const unsigned char kat2859_addin1[] = {0}; +static const unsigned char kat2859_retbits[] = { + 0x58, 0xf5, 0x6e, 0x07, 0x8b, 0x05, 0xae, 0x56, 0x56, 0x68, 0x00, 0x9e, + 0xc2, 0x71, 0x5b, 0x9a, 0x6f, 0x14, 0x53, 0x1c, 0x2b, 0x96, 0x5b, 0x7c, + 0xea, 0xbb, 0x44, 0x78, 0xcc, 0xe2, 0xdb, 0x9b, 0xbc, 0x86, 0x1e, 0x70, + 0xd0, 0xf8, 0x03, 0x73, 0xeb, 0xf3, 0xf0, 0xfa, 0x8a, 0x2e, 0x90, 0xea, + 0x63, 0x66, 0xb0, 0x25, 0xa1, 0x41, 0xd9, 0xc7, 0xbd, 0xfa, 0xed, 0xa1, + 0x09, 0xca, 0xbb, 0x90, +}; +static const struct drbg_kat_pr_false kat2859_t = { + 8, kat2859_entropyin, kat2859_nonce, kat2859_persstr, + kat2859_entropyinreseed, kat2859_addinreseed, kat2859_addin0, + kat2859_addin1, kat2859_retbits +}; +static const struct drbg_kat kat2859 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2859_t +}; + +static const unsigned char kat2860_entropyin[] = { + 0x5e, 0x42, 0xe2, 0x37, 0x5f, 0xc5, 0x72, 0xe1, 0x4f, 0x86, 0x30, 0x9c, + 0x72, 0x46, 0xa1, 0x7e, 0xea, 0xa5, 0xb7, 0x2c, 0xe0, 0x53, 0x87, 0xb0, + 0x42, 0x67, 0x3e, 0x75, 0xb5, 0x54, 0x06, 0x69, 0x62, 0x7a, 0xaa, 0x8f, + 0x43, 0x06, 0xd3, 0x05, 0x09, 0x30, 0xf8, 0xb0, 0xdc, 0x72, 0x7d, 0x55, +}; +static const unsigned char kat2860_nonce[] = {0}; +static const unsigned char kat2860_persstr[] = { + 0x90, 0xb2, 0x48, 0x09, 0x69, 0xb1, 0xbf, 0x80, 0x5a, 0x2c, 0x8c, 0x75, + 0x1b, 0xd7, 0x62, 0x29, 0xca, 0xf5, 0xb6, 0x7b, 0xf0, 0x55, 0xf4, 0xa5, + 0x19, 0xba, 0xdc, 0xb8, 0xe8, 0x8e, 0xb0, 0x05, 0x8f, 0x67, 0x2f, 0x6c, + 0xd0, 0x7e, 0xed, 0x9d, 0x40, 0x6c, 0x17, 0x09, 0xf9, 0x3a, 0x8a, 0x4c, +}; +static const unsigned char kat2860_entropyinreseed[] = { + 0x61, 0xb4, 0xfc, 0x67, 0xfc, 0xce, 0x7d, 0x68, 0xc4, 0xac, 0x4c, 0x5f, + 0x54, 0xea, 0x8c, 0xfa, 0x96, 0x67, 0xf5, 0x83, 0x75, 0xfd, 0xc4, 0x74, + 0xa0, 0xd7, 0x64, 0x0a, 0xc5, 0x38, 0xd6, 0xcb, 0xe2, 0x51, 0x7e, 0xc0, + 0x99, 0x7d, 0xec, 0x62, 0x66, 0x9c, 0x19, 0x85, 0xb8, 0x4c, 0x45, 0x78, +}; +static const unsigned char kat2860_addinreseed[] = {0}; +static const unsigned char kat2860_addin0[] = {0}; +static const unsigned char kat2860_addin1[] = {0}; +static const unsigned char kat2860_retbits[] = { + 0x96, 0x05, 0xd5, 0x38, 0x01, 0x60, 0xc7, 0x54, 0xe4, 0x3e, 0xd8, 0xca, + 0xa5, 0xb5, 0xbd, 0x2d, 0x9c, 0xd9, 0x54, 0xea, 0x0c, 0x1c, 0x10, 0xeb, + 0x02, 0xc6, 0x49, 0xb0, 0xaa, 0x84, 0x63, 0xba, 0xda, 0xf3, 0x5a, 0x9e, + 0xf4, 0xb2, 0x34, 0x1b, 0x1a, 0x16, 0xd4, 0x13, 0x22, 0x4f, 0xe8, 0x03, + 0xfe, 0x99, 0x7d, 0x8b, 0xa4, 0xfc, 0x58, 0xea, 0x52, 0x54, 0xb4, 0xd2, + 0x8d, 0x11, 0x6e, 0x3f, +}; +static const struct drbg_kat_pr_false kat2860_t = { + 9, kat2860_entropyin, kat2860_nonce, kat2860_persstr, + kat2860_entropyinreseed, kat2860_addinreseed, kat2860_addin0, + kat2860_addin1, kat2860_retbits +}; +static const struct drbg_kat kat2860 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2860_t +}; + +static const unsigned char kat2861_entropyin[] = { + 0x3a, 0x51, 0xed, 0xf5, 0xf6, 0x90, 0xb0, 0x82, 0x4a, 0x0a, 0xb3, 0xb8, + 0x74, 0xb3, 0x84, 0x72, 0xdc, 0x72, 0x79, 0xaf, 0x5f, 0x54, 0x87, 0x5a, + 0x49, 0x73, 0x35, 0x5c, 0x1f, 0x37, 0xa9, 0x88, 0xe6, 0x7c, 0x26, 0xc6, + 0xda, 0xf2, 0x8e, 0xa4, 0x3e, 0x70, 0x01, 0x74, 0xfa, 0xe5, 0x4d, 0x2e, +}; +static const unsigned char kat2861_nonce[] = {0}; +static const unsigned char kat2861_persstr[] = { + 0xfc, 0xa8, 0xe0, 0xf6, 0xe2, 0xab, 0x70, 0x68, 0x5c, 0xc0, 0xca, 0x05, + 0xa6, 0xfb, 0xa7, 0xe6, 0x66, 0x87, 0x0c, 0x98, 0x63, 0xac, 0xe0, 0xa5, + 0xd5, 0x01, 0x1a, 0x28, 0x7e, 0x92, 0x76, 0xc0, 0x72, 0xbb, 0x81, 0x0b, + 0xf3, 0xcd, 0x86, 0x53, 0xd2, 0xb5, 0xc8, 0x34, 0x5d, 0xf2, 0x2c, 0xfa, +}; +static const unsigned char kat2861_entropyinreseed[] = { + 0x7d, 0x08, 0x03, 0x60, 0x7d, 0x7a, 0xd2, 0xbf, 0xda, 0xbc, 0xd8, 0x5f, + 0xa2, 0x65, 0x32, 0xa0, 0x9a, 0x15, 0xec, 0x34, 0xe7, 0xa4, 0x59, 0xcd, + 0x2e, 0x39, 0xb9, 0x45, 0x26, 0xa0, 0x90, 0x94, 0x93, 0xf2, 0xa6, 0xb1, + 0xcb, 0x5b, 0xde, 0xc6, 0xc8, 0xa8, 0xe2, 0x29, 0xac, 0x69, 0xd5, 0x91, +}; +static const unsigned char kat2861_addinreseed[] = {0}; +static const unsigned char kat2861_addin0[] = {0}; +static const unsigned char kat2861_addin1[] = {0}; +static const unsigned char kat2861_retbits[] = { + 0x21, 0xb9, 0x35, 0x51, 0xa1, 0x27, 0x57, 0xb4, 0x3f, 0x38, 0x41, 0x92, + 0xd2, 0x4e, 0xe6, 0x4e, 0xb5, 0x99, 0x77, 0x9c, 0x29, 0x88, 0xa0, 0x0b, + 0xe9, 0x2e, 0x31, 0xde, 0x79, 0x86, 0x23, 0x43, 0xce, 0x1a, 0xa9, 0xcc, + 0x07, 0x4d, 0xe6, 0x2d, 0x43, 0x83, 0x84, 0x8b, 0xb5, 0x26, 0x1c, 0xcb, + 0x8d, 0x73, 0xa2, 0xf7, 0xba, 0x91, 0x4c, 0xbe, 0xfa, 0xd8, 0xf0, 0x92, + 0xa8, 0xdb, 0xf9, 0xdb, +}; +static const struct drbg_kat_pr_false kat2861_t = { + 10, kat2861_entropyin, kat2861_nonce, kat2861_persstr, + kat2861_entropyinreseed, kat2861_addinreseed, kat2861_addin0, + kat2861_addin1, kat2861_retbits +}; +static const struct drbg_kat kat2861 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2861_t +}; + +static const unsigned char kat2862_entropyin[] = { + 0xda, 0xb7, 0xa3, 0xaa, 0x53, 0xf8, 0x52, 0x73, 0xa9, 0x00, 0x15, 0xd3, + 0x2f, 0xb3, 0x99, 0x3f, 0xab, 0xd8, 0x24, 0x4f, 0x12, 0x35, 0x7f, 0x04, + 0xf2, 0xac, 0x16, 0xfc, 0xcc, 0xd3, 0x53, 0xc5, 0xe2, 0xd1, 0xc7, 0x02, + 0x8e, 0xff, 0x32, 0x2a, 0x8b, 0x80, 0x86, 0x34, 0xdb, 0xc6, 0x83, 0xb8, +}; +static const unsigned char kat2862_nonce[] = {0}; +static const unsigned char kat2862_persstr[] = { + 0xb7, 0x4d, 0x00, 0xce, 0x34, 0x6d, 0x1a, 0xb7, 0x29, 0xd5, 0x43, 0xd8, + 0x2c, 0x33, 0x17, 0xf4, 0xdd, 0x3c, 0x6f, 0x6f, 0xee, 0x39, 0xd4, 0x74, + 0xe3, 0x9b, 0x79, 0xd6, 0xc1, 0xe0, 0xe1, 0x5f, 0xf2, 0x42, 0x1d, 0xf2, + 0x0f, 0x02, 0x67, 0x72, 0x9e, 0xed, 0x34, 0x1a, 0x8d, 0x06, 0x8d, 0x67, +}; +static const unsigned char kat2862_entropyinreseed[] = { + 0x4d, 0xa7, 0x94, 0xec, 0x63, 0x5d, 0xbd, 0x72, 0xca, 0x89, 0x7c, 0x4a, + 0x5c, 0x3a, 0x4b, 0x08, 0xee, 0x0b, 0xdf, 0xed, 0x89, 0xfc, 0x6e, 0x52, + 0xb6, 0x95, 0xf3, 0x2f, 0x8a, 0xc5, 0xb9, 0x78, 0xc1, 0xed, 0xd4, 0xb0, + 0x43, 0x2b, 0x77, 0xa2, 0x0f, 0xb9, 0x12, 0x50, 0x32, 0x53, 0x04, 0x57, +}; +static const unsigned char kat2862_addinreseed[] = {0}; +static const unsigned char kat2862_addin0[] = {0}; +static const unsigned char kat2862_addin1[] = {0}; +static const unsigned char kat2862_retbits[] = { + 0x22, 0x38, 0xad, 0xc1, 0x13, 0x63, 0xa4, 0xb0, 0x33, 0xed, 0x40, 0x3c, + 0xca, 0x99, 0x16, 0x29, 0x3d, 0xe6, 0x54, 0xa2, 0x0b, 0xfa, 0x29, 0xf6, + 0x3e, 0x14, 0x58, 0x24, 0x0b, 0xba, 0x62, 0x12, 0xff, 0x91, 0xc5, 0x0a, + 0x3f, 0xd0, 0x27, 0x53, 0x3f, 0x45, 0x24, 0x0c, 0xe3, 0x12, 0xd7, 0x5d, + 0x33, 0x5f, 0xaa, 0x2e, 0xba, 0x68, 0x77, 0x8c, 0xe9, 0x87, 0xd7, 0x8e, + 0x0d, 0xbe, 0x8c, 0xdc, +}; +static const struct drbg_kat_pr_false kat2862_t = { + 11, kat2862_entropyin, kat2862_nonce, kat2862_persstr, + kat2862_entropyinreseed, kat2862_addinreseed, kat2862_addin0, + kat2862_addin1, kat2862_retbits +}; +static const struct drbg_kat kat2862 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2862_t +}; + +static const unsigned char kat2863_entropyin[] = { + 0x56, 0xb2, 0xa2, 0xbc, 0x4c, 0xcd, 0x94, 0x2f, 0x9b, 0x73, 0x94, 0x21, + 0x5d, 0xbb, 0x64, 0x2b, 0x8d, 0x36, 0x37, 0xbf, 0x43, 0xfe, 0x9d, 0x44, + 0x29, 0xf8, 0xee, 0xe1, 0x29, 0x76, 0x89, 0xe1, 0x8a, 0x7d, 0x65, 0xff, + 0x1a, 0xed, 0x2a, 0xa5, 0x72, 0x9d, 0x0d, 0x7b, 0x3c, 0x25, 0x57, 0x41, +}; +static const unsigned char kat2863_nonce[] = {0}; +static const unsigned char kat2863_persstr[] = { + 0x8f, 0xae, 0xe0, 0xac, 0xde, 0x0e, 0x51, 0xaa, 0x62, 0xfc, 0xa5, 0xae, + 0x4c, 0x1e, 0x13, 0x1e, 0x92, 0x8e, 0xd1, 0xdc, 0xc1, 0x83, 0xd0, 0x05, + 0x7e, 0x34, 0x05, 0x45, 0x56, 0xe5, 0x2d, 0x2d, 0xcc, 0x60, 0x9b, 0x3f, + 0x24, 0x30, 0x4e, 0xb8, 0xfb, 0x6d, 0x8a, 0x28, 0xd1, 0xb5, 0x1f, 0xb1, +}; +static const unsigned char kat2863_entropyinreseed[] = { + 0x81, 0x0b, 0x74, 0x6a, 0xc7, 0x14, 0x45, 0xd2, 0x9f, 0xec, 0x21, 0x34, + 0x1f, 0x86, 0x8f, 0xa8, 0x3f, 0x77, 0xb4, 0xf2, 0x6a, 0xba, 0xf6, 0x0a, + 0xf4, 0x57, 0xca, 0x7a, 0x37, 0xb2, 0x39, 0xca, 0x7a, 0x71, 0xcf, 0x28, + 0x7c, 0xec, 0xbf, 0x2c, 0xc1, 0x46, 0x54, 0xcd, 0xf7, 0xae, 0x3e, 0xd2, +}; +static const unsigned char kat2863_addinreseed[] = {0}; +static const unsigned char kat2863_addin0[] = {0}; +static const unsigned char kat2863_addin1[] = {0}; +static const unsigned char kat2863_retbits[] = { + 0x0b, 0xd2, 0x1c, 0x8d, 0xe7, 0xb4, 0x55, 0xc2, 0x29, 0x94, 0x2c, 0x5d, + 0x64, 0x76, 0x5c, 0x2e, 0x6d, 0x70, 0x43, 0x35, 0x9e, 0x06, 0x53, 0x24, + 0x33, 0x8d, 0xc7, 0x4b, 0x21, 0xa8, 0xbc, 0x16, 0x31, 0x10, 0xd9, 0xa7, + 0x1d, 0xb8, 0x71, 0xa1, 0xaa, 0x2e, 0xa1, 0xf3, 0x87, 0x37, 0xd0, 0x1a, + 0x39, 0x8b, 0x7c, 0x9b, 0xd7, 0x61, 0x2a, 0x5d, 0xd1, 0xc0, 0x65, 0x7c, + 0x21, 0xed, 0xe8, 0xe1, +}; +static const struct drbg_kat_pr_false kat2863_t = { + 12, kat2863_entropyin, kat2863_nonce, kat2863_persstr, + kat2863_entropyinreseed, kat2863_addinreseed, kat2863_addin0, + kat2863_addin1, kat2863_retbits +}; +static const struct drbg_kat kat2863 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2863_t +}; + +static const unsigned char kat2864_entropyin[] = { + 0x89, 0x12, 0xb0, 0xee, 0x4e, 0x8d, 0xca, 0x39, 0x70, 0x1f, 0x10, 0x66, + 0xe6, 0x8f, 0xdf, 0xaa, 0xb1, 0xbf, 0xe5, 0xe7, 0x66, 0x38, 0xc0, 0x79, + 0x12, 0x1c, 0x7a, 0x83, 0x3b, 0x4c, 0x38, 0x0e, 0x4f, 0xb9, 0x86, 0xa3, + 0xa6, 0x05, 0x1e, 0xe0, 0xd1, 0x1c, 0x6a, 0xfe, 0x85, 0x39, 0x7e, 0xae, +}; +static const unsigned char kat2864_nonce[] = {0}; +static const unsigned char kat2864_persstr[] = { + 0xb3, 0xf9, 0x6e, 0x51, 0x88, 0x2e, 0xef, 0xcb, 0xec, 0x18, 0x4e, 0xf9, + 0xa4, 0x29, 0x7d, 0x5d, 0x5b, 0xb0, 0xa0, 0x0e, 0x87, 0x35, 0xb8, 0x63, + 0x30, 0x56, 0x59, 0xd5, 0x2d, 0x0e, 0x9d, 0x69, 0xc1, 0xc8, 0xf2, 0x89, + 0x4b, 0x3b, 0xce, 0x84, 0xbd, 0x99, 0x4b, 0x7a, 0x4d, 0xa1, 0xa7, 0x52, +}; +static const unsigned char kat2864_entropyinreseed[] = { + 0x93, 0x5a, 0xa4, 0x5b, 0x8a, 0xb8, 0x30, 0xf6, 0xdb, 0x7b, 0x41, 0xe0, + 0xee, 0x81, 0x45, 0x54, 0x0c, 0x59, 0x4d, 0xc4, 0xc5, 0x0e, 0xfc, 0xdf, + 0xa0, 0x7f, 0xbe, 0x91, 0x58, 0x16, 0x2d, 0x77, 0xa5, 0xd3, 0xdd, 0xe9, + 0x28, 0x2d, 0x4a, 0x0f, 0x63, 0xc3, 0xcf, 0x5c, 0xbb, 0xb3, 0x9a, 0x4a, +}; +static const unsigned char kat2864_addinreseed[] = {0}; +static const unsigned char kat2864_addin0[] = {0}; +static const unsigned char kat2864_addin1[] = {0}; +static const unsigned char kat2864_retbits[] = { + 0x2e, 0x19, 0x96, 0xd9, 0xe3, 0x32, 0xef, 0x87, 0x01, 0x72, 0xea, 0x59, + 0x80, 0xe0, 0x38, 0x20, 0x14, 0xbf, 0x01, 0x60, 0x05, 0xed, 0x5a, 0xb4, + 0x68, 0x96, 0x63, 0xcd, 0x01, 0x94, 0x09, 0xfd, 0xe4, 0xee, 0x4c, 0x80, + 0x26, 0xa0, 0xfd, 0x19, 0x07, 0x9f, 0xcb, 0xdb, 0xff, 0xd1, 0x2c, 0x21, + 0x35, 0x61, 0xdf, 0xce, 0xbb, 0x66, 0xe2, 0x47, 0xa9, 0xf3, 0xce, 0x1e, + 0xaf, 0xa9, 0xf4, 0xbb, +}; +static const struct drbg_kat_pr_false kat2864_t = { + 13, kat2864_entropyin, kat2864_nonce, kat2864_persstr, + kat2864_entropyinreseed, kat2864_addinreseed, kat2864_addin0, + kat2864_addin1, kat2864_retbits +}; +static const struct drbg_kat kat2864 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2864_t +}; + +static const unsigned char kat2865_entropyin[] = { + 0xde, 0x1e, 0x4d, 0xa1, 0xb1, 0x75, 0x5d, 0x0a, 0x9d, 0x4e, 0x8c, 0x9d, + 0x42, 0x71, 0xd0, 0xe2, 0x1c, 0x1e, 0x47, 0x30, 0xeb, 0xd4, 0x31, 0x67, + 0x6e, 0xf5, 0x75, 0x3e, 0x9e, 0x4d, 0x87, 0x79, 0x37, 0xc7, 0x89, 0x36, + 0xa6, 0xf0, 0xe0, 0xa9, 0xe5, 0xe8, 0x4d, 0x87, 0xf1, 0xac, 0x8f, 0xea, +}; +static const unsigned char kat2865_nonce[] = {0}; +static const unsigned char kat2865_persstr[] = { + 0xe7, 0xa4, 0x92, 0xe0, 0x6f, 0x20, 0x79, 0xeb, 0x64, 0x28, 0xf4, 0xd3, + 0x9f, 0xb1, 0x8a, 0xa0, 0xec, 0xe5, 0xd1, 0xed, 0xc5, 0xf2, 0xe1, 0x40, + 0x37, 0x37, 0xbf, 0x6a, 0x13, 0x34, 0xff, 0x7f, 0x46, 0xcc, 0xb5, 0x76, + 0x90, 0xed, 0x5b, 0x06, 0xe0, 0x7b, 0x10, 0x90, 0xef, 0xde, 0x50, 0x5d, +}; +static const unsigned char kat2865_entropyinreseed[] = { + 0x17, 0x83, 0x7f, 0xdc, 0x7d, 0x56, 0x00, 0xfa, 0x48, 0x7f, 0xa0, 0x73, + 0x31, 0xc4, 0xdb, 0x6e, 0x3d, 0x65, 0xd5, 0x22, 0x53, 0x7a, 0xae, 0x07, + 0x15, 0xa5, 0x93, 0x6f, 0x5c, 0xb8, 0x19, 0x53, 0x96, 0x5f, 0xdd, 0xa8, + 0x2e, 0x5f, 0x2b, 0x0a, 0x1f, 0x20, 0xdc, 0x8b, 0xeb, 0x76, 0xbe, 0xca, +}; +static const unsigned char kat2865_addinreseed[] = {0}; +static const unsigned char kat2865_addin0[] = {0}; +static const unsigned char kat2865_addin1[] = {0}; +static const unsigned char kat2865_retbits[] = { + 0x2c, 0xf0, 0xd9, 0xcf, 0xb6, 0x02, 0x34, 0xb2, 0x30, 0x86, 0xdc, 0x16, + 0x49, 0xe6, 0xfa, 0x99, 0xc4, 0x10, 0x4d, 0xe9, 0x85, 0x3d, 0x19, 0x50, + 0x81, 0x05, 0x53, 0x5c, 0x96, 0x04, 0x68, 0x77, 0x7a, 0x93, 0x65, 0x43, + 0xf6, 0xb3, 0x1e, 0xd0, 0xd3, 0xc5, 0x2d, 0x13, 0x56, 0x71, 0xa2, 0x3d, + 0x3e, 0xa0, 0x8f, 0xb7, 0xf2, 0x9c, 0x9d, 0xcb, 0x3f, 0x15, 0x11, 0x63, + 0x58, 0x7c, 0x39, 0xdb, +}; +static const struct drbg_kat_pr_false kat2865_t = { + 14, kat2865_entropyin, kat2865_nonce, kat2865_persstr, + kat2865_entropyinreseed, kat2865_addinreseed, kat2865_addin0, + kat2865_addin1, kat2865_retbits +}; +static const struct drbg_kat kat2865 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat2865_t +}; + +static const unsigned char kat2866_entropyin[] = { + 0xfa, 0x20, 0x7b, 0x20, 0xec, 0xb0, 0xc6, 0x48, 0x51, 0x51, 0x6e, 0xe8, + 0x3e, 0xd3, 0x3c, 0xaa, 0xf8, 0x71, 0x31, 0x5d, 0x78, 0x1e, 0xb0, 0x4b, + 0xe4, 0xab, 0xde, 0x3b, 0xef, 0x91, 0xa3, 0xc1, 0xf8, 0x37, 0xcb, 0xe5, + 0xfb, 0x94, 0x94, 0xf4, 0x86, 0x53, 0x86, 0xfe, 0x53, 0xe8, 0x5f, 0x5f, +}; +static const unsigned char kat2866_nonce[] = {0}; +static const unsigned char kat2866_persstr[] = { + 0x13, 0x6c, 0x23, 0xed, 0xa5, 0x22, 0x25, 0x16, 0x8b, 0x36, 0x17, 0x10, + 0x7a, 0xf5, 0x74, 0x67, 0xd1, 0x66, 0x1a, 0x5e, 0x3f, 0xf3, 0x0f, 0xd1, + 0x40, 0x48, 0x20, 0x2c, 0x53, 0x5d, 0xfb, 0x68, 0x1e, 0x8e, 0xb5, 0xcc, + 0xc4, 0x35, 0x3a, 0x91, 0x9d, 0x01, 0x49, 0xdf, 0x94, 0xab, 0xb1, 0xd3, +}; +static const unsigned char kat2866_entropyinreseed[] = { + 0x3f, 0xa8, 0x12, 0xa3, 0xf8, 0xd9, 0x04, 0x25, 0x38, 0x11, 0x17, 0xa9, + 0x36, 0x0b, 0x7a, 0x3f, 0xc6, 0x7e, 0x34, 0x05, 0xe5, 0xa2, 0xb5, 0x84, + 0xdc, 0x7e, 0x86, 0x68, 0xda, 0x09, 0x84, 0x61, 0xb3, 0x03, 0x5c, 0x04, + 0x58, 0xfe, 0xd2, 0x5e, 0x29, 0x3a, 0x5a, 0x67, 0x66, 0x40, 0xcf, 0xe3, +}; +static const unsigned char kat2866_addinreseed[] = { + 0x81, 0x47, 0x93, 0xc9, 0xa4, 0xd6, 0xe2, 0x7a, 0xe4, 0xb6, 0x61, 0x01, + 0x7f, 0x99, 0x4a, 0x79, 0x60, 0xbe, 0xc9, 0xb3, 0xef, 0x93, 0x90, 0xec, + 0xb2, 0x66, 0xa9, 0x3a, 0xcb, 0x09, 0x14, 0x45, 0xc9, 0x36, 0x8f, 0x94, + 0x2d, 0x51, 0xbd, 0xb0, 0x1b, 0x94, 0xbe, 0x1f, 0xc3, 0xf8, 0x9c, 0xdd, +}; +static const unsigned char kat2866_addin0[] = { + 0x1f, 0x76, 0x4e, 0xf9, 0xd0, 0x91, 0xe6, 0x35, 0xf9, 0xe9, 0x19, 0x74, + 0x66, 0x83, 0xd2, 0xd6, 0xe9, 0xe0, 0x2d, 0x04, 0x75, 0x6b, 0x1c, 0x3b, + 0xa8, 0x86, 0x15, 0x31, 0xf8, 0x8e, 0xe8, 0x9c, 0x60, 0xaa, 0x34, 0x82, + 0xf9, 0xa1, 0xfc, 0xf6, 0x02, 0x93, 0xcd, 0xf5, 0xb6, 0x43, 0x28, 0xb9, +}; +static const unsigned char kat2866_addin1[] = { + 0x35, 0x53, 0xe3, 0xca, 0x83, 0x4e, 0x2c, 0x25, 0xca, 0xa1, 0xf1, 0x43, + 0xd5, 0x95, 0x82, 0x59, 0xa4, 0x91, 0xd8, 0x3a, 0xf4, 0xef, 0x41, 0x70, + 0xb3, 0xbc, 0x2f, 0xe3, 0x6d, 0x25, 0x6a, 0x35, 0x56, 0x89, 0xd8, 0x4b, + 0x81, 0x14, 0xbc, 0x99, 0x3d, 0xc3, 0xbb, 0x3a, 0x92, 0x5f, 0x13, 0xae, +}; +static const unsigned char kat2866_retbits[] = { + 0x50, 0x76, 0x28, 0xcb, 0xa7, 0xe3, 0xff, 0xfa, 0xf4, 0x93, 0x57, 0x13, + 0xf3, 0x2c, 0x09, 0xc3, 0x04, 0x7e, 0x90, 0x58, 0x83, 0x02, 0xc0, 0x38, + 0xad, 0xd8, 0x21, 0xb2, 0x4b, 0x76, 0x04, 0x7c, 0x72, 0xd4, 0x3d, 0xf0, + 0x31, 0x01, 0x80, 0x30, 0xcc, 0x0a, 0x4a, 0x53, 0xe7, 0xc8, 0xb0, 0x8b, + 0x03, 0x3f, 0x00, 0x77, 0xb1, 0x00, 0xae, 0x78, 0x39, 0x54, 0x3c, 0xff, + 0x96, 0x34, 0x8c, 0x99, +}; +static const struct drbg_kat_pr_false kat2866_t = { + 0, kat2866_entropyin, kat2866_nonce, kat2866_persstr, + kat2866_entropyinreseed, kat2866_addinreseed, kat2866_addin0, + kat2866_addin1, kat2866_retbits +}; +static const struct drbg_kat kat2866 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2866_t +}; + +static const unsigned char kat2867_entropyin[] = { + 0x36, 0xeb, 0x60, 0x8b, 0x1c, 0x34, 0xc0, 0xf1, 0xe3, 0x6a, 0x3b, 0xfd, + 0xae, 0xa8, 0x96, 0xcf, 0x81, 0xa2, 0xbb, 0x49, 0xb7, 0xc0, 0x06, 0x9e, + 0xb4, 0xfb, 0x65, 0x12, 0x9f, 0xe6, 0x37, 0x71, 0x04, 0xba, 0x90, 0x6a, + 0x91, 0xc7, 0x6f, 0xc7, 0xd8, 0x3d, 0x4d, 0x23, 0x3e, 0x73, 0xb5, 0x3e, +}; +static const unsigned char kat2867_nonce[] = {0}; +static const unsigned char kat2867_persstr[] = { + 0xa1, 0x59, 0x4d, 0xdc, 0xa4, 0x0b, 0x36, 0x61, 0x98, 0x63, 0xba, 0x2b, + 0x10, 0x47, 0xfd, 0x8e, 0xdd, 0x35, 0x70, 0x30, 0x28, 0xa9, 0x3c, 0x83, + 0x3b, 0x74, 0xb4, 0x9e, 0xe7, 0x59, 0x8b, 0x6e, 0x7f, 0x89, 0x18, 0x86, + 0xcd, 0xcf, 0x60, 0xa6, 0x78, 0x80, 0x0a, 0x47, 0x8a, 0x01, 0x9c, 0x49, +}; +static const unsigned char kat2867_entropyinreseed[] = { + 0x91, 0x4e, 0x91, 0xaf, 0x79, 0xff, 0x82, 0xa0, 0xce, 0x0b, 0x73, 0xfa, + 0x76, 0xb7, 0x6f, 0xde, 0x2e, 0x4a, 0x96, 0xe9, 0xde, 0x16, 0x48, 0x19, + 0xe5, 0xf2, 0x6b, 0x36, 0xe5, 0x4e, 0xeb, 0x0c, 0xfd, 0xe0, 0xad, 0x92, + 0x88, 0x98, 0x3e, 0x62, 0x25, 0xa7, 0x34, 0x29, 0x25, 0xac, 0x40, 0xff, +}; +static const unsigned char kat2867_addinreseed[] = { + 0xc6, 0xdb, 0xf4, 0xd6, 0x73, 0x85, 0x0d, 0xc2, 0xc8, 0xf3, 0xe9, 0x2c, + 0x90, 0xf5, 0x72, 0x51, 0xb4, 0xed, 0xfa, 0xe9, 0x60, 0x82, 0xec, 0x3a, + 0x76, 0xff, 0x24, 0x07, 0x7a, 0xf4, 0xc1, 0xf9, 0x96, 0x4f, 0x51, 0xa1, + 0x41, 0x3f, 0x58, 0x42, 0x9e, 0x0a, 0x70, 0xff, 0x08, 0x79, 0x98, 0x0d, +}; +static const unsigned char kat2867_addin0[] = { + 0xe8, 0xd1, 0x7e, 0xbf, 0xd2, 0x6b, 0xb4, 0x73, 0xaa, 0x50, 0x8a, 0xf6, + 0x59, 0x54, 0x6b, 0x00, 0x4f, 0x81, 0x6a, 0x3e, 0xe1, 0xb0, 0xd0, 0x58, + 0x75, 0x7d, 0x40, 0xc5, 0xb4, 0xc4, 0x5b, 0x85, 0xe9, 0xb5, 0x6e, 0xda, + 0x24, 0x38, 0x21, 0xce, 0xa4, 0xfc, 0xb6, 0xa9, 0xeb, 0x6a, 0xfc, 0xd7, +}; +static const unsigned char kat2867_addin1[] = { + 0xa8, 0x5f, 0x5d, 0x80, 0x15, 0xf0, 0x14, 0x16, 0xbb, 0xfe, 0x83, 0xa0, + 0xdb, 0xe3, 0x7e, 0xb3, 0x7d, 0xc8, 0xe9, 0x0b, 0xe3, 0xaa, 0x72, 0x36, + 0x3a, 0xaf, 0x1f, 0xb6, 0x61, 0x2a, 0x7d, 0x1d, 0x2b, 0x83, 0x51, 0x49, + 0x40, 0x0c, 0xbe, 0xe6, 0x2d, 0x53, 0x31, 0x3c, 0x67, 0xab, 0xf3, 0xf9, +}; +static const unsigned char kat2867_retbits[] = { + 0x89, 0x12, 0x7b, 0x8b, 0x99, 0xe1, 0xe4, 0x2f, 0xd7, 0x18, 0x97, 0x69, + 0x8f, 0x22, 0x83, 0x34, 0x09, 0xcb, 0x67, 0x49, 0x6c, 0x33, 0x97, 0x3c, + 0x83, 0x8b, 0x57, 0x08, 0x9e, 0x93, 0x75, 0xb1, 0xa3, 0xf6, 0x28, 0xfe, + 0x60, 0xe6, 0xb0, 0x5a, 0x4b, 0x97, 0x41, 0x7d, 0x68, 0x41, 0x8a, 0xdb, + 0x01, 0x31, 0xfc, 0x88, 0x2b, 0x73, 0x23, 0x2a, 0x01, 0x3e, 0x04, 0xbb, + 0x04, 0x05, 0x44, 0xf0, +}; +static const struct drbg_kat_pr_false kat2867_t = { + 1, kat2867_entropyin, kat2867_nonce, kat2867_persstr, + kat2867_entropyinreseed, kat2867_addinreseed, kat2867_addin0, + kat2867_addin1, kat2867_retbits +}; +static const struct drbg_kat kat2867 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2867_t +}; + +static const unsigned char kat2868_entropyin[] = { + 0xae, 0xad, 0x9c, 0x1f, 0x4f, 0x33, 0x84, 0x93, 0xb4, 0x63, 0x32, 0x63, + 0x5e, 0x81, 0x2f, 0xf9, 0x7a, 0x9c, 0x16, 0xf7, 0xdf, 0x09, 0xf3, 0x57, + 0x0b, 0x5f, 0xb5, 0x32, 0xde, 0x88, 0x3b, 0xf4, 0xf3, 0xee, 0xaa, 0x27, + 0x7b, 0xc5, 0xec, 0x14, 0xfb, 0x6b, 0xea, 0x84, 0x2c, 0xdb, 0xee, 0x88, +}; +static const unsigned char kat2868_nonce[] = {0}; +static const unsigned char kat2868_persstr[] = { + 0x42, 0x6f, 0xe9, 0xac, 0xfc, 0x02, 0xf8, 0x18, 0x3f, 0x0e, 0xe8, 0xbb, + 0xed, 0xd8, 0xcb, 0x64, 0x60, 0x67, 0x71, 0x84, 0xa8, 0xcc, 0x42, 0x33, + 0xd6, 0x20, 0x8c, 0x38, 0xa7, 0xf3, 0x7b, 0xc5, 0x76, 0x47, 0x3a, 0x60, + 0xed, 0x3e, 0x93, 0x35, 0xb7, 0xf9, 0xe2, 0x5f, 0x48, 0x1b, 0x15, 0xcc, +}; +static const unsigned char kat2868_entropyinreseed[] = { + 0x57, 0xa2, 0x58, 0x43, 0x9d, 0xd9, 0x72, 0xb6, 0xd5, 0x77, 0x0a, 0xac, + 0xe3, 0x77, 0x78, 0x4b, 0xf7, 0x85, 0x95, 0xcd, 0x23, 0x0e, 0x16, 0xe4, + 0xb1, 0x05, 0x55, 0x91, 0xc2, 0x9d, 0x3a, 0x7c, 0x32, 0xcb, 0xa6, 0xa8, + 0x35, 0x34, 0x6d, 0x70, 0xd3, 0x80, 0xc8, 0x4b, 0xe2, 0xdb, 0x99, 0xd0, +}; +static const unsigned char kat2868_addinreseed[] = { + 0x50, 0x8d, 0xec, 0xa2, 0x57, 0x85, 0xf1, 0x19, 0x61, 0xad, 0x77, 0xce, + 0x62, 0xbe, 0x80, 0x6a, 0xea, 0xed, 0x80, 0xb7, 0x20, 0xc7, 0xd3, 0xa9, + 0x7d, 0x3f, 0x31, 0x47, 0x24, 0xaf, 0x76, 0xaa, 0xdb, 0x3b, 0xf1, 0x04, + 0x7c, 0x2f, 0x3a, 0x7c, 0xaf, 0xd2, 0xdd, 0x46, 0x96, 0x26, 0x41, 0x6f, +}; +static const unsigned char kat2868_addin0[] = { + 0x4b, 0x93, 0x76, 0x0c, 0xfc, 0xd2, 0x72, 0x70, 0xee, 0xbe, 0x3c, 0xb8, + 0x89, 0x1b, 0x25, 0x14, 0x21, 0x51, 0xc4, 0x35, 0x62, 0xf0, 0x9d, 0xf8, + 0x1a, 0xaa, 0x60, 0xf0, 0xcf, 0x07, 0x28, 0x24, 0x6a, 0xec, 0x58, 0x01, + 0x77, 0xfe, 0x32, 0xae, 0xa1, 0xe6, 0x4c, 0x33, 0x03, 0xe1, 0x71, 0x7c, +}; +static const unsigned char kat2868_addin1[] = { + 0x2f, 0x58, 0xd0, 0x36, 0x17, 0x3e, 0xfc, 0xf4, 0x07, 0x66, 0xbf, 0x41, + 0x73, 0x5e, 0x6d, 0x06, 0xff, 0xa9, 0x7e, 0x79, 0xbe, 0xc1, 0x38, 0xe0, + 0x5e, 0xc0, 0xf5, 0x5f, 0xbc, 0x44, 0xc7, 0x92, 0x23, 0x42, 0xa1, 0x0b, + 0x22, 0x95, 0xda, 0x7b, 0xa5, 0xb9, 0x1a, 0x3c, 0x42, 0x93, 0x6c, 0xb0, +}; +static const unsigned char kat2868_retbits[] = { + 0x89, 0xbf, 0xd0, 0x7e, 0xb0, 0x0c, 0x32, 0x46, 0x26, 0xb4, 0x08, 0x94, + 0x64, 0xf1, 0xa2, 0xf4, 0x17, 0x5a, 0x06, 0x5a, 0xbb, 0xde, 0x95, 0x0a, + 0x3b, 0x58, 0x52, 0xf5, 0x31, 0x69, 0xc6, 0xa6, 0x4f, 0xa4, 0x2f, 0x17, + 0x41, 0x25, 0x20, 0xa5, 0x26, 0x2d, 0x64, 0xa7, 0xba, 0x13, 0xe8, 0x5c, + 0x52, 0xaa, 0xd7, 0x07, 0xf4, 0x6b, 0xcb, 0x81, 0xa4, 0x4e, 0xfb, 0x22, + 0x34, 0xd2, 0x6d, 0x9e, +}; +static const struct drbg_kat_pr_false kat2868_t = { + 2, kat2868_entropyin, kat2868_nonce, kat2868_persstr, + kat2868_entropyinreseed, kat2868_addinreseed, kat2868_addin0, + kat2868_addin1, kat2868_retbits +}; +static const struct drbg_kat kat2868 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2868_t +}; + +static const unsigned char kat2869_entropyin[] = { + 0x27, 0x2c, 0xb7, 0x9c, 0x57, 0x4f, 0xa7, 0x94, 0x1d, 0xa8, 0x17, 0xbc, + 0x5b, 0x96, 0x14, 0xc0, 0x03, 0xec, 0x0b, 0xe3, 0x0c, 0xdd, 0x38, 0x47, + 0x92, 0x29, 0x1b, 0x98, 0xc8, 0x81, 0x1d, 0x34, 0x23, 0xe1, 0x16, 0x79, + 0x64, 0x7f, 0x88, 0x7f, 0x42, 0x6e, 0x02, 0x5f, 0x09, 0x60, 0xa7, 0x70, +}; +static const unsigned char kat2869_nonce[] = {0}; +static const unsigned char kat2869_persstr[] = { + 0xb7, 0x98, 0x9b, 0x25, 0x32, 0xd4, 0x6d, 0xec, 0x8a, 0x60, 0x22, 0xb2, + 0x68, 0x74, 0x43, 0x7b, 0xc8, 0x17, 0x6f, 0xd2, 0x19, 0x94, 0x8c, 0xb9, + 0x95, 0xcb, 0x00, 0x30, 0x64, 0xea, 0xcf, 0x12, 0x71, 0xef, 0x17, 0x26, + 0x9a, 0x07, 0xd2, 0xc2, 0xae, 0x99, 0xf3, 0xf8, 0x30, 0x87, 0x8a, 0x37, +}; +static const unsigned char kat2869_entropyinreseed[] = { + 0x78, 0xaf, 0x0b, 0x8b, 0x0e, 0xb3, 0xca, 0xbd, 0x91, 0x9c, 0xaf, 0xd0, + 0x6b, 0x1f, 0xab, 0xfd, 0xcb, 0x63, 0xfe, 0x29, 0xf5, 0xb6, 0x8e, 0x67, + 0x53, 0x0b, 0x39, 0x62, 0x00, 0x88, 0x7d, 0x92, 0x41, 0x9e, 0x3c, 0x83, + 0x9b, 0x8b, 0x1d, 0xc4, 0x3c, 0x65, 0x07, 0x02, 0x6f, 0x1f, 0x85, 0x1e, +}; +static const unsigned char kat2869_addinreseed[] = { + 0x85, 0x78, 0x48, 0xc6, 0x22, 0x03, 0x30, 0x7b, 0x39, 0x72, 0x8a, 0xcf, + 0x11, 0xac, 0x84, 0x62, 0x30, 0x2d, 0x3a, 0x41, 0xd1, 0x86, 0x77, 0x8b, + 0x3f, 0x11, 0x2a, 0x86, 0x27, 0x02, 0x52, 0xf0, 0x58, 0xfb, 0xe5, 0x76, + 0x74, 0x96, 0xe4, 0x76, 0x62, 0x18, 0x6b, 0x8d, 0x08, 0x17, 0xde, 0x02, +}; +static const unsigned char kat2869_addin0[] = { + 0x9a, 0x08, 0xdf, 0x0d, 0xe7, 0x42, 0xfd, 0x2e, 0x2d, 0x55, 0x12, 0x1a, + 0x58, 0xb7, 0x00, 0xdf, 0xbf, 0xf2, 0x50, 0xa4, 0x88, 0x1b, 0x02, 0xfc, + 0x3b, 0x89, 0x52, 0xb4, 0x8e, 0xcd, 0x4d, 0x03, 0x4d, 0x6e, 0x7c, 0x75, + 0x7c, 0xdf, 0x91, 0xbf, 0x7c, 0x31, 0xdf, 0xaf, 0x70, 0xb1, 0xda, 0x22, +}; +static const unsigned char kat2869_addin1[] = { + 0x3b, 0xf0, 0xe4, 0xf1, 0x29, 0x1a, 0x8b, 0xc2, 0x72, 0xcc, 0x98, 0x58, + 0x78, 0x33, 0x58, 0x82, 0xc7, 0x58, 0x31, 0x51, 0x0f, 0x27, 0x96, 0x3c, + 0x7c, 0x01, 0xa8, 0x79, 0xc6, 0x0c, 0x5b, 0x67, 0xa9, 0xa1, 0x4a, 0x65, + 0x6a, 0x74, 0x6a, 0x80, 0xa0, 0x91, 0xad, 0xf6, 0xff, 0xb1, 0xad, 0xf6, +}; +static const unsigned char kat2869_retbits[] = { + 0x69, 0x36, 0x1d, 0x61, 0xf4, 0xcf, 0x5e, 0xd4, 0x89, 0x88, 0x89, 0x34, + 0xf3, 0x20, 0xa9, 0xac, 0xc5, 0x38, 0x3e, 0x71, 0x9f, 0x09, 0xa1, 0xe3, + 0x0b, 0x60, 0x29, 0xbf, 0x71, 0xd4, 0xb4, 0xcb, 0x54, 0x85, 0x97, 0x98, + 0xac, 0xe2, 0xd8, 0xee, 0x5e, 0x68, 0x1d, 0x4a, 0xcb, 0x22, 0x3b, 0x9c, + 0x11, 0x9d, 0xab, 0x2d, 0xd0, 0x7e, 0x6d, 0xb3, 0xf7, 0xf8, 0x44, 0xc2, + 0xb4, 0x6b, 0x9c, 0x47, +}; +static const struct drbg_kat_pr_false kat2869_t = { + 3, kat2869_entropyin, kat2869_nonce, kat2869_persstr, + kat2869_entropyinreseed, kat2869_addinreseed, kat2869_addin0, + kat2869_addin1, kat2869_retbits +}; +static const struct drbg_kat kat2869 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2869_t +}; + +static const unsigned char kat2870_entropyin[] = { + 0x6f, 0x45, 0xb5, 0x5a, 0xc6, 0x2d, 0x5f, 0xfd, 0x45, 0x2d, 0x36, 0xb1, + 0xe4, 0xb1, 0x8c, 0xc6, 0xab, 0xd6, 0xad, 0x93, 0xe8, 0x75, 0x58, 0xb7, + 0x9f, 0xbe, 0x99, 0xb4, 0xf4, 0xa9, 0x62, 0xb7, 0x4b, 0xad, 0x00, 0x82, + 0x10, 0x19, 0xbd, 0x12, 0x6d, 0x6f, 0x9d, 0xd7, 0x39, 0x12, 0xac, 0xf7, +}; +static const unsigned char kat2870_nonce[] = {0}; +static const unsigned char kat2870_persstr[] = { + 0x91, 0x3a, 0x78, 0x30, 0x46, 0xba, 0xef, 0xe4, 0x28, 0x34, 0x60, 0x85, + 0xfd, 0x64, 0x0c, 0xaa, 0x18, 0x74, 0xd4, 0xaa, 0x69, 0x74, 0x83, 0x2c, + 0xac, 0xc5, 0xb5, 0x1e, 0x78, 0x51, 0x4b, 0xcf, 0xed, 0xd1, 0x74, 0x60, + 0x6b, 0xef, 0x17, 0x21, 0xdf, 0x7a, 0x11, 0x94, 0xa0, 0xcc, 0xd1, 0xe3, +}; +static const unsigned char kat2870_entropyinreseed[] = { + 0xd9, 0xe1, 0x9c, 0xe3, 0x19, 0x70, 0x04, 0xab, 0x3a, 0x4b, 0xf9, 0x95, + 0xa4, 0x81, 0x14, 0x9b, 0x6d, 0x8e, 0x59, 0xa3, 0x97, 0x01, 0x61, 0xcb, + 0x0d, 0x39, 0x17, 0x37, 0x4c, 0x0c, 0x86, 0xbb, 0x5e, 0x9b, 0xc5, 0x09, + 0xbd, 0x01, 0xb6, 0x79, 0x6f, 0xa1, 0xe7, 0x7e, 0x5f, 0xdd, 0xdb, 0x16, +}; +static const unsigned char kat2870_addinreseed[] = { + 0xfd, 0x31, 0x06, 0x8c, 0x90, 0x61, 0x4e, 0x04, 0x46, 0x3a, 0xcd, 0xf8, + 0x56, 0xb0, 0x34, 0x29, 0x3a, 0x07, 0x9a, 0x81, 0x6f, 0x1c, 0x5f, 0x3d, + 0xe6, 0x3b, 0x87, 0x0a, 0x98, 0x76, 0xf7, 0x39, 0x7d, 0x2f, 0x93, 0xbd, + 0x3f, 0x67, 0x76, 0xb5, 0x6a, 0x78, 0xf7, 0x17, 0x8e, 0x1f, 0xbb, 0x87, +}; +static const unsigned char kat2870_addin0[] = { + 0x06, 0x8e, 0x37, 0x91, 0xb9, 0x1a, 0xdb, 0x82, 0x0b, 0x27, 0xc4, 0x5a, + 0x5d, 0x85, 0x44, 0xee, 0xd3, 0x13, 0x34, 0x86, 0xa7, 0xd2, 0xd0, 0xbc, + 0x50, 0x3d, 0x8a, 0xba, 0xd8, 0xb7, 0x09, 0x3f, 0x3d, 0xf2, 0x14, 0xf1, + 0xe0, 0xac, 0x4f, 0xf2, 0xd3, 0x47, 0xc7, 0x60, 0xb2, 0xa6, 0x05, 0xd5, +}; +static const unsigned char kat2870_addin1[] = { + 0x6c, 0x55, 0x92, 0x7a, 0x34, 0x9d, 0x32, 0x1d, 0x1a, 0x21, 0x41, 0xae, + 0xcc, 0xc3, 0x54, 0x3e, 0x97, 0x26, 0xff, 0xcf, 0x3d, 0x8f, 0xdf, 0xe1, + 0xae, 0xd6, 0x3c, 0x61, 0x97, 0x2a, 0x21, 0x3c, 0x12, 0xea, 0x65, 0xd6, + 0x48, 0xe4, 0x76, 0x26, 0x86, 0x11, 0xe9, 0xb0, 0x84, 0x86, 0xa6, 0x48, +}; +static const unsigned char kat2870_retbits[] = { + 0x55, 0x2b, 0x4c, 0x40, 0x35, 0xd9, 0x64, 0xb5, 0xeb, 0x26, 0xe3, 0x03, + 0x64, 0x45, 0x79, 0x3d, 0xf6, 0x7b, 0x73, 0x21, 0xd3, 0x6e, 0x8d, 0x23, + 0x62, 0xfe, 0x28, 0x45, 0x03, 0xb5, 0x87, 0xc9, 0x61, 0xa3, 0x3b, 0x81, + 0x6b, 0x40, 0xb9, 0x3d, 0x4b, 0x00, 0x67, 0x69, 0x17, 0x7c, 0x65, 0x93, + 0xc5, 0x53, 0xb6, 0xe6, 0x69, 0x07, 0x6f, 0x25, 0xa3, 0xe2, 0xa7, 0x21, + 0x41, 0x56, 0xc2, 0x49, +}; +static const struct drbg_kat_pr_false kat2870_t = { + 4, kat2870_entropyin, kat2870_nonce, kat2870_persstr, + kat2870_entropyinreseed, kat2870_addinreseed, kat2870_addin0, + kat2870_addin1, kat2870_retbits +}; +static const struct drbg_kat kat2870 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2870_t +}; + +static const unsigned char kat2871_entropyin[] = { + 0x8d, 0x49, 0x2d, 0xf4, 0x62, 0x57, 0xa6, 0x2e, 0x71, 0x73, 0x02, 0x99, + 0x26, 0x82, 0xe2, 0x84, 0x94, 0xf8, 0x4d, 0x0f, 0x32, 0x37, 0xc1, 0x64, + 0x39, 0xef, 0xbb, 0xd1, 0x6a, 0x94, 0xb3, 0x35, 0x6e, 0xb7, 0xf7, 0xc2, + 0xa0, 0x20, 0x68, 0x92, 0x04, 0x5a, 0x0d, 0x7d, 0x36, 0xd6, 0x9f, 0x03, +}; +static const unsigned char kat2871_nonce[] = {0}; +static const unsigned char kat2871_persstr[] = { + 0xb9, 0x15, 0xf3, 0x31, 0x1f, 0xea, 0xdf, 0x66, 0x76, 0xdf, 0x23, 0x89, + 0xba, 0xac, 0xcc, 0xda, 0xfc, 0x74, 0xcf, 0x20, 0x0e, 0xd7, 0xb9, 0x91, + 0x67, 0xb3, 0x3d, 0xaf, 0xa8, 0x75, 0xce, 0x4a, 0xac, 0x1a, 0x61, 0xce, + 0x54, 0x97, 0x2e, 0xc5, 0x4f, 0x9b, 0x09, 0x01, 0xa3, 0xb0, 0x50, 0xee, +}; +static const unsigned char kat2871_entropyinreseed[] = { + 0x2e, 0x34, 0x5f, 0xe3, 0xa4, 0x71, 0xc5, 0x06, 0x6b, 0x20, 0xf4, 0xaa, + 0xea, 0xaf, 0x73, 0x92, 0x14, 0x26, 0xac, 0x1b, 0xc0, 0x50, 0x9e, 0x93, + 0x67, 0x15, 0x35, 0xa8, 0xfb, 0xc0, 0x16, 0xf5, 0x96, 0x74, 0x03, 0xd6, + 0xd1, 0x3b, 0x47, 0x60, 0x49, 0x1b, 0xf9, 0x73, 0xc4, 0x7a, 0x8e, 0xd5, +}; +static const unsigned char kat2871_addinreseed[] = { + 0x2e, 0x8f, 0x1f, 0x01, 0xa7, 0x66, 0x48, 0x90, 0xfe, 0xef, 0x93, 0x15, + 0x2f, 0x7b, 0x7f, 0x05, 0x03, 0x2b, 0x4c, 0x70, 0xc5, 0x8b, 0x5f, 0x26, + 0x1e, 0xf0, 0xa9, 0xc2, 0xae, 0xf2, 0x3f, 0x2a, 0x14, 0xee, 0x57, 0xc3, + 0xd3, 0x46, 0x5a, 0xf2, 0x42, 0x89, 0xb1, 0xc8, 0x50, 0xe5, 0x2e, 0xf8, +}; +static const unsigned char kat2871_addin0[] = { + 0xf8, 0xc2, 0x18, 0xc9, 0x96, 0x28, 0x4f, 0x75, 0x7c, 0x49, 0x1c, 0xba, + 0x02, 0x5f, 0xd8, 0x4c, 0xc7, 0x01, 0xf9, 0xf8, 0x3a, 0x16, 0xf0, 0x3c, + 0x31, 0x47, 0x12, 0xc2, 0x35, 0x4f, 0xee, 0x39, 0x21, 0x4e, 0xd5, 0x99, + 0x4a, 0xb2, 0x46, 0x41, 0x82, 0x6b, 0xc1, 0x5e, 0xd1, 0xbb, 0x5f, 0x61, +}; +static const unsigned char kat2871_addin1[] = { + 0x14, 0x6c, 0x53, 0xdc, 0x4a, 0xf9, 0x0f, 0x26, 0xd8, 0xc8, 0x58, 0x22, + 0x81, 0x0d, 0x9b, 0xde, 0x29, 0x49, 0x49, 0x5c, 0x23, 0xca, 0x2c, 0x7c, + 0x13, 0xce, 0xee, 0x82, 0x21, 0xcb, 0xe8, 0x10, 0x54, 0x91, 0xd5, 0x60, + 0xe0, 0x04, 0x4c, 0x8d, 0x50, 0xd7, 0xe3, 0x65, 0xda, 0x41, 0x89, 0x0b, +}; +static const unsigned char kat2871_retbits[] = { + 0xb1, 0x9d, 0xd1, 0x84, 0x94, 0x23, 0x5a, 0xbd, 0xcb, 0x3b, 0x4e, 0x99, + 0xc9, 0x35, 0x5d, 0x19, 0xd5, 0x43, 0xc7, 0xfb, 0x7e, 0x10, 0x48, 0xd6, + 0x3d, 0x9e, 0x25, 0xab, 0xcc, 0x12, 0xdc, 0xb3, 0x15, 0x49, 0xce, 0xc2, + 0x81, 0x86, 0x67, 0x71, 0x3a, 0xd1, 0xdc, 0x35, 0x14, 0x20, 0x72, 0xca, + 0x8d, 0xaa, 0x51, 0x19, 0x27, 0xac, 0xa7, 0x13, 0x03, 0x49, 0x3e, 0x50, + 0x05, 0x03, 0xbe, 0x8b, +}; +static const struct drbg_kat_pr_false kat2871_t = { + 5, kat2871_entropyin, kat2871_nonce, kat2871_persstr, + kat2871_entropyinreseed, kat2871_addinreseed, kat2871_addin0, + kat2871_addin1, kat2871_retbits +}; +static const struct drbg_kat kat2871 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2871_t +}; + +static const unsigned char kat2872_entropyin[] = { + 0x2a, 0x59, 0x5f, 0x08, 0x94, 0x7d, 0x00, 0x56, 0xed, 0x19, 0xec, 0xc8, + 0xa5, 0x47, 0x86, 0x78, 0x34, 0xc1, 0x25, 0xcf, 0x17, 0x40, 0x23, 0x0a, + 0x13, 0x25, 0xb9, 0x3b, 0xf2, 0x99, 0x51, 0xcb, 0xed, 0xca, 0xa6, 0xa8, + 0xf5, 0xcb, 0xe6, 0x98, 0x01, 0xfb, 0x9a, 0x19, 0x7a, 0xd5, 0x76, 0xc6, +}; +static const unsigned char kat2872_nonce[] = {0}; +static const unsigned char kat2872_persstr[] = { + 0xc0, 0xfb, 0x9d, 0xbe, 0xa1, 0x38, 0x63, 0xdf, 0xbf, 0xdb, 0x2c, 0x0d, + 0xd8, 0x64, 0x88, 0x74, 0x13, 0x79, 0x4a, 0x07, 0xa4, 0xdd, 0x22, 0x88, + 0x36, 0xf0, 0xf6, 0xaf, 0xab, 0x90, 0x14, 0x96, 0x48, 0x6a, 0x2d, 0x50, + 0x8a, 0x3f, 0x4b, 0x78, 0x4d, 0x83, 0x38, 0x26, 0x29, 0xcd, 0xdb, 0xc1, +}; +static const unsigned char kat2872_entropyinreseed[] = { + 0xa3, 0xdd, 0xfc, 0x3a, 0xef, 0xc9, 0x4d, 0xca, 0xf6, 0x56, 0xf4, 0xd8, + 0xee, 0xf0, 0x06, 0x5a, 0x6d, 0x23, 0x3a, 0x76, 0xe0, 0xa4, 0xc2, 0x6e, + 0x2d, 0x8b, 0xbb, 0x86, 0x45, 0x9c, 0x9e, 0x4a, 0x17, 0x3f, 0xf8, 0xcb, + 0xec, 0x85, 0xeb, 0xc1, 0x47, 0x12, 0x64, 0x07, 0x41, 0x42, 0x76, 0x68, +}; +static const unsigned char kat2872_addinreseed[] = { + 0xd4, 0xeb, 0x9b, 0x12, 0xfc, 0x2a, 0x6f, 0xc7, 0x5a, 0x69, 0x70, 0x1c, + 0x8b, 0x5e, 0xce, 0x02, 0xe4, 0x7f, 0x81, 0x3e, 0xff, 0xb7, 0x05, 0xdb, + 0xde, 0xf0, 0x29, 0x4e, 0x38, 0x90, 0x7f, 0x5a, 0xad, 0xf4, 0x0b, 0xdb, + 0xcc, 0x06, 0x7d, 0x0e, 0xbc, 0x0b, 0xf3, 0x66, 0x1a, 0x2e, 0x09, 0x90, +}; +static const unsigned char kat2872_addin0[] = { + 0xd3, 0xc4, 0xbf, 0x4f, 0x8a, 0x3f, 0x61, 0x41, 0x3f, 0xe1, 0x95, 0x35, + 0x23, 0xba, 0x83, 0xbc, 0x02, 0xae, 0x6d, 0x7e, 0xea, 0x1c, 0x8b, 0xa2, + 0x88, 0xf8, 0xe0, 0x6f, 0x0d, 0x02, 0x76, 0xe6, 0x16, 0x67, 0xa4, 0x10, + 0xf9, 0x05, 0x48, 0xd2, 0x83, 0xc4, 0xf1, 0xae, 0x79, 0x48, 0x39, 0x61, +}; +static const unsigned char kat2872_addin1[] = { + 0xe6, 0xfc, 0x29, 0x68, 0x0e, 0xef, 0x14, 0x1e, 0x13, 0x72, 0xe1, 0x77, + 0x29, 0xc9, 0xf4, 0x40, 0x7b, 0x3f, 0x7a, 0x57, 0x05, 0x7b, 0xe1, 0x08, + 0x1c, 0xe4, 0x6c, 0x78, 0x69, 0x33, 0x34, 0xbf, 0x56, 0x86, 0x77, 0x91, + 0x07, 0x2d, 0x9d, 0x18, 0xa7, 0xb4, 0x83, 0x5b, 0xf2, 0x51, 0x71, 0x2d, +}; +static const unsigned char kat2872_retbits[] = { + 0x08, 0x47, 0x5b, 0xfb, 0x8e, 0x62, 0x1e, 0x12, 0xe2, 0x12, 0xf4, 0x96, + 0x0e, 0x73, 0x70, 0x23, 0xf7, 0xa3, 0xde, 0x3b, 0x20, 0x4b, 0x6f, 0xfe, + 0xeb, 0x92, 0x9f, 0x42, 0x4c, 0xa7, 0x8c, 0x6a, 0xe2, 0xe0, 0xd7, 0x26, + 0x23, 0x79, 0x15, 0xe5, 0xe2, 0x44, 0x61, 0x67, 0x13, 0xe8, 0x8a, 0x39, + 0xdf, 0x30, 0x22, 0x08, 0xe3, 0xa3, 0x24, 0xf5, 0x44, 0x42, 0x13, 0xb7, + 0x0b, 0x2e, 0x9c, 0x09, +}; +static const struct drbg_kat_pr_false kat2872_t = { + 6, kat2872_entropyin, kat2872_nonce, kat2872_persstr, + kat2872_entropyinreseed, kat2872_addinreseed, kat2872_addin0, + kat2872_addin1, kat2872_retbits +}; +static const struct drbg_kat kat2872 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2872_t +}; + +static const unsigned char kat2873_entropyin[] = { + 0x3d, 0x53, 0x32, 0xb9, 0x1d, 0xca, 0xad, 0x89, 0x3d, 0xf5, 0x04, 0xc7, + 0xc6, 0x75, 0xb6, 0x98, 0x90, 0xb2, 0x80, 0x55, 0xdf, 0xd3, 0xec, 0x7d, + 0x0b, 0xa5, 0x69, 0x90, 0xdc, 0xda, 0x17, 0x50, 0x96, 0xff, 0x8f, 0x8f, + 0x9f, 0x9e, 0xcd, 0x6d, 0xdd, 0xeb, 0x96, 0xb8, 0x29, 0xb9, 0x8c, 0x3e, +}; +static const unsigned char kat2873_nonce[] = {0}; +static const unsigned char kat2873_persstr[] = { + 0x34, 0x75, 0x34, 0x32, 0xb3, 0xc6, 0xbe, 0xdc, 0x4d, 0x22, 0x96, 0xdf, + 0xfc, 0xe8, 0xa6, 0x65, 0x91, 0xb4, 0x00, 0x86, 0x7f, 0x7e, 0xdf, 0x10, + 0xce, 0xe4, 0x47, 0x04, 0x6f, 0x5f, 0x76, 0x70, 0x36, 0xda, 0x9f, 0x3f, + 0x4a, 0x02, 0xf7, 0xb8, 0xcb, 0xa7, 0xbd, 0xd4, 0x36, 0x5c, 0x1f, 0xef, +}; +static const unsigned char kat2873_entropyinreseed[] = { + 0x1a, 0x69, 0xaf, 0x0f, 0xf6, 0x96, 0xf9, 0xa2, 0xfe, 0x0f, 0xdd, 0xd2, + 0x6c, 0xcf, 0x6f, 0xae, 0x21, 0x5f, 0xaf, 0x91, 0x80, 0x44, 0x61, 0x92, + 0x8c, 0x88, 0x4e, 0xec, 0x13, 0xb1, 0xdd, 0x15, 0x01, 0x86, 0x2a, 0x73, + 0x83, 0x73, 0x45, 0x4e, 0x1b, 0x44, 0x9c, 0x60, 0x26, 0xce, 0xbc, 0xeb, +}; +static const unsigned char kat2873_addinreseed[] = { + 0xdc, 0x47, 0xe1, 0x04, 0x17, 0x5f, 0x3c, 0x98, 0x12, 0xfe, 0xed, 0x9e, + 0x14, 0x3d, 0xa5, 0xcd, 0x7e, 0x55, 0x3e, 0x34, 0x23, 0xdb, 0x5b, 0xc8, + 0xbe, 0x3b, 0x65, 0x2f, 0x57, 0x71, 0x00, 0x26, 0x7f, 0xf7, 0x95, 0x80, + 0x4a, 0xaf, 0x42, 0xc3, 0x99, 0x15, 0x89, 0xe7, 0x68, 0x8a, 0x97, 0x7b, +}; +static const unsigned char kat2873_addin0[] = { + 0xe6, 0x4c, 0x0c, 0xad, 0x3d, 0xfc, 0x0b, 0xf0, 0xeb, 0xa3, 0x31, 0x7c, + 0xf3, 0x7b, 0x77, 0x79, 0xb9, 0x1b, 0xf3, 0xde, 0x3e, 0x0b, 0xa3, 0x6d, + 0x3e, 0x16, 0xfe, 0xb0, 0x01, 0x42, 0x86, 0x59, 0x6e, 0xdd, 0x36, 0x4c, + 0x19, 0x78, 0x47, 0xe8, 0x73, 0x29, 0x25, 0xf9, 0x71, 0x29, 0x4d, 0xfa, +}; +static const unsigned char kat2873_addin1[] = { + 0x1f, 0xf3, 0xa6, 0xbd, 0xb7, 0xe3, 0x19, 0xa8, 0x6b, 0x35, 0xd0, 0x62, + 0xcf, 0x01, 0x7e, 0xd2, 0x70, 0xc6, 0xb5, 0x51, 0x1b, 0xc3, 0xd6, 0x30, + 0x83, 0x27, 0x2e, 0x76, 0xbf, 0x4d, 0xb9, 0xd9, 0x0e, 0x83, 0x6f, 0x18, + 0xd9, 0x8f, 0x1f, 0x79, 0xc2, 0xe9, 0x1e, 0xeb, 0x0b, 0xc6, 0x35, 0xe2, +}; +static const unsigned char kat2873_retbits[] = { + 0xfd, 0xef, 0x7e, 0x67, 0xc3, 0xd1, 0x9f, 0x5f, 0x74, 0x78, 0x4b, 0xdc, + 0x64, 0xd2, 0xc2, 0x3d, 0x0a, 0x3f, 0x02, 0x78, 0x46, 0xda, 0x2b, 0x2a, + 0xfb, 0xa9, 0x40, 0xfd, 0xc2, 0xf0, 0x66, 0xd8, 0x9b, 0x63, 0xd2, 0x7e, + 0x55, 0xd3, 0xd0, 0xa8, 0x8b, 0xdd, 0xb9, 0x7e, 0x29, 0x67, 0x68, 0x94, + 0xec, 0x8a, 0x18, 0x26, 0x8e, 0x4b, 0xc2, 0x7d, 0x18, 0x1a, 0x86, 0x7c, + 0x5a, 0x80, 0xfe, 0x2c, +}; +static const struct drbg_kat_pr_false kat2873_t = { + 7, kat2873_entropyin, kat2873_nonce, kat2873_persstr, + kat2873_entropyinreseed, kat2873_addinreseed, kat2873_addin0, + kat2873_addin1, kat2873_retbits +}; +static const struct drbg_kat kat2873 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2873_t +}; + +static const unsigned char kat2874_entropyin[] = { + 0x15, 0x6c, 0x8c, 0x0f, 0x44, 0xf4, 0xa8, 0xf1, 0x70, 0x44, 0x95, 0x7b, + 0x57, 0x2e, 0xd1, 0x6d, 0x54, 0xb7, 0x3a, 0x95, 0x10, 0xd2, 0xb2, 0x60, + 0xa0, 0x36, 0xad, 0x6e, 0xf2, 0x23, 0xf4, 0x5e, 0x12, 0x4c, 0x4a, 0xe9, + 0xda, 0xe0, 0xfd, 0xf5, 0x68, 0x47, 0x92, 0xda, 0x0f, 0xf5, 0xea, 0x0a, +}; +static const unsigned char kat2874_nonce[] = {0}; +static const unsigned char kat2874_persstr[] = { + 0x14, 0x72, 0xf5, 0x6d, 0x54, 0x98, 0x56, 0x4a, 0x5b, 0x53, 0xd2, 0xea, + 0xe2, 0x71, 0x03, 0xf4, 0x1f, 0x56, 0x5d, 0x78, 0x73, 0xb3, 0x7c, 0x37, + 0xc3, 0x04, 0x72, 0x07, 0x5f, 0x1d, 0x84, 0xd6, 0x9a, 0x8d, 0x68, 0xc9, + 0x26, 0x36, 0xae, 0x06, 0xaa, 0x61, 0x67, 0x83, 0x58, 0xcc, 0x47, 0xd4, +}; +static const unsigned char kat2874_entropyinreseed[] = { + 0x6b, 0xc2, 0xbf, 0xd4, 0x4f, 0x72, 0x98, 0x2b, 0x23, 0xb6, 0xd2, 0x2c, + 0x85, 0xf7, 0xd6, 0x01, 0xd5, 0x94, 0x1e, 0xbe, 0x6e, 0x9e, 0xe9, 0xd0, + 0x6a, 0x8e, 0xfe, 0x65, 0x25, 0x39, 0xec, 0x00, 0xb1, 0x13, 0x6a, 0xdb, + 0xc4, 0xe4, 0x3a, 0xaa, 0xb7, 0x6c, 0x3a, 0xd6, 0xa5, 0x7a, 0x26, 0x7e, +}; +static const unsigned char kat2874_addinreseed[] = { + 0xa8, 0x3b, 0x15, 0x47, 0xfa, 0xdb, 0x97, 0xe4, 0x91, 0xef, 0x0b, 0xdb, + 0x8b, 0x0d, 0x00, 0x6a, 0xb1, 0x66, 0x38, 0xfd, 0xb2, 0x11, 0x61, 0x30, + 0x51, 0xf0, 0xf5, 0x75, 0x86, 0xc1, 0x46, 0x88, 0x2f, 0x10, 0x62, 0xb7, + 0xf7, 0x1a, 0x8c, 0x15, 0xbb, 0x27, 0x20, 0x0f, 0xa8, 0x3f, 0xfc, 0xaf, +}; +static const unsigned char kat2874_addin0[] = { + 0xac, 0x18, 0x8d, 0xa8, 0xa8, 0x95, 0xe0, 0x80, 0x7b, 0xab, 0x61, 0xb1, + 0xeb, 0xd7, 0x3a, 0xcb, 0xe4, 0x3f, 0x99, 0xf3, 0x75, 0xc7, 0xd2, 0x91, + 0x74, 0xf6, 0x75, 0xe1, 0x66, 0x72, 0x37, 0xce, 0xdf, 0x1d, 0x41, 0xfc, + 0x50, 0xda, 0x27, 0x7a, 0x0d, 0xb2, 0x1e, 0xe2, 0x89, 0x1a, 0x5a, 0xbf, +}; +static const unsigned char kat2874_addin1[] = { + 0xad, 0xf9, 0xa3, 0x0b, 0x6c, 0xd9, 0xda, 0xc2, 0x3f, 0x19, 0x3f, 0x66, + 0xdf, 0x9d, 0x60, 0x6a, 0x57, 0x65, 0xb9, 0x6c, 0xc4, 0x2c, 0x09, 0x95, + 0x30, 0xc5, 0x3c, 0x26, 0xa6, 0xd6, 0xbc, 0xf0, 0x77, 0x9a, 0xe0, 0x60, + 0xd1, 0x88, 0xe1, 0xcc, 0x5b, 0xda, 0xb6, 0xc3, 0x12, 0x89, 0x22, 0x67, +}; +static const unsigned char kat2874_retbits[] = { + 0xfc, 0xc7, 0x98, 0x28, 0xbf, 0x2c, 0x9d, 0x3d, 0x79, 0x9d, 0x7a, 0x0e, + 0x83, 0x58, 0x3c, 0x70, 0xae, 0xb1, 0x56, 0xe2, 0x5d, 0xf0, 0xb2, 0xfd, + 0xe0, 0x30, 0xc2, 0x77, 0x5c, 0x99, 0x86, 0xc8, 0x05, 0x4e, 0x84, 0x81, + 0x28, 0xba, 0x38, 0xff, 0x5e, 0x5b, 0x0b, 0x1e, 0x5b, 0x72, 0xf9, 0xe4, + 0x17, 0x26, 0xb9, 0x60, 0x00, 0x84, 0x08, 0xf5, 0x15, 0x2b, 0x1a, 0x47, + 0x07, 0x2f, 0xbd, 0xf7, +}; +static const struct drbg_kat_pr_false kat2874_t = { + 8, kat2874_entropyin, kat2874_nonce, kat2874_persstr, + kat2874_entropyinreseed, kat2874_addinreseed, kat2874_addin0, + kat2874_addin1, kat2874_retbits +}; +static const struct drbg_kat kat2874 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2874_t +}; + +static const unsigned char kat2875_entropyin[] = { + 0x5e, 0x0d, 0xd8, 0xe3, 0x7a, 0xa2, 0x3d, 0x0f, 0xe7, 0x9e, 0xfc, 0xb8, + 0xe5, 0x53, 0x8e, 0xe9, 0x0f, 0xfb, 0x57, 0x33, 0xde, 0xcc, 0x83, 0xf7, + 0x67, 0x74, 0x88, 0xc4, 0xf6, 0x4c, 0x2e, 0x0d, 0x2a, 0x91, 0x89, 0x68, + 0xa5, 0xc7, 0x35, 0x1d, 0xe9, 0x36, 0x0f, 0x23, 0xfe, 0x60, 0x6a, 0x4a, +}; +static const unsigned char kat2875_nonce[] = {0}; +static const unsigned char kat2875_persstr[] = { + 0x51, 0x61, 0xb7, 0x94, 0xe4, 0xa1, 0x33, 0x71, 0xb3, 0x20, 0xae, 0x4b, + 0x2b, 0x6b, 0x69, 0x8e, 0x4d, 0xf5, 0x07, 0x40, 0x2a, 0x75, 0x82, 0x55, + 0x55, 0x98, 0x08, 0x9d, 0xd9, 0x48, 0x43, 0x58, 0xd3, 0x7f, 0x89, 0x12, + 0x94, 0x94, 0x85, 0x12, 0xe4, 0x19, 0x8a, 0x79, 0xde, 0x8c, 0xa3, 0xd9, +}; +static const unsigned char kat2875_entropyinreseed[] = { + 0x85, 0x0f, 0xfb, 0x89, 0xbc, 0x23, 0x56, 0x2f, 0x3e, 0xa0, 0x39, 0x47, + 0xc1, 0xaf, 0xa7, 0x30, 0x9a, 0x0c, 0xcd, 0xc0, 0xb7, 0x14, 0xbc, 0x94, + 0xff, 0x45, 0xd6, 0x68, 0x84, 0xb7, 0x4f, 0xba, 0x0b, 0xff, 0xce, 0x97, + 0x88, 0x7f, 0x2e, 0xfc, 0x17, 0x83, 0x88, 0xf3, 0x6f, 0x0e, 0xa9, 0x5e, +}; +static const unsigned char kat2875_addinreseed[] = { + 0x50, 0xf6, 0x05, 0xcb, 0x94, 0x0f, 0x57, 0x3c, 0x4e, 0xf3, 0xdd, 0xff, + 0x8c, 0xaa, 0x9a, 0x3f, 0x54, 0x4f, 0x40, 0xfd, 0xf5, 0x83, 0xb8, 0x2c, + 0xd7, 0x93, 0x38, 0x52, 0x3d, 0x89, 0x6f, 0x72, 0xf8, 0x6b, 0xe1, 0xf9, + 0xbb, 0x37, 0xd9, 0xac, 0xa0, 0x2a, 0x28, 0x56, 0xf7, 0x13, 0xc8, 0x12, +}; +static const unsigned char kat2875_addin0[] = { + 0xda, 0x7b, 0xcf, 0x68, 0x10, 0xa6, 0xb3, 0x82, 0x05, 0x48, 0x06, 0x5e, + 0xdb, 0xec, 0x0f, 0xa2, 0xfd, 0x4b, 0xc0, 0x3e, 0x5d, 0x50, 0x66, 0x6f, + 0x98, 0xa8, 0xbe, 0xa6, 0xb7, 0x44, 0xe0, 0x4a, 0xaf, 0xa0, 0x71, 0x45, + 0x82, 0xf1, 0x1b, 0x66, 0x08, 0x85, 0x2c, 0x45, 0xee, 0x51, 0xdf, 0x6b, +}; +static const unsigned char kat2875_addin1[] = { + 0x4e, 0x9c, 0x0c, 0x77, 0x06, 0x99, 0x65, 0x62, 0x17, 0xa0, 0xb2, 0xdb, + 0xb4, 0x66, 0xa0, 0xfc, 0xb0, 0xcd, 0xb5, 0xd4, 0xa4, 0xa0, 0x5d, 0xa4, + 0x0f, 0xa2, 0xeb, 0x54, 0x6f, 0x2f, 0x0f, 0x28, 0xae, 0xa5, 0x75, 0xa0, + 0xbd, 0xf6, 0xe8, 0x93, 0x52, 0xd5, 0x19, 0xdb, 0x44, 0xf4, 0x7d, 0xc5, +}; +static const unsigned char kat2875_retbits[] = { + 0x40, 0xec, 0x0e, 0x8e, 0x3e, 0x54, 0xcd, 0x4f, 0xd7, 0x8f, 0x5e, 0x00, + 0x6b, 0xf3, 0x13, 0x4c, 0x37, 0x8b, 0xa6, 0x19, 0xcc, 0xf9, 0xe7, 0x53, + 0x0c, 0x79, 0x21, 0x7d, 0xa6, 0x31, 0x45, 0x8b, 0x5f, 0x91, 0x35, 0xbc, + 0x8b, 0x0d, 0x6f, 0x2e, 0x74, 0x2c, 0x53, 0xb5, 0x8d, 0x0e, 0xbc, 0x18, + 0x26, 0x3f, 0x9d, 0x2e, 0xf3, 0x7a, 0x2f, 0xa0, 0xfb, 0x08, 0x6d, 0x21, + 0x93, 0x85, 0x78, 0x63, +}; +static const struct drbg_kat_pr_false kat2875_t = { + 9, kat2875_entropyin, kat2875_nonce, kat2875_persstr, + kat2875_entropyinreseed, kat2875_addinreseed, kat2875_addin0, + kat2875_addin1, kat2875_retbits +}; +static const struct drbg_kat kat2875 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2875_t +}; + +static const unsigned char kat2876_entropyin[] = { + 0x21, 0x9a, 0x36, 0x4a, 0xd3, 0x62, 0xfd, 0x8a, 0x1d, 0x69, 0xc1, 0x28, + 0x4f, 0xd6, 0x4c, 0xc9, 0xec, 0x05, 0xe6, 0xbf, 0xbd, 0xd1, 0x33, 0xac, + 0x91, 0x70, 0x59, 0x4b, 0x5d, 0x95, 0x94, 0x6d, 0x3d, 0xda, 0x2e, 0xbc, + 0xc5, 0x8d, 0xee, 0xac, 0xe8, 0x6f, 0x9d, 0xca, 0x5a, 0xd9, 0x9c, 0x18, +}; +static const unsigned char kat2876_nonce[] = {0}; +static const unsigned char kat2876_persstr[] = { + 0xb0, 0xb2, 0x7b, 0x03, 0xfc, 0x65, 0xef, 0xfe, 0x46, 0x10, 0xe6, 0x19, + 0x16, 0xf2, 0xe9, 0xbd, 0x25, 0x2d, 0x47, 0xef, 0xcc, 0x08, 0xb8, 0x4a, + 0xa5, 0x05, 0xb1, 0xbe, 0xfd, 0x3a, 0x7e, 0x92, 0x95, 0xca, 0x76, 0x4a, + 0xc8, 0x8f, 0x09, 0x9b, 0xbe, 0xcc, 0x28, 0x30, 0x1f, 0x0f, 0x29, 0x8e, +}; +static const unsigned char kat2876_entropyinreseed[] = { + 0x1b, 0xcc, 0xdb, 0x4b, 0x2c, 0xe8, 0x63, 0xfb, 0xee, 0x10, 0x4d, 0x7a, + 0x56, 0xf2, 0xcd, 0x88, 0xa4, 0x4a, 0x08, 0x83, 0x92, 0x88, 0x3a, 0x6d, + 0xb3, 0x0e, 0x6f, 0xc7, 0xbf, 0x56, 0x11, 0x75, 0x9c, 0x71, 0xd5, 0x3a, + 0x61, 0xfe, 0x62, 0xb6, 0x31, 0x4d, 0x74, 0x26, 0xe5, 0x10, 0xa7, 0x22, +}; +static const unsigned char kat2876_addinreseed[] = { + 0xa0, 0x6e, 0xab, 0x3b, 0x05, 0xeb, 0x36, 0x49, 0xa0, 0x1b, 0xe8, 0x2a, + 0x35, 0x60, 0x30, 0xef, 0xfd, 0xbf, 0x45, 0xfd, 0x71, 0xf4, 0x9b, 0x18, + 0x62, 0xec, 0xf3, 0x3f, 0xdb, 0x28, 0xa7, 0x19, 0x1a, 0x34, 0xf1, 0x04, + 0xb9, 0xed, 0xa1, 0xda, 0x4b, 0xa4, 0x8d, 0xaf, 0x9d, 0xa3, 0x81, 0xb6, +}; +static const unsigned char kat2876_addin0[] = { + 0x88, 0xb1, 0x7e, 0x13, 0xe0, 0x2a, 0x7e, 0x9a, 0x3f, 0x82, 0x63, 0x94, + 0x6f, 0xae, 0x0b, 0x6a, 0x90, 0x52, 0x69, 0x2c, 0x3c, 0x5c, 0xbe, 0x85, + 0x83, 0x69, 0xc4, 0xd0, 0xb1, 0x98, 0xb9, 0xc6, 0xa8, 0xf4, 0xc8, 0x7f, + 0xf5, 0xe6, 0xb2, 0x83, 0x5a, 0x79, 0x44, 0xb9, 0x11, 0x26, 0x6a, 0xa9, +}; +static const unsigned char kat2876_addin1[] = { + 0x82, 0x82, 0x22, 0xc8, 0xa2, 0x75, 0x42, 0x7a, 0x5f, 0x8a, 0x96, 0x3d, + 0x0d, 0x65, 0xe9, 0x2f, 0x61, 0x70, 0xd5, 0x08, 0x9c, 0x9a, 0x16, 0x24, + 0x29, 0xc0, 0x93, 0xa2, 0x8d, 0xd6, 0x9f, 0x71, 0x13, 0x53, 0x42, 0xf1, + 0x6b, 0x3b, 0xae, 0xa9, 0xa4, 0x76, 0x4e, 0x2c, 0xc3, 0x76, 0x22, 0x67, +}; +static const unsigned char kat2876_retbits[] = { + 0xa7, 0x39, 0xf9, 0xfe, 0xe9, 0xa4, 0x00, 0x49, 0xe4, 0x2b, 0x00, 0xb3, + 0x81, 0xa1, 0xf6, 0x63, 0x87, 0x7a, 0xbb, 0x77, 0x6e, 0xc6, 0x55, 0xe3, + 0xa7, 0x87, 0x0b, 0xd9, 0x4b, 0xea, 0x1a, 0x25, 0xd3, 0xc6, 0xd3, 0x80, + 0xec, 0xed, 0x43, 0x5e, 0x49, 0x80, 0x44, 0xda, 0xf7, 0x8b, 0x34, 0x9b, + 0xc1, 0x86, 0x8e, 0x4b, 0xff, 0x62, 0x57, 0xcf, 0x27, 0x11, 0xed, 0x08, + 0xe2, 0x35, 0x72, 0x01, +}; +static const struct drbg_kat_pr_false kat2876_t = { + 10, kat2876_entropyin, kat2876_nonce, kat2876_persstr, + kat2876_entropyinreseed, kat2876_addinreseed, kat2876_addin0, + kat2876_addin1, kat2876_retbits +}; +static const struct drbg_kat kat2876 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2876_t +}; + +static const unsigned char kat2877_entropyin[] = { + 0xf8, 0x51, 0x3c, 0x2f, 0x6e, 0x46, 0xf7, 0x5f, 0xce, 0x36, 0x71, 0xcc, + 0xb3, 0xc6, 0x91, 0x58, 0x58, 0x3a, 0x87, 0x3b, 0x0d, 0xda, 0x83, 0xd8, + 0xb1, 0xcd, 0x54, 0x8f, 0x4e, 0x5e, 0xfd, 0x75, 0x64, 0x2f, 0x2c, 0x23, + 0xcf, 0x87, 0x92, 0xd5, 0x10, 0x23, 0xf3, 0x1d, 0x79, 0x5f, 0x6f, 0x5b, +}; +static const unsigned char kat2877_nonce[] = {0}; +static const unsigned char kat2877_persstr[] = { + 0xe9, 0x4f, 0x72, 0x12, 0x25, 0x78, 0x85, 0x51, 0x1b, 0x15, 0xa8, 0x73, + 0xd0, 0x15, 0x8f, 0xa5, 0xea, 0x64, 0x88, 0x46, 0xaf, 0xbc, 0xf9, 0xd6, + 0x2a, 0x7a, 0xbc, 0x4e, 0x69, 0x09, 0xdd, 0x43, 0xc6, 0x71, 0xfa, 0x18, + 0xbc, 0x28, 0x9f, 0x47, 0xe2, 0x30, 0x1e, 0x9a, 0xa6, 0x9c, 0x3e, 0x88, +}; +static const unsigned char kat2877_entropyinreseed[] = { + 0x48, 0x7b, 0x9c, 0x18, 0x66, 0xff, 0xda, 0xaf, 0x67, 0x60, 0xcd, 0xee, + 0x3d, 0xf5, 0xa9, 0x30, 0x19, 0x6d, 0x30, 0xb0, 0xac, 0x8d, 0xb7, 0x80, + 0x65, 0x65, 0x77, 0xdd, 0xfc, 0x1f, 0xf3, 0x50, 0x8c, 0x45, 0x1e, 0xf2, + 0xb0, 0xb4, 0x78, 0xa2, 0xcf, 0x0c, 0x73, 0x02, 0x75, 0x97, 0xb2, 0xae, +}; +static const unsigned char kat2877_addinreseed[] = { + 0x73, 0x87, 0xb5, 0x9f, 0x8c, 0x78, 0xe7, 0x9d, 0x36, 0xed, 0xac, 0xbb, + 0x42, 0x8f, 0xd5, 0x15, 0xef, 0x9e, 0x58, 0x08, 0x60, 0x59, 0xbf, 0x7f, + 0xd6, 0x42, 0x05, 0x3b, 0x0f, 0x57, 0x06, 0xcf, 0xe8, 0x6e, 0xb3, 0xc3, + 0x5c, 0xa0, 0xb6, 0xf0, 0x2e, 0x5d, 0x13, 0x04, 0xe4, 0x76, 0xe3, 0xcf, +}; +static const unsigned char kat2877_addin0[] = { + 0xba, 0xfc, 0x59, 0xef, 0x40, 0xe5, 0x9d, 0x8c, 0x28, 0x85, 0x12, 0x12, + 0xe1, 0xc3, 0x57, 0xcc, 0xe0, 0xd0, 0x6f, 0x02, 0xc6, 0x9d, 0x14, 0x58, + 0x51, 0x70, 0xca, 0x8e, 0xb1, 0x83, 0x96, 0xa3, 0x31, 0xd6, 0x35, 0xcf, + 0x06, 0x51, 0x31, 0x98, 0x42, 0xce, 0xe2, 0xf7, 0xc8, 0x72, 0x85, 0xc2, +}; +static const unsigned char kat2877_addin1[] = { + 0x82, 0xd9, 0x05, 0xba, 0x69, 0xb6, 0xc4, 0x5c, 0xa2, 0x81, 0x07, 0xbe, + 0xb6, 0x69, 0x8a, 0x15, 0x26, 0x31, 0xab, 0x48, 0x61, 0x42, 0x35, 0xf6, + 0xa9, 0xf1, 0x2e, 0x01, 0x9f, 0x66, 0xbf, 0x32, 0x61, 0x51, 0xd9, 0xee, + 0x84, 0xe0, 0xcd, 0x42, 0xb6, 0x56, 0x6d, 0xbf, 0xfb, 0x46, 0xec, 0x35, +}; +static const unsigned char kat2877_retbits[] = { + 0x16, 0x3f, 0x48, 0xd0, 0x9f, 0x3e, 0x9e, 0xbf, 0x9f, 0x86, 0x47, 0x76, + 0x6a, 0x0b, 0x2e, 0x18, 0x9a, 0x2f, 0x3a, 0x21, 0xa5, 0xa4, 0xe3, 0x1c, + 0x8a, 0x4f, 0x3b, 0xd1, 0x38, 0xcc, 0x50, 0x03, 0x0a, 0xc8, 0xbe, 0xa1, + 0xc4, 0xd9, 0xe9, 0xaa, 0x0b, 0x67, 0xf3, 0x49, 0x26, 0x23, 0x9f, 0xbc, + 0xed, 0xfd, 0x19, 0x92, 0xda, 0x16, 0x5b, 0x94, 0x1c, 0xf0, 0x3b, 0x56, + 0x73, 0x77, 0x37, 0xb2, +}; +static const struct drbg_kat_pr_false kat2877_t = { + 11, kat2877_entropyin, kat2877_nonce, kat2877_persstr, + kat2877_entropyinreseed, kat2877_addinreseed, kat2877_addin0, + kat2877_addin1, kat2877_retbits +}; +static const struct drbg_kat kat2877 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2877_t +}; + +static const unsigned char kat2878_entropyin[] = { + 0x0a, 0x8f, 0x09, 0x27, 0x64, 0xd4, 0x73, 0xd4, 0x82, 0x15, 0xe9, 0x47, + 0xea, 0x8a, 0x32, 0xb5, 0xda, 0x8e, 0xa8, 0x6d, 0x8e, 0xd0, 0xd8, 0x3b, + 0xce, 0x31, 0xb1, 0xb5, 0xa2, 0x1e, 0x7c, 0x5f, 0x1a, 0xf2, 0x18, 0x6a, + 0x39, 0xca, 0xf9, 0xaf, 0xa6, 0x16, 0x44, 0xca, 0xef, 0x02, 0xef, 0x9b, +}; +static const unsigned char kat2878_nonce[] = {0}; +static const unsigned char kat2878_persstr[] = { + 0x84, 0x63, 0x7f, 0xab, 0xa7, 0x56, 0x91, 0x7b, 0x0f, 0x44, 0xba, 0x2e, + 0x0e, 0x26, 0x54, 0x6f, 0x52, 0x39, 0x78, 0x2e, 0x4d, 0x9f, 0x95, 0x2e, + 0xe2, 0x51, 0x36, 0x70, 0x81, 0x62, 0x9e, 0x71, 0xc2, 0x0a, 0x74, 0x59, + 0x99, 0x5a, 0x75, 0x63, 0x81, 0x0d, 0xae, 0xab, 0x74, 0x22, 0x06, 0x64, +}; +static const unsigned char kat2878_entropyinreseed[] = { + 0xea, 0xca, 0xde, 0xd3, 0xd8, 0x9a, 0x63, 0xb9, 0x4a, 0x5c, 0x14, 0xc3, + 0x08, 0x73, 0x06, 0xe6, 0x70, 0xfc, 0x4e, 0xe7, 0xd5, 0x6c, 0xaf, 0xef, + 0x4c, 0x5a, 0xa7, 0xd5, 0x53, 0xca, 0x89, 0xed, 0x34, 0x41, 0x80, 0x56, + 0xa4, 0x4f, 0x54, 0x47, 0xe2, 0xb0, 0x7d, 0xd5, 0x41, 0xac, 0x46, 0x45, +}; +static const unsigned char kat2878_addinreseed[] = { + 0x10, 0x4a, 0x15, 0x41, 0x31, 0x3f, 0xc4, 0xbe, 0x9d, 0x34, 0xbc, 0xed, + 0x28, 0x8c, 0x1c, 0x1b, 0x6f, 0xa7, 0x93, 0xe9, 0x09, 0x6f, 0x8b, 0xe5, + 0x67, 0x3a, 0x2c, 0x68, 0x25, 0xda, 0xbe, 0xf9, 0x1f, 0xd8, 0x8e, 0x45, + 0xa0, 0x61, 0xb2, 0xd8, 0x97, 0xf9, 0xb5, 0xe8, 0xa8, 0xae, 0x0a, 0xd3, +}; +static const unsigned char kat2878_addin0[] = { + 0xe3, 0x0c, 0x9d, 0x8a, 0xba, 0x0b, 0xd5, 0xdc, 0x63, 0xd9, 0x11, 0x89, + 0x7e, 0x4d, 0xca, 0xdb, 0xea, 0xcc, 0x3e, 0xd9, 0x39, 0x2d, 0x8e, 0x36, + 0x1b, 0x35, 0x6e, 0x02, 0xa8, 0x1d, 0x65, 0xbd, 0xab, 0x91, 0xf7, 0xe9, + 0xf8, 0xdd, 0x2b, 0x2b, 0xf9, 0xaf, 0x0d, 0xa5, 0x10, 0x0e, 0x77, 0xd4, +}; +static const unsigned char kat2878_addin1[] = { + 0x2b, 0xed, 0x42, 0xb8, 0xc0, 0x54, 0x61, 0xba, 0x27, 0x56, 0xa5, 0xf3, + 0x83, 0x93, 0xd5, 0x53, 0x8d, 0x20, 0xeb, 0x9c, 0xf1, 0xc0, 0x67, 0x75, + 0xe7, 0xfe, 0xf7, 0x28, 0x43, 0x41, 0xf6, 0x1c, 0xcd, 0x34, 0xb0, 0x14, + 0x8d, 0x1e, 0x87, 0x0c, 0x19, 0x92, 0xdf, 0xd0, 0x65, 0x56, 0x0e, 0xd6, +}; +static const unsigned char kat2878_retbits[] = { + 0x85, 0x5a, 0x6a, 0xf3, 0xe6, 0xdd, 0xdf, 0x19, 0x4c, 0xea, 0xaf, 0xce, + 0xf6, 0xf7, 0xee, 0x91, 0xf4, 0x89, 0xa6, 0x1a, 0x73, 0xb7, 0x59, 0xd4, + 0x1b, 0xe4, 0xd5, 0x29, 0x85, 0x10, 0xb9, 0x90, 0x2f, 0x5b, 0x78, 0xb1, + 0x16, 0x2c, 0xba, 0x41, 0x76, 0x84, 0x51, 0x96, 0x34, 0xb5, 0x78, 0xaf, + 0xda, 0x98, 0x02, 0xbd, 0x78, 0x2f, 0x04, 0xb3, 0xa2, 0x51, 0x06, 0xf3, + 0x58, 0x6a, 0xd8, 0xa4, +}; +static const struct drbg_kat_pr_false kat2878_t = { + 12, kat2878_entropyin, kat2878_nonce, kat2878_persstr, + kat2878_entropyinreseed, kat2878_addinreseed, kat2878_addin0, + kat2878_addin1, kat2878_retbits +}; +static const struct drbg_kat kat2878 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2878_t +}; + +static const unsigned char kat2879_entropyin[] = { + 0xed, 0x63, 0xe3, 0xb8, 0x8a, 0x2f, 0x0d, 0x6a, 0x40, 0xb7, 0xb3, 0x6a, + 0x06, 0xcd, 0x8d, 0x40, 0xec, 0x10, 0x15, 0x8a, 0xb6, 0xc4, 0xf8, 0xda, + 0xbd, 0xb8, 0x79, 0xe4, 0x5d, 0x22, 0xdb, 0x57, 0x33, 0x20, 0xd2, 0x64, + 0x1b, 0xfd, 0x7d, 0xb3, 0x1e, 0xb6, 0xbb, 0xf4, 0xc6, 0x33, 0x0b, 0x9f, +}; +static const unsigned char kat2879_nonce[] = {0}; +static const unsigned char kat2879_persstr[] = { + 0xf8, 0x2a, 0x5e, 0xe8, 0x1f, 0x34, 0x9a, 0x69, 0xdf, 0xa6, 0xa6, 0xe5, + 0x3b, 0x40, 0x6b, 0xb5, 0x60, 0xcb, 0x03, 0x39, 0xf6, 0x1b, 0x38, 0x86, + 0x23, 0x70, 0x23, 0xae, 0x45, 0x82, 0xb9, 0x72, 0x5b, 0x87, 0x74, 0xa8, + 0x04, 0x4e, 0xc5, 0x13, 0x4e, 0xbd, 0x4d, 0x76, 0x06, 0xf1, 0x81, 0x88, +}; +static const unsigned char kat2879_entropyinreseed[] = { + 0x71, 0x04, 0x52, 0x2c, 0x2a, 0x69, 0xbe, 0xc7, 0xe0, 0x10, 0xd9, 0x67, + 0x0d, 0x7a, 0xb9, 0x2d, 0xd8, 0x17, 0xac, 0x7f, 0xf0, 0x5d, 0x63, 0xab, + 0x0e, 0x12, 0xd4, 0x31, 0xd4, 0xc9, 0xae, 0xf4, 0xd7, 0x15, 0x42, 0x1c, + 0x1f, 0xb5, 0xd0, 0x5d, 0x3a, 0xec, 0xba, 0x36, 0x85, 0x9a, 0x60, 0x38, +}; +static const unsigned char kat2879_addinreseed[] = { + 0x3b, 0x83, 0x03, 0x4e, 0xa4, 0x40, 0x60, 0x4d, 0x0b, 0x7d, 0x04, 0x85, + 0x76, 0x23, 0xe9, 0xad, 0xc0, 0xeb, 0x9a, 0xad, 0x4a, 0x45, 0xb2, 0x07, + 0x98, 0x63, 0xee, 0xd3, 0xd7, 0x2e, 0x65, 0xab, 0xf6, 0x7d, 0x25, 0x56, + 0x73, 0xe7, 0x69, 0xa2, 0xe2, 0x58, 0x4e, 0xea, 0x59, 0xf1, 0xeb, 0xaa, +}; +static const unsigned char kat2879_addin0[] = { + 0x86, 0x78, 0xe4, 0xf8, 0x31, 0x88, 0x7e, 0x96, 0xa2, 0x7c, 0x3a, 0x8c, + 0xe0, 0x96, 0x3f, 0x4b, 0x34, 0xbb, 0xca, 0x25, 0x79, 0x1b, 0x06, 0x52, + 0x6c, 0xb6, 0xc5, 0x56, 0x24, 0xc3, 0x3d, 0x98, 0xa0, 0x35, 0x6b, 0xe6, + 0x24, 0x23, 0x8c, 0xec, 0xac, 0xba, 0x35, 0x35, 0xe8, 0x72, 0xc4, 0xc7, +}; +static const unsigned char kat2879_addin1[] = { + 0xec, 0x34, 0x52, 0xea, 0x27, 0x22, 0x98, 0x4b, 0xbe, 0x6a, 0x5b, 0x7c, + 0x22, 0xad, 0x58, 0xdf, 0x37, 0xa8, 0x54, 0xab, 0xc8, 0x63, 0x0b, 0x9e, + 0x21, 0xbc, 0xd0, 0x46, 0x9e, 0xb2, 0x07, 0xe5, 0xf4, 0x4e, 0x04, 0x4f, + 0x5f, 0x66, 0x69, 0x20, 0xdd, 0x55, 0xe8, 0x1a, 0x39, 0x35, 0x00, 0xde, +}; +static const unsigned char kat2879_retbits[] = { + 0xc3, 0x40, 0x76, 0x5f, 0xe7, 0xa3, 0x47, 0x9b, 0xef, 0x2d, 0x7d, 0x59, + 0xe3, 0x21, 0x06, 0x6f, 0x8a, 0xd0, 0xdb, 0x53, 0xae, 0xd4, 0xc5, 0x17, + 0xbf, 0x83, 0x39, 0x56, 0x6b, 0xf8, 0x77, 0xd5, 0x39, 0x21, 0xe6, 0xde, + 0x26, 0x50, 0xd0, 0x08, 0x05, 0x29, 0x00, 0x4a, 0x5f, 0xd3, 0x21, 0x24, + 0xce, 0x8e, 0x58, 0xa0, 0x40, 0xe2, 0xd5, 0x56, 0x56, 0xb3, 0x7d, 0x9e, + 0xa8, 0x27, 0xcb, 0x91, +}; +static const struct drbg_kat_pr_false kat2879_t = { + 13, kat2879_entropyin, kat2879_nonce, kat2879_persstr, + kat2879_entropyinreseed, kat2879_addinreseed, kat2879_addin0, + kat2879_addin1, kat2879_retbits +}; +static const struct drbg_kat kat2879 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2879_t +}; + +static const unsigned char kat2880_entropyin[] = { + 0x88, 0x2e, 0xd0, 0x54, 0x87, 0xdc, 0xe4, 0xb4, 0xf9, 0xe5, 0x8e, 0xc4, + 0xf2, 0xda, 0x1f, 0xa5, 0xd8, 0xeb, 0xb4, 0xef, 0x9f, 0xcb, 0xf7, 0xb0, + 0xa0, 0xe1, 0x5c, 0x4d, 0xcc, 0xb8, 0xe1, 0x97, 0x88, 0xf8, 0x6d, 0xcf, + 0x28, 0x85, 0xe7, 0x1a, 0x20, 0xcb, 0xd9, 0xac, 0x10, 0xa6, 0x64, 0x8e, +}; +static const unsigned char kat2880_nonce[] = {0}; +static const unsigned char kat2880_persstr[] = { + 0x05, 0xf5, 0xbc, 0x41, 0x68, 0x7e, 0xa1, 0xe4, 0xc3, 0x4a, 0x69, 0x94, + 0x4f, 0xba, 0xe2, 0x83, 0xcf, 0xee, 0x4c, 0x42, 0xb1, 0xbb, 0xd7, 0x8f, + 0xdd, 0xb0, 0x97, 0x3d, 0x0f, 0xca, 0x94, 0x85, 0x39, 0xb6, 0x84, 0x36, + 0x58, 0xb6, 0x7c, 0x30, 0xb7, 0x31, 0x91, 0xb9, 0xa0, 0xbf, 0x29, 0x21, +}; +static const unsigned char kat2880_entropyinreseed[] = { + 0xca, 0x16, 0x03, 0xd4, 0xc8, 0x71, 0x14, 0x04, 0xc7, 0xbd, 0xc1, 0x2c, + 0x7c, 0x75, 0xb2, 0x94, 0x3a, 0x4b, 0x04, 0x2e, 0xa1, 0xd2, 0xeb, 0x54, + 0x50, 0x6a, 0x68, 0x76, 0x95, 0x21, 0x57, 0xca, 0xf3, 0xb1, 0x52, 0xdc, + 0x75, 0xf2, 0x7f, 0x22, 0x13, 0x64, 0x5a, 0x14, 0x15, 0x77, 0xe8, 0xba, +}; +static const unsigned char kat2880_addinreseed[] = { + 0x83, 0xcd, 0xa5, 0x33, 0x80, 0x88, 0x8d, 0x53, 0x51, 0x5e, 0x58, 0x15, + 0x4f, 0x89, 0xd5, 0x52, 0x8a, 0xb6, 0x9f, 0x31, 0xfb, 0xcf, 0xca, 0x34, + 0x98, 0x8c, 0xf0, 0x3c, 0x4c, 0xae, 0x5f, 0x60, 0xaa, 0x62, 0x91, 0xf3, + 0x2d, 0x99, 0xab, 0x2a, 0x72, 0x6b, 0x6e, 0x08, 0xd2, 0x50, 0x2c, 0xf5, +}; +static const unsigned char kat2880_addin0[] = { + 0x5b, 0xf5, 0xca, 0x9f, 0x96, 0x4e, 0xdd, 0x91, 0xe8, 0xef, 0x49, 0x1f, + 0xd3, 0xcd, 0x32, 0xfa, 0xf9, 0xcb, 0x9d, 0x19, 0x93, 0xd8, 0x22, 0x19, + 0x14, 0xd1, 0x75, 0x1f, 0xb0, 0xd4, 0x25, 0x2a, 0x5c, 0xa9, 0x50, 0xe2, + 0x13, 0xf0, 0x88, 0x05, 0x09, 0x00, 0xb2, 0xbd, 0x74, 0xf5, 0xe3, 0x36, +}; +static const unsigned char kat2880_addin1[] = { + 0xdb, 0xa2, 0x8d, 0xc1, 0xd8, 0xd6, 0x15, 0x65, 0x15, 0x47, 0x86, 0x7d, + 0x4e, 0xf4, 0x25, 0x19, 0x04, 0x5e, 0xe1, 0x63, 0x78, 0x14, 0x36, 0x85, + 0x10, 0x1d, 0xa4, 0x7a, 0x27, 0xb5, 0x54, 0x98, 0x07, 0x8e, 0x8a, 0x8f, + 0x48, 0x54, 0x05, 0x2f, 0x7c, 0xc6, 0xf5, 0xb0, 0x2e, 0x57, 0x1a, 0xe8, +}; +static const unsigned char kat2880_retbits[] = { + 0x01, 0xf1, 0x19, 0x71, 0x83, 0x58, 0x19, 0xc1, 0x14, 0x8a, 0xa0, 0x79, + 0xee, 0xa0, 0x9f, 0xd5, 0xb1, 0xaa, 0x3a, 0xc6, 0xba, 0x55, 0x7a, 0xe3, + 0x31, 0x7b, 0x1a, 0x33, 0xf4, 0x50, 0x51, 0x74, 0xcf, 0x9d, 0x7e, 0x94, + 0x08, 0x21, 0xc9, 0xb0, 0xe5, 0x52, 0x7a, 0x1d, 0x3e, 0x18, 0x6a, 0x7a, + 0x83, 0xf1, 0x87, 0xc6, 0x2d, 0x32, 0x23, 0xcf, 0x59, 0x64, 0xff, 0x95, + 0x26, 0xd8, 0x48, 0x4c, +}; +static const struct drbg_kat_pr_false kat2880_t = { + 14, kat2880_entropyin, kat2880_nonce, kat2880_persstr, + kat2880_entropyinreseed, kat2880_addinreseed, kat2880_addin0, + kat2880_addin1, kat2880_retbits +}; +static const struct drbg_kat kat2880 = { + PR_FALSE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat2880_t +}; + +static const unsigned char kat2881_entropyin[] = { + 0x5d, 0x40, 0x41, 0x94, 0x2b, 0xcf, 0x68, 0x86, 0x4a, 0x49, 0x97, 0xd8, + 0x17, 0x1f, 0x1f, 0x9f, +}; +static const unsigned char kat2881_nonce[] = { + 0xd4, 0xf1, 0xf4, 0xae, 0x08, 0xbc, 0xb3, 0xe1, +}; +static const unsigned char kat2881_persstr[] = {0}; +static const unsigned char kat2881_entropyinpr1[] = { + 0xef, 0x55, 0xa7, 0x69, 0xb7, 0xea, 0xf0, 0x3f, 0xe0, 0x82, 0x02, 0x9b, + 0xb3, 0x2a, 0x2b, 0x9d, +}; +static const unsigned char kat2881_addinpr1[] = {0}; +static const unsigned char kat2881_entropyinpr2[] = { + 0x82, 0x39, 0xe8, 0x65, 0xc0, 0xa4, 0x2e, 0x14, 0xb9, 0x64, 0xb9, 0xc0, + 0x9d, 0xe8, 0x5a, 0x20, +}; +static const unsigned char kat2881_addinpr2[] = {0}; +static const unsigned char kat2881_retbits[] = { + 0x41, 0x55, 0x32, 0x02, 0x87, 0xee, 0xdc, 0xf7, 0xd4, 0x84, 0xc2, 0xc2, + 0xa1, 0xe2, 0xeb, 0x64, 0xb9, 0xc9, 0xce, 0x77, 0xc8, 0x72, 0x02, 0xa1, + 0xae, 0x16, 0x16, 0xc7, 0xa5, 0xcf, 0xd1, 0xc6, 0x87, 0xc7, 0xa0, 0xbf, + 0xcc, 0x85, 0xbd, 0xa4, 0x8f, 0xdd, 0x46, 0x29, 0xfd, 0x33, 0x0c, 0x22, + 0xd0, 0xa7, 0x60, 0x76, 0xf8, 0x8f, 0xc7, 0xcd, 0x04, 0x03, 0x7e, 0xe0, + 0x6b, 0x7a, 0xf6, 0x02, +}; +static const struct drbg_kat_pr_true kat2881_t = { + 0, kat2881_entropyin, kat2881_nonce, kat2881_persstr, + kat2881_entropyinpr1, kat2881_addinpr1, kat2881_entropyinpr2, + kat2881_addinpr2, kat2881_retbits +}; +static const struct drbg_kat kat2881 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2881_t +}; + +static const unsigned char kat2882_entropyin[] = { + 0xd1, 0x44, 0xc6, 0x61, 0x81, 0x6d, 0xca, 0x9d, 0x15, 0x28, 0x8a, 0x42, + 0x94, 0xd7, 0x28, 0x9c, +}; +static const unsigned char kat2882_nonce[] = { + 0x43, 0x77, 0x19, 0x29, 0x1a, 0x6d, 0xc3, 0xa2, +}; +static const unsigned char kat2882_persstr[] = {0}; +static const unsigned char kat2882_entropyinpr1[] = { + 0x96, 0xd8, 0x9e, 0x45, 0x32, 0xc9, 0xd2, 0x08, 0x7a, 0x6d, 0x97, 0x15, + 0xb4, 0xec, 0x80, 0xb1, +}; +static const unsigned char kat2882_addinpr1[] = {0}; +static const unsigned char kat2882_entropyinpr2[] = { + 0x8b, 0xb6, 0x72, 0xb5, 0x24, 0x0b, 0x98, 0x65, 0x95, 0x95, 0xe9, 0xc9, + 0x28, 0x07, 0xeb, 0xc2, +}; +static const unsigned char kat2882_addinpr2[] = {0}; +static const unsigned char kat2882_retbits[] = { + 0x70, 0x19, 0xd0, 0x4c, 0x45, 0x78, 0xd6, 0x68, 0xa9, 0x9a, 0xaa, 0xfe, + 0xc1, 0xdf, 0x27, 0x9a, 0x1c, 0x0d, 0x0d, 0xf7, 0x24, 0x75, 0x46, 0xcc, + 0x77, 0x6b, 0xdf, 0x89, 0xc6, 0x94, 0xdc, 0x74, 0x50, 0x10, 0x70, 0x18, + 0x9b, 0xdc, 0x96, 0xb4, 0x89, 0x23, 0x40, 0x1a, 0xce, 0x09, 0x87, 0xce, + 0xd2, 0xf3, 0xd5, 0xe4, 0x51, 0x67, 0x74, 0x11, 0x5a, 0xcc, 0x8b, 0x3b, + 0x8a, 0xf1, 0x23, 0xa8, +}; +static const struct drbg_kat_pr_true kat2882_t = { + 1, kat2882_entropyin, kat2882_nonce, kat2882_persstr, + kat2882_entropyinpr1, kat2882_addinpr1, kat2882_entropyinpr2, + kat2882_addinpr2, kat2882_retbits +}; +static const struct drbg_kat kat2882 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2882_t +}; + +static const unsigned char kat2883_entropyin[] = { + 0xfe, 0x76, 0x50, 0xb8, 0xb1, 0xae, 0xcf, 0xfc, 0xc9, 0x00, 0x14, 0x35, + 0xdc, 0xa0, 0x87, 0x6b, +}; +static const unsigned char kat2883_nonce[] = { + 0x40, 0x59, 0xcb, 0x4f, 0x32, 0xe2, 0x1e, 0x3a, +}; +static const unsigned char kat2883_persstr[] = {0}; +static const unsigned char kat2883_entropyinpr1[] = { + 0xf2, 0xab, 0xd9, 0x86, 0xdd, 0x1f, 0x32, 0x20, 0x6a, 0x97, 0x77, 0x1c, + 0x81, 0x3e, 0x45, 0xef, +}; +static const unsigned char kat2883_addinpr1[] = {0}; +static const unsigned char kat2883_entropyinpr2[] = { + 0x85, 0x11, 0xb1, 0x49, 0xf9, 0xa0, 0xd2, 0x9d, 0x58, 0x75, 0x2d, 0xce, + 0x26, 0x14, 0xbb, 0xa8, +}; +static const unsigned char kat2883_addinpr2[] = {0}; +static const unsigned char kat2883_retbits[] = { + 0x23, 0x38, 0x9f, 0xdd, 0xea, 0xeb, 0xf3, 0x7f, 0xc6, 0xc3, 0x77, 0x56, + 0x8d, 0x76, 0x59, 0x8a, 0xc9, 0x7c, 0xf6, 0x1f, 0xbb, 0x3e, 0x9a, 0xfa, + 0xc7, 0x23, 0x21, 0x1b, 0x4b, 0xfc, 0xeb, 0x6f, 0x8a, 0x4e, 0xc6, 0x47, + 0x76, 0x65, 0x57, 0xb2, 0x42, 0x6b, 0xab, 0xf1, 0xd8, 0x45, 0xd2, 0xb1, + 0xea, 0xe6, 0x7d, 0xa5, 0xea, 0xb0, 0xce, 0x91, 0x13, 0xe3, 0x8b, 0x43, + 0x85, 0x27, 0xe7, 0x71, +}; +static const struct drbg_kat_pr_true kat2883_t = { + 2, kat2883_entropyin, kat2883_nonce, kat2883_persstr, + kat2883_entropyinpr1, kat2883_addinpr1, kat2883_entropyinpr2, + kat2883_addinpr2, kat2883_retbits +}; +static const struct drbg_kat kat2883 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2883_t +}; + +static const unsigned char kat2884_entropyin[] = { + 0xb0, 0x36, 0xdc, 0x82, 0x56, 0x8e, 0x4e, 0x6a, 0xfa, 0xa0, 0x8c, 0xf8, + 0xd0, 0x42, 0x13, 0xa1, +}; +static const unsigned char kat2884_nonce[] = { + 0x53, 0x0c, 0xa6, 0x60, 0x01, 0xf8, 0x64, 0xf5, +}; +static const unsigned char kat2884_persstr[] = {0}; +static const unsigned char kat2884_entropyinpr1[] = { + 0xf3, 0x44, 0x16, 0xb1, 0xda, 0xa3, 0xa5, 0xc2, 0x6c, 0x15, 0x53, 0x49, + 0x17, 0xc3, 0x37, 0x66, +}; +static const unsigned char kat2884_addinpr1[] = {0}; +static const unsigned char kat2884_entropyinpr2[] = { + 0x6f, 0xe6, 0x23, 0x19, 0x85, 0x3b, 0xfd, 0x7c, 0x25, 0x0e, 0x59, 0x8e, + 0xd6, 0x2a, 0x5c, 0xf4, +}; +static const unsigned char kat2884_addinpr2[] = {0}; +static const unsigned char kat2884_retbits[] = { + 0xb6, 0x3c, 0x1b, 0x91, 0x2a, 0x06, 0xf6, 0x0c, 0x17, 0xab, 0x0c, 0x4f, + 0x04, 0x2c, 0x9a, 0x54, 0xcb, 0x16, 0x27, 0x52, 0x22, 0xa8, 0x3e, 0x64, + 0x83, 0xa2, 0xf6, 0xb7, 0x2f, 0x32, 0xd1, 0xd0, 0x67, 0xca, 0xaa, 0xda, + 0x8d, 0xb6, 0x57, 0x93, 0x70, 0xab, 0xa1, 0x3a, 0x76, 0x9e, 0x7b, 0x6d, + 0x24, 0xfb, 0xff, 0x9f, 0x4e, 0xd2, 0x56, 0xa5, 0x39, 0xa4, 0x70, 0x6c, + 0xb1, 0xf2, 0x60, 0x54, +}; +static const struct drbg_kat_pr_true kat2884_t = { + 3, kat2884_entropyin, kat2884_nonce, kat2884_persstr, + kat2884_entropyinpr1, kat2884_addinpr1, kat2884_entropyinpr2, + kat2884_addinpr2, kat2884_retbits +}; +static const struct drbg_kat kat2884 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2884_t +}; + +static const unsigned char kat2885_entropyin[] = { + 0x41, 0x85, 0xba, 0xe8, 0x4c, 0x49, 0xe7, 0xfd, 0xe3, 0x19, 0x87, 0xa9, + 0x2d, 0xd9, 0x57, 0x8d, +}; +static const unsigned char kat2885_nonce[] = { + 0x32, 0x21, 0x70, 0x95, 0x5f, 0x5a, 0x3a, 0x66, +}; +static const unsigned char kat2885_persstr[] = {0}; +static const unsigned char kat2885_entropyinpr1[] = { + 0xe1, 0xf0, 0xc5, 0xa7, 0x91, 0x87, 0x79, 0x97, 0x3f, 0xc7, 0xa3, 0xb0, + 0x2a, 0xa1, 0xcf, 0x80, +}; +static const unsigned char kat2885_addinpr1[] = {0}; +static const unsigned char kat2885_entropyinpr2[] = { + 0x8e, 0x52, 0x41, 0xd3, 0x10, 0xce, 0x99, 0x93, 0x8a, 0x55, 0x27, 0x5f, + 0xa8, 0x1f, 0x45, 0xfc, +}; +static const unsigned char kat2885_addinpr2[] = {0}; +static const unsigned char kat2885_retbits[] = { + 0x1e, 0x25, 0x95, 0x26, 0x9c, 0x41, 0x92, 0x40, 0x29, 0x81, 0xdd, 0x09, + 0x7f, 0xd7, 0x4a, 0x02, 0x09, 0x03, 0xe9, 0xc9, 0x4b, 0x86, 0x3d, 0x24, + 0x70, 0x40, 0x05, 0x40, 0x1a, 0xd4, 0x86, 0x93, 0xc8, 0xad, 0x2f, 0x64, + 0x6e, 0xc8, 0xb2, 0x50, 0xee, 0xb2, 0xf2, 0x33, 0x47, 0x63, 0x98, 0x05, + 0x73, 0xab, 0x55, 0x04, 0x80, 0xf6, 0x54, 0x5d, 0xad, 0x25, 0x09, 0xa5, + 0xb3, 0xa4, 0xec, 0xda, +}; +static const struct drbg_kat_pr_true kat2885_t = { + 4, kat2885_entropyin, kat2885_nonce, kat2885_persstr, + kat2885_entropyinpr1, kat2885_addinpr1, kat2885_entropyinpr2, + kat2885_addinpr2, kat2885_retbits +}; +static const struct drbg_kat kat2885 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2885_t +}; + +static const unsigned char kat2886_entropyin[] = { + 0xfb, 0x65, 0x9d, 0x94, 0xd8, 0x08, 0x14, 0x4d, 0xfc, 0xad, 0x29, 0xa3, + 0x65, 0x52, 0x0d, 0xc7, +}; +static const unsigned char kat2886_nonce[] = { + 0xc6, 0x5a, 0xf6, 0x5e, 0x00, 0x45, 0xb5, 0xa3, +}; +static const unsigned char kat2886_persstr[] = {0}; +static const unsigned char kat2886_entropyinpr1[] = { + 0xa2, 0x10, 0x10, 0x0b, 0x8e, 0x68, 0x62, 0x1a, 0xd7, 0xd1, 0xe2, 0x38, + 0x52, 0xe4, 0xd9, 0x6f, +}; +static const unsigned char kat2886_addinpr1[] = {0}; +static const unsigned char kat2886_entropyinpr2[] = { + 0xc6, 0x59, 0x8b, 0x54, 0xa8, 0x77, 0xb8, 0x58, 0xfd, 0x29, 0x50, 0x6a, + 0xe8, 0xfb, 0xc0, 0x8e, +}; +static const unsigned char kat2886_addinpr2[] = {0}; +static const unsigned char kat2886_retbits[] = { + 0x9e, 0xee, 0xab, 0x86, 0xc0, 0x7f, 0x66, 0x82, 0xeb, 0x26, 0x62, 0x2e, + 0xf5, 0xcd, 0x72, 0xef, 0x92, 0xf0, 0xac, 0x93, 0x79, 0xde, 0x4d, 0xfc, + 0x73, 0x8a, 0x4e, 0x6e, 0x57, 0x46, 0x1c, 0x95, 0x3a, 0x69, 0x78, 0xc2, + 0x38, 0xa8, 0x8c, 0x23, 0xa7, 0x9c, 0x7b, 0x81, 0xf9, 0x7a, 0x7b, 0xdd, + 0x59, 0xb7, 0xd7, 0x66, 0xce, 0x65, 0xe8, 0x0c, 0x40, 0x97, 0xfe, 0x27, + 0x78, 0x78, 0xc5, 0x2b, +}; +static const struct drbg_kat_pr_true kat2886_t = { + 5, kat2886_entropyin, kat2886_nonce, kat2886_persstr, + kat2886_entropyinpr1, kat2886_addinpr1, kat2886_entropyinpr2, + kat2886_addinpr2, kat2886_retbits +}; +static const struct drbg_kat kat2886 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2886_t +}; + +static const unsigned char kat2887_entropyin[] = { + 0x0d, 0x46, 0x3a, 0x89, 0x7f, 0x38, 0x32, 0xdd, 0xde, 0x83, 0xaa, 0x86, + 0xb6, 0xc0, 0x91, 0x4a, +}; +static const unsigned char kat2887_nonce[] = { + 0x67, 0x21, 0x04, 0xdc, 0xb1, 0x84, 0xbb, 0xfd, +}; +static const unsigned char kat2887_persstr[] = {0}; +static const unsigned char kat2887_entropyinpr1[] = { + 0xb4, 0x02, 0x07, 0x2e, 0xcb, 0x60, 0x60, 0x69, 0xe0, 0xb2, 0xd4, 0x3c, + 0xfc, 0xba, 0xa5, 0x50, +}; +static const unsigned char kat2887_addinpr1[] = {0}; +static const unsigned char kat2887_entropyinpr2[] = { + 0x3b, 0x06, 0x9a, 0x1c, 0x25, 0x29, 0x93, 0x78, 0xbe, 0x3c, 0xe1, 0x65, + 0x5f, 0x9f, 0x79, 0x3a, +}; +static const unsigned char kat2887_addinpr2[] = {0}; +static const unsigned char kat2887_retbits[] = { + 0xa8, 0x02, 0x9a, 0xa1, 0xda, 0x28, 0x79, 0xd4, 0x55, 0x61, 0xca, 0x8e, + 0xa1, 0x5c, 0xde, 0x65, 0xa7, 0x2d, 0x85, 0xfa, 0x15, 0x72, 0x64, 0x81, + 0x0e, 0xf2, 0x75, 0x05, 0x37, 0xd9, 0xb7, 0x0b, 0xc0, 0xa2, 0x1d, 0xea, + 0x85, 0x42, 0x6e, 0x89, 0x71, 0x2e, 0x4d, 0x96, 0xe8, 0x5c, 0xf3, 0x73, + 0x79, 0x29, 0xbd, 0xf6, 0x59, 0xd0, 0xcb, 0xf5, 0x5d, 0x2d, 0x28, 0x75, + 0x8a, 0xbc, 0x36, 0xbe, +}; +static const struct drbg_kat_pr_true kat2887_t = { + 6, kat2887_entropyin, kat2887_nonce, kat2887_persstr, + kat2887_entropyinpr1, kat2887_addinpr1, kat2887_entropyinpr2, + kat2887_addinpr2, kat2887_retbits +}; +static const struct drbg_kat kat2887 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2887_t +}; + +static const unsigned char kat2888_entropyin[] = { + 0x77, 0x66, 0x33, 0x90, 0xe4, 0x37, 0x28, 0x70, 0x8f, 0x9f, 0x31, 0x0f, + 0x19, 0x27, 0xca, 0x7a, +}; +static const unsigned char kat2888_nonce[] = { + 0xdd, 0x56, 0xf5, 0x18, 0x5d, 0x49, 0xb3, 0xd9, +}; +static const unsigned char kat2888_persstr[] = {0}; +static const unsigned char kat2888_entropyinpr1[] = { + 0x14, 0x2c, 0x5f, 0xc3, 0x93, 0x7b, 0xf7, 0xd3, 0x00, 0xa8, 0xff, 0xe4, + 0xc3, 0x56, 0xfb, 0xe1, +}; +static const unsigned char kat2888_addinpr1[] = {0}; +static const unsigned char kat2888_entropyinpr2[] = { + 0xeb, 0x80, 0x19, 0xd0, 0x87, 0x9c, 0x9e, 0x2f, 0x12, 0xed, 0x9a, 0x2c, + 0x2b, 0x18, 0xec, 0x76, +}; +static const unsigned char kat2888_addinpr2[] = {0}; +static const unsigned char kat2888_retbits[] = { + 0x6f, 0x12, 0x96, 0x54, 0x5b, 0xcb, 0x43, 0xe5, 0x7b, 0x86, 0x20, 0xa5, + 0xd1, 0x2c, 0xf5, 0xcd, 0xe6, 0xe2, 0xfa, 0x4c, 0xf9, 0x3b, 0x91, 0x32, + 0xb3, 0xf0, 0x9f, 0x34, 0x0a, 0x1d, 0x5a, 0x6d, 0x82, 0x79, 0x23, 0x6d, + 0xec, 0x38, 0x0b, 0xb1, 0x1b, 0x32, 0xb6, 0x53, 0xe5, 0x83, 0xa4, 0x85, + 0x2b, 0x13, 0x04, 0xa2, 0xfe, 0x5f, 0x31, 0x34, 0xc3, 0x45, 0x18, 0x4c, + 0xee, 0x07, 0xb1, 0xad, +}; +static const struct drbg_kat_pr_true kat2888_t = { + 7, kat2888_entropyin, kat2888_nonce, kat2888_persstr, + kat2888_entropyinpr1, kat2888_addinpr1, kat2888_entropyinpr2, + kat2888_addinpr2, kat2888_retbits +}; +static const struct drbg_kat kat2888 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2888_t +}; + +static const unsigned char kat2889_entropyin[] = { + 0x48, 0x6a, 0x33, 0xe1, 0x4c, 0xdc, 0x8c, 0x66, 0x12, 0x9f, 0xb8, 0x6a, + 0x8f, 0xce, 0xfd, 0xba, +}; +static const unsigned char kat2889_nonce[] = { + 0x3a, 0xe7, 0x4c, 0x55, 0x99, 0xf8, 0x54, 0xd6, +}; +static const unsigned char kat2889_persstr[] = {0}; +static const unsigned char kat2889_entropyinpr1[] = { + 0x12, 0x92, 0x2f, 0x09, 0xd7, 0x64, 0x6c, 0x92, 0xab, 0x28, 0x71, 0xa5, + 0x49, 0xec, 0xdf, 0xdd, +}; +static const unsigned char kat2889_addinpr1[] = {0}; +static const unsigned char kat2889_entropyinpr2[] = { + 0xff, 0x24, 0x66, 0x77, 0x2a, 0x23, 0x3e, 0x04, 0xc0, 0xa4, 0xc6, 0x13, + 0x16, 0x3c, 0xf7, 0x69, +}; +static const unsigned char kat2889_addinpr2[] = {0}; +static const unsigned char kat2889_retbits[] = { + 0x69, 0x80, 0x52, 0x27, 0xed, 0x7c, 0xd3, 0x5b, 0xc9, 0x26, 0x29, 0x7a, + 0x55, 0x72, 0xf7, 0xf8, 0x3c, 0x34, 0x60, 0xab, 0x8e, 0x0c, 0xda, 0x6b, + 0xb5, 0xed, 0x42, 0x13, 0x09, 0x3c, 0x9a, 0xc6, 0xbf, 0x10, 0xd2, 0x28, + 0x73, 0x16, 0x1d, 0x3e, 0x9e, 0xfc, 0x71, 0x49, 0x45, 0x69, 0x60, 0x56, + 0x4b, 0xc8, 0x20, 0xc7, 0x60, 0xba, 0x03, 0x27, 0xdd, 0xf8, 0xf7, 0xa5, + 0x46, 0x09, 0x8b, 0x12, +}; +static const struct drbg_kat_pr_true kat2889_t = { + 8, kat2889_entropyin, kat2889_nonce, kat2889_persstr, + kat2889_entropyinpr1, kat2889_addinpr1, kat2889_entropyinpr2, + kat2889_addinpr2, kat2889_retbits +}; +static const struct drbg_kat kat2889 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2889_t +}; + +static const unsigned char kat2890_entropyin[] = { + 0xf1, 0xbf, 0xed, 0xaf, 0x61, 0x94, 0xc0, 0x4c, 0xa5, 0x3d, 0xc5, 0xd2, + 0xa7, 0xc9, 0xdd, 0x74, +}; +static const unsigned char kat2890_nonce[] = { + 0x72, 0x23, 0x29, 0xa4, 0x46, 0xba, 0x64, 0x02, +}; +static const unsigned char kat2890_persstr[] = {0}; +static const unsigned char kat2890_entropyinpr1[] = { + 0xbd, 0xc6, 0x44, 0xf1, 0xf5, 0x10, 0x3d, 0x48, 0x69, 0x4d, 0x65, 0xdf, + 0xa5, 0x7d, 0x6c, 0x0e, +}; +static const unsigned char kat2890_addinpr1[] = {0}; +static const unsigned char kat2890_entropyinpr2[] = { + 0x9e, 0x33, 0x1c, 0x47, 0x03, 0xf1, 0x44, 0x7f, 0x21, 0xd6, 0xb7, 0x78, + 0x55, 0x7a, 0x83, 0x86, +}; +static const unsigned char kat2890_addinpr2[] = {0}; +static const unsigned char kat2890_retbits[] = { + 0x36, 0x2e, 0xb6, 0xde, 0xae, 0x3a, 0xbe, 0x13, 0x6d, 0x61, 0x01, 0xd0, + 0xe7, 0xfa, 0x96, 0x73, 0x5c, 0x83, 0x7d, 0xfa, 0x5d, 0x11, 0x3d, 0x19, + 0xbc, 0xcc, 0x21, 0xc2, 0xb5, 0xc1, 0xc3, 0x0d, 0x1e, 0x8a, 0xdc, 0xca, + 0x36, 0x3e, 0x6a, 0xe8, 0xa9, 0xc7, 0x86, 0x73, 0xc8, 0x1f, 0xbe, 0x81, + 0x2a, 0xdc, 0x87, 0x5e, 0x95, 0x41, 0x74, 0x48, 0xae, 0xf0, 0x21, 0x23, + 0xd2, 0xe6, 0x2d, 0xc9, +}; +static const struct drbg_kat_pr_true kat2890_t = { + 9, kat2890_entropyin, kat2890_nonce, kat2890_persstr, + kat2890_entropyinpr1, kat2890_addinpr1, kat2890_entropyinpr2, + kat2890_addinpr2, kat2890_retbits +}; +static const struct drbg_kat kat2890 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2890_t +}; + +static const unsigned char kat2891_entropyin[] = { + 0x35, 0xc8, 0xa3, 0x02, 0x19, 0x9b, 0x4b, 0xcb, 0xf6, 0x7c, 0x7c, 0x25, + 0xb4, 0xe4, 0x77, 0x95, +}; +static const unsigned char kat2891_nonce[] = { + 0x9a, 0x28, 0xe5, 0x75, 0x09, 0x5e, 0x30, 0x67, +}; +static const unsigned char kat2891_persstr[] = {0}; +static const unsigned char kat2891_entropyinpr1[] = { + 0xca, 0x79, 0x31, 0x38, 0x95, 0x39, 0x2d, 0x4f, 0x83, 0xf7, 0x65, 0xc6, + 0xa0, 0x62, 0xc0, 0xbf, +}; +static const unsigned char kat2891_addinpr1[] = {0}; +static const unsigned char kat2891_entropyinpr2[] = { + 0xc0, 0x34, 0xfb, 0xf9, 0x32, 0xac, 0x63, 0x88, 0x57, 0xa1, 0x4d, 0xb6, + 0xdf, 0xc9, 0x53, 0xb2, +}; +static const unsigned char kat2891_addinpr2[] = {0}; +static const unsigned char kat2891_retbits[] = { + 0x6e, 0xc9, 0x18, 0x06, 0x55, 0x56, 0xc1, 0x5a, 0x68, 0xa7, 0x37, 0x14, + 0xe8, 0xa3, 0x84, 0x2b, 0x8f, 0x48, 0xc4, 0xd7, 0xe1, 0x1e, 0x60, 0xe2, + 0xb8, 0xb0, 0xaf, 0x2a, 0xbf, 0x06, 0xfe, 0x58, 0xec, 0x06, 0xd5, 0x11, + 0x9b, 0x6b, 0x66, 0x3a, 0x24, 0xec, 0x7a, 0xd8, 0x55, 0x03, 0xea, 0xe2, + 0x93, 0x64, 0xac, 0x34, 0x64, 0x66, 0xf8, 0xbc, 0xf5, 0x14, 0xac, 0x07, + 0xdb, 0x99, 0xff, 0x9c, +}; +static const struct drbg_kat_pr_true kat2891_t = { + 10, kat2891_entropyin, kat2891_nonce, kat2891_persstr, + kat2891_entropyinpr1, kat2891_addinpr1, kat2891_entropyinpr2, + kat2891_addinpr2, kat2891_retbits +}; +static const struct drbg_kat kat2891 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2891_t +}; + +static const unsigned char kat2892_entropyin[] = { + 0x7d, 0xc6, 0xc0, 0x15, 0x86, 0x02, 0xb8, 0xe4, 0x0c, 0x13, 0x3b, 0x91, + 0x5f, 0xf1, 0x9d, 0xe0, +}; +static const unsigned char kat2892_nonce[] = { + 0x98, 0xa4, 0x71, 0x79, 0xf5, 0x24, 0x97, 0x21, +}; +static const unsigned char kat2892_persstr[] = {0}; +static const unsigned char kat2892_entropyinpr1[] = { + 0xfd, 0x07, 0xcb, 0xf1, 0x51, 0x77, 0x4f, 0xca, 0x5f, 0xdd, 0xd8, 0xae, + 0x01, 0xe3, 0x41, 0xd7, +}; +static const unsigned char kat2892_addinpr1[] = {0}; +static const unsigned char kat2892_entropyinpr2[] = { + 0x5c, 0xc1, 0xac, 0x9b, 0xa1, 0xbe, 0x18, 0x56, 0x6d, 0x56, 0x58, 0xf0, + 0x38, 0x8d, 0xec, 0xf0, +}; +static const unsigned char kat2892_addinpr2[] = {0}; +static const unsigned char kat2892_retbits[] = { + 0x65, 0x16, 0x15, 0x84, 0x03, 0xb4, 0xbe, 0x14, 0xc5, 0xf4, 0x4d, 0x0a, + 0x5f, 0xe6, 0x62, 0x34, 0x53, 0xb1, 0x34, 0xd2, 0x23, 0x48, 0xcf, 0x42, + 0x33, 0x65, 0x15, 0x01, 0x3f, 0xb3, 0x28, 0xb5, 0xe9, 0x3a, 0xc6, 0x45, + 0x67, 0xa3, 0xae, 0x4a, 0x3a, 0xd6, 0x53, 0xbf, 0x83, 0xf7, 0x4e, 0x4d, + 0x04, 0xc0, 0x37, 0xbe, 0xa0, 0x9a, 0x67, 0xa7, 0xc0, 0x63, 0x75, 0xf7, + 0xb4, 0xc2, 0x1c, 0x78, +}; +static const struct drbg_kat_pr_true kat2892_t = { + 11, kat2892_entropyin, kat2892_nonce, kat2892_persstr, + kat2892_entropyinpr1, kat2892_addinpr1, kat2892_entropyinpr2, + kat2892_addinpr2, kat2892_retbits +}; +static const struct drbg_kat kat2892 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2892_t +}; + +static const unsigned char kat2893_entropyin[] = { + 0xca, 0xa0, 0x25, 0x4b, 0xdc, 0x44, 0x78, 0x35, 0x33, 0x53, 0xb8, 0xd9, + 0x72, 0xec, 0x68, 0xa2, +}; +static const unsigned char kat2893_nonce[] = { + 0xef, 0x76, 0xf6, 0x06, 0x27, 0x34, 0x9e, 0x5e, +}; +static const unsigned char kat2893_persstr[] = {0}; +static const unsigned char kat2893_entropyinpr1[] = { + 0x3f, 0x6b, 0x0d, 0x2f, 0x25, 0x41, 0x01, 0xa3, 0xf4, 0xdf, 0xed, 0x0c, + 0x13, 0xdb, 0xcd, 0x8c, +}; +static const unsigned char kat2893_addinpr1[] = {0}; +static const unsigned char kat2893_entropyinpr2[] = { + 0x2d, 0xa1, 0xf9, 0xfc, 0x9f, 0x09, 0xee, 0x00, 0x6a, 0x1e, 0x35, 0x04, + 0x7e, 0x27, 0x6b, 0x83, +}; +static const unsigned char kat2893_addinpr2[] = {0}; +static const unsigned char kat2893_retbits[] = { + 0x88, 0x8f, 0xc6, 0xba, 0x66, 0xc0, 0x9a, 0x82, 0x81, 0x69, 0x74, 0xbb, + 0x18, 0x5a, 0x8e, 0x04, 0xf1, 0x14, 0x0c, 0xd2, 0x93, 0xe3, 0x98, 0xfb, + 0x1a, 0xa5, 0xc5, 0x8a, 0xf9, 0xc2, 0x8e, 0x88, 0xd7, 0xb3, 0xdd, 0x33, + 0x02, 0xd0, 0xd7, 0x8e, 0x9b, 0x29, 0x45, 0x67, 0xe2, 0x93, 0xaa, 0x8b, + 0x93, 0x00, 0x56, 0x61, 0xb4, 0x59, 0xc3, 0x62, 0xa0, 0xea, 0x48, 0x4c, + 0x99, 0x1f, 0x23, 0xfa, +}; +static const struct drbg_kat_pr_true kat2893_t = { + 12, kat2893_entropyin, kat2893_nonce, kat2893_persstr, + kat2893_entropyinpr1, kat2893_addinpr1, kat2893_entropyinpr2, + kat2893_addinpr2, kat2893_retbits +}; +static const struct drbg_kat kat2893 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2893_t +}; + +static const unsigned char kat2894_entropyin[] = { + 0x9c, 0xc2, 0x69, 0x98, 0x89, 0xec, 0xad, 0xd5, 0x9d, 0xa6, 0xea, 0xe3, + 0x9b, 0xaf, 0x1b, 0x27, +}; +static const unsigned char kat2894_nonce[] = { + 0x6d, 0x7c, 0x96, 0x19, 0xf9, 0x2e, 0x51, 0xe3, +}; +static const unsigned char kat2894_persstr[] = {0}; +static const unsigned char kat2894_entropyinpr1[] = { + 0x85, 0x2e, 0x84, 0x7d, 0xfd, 0xde, 0xec, 0x32, 0x5f, 0x52, 0x74, 0x68, + 0x7c, 0x81, 0xe8, 0xac, +}; +static const unsigned char kat2894_addinpr1[] = {0}; +static const unsigned char kat2894_entropyinpr2[] = { + 0x5b, 0x6b, 0x1a, 0x88, 0x4d, 0xf2, 0xa2, 0x30, 0x28, 0x11, 0x00, 0x4f, + 0x82, 0x7e, 0x9d, 0x1e, +}; +static const unsigned char kat2894_addinpr2[] = {0}; +static const unsigned char kat2894_retbits[] = { + 0x9f, 0x35, 0x11, 0xb2, 0xae, 0x19, 0xf2, 0xa9, 0xb5, 0xa8, 0xb7, 0x6d, + 0x6c, 0xee, 0xa0, 0x6f, 0x3a, 0xc9, 0x51, 0xc1, 0x0d, 0x47, 0x16, 0xf3, + 0x56, 0x11, 0x15, 0xc3, 0x3c, 0x01, 0xfc, 0xd3, 0x42, 0x3b, 0x26, 0x55, + 0xa1, 0x24, 0x3f, 0xe4, 0x1c, 0xe3, 0xb3, 0x78, 0x89, 0xc5, 0xf8, 0xa6, + 0xf3, 0xe9, 0x85, 0x6a, 0x60, 0x40, 0x80, 0x2a, 0x29, 0x73, 0x02, 0x33, + 0x73, 0xdf, 0x24, 0x1e, +}; +static const struct drbg_kat_pr_true kat2894_t = { + 13, kat2894_entropyin, kat2894_nonce, kat2894_persstr, + kat2894_entropyinpr1, kat2894_addinpr1, kat2894_entropyinpr2, + kat2894_addinpr2, kat2894_retbits +}; +static const struct drbg_kat kat2894 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2894_t +}; + +static const unsigned char kat2895_entropyin[] = { + 0xd4, 0xc2, 0xfc, 0x7c, 0xd9, 0x46, 0x08, 0x2e, 0x00, 0x93, 0xfd, 0x89, + 0x18, 0xbc, 0x80, 0xce, +}; +static const unsigned char kat2895_nonce[] = { + 0x48, 0x8e, 0xba, 0x5e, 0x5f, 0xf2, 0x96, 0x06, +}; +static const unsigned char kat2895_persstr[] = {0}; +static const unsigned char kat2895_entropyinpr1[] = { + 0xaa, 0x21, 0x13, 0x2b, 0x96, 0x9c, 0x7b, 0xd0, 0x71, 0x10, 0x3a, 0xd1, + 0x56, 0x63, 0x69, 0xc4, +}; +static const unsigned char kat2895_addinpr1[] = {0}; +static const unsigned char kat2895_entropyinpr2[] = { + 0x66, 0x34, 0xe2, 0x17, 0x1d, 0x30, 0x89, 0x51, 0x07, 0x68, 0xc8, 0xd9, + 0x39, 0x07, 0xaa, 0x12, +}; +static const unsigned char kat2895_addinpr2[] = {0}; +static const unsigned char kat2895_retbits[] = { + 0x6d, 0x10, 0x16, 0x41, 0x9b, 0xc3, 0x33, 0xab, 0xc2, 0xa9, 0x10, 0x59, + 0x84, 0x6e, 0xc3, 0x76, 0x4b, 0x72, 0x98, 0x74, 0xa1, 0x50, 0x69, 0x0a, + 0x50, 0xe8, 0xa3, 0x76, 0x3f, 0xb0, 0x75, 0x3b, 0x45, 0x2f, 0x75, 0xa4, + 0x54, 0x0e, 0x34, 0xb5, 0xdf, 0x3b, 0x0a, 0x43, 0x5a, 0xa5, 0xb1, 0x37, + 0x92, 0x6a, 0xa2, 0xfa, 0xda, 0x15, 0xdd, 0x05, 0x4c, 0xcb, 0x09, 0xb3, + 0x47, 0x4c, 0xce, 0x4b, +}; +static const struct drbg_kat_pr_true kat2895_t = { + 14, kat2895_entropyin, kat2895_nonce, kat2895_persstr, + kat2895_entropyinpr1, kat2895_addinpr1, kat2895_entropyinpr2, + kat2895_addinpr2, kat2895_retbits +}; +static const struct drbg_kat kat2895 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2895_t +}; + +static const unsigned char kat2896_entropyin[] = { + 0x8e, 0x83, 0xe0, 0xeb, 0x37, 0xea, 0x3e, 0x53, 0x5e, 0x17, 0x6e, 0x77, + 0xbd, 0xb1, 0x53, 0x90, +}; +static const unsigned char kat2896_nonce[] = { + 0xfc, 0xdc, 0xc1, 0x3c, 0x9a, 0x88, 0x22, 0x94, +}; +static const unsigned char kat2896_persstr[] = {0}; +static const unsigned char kat2896_entropyinpr1[] = { + 0x6a, 0x85, 0xe7, 0x37, 0xc8, 0xf1, 0x04, 0x31, 0x98, 0x4f, 0xc8, 0x73, + 0x67, 0xd1, 0x08, 0xf8, +}; +static const unsigned char kat2896_addinpr1[] = { + 0xa2, 0xd9, 0x38, 0xcf, 0x8b, 0x29, 0x67, 0x5b, 0x65, 0x62, 0x6f, 0xe8, + 0xeb, 0xb3, 0x01, 0x76, +}; +static const unsigned char kat2896_entropyinpr2[] = { + 0xd7, 0xa4, 0x68, 0xe2, 0x12, 0x74, 0xc3, 0xd9, 0xf1, 0xb7, 0x05, 0xbc, + 0xd4, 0xba, 0x04, 0x58, +}; +static const unsigned char kat2896_addinpr2[] = { + 0x59, 0x63, 0x1e, 0x81, 0x8a, 0x14, 0xa8, 0xbb, 0xa1, 0xb8, 0x41, 0x25, + 0xd0, 0x7f, 0xcc, 0x43, +}; +static const unsigned char kat2896_retbits[] = { + 0x78, 0xd6, 0xa6, 0x70, 0xff, 0xd1, 0x82, 0xf5, 0xa2, 0x88, 0x7f, 0x6d, + 0x3d, 0x8c, 0x39, 0xb1, 0xa8, 0xcb, 0x2c, 0x91, 0xab, 0x14, 0x7e, 0xbc, + 0x95, 0x45, 0x9f, 0x24, 0xb8, 0x20, 0xac, 0x21, 0x23, 0xdb, 0x72, 0xd7, + 0x12, 0x8d, 0x48, 0x95, 0xf3, 0x19, 0x0c, 0x43, 0xc6, 0x19, 0x45, 0xfc, + 0x8b, 0xac, 0x40, 0x29, 0x73, 0x00, 0x03, 0x45, 0x5e, 0x12, 0xff, 0x0c, + 0xc1, 0x02, 0x41, 0x82, +}; +static const struct drbg_kat_pr_true kat2896_t = { + 0, kat2896_entropyin, kat2896_nonce, kat2896_persstr, + kat2896_entropyinpr1, kat2896_addinpr1, kat2896_entropyinpr2, + kat2896_addinpr2, kat2896_retbits +}; +static const struct drbg_kat kat2896 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2896_t +}; + +static const unsigned char kat2897_entropyin[] = { + 0x91, 0xcf, 0x7f, 0x4f, 0x5a, 0x2d, 0xd7, 0x51, 0x9b, 0xf9, 0x10, 0xf2, + 0x16, 0x8b, 0x70, 0x19, +}; +static const unsigned char kat2897_nonce[] = { + 0xed, 0x97, 0x8a, 0xef, 0xf4, 0x89, 0x99, 0x3f, +}; +static const unsigned char kat2897_persstr[] = {0}; +static const unsigned char kat2897_entropyinpr1[] = { + 0x5f, 0xf7, 0x96, 0x69, 0x8e, 0x19, 0x8d, 0x68, 0xab, 0xac, 0x26, 0xea, + 0x2f, 0xa3, 0x21, 0xe6, +}; +static const unsigned char kat2897_addinpr1[] = { + 0xd9, 0xbd, 0x7f, 0x0e, 0x62, 0x1e, 0x15, 0xa6, 0x43, 0x9d, 0x9b, 0x94, + 0xc4, 0x29, 0x85, 0xca, +}; +static const unsigned char kat2897_entropyinpr2[] = { + 0xc1, 0x97, 0xaa, 0x6f, 0x40, 0x22, 0xc2, 0x90, 0xa4, 0x07, 0xa6, 0xa5, + 0x37, 0x81, 0x15, 0x0e, +}; +static const unsigned char kat2897_addinpr2[] = { + 0x03, 0x6b, 0x4f, 0x6a, 0x11, 0x8b, 0x45, 0x25, 0xfc, 0xdf, 0xe7, 0xe8, + 0x6c, 0x3b, 0xd0, 0xef, +}; +static const unsigned char kat2897_retbits[] = { + 0xc4, 0xee, 0x42, 0x06, 0x82, 0x57, 0x26, 0x47, 0x1a, 0x59, 0x2b, 0x9b, + 0xb8, 0xb6, 0x61, 0x15, 0xeb, 0xdf, 0x01, 0x47, 0x76, 0xc5, 0xe4, 0x17, + 0x0a, 0xd9, 0x60, 0xd6, 0x97, 0x6b, 0xb3, 0x54, 0x09, 0xae, 0xed, 0x2e, + 0xf2, 0xd1, 0xd6, 0x53, 0xa1, 0xb6, 0xe2, 0xbf, 0x28, 0xc7, 0xb2, 0xf2, + 0xf7, 0x3f, 0x33, 0x48, 0x48, 0x8b, 0x4c, 0x46, 0xdc, 0x12, 0xdd, 0x0b, + 0x5a, 0x90, 0x6e, 0x42, +}; +static const struct drbg_kat_pr_true kat2897_t = { + 1, kat2897_entropyin, kat2897_nonce, kat2897_persstr, + kat2897_entropyinpr1, kat2897_addinpr1, kat2897_entropyinpr2, + kat2897_addinpr2, kat2897_retbits +}; +static const struct drbg_kat kat2897 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2897_t +}; + +static const unsigned char kat2898_entropyin[] = { + 0x7e, 0xec, 0x9d, 0x6d, 0x0e, 0xdf, 0x0e, 0x2c, 0xe0, 0xd5, 0x21, 0xc8, + 0x85, 0x6e, 0xd5, 0x85, +}; +static const unsigned char kat2898_nonce[] = { + 0x77, 0xc6, 0x2d, 0xd8, 0x37, 0x0c, 0x28, 0x12, +}; +static const unsigned char kat2898_persstr[] = {0}; +static const unsigned char kat2898_entropyinpr1[] = { + 0x7d, 0xb9, 0x8b, 0xed, 0x90, 0x68, 0x51, 0x6c, 0xbb, 0x42, 0xcc, 0xee, + 0xff, 0xd0, 0x05, 0xc5, +}; +static const unsigned char kat2898_addinpr1[] = { + 0x3e, 0x03, 0x49, 0x93, 0x7f, 0xe2, 0x70, 0x0b, 0x84, 0x63, 0xb9, 0xf6, + 0x37, 0x9a, 0xe1, 0x9f, +}; +static const unsigned char kat2898_entropyinpr2[] = { + 0xf2, 0x67, 0x70, 0x6d, 0xd4, 0x57, 0x44, 0x23, 0xee, 0xce, 0x34, 0x5c, + 0x76, 0xe1, 0x88, 0x8e, +}; +static const unsigned char kat2898_addinpr2[] = { + 0xcc, 0xcc, 0xd1, 0x74, 0xce, 0xfe, 0xc2, 0x48, 0x61, 0xfc, 0xa5, 0x21, + 0xf9, 0x6d, 0xe0, 0xf2, +}; +static const unsigned char kat2898_retbits[] = { + 0xa0, 0x64, 0xad, 0x8f, 0x1a, 0x8b, 0xbc, 0xa0, 0x95, 0x38, 0x3a, 0x9f, + 0xaf, 0x4d, 0x34, 0x56, 0xee, 0x4b, 0xb3, 0xc8, 0x81, 0x30, 0xe1, 0xb7, + 0x54, 0x36, 0x03, 0xc3, 0x2f, 0x65, 0xe0, 0x0a, 0xdd, 0x55, 0xcc, 0x58, + 0x3c, 0xd4, 0x95, 0xad, 0xf6, 0xe6, 0xd8, 0xc1, 0xc6, 0x39, 0x2f, 0x56, + 0x98, 0x41, 0x39, 0xd5, 0xbd, 0x90, 0xd7, 0xc0, 0x06, 0x77, 0x7c, 0xc6, + 0x42, 0x6c, 0x99, 0x9f, +}; +static const struct drbg_kat_pr_true kat2898_t = { + 2, kat2898_entropyin, kat2898_nonce, kat2898_persstr, + kat2898_entropyinpr1, kat2898_addinpr1, kat2898_entropyinpr2, + kat2898_addinpr2, kat2898_retbits +}; +static const struct drbg_kat kat2898 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2898_t +}; + +static const unsigned char kat2899_entropyin[] = { + 0x92, 0x40, 0x99, 0xab, 0xb2, 0x06, 0x02, 0xbf, 0xdf, 0xb6, 0x82, 0xbc, + 0x88, 0xc7, 0x09, 0x25, +}; +static const unsigned char kat2899_nonce[] = { + 0xe3, 0xc5, 0x10, 0xef, 0xc6, 0x0c, 0x11, 0x68, +}; +static const unsigned char kat2899_persstr[] = {0}; +static const unsigned char kat2899_entropyinpr1[] = { + 0x8b, 0xa8, 0x2f, 0xb8, 0xf2, 0x37, 0xac, 0x02, 0xd5, 0xdd, 0x87, 0x26, + 0xc5, 0xd4, 0x22, 0x2c, +}; +static const unsigned char kat2899_addinpr1[] = { + 0x91, 0xb6, 0x30, 0x6d, 0x3f, 0xa3, 0xc2, 0x5e, 0x20, 0xbd, 0xa4, 0x9f, + 0x38, 0x40, 0xd2, 0xe1, +}; +static const unsigned char kat2899_entropyinpr2[] = { + 0x77, 0x48, 0xd5, 0x6b, 0x9a, 0x0d, 0xb3, 0xc3, 0x13, 0xf6, 0x17, 0x7d, + 0x65, 0x8e, 0xa8, 0x7f, +}; +static const unsigned char kat2899_addinpr2[] = { + 0x75, 0x9e, 0x1a, 0xd2, 0x66, 0x64, 0xb0, 0x0c, 0xd7, 0xd1, 0x87, 0x82, + 0x58, 0x6a, 0x88, 0x1e, +}; +static const unsigned char kat2899_retbits[] = { + 0xef, 0xc7, 0xd1, 0x33, 0x9a, 0xcd, 0xd6, 0x66, 0xd6, 0xa8, 0x14, 0xfd, + 0x1d, 0xc9, 0x23, 0x17, 0xa3, 0x60, 0xf3, 0xef, 0x07, 0x43, 0x54, 0x4c, + 0x48, 0x7b, 0x29, 0x10, 0xcc, 0x4f, 0xa9, 0x61, 0x3e, 0xdb, 0x50, 0x55, + 0x00, 0x44, 0x6b, 0x6a, 0x62, 0x99, 0xb8, 0xcd, 0x36, 0x13, 0x7d, 0xe8, + 0x6b, 0xe3, 0x2d, 0x0f, 0x1b, 0xcf, 0xae, 0xef, 0xd3, 0xa8, 0x7d, 0x8c, + 0x8d, 0xfa, 0x13, 0xb1, +}; +static const struct drbg_kat_pr_true kat2899_t = { + 3, kat2899_entropyin, kat2899_nonce, kat2899_persstr, + kat2899_entropyinpr1, kat2899_addinpr1, kat2899_entropyinpr2, + kat2899_addinpr2, kat2899_retbits +}; +static const struct drbg_kat kat2899 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2899_t +}; + +static const unsigned char kat2900_entropyin[] = { + 0xbb, 0x1d, 0xf8, 0xd2, 0x1b, 0x17, 0x49, 0x6e, 0x87, 0x4d, 0x17, 0x7c, + 0xf7, 0x6a, 0xe8, 0x29, +}; +static const unsigned char kat2900_nonce[] = { + 0x68, 0x8e, 0x44, 0x0c, 0x16, 0x2d, 0x8c, 0x91, +}; +static const unsigned char kat2900_persstr[] = {0}; +static const unsigned char kat2900_entropyinpr1[] = { + 0xbb, 0x9e, 0xc5, 0xed, 0x06, 0xe6, 0x82, 0xe9, 0x81, 0x60, 0x9a, 0x6b, + 0x6f, 0x0e, 0xb2, 0x3f, +}; +static const unsigned char kat2900_addinpr1[] = { + 0x35, 0xb0, 0xad, 0x01, 0xda, 0x8a, 0xb0, 0xb7, 0xa6, 0x29, 0x6b, 0xa1, + 0xa7, 0x4d, 0xe5, 0x94, +}; +static const unsigned char kat2900_entropyinpr2[] = { + 0x23, 0x78, 0xa1, 0xa1, 0x7e, 0x17, 0x9e, 0x8d, 0xe8, 0xc7, 0xf3, 0x22, + 0xf6, 0x2d, 0xdc, 0x9a, +}; +static const unsigned char kat2900_addinpr2[] = { + 0x15, 0xfe, 0x51, 0x06, 0xc4, 0xf2, 0xee, 0x9b, 0x7b, 0x96, 0x9d, 0xf5, + 0xb4, 0xf6, 0x63, 0xfc, +}; +static const unsigned char kat2900_retbits[] = { + 0xf4, 0x5b, 0x22, 0xec, 0x3b, 0x8b, 0xe2, 0x4b, 0x81, 0x2c, 0x94, 0xd6, + 0xa3, 0xf8, 0x9e, 0xe6, 0x91, 0x64, 0x2b, 0x52, 0xd7, 0x35, 0xcd, 0x06, + 0xe9, 0x5a, 0xbd, 0x5f, 0x99, 0xd2, 0x2c, 0x80, 0x2c, 0xa5, 0x22, 0x60, + 0x40, 0x84, 0xa7, 0xe7, 0x2e, 0xd0, 0x03, 0x7f, 0x3e, 0x2a, 0x4a, 0x4d, + 0x2f, 0x5c, 0x0a, 0x4f, 0x11, 0x54, 0xb6, 0x9c, 0x5c, 0x2e, 0xdd, 0x8a, + 0x0b, 0xce, 0x06, 0x9a, +}; +static const struct drbg_kat_pr_true kat2900_t = { + 4, kat2900_entropyin, kat2900_nonce, kat2900_persstr, + kat2900_entropyinpr1, kat2900_addinpr1, kat2900_entropyinpr2, + kat2900_addinpr2, kat2900_retbits +}; +static const struct drbg_kat kat2900 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2900_t +}; + +static const unsigned char kat2901_entropyin[] = { + 0x97, 0x90, 0x8c, 0xc2, 0xb0, 0x4c, 0x5a, 0x27, 0xcf, 0x05, 0xba, 0xb2, + 0x99, 0x9f, 0xe6, 0x93, +}; +static const unsigned char kat2901_nonce[] = { + 0x7b, 0x8e, 0xae, 0xf7, 0x4d, 0x09, 0xfb, 0x69, +}; +static const unsigned char kat2901_persstr[] = {0}; +static const unsigned char kat2901_entropyinpr1[] = { + 0x6e, 0xf1, 0x34, 0x74, 0x42, 0x8f, 0x5e, 0x51, 0xf8, 0x81, 0xc1, 0x79, + 0x07, 0x6c, 0x42, 0x09, +}; +static const unsigned char kat2901_addinpr1[] = { + 0xd7, 0xb4, 0x23, 0x28, 0x85, 0x0b, 0x0a, 0xfd, 0xea, 0xd4, 0x10, 0x9d, + 0x43, 0x7a, 0x71, 0x7d, +}; +static const unsigned char kat2901_entropyinpr2[] = { + 0xa0, 0x40, 0x78, 0x54, 0x5d, 0xb5, 0x14, 0x40, 0xdd, 0xaa, 0xe4, 0x79, + 0x0b, 0x75, 0xc8, 0xe9, +}; +static const unsigned char kat2901_addinpr2[] = { + 0xc1, 0x50, 0x0f, 0xb1, 0x15, 0x61, 0xec, 0xfe, 0xd4, 0x3e, 0x3d, 0x8b, + 0xff, 0x96, 0x40, 0xe3, +}; +static const unsigned char kat2901_retbits[] = { + 0xaf, 0x01, 0x06, 0x13, 0x49, 0x87, 0xec, 0xf5, 0xcc, 0x27, 0xf3, 0x37, + 0x3f, 0x73, 0x40, 0x2a, 0x95, 0x30, 0xf9, 0x4d, 0x81, 0xa3, 0x52, 0xb4, + 0x82, 0x8e, 0xf0, 0xb7, 0x14, 0x6a, 0xd8, 0x71, 0xf9, 0xa1, 0x9a, 0x81, + 0xa0, 0x65, 0x18, 0x22, 0x88, 0xe5, 0x60, 0x08, 0x7e, 0xe0, 0xcf, 0x66, + 0x29, 0x32, 0xd4, 0xfc, 0x02, 0x7a, 0xac, 0x91, 0x58, 0x07, 0x8a, 0xa3, + 0x29, 0x87, 0x6b, 0xab, +}; +static const struct drbg_kat_pr_true kat2901_t = { + 5, kat2901_entropyin, kat2901_nonce, kat2901_persstr, + kat2901_entropyinpr1, kat2901_addinpr1, kat2901_entropyinpr2, + kat2901_addinpr2, kat2901_retbits +}; +static const struct drbg_kat kat2901 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2901_t +}; + +static const unsigned char kat2902_entropyin[] = { + 0x93, 0xfe, 0x54, 0x2e, 0xac, 0x66, 0xd5, 0xd4, 0x11, 0x47, 0x8e, 0x3c, + 0xff, 0x4b, 0x7e, 0x44, +}; +static const unsigned char kat2902_nonce[] = { + 0x59, 0x11, 0xd3, 0x5e, 0x24, 0x84, 0xf3, 0x49, +}; +static const unsigned char kat2902_persstr[] = {0}; +static const unsigned char kat2902_entropyinpr1[] = { + 0x2e, 0x34, 0xe9, 0x4b, 0xb2, 0x1a, 0x95, 0xf9, 0x6a, 0x4d, 0x4b, 0x2a, + 0xa6, 0xcf, 0x86, 0xfd, +}; +static const unsigned char kat2902_addinpr1[] = { + 0x5a, 0xad, 0xd8, 0x03, 0x4e, 0x1d, 0x59, 0x38, 0xb0, 0x65, 0x75, 0x2b, + 0x02, 0x68, 0x84, 0xa9, +}; +static const unsigned char kat2902_entropyinpr2[] = { + 0xf4, 0x32, 0x1d, 0x86, 0xf9, 0x97, 0x30, 0x5d, 0x88, 0xf1, 0x9e, 0x56, + 0xd6, 0x23, 0x7b, 0x88, +}; +static const unsigned char kat2902_addinpr2[] = { + 0xc7, 0xdf, 0x14, 0xe0, 0x19, 0x7d, 0x2f, 0xc8, 0xb3, 0x94, 0xbe, 0x35, + 0x2a, 0xad, 0x12, 0xa8, +}; +static const unsigned char kat2902_retbits[] = { + 0x53, 0x66, 0x9f, 0x9b, 0x2e, 0xd3, 0x10, 0x0e, 0xa8, 0x43, 0x21, 0xc2, + 0x37, 0x03, 0x02, 0x2b, 0xc2, 0x66, 0xab, 0x47, 0x13, 0xd5, 0xef, 0x39, + 0x5c, 0xe2, 0xc6, 0x0e, 0x47, 0x32, 0x5f, 0x88, 0x2d, 0x43, 0x16, 0x70, + 0x82, 0xe6, 0xd0, 0x7f, 0x11, 0xfc, 0xa5, 0x78, 0xee, 0x74, 0x2b, 0xc7, + 0x76, 0x03, 0xdc, 0x1e, 0xf7, 0xaa, 0xa1, 0x41, 0xf5, 0x14, 0x62, 0xf8, + 0xdf, 0x51, 0x89, 0x81, +}; +static const struct drbg_kat_pr_true kat2902_t = { + 6, kat2902_entropyin, kat2902_nonce, kat2902_persstr, + kat2902_entropyinpr1, kat2902_addinpr1, kat2902_entropyinpr2, + kat2902_addinpr2, kat2902_retbits +}; +static const struct drbg_kat kat2902 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2902_t +}; + +static const unsigned char kat2903_entropyin[] = { + 0x04, 0x8a, 0x5c, 0x66, 0x2d, 0xf9, 0x08, 0xf6, 0x28, 0x13, 0x22, 0xa7, + 0x98, 0x3e, 0xa2, 0xa1, +}; +static const unsigned char kat2903_nonce[] = { + 0x6e, 0xb0, 0x24, 0x6b, 0x37, 0xb4, 0x51, 0x2f, +}; +static const unsigned char kat2903_persstr[] = {0}; +static const unsigned char kat2903_entropyinpr1[] = { + 0x0a, 0xe5, 0xfb, 0xa1, 0x45, 0x55, 0x64, 0x3c, 0x51, 0x95, 0x9d, 0x2d, + 0xa3, 0xdb, 0xe1, 0x07, +}; +static const unsigned char kat2903_addinpr1[] = { + 0x59, 0x7f, 0x84, 0x05, 0xe4, 0xea, 0xb4, 0x65, 0x65, 0xa7, 0x75, 0x7b, + 0xba, 0x30, 0x9d, 0x4d, +}; +static const unsigned char kat2903_entropyinpr2[] = { + 0xe2, 0x0c, 0xd1, 0x5f, 0x73, 0x63, 0x00, 0xc3, 0x18, 0x0a, 0xda, 0x5d, + 0x71, 0x55, 0xf0, 0xa7, +}; +static const unsigned char kat2903_addinpr2[] = { + 0x36, 0x78, 0x8a, 0x9e, 0x39, 0x2a, 0x85, 0x51, 0x37, 0x1b, 0x7b, 0xe9, + 0xaf, 0xf0, 0x0d, 0x43, +}; +static const unsigned char kat2903_retbits[] = { + 0xb1, 0x12, 0x30, 0x05, 0xe2, 0x1f, 0x1f, 0x95, 0x78, 0xa7, 0xc6, 0x24, + 0xd6, 0x4d, 0x3b, 0x06, 0x45, 0x1f, 0x49, 0x9e, 0x37, 0x62, 0xb5, 0x14, + 0x8f, 0x80, 0xef, 0xf2, 0x63, 0x04, 0x63, 0x33, 0x84, 0x16, 0x57, 0x1a, + 0x39, 0xad, 0x4f, 0x9f, 0x2e, 0xf3, 0x1e, 0x11, 0x31, 0x28, 0x40, 0xa5, + 0x4a, 0xf4, 0x5e, 0xa6, 0x25, 0x07, 0x54, 0xdd, 0x78, 0xda, 0xc3, 0xb0, + 0xa0, 0x70, 0x92, 0xae, +}; +static const struct drbg_kat_pr_true kat2903_t = { + 7, kat2903_entropyin, kat2903_nonce, kat2903_persstr, + kat2903_entropyinpr1, kat2903_addinpr1, kat2903_entropyinpr2, + kat2903_addinpr2, kat2903_retbits +}; +static const struct drbg_kat kat2903 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2903_t +}; + +static const unsigned char kat2904_entropyin[] = { + 0xd4, 0xb9, 0x48, 0xbc, 0xc0, 0xc5, 0x62, 0x28, 0x20, 0xee, 0x56, 0x10, + 0x27, 0xdf, 0x0c, 0x3c, +}; +static const unsigned char kat2904_nonce[] = { + 0xb1, 0x49, 0xe3, 0x33, 0x73, 0xa0, 0xcb, 0x77, +}; +static const unsigned char kat2904_persstr[] = {0}; +static const unsigned char kat2904_entropyinpr1[] = { + 0x5e, 0xda, 0x94, 0x58, 0x47, 0x4f, 0x55, 0x40, 0x1e, 0x96, 0x99, 0xa9, + 0xec, 0x45, 0xfd, 0xaf, +}; +static const unsigned char kat2904_addinpr1[] = { + 0xb5, 0xa8, 0x79, 0x5a, 0x72, 0xc1, 0xad, 0xcb, 0x97, 0x2e, 0xa9, 0x91, + 0x3f, 0x25, 0x5a, 0x8a, +}; +static const unsigned char kat2904_entropyinpr2[] = { + 0xa2, 0xba, 0x96, 0x23, 0x9c, 0x89, 0xfc, 0xc6, 0xc8, 0x1f, 0x56, 0x84, + 0x5d, 0x03, 0xc3, 0x79, +}; +static const unsigned char kat2904_addinpr2[] = { + 0xc0, 0xc8, 0x89, 0xba, 0x22, 0x20, 0xff, 0x8f, 0x91, 0x2d, 0x0a, 0xcb, + 0x56, 0xa6, 0x98, 0xad, +}; +static const unsigned char kat2904_retbits[] = { + 0x20, 0x41, 0xcb, 0x71, 0x68, 0xf0, 0x1f, 0x92, 0xa9, 0x41, 0x38, 0x9e, + 0x1b, 0x8d, 0xbb, 0xb9, 0x87, 0x0c, 0x54, 0x7f, 0xdb, 0x98, 0x80, 0xf0, + 0x5d, 0xaa, 0x93, 0x9c, 0xc0, 0x7a, 0x36, 0xa2, 0xee, 0xf8, 0x01, 0x37, + 0x90, 0x53, 0xef, 0x57, 0x2c, 0xd9, 0xbe, 0xf4, 0x97, 0xe7, 0x26, 0x7f, + 0x79, 0x90, 0x50, 0x6d, 0xaf, 0xaa, 0xd4, 0x3f, 0x6e, 0xc3, 0xba, 0xf4, + 0x4f, 0xd1, 0x96, 0xb2, +}; +static const struct drbg_kat_pr_true kat2904_t = { + 8, kat2904_entropyin, kat2904_nonce, kat2904_persstr, + kat2904_entropyinpr1, kat2904_addinpr1, kat2904_entropyinpr2, + kat2904_addinpr2, kat2904_retbits +}; +static const struct drbg_kat kat2904 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2904_t +}; + +static const unsigned char kat2905_entropyin[] = { + 0xe3, 0xb1, 0xa4, 0xd6, 0x8c, 0xed, 0x15, 0x24, 0x1e, 0x5f, 0xbe, 0xe6, + 0x19, 0x12, 0x25, 0xd3, +}; +static const unsigned char kat2905_nonce[] = { + 0xee, 0x45, 0x1b, 0xc3, 0x39, 0x6d, 0xab, 0x4f, +}; +static const unsigned char kat2905_persstr[] = {0}; +static const unsigned char kat2905_entropyinpr1[] = { + 0xb3, 0x2e, 0x30, 0xf2, 0x12, 0x90, 0x34, 0xcf, 0x4a, 0x73, 0x54, 0x1c, + 0xc9, 0x85, 0xf0, 0xf9, +}; +static const unsigned char kat2905_addinpr1[] = { + 0xd4, 0x81, 0x2a, 0xbd, 0x91, 0x3f, 0xdf, 0xda, 0x6c, 0xac, 0xa2, 0xea, + 0x0d, 0x24, 0x2f, 0x6f, +}; +static const unsigned char kat2905_entropyinpr2[] = { + 0x1b, 0xea, 0xd9, 0x88, 0xc7, 0x30, 0x24, 0xb6, 0xe0, 0xc6, 0xdf, 0xbd, + 0x1b, 0x13, 0xf2, 0x10, +}; +static const unsigned char kat2905_addinpr2[] = { + 0xcd, 0x7a, 0xa7, 0x3f, 0x0e, 0xce, 0xc3, 0xf9, 0x37, 0x59, 0xca, 0x37, + 0x77, 0xc4, 0x7d, 0x62, +}; +static const unsigned char kat2905_retbits[] = { + 0xb3, 0x04, 0x7f, 0xf5, 0x9f, 0xb3, 0x12, 0xea, 0xb2, 0x0f, 0x4e, 0xf8, + 0x3f, 0xf3, 0x3a, 0x93, 0x2c, 0x7d, 0x2e, 0x39, 0x22, 0xb7, 0xba, 0xa8, + 0x1b, 0xe0, 0x07, 0xd7, 0x98, 0x40, 0x93, 0xf3, 0x56, 0x02, 0xf8, 0xc2, + 0x57, 0x5b, 0xb0, 0x4c, 0xb5, 0x4d, 0xb8, 0xd0, 0x43, 0xec, 0x59, 0x74, + 0xd3, 0xb7, 0xd6, 0x34, 0x00, 0x9d, 0x04, 0x1b, 0x4b, 0xc1, 0x1e, 0x14, + 0x9d, 0x05, 0x38, 0x5b, +}; +static const struct drbg_kat_pr_true kat2905_t = { + 9, kat2905_entropyin, kat2905_nonce, kat2905_persstr, + kat2905_entropyinpr1, kat2905_addinpr1, kat2905_entropyinpr2, + kat2905_addinpr2, kat2905_retbits +}; +static const struct drbg_kat kat2905 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2905_t +}; + +static const unsigned char kat2906_entropyin[] = { + 0x6c, 0x3b, 0xb1, 0x77, 0x23, 0x84, 0xc8, 0x76, 0xa7, 0x13, 0x2a, 0x19, + 0x45, 0xfb, 0xce, 0x71, +}; +static const unsigned char kat2906_nonce[] = { + 0x20, 0xae, 0x47, 0x1e, 0xb9, 0x6c, 0x4c, 0xb9, +}; +static const unsigned char kat2906_persstr[] = {0}; +static const unsigned char kat2906_entropyinpr1[] = { + 0x47, 0x0a, 0x9f, 0x56, 0x79, 0xe7, 0x10, 0xb0, 0x65, 0x81, 0x0a, 0x34, + 0xdd, 0x36, 0x8c, 0x70, +}; +static const unsigned char kat2906_addinpr1[] = { + 0x24, 0x4b, 0xce, 0xe8, 0xf2, 0x04, 0x81, 0xb8, 0x8c, 0x66, 0xa1, 0xca, + 0xc7, 0x45, 0xe6, 0x7b, +}; +static const unsigned char kat2906_entropyinpr2[] = { + 0x29, 0x19, 0x5a, 0xc3, 0x1c, 0x99, 0x15, 0xf2, 0x75, 0xba, 0x82, 0x89, + 0xec, 0xd5, 0xf5, 0xb6, +}; +static const unsigned char kat2906_addinpr2[] = { + 0x93, 0x81, 0xf0, 0x73, 0x97, 0xc7, 0x83, 0xf1, 0xcc, 0x9c, 0x1f, 0x95, + 0x21, 0xc8, 0xce, 0x11, +}; +static const unsigned char kat2906_retbits[] = { + 0x6d, 0xe0, 0xf8, 0xc2, 0x8e, 0x29, 0x08, 0xae, 0x38, 0xb3, 0xa9, 0x86, + 0xf6, 0xde, 0xd1, 0x32, 0xdf, 0x2c, 0x48, 0xa9, 0x63, 0xce, 0x70, 0xef, + 0xac, 0x26, 0x93, 0xe1, 0x7b, 0x0a, 0xb5, 0x78, 0x90, 0xf8, 0x42, 0x3c, + 0xca, 0x25, 0x88, 0xa4, 0xd7, 0xfc, 0xbf, 0xc6, 0x23, 0x76, 0x6c, 0xf9, + 0xfb, 0x06, 0xbf, 0x8d, 0x06, 0xd1, 0x45, 0x95, 0xe4, 0xf6, 0x8e, 0x8f, + 0x0c, 0x5d, 0xe5, 0x9b, +}; +static const struct drbg_kat_pr_true kat2906_t = { + 10, kat2906_entropyin, kat2906_nonce, kat2906_persstr, + kat2906_entropyinpr1, kat2906_addinpr1, kat2906_entropyinpr2, + kat2906_addinpr2, kat2906_retbits +}; +static const struct drbg_kat kat2906 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2906_t +}; + +static const unsigned char kat2907_entropyin[] = { + 0x58, 0xac, 0xe8, 0x3a, 0xa5, 0xbd, 0x85, 0xda, 0x7d, 0xc4, 0xf1, 0x89, + 0x5e, 0x19, 0x0d, 0xda, +}; +static const unsigned char kat2907_nonce[] = { + 0x61, 0xc2, 0x4b, 0x22, 0x81, 0x34, 0x09, 0xb5, +}; +static const unsigned char kat2907_persstr[] = {0}; +static const unsigned char kat2907_entropyinpr1[] = { + 0x93, 0x53, 0xc9, 0x72, 0x3b, 0xb4, 0xeb, 0x6d, 0xaf, 0x52, 0xc3, 0x76, + 0x9a, 0x5c, 0x02, 0x5f, +}; +static const unsigned char kat2907_addinpr1[] = { + 0x57, 0x4e, 0x48, 0x82, 0x0b, 0x53, 0x50, 0x65, 0xf8, 0x34, 0x64, 0xa4, + 0x89, 0x1c, 0x51, 0xb3, +}; +static const unsigned char kat2907_entropyinpr2[] = { + 0x02, 0x5b, 0xe1, 0x77, 0xfe, 0x03, 0xe3, 0x18, 0x64, 0x84, 0xa4, 0xb4, + 0x0c, 0xea, 0x2e, 0xda, +}; +static const unsigned char kat2907_addinpr2[] = { + 0xb8, 0xdd, 0x1f, 0xea, 0x89, 0x0a, 0x95, 0x0c, 0x82, 0x49, 0xf6, 0x6c, + 0xbc, 0xa5, 0xd7, 0x7d, +}; +static const unsigned char kat2907_retbits[] = { + 0x1d, 0x6c, 0xb9, 0x3f, 0x73, 0x5b, 0x52, 0x83, 0xa7, 0x47, 0xdb, 0x21, + 0xb8, 0x62, 0x61, 0x28, 0x5c, 0xe6, 0xfd, 0x72, 0x79, 0x28, 0xe1, 0x35, + 0x7b, 0xdc, 0x89, 0x04, 0xcc, 0x90, 0xff, 0xc2, 0xe8, 0xf0, 0xdc, 0x93, + 0xd0, 0xae, 0x1c, 0xad, 0xdf, 0xc3, 0x8e, 0x28, 0xbb, 0x32, 0x33, 0x1e, + 0x85, 0x41, 0xec, 0xde, 0x60, 0x34, 0xcf, 0x31, 0xa3, 0xda, 0x0f, 0x1e, + 0x5a, 0x2c, 0x4d, 0xa6, +}; +static const struct drbg_kat_pr_true kat2907_t = { + 11, kat2907_entropyin, kat2907_nonce, kat2907_persstr, + kat2907_entropyinpr1, kat2907_addinpr1, kat2907_entropyinpr2, + kat2907_addinpr2, kat2907_retbits +}; +static const struct drbg_kat kat2907 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2907_t +}; + +static const unsigned char kat2908_entropyin[] = { + 0x00, 0x16, 0x1c, 0x5b, 0x23, 0xcf, 0x62, 0xc5, 0xca, 0xf0, 0xe0, 0x05, + 0x00, 0xc0, 0xcd, 0xd1, +}; +static const unsigned char kat2908_nonce[] = { + 0x97, 0x86, 0x06, 0x40, 0x96, 0x3f, 0xd2, 0x56, +}; +static const unsigned char kat2908_persstr[] = {0}; +static const unsigned char kat2908_entropyinpr1[] = { + 0xc3, 0x0c, 0x9f, 0xd6, 0x0a, 0x63, 0x7c, 0x08, 0x6d, 0x26, 0xac, 0x34, + 0x9d, 0xf4, 0x78, 0x8a, +}; +static const unsigned char kat2908_addinpr1[] = { + 0xea, 0x85, 0x1d, 0xb2, 0x83, 0xce, 0xd4, 0x56, 0x13, 0xca, 0x93, 0x15, + 0x54, 0x6b, 0x76, 0x8d, +}; +static const unsigned char kat2908_entropyinpr2[] = { + 0xbe, 0x2a, 0xbc, 0x4f, 0xb9, 0xbe, 0xc6, 0x87, 0x99, 0xc0, 0xc4, 0x7e, + 0x1d, 0x30, 0x78, 0xe0, +}; +static const unsigned char kat2908_addinpr2[] = { + 0xce, 0x7e, 0x9f, 0x4f, 0x35, 0xe4, 0xdc, 0x74, 0x3a, 0x22, 0xd5, 0x55, + 0x03, 0xa3, 0xd5, 0x30, +}; +static const unsigned char kat2908_retbits[] = { + 0x5f, 0x8a, 0xe3, 0xe3, 0x36, 0xd8, 0xd8, 0xa2, 0x6b, 0xf7, 0x20, 0x4f, + 0xda, 0x4d, 0xc1, 0xfd, 0xd7, 0xa5, 0x06, 0x32, 0x3c, 0x04, 0xc6, 0x51, + 0x09, 0x63, 0xd5, 0xb1, 0x66, 0x2a, 0x95, 0xcd, 0xf4, 0xc9, 0xba, 0x6a, + 0xd3, 0x12, 0x65, 0xe9, 0x56, 0x28, 0x6c, 0x7c, 0xb6, 0x26, 0x4f, 0x90, + 0x17, 0xbd, 0xfe, 0x87, 0x0e, 0x0a, 0x15, 0x20, 0x13, 0x78, 0x99, 0xdc, + 0x31, 0x65, 0x65, 0x80, +}; +static const struct drbg_kat_pr_true kat2908_t = { + 12, kat2908_entropyin, kat2908_nonce, kat2908_persstr, + kat2908_entropyinpr1, kat2908_addinpr1, kat2908_entropyinpr2, + kat2908_addinpr2, kat2908_retbits +}; +static const struct drbg_kat kat2908 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2908_t +}; + +static const unsigned char kat2909_entropyin[] = { + 0x92, 0x96, 0x8a, 0x0c, 0xeb, 0xff, 0xf2, 0x65, 0x1b, 0x01, 0xfa, 0x9a, + 0x3d, 0xf7, 0x22, 0x03, +}; +static const unsigned char kat2909_nonce[] = { + 0xf9, 0x7e, 0xbf, 0xf2, 0x8a, 0x9c, 0x19, 0xc0, +}; +static const unsigned char kat2909_persstr[] = {0}; +static const unsigned char kat2909_entropyinpr1[] = { + 0xf1, 0xb2, 0xa3, 0xab, 0x86, 0xe5, 0x55, 0x67, 0xef, 0x10, 0x90, 0x82, + 0x2b, 0xc8, 0xc8, 0x6d, +}; +static const unsigned char kat2909_addinpr1[] = { + 0x90, 0x66, 0x3d, 0x5d, 0xdf, 0xa7, 0x74, 0x67, 0x64, 0x53, 0x71, 0x51, + 0xef, 0x75, 0xc4, 0x71, +}; +static const unsigned char kat2909_entropyinpr2[] = { + 0x70, 0xa0, 0x46, 0xe1, 0x5a, 0xe0, 0x8e, 0x00, 0xc9, 0x46, 0xfe, 0x2e, + 0xb1, 0x93, 0x95, 0x9c, +}; +static const unsigned char kat2909_addinpr2[] = { + 0x6a, 0x5b, 0x2c, 0x85, 0x34, 0x9c, 0x37, 0x13, 0x7d, 0x76, 0x6a, 0xb8, + 0x64, 0xe7, 0xa9, 0x45, +}; +static const unsigned char kat2909_retbits[] = { + 0x1b, 0x74, 0xfb, 0x9a, 0x7c, 0x1c, 0x8b, 0xb8, 0x42, 0x21, 0x21, 0xb9, + 0x06, 0xe1, 0x3f, 0x77, 0x6e, 0xf0, 0xfb, 0x65, 0x07, 0x82, 0xeb, 0x20, + 0x13, 0xf3, 0xa8, 0x71, 0xb3, 0x40, 0x3b, 0xfe, 0x95, 0xa5, 0x6d, 0x23, + 0x2a, 0x21, 0x4d, 0x4c, 0x99, 0x13, 0x5a, 0xe0, 0x67, 0x67, 0xec, 0x39, + 0x07, 0xaa, 0x4d, 0xff, 0xc5, 0xff, 0x5f, 0x6b, 0x9b, 0x4c, 0x76, 0xe5, + 0x8e, 0xd0, 0x4b, 0x9d, +}; +static const struct drbg_kat_pr_true kat2909_t = { + 13, kat2909_entropyin, kat2909_nonce, kat2909_persstr, + kat2909_entropyinpr1, kat2909_addinpr1, kat2909_entropyinpr2, + kat2909_addinpr2, kat2909_retbits +}; +static const struct drbg_kat kat2909 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2909_t +}; + +static const unsigned char kat2910_entropyin[] = { + 0xe2, 0xf6, 0xbe, 0x79, 0xaf, 0xbb, 0x3d, 0xce, 0x28, 0xa3, 0xdd, 0x7d, + 0x50, 0xee, 0x99, 0x31, +}; +static const unsigned char kat2910_nonce[] = { + 0x53, 0xf5, 0xc4, 0xd2, 0x2f, 0x0e, 0x44, 0xc4, +}; +static const unsigned char kat2910_persstr[] = {0}; +static const unsigned char kat2910_entropyinpr1[] = { + 0xa7, 0x72, 0x08, 0x75, 0xb1, 0xab, 0xfe, 0x13, 0x7e, 0x4b, 0x2f, 0x5c, + 0x34, 0x3a, 0xd8, 0x10, +}; +static const unsigned char kat2910_addinpr1[] = { + 0x9c, 0xfa, 0x82, 0xf0, 0xb5, 0x58, 0x1d, 0x6b, 0x15, 0xd8, 0x1d, 0xd5, + 0x34, 0xf3, 0x30, 0xc6, +}; +static const unsigned char kat2910_entropyinpr2[] = { + 0x2d, 0x52, 0xac, 0xe6, 0x92, 0xb7, 0xc9, 0x1a, 0x23, 0x1a, 0x54, 0x60, + 0x80, 0x18, 0x3c, 0xdd, +}; +static const unsigned char kat2910_addinpr2[] = { + 0x56, 0x69, 0x6f, 0x0e, 0x9c, 0xeb, 0x27, 0xbb, 0x60, 0xca, 0xde, 0x9d, + 0x6d, 0x1a, 0x45, 0x0a, +}; +static const unsigned char kat2910_retbits[] = { + 0x1a, 0x98, 0x27, 0x54, 0x69, 0xa3, 0x0c, 0x9e, 0x92, 0x13, 0x2f, 0x20, + 0x09, 0x1f, 0xae, 0x46, 0xca, 0xb2, 0xc3, 0xf5, 0xb3, 0xff, 0x5a, 0x22, + 0xb6, 0x7d, 0x0f, 0x8a, 0xb3, 0xb1, 0xe3, 0x80, 0x0a, 0xd8, 0x49, 0xc7, + 0x39, 0x09, 0xc3, 0x31, 0xf3, 0x40, 0xfa, 0xdd, 0x3d, 0xc6, 0x35, 0x8c, + 0xc1, 0x2c, 0xb4, 0xf7, 0x3e, 0x23, 0x99, 0x7a, 0x31, 0x09, 0xa4, 0x79, + 0x23, 0x17, 0xfd, 0x50, +}; +static const struct drbg_kat_pr_true kat2910_t = { + 14, kat2910_entropyin, kat2910_nonce, kat2910_persstr, + kat2910_entropyinpr1, kat2910_addinpr1, kat2910_entropyinpr2, + kat2910_addinpr2, kat2910_retbits +}; +static const struct drbg_kat kat2910 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2910_t +}; + +static const unsigned char kat2911_entropyin[] = { + 0x04, 0xd9, 0x49, 0xa6, 0xdc, 0xe8, 0x6e, 0xbb, 0xf1, 0x08, 0x77, 0x2b, + 0x9e, 0x08, 0xca, 0x92, +}; +static const unsigned char kat2911_nonce[] = { + 0x65, 0x16, 0xda, 0x99, 0xa2, 0x59, 0xf3, 0xe8, +}; +static const unsigned char kat2911_persstr[] = { + 0xbf, 0xa4, 0x9a, 0x8f, 0x7b, 0xd8, 0xb1, 0x7a, 0x9d, 0xfa, 0x45, 0xed, + 0x21, 0x52, 0xb3, 0xad, +}; +static const unsigned char kat2911_entropyinpr1[] = { + 0x38, 0x7e, 0x3f, 0x6b, 0x51, 0x70, 0x7b, 0x20, 0xec, 0x53, 0xd0, 0x66, + 0xc3, 0x0f, 0xe3, 0xb0, +}; +static const unsigned char kat2911_addinpr1[] = {0}; +static const unsigned char kat2911_entropyinpr2[] = { + 0xe0, 0x86, 0xa6, 0xaa, 0x5f, 0x72, 0x2f, 0xad, 0xf7, 0xef, 0x06, 0xb8, + 0xd6, 0x9c, 0x9d, 0xe8, +}; +static const unsigned char kat2911_addinpr2[] = {0}; +static const unsigned char kat2911_retbits[] = { + 0xc9, 0x0a, 0xaf, 0x85, 0x89, 0x71, 0x44, 0x66, 0x4f, 0x25, 0x0b, 0x2b, + 0xde, 0xd8, 0xfa, 0xff, 0x52, 0x5a, 0x1b, 0x32, 0x5e, 0x41, 0x7a, 0x10, + 0x1f, 0xef, 0x1e, 0x62, 0x23, 0xe9, 0x20, 0x30, 0xc9, 0x0d, 0xad, 0x69, + 0xb4, 0x9c, 0x5b, 0xf4, 0x87, 0x42, 0xd5, 0xae, 0x5e, 0x5e, 0x43, 0xcc, + 0xd9, 0xfd, 0x0b, 0x93, 0x4a, 0xe3, 0xd4, 0x06, 0x37, 0x36, 0x0f, 0x3f, + 0x72, 0x82, 0x0c, 0xcf, +}; +static const struct drbg_kat_pr_true kat2911_t = { + 0, kat2911_entropyin, kat2911_nonce, kat2911_persstr, + kat2911_entropyinpr1, kat2911_addinpr1, kat2911_entropyinpr2, + kat2911_addinpr2, kat2911_retbits +}; +static const struct drbg_kat kat2911 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2911_t +}; + +static const unsigned char kat2912_entropyin[] = { + 0x95, 0xb4, 0x8c, 0x92, 0x25, 0xed, 0xf6, 0xde, 0x0c, 0x7a, 0xc8, 0x46, + 0x27, 0x87, 0x49, 0xeb, +}; +static const unsigned char kat2912_nonce[] = { + 0x63, 0x49, 0xc6, 0x54, 0x3f, 0xbf, 0x1d, 0xdc, +}; +static const unsigned char kat2912_persstr[] = { + 0xee, 0x6b, 0xb2, 0x95, 0x88, 0xcb, 0xc5, 0x09, 0x5c, 0x44, 0xce, 0x57, + 0x56, 0x57, 0xee, 0x11, +}; +static const unsigned char kat2912_entropyinpr1[] = { + 0x4d, 0x2f, 0x8a, 0x6d, 0x71, 0xb2, 0xdc, 0x2d, 0x94, 0x93, 0x8a, 0xc7, + 0x29, 0xe1, 0xbe, 0xdf, +}; +static const unsigned char kat2912_addinpr1[] = {0}; +static const unsigned char kat2912_entropyinpr2[] = { + 0xad, 0x3e, 0x14, 0x07, 0x27, 0xec, 0x0f, 0xad, 0xfd, 0x1d, 0x1c, 0xc4, + 0x5c, 0x49, 0x2d, 0x25, +}; +static const unsigned char kat2912_addinpr2[] = {0}; +static const unsigned char kat2912_retbits[] = { + 0xc4, 0x62, 0x4a, 0xfc, 0x97, 0x86, 0x62, 0x13, 0xc9, 0x1f, 0xa1, 0x90, + 0x67, 0x30, 0x0f, 0x36, 0xed, 0xda, 0xdf, 0x00, 0x8e, 0xee, 0xd5, 0xcf, + 0x25, 0x02, 0x42, 0x24, 0x87, 0x94, 0xd9, 0xb6, 0x3f, 0xa5, 0x8c, 0x6e, + 0x66, 0xa5, 0x7e, 0x9f, 0x07, 0x2e, 0x71, 0xec, 0x28, 0x7a, 0x1e, 0xd8, + 0xd8, 0x3b, 0xd5, 0xa5, 0x26, 0x9c, 0x99, 0x47, 0x04, 0x99, 0xde, 0xe3, + 0xc8, 0x6a, 0x01, 0x73, +}; +static const struct drbg_kat_pr_true kat2912_t = { + 1, kat2912_entropyin, kat2912_nonce, kat2912_persstr, + kat2912_entropyinpr1, kat2912_addinpr1, kat2912_entropyinpr2, + kat2912_addinpr2, kat2912_retbits +}; +static const struct drbg_kat kat2912 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2912_t +}; + +static const unsigned char kat2913_entropyin[] = { + 0x24, 0x8f, 0x81, 0x46, 0xb5, 0xf4, 0xcd, 0xa4, 0xaa, 0x50, 0x2b, 0xa1, + 0xed, 0xdf, 0x2b, 0x92, +}; +static const unsigned char kat2913_nonce[] = { + 0x49, 0x7d, 0x5f, 0x20, 0x85, 0xef, 0xbd, 0xd5, +}; +static const unsigned char kat2913_persstr[] = { + 0xda, 0x50, 0x1e, 0xd7, 0xfa, 0x9b, 0xf4, 0x43, 0xf8, 0xde, 0xfe, 0x72, + 0x62, 0xff, 0x86, 0x2c, +}; +static const unsigned char kat2913_entropyinpr1[] = { + 0xc1, 0xbb, 0xb7, 0x97, 0xa5, 0xec, 0x44, 0xdc, 0x99, 0x87, 0x89, 0x1d, + 0x02, 0x20, 0x07, 0x2f, +}; +static const unsigned char kat2913_addinpr1[] = {0}; +static const unsigned char kat2913_entropyinpr2[] = { + 0x01, 0x56, 0xa9, 0x65, 0x59, 0xf4, 0xdb, 0xe8, 0xa3, 0x07, 0x75, 0x41, + 0xc4, 0x89, 0xff, 0x1b, +}; +static const unsigned char kat2913_addinpr2[] = {0}; +static const unsigned char kat2913_retbits[] = { + 0x14, 0x51, 0x67, 0x5a, 0x22, 0x45, 0xcb, 0xd9, 0x56, 0x44, 0x47, 0x4b, + 0x82, 0x81, 0x70, 0x74, 0xc8, 0x5e, 0x99, 0x5a, 0xc0, 0x5b, 0x45, 0x91, + 0x24, 0x79, 0xbc, 0x0d, 0x96, 0x0f, 0xd6, 0x32, 0x34, 0x2a, 0x7e, 0xac, + 0xcf, 0xc1, 0x30, 0x47, 0xa1, 0x98, 0x61, 0xb9, 0xa3, 0xf3, 0xaa, 0x0a, + 0xc2, 0xea, 0x48, 0xb4, 0xc4, 0xd1, 0xee, 0xdf, 0xc9, 0x59, 0xa7, 0x7e, + 0xb7, 0xdf, 0x19, 0xec, +}; +static const struct drbg_kat_pr_true kat2913_t = { + 2, kat2913_entropyin, kat2913_nonce, kat2913_persstr, + kat2913_entropyinpr1, kat2913_addinpr1, kat2913_entropyinpr2, + kat2913_addinpr2, kat2913_retbits +}; +static const struct drbg_kat kat2913 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2913_t +}; + +static const unsigned char kat2914_entropyin[] = { + 0x43, 0x24, 0xeb, 0x5e, 0x5d, 0x3b, 0x15, 0xaa, 0x28, 0x37, 0x7d, 0x80, + 0x9d, 0xaa, 0x85, 0x79, +}; +static const unsigned char kat2914_nonce[] = { + 0x08, 0x87, 0x50, 0x03, 0x8f, 0x51, 0x75, 0xf0, +}; +static const unsigned char kat2914_persstr[] = { + 0xd2, 0x7c, 0x75, 0x83, 0x6f, 0x0a, 0x21, 0x73, 0xa3, 0x08, 0xf5, 0x8a, + 0xd0, 0x7c, 0x52, 0x3e, +}; +static const unsigned char kat2914_entropyinpr1[] = { + 0xa9, 0x93, 0xd4, 0xc9, 0x74, 0x93, 0xa1, 0xe7, 0x82, 0xaa, 0xd9, 0xc0, + 0x1f, 0x9a, 0x7e, 0x5c, +}; +static const unsigned char kat2914_addinpr1[] = {0}; +static const unsigned char kat2914_entropyinpr2[] = { + 0xd9, 0x6a, 0x76, 0x78, 0x37, 0xaf, 0xb4, 0xb8, 0x54, 0x4a, 0xe5, 0x82, + 0x7a, 0x0f, 0x6b, 0x71, +}; +static const unsigned char kat2914_addinpr2[] = {0}; +static const unsigned char kat2914_retbits[] = { + 0x54, 0x44, 0x98, 0xbd, 0x43, 0x31, 0x35, 0xc2, 0xd5, 0xb8, 0x05, 0xb4, + 0x5e, 0x88, 0x73, 0x3e, 0x71, 0x23, 0x5e, 0xb6, 0xad, 0x25, 0xee, 0x89, + 0xf2, 0x1b, 0x24, 0xa4, 0x18, 0xe0, 0xfa, 0xfe, 0x25, 0x5a, 0xdc, 0xc2, + 0x3e, 0xdc, 0xcf, 0x11, 0xe6, 0x79, 0x90, 0x7c, 0x74, 0x25, 0xe8, 0xb1, + 0xf5, 0x3d, 0x0a, 0x16, 0x19, 0xe7, 0xdc, 0x3e, 0xcb, 0x20, 0x97, 0xcc, + 0x18, 0x13, 0x37, 0x36, +}; +static const struct drbg_kat_pr_true kat2914_t = { + 3, kat2914_entropyin, kat2914_nonce, kat2914_persstr, + kat2914_entropyinpr1, kat2914_addinpr1, kat2914_entropyinpr2, + kat2914_addinpr2, kat2914_retbits +}; +static const struct drbg_kat kat2914 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2914_t +}; + +static const unsigned char kat2915_entropyin[] = { + 0xb2, 0x13, 0xf7, 0xce, 0x19, 0x3c, 0xd4, 0xa6, 0x6e, 0x97, 0x92, 0x66, + 0xf4, 0x88, 0xe1, 0x81, +}; +static const unsigned char kat2915_nonce[] = { + 0x19, 0x19, 0x1a, 0x55, 0x7f, 0x54, 0x4e, 0xf9, +}; +static const unsigned char kat2915_persstr[] = { + 0x1c, 0xed, 0x83, 0x18, 0xf6, 0x40, 0x43, 0x90, 0xc4, 0xa4, 0xee, 0x34, + 0x3c, 0xf5, 0x3c, 0x43, +}; +static const unsigned char kat2915_entropyinpr1[] = { + 0x20, 0xa8, 0x83, 0xfa, 0x38, 0x02, 0xf2, 0xd4, 0xb8, 0x35, 0x9f, 0x04, + 0x43, 0x55, 0xaa, 0x80, +}; +static const unsigned char kat2915_addinpr1[] = {0}; +static const unsigned char kat2915_entropyinpr2[] = { + 0x0f, 0x8f, 0x65, 0xe2, 0x19, 0x2a, 0x8a, 0x44, 0x5b, 0xae, 0xd6, 0x65, + 0x27, 0xb8, 0xa0, 0xfc, +}; +static const unsigned char kat2915_addinpr2[] = {0}; +static const unsigned char kat2915_retbits[] = { + 0xd3, 0xf1, 0xcc, 0xc7, 0x7e, 0x04, 0x1c, 0xed, 0xd5, 0xb8, 0x05, 0xca, + 0xe6, 0x57, 0x89, 0x46, 0x03, 0x02, 0x19, 0x0f, 0x3c, 0x74, 0x78, 0x8f, + 0xa5, 0x0b, 0x86, 0x3c, 0xb4, 0xd3, 0x4a, 0x96, 0xe2, 0xf0, 0x2b, 0xec, + 0xd7, 0x21, 0x8a, 0xd2, 0xc9, 0x34, 0x72, 0xdc, 0xd9, 0xc2, 0x3c, 0xc6, + 0xdd, 0x74, 0xc3, 0x9d, 0xb6, 0xea, 0xa3, 0x7c, 0xd9, 0x85, 0xb0, 0x15, + 0x31, 0x4b, 0x71, 0x9d, +}; +static const struct drbg_kat_pr_true kat2915_t = { + 4, kat2915_entropyin, kat2915_nonce, kat2915_persstr, + kat2915_entropyinpr1, kat2915_addinpr1, kat2915_entropyinpr2, + kat2915_addinpr2, kat2915_retbits +}; +static const struct drbg_kat kat2915 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2915_t +}; + +static const unsigned char kat2916_entropyin[] = { + 0x01, 0xab, 0x54, 0x2d, 0xce, 0xdb, 0x7e, 0xba, 0x62, 0xe1, 0x7c, 0x6d, + 0x0c, 0x2a, 0x2e, 0x42, +}; +static const unsigned char kat2916_nonce[] = { + 0x70, 0xe3, 0x68, 0x41, 0x6f, 0xc1, 0x06, 0xea, +}; +static const unsigned char kat2916_persstr[] = { + 0xd0, 0xff, 0x40, 0xe6, 0x89, 0x73, 0x01, 0x1a, 0x40, 0x50, 0x12, 0x73, + 0xa0, 0x17, 0xa4, 0x4e, +}; +static const unsigned char kat2916_entropyinpr1[] = { + 0xa7, 0x08, 0x23, 0xf0, 0xf5, 0xcb, 0x86, 0xe5, 0x3c, 0x6e, 0x6c, 0xf3, + 0x7f, 0x2f, 0xac, 0xa9, +}; +static const unsigned char kat2916_addinpr1[] = {0}; +static const unsigned char kat2916_entropyinpr2[] = { + 0x54, 0x30, 0x81, 0x75, 0x54, 0xb4, 0x28, 0xa3, 0x98, 0x9b, 0x1c, 0xe4, + 0x6c, 0x0d, 0xf5, 0x1f, +}; +static const unsigned char kat2916_addinpr2[] = {0}; +static const unsigned char kat2916_retbits[] = { + 0x60, 0xcc, 0xee, 0x8a, 0xd4, 0x86, 0x4e, 0x0a, 0xf4, 0x10, 0x83, 0x06, + 0xd3, 0x71, 0x2f, 0xac, 0x21, 0x58, 0xc7, 0xc6, 0x8f, 0xf6, 0x2f, 0xaa, + 0x41, 0x23, 0x2f, 0x38, 0xf7, 0x1a, 0x88, 0xb8, 0xec, 0x25, 0x34, 0xc2, + 0x38, 0xdc, 0xf5, 0xa8, 0x40, 0xf3, 0xfa, 0x17, 0x65, 0x98, 0x62, 0x48, + 0xca, 0x7e, 0x5b, 0xdf, 0x75, 0x94, 0x28, 0x43, 0xde, 0x9a, 0x90, 0x7d, + 0xe8, 0x7b, 0x18, 0x20, +}; +static const struct drbg_kat_pr_true kat2916_t = { + 5, kat2916_entropyin, kat2916_nonce, kat2916_persstr, + kat2916_entropyinpr1, kat2916_addinpr1, kat2916_entropyinpr2, + kat2916_addinpr2, kat2916_retbits +}; +static const struct drbg_kat kat2916 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2916_t +}; + +static const unsigned char kat2917_entropyin[] = { + 0xb6, 0x3b, 0x39, 0xf9, 0x04, 0xc7, 0xe7, 0x6d, 0x8d, 0x79, 0xfa, 0x6d, + 0xd2, 0x5a, 0x69, 0x62, +}; +static const unsigned char kat2917_nonce[] = { + 0x6d, 0x52, 0x52, 0xac, 0x2a, 0xdf, 0xc7, 0xb1, +}; +static const unsigned char kat2917_persstr[] = { + 0xc3, 0xa1, 0xb3, 0x85, 0x1a, 0x77, 0x09, 0xc4, 0x67, 0xc9, 0xef, 0x32, + 0x84, 0xef, 0xa0, 0x1c, +}; +static const unsigned char kat2917_entropyinpr1[] = { + 0x7e, 0xfc, 0x7d, 0x32, 0xa4, 0x7b, 0x09, 0x71, 0x7c, 0x4d, 0x02, 0xfa, + 0x54, 0x0b, 0xfb, 0x0c, +}; +static const unsigned char kat2917_addinpr1[] = {0}; +static const unsigned char kat2917_entropyinpr2[] = { + 0x55, 0x90, 0x32, 0x09, 0x58, 0x42, 0xd1, 0x59, 0x29, 0x1c, 0x08, 0xd5, + 0x21, 0x58, 0x80, 0x31, +}; +static const unsigned char kat2917_addinpr2[] = {0}; +static const unsigned char kat2917_retbits[] = { + 0xb1, 0x52, 0x1f, 0x1f, 0x1c, 0xae, 0xc7, 0x40, 0x48, 0xb5, 0xbb, 0x97, + 0x79, 0x4e, 0x3f, 0x46, 0x77, 0xe4, 0xea, 0x38, 0xa6, 0x4d, 0x74, 0xcd, + 0x41, 0xc8, 0x37, 0xab, 0x0f, 0x62, 0x59, 0xda, 0x42, 0x42, 0xa1, 0x7d, + 0xc6, 0xb9, 0x44, 0x7f, 0x56, 0x03, 0xa4, 0x4b, 0x39, 0x76, 0x36, 0x32, + 0xc7, 0x50, 0x20, 0xf2, 0xbe, 0x76, 0x0b, 0xdd, 0x2e, 0x11, 0xc8, 0x6d, + 0xe9, 0xd0, 0xf4, 0xb3, +}; +static const struct drbg_kat_pr_true kat2917_t = { + 6, kat2917_entropyin, kat2917_nonce, kat2917_persstr, + kat2917_entropyinpr1, kat2917_addinpr1, kat2917_entropyinpr2, + kat2917_addinpr2, kat2917_retbits +}; +static const struct drbg_kat kat2917 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2917_t +}; + +static const unsigned char kat2918_entropyin[] = { + 0xf9, 0xa3, 0x9f, 0x97, 0x29, 0xe2, 0x2d, 0x49, 0xec, 0xf6, 0x6f, 0x4f, + 0x25, 0x4b, 0xb2, 0xbe, +}; +static const unsigned char kat2918_nonce[] = { + 0x75, 0x96, 0x75, 0xe6, 0xad, 0x5b, 0x46, 0x5c, +}; +static const unsigned char kat2918_persstr[] = { + 0x07, 0xe5, 0xab, 0xca, 0x6b, 0xb5, 0xbb, 0xcc, 0xf7, 0x0a, 0x62, 0x04, + 0x18, 0x37, 0x25, 0x66, +}; +static const unsigned char kat2918_entropyinpr1[] = { + 0x37, 0xae, 0xab, 0xc9, 0x74, 0xcc, 0x63, 0x09, 0x47, 0x8d, 0xc8, 0x58, + 0x87, 0xdb, 0x77, 0x7f, +}; +static const unsigned char kat2918_addinpr1[] = {0}; +static const unsigned char kat2918_entropyinpr2[] = { + 0xef, 0x59, 0x90, 0xc3, 0x26, 0xc4, 0x5b, 0x03, 0xad, 0xbe, 0x1d, 0xe0, + 0x93, 0x61, 0x9f, 0x84, +}; +static const unsigned char kat2918_addinpr2[] = {0}; +static const unsigned char kat2918_retbits[] = { + 0x36, 0x6a, 0x38, 0x08, 0x7a, 0xbd, 0x19, 0x9d, 0x6c, 0xb3, 0xa3, 0xb9, + 0xa6, 0x14, 0x7c, 0x0f, 0x30, 0x6c, 0xc3, 0xdd, 0xd4, 0x12, 0x20, 0x74, + 0xde, 0x28, 0x1f, 0x3f, 0xc5, 0x6f, 0x5d, 0x3f, 0x74, 0xc6, 0xdd, 0x28, + 0x9a, 0x93, 0x79, 0x1c, 0xa2, 0xdb, 0x3d, 0xd6, 0xb4, 0xbc, 0x98, 0x4e, + 0x80, 0xca, 0x77, 0xfa, 0x49, 0x98, 0x71, 0x45, 0xeb, 0x06, 0xfa, 0xbe, + 0xe7, 0x8e, 0xbb, 0xf6, +}; +static const struct drbg_kat_pr_true kat2918_t = { + 7, kat2918_entropyin, kat2918_nonce, kat2918_persstr, + kat2918_entropyinpr1, kat2918_addinpr1, kat2918_entropyinpr2, + kat2918_addinpr2, kat2918_retbits +}; +static const struct drbg_kat kat2918 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2918_t +}; + +static const unsigned char kat2919_entropyin[] = { + 0x3a, 0x2b, 0xdf, 0x56, 0x32, 0x7d, 0x3f, 0xd9, 0x4d, 0x80, 0xd8, 0x3f, + 0x95, 0x0e, 0x0b, 0x5c, +}; +static const unsigned char kat2919_nonce[] = { + 0x5f, 0x6c, 0xbe, 0xc4, 0x9d, 0x02, 0x2d, 0xf2, +}; +static const unsigned char kat2919_persstr[] = { + 0x45, 0xfc, 0x17, 0x6f, 0xfb, 0xea, 0xaa, 0xa9, 0xa1, 0xc8, 0xeb, 0xbf, + 0xb0, 0x51, 0x2c, 0xba, +}; +static const unsigned char kat2919_entropyinpr1[] = { + 0x44, 0xc3, 0x68, 0x62, 0x22, 0x54, 0x7f, 0xf4, 0x21, 0x19, 0x83, 0x72, + 0x07, 0x9a, 0x94, 0x2a, +}; +static const unsigned char kat2919_addinpr1[] = {0}; +static const unsigned char kat2919_entropyinpr2[] = { + 0x95, 0xd4, 0xf2, 0x55, 0xce, 0x0e, 0xef, 0x14, 0xb5, 0x6b, 0xe4, 0x86, + 0x41, 0xb5, 0x15, 0xb5, +}; +static const unsigned char kat2919_addinpr2[] = {0}; +static const unsigned char kat2919_retbits[] = { + 0xf6, 0xa4, 0x4d, 0xf4, 0x45, 0x79, 0x21, 0xf7, 0x15, 0x59, 0xf0, 0x38, + 0xdf, 0x0b, 0xf5, 0x10, 0x68, 0x93, 0xf5, 0xbe, 0x1b, 0x30, 0xe6, 0x47, + 0x4b, 0x91, 0x42, 0xae, 0xea, 0xe1, 0xcf, 0x0f, 0x36, 0x61, 0xda, 0x0b, + 0xed, 0xfd, 0xd9, 0x33, 0x16, 0x36, 0x4c, 0x2b, 0x21, 0xc8, 0xc6, 0x97, + 0x4a, 0xa0, 0x0f, 0xb1, 0x6d, 0x6d, 0xfd, 0xbe, 0xf6, 0x1b, 0xa0, 0x5b, + 0x7f, 0x70, 0x08, 0xf4, +}; +static const struct drbg_kat_pr_true kat2919_t = { + 8, kat2919_entropyin, kat2919_nonce, kat2919_persstr, + kat2919_entropyinpr1, kat2919_addinpr1, kat2919_entropyinpr2, + kat2919_addinpr2, kat2919_retbits +}; +static const struct drbg_kat kat2919 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2919_t +}; + +static const unsigned char kat2920_entropyin[] = { + 0x65, 0xbd, 0x77, 0x12, 0x78, 0x97, 0xf6, 0xc7, 0x06, 0xac, 0xbd, 0x40, + 0x62, 0xef, 0x96, 0xb9, +}; +static const unsigned char kat2920_nonce[] = { + 0xa8, 0x63, 0x02, 0xb2, 0xaa, 0x4f, 0x80, 0x6f, +}; +static const unsigned char kat2920_persstr[] = { + 0x0e, 0x4b, 0xbf, 0x8a, 0xa7, 0x0d, 0x2a, 0x3c, 0xad, 0xa5, 0x25, 0x3b, + 0x54, 0xb9, 0x15, 0xae, +}; +static const unsigned char kat2920_entropyinpr1[] = { + 0x64, 0xb6, 0xe1, 0x24, 0xe0, 0xe1, 0x51, 0xaa, 0x00, 0x50, 0x44, 0xf3, + 0x5a, 0x49, 0xef, 0xba, +}; +static const unsigned char kat2920_addinpr1[] = {0}; +static const unsigned char kat2920_entropyinpr2[] = { + 0xf5, 0xe7, 0x97, 0x1b, 0x5a, 0xd1, 0x8a, 0x91, 0xcd, 0x42, 0x5d, 0x87, + 0x4e, 0xc3, 0x04, 0x1e, +}; +static const unsigned char kat2920_addinpr2[] = {0}; +static const unsigned char kat2920_retbits[] = { + 0xe0, 0x1e, 0x53, 0xda, 0x0d, 0x47, 0xc2, 0xd1, 0xbe, 0x09, 0x6f, 0xa3, + 0x47, 0x3e, 0x0d, 0x4e, 0xaf, 0xc0, 0xef, 0x50, 0xbe, 0xba, 0xdf, 0x38, + 0xdd, 0x02, 0xea, 0xce, 0xac, 0xf8, 0x4c, 0x38, 0x47, 0xaf, 0x7d, 0x6e, + 0xfa, 0xc8, 0x61, 0x90, 0xbe, 0xa1, 0x86, 0xe5, 0xcc, 0x9d, 0xc8, 0xf1, + 0x85, 0xe9, 0x7a, 0x85, 0xff, 0x36, 0x1a, 0x2b, 0xdf, 0x88, 0x43, 0xe2, + 0x91, 0x5f, 0x49, 0xf6, +}; +static const struct drbg_kat_pr_true kat2920_t = { + 9, kat2920_entropyin, kat2920_nonce, kat2920_persstr, + kat2920_entropyinpr1, kat2920_addinpr1, kat2920_entropyinpr2, + kat2920_addinpr2, kat2920_retbits +}; +static const struct drbg_kat kat2920 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2920_t +}; + +static const unsigned char kat2921_entropyin[] = { + 0x65, 0xf5, 0xac, 0x10, 0xd9, 0xaf, 0xe7, 0xdd, 0x73, 0x39, 0x58, 0xb9, + 0x81, 0x0f, 0x4b, 0x88, +}; +static const unsigned char kat2921_nonce[] = { + 0xc5, 0xe0, 0x17, 0x28, 0x79, 0xdc, 0x34, 0x4a, +}; +static const unsigned char kat2921_persstr[] = { + 0x83, 0xb4, 0x11, 0x92, 0x13, 0x3c, 0x9d, 0xc7, 0x12, 0x19, 0xe0, 0x7a, + 0x15, 0xf8, 0x26, 0xfa, +}; +static const unsigned char kat2921_entropyinpr1[] = { + 0x64, 0x7d, 0xbd, 0xe6, 0xb3, 0xa1, 0x1a, 0x58, 0x5f, 0x44, 0x28, 0xb3, + 0x21, 0x0e, 0xb5, 0x4e, +}; +static const unsigned char kat2921_addinpr1[] = {0}; +static const unsigned char kat2921_entropyinpr2[] = { + 0xbb, 0x5c, 0xc9, 0x6e, 0x43, 0x13, 0x45, 0xb5, 0xee, 0x09, 0xbf, 0xcd, + 0x9d, 0x38, 0xa7, 0x51, +}; +static const unsigned char kat2921_addinpr2[] = {0}; +static const unsigned char kat2921_retbits[] = { + 0x8c, 0xdf, 0x9e, 0x26, 0x72, 0x94, 0xeb, 0xb9, 0x05, 0x26, 0xf3, 0x47, + 0xd7, 0x67, 0x3c, 0xf8, 0x7f, 0x43, 0x6d, 0x3b, 0x90, 0x65, 0xbe, 0xf5, + 0x26, 0x28, 0xa7, 0x2b, 0x4e, 0x04, 0xc8, 0x31, 0xb0, 0x5d, 0x5d, 0x49, + 0xfe, 0x93, 0xbd, 0x53, 0x91, 0xca, 0x5c, 0x1e, 0xeb, 0x93, 0x39, 0x51, + 0x56, 0x6a, 0xb0, 0x1e, 0x05, 0xdb, 0x28, 0x9e, 0x67, 0x71, 0x20, 0x55, + 0x9a, 0x0d, 0x67, 0xdd, +}; +static const struct drbg_kat_pr_true kat2921_t = { + 10, kat2921_entropyin, kat2921_nonce, kat2921_persstr, + kat2921_entropyinpr1, kat2921_addinpr1, kat2921_entropyinpr2, + kat2921_addinpr2, kat2921_retbits +}; +static const struct drbg_kat kat2921 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2921_t +}; + +static const unsigned char kat2922_entropyin[] = { + 0xff, 0x0b, 0xc5, 0xb4, 0x4a, 0x5c, 0x0b, 0x58, 0x00, 0x17, 0x54, 0x57, + 0x39, 0xd0, 0x57, 0xe1, +}; +static const unsigned char kat2922_nonce[] = { + 0xe4, 0x8e, 0x23, 0xfa, 0x66, 0x8c, 0xc6, 0xdf, +}; +static const unsigned char kat2922_persstr[] = { + 0xce, 0xb2, 0x54, 0xbf, 0x57, 0x7b, 0xdc, 0x23, 0xdb, 0x2b, 0x1f, 0x67, + 0xef, 0x1b, 0xa2, 0xcb, +}; +static const unsigned char kat2922_entropyinpr1[] = { + 0x62, 0xef, 0xff, 0x8f, 0x4a, 0x23, 0xef, 0x09, 0x46, 0xb0, 0x0a, 0xab, + 0x1c, 0xf5, 0xca, 0x54, +}; +static const unsigned char kat2922_addinpr1[] = {0}; +static const unsigned char kat2922_entropyinpr2[] = { + 0x1e, 0xb3, 0xdf, 0xf0, 0x64, 0x43, 0x5a, 0x07, 0x50, 0x0f, 0x59, 0x9b, + 0xb7, 0x74, 0x4e, 0xf3, +}; +static const unsigned char kat2922_addinpr2[] = {0}; +static const unsigned char kat2922_retbits[] = { + 0xfe, 0x32, 0xda, 0x0e, 0xc0, 0xf4, 0x45, 0x0d, 0x59, 0x09, 0x82, 0x23, + 0x38, 0x83, 0x11, 0x55, 0xb8, 0xe3, 0x17, 0xaf, 0xa6, 0xab, 0x3f, 0xc1, + 0x94, 0xf6, 0x50, 0x48, 0xbc, 0x33, 0xc4, 0xb1, 0x73, 0xc6, 0xe2, 0x3b, + 0x3c, 0xba, 0x0f, 0x11, 0x06, 0xb3, 0x6f, 0xb9, 0xd5, 0xae, 0x97, 0x43, + 0x80, 0x09, 0xb0, 0x22, 0x8e, 0xae, 0xa4, 0xa4, 0x6b, 0x52, 0x1d, 0x19, + 0xf9, 0x1c, 0xc9, 0xae, +}; +static const struct drbg_kat_pr_true kat2922_t = { + 11, kat2922_entropyin, kat2922_nonce, kat2922_persstr, + kat2922_entropyinpr1, kat2922_addinpr1, kat2922_entropyinpr2, + kat2922_addinpr2, kat2922_retbits +}; +static const struct drbg_kat kat2922 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2922_t +}; + +static const unsigned char kat2923_entropyin[] = { + 0xe1, 0xdb, 0x4e, 0x81, 0xe7, 0x3c, 0xef, 0xff, 0xf7, 0x3d, 0xf5, 0x95, + 0x87, 0xfd, 0x18, 0x03, +}; +static const unsigned char kat2923_nonce[] = { + 0xe3, 0xb0, 0x24, 0x42, 0x4c, 0x6c, 0xc6, 0x78, +}; +static const unsigned char kat2923_persstr[] = { + 0x75, 0xfd, 0x2b, 0x61, 0xbc, 0x63, 0x18, 0xa5, 0xba, 0xf9, 0x31, 0x2e, + 0x47, 0x8b, 0x04, 0xfd, +}; +static const unsigned char kat2923_entropyinpr1[] = { + 0xd5, 0x35, 0xde, 0xa7, 0x2d, 0x20, 0xdb, 0xd5, 0x40, 0xcd, 0xe8, 0x56, + 0xcf, 0x05, 0x4e, 0xae, +}; +static const unsigned char kat2923_addinpr1[] = {0}; +static const unsigned char kat2923_entropyinpr2[] = { + 0xbd, 0xda, 0x47, 0x0e, 0xa6, 0xee, 0x45, 0x75, 0x56, 0xa8, 0xdd, 0x29, + 0xb6, 0x20, 0x39, 0x81, +}; +static const unsigned char kat2923_addinpr2[] = {0}; +static const unsigned char kat2923_retbits[] = { + 0x6d, 0x33, 0xf5, 0x2f, 0x8a, 0xd7, 0x8a, 0xcb, 0xd8, 0xfe, 0xed, 0xb1, + 0x2c, 0x38, 0x41, 0xea, 0x9e, 0x1a, 0xca, 0x03, 0xd5, 0x05, 0xb6, 0xf0, + 0xc1, 0x6e, 0xcb, 0xe2, 0x01, 0x65, 0x09, 0x54, 0x08, 0x5a, 0x6a, 0x21, + 0x81, 0x97, 0xde, 0x7f, 0x40, 0x77, 0xa9, 0x38, 0x87, 0xb9, 0x80, 0x5a, + 0xeb, 0xf6, 0x6c, 0xf0, 0x63, 0xd6, 0xd8, 0x98, 0xd8, 0xbe, 0x6a, 0xd0, + 0x11, 0xa5, 0x99, 0x29, +}; +static const struct drbg_kat_pr_true kat2923_t = { + 12, kat2923_entropyin, kat2923_nonce, kat2923_persstr, + kat2923_entropyinpr1, kat2923_addinpr1, kat2923_entropyinpr2, + kat2923_addinpr2, kat2923_retbits +}; +static const struct drbg_kat kat2923 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2923_t +}; + +static const unsigned char kat2924_entropyin[] = { + 0x7b, 0x2d, 0x0a, 0xf7, 0x17, 0xe1, 0x0c, 0x54, 0x75, 0xaf, 0x5b, 0xdd, + 0xeb, 0xd6, 0x9e, 0xcc, +}; +static const unsigned char kat2924_nonce[] = { + 0x70, 0x89, 0x12, 0x34, 0x65, 0x88, 0xfd, 0x18, +}; +static const unsigned char kat2924_persstr[] = { + 0x69, 0xe0, 0xf3, 0xe9, 0xfd, 0xc2, 0x80, 0xcc, 0xf3, 0xfc, 0xe3, 0xfd, + 0xf8, 0xa1, 0x5c, 0x38, +}; +static const unsigned char kat2924_entropyinpr1[] = { + 0x78, 0xdd, 0xc5, 0x74, 0x59, 0x06, 0x39, 0x1c, 0x8d, 0x70, 0xed, 0x86, + 0xa5, 0xba, 0xdb, 0x02, +}; +static const unsigned char kat2924_addinpr1[] = {0}; +static const unsigned char kat2924_entropyinpr2[] = { + 0x58, 0xf3, 0x5f, 0x3a, 0x03, 0xf1, 0xf4, 0x12, 0x6b, 0x6e, 0x5c, 0x87, + 0xa5, 0x03, 0x2a, 0xde, +}; +static const unsigned char kat2924_addinpr2[] = {0}; +static const unsigned char kat2924_retbits[] = { + 0xbb, 0x48, 0xab, 0x47, 0xd5, 0x1e, 0x67, 0xe4, 0xa7, 0x4c, 0x1c, 0xd5, + 0x2c, 0xf1, 0x08, 0xde, 0x5a, 0x2c, 0x6b, 0x70, 0x10, 0x7c, 0xa4, 0x7c, + 0x56, 0x81, 0xc6, 0xee, 0xe1, 0x9b, 0x88, 0x3b, 0x6e, 0x4d, 0x3b, 0x40, + 0x2d, 0xd6, 0xee, 0x77, 0xb9, 0x5a, 0xee, 0x02, 0x8d, 0x0e, 0x15, 0xa5, + 0x7d, 0x2e, 0xe2, 0xad, 0x94, 0x88, 0x58, 0x0a, 0x0c, 0x4f, 0xee, 0x37, + 0xf3, 0x2c, 0xf4, 0x52, +}; +static const struct drbg_kat_pr_true kat2924_t = { + 13, kat2924_entropyin, kat2924_nonce, kat2924_persstr, + kat2924_entropyinpr1, kat2924_addinpr1, kat2924_entropyinpr2, + kat2924_addinpr2, kat2924_retbits +}; +static const struct drbg_kat kat2924 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2924_t +}; + +static const unsigned char kat2925_entropyin[] = { + 0x26, 0x17, 0x29, 0x56, 0xbc, 0xde, 0x00, 0xd0, 0xc8, 0x4c, 0x17, 0xb6, + 0x7a, 0x24, 0x69, 0xa4, +}; +static const unsigned char kat2925_nonce[] = { + 0x1e, 0x2f, 0x11, 0x47, 0xe2, 0xcb, 0x87, 0x09, +}; +static const unsigned char kat2925_persstr[] = { + 0xa1, 0x24, 0xb1, 0xe8, 0x12, 0xe5, 0xe5, 0xd7, 0x65, 0x80, 0x75, 0x67, + 0xbd, 0x8c, 0x02, 0x38, +}; +static const unsigned char kat2925_entropyinpr1[] = { + 0x06, 0xfc, 0x13, 0xe6, 0x52, 0xea, 0x5c, 0xe0, 0x26, 0xbb, 0xc4, 0x65, + 0xb7, 0xbe, 0x6f, 0x6d, +}; +static const unsigned char kat2925_addinpr1[] = {0}; +static const unsigned char kat2925_entropyinpr2[] = { + 0xe8, 0x3a, 0x61, 0x80, 0x94, 0xad, 0x08, 0xef, 0x8c, 0xc4, 0x98, 0xa8, + 0xcc, 0xc9, 0x8e, 0xcf, +}; +static const unsigned char kat2925_addinpr2[] = {0}; +static const unsigned char kat2925_retbits[] = { + 0x9c, 0x98, 0x7f, 0x10, 0x64, 0x54, 0x53, 0x44, 0x11, 0x55, 0xa2, 0x3a, + 0xaf, 0x36, 0xda, 0xae, 0x90, 0x0b, 0xfa, 0x2c, 0x25, 0xe5, 0x71, 0xe6, + 0x8e, 0x2b, 0x93, 0x76, 0x5c, 0xf5, 0x53, 0x64, 0xf1, 0xaf, 0xca, 0xbf, + 0x49, 0x6a, 0x96, 0x2e, 0x57, 0xf7, 0xee, 0xf8, 0x41, 0x73, 0xed, 0xc9, + 0x5f, 0xdb, 0x1d, 0x8b, 0xbd, 0xed, 0x88, 0x19, 0x32, 0xdf, 0xa5, 0xa6, + 0xa8, 0x7e, 0x30, 0xdc, +}; +static const struct drbg_kat_pr_true kat2925_t = { + 14, kat2925_entropyin, kat2925_nonce, kat2925_persstr, + kat2925_entropyinpr1, kat2925_addinpr1, kat2925_entropyinpr2, + kat2925_addinpr2, kat2925_retbits +}; +static const struct drbg_kat kat2925 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2925_t +}; + +static const unsigned char kat2926_entropyin[] = { + 0x92, 0x89, 0x8f, 0x31, 0xfa, 0x1c, 0xff, 0x6d, 0x18, 0x2f, 0x26, 0x06, + 0x43, 0xdf, 0xf8, 0x18, +}; +static const unsigned char kat2926_nonce[] = { + 0xc2, 0xa4, 0xd9, 0x72, 0xc3, 0xb9, 0xb6, 0x97, +}; +static const unsigned char kat2926_persstr[] = { + 0xea, 0x65, 0xee, 0x60, 0x26, 0x4e, 0x7e, 0xb6, 0x0e, 0x82, 0x68, 0xc4, + 0x37, 0x3c, 0x5c, 0x0b, +}; +static const unsigned char kat2926_entropyinpr1[] = { + 0x20, 0x72, 0x8a, 0x06, 0xf8, 0x6f, 0x8d, 0xd4, 0x41, 0xe2, 0x72, 0xb7, + 0xc4, 0x2c, 0xe8, 0x10, +}; +static const unsigned char kat2926_addinpr1[] = { + 0x1a, 0x40, 0xfa, 0xe3, 0xcc, 0x6c, 0x7c, 0xa0, 0xf8, 0xda, 0xba, 0x59, + 0x23, 0x6d, 0xad, 0x1d, +}; +static const unsigned char kat2926_entropyinpr2[] = { + 0x3d, 0xb0, 0xf0, 0x94, 0xf3, 0x05, 0x50, 0x33, 0x17, 0x86, 0x3e, 0x22, + 0x08, 0xf7, 0xa5, 0x01, +}; +static const unsigned char kat2926_addinpr2[] = { + 0x9f, 0x72, 0x76, 0x6c, 0xc7, 0x46, 0xe5, 0xed, 0x2e, 0x53, 0x20, 0x12, + 0xbc, 0x59, 0x31, 0x8c, +}; +static const unsigned char kat2926_retbits[] = { + 0x5a, 0x35, 0x39, 0x87, 0x0f, 0x4d, 0x22, 0xa4, 0x09, 0x24, 0xee, 0x71, + 0xc9, 0x6f, 0xac, 0x72, 0x0a, 0xd6, 0xf0, 0x88, 0x82, 0xd0, 0x83, 0x28, + 0x73, 0xec, 0x3f, 0x93, 0xd8, 0xab, 0x45, 0x23, 0xf0, 0x7e, 0xac, 0x45, + 0x14, 0x5e, 0x93, 0x9f, 0xb1, 0xd6, 0x76, 0x43, 0x3d, 0xb6, 0xe8, 0x08, + 0x88, 0xf6, 0xda, 0x89, 0x08, 0x77, 0x42, 0xfe, 0x1a, 0xf4, 0x3f, 0xc4, + 0x23, 0xc5, 0x1f, 0x68, +}; +static const struct drbg_kat_pr_true kat2926_t = { + 0, kat2926_entropyin, kat2926_nonce, kat2926_persstr, + kat2926_entropyinpr1, kat2926_addinpr1, kat2926_entropyinpr2, + kat2926_addinpr2, kat2926_retbits +}; +static const struct drbg_kat kat2926 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2926_t +}; + +static const unsigned char kat2927_entropyin[] = { + 0xd7, 0x98, 0xba, 0xda, 0x1e, 0xf8, 0xc5, 0x00, 0xc0, 0xb8, 0xab, 0x01, + 0x9d, 0x9e, 0xf4, 0xc4, +}; +static const unsigned char kat2927_nonce[] = { + 0x94, 0xa9, 0x5f, 0xab, 0x75, 0x19, 0x75, 0x1e, +}; +static const unsigned char kat2927_persstr[] = { + 0x02, 0xdb, 0xf0, 0xd4, 0x25, 0x9d, 0x61, 0xd1, 0x3d, 0x02, 0xfd, 0xa3, + 0x8b, 0xa7, 0x08, 0x47, +}; +static const unsigned char kat2927_entropyinpr1[] = { + 0x43, 0xf6, 0x11, 0x98, 0x29, 0x9a, 0xed, 0xa5, 0x78, 0x44, 0xc6, 0x6a, + 0x06, 0xa3, 0x8d, 0xd5, +}; +static const unsigned char kat2927_addinpr1[] = { + 0x0e, 0x7c, 0x24, 0x7c, 0xa7, 0x04, 0xa4, 0xbe, 0x33, 0x68, 0x1b, 0xa2, + 0xe9, 0x25, 0xd8, 0x5f, +}; +static const unsigned char kat2927_entropyinpr2[] = { + 0x16, 0x1d, 0xda, 0xf0, 0x06, 0xc4, 0x8a, 0x7d, 0x2b, 0x57, 0xf6, 0x02, + 0x3a, 0x8b, 0x9c, 0x49, +}; +static const unsigned char kat2927_addinpr2[] = { + 0xf8, 0x99, 0x40, 0xb5, 0x44, 0xce, 0xcc, 0xf4, 0xb4, 0xd5, 0x20, 0xab, + 0x07, 0x13, 0x2e, 0xda, +}; +static const unsigned char kat2927_retbits[] = { + 0x2e, 0x9a, 0x75, 0xc3, 0xc6, 0x37, 0xc5, 0x7d, 0x8f, 0xdf, 0x66, 0x85, + 0xd5, 0xe3, 0x18, 0x97, 0x0d, 0x1e, 0xd0, 0x19, 0xf2, 0xd5, 0x1b, 0xdf, + 0x02, 0x42, 0xed, 0xe5, 0x58, 0x75, 0x11, 0xfd, 0xc0, 0x07, 0xfd, 0xe6, + 0x22, 0xe4, 0xa4, 0x7f, 0xb8, 0xab, 0x45, 0x84, 0xad, 0x26, 0xe4, 0x59, + 0x77, 0x6e, 0xab, 0x32, 0xa7, 0xc4, 0x85, 0x59, 0x8d, 0xc6, 0xc0, 0x30, + 0x43, 0x2f, 0xe1, 0xc5, +}; +static const struct drbg_kat_pr_true kat2927_t = { + 1, kat2927_entropyin, kat2927_nonce, kat2927_persstr, + kat2927_entropyinpr1, kat2927_addinpr1, kat2927_entropyinpr2, + kat2927_addinpr2, kat2927_retbits +}; +static const struct drbg_kat kat2927 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2927_t +}; + +static const unsigned char kat2928_entropyin[] = { + 0xbf, 0xc1, 0x0a, 0x9b, 0x7f, 0x1c, 0xe1, 0xcd, 0x72, 0x9f, 0x28, 0x50, + 0x5a, 0x3f, 0x6e, 0xf7, +}; +static const unsigned char kat2928_nonce[] = { + 0x2b, 0xaa, 0xd6, 0xb7, 0xb4, 0xb8, 0xae, 0xec, +}; +static const unsigned char kat2928_persstr[] = { + 0xfe, 0xbb, 0x0d, 0x7c, 0x74, 0xb2, 0x06, 0xba, 0xc7, 0xc8, 0xd2, 0x4f, + 0x29, 0x67, 0x1c, 0xf8, +}; +static const unsigned char kat2928_entropyinpr1[] = { + 0x91, 0x7f, 0xa1, 0xf6, 0xef, 0x83, 0x1f, 0x6c, 0x42, 0x5f, 0x95, 0xb0, + 0xed, 0x98, 0xe3, 0x56, +}; +static const unsigned char kat2928_addinpr1[] = { + 0x6d, 0x49, 0x7d, 0x06, 0x54, 0x30, 0xf1, 0x27, 0x14, 0xb2, 0xe0, 0xec, + 0x7e, 0xa5, 0x38, 0x70, +}; +static const unsigned char kat2928_entropyinpr2[] = { + 0x51, 0xcd, 0x65, 0xbd, 0x38, 0x1b, 0x24, 0x66, 0x32, 0x5a, 0x76, 0xc3, + 0x26, 0x34, 0x53, 0xcf, +}; +static const unsigned char kat2928_addinpr2[] = { + 0x46, 0xf4, 0xee, 0x11, 0x7e, 0xc6, 0x87, 0xa1, 0x19, 0x79, 0xe1, 0xee, + 0xf1, 0xb1, 0x44, 0xea, +}; +static const unsigned char kat2928_retbits[] = { + 0xa4, 0x00, 0x90, 0xe5, 0x85, 0x8a, 0x36, 0xfa, 0xed, 0x24, 0xbf, 0x97, + 0x42, 0x8f, 0x47, 0x52, 0x9b, 0x56, 0xe9, 0x47, 0xdc, 0xb6, 0x8d, 0xe9, + 0x8d, 0x48, 0xa0, 0xe3, 0x50, 0x8c, 0xbe, 0x13, 0x67, 0xd9, 0x7d, 0x3c, + 0x91, 0xd4, 0x92, 0x23, 0xe5, 0x7d, 0x1d, 0x2e, 0x95, 0x84, 0x89, 0x1c, + 0x76, 0xed, 0xae, 0x83, 0x79, 0x0a, 0xdd, 0xa6, 0x3c, 0x0f, 0x9f, 0x8f, + 0x3d, 0xb5, 0xd6, 0x1e, +}; +static const struct drbg_kat_pr_true kat2928_t = { + 2, kat2928_entropyin, kat2928_nonce, kat2928_persstr, + kat2928_entropyinpr1, kat2928_addinpr1, kat2928_entropyinpr2, + kat2928_addinpr2, kat2928_retbits +}; +static const struct drbg_kat kat2928 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2928_t +}; + +static const unsigned char kat2929_entropyin[] = { + 0x3e, 0xbc, 0xed, 0xe0, 0x8f, 0x00, 0x7d, 0xb7, 0x58, 0x3f, 0xbe, 0x3d, + 0xf9, 0x62, 0x1b, 0x5c, +}; +static const unsigned char kat2929_nonce[] = { + 0x99, 0xda, 0xf9, 0xd8, 0x75, 0x67, 0x13, 0x0b, +}; +static const unsigned char kat2929_persstr[] = { + 0x00, 0xb2, 0xd9, 0xd8, 0x0e, 0x93, 0xf1, 0xdf, 0x46, 0x46, 0x58, 0x2b, + 0x5c, 0x4f, 0xec, 0x6e, +}; +static const unsigned char kat2929_entropyinpr1[] = { + 0xc5, 0xfd, 0x08, 0x1b, 0xdd, 0xb9, 0x00, 0x64, 0x25, 0xea, 0xfc, 0xa4, + 0xb4, 0x58, 0xc9, 0xb5, +}; +static const unsigned char kat2929_addinpr1[] = { + 0x31, 0x81, 0xbb, 0x37, 0xdd, 0xef, 0xdf, 0xe6, 0x0f, 0x4c, 0x1c, 0xbf, + 0x4e, 0xfa, 0xfa, 0x81, +}; +static const unsigned char kat2929_entropyinpr2[] = { + 0x14, 0xae, 0x7a, 0x97, 0xa0, 0x68, 0xfe, 0x4c, 0xb2, 0xcb, 0x2d, 0xf0, + 0x31, 0x71, 0xcb, 0x6c, +}; +static const unsigned char kat2929_addinpr2[] = { + 0x06, 0xc5, 0xcb, 0xb3, 0x1b, 0xb4, 0xbc, 0xbc, 0xa6, 0x45, 0x1d, 0x1c, + 0xd0, 0xf3, 0x7c, 0x2e, +}; +static const unsigned char kat2929_retbits[] = { + 0xda, 0x93, 0xe6, 0xb8, 0x5d, 0xa8, 0x70, 0xd3, 0x47, 0xba, 0x80, 0xcd, + 0x3a, 0x71, 0x2e, 0xec, 0x9c, 0xa2, 0xed, 0xfc, 0x4e, 0xa3, 0x44, 0x4d, + 0x43, 0x6d, 0x82, 0x67, 0x7d, 0x5e, 0xa3, 0x5b, 0x6f, 0x41, 0x28, 0x35, + 0x2b, 0xbc, 0x85, 0x59, 0x9d, 0x12, 0x1b, 0xc4, 0xfd, 0xe6, 0xd0, 0x73, + 0x09, 0xa8, 0x04, 0x09, 0x89, 0xc0, 0xbf, 0x52, 0xbe, 0x39, 0x05, 0xb3, + 0x38, 0x70, 0x80, 0x51, +}; +static const struct drbg_kat_pr_true kat2929_t = { + 3, kat2929_entropyin, kat2929_nonce, kat2929_persstr, + kat2929_entropyinpr1, kat2929_addinpr1, kat2929_entropyinpr2, + kat2929_addinpr2, kat2929_retbits +}; +static const struct drbg_kat kat2929 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2929_t +}; + +static const unsigned char kat2930_entropyin[] = { + 0xb8, 0x37, 0xc0, 0x34, 0x01, 0xdf, 0x5e, 0xda, 0x47, 0xbc, 0x00, 0x4e, + 0xc7, 0xf5, 0x52, 0x94, +}; +static const unsigned char kat2930_nonce[] = { + 0xc0, 0x96, 0x98, 0xc3, 0x84, 0x2e, 0x88, 0xe2, +}; +static const unsigned char kat2930_persstr[] = { + 0x85, 0x5b, 0x6a, 0x93, 0xe7, 0xa7, 0x56, 0xe5, 0x0d, 0x2a, 0x84, 0xb2, + 0x2d, 0x79, 0xe4, 0xa6, +}; +static const unsigned char kat2930_entropyinpr1[] = { + 0xb3, 0x0d, 0xe7, 0xab, 0x1b, 0x17, 0x63, 0x69, 0xc6, 0x8e, 0x6a, 0x82, + 0x51, 0x6c, 0x6d, 0xe2, +}; +static const unsigned char kat2930_addinpr1[] = { + 0x71, 0xfe, 0xc9, 0x38, 0xfa, 0x84, 0x6d, 0x48, 0x93, 0x21, 0x1c, 0xd5, + 0x24, 0x79, 0x05, 0x5a, +}; +static const unsigned char kat2930_entropyinpr2[] = { + 0x54, 0x82, 0x37, 0x0c, 0x31, 0xde, 0xdb, 0x1a, 0x20, 0x05, 0x00, 0xeb, + 0xaf, 0x10, 0x38, 0x05, +}; +static const unsigned char kat2930_addinpr2[] = { + 0xba, 0x15, 0x1a, 0xbb, 0xe0, 0xc0, 0x19, 0x67, 0x71, 0xf1, 0x27, 0xb3, + 0xeb, 0xec, 0x43, 0x4d, +}; +static const unsigned char kat2930_retbits[] = { + 0x1c, 0x6f, 0x5f, 0xbd, 0xec, 0x55, 0x2d, 0xa3, 0xc7, 0xc9, 0x8a, 0x98, + 0xe2, 0x06, 0x8e, 0x99, 0x15, 0x07, 0xa8, 0x7d, 0x33, 0xa8, 0x3d, 0x7b, + 0x2b, 0xfc, 0x82, 0xac, 0xb3, 0x11, 0x28, 0x4c, 0xab, 0xdc, 0x87, 0xf4, + 0xe0, 0xf1, 0x9e, 0x2d, 0xef, 0x7d, 0x9c, 0xbe, 0x93, 0x5a, 0x97, 0x68, + 0xec, 0xb9, 0x8b, 0x32, 0x2c, 0x25, 0x6a, 0x14, 0x36, 0xe4, 0xd4, 0x19, + 0xeb, 0xea, 0x25, 0x90, +}; +static const struct drbg_kat_pr_true kat2930_t = { + 4, kat2930_entropyin, kat2930_nonce, kat2930_persstr, + kat2930_entropyinpr1, kat2930_addinpr1, kat2930_entropyinpr2, + kat2930_addinpr2, kat2930_retbits +}; +static const struct drbg_kat kat2930 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2930_t +}; + +static const unsigned char kat2931_entropyin[] = { + 0x97, 0x40, 0x23, 0x07, 0x30, 0x5f, 0xa9, 0x5c, 0x74, 0x2c, 0x4c, 0x73, + 0x93, 0xc7, 0x0c, 0x4e, +}; +static const unsigned char kat2931_nonce[] = { + 0x9e, 0x46, 0x08, 0x0e, 0x8a, 0xc6, 0x22, 0x0f, +}; +static const unsigned char kat2931_persstr[] = { + 0x1c, 0x11, 0x5b, 0xbc, 0x23, 0xe9, 0xe6, 0xf4, 0xe4, 0xd6, 0xc3, 0x4b, + 0xdd, 0xc1, 0x84, 0xfa, +}; +static const unsigned char kat2931_entropyinpr1[] = { + 0x02, 0x9d, 0x2c, 0xc1, 0x45, 0xbd, 0x93, 0xa5, 0x46, 0xe6, 0x3f, 0xc2, + 0x07, 0xad, 0xc5, 0x69, +}; +static const unsigned char kat2931_addinpr1[] = { + 0x0a, 0x3e, 0x01, 0xdc, 0x20, 0xfd, 0x04, 0xcc, 0x3d, 0xd4, 0xe5, 0x71, + 0x47, 0xcd, 0x28, 0x39, +}; +static const unsigned char kat2931_entropyinpr2[] = { + 0x0a, 0x2f, 0xc0, 0x5a, 0xb0, 0xea, 0x87, 0x56, 0xbb, 0x30, 0x8c, 0xfb, + 0x62, 0xc5, 0x6f, 0x11, +}; +static const unsigned char kat2931_addinpr2[] = { + 0x62, 0x3e, 0x7b, 0x7d, 0x01, 0xf8, 0x63, 0x40, 0x83, 0xa1, 0xa3, 0xac, + 0xb4, 0x12, 0xef, 0x36, +}; +static const unsigned char kat2931_retbits[] = { + 0xcf, 0xbf, 0x8a, 0x5d, 0xfd, 0xce, 0x0e, 0x29, 0x68, 0x5c, 0xc9, 0x51, + 0xad, 0x9b, 0x84, 0xbe, 0xbe, 0x6e, 0xff, 0x31, 0xb9, 0xce, 0xeb, 0xf1, + 0x8d, 0x17, 0x0d, 0x38, 0x22, 0x96, 0xf1, 0xaa, 0x65, 0x33, 0x24, 0x0f, + 0x6d, 0x5c, 0x7f, 0xeb, 0x7d, 0xdf, 0xc2, 0x63, 0x1d, 0xf5, 0xcc, 0xeb, + 0x58, 0x30, 0x06, 0xe5, 0x03, 0x5f, 0x21, 0xb9, 0x77, 0x7a, 0x0a, 0x8f, + 0xe5, 0x77, 0x59, 0x8b, +}; +static const struct drbg_kat_pr_true kat2931_t = { + 5, kat2931_entropyin, kat2931_nonce, kat2931_persstr, + kat2931_entropyinpr1, kat2931_addinpr1, kat2931_entropyinpr2, + kat2931_addinpr2, kat2931_retbits +}; +static const struct drbg_kat kat2931 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2931_t +}; + +static const unsigned char kat2932_entropyin[] = { + 0x79, 0x3c, 0xa4, 0x25, 0x3b, 0x56, 0x1a, 0x1e, 0xfe, 0x47, 0xae, 0xb9, + 0xcf, 0x04, 0xc7, 0x70, +}; +static const unsigned char kat2932_nonce[] = { + 0x2a, 0x34, 0x40, 0x43, 0xfb, 0xfd, 0x57, 0x21, +}; +static const unsigned char kat2932_persstr[] = { + 0x58, 0x8f, 0xd7, 0xcf, 0xcc, 0x02, 0x6e, 0x2b, 0x92, 0x12, 0xb4, 0xfb, + 0xa2, 0x1b, 0xe6, 0x2e, +}; +static const unsigned char kat2932_entropyinpr1[] = { + 0xe4, 0xe5, 0x79, 0x4c, 0xce, 0x72, 0x14, 0xe0, 0x30, 0x63, 0x4e, 0xec, + 0x14, 0x69, 0x0d, 0x2d, +}; +static const unsigned char kat2932_addinpr1[] = { + 0xf5, 0xd8, 0xdc, 0xd7, 0x62, 0x29, 0x63, 0xc1, 0xe8, 0xe1, 0x7d, 0xab, + 0xfa, 0xdc, 0x96, 0x56, +}; +static const unsigned char kat2932_entropyinpr2[] = { + 0x9f, 0xe6, 0xa7, 0xc0, 0xde, 0xbc, 0x3e, 0xe9, 0xec, 0x7b, 0x99, 0xf7, + 0xe4, 0xa7, 0x5e, 0x10, +}; +static const unsigned char kat2932_addinpr2[] = { + 0x81, 0x35, 0x32, 0xe1, 0x7d, 0xe6, 0x27, 0x57, 0xa5, 0x4c, 0x38, 0x17, + 0x86, 0xf0, 0xd7, 0xd1, +}; +static const unsigned char kat2932_retbits[] = { + 0x0c, 0xf1, 0xe8, 0x2c, 0xaa, 0x3f, 0x61, 0xee, 0xda, 0xeb, 0x97, 0xf8, + 0x49, 0xe1, 0x45, 0xa0, 0x28, 0x55, 0x60, 0x8e, 0x5b, 0x25, 0xfd, 0x29, + 0xf4, 0xe7, 0xa6, 0x41, 0xeb, 0x88, 0x7c, 0xa2, 0xcf, 0x11, 0xb1, 0x44, + 0xbc, 0x43, 0x20, 0xf2, 0x01, 0x6c, 0xdd, 0xda, 0x03, 0x8a, 0x5d, 0xb4, + 0xad, 0xb7, 0x70, 0xb1, 0x9d, 0xff, 0x0d, 0x2c, 0x5c, 0x4d, 0xb8, 0x87, + 0xce, 0x4b, 0x2a, 0xa6, +}; +static const struct drbg_kat_pr_true kat2932_t = { + 6, kat2932_entropyin, kat2932_nonce, kat2932_persstr, + kat2932_entropyinpr1, kat2932_addinpr1, kat2932_entropyinpr2, + kat2932_addinpr2, kat2932_retbits +}; +static const struct drbg_kat kat2932 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2932_t +}; + +static const unsigned char kat2933_entropyin[] = { + 0xd6, 0xfd, 0x7d, 0xfa, 0xbe, 0xc3, 0x2e, 0x0f, 0x4a, 0x03, 0x4d, 0x4e, + 0xdf, 0x98, 0xf4, 0xea, +}; +static const unsigned char kat2933_nonce[] = { + 0x5a, 0xe8, 0x7e, 0xd2, 0x44, 0x4c, 0xbb, 0x3c, +}; +static const unsigned char kat2933_persstr[] = { + 0x4e, 0x8c, 0xa8, 0xe9, 0x50, 0x72, 0x19, 0x9f, 0xd5, 0xe4, 0xa5, 0xe2, + 0x1d, 0x27, 0xfa, 0x16, +}; +static const unsigned char kat2933_entropyinpr1[] = { + 0xf0, 0x67, 0x7b, 0x3d, 0x14, 0x9a, 0x16, 0x8a, 0xa3, 0x7b, 0xf7, 0xf1, + 0xd9, 0x71, 0xb9, 0xb9, +}; +static const unsigned char kat2933_addinpr1[] = { + 0x41, 0xc2, 0xd5, 0x12, 0x54, 0xf3, 0xc3, 0x6d, 0x4b, 0xdb, 0x73, 0xbb, + 0x58, 0x58, 0x32, 0x88, +}; +static const unsigned char kat2933_entropyinpr2[] = { + 0xb3, 0x8a, 0xa0, 0x38, 0xe0, 0x8a, 0xf3, 0x62, 0x2f, 0x2b, 0x64, 0x9c, + 0xc0, 0x96, 0xbe, 0xb6, +}; +static const unsigned char kat2933_addinpr2[] = { + 0x24, 0xed, 0x03, 0x32, 0x2c, 0x8a, 0x88, 0x0c, 0x43, 0xa4, 0x18, 0xe0, + 0xcb, 0x01, 0x60, 0x3f, +}; +static const unsigned char kat2933_retbits[] = { + 0xcf, 0xa3, 0xaf, 0xd3, 0x4a, 0x95, 0xbd, 0x2c, 0x7a, 0x52, 0x86, 0x1c, + 0xb4, 0xa5, 0x87, 0x75, 0x05, 0xba, 0x62, 0x65, 0xf4, 0xe4, 0xea, 0xc9, + 0xce, 0x84, 0xc5, 0xa1, 0x91, 0xce, 0x61, 0x69, 0xa6, 0xaf, 0x5b, 0x17, + 0x49, 0x79, 0x71, 0x67, 0xe1, 0xb9, 0x09, 0x5b, 0x2b, 0xd2, 0x16, 0xc2, + 0xab, 0xfd, 0xb6, 0x04, 0x79, 0x78, 0xd6, 0xef, 0x59, 0x05, 0xe8, 0xa1, + 0x52, 0x71, 0x1c, 0x45, +}; +static const struct drbg_kat_pr_true kat2933_t = { + 7, kat2933_entropyin, kat2933_nonce, kat2933_persstr, + kat2933_entropyinpr1, kat2933_addinpr1, kat2933_entropyinpr2, + kat2933_addinpr2, kat2933_retbits +}; +static const struct drbg_kat kat2933 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2933_t +}; + +static const unsigned char kat2934_entropyin[] = { + 0x84, 0x89, 0xfb, 0xc6, 0xce, 0x65, 0xe2, 0x34, 0x48, 0x00, 0x30, 0x8d, + 0x71, 0xee, 0xa1, 0x1e, +}; +static const unsigned char kat2934_nonce[] = { + 0xc3, 0xda, 0xd8, 0x78, 0x9d, 0xe4, 0x36, 0xad, +}; +static const unsigned char kat2934_persstr[] = { + 0xce, 0x6e, 0xed, 0xf8, 0x29, 0xc5, 0x2b, 0xe3, 0x31, 0x2b, 0x1b, 0xcd, + 0x6d, 0x73, 0xe6, 0xce, +}; +static const unsigned char kat2934_entropyinpr1[] = { + 0x74, 0x02, 0x68, 0x14, 0x20, 0x55, 0x8e, 0x72, 0x0d, 0x14, 0xdc, 0xfa, + 0x55, 0x79, 0xc1, 0x92, +}; +static const unsigned char kat2934_addinpr1[] = { + 0x55, 0x06, 0x42, 0x96, 0x41, 0xa8, 0x13, 0x29, 0xa0, 0x45, 0xd7, 0x31, + 0x81, 0x08, 0xfe, 0x21, +}; +static const unsigned char kat2934_entropyinpr2[] = { + 0xf9, 0xc4, 0xdf, 0xac, 0x5a, 0x0d, 0xc1, 0x10, 0x0d, 0xe5, 0x12, 0x1f, + 0xb7, 0x15, 0x4e, 0x64, +}; +static const unsigned char kat2934_addinpr2[] = { + 0xc4, 0xd8, 0xda, 0x70, 0x5d, 0x11, 0x4b, 0x39, 0x15, 0x3d, 0xf8, 0x0e, + 0xcc, 0x47, 0xf9, 0x14, +}; +static const unsigned char kat2934_retbits[] = { + 0x53, 0xc4, 0x7c, 0xc3, 0x67, 0x18, 0x6a, 0x97, 0x57, 0x4b, 0xfb, 0xc6, + 0xa4, 0x20, 0xfc, 0xb8, 0x77, 0x5f, 0xa6, 0x27, 0x6e, 0x57, 0x31, 0x7e, + 0x87, 0x3f, 0x8b, 0x21, 0xac, 0x35, 0x02, 0xb2, 0xbe, 0x7a, 0x88, 0x28, + 0x8d, 0x6f, 0x47, 0xae, 0xbb, 0xe6, 0xce, 0xba, 0x89, 0xb0, 0xcd, 0xf5, + 0x4d, 0x74, 0x08, 0xf7, 0x0d, 0xa5, 0xb6, 0x49, 0x33, 0x8c, 0x6c, 0x18, + 0x8c, 0xa5, 0xe4, 0xe1, +}; +static const struct drbg_kat_pr_true kat2934_t = { + 8, kat2934_entropyin, kat2934_nonce, kat2934_persstr, + kat2934_entropyinpr1, kat2934_addinpr1, kat2934_entropyinpr2, + kat2934_addinpr2, kat2934_retbits +}; +static const struct drbg_kat kat2934 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2934_t +}; + +static const unsigned char kat2935_entropyin[] = { + 0xf2, 0xc5, 0x10, 0x40, 0x48, 0x38, 0x16, 0x37, 0xb0, 0x4d, 0x7d, 0xb6, + 0x79, 0x1c, 0xf4, 0x65, +}; +static const unsigned char kat2935_nonce[] = { + 0xd1, 0xf5, 0x74, 0x24, 0x91, 0x84, 0x4e, 0x0d, +}; +static const unsigned char kat2935_persstr[] = { + 0xa7, 0x5c, 0xbd, 0xb4, 0xa3, 0xe4, 0xf8, 0x0b, 0x12, 0x71, 0xb6, 0xb1, + 0x83, 0xa3, 0x22, 0x25, +}; +static const unsigned char kat2935_entropyinpr1[] = { + 0x49, 0xed, 0x0c, 0x1b, 0x03, 0x94, 0x25, 0xab, 0x7c, 0xf4, 0xd5, 0x4f, + 0xf0, 0xa4, 0xfc, 0x2f, +}; +static const unsigned char kat2935_addinpr1[] = { + 0xe2, 0xb6, 0x67, 0x05, 0xce, 0x58, 0x33, 0xb5, 0x7d, 0x0f, 0xec, 0x8b, + 0x31, 0x6e, 0x26, 0x8c, +}; +static const unsigned char kat2935_entropyinpr2[] = { + 0x87, 0x66, 0xc2, 0x8f, 0xb8, 0x69, 0x24, 0x58, 0x5d, 0xa5, 0xd0, 0xa3, + 0x9d, 0xa6, 0x82, 0x4e, +}; +static const unsigned char kat2935_addinpr2[] = { + 0xa6, 0xe7, 0x05, 0x70, 0x79, 0x36, 0xb4, 0x3f, 0x4c, 0xdb, 0x2b, 0x66, + 0x13, 0xb6, 0x67, 0x82, +}; +static const unsigned char kat2935_retbits[] = { + 0x24, 0xd4, 0x87, 0xd2, 0x5b, 0x16, 0x80, 0x45, 0xcd, 0x4d, 0x16, 0x16, + 0xd6, 0xed, 0xef, 0x64, 0x93, 0x56, 0x09, 0x15, 0xa7, 0xf2, 0x8c, 0x77, + 0x25, 0x28, 0x82, 0x87, 0xa1, 0xef, 0xb8, 0xa2, 0x98, 0xf1, 0xc5, 0x6d, + 0x7f, 0x15, 0xa6, 0x09, 0xd7, 0xc1, 0xb3, 0x83, 0xe6, 0xf0, 0x0b, 0xb0, + 0xf1, 0x0f, 0xa9, 0x5b, 0xc4, 0xd9, 0xd8, 0x4c, 0x14, 0x07, 0x09, 0xd2, + 0xf2, 0xbf, 0x28, 0x52, +}; +static const struct drbg_kat_pr_true kat2935_t = { + 9, kat2935_entropyin, kat2935_nonce, kat2935_persstr, + kat2935_entropyinpr1, kat2935_addinpr1, kat2935_entropyinpr2, + kat2935_addinpr2, kat2935_retbits +}; +static const struct drbg_kat kat2935 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2935_t +}; + +static const unsigned char kat2936_entropyin[] = { + 0xb9, 0xc9, 0x43, 0x58, 0x3a, 0xac, 0x7c, 0xf5, 0x60, 0x3f, 0xd5, 0x51, + 0xe3, 0x95, 0x67, 0x5a, +}; +static const unsigned char kat2936_nonce[] = { + 0x05, 0x89, 0x6f, 0x44, 0x8f, 0xc7, 0x46, 0x6d, +}; +static const unsigned char kat2936_persstr[] = { + 0x8f, 0xe1, 0x7f, 0x91, 0xa5, 0x3c, 0x3e, 0x4f, 0xce, 0x93, 0xcb, 0xf9, + 0x9a, 0x94, 0xf5, 0x70, +}; +static const unsigned char kat2936_entropyinpr1[] = { + 0xe8, 0xa3, 0xbb, 0xc5, 0xfa, 0x85, 0x94, 0x5d, 0x42, 0xa6, 0xe2, 0x9d, + 0x67, 0x0a, 0xf7, 0xe5, +}; +static const unsigned char kat2936_addinpr1[] = { + 0x74, 0x63, 0x79, 0xe0, 0xce, 0xe0, 0x2b, 0xd1, 0xc0, 0x93, 0x78, 0x9d, + 0xea, 0x8b, 0x95, 0x05, +}; +static const unsigned char kat2936_entropyinpr2[] = { + 0x7a, 0x17, 0x23, 0x53, 0x0a, 0xfa, 0x33, 0xf3, 0x0e, 0xc6, 0xf6, 0xf2, + 0xe7, 0x45, 0xa6, 0x59, +}; +static const unsigned char kat2936_addinpr2[] = { + 0xd5, 0x14, 0xc3, 0x9c, 0x34, 0xd2, 0x8a, 0x48, 0xf2, 0x64, 0x3f, 0xc0, + 0x4d, 0xfe, 0x6c, 0xff, +}; +static const unsigned char kat2936_retbits[] = { + 0xf6, 0x69, 0x34, 0xeb, 0x5a, 0x86, 0x52, 0xa4, 0x4f, 0x65, 0x0e, 0xf8, + 0xd0, 0xc1, 0x16, 0x76, 0xa8, 0x02, 0x50, 0xc9, 0xaf, 0xc8, 0xa0, 0xa8, + 0xea, 0xfb, 0x88, 0xbb, 0xa9, 0x37, 0x65, 0xce, 0xb3, 0xd7, 0x1f, 0xc6, + 0xc4, 0x00, 0xde, 0x14, 0xa2, 0xe6, 0xee, 0x8e, 0x99, 0x20, 0xe1, 0xce, + 0x4a, 0xfc, 0x19, 0xbb, 0xa3, 0xaf, 0xdf, 0x46, 0x21, 0x0d, 0xae, 0x73, + 0xa7, 0x06, 0x42, 0xc6, +}; +static const struct drbg_kat_pr_true kat2936_t = { + 10, kat2936_entropyin, kat2936_nonce, kat2936_persstr, + kat2936_entropyinpr1, kat2936_addinpr1, kat2936_entropyinpr2, + kat2936_addinpr2, kat2936_retbits +}; +static const struct drbg_kat kat2936 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2936_t +}; + +static const unsigned char kat2937_entropyin[] = { + 0x42, 0xec, 0x11, 0x52, 0x2a, 0x7b, 0xcb, 0x36, 0x91, 0x77, 0x34, 0xf9, + 0x02, 0x01, 0xe9, 0xe7, +}; +static const unsigned char kat2937_nonce[] = { + 0x57, 0x1b, 0xb2, 0x0d, 0xc9, 0xeb, 0xd2, 0xdf, +}; +static const unsigned char kat2937_persstr[] = { + 0x36, 0x10, 0xa7, 0xd5, 0xa5, 0x77, 0x2b, 0x33, 0x78, 0x8e, 0x24, 0xbb, + 0x32, 0xec, 0x1b, 0x9c, +}; +static const unsigned char kat2937_entropyinpr1[] = { + 0xba, 0x13, 0xd5, 0x08, 0xda, 0x95, 0xd9, 0x81, 0x2d, 0xbe, 0x03, 0x31, + 0xba, 0x7a, 0xf7, 0x05, +}; +static const unsigned char kat2937_addinpr1[] = { + 0xd5, 0x6e, 0x9d, 0x8f, 0xad, 0xc1, 0x8b, 0x16, 0x30, 0x87, 0x69, 0xef, + 0x68, 0x6a, 0xbd, 0x8a, +}; +static const unsigned char kat2937_entropyinpr2[] = { + 0x69, 0x5c, 0xd3, 0xa5, 0xdd, 0x18, 0x96, 0x43, 0x4a, 0xc5, 0xbc, 0xa8, + 0xbc, 0x2a, 0x0b, 0xbf, +}; +static const unsigned char kat2937_addinpr2[] = { + 0x1e, 0xd7, 0x50, 0x6e, 0xa1, 0x36, 0xda, 0x45, 0x64, 0x9f, 0xb8, 0xc8, + 0xcc, 0x39, 0x28, 0xd6, +}; +static const unsigned char kat2937_retbits[] = { + 0x50, 0xee, 0x3e, 0x35, 0xfe, 0x18, 0x23, 0x22, 0x59, 0x71, 0x46, 0xbd, + 0x8b, 0xb4, 0x84, 0xe5, 0xdc, 0xc0, 0xd2, 0x06, 0x32, 0x7a, 0x65, 0x32, + 0xdf, 0x40, 0x02, 0xfa, 0xb0, 0xe6, 0x3e, 0x37, 0x99, 0x27, 0x79, 0x76, + 0xca, 0x71, 0x8b, 0xd0, 0x2e, 0x7a, 0x81, 0x5f, 0xb6, 0x4f, 0x19, 0xa3, + 0x84, 0x4c, 0x3e, 0x0d, 0x09, 0x10, 0x35, 0xc7, 0xfc, 0x08, 0x9b, 0x85, + 0x1e, 0x14, 0x20, 0x0e, +}; +static const struct drbg_kat_pr_true kat2937_t = { + 11, kat2937_entropyin, kat2937_nonce, kat2937_persstr, + kat2937_entropyinpr1, kat2937_addinpr1, kat2937_entropyinpr2, + kat2937_addinpr2, kat2937_retbits +}; +static const struct drbg_kat kat2937 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2937_t +}; + +static const unsigned char kat2938_entropyin[] = { + 0xd7, 0xfa, 0x8b, 0xef, 0x68, 0x1e, 0x5a, 0xeb, 0xc6, 0x0c, 0x11, 0xf9, + 0xd2, 0x69, 0x8c, 0x9d, +}; +static const unsigned char kat2938_nonce[] = { + 0xef, 0xa0, 0x1a, 0xcd, 0xf0, 0xfc, 0xfa, 0x2a, +}; +static const unsigned char kat2938_persstr[] = { + 0x13, 0x0c, 0x39, 0x7b, 0x6b, 0x53, 0x26, 0x84, 0xbb, 0xd4, 0x20, 0xb0, + 0xee, 0x3d, 0xc9, 0x13, +}; +static const unsigned char kat2938_entropyinpr1[] = { + 0x04, 0x2d, 0x40, 0x1c, 0xff, 0xd7, 0x3c, 0x96, 0xe3, 0xdd, 0x75, 0x90, + 0x45, 0x23, 0x08, 0x77, +}; +static const unsigned char kat2938_addinpr1[] = { + 0x81, 0xed, 0xbd, 0x6b, 0xa4, 0x1d, 0x76, 0x94, 0x72, 0xf9, 0x10, 0x6c, + 0xd4, 0xea, 0x1a, 0x00, +}; +static const unsigned char kat2938_entropyinpr2[] = { + 0x3c, 0xb0, 0x20, 0x52, 0x39, 0x5d, 0xd4, 0x05, 0x78, 0x71, 0x36, 0x86, + 0x97, 0x1f, 0x3a, 0x0e, +}; +static const unsigned char kat2938_addinpr2[] = { + 0xe3, 0x5f, 0xa9, 0x18, 0x9b, 0x83, 0x59, 0x2e, 0xaf, 0xa0, 0x59, 0x93, + 0x47, 0x78, 0x92, 0xe9, +}; +static const unsigned char kat2938_retbits[] = { + 0x80, 0xc7, 0xc3, 0x91, 0xfe, 0x17, 0x07, 0x80, 0xda, 0xbb, 0x3e, 0xff, + 0x1c, 0x58, 0x51, 0x0c, 0x4a, 0xd5, 0x1f, 0xe6, 0x53, 0xa5, 0x24, 0xc6, + 0x60, 0x05, 0x3d, 0x79, 0xb7, 0xc4, 0x36, 0xa3, 0x9f, 0x5f, 0xfb, 0x39, + 0x5b, 0xf1, 0x45, 0x52, 0x4b, 0x67, 0x77, 0xa8, 0x05, 0xea, 0x55, 0xd0, + 0x57, 0xd6, 0x78, 0x64, 0x4d, 0x3a, 0xb8, 0xc1, 0xbd, 0xef, 0xa8, 0x82, + 0xb0, 0x28, 0x92, 0x2f, +}; +static const struct drbg_kat_pr_true kat2938_t = { + 12, kat2938_entropyin, kat2938_nonce, kat2938_persstr, + kat2938_entropyinpr1, kat2938_addinpr1, kat2938_entropyinpr2, + kat2938_addinpr2, kat2938_retbits +}; +static const struct drbg_kat kat2938 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2938_t +}; + +static const unsigned char kat2939_entropyin[] = { + 0xe0, 0xb6, 0xfd, 0x09, 0xb0, 0xd6, 0x28, 0x25, 0xa4, 0x50, 0x8a, 0x64, + 0x47, 0x03, 0x58, 0xd7, +}; +static const unsigned char kat2939_nonce[] = { + 0x82, 0xba, 0x18, 0xb2, 0x81, 0x61, 0xe8, 0xf2, +}; +static const unsigned char kat2939_persstr[] = { + 0x89, 0x12, 0x7e, 0xce, 0xcf, 0xb4, 0x31, 0x75, 0xed, 0x8c, 0x34, 0x07, + 0xc2, 0x45, 0x65, 0xb1, +}; +static const unsigned char kat2939_entropyinpr1[] = { + 0x9c, 0xbc, 0x7f, 0xbe, 0x7a, 0xa1, 0xe4, 0x06, 0xd1, 0x3a, 0x73, 0x65, + 0xfb, 0x6a, 0xcb, 0x2e, +}; +static const unsigned char kat2939_addinpr1[] = { + 0xac, 0xe8, 0xe6, 0x4b, 0x3f, 0xcc, 0x68, 0x4b, 0x40, 0x47, 0x12, 0x19, + 0x3b, 0x12, 0xdd, 0xb2, +}; +static const unsigned char kat2939_entropyinpr2[] = { + 0xce, 0xa2, 0xe7, 0x8c, 0x5a, 0xd1, 0x7c, 0x21, 0x5a, 0xf5, 0x2c, 0x88, + 0xdd, 0xf3, 0xe1, 0xc1, +}; +static const unsigned char kat2939_addinpr2[] = { + 0x8c, 0x71, 0x17, 0x6b, 0xb6, 0x18, 0x52, 0x9d, 0xaf, 0xce, 0x7d, 0xeb, + 0xe7, 0x5d, 0x2c, 0x50, +}; +static const unsigned char kat2939_retbits[] = { + 0x0a, 0xd6, 0x1a, 0xf4, 0x15, 0xf0, 0x85, 0xae, 0xb2, 0xa6, 0x02, 0xdf, + 0x71, 0xbb, 0x16, 0xd9, 0xa4, 0x71, 0x4f, 0xa0, 0xd2, 0xe8, 0x06, 0xd0, + 0xec, 0x79, 0xdf, 0x0b, 0xac, 0xc5, 0xb4, 0xd7, 0xad, 0xbc, 0x78, 0xeb, + 0x8c, 0xf1, 0x35, 0x2b, 0xa4, 0xa8, 0xc7, 0xef, 0x29, 0x3b, 0x32, 0x1d, + 0x61, 0x0b, 0x34, 0xf7, 0x00, 0xcf, 0x43, 0x42, 0x2e, 0x2f, 0x61, 0x84, + 0x81, 0x61, 0x3f, 0xfb, +}; +static const struct drbg_kat_pr_true kat2939_t = { + 13, kat2939_entropyin, kat2939_nonce, kat2939_persstr, + kat2939_entropyinpr1, kat2939_addinpr1, kat2939_entropyinpr2, + kat2939_addinpr2, kat2939_retbits +}; +static const struct drbg_kat kat2939 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2939_t +}; + +static const unsigned char kat2940_entropyin[] = { + 0x8d, 0x53, 0xf0, 0xc2, 0xd6, 0x75, 0x55, 0x8b, 0xa8, 0x78, 0xb4, 0x69, + 0xc3, 0xce, 0x18, 0x6f, +}; +static const unsigned char kat2940_nonce[] = { + 0xf5, 0x88, 0xbf, 0xb8, 0x64, 0x95, 0xa5, 0xd1, +}; +static const unsigned char kat2940_persstr[] = { + 0xb2, 0x93, 0xd5, 0x7c, 0xde, 0x9b, 0x4b, 0x29, 0x77, 0x40, 0xbd, 0x81, + 0xfa, 0xb7, 0xa3, 0x8f, +}; +static const unsigned char kat2940_entropyinpr1[] = { + 0x5f, 0x5e, 0x92, 0x38, 0x11, 0xd6, 0xf6, 0x0d, 0x65, 0x06, 0x93, 0xcc, + 0xb3, 0x86, 0x21, 0x0d, +}; +static const unsigned char kat2940_addinpr1[] = { + 0x85, 0xae, 0x16, 0xbb, 0x0e, 0x44, 0x7a, 0xd6, 0xd1, 0x40, 0x32, 0x37, + 0x6e, 0xf4, 0x2c, 0x74, +}; +static const unsigned char kat2940_entropyinpr2[] = { + 0xd6, 0xac, 0x26, 0x45, 0x11, 0x58, 0x6e, 0x8e, 0xb4, 0x8f, 0x42, 0x87, + 0xa1, 0x2a, 0x36, 0x20, +}; +static const unsigned char kat2940_addinpr2[] = { + 0x8d, 0xb4, 0x2a, 0x45, 0xd6, 0xfe, 0xaf, 0xc0, 0x79, 0xae, 0xf7, 0x01, + 0x54, 0x1c, 0x27, 0xdd, +}; +static const unsigned char kat2940_retbits[] = { + 0x15, 0xb8, 0xe7, 0xe6, 0xa8, 0x0c, 0x0f, 0xbb, 0x23, 0xe7, 0x4f, 0x4b, + 0x70, 0xb8, 0xa1, 0xd6, 0xdc, 0x22, 0x47, 0x2b, 0x6c, 0x38, 0x94, 0x85, + 0xee, 0x25, 0x2e, 0xc2, 0xf2, 0x4d, 0x85, 0x6f, 0xd0, 0x79, 0xa7, 0x52, + 0xf4, 0x73, 0xc0, 0x50, 0x48, 0xc1, 0x2c, 0x74, 0x90, 0x80, 0x9c, 0x99, + 0x43, 0xe2, 0x1a, 0x74, 0x36, 0xe7, 0x56, 0xf4, 0x4c, 0x9d, 0x6d, 0x41, + 0xe1, 0xcc, 0x9c, 0xa9, +}; +static const struct drbg_kat_pr_true kat2940_t = { + 14, kat2940_entropyin, kat2940_nonce, kat2940_persstr, + kat2940_entropyinpr1, kat2940_addinpr1, kat2940_entropyinpr2, + kat2940_addinpr2, kat2940_retbits +}; +static const struct drbg_kat kat2940 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2940_t +}; + +static const unsigned char kat2941_entropyin[] = { + 0x20, 0x6e, 0x2b, 0x3b, 0xc5, 0x9f, 0xe3, 0xc1, 0x0b, 0xf9, 0xb8, 0x71, + 0xee, 0x21, 0xa2, 0x01, +}; +static const unsigned char kat2941_nonce[] = { + 0x76, 0x7b, 0x5f, 0x7d, 0xea, 0xc6, 0x2a, 0x6a, +}; +static const unsigned char kat2941_persstr[] = {0}; +static const unsigned char kat2941_entropyinpr1[] = { + 0x78, 0x9e, 0xe8, 0xab, 0x34, 0x3d, 0x47, 0x77, 0x8c, 0x85, 0x52, 0x6b, + 0x58, 0x8f, 0xc6, 0x9a, +}; +static const unsigned char kat2941_addinpr1[] = {0}; +static const unsigned char kat2941_entropyinpr2[] = { + 0x7b, 0x24, 0x9b, 0x36, 0x29, 0x5f, 0x64, 0x6b, 0x91, 0x1a, 0x9f, 0xf4, + 0x1f, 0x5f, 0xb6, 0x79, +}; +static const unsigned char kat2941_addinpr2[] = {0}; +static const unsigned char kat2941_retbits[] = { + 0xad, 0x2a, 0xd2, 0x81, 0x7b, 0xb0, 0xcd, 0xa5, 0xb6, 0x45, 0x72, 0x07, + 0x85, 0xc5, 0xb6, 0x74, 0x93, 0xca, 0xe2, 0x99, 0x19, 0xec, 0x7d, 0x84, + 0x54, 0x2d, 0x6b, 0x48, 0xe8, 0xad, 0xb8, 0x9c, 0x9d, 0x82, 0xd0, 0xe8, + 0x55, 0x94, 0xa3, 0x5b, 0xad, 0x9f, 0xda, 0x8b, 0x15, 0x78, 0x09, 0x57, + 0x4e, 0x74, 0xbf, 0x4b, 0x49, 0xf3, 0x86, 0x4c, 0x70, 0xd5, 0xd4, 0x9c, + 0x5a, 0x88, 0xcb, 0x17, +}; +static const struct drbg_kat_pr_true kat2941_t = { + 0, kat2941_entropyin, kat2941_nonce, kat2941_persstr, + kat2941_entropyinpr1, kat2941_addinpr1, kat2941_entropyinpr2, + kat2941_addinpr2, kat2941_retbits +}; +static const struct drbg_kat kat2941 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2941_t +}; + +static const unsigned char kat2942_entropyin[] = { + 0x62, 0xe7, 0x7e, 0x2f, 0x81, 0x75, 0x7d, 0x2a, 0xeb, 0xee, 0xd6, 0x13, + 0xa5, 0x73, 0xce, 0x6a, +}; +static const unsigned char kat2942_nonce[] = { + 0xe8, 0x8c, 0x08, 0x44, 0x82, 0x35, 0x97, 0xef, +}; +static const unsigned char kat2942_persstr[] = {0}; +static const unsigned char kat2942_entropyinpr1[] = { + 0x54, 0x56, 0xfc, 0x92, 0xb1, 0x5d, 0xbb, 0x26, 0x99, 0xe4, 0x37, 0xc0, + 0xe4, 0x90, 0x83, 0xe1, +}; +static const unsigned char kat2942_addinpr1[] = {0}; +static const unsigned char kat2942_entropyinpr2[] = { + 0x9f, 0xa1, 0x0b, 0x21, 0x21, 0x40, 0xb4, 0xef, 0x18, 0xee, 0xe4, 0x42, + 0x2c, 0x6f, 0x50, 0xe7, +}; +static const unsigned char kat2942_addinpr2[] = {0}; +static const unsigned char kat2942_retbits[] = { + 0x5c, 0x2e, 0xdf, 0xba, 0x23, 0x79, 0xdd, 0xaf, 0x2c, 0x14, 0x35, 0x27, + 0xe8, 0x52, 0x8e, 0xf5, 0x04, 0xee, 0x6e, 0x33, 0x91, 0x33, 0x75, 0x20, + 0xf8, 0x6d, 0xe2, 0xfb, 0x07, 0x7b, 0x71, 0xc7, 0xe0, 0x4a, 0x9b, 0x84, + 0xbe, 0x68, 0x49, 0x69, 0xed, 0x97, 0xac, 0xf3, 0xb5, 0x0a, 0x01, 0xa0, + 0x59, 0xd0, 0xa1, 0xe3, 0x4a, 0x58, 0x4b, 0xaa, 0x26, 0x0a, 0x07, 0x9a, + 0x6b, 0xd3, 0x31, 0xd2, +}; +static const struct drbg_kat_pr_true kat2942_t = { + 1, kat2942_entropyin, kat2942_nonce, kat2942_persstr, + kat2942_entropyinpr1, kat2942_addinpr1, kat2942_entropyinpr2, + kat2942_addinpr2, kat2942_retbits +}; +static const struct drbg_kat kat2942 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2942_t +}; + +static const unsigned char kat2943_entropyin[] = { + 0xc1, 0x9e, 0xc3, 0xec, 0x81, 0x86, 0xaf, 0x49, 0xe0, 0xa1, 0x1c, 0x24, + 0x5a, 0x95, 0x07, 0x4e, +}; +static const unsigned char kat2943_nonce[] = { + 0xcb, 0x8d, 0xd8, 0x9f, 0x52, 0xe9, 0x69, 0x1a, +}; +static const unsigned char kat2943_persstr[] = {0}; +static const unsigned char kat2943_entropyinpr1[] = { + 0xf3, 0xb4, 0xe3, 0x11, 0xf9, 0x0b, 0x1c, 0xe8, 0x17, 0x1c, 0x0f, 0xa6, + 0x86, 0x1e, 0xc7, 0xa6, +}; +static const unsigned char kat2943_addinpr1[] = {0}; +static const unsigned char kat2943_entropyinpr2[] = { + 0x5a, 0x39, 0x23, 0x1c, 0x9e, 0x0a, 0xe1, 0x03, 0xa6, 0xe3, 0x89, 0xe9, + 0x15, 0x44, 0xae, 0x05, +}; +static const unsigned char kat2943_addinpr2[] = {0}; +static const unsigned char kat2943_retbits[] = { + 0x9e, 0x66, 0x47, 0xab, 0x96, 0x2f, 0x11, 0xce, 0xec, 0x89, 0xe1, 0x88, + 0x30, 0xc9, 0xc2, 0x40, 0x48, 0x75, 0xbb, 0xc4, 0xdb, 0x50, 0x09, 0x34, + 0x61, 0xc9, 0x55, 0x69, 0x73, 0xce, 0xd0, 0x20, 0xd9, 0x57, 0x4a, 0x03, + 0x91, 0x46, 0x89, 0x6d, 0xf2, 0xaf, 0xc5, 0x36, 0x38, 0x90, 0x40, 0xe8, + 0x12, 0xab, 0x14, 0xa2, 0xdb, 0x2b, 0x3f, 0xf8, 0xfa, 0x28, 0xda, 0x75, + 0xc1, 0xd6, 0xcb, 0x04, +}; +static const struct drbg_kat_pr_true kat2943_t = { + 2, kat2943_entropyin, kat2943_nonce, kat2943_persstr, + kat2943_entropyinpr1, kat2943_addinpr1, kat2943_entropyinpr2, + kat2943_addinpr2, kat2943_retbits +}; +static const struct drbg_kat kat2943 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2943_t +}; + +static const unsigned char kat2944_entropyin[] = { + 0x04, 0x9b, 0x1d, 0x88, 0xcc, 0xe0, 0x6f, 0xe7, 0xe5, 0xd3, 0x15, 0x24, + 0xc2, 0xb2, 0x5a, 0xcd, +}; +static const unsigned char kat2944_nonce[] = { + 0xe9, 0x6e, 0x1e, 0x12, 0xd2, 0xaa, 0xec, 0xe0, +}; +static const unsigned char kat2944_persstr[] = {0}; +static const unsigned char kat2944_entropyinpr1[] = { + 0xc1, 0xc8, 0xc6, 0x9c, 0xd7, 0xc2, 0x8e, 0xbb, 0xdf, 0x81, 0x11, 0x0f, + 0xc3, 0xe5, 0x4a, 0x78, +}; +static const unsigned char kat2944_addinpr1[] = {0}; +static const unsigned char kat2944_entropyinpr2[] = { + 0x9b, 0xed, 0xc5, 0x92, 0x4a, 0x7e, 0xec, 0x9b, 0x60, 0xc5, 0x60, 0x64, + 0xaa, 0x51, 0x27, 0x89, +}; +static const unsigned char kat2944_addinpr2[] = {0}; +static const unsigned char kat2944_retbits[] = { + 0x95, 0x8f, 0x4e, 0xd1, 0x73, 0x26, 0xec, 0x30, 0xb8, 0x09, 0x15, 0x42, + 0xa2, 0x07, 0x18, 0x12, 0xd5, 0x51, 0x0a, 0x87, 0xe2, 0x86, 0x85, 0x80, + 0xb8, 0xbd, 0xc2, 0x22, 0xe1, 0xf6, 0xba, 0xce, 0xab, 0x77, 0x4b, 0xf9, + 0xa1, 0xd0, 0x15, 0x6b, 0x6a, 0x87, 0xb7, 0x95, 0xaf, 0x99, 0xb3, 0x43, + 0x04, 0x3f, 0x7e, 0xdf, 0xd9, 0xe5, 0x25, 0xe3, 0x60, 0x41, 0x73, 0x65, + 0xfe, 0x7b, 0x02, 0xa8, +}; +static const struct drbg_kat_pr_true kat2944_t = { + 3, kat2944_entropyin, kat2944_nonce, kat2944_persstr, + kat2944_entropyinpr1, kat2944_addinpr1, kat2944_entropyinpr2, + kat2944_addinpr2, kat2944_retbits +}; +static const struct drbg_kat kat2944 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2944_t +}; + +static const unsigned char kat2945_entropyin[] = { + 0x9f, 0x5f, 0x83, 0x2e, 0xf1, 0x5d, 0xfd, 0xc3, 0xb4, 0x13, 0x3c, 0x60, + 0x69, 0x6d, 0x46, 0x1f, +}; +static const unsigned char kat2945_nonce[] = { + 0x5e, 0x23, 0x33, 0x35, 0x18, 0xa2, 0xbf, 0x08, +}; +static const unsigned char kat2945_persstr[] = {0}; +static const unsigned char kat2945_entropyinpr1[] = { + 0xc2, 0x53, 0x37, 0xeb, 0xd9, 0xf7, 0x13, 0x28, 0xbe, 0x76, 0x87, 0x81, + 0xdc, 0xd1, 0x07, 0xb2, +}; +static const unsigned char kat2945_addinpr1[] = {0}; +static const unsigned char kat2945_entropyinpr2[] = { + 0x98, 0x39, 0x5a, 0xd8, 0x97, 0x06, 0xdb, 0xf5, 0x07, 0xa7, 0x0f, 0xc2, + 0xe8, 0x34, 0xc3, 0xd8, +}; +static const unsigned char kat2945_addinpr2[] = {0}; +static const unsigned char kat2945_retbits[] = { + 0xb9, 0x4a, 0x16, 0x22, 0x03, 0x9b, 0x23, 0xc3, 0xb5, 0x67, 0xce, 0x9d, + 0xd9, 0x8b, 0x20, 0xd4, 0xdd, 0x57, 0xb7, 0x35, 0x57, 0xa8, 0xac, 0xc5, + 0x29, 0x2a, 0x49, 0x8c, 0xb7, 0x1a, 0x46, 0xcb, 0x62, 0xe2, 0x6d, 0x7e, + 0xe6, 0x09, 0xf5, 0xd6, 0x68, 0x2a, 0xbf, 0x62, 0xdd, 0x54, 0x7f, 0x80, + 0xc2, 0x62, 0x6a, 0x8c, 0x79, 0xdf, 0x65, 0x9b, 0x18, 0x6a, 0xf0, 0x36, + 0x0b, 0xcb, 0xd8, 0xe6, +}; +static const struct drbg_kat_pr_true kat2945_t = { + 4, kat2945_entropyin, kat2945_nonce, kat2945_persstr, + kat2945_entropyinpr1, kat2945_addinpr1, kat2945_entropyinpr2, + kat2945_addinpr2, kat2945_retbits +}; +static const struct drbg_kat kat2945 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2945_t +}; + +static const unsigned char kat2946_entropyin[] = { + 0x1f, 0xb1, 0x24, 0x90, 0x1b, 0xee, 0xd5, 0xae, 0xd2, 0x22, 0x74, 0x09, + 0x40, 0x20, 0x6e, 0xa2, +}; +static const unsigned char kat2946_nonce[] = { + 0x87, 0x76, 0xc2, 0xc0, 0x7e, 0xa6, 0x0b, 0xa1, +}; +static const unsigned char kat2946_persstr[] = {0}; +static const unsigned char kat2946_entropyinpr1[] = { + 0xc1, 0x9f, 0x86, 0xb3, 0x4f, 0x11, 0x47, 0xd0, 0xf5, 0x70, 0x36, 0x36, + 0x64, 0x54, 0xeb, 0x78, +}; +static const unsigned char kat2946_addinpr1[] = {0}; +static const unsigned char kat2946_entropyinpr2[] = { + 0x43, 0x1a, 0x44, 0xa9, 0xba, 0x8c, 0x98, 0x21, 0xf7, 0xd2, 0x1f, 0x36, + 0x5e, 0xad, 0x8b, 0x3e, +}; +static const unsigned char kat2946_addinpr2[] = {0}; +static const unsigned char kat2946_retbits[] = { + 0x3f, 0x3b, 0xe1, 0xb0, 0xbf, 0xa2, 0x78, 0x7e, 0x62, 0x77, 0x9c, 0x3e, + 0x73, 0xe4, 0xd3, 0x49, 0xed, 0xdf, 0x1f, 0x2f, 0x8c, 0x01, 0xf7, 0x9f, + 0x0c, 0xdc, 0xe6, 0x1e, 0xa7, 0x85, 0xe2, 0x9a, 0xec, 0x57, 0x96, 0xfa, + 0x76, 0xb7, 0x9a, 0x21, 0xa2, 0x50, 0x88, 0xc2, 0x9e, 0x37, 0x6f, 0x6f, + 0x3a, 0xbe, 0xb8, 0xfd, 0xcf, 0x06, 0x69, 0x03, 0xe6, 0x2e, 0xf7, 0x87, + 0x98, 0x16, 0x92, 0x66, +}; +static const struct drbg_kat_pr_true kat2946_t = { + 5, kat2946_entropyin, kat2946_nonce, kat2946_persstr, + kat2946_entropyinpr1, kat2946_addinpr1, kat2946_entropyinpr2, + kat2946_addinpr2, kat2946_retbits +}; +static const struct drbg_kat kat2946 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2946_t +}; + +static const unsigned char kat2947_entropyin[] = { + 0xaf, 0x4f, 0x46, 0xb2, 0x9d, 0xc8, 0xae, 0xbf, 0x62, 0xc1, 0x6c, 0xec, + 0x52, 0x55, 0xaa, 0xe4, +}; +static const unsigned char kat2947_nonce[] = { + 0x7d, 0x46, 0x41, 0x4a, 0xc4, 0xa5, 0x6d, 0x06, +}; +static const unsigned char kat2947_persstr[] = {0}; +static const unsigned char kat2947_entropyinpr1[] = { + 0xdb, 0x09, 0xfb, 0x07, 0x9e, 0x2a, 0x1c, 0x56, 0x80, 0x59, 0x0b, 0xed, + 0x98, 0xbb, 0x20, 0xc9, +}; +static const unsigned char kat2947_addinpr1[] = {0}; +static const unsigned char kat2947_entropyinpr2[] = { + 0x60, 0x3c, 0x8e, 0x5b, 0x5f, 0x93, 0x1f, 0x4d, 0x46, 0xb6, 0x55, 0x6d, + 0xca, 0xfc, 0xaf, 0x95, +}; +static const unsigned char kat2947_addinpr2[] = {0}; +static const unsigned char kat2947_retbits[] = { + 0xc6, 0x83, 0x73, 0xf5, 0x88, 0xa2, 0xcf, 0xa6, 0xec, 0x48, 0x61, 0x6f, + 0x3a, 0x7c, 0xc6, 0x13, 0x0f, 0xb7, 0x66, 0xad, 0xa3, 0xf9, 0xbe, 0xf8, + 0x6b, 0x8c, 0xeb, 0xd2, 0x3c, 0xf6, 0x10, 0x1c, 0xad, 0x34, 0x04, 0x49, + 0x1c, 0x6c, 0x87, 0x41, 0xd8, 0x33, 0x31, 0x50, 0xcc, 0x5e, 0x81, 0x31, + 0x92, 0x86, 0x4b, 0xfa, 0x51, 0xdb, 0x5f, 0x17, 0xc4, 0x6c, 0xac, 0xb7, + 0x60, 0x64, 0x1a, 0x7e, +}; +static const struct drbg_kat_pr_true kat2947_t = { + 6, kat2947_entropyin, kat2947_nonce, kat2947_persstr, + kat2947_entropyinpr1, kat2947_addinpr1, kat2947_entropyinpr2, + kat2947_addinpr2, kat2947_retbits +}; +static const struct drbg_kat kat2947 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2947_t +}; + +static const unsigned char kat2948_entropyin[] = { + 0x5e, 0x75, 0x31, 0xa2, 0x70, 0xb9, 0xad, 0xf1, 0x5b, 0x3d, 0x47, 0x20, + 0xa9, 0x2c, 0xec, 0x2a, +}; +static const unsigned char kat2948_nonce[] = { + 0x97, 0xc0, 0x50, 0x95, 0xac, 0xa0, 0x03, 0xa9, +}; +static const unsigned char kat2948_persstr[] = {0}; +static const unsigned char kat2948_entropyinpr1[] = { + 0x79, 0xa0, 0x7c, 0x70, 0x46, 0x6c, 0x2a, 0xd7, 0x85, 0x6d, 0xb1, 0x26, + 0x8f, 0x29, 0x47, 0xef, +}; +static const unsigned char kat2948_addinpr1[] = {0}; +static const unsigned char kat2948_entropyinpr2[] = { + 0x05, 0x89, 0x85, 0xcf, 0x11, 0x59, 0x85, 0x49, 0x51, 0x31, 0xcc, 0x4b, + 0x50, 0x7f, 0x1d, 0x28, +}; +static const unsigned char kat2948_addinpr2[] = {0}; +static const unsigned char kat2948_retbits[] = { + 0x96, 0x05, 0x31, 0x22, 0x6c, 0xdd, 0xd1, 0xd2, 0x98, 0xdd, 0xb4, 0x10, + 0x60, 0x80, 0xcb, 0xd1, 0x1c, 0x8a, 0xba, 0xf4, 0x99, 0xc4, 0x4a, 0x04, + 0xce, 0x70, 0x07, 0xb4, 0x7b, 0x39, 0x34, 0x98, 0xc9, 0x70, 0x3d, 0xc5, + 0x72, 0x89, 0xf0, 0xc7, 0x49, 0x8d, 0x7e, 0x4d, 0xfb, 0xa0, 0xdd, 0xec, + 0x9d, 0x87, 0x9d, 0x3f, 0x80, 0x5a, 0xa6, 0xdb, 0xcf, 0xb3, 0x85, 0x27, + 0x92, 0x36, 0x18, 0xa3, +}; +static const struct drbg_kat_pr_true kat2948_t = { + 7, kat2948_entropyin, kat2948_nonce, kat2948_persstr, + kat2948_entropyinpr1, kat2948_addinpr1, kat2948_entropyinpr2, + kat2948_addinpr2, kat2948_retbits +}; +static const struct drbg_kat kat2948 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2948_t +}; + +static const unsigned char kat2949_entropyin[] = { + 0x20, 0x2f, 0x25, 0x7c, 0x23, 0x7a, 0x5c, 0xe6, 0xe4, 0x4b, 0x06, 0xc7, + 0x07, 0x0f, 0x5c, 0x90, +}; +static const unsigned char kat2949_nonce[] = { + 0x40, 0x1a, 0x16, 0x7c, 0x65, 0x77, 0x2e, 0x9e, +}; +static const unsigned char kat2949_persstr[] = {0}; +static const unsigned char kat2949_entropyinpr1[] = { + 0xf7, 0xf1, 0x0b, 0x65, 0x9e, 0x27, 0xfa, 0x7f, 0xc4, 0x7d, 0x9b, 0x48, + 0xa9, 0x0f, 0x26, 0x88, +}; +static const unsigned char kat2949_addinpr1[] = {0}; +static const unsigned char kat2949_entropyinpr2[] = { + 0x83, 0xe7, 0x34, 0x62, 0xb0, 0x95, 0x86, 0x6f, 0x31, 0x7b, 0xcb, 0xa2, + 0x46, 0x52, 0x29, 0xf3, +}; +static const unsigned char kat2949_addinpr2[] = {0}; +static const unsigned char kat2949_retbits[] = { + 0xb0, 0xe4, 0x05, 0xc4, 0x99, 0x09, 0xe5, 0xdc, 0x0e, 0x09, 0x61, 0xa5, + 0xc6, 0xe6, 0xcf, 0x66, 0xff, 0x5a, 0x5c, 0x68, 0x68, 0x13, 0xdf, 0x2a, + 0xe3, 0xd0, 0xdb, 0x72, 0xfc, 0x0f, 0xa3, 0x59, 0x98, 0x39, 0x1e, 0x86, + 0x5c, 0x61, 0x43, 0x54, 0xb3, 0xf1, 0xdd, 0xca, 0x10, 0xaf, 0xc1, 0x59, + 0x91, 0x50, 0x0b, 0x2b, 0xfc, 0x9d, 0x76, 0x99, 0x0a, 0x28, 0x08, 0x0d, + 0x9e, 0xe6, 0x3d, 0x41, +}; +static const struct drbg_kat_pr_true kat2949_t = { + 8, kat2949_entropyin, kat2949_nonce, kat2949_persstr, + kat2949_entropyinpr1, kat2949_addinpr1, kat2949_entropyinpr2, + kat2949_addinpr2, kat2949_retbits +}; +static const struct drbg_kat kat2949 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2949_t +}; + +static const unsigned char kat2950_entropyin[] = { + 0x1f, 0x72, 0xb7, 0x55, 0x9f, 0x91, 0x70, 0x80, 0x7f, 0x1e, 0xe7, 0xdb, + 0xf9, 0xff, 0x75, 0x18, +}; +static const unsigned char kat2950_nonce[] = { + 0xa8, 0x6e, 0x96, 0x56, 0xc9, 0xec, 0xfa, 0x98, +}; +static const unsigned char kat2950_persstr[] = {0}; +static const unsigned char kat2950_entropyinpr1[] = { + 0x40, 0x1e, 0xfd, 0xbf, 0xc0, 0x35, 0x87, 0xd5, 0x9f, 0x16, 0x70, 0xc6, + 0x27, 0xc0, 0x9c, 0xdf, +}; +static const unsigned char kat2950_addinpr1[] = {0}; +static const unsigned char kat2950_entropyinpr2[] = { + 0x84, 0x9d, 0x12, 0x53, 0xad, 0xdb, 0x8d, 0x0b, 0x76, 0x9a, 0x96, 0x1f, + 0x99, 0x59, 0xf0, 0xaa, +}; +static const unsigned char kat2950_addinpr2[] = {0}; +static const unsigned char kat2950_retbits[] = { + 0xd8, 0xc4, 0x7e, 0xac, 0xb9, 0x5b, 0xe3, 0x9d, 0x7f, 0xc7, 0x32, 0xc6, + 0x0e, 0xaa, 0xb0, 0x15, 0x13, 0xb6, 0x62, 0xf6, 0x4c, 0x7b, 0xd4, 0xd7, + 0xcd, 0x9a, 0x0d, 0xf2, 0x27, 0xad, 0xc9, 0xab, 0xe7, 0xe7, 0xda, 0x4c, + 0xc0, 0xed, 0x9a, 0xc9, 0xfc, 0x9b, 0x81, 0x49, 0xca, 0x85, 0x9b, 0x3a, + 0x97, 0x04, 0xc7, 0xcd, 0x74, 0x8e, 0x05, 0x58, 0x5d, 0x44, 0xb5, 0x4f, + 0x10, 0x64, 0xc5, 0x68, +}; +static const struct drbg_kat_pr_true kat2950_t = { + 9, kat2950_entropyin, kat2950_nonce, kat2950_persstr, + kat2950_entropyinpr1, kat2950_addinpr1, kat2950_entropyinpr2, + kat2950_addinpr2, kat2950_retbits +}; +static const struct drbg_kat kat2950 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2950_t +}; + +static const unsigned char kat2951_entropyin[] = { + 0xbb, 0x0d, 0xc9, 0xc0, 0x8c, 0x25, 0x22, 0xf0, 0x4d, 0x5c, 0x2c, 0xf1, + 0xb9, 0x6a, 0x6d, 0x19, +}; +static const unsigned char kat2951_nonce[] = { + 0xa9, 0xee, 0xcc, 0x8d, 0x65, 0x69, 0x6e, 0x6a, +}; +static const unsigned char kat2951_persstr[] = {0}; +static const unsigned char kat2951_entropyinpr1[] = { + 0x78, 0x54, 0xf1, 0xb2, 0x69, 0xc5, 0x10, 0xe7, 0x74, 0x4b, 0xd8, 0x55, + 0x5f, 0x8c, 0x5b, 0x6d, +}; +static const unsigned char kat2951_addinpr1[] = {0}; +static const unsigned char kat2951_entropyinpr2[] = { + 0x76, 0xe7, 0x71, 0x68, 0xb5, 0x82, 0x2c, 0x08, 0xd6, 0xc5, 0xa6, 0x73, + 0xac, 0x15, 0xe6, 0x22, +}; +static const unsigned char kat2951_addinpr2[] = {0}; +static const unsigned char kat2951_retbits[] = { + 0x15, 0x00, 0x46, 0xda, 0xeb, 0xff, 0x8b, 0xf6, 0xff, 0x64, 0x97, 0xa5, + 0xde, 0xcf, 0x73, 0xd3, 0xe6, 0x7e, 0x80, 0xc0, 0x61, 0xe3, 0x9d, 0x3b, + 0xc1, 0x70, 0x5d, 0x26, 0xf2, 0x4b, 0xf3, 0xd0, 0x8f, 0x91, 0x2f, 0xcf, + 0x24, 0xfa, 0x40, 0x7f, 0xfe, 0xac, 0x4b, 0x6e, 0xfc, 0xb1, 0x11, 0xb1, + 0xc3, 0xbc, 0xe3, 0x8c, 0x49, 0xec, 0x8e, 0x59, 0x46, 0xc8, 0x14, 0xf3, + 0x59, 0x83, 0x94, 0x52, +}; +static const struct drbg_kat_pr_true kat2951_t = { + 10, kat2951_entropyin, kat2951_nonce, kat2951_persstr, + kat2951_entropyinpr1, kat2951_addinpr1, kat2951_entropyinpr2, + kat2951_addinpr2, kat2951_retbits +}; +static const struct drbg_kat kat2951 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2951_t +}; + +static const unsigned char kat2952_entropyin[] = { + 0x49, 0xe8, 0xd0, 0x0b, 0x3f, 0xbe, 0x7f, 0x0c, 0x17, 0x09, 0x07, 0x2a, + 0x06, 0x08, 0x8d, 0xc8, +}; +static const unsigned char kat2952_nonce[] = { + 0x73, 0xe5, 0x4b, 0xd9, 0x46, 0x69, 0xc0, 0x8a, +}; +static const unsigned char kat2952_persstr[] = {0}; +static const unsigned char kat2952_entropyinpr1[] = { + 0x52, 0xda, 0x14, 0x0a, 0x25, 0x8d, 0x24, 0x3e, 0xab, 0x40, 0x9c, 0xeb, + 0xec, 0xd5, 0x73, 0xfc, +}; +static const unsigned char kat2952_addinpr1[] = {0}; +static const unsigned char kat2952_entropyinpr2[] = { + 0x22, 0xfc, 0xb6, 0xa7, 0x78, 0xa9, 0xeb, 0xec, 0x02, 0x30, 0xfc, 0x34, + 0x8d, 0x31, 0x7e, 0x74, +}; +static const unsigned char kat2952_addinpr2[] = {0}; +static const unsigned char kat2952_retbits[] = { + 0xbc, 0xd4, 0x51, 0xc1, 0xe1, 0x17, 0xbc, 0x6a, 0xee, 0x43, 0x7b, 0x61, + 0xd7, 0x08, 0xa8, 0xc8, 0x43, 0x72, 0xb0, 0x3f, 0x26, 0xc0, 0xc8, 0x10, + 0x81, 0x03, 0x14, 0x22, 0xd2, 0x1b, 0x08, 0x01, 0xab, 0xc5, 0xf1, 0xe9, + 0xec, 0x37, 0xd0, 0xac, 0x5b, 0xb2, 0x24, 0x5e, 0xa0, 0x11, 0xee, 0xeb, + 0x10, 0x5a, 0x93, 0xaa, 0x7d, 0x9b, 0x57, 0xeb, 0x1b, 0x62, 0xdd, 0x2c, + 0x1d, 0xf6, 0x95, 0xee, +}; +static const struct drbg_kat_pr_true kat2952_t = { + 11, kat2952_entropyin, kat2952_nonce, kat2952_persstr, + kat2952_entropyinpr1, kat2952_addinpr1, kat2952_entropyinpr2, + kat2952_addinpr2, kat2952_retbits +}; +static const struct drbg_kat kat2952 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2952_t +}; + +static const unsigned char kat2953_entropyin[] = { + 0x82, 0x12, 0x0d, 0xfa, 0x28, 0xa8, 0x01, 0x96, 0x99, 0x59, 0x0a, 0x00, + 0x3c, 0x9f, 0xb2, 0xed, +}; +static const unsigned char kat2953_nonce[] = { + 0xf9, 0xac, 0x67, 0x1b, 0x62, 0xcb, 0x5f, 0xd0, +}; +static const unsigned char kat2953_persstr[] = {0}; +static const unsigned char kat2953_entropyinpr1[] = { + 0xbf, 0x9a, 0x6e, 0xe0, 0x41, 0xdb, 0xde, 0xe1, 0x99, 0xc1, 0x83, 0x7d, + 0xe0, 0x46, 0xbb, 0x14, +}; +static const unsigned char kat2953_addinpr1[] = {0}; +static const unsigned char kat2953_entropyinpr2[] = { + 0x4f, 0x77, 0xfd, 0x93, 0x4f, 0xaa, 0x04, 0x0d, 0x17, 0xa5, 0xa0, 0x2c, + 0x18, 0x11, 0xb5, 0xef, +}; +static const unsigned char kat2953_addinpr2[] = {0}; +static const unsigned char kat2953_retbits[] = { + 0x7b, 0x87, 0x44, 0x2f, 0xd2, 0x11, 0x1a, 0x5f, 0x79, 0x36, 0xaf, 0xc3, + 0xbe, 0xce, 0xe1, 0x35, 0x7a, 0xc6, 0x6f, 0xee, 0x94, 0x3a, 0xd7, 0x72, + 0x66, 0x2a, 0x0c, 0x19, 0x99, 0x46, 0xc6, 0x86, 0x29, 0xd3, 0xc8, 0x62, + 0xb9, 0x62, 0xa7, 0x29, 0xa0, 0xfc, 0x15, 0xeb, 0x2e, 0x6b, 0xe9, 0x0e, + 0x96, 0xf8, 0xc6, 0x77, 0xa1, 0x8b, 0x7b, 0x49, 0xad, 0x79, 0x43, 0xcc, + 0xea, 0xd2, 0xd4, 0xa3, +}; +static const struct drbg_kat_pr_true kat2953_t = { + 12, kat2953_entropyin, kat2953_nonce, kat2953_persstr, + kat2953_entropyinpr1, kat2953_addinpr1, kat2953_entropyinpr2, + kat2953_addinpr2, kat2953_retbits +}; +static const struct drbg_kat kat2953 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2953_t +}; + +static const unsigned char kat2954_entropyin[] = { + 0x0e, 0xb6, 0x41, 0xc2, 0xdd, 0x16, 0x10, 0x45, 0xa6, 0xdf, 0xdc, 0xd8, + 0xa1, 0xd9, 0x2a, 0x90, +}; +static const unsigned char kat2954_nonce[] = { + 0xd2, 0x5d, 0xe7, 0xdf, 0xdd, 0x6c, 0x33, 0xca, +}; +static const unsigned char kat2954_persstr[] = {0}; +static const unsigned char kat2954_entropyinpr1[] = { + 0x79, 0x4f, 0x61, 0x0e, 0xce, 0xbc, 0x61, 0x84, 0x27, 0xd7, 0xe2, 0x54, + 0x69, 0xb9, 0x04, 0x4c, +}; +static const unsigned char kat2954_addinpr1[] = {0}; +static const unsigned char kat2954_entropyinpr2[] = { + 0x56, 0x4d, 0xef, 0x6e, 0x8f, 0x23, 0xc0, 0x2c, 0x90, 0xa7, 0xf4, 0xaa, + 0x06, 0x26, 0x5b, 0x67, +}; +static const unsigned char kat2954_addinpr2[] = {0}; +static const unsigned char kat2954_retbits[] = { + 0xce, 0xa3, 0x9c, 0x80, 0x77, 0x33, 0xb8, 0x83, 0xc7, 0x93, 0xc8, 0xc2, + 0xed, 0xc9, 0xf7, 0xd5, 0x92, 0xf8, 0x18, 0xad, 0xb6, 0xdb, 0x19, 0x86, + 0x3a, 0x49, 0xde, 0x03, 0x0a, 0xb8, 0xd2, 0xff, 0x79, 0xfb, 0x67, 0xd6, + 0x32, 0x95, 0x0d, 0x53, 0x7c, 0xae, 0x0b, 0x1d, 0x23, 0x4c, 0x2a, 0x3f, + 0x89, 0xb0, 0xc4, 0xcc, 0xfa, 0x68, 0xae, 0x46, 0xcc, 0x4c, 0xad, 0x88, + 0x20, 0x5e, 0x80, 0x3d, +}; +static const struct drbg_kat_pr_true kat2954_t = { + 13, kat2954_entropyin, kat2954_nonce, kat2954_persstr, + kat2954_entropyinpr1, kat2954_addinpr1, kat2954_entropyinpr2, + kat2954_addinpr2, kat2954_retbits +}; +static const struct drbg_kat kat2954 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2954_t +}; + +static const unsigned char kat2955_entropyin[] = { + 0x6d, 0x63, 0x0b, 0x43, 0x6d, 0x5b, 0x1b, 0xe2, 0x8c, 0x3f, 0xeb, 0x0c, + 0x7c, 0xc2, 0x84, 0x5a, +}; +static const unsigned char kat2955_nonce[] = { + 0xe7, 0x50, 0xee, 0xee, 0xcf, 0xca, 0x45, 0x9f, +}; +static const unsigned char kat2955_persstr[] = {0}; +static const unsigned char kat2955_entropyinpr1[] = { + 0x59, 0x76, 0xb8, 0xa4, 0x93, 0x4d, 0x01, 0x22, 0x23, 0x2b, 0x58, 0xf0, + 0xed, 0x1c, 0x72, 0xcc, +}; +static const unsigned char kat2955_addinpr1[] = {0}; +static const unsigned char kat2955_entropyinpr2[] = { + 0xc0, 0xcd, 0x1c, 0x9c, 0xd8, 0xc9, 0x62, 0xf1, 0xba, 0xcb, 0xbb, 0xd4, + 0x08, 0x31, 0x69, 0x0c, +}; +static const unsigned char kat2955_addinpr2[] = {0}; +static const unsigned char kat2955_retbits[] = { + 0xf3, 0xd6, 0x85, 0x98, 0x9e, 0xe9, 0x32, 0xc1, 0x10, 0x66, 0x7f, 0x61, + 0x30, 0xd3, 0xad, 0xf1, 0xdf, 0x86, 0xdc, 0x72, 0xb1, 0xf1, 0x52, 0xfd, + 0xce, 0xa1, 0xb1, 0x58, 0x0d, 0xca, 0xff, 0x8e, 0x28, 0xe6, 0xea, 0xb6, + 0x07, 0xc4, 0x3d, 0xba, 0x73, 0xe0, 0x36, 0x72, 0xa6, 0x41, 0x1c, 0x84, + 0x73, 0x00, 0x8a, 0xe2, 0x3a, 0xc3, 0x38, 0x0a, 0x3c, 0xa9, 0x5f, 0xb2, + 0x70, 0xd1, 0x39, 0x15, +}; +static const struct drbg_kat_pr_true kat2955_t = { + 14, kat2955_entropyin, kat2955_nonce, kat2955_persstr, + kat2955_entropyinpr1, kat2955_addinpr1, kat2955_entropyinpr2, + kat2955_addinpr2, kat2955_retbits +}; +static const struct drbg_kat kat2955 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat2955_t +}; + +static const unsigned char kat2956_entropyin[] = { + 0x93, 0xc8, 0x99, 0xde, 0x3b, 0x7d, 0x72, 0xa6, 0x83, 0x89, 0xe4, 0x4b, + 0xf8, 0x24, 0x96, 0x98, +}; +static const unsigned char kat2956_nonce[] = { + 0x96, 0x0e, 0x9a, 0x34, 0x32, 0x5a, 0x5b, 0x49, +}; +static const unsigned char kat2956_persstr[] = {0}; +static const unsigned char kat2956_entropyinpr1[] = { + 0xb6, 0x8b, 0xef, 0x79, 0xaa, 0xad, 0x62, 0xe8, 0x55, 0xee, 0x14, 0x51, + 0x79, 0x95, 0x1d, 0x87, +}; +static const unsigned char kat2956_addinpr1[] = { + 0x94, 0x2e, 0x65, 0x65, 0x95, 0xb0, 0x7e, 0x98, 0xb5, 0x9f, 0x39, 0xf9, + 0xd3, 0x65, 0x8c, 0xf5, +}; +static const unsigned char kat2956_entropyinpr2[] = { + 0x14, 0x1d, 0xad, 0x5a, 0x5d, 0x5b, 0x71, 0x74, 0xf5, 0xfa, 0x97, 0x43, + 0x33, 0xdb, 0xb6, 0x4d, +}; +static const unsigned char kat2956_addinpr2[] = { + 0x03, 0x38, 0xa2, 0xb0, 0x70, 0x92, 0x7c, 0xa2, 0xeb, 0x55, 0x1d, 0xc3, + 0xdb, 0x4f, 0x1d, 0x62, +}; +static const unsigned char kat2956_retbits[] = { + 0x00, 0x33, 0xae, 0x03, 0x80, 0x78, 0x48, 0x7f, 0x7d, 0xea, 0x1e, 0xf6, + 0x4b, 0xec, 0x58, 0xae, 0x75, 0x1f, 0xb8, 0x86, 0x4f, 0x8b, 0xff, 0x4e, + 0x8c, 0x1b, 0x41, 0x2b, 0xa2, 0x47, 0x7d, 0x2f, 0xf1, 0xba, 0x88, 0x7a, + 0x1a, 0xe6, 0x60, 0xbd, 0x48, 0xce, 0x7b, 0x76, 0x28, 0xa8, 0xd1, 0x76, + 0x9a, 0x46, 0xd3, 0x75, 0x38, 0x26, 0x66, 0x2c, 0xb2, 0x6a, 0x75, 0xdf, + 0x87, 0xf0, 0xd3, 0xf0, +}; +static const struct drbg_kat_pr_true kat2956_t = { + 0, kat2956_entropyin, kat2956_nonce, kat2956_persstr, + kat2956_entropyinpr1, kat2956_addinpr1, kat2956_entropyinpr2, + kat2956_addinpr2, kat2956_retbits +}; +static const struct drbg_kat kat2956 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2956_t +}; + +static const unsigned char kat2957_entropyin[] = { + 0x94, 0xba, 0x8b, 0x14, 0xff, 0x07, 0x43, 0x55, 0x36, 0x25, 0x1f, 0xf5, + 0x39, 0xbf, 0x5c, 0x59, +}; +static const unsigned char kat2957_nonce[] = { + 0xc8, 0x44, 0x50, 0x71, 0x0a, 0xf4, 0xac, 0x40, +}; +static const unsigned char kat2957_persstr[] = {0}; +static const unsigned char kat2957_entropyinpr1[] = { + 0x53, 0xc3, 0xe8, 0xba, 0x0a, 0x56, 0x0c, 0x32, 0x89, 0xf6, 0x61, 0x9b, + 0x1b, 0x3b, 0x3a, 0x5d, +}; +static const unsigned char kat2957_addinpr1[] = { + 0x28, 0x7e, 0x98, 0x8a, 0x1c, 0x58, 0xea, 0xcb, 0x6a, 0x18, 0xf8, 0xe3, + 0xb6, 0xe4, 0x6f, 0xd1, +}; +static const unsigned char kat2957_entropyinpr2[] = { + 0x85, 0x4e, 0xaa, 0x96, 0xfb, 0x6d, 0x1e, 0x0a, 0x9a, 0xf5, 0xd5, 0xed, + 0x61, 0x77, 0xe4, 0x54, +}; +static const unsigned char kat2957_addinpr2[] = { + 0x12, 0x6a, 0x8c, 0xcf, 0x5e, 0x6c, 0xbc, 0xc6, 0x4f, 0x12, 0x3e, 0x98, + 0x66, 0xc4, 0x36, 0xec, +}; +static const unsigned char kat2957_retbits[] = { + 0x44, 0xa8, 0xb0, 0x7b, 0x97, 0x40, 0x08, 0x69, 0x37, 0xbd, 0x56, 0x78, + 0xce, 0xa5, 0x9c, 0x89, 0x93, 0xf3, 0x26, 0xf7, 0x10, 0xd7, 0xe1, 0x3d, + 0x18, 0x30, 0x95, 0x8b, 0xc3, 0x4d, 0x74, 0xae, 0xfd, 0x78, 0x57, 0x8d, + 0x4c, 0x15, 0x91, 0x19, 0x27, 0x46, 0xc4, 0x16, 0x49, 0xf5, 0x97, 0x34, + 0x9b, 0xb4, 0xf5, 0x56, 0xe5, 0x53, 0x7f, 0x10, 0x84, 0x57, 0xfc, 0x3d, + 0xb6, 0xbd, 0x4f, 0x25, +}; +static const struct drbg_kat_pr_true kat2957_t = { + 1, kat2957_entropyin, kat2957_nonce, kat2957_persstr, + kat2957_entropyinpr1, kat2957_addinpr1, kat2957_entropyinpr2, + kat2957_addinpr2, kat2957_retbits +}; +static const struct drbg_kat kat2957 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2957_t +}; + +static const unsigned char kat2958_entropyin[] = { + 0x11, 0x77, 0xf9, 0xe8, 0xba, 0x73, 0xfa, 0x11, 0x27, 0x3b, 0xb1, 0xf2, + 0x60, 0x4d, 0xb8, 0xb6, +}; +static const unsigned char kat2958_nonce[] = { + 0x96, 0x25, 0xf1, 0x89, 0xb3, 0x44, 0x51, 0xf0, +}; +static const unsigned char kat2958_persstr[] = {0}; +static const unsigned char kat2958_entropyinpr1[] = { + 0x48, 0x97, 0xd1, 0x91, 0xc4, 0xe1, 0x05, 0xca, 0x95, 0xcf, 0xad, 0x7d, + 0xfb, 0xa5, 0xed, 0x84, +}; +static const unsigned char kat2958_addinpr1[] = { + 0x5b, 0x59, 0x3a, 0x44, 0x07, 0x5c, 0x5a, 0x6c, 0x80, 0xd4, 0x5d, 0xae, + 0xa3, 0x76, 0x03, 0x11, +}; +static const unsigned char kat2958_entropyinpr2[] = { + 0xce, 0x38, 0xa5, 0x6b, 0xc7, 0x12, 0xc1, 0xc1, 0x41, 0x90, 0x17, 0x95, + 0x2e, 0x9f, 0x30, 0xd0, +}; +static const unsigned char kat2958_addinpr2[] = { + 0x0d, 0xb6, 0x7b, 0x8d, 0x74, 0x66, 0x2d, 0x11, 0x8e, 0xde, 0xe8, 0x56, + 0xe2, 0xc2, 0x32, 0x21, +}; +static const unsigned char kat2958_retbits[] = { + 0x44, 0x5f, 0xe4, 0x73, 0x65, 0x1f, 0xab, 0x5b, 0xd9, 0xd1, 0x5e, 0x82, + 0xea, 0x81, 0xac, 0x54, 0xda, 0x37, 0xab, 0x49, 0x1c, 0xb4, 0xa9, 0x6b, + 0x64, 0xf1, 0x63, 0xad, 0x98, 0xa6, 0x4f, 0x28, 0xf6, 0x65, 0xb6, 0xd4, + 0xaf, 0x52, 0xe2, 0xc6, 0xe2, 0x24, 0xc1, 0x40, 0xb7, 0x8b, 0xa8, 0x43, + 0xb5, 0x21, 0x46, 0xaf, 0xd3, 0xc6, 0xe0, 0x77, 0x10, 0xbd, 0x79, 0xb8, + 0x58, 0x7c, 0x81, 0xcd, +}; +static const struct drbg_kat_pr_true kat2958_t = { + 2, kat2958_entropyin, kat2958_nonce, kat2958_persstr, + kat2958_entropyinpr1, kat2958_addinpr1, kat2958_entropyinpr2, + kat2958_addinpr2, kat2958_retbits +}; +static const struct drbg_kat kat2958 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2958_t +}; + +static const unsigned char kat2959_entropyin[] = { + 0xff, 0x24, 0x4d, 0xf5, 0x17, 0xd5, 0xa9, 0x20, 0xe9, 0x1b, 0x43, 0xb6, + 0x02, 0x8f, 0x1c, 0x56, +}; +static const unsigned char kat2959_nonce[] = { + 0x4e, 0xc1, 0x2d, 0x98, 0x01, 0x54, 0x75, 0xbd, +}; +static const unsigned char kat2959_persstr[] = {0}; +static const unsigned char kat2959_entropyinpr1[] = { + 0x19, 0x04, 0x82, 0x71, 0x56, 0x9e, 0x3d, 0x6c, 0xdc, 0x97, 0x49, 0x23, + 0x47, 0xb1, 0x33, 0x6d, +}; +static const unsigned char kat2959_addinpr1[] = { + 0xd6, 0x71, 0xe4, 0x5f, 0xe6, 0x12, 0xbc, 0x7b, 0x60, 0x2e, 0xb7, 0x79, + 0xc3, 0xc8, 0xce, 0x63, +}; +static const unsigned char kat2959_entropyinpr2[] = { + 0x07, 0xcf, 0x24, 0xf3, 0x14, 0x38, 0x30, 0xeb, 0x2c, 0xa0, 0x4e, 0x68, + 0xc5, 0x01, 0x8b, 0x69, +}; +static const unsigned char kat2959_addinpr2[] = { + 0xd0, 0x1f, 0x40, 0xed, 0xe7, 0x26, 0x11, 0xf0, 0x00, 0xc2, 0xb5, 0x3f, + 0xdb, 0xde, 0x79, 0x4f, +}; +static const unsigned char kat2959_retbits[] = { + 0x59, 0xaf, 0x1b, 0x23, 0xd7, 0x06, 0x8a, 0xb5, 0xde, 0x76, 0x30, 0xf0, + 0x58, 0x80, 0x8d, 0xf8, 0xda, 0x74, 0x20, 0x30, 0xd6, 0x47, 0x3f, 0x14, + 0x1f, 0xd1, 0xfb, 0x8a, 0xd0, 0x67, 0xd3, 0x51, 0xdb, 0x03, 0xb4, 0x3c, + 0x37, 0x92, 0xb6, 0xf1, 0x85, 0x7b, 0x90, 0x0f, 0x25, 0x58, 0xb6, 0xbe, + 0xc2, 0xd1, 0x61, 0x83, 0x88, 0x3e, 0x22, 0xe4, 0x7c, 0xf7, 0xa6, 0x5c, + 0xb3, 0x36, 0x97, 0xf1, +}; +static const struct drbg_kat_pr_true kat2959_t = { + 3, kat2959_entropyin, kat2959_nonce, kat2959_persstr, + kat2959_entropyinpr1, kat2959_addinpr1, kat2959_entropyinpr2, + kat2959_addinpr2, kat2959_retbits +}; +static const struct drbg_kat kat2959 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2959_t +}; + +static const unsigned char kat2960_entropyin[] = { + 0x4e, 0xc0, 0x7b, 0xfb, 0x64, 0xa9, 0x02, 0xb7, 0xda, 0x67, 0x35, 0xf0, + 0x2a, 0x06, 0x1e, 0x6e, +}; +static const unsigned char kat2960_nonce[] = { + 0x32, 0x96, 0x0e, 0xbb, 0xa4, 0xe0, 0x15, 0xf6, +}; +static const unsigned char kat2960_persstr[] = {0}; +static const unsigned char kat2960_entropyinpr1[] = { + 0xad, 0xaa, 0x8d, 0x11, 0x9f, 0x4c, 0xc1, 0x98, 0xf2, 0xff, 0xfc, 0xbd, + 0x95, 0xa7, 0x0c, 0x2f, +}; +static const unsigned char kat2960_addinpr1[] = { + 0xb7, 0xdb, 0x17, 0x70, 0xcd, 0xbc, 0xfb, 0x12, 0x87, 0xc9, 0x09, 0xa5, + 0xca, 0xa4, 0x89, 0x98, +}; +static const unsigned char kat2960_entropyinpr2[] = { + 0xba, 0xd1, 0x5a, 0xee, 0x78, 0x60, 0x08, 0x21, 0x1b, 0xd6, 0xd9, 0x37, + 0x8a, 0x01, 0xe4, 0xd9, +}; +static const unsigned char kat2960_addinpr2[] = { + 0x8f, 0x0e, 0x7b, 0x71, 0x64, 0x5a, 0x25, 0x2a, 0x1a, 0xce, 0x19, 0x6a, + 0x79, 0xd6, 0xe5, 0x51, +}; +static const unsigned char kat2960_retbits[] = { + 0x43, 0xef, 0x27, 0xed, 0xae, 0x3c, 0x48, 0x04, 0x11, 0x8a, 0x1c, 0x8c, + 0x90, 0x52, 0xcd, 0x92, 0x66, 0x98, 0x17, 0xeb, 0x20, 0x0b, 0x7c, 0x5a, + 0x3d, 0x08, 0x80, 0x1c, 0x39, 0x8f, 0xa0, 0x4a, 0x0a, 0xf5, 0x73, 0x7b, + 0x8d, 0x8a, 0x97, 0xb2, 0x21, 0x16, 0x5e, 0x7d, 0xf5, 0x1a, 0x07, 0xbe, + 0xfb, 0x74, 0xef, 0xe1, 0xc3, 0xa9, 0x54, 0x4f, 0x89, 0x19, 0x33, 0x69, + 0x2e, 0x12, 0x15, 0xc2, +}; +static const struct drbg_kat_pr_true kat2960_t = { + 4, kat2960_entropyin, kat2960_nonce, kat2960_persstr, + kat2960_entropyinpr1, kat2960_addinpr1, kat2960_entropyinpr2, + kat2960_addinpr2, kat2960_retbits +}; +static const struct drbg_kat kat2960 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2960_t +}; + +static const unsigned char kat2961_entropyin[] = { + 0x30, 0x0a, 0xa1, 0x77, 0x3d, 0xf7, 0xd1, 0x65, 0x47, 0x5e, 0x13, 0xca, + 0x4c, 0xe7, 0x37, 0x50, +}; +static const unsigned char kat2961_nonce[] = { + 0x42, 0xc0, 0x6d, 0x17, 0xfe, 0xea, 0x25, 0xca, +}; +static const unsigned char kat2961_persstr[] = {0}; +static const unsigned char kat2961_entropyinpr1[] = { + 0x96, 0x64, 0xcf, 0x2d, 0x71, 0x1e, 0xda, 0x5f, 0x8a, 0xea, 0x02, 0xa4, + 0x95, 0x5d, 0x4a, 0x80, +}; +static const unsigned char kat2961_addinpr1[] = { + 0x91, 0xe4, 0x15, 0xb0, 0x4e, 0xda, 0xc4, 0x45, 0x3a, 0x59, 0x26, 0x0f, + 0x58, 0x9f, 0xb7, 0x34, +}; +static const unsigned char kat2961_entropyinpr2[] = { + 0x9a, 0x54, 0xe3, 0x25, 0x07, 0x6c, 0xe3, 0xf7, 0x5c, 0x02, 0x0f, 0xa0, + 0x4e, 0xce, 0xc9, 0x6f, +}; +static const unsigned char kat2961_addinpr2[] = { + 0x3d, 0x67, 0x84, 0xd9, 0x08, 0x3b, 0xfc, 0xba, 0x3b, 0x80, 0x49, 0x93, + 0x08, 0x3d, 0x04, 0x8b, +}; +static const unsigned char kat2961_retbits[] = { + 0x92, 0x1d, 0xfb, 0x3b, 0x77, 0x1a, 0xa7, 0x8d, 0x0a, 0xf1, 0x11, 0xdb, + 0xb1, 0xba, 0xf2, 0xab, 0x54, 0x69, 0x58, 0x6b, 0x7c, 0xae, 0x25, 0xa7, + 0x35, 0x0d, 0x64, 0x66, 0xc8, 0x22, 0xb9, 0x00, 0x81, 0x4c, 0xa3, 0x54, + 0x26, 0x36, 0x35, 0x63, 0xb0, 0x81, 0x77, 0x75, 0xa0, 0x13, 0x13, 0x6a, + 0xe7, 0x5f, 0xe8, 0x85, 0xf9, 0x04, 0xf0, 0x8f, 0xbe, 0xb5, 0xc0, 0xbb, + 0x5b, 0xef, 0x50, 0x6b, +}; +static const struct drbg_kat_pr_true kat2961_t = { + 5, kat2961_entropyin, kat2961_nonce, kat2961_persstr, + kat2961_entropyinpr1, kat2961_addinpr1, kat2961_entropyinpr2, + kat2961_addinpr2, kat2961_retbits +}; +static const struct drbg_kat kat2961 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2961_t +}; + +static const unsigned char kat2962_entropyin[] = { + 0x98, 0x85, 0x55, 0x7b, 0x3c, 0xc8, 0xa1, 0xb7, 0x6e, 0x7c, 0xbd, 0xa2, + 0x45, 0x3e, 0x45, 0x84, +}; +static const unsigned char kat2962_nonce[] = { + 0xdb, 0x09, 0xbd, 0x64, 0x57, 0xde, 0x87, 0x08, +}; +static const unsigned char kat2962_persstr[] = {0}; +static const unsigned char kat2962_entropyinpr1[] = { + 0x86, 0xb7, 0x44, 0xf4, 0x14, 0x49, 0x56, 0xb9, 0x02, 0xd0, 0xc0, 0x6e, + 0xd8, 0x9c, 0x9e, 0x23, +}; +static const unsigned char kat2962_addinpr1[] = { + 0x36, 0xb4, 0x6e, 0xb8, 0xd0, 0x3e, 0xca, 0xc9, 0xe4, 0x69, 0x50, 0x69, + 0x15, 0x54, 0x72, 0x37, +}; +static const unsigned char kat2962_entropyinpr2[] = { + 0xaf, 0x41, 0x63, 0xac, 0x9f, 0x14, 0xf4, 0x7f, 0x6c, 0x49, 0x6e, 0x60, + 0xb1, 0x01, 0xe5, 0xa7, +}; +static const unsigned char kat2962_addinpr2[] = { + 0x5b, 0x26, 0xac, 0x13, 0x87, 0xf1, 0x61, 0x04, 0xd7, 0xd2, 0xb3, 0xfc, + 0xea, 0xde, 0x5e, 0x8e, +}; +static const unsigned char kat2962_retbits[] = { + 0x38, 0x35, 0x5a, 0xce, 0x49, 0x5b, 0x5e, 0x24, 0x35, 0xb7, 0xd8, 0x19, + 0xea, 0x32, 0xa3, 0x4e, 0x43, 0xa8, 0x9c, 0xb1, 0x53, 0x9a, 0x44, 0xe0, + 0xbc, 0xe1, 0xb3, 0xa6, 0xe2, 0xf6, 0x4e, 0x5a, 0x11, 0x13, 0x8b, 0xe8, + 0x8e, 0xfd, 0x76, 0x3d, 0xf0, 0x61, 0x14, 0x5d, 0x43, 0x39, 0x74, 0x63, + 0xa4, 0x0c, 0xfe, 0x44, 0x10, 0x91, 0xc7, 0x47, 0x76, 0xb5, 0xcd, 0x29, + 0xce, 0x20, 0x40, 0xc5, +}; +static const struct drbg_kat_pr_true kat2962_t = { + 6, kat2962_entropyin, kat2962_nonce, kat2962_persstr, + kat2962_entropyinpr1, kat2962_addinpr1, kat2962_entropyinpr2, + kat2962_addinpr2, kat2962_retbits +}; +static const struct drbg_kat kat2962 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2962_t +}; + +static const unsigned char kat2963_entropyin[] = { + 0xd1, 0x56, 0x33, 0xb7, 0x78, 0x90, 0xfa, 0x24, 0x0c, 0xa9, 0x6f, 0x08, + 0xd0, 0x52, 0xb9, 0x8b, +}; +static const unsigned char kat2963_nonce[] = { + 0xf4, 0xb4, 0xff, 0xe6, 0x60, 0xe8, 0xa3, 0x19, +}; +static const unsigned char kat2963_persstr[] = {0}; +static const unsigned char kat2963_entropyinpr1[] = { + 0xf1, 0x40, 0xb0, 0xef, 0x7a, 0x8e, 0x42, 0x74, 0xd4, 0x17, 0x0c, 0x6f, + 0xd8, 0xc0, 0xf5, 0xea, +}; +static const unsigned char kat2963_addinpr1[] = { + 0xa9, 0x3e, 0x8b, 0xe0, 0xef, 0x0e, 0x80, 0x3b, 0xab, 0xe0, 0xab, 0xb5, + 0xf7, 0xbe, 0xa6, 0xad, +}; +static const unsigned char kat2963_entropyinpr2[] = { + 0xf7, 0x87, 0x2c, 0x58, 0x48, 0x86, 0x50, 0x33, 0x36, 0xfc, 0xf4, 0xaf, + 0x57, 0xd3, 0x1f, 0x89, +}; +static const unsigned char kat2963_addinpr2[] = { + 0xfd, 0x92, 0x67, 0x82, 0xf9, 0xf6, 0x8a, 0xd2, 0x11, 0xcd, 0xf3, 0x2d, + 0xa9, 0xaa, 0x3a, 0x2f, +}; +static const unsigned char kat2963_retbits[] = { + 0xd4, 0xdc, 0xa4, 0x59, 0x73, 0xe9, 0x9d, 0xd7, 0x11, 0x27, 0x64, 0xfd, + 0x8d, 0x50, 0xf5, 0xd0, 0xe6, 0x7c, 0x23, 0x3e, 0x22, 0x7b, 0xae, 0xb6, + 0xc0, 0x3b, 0xf2, 0x1e, 0xc6, 0x01, 0x3f, 0xfc, 0xd3, 0x3f, 0x39, 0xfe, + 0x0d, 0xc1, 0xa0, 0x89, 0xcd, 0xc7, 0x07, 0x6d, 0x8b, 0x9c, 0x8e, 0x9f, + 0xdd, 0x3c, 0x35, 0xe1, 0x2e, 0xed, 0x9f, 0x9a, 0x70, 0xfe, 0xc1, 0x0e, + 0xa0, 0x3f, 0x4b, 0xb5, +}; +static const struct drbg_kat_pr_true kat2963_t = { + 7, kat2963_entropyin, kat2963_nonce, kat2963_persstr, + kat2963_entropyinpr1, kat2963_addinpr1, kat2963_entropyinpr2, + kat2963_addinpr2, kat2963_retbits +}; +static const struct drbg_kat kat2963 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2963_t +}; + +static const unsigned char kat2964_entropyin[] = { + 0x38, 0x87, 0x76, 0xbc, 0x84, 0x28, 0x5c, 0x9c, 0x4a, 0xd3, 0x98, 0x2b, + 0xd5, 0x46, 0x1a, 0xe8, +}; +static const unsigned char kat2964_nonce[] = { + 0xe7, 0x9a, 0xa6, 0x0f, 0xc9, 0x17, 0x98, 0x73, +}; +static const unsigned char kat2964_persstr[] = {0}; +static const unsigned char kat2964_entropyinpr1[] = { + 0x95, 0xba, 0x3e, 0x9b, 0x23, 0x1c, 0x0a, 0x66, 0xad, 0xf9, 0x80, 0xe7, + 0xaf, 0x57, 0x7c, 0xe5, +}; +static const unsigned char kat2964_addinpr1[] = { + 0xa9, 0x28, 0x55, 0x44, 0x7a, 0x17, 0xb4, 0xc0, 0x60, 0x47, 0x44, 0xe9, + 0x0e, 0xff, 0x64, 0x03, +}; +static const unsigned char kat2964_entropyinpr2[] = { + 0x24, 0xe8, 0x8b, 0xae, 0x2b, 0x4b, 0x8d, 0xf2, 0x24, 0x35, 0x15, 0xef, + 0x93, 0xcb, 0xf8, 0xe8, +}; +static const unsigned char kat2964_addinpr2[] = { + 0x1a, 0x3b, 0xbd, 0x06, 0xc6, 0x2f, 0x0c, 0xda, 0xfc, 0x4f, 0x8a, 0xcd, + 0x32, 0x66, 0x82, 0xd4, +}; +static const unsigned char kat2964_retbits[] = { + 0x16, 0x51, 0xec, 0x3c, 0x26, 0x32, 0x37, 0x46, 0xbc, 0x8e, 0x5d, 0x64, + 0x63, 0x08, 0xd1, 0xbd, 0xd6, 0x72, 0x75, 0x21, 0x35, 0x46, 0xfb, 0xfc, + 0xdb, 0xa4, 0x77, 0x2f, 0x24, 0x5c, 0x4e, 0x1c, 0x12, 0x79, 0x87, 0x4b, + 0xab, 0x75, 0xd5, 0xfe, 0xf5, 0xeb, 0xc1, 0x31, 0xfb, 0xb1, 0xbd, 0xb1, + 0xcf, 0x54, 0xc8, 0xe0, 0x1e, 0xfc, 0xf5, 0x06, 0x6a, 0x03, 0x38, 0xa9, + 0x5b, 0x2e, 0xbe, 0x34, +}; +static const struct drbg_kat_pr_true kat2964_t = { + 8, kat2964_entropyin, kat2964_nonce, kat2964_persstr, + kat2964_entropyinpr1, kat2964_addinpr1, kat2964_entropyinpr2, + kat2964_addinpr2, kat2964_retbits +}; +static const struct drbg_kat kat2964 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2964_t +}; + +static const unsigned char kat2965_entropyin[] = { + 0xd1, 0xa8, 0x97, 0xfe, 0xae, 0x8f, 0xfb, 0xbb, 0xa8, 0xb2, 0xee, 0x86, + 0x22, 0x7c, 0xc2, 0x08, +}; +static const unsigned char kat2965_nonce[] = { + 0xa7, 0x60, 0x1a, 0x77, 0x7c, 0x0b, 0x13, 0x22, +}; +static const unsigned char kat2965_persstr[] = {0}; +static const unsigned char kat2965_entropyinpr1[] = { + 0x48, 0xec, 0x22, 0xbc, 0xd5, 0xf7, 0xcc, 0xbb, 0x23, 0x76, 0xc2, 0x0f, + 0xc9, 0x1e, 0x36, 0xc5, +}; +static const unsigned char kat2965_addinpr1[] = { + 0xfd, 0xe2, 0x9b, 0x85, 0x90, 0x20, 0x0a, 0xc0, 0xd3, 0xda, 0x27, 0x75, + 0xd5, 0x64, 0xed, 0x30, +}; +static const unsigned char kat2965_entropyinpr2[] = { + 0xbb, 0xce, 0xbc, 0x0c, 0xd3, 0x98, 0x0f, 0xd0, 0x92, 0x02, 0x03, 0xd2, + 0xb5, 0x1d, 0x08, 0x92, +}; +static const unsigned char kat2965_addinpr2[] = { + 0xe9, 0xe7, 0xfe, 0x35, 0xe0, 0xc2, 0x11, 0x44, 0x3c, 0xf0, 0x7e, 0x6d, + 0x0d, 0xbf, 0x0a, 0x7c, +}; +static const unsigned char kat2965_retbits[] = { + 0x04, 0xad, 0x36, 0x05, 0x41, 0x20, 0xec, 0x41, 0x24, 0x7b, 0x90, 0xaf, + 0xc9, 0x4f, 0xa8, 0x35, 0xa8, 0x98, 0x83, 0x23, 0xe8, 0xa2, 0x25, 0x61, + 0xb0, 0x2a, 0x0b, 0x65, 0xf6, 0x8d, 0xc7, 0xe8, 0xd6, 0x77, 0x22, 0x50, + 0x84, 0x2f, 0xa8, 0x06, 0xdc, 0xa9, 0x2f, 0xce, 0x86, 0x5b, 0x6b, 0x46, + 0xe5, 0xb4, 0x0e, 0xbb, 0xb8, 0x0e, 0x5a, 0x71, 0xcb, 0xf5, 0x77, 0x51, + 0xdf, 0x5d, 0x34, 0xca, +}; +static const struct drbg_kat_pr_true kat2965_t = { + 9, kat2965_entropyin, kat2965_nonce, kat2965_persstr, + kat2965_entropyinpr1, kat2965_addinpr1, kat2965_entropyinpr2, + kat2965_addinpr2, kat2965_retbits +}; +static const struct drbg_kat kat2965 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2965_t +}; + +static const unsigned char kat2966_entropyin[] = { + 0x27, 0x19, 0x44, 0x7c, 0xb9, 0xb1, 0x98, 0xca, 0x3c, 0x52, 0xed, 0x2d, + 0xb2, 0xba, 0x29, 0xe1, +}; +static const unsigned char kat2966_nonce[] = { + 0x13, 0x94, 0x9c, 0xee, 0x0f, 0xd5, 0x28, 0xc9, +}; +static const unsigned char kat2966_persstr[] = {0}; +static const unsigned char kat2966_entropyinpr1[] = { + 0xab, 0x38, 0x8c, 0x4c, 0xe9, 0xc1, 0x84, 0x38, 0x1a, 0x8b, 0x21, 0x6d, + 0xc0, 0xc1, 0xfc, 0x3a, +}; +static const unsigned char kat2966_addinpr1[] = { + 0xba, 0xf6, 0x3a, 0x6d, 0x98, 0x04, 0x28, 0xc4, 0x8b, 0x06, 0x2b, 0xdd, + 0x36, 0x78, 0xcc, 0xc3, +}; +static const unsigned char kat2966_entropyinpr2[] = { + 0x9b, 0x9c, 0xbd, 0xcc, 0x5b, 0xe7, 0x75, 0x55, 0x6c, 0x5c, 0x8d, 0xf9, + 0xa4, 0xd2, 0xbf, 0x64, +}; +static const unsigned char kat2966_addinpr2[] = { + 0x8a, 0x3a, 0xff, 0x90, 0xd3, 0x58, 0x86, 0x7c, 0xaf, 0x75, 0xc7, 0xc2, + 0x8a, 0x14, 0x04, 0x31, +}; +static const unsigned char kat2966_retbits[] = { + 0x7d, 0x94, 0x5d, 0xdf, 0x55, 0x31, 0xea, 0x29, 0xa8, 0x9f, 0x1d, 0x81, + 0x70, 0x13, 0x2d, 0x7c, 0xf5, 0x6d, 0x36, 0xd5, 0x62, 0xe3, 0x48, 0x52, + 0x91, 0xfc, 0xe2, 0x9a, 0x8b, 0xa2, 0x2a, 0x85, 0x30, 0x78, 0xa3, 0x46, + 0x1e, 0x41, 0x55, 0x4b, 0xea, 0x15, 0xb8, 0xe4, 0x37, 0x5a, 0x43, 0xe0, + 0x03, 0x3c, 0x77, 0x8e, 0x2e, 0xc6, 0x3c, 0xfc, 0x1b, 0xc7, 0x10, 0xcf, + 0xaa, 0x21, 0x83, 0x3f, +}; +static const struct drbg_kat_pr_true kat2966_t = { + 10, kat2966_entropyin, kat2966_nonce, kat2966_persstr, + kat2966_entropyinpr1, kat2966_addinpr1, kat2966_entropyinpr2, + kat2966_addinpr2, kat2966_retbits +}; +static const struct drbg_kat kat2966 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2966_t +}; + +static const unsigned char kat2967_entropyin[] = { + 0xfe, 0x37, 0x61, 0x2c, 0x9b, 0x8c, 0x65, 0x72, 0xb7, 0x35, 0x3e, 0x4c, + 0xc0, 0xf4, 0xff, 0x5c, +}; +static const unsigned char kat2967_nonce[] = { + 0x51, 0x6c, 0x27, 0x0b, 0x8c, 0x70, 0x8f, 0x74, +}; +static const unsigned char kat2967_persstr[] = {0}; +static const unsigned char kat2967_entropyinpr1[] = { + 0x2c, 0x47, 0x3d, 0x7c, 0x28, 0xfe, 0x4e, 0x9c, 0xdc, 0x08, 0x8b, 0x70, + 0xcb, 0x88, 0x39, 0x90, +}; +static const unsigned char kat2967_addinpr1[] = { + 0x14, 0xea, 0x75, 0x12, 0xce, 0x4f, 0xb6, 0x24, 0xcb, 0x94, 0xed, 0xd5, + 0x7f, 0xc4, 0x82, 0x33, +}; +static const unsigned char kat2967_entropyinpr2[] = { + 0x8e, 0x3f, 0x57, 0xc8, 0x31, 0x48, 0x35, 0x69, 0x79, 0xf7, 0x72, 0x10, + 0xbd, 0xff, 0xba, 0xfb, +}; +static const unsigned char kat2967_addinpr2[] = { + 0xcc, 0xc7, 0x8b, 0x32, 0x72, 0x5c, 0x85, 0xfe, 0x04, 0xa7, 0x44, 0xfb, + 0x83, 0x3c, 0xcf, 0x0a, +}; +static const unsigned char kat2967_retbits[] = { + 0x58, 0x89, 0x74, 0x93, 0xa3, 0xbb, 0x74, 0xe2, 0x82, 0xf9, 0x67, 0x03, + 0x3d, 0x95, 0x0b, 0x3e, 0xb5, 0x7f, 0x46, 0x85, 0x9f, 0xc5, 0xa1, 0xc5, + 0x2a, 0x94, 0xea, 0xe8, 0x5f, 0xa3, 0x2d, 0xbf, 0xc8, 0x0b, 0xe7, 0x49, + 0xe0, 0x95, 0xcd, 0x1c, 0xdd, 0xaa, 0x43, 0x84, 0x22, 0xd0, 0xf3, 0x73, + 0x4f, 0xb7, 0xa3, 0x01, 0x50, 0xbe, 0x53, 0x89, 0x5a, 0x61, 0x4d, 0x0f, + 0xc4, 0x72, 0x7c, 0x91, +}; +static const struct drbg_kat_pr_true kat2967_t = { + 11, kat2967_entropyin, kat2967_nonce, kat2967_persstr, + kat2967_entropyinpr1, kat2967_addinpr1, kat2967_entropyinpr2, + kat2967_addinpr2, kat2967_retbits +}; +static const struct drbg_kat kat2967 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2967_t +}; + +static const unsigned char kat2968_entropyin[] = { + 0x9d, 0x49, 0x14, 0xa3, 0x61, 0x03, 0xdd, 0x43, 0x5f, 0x62, 0x5f, 0x24, + 0x3b, 0xf1, 0x19, 0x92, +}; +static const unsigned char kat2968_nonce[] = { + 0xab, 0x5c, 0x8a, 0xcb, 0xf0, 0x21, 0x92, 0x2c, +}; +static const unsigned char kat2968_persstr[] = {0}; +static const unsigned char kat2968_entropyinpr1[] = { + 0x65, 0x6a, 0x4b, 0x81, 0xb3, 0xfe, 0x65, 0xb3, 0xee, 0xdd, 0xec, 0x0a, + 0x19, 0x8e, 0x3a, 0xf8, +}; +static const unsigned char kat2968_addinpr1[] = { + 0xc9, 0xae, 0xf1, 0x3a, 0xe0, 0xfc, 0xcc, 0xe7, 0x68, 0xed, 0xae, 0xb4, + 0xa0, 0xc9, 0x41, 0x67, +}; +static const unsigned char kat2968_entropyinpr2[] = { + 0xbd, 0x7b, 0x43, 0x9e, 0x15, 0xa4, 0xd1, 0x58, 0xd3, 0x9e, 0x78, 0x1a, + 0xb9, 0x30, 0x0d, 0x7a, +}; +static const unsigned char kat2968_addinpr2[] = { + 0x78, 0xcc, 0x00, 0x69, 0xc5, 0xb5, 0x91, 0x8b, 0x69, 0xaf, 0x77, 0x3d, + 0xc7, 0xe5, 0x48, 0x89, +}; +static const unsigned char kat2968_retbits[] = { + 0xb4, 0xc7, 0x9a, 0x91, 0x62, 0xcc, 0x10, 0xd5, 0x52, 0x2c, 0x1f, 0xfd, + 0x32, 0xa2, 0x6b, 0x3f, 0xaf, 0xab, 0xd8, 0xd3, 0x7c, 0x87, 0xb6, 0xba, + 0xa2, 0x7c, 0xdf, 0xea, 0x56, 0x31, 0x23, 0x18, 0xa6, 0x58, 0x81, 0x9e, + 0x70, 0xd9, 0x5b, 0xbe, 0xcc, 0xc6, 0x91, 0x9b, 0x70, 0x0c, 0x88, 0xd5, + 0x3c, 0x10, 0xee, 0x5c, 0x95, 0x49, 0x09, 0x5c, 0xab, 0x30, 0x42, 0x00, + 0x5e, 0xce, 0xa5, 0x96, +}; +static const struct drbg_kat_pr_true kat2968_t = { + 12, kat2968_entropyin, kat2968_nonce, kat2968_persstr, + kat2968_entropyinpr1, kat2968_addinpr1, kat2968_entropyinpr2, + kat2968_addinpr2, kat2968_retbits +}; +static const struct drbg_kat kat2968 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2968_t +}; + +static const unsigned char kat2969_entropyin[] = { + 0x42, 0x58, 0x6d, 0xb7, 0x3f, 0x86, 0x56, 0xea, 0x70, 0xe5, 0xad, 0x27, + 0x84, 0x0e, 0x1b, 0x67, +}; +static const unsigned char kat2969_nonce[] = { + 0x40, 0xc9, 0xfd, 0xa1, 0x83, 0x21, 0x27, 0x37, +}; +static const unsigned char kat2969_persstr[] = {0}; +static const unsigned char kat2969_entropyinpr1[] = { + 0x15, 0xd6, 0x3c, 0x43, 0x76, 0x9f, 0x16, 0xe5, 0x16, 0x68, 0xd7, 0xfa, + 0x50, 0x9f, 0x0d, 0xb5, +}; +static const unsigned char kat2969_addinpr1[] = { + 0xab, 0xb3, 0xe3, 0x4c, 0x36, 0x07, 0x68, 0xb1, 0xbe, 0xcb, 0x80, 0x57, + 0x10, 0x6e, 0x97, 0x1d, +}; +static const unsigned char kat2969_entropyinpr2[] = { + 0x98, 0x97, 0xe6, 0x3b, 0xb4, 0x06, 0x0b, 0x72, 0xd3, 0x75, 0xd0, 0x38, + 0xd8, 0x2e, 0xae, 0x03, +}; +static const unsigned char kat2969_addinpr2[] = { + 0x7f, 0xe8, 0x32, 0xa8, 0xc4, 0x7c, 0x9e, 0x87, 0x3c, 0xf1, 0xd1, 0xad, + 0x8c, 0xf6, 0x37, 0xd4, +}; +static const unsigned char kat2969_retbits[] = { + 0x0a, 0xec, 0xfd, 0xf5, 0xf5, 0x18, 0x42, 0x46, 0xe7, 0xcc, 0x26, 0x4f, + 0x65, 0xcb, 0x68, 0x15, 0x8e, 0x94, 0x6c, 0x0f, 0x21, 0x79, 0x76, 0xea, + 0xd0, 0xa9, 0x20, 0x65, 0xf1, 0xf1, 0x89, 0xe4, 0x4c, 0xd8, 0x6c, 0x8a, + 0x4d, 0xe9, 0x1d, 0xb1, 0x4a, 0xc2, 0x35, 0xd6, 0xa9, 0x40, 0xa6, 0x40, + 0x4a, 0x3b, 0xc3, 0xb1, 0xd9, 0xe4, 0xc1, 0x96, 0xdf, 0x4a, 0x6f, 0x3d, + 0x3c, 0x6a, 0xe4, 0x14, +}; +static const struct drbg_kat_pr_true kat2969_t = { + 13, kat2969_entropyin, kat2969_nonce, kat2969_persstr, + kat2969_entropyinpr1, kat2969_addinpr1, kat2969_entropyinpr2, + kat2969_addinpr2, kat2969_retbits +}; +static const struct drbg_kat kat2969 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2969_t +}; + +static const unsigned char kat2970_entropyin[] = { + 0xc3, 0x43, 0x03, 0x16, 0xd2, 0x71, 0xb5, 0x8a, 0x7b, 0xfa, 0x40, 0xc2, + 0x96, 0x69, 0xba, 0xba, +}; +static const unsigned char kat2970_nonce[] = { + 0xbe, 0x4b, 0x5e, 0x27, 0x65, 0xec, 0x1f, 0x03, +}; +static const unsigned char kat2970_persstr[] = {0}; +static const unsigned char kat2970_entropyinpr1[] = { + 0xa8, 0x27, 0x0e, 0xdf, 0xe3, 0x0f, 0xe5, 0x8b, 0xcc, 0x47, 0x67, 0x7a, + 0x14, 0x88, 0xd1, 0x5f, +}; +static const unsigned char kat2970_addinpr1[] = { + 0x14, 0x78, 0x4a, 0x87, 0xe4, 0xf9, 0x70, 0xfa, 0xf8, 0x69, 0x5d, 0xd4, + 0x91, 0xb2, 0xd0, 0x65, +}; +static const unsigned char kat2970_entropyinpr2[] = { + 0x65, 0x63, 0xbc, 0x22, 0x9e, 0x14, 0xc3, 0xa5, 0x92, 0x5d, 0x99, 0x93, + 0xf9, 0x3f, 0x8e, 0x00, +}; +static const unsigned char kat2970_addinpr2[] = { + 0x06, 0x1f, 0x8c, 0xfd, 0x6b, 0xbe, 0x66, 0x98, 0x14, 0x09, 0xdd, 0xe8, + 0x45, 0x23, 0x66, 0xd0, +}; +static const unsigned char kat2970_retbits[] = { + 0xb9, 0x0c, 0xf4, 0xc5, 0xfd, 0x85, 0x15, 0x09, 0x05, 0x96, 0xbe, 0x71, + 0xd9, 0x68, 0x63, 0xdb, 0xb5, 0xfc, 0x0a, 0xc9, 0x15, 0x8c, 0x9d, 0x90, + 0x95, 0xdc, 0xde, 0x0e, 0xe3, 0xb8, 0x9d, 0x8d, 0x7c, 0x5d, 0xfb, 0x1c, + 0x8b, 0xa7, 0x5e, 0x5d, 0xea, 0x91, 0x94, 0xd8, 0x65, 0x50, 0x22, 0xbf, + 0xa9, 0xd7, 0xaa, 0x8a, 0x95, 0x1e, 0x2f, 0x31, 0xcf, 0xfd, 0x83, 0x0a, + 0xf2, 0x04, 0xd7, 0xd7, +}; +static const struct drbg_kat_pr_true kat2970_t = { + 14, kat2970_entropyin, kat2970_nonce, kat2970_persstr, + kat2970_entropyinpr1, kat2970_addinpr1, kat2970_entropyinpr2, + kat2970_addinpr2, kat2970_retbits +}; +static const struct drbg_kat kat2970 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat2970_t +}; + +static const unsigned char kat2971_entropyin[] = { + 0xd7, 0x05, 0xaa, 0xf4, 0x8f, 0x69, 0x6a, 0x5a, 0xb5, 0xdd, 0xdd, 0xc6, + 0xef, 0xb7, 0xd5, 0x94, +}; +static const unsigned char kat2971_nonce[] = { + 0x11, 0x6a, 0x95, 0xcd, 0x47, 0x2a, 0x9c, 0xb0, +}; +static const unsigned char kat2971_persstr[] = { + 0x73, 0xce, 0xff, 0x34, 0x8b, 0x52, 0x60, 0xde, 0x7e, 0x87, 0xdd, 0xb2, + 0x2b, 0xfd, 0xc7, 0xd7, +}; +static const unsigned char kat2971_entropyinpr1[] = { + 0x7e, 0xa6, 0x57, 0x24, 0x58, 0x47, 0xdd, 0x4c, 0x01, 0x17, 0x8d, 0x80, + 0xf0, 0xb5, 0xb1, 0xd5, +}; +static const unsigned char kat2971_addinpr1[] = {0}; +static const unsigned char kat2971_entropyinpr2[] = { + 0xe0, 0xdf, 0xa3, 0xa2, 0x31, 0xa8, 0xae, 0x55, 0x0f, 0x85, 0x83, 0x49, + 0x06, 0xe4, 0xa2, 0xf6, +}; +static const unsigned char kat2971_addinpr2[] = {0}; +static const unsigned char kat2971_retbits[] = { + 0x0d, 0x1e, 0x63, 0xad, 0x35, 0xa0, 0x20, 0xbd, 0x81, 0x91, 0xb6, 0xca, + 0x8a, 0x1a, 0x1f, 0x75, 0x8e, 0x6f, 0x1d, 0x68, 0x93, 0xc2, 0xc8, 0x48, + 0xb9, 0xf1, 0x4b, 0x4e, 0xae, 0x86, 0xd4, 0xb2, 0x03, 0xdf, 0x8e, 0xa4, + 0xb4, 0x7d, 0x0b, 0x86, 0x8c, 0x0a, 0xd7, 0x8c, 0xe6, 0xf4, 0xa6, 0x38, + 0x63, 0x8c, 0xfe, 0x6d, 0x5a, 0x62, 0xc6, 0xe2, 0x4e, 0x95, 0x50, 0xaa, + 0x82, 0xa2, 0x6c, 0x47, +}; +static const struct drbg_kat_pr_true kat2971_t = { + 0, kat2971_entropyin, kat2971_nonce, kat2971_persstr, + kat2971_entropyinpr1, kat2971_addinpr1, kat2971_entropyinpr2, + kat2971_addinpr2, kat2971_retbits +}; +static const struct drbg_kat kat2971 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2971_t +}; + +static const unsigned char kat2972_entropyin[] = { + 0x18, 0xc2, 0x7d, 0xf5, 0x1d, 0x57, 0x0d, 0xe0, 0x44, 0xe1, 0xc2, 0x91, + 0xf1, 0xda, 0xd8, 0x1d, +}; +static const unsigned char kat2972_nonce[] = { + 0x31, 0x19, 0x12, 0xfb, 0xa9, 0x7e, 0x43, 0x33, +}; +static const unsigned char kat2972_persstr[] = { + 0x30, 0x07, 0xed, 0xe2, 0x05, 0xa7, 0x40, 0xf0, 0x5e, 0x46, 0x00, 0x21, + 0xe0, 0x86, 0xe7, 0xda, +}; +static const unsigned char kat2972_entropyinpr1[] = { + 0x31, 0xba, 0x77, 0x25, 0x92, 0xf8, 0x6b, 0xf2, 0xb3, 0xeb, 0x9b, 0x9c, + 0x79, 0x2b, 0xac, 0xd2, +}; +static const unsigned char kat2972_addinpr1[] = {0}; +static const unsigned char kat2972_entropyinpr2[] = { + 0x41, 0x83, 0x2c, 0x5d, 0xe9, 0xb2, 0xad, 0xa2, 0xef, 0xb0, 0x1b, 0x15, + 0x74, 0x0e, 0x75, 0x19, +}; +static const unsigned char kat2972_addinpr2[] = {0}; +static const unsigned char kat2972_retbits[] = { + 0xda, 0x11, 0xfb, 0xcf, 0x2c, 0xae, 0x28, 0xd1, 0x9d, 0x9a, 0xb6, 0xcd, + 0x8c, 0xc8, 0x65, 0x96, 0x8f, 0xc0, 0x9a, 0x61, 0x6d, 0xce, 0xad, 0x57, + 0x72, 0xbf, 0x05, 0xbb, 0x8c, 0x16, 0x64, 0x26, 0x9b, 0xcd, 0x8b, 0xb2, + 0x01, 0x16, 0x51, 0x82, 0x48, 0x1c, 0x65, 0x03, 0x29, 0xa8, 0x7a, 0x27, + 0x38, 0x72, 0x36, 0x36, 0x44, 0x6f, 0x4b, 0x38, 0x1c, 0x78, 0x7e, 0xbe, + 0xcc, 0x89, 0xfb, 0x68, +}; +static const struct drbg_kat_pr_true kat2972_t = { + 1, kat2972_entropyin, kat2972_nonce, kat2972_persstr, + kat2972_entropyinpr1, kat2972_addinpr1, kat2972_entropyinpr2, + kat2972_addinpr2, kat2972_retbits +}; +static const struct drbg_kat kat2972 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2972_t +}; + +static const unsigned char kat2973_entropyin[] = { + 0xa2, 0x95, 0xd5, 0x57, 0x06, 0x7c, 0xcb, 0x87, 0xd1, 0xe8, 0xfc, 0x74, + 0xb6, 0x11, 0x85, 0x95, +}; +static const unsigned char kat2973_nonce[] = { + 0x36, 0x49, 0xf0, 0x4e, 0xf9, 0x94, 0x1f, 0x5a, +}; +static const unsigned char kat2973_persstr[] = { + 0xac, 0xe6, 0x73, 0x0e, 0x9f, 0xdd, 0x8d, 0xc4, 0xad, 0xfa, 0xd6, 0x04, + 0x26, 0xe2, 0x60, 0x7b, +}; +static const unsigned char kat2973_entropyinpr1[] = { + 0x9d, 0xe9, 0x5f, 0x6e, 0x86, 0x7c, 0xc0, 0xc3, 0x4e, 0x6c, 0xb3, 0xe4, + 0x52, 0x6f, 0x89, 0x7a, +}; +static const unsigned char kat2973_addinpr1[] = {0}; +static const unsigned char kat2973_entropyinpr2[] = { + 0xa0, 0x72, 0x01, 0x8d, 0xe3, 0x90, 0xbf, 0x38, 0x90, 0x72, 0xa1, 0xad, + 0x80, 0xce, 0x93, 0x5d, +}; +static const unsigned char kat2973_addinpr2[] = {0}; +static const unsigned char kat2973_retbits[] = { + 0x60, 0x56, 0x2b, 0x95, 0x09, 0x80, 0x77, 0xb9, 0x05, 0x4f, 0x4c, 0xf5, + 0xb5, 0x11, 0x7b, 0xc9, 0xfe, 0x10, 0x42, 0xa2, 0x2f, 0xda, 0x50, 0xdc, + 0x9f, 0x95, 0xde, 0x8f, 0x2c, 0x19, 0x21, 0x6b, 0x30, 0x12, 0x50, 0x82, + 0xbe, 0x8e, 0x89, 0x95, 0x24, 0xf0, 0xac, 0x49, 0x92, 0xeb, 0xb7, 0xdf, + 0xce, 0x36, 0xe8, 0x15, 0x2a, 0x71, 0x10, 0xc9, 0x54, 0x29, 0x39, 0xb7, + 0x8a, 0xce, 0x1b, 0xac, +}; +static const struct drbg_kat_pr_true kat2973_t = { + 2, kat2973_entropyin, kat2973_nonce, kat2973_persstr, + kat2973_entropyinpr1, kat2973_addinpr1, kat2973_entropyinpr2, + kat2973_addinpr2, kat2973_retbits +}; +static const struct drbg_kat kat2973 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2973_t +}; + +static const unsigned char kat2974_entropyin[] = { + 0x8c, 0x4e, 0x18, 0x30, 0xb5, 0xb7, 0x24, 0x02, 0x86, 0xc6, 0xb2, 0xd2, + 0x08, 0x43, 0x34, 0x12, +}; +static const unsigned char kat2974_nonce[] = { + 0x00, 0x1c, 0xa8, 0xce, 0xd8, 0x94, 0xae, 0x12, +}; +static const unsigned char kat2974_persstr[] = { + 0x2b, 0x54, 0x34, 0x40, 0x29, 0x76, 0x3f, 0x73, 0xc4, 0x0e, 0xf8, 0x98, + 0xa6, 0xe7, 0xa9, 0x6c, +}; +static const unsigned char kat2974_entropyinpr1[] = { + 0xc5, 0xa1, 0x75, 0x32, 0x88, 0x28, 0xff, 0x3e, 0x62, 0x4a, 0x06, 0x56, + 0xb4, 0x08, 0xe5, 0x16, +}; +static const unsigned char kat2974_addinpr1[] = {0}; +static const unsigned char kat2974_entropyinpr2[] = { + 0x8d, 0x6e, 0x95, 0x00, 0x6f, 0x5b, 0x29, 0x91, 0xae, 0x4d, 0xcf, 0xaa, + 0x3f, 0x74, 0xaa, 0x77, +}; +static const unsigned char kat2974_addinpr2[] = {0}; +static const unsigned char kat2974_retbits[] = { + 0xb2, 0x1a, 0xaf, 0xc7, 0xc0, 0x90, 0xa8, 0x16, 0xcb, 0x85, 0xcc, 0x94, + 0x34, 0x79, 0x1c, 0x81, 0x0f, 0xc8, 0x04, 0x41, 0x56, 0xf1, 0xb3, 0xea, + 0x35, 0x87, 0xb2, 0x70, 0x1b, 0x6d, 0x23, 0x5f, 0xc2, 0xd5, 0xa5, 0xed, + 0x48, 0x40, 0xf5, 0xf8, 0xf6, 0x49, 0x4f, 0x12, 0x9e, 0xa6, 0x0d, 0x64, + 0x05, 0xf4, 0xec, 0x76, 0xaa, 0x10, 0x18, 0xd9, 0xb9, 0x7f, 0x0a, 0x3c, + 0xa1, 0x32, 0x50, 0xbf, +}; +static const struct drbg_kat_pr_true kat2974_t = { + 3, kat2974_entropyin, kat2974_nonce, kat2974_persstr, + kat2974_entropyinpr1, kat2974_addinpr1, kat2974_entropyinpr2, + kat2974_addinpr2, kat2974_retbits +}; +static const struct drbg_kat kat2974 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2974_t +}; + +static const unsigned char kat2975_entropyin[] = { + 0xb3, 0x59, 0x5b, 0x6a, 0x90, 0x1c, 0xc9, 0xe8, 0x64, 0xbf, 0x3f, 0x9a, + 0xc4, 0x9c, 0x53, 0x72, +}; +static const unsigned char kat2975_nonce[] = { + 0x75, 0x9f, 0x07, 0x6d, 0xf8, 0x7b, 0xb9, 0xce, +}; +static const unsigned char kat2975_persstr[] = { + 0x58, 0x1a, 0xa6, 0x3b, 0xa4, 0xe9, 0x73, 0x45, 0x92, 0xa9, 0x1f, 0xd7, + 0x26, 0x4b, 0x14, 0x24, +}; +static const unsigned char kat2975_entropyinpr1[] = { + 0x67, 0xd6, 0xef, 0x6b, 0x68, 0x2a, 0x92, 0x3e, 0x9f, 0x0c, 0xad, 0x08, + 0xec, 0x71, 0x58, 0x8c, +}; +static const unsigned char kat2975_addinpr1[] = {0}; +static const unsigned char kat2975_entropyinpr2[] = { + 0xd1, 0x2b, 0x19, 0xf2, 0x6a, 0x69, 0xe6, 0x26, 0x1b, 0x8e, 0x5b, 0x6d, + 0xd7, 0x9a, 0xb0, 0xee, +}; +static const unsigned char kat2975_addinpr2[] = {0}; +static const unsigned char kat2975_retbits[] = { + 0xe1, 0x32, 0x97, 0x6f, 0x83, 0x49, 0xd4, 0x8b, 0xc5, 0x33, 0x27, 0xdc, + 0xd4, 0x9f, 0x31, 0x41, 0x76, 0x00, 0x67, 0x24, 0x23, 0x85, 0xf6, 0xe1, + 0x80, 0xa4, 0xdc, 0xdb, 0x28, 0xe4, 0x09, 0xeb, 0x5c, 0x88, 0x12, 0x55, + 0x4d, 0xb1, 0x1d, 0xc4, 0xdf, 0x0b, 0x9e, 0x05, 0x35, 0x23, 0x28, 0x31, + 0xf3, 0x70, 0x60, 0xfd, 0xcb, 0x0f, 0xc5, 0x55, 0x4a, 0xfd, 0x7c, 0xe2, + 0x29, 0x5d, 0x65, 0xc9, +}; +static const struct drbg_kat_pr_true kat2975_t = { + 4, kat2975_entropyin, kat2975_nonce, kat2975_persstr, + kat2975_entropyinpr1, kat2975_addinpr1, kat2975_entropyinpr2, + kat2975_addinpr2, kat2975_retbits +}; +static const struct drbg_kat kat2975 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2975_t +}; + +static const unsigned char kat2976_entropyin[] = { + 0x4b, 0xaa, 0xb6, 0xe2, 0x1d, 0x40, 0x4f, 0x94, 0xe8, 0xce, 0xa6, 0x4d, + 0xb4, 0xd6, 0x0f, 0x32, +}; +static const unsigned char kat2976_nonce[] = { + 0xa9, 0xab, 0x4a, 0x57, 0x01, 0xac, 0x32, 0x2f, +}; +static const unsigned char kat2976_persstr[] = { + 0xc2, 0x34, 0x28, 0x9d, 0x97, 0x80, 0xa9, 0x72, 0x41, 0x42, 0x7a, 0x6e, + 0x83, 0x01, 0xcd, 0xb3, +}; +static const unsigned char kat2976_entropyinpr1[] = { + 0x1a, 0xa1, 0xd7, 0x3e, 0xb6, 0xd3, 0x8c, 0x67, 0xa3, 0x54, 0x1b, 0x44, + 0xc5, 0x2c, 0x84, 0x32, +}; +static const unsigned char kat2976_addinpr1[] = {0}; +static const unsigned char kat2976_entropyinpr2[] = { + 0x87, 0x7a, 0xb4, 0xcd, 0x2f, 0xa1, 0xc6, 0xd8, 0xe3, 0x1b, 0xc8, 0x7f, + 0xdf, 0x26, 0x81, 0xe5, +}; +static const unsigned char kat2976_addinpr2[] = {0}; +static const unsigned char kat2976_retbits[] = { + 0xc4, 0x48, 0x70, 0xff, 0x58, 0xe4, 0xa2, 0x5d, 0xfc, 0xd1, 0x4e, 0x73, + 0x08, 0x4b, 0x88, 0x40, 0xf5, 0x96, 0x69, 0x9c, 0xce, 0x0f, 0x51, 0x94, + 0x3a, 0x4e, 0xfe, 0x6c, 0x1f, 0x2e, 0x4e, 0x61, 0xc8, 0x2f, 0x4d, 0xb5, + 0xe2, 0x75, 0xa9, 0x6e, 0x03, 0x5a, 0xfc, 0x35, 0x02, 0xec, 0x2e, 0xd1, + 0x52, 0xf4, 0x53, 0x16, 0x2d, 0x97, 0xc0, 0xc9, 0x02, 0x52, 0x58, 0xdc, + 0x80, 0x21, 0xef, 0x2c, +}; +static const struct drbg_kat_pr_true kat2976_t = { + 5, kat2976_entropyin, kat2976_nonce, kat2976_persstr, + kat2976_entropyinpr1, kat2976_addinpr1, kat2976_entropyinpr2, + kat2976_addinpr2, kat2976_retbits +}; +static const struct drbg_kat kat2976 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2976_t +}; + +static const unsigned char kat2977_entropyin[] = { + 0xf7, 0x9a, 0x4a, 0xa7, 0xb3, 0x81, 0x5e, 0x5c, 0x1a, 0xeb, 0x17, 0x65, + 0x20, 0x01, 0x63, 0xba, +}; +static const unsigned char kat2977_nonce[] = { + 0xbe, 0x93, 0xad, 0x06, 0x47, 0xe1, 0xdb, 0x26, +}; +static const unsigned char kat2977_persstr[] = { + 0xd1, 0xc3, 0x44, 0x51, 0x8f, 0x33, 0x12, 0x30, 0x40, 0x00, 0x61, 0xfc, + 0xe2, 0xf1, 0x88, 0xed, +}; +static const unsigned char kat2977_entropyinpr1[] = { + 0xb3, 0x55, 0x4b, 0xf0, 0xc6, 0x2d, 0x76, 0x03, 0xc0, 0xf8, 0x95, 0xdf, + 0xa7, 0x3a, 0x75, 0x5c, +}; +static const unsigned char kat2977_addinpr1[] = {0}; +static const unsigned char kat2977_entropyinpr2[] = { + 0xf6, 0xbf, 0x07, 0xe1, 0x42, 0x35, 0x55, 0xbc, 0x53, 0x23, 0x8e, 0xe3, + 0xd6, 0x9b, 0x9e, 0x3e, +}; +static const unsigned char kat2977_addinpr2[] = {0}; +static const unsigned char kat2977_retbits[] = { + 0xdf, 0xf6, 0x6e, 0x02, 0x5a, 0xc4, 0x77, 0xe5, 0x56, 0x7b, 0x53, 0xa0, + 0xc2, 0x72, 0x44, 0xf6, 0x27, 0xc1, 0xd3, 0xe6, 0xdd, 0x15, 0xb2, 0x39, + 0xea, 0x97, 0x12, 0x38, 0x5e, 0xd3, 0x06, 0xad, 0xc3, 0xcf, 0x2d, 0xe9, + 0x9f, 0x5e, 0x8a, 0xe4, 0xa4, 0xed, 0x47, 0xf7, 0x19, 0xfc, 0x2f, 0xfe, + 0xd2, 0x2c, 0x74, 0x8b, 0x09, 0x1a, 0x16, 0xb5, 0xa6, 0x43, 0xb1, 0xbf, + 0x18, 0x03, 0xa2, 0x9d, +}; +static const struct drbg_kat_pr_true kat2977_t = { + 6, kat2977_entropyin, kat2977_nonce, kat2977_persstr, + kat2977_entropyinpr1, kat2977_addinpr1, kat2977_entropyinpr2, + kat2977_addinpr2, kat2977_retbits +}; +static const struct drbg_kat kat2977 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2977_t +}; + +static const unsigned char kat2978_entropyin[] = { + 0x7e, 0x20, 0xa3, 0x5f, 0x3e, 0xf9, 0x33, 0xf8, 0x95, 0xf9, 0x09, 0x47, + 0x65, 0x80, 0x89, 0xfc, +}; +static const unsigned char kat2978_nonce[] = { + 0x12, 0xd3, 0xdd, 0xca, 0xca, 0xc3, 0x13, 0x26, +}; +static const unsigned char kat2978_persstr[] = { + 0xd5, 0x65, 0xcd, 0x19, 0xa9, 0x94, 0x5f, 0xe2, 0x85, 0xa7, 0xdd, 0x3a, + 0xd0, 0xed, 0x69, 0x82, +}; +static const unsigned char kat2978_entropyinpr1[] = { + 0xd2, 0x8b, 0xdd, 0xcc, 0xeb, 0x0f, 0x9e, 0x04, 0x77, 0xee, 0xa7, 0x02, + 0xaf, 0xdf, 0x21, 0x25, +}; +static const unsigned char kat2978_addinpr1[] = {0}; +static const unsigned char kat2978_entropyinpr2[] = { + 0x4f, 0x62, 0xa1, 0x26, 0x49, 0x28, 0x3d, 0x74, 0xdd, 0x30, 0x25, 0xc1, + 0x8f, 0x4a, 0xc1, 0x00, +}; +static const unsigned char kat2978_addinpr2[] = {0}; +static const unsigned char kat2978_retbits[] = { + 0xe2, 0xbf, 0xab, 0x30, 0x13, 0xc4, 0xbc, 0xf8, 0xa1, 0x21, 0x7d, 0x72, + 0xf2, 0xf7, 0x03, 0x83, 0xb6, 0xc7, 0x51, 0x42, 0x58, 0xb0, 0x02, 0x68, + 0x8b, 0x9c, 0xd0, 0xde, 0x5d, 0x8e, 0x7c, 0xec, 0x72, 0xb8, 0x2e, 0x64, + 0x2a, 0x48, 0x13, 0x92, 0x1c, 0xce, 0x94, 0x50, 0x61, 0x90, 0xed, 0x45, + 0xe7, 0xe3, 0xf8, 0x2d, 0x87, 0xb1, 0x68, 0x7c, 0xa7, 0xcd, 0x3d, 0x82, + 0xa3, 0xf9, 0x64, 0x80, +}; +static const struct drbg_kat_pr_true kat2978_t = { + 7, kat2978_entropyin, kat2978_nonce, kat2978_persstr, + kat2978_entropyinpr1, kat2978_addinpr1, kat2978_entropyinpr2, + kat2978_addinpr2, kat2978_retbits +}; +static const struct drbg_kat kat2978 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2978_t +}; + +static const unsigned char kat2979_entropyin[] = { + 0xc0, 0xac, 0xa4, 0x25, 0x76, 0x84, 0x20, 0xdd, 0xec, 0x4c, 0xc0, 0x3a, + 0x33, 0x80, 0x8f, 0x77, +}; +static const unsigned char kat2979_nonce[] = { + 0x22, 0x56, 0x8a, 0x86, 0xba, 0x8c, 0x83, 0xe7, +}; +static const unsigned char kat2979_persstr[] = { + 0x92, 0xf9, 0xc7, 0xb6, 0x2d, 0x4c, 0xe2, 0xec, 0x14, 0x96, 0xfd, 0x16, + 0xfb, 0xdc, 0xd7, 0xf6, +}; +static const unsigned char kat2979_entropyinpr1[] = { + 0x3f, 0xbf, 0xc6, 0xda, 0xe2, 0x8b, 0x73, 0xc0, 0xa2, 0x64, 0x62, 0xa1, + 0xf1, 0xac, 0x0c, 0xa3, +}; +static const unsigned char kat2979_addinpr1[] = {0}; +static const unsigned char kat2979_entropyinpr2[] = { + 0xdb, 0x25, 0x6a, 0xc7, 0x32, 0xf8, 0x12, 0x89, 0x34, 0xcb, 0x9a, 0x97, + 0xc8, 0xbe, 0xa3, 0x5e, +}; +static const unsigned char kat2979_addinpr2[] = {0}; +static const unsigned char kat2979_retbits[] = { + 0xaa, 0xf9, 0xfa, 0xed, 0x83, 0xa8, 0x5f, 0xc9, 0xf1, 0x29, 0xc7, 0x81, + 0x80, 0xcd, 0xa0, 0x0e, 0x44, 0xf5, 0x46, 0xc1, 0xf2, 0x86, 0x20, 0x99, + 0xd8, 0x01, 0x9e, 0xcd, 0x32, 0x1c, 0xc5, 0x1e, 0x64, 0xe1, 0x3c, 0x9d, + 0x30, 0x53, 0x18, 0xbf, 0xf4, 0x47, 0x20, 0xcb, 0x5b, 0x7e, 0xf7, 0x94, + 0xd2, 0xe0, 0xca, 0x81, 0xaf, 0x91, 0xda, 0x65, 0x43, 0xa3, 0x7e, 0xca, + 0x62, 0x6b, 0xfd, 0x01, +}; +static const struct drbg_kat_pr_true kat2979_t = { + 8, kat2979_entropyin, kat2979_nonce, kat2979_persstr, + kat2979_entropyinpr1, kat2979_addinpr1, kat2979_entropyinpr2, + kat2979_addinpr2, kat2979_retbits +}; +static const struct drbg_kat kat2979 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2979_t +}; + +static const unsigned char kat2980_entropyin[] = { + 0xc3, 0xdf, 0x98, 0xf5, 0xa0, 0xa3, 0x8a, 0xd1, 0xd1, 0x5f, 0xc3, 0x95, + 0xfe, 0x8a, 0x08, 0xcb, +}; +static const unsigned char kat2980_nonce[] = { + 0xcc, 0x9b, 0xa4, 0x20, 0xa2, 0x1a, 0x1f, 0x11, +}; +static const unsigned char kat2980_persstr[] = { + 0x81, 0x32, 0x18, 0x5d, 0x85, 0x60, 0x86, 0x3c, 0x09, 0xdc, 0xf4, 0x15, + 0xea, 0x51, 0xd2, 0x7e, +}; +static const unsigned char kat2980_entropyinpr1[] = { + 0x96, 0xdd, 0x30, 0xf3, 0x3a, 0xea, 0xe0, 0xfd, 0x50, 0xe2, 0xe3, 0xa8, + 0x1d, 0x96, 0xf5, 0xd0, +}; +static const unsigned char kat2980_addinpr1[] = {0}; +static const unsigned char kat2980_entropyinpr2[] = { + 0x10, 0x6d, 0x12, 0xcb, 0xf1, 0x24, 0xfe, 0x5c, 0x26, 0x62, 0x89, 0x1c, + 0x01, 0xd5, 0x45, 0xce, +}; +static const unsigned char kat2980_addinpr2[] = {0}; +static const unsigned char kat2980_retbits[] = { + 0x51, 0x33, 0x27, 0x8a, 0x9e, 0xd3, 0x0d, 0x18, 0x84, 0xe1, 0x09, 0x64, + 0x10, 0x01, 0x98, 0x17, 0x50, 0x9e, 0x82, 0x60, 0x65, 0xf5, 0xeb, 0x91, + 0x27, 0x47, 0x12, 0x9b, 0x3c, 0x93, 0xb1, 0x26, 0x97, 0x21, 0xba, 0xce, + 0xc4, 0xd1, 0xaf, 0x9b, 0x5e, 0xe2, 0x2f, 0x23, 0x2a, 0x3a, 0x01, 0xe1, + 0x1c, 0xe3, 0x93, 0xf1, 0x0e, 0xff, 0xb1, 0x31, 0xb8, 0xcd, 0xda, 0x3c, + 0x51, 0x33, 0x50, 0xb5, +}; +static const struct drbg_kat_pr_true kat2980_t = { + 9, kat2980_entropyin, kat2980_nonce, kat2980_persstr, + kat2980_entropyinpr1, kat2980_addinpr1, kat2980_entropyinpr2, + kat2980_addinpr2, kat2980_retbits +}; +static const struct drbg_kat kat2980 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2980_t +}; + +static const unsigned char kat2981_entropyin[] = { + 0xb8, 0x74, 0x18, 0x9f, 0xb6, 0xae, 0x40, 0xfc, 0x45, 0xa7, 0xbe, 0xac, + 0x7e, 0x1d, 0xf9, 0xcc, +}; +static const unsigned char kat2981_nonce[] = { + 0x11, 0x93, 0x12, 0xb7, 0x77, 0x0a, 0x49, 0x6b, +}; +static const unsigned char kat2981_persstr[] = { + 0xad, 0xe1, 0x14, 0x92, 0xaa, 0x18, 0x86, 0xed, 0xd9, 0x1c, 0x1a, 0xb5, + 0xa3, 0xbe, 0x71, 0xdd, +}; +static const unsigned char kat2981_entropyinpr1[] = { + 0xb6, 0x04, 0x48, 0x99, 0x05, 0x6b, 0xb0, 0x4c, 0x27, 0x47, 0xd0, 0x37, + 0xeb, 0xf8, 0x03, 0xda, +}; +static const unsigned char kat2981_addinpr1[] = {0}; +static const unsigned char kat2981_entropyinpr2[] = { + 0x0d, 0x70, 0x4a, 0x06, 0x77, 0xd8, 0xac, 0xb6, 0xcb, 0xff, 0x42, 0xa2, + 0xca, 0x64, 0xec, 0x13, +}; +static const unsigned char kat2981_addinpr2[] = {0}; +static const unsigned char kat2981_retbits[] = { + 0x43, 0x30, 0x80, 0x68, 0x08, 0xe0, 0xa1, 0x82, 0x18, 0x1f, 0x6f, 0x0f, + 0x95, 0xf5, 0x1a, 0x75, 0x4e, 0x6c, 0x1a, 0x6b, 0x1d, 0xeb, 0x3d, 0x49, + 0x0f, 0xd0, 0xad, 0xc0, 0x42, 0xe3, 0xf7, 0xe1, 0x99, 0xf7, 0xa0, 0x85, + 0x84, 0xa0, 0x62, 0x2b, 0xd3, 0x87, 0xa2, 0x6c, 0x89, 0xa8, 0x62, 0x5b, + 0x76, 0xdd, 0x3d, 0xe8, 0x63, 0x04, 0x0a, 0xd6, 0x17, 0x96, 0xaf, 0x87, + 0x31, 0xd9, 0x51, 0xa9, +}; +static const struct drbg_kat_pr_true kat2981_t = { + 10, kat2981_entropyin, kat2981_nonce, kat2981_persstr, + kat2981_entropyinpr1, kat2981_addinpr1, kat2981_entropyinpr2, + kat2981_addinpr2, kat2981_retbits +}; +static const struct drbg_kat kat2981 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2981_t +}; + +static const unsigned char kat2982_entropyin[] = { + 0xea, 0x9d, 0x32, 0x6c, 0xb9, 0xe2, 0xac, 0x1e, 0x84, 0x12, 0xb2, 0xb8, + 0xb2, 0x3f, 0x00, 0x2f, +}; +static const unsigned char kat2982_nonce[] = { + 0x03, 0xc0, 0x90, 0x65, 0x4d, 0xfa, 0xcb, 0x54, +}; +static const unsigned char kat2982_persstr[] = { + 0xb8, 0xab, 0x56, 0x45, 0x28, 0x82, 0xab, 0xc8, 0xc4, 0xbf, 0x7c, 0xe7, + 0x91, 0x2b, 0x14, 0x33, +}; +static const unsigned char kat2982_entropyinpr1[] = { + 0xdc, 0xcd, 0x0e, 0xf1, 0x93, 0xde, 0x23, 0xbb, 0x1a, 0x2d, 0x86, 0x34, + 0x42, 0x0e, 0x64, 0x8b, +}; +static const unsigned char kat2982_addinpr1[] = {0}; +static const unsigned char kat2982_entropyinpr2[] = { + 0xc1, 0x74, 0x11, 0x7b, 0x03, 0x34, 0x0d, 0xf1, 0x7f, 0x2f, 0xc8, 0x7e, + 0x24, 0xfd, 0x7c, 0xca, +}; +static const unsigned char kat2982_addinpr2[] = {0}; +static const unsigned char kat2982_retbits[] = { + 0xd4, 0x0e, 0x95, 0x35, 0xd3, 0xd7, 0x03, 0x5d, 0xff, 0x7a, 0x5b, 0xbe, + 0x59, 0x18, 0x50, 0x96, 0x4e, 0xdf, 0xeb, 0x98, 0xb0, 0x6c, 0x12, 0x56, + 0x26, 0x05, 0xd7, 0x76, 0x62, 0xe5, 0x10, 0x17, 0x65, 0xf7, 0xf7, 0x20, + 0x86, 0x05, 0x7a, 0x07, 0xc6, 0x8e, 0xb0, 0xf1, 0x38, 0xbb, 0x48, 0x11, + 0xa3, 0x33, 0xa8, 0x49, 0xf2, 0x16, 0x38, 0x30, 0xc7, 0x1f, 0xe3, 0xcb, + 0x3f, 0x63, 0xc8, 0xab, +}; +static const struct drbg_kat_pr_true kat2982_t = { + 11, kat2982_entropyin, kat2982_nonce, kat2982_persstr, + kat2982_entropyinpr1, kat2982_addinpr1, kat2982_entropyinpr2, + kat2982_addinpr2, kat2982_retbits +}; +static const struct drbg_kat kat2982 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2982_t +}; + +static const unsigned char kat2983_entropyin[] = { + 0xdf, 0xf4, 0xc5, 0x37, 0x6b, 0xe3, 0x36, 0xf1, 0xa8, 0x61, 0xab, 0x58, + 0xf9, 0xca, 0x6f, 0xf5, +}; +static const unsigned char kat2983_nonce[] = { + 0xf7, 0x86, 0x90, 0xf5, 0x07, 0xfd, 0x71, 0xa5, +}; +static const unsigned char kat2983_persstr[] = { + 0xb1, 0xf9, 0xc1, 0x0b, 0xfd, 0x1f, 0xc5, 0x0e, 0xd7, 0x0b, 0x37, 0x0e, + 0xd8, 0xfc, 0x9c, 0x8c, +}; +static const unsigned char kat2983_entropyinpr1[] = { + 0xf2, 0x3a, 0xab, 0x61, 0xe6, 0x79, 0xe3, 0xec, 0x8e, 0xe0, 0x83, 0x07, + 0x27, 0x62, 0x2d, 0x38, +}; +static const unsigned char kat2983_addinpr1[] = {0}; +static const unsigned char kat2983_entropyinpr2[] = { + 0x09, 0x6d, 0xdb, 0x8a, 0xae, 0x13, 0x0c, 0x15, 0x37, 0x93, 0x73, 0xfd, + 0xb4, 0x9e, 0xed, 0xe4, +}; +static const unsigned char kat2983_addinpr2[] = {0}; +static const unsigned char kat2983_retbits[] = { + 0x95, 0x69, 0x83, 0xf9, 0x65, 0x39, 0x31, 0x59, 0x5c, 0x04, 0x59, 0x02, + 0x51, 0x08, 0xa7, 0xae, 0xf1, 0x3f, 0x1d, 0xde, 0xce, 0x8a, 0x46, 0xb5, + 0x0f, 0x4f, 0x22, 0xb7, 0x5f, 0x62, 0x8e, 0x74, 0xc7, 0x64, 0x21, 0x19, + 0x19, 0xff, 0x06, 0xc9, 0xd1, 0xf1, 0xf8, 0xd5, 0x10, 0x7d, 0x68, 0x42, + 0xaa, 0x37, 0x4a, 0x47, 0xca, 0x03, 0x3a, 0xd9, 0x02, 0xac, 0x2c, 0xe7, + 0x8f, 0xe8, 0x94, 0xa2, +}; +static const struct drbg_kat_pr_true kat2983_t = { + 12, kat2983_entropyin, kat2983_nonce, kat2983_persstr, + kat2983_entropyinpr1, kat2983_addinpr1, kat2983_entropyinpr2, + kat2983_addinpr2, kat2983_retbits +}; +static const struct drbg_kat kat2983 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2983_t +}; + +static const unsigned char kat2984_entropyin[] = { + 0x07, 0x29, 0x97, 0xea, 0x02, 0x39, 0xb0, 0x77, 0x60, 0x26, 0x18, 0x7e, + 0xb7, 0x58, 0xa5, 0x38, +}; +static const unsigned char kat2984_nonce[] = { + 0x2a, 0x54, 0x74, 0x75, 0xc2, 0x35, 0xe4, 0x3f, +}; +static const unsigned char kat2984_persstr[] = { + 0x37, 0xb2, 0xf8, 0x18, 0xc8, 0x0e, 0x77, 0x6e, 0xe8, 0xea, 0xe4, 0x93, + 0xc0, 0xdf, 0xf1, 0x80, +}; +static const unsigned char kat2984_entropyinpr1[] = { + 0x10, 0xf8, 0xa9, 0x83, 0x83, 0xa4, 0x5a, 0x3d, 0x76, 0xc8, 0x7c, 0xb6, + 0x1f, 0xec, 0x82, 0x7e, +}; +static const unsigned char kat2984_addinpr1[] = {0}; +static const unsigned char kat2984_entropyinpr2[] = { + 0x77, 0xa9, 0x54, 0x71, 0x3b, 0xa0, 0x44, 0x85, 0x15, 0x64, 0xbf, 0x96, + 0xd6, 0x64, 0x0f, 0xe8, +}; +static const unsigned char kat2984_addinpr2[] = {0}; +static const unsigned char kat2984_retbits[] = { + 0x40, 0x9a, 0x70, 0x34, 0x36, 0x2e, 0x74, 0x26, 0x9b, 0xcd, 0x91, 0x8a, + 0xec, 0x93, 0xa4, 0xf1, 0xf1, 0xeb, 0x23, 0xb2, 0xb4, 0x97, 0xff, 0x0a, + 0xd1, 0xc9, 0x60, 0x68, 0x48, 0x44, 0xda, 0x2a, 0x18, 0x6e, 0x47, 0x3a, + 0x8f, 0xbe, 0xc3, 0xfe, 0xef, 0x80, 0x03, 0x29, 0x9b, 0x8c, 0xaf, 0xf7, + 0x23, 0xe1, 0xb3, 0x21, 0x2d, 0xf7, 0x9a, 0x71, 0xdc, 0xa5, 0xaf, 0x97, + 0xe3, 0x2c, 0x05, 0xaf, +}; +static const struct drbg_kat_pr_true kat2984_t = { + 13, kat2984_entropyin, kat2984_nonce, kat2984_persstr, + kat2984_entropyinpr1, kat2984_addinpr1, kat2984_entropyinpr2, + kat2984_addinpr2, kat2984_retbits +}; +static const struct drbg_kat kat2984 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2984_t +}; + +static const unsigned char kat2985_entropyin[] = { + 0x0c, 0x45, 0xd7, 0x4b, 0xd2, 0x62, 0x6a, 0x07, 0xb4, 0x79, 0x38, 0x77, + 0x92, 0xa8, 0xab, 0x83, +}; +static const unsigned char kat2985_nonce[] = { + 0x07, 0xb5, 0x0e, 0xcd, 0x33, 0x70, 0x86, 0x0d, +}; +static const unsigned char kat2985_persstr[] = { + 0xcb, 0x3f, 0x39, 0x79, 0x0f, 0xe2, 0x9e, 0xb8, 0x62, 0x62, 0x2b, 0x5a, + 0xe4, 0xc0, 0xf0, 0xd7, +}; +static const unsigned char kat2985_entropyinpr1[] = { + 0xa3, 0xf5, 0x05, 0xe0, 0x07, 0x3a, 0xe4, 0x8d, 0xda, 0xe9, 0x40, 0x19, + 0x8f, 0x72, 0x3d, 0x5c, +}; +static const unsigned char kat2985_addinpr1[] = {0}; +static const unsigned char kat2985_entropyinpr2[] = { + 0xc7, 0x4e, 0xe2, 0x8f, 0xdb, 0x81, 0x39, 0x59, 0xa7, 0xb8, 0x36, 0xfb, + 0x02, 0x4f, 0xa7, 0x95, +}; +static const unsigned char kat2985_addinpr2[] = {0}; +static const unsigned char kat2985_retbits[] = { + 0x2a, 0x68, 0x87, 0x12, 0x36, 0x00, 0x1a, 0xf9, 0xd1, 0x15, 0x49, 0x84, + 0xfd, 0xa1, 0xa9, 0xfc, 0x3d, 0x80, 0x80, 0x5f, 0xd3, 0x97, 0x24, 0x09, + 0x27, 0xc5, 0xae, 0xdf, 0xf5, 0xdf, 0xe0, 0x53, 0xfc, 0x26, 0x91, 0xe8, + 0x9d, 0x53, 0x7b, 0x6f, 0xd2, 0xd8, 0x3b, 0x54, 0x21, 0xd5, 0x34, 0x53, + 0x9f, 0xf5, 0x6b, 0x48, 0xfa, 0x39, 0xdd, 0xc0, 0x90, 0xf6, 0x58, 0xf6, + 0xc1, 0xab, 0x88, 0xad, +}; +static const struct drbg_kat_pr_true kat2985_t = { + 14, kat2985_entropyin, kat2985_nonce, kat2985_persstr, + kat2985_entropyinpr1, kat2985_addinpr1, kat2985_entropyinpr2, + kat2985_addinpr2, kat2985_retbits +}; +static const struct drbg_kat kat2985 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat2985_t +}; + +static const unsigned char kat2986_entropyin[] = { + 0x0b, 0x02, 0x60, 0xd0, 0x2c, 0xb7, 0x9f, 0xb2, 0xad, 0xa4, 0xd0, 0xdf, + 0x88, 0xcb, 0x32, 0x48, +}; +static const unsigned char kat2986_nonce[] = { + 0xde, 0x13, 0xd8, 0x59, 0x66, 0x8e, 0x49, 0xb3, +}; +static const unsigned char kat2986_persstr[] = { + 0x91, 0x2b, 0x15, 0x12, 0xe6, 0x4d, 0xbd, 0xac, 0x5d, 0xa9, 0x80, 0x08, + 0xfa, 0x77, 0x1b, 0xc5, +}; +static const unsigned char kat2986_entropyinpr1[] = { + 0x5e, 0x2c, 0x67, 0xc9, 0x0d, 0x83, 0x12, 0xfd, 0xc5, 0x19, 0xa6, 0x25, + 0xa0, 0xb7, 0xed, 0x7b, +}; +static const unsigned char kat2986_addinpr1[] = { + 0x69, 0xc8, 0x5a, 0x47, 0x12, 0x6f, 0xf9, 0x30, 0x68, 0x5c, 0x8c, 0xaf, + 0x6c, 0x56, 0xb9, 0x17, +}; +static const unsigned char kat2986_entropyinpr2[] = { + 0x10, 0xdd, 0x71, 0xab, 0x4e, 0x03, 0x7f, 0xc2, 0x92, 0xeb, 0x23, 0xe1, + 0xb3, 0xc0, 0x0b, 0xf1, +}; +static const unsigned char kat2986_addinpr2[] = { + 0x51, 0xe9, 0xd4, 0xae, 0x6b, 0xfa, 0xc0, 0x2f, 0x97, 0x02, 0x39, 0x54, + 0x54, 0x5b, 0x6e, 0x36, +}; +static const unsigned char kat2986_retbits[] = { + 0x2c, 0x06, 0xee, 0x22, 0xf7, 0xcf, 0x62, 0xcf, 0x70, 0x9c, 0x12, 0x3e, + 0xa0, 0xc2, 0x52, 0x59, 0x17, 0x2f, 0x0c, 0xd8, 0x30, 0x7a, 0xfd, 0xb8, + 0xb3, 0xbb, 0xc2, 0x81, 0xac, 0xc8, 0x5a, 0xed, 0x7a, 0xff, 0x8e, 0xd9, + 0xfa, 0xb6, 0x32, 0xf4, 0xd0, 0x78, 0x36, 0x6d, 0x55, 0x74, 0x80, 0xb9, + 0xb8, 0xc9, 0xb7, 0xae, 0xa1, 0xb0, 0x92, 0x0d, 0x6c, 0x2a, 0x78, 0x4c, + 0xfe, 0x72, 0xc7, 0x57, +}; +static const struct drbg_kat_pr_true kat2986_t = { + 0, kat2986_entropyin, kat2986_nonce, kat2986_persstr, + kat2986_entropyinpr1, kat2986_addinpr1, kat2986_entropyinpr2, + kat2986_addinpr2, kat2986_retbits +}; +static const struct drbg_kat kat2986 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2986_t +}; + +static const unsigned char kat2987_entropyin[] = { + 0xde, 0x37, 0x31, 0xfb, 0xc0, 0x96, 0x22, 0x7d, 0x77, 0xda, 0xd8, 0x08, + 0xe1, 0x09, 0xb8, 0x46, +}; +static const unsigned char kat2987_nonce[] = { + 0xf0, 0xd3, 0x1b, 0x93, 0x89, 0x1f, 0xce, 0xb7, +}; +static const unsigned char kat2987_persstr[] = { + 0x3a, 0x1e, 0x1d, 0x3d, 0xac, 0x88, 0xa6, 0xee, 0x5b, 0xb1, 0x66, 0x1e, + 0xb7, 0x27, 0xb7, 0xd3, +}; +static const unsigned char kat2987_entropyinpr1[] = { + 0x69, 0xb4, 0xa2, 0x02, 0x9c, 0x25, 0xbd, 0x21, 0x73, 0x84, 0xf7, 0x5a, + 0xe0, 0x39, 0xf2, 0xab, +}; +static const unsigned char kat2987_addinpr1[] = { + 0x18, 0x9d, 0x25, 0x8d, 0xbc, 0x1c, 0xb1, 0x7c, 0x94, 0xaa, 0xf6, 0x36, + 0xcb, 0xf4, 0x36, 0xe8, +}; +static const unsigned char kat2987_entropyinpr2[] = { + 0x76, 0xce, 0x34, 0x3d, 0x17, 0x34, 0x73, 0xe4, 0xd4, 0xcc, 0xa8, 0xf4, + 0x9d, 0xbb, 0x22, 0xb1, +}; +static const unsigned char kat2987_addinpr2[] = { + 0x84, 0x47, 0xc2, 0x5b, 0x7f, 0x4e, 0xea, 0xe3, 0xd8, 0x1b, 0x45, 0x77, + 0x44, 0x2c, 0xd7, 0x9a, +}; +static const unsigned char kat2987_retbits[] = { + 0x3c, 0x61, 0xfd, 0x32, 0xf5, 0xde, 0xc3, 0xd3, 0x74, 0x30, 0x45, 0x34, + 0x55, 0x8c, 0x96, 0xd6, 0x41, 0xb1, 0x17, 0x5d, 0xfb, 0x92, 0x43, 0x17, + 0xfc, 0x2d, 0xb7, 0xc1, 0xd9, 0xfb, 0x74, 0x6c, 0xee, 0xba, 0xc4, 0x99, + 0x69, 0x59, 0x0f, 0x6b, 0x53, 0xb8, 0xc6, 0x84, 0xe9, 0xce, 0x5b, 0xc7, + 0x62, 0x88, 0xd3, 0xa1, 0x4b, 0xcb, 0x3d, 0xa1, 0xad, 0x62, 0x11, 0xa3, + 0x84, 0xd9, 0x55, 0xc9, +}; +static const struct drbg_kat_pr_true kat2987_t = { + 1, kat2987_entropyin, kat2987_nonce, kat2987_persstr, + kat2987_entropyinpr1, kat2987_addinpr1, kat2987_entropyinpr2, + kat2987_addinpr2, kat2987_retbits +}; +static const struct drbg_kat kat2987 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2987_t +}; + +static const unsigned char kat2988_entropyin[] = { + 0xdf, 0xc2, 0x39, 0x59, 0x2a, 0x01, 0xf0, 0x5b, 0x60, 0xdd, 0x86, 0x2b, + 0x2b, 0xb2, 0xaf, 0x90, +}; +static const unsigned char kat2988_nonce[] = { + 0xbb, 0x96, 0xba, 0xc6, 0xe5, 0xb0, 0x9d, 0xfe, +}; +static const unsigned char kat2988_persstr[] = { + 0xa9, 0xb1, 0x47, 0xb7, 0x3b, 0x0c, 0xe8, 0xbb, 0xec, 0x43, 0x9c, 0x47, + 0x51, 0xa9, 0x20, 0x9b, +}; +static const unsigned char kat2988_entropyinpr1[] = { + 0xcc, 0xed, 0x1e, 0x29, 0x6e, 0x4b, 0x59, 0xc1, 0x5c, 0xc9, 0xc8, 0xd9, + 0xe9, 0xcb, 0x23, 0x7f, +}; +static const unsigned char kat2988_addinpr1[] = { + 0x6b, 0xee, 0x10, 0xee, 0x0f, 0x37, 0xe9, 0xc4, 0x9c, 0x0c, 0x58, 0x01, + 0x77, 0x49, 0x3a, 0xdc, +}; +static const unsigned char kat2988_entropyinpr2[] = { + 0x0c, 0x0c, 0xe8, 0xf4, 0x7b, 0xbd, 0x84, 0x8d, 0xa0, 0xef, 0x22, 0x06, + 0x42, 0x69, 0x08, 0xc8, +}; +static const unsigned char kat2988_addinpr2[] = { + 0x58, 0xf8, 0x51, 0x30, 0x26, 0x52, 0x65, 0xbd, 0xc4, 0x15, 0x44, 0x6a, + 0x3a, 0x27, 0xfe, 0x39, +}; +static const unsigned char kat2988_retbits[] = { + 0xa1, 0x88, 0x3b, 0xef, 0x8a, 0xd9, 0x24, 0x40, 0xd9, 0x54, 0x5d, 0xe9, + 0x14, 0x69, 0x1a, 0x25, 0x27, 0xab, 0x5e, 0x6b, 0xc9, 0xe8, 0xdb, 0xa6, + 0xeb, 0xc7, 0x3e, 0xbc, 0x2e, 0xf2, 0x65, 0xa3, 0x01, 0x1b, 0x71, 0xd4, + 0x76, 0x36, 0x69, 0x12, 0x36, 0x95, 0x3d, 0xbd, 0xb3, 0xfe, 0xb2, 0x63, + 0x25, 0x88, 0x4b, 0xa5, 0xc8, 0x11, 0x51, 0xe4, 0xf4, 0x10, 0xe4, 0x1f, + 0x5e, 0x23, 0xb4, 0x59, +}; +static const struct drbg_kat_pr_true kat2988_t = { + 2, kat2988_entropyin, kat2988_nonce, kat2988_persstr, + kat2988_entropyinpr1, kat2988_addinpr1, kat2988_entropyinpr2, + kat2988_addinpr2, kat2988_retbits +}; +static const struct drbg_kat kat2988 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2988_t +}; + +static const unsigned char kat2989_entropyin[] = { + 0x75, 0xc5, 0x92, 0xeb, 0xad, 0x8a, 0x80, 0x41, 0x3a, 0x37, 0x6b, 0x03, + 0x67, 0xce, 0x42, 0x42, +}; +static const unsigned char kat2989_nonce[] = { + 0x8a, 0x8c, 0x68, 0xac, 0xf8, 0xc1, 0x6e, 0x64, +}; +static const unsigned char kat2989_persstr[] = { + 0xc3, 0x2d, 0xaa, 0x40, 0xd0, 0x3e, 0xbc, 0x4e, 0x3f, 0xea, 0x25, 0xdf, + 0xac, 0x4a, 0xc2, 0xdd, +}; +static const unsigned char kat2989_entropyinpr1[] = { + 0xd7, 0xc1, 0x16, 0xd7, 0x4a, 0xb6, 0x68, 0xbd, 0x84, 0x46, 0x30, 0xf3, + 0x0d, 0x54, 0x5a, 0x51, +}; +static const unsigned char kat2989_addinpr1[] = { + 0xf3, 0xac, 0x8b, 0x16, 0xe5, 0x4c, 0x64, 0xda, 0xe3, 0x33, 0x43, 0x06, + 0x05, 0x79, 0x42, 0x4e, +}; +static const unsigned char kat2989_entropyinpr2[] = { + 0x0a, 0xe6, 0xc4, 0x14, 0x2e, 0xf8, 0xaf, 0xf5, 0x52, 0x67, 0x75, 0xbf, + 0x36, 0x3b, 0x92, 0xce, +}; +static const unsigned char kat2989_addinpr2[] = { + 0xc1, 0xdb, 0x51, 0x8d, 0x0e, 0x4d, 0x53, 0x9c, 0x78, 0xb4, 0x41, 0x30, + 0x04, 0x4f, 0xc4, 0x7a, +}; +static const unsigned char kat2989_retbits[] = { + 0x84, 0x69, 0x2d, 0xef, 0x2f, 0x71, 0xd5, 0x34, 0x19, 0xdb, 0x38, 0xf9, + 0xf3, 0x67, 0x90, 0xfb, 0x1e, 0xfa, 0x31, 0xb9, 0x60, 0x7c, 0x5d, 0x94, + 0xe0, 0x49, 0x76, 0x38, 0xd7, 0x9f, 0xde, 0xae, 0xa2, 0x5f, 0xe6, 0x60, + 0xdf, 0xff, 0x95, 0xa9, 0x4e, 0x00, 0x94, 0x4c, 0x53, 0xa1, 0x8f, 0x3c, + 0xe5, 0x57, 0xca, 0x1b, 0xd7, 0x1c, 0x77, 0xca, 0xa4, 0xda, 0xcf, 0x3c, + 0x18, 0x38, 0xb9, 0x4a, +}; +static const struct drbg_kat_pr_true kat2989_t = { + 3, kat2989_entropyin, kat2989_nonce, kat2989_persstr, + kat2989_entropyinpr1, kat2989_addinpr1, kat2989_entropyinpr2, + kat2989_addinpr2, kat2989_retbits +}; +static const struct drbg_kat kat2989 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2989_t +}; + +static const unsigned char kat2990_entropyin[] = { + 0x1a, 0x61, 0xe0, 0xac, 0x82, 0xb5, 0x35, 0xee, 0x84, 0x41, 0x2c, 0xee, + 0x08, 0x4e, 0x4c, 0xca, +}; +static const unsigned char kat2990_nonce[] = { + 0xa4, 0xd0, 0xf9, 0xcc, 0x0c, 0xc8, 0xdf, 0x48, +}; +static const unsigned char kat2990_persstr[] = { + 0xf5, 0x70, 0x93, 0xd4, 0x37, 0x32, 0x92, 0xb3, 0xc3, 0x4a, 0x74, 0xdc, + 0xb7, 0x2e, 0x5a, 0x10, +}; +static const unsigned char kat2990_entropyinpr1[] = { + 0xb9, 0xe9, 0x15, 0x3e, 0xa2, 0x53, 0x7a, 0x91, 0x4d, 0xb3, 0x5b, 0xd1, + 0x1d, 0x0d, 0xc5, 0x04, +}; +static const unsigned char kat2990_addinpr1[] = { + 0x91, 0xc7, 0x8c, 0x51, 0xa9, 0x6f, 0xed, 0x59, 0xeb, 0x9d, 0xd5, 0x99, + 0x85, 0x02, 0x06, 0xa8, +}; +static const unsigned char kat2990_entropyinpr2[] = { + 0xfb, 0x50, 0x2d, 0xa3, 0xc8, 0xb0, 0x97, 0xf2, 0xe6, 0xfc, 0x22, 0x5b, + 0x6a, 0x71, 0xa2, 0x39, +}; +static const unsigned char kat2990_addinpr2[] = { + 0x1e, 0x60, 0x4b, 0x04, 0xb1, 0xd8, 0x3b, 0xda, 0x4f, 0x06, 0x8f, 0xa2, + 0x95, 0xcb, 0xbf, 0xbf, +}; +static const unsigned char kat2990_retbits[] = { + 0x27, 0xd1, 0x6d, 0xbc, 0x60, 0xd5, 0xf0, 0xb9, 0xe5, 0x9c, 0x99, 0xa1, + 0x11, 0x78, 0x32, 0x4f, 0xfc, 0xa9, 0x14, 0x54, 0x88, 0x69, 0x21, 0x72, + 0x95, 0xe8, 0xd0, 0x01, 0xba, 0x62, 0xcd, 0xed, 0xd7, 0xed, 0x93, 0x3d, + 0x1d, 0xdc, 0xa2, 0x1e, 0x5b, 0x59, 0x2d, 0x0a, 0xb6, 0x92, 0xdf, 0xa0, + 0x7e, 0x5b, 0xf3, 0x89, 0x5a, 0x3b, 0x36, 0x88, 0xab, 0x1e, 0xbd, 0xfa, + 0xbd, 0x3e, 0xb1, 0xf5, +}; +static const struct drbg_kat_pr_true kat2990_t = { + 4, kat2990_entropyin, kat2990_nonce, kat2990_persstr, + kat2990_entropyinpr1, kat2990_addinpr1, kat2990_entropyinpr2, + kat2990_addinpr2, kat2990_retbits +}; +static const struct drbg_kat kat2990 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2990_t +}; + +static const unsigned char kat2991_entropyin[] = { + 0x4c, 0x8f, 0x65, 0x7c, 0xca, 0xff, 0x6c, 0x95, 0xbb, 0xfd, 0x4f, 0xc8, + 0x76, 0x17, 0x13, 0x96, +}; +static const unsigned char kat2991_nonce[] = { + 0x1c, 0xab, 0xfe, 0xf9, 0xb1, 0x47, 0xe3, 0xa2, +}; +static const unsigned char kat2991_persstr[] = { + 0x78, 0x1f, 0x0a, 0x06, 0xc0, 0x13, 0xff, 0x3a, 0x3f, 0x59, 0x19, 0xda, + 0xa4, 0xa1, 0x86, 0x52, +}; +static const unsigned char kat2991_entropyinpr1[] = { + 0xe2, 0xf4, 0xf9, 0x76, 0x2d, 0x34, 0x0b, 0xae, 0x6d, 0xc0, 0xea, 0x4f, + 0xa3, 0x19, 0xb7, 0x54, +}; +static const unsigned char kat2991_addinpr1[] = { + 0xa7, 0x0b, 0xbe, 0xf8, 0xf0, 0xb3, 0xcb, 0xf3, 0xde, 0xf0, 0x63, 0xf9, + 0x17, 0x29, 0x02, 0x6f, +}; +static const unsigned char kat2991_entropyinpr2[] = { + 0xb9, 0xb7, 0xd9, 0x3b, 0xa0, 0x89, 0xe7, 0x1c, 0xa5, 0x97, 0x09, 0x0b, + 0x60, 0x38, 0xb6, 0x0f, +}; +static const unsigned char kat2991_addinpr2[] = { + 0x9b, 0x3c, 0x8e, 0xce, 0xbe, 0x74, 0xa3, 0x84, 0x6f, 0x6e, 0xb4, 0x3c, + 0x1c, 0xfc, 0x51, 0xdf, +}; +static const unsigned char kat2991_retbits[] = { + 0xc4, 0x58, 0x8e, 0xfb, 0x82, 0xc2, 0xce, 0x59, 0x13, 0x58, 0xab, 0xbe, + 0x2a, 0xab, 0x71, 0xd9, 0xf2, 0xad, 0x3c, 0xfa, 0x32, 0x77, 0x82, 0xed, + 0x94, 0xcf, 0x36, 0x67, 0xce, 0xf2, 0xa5, 0x21, 0x4d, 0x74, 0x43, 0x38, + 0xd3, 0xf4, 0x0b, 0x21, 0x90, 0x64, 0x7f, 0x49, 0xe4, 0x82, 0x38, 0x6d, + 0x79, 0x78, 0x92, 0x55, 0x93, 0x58, 0x16, 0x7b, 0x51, 0x74, 0x27, 0x14, + 0xc2, 0x7c, 0xf6, 0x09, +}; +static const struct drbg_kat_pr_true kat2991_t = { + 5, kat2991_entropyin, kat2991_nonce, kat2991_persstr, + kat2991_entropyinpr1, kat2991_addinpr1, kat2991_entropyinpr2, + kat2991_addinpr2, kat2991_retbits +}; +static const struct drbg_kat kat2991 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2991_t +}; + +static const unsigned char kat2992_entropyin[] = { + 0x89, 0x16, 0xda, 0x70, 0x5a, 0x02, 0x2c, 0x84, 0xec, 0x5e, 0xb2, 0x4e, + 0x8f, 0xe9, 0x9d, 0x33, +}; +static const unsigned char kat2992_nonce[] = { + 0xa7, 0x96, 0xce, 0x9d, 0xf2, 0x7e, 0x0b, 0xae, +}; +static const unsigned char kat2992_persstr[] = { + 0x29, 0x74, 0x64, 0x1b, 0x85, 0x1c, 0x4b, 0x9d, 0x09, 0xb1, 0x85, 0xd5, + 0xa7, 0x97, 0x8d, 0x84, +}; +static const unsigned char kat2992_entropyinpr1[] = { + 0xad, 0x12, 0xf9, 0xfb, 0xdf, 0x24, 0xff, 0x6a, 0x8d, 0x1b, 0x26, 0xc7, + 0xbf, 0x14, 0x00, 0xdf, +}; +static const unsigned char kat2992_addinpr1[] = { + 0x0b, 0x8c, 0x49, 0x39, 0x14, 0x16, 0x6a, 0xa7, 0x6d, 0xc4, 0x84, 0xea, + 0x45, 0x41, 0x48, 0xc6, +}; +static const unsigned char kat2992_entropyinpr2[] = { + 0xf2, 0xa7, 0x58, 0xe5, 0x00, 0xaf, 0xd3, 0xd4, 0xb6, 0x05, 0x7f, 0x50, + 0x6c, 0x24, 0x4c, 0xfa, +}; +static const unsigned char kat2992_addinpr2[] = { + 0xda, 0xfb, 0x20, 0x7d, 0xf9, 0xec, 0xf4, 0x8f, 0x15, 0x9e, 0xe8, 0x65, + 0xe0, 0x4d, 0x17, 0xce, +}; +static const unsigned char kat2992_retbits[] = { + 0x9e, 0xec, 0x1d, 0x1b, 0x47, 0x1a, 0x68, 0x14, 0x60, 0xd3, 0x40, 0xf3, + 0x59, 0x05, 0xab, 0x0f, 0x72, 0xa2, 0xb6, 0x0c, 0x7d, 0x14, 0x68, 0x3a, + 0xd6, 0x60, 0xd8, 0x4f, 0xf9, 0xc8, 0x48, 0x06, 0x57, 0xe1, 0xbd, 0xd8, + 0x99, 0x62, 0xc5, 0xdf, 0x90, 0x43, 0x62, 0xc2, 0xd0, 0xc4, 0xd9, 0xc1, + 0x19, 0x84, 0x20, 0x69, 0xef, 0x9d, 0x6a, 0x27, 0x43, 0xf0, 0x37, 0x9f, + 0xc8, 0x62, 0x78, 0x24, +}; +static const struct drbg_kat_pr_true kat2992_t = { + 6, kat2992_entropyin, kat2992_nonce, kat2992_persstr, + kat2992_entropyinpr1, kat2992_addinpr1, kat2992_entropyinpr2, + kat2992_addinpr2, kat2992_retbits +}; +static const struct drbg_kat kat2992 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2992_t +}; + +static const unsigned char kat2993_entropyin[] = { + 0xde, 0xc3, 0xf5, 0x1b, 0x89, 0x7a, 0x45, 0xbf, 0x0c, 0x81, 0xac, 0x31, + 0xda, 0x38, 0xe7, 0xab, +}; +static const unsigned char kat2993_nonce[] = { + 0x91, 0x49, 0x7f, 0xe7, 0x89, 0xc7, 0x07, 0xa0, +}; +static const unsigned char kat2993_persstr[] = { + 0x2a, 0x2c, 0x90, 0x88, 0xea, 0x5d, 0x70, 0xc3, 0x3e, 0x48, 0x8f, 0x67, + 0x6d, 0xfd, 0x7c, 0xd2, +}; +static const unsigned char kat2993_entropyinpr1[] = { + 0x1c, 0x0c, 0xe6, 0xe3, 0x70, 0x23, 0x5b, 0xf5, 0x08, 0x7d, 0x5b, 0x17, + 0xcc, 0x5b, 0x57, 0x40, +}; +static const unsigned char kat2993_addinpr1[] = { + 0xd8, 0xb1, 0x4a, 0x81, 0x95, 0xd9, 0xf8, 0x49, 0x73, 0x75, 0xfa, 0x5e, + 0xdd, 0x84, 0x27, 0x3d, +}; +static const unsigned char kat2993_entropyinpr2[] = { + 0xda, 0xaf, 0x3c, 0xb9, 0x1a, 0x7b, 0xf4, 0x31, 0xd7, 0x41, 0x97, 0x68, + 0x3a, 0x6d, 0x56, 0x43, +}; +static const unsigned char kat2993_addinpr2[] = { + 0x20, 0xb1, 0x6a, 0x87, 0x16, 0xae, 0x26, 0xb3, 0x55, 0x4c, 0xc0, 0x31, + 0xdc, 0xa3, 0xbd, 0xe6, +}; +static const unsigned char kat2993_retbits[] = { + 0xc4, 0xbf, 0xd4, 0x53, 0xc3, 0xa9, 0x98, 0x4c, 0x1d, 0x9c, 0xde, 0xa2, + 0xfd, 0x7c, 0x18, 0xae, 0x45, 0x25, 0xa7, 0xf6, 0xc3, 0x26, 0xf6, 0x6e, + 0x84, 0xab, 0x9c, 0xae, 0x05, 0x59, 0x9f, 0xdb, 0xda, 0xef, 0x31, 0x5a, + 0x72, 0xed, 0x6c, 0xa4, 0x4e, 0x6c, 0xfe, 0x45, 0x56, 0x2f, 0x84, 0x21, + 0x0f, 0x4b, 0x65, 0x12, 0x81, 0x24, 0x4f, 0x6d, 0x01, 0x35, 0xb8, 0xe7, + 0xe7, 0x21, 0xf7, 0x04, +}; +static const struct drbg_kat_pr_true kat2993_t = { + 7, kat2993_entropyin, kat2993_nonce, kat2993_persstr, + kat2993_entropyinpr1, kat2993_addinpr1, kat2993_entropyinpr2, + kat2993_addinpr2, kat2993_retbits +}; +static const struct drbg_kat kat2993 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2993_t +}; + +static const unsigned char kat2994_entropyin[] = { + 0x98, 0xba, 0x06, 0x2d, 0x3e, 0x5d, 0x89, 0x74, 0x18, 0x55, 0xe7, 0xaa, + 0xc3, 0xe2, 0x98, 0xa5, +}; +static const unsigned char kat2994_nonce[] = { + 0x98, 0x58, 0x20, 0x9b, 0x17, 0x65, 0xcf, 0x81, +}; +static const unsigned char kat2994_persstr[] = { + 0x68, 0x6b, 0x1b, 0xe2, 0xc9, 0xbc, 0x57, 0x21, 0xbc, 0x2f, 0xa8, 0xfc, + 0x07, 0x12, 0x05, 0x10, +}; +static const unsigned char kat2994_entropyinpr1[] = { + 0x74, 0xdd, 0x28, 0x23, 0xe0, 0x34, 0xdd, 0xce, 0x4b, 0xd3, 0x22, 0xfd, + 0x3f, 0x77, 0x9a, 0x83, +}; +static const unsigned char kat2994_addinpr1[] = { + 0xe4, 0xe2, 0xd0, 0x19, 0xa1, 0xd5, 0xf8, 0x0f, 0x67, 0x22, 0x38, 0x53, + 0x78, 0x2f, 0x57, 0xde, +}; +static const unsigned char kat2994_entropyinpr2[] = { + 0x11, 0x8a, 0x96, 0xeb, 0xa9, 0x19, 0x06, 0x16, 0x7d, 0xd3, 0xd6, 0x31, + 0xe2, 0x91, 0x10, 0x0c, +}; +static const unsigned char kat2994_addinpr2[] = { + 0x73, 0xf8, 0x3a, 0xa5, 0xf7, 0x81, 0x4e, 0x5f, 0x61, 0xe1, 0xc4, 0xaa, + 0xb1, 0xa4, 0x51, 0x6e, +}; +static const unsigned char kat2994_retbits[] = { + 0xca, 0x5b, 0x2a, 0x08, 0xe4, 0xd1, 0xec, 0x0e, 0x70, 0x49, 0x7e, 0x49, + 0x24, 0xbf, 0x83, 0xd1, 0x1d, 0xf7, 0xe2, 0xf8, 0xbb, 0x65, 0x19, 0xf2, + 0x20, 0xee, 0x0b, 0xe7, 0xec, 0x90, 0xdf, 0xe8, 0x8f, 0xaf, 0x0e, 0x48, + 0x90, 0x9d, 0xe1, 0x81, 0x0d, 0x45, 0xb1, 0x62, 0xdb, 0x5a, 0x6d, 0x17, + 0x19, 0x37, 0x94, 0x3e, 0xd3, 0x90, 0x65, 0x5c, 0x1f, 0xf0, 0x58, 0x0b, + 0x55, 0xea, 0x39, 0xc0, +}; +static const struct drbg_kat_pr_true kat2994_t = { + 8, kat2994_entropyin, kat2994_nonce, kat2994_persstr, + kat2994_entropyinpr1, kat2994_addinpr1, kat2994_entropyinpr2, + kat2994_addinpr2, kat2994_retbits +}; +static const struct drbg_kat kat2994 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2994_t +}; + +static const unsigned char kat2995_entropyin[] = { + 0xd2, 0x4a, 0x7a, 0x21, 0xb2, 0xca, 0xf9, 0x84, 0x71, 0x79, 0xb9, 0xe5, + 0x1e, 0x4e, 0x95, 0xcc, +}; +static const unsigned char kat2995_nonce[] = { + 0xb9, 0xda, 0x48, 0xd1, 0x3c, 0xbf, 0xa0, 0x7a, +}; +static const unsigned char kat2995_persstr[] = { + 0x72, 0x03, 0x29, 0x31, 0x1f, 0xc5, 0x35, 0x00, 0x26, 0xd6, 0x2f, 0x89, + 0xd7, 0x78, 0xf5, 0xa9, +}; +static const unsigned char kat2995_entropyinpr1[] = { + 0x6d, 0xdd, 0xdf, 0xc2, 0x22, 0x08, 0x46, 0x30, 0x53, 0x9b, 0x99, 0xe2, + 0xa6, 0xa3, 0x9f, 0x26, +}; +static const unsigned char kat2995_addinpr1[] = { + 0x94, 0x47, 0x19, 0xbf, 0x67, 0xa3, 0x9b, 0xc8, 0xbd, 0xd6, 0xa8, 0x5b, + 0xd5, 0x3a, 0x1e, 0x06, +}; +static const unsigned char kat2995_entropyinpr2[] = { + 0x37, 0xc4, 0x8f, 0x65, 0x17, 0xe2, 0xf5, 0x65, 0x89, 0xef, 0x41, 0x9e, + 0xc2, 0x3a, 0xa9, 0xf9, +}; +static const unsigned char kat2995_addinpr2[] = { + 0x87, 0x01, 0x08, 0x1d, 0xbc, 0x92, 0x45, 0xed, 0x07, 0xa1, 0xd8, 0x3c, + 0x70, 0xd3, 0xf6, 0x26, +}; +static const unsigned char kat2995_retbits[] = { + 0x05, 0x66, 0x06, 0x99, 0x2d, 0x6c, 0x25, 0x3c, 0x7d, 0xa1, 0xe9, 0xf7, + 0xca, 0x1a, 0x5b, 0x5e, 0x8d, 0xb4, 0xd8, 0xdb, 0x68, 0xa5, 0x48, 0x20, + 0x73, 0x26, 0xd1, 0x1f, 0x33, 0x00, 0xeb, 0x09, 0x20, 0xa6, 0x51, 0x71, + 0x75, 0xa3, 0x39, 0xdb, 0xf6, 0x47, 0xc1, 0x1a, 0xd3, 0xe6, 0x6a, 0xbd, + 0x16, 0xba, 0x0f, 0x26, 0x3e, 0xba, 0xe9, 0xd4, 0x32, 0x71, 0xa2, 0xab, + 0x6d, 0x87, 0x45, 0x33, +}; +static const struct drbg_kat_pr_true kat2995_t = { + 9, kat2995_entropyin, kat2995_nonce, kat2995_persstr, + kat2995_entropyinpr1, kat2995_addinpr1, kat2995_entropyinpr2, + kat2995_addinpr2, kat2995_retbits +}; +static const struct drbg_kat kat2995 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2995_t +}; + +static const unsigned char kat2996_entropyin[] = { + 0xbb, 0x1f, 0xdc, 0x7a, 0xd9, 0x14, 0x71, 0xf7, 0x1b, 0x2f, 0x67, 0xa4, + 0xec, 0xdf, 0x55, 0x71, +}; +static const unsigned char kat2996_nonce[] = { + 0x7b, 0x74, 0x1b, 0x9d, 0x60, 0x5c, 0x81, 0xb8, +}; +static const unsigned char kat2996_persstr[] = { + 0x39, 0xbd, 0x5a, 0xa7, 0xa4, 0x67, 0xac, 0x15, 0xba, 0xad, 0x39, 0x00, + 0x8c, 0xb3, 0x3a, 0x25, +}; +static const unsigned char kat2996_entropyinpr1[] = { + 0x48, 0x9b, 0x63, 0x88, 0xed, 0x66, 0x7a, 0xaa, 0xdd, 0xec, 0x0f, 0x08, + 0x61, 0xdf, 0xe3, 0x92, +}; +static const unsigned char kat2996_addinpr1[] = { + 0xe7, 0xc2, 0xff, 0x31, 0x7f, 0xa7, 0x60, 0x4e, 0x66, 0x67, 0x44, 0xf7, + 0x8f, 0x77, 0x78, 0xb3, +}; +static const unsigned char kat2996_entropyinpr2[] = { + 0x60, 0x01, 0x4d, 0x2b, 0x01, 0xd8, 0x22, 0xc9, 0xc6, 0x1c, 0x14, 0x65, + 0xd9, 0x3a, 0xc7, 0xee, +}; +static const unsigned char kat2996_addinpr2[] = { + 0x12, 0xe3, 0x8f, 0x51, 0xc0, 0x04, 0x84, 0x2c, 0x79, 0x8a, 0x54, 0xcb, + 0xf6, 0xc5, 0xc9, 0x0e, +}; +static const unsigned char kat2996_retbits[] = { + 0xf0, 0xd4, 0xdd, 0xae, 0x27, 0x82, 0x13, 0xbe, 0x83, 0xfb, 0x6d, 0x01, + 0x43, 0x73, 0x32, 0xf2, 0xb3, 0xae, 0xc2, 0xc6, 0x65, 0xe7, 0x0b, 0x56, + 0x9b, 0xdf, 0xf1, 0x72, 0x49, 0x49, 0xd3, 0x2b, 0xb6, 0x72, 0xce, 0x58, + 0xaa, 0x43, 0xbf, 0x92, 0x69, 0xd4, 0x51, 0x28, 0x5a, 0x31, 0xfc, 0x98, + 0x4d, 0x87, 0xc0, 0xc2, 0x1c, 0x1c, 0x6a, 0x0d, 0xdb, 0x50, 0x10, 0x84, + 0x9c, 0xf6, 0xc1, 0x1a, +}; +static const struct drbg_kat_pr_true kat2996_t = { + 10, kat2996_entropyin, kat2996_nonce, kat2996_persstr, + kat2996_entropyinpr1, kat2996_addinpr1, kat2996_entropyinpr2, + kat2996_addinpr2, kat2996_retbits +}; +static const struct drbg_kat kat2996 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2996_t +}; + +static const unsigned char kat2997_entropyin[] = { + 0x21, 0x78, 0x5f, 0xa0, 0x1f, 0x3a, 0xcc, 0xb5, 0xbb, 0xe4, 0xa2, 0xd0, + 0xb8, 0xbe, 0x26, 0xea, +}; +static const unsigned char kat2997_nonce[] = { + 0x86, 0x57, 0x01, 0x66, 0x1a, 0x10, 0x8f, 0xbe, +}; +static const unsigned char kat2997_persstr[] = { + 0x89, 0xa5, 0x3d, 0x1b, 0xd5, 0x9a, 0x6c, 0x14, 0x5f, 0xbe, 0xcf, 0xc4, + 0xcf, 0x92, 0xc2, 0x08, +}; +static const unsigned char kat2997_entropyinpr1[] = { + 0x77, 0x0b, 0x4d, 0xd5, 0x80, 0x23, 0xc7, 0xa5, 0x05, 0x5b, 0x5c, 0x6f, + 0x34, 0x9c, 0xd9, 0x81, +}; +static const unsigned char kat2997_addinpr1[] = { + 0x4d, 0x0b, 0xa9, 0x4b, 0xaa, 0x36, 0x73, 0xda, 0x58, 0xa8, 0xbb, 0xc7, + 0xcc, 0xa2, 0xbd, 0x2a, +}; +static const unsigned char kat2997_entropyinpr2[] = { + 0x8c, 0x42, 0xcf, 0xce, 0x94, 0x8c, 0x41, 0x90, 0xbd, 0x41, 0xf0, 0x07, + 0xb4, 0xe6, 0xc8, 0xfe, +}; +static const unsigned char kat2997_addinpr2[] = { + 0xfb, 0xf6, 0xf8, 0xf8, 0xca, 0x62, 0x10, 0x85, 0xf3, 0x41, 0x57, 0xf5, + 0x29, 0xaf, 0xf1, 0x0b, +}; +static const unsigned char kat2997_retbits[] = { + 0x3a, 0x50, 0x17, 0x18, 0x68, 0x9c, 0x61, 0x30, 0x6a, 0x35, 0xa8, 0xf0, + 0xec, 0x53, 0xe1, 0xf8, 0xe2, 0xb2, 0xb7, 0x0b, 0x0c, 0x01, 0xba, 0x5a, + 0xc4, 0x21, 0x20, 0x41, 0xa6, 0x4e, 0x2d, 0xc7, 0xbe, 0x4c, 0x3e, 0xdd, + 0x66, 0x33, 0x6e, 0x0e, 0x33, 0xe5, 0x00, 0x31, 0xb8, 0x38, 0xa4, 0x77, + 0x46, 0x7d, 0xc5, 0x41, 0xb6, 0x35, 0xc5, 0x94, 0x17, 0x79, 0xee, 0x89, + 0x90, 0x14, 0x87, 0x80, +}; +static const struct drbg_kat_pr_true kat2997_t = { + 11, kat2997_entropyin, kat2997_nonce, kat2997_persstr, + kat2997_entropyinpr1, kat2997_addinpr1, kat2997_entropyinpr2, + kat2997_addinpr2, kat2997_retbits +}; +static const struct drbg_kat kat2997 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2997_t +}; + +static const unsigned char kat2998_entropyin[] = { + 0xe8, 0xd1, 0x09, 0xcc, 0xee, 0x57, 0x94, 0x59, 0x54, 0x64, 0xd7, 0xd2, + 0x7a, 0xf1, 0x70, 0xf6, +}; +static const unsigned char kat2998_nonce[] = { + 0x77, 0x32, 0xc8, 0x1c, 0x90, 0x71, 0xc7, 0x91, +}; +static const unsigned char kat2998_persstr[] = { + 0x82, 0xc2, 0x1a, 0x03, 0x21, 0x77, 0x1f, 0x90, 0x5f, 0x9c, 0x60, 0xec, + 0xed, 0x79, 0x20, 0x0d, +}; +static const unsigned char kat2998_entropyinpr1[] = { + 0xbe, 0xc9, 0x39, 0x02, 0x07, 0xbf, 0xa4, 0x05, 0xa4, 0x0e, 0x41, 0xf3, + 0xfd, 0xca, 0x9f, 0xc7, +}; +static const unsigned char kat2998_addinpr1[] = { + 0x25, 0x5b, 0xd7, 0x03, 0x01, 0xba, 0xb0, 0xcd, 0x43, 0x09, 0xfe, 0x51, + 0xf9, 0x8f, 0x86, 0x90, +}; +static const unsigned char kat2998_entropyinpr2[] = { + 0xfb, 0xff, 0x4f, 0xa2, 0x20, 0x3d, 0xa3, 0x6a, 0x41, 0x7d, 0xcd, 0x2e, + 0xd7, 0x63, 0x8c, 0x2b, +}; +static const unsigned char kat2998_addinpr2[] = { + 0x86, 0x46, 0x19, 0xa7, 0x8a, 0xac, 0xa3, 0x5e, 0xec, 0xcd, 0x65, 0x39, + 0xc1, 0x64, 0x8a, 0xc3, +}; +static const unsigned char kat2998_retbits[] = { + 0x6d, 0xbc, 0xc3, 0xc1, 0xac, 0xc6, 0xf2, 0x15, 0x93, 0x2f, 0x1c, 0x91, + 0x45, 0x26, 0x0a, 0x21, 0x09, 0x19, 0xad, 0x4d, 0xc0, 0x17, 0xe2, 0xb2, + 0x9a, 0xb5, 0xe1, 0x0a, 0x33, 0x3b, 0x9b, 0x5b, 0x4f, 0xb9, 0x93, 0x8b, + 0x6c, 0x3a, 0x4e, 0x8f, 0xb1, 0x33, 0x6b, 0xc6, 0xa7, 0x84, 0x61, 0x8e, + 0x14, 0x18, 0x85, 0x82, 0x85, 0x48, 0x16, 0x43, 0x2e, 0x63, 0x55, 0xe6, + 0xdc, 0x5a, 0xb6, 0xee, +}; +static const struct drbg_kat_pr_true kat2998_t = { + 12, kat2998_entropyin, kat2998_nonce, kat2998_persstr, + kat2998_entropyinpr1, kat2998_addinpr1, kat2998_entropyinpr2, + kat2998_addinpr2, kat2998_retbits +}; +static const struct drbg_kat kat2998 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2998_t +}; + +static const unsigned char kat2999_entropyin[] = { + 0xc5, 0x50, 0xc5, 0x2b, 0x94, 0x7b, 0x33, 0x4d, 0x62, 0x44, 0xd9, 0x41, + 0x1b, 0x80, 0xbf, 0x0a, +}; +static const unsigned char kat2999_nonce[] = { + 0xec, 0x8a, 0x23, 0x0c, 0x20, 0xbd, 0xb3, 0x85, +}; +static const unsigned char kat2999_persstr[] = { + 0x59, 0xa2, 0x2a, 0x75, 0x7b, 0x92, 0xbb, 0x09, 0xd1, 0x48, 0xc7, 0xd8, + 0xde, 0x58, 0x82, 0x03, +}; +static const unsigned char kat2999_entropyinpr1[] = { + 0x46, 0xc1, 0xe5, 0xf5, 0xb5, 0x07, 0x95, 0xb2, 0x7c, 0x7d, 0xe2, 0x85, + 0x1f, 0xdf, 0xb9, 0xca, +}; +static const unsigned char kat2999_addinpr1[] = { + 0x5c, 0x32, 0x42, 0x88, 0x5c, 0xff, 0xf1, 0xbf, 0xab, 0x07, 0x1c, 0x95, + 0xbb, 0x74, 0xc5, 0xc4, +}; +static const unsigned char kat2999_entropyinpr2[] = { + 0x99, 0x80, 0x56, 0x24, 0x6c, 0xef, 0xfe, 0x14, 0x1f, 0x90, 0xb2, 0x07, + 0xd7, 0xad, 0x9b, 0x59, +}; +static const unsigned char kat2999_addinpr2[] = { + 0x2c, 0x80, 0xc3, 0xa0, 0x31, 0xf2, 0xa7, 0x2f, 0x1f, 0x8e, 0x52, 0xcb, + 0x90, 0x25, 0x6c, 0xf9, +}; +static const unsigned char kat2999_retbits[] = { + 0x2a, 0xaa, 0xb2, 0x6e, 0xcd, 0x47, 0x0c, 0x12, 0x9e, 0xec, 0xa1, 0x86, + 0xb8, 0x38, 0xbb, 0xc7, 0x58, 0x9f, 0xd8, 0x27, 0x55, 0x3c, 0x8c, 0x2f, + 0xa7, 0x22, 0x9b, 0x05, 0x06, 0x30, 0x09, 0x40, 0x41, 0x82, 0xdf, 0xfc, + 0xaa, 0x23, 0x98, 0x42, 0xc9, 0x77, 0x96, 0xfb, 0xf1, 0xe3, 0x6e, 0x20, + 0xf6, 0x35, 0x5f, 0xad, 0x22, 0xb2, 0x41, 0x2e, 0x63, 0xf3, 0xda, 0x3d, + 0x67, 0x1c, 0x9c, 0x30, +}; +static const struct drbg_kat_pr_true kat2999_t = { + 13, kat2999_entropyin, kat2999_nonce, kat2999_persstr, + kat2999_entropyinpr1, kat2999_addinpr1, kat2999_entropyinpr2, + kat2999_addinpr2, kat2999_retbits +}; +static const struct drbg_kat kat2999 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat2999_t +}; + +static const unsigned char kat3000_entropyin[] = { + 0x3c, 0xf6, 0x3f, 0xe7, 0x9a, 0x2a, 0x38, 0x07, 0xa4, 0x1f, 0xc3, 0x7b, + 0x8c, 0xf6, 0x40, 0xad, +}; +static const unsigned char kat3000_nonce[] = { + 0x18, 0xf8, 0xbe, 0x87, 0x23, 0x2b, 0x9b, 0xa5, +}; +static const unsigned char kat3000_persstr[] = { + 0x92, 0x6a, 0x2d, 0x6a, 0xc8, 0x8a, 0x6d, 0x68, 0xa6, 0xb2, 0xe9, 0x39, + 0xe3, 0x59, 0x18, 0x0e, +}; +static const unsigned char kat3000_entropyinpr1[] = { + 0x94, 0xf2, 0x46, 0x40, 0xd4, 0x3a, 0xd1, 0xc9, 0xc0, 0x5a, 0x8f, 0xca, + 0x3f, 0x0a, 0x3e, 0x26, +}; +static const unsigned char kat3000_addinpr1[] = { + 0x06, 0x45, 0x39, 0xb2, 0xa2, 0x97, 0xe6, 0x27, 0x0f, 0xb1, 0x56, 0xd1, + 0x42, 0xc1, 0x38, 0xf5, +}; +static const unsigned char kat3000_entropyinpr2[] = { + 0x66, 0x62, 0x6b, 0x94, 0x72, 0x12, 0x92, 0xed, 0x9c, 0x31, 0xf9, 0x84, + 0x4f, 0x31, 0x64, 0x79, +}; +static const unsigned char kat3000_addinpr2[] = { + 0x86, 0x7a, 0xa3, 0xa2, 0x36, 0xf5, 0x27, 0x19, 0xf0, 0x80, 0xbc, 0x09, + 0xc4, 0xd9, 0x49, 0x72, +}; +static const unsigned char kat3000_retbits[] = { + 0x0f, 0x82, 0x9f, 0x01, 0x0f, 0x60, 0x54, 0x70, 0x53, 0x41, 0x8a, 0x7c, + 0xb6, 0xa6, 0x40, 0x50, 0x6a, 0x1e, 0x96, 0x40, 0xbf, 0xe0, 0x93, 0x55, + 0xc0, 0x83, 0x5a, 0xb5, 0xfd, 0xed, 0x11, 0x10, 0x71, 0x54, 0x75, 0xdc, + 0x8d, 0x3a, 0x29, 0xad, 0xe1, 0xfa, 0x0f, 0x1b, 0xe4, 0x25, 0xad, 0x05, + 0x98, 0x9c, 0x27, 0xc1, 0x49, 0x19, 0x84, 0xb4, 0xb3, 0xda, 0xf5, 0x3f, + 0x72, 0x4f, 0x16, 0xcf, +}; +static const struct drbg_kat_pr_true kat3000_t = { + 14, kat3000_entropyin, kat3000_nonce, kat3000_persstr, + kat3000_entropyinpr1, kat3000_addinpr1, kat3000_entropyinpr2, + kat3000_addinpr2, kat3000_retbits +}; +static const struct drbg_kat kat3000 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3000_t +}; + +static const unsigned char kat3001_entropyin[] = { + 0xa2, 0xb3, 0x60, 0x0a, 0x72, 0xc5, 0x5c, 0x48, 0x95, 0xf5, 0xe7, 0xdc, + 0xf1, 0xc2, 0x8c, 0x31, +}; +static const unsigned char kat3001_nonce[] = { + 0x05, 0x48, 0x5a, 0xc0, 0xd0, 0x16, 0x2e, 0x09, +}; +static const unsigned char kat3001_persstr[] = {0}; +static const unsigned char kat3001_entropyinpr1[] = { + 0x84, 0xe3, 0x83, 0xef, 0xaa, 0xf0, 0x18, 0x60, 0x1e, 0xff, 0x0b, 0xe3, + 0xa2, 0xb4, 0x0b, 0x91, +}; +static const unsigned char kat3001_addinpr1[] = {0}; +static const unsigned char kat3001_entropyinpr2[] = { + 0x91, 0x45, 0x94, 0x41, 0x1a, 0x95, 0xa9, 0x01, 0x77, 0x6a, 0xe9, 0x88, + 0x74, 0xe1, 0xba, 0x7c, +}; +static const unsigned char kat3001_addinpr2[] = {0}; +static const unsigned char kat3001_retbits[] = { + 0x54, 0x58, 0xbb, 0xdf, 0xbd, 0x72, 0x2c, 0x0b, 0xa1, 0x3e, 0xa2, 0x1b, + 0x88, 0xa0, 0x90, 0x7c, 0x83, 0xed, 0xf2, 0xc5, 0xb2, 0x3d, 0xba, 0xa2, + 0xb3, 0x0e, 0xbb, 0xad, 0xaa, 0x21, 0xf2, 0x52, 0x56, 0x39, 0x7e, 0x8e, + 0x49, 0xe2, 0x0e, 0x6d, 0x37, 0x6f, 0xb3, 0x74, 0xf7, 0x7b, 0xed, 0x84, + 0x70, 0x38, 0xf0, 0x6b, 0x85, 0xf5, 0x3b, 0xad, 0xd6, 0xab, 0x0a, 0x9f, + 0x48, 0xe7, 0xb3, 0x3c, +}; +static const struct drbg_kat_pr_true kat3001_t = { + 0, kat3001_entropyin, kat3001_nonce, kat3001_persstr, + kat3001_entropyinpr1, kat3001_addinpr1, kat3001_entropyinpr2, + kat3001_addinpr2, kat3001_retbits +}; +static const struct drbg_kat kat3001 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3001_t +}; + +static const unsigned char kat3002_entropyin[] = { + 0xf5, 0xfd, 0x13, 0x28, 0xa7, 0x41, 0xfa, 0x56, 0x4d, 0x5b, 0x4a, 0xb9, + 0x8f, 0x15, 0x36, 0x7c, +}; +static const unsigned char kat3002_nonce[] = { + 0x36, 0x98, 0x87, 0x8e, 0x22, 0x34, 0x56, 0x75, +}; +static const unsigned char kat3002_persstr[] = {0}; +static const unsigned char kat3002_entropyinpr1[] = { + 0xc7, 0x06, 0xe9, 0xec, 0xa7, 0xeb, 0xc0, 0xcd, 0x14, 0x44, 0x80, 0xf6, + 0x2c, 0xd1, 0xcd, 0xa9, +}; +static const unsigned char kat3002_addinpr1[] = {0}; +static const unsigned char kat3002_entropyinpr2[] = { + 0xc6, 0x99, 0x8e, 0x51, 0x15, 0xc8, 0x1f, 0x88, 0x70, 0xc4, 0xe9, 0x44, + 0xcb, 0xd2, 0x48, 0x82, +}; +static const unsigned char kat3002_addinpr2[] = {0}; +static const unsigned char kat3002_retbits[] = { + 0x33, 0xcd, 0x39, 0x2c, 0xef, 0x06, 0xf0, 0xf7, 0x6b, 0xc5, 0xd0, 0xe7, + 0xb7, 0xa3, 0xbf, 0x1b, 0x3d, 0x07, 0xf0, 0x03, 0xaa, 0xf5, 0x7d, 0xc5, + 0xe9, 0x03, 0xe1, 0xa8, 0xb7, 0x74, 0x69, 0x46, 0x01, 0x03, 0x5b, 0x14, + 0xd7, 0x79, 0xde, 0xe1, 0x63, 0xea, 0x1c, 0xfa, 0x0f, 0xc8, 0x1c, 0x7a, + 0x7b, 0xcf, 0x62, 0xdd, 0x78, 0xcf, 0xe0, 0xae, 0x28, 0x58, 0xa2, 0x9d, + 0x77, 0xa6, 0xdc, 0x95, +}; +static const struct drbg_kat_pr_true kat3002_t = { + 1, kat3002_entropyin, kat3002_nonce, kat3002_persstr, + kat3002_entropyinpr1, kat3002_addinpr1, kat3002_entropyinpr2, + kat3002_addinpr2, kat3002_retbits +}; +static const struct drbg_kat kat3002 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3002_t +}; + +static const unsigned char kat3003_entropyin[] = { + 0x49, 0x3f, 0xef, 0xd3, 0x4c, 0x1c, 0x7a, 0x06, 0xd0, 0x94, 0x7b, 0x89, + 0x11, 0x0f, 0xdd, 0xaa, +}; +static const unsigned char kat3003_nonce[] = { + 0x17, 0xbf, 0x7f, 0x91, 0xe6, 0x06, 0x2e, 0xd0, +}; +static const unsigned char kat3003_persstr[] = {0}; +static const unsigned char kat3003_entropyinpr1[] = { + 0x13, 0xd9, 0x7b, 0xd3, 0xb5, 0x38, 0x35, 0x6f, 0x17, 0x9c, 0x53, 0x0c, + 0xf3, 0xe3, 0x24, 0x88, +}; +static const unsigned char kat3003_addinpr1[] = {0}; +static const unsigned char kat3003_entropyinpr2[] = { + 0xc9, 0x1e, 0x3f, 0x9b, 0x02, 0x28, 0xf3, 0x96, 0x2b, 0x3a, 0xe0, 0x44, + 0x02, 0xae, 0xc5, 0x49, +}; +static const unsigned char kat3003_addinpr2[] = {0}; +static const unsigned char kat3003_retbits[] = { + 0x47, 0x03, 0x52, 0x7f, 0x48, 0x59, 0x26, 0x6a, 0x50, 0x34, 0x2b, 0x02, + 0x58, 0x07, 0x91, 0x09, 0x20, 0x13, 0x2c, 0x77, 0x6c, 0xbe, 0xb2, 0xef, + 0xe8, 0x63, 0xb1, 0x56, 0x52, 0xbc, 0xc7, 0x9e, 0xff, 0x26, 0x65, 0x52, + 0x40, 0x6d, 0x6e, 0xb3, 0x14, 0x0a, 0x35, 0x51, 0x6c, 0x98, 0x0f, 0x87, + 0x94, 0x7a, 0x9f, 0xb3, 0xf3, 0x06, 0xe7, 0x85, 0x29, 0x5c, 0xc2, 0xc9, + 0x6a, 0x07, 0xfa, 0xb1, +}; +static const struct drbg_kat_pr_true kat3003_t = { + 2, kat3003_entropyin, kat3003_nonce, kat3003_persstr, + kat3003_entropyinpr1, kat3003_addinpr1, kat3003_entropyinpr2, + kat3003_addinpr2, kat3003_retbits +}; +static const struct drbg_kat kat3003 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3003_t +}; + +static const unsigned char kat3004_entropyin[] = { + 0x3c, 0xa2, 0x6b, 0xcc, 0x6f, 0x2e, 0x9f, 0xba, 0x5d, 0xef, 0xa9, 0xd7, + 0x9f, 0x6f, 0x01, 0x54, +}; +static const unsigned char kat3004_nonce[] = { + 0xc3, 0x94, 0x5d, 0xb7, 0xcd, 0x5e, 0x34, 0x21, +}; +static const unsigned char kat3004_persstr[] = {0}; +static const unsigned char kat3004_entropyinpr1[] = { + 0xfc, 0x83, 0x61, 0xf8, 0xd0, 0xf9, 0x3b, 0xf7, 0xe6, 0x90, 0xe6, 0x39, + 0x68, 0x7b, 0x36, 0x6f, +}; +static const unsigned char kat3004_addinpr1[] = {0}; +static const unsigned char kat3004_entropyinpr2[] = { + 0xb1, 0x21, 0x13, 0x07, 0xb1, 0x05, 0x2c, 0xb5, 0xa4, 0xb0, 0x40, 0x05, + 0x93, 0xb8, 0x02, 0xc1, +}; +static const unsigned char kat3004_addinpr2[] = {0}; +static const unsigned char kat3004_retbits[] = { + 0xe1, 0xea, 0xf8, 0x72, 0x14, 0xc9, 0xc7, 0xa1, 0x10, 0x6b, 0x86, 0x3b, + 0x73, 0x91, 0x39, 0x24, 0x52, 0xa2, 0xef, 0xe8, 0xfe, 0x6d, 0x75, 0x6e, + 0x49, 0x01, 0x9c, 0x66, 0x85, 0x0e, 0x0f, 0x02, 0xf3, 0x69, 0xdb, 0x9a, + 0x0f, 0x9d, 0x94, 0x5c, 0xb7, 0x35, 0xf3, 0xa0, 0x07, 0xe3, 0xf1, 0xbc, + 0x4b, 0xde, 0x44, 0x87, 0xfb, 0x29, 0x47, 0xbc, 0xbb, 0xbd, 0xa1, 0x78, + 0x1d, 0x0d, 0x16, 0x1e, +}; +static const struct drbg_kat_pr_true kat3004_t = { + 3, kat3004_entropyin, kat3004_nonce, kat3004_persstr, + kat3004_entropyinpr1, kat3004_addinpr1, kat3004_entropyinpr2, + kat3004_addinpr2, kat3004_retbits +}; +static const struct drbg_kat kat3004 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3004_t +}; + +static const unsigned char kat3005_entropyin[] = { + 0x21, 0x5e, 0x59, 0xba, 0xe2, 0x20, 0x08, 0xb5, 0x10, 0x13, 0x44, 0x6c, + 0x84, 0x37, 0x1b, 0x93, +}; +static const unsigned char kat3005_nonce[] = { + 0x0f, 0x7e, 0x67, 0xaa, 0xb9, 0xec, 0xd7, 0xbb, +}; +static const unsigned char kat3005_persstr[] = {0}; +static const unsigned char kat3005_entropyinpr1[] = { + 0xa6, 0x1f, 0x34, 0xa7, 0x5e, 0x41, 0x93, 0x7c, 0x96, 0xab, 0xec, 0x51, + 0x0a, 0x19, 0xbb, 0xf8, +}; +static const unsigned char kat3005_addinpr1[] = {0}; +static const unsigned char kat3005_entropyinpr2[] = { + 0x10, 0x0b, 0xdf, 0x1e, 0xd0, 0xc7, 0x3a, 0x7f, 0xa3, 0xf6, 0x47, 0x5e, + 0x71, 0xb9, 0x0d, 0x98, +}; +static const unsigned char kat3005_addinpr2[] = {0}; +static const unsigned char kat3005_retbits[] = { + 0xbe, 0x34, 0x30, 0x6c, 0x7b, 0x31, 0xd1, 0x80, 0x59, 0xd4, 0xb9, 0xef, + 0x2a, 0x36, 0x3f, 0xdf, 0x8a, 0xae, 0x2d, 0x2e, 0x15, 0xc0, 0x3d, 0xb3, + 0x68, 0xf4, 0x1d, 0xba, 0x60, 0x3a, 0x40, 0x13, 0xcb, 0x25, 0xc6, 0x4e, + 0xa9, 0xc5, 0xb0, 0x2b, 0xd8, 0xb7, 0x02, 0x12, 0x99, 0x5b, 0x21, 0x03, + 0x51, 0xb0, 0xeb, 0xf8, 0x8b, 0xc9, 0x9f, 0xd0, 0x55, 0xb3, 0xc2, 0xc3, + 0x1b, 0x30, 0x81, 0xc7, +}; +static const struct drbg_kat_pr_true kat3005_t = { + 4, kat3005_entropyin, kat3005_nonce, kat3005_persstr, + kat3005_entropyinpr1, kat3005_addinpr1, kat3005_entropyinpr2, + kat3005_addinpr2, kat3005_retbits +}; +static const struct drbg_kat kat3005 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3005_t +}; + +static const unsigned char kat3006_entropyin[] = { + 0x61, 0xd8, 0x89, 0xd1, 0x58, 0xf2, 0xc3, 0x9d, 0x17, 0x65, 0xd6, 0xe4, + 0x72, 0x9a, 0x19, 0xe9, +}; +static const unsigned char kat3006_nonce[] = { + 0xed, 0x12, 0xce, 0xab, 0x19, 0x94, 0x16, 0x25, +}; +static const unsigned char kat3006_persstr[] = {0}; +static const unsigned char kat3006_entropyinpr1[] = { + 0x53, 0x23, 0xd9, 0x5a, 0x4a, 0x0a, 0x46, 0x71, 0x60, 0xe5, 0x72, 0x91, + 0x24, 0xa2, 0x6e, 0x69, +}; +static const unsigned char kat3006_addinpr1[] = {0}; +static const unsigned char kat3006_entropyinpr2[] = { + 0xea, 0xb0, 0x25, 0xac, 0xfa, 0x2e, 0xb1, 0xa2, 0x1c, 0xf4, 0xd9, 0x43, + 0x43, 0x54, 0x77, 0x0f, +}; +static const unsigned char kat3006_addinpr2[] = {0}; +static const unsigned char kat3006_retbits[] = { + 0x62, 0xfb, 0x4a, 0x31, 0xbf, 0x23, 0x32, 0xac, 0xc5, 0x47, 0x4e, 0x22, + 0xc9, 0x16, 0xf5, 0x73, 0x6d, 0x21, 0xea, 0x6c, 0xfd, 0x1e, 0xb9, 0x38, + 0x31, 0x5a, 0xdf, 0x16, 0x9a, 0x18, 0x29, 0xe1, 0xd7, 0x9c, 0x77, 0x36, + 0xb7, 0xc1, 0x90, 0x5e, 0xaf, 0x20, 0xd7, 0xe1, 0xc3, 0x52, 0xa7, 0x87, + 0x69, 0xd2, 0x10, 0x01, 0xa2, 0x5f, 0x45, 0x30, 0x96, 0xfc, 0xfc, 0x41, + 0x54, 0x41, 0xb3, 0x4d, +}; +static const struct drbg_kat_pr_true kat3006_t = { + 5, kat3006_entropyin, kat3006_nonce, kat3006_persstr, + kat3006_entropyinpr1, kat3006_addinpr1, kat3006_entropyinpr2, + kat3006_addinpr2, kat3006_retbits +}; +static const struct drbg_kat kat3006 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3006_t +}; + +static const unsigned char kat3007_entropyin[] = { + 0xf9, 0x46, 0xe5, 0x90, 0xca, 0x3e, 0xa3, 0x77, 0x0c, 0x08, 0xe8, 0xe9, + 0x17, 0x30, 0x11, 0xaa, +}; +static const unsigned char kat3007_nonce[] = { + 0x76, 0xa1, 0x91, 0x64, 0x6a, 0x57, 0x31, 0xdf, +}; +static const unsigned char kat3007_persstr[] = {0}; +static const unsigned char kat3007_entropyinpr1[] = { + 0xfd, 0xb2, 0x3e, 0xf9, 0xb6, 0xbb, 0x42, 0xaa, 0x6f, 0x25, 0x1d, 0x4a, + 0xc0, 0xd2, 0x6c, 0x0f, +}; +static const unsigned char kat3007_addinpr1[] = {0}; +static const unsigned char kat3007_entropyinpr2[] = { + 0x72, 0x4b, 0x19, 0x44, 0x13, 0x23, 0x5a, 0x09, 0x01, 0xf1, 0xa4, 0xac, + 0xdf, 0x8e, 0x37, 0xe3, +}; +static const unsigned char kat3007_addinpr2[] = {0}; +static const unsigned char kat3007_retbits[] = { + 0x33, 0x52, 0xc7, 0xda, 0xbe, 0x9d, 0x34, 0x65, 0xce, 0x10, 0xab, 0x95, + 0xd3, 0xf2, 0x4f, 0x33, 0xb2, 0x13, 0xe7, 0x99, 0xc9, 0x4d, 0xe1, 0x20, + 0xd7, 0xd6, 0xeb, 0x11, 0xf7, 0x32, 0x22, 0x20, 0xe2, 0x8f, 0xf5, 0xc0, + 0xfa, 0xcb, 0x5d, 0xdb, 0x04, 0xde, 0xc6, 0x8f, 0xd4, 0x3e, 0x7e, 0xb0, + 0xbf, 0xe1, 0x33, 0x6c, 0x2e, 0x8c, 0x7f, 0x92, 0xef, 0x3c, 0x03, 0xff, + 0x29, 0xa2, 0x1f, 0x40, +}; +static const struct drbg_kat_pr_true kat3007_t = { + 6, kat3007_entropyin, kat3007_nonce, kat3007_persstr, + kat3007_entropyinpr1, kat3007_addinpr1, kat3007_entropyinpr2, + kat3007_addinpr2, kat3007_retbits +}; +static const struct drbg_kat kat3007 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3007_t +}; + +static const unsigned char kat3008_entropyin[] = { + 0x92, 0x42, 0xa7, 0x1d, 0x6f, 0x8d, 0x3c, 0xf8, 0xcb, 0x86, 0x85, 0x5e, + 0x6c, 0x84, 0xc0, 0x71, +}; +static const unsigned char kat3008_nonce[] = { + 0x56, 0x19, 0x62, 0xf3, 0xc4, 0x09, 0xa3, 0xa0, +}; +static const unsigned char kat3008_persstr[] = {0}; +static const unsigned char kat3008_entropyinpr1[] = { + 0x90, 0x35, 0xe0, 0xf2, 0xe7, 0x24, 0x2f, 0x30, 0xb4, 0xbd, 0x78, 0x19, + 0xf7, 0xd5, 0x48, 0x55, +}; +static const unsigned char kat3008_addinpr1[] = {0}; +static const unsigned char kat3008_entropyinpr2[] = { + 0xe5, 0x00, 0x2e, 0xed, 0x42, 0x8b, 0x17, 0x21, 0xe2, 0xef, 0xf2, 0xc7, + 0x56, 0x32, 0x82, 0x92, +}; +static const unsigned char kat3008_addinpr2[] = {0}; +static const unsigned char kat3008_retbits[] = { + 0x95, 0xca, 0x1c, 0xb4, 0xaa, 0xba, 0x60, 0xae, 0x93, 0x36, 0x24, 0xf5, + 0x4f, 0xb8, 0x2b, 0xe3, 0x22, 0x44, 0xbe, 0x56, 0x87, 0x59, 0xe4, 0xdc, + 0xf7, 0x32, 0x74, 0xa7, 0x50, 0x21, 0x4b, 0x34, 0x35, 0x5d, 0x09, 0x87, + 0x7b, 0xc6, 0xca, 0x68, 0x54, 0x4a, 0x37, 0xad, 0x25, 0x0b, 0xcd, 0xf2, + 0xed, 0xc8, 0xfd, 0x9f, 0xbd, 0x7b, 0x5b, 0xc4, 0x99, 0xe3, 0xfc, 0x6e, + 0xc7, 0xe7, 0x9a, 0xf3, +}; +static const struct drbg_kat_pr_true kat3008_t = { + 7, kat3008_entropyin, kat3008_nonce, kat3008_persstr, + kat3008_entropyinpr1, kat3008_addinpr1, kat3008_entropyinpr2, + kat3008_addinpr2, kat3008_retbits +}; +static const struct drbg_kat kat3008 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3008_t +}; + +static const unsigned char kat3009_entropyin[] = { + 0x54, 0x24, 0x0e, 0xd9, 0x82, 0xa1, 0x73, 0x5a, 0x58, 0x97, 0x6c, 0x3c, + 0x8b, 0x1d, 0x12, 0xb6, +}; +static const unsigned char kat3009_nonce[] = { + 0x6a, 0xaa, 0xd0, 0x72, 0x24, 0x68, 0x82, 0xe3, +}; +static const unsigned char kat3009_persstr[] = {0}; +static const unsigned char kat3009_entropyinpr1[] = { + 0xfc, 0x59, 0x42, 0xfb, 0xfb, 0x12, 0xf3, 0xd1, 0x9b, 0x30, 0xfe, 0x22, + 0x3e, 0xd2, 0x78, 0xde, +}; +static const unsigned char kat3009_addinpr1[] = {0}; +static const unsigned char kat3009_entropyinpr2[] = { + 0x67, 0x46, 0x6a, 0xf8, 0xdd, 0xde, 0x83, 0x7d, 0xd2, 0x85, 0x68, 0x3e, + 0x2c, 0x85, 0x0c, 0xd2, +}; +static const unsigned char kat3009_addinpr2[] = {0}; +static const unsigned char kat3009_retbits[] = { + 0xc4, 0x4f, 0x8b, 0x22, 0xab, 0x9f, 0x75, 0xc1, 0xf7, 0xa9, 0x4a, 0x50, + 0xc1, 0xce, 0x2f, 0x41, 0x2b, 0xbc, 0x4c, 0xc9, 0xee, 0x8c, 0xcb, 0x83, + 0xf2, 0xb4, 0xf2, 0x00, 0x02, 0x40, 0x8f, 0xe7, 0xc5, 0x8f, 0x1a, 0xc3, + 0x55, 0x66, 0x86, 0x25, 0x7e, 0xcf, 0xd1, 0xf3, 0x65, 0xa0, 0x8e, 0xa3, + 0xee, 0x04, 0x58, 0xa5, 0x0d, 0xc2, 0x29, 0xbb, 0x37, 0xa6, 0x77, 0x0f, + 0x44, 0xb9, 0xd6, 0x61, +}; +static const struct drbg_kat_pr_true kat3009_t = { + 8, kat3009_entropyin, kat3009_nonce, kat3009_persstr, + kat3009_entropyinpr1, kat3009_addinpr1, kat3009_entropyinpr2, + kat3009_addinpr2, kat3009_retbits +}; +static const struct drbg_kat kat3009 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3009_t +}; + +static const unsigned char kat3010_entropyin[] = { + 0xc2, 0xba, 0x12, 0x99, 0x63, 0x94, 0xa9, 0xec, 0x1a, 0x37, 0x13, 0x22, + 0x77, 0x77, 0x93, 0x46, +}; +static const unsigned char kat3010_nonce[] = { + 0x9c, 0x8e, 0x8a, 0x83, 0x6d, 0xa2, 0x59, 0x23, +}; +static const unsigned char kat3010_persstr[] = {0}; +static const unsigned char kat3010_entropyinpr1[] = { + 0x76, 0xb7, 0x8d, 0xdb, 0x61, 0x4e, 0x6d, 0xd2, 0x8b, 0x32, 0x30, 0xc6, + 0xee, 0x66, 0xea, 0x4f, +}; +static const unsigned char kat3010_addinpr1[] = {0}; +static const unsigned char kat3010_entropyinpr2[] = { + 0x92, 0x4f, 0x3b, 0x62, 0xf6, 0xb1, 0x7c, 0xbe, 0x99, 0xed, 0x21, 0xe6, + 0x0f, 0x14, 0x6e, 0xe6, +}; +static const unsigned char kat3010_addinpr2[] = {0}; +static const unsigned char kat3010_retbits[] = { + 0xd0, 0x82, 0x03, 0xe4, 0x09, 0xce, 0x7c, 0xb0, 0x6a, 0xf8, 0x8b, 0x0a, + 0x13, 0x6e, 0x58, 0x71, 0xe3, 0x07, 0x8d, 0x6c, 0xf2, 0xb3, 0x7c, 0xcd, + 0x15, 0xaf, 0xaf, 0x91, 0x87, 0x72, 0x32, 0xfb, 0x3a, 0x13, 0x3f, 0xcd, + 0xcc, 0x9d, 0xfe, 0xf7, 0xb5, 0x56, 0x21, 0xe1, 0x50, 0x3c, 0xe7, 0x43, + 0xbe, 0x8b, 0x26, 0x03, 0x2e, 0x92, 0xdb, 0x46, 0x36, 0xd9, 0xa1, 0x24, + 0x38, 0xe2, 0x75, 0xbf, +}; +static const struct drbg_kat_pr_true kat3010_t = { + 9, kat3010_entropyin, kat3010_nonce, kat3010_persstr, + kat3010_entropyinpr1, kat3010_addinpr1, kat3010_entropyinpr2, + kat3010_addinpr2, kat3010_retbits +}; +static const struct drbg_kat kat3010 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3010_t +}; + +static const unsigned char kat3011_entropyin[] = { + 0x47, 0xba, 0x37, 0x10, 0xf3, 0x4d, 0x85, 0xa3, 0x95, 0xdc, 0x07, 0x63, + 0x73, 0xd6, 0x7a, 0x69, +}; +static const unsigned char kat3011_nonce[] = { + 0x67, 0x4e, 0x3f, 0xc0, 0x87, 0x43, 0x52, 0xe8, +}; +static const unsigned char kat3011_persstr[] = {0}; +static const unsigned char kat3011_entropyinpr1[] = { + 0xac, 0x76, 0x1b, 0x26, 0x82, 0x9d, 0xaa, 0x9a, 0x5a, 0x99, 0x0c, 0x2a, + 0xf4, 0xd3, 0x6d, 0xaa, +}; +static const unsigned char kat3011_addinpr1[] = {0}; +static const unsigned char kat3011_entropyinpr2[] = { + 0x26, 0xac, 0x3f, 0xd6, 0x01, 0xd5, 0xce, 0xc3, 0xf5, 0x62, 0xa3, 0xbe, + 0x5b, 0x3f, 0x7d, 0x4a, +}; +static const unsigned char kat3011_addinpr2[] = {0}; +static const unsigned char kat3011_retbits[] = { + 0x22, 0xf7, 0xca, 0x05, 0xe4, 0xe1, 0xf8, 0xab, 0xbd, 0x13, 0xe2, 0x6c, + 0x70, 0x2c, 0x22, 0x07, 0xb8, 0xdc, 0x24, 0xb3, 0x85, 0x4b, 0x19, 0xd3, + 0x7e, 0x50, 0x2b, 0x2b, 0x3d, 0x47, 0xec, 0x80, 0xb7, 0x89, 0xc7, 0xc2, + 0x05, 0x59, 0xdd, 0x71, 0x26, 0xc3, 0x86, 0x54, 0x1b, 0x28, 0x14, 0x19, + 0xef, 0x60, 0x24, 0xba, 0x5a, 0xc7, 0xd1, 0x61, 0x7d, 0x46, 0xf7, 0x54, + 0x9b, 0xe8, 0x16, 0x38, +}; +static const struct drbg_kat_pr_true kat3011_t = { + 10, kat3011_entropyin, kat3011_nonce, kat3011_persstr, + kat3011_entropyinpr1, kat3011_addinpr1, kat3011_entropyinpr2, + kat3011_addinpr2, kat3011_retbits +}; +static const struct drbg_kat kat3011 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3011_t +}; + +static const unsigned char kat3012_entropyin[] = { + 0x10, 0x32, 0x02, 0x10, 0xea, 0x3a, 0x13, 0xd7, 0x09, 0x85, 0x66, 0x9a, + 0x5f, 0xbb, 0x54, 0xd4, +}; +static const unsigned char kat3012_nonce[] = { + 0x52, 0xf5, 0x69, 0x9e, 0x91, 0xb6, 0x14, 0x89, +}; +static const unsigned char kat3012_persstr[] = {0}; +static const unsigned char kat3012_entropyinpr1[] = { + 0x45, 0x67, 0x77, 0xaf, 0x4f, 0x51, 0x56, 0xcd, 0xc2, 0xd0, 0xee, 0x51, + 0x46, 0x71, 0x46, 0x57, +}; +static const unsigned char kat3012_addinpr1[] = {0}; +static const unsigned char kat3012_entropyinpr2[] = { + 0x00, 0xc7, 0x48, 0x72, 0x53, 0x60, 0xc2, 0x75, 0x9d, 0xc8, 0x92, 0xe9, + 0x34, 0xb8, 0x16, 0x6e, +}; +static const unsigned char kat3012_addinpr2[] = {0}; +static const unsigned char kat3012_retbits[] = { + 0x68, 0x79, 0x43, 0xbd, 0x14, 0x1d, 0xb1, 0x02, 0x64, 0x14, 0x24, 0x04, + 0x8b, 0xde, 0x43, 0x94, 0xfa, 0xcf, 0x1d, 0xb0, 0x92, 0x66, 0x74, 0x95, + 0x4f, 0x06, 0x01, 0x20, 0x26, 0xfc, 0x65, 0xf6, 0x89, 0x7a, 0x36, 0x8e, + 0x6c, 0x65, 0x99, 0x7d, 0xaf, 0x33, 0x78, 0x06, 0xbb, 0x58, 0xff, 0x3a, + 0x3d, 0x71, 0x1d, 0xb8, 0x9b, 0xba, 0xb1, 0xd0, 0xa5, 0x34, 0xe5, 0xa6, + 0xc3, 0x1d, 0x8b, 0x3c, +}; +static const struct drbg_kat_pr_true kat3012_t = { + 11, kat3012_entropyin, kat3012_nonce, kat3012_persstr, + kat3012_entropyinpr1, kat3012_addinpr1, kat3012_entropyinpr2, + kat3012_addinpr2, kat3012_retbits +}; +static const struct drbg_kat kat3012 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3012_t +}; + +static const unsigned char kat3013_entropyin[] = { + 0x3f, 0x7a, 0x8c, 0xfb, 0x5c, 0x56, 0x0d, 0x18, 0xb5, 0xe5, 0xe6, 0x2c, + 0x55, 0xe9, 0x9c, 0x63, +}; +static const unsigned char kat3013_nonce[] = { + 0x85, 0xab, 0x12, 0x43, 0x91, 0xfc, 0xad, 0xc4, +}; +static const unsigned char kat3013_persstr[] = {0}; +static const unsigned char kat3013_entropyinpr1[] = { + 0x3b, 0x84, 0xba, 0xfe, 0x46, 0x3d, 0x42, 0xd6, 0xa3, 0xe3, 0x4a, 0xe9, + 0x73, 0x5e, 0xac, 0xf5, +}; +static const unsigned char kat3013_addinpr1[] = {0}; +static const unsigned char kat3013_entropyinpr2[] = { + 0xb6, 0x9a, 0x84, 0x16, 0x7d, 0x8f, 0xe0, 0xec, 0x1d, 0x80, 0x0c, 0xde, + 0x7f, 0xa3, 0xbd, 0x6a, +}; +static const unsigned char kat3013_addinpr2[] = {0}; +static const unsigned char kat3013_retbits[] = { + 0xe5, 0x51, 0x1a, 0xf0, 0x94, 0xe6, 0xb8, 0xe2, 0xf1, 0x85, 0x57, 0xc4, + 0x6c, 0x56, 0xe0, 0xbe, 0xbe, 0x7c, 0x45, 0x74, 0x6a, 0x3a, 0xb4, 0xa2, + 0xfd, 0x0b, 0xcf, 0x2f, 0x24, 0x3b, 0x1a, 0x18, 0xc9, 0x7d, 0x40, 0x16, + 0xba, 0x79, 0xb5, 0x6b, 0xfe, 0x97, 0x3e, 0xe0, 0x55, 0xd8, 0xb7, 0x0c, + 0xdc, 0x5e, 0x62, 0xe6, 0x8d, 0x29, 0x9a, 0xb7, 0x7b, 0x80, 0x96, 0xf0, + 0x5c, 0x9f, 0xcb, 0xea, +}; +static const struct drbg_kat_pr_true kat3013_t = { + 12, kat3013_entropyin, kat3013_nonce, kat3013_persstr, + kat3013_entropyinpr1, kat3013_addinpr1, kat3013_entropyinpr2, + kat3013_addinpr2, kat3013_retbits +}; +static const struct drbg_kat kat3013 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3013_t +}; + +static const unsigned char kat3014_entropyin[] = { + 0x59, 0xa3, 0xc9, 0x43, 0xf9, 0xf3, 0x5c, 0xfc, 0xb1, 0x2e, 0xf9, 0xf9, + 0xc0, 0xea, 0x53, 0xf6, +}; +static const unsigned char kat3014_nonce[] = { + 0x00, 0x02, 0x22, 0xb9, 0xe8, 0x9a, 0xdd, 0x42, +}; +static const unsigned char kat3014_persstr[] = {0}; +static const unsigned char kat3014_entropyinpr1[] = { + 0xbc, 0x8c, 0xf5, 0x3f, 0xdf, 0x32, 0x57, 0xad, 0xc5, 0x56, 0x07, 0xfa, + 0xf1, 0xad, 0x44, 0x96, +}; +static const unsigned char kat3014_addinpr1[] = {0}; +static const unsigned char kat3014_entropyinpr2[] = { + 0x55, 0xdd, 0x5c, 0x48, 0x60, 0xe7, 0x92, 0x43, 0x50, 0xa3, 0x7f, 0x9c, + 0xb5, 0x18, 0xb1, 0x6a, +}; +static const unsigned char kat3014_addinpr2[] = {0}; +static const unsigned char kat3014_retbits[] = { + 0xaf, 0x6b, 0xd2, 0xf7, 0x77, 0x87, 0x41, 0x3e, 0x29, 0xef, 0x04, 0xbc, + 0xbc, 0xaa, 0x82, 0xc0, 0xb8, 0x86, 0x38, 0xa9, 0xe0, 0xa2, 0xf4, 0xa5, + 0x72, 0xf9, 0xd7, 0x17, 0xd7, 0x57, 0x30, 0x14, 0x81, 0x22, 0x81, 0x9e, + 0x9b, 0x3e, 0x0e, 0xd5, 0x97, 0xc8, 0x4a, 0x0b, 0x3c, 0x35, 0x6d, 0x00, + 0x98, 0xaf, 0x74, 0x34, 0x42, 0x30, 0x37, 0xff, 0xa8, 0x9a, 0x01, 0x91, + 0xfd, 0xd2, 0x93, 0x72, +}; +static const struct drbg_kat_pr_true kat3014_t = { + 13, kat3014_entropyin, kat3014_nonce, kat3014_persstr, + kat3014_entropyinpr1, kat3014_addinpr1, kat3014_entropyinpr2, + kat3014_addinpr2, kat3014_retbits +}; +static const struct drbg_kat kat3014 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3014_t +}; + +static const unsigned char kat3015_entropyin[] = { + 0x36, 0x51, 0x57, 0x8d, 0x1c, 0x0e, 0x56, 0x7c, 0x80, 0x6f, 0x7c, 0x95, + 0xb3, 0xa4, 0x55, 0x22, +}; +static const unsigned char kat3015_nonce[] = { + 0xd6, 0x42, 0xa4, 0xd4, 0xe7, 0x52, 0x81, 0xd1, +}; +static const unsigned char kat3015_persstr[] = {0}; +static const unsigned char kat3015_entropyinpr1[] = { + 0xa9, 0x88, 0x98, 0xa3, 0xa1, 0x8b, 0x44, 0x83, 0x27, 0x7f, 0x80, 0x9f, + 0x1e, 0x61, 0xce, 0x8a, +}; +static const unsigned char kat3015_addinpr1[] = {0}; +static const unsigned char kat3015_entropyinpr2[] = { + 0x2a, 0x8c, 0x04, 0xd6, 0x91, 0x35, 0x83, 0xc0, 0xd4, 0x6c, 0xbb, 0xa3, + 0x69, 0xd7, 0xde, 0x8b, +}; +static const unsigned char kat3015_addinpr2[] = {0}; +static const unsigned char kat3015_retbits[] = { + 0x21, 0x36, 0x6c, 0xea, 0x6a, 0x66, 0x9f, 0x19, 0x36, 0x59, 0xe6, 0xc5, + 0xf7, 0x7c, 0xd8, 0x23, 0xe6, 0xd2, 0x1d, 0x0e, 0x4c, 0x7d, 0x6a, 0xeb, + 0x9a, 0xdf, 0x20, 0x88, 0x95, 0x69, 0x1f, 0xf5, 0xb3, 0xc0, 0x49, 0x2d, + 0x86, 0x0c, 0xd2, 0xac, 0x5b, 0xe1, 0x03, 0x51, 0x6c, 0x0d, 0x36, 0xfd, + 0x2d, 0x8a, 0xd8, 0x00, 0x0d, 0x7a, 0xf2, 0xf7, 0x24, 0x9f, 0xfe, 0x58, + 0x46, 0x17, 0xe6, 0xc6, +}; +static const struct drbg_kat_pr_true kat3015_t = { + 14, kat3015_entropyin, kat3015_nonce, kat3015_persstr, + kat3015_entropyinpr1, kat3015_addinpr1, kat3015_entropyinpr2, + kat3015_addinpr2, kat3015_retbits +}; +static const struct drbg_kat kat3015 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3015_t +}; + +static const unsigned char kat3016_entropyin[] = { + 0xc4, 0xe0, 0xe5, 0x1d, 0x45, 0x89, 0x1a, 0xa9, 0xb3, 0x1f, 0x78, 0x63, + 0x48, 0x59, 0xb0, 0x06, +}; +static const unsigned char kat3016_nonce[] = { + 0xa0, 0x46, 0xfc, 0x4c, 0xc9, 0x69, 0xc0, 0xd9, +}; +static const unsigned char kat3016_persstr[] = {0}; +static const unsigned char kat3016_entropyinpr1[] = { + 0xdc, 0x1a, 0xc4, 0x51, 0xef, 0xe4, 0x17, 0xe7, 0x11, 0xec, 0xf6, 0x95, + 0x69, 0xb1, 0xb7, 0x16, +}; +static const unsigned char kat3016_addinpr1[] = { + 0xac, 0x3d, 0x13, 0x13, 0x25, 0x19, 0xb2, 0xe7, 0x0b, 0x41, 0x89, 0x36, + 0x45, 0xc7, 0x7b, 0xb3, +}; +static const unsigned char kat3016_entropyinpr2[] = { + 0x1b, 0x60, 0x3b, 0x8c, 0xe1, 0x53, 0xff, 0x78, 0x9d, 0x74, 0x50, 0x8b, + 0xbd, 0xdb, 0x3d, 0x13, +}; +static const unsigned char kat3016_addinpr2[] = { + 0x97, 0x58, 0xaf, 0x20, 0x41, 0x52, 0xeb, 0x66, 0x9e, 0x5f, 0xc1, 0x20, + 0x03, 0x95, 0x14, 0xbe, +}; +static const unsigned char kat3016_retbits[] = { + 0xd7, 0x0c, 0x5a, 0xd5, 0x67, 0x2a, 0x6e, 0x30, 0x80, 0xd6, 0x26, 0xd0, + 0xb9, 0x75, 0x79, 0x1d, 0xe5, 0x99, 0x93, 0xb9, 0x52, 0xa8, 0x1a, 0xc6, + 0xb7, 0x28, 0xc3, 0x50, 0x95, 0x8b, 0x27, 0x09, 0x80, 0xaa, 0xea, 0x53, + 0x8e, 0xd5, 0xe6, 0x94, 0x88, 0xa7, 0x7f, 0xda, 0x33, 0x64, 0x67, 0xa1, + 0xa9, 0x59, 0x3d, 0x8a, 0x66, 0xad, 0x30, 0x91, 0xe0, 0x5e, 0x17, 0xa7, + 0x5e, 0xd7, 0xfc, 0xe6, +}; +static const struct drbg_kat_pr_true kat3016_t = { + 0, kat3016_entropyin, kat3016_nonce, kat3016_persstr, + kat3016_entropyinpr1, kat3016_addinpr1, kat3016_entropyinpr2, + kat3016_addinpr2, kat3016_retbits +}; +static const struct drbg_kat kat3016 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3016_t +}; + +static const unsigned char kat3017_entropyin[] = { + 0x17, 0x35, 0xe2, 0x7b, 0x04, 0x2d, 0xd1, 0xb5, 0x76, 0x8e, 0x6a, 0xd7, + 0x72, 0x0b, 0x71, 0x1d, +}; +static const unsigned char kat3017_nonce[] = { + 0xca, 0x47, 0x3c, 0x14, 0x0a, 0x8e, 0xdb, 0xe0, +}; +static const unsigned char kat3017_persstr[] = {0}; +static const unsigned char kat3017_entropyinpr1[] = { + 0xe5, 0x35, 0x42, 0xcb, 0x32, 0xcf, 0x20, 0x60, 0x39, 0x40, 0x15, 0x8e, + 0x47, 0xf7, 0x2e, 0xa2, +}; +static const unsigned char kat3017_addinpr1[] = { + 0x38, 0x79, 0xe0, 0x88, 0x44, 0xfc, 0xfc, 0xbf, 0x21, 0xe3, 0x06, 0xe9, + 0xef, 0xd7, 0xeb, 0x82, +}; +static const unsigned char kat3017_entropyinpr2[] = { + 0x82, 0xc0, 0x47, 0xfc, 0xe9, 0xa4, 0x32, 0xb4, 0xe3, 0xed, 0x29, 0x16, + 0xef, 0x57, 0x07, 0x48, +}; +static const unsigned char kat3017_addinpr2[] = { + 0xec, 0x04, 0x30, 0x07, 0x39, 0x95, 0x32, 0xd1, 0xaf, 0x00, 0xd7, 0x3f, + 0x9a, 0x4f, 0x1b, 0x56, +}; +static const unsigned char kat3017_retbits[] = { + 0xba, 0x1a, 0xa8, 0xe4, 0xcb, 0xbb, 0x8b, 0xd0, 0x23, 0x2c, 0xe3, 0x3e, + 0xed, 0xf8, 0x1d, 0x56, 0xff, 0xa0, 0x96, 0xf1, 0xf8, 0xe3, 0x61, 0x7e, + 0x34, 0x55, 0xe7, 0x1d, 0x8a, 0x24, 0xbe, 0xbc, 0xf2, 0x7a, 0xee, 0xcf, + 0xa9, 0x90, 0x5e, 0x00, 0x60, 0x06, 0xdc, 0xbd, 0x33, 0x4e, 0xec, 0x4b, + 0x99, 0x31, 0x6b, 0xc6, 0xa1, 0xef, 0x92, 0xdc, 0x69, 0x37, 0x93, 0x4b, + 0x4e, 0x89, 0x26, 0xd2, +}; +static const struct drbg_kat_pr_true kat3017_t = { + 1, kat3017_entropyin, kat3017_nonce, kat3017_persstr, + kat3017_entropyinpr1, kat3017_addinpr1, kat3017_entropyinpr2, + kat3017_addinpr2, kat3017_retbits +}; +static const struct drbg_kat kat3017 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3017_t +}; + +static const unsigned char kat3018_entropyin[] = { + 0x6a, 0x8f, 0xe1, 0xd7, 0xf9, 0xc3, 0xae, 0xaa, 0x77, 0x45, 0xda, 0x25, + 0x24, 0xd6, 0x6c, 0x3e, +}; +static const unsigned char kat3018_nonce[] = { + 0x10, 0x3f, 0x02, 0x62, 0x2a, 0x44, 0xe5, 0x6f, +}; +static const unsigned char kat3018_persstr[] = {0}; +static const unsigned char kat3018_entropyinpr1[] = { + 0xa5, 0xf3, 0x62, 0xb2, 0xf2, 0xfe, 0x26, 0xe4, 0x71, 0x81, 0x20, 0xa1, + 0x3f, 0x47, 0x47, 0xc4, +}; +static const unsigned char kat3018_addinpr1[] = { + 0x29, 0x9f, 0x97, 0x39, 0x93, 0x0f, 0x54, 0x4e, 0x6c, 0x1f, 0xeb, 0xb8, + 0x7f, 0x21, 0x4c, 0x71, +}; +static const unsigned char kat3018_entropyinpr2[] = { + 0x37, 0x43, 0x60, 0x47, 0x12, 0x62, 0x51, 0xda, 0x75, 0xc3, 0xef, 0xf7, + 0x49, 0xd1, 0x56, 0x33, +}; +static const unsigned char kat3018_addinpr2[] = { + 0xc0, 0x3f, 0xe2, 0x39, 0xf0, 0x44, 0x5a, 0x76, 0x00, 0xcc, 0x07, 0xce, + 0xcb, 0x86, 0x46, 0xf8, +}; +static const unsigned char kat3018_retbits[] = { + 0xb4, 0x80, 0xe9, 0x4a, 0xb2, 0x1f, 0x13, 0x71, 0x0b, 0x9f, 0xcb, 0x96, + 0x94, 0xd6, 0x35, 0xcb, 0xee, 0x32, 0x26, 0xbb, 0x88, 0xd6, 0x41, 0xc3, + 0x61, 0x7f, 0xa4, 0xfc, 0x94, 0x47, 0x7b, 0xbd, 0xda, 0x49, 0xe1, 0xe9, + 0x2f, 0x8c, 0x29, 0x89, 0xdd, 0xbb, 0x2a, 0xd0, 0x71, 0x9a, 0xe8, 0xe3, + 0x51, 0x5f, 0x4b, 0x20, 0x5c, 0xf6, 0x46, 0x08, 0x6d, 0x64, 0x5c, 0x4a, + 0x45, 0xe6, 0x41, 0x35, +}; +static const struct drbg_kat_pr_true kat3018_t = { + 2, kat3018_entropyin, kat3018_nonce, kat3018_persstr, + kat3018_entropyinpr1, kat3018_addinpr1, kat3018_entropyinpr2, + kat3018_addinpr2, kat3018_retbits +}; +static const struct drbg_kat kat3018 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3018_t +}; + +static const unsigned char kat3019_entropyin[] = { + 0xa3, 0x67, 0xc9, 0x42, 0xf9, 0x8b, 0xd9, 0x8c, 0xd2, 0x13, 0x2e, 0x69, + 0x16, 0xae, 0x26, 0x44, +}; +static const unsigned char kat3019_nonce[] = { + 0xf1, 0x2f, 0x3e, 0x04, 0x14, 0x3a, 0xd9, 0x17, +}; +static const unsigned char kat3019_persstr[] = {0}; +static const unsigned char kat3019_entropyinpr1[] = { + 0xaa, 0x0d, 0x43, 0x50, 0xf2, 0x99, 0xdc, 0x82, 0x18, 0x80, 0x80, 0x66, + 0x68, 0x46, 0x73, 0x14, +}; +static const unsigned char kat3019_addinpr1[] = { + 0x3c, 0x75, 0x36, 0x49, 0xe0, 0xc7, 0x37, 0xac, 0xa4, 0x5e, 0xc2, 0x07, + 0xf0, 0x74, 0x72, 0xc3, +}; +static const unsigned char kat3019_entropyinpr2[] = { + 0x45, 0x59, 0x37, 0xc0, 0x25, 0x03, 0x68, 0x23, 0xde, 0x50, 0xe0, 0x9f, + 0x15, 0xd5, 0x6e, 0x5e, +}; +static const unsigned char kat3019_addinpr2[] = { + 0x4e, 0x74, 0x6e, 0xfb, 0x72, 0xf0, 0x15, 0x25, 0x0d, 0x5e, 0x4a, 0xdc, + 0xf5, 0x22, 0xff, 0x7b, +}; +static const unsigned char kat3019_retbits[] = { + 0x9b, 0xfb, 0x87, 0x65, 0x90, 0x59, 0x2f, 0xb9, 0x2f, 0x1b, 0x53, 0x04, + 0x4e, 0xe0, 0x8a, 0x66, 0xec, 0x01, 0x08, 0x6f, 0x76, 0xcb, 0x83, 0xa6, + 0x8b, 0x7e, 0xe3, 0xbb, 0xb4, 0xbb, 0x7d, 0x15, 0x31, 0x57, 0x4b, 0x77, + 0xca, 0x41, 0x8f, 0x28, 0xde, 0xb8, 0xfd, 0xf7, 0xec, 0x54, 0xe5, 0x6a, + 0x33, 0x32, 0x09, 0x9b, 0xdb, 0x6c, 0x12, 0x57, 0xcf, 0x2e, 0xb0, 0x5a, + 0xd0, 0x4e, 0x98, 0x9d, +}; +static const struct drbg_kat_pr_true kat3019_t = { + 3, kat3019_entropyin, kat3019_nonce, kat3019_persstr, + kat3019_entropyinpr1, kat3019_addinpr1, kat3019_entropyinpr2, + kat3019_addinpr2, kat3019_retbits +}; +static const struct drbg_kat kat3019 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3019_t +}; + +static const unsigned char kat3020_entropyin[] = { + 0x7a, 0x52, 0x41, 0x62, 0x05, 0x84, 0xf8, 0x52, 0x33, 0xee, 0xc9, 0x3f, + 0x98, 0x9b, 0xd0, 0xd9, +}; +static const unsigned char kat3020_nonce[] = { + 0x95, 0xab, 0x8f, 0x25, 0xd2, 0x08, 0x15, 0xf0, +}; +static const unsigned char kat3020_persstr[] = {0}; +static const unsigned char kat3020_entropyinpr1[] = { + 0x81, 0x6e, 0xad, 0x1b, 0xf6, 0x19, 0x80, 0xda, 0xd6, 0xdd, 0xf8, 0x08, + 0x8c, 0x32, 0x41, 0x59, +}; +static const unsigned char kat3020_addinpr1[] = { + 0xf2, 0xe2, 0x23, 0xcf, 0x11, 0x0b, 0x62, 0xde, 0xc9, 0x77, 0x22, 0x07, + 0x10, 0x94, 0xdd, 0x00, +}; +static const unsigned char kat3020_entropyinpr2[] = { + 0xe4, 0xe6, 0x01, 0x4c, 0xa0, 0x63, 0x69, 0xec, 0x80, 0x6c, 0x6c, 0x5d, + 0x70, 0xb4, 0x9e, 0x31, +}; +static const unsigned char kat3020_addinpr2[] = { + 0x43, 0xba, 0x19, 0x6d, 0xdc, 0xc9, 0x90, 0x56, 0xb0, 0x42, 0x4e, 0x03, + 0x42, 0x9e, 0xd6, 0x39, +}; +static const unsigned char kat3020_retbits[] = { + 0x0e, 0x8e, 0x57, 0x60, 0x9f, 0x9f, 0xd1, 0xea, 0x5c, 0x25, 0x75, 0xd0, + 0x47, 0xfc, 0x11, 0x66, 0xef, 0xb8, 0x62, 0xc6, 0x26, 0x49, 0xcf, 0xe0, + 0x71, 0x04, 0x84, 0x96, 0x7c, 0x03, 0x1a, 0x5f, 0xf3, 0x94, 0x05, 0xdd, + 0x92, 0x61, 0xc9, 0x52, 0xa0, 0xdc, 0xca, 0x20, 0xa8, 0x10, 0x7b, 0xb5, + 0xdf, 0x60, 0x37, 0x62, 0x75, 0x12, 0xd5, 0xa6, 0x21, 0x99, 0x10, 0x5b, + 0x46, 0x85, 0xb0, 0xc9, +}; +static const struct drbg_kat_pr_true kat3020_t = { + 4, kat3020_entropyin, kat3020_nonce, kat3020_persstr, + kat3020_entropyinpr1, kat3020_addinpr1, kat3020_entropyinpr2, + kat3020_addinpr2, kat3020_retbits +}; +static const struct drbg_kat kat3020 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3020_t +}; + +static const unsigned char kat3021_entropyin[] = { + 0xfe, 0xb2, 0x89, 0xcf, 0x79, 0x1b, 0xeb, 0x7d, 0xd4, 0xb0, 0xd8, 0x7f, + 0x5c, 0x80, 0x5e, 0xa0, +}; +static const unsigned char kat3021_nonce[] = { + 0x78, 0x39, 0x61, 0xe0, 0x68, 0x1a, 0x1f, 0xca, +}; +static const unsigned char kat3021_persstr[] = {0}; +static const unsigned char kat3021_entropyinpr1[] = { + 0x84, 0xce, 0x98, 0x21, 0xb3, 0x5f, 0x7f, 0xe9, 0x8c, 0xba, 0xef, 0xb3, + 0x08, 0x0c, 0x92, 0xdb, +}; +static const unsigned char kat3021_addinpr1[] = { + 0x55, 0x06, 0x3e, 0x0b, 0x56, 0xee, 0x6a, 0xdb, 0xbf, 0x00, 0xe6, 0xc1, + 0xc7, 0x75, 0xc8, 0x03, +}; +static const unsigned char kat3021_entropyinpr2[] = { + 0x1d, 0x32, 0x86, 0x23, 0x4a, 0xe8, 0x06, 0xed, 0xa3, 0x3b, 0x27, 0x55, + 0x38, 0xe7, 0xfc, 0x0d, +}; +static const unsigned char kat3021_addinpr2[] = { + 0xd3, 0x58, 0x0e, 0xb4, 0xfb, 0x45, 0xa9, 0x4a, 0xf6, 0x07, 0x94, 0x69, + 0x3d, 0xf7, 0x07, 0xcd, +}; +static const unsigned char kat3021_retbits[] = { + 0x70, 0x09, 0x46, 0x79, 0x52, 0x74, 0x8c, 0x11, 0xb4, 0x5a, 0xb8, 0xc1, + 0xbf, 0xe9, 0x92, 0xc9, 0x77, 0x5c, 0x71, 0x52, 0x89, 0x3f, 0x66, 0xc6, + 0x8a, 0xd7, 0xf3, 0x68, 0x86, 0xee, 0x25, 0xcb, 0x8f, 0x2e, 0x6d, 0x86, + 0x45, 0x30, 0x10, 0x85, 0x4a, 0xc9, 0x51, 0x62, 0x9f, 0x18, 0x28, 0xfe, + 0x5c, 0x85, 0xba, 0x7c, 0x86, 0x8d, 0x3d, 0xd4, 0x5c, 0x2b, 0x13, 0xc0, + 0xa0, 0xaa, 0x7c, 0xbf, +}; +static const struct drbg_kat_pr_true kat3021_t = { + 5, kat3021_entropyin, kat3021_nonce, kat3021_persstr, + kat3021_entropyinpr1, kat3021_addinpr1, kat3021_entropyinpr2, + kat3021_addinpr2, kat3021_retbits +}; +static const struct drbg_kat kat3021 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3021_t +}; + +static const unsigned char kat3022_entropyin[] = { + 0x2a, 0xc1, 0x06, 0x67, 0x4e, 0xfa, 0xb4, 0x11, 0xf5, 0x1d, 0x52, 0xe5, + 0xd6, 0x5e, 0x99, 0x3a, +}; +static const unsigned char kat3022_nonce[] = { + 0x79, 0x79, 0x01, 0x82, 0xb2, 0xc3, 0xd7, 0x6a, +}; +static const unsigned char kat3022_persstr[] = {0}; +static const unsigned char kat3022_entropyinpr1[] = { + 0x3e, 0xa4, 0x23, 0x88, 0xd2, 0x90, 0x5b, 0xa5, 0xa6, 0x9c, 0xd6, 0x2e, + 0x2f, 0xde, 0xec, 0x66, +}; +static const unsigned char kat3022_addinpr1[] = { + 0x20, 0xb9, 0x44, 0x42, 0x4d, 0x65, 0x4b, 0x50, 0x38, 0x6d, 0x0d, 0x80, + 0xec, 0x3a, 0x0c, 0xad, +}; +static const unsigned char kat3022_entropyinpr2[] = { + 0xe5, 0xdc, 0x83, 0xb1, 0x30, 0x3d, 0xbf, 0x5c, 0x83, 0xfc, 0xab, 0x48, + 0xe2, 0xae, 0x6a, 0x70, +}; +static const unsigned char kat3022_addinpr2[] = { + 0x3f, 0x16, 0xb2, 0x19, 0xcd, 0xa6, 0xe9, 0x2f, 0x90, 0x85, 0x76, 0x7c, + 0x78, 0xfa, 0x50, 0x56, +}; +static const unsigned char kat3022_retbits[] = { + 0xd4, 0x8a, 0x95, 0x39, 0x0a, 0x20, 0xf0, 0xf7, 0x5b, 0xd9, 0xe2, 0xe5, + 0x88, 0xe1, 0x4a, 0xb0, 0xc8, 0x8e, 0xfd, 0x70, 0x01, 0x61, 0x95, 0xe0, + 0x33, 0x87, 0x46, 0xb2, 0x46, 0x48, 0xa9, 0x2f, 0x32, 0xca, 0x86, 0x0f, + 0xf1, 0x0c, 0x50, 0x76, 0x43, 0x64, 0xb8, 0x14, 0x64, 0x65, 0xe1, 0xea, + 0xdc, 0x72, 0x41, 0xb0, 0x30, 0x9b, 0x2a, 0xca, 0x6a, 0x01, 0x30, 0xfa, + 0xfe, 0x56, 0x73, 0x50, +}; +static const struct drbg_kat_pr_true kat3022_t = { + 6, kat3022_entropyin, kat3022_nonce, kat3022_persstr, + kat3022_entropyinpr1, kat3022_addinpr1, kat3022_entropyinpr2, + kat3022_addinpr2, kat3022_retbits +}; +static const struct drbg_kat kat3022 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3022_t +}; + +static const unsigned char kat3023_entropyin[] = { + 0x31, 0xf5, 0x8d, 0xd3, 0x68, 0xc2, 0x82, 0x4e, 0x6e, 0x80, 0xa7, 0xc0, + 0x2d, 0xbc, 0x36, 0x7b, +}; +static const unsigned char kat3023_nonce[] = { + 0x0e, 0x71, 0xa8, 0xc1, 0x1c, 0xe8, 0x10, 0x6f, +}; +static const unsigned char kat3023_persstr[] = {0}; +static const unsigned char kat3023_entropyinpr1[] = { + 0x12, 0x7d, 0x6a, 0x9f, 0xdd, 0xae, 0x3b, 0xe1, 0xb6, 0x62, 0xf6, 0x43, + 0xa5, 0x4e, 0xcc, 0x05, +}; +static const unsigned char kat3023_addinpr1[] = { + 0x99, 0x94, 0x99, 0x7e, 0xd4, 0x32, 0x43, 0x76, 0xcb, 0xeb, 0xe9, 0x8d, + 0x60, 0x1f, 0x13, 0xb5, +}; +static const unsigned char kat3023_entropyinpr2[] = { + 0x9f, 0xe8, 0xc7, 0x5b, 0xd8, 0xfe, 0xdf, 0xb3, 0xb2, 0xd1, 0xa5, 0x2c, + 0xca, 0x13, 0x3d, 0xde, +}; +static const unsigned char kat3023_addinpr2[] = { + 0xbc, 0xf5, 0xb4, 0xca, 0x25, 0x5a, 0x31, 0x28, 0xce, 0x84, 0x36, 0x49, + 0x85, 0x31, 0x94, 0x81, +}; +static const unsigned char kat3023_retbits[] = { + 0x1f, 0xb4, 0xf4, 0x3f, 0x89, 0x37, 0xc1, 0xb8, 0xb4, 0x4e, 0x23, 0x49, + 0xd8, 0x1d, 0xaf, 0x57, 0x37, 0xb4, 0x12, 0x53, 0x29, 0x58, 0x35, 0x13, + 0xd9, 0x57, 0x64, 0x1c, 0xc1, 0x6b, 0xc9, 0xa5, 0x22, 0x8b, 0x4e, 0x2c, + 0x2f, 0xc9, 0x8a, 0x0b, 0x5f, 0x2d, 0xf6, 0xdd, 0x61, 0x00, 0x58, 0xd4, + 0x53, 0x9f, 0x0f, 0x50, 0x7e, 0x74, 0x06, 0xef, 0xb8, 0x93, 0x60, 0x5b, + 0x29, 0x1d, 0x84, 0xfb, +}; +static const struct drbg_kat_pr_true kat3023_t = { + 7, kat3023_entropyin, kat3023_nonce, kat3023_persstr, + kat3023_entropyinpr1, kat3023_addinpr1, kat3023_entropyinpr2, + kat3023_addinpr2, kat3023_retbits +}; +static const struct drbg_kat kat3023 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3023_t +}; + +static const unsigned char kat3024_entropyin[] = { + 0xd2, 0xde, 0xdd, 0x97, 0xeb, 0x0b, 0x45, 0xc5, 0x90, 0xe1, 0x86, 0x61, + 0x43, 0xd1, 0x36, 0x06, +}; +static const unsigned char kat3024_nonce[] = { + 0x30, 0xac, 0xa6, 0xcb, 0x2f, 0x69, 0x10, 0x09, +}; +static const unsigned char kat3024_persstr[] = {0}; +static const unsigned char kat3024_entropyinpr1[] = { + 0xc6, 0xb6, 0x83, 0x4f, 0xe4, 0x0e, 0x95, 0x95, 0xb0, 0x37, 0x23, 0x89, + 0x4a, 0x3e, 0xa7, 0x23, +}; +static const unsigned char kat3024_addinpr1[] = { + 0x8d, 0x89, 0xb8, 0xa9, 0x14, 0x05, 0x84, 0x48, 0x00, 0x94, 0xeb, 0x88, + 0xaf, 0x6e, 0xcf, 0xae, +}; +static const unsigned char kat3024_entropyinpr2[] = { + 0xce, 0xab, 0x7c, 0x1f, 0x7c, 0xe2, 0x99, 0x70, 0x21, 0xa7, 0x59, 0xdc, + 0xae, 0x06, 0xac, 0x14, +}; +static const unsigned char kat3024_addinpr2[] = { + 0x31, 0x6a, 0x84, 0x82, 0x50, 0x59, 0x7e, 0x51, 0xe7, 0x31, 0x43, 0xbc, + 0x36, 0xe3, 0xd3, 0xb7, +}; +static const unsigned char kat3024_retbits[] = { + 0x69, 0x5a, 0x28, 0x33, 0xb7, 0xf7, 0x2f, 0x5b, 0x2b, 0x00, 0x5f, 0xe3, + 0x23, 0x7b, 0x74, 0xad, 0x56, 0x2f, 0xca, 0x3b, 0x8d, 0x13, 0x9c, 0x15, + 0x0c, 0x9f, 0x09, 0x4c, 0x67, 0x54, 0x02, 0x27, 0x9e, 0xda, 0x56, 0xa7, + 0x94, 0x15, 0x48, 0x6f, 0x20, 0x34, 0x1b, 0x1a, 0xf8, 0x9c, 0x27, 0xf8, + 0x7e, 0xed, 0xd8, 0xaa, 0xaa, 0x77, 0x3f, 0x02, 0x5e, 0x4b, 0xe3, 0xf0, + 0xb8, 0x38, 0x00, 0xea, +}; +static const struct drbg_kat_pr_true kat3024_t = { + 8, kat3024_entropyin, kat3024_nonce, kat3024_persstr, + kat3024_entropyinpr1, kat3024_addinpr1, kat3024_entropyinpr2, + kat3024_addinpr2, kat3024_retbits +}; +static const struct drbg_kat kat3024 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3024_t +}; + +static const unsigned char kat3025_entropyin[] = { + 0xf9, 0xbe, 0xcd, 0x9f, 0x99, 0x72, 0xd8, 0x91, 0xa2, 0x86, 0x3b, 0xa8, + 0x6c, 0x78, 0x83, 0x9c, +}; +static const unsigned char kat3025_nonce[] = { + 0x8e, 0x2f, 0x8a, 0x50, 0x8e, 0x1d, 0x0e, 0x56, +}; +static const unsigned char kat3025_persstr[] = {0}; +static const unsigned char kat3025_entropyinpr1[] = { + 0x38, 0x60, 0x74, 0xc4, 0xca, 0xe9, 0xb5, 0x50, 0x26, 0xdc, 0x65, 0x7d, + 0x0c, 0x5a, 0xbd, 0x58, +}; +static const unsigned char kat3025_addinpr1[] = { + 0x6b, 0x7a, 0x9e, 0xe4, 0x19, 0x0d, 0x9e, 0xbe, 0xe2, 0xd2, 0x57, 0xe9, + 0xb2, 0x12, 0x8c, 0xcb, +}; +static const unsigned char kat3025_entropyinpr2[] = { + 0xf8, 0xca, 0x55, 0xa4, 0x7a, 0x5d, 0x7e, 0x4e, 0x90, 0xaa, 0x4a, 0xb7, + 0x18, 0x5d, 0x46, 0x92, +}; +static const unsigned char kat3025_addinpr2[] = { + 0xd3, 0x0b, 0x83, 0x56, 0x5c, 0x6a, 0xe1, 0xfd, 0x54, 0x20, 0x34, 0x1c, + 0x91, 0xb7, 0x2c, 0xca, +}; +static const unsigned char kat3025_retbits[] = { + 0xb4, 0x75, 0x15, 0x5b, 0x6c, 0x5a, 0x8f, 0xf4, 0xd6, 0x6e, 0x7e, 0xe2, + 0xf9, 0xe4, 0x8d, 0x3c, 0xd9, 0x04, 0x5a, 0x60, 0x40, 0xf7, 0x1f, 0x83, + 0x1b, 0x39, 0xce, 0xa4, 0x90, 0xbe, 0x03, 0x5b, 0x76, 0xef, 0x80, 0xc7, + 0xf0, 0x55, 0x89, 0xf4, 0xde, 0x02, 0xc7, 0xb4, 0xfc, 0xb1, 0xba, 0x64, + 0xf3, 0x84, 0x13, 0x2d, 0x2b, 0x12, 0x45, 0x99, 0x25, 0x85, 0xc1, 0xd7, + 0xcc, 0x91, 0xab, 0x66, +}; +static const struct drbg_kat_pr_true kat3025_t = { + 9, kat3025_entropyin, kat3025_nonce, kat3025_persstr, + kat3025_entropyinpr1, kat3025_addinpr1, kat3025_entropyinpr2, + kat3025_addinpr2, kat3025_retbits +}; +static const struct drbg_kat kat3025 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3025_t +}; + +static const unsigned char kat3026_entropyin[] = { + 0x20, 0x1e, 0xac, 0x70, 0x17, 0x5e, 0x22, 0x6b, 0x29, 0x65, 0xd0, 0x64, + 0x65, 0x87, 0x99, 0x87, +}; +static const unsigned char kat3026_nonce[] = { + 0xa9, 0xd7, 0x90, 0x6e, 0xd8, 0x5f, 0x62, 0x0a, +}; +static const unsigned char kat3026_persstr[] = {0}; +static const unsigned char kat3026_entropyinpr1[] = { + 0xb5, 0x8c, 0xa8, 0x7d, 0x15, 0x7b, 0x8c, 0x2d, 0xc3, 0x95, 0xda, 0xd5, + 0x5f, 0x80, 0x5b, 0x2b, +}; +static const unsigned char kat3026_addinpr1[] = { + 0xab, 0x79, 0x61, 0xfd, 0x74, 0x2b, 0xba, 0x79, 0xfe, 0x58, 0xd7, 0x45, + 0x5c, 0xf8, 0x65, 0xad, +}; +static const unsigned char kat3026_entropyinpr2[] = { + 0x2e, 0xaa, 0x52, 0xd5, 0x56, 0x34, 0x29, 0xdc, 0x47, 0xf2, 0xd6, 0x97, + 0x04, 0x61, 0xa4, 0xf2, +}; +static const unsigned char kat3026_addinpr2[] = { + 0xd4, 0xfa, 0x5d, 0xca, 0x9e, 0xbd, 0xc6, 0x01, 0xb0, 0x90, 0x25, 0x28, + 0x56, 0x13, 0x39, 0xe0, +}; +static const unsigned char kat3026_retbits[] = { + 0x48, 0x02, 0xba, 0xba, 0xf4, 0x30, 0x54, 0x36, 0x3b, 0xe9, 0x30, 0xea, + 0x6d, 0x1e, 0x6f, 0x3d, 0xbe, 0x73, 0xe5, 0x20, 0xee, 0xc7, 0xc9, 0x70, + 0x7a, 0x01, 0x60, 0x99, 0xd1, 0x88, 0x1b, 0x1b, 0xf2, 0x8b, 0xaf, 0xaf, + 0xaa, 0xde, 0xb1, 0xdb, 0xc6, 0x86, 0x17, 0x73, 0x95, 0xb6, 0xb3, 0xcc, + 0x4f, 0xcc, 0x60, 0x5e, 0xdd, 0xec, 0x7d, 0x57, 0x18, 0x44, 0x07, 0x22, + 0x0b, 0xf5, 0xc8, 0x9c, +}; +static const struct drbg_kat_pr_true kat3026_t = { + 10, kat3026_entropyin, kat3026_nonce, kat3026_persstr, + kat3026_entropyinpr1, kat3026_addinpr1, kat3026_entropyinpr2, + kat3026_addinpr2, kat3026_retbits +}; +static const struct drbg_kat kat3026 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3026_t +}; + +static const unsigned char kat3027_entropyin[] = { + 0xdf, 0xc2, 0xe3, 0xb3, 0xb1, 0x4f, 0x3a, 0xaf, 0x15, 0x1b, 0x2f, 0x17, + 0x74, 0x9c, 0xfb, 0x5f, +}; +static const unsigned char kat3027_nonce[] = { + 0x0d, 0xd8, 0xea, 0xe1, 0x34, 0x4a, 0xcd, 0x0c, +}; +static const unsigned char kat3027_persstr[] = {0}; +static const unsigned char kat3027_entropyinpr1[] = { + 0xb2, 0xbd, 0x8b, 0xe7, 0xbf, 0xa0, 0xee, 0x9f, 0x32, 0x9a, 0xf5, 0x11, + 0xc8, 0xab, 0x63, 0x1c, +}; +static const unsigned char kat3027_addinpr1[] = { + 0xab, 0xa5, 0x5a, 0xf2, 0x66, 0xc8, 0xeb, 0x91, 0x53, 0xfc, 0xc1, 0x45, + 0xcc, 0x06, 0x9e, 0x6e, +}; +static const unsigned char kat3027_entropyinpr2[] = { + 0x42, 0xe2, 0xf3, 0x84, 0xfb, 0x5a, 0xc8, 0x67, 0xc6, 0x4d, 0x40, 0x37, + 0x5e, 0x96, 0x30, 0x9e, +}; +static const unsigned char kat3027_addinpr2[] = { + 0xd6, 0x2a, 0x2a, 0x87, 0xd5, 0xd5, 0x8a, 0x0f, 0x82, 0x24, 0x63, 0x2e, + 0x9a, 0x2d, 0x9d, 0xa0, +}; +static const unsigned char kat3027_retbits[] = { + 0xa5, 0xd6, 0x41, 0x31, 0xc4, 0x46, 0xbc, 0x39, 0xba, 0xeb, 0x01, 0x69, + 0xd7, 0xc2, 0x5d, 0x10, 0x73, 0x21, 0x24, 0x0e, 0x7e, 0x6a, 0xf0, 0xb4, + 0x05, 0xd8, 0xfc, 0xdb, 0x51, 0xb1, 0x31, 0x71, 0x95, 0x6c, 0xbd, 0x30, + 0x89, 0x8e, 0x55, 0x9b, 0x9c, 0x04, 0xe9, 0x04, 0x9d, 0x9f, 0x91, 0xc7, + 0x40, 0xbc, 0x65, 0xfd, 0xfc, 0xc6, 0xc1, 0xae, 0xde, 0x1c, 0x19, 0xbe, + 0x7c, 0x71, 0x4b, 0x2e, +}; +static const struct drbg_kat_pr_true kat3027_t = { + 11, kat3027_entropyin, kat3027_nonce, kat3027_persstr, + kat3027_entropyinpr1, kat3027_addinpr1, kat3027_entropyinpr2, + kat3027_addinpr2, kat3027_retbits +}; +static const struct drbg_kat kat3027 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3027_t +}; + +static const unsigned char kat3028_entropyin[] = { + 0x9d, 0x32, 0xa9, 0x36, 0x55, 0xad, 0x56, 0x50, 0x99, 0x4b, 0x23, 0x0f, + 0xb5, 0x9f, 0xf6, 0x42, +}; +static const unsigned char kat3028_nonce[] = { + 0xf7, 0x06, 0xa7, 0xde, 0x48, 0xc3, 0xee, 0xf0, +}; +static const unsigned char kat3028_persstr[] = {0}; +static const unsigned char kat3028_entropyinpr1[] = { + 0x1b, 0x2a, 0xdf, 0x4b, 0x38, 0x64, 0x32, 0xd6, 0x0a, 0xa7, 0xfb, 0x76, + 0x4b, 0x06, 0xdb, 0xa6, +}; +static const unsigned char kat3028_addinpr1[] = { + 0xfa, 0xf6, 0x38, 0x77, 0xf7, 0x47, 0xe7, 0x08, 0x0a, 0x2e, 0x71, 0x84, + 0x2b, 0x63, 0xf1, 0x04, +}; +static const unsigned char kat3028_entropyinpr2[] = { + 0xa6, 0xaf, 0xd3, 0x41, 0x7d, 0x2d, 0x04, 0xa5, 0x45, 0x4a, 0xa4, 0x85, + 0xd1, 0x5c, 0xe0, 0x19, +}; +static const unsigned char kat3028_addinpr2[] = { + 0x4e, 0x50, 0xbb, 0x0c, 0x18, 0xfb, 0xca, 0x49, 0x24, 0x82, 0xc1, 0xa7, + 0xa0, 0xb6, 0x60, 0x19, +}; +static const unsigned char kat3028_retbits[] = { + 0x26, 0x78, 0x47, 0x48, 0x4c, 0xf6, 0x88, 0x33, 0x47, 0xa4, 0x75, 0x25, + 0x7a, 0x62, 0x12, 0x67, 0xd9, 0x75, 0x93, 0x8d, 0x29, 0x2c, 0x35, 0xdd, + 0xe4, 0xa7, 0x8b, 0x56, 0x49, 0x02, 0x4d, 0xdf, 0xb5, 0xc7, 0x3a, 0x71, + 0x52, 0x3a, 0x4d, 0x9d, 0xeb, 0x66, 0xf2, 0xd8, 0x3f, 0xad, 0x2c, 0x2f, + 0x85, 0x8e, 0xd5, 0xab, 0x2e, 0x5f, 0xfa, 0xab, 0x6a, 0xa8, 0x73, 0x97, + 0x73, 0x8a, 0x4e, 0x66, +}; +static const struct drbg_kat_pr_true kat3028_t = { + 12, kat3028_entropyin, kat3028_nonce, kat3028_persstr, + kat3028_entropyinpr1, kat3028_addinpr1, kat3028_entropyinpr2, + kat3028_addinpr2, kat3028_retbits +}; +static const struct drbg_kat kat3028 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3028_t +}; + +static const unsigned char kat3029_entropyin[] = { + 0xcc, 0x17, 0xb2, 0x7a, 0xfb, 0x86, 0x98, 0x3a, 0x77, 0x5c, 0xa4, 0x2a, + 0x2f, 0x55, 0x82, 0xbe, +}; +static const unsigned char kat3029_nonce[] = { + 0x96, 0xb3, 0x19, 0x43, 0x66, 0xd7, 0x8c, 0xfd, +}; +static const unsigned char kat3029_persstr[] = {0}; +static const unsigned char kat3029_entropyinpr1[] = { + 0xa0, 0x68, 0x97, 0x9b, 0xe5, 0x1f, 0x41, 0xf5, 0xec, 0xf8, 0xb2, 0x98, + 0xcf, 0x50, 0x7c, 0xec, +}; +static const unsigned char kat3029_addinpr1[] = { + 0xf6, 0xc9, 0x4f, 0x8c, 0x76, 0xb4, 0xac, 0x64, 0x79, 0x07, 0x93, 0x32, + 0x25, 0x0d, 0x1a, 0x25, +}; +static const unsigned char kat3029_entropyinpr2[] = { + 0xfa, 0xcb, 0xf3, 0x90, 0xa4, 0xe5, 0x97, 0x66, 0x3e, 0xcb, 0x80, 0xd5, + 0xae, 0x05, 0x32, 0xc6, +}; +static const unsigned char kat3029_addinpr2[] = { + 0x16, 0xb6, 0x47, 0x03, 0xf8, 0x7f, 0xbb, 0xef, 0xba, 0x19, 0x81, 0xf4, + 0x73, 0xc4, 0x6c, 0xb0, +}; +static const unsigned char kat3029_retbits[] = { + 0xf7, 0xbe, 0xa9, 0x4f, 0x8e, 0xf3, 0x45, 0x67, 0xfc, 0x1e, 0x37, 0x29, + 0x91, 0xc4, 0xbc, 0xca, 0x00, 0x8c, 0x0c, 0x6e, 0x60, 0x7e, 0xed, 0xe9, + 0x15, 0xb0, 0xe6, 0x52, 0x53, 0xba, 0xf1, 0x87, 0x79, 0x7c, 0x80, 0x17, + 0xf6, 0xe6, 0x6f, 0xbb, 0x94, 0xc2, 0x65, 0xfb, 0x15, 0x42, 0xac, 0x91, + 0x9d, 0xe5, 0xa6, 0xd1, 0xa1, 0xd6, 0x4e, 0x13, 0x1b, 0xf2, 0x46, 0xc8, + 0x33, 0xf8, 0xab, 0x21, +}; +static const struct drbg_kat_pr_true kat3029_t = { + 13, kat3029_entropyin, kat3029_nonce, kat3029_persstr, + kat3029_entropyinpr1, kat3029_addinpr1, kat3029_entropyinpr2, + kat3029_addinpr2, kat3029_retbits +}; +static const struct drbg_kat kat3029 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3029_t +}; + +static const unsigned char kat3030_entropyin[] = { + 0x8f, 0x9f, 0x23, 0xe0, 0x5c, 0xf4, 0x1f, 0x23, 0x7f, 0xe8, 0x54, 0x2d, + 0x02, 0x4d, 0x8f, 0xea, +}; +static const unsigned char kat3030_nonce[] = { + 0xbf, 0x92, 0xdb, 0xde, 0x6c, 0xb6, 0x20, 0xda, +}; +static const unsigned char kat3030_persstr[] = {0}; +static const unsigned char kat3030_entropyinpr1[] = { + 0x1e, 0x4b, 0x4f, 0x23, 0x49, 0x04, 0x86, 0x8b, 0xb6, 0xa6, 0x36, 0xa5, + 0xca, 0x4f, 0xdd, 0x27, +}; +static const unsigned char kat3030_addinpr1[] = { + 0x2b, 0xd8, 0x95, 0xb6, 0xdc, 0x12, 0x24, 0x87, 0x6b, 0xe8, 0xca, 0x9e, + 0xfe, 0x77, 0x2e, 0xf3, +}; +static const unsigned char kat3030_entropyinpr2[] = { + 0xd4, 0xb1, 0xf7, 0x64, 0xe5, 0x48, 0x98, 0x59, 0x02, 0xc4, 0x76, 0xbf, + 0x83, 0x19, 0xc9, 0x35, +}; +static const unsigned char kat3030_addinpr2[] = { + 0xea, 0xb6, 0x2c, 0x59, 0xcf, 0x96, 0x60, 0x79, 0x0b, 0xf9, 0x32, 0xa8, + 0xfb, 0xb5, 0xcb, 0x63, +}; +static const unsigned char kat3030_retbits[] = { + 0x9d, 0xc3, 0x68, 0x0f, 0x2b, 0x1e, 0x78, 0xc0, 0x74, 0x5e, 0x29, 0xdd, + 0x72, 0xf4, 0x0e, 0x0f, 0x1e, 0xd1, 0xea, 0x4e, 0x2e, 0x09, 0x64, 0x9d, + 0xb1, 0x64, 0x03, 0xbe, 0x15, 0xe6, 0x2f, 0x58, 0xde, 0x1a, 0xa6, 0xe3, + 0x2b, 0xe5, 0x82, 0x7d, 0x34, 0x78, 0x49, 0x89, 0x5e, 0x70, 0x0c, 0x2a, + 0xb1, 0x6f, 0x4b, 0x4c, 0x0f, 0x2e, 0x85, 0xe6, 0xd1, 0xc0, 0xf3, 0xf6, + 0x1d, 0x12, 0xe1, 0x12, +}; +static const struct drbg_kat_pr_true kat3030_t = { + 14, kat3030_entropyin, kat3030_nonce, kat3030_persstr, + kat3030_entropyinpr1, kat3030_addinpr1, kat3030_entropyinpr2, + kat3030_addinpr2, kat3030_retbits +}; +static const struct drbg_kat kat3030 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3030_t +}; + +static const unsigned char kat3031_entropyin[] = { + 0xbe, 0x8e, 0x54, 0x45, 0x90, 0xea, 0xa4, 0x52, 0x17, 0xb0, 0x71, 0x1a, + 0x1c, 0x66, 0xaf, 0x8f, +}; +static const unsigned char kat3031_nonce[] = { + 0x1f, 0xd5, 0x42, 0xb1, 0xf3, 0x6b, 0x6f, 0xa3, +}; +static const unsigned char kat3031_persstr[] = { + 0x78, 0x4e, 0x78, 0x54, 0x28, 0x5c, 0x86, 0xa8, 0xff, 0x26, 0x65, 0xfd, + 0x2d, 0xc0, 0x71, 0x20, +}; +static const unsigned char kat3031_entropyinpr1[] = { + 0xc6, 0xf1, 0x00, 0x5e, 0xea, 0x05, 0x93, 0x45, 0xec, 0xdb, 0xe4, 0x09, + 0x92, 0xaa, 0x07, 0xd7, +}; +static const unsigned char kat3031_addinpr1[] = {0}; +static const unsigned char kat3031_entropyinpr2[] = { + 0xd2, 0xf1, 0x49, 0x5c, 0xf0, 0x03, 0xfa, 0x79, 0xac, 0xc3, 0xc6, 0xfc, + 0xac, 0x45, 0xf6, 0x1e, +}; +static const unsigned char kat3031_addinpr2[] = {0}; +static const unsigned char kat3031_retbits[] = { + 0xd6, 0x16, 0x60, 0xe2, 0x45, 0x71, 0x18, 0x2e, 0x4e, 0x8c, 0x03, 0x88, + 0xbd, 0xc1, 0x85, 0x6d, 0x97, 0x11, 0xc4, 0x8b, 0xad, 0x23, 0x56, 0xa7, + 0x51, 0x02, 0x60, 0xa3, 0xd9, 0x06, 0x02, 0xf9, 0x87, 0x57, 0xe0, 0xb9, + 0xb9, 0x2b, 0x03, 0x5b, 0x47, 0xf5, 0x33, 0x16, 0x2e, 0xd9, 0xc4, 0x78, + 0x05, 0x99, 0x0b, 0x29, 0xdc, 0x9d, 0xa1, 0x38, 0x30, 0xb1, 0x59, 0x24, + 0x6e, 0x7a, 0xf5, 0x7e, +}; +static const struct drbg_kat_pr_true kat3031_t = { + 0, kat3031_entropyin, kat3031_nonce, kat3031_persstr, + kat3031_entropyinpr1, kat3031_addinpr1, kat3031_entropyinpr2, + kat3031_addinpr2, kat3031_retbits +}; +static const struct drbg_kat kat3031 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3031_t +}; + +static const unsigned char kat3032_entropyin[] = { + 0xe0, 0x01, 0xdb, 0xb1, 0xde, 0x3e, 0x78, 0x77, 0xd9, 0x1e, 0x97, 0x21, + 0x53, 0x4a, 0x59, 0x57, +}; +static const unsigned char kat3032_nonce[] = { + 0xbd, 0xb8, 0x61, 0x6c, 0xa2, 0x96, 0x50, 0x7f, +}; +static const unsigned char kat3032_persstr[] = { + 0x2a, 0xfc, 0xb4, 0xa7, 0x2f, 0xbe, 0x43, 0xb8, 0xa3, 0x53, 0xb7, 0x12, + 0x38, 0xb2, 0x19, 0x23, +}; +static const unsigned char kat3032_entropyinpr1[] = { + 0x37, 0xc3, 0xb5, 0x17, 0xe2, 0x4f, 0x85, 0xaf, 0x2b, 0x89, 0x20, 0xbb, + 0x7f, 0xba, 0x59, 0x7a, +}; +static const unsigned char kat3032_addinpr1[] = {0}; +static const unsigned char kat3032_entropyinpr2[] = { + 0x24, 0xa5, 0xfe, 0x5b, 0x5e, 0xa0, 0x1c, 0xc0, 0x05, 0x85, 0xfa, 0x2c, + 0x76, 0xa3, 0x59, 0xb7, +}; +static const unsigned char kat3032_addinpr2[] = {0}; +static const unsigned char kat3032_retbits[] = { + 0x44, 0x86, 0xad, 0xe7, 0xb5, 0x39, 0xef, 0x6c, 0x45, 0x9c, 0x8e, 0x26, + 0xcf, 0x84, 0xd9, 0x7c, 0xe6, 0x4c, 0x1a, 0xf2, 0xd1, 0x45, 0x70, 0x69, + 0x8e, 0x54, 0xfe, 0xab, 0x99, 0x9e, 0x0a, 0xf1, 0x53, 0x3b, 0x73, 0xe7, + 0x7f, 0x69, 0xfc, 0x55, 0xaf, 0xb7, 0x26, 0xfe, 0xd0, 0x01, 0xdf, 0xaa, + 0x36, 0xad, 0xd4, 0x7a, 0xa8, 0x72, 0x4f, 0xd3, 0x31, 0x66, 0x76, 0xe7, + 0x53, 0x1f, 0x52, 0x64, +}; +static const struct drbg_kat_pr_true kat3032_t = { + 1, kat3032_entropyin, kat3032_nonce, kat3032_persstr, + kat3032_entropyinpr1, kat3032_addinpr1, kat3032_entropyinpr2, + kat3032_addinpr2, kat3032_retbits +}; +static const struct drbg_kat kat3032 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3032_t +}; + +static const unsigned char kat3033_entropyin[] = { + 0xec, 0x90, 0xeb, 0xdb, 0xa5, 0x84, 0xdd, 0x53, 0x30, 0xf5, 0xca, 0x15, + 0xd8, 0x2a, 0x7c, 0xc1, +}; +static const unsigned char kat3033_nonce[] = { + 0x70, 0xc6, 0x00, 0xd5, 0xe1, 0xa2, 0xf7, 0xe5, +}; +static const unsigned char kat3033_persstr[] = { + 0xac, 0x25, 0xfe, 0xf9, 0x23, 0x1e, 0x94, 0x80, 0x24, 0x53, 0x58, 0xc4, + 0x08, 0xfa, 0xe6, 0xde, +}; +static const unsigned char kat3033_entropyinpr1[] = { + 0x21, 0x18, 0xfa, 0xdf, 0xad, 0x20, 0x64, 0x2c, 0x42, 0x51, 0x6b, 0x36, + 0xc5, 0xee, 0x0e, 0xb3, +}; +static const unsigned char kat3033_addinpr1[] = {0}; +static const unsigned char kat3033_entropyinpr2[] = { + 0x0b, 0xee, 0x2a, 0xf7, 0x97, 0xc9, 0xfc, 0x61, 0xdc, 0x40, 0xbe, 0x9e, + 0xba, 0x2c, 0xee, 0xff, +}; +static const unsigned char kat3033_addinpr2[] = {0}; +static const unsigned char kat3033_retbits[] = { + 0x94, 0x65, 0xbd, 0xc7, 0x66, 0xa8, 0x04, 0xee, 0x55, 0x1b, 0x74, 0xad, + 0x5a, 0xf0, 0xac, 0x19, 0xc4, 0x84, 0x28, 0x98, 0x46, 0x54, 0xeb, 0xa9, + 0xd7, 0xec, 0xd8, 0xb4, 0x3d, 0x71, 0x64, 0x70, 0xa8, 0x56, 0x84, 0x67, + 0xf3, 0x62, 0x14, 0x01, 0x0b, 0x67, 0x6b, 0x1a, 0xb3, 0xd8, 0x81, 0x87, + 0x34, 0xe0, 0xdd, 0xe2, 0x6d, 0x57, 0x0f, 0x5a, 0x88, 0x56, 0x20, 0x4e, + 0x74, 0x4d, 0x71, 0x67, +}; +static const struct drbg_kat_pr_true kat3033_t = { + 2, kat3033_entropyin, kat3033_nonce, kat3033_persstr, + kat3033_entropyinpr1, kat3033_addinpr1, kat3033_entropyinpr2, + kat3033_addinpr2, kat3033_retbits +}; +static const struct drbg_kat kat3033 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3033_t +}; + +static const unsigned char kat3034_entropyin[] = { + 0x70, 0xd5, 0x75, 0x87, 0x1d, 0x6d, 0x38, 0xf5, 0x61, 0xd3, 0xe0, 0xd6, + 0xbb, 0x45, 0x0b, 0x41, +}; +static const unsigned char kat3034_nonce[] = { + 0x10, 0x73, 0xee, 0x1a, 0x8f, 0x25, 0x58, 0x74, +}; +static const unsigned char kat3034_persstr[] = { + 0x5b, 0x71, 0x01, 0x59, 0x02, 0x39, 0x65, 0x36, 0xa9, 0x0b, 0x1f, 0x9f, + 0x86, 0xf6, 0xef, 0x4a, +}; +static const unsigned char kat3034_entropyinpr1[] = { + 0x8d, 0xf6, 0x64, 0x21, 0x44, 0xf0, 0xaa, 0xb4, 0xd6, 0x2e, 0x86, 0x3a, + 0x60, 0xd0, 0xec, 0x57, +}; +static const unsigned char kat3034_addinpr1[] = {0}; +static const unsigned char kat3034_entropyinpr2[] = { + 0x81, 0x9b, 0xfb, 0x6d, 0xa4, 0x2f, 0xfe, 0x7d, 0xc1, 0x8a, 0x23, 0x18, + 0x97, 0xdf, 0xed, 0x1d, +}; +static const unsigned char kat3034_addinpr2[] = {0}; +static const unsigned char kat3034_retbits[] = { + 0xfe, 0xed, 0x5a, 0xd2, 0x51, 0x77, 0xd2, 0x9f, 0x2d, 0x67, 0x0f, 0xb2, + 0x5f, 0x21, 0x50, 0x85, 0xa0, 0x59, 0x6d, 0xa9, 0x3c, 0xc9, 0x0f, 0x65, + 0x42, 0xff, 0x14, 0xe3, 0xbb, 0xf8, 0xbb, 0xc5, 0x14, 0xe6, 0x18, 0x47, + 0xc6, 0xce, 0xda, 0x1b, 0xb4, 0xf1, 0x52, 0x4e, 0x59, 0xcb, 0x6e, 0x7e, + 0x81, 0xd9, 0x79, 0x16, 0xa8, 0xe6, 0xc0, 0x00, 0xa7, 0x1e, 0xc1, 0xf2, + 0xc4, 0x5c, 0x8c, 0xb2, +}; +static const struct drbg_kat_pr_true kat3034_t = { + 3, kat3034_entropyin, kat3034_nonce, kat3034_persstr, + kat3034_entropyinpr1, kat3034_addinpr1, kat3034_entropyinpr2, + kat3034_addinpr2, kat3034_retbits +}; +static const struct drbg_kat kat3034 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3034_t +}; + +static const unsigned char kat3035_entropyin[] = { + 0x17, 0x8b, 0xb5, 0xd9, 0xf4, 0xba, 0x49, 0xd7, 0xdf, 0xed, 0x71, 0xce, + 0xe1, 0x04, 0xec, 0x47, +}; +static const unsigned char kat3035_nonce[] = { + 0xa3, 0xf5, 0xa9, 0xa3, 0x49, 0xea, 0xf2, 0x6a, +}; +static const unsigned char kat3035_persstr[] = { + 0xb2, 0xf6, 0x00, 0xe9, 0x5d, 0x10, 0xc6, 0xf0, 0x1b, 0x41, 0xb9, 0x93, + 0x35, 0xa1, 0x1e, 0x29, +}; +static const unsigned char kat3035_entropyinpr1[] = { + 0xfc, 0x4d, 0xd0, 0x35, 0xe1, 0xfe, 0xfb, 0x4d, 0xb5, 0x5b, 0x21, 0x34, + 0x3f, 0x7e, 0xe4, 0x72, +}; +static const unsigned char kat3035_addinpr1[] = {0}; +static const unsigned char kat3035_entropyinpr2[] = { + 0x5a, 0x0c, 0x9b, 0xd0, 0x20, 0x1c, 0xfc, 0x9a, 0x98, 0x3c, 0x01, 0xbb, + 0x96, 0x2d, 0xe7, 0x73, +}; +static const unsigned char kat3035_addinpr2[] = {0}; +static const unsigned char kat3035_retbits[] = { + 0x30, 0x50, 0x3e, 0x23, 0x18, 0xb1, 0xc6, 0x71, 0x23, 0x80, 0x2c, 0xc5, + 0x30, 0x2d, 0xf8, 0xd5, 0xdd, 0x5f, 0x09, 0x7c, 0x80, 0x44, 0x86, 0x07, + 0x05, 0x9b, 0x15, 0xbe, 0xde, 0x38, 0xfe, 0x5f, 0xc4, 0x49, 0xb7, 0x43, + 0xbe, 0xd2, 0x22, 0x92, 0x62, 0x20, 0xfd, 0x74, 0x70, 0xd4, 0xc6, 0x22, + 0x3a, 0x22, 0x42, 0xac, 0x4c, 0x60, 0x3b, 0x9c, 0xcc, 0xa8, 0x00, 0xa7, + 0x25, 0x37, 0xb0, 0xfa, +}; +static const struct drbg_kat_pr_true kat3035_t = { + 4, kat3035_entropyin, kat3035_nonce, kat3035_persstr, + kat3035_entropyinpr1, kat3035_addinpr1, kat3035_entropyinpr2, + kat3035_addinpr2, kat3035_retbits +}; +static const struct drbg_kat kat3035 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3035_t +}; + +static const unsigned char kat3036_entropyin[] = { + 0x8c, 0xfb, 0xce, 0xfe, 0xb6, 0x6e, 0x2b, 0x1f, 0x36, 0xa0, 0xb7, 0xe9, + 0x0a, 0xe5, 0x56, 0x10, +}; +static const unsigned char kat3036_nonce[] = { + 0xd0, 0x0b, 0xa4, 0x06, 0x5b, 0xe0, 0xb6, 0x0d, +}; +static const unsigned char kat3036_persstr[] = { + 0x64, 0x5d, 0x21, 0x21, 0xdc, 0xf0, 0xfe, 0x6d, 0xa8, 0x7a, 0xf3, 0xb0, + 0xbc, 0x8b, 0xba, 0x2a, +}; +static const unsigned char kat3036_entropyinpr1[] = { + 0xac, 0x39, 0xdc, 0x73, 0xed, 0x83, 0x51, 0x63, 0x19, 0xce, 0xa2, 0x1d, + 0xd2, 0xc2, 0xb3, 0xf9, +}; +static const unsigned char kat3036_addinpr1[] = {0}; +static const unsigned char kat3036_entropyinpr2[] = { + 0xa2, 0x12, 0x50, 0x4a, 0x89, 0xb7, 0x59, 0xfd, 0x17, 0xe6, 0x46, 0xa4, + 0x43, 0x0b, 0x8d, 0xb7, +}; +static const unsigned char kat3036_addinpr2[] = {0}; +static const unsigned char kat3036_retbits[] = { + 0x11, 0x77, 0x85, 0xb3, 0x83, 0x3d, 0x41, 0x8c, 0x82, 0xd4, 0xbd, 0x82, + 0x1b, 0xf9, 0xb6, 0xab, 0xd8, 0xa4, 0x24, 0x35, 0xf6, 0xbd, 0x4a, 0x04, + 0xfc, 0x2d, 0x2c, 0x25, 0x0a, 0xae, 0xd5, 0x04, 0x1b, 0x74, 0xd5, 0xbf, + 0xd3, 0x98, 0x09, 0x7f, 0x81, 0x83, 0x7b, 0x9a, 0x10, 0xc7, 0xae, 0x5b, + 0xa7, 0x93, 0x6a, 0x9c, 0xeb, 0xad, 0x31, 0xe2, 0xe0, 0xac, 0x4d, 0xfc, + 0x3f, 0x35, 0x1b, 0xfc, +}; +static const struct drbg_kat_pr_true kat3036_t = { + 5, kat3036_entropyin, kat3036_nonce, kat3036_persstr, + kat3036_entropyinpr1, kat3036_addinpr1, kat3036_entropyinpr2, + kat3036_addinpr2, kat3036_retbits +}; +static const struct drbg_kat kat3036 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3036_t +}; + +static const unsigned char kat3037_entropyin[] = { + 0xe1, 0x84, 0xdb, 0x5a, 0x90, 0xa0, 0x6b, 0x62, 0xd3, 0xad, 0xa7, 0x6b, + 0xf1, 0x22, 0x9c, 0xaf, +}; +static const unsigned char kat3037_nonce[] = { + 0xcd, 0xc7, 0x1c, 0x1b, 0x05, 0x3e, 0xe2, 0x9b, +}; +static const unsigned char kat3037_persstr[] = { + 0xa6, 0x6b, 0xd4, 0x57, 0x45, 0x4d, 0x34, 0x08, 0x7c, 0x10, 0x69, 0x18, + 0x8c, 0x91, 0xc8, 0xb4, +}; +static const unsigned char kat3037_entropyinpr1[] = { + 0x94, 0x13, 0x7a, 0x4a, 0xe0, 0x4f, 0x44, 0x70, 0xd9, 0x41, 0xd9, 0xe6, + 0x3e, 0x4c, 0xe8, 0xca, +}; +static const unsigned char kat3037_addinpr1[] = {0}; +static const unsigned char kat3037_entropyinpr2[] = { + 0x48, 0x35, 0x63, 0xbd, 0x70, 0x4a, 0xa7, 0xa1, 0x4c, 0xc1, 0x1e, 0x04, + 0xd0, 0x2f, 0xac, 0x3a, +}; +static const unsigned char kat3037_addinpr2[] = {0}; +static const unsigned char kat3037_retbits[] = { + 0xec, 0x2c, 0x75, 0x83, 0x0a, 0x9a, 0x09, 0x7c, 0x67, 0x31, 0x61, 0x3b, + 0x98, 0x9e, 0x36, 0xe5, 0x16, 0x00, 0xae, 0x1a, 0xc8, 0x44, 0x74, 0x09, + 0x87, 0x50, 0x48, 0x00, 0x23, 0x16, 0x54, 0xbf, 0x79, 0x3b, 0x8a, 0x25, + 0xc7, 0xec, 0x69, 0xae, 0x36, 0xf1, 0x19, 0xeb, 0xd7, 0xb5, 0x9c, 0xcc, + 0x84, 0xc0, 0xeb, 0x55, 0x65, 0x18, 0x4a, 0xbe, 0x83, 0x31, 0xca, 0x11, + 0xe4, 0x3f, 0x63, 0x8a, +}; +static const struct drbg_kat_pr_true kat3037_t = { + 6, kat3037_entropyin, kat3037_nonce, kat3037_persstr, + kat3037_entropyinpr1, kat3037_addinpr1, kat3037_entropyinpr2, + kat3037_addinpr2, kat3037_retbits +}; +static const struct drbg_kat kat3037 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3037_t +}; + +static const unsigned char kat3038_entropyin[] = { + 0x22, 0xc5, 0xc4, 0x89, 0x36, 0xce, 0xbb, 0xcf, 0xe0, 0x18, 0x4f, 0xa1, + 0x7a, 0x93, 0x0c, 0x0e, +}; +static const unsigned char kat3038_nonce[] = { + 0xc3, 0xf1, 0x78, 0x4b, 0x31, 0x77, 0xf6, 0xac, +}; +static const unsigned char kat3038_persstr[] = { + 0x47, 0x18, 0x87, 0xff, 0xed, 0xf5, 0xe8, 0xc7, 0x1a, 0x40, 0x7d, 0x8c, + 0x8c, 0xff, 0x7f, 0xd5, +}; +static const unsigned char kat3038_entropyinpr1[] = { + 0x2b, 0x23, 0x6d, 0x1a, 0xb6, 0x8f, 0xb5, 0x97, 0xa7, 0xa5, 0x89, 0x97, + 0x98, 0x91, 0x94, 0x94, +}; +static const unsigned char kat3038_addinpr1[] = {0}; +static const unsigned char kat3038_entropyinpr2[] = { + 0xab, 0xd5, 0x61, 0x5b, 0x4e, 0x56, 0x58, 0xa3, 0xa6, 0x42, 0xbc, 0x90, + 0xc7, 0x53, 0x55, 0xc6, +}; +static const unsigned char kat3038_addinpr2[] = {0}; +static const unsigned char kat3038_retbits[] = { + 0x73, 0x03, 0xeb, 0xb9, 0xd0, 0xad, 0x52, 0x05, 0xa6, 0x3e, 0x0a, 0xf4, + 0x82, 0xaa, 0x10, 0x78, 0xc7, 0x43, 0xae, 0x4a, 0x99, 0xe5, 0x6f, 0xd9, + 0x0d, 0x6d, 0xb4, 0xd8, 0xf5, 0x8e, 0xbc, 0xd2, 0x95, 0x08, 0x4f, 0xcc, + 0x15, 0x96, 0x61, 0xa0, 0xbd, 0x71, 0x88, 0xcd, 0x0c, 0x7d, 0x96, 0xf9, + 0xfb, 0x76, 0x86, 0x21, 0xfa, 0x87, 0xe5, 0xfb, 0x3d, 0xa3, 0x9f, 0xc0, + 0x97, 0x6a, 0x2e, 0x0b, +}; +static const struct drbg_kat_pr_true kat3038_t = { + 7, kat3038_entropyin, kat3038_nonce, kat3038_persstr, + kat3038_entropyinpr1, kat3038_addinpr1, kat3038_entropyinpr2, + kat3038_addinpr2, kat3038_retbits +}; +static const struct drbg_kat kat3038 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3038_t +}; + +static const unsigned char kat3039_entropyin[] = { + 0x28, 0xaf, 0x30, 0x57, 0xc2, 0xe2, 0x01, 0xb6, 0x31, 0x85, 0x28, 0x7d, + 0x2a, 0x0f, 0x45, 0xb8, +}; +static const unsigned char kat3039_nonce[] = { + 0x43, 0x93, 0x3b, 0x8f, 0x98, 0x66, 0x7b, 0xdb, +}; +static const unsigned char kat3039_persstr[] = { + 0x39, 0x94, 0x57, 0xf9, 0x24, 0xf0, 0x99, 0x7f, 0xbb, 0xe5, 0x22, 0x1e, + 0xb3, 0x98, 0x30, 0xfd, +}; +static const unsigned char kat3039_entropyinpr1[] = { + 0x13, 0x21, 0xab, 0xfb, 0xb1, 0x12, 0xbd, 0xfb, 0xda, 0x02, 0xad, 0xc4, + 0x76, 0x28, 0xc6, 0xfc, +}; +static const unsigned char kat3039_addinpr1[] = {0}; +static const unsigned char kat3039_entropyinpr2[] = { + 0xe4, 0xac, 0xef, 0x97, 0xc8, 0xef, 0x8f, 0xa4, 0xdc, 0x05, 0x10, 0x20, + 0xeb, 0xde, 0x8c, 0x30, +}; +static const unsigned char kat3039_addinpr2[] = {0}; +static const unsigned char kat3039_retbits[] = { + 0x81, 0x73, 0xf6, 0x81, 0x26, 0x2e, 0x67, 0xe0, 0xf0, 0xa5, 0x51, 0xdf, + 0xee, 0x63, 0x9f, 0x0f, 0xf3, 0x35, 0xd3, 0x3f, 0x70, 0x24, 0x32, 0xc9, + 0x89, 0xf4, 0x52, 0x27, 0x7d, 0x1b, 0x47, 0xc8, 0xf8, 0xcb, 0xf0, 0x51, + 0x73, 0x55, 0xa2, 0x40, 0x73, 0x9c, 0xbd, 0xea, 0x20, 0x05, 0xf8, 0xeb, + 0x11, 0x96, 0xf1, 0x05, 0x12, 0xd7, 0xd2, 0x91, 0x60, 0x11, 0xd3, 0xad, + 0x52, 0x7b, 0x5c, 0xab, +}; +static const struct drbg_kat_pr_true kat3039_t = { + 8, kat3039_entropyin, kat3039_nonce, kat3039_persstr, + kat3039_entropyinpr1, kat3039_addinpr1, kat3039_entropyinpr2, + kat3039_addinpr2, kat3039_retbits +}; +static const struct drbg_kat kat3039 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3039_t +}; + +static const unsigned char kat3040_entropyin[] = { + 0x18, 0xd0, 0x9a, 0xda, 0xb3, 0xf0, 0x1a, 0x50, 0xfc, 0x83, 0x4e, 0xbf, + 0x07, 0x42, 0xbc, 0xc3, +}; +static const unsigned char kat3040_nonce[] = { + 0x8a, 0x98, 0xd7, 0xc7, 0xc2, 0x4b, 0x70, 0xde, +}; +static const unsigned char kat3040_persstr[] = { + 0xa2, 0x6f, 0x4d, 0x07, 0x8b, 0xcf, 0x3b, 0xd2, 0xb2, 0x7e, 0xc9, 0xb2, + 0x7c, 0x8b, 0xda, 0x82, +}; +static const unsigned char kat3040_entropyinpr1[] = { + 0x60, 0x10, 0x00, 0x3a, 0x62, 0x2d, 0xd4, 0x07, 0x51, 0x68, 0x8c, 0xad, + 0xb7, 0xdd, 0xfb, 0x3b, +}; +static const unsigned char kat3040_addinpr1[] = {0}; +static const unsigned char kat3040_entropyinpr2[] = { + 0x71, 0xc2, 0x06, 0x8c, 0x51, 0xa2, 0xe7, 0x5d, 0xcb, 0x16, 0xba, 0x87, + 0x13, 0xe1, 0x9d, 0xcc, +}; +static const unsigned char kat3040_addinpr2[] = {0}; +static const unsigned char kat3040_retbits[] = { + 0x7e, 0x01, 0x5c, 0xc3, 0xc1, 0x51, 0xe9, 0xa3, 0xb2, 0xfc, 0x3a, 0xcf, + 0x40, 0xe6, 0xbd, 0x5d, 0xca, 0x1c, 0xfa, 0xe3, 0xf0, 0xf5, 0x82, 0x5c, + 0xc8, 0x66, 0xb0, 0x52, 0x45, 0x7e, 0x6e, 0x63, 0xcc, 0x10, 0x95, 0x98, + 0x6e, 0xc8, 0xfe, 0x69, 0x8a, 0x11, 0x93, 0x63, 0x0f, 0xe6, 0xba, 0x3e, + 0x4e, 0x84, 0x06, 0xdf, 0x0e, 0x27, 0x4c, 0xc6, 0x99, 0x4e, 0x1c, 0xf9, + 0xc0, 0x3f, 0xbe, 0x1f, +}; +static const struct drbg_kat_pr_true kat3040_t = { + 9, kat3040_entropyin, kat3040_nonce, kat3040_persstr, + kat3040_entropyinpr1, kat3040_addinpr1, kat3040_entropyinpr2, + kat3040_addinpr2, kat3040_retbits +}; +static const struct drbg_kat kat3040 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3040_t +}; + +static const unsigned char kat3041_entropyin[] = { + 0xf5, 0x10, 0xcc, 0xda, 0xb1, 0x72, 0x42, 0xbe, 0xcc, 0x65, 0xb7, 0x76, + 0x75, 0x0e, 0xed, 0xfa, +}; +static const unsigned char kat3041_nonce[] = { + 0x45, 0x05, 0xb3, 0x38, 0x8c, 0xb0, 0x31, 0x78, +}; +static const unsigned char kat3041_persstr[] = { + 0xb6, 0x10, 0x86, 0x91, 0xaf, 0x07, 0x3f, 0xf4, 0xb5, 0xbc, 0x52, 0x2e, + 0x4c, 0x5f, 0x72, 0xf4, +}; +static const unsigned char kat3041_entropyinpr1[] = { + 0x40, 0x85, 0x4b, 0x6d, 0x7a, 0x74, 0xd1, 0xe7, 0xc5, 0x9c, 0xf6, 0x2e, + 0x88, 0x26, 0x3c, 0x6a, +}; +static const unsigned char kat3041_addinpr1[] = {0}; +static const unsigned char kat3041_entropyinpr2[] = { + 0x9c, 0xbf, 0xd2, 0x51, 0x70, 0x72, 0x4d, 0xed, 0xc0, 0x34, 0x9a, 0xac, + 0x03, 0x62, 0x84, 0xcc, +}; +static const unsigned char kat3041_addinpr2[] = {0}; +static const unsigned char kat3041_retbits[] = { + 0xfe, 0x77, 0xc9, 0x42, 0xe7, 0x1a, 0xc3, 0xe9, 0x24, 0xf5, 0xe5, 0xf2, + 0x0e, 0xbc, 0x66, 0x94, 0x1c, 0x79, 0x3f, 0x02, 0x18, 0x2a, 0x41, 0xeb, + 0x25, 0xf2, 0x8e, 0xeb, 0xe9, 0x99, 0xf6, 0xaf, 0x25, 0x29, 0x15, 0xe1, + 0x60, 0x5f, 0xd5, 0x9d, 0x82, 0x9e, 0x76, 0x9b, 0x78, 0xd6, 0x13, 0x7d, + 0xe2, 0x5d, 0x77, 0x7d, 0x48, 0xd1, 0xb6, 0x66, 0x90, 0x41, 0xdb, 0xe4, + 0x06, 0xc2, 0xfd, 0x4e, +}; +static const struct drbg_kat_pr_true kat3041_t = { + 10, kat3041_entropyin, kat3041_nonce, kat3041_persstr, + kat3041_entropyinpr1, kat3041_addinpr1, kat3041_entropyinpr2, + kat3041_addinpr2, kat3041_retbits +}; +static const struct drbg_kat kat3041 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3041_t +}; + +static const unsigned char kat3042_entropyin[] = { + 0x1b, 0x4b, 0xc2, 0xac, 0x12, 0x39, 0x16, 0xbf, 0xbb, 0xb8, 0x7a, 0x50, + 0x14, 0x3a, 0x10, 0x4e, +}; +static const unsigned char kat3042_nonce[] = { + 0xb8, 0xef, 0x32, 0xcb, 0x3d, 0x4d, 0x3a, 0xaa, +}; +static const unsigned char kat3042_persstr[] = { + 0x7c, 0xa4, 0x61, 0xab, 0xd1, 0x53, 0xce, 0x27, 0x53, 0x7a, 0x9a, 0x81, + 0xcc, 0x9a, 0xac, 0x4d, +}; +static const unsigned char kat3042_entropyinpr1[] = { + 0x68, 0x7d, 0x7d, 0x7e, 0xe0, 0x22, 0x27, 0x00, 0xaf, 0xb1, 0xe0, 0x5b, + 0xcc, 0xb0, 0x8b, 0x2e, +}; +static const unsigned char kat3042_addinpr1[] = {0}; +static const unsigned char kat3042_entropyinpr2[] = { + 0x3b, 0xe0, 0x09, 0x0c, 0xba, 0x74, 0xa0, 0x7d, 0xb6, 0xcd, 0x49, 0x45, + 0x0d, 0x6f, 0x84, 0x8c, +}; +static const unsigned char kat3042_addinpr2[] = {0}; +static const unsigned char kat3042_retbits[] = { + 0x25, 0xd6, 0x24, 0xe1, 0xaa, 0x14, 0xbc, 0x00, 0x06, 0x93, 0xb2, 0x5f, + 0x7d, 0x6d, 0x15, 0x3c, 0xa5, 0x83, 0x33, 0x79, 0x5c, 0x40, 0xc4, 0xfd, + 0x2e, 0x60, 0x9a, 0xa1, 0x12, 0x1c, 0xd6, 0xb6, 0xee, 0xd2, 0x65, 0xcb, + 0x2c, 0x6c, 0x15, 0x49, 0x83, 0xfa, 0x79, 0xe8, 0x8f, 0xf6, 0x2e, 0xb4, + 0x64, 0x67, 0x17, 0x9c, 0x33, 0xff, 0x8c, 0x3d, 0xbe, 0xc1, 0xa4, 0x0d, + 0x30, 0xac, 0x50, 0xdc, +}; +static const struct drbg_kat_pr_true kat3042_t = { + 11, kat3042_entropyin, kat3042_nonce, kat3042_persstr, + kat3042_entropyinpr1, kat3042_addinpr1, kat3042_entropyinpr2, + kat3042_addinpr2, kat3042_retbits +}; +static const struct drbg_kat kat3042 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3042_t +}; + +static const unsigned char kat3043_entropyin[] = { + 0x3c, 0x8b, 0xa8, 0x2a, 0x16, 0x3a, 0xd8, 0x5a, 0x99, 0x5e, 0xdb, 0x69, + 0xd2, 0xce, 0x89, 0x92, +}; +static const unsigned char kat3043_nonce[] = { + 0xeb, 0x06, 0xb6, 0xba, 0xe0, 0x03, 0xf1, 0x97, +}; +static const unsigned char kat3043_persstr[] = { + 0x83, 0xea, 0xf9, 0x31, 0x28, 0x36, 0x52, 0x1d, 0x4d, 0xd4, 0x23, 0x6e, + 0x24, 0xfc, 0xe8, 0x80, +}; +static const unsigned char kat3043_entropyinpr1[] = { + 0x6f, 0x71, 0xe8, 0x03, 0x12, 0x69, 0xe6, 0x5f, 0x0c, 0x31, 0x61, 0x09, + 0xd3, 0x18, 0x02, 0x19, +}; +static const unsigned char kat3043_addinpr1[] = {0}; +static const unsigned char kat3043_entropyinpr2[] = { + 0x9b, 0x2c, 0xf7, 0x84, 0xc3, 0xb3, 0xb1, 0xe3, 0xf1, 0xe6, 0xa8, 0x3f, + 0x6e, 0x83, 0x5f, 0x6e, +}; +static const unsigned char kat3043_addinpr2[] = {0}; +static const unsigned char kat3043_retbits[] = { + 0x51, 0xe8, 0xe5, 0x69, 0x63, 0x42, 0x19, 0x3b, 0xc9, 0xad, 0x70, 0xde, + 0xd9, 0xb9, 0x5d, 0x53, 0x25, 0x91, 0xac, 0xa8, 0x3a, 0x6a, 0x0c, 0xe9, + 0x94, 0x36, 0x10, 0x8c, 0x23, 0x1d, 0xa8, 0xab, 0x83, 0x4e, 0x4d, 0x47, + 0x70, 0xfd, 0x5a, 0xdb, 0x08, 0x32, 0x9d, 0x6a, 0x6a, 0xeb, 0x82, 0x04, + 0x4e, 0x54, 0x06, 0x54, 0x76, 0xc5, 0x18, 0x45, 0xf5, 0xc8, 0xbe, 0x3f, + 0x0a, 0xa1, 0x62, 0x93, +}; +static const struct drbg_kat_pr_true kat3043_t = { + 12, kat3043_entropyin, kat3043_nonce, kat3043_persstr, + kat3043_entropyinpr1, kat3043_addinpr1, kat3043_entropyinpr2, + kat3043_addinpr2, kat3043_retbits +}; +static const struct drbg_kat kat3043 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3043_t +}; + +static const unsigned char kat3044_entropyin[] = { + 0xa2, 0x1d, 0x14, 0x74, 0xc5, 0xec, 0x0a, 0xaa, 0x04, 0x29, 0x29, 0xf9, + 0x31, 0xca, 0xd9, 0x67, +}; +static const unsigned char kat3044_nonce[] = { + 0x52, 0xee, 0x53, 0xf4, 0x0a, 0xb7, 0xe5, 0xa8, +}; +static const unsigned char kat3044_persstr[] = { + 0xd7, 0x23, 0x4c, 0x43, 0x39, 0x65, 0x1e, 0x7b, 0x6b, 0x4b, 0xfa, 0xc6, + 0x47, 0x2e, 0x7c, 0x25, +}; +static const unsigned char kat3044_entropyinpr1[] = { + 0xa3, 0x1b, 0x96, 0xf7, 0x84, 0xa5, 0xe2, 0x24, 0xdb, 0xd5, 0x7b, 0x35, + 0xff, 0x14, 0xda, 0x22, +}; +static const unsigned char kat3044_addinpr1[] = {0}; +static const unsigned char kat3044_entropyinpr2[] = { + 0x2c, 0x78, 0x70, 0x65, 0x08, 0x05, 0x7e, 0x95, 0x21, 0xed, 0xa9, 0xc3, + 0x76, 0x4b, 0x17, 0xe5, +}; +static const unsigned char kat3044_addinpr2[] = {0}; +static const unsigned char kat3044_retbits[] = { + 0x93, 0x98, 0x9c, 0x71, 0xde, 0x4b, 0x19, 0x79, 0x7f, 0xa6, 0x71, 0x5e, + 0x69, 0x35, 0xa9, 0xad, 0xa5, 0x8b, 0x68, 0x5f, 0xb2, 0x6c, 0xbf, 0x24, + 0xae, 0xa7, 0x2e, 0x17, 0x51, 0xcd, 0xcf, 0x34, 0x75, 0x10, 0x39, 0xf9, + 0xde, 0xc1, 0xc6, 0x0f, 0x0b, 0xbe, 0x7f, 0x79, 0x39, 0xd0, 0x7c, 0x5d, + 0xe3, 0x71, 0x07, 0xf2, 0x80, 0x62, 0xa1, 0x2c, 0x0d, 0xc1, 0xaa, 0x0f, + 0x08, 0x0e, 0x45, 0x7d, +}; +static const struct drbg_kat_pr_true kat3044_t = { + 13, kat3044_entropyin, kat3044_nonce, kat3044_persstr, + kat3044_entropyinpr1, kat3044_addinpr1, kat3044_entropyinpr2, + kat3044_addinpr2, kat3044_retbits +}; +static const struct drbg_kat kat3044 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3044_t +}; + +static const unsigned char kat3045_entropyin[] = { + 0xdc, 0x30, 0xe1, 0xdb, 0x5c, 0x9a, 0x1b, 0x17, 0x18, 0x6f, 0x7f, 0xca, + 0x1f, 0xa7, 0x9c, 0x92, +}; +static const unsigned char kat3045_nonce[] = { + 0xe1, 0x38, 0xc3, 0xce, 0xcc, 0xca, 0x8e, 0x59, +}; +static const unsigned char kat3045_persstr[] = { + 0x4d, 0x43, 0x17, 0x76, 0x37, 0xd3, 0x38, 0xac, 0x74, 0x18, 0x88, 0x0c, + 0x7e, 0x15, 0xb5, 0x6c, +}; +static const unsigned char kat3045_entropyinpr1[] = { + 0xa3, 0xa6, 0x53, 0x94, 0x12, 0x45, 0x1c, 0x4c, 0x50, 0xb2, 0xb3, 0x73, + 0x10, 0x50, 0xb7, 0x7e, +}; +static const unsigned char kat3045_addinpr1[] = {0}; +static const unsigned char kat3045_entropyinpr2[] = { + 0x78, 0xaf, 0x61, 0x91, 0xe4, 0x7e, 0xe4, 0xb5, 0xae, 0xbc, 0x9b, 0x89, + 0xd2, 0xaa, 0x7d, 0x61, +}; +static const unsigned char kat3045_addinpr2[] = {0}; +static const unsigned char kat3045_retbits[] = { + 0x22, 0x87, 0x6b, 0x47, 0xab, 0xc2, 0x2b, 0x83, 0x58, 0xec, 0xe9, 0xe6, + 0xaf, 0x25, 0xd6, 0x7a, 0x89, 0x7e, 0x54, 0xf6, 0x07, 0x60, 0xf0, 0x79, + 0x81, 0x11, 0xb8, 0xdf, 0x65, 0x49, 0xe6, 0x14, 0xf2, 0x21, 0x05, 0xd1, + 0x55, 0xe1, 0xcd, 0x23, 0xf9, 0x02, 0x9d, 0xa5, 0x52, 0x6a, 0xaf, 0xae, + 0x9e, 0xea, 0x16, 0xc6, 0x48, 0x2c, 0x36, 0xcc, 0x1a, 0x2e, 0x48, 0xb3, + 0xb0, 0x5e, 0x98, 0xf6, +}; +static const struct drbg_kat_pr_true kat3045_t = { + 14, kat3045_entropyin, kat3045_nonce, kat3045_persstr, + kat3045_entropyinpr1, kat3045_addinpr1, kat3045_entropyinpr2, + kat3045_addinpr2, kat3045_retbits +}; +static const struct drbg_kat kat3045 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3045_t +}; + +static const unsigned char kat3046_entropyin[] = { + 0x41, 0xad, 0x5d, 0xba, 0xd2, 0xb7, 0xdc, 0x53, 0xa5, 0x9d, 0x55, 0xc4, + 0x72, 0xc4, 0xc3, 0x8b, +}; +static const unsigned char kat3046_nonce[] = { + 0xe7, 0x12, 0x33, 0xae, 0x7d, 0x69, 0x8a, 0x0d, +}; +static const unsigned char kat3046_persstr[] = { + 0xe8, 0x9c, 0x3c, 0xe6, 0xa0, 0x33, 0x1d, 0x1d, 0x88, 0xb5, 0x75, 0x20, + 0x5f, 0xed, 0x91, 0x38, +}; +static const unsigned char kat3046_entropyinpr1[] = { + 0xa0, 0x2c, 0x4e, 0x06, 0xed, 0xda, 0xb9, 0x1a, 0x06, 0x37, 0xea, 0xb1, + 0x53, 0x2f, 0x72, 0xfc, +}; +static const unsigned char kat3046_addinpr1[] = { + 0x9e, 0x2f, 0x64, 0xfd, 0x75, 0x4f, 0x91, 0x94, 0x3a, 0x05, 0x0e, 0x1e, + 0xf1, 0xe5, 0x5e, 0xf3, +}; +static const unsigned char kat3046_entropyinpr2[] = { + 0xff, 0x80, 0x99, 0x50, 0xea, 0x8a, 0xa9, 0x40, 0xd4, 0xfd, 0x71, 0x4c, + 0x02, 0x04, 0x78, 0x52, +}; +static const unsigned char kat3046_addinpr2[] = { + 0x3e, 0x18, 0x72, 0xf3, 0x11, 0xdd, 0xd7, 0xe7, 0x1e, 0xed, 0xda, 0xf2, + 0xc4, 0xa1, 0xcc, 0xef, +}; +static const unsigned char kat3046_retbits[] = { + 0x5a, 0x80, 0x08, 0x3c, 0x48, 0x94, 0xea, 0xf1, 0x74, 0xea, 0x22, 0x47, + 0xd1, 0x1c, 0x82, 0x96, 0x99, 0xf7, 0x27, 0x86, 0x8f, 0x90, 0x55, 0xf2, + 0x57, 0xb2, 0xd1, 0xe9, 0x9e, 0x85, 0x90, 0x57, 0xb5, 0xa8, 0x19, 0x63, + 0x56, 0x4d, 0x80, 0xf3, 0xc8, 0xd4, 0x67, 0x71, 0xd1, 0x28, 0x5a, 0xec, + 0x24, 0x75, 0xfc, 0xbf, 0x36, 0x90, 0x2a, 0x13, 0xa1, 0xf2, 0xcc, 0x86, + 0xc7, 0xbb, 0xfa, 0xed, +}; +static const struct drbg_kat_pr_true kat3046_t = { + 0, kat3046_entropyin, kat3046_nonce, kat3046_persstr, + kat3046_entropyinpr1, kat3046_addinpr1, kat3046_entropyinpr2, + kat3046_addinpr2, kat3046_retbits +}; +static const struct drbg_kat kat3046 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3046_t +}; + +static const unsigned char kat3047_entropyin[] = { + 0x8a, 0xfc, 0x14, 0x0c, 0xc1, 0x07, 0xe5, 0xed, 0x01, 0x6f, 0x45, 0x42, + 0xe0, 0xa2, 0x75, 0x22, +}; +static const unsigned char kat3047_nonce[] = { + 0xb4, 0x68, 0x8b, 0x46, 0xb7, 0xa3, 0x34, 0x19, +}; +static const unsigned char kat3047_persstr[] = { + 0xef, 0x7f, 0xde, 0xe6, 0x8d, 0x37, 0x86, 0x1c, 0x04, 0x10, 0x5a, 0x8c, + 0x4a, 0xfb, 0x30, 0x3e, +}; +static const unsigned char kat3047_entropyinpr1[] = { + 0xfb, 0xb9, 0x88, 0x90, 0x24, 0x98, 0x94, 0xae, 0x58, 0x08, 0x5c, 0x86, + 0x88, 0xd4, 0xb0, 0x36, +}; +static const unsigned char kat3047_addinpr1[] = { + 0x21, 0x8f, 0x0c, 0xc8, 0x8c, 0x46, 0xe9, 0x17, 0x8e, 0xc2, 0x5d, 0x81, + 0x4e, 0x30, 0x6f, 0x1b, +}; +static const unsigned char kat3047_entropyinpr2[] = { + 0x79, 0x88, 0xa7, 0xb0, 0xff, 0x93, 0xf4, 0x2f, 0x98, 0x8a, 0x47, 0x1c, + 0x66, 0x05, 0x68, 0xf8, +}; +static const unsigned char kat3047_addinpr2[] = { + 0xba, 0xe9, 0x16, 0xf0, 0xc7, 0xb9, 0xc1, 0xd7, 0x85, 0x81, 0x5f, 0xc3, + 0xcc, 0x16, 0x3d, 0x6f, +}; +static const unsigned char kat3047_retbits[] = { + 0x8d, 0x1e, 0x4f, 0x11, 0x12, 0xf3, 0x16, 0x84, 0x50, 0xd8, 0x18, 0x1d, + 0xbf, 0x9b, 0xd6, 0xc2, 0xf4, 0xd8, 0x7c, 0x89, 0x31, 0x87, 0x60, 0x48, + 0x1c, 0xa2, 0x8e, 0x46, 0x26, 0x9e, 0x30, 0xcb, 0x2a, 0x6c, 0x86, 0x84, + 0x61, 0x41, 0x22, 0xca, 0xeb, 0x8e, 0xc8, 0x87, 0x04, 0x87, 0xa9, 0x9d, + 0x3f, 0x2e, 0x55, 0xc5, 0x5e, 0x58, 0x37, 0xe6, 0x1d, 0x81, 0xf6, 0x29, + 0x85, 0xb0, 0xac, 0x8e, +}; +static const struct drbg_kat_pr_true kat3047_t = { + 1, kat3047_entropyin, kat3047_nonce, kat3047_persstr, + kat3047_entropyinpr1, kat3047_addinpr1, kat3047_entropyinpr2, + kat3047_addinpr2, kat3047_retbits +}; +static const struct drbg_kat kat3047 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3047_t +}; + +static const unsigned char kat3048_entropyin[] = { + 0x4d, 0x27, 0x35, 0x3e, 0x4f, 0x1a, 0xd0, 0x8e, 0xbb, 0xa5, 0x7f, 0x10, + 0xf2, 0x65, 0xc2, 0x27, +}; +static const unsigned char kat3048_nonce[] = { + 0x5c, 0x48, 0x36, 0x60, 0x4f, 0xec, 0x04, 0xb8, +}; +static const unsigned char kat3048_persstr[] = { + 0xe3, 0xeb, 0xed, 0x6c, 0x0b, 0x09, 0x9e, 0xd5, 0x2c, 0xcf, 0x5b, 0x86, + 0x63, 0x10, 0x13, 0x34, +}; +static const unsigned char kat3048_entropyinpr1[] = { + 0x6a, 0x8d, 0x62, 0x56, 0x8c, 0x8c, 0x8a, 0xa7, 0x6d, 0x73, 0x3b, 0xc2, + 0xd2, 0x29, 0xe3, 0x26, +}; +static const unsigned char kat3048_addinpr1[] = { + 0xd5, 0x64, 0x0c, 0x2b, 0x50, 0xd5, 0xba, 0x01, 0x96, 0x1f, 0xa5, 0xb3, + 0x93, 0xc5, 0x13, 0xac, +}; +static const unsigned char kat3048_entropyinpr2[] = { + 0x00, 0x91, 0x8b, 0xa4, 0xff, 0x9b, 0x14, 0x65, 0xab, 0xe3, 0x68, 0x82, + 0x9f, 0xe6, 0x21, 0xc8, +}; +static const unsigned char kat3048_addinpr2[] = { + 0xd6, 0xef, 0xd8, 0x2e, 0x22, 0xeb, 0xd7, 0xec, 0x65, 0x1a, 0x57, 0x69, + 0xc7, 0x59, 0x78, 0x01, +}; +static const unsigned char kat3048_retbits[] = { + 0xcd, 0xfa, 0x1f, 0x0b, 0x3f, 0x9b, 0x96, 0x14, 0x25, 0x7d, 0xbb, 0xfe, + 0x38, 0x92, 0xef, 0xe2, 0x33, 0x78, 0x01, 0x31, 0x52, 0xae, 0xe6, 0x1f, + 0x12, 0x27, 0xdf, 0x8b, 0x10, 0xd9, 0x10, 0xbb, 0xf1, 0x9c, 0x1a, 0xe7, + 0xdd, 0xc2, 0xfd, 0x02, 0x9d, 0xc3, 0xdd, 0x03, 0xdd, 0xca, 0x30, 0xca, + 0x3f, 0x91, 0xf5, 0x76, 0x75, 0x81, 0x0e, 0xc5, 0x31, 0x56, 0xe4, 0x1d, + 0xc1, 0xc6, 0x14, 0x65, +}; +static const struct drbg_kat_pr_true kat3048_t = { + 2, kat3048_entropyin, kat3048_nonce, kat3048_persstr, + kat3048_entropyinpr1, kat3048_addinpr1, kat3048_entropyinpr2, + kat3048_addinpr2, kat3048_retbits +}; +static const struct drbg_kat kat3048 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3048_t +}; + +static const unsigned char kat3049_entropyin[] = { + 0xca, 0x84, 0x6c, 0x2b, 0xe9, 0x3f, 0x95, 0x40, 0x53, 0x96, 0xbb, 0x59, + 0x26, 0xa0, 0x57, 0x53, +}; +static const unsigned char kat3049_nonce[] = { + 0x0f, 0x7b, 0xc5, 0x60, 0x2e, 0x6b, 0x36, 0x15, +}; +static const unsigned char kat3049_persstr[] = { + 0x75, 0xb6, 0x71, 0xe0, 0xa9, 0x7c, 0xbd, 0xfc, 0x42, 0xe6, 0x2c, 0x5d, + 0xbf, 0xe8, 0x16, 0xec, +}; +static const unsigned char kat3049_entropyinpr1[] = { + 0xe5, 0xd5, 0xfe, 0x4b, 0x2b, 0x09, 0x51, 0xd1, 0xd5, 0xde, 0x10, 0x2f, + 0x5c, 0xa5, 0x91, 0xb0, +}; +static const unsigned char kat3049_addinpr1[] = { + 0x9d, 0x72, 0xc4, 0x56, 0xd6, 0x08, 0xe2, 0x52, 0xb2, 0x77, 0xc8, 0x4d, + 0x31, 0x78, 0x94, 0x7d, +}; +static const unsigned char kat3049_entropyinpr2[] = { + 0x51, 0x91, 0xf9, 0x73, 0x0c, 0xad, 0xe8, 0x56, 0x33, 0x74, 0xd8, 0x35, + 0x0e, 0xcb, 0x77, 0xa3, +}; +static const unsigned char kat3049_addinpr2[] = { + 0x95, 0x5a, 0xa6, 0xbf, 0xc6, 0x7e, 0xb4, 0x5c, 0x84, 0xbf, 0xb0, 0x07, + 0xb6, 0xa7, 0xec, 0x81, +}; +static const unsigned char kat3049_retbits[] = { + 0xce, 0x7f, 0xad, 0x45, 0xb0, 0x09, 0x1a, 0x32, 0x18, 0xbe, 0x9e, 0xdb, + 0xf1, 0xa7, 0x3f, 0xf3, 0xab, 0x85, 0x76, 0x31, 0x51, 0x14, 0xda, 0xe4, + 0x98, 0x93, 0x6e, 0x85, 0x34, 0x5a, 0xec, 0x01, 0xbc, 0x7b, 0xef, 0xbe, + 0x70, 0xfb, 0xd1, 0x28, 0x3a, 0x3a, 0x55, 0x4c, 0x05, 0xbb, 0x60, 0x11, + 0xee, 0x88, 0x59, 0xdd, 0xff, 0xa2, 0xd9, 0x99, 0x5c, 0x7e, 0xec, 0x98, + 0xf3, 0xc8, 0xfb, 0x90, +}; +static const struct drbg_kat_pr_true kat3049_t = { + 3, kat3049_entropyin, kat3049_nonce, kat3049_persstr, + kat3049_entropyinpr1, kat3049_addinpr1, kat3049_entropyinpr2, + kat3049_addinpr2, kat3049_retbits +}; +static const struct drbg_kat kat3049 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3049_t +}; + +static const unsigned char kat3050_entropyin[] = { + 0x25, 0xa7, 0x3d, 0xfb, 0x00, 0xa6, 0x58, 0x3b, 0x0b, 0x62, 0xb9, 0x68, + 0x0d, 0xbd, 0x88, 0x81, +}; +static const unsigned char kat3050_nonce[] = { + 0x87, 0x3a, 0x6b, 0xb8, 0xa3, 0x6d, 0x2b, 0x40, +}; +static const unsigned char kat3050_persstr[] = { + 0x94, 0x27, 0x9a, 0x74, 0xd7, 0x30, 0xd2, 0x36, 0x33, 0x1d, 0xe8, 0xd2, + 0xc3, 0xb8, 0xa1, 0x08, +}; +static const unsigned char kat3050_entropyinpr1[] = { + 0xf1, 0x27, 0x9f, 0x16, 0x54, 0xcd, 0xd6, 0x8f, 0x5a, 0xbb, 0x40, 0x59, + 0x64, 0x61, 0x04, 0x60, +}; +static const unsigned char kat3050_addinpr1[] = { + 0x76, 0x04, 0xee, 0x17, 0x8b, 0xf7, 0x8d, 0x73, 0x2b, 0xc1, 0xb8, 0xf8, + 0x86, 0xab, 0xec, 0x70, +}; +static const unsigned char kat3050_entropyinpr2[] = { + 0xe7, 0x68, 0x57, 0x82, 0xbf, 0x0e, 0x85, 0xf7, 0x09, 0x43, 0x5e, 0x18, + 0x4d, 0x32, 0x49, 0x8a, +}; +static const unsigned char kat3050_addinpr2[] = { + 0x8b, 0x84, 0x3c, 0xa9, 0x1d, 0x79, 0x18, 0x06, 0xc0, 0xd3, 0xe4, 0xd9, + 0x22, 0x31, 0x4e, 0xaf, +}; +static const unsigned char kat3050_retbits[] = { + 0x62, 0xb7, 0x28, 0xed, 0x9e, 0x0e, 0x70, 0x91, 0x0e, 0x8f, 0x5e, 0x04, + 0x3c, 0x6b, 0x98, 0x38, 0xcf, 0x59, 0xbc, 0x6a, 0x69, 0xb8, 0x9d, 0x8e, + 0xe8, 0xf0, 0xb7, 0x33, 0xea, 0xc2, 0x1b, 0xcd, 0x70, 0x16, 0xc2, 0x77, + 0xcf, 0x7c, 0x1d, 0xc4, 0x23, 0x30, 0x47, 0x08, 0xa0, 0x74, 0x38, 0xfc, + 0x06, 0x0e, 0x7a, 0xb7, 0x40, 0x61, 0x27, 0x24, 0x83, 0x90, 0xd8, 0xdb, + 0x88, 0x4f, 0xa7, 0x9d, +}; +static const struct drbg_kat_pr_true kat3050_t = { + 4, kat3050_entropyin, kat3050_nonce, kat3050_persstr, + kat3050_entropyinpr1, kat3050_addinpr1, kat3050_entropyinpr2, + kat3050_addinpr2, kat3050_retbits +}; +static const struct drbg_kat kat3050 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3050_t +}; + +static const unsigned char kat3051_entropyin[] = { + 0xa7, 0xe7, 0x21, 0x0e, 0x20, 0x72, 0xd8, 0x4b, 0x3e, 0xcb, 0xbb, 0x2f, + 0x49, 0x05, 0x2f, 0x4f, +}; +static const unsigned char kat3051_nonce[] = { + 0x79, 0xb9, 0x8f, 0x53, 0xbf, 0xf2, 0xdb, 0xa7, +}; +static const unsigned char kat3051_persstr[] = { + 0x37, 0xec, 0xd0, 0x0b, 0x09, 0x1d, 0xde, 0xab, 0xe2, 0x4d, 0x61, 0x2a, + 0xe0, 0x81, 0xfa, 0x11, +}; +static const unsigned char kat3051_entropyinpr1[] = { + 0xb5, 0xa9, 0x6a, 0x45, 0xf4, 0xb6, 0x61, 0x98, 0x58, 0x42, 0x4a, 0x50, + 0x4c, 0x51, 0xd4, 0x22, +}; +static const unsigned char kat3051_addinpr1[] = { + 0x59, 0x01, 0x04, 0x1e, 0x59, 0x53, 0xda, 0x7e, 0x69, 0xc7, 0x94, 0xb8, + 0x23, 0x71, 0x04, 0x4f, +}; +static const unsigned char kat3051_entropyinpr2[] = { + 0xa1, 0x25, 0x89, 0x1a, 0x24, 0xe1, 0xc5, 0xfc, 0xd0, 0xfe, 0x9b, 0xd1, + 0xbe, 0x1c, 0x34, 0xdb, +}; +static const unsigned char kat3051_addinpr2[] = { + 0xb6, 0x23, 0xb3, 0xc5, 0x44, 0x86, 0xdd, 0x5d, 0x92, 0x42, 0xe1, 0x08, + 0xa5, 0x85, 0x61, 0x60, +}; +static const unsigned char kat3051_retbits[] = { + 0xbb, 0xb5, 0x55, 0x21, 0xe1, 0x99, 0x34, 0xaf, 0x05, 0x2b, 0x42, 0xb5, + 0x26, 0xf9, 0xc9, 0xa4, 0x9e, 0xf8, 0x9c, 0x71, 0x61, 0x1f, 0x95, 0x9c, + 0xe2, 0x14, 0xce, 0xf3, 0xe2, 0x29, 0x18, 0x70, 0x0a, 0xcf, 0xf9, 0x9d, + 0x9e, 0xce, 0x91, 0x3e, 0x49, 0x8b, 0xad, 0xe9, 0xe3, 0x07, 0x66, 0xc4, + 0xfc, 0x33, 0xe1, 0x3a, 0x55, 0x15, 0x02, 0x09, 0xcf, 0xdb, 0xff, 0xb3, + 0x67, 0xbf, 0x6f, 0x2c, +}; +static const struct drbg_kat_pr_true kat3051_t = { + 5, kat3051_entropyin, kat3051_nonce, kat3051_persstr, + kat3051_entropyinpr1, kat3051_addinpr1, kat3051_entropyinpr2, + kat3051_addinpr2, kat3051_retbits +}; +static const struct drbg_kat kat3051 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3051_t +}; + +static const unsigned char kat3052_entropyin[] = { + 0x94, 0x7c, 0x95, 0xdd, 0x71, 0x8e, 0xdc, 0xf2, 0x64, 0x6e, 0xe2, 0x7d, + 0x6e, 0x5c, 0x2f, 0x3e, +}; +static const unsigned char kat3052_nonce[] = { + 0xd9, 0xd9, 0xb2, 0x26, 0xf8, 0x76, 0x47, 0xc4, +}; +static const unsigned char kat3052_persstr[] = { + 0xdf, 0x10, 0x45, 0xff, 0x8b, 0xc9, 0x95, 0x8c, 0x9a, 0x6b, 0x07, 0xfa, + 0x4a, 0x1d, 0xed, 0xe0, +}; +static const unsigned char kat3052_entropyinpr1[] = { + 0x94, 0x2f, 0xcf, 0xe5, 0xed, 0xed, 0x12, 0x35, 0x40, 0x88, 0x49, 0xcf, + 0x58, 0x0a, 0x10, 0xae, +}; +static const unsigned char kat3052_addinpr1[] = { + 0xea, 0xb8, 0xaa, 0x70, 0xd2, 0xb1, 0x33, 0x91, 0x3b, 0x86, 0x39, 0xa3, + 0x2d, 0x8e, 0x59, 0xfc, +}; +static const unsigned char kat3052_entropyinpr2[] = { + 0x6b, 0x6c, 0xef, 0x1a, 0x92, 0x93, 0x2e, 0xa4, 0xc0, 0xc1, 0xce, 0x53, + 0x52, 0x04, 0x38, 0x25, +}; +static const unsigned char kat3052_addinpr2[] = { + 0x23, 0x62, 0x43, 0x3a, 0x55, 0x07, 0x1a, 0x82, 0xa5, 0x6c, 0x68, 0xe5, + 0x83, 0xf3, 0xd9, 0xbc, +}; +static const unsigned char kat3052_retbits[] = { + 0x40, 0x2a, 0x68, 0x49, 0xdd, 0xac, 0x82, 0x7b, 0x56, 0x91, 0x7c, 0xa9, + 0x8e, 0xf2, 0x49, 0x77, 0x7c, 0x87, 0x4c, 0x98, 0x6f, 0x8e, 0xee, 0x08, + 0xdc, 0x6d, 0x99, 0x2d, 0xb4, 0x00, 0xa4, 0x05, 0x15, 0xae, 0x0d, 0xf9, + 0x06, 0xcf, 0xb0, 0xc1, 0x08, 0xd9, 0x2d, 0xbb, 0x60, 0x69, 0xb9, 0x42, + 0xb0, 0x0d, 0x39, 0x9f, 0x8e, 0x4d, 0x4f, 0x59, 0xb7, 0x10, 0x6a, 0xe0, + 0xeb, 0x7e, 0x51, 0xd1, +}; +static const struct drbg_kat_pr_true kat3052_t = { + 6, kat3052_entropyin, kat3052_nonce, kat3052_persstr, + kat3052_entropyinpr1, kat3052_addinpr1, kat3052_entropyinpr2, + kat3052_addinpr2, kat3052_retbits +}; +static const struct drbg_kat kat3052 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3052_t +}; + +static const unsigned char kat3053_entropyin[] = { + 0x61, 0x5e, 0xf2, 0xa3, 0xb1, 0x1b, 0x4d, 0x42, 0xb3, 0x3a, 0x60, 0x0f, + 0xc5, 0xd1, 0x9e, 0xb6, +}; +static const unsigned char kat3053_nonce[] = { + 0xed, 0x64, 0x99, 0x40, 0x28, 0xc9, 0xbd, 0x16, +}; +static const unsigned char kat3053_persstr[] = { + 0x7e, 0xea, 0x81, 0xf2, 0x01, 0x58, 0xc3, 0x32, 0xa8, 0x12, 0x82, 0x48, + 0x2f, 0x4f, 0xc6, 0x92, +}; +static const unsigned char kat3053_entropyinpr1[] = { + 0xeb, 0x31, 0x41, 0x60, 0xbf, 0x4f, 0x05, 0xb4, 0x67, 0x75, 0x40, 0x88, + 0x28, 0x9d, 0x55, 0x98, +}; +static const unsigned char kat3053_addinpr1[] = { + 0xe2, 0xfa, 0xfd, 0x00, 0x5a, 0xf0, 0x5d, 0x47, 0xd5, 0xfa, 0xd6, 0x5f, + 0xf2, 0x4a, 0x30, 0xbd, +}; +static const unsigned char kat3053_entropyinpr2[] = { + 0x46, 0x14, 0x22, 0xe3, 0x6a, 0x0a, 0x5c, 0x72, 0xcf, 0x80, 0x88, 0xbf, + 0x4e, 0x25, 0x48, 0x56, +}; +static const unsigned char kat3053_addinpr2[] = { + 0x1a, 0x5a, 0xa4, 0x5e, 0x12, 0x6f, 0x11, 0xc0, 0xc1, 0x9e, 0xbf, 0xbc, + 0x57, 0x4d, 0xea, 0x86, +}; +static const unsigned char kat3053_retbits[] = { + 0xae, 0x1b, 0x5a, 0x45, 0x76, 0x9b, 0xca, 0x07, 0xfc, 0x0a, 0xb2, 0x63, + 0x1f, 0x72, 0x72, 0xe8, 0x67, 0x9b, 0x97, 0x1e, 0x71, 0x11, 0x6c, 0xb2, + 0xdb, 0x01, 0xcf, 0x7c, 0xfd, 0x02, 0x55, 0x30, 0xf9, 0xad, 0xe0, 0x13, + 0x5a, 0x4d, 0xa1, 0x65, 0x76, 0x74, 0xc7, 0xe1, 0xaf, 0xa1, 0x37, 0x02, + 0xd7, 0x0c, 0x43, 0xc4, 0xe9, 0x9d, 0x6a, 0x8f, 0x0f, 0xe8, 0xaf, 0xca, + 0x5c, 0xcf, 0xf5, 0x35, +}; +static const struct drbg_kat_pr_true kat3053_t = { + 7, kat3053_entropyin, kat3053_nonce, kat3053_persstr, + kat3053_entropyinpr1, kat3053_addinpr1, kat3053_entropyinpr2, + kat3053_addinpr2, kat3053_retbits +}; +static const struct drbg_kat kat3053 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3053_t +}; + +static const unsigned char kat3054_entropyin[] = { + 0x4c, 0x9d, 0x79, 0x56, 0xbe, 0x59, 0xa0, 0x30, 0xe6, 0x48, 0x14, 0x65, + 0xf8, 0x9e, 0xfc, 0x49, +}; +static const unsigned char kat3054_nonce[] = { + 0xae, 0x79, 0x64, 0x11, 0xe8, 0xe1, 0x57, 0x3e, +}; +static const unsigned char kat3054_persstr[] = { + 0x60, 0xdc, 0x49, 0xfc, 0xd6, 0x33, 0x63, 0xc9, 0xf5, 0x03, 0x74, 0x38, + 0x0b, 0x6a, 0xf2, 0xef, +}; +static const unsigned char kat3054_entropyinpr1[] = { + 0x84, 0x9e, 0xbf, 0xf2, 0x35, 0xce, 0xf6, 0xbb, 0xf4, 0x4a, 0x43, 0xd8, + 0xdb, 0x9a, 0x8c, 0x19, +}; +static const unsigned char kat3054_addinpr1[] = { + 0x21, 0xf4, 0x93, 0xc7, 0xa5, 0x01, 0x5f, 0xdf, 0x82, 0x20, 0x76, 0x7a, + 0x67, 0x00, 0x73, 0xd6, +}; +static const unsigned char kat3054_entropyinpr2[] = { + 0x5f, 0x8e, 0x9f, 0x77, 0x48, 0xf3, 0xf6, 0xd0, 0x09, 0x99, 0xdc, 0x06, + 0xe1, 0x68, 0x2e, 0x2d, +}; +static const unsigned char kat3054_addinpr2[] = { + 0x6e, 0x00, 0x98, 0xbc, 0x17, 0x5a, 0xf2, 0x80, 0x9e, 0xc7, 0x1c, 0x33, + 0x72, 0xf7, 0x09, 0x4e, +}; +static const unsigned char kat3054_retbits[] = { + 0x70, 0x71, 0x66, 0x60, 0xe6, 0xe5, 0xb4, 0x6d, 0x6f, 0x77, 0xf0, 0x2b, + 0x81, 0xcc, 0xd1, 0x47, 0xf9, 0x22, 0x96, 0x1a, 0xd7, 0x5d, 0xa7, 0x08, + 0x30, 0x57, 0x58, 0x8b, 0xad, 0xd2, 0xb1, 0x53, 0xeb, 0x8d, 0x3d, 0xdb, + 0x72, 0x1a, 0x76, 0x90, 0xde, 0xf3, 0x5c, 0xca, 0x01, 0xf1, 0x1b, 0xa8, + 0xba, 0x8f, 0x57, 0xeb, 0xf0, 0x7e, 0xe1, 0xf1, 0x0d, 0x9d, 0xa1, 0xe7, + 0x80, 0x56, 0xee, 0xad, +}; +static const struct drbg_kat_pr_true kat3054_t = { + 8, kat3054_entropyin, kat3054_nonce, kat3054_persstr, + kat3054_entropyinpr1, kat3054_addinpr1, kat3054_entropyinpr2, + kat3054_addinpr2, kat3054_retbits +}; +static const struct drbg_kat kat3054 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3054_t +}; + +static const unsigned char kat3055_entropyin[] = { + 0x88, 0x7f, 0x97, 0x39, 0x03, 0xfc, 0xf2, 0xac, 0x5d, 0x2c, 0x69, 0x16, + 0x84, 0x7a, 0xfb, 0x4a, +}; +static const unsigned char kat3055_nonce[] = { + 0x8e, 0x1d, 0x94, 0x6b, 0x87, 0xdc, 0xfd, 0x56, +}; +static const unsigned char kat3055_persstr[] = { + 0x96, 0x8c, 0x2f, 0x7d, 0x2c, 0x88, 0xc4, 0xac, 0x26, 0x61, 0xc7, 0xb1, + 0xf8, 0xee, 0xb4, 0xf6, +}; +static const unsigned char kat3055_entropyinpr1[] = { + 0x3f, 0xbd, 0x42, 0x84, 0x55, 0x3c, 0x9c, 0xad, 0x01, 0xf3, 0xcf, 0x5f, + 0x9f, 0xe1, 0x6a, 0x45, +}; +static const unsigned char kat3055_addinpr1[] = { + 0x76, 0xce, 0xfb, 0xa8, 0xa1, 0x52, 0xba, 0x5e, 0x56, 0x7c, 0x5f, 0xe9, + 0x62, 0xe5, 0x9d, 0x12, +}; +static const unsigned char kat3055_entropyinpr2[] = { + 0xc1, 0xaa, 0x57, 0x55, 0xc0, 0x5e, 0xa3, 0x5f, 0xc0, 0xc3, 0x92, 0x3a, + 0xf4, 0x4b, 0x5a, 0xc7, +}; +static const unsigned char kat3055_addinpr2[] = { + 0x6a, 0x38, 0xac, 0x40, 0xcb, 0x5c, 0x30, 0x24, 0x0b, 0xe9, 0xe7, 0xb0, + 0x7c, 0x62, 0xd6, 0xfa, +}; +static const unsigned char kat3055_retbits[] = { + 0x65, 0xd3, 0xfc, 0x22, 0x41, 0x1f, 0xa4, 0xa1, 0xb9, 0x27, 0x8b, 0x42, + 0x85, 0xa5, 0xc3, 0x2f, 0x26, 0x75, 0xe1, 0x23, 0x05, 0xb9, 0x00, 0xfa, + 0xb8, 0xfd, 0x68, 0xe8, 0x34, 0xde, 0xb3, 0x94, 0x37, 0x2c, 0x6b, 0x80, + 0xec, 0x56, 0xb9, 0x2e, 0x74, 0x2d, 0xbd, 0x85, 0x41, 0x44, 0x77, 0x29, + 0x21, 0xbd, 0x5d, 0x4d, 0x8e, 0x86, 0xea, 0x3a, 0xc2, 0xaa, 0xfb, 0x17, + 0xe5, 0xac, 0xc0, 0x17, +}; +static const struct drbg_kat_pr_true kat3055_t = { + 9, kat3055_entropyin, kat3055_nonce, kat3055_persstr, + kat3055_entropyinpr1, kat3055_addinpr1, kat3055_entropyinpr2, + kat3055_addinpr2, kat3055_retbits +}; +static const struct drbg_kat kat3055 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3055_t +}; + +static const unsigned char kat3056_entropyin[] = { + 0x7c, 0x64, 0xbe, 0x1d, 0x48, 0x4b, 0xa4, 0x33, 0xcb, 0x1d, 0x64, 0x69, + 0xdc, 0x68, 0xd4, 0xf3, +}; +static const unsigned char kat3056_nonce[] = { + 0x66, 0xec, 0x35, 0xea, 0xf4, 0x9d, 0xf5, 0xbc, +}; +static const unsigned char kat3056_persstr[] = { + 0x59, 0xaa, 0x04, 0x17, 0x5d, 0x04, 0x47, 0x92, 0x7b, 0xba, 0xb1, 0x36, + 0x2f, 0x40, 0xaf, 0xc8, +}; +static const unsigned char kat3056_entropyinpr1[] = { + 0x36, 0xa9, 0x01, 0x13, 0xff, 0x86, 0x49, 0xf0, 0x98, 0x9c, 0x1a, 0xab, + 0xdd, 0x3a, 0x2a, 0x07, +}; +static const unsigned char kat3056_addinpr1[] = { + 0x8b, 0x32, 0x01, 0x08, 0x40, 0x75, 0xa3, 0x82, 0x79, 0x3e, 0x49, 0x1d, + 0x5c, 0xb5, 0x96, 0x19, +}; +static const unsigned char kat3056_entropyinpr2[] = { + 0x53, 0xb4, 0xfe, 0xe4, 0x98, 0xd7, 0xdb, 0x2f, 0xaa, 0xf9, 0xb1, 0x05, + 0xbe, 0x36, 0x21, 0x13, +}; +static const unsigned char kat3056_addinpr2[] = { + 0x84, 0x9a, 0x9b, 0x4d, 0xaf, 0xb8, 0x2c, 0x92, 0x4c, 0x9b, 0x24, 0xb9, + 0xaf, 0xdb, 0x5c, 0x80, +}; +static const unsigned char kat3056_retbits[] = { + 0x0e, 0xdf, 0x79, 0x6f, 0x1a, 0xca, 0x9f, 0x22, 0x33, 0x6e, 0x1e, 0x93, + 0x10, 0x21, 0xa6, 0xf9, 0x99, 0xf0, 0x49, 0xdc, 0x43, 0xbe, 0xec, 0xf4, + 0x7d, 0xbe, 0x15, 0x4b, 0x58, 0x14, 0xe0, 0xa2, 0x64, 0x07, 0x73, 0xfe, + 0x7f, 0xf7, 0x7b, 0xc2, 0x77, 0x1c, 0x5a, 0xcd, 0xe9, 0x5d, 0x2b, 0xf3, + 0x22, 0x16, 0xfa, 0x1d, 0x6a, 0xe2, 0xb1, 0x68, 0xc0, 0x58, 0x81, 0x9e, + 0x5a, 0x81, 0xcc, 0x29, +}; +static const struct drbg_kat_pr_true kat3056_t = { + 10, kat3056_entropyin, kat3056_nonce, kat3056_persstr, + kat3056_entropyinpr1, kat3056_addinpr1, kat3056_entropyinpr2, + kat3056_addinpr2, kat3056_retbits +}; +static const struct drbg_kat kat3056 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3056_t +}; + +static const unsigned char kat3057_entropyin[] = { + 0x17, 0x22, 0xe3, 0x02, 0x13, 0x89, 0xca, 0xb7, 0x79, 0x22, 0xc6, 0xde, + 0xad, 0x86, 0x6a, 0x62, +}; +static const unsigned char kat3057_nonce[] = { + 0xf9, 0x1f, 0x9d, 0x42, 0x49, 0x80, 0xbe, 0xde, +}; +static const unsigned char kat3057_persstr[] = { + 0x11, 0x6c, 0x94, 0x4f, 0xb1, 0xbd, 0x58, 0xc3, 0x2c, 0xd8, 0xfd, 0x41, + 0xd5, 0x38, 0xe9, 0x0e, +}; +static const unsigned char kat3057_entropyinpr1[] = { + 0x8d, 0xcf, 0x57, 0x26, 0xc7, 0x12, 0x9b, 0x60, 0xa2, 0x30, 0xea, 0x28, + 0x76, 0xe4, 0x6b, 0x8e, +}; +static const unsigned char kat3057_addinpr1[] = { + 0x46, 0xa3, 0x10, 0xe8, 0xfd, 0xff, 0xb1, 0x49, 0x8d, 0x4c, 0x1a, 0x82, + 0x22, 0xdc, 0x45, 0x2b, +}; +static const unsigned char kat3057_entropyinpr2[] = { + 0xeb, 0x69, 0xc3, 0x24, 0x6d, 0x92, 0xd4, 0xdb, 0x47, 0x09, 0xb8, 0x85, + 0x7e, 0xc7, 0x57, 0xab, +}; +static const unsigned char kat3057_addinpr2[] = { + 0xc7, 0x6a, 0x8d, 0xcc, 0xa6, 0xdc, 0x6b, 0x1f, 0xac, 0xf4, 0x22, 0xeb, + 0xc6, 0x28, 0xde, 0xd1, +}; +static const unsigned char kat3057_retbits[] = { + 0xce, 0x94, 0xeb, 0x33, 0x8f, 0x13, 0xb3, 0xcd, 0xc6, 0x3d, 0xff, 0xeb, + 0x87, 0xac, 0x4f, 0x5b, 0x40, 0x3f, 0x9c, 0x9b, 0x4f, 0x92, 0x7b, 0xa1, + 0x98, 0x14, 0x03, 0xdd, 0x2d, 0x7c, 0xa3, 0x4b, 0x53, 0x25, 0xf4, 0x9b, + 0xf0, 0x08, 0x8d, 0xf9, 0x6a, 0x22, 0xa3, 0x85, 0x5f, 0x87, 0x07, 0xf1, + 0xb8, 0xe9, 0x8f, 0xf7, 0x7f, 0x6b, 0x22, 0xb9, 0xf5, 0x8a, 0xdd, 0xc3, + 0xd5, 0x83, 0xa9, 0x75, +}; +static const struct drbg_kat_pr_true kat3057_t = { + 11, kat3057_entropyin, kat3057_nonce, kat3057_persstr, + kat3057_entropyinpr1, kat3057_addinpr1, kat3057_entropyinpr2, + kat3057_addinpr2, kat3057_retbits +}; +static const struct drbg_kat kat3057 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3057_t +}; + +static const unsigned char kat3058_entropyin[] = { + 0xe0, 0x18, 0xbc, 0x1a, 0x81, 0x3e, 0xd2, 0x9e, 0xa8, 0xa9, 0x2a, 0x04, + 0x79, 0x6a, 0x16, 0xe0, +}; +static const unsigned char kat3058_nonce[] = { + 0xbb, 0xfb, 0x6b, 0x8f, 0xe0, 0xbc, 0xb2, 0xb0, +}; +static const unsigned char kat3058_persstr[] = { + 0xff, 0x3f, 0xd2, 0x82, 0x15, 0x1d, 0x8b, 0x16, 0x33, 0x28, 0xe5, 0x63, + 0x5f, 0x4e, 0xf5, 0xc0, +}; +static const unsigned char kat3058_entropyinpr1[] = { + 0x3f, 0x15, 0xdd, 0xc8, 0x61, 0x87, 0x88, 0x07, 0xd4, 0x3a, 0x6d, 0x77, + 0xac, 0xc4, 0x08, 0x93, +}; +static const unsigned char kat3058_addinpr1[] = { + 0xed, 0xee, 0x73, 0xe8, 0x6d, 0x0e, 0x24, 0xf5, 0xd0, 0x37, 0x52, 0xd7, + 0xc6, 0x54, 0xdf, 0x2f, +}; +static const unsigned char kat3058_entropyinpr2[] = { + 0x2f, 0xb8, 0xeb, 0x4b, 0xd5, 0xf1, 0x5b, 0x2a, 0xfa, 0x6e, 0x58, 0xc3, + 0xa8, 0x33, 0x04, 0xc5, +}; +static const unsigned char kat3058_addinpr2[] = { + 0xe0, 0xe6, 0x52, 0x62, 0x70, 0x47, 0xbb, 0x56, 0x4b, 0x46, 0x56, 0xa7, + 0x32, 0x7c, 0x38, 0x97, +}; +static const unsigned char kat3058_retbits[] = { + 0xb3, 0x0d, 0x49, 0x7e, 0x81, 0xe5, 0x26, 0xbd, 0x5f, 0x04, 0x15, 0x4a, + 0x09, 0x40, 0x70, 0x4e, 0x2b, 0x2e, 0x1f, 0xbe, 0x54, 0x03, 0xa8, 0xdc, + 0xf2, 0x90, 0x27, 0x57, 0x55, 0xff, 0x17, 0xaa, 0xa7, 0x5e, 0xc8, 0xce, + 0x2a, 0x5a, 0xb7, 0x40, 0xa3, 0x80, 0x02, 0x83, 0x26, 0xa2, 0x8d, 0xd3, + 0x35, 0xb3, 0xc6, 0x20, 0x5b, 0xe2, 0xed, 0xce, 0xc3, 0x87, 0x9e, 0x55, + 0x47, 0xf9, 0x10, 0xa6, +}; +static const struct drbg_kat_pr_true kat3058_t = { + 12, kat3058_entropyin, kat3058_nonce, kat3058_persstr, + kat3058_entropyinpr1, kat3058_addinpr1, kat3058_entropyinpr2, + kat3058_addinpr2, kat3058_retbits +}; +static const struct drbg_kat kat3058 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3058_t +}; + +static const unsigned char kat3059_entropyin[] = { + 0xf8, 0xf9, 0xbf, 0x29, 0xa8, 0x07, 0xc1, 0xd4, 0xa3, 0x0f, 0x94, 0xfd, + 0x5d, 0x51, 0xe3, 0xcb, +}; +static const unsigned char kat3059_nonce[] = { + 0x57, 0xa2, 0xf7, 0x43, 0xe6, 0x54, 0xe5, 0x97, +}; +static const unsigned char kat3059_persstr[] = { + 0x02, 0x35, 0x8b, 0x1a, 0xb3, 0x7e, 0xd1, 0x25, 0xd4, 0x4a, 0x30, 0xe3, + 0x28, 0xca, 0x2f, 0xbc, +}; +static const unsigned char kat3059_entropyinpr1[] = { + 0x59, 0xa7, 0x2d, 0x03, 0xca, 0x97, 0xd7, 0x72, 0xd0, 0xb5, 0x34, 0xa6, + 0x97, 0x0c, 0xfc, 0x79, +}; +static const unsigned char kat3059_addinpr1[] = { + 0xdc, 0x0c, 0xf9, 0x53, 0xb9, 0xe4, 0x69, 0x28, 0x2d, 0x31, 0x0b, 0xdb, + 0x41, 0x6c, 0x1e, 0xd0, +}; +static const unsigned char kat3059_entropyinpr2[] = { + 0x83, 0x71, 0x08, 0x15, 0xec, 0xc6, 0x54, 0x95, 0xa1, 0x27, 0x33, 0x71, + 0xc2, 0x4d, 0x84, 0xa9, +}; +static const unsigned char kat3059_addinpr2[] = { + 0x40, 0x9e, 0xfe, 0xfb, 0x3b, 0xe8, 0x41, 0x33, 0x37, 0x02, 0xa0, 0x7d, + 0xa0, 0x2f, 0x2c, 0xca, +}; +static const unsigned char kat3059_retbits[] = { + 0x16, 0x58, 0x9f, 0x10, 0x60, 0xdc, 0xbe, 0x61, 0x73, 0xb3, 0x7c, 0xde, + 0x88, 0xc5, 0x18, 0x87, 0xe1, 0x83, 0xba, 0xd7, 0xc8, 0x08, 0x90, 0x9f, + 0x41, 0xd7, 0x40, 0x1b, 0x41, 0xd0, 0xe5, 0x92, 0x71, 0xbc, 0x82, 0xfe, + 0x66, 0x34, 0xd9, 0x02, 0x45, 0xfd, 0x46, 0x98, 0x04, 0x41, 0xbe, 0x1f, + 0x84, 0x57, 0x91, 0xdd, 0x29, 0x93, 0x2a, 0xc4, 0x38, 0x07, 0x31, 0x3a, + 0x0d, 0x2f, 0xa4, 0x3d, +}; +static const struct drbg_kat_pr_true kat3059_t = { + 13, kat3059_entropyin, kat3059_nonce, kat3059_persstr, + kat3059_entropyinpr1, kat3059_addinpr1, kat3059_entropyinpr2, + kat3059_addinpr2, kat3059_retbits +}; +static const struct drbg_kat kat3059 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3059_t +}; + +static const unsigned char kat3060_entropyin[] = { + 0x2c, 0xb0, 0xc6, 0x28, 0x31, 0x9c, 0xb4, 0x27, 0x98, 0x3b, 0x64, 0x29, + 0xde, 0x1e, 0x3d, 0x52, +}; +static const unsigned char kat3060_nonce[] = { + 0x6d, 0xb6, 0xa3, 0xee, 0x43, 0x04, 0xb5, 0xf1, +}; +static const unsigned char kat3060_persstr[] = { + 0xc5, 0x08, 0xf2, 0x33, 0xd0, 0x61, 0x9f, 0xe0, 0x31, 0x5b, 0xcd, 0x94, + 0x95, 0xad, 0xa9, 0x21, +}; +static const unsigned char kat3060_entropyinpr1[] = { + 0x3e, 0xb4, 0x64, 0x91, 0xb8, 0xde, 0x63, 0x32, 0xa4, 0x09, 0xc7, 0x64, + 0xd5, 0x1d, 0x51, 0x63, +}; +static const unsigned char kat3060_addinpr1[] = { + 0xdf, 0xd9, 0xf9, 0x3e, 0x4d, 0xe3, 0x88, 0xbf, 0x76, 0x33, 0x59, 0x7c, + 0xc5, 0xf6, 0xfe, 0x68, +}; +static const unsigned char kat3060_entropyinpr2[] = { + 0x44, 0xea, 0x21, 0xec, 0xf1, 0xe6, 0x33, 0xd1, 0x94, 0xc6, 0x64, 0x2a, + 0x7f, 0x58, 0xa6, 0xc0, +}; +static const unsigned char kat3060_addinpr2[] = { + 0x30, 0xc8, 0x2d, 0x5b, 0xa6, 0x14, 0x49, 0xc3, 0xf0, 0x82, 0x35, 0xf4, + 0xae, 0x3e, 0xfb, 0xd2, +}; +static const unsigned char kat3060_retbits[] = { + 0xb3, 0xb7, 0x05, 0xb0, 0xab, 0x3f, 0x47, 0x83, 0x64, 0x47, 0xbb, 0x43, + 0xe2, 0xc3, 0xb2, 0xee, 0x67, 0x15, 0x6e, 0x93, 0x47, 0x8a, 0x62, 0x20, + 0xeb, 0x7d, 0x84, 0x77, 0x35, 0x65, 0x31, 0x58, 0x1f, 0xec, 0x66, 0x35, + 0x60, 0x9a, 0xe8, 0x67, 0x42, 0xd3, 0xb9, 0x28, 0xad, 0x58, 0x03, 0x0d, + 0x0c, 0x0d, 0xc9, 0xe2, 0x4a, 0x5f, 0x07, 0x7a, 0x3f, 0x7b, 0x36, 0xd6, + 0x62, 0xbd, 0xb2, 0x56, +}; +static const struct drbg_kat_pr_true kat3060_t = { + 14, kat3060_entropyin, kat3060_nonce, kat3060_persstr, + kat3060_entropyinpr1, kat3060_addinpr1, kat3060_entropyinpr2, + kat3060_addinpr2, kat3060_retbits +}; +static const struct drbg_kat kat3060 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3060_t +}; + +static const unsigned char kat3061_entropyin[] = { + 0x96, 0xc0, 0xb1, 0x63, 0xba, 0x84, 0x80, 0x2f, 0xbd, 0xe4, 0x01, 0xbc, + 0x58, 0x43, 0x9e, 0xd9, +}; +static const unsigned char kat3061_nonce[] = { + 0x91, 0x22, 0x45, 0x5f, 0x72, 0x4a, 0x3d, 0xcf, +}; +static const unsigned char kat3061_persstr[] = {0}; +static const unsigned char kat3061_entropyinpr1[] = { + 0xdc, 0xbd, 0x4c, 0xfb, 0xf6, 0x58, 0xc3, 0xc8, 0xa4, 0xac, 0x81, 0x3c, + 0x39, 0x81, 0xe7, 0xd9, +}; +static const unsigned char kat3061_addinpr1[] = {0}; +static const unsigned char kat3061_entropyinpr2[] = { + 0xb5, 0x45, 0x86, 0xb4, 0xd8, 0xf6, 0x75, 0x21, 0x2d, 0x56, 0x26, 0x1b, + 0x4f, 0x2e, 0xb1, 0x5b, +}; +static const unsigned char kat3061_addinpr2[] = {0}; +static const unsigned char kat3061_retbits[] = { + 0x7d, 0xf5, 0x80, 0x0c, 0x74, 0x2e, 0xce, 0x36, 0x30, 0x89, 0xa0, 0x09, + 0xb9, 0x4d, 0x86, 0x4b, 0x0d, 0x0d, 0x91, 0xa3, 0xee, 0x8d, 0xa7, 0xaf, + 0x8b, 0x0f, 0x30, 0x79, 0x54, 0xaa, 0xe5, 0x64, 0x52, 0x6a, 0x3e, 0x67, + 0x21, 0x58, 0x4d, 0x2d, 0xc7, 0x03, 0xeb, 0xb1, 0xbc, 0x7b, 0xc7, 0xb7, + 0xfb, 0x4a, 0x38, 0xfc, 0xea, 0x91, 0x48, 0x2f, 0x71, 0x41, 0x9c, 0xc4, + 0x1d, 0x31, 0xc4, 0x37, +}; +static const struct drbg_kat_pr_true kat3061_t = { + 0, kat3061_entropyin, kat3061_nonce, kat3061_persstr, + kat3061_entropyinpr1, kat3061_addinpr1, kat3061_entropyinpr2, + kat3061_addinpr2, kat3061_retbits +}; +static const struct drbg_kat kat3061 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3061_t +}; + +static const unsigned char kat3062_entropyin[] = { + 0x2c, 0x90, 0x3a, 0x58, 0x4d, 0x80, 0x9c, 0x67, 0x53, 0x4a, 0xd1, 0x9d, + 0xbc, 0xf1, 0x51, 0xba, +}; +static const unsigned char kat3062_nonce[] = { + 0x37, 0xcf, 0x55, 0x50, 0xf2, 0x4c, 0x2f, 0xff, +}; +static const unsigned char kat3062_persstr[] = {0}; +static const unsigned char kat3062_entropyinpr1[] = { + 0xad, 0x81, 0x97, 0xfc, 0xa9, 0x5f, 0x16, 0x82, 0xc2, 0xe1, 0x00, 0xd7, + 0x31, 0xba, 0xe1, 0xbd, +}; +static const unsigned char kat3062_addinpr1[] = {0}; +static const unsigned char kat3062_entropyinpr2[] = { + 0xa7, 0x89, 0xd8, 0x04, 0x60, 0x82, 0xbc, 0x0a, 0x8f, 0x6c, 0xf4, 0x65, + 0xb8, 0x73, 0x26, 0x11, +}; +static const unsigned char kat3062_addinpr2[] = {0}; +static const unsigned char kat3062_retbits[] = { + 0xf1, 0xab, 0x89, 0x1f, 0xe1, 0xf3, 0x25, 0xd9, 0x77, 0x4c, 0xe2, 0x5a, + 0x6c, 0x1e, 0x8c, 0xbf, 0xad, 0xe0, 0xd7, 0xa0, 0xf4, 0x34, 0xae, 0x69, + 0xa5, 0xa4, 0xea, 0x38, 0xdb, 0x9b, 0x01, 0x9a, 0xd8, 0x8c, 0x8b, 0xfd, + 0xc4, 0x32, 0x30, 0x6b, 0x52, 0x3a, 0xd3, 0x95, 0x26, 0xc2, 0x8c, 0x9a, + 0xec, 0x33, 0x51, 0x18, 0x34, 0xa0, 0xbe, 0x33, 0x9d, 0x51, 0x21, 0xc8, + 0x8f, 0x56, 0x84, 0x31, +}; +static const struct drbg_kat_pr_true kat3062_t = { + 1, kat3062_entropyin, kat3062_nonce, kat3062_persstr, + kat3062_entropyinpr1, kat3062_addinpr1, kat3062_entropyinpr2, + kat3062_addinpr2, kat3062_retbits +}; +static const struct drbg_kat kat3062 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3062_t +}; + +static const unsigned char kat3063_entropyin[] = { + 0xa1, 0x0a, 0x44, 0xb8, 0xd7, 0xde, 0x35, 0x31, 0x8b, 0xa3, 0x34, 0x26, + 0x7a, 0x62, 0xc4, 0xc5, +}; +static const unsigned char kat3063_nonce[] = { + 0xf4, 0x48, 0x27, 0x72, 0x71, 0xd0, 0xf0, 0x37, +}; +static const unsigned char kat3063_persstr[] = {0}; +static const unsigned char kat3063_entropyinpr1[] = { + 0x17, 0x4a, 0xc8, 0xac, 0x31, 0xe3, 0x31, 0xaf, 0xb8, 0x95, 0x8a, 0x03, + 0xc9, 0xee, 0x15, 0xa1, +}; +static const unsigned char kat3063_addinpr1[] = {0}; +static const unsigned char kat3063_entropyinpr2[] = { + 0x50, 0x1b, 0xbc, 0x9a, 0xc3, 0xb1, 0xef, 0x43, 0x17, 0xfc, 0xf0, 0x88, + 0x6e, 0x5a, 0x2d, 0xc8, +}; +static const unsigned char kat3063_addinpr2[] = {0}; +static const unsigned char kat3063_retbits[] = { + 0x51, 0x8a, 0xe8, 0x44, 0x9c, 0xe3, 0x94, 0x4c, 0xa3, 0x61, 0x11, 0xfc, + 0xf2, 0x78, 0x66, 0xe6, 0x4a, 0x21, 0x78, 0x8e, 0x28, 0xdd, 0xf1, 0x4a, + 0x35, 0x36, 0x6a, 0x71, 0x27, 0x3d, 0x53, 0xfb, 0x7f, 0x49, 0xed, 0x7d, + 0xc1, 0x1e, 0xf0, 0xac, 0xa2, 0x47, 0xf6, 0x12, 0x53, 0xdd, 0xbe, 0x26, + 0xf0, 0x41, 0xec, 0x4f, 0xe5, 0x67, 0x7b, 0x5f, 0x62, 0xb9, 0xcf, 0xfb, + 0xa1, 0xa0, 0x6c, 0xf4, +}; +static const struct drbg_kat_pr_true kat3063_t = { + 2, kat3063_entropyin, kat3063_nonce, kat3063_persstr, + kat3063_entropyinpr1, kat3063_addinpr1, kat3063_entropyinpr2, + kat3063_addinpr2, kat3063_retbits +}; +static const struct drbg_kat kat3063 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3063_t +}; + +static const unsigned char kat3064_entropyin[] = { + 0x98, 0x4b, 0x69, 0xbf, 0x0f, 0x56, 0x1b, 0xc0, 0xf5, 0x01, 0xff, 0x45, + 0xbf, 0x0d, 0xda, 0x82, +}; +static const unsigned char kat3064_nonce[] = { + 0x18, 0xec, 0xe7, 0x3a, 0x78, 0x3a, 0x37, 0xde, +}; +static const unsigned char kat3064_persstr[] = {0}; +static const unsigned char kat3064_entropyinpr1[] = { + 0x69, 0x65, 0x58, 0x7c, 0xab, 0xdd, 0x23, 0x0d, 0xa5, 0x9b, 0x50, 0x44, + 0xc1, 0x00, 0x25, 0xd7, +}; +static const unsigned char kat3064_addinpr1[] = {0}; +static const unsigned char kat3064_entropyinpr2[] = { + 0xff, 0xd7, 0x93, 0xd2, 0x29, 0x03, 0x52, 0xb8, 0xa3, 0x37, 0x2b, 0xaa, + 0x32, 0xf2, 0xec, 0x2b, +}; +static const unsigned char kat3064_addinpr2[] = {0}; +static const unsigned char kat3064_retbits[] = { + 0x38, 0xec, 0x41, 0xbc, 0x34, 0x84, 0xde, 0xa0, 0x64, 0xce, 0x15, 0xa1, + 0x3d, 0xd9, 0xd9, 0x31, 0x4a, 0x5d, 0x23, 0x79, 0x65, 0xe7, 0x64, 0xf0, + 0xf3, 0xc7, 0x8d, 0x47, 0xac, 0x59, 0xa6, 0x8f, 0x54, 0xf0, 0xe4, 0xa9, + 0x48, 0x90, 0x09, 0xf5, 0x5e, 0xbb, 0x5a, 0xb0, 0x85, 0x94, 0x53, 0xb7, + 0xcb, 0xb1, 0x48, 0xc0, 0xcc, 0x7a, 0x97, 0x50, 0xe6, 0xa9, 0xf2, 0xfa, + 0x05, 0xe2, 0xee, 0x13, +}; +static const struct drbg_kat_pr_true kat3064_t = { + 3, kat3064_entropyin, kat3064_nonce, kat3064_persstr, + kat3064_entropyinpr1, kat3064_addinpr1, kat3064_entropyinpr2, + kat3064_addinpr2, kat3064_retbits +}; +static const struct drbg_kat kat3064 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3064_t +}; + +static const unsigned char kat3065_entropyin[] = { + 0xe4, 0x15, 0x92, 0xb0, 0x2d, 0x67, 0xa0, 0x14, 0xa0, 0xa3, 0x9e, 0xa4, + 0x82, 0x2f, 0x21, 0x00, +}; +static const unsigned char kat3065_nonce[] = { + 0x57, 0x75, 0x45, 0x4f, 0xbb, 0x79, 0x37, 0x1f, +}; +static const unsigned char kat3065_persstr[] = {0}; +static const unsigned char kat3065_entropyinpr1[] = { + 0xa8, 0x14, 0xfc, 0xc9, 0x32, 0xd8, 0xc7, 0x6f, 0x63, 0x02, 0xc9, 0xf1, + 0x14, 0x17, 0x80, 0x86, +}; +static const unsigned char kat3065_addinpr1[] = {0}; +static const unsigned char kat3065_entropyinpr2[] = { + 0x4a, 0x16, 0x1c, 0x9f, 0xff, 0x6f, 0xdf, 0xb5, 0x9a, 0x23, 0x5d, 0x8b, + 0xe5, 0x90, 0xd1, 0x24, +}; +static const unsigned char kat3065_addinpr2[] = {0}; +static const unsigned char kat3065_retbits[] = { + 0xb8, 0x43, 0x87, 0x91, 0xeb, 0xd1, 0x51, 0xc8, 0xe7, 0x85, 0xbc, 0x36, + 0x83, 0xb0, 0x83, 0xb8, 0xa5, 0xf7, 0xc4, 0x48, 0x43, 0xf9, 0x57, 0xae, + 0xf6, 0x69, 0xc1, 0x11, 0x17, 0x31, 0xea, 0xf7, 0x27, 0x16, 0x48, 0x3e, + 0x84, 0x82, 0x24, 0xfa, 0x7c, 0xaa, 0x9b, 0x79, 0x0e, 0xae, 0x8c, 0xef, + 0x81, 0x2c, 0xf7, 0x13, 0x1c, 0x71, 0xbd, 0x4f, 0x72, 0x37, 0x21, 0xf9, + 0xe9, 0x22, 0xab, 0xe7, +}; +static const struct drbg_kat_pr_true kat3065_t = { + 4, kat3065_entropyin, kat3065_nonce, kat3065_persstr, + kat3065_entropyinpr1, kat3065_addinpr1, kat3065_entropyinpr2, + kat3065_addinpr2, kat3065_retbits +}; +static const struct drbg_kat kat3065 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3065_t +}; + +static const unsigned char kat3066_entropyin[] = { + 0x44, 0x70, 0x5e, 0x16, 0xce, 0x1e, 0x70, 0xc2, 0xfb, 0xeb, 0x43, 0xc0, + 0x47, 0x37, 0x41, 0xf1, +}; +static const unsigned char kat3066_nonce[] = { + 0x9b, 0xa3, 0x2c, 0x15, 0x59, 0xe1, 0xe9, 0x07, +}; +static const unsigned char kat3066_persstr[] = {0}; +static const unsigned char kat3066_entropyinpr1[] = { + 0xe5, 0x93, 0x20, 0xb3, 0x5d, 0x24, 0xd1, 0x5f, 0x30, 0x45, 0xb1, 0xc7, + 0xa7, 0x71, 0x93, 0x80, +}; +static const unsigned char kat3066_addinpr1[] = {0}; +static const unsigned char kat3066_entropyinpr2[] = { + 0xcf, 0xbe, 0xcf, 0x64, 0xe8, 0x01, 0x5c, 0x1d, 0xeb, 0xdb, 0x85, 0xbb, + 0xca, 0x96, 0x1c, 0x35, +}; +static const unsigned char kat3066_addinpr2[] = {0}; +static const unsigned char kat3066_retbits[] = { + 0xe2, 0xc9, 0x30, 0xe4, 0x26, 0x9b, 0x41, 0x97, 0x48, 0xb6, 0xde, 0xd5, + 0xd1, 0x38, 0xec, 0x5f, 0x04, 0x92, 0xaa, 0x49, 0x57, 0x47, 0x01, 0x0a, + 0x21, 0x76, 0x64, 0x55, 0xcc, 0x5c, 0xb2, 0xf9, 0xf7, 0x7e, 0x39, 0x46, + 0x5a, 0x73, 0x4f, 0x2c, 0xb9, 0x9f, 0xc5, 0x50, 0x63, 0x71, 0x07, 0x00, + 0x22, 0x38, 0xe0, 0x56, 0x04, 0x6f, 0xc9, 0xb9, 0x95, 0x8f, 0x4c, 0x29, + 0xd1, 0x9c, 0xf7, 0x39, +}; +static const struct drbg_kat_pr_true kat3066_t = { + 5, kat3066_entropyin, kat3066_nonce, kat3066_persstr, + kat3066_entropyinpr1, kat3066_addinpr1, kat3066_entropyinpr2, + kat3066_addinpr2, kat3066_retbits +}; +static const struct drbg_kat kat3066 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3066_t +}; + +static const unsigned char kat3067_entropyin[] = { + 0x4c, 0x2c, 0x72, 0x14, 0x64, 0xe3, 0x8d, 0x41, 0xea, 0x24, 0xaf, 0x4e, + 0x74, 0xb2, 0x88, 0x86, +}; +static const unsigned char kat3067_nonce[] = { + 0x8a, 0xc5, 0xc7, 0x12, 0x91, 0x9c, 0xa5, 0xe2, +}; +static const unsigned char kat3067_persstr[] = {0}; +static const unsigned char kat3067_entropyinpr1[] = { + 0x78, 0x6d, 0x6d, 0xc8, 0x30, 0x30, 0x25, 0xf1, 0xfd, 0x6c, 0x9a, 0x3a, + 0xc4, 0x1a, 0x22, 0xf4, +}; +static const unsigned char kat3067_addinpr1[] = {0}; +static const unsigned char kat3067_entropyinpr2[] = { + 0x1b, 0xb8, 0x7c, 0xe5, 0x5b, 0xc2, 0x4b, 0x41, 0x11, 0x46, 0x4a, 0x72, + 0x12, 0xbb, 0x28, 0xef, +}; +static const unsigned char kat3067_addinpr2[] = {0}; +static const unsigned char kat3067_retbits[] = { + 0x93, 0xac, 0x42, 0xd6, 0x9e, 0xb0, 0xdf, 0xfb, 0xe6, 0x8b, 0xc0, 0x0d, + 0xdf, 0xfb, 0xa5, 0x57, 0xf8, 0xf4, 0x03, 0xfe, 0x56, 0xa9, 0x57, 0x90, + 0x5b, 0x09, 0x45, 0xeb, 0x21, 0x27, 0x70, 0x4d, 0x5a, 0xca, 0x09, 0x89, + 0x14, 0xa1, 0xc3, 0x94, 0xb0, 0x6b, 0xfe, 0xba, 0xc2, 0x44, 0xc1, 0x5a, + 0x49, 0x33, 0x65, 0xa0, 0x49, 0x17, 0x70, 0xcd, 0xd5, 0xaf, 0x21, 0x11, + 0xc9, 0x49, 0xae, 0x57, +}; +static const struct drbg_kat_pr_true kat3067_t = { + 6, kat3067_entropyin, kat3067_nonce, kat3067_persstr, + kat3067_entropyinpr1, kat3067_addinpr1, kat3067_entropyinpr2, + kat3067_addinpr2, kat3067_retbits +}; +static const struct drbg_kat kat3067 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3067_t +}; + +static const unsigned char kat3068_entropyin[] = { + 0xec, 0x9f, 0xcf, 0x35, 0xa8, 0xef, 0x18, 0x54, 0x0f, 0xea, 0xa9, 0xa7, + 0xa4, 0x67, 0xb8, 0x1c, +}; +static const unsigned char kat3068_nonce[] = { + 0xa1, 0x6e, 0x4c, 0x1a, 0x13, 0xc2, 0x2b, 0x4c, +}; +static const unsigned char kat3068_persstr[] = {0}; +static const unsigned char kat3068_entropyinpr1[] = { + 0x6f, 0x9b, 0x4f, 0x30, 0x15, 0x0f, 0x4e, 0xa7, 0x93, 0x57, 0x32, 0xf2, + 0x7b, 0x06, 0xa7, 0xcd, +}; +static const unsigned char kat3068_addinpr1[] = {0}; +static const unsigned char kat3068_entropyinpr2[] = { + 0x81, 0xda, 0x45, 0x03, 0xf1, 0x76, 0xd3, 0x0c, 0x6c, 0xc1, 0x65, 0x65, + 0xd3, 0x74, 0x5f, 0xe6, +}; +static const unsigned char kat3068_addinpr2[] = {0}; +static const unsigned char kat3068_retbits[] = { + 0x70, 0x81, 0x81, 0x47, 0x98, 0x53, 0xb6, 0x4b, 0x5c, 0x95, 0x0f, 0xca, + 0xb8, 0x97, 0x0e, 0xf2, 0x6d, 0xb6, 0x63, 0xc7, 0x46, 0xd9, 0x12, 0x53, + 0x5a, 0xe1, 0x73, 0x6b, 0x74, 0xdd, 0xe2, 0x51, 0x53, 0xe5, 0x92, 0xd6, + 0x65, 0xbc, 0xcf, 0xc9, 0xa2, 0x90, 0xa7, 0x37, 0x35, 0x19, 0x84, 0x82, + 0x33, 0x4d, 0xa6, 0x72, 0x33, 0x97, 0x9c, 0x4a, 0xa0, 0xb3, 0x1f, 0x69, + 0x86, 0x0c, 0xfb, 0xc4, +}; +static const struct drbg_kat_pr_true kat3068_t = { + 7, kat3068_entropyin, kat3068_nonce, kat3068_persstr, + kat3068_entropyinpr1, kat3068_addinpr1, kat3068_entropyinpr2, + kat3068_addinpr2, kat3068_retbits +}; +static const struct drbg_kat kat3068 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3068_t +}; + +static const unsigned char kat3069_entropyin[] = { + 0x65, 0xf6, 0xbe, 0xee, 0xfe, 0xd4, 0x08, 0x41, 0xe2, 0x27, 0xb4, 0x44, + 0xea, 0x24, 0xeb, 0x58, +}; +static const unsigned char kat3069_nonce[] = { + 0x29, 0x5e, 0xee, 0x1e, 0x6e, 0xf2, 0xd5, 0x23, +}; +static const unsigned char kat3069_persstr[] = {0}; +static const unsigned char kat3069_entropyinpr1[] = { + 0xf6, 0xeb, 0xd5, 0x3a, 0x92, 0xaf, 0x22, 0x7b, 0x0e, 0xf2, 0xf7, 0xaf, + 0xa4, 0x6e, 0x84, 0xc5, +}; +static const unsigned char kat3069_addinpr1[] = {0}; +static const unsigned char kat3069_entropyinpr2[] = { + 0x9e, 0xea, 0xe2, 0x44, 0xfc, 0x53, 0x7b, 0x4d, 0xf0, 0xb3, 0x40, 0x02, + 0x0f, 0x44, 0xc2, 0x70, +}; +static const unsigned char kat3069_addinpr2[] = {0}; +static const unsigned char kat3069_retbits[] = { + 0x82, 0x1c, 0xf9, 0xf6, 0xeb, 0xa8, 0xcf, 0xe9, 0xe2, 0x8f, 0xba, 0xb3, + 0x00, 0xeb, 0x77, 0xde, 0xda, 0xa3, 0xc4, 0x0a, 0xf0, 0x89, 0x6c, 0x43, + 0x60, 0xdd, 0x4c, 0x17, 0xcd, 0xfb, 0x72, 0x6d, 0x13, 0xf0, 0x8e, 0xa8, + 0x5f, 0x20, 0xf9, 0x0b, 0x2e, 0x42, 0x75, 0xcc, 0xe0, 0xff, 0x63, 0x80, + 0x7d, 0xc4, 0x1c, 0xf2, 0xb2, 0x0d, 0x08, 0xe0, 0x1c, 0xb7, 0x36, 0xae, + 0xa2, 0xa4, 0xb5, 0xc0, +}; +static const struct drbg_kat_pr_true kat3069_t = { + 8, kat3069_entropyin, kat3069_nonce, kat3069_persstr, + kat3069_entropyinpr1, kat3069_addinpr1, kat3069_entropyinpr2, + kat3069_addinpr2, kat3069_retbits +}; +static const struct drbg_kat kat3069 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3069_t +}; + +static const unsigned char kat3070_entropyin[] = { + 0xc9, 0xec, 0x3e, 0xb2, 0x0e, 0xce, 0xd3, 0xd7, 0x7e, 0x32, 0xe4, 0x39, + 0xb4, 0xa2, 0xca, 0x42, +}; +static const unsigned char kat3070_nonce[] = { + 0x98, 0xc4, 0xae, 0xaa, 0xa2, 0xb4, 0x44, 0xbb, +}; +static const unsigned char kat3070_persstr[] = {0}; +static const unsigned char kat3070_entropyinpr1[] = { + 0xe4, 0x1b, 0x08, 0x1f, 0x39, 0xe8, 0xfb, 0x53, 0x0c, 0x3b, 0x24, 0x5c, + 0xaf, 0x6c, 0xf0, 0x6b, +}; +static const unsigned char kat3070_addinpr1[] = {0}; +static const unsigned char kat3070_entropyinpr2[] = { + 0x0f, 0x5d, 0x12, 0xd0, 0x12, 0x7e, 0x8f, 0xa6, 0x72, 0x3a, 0xab, 0x9f, + 0xe9, 0x0f, 0xc7, 0x70, +}; +static const unsigned char kat3070_addinpr2[] = {0}; +static const unsigned char kat3070_retbits[] = { + 0xdc, 0x99, 0x61, 0xbf, 0x94, 0xe1, 0x09, 0xa3, 0x8f, 0xf4, 0xc3, 0x36, + 0x02, 0xb3, 0xd5, 0x96, 0xac, 0x6d, 0x32, 0x3c, 0x1d, 0x30, 0x6d, 0x9e, + 0x19, 0x49, 0xb3, 0x25, 0x9a, 0x1c, 0xdc, 0xda, 0xe7, 0x68, 0xae, 0x7d, + 0xd6, 0x20, 0x91, 0x31, 0x84, 0x67, 0xfb, 0xc1, 0xcf, 0xe4, 0x33, 0xfe, + 0xf3, 0x95, 0xad, 0xa7, 0x72, 0x91, 0xb0, 0x8e, 0x69, 0x56, 0xad, 0x61, + 0xb3, 0x84, 0x07, 0x43, +}; +static const struct drbg_kat_pr_true kat3070_t = { + 9, kat3070_entropyin, kat3070_nonce, kat3070_persstr, + kat3070_entropyinpr1, kat3070_addinpr1, kat3070_entropyinpr2, + kat3070_addinpr2, kat3070_retbits +}; +static const struct drbg_kat kat3070 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3070_t +}; + +static const unsigned char kat3071_entropyin[] = { + 0x7f, 0xa7, 0x4d, 0x5d, 0xb4, 0x8c, 0xb3, 0x3b, 0x80, 0xa2, 0xad, 0x3b, + 0x9f, 0x81, 0x4d, 0x53, +}; +static const unsigned char kat3071_nonce[] = { + 0x0f, 0x7b, 0xae, 0xcc, 0xa1, 0x77, 0x19, 0xe9, +}; +static const unsigned char kat3071_persstr[] = {0}; +static const unsigned char kat3071_entropyinpr1[] = { + 0x4f, 0xbd, 0x9f, 0x7f, 0x73, 0x71, 0x36, 0x8d, 0xc6, 0xf9, 0x79, 0x69, + 0x69, 0xde, 0x23, 0x15, +}; +static const unsigned char kat3071_addinpr1[] = {0}; +static const unsigned char kat3071_entropyinpr2[] = { + 0x1b, 0xc1, 0x46, 0xf4, 0x43, 0x11, 0x66, 0xae, 0xbb, 0xff, 0xbb, 0x92, + 0xd6, 0x81, 0x4e, 0x52, +}; +static const unsigned char kat3071_addinpr2[] = {0}; +static const unsigned char kat3071_retbits[] = { + 0xb9, 0xf4, 0x8d, 0x30, 0xaf, 0x10, 0xe9, 0x73, 0x77, 0x4e, 0x8f, 0x76, + 0xf1, 0x36, 0x32, 0x97, 0x0e, 0x29, 0xa3, 0x5c, 0xc3, 0x52, 0x63, 0x44, + 0xbd, 0x27, 0xfd, 0x03, 0x02, 0xcc, 0x12, 0xc3, 0xbc, 0x54, 0xab, 0x3d, + 0xf7, 0x3e, 0x54, 0xba, 0xde, 0xad, 0x0e, 0xdf, 0x05, 0x87, 0x0d, 0x5d, + 0x07, 0x26, 0x20, 0x04, 0x22, 0x5b, 0x59, 0x65, 0x23, 0x49, 0x24, 0x59, + 0x8a, 0x8a, 0x86, 0x02, +}; +static const struct drbg_kat_pr_true kat3071_t = { + 10, kat3071_entropyin, kat3071_nonce, kat3071_persstr, + kat3071_entropyinpr1, kat3071_addinpr1, kat3071_entropyinpr2, + kat3071_addinpr2, kat3071_retbits +}; +static const struct drbg_kat kat3071 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3071_t +}; + +static const unsigned char kat3072_entropyin[] = { + 0x78, 0x6e, 0x01, 0xcd, 0xd8, 0xf4, 0x26, 0x6d, 0xa0, 0xb8, 0x9f, 0xee, + 0xe9, 0x0b, 0x59, 0x40, +}; +static const unsigned char kat3072_nonce[] = { + 0xf0, 0xc2, 0xa6, 0xe8, 0xb1, 0xc6, 0x52, 0x60, +}; +static const unsigned char kat3072_persstr[] = {0}; +static const unsigned char kat3072_entropyinpr1[] = { + 0xff, 0xd1, 0x43, 0x28, 0x17, 0x61, 0xbf, 0xbb, 0xbd, 0x58, 0x2d, 0x66, + 0xfb, 0x4f, 0x6f, 0x70, +}; +static const unsigned char kat3072_addinpr1[] = {0}; +static const unsigned char kat3072_entropyinpr2[] = { + 0x41, 0x36, 0xec, 0xf5, 0xfa, 0x60, 0xa6, 0xe4, 0x42, 0xec, 0xd0, 0x39, + 0x8a, 0x0b, 0x3f, 0x2f, +}; +static const unsigned char kat3072_addinpr2[] = {0}; +static const unsigned char kat3072_retbits[] = { + 0xf2, 0x48, 0x87, 0xa9, 0x5c, 0x06, 0x6c, 0x25, 0x87, 0x32, 0xf6, 0xa1, + 0x84, 0x47, 0x98, 0xf9, 0x2d, 0xcb, 0xee, 0xe8, 0xa1, 0xe8, 0x6f, 0xf1, + 0x25, 0xd7, 0xb0, 0x7a, 0xbd, 0x41, 0xf4, 0x52, 0x38, 0x8c, 0x44, 0x68, + 0xd1, 0x34, 0xa0, 0x96, 0xc3, 0x25, 0x58, 0x64, 0x4f, 0xc3, 0x31, 0x27, + 0x69, 0xf6, 0xae, 0x5d, 0x96, 0x1a, 0x73, 0x21, 0x01, 0x46, 0x0a, 0xc4, + 0x76, 0xd6, 0x6e, 0xa6, +}; +static const struct drbg_kat_pr_true kat3072_t = { + 11, kat3072_entropyin, kat3072_nonce, kat3072_persstr, + kat3072_entropyinpr1, kat3072_addinpr1, kat3072_entropyinpr2, + kat3072_addinpr2, kat3072_retbits +}; +static const struct drbg_kat kat3072 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3072_t +}; + +static const unsigned char kat3073_entropyin[] = { + 0x83, 0x36, 0x5a, 0x3a, 0xf6, 0x45, 0x00, 0xf4, 0x0e, 0xd9, 0x57, 0xcf, + 0xbe, 0x9a, 0x23, 0xad, +}; +static const unsigned char kat3073_nonce[] = { + 0xa4, 0xb8, 0x4e, 0x38, 0xf6, 0xda, 0xd5, 0xbb, +}; +static const unsigned char kat3073_persstr[] = {0}; +static const unsigned char kat3073_entropyinpr1[] = { + 0xbf, 0xf1, 0x5a, 0xef, 0xf6, 0x2a, 0x1e, 0x12, 0xde, 0x37, 0x30, 0xd0, + 0x15, 0xf4, 0xdd, 0xda, +}; +static const unsigned char kat3073_addinpr1[] = {0}; +static const unsigned char kat3073_entropyinpr2[] = { + 0xf1, 0x3c, 0xae, 0xa1, 0x37, 0xb7, 0xd1, 0xfe, 0x10, 0xa9, 0x8f, 0x27, + 0x94, 0x74, 0xf3, 0x3a, +}; +static const unsigned char kat3073_addinpr2[] = {0}; +static const unsigned char kat3073_retbits[] = { + 0x85, 0x93, 0x00, 0xc9, 0xa6, 0xb2, 0xa7, 0xf2, 0x36, 0xcc, 0xde, 0x7b, + 0x75, 0xb9, 0xf0, 0xfa, 0xaa, 0x2d, 0x6f, 0xea, 0x6e, 0x4a, 0x2f, 0xaf, + 0xa2, 0x50, 0x28, 0x34, 0x3a, 0xdf, 0xdd, 0x5a, 0x26, 0xf1, 0x03, 0x8b, + 0x3b, 0x99, 0x91, 0x3a, 0xa1, 0x00, 0x39, 0xcb, 0x6f, 0x80, 0xc2, 0x51, + 0xb8, 0x48, 0x07, 0x45, 0x93, 0x3b, 0x27, 0x8e, 0x61, 0xbb, 0xce, 0x00, + 0xc6, 0x10, 0x1a, 0x49, +}; +static const struct drbg_kat_pr_true kat3073_t = { + 12, kat3073_entropyin, kat3073_nonce, kat3073_persstr, + kat3073_entropyinpr1, kat3073_addinpr1, kat3073_entropyinpr2, + kat3073_addinpr2, kat3073_retbits +}; +static const struct drbg_kat kat3073 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3073_t +}; + +static const unsigned char kat3074_entropyin[] = { + 0x1d, 0x2a, 0xc9, 0x54, 0x04, 0x2e, 0xfc, 0xae, 0xad, 0xca, 0x1b, 0x9b, + 0x5b, 0x05, 0x12, 0xdf, +}; +static const unsigned char kat3074_nonce[] = { + 0x01, 0xb4, 0x00, 0x4f, 0x07, 0x9a, 0x97, 0x56, +}; +static const unsigned char kat3074_persstr[] = {0}; +static const unsigned char kat3074_entropyinpr1[] = { + 0x5b, 0x6e, 0x76, 0x0e, 0xcb, 0xff, 0x69, 0x14, 0x99, 0xf8, 0xc5, 0x58, + 0xfb, 0x30, 0xc9, 0xdf, +}; +static const unsigned char kat3074_addinpr1[] = {0}; +static const unsigned char kat3074_entropyinpr2[] = { + 0x19, 0x08, 0x2c, 0x17, 0xcb, 0x8c, 0x5b, 0x8a, 0x68, 0xe9, 0xaa, 0x9d, + 0xd5, 0xdc, 0xbe, 0x86, +}; +static const unsigned char kat3074_addinpr2[] = {0}; +static const unsigned char kat3074_retbits[] = { + 0x3f, 0xd5, 0x9d, 0x71, 0x24, 0x2b, 0x36, 0xc8, 0x4c, 0x1a, 0xf8, 0x08, + 0x7a, 0xce, 0xaa, 0x4c, 0xd1, 0x4e, 0xa0, 0xb4, 0xb7, 0x62, 0xda, 0xdc, + 0xfa, 0x2a, 0x4f, 0x8a, 0x88, 0x20, 0xcf, 0x32, 0xc6, 0x7d, 0x7c, 0x67, + 0x97, 0x92, 0x74, 0x30, 0x2e, 0x79, 0xbf, 0x01, 0xd6, 0xf8, 0xdb, 0x4f, + 0x14, 0x8d, 0xff, 0xf0, 0xc6, 0x63, 0xb6, 0x4f, 0x3b, 0x92, 0x62, 0x0a, + 0x0b, 0x16, 0x79, 0xb7, +}; +static const struct drbg_kat_pr_true kat3074_t = { + 13, kat3074_entropyin, kat3074_nonce, kat3074_persstr, + kat3074_entropyinpr1, kat3074_addinpr1, kat3074_entropyinpr2, + kat3074_addinpr2, kat3074_retbits +}; +static const struct drbg_kat kat3074 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3074_t +}; + +static const unsigned char kat3075_entropyin[] = { + 0xe3, 0xf0, 0x98, 0xbb, 0x88, 0xdd, 0xf4, 0x2f, 0xe9, 0x86, 0x97, 0x48, + 0x75, 0x2e, 0x83, 0x50, +}; +static const unsigned char kat3075_nonce[] = { + 0x7f, 0x5c, 0x85, 0xf0, 0x34, 0xfb, 0x21, 0xd3, +}; +static const unsigned char kat3075_persstr[] = {0}; +static const unsigned char kat3075_entropyinpr1[] = { + 0xed, 0xc0, 0xc4, 0x4a, 0x85, 0xe3, 0x93, 0x46, 0x65, 0x86, 0x29, 0x62, + 0x06, 0xc4, 0x1c, 0xa7, +}; +static const unsigned char kat3075_addinpr1[] = {0}; +static const unsigned char kat3075_entropyinpr2[] = { + 0x40, 0x57, 0x09, 0x83, 0x7e, 0x50, 0x2c, 0x58, 0x38, 0x89, 0x82, 0x99, + 0x4f, 0xf5, 0x04, 0xb6, +}; +static const unsigned char kat3075_addinpr2[] = {0}; +static const unsigned char kat3075_retbits[] = { + 0x38, 0x3e, 0x46, 0xb8, 0x67, 0x81, 0xf0, 0xc8, 0xc8, 0x3b, 0x7a, 0x78, + 0x69, 0x4f, 0xff, 0x5f, 0xdc, 0x6d, 0xe2, 0x51, 0x47, 0xe9, 0xdf, 0x25, + 0x0f, 0x99, 0x6b, 0xdc, 0x6a, 0x34, 0x18, 0xd4, 0x09, 0x66, 0x95, 0x4e, + 0x2a, 0x10, 0xcb, 0x87, 0xdc, 0xaf, 0xf1, 0xbe, 0x61, 0x3b, 0x03, 0xaf, + 0xd8, 0x9f, 0xef, 0x8b, 0x06, 0x7c, 0x99, 0xaa, 0xbf, 0x40, 0x12, 0xdb, + 0xef, 0xe2, 0x6f, 0x22, +}; +static const struct drbg_kat_pr_true kat3075_t = { + 14, kat3075_entropyin, kat3075_nonce, kat3075_persstr, + kat3075_entropyinpr1, kat3075_addinpr1, kat3075_entropyinpr2, + kat3075_addinpr2, kat3075_retbits +}; +static const struct drbg_kat kat3075 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 0, 64, &kat3075_t +}; + +static const unsigned char kat3076_entropyin[] = { + 0x52, 0xfb, 0xa9, 0x1f, 0xc9, 0x6f, 0xba, 0x39, 0x15, 0xb1, 0x15, 0xce, + 0xa9, 0x26, 0x3a, 0x8e, +}; +static const unsigned char kat3076_nonce[] = { + 0x64, 0x24, 0x0c, 0xc3, 0x1e, 0xf9, 0x93, 0xcf, +}; +static const unsigned char kat3076_persstr[] = {0}; +static const unsigned char kat3076_entropyinpr1[] = { + 0xac, 0xf1, 0x2f, 0xb3, 0xf6, 0x00, 0xc1, 0x09, 0x76, 0x47, 0x7d, 0x58, + 0xbd, 0x86, 0x5c, 0x8e, +}; +static const unsigned char kat3076_addinpr1[] = { + 0x71, 0x37, 0x19, 0x55, 0xa3, 0x71, 0xa1, 0xe4, 0x05, 0xa4, 0xb3, 0xc5, + 0x29, 0x45, 0xa6, 0x19, +}; +static const unsigned char kat3076_entropyinpr2[] = { + 0xcb, 0xd9, 0x8c, 0xb0, 0xac, 0x61, 0x54, 0x48, 0x7d, 0xbc, 0x83, 0xe4, + 0xfb, 0x63, 0x3c, 0x5b, +}; +static const unsigned char kat3076_addinpr2[] = { + 0x43, 0xec, 0xaa, 0xf4, 0x15, 0x45, 0xde, 0xab, 0x15, 0xda, 0x0f, 0x48, + 0xcf, 0x7c, 0x9c, 0x7e, +}; +static const unsigned char kat3076_retbits[] = { + 0x88, 0x42, 0x7b, 0xcf, 0x8c, 0xc6, 0xbd, 0x31, 0xfe, 0xfa, 0x97, 0xa6, + 0x17, 0x8b, 0x50, 0x90, 0xd3, 0x95, 0x4a, 0x76, 0x57, 0x94, 0x14, 0xe7, + 0x97, 0xeb, 0xac, 0x99, 0x38, 0x40, 0x8e, 0x60, 0x0f, 0xce, 0xef, 0x88, + 0x4a, 0x79, 0x2c, 0x6c, 0x7c, 0xf6, 0x3e, 0x76, 0xfd, 0xde, 0x05, 0xac, + 0xf9, 0x05, 0xa7, 0x7c, 0x2c, 0x31, 0xbc, 0xbf, 0x7c, 0x86, 0xe0, 0xc5, + 0xb5, 0x9b, 0x68, 0x87, +}; +static const struct drbg_kat_pr_true kat3076_t = { + 0, kat3076_entropyin, kat3076_nonce, kat3076_persstr, + kat3076_entropyinpr1, kat3076_addinpr1, kat3076_entropyinpr2, + kat3076_addinpr2, kat3076_retbits +}; +static const struct drbg_kat kat3076 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3076_t +}; + +static const unsigned char kat3077_entropyin[] = { + 0x78, 0x45, 0xd9, 0x6b, 0x3f, 0x43, 0xbd, 0xe5, 0xdf, 0x61, 0x43, 0x54, + 0x06, 0xe1, 0x87, 0x26, +}; +static const unsigned char kat3077_nonce[] = { + 0x82, 0xce, 0xbe, 0x5b, 0x45, 0x45, 0x89, 0x27, +}; +static const unsigned char kat3077_persstr[] = {0}; +static const unsigned char kat3077_entropyinpr1[] = { + 0x84, 0xdf, 0xae, 0x2a, 0xf8, 0x9b, 0x22, 0x04, 0x14, 0xf5, 0x94, 0x50, + 0xf6, 0xcb, 0x00, 0x71, +}; +static const unsigned char kat3077_addinpr1[] = { + 0xb6, 0xd9, 0xbd, 0xb4, 0x77, 0xbc, 0xf7, 0x6b, 0xc4, 0xde, 0xce, 0x11, + 0x10, 0x49, 0xec, 0xc8, +}; +static const unsigned char kat3077_entropyinpr2[] = { + 0x0b, 0x9c, 0x98, 0x78, 0x1c, 0x42, 0xa6, 0x06, 0x30, 0x2b, 0xb2, 0xc5, + 0xdd, 0xa6, 0x20, 0x93, +}; +static const unsigned char kat3077_addinpr2[] = { + 0xca, 0x80, 0x05, 0xe7, 0x63, 0x1f, 0x2f, 0x30, 0x1b, 0x76, 0x79, 0xf6, + 0x88, 0x64, 0xbc, 0xc3, +}; +static const unsigned char kat3077_retbits[] = { + 0xff, 0x60, 0x32, 0x51, 0xc6, 0x2c, 0x99, 0xf9, 0xb2, 0xde, 0x77, 0xe6, + 0xfe, 0x61, 0xa9, 0x6f, 0x83, 0xd3, 0x22, 0xe8, 0x2e, 0x1b, 0xed, 0xb1, + 0x4d, 0x5a, 0xb7, 0x74, 0x71, 0x86, 0x74, 0x5f, 0xef, 0x1f, 0x61, 0x72, + 0x70, 0x16, 0x89, 0x5f, 0x56, 0xec, 0x26, 0x51, 0xc9, 0x39, 0x28, 0x1e, + 0x72, 0xd8, 0xcc, 0x50, 0x4c, 0x68, 0xf8, 0xb7, 0x45, 0x94, 0xf3, 0xf8, + 0x04, 0x0a, 0xb5, 0x29, +}; +static const struct drbg_kat_pr_true kat3077_t = { + 1, kat3077_entropyin, kat3077_nonce, kat3077_persstr, + kat3077_entropyinpr1, kat3077_addinpr1, kat3077_entropyinpr2, + kat3077_addinpr2, kat3077_retbits +}; +static const struct drbg_kat kat3077 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3077_t +}; + +static const unsigned char kat3078_entropyin[] = { + 0xdf, 0x55, 0x3a, 0x75, 0x0e, 0xcc, 0xeb, 0xd0, 0x30, 0xc9, 0xd3, 0x17, + 0xe6, 0xe8, 0xf0, 0x05, +}; +static const unsigned char kat3078_nonce[] = { + 0x07, 0xca, 0x4e, 0xe0, 0x3c, 0x5f, 0x66, 0x27, +}; +static const unsigned char kat3078_persstr[] = {0}; +static const unsigned char kat3078_entropyinpr1[] = { + 0x0b, 0x40, 0x33, 0x04, 0xdf, 0xb9, 0xa6, 0xf1, 0x05, 0x18, 0xa9, 0x0e, + 0x4a, 0x94, 0x49, 0x86, +}; +static const unsigned char kat3078_addinpr1[] = { + 0x8b, 0x0d, 0xb1, 0xfb, 0xeb, 0x17, 0x25, 0xce, 0x21, 0x24, 0x86, 0xff, + 0x44, 0x58, 0xc7, 0xb0, +}; +static const unsigned char kat3078_entropyinpr2[] = { + 0x14, 0xe1, 0xc1, 0xc9, 0x4f, 0xad, 0x18, 0x8e, 0x89, 0x91, 0x16, 0x8b, + 0x96, 0x63, 0xf8, 0xa9, +}; +static const unsigned char kat3078_addinpr2[] = { + 0x68, 0x25, 0xbf, 0xd9, 0xe5, 0x8c, 0xad, 0x4b, 0xf5, 0xd8, 0x08, 0xd8, + 0xf6, 0x7c, 0xa5, 0x2f, +}; +static const unsigned char kat3078_retbits[] = { + 0xbb, 0x09, 0x62, 0x5c, 0xd8, 0xec, 0x66, 0x07, 0x37, 0x20, 0x1c, 0x56, + 0xc1, 0xe8, 0xd1, 0x5b, 0x25, 0x10, 0x67, 0x4b, 0xe1, 0x24, 0x44, 0xce, + 0xd6, 0x88, 0x15, 0xcc, 0x68, 0x04, 0x82, 0xb1, 0x3f, 0x9c, 0x25, 0xce, + 0xfb, 0xcf, 0x9d, 0x8a, 0x64, 0xba, 0xe8, 0x5a, 0xb8, 0x32, 0xb5, 0x10, + 0x11, 0xcd, 0x9f, 0x9c, 0x5a, 0x2a, 0x7b, 0xfd, 0xc1, 0xfe, 0x20, 0x54, + 0x1c, 0xff, 0x03, 0x03, +}; +static const struct drbg_kat_pr_true kat3078_t = { + 2, kat3078_entropyin, kat3078_nonce, kat3078_persstr, + kat3078_entropyinpr1, kat3078_addinpr1, kat3078_entropyinpr2, + kat3078_addinpr2, kat3078_retbits +}; +static const struct drbg_kat kat3078 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3078_t +}; + +static const unsigned char kat3079_entropyin[] = { + 0x82, 0xa2, 0xdf, 0x7c, 0x78, 0xfb, 0x57, 0x3d, 0x99, 0x6e, 0x41, 0x2a, + 0x61, 0xee, 0x9b, 0x5e, +}; +static const unsigned char kat3079_nonce[] = { + 0x06, 0xc4, 0x6a, 0x31, 0x2d, 0xcb, 0x55, 0xbe, +}; +static const unsigned char kat3079_persstr[] = {0}; +static const unsigned char kat3079_entropyinpr1[] = { + 0x38, 0x58, 0x53, 0xa0, 0x1c, 0x8f, 0xd4, 0x0b, 0xa0, 0x0a, 0xc6, 0x4b, + 0xb8, 0xb4, 0x5a, 0x78, +}; +static const unsigned char kat3079_addinpr1[] = { + 0x66, 0xc1, 0xa8, 0xca, 0xb3, 0xfa, 0x3e, 0xdc, 0x47, 0x8d, 0xb0, 0x71, + 0xb8, 0xe9, 0x46, 0xa0, +}; +static const unsigned char kat3079_entropyinpr2[] = { + 0x66, 0x94, 0x18, 0xdf, 0x72, 0x06, 0xb6, 0x4b, 0xd6, 0xd0, 0x08, 0xcd, + 0x4d, 0xbf, 0xae, 0x89, +}; +static const unsigned char kat3079_addinpr2[] = { + 0xea, 0xc6, 0xad, 0xa5, 0x43, 0x9d, 0x48, 0x80, 0xd5, 0xb3, 0x5b, 0x10, + 0x43, 0x4b, 0x29, 0xf3, +}; +static const unsigned char kat3079_retbits[] = { + 0x3b, 0x17, 0x07, 0xad, 0x87, 0xf9, 0xb6, 0xd5, 0xef, 0xc3, 0x62, 0xc5, + 0x52, 0xf2, 0xd0, 0xd9, 0x5e, 0xcc, 0x84, 0x1c, 0xb4, 0xee, 0xf3, 0x03, + 0x0c, 0xd6, 0x82, 0x42, 0xef, 0xec, 0xac, 0xc6, 0xcd, 0xea, 0x6b, 0x64, + 0x1c, 0x0a, 0x1c, 0xfc, 0x06, 0xd1, 0x00, 0xce, 0x54, 0x29, 0x76, 0xcf, + 0xc3, 0x84, 0x0f, 0xef, 0x3d, 0x0e, 0x61, 0xc9, 0x3e, 0x7e, 0xc0, 0x28, + 0xc4, 0xf4, 0x69, 0x42, +}; +static const struct drbg_kat_pr_true kat3079_t = { + 3, kat3079_entropyin, kat3079_nonce, kat3079_persstr, + kat3079_entropyinpr1, kat3079_addinpr1, kat3079_entropyinpr2, + kat3079_addinpr2, kat3079_retbits +}; +static const struct drbg_kat kat3079 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3079_t +}; + +static const unsigned char kat3080_entropyin[] = { + 0xf4, 0xf4, 0x91, 0xfc, 0x1f, 0x81, 0xcb, 0x62, 0xf9, 0x54, 0x9b, 0x63, + 0x81, 0xf6, 0x8e, 0x3b, +}; +static const unsigned char kat3080_nonce[] = { + 0x16, 0x9a, 0x0b, 0x73, 0x71, 0xfd, 0x56, 0xa7, +}; +static const unsigned char kat3080_persstr[] = {0}; +static const unsigned char kat3080_entropyinpr1[] = { + 0xa7, 0xd4, 0x4f, 0x40, 0x0d, 0x62, 0x02, 0x19, 0x13, 0xd3, 0x96, 0xb3, + 0x76, 0x0a, 0x96, 0x7a, +}; +static const unsigned char kat3080_addinpr1[] = { + 0x04, 0x4c, 0x34, 0x2f, 0xda, 0xa5, 0x08, 0x8a, 0xf9, 0x91, 0x0c, 0x87, + 0x00, 0x50, 0x24, 0xe8, +}; +static const unsigned char kat3080_entropyinpr2[] = { + 0x7a, 0xc3, 0x94, 0x3f, 0x4c, 0x7e, 0xa0, 0x3d, 0xfa, 0x21, 0x0a, 0x74, + 0x56, 0xa9, 0x58, 0x36, +}; +static const unsigned char kat3080_addinpr2[] = { + 0xf7, 0x7b, 0x5c, 0xd8, 0x80, 0x61, 0x32, 0x51, 0x2f, 0x18, 0x3d, 0xff, + 0xcc, 0x80, 0xfe, 0xf6, +}; +static const unsigned char kat3080_retbits[] = { + 0x32, 0xef, 0xdd, 0x57, 0x29, 0x7a, 0x08, 0xc2, 0xe6, 0x3a, 0x36, 0x4b, + 0x46, 0x3c, 0xda, 0x3b, 0x0e, 0x64, 0xc9, 0x43, 0x1e, 0xb7, 0x05, 0xe5, + 0x4e, 0xce, 0x5e, 0x1e, 0x28, 0xbb, 0xbb, 0xe3, 0x4e, 0xac, 0xd3, 0x60, + 0x24, 0x0b, 0xf8, 0x11, 0x33, 0x55, 0x13, 0x01, 0x9f, 0xc6, 0x93, 0xdb, + 0xf4, 0x88, 0x89, 0x7d, 0x52, 0x40, 0xfe, 0xf5, 0xb9, 0x50, 0x43, 0x35, + 0x54, 0xc3, 0x7b, 0x06, +}; +static const struct drbg_kat_pr_true kat3080_t = { + 4, kat3080_entropyin, kat3080_nonce, kat3080_persstr, + kat3080_entropyinpr1, kat3080_addinpr1, kat3080_entropyinpr2, + kat3080_addinpr2, kat3080_retbits +}; +static const struct drbg_kat kat3080 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3080_t +}; + +static const unsigned char kat3081_entropyin[] = { + 0x6b, 0x43, 0xcb, 0x03, 0x28, 0x64, 0x72, 0x54, 0xde, 0x7e, 0x1f, 0x9b, + 0xde, 0x7c, 0x9c, 0xc0, +}; +static const unsigned char kat3081_nonce[] = { + 0xab, 0xe8, 0x34, 0xf8, 0x32, 0x20, 0x2b, 0x26, +}; +static const unsigned char kat3081_persstr[] = {0}; +static const unsigned char kat3081_entropyinpr1[] = { + 0x94, 0xe4, 0x43, 0x2d, 0x5c, 0xb7, 0xf8, 0xdf, 0xbc, 0x2d, 0x46, 0x80, + 0x69, 0xd5, 0x20, 0x87, +}; +static const unsigned char kat3081_addinpr1[] = { + 0x1e, 0x15, 0xff, 0xf4, 0xd8, 0x4a, 0x41, 0xba, 0xd2, 0x7e, 0xbc, 0xb3, + 0x14, 0x67, 0x5d, 0x37, +}; +static const unsigned char kat3081_entropyinpr2[] = { + 0x44, 0x5c, 0x35, 0xfa, 0x6d, 0xdf, 0x6b, 0x22, 0xc8, 0x9b, 0x55, 0x39, + 0x4b, 0x94, 0xe3, 0xa7, +}; +static const unsigned char kat3081_addinpr2[] = { + 0x90, 0xfe, 0x06, 0x93, 0x8e, 0x6c, 0x03, 0x62, 0x71, 0xb3, 0x7f, 0x8c, + 0xc0, 0xb0, 0x5f, 0x34, +}; +static const unsigned char kat3081_retbits[] = { + 0x79, 0x9c, 0xfb, 0x0c, 0x75, 0x48, 0x01, 0x39, 0x8e, 0x60, 0x34, 0x19, + 0x9a, 0x9c, 0xf8, 0x2b, 0x73, 0xc9, 0x1c, 0x13, 0x99, 0x18, 0xdc, 0xd4, + 0xb0, 0x4a, 0x1d, 0x1e, 0x75, 0xfd, 0x9a, 0x61, 0x6e, 0x7e, 0x72, 0x3d, + 0x37, 0x5b, 0xf2, 0xea, 0x1d, 0x6d, 0x56, 0x73, 0x1d, 0x76, 0x78, 0x11, + 0x83, 0x8f, 0xf5, 0x58, 0x36, 0xbf, 0xd7, 0x6d, 0x66, 0xc6, 0x87, 0xd0, + 0x37, 0xe3, 0x6f, 0xcd, +}; +static const struct drbg_kat_pr_true kat3081_t = { + 5, kat3081_entropyin, kat3081_nonce, kat3081_persstr, + kat3081_entropyinpr1, kat3081_addinpr1, kat3081_entropyinpr2, + kat3081_addinpr2, kat3081_retbits +}; +static const struct drbg_kat kat3081 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3081_t +}; + +static const unsigned char kat3082_entropyin[] = { + 0xa9, 0x73, 0x19, 0x04, 0x46, 0xba, 0xe0, 0x9e, 0x8c, 0x11, 0x3e, 0x75, + 0x84, 0x1b, 0x61, 0x80, +}; +static const unsigned char kat3082_nonce[] = { + 0x36, 0xa0, 0x5e, 0xad, 0x56, 0xca, 0xb9, 0x97, +}; +static const unsigned char kat3082_persstr[] = {0}; +static const unsigned char kat3082_entropyinpr1[] = { + 0xd8, 0xc8, 0x74, 0x14, 0x48, 0xd7, 0xb0, 0x1a, 0xca, 0xa6, 0xdd, 0x1b, + 0x93, 0xb9, 0x5b, 0xd3, +}; +static const unsigned char kat3082_addinpr1[] = { + 0x8c, 0xa0, 0x78, 0x3d, 0x6a, 0xd6, 0xe8, 0xe5, 0x13, 0x54, 0x35, 0xbf, + 0xaf, 0x18, 0x64, 0xec, +}; +static const unsigned char kat3082_entropyinpr2[] = { + 0xcb, 0x2d, 0xc1, 0x33, 0x76, 0x98, 0x44, 0xc6, 0x12, 0xf1, 0x6e, 0x08, + 0xa3, 0xfe, 0x56, 0x3b, +}; +static const unsigned char kat3082_addinpr2[] = { + 0xe4, 0x7c, 0xd6, 0x4e, 0xc0, 0x35, 0x43, 0x1d, 0x6b, 0x26, 0x1d, 0x08, + 0x08, 0x34, 0x96, 0x4f, +}; +static const unsigned char kat3082_retbits[] = { + 0xac, 0x1a, 0x7b, 0xbb, 0xf5, 0xa4, 0x76, 0xe9, 0x46, 0x92, 0x31, 0x40, + 0xdd, 0x89, 0x7d, 0xab, 0x7a, 0xe4, 0xee, 0xd5, 0x24, 0xcc, 0xcf, 0x26, + 0xb1, 0x11, 0xe4, 0x3b, 0xaa, 0x1c, 0x69, 0xd4, 0xf0, 0x25, 0x9d, 0x5e, + 0x2c, 0x0f, 0x70, 0x13, 0xc2, 0x16, 0xd2, 0x85, 0xfc, 0xbf, 0x31, 0xa7, + 0x1f, 0xc9, 0xed, 0x63, 0x69, 0xbc, 0xe4, 0xb1, 0x8d, 0x6e, 0x6d, 0xce, + 0x93, 0x90, 0x00, 0xe2, +}; +static const struct drbg_kat_pr_true kat3082_t = { + 6, kat3082_entropyin, kat3082_nonce, kat3082_persstr, + kat3082_entropyinpr1, kat3082_addinpr1, kat3082_entropyinpr2, + kat3082_addinpr2, kat3082_retbits +}; +static const struct drbg_kat kat3082 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3082_t +}; + +static const unsigned char kat3083_entropyin[] = { + 0xbc, 0xea, 0x9d, 0x57, 0x17, 0xa6, 0xc2, 0x77, 0x8f, 0x26, 0x0d, 0x25, + 0xd3, 0x58, 0xa1, 0xab, +}; +static const unsigned char kat3083_nonce[] = { + 0x1b, 0x31, 0x0e, 0x8e, 0xd5, 0x5a, 0xc9, 0xf6, +}; +static const unsigned char kat3083_persstr[] = {0}; +static const unsigned char kat3083_entropyinpr1[] = { + 0x51, 0x09, 0x37, 0xdf, 0xfc, 0x8f, 0x41, 0xf0, 0x56, 0xcc, 0x56, 0xde, + 0xb8, 0xcf, 0xcd, 0xf9, +}; +static const unsigned char kat3083_addinpr1[] = { + 0x5c, 0xb3, 0xbc, 0x94, 0x91, 0x0d, 0xbb, 0xae, 0x3a, 0x4c, 0x84, 0xa3, + 0xf3, 0x41, 0x6f, 0x4f, +}; +static const unsigned char kat3083_entropyinpr2[] = { + 0x2e, 0x55, 0x38, 0xca, 0x28, 0x98, 0xa5, 0xc1, 0x8c, 0x39, 0xa9, 0x5d, + 0xa0, 0x16, 0xa3, 0x08, +}; +static const unsigned char kat3083_addinpr2[] = { + 0x6d, 0xb0, 0x2e, 0x96, 0xbb, 0x28, 0xe0, 0x30, 0x28, 0x36, 0x7d, 0x0e, + 0x04, 0x1b, 0x10, 0x9d, +}; +static const unsigned char kat3083_retbits[] = { + 0x9d, 0x98, 0x97, 0xf0, 0xe3, 0x80, 0xdc, 0x65, 0x51, 0xde, 0x1d, 0xe0, + 0x0a, 0xd9, 0xba, 0x99, 0x49, 0x68, 0xd7, 0x51, 0x9f, 0x09, 0xb6, 0x68, + 0xcd, 0xeb, 0xdc, 0x20, 0x83, 0xb7, 0x48, 0x3b, 0x9a, 0xd5, 0x3e, 0x88, + 0x37, 0x38, 0xec, 0x23, 0x9e, 0x3a, 0x8e, 0x53, 0x4f, 0x76, 0xe4, 0x95, + 0xec, 0x7c, 0x6c, 0xdb, 0xa5, 0x90, 0x6a, 0x08, 0x48, 0xdc, 0x53, 0xa3, + 0xb5, 0x35, 0x1f, 0x3c, +}; +static const struct drbg_kat_pr_true kat3083_t = { + 7, kat3083_entropyin, kat3083_nonce, kat3083_persstr, + kat3083_entropyinpr1, kat3083_addinpr1, kat3083_entropyinpr2, + kat3083_addinpr2, kat3083_retbits +}; +static const struct drbg_kat kat3083 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3083_t +}; + +static const unsigned char kat3084_entropyin[] = { + 0xf9, 0x09, 0x2d, 0x9e, 0x68, 0x9f, 0x95, 0xdb, 0x71, 0xcd, 0x4e, 0xb0, + 0x03, 0x60, 0xc0, 0xa0, +}; +static const unsigned char kat3084_nonce[] = { + 0x65, 0xed, 0xbb, 0x2a, 0xf5, 0x31, 0x4e, 0x12, +}; +static const unsigned char kat3084_persstr[] = {0}; +static const unsigned char kat3084_entropyinpr1[] = { + 0xac, 0xb7, 0x21, 0x39, 0x82, 0x29, 0x7c, 0x67, 0x74, 0x96, 0x81, 0xbd, + 0x60, 0x1a, 0x46, 0x67, +}; +static const unsigned char kat3084_addinpr1[] = { + 0xd5, 0x33, 0x3e, 0x5b, 0x67, 0xf1, 0xe0, 0xfd, 0x90, 0xd0, 0x03, 0x41, + 0x97, 0xe2, 0x96, 0x40, +}; +static const unsigned char kat3084_entropyinpr2[] = { + 0xaa, 0x3a, 0xec, 0xb1, 0xb0, 0xdd, 0xa2, 0x83, 0xa2, 0xf9, 0xc7, 0xc0, + 0x7e, 0x58, 0x21, 0xce, +}; +static const unsigned char kat3084_addinpr2[] = { + 0xaf, 0x52, 0xa0, 0x61, 0x7b, 0xf9, 0xcf, 0xa9, 0x7b, 0x98, 0x41, 0xb7, + 0x52, 0x38, 0x2d, 0x86, +}; +static const unsigned char kat3084_retbits[] = { + 0x21, 0xb1, 0x3b, 0xc7, 0xa5, 0x2f, 0x3f, 0xa9, 0x5e, 0xd4, 0x76, 0x9c, + 0xc1, 0xb9, 0xd4, 0x0a, 0x30, 0x2f, 0x17, 0x6f, 0xac, 0x49, 0x6b, 0x3b, + 0x92, 0x3c, 0x1f, 0x12, 0x6d, 0xdb, 0x5e, 0xfe, 0xee, 0xf4, 0xa1, 0x01, + 0x86, 0xd6, 0x01, 0x63, 0x1d, 0xab, 0x8e, 0xb6, 0x3a, 0x5d, 0x9a, 0xf6, + 0xe3, 0x7a, 0xeb, 0xce, 0xaf, 0x61, 0xcb, 0x28, 0x8b, 0x3a, 0x74, 0xc6, + 0xf4, 0x64, 0xf6, 0x9a, +}; +static const struct drbg_kat_pr_true kat3084_t = { + 8, kat3084_entropyin, kat3084_nonce, kat3084_persstr, + kat3084_entropyinpr1, kat3084_addinpr1, kat3084_entropyinpr2, + kat3084_addinpr2, kat3084_retbits +}; +static const struct drbg_kat kat3084 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3084_t +}; + +static const unsigned char kat3085_entropyin[] = { + 0x95, 0x69, 0xa6, 0x9b, 0xbc, 0x7c, 0x64, 0x13, 0xa4, 0x13, 0x68, 0x99, + 0xc6, 0x0b, 0x93, 0x3a, +}; +static const unsigned char kat3085_nonce[] = { + 0x1a, 0x96, 0xa5, 0x62, 0xc1, 0x69, 0x28, 0xbe, +}; +static const unsigned char kat3085_persstr[] = {0}; +static const unsigned char kat3085_entropyinpr1[] = { + 0x42, 0x26, 0xa2, 0xef, 0x74, 0x1d, 0xc8, 0xac, 0x1a, 0xc6, 0x34, 0x1a, + 0x6f, 0x10, 0x0b, 0x0d, +}; +static const unsigned char kat3085_addinpr1[] = { + 0x24, 0x2e, 0x30, 0x28, 0x93, 0xe8, 0x06, 0xb6, 0xeb, 0x45, 0x12, 0x83, + 0x58, 0x05, 0xcc, 0x42, +}; +static const unsigned char kat3085_entropyinpr2[] = { + 0x53, 0xf4, 0xfe, 0x65, 0x4c, 0x99, 0x21, 0x41, 0x49, 0x62, 0x58, 0x09, + 0x40, 0xf7, 0xaa, 0xc4, +}; +static const unsigned char kat3085_addinpr2[] = { + 0x7e, 0x93, 0xbd, 0x34, 0xa3, 0x14, 0xed, 0x36, 0x91, 0x5c, 0x0d, 0x49, + 0x24, 0x1f, 0x0b, 0x45, +}; +static const unsigned char kat3085_retbits[] = { + 0xa1, 0x5e, 0x7d, 0xdd, 0x25, 0x20, 0xa4, 0xff, 0xf9, 0x35, 0xaf, 0x8e, + 0xef, 0x53, 0xc9, 0x0a, 0xf9, 0x7b, 0xde, 0x09, 0xc7, 0x27, 0xb0, 0xee, + 0x14, 0x8f, 0x21, 0xf8, 0x47, 0x6e, 0xd0, 0x11, 0x03, 0xc5, 0x9a, 0x16, + 0x74, 0x3b, 0x69, 0xa2, 0x24, 0xd6, 0xdb, 0xfe, 0x18, 0x64, 0xef, 0xaf, + 0xae, 0x0e, 0x7f, 0x0a, 0x52, 0xab, 0xf3, 0x09, 0x54, 0x37, 0x0f, 0x8d, + 0x9a, 0xea, 0x87, 0x47, +}; +static const struct drbg_kat_pr_true kat3085_t = { + 9, kat3085_entropyin, kat3085_nonce, kat3085_persstr, + kat3085_entropyinpr1, kat3085_addinpr1, kat3085_entropyinpr2, + kat3085_addinpr2, kat3085_retbits +}; +static const struct drbg_kat kat3085 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3085_t +}; + +static const unsigned char kat3086_entropyin[] = { + 0x14, 0x2e, 0xf7, 0xb5, 0x19, 0x20, 0xcf, 0xec, 0xde, 0x35, 0x3f, 0xc9, + 0x08, 0xcc, 0x11, 0x54, +}; +static const unsigned char kat3086_nonce[] = { + 0x6b, 0x9b, 0x6a, 0x97, 0x0f, 0xd7, 0xe2, 0x99, +}; +static const unsigned char kat3086_persstr[] = {0}; +static const unsigned char kat3086_entropyinpr1[] = { + 0xbc, 0x4f, 0x9f, 0x44, 0x6f, 0xe5, 0xf7, 0x1d, 0x6d, 0x5d, 0xc9, 0xa4, + 0xd2, 0x91, 0xce, 0x3e, +}; +static const unsigned char kat3086_addinpr1[] = { + 0xcd, 0x7e, 0xb2, 0xbe, 0x47, 0x19, 0x32, 0xf9, 0x8f, 0xb8, 0xe9, 0x7e, + 0xc3, 0x9c, 0xb1, 0xc4, +}; +static const unsigned char kat3086_entropyinpr2[] = { + 0xb4, 0x73, 0xf3, 0xdc, 0x32, 0x76, 0xa6, 0x77, 0x2c, 0xde, 0x05, 0x8c, + 0x56, 0xc4, 0x08, 0x25, +}; +static const unsigned char kat3086_addinpr2[] = { + 0xdd, 0xa7, 0x37, 0xbe, 0xd3, 0x2f, 0x2a, 0xd1, 0x45, 0x8c, 0x65, 0x51, + 0x58, 0x1d, 0x39, 0x41, +}; +static const unsigned char kat3086_retbits[] = { + 0x05, 0x4a, 0xf9, 0x5c, 0xc8, 0xc1, 0xb7, 0x56, 0x2d, 0xef, 0xaa, 0x3f, + 0xd0, 0xc3, 0xec, 0x34, 0x58, 0x9a, 0xbb, 0x2a, 0xb9, 0xc8, 0x28, 0xed, + 0x1e, 0xe9, 0xe5, 0x17, 0x97, 0xf7, 0x8a, 0xe2, 0xea, 0xf2, 0xcf, 0xe2, + 0x27, 0x44, 0x90, 0x1b, 0x44, 0x46, 0xde, 0x92, 0x10, 0x6b, 0x0a, 0x1e, + 0xc4, 0x4a, 0x8d, 0x19, 0x54, 0x54, 0x2d, 0x9d, 0x74, 0xdb, 0xf6, 0x0e, + 0x70, 0xad, 0x5a, 0xa8, +}; +static const struct drbg_kat_pr_true kat3086_t = { + 10, kat3086_entropyin, kat3086_nonce, kat3086_persstr, + kat3086_entropyinpr1, kat3086_addinpr1, kat3086_entropyinpr2, + kat3086_addinpr2, kat3086_retbits +}; +static const struct drbg_kat kat3086 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3086_t +}; + +static const unsigned char kat3087_entropyin[] = { + 0xaa, 0x1d, 0x39, 0x38, 0xd4, 0x9a, 0x4d, 0x1c, 0x15, 0x70, 0xe3, 0x83, + 0xd3, 0x16, 0x7a, 0x4b, +}; +static const unsigned char kat3087_nonce[] = { + 0xec, 0xd5, 0x7b, 0x78, 0x63, 0x6f, 0x27, 0xc6, +}; +static const unsigned char kat3087_persstr[] = {0}; +static const unsigned char kat3087_entropyinpr1[] = { + 0x9a, 0xc3, 0x37, 0xae, 0xfd, 0x3f, 0x6b, 0x58, 0x4d, 0xe4, 0xa4, 0xf1, + 0xfd, 0x6a, 0x18, 0x12, +}; +static const unsigned char kat3087_addinpr1[] = { + 0xa9, 0x9e, 0xab, 0x88, 0xcc, 0x2a, 0x23, 0xd1, 0x4e, 0x50, 0x43, 0xe2, + 0xda, 0x6d, 0x20, 0x23, +}; +static const unsigned char kat3087_entropyinpr2[] = { + 0x35, 0x0a, 0xcd, 0xec, 0xd5, 0x82, 0x7b, 0xe2, 0x8b, 0x99, 0xf0, 0x16, + 0x2a, 0x04, 0x40, 0x31, +}; +static const unsigned char kat3087_addinpr2[] = { + 0x15, 0x3a, 0xe9, 0x7c, 0xd9, 0x74, 0xb6, 0x45, 0xb3, 0x82, 0x97, 0x59, + 0x2c, 0x42, 0xd0, 0xdd, +}; +static const unsigned char kat3087_retbits[] = { + 0xb9, 0xfc, 0x98, 0xcc, 0x81, 0xea, 0x19, 0x45, 0xa2, 0xb0, 0x11, 0x1f, + 0xa9, 0xc9, 0x8f, 0xb5, 0xac, 0xab, 0xa3, 0x7c, 0x69, 0x58, 0xf8, 0x35, + 0x7b, 0x58, 0xb1, 0x18, 0xba, 0x84, 0xc6, 0x89, 0x63, 0x07, 0xfd, 0xcb, + 0x94, 0xa4, 0x0f, 0xcf, 0x61, 0x60, 0x23, 0x06, 0x2c, 0x9f, 0x15, 0xb5, + 0xd5, 0x81, 0x85, 0x8a, 0x35, 0x5f, 0x8c, 0x8e, 0x99, 0x43, 0xfd, 0xc2, + 0x74, 0xa6, 0xb2, 0x93, +}; +static const struct drbg_kat_pr_true kat3087_t = { + 11, kat3087_entropyin, kat3087_nonce, kat3087_persstr, + kat3087_entropyinpr1, kat3087_addinpr1, kat3087_entropyinpr2, + kat3087_addinpr2, kat3087_retbits +}; +static const struct drbg_kat kat3087 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3087_t +}; + +static const unsigned char kat3088_entropyin[] = { + 0xb3, 0x66, 0x02, 0xa0, 0x61, 0xb1, 0x78, 0x7f, 0x54, 0x34, 0xf1, 0xa6, + 0x51, 0x70, 0xae, 0xa0, +}; +static const unsigned char kat3088_nonce[] = { + 0xf1, 0x13, 0xef, 0xa8, 0xfa, 0xae, 0xb2, 0xd2, +}; +static const unsigned char kat3088_persstr[] = {0}; +static const unsigned char kat3088_entropyinpr1[] = { + 0xdd, 0xb9, 0x09, 0xc0, 0xe2, 0x5c, 0x45, 0x1f, 0xcf, 0x7f, 0x8c, 0x02, + 0xbf, 0x66, 0x65, 0xee, +}; +static const unsigned char kat3088_addinpr1[] = { + 0xe2, 0xee, 0x88, 0x11, 0x79, 0xeb, 0xda, 0x78, 0x02, 0xe4, 0xdb, 0x37, + 0x09, 0xb4, 0x7d, 0x71, +}; +static const unsigned char kat3088_entropyinpr2[] = { + 0x84, 0xaa, 0xee, 0x4a, 0x4e, 0xe9, 0x56, 0x50, 0x0e, 0x06, 0x88, 0x41, + 0xeb, 0x48, 0x3f, 0xc7, +}; +static const unsigned char kat3088_addinpr2[] = { + 0xef, 0x02, 0x2a, 0x6e, 0x11, 0x14, 0xbc, 0x2b, 0xfd, 0x75, 0xd9, 0x45, + 0x61, 0xf3, 0x4a, 0xc2, +}; +static const unsigned char kat3088_retbits[] = { + 0x8a, 0xca, 0x3d, 0x22, 0x9e, 0xeb, 0xe7, 0x8e, 0x01, 0xd2, 0x04, 0x48, + 0x37, 0x20, 0xc0, 0xb4, 0x7e, 0x35, 0xe5, 0xe0, 0x07, 0xe9, 0xea, 0xfc, + 0x0f, 0xb0, 0xd1, 0xa2, 0x27, 0x20, 0x8c, 0xad, 0xf8, 0x0e, 0xc4, 0xb3, + 0x18, 0xd6, 0x86, 0x61, 0x8c, 0xfd, 0x99, 0x79, 0x62, 0x22, 0x79, 0xb7, + 0xa1, 0x76, 0x60, 0xee, 0x5b, 0xe8, 0xf6, 0xce, 0xe1, 0x86, 0x8c, 0xa9, + 0x04, 0xa7, 0x50, 0x60, +}; +static const struct drbg_kat_pr_true kat3088_t = { + 12, kat3088_entropyin, kat3088_nonce, kat3088_persstr, + kat3088_entropyinpr1, kat3088_addinpr1, kat3088_entropyinpr2, + kat3088_addinpr2, kat3088_retbits +}; +static const struct drbg_kat kat3088 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3088_t +}; + +static const unsigned char kat3089_entropyin[] = { + 0xec, 0x2c, 0x7f, 0xc4, 0x96, 0x59, 0x21, 0xf6, 0x91, 0xa0, 0xd4, 0xe6, + 0x15, 0xdb, 0xbd, 0x50, +}; +static const unsigned char kat3089_nonce[] = { + 0x2a, 0x6f, 0x5e, 0xf1, 0xc6, 0xb5, 0x69, 0x3b, +}; +static const unsigned char kat3089_persstr[] = {0}; +static const unsigned char kat3089_entropyinpr1[] = { + 0x73, 0x90, 0xfb, 0xe0, 0x95, 0xf4, 0xf5, 0x52, 0xdb, 0xe2, 0x51, 0x69, + 0xc5, 0x6f, 0x31, 0x9f, +}; +static const unsigned char kat3089_addinpr1[] = { + 0x46, 0xc9, 0x2e, 0x32, 0x67, 0xca, 0xfe, 0x83, 0x22, 0x60, 0x7b, 0x68, + 0x6a, 0xc6, 0x36, 0x5e, +}; +static const unsigned char kat3089_entropyinpr2[] = { + 0x2c, 0x57, 0xea, 0x41, 0xe4, 0x3a, 0x64, 0x51, 0xb8, 0x7a, 0x93, 0x4f, + 0xe8, 0x6d, 0x63, 0x2d, +}; +static const unsigned char kat3089_addinpr2[] = { + 0x55, 0xbd, 0x66, 0xad, 0xce, 0x61, 0x26, 0x51, 0x33, 0x91, 0x4d, 0xea, + 0xa2, 0xf4, 0x70, 0x69, +}; +static const unsigned char kat3089_retbits[] = { + 0x49, 0xd6, 0x6c, 0xbf, 0x96, 0x55, 0x0e, 0x64, 0xb4, 0x86, 0xcf, 0x99, + 0x1e, 0xa6, 0x64, 0x34, 0x7b, 0xe9, 0x75, 0xd4, 0x37, 0x73, 0xeb, 0x84, + 0x22, 0x64, 0x8c, 0x1a, 0x61, 0xc1, 0x53, 0x37, 0xe1, 0x42, 0x29, 0x1e, + 0xf9, 0x32, 0x5a, 0x70, 0x5a, 0x35, 0xea, 0xb4, 0xaf, 0x85, 0x9d, 0x1d, + 0x21, 0x9a, 0x2b, 0xb9, 0x10, 0xe4, 0x11, 0x59, 0x1b, 0x88, 0x15, 0xee, + 0x35, 0xc5, 0x8f, 0xba, +}; +static const struct drbg_kat_pr_true kat3089_t = { + 13, kat3089_entropyin, kat3089_nonce, kat3089_persstr, + kat3089_entropyinpr1, kat3089_addinpr1, kat3089_entropyinpr2, + kat3089_addinpr2, kat3089_retbits +}; +static const struct drbg_kat kat3089 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3089_t +}; + +static const unsigned char kat3090_entropyin[] = { + 0x5d, 0xa8, 0x0b, 0x60, 0x6d, 0x8a, 0xc1, 0x4f, 0xa0, 0x70, 0x78, 0xbf, + 0xc8, 0xf9, 0x44, 0x5c, +}; +static const unsigned char kat3090_nonce[] = { + 0x77, 0xf4, 0xaf, 0xf7, 0x09, 0x3f, 0x19, 0x8c, +}; +static const unsigned char kat3090_persstr[] = {0}; +static const unsigned char kat3090_entropyinpr1[] = { + 0xba, 0x7f, 0xa9, 0xb3, 0xec, 0x4c, 0x55, 0x8c, 0xbf, 0xfe, 0x4c, 0x42, + 0x2c, 0x2a, 0x99, 0x13, +}; +static const unsigned char kat3090_addinpr1[] = { + 0x82, 0x1f, 0x95, 0xa4, 0xcc, 0x4c, 0xa7, 0x6a, 0xb7, 0x26, 0xcd, 0x7a, + 0x35, 0x57, 0xa2, 0x6c, +}; +static const unsigned char kat3090_entropyinpr2[] = { + 0x18, 0x7a, 0xee, 0xbc, 0x91, 0x50, 0x35, 0x95, 0x87, 0xe6, 0x03, 0xe2, + 0x3c, 0x17, 0x34, 0xff, +}; +static const unsigned char kat3090_addinpr2[] = { + 0x79, 0x36, 0x68, 0x54, 0x0d, 0x09, 0xb1, 0x92, 0x00, 0xf8, 0x72, 0x20, + 0x35, 0x39, 0xb8, 0x1a, +}; +static const unsigned char kat3090_retbits[] = { + 0x5a, 0xb8, 0xad, 0xff, 0x77, 0xfe, 0xf9, 0xd4, 0x4c, 0xbe, 0x73, 0x47, + 0x14, 0x58, 0xde, 0xc6, 0xfe, 0x6a, 0x83, 0x05, 0x05, 0x89, 0x11, 0x93, + 0xfc, 0x6a, 0x83, 0x8e, 0xb2, 0x89, 0x9e, 0x86, 0xb9, 0x1a, 0x41, 0xaf, + 0xf6, 0x2b, 0xdb, 0x3c, 0xaf, 0x74, 0xe4, 0x59, 0x40, 0x5b, 0x66, 0xba, + 0xb3, 0x7b, 0x31, 0xd5, 0xe4, 0x79, 0xe7, 0xfe, 0x27, 0xdd, 0xaa, 0x9e, + 0xb4, 0x66, 0x52, 0x5b, +}; +static const struct drbg_kat_pr_true kat3090_t = { + 14, kat3090_entropyin, kat3090_nonce, kat3090_persstr, + kat3090_entropyinpr1, kat3090_addinpr1, kat3090_entropyinpr2, + kat3090_addinpr2, kat3090_retbits +}; +static const struct drbg_kat kat3090 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 0, 16, 64, &kat3090_t +}; + +static const unsigned char kat3091_entropyin[] = { + 0xa7, 0x28, 0x4a, 0x6e, 0x7c, 0xa8, 0x3f, 0xa8, 0xfa, 0xb4, 0xe4, 0x1c, + 0x53, 0xe7, 0x71, 0x1f, +}; +static const unsigned char kat3091_nonce[] = { + 0x50, 0x60, 0xcb, 0xb8, 0x67, 0x33, 0x1a, 0x29, +}; +static const unsigned char kat3091_persstr[] = { + 0x98, 0x63, 0xd8, 0xda, 0xc7, 0x13, 0xdf, 0xeb, 0x66, 0xa2, 0xa7, 0x98, + 0xa0, 0x75, 0x60, 0x68, +}; +static const unsigned char kat3091_entropyinpr1[] = { + 0xb2, 0xa4, 0x82, 0x78, 0xab, 0x12, 0x15, 0x17, 0x57, 0xf6, 0xe6, 0xa9, + 0xfc, 0x79, 0x89, 0xa3, +}; +static const unsigned char kat3091_addinpr1[] = {0}; +static const unsigned char kat3091_entropyinpr2[] = { + 0x36, 0xef, 0x9d, 0x02, 0xa9, 0xaa, 0x89, 0xe7, 0x19, 0x01, 0x1d, 0x10, + 0x36, 0xa5, 0x12, 0x83, +}; +static const unsigned char kat3091_addinpr2[] = {0}; +static const unsigned char kat3091_retbits[] = { + 0xd3, 0x20, 0xfe, 0x5b, 0x05, 0x5a, 0x3e, 0xc0, 0xa4, 0x8c, 0x92, 0x74, + 0xa3, 0x79, 0xd8, 0x0e, 0xe0, 0x0a, 0xdc, 0x04, 0x0b, 0x40, 0xbb, 0xbb, + 0xf1, 0x24, 0x48, 0x24, 0x08, 0x97, 0x03, 0xd3, 0x2a, 0xea, 0xcd, 0xc8, + 0x63, 0xf7, 0x35, 0x7c, 0xef, 0x0a, 0x05, 0x82, 0xc4, 0xda, 0xb3, 0xb2, + 0x29, 0x24, 0xcc, 0x95, 0x37, 0x3c, 0x21, 0x2d, 0x85, 0xea, 0x1a, 0x80, + 0x25, 0xab, 0x3c, 0x5c, +}; +static const struct drbg_kat_pr_true kat3091_t = { + 0, kat3091_entropyin, kat3091_nonce, kat3091_persstr, + kat3091_entropyinpr1, kat3091_addinpr1, kat3091_entropyinpr2, + kat3091_addinpr2, kat3091_retbits +}; +static const struct drbg_kat kat3091 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3091_t +}; + +static const unsigned char kat3092_entropyin[] = { + 0x6a, 0x54, 0x86, 0x46, 0x93, 0x3e, 0x4f, 0x7f, 0x53, 0x7b, 0x5e, 0xfc, + 0x4c, 0xad, 0x0a, 0x4e, +}; +static const unsigned char kat3092_nonce[] = { + 0x1f, 0x56, 0xc1, 0xb5, 0xbb, 0x3f, 0xb6, 0x4d, +}; +static const unsigned char kat3092_persstr[] = { + 0xca, 0x18, 0xf2, 0x6a, 0xda, 0xbd, 0x47, 0xe8, 0x20, 0x9b, 0x55, 0xab, + 0x9d, 0x11, 0x3c, 0xd7, +}; +static const unsigned char kat3092_entropyinpr1[] = { + 0x56, 0x5b, 0x81, 0xf0, 0xc9, 0x10, 0xc8, 0x17, 0x4c, 0x9b, 0x97, 0x04, + 0x7f, 0x33, 0x43, 0x28, +}; +static const unsigned char kat3092_addinpr1[] = {0}; +static const unsigned char kat3092_entropyinpr2[] = { + 0xff, 0xee, 0x0d, 0xc5, 0xe8, 0x63, 0xaa, 0x16, 0x3e, 0x69, 0xff, 0xe4, + 0x05, 0x55, 0xbc, 0x83, +}; +static const unsigned char kat3092_addinpr2[] = {0}; +static const unsigned char kat3092_retbits[] = { + 0x1c, 0xfb, 0x07, 0x4d, 0x69, 0x41, 0x68, 0xf2, 0x55, 0x31, 0x85, 0x6a, + 0xdc, 0xd3, 0xf3, 0x2d, 0x6e, 0x7b, 0x03, 0x5d, 0xa6, 0x84, 0x85, 0x01, + 0xc8, 0xed, 0x6f, 0x53, 0xc8, 0x0c, 0x7d, 0x08, 0xbd, 0xc3, 0x49, 0x9a, + 0x64, 0xc2, 0xfa, 0x53, 0x14, 0xaf, 0xf3, 0xbd, 0x71, 0x57, 0x41, 0x1e, + 0x15, 0x38, 0x94, 0x4b, 0xc1, 0x7f, 0x18, 0x91, 0xf0, 0xc4, 0x09, 0x18, + 0x05, 0x32, 0x40, 0x81, +}; +static const struct drbg_kat_pr_true kat3092_t = { + 1, kat3092_entropyin, kat3092_nonce, kat3092_persstr, + kat3092_entropyinpr1, kat3092_addinpr1, kat3092_entropyinpr2, + kat3092_addinpr2, kat3092_retbits +}; +static const struct drbg_kat kat3092 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3092_t +}; + +static const unsigned char kat3093_entropyin[] = { + 0x74, 0x8a, 0xe8, 0xca, 0xfd, 0x0a, 0x36, 0x79, 0x9c, 0x76, 0xaa, 0xcf, + 0x31, 0x3d, 0x17, 0xf9, +}; +static const unsigned char kat3093_nonce[] = { + 0xf2, 0x28, 0x8c, 0x1a, 0x93, 0xb4, 0x3d, 0x84, +}; +static const unsigned char kat3093_persstr[] = { + 0x34, 0x44, 0x19, 0x1e, 0x25, 0x64, 0xa3, 0x25, 0x7c, 0x33, 0x12, 0xd9, + 0x21, 0x52, 0x00, 0x55, +}; +static const unsigned char kat3093_entropyinpr1[] = { + 0x8f, 0xdf, 0xa2, 0x91, 0x59, 0x65, 0xf6, 0xc4, 0x43, 0xcc, 0xcb, 0x7f, + 0xd4, 0x06, 0x49, 0xbc, +}; +static const unsigned char kat3093_addinpr1[] = {0}; +static const unsigned char kat3093_entropyinpr2[] = { + 0x04, 0x64, 0xa7, 0xb3, 0x8d, 0x4c, 0x50, 0xdf, 0xf8, 0x5a, 0x10, 0xc4, + 0x90, 0xb0, 0x8c, 0x9f, +}; +static const unsigned char kat3093_addinpr2[] = {0}; +static const unsigned char kat3093_retbits[] = { + 0x04, 0x7c, 0x54, 0x11, 0xa4, 0xc1, 0xf1, 0x2a, 0x39, 0x64, 0xdf, 0xee, + 0x81, 0xec, 0xe1, 0xa5, 0x63, 0x8d, 0x21, 0x17, 0xe4, 0xd4, 0x71, 0x60, + 0x2a, 0xa8, 0x3a, 0x77, 0xec, 0x3c, 0x04, 0xba, 0x59, 0x3e, 0x39, 0xba, + 0x39, 0x74, 0xeb, 0x6f, 0xfb, 0x98, 0xc7, 0x94, 0x43, 0xd6, 0x0e, 0xa0, + 0x47, 0xd3, 0xd9, 0x93, 0x96, 0x84, 0x45, 0x42, 0xa7, 0xab, 0xc9, 0xac, + 0xaf, 0xb0, 0x70, 0x03, +}; +static const struct drbg_kat_pr_true kat3093_t = { + 2, kat3093_entropyin, kat3093_nonce, kat3093_persstr, + kat3093_entropyinpr1, kat3093_addinpr1, kat3093_entropyinpr2, + kat3093_addinpr2, kat3093_retbits +}; +static const struct drbg_kat kat3093 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3093_t +}; + +static const unsigned char kat3094_entropyin[] = { + 0xb8, 0xcf, 0x19, 0xaa, 0xf1, 0x24, 0xcc, 0xc6, 0x55, 0xf1, 0x83, 0x8b, + 0xbc, 0xfc, 0x70, 0xbf, +}; +static const unsigned char kat3094_nonce[] = { + 0x96, 0xe8, 0x71, 0x0f, 0xf3, 0x67, 0x6e, 0x69, +}; +static const unsigned char kat3094_persstr[] = { + 0x4b, 0xb5, 0xa8, 0x2a, 0x03, 0x86, 0x59, 0x91, 0x87, 0x3e, 0xb6, 0x6b, + 0x20, 0xf6, 0xeb, 0x4b, +}; +static const unsigned char kat3094_entropyinpr1[] = { + 0x48, 0x57, 0x33, 0x45, 0x20, 0xab, 0x3e, 0x19, 0x2a, 0xa4, 0x66, 0xd7, + 0xd5, 0xf5, 0x22, 0xd2, +}; +static const unsigned char kat3094_addinpr1[] = {0}; +static const unsigned char kat3094_entropyinpr2[] = { + 0x56, 0x54, 0x8e, 0x12, 0xef, 0xc2, 0x79, 0xf7, 0x90, 0x4c, 0x84, 0xba, + 0x04, 0x95, 0x94, 0xc1, +}; +static const unsigned char kat3094_addinpr2[] = {0}; +static const unsigned char kat3094_retbits[] = { + 0xc7, 0x76, 0xd7, 0xd8, 0xb3, 0x34, 0xe2, 0x87, 0x7b, 0x8a, 0x96, 0x33, + 0x41, 0x8a, 0x60, 0x51, 0x74, 0xd8, 0xf7, 0x9a, 0x48, 0xd4, 0xcc, 0x8c, + 0xd6, 0x6a, 0x9d, 0x37, 0x8c, 0x6f, 0x83, 0x6f, 0xa0, 0xea, 0xef, 0xd0, + 0xb6, 0xf6, 0x25, 0xaf, 0x20, 0xdf, 0xe8, 0xa4, 0xaf, 0xd3, 0xbe, 0x82, + 0x0a, 0xa1, 0x54, 0x9c, 0x83, 0x2b, 0x5a, 0xf3, 0x68, 0xa1, 0x5d, 0x22, + 0x37, 0xb9, 0xd8, 0x87, +}; +static const struct drbg_kat_pr_true kat3094_t = { + 3, kat3094_entropyin, kat3094_nonce, kat3094_persstr, + kat3094_entropyinpr1, kat3094_addinpr1, kat3094_entropyinpr2, + kat3094_addinpr2, kat3094_retbits +}; +static const struct drbg_kat kat3094 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3094_t +}; + +static const unsigned char kat3095_entropyin[] = { + 0xee, 0x04, 0x18, 0xdf, 0xb8, 0xac, 0x3b, 0xa3, 0xf0, 0x23, 0x95, 0xdd, + 0x53, 0xe2, 0x0b, 0x0b, +}; +static const unsigned char kat3095_nonce[] = { + 0x39, 0x12, 0xf2, 0x88, 0x48, 0x44, 0xed, 0x67, +}; +static const unsigned char kat3095_persstr[] = { + 0x6a, 0x14, 0x1a, 0xd9, 0xf5, 0xa3, 0x5e, 0x26, 0x57, 0x1f, 0x03, 0xbb, + 0xa9, 0x78, 0x69, 0x47, +}; +static const unsigned char kat3095_entropyinpr1[] = { + 0xee, 0xfa, 0xb2, 0xd1, 0x9a, 0xac, 0xcf, 0x00, 0xfd, 0xe6, 0x3b, 0x61, + 0x3b, 0x6b, 0x01, 0x99, +}; +static const unsigned char kat3095_addinpr1[] = {0}; +static const unsigned char kat3095_entropyinpr2[] = { + 0xc3, 0xfe, 0xc0, 0xd3, 0x0f, 0x86, 0xca, 0xc4, 0x7d, 0x3d, 0xca, 0xa9, + 0xd0, 0x32, 0x77, 0x97, +}; +static const unsigned char kat3095_addinpr2[] = {0}; +static const unsigned char kat3095_retbits[] = { + 0xe0, 0x51, 0x65, 0xdc, 0xc2, 0x26, 0xb1, 0x69, 0xca, 0x2a, 0xd8, 0xa5, + 0x06, 0x0f, 0xdd, 0x59, 0xf6, 0x59, 0xe0, 0x58, 0x30, 0xb3, 0x21, 0x5b, + 0xc5, 0x32, 0x48, 0x4e, 0x3a, 0xd0, 0xff, 0x13, 0x88, 0x1f, 0x1b, 0x3a, + 0x09, 0xbc, 0x7b, 0x05, 0x41, 0xd2, 0x9d, 0x18, 0x69, 0x2f, 0xfd, 0x75, + 0x0c, 0xa3, 0xca, 0xd4, 0xc4, 0x61, 0x8a, 0xf0, 0xe6, 0x99, 0x89, 0x25, + 0xdc, 0xe5, 0xb2, 0xf3, +}; +static const struct drbg_kat_pr_true kat3095_t = { + 4, kat3095_entropyin, kat3095_nonce, kat3095_persstr, + kat3095_entropyinpr1, kat3095_addinpr1, kat3095_entropyinpr2, + kat3095_addinpr2, kat3095_retbits +}; +static const struct drbg_kat kat3095 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3095_t +}; + +static const unsigned char kat3096_entropyin[] = { + 0xe6, 0xb9, 0x0d, 0xb6, 0x5e, 0x98, 0xed, 0xf8, 0x97, 0x54, 0xe1, 0xd4, + 0x0c, 0x24, 0xef, 0x04, +}; +static const unsigned char kat3096_nonce[] = { + 0x82, 0x55, 0xcb, 0xcd, 0x21, 0x4f, 0x4b, 0x8e, +}; +static const unsigned char kat3096_persstr[] = { + 0x97, 0x5c, 0x3f, 0xf7, 0x6b, 0xff, 0x8d, 0x9b, 0xb9, 0x58, 0x0d, 0x6e, + 0x74, 0xbd, 0xcb, 0xce, +}; +static const unsigned char kat3096_entropyinpr1[] = { + 0xf5, 0x55, 0xa2, 0x61, 0x73, 0x77, 0x36, 0x68, 0x4e, 0x8e, 0x72, 0xa6, + 0xd5, 0x9a, 0x76, 0x97, +}; +static const unsigned char kat3096_addinpr1[] = {0}; +static const unsigned char kat3096_entropyinpr2[] = { + 0xee, 0x4c, 0xe9, 0xca, 0x18, 0x1b, 0xcc, 0xf1, 0xd3, 0xd8, 0x1a, 0xc8, + 0xdf, 0xeb, 0x2a, 0xad, +}; +static const unsigned char kat3096_addinpr2[] = {0}; +static const unsigned char kat3096_retbits[] = { + 0x43, 0x5a, 0x51, 0x34, 0x4c, 0xa9, 0xcf, 0x00, 0x1d, 0x7a, 0xa1, 0xdc, + 0x5e, 0x89, 0x3b, 0x2c, 0x99, 0x5b, 0x71, 0x0e, 0x39, 0x5a, 0xfb, 0x3e, + 0xc2, 0x0f, 0xd5, 0x66, 0x15, 0x1e, 0xe4, 0x62, 0xa5, 0xf5, 0x06, 0x19, + 0x8f, 0xf6, 0x24, 0x9f, 0xf0, 0xcc, 0x4d, 0x65, 0xff, 0x3b, 0xc0, 0xd6, + 0x7b, 0xc4, 0x11, 0xe7, 0x0a, 0xb2, 0x08, 0x77, 0x0d, 0xe4, 0x8e, 0x40, + 0xd6, 0x76, 0x5f, 0x4e, +}; +static const struct drbg_kat_pr_true kat3096_t = { + 5, kat3096_entropyin, kat3096_nonce, kat3096_persstr, + kat3096_entropyinpr1, kat3096_addinpr1, kat3096_entropyinpr2, + kat3096_addinpr2, kat3096_retbits +}; +static const struct drbg_kat kat3096 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3096_t +}; + +static const unsigned char kat3097_entropyin[] = { + 0x97, 0x56, 0xa8, 0x84, 0xa7, 0x97, 0x7a, 0x4f, 0x72, 0xb4, 0xc1, 0x25, + 0xb2, 0x18, 0x8d, 0xca, +}; +static const unsigned char kat3097_nonce[] = { + 0xae, 0x7b, 0x70, 0x43, 0x0c, 0x5e, 0x35, 0xb9, +}; +static const unsigned char kat3097_persstr[] = { + 0x1f, 0xb6, 0xab, 0x91, 0xf4, 0x46, 0x22, 0x06, 0xa9, 0x5f, 0x11, 0xae, + 0xb8, 0x8e, 0x56, 0xd7, +}; +static const unsigned char kat3097_entropyinpr1[] = { + 0x0b, 0x37, 0x1e, 0xea, 0x8d, 0xfd, 0x13, 0x7f, 0x2a, 0x06, 0xec, 0x47, + 0x2c, 0x0a, 0x80, 0xca, +}; +static const unsigned char kat3097_addinpr1[] = {0}; +static const unsigned char kat3097_entropyinpr2[] = { + 0x88, 0x23, 0x69, 0x86, 0x84, 0x69, 0x46, 0x15, 0x65, 0x3a, 0xbe, 0x49, + 0x7e, 0x71, 0x2a, 0x20, +}; +static const unsigned char kat3097_addinpr2[] = {0}; +static const unsigned char kat3097_retbits[] = { + 0xb1, 0x0f, 0x2e, 0xa4, 0x1c, 0x54, 0xd6, 0x0f, 0x21, 0xed, 0x87, 0x90, + 0xa7, 0x7a, 0x9b, 0xfc, 0x4e, 0x89, 0x23, 0x96, 0x41, 0x62, 0x53, 0xd7, + 0x04, 0x7c, 0x82, 0x45, 0xa4, 0x39, 0xc4, 0x66, 0x28, 0x47, 0x3e, 0x10, + 0x4a, 0x9b, 0x9e, 0x4d, 0xff, 0x65, 0x76, 0xdd, 0xfa, 0x74, 0x00, 0x87, + 0xf1, 0x07, 0x66, 0xe8, 0x72, 0xd1, 0x47, 0x9a, 0xba, 0xe7, 0x77, 0x11, + 0xaa, 0x83, 0x24, 0x2a, +}; +static const struct drbg_kat_pr_true kat3097_t = { + 6, kat3097_entropyin, kat3097_nonce, kat3097_persstr, + kat3097_entropyinpr1, kat3097_addinpr1, kat3097_entropyinpr2, + kat3097_addinpr2, kat3097_retbits +}; +static const struct drbg_kat kat3097 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3097_t +}; + +static const unsigned char kat3098_entropyin[] = { + 0xce, 0x51, 0x47, 0x8a, 0xfc, 0x2d, 0xd1, 0x92, 0x2a, 0x31, 0x23, 0xc1, + 0x74, 0x5d, 0x5c, 0xc9, +}; +static const unsigned char kat3098_nonce[] = { + 0xb5, 0x09, 0x3d, 0x81, 0x56, 0xf9, 0x4d, 0x7e, +}; +static const unsigned char kat3098_persstr[] = { + 0xf4, 0xdf, 0xbd, 0xd6, 0x16, 0xdd, 0xa5, 0x7e, 0xea, 0x89, 0x74, 0x8d, + 0xbe, 0xb0, 0x75, 0x38, +}; +static const unsigned char kat3098_entropyinpr1[] = { + 0x73, 0x46, 0x8a, 0x12, 0x53, 0x43, 0x26, 0x1d, 0x66, 0x6f, 0x3c, 0xfe, + 0x33, 0x19, 0xc8, 0x15, +}; +static const unsigned char kat3098_addinpr1[] = {0}; +static const unsigned char kat3098_entropyinpr2[] = { + 0x20, 0xa4, 0x81, 0x6a, 0x12, 0x33, 0x28, 0xd3, 0xc2, 0xed, 0xa2, 0x89, + 0x6a, 0x40, 0xcc, 0xbf, +}; +static const unsigned char kat3098_addinpr2[] = {0}; +static const unsigned char kat3098_retbits[] = { + 0x0f, 0x89, 0x56, 0x36, 0xc5, 0x2b, 0x85, 0x10, 0xe3, 0x01, 0xbb, 0x8d, + 0x3c, 0x28, 0xb8, 0xab, 0x4c, 0x82, 0xf1, 0x75, 0x5a, 0x20, 0xb7, 0x4b, + 0x8d, 0x0d, 0x46, 0xb8, 0x58, 0x5e, 0xd1, 0x6e, 0xe2, 0x68, 0xef, 0xb2, + 0xd9, 0x90, 0x31, 0x41, 0x6e, 0x95, 0x1e, 0x24, 0x3f, 0xf0, 0xb9, 0x5c, + 0xaa, 0x02, 0x1a, 0x90, 0xf5, 0xca, 0x5d, 0x69, 0xa5, 0xd7, 0x10, 0x45, + 0xfb, 0xcb, 0xa8, 0x4f, +}; +static const struct drbg_kat_pr_true kat3098_t = { + 7, kat3098_entropyin, kat3098_nonce, kat3098_persstr, + kat3098_entropyinpr1, kat3098_addinpr1, kat3098_entropyinpr2, + kat3098_addinpr2, kat3098_retbits +}; +static const struct drbg_kat kat3098 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3098_t +}; + +static const unsigned char kat3099_entropyin[] = { + 0x0d, 0x85, 0xf9, 0x27, 0x1f, 0xb8, 0xef, 0x4a, 0x38, 0x7c, 0x86, 0xb2, + 0xdd, 0x0c, 0x11, 0x28, +}; +static const unsigned char kat3099_nonce[] = { + 0xad, 0x7f, 0xb7, 0x16, 0x3c, 0xa4, 0xa6, 0x28, +}; +static const unsigned char kat3099_persstr[] = { + 0x21, 0x46, 0x63, 0xf4, 0xec, 0x37, 0xde, 0x76, 0x6c, 0xa7, 0xf8, 0x09, + 0x1e, 0x84, 0x6f, 0x60, +}; +static const unsigned char kat3099_entropyinpr1[] = { + 0x90, 0xe4, 0x4d, 0x04, 0xdb, 0xa4, 0xd0, 0x5b, 0x3b, 0xd6, 0x1b, 0x50, + 0xd6, 0xe3, 0x94, 0x96, +}; +static const unsigned char kat3099_addinpr1[] = {0}; +static const unsigned char kat3099_entropyinpr2[] = { + 0xd9, 0xfe, 0x49, 0x5f, 0xf6, 0xaf, 0xa4, 0x28, 0x5a, 0x0e, 0xa6, 0x6d, + 0xbe, 0xde, 0xcb, 0x6c, +}; +static const unsigned char kat3099_addinpr2[] = {0}; +static const unsigned char kat3099_retbits[] = { + 0x2f, 0x34, 0x8e, 0x58, 0x87, 0x2c, 0xf1, 0x65, 0xab, 0xbc, 0x5c, 0xaf, + 0xd2, 0x8d, 0x49, 0x36, 0xeb, 0x3b, 0xa9, 0x28, 0x9d, 0x1e, 0xa0, 0x8d, + 0xec, 0xb1, 0x13, 0xc9, 0x55, 0x72, 0x7a, 0x2e, 0xcd, 0x09, 0x64, 0xff, + 0x8c, 0x29, 0xd4, 0xd9, 0x1f, 0xb1, 0x22, 0x30, 0x60, 0x29, 0xd4, 0xb0, + 0x91, 0xb5, 0x31, 0x79, 0x1a, 0xb8, 0x1c, 0xfc, 0x19, 0xcf, 0x61, 0x32, + 0x94, 0x82, 0x4a, 0x04, +}; +static const struct drbg_kat_pr_true kat3099_t = { + 8, kat3099_entropyin, kat3099_nonce, kat3099_persstr, + kat3099_entropyinpr1, kat3099_addinpr1, kat3099_entropyinpr2, + kat3099_addinpr2, kat3099_retbits +}; +static const struct drbg_kat kat3099 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3099_t +}; + +static const unsigned char kat3100_entropyin[] = { + 0x0b, 0x45, 0x10, 0x84, 0xb3, 0x47, 0x13, 0x9b, 0xf4, 0xf9, 0xe8, 0x53, + 0xdb, 0xb5, 0x8d, 0x5c, +}; +static const unsigned char kat3100_nonce[] = { + 0x1c, 0x73, 0x52, 0x09, 0x66, 0xab, 0xfb, 0x35, +}; +static const unsigned char kat3100_persstr[] = { + 0xb1, 0x4d, 0xce, 0x43, 0x9f, 0x5f, 0x43, 0xd7, 0x6a, 0x4f, 0xe6, 0x0d, + 0xa8, 0x9c, 0x44, 0xb3, +}; +static const unsigned char kat3100_entropyinpr1[] = { + 0xba, 0x4d, 0x8e, 0xca, 0x83, 0x4f, 0xcd, 0x3d, 0x1f, 0xe8, 0x0e, 0x93, + 0x8f, 0x11, 0xfa, 0x7b, +}; +static const unsigned char kat3100_addinpr1[] = {0}; +static const unsigned char kat3100_entropyinpr2[] = { + 0x06, 0xac, 0x26, 0x7e, 0xed, 0x6d, 0x8f, 0x47, 0xc5, 0x96, 0xc7, 0xb5, + 0x32, 0x57, 0xa3, 0x05, +}; +static const unsigned char kat3100_addinpr2[] = {0}; +static const unsigned char kat3100_retbits[] = { + 0xc7, 0xe1, 0x21, 0x75, 0x5b, 0xc9, 0x6d, 0x37, 0x75, 0x00, 0xac, 0x88, + 0xdc, 0xf4, 0xf4, 0x54, 0x65, 0x9c, 0xc5, 0x39, 0x51, 0xcc, 0xb1, 0x7f, + 0x97, 0xfe, 0xaa, 0x26, 0x9f, 0xee, 0x42, 0x90, 0xcb, 0x42, 0xf1, 0x74, + 0xa8, 0x1b, 0xfa, 0xa1, 0x34, 0x1b, 0x97, 0x6d, 0x30, 0x9e, 0xb4, 0x6c, + 0xb2, 0x2b, 0xea, 0x1b, 0x62, 0xd4, 0x34, 0x2c, 0x52, 0x2c, 0x76, 0xb1, + 0x09, 0x53, 0xb9, 0xd4, +}; +static const struct drbg_kat_pr_true kat3100_t = { + 9, kat3100_entropyin, kat3100_nonce, kat3100_persstr, + kat3100_entropyinpr1, kat3100_addinpr1, kat3100_entropyinpr2, + kat3100_addinpr2, kat3100_retbits +}; +static const struct drbg_kat kat3100 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3100_t +}; + +static const unsigned char kat3101_entropyin[] = { + 0x07, 0xd9, 0x92, 0xc8, 0xa7, 0x29, 0xd9, 0x70, 0x0d, 0xdf, 0x64, 0x9a, + 0x8d, 0x61, 0xdf, 0xfc, +}; +static const unsigned char kat3101_nonce[] = { + 0xf6, 0x69, 0x76, 0x7f, 0x4c, 0xce, 0x26, 0xcd, +}; +static const unsigned char kat3101_persstr[] = { + 0xde, 0x30, 0x3d, 0xfd, 0xd9, 0x2a, 0x0a, 0xf6, 0x56, 0xc2, 0xfa, 0x07, + 0xb9, 0x5c, 0x3c, 0xa1, +}; +static const unsigned char kat3101_entropyinpr1[] = { + 0x9e, 0xce, 0xe5, 0x52, 0xdc, 0x77, 0xbe, 0x87, 0xa5, 0x06, 0x9b, 0xdb, + 0x7d, 0xfa, 0xea, 0x3a, +}; +static const unsigned char kat3101_addinpr1[] = {0}; +static const unsigned char kat3101_entropyinpr2[] = { + 0x86, 0xd8, 0xab, 0xa3, 0x0e, 0xa8, 0x01, 0x83, 0xfc, 0x3f, 0x4b, 0xd7, + 0x59, 0x74, 0xb4, 0x1b, +}; +static const unsigned char kat3101_addinpr2[] = {0}; +static const unsigned char kat3101_retbits[] = { + 0x68, 0xfc, 0x68, 0x9f, 0x42, 0xd6, 0xd2, 0x8d, 0x33, 0x7f, 0x8e, 0x4b, + 0xf7, 0xbd, 0x6b, 0x58, 0xa1, 0x80, 0x72, 0xd9, 0xa4, 0x5b, 0x58, 0x03, + 0xf7, 0x5a, 0x94, 0x4a, 0x8b, 0x4f, 0xd6, 0x2e, 0xee, 0xe2, 0x7d, 0xe9, + 0x38, 0xa8, 0x64, 0x7b, 0xdd, 0x40, 0x99, 0xb0, 0x46, 0xdc, 0x51, 0x1d, + 0xbf, 0xc1, 0xb4, 0x68, 0x48, 0x51, 0xe1, 0x7e, 0x66, 0x3b, 0xfb, 0xad, + 0x3c, 0x8c, 0x1a, 0xd6, +}; +static const struct drbg_kat_pr_true kat3101_t = { + 10, kat3101_entropyin, kat3101_nonce, kat3101_persstr, + kat3101_entropyinpr1, kat3101_addinpr1, kat3101_entropyinpr2, + kat3101_addinpr2, kat3101_retbits +}; +static const struct drbg_kat kat3101 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3101_t +}; + +static const unsigned char kat3102_entropyin[] = { + 0x6c, 0xc1, 0x6f, 0xd9, 0x8a, 0x46, 0x0b, 0xf7, 0x89, 0x34, 0x92, 0xc5, + 0x44, 0x83, 0x60, 0xa1, +}; +static const unsigned char kat3102_nonce[] = { + 0xac, 0x23, 0x48, 0xc5, 0x9e, 0xca, 0xed, 0x06, +}; +static const unsigned char kat3102_persstr[] = { + 0xe3, 0x60, 0x61, 0x88, 0x67, 0x90, 0x41, 0x30, 0x88, 0x87, 0x59, 0x6d, + 0xe0, 0xa8, 0x47, 0x03, +}; +static const unsigned char kat3102_entropyinpr1[] = { + 0xf7, 0x19, 0xf9, 0x2f, 0x53, 0x31, 0x05, 0x81, 0x88, 0x64, 0x64, 0xae, + 0x48, 0xc8, 0x69, 0x52, +}; +static const unsigned char kat3102_addinpr1[] = {0}; +static const unsigned char kat3102_entropyinpr2[] = { + 0xae, 0xbb, 0x99, 0xad, 0x1c, 0x3c, 0x6d, 0x8e, 0xf9, 0xf6, 0x5e, 0x4e, + 0x40, 0xca, 0xba, 0xb0, +}; +static const unsigned char kat3102_addinpr2[] = {0}; +static const unsigned char kat3102_retbits[] = { + 0xbe, 0xb8, 0x9a, 0xd8, 0x1f, 0x87, 0xce, 0xb8, 0x06, 0x49, 0xe8, 0x86, + 0xa9, 0xf4, 0x37, 0x6a, 0xd3, 0x3f, 0xc3, 0x29, 0x21, 0x3f, 0x66, 0x21, + 0xd7, 0x42, 0x47, 0x20, 0x23, 0x43, 0x78, 0x44, 0xfe, 0x6b, 0x79, 0x3d, + 0x20, 0x76, 0xfe, 0x94, 0x52, 0xdc, 0x77, 0x1f, 0xa6, 0xe5, 0x9a, 0xe4, + 0x6a, 0x57, 0x64, 0x2c, 0xdb, 0x24, 0x68, 0x20, 0xab, 0xe0, 0x8d, 0x62, + 0x26, 0x9b, 0x84, 0x69, +}; +static const struct drbg_kat_pr_true kat3102_t = { + 11, kat3102_entropyin, kat3102_nonce, kat3102_persstr, + kat3102_entropyinpr1, kat3102_addinpr1, kat3102_entropyinpr2, + kat3102_addinpr2, kat3102_retbits +}; +static const struct drbg_kat kat3102 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3102_t +}; + +static const unsigned char kat3103_entropyin[] = { + 0x59, 0xcd, 0x16, 0x85, 0x4c, 0x0e, 0xb7, 0xf2, 0x33, 0xc3, 0x0f, 0xcc, + 0x41, 0x38, 0xb0, 0x49, +}; +static const unsigned char kat3103_nonce[] = { + 0x81, 0xdc, 0xe7, 0xed, 0x37, 0xd6, 0xe2, 0x51, +}; +static const unsigned char kat3103_persstr[] = { + 0x60, 0xdd, 0x02, 0x9e, 0x96, 0x74, 0x33, 0x29, 0x07, 0x98, 0xb5, 0x71, + 0x74, 0xf8, 0x07, 0x0e, +}; +static const unsigned char kat3103_entropyinpr1[] = { + 0x65, 0x67, 0xce, 0x08, 0x37, 0xeb, 0x8c, 0x4e, 0x10, 0x72, 0x9d, 0x67, + 0x51, 0x5f, 0xdf, 0x5f, +}; +static const unsigned char kat3103_addinpr1[] = {0}; +static const unsigned char kat3103_entropyinpr2[] = { + 0x3c, 0x73, 0xa5, 0x78, 0xf3, 0x6b, 0xe6, 0x83, 0x31, 0xb9, 0x67, 0x0c, + 0xb2, 0x5b, 0x98, 0x9e, +}; +static const unsigned char kat3103_addinpr2[] = {0}; +static const unsigned char kat3103_retbits[] = { + 0x8c, 0xd6, 0xbe, 0x88, 0xd2, 0x4f, 0xfa, 0x12, 0x7d, 0x72, 0x89, 0x7b, + 0xa7, 0xfa, 0x91, 0x22, 0xe8, 0x51, 0x8b, 0x38, 0xba, 0x69, 0x3d, 0xaf, + 0xb0, 0x64, 0x7f, 0x09, 0x10, 0x9f, 0x17, 0x66, 0x5c, 0x48, 0xec, 0x58, + 0x46, 0xb8, 0x93, 0xab, 0x80, 0xff, 0x72, 0x60, 0x23, 0xa3, 0x4c, 0xad, + 0x67, 0x69, 0xb7, 0xd7, 0xa9, 0xa4, 0x6a, 0x1a, 0x43, 0x93, 0xad, 0x1f, + 0xbe, 0x43, 0xb0, 0x87, +}; +static const struct drbg_kat_pr_true kat3103_t = { + 12, kat3103_entropyin, kat3103_nonce, kat3103_persstr, + kat3103_entropyinpr1, kat3103_addinpr1, kat3103_entropyinpr2, + kat3103_addinpr2, kat3103_retbits +}; +static const struct drbg_kat kat3103 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3103_t +}; + +static const unsigned char kat3104_entropyin[] = { + 0x34, 0xaf, 0x5f, 0xf0, 0xff, 0x1e, 0x17, 0xdc, 0xc8, 0x69, 0x07, 0xf3, + 0x15, 0x1c, 0x4d, 0xd1, +}; +static const unsigned char kat3104_nonce[] = { + 0x89, 0x88, 0xd9, 0xa4, 0x75, 0xfb, 0x40, 0x42, +}; +static const unsigned char kat3104_persstr[] = { + 0xa5, 0x39, 0x81, 0xc9, 0x0e, 0xf8, 0xc7, 0x7f, 0xae, 0x3f, 0x59, 0xbf, + 0x27, 0x7c, 0x26, 0x41, +}; +static const unsigned char kat3104_entropyinpr1[] = { + 0x97, 0x0b, 0x7e, 0xa4, 0xbc, 0x3d, 0x13, 0x47, 0xc1, 0xff, 0x46, 0x61, + 0x5d, 0xaa, 0x05, 0xcd, +}; +static const unsigned char kat3104_addinpr1[] = {0}; +static const unsigned char kat3104_entropyinpr2[] = { + 0xc0, 0x96, 0xdc, 0x01, 0x46, 0x55, 0xbe, 0xfc, 0x7b, 0x4f, 0xc5, 0x95, + 0x5b, 0x97, 0x54, 0x28, +}; +static const unsigned char kat3104_addinpr2[] = {0}; +static const unsigned char kat3104_retbits[] = { + 0xbe, 0x56, 0xa7, 0x88, 0xec, 0x75, 0x92, 0xe4, 0x9e, 0x83, 0x1b, 0xa4, + 0xa4, 0xde, 0xc7, 0x57, 0x75, 0xf6, 0xa5, 0x7f, 0xfd, 0x36, 0x8e, 0x66, + 0xc9, 0x8f, 0xa3, 0x6b, 0x83, 0xbe, 0xdd, 0xe7, 0x12, 0xb7, 0x68, 0xd7, + 0x57, 0x81, 0xbe, 0xd0, 0x6e, 0x04, 0x9d, 0xc7, 0xdc, 0xab, 0x36, 0xc6, + 0xcc, 0x20, 0xe0, 0x91, 0xe7, 0x68, 0xc7, 0xc3, 0x2d, 0x16, 0x8a, 0xb9, + 0xad, 0xc0, 0x48, 0xe1, +}; +static const struct drbg_kat_pr_true kat3104_t = { + 13, kat3104_entropyin, kat3104_nonce, kat3104_persstr, + kat3104_entropyinpr1, kat3104_addinpr1, kat3104_entropyinpr2, + kat3104_addinpr2, kat3104_retbits +}; +static const struct drbg_kat kat3104 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3104_t +}; + +static const unsigned char kat3105_entropyin[] = { + 0xf5, 0x11, 0xfd, 0x27, 0x91, 0x27, 0xd2, 0xf0, 0x80, 0xc2, 0x64, 0x09, + 0x46, 0xa8, 0xad, 0xef, +}; +static const unsigned char kat3105_nonce[] = { + 0xb9, 0x88, 0xd1, 0x4a, 0x72, 0xbe, 0x7c, 0x9c, +}; +static const unsigned char kat3105_persstr[] = { + 0x6f, 0xae, 0xdb, 0x45, 0xc4, 0x57, 0x8b, 0x51, 0x87, 0x7f, 0xc4, 0xc8, + 0x12, 0xef, 0xff, 0x33, +}; +static const unsigned char kat3105_entropyinpr1[] = { + 0xca, 0x4d, 0x2e, 0x40, 0xf1, 0x66, 0xeb, 0x66, 0xa1, 0x46, 0xc2, 0xfb, + 0xda, 0x86, 0xaa, 0xfa, +}; +static const unsigned char kat3105_addinpr1[] = {0}; +static const unsigned char kat3105_entropyinpr2[] = { + 0x64, 0x3c, 0xeb, 0x41, 0xff, 0x41, 0xd0, 0x06, 0xcf, 0xf5, 0x4d, 0x99, + 0x96, 0x46, 0xf3, 0xe6, +}; +static const unsigned char kat3105_addinpr2[] = {0}; +static const unsigned char kat3105_retbits[] = { + 0x92, 0x84, 0x04, 0xb3, 0xdc, 0x10, 0x69, 0xbb, 0xc4, 0x07, 0xdc, 0x95, + 0xc9, 0x79, 0x0f, 0x0b, 0xa9, 0xf3, 0xc6, 0x81, 0x26, 0x66, 0x16, 0x33, + 0x7e, 0x2e, 0x40, 0xcb, 0x38, 0x79, 0x1a, 0x29, 0x56, 0xcc, 0xab, 0x3b, + 0x0f, 0xdc, 0x1f, 0xf7, 0x5e, 0x64, 0x96, 0x20, 0x40, 0xa3, 0x29, 0xa0, + 0xa0, 0x92, 0xd6, 0xfa, 0xee, 0x9a, 0xd3, 0x54, 0x48, 0xe3, 0xe7, 0xa4, + 0x15, 0x8c, 0x8a, 0x79, +}; +static const struct drbg_kat_pr_true kat3105_t = { + 14, kat3105_entropyin, kat3105_nonce, kat3105_persstr, + kat3105_entropyinpr1, kat3105_addinpr1, kat3105_entropyinpr2, + kat3105_addinpr2, kat3105_retbits +}; +static const struct drbg_kat kat3105 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 0, 64, &kat3105_t +}; + +static const unsigned char kat3106_entropyin[] = { + 0xd3, 0x45, 0x4b, 0x25, 0x7e, 0xcd, 0x83, 0xc3, 0xbe, 0x96, 0xb8, 0xf5, + 0x84, 0x7b, 0xe6, 0xeb, +}; +static const unsigned char kat3106_nonce[] = { + 0xb2, 0x41, 0xf1, 0x29, 0x5d, 0xf4, 0xd9, 0x99, +}; +static const unsigned char kat3106_persstr[] = { + 0x6e, 0x8d, 0x9b, 0x4d, 0xd8, 0xd1, 0x7e, 0xc9, 0x11, 0x11, 0xa4, 0xcb, + 0x93, 0xba, 0x4f, 0x25, +}; +static const unsigned char kat3106_entropyinpr1[] = { + 0x66, 0xd5, 0x78, 0x53, 0x5e, 0x2b, 0x4b, 0x41, 0x56, 0x02, 0x98, 0xfe, + 0x7f, 0xd9, 0xe2, 0x40, +}; +static const unsigned char kat3106_addinpr1[] = { + 0x0b, 0xde, 0xb8, 0x88, 0x60, 0x4d, 0xb3, 0xa7, 0xb6, 0x15, 0xb5, 0xba, + 0xcb, 0xe4, 0x25, 0x00, +}; +static const unsigned char kat3106_entropyinpr2[] = { + 0x1d, 0x97, 0xe8, 0x9c, 0x60, 0x39, 0x15, 0x20, 0x7a, 0x65, 0x60, 0x52, + 0x0c, 0x4f, 0xeb, 0x00, +}; +static const unsigned char kat3106_addinpr2[] = { + 0x79, 0xf3, 0x8d, 0xd5, 0x8d, 0x83, 0x5f, 0x1a, 0xe5, 0x89, 0x55, 0xbb, + 0xdb, 0x50, 0x0c, 0xfc, +}; +static const unsigned char kat3106_retbits[] = { + 0x26, 0x75, 0x49, 0x07, 0x9e, 0x94, 0x6a, 0x1e, 0xa7, 0x24, 0x16, 0xab, + 0x4f, 0x57, 0xbc, 0x9c, 0x7e, 0xcd, 0xe7, 0x3e, 0x8c, 0x5c, 0x79, 0x93, + 0xe2, 0xcc, 0xde, 0x38, 0xf8, 0x54, 0xed, 0xb4, 0xc4, 0x3d, 0x57, 0x66, + 0xda, 0x71, 0xda, 0x70, 0x13, 0xae, 0x71, 0xf4, 0x36, 0x6b, 0x8d, 0x1c, + 0xfa, 0x19, 0x6d, 0x3f, 0x0f, 0xaa, 0xd2, 0xac, 0x98, 0xc4, 0x25, 0xc5, + 0x6a, 0xdb, 0xf3, 0x12, +}; +static const struct drbg_kat_pr_true kat3106_t = { + 0, kat3106_entropyin, kat3106_nonce, kat3106_persstr, + kat3106_entropyinpr1, kat3106_addinpr1, kat3106_entropyinpr2, + kat3106_addinpr2, kat3106_retbits +}; +static const struct drbg_kat kat3106 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3106_t +}; + +static const unsigned char kat3107_entropyin[] = { + 0x47, 0x7f, 0x90, 0x3f, 0xec, 0x82, 0x34, 0x93, 0x36, 0x8a, 0xdf, 0xc4, + 0x8b, 0x47, 0x42, 0x81, +}; +static const unsigned char kat3107_nonce[] = { + 0xfc, 0x51, 0xc6, 0xbb, 0x4a, 0x96, 0xd8, 0x21, +}; +static const unsigned char kat3107_persstr[] = { + 0x8d, 0xbd, 0x64, 0x13, 0xae, 0xec, 0x56, 0xc5, 0x7d, 0xdf, 0xc1, 0x52, + 0xa0, 0x92, 0x17, 0x4f, +}; +static const unsigned char kat3107_entropyinpr1[] = { + 0xc4, 0x70, 0x0c, 0x54, 0xd6, 0xdf, 0x86, 0x4f, 0x50, 0x99, 0x12, 0xfc, + 0x88, 0x36, 0xb0, 0x99, +}; +static const unsigned char kat3107_addinpr1[] = { + 0x0b, 0xe0, 0x48, 0xc9, 0x48, 0x31, 0xbb, 0x7e, 0xbc, 0xb6, 0x69, 0x13, + 0xee, 0x1c, 0x8d, 0x22, +}; +static const unsigned char kat3107_entropyinpr2[] = { + 0x1c, 0x21, 0x05, 0xc6, 0x08, 0xad, 0x7b, 0xf0, 0x39, 0xde, 0x80, 0xcf, + 0x71, 0xbe, 0xfa, 0xdb, +}; +static const unsigned char kat3107_addinpr2[] = { + 0xdb, 0xf7, 0x00, 0x48, 0x7f, 0xc4, 0xe0, 0x20, 0x14, 0x8c, 0xae, 0xa0, + 0x11, 0x56, 0x55, 0x01, +}; +static const unsigned char kat3107_retbits[] = { + 0x3d, 0xee, 0x6e, 0x08, 0x4e, 0x75, 0x5a, 0x74, 0xca, 0x61, 0x72, 0x59, + 0x47, 0xe3, 0x62, 0x76, 0xb0, 0x58, 0x7d, 0xdd, 0xb1, 0xee, 0xee, 0x12, + 0x18, 0xaf, 0xef, 0x72, 0xe9, 0xcb, 0x0a, 0xcd, 0xbd, 0x15, 0x8e, 0x8d, + 0xd5, 0x9d, 0x19, 0x7c, 0x40, 0x29, 0x1d, 0x8c, 0x93, 0x0f, 0x27, 0x8a, + 0xe4, 0x83, 0x26, 0x89, 0x62, 0x59, 0x4d, 0x37, 0x5b, 0x84, 0x95, 0x17, + 0x28, 0x79, 0x09, 0xfc, +}; +static const struct drbg_kat_pr_true kat3107_t = { + 1, kat3107_entropyin, kat3107_nonce, kat3107_persstr, + kat3107_entropyinpr1, kat3107_addinpr1, kat3107_entropyinpr2, + kat3107_addinpr2, kat3107_retbits +}; +static const struct drbg_kat kat3107 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3107_t +}; + +static const unsigned char kat3108_entropyin[] = { + 0x8d, 0x2e, 0x8b, 0x6e, 0x09, 0xa4, 0xf9, 0xed, 0xb2, 0xa3, 0x0a, 0xb0, + 0x16, 0x4e, 0xd2, 0x32, +}; +static const unsigned char kat3108_nonce[] = { + 0x6a, 0x8a, 0xe5, 0xf1, 0x5c, 0x0b, 0x4c, 0x21, +}; +static const unsigned char kat3108_persstr[] = { + 0x9b, 0x46, 0x3f, 0x43, 0xb2, 0x0d, 0x3e, 0xc3, 0xf7, 0x8d, 0x28, 0x23, + 0xab, 0xfa, 0x9a, 0x96, +}; +static const unsigned char kat3108_entropyinpr1[] = { + 0xae, 0x78, 0x67, 0xfd, 0xde, 0x84, 0x53, 0xb4, 0x91, 0x3a, 0xcc, 0x8d, + 0x9b, 0xd8, 0x3b, 0x5a, +}; +static const unsigned char kat3108_addinpr1[] = { + 0xaf, 0x24, 0x93, 0x2b, 0x03, 0xd6, 0xbc, 0xb8, 0xe9, 0xa4, 0xc6, 0xb6, + 0x26, 0x72, 0x69, 0x22, +}; +static const unsigned char kat3108_entropyinpr2[] = { + 0xd1, 0x87, 0xf1, 0xa3, 0x19, 0xf8, 0xb0, 0xc5, 0x7d, 0xda, 0x74, 0x37, + 0x96, 0xce, 0x19, 0x72, +}; +static const unsigned char kat3108_addinpr2[] = { + 0x9f, 0x25, 0x72, 0x89, 0x69, 0xa8, 0xd9, 0x0d, 0x68, 0xc6, 0x75, 0x7f, + 0x83, 0x23, 0x12, 0x4e, +}; +static const unsigned char kat3108_retbits[] = { + 0x6e, 0x6f, 0x11, 0x4b, 0xfb, 0xa3, 0x44, 0x8f, 0xa4, 0x71, 0x49, 0xca, + 0x4b, 0x4b, 0x33, 0x44, 0x25, 0x05, 0x4d, 0x5c, 0x52, 0x13, 0xd6, 0xf1, + 0xa5, 0x0b, 0xe0, 0xbd, 0x9c, 0x7b, 0x3a, 0xca, 0xfa, 0x3d, 0xab, 0xe0, + 0x63, 0x3b, 0xe1, 0xb5, 0xa4, 0xbf, 0xea, 0xd8, 0x39, 0xba, 0x7e, 0x5f, + 0x9b, 0x85, 0xe7, 0x09, 0x7d, 0x40, 0x6a, 0x5a, 0xe0, 0x18, 0x02, 0x27, + 0x6b, 0x7b, 0x50, 0x4e, +}; +static const struct drbg_kat_pr_true kat3108_t = { + 2, kat3108_entropyin, kat3108_nonce, kat3108_persstr, + kat3108_entropyinpr1, kat3108_addinpr1, kat3108_entropyinpr2, + kat3108_addinpr2, kat3108_retbits +}; +static const struct drbg_kat kat3108 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3108_t +}; + +static const unsigned char kat3109_entropyin[] = { + 0x67, 0x30, 0x70, 0x48, 0xf5, 0xd5, 0xf8, 0xd6, 0xae, 0x46, 0x50, 0xa8, + 0x62, 0xa4, 0xda, 0xd7, +}; +static const unsigned char kat3109_nonce[] = { + 0xba, 0x44, 0x37, 0xad, 0xab, 0x2d, 0x35, 0x13, +}; +static const unsigned char kat3109_persstr[] = { + 0xfa, 0x94, 0xf6, 0xda, 0x8c, 0x14, 0x98, 0x59, 0xe9, 0xc1, 0x25, 0xd4, + 0x16, 0x1f, 0x22, 0x5f, +}; +static const unsigned char kat3109_entropyinpr1[] = { + 0x78, 0xb6, 0x34, 0x2e, 0x3f, 0x9e, 0xde, 0x53, 0xc2, 0xe1, 0x38, 0xc6, + 0x13, 0xed, 0x6d, 0x7e, +}; +static const unsigned char kat3109_addinpr1[] = { + 0x33, 0x22, 0x64, 0xc6, 0x45, 0x68, 0xea, 0x0f, 0x7a, 0x99, 0xde, 0x15, + 0xdc, 0x7d, 0xa9, 0x84, +}; +static const unsigned char kat3109_entropyinpr2[] = { + 0x48, 0xc6, 0xaa, 0x9c, 0x70, 0x89, 0x2c, 0x56, 0x2d, 0xf5, 0xb2, 0x22, + 0xf2, 0x8d, 0xc0, 0x58, +}; +static const unsigned char kat3109_addinpr2[] = { + 0xa1, 0xba, 0xaf, 0xed, 0xf3, 0xad, 0xce, 0x4b, 0x0d, 0xd9, 0x7a, 0x23, + 0xaa, 0xec, 0x5d, 0xca, +}; +static const unsigned char kat3109_retbits[] = { + 0x73, 0x74, 0xed, 0x4e, 0x08, 0x63, 0x4f, 0x8c, 0xc1, 0x17, 0xe9, 0x05, + 0xb5, 0xc5, 0xb9, 0xbf, 0xe4, 0x9a, 0xc5, 0xc1, 0x47, 0xe5, 0x38, 0x9c, + 0xa1, 0x8f, 0x0a, 0x4c, 0x95, 0x0c, 0x00, 0xd0, 0x39, 0x7d, 0x73, 0xb1, + 0x6d, 0x3d, 0x27, 0xe1, 0x81, 0x6c, 0x1b, 0xf4, 0xd7, 0x25, 0xab, 0xba, + 0x35, 0x61, 0x99, 0x05, 0x99, 0x72, 0x99, 0x83, 0x22, 0x4d, 0x1b, 0x0f, + 0x8f, 0xff, 0x1b, 0x7f, +}; +static const struct drbg_kat_pr_true kat3109_t = { + 3, kat3109_entropyin, kat3109_nonce, kat3109_persstr, + kat3109_entropyinpr1, kat3109_addinpr1, kat3109_entropyinpr2, + kat3109_addinpr2, kat3109_retbits +}; +static const struct drbg_kat kat3109 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3109_t +}; + +static const unsigned char kat3110_entropyin[] = { + 0xa0, 0x10, 0xe8, 0xb9, 0xc4, 0xff, 0x38, 0x0c, 0x65, 0xa7, 0x63, 0x13, + 0x69, 0x4e, 0x40, 0x87, +}; +static const unsigned char kat3110_nonce[] = { + 0xde, 0x80, 0x0f, 0x31, 0xe8, 0x01, 0xd0, 0xbf, +}; +static const unsigned char kat3110_persstr[] = { + 0x79, 0x96, 0x0b, 0x78, 0x57, 0xc8, 0x0e, 0xb3, 0x71, 0x13, 0xd5, 0xdf, + 0x7a, 0x2f, 0x9d, 0x34, +}; +static const unsigned char kat3110_entropyinpr1[] = { + 0x0b, 0xb7, 0xe4, 0x0a, 0xeb, 0xec, 0xad, 0x3e, 0x23, 0x8d, 0x5e, 0xc1, + 0x65, 0x7b, 0x06, 0x71, +}; +static const unsigned char kat3110_addinpr1[] = { + 0x81, 0x10, 0x91, 0x2e, 0x9a, 0x54, 0x55, 0x7b, 0xcb, 0xf4, 0xe6, 0x9c, + 0xdf, 0x89, 0x51, 0x35, +}; +static const unsigned char kat3110_entropyinpr2[] = { + 0xd2, 0x42, 0xc9, 0x6f, 0x8d, 0x8b, 0x3b, 0x18, 0xf6, 0x9d, 0xec, 0xd1, + 0xf0, 0x08, 0xb4, 0xc5, +}; +static const unsigned char kat3110_addinpr2[] = { + 0x7a, 0x87, 0xc1, 0xa2, 0xde, 0x26, 0xd4, 0xd8, 0x35, 0x8a, 0x07, 0x59, + 0xd7, 0xa2, 0xe2, 0x04, +}; +static const unsigned char kat3110_retbits[] = { + 0x1d, 0x29, 0x69, 0xb2, 0xe3, 0xee, 0x29, 0x29, 0x04, 0x0c, 0xd4, 0xf4, + 0x03, 0x1f, 0x4f, 0x96, 0xda, 0x23, 0x18, 0xee, 0x10, 0x81, 0xdc, 0x43, + 0x5f, 0x76, 0x55, 0x4d, 0x0f, 0xf7, 0x19, 0xdd, 0x6f, 0x5a, 0x92, 0xb3, + 0xde, 0x94, 0xb0, 0x9f, 0xf5, 0x77, 0x8c, 0x25, 0xe3, 0xdb, 0xca, 0xee, + 0x51, 0xd9, 0x33, 0xa3, 0xa6, 0xa4, 0x06, 0xd1, 0x2e, 0x3a, 0xb3, 0xc3, + 0xd9, 0x17, 0x40, 0x3e, +}; +static const struct drbg_kat_pr_true kat3110_t = { + 4, kat3110_entropyin, kat3110_nonce, kat3110_persstr, + kat3110_entropyinpr1, kat3110_addinpr1, kat3110_entropyinpr2, + kat3110_addinpr2, kat3110_retbits +}; +static const struct drbg_kat kat3110 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3110_t +}; + +static const unsigned char kat3111_entropyin[] = { + 0x55, 0xff, 0x77, 0xe5, 0x59, 0x6f, 0x57, 0xa0, 0xe7, 0xa0, 0x01, 0x71, + 0x6c, 0xd7, 0xa5, 0x4e, +}; +static const unsigned char kat3111_nonce[] = { + 0x9e, 0x2a, 0x85, 0xe9, 0xdf, 0x7c, 0xc2, 0xe0, +}; +static const unsigned char kat3111_persstr[] = { + 0x8d, 0xa4, 0x5c, 0xb7, 0xdb, 0x5d, 0x84, 0xb7, 0x52, 0x1b, 0x38, 0x39, + 0xfb, 0x33, 0x99, 0x82, +}; +static const unsigned char kat3111_entropyinpr1[] = { + 0x3d, 0xce, 0x58, 0xc8, 0x8c, 0x83, 0xa5, 0x95, 0x39, 0xff, 0xb3, 0x8a, + 0x7a, 0x44, 0xf3, 0x07, +}; +static const unsigned char kat3111_addinpr1[] = { + 0x4b, 0xe5, 0xde, 0xe6, 0x7a, 0x76, 0xb7, 0x31, 0x16, 0xa3, 0xfd, 0x87, + 0x6f, 0x5d, 0x23, 0x54, +}; +static const unsigned char kat3111_entropyinpr2[] = { + 0x97, 0xa7, 0x19, 0x0a, 0xf9, 0x68, 0x91, 0x9e, 0x57, 0xea, 0x16, 0x7a, + 0x26, 0xff, 0xab, 0xbc, +}; +static const unsigned char kat3111_addinpr2[] = { + 0x9e, 0x74, 0x4a, 0x9b, 0xed, 0x67, 0xb5, 0x0c, 0x8f, 0x2e, 0x45, 0x81, + 0x57, 0x42, 0xd1, 0x1d, +}; +static const unsigned char kat3111_retbits[] = { + 0x36, 0x80, 0xcc, 0x48, 0x19, 0x50, 0xe2, 0x95, 0x12, 0xaf, 0xab, 0x38, + 0x8b, 0x5a, 0x9b, 0xbb, 0xa7, 0xff, 0x80, 0x0c, 0xa7, 0xbf, 0x3b, 0x2d, + 0x90, 0x1a, 0x4e, 0xce, 0xf7, 0xea, 0xdb, 0xa0, 0x78, 0xcf, 0xa0, 0x3a, + 0xa0, 0xd5, 0xbb, 0x13, 0x3c, 0x09, 0xcb, 0xd3, 0x0a, 0xd7, 0x8b, 0x99, + 0x9d, 0x27, 0x49, 0x05, 0x14, 0xb9, 0x5e, 0x4b, 0x8b, 0xdd, 0x75, 0xc9, + 0x86, 0xc4, 0x2f, 0x8d, +}; +static const struct drbg_kat_pr_true kat3111_t = { + 5, kat3111_entropyin, kat3111_nonce, kat3111_persstr, + kat3111_entropyinpr1, kat3111_addinpr1, kat3111_entropyinpr2, + kat3111_addinpr2, kat3111_retbits +}; +static const struct drbg_kat kat3111 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3111_t +}; + +static const unsigned char kat3112_entropyin[] = { + 0x24, 0x13, 0x80, 0xaf, 0xe3, 0x1b, 0x6b, 0x2a, 0xc7, 0xb2, 0xb2, 0xf5, + 0x3f, 0x6f, 0xc6, 0xc6, +}; +static const unsigned char kat3112_nonce[] = { + 0xd8, 0xaf, 0x32, 0xbe, 0x1c, 0x92, 0x04, 0x99, +}; +static const unsigned char kat3112_persstr[] = { + 0x2e, 0x4c, 0x73, 0x20, 0x34, 0x26, 0x95, 0xba, 0x11, 0x91, 0x20, 0x2e, + 0x9e, 0x9f, 0x48, 0xca, +}; +static const unsigned char kat3112_entropyinpr1[] = { + 0x22, 0x52, 0xd6, 0x95, 0xc1, 0xc4, 0xb0, 0x4d, 0x58, 0x00, 0x91, 0x45, + 0x1d, 0xc0, 0xf2, 0x0c, +}; +static const unsigned char kat3112_addinpr1[] = { + 0xe5, 0x4b, 0x05, 0xe1, 0x31, 0xe9, 0x44, 0x76, 0xb7, 0x07, 0xed, 0xdf, + 0xb3, 0xb0, 0xfe, 0x54, +}; +static const unsigned char kat3112_entropyinpr2[] = { + 0x0a, 0x7a, 0x85, 0xc1, 0x6b, 0xfa, 0x0f, 0xc8, 0x3e, 0x2f, 0x2a, 0xfb, + 0x74, 0xde, 0x87, 0x69, +}; +static const unsigned char kat3112_addinpr2[] = { + 0x0f, 0xbe, 0x36, 0xbd, 0x84, 0x8c, 0x75, 0x21, 0x87, 0x22, 0xb4, 0x20, + 0x48, 0xc7, 0xc8, 0x14, +}; +static const unsigned char kat3112_retbits[] = { + 0x01, 0x29, 0x72, 0x26, 0x12, 0xd6, 0xcf, 0xda, 0x1b, 0x46, 0x4d, 0x31, + 0x8f, 0x1e, 0x90, 0x9a, 0xd1, 0x7b, 0x97, 0x88, 0x2f, 0xb7, 0xa5, 0x0e, + 0x08, 0x9d, 0x47, 0x16, 0x31, 0x6f, 0x6c, 0xb9, 0x46, 0x13, 0x99, 0x20, + 0xb6, 0xa8, 0x3e, 0x17, 0x2b, 0x9e, 0x53, 0x1c, 0xc9, 0x29, 0x8b, 0x9d, + 0x31, 0x1e, 0x3b, 0x00, 0xb7, 0x6c, 0xfa, 0xc0, 0x80, 0x22, 0x04, 0x90, + 0x26, 0x51, 0x6c, 0x12, +}; +static const struct drbg_kat_pr_true kat3112_t = { + 6, kat3112_entropyin, kat3112_nonce, kat3112_persstr, + kat3112_entropyinpr1, kat3112_addinpr1, kat3112_entropyinpr2, + kat3112_addinpr2, kat3112_retbits +}; +static const struct drbg_kat kat3112 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3112_t +}; + +static const unsigned char kat3113_entropyin[] = { + 0xcb, 0x56, 0x95, 0xc6, 0xbb, 0xe3, 0x72, 0x9a, 0x61, 0xcc, 0x6f, 0xca, + 0xed, 0x75, 0x3f, 0xb2, +}; +static const unsigned char kat3113_nonce[] = { + 0x7f, 0xaa, 0x98, 0x34, 0x14, 0x9b, 0xba, 0x80, +}; +static const unsigned char kat3113_persstr[] = { + 0xcd, 0xfb, 0x8f, 0x29, 0x35, 0xcc, 0x92, 0x39, 0xc5, 0x8d, 0x60, 0xbb, + 0x18, 0x03, 0x26, 0x45, +}; +static const unsigned char kat3113_entropyinpr1[] = { + 0x8e, 0x55, 0xaa, 0xfc, 0x86, 0xdd, 0x45, 0x2e, 0x10, 0x2a, 0x58, 0xee, + 0xac, 0xbb, 0xde, 0xa1, +}; +static const unsigned char kat3113_addinpr1[] = { + 0x72, 0xaf, 0x1a, 0xdc, 0x55, 0x2d, 0xbb, 0x13, 0x10, 0x2d, 0x7c, 0x4c, + 0x73, 0x82, 0x55, 0x87, +}; +static const unsigned char kat3113_entropyinpr2[] = { + 0x25, 0x5c, 0x04, 0x48, 0x27, 0xcf, 0x7c, 0xd9, 0xf6, 0x3f, 0x41, 0xb5, + 0x86, 0x27, 0x87, 0x5e, +}; +static const unsigned char kat3113_addinpr2[] = { + 0x24, 0xb9, 0xb7, 0x3e, 0x54, 0x48, 0xcf, 0x2f, 0x7c, 0xa4, 0x77, 0xce, + 0x81, 0x2a, 0xc3, 0x20, +}; +static const unsigned char kat3113_retbits[] = { + 0x65, 0xc2, 0xa9, 0x05, 0x48, 0x6e, 0xa8, 0x03, 0x4d, 0xf6, 0xbe, 0xe8, + 0x0f, 0xb8, 0x31, 0xbb, 0x23, 0x72, 0x62, 0xaa, 0x40, 0x57, 0x45, 0x08, + 0xdd, 0x83, 0x33, 0x3f, 0x6a, 0xcd, 0x12, 0x93, 0x65, 0xf1, 0xbf, 0x4c, + 0xd7, 0x94, 0x5e, 0xb8, 0xbf, 0xe2, 0x23, 0x94, 0xea, 0x44, 0xaf, 0x2d, + 0x10, 0x1f, 0xc1, 0x5a, 0xc2, 0x2d, 0x32, 0xc4, 0x14, 0xe2, 0x0a, 0x1a, + 0x9c, 0x4f, 0xfa, 0x9a, +}; +static const struct drbg_kat_pr_true kat3113_t = { + 7, kat3113_entropyin, kat3113_nonce, kat3113_persstr, + kat3113_entropyinpr1, kat3113_addinpr1, kat3113_entropyinpr2, + kat3113_addinpr2, kat3113_retbits +}; +static const struct drbg_kat kat3113 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3113_t +}; + +static const unsigned char kat3114_entropyin[] = { + 0x59, 0xd4, 0x08, 0xad, 0x23, 0x4d, 0x63, 0x58, 0x6e, 0x58, 0xe4, 0x14, + 0x7e, 0xbc, 0xa3, 0x73, +}; +static const unsigned char kat3114_nonce[] = { + 0x02, 0xe0, 0x30, 0xc3, 0xab, 0xa4, 0x43, 0x2c, +}; +static const unsigned char kat3114_persstr[] = { + 0x39, 0x54, 0xd0, 0xdf, 0x1a, 0xdb, 0x67, 0xda, 0x76, 0x96, 0xe9, 0x5e, + 0x57, 0x26, 0x06, 0xd2, +}; +static const unsigned char kat3114_entropyinpr1[] = { + 0xc0, 0x9d, 0x05, 0x93, 0x8e, 0xba, 0x84, 0x50, 0x1c, 0xa0, 0x77, 0xaa, + 0xfd, 0xb3, 0x62, 0xc7, +}; +static const unsigned char kat3114_addinpr1[] = { + 0xcf, 0x72, 0x65, 0x64, 0x45, 0xad, 0x7d, 0xb0, 0x6e, 0x39, 0x25, 0x7a, + 0x99, 0xba, 0x62, 0xaf, +}; +static const unsigned char kat3114_entropyinpr2[] = { + 0x93, 0xdf, 0x31, 0xc4, 0x3c, 0x5c, 0xef, 0xb2, 0xda, 0xb7, 0xb3, 0xa7, + 0xce, 0xe5, 0x27, 0xb8, +}; +static const unsigned char kat3114_addinpr2[] = { + 0x3e, 0x0b, 0xac, 0x93, 0x6e, 0xf5, 0x2a, 0xe7, 0xcd, 0x74, 0x22, 0xf0, + 0x96, 0x48, 0xb9, 0x7b, +}; +static const unsigned char kat3114_retbits[] = { + 0xbd, 0xe7, 0x9b, 0x68, 0x63, 0x1e, 0x05, 0xe4, 0xbc, 0x40, 0x4b, 0x29, + 0x50, 0x82, 0xe8, 0xf3, 0x21, 0x06, 0x80, 0xfb, 0xb3, 0x30, 0x0f, 0xe7, + 0xc0, 0xda, 0xc7, 0x89, 0xe1, 0xb0, 0x75, 0x10, 0x58, 0xec, 0xfe, 0x5b, + 0xc0, 0xde, 0xe6, 0x50, 0x08, 0x18, 0xd1, 0xac, 0x8b, 0xf3, 0x0e, 0x9d, + 0x0b, 0xc0, 0x71, 0xc9, 0x15, 0xf4, 0xbe, 0x4e, 0x12, 0x49, 0xee, 0xcb, + 0xb0, 0x3d, 0xd5, 0xf5, +}; +static const struct drbg_kat_pr_true kat3114_t = { + 8, kat3114_entropyin, kat3114_nonce, kat3114_persstr, + kat3114_entropyinpr1, kat3114_addinpr1, kat3114_entropyinpr2, + kat3114_addinpr2, kat3114_retbits +}; +static const struct drbg_kat kat3114 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3114_t +}; + +static const unsigned char kat3115_entropyin[] = { + 0xf5, 0x43, 0xf7, 0x25, 0x21, 0x37, 0xe0, 0x9c, 0x92, 0xf2, 0xaa, 0xff, + 0x79, 0x5f, 0xb4, 0x3a, +}; +static const unsigned char kat3115_nonce[] = { + 0xe4, 0xfa, 0x00, 0x7f, 0xfb, 0x7e, 0x72, 0xf7, +}; +static const unsigned char kat3115_persstr[] = { + 0xfd, 0xbe, 0xcc, 0x9d, 0xe4, 0x01, 0x0f, 0xb7, 0x6e, 0xa9, 0x65, 0x0e, + 0x32, 0x62, 0xa2, 0x2e, +}; +static const unsigned char kat3115_entropyinpr1[] = { + 0xad, 0x2a, 0xce, 0x18, 0x3e, 0x9a, 0x14, 0xa0, 0x76, 0x91, 0x56, 0x1d, + 0x29, 0x26, 0x87, 0x8d, +}; +static const unsigned char kat3115_addinpr1[] = { + 0x2d, 0x94, 0x1a, 0x3a, 0x24, 0x9c, 0x8c, 0x41, 0xcc, 0x2e, 0x1f, 0x70, + 0x28, 0x43, 0xc5, 0x79, +}; +static const unsigned char kat3115_entropyinpr2[] = { + 0x3c, 0xf3, 0xd7, 0xcf, 0x44, 0x2d, 0x2e, 0x58, 0x35, 0x48, 0x7a, 0x41, + 0xb7, 0xb8, 0x71, 0x6c, +}; +static const unsigned char kat3115_addinpr2[] = { + 0x45, 0x22, 0xba, 0xa1, 0x30, 0xcc, 0xa0, 0x56, 0x42, 0x51, 0xee, 0xd3, + 0x32, 0xbf, 0x28, 0xeb, +}; +static const unsigned char kat3115_retbits[] = { + 0xa9, 0x5e, 0xf0, 0x89, 0xa7, 0xe6, 0xda, 0xdc, 0x1b, 0xdd, 0xe1, 0xd0, + 0x0a, 0x73, 0x22, 0xca, 0xb2, 0x27, 0x9b, 0xdb, 0x0e, 0x96, 0xe1, 0xf5, + 0x16, 0x75, 0x93, 0x00, 0x2f, 0x18, 0x4f, 0xb9, 0x2d, 0x9a, 0xcd, 0x23, + 0x64, 0x3e, 0x76, 0x67, 0xa5, 0x0f, 0xc3, 0xee, 0xe7, 0xf8, 0x8f, 0xd7, + 0xda, 0xd9, 0xd8, 0xe4, 0xa2, 0x1e, 0x82, 0xd9, 0xe3, 0xfe, 0xdf, 0x89, + 0xd7, 0x29, 0xee, 0x07, +}; +static const struct drbg_kat_pr_true kat3115_t = { + 9, kat3115_entropyin, kat3115_nonce, kat3115_persstr, + kat3115_entropyinpr1, kat3115_addinpr1, kat3115_entropyinpr2, + kat3115_addinpr2, kat3115_retbits +}; +static const struct drbg_kat kat3115 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3115_t +}; + +static const unsigned char kat3116_entropyin[] = { + 0x00, 0xe0, 0x56, 0xe4, 0xcb, 0x14, 0x4d, 0x2b, 0x97, 0x8a, 0xdc, 0x69, + 0xe3, 0xba, 0x32, 0x03, +}; +static const unsigned char kat3116_nonce[] = { + 0xbc, 0xb5, 0x11, 0x2e, 0xaf, 0x9a, 0xf9, 0xc0, +}; +static const unsigned char kat3116_persstr[] = { + 0x42, 0xb7, 0xe8, 0x69, 0x7e, 0x91, 0xec, 0x6d, 0xb8, 0x46, 0x31, 0xcf, + 0xcb, 0xf8, 0x3e, 0x07, +}; +static const unsigned char kat3116_entropyinpr1[] = { + 0x86, 0xf6, 0xfb, 0x16, 0x93, 0x9e, 0x2d, 0x32, 0xc1, 0xef, 0x6b, 0x93, + 0xbc, 0x41, 0x8a, 0x7d, +}; +static const unsigned char kat3116_addinpr1[] = { + 0x29, 0x59, 0xc2, 0x00, 0xc5, 0x2c, 0x0c, 0x4d, 0x94, 0xba, 0xd6, 0x13, + 0x11, 0xc1, 0x0e, 0x32, +}; +static const unsigned char kat3116_entropyinpr2[] = { + 0x88, 0x8f, 0x04, 0xe4, 0x1f, 0x79, 0x4a, 0x4b, 0x0c, 0x9e, 0xa8, 0x05, + 0x38, 0xcb, 0x3e, 0x89, +}; +static const unsigned char kat3116_addinpr2[] = { + 0x96, 0xf8, 0x12, 0xe9, 0xcb, 0xd5, 0x60, 0xd1, 0x16, 0xd3, 0x1d, 0x27, + 0xfb, 0x85, 0xbc, 0xa0, +}; +static const unsigned char kat3116_retbits[] = { + 0xc8, 0x5d, 0xad, 0x45, 0xfa, 0x30, 0xc3, 0xb0, 0x62, 0x09, 0x19, 0x66, + 0x95, 0x4b, 0x07, 0xcc, 0xd8, 0xd5, 0x5b, 0xd6, 0xf1, 0x63, 0x31, 0x2b, + 0x1c, 0xe7, 0xa7, 0x2d, 0x81, 0x92, 0x60, 0x1c, 0x5b, 0x4d, 0x82, 0x71, + 0x75, 0xbc, 0x82, 0x6e, 0x92, 0x30, 0x45, 0x9e, 0xf2, 0x12, 0x6a, 0xf6, + 0x11, 0xe9, 0x27, 0x96, 0x66, 0xa3, 0xeb, 0xf0, 0x38, 0x28, 0x1a, 0xd2, + 0xab, 0x32, 0x5d, 0xab, +}; +static const struct drbg_kat_pr_true kat3116_t = { + 10, kat3116_entropyin, kat3116_nonce, kat3116_persstr, + kat3116_entropyinpr1, kat3116_addinpr1, kat3116_entropyinpr2, + kat3116_addinpr2, kat3116_retbits +}; +static const struct drbg_kat kat3116 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3116_t +}; + +static const unsigned char kat3117_entropyin[] = { + 0x32, 0x18, 0x75, 0x4e, 0x66, 0xd9, 0x9b, 0x53, 0x99, 0xd4, 0x78, 0x7e, + 0x71, 0x95, 0xe0, 0x4d, +}; +static const unsigned char kat3117_nonce[] = { + 0xd9, 0x2c, 0x5a, 0xd8, 0x98, 0xde, 0xb2, 0x23, +}; +static const unsigned char kat3117_persstr[] = { + 0x7a, 0xfc, 0xf9, 0x15, 0x48, 0xe9, 0x46, 0x3a, 0x2a, 0x65, 0xfe, 0xa9, + 0x84, 0x1c, 0xa6, 0x57, +}; +static const unsigned char kat3117_entropyinpr1[] = { + 0x5a, 0x74, 0xc6, 0x78, 0xe0, 0x5b, 0xee, 0xb3, 0x15, 0x1f, 0x7f, 0x67, + 0x73, 0x69, 0x45, 0x81, +}; +static const unsigned char kat3117_addinpr1[] = { + 0xfc, 0xf7, 0x2d, 0xbc, 0x3a, 0xb5, 0x84, 0xe4, 0x9d, 0x3b, 0x51, 0xfb, + 0x04, 0xa5, 0x14, 0xad, +}; +static const unsigned char kat3117_entropyinpr2[] = { + 0xc9, 0x9f, 0x69, 0xa0, 0x50, 0xde, 0x0d, 0x9b, 0x1b, 0x5d, 0xc4, 0xb5, + 0xed, 0x78, 0xa3, 0x91, +}; +static const unsigned char kat3117_addinpr2[] = { + 0xf0, 0x77, 0x86, 0x45, 0xb1, 0x69, 0x85, 0x73, 0xad, 0x80, 0xcf, 0x03, + 0xf2, 0x27, 0x47, 0x00, +}; +static const unsigned char kat3117_retbits[] = { + 0x59, 0x47, 0xef, 0xb9, 0x9b, 0xf6, 0xfa, 0x94, 0xc2, 0x68, 0x17, 0x92, + 0xb0, 0x4e, 0x3c, 0x71, 0xe2, 0x12, 0x45, 0x41, 0xff, 0x94, 0x7a, 0x8d, + 0x1a, 0x97, 0x5e, 0xbc, 0x96, 0xc4, 0x8d, 0x3d, 0x41, 0x62, 0x52, 0x39, + 0x4c, 0x1e, 0x3b, 0x0b, 0x88, 0x7e, 0x8e, 0xee, 0x5e, 0x98, 0xa8, 0xab, + 0x37, 0x8a, 0x06, 0x54, 0xe3, 0xf8, 0xbd, 0x39, 0xcc, 0x95, 0x53, 0xda, + 0x78, 0xfa, 0x8f, 0x30, +}; +static const struct drbg_kat_pr_true kat3117_t = { + 11, kat3117_entropyin, kat3117_nonce, kat3117_persstr, + kat3117_entropyinpr1, kat3117_addinpr1, kat3117_entropyinpr2, + kat3117_addinpr2, kat3117_retbits +}; +static const struct drbg_kat kat3117 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3117_t +}; + +static const unsigned char kat3118_entropyin[] = { + 0x20, 0x3d, 0x5b, 0xfd, 0x37, 0x1a, 0x09, 0x6f, 0xca, 0x57, 0x4c, 0x80, + 0x7e, 0x0d, 0x65, 0xc6, +}; +static const unsigned char kat3118_nonce[] = { + 0xe0, 0xc5, 0xf9, 0xd1, 0x4a, 0x7a, 0x63, 0x51, +}; +static const unsigned char kat3118_persstr[] = { + 0x24, 0x69, 0xb3, 0xbc, 0xbd, 0xb5, 0x72, 0x21, 0xbe, 0x63, 0xaf, 0x19, + 0x41, 0xcd, 0xa3, 0x12, +}; +static const unsigned char kat3118_entropyinpr1[] = { + 0xa9, 0x76, 0xcb, 0x0b, 0x5b, 0xa5, 0x57, 0xcb, 0x5a, 0xac, 0x80, 0x63, + 0xe9, 0x88, 0x41, 0xb4, +}; +static const unsigned char kat3118_addinpr1[] = { + 0xf1, 0x7f, 0x6e, 0x4e, 0xe9, 0xfd, 0xd8, 0x27, 0x60, 0x62, 0xd0, 0x82, + 0x3d, 0x2a, 0x74, 0x69, +}; +static const unsigned char kat3118_entropyinpr2[] = { + 0xf5, 0x01, 0xc8, 0xfb, 0x64, 0x53, 0xeb, 0xcd, 0xe6, 0x32, 0xf8, 0x26, + 0x44, 0x18, 0x89, 0xc5, +}; +static const unsigned char kat3118_addinpr2[] = { + 0x27, 0xa9, 0x98, 0xbd, 0xcc, 0x1d, 0x39, 0xbd, 0x28, 0x3e, 0x70, 0xca, + 0x53, 0x44, 0xc7, 0x1e, +}; +static const unsigned char kat3118_retbits[] = { + 0x24, 0x29, 0x7f, 0x68, 0x97, 0xb4, 0x4c, 0x93, 0x74, 0x45, 0x0a, 0xd5, + 0x8c, 0x6d, 0x2c, 0xfb, 0xed, 0x7c, 0x41, 0x23, 0x2f, 0x7e, 0x34, 0x1a, + 0xc8, 0xcc, 0x39, 0xef, 0xa6, 0x76, 0x34, 0xb4, 0xeb, 0x69, 0xcc, 0x33, + 0x97, 0xd6, 0xb7, 0x63, 0x72, 0x10, 0xc9, 0xa6, 0xb4, 0x9e, 0x68, 0xee, + 0xe2, 0xb8, 0x73, 0x45, 0x26, 0x97, 0xc1, 0x27, 0xfd, 0xc1, 0x6a, 0xf4, + 0x34, 0x92, 0xe4, 0xd7, +}; +static const struct drbg_kat_pr_true kat3118_t = { + 12, kat3118_entropyin, kat3118_nonce, kat3118_persstr, + kat3118_entropyinpr1, kat3118_addinpr1, kat3118_entropyinpr2, + kat3118_addinpr2, kat3118_retbits +}; +static const struct drbg_kat kat3118 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3118_t +}; + +static const unsigned char kat3119_entropyin[] = { + 0x41, 0x5a, 0xf3, 0x56, 0x5e, 0xd0, 0x24, 0x8d, 0x47, 0x9c, 0x05, 0x73, + 0xff, 0xc7, 0x87, 0x12, +}; +static const unsigned char kat3119_nonce[] = { + 0xc3, 0x58, 0xaf, 0x5d, 0x8f, 0x88, 0x31, 0x0f, +}; +static const unsigned char kat3119_persstr[] = { + 0x87, 0x2d, 0xe4, 0x75, 0x34, 0x55, 0xc2, 0x5b, 0xca, 0x99, 0xf4, 0x44, + 0x01, 0xfa, 0x54, 0xf6, +}; +static const unsigned char kat3119_entropyinpr1[] = { + 0x9c, 0x56, 0xbe, 0x08, 0xb8, 0x0d, 0x57, 0x2b, 0xbf, 0x54, 0xc8, 0x7c, + 0x37, 0x7f, 0x7c, 0xca, +}; +static const unsigned char kat3119_addinpr1[] = { + 0xa9, 0x8a, 0xbd, 0xf5, 0xf6, 0xf3, 0xca, 0x8a, 0xa0, 0x6c, 0xa3, 0x1f, + 0xcd, 0xda, 0x3b, 0xc0, +}; +static const unsigned char kat3119_entropyinpr2[] = { + 0x46, 0x76, 0x2d, 0x59, 0xdc, 0xda, 0x4b, 0x00, 0x6e, 0x23, 0x22, 0x04, + 0x1c, 0xdd, 0x82, 0x13, +}; +static const unsigned char kat3119_addinpr2[] = { + 0xb1, 0x52, 0x49, 0x0c, 0x64, 0x4a, 0xac, 0x09, 0x07, 0x24, 0x9a, 0xe3, + 0x72, 0xb5, 0x47, 0x06, +}; +static const unsigned char kat3119_retbits[] = { + 0x61, 0x85, 0xd9, 0xdb, 0x80, 0x31, 0x7f, 0xc9, 0x18, 0xca, 0xdb, 0x6b, + 0x0d, 0x60, 0xf0, 0x18, 0x46, 0xfb, 0xbf, 0xe2, 0x61, 0x3b, 0x2b, 0xef, + 0xb5, 0x11, 0xc0, 0xa3, 0x62, 0xcc, 0x5a, 0x89, 0xe7, 0xd0, 0xd7, 0x9f, + 0xaa, 0xec, 0xe3, 0x73, 0xbc, 0x7f, 0xc4, 0x3b, 0x52, 0xda, 0x15, 0x85, + 0xfa, 0xef, 0xcf, 0x93, 0xe9, 0x65, 0xbf, 0x3d, 0xd3, 0x53, 0xf0, 0x88, + 0x69, 0x38, 0xd7, 0x93, +}; +static const struct drbg_kat_pr_true kat3119_t = { + 13, kat3119_entropyin, kat3119_nonce, kat3119_persstr, + kat3119_entropyinpr1, kat3119_addinpr1, kat3119_entropyinpr2, + kat3119_addinpr2, kat3119_retbits +}; +static const struct drbg_kat kat3119 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3119_t +}; + +static const unsigned char kat3120_entropyin[] = { + 0xa4, 0xfc, 0x2e, 0xde, 0x2f, 0xe7, 0x20, 0xdc, 0xe6, 0x44, 0xd1, 0x5d, + 0x3f, 0xbf, 0x2e, 0x68, +}; +static const unsigned char kat3120_nonce[] = { + 0x43, 0x80, 0xd3, 0xc2, 0x72, 0x61, 0x2f, 0xf3, +}; +static const unsigned char kat3120_persstr[] = { + 0x69, 0x33, 0x1b, 0x36, 0x74, 0x33, 0x09, 0xd3, 0x24, 0x06, 0x69, 0xd2, + 0x50, 0x4c, 0x21, 0x0f, +}; +static const unsigned char kat3120_entropyinpr1[] = { + 0x3e, 0xac, 0xb6, 0x2d, 0x89, 0x27, 0x9b, 0x1e, 0x4c, 0x3d, 0xdd, 0xba, + 0x05, 0xb2, 0xf0, 0xef, +}; +static const unsigned char kat3120_addinpr1[] = { + 0x01, 0xb7, 0x5e, 0x68, 0xb2, 0x86, 0xe0, 0x9c, 0x19, 0xaa, 0xea, 0x8b, + 0x35, 0x4f, 0x97, 0xb4, +}; +static const unsigned char kat3120_entropyinpr2[] = { + 0x68, 0x4d, 0x8b, 0x39, 0xe8, 0xbd, 0x42, 0xbe, 0x60, 0xb4, 0x37, 0x8e, + 0xd2, 0xc7, 0xca, 0x77, +}; +static const unsigned char kat3120_addinpr2[] = { + 0x83, 0x2f, 0x01, 0xeb, 0x65, 0x16, 0xae, 0x5c, 0x19, 0x42, 0x21, 0x0a, + 0x95, 0xa2, 0x41, 0xee, +}; +static const unsigned char kat3120_retbits[] = { + 0x45, 0x08, 0xa1, 0xc4, 0xb1, 0xb2, 0x19, 0xa6, 0x64, 0x75, 0xf6, 0x94, + 0xcc, 0xe1, 0xea, 0x04, 0xa8, 0x98, 0x59, 0x9b, 0x2d, 0xbc, 0xca, 0xf7, + 0xb8, 0xdc, 0x00, 0xd5, 0x53, 0xe1, 0x35, 0x5d, 0x59, 0x1f, 0xd9, 0x9c, + 0x5a, 0x57, 0x5b, 0x40, 0xd1, 0x84, 0x7e, 0xaf, 0x99, 0x90, 0x6d, 0x52, + 0xd3, 0xc8, 0xcc, 0xef, 0xea, 0x0d, 0x17, 0x5e, 0x58, 0x65, 0x05, 0x94, + 0xb2, 0x08, 0xaa, 0xa4, +}; +static const struct drbg_kat_pr_true kat3120_t = { + 14, kat3120_entropyin, kat3120_nonce, kat3120_persstr, + kat3120_entropyinpr1, kat3120_addinpr1, kat3120_entropyinpr2, + kat3120_addinpr2, kat3120_retbits +}; +static const struct drbg_kat kat3120 = { + PR_TRUE, USE_DF, NID_aes_128_ctr, 16, 8, 16, 16, 64, &kat3120_t +}; + +static const unsigned char kat3121_entropyin[] = { + 0x96, 0x5f, 0xa6, 0xa2, 0xc4, 0x00, 0x9c, 0x04, 0x5c, 0xff, 0x72, 0x8f, + 0x24, 0x42, 0x38, 0x26, 0x25, 0x08, 0xbf, 0x00, 0x8d, 0xcc, 0xef, 0x30, +}; +static const unsigned char kat3121_nonce[] = { + 0x1d, 0x22, 0x59, 0x1b, 0x09, 0x78, 0x73, 0xd1, 0x24, 0xc3, 0xf8, 0xc4, + 0x08, 0xf8, 0x91, 0x61, +}; +static const unsigned char kat3121_persstr[] = {0}; +static const unsigned char kat3121_entropyinpr1[] = { + 0x97, 0x18, 0xb8, 0x80, 0x42, 0xa4, 0xb6, 0x07, 0x67, 0xca, 0xe0, 0xff, + 0xc7, 0x97, 0xe6, 0x88, 0xb0, 0xfe, 0x38, 0x19, 0xdb, 0x2a, 0x4b, 0xcb, +}; +static const unsigned char kat3121_addinpr1[] = {0}; +static const unsigned char kat3121_entropyinpr2[] = { + 0x73, 0xe3, 0xf0, 0xfd, 0xf3, 0x80, 0xe5, 0xe6, 0x12, 0x6f, 0xf9, 0xf3, + 0xad, 0xb3, 0x4f, 0xf5, 0xbc, 0xc4, 0x5f, 0xba, 0x0c, 0xe1, 0xd2, 0x48, +}; +static const unsigned char kat3121_addinpr2[] = {0}; +static const unsigned char kat3121_retbits[] = { + 0x90, 0x9f, 0xd2, 0xc9, 0x71, 0x92, 0x1c, 0x77, 0x32, 0x2e, 0x1d, 0xf2, + 0x73, 0xa0, 0x7d, 0x19, 0xf5, 0x27, 0x13, 0x3e, 0x56, 0xa9, 0xbe, 0x38, + 0x8c, 0x29, 0x8c, 0xa6, 0x83, 0x08, 0x73, 0xd1, 0xe8, 0x47, 0xb8, 0xcc, + 0x65, 0x4d, 0xd3, 0xc5, 0x7c, 0x1c, 0x8b, 0x25, 0xfd, 0x39, 0x09, 0xbe, + 0x84, 0x7c, 0x1a, 0x28, 0x11, 0x08, 0x94, 0x0f, 0xe7, 0xf0, 0x6d, 0x9d, + 0xb6, 0x0a, 0xd7, 0xb4, +}; +static const struct drbg_kat_pr_true kat3121_t = { + 0, kat3121_entropyin, kat3121_nonce, kat3121_persstr, + kat3121_entropyinpr1, kat3121_addinpr1, kat3121_entropyinpr2, + kat3121_addinpr2, kat3121_retbits +}; +static const struct drbg_kat kat3121 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3121_t +}; + +static const unsigned char kat3122_entropyin[] = { + 0x83, 0x50, 0x65, 0xd5, 0x87, 0x3f, 0xd0, 0x6b, 0x45, 0x03, 0x14, 0x3a, + 0xba, 0xe0, 0x5a, 0x3e, 0xde, 0x86, 0xec, 0xa3, 0x22, 0xe9, 0xc4, 0x32, +}; +static const unsigned char kat3122_nonce[] = { + 0xc1, 0x18, 0x31, 0x67, 0x10, 0x41, 0x13, 0x76, 0xe3, 0xa3, 0x4c, 0x97, + 0x15, 0x60, 0x8a, 0xf3, +}; +static const unsigned char kat3122_persstr[] = {0}; +static const unsigned char kat3122_entropyinpr1[] = { + 0xc4, 0xff, 0x67, 0xa7, 0x4c, 0xe7, 0xb1, 0xab, 0xb6, 0x87, 0x41, 0xfa, + 0xc6, 0x0f, 0x38, 0x18, 0x3a, 0xed, 0x11, 0x12, 0xc8, 0xe8, 0x59, 0xc0, +}; +static const unsigned char kat3122_addinpr1[] = {0}; +static const unsigned char kat3122_entropyinpr2[] = { + 0xfa, 0xc1, 0x82, 0x6b, 0x05, 0x4b, 0xab, 0xc2, 0xd7, 0xe1, 0xe6, 0x47, + 0xe0, 0x6c, 0x81, 0xb8, 0x02, 0x3f, 0x04, 0x01, 0xc2, 0xac, 0x39, 0x6e, +}; +static const unsigned char kat3122_addinpr2[] = {0}; +static const unsigned char kat3122_retbits[] = { + 0x0c, 0xbf, 0x94, 0x97, 0xff, 0x1e, 0x9e, 0x68, 0x1e, 0xeb, 0x97, 0x29, + 0x0a, 0xe5, 0x52, 0x4d, 0xac, 0x82, 0xdb, 0x79, 0x74, 0x98, 0xb5, 0x0a, + 0xd3, 0x1e, 0x2c, 0x25, 0x7f, 0x51, 0x66, 0xc3, 0xb9, 0x83, 0xbc, 0x95, + 0xe0, 0xd2, 0x6d, 0x24, 0xa0, 0xd6, 0x13, 0xfb, 0xfb, 0x41, 0x03, 0xb4, + 0x49, 0x83, 0xa6, 0xfd, 0xf2, 0x96, 0x4b, 0x42, 0x07, 0xd5, 0xf8, 0xc7, + 0x53, 0xb7, 0xc9, 0xf3, +}; +static const struct drbg_kat_pr_true kat3122_t = { + 1, kat3122_entropyin, kat3122_nonce, kat3122_persstr, + kat3122_entropyinpr1, kat3122_addinpr1, kat3122_entropyinpr2, + kat3122_addinpr2, kat3122_retbits +}; +static const struct drbg_kat kat3122 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3122_t +}; + +static const unsigned char kat3123_entropyin[] = { + 0x83, 0xa0, 0x4c, 0xca, 0x97, 0x9e, 0x16, 0x25, 0x9d, 0xac, 0x2a, 0xa2, + 0xe6, 0x80, 0x79, 0xc0, 0xe8, 0xeb, 0xea, 0x8e, 0x90, 0x67, 0x72, 0xe3, +}; +static const unsigned char kat3123_nonce[] = { + 0xf4, 0xef, 0xc8, 0xb0, 0xa9, 0x19, 0x55, 0x91, 0x6d, 0x82, 0x03, 0x1a, + 0x24, 0x03, 0x25, 0xe4, +}; +static const unsigned char kat3123_persstr[] = {0}; +static const unsigned char kat3123_entropyinpr1[] = { + 0x05, 0xb3, 0xfe, 0x96, 0xa7, 0x35, 0x81, 0x79, 0xd8, 0x32, 0x86, 0x1e, + 0xac, 0xbe, 0x25, 0xef, 0x66, 0x23, 0xf4, 0x09, 0xef, 0x8c, 0x63, 0xb8, +}; +static const unsigned char kat3123_addinpr1[] = {0}; +static const unsigned char kat3123_entropyinpr2[] = { + 0xc4, 0xd8, 0x68, 0xd2, 0x92, 0x7a, 0x9f, 0xf5, 0xa4, 0xd8, 0x4f, 0x4f, + 0xf4, 0x6f, 0x5d, 0x2c, 0xf0, 0x4b, 0xa8, 0x45, 0x00, 0xe1, 0x54, 0x08, +}; +static const unsigned char kat3123_addinpr2[] = {0}; +static const unsigned char kat3123_retbits[] = { + 0xed, 0xc9, 0xee, 0x06, 0x8c, 0x28, 0x23, 0xdf, 0x26, 0xd6, 0xef, 0x14, + 0xcc, 0x33, 0xf4, 0x02, 0x6c, 0x5c, 0x8d, 0x89, 0x92, 0xb7, 0xe1, 0xfd, + 0x30, 0x06, 0x31, 0x9e, 0x60, 0x65, 0x8e, 0x77, 0x77, 0xdd, 0xf3, 0xf4, + 0x6f, 0x38, 0xf5, 0xdf, 0xd2, 0x24, 0x15, 0xdc, 0x19, 0x57, 0xd1, 0x96, + 0x3f, 0x33, 0x19, 0x67, 0x24, 0x32, 0x4c, 0x96, 0xab, 0xc0, 0x39, 0x44, + 0xbc, 0xc1, 0x63, 0xfa, +}; +static const struct drbg_kat_pr_true kat3123_t = { + 2, kat3123_entropyin, kat3123_nonce, kat3123_persstr, + kat3123_entropyinpr1, kat3123_addinpr1, kat3123_entropyinpr2, + kat3123_addinpr2, kat3123_retbits +}; +static const struct drbg_kat kat3123 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3123_t +}; + +static const unsigned char kat3124_entropyin[] = { + 0x50, 0xcf, 0x55, 0x2e, 0x0e, 0x6c, 0x3f, 0xca, 0x00, 0xda, 0x03, 0xb3, + 0x1b, 0xdd, 0x77, 0xbe, 0xa1, 0x59, 0x93, 0x17, 0x51, 0xe5, 0x88, 0x4c, +}; +static const unsigned char kat3124_nonce[] = { + 0xfd, 0xb2, 0x81, 0x10, 0x4e, 0xc0, 0xbf, 0xbe, 0xbf, 0xd4, 0xce, 0x65, + 0x93, 0xa7, 0x5e, 0x3e, +}; +static const unsigned char kat3124_persstr[] = {0}; +static const unsigned char kat3124_entropyinpr1[] = { + 0x0f, 0x6c, 0xee, 0x4c, 0x34, 0xdc, 0xff, 0x9d, 0x1f, 0x7c, 0x7c, 0x93, + 0xba, 0xe9, 0x5a, 0x16, 0xce, 0x69, 0x37, 0x98, 0x30, 0x2c, 0xa7, 0x94, +}; +static const unsigned char kat3124_addinpr1[] = {0}; +static const unsigned char kat3124_entropyinpr2[] = { + 0x79, 0x62, 0x90, 0xd6, 0xbe, 0xc0, 0x70, 0x13, 0xfa, 0xe5, 0x62, 0xa2, + 0xf6, 0x18, 0x7b, 0x4b, 0x2b, 0x3f, 0x4c, 0x6d, 0xd8, 0xd4, 0xfd, 0x47, +}; +static const unsigned char kat3124_addinpr2[] = {0}; +static const unsigned char kat3124_retbits[] = { + 0xa6, 0xf1, 0x26, 0x34, 0x73, 0x5a, 0x89, 0x4b, 0xbb, 0x14, 0xfa, 0x36, + 0x8a, 0xbd, 0x15, 0xb2, 0x19, 0x81, 0xf4, 0x3d, 0x72, 0xdd, 0x4d, 0xa8, + 0x00, 0xf6, 0x17, 0x3c, 0x2c, 0x8d, 0xcc, 0x2e, 0xcd, 0x1a, 0xb4, 0xae, + 0xc4, 0x9a, 0xba, 0x40, 0xd5, 0x08, 0xf9, 0x6d, 0xba, 0x6e, 0xe1, 0x0d, + 0x88, 0x6b, 0x8b, 0xb4, 0x17, 0x72, 0x2e, 0x52, 0x82, 0x3f, 0x41, 0x52, + 0x27, 0xbe, 0x7b, 0x3e, +}; +static const struct drbg_kat_pr_true kat3124_t = { + 3, kat3124_entropyin, kat3124_nonce, kat3124_persstr, + kat3124_entropyinpr1, kat3124_addinpr1, kat3124_entropyinpr2, + kat3124_addinpr2, kat3124_retbits +}; +static const struct drbg_kat kat3124 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3124_t +}; + +static const unsigned char kat3125_entropyin[] = { + 0x42, 0xf3, 0xc7, 0x30, 0x4f, 0x6c, 0x48, 0x0a, 0xb8, 0xef, 0xe5, 0xe1, + 0xca, 0x17, 0xf8, 0xdc, 0x2b, 0xaf, 0xc9, 0xe0, 0x27, 0x0c, 0xe3, 0x10, +}; +static const unsigned char kat3125_nonce[] = { + 0x68, 0x61, 0x22, 0xe3, 0xdf, 0x7a, 0x4f, 0x5b, 0xb7, 0x52, 0xc6, 0x06, + 0x28, 0xfd, 0xed, 0x56, +}; +static const unsigned char kat3125_persstr[] = {0}; +static const unsigned char kat3125_entropyinpr1[] = { + 0x2b, 0x97, 0x22, 0xb9, 0x34, 0x3b, 0xc5, 0xe1, 0xa7, 0x84, 0x37, 0x11, + 0x48, 0x31, 0xb6, 0x77, 0xbe, 0x5a, 0x0d, 0x64, 0x37, 0xda, 0x4b, 0x2f, +}; +static const unsigned char kat3125_addinpr1[] = {0}; +static const unsigned char kat3125_entropyinpr2[] = { + 0x92, 0x25, 0xb4, 0xc1, 0x27, 0x7c, 0xb6, 0xfc, 0x3f, 0x0e, 0x48, 0x90, + 0x4f, 0x15, 0x94, 0x47, 0x44, 0xe0, 0xb0, 0x51, 0xf8, 0xe5, 0x4b, 0x7e, +}; +static const unsigned char kat3125_addinpr2[] = {0}; +static const unsigned char kat3125_retbits[] = { + 0x90, 0x42, 0xd3, 0x19, 0x0a, 0xe3, 0x63, 0x77, 0x5c, 0x8e, 0xa7, 0x83, + 0x7d, 0xc1, 0x72, 0xad, 0x9a, 0xee, 0xc6, 0xd0, 0xc5, 0xee, 0x29, 0x11, + 0x5b, 0xba, 0x14, 0x1c, 0x7b, 0x2c, 0x1b, 0x03, 0x4c, 0x2a, 0x9b, 0x69, + 0x71, 0xd6, 0x78, 0x35, 0xbe, 0xf2, 0x95, 0x35, 0x13, 0xdf, 0x6d, 0x92, + 0x35, 0x36, 0x82, 0x51, 0x5d, 0xee, 0xf4, 0x15, 0xca, 0x76, 0xf4, 0x5e, + 0xc7, 0xa6, 0x17, 0x63, +}; +static const struct drbg_kat_pr_true kat3125_t = { + 4, kat3125_entropyin, kat3125_nonce, kat3125_persstr, + kat3125_entropyinpr1, kat3125_addinpr1, kat3125_entropyinpr2, + kat3125_addinpr2, kat3125_retbits +}; +static const struct drbg_kat kat3125 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3125_t +}; + +static const unsigned char kat3126_entropyin[] = { + 0x6a, 0x0d, 0x63, 0x4e, 0x66, 0x18, 0xcc, 0x38, 0xc3, 0xfb, 0x2e, 0xd9, + 0x9c, 0xef, 0x84, 0x90, 0x57, 0x0d, 0x9a, 0xa8, 0x79, 0x12, 0xbf, 0x2d, +}; +static const unsigned char kat3126_nonce[] = { + 0xab, 0x31, 0x48, 0xf4, 0x06, 0x09, 0x29, 0x0e, 0xcc, 0x08, 0x61, 0xaf, + 0xf1, 0xc5, 0xd2, 0x09, +}; +static const unsigned char kat3126_persstr[] = {0}; +static const unsigned char kat3126_entropyinpr1[] = { + 0x0e, 0x32, 0x2c, 0x93, 0x43, 0x1c, 0x32, 0x4b, 0x37, 0xf8, 0x39, 0xc9, + 0x60, 0x93, 0xb0, 0xd8, 0xb8, 0xdb, 0xc3, 0x22, 0xa0, 0xab, 0x4f, 0x92, +}; +static const unsigned char kat3126_addinpr1[] = {0}; +static const unsigned char kat3126_entropyinpr2[] = { + 0x0c, 0x45, 0x00, 0xf0, 0xc9, 0x37, 0xf6, 0x7f, 0x3e, 0xe6, 0xf8, 0x17, + 0xfe, 0x8b, 0xdc, 0x02, 0xce, 0x4c, 0x97, 0xe6, 0x97, 0xb0, 0xc9, 0x89, +}; +static const unsigned char kat3126_addinpr2[] = {0}; +static const unsigned char kat3126_retbits[] = { + 0xc2, 0xf1, 0xb3, 0xdc, 0xd5, 0x2d, 0x68, 0x65, 0x10, 0x60, 0x06, 0xfc, + 0x67, 0x5b, 0x52, 0x88, 0x14, 0x90, 0x64, 0x94, 0xdb, 0xa2, 0xa0, 0xc1, + 0x66, 0x36, 0xec, 0x5f, 0xd6, 0xa8, 0x98, 0x1e, 0xeb, 0x6b, 0xfe, 0x64, + 0x0c, 0xf7, 0x85, 0xd4, 0x79, 0x81, 0x35, 0x2c, 0x51, 0x0c, 0xc1, 0x81, + 0xea, 0x71, 0xaa, 0x24, 0x70, 0xf8, 0xa9, 0x7a, 0xdd, 0xd4, 0x59, 0x39, + 0x08, 0x1c, 0x3b, 0x84, +}; +static const struct drbg_kat_pr_true kat3126_t = { + 5, kat3126_entropyin, kat3126_nonce, kat3126_persstr, + kat3126_entropyinpr1, kat3126_addinpr1, kat3126_entropyinpr2, + kat3126_addinpr2, kat3126_retbits +}; +static const struct drbg_kat kat3126 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3126_t +}; + +static const unsigned char kat3127_entropyin[] = { + 0x30, 0xde, 0x9e, 0xc0, 0x35, 0x03, 0xeb, 0x2c, 0x60, 0x46, 0xdf, 0x9c, + 0x50, 0x24, 0xef, 0x24, 0x8e, 0x53, 0x85, 0x1f, 0x2e, 0x2f, 0x5e, 0x82, +}; +static const unsigned char kat3127_nonce[] = { + 0xc2, 0x1e, 0x8e, 0x13, 0x54, 0xc0, 0xbf, 0x00, 0x7d, 0x50, 0x76, 0xcd, + 0x57, 0x1f, 0xae, 0x51, +}; +static const unsigned char kat3127_persstr[] = {0}; +static const unsigned char kat3127_entropyinpr1[] = { + 0x7c, 0xa2, 0x88, 0x95, 0xe4, 0xb2, 0x09, 0x67, 0x04, 0x22, 0x7a, 0x2a, + 0x1d, 0xea, 0xb7, 0xef, 0xbb, 0x48, 0x10, 0xc4, 0x85, 0x41, 0x12, 0xe4, +}; +static const unsigned char kat3127_addinpr1[] = {0}; +static const unsigned char kat3127_entropyinpr2[] = { + 0x41, 0xbe, 0x84, 0x2e, 0x22, 0x90, 0x40, 0x59, 0xd8, 0x38, 0x78, 0xc9, + 0x49, 0x59, 0x79, 0x89, 0xdb, 0xb0, 0x28, 0xbd, 0xc7, 0xe4, 0xe2, 0x1c, +}; +static const unsigned char kat3127_addinpr2[] = {0}; +static const unsigned char kat3127_retbits[] = { + 0x18, 0x21, 0x96, 0x4d, 0xe8, 0xbc, 0xf0, 0x57, 0x3d, 0x96, 0x53, 0x5c, + 0x25, 0xed, 0x6c, 0x02, 0x22, 0xcd, 0x06, 0x60, 0xb5, 0x51, 0x68, 0x3e, + 0x05, 0x00, 0x46, 0x12, 0x01, 0xde, 0x72, 0xba, 0xe7, 0x3c, 0xb2, 0x0b, + 0x60, 0x8d, 0x27, 0x6b, 0xc7, 0xd8, 0x01, 0x39, 0x27, 0xaf, 0x35, 0x8e, + 0xab, 0x60, 0xbc, 0x96, 0x2b, 0x28, 0x87, 0xd3, 0x27, 0x67, 0x2e, 0xc0, + 0xdb, 0x0d, 0x1b, 0x41, +}; +static const struct drbg_kat_pr_true kat3127_t = { + 6, kat3127_entropyin, kat3127_nonce, kat3127_persstr, + kat3127_entropyinpr1, kat3127_addinpr1, kat3127_entropyinpr2, + kat3127_addinpr2, kat3127_retbits +}; +static const struct drbg_kat kat3127 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3127_t +}; + +static const unsigned char kat3128_entropyin[] = { + 0x5d, 0xd9, 0x07, 0x4e, 0x42, 0x45, 0x90, 0xbe, 0x33, 0x3d, 0xd8, 0x9a, + 0xd2, 0x46, 0xa7, 0x83, 0xf5, 0xe4, 0x8e, 0x5d, 0xaf, 0xcb, 0x92, 0x38, +}; +static const unsigned char kat3128_nonce[] = { + 0x1b, 0x6d, 0x12, 0x99, 0xe9, 0xe7, 0x80, 0x22, 0x35, 0x48, 0xda, 0x3a, + 0x1e, 0x92, 0x47, 0x13, +}; +static const unsigned char kat3128_persstr[] = {0}; +static const unsigned char kat3128_entropyinpr1[] = { + 0xb3, 0xe4, 0x36, 0x77, 0x94, 0x7c, 0x92, 0x56, 0x3e, 0xe7, 0x26, 0x03, + 0x14, 0x97, 0xe5, 0x2b, 0xe5, 0x4e, 0x83, 0x9c, 0x17, 0xdc, 0xdf, 0x1e, +}; +static const unsigned char kat3128_addinpr1[] = {0}; +static const unsigned char kat3128_entropyinpr2[] = { + 0x35, 0x09, 0x37, 0x9b, 0x91, 0xa5, 0x3a, 0xd5, 0x36, 0x4e, 0x90, 0x83, + 0x3f, 0xcf, 0xfa, 0xd7, 0x66, 0x49, 0x8a, 0xdd, 0x2d, 0xd9, 0xac, 0xdb, +}; +static const unsigned char kat3128_addinpr2[] = {0}; +static const unsigned char kat3128_retbits[] = { + 0x7b, 0x6b, 0xe6, 0x05, 0x17, 0x97, 0xb3, 0x22, 0x8e, 0x25, 0x77, 0x71, + 0xf3, 0x44, 0x29, 0x18, 0x4c, 0xd8, 0x04, 0x4f, 0xb1, 0xd3, 0xee, 0x6d, + 0x1e, 0x9c, 0x6c, 0xc2, 0x6a, 0xde, 0x4f, 0xae, 0x6d, 0x5d, 0xb9, 0x18, + 0x33, 0xd6, 0xdd, 0x56, 0xcf, 0x37, 0x2a, 0xf7, 0x66, 0xdd, 0x6f, 0x0b, + 0x4e, 0x40, 0xb9, 0x21, 0x96, 0xdf, 0xcc, 0x15, 0xcd, 0xfc, 0x8b, 0xfa, + 0xfd, 0x30, 0x34, 0x95, +}; +static const struct drbg_kat_pr_true kat3128_t = { + 7, kat3128_entropyin, kat3128_nonce, kat3128_persstr, + kat3128_entropyinpr1, kat3128_addinpr1, kat3128_entropyinpr2, + kat3128_addinpr2, kat3128_retbits +}; +static const struct drbg_kat kat3128 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3128_t +}; + +static const unsigned char kat3129_entropyin[] = { + 0xd1, 0xbb, 0x4c, 0xcc, 0x03, 0x5f, 0xdd, 0x73, 0x40, 0x67, 0xd0, 0x78, + 0x99, 0xfd, 0xce, 0xc2, 0x4a, 0x52, 0x54, 0x6a, 0x3d, 0x6e, 0x14, 0xf4, +}; +static const unsigned char kat3129_nonce[] = { + 0x5d, 0x7b, 0x4a, 0x17, 0x6d, 0x22, 0x2e, 0x41, 0xbe, 0x64, 0xf6, 0x2d, + 0xde, 0x1a, 0x62, 0x44, +}; +static const unsigned char kat3129_persstr[] = {0}; +static const unsigned char kat3129_entropyinpr1[] = { + 0x98, 0x01, 0x76, 0xb5, 0xd3, 0x91, 0xf4, 0xa0, 0x42, 0x2f, 0x09, 0x08, + 0xc6, 0x9b, 0x20, 0xbc, 0xb9, 0xdc, 0xb9, 0xb3, 0xa1, 0x93, 0xfb, 0x29, +}; +static const unsigned char kat3129_addinpr1[] = {0}; +static const unsigned char kat3129_entropyinpr2[] = { + 0x7b, 0x3e, 0xbe, 0x6c, 0x6b, 0xcc, 0x59, 0x54, 0x2a, 0xea, 0x08, 0x60, + 0x11, 0x0b, 0xde, 0xac, 0x7a, 0x20, 0xf9, 0xa4, 0x30, 0xb7, 0xfb, 0x2b, +}; +static const unsigned char kat3129_addinpr2[] = {0}; +static const unsigned char kat3129_retbits[] = { + 0xc6, 0x45, 0xdd, 0xba, 0x51, 0x97, 0x0f, 0xee, 0xac, 0x96, 0x15, 0x95, + 0xc5, 0xd6, 0xb2, 0xde, 0x1e, 0xfc, 0xe6, 0x95, 0x1a, 0x09, 0xe4, 0xa1, + 0x4c, 0x81, 0x74, 0x1d, 0x63, 0x1f, 0x8e, 0x19, 0x39, 0xac, 0x25, 0xe0, + 0xae, 0xb1, 0xf5, 0x9c, 0x28, 0x07, 0x91, 0xa2, 0x26, 0xe7, 0x38, 0xa9, + 0x8e, 0x6d, 0x13, 0x40, 0x03, 0xe5, 0x19, 0xd8, 0xdd, 0x9b, 0x9a, 0x4f, + 0xf2, 0x2e, 0x6e, 0x00, +}; +static const struct drbg_kat_pr_true kat3129_t = { + 8, kat3129_entropyin, kat3129_nonce, kat3129_persstr, + kat3129_entropyinpr1, kat3129_addinpr1, kat3129_entropyinpr2, + kat3129_addinpr2, kat3129_retbits +}; +static const struct drbg_kat kat3129 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3129_t +}; + +static const unsigned char kat3130_entropyin[] = { + 0xf0, 0xb2, 0x4a, 0x7c, 0x6c, 0x0a, 0x56, 0xec, 0x47, 0x36, 0x19, 0xda, + 0x51, 0x91, 0xe1, 0xfc, 0x40, 0x36, 0x1e, 0x43, 0xab, 0xd0, 0xb8, 0x79, +}; +static const unsigned char kat3130_nonce[] = { + 0xd9, 0xe2, 0xfc, 0xad, 0xbb, 0x83, 0xfe, 0x67, 0x7b, 0x1f, 0x9a, 0x6f, + 0xf5, 0xa7, 0xf3, 0xef, +}; +static const unsigned char kat3130_persstr[] = {0}; +static const unsigned char kat3130_entropyinpr1[] = { + 0x71, 0xe6, 0x34, 0xbf, 0x65, 0xdd, 0x8a, 0xc7, 0xe3, 0x5e, 0x0a, 0x38, + 0x89, 0xa9, 0x3a, 0xea, 0x06, 0x1c, 0x27, 0x64, 0xd5, 0x7a, 0xb6, 0xcc, +}; +static const unsigned char kat3130_addinpr1[] = {0}; +static const unsigned char kat3130_entropyinpr2[] = { + 0x66, 0x7d, 0xb2, 0xa2, 0x64, 0x36, 0x89, 0xfa, 0x9f, 0x60, 0x2d, 0x28, + 0x83, 0xb5, 0xb7, 0x45, 0x62, 0x5e, 0xc3, 0xa7, 0x5b, 0xd5, 0xd7, 0xcd, +}; +static const unsigned char kat3130_addinpr2[] = {0}; +static const unsigned char kat3130_retbits[] = { + 0x2f, 0xe5, 0x5e, 0x3c, 0xed, 0x73, 0x18, 0xef, 0xb6, 0x58, 0x48, 0xe6, + 0xd7, 0xd0, 0x02, 0x50, 0x2f, 0x18, 0xd4, 0x00, 0x81, 0xfc, 0xff, 0x6d, + 0x06, 0x13, 0xac, 0xa1, 0x17, 0x80, 0xcb, 0x27, 0x1b, 0x1d, 0x8a, 0x7d, + 0x3e, 0x31, 0x51, 0x8c, 0xf3, 0xfa, 0xf9, 0xf3, 0x99, 0x3b, 0x7f, 0x9f, + 0x89, 0x7c, 0x11, 0xc0, 0x7d, 0x67, 0xa5, 0x18, 0x45, 0xf1, 0xb0, 0xfe, + 0x58, 0x55, 0x35, 0xd4, +}; +static const struct drbg_kat_pr_true kat3130_t = { + 9, kat3130_entropyin, kat3130_nonce, kat3130_persstr, + kat3130_entropyinpr1, kat3130_addinpr1, kat3130_entropyinpr2, + kat3130_addinpr2, kat3130_retbits +}; +static const struct drbg_kat kat3130 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3130_t +}; + +static const unsigned char kat3131_entropyin[] = { + 0x2a, 0x2f, 0x9e, 0x86, 0x82, 0x39, 0xac, 0x23, 0xbe, 0x4c, 0x8d, 0x18, + 0x41, 0x57, 0xd4, 0x4f, 0x86, 0xf1, 0xc2, 0x76, 0x99, 0x4c, 0x1d, 0x02, +}; +static const unsigned char kat3131_nonce[] = { + 0x78, 0x4d, 0xc9, 0x0d, 0x95, 0x2a, 0x9d, 0xec, 0xab, 0x76, 0x05, 0x51, + 0x05, 0x09, 0x43, 0x62, +}; +static const unsigned char kat3131_persstr[] = {0}; +static const unsigned char kat3131_entropyinpr1[] = { + 0xc4, 0x19, 0x55, 0xe8, 0xd5, 0x2d, 0x31, 0x4d, 0x4c, 0x57, 0x9a, 0xa7, + 0x0d, 0x31, 0xd1, 0xf6, 0xf4, 0x8b, 0xfa, 0x9a, 0xa0, 0x4d, 0x64, 0xbe, +}; +static const unsigned char kat3131_addinpr1[] = {0}; +static const unsigned char kat3131_entropyinpr2[] = { + 0x27, 0x64, 0xc2, 0x28, 0xb0, 0x35, 0x07, 0xbe, 0x6c, 0x37, 0x31, 0x50, + 0x8a, 0x57, 0x4d, 0x3e, 0x1b, 0xe6, 0xf3, 0x3e, 0x42, 0x2f, 0x81, 0xb6, +}; +static const unsigned char kat3131_addinpr2[] = {0}; +static const unsigned char kat3131_retbits[] = { + 0xee, 0x25, 0xf5, 0xe5, 0x53, 0xca, 0x17, 0x95, 0xe4, 0xd8, 0xbe, 0xba, + 0x5d, 0xcb, 0xd9, 0x59, 0xa0, 0x46, 0x8e, 0x82, 0x86, 0x02, 0xbc, 0x11, + 0x03, 0xd8, 0x76, 0x5f, 0xd6, 0xf2, 0x81, 0xfb, 0x96, 0xa2, 0xee, 0xbf, + 0xdf, 0x1f, 0x38, 0x30, 0x13, 0x2a, 0xd9, 0x0f, 0x38, 0x1c, 0xff, 0x7e, + 0xd7, 0x09, 0x00, 0x10, 0x70, 0xf7, 0x74, 0xa5, 0x7b, 0x6d, 0x34, 0x88, + 0xe5, 0xb8, 0x42, 0xe5, +}; +static const struct drbg_kat_pr_true kat3131_t = { + 10, kat3131_entropyin, kat3131_nonce, kat3131_persstr, + kat3131_entropyinpr1, kat3131_addinpr1, kat3131_entropyinpr2, + kat3131_addinpr2, kat3131_retbits +}; +static const struct drbg_kat kat3131 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3131_t +}; + +static const unsigned char kat3132_entropyin[] = { + 0x3b, 0xda, 0xe8, 0x11, 0x9d, 0x89, 0x16, 0x10, 0x0b, 0x52, 0xfe, 0x32, + 0x44, 0x8b, 0x95, 0xb5, 0xc2, 0x30, 0x39, 0x82, 0x87, 0x4d, 0x7a, 0x95, +}; +static const unsigned char kat3132_nonce[] = { + 0x92, 0x91, 0xf9, 0xfe, 0xe1, 0x05, 0xf7, 0xe1, 0x48, 0xa1, 0x3f, 0x2f, + 0xf5, 0x93, 0xb6, 0x19, +}; +static const unsigned char kat3132_persstr[] = {0}; +static const unsigned char kat3132_entropyinpr1[] = { + 0xda, 0x37, 0xce, 0x63, 0x92, 0x9e, 0x1a, 0x9f, 0x00, 0xe0, 0x16, 0x18, + 0x3e, 0x28, 0x0f, 0x27, 0xed, 0x94, 0xd9, 0xcd, 0xe4, 0xae, 0x7a, 0x7c, +}; +static const unsigned char kat3132_addinpr1[] = {0}; +static const unsigned char kat3132_entropyinpr2[] = { + 0x88, 0xab, 0x02, 0x9e, 0xdb, 0xda, 0x4c, 0x8c, 0x79, 0x2d, 0xe3, 0x04, + 0xaf, 0x53, 0xce, 0x5c, 0xb4, 0xb1, 0xca, 0x2d, 0x76, 0x4f, 0xcf, 0xc1, +}; +static const unsigned char kat3132_addinpr2[] = {0}; +static const unsigned char kat3132_retbits[] = { + 0xbb, 0x37, 0xf2, 0x96, 0xc6, 0xbd, 0xfb, 0x05, 0x9c, 0x35, 0x35, 0x39, + 0x52, 0xf8, 0x39, 0x72, 0xad, 0x9e, 0x9f, 0xfa, 0x51, 0xab, 0x72, 0x62, + 0xc1, 0x07, 0xe8, 0x17, 0xa7, 0x42, 0x57, 0xeb, 0xe6, 0x9e, 0x53, 0x91, + 0x2c, 0xf8, 0x3b, 0xd9, 0xbb, 0xc0, 0x9a, 0xf7, 0xe9, 0x69, 0xab, 0x08, + 0x4a, 0xc0, 0x84, 0x31, 0x7d, 0x5e, 0xc6, 0xc0, 0x15, 0x17, 0x54, 0xc8, + 0xc5, 0x42, 0xc6, 0x5d, +}; +static const struct drbg_kat_pr_true kat3132_t = { + 11, kat3132_entropyin, kat3132_nonce, kat3132_persstr, + kat3132_entropyinpr1, kat3132_addinpr1, kat3132_entropyinpr2, + kat3132_addinpr2, kat3132_retbits +}; +static const struct drbg_kat kat3132 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3132_t +}; + +static const unsigned char kat3133_entropyin[] = { + 0x28, 0x9c, 0xa3, 0xd9, 0x02, 0x03, 0x70, 0x97, 0x1c, 0x24, 0xed, 0x23, + 0xc6, 0x43, 0xaa, 0x63, 0xb0, 0x0a, 0xbf, 0x55, 0x6a, 0x6a, 0x1a, 0x67, +}; +static const unsigned char kat3133_nonce[] = { + 0x96, 0x5f, 0x82, 0x54, 0xfe, 0x96, 0x53, 0x7e, 0x68, 0x7c, 0x26, 0xc1, + 0x63, 0x91, 0x5a, 0x64, +}; +static const unsigned char kat3133_persstr[] = {0}; +static const unsigned char kat3133_entropyinpr1[] = { + 0x1d, 0xa4, 0x91, 0x99, 0x30, 0x96, 0x42, 0x7b, 0x20, 0x55, 0xcf, 0x24, + 0xf9, 0x05, 0xa2, 0xb3, 0xdc, 0x2b, 0xc8, 0x2b, 0x57, 0xc4, 0xac, 0xb6, +}; +static const unsigned char kat3133_addinpr1[] = {0}; +static const unsigned char kat3133_entropyinpr2[] = { + 0xef, 0x59, 0x4f, 0xbf, 0xd7, 0x30, 0x02, 0x32, 0x3f, 0xc0, 0xd5, 0xa3, + 0x46, 0x48, 0xf9, 0x35, 0xb6, 0xe5, 0xe6, 0x5b, 0xea, 0x3e, 0xe2, 0x57, +}; +static const unsigned char kat3133_addinpr2[] = {0}; +static const unsigned char kat3133_retbits[] = { + 0x2e, 0xad, 0x91, 0xe5, 0x63, 0x41, 0xe1, 0x57, 0x20, 0x30, 0x2e, 0xb6, + 0x49, 0xcd, 0xfe, 0x25, 0xad, 0x9e, 0x87, 0xef, 0xf5, 0x11, 0x0c, 0xef, + 0xb4, 0x87, 0x41, 0x01, 0xe8, 0x1f, 0x8c, 0x02, 0x48, 0x11, 0xb4, 0x2c, + 0xe7, 0x27, 0x63, 0x63, 0x8e, 0x49, 0x1b, 0x07, 0x75, 0x52, 0xf3, 0x47, + 0xef, 0xf6, 0x97, 0x2e, 0x9b, 0xe2, 0xbd, 0xd3, 0xb4, 0x2b, 0x0b, 0x6f, + 0xb7, 0x3e, 0x70, 0x27, +}; +static const struct drbg_kat_pr_true kat3133_t = { + 12, kat3133_entropyin, kat3133_nonce, kat3133_persstr, + kat3133_entropyinpr1, kat3133_addinpr1, kat3133_entropyinpr2, + kat3133_addinpr2, kat3133_retbits +}; +static const struct drbg_kat kat3133 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3133_t +}; + +static const unsigned char kat3134_entropyin[] = { + 0xc4, 0x3a, 0x65, 0x0f, 0x01, 0xf3, 0xee, 0xc4, 0x1b, 0x5f, 0x25, 0x45, + 0x50, 0x9a, 0x1c, 0x47, 0x80, 0x8c, 0xce, 0xad, 0x72, 0x90, 0xa0, 0xeb, +}; +static const unsigned char kat3134_nonce[] = { + 0xb2, 0x42, 0xa3, 0x6d, 0x72, 0x80, 0x4e, 0xd2, 0xca, 0x78, 0x64, 0xf3, + 0xf3, 0xd2, 0x3e, 0x1a, +}; +static const unsigned char kat3134_persstr[] = {0}; +static const unsigned char kat3134_entropyinpr1[] = { + 0x80, 0x21, 0x41, 0x7b, 0xaf, 0xe1, 0x17, 0xfe, 0x68, 0x0b, 0x5f, 0x5d, + 0xe7, 0xe2, 0x93, 0xac, 0xf1, 0x04, 0x34, 0x8d, 0x09, 0x0b, 0x59, 0x5e, +}; +static const unsigned char kat3134_addinpr1[] = {0}; +static const unsigned char kat3134_entropyinpr2[] = { + 0x40, 0xc2, 0xf1, 0x8f, 0xc4, 0x0b, 0xce, 0xac, 0xde, 0x2d, 0xa3, 0x22, + 0xea, 0x99, 0x68, 0xa4, 0x0c, 0x32, 0x89, 0xef, 0x2d, 0xb8, 0x4f, 0x4e, +}; +static const unsigned char kat3134_addinpr2[] = {0}; +static const unsigned char kat3134_retbits[] = { + 0x99, 0xf4, 0x8c, 0x2c, 0xe5, 0x5a, 0x2b, 0x79, 0xf2, 0xde, 0x20, 0xcc, + 0xd0, 0x80, 0x20, 0xff, 0x61, 0xac, 0xf4, 0x24, 0x51, 0xed, 0xcb, 0x12, + 0xe0, 0x1a, 0x63, 0xb6, 0x82, 0xcc, 0xc3, 0xda, 0x3b, 0xb6, 0xe5, 0x53, + 0x36, 0x92, 0x97, 0xef, 0x88, 0x2f, 0x59, 0xe5, 0xca, 0x1e, 0xc2, 0x1c, + 0x60, 0x6b, 0x17, 0xcb, 0x18, 0x27, 0x50, 0xff, 0x67, 0xe0, 0x14, 0xad, + 0x97, 0x83, 0x23, 0xfe, +}; +static const struct drbg_kat_pr_true kat3134_t = { + 13, kat3134_entropyin, kat3134_nonce, kat3134_persstr, + kat3134_entropyinpr1, kat3134_addinpr1, kat3134_entropyinpr2, + kat3134_addinpr2, kat3134_retbits +}; +static const struct drbg_kat kat3134 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3134_t +}; + +static const unsigned char kat3135_entropyin[] = { + 0x7c, 0x0c, 0x25, 0xf8, 0x48, 0xb4, 0x59, 0x62, 0x5c, 0x79, 0x6c, 0xe4, + 0x77, 0xda, 0x9f, 0xb0, 0x04, 0x26, 0x2e, 0xc6, 0x08, 0xd3, 0xf0, 0xcb, +}; +static const unsigned char kat3135_nonce[] = { + 0xb8, 0x7a, 0x69, 0x7c, 0xac, 0xd8, 0x22, 0xe3, 0xa3, 0xa2, 0xb9, 0x29, + 0xa2, 0x0d, 0x70, 0x72, +}; +static const unsigned char kat3135_persstr[] = {0}; +static const unsigned char kat3135_entropyinpr1[] = { + 0xc1, 0xcb, 0xe2, 0x26, 0xf2, 0xc3, 0x52, 0xba, 0xbe, 0x71, 0xff, 0x61, + 0x43, 0xd1, 0x8e, 0x45, 0xab, 0x17, 0x4b, 0xb2, 0x2d, 0x79, 0x3c, 0xae, +}; +static const unsigned char kat3135_addinpr1[] = {0}; +static const unsigned char kat3135_entropyinpr2[] = { + 0x45, 0x90, 0x72, 0x15, 0xe8, 0xc2, 0x59, 0x27, 0xdd, 0x8f, 0x5e, 0x03, + 0xf1, 0x7d, 0x9e, 0x56, 0x15, 0xe5, 0x6f, 0xb8, 0xf9, 0x01, 0x70, 0x7c, +}; +static const unsigned char kat3135_addinpr2[] = {0}; +static const unsigned char kat3135_retbits[] = { + 0x40, 0x30, 0x1a, 0x7b, 0x48, 0x93, 0x10, 0x52, 0x04, 0xe3, 0x5e, 0x41, + 0xa0, 0xca, 0xe5, 0x4f, 0x42, 0x8b, 0x23, 0x9a, 0x80, 0xc5, 0x61, 0x95, + 0xdd, 0x36, 0x0d, 0x5f, 0x2b, 0x47, 0x87, 0xd1, 0xf7, 0xd1, 0x7f, 0x28, + 0xce, 0x32, 0xc8, 0x72, 0xa3, 0x9d, 0x28, 0xd2, 0x4b, 0xf1, 0xea, 0x95, + 0x11, 0xc4, 0x01, 0x2a, 0xa9, 0x83, 0x65, 0xf0, 0x55, 0xf3, 0x06, 0xa0, + 0x26, 0x4f, 0xde, 0x55, +}; +static const struct drbg_kat_pr_true kat3135_t = { + 14, kat3135_entropyin, kat3135_nonce, kat3135_persstr, + kat3135_entropyinpr1, kat3135_addinpr1, kat3135_entropyinpr2, + kat3135_addinpr2, kat3135_retbits +}; +static const struct drbg_kat kat3135 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3135_t +}; + +static const unsigned char kat3136_entropyin[] = { + 0x4c, 0x41, 0x37, 0x53, 0x49, 0x0a, 0x93, 0xcd, 0x43, 0x16, 0x6f, 0xa3, + 0x80, 0x9d, 0xef, 0xf6, 0x1b, 0x63, 0x2e, 0x2c, 0x22, 0xa7, 0xf9, 0x74, +}; +static const unsigned char kat3136_nonce[] = { + 0xfd, 0x2a, 0x99, 0xc8, 0x47, 0xea, 0x9f, 0x96, 0x42, 0xd2, 0x6d, 0xbf, + 0x54, 0x99, 0x79, 0x7d, +}; +static const unsigned char kat3136_persstr[] = {0}; +static const unsigned char kat3136_entropyinpr1[] = { + 0x7d, 0xa8, 0xda, 0xed, 0xbe, 0xd6, 0x6e, 0x45, 0x29, 0x3e, 0x1a, 0x1c, + 0x87, 0x7a, 0x34, 0x34, 0x8b, 0x53, 0x4a, 0x4a, 0x25, 0xde, 0xc2, 0x58, +}; +static const unsigned char kat3136_addinpr1[] = { + 0xf6, 0x36, 0x8d, 0xbd, 0x19, 0x59, 0x7f, 0xf2, 0x5a, 0xcf, 0x50, 0xc8, + 0x65, 0x5a, 0x74, 0xbf, 0x6e, 0xe0, 0x6d, 0x6e, 0xc2, 0xb5, 0x37, 0x18, + 0x3a, 0xd0, 0x67, 0xed, 0x4b, 0xe0, 0xae, 0x2a, +}; +static const unsigned char kat3136_entropyinpr2[] = { + 0x37, 0xe8, 0x73, 0x56, 0xba, 0x12, 0x74, 0xac, 0xfa, 0x3b, 0x1e, 0xb6, + 0x54, 0xe5, 0x96, 0xf5, 0xef, 0xdc, 0xa5, 0x2b, 0x4c, 0x33, 0x31, 0x87, +}; +static const unsigned char kat3136_addinpr2[] = { + 0x5b, 0x43, 0xa0, 0x41, 0x3e, 0x3a, 0x07, 0x5a, 0x7c, 0x3c, 0x77, 0x20, + 0xc0, 0x6b, 0x96, 0x46, 0x1f, 0x66, 0xac, 0x97, 0xea, 0x4d, 0x13, 0xef, + 0x36, 0x61, 0x14, 0x08, 0x86, 0x68, 0x16, 0x68, +}; +static const unsigned char kat3136_retbits[] = { + 0x7f, 0x7b, 0x60, 0x37, 0xb0, 0xf2, 0xa2, 0x0c, 0x04, 0xe9, 0xeb, 0x28, + 0x85, 0x9b, 0xba, 0xb4, 0xe6, 0x86, 0xa1, 0xe3, 0x4d, 0x67, 0xad, 0x43, + 0x54, 0x4e, 0xe3, 0x63, 0x7b, 0xf1, 0x18, 0x61, 0x5a, 0x49, 0x8a, 0x71, + 0x4a, 0x6f, 0x19, 0xed, 0x45, 0x3d, 0x78, 0xf3, 0x9f, 0x9e, 0xa2, 0xed, + 0x2c, 0x3d, 0xe6, 0xe2, 0x2d, 0x76, 0xe3, 0x28, 0xc3, 0x96, 0xb2, 0xe1, + 0xbe, 0x63, 0x83, 0x9b, +}; +static const struct drbg_kat_pr_true kat3136_t = { + 0, kat3136_entropyin, kat3136_nonce, kat3136_persstr, + kat3136_entropyinpr1, kat3136_addinpr1, kat3136_entropyinpr2, + kat3136_addinpr2, kat3136_retbits +}; +static const struct drbg_kat kat3136 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3136_t +}; + +static const unsigned char kat3137_entropyin[] = { + 0x58, 0x2a, 0xb4, 0xab, 0xb2, 0x16, 0x99, 0x48, 0x78, 0xf0, 0x5a, 0xd5, + 0xbb, 0x14, 0x59, 0x3c, 0x05, 0x4b, 0xee, 0xad, 0x4c, 0x7b, 0xbd, 0x1b, +}; +static const unsigned char kat3137_nonce[] = { + 0x1a, 0xc0, 0xf7, 0x47, 0x54, 0xb6, 0xef, 0xc5, 0xfb, 0xd5, 0xa7, 0x3f, + 0xb8, 0x3b, 0xb5, 0x56, +}; +static const unsigned char kat3137_persstr[] = {0}; +static const unsigned char kat3137_entropyinpr1[] = { + 0x04, 0x96, 0x2f, 0xb6, 0x8b, 0xe5, 0x6d, 0xef, 0x7c, 0xa9, 0x64, 0x8f, + 0x30, 0x87, 0xae, 0x55, 0xba, 0xad, 0x09, 0xc8, 0x24, 0xd0, 0xa5, 0x38, +}; +static const unsigned char kat3137_addinpr1[] = { + 0x39, 0x12, 0x12, 0x4b, 0xac, 0x03, 0xf4, 0x67, 0xd4, 0x24, 0xbd, 0x7e, + 0x4b, 0x30, 0x53, 0x69, 0xe5, 0x6d, 0x92, 0x78, 0xaf, 0x82, 0xd0, 0x9b, + 0x1b, 0x9b, 0x69, 0x78, 0x60, 0xa6, 0x25, 0x97, +}; +static const unsigned char kat3137_entropyinpr2[] = { + 0x41, 0x5d, 0x4d, 0x6a, 0x65, 0xef, 0xd8, 0xac, 0x87, 0x0f, 0x57, 0x8a, + 0x41, 0xa5, 0xc4, 0xdf, 0x90, 0x2f, 0x05, 0x64, 0xd8, 0xe1, 0xfd, 0x1b, +}; +static const unsigned char kat3137_addinpr2[] = { + 0xa2, 0x0c, 0xab, 0x1b, 0xb5, 0xc2, 0x7d, 0xd7, 0x1e, 0x59, 0x54, 0x66, + 0x47, 0x90, 0x67, 0x37, 0x02, 0x54, 0x4f, 0x6b, 0x04, 0x91, 0xb8, 0x55, + 0x5e, 0xf1, 0x9f, 0x5d, 0x1a, 0x53, 0x47, 0xfb, +}; +static const unsigned char kat3137_retbits[] = { + 0xad, 0x22, 0x1d, 0x21, 0xff, 0xca, 0x8b, 0xae, 0xc0, 0x79, 0x13, 0xc2, + 0x6f, 0x38, 0x49, 0x37, 0xc1, 0xbc, 0xee, 0x73, 0x7a, 0x1a, 0x02, 0xfd, + 0x13, 0xe7, 0x00, 0x64, 0x9e, 0xca, 0xd9, 0xf1, 0xd7, 0x51, 0xfa, 0x18, + 0x9f, 0x1e, 0xfc, 0x9d, 0xf6, 0x19, 0x4e, 0xb8, 0xb4, 0x95, 0x90, 0x0d, + 0x04, 0xf3, 0xe6, 0x51, 0x52, 0xe8, 0x1c, 0x2d, 0x83, 0xe9, 0xba, 0xf9, + 0xe7, 0x68, 0xb0, 0x37, +}; +static const struct drbg_kat_pr_true kat3137_t = { + 1, kat3137_entropyin, kat3137_nonce, kat3137_persstr, + kat3137_entropyinpr1, kat3137_addinpr1, kat3137_entropyinpr2, + kat3137_addinpr2, kat3137_retbits +}; +static const struct drbg_kat kat3137 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3137_t +}; + +static const unsigned char kat3138_entropyin[] = { + 0xbc, 0x71, 0x10, 0x1f, 0x21, 0xce, 0xa7, 0xc8, 0x14, 0x6f, 0x06, 0x08, + 0x9f, 0xe8, 0xe7, 0xd0, 0x65, 0x63, 0xdd, 0xe0, 0x20, 0x1d, 0x61, 0x96, +}; +static const unsigned char kat3138_nonce[] = { + 0x84, 0xcf, 0x94, 0x35, 0xdc, 0xd0, 0xa1, 0xc9, 0x93, 0xee, 0xac, 0x18, + 0x50, 0xf4, 0xf0, 0xda, +}; +static const unsigned char kat3138_persstr[] = {0}; +static const unsigned char kat3138_entropyinpr1[] = { + 0x08, 0x6c, 0xeb, 0xc0, 0xd0, 0x28, 0x54, 0xe3, 0x4f, 0x51, 0x66, 0x4f, + 0x0a, 0xd6, 0xf6, 0x0f, 0xa2, 0x1e, 0xa6, 0x8b, 0x41, 0xf7, 0x28, 0x49, +}; +static const unsigned char kat3138_addinpr1[] = { + 0x95, 0xc0, 0x3a, 0x84, 0xad, 0x64, 0xd8, 0x34, 0xc9, 0xa4, 0x64, 0x46, + 0xd6, 0xa4, 0xec, 0xc9, 0xc2, 0x58, 0xcd, 0xee, 0x8d, 0xd2, 0x80, 0x18, + 0x65, 0x66, 0x73, 0x99, 0x3e, 0x0a, 0x9a, 0x87, +}; +static const unsigned char kat3138_entropyinpr2[] = { + 0x57, 0x1e, 0x54, 0xa3, 0xe9, 0x2c, 0x4c, 0xdb, 0xb4, 0x47, 0xcb, 0x0e, + 0x1b, 0x43, 0xdd, 0xb3, 0x21, 0xb6, 0x25, 0x4a, 0xb3, 0x7c, 0x11, 0xc1, +}; +static const unsigned char kat3138_addinpr2[] = { + 0x8f, 0xec, 0x79, 0x4c, 0x50, 0xf3, 0x32, 0x0a, 0xe1, 0x82, 0x63, 0x77, + 0xcd, 0xd5, 0xfb, 0x23, 0x3e, 0x70, 0xaa, 0xae, 0x90, 0xcc, 0x2c, 0xa6, + 0x7b, 0x86, 0x2f, 0x6e, 0xf0, 0xa6, 0xfa, 0xfc, +}; +static const unsigned char kat3138_retbits[] = { + 0xc5, 0x01, 0xd2, 0x4a, 0x34, 0x23, 0xdf, 0x05, 0xf0, 0xd6, 0x48, 0x67, + 0xc9, 0x32, 0x2c, 0xff, 0x72, 0x2c, 0xf4, 0x0c, 0x20, 0x2c, 0x08, 0xad, + 0x88, 0x82, 0x5d, 0x95, 0xdc, 0x7d, 0x46, 0x35, 0xb8, 0xf1, 0x95, 0x88, + 0x6a, 0x1a, 0xa7, 0xa6, 0x4b, 0x73, 0xd3, 0x4c, 0x04, 0x03, 0x33, 0xfe, + 0xb5, 0xae, 0x0b, 0xae, 0x28, 0x42, 0x7c, 0x66, 0xb8, 0x1b, 0x6d, 0xc0, + 0xd9, 0x1e, 0x1f, 0x1a, +}; +static const struct drbg_kat_pr_true kat3138_t = { + 2, kat3138_entropyin, kat3138_nonce, kat3138_persstr, + kat3138_entropyinpr1, kat3138_addinpr1, kat3138_entropyinpr2, + kat3138_addinpr2, kat3138_retbits +}; +static const struct drbg_kat kat3138 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3138_t +}; + +static const unsigned char kat3139_entropyin[] = { + 0xb7, 0xf8, 0x00, 0x1f, 0xde, 0xf0, 0x64, 0xa0, 0x2b, 0x01, 0x12, 0x63, + 0xa8, 0x70, 0xfd, 0xb7, 0x8e, 0x58, 0x38, 0xb2, 0xb0, 0x1f, 0x0d, 0x55, +}; +static const unsigned char kat3139_nonce[] = { + 0xe6, 0x5f, 0x13, 0x32, 0x35, 0xa8, 0xb7, 0xa0, 0x08, 0x5a, 0xe6, 0xa4, + 0x45, 0xd4, 0x08, 0x0e, +}; +static const unsigned char kat3139_persstr[] = {0}; +static const unsigned char kat3139_entropyinpr1[] = { + 0xb4, 0x8a, 0x23, 0x7c, 0x0d, 0x81, 0xa7, 0xee, 0x2b, 0xd3, 0x8c, 0xf4, + 0xde, 0xa8, 0x4a, 0x0c, 0x56, 0xb4, 0x59, 0x5a, 0xa2, 0xa6, 0xd6, 0x7f, +}; +static const unsigned char kat3139_addinpr1[] = { + 0x2d, 0xa3, 0xf9, 0x5a, 0x95, 0x24, 0x44, 0xd5, 0x6a, 0xd5, 0xdf, 0xf3, + 0x34, 0x8a, 0x5a, 0x31, 0xc7, 0x2e, 0xc9, 0x79, 0xa1, 0xad, 0x0b, 0xa8, + 0x0a, 0xc1, 0x75, 0x1a, 0x4f, 0x7c, 0xe0, 0xc5, +}; +static const unsigned char kat3139_entropyinpr2[] = { + 0x10, 0x81, 0xa9, 0x78, 0xb6, 0x1f, 0x37, 0x03, 0xf3, 0x59, 0xd7, 0x3a, + 0xfc, 0x80, 0xb6, 0x05, 0x38, 0x37, 0x6d, 0xef, 0x2d, 0x79, 0xf1, 0x58, +}; +static const unsigned char kat3139_addinpr2[] = { + 0x19, 0x95, 0xbb, 0xff, 0x2f, 0x26, 0xe7, 0x6a, 0x0b, 0x57, 0x6e, 0x92, + 0xbc, 0x45, 0x30, 0x54, 0xd3, 0xfd, 0x9d, 0x03, 0x3b, 0xec, 0x84, 0x81, + 0x18, 0x22, 0xe3, 0xcd, 0x56, 0x04, 0x5e, 0xd6, +}; +static const unsigned char kat3139_retbits[] = { + 0xf9, 0x71, 0x36, 0x73, 0x8d, 0x53, 0x1c, 0xed, 0x37, 0x99, 0x7a, 0x2b, + 0xf4, 0x01, 0xef, 0x00, 0xc2, 0x52, 0xc0, 0x76, 0xa4, 0x31, 0xee, 0xfd, + 0x00, 0xda, 0x35, 0xab, 0x7a, 0x42, 0xf8, 0x86, 0xfb, 0xd7, 0x47, 0x1d, + 0x6a, 0xfd, 0x3b, 0xae, 0xa2, 0xbe, 0xb5, 0x88, 0x7f, 0x8b, 0x6f, 0xb8, + 0x36, 0x63, 0x97, 0x9f, 0xef, 0x6f, 0xd2, 0x35, 0x18, 0xce, 0x26, 0x17, + 0xd2, 0xdb, 0x8e, 0x3e, +}; +static const struct drbg_kat_pr_true kat3139_t = { + 3, kat3139_entropyin, kat3139_nonce, kat3139_persstr, + kat3139_entropyinpr1, kat3139_addinpr1, kat3139_entropyinpr2, + kat3139_addinpr2, kat3139_retbits +}; +static const struct drbg_kat kat3139 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3139_t +}; + +static const unsigned char kat3140_entropyin[] = { + 0xe9, 0xba, 0x01, 0x32, 0x2b, 0x24, 0xb5, 0xb2, 0xd1, 0x37, 0xd2, 0xe3, + 0x31, 0x50, 0xc6, 0xa1, 0x49, 0x95, 0x8f, 0x8f, 0x4d, 0xc8, 0x6c, 0xe5, +}; +static const unsigned char kat3140_nonce[] = { + 0x4c, 0x72, 0x1a, 0xb7, 0xc6, 0x20, 0xd8, 0x9c, 0x4e, 0x19, 0x64, 0x1d, + 0xcf, 0xab, 0x02, 0x58, +}; +static const unsigned char kat3140_persstr[] = {0}; +static const unsigned char kat3140_entropyinpr1[] = { + 0x13, 0x63, 0x3b, 0xf1, 0x64, 0xe6, 0xbe, 0x0d, 0x5e, 0xa1, 0x1d, 0xd3, + 0xad, 0x39, 0x00, 0xf6, 0x4e, 0xfe, 0x0e, 0xeb, 0x24, 0xaf, 0x07, 0x86, +}; +static const unsigned char kat3140_addinpr1[] = { + 0xa4, 0x8d, 0x4e, 0x7b, 0xfe, 0x2c, 0xef, 0x8d, 0x20, 0xd1, 0x4b, 0x51, + 0xe9, 0x5b, 0xa8, 0xb9, 0x74, 0xa8, 0x36, 0x92, 0x74, 0x82, 0x21, 0xc9, + 0x95, 0x5f, 0xce, 0x99, 0x56, 0xe8, 0x3f, 0x37, +}; +static const unsigned char kat3140_entropyinpr2[] = { + 0x67, 0x82, 0xc9, 0x80, 0x76, 0x98, 0x4b, 0x3a, 0x52, 0xf9, 0xad, 0x3a, + 0x22, 0x7e, 0x2a, 0xb8, 0x82, 0x1b, 0xf6, 0x64, 0x3d, 0x4f, 0x87, 0x32, +}; +static const unsigned char kat3140_addinpr2[] = { + 0x46, 0xe0, 0x09, 0x42, 0xaa, 0x45, 0xe5, 0x46, 0xd6, 0x63, 0x38, 0x2c, + 0xa2, 0x95, 0xa2, 0x74, 0x3a, 0x5b, 0x2c, 0x9d, 0xc9, 0x68, 0x8b, 0x6a, + 0x0f, 0x5c, 0x92, 0x99, 0x5f, 0x78, 0x2b, 0x78, +}; +static const unsigned char kat3140_retbits[] = { + 0xcd, 0x21, 0xc2, 0x92, 0xee, 0x22, 0xaa, 0xea, 0xee, 0x15, 0x48, 0x6d, + 0x05, 0xf4, 0x0e, 0x97, 0xab, 0xd2, 0x01, 0x23, 0xb7, 0x7e, 0xc6, 0xed, + 0xea, 0xdb, 0x4d, 0x1c, 0x7a, 0xf0, 0x72, 0x77, 0xb5, 0xb1, 0xe1, 0x91, + 0xaf, 0x54, 0xdb, 0x56, 0x22, 0x26, 0x98, 0x45, 0x14, 0x63, 0xa1, 0xda, + 0xef, 0x51, 0x0b, 0x7b, 0x25, 0x9c, 0x34, 0x87, 0x48, 0xbe, 0x3b, 0xd9, + 0xfe, 0x5f, 0x65, 0xdd, +}; +static const struct drbg_kat_pr_true kat3140_t = { + 4, kat3140_entropyin, kat3140_nonce, kat3140_persstr, + kat3140_entropyinpr1, kat3140_addinpr1, kat3140_entropyinpr2, + kat3140_addinpr2, kat3140_retbits +}; +static const struct drbg_kat kat3140 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3140_t +}; + +static const unsigned char kat3141_entropyin[] = { + 0xf4, 0x84, 0x33, 0x1f, 0x15, 0x67, 0xcd, 0xf4, 0xf7, 0xb7, 0x92, 0x8b, + 0x6c, 0x20, 0x91, 0x4c, 0xb4, 0x74, 0x73, 0x85, 0xe3, 0x3a, 0xff, 0xdb, +}; +static const unsigned char kat3141_nonce[] = { + 0xb7, 0xbd, 0xbe, 0x04, 0x3a, 0x0d, 0x7a, 0x39, 0xa2, 0x02, 0xbc, 0x34, + 0x1b, 0xda, 0x24, 0x95, +}; +static const unsigned char kat3141_persstr[] = {0}; +static const unsigned char kat3141_entropyinpr1[] = { + 0xaf, 0x60, 0xb7, 0x3f, 0x09, 0x6c, 0x05, 0xa9, 0x77, 0xea, 0xc9, 0xdc, + 0x2b, 0x38, 0xc4, 0x52, 0x4a, 0x5e, 0xf8, 0x14, 0x71, 0x6e, 0x9a, 0x10, +}; +static const unsigned char kat3141_addinpr1[] = { + 0x07, 0x17, 0x5c, 0x3a, 0x18, 0xb4, 0x86, 0x1b, 0x16, 0x9c, 0x3d, 0x80, + 0x2e, 0x71, 0x47, 0x55, 0x90, 0x19, 0xf9, 0xf4, 0x30, 0x8a, 0xc0, 0x46, + 0x7a, 0x9c, 0x1d, 0x6a, 0xd9, 0x54, 0x3f, 0x62, +}; +static const unsigned char kat3141_entropyinpr2[] = { + 0x23, 0x66, 0xf5, 0x1e, 0x74, 0x8c, 0x35, 0xa0, 0x11, 0xd9, 0x22, 0x48, + 0x31, 0x49, 0xd2, 0x65, 0x1a, 0x24, 0xf7, 0x1c, 0x88, 0x12, 0x33, 0xd5, +}; +static const unsigned char kat3141_addinpr2[] = { + 0x0b, 0xff, 0x39, 0xf2, 0xd2, 0xc0, 0xff, 0xbf, 0xde, 0x16, 0x97, 0x38, + 0x4a, 0x88, 0xe4, 0x78, 0x5a, 0x2f, 0xd1, 0x25, 0xd0, 0x88, 0x63, 0x49, + 0x17, 0xbb, 0x70, 0xe8, 0x50, 0x58, 0x2a, 0x7c, +}; +static const unsigned char kat3141_retbits[] = { + 0xb3, 0xd2, 0x85, 0xbf, 0xb8, 0x55, 0x5b, 0x38, 0x7a, 0x40, 0x9e, 0x30, + 0xc3, 0xdd, 0x2b, 0x13, 0x1a, 0xbf, 0x5c, 0x46, 0xe7, 0x95, 0x10, 0xf0, + 0x77, 0xd8, 0x52, 0x1a, 0x4c, 0x4f, 0x27, 0xe7, 0xb3, 0x2a, 0xe0, 0xc3, + 0xdd, 0x35, 0xfb, 0xa7, 0xfd, 0x60, 0x34, 0xbf, 0x92, 0xc8, 0x26, 0x02, + 0x22, 0x69, 0xe8, 0x6d, 0x85, 0x0b, 0xaf, 0x30, 0x88, 0x8d, 0x6d, 0xe3, + 0x5c, 0x74, 0x34, 0xe7, +}; +static const struct drbg_kat_pr_true kat3141_t = { + 5, kat3141_entropyin, kat3141_nonce, kat3141_persstr, + kat3141_entropyinpr1, kat3141_addinpr1, kat3141_entropyinpr2, + kat3141_addinpr2, kat3141_retbits +}; +static const struct drbg_kat kat3141 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3141_t +}; + +static const unsigned char kat3142_entropyin[] = { + 0x8c, 0x6d, 0xee, 0x14, 0x56, 0x44, 0x3b, 0x47, 0xfa, 0xf2, 0xba, 0x73, + 0x78, 0x02, 0x40, 0xb2, 0xf4, 0x30, 0x20, 0x70, 0x6e, 0xe8, 0x46, 0x5d, +}; +static const unsigned char kat3142_nonce[] = { + 0x15, 0xa1, 0x39, 0xb7, 0x5c, 0x75, 0x52, 0x3f, 0x9b, 0x6f, 0x39, 0xc0, + 0x77, 0x58, 0x3e, 0xd6, +}; +static const unsigned char kat3142_persstr[] = {0}; +static const unsigned char kat3142_entropyinpr1[] = { + 0x4c, 0xad, 0x98, 0xf5, 0x4c, 0xae, 0x3e, 0x2c, 0x0c, 0xce, 0xf2, 0xbd, + 0x77, 0x2e, 0x97, 0x77, 0x34, 0x49, 0x71, 0xf1, 0xd3, 0xa9, 0x4e, 0xe8, +}; +static const unsigned char kat3142_addinpr1[] = { + 0x5d, 0x68, 0x41, 0x4e, 0xc3, 0x88, 0xaf, 0x07, 0x4c, 0x29, 0x87, 0xe0, + 0x52, 0x1a, 0x01, 0x2a, 0xae, 0xd0, 0x1d, 0x4f, 0x88, 0x51, 0x0f, 0xf6, + 0x97, 0x16, 0x18, 0x61, 0x43, 0x39, 0x42, 0x31, +}; +static const unsigned char kat3142_entropyinpr2[] = { + 0xdb, 0xf0, 0x04, 0xf6, 0xa3, 0x94, 0x44, 0xbf, 0xd1, 0xf6, 0x18, 0x30, + 0xf7, 0x1d, 0xc2, 0xcc, 0x13, 0x82, 0xfd, 0x3e, 0x21, 0xf6, 0x54, 0xe1, +}; +static const unsigned char kat3142_addinpr2[] = { + 0x08, 0x66, 0x75, 0xfd, 0x33, 0x06, 0x01, 0x73, 0xa2, 0xfa, 0xb6, 0xe8, + 0x75, 0x1c, 0x8c, 0xcd, 0x89, 0xec, 0x39, 0x75, 0xd2, 0xc4, 0x97, 0x96, + 0x17, 0xab, 0xfd, 0xbb, 0xa6, 0x03, 0xc1, 0x20, +}; +static const unsigned char kat3142_retbits[] = { + 0xbb, 0x29, 0x8c, 0x31, 0xae, 0x69, 0xa3, 0x03, 0x51, 0x54, 0x9e, 0x1c, + 0x14, 0x24, 0x92, 0x5b, 0x26, 0xc9, 0x82, 0xfc, 0x94, 0x24, 0xc1, 0x43, + 0x6c, 0x16, 0xa2, 0xa3, 0x2c, 0xf1, 0xc3, 0x96, 0xe8, 0x5b, 0x7b, 0xac, + 0x05, 0xea, 0xa7, 0xc4, 0x9f, 0x8a, 0x5d, 0x67, 0xac, 0xa5, 0x34, 0x6c, + 0x57, 0x4d, 0x3f, 0x74, 0x97, 0xb2, 0xbf, 0x32, 0x9d, 0xaf, 0x23, 0xbf, + 0xf7, 0x8d, 0xae, 0x66, +}; +static const struct drbg_kat_pr_true kat3142_t = { + 6, kat3142_entropyin, kat3142_nonce, kat3142_persstr, + kat3142_entropyinpr1, kat3142_addinpr1, kat3142_entropyinpr2, + kat3142_addinpr2, kat3142_retbits +}; +static const struct drbg_kat kat3142 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3142_t +}; + +static const unsigned char kat3143_entropyin[] = { + 0xab, 0xa4, 0xe6, 0xae, 0x82, 0x60, 0x59, 0x9a, 0xee, 0x1a, 0x2f, 0x91, + 0xdc, 0x92, 0x92, 0x9b, 0x97, 0x45, 0x13, 0xba, 0xaa, 0x59, 0xc9, 0xc8, +}; +static const unsigned char kat3143_nonce[] = { + 0xec, 0xa1, 0xe2, 0x84, 0x3c, 0x70, 0x74, 0xfb, 0x21, 0xb7, 0x91, 0x6f, + 0x8c, 0x99, 0x1a, 0x87, +}; +static const unsigned char kat3143_persstr[] = {0}; +static const unsigned char kat3143_entropyinpr1[] = { + 0x2e, 0xfc, 0xc9, 0x6a, 0x3c, 0x53, 0xba, 0x91, 0x53, 0xdf, 0xbc, 0x34, + 0xec, 0xf3, 0xa7, 0x16, 0x09, 0x1d, 0x75, 0x92, 0xb8, 0x7f, 0xce, 0x2b, +}; +static const unsigned char kat3143_addinpr1[] = { + 0x8b, 0x79, 0x19, 0xf1, 0x0f, 0xac, 0x64, 0x1a, 0x83, 0x6e, 0x0f, 0xc0, + 0xc8, 0xbf, 0xe7, 0x72, 0x60, 0xf6, 0x04, 0xe7, 0x2e, 0x7a, 0xd5, 0x95, + 0xb7, 0xdf, 0x58, 0xef, 0x91, 0xb9, 0x04, 0x4b, +}; +static const unsigned char kat3143_entropyinpr2[] = { + 0x82, 0x78, 0x89, 0xaf, 0x9c, 0x41, 0x08, 0x19, 0x77, 0x5b, 0x6e, 0xff, + 0xd0, 0x0e, 0x30, 0xa4, 0xcb, 0xe5, 0xe5, 0x36, 0x8b, 0x07, 0x77, 0xd6, +}; +static const unsigned char kat3143_addinpr2[] = { + 0xdc, 0x3b, 0x27, 0xa4, 0xe5, 0x8c, 0xb7, 0x16, 0xfd, 0x69, 0x76, 0x21, + 0x8b, 0xa6, 0xe8, 0x4c, 0x06, 0x0d, 0xc6, 0xf2, 0x7f, 0x7a, 0x16, 0x8b, + 0xfc, 0xb6, 0xf8, 0x7e, 0x1c, 0x5f, 0x1b, 0x4b, +}; +static const unsigned char kat3143_retbits[] = { + 0xad, 0xbf, 0x0d, 0xe3, 0x15, 0xb0, 0x39, 0xbc, 0x14, 0x4e, 0x30, 0x1c, + 0xbf, 0x87, 0x03, 0xc8, 0x85, 0x9f, 0x36, 0x82, 0x6e, 0x66, 0x21, 0x24, + 0xaa, 0xcd, 0x80, 0xdc, 0x05, 0x94, 0x25, 0xde, 0x57, 0x55, 0x7d, 0x18, + 0x8d, 0x68, 0xc3, 0x4b, 0x6c, 0x64, 0x87, 0xb6, 0x14, 0x19, 0x14, 0x3e, + 0x17, 0xae, 0xad, 0x8e, 0x3b, 0xc8, 0xf2, 0x08, 0xd3, 0x3c, 0x7d, 0x08, + 0xee, 0x8c, 0x75, 0x0b, +}; +static const struct drbg_kat_pr_true kat3143_t = { + 7, kat3143_entropyin, kat3143_nonce, kat3143_persstr, + kat3143_entropyinpr1, kat3143_addinpr1, kat3143_entropyinpr2, + kat3143_addinpr2, kat3143_retbits +}; +static const struct drbg_kat kat3143 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3143_t +}; + +static const unsigned char kat3144_entropyin[] = { + 0x78, 0xb8, 0x33, 0x33, 0x2d, 0xdf, 0x85, 0x35, 0x61, 0x25, 0x46, 0x2e, + 0x4b, 0x40, 0xa5, 0xba, 0xd9, 0x99, 0x2c, 0x11, 0x5a, 0xfe, 0xf8, 0x82, +}; +static const unsigned char kat3144_nonce[] = { + 0x36, 0x03, 0x43, 0x8e, 0x10, 0x40, 0x5c, 0x98, 0x30, 0xcd, 0xab, 0xe0, + 0x8c, 0x0b, 0xf3, 0x2e, +}; +static const unsigned char kat3144_persstr[] = {0}; +static const unsigned char kat3144_entropyinpr1[] = { + 0x88, 0xb0, 0x95, 0xad, 0xe0, 0x30, 0x29, 0xc9, 0x1d, 0x85, 0x80, 0xb2, + 0x04, 0xb9, 0xbc, 0xa6, 0x09, 0xcb, 0x7a, 0xc4, 0xd5, 0x4b, 0xc0, 0xbc, +}; +static const unsigned char kat3144_addinpr1[] = { + 0xbd, 0xdb, 0x82, 0x3d, 0xac, 0x65, 0x45, 0x37, 0xd0, 0x2c, 0xfc, 0x50, + 0x4f, 0xfe, 0x3f, 0x08, 0xf2, 0x9d, 0xee, 0x57, 0xcb, 0xc1, 0x4f, 0x0b, + 0xf3, 0x13, 0x96, 0x5c, 0x95, 0x38, 0x3c, 0x58, +}; +static const unsigned char kat3144_entropyinpr2[] = { + 0x80, 0x14, 0x9d, 0xf3, 0x54, 0xfc, 0x9d, 0x21, 0xe5, 0x10, 0x9a, 0x48, + 0x7d, 0x9a, 0xe5, 0xce, 0x5c, 0x6a, 0xf4, 0x55, 0xe7, 0x5b, 0xa6, 0x87, +}; +static const unsigned char kat3144_addinpr2[] = { + 0x11, 0xe6, 0x0b, 0x35, 0x2f, 0x30, 0x79, 0xf1, 0xc0, 0x7c, 0x91, 0x43, + 0x06, 0x0b, 0xa7, 0x82, 0x70, 0x3b, 0x24, 0x7e, 0x1a, 0xac, 0xa1, 0x91, + 0x5e, 0x70, 0x52, 0xfd, 0xd1, 0xf6, 0x7f, 0xbe, +}; +static const unsigned char kat3144_retbits[] = { + 0x42, 0xb2, 0x32, 0x07, 0x7c, 0x5b, 0xec, 0xe8, 0x65, 0x6d, 0xad, 0x73, + 0x54, 0x5d, 0xc3, 0x4d, 0xed, 0x73, 0x05, 0xeb, 0x4a, 0xcb, 0xce, 0x0f, + 0x66, 0x5e, 0x6b, 0x35, 0x57, 0x07, 0xd1, 0x98, 0x74, 0x65, 0x01, 0x74, + 0x1a, 0xf2, 0xa6, 0x1e, 0x70, 0x07, 0x24, 0xf1, 0xe0, 0xcf, 0xf4, 0x76, + 0xa0, 0x53, 0x36, 0xc7, 0x1c, 0xcb, 0x2e, 0xf9, 0xea, 0x34, 0xf7, 0x4c, + 0x30, 0x05, 0xc0, 0x37, +}; +static const struct drbg_kat_pr_true kat3144_t = { + 8, kat3144_entropyin, kat3144_nonce, kat3144_persstr, + kat3144_entropyinpr1, kat3144_addinpr1, kat3144_entropyinpr2, + kat3144_addinpr2, kat3144_retbits +}; +static const struct drbg_kat kat3144 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3144_t +}; + +static const unsigned char kat3145_entropyin[] = { + 0x2b, 0xd9, 0xbd, 0xe8, 0x69, 0x4e, 0x97, 0xcd, 0x8a, 0x31, 0xfa, 0xeb, + 0xd2, 0x55, 0xd2, 0x24, 0xd4, 0x7d, 0x4c, 0x75, 0x6d, 0x46, 0x99, 0x38, +}; +static const unsigned char kat3145_nonce[] = { + 0xec, 0x60, 0xe5, 0x01, 0xba, 0xfd, 0x72, 0x22, 0x1d, 0xf3, 0x57, 0x50, + 0x01, 0xc8, 0xb5, 0x94, +}; +static const unsigned char kat3145_persstr[] = {0}; +static const unsigned char kat3145_entropyinpr1[] = { + 0xbd, 0xd5, 0x1d, 0x85, 0x6e, 0xaf, 0x5a, 0x0c, 0xd5, 0xd5, 0xc4, 0xcd, + 0x48, 0xb7, 0xd3, 0x8e, 0x58, 0xe3, 0xb1, 0x6a, 0xfc, 0xf7, 0xf9, 0xa3, +}; +static const unsigned char kat3145_addinpr1[] = { + 0x46, 0x91, 0x96, 0x8a, 0x71, 0x30, 0x71, 0x0e, 0x06, 0xf6, 0xe2, 0x18, + 0xaf, 0x1f, 0xc7, 0xd9, 0xd1, 0x23, 0x76, 0x4e, 0x6b, 0xc7, 0x72, 0xfe, + 0x72, 0x6d, 0x9b, 0x0c, 0x48, 0xf9, 0x1d, 0xde, +}; +static const unsigned char kat3145_entropyinpr2[] = { + 0xf5, 0x2b, 0x17, 0x64, 0x1b, 0x86, 0x1a, 0x4e, 0x0e, 0xcd, 0x65, 0x03, + 0x48, 0x5f, 0x4f, 0x44, 0xa9, 0xb3, 0xa8, 0xa8, 0xde, 0xa6, 0x1c, 0x51, +}; +static const unsigned char kat3145_addinpr2[] = { + 0xf1, 0xa1, 0x86, 0x1e, 0x7d, 0x9c, 0xfa, 0x11, 0xff, 0x7d, 0xad, 0xd7, + 0xf1, 0xbe, 0xe5, 0xe7, 0x70, 0x0f, 0x41, 0x99, 0xc1, 0x94, 0x98, 0x46, + 0x71, 0xea, 0x1a, 0xa0, 0xb9, 0x98, 0xa6, 0x23, +}; +static const unsigned char kat3145_retbits[] = { + 0xce, 0xb5, 0x48, 0x0c, 0x76, 0x99, 0xdb, 0xf6, 0xc5, 0x79, 0xc4, 0xf4, + 0x8c, 0xaf, 0x81, 0x23, 0xc0, 0x8c, 0xe4, 0xd8, 0x67, 0x3e, 0xb3, 0x24, + 0x14, 0x0f, 0x29, 0xdc, 0x35, 0x83, 0x89, 0x91, 0xd3, 0xca, 0x99, 0xda, + 0x2f, 0xdd, 0x6b, 0x0f, 0x74, 0x4e, 0x93, 0x86, 0xf1, 0xb9, 0x77, 0xdf, + 0x4c, 0x06, 0x62, 0x9f, 0x16, 0x74, 0x91, 0x60, 0x3d, 0x41, 0xc2, 0x1a, + 0xb0, 0xe6, 0x0a, 0xab, +}; +static const struct drbg_kat_pr_true kat3145_t = { + 9, kat3145_entropyin, kat3145_nonce, kat3145_persstr, + kat3145_entropyinpr1, kat3145_addinpr1, kat3145_entropyinpr2, + kat3145_addinpr2, kat3145_retbits +}; +static const struct drbg_kat kat3145 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3145_t +}; + +static const unsigned char kat3146_entropyin[] = { + 0xd7, 0x08, 0x42, 0x82, 0xc2, 0xd2, 0xd1, 0xde, 0x01, 0xb4, 0x36, 0xb3, + 0x7f, 0xbd, 0xd3, 0xdd, 0xb3, 0xc4, 0x31, 0x4f, 0x8f, 0xa7, 0x10, 0xf4, +}; +static const unsigned char kat3146_nonce[] = { + 0x7b, 0x9e, 0xcd, 0x49, 0x4f, 0x46, 0xa0, 0x08, 0x32, 0xff, 0x2e, 0xc3, + 0x50, 0x86, 0xca, 0xca, +}; +static const unsigned char kat3146_persstr[] = {0}; +static const unsigned char kat3146_entropyinpr1[] = { + 0x68, 0xd0, 0x7b, 0xa4, 0xe7, 0x22, 0x19, 0xe6, 0xb6, 0x46, 0x6a, 0xda, + 0x8e, 0x67, 0xea, 0x63, 0x3f, 0xaf, 0x2f, 0x6c, 0x9d, 0x5e, 0x48, 0x15, +}; +static const unsigned char kat3146_addinpr1[] = { + 0x70, 0x0f, 0x54, 0xf4, 0x53, 0xde, 0xca, 0x61, 0x5c, 0x49, 0x51, 0xd1, + 0x41, 0xc4, 0xf1, 0x2f, 0x65, 0xfb, 0x7e, 0xbc, 0x9b, 0x14, 0xba, 0x90, + 0x05, 0x33, 0x7e, 0x64, 0xb7, 0x2b, 0xaf, 0x99, +}; +static const unsigned char kat3146_entropyinpr2[] = { + 0xeb, 0x77, 0xb0, 0xe9, 0x2d, 0x31, 0xc8, 0x66, 0xc5, 0xc4, 0xa7, 0xf7, + 0x6c, 0xb2, 0x74, 0x36, 0x4b, 0x25, 0x78, 0x04, 0xd8, 0xd7, 0xd2, 0x34, +}; +static const unsigned char kat3146_addinpr2[] = { + 0x05, 0xcd, 0x2a, 0x97, 0x5a, 0x5d, 0xfb, 0x98, 0xc1, 0xf1, 0x00, 0x0c, + 0xed, 0xe6, 0x2a, 0xba, 0xf0, 0x89, 0x1f, 0x5a, 0x4f, 0xd7, 0x48, 0xb3, + 0x24, 0xc0, 0x8a, 0x3d, 0x60, 0x59, 0x5d, 0xb6, +}; +static const unsigned char kat3146_retbits[] = { + 0x29, 0x94, 0xa4, 0xa8, 0x17, 0x3e, 0x62, 0x2f, 0x94, 0xdd, 0x40, 0x1f, + 0xe3, 0x7e, 0x77, 0xd4, 0x38, 0xbc, 0x0e, 0x49, 0x46, 0xf6, 0x0e, 0x28, + 0x91, 0xc6, 0x9c, 0xc4, 0xa6, 0xa1, 0xf8, 0x9a, 0x64, 0x5e, 0x99, 0x76, + 0xd0, 0x2d, 0xee, 0xde, 0xe1, 0x2c, 0x93, 0x29, 0x4b, 0x12, 0xcf, 0x87, + 0x03, 0x98, 0xb9, 0x74, 0x41, 0xdb, 0x3a, 0x49, 0x9f, 0x92, 0xd0, 0x45, + 0xd4, 0x30, 0x73, 0xbb, +}; +static const struct drbg_kat_pr_true kat3146_t = { + 10, kat3146_entropyin, kat3146_nonce, kat3146_persstr, + kat3146_entropyinpr1, kat3146_addinpr1, kat3146_entropyinpr2, + kat3146_addinpr2, kat3146_retbits +}; +static const struct drbg_kat kat3146 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3146_t +}; + +static const unsigned char kat3147_entropyin[] = { + 0x45, 0x33, 0x48, 0x45, 0x32, 0x45, 0xcc, 0x0a, 0xbd, 0x99, 0x65, 0x94, + 0xc2, 0x7e, 0x85, 0xdc, 0x99, 0x61, 0xe0, 0xd2, 0x59, 0x49, 0x68, 0xad, +}; +static const unsigned char kat3147_nonce[] = { + 0x55, 0xca, 0xf8, 0x7a, 0xe6, 0x57, 0x40, 0x8e, 0x15, 0x9b, 0x33, 0xeb, + 0xe1, 0x61, 0x8b, 0xcb, +}; +static const unsigned char kat3147_persstr[] = {0}; +static const unsigned char kat3147_entropyinpr1[] = { + 0xd4, 0x67, 0xc3, 0xf4, 0xd7, 0x32, 0x09, 0x7a, 0xd2, 0x27, 0x20, 0xa8, + 0x99, 0x9f, 0x4c, 0x50, 0xa6, 0x15, 0xd7, 0x93, 0x6b, 0xab, 0x20, 0x49, +}; +static const unsigned char kat3147_addinpr1[] = { + 0x4b, 0x2a, 0xd8, 0x8f, 0x79, 0x6d, 0x63, 0x8a, 0x0c, 0x0c, 0x39, 0x1a, + 0xcb, 0x43, 0xd0, 0xb7, 0x1b, 0xae, 0x91, 0x44, 0xc7, 0x7b, 0x9f, 0xa5, + 0xac, 0xa9, 0x4f, 0x5b, 0x3a, 0x56, 0x62, 0x6e, +}; +static const unsigned char kat3147_entropyinpr2[] = { + 0x40, 0xd4, 0x75, 0xa5, 0xf8, 0x81, 0xf8, 0x6d, 0x05, 0xa8, 0xa0, 0x84, + 0xeb, 0xb0, 0x6d, 0x34, 0xf0, 0xec, 0xd4, 0xf7, 0x2a, 0x06, 0xa5, 0x1e, +}; +static const unsigned char kat3147_addinpr2[] = { + 0x93, 0x81, 0x7c, 0x69, 0xeb, 0xc2, 0x25, 0xbc, 0x50, 0x3d, 0x95, 0xb1, + 0x29, 0x89, 0x97, 0x30, 0xe7, 0x1e, 0x55, 0x91, 0x3c, 0xb0, 0x72, 0x34, + 0xa0, 0x7e, 0x9f, 0xec, 0x76, 0x2e, 0x3a, 0x86, +}; +static const unsigned char kat3147_retbits[] = { + 0x70, 0xea, 0x9e, 0xb8, 0xd4, 0x89, 0x8f, 0x21, 0xe0, 0xd0, 0x1b, 0x5c, + 0xf3, 0xd1, 0xb9, 0xab, 0x6f, 0xee, 0x03, 0x5f, 0x1b, 0x3a, 0x55, 0x83, + 0xb1, 0x10, 0xce, 0xf0, 0x37, 0xbc, 0x2d, 0x69, 0xd5, 0x07, 0x33, 0x23, + 0x57, 0x52, 0x30, 0x49, 0x14, 0xa4, 0x50, 0xa5, 0x51, 0x31, 0x8c, 0x05, + 0xa3, 0xc0, 0x8b, 0xc5, 0x3b, 0x08, 0xde, 0x82, 0x64, 0xfb, 0x77, 0xdf, + 0xe4, 0x1f, 0x2f, 0xce, +}; +static const struct drbg_kat_pr_true kat3147_t = { + 11, kat3147_entropyin, kat3147_nonce, kat3147_persstr, + kat3147_entropyinpr1, kat3147_addinpr1, kat3147_entropyinpr2, + kat3147_addinpr2, kat3147_retbits +}; +static const struct drbg_kat kat3147 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3147_t +}; + +static const unsigned char kat3148_entropyin[] = { + 0xb6, 0x76, 0xfe, 0xab, 0x77, 0x52, 0x4b, 0x0b, 0xc1, 0xed, 0xaa, 0xb1, + 0xe4, 0x50, 0x57, 0x40, 0xe1, 0x31, 0x38, 0x15, 0x79, 0xea, 0x0b, 0xb6, +}; +static const unsigned char kat3148_nonce[] = { + 0x05, 0x2a, 0x28, 0xdf, 0xfb, 0xd5, 0xa9, 0x8a, 0x9e, 0xe0, 0xc4, 0xf6, + 0xbc, 0xaf, 0xca, 0x9a, +}; +static const unsigned char kat3148_persstr[] = {0}; +static const unsigned char kat3148_entropyinpr1[] = { + 0x9c, 0x5e, 0xe2, 0x91, 0x9c, 0xac, 0xbe, 0x5d, 0x76, 0x3b, 0x8b, 0x94, + 0xa3, 0x6b, 0x7c, 0x90, 0x8e, 0x62, 0xe1, 0x35, 0x20, 0x7b, 0x95, 0x1a, +}; +static const unsigned char kat3148_addinpr1[] = { + 0x3e, 0x33, 0x51, 0x71, 0x48, 0xe6, 0x75, 0x40, 0xc1, 0x65, 0x3b, 0x6b, + 0x2d, 0x5d, 0x49, 0x62, 0x37, 0xaa, 0xa0, 0xfc, 0x31, 0x55, 0xe8, 0xc6, + 0x03, 0xab, 0x82, 0x0b, 0x86, 0xea, 0xae, 0x68, +}; +static const unsigned char kat3148_entropyinpr2[] = { + 0xbd, 0xa0, 0xbf, 0x5b, 0xd5, 0x5c, 0x9a, 0xf0, 0x1d, 0xa9, 0x8b, 0x3c, + 0xd5, 0x44, 0x39, 0x03, 0xa7, 0x9a, 0x95, 0x73, 0x5a, 0x09, 0xdc, 0x6b, +}; +static const unsigned char kat3148_addinpr2[] = { + 0x48, 0x1e, 0x5b, 0x69, 0xb3, 0xcb, 0x22, 0x8b, 0x8f, 0xb1, 0xf6, 0x3d, + 0x2f, 0x54, 0xbd, 0xbe, 0x44, 0x11, 0xf5, 0x94, 0x40, 0xfc, 0xef, 0xdb, + 0xe7, 0x8f, 0xdb, 0xa9, 0x2b, 0xa8, 0x4d, 0xc1, +}; +static const unsigned char kat3148_retbits[] = { + 0xa2, 0x3f, 0xbd, 0x78, 0x56, 0x91, 0x25, 0x04, 0xb4, 0xe8, 0x3f, 0xfc, + 0x0d, 0x44, 0x0b, 0x08, 0x27, 0x68, 0x84, 0x37, 0x85, 0x4c, 0x64, 0x6f, + 0x54, 0x78, 0x92, 0x48, 0x71, 0xfa, 0x2f, 0xa5, 0x09, 0x1a, 0xea, 0x56, + 0xf0, 0x49, 0x18, 0x2b, 0x5c, 0x32, 0x80, 0x57, 0x96, 0x7d, 0xdd, 0x82, + 0xe7, 0xc6, 0x53, 0x22, 0xa8, 0x9a, 0x51, 0x99, 0xb3, 0xb2, 0x94, 0xe0, + 0xe9, 0x1c, 0x34, 0xd9, +}; +static const struct drbg_kat_pr_true kat3148_t = { + 12, kat3148_entropyin, kat3148_nonce, kat3148_persstr, + kat3148_entropyinpr1, kat3148_addinpr1, kat3148_entropyinpr2, + kat3148_addinpr2, kat3148_retbits +}; +static const struct drbg_kat kat3148 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3148_t +}; + +static const unsigned char kat3149_entropyin[] = { + 0x28, 0x10, 0xc0, 0x46, 0xde, 0x02, 0xc1, 0x58, 0x29, 0x90, 0x27, 0xb5, + 0x83, 0xdd, 0x8d, 0x48, 0x77, 0x6f, 0xec, 0xa8, 0x17, 0x7d, 0xbf, 0x2a, +}; +static const unsigned char kat3149_nonce[] = { + 0x7c, 0xa3, 0x17, 0x00, 0xe8, 0xa2, 0x2a, 0xcf, 0x1b, 0x2d, 0x03, 0x29, + 0xb8, 0xe9, 0x8b, 0xc5, +}; +static const unsigned char kat3149_persstr[] = {0}; +static const unsigned char kat3149_entropyinpr1[] = { + 0x24, 0x44, 0xb0, 0x96, 0xfe, 0x74, 0x54, 0x08, 0x53, 0x2a, 0x37, 0xc9, + 0x91, 0x36, 0x57, 0xa7, 0xe4, 0x9a, 0x8a, 0x94, 0x90, 0xc9, 0xd4, 0x12, +}; +static const unsigned char kat3149_addinpr1[] = { + 0x6f, 0x30, 0xad, 0xaa, 0xeb, 0x31, 0xfc, 0xd3, 0x3a, 0x2f, 0xc9, 0x3e, + 0x70, 0x30, 0x30, 0x01, 0xb5, 0xc4, 0xbe, 0x95, 0x91, 0xd7, 0x5d, 0x65, + 0xf0, 0xd4, 0x7c, 0xf3, 0x15, 0xf0, 0x7f, 0xd4, +}; +static const unsigned char kat3149_entropyinpr2[] = { + 0x76, 0xb6, 0x29, 0x51, 0x7d, 0xda, 0xe4, 0x5e, 0x1b, 0xac, 0xde, 0x01, + 0xdc, 0x77, 0x36, 0xd7, 0xf8, 0x72, 0x72, 0xb0, 0x37, 0x17, 0xb2, 0xd4, +}; +static const unsigned char kat3149_addinpr2[] = { + 0x5a, 0xd9, 0x44, 0x81, 0x59, 0xaf, 0xbf, 0xc0, 0xf6, 0x3f, 0x94, 0x45, + 0x48, 0x6f, 0xd7, 0x29, 0xcd, 0x33, 0xc2, 0x00, 0xf8, 0xd5, 0x0f, 0xf1, + 0x68, 0x29, 0xc1, 0x6f, 0x69, 0x89, 0x9a, 0x86, +}; +static const unsigned char kat3149_retbits[] = { + 0xde, 0x22, 0xd5, 0x6b, 0x74, 0x54, 0xc3, 0x22, 0x4f, 0x4f, 0x63, 0x4a, + 0x6c, 0x62, 0xca, 0x87, 0x62, 0x58, 0x8b, 0x92, 0x72, 0x2f, 0xce, 0x67, + 0xfc, 0xbb, 0x60, 0xa9, 0xe7, 0xd6, 0x86, 0x28, 0x7c, 0x5b, 0xe1, 0x7a, + 0x91, 0xac, 0xdb, 0x9f, 0x79, 0x58, 0x6b, 0xe3, 0x80, 0x49, 0x3f, 0x0e, + 0x9a, 0x5a, 0xff, 0x81, 0x5d, 0x62, 0x47, 0xb3, 0xea, 0x9f, 0xc4, 0x08, + 0x79, 0xdc, 0x3f, 0x1c, +}; +static const struct drbg_kat_pr_true kat3149_t = { + 13, kat3149_entropyin, kat3149_nonce, kat3149_persstr, + kat3149_entropyinpr1, kat3149_addinpr1, kat3149_entropyinpr2, + kat3149_addinpr2, kat3149_retbits +}; +static const struct drbg_kat kat3149 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3149_t +}; + +static const unsigned char kat3150_entropyin[] = { + 0x66, 0x0e, 0x1a, 0x8d, 0xbd, 0x89, 0xea, 0xad, 0x59, 0xd7, 0xf4, 0xf5, + 0x7d, 0x17, 0x1a, 0x29, 0x4b, 0x00, 0x28, 0x0e, 0x2e, 0xff, 0x9f, 0x76, +}; +static const unsigned char kat3150_nonce[] = { + 0xed, 0xc8, 0xe1, 0x49, 0x3f, 0xb4, 0x7c, 0x47, 0xb0, 0x10, 0x0c, 0xa3, + 0xff, 0x26, 0x49, 0xe9, +}; +static const unsigned char kat3150_persstr[] = {0}; +static const unsigned char kat3150_entropyinpr1[] = { + 0x00, 0x60, 0x8b, 0x02, 0x01, 0x99, 0x25, 0x87, 0xfb, 0x46, 0x76, 0x1f, + 0x02, 0x99, 0x16, 0x4b, 0x6f, 0xa0, 0xee, 0x50, 0x4c, 0x45, 0x34, 0x5a, +}; +static const unsigned char kat3150_addinpr1[] = { + 0x26, 0xd6, 0x26, 0x6a, 0x6c, 0x28, 0xe7, 0x15, 0x9f, 0xe1, 0x7f, 0xcc, + 0x79, 0x06, 0x7c, 0xe5, 0xf1, 0x67, 0xe7, 0xd1, 0xb2, 0x8e, 0x17, 0xa8, + 0xbe, 0x96, 0x0d, 0x3e, 0x86, 0x2d, 0x42, 0x95, +}; +static const unsigned char kat3150_entropyinpr2[] = { + 0x22, 0x9a, 0x06, 0x20, 0xa0, 0x4c, 0x7f, 0xca, 0x11, 0x1a, 0xe3, 0xc5, + 0x3c, 0xa7, 0xcf, 0xd5, 0x04, 0x5a, 0x34, 0x9c, 0x14, 0xcb, 0xa7, 0x0f, +}; +static const unsigned char kat3150_addinpr2[] = { + 0x2c, 0xbb, 0xdf, 0x8c, 0x85, 0x57, 0x77, 0x0e, 0x58, 0x9c, 0x59, 0x3c, + 0x05, 0x10, 0xe5, 0x37, 0x26, 0x40, 0x72, 0x04, 0x39, 0x8a, 0x24, 0x65, + 0x93, 0xe3, 0x91, 0xc4, 0x55, 0xd0, 0x7b, 0xf7, +}; +static const unsigned char kat3150_retbits[] = { + 0x22, 0xe1, 0xce, 0x9b, 0xd3, 0xa8, 0x58, 0xae, 0xf3, 0x0b, 0x06, 0x86, + 0x72, 0xee, 0x66, 0x51, 0x10, 0x39, 0x63, 0x79, 0x4f, 0x37, 0xd6, 0x4c, + 0x1f, 0xa7, 0x63, 0x8c, 0x7c, 0x92, 0x3a, 0x0b, 0x97, 0x58, 0xd1, 0x05, + 0x8a, 0xc5, 0x8a, 0xf9, 0xa1, 0x1b, 0xf1, 0x4b, 0xe6, 0x4e, 0xeb, 0x1e, + 0xc6, 0x63, 0xdf, 0x57, 0x2a, 0xf4, 0xb0, 0xe1, 0xce, 0x02, 0x18, 0xdc, + 0x7c, 0x75, 0x7e, 0xec, +}; +static const struct drbg_kat_pr_true kat3150_t = { + 14, kat3150_entropyin, kat3150_nonce, kat3150_persstr, + kat3150_entropyinpr1, kat3150_addinpr1, kat3150_entropyinpr2, + kat3150_addinpr2, kat3150_retbits +}; +static const struct drbg_kat kat3150 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3150_t +}; + +static const unsigned char kat3151_entropyin[] = { + 0x85, 0x77, 0xcb, 0xf8, 0xbd, 0xaa, 0x31, 0xa1, 0xae, 0x5e, 0x32, 0xea, + 0x09, 0xd0, 0xbe, 0xf7, 0x10, 0xea, 0x74, 0x37, 0xe6, 0x7b, 0x68, 0x25, +}; +static const unsigned char kat3151_nonce[] = { + 0x3f, 0x9b, 0xde, 0xb5, 0x6b, 0x6e, 0x5d, 0x0f, 0xba, 0x56, 0x49, 0x40, + 0x01, 0xfe, 0x30, 0x7e, +}; +static const unsigned char kat3151_persstr[] = { + 0x4b, 0x5c, 0xd4, 0x97, 0xa4, 0x17, 0xa2, 0x98, 0x7d, 0xed, 0xf2, 0x36, + 0xea, 0xff, 0xd2, 0xc3, 0x15, 0xa6, 0x5b, 0x76, 0x1b, 0x2b, 0x68, 0xc3, + 0xf4, 0xb1, 0x9e, 0x40, 0x93, 0xb4, 0xc8, 0xc2, +}; +static const unsigned char kat3151_entropyinpr1[] = { + 0x31, 0xd4, 0xba, 0xaf, 0x6c, 0x27, 0xd9, 0x67, 0xe8, 0xef, 0xc8, 0x54, + 0x79, 0xdb, 0x4d, 0x01, 0x28, 0x55, 0xca, 0x68, 0x0f, 0x87, 0x59, 0x80, +}; +static const unsigned char kat3151_addinpr1[] = {0}; +static const unsigned char kat3151_entropyinpr2[] = { + 0x37, 0x74, 0x91, 0x2d, 0x4c, 0x79, 0xfa, 0xa6, 0xd3, 0xc9, 0x80, 0xa1, + 0x0d, 0xff, 0x18, 0xec, 0xf6, 0xa0, 0x68, 0xe6, 0x83, 0xe1, 0x9b, 0x1f, +}; +static const unsigned char kat3151_addinpr2[] = {0}; +static const unsigned char kat3151_retbits[] = { + 0xa3, 0x91, 0x52, 0x5b, 0x20, 0x34, 0x0e, 0x0f, 0x0f, 0xcc, 0xf0, 0x37, + 0x60, 0xbb, 0x50, 0x95, 0xc2, 0x7a, 0x13, 0x0c, 0x6a, 0x3e, 0x13, 0x4c, + 0x2c, 0x10, 0xd5, 0x9e, 0xfe, 0xc1, 0xa4, 0xa6, 0xcb, 0x75, 0x3f, 0x07, + 0x22, 0xa5, 0x3b, 0x71, 0x69, 0x85, 0x71, 0x2d, 0xb2, 0x92, 0xb8, 0xeb, + 0x8b, 0x03, 0x9c, 0x11, 0xd2, 0x7c, 0x1f, 0xfc, 0x70, 0x9c, 0xa9, 0x9f, + 0x81, 0xb7, 0x96, 0xc5, +}; +static const struct drbg_kat_pr_true kat3151_t = { + 0, kat3151_entropyin, kat3151_nonce, kat3151_persstr, + kat3151_entropyinpr1, kat3151_addinpr1, kat3151_entropyinpr2, + kat3151_addinpr2, kat3151_retbits +}; +static const struct drbg_kat kat3151 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3151_t +}; + +static const unsigned char kat3152_entropyin[] = { + 0x63, 0x1e, 0xdc, 0xa8, 0x7f, 0x0f, 0x7f, 0x1a, 0x13, 0xf1, 0xa3, 0xfc, + 0xab, 0xb2, 0xc6, 0x66, 0x12, 0xda, 0x94, 0x4d, 0x7b, 0x88, 0x1d, 0x76, +}; +static const unsigned char kat3152_nonce[] = { + 0x0b, 0xba, 0x44, 0xa2, 0xf1, 0xde, 0x09, 0x54, 0x05, 0x66, 0x91, 0xb5, + 0x56, 0x57, 0xf3, 0xbf, +}; +static const unsigned char kat3152_persstr[] = { + 0x3a, 0xc5, 0xdc, 0x2d, 0x6a, 0xe2, 0xdd, 0x88, 0xc4, 0x44, 0x14, 0x79, + 0x3f, 0x01, 0xba, 0x33, 0x33, 0x79, 0x03, 0x37, 0x01, 0xec, 0xc7, 0x8a, + 0xf3, 0xa7, 0x93, 0x65, 0xee, 0xf6, 0x20, 0xbf, +}; +static const unsigned char kat3152_entropyinpr1[] = { + 0xfd, 0x04, 0x77, 0x83, 0x3a, 0xdb, 0xc3, 0x2d, 0x04, 0xe2, 0xea, 0x66, + 0x2e, 0xed, 0x88, 0x58, 0xb5, 0xf2, 0xca, 0xd0, 0xb5, 0xc3, 0x89, 0xcc, +}; +static const unsigned char kat3152_addinpr1[] = {0}; +static const unsigned char kat3152_entropyinpr2[] = { + 0x9b, 0x0e, 0x46, 0x39, 0x71, 0x86, 0x21, 0x07, 0x9a, 0xb2, 0x40, 0xfe, + 0xc8, 0x26, 0xde, 0x3e, 0x49, 0x8f, 0x7e, 0xcb, 0x3c, 0x12, 0xb0, 0x00, +}; +static const unsigned char kat3152_addinpr2[] = {0}; +static const unsigned char kat3152_retbits[] = { + 0xa0, 0xf2, 0xde, 0xdb, 0x49, 0x76, 0x73, 0xc4, 0xe3, 0xda, 0x0a, 0x7c, + 0xb2, 0x1b, 0xe0, 0x02, 0x69, 0xbb, 0xe0, 0x37, 0xd7, 0xd6, 0xd7, 0xf4, + 0xad, 0x87, 0xf6, 0xd6, 0x2c, 0xe6, 0x1f, 0x36, 0x5e, 0xdb, 0xec, 0xc3, + 0x6b, 0xed, 0xb8, 0xc3, 0xcd, 0xbd, 0xf8, 0x32, 0x85, 0x7c, 0x5f, 0xd6, + 0xef, 0xd7, 0x0f, 0x1e, 0x6e, 0xc2, 0xe5, 0xd2, 0xda, 0xc2, 0x5b, 0x01, + 0xb6, 0x7e, 0xdc, 0x15, +}; +static const struct drbg_kat_pr_true kat3152_t = { + 1, kat3152_entropyin, kat3152_nonce, kat3152_persstr, + kat3152_entropyinpr1, kat3152_addinpr1, kat3152_entropyinpr2, + kat3152_addinpr2, kat3152_retbits +}; +static const struct drbg_kat kat3152 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3152_t +}; + +static const unsigned char kat3153_entropyin[] = { + 0x42, 0xe3, 0x9a, 0xb9, 0x8f, 0x36, 0x8b, 0xd2, 0xfc, 0x9d, 0xa9, 0xff, + 0x93, 0x56, 0xde, 0xe1, 0x71, 0x8f, 0xd2, 0x72, 0xd7, 0xf1, 0xce, 0xc3, +}; +static const unsigned char kat3153_nonce[] = { + 0x80, 0xa2, 0x8d, 0x7b, 0x28, 0xd2, 0xb7, 0xca, 0xd5, 0x96, 0xdd, 0xe7, + 0x31, 0x9b, 0x72, 0x81, +}; +static const unsigned char kat3153_persstr[] = { + 0xb1, 0x9e, 0x3d, 0x3b, 0x5b, 0xaf, 0x80, 0x77, 0xc6, 0x21, 0x39, 0xd9, + 0x5f, 0x66, 0xa8, 0x66, 0x22, 0xb1, 0xa1, 0x53, 0xf3, 0x7b, 0x77, 0xb0, + 0x5b, 0x50, 0x93, 0x0f, 0xf7, 0xa0, 0x0e, 0xcc, +}; +static const unsigned char kat3153_entropyinpr1[] = { + 0x3a, 0xa0, 0xb5, 0x75, 0x27, 0x4a, 0x4e, 0x9d, 0xc1, 0x64, 0x2d, 0xc8, + 0x67, 0xef, 0x31, 0x6b, 0xe8, 0x00, 0x07, 0x89, 0x72, 0x86, 0x28, 0xeb, +}; +static const unsigned char kat3153_addinpr1[] = {0}; +static const unsigned char kat3153_entropyinpr2[] = { + 0x72, 0x88, 0xf8, 0xb6, 0xb0, 0xc1, 0xd3, 0xcd, 0x02, 0x0d, 0x1a, 0x13, + 0x34, 0xbb, 0x09, 0x38, 0xaf, 0xce, 0x11, 0xb2, 0xd7, 0x7b, 0xc9, 0x96, +}; +static const unsigned char kat3153_addinpr2[] = {0}; +static const unsigned char kat3153_retbits[] = { + 0x12, 0x8f, 0x86, 0x53, 0xfc, 0x4d, 0xf7, 0x8c, 0x0d, 0x4a, 0x73, 0x96, + 0x32, 0x73, 0xfa, 0x52, 0xa6, 0x05, 0xe6, 0xd7, 0x3f, 0xe8, 0x91, 0xd4, + 0x94, 0x1f, 0xfb, 0x0d, 0x5c, 0x79, 0x9a, 0xab, 0x9b, 0x68, 0x77, 0x26, + 0x4c, 0xf9, 0xc0, 0xce, 0xf0, 0x78, 0xc3, 0xf9, 0x84, 0xa3, 0x80, 0x8d, + 0xca, 0x42, 0x3c, 0xce, 0xa4, 0x31, 0x60, 0x60, 0x0c, 0xa2, 0x4c, 0xed, + 0x56, 0x91, 0xc7, 0x84, +}; +static const struct drbg_kat_pr_true kat3153_t = { + 2, kat3153_entropyin, kat3153_nonce, kat3153_persstr, + kat3153_entropyinpr1, kat3153_addinpr1, kat3153_entropyinpr2, + kat3153_addinpr2, kat3153_retbits +}; +static const struct drbg_kat kat3153 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3153_t +}; + +static const unsigned char kat3154_entropyin[] = { + 0x35, 0xe1, 0x14, 0x4e, 0x6f, 0x14, 0xdb, 0xbb, 0x8e, 0x8f, 0x6e, 0x9f, + 0x63, 0x4e, 0xbd, 0xd3, 0x26, 0x42, 0xfb, 0xcb, 0x60, 0xe8, 0xd6, 0x6e, +}; +static const unsigned char kat3154_nonce[] = { + 0x95, 0xe6, 0xd0, 0x42, 0x7f, 0x29, 0x35, 0x69, 0x11, 0x03, 0xf6, 0x0b, + 0x6e, 0xad, 0xa8, 0x0d, +}; +static const unsigned char kat3154_persstr[] = { + 0x60, 0x1a, 0xc6, 0x65, 0xd1, 0x0d, 0x79, 0xec, 0x7c, 0xd3, 0x14, 0x40, + 0xc8, 0x2c, 0x35, 0x44, 0x36, 0x3f, 0xc5, 0xd1, 0x51, 0x51, 0x25, 0x6b, + 0x4e, 0xae, 0xdf, 0xf8, 0x63, 0x70, 0x95, 0xf3, +}; +static const unsigned char kat3154_entropyinpr1[] = { + 0x78, 0xa0, 0x20, 0x2b, 0x12, 0x07, 0x7e, 0x05, 0x9b, 0xd8, 0x5c, 0x58, + 0x38, 0x94, 0xfd, 0x50, 0xf1, 0xd0, 0xc8, 0x75, 0xce, 0x1a, 0x5e, 0x03, +}; +static const unsigned char kat3154_addinpr1[] = {0}; +static const unsigned char kat3154_entropyinpr2[] = { + 0x91, 0x60, 0x4e, 0xf1, 0x77, 0x20, 0x1b, 0x01, 0x55, 0x47, 0xbe, 0xfd, + 0xf6, 0xf2, 0xe8, 0xe7, 0xe9, 0xdf, 0xad, 0x46, 0x08, 0x62, 0x71, 0x5e, +}; +static const unsigned char kat3154_addinpr2[] = {0}; +static const unsigned char kat3154_retbits[] = { + 0x0d, 0x70, 0xef, 0x58, 0x3a, 0x6c, 0xff, 0x74, 0x73, 0x93, 0x70, 0x37, + 0x08, 0x9a, 0x6e, 0xa2, 0x06, 0x03, 0x36, 0xd7, 0xc4, 0x89, 0x90, 0x8b, + 0xb6, 0x6d, 0xb0, 0xbf, 0xd5, 0x89, 0x58, 0x15, 0x07, 0x27, 0x71, 0x29, + 0xbd, 0x12, 0x86, 0x71, 0xcb, 0x92, 0x8b, 0x5d, 0xb7, 0x76, 0x3d, 0x0c, + 0x9f, 0x77, 0xeb, 0x49, 0xd3, 0xfa, 0x3f, 0xef, 0xbc, 0x70, 0xd3, 0x0d, + 0xeb, 0x5f, 0xf5, 0x83, +}; +static const struct drbg_kat_pr_true kat3154_t = { + 3, kat3154_entropyin, kat3154_nonce, kat3154_persstr, + kat3154_entropyinpr1, kat3154_addinpr1, kat3154_entropyinpr2, + kat3154_addinpr2, kat3154_retbits +}; +static const struct drbg_kat kat3154 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3154_t +}; + +static const unsigned char kat3155_entropyin[] = { + 0xf0, 0xed, 0x69, 0x95, 0x2a, 0x86, 0x64, 0x57, 0xec, 0x0f, 0x4d, 0x07, + 0x54, 0xf1, 0x94, 0x10, 0x1d, 0xfb, 0xff, 0xa0, 0x9f, 0x83, 0x64, 0x8a, +}; +static const unsigned char kat3155_nonce[] = { + 0xf6, 0x46, 0x8d, 0x45, 0x89, 0x86, 0x36, 0x12, 0x3a, 0xe3, 0x41, 0x2b, + 0x61, 0x40, 0x9e, 0xad, +}; +static const unsigned char kat3155_persstr[] = { + 0x3b, 0x58, 0xb5, 0xac, 0x95, 0xd8, 0x1b, 0xad, 0x39, 0xcf, 0x14, 0x78, + 0x92, 0x0d, 0xa5, 0x01, 0xb6, 0x27, 0x68, 0x54, 0xca, 0x8f, 0x66, 0x83, + 0xae, 0x40, 0x0f, 0x56, 0x72, 0xe1, 0xbd, 0x21, +}; +static const unsigned char kat3155_entropyinpr1[] = { + 0xe6, 0x9e, 0xda, 0x2f, 0xf1, 0x12, 0xfe, 0xab, 0x3e, 0xc4, 0x31, 0xcd, + 0x1f, 0xfe, 0x82, 0x38, 0xa2, 0x89, 0xd2, 0xb5, 0x21, 0x53, 0x98, 0x55, +}; +static const unsigned char kat3155_addinpr1[] = {0}; +static const unsigned char kat3155_entropyinpr2[] = { + 0x0a, 0x02, 0x4c, 0xe7, 0xe6, 0xb4, 0x31, 0x80, 0x77, 0x9d, 0xdf, 0x09, + 0x67, 0x40, 0xd4, 0xd4, 0x0d, 0x79, 0x44, 0x7c, 0xf9, 0xe6, 0xd8, 0xcb, +}; +static const unsigned char kat3155_addinpr2[] = {0}; +static const unsigned char kat3155_retbits[] = { + 0x64, 0x1c, 0xc7, 0xa7, 0x60, 0x6d, 0x1d, 0xf8, 0xc1, 0x47, 0xc7, 0x8d, + 0x08, 0x42, 0x06, 0x3a, 0x60, 0xd9, 0x3b, 0x6b, 0x07, 0x13, 0xbd, 0xff, + 0xfe, 0xdb, 0x11, 0x04, 0xc1, 0xe2, 0xd8, 0x25, 0x13, 0x61, 0x80, 0xf5, + 0xc2, 0xa7, 0x2c, 0xf5, 0xf3, 0x45, 0xbd, 0x79, 0x0b, 0xde, 0xa1, 0xd1, + 0x57, 0x36, 0x4c, 0x8a, 0xab, 0x5a, 0x88, 0xa9, 0x49, 0xbd, 0x4d, 0x97, + 0xd3, 0x64, 0xd8, 0x0f, +}; +static const struct drbg_kat_pr_true kat3155_t = { + 4, kat3155_entropyin, kat3155_nonce, kat3155_persstr, + kat3155_entropyinpr1, kat3155_addinpr1, kat3155_entropyinpr2, + kat3155_addinpr2, kat3155_retbits +}; +static const struct drbg_kat kat3155 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3155_t +}; + +static const unsigned char kat3156_entropyin[] = { + 0x58, 0x0d, 0x3c, 0xc4, 0x4c, 0xa4, 0xb7, 0x22, 0xd8, 0xe3, 0xf8, 0x30, + 0x66, 0xb8, 0x62, 0x0f, 0x24, 0xaf, 0x31, 0x59, 0x7b, 0x3a, 0xfb, 0xa7, +}; +static const unsigned char kat3156_nonce[] = { + 0xca, 0x1e, 0xa0, 0xdb, 0xeb, 0x9c, 0x9e, 0x15, 0xdd, 0xb2, 0x7a, 0x50, + 0x9e, 0xe6, 0xb2, 0x08, +}; +static const unsigned char kat3156_persstr[] = { + 0x5b, 0x13, 0xba, 0xc6, 0xda, 0xe5, 0x71, 0x8b, 0xf0, 0x63, 0xcd, 0x3d, + 0x81, 0xc8, 0x8b, 0x5e, 0x85, 0x71, 0x8c, 0x36, 0x36, 0x13, 0x39, 0xf2, + 0x0d, 0xfc, 0x4b, 0xb1, 0x7f, 0xfa, 0x91, 0x4f, +}; +static const unsigned char kat3156_entropyinpr1[] = { + 0xda, 0x6f, 0xda, 0x3e, 0xe2, 0x82, 0x99, 0xe7, 0xcd, 0xf4, 0xee, 0xa6, + 0xd1, 0xd4, 0x30, 0x59, 0xac, 0x7a, 0x8b, 0xb4, 0x94, 0xfc, 0x37, 0xb7, +}; +static const unsigned char kat3156_addinpr1[] = {0}; +static const unsigned char kat3156_entropyinpr2[] = { + 0x3b, 0x78, 0xc7, 0x65, 0xbf, 0x55, 0x73, 0xed, 0x7b, 0x1c, 0xe9, 0x9c, + 0xe8, 0x05, 0xa1, 0x3e, 0xf5, 0xe3, 0x0b, 0x2d, 0x09, 0x49, 0x79, 0xf9, +}; +static const unsigned char kat3156_addinpr2[] = {0}; +static const unsigned char kat3156_retbits[] = { + 0xcb, 0x7e, 0x9f, 0x67, 0xec, 0xc9, 0xc5, 0xbf, 0x01, 0xd7, 0x80, 0xf6, + 0xf1, 0x8a, 0x34, 0xdb, 0x2d, 0xba, 0x7f, 0x7c, 0x41, 0xb9, 0xbb, 0xb5, + 0xe5, 0xd8, 0x26, 0x6a, 0x60, 0xf8, 0x2b, 0x97, 0x57, 0xe7, 0x94, 0x34, + 0xfe, 0x74, 0xca, 0x0c, 0x1d, 0x84, 0x80, 0x1e, 0xcd, 0xc0, 0x97, 0x7f, + 0x6e, 0x25, 0x5f, 0x22, 0xa9, 0x21, 0x72, 0xa8, 0x62, 0x8b, 0x1b, 0x0c, + 0x10, 0xdd, 0x1b, 0xd9, +}; +static const struct drbg_kat_pr_true kat3156_t = { + 5, kat3156_entropyin, kat3156_nonce, kat3156_persstr, + kat3156_entropyinpr1, kat3156_addinpr1, kat3156_entropyinpr2, + kat3156_addinpr2, kat3156_retbits +}; +static const struct drbg_kat kat3156 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3156_t +}; + +static const unsigned char kat3157_entropyin[] = { + 0x9e, 0x89, 0x32, 0xb9, 0xe0, 0x2e, 0xa1, 0x92, 0x7a, 0xf8, 0xca, 0xb7, + 0x34, 0x7d, 0x6f, 0x6e, 0x82, 0xfc, 0x0e, 0xbc, 0x26, 0x71, 0x61, 0xf5, +}; +static const unsigned char kat3157_nonce[] = { + 0xd3, 0x3d, 0xd3, 0x6f, 0xc5, 0x58, 0x8c, 0x28, 0x5a, 0x29, 0x35, 0x75, + 0xdb, 0x2f, 0xcd, 0x33, +}; +static const unsigned char kat3157_persstr[] = { + 0xb0, 0x65, 0xdc, 0x51, 0x1b, 0x6e, 0x1c, 0xc6, 0x8e, 0x04, 0x79, 0x30, + 0xe4, 0xea, 0x2f, 0xc8, 0x6a, 0x31, 0x11, 0x57, 0x7e, 0xe0, 0x51, 0x71, + 0x8d, 0x8b, 0xd0, 0x58, 0x81, 0xf1, 0x46, 0xbf, +}; +static const unsigned char kat3157_entropyinpr1[] = { + 0xa3, 0xd3, 0x40, 0xa8, 0x64, 0xbb, 0x16, 0x19, 0x3c, 0x1d, 0x2e, 0x4b, + 0xe4, 0x63, 0xf5, 0xee, 0xb8, 0x08, 0x9b, 0x70, 0x9a, 0xc6, 0x8b, 0xd3, +}; +static const unsigned char kat3157_addinpr1[] = {0}; +static const unsigned char kat3157_entropyinpr2[] = { + 0xc2, 0x38, 0xbc, 0xb1, 0x97, 0x19, 0x88, 0x09, 0xda, 0x03, 0x46, 0x4e, + 0xfd, 0xe1, 0xdd, 0xa1, 0x53, 0x4b, 0x21, 0x57, 0x19, 0x85, 0xa4, 0x4e, +}; +static const unsigned char kat3157_addinpr2[] = {0}; +static const unsigned char kat3157_retbits[] = { + 0x62, 0xdd, 0x89, 0xe4, 0xda, 0xb9, 0x23, 0x4f, 0xff, 0xbe, 0xaa, 0x6d, + 0x60, 0x6e, 0xb1, 0x2a, 0x27, 0x24, 0x7e, 0x88, 0xdb, 0xe6, 0x70, 0x48, + 0xdd, 0xa1, 0x57, 0xe5, 0x43, 0x4a, 0xce, 0xad, 0xe4, 0xc2, 0xcd, 0x72, + 0x00, 0xd2, 0x7f, 0xd6, 0x33, 0x34, 0xbf, 0x7e, 0xc2, 0x83, 0x84, 0xe8, + 0xee, 0xbf, 0xea, 0xce, 0x5c, 0x06, 0xe6, 0x26, 0x01, 0x8a, 0xa3, 0x5d, + 0x64, 0xce, 0x90, 0xc6, +}; +static const struct drbg_kat_pr_true kat3157_t = { + 6, kat3157_entropyin, kat3157_nonce, kat3157_persstr, + kat3157_entropyinpr1, kat3157_addinpr1, kat3157_entropyinpr2, + kat3157_addinpr2, kat3157_retbits +}; +static const struct drbg_kat kat3157 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3157_t +}; + +static const unsigned char kat3158_entropyin[] = { + 0x30, 0x77, 0xf7, 0x2e, 0xf5, 0x82, 0x77, 0x4d, 0xf1, 0xb1, 0x64, 0x63, + 0x1c, 0xb1, 0x2e, 0x0e, 0x12, 0xae, 0x0d, 0x6b, 0xc1, 0xc6, 0x85, 0x04, +}; +static const unsigned char kat3158_nonce[] = { + 0x6c, 0x75, 0x0f, 0xcb, 0x3c, 0xb7, 0xae, 0xa5, 0xfe, 0x3c, 0xb2, 0xd2, + 0xd2, 0x25, 0x0f, 0x30, +}; +static const unsigned char kat3158_persstr[] = { + 0x5d, 0x39, 0x28, 0x2e, 0xcd, 0x47, 0x8c, 0x7f, 0xfd, 0xa5, 0x7e, 0x06, + 0x96, 0x57, 0xa3, 0x19, 0xfc, 0x17, 0xb9, 0xef, 0x6c, 0xdc, 0x97, 0xce, + 0x8b, 0x0c, 0x95, 0x01, 0x4c, 0xe5, 0xee, 0x40, +}; +static const unsigned char kat3158_entropyinpr1[] = { + 0x07, 0x8b, 0xff, 0x85, 0xe8, 0xd7, 0x09, 0x60, 0xec, 0x59, 0x37, 0x98, + 0xf7, 0xc0, 0x2b, 0xee, 0x4f, 0xe0, 0x63, 0xa6, 0xfc, 0x12, 0xbb, 0xf2, +}; +static const unsigned char kat3158_addinpr1[] = {0}; +static const unsigned char kat3158_entropyinpr2[] = { + 0xcf, 0xf2, 0xf9, 0xcf, 0x0d, 0xad, 0x17, 0x32, 0x27, 0xaf, 0x8f, 0xc4, + 0xca, 0x71, 0xec, 0xe1, 0xdb, 0x5f, 0x66, 0x52, 0x87, 0x19, 0x85, 0xb7, +}; +static const unsigned char kat3158_addinpr2[] = {0}; +static const unsigned char kat3158_retbits[] = { + 0xf8, 0xb5, 0x5d, 0x0b, 0x76, 0xce, 0x33, 0xfd, 0xce, 0x49, 0x5a, 0xab, + 0x1f, 0x1b, 0x28, 0xe8, 0xd0, 0x2a, 0xe1, 0x0d, 0x3d, 0x66, 0x82, 0xf8, + 0x44, 0xef, 0xb9, 0xa2, 0xda, 0x62, 0x59, 0xb3, 0x01, 0x1f, 0x82, 0xd0, + 0x4f, 0x33, 0xda, 0x53, 0x7e, 0x29, 0xa9, 0xa7, 0x13, 0x58, 0x6f, 0xb9, + 0xe9, 0x9d, 0x9e, 0x22, 0x0f, 0x87, 0xf7, 0xb0, 0xd5, 0x0e, 0x5c, 0x78, + 0xc9, 0x12, 0x0b, 0x9a, +}; +static const struct drbg_kat_pr_true kat3158_t = { + 7, kat3158_entropyin, kat3158_nonce, kat3158_persstr, + kat3158_entropyinpr1, kat3158_addinpr1, kat3158_entropyinpr2, + kat3158_addinpr2, kat3158_retbits +}; +static const struct drbg_kat kat3158 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3158_t +}; + +static const unsigned char kat3159_entropyin[] = { + 0x36, 0x70, 0x2c, 0x7b, 0x79, 0x44, 0xd5, 0xf1, 0x4a, 0x2c, 0x81, 0x41, + 0x00, 0x4d, 0x7f, 0x96, 0x50, 0xff, 0x82, 0xc3, 0xd3, 0x03, 0x0c, 0x89, +}; +static const unsigned char kat3159_nonce[] = { + 0x24, 0x77, 0x3e, 0xf4, 0x4a, 0xbf, 0x07, 0xab, 0x1c, 0x92, 0x3a, 0xe3, + 0xde, 0x47, 0x84, 0x90, +}; +static const unsigned char kat3159_persstr[] = { + 0x02, 0x1d, 0x48, 0x18, 0xd5, 0xb1, 0x71, 0x7f, 0xa6, 0xd0, 0x8e, 0xc6, + 0x7f, 0x77, 0xec, 0xb0, 0xe6, 0xf4, 0x6c, 0x42, 0xc0, 0x32, 0x80, 0xa2, + 0xd8, 0x57, 0x68, 0x1c, 0xbf, 0x6a, 0xd3, 0x56, +}; +static const unsigned char kat3159_entropyinpr1[] = { + 0xa1, 0x56, 0x10, 0xd6, 0xf3, 0xa7, 0x1c, 0x2e, 0x70, 0x73, 0x68, 0x99, + 0x50, 0x3e, 0xa6, 0x2f, 0xea, 0x2b, 0x78, 0xeb, 0x64, 0x9d, 0xc4, 0xa0, +}; +static const unsigned char kat3159_addinpr1[] = {0}; +static const unsigned char kat3159_entropyinpr2[] = { + 0xb6, 0xdc, 0x27, 0x0c, 0xc1, 0xca, 0x29, 0xc0, 0xff, 0xb6, 0x87, 0x99, + 0xaa, 0x36, 0x05, 0x0f, 0x38, 0xd9, 0xf9, 0x4c, 0x65, 0xe3, 0x24, 0x7a, +}; +static const unsigned char kat3159_addinpr2[] = {0}; +static const unsigned char kat3159_retbits[] = { + 0x68, 0xc2, 0x1f, 0xa9, 0x0b, 0x85, 0x95, 0x63, 0x61, 0xae, 0x9a, 0xc6, + 0xdf, 0xbc, 0xae, 0xc0, 0x22, 0x12, 0x1a, 0x45, 0xa5, 0x68, 0x61, 0x90, + 0x49, 0x6b, 0x98, 0x36, 0xed, 0xdd, 0x8e, 0xcd, 0x8b, 0xfb, 0xe0, 0xab, + 0x68, 0xb1, 0x2b, 0xee, 0x0e, 0x5b, 0x2c, 0x4d, 0x08, 0xaf, 0x57, 0xf2, + 0xbe, 0x97, 0xf8, 0x12, 0xe1, 0x97, 0xb2, 0xb0, 0xcc, 0x05, 0x8c, 0x56, + 0x29, 0x66, 0x0c, 0x9e, +}; +static const struct drbg_kat_pr_true kat3159_t = { + 8, kat3159_entropyin, kat3159_nonce, kat3159_persstr, + kat3159_entropyinpr1, kat3159_addinpr1, kat3159_entropyinpr2, + kat3159_addinpr2, kat3159_retbits +}; +static const struct drbg_kat kat3159 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3159_t +}; + +static const unsigned char kat3160_entropyin[] = { + 0x9a, 0x29, 0x52, 0xe4, 0xdc, 0xd6, 0x89, 0x29, 0xea, 0x72, 0xad, 0x0e, + 0xc6, 0x1f, 0x4d, 0xe1, 0x86, 0xd6, 0x3e, 0xd3, 0x72, 0xc6, 0xce, 0x3b, +}; +static const unsigned char kat3160_nonce[] = { + 0x16, 0x9d, 0x88, 0x1e, 0xaa, 0x5c, 0xfc, 0xec, 0xf1, 0x1f, 0x0d, 0x46, + 0xf7, 0x7b, 0x8c, 0x2a, +}; +static const unsigned char kat3160_persstr[] = { + 0xd1, 0x9f, 0x78, 0x0c, 0x95, 0xbf, 0xa5, 0x8c, 0x41, 0x06, 0xb9, 0x77, + 0x36, 0x29, 0x2d, 0x83, 0x39, 0x9d, 0x5d, 0x6c, 0x13, 0x3b, 0x9a, 0x45, + 0xa4, 0xf7, 0x0f, 0x44, 0x92, 0x79, 0xea, 0x52, +}; +static const unsigned char kat3160_entropyinpr1[] = { + 0xce, 0xeb, 0xf0, 0x72, 0xcb, 0xd7, 0x2a, 0x0b, 0x5c, 0x78, 0x44, 0x00, + 0xa6, 0x8a, 0x90, 0x71, 0xb4, 0x11, 0x20, 0x0a, 0x9c, 0x39, 0x13, 0x0a, +}; +static const unsigned char kat3160_addinpr1[] = {0}; +static const unsigned char kat3160_entropyinpr2[] = { + 0x48, 0x00, 0x52, 0xba, 0xb4, 0x7b, 0xe0, 0x91, 0x50, 0xe4, 0x88, 0xb9, + 0x8d, 0x61, 0xea, 0x9b, 0xee, 0x55, 0xc4, 0x50, 0xa1, 0x6b, 0x88, 0x40, +}; +static const unsigned char kat3160_addinpr2[] = {0}; +static const unsigned char kat3160_retbits[] = { + 0x61, 0x88, 0xd6, 0xbd, 0x14, 0x57, 0x8b, 0xb1, 0xfe, 0x75, 0xbd, 0x19, + 0x6e, 0x91, 0x2f, 0x02, 0x16, 0x06, 0xc9, 0x8c, 0x01, 0x19, 0x25, 0x9f, + 0xdc, 0x84, 0xe3, 0x60, 0xdd, 0x18, 0x1b, 0x2b, 0xd2, 0x61, 0x60, 0xc7, + 0x84, 0x1c, 0x80, 0xa2, 0x76, 0x6a, 0x0c, 0xf0, 0x6f, 0xcc, 0xc6, 0x9e, + 0xd1, 0xe3, 0x4a, 0xf3, 0xe3, 0x42, 0x70, 0x85, 0x76, 0xf2, 0xb2, 0x81, + 0x02, 0xf0, 0x81, 0xf0, +}; +static const struct drbg_kat_pr_true kat3160_t = { + 9, kat3160_entropyin, kat3160_nonce, kat3160_persstr, + kat3160_entropyinpr1, kat3160_addinpr1, kat3160_entropyinpr2, + kat3160_addinpr2, kat3160_retbits +}; +static const struct drbg_kat kat3160 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3160_t +}; + +static const unsigned char kat3161_entropyin[] = { + 0x3e, 0x8c, 0x45, 0xe0, 0x4c, 0x62, 0x36, 0x7f, 0xeb, 0xa4, 0xd1, 0xed, + 0xdd, 0xaf, 0xe5, 0x33, 0xd7, 0xac, 0xc3, 0x4f, 0xc3, 0xcb, 0xc4, 0x99, +}; +static const unsigned char kat3161_nonce[] = { + 0x3a, 0xca, 0x2c, 0xa6, 0x97, 0x0e, 0x00, 0xea, 0xce, 0x90, 0xda, 0x41, + 0x37, 0x1c, 0x0f, 0x78, +}; +static const unsigned char kat3161_persstr[] = { + 0x95, 0x16, 0xf4, 0xc3, 0x83, 0xd4, 0x55, 0x1c, 0x71, 0x9c, 0x8a, 0x0f, + 0xe4, 0xb0, 0x4e, 0xe1, 0x17, 0x40, 0x1e, 0xe2, 0x74, 0x6f, 0xae, 0x80, + 0xed, 0x3d, 0x5a, 0xd3, 0x81, 0xf2, 0xc2, 0x14, +}; +static const unsigned char kat3161_entropyinpr1[] = { + 0xc8, 0x5b, 0xee, 0x8b, 0x48, 0x0a, 0xe6, 0xde, 0xbf, 0xdb, 0xd3, 0x93, + 0xb0, 0x48, 0xdf, 0x8c, 0x47, 0x29, 0xe1, 0xd4, 0x77, 0x4c, 0x52, 0x35, +}; +static const unsigned char kat3161_addinpr1[] = {0}; +static const unsigned char kat3161_entropyinpr2[] = { + 0x5a, 0x6a, 0x0d, 0x2b, 0xab, 0x63, 0xf9, 0x8f, 0xe4, 0x26, 0x04, 0xcb, + 0xe7, 0xb5, 0x0a, 0x44, 0x3c, 0x0c, 0xd0, 0x83, 0xf6, 0xd9, 0x92, 0x9e, +}; +static const unsigned char kat3161_addinpr2[] = {0}; +static const unsigned char kat3161_retbits[] = { + 0x5b, 0x17, 0x2d, 0xa2, 0x61, 0x37, 0x0f, 0xa0, 0xde, 0xb4, 0xdb, 0x52, + 0x1b, 0x56, 0xf3, 0xe2, 0xf0, 0xd6, 0x89, 0x6a, 0x68, 0x71, 0xcc, 0xeb, + 0x7d, 0xdb, 0xb4, 0xa6, 0x9d, 0xea, 0x55, 0x2e, 0x9d, 0xda, 0xf7, 0x57, + 0x22, 0x5b, 0x19, 0x81, 0xf6, 0x9b, 0x1d, 0xfa, 0x62, 0x54, 0xf3, 0x53, + 0xdf, 0x4f, 0x7d, 0x05, 0xb8, 0x5c, 0x60, 0x7b, 0x4a, 0x9d, 0xf0, 0x51, + 0x1d, 0x06, 0x44, 0xeb, +}; +static const struct drbg_kat_pr_true kat3161_t = { + 10, kat3161_entropyin, kat3161_nonce, kat3161_persstr, + kat3161_entropyinpr1, kat3161_addinpr1, kat3161_entropyinpr2, + kat3161_addinpr2, kat3161_retbits +}; +static const struct drbg_kat kat3161 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3161_t +}; + +static const unsigned char kat3162_entropyin[] = { + 0x09, 0x0f, 0x64, 0x0a, 0x9b, 0x0d, 0x3e, 0x62, 0x48, 0x11, 0xab, 0x26, + 0x30, 0xed, 0xd8, 0xc1, 0x0c, 0xa4, 0x78, 0xfd, 0x1b, 0xfc, 0x5f, 0xe3, +}; +static const unsigned char kat3162_nonce[] = { + 0xa9, 0x42, 0x4c, 0xba, 0x21, 0xd2, 0xa2, 0x65, 0x76, 0xf8, 0x7d, 0xf7, + 0x5b, 0xfc, 0xd5, 0x61, +}; +static const unsigned char kat3162_persstr[] = { + 0xd9, 0xfe, 0x77, 0x14, 0x7a, 0x81, 0x0b, 0x26, 0xef, 0xb9, 0xc4, 0x74, + 0xc8, 0xfb, 0xd7, 0x67, 0x9f, 0x7d, 0xc5, 0x35, 0x0e, 0x77, 0xc7, 0x2d, + 0x89, 0x08, 0x3e, 0x33, 0x18, 0x98, 0xdf, 0x22, +}; +static const unsigned char kat3162_entropyinpr1[] = { + 0xac, 0x25, 0xdf, 0xe0, 0x6d, 0x14, 0x31, 0x67, 0x59, 0x0b, 0xfa, 0x76, + 0x21, 0x15, 0x4f, 0x15, 0xd7, 0x32, 0xcb, 0xb2, 0x7b, 0x3a, 0xc6, 0x3d, +}; +static const unsigned char kat3162_addinpr1[] = {0}; +static const unsigned char kat3162_entropyinpr2[] = { + 0x45, 0xe2, 0x31, 0x4a, 0xbe, 0xea, 0xee, 0xfa, 0x30, 0x61, 0x28, 0x59, + 0x8b, 0xf7, 0xa5, 0xe1, 0x81, 0x73, 0xa0, 0x3c, 0xc7, 0x3a, 0x08, 0x1c, +}; +static const unsigned char kat3162_addinpr2[] = {0}; +static const unsigned char kat3162_retbits[] = { + 0x78, 0xec, 0xea, 0x0a, 0x35, 0xee, 0x35, 0x3b, 0xb6, 0x79, 0xd9, 0x47, + 0x4c, 0xd6, 0xdb, 0x7e, 0xb8, 0xd0, 0x1d, 0x1a, 0x91, 0x1b, 0xa8, 0xd1, + 0x1e, 0x01, 0xc4, 0x7f, 0xe2, 0x95, 0xe1, 0x61, 0xda, 0x59, 0xce, 0x4c, + 0xc1, 0xca, 0x48, 0xde, 0x88, 0x93, 0x01, 0x04, 0x8d, 0xe5, 0x01, 0x82, + 0x7d, 0x0f, 0xc6, 0xe9, 0x31, 0x07, 0x15, 0x62, 0xb8, 0x57, 0xc7, 0x34, + 0xa5, 0xf8, 0xde, 0xe4, +}; +static const struct drbg_kat_pr_true kat3162_t = { + 11, kat3162_entropyin, kat3162_nonce, kat3162_persstr, + kat3162_entropyinpr1, kat3162_addinpr1, kat3162_entropyinpr2, + kat3162_addinpr2, kat3162_retbits +}; +static const struct drbg_kat kat3162 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3162_t +}; + +static const unsigned char kat3163_entropyin[] = { + 0xb9, 0x87, 0x40, 0x54, 0x7d, 0xff, 0x13, 0x97, 0x15, 0x1c, 0x16, 0x5f, + 0x37, 0x28, 0x49, 0xf1, 0x17, 0x75, 0x69, 0x65, 0xac, 0x75, 0x28, 0x10, +}; +static const unsigned char kat3163_nonce[] = { + 0x94, 0xab, 0xae, 0x19, 0xd3, 0x6c, 0x2d, 0x83, 0x80, 0x1f, 0x06, 0x0f, + 0x39, 0x2d, 0x70, 0x72, +}; +static const unsigned char kat3163_persstr[] = { + 0xbf, 0x82, 0x6e, 0x1e, 0xfc, 0x49, 0x72, 0x21, 0x17, 0x09, 0x47, 0xee, + 0xda, 0x1c, 0x1b, 0x3b, 0x91, 0xaa, 0x31, 0x8d, 0x9e, 0x5c, 0xfc, 0x29, + 0x22, 0x6b, 0x2b, 0xe2, 0xd7, 0x4e, 0x5f, 0x29, +}; +static const unsigned char kat3163_entropyinpr1[] = { + 0xeb, 0x43, 0xb1, 0x51, 0x5c, 0xc6, 0x1a, 0xe2, 0xf7, 0x0a, 0xb1, 0xed, + 0x71, 0xef, 0x62, 0x2a, 0xba, 0x9c, 0x8a, 0x97, 0x7d, 0x0a, 0x02, 0xc3, +}; +static const unsigned char kat3163_addinpr1[] = {0}; +static const unsigned char kat3163_entropyinpr2[] = { + 0x39, 0x3c, 0xdf, 0x4d, 0xc8, 0x3c, 0x36, 0xe9, 0xd7, 0xd0, 0x48, 0x7a, + 0x16, 0xd4, 0x2d, 0x76, 0xfc, 0x8b, 0xe5, 0xf4, 0x1c, 0xf9, 0x85, 0x57, +}; +static const unsigned char kat3163_addinpr2[] = {0}; +static const unsigned char kat3163_retbits[] = { + 0x62, 0xd7, 0xff, 0xc0, 0xba, 0x63, 0x26, 0x0b, 0x05, 0x3d, 0x45, 0xc6, + 0xce, 0x50, 0xb1, 0x1e, 0xca, 0x61, 0x43, 0x84, 0xb5, 0xb5, 0x74, 0x6b, + 0x77, 0xcf, 0x42, 0xa9, 0x38, 0xb0, 0x3a, 0xa8, 0xd5, 0xf1, 0x83, 0xd6, + 0xc0, 0xf8, 0x15, 0x14, 0x9c, 0x98, 0xa5, 0xc8, 0x51, 0xe3, 0xa3, 0x60, + 0x25, 0xf4, 0xbf, 0x64, 0x00, 0xce, 0xab, 0x92, 0x04, 0x95, 0x5d, 0xdb, + 0xeb, 0xe1, 0x3e, 0xd4, +}; +static const struct drbg_kat_pr_true kat3163_t = { + 12, kat3163_entropyin, kat3163_nonce, kat3163_persstr, + kat3163_entropyinpr1, kat3163_addinpr1, kat3163_entropyinpr2, + kat3163_addinpr2, kat3163_retbits +}; +static const struct drbg_kat kat3163 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3163_t +}; + +static const unsigned char kat3164_entropyin[] = { + 0x36, 0x4f, 0xb7, 0xde, 0x5e, 0x00, 0x73, 0xca, 0x1f, 0x49, 0x36, 0x85, + 0x2a, 0x08, 0x34, 0x9e, 0x0b, 0x78, 0x54, 0xc5, 0xc9, 0x10, 0x63, 0x04, +}; +static const unsigned char kat3164_nonce[] = { + 0x1c, 0x46, 0x2b, 0xbb, 0x27, 0x96, 0xa5, 0xb6, 0x6b, 0x1c, 0xa9, 0xf6, + 0xd5, 0xfc, 0x68, 0xd2, +}; +static const unsigned char kat3164_persstr[] = { + 0x84, 0x66, 0x01, 0xe3, 0xec, 0x64, 0x27, 0x50, 0xad, 0xc5, 0x43, 0xbe, + 0x6a, 0x5d, 0x56, 0x74, 0x17, 0x18, 0xed, 0xc3, 0x74, 0x0c, 0xdb, 0xc3, + 0x54, 0x59, 0xa8, 0xc7, 0xe8, 0x8b, 0x62, 0x88, +}; +static const unsigned char kat3164_entropyinpr1[] = { + 0xda, 0xcd, 0x11, 0x94, 0x6f, 0xc4, 0x2c, 0x12, 0x92, 0x18, 0x48, 0x6e, + 0x17, 0xe4, 0xe5, 0xf3, 0x18, 0xa9, 0x42, 0xbb, 0x58, 0x9f, 0x9f, 0x20, +}; +static const unsigned char kat3164_addinpr1[] = {0}; +static const unsigned char kat3164_entropyinpr2[] = { + 0x3a, 0xab, 0xa8, 0x4e, 0x01, 0xfa, 0xa9, 0x2d, 0xf1, 0x9b, 0xd0, 0x2d, + 0xbe, 0x03, 0xf3, 0x03, 0x94, 0x90, 0x0a, 0x6b, 0x7d, 0x23, 0x35, 0x16, +}; +static const unsigned char kat3164_addinpr2[] = {0}; +static const unsigned char kat3164_retbits[] = { + 0xb2, 0x20, 0x73, 0x40, 0x23, 0x61, 0x00, 0x46, 0x83, 0x20, 0x59, 0x98, + 0x79, 0x67, 0xa8, 0xbf, 0x94, 0x60, 0x05, 0x34, 0x34, 0xd1, 0x4e, 0xc7, + 0xf6, 0xe8, 0x14, 0x18, 0x5a, 0x1d, 0xd1, 0x99, 0x36, 0x97, 0x77, 0x6f, + 0x36, 0xef, 0xb5, 0x57, 0x06, 0x09, 0xb8, 0xd6, 0xbb, 0x04, 0x57, 0x4b, + 0xbd, 0x1e, 0xc3, 0x16, 0xcb, 0xb6, 0x05, 0xf0, 0x55, 0xd8, 0x3b, 0x7d, + 0xa8, 0xea, 0xad, 0xd9, +}; +static const struct drbg_kat_pr_true kat3164_t = { + 13, kat3164_entropyin, kat3164_nonce, kat3164_persstr, + kat3164_entropyinpr1, kat3164_addinpr1, kat3164_entropyinpr2, + kat3164_addinpr2, kat3164_retbits +}; +static const struct drbg_kat kat3164 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3164_t +}; + +static const unsigned char kat3165_entropyin[] = { + 0xa5, 0xfb, 0x66, 0x93, 0xc4, 0x1e, 0xa3, 0x32, 0x4d, 0x14, 0x18, 0x81, + 0xd8, 0xe4, 0x7c, 0x2e, 0x61, 0xcd, 0xf4, 0x51, 0xee, 0x13, 0x8e, 0xb7, +}; +static const unsigned char kat3165_nonce[] = { + 0x2d, 0x8c, 0x24, 0xfb, 0xa2, 0xa7, 0xac, 0x7f, 0x33, 0x94, 0x84, 0x13, + 0xa6, 0xb5, 0x3a, 0x3e, +}; +static const unsigned char kat3165_persstr[] = { + 0xf9, 0xf2, 0x0e, 0x40, 0xb7, 0xa2, 0x8b, 0x1b, 0xd1, 0x4e, 0x9b, 0x24, + 0x39, 0x54, 0x37, 0xa7, 0x5b, 0xa9, 0x3d, 0x40, 0x81, 0xbf, 0xfb, 0x34, + 0xa4, 0x2c, 0x85, 0x94, 0xec, 0x5e, 0xd9, 0xc8, +}; +static const unsigned char kat3165_entropyinpr1[] = { + 0xeb, 0x70, 0x05, 0x26, 0x02, 0x06, 0xa8, 0xf7, 0x2f, 0x15, 0xd0, 0x33, + 0x54, 0xfb, 0x02, 0x51, 0x0e, 0x0e, 0x38, 0xa3, 0x40, 0xdc, 0xab, 0xb6, +}; +static const unsigned char kat3165_addinpr1[] = {0}; +static const unsigned char kat3165_entropyinpr2[] = { + 0xf5, 0x61, 0xbe, 0x91, 0xf8, 0x7e, 0xff, 0x50, 0xf0, 0x63, 0xf6, 0x1f, + 0x90, 0x1b, 0x4a, 0x28, 0x00, 0x11, 0x54, 0x56, 0x07, 0xf7, 0xa5, 0x5e, +}; +static const unsigned char kat3165_addinpr2[] = {0}; +static const unsigned char kat3165_retbits[] = { + 0xaa, 0x31, 0xb3, 0xd6, 0x9e, 0x66, 0x38, 0xde, 0xfc, 0x02, 0x69, 0x89, + 0x8b, 0xac, 0x9e, 0x58, 0x42, 0x45, 0xff, 0x06, 0x94, 0x97, 0x78, 0x85, + 0x12, 0x53, 0x30, 0xe4, 0xf5, 0xb4, 0x11, 0xd1, 0x51, 0x42, 0x3c, 0xf3, + 0x2e, 0x6e, 0x22, 0x56, 0x0c, 0xa5, 0x76, 0xe2, 0xf7, 0x51, 0x0e, 0x5d, + 0x88, 0xa8, 0xe3, 0x35, 0xc1, 0x0e, 0xa6, 0x82, 0x4a, 0x6a, 0x72, 0x9a, + 0x71, 0x97, 0x24, 0x9c, +}; +static const struct drbg_kat_pr_true kat3165_t = { + 14, kat3165_entropyin, kat3165_nonce, kat3165_persstr, + kat3165_entropyinpr1, kat3165_addinpr1, kat3165_entropyinpr2, + kat3165_addinpr2, kat3165_retbits +}; +static const struct drbg_kat kat3165 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3165_t +}; + +static const unsigned char kat3166_entropyin[] = { + 0x79, 0x38, 0x97, 0x57, 0x62, 0xfd, 0x99, 0xad, 0x03, 0x8b, 0xa9, 0xe3, + 0x8f, 0x3e, 0xee, 0x4d, 0xf2, 0x39, 0xd8, 0x97, 0xce, 0x96, 0xea, 0x01, +}; +static const unsigned char kat3166_nonce[] = { + 0xe1, 0xfe, 0x2b, 0xde, 0xba, 0xa8, 0x1a, 0x17, 0x5d, 0x92, 0xe6, 0xff, + 0xae, 0xb5, 0x99, 0x1c, +}; +static const unsigned char kat3166_persstr[] = { + 0x82, 0x72, 0xd8, 0x10, 0x6d, 0x76, 0xd0, 0xeb, 0xcc, 0x22, 0xdd, 0x0a, + 0xdc, 0x7f, 0x4b, 0x7e, 0xc9, 0x32, 0x68, 0xd0, 0x1a, 0x16, 0x19, 0xfe, + 0xf0, 0x33, 0x07, 0x1c, 0x41, 0x4a, 0x1b, 0x4a, +}; +static const unsigned char kat3166_entropyinpr1[] = { + 0xad, 0xfb, 0xf7, 0xb5, 0x16, 0xad, 0x09, 0xf1, 0x9c, 0x6a, 0x00, 0xc1, + 0x4f, 0x0f, 0x1a, 0xff, 0xfc, 0xa2, 0xb7, 0x24, 0x87, 0x04, 0x86, 0x57, +}; +static const unsigned char kat3166_addinpr1[] = { + 0x0f, 0x80, 0x06, 0x44, 0x3b, 0xea, 0xeb, 0xa5, 0xde, 0x4a, 0x02, 0xb4, + 0xd8, 0xeb, 0xca, 0x11, 0x50, 0x73, 0x32, 0x8b, 0x88, 0xde, 0x74, 0xec, + 0x4d, 0x00, 0x60, 0x50, 0x9f, 0x5c, 0x43, 0x05, +}; +static const unsigned char kat3166_entropyinpr2[] = { + 0x36, 0x79, 0x44, 0x2d, 0x0f, 0xc4, 0x6a, 0x1a, 0x48, 0x25, 0x0a, 0x99, + 0xec, 0xc1, 0x13, 0xc8, 0x72, 0xa8, 0x58, 0x32, 0x98, 0xcd, 0xa4, 0xb5, +}; +static const unsigned char kat3166_addinpr2[] = { + 0x2b, 0xaf, 0xaa, 0x03, 0x8d, 0x8e, 0xad, 0xf0, 0x18, 0x12, 0x56, 0xd6, + 0xe0, 0xba, 0xba, 0x75, 0x64, 0x30, 0x7a, 0x19, 0x6c, 0x00, 0xe8, 0x93, + 0x8f, 0x9b, 0x1c, 0xea, 0x96, 0x00, 0xde, 0xc9, +}; +static const unsigned char kat3166_retbits[] = { + 0x1f, 0x57, 0x60, 0xe9, 0xde, 0x0f, 0x89, 0x28, 0x77, 0x52, 0x2f, 0x89, + 0x63, 0x41, 0xa1, 0x54, 0x45, 0xff, 0xeb, 0x8d, 0x5d, 0x58, 0x73, 0xc6, + 0xd5, 0xa0, 0x05, 0x41, 0x77, 0x9d, 0x9f, 0x4e, 0x4f, 0x27, 0x06, 0xaf, + 0xee, 0x4e, 0x00, 0xf0, 0xf6, 0x8c, 0xde, 0x67, 0xa0, 0x22, 0xb3, 0x8f, + 0x7b, 0x63, 0xfa, 0x27, 0x12, 0x3c, 0x0c, 0xa7, 0x30, 0xea, 0xb0, 0x2b, + 0x7b, 0x05, 0x6d, 0x18, +}; +static const struct drbg_kat_pr_true kat3166_t = { + 0, kat3166_entropyin, kat3166_nonce, kat3166_persstr, + kat3166_entropyinpr1, kat3166_addinpr1, kat3166_entropyinpr2, + kat3166_addinpr2, kat3166_retbits +}; +static const struct drbg_kat kat3166 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3166_t +}; + +static const unsigned char kat3167_entropyin[] = { + 0xd9, 0xf4, 0xfb, 0x5d, 0x5a, 0x2a, 0x6a, 0xc8, 0xc9, 0x9a, 0x54, 0x3b, + 0x78, 0x5a, 0x3f, 0xbf, 0x6e, 0x5f, 0x48, 0xd5, 0x3e, 0x5c, 0x01, 0x6e, +}; +static const unsigned char kat3167_nonce[] = { + 0x58, 0x1a, 0xaf, 0x6f, 0x0a, 0x7c, 0xa6, 0xb8, 0xb6, 0x67, 0x64, 0xb8, + 0xab, 0x1b, 0x9d, 0x3b, +}; +static const unsigned char kat3167_persstr[] = { + 0xf6, 0xa4, 0x70, 0x54, 0x67, 0xe3, 0x72, 0x89, 0xb8, 0xa7, 0xc4, 0xc4, + 0xec, 0x0c, 0x58, 0x5f, 0x8d, 0xa5, 0xdc, 0x52, 0x41, 0x85, 0x82, 0x95, + 0x3d, 0xfe, 0x8e, 0x63, 0x64, 0xfc, 0xbe, 0xa1, +}; +static const unsigned char kat3167_entropyinpr1[] = { + 0x7d, 0x02, 0x64, 0x98, 0x26, 0x84, 0xe5, 0xfd, 0x9d, 0xe2, 0x83, 0x50, + 0xbc, 0x9c, 0x06, 0x38, 0x2c, 0x50, 0x79, 0xb2, 0x59, 0x0e, 0x89, 0x49, +}; +static const unsigned char kat3167_addinpr1[] = { + 0xc6, 0x3a, 0xc5, 0x02, 0x41, 0x43, 0x47, 0xdf, 0xfa, 0xff, 0xf6, 0xf2, + 0x58, 0x77, 0x4b, 0xea, 0xdd, 0xb6, 0x44, 0x86, 0xd0, 0x24, 0x96, 0x31, + 0xc2, 0x37, 0x66, 0x8d, 0x3d, 0x9d, 0x50, 0x04, +}; +static const unsigned char kat3167_entropyinpr2[] = { + 0xea, 0x49, 0x68, 0x0d, 0xe7, 0x9d, 0x23, 0x96, 0xbb, 0x68, 0x79, 0xcb, + 0xd6, 0xb2, 0x41, 0x69, 0x08, 0x38, 0x78, 0x1a, 0x1b, 0x16, 0xbb, 0x2a, +}; +static const unsigned char kat3167_addinpr2[] = { + 0xba, 0x74, 0x1b, 0x1c, 0x17, 0xbf, 0xc7, 0x38, 0xf6, 0xd2, 0xf8, 0x84, + 0x3a, 0x3b, 0x1d, 0x9c, 0xc4, 0x99, 0x5f, 0x01, 0x1f, 0x08, 0x98, 0xd2, + 0x4a, 0xd3, 0x40, 0x21, 0x59, 0x2f, 0x09, 0xb7, +}; +static const unsigned char kat3167_retbits[] = { + 0x8e, 0xd6, 0xc7, 0x46, 0x5f, 0xf7, 0x10, 0xa4, 0x13, 0xb3, 0xd0, 0x0d, + 0x0d, 0x67, 0x0a, 0xb6, 0xd2, 0xbc, 0x91, 0x86, 0x49, 0x27, 0x58, 0x74, + 0x71, 0xa6, 0x58, 0xaf, 0xd4, 0xdc, 0x21, 0x1b, 0x6d, 0x8e, 0x34, 0x34, + 0x26, 0xbe, 0x59, 0x13, 0xab, 0xb2, 0x5e, 0x63, 0xef, 0x2f, 0x35, 0x43, + 0xac, 0x31, 0x2b, 0x4e, 0x0a, 0xc5, 0xa1, 0xa7, 0xde, 0x7f, 0x28, 0x47, + 0xfd, 0x40, 0xc6, 0xe0, +}; +static const struct drbg_kat_pr_true kat3167_t = { + 1, kat3167_entropyin, kat3167_nonce, kat3167_persstr, + kat3167_entropyinpr1, kat3167_addinpr1, kat3167_entropyinpr2, + kat3167_addinpr2, kat3167_retbits +}; +static const struct drbg_kat kat3167 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3167_t +}; + +static const unsigned char kat3168_entropyin[] = { + 0x6a, 0xe4, 0xc9, 0xe7, 0xcd, 0x37, 0x25, 0xeb, 0xb1, 0xc7, 0xe6, 0xd7, + 0x78, 0x68, 0xb6, 0xa1, 0x8b, 0xd0, 0x5e, 0x30, 0x67, 0x47, 0x1f, 0xc8, +}; +static const unsigned char kat3168_nonce[] = { + 0x84, 0xa5, 0x79, 0xfd, 0x45, 0x9c, 0x19, 0xea, 0x42, 0xd2, 0xa5, 0x55, + 0xb9, 0x84, 0x4f, 0x08, +}; +static const unsigned char kat3168_persstr[] = { + 0x50, 0x6b, 0x3c, 0x8e, 0x53, 0x00, 0xe1, 0x6b, 0xa3, 0x7a, 0xbf, 0xf9, + 0x67, 0xb9, 0x78, 0x9e, 0x97, 0x74, 0xe8, 0x0e, 0xe2, 0xbc, 0xa4, 0x97, + 0x84, 0x99, 0xb4, 0xd9, 0x58, 0xd3, 0xdd, 0x8f, +}; +static const unsigned char kat3168_entropyinpr1[] = { + 0x6a, 0x96, 0x00, 0x8f, 0x29, 0x63, 0x10, 0xa0, 0x5e, 0x7f, 0xdd, 0x68, + 0xa1, 0xd1, 0x1c, 0xd0, 0x38, 0x9b, 0x56, 0x57, 0xdb, 0x95, 0xf2, 0xa6, +}; +static const unsigned char kat3168_addinpr1[] = { + 0x59, 0x1f, 0x29, 0x27, 0x7b, 0x49, 0x4a, 0x3d, 0xdf, 0x2e, 0xd4, 0x9c, + 0x3b, 0xca, 0xd8, 0xed, 0x67, 0x35, 0x8a, 0xb5, 0xec, 0x4d, 0x52, 0x7b, + 0xaa, 0x6d, 0x38, 0xaf, 0xb3, 0x24, 0xe8, 0x60, +}; +static const unsigned char kat3168_entropyinpr2[] = { + 0x78, 0x0b, 0xe1, 0x22, 0x17, 0xee, 0xb3, 0x50, 0x38, 0x55, 0x9a, 0x42, + 0xf0, 0xfe, 0x90, 0xd5, 0xb6, 0x53, 0x67, 0x5e, 0x99, 0x27, 0x50, 0xc7, +}; +static const unsigned char kat3168_addinpr2[] = { + 0xe7, 0x89, 0xda, 0x83, 0xa4, 0x19, 0x4f, 0xfe, 0x94, 0x21, 0x09, 0x33, + 0xac, 0x1b, 0x6c, 0x18, 0x64, 0x13, 0xc5, 0xff, 0x5b, 0xdc, 0xb9, 0xec, + 0x7d, 0x7b, 0xf5, 0xd5, 0x1f, 0x47, 0x86, 0x9f, +}; +static const unsigned char kat3168_retbits[] = { + 0x49, 0xcc, 0xd3, 0xab, 0x12, 0xb0, 0x49, 0x6f, 0x9d, 0x85, 0xd8, 0xc7, + 0x46, 0x0c, 0x64, 0x8c, 0xd0, 0x1b, 0xc0, 0xbf, 0x8b, 0x2c, 0xdb, 0xf5, + 0xa8, 0x64, 0x5c, 0xae, 0xf9, 0x00, 0xa7, 0x87, 0xc1, 0xa1, 0xe0, 0xfe, + 0x0f, 0x48, 0x01, 0x1e, 0x1d, 0x09, 0x4c, 0x34, 0xde, 0x5c, 0xa8, 0x42, + 0x23, 0xf8, 0x47, 0xd0, 0x7e, 0xb7, 0x7a, 0xf5, 0xa4, 0x60, 0x69, 0x06, + 0x68, 0xa1, 0xc6, 0xc8, +}; +static const struct drbg_kat_pr_true kat3168_t = { + 2, kat3168_entropyin, kat3168_nonce, kat3168_persstr, + kat3168_entropyinpr1, kat3168_addinpr1, kat3168_entropyinpr2, + kat3168_addinpr2, kat3168_retbits +}; +static const struct drbg_kat kat3168 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3168_t +}; + +static const unsigned char kat3169_entropyin[] = { + 0xb2, 0x46, 0x76, 0xe5, 0xdb, 0x27, 0x5c, 0xf0, 0x18, 0x91, 0x95, 0x20, + 0x76, 0x62, 0xcc, 0xa9, 0xef, 0x13, 0xed, 0xf8, 0xcb, 0x9b, 0x2a, 0x8d, +}; +static const unsigned char kat3169_nonce[] = { + 0x12, 0x2c, 0xfd, 0x8c, 0x74, 0x15, 0x29, 0x13, 0x8b, 0x86, 0xdc, 0xb1, + 0x92, 0x2b, 0x03, 0x5d, +}; +static const unsigned char kat3169_persstr[] = { + 0xc4, 0x4c, 0xd8, 0x81, 0xb4, 0xad, 0x2e, 0xc1, 0x0e, 0x13, 0xe7, 0x8b, + 0xde, 0x91, 0x84, 0x93, 0x3b, 0xd6, 0x92, 0xc6, 0x09, 0xe9, 0x40, 0xe0, + 0x2d, 0xe4, 0x1c, 0x6a, 0xff, 0x5a, 0x48, 0x22, +}; +static const unsigned char kat3169_entropyinpr1[] = { + 0x82, 0x59, 0x73, 0xec, 0x8e, 0xee, 0x4e, 0x88, 0xda, 0xf3, 0x86, 0x1a, + 0x84, 0x38, 0xd6, 0x08, 0xdc, 0x83, 0x50, 0x66, 0x88, 0xd1, 0x6e, 0x0b, +}; +static const unsigned char kat3169_addinpr1[] = { + 0xd4, 0x89, 0xd1, 0x6d, 0x0b, 0x65, 0xb5, 0xc6, 0x79, 0xaa, 0x45, 0x50, + 0xcf, 0xad, 0x14, 0x59, 0xd4, 0xbb, 0xec, 0x3c, 0x0a, 0xad, 0x36, 0x67, + 0xfc, 0x55, 0x15, 0xa5, 0x04, 0x16, 0x4e, 0x19, +}; +static const unsigned char kat3169_entropyinpr2[] = { + 0xce, 0x68, 0x47, 0x03, 0x85, 0x6a, 0xfb, 0x96, 0x00, 0xf3, 0x8d, 0x95, + 0xe4, 0xbd, 0xdb, 0x2f, 0x0e, 0x14, 0x9f, 0x77, 0x4a, 0xaa, 0xb5, 0xaa, +}; +static const unsigned char kat3169_addinpr2[] = { + 0x0f, 0x8a, 0x84, 0xf7, 0x55, 0xde, 0xaa, 0x01, 0x0e, 0xf9, 0x0c, 0x8b, + 0xe8, 0x54, 0xae, 0xd6, 0x93, 0x25, 0xce, 0x72, 0x48, 0xad, 0x4a, 0x96, + 0xcb, 0xe0, 0x3f, 0xae, 0x0b, 0xcc, 0x85, 0x94, +}; +static const unsigned char kat3169_retbits[] = { + 0x8f, 0xe1, 0x34, 0x02, 0x1f, 0x85, 0xda, 0xb9, 0xc8, 0x91, 0x00, 0x19, + 0x33, 0xdd, 0x16, 0x6a, 0x8d, 0x72, 0x5f, 0x4c, 0xdb, 0xa7, 0x75, 0x54, + 0x0e, 0x3f, 0xe7, 0x0c, 0x92, 0xe1, 0xcd, 0x1a, 0xd8, 0xec, 0xa6, 0x09, + 0xf1, 0x2b, 0xd5, 0xa8, 0xa6, 0xb8, 0xc8, 0xd6, 0x0c, 0xb3, 0x7b, 0x1d, + 0x1a, 0x51, 0xd0, 0x16, 0x38, 0x3c, 0x5d, 0x95, 0xc0, 0xd6, 0xdf, 0x1e, + 0x98, 0x3f, 0x31, 0x3b, +}; +static const struct drbg_kat_pr_true kat3169_t = { + 3, kat3169_entropyin, kat3169_nonce, kat3169_persstr, + kat3169_entropyinpr1, kat3169_addinpr1, kat3169_entropyinpr2, + kat3169_addinpr2, kat3169_retbits +}; +static const struct drbg_kat kat3169 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3169_t +}; + +static const unsigned char kat3170_entropyin[] = { + 0xa9, 0xe0, 0x74, 0xbe, 0x4b, 0x41, 0x84, 0x83, 0x33, 0xc1, 0xa9, 0x19, + 0x40, 0x2a, 0x52, 0x66, 0x01, 0x67, 0x41, 0xbe, 0xb1, 0x68, 0x9a, 0xf7, +}; +static const unsigned char kat3170_nonce[] = { + 0x40, 0x6f, 0xc4, 0xe4, 0xe5, 0xb2, 0xab, 0xb6, 0xb2, 0xdc, 0x55, 0xba, + 0x4b, 0x8d, 0x35, 0x57, +}; +static const unsigned char kat3170_persstr[] = { + 0xe6, 0x03, 0xe3, 0xe1, 0xe9, 0x8c, 0xb5, 0x5c, 0xe2, 0xa0, 0xee, 0xd2, + 0x13, 0xb6, 0x03, 0xd6, 0xb4, 0xd6, 0xaa, 0xad, 0x26, 0xb9, 0x06, 0xcc, + 0xed, 0xc1, 0x69, 0x68, 0x0d, 0x57, 0xe1, 0xcb, +}; +static const unsigned char kat3170_entropyinpr1[] = { + 0x7b, 0x00, 0x08, 0xd1, 0x3c, 0x8a, 0x15, 0xd1, 0xbc, 0x8f, 0xde, 0x0f, + 0xc6, 0xff, 0x67, 0x1d, 0xc1, 0x28, 0x23, 0x92, 0xdc, 0x07, 0x57, 0x64, +}; +static const unsigned char kat3170_addinpr1[] = { + 0x98, 0x03, 0xa9, 0x70, 0x30, 0x3c, 0x00, 0xc9, 0x36, 0xf6, 0x91, 0x7b, + 0x27, 0xd7, 0xd7, 0xe9, 0x6a, 0x99, 0xf5, 0x69, 0x44, 0x46, 0x75, 0xe4, + 0x53, 0xd9, 0x35, 0x77, 0x08, 0xe7, 0x9b, 0xe0, +}; +static const unsigned char kat3170_entropyinpr2[] = { + 0x6a, 0xb1, 0x27, 0x64, 0x04, 0xe4, 0x90, 0x34, 0xc8, 0x7b, 0x98, 0xf1, + 0xba, 0xab, 0x88, 0x2e, 0xa2, 0xc1, 0x53, 0x83, 0xab, 0x33, 0xa1, 0x70, +}; +static const unsigned char kat3170_addinpr2[] = { + 0x35, 0xa9, 0xbe, 0x04, 0x80, 0x39, 0x9d, 0xa9, 0xb1, 0x6f, 0xa8, 0x54, + 0x6f, 0xcf, 0x65, 0x30, 0x16, 0xeb, 0x51, 0x42, 0x47, 0x58, 0xba, 0x3e, + 0x56, 0xe0, 0xa2, 0x0c, 0xec, 0x88, 0x09, 0x41, +}; +static const unsigned char kat3170_retbits[] = { + 0x5a, 0xb2, 0xd8, 0x9f, 0x4f, 0x85, 0xc8, 0x4a, 0xc0, 0x83, 0xc7, 0xdc, + 0x7a, 0x32, 0x34, 0x12, 0x74, 0x7d, 0x26, 0xae, 0xcc, 0xfc, 0x14, 0x86, + 0x37, 0x7c, 0x4f, 0xa5, 0xd1, 0xfd, 0x24, 0x46, 0x05, 0xec, 0x8c, 0x77, + 0x9c, 0x14, 0xae, 0x4a, 0x7c, 0xc1, 0x80, 0xb3, 0xcd, 0xe6, 0x28, 0x49, + 0x7e, 0x4b, 0x12, 0xb3, 0xbc, 0x2d, 0xba, 0xd3, 0xfc, 0xf4, 0x1a, 0xa2, + 0x69, 0x96, 0xe7, 0x52, +}; +static const struct drbg_kat_pr_true kat3170_t = { + 4, kat3170_entropyin, kat3170_nonce, kat3170_persstr, + kat3170_entropyinpr1, kat3170_addinpr1, kat3170_entropyinpr2, + kat3170_addinpr2, kat3170_retbits +}; +static const struct drbg_kat kat3170 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3170_t +}; + +static const unsigned char kat3171_entropyin[] = { + 0x07, 0x9f, 0xf1, 0xfb, 0x2e, 0x77, 0x60, 0xee, 0xa5, 0x9e, 0x86, 0xbe, + 0x95, 0xd9, 0x2f, 0x18, 0xc4, 0x5a, 0x96, 0xee, 0xf7, 0x0a, 0x14, 0x30, +}; +static const unsigned char kat3171_nonce[] = { + 0xf5, 0xf8, 0xaa, 0xa1, 0xd4, 0xe9, 0xa2, 0xa3, 0x6e, 0x36, 0x86, 0xcb, + 0xb7, 0xe8, 0x9a, 0x13, +}; +static const unsigned char kat3171_persstr[] = { + 0x14, 0x3f, 0x35, 0xc9, 0x93, 0x40, 0x80, 0xcd, 0xfd, 0x26, 0x5f, 0xd9, + 0xc5, 0x8c, 0x44, 0x6d, 0xfb, 0xa0, 0x18, 0xc8, 0x04, 0x63, 0xb9, 0x00, + 0xdc, 0xec, 0x95, 0x9b, 0xfe, 0xc2, 0xd8, 0x86, +}; +static const unsigned char kat3171_entropyinpr1[] = { + 0x97, 0x3f, 0x79, 0xe3, 0x89, 0x5e, 0xb2, 0x95, 0xcf, 0xf5, 0x73, 0xcf, + 0x39, 0x68, 0xdc, 0x70, 0x4b, 0xef, 0xf7, 0x0b, 0x4c, 0x3c, 0x6a, 0x63, +}; +static const unsigned char kat3171_addinpr1[] = { + 0x40, 0x74, 0x64, 0x80, 0x85, 0x0f, 0xdd, 0x97, 0x81, 0x86, 0x9d, 0x14, + 0x67, 0x59, 0xbb, 0xd0, 0x35, 0x68, 0x11, 0x65, 0xfe, 0xae, 0xeb, 0xd8, + 0x9f, 0xe4, 0xd8, 0x19, 0x45, 0x4f, 0xf9, 0x0f, +}; +static const unsigned char kat3171_entropyinpr2[] = { + 0x6c, 0xbf, 0xd9, 0x14, 0xc6, 0x54, 0x82, 0x6f, 0xd6, 0x56, 0xc6, 0x12, + 0xaa, 0xe7, 0x0b, 0xd7, 0x98, 0xd3, 0x27, 0x27, 0x88, 0xdb, 0x23, 0xdf, +}; +static const unsigned char kat3171_addinpr2[] = { + 0x5f, 0xf6, 0x4c, 0x8f, 0x27, 0x86, 0x8b, 0xc2, 0x77, 0x56, 0x1e, 0xcc, + 0x86, 0x3d, 0x87, 0xef, 0xe7, 0xdd, 0x46, 0x0c, 0x98, 0xf2, 0x71, 0x4c, + 0x18, 0x56, 0x9d, 0x0b, 0xcc, 0xa5, 0x22, 0xc7, +}; +static const unsigned char kat3171_retbits[] = { + 0x57, 0x8a, 0x80, 0x55, 0x09, 0x10, 0xb3, 0x25, 0x34, 0x09, 0x1a, 0xaf, + 0xac, 0x06, 0xc4, 0x4d, 0x01, 0xad, 0xa8, 0x5a, 0x1e, 0x26, 0xe6, 0xb5, + 0xa5, 0xf9, 0x4d, 0x4a, 0xe4, 0x05, 0xce, 0x02, 0xba, 0xb5, 0x8d, 0x81, + 0x85, 0x4c, 0xdf, 0x15, 0xc7, 0x3e, 0xf7, 0x94, 0xf9, 0xa5, 0x3e, 0x7b, + 0x28, 0x82, 0xf6, 0x07, 0x81, 0xe3, 0x70, 0x6b, 0x85, 0xac, 0xb4, 0x1f, + 0xe0, 0xa6, 0x16, 0x80, +}; +static const struct drbg_kat_pr_true kat3171_t = { + 5, kat3171_entropyin, kat3171_nonce, kat3171_persstr, + kat3171_entropyinpr1, kat3171_addinpr1, kat3171_entropyinpr2, + kat3171_addinpr2, kat3171_retbits +}; +static const struct drbg_kat kat3171 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3171_t +}; + +static const unsigned char kat3172_entropyin[] = { + 0x71, 0xcb, 0x85, 0x9b, 0x4e, 0xe9, 0x17, 0x8a, 0xf2, 0xef, 0x9d, 0xad, + 0x09, 0xea, 0x0e, 0x27, 0xd0, 0xf6, 0xdf, 0x3f, 0x40, 0xb4, 0x14, 0x8a, +}; +static const unsigned char kat3172_nonce[] = { + 0x51, 0x36, 0x47, 0xae, 0x88, 0x70, 0x99, 0x4b, 0xad, 0x3e, 0xda, 0x20, + 0x66, 0x32, 0xf1, 0x4b, +}; +static const unsigned char kat3172_persstr[] = { + 0x8d, 0x57, 0x2a, 0x48, 0xa4, 0x8f, 0x35, 0xde, 0xba, 0x84, 0x52, 0x74, + 0x31, 0xd8, 0xb4, 0xf8, 0x09, 0x8e, 0xed, 0x38, 0xd6, 0xfd, 0x61, 0x9d, + 0x9e, 0x39, 0xd1, 0x16, 0x09, 0x43, 0x78, 0x25, +}; +static const unsigned char kat3172_entropyinpr1[] = { + 0x94, 0xe2, 0x48, 0xa5, 0xce, 0x51, 0x9f, 0xa7, 0x61, 0x06, 0xc9, 0x60, + 0x02, 0x27, 0xa1, 0xed, 0xce, 0x11, 0x33, 0x89, 0xab, 0x33, 0x32, 0x1a, +}; +static const unsigned char kat3172_addinpr1[] = { + 0x04, 0xda, 0xf3, 0x83, 0xb8, 0xff, 0xd9, 0xac, 0x14, 0x30, 0x56, 0x3a, + 0x40, 0xce, 0x7c, 0xb4, 0x46, 0x82, 0xc5, 0x41, 0x5f, 0xbd, 0x4c, 0x3f, + 0x89, 0x1c, 0x24, 0x2b, 0x2d, 0xd4, 0xb1, 0xc5, +}; +static const unsigned char kat3172_entropyinpr2[] = { + 0x84, 0x99, 0x64, 0x9d, 0x9e, 0x97, 0x5c, 0x6e, 0xea, 0x6f, 0x6f, 0x23, + 0xe5, 0x15, 0x91, 0xfc, 0x62, 0xfd, 0xa8, 0xdb, 0x8a, 0xfe, 0x00, 0x0b, +}; +static const unsigned char kat3172_addinpr2[] = { + 0x44, 0x7b, 0x57, 0x24, 0xda, 0xb4, 0x69, 0x4d, 0x9d, 0xcf, 0xd9, 0xbb, + 0x5f, 0x2c, 0x89, 0x19, 0x24, 0xb1, 0xba, 0xfa, 0x3b, 0xa1, 0x39, 0xb6, + 0x20, 0x93, 0x6d, 0xee, 0x76, 0x43, 0xb9, 0xe6, +}; +static const unsigned char kat3172_retbits[] = { + 0x43, 0x8b, 0x8c, 0xde, 0xe8, 0x66, 0x0f, 0x5c, 0x95, 0x4f, 0x35, 0x9c, + 0xa2, 0x03, 0xb4, 0x3d, 0xf5, 0x84, 0x31, 0x6e, 0x8a, 0xec, 0x66, 0xd1, + 0x87, 0x1a, 0xbe, 0x16, 0x9c, 0xe6, 0xd2, 0x4a, 0x16, 0x61, 0x56, 0x1a, + 0xfe, 0x83, 0x73, 0x36, 0xa6, 0x5e, 0x34, 0x79, 0x55, 0x75, 0xc8, 0x9a, + 0x74, 0xde, 0xcc, 0x3e, 0x5a, 0x9b, 0x15, 0x8a, 0xd3, 0x91, 0x2c, 0xb5, + 0x08, 0x46, 0x31, 0x98, +}; +static const struct drbg_kat_pr_true kat3172_t = { + 6, kat3172_entropyin, kat3172_nonce, kat3172_persstr, + kat3172_entropyinpr1, kat3172_addinpr1, kat3172_entropyinpr2, + kat3172_addinpr2, kat3172_retbits +}; +static const struct drbg_kat kat3172 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3172_t +}; + +static const unsigned char kat3173_entropyin[] = { + 0xe5, 0x2c, 0x92, 0xff, 0x0a, 0x21, 0x43, 0x06, 0xc9, 0x08, 0xee, 0x6f, + 0x4c, 0x76, 0x7d, 0xbb, 0x7e, 0x61, 0x5a, 0x78, 0x2b, 0x19, 0x5e, 0x7f, +}; +static const unsigned char kat3173_nonce[] = { + 0xf6, 0x51, 0x98, 0x0a, 0x2c, 0x43, 0x63, 0xa2, 0xcb, 0x5e, 0xc5, 0x40, + 0x79, 0x70, 0xd8, 0x61, +}; +static const unsigned char kat3173_persstr[] = { + 0xa9, 0xd0, 0x9a, 0xef, 0x83, 0x3b, 0x6c, 0x61, 0x2e, 0x0d, 0x9b, 0x54, + 0x72, 0x9d, 0x8c, 0x59, 0x27, 0x03, 0x23, 0x77, 0x86, 0xef, 0xaf, 0x1a, + 0x1e, 0x54, 0xe7, 0x2c, 0x6b, 0x42, 0x01, 0xc4, +}; +static const unsigned char kat3173_entropyinpr1[] = { + 0x4d, 0xac, 0xb6, 0x9c, 0x50, 0x75, 0xb8, 0xd1, 0x07, 0x76, 0x37, 0xe2, + 0x3f, 0xe9, 0xfb, 0x27, 0xe8, 0x0b, 0x8e, 0xe4, 0x35, 0xfe, 0x73, 0xc0, +}; +static const unsigned char kat3173_addinpr1[] = { + 0xb3, 0xa3, 0xe8, 0x4f, 0xba, 0x81, 0x0a, 0x10, 0x3e, 0x97, 0x79, 0x0e, + 0x22, 0xc3, 0x7b, 0xd8, 0x5d, 0x51, 0x90, 0x3b, 0x8a, 0x4a, 0xc9, 0xc3, + 0x62, 0x71, 0x55, 0xb4, 0x74, 0x0f, 0x66, 0x29, +}; +static const unsigned char kat3173_entropyinpr2[] = { + 0x36, 0x40, 0x71, 0x5f, 0x90, 0xef, 0xb9, 0xaf, 0xd3, 0x68, 0x81, 0x62, + 0x9f, 0xe1, 0x15, 0x1c, 0x6f, 0xd2, 0x5a, 0x20, 0xb2, 0xab, 0x78, 0x5e, +}; +static const unsigned char kat3173_addinpr2[] = { + 0x75, 0x88, 0x57, 0x7c, 0xd6, 0x78, 0x2b, 0x65, 0xf0, 0xd5, 0x52, 0x9f, + 0x3d, 0xb7, 0x78, 0x23, 0x46, 0x72, 0xc0, 0x56, 0x37, 0x07, 0xed, 0x73, + 0x90, 0xef, 0xe0, 0x1c, 0xe6, 0x7c, 0x73, 0x36, +}; +static const unsigned char kat3173_retbits[] = { + 0xc6, 0xa3, 0xa4, 0x46, 0x7d, 0x96, 0x55, 0x35, 0x62, 0x5a, 0x3c, 0x6c, + 0x35, 0xcb, 0x7c, 0x97, 0xf5, 0xdb, 0x04, 0x0f, 0xac, 0x19, 0xa1, 0x64, + 0xc4, 0x0e, 0x4d, 0x94, 0x46, 0x9f, 0xca, 0x72, 0x92, 0x22, 0x39, 0x52, + 0x7a, 0x1f, 0xd8, 0x18, 0x5e, 0x8c, 0xd6, 0x45, 0x75, 0xd2, 0x12, 0xa3, + 0xce, 0x95, 0xeb, 0x5f, 0x86, 0xa6, 0x78, 0x30, 0x93, 0xb6, 0xe1, 0x62, + 0x59, 0xe4, 0x23, 0x52, +}; +static const struct drbg_kat_pr_true kat3173_t = { + 7, kat3173_entropyin, kat3173_nonce, kat3173_persstr, + kat3173_entropyinpr1, kat3173_addinpr1, kat3173_entropyinpr2, + kat3173_addinpr2, kat3173_retbits +}; +static const struct drbg_kat kat3173 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3173_t +}; + +static const unsigned char kat3174_entropyin[] = { + 0x52, 0x64, 0xe3, 0x0e, 0xfe, 0xf5, 0xf5, 0xc9, 0x59, 0x9d, 0xa0, 0x28, + 0x01, 0xef, 0xeb, 0x19, 0x24, 0x64, 0x25, 0xe3, 0xba, 0x51, 0x5f, 0x32, +}; +static const unsigned char kat3174_nonce[] = { + 0xc8, 0xa2, 0x45, 0x34, 0xb7, 0x7d, 0xef, 0x98, 0xee, 0xa3, 0x34, 0xa9, + 0xa9, 0x61, 0xe5, 0x56, +}; +static const unsigned char kat3174_persstr[] = { + 0x2a, 0x12, 0x43, 0x9a, 0x4b, 0xd4, 0x56, 0xd8, 0x05, 0xb8, 0x54, 0xb8, + 0xe4, 0x1b, 0xf4, 0x08, 0xc3, 0x37, 0xf0, 0x68, 0xf8, 0x43, 0xaf, 0xb4, + 0x39, 0x2b, 0xb2, 0x62, 0xdc, 0x7b, 0x20, 0xb4, +}; +static const unsigned char kat3174_entropyinpr1[] = { + 0x7b, 0xc8, 0xd1, 0x0d, 0x01, 0x58, 0x06, 0xea, 0xe4, 0x78, 0x62, 0x58, + 0x5b, 0x53, 0xac, 0xc5, 0x85, 0x28, 0xf0, 0x66, 0x49, 0x99, 0x45, 0xd7, +}; +static const unsigned char kat3174_addinpr1[] = { + 0x96, 0xfc, 0x2f, 0x2b, 0xbe, 0xb8, 0x2a, 0xb2, 0x01, 0xab, 0x3c, 0x48, + 0x4d, 0x5d, 0xe7, 0xfc, 0x78, 0x46, 0xa5, 0xce, 0xd7, 0x6f, 0xbc, 0x29, + 0x56, 0x54, 0x01, 0x19, 0x54, 0xda, 0xcc, 0x59, +}; +static const unsigned char kat3174_entropyinpr2[] = { + 0xbe, 0x8a, 0x8e, 0x17, 0x29, 0x3d, 0xe6, 0x33, 0x18, 0x20, 0x5d, 0x77, + 0x49, 0x85, 0x1c, 0x7e, 0x39, 0x51, 0xca, 0xe6, 0xbe, 0x4a, 0x0d, 0x1f, +}; +static const unsigned char kat3174_addinpr2[] = { + 0x43, 0x91, 0x2f, 0x08, 0xae, 0xd8, 0x30, 0x54, 0xc8, 0x7b, 0x63, 0x15, + 0x8f, 0xc4, 0x89, 0xbc, 0x8d, 0x1c, 0x2b, 0x5f, 0x31, 0xf3, 0xb3, 0x73, + 0x54, 0xde, 0x8e, 0x42, 0xae, 0x2e, 0x69, 0xf3, +}; +static const unsigned char kat3174_retbits[] = { + 0x04, 0xb9, 0x61, 0x81, 0xfe, 0x4d, 0xc0, 0x4a, 0x42, 0x52, 0x56, 0x0a, + 0x3b, 0x90, 0x51, 0x1d, 0x55, 0x8a, 0x74, 0x24, 0x84, 0x23, 0xb5, 0x79, + 0x62, 0x72, 0x61, 0xda, 0x7b, 0x53, 0x2f, 0x0f, 0x77, 0x5f, 0x49, 0x56, + 0x1f, 0x08, 0x76, 0xbf, 0x5c, 0x85, 0xa5, 0x88, 0x12, 0xaa, 0x92, 0x1e, + 0xe8, 0x3e, 0x2b, 0xae, 0xb0, 0x62, 0xf3, 0x18, 0x2d, 0x2b, 0xae, 0xb5, + 0x62, 0xe0, 0x11, 0x81, +}; +static const struct drbg_kat_pr_true kat3174_t = { + 8, kat3174_entropyin, kat3174_nonce, kat3174_persstr, + kat3174_entropyinpr1, kat3174_addinpr1, kat3174_entropyinpr2, + kat3174_addinpr2, kat3174_retbits +}; +static const struct drbg_kat kat3174 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3174_t +}; + +static const unsigned char kat3175_entropyin[] = { + 0x85, 0xa5, 0xeb, 0x65, 0xed, 0x68, 0x3f, 0xd8, 0x4d, 0xee, 0x16, 0xf0, + 0x70, 0x5d, 0xbb, 0xb3, 0xae, 0x25, 0xa3, 0x49, 0x10, 0xfb, 0x1a, 0x7d, +}; +static const unsigned char kat3175_nonce[] = { + 0xe2, 0xac, 0x0c, 0xf8, 0x45, 0x8e, 0x27, 0x8b, 0x80, 0x75, 0x8e, 0x6f, + 0xc2, 0x15, 0x1a, 0x45, +}; +static const unsigned char kat3175_persstr[] = { + 0xb9, 0x7a, 0x44, 0xe6, 0x8c, 0x75, 0xc0, 0x9d, 0xa7, 0x9b, 0x33, 0xa0, + 0x2b, 0x07, 0x40, 0x16, 0xf8, 0xc1, 0x51, 0x7b, 0x48, 0xe5, 0xc7, 0x90, + 0xee, 0xad, 0xd5, 0xbf, 0xe2, 0xc3, 0x6a, 0x5a, +}; +static const unsigned char kat3175_entropyinpr1[] = { + 0x87, 0xa9, 0x74, 0xef, 0x33, 0x49, 0x78, 0xfa, 0xa4, 0xde, 0x23, 0x8f, + 0x4f, 0x87, 0x6a, 0x27, 0x86, 0xa8, 0x9a, 0x4a, 0x4b, 0xc5, 0x97, 0x6b, +}; +static const unsigned char kat3175_addinpr1[] = { + 0xba, 0x33, 0x32, 0xc2, 0x58, 0x37, 0x8b, 0xba, 0x15, 0x11, 0xb9, 0x3e, + 0x84, 0xd6, 0xf8, 0x6b, 0xbe, 0xba, 0xc4, 0x80, 0xd0, 0x01, 0x93, 0x3b, + 0x3d, 0x90, 0xca, 0xc6, 0x75, 0xfe, 0x72, 0xa6, +}; +static const unsigned char kat3175_entropyinpr2[] = { + 0xbe, 0x06, 0xf3, 0x7c, 0xe2, 0x48, 0x0e, 0xa6, 0x0f, 0x74, 0x3a, 0x36, + 0x0a, 0x6d, 0x01, 0x98, 0x1d, 0x6e, 0x31, 0x94, 0x90, 0xd5, 0x6a, 0x88, +}; +static const unsigned char kat3175_addinpr2[] = { + 0xd0, 0xf0, 0xf6, 0xf2, 0x43, 0xf9, 0x23, 0xfe, 0xa7, 0x1f, 0xc9, 0x33, + 0x8a, 0xc0, 0x0b, 0x14, 0x7c, 0xb3, 0x72, 0x09, 0x14, 0xb4, 0x31, 0xe2, + 0xda, 0xa6, 0x38, 0x15, 0x57, 0x8a, 0xed, 0x4a, +}; +static const unsigned char kat3175_retbits[] = { + 0x23, 0x8a, 0xd5, 0xb7, 0xf7, 0xce, 0x2f, 0x26, 0xf9, 0xa9, 0x4f, 0xf7, + 0x87, 0x5e, 0x52, 0x68, 0xa0, 0x46, 0x1e, 0x5e, 0x4a, 0xa5, 0xc7, 0x9d, + 0x39, 0x4c, 0x3e, 0x6b, 0xa2, 0x27, 0x8e, 0x68, 0x59, 0x10, 0xc3, 0xbc, + 0x8b, 0x7c, 0xd1, 0x65, 0x62, 0x01, 0xd0, 0x1a, 0x32, 0x3e, 0xd8, 0x37, + 0x7c, 0xa9, 0xc4, 0x3f, 0x29, 0xd8, 0x67, 0x12, 0x77, 0x9f, 0x34, 0x4c, + 0x5b, 0xf3, 0x64, 0xd9, +}; +static const struct drbg_kat_pr_true kat3175_t = { + 9, kat3175_entropyin, kat3175_nonce, kat3175_persstr, + kat3175_entropyinpr1, kat3175_addinpr1, kat3175_entropyinpr2, + kat3175_addinpr2, kat3175_retbits +}; +static const struct drbg_kat kat3175 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3175_t +}; + +static const unsigned char kat3176_entropyin[] = { + 0x1c, 0xce, 0x9b, 0x05, 0x45, 0x3d, 0x1e, 0x3c, 0x40, 0xe4, 0x3a, 0x9e, + 0x8b, 0x11, 0x97, 0x88, 0x53, 0x1f, 0x4c, 0x60, 0x5d, 0xfd, 0xc5, 0x59, +}; +static const unsigned char kat3176_nonce[] = { + 0xb6, 0xe7, 0x0b, 0xd0, 0x9a, 0x56, 0xc5, 0x62, 0x6f, 0x71, 0x2b, 0xe7, + 0x75, 0x81, 0x76, 0xd2, +}; +static const unsigned char kat3176_persstr[] = { + 0x87, 0x01, 0x89, 0x78, 0x02, 0x33, 0x90, 0xa0, 0x79, 0xd1, 0x40, 0x95, + 0x4b, 0xc0, 0xae, 0xa4, 0x75, 0xec, 0x63, 0xee, 0x92, 0x7f, 0x85, 0x58, + 0x9a, 0x4b, 0x8f, 0x76, 0xbf, 0xaa, 0xce, 0x34, +}; +static const unsigned char kat3176_entropyinpr1[] = { + 0xcc, 0x58, 0x25, 0x7c, 0xd6, 0x17, 0x27, 0x2a, 0x1a, 0x9e, 0xf8, 0x93, + 0xdb, 0xc2, 0xf8, 0x16, 0xaf, 0x39, 0xdf, 0x60, 0xda, 0xf4, 0xc1, 0x95, +}; +static const unsigned char kat3176_addinpr1[] = { + 0x00, 0xfe, 0x5a, 0x07, 0x96, 0x6b, 0x04, 0x5c, 0xec, 0x2d, 0x12, 0x5d, + 0x35, 0x5b, 0xdb, 0xe7, 0xc3, 0xa0, 0x33, 0xff, 0x8e, 0x41, 0x79, 0x77, + 0x74, 0xc8, 0xbd, 0x2f, 0xcf, 0x1f, 0x80, 0xd2, +}; +static const unsigned char kat3176_entropyinpr2[] = { + 0x37, 0x8a, 0x80, 0x77, 0xd2, 0x75, 0x39, 0x7e, 0x36, 0x19, 0xb3, 0xe2, + 0xda, 0x5b, 0xe3, 0x04, 0xe3, 0x23, 0x01, 0x92, 0x55, 0x36, 0xb3, 0x84, +}; +static const unsigned char kat3176_addinpr2[] = { + 0xa9, 0xd5, 0x73, 0xfc, 0x30, 0x39, 0x2a, 0x00, 0x0f, 0xb3, 0x12, 0xa0, + 0x69, 0xec, 0x25, 0x38, 0x61, 0x4c, 0x47, 0xa1, 0xd4, 0x7b, 0x03, 0x4c, + 0xa8, 0x42, 0xc2, 0xb9, 0x1d, 0x9d, 0xe6, 0x8f, +}; +static const unsigned char kat3176_retbits[] = { + 0x4c, 0xbe, 0x32, 0x92, 0x2b, 0x8a, 0x5c, 0x02, 0x96, 0xd6, 0x22, 0x5d, + 0x23, 0x8d, 0x50, 0x15, 0x3f, 0x59, 0x04, 0x53, 0x87, 0xd8, 0x4a, 0x96, + 0x06, 0x69, 0x69, 0xb6, 0x10, 0x34, 0x42, 0x02, 0xfc, 0xcd, 0x9c, 0x3a, + 0x5f, 0xfc, 0x59, 0x84, 0x50, 0x01, 0xec, 0x04, 0x16, 0x59, 0x08, 0xeb, + 0x40, 0xe3, 0xa8, 0x38, 0xfa, 0xc1, 0x9e, 0x7b, 0x2d, 0xe1, 0x3e, 0x34, + 0x55, 0xf3, 0x86, 0xa1, +}; +static const struct drbg_kat_pr_true kat3176_t = { + 10, kat3176_entropyin, kat3176_nonce, kat3176_persstr, + kat3176_entropyinpr1, kat3176_addinpr1, kat3176_entropyinpr2, + kat3176_addinpr2, kat3176_retbits +}; +static const struct drbg_kat kat3176 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3176_t +}; + +static const unsigned char kat3177_entropyin[] = { + 0x25, 0xc4, 0x47, 0x8a, 0x5d, 0xa9, 0x93, 0xae, 0xe1, 0x1f, 0xcd, 0x21, + 0x0c, 0x6e, 0xa2, 0x95, 0x3e, 0x4f, 0x4e, 0x07, 0x19, 0xa9, 0xf2, 0xc4, +}; +static const unsigned char kat3177_nonce[] = { + 0xbf, 0xb7, 0x47, 0xf4, 0xfc, 0xf2, 0x9b, 0x12, 0xb1, 0xf8, 0x74, 0x49, + 0x8e, 0xd8, 0x78, 0x20, +}; +static const unsigned char kat3177_persstr[] = { + 0x94, 0xb2, 0xb2, 0x79, 0x9f, 0xa8, 0x9b, 0xea, 0x02, 0x94, 0x2a, 0x93, + 0x8a, 0xa3, 0x14, 0x17, 0x32, 0x1c, 0x9f, 0xbd, 0xcb, 0x93, 0x8d, 0x45, + 0xae, 0x1a, 0xa7, 0x9c, 0x2b, 0x7e, 0x0d, 0xf7, +}; +static const unsigned char kat3177_entropyinpr1[] = { + 0x29, 0x1f, 0xa6, 0xed, 0x11, 0x9a, 0x19, 0x4b, 0x24, 0x8e, 0xf9, 0x0b, + 0xbb, 0x32, 0xbf, 0x10, 0xb6, 0x6e, 0x15, 0x0b, 0xd8, 0x73, 0x42, 0x82, +}; +static const unsigned char kat3177_addinpr1[] = { + 0xdd, 0x2a, 0xd4, 0xcd, 0xd6, 0xf4, 0x02, 0x28, 0x64, 0x45, 0x05, 0xd4, + 0x00, 0x70, 0x74, 0x09, 0x52, 0x66, 0x5e, 0xb9, 0xbb, 0xb6, 0xc5, 0x25, + 0x9f, 0x5f, 0xeb, 0xf3, 0xe8, 0xfa, 0x15, 0xa6, +}; +static const unsigned char kat3177_entropyinpr2[] = { + 0x0e, 0xec, 0xb9, 0x82, 0x83, 0x1e, 0x47, 0xa6, 0xcf, 0x5f, 0x28, 0xc1, + 0xab, 0xbc, 0x42, 0xd0, 0x49, 0x06, 0xef, 0x3e, 0x64, 0xc5, 0x7c, 0xbc, +}; +static const unsigned char kat3177_addinpr2[] = { + 0xbf, 0xd3, 0xe1, 0xff, 0x15, 0x30, 0x66, 0x7c, 0xcb, 0x44, 0xd4, 0x1f, + 0x8c, 0x82, 0x70, 0x3c, 0x22, 0x59, 0x8d, 0xbf, 0x93, 0x30, 0x46, 0x42, + 0x6c, 0xc1, 0xfa, 0xad, 0xdf, 0x6a, 0x2f, 0xaf, +}; +static const unsigned char kat3177_retbits[] = { + 0x11, 0x7b, 0x34, 0xd0, 0x1e, 0xe0, 0xa6, 0xb9, 0x72, 0x0d, 0x77, 0xad, + 0xcf, 0x8f, 0xa8, 0x45, 0x0d, 0xe0, 0x8a, 0x81, 0xac, 0x62, 0xcc, 0xde, + 0x36, 0x44, 0xd5, 0x81, 0x4b, 0xd6, 0xea, 0xb9, 0x67, 0x92, 0x82, 0x9b, + 0x1f, 0x0c, 0x56, 0xdf, 0x87, 0xb8, 0xec, 0xf0, 0x23, 0x1e, 0x1b, 0x76, + 0x80, 0x36, 0x74, 0x42, 0xa8, 0xdd, 0xcb, 0x3b, 0x5a, 0x12, 0xf1, 0xd5, + 0xf7, 0x17, 0xea, 0x13, +}; +static const struct drbg_kat_pr_true kat3177_t = { + 11, kat3177_entropyin, kat3177_nonce, kat3177_persstr, + kat3177_entropyinpr1, kat3177_addinpr1, kat3177_entropyinpr2, + kat3177_addinpr2, kat3177_retbits +}; +static const struct drbg_kat kat3177 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3177_t +}; + +static const unsigned char kat3178_entropyin[] = { + 0xec, 0xbc, 0x26, 0x4c, 0xf6, 0x6c, 0x64, 0x73, 0x7f, 0xe1, 0x4d, 0x89, + 0xc1, 0x70, 0xb0, 0x7e, 0x9c, 0x11, 0x5e, 0x1c, 0xcf, 0x12, 0x8f, 0x29, +}; +static const unsigned char kat3178_nonce[] = { + 0x52, 0x85, 0xcf, 0x4c, 0x6c, 0xe8, 0x65, 0x64, 0xa8, 0x82, 0xc8, 0x50, + 0x83, 0x81, 0x83, 0xb1, +}; +static const unsigned char kat3178_persstr[] = { + 0xe7, 0xfd, 0xde, 0x2b, 0xda, 0xcd, 0xc4, 0x7e, 0xbf, 0x2f, 0x95, 0x67, + 0x45, 0xad, 0x62, 0xde, 0xae, 0x58, 0xac, 0xa3, 0xbe, 0x9f, 0x87, 0x5d, + 0x13, 0xe7, 0xac, 0xa9, 0xbb, 0x79, 0xee, 0xe3, +}; +static const unsigned char kat3178_entropyinpr1[] = { + 0xec, 0xa9, 0xee, 0x54, 0xef, 0x82, 0x95, 0xd5, 0x36, 0x83, 0x0c, 0x9e, + 0x17, 0x8e, 0x95, 0x81, 0x25, 0x7d, 0xc4, 0xe1, 0xcb, 0x7b, 0xed, 0x06, +}; +static const unsigned char kat3178_addinpr1[] = { + 0x79, 0xa5, 0x8a, 0x26, 0xef, 0x4b, 0xa3, 0x2f, 0xb6, 0x57, 0x64, 0xf2, + 0xed, 0x12, 0x3b, 0xb6, 0x9d, 0x96, 0x95, 0x6b, 0x72, 0x94, 0x71, 0x30, + 0x08, 0xce, 0x82, 0x82, 0x6b, 0xe2, 0x35, 0x82, +}; +static const unsigned char kat3178_entropyinpr2[] = { + 0x6a, 0x2a, 0xb4, 0x6a, 0x06, 0xb3, 0x19, 0x5f, 0xad, 0x95, 0x42, 0xe3, + 0xb0, 0x93, 0x51, 0xee, 0x4c, 0x47, 0x01, 0x7e, 0x29, 0x85, 0x76, 0x1d, +}; +static const unsigned char kat3178_addinpr2[] = { + 0xd0, 0x01, 0xe9, 0x02, 0x99, 0xa2, 0x74, 0x36, 0x5e, 0x42, 0x90, 0xca, + 0x57, 0x7c, 0x51, 0x71, 0x3e, 0xd4, 0xaf, 0xa3, 0x15, 0x01, 0xe3, 0x8d, + 0x1a, 0x5a, 0xf1, 0x4c, 0x4f, 0x4b, 0x6f, 0xfb, +}; +static const unsigned char kat3178_retbits[] = { + 0xce, 0x4f, 0x86, 0x1a, 0x93, 0xa2, 0x02, 0x88, 0xc3, 0x98, 0x61, 0xc8, + 0xe4, 0xcc, 0x39, 0xa8, 0xbf, 0x36, 0xae, 0x74, 0x07, 0x11, 0xd6, 0xbe, + 0x53, 0x51, 0x2f, 0xda, 0x9c, 0x12, 0x58, 0xff, 0x18, 0x76, 0x99, 0x37, + 0xa9, 0x2e, 0x3d, 0x31, 0x73, 0xb6, 0xf0, 0x5c, 0xd7, 0x5c, 0x66, 0xc2, + 0xaf, 0xb9, 0x36, 0x0e, 0xab, 0x82, 0x9a, 0x3c, 0xa0, 0x30, 0xe8, 0x50, + 0xed, 0x67, 0xde, 0xd7, +}; +static const struct drbg_kat_pr_true kat3178_t = { + 12, kat3178_entropyin, kat3178_nonce, kat3178_persstr, + kat3178_entropyinpr1, kat3178_addinpr1, kat3178_entropyinpr2, + kat3178_addinpr2, kat3178_retbits +}; +static const struct drbg_kat kat3178 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3178_t +}; + +static const unsigned char kat3179_entropyin[] = { + 0xde, 0xa6, 0xaa, 0x6f, 0x6e, 0xac, 0x44, 0x74, 0xf2, 0x8b, 0x99, 0x28, + 0xc5, 0xa1, 0x13, 0xf2, 0x5f, 0xc1, 0x36, 0x92, 0x96, 0x78, 0xcf, 0xb5, +}; +static const unsigned char kat3179_nonce[] = { + 0xd4, 0x5d, 0x82, 0xc8, 0x55, 0x03, 0xb9, 0x68, 0xce, 0x9a, 0x99, 0xe6, + 0xfd, 0x4b, 0x4a, 0x18, +}; +static const unsigned char kat3179_persstr[] = { + 0x13, 0x10, 0x36, 0xe0, 0xea, 0x67, 0xe8, 0xa2, 0x0d, 0x88, 0xbf, 0xf9, + 0xfe, 0x3b, 0x27, 0x3c, 0x15, 0x3a, 0x3d, 0x6d, 0xaa, 0x16, 0xdd, 0x3e, + 0xed, 0xab, 0xeb, 0x65, 0xa8, 0x42, 0xc4, 0xde, +}; +static const unsigned char kat3179_entropyinpr1[] = { + 0x73, 0xed, 0xb4, 0x99, 0x39, 0x77, 0x26, 0x65, 0xfa, 0x69, 0x02, 0x68, + 0x94, 0x17, 0x51, 0xee, 0x2a, 0xec, 0x45, 0x0c, 0xcc, 0x37, 0xad, 0xa3, +}; +static const unsigned char kat3179_addinpr1[] = { + 0x4b, 0xcc, 0x3c, 0xb9, 0x8c, 0x54, 0x72, 0x97, 0xb3, 0x62, 0x2c, 0x5a, + 0xc2, 0xae, 0xa0, 0x46, 0x38, 0xb3, 0x03, 0x7c, 0x06, 0x9b, 0x09, 0x29, + 0xa3, 0xfe, 0x00, 0xc4, 0xe2, 0x0e, 0x65, 0x4a, +}; +static const unsigned char kat3179_entropyinpr2[] = { + 0x5b, 0x41, 0x5f, 0xd0, 0x08, 0x84, 0x04, 0xed, 0xbb, 0xda, 0xd4, 0x1f, + 0xe6, 0x37, 0x8b, 0xb5, 0x64, 0x7c, 0xeb, 0x84, 0x2b, 0xf9, 0xb3, 0x34, +}; +static const unsigned char kat3179_addinpr2[] = { + 0xa2, 0xb3, 0x43, 0x26, 0x97, 0xa6, 0xa8, 0xd1, 0xe0, 0x15, 0xaa, 0xcc, + 0xbb, 0x70, 0x22, 0x1d, 0x87, 0x38, 0x25, 0x5f, 0xf4, 0x59, 0xa1, 0x27, + 0x0a, 0xef, 0x40, 0x85, 0xd9, 0xee, 0x7c, 0xc0, +}; +static const unsigned char kat3179_retbits[] = { + 0xa5, 0xd9, 0xc0, 0xdf, 0xfd, 0xfa, 0xa1, 0xcc, 0x8d, 0x28, 0x44, 0xbc, + 0x31, 0x55, 0x31, 0xca, 0x79, 0x3b, 0x0b, 0x45, 0x93, 0x59, 0x61, 0xdf, + 0xcd, 0xc0, 0x02, 0xb8, 0x7d, 0xd5, 0x2c, 0x72, 0xe4, 0x52, 0xb3, 0x33, + 0x0f, 0xf5, 0x39, 0x7b, 0x0a, 0x2e, 0x0b, 0x6b, 0xb9, 0xf7, 0x18, 0xae, + 0xac, 0xb5, 0x1d, 0x4f, 0xe6, 0xa2, 0x2f, 0x9f, 0x1b, 0xbb, 0xa9, 0x1a, + 0x44, 0x9c, 0x08, 0xaa, +}; +static const struct drbg_kat_pr_true kat3179_t = { + 13, kat3179_entropyin, kat3179_nonce, kat3179_persstr, + kat3179_entropyinpr1, kat3179_addinpr1, kat3179_entropyinpr2, + kat3179_addinpr2, kat3179_retbits +}; +static const struct drbg_kat kat3179 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3179_t +}; + +static const unsigned char kat3180_entropyin[] = { + 0x6d, 0x78, 0x46, 0xfa, 0xe1, 0x60, 0xf3, 0xcb, 0xe1, 0x0c, 0xad, 0x6e, + 0x49, 0x64, 0xed, 0x11, 0x93, 0xb2, 0x43, 0x7f, 0x68, 0x8b, 0x13, 0x34, +}; +static const unsigned char kat3180_nonce[] = { + 0x86, 0x8a, 0xeb, 0x39, 0xea, 0xfa, 0xa0, 0xff, 0xec, 0xc5, 0x15, 0xae, + 0xc7, 0x2b, 0xd0, 0x15, +}; +static const unsigned char kat3180_persstr[] = { + 0x65, 0x98, 0x2c, 0x2a, 0x31, 0xe7, 0xba, 0xf2, 0xf9, 0xaa, 0x99, 0xc8, + 0x50, 0xd1, 0x48, 0x38, 0x69, 0xf5, 0xd8, 0x73, 0x08, 0xdb, 0x77, 0xb0, + 0x74, 0x47, 0xc4, 0x0b, 0x35, 0xaf, 0x36, 0xcf, +}; +static const unsigned char kat3180_entropyinpr1[] = { + 0xac, 0xc7, 0xb2, 0xd4, 0x2e, 0xcd, 0x15, 0xbd, 0x12, 0xe7, 0xac, 0xc4, + 0x11, 0x47, 0x62, 0x2f, 0x42, 0x6b, 0x3b, 0x55, 0x41, 0x16, 0x05, 0x23, +}; +static const unsigned char kat3180_addinpr1[] = { + 0x00, 0x2c, 0x0b, 0x6d, 0x4e, 0x02, 0xfd, 0xe6, 0x29, 0xc9, 0xc8, 0xde, + 0x23, 0xe6, 0x8e, 0x6c, 0xb8, 0xc9, 0x06, 0xc2, 0xff, 0x7c, 0x75, 0xb3, + 0xb8, 0x42, 0xa5, 0xa7, 0xb3, 0x0a, 0x42, 0x5f, +}; +static const unsigned char kat3180_entropyinpr2[] = { + 0xb4, 0x60, 0x29, 0x9d, 0xd4, 0xe2, 0x9f, 0x27, 0x95, 0x88, 0x7b, 0x2e, + 0xd3, 0x98, 0x24, 0x6f, 0x81, 0x57, 0x01, 0x09, 0x5d, 0x55, 0x30, 0xac, +}; +static const unsigned char kat3180_addinpr2[] = { + 0x55, 0x1d, 0xd2, 0xd3, 0xe9, 0xd6, 0xab, 0x9f, 0x06, 0xed, 0xa8, 0xec, + 0x44, 0x81, 0xde, 0xc7, 0xb4, 0xe9, 0xbc, 0x9d, 0x5a, 0x61, 0x3d, 0x03, + 0x6b, 0xe2, 0x8b, 0x36, 0x83, 0xb2, 0x5d, 0x9e, +}; +static const unsigned char kat3180_retbits[] = { + 0xdd, 0x0e, 0x03, 0xed, 0xdb, 0x23, 0x20, 0xff, 0xb8, 0xc6, 0x4b, 0x61, + 0xf5, 0xdf, 0x41, 0x54, 0x5b, 0x80, 0xae, 0x74, 0xfe, 0x2d, 0x52, 0xc5, + 0xd5, 0xe7, 0x03, 0x24, 0x37, 0x49, 0xd8, 0x54, 0xaa, 0xe6, 0x85, 0xc5, + 0x54, 0xdd, 0x18, 0x36, 0x4c, 0x3e, 0xbc, 0x84, 0xab, 0x19, 0x96, 0xa9, + 0x9f, 0xa3, 0xb3, 0x76, 0xb1, 0x0a, 0x94, 0xe4, 0x10, 0xd7, 0xcd, 0x8e, + 0x56, 0xb6, 0x73, 0x88, +}; +static const struct drbg_kat_pr_true kat3180_t = { + 14, kat3180_entropyin, kat3180_nonce, kat3180_persstr, + kat3180_entropyinpr1, kat3180_addinpr1, kat3180_entropyinpr2, + kat3180_addinpr2, kat3180_retbits +}; +static const struct drbg_kat kat3180 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3180_t +}; + +static const unsigned char kat3181_entropyin[] = { + 0x65, 0xde, 0xd9, 0x3b, 0xaa, 0x63, 0xe6, 0x35, 0x18, 0xc3, 0x30, 0x3d, + 0x6c, 0xd9, 0xdf, 0x74, 0xa9, 0xc6, 0x46, 0x40, 0x86, 0x52, 0xa9, 0x41, +}; +static const unsigned char kat3181_nonce[] = { + 0x5d, 0xfa, 0xf4, 0x84, 0x37, 0x92, 0xbf, 0x8c, 0x6a, 0xc9, 0x08, 0x39, + 0xba, 0xbe, 0x40, 0xd4, +}; +static const unsigned char kat3181_persstr[] = {0}; +static const unsigned char kat3181_entropyinpr1[] = { + 0x24, 0xc2, 0x8d, 0xdb, 0xbd, 0x91, 0x6b, 0xfc, 0xc6, 0xd9, 0x6c, 0x00, + 0xe2, 0xc1, 0x0e, 0x1a, 0x0f, 0x0a, 0x02, 0x31, 0xc1, 0xb7, 0x46, 0x68, +}; +static const unsigned char kat3181_addinpr1[] = {0}; +static const unsigned char kat3181_entropyinpr2[] = { + 0x03, 0x15, 0x50, 0x4c, 0xc3, 0xd7, 0x84, 0x18, 0xc7, 0x34, 0x6d, 0xaf, + 0xdb, 0xc0, 0xa4, 0x27, 0x6a, 0xe3, 0xa9, 0xc4, 0x7d, 0x5f, 0x55, 0x7a, +}; +static const unsigned char kat3181_addinpr2[] = {0}; +static const unsigned char kat3181_retbits[] = { + 0x0c, 0x21, 0x98, 0xb8, 0x27, 0xd6, 0x66, 0x48, 0xca, 0xb1, 0xdc, 0x7d, + 0xd9, 0x28, 0x71, 0x25, 0xd4, 0x15, 0xf9, 0x33, 0xcf, 0xf7, 0x1c, 0x8d, + 0xa0, 0x11, 0xb8, 0xda, 0x7b, 0xeb, 0x19, 0x1d, 0x8e, 0x94, 0x3a, 0x6d, + 0xa1, 0x7d, 0x69, 0xa1, 0x6f, 0xc4, 0xbd, 0xa4, 0x22, 0x1e, 0xe6, 0xd5, + 0x51, 0x2f, 0xaf, 0x4c, 0x69, 0x27, 0x14, 0x1b, 0xe4, 0xd0, 0x60, 0x3c, + 0x9f, 0x69, 0xca, 0x7c, +}; +static const struct drbg_kat_pr_true kat3181_t = { + 0, kat3181_entropyin, kat3181_nonce, kat3181_persstr, + kat3181_entropyinpr1, kat3181_addinpr1, kat3181_entropyinpr2, + kat3181_addinpr2, kat3181_retbits +}; +static const struct drbg_kat kat3181 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3181_t +}; + +static const unsigned char kat3182_entropyin[] = { + 0x1c, 0x7d, 0xd8, 0x91, 0x38, 0xc3, 0x81, 0x04, 0x7b, 0x7e, 0x2d, 0x44, + 0x23, 0xe0, 0xc3, 0x2d, 0xc3, 0xa5, 0x9c, 0x1b, 0x65, 0xd5, 0x45, 0x47, +}; +static const unsigned char kat3182_nonce[] = { + 0x4e, 0xfa, 0xc8, 0x73, 0xc9, 0xf3, 0x15, 0xd6, 0xf7, 0x72, 0x78, 0xbc, + 0x9c, 0xff, 0xa3, 0x48, +}; +static const unsigned char kat3182_persstr[] = {0}; +static const unsigned char kat3182_entropyinpr1[] = { + 0x97, 0xc8, 0xb3, 0xa8, 0x31, 0x8b, 0x5c, 0xda, 0x25, 0xb2, 0x6e, 0xda, + 0x15, 0xfc, 0x87, 0x18, 0x3d, 0xda, 0x7f, 0x60, 0x51, 0xb2, 0x39, 0xcd, +}; +static const unsigned char kat3182_addinpr1[] = {0}; +static const unsigned char kat3182_entropyinpr2[] = { + 0x80, 0xfd, 0x70, 0x57, 0xee, 0xff, 0xad, 0x66, 0x5f, 0x86, 0x1b, 0xd6, + 0xa0, 0x36, 0x61, 0x54, 0xb6, 0xd8, 0x73, 0x9d, 0x25, 0x9f, 0xce, 0xa6, +}; +static const unsigned char kat3182_addinpr2[] = {0}; +static const unsigned char kat3182_retbits[] = { + 0x05, 0xc0, 0x5b, 0x9c, 0xb2, 0xdd, 0x98, 0xd5, 0x0f, 0xd1, 0xeb, 0x24, + 0x57, 0x97, 0xa0, 0x46, 0x3f, 0xa7, 0xfa, 0xd9, 0xca, 0x4f, 0xc4, 0xef, + 0x7e, 0x41, 0x14, 0x78, 0x94, 0x0f, 0x4c, 0xb2, 0xfb, 0x74, 0x33, 0x32, + 0x2a, 0xad, 0xb6, 0xc6, 0x03, 0x3f, 0x6b, 0xf2, 0xdd, 0xa9, 0xba, 0x53, + 0x4a, 0xff, 0x84, 0xae, 0x69, 0xa0, 0xf2, 0xed, 0x16, 0x8d, 0xee, 0x69, + 0x19, 0xeb, 0xae, 0x13, +}; +static const struct drbg_kat_pr_true kat3182_t = { + 1, kat3182_entropyin, kat3182_nonce, kat3182_persstr, + kat3182_entropyinpr1, kat3182_addinpr1, kat3182_entropyinpr2, + kat3182_addinpr2, kat3182_retbits +}; +static const struct drbg_kat kat3182 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3182_t +}; + +static const unsigned char kat3183_entropyin[] = { + 0xc0, 0x52, 0xcc, 0x8f, 0xf9, 0xb8, 0xc4, 0x16, 0x7d, 0x68, 0x81, 0x9f, + 0x49, 0x28, 0x50, 0x7a, 0x0b, 0xe7, 0x54, 0x9f, 0x30, 0x64, 0x77, 0xd2, +}; +static const unsigned char kat3183_nonce[] = { + 0xa9, 0xa2, 0x5f, 0x2d, 0x3d, 0x0f, 0x6a, 0x57, 0xf9, 0x73, 0x10, 0xfd, + 0xef, 0x22, 0xb7, 0xbf, +}; +static const unsigned char kat3183_persstr[] = {0}; +static const unsigned char kat3183_entropyinpr1[] = { + 0x0c, 0x49, 0x77, 0x76, 0x59, 0xac, 0xe8, 0x08, 0x54, 0x25, 0x0b, 0xac, + 0x32, 0xff, 0x61, 0x67, 0x0a, 0xaf, 0x9a, 0x1a, 0x48, 0x54, 0xc3, 0xfa, +}; +static const unsigned char kat3183_addinpr1[] = {0}; +static const unsigned char kat3183_entropyinpr2[] = { + 0xdf, 0xa4, 0xba, 0x0f, 0xf9, 0xdf, 0xc9, 0xb9, 0xe7, 0xa2, 0xc8, 0xa7, + 0x0c, 0xc5, 0x1d, 0xc2, 0x2c, 0x43, 0xb2, 0xab, 0x06, 0x30, 0x1d, 0x3e, +}; +static const unsigned char kat3183_addinpr2[] = {0}; +static const unsigned char kat3183_retbits[] = { + 0x5e, 0xbe, 0x20, 0xb6, 0xfd, 0xae, 0x03, 0x90, 0x0f, 0xa5, 0x0b, 0x22, + 0x7c, 0xee, 0x83, 0xea, 0x51, 0x45, 0x9d, 0xc7, 0xf8, 0x2e, 0x79, 0x88, + 0x71, 0x21, 0x73, 0xd9, 0xbe, 0xc1, 0x1b, 0x98, 0xaa, 0x29, 0xb0, 0x2d, + 0x01, 0xf9, 0x1a, 0xa2, 0x2d, 0xfe, 0x78, 0xc6, 0x34, 0xec, 0x50, 0x46, + 0x14, 0xb0, 0x92, 0xa5, 0x0b, 0x62, 0x87, 0x32, 0x01, 0xf4, 0x36, 0x1f, + 0xb6, 0xcd, 0xa7, 0xac, +}; +static const struct drbg_kat_pr_true kat3183_t = { + 2, kat3183_entropyin, kat3183_nonce, kat3183_persstr, + kat3183_entropyinpr1, kat3183_addinpr1, kat3183_entropyinpr2, + kat3183_addinpr2, kat3183_retbits +}; +static const struct drbg_kat kat3183 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3183_t +}; + +static const unsigned char kat3184_entropyin[] = { + 0xfe, 0x55, 0xdc, 0x8e, 0xc8, 0x54, 0xa9, 0xa1, 0x87, 0xe2, 0xa3, 0x65, + 0xbb, 0xfb, 0x45, 0xb4, 0xbf, 0xe6, 0x22, 0xfc, 0x4c, 0x78, 0xcf, 0xf0, +}; +static const unsigned char kat3184_nonce[] = { + 0x5d, 0x14, 0x06, 0xf1, 0xc9, 0x39, 0x67, 0x7d, 0x63, 0x26, 0x5c, 0x28, + 0xdd, 0x7a, 0xd3, 0xd2, +}; +static const unsigned char kat3184_persstr[] = {0}; +static const unsigned char kat3184_entropyinpr1[] = { + 0x99, 0x6e, 0xe0, 0xa0, 0x8d, 0x56, 0xd1, 0xb3, 0xd7, 0xc6, 0x5e, 0x5e, + 0xe5, 0x06, 0xc8, 0x6f, 0x05, 0x00, 0x11, 0x29, 0x92, 0x91, 0x25, 0x39, +}; +static const unsigned char kat3184_addinpr1[] = {0}; +static const unsigned char kat3184_entropyinpr2[] = { + 0xed, 0x1b, 0x49, 0xe7, 0x73, 0x04, 0xe5, 0xbf, 0x32, 0x53, 0xd8, 0x5a, + 0xe3, 0x10, 0x25, 0x69, 0x40, 0x98, 0xb1, 0x8f, 0x22, 0x48, 0xe6, 0xa9, +}; +static const unsigned char kat3184_addinpr2[] = {0}; +static const unsigned char kat3184_retbits[] = { + 0x60, 0xae, 0xe5, 0x65, 0x89, 0x83, 0x59, 0xcb, 0xd4, 0x75, 0x73, 0x97, + 0x91, 0x3a, 0x3a, 0x38, 0x74, 0x5b, 0x6b, 0x5e, 0xad, 0xbe, 0x70, 0x32, + 0x51, 0xa5, 0x3e, 0xb4, 0x8c, 0x6b, 0x5d, 0x7e, 0x3a, 0xbc, 0x08, 0x19, + 0xe4, 0x65, 0xad, 0xb7, 0xdd, 0xde, 0x57, 0xb8, 0x2c, 0x56, 0x8e, 0x5f, + 0x9c, 0x47, 0x4b, 0x07, 0x05, 0x5b, 0x8a, 0x82, 0x88, 0x06, 0x2c, 0xd9, + 0x34, 0x80, 0xf6, 0x47, +}; +static const struct drbg_kat_pr_true kat3184_t = { + 3, kat3184_entropyin, kat3184_nonce, kat3184_persstr, + kat3184_entropyinpr1, kat3184_addinpr1, kat3184_entropyinpr2, + kat3184_addinpr2, kat3184_retbits +}; +static const struct drbg_kat kat3184 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3184_t +}; + +static const unsigned char kat3185_entropyin[] = { + 0xbe, 0x86, 0xc9, 0xb0, 0xfb, 0x9b, 0xa5, 0x83, 0x40, 0xee, 0x37, 0xdc, + 0x73, 0x1a, 0xad, 0xfc, 0xcf, 0x42, 0x2b, 0x88, 0xe2, 0xdf, 0x4c, 0xd0, +}; +static const unsigned char kat3185_nonce[] = { + 0x3b, 0x2e, 0x3f, 0x05, 0x99, 0x36, 0xf7, 0xe0, 0xb2, 0xdd, 0x19, 0x96, + 0x8a, 0xbe, 0x04, 0x8a, +}; +static const unsigned char kat3185_persstr[] = {0}; +static const unsigned char kat3185_entropyinpr1[] = { + 0x8c, 0x5a, 0xe3, 0xfa, 0xf2, 0xc1, 0xc0, 0xad, 0xfb, 0x1d, 0xc7, 0x6e, + 0xaa, 0xf3, 0x2b, 0xa6, 0x2d, 0x94, 0x9b, 0x5c, 0x5b, 0x6f, 0x51, 0x1a, +}; +static const unsigned char kat3185_addinpr1[] = {0}; +static const unsigned char kat3185_entropyinpr2[] = { + 0x9f, 0x80, 0xbc, 0xe2, 0xbb, 0x7f, 0x46, 0xb0, 0xd2, 0xca, 0xad, 0x51, + 0x51, 0xa8, 0x79, 0xf3, 0x55, 0xbc, 0x70, 0xb1, 0x1d, 0x4e, 0xf1, 0x75, +}; +static const unsigned char kat3185_addinpr2[] = {0}; +static const unsigned char kat3185_retbits[] = { + 0x44, 0x0b, 0xd1, 0xa9, 0x45, 0xb5, 0xca, 0x33, 0xbe, 0xb3, 0x8d, 0xf0, + 0xfb, 0xf2, 0xef, 0x44, 0xe5, 0x7c, 0xa4, 0xd6, 0x11, 0x83, 0xcb, 0xc3, + 0xa1, 0x5a, 0xc9, 0x7a, 0x65, 0xf7, 0x58, 0x84, 0xb2, 0x58, 0xf0, 0x3a, + 0xca, 0x22, 0x43, 0x94, 0x55, 0xc3, 0xd7, 0x9c, 0xad, 0xf8, 0x21, 0x92, + 0x3b, 0x02, 0xf2, 0xc5, 0xd4, 0x2e, 0xcc, 0x01, 0xdf, 0x53, 0x8f, 0x46, + 0x0e, 0x0e, 0x38, 0x9b, +}; +static const struct drbg_kat_pr_true kat3185_t = { + 4, kat3185_entropyin, kat3185_nonce, kat3185_persstr, + kat3185_entropyinpr1, kat3185_addinpr1, kat3185_entropyinpr2, + kat3185_addinpr2, kat3185_retbits +}; +static const struct drbg_kat kat3185 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3185_t +}; + +static const unsigned char kat3186_entropyin[] = { + 0x44, 0x7a, 0xec, 0xb6, 0xf5, 0x19, 0xce, 0x2d, 0x74, 0x2e, 0x38, 0x13, + 0xc6, 0xf4, 0x26, 0x2c, 0xe0, 0x02, 0x12, 0x14, 0x09, 0x09, 0xbe, 0x44, +}; +static const unsigned char kat3186_nonce[] = { + 0xca, 0x25, 0x86, 0x70, 0x52, 0x2e, 0x9f, 0xd5, 0xda, 0x81, 0x9c, 0xd1, + 0x7b, 0xea, 0xfc, 0x7f, +}; +static const unsigned char kat3186_persstr[] = {0}; +static const unsigned char kat3186_entropyinpr1[] = { + 0x43, 0x9b, 0xbf, 0x49, 0xf0, 0x7b, 0x1a, 0xd6, 0x14, 0x76, 0x17, 0x43, + 0x8f, 0x9e, 0xd8, 0xac, 0x27, 0x8d, 0x79, 0xac, 0xaf, 0x97, 0x23, 0xee, +}; +static const unsigned char kat3186_addinpr1[] = {0}; +static const unsigned char kat3186_entropyinpr2[] = { + 0x01, 0x05, 0xb9, 0x48, 0xce, 0xb8, 0x74, 0xec, 0x26, 0x60, 0xc8, 0xf0, + 0x90, 0xdc, 0x73, 0x18, 0x1a, 0x80, 0xc8, 0x56, 0x9b, 0xbf, 0xf0, 0x1c, +}; +static const unsigned char kat3186_addinpr2[] = {0}; +static const unsigned char kat3186_retbits[] = { + 0x1d, 0x74, 0xf3, 0xe7, 0x71, 0x19, 0x14, 0x2e, 0x38, 0x6a, 0x8f, 0x32, + 0x42, 0x93, 0xc0, 0xc4, 0xcd, 0xc9, 0x37, 0x27, 0x72, 0x3b, 0x03, 0xae, + 0x3a, 0x2a, 0x65, 0x4d, 0x5d, 0xc1, 0x4f, 0x7f, 0x0f, 0x34, 0xf5, 0xdf, + 0xd3, 0x1f, 0x6a, 0x42, 0xb1, 0x92, 0x81, 0x0c, 0x4a, 0xf7, 0x49, 0x48, + 0x18, 0x1a, 0x6f, 0xb8, 0x6e, 0xf3, 0xd6, 0x82, 0xce, 0x40, 0x92, 0xf6, + 0x67, 0xc7, 0xf8, 0x4f, +}; +static const struct drbg_kat_pr_true kat3186_t = { + 5, kat3186_entropyin, kat3186_nonce, kat3186_persstr, + kat3186_entropyinpr1, kat3186_addinpr1, kat3186_entropyinpr2, + kat3186_addinpr2, kat3186_retbits +}; +static const struct drbg_kat kat3186 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3186_t +}; + +static const unsigned char kat3187_entropyin[] = { + 0xfc, 0xf0, 0x7a, 0x2f, 0x22, 0x1b, 0xc9, 0x9f, 0x7c, 0x06, 0x87, 0x39, + 0x4c, 0x3c, 0x54, 0xa3, 0xaa, 0x41, 0x14, 0x9f, 0x3b, 0xef, 0xe8, 0x2b, +}; +static const unsigned char kat3187_nonce[] = { + 0xd7, 0x06, 0xc6, 0x39, 0x8e, 0xdd, 0x0b, 0x0f, 0x33, 0x48, 0x56, 0xe9, + 0x55, 0x3f, 0xca, 0x76, +}; +static const unsigned char kat3187_persstr[] = {0}; +static const unsigned char kat3187_entropyinpr1[] = { + 0x52, 0x63, 0x48, 0x84, 0xc2, 0x5c, 0x75, 0x53, 0x2b, 0x3e, 0x69, 0x14, + 0x51, 0xa4, 0x50, 0xd0, 0x94, 0xf3, 0x43, 0xb0, 0x94, 0x60, 0xcb, 0x4f, +}; +static const unsigned char kat3187_addinpr1[] = {0}; +static const unsigned char kat3187_entropyinpr2[] = { + 0x06, 0x84, 0x45, 0x6d, 0x99, 0x84, 0xb1, 0xee, 0x1b, 0x21, 0x06, 0x1a, + 0x52, 0x2f, 0x44, 0x55, 0x11, 0xf1, 0x52, 0x8d, 0xdd, 0xf6, 0x67, 0x2d, +}; +static const unsigned char kat3187_addinpr2[] = {0}; +static const unsigned char kat3187_retbits[] = { + 0x94, 0xe1, 0x68, 0x55, 0xa8, 0x5d, 0x38, 0xb2, 0x24, 0x73, 0x77, 0x2e, + 0x77, 0xbc, 0x7a, 0x5e, 0xca, 0xfc, 0xe0, 0x6a, 0xa8, 0x40, 0xa6, 0x4e, + 0xf1, 0x68, 0x7a, 0x2b, 0xa1, 0xef, 0xe0, 0x83, 0xdb, 0x3c, 0x6e, 0xc1, + 0x1a, 0x81, 0x0d, 0xe6, 0x96, 0x27, 0x18, 0x84, 0x32, 0xac, 0xd7, 0x32, + 0x79, 0x8d, 0xa6, 0xf0, 0x91, 0x25, 0xf8, 0x47, 0x9e, 0x67, 0x79, 0x1a, + 0xdd, 0x5c, 0xf3, 0xaa, +}; +static const struct drbg_kat_pr_true kat3187_t = { + 6, kat3187_entropyin, kat3187_nonce, kat3187_persstr, + kat3187_entropyinpr1, kat3187_addinpr1, kat3187_entropyinpr2, + kat3187_addinpr2, kat3187_retbits +}; +static const struct drbg_kat kat3187 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3187_t +}; + +static const unsigned char kat3188_entropyin[] = { + 0xcc, 0xa1, 0x39, 0xd3, 0x64, 0xc5, 0x11, 0x34, 0xf8, 0x2b, 0x6b, 0xfe, + 0x56, 0x56, 0x63, 0xbc, 0x1d, 0x8e, 0xa8, 0x9a, 0x0d, 0x0c, 0x1f, 0xdf, +}; +static const unsigned char kat3188_nonce[] = { + 0xe2, 0xb2, 0x34, 0xb0, 0x8f, 0x1f, 0xc8, 0xca, 0x26, 0xfd, 0x0e, 0x00, + 0xa1, 0x89, 0x87, 0xb1, +}; +static const unsigned char kat3188_persstr[] = {0}; +static const unsigned char kat3188_entropyinpr1[] = { + 0x65, 0x42, 0x07, 0x2d, 0x3c, 0x6d, 0x16, 0xa3, 0xcc, 0x06, 0x3d, 0x1f, + 0x5c, 0xaf, 0x93, 0x27, 0xca, 0x27, 0xb7, 0xdd, 0x60, 0xaa, 0x09, 0x29, +}; +static const unsigned char kat3188_addinpr1[] = {0}; +static const unsigned char kat3188_entropyinpr2[] = { + 0xd9, 0x71, 0xfd, 0xe0, 0x34, 0x5a, 0x91, 0x9a, 0xa9, 0x9f, 0xbb, 0x85, + 0x18, 0x4d, 0xc8, 0xc8, 0x51, 0xc7, 0x33, 0x24, 0xd9, 0x85, 0x22, 0x39, +}; +static const unsigned char kat3188_addinpr2[] = {0}; +static const unsigned char kat3188_retbits[] = { + 0xd4, 0x5e, 0x78, 0x5a, 0x64, 0x3d, 0x57, 0xbf, 0x49, 0x21, 0xb5, 0xfb, + 0x4a, 0x5f, 0xbe, 0x90, 0x89, 0xe4, 0x09, 0xe9, 0x32, 0x65, 0x8a, 0xb4, + 0xf7, 0x98, 0x15, 0xc7, 0xe0, 0x3b, 0xfb, 0xe1, 0xf7, 0x99, 0x1d, 0x82, + 0x98, 0xa3, 0x7c, 0xb8, 0x8c, 0xfe, 0xad, 0xe0, 0x3f, 0x0a, 0xe4, 0xee, + 0x5c, 0x80, 0x96, 0xeb, 0xb5, 0x21, 0xd8, 0x05, 0xfa, 0xff, 0x5c, 0xf1, + 0x1e, 0xd2, 0x2d, 0xef, +}; +static const struct drbg_kat_pr_true kat3188_t = { + 7, kat3188_entropyin, kat3188_nonce, kat3188_persstr, + kat3188_entropyinpr1, kat3188_addinpr1, kat3188_entropyinpr2, + kat3188_addinpr2, kat3188_retbits +}; +static const struct drbg_kat kat3188 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3188_t +}; + +static const unsigned char kat3189_entropyin[] = { + 0x2c, 0x04, 0xb0, 0x32, 0xa3, 0x87, 0x4d, 0x1b, 0xad, 0xaa, 0xdf, 0xde, + 0x39, 0x90, 0xb7, 0x0e, 0xbd, 0xa2, 0x66, 0x1e, 0x65, 0x9f, 0x60, 0xc0, +}; +static const unsigned char kat3189_nonce[] = { + 0x94, 0xa5, 0xc5, 0x88, 0xb6, 0x6b, 0xff, 0xd9, 0x0a, 0xe2, 0x07, 0x25, + 0x00, 0x3b, 0x39, 0x9c, +}; +static const unsigned char kat3189_persstr[] = {0}; +static const unsigned char kat3189_entropyinpr1[] = { + 0x9c, 0xb0, 0x14, 0x84, 0x41, 0x2f, 0x53, 0x09, 0x67, 0x28, 0xe3, 0xe1, + 0x0f, 0xc9, 0x0b, 0xe6, 0xa4, 0x50, 0x81, 0xee, 0x04, 0x7c, 0x52, 0xf4, +}; +static const unsigned char kat3189_addinpr1[] = {0}; +static const unsigned char kat3189_entropyinpr2[] = { + 0xa2, 0xe1, 0xea, 0x1c, 0x79, 0xde, 0xeb, 0x09, 0x5d, 0x54, 0x71, 0x62, + 0xe4, 0x54, 0x85, 0xdd, 0xb2, 0x65, 0x6a, 0x99, 0xbb, 0x3b, 0x67, 0x2e, +}; +static const unsigned char kat3189_addinpr2[] = {0}; +static const unsigned char kat3189_retbits[] = { + 0x26, 0x98, 0x06, 0x65, 0xee, 0x2f, 0xa8, 0x15, 0xd7, 0x39, 0xb5, 0x1e, + 0x9a, 0x9a, 0x46, 0xd0, 0xe6, 0x9f, 0x64, 0x9b, 0xe4, 0xeb, 0x9d, 0xc4, + 0x58, 0x9e, 0x5d, 0xcf, 0x16, 0x29, 0x73, 0x35, 0xa6, 0x26, 0xa6, 0xd9, + 0x0c, 0x14, 0x4c, 0x66, 0x07, 0x64, 0xfe, 0xe4, 0xfc, 0x61, 0xe8, 0x12, + 0x0e, 0x1b, 0x4c, 0x0e, 0xe0, 0x0e, 0x5c, 0x1a, 0xe2, 0xe6, 0x46, 0x6c, + 0x5d, 0x19, 0xec, 0x47, +}; +static const struct drbg_kat_pr_true kat3189_t = { + 8, kat3189_entropyin, kat3189_nonce, kat3189_persstr, + kat3189_entropyinpr1, kat3189_addinpr1, kat3189_entropyinpr2, + kat3189_addinpr2, kat3189_retbits +}; +static const struct drbg_kat kat3189 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3189_t +}; + +static const unsigned char kat3190_entropyin[] = { + 0xc2, 0xd9, 0x1a, 0xe5, 0x38, 0xee, 0xff, 0xf2, 0x5a, 0xad, 0x99, 0x49, + 0x17, 0x3f, 0x0d, 0x94, 0x92, 0x7e, 0xd5, 0xff, 0x29, 0xa9, 0xca, 0x4f, +}; +static const unsigned char kat3190_nonce[] = { + 0xb1, 0x58, 0x8d, 0xff, 0x4a, 0x1c, 0x49, 0xb6, 0x29, 0x1f, 0x8b, 0x14, + 0x1f, 0xef, 0x68, 0x1e, +}; +static const unsigned char kat3190_persstr[] = {0}; +static const unsigned char kat3190_entropyinpr1[] = { + 0x9f, 0x0f, 0x6e, 0x89, 0x78, 0x0d, 0x1c, 0x1e, 0x8b, 0xd0, 0x97, 0xff, + 0x03, 0xbd, 0x4b, 0x03, 0x5c, 0x0d, 0x31, 0x0a, 0xc3, 0xd2, 0x78, 0x22, +}; +static const unsigned char kat3190_addinpr1[] = {0}; +static const unsigned char kat3190_entropyinpr2[] = { + 0xa4, 0xc9, 0xa1, 0x4d, 0x3f, 0x84, 0x89, 0x66, 0x04, 0xe3, 0xfd, 0xc7, + 0x74, 0x40, 0x6b, 0xfe, 0x21, 0x24, 0x69, 0xec, 0x80, 0xb2, 0x66, 0x60, +}; +static const unsigned char kat3190_addinpr2[] = {0}; +static const unsigned char kat3190_retbits[] = { + 0x67, 0xf8, 0x2b, 0x1f, 0x1a, 0x0b, 0x38, 0x5a, 0x4d, 0x47, 0x75, 0xc0, + 0xe0, 0x95, 0x2b, 0x24, 0x66, 0x75, 0x27, 0x23, 0x56, 0x65, 0x49, 0x31, + 0x67, 0x8c, 0x85, 0x9d, 0x9a, 0x9b, 0xae, 0x53, 0x7c, 0xbb, 0x94, 0xad, + 0xe8, 0x2a, 0x98, 0xa6, 0x22, 0x14, 0x2a, 0x29, 0x3f, 0xc9, 0x91, 0xc4, + 0xdc, 0x85, 0xf2, 0x20, 0xf4, 0x86, 0x0a, 0x6b, 0xf2, 0xe5, 0x6e, 0xde, + 0x23, 0x12, 0x5d, 0xe0, +}; +static const struct drbg_kat_pr_true kat3190_t = { + 9, kat3190_entropyin, kat3190_nonce, kat3190_persstr, + kat3190_entropyinpr1, kat3190_addinpr1, kat3190_entropyinpr2, + kat3190_addinpr2, kat3190_retbits +}; +static const struct drbg_kat kat3190 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3190_t +}; + +static const unsigned char kat3191_entropyin[] = { + 0xfb, 0xc5, 0x36, 0x75, 0x13, 0x50, 0x9a, 0x1f, 0x24, 0xc1, 0x28, 0xd6, + 0x0c, 0x9c, 0x19, 0xeb, 0x04, 0xe4, 0x8b, 0xa9, 0xef, 0x92, 0x99, 0x68, +}; +static const unsigned char kat3191_nonce[] = { + 0x49, 0xa7, 0x82, 0x14, 0x70, 0x2b, 0x08, 0x17, 0x1b, 0x4e, 0xd9, 0x22, + 0x5f, 0xac, 0x5e, 0x71, +}; +static const unsigned char kat3191_persstr[] = {0}; +static const unsigned char kat3191_entropyinpr1[] = { + 0xa6, 0xb9, 0xa2, 0x86, 0xc2, 0xb3, 0xfe, 0x90, 0x2b, 0xc3, 0x24, 0xb5, + 0x37, 0xed, 0x2e, 0x01, 0x9e, 0x06, 0x56, 0xd8, 0x2d, 0xf1, 0xa8, 0xec, +}; +static const unsigned char kat3191_addinpr1[] = {0}; +static const unsigned char kat3191_entropyinpr2[] = { + 0xd3, 0x2f, 0xb0, 0x2f, 0xaf, 0xe6, 0x82, 0x3f, 0xd5, 0xdb, 0xff, 0x01, + 0xf1, 0x15, 0x45, 0x22, 0xde, 0x06, 0x6f, 0xfb, 0x39, 0x4b, 0x66, 0xbd, +}; +static const unsigned char kat3191_addinpr2[] = {0}; +static const unsigned char kat3191_retbits[] = { + 0x57, 0x29, 0x38, 0x56, 0x16, 0x6e, 0xfb, 0x76, 0x73, 0xfd, 0x98, 0x5f, + 0x2d, 0xb5, 0xd8, 0x29, 0x35, 0x18, 0xc0, 0x02, 0xac, 0x56, 0xdf, 0x95, + 0x5b, 0xe3, 0x1a, 0x65, 0xfe, 0x2e, 0xd8, 0x59, 0x4f, 0x61, 0x4c, 0xe2, + 0xb6, 0x96, 0x9b, 0x97, 0x59, 0xb4, 0x03, 0x86, 0x76, 0xd0, 0x4f, 0xfe, + 0xb0, 0x88, 0xa2, 0xf9, 0x68, 0x1e, 0x17, 0x90, 0xa0, 0xc1, 0x99, 0xe9, + 0xdf, 0xf4, 0x55, 0x8a, +}; +static const struct drbg_kat_pr_true kat3191_t = { + 10, kat3191_entropyin, kat3191_nonce, kat3191_persstr, + kat3191_entropyinpr1, kat3191_addinpr1, kat3191_entropyinpr2, + kat3191_addinpr2, kat3191_retbits +}; +static const struct drbg_kat kat3191 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3191_t +}; + +static const unsigned char kat3192_entropyin[] = { + 0x0a, 0x63, 0xe3, 0x74, 0x4a, 0xb8, 0x97, 0xab, 0xa4, 0xad, 0x07, 0x20, + 0x12, 0xc9, 0x49, 0xeb, 0xed, 0xb9, 0x87, 0xf4, 0xdf, 0x1d, 0x0c, 0x4f, +}; +static const unsigned char kat3192_nonce[] = { + 0xeb, 0xbf, 0x5c, 0xc1, 0x7b, 0xbd, 0x55, 0x62, 0xca, 0x15, 0xa9, 0x7d, + 0x3d, 0x7d, 0x8b, 0x45, +}; +static const unsigned char kat3192_persstr[] = {0}; +static const unsigned char kat3192_entropyinpr1[] = { + 0x6b, 0x52, 0x85, 0x2c, 0x1a, 0x59, 0x1b, 0xb7, 0x91, 0x89, 0x9b, 0xef, + 0xa4, 0xb5, 0xff, 0x36, 0x3e, 0x28, 0x98, 0x81, 0xb8, 0x1d, 0x6a, 0xdc, +}; +static const unsigned char kat3192_addinpr1[] = {0}; +static const unsigned char kat3192_entropyinpr2[] = { + 0x0b, 0xc3, 0x3b, 0xec, 0x70, 0x34, 0x76, 0xae, 0xc6, 0x8e, 0x65, 0x9c, + 0xa1, 0x13, 0xd0, 0x5d, 0x58, 0x0e, 0xb4, 0x46, 0x78, 0x9b, 0xc7, 0x8c, +}; +static const unsigned char kat3192_addinpr2[] = {0}; +static const unsigned char kat3192_retbits[] = { + 0xf8, 0x07, 0xfa, 0x57, 0x7e, 0x83, 0xf0, 0xc1, 0xd9, 0x9d, 0x29, 0x00, + 0xec, 0xab, 0x19, 0x3b, 0xc7, 0x61, 0xb0, 0x3c, 0x6f, 0x3c, 0x69, 0x70, + 0x0a, 0xa0, 0x1b, 0x5b, 0x3b, 0x9d, 0x37, 0x84, 0x25, 0x2c, 0x13, 0x71, + 0xf5, 0xe7, 0xba, 0xe4, 0x89, 0xbe, 0xf9, 0x33, 0xfe, 0xb1, 0xed, 0x78, + 0x50, 0x9e, 0x1c, 0x67, 0x96, 0x81, 0xe3, 0xe1, 0xc7, 0x2e, 0x2a, 0x7b, + 0x47, 0x7d, 0xd8, 0x4c, +}; +static const struct drbg_kat_pr_true kat3192_t = { + 11, kat3192_entropyin, kat3192_nonce, kat3192_persstr, + kat3192_entropyinpr1, kat3192_addinpr1, kat3192_entropyinpr2, + kat3192_addinpr2, kat3192_retbits +}; +static const struct drbg_kat kat3192 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3192_t +}; + +static const unsigned char kat3193_entropyin[] = { + 0x45, 0xf8, 0x01, 0xb7, 0x5b, 0xa9, 0x4b, 0x2b, 0x3e, 0xa2, 0xcb, 0x6f, + 0x8f, 0x37, 0xcb, 0x8c, 0x3a, 0x85, 0x49, 0x89, 0xbd, 0xe7, 0xc6, 0x7c, +}; +static const unsigned char kat3193_nonce[] = { + 0xd6, 0xdb, 0x6c, 0x7a, 0x04, 0xc1, 0x2e, 0x07, 0xa6, 0x17, 0x44, 0xcd, + 0x88, 0xbb, 0x61, 0xb6, +}; +static const unsigned char kat3193_persstr[] = {0}; +static const unsigned char kat3193_entropyinpr1[] = { + 0x6d, 0x54, 0x93, 0xfa, 0x07, 0xf9, 0x35, 0x4a, 0x48, 0x6b, 0xdd, 0xdf, + 0x14, 0x1b, 0x9c, 0xdd, 0x34, 0x89, 0xef, 0xff, 0xa7, 0xdf, 0xcc, 0x1b, +}; +static const unsigned char kat3193_addinpr1[] = {0}; +static const unsigned char kat3193_entropyinpr2[] = { + 0x5f, 0xc4, 0x0e, 0xfb, 0xd7, 0x9b, 0x54, 0xe1, 0xeb, 0x18, 0x40, 0x8a, + 0xc4, 0xfa, 0x1e, 0x1f, 0x42, 0x03, 0x07, 0xff, 0xd4, 0xfa, 0xbf, 0x7d, +}; +static const unsigned char kat3193_addinpr2[] = {0}; +static const unsigned char kat3193_retbits[] = { + 0x28, 0x5f, 0xe2, 0xc7, 0x91, 0x73, 0x5a, 0xc4, 0x55, 0x76, 0xad, 0x0d, + 0x07, 0xed, 0xa2, 0x58, 0x26, 0x50, 0x87, 0x8e, 0xc5, 0x99, 0x92, 0xeb, + 0xa8, 0x61, 0x7a, 0x66, 0x98, 0x4d, 0xd6, 0x2d, 0xa0, 0x9e, 0xae, 0x7e, + 0x39, 0x10, 0x9a, 0x4a, 0x2a, 0xbe, 0xa3, 0xf5, 0x64, 0xc4, 0xb7, 0x41, + 0xbb, 0xed, 0xcb, 0xa4, 0xcb, 0x1e, 0x51, 0x9a, 0x44, 0x15, 0x1f, 0x14, + 0x4a, 0xaf, 0x24, 0x1c, +}; +static const struct drbg_kat_pr_true kat3193_t = { + 12, kat3193_entropyin, kat3193_nonce, kat3193_persstr, + kat3193_entropyinpr1, kat3193_addinpr1, kat3193_entropyinpr2, + kat3193_addinpr2, kat3193_retbits +}; +static const struct drbg_kat kat3193 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3193_t +}; + +static const unsigned char kat3194_entropyin[] = { + 0x30, 0xbd, 0x67, 0x5b, 0x4b, 0x07, 0x1c, 0xb3, 0xc7, 0x76, 0xc9, 0x0a, + 0x5f, 0xa9, 0x58, 0xe2, 0xb0, 0x04, 0xc5, 0xd8, 0x1a, 0xb1, 0xb0, 0x60, +}; +static const unsigned char kat3194_nonce[] = { + 0x49, 0xc0, 0x30, 0xc9, 0x5d, 0xd3, 0xe5, 0xe8, 0x59, 0x29, 0xaf, 0x29, + 0xb2, 0x6a, 0xf8, 0x53, +}; +static const unsigned char kat3194_persstr[] = {0}; +static const unsigned char kat3194_entropyinpr1[] = { + 0x45, 0x36, 0xe8, 0x6a, 0x83, 0x0c, 0xd5, 0xfa, 0xd0, 0x12, 0x36, 0xce, + 0xec, 0x0d, 0x9f, 0x49, 0xb8, 0xfc, 0x1d, 0x56, 0xd6, 0xf6, 0x62, 0x3b, +}; +static const unsigned char kat3194_addinpr1[] = {0}; +static const unsigned char kat3194_entropyinpr2[] = { + 0xc2, 0xe1, 0x59, 0x58, 0x72, 0x23, 0xbd, 0x83, 0x15, 0xf7, 0x93, 0xc7, + 0x50, 0xe4, 0x2c, 0xd4, 0xcb, 0xa9, 0x85, 0xdf, 0xd7, 0x6a, 0xac, 0x7f, +}; +static const unsigned char kat3194_addinpr2[] = {0}; +static const unsigned char kat3194_retbits[] = { + 0xf9, 0x44, 0xb1, 0xfd, 0x2c, 0x86, 0x3f, 0x6d, 0x16, 0xc1, 0x62, 0xa5, + 0x2f, 0xbe, 0xfa, 0x41, 0x79, 0x92, 0xa1, 0x49, 0x5c, 0x78, 0x6c, 0x39, + 0xfd, 0x6e, 0xdd, 0x78, 0x32, 0xc7, 0xb9, 0x91, 0x14, 0x75, 0x75, 0x7c, + 0x86, 0x85, 0xd4, 0x66, 0xbf, 0x74, 0x84, 0xe4, 0xbe, 0x39, 0x69, 0xe9, + 0x01, 0xe6, 0x3b, 0xaa, 0xc4, 0x90, 0x46, 0x5c, 0x72, 0x76, 0x82, 0x9a, + 0x86, 0x80, 0xb2, 0x31, +}; +static const struct drbg_kat_pr_true kat3194_t = { + 13, kat3194_entropyin, kat3194_nonce, kat3194_persstr, + kat3194_entropyinpr1, kat3194_addinpr1, kat3194_entropyinpr2, + kat3194_addinpr2, kat3194_retbits +}; +static const struct drbg_kat kat3194 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3194_t +}; + +static const unsigned char kat3195_entropyin[] = { + 0x1c, 0xda, 0x1f, 0xe4, 0x95, 0x3b, 0x84, 0xfe, 0x7e, 0xa3, 0xa1, 0x1e, + 0x6c, 0xb4, 0xd3, 0x42, 0xa6, 0x6e, 0x3f, 0xcc, 0x74, 0xb0, 0xb7, 0x78, +}; +static const unsigned char kat3195_nonce[] = { + 0xaf, 0x9a, 0x5f, 0x72, 0x72, 0x01, 0x31, 0x13, 0xd4, 0x91, 0xd7, 0x7b, + 0xb8, 0x07, 0xdb, 0x34, +}; +static const unsigned char kat3195_persstr[] = {0}; +static const unsigned char kat3195_entropyinpr1[] = { + 0x4b, 0xd0, 0xa5, 0x48, 0x10, 0xe5, 0x53, 0x71, 0x56, 0xdb, 0xc1, 0xd0, + 0xb3, 0x11, 0x86, 0xa7, 0xc8, 0xf2, 0xf1, 0x18, 0x95, 0xca, 0xb3, 0x7d, +}; +static const unsigned char kat3195_addinpr1[] = {0}; +static const unsigned char kat3195_entropyinpr2[] = { + 0x1d, 0x12, 0xeb, 0x04, 0x12, 0xc1, 0x93, 0xd4, 0x68, 0xd0, 0x16, 0xad, + 0x05, 0x6c, 0xb2, 0xd9, 0xb8, 0x04, 0x04, 0x16, 0xa6, 0x3b, 0xe3, 0x9b, +}; +static const unsigned char kat3195_addinpr2[] = {0}; +static const unsigned char kat3195_retbits[] = { + 0x86, 0x89, 0x6e, 0xa3, 0xec, 0x87, 0x55, 0x93, 0x91, 0xf6, 0xdd, 0x56, + 0x08, 0x59, 0xc8, 0xf9, 0x16, 0x02, 0x1c, 0x7a, 0xaa, 0xa9, 0xc8, 0x92, + 0x69, 0xcb, 0xc3, 0xa1, 0xae, 0x95, 0x4f, 0x77, 0x0a, 0x46, 0x18, 0x49, + 0x7c, 0x62, 0x83, 0x47, 0x94, 0x43, 0xfc, 0x31, 0xb7, 0xbb, 0x2f, 0x53, + 0x6b, 0xef, 0xbc, 0x0c, 0xe2, 0x09, 0x8e, 0x3a, 0xcf, 0x8e, 0x8a, 0x7e, + 0xe5, 0x2b, 0xd8, 0x7f, +}; +static const struct drbg_kat_pr_true kat3195_t = { + 14, kat3195_entropyin, kat3195_nonce, kat3195_persstr, + kat3195_entropyinpr1, kat3195_addinpr1, kat3195_entropyinpr2, + kat3195_addinpr2, kat3195_retbits +}; +static const struct drbg_kat kat3195 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3195_t +}; + +static const unsigned char kat3196_entropyin[] = { + 0x79, 0x93, 0x07, 0xf7, 0x67, 0xda, 0x25, 0xbd, 0xf4, 0x94, 0x92, 0x30, + 0x8b, 0x5b, 0xfd, 0x8b, 0x84, 0x9e, 0x00, 0x9a, 0x6a, 0xac, 0x51, 0xf9, +}; +static const unsigned char kat3196_nonce[] = { + 0xb0, 0x17, 0xf3, 0xd9, 0x6f, 0xc3, 0x9f, 0x56, 0x36, 0xa6, 0xe8, 0x96, + 0xea, 0x2b, 0x7e, 0x30, +}; +static const unsigned char kat3196_persstr[] = {0}; +static const unsigned char kat3196_entropyinpr1[] = { + 0x72, 0x7a, 0x6c, 0xea, 0xe6, 0x0f, 0x22, 0xe0, 0x15, 0x0c, 0x05, 0x1d, + 0xb3, 0x15, 0xcf, 0x83, 0x2e, 0x39, 0xb4, 0xa7, 0xe5, 0x54, 0x6a, 0xf4, +}; +static const unsigned char kat3196_addinpr1[] = { + 0x47, 0x1f, 0x6c, 0x0c, 0xcc, 0xdc, 0x8a, 0xf9, 0x81, 0x06, 0xcd, 0x01, + 0x98, 0x35, 0xa2, 0x63, 0xc9, 0xc8, 0xb6, 0x36, 0xa1, 0xb2, 0x4d, 0x66, + 0xdb, 0x74, 0xe0, 0x06, 0x48, 0x3f, 0x96, 0xb1, +}; +static const unsigned char kat3196_entropyinpr2[] = { + 0xfe, 0x01, 0x60, 0x12, 0x15, 0x0e, 0xda, 0x19, 0xca, 0xe9, 0x7d, 0x19, + 0x0c, 0xb0, 0xe0, 0x98, 0xed, 0x36, 0x62, 0xf2, 0x3b, 0x6f, 0x09, 0xfd, +}; +static const unsigned char kat3196_addinpr2[] = { + 0xb5, 0x77, 0x6d, 0x5c, 0xc3, 0x44, 0x59, 0xf7, 0x3a, 0xf5, 0xc8, 0x20, + 0x8f, 0x1c, 0x83, 0xff, 0xe7, 0x58, 0x84, 0x07, 0x99, 0xae, 0x51, 0x62, + 0xe7, 0xbb, 0xa6, 0x96, 0xa4, 0x5f, 0x87, 0x6f, +}; +static const unsigned char kat3196_retbits[] = { + 0xa2, 0x82, 0x7f, 0x89, 0x7a, 0x76, 0xa4, 0xbe, 0x69, 0xe2, 0x7d, 0xff, + 0x51, 0x1a, 0x38, 0x4e, 0xc7, 0x31, 0xec, 0xfc, 0x7b, 0x15, 0x94, 0xe3, + 0x81, 0x5d, 0x02, 0x4d, 0x96, 0x15, 0xf8, 0x6f, 0x58, 0xd8, 0x0d, 0x57, + 0x3d, 0xf8, 0xd6, 0xd1, 0x1a, 0x34, 0x59, 0x88, 0x4b, 0x22, 0x7d, 0xf7, + 0xa3, 0x3d, 0x8d, 0x3c, 0xe3, 0xf5, 0xd7, 0xa7, 0x5a, 0xa9, 0x93, 0xc5, + 0x3e, 0x7e, 0x0c, 0x0f, +}; +static const struct drbg_kat_pr_true kat3196_t = { + 0, kat3196_entropyin, kat3196_nonce, kat3196_persstr, + kat3196_entropyinpr1, kat3196_addinpr1, kat3196_entropyinpr2, + kat3196_addinpr2, kat3196_retbits +}; +static const struct drbg_kat kat3196 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3196_t +}; + +static const unsigned char kat3197_entropyin[] = { + 0x61, 0x0a, 0xc4, 0xad, 0xbf, 0x4a, 0xbf, 0xea, 0xaa, 0x64, 0x73, 0xd1, + 0x7a, 0x8b, 0xc2, 0xae, 0x84, 0x06, 0xb6, 0x16, 0xed, 0x35, 0xd0, 0x01, +}; +static const unsigned char kat3197_nonce[] = { + 0x0f, 0xbe, 0xec, 0x6e, 0xc5, 0xdd, 0x02, 0x78, 0x43, 0x69, 0x2f, 0x78, + 0x30, 0x59, 0x3f, 0xec, +}; +static const unsigned char kat3197_persstr[] = {0}; +static const unsigned char kat3197_entropyinpr1[] = { + 0xc6, 0x82, 0x61, 0xa6, 0x04, 0x8f, 0x1e, 0x30, 0x75, 0x64, 0x66, 0x5c, + 0xa4, 0xa0, 0x93, 0x14, 0x87, 0x7b, 0xed, 0xd1, 0xa8, 0xe4, 0x8b, 0xc6, +}; +static const unsigned char kat3197_addinpr1[] = { + 0xe4, 0x0a, 0xb0, 0x9d, 0x92, 0xa1, 0x77, 0xef, 0xad, 0x23, 0x4e, 0xe9, + 0xa8, 0xef, 0x12, 0x04, 0x37, 0x73, 0x5e, 0x54, 0x7b, 0xcd, 0x8c, 0xcd, + 0x5c, 0x69, 0x02, 0x07, 0x35, 0xd0, 0x1c, 0xb3, +}; +static const unsigned char kat3197_entropyinpr2[] = { + 0xcf, 0x84, 0xe3, 0xcc, 0x12, 0x73, 0x16, 0x39, 0x49, 0xdb, 0x23, 0xc8, + 0x98, 0xa3, 0xb3, 0x22, 0xfb, 0x11, 0xe7, 0x5d, 0xc3, 0x95, 0x99, 0xa3, +}; +static const unsigned char kat3197_addinpr2[] = { + 0x75, 0x87, 0x50, 0x78, 0x69, 0x18, 0x48, 0x0d, 0xce, 0x2c, 0x3e, 0x3f, + 0xee, 0xee, 0xa0, 0x32, 0x4c, 0xb9, 0xb0, 0xb5, 0x07, 0x90, 0x67, 0xbd, + 0x3f, 0x9c, 0x45, 0xb9, 0xf0, 0xe7, 0x33, 0xec, +}; +static const unsigned char kat3197_retbits[] = { + 0x10, 0x57, 0x47, 0x58, 0xda, 0xf5, 0x9f, 0xee, 0x6b, 0xf7, 0x60, 0xb9, + 0x7f, 0xea, 0xbf, 0x24, 0xc0, 0x58, 0xa9, 0x5e, 0x59, 0x4b, 0x1a, 0x2a, + 0x80, 0x16, 0x36, 0x35, 0x44, 0x59, 0x82, 0x1e, 0x06, 0x1c, 0x4b, 0xce, + 0x3d, 0xfb, 0x16, 0xfb, 0xae, 0xb1, 0x42, 0xcb, 0x20, 0xd8, 0xac, 0xc6, + 0x8b, 0x75, 0x56, 0x4a, 0xed, 0x23, 0x06, 0xaa, 0x9a, 0x7c, 0x11, 0xe9, + 0x67, 0xc0, 0x6d, 0x3d, +}; +static const struct drbg_kat_pr_true kat3197_t = { + 1, kat3197_entropyin, kat3197_nonce, kat3197_persstr, + kat3197_entropyinpr1, kat3197_addinpr1, kat3197_entropyinpr2, + kat3197_addinpr2, kat3197_retbits +}; +static const struct drbg_kat kat3197 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3197_t +}; + +static const unsigned char kat3198_entropyin[] = { + 0xfa, 0x45, 0xa6, 0x07, 0xc9, 0x3d, 0xa2, 0x05, 0x93, 0xe5, 0x10, 0x06, + 0x98, 0x49, 0x8c, 0x44, 0x07, 0x2b, 0x3a, 0xf7, 0xcd, 0x31, 0x36, 0x63, +}; +static const unsigned char kat3198_nonce[] = { + 0x36, 0x95, 0xf3, 0x84, 0xde, 0x48, 0xb5, 0x8c, 0x1b, 0x4e, 0xc2, 0x30, + 0xcd, 0x16, 0xc4, 0x85, +}; +static const unsigned char kat3198_persstr[] = {0}; +static const unsigned char kat3198_entropyinpr1[] = { + 0x70, 0xbd, 0x4e, 0x4c, 0xa0, 0x6f, 0x3d, 0xae, 0xae, 0x8b, 0xfd, 0x68, + 0x7a, 0x10, 0x31, 0xc0, 0x67, 0xf0, 0x00, 0xf8, 0xc1, 0x3d, 0x25, 0x64, +}; +static const unsigned char kat3198_addinpr1[] = { + 0x9b, 0xe9, 0x78, 0x0a, 0xa7, 0xcc, 0xc9, 0x63, 0x36, 0x9b, 0xb7, 0xb6, + 0x41, 0x26, 0x66, 0x8c, 0xa2, 0x9f, 0x66, 0xad, 0x66, 0xbf, 0x3d, 0xef, + 0x3a, 0xb4, 0x3f, 0xe1, 0xd9, 0x18, 0x01, 0x54, +}; +static const unsigned char kat3198_entropyinpr2[] = { + 0xac, 0xdd, 0xc6, 0xfe, 0x2c, 0x83, 0x7f, 0x63, 0x70, 0xbd, 0x88, 0x8a, + 0xb9, 0x68, 0x7a, 0x81, 0x92, 0x79, 0x81, 0x60, 0xcf, 0xf9, 0x3f, 0x4f, +}; +static const unsigned char kat3198_addinpr2[] = { + 0x27, 0x07, 0x9d, 0x97, 0x67, 0xef, 0x5c, 0xbd, 0x1d, 0x13, 0xbe, 0xbb, + 0x94, 0x1c, 0x45, 0xe6, 0x65, 0x9f, 0x44, 0x05, 0xfe, 0x87, 0xfe, 0x17, + 0x8a, 0xf3, 0x3e, 0x3e, 0xc2, 0xb2, 0xf0, 0xcd, +}; +static const unsigned char kat3198_retbits[] = { + 0x96, 0x11, 0x5c, 0xdd, 0xb0, 0x64, 0xba, 0xf4, 0x8d, 0x0b, 0xdd, 0x62, + 0x91, 0xd3, 0x4c, 0x3c, 0x93, 0x2a, 0x87, 0xf1, 0x1b, 0x32, 0xb5, 0x98, + 0x67, 0x74, 0xd0, 0x89, 0x39, 0xea, 0xe6, 0x35, 0x71, 0x9d, 0xc7, 0xea, + 0x02, 0x09, 0x2c, 0x81, 0x82, 0xcf, 0x01, 0xcb, 0xed, 0xa5, 0x9e, 0x90, + 0x28, 0xb3, 0x76, 0x45, 0xf0, 0x33, 0x65, 0x91, 0x4a, 0x18, 0xe0, 0x75, + 0xc3, 0x57, 0xb0, 0xc2, +}; +static const struct drbg_kat_pr_true kat3198_t = { + 2, kat3198_entropyin, kat3198_nonce, kat3198_persstr, + kat3198_entropyinpr1, kat3198_addinpr1, kat3198_entropyinpr2, + kat3198_addinpr2, kat3198_retbits +}; +static const struct drbg_kat kat3198 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3198_t +}; + +static const unsigned char kat3199_entropyin[] = { + 0x9d, 0x0c, 0xe2, 0x29, 0xeb, 0xd8, 0x63, 0x86, 0xff, 0x15, 0x01, 0x88, + 0xa9, 0x46, 0x6d, 0x56, 0xcf, 0x16, 0xb7, 0x06, 0xf9, 0x53, 0x3f, 0xd0, +}; +static const unsigned char kat3199_nonce[] = { + 0xf8, 0x7c, 0x24, 0x5d, 0x50, 0xe2, 0x8f, 0xb6, 0xda, 0xbb, 0x96, 0x3a, + 0x2b, 0xf0, 0x4b, 0x29, +}; +static const unsigned char kat3199_persstr[] = {0}; +static const unsigned char kat3199_entropyinpr1[] = { + 0x1f, 0x0d, 0xd0, 0x36, 0x34, 0xdc, 0xb2, 0xee, 0x91, 0x92, 0xd8, 0x4b, + 0x12, 0xd7, 0xcf, 0x5e, 0x4a, 0xc8, 0x52, 0x59, 0xf0, 0xab, 0xb5, 0xed, +}; +static const unsigned char kat3199_addinpr1[] = { + 0xfa, 0xf3, 0xdc, 0x3a, 0xf3, 0xdf, 0xeb, 0x4e, 0x56, 0xbe, 0xd8, 0x77, + 0x5e, 0x4f, 0xbc, 0x32, 0x96, 0x1a, 0xee, 0xe0, 0x87, 0xe0, 0x14, 0xe5, + 0xd8, 0x52, 0xd6, 0xf4, 0x61, 0x93, 0xa4, 0x4f, +}; +static const unsigned char kat3199_entropyinpr2[] = { + 0xd1, 0x72, 0x20, 0xc9, 0xd8, 0xff, 0x2d, 0xcc, 0x17, 0x5d, 0x74, 0x81, + 0x99, 0xc1, 0x72, 0x17, 0x33, 0xea, 0xa1, 0xca, 0xb5, 0x2a, 0xd3, 0x14, +}; +static const unsigned char kat3199_addinpr2[] = { + 0xb4, 0xc2, 0x9c, 0x47, 0x6f, 0xd0, 0xdf, 0xf9, 0xf7, 0x7f, 0x41, 0xe7, + 0x5d, 0x48, 0x4e, 0x80, 0x46, 0x66, 0xdc, 0x30, 0xdc, 0x63, 0xce, 0x79, + 0xa3, 0xc2, 0xd0, 0xa8, 0x11, 0x5f, 0xf3, 0xff, +}; +static const unsigned char kat3199_retbits[] = { + 0x56, 0xf5, 0x32, 0x25, 0x2e, 0xc3, 0x11, 0x27, 0xbd, 0x13, 0xbc, 0x1e, + 0x3e, 0xa0, 0xf6, 0x4d, 0x76, 0xfc, 0x0f, 0x5f, 0xfd, 0xa3, 0xd8, 0xfc, + 0x8b, 0xc8, 0x79, 0x1f, 0x81, 0x40, 0x98, 0xef, 0xb6, 0xf7, 0x24, 0xb9, + 0xd9, 0xd7, 0x15, 0xbc, 0x6d, 0x90, 0x1c, 0x71, 0x3a, 0x0b, 0x17, 0x79, + 0x18, 0x52, 0xb7, 0x5b, 0x61, 0xfa, 0x2f, 0x20, 0x41, 0x16, 0x67, 0x85, + 0x3c, 0xe6, 0xac, 0x9a, +}; +static const struct drbg_kat_pr_true kat3199_t = { + 3, kat3199_entropyin, kat3199_nonce, kat3199_persstr, + kat3199_entropyinpr1, kat3199_addinpr1, kat3199_entropyinpr2, + kat3199_addinpr2, kat3199_retbits +}; +static const struct drbg_kat kat3199 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3199_t +}; + +static const unsigned char kat3200_entropyin[] = { + 0xc3, 0xf9, 0xca, 0x8e, 0x42, 0xed, 0x21, 0xb5, 0xba, 0x54, 0x1e, 0x9d, + 0x55, 0xec, 0x2a, 0xf8, 0x4a, 0xa4, 0xd2, 0x04, 0x5a, 0x32, 0x23, 0x1b, +}; +static const unsigned char kat3200_nonce[] = { + 0xa5, 0x8f, 0x38, 0x11, 0xc3, 0xf3, 0xc5, 0x97, 0xb8, 0xbb, 0xc5, 0x14, + 0x25, 0x2a, 0xc8, 0xd0, +}; +static const unsigned char kat3200_persstr[] = {0}; +static const unsigned char kat3200_entropyinpr1[] = { + 0x69, 0x97, 0xc7, 0x60, 0x57, 0x50, 0x66, 0x8a, 0xc6, 0x0d, 0xb9, 0x92, + 0x7a, 0xb4, 0xd5, 0x96, 0x6b, 0x60, 0xa3, 0xe7, 0x65, 0xdf, 0xf9, 0x2a, +}; +static const unsigned char kat3200_addinpr1[] = { + 0xd1, 0x80, 0xeb, 0x02, 0xd1, 0xb0, 0x87, 0x8e, 0x27, 0x2f, 0x76, 0x40, + 0xea, 0x6a, 0xb8, 0xb7, 0x4d, 0x8e, 0x45, 0x7c, 0x55, 0x4f, 0x8f, 0xa3, + 0x0a, 0x04, 0xe2, 0xbd, 0x5b, 0x89, 0x7d, 0x55, +}; +static const unsigned char kat3200_entropyinpr2[] = { + 0x00, 0xbf, 0x99, 0xf0, 0xf6, 0x81, 0xd4, 0x6b, 0x97, 0x30, 0xf3, 0xec, + 0x5b, 0xe8, 0x8d, 0x3e, 0xa2, 0x22, 0xb2, 0x4b, 0xf4, 0x7f, 0x7c, 0x7e, +}; +static const unsigned char kat3200_addinpr2[] = { + 0xf2, 0x1b, 0x77, 0x53, 0x6d, 0x48, 0x2f, 0x5c, 0xbd, 0xd7, 0x3f, 0x78, + 0xc8, 0x11, 0x15, 0xc5, 0x1b, 0xaa, 0x83, 0xd8, 0x3f, 0x3c, 0xf0, 0x5b, + 0x76, 0xf7, 0x9f, 0x09, 0x71, 0x05, 0x64, 0x24, +}; +static const unsigned char kat3200_retbits[] = { + 0xe2, 0x57, 0xcc, 0x1a, 0x5f, 0xbd, 0x0d, 0xa1, 0x66, 0x67, 0x12, 0x0e, + 0x64, 0xa2, 0x86, 0xda, 0xd5, 0xb1, 0xa7, 0x62, 0x81, 0xac, 0xa2, 0xf5, + 0x53, 0x48, 0x7f, 0x08, 0x18, 0x2e, 0x85, 0xdc, 0xd3, 0xf3, 0xf2, 0x28, + 0x49, 0x6b, 0x9b, 0xca, 0x7c, 0x8c, 0x26, 0x39, 0x16, 0x90, 0x52, 0x52, + 0xcf, 0xcf, 0x16, 0xd7, 0x4e, 0x19, 0x64, 0x81, 0x98, 0xc8, 0xc3, 0x0f, + 0x20, 0x1e, 0x02, 0xcc, +}; +static const struct drbg_kat_pr_true kat3200_t = { + 4, kat3200_entropyin, kat3200_nonce, kat3200_persstr, + kat3200_entropyinpr1, kat3200_addinpr1, kat3200_entropyinpr2, + kat3200_addinpr2, kat3200_retbits +}; +static const struct drbg_kat kat3200 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3200_t +}; + +static const unsigned char kat3201_entropyin[] = { + 0x21, 0xe3, 0x0a, 0x59, 0x11, 0x68, 0x5d, 0x64, 0x64, 0x86, 0x88, 0x3f, + 0xef, 0x30, 0x7b, 0x6c, 0x1d, 0x1c, 0x70, 0xe2, 0x21, 0x1c, 0x5b, 0x09, +}; +static const unsigned char kat3201_nonce[] = { + 0x9b, 0x27, 0xbc, 0x3f, 0x94, 0xd4, 0x3b, 0xf9, 0x27, 0x4c, 0xd7, 0xee, + 0x6c, 0xc4, 0x3f, 0xe3, +}; +static const unsigned char kat3201_persstr[] = {0}; +static const unsigned char kat3201_entropyinpr1[] = { + 0x84, 0x24, 0xca, 0x5b, 0xd8, 0xda, 0x13, 0xc4, 0x88, 0xfd, 0x1a, 0xe4, + 0xa5, 0xde, 0xc6, 0x61, 0x63, 0xe1, 0x52, 0x8a, 0x5d, 0xf4, 0xc7, 0x4f, +}; +static const unsigned char kat3201_addinpr1[] = { + 0xc5, 0xdf, 0xc8, 0xf7, 0xa3, 0x00, 0xa4, 0x89, 0xe7, 0x44, 0x00, 0x8e, + 0x71, 0x87, 0x5c, 0xce, 0xa0, 0x29, 0x3f, 0x1a, 0x41, 0x3a, 0xfc, 0x31, + 0x9c, 0x7b, 0x9d, 0x21, 0xd7, 0xfa, 0x99, 0x47, +}; +static const unsigned char kat3201_entropyinpr2[] = { + 0x5c, 0x42, 0x67, 0x39, 0x9e, 0x19, 0x08, 0xe2, 0xac, 0xaf, 0x12, 0xc7, + 0x36, 0x4f, 0x09, 0x9b, 0xd8, 0xa2, 0x14, 0xe4, 0xdc, 0xa1, 0x4a, 0xb3, +}; +static const unsigned char kat3201_addinpr2[] = { + 0x40, 0x10, 0x51, 0x1d, 0x82, 0xf1, 0x05, 0x1a, 0x7f, 0xf7, 0xf6, 0x39, + 0x85, 0xa8, 0xfa, 0xf4, 0xd4, 0xf9, 0x87, 0x06, 0x08, 0x5f, 0x89, 0x5f, + 0x05, 0x14, 0xe7, 0x8c, 0x6a, 0xb2, 0xc5, 0x45, +}; +static const unsigned char kat3201_retbits[] = { + 0x66, 0x74, 0x40, 0xd6, 0x7d, 0x90, 0x27, 0x93, 0x1e, 0x16, 0xc6, 0xd0, + 0xa9, 0x14, 0x61, 0xf5, 0xaf, 0xed, 0x62, 0x02, 0xbb, 0x14, 0xdf, 0xf0, + 0xad, 0xff, 0x70, 0x15, 0x96, 0x89, 0x9d, 0x90, 0xe3, 0xd2, 0xd6, 0xa4, + 0xf1, 0x61, 0xc8, 0xc6, 0x3e, 0x18, 0x3d, 0x2e, 0xd9, 0x7a, 0x6e, 0xa8, + 0x4e, 0x62, 0x2b, 0xf1, 0xa0, 0x78, 0xa2, 0x80, 0xde, 0x38, 0xec, 0x8a, + 0x1b, 0xec, 0xf6, 0xa2, +}; +static const struct drbg_kat_pr_true kat3201_t = { + 5, kat3201_entropyin, kat3201_nonce, kat3201_persstr, + kat3201_entropyinpr1, kat3201_addinpr1, kat3201_entropyinpr2, + kat3201_addinpr2, kat3201_retbits +}; +static const struct drbg_kat kat3201 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3201_t +}; + +static const unsigned char kat3202_entropyin[] = { + 0x7d, 0x89, 0xc0, 0x96, 0xa9, 0x74, 0xca, 0x72, 0xbf, 0xfd, 0x0f, 0x16, + 0x75, 0xe8, 0x51, 0x9f, 0x66, 0x78, 0xad, 0x06, 0x49, 0xcd, 0x09, 0xd3, +}; +static const unsigned char kat3202_nonce[] = { + 0xe6, 0x37, 0xe4, 0xb1, 0x75, 0x10, 0xff, 0x37, 0x9c, 0x1e, 0x63, 0x0c, + 0x99, 0x04, 0xc1, 0xe5, +}; +static const unsigned char kat3202_persstr[] = {0}; +static const unsigned char kat3202_entropyinpr1[] = { + 0xa3, 0x8a, 0xca, 0x2b, 0x9f, 0xc8, 0x89, 0x0a, 0x79, 0xb0, 0xae, 0x27, + 0x2c, 0x8f, 0xe0, 0x06, 0xa9, 0x20, 0x23, 0xfb, 0xb5, 0xcf, 0xee, 0xb9, +}; +static const unsigned char kat3202_addinpr1[] = { + 0xba, 0x42, 0xb4, 0x67, 0x25, 0xff, 0xa4, 0xe2, 0x4e, 0x08, 0x6c, 0xee, + 0x7c, 0x9d, 0x7b, 0x3d, 0xab, 0xe0, 0x05, 0xf2, 0x87, 0x85, 0x2a, 0x7f, + 0x12, 0x7a, 0x8e, 0xf7, 0x8f, 0x88, 0xce, 0x79, +}; +static const unsigned char kat3202_entropyinpr2[] = { + 0xcd, 0x81, 0xa1, 0x76, 0x03, 0xeb, 0x54, 0x5b, 0x69, 0x63, 0x18, 0x4e, + 0x44, 0x91, 0x00, 0x8d, 0x19, 0x27, 0x47, 0x43, 0x74, 0xef, 0x7c, 0x49, +}; +static const unsigned char kat3202_addinpr2[] = { + 0xd7, 0x4e, 0x9b, 0xfb, 0x7b, 0x66, 0xaa, 0x6e, 0xa8, 0x87, 0xd3, 0x8a, + 0xc5, 0x34, 0xb7, 0xed, 0x35, 0xce, 0x4c, 0xf5, 0xce, 0x4b, 0x0d, 0xe6, + 0x22, 0x24, 0x11, 0x96, 0x96, 0xec, 0xae, 0x15, +}; +static const unsigned char kat3202_retbits[] = { + 0x88, 0x4c, 0x36, 0xfb, 0xa5, 0x7c, 0x1a, 0x35, 0xd9, 0xba, 0xab, 0xb9, + 0xc6, 0xeb, 0xf4, 0xea, 0xf8, 0xab, 0x70, 0x99, 0x7b, 0x4c, 0xa3, 0x11, + 0x64, 0x90, 0x7d, 0x2d, 0xc1, 0xf0, 0xf7, 0x4e, 0xda, 0x8d, 0xdb, 0x88, + 0xe6, 0xb4, 0x91, 0xad, 0x8a, 0x9d, 0x92, 0xd4, 0x4d, 0x78, 0xb0, 0xd0, + 0xe0, 0x0f, 0x27, 0x56, 0x0e, 0x28, 0xc6, 0xf9, 0x41, 0x8d, 0xfe, 0xe1, + 0x94, 0x85, 0x05, 0x25, +}; +static const struct drbg_kat_pr_true kat3202_t = { + 6, kat3202_entropyin, kat3202_nonce, kat3202_persstr, + kat3202_entropyinpr1, kat3202_addinpr1, kat3202_entropyinpr2, + kat3202_addinpr2, kat3202_retbits +}; +static const struct drbg_kat kat3202 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3202_t +}; + +static const unsigned char kat3203_entropyin[] = { + 0xb8, 0xb0, 0xbb, 0x2c, 0x41, 0xa5, 0x9c, 0x2d, 0x77, 0xec, 0xf5, 0xa2, + 0x59, 0x96, 0x77, 0x38, 0x2e, 0xf4, 0x3e, 0x6c, 0xea, 0x7b, 0x17, 0xa2, +}; +static const unsigned char kat3203_nonce[] = { + 0xbf, 0x44, 0x6c, 0x79, 0xa7, 0xe2, 0x38, 0x98, 0x15, 0xfa, 0xc6, 0x30, + 0x73, 0x10, 0x0a, 0xf1, +}; +static const unsigned char kat3203_persstr[] = {0}; +static const unsigned char kat3203_entropyinpr1[] = { + 0xaa, 0x5b, 0x73, 0x82, 0xf9, 0x66, 0xbe, 0xfe, 0x52, 0x44, 0x72, 0xc1, + 0xeb, 0xdb, 0x4c, 0x05, 0xd1, 0x73, 0xc3, 0xd1, 0x8b, 0x58, 0xf2, 0x58, +}; +static const unsigned char kat3203_addinpr1[] = { + 0x82, 0xb5, 0x53, 0xa7, 0xb2, 0xf6, 0x33, 0xf2, 0x99, 0x9d, 0x25, 0xec, + 0xb2, 0x8b, 0x0f, 0x73, 0x58, 0xd4, 0x16, 0xd1, 0x37, 0x64, 0xed, 0xd3, + 0x60, 0x3b, 0x19, 0x09, 0x65, 0x8c, 0xce, 0xff, +}; +static const unsigned char kat3203_entropyinpr2[] = { + 0xb9, 0x9a, 0x1f, 0x90, 0x66, 0x42, 0x94, 0x5a, 0xd1, 0xb8, 0x78, 0xd4, + 0xe2, 0x23, 0x80, 0xea, 0xb1, 0xf0, 0xfc, 0x49, 0x13, 0x6a, 0x99, 0xc7, +}; +static const unsigned char kat3203_addinpr2[] = { + 0xf7, 0x41, 0xe2, 0x52, 0x34, 0xc3, 0x8b, 0x51, 0x54, 0x76, 0x9e, 0xac, + 0x96, 0x75, 0xe9, 0x4a, 0x77, 0x6d, 0x71, 0x8f, 0x40, 0xbb, 0x8f, 0x74, + 0x32, 0x33, 0x9c, 0x6a, 0x0f, 0xa6, 0x22, 0x5e, +}; +static const unsigned char kat3203_retbits[] = { + 0xce, 0x9e, 0x56, 0xd6, 0x2b, 0xde, 0xa9, 0x23, 0x5b, 0x9e, 0x3f, 0x11, + 0x35, 0x15, 0x0a, 0x7e, 0xeb, 0x8d, 0x17, 0xdc, 0x9a, 0x9e, 0x07, 0x20, + 0xbe, 0xe5, 0x9a, 0x0c, 0xae, 0xcb, 0x93, 0x64, 0xd2, 0x8e, 0xe7, 0x51, + 0xe2, 0x04, 0xd4, 0x8e, 0xb0, 0x0d, 0xa7, 0xda, 0x8e, 0x9e, 0xd8, 0x37, + 0xa6, 0xf5, 0xc7, 0xa7, 0x2e, 0x60, 0xa2, 0x1c, 0x1c, 0x48, 0x3f, 0xac, + 0x19, 0x8e, 0xfc, 0x5b, +}; +static const struct drbg_kat_pr_true kat3203_t = { + 7, kat3203_entropyin, kat3203_nonce, kat3203_persstr, + kat3203_entropyinpr1, kat3203_addinpr1, kat3203_entropyinpr2, + kat3203_addinpr2, kat3203_retbits +}; +static const struct drbg_kat kat3203 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3203_t +}; + +static const unsigned char kat3204_entropyin[] = { + 0x4b, 0xbb, 0x9d, 0xea, 0xa8, 0x2d, 0x4a, 0x4b, 0x70, 0x07, 0xf3, 0xf4, + 0x01, 0x2a, 0x34, 0x45, 0x05, 0x21, 0x86, 0x81, 0xf9, 0x88, 0x85, 0x30, +}; +static const unsigned char kat3204_nonce[] = { + 0x8e, 0x45, 0xeb, 0xbb, 0x2f, 0x30, 0xd1, 0xef, 0x28, 0x8e, 0x03, 0x43, + 0x9e, 0x08, 0xea, 0x2d, +}; +static const unsigned char kat3204_persstr[] = {0}; +static const unsigned char kat3204_entropyinpr1[] = { + 0x81, 0x91, 0x3d, 0x1b, 0x46, 0x9b, 0x1f, 0x32, 0x09, 0x2b, 0x7a, 0x9b, + 0x5c, 0x36, 0x1b, 0x1e, 0xe4, 0x45, 0x5f, 0xfe, 0x25, 0x35, 0x67, 0x8d, +}; +static const unsigned char kat3204_addinpr1[] = { + 0xa1, 0x28, 0xd1, 0x28, 0xa0, 0xad, 0x1b, 0x7a, 0x42, 0xaa, 0xfe, 0x64, + 0xf2, 0xa6, 0x1c, 0x62, 0x37, 0x8d, 0xe2, 0x83, 0x1d, 0x86, 0x6c, 0x80, + 0xe2, 0xff, 0x3b, 0x25, 0x81, 0x71, 0xd8, 0x33, +}; +static const unsigned char kat3204_entropyinpr2[] = { + 0xfc, 0x10, 0x7a, 0x18, 0x10, 0xb0, 0x33, 0x9f, 0x3f, 0x3b, 0xb8, 0x17, + 0x21, 0x60, 0x76, 0x9f, 0x3c, 0xde, 0x58, 0x12, 0x95, 0x9a, 0x5c, 0x40, +}; +static const unsigned char kat3204_addinpr2[] = { + 0x05, 0x1e, 0xc7, 0x97, 0xe3, 0xcc, 0xcd, 0x39, 0xc1, 0xce, 0xdf, 0x8d, + 0xfa, 0x84, 0xdd, 0x50, 0x50, 0x14, 0x2b, 0xa2, 0xe5, 0x0e, 0xef, 0x31, + 0x44, 0xcf, 0x08, 0x11, 0x84, 0x66, 0x34, 0xf1, +}; +static const unsigned char kat3204_retbits[] = { + 0xdb, 0x5a, 0x02, 0x40, 0x7c, 0xa9, 0x77, 0xf9, 0xba, 0x2e, 0x96, 0x2a, + 0x68, 0xd2, 0xb0, 0x90, 0xe7, 0x71, 0xea, 0x95, 0x0e, 0xdb, 0xd4, 0xd5, + 0x59, 0xbc, 0x11, 0xd4, 0xd5, 0xf5, 0xd8, 0x55, 0x30, 0x85, 0x3e, 0xe8, + 0xdb, 0x97, 0xb0, 0x2a, 0xf5, 0x8e, 0xf7, 0x82, 0xe2, 0xfe, 0xba, 0x62, + 0x8c, 0x12, 0x38, 0x8d, 0xfb, 0xa2, 0x31, 0x3f, 0x92, 0xbd, 0x63, 0x2c, + 0xb6, 0xf5, 0x02, 0xf3, +}; +static const struct drbg_kat_pr_true kat3204_t = { + 8, kat3204_entropyin, kat3204_nonce, kat3204_persstr, + kat3204_entropyinpr1, kat3204_addinpr1, kat3204_entropyinpr2, + kat3204_addinpr2, kat3204_retbits +}; +static const struct drbg_kat kat3204 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3204_t +}; + +static const unsigned char kat3205_entropyin[] = { + 0x17, 0x8c, 0xa6, 0xc5, 0x33, 0xa0, 0xb3, 0x44, 0xe5, 0xdf, 0xbf, 0x5c, + 0x46, 0xce, 0x00, 0xa1, 0x38, 0xc7, 0x22, 0x40, 0x63, 0xf9, 0x8f, 0xc9, +}; +static const unsigned char kat3205_nonce[] = { + 0x88, 0x27, 0x89, 0x88, 0x6b, 0xa4, 0x9b, 0x2a, 0x83, 0x34, 0xa6, 0xc1, + 0x12, 0x31, 0xdd, 0xe2, +}; +static const unsigned char kat3205_persstr[] = {0}; +static const unsigned char kat3205_entropyinpr1[] = { + 0xf2, 0x68, 0xdb, 0x0c, 0xeb, 0x18, 0x33, 0x10, 0x98, 0x78, 0x77, 0x96, + 0x62, 0xe0, 0xc8, 0x96, 0x6d, 0x6f, 0x5b, 0x9b, 0x71, 0x80, 0x95, 0x19, +}; +static const unsigned char kat3205_addinpr1[] = { + 0x7c, 0xb4, 0xe6, 0xf2, 0xd4, 0x47, 0x18, 0x8c, 0x91, 0x44, 0x5f, 0x35, + 0xe2, 0x26, 0xa4, 0x64, 0xfb, 0x71, 0x68, 0x73, 0xd7, 0x24, 0x29, 0x2c, + 0xe0, 0x08, 0x9f, 0x2c, 0xb5, 0x64, 0x36, 0xc7, +}; +static const unsigned char kat3205_entropyinpr2[] = { + 0x10, 0xb6, 0x20, 0x03, 0x1e, 0xcb, 0xae, 0x42, 0x96, 0x45, 0x98, 0x7c, + 0x6b, 0xfc, 0x7e, 0x4e, 0x8d, 0xd4, 0x27, 0xb3, 0x3c, 0xbf, 0x6f, 0x57, +}; +static const unsigned char kat3205_addinpr2[] = { + 0x06, 0xe0, 0x7b, 0x46, 0x99, 0x68, 0x78, 0x53, 0xfb, 0xfc, 0x41, 0xed, + 0xed, 0x2a, 0x00, 0x79, 0x08, 0x09, 0x30, 0x6a, 0xc0, 0xf0, 0xa0, 0xfa, + 0xd0, 0x1f, 0x64, 0xbd, 0x82, 0x93, 0x9e, 0xe1, +}; +static const unsigned char kat3205_retbits[] = { + 0x73, 0x2d, 0x85, 0x88, 0x64, 0x1c, 0x2b, 0x19, 0x1d, 0x32, 0x8f, 0x95, + 0xfd, 0x6b, 0xe5, 0xff, 0xee, 0xbe, 0x06, 0x91, 0x26, 0x00, 0xfb, 0x27, + 0xf0, 0x16, 0x3c, 0x95, 0xb5, 0x51, 0xea, 0x22, 0x3d, 0xb3, 0x3f, 0x34, + 0x83, 0x78, 0x5a, 0xf0, 0x36, 0x5d, 0x3e, 0x6b, 0xd3, 0xa4, 0x1e, 0xf1, + 0x84, 0x1a, 0xd3, 0xc5, 0x1c, 0x20, 0xc4, 0x43, 0xe5, 0xdd, 0xdb, 0x0f, + 0xc6, 0x49, 0x1d, 0x61, +}; +static const struct drbg_kat_pr_true kat3205_t = { + 9, kat3205_entropyin, kat3205_nonce, kat3205_persstr, + kat3205_entropyinpr1, kat3205_addinpr1, kat3205_entropyinpr2, + kat3205_addinpr2, kat3205_retbits +}; +static const struct drbg_kat kat3205 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3205_t +}; + +static const unsigned char kat3206_entropyin[] = { + 0xdb, 0x1c, 0x80, 0x0f, 0x4b, 0x14, 0x62, 0x4c, 0x9b, 0x18, 0x87, 0xf3, + 0xef, 0x5e, 0x93, 0x56, 0x53, 0x72, 0x68, 0x11, 0xbd, 0x6a, 0x2d, 0x0f, +}; +static const unsigned char kat3206_nonce[] = { + 0x3f, 0x72, 0xc3, 0x96, 0x11, 0xd2, 0xc8, 0x00, 0x82, 0x22, 0x14, 0x39, + 0x72, 0x61, 0xc4, 0x6b, +}; +static const unsigned char kat3206_persstr[] = {0}; +static const unsigned char kat3206_entropyinpr1[] = { + 0x09, 0xc7, 0xae, 0xe6, 0x65, 0x7d, 0x5d, 0xae, 0xd2, 0xb3, 0xe2, 0x56, + 0xb1, 0x3a, 0xb4, 0x13, 0x68, 0x85, 0x77, 0xe2, 0x94, 0xaf, 0xef, 0x15, +}; +static const unsigned char kat3206_addinpr1[] = { + 0xdf, 0xbe, 0x2a, 0x13, 0xee, 0x44, 0xba, 0x33, 0xc7, 0x66, 0xa4, 0xd4, + 0xb1, 0x6e, 0x4b, 0x0a, 0xfc, 0xae, 0xa8, 0xde, 0x65, 0x1a, 0x03, 0x2c, + 0xa1, 0x7e, 0xbe, 0x37, 0xde, 0x31, 0x34, 0x8c, +}; +static const unsigned char kat3206_entropyinpr2[] = { + 0x12, 0x72, 0x3e, 0x2a, 0xcf, 0x5a, 0x09, 0xf2, 0x61, 0x4e, 0x33, 0x8f, + 0x71, 0x29, 0xbc, 0xad, 0xc5, 0x99, 0xbd, 0xea, 0x4e, 0x26, 0x45, 0x5e, +}; +static const unsigned char kat3206_addinpr2[] = { + 0x11, 0xc6, 0x86, 0x42, 0x52, 0x2a, 0x3a, 0x3f, 0x13, 0xa3, 0x48, 0xad, + 0xbf, 0x5b, 0x1b, 0xcb, 0x9f, 0xeb, 0x29, 0x46, 0xe5, 0xd9, 0xee, 0x80, + 0x19, 0xb5, 0x95, 0x94, 0x2e, 0x93, 0x73, 0xa2, +}; +static const unsigned char kat3206_retbits[] = { + 0xa3, 0x1b, 0xb7, 0x90, 0x53, 0xd5, 0xe4, 0x38, 0xa2, 0xdc, 0xdf, 0x64, + 0xb3, 0x47, 0x5a, 0x9b, 0xf7, 0xba, 0x0b, 0x10, 0xf8, 0x52, 0xd1, 0x87, + 0xd4, 0x58, 0x38, 0x96, 0xd1, 0xa1, 0x4e, 0xf2, 0x04, 0xa7, 0xc5, 0x21, + 0x09, 0x42, 0x4f, 0x52, 0x51, 0x45, 0x96, 0xfa, 0xe7, 0xc2, 0x72, 0x46, + 0x11, 0xb1, 0x8d, 0xb1, 0x1c, 0x85, 0xe9, 0xe6, 0x36, 0x02, 0xcc, 0xb5, + 0xcd, 0x9f, 0x53, 0xe6, +}; +static const struct drbg_kat_pr_true kat3206_t = { + 10, kat3206_entropyin, kat3206_nonce, kat3206_persstr, + kat3206_entropyinpr1, kat3206_addinpr1, kat3206_entropyinpr2, + kat3206_addinpr2, kat3206_retbits +}; +static const struct drbg_kat kat3206 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3206_t +}; + +static const unsigned char kat3207_entropyin[] = { + 0x7a, 0xe6, 0x83, 0x88, 0x60, 0x1e, 0xac, 0x16, 0x9b, 0xd0, 0xb3, 0xa8, + 0x5e, 0x3d, 0xa2, 0xf7, 0xf6, 0x88, 0xf2, 0xaf, 0xa6, 0xa2, 0xa4, 0x19, +}; +static const unsigned char kat3207_nonce[] = { + 0x3b, 0x08, 0xfd, 0x77, 0x75, 0xeb, 0x82, 0x58, 0xd5, 0x6f, 0xb2, 0x83, + 0x35, 0xc2, 0x85, 0xc9, +}; +static const unsigned char kat3207_persstr[] = {0}; +static const unsigned char kat3207_entropyinpr1[] = { + 0x9b, 0x9f, 0x11, 0x9e, 0x2d, 0xf3, 0x5f, 0x79, 0x1d, 0x22, 0xed, 0x4d, + 0x8f, 0x80, 0x16, 0x53, 0x03, 0x97, 0xe7, 0x40, 0xfe, 0x15, 0x2d, 0xed, +}; +static const unsigned char kat3207_addinpr1[] = { + 0xdc, 0x80, 0x61, 0xdd, 0xa8, 0x3f, 0x1e, 0xfd, 0xfd, 0x63, 0x65, 0xb5, + 0xe5, 0x03, 0x73, 0x37, 0xbf, 0x3e, 0x9a, 0x2f, 0x74, 0xbd, 0x91, 0x45, + 0x3c, 0x0e, 0x35, 0xc0, 0xd7, 0xc6, 0xc1, 0x11, +}; +static const unsigned char kat3207_entropyinpr2[] = { + 0x03, 0x4a, 0x60, 0x68, 0xf9, 0x16, 0x2e, 0x0d, 0xc0, 0x05, 0xd6, 0x21, + 0x4a, 0xd1, 0xcd, 0x4a, 0xa4, 0xab, 0x7f, 0x39, 0x03, 0xb5, 0x4d, 0xfe, +}; +static const unsigned char kat3207_addinpr2[] = { + 0xe9, 0xc5, 0x69, 0x8c, 0xff, 0x00, 0xaa, 0x40, 0x4b, 0xce, 0x15, 0x20, + 0x57, 0xf7, 0x0e, 0xf4, 0x4a, 0x00, 0x2c, 0xaf, 0x0f, 0x39, 0xc3, 0xf1, + 0x5a, 0xed, 0xf0, 0xd4, 0x01, 0xfd, 0xbb, 0x5d, +}; +static const unsigned char kat3207_retbits[] = { + 0x9f, 0xd4, 0xe2, 0xf7, 0x70, 0xd7, 0x07, 0xe5, 0x42, 0xcd, 0xea, 0x91, + 0xc1, 0x2e, 0x4f, 0xd1, 0x9f, 0x14, 0x72, 0xb4, 0x3f, 0xb5, 0xb7, 0x42, + 0x4f, 0x5b, 0x2c, 0xac, 0x20, 0x5c, 0xb3, 0x7f, 0xea, 0x45, 0x96, 0x41, + 0x5d, 0xee, 0xdd, 0x8b, 0xde, 0xcc, 0x52, 0xa8, 0xc1, 0xcd, 0xb8, 0xa9, + 0x58, 0x4f, 0x43, 0x83, 0x0f, 0x26, 0xda, 0xd8, 0xb6, 0x60, 0x87, 0xe0, + 0x68, 0xff, 0x58, 0x72, +}; +static const struct drbg_kat_pr_true kat3207_t = { + 11, kat3207_entropyin, kat3207_nonce, kat3207_persstr, + kat3207_entropyinpr1, kat3207_addinpr1, kat3207_entropyinpr2, + kat3207_addinpr2, kat3207_retbits +}; +static const struct drbg_kat kat3207 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3207_t +}; + +static const unsigned char kat3208_entropyin[] = { + 0xa8, 0xa2, 0x02, 0xef, 0x6a, 0x0d, 0x06, 0xbd, 0xb7, 0x06, 0x97, 0x00, + 0x9d, 0xf7, 0x05, 0xd7, 0x68, 0x2f, 0x68, 0x70, 0x71, 0xa1, 0xef, 0x4e, +}; +static const unsigned char kat3208_nonce[] = { + 0xf1, 0x3c, 0x16, 0x57, 0xcb, 0x57, 0x6b, 0xd5, 0x09, 0xaf, 0xfe, 0xff, + 0xbf, 0x5d, 0xfd, 0x65, +}; +static const unsigned char kat3208_persstr[] = {0}; +static const unsigned char kat3208_entropyinpr1[] = { + 0xe7, 0x31, 0x0b, 0xf0, 0xbb, 0xb1, 0x30, 0x56, 0x96, 0xb6, 0x90, 0xe1, + 0xa3, 0xb8, 0xab, 0xde, 0xb7, 0x91, 0xc3, 0x39, 0x6b, 0xbd, 0xea, 0x9a, +}; +static const unsigned char kat3208_addinpr1[] = { + 0x5e, 0x80, 0x48, 0x4e, 0x0b, 0xc3, 0x7d, 0x6f, 0xf6, 0xcb, 0x20, 0x0f, + 0x6e, 0xb9, 0xa9, 0x4f, 0x7a, 0x94, 0x54, 0x07, 0xf9, 0x82, 0x24, 0x52, + 0xf7, 0x55, 0xa6, 0x76, 0x75, 0x7b, 0x01, 0x95, +}; +static const unsigned char kat3208_entropyinpr2[] = { + 0x18, 0x32, 0x96, 0x37, 0x12, 0x57, 0x3a, 0x5c, 0xf4, 0x02, 0x2a, 0xc7, + 0x67, 0xa3, 0xbb, 0xc0, 0x1d, 0x4e, 0xd1, 0x06, 0x33, 0xdf, 0x0f, 0x3d, +}; +static const unsigned char kat3208_addinpr2[] = { + 0x4c, 0x73, 0x41, 0x94, 0x76, 0x29, 0x28, 0xe9, 0x7a, 0xd6, 0x6c, 0x92, + 0xce, 0x0b, 0xe7, 0xca, 0x64, 0xc0, 0x30, 0xd8, 0x3c, 0x91, 0x5b, 0xf0, + 0xc1, 0x5c, 0xa6, 0x9f, 0xc5, 0xb8, 0x5f, 0x13, +}; +static const unsigned char kat3208_retbits[] = { + 0xfd, 0xc5, 0xf1, 0x6e, 0x7b, 0xdf, 0x82, 0xdb, 0x39, 0xd8, 0x20, 0xfb, + 0x89, 0x77, 0x23, 0x34, 0xc9, 0x22, 0xfa, 0xc2, 0x6b, 0x42, 0x47, 0x89, + 0x25, 0x86, 0x73, 0xf5, 0xbf, 0xe5, 0x87, 0x47, 0x06, 0x2a, 0xd3, 0x9a, + 0x79, 0x9a, 0xc5, 0x8b, 0xe6, 0x46, 0xdd, 0x9a, 0xad, 0x8c, 0x28, 0xff, + 0x2c, 0xe4, 0xeb, 0xe6, 0xec, 0xfd, 0xe1, 0x4a, 0xea, 0xc5, 0x5d, 0xed, + 0x27, 0x58, 0x2e, 0x80, +}; +static const struct drbg_kat_pr_true kat3208_t = { + 12, kat3208_entropyin, kat3208_nonce, kat3208_persstr, + kat3208_entropyinpr1, kat3208_addinpr1, kat3208_entropyinpr2, + kat3208_addinpr2, kat3208_retbits +}; +static const struct drbg_kat kat3208 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3208_t +}; + +static const unsigned char kat3209_entropyin[] = { + 0x72, 0xd1, 0x41, 0xb8, 0x6e, 0x58, 0xc0, 0xaf, 0x83, 0x62, 0x66, 0x52, + 0xe1, 0x2e, 0x29, 0xcb, 0xb3, 0xc1, 0x07, 0x7b, 0x94, 0xd7, 0x76, 0x90, +}; +static const unsigned char kat3209_nonce[] = { + 0x44, 0x57, 0x87, 0x67, 0x16, 0xf2, 0x91, 0x13, 0x09, 0x10, 0xdf, 0xa2, + 0x30, 0x79, 0xa4, 0x0d, +}; +static const unsigned char kat3209_persstr[] = {0}; +static const unsigned char kat3209_entropyinpr1[] = { + 0xb0, 0x79, 0x22, 0x15, 0x0f, 0x47, 0x7e, 0x72, 0x0a, 0x72, 0x82, 0x5f, + 0xa4, 0x0c, 0x0e, 0xdb, 0x29, 0x49, 0xef, 0x93, 0x2e, 0x53, 0x36, 0x50, +}; +static const unsigned char kat3209_addinpr1[] = { + 0xce, 0x29, 0xff, 0x13, 0x90, 0x4e, 0x59, 0x3e, 0xa2, 0x28, 0x29, 0x99, + 0xb2, 0xfc, 0xbc, 0xb5, 0xda, 0xae, 0x5e, 0x35, 0xff, 0x71, 0xf0, 0x27, + 0x3f, 0x6d, 0x85, 0x38, 0xc1, 0x81, 0xb0, 0x4b, +}; +static const unsigned char kat3209_entropyinpr2[] = { + 0x3f, 0x21, 0xb3, 0xf2, 0x1b, 0x03, 0xe3, 0x76, 0xfc, 0x8b, 0xa4, 0x51, + 0xb4, 0x5e, 0xe8, 0x29, 0xaa, 0x37, 0xea, 0xf1, 0x2e, 0x1b, 0xf8, 0x81, +}; +static const unsigned char kat3209_addinpr2[] = { + 0x15, 0x4f, 0x42, 0x00, 0x27, 0x7d, 0x19, 0x37, 0xb5, 0x61, 0xe4, 0xcd, + 0xf8, 0x56, 0x56, 0xab, 0x2e, 0x41, 0xa3, 0xa0, 0x05, 0x42, 0x39, 0x77, + 0xd5, 0x36, 0x1e, 0xaa, 0xd0, 0xbf, 0x18, 0x97, +}; +static const unsigned char kat3209_retbits[] = { + 0x93, 0x23, 0x03, 0x4e, 0x0d, 0x9c, 0x4f, 0x53, 0xea, 0xf5, 0x0b, 0x36, + 0x79, 0x26, 0xcc, 0x69, 0x1e, 0x6e, 0xde, 0xd2, 0x07, 0x19, 0x0e, 0x36, + 0x9b, 0xdb, 0x2c, 0x7d, 0x8c, 0xf8, 0x59, 0x77, 0x06, 0x8d, 0xb7, 0x75, + 0x68, 0xa5, 0xf2, 0x9c, 0x0c, 0x19, 0x13, 0xc3, 0x62, 0xa6, 0x53, 0xcc, + 0x2a, 0x1c, 0xe1, 0x81, 0x0a, 0xaa, 0x8e, 0xc3, 0x76, 0xa6, 0x40, 0x0e, + 0x25, 0x67, 0xf6, 0x31, +}; +static const struct drbg_kat_pr_true kat3209_t = { + 13, kat3209_entropyin, kat3209_nonce, kat3209_persstr, + kat3209_entropyinpr1, kat3209_addinpr1, kat3209_entropyinpr2, + kat3209_addinpr2, kat3209_retbits +}; +static const struct drbg_kat kat3209 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3209_t +}; + +static const unsigned char kat3210_entropyin[] = { + 0x51, 0x4f, 0x73, 0xb1, 0x7f, 0xd8, 0x1a, 0x39, 0xdc, 0xe9, 0x80, 0x6a, + 0xd4, 0xd2, 0xe4, 0x4f, 0xbe, 0x23, 0x88, 0x99, 0x1e, 0x2c, 0x5f, 0xcc, +}; +static const unsigned char kat3210_nonce[] = { + 0x25, 0x88, 0x89, 0x46, 0xbd, 0x90, 0x72, 0xbc, 0x14, 0x29, 0x88, 0x62, + 0x3b, 0xce, 0xb3, 0x81, +}; +static const unsigned char kat3210_persstr[] = {0}; +static const unsigned char kat3210_entropyinpr1[] = { + 0x58, 0xff, 0x0f, 0x79, 0xbb, 0x4e, 0x5b, 0x63, 0x87, 0xbc, 0x0d, 0xc2, + 0xa4, 0x9b, 0x23, 0x31, 0xc0, 0xcc, 0x06, 0x55, 0x70, 0xf3, 0x8b, 0x22, +}; +static const unsigned char kat3210_addinpr1[] = { + 0xe2, 0x95, 0xab, 0x17, 0x22, 0xe9, 0xd9, 0xba, 0xdc, 0x6c, 0xe8, 0x2a, + 0x2e, 0xa6, 0xc7, 0x40, 0x70, 0x22, 0x31, 0xe6, 0x12, 0xa3, 0x16, 0x69, + 0x3e, 0x1a, 0x08, 0xa1, 0x89, 0xeb, 0x3a, 0x29, +}; +static const unsigned char kat3210_entropyinpr2[] = { + 0x7f, 0xdb, 0x1b, 0x16, 0x9a, 0xcc, 0xc8, 0xd6, 0x99, 0xa2, 0x5c, 0x52, + 0xac, 0xe7, 0x1a, 0x5b, 0x5a, 0x8c, 0xdd, 0x8a, 0x9b, 0x7b, 0xcb, 0x25, +}; +static const unsigned char kat3210_addinpr2[] = { + 0x84, 0xf4, 0x0b, 0x0f, 0x3a, 0x2d, 0x5b, 0x73, 0x7b, 0x35, 0x28, 0xf4, + 0xb3, 0xf5, 0xb1, 0x4e, 0x80, 0xe2, 0x0e, 0xc0, 0xb9, 0x9a, 0xca, 0xfc, + 0x55, 0x8c, 0x8b, 0xb2, 0xa7, 0xc6, 0x96, 0xbb, +}; +static const unsigned char kat3210_retbits[] = { + 0xc9, 0x72, 0x94, 0x16, 0xff, 0xad, 0x89, 0x44, 0xcc, 0x06, 0xc3, 0xf8, + 0xea, 0xeb, 0xfd, 0xd4, 0x42, 0x19, 0xcc, 0x5c, 0xe4, 0xe4, 0x08, 0xc3, + 0x22, 0x21, 0xa5, 0x13, 0xf2, 0x85, 0xa3, 0x0b, 0x19, 0xf4, 0xab, 0x45, + 0xa4, 0x30, 0xfb, 0x49, 0xbd, 0x68, 0xb7, 0x39, 0x8d, 0xee, 0xbe, 0xa5, + 0xa1, 0x94, 0xa4, 0xa2, 0x24, 0x8a, 0x05, 0x47, 0xdf, 0x2f, 0x76, 0x3e, + 0x40, 0xee, 0x70, 0x05, +}; +static const struct drbg_kat_pr_true kat3210_t = { + 14, kat3210_entropyin, kat3210_nonce, kat3210_persstr, + kat3210_entropyinpr1, kat3210_addinpr1, kat3210_entropyinpr2, + kat3210_addinpr2, kat3210_retbits +}; +static const struct drbg_kat kat3210 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3210_t +}; + +static const unsigned char kat3211_entropyin[] = { + 0x96, 0x31, 0xd3, 0xfe, 0xe5, 0xe8, 0xed, 0x7c, 0x6c, 0x19, 0x62, 0x18, + 0x51, 0x01, 0xbb, 0x20, 0x23, 0x04, 0x95, 0xbc, 0xb9, 0xde, 0xac, 0x3d, +}; +static const unsigned char kat3211_nonce[] = { + 0x75, 0x50, 0x8c, 0xd6, 0xe5, 0xf3, 0x76, 0xf9, 0x0f, 0x80, 0xc6, 0x4e, + 0x77, 0xfe, 0xb1, 0xee, +}; +static const unsigned char kat3211_persstr[] = { + 0x21, 0x31, 0xc8, 0x25, 0x72, 0xd1, 0x02, 0x7a, 0xb1, 0xbb, 0x86, 0x0f, + 0x7a, 0x8c, 0x54, 0xa1, 0xda, 0x20, 0xcb, 0x2d, 0xae, 0x5d, 0x25, 0x4a, + 0x79, 0xc1, 0x24, 0x07, 0x05, 0xd1, 0x47, 0x9f, +}; +static const unsigned char kat3211_entropyinpr1[] = { + 0x86, 0x54, 0x06, 0xad, 0x56, 0xd8, 0x63, 0x16, 0x41, 0xfb, 0x2d, 0xcd, + 0xf9, 0xb8, 0x04, 0x8e, 0x4e, 0x82, 0xed, 0x50, 0x7d, 0x5c, 0xc9, 0xd9, +}; +static const unsigned char kat3211_addinpr1[] = {0}; +static const unsigned char kat3211_entropyinpr2[] = { + 0xbb, 0x90, 0x4d, 0x8f, 0xb6, 0xb0, 0x25, 0xa5, 0x01, 0x35, 0x10, 0x26, + 0x36, 0x95, 0x68, 0x7a, 0xb2, 0x02, 0x95, 0x52, 0xeb, 0x99, 0xc5, 0x75, +}; +static const unsigned char kat3211_addinpr2[] = {0}; +static const unsigned char kat3211_retbits[] = { + 0x4b, 0x3e, 0x8d, 0xe3, 0x3e, 0xdf, 0x7f, 0x4c, 0xa0, 0x46, 0x01, 0x43, + 0x8a, 0x85, 0x3d, 0x77, 0x94, 0x96, 0x3c, 0x77, 0xdd, 0xac, 0xd0, 0xde, + 0x3a, 0xd1, 0xab, 0x44, 0xc0, 0x47, 0xae, 0xcb, 0xb4, 0xb9, 0xa1, 0x1c, + 0x23, 0x5a, 0x3a, 0xe0, 0xb8, 0x26, 0x7d, 0x92, 0xc7, 0xe3, 0x00, 0x78, + 0xc4, 0xcf, 0x94, 0x9c, 0x2e, 0x21, 0xf2, 0xae, 0x65, 0x40, 0xb9, 0x18, + 0x97, 0x35, 0xf9, 0xdf, +}; +static const struct drbg_kat_pr_true kat3211_t = { + 0, kat3211_entropyin, kat3211_nonce, kat3211_persstr, + kat3211_entropyinpr1, kat3211_addinpr1, kat3211_entropyinpr2, + kat3211_addinpr2, kat3211_retbits +}; +static const struct drbg_kat kat3211 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3211_t +}; + +static const unsigned char kat3212_entropyin[] = { + 0x98, 0x43, 0xdc, 0x9d, 0x0e, 0x11, 0x2e, 0x50, 0xb5, 0xdc, 0x8c, 0x02, + 0x66, 0x0a, 0xf7, 0x5b, 0x0b, 0x05, 0x81, 0xee, 0xaa, 0xff, 0xef, 0x63, +}; +static const unsigned char kat3212_nonce[] = { + 0xe8, 0x9d, 0x90, 0xd1, 0x71, 0x30, 0xed, 0xe9, 0xdf, 0x75, 0xd9, 0xb1, + 0x73, 0xa5, 0x62, 0xfe, +}; +static const unsigned char kat3212_persstr[] = { + 0xab, 0x94, 0x74, 0x89, 0x21, 0x5a, 0x28, 0x22, 0x4e, 0xd9, 0x51, 0x5a, + 0x23, 0x79, 0x66, 0x32, 0x87, 0x80, 0xab, 0x3a, 0x6e, 0xac, 0x6f, 0x4b, + 0x20, 0x0e, 0xd3, 0xf7, 0x4d, 0xd8, 0xec, 0x8d, +}; +static const unsigned char kat3212_entropyinpr1[] = { + 0xdd, 0x0a, 0xe1, 0x36, 0x18, 0x0c, 0x0b, 0x2d, 0x69, 0x6c, 0x69, 0x19, + 0xa5, 0x5e, 0x7e, 0xc1, 0xdf, 0x25, 0x9a, 0x50, 0x7f, 0x34, 0x5b, 0xd5, +}; +static const unsigned char kat3212_addinpr1[] = {0}; +static const unsigned char kat3212_entropyinpr2[] = { + 0xa7, 0x30, 0xb0, 0x75, 0x68, 0xd8, 0x7e, 0xf7, 0x6b, 0xb3, 0x3b, 0xd2, + 0x3e, 0x6c, 0x9e, 0xc5, 0xd1, 0x70, 0x8b, 0x2f, 0x14, 0x73, 0xb3, 0x20, +}; +static const unsigned char kat3212_addinpr2[] = {0}; +static const unsigned char kat3212_retbits[] = { + 0x7f, 0x81, 0x9a, 0x2d, 0xa0, 0x13, 0x72, 0x0a, 0x13, 0x59, 0xf2, 0xdc, + 0xf0, 0xd1, 0x11, 0xcd, 0x64, 0x72, 0xca, 0x97, 0x0e, 0x83, 0x53, 0xca, + 0xfb, 0x83, 0x47, 0x76, 0xcb, 0xa3, 0xd6, 0x89, 0x64, 0xe3, 0x2b, 0xce, + 0x96, 0x20, 0xfa, 0x40, 0x92, 0x1d, 0x40, 0x72, 0x0f, 0xb2, 0xa3, 0xbf, + 0xef, 0xb3, 0x46, 0xc7, 0x24, 0x8a, 0x1b, 0x4f, 0xb4, 0xfe, 0x90, 0xd5, + 0x24, 0xaa, 0x75, 0xcc, +}; +static const struct drbg_kat_pr_true kat3212_t = { + 1, kat3212_entropyin, kat3212_nonce, kat3212_persstr, + kat3212_entropyinpr1, kat3212_addinpr1, kat3212_entropyinpr2, + kat3212_addinpr2, kat3212_retbits +}; +static const struct drbg_kat kat3212 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3212_t +}; + +static const unsigned char kat3213_entropyin[] = { + 0x58, 0x34, 0xbb, 0xf1, 0x9e, 0x6a, 0x7b, 0xce, 0x04, 0x45, 0x1e, 0xbf, + 0x91, 0x22, 0x68, 0xc0, 0x42, 0x32, 0xad, 0x4b, 0x05, 0x17, 0xb4, 0xf8, +}; +static const unsigned char kat3213_nonce[] = { + 0xe4, 0x97, 0xb8, 0x86, 0xe7, 0xa8, 0xaa, 0x96, 0x87, 0x62, 0x82, 0xcf, + 0xc3, 0xe3, 0xa0, 0x14, +}; +static const unsigned char kat3213_persstr[] = { + 0xc1, 0x8b, 0x3d, 0xb2, 0x82, 0x4d, 0x5f, 0x01, 0xc4, 0xc2, 0x50, 0xb8, + 0x48, 0xdb, 0x27, 0xe0, 0xc6, 0x9a, 0x86, 0x4d, 0xa9, 0x5d, 0x0d, 0xfa, + 0xc1, 0x1b, 0xbe, 0x2f, 0x9d, 0x29, 0x8e, 0xa3, +}; +static const unsigned char kat3213_entropyinpr1[] = { + 0x67, 0x6c, 0x49, 0xba, 0xe4, 0xd4, 0x31, 0xaa, 0xc0, 0x8f, 0x34, 0x48, + 0x4b, 0x11, 0xbd, 0x37, 0xc7, 0x9f, 0xf6, 0xc4, 0x70, 0x4e, 0xba, 0x4d, +}; +static const unsigned char kat3213_addinpr1[] = {0}; +static const unsigned char kat3213_entropyinpr2[] = { + 0xe0, 0x04, 0x0f, 0x80, 0x81, 0xb1, 0xc9, 0x89, 0xf9, 0x9e, 0x1a, 0x3a, + 0x81, 0x38, 0xb7, 0xbe, 0x83, 0xba, 0x00, 0x7b, 0x5d, 0xbb, 0x81, 0x78, +}; +static const unsigned char kat3213_addinpr2[] = {0}; +static const unsigned char kat3213_retbits[] = { + 0x4a, 0x29, 0x51, 0x9c, 0x0f, 0xa8, 0x3d, 0xd7, 0x13, 0x49, 0xbf, 0xf8, + 0xc8, 0xa4, 0x6f, 0x4a, 0x8c, 0xce, 0xa6, 0xb3, 0xd1, 0x1e, 0xf8, 0xdc, + 0xb1, 0x9f, 0x3c, 0xef, 0x6e, 0x2b, 0x01, 0x5d, 0x04, 0xc8, 0x2f, 0x44, + 0x36, 0xcb, 0xd1, 0x13, 0xc1, 0x30, 0xd7, 0x93, 0xda, 0x6e, 0x4e, 0x58, + 0x32, 0x4f, 0xae, 0x10, 0x6a, 0x48, 0x96, 0xff, 0x63, 0x42, 0x97, 0x38, + 0x16, 0x75, 0x62, 0xf3, +}; +static const struct drbg_kat_pr_true kat3213_t = { + 2, kat3213_entropyin, kat3213_nonce, kat3213_persstr, + kat3213_entropyinpr1, kat3213_addinpr1, kat3213_entropyinpr2, + kat3213_addinpr2, kat3213_retbits +}; +static const struct drbg_kat kat3213 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3213_t +}; + +static const unsigned char kat3214_entropyin[] = { + 0x74, 0xc4, 0x6e, 0x26, 0x06, 0xa8, 0x58, 0x99, 0x3a, 0x16, 0xa3, 0x8e, + 0x38, 0x41, 0x54, 0x0c, 0xf0, 0x31, 0xc1, 0x91, 0x7a, 0xa3, 0x5e, 0xd5, +}; +static const unsigned char kat3214_nonce[] = { + 0xf7, 0x4d, 0x9a, 0x16, 0xbf, 0x6a, 0x0e, 0xbb, 0x70, 0xba, 0x14, 0x31, + 0xbe, 0xa9, 0xc6, 0xea, +}; +static const unsigned char kat3214_persstr[] = { + 0x52, 0x0e, 0x60, 0x7c, 0x5c, 0x9b, 0xfd, 0xa9, 0x73, 0x2d, 0x1f, 0x71, + 0xb4, 0xef, 0xc1, 0xac, 0x7c, 0x2c, 0x38, 0x57, 0x14, 0xf5, 0x8d, 0x31, + 0xad, 0xcb, 0x4b, 0x06, 0x3d, 0x9f, 0x56, 0x69, +}; +static const unsigned char kat3214_entropyinpr1[] = { + 0xa0, 0x12, 0x4b, 0x60, 0xd5, 0x8e, 0x1d, 0xa9, 0xf2, 0x8a, 0x68, 0xe9, + 0x85, 0x38, 0x83, 0xb4, 0xe6, 0x9e, 0x0f, 0xca, 0x8a, 0xbc, 0x0b, 0xf9, +}; +static const unsigned char kat3214_addinpr1[] = {0}; +static const unsigned char kat3214_entropyinpr2[] = { + 0x29, 0xb6, 0x56, 0x90, 0x0a, 0x46, 0x65, 0xc3, 0xa8, 0x9b, 0xed, 0x7d, + 0x2e, 0x22, 0x68, 0xdd, 0xf0, 0xac, 0xf4, 0x62, 0x11, 0xd3, 0x3d, 0x80, +}; +static const unsigned char kat3214_addinpr2[] = {0}; +static const unsigned char kat3214_retbits[] = { + 0xe1, 0xad, 0xc0, 0x2c, 0x6a, 0xb6, 0xff, 0xe2, 0x7a, 0xfa, 0xae, 0xa0, + 0xc4, 0x73, 0x21, 0x0b, 0xb8, 0x96, 0xb1, 0xab, 0xb3, 0xb0, 0x0d, 0x22, + 0x8e, 0xbe, 0x1a, 0x55, 0x10, 0x6c, 0x45, 0x1e, 0xa1, 0x5f, 0x51, 0x65, + 0xfa, 0x2f, 0x45, 0x62, 0xc0, 0x91, 0x45, 0x95, 0x98, 0xed, 0xe0, 0x5d, + 0xd1, 0x4d, 0xb1, 0x1d, 0x43, 0x05, 0x2c, 0x66, 0x9d, 0xfc, 0xfa, 0xba, + 0xa7, 0xbe, 0xe7, 0x65, +}; +static const struct drbg_kat_pr_true kat3214_t = { + 3, kat3214_entropyin, kat3214_nonce, kat3214_persstr, + kat3214_entropyinpr1, kat3214_addinpr1, kat3214_entropyinpr2, + kat3214_addinpr2, kat3214_retbits +}; +static const struct drbg_kat kat3214 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3214_t +}; + +static const unsigned char kat3215_entropyin[] = { + 0x4f, 0x08, 0xd8, 0x4e, 0xc7, 0x4b, 0xd6, 0xe3, 0xa6, 0xd8, 0x83, 0xbd, + 0xad, 0x0c, 0x78, 0x28, 0x15, 0x57, 0xfe, 0xba, 0xb5, 0x7a, 0xec, 0x6e, +}; +static const unsigned char kat3215_nonce[] = { + 0x4b, 0xa9, 0xb6, 0x06, 0xfb, 0x2d, 0x2b, 0x5d, 0x9b, 0xef, 0x21, 0xc5, + 0x35, 0xf6, 0x2b, 0x12, +}; +static const unsigned char kat3215_persstr[] = { + 0x4b, 0x33, 0x76, 0x27, 0x45, 0x3a, 0x95, 0x56, 0x3f, 0xbd, 0x3e, 0x08, + 0x6b, 0x80, 0x16, 0xf4, 0xe2, 0x51, 0x1d, 0x29, 0x28, 0x55, 0x40, 0x09, + 0xfa, 0x8d, 0xf6, 0xdd, 0x58, 0x53, 0x90, 0xdc, +}; +static const unsigned char kat3215_entropyinpr1[] = { + 0xb7, 0xcb, 0xdf, 0xe2, 0x6c, 0x30, 0xc4, 0x2f, 0x6c, 0x49, 0x1b, 0x07, + 0x64, 0x77, 0xfd, 0xd1, 0xe3, 0x59, 0xe9, 0x13, 0x4d, 0x0f, 0xe1, 0xa2, +}; +static const unsigned char kat3215_addinpr1[] = {0}; +static const unsigned char kat3215_entropyinpr2[] = { + 0x57, 0xdd, 0xe0, 0x01, 0x19, 0x6e, 0x62, 0x42, 0xce, 0xdb, 0xdb, 0xae, + 0x4d, 0xe2, 0xef, 0x2b, 0x67, 0x88, 0xcf, 0x40, 0xc6, 0x21, 0x1f, 0x19, +}; +static const unsigned char kat3215_addinpr2[] = {0}; +static const unsigned char kat3215_retbits[] = { + 0x5a, 0xc5, 0x44, 0x61, 0xe3, 0x46, 0x26, 0xbd, 0x9c, 0x21, 0xa4, 0xca, + 0x8f, 0x30, 0xf2, 0x3d, 0x76, 0xce, 0x2a, 0x7a, 0x17, 0xc3, 0xe3, 0x49, + 0xd5, 0xe9, 0x0b, 0x67, 0xb5, 0xa7, 0x01, 0xad, 0xcb, 0x2d, 0x39, 0x9d, + 0x2c, 0x91, 0xc7, 0xa1, 0xcf, 0x08, 0x5d, 0x4c, 0x9b, 0x1c, 0x5c, 0xba, + 0xb9, 0x4e, 0xd5, 0xa0, 0x48, 0x6c, 0xee, 0x80, 0xf8, 0x3e, 0x4c, 0x1a, + 0x43, 0x02, 0xcc, 0x38, +}; +static const struct drbg_kat_pr_true kat3215_t = { + 4, kat3215_entropyin, kat3215_nonce, kat3215_persstr, + kat3215_entropyinpr1, kat3215_addinpr1, kat3215_entropyinpr2, + kat3215_addinpr2, kat3215_retbits +}; +static const struct drbg_kat kat3215 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3215_t +}; + +static const unsigned char kat3216_entropyin[] = { + 0x3d, 0xbb, 0x33, 0x88, 0xad, 0xa8, 0x03, 0xf0, 0xb0, 0x5c, 0xf5, 0x69, + 0xf2, 0x2e, 0x69, 0x4d, 0x9d, 0x56, 0x13, 0xef, 0x0f, 0xc4, 0x30, 0x7b, +}; +static const unsigned char kat3216_nonce[] = { + 0xac, 0xbc, 0xf3, 0xfb, 0x5c, 0xf0, 0x7a, 0x0f, 0xeb, 0xe1, 0xef, 0xf4, + 0x4e, 0x1e, 0x8f, 0xf4, +}; +static const unsigned char kat3216_persstr[] = { + 0xd7, 0x93, 0x63, 0x19, 0x48, 0x92, 0x1d, 0x4c, 0x5d, 0x62, 0x7e, 0x31, + 0xdb, 0xa1, 0xc5, 0x73, 0x50, 0x65, 0x1b, 0x63, 0xff, 0x09, 0x99, 0xb2, + 0xd1, 0x83, 0xb0, 0x9b, 0x8b, 0x00, 0x95, 0x4a, +}; +static const unsigned char kat3216_entropyinpr1[] = { + 0xdc, 0x1f, 0xbb, 0x8c, 0xa0, 0x60, 0xe1, 0x66, 0x65, 0xba, 0x58, 0xb3, + 0xa9, 0x35, 0xdd, 0xa8, 0x78, 0xc4, 0x64, 0x20, 0xb0, 0x71, 0x74, 0xf4, +}; +static const unsigned char kat3216_addinpr1[] = {0}; +static const unsigned char kat3216_entropyinpr2[] = { + 0xda, 0x5b, 0xf9, 0x7b, 0xe1, 0xf2, 0xc8, 0xbc, 0xfc, 0x0a, 0x07, 0x57, + 0x80, 0xb8, 0xdb, 0x98, 0xb8, 0xe7, 0xbc, 0xb0, 0x9b, 0x22, 0xa9, 0x56, +}; +static const unsigned char kat3216_addinpr2[] = {0}; +static const unsigned char kat3216_retbits[] = { + 0xb9, 0x76, 0xd6, 0x80, 0xf5, 0xa6, 0x4f, 0xce, 0x15, 0xfc, 0x39, 0xf4, + 0x9e, 0x83, 0xf3, 0x2b, 0x32, 0x5b, 0xad, 0x21, 0x26, 0x71, 0xda, 0x20, + 0x86, 0xa8, 0x2a, 0x07, 0xb7, 0xb1, 0xff, 0xd3, 0x3b, 0x1b, 0x99, 0x02, + 0x25, 0x95, 0x50, 0x7c, 0x90, 0xf2, 0x6a, 0x3a, 0x21, 0xbf, 0x98, 0xec, + 0xbd, 0x5c, 0xea, 0x7d, 0x69, 0x7c, 0x6a, 0x16, 0x0e, 0xd1, 0x64, 0x79, + 0x02, 0xe3, 0x6a, 0xa2, +}; +static const struct drbg_kat_pr_true kat3216_t = { + 5, kat3216_entropyin, kat3216_nonce, kat3216_persstr, + kat3216_entropyinpr1, kat3216_addinpr1, kat3216_entropyinpr2, + kat3216_addinpr2, kat3216_retbits +}; +static const struct drbg_kat kat3216 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3216_t +}; + +static const unsigned char kat3217_entropyin[] = { + 0xec, 0x9d, 0x06, 0x54, 0xee, 0x12, 0xe8, 0xb2, 0xd9, 0x98, 0x35, 0xf6, + 0x40, 0xfb, 0x90, 0x26, 0x00, 0x6e, 0xcc, 0x32, 0x62, 0x22, 0x88, 0x50, +}; +static const unsigned char kat3217_nonce[] = { + 0x4b, 0xdb, 0x7d, 0x3d, 0x02, 0x49, 0x49, 0x4f, 0x44, 0x08, 0xf5, 0xe3, + 0x15, 0x8f, 0xef, 0x00, +}; +static const unsigned char kat3217_persstr[] = { + 0xf4, 0x3e, 0xc6, 0xab, 0xe6, 0x15, 0x14, 0x30, 0x3e, 0x93, 0xa8, 0xe3, + 0xb9, 0x62, 0xbb, 0x76, 0x45, 0x07, 0xc9, 0x5a, 0x36, 0x1d, 0x12, 0x65, + 0x0d, 0x7d, 0xdd, 0xf3, 0x4e, 0x52, 0x8a, 0x93, +}; +static const unsigned char kat3217_entropyinpr1[] = { + 0x8c, 0xbf, 0x62, 0xef, 0x1d, 0xd5, 0xe0, 0x31, 0x57, 0x84, 0x47, 0x25, + 0x27, 0x20, 0x29, 0xbc, 0x93, 0x53, 0x13, 0xa5, 0x42, 0x1b, 0xd6, 0x4f, +}; +static const unsigned char kat3217_addinpr1[] = {0}; +static const unsigned char kat3217_entropyinpr2[] = { + 0x5e, 0xd7, 0x6a, 0xbf, 0x5e, 0x86, 0x08, 0xa9, 0x75, 0x43, 0xb2, 0x80, + 0x95, 0x3c, 0xc0, 0x1f, 0x93, 0x32, 0x1b, 0x55, 0x4c, 0xd4, 0x6c, 0xc1, +}; +static const unsigned char kat3217_addinpr2[] = {0}; +static const unsigned char kat3217_retbits[] = { + 0x43, 0x9c, 0x2f, 0xe9, 0x89, 0x22, 0x4a, 0x4b, 0xa5, 0xc9, 0x45, 0x23, + 0xd3, 0x50, 0x83, 0x76, 0x28, 0x45, 0xf2, 0xf8, 0x8c, 0x8a, 0x1b, 0xe3, + 0xf1, 0xa4, 0xf8, 0x9e, 0xe0, 0xa1, 0x3c, 0x92, 0x6a, 0x73, 0x71, 0x72, + 0x47, 0x18, 0xb2, 0xad, 0x3f, 0xcd, 0x68, 0x1e, 0x19, 0x94, 0xe6, 0x94, + 0x97, 0xc9, 0x4b, 0xa0, 0x8e, 0x67, 0xe5, 0x18, 0x9b, 0x16, 0x70, 0x99, + 0xe5, 0x4f, 0x07, 0x03, +}; +static const struct drbg_kat_pr_true kat3217_t = { + 6, kat3217_entropyin, kat3217_nonce, kat3217_persstr, + kat3217_entropyinpr1, kat3217_addinpr1, kat3217_entropyinpr2, + kat3217_addinpr2, kat3217_retbits +}; +static const struct drbg_kat kat3217 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3217_t +}; + +static const unsigned char kat3218_entropyin[] = { + 0x18, 0xde, 0xa6, 0xe0, 0xbd, 0xda, 0x95, 0x2b, 0xfd, 0x98, 0x38, 0x13, + 0xd5, 0xfa, 0x4f, 0xf8, 0xeb, 0xa3, 0x3d, 0x94, 0xba, 0x12, 0x1c, 0x50, +}; +static const unsigned char kat3218_nonce[] = { + 0x2e, 0xcc, 0x42, 0x99, 0x87, 0x38, 0xe0, 0x3c, 0xc2, 0x7d, 0xdb, 0x96, + 0x14, 0x8c, 0x83, 0x4e, +}; +static const unsigned char kat3218_persstr[] = { + 0xdb, 0xc8, 0xd6, 0x0b, 0x97, 0x7f, 0xff, 0x2e, 0x70, 0xac, 0x77, 0x02, + 0xf2, 0xde, 0x1b, 0x8f, 0xa8, 0x6b, 0x52, 0x7e, 0xb2, 0xac, 0xad, 0x5f, + 0x68, 0x8d, 0x89, 0xd9, 0x88, 0x4e, 0x51, 0xba, +}; +static const unsigned char kat3218_entropyinpr1[] = { + 0xc9, 0x46, 0x20, 0x86, 0x7d, 0xbd, 0xa5, 0x04, 0xbd, 0xba, 0xf1, 0x83, + 0xa1, 0xe3, 0xea, 0x6f, 0xca, 0x52, 0x89, 0x8b, 0x07, 0xad, 0x48, 0xaf, +}; +static const unsigned char kat3218_addinpr1[] = {0}; +static const unsigned char kat3218_entropyinpr2[] = { + 0x94, 0x40, 0x95, 0xb8, 0x6a, 0x9d, 0x01, 0xce, 0x27, 0x0f, 0x40, 0xc7, + 0xd2, 0x35, 0x9d, 0x62, 0x3a, 0x0f, 0xa6, 0x30, 0x39, 0xf8, 0x67, 0x42, +}; +static const unsigned char kat3218_addinpr2[] = {0}; +static const unsigned char kat3218_retbits[] = { + 0xb9, 0xea, 0x99, 0x09, 0xd0, 0x00, 0x64, 0xea, 0xab, 0x8d, 0x0e, 0x28, + 0x8a, 0xdd, 0xd2, 0xcb, 0x0c, 0xf4, 0x43, 0x6d, 0xf6, 0xf5, 0x32, 0x86, + 0x12, 0xdb, 0xc9, 0xb8, 0x8e, 0x02, 0xb7, 0x33, 0xad, 0xe1, 0x33, 0xbb, + 0xc5, 0xe1, 0xd2, 0x43, 0x72, 0x7e, 0x98, 0x5a, 0x1d, 0xcc, 0x79, 0xb3, + 0x4a, 0x1d, 0x9e, 0x8d, 0x1d, 0x98, 0x30, 0xe3, 0xe0, 0x3f, 0x2b, 0x34, + 0x74, 0x26, 0xe2, 0xc7, +}; +static const struct drbg_kat_pr_true kat3218_t = { + 7, kat3218_entropyin, kat3218_nonce, kat3218_persstr, + kat3218_entropyinpr1, kat3218_addinpr1, kat3218_entropyinpr2, + kat3218_addinpr2, kat3218_retbits +}; +static const struct drbg_kat kat3218 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3218_t +}; + +static const unsigned char kat3219_entropyin[] = { + 0x83, 0x23, 0xd6, 0xfb, 0x62, 0xdc, 0x4d, 0x33, 0x31, 0xf5, 0xf7, 0x74, + 0x8f, 0xa9, 0x91, 0x87, 0xed, 0x01, 0xf5, 0x8f, 0x4f, 0xdc, 0x68, 0xf3, +}; +static const unsigned char kat3219_nonce[] = { + 0x0e, 0xe1, 0xa6, 0x23, 0x2b, 0xf4, 0xce, 0x10, 0x34, 0xf6, 0xfc, 0xea, + 0x07, 0xb5, 0x29, 0x79, +}; +static const unsigned char kat3219_persstr[] = { + 0xa5, 0xc5, 0x53, 0xdb, 0x9f, 0xca, 0xa8, 0xb1, 0xdf, 0x7f, 0xfb, 0x01, + 0x9e, 0xab, 0x1b, 0xb9, 0x80, 0x90, 0xb1, 0xfa, 0x95, 0x74, 0x32, 0x08, + 0x32, 0x65, 0x15, 0x7a, 0x57, 0x0a, 0xd6, 0x7e, +}; +static const unsigned char kat3219_entropyinpr1[] = { + 0x06, 0x04, 0xf0, 0xeb, 0x6a, 0x2a, 0x75, 0x13, 0x55, 0x96, 0xce, 0x5a, + 0x2a, 0xf3, 0xd7, 0x71, 0xe1, 0x6d, 0xc0, 0x2a, 0x07, 0xa9, 0x0b, 0xf7, +}; +static const unsigned char kat3219_addinpr1[] = {0}; +static const unsigned char kat3219_entropyinpr2[] = { + 0x45, 0xaa, 0x65, 0x61, 0x29, 0xef, 0xb8, 0x3f, 0xcb, 0x1f, 0x9f, 0x01, + 0x8d, 0x3d, 0x6c, 0x12, 0x24, 0x86, 0x06, 0xba, 0xc2, 0xe5, 0xe1, 0x4b, +}; +static const unsigned char kat3219_addinpr2[] = {0}; +static const unsigned char kat3219_retbits[] = { + 0x40, 0x04, 0x00, 0x9a, 0x4f, 0xb2, 0x61, 0x4c, 0xc1, 0x97, 0xb3, 0xd0, + 0x52, 0xe6, 0x80, 0x79, 0xd4, 0x58, 0x38, 0x04, 0xb2, 0xbf, 0x03, 0x74, + 0x7e, 0x40, 0xee, 0x7f, 0x52, 0xab, 0xe2, 0x2c, 0x58, 0xc3, 0x05, 0x9a, + 0xac, 0xf1, 0xb1, 0x83, 0x8c, 0x8b, 0x3f, 0xfc, 0x4f, 0xdf, 0x47, 0xa1, + 0x94, 0xd7, 0x83, 0x6b, 0x81, 0x83, 0x6f, 0xcf, 0x1c, 0x7d, 0xe5, 0x65, + 0x26, 0x57, 0x57, 0x86, +}; +static const struct drbg_kat_pr_true kat3219_t = { + 8, kat3219_entropyin, kat3219_nonce, kat3219_persstr, + kat3219_entropyinpr1, kat3219_addinpr1, kat3219_entropyinpr2, + kat3219_addinpr2, kat3219_retbits +}; +static const struct drbg_kat kat3219 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3219_t +}; + +static const unsigned char kat3220_entropyin[] = { + 0x51, 0x49, 0x60, 0x9e, 0x75, 0x3f, 0x20, 0x74, 0x9f, 0xd0, 0x0b, 0x4b, + 0xcb, 0xce, 0x92, 0x61, 0xe5, 0x74, 0x6c, 0xfd, 0xf6, 0xe2, 0x37, 0xea, +}; +static const unsigned char kat3220_nonce[] = { + 0xf8, 0xa7, 0x7e, 0x34, 0xd7, 0x7e, 0x0a, 0x9c, 0x4c, 0xb1, 0xc5, 0x0c, + 0x5f, 0x8b, 0x61, 0xb2, +}; +static const unsigned char kat3220_persstr[] = { + 0x18, 0xeb, 0xa2, 0xee, 0xc8, 0x1a, 0xc9, 0xfc, 0x8e, 0x88, 0xce, 0x8f, + 0xed, 0xf2, 0x22, 0xaa, 0x4e, 0x37, 0x43, 0xf2, 0x7f, 0x9c, 0xbe, 0x5d, + 0x9e, 0x55, 0xd1, 0x63, 0x84, 0x3b, 0xd4, 0x61, +}; +static const unsigned char kat3220_entropyinpr1[] = { + 0xbc, 0x4a, 0x35, 0x39, 0xa4, 0x6c, 0xa3, 0xd7, 0x4a, 0xf1, 0x8a, 0xe0, + 0x7f, 0xf0, 0xe1, 0x4a, 0x4d, 0x35, 0x3f, 0xd2, 0xb3, 0x33, 0x44, 0xe9, +}; +static const unsigned char kat3220_addinpr1[] = {0}; +static const unsigned char kat3220_entropyinpr2[] = { + 0xe8, 0xeb, 0x4c, 0x78, 0x85, 0x25, 0x2d, 0xea, 0xea, 0xf4, 0xb7, 0xb5, + 0x76, 0x5b, 0x02, 0xa9, 0x2a, 0x68, 0xf0, 0xbd, 0xac, 0x93, 0x53, 0xad, +}; +static const unsigned char kat3220_addinpr2[] = {0}; +static const unsigned char kat3220_retbits[] = { + 0x4b, 0x61, 0x0b, 0x6f, 0x96, 0xdc, 0x51, 0x7f, 0xd4, 0x38, 0x33, 0x2f, + 0x51, 0x33, 0xaa, 0xc9, 0x93, 0xdb, 0x66, 0x07, 0x8b, 0x6c, 0x55, 0xfb, + 0x8a, 0xa8, 0x78, 0x36, 0xdc, 0x2c, 0x69, 0xd8, 0x7b, 0xdf, 0x8b, 0x47, + 0xba, 0xc5, 0x06, 0x02, 0x68, 0x00, 0xde, 0x19, 0xea, 0x57, 0x32, 0xb2, + 0xf2, 0x22, 0xfc, 0x2b, 0xcf, 0x37, 0xd6, 0xc2, 0x05, 0x49, 0x79, 0xa7, + 0x80, 0x04, 0x68, 0x97, +}; +static const struct drbg_kat_pr_true kat3220_t = { + 9, kat3220_entropyin, kat3220_nonce, kat3220_persstr, + kat3220_entropyinpr1, kat3220_addinpr1, kat3220_entropyinpr2, + kat3220_addinpr2, kat3220_retbits +}; +static const struct drbg_kat kat3220 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3220_t +}; + +static const unsigned char kat3221_entropyin[] = { + 0x39, 0x70, 0x01, 0x40, 0x53, 0x78, 0x2e, 0x60, 0x80, 0xfb, 0x67, 0xd8, + 0xd3, 0x39, 0xef, 0x59, 0x0c, 0x49, 0x8d, 0x9d, 0x18, 0x2f, 0x76, 0x50, +}; +static const unsigned char kat3221_nonce[] = { + 0xd9, 0x66, 0xa0, 0xa6, 0x90, 0x1e, 0x25, 0x07, 0x84, 0x40, 0x92, 0x09, + 0x73, 0xa5, 0xde, 0xd2, +}; +static const unsigned char kat3221_persstr[] = { + 0xcd, 0x2b, 0x40, 0x74, 0x90, 0x56, 0x84, 0x27, 0x51, 0xa0, 0xde, 0x7d, + 0xd0, 0xd0, 0x9c, 0xab, 0xd3, 0x21, 0x16, 0xd9, 0xbf, 0x3b, 0xd0, 0x4c, + 0x62, 0x02, 0x2a, 0x38, 0xdd, 0x47, 0x8b, 0x25, +}; +static const unsigned char kat3221_entropyinpr1[] = { + 0x6d, 0x79, 0xce, 0xf4, 0xad, 0x7b, 0x01, 0xff, 0x82, 0xf1, 0x86, 0xc9, + 0xe1, 0x7e, 0x37, 0x04, 0x55, 0xf1, 0x11, 0xc5, 0x3e, 0x67, 0xfe, 0x0e, +}; +static const unsigned char kat3221_addinpr1[] = {0}; +static const unsigned char kat3221_entropyinpr2[] = { + 0xbe, 0xa3, 0x0f, 0x21, 0x32, 0x98, 0x7e, 0xa6, 0xbb, 0x0c, 0x69, 0xd6, + 0xb4, 0xba, 0x67, 0xf1, 0x3a, 0xcb, 0xc6, 0xac, 0x7f, 0xb6, 0x4d, 0x46, +}; +static const unsigned char kat3221_addinpr2[] = {0}; +static const unsigned char kat3221_retbits[] = { + 0x64, 0x57, 0x25, 0x39, 0x7e, 0xbb, 0x9b, 0x18, 0x48, 0xcd, 0x89, 0xee, + 0x6f, 0x98, 0x59, 0x5d, 0x0a, 0x01, 0x90, 0xc3, 0x17, 0x6e, 0x15, 0xf9, + 0x14, 0x0f, 0xf3, 0x0c, 0xa5, 0x8e, 0xe4, 0xa7, 0x84, 0x89, 0xc1, 0x48, + 0x0a, 0x00, 0xce, 0xbf, 0x06, 0xc4, 0x03, 0xcc, 0x9e, 0xd8, 0x0f, 0x40, + 0x31, 0xf1, 0x6c, 0xf8, 0x79, 0xa1, 0x8f, 0x6c, 0x48, 0xb6, 0x39, 0xa8, + 0xfc, 0x7a, 0xc9, 0x06, +}; +static const struct drbg_kat_pr_true kat3221_t = { + 10, kat3221_entropyin, kat3221_nonce, kat3221_persstr, + kat3221_entropyinpr1, kat3221_addinpr1, kat3221_entropyinpr2, + kat3221_addinpr2, kat3221_retbits +}; +static const struct drbg_kat kat3221 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3221_t +}; + +static const unsigned char kat3222_entropyin[] = { + 0xc5, 0x8c, 0xef, 0xfd, 0xd2, 0xb4, 0x75, 0x14, 0x2f, 0x03, 0x4f, 0x8d, + 0x26, 0x65, 0xdb, 0xf0, 0xf4, 0xcd, 0x62, 0x13, 0x63, 0xa0, 0x14, 0x91, +}; +static const unsigned char kat3222_nonce[] = { + 0x37, 0xc9, 0xc2, 0x4b, 0x7b, 0xf0, 0x45, 0x9f, 0x06, 0x3e, 0xfb, 0xe1, + 0x3b, 0xd5, 0xe6, 0x6d, +}; +static const unsigned char kat3222_persstr[] = { + 0xe5, 0x14, 0xfa, 0xed, 0x1c, 0x02, 0x79, 0x17, 0xf5, 0xb8, 0x35, 0xc9, + 0xa8, 0xe7, 0x9c, 0x56, 0xdf, 0xba, 0x3f, 0x06, 0x02, 0x74, 0x36, 0x42, + 0x92, 0xc3, 0x03, 0x46, 0xeb, 0xe9, 0x96, 0xf1, +}; +static const unsigned char kat3222_entropyinpr1[] = { + 0xbe, 0xaa, 0x01, 0x19, 0xcb, 0xbc, 0xde, 0xc5, 0xe7, 0x42, 0x83, 0x4c, + 0x4f, 0x91, 0x56, 0xf7, 0x8b, 0xee, 0x59, 0x93, 0x65, 0x7c, 0xe1, 0x42, +}; +static const unsigned char kat3222_addinpr1[] = {0}; +static const unsigned char kat3222_entropyinpr2[] = { + 0x04, 0xde, 0xfb, 0x3e, 0x85, 0xd0, 0x88, 0xcf, 0xf4, 0x9f, 0x48, 0xac, + 0x03, 0xab, 0xcd, 0xd5, 0x89, 0xc7, 0x9f, 0x0f, 0x4f, 0xe3, 0xcd, 0x21, +}; +static const unsigned char kat3222_addinpr2[] = {0}; +static const unsigned char kat3222_retbits[] = { + 0x25, 0x9a, 0x0c, 0x13, 0xa7, 0x53, 0xec, 0x22, 0xf2, 0x4a, 0xbf, 0xd1, + 0x1d, 0xad, 0x6c, 0xc2, 0xee, 0xef, 0x0e, 0xb7, 0x05, 0x28, 0xe5, 0xec, + 0xd5, 0x23, 0x1d, 0xd4, 0x8d, 0x5f, 0x5b, 0x2a, 0xc3, 0x06, 0x35, 0xa6, + 0x02, 0xdf, 0xb5, 0xc2, 0x5f, 0x47, 0xa4, 0x6f, 0x51, 0xa9, 0x5c, 0xa4, + 0xfa, 0x56, 0xc7, 0xc5, 0x2e, 0xb1, 0x51, 0x9d, 0x24, 0x5d, 0x6a, 0xa1, + 0x9f, 0x34, 0x26, 0x5f, +}; +static const struct drbg_kat_pr_true kat3222_t = { + 11, kat3222_entropyin, kat3222_nonce, kat3222_persstr, + kat3222_entropyinpr1, kat3222_addinpr1, kat3222_entropyinpr2, + kat3222_addinpr2, kat3222_retbits +}; +static const struct drbg_kat kat3222 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3222_t +}; + +static const unsigned char kat3223_entropyin[] = { + 0xf5, 0x20, 0x60, 0x18, 0x63, 0xa0, 0xd6, 0xd9, 0x69, 0x84, 0x6b, 0xed, + 0xe9, 0x2f, 0xa2, 0x96, 0x2c, 0xce, 0x5a, 0xff, 0x9f, 0xc5, 0x13, 0x73, +}; +static const unsigned char kat3223_nonce[] = { + 0x10, 0xac, 0xf0, 0x84, 0xe4, 0x63, 0xdb, 0xa0, 0xfd, 0xf9, 0xf5, 0x3e, + 0xe6, 0xe5, 0x13, 0xff, +}; +static const unsigned char kat3223_persstr[] = { + 0xb4, 0x4b, 0xa9, 0xb0, 0xad, 0x62, 0x21, 0xeb, 0x37, 0xf6, 0xc0, 0xa0, + 0xca, 0xdd, 0xd4, 0x6d, 0xa7, 0x7c, 0xc6, 0x1b, 0xbc, 0x06, 0xed, 0x40, + 0x83, 0xe6, 0xb2, 0xd8, 0xad, 0x53, 0x14, 0x62, +}; +static const unsigned char kat3223_entropyinpr1[] = { + 0x40, 0x54, 0x81, 0x29, 0xd4, 0x61, 0xff, 0x0f, 0x04, 0xe8, 0x3b, 0x5b, + 0x7a, 0xe7, 0x9e, 0x00, 0x32, 0x9e, 0x16, 0x46, 0xe7, 0x47, 0x6c, 0xd4, +}; +static const unsigned char kat3223_addinpr1[] = {0}; +static const unsigned char kat3223_entropyinpr2[] = { + 0x9a, 0xfe, 0xb6, 0x7a, 0xc7, 0x6e, 0x1e, 0x21, 0x25, 0xbf, 0x7b, 0xd1, + 0xcb, 0x3a, 0x20, 0x07, 0xc7, 0xbb, 0xc9, 0x92, 0xcb, 0xe4, 0x95, 0x63, +}; +static const unsigned char kat3223_addinpr2[] = {0}; +static const unsigned char kat3223_retbits[] = { + 0xed, 0x03, 0xe8, 0x86, 0x1d, 0xfa, 0x64, 0xc4, 0xc0, 0x5d, 0x05, 0x5a, + 0xd6, 0x4d, 0xea, 0x42, 0x5a, 0x72, 0xaa, 0xc6, 0xfd, 0xf5, 0x25, 0x4b, + 0x09, 0x55, 0x1b, 0x07, 0xce, 0x29, 0x4c, 0x63, 0xa8, 0x2b, 0xcd, 0xf2, + 0x26, 0xd8, 0x67, 0x6e, 0x95, 0x23, 0x98, 0x86, 0x35, 0x6f, 0x67, 0x6d, + 0xe5, 0x39, 0xce, 0x67, 0xc9, 0x74, 0x2c, 0x34, 0x0f, 0x57, 0xf9, 0x39, + 0xec, 0xf8, 0x58, 0xb5, +}; +static const struct drbg_kat_pr_true kat3223_t = { + 12, kat3223_entropyin, kat3223_nonce, kat3223_persstr, + kat3223_entropyinpr1, kat3223_addinpr1, kat3223_entropyinpr2, + kat3223_addinpr2, kat3223_retbits +}; +static const struct drbg_kat kat3223 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3223_t +}; + +static const unsigned char kat3224_entropyin[] = { + 0xdc, 0x83, 0x1d, 0xc0, 0x8a, 0x45, 0x94, 0x81, 0xa0, 0xb3, 0x03, 0x25, + 0xd8, 0x28, 0xe6, 0x13, 0x48, 0x40, 0xd8, 0x41, 0xa6, 0xcc, 0xb2, 0x20, +}; +static const unsigned char kat3224_nonce[] = { + 0x21, 0xc7, 0x1e, 0xf3, 0x62, 0x00, 0x2d, 0x2c, 0xc6, 0xfe, 0x58, 0x63, + 0x4c, 0x8c, 0xff, 0x95, +}; +static const unsigned char kat3224_persstr[] = { + 0x15, 0x73, 0x81, 0x63, 0x28, 0xc9, 0xe1, 0x87, 0x7b, 0x50, 0x5c, 0x65, + 0x9e, 0xc6, 0xa1, 0xc1, 0x80, 0x39, 0x8b, 0x5f, 0xf0, 0x05, 0x13, 0xfd, + 0x2c, 0x20, 0x54, 0x5b, 0xda, 0x0a, 0x14, 0xec, +}; +static const unsigned char kat3224_entropyinpr1[] = { + 0xda, 0x82, 0x58, 0x15, 0x78, 0x21, 0xbb, 0x87, 0x11, 0xcc, 0x10, 0x3c, + 0x48, 0xf2, 0x4b, 0xe5, 0x3f, 0xff, 0xd2, 0xf2, 0xf2, 0xbe, 0x9f, 0x3b, +}; +static const unsigned char kat3224_addinpr1[] = {0}; +static const unsigned char kat3224_entropyinpr2[] = { + 0x29, 0xe7, 0x17, 0x27, 0xc5, 0xb1, 0x30, 0xb9, 0xbf, 0xbb, 0x92, 0x9d, + 0xe8, 0x90, 0x6a, 0xfb, 0x77, 0x57, 0x25, 0xc7, 0xb1, 0xac, 0xc6, 0x96, +}; +static const unsigned char kat3224_addinpr2[] = {0}; +static const unsigned char kat3224_retbits[] = { + 0xbc, 0x56, 0xa9, 0x7f, 0x70, 0x64, 0x70, 0x5e, 0x23, 0xcc, 0x3e, 0x02, + 0x6c, 0x3f, 0x60, 0xa2, 0xc4, 0x68, 0xd4, 0x7d, 0x3d, 0x7c, 0x1f, 0x74, + 0x7a, 0x1a, 0x3f, 0x77, 0x2d, 0xf9, 0x9b, 0xfc, 0x2a, 0x2c, 0xad, 0x74, + 0x37, 0xdf, 0x01, 0x53, 0xa8, 0x9c, 0x05, 0xdf, 0xb2, 0x18, 0xbc, 0xb7, + 0x40, 0x3d, 0x92, 0x1f, 0xc3, 0x42, 0xe6, 0xc8, 0x58, 0xa7, 0xb7, 0x83, + 0x90, 0x56, 0x0d, 0x65, +}; +static const struct drbg_kat_pr_true kat3224_t = { + 13, kat3224_entropyin, kat3224_nonce, kat3224_persstr, + kat3224_entropyinpr1, kat3224_addinpr1, kat3224_entropyinpr2, + kat3224_addinpr2, kat3224_retbits +}; +static const struct drbg_kat kat3224 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3224_t +}; + +static const unsigned char kat3225_entropyin[] = { + 0xca, 0xea, 0xbd, 0x72, 0x0d, 0x43, 0x1b, 0x86, 0x3a, 0x95, 0x20, 0x92, + 0x62, 0x4e, 0x28, 0xeb, 0x5c, 0x5d, 0xc4, 0x15, 0x06, 0xd6, 0x30, 0xda, +}; +static const unsigned char kat3225_nonce[] = { + 0x81, 0x05, 0x94, 0xc9, 0xcf, 0x55, 0x58, 0x7c, 0x09, 0x0f, 0xd7, 0x2d, + 0x4e, 0x77, 0x65, 0x97, +}; +static const unsigned char kat3225_persstr[] = { + 0x02, 0x28, 0x9c, 0x34, 0xc2, 0xe6, 0xee, 0xf1, 0x56, 0xa4, 0xd9, 0xc2, + 0x22, 0x54, 0x15, 0x19, 0x11, 0x59, 0xfa, 0xe5, 0xf1, 0x67, 0xdd, 0xb4, + 0xce, 0xf7, 0x2e, 0xa4, 0xd0, 0xa5, 0x65, 0x96, +}; +static const unsigned char kat3225_entropyinpr1[] = { + 0x50, 0xfb, 0x17, 0x9c, 0x0a, 0x00, 0x58, 0x04, 0x60, 0xe8, 0x2b, 0xa7, + 0x61, 0x8e, 0xbc, 0x1e, 0xbd, 0xdd, 0xfd, 0x22, 0x2e, 0x08, 0x5b, 0x8f, +}; +static const unsigned char kat3225_addinpr1[] = {0}; +static const unsigned char kat3225_entropyinpr2[] = { + 0x57, 0xce, 0x45, 0xb5, 0xee, 0x35, 0xec, 0x9d, 0x35, 0x0c, 0xde, 0xfb, + 0xb5, 0x27, 0x4d, 0xd7, 0x45, 0x3a, 0x74, 0x07, 0x8b, 0x02, 0xf0, 0x10, +}; +static const unsigned char kat3225_addinpr2[] = {0}; +static const unsigned char kat3225_retbits[] = { + 0x41, 0xcf, 0x2e, 0x27, 0x68, 0xd7, 0x9b, 0xbf, 0x16, 0x69, 0x3b, 0x2a, + 0xe6, 0xf3, 0x21, 0x3f, 0x6e, 0x45, 0xf0, 0xc3, 0x17, 0xa4, 0x1d, 0x5b, + 0xea, 0x78, 0xeb, 0x21, 0xde, 0xde, 0x2f, 0x3b, 0x5a, 0x4a, 0x99, 0x7d, + 0x1d, 0x89, 0x57, 0x88, 0x29, 0xe9, 0x84, 0x57, 0x38, 0x61, 0x41, 0xe3, + 0x78, 0x8b, 0xcf, 0xe7, 0x8a, 0x79, 0x77, 0x21, 0xdf, 0x5e, 0x2d, 0x35, + 0x67, 0xaf, 0x48, 0x94, +}; +static const struct drbg_kat_pr_true kat3225_t = { + 14, kat3225_entropyin, kat3225_nonce, kat3225_persstr, + kat3225_entropyinpr1, kat3225_addinpr1, kat3225_entropyinpr2, + kat3225_addinpr2, kat3225_retbits +}; +static const struct drbg_kat kat3225 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3225_t +}; + +static const unsigned char kat3226_entropyin[] = { + 0x43, 0xcb, 0x1e, 0xc2, 0x25, 0xc4, 0x8d, 0xfd, 0xd8, 0xc1, 0x78, 0x94, + 0xa8, 0x28, 0xda, 0x0a, 0x27, 0xe1, 0xc1, 0x8a, 0x51, 0x1f, 0x0c, 0xb5, +}; +static const unsigned char kat3226_nonce[] = { + 0xca, 0xb1, 0xf0, 0xe4, 0x0b, 0x2b, 0xf2, 0x32, 0x6b, 0xbe, 0x6a, 0x3f, + 0xf3, 0x44, 0x68, 0x66, +}; +static const unsigned char kat3226_persstr[] = { + 0x56, 0xec, 0x59, 0xe7, 0xbd, 0x36, 0x37, 0x2e, 0xdf, 0x0e, 0x49, 0x2c, + 0x2f, 0x6d, 0x88, 0xb8, 0xc9, 0x6a, 0x40, 0xe2, 0x55, 0x50, 0xb4, 0xab, + 0xc4, 0xa4, 0x5e, 0xe1, 0x16, 0x3d, 0xe0, 0xf0, +}; +static const unsigned char kat3226_entropyinpr1[] = { + 0xf5, 0x26, 0x87, 0xcd, 0xcc, 0xd9, 0xe5, 0x09, 0xa7, 0x61, 0x4f, 0xd2, + 0x88, 0x3d, 0x99, 0x61, 0xe5, 0xc8, 0xf9, 0x49, 0x5b, 0xb6, 0x6f, 0x68, +}; +static const unsigned char kat3226_addinpr1[] = { + 0x3f, 0x1a, 0xea, 0x69, 0xe6, 0x66, 0xc5, 0xc5, 0x2d, 0x36, 0xf6, 0x40, + 0x9f, 0x31, 0x29, 0xee, 0xcb, 0x0a, 0x97, 0x9d, 0xba, 0x48, 0xca, 0xa5, + 0x2c, 0x87, 0x76, 0x4d, 0xac, 0x63, 0x7f, 0x6e, +}; +static const unsigned char kat3226_entropyinpr2[] = { + 0x5d, 0x86, 0x7f, 0xf7, 0x7d, 0x0f, 0x59, 0x00, 0x58, 0x73, 0xf0, 0x37, + 0x00, 0x04, 0xd4, 0xf8, 0xe7, 0x81, 0x98, 0xba, 0x68, 0x3c, 0x2b, 0xe3, +}; +static const unsigned char kat3226_addinpr2[] = { + 0xbb, 0x0b, 0xc7, 0xdc, 0xb9, 0x81, 0xeb, 0x52, 0x16, 0x4f, 0xde, 0xb0, + 0x7c, 0xa5, 0xf9, 0xdc, 0x7b, 0x78, 0x90, 0x01, 0x73, 0x1f, 0xd9, 0x48, + 0x34, 0xe2, 0x86, 0x27, 0x54, 0x66, 0x32, 0x10, +}; +static const unsigned char kat3226_retbits[] = { + 0x19, 0xc9, 0x1f, 0x55, 0x5d, 0x76, 0x83, 0xf8, 0x44, 0xd5, 0x7f, 0x9d, + 0xac, 0xfe, 0x1a, 0x72, 0xe1, 0xe0, 0x61, 0x67, 0x35, 0xae, 0x56, 0x9f, + 0x37, 0x0e, 0xf1, 0xe7, 0x70, 0xe1, 0xa6, 0x3b, 0x9d, 0x8e, 0x10, 0x46, + 0x1a, 0xcd, 0xcd, 0xe8, 0x5e, 0xf0, 0x3b, 0x1e, 0xf7, 0x40, 0x24, 0xc1, + 0x75, 0xb2, 0xa7, 0x15, 0x0d, 0xed, 0x03, 0xa1, 0xe3, 0x08, 0x2c, 0xd4, + 0x6a, 0x49, 0x90, 0x93, +}; +static const struct drbg_kat_pr_true kat3226_t = { + 0, kat3226_entropyin, kat3226_nonce, kat3226_persstr, + kat3226_entropyinpr1, kat3226_addinpr1, kat3226_entropyinpr2, + kat3226_addinpr2, kat3226_retbits +}; +static const struct drbg_kat kat3226 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3226_t +}; + +static const unsigned char kat3227_entropyin[] = { + 0x90, 0xc2, 0x13, 0x64, 0xed, 0xe7, 0x9f, 0x1a, 0xfd, 0xba, 0xa5, 0x32, + 0x18, 0x6f, 0x9d, 0xdf, 0xd6, 0x3d, 0xf3, 0xf3, 0x2f, 0x54, 0x08, 0xa5, +}; +static const unsigned char kat3227_nonce[] = { + 0x33, 0xde, 0xa3, 0xaa, 0x07, 0x18, 0x70, 0x26, 0xa0, 0x3e, 0x5a, 0x29, + 0x2f, 0x02, 0x06, 0xd7, +}; +static const unsigned char kat3227_persstr[] = { + 0x9f, 0x5a, 0xcd, 0xaa, 0x96, 0xb9, 0x81, 0xd3, 0x63, 0x35, 0xa3, 0xc1, + 0x68, 0xda, 0x06, 0xd2, 0xf4, 0x69, 0x50, 0x47, 0x16, 0x6d, 0x2d, 0x8f, + 0x92, 0xf7, 0xb2, 0x9f, 0xe9, 0x17, 0x55, 0x71, +}; +static const unsigned char kat3227_entropyinpr1[] = { + 0xa6, 0xe3, 0x4e, 0x04, 0x5e, 0xe2, 0x58, 0x5b, 0xb7, 0x3b, 0x1f, 0x64, + 0x91, 0xe5, 0x44, 0x94, 0x14, 0x58, 0x57, 0xcf, 0xfa, 0x67, 0xbd, 0x12, +}; +static const unsigned char kat3227_addinpr1[] = { + 0xbb, 0x84, 0x7b, 0x9a, 0xb8, 0x99, 0x76, 0x92, 0x61, 0x90, 0x83, 0xa4, + 0xc3, 0x74, 0xc8, 0xc6, 0x8a, 0x40, 0x35, 0xb4, 0x5f, 0x9f, 0x07, 0x28, + 0xbc, 0xec, 0xcb, 0x07, 0x23, 0xb0, 0xb3, 0xaf, +}; +static const unsigned char kat3227_entropyinpr2[] = { + 0xcc, 0x7e, 0x98, 0x33, 0x97, 0x72, 0x22, 0xa5, 0x03, 0xde, 0xc2, 0x89, + 0xa7, 0xb8, 0xcd, 0xe7, 0xb4, 0x1a, 0x62, 0x7b, 0xec, 0x01, 0xab, 0xb3, +}; +static const unsigned char kat3227_addinpr2[] = { + 0xac, 0xdf, 0x0c, 0x91, 0x7a, 0x43, 0x92, 0x97, 0x29, 0x85, 0xbb, 0x68, + 0x74, 0xf7, 0x1e, 0x5d, 0xa5, 0xfe, 0x78, 0x26, 0xf1, 0xe0, 0xd2, 0x8d, + 0x56, 0x12, 0xfb, 0xfa, 0x05, 0xa9, 0xc5, 0xc0, +}; +static const unsigned char kat3227_retbits[] = { + 0x5f, 0x22, 0x6c, 0xf7, 0x5f, 0xe0, 0x5b, 0x27, 0x6d, 0xcb, 0xb3, 0x0a, + 0x6e, 0x33, 0x0f, 0x2c, 0x58, 0x3a, 0x9a, 0xa4, 0xc1, 0x97, 0x9d, 0x9c, + 0xeb, 0xca, 0x2c, 0xf3, 0x6d, 0x6b, 0x95, 0x9f, 0x10, 0xf0, 0x38, 0xf9, + 0xa0, 0x1e, 0xfc, 0xcf, 0xff, 0x0b, 0xa6, 0x11, 0xd0, 0x41, 0x81, 0xfd, + 0x4c, 0xdb, 0xeb, 0x3a, 0x7e, 0x62, 0x43, 0x4a, 0x4a, 0x13, 0x1d, 0xc9, + 0xe7, 0x94, 0x6c, 0x26, +}; +static const struct drbg_kat_pr_true kat3227_t = { + 1, kat3227_entropyin, kat3227_nonce, kat3227_persstr, + kat3227_entropyinpr1, kat3227_addinpr1, kat3227_entropyinpr2, + kat3227_addinpr2, kat3227_retbits +}; +static const struct drbg_kat kat3227 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3227_t +}; + +static const unsigned char kat3228_entropyin[] = { + 0x98, 0x5d, 0x12, 0xe6, 0xe4, 0xe2, 0xc8, 0xc6, 0xe0, 0x1e, 0xdc, 0xfa, + 0xca, 0x43, 0x92, 0xc4, 0xb1, 0x0f, 0xd3, 0x32, 0x44, 0x15, 0xac, 0x07, +}; +static const unsigned char kat3228_nonce[] = { + 0x3f, 0x8f, 0x6c, 0xc3, 0x87, 0x53, 0xde, 0x1e, 0xfe, 0x4a, 0x98, 0x5c, + 0xfa, 0xc8, 0xb6, 0x68, +}; +static const unsigned char kat3228_persstr[] = { + 0x4d, 0x33, 0x3e, 0xe0, 0xa5, 0x84, 0xa8, 0x14, 0xcf, 0x84, 0x6c, 0x35, + 0xba, 0x7c, 0x93, 0x0d, 0xe6, 0x93, 0x78, 0xae, 0x47, 0x95, 0x5e, 0x03, + 0x9e, 0xab, 0x17, 0x9b, 0x5b, 0x5e, 0xe2, 0xdb, +}; +static const unsigned char kat3228_entropyinpr1[] = { + 0x7f, 0x97, 0x9d, 0xcb, 0xf2, 0xf7, 0xa4, 0x03, 0x45, 0xc3, 0xe4, 0x2e, + 0x1f, 0x4f, 0x44, 0xa8, 0xa9, 0x1f, 0x29, 0x70, 0x6d, 0x55, 0x32, 0xcf, +}; +static const unsigned char kat3228_addinpr1[] = { + 0x68, 0xc2, 0xc1, 0xe9, 0x8c, 0x5a, 0x1e, 0x57, 0x4b, 0x70, 0x14, 0x31, + 0x6d, 0xaa, 0xcb, 0xf8, 0xc3, 0x63, 0x30, 0x27, 0x04, 0xe8, 0xa2, 0xfb, + 0x8b, 0xd1, 0x0f, 0x4b, 0xe2, 0x14, 0x6e, 0x9d, +}; +static const unsigned char kat3228_entropyinpr2[] = { + 0x93, 0x5d, 0x0d, 0xb1, 0x55, 0x59, 0x77, 0x27, 0x86, 0xd2, 0x49, 0x4e, + 0xa0, 0x21, 0x17, 0x60, 0xcf, 0xf5, 0x0d, 0x21, 0xc3, 0x0e, 0x28, 0x00, +}; +static const unsigned char kat3228_addinpr2[] = { + 0xd0, 0x6e, 0x09, 0xca, 0xe6, 0xbb, 0xce, 0x86, 0x17, 0xf5, 0xf4, 0x92, + 0xa3, 0x1c, 0x8b, 0xef, 0xcd, 0x69, 0x89, 0xf1, 0xca, 0x7d, 0x9c, 0xa1, + 0x43, 0xf5, 0x76, 0x33, 0x6d, 0x0c, 0x2a, 0x3a, +}; +static const unsigned char kat3228_retbits[] = { + 0x94, 0x7f, 0x8b, 0x76, 0x16, 0x68, 0x63, 0xaf, 0x59, 0xaa, 0x5f, 0xfa, + 0x49, 0x59, 0xc3, 0x9e, 0x00, 0x3a, 0xcb, 0xc6, 0x54, 0x38, 0x7d, 0x73, + 0x92, 0x39, 0x76, 0x22, 0xbb, 0x14, 0x59, 0x59, 0xd6, 0xec, 0x1b, 0x57, + 0xcf, 0xd6, 0x75, 0x49, 0x77, 0xc4, 0xed, 0xf9, 0xda, 0x08, 0xef, 0xa6, + 0x3a, 0x15, 0xf2, 0x8a, 0x74, 0x13, 0xea, 0x90, 0xf7, 0x48, 0x66, 0xa8, + 0x4d, 0x82, 0x75, 0xc1, +}; +static const struct drbg_kat_pr_true kat3228_t = { + 2, kat3228_entropyin, kat3228_nonce, kat3228_persstr, + kat3228_entropyinpr1, kat3228_addinpr1, kat3228_entropyinpr2, + kat3228_addinpr2, kat3228_retbits +}; +static const struct drbg_kat kat3228 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3228_t +}; + +static const unsigned char kat3229_entropyin[] = { + 0x0b, 0xfa, 0xe1, 0xf6, 0x87, 0x1c, 0x42, 0x44, 0x14, 0x77, 0xd5, 0x6b, + 0x12, 0x61, 0x47, 0x8c, 0x2b, 0x17, 0xc8, 0xdc, 0x02, 0xdf, 0x95, 0x67, +}; +static const unsigned char kat3229_nonce[] = { + 0x6e, 0x6a, 0x95, 0x20, 0x94, 0x45, 0x59, 0x62, 0x88, 0x68, 0xf7, 0xce, + 0x34, 0x55, 0x7c, 0xb1, +}; +static const unsigned char kat3229_persstr[] = { + 0x12, 0x49, 0x79, 0x65, 0x36, 0xb6, 0xcc, 0xe1, 0x81, 0x92, 0x83, 0x89, + 0x41, 0x60, 0x91, 0xf9, 0xff, 0x7a, 0xca, 0x40, 0xe3, 0xdc, 0xcd, 0x8b, + 0x22, 0x07, 0x46, 0x67, 0xcd, 0x8d, 0x45, 0xd1, +}; +static const unsigned char kat3229_entropyinpr1[] = { + 0xc6, 0xf9, 0x8d, 0x22, 0x6b, 0x64, 0x33, 0xc2, 0x13, 0x3b, 0xe5, 0xcb, + 0x3e, 0xd0, 0xdb, 0xe3, 0x6e, 0x44, 0xb3, 0x61, 0x2c, 0xbc, 0x99, 0x1c, +}; +static const unsigned char kat3229_addinpr1[] = { + 0xba, 0x27, 0xf8, 0x58, 0xef, 0x28, 0xea, 0x2e, 0x47, 0xe4, 0x32, 0xae, + 0xde, 0xf9, 0xb1, 0x4f, 0x6d, 0x74, 0xfc, 0x6c, 0xb2, 0x49, 0xf6, 0x07, + 0xe3, 0x49, 0xf4, 0xed, 0xa7, 0x1d, 0xc0, 0x70, +}; +static const unsigned char kat3229_entropyinpr2[] = { + 0xb1, 0x0d, 0xda, 0x8a, 0xb9, 0x3a, 0xe5, 0xca, 0x16, 0xea, 0x3c, 0x0f, + 0x14, 0x2f, 0x20, 0xca, 0xe5, 0xc9, 0x53, 0xcb, 0xea, 0x18, 0x03, 0x1f, +}; +static const unsigned char kat3229_addinpr2[] = { + 0x9f, 0x96, 0x7c, 0x24, 0x78, 0x0d, 0x84, 0x7c, 0x63, 0x32, 0x4d, 0xa6, + 0x44, 0x22, 0x78, 0x47, 0x13, 0x75, 0x20, 0x57, 0xcc, 0xb4, 0x87, 0x22, + 0xee, 0x98, 0xca, 0x4e, 0x67, 0x51, 0x03, 0xdb, +}; +static const unsigned char kat3229_retbits[] = { + 0x6b, 0x55, 0x9f, 0x2f, 0x03, 0x88, 0xa7, 0xd7, 0xff, 0x73, 0x28, 0x6a, + 0x02, 0xb6, 0xf5, 0x04, 0xe9, 0x14, 0x2d, 0xb7, 0xa1, 0xd5, 0xc3, 0xf9, + 0xb2, 0x1c, 0xde, 0x50, 0x8d, 0xa8, 0x38, 0xbd, 0xf6, 0x74, 0x2d, 0xb8, + 0x0d, 0x5b, 0x26, 0x47, 0xd1, 0xbd, 0x02, 0x4c, 0xa0, 0x16, 0x2e, 0x2d, + 0x65, 0x1a, 0xc3, 0x39, 0x26, 0x9f, 0xcc, 0x21, 0x91, 0x34, 0x72, 0x30, + 0x7d, 0xdd, 0x51, 0xb6, +}; +static const struct drbg_kat_pr_true kat3229_t = { + 3, kat3229_entropyin, kat3229_nonce, kat3229_persstr, + kat3229_entropyinpr1, kat3229_addinpr1, kat3229_entropyinpr2, + kat3229_addinpr2, kat3229_retbits +}; +static const struct drbg_kat kat3229 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3229_t +}; + +static const unsigned char kat3230_entropyin[] = { + 0x9d, 0x2a, 0x54, 0x0c, 0xa4, 0x4e, 0x2a, 0x55, 0xef, 0xc1, 0x22, 0x7e, + 0xb1, 0x29, 0x9a, 0x59, 0x70, 0x20, 0x80, 0xa8, 0xaa, 0x30, 0x26, 0xfa, +}; +static const unsigned char kat3230_nonce[] = { + 0x9d, 0xc9, 0xd3, 0x3f, 0xca, 0x9a, 0xca, 0x40, 0xdd, 0x21, 0xbb, 0x73, + 0xb2, 0x2f, 0x08, 0xef, +}; +static const unsigned char kat3230_persstr[] = { + 0x67, 0x9f, 0xcf, 0xc0, 0x4d, 0x21, 0x78, 0xff, 0xe6, 0x70, 0x4a, 0xe5, + 0x2f, 0x81, 0x53, 0xb7, 0x70, 0xf2, 0x40, 0x2e, 0xcb, 0x20, 0xcf, 0xc8, + 0x15, 0x56, 0x4d, 0xce, 0x8c, 0xb7, 0xad, 0x69, +}; +static const unsigned char kat3230_entropyinpr1[] = { + 0xf0, 0x51, 0x26, 0x31, 0xe8, 0xdf, 0xc8, 0x5e, 0x5b, 0x5a, 0x76, 0xde, + 0x8b, 0xb0, 0x8c, 0x5f, 0x50, 0x29, 0xb3, 0x1e, 0x2e, 0x37, 0xfe, 0x95, +}; +static const unsigned char kat3230_addinpr1[] = { + 0x97, 0x82, 0x5c, 0x8e, 0x79, 0xe4, 0x99, 0xd5, 0xdc, 0xcf, 0x58, 0x3d, + 0x61, 0x25, 0x2d, 0x36, 0xa4, 0x1d, 0xb6, 0xd0, 0x78, 0x4a, 0x50, 0x93, + 0xdb, 0xda, 0xc7, 0xf2, 0x4f, 0xa4, 0x3d, 0x84, +}; +static const unsigned char kat3230_entropyinpr2[] = { + 0xe4, 0xd9, 0xca, 0x10, 0xc4, 0x5d, 0xf6, 0x8d, 0x0e, 0x6c, 0x56, 0x14, + 0x09, 0xb3, 0x09, 0x62, 0xed, 0x7a, 0x8a, 0x9d, 0x1f, 0xf1, 0xf2, 0x17, +}; +static const unsigned char kat3230_addinpr2[] = { + 0x25, 0x53, 0x8a, 0x86, 0xe4, 0xaa, 0x41, 0x6f, 0x80, 0x6e, 0x57, 0x6b, + 0x1d, 0xef, 0x3c, 0x44, 0x7b, 0xa2, 0x46, 0xe7, 0x8e, 0x10, 0x82, 0xba, + 0xca, 0x50, 0x18, 0x6e, 0xf9, 0x06, 0x69, 0x44, +}; +static const unsigned char kat3230_retbits[] = { + 0x91, 0x00, 0x31, 0xab, 0x5b, 0x9c, 0x14, 0x60, 0x8b, 0x58, 0x7b, 0xc3, + 0x71, 0x42, 0x30, 0x55, 0x25, 0xf0, 0xd0, 0xb2, 0x9e, 0x2f, 0x3b, 0x4c, + 0x5f, 0x0a, 0x84, 0x3b, 0xf4, 0xfa, 0xa7, 0xe3, 0x2c, 0x72, 0x07, 0x25, + 0x47, 0x3b, 0x52, 0x67, 0xa1, 0x7c, 0xe7, 0xe3, 0xe1, 0x5b, 0x81, 0xd2, + 0x3b, 0x59, 0xb5, 0x6d, 0x87, 0xee, 0x5a, 0x42, 0x47, 0xd9, 0x76, 0xf3, + 0xc4, 0xae, 0xa1, 0x6a, +}; +static const struct drbg_kat_pr_true kat3230_t = { + 4, kat3230_entropyin, kat3230_nonce, kat3230_persstr, + kat3230_entropyinpr1, kat3230_addinpr1, kat3230_entropyinpr2, + kat3230_addinpr2, kat3230_retbits +}; +static const struct drbg_kat kat3230 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3230_t +}; + +static const unsigned char kat3231_entropyin[] = { + 0x80, 0x8c, 0xc3, 0x9a, 0x30, 0xa5, 0xca, 0xd3, 0xc2, 0x60, 0x01, 0x84, + 0x02, 0x01, 0xd1, 0x7c, 0x37, 0x45, 0x84, 0x15, 0x7b, 0xdc, 0xcc, 0x2d, +}; +static const unsigned char kat3231_nonce[] = { + 0x4a, 0x1d, 0x34, 0xba, 0x60, 0xfc, 0x1f, 0xbb, 0x7c, 0x16, 0x1e, 0xa0, + 0x5c, 0xe1, 0x8e, 0xe8, +}; +static const unsigned char kat3231_persstr[] = { + 0x7f, 0xe0, 0x77, 0x93, 0xab, 0xea, 0xa4, 0xd6, 0x1d, 0xa7, 0xa0, 0x44, + 0x6a, 0x6b, 0xc3, 0x56, 0x0f, 0x66, 0xf4, 0x43, 0x75, 0x81, 0x8b, 0x6f, + 0x20, 0x98, 0x79, 0x4a, 0xcc, 0xc6, 0x17, 0x14, +}; +static const unsigned char kat3231_entropyinpr1[] = { + 0xec, 0x7c, 0x99, 0xf7, 0x38, 0xfc, 0x85, 0x09, 0x53, 0x1e, 0xbb, 0x54, + 0x67, 0x43, 0xf2, 0x19, 0x9a, 0x5f, 0x81, 0xa8, 0x2c, 0xeb, 0x60, 0xcc, +}; +static const unsigned char kat3231_addinpr1[] = { + 0x57, 0x20, 0xc0, 0xc1, 0x86, 0x02, 0x73, 0x4d, 0x9d, 0xe7, 0xf1, 0x55, + 0xad, 0xcd, 0x58, 0xd6, 0x1d, 0x73, 0xb1, 0xfc, 0x30, 0x01, 0xfa, 0x81, + 0xc2, 0xcd, 0x05, 0xd4, 0x1f, 0xf3, 0xd4, 0xc8, +}; +static const unsigned char kat3231_entropyinpr2[] = { + 0xba, 0xf9, 0x3d, 0x5f, 0x49, 0x92, 0xdc, 0x91, 0x26, 0xd9, 0x4d, 0xe2, + 0xd7, 0xc3, 0xcd, 0x73, 0x7b, 0xa8, 0x5c, 0xe5, 0x25, 0x46, 0x89, 0x75, +}; +static const unsigned char kat3231_addinpr2[] = { + 0x93, 0x89, 0x47, 0xac, 0xa0, 0xf9, 0xfd, 0xb2, 0x49, 0x24, 0xad, 0xab, + 0x6c, 0xfb, 0x6b, 0xd1, 0xb0, 0x0f, 0xef, 0xf7, 0xda, 0xcc, 0xe2, 0xeb, + 0x00, 0x76, 0x6a, 0x51, 0xf5, 0xa7, 0xf4, 0x6c, +}; +static const unsigned char kat3231_retbits[] = { + 0xfd, 0xf2, 0xf4, 0x97, 0x19, 0xb9, 0xb4, 0x1c, 0x1d, 0x56, 0xba, 0x94, + 0x59, 0x24, 0x71, 0x16, 0xaa, 0x8b, 0x04, 0xaf, 0x7a, 0x0b, 0xa4, 0xdd, + 0xa5, 0xed, 0xf7, 0xd0, 0x08, 0x08, 0x4c, 0x06, 0x3c, 0x6d, 0x1c, 0x12, + 0x64, 0x1b, 0x6e, 0x08, 0xcb, 0xd9, 0xe8, 0xa1, 0xa5, 0xc2, 0xac, 0xc1, + 0xb2, 0x9c, 0xf1, 0xd0, 0x06, 0xce, 0x15, 0xe5, 0x3b, 0x88, 0x6e, 0x6d, + 0x62, 0x08, 0x2a, 0x52, +}; +static const struct drbg_kat_pr_true kat3231_t = { + 5, kat3231_entropyin, kat3231_nonce, kat3231_persstr, + kat3231_entropyinpr1, kat3231_addinpr1, kat3231_entropyinpr2, + kat3231_addinpr2, kat3231_retbits +}; +static const struct drbg_kat kat3231 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3231_t +}; + +static const unsigned char kat3232_entropyin[] = { + 0xd0, 0x5b, 0xc4, 0xdb, 0x1b, 0x29, 0x42, 0xc1, 0x6a, 0x2e, 0x7d, 0xcb, + 0xc6, 0xfa, 0x18, 0x84, 0xcc, 0xcf, 0x08, 0x3c, 0x37, 0x34, 0x2f, 0xe1, +}; +static const unsigned char kat3232_nonce[] = { + 0x8a, 0x97, 0x00, 0xa1, 0x21, 0x14, 0x5b, 0xa3, 0x89, 0x6b, 0x8b, 0x61, + 0xe2, 0x0f, 0x0b, 0x20, +}; +static const unsigned char kat3232_persstr[] = { + 0x7e, 0x7d, 0xe1, 0xc1, 0x73, 0xe6, 0x09, 0x8d, 0x79, 0xd7, 0x0b, 0x27, + 0x24, 0x68, 0x60, 0xec, 0xcb, 0x8b, 0x6a, 0x68, 0xb1, 0x8c, 0xfa, 0x7d, + 0xf8, 0x28, 0xef, 0x55, 0xf0, 0x7e, 0x94, 0xd2, +}; +static const unsigned char kat3232_entropyinpr1[] = { + 0xad, 0xcf, 0xfd, 0xdd, 0x3f, 0x7e, 0x46, 0x43, 0x44, 0x8f, 0x67, 0xb4, + 0xd9, 0x60, 0x17, 0x1d, 0x4f, 0x3f, 0xca, 0xcf, 0x23, 0x52, 0x88, 0xb0, +}; +static const unsigned char kat3232_addinpr1[] = { + 0x15, 0x25, 0xaf, 0xb8, 0x0d, 0xcc, 0x3c, 0x16, 0x84, 0x0e, 0x6e, 0xea, + 0x4c, 0x31, 0x82, 0x84, 0x64, 0xeb, 0xe7, 0xef, 0xe4, 0x47, 0x09, 0x1b, + 0x01, 0xbb, 0x11, 0x01, 0x55, 0xea, 0x3c, 0x2a, +}; +static const unsigned char kat3232_entropyinpr2[] = { + 0xa0, 0x23, 0x5a, 0x6f, 0xbb, 0x99, 0x06, 0xa9, 0x36, 0xe3, 0xa5, 0xa7, + 0x8e, 0xe6, 0xc4, 0x1f, 0xec, 0x4f, 0xaf, 0x9c, 0x5a, 0x9d, 0x26, 0x77, +}; +static const unsigned char kat3232_addinpr2[] = { + 0xef, 0x38, 0x8b, 0x1e, 0xe2, 0x9c, 0x83, 0x9b, 0x9f, 0x45, 0xb5, 0x1a, + 0x8d, 0x32, 0xe4, 0xda, 0xfe, 0xf2, 0xd2, 0x0d, 0x83, 0xa1, 0x62, 0x1a, + 0x3b, 0xa2, 0xcf, 0x83, 0xbf, 0xc9, 0xe4, 0xbf, +}; +static const unsigned char kat3232_retbits[] = { + 0x19, 0x17, 0x05, 0x4a, 0x2c, 0xb7, 0xfb, 0xf0, 0x52, 0x54, 0x13, 0xe3, + 0x52, 0x0d, 0xc6, 0x04, 0x5d, 0x0a, 0xc9, 0x4a, 0x8a, 0x8d, 0x77, 0x9f, + 0xc1, 0x01, 0xf9, 0xd1, 0x39, 0x9a, 0x1f, 0x47, 0x96, 0x75, 0x44, 0xf1, + 0xf5, 0xd3, 0xa1, 0x27, 0xe5, 0xb3, 0x55, 0x23, 0xf2, 0xeb, 0x1f, 0xb0, + 0x24, 0xd8, 0x76, 0x74, 0x98, 0xcd, 0x4e, 0x46, 0xbe, 0xd0, 0x03, 0xf5, + 0xc0, 0xf9, 0x51, 0xa6, +}; +static const struct drbg_kat_pr_true kat3232_t = { + 6, kat3232_entropyin, kat3232_nonce, kat3232_persstr, + kat3232_entropyinpr1, kat3232_addinpr1, kat3232_entropyinpr2, + kat3232_addinpr2, kat3232_retbits +}; +static const struct drbg_kat kat3232 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3232_t +}; + +static const unsigned char kat3233_entropyin[] = { + 0x6b, 0x3c, 0x02, 0x3e, 0x65, 0xe9, 0x7f, 0x33, 0x6c, 0xb4, 0xea, 0x0c, + 0xf4, 0x42, 0x58, 0xc4, 0xed, 0x56, 0x76, 0xd4, 0x65, 0xcb, 0x5a, 0xca, +}; +static const unsigned char kat3233_nonce[] = { + 0xbb, 0x28, 0x12, 0xfa, 0xac, 0xe9, 0x0e, 0x12, 0xaa, 0xb4, 0x7a, 0xc7, + 0xf0, 0x3a, 0x83, 0x55, +}; +static const unsigned char kat3233_persstr[] = { + 0x8e, 0x52, 0x3d, 0x5a, 0xfa, 0x41, 0xb8, 0x48, 0x84, 0xac, 0x98, 0xaa, + 0xfa, 0xce, 0x23, 0xb0, 0x8e, 0x90, 0x9f, 0x38, 0x1a, 0x5e, 0xd9, 0xb7, + 0x07, 0xb5, 0xca, 0xc5, 0x61, 0x8c, 0xaa, 0xa3, +}; +static const unsigned char kat3233_entropyinpr1[] = { + 0x04, 0x99, 0xbb, 0x60, 0x53, 0x2f, 0x9f, 0xdc, 0xb8, 0xdd, 0x5d, 0xae, + 0x82, 0x38, 0x06, 0x93, 0x8c, 0xac, 0xe4, 0xd5, 0xae, 0x61, 0x25, 0x6c, +}; +static const unsigned char kat3233_addinpr1[] = { + 0x81, 0xe3, 0xe6, 0x11, 0x54, 0xff, 0x95, 0xb7, 0x3f, 0xeb, 0xd4, 0xc3, + 0x77, 0xc5, 0x79, 0x6b, 0x1e, 0x3e, 0x50, 0x25, 0x2e, 0x86, 0x4d, 0x2a, + 0x3f, 0xf9, 0x2c, 0x04, 0xff, 0x18, 0x52, 0x05, +}; +static const unsigned char kat3233_entropyinpr2[] = { + 0x88, 0x72, 0x63, 0x31, 0x2a, 0x68, 0x67, 0xe4, 0xa5, 0x5e, 0x46, 0xdf, + 0x6e, 0x1a, 0x7d, 0x9b, 0xd2, 0x44, 0x93, 0x37, 0xf7, 0xa3, 0xda, 0xa0, +}; +static const unsigned char kat3233_addinpr2[] = { + 0x0b, 0xf3, 0xe2, 0xd2, 0x01, 0x74, 0x8d, 0x46, 0x1f, 0x4b, 0x9f, 0x62, + 0x1a, 0x73, 0xfd, 0x71, 0xf5, 0xe2, 0xbf, 0xb5, 0xb7, 0x66, 0x5b, 0xca, + 0xa3, 0xf8, 0x25, 0x2e, 0x3c, 0xec, 0x9e, 0x73, +}; +static const unsigned char kat3233_retbits[] = { + 0x08, 0x93, 0xee, 0xaf, 0xc0, 0xc3, 0x27, 0x73, 0x6d, 0xe0, 0xa9, 0x8b, + 0x73, 0x6e, 0x21, 0xc2, 0xae, 0xef, 0xeb, 0x4e, 0x41, 0x8a, 0xd6, 0x36, + 0xde, 0x34, 0xae, 0x85, 0x45, 0xe1, 0xca, 0xe6, 0x3c, 0xd8, 0xdc, 0x33, + 0x17, 0x66, 0x9b, 0xbe, 0x87, 0x56, 0x06, 0x3d, 0x58, 0x52, 0x46, 0x11, + 0x1b, 0xe2, 0xd3, 0x24, 0xad, 0x38, 0xda, 0x01, 0xe0, 0x77, 0x47, 0x06, + 0xfb, 0x3a, 0xcc, 0x35, +}; +static const struct drbg_kat_pr_true kat3233_t = { + 7, kat3233_entropyin, kat3233_nonce, kat3233_persstr, + kat3233_entropyinpr1, kat3233_addinpr1, kat3233_entropyinpr2, + kat3233_addinpr2, kat3233_retbits +}; +static const struct drbg_kat kat3233 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3233_t +}; + +static const unsigned char kat3234_entropyin[] = { + 0x64, 0xd1, 0x76, 0x3b, 0xfb, 0x42, 0xd3, 0x50, 0xf6, 0x24, 0x01, 0x20, + 0xe7, 0x13, 0x6c, 0xb7, 0xc6, 0x60, 0x35, 0x13, 0x03, 0x43, 0x5d, 0xa7, +}; +static const unsigned char kat3234_nonce[] = { + 0x9b, 0x97, 0x63, 0x0b, 0x26, 0x30, 0xb4, 0x3a, 0x1e, 0xe8, 0xcb, 0x92, + 0x69, 0xf4, 0x2d, 0xba, +}; +static const unsigned char kat3234_persstr[] = { + 0x49, 0x9d, 0x2b, 0xa3, 0x6a, 0x52, 0x2f, 0x19, 0xf3, 0x46, 0x60, 0x9a, + 0xd5, 0xb0, 0xb5, 0xe9, 0x77, 0x68, 0xb8, 0x6f, 0xb9, 0xa2, 0x0f, 0xf3, + 0xdf, 0x02, 0xdc, 0x87, 0x66, 0x0e, 0x24, 0x83, +}; +static const unsigned char kat3234_entropyinpr1[] = { + 0xe3, 0x0d, 0x0d, 0x80, 0xe0, 0xee, 0x5e, 0x29, 0x78, 0x63, 0x5d, 0x37, + 0x49, 0xd0, 0x57, 0x9d, 0x39, 0x88, 0x22, 0xac, 0x0e, 0xb6, 0x31, 0xc2, +}; +static const unsigned char kat3234_addinpr1[] = { + 0x49, 0xc9, 0x4f, 0xb0, 0xc4, 0x61, 0xb4, 0xc7, 0x86, 0xc0, 0x4e, 0x38, + 0xec, 0x48, 0x07, 0x50, 0xb8, 0xa7, 0xd8, 0x1c, 0x38, 0x2d, 0x4a, 0x0b, + 0xaf, 0x20, 0xdb, 0xc0, 0xa1, 0x61, 0x69, 0x4c, +}; +static const unsigned char kat3234_entropyinpr2[] = { + 0xb0, 0x5d, 0xa4, 0x08, 0x9b, 0x61, 0x57, 0x0b, 0x8c, 0xe8, 0xc9, 0xa8, + 0xcc, 0x57, 0xc4, 0x28, 0x88, 0xc8, 0xad, 0x4c, 0x2c, 0xc5, 0x09, 0x2e, +}; +static const unsigned char kat3234_addinpr2[] = { + 0x2d, 0x60, 0xeb, 0x69, 0x06, 0x9b, 0x6c, 0xac, 0x3d, 0x81, 0xe1, 0x1f, + 0xad, 0xe2, 0xde, 0x05, 0x98, 0x63, 0x64, 0xce, 0x91, 0xb0, 0xe8, 0x6c, + 0xa0, 0xf1, 0x64, 0x53, 0x05, 0xcf, 0x09, 0xe3, +}; +static const unsigned char kat3234_retbits[] = { + 0xe9, 0x04, 0x17, 0x50, 0x4a, 0x0c, 0xb2, 0x96, 0x59, 0x03, 0x37, 0xde, + 0x2b, 0x73, 0x7f, 0xf1, 0xdd, 0x9f, 0x0a, 0xd3, 0x19, 0x81, 0xb5, 0xf8, + 0xdb, 0x7a, 0x76, 0x8a, 0x63, 0xcc, 0x50, 0x21, 0x0e, 0x34, 0x79, 0xea, + 0xc8, 0xb9, 0xb9, 0x15, 0x09, 0x95, 0xdf, 0xb2, 0x10, 0x42, 0x29, 0x02, + 0x12, 0x76, 0xf7, 0x6e, 0xb1, 0xd2, 0x9d, 0x89, 0xd5, 0x97, 0x3c, 0xf7, + 0x81, 0x58, 0xb5, 0x15, +}; +static const struct drbg_kat_pr_true kat3234_t = { + 8, kat3234_entropyin, kat3234_nonce, kat3234_persstr, + kat3234_entropyinpr1, kat3234_addinpr1, kat3234_entropyinpr2, + kat3234_addinpr2, kat3234_retbits +}; +static const struct drbg_kat kat3234 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3234_t +}; + +static const unsigned char kat3235_entropyin[] = { + 0xa1, 0x97, 0x89, 0x85, 0x93, 0xf8, 0x0b, 0xa8, 0xae, 0xb6, 0x8e, 0x2a, + 0x7f, 0x5d, 0x95, 0xcc, 0x5a, 0x6d, 0x63, 0xf5, 0x0c, 0x18, 0x26, 0x1b, +}; +static const unsigned char kat3235_nonce[] = { + 0xb5, 0x06, 0x0f, 0xdd, 0xcf, 0x18, 0x1e, 0xa8, 0x54, 0xe6, 0xbc, 0x79, + 0xb4, 0x81, 0x95, 0x61, +}; +static const unsigned char kat3235_persstr[] = { + 0xaf, 0xe6, 0xab, 0xa6, 0x6c, 0x8d, 0x6e, 0x7d, 0xd7, 0xf1, 0x89, 0x4e, + 0xd4, 0x35, 0xe3, 0x4e, 0xee, 0x24, 0xd5, 0x72, 0x9c, 0xc2, 0xfb, 0xe0, + 0xbb, 0xfd, 0x49, 0x16, 0x32, 0xdd, 0x16, 0x4b, +}; +static const unsigned char kat3235_entropyinpr1[] = { + 0x79, 0xec, 0x4a, 0x64, 0xf6, 0x12, 0xf9, 0x9e, 0xf4, 0xa7, 0xde, 0xf0, + 0xc7, 0x41, 0x0e, 0x48, 0x05, 0xbd, 0x2d, 0x93, 0x19, 0x6b, 0x8f, 0x31, +}; +static const unsigned char kat3235_addinpr1[] = { + 0xa9, 0xd5, 0x12, 0x74, 0x42, 0xad, 0xe5, 0x24, 0x58, 0xc7, 0xf2, 0xf2, + 0x50, 0x57, 0x11, 0xae, 0xfd, 0x4f, 0xf9, 0x48, 0x19, 0x2c, 0xa6, 0xa2, + 0xb5, 0xed, 0x02, 0x4b, 0x31, 0x92, 0x4d, 0xe7, +}; +static const unsigned char kat3235_entropyinpr2[] = { + 0xa8, 0xcf, 0xf7, 0x93, 0x03, 0x40, 0x00, 0xe1, 0x4c, 0x8e, 0xb5, 0x04, + 0x4e, 0xaf, 0x18, 0x27, 0x92, 0xdd, 0xea, 0xf2, 0x7b, 0x8a, 0xea, 0xb9, +}; +static const unsigned char kat3235_addinpr2[] = { + 0xa2, 0x0b, 0x9d, 0xc4, 0xdd, 0x72, 0xaa, 0x3a, 0x42, 0x0f, 0xff, 0x02, + 0x98, 0x84, 0x70, 0x5d, 0xe9, 0x91, 0x21, 0x7b, 0x65, 0x10, 0x26, 0x04, + 0xc3, 0x2c, 0x2d, 0x44, 0x38, 0xf5, 0x1c, 0x8b, +}; +static const unsigned char kat3235_retbits[] = { + 0xe9, 0x4b, 0x83, 0x41, 0x19, 0xdb, 0xb3, 0x18, 0xd6, 0xef, 0x48, 0xac, + 0xbe, 0x75, 0x66, 0x87, 0x16, 0xcf, 0xb7, 0x7d, 0xac, 0x60, 0x28, 0x43, + 0xb3, 0xb7, 0x43, 0x53, 0x5d, 0x6c, 0x22, 0x78, 0x41, 0xcc, 0x5c, 0x11, + 0x58, 0x02, 0x0f, 0x2e, 0x01, 0xad, 0x8c, 0x03, 0x10, 0x22, 0x43, 0x60, + 0x0e, 0xf9, 0x35, 0x8b, 0xd9, 0x88, 0xc0, 0x24, 0xb8, 0xca, 0x41, 0xe5, + 0xb7, 0xe8, 0xf3, 0xbf, +}; +static const struct drbg_kat_pr_true kat3235_t = { + 9, kat3235_entropyin, kat3235_nonce, kat3235_persstr, + kat3235_entropyinpr1, kat3235_addinpr1, kat3235_entropyinpr2, + kat3235_addinpr2, kat3235_retbits +}; +static const struct drbg_kat kat3235 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3235_t +}; + +static const unsigned char kat3236_entropyin[] = { + 0x21, 0x13, 0xca, 0x53, 0x08, 0x44, 0x75, 0xa9, 0x8e, 0x79, 0x5e, 0xba, + 0xf6, 0x89, 0xaf, 0xc6, 0xbe, 0xfe, 0x80, 0xf9, 0x27, 0x52, 0x70, 0xec, +}; +static const unsigned char kat3236_nonce[] = { + 0x7e, 0x92, 0x56, 0xfd, 0x04, 0xbb, 0x92, 0x63, 0x4d, 0x66, 0x71, 0x33, + 0xa3, 0x7e, 0x91, 0x69, +}; +static const unsigned char kat3236_persstr[] = { + 0xcc, 0xa3, 0x1a, 0x05, 0x7f, 0x65, 0x60, 0x1b, 0xd2, 0xee, 0xc5, 0xe7, + 0x5f, 0xc1, 0x3a, 0xe6, 0xcd, 0xb0, 0x81, 0x47, 0xe2, 0x08, 0x45, 0xbb, + 0x36, 0x23, 0x7a, 0x7d, 0x03, 0xc2, 0xd5, 0x22, +}; +static const unsigned char kat3236_entropyinpr1[] = { + 0xf7, 0xcd, 0x8e, 0xb0, 0x75, 0xbb, 0x73, 0xa3, 0xb5, 0xfe, 0xfe, 0x46, + 0xdf, 0xc3, 0x2d, 0x42, 0x34, 0x81, 0xb5, 0x67, 0xaa, 0x6f, 0x87, 0x61, +}; +static const unsigned char kat3236_addinpr1[] = { + 0x78, 0x0c, 0xe6, 0xd0, 0x71, 0x8e, 0x43, 0xc3, 0xae, 0x5d, 0xa7, 0x94, + 0xde, 0x6a, 0xda, 0x17, 0xf7, 0x1a, 0x3f, 0x66, 0xdd, 0xf9, 0x9a, 0x40, + 0x39, 0xb8, 0x05, 0x7b, 0x45, 0x2c, 0x43, 0xe1, +}; +static const unsigned char kat3236_entropyinpr2[] = { + 0x11, 0x1a, 0xe0, 0xbd, 0x64, 0x90, 0xe4, 0x6b, 0xec, 0xee, 0x50, 0x42, + 0x37, 0xbd, 0x81, 0x77, 0xda, 0x35, 0x9d, 0xc9, 0xdf, 0x8c, 0xb4, 0xd4, +}; +static const unsigned char kat3236_addinpr2[] = { + 0x4a, 0x85, 0x68, 0x82, 0xe7, 0x5e, 0xe2, 0x06, 0xc5, 0xbe, 0xf4, 0x21, + 0x23, 0x48, 0x2d, 0x27, 0x37, 0x35, 0x61, 0xf6, 0x88, 0x63, 0x8d, 0x56, + 0x9e, 0xf0, 0x9f, 0x18, 0x94, 0x1a, 0x66, 0x14, +}; +static const unsigned char kat3236_retbits[] = { + 0x39, 0xfe, 0x7d, 0x8f, 0x5d, 0xa0, 0x6e, 0x2c, 0x30, 0x65, 0x53, 0x2d, + 0x3a, 0x58, 0x12, 0x62, 0xda, 0x24, 0xa3, 0xc2, 0x42, 0x0a, 0xf4, 0x3b, + 0xb0, 0x75, 0xf0, 0xc1, 0xba, 0x17, 0x00, 0x50, 0x52, 0xe8, 0x39, 0x50, + 0x63, 0x54, 0x15, 0x6c, 0x01, 0x4f, 0x01, 0x24, 0xfd, 0x12, 0x8a, 0x62, + 0x2e, 0x18, 0x0d, 0xfc, 0xd0, 0xed, 0x4c, 0xf8, 0xab, 0x5f, 0xf2, 0x4b, + 0xa2, 0xb3, 0xc5, 0x4d, +}; +static const struct drbg_kat_pr_true kat3236_t = { + 10, kat3236_entropyin, kat3236_nonce, kat3236_persstr, + kat3236_entropyinpr1, kat3236_addinpr1, kat3236_entropyinpr2, + kat3236_addinpr2, kat3236_retbits +}; +static const struct drbg_kat kat3236 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3236_t +}; + +static const unsigned char kat3237_entropyin[] = { + 0x6f, 0x9e, 0x1e, 0x39, 0x2b, 0x6f, 0xce, 0xbc, 0xb1, 0xe9, 0x85, 0x84, + 0x26, 0xc4, 0x2c, 0xa5, 0x2f, 0xd3, 0x3b, 0xaf, 0xbe, 0xc3, 0xdc, 0xaf, +}; +static const unsigned char kat3237_nonce[] = { + 0xc8, 0x4f, 0xb2, 0x77, 0xc9, 0x8e, 0x69, 0x89, 0xfa, 0x3e, 0x74, 0xce, + 0x1d, 0x82, 0x61, 0x88, +}; +static const unsigned char kat3237_persstr[] = { + 0xdf, 0x41, 0xb6, 0x07, 0x80, 0xf8, 0x56, 0xed, 0xa3, 0xed, 0x44, 0x4f, + 0xfd, 0xe4, 0x6f, 0xba, 0x36, 0x21, 0xca, 0x73, 0x63, 0xc4, 0xb6, 0x13, + 0xeb, 0xc2, 0x1f, 0x68, 0x48, 0x0c, 0x16, 0x4c, +}; +static const unsigned char kat3237_entropyinpr1[] = { + 0xdb, 0x94, 0x12, 0x15, 0xf7, 0x6c, 0xe3, 0xca, 0x34, 0xd1, 0x44, 0x12, + 0x2d, 0x51, 0x01, 0xeb, 0xdb, 0xae, 0x2d, 0x64, 0xd2, 0xcc, 0x63, 0x0a, +}; +static const unsigned char kat3237_addinpr1[] = { + 0x20, 0x92, 0xec, 0x92, 0xd8, 0x4a, 0x48, 0x01, 0x2b, 0x68, 0x67, 0xad, + 0xc5, 0x28, 0x91, 0x16, 0x10, 0xe8, 0xf9, 0xd1, 0xfb, 0x6b, 0xdb, 0xb7, + 0x5f, 0x89, 0x9a, 0x10, 0xa3, 0x44, 0x5a, 0xf6, +}; +static const unsigned char kat3237_entropyinpr2[] = { + 0xe7, 0x1d, 0x17, 0x8b, 0x58, 0xab, 0x5c, 0x8e, 0x95, 0x3b, 0x40, 0xa4, + 0x76, 0x3b, 0xf3, 0x2c, 0x0a, 0x74, 0x2e, 0x25, 0xcc, 0xeb, 0x41, 0x7e, +}; +static const unsigned char kat3237_addinpr2[] = { + 0x44, 0x44, 0xa4, 0xc0, 0x31, 0xdc, 0x99, 0x01, 0x5c, 0x5f, 0xdd, 0x6d, + 0x00, 0x66, 0x49, 0x4d, 0xab, 0xbb, 0xd2, 0xc5, 0xff, 0xf1, 0x78, 0x2a, + 0xcb, 0x04, 0x4a, 0x1d, 0xb9, 0x8b, 0x52, 0x94, +}; +static const unsigned char kat3237_retbits[] = { + 0x60, 0xf3, 0xfe, 0x74, 0x0a, 0x96, 0xec, 0x3b, 0xb4, 0x72, 0x18, 0x46, + 0x5c, 0xa1, 0xf3, 0x70, 0x83, 0xbc, 0x02, 0x3d, 0x67, 0x5c, 0x18, 0x83, + 0x51, 0x86, 0xde, 0xb9, 0xba, 0xf6, 0x2a, 0x78, 0x9e, 0x7f, 0x19, 0xfc, + 0x2b, 0xbf, 0x22, 0x04, 0x0b, 0x26, 0x8d, 0xfa, 0x11, 0x05, 0x21, 0xd2, + 0xe2, 0x98, 0x85, 0x1f, 0x83, 0x93, 0xe0, 0x13, 0x44, 0x45, 0xe6, 0x65, + 0x50, 0xde, 0x97, 0x7e, +}; +static const struct drbg_kat_pr_true kat3237_t = { + 11, kat3237_entropyin, kat3237_nonce, kat3237_persstr, + kat3237_entropyinpr1, kat3237_addinpr1, kat3237_entropyinpr2, + kat3237_addinpr2, kat3237_retbits +}; +static const struct drbg_kat kat3237 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3237_t +}; + +static const unsigned char kat3238_entropyin[] = { + 0xc6, 0x47, 0xf8, 0xed, 0x57, 0x7f, 0xd5, 0x0e, 0x40, 0x38, 0xd6, 0xd5, + 0xe5, 0xca, 0x75, 0x48, 0xaa, 0x07, 0x68, 0xe7, 0xf1, 0xa2, 0x9f, 0x6e, +}; +static const unsigned char kat3238_nonce[] = { + 0xa4, 0x96, 0xd7, 0xc4, 0x60, 0x46, 0xc5, 0x66, 0xdd, 0xca, 0x9f, 0x94, + 0xfd, 0xc3, 0xd0, 0xd4, +}; +static const unsigned char kat3238_persstr[] = { + 0x59, 0xe8, 0xc6, 0xb6, 0x49, 0x30, 0x98, 0x3f, 0x5e, 0x9a, 0xe9, 0x29, + 0x08, 0xad, 0x84, 0xfd, 0x58, 0xf8, 0x7b, 0xcc, 0x39, 0x94, 0x1a, 0xbe, + 0x4c, 0x0e, 0x8e, 0x96, 0xc7, 0x63, 0x90, 0xea, +}; +static const unsigned char kat3238_entropyinpr1[] = { + 0xce, 0x3e, 0xa3, 0x23, 0x10, 0xcb, 0xfe, 0xb7, 0x17, 0x44, 0xb8, 0xbb, + 0xe1, 0x1e, 0xb5, 0xcb, 0x69, 0x82, 0x94, 0x0d, 0xc5, 0x76, 0xb6, 0xbf, +}; +static const unsigned char kat3238_addinpr1[] = { + 0xe5, 0x32, 0xad, 0xec, 0x0d, 0x3a, 0xcb, 0x7d, 0xd5, 0x1f, 0x49, 0xdd, + 0x70, 0x9b, 0xf9, 0x05, 0x49, 0x93, 0x52, 0x6e, 0x5e, 0x08, 0x67, 0x20, + 0x52, 0xf7, 0x15, 0xa2, 0xab, 0x55, 0xda, 0x41, +}; +static const unsigned char kat3238_entropyinpr2[] = { + 0xfb, 0x1d, 0xe3, 0xe8, 0x8e, 0x8a, 0xd3, 0x0b, 0x16, 0xf9, 0xda, 0x88, + 0x39, 0xe5, 0x5a, 0x4b, 0x9b, 0xb9, 0x23, 0xa3, 0xa0, 0x8d, 0x00, 0x47, +}; +static const unsigned char kat3238_addinpr2[] = { + 0x67, 0xbb, 0x8c, 0x08, 0xc0, 0xe6, 0x88, 0x81, 0xb4, 0x66, 0x86, 0x25, + 0x32, 0xdf, 0xc8, 0xd3, 0xe8, 0x0e, 0xae, 0x24, 0x99, 0x23, 0xb7, 0x92, + 0x3e, 0xd9, 0x93, 0xaf, 0xd1, 0x18, 0x67, 0xde, +}; +static const unsigned char kat3238_retbits[] = { + 0x31, 0xc7, 0x8a, 0x2f, 0x5e, 0x72, 0xc9, 0xcc, 0xda, 0x8f, 0xe9, 0x66, + 0x9f, 0x1f, 0x1f, 0x64, 0x92, 0xe8, 0xe6, 0x3d, 0xf7, 0x58, 0xa8, 0xb6, + 0x05, 0xfb, 0x0c, 0x63, 0x74, 0x88, 0x4c, 0xd3, 0x15, 0xe1, 0xd7, 0xa6, + 0xed, 0xdc, 0x72, 0xc0, 0x2d, 0xd3, 0xc5, 0xfe, 0x11, 0x72, 0xba, 0xc0, + 0x27, 0x5e, 0xf5, 0x74, 0xd1, 0x09, 0xf9, 0xd6, 0x85, 0xac, 0xdb, 0xb1, + 0xba, 0xa7, 0xf5, 0x7b, +}; +static const struct drbg_kat_pr_true kat3238_t = { + 12, kat3238_entropyin, kat3238_nonce, kat3238_persstr, + kat3238_entropyinpr1, kat3238_addinpr1, kat3238_entropyinpr2, + kat3238_addinpr2, kat3238_retbits +}; +static const struct drbg_kat kat3238 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3238_t +}; + +static const unsigned char kat3239_entropyin[] = { + 0xc2, 0x62, 0x53, 0xf3, 0xc8, 0x3a, 0x89, 0x68, 0x1e, 0x78, 0x07, 0x42, + 0x3b, 0x20, 0xc4, 0x30, 0x39, 0x24, 0xad, 0x5e, 0xdb, 0x29, 0x66, 0x86, +}; +static const unsigned char kat3239_nonce[] = { + 0x42, 0x04, 0x5c, 0x4b, 0xcc, 0x57, 0x38, 0xc1, 0x90, 0x59, 0xb2, 0x95, + 0x2c, 0xc6, 0xde, 0xf1, +}; +static const unsigned char kat3239_persstr[] = { + 0x68, 0xb1, 0x1c, 0x2d, 0x2c, 0xa6, 0xf0, 0x7f, 0x9e, 0x96, 0x19, 0x79, + 0x68, 0xf0, 0x95, 0xe4, 0x51, 0x60, 0xe9, 0x10, 0xea, 0xc5, 0x83, 0xfe, + 0xb4, 0xe6, 0x86, 0xfb, 0x9d, 0x19, 0x7e, 0xb7, +}; +static const unsigned char kat3239_entropyinpr1[] = { + 0x00, 0x07, 0xe3, 0xe2, 0x83, 0x39, 0x10, 0xbb, 0xc0, 0x98, 0xf8, 0xc1, + 0x43, 0x7c, 0xaf, 0x2e, 0x0a, 0x62, 0x20, 0x21, 0x62, 0x07, 0xf0, 0x9b, +}; +static const unsigned char kat3239_addinpr1[] = { + 0x7d, 0xa8, 0xf1, 0x78, 0xc6, 0xbb, 0xae, 0xda, 0x7a, 0x15, 0x8b, 0x19, + 0xbc, 0x18, 0xa3, 0x2a, 0x9b, 0x3d, 0x0c, 0xaf, 0x42, 0x88, 0x91, 0x4b, + 0x32, 0xa9, 0x88, 0x42, 0x77, 0x75, 0x7b, 0xbb, +}; +static const unsigned char kat3239_entropyinpr2[] = { + 0x76, 0x25, 0x3f, 0x3e, 0xba, 0x4c, 0x81, 0xc6, 0x9a, 0x12, 0xd7, 0xd7, + 0x38, 0xe6, 0x5b, 0xb3, 0x9e, 0x72, 0x30, 0x08, 0x54, 0x06, 0x13, 0x3a, +}; +static const unsigned char kat3239_addinpr2[] = { + 0x2e, 0x57, 0x60, 0xa4, 0x04, 0x4a, 0x7c, 0xd8, 0xc0, 0xdf, 0x35, 0xfd, + 0x85, 0xbf, 0xc6, 0xbd, 0x3e, 0x38, 0xe1, 0x2b, 0xa3, 0xb5, 0xa4, 0x7b, + 0xf2, 0xc9, 0xed, 0x52, 0x14, 0x22, 0xa7, 0x6e, +}; +static const unsigned char kat3239_retbits[] = { + 0x81, 0x2e, 0x56, 0xa9, 0x7a, 0x9f, 0x62, 0xd1, 0x4a, 0x2d, 0xef, 0x87, + 0xb8, 0x9c, 0x7a, 0x19, 0xcd, 0xd3, 0x09, 0x26, 0xf3, 0x63, 0xc5, 0x21, + 0x79, 0x93, 0x1d, 0x7c, 0xbc, 0xa6, 0x3c, 0x3a, 0xa7, 0xfa, 0x71, 0x5f, + 0xdd, 0xa9, 0x5a, 0xfb, 0xcf, 0x4f, 0x02, 0x36, 0x79, 0xf0, 0x7d, 0x45, + 0x20, 0x9c, 0xb9, 0x54, 0xc3, 0xfe, 0xbd, 0xad, 0x61, 0xc6, 0x49, 0xd7, + 0x9a, 0xab, 0xd0, 0xa3, +}; +static const struct drbg_kat_pr_true kat3239_t = { + 13, kat3239_entropyin, kat3239_nonce, kat3239_persstr, + kat3239_entropyinpr1, kat3239_addinpr1, kat3239_entropyinpr2, + kat3239_addinpr2, kat3239_retbits +}; +static const struct drbg_kat kat3239 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3239_t +}; + +static const unsigned char kat3240_entropyin[] = { + 0x5d, 0xbd, 0x7c, 0x15, 0x99, 0x92, 0x50, 0xe3, 0xe0, 0x0f, 0xbf, 0xa1, + 0x88, 0x89, 0x7c, 0x3c, 0x8b, 0x82, 0xb9, 0x46, 0xc8, 0x0c, 0x36, 0x6a, +}; +static const unsigned char kat3240_nonce[] = { + 0x19, 0x3d, 0xa4, 0x67, 0xdd, 0xef, 0x6c, 0x6c, 0x66, 0x49, 0xbf, 0x6d, + 0x09, 0x79, 0x6e, 0x52, +}; +static const unsigned char kat3240_persstr[] = { + 0xb0, 0x3f, 0x58, 0xf9, 0x7a, 0x1f, 0x0c, 0xe4, 0xb6, 0xb1, 0x80, 0x8e, + 0x43, 0x6e, 0xd2, 0x4d, 0x8e, 0xa1, 0x53, 0x65, 0x2d, 0xcb, 0xad, 0x82, + 0x11, 0xf8, 0xe2, 0xe4, 0xb7, 0x64, 0x88, 0x3d, +}; +static const unsigned char kat3240_entropyinpr1[] = { + 0xc5, 0xb5, 0xbf, 0x67, 0x27, 0x12, 0xa1, 0xeb, 0xed, 0xa0, 0x27, 0x37, + 0xbc, 0xf8, 0xbe, 0x47, 0x7a, 0x52, 0xd1, 0xd1, 0x7c, 0x09, 0xe9, 0x64, +}; +static const unsigned char kat3240_addinpr1[] = { + 0x4e, 0x02, 0x4d, 0xd4, 0xfb, 0x29, 0xb2, 0xf9, 0x50, 0x43, 0x9d, 0x70, + 0xf7, 0xf0, 0x6a, 0xd5, 0x94, 0xa1, 0x10, 0xb2, 0x37, 0xae, 0xac, 0x4b, + 0x73, 0x1a, 0x22, 0x7a, 0x54, 0x50, 0x17, 0xaf, +}; +static const unsigned char kat3240_entropyinpr2[] = { + 0x43, 0x8b, 0x5e, 0x3e, 0x07, 0x45, 0x20, 0x9f, 0x53, 0x83, 0x8f, 0xd0, + 0x15, 0xd1, 0xd0, 0x89, 0x73, 0xde, 0x34, 0x99, 0x46, 0x4f, 0xf5, 0x7a, +}; +static const unsigned char kat3240_addinpr2[] = { + 0x8c, 0xa0, 0x6a, 0xfa, 0xc7, 0xf8, 0x36, 0xef, 0xef, 0x3b, 0x5d, 0xa8, + 0xb0, 0x47, 0x5e, 0x6c, 0x23, 0x85, 0x70, 0xb0, 0x4f, 0x31, 0xf7, 0x4f, + 0x11, 0x0d, 0x31, 0xe3, 0xc2, 0xb0, 0xdf, 0x91, +}; +static const unsigned char kat3240_retbits[] = { + 0x52, 0x84, 0x3d, 0x9e, 0xa8, 0x0e, 0x30, 0x62, 0x2e, 0x52, 0xce, 0xae, + 0x59, 0x9a, 0xb0, 0xbc, 0xa6, 0x6a, 0x55, 0x64, 0xae, 0xba, 0x93, 0x0a, + 0xd9, 0x8c, 0x6a, 0xc3, 0xe0, 0x74, 0x3d, 0x8e, 0x45, 0x9c, 0xfa, 0x2e, + 0x17, 0x0d, 0xc6, 0xec, 0xd2, 0x19, 0x33, 0xf9, 0x0f, 0x79, 0x9b, 0xc1, + 0xc8, 0xc6, 0xab, 0x3c, 0x18, 0xce, 0x21, 0x55, 0x55, 0x0e, 0x89, 0x1a, + 0x69, 0x08, 0xaa, 0xd7, +}; +static const struct drbg_kat_pr_true kat3240_t = { + 14, kat3240_entropyin, kat3240_nonce, kat3240_persstr, + kat3240_entropyinpr1, kat3240_addinpr1, kat3240_entropyinpr2, + kat3240_addinpr2, kat3240_retbits +}; +static const struct drbg_kat kat3240 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3240_t +}; + +static const unsigned char kat3241_entropyin[] = { + 0x8f, 0x16, 0x48, 0xc3, 0x67, 0xff, 0x75, 0xab, 0x2a, 0x2e, 0xfa, 0xde, + 0xb0, 0xb2, 0x2d, 0x3b, 0xf0, 0x93, 0xaf, 0xde, 0x2b, 0x72, 0x3c, 0x25, +}; +static const unsigned char kat3241_nonce[] = { + 0x4a, 0x4e, 0x67, 0x9e, 0x52, 0xc0, 0xf5, 0x64, 0x20, 0x79, 0x93, 0x99, + 0xdc, 0x9b, 0xf0, 0x86, +}; +static const unsigned char kat3241_persstr[] = {0}; +static const unsigned char kat3241_entropyinpr1[] = { + 0xdc, 0xb2, 0xcd, 0x21, 0x44, 0x67, 0x0f, 0x46, 0x67, 0xf0, 0x45, 0xd5, + 0xe0, 0x4c, 0x1d, 0x1b, 0x66, 0xc6, 0x5b, 0x50, 0x74, 0xe9, 0x76, 0x3d, +}; +static const unsigned char kat3241_addinpr1[] = {0}; +static const unsigned char kat3241_entropyinpr2[] = { + 0x8c, 0x50, 0x53, 0x53, 0xa6, 0x40, 0xd3, 0x23, 0xe5, 0x28, 0x82, 0x72, + 0xd0, 0x32, 0x0f, 0x24, 0x5a, 0xa0, 0x06, 0xf9, 0x63, 0xef, 0x8a, 0x48, +}; +static const unsigned char kat3241_addinpr2[] = {0}; +static const unsigned char kat3241_retbits[] = { + 0x97, 0x4d, 0x06, 0x98, 0x47, 0x13, 0x30, 0x5e, 0xf4, 0x96, 0xa0, 0x1a, + 0x0a, 0x42, 0x38, 0x3d, 0x3e, 0x22, 0x8a, 0x31, 0xae, 0x75, 0xc4, 0x80, + 0x99, 0x4b, 0xaa, 0xb5, 0x8d, 0x14, 0x4a, 0xe3, 0x2f, 0x7b, 0x64, 0x6e, + 0x4a, 0xf4, 0x19, 0x89, 0xa2, 0x53, 0x74, 0x5c, 0x3c, 0x52, 0x9d, 0xb7, + 0x93, 0xf9, 0x48, 0x51, 0x0c, 0xba, 0xed, 0x04, 0xf7, 0x0f, 0x27, 0x9a, + 0x4a, 0x7b, 0x88, 0xa1, +}; +static const struct drbg_kat_pr_true kat3241_t = { + 0, kat3241_entropyin, kat3241_nonce, kat3241_persstr, + kat3241_entropyinpr1, kat3241_addinpr1, kat3241_entropyinpr2, + kat3241_addinpr2, kat3241_retbits +}; +static const struct drbg_kat kat3241 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3241_t +}; + +static const unsigned char kat3242_entropyin[] = { + 0x5a, 0xfe, 0xd2, 0x9a, 0xe5, 0xde, 0xbc, 0xea, 0xfd, 0x2a, 0x65, 0x7b, + 0xb4, 0x33, 0x79, 0x6e, 0x84, 0x68, 0x7a, 0xd0, 0x29, 0xa6, 0xdd, 0x62, +}; +static const unsigned char kat3242_nonce[] = { + 0x00, 0xbc, 0x27, 0x77, 0x79, 0x0d, 0x90, 0x6b, 0x4a, 0x54, 0x7c, 0xba, + 0x39, 0xc3, 0x7a, 0x5d, +}; +static const unsigned char kat3242_persstr[] = {0}; +static const unsigned char kat3242_entropyinpr1[] = { + 0x5d, 0x3a, 0xe9, 0xf7, 0x8a, 0x1c, 0x2c, 0xdc, 0x15, 0xbc, 0x04, 0x7d, + 0x2b, 0x79, 0x9e, 0x56, 0xa8, 0x2a, 0xc5, 0x80, 0x84, 0xc9, 0xb6, 0x3a, +}; +static const unsigned char kat3242_addinpr1[] = {0}; +static const unsigned char kat3242_entropyinpr2[] = { + 0xc8, 0xaf, 0xcd, 0x89, 0xa7, 0xbe, 0xaa, 0xdf, 0x95, 0x8e, 0x8b, 0x5d, + 0xe7, 0x11, 0xc6, 0x6b, 0x84, 0x19, 0x17, 0xf7, 0x5f, 0xaf, 0x89, 0xe0, +}; +static const unsigned char kat3242_addinpr2[] = {0}; +static const unsigned char kat3242_retbits[] = { + 0x2e, 0x81, 0xe2, 0x27, 0x0b, 0xfe, 0xac, 0x28, 0xfa, 0xba, 0x5e, 0xfe, + 0xd7, 0x21, 0xb2, 0x75, 0xc3, 0x3d, 0x0b, 0x99, 0xf4, 0x5e, 0xe3, 0x18, + 0x70, 0x68, 0x51, 0xf8, 0xf4, 0x33, 0x40, 0x3c, 0xfa, 0x5f, 0x44, 0xb2, + 0x13, 0x76, 0x44, 0x6f, 0x37, 0xae, 0xd4, 0xc3, 0xa3, 0x17, 0x24, 0x57, + 0xb9, 0x68, 0x08, 0x28, 0x5b, 0x42, 0xc7, 0x13, 0x5f, 0xc3, 0xcc, 0xd4, + 0xd3, 0x3e, 0xce, 0x77, +}; +static const struct drbg_kat_pr_true kat3242_t = { + 1, kat3242_entropyin, kat3242_nonce, kat3242_persstr, + kat3242_entropyinpr1, kat3242_addinpr1, kat3242_entropyinpr2, + kat3242_addinpr2, kat3242_retbits +}; +static const struct drbg_kat kat3242 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3242_t +}; + +static const unsigned char kat3243_entropyin[] = { + 0x40, 0x84, 0x74, 0xe0, 0x68, 0xc0, 0x1f, 0x06, 0x8a, 0x96, 0xaa, 0x28, + 0xa9, 0x7d, 0x42, 0xc4, 0xbf, 0xae, 0xc2, 0x11, 0x9c, 0xb0, 0xf4, 0xbf, +}; +static const unsigned char kat3243_nonce[] = { + 0x82, 0xd9, 0xc6, 0xb9, 0x3f, 0x12, 0x93, 0xf2, 0x4f, 0x51, 0x09, 0x18, + 0x70, 0x8e, 0xda, 0x04, +}; +static const unsigned char kat3243_persstr[] = {0}; +static const unsigned char kat3243_entropyinpr1[] = { + 0x95, 0xff, 0x58, 0x00, 0xe4, 0xa1, 0x6b, 0xfe, 0x7d, 0xe2, 0x2f, 0x2b, + 0xe9, 0x1e, 0x49, 0x26, 0xd4, 0xd2, 0x4b, 0x78, 0x9c, 0x8c, 0xfa, 0xbd, +}; +static const unsigned char kat3243_addinpr1[] = {0}; +static const unsigned char kat3243_entropyinpr2[] = { + 0x6f, 0x4f, 0x4b, 0xce, 0x55, 0x5b, 0x05, 0xe9, 0x29, 0xb7, 0x89, 0x6d, + 0x53, 0x13, 0x1f, 0xee, 0x0d, 0x8d, 0xf9, 0x88, 0x9f, 0x3b, 0x70, 0xe7, +}; +static const unsigned char kat3243_addinpr2[] = {0}; +static const unsigned char kat3243_retbits[] = { + 0xe1, 0xd5, 0x62, 0x26, 0x67, 0x86, 0x6b, 0xb7, 0xad, 0xf1, 0x63, 0x05, + 0x03, 0x6c, 0x7b, 0xd8, 0x3c, 0x30, 0x12, 0x9f, 0xa9, 0x45, 0xa0, 0x64, + 0x42, 0x65, 0x92, 0xab, 0xa3, 0x0f, 0xbc, 0x0f, 0xd0, 0xa1, 0x1e, 0x13, + 0xba, 0x37, 0x2a, 0x72, 0xb6, 0xff, 0x72, 0xd0, 0x14, 0xbc, 0xe5, 0x09, + 0xb1, 0xd4, 0x33, 0x8d, 0x79, 0x71, 0x39, 0xba, 0x67, 0x07, 0x4e, 0x10, + 0x9d, 0x06, 0xcc, 0x49, +}; +static const struct drbg_kat_pr_true kat3243_t = { + 2, kat3243_entropyin, kat3243_nonce, kat3243_persstr, + kat3243_entropyinpr1, kat3243_addinpr1, kat3243_entropyinpr2, + kat3243_addinpr2, kat3243_retbits +}; +static const struct drbg_kat kat3243 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3243_t +}; + +static const unsigned char kat3244_entropyin[] = { + 0xc6, 0x29, 0xc3, 0x42, 0xec, 0x3d, 0xf6, 0x9e, 0x58, 0xf6, 0x83, 0x15, + 0xe4, 0x2c, 0x96, 0x0b, 0x5a, 0x3a, 0xff, 0x74, 0xe9, 0xf1, 0x32, 0xf3, +}; +static const unsigned char kat3244_nonce[] = { + 0xf6, 0x9e, 0x97, 0xbd, 0x53, 0xe0, 0x7a, 0x81, 0xd2, 0xb0, 0x10, 0x9d, + 0x7f, 0xce, 0x74, 0x68, +}; +static const unsigned char kat3244_persstr[] = {0}; +static const unsigned char kat3244_entropyinpr1[] = { + 0x43, 0xb6, 0x10, 0x43, 0xcc, 0xf4, 0x2d, 0x4b, 0xb7, 0x13, 0xa8, 0x9e, + 0xc5, 0x05, 0xa3, 0x1c, 0x1c, 0xe0, 0x0a, 0xb6, 0xd0, 0x82, 0x0e, 0xb0, +}; +static const unsigned char kat3244_addinpr1[] = {0}; +static const unsigned char kat3244_entropyinpr2[] = { + 0xd7, 0xf5, 0x49, 0xcf, 0xb8, 0x0c, 0xf9, 0xe0, 0x7c, 0xca, 0x6d, 0x21, + 0x6a, 0x58, 0xc9, 0x84, 0xfb, 0x46, 0xbf, 0x65, 0xb1, 0xb6, 0x0b, 0xfe, +}; +static const unsigned char kat3244_addinpr2[] = {0}; +static const unsigned char kat3244_retbits[] = { + 0xd5, 0x36, 0xff, 0xf4, 0xc0, 0x91, 0x45, 0x65, 0x5c, 0xdb, 0xbe, 0xa8, + 0x8e, 0xca, 0x8b, 0x62, 0xf0, 0xb3, 0xb8, 0x57, 0x67, 0xe8, 0x4e, 0x16, + 0x47, 0x56, 0xcb, 0x36, 0xbf, 0x39, 0xb0, 0x02, 0xeb, 0x3c, 0x6e, 0x5d, + 0x30, 0xda, 0x1f, 0xb2, 0x4b, 0x10, 0xfe, 0xc2, 0xe0, 0x64, 0x7a, 0x76, + 0x88, 0xab, 0x62, 0x47, 0xcc, 0x24, 0x2a, 0x32, 0x41, 0xdf, 0x25, 0x5a, + 0x11, 0x62, 0x46, 0xdc, +}; +static const struct drbg_kat_pr_true kat3244_t = { + 3, kat3244_entropyin, kat3244_nonce, kat3244_persstr, + kat3244_entropyinpr1, kat3244_addinpr1, kat3244_entropyinpr2, + kat3244_addinpr2, kat3244_retbits +}; +static const struct drbg_kat kat3244 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3244_t +}; + +static const unsigned char kat3245_entropyin[] = { + 0xd7, 0x17, 0xe4, 0x32, 0x5c, 0x57, 0x51, 0xd1, 0x1f, 0xc6, 0x94, 0xd9, + 0x9f, 0xca, 0xde, 0xfe, 0x27, 0xf9, 0x99, 0xca, 0x76, 0x6b, 0x0e, 0x68, +}; +static const unsigned char kat3245_nonce[] = { + 0x6e, 0x1f, 0xa6, 0x84, 0x50, 0x69, 0x52, 0x6b, 0x8d, 0x85, 0x9d, 0x65, + 0xb3, 0x0b, 0x65, 0xb9, +}; +static const unsigned char kat3245_persstr[] = {0}; +static const unsigned char kat3245_entropyinpr1[] = { + 0xbe, 0x98, 0x62, 0xdb, 0xc0, 0x8e, 0xf6, 0x8d, 0x31, 0xdb, 0xdc, 0x99, + 0x99, 0xf9, 0x28, 0x5a, 0x31, 0xb7, 0x6c, 0x0c, 0x5d, 0x88, 0x00, 0x1f, +}; +static const unsigned char kat3245_addinpr1[] = {0}; +static const unsigned char kat3245_entropyinpr2[] = { + 0x82, 0x04, 0x5d, 0x3d, 0x26, 0x97, 0xe7, 0xed, 0xc8, 0x0c, 0x9f, 0x26, + 0x18, 0xb2, 0x60, 0x3e, 0x2f, 0x5b, 0x66, 0x21, 0xc0, 0x4a, 0x1a, 0x2d, +}; +static const unsigned char kat3245_addinpr2[] = {0}; +static const unsigned char kat3245_retbits[] = { + 0xdc, 0x0e, 0x3b, 0xd9, 0x07, 0xe1, 0x89, 0xfc, 0x2a, 0xb2, 0x9a, 0xba, + 0x11, 0x29, 0x99, 0xbf, 0xdf, 0xf3, 0x3a, 0x5c, 0x5f, 0xc5, 0x8b, 0xd8, + 0xd9, 0xb2, 0x74, 0x5f, 0xa6, 0xc7, 0xd0, 0xe5, 0xf0, 0x7f, 0xd8, 0x74, + 0xb5, 0x11, 0x74, 0x62, 0x8b, 0x55, 0x10, 0xa1, 0x58, 0x6f, 0xc0, 0x15, + 0x6a, 0x10, 0x4e, 0x29, 0xe9, 0x51, 0x03, 0xda, 0xc6, 0x6e, 0xd1, 0xc4, + 0x4d, 0x86, 0x98, 0x6c, +}; +static const struct drbg_kat_pr_true kat3245_t = { + 4, kat3245_entropyin, kat3245_nonce, kat3245_persstr, + kat3245_entropyinpr1, kat3245_addinpr1, kat3245_entropyinpr2, + kat3245_addinpr2, kat3245_retbits +}; +static const struct drbg_kat kat3245 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3245_t +}; + +static const unsigned char kat3246_entropyin[] = { + 0xc2, 0xdd, 0x05, 0x1e, 0xbe, 0x2d, 0xe8, 0x55, 0xc8, 0x21, 0xfb, 0xe9, + 0x12, 0x4a, 0xac, 0x3e, 0x01, 0x6c, 0x85, 0x94, 0x77, 0xb4, 0x84, 0xcb, +}; +static const unsigned char kat3246_nonce[] = { + 0xbd, 0x1f, 0xab, 0x03, 0x7d, 0xdd, 0x20, 0x31, 0x21, 0x2f, 0xe3, 0x54, + 0x84, 0x5c, 0xa9, 0xf0, +}; +static const unsigned char kat3246_persstr[] = {0}; +static const unsigned char kat3246_entropyinpr1[] = { + 0x31, 0x37, 0x7b, 0x81, 0x83, 0xae, 0x04, 0x86, 0xf0, 0xa6, 0x2a, 0x0c, + 0x8c, 0x67, 0x33, 0xe9, 0xfe, 0x56, 0x0e, 0x05, 0xfe, 0xd5, 0x80, 0x5b, +}; +static const unsigned char kat3246_addinpr1[] = {0}; +static const unsigned char kat3246_entropyinpr2[] = { + 0x1d, 0x0e, 0x97, 0x5f, 0x2e, 0xae, 0x84, 0x56, 0x2c, 0x6e, 0x57, 0x4a, + 0x51, 0x69, 0xa8, 0x47, 0x2c, 0xb4, 0xae, 0x48, 0xc5, 0x8e, 0x43, 0x6a, +}; +static const unsigned char kat3246_addinpr2[] = {0}; +static const unsigned char kat3246_retbits[] = { + 0x8a, 0x5e, 0xdc, 0x00, 0x34, 0xc1, 0x0d, 0x87, 0x1b, 0xa2, 0xe0, 0xa8, + 0x04, 0x3c, 0x51, 0x8c, 0x3a, 0x00, 0x92, 0x62, 0x8b, 0x73, 0x8f, 0xb7, + 0x1b, 0x3d, 0x61, 0x48, 0x77, 0xdc, 0x26, 0x40, 0xf9, 0x7f, 0x2d, 0x05, + 0x23, 0x4b, 0xfd, 0xb6, 0xa3, 0x8b, 0x51, 0x8b, 0x70, 0x74, 0x45, 0x36, + 0x6d, 0x0a, 0xf1, 0x69, 0x8f, 0x28, 0x3f, 0x87, 0xb0, 0x59, 0xfb, 0x10, + 0x95, 0x7f, 0x33, 0x61, +}; +static const struct drbg_kat_pr_true kat3246_t = { + 5, kat3246_entropyin, kat3246_nonce, kat3246_persstr, + kat3246_entropyinpr1, kat3246_addinpr1, kat3246_entropyinpr2, + kat3246_addinpr2, kat3246_retbits +}; +static const struct drbg_kat kat3246 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3246_t +}; + +static const unsigned char kat3247_entropyin[] = { + 0xd4, 0x27, 0x1d, 0xdd, 0xf1, 0xf7, 0xcb, 0xbe, 0xd8, 0xf3, 0x5d, 0x03, + 0x40, 0xed, 0xb3, 0x37, 0x0b, 0x78, 0x47, 0x37, 0xf8, 0x19, 0x77, 0x1e, +}; +static const unsigned char kat3247_nonce[] = { + 0xe5, 0x76, 0x6f, 0x00, 0xd7, 0xba, 0x49, 0xf2, 0x82, 0xca, 0xa1, 0x83, + 0x44, 0x32, 0xc7, 0x22, +}; +static const unsigned char kat3247_persstr[] = {0}; +static const unsigned char kat3247_entropyinpr1[] = { + 0x78, 0xda, 0x59, 0xc9, 0x3b, 0x18, 0x16, 0xa2, 0x13, 0x35, 0x60, 0xc3, + 0x0b, 0xd4, 0xff, 0x24, 0x83, 0x70, 0xf1, 0x7c, 0xcb, 0xe5, 0xfd, 0x63, +}; +static const unsigned char kat3247_addinpr1[] = {0}; +static const unsigned char kat3247_entropyinpr2[] = { + 0xf8, 0x4b, 0xf4, 0x21, 0x47, 0xf1, 0x24, 0x1a, 0xd4, 0x41, 0x0c, 0x86, + 0x5b, 0x05, 0xc2, 0xf6, 0x62, 0x1f, 0xc7, 0x04, 0x1f, 0x58, 0x56, 0x3f, +}; +static const unsigned char kat3247_addinpr2[] = {0}; +static const unsigned char kat3247_retbits[] = { + 0x24, 0x2e, 0x64, 0xff, 0x2b, 0x44, 0x2f, 0x50, 0x6c, 0x0a, 0xaa, 0x5b, + 0x40, 0x1e, 0x97, 0x7a, 0x76, 0xa8, 0x29, 0x86, 0xc9, 0xc6, 0x8b, 0x46, + 0xaf, 0xc3, 0x26, 0x68, 0xf5, 0x97, 0xa4, 0x14, 0xcd, 0x55, 0xc3, 0xee, + 0x29, 0x45, 0xb1, 0x8a, 0x0e, 0xef, 0x09, 0x2c, 0x1c, 0x08, 0xa7, 0xcf, + 0xc9, 0x7c, 0x0a, 0x55, 0xb1, 0xfc, 0x2e, 0xa5, 0xad, 0x1b, 0xd1, 0x40, + 0xca, 0x21, 0x7c, 0x50, +}; +static const struct drbg_kat_pr_true kat3247_t = { + 6, kat3247_entropyin, kat3247_nonce, kat3247_persstr, + kat3247_entropyinpr1, kat3247_addinpr1, kat3247_entropyinpr2, + kat3247_addinpr2, kat3247_retbits +}; +static const struct drbg_kat kat3247 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3247_t +}; + +static const unsigned char kat3248_entropyin[] = { + 0x2c, 0x76, 0x76, 0x49, 0xbc, 0x7e, 0xd0, 0xe8, 0xfe, 0xcc, 0x1f, 0xe6, + 0x4e, 0x19, 0xa7, 0xf6, 0x22, 0x3f, 0xb9, 0x49, 0x31, 0x48, 0x0e, 0x0c, +}; +static const unsigned char kat3248_nonce[] = { + 0x53, 0xde, 0xbf, 0x7c, 0x47, 0xe2, 0x43, 0xea, 0x64, 0x4d, 0x94, 0xbb, + 0xf3, 0xf6, 0x36, 0xa5, +}; +static const unsigned char kat3248_persstr[] = {0}; +static const unsigned char kat3248_entropyinpr1[] = { + 0x19, 0x82, 0x07, 0x52, 0xc2, 0x20, 0x05, 0xa9, 0xd1, 0xf2, 0x90, 0x57, + 0x67, 0xce, 0x33, 0xcb, 0x22, 0xa4, 0xcb, 0xb0, 0x2e, 0x46, 0xe6, 0xa2, +}; +static const unsigned char kat3248_addinpr1[] = {0}; +static const unsigned char kat3248_entropyinpr2[] = { + 0x47, 0xd7, 0x6e, 0x61, 0x5f, 0x76, 0x77, 0x25, 0xa6, 0x14, 0x5b, 0xf7, + 0xc8, 0x7d, 0x97, 0x9f, 0x11, 0x52, 0x61, 0x1a, 0x99, 0xda, 0x52, 0x67, +}; +static const unsigned char kat3248_addinpr2[] = {0}; +static const unsigned char kat3248_retbits[] = { + 0x41, 0xdf, 0xc9, 0xe6, 0x86, 0xbf, 0x0b, 0x6a, 0x77, 0xb4, 0x62, 0x62, + 0x8e, 0xce, 0x65, 0x00, 0xa0, 0xcf, 0xde, 0x23, 0x58, 0x79, 0xf8, 0xfc, + 0x5c, 0xdc, 0xf1, 0x40, 0xad, 0x95, 0xfd, 0xb0, 0x2d, 0xd8, 0x4c, 0x34, + 0x06, 0x9d, 0xc7, 0xc1, 0x80, 0x93, 0x2e, 0xcf, 0x25, 0x23, 0xfe, 0x17, + 0x27, 0x45, 0x41, 0xb6, 0xf0, 0x68, 0x5d, 0x99, 0xe0, 0xcc, 0xb9, 0x72, + 0x4e, 0xfc, 0xd4, 0xba, +}; +static const struct drbg_kat_pr_true kat3248_t = { + 7, kat3248_entropyin, kat3248_nonce, kat3248_persstr, + kat3248_entropyinpr1, kat3248_addinpr1, kat3248_entropyinpr2, + kat3248_addinpr2, kat3248_retbits +}; +static const struct drbg_kat kat3248 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3248_t +}; + +static const unsigned char kat3249_entropyin[] = { + 0x20, 0x14, 0x56, 0x8d, 0x17, 0xb6, 0x2a, 0xfb, 0xae, 0x1f, 0x1e, 0xb0, + 0x07, 0x00, 0x01, 0x74, 0xc5, 0x3c, 0xc4, 0xce, 0x2a, 0x6e, 0x26, 0x50, +}; +static const unsigned char kat3249_nonce[] = { + 0xcf, 0x75, 0x03, 0x9d, 0x2e, 0x1d, 0xb9, 0x74, 0x16, 0x1b, 0x8f, 0x08, + 0x10, 0x81, 0xa6, 0xda, +}; +static const unsigned char kat3249_persstr[] = {0}; +static const unsigned char kat3249_entropyinpr1[] = { + 0x34, 0xd3, 0xa9, 0xc6, 0x03, 0x8d, 0xd0, 0x99, 0xe9, 0x14, 0x26, 0x04, + 0x53, 0x33, 0x55, 0x3a, 0x5e, 0x0a, 0xc8, 0x95, 0x3d, 0x84, 0xa2, 0x5f, +}; +static const unsigned char kat3249_addinpr1[] = {0}; +static const unsigned char kat3249_entropyinpr2[] = { + 0x95, 0x66, 0x77, 0x1e, 0x80, 0x09, 0x85, 0x6f, 0xfc, 0x1a, 0x73, 0xde, + 0xd0, 0x25, 0x2d, 0x69, 0x6d, 0xff, 0x7b, 0xf9, 0x36, 0xf7, 0xfb, 0xef, +}; +static const unsigned char kat3249_addinpr2[] = {0}; +static const unsigned char kat3249_retbits[] = { + 0x94, 0xc1, 0x8c, 0xa0, 0x32, 0x1e, 0xa0, 0xa4, 0xc3, 0xe8, 0x9d, 0xb8, + 0xc3, 0x5d, 0x54, 0x6c, 0x3f, 0xf4, 0xdd, 0xe0, 0x8c, 0xe0, 0x8e, 0xea, + 0x74, 0xe5, 0x99, 0x47, 0xad, 0xf2, 0xbb, 0x26, 0x81, 0x84, 0x38, 0xf1, + 0x5c, 0x7e, 0x0a, 0x83, 0xa7, 0x0c, 0x07, 0x33, 0xd9, 0xa9, 0xd9, 0xea, + 0xab, 0x5d, 0x4f, 0x32, 0x0a, 0xf4, 0xbd, 0xc1, 0xb5, 0xa3, 0x6d, 0x22, + 0xad, 0xfb, 0x1d, 0x30, +}; +static const struct drbg_kat_pr_true kat3249_t = { + 8, kat3249_entropyin, kat3249_nonce, kat3249_persstr, + kat3249_entropyinpr1, kat3249_addinpr1, kat3249_entropyinpr2, + kat3249_addinpr2, kat3249_retbits +}; +static const struct drbg_kat kat3249 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3249_t +}; + +static const unsigned char kat3250_entropyin[] = { + 0x94, 0x59, 0xf1, 0x5b, 0xd9, 0xd2, 0x01, 0x3e, 0x5c, 0x48, 0x4a, 0xcc, + 0x95, 0x40, 0xca, 0x53, 0x46, 0x27, 0x7c, 0xe8, 0x97, 0xaa, 0xb7, 0xe5, +}; +static const unsigned char kat3250_nonce[] = { + 0xa2, 0x9d, 0xb2, 0xb5, 0xac, 0x47, 0x69, 0xf0, 0x1d, 0x65, 0x63, 0x15, + 0x13, 0xf4, 0xde, 0x2d, +}; +static const unsigned char kat3250_persstr[] = {0}; +static const unsigned char kat3250_entropyinpr1[] = { + 0x3e, 0x05, 0x42, 0x24, 0xa8, 0xbd, 0x35, 0xd2, 0xfe, 0x61, 0xd2, 0xdb, + 0x86, 0x3e, 0x78, 0x56, 0xde, 0xb6, 0x7c, 0x6a, 0xf6, 0xb7, 0x59, 0x1a, +}; +static const unsigned char kat3250_addinpr1[] = {0}; +static const unsigned char kat3250_entropyinpr2[] = { + 0x1f, 0x53, 0xc0, 0x5d, 0x2c, 0x1e, 0xfa, 0xf5, 0x0f, 0x97, 0xe3, 0x76, + 0x72, 0x0e, 0xc4, 0xf8, 0x36, 0x25, 0xcd, 0x8b, 0x4d, 0x97, 0xec, 0xc4, +}; +static const unsigned char kat3250_addinpr2[] = {0}; +static const unsigned char kat3250_retbits[] = { + 0xb0, 0x8a, 0xbb, 0xa4, 0x07, 0xd0, 0x52, 0x04, 0xe2, 0x1f, 0xec, 0x32, + 0xe8, 0x49, 0x60, 0xdd, 0x0d, 0xb0, 0xbc, 0xd4, 0x32, 0x74, 0x05, 0xd2, + 0xb2, 0xb8, 0xca, 0x3f, 0xcd, 0x34, 0x5d, 0xee, 0xfa, 0x61, 0x26, 0x0d, + 0x9c, 0x37, 0xa7, 0x63, 0x7d, 0x14, 0x57, 0x78, 0xc0, 0x47, 0x69, 0x2b, + 0xc1, 0x73, 0x6c, 0xf1, 0x33, 0x4c, 0x8d, 0x1a, 0x67, 0x39, 0x2f, 0xd0, + 0xcf, 0xb8, 0x68, 0x16, +}; +static const struct drbg_kat_pr_true kat3250_t = { + 9, kat3250_entropyin, kat3250_nonce, kat3250_persstr, + kat3250_entropyinpr1, kat3250_addinpr1, kat3250_entropyinpr2, + kat3250_addinpr2, kat3250_retbits +}; +static const struct drbg_kat kat3250 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3250_t +}; + +static const unsigned char kat3251_entropyin[] = { + 0xf1, 0x48, 0x75, 0x07, 0x86, 0x60, 0xb1, 0x37, 0x31, 0xe8, 0xad, 0x31, + 0x42, 0x02, 0x17, 0x76, 0x2c, 0xe7, 0xae, 0x70, 0x9b, 0xf0, 0x7b, 0x86, +}; +static const unsigned char kat3251_nonce[] = { + 0x8c, 0xde, 0x82, 0x2c, 0xac, 0xa5, 0xa8, 0x0b, 0xa2, 0x19, 0xdb, 0xf6, + 0x71, 0xec, 0xed, 0x59, +}; +static const unsigned char kat3251_persstr[] = {0}; +static const unsigned char kat3251_entropyinpr1[] = { + 0x63, 0x19, 0x9a, 0xd9, 0x15, 0x9d, 0x21, 0x38, 0x54, 0xe5, 0xfc, 0xa9, + 0x70, 0xd8, 0x42, 0x1c, 0xa1, 0x24, 0x08, 0x35, 0xec, 0x63, 0x2c, 0x5d, +}; +static const unsigned char kat3251_addinpr1[] = {0}; +static const unsigned char kat3251_entropyinpr2[] = { + 0x11, 0x0a, 0x3a, 0x8a, 0x22, 0xec, 0x74, 0xd0, 0xf3, 0xb9, 0xad, 0xfb, + 0xa9, 0xa8, 0xad, 0xe6, 0xbb, 0x80, 0x0f, 0x39, 0xfe, 0x61, 0xa2, 0x2d, +}; +static const unsigned char kat3251_addinpr2[] = {0}; +static const unsigned char kat3251_retbits[] = { + 0xc5, 0xc8, 0x03, 0x9c, 0x83, 0xd2, 0x10, 0x08, 0x4e, 0x5f, 0x20, 0xc7, + 0x8e, 0xc0, 0xf9, 0x4a, 0xdb, 0x5b, 0xb4, 0x81, 0x26, 0x13, 0xa8, 0xd8, + 0xc2, 0x03, 0x4d, 0xc1, 0x88, 0x8d, 0x94, 0xd1, 0x54, 0x7f, 0x9c, 0x88, + 0x7f, 0xaa, 0x7f, 0x56, 0xca, 0x2c, 0x2d, 0x5b, 0x95, 0x68, 0x41, 0x0a, + 0xf5, 0xd0, 0x12, 0xcf, 0x1d, 0xaa, 0x39, 0x90, 0x8e, 0x18, 0x82, 0x32, + 0xc5, 0xd6, 0xa9, 0x66, +}; +static const struct drbg_kat_pr_true kat3251_t = { + 10, kat3251_entropyin, kat3251_nonce, kat3251_persstr, + kat3251_entropyinpr1, kat3251_addinpr1, kat3251_entropyinpr2, + kat3251_addinpr2, kat3251_retbits +}; +static const struct drbg_kat kat3251 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3251_t +}; + +static const unsigned char kat3252_entropyin[] = { + 0xd1, 0x24, 0x38, 0x93, 0x2b, 0x13, 0x9d, 0xb2, 0x26, 0x7c, 0xc3, 0x4c, + 0x9f, 0x5e, 0xc5, 0xfb, 0xfa, 0xde, 0x88, 0x93, 0x66, 0x29, 0xa7, 0xb3, +}; +static const unsigned char kat3252_nonce[] = { + 0x19, 0x5c, 0x6e, 0x32, 0x67, 0x71, 0x42, 0xd1, 0x1d, 0x23, 0x75, 0x5f, + 0x01, 0x15, 0xd0, 0x48, +}; +static const unsigned char kat3252_persstr[] = {0}; +static const unsigned char kat3252_entropyinpr1[] = { + 0x49, 0x95, 0x38, 0xa8, 0x23, 0x28, 0xc9, 0xe8, 0xcf, 0xc1, 0x8e, 0x0a, + 0x38, 0x32, 0x1b, 0xed, 0x31, 0x34, 0xdd, 0x01, 0x81, 0x5f, 0xc6, 0x05, +}; +static const unsigned char kat3252_addinpr1[] = {0}; +static const unsigned char kat3252_entropyinpr2[] = { + 0xa2, 0x7c, 0xb4, 0x62, 0xe6, 0x73, 0x77, 0x27, 0x8c, 0xd7, 0x1b, 0x33, + 0x4d, 0xd6, 0x21, 0x82, 0xb9, 0x73, 0xb2, 0xab, 0x54, 0xe9, 0x42, 0x5d, +}; +static const unsigned char kat3252_addinpr2[] = {0}; +static const unsigned char kat3252_retbits[] = { + 0x6e, 0x58, 0x3e, 0x08, 0x55, 0xe8, 0x5d, 0xf3, 0x2a, 0xa9, 0x64, 0xb6, + 0x63, 0xda, 0x0e, 0x6f, 0xac, 0x98, 0x9f, 0xfe, 0x62, 0x5f, 0x19, 0xda, + 0x25, 0x33, 0x01, 0xb2, 0x20, 0x86, 0x3e, 0xb3, 0xa8, 0xad, 0x56, 0xfb, + 0xf2, 0x83, 0x4f, 0xe8, 0xec, 0x2c, 0x74, 0x6a, 0xc2, 0x36, 0x3f, 0x1c, + 0x70, 0x5e, 0x3e, 0xfb, 0x9b, 0x1a, 0x17, 0x59, 0x6c, 0xf6, 0xd6, 0xa9, + 0x07, 0xad, 0x8e, 0x55, +}; +static const struct drbg_kat_pr_true kat3252_t = { + 11, kat3252_entropyin, kat3252_nonce, kat3252_persstr, + kat3252_entropyinpr1, kat3252_addinpr1, kat3252_entropyinpr2, + kat3252_addinpr2, kat3252_retbits +}; +static const struct drbg_kat kat3252 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3252_t +}; + +static const unsigned char kat3253_entropyin[] = { + 0x6a, 0x65, 0x0d, 0xb4, 0x71, 0x54, 0x5b, 0x7a, 0xe8, 0x0c, 0xff, 0xaf, + 0xd8, 0x9d, 0x2e, 0x16, 0x24, 0x76, 0x37, 0xb2, 0xb3, 0xf6, 0xab, 0x95, +}; +static const unsigned char kat3253_nonce[] = { + 0xaf, 0xb6, 0xb4, 0x5f, 0xc0, 0xce, 0x3c, 0xcb, 0x4b, 0xb7, 0x9f, 0xc5, + 0x10, 0xfd, 0x3b, 0x61, +}; +static const unsigned char kat3253_persstr[] = {0}; +static const unsigned char kat3253_entropyinpr1[] = { + 0x4e, 0xe0, 0x3c, 0x38, 0xb1, 0xe9, 0x17, 0x69, 0xde, 0xd3, 0xcf, 0x02, + 0x87, 0x54, 0x20, 0xbd, 0xc3, 0x50, 0x87, 0x02, 0xac, 0x38, 0x67, 0xaa, +}; +static const unsigned char kat3253_addinpr1[] = {0}; +static const unsigned char kat3253_entropyinpr2[] = { + 0x80, 0xb4, 0x28, 0x4f, 0xcc, 0xb6, 0x0a, 0x3b, 0x79, 0x6c, 0x00, 0xee, + 0x6b, 0x74, 0x1a, 0x23, 0xd2, 0x26, 0xf6, 0x85, 0xec, 0xce, 0x8d, 0xb0, +}; +static const unsigned char kat3253_addinpr2[] = {0}; +static const unsigned char kat3253_retbits[] = { + 0xca, 0x4e, 0x56, 0x7a, 0xf7, 0x87, 0xa1, 0xcd, 0x40, 0x1d, 0xb1, 0xa8, + 0xe8, 0x29, 0xe2, 0x02, 0x1d, 0x49, 0xce, 0xa4, 0x91, 0xce, 0xe3, 0x66, + 0xfa, 0x28, 0x28, 0xa1, 0x5d, 0x00, 0x2c, 0x42, 0x81, 0xe4, 0x05, 0x04, + 0x25, 0x3a, 0x63, 0x57, 0xd4, 0x25, 0x22, 0x74, 0xeb, 0x5a, 0x52, 0x0b, + 0xa8, 0x33, 0x01, 0xec, 0x9f, 0x0b, 0x86, 0xd3, 0x3c, 0x14, 0x95, 0xff, + 0xa7, 0xa5, 0xdd, 0x02, +}; +static const struct drbg_kat_pr_true kat3253_t = { + 12, kat3253_entropyin, kat3253_nonce, kat3253_persstr, + kat3253_entropyinpr1, kat3253_addinpr1, kat3253_entropyinpr2, + kat3253_addinpr2, kat3253_retbits +}; +static const struct drbg_kat kat3253 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3253_t +}; + +static const unsigned char kat3254_entropyin[] = { + 0x8e, 0xce, 0xfd, 0xb6, 0xc3, 0x77, 0x49, 0x05, 0x73, 0x21, 0x2a, 0xf8, + 0x28, 0x8f, 0x8b, 0x48, 0x31, 0xed, 0xd5, 0xd1, 0x23, 0x97, 0xf2, 0x0b, +}; +static const unsigned char kat3254_nonce[] = { + 0x40, 0x58, 0x5b, 0x6f, 0xa6, 0x5d, 0x92, 0x9f, 0x82, 0x99, 0xb3, 0x64, + 0x18, 0x85, 0xb4, 0x5e, +}; +static const unsigned char kat3254_persstr[] = {0}; +static const unsigned char kat3254_entropyinpr1[] = { + 0x2e, 0xbe, 0x72, 0x83, 0xb6, 0x5c, 0x2b, 0xb3, 0xf5, 0xd4, 0x3d, 0x85, + 0x15, 0x7a, 0xc1, 0xcd, 0x51, 0x5c, 0x09, 0x51, 0x4a, 0xe7, 0x65, 0x4c, +}; +static const unsigned char kat3254_addinpr1[] = {0}; +static const unsigned char kat3254_entropyinpr2[] = { + 0xd8, 0x3d, 0x72, 0xf8, 0x82, 0x46, 0xee, 0x47, 0xef, 0x21, 0x25, 0x71, + 0x01, 0xbf, 0xbb, 0xc6, 0xea, 0xc4, 0xd1, 0xdd, 0xfc, 0x11, 0x72, 0x0c, +}; +static const unsigned char kat3254_addinpr2[] = {0}; +static const unsigned char kat3254_retbits[] = { + 0x44, 0xea, 0xea, 0x42, 0x85, 0xf2, 0x23, 0x50, 0xed, 0x93, 0x16, 0xd5, + 0x98, 0x8c, 0x46, 0x63, 0xbb, 0x10, 0xe1, 0x19, 0xd6, 0xc1, 0xb6, 0x34, + 0xe0, 0xae, 0x2c, 0x8b, 0xd5, 0xf7, 0x61, 0x93, 0x68, 0x1c, 0xc4, 0xb9, + 0x70, 0xc1, 0x85, 0x6d, 0x8d, 0xcf, 0x05, 0xdc, 0x9c, 0xce, 0x10, 0xac, + 0x02, 0x37, 0x5c, 0x69, 0x15, 0xa2, 0x4e, 0x18, 0xa6, 0xe5, 0x41, 0x87, + 0x29, 0x45, 0x6a, 0x6b, +}; +static const struct drbg_kat_pr_true kat3254_t = { + 13, kat3254_entropyin, kat3254_nonce, kat3254_persstr, + kat3254_entropyinpr1, kat3254_addinpr1, kat3254_entropyinpr2, + kat3254_addinpr2, kat3254_retbits +}; +static const struct drbg_kat kat3254 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3254_t +}; + +static const unsigned char kat3255_entropyin[] = { + 0x2e, 0x2d, 0x70, 0xb4, 0x76, 0xb5, 0xfb, 0x6a, 0x31, 0x38, 0x6d, 0xe5, + 0x4b, 0xc8, 0x56, 0x0b, 0xdb, 0xeb, 0x71, 0xc3, 0xa6, 0x65, 0xe7, 0xec, +}; +static const unsigned char kat3255_nonce[] = { + 0xec, 0x20, 0x77, 0x7f, 0xc2, 0x42, 0x3f, 0xc4, 0x8c, 0x5d, 0x42, 0xcb, + 0xa3, 0x16, 0x15, 0x9e, +}; +static const unsigned char kat3255_persstr[] = {0}; +static const unsigned char kat3255_entropyinpr1[] = { + 0x6c, 0x93, 0xa1, 0xa3, 0x67, 0x21, 0x82, 0x2e, 0x01, 0x9e, 0x23, 0x11, + 0x34, 0x67, 0x2b, 0xcd, 0xcc, 0xaf, 0x8d, 0x5d, 0x48, 0x7e, 0xda, 0x2f, +}; +static const unsigned char kat3255_addinpr1[] = {0}; +static const unsigned char kat3255_entropyinpr2[] = { + 0x2e, 0xa8, 0xa8, 0x2d, 0x9d, 0x02, 0x3c, 0xc9, 0x66, 0x36, 0x8e, 0xa6, + 0x49, 0x9e, 0x1b, 0x1b, 0xee, 0xe4, 0x33, 0x3c, 0x13, 0xa0, 0x96, 0xdd, +}; +static const unsigned char kat3255_addinpr2[] = {0}; +static const unsigned char kat3255_retbits[] = { + 0x3f, 0x79, 0x16, 0x40, 0xa2, 0x11, 0x75, 0x36, 0x99, 0x35, 0x35, 0x8e, + 0xc7, 0x78, 0x03, 0x2c, 0xaf, 0xec, 0x59, 0x19, 0x9b, 0x52, 0x9c, 0x97, + 0xba, 0x62, 0x34, 0xf4, 0x33, 0x09, 0x8d, 0xcc, 0x32, 0xfa, 0x9f, 0x26, + 0xb2, 0x36, 0x53, 0x36, 0x91, 0x45, 0x7c, 0x2a, 0x50, 0xc1, 0xc1, 0x21, + 0xc9, 0xbe, 0x3f, 0xe6, 0x78, 0xca, 0x77, 0xac, 0xee, 0xfa, 0xdb, 0x86, + 0x30, 0x70, 0x72, 0x80, +}; +static const struct drbg_kat_pr_true kat3255_t = { + 14, kat3255_entropyin, kat3255_nonce, kat3255_persstr, + kat3255_entropyinpr1, kat3255_addinpr1, kat3255_entropyinpr2, + kat3255_addinpr2, kat3255_retbits +}; +static const struct drbg_kat kat3255 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3255_t +}; + +static const unsigned char kat3256_entropyin[] = { + 0x19, 0x99, 0xd2, 0x99, 0xc4, 0x76, 0x4c, 0x04, 0x84, 0xa2, 0x85, 0xb8, + 0xb9, 0x82, 0xab, 0x11, 0xd0, 0x44, 0x10, 0x3b, 0xc5, 0x7e, 0x50, 0x26, +}; +static const unsigned char kat3256_nonce[] = { + 0x40, 0xec, 0xc1, 0xe9, 0x78, 0xb3, 0x0a, 0x65, 0x84, 0x66, 0x7e, 0x83, + 0xf5, 0x3c, 0xa6, 0xb5, +}; +static const unsigned char kat3256_persstr[] = {0}; +static const unsigned char kat3256_entropyinpr1[] = { + 0x4b, 0x17, 0x5b, 0x4f, 0x53, 0x98, 0x9d, 0x48, 0x1e, 0x78, 0x61, 0x2f, + 0x0e, 0x17, 0xd2, 0x99, 0xa1, 0x95, 0x32, 0x0e, 0xa7, 0xe3, 0xa4, 0x65, +}; +static const unsigned char kat3256_addinpr1[] = { + 0xd5, 0xfd, 0x9f, 0xca, 0x6a, 0x17, 0x59, 0x22, 0x63, 0x80, 0x8d, 0xe3, + 0x64, 0xab, 0x61, 0xe4, 0xe5, 0x52, 0x16, 0xb7, 0xf0, 0x12, 0xb5, 0x62, + 0x94, 0xf1, 0x20, 0x5f, 0xb3, 0x00, 0x5e, 0x66, +}; +static const unsigned char kat3256_entropyinpr2[] = { + 0x1b, 0x53, 0xca, 0xfa, 0x3d, 0x23, 0x8e, 0xde, 0xc7, 0xf3, 0x99, 0x42, + 0x61, 0xf4, 0x45, 0x05, 0x02, 0x3b, 0x72, 0xff, 0xe1, 0x4e, 0x94, 0xb4, +}; +static const unsigned char kat3256_addinpr2[] = { + 0x7c, 0xb6, 0x52, 0x74, 0xcc, 0xa9, 0xa8, 0x4f, 0xf4, 0x9c, 0x31, 0xa4, + 0xe2, 0xc6, 0x56, 0xfa, 0xfe, 0x25, 0x43, 0x61, 0x98, 0xc7, 0xfb, 0xab, + 0xfa, 0x1f, 0xc2, 0xc1, 0x66, 0x8a, 0x80, 0x91, +}; +static const unsigned char kat3256_retbits[] = { + 0xbe, 0xdb, 0xc0, 0xd6, 0x7f, 0xea, 0xdd, 0x19, 0x72, 0x79, 0x40, 0x5b, + 0x5a, 0x59, 0xe7, 0xd3, 0x50, 0xe3, 0xb7, 0xe4, 0xfd, 0x4e, 0x17, 0xfe, + 0xf0, 0x87, 0x18, 0x6f, 0x33, 0xba, 0xce, 0xcc, 0x7c, 0xbb, 0x48, 0x86, + 0x95, 0x20, 0xae, 0x90, 0x6c, 0xc4, 0xa5, 0x5b, 0x44, 0x4a, 0x93, 0x80, + 0xd3, 0xf0, 0x69, 0x52, 0xd2, 0x76, 0x90, 0x8f, 0x85, 0x65, 0x22, 0x84, + 0xa1, 0xde, 0x50, 0xc1, +}; +static const struct drbg_kat_pr_true kat3256_t = { + 0, kat3256_entropyin, kat3256_nonce, kat3256_persstr, + kat3256_entropyinpr1, kat3256_addinpr1, kat3256_entropyinpr2, + kat3256_addinpr2, kat3256_retbits +}; +static const struct drbg_kat kat3256 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3256_t +}; + +static const unsigned char kat3257_entropyin[] = { + 0xe6, 0x6a, 0x54, 0xa9, 0x45, 0x19, 0x4d, 0x6b, 0xd9, 0x10, 0x3e, 0xe3, + 0x95, 0xda, 0x4c, 0x89, 0x80, 0x85, 0x4b, 0xab, 0xb5, 0xbc, 0x7a, 0xb5, +}; +static const unsigned char kat3257_nonce[] = { + 0x27, 0xa5, 0xbb, 0x1f, 0xad, 0xe9, 0x01, 0x35, 0x34, 0x38, 0x0c, 0xce, + 0x80, 0x1b, 0xad, 0x72, +}; +static const unsigned char kat3257_persstr[] = {0}; +static const unsigned char kat3257_entropyinpr1[] = { + 0x75, 0x15, 0x14, 0xbd, 0x13, 0xb9, 0xcc, 0x50, 0xe9, 0x8a, 0x14, 0xc3, + 0x1f, 0x79, 0x60, 0x6c, 0x42, 0x91, 0x92, 0x46, 0xac, 0x93, 0x88, 0x31, +}; +static const unsigned char kat3257_addinpr1[] = { + 0x2f, 0xfe, 0x02, 0x2e, 0x27, 0x9f, 0x0d, 0x8f, 0x36, 0x28, 0x5f, 0x6b, + 0x74, 0x01, 0x11, 0xed, 0xd4, 0xd7, 0x38, 0x84, 0xd0, 0x64, 0xa9, 0xd9, + 0xa1, 0x61, 0x61, 0x8b, 0x3f, 0xc9, 0x82, 0x52, +}; +static const unsigned char kat3257_entropyinpr2[] = { + 0x78, 0xa0, 0xf0, 0x87, 0x6a, 0xfb, 0x68, 0x48, 0xc3, 0xd6, 0x82, 0xce, + 0x7b, 0x5c, 0x28, 0x23, 0x57, 0xcf, 0x4b, 0x6d, 0x3d, 0x9d, 0xb5, 0x35, +}; +static const unsigned char kat3257_addinpr2[] = { + 0x85, 0x0b, 0x8b, 0x39, 0x9c, 0x82, 0x10, 0xf4, 0x15, 0xf4, 0x12, 0x9c, + 0x03, 0x4e, 0xfe, 0x58, 0x67, 0x5c, 0x74, 0x1b, 0x75, 0xa0, 0xb1, 0xa2, + 0x25, 0xb2, 0x53, 0xc1, 0xde, 0xb4, 0xdb, 0xf6, +}; +static const unsigned char kat3257_retbits[] = { + 0xd0, 0xa9, 0x2f, 0x3a, 0xc0, 0x9d, 0xff, 0x71, 0xe4, 0xda, 0x1f, 0x19, + 0xb2, 0x68, 0xfd, 0x73, 0x2e, 0xf4, 0x57, 0xc9, 0xc9, 0xac, 0x92, 0x18, + 0xfe, 0xd2, 0x8c, 0x3a, 0xd5, 0x76, 0x0a, 0x0e, 0x8b, 0xf6, 0xf1, 0x92, + 0x7b, 0x7c, 0xc2, 0xcc, 0x77, 0x65, 0xbe, 0x7a, 0x28, 0xe2, 0x25, 0x2d, + 0x3d, 0xa8, 0x0f, 0x7a, 0xdb, 0x67, 0x19, 0xf8, 0xb8, 0x5e, 0xea, 0x9c, + 0x85, 0xc8, 0xa9, 0x22, +}; +static const struct drbg_kat_pr_true kat3257_t = { + 1, kat3257_entropyin, kat3257_nonce, kat3257_persstr, + kat3257_entropyinpr1, kat3257_addinpr1, kat3257_entropyinpr2, + kat3257_addinpr2, kat3257_retbits +}; +static const struct drbg_kat kat3257 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3257_t +}; + +static const unsigned char kat3258_entropyin[] = { + 0x77, 0x9c, 0x54, 0x97, 0xb3, 0xe6, 0x49, 0xef, 0x88, 0x55, 0x9d, 0xfa, + 0x13, 0x68, 0x88, 0x3b, 0xcd, 0xa7, 0x54, 0xab, 0x70, 0x6f, 0x9c, 0x5a, +}; +static const unsigned char kat3258_nonce[] = { + 0x0b, 0xf9, 0xff, 0x2d, 0x3d, 0xb2, 0x10, 0xf4, 0x2f, 0x77, 0x00, 0x9f, + 0xf8, 0xcf, 0x14, 0x85, +}; +static const unsigned char kat3258_persstr[] = {0}; +static const unsigned char kat3258_entropyinpr1[] = { + 0x32, 0x78, 0x7a, 0xf0, 0x13, 0x83, 0x19, 0xd1, 0xaa, 0x65, 0xcf, 0xc8, + 0x40, 0xe2, 0x32, 0xbd, 0x62, 0x08, 0xab, 0x65, 0x1f, 0x47, 0xec, 0x31, +}; +static const unsigned char kat3258_addinpr1[] = { + 0x01, 0x88, 0x5f, 0x26, 0x52, 0xb0, 0x10, 0xe2, 0xf2, 0xa8, 0xc3, 0x9e, + 0x7f, 0x13, 0xdf, 0x99, 0xef, 0x5a, 0x7d, 0xd1, 0xa8, 0x13, 0x84, 0x8c, + 0x41, 0x50, 0x9b, 0xc7, 0x88, 0x5a, 0xf4, 0x86, +}; +static const unsigned char kat3258_entropyinpr2[] = { + 0xa8, 0x8c, 0x2c, 0xa8, 0x11, 0x5f, 0xf5, 0x02, 0xb1, 0x9c, 0x63, 0x62, + 0x91, 0xa9, 0x87, 0x8d, 0xd9, 0x98, 0x5b, 0x71, 0xd7, 0x81, 0x2f, 0x1a, +}; +static const unsigned char kat3258_addinpr2[] = { + 0x22, 0x88, 0x98, 0xdf, 0x82, 0x5b, 0xcb, 0x01, 0xd2, 0x2f, 0x5c, 0x64, + 0x26, 0xb0, 0x11, 0xc3, 0x87, 0x2e, 0xc0, 0xee, 0xd3, 0x28, 0xb5, 0x0f, + 0x90, 0xae, 0x2b, 0xc5, 0xad, 0x20, 0x50, 0x5d, +}; +static const unsigned char kat3258_retbits[] = { + 0x70, 0x85, 0xe1, 0xed, 0x53, 0x2f, 0x19, 0xaa, 0x76, 0x04, 0x55, 0x56, + 0x68, 0x16, 0x3a, 0x25, 0x3c, 0x08, 0x14, 0xb2, 0x9e, 0x6f, 0x69, 0xa1, + 0x01, 0xf1, 0x7f, 0xad, 0x1a, 0x75, 0x35, 0x9a, 0x5d, 0x0b, 0x0f, 0x1e, + 0xa8, 0x4a, 0xca, 0xb6, 0xa2, 0x70, 0xba, 0xde, 0x2a, 0x20, 0x55, 0x30, + 0x55, 0x09, 0xac, 0x9f, 0xcd, 0xf5, 0xa7, 0x55, 0x11, 0x8e, 0xce, 0xb6, + 0xc5, 0x2f, 0x3c, 0x38, +}; +static const struct drbg_kat_pr_true kat3258_t = { + 2, kat3258_entropyin, kat3258_nonce, kat3258_persstr, + kat3258_entropyinpr1, kat3258_addinpr1, kat3258_entropyinpr2, + kat3258_addinpr2, kat3258_retbits +}; +static const struct drbg_kat kat3258 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3258_t +}; + +static const unsigned char kat3259_entropyin[] = { + 0x18, 0x53, 0xee, 0x9c, 0x25, 0xd9, 0x5c, 0x87, 0x64, 0x8d, 0xca, 0x44, + 0x0e, 0xd1, 0x4f, 0x33, 0x12, 0x95, 0x93, 0x89, 0x91, 0x0e, 0x7f, 0x9b, +}; +static const unsigned char kat3259_nonce[] = { + 0x4e, 0xb3, 0xb4, 0xc4, 0xf5, 0xb3, 0x70, 0x68, 0x59, 0x32, 0x31, 0x66, + 0xb1, 0x78, 0x9f, 0xa6, +}; +static const unsigned char kat3259_persstr[] = {0}; +static const unsigned char kat3259_entropyinpr1[] = { + 0x3c, 0x34, 0x34, 0x8e, 0x1b, 0x32, 0xf3, 0x91, 0x05, 0x86, 0xdd, 0xaf, + 0x23, 0xc0, 0x0f, 0x46, 0x34, 0x1e, 0xcc, 0x4b, 0x9b, 0x87, 0x75, 0x05, +}; +static const unsigned char kat3259_addinpr1[] = { + 0xd0, 0x09, 0x0c, 0x32, 0x0c, 0xf8, 0xb5, 0xc2, 0x1f, 0xa9, 0xdf, 0x3f, + 0x19, 0xa1, 0xe3, 0x53, 0x77, 0x32, 0xde, 0xb6, 0x89, 0x9a, 0x77, 0x0e, + 0x43, 0x84, 0xd1, 0xda, 0xb0, 0x20, 0xb2, 0xf0, +}; +static const unsigned char kat3259_entropyinpr2[] = { + 0x05, 0x0d, 0x41, 0x96, 0xc5, 0xc5, 0x81, 0x10, 0x17, 0x45, 0x79, 0x6c, + 0x76, 0x11, 0xc0, 0x9a, 0x72, 0x32, 0x2f, 0x1e, 0xf4, 0x5d, 0x04, 0xb2, +}; +static const unsigned char kat3259_addinpr2[] = { + 0xd2, 0x3d, 0xf8, 0xdc, 0x0a, 0x1e, 0x00, 0x89, 0xb0, 0x5b, 0x24, 0x24, + 0x75, 0xfd, 0xe9, 0xe5, 0x78, 0xd4, 0x1f, 0x47, 0xd2, 0xd3, 0x2b, 0x4b, + 0xf3, 0x77, 0xc0, 0x92, 0x80, 0xae, 0x30, 0xba, +}; +static const unsigned char kat3259_retbits[] = { + 0x60, 0x64, 0xbd, 0x85, 0xcd, 0xf6, 0xce, 0x51, 0x05, 0xc5, 0x09, 0xe2, + 0xb1, 0xb5, 0x4f, 0xa9, 0x2f, 0xee, 0x5e, 0xca, 0x5c, 0x1e, 0x17, 0x6a, + 0x60, 0xe4, 0x98, 0xce, 0xf6, 0x26, 0x6b, 0x10, 0x42, 0x87, 0x95, 0x30, + 0x6e, 0x54, 0x35, 0x8e, 0xff, 0x45, 0x9d, 0xf7, 0x2a, 0x85, 0x30, 0xcf, + 0x38, 0xf9, 0x11, 0x13, 0xdb, 0x8a, 0xd2, 0x21, 0xa3, 0xf8, 0x30, 0x7b, + 0x1d, 0x4e, 0x9b, 0x71, +}; +static const struct drbg_kat_pr_true kat3259_t = { + 3, kat3259_entropyin, kat3259_nonce, kat3259_persstr, + kat3259_entropyinpr1, kat3259_addinpr1, kat3259_entropyinpr2, + kat3259_addinpr2, kat3259_retbits +}; +static const struct drbg_kat kat3259 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3259_t +}; + +static const unsigned char kat3260_entropyin[] = { + 0x24, 0x85, 0xa6, 0x70, 0x2a, 0x5e, 0xdf, 0xef, 0x7c, 0x84, 0x91, 0xaa, + 0x43, 0x0a, 0x8d, 0xc1, 0x19, 0x1f, 0xd8, 0xc9, 0x40, 0xca, 0x6b, 0xda, +}; +static const unsigned char kat3260_nonce[] = { + 0x73, 0x1f, 0xc0, 0x02, 0xcd, 0xd1, 0x5b, 0x5b, 0x66, 0x2f, 0x20, 0x22, + 0x03, 0xa9, 0x00, 0x20, +}; +static const unsigned char kat3260_persstr[] = {0}; +static const unsigned char kat3260_entropyinpr1[] = { + 0xaf, 0x46, 0x97, 0xe8, 0x85, 0xc9, 0xc8, 0x5c, 0xd5, 0x11, 0x4b, 0x28, + 0x87, 0x5a, 0x30, 0x0a, 0xec, 0x89, 0xb0, 0x36, 0x23, 0xfe, 0xe6, 0xba, +}; +static const unsigned char kat3260_addinpr1[] = { + 0x7a, 0x11, 0xb2, 0x81, 0x49, 0x74, 0xb1, 0x1b, 0xdf, 0x9f, 0xac, 0xe3, + 0xf5, 0x4b, 0x58, 0x22, 0xca, 0x23, 0x6c, 0x59, 0xdc, 0x2c, 0x9e, 0x81, + 0x54, 0x1b, 0x0e, 0xe8, 0xa6, 0x44, 0xe7, 0x47, +}; +static const unsigned char kat3260_entropyinpr2[] = { + 0xea, 0xb3, 0xb9, 0x86, 0x81, 0xa8, 0x5c, 0x2f, 0xd8, 0xc4, 0xc9, 0x70, + 0x67, 0xb1, 0xc7, 0xe5, 0xcb, 0x4d, 0x83, 0x38, 0x50, 0xe1, 0x19, 0xf0, +}; +static const unsigned char kat3260_addinpr2[] = { + 0xb8, 0x69, 0x02, 0x17, 0xaa, 0x47, 0x1c, 0x4e, 0xee, 0xaa, 0x90, 0x78, + 0x21, 0x70, 0xb5, 0x24, 0xfa, 0xc1, 0xa7, 0x8e, 0x37, 0x55, 0xfe, 0xa8, + 0xb0, 0xea, 0x25, 0x1e, 0x8f, 0x73, 0x94, 0x34, +}; +static const unsigned char kat3260_retbits[] = { + 0x40, 0xee, 0xee, 0xf8, 0x0c, 0xe4, 0x9d, 0x3b, 0xf0, 0x35, 0x0b, 0x20, + 0x98, 0x2f, 0xc9, 0xfe, 0xe2, 0x18, 0x4b, 0xcd, 0x85, 0x49, 0x95, 0xfb, + 0x23, 0xcc, 0xd4, 0x4b, 0x2d, 0xc3, 0x56, 0x98, 0x10, 0x34, 0xa1, 0x96, + 0x0b, 0xdc, 0x1c, 0xb1, 0x2e, 0x1e, 0xb3, 0xe5, 0xa2, 0xbe, 0xf7, 0xab, + 0x5b, 0xed, 0xc4, 0x98, 0x01, 0xdf, 0x04, 0x1c, 0x34, 0x47, 0x08, 0xf9, + 0x5c, 0xbd, 0xde, 0x99, +}; +static const struct drbg_kat_pr_true kat3260_t = { + 4, kat3260_entropyin, kat3260_nonce, kat3260_persstr, + kat3260_entropyinpr1, kat3260_addinpr1, kat3260_entropyinpr2, + kat3260_addinpr2, kat3260_retbits +}; +static const struct drbg_kat kat3260 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3260_t +}; + +static const unsigned char kat3261_entropyin[] = { + 0x24, 0xce, 0xe3, 0x06, 0x56, 0x29, 0x40, 0x19, 0x9a, 0xb6, 0x83, 0x7b, + 0x40, 0xd7, 0xff, 0xe3, 0x02, 0xc5, 0x68, 0x29, 0x35, 0x61, 0x5b, 0x3c, +}; +static const unsigned char kat3261_nonce[] = { + 0xa4, 0x80, 0x10, 0x3d, 0xf6, 0x65, 0x96, 0x8a, 0xcb, 0x52, 0x79, 0x33, + 0x2d, 0x51, 0xf3, 0x3a, +}; +static const unsigned char kat3261_persstr[] = {0}; +static const unsigned char kat3261_entropyinpr1[] = { + 0xa4, 0x2f, 0x47, 0x88, 0x1b, 0x2d, 0x9f, 0x91, 0x2f, 0x5a, 0xae, 0x05, + 0x35, 0xd1, 0x29, 0x3c, 0xf1, 0x5f, 0xf6, 0xc0, 0x21, 0xe1, 0x6c, 0x38, +}; +static const unsigned char kat3261_addinpr1[] = { + 0x28, 0x08, 0xab, 0x02, 0x80, 0xe1, 0xa4, 0xa0, 0xb5, 0x63, 0x73, 0x46, + 0xe9, 0x12, 0xcc, 0xb6, 0x65, 0xcf, 0x96, 0x60, 0x25, 0x94, 0xb5, 0xa4, + 0x63, 0x3b, 0x58, 0x71, 0xd6, 0x55, 0x28, 0xb6, +}; +static const unsigned char kat3261_entropyinpr2[] = { + 0x67, 0x4d, 0xb9, 0x81, 0x50, 0xb5, 0x59, 0x0f, 0x98, 0xf7, 0x1b, 0x37, + 0x54, 0x2d, 0x2c, 0x6a, 0x4f, 0x02, 0xba, 0xf8, 0x96, 0x36, 0x63, 0x09, +}; +static const unsigned char kat3261_addinpr2[] = { + 0x36, 0x3c, 0x94, 0xc0, 0x6c, 0x07, 0xe3, 0x64, 0x13, 0x05, 0x19, 0xc1, + 0xc6, 0x50, 0x90, 0x51, 0x89, 0x74, 0xb6, 0xe2, 0x38, 0xf3, 0x96, 0x8b, + 0xfa, 0x4e, 0xbc, 0x76, 0x70, 0xa9, 0xef, 0x5c, +}; +static const unsigned char kat3261_retbits[] = { + 0xc9, 0x15, 0xdf, 0x7a, 0xc2, 0x69, 0x69, 0x75, 0x8f, 0x32, 0xca, 0x42, + 0x9f, 0xc8, 0x33, 0x5d, 0xd6, 0xbe, 0x86, 0x60, 0x37, 0x85, 0x77, 0x1b, + 0x2e, 0x8a, 0xc8, 0x38, 0xe7, 0xd2, 0x42, 0xa0, 0x99, 0x02, 0x53, 0x09, + 0x2d, 0x62, 0x47, 0xbd, 0xf1, 0x19, 0x9e, 0x55, 0x82, 0xaa, 0x08, 0x08, + 0x36, 0x5c, 0xe7, 0x58, 0x84, 0xf4, 0xe0, 0x98, 0xd4, 0xb6, 0x05, 0x8a, + 0xbf, 0xfd, 0x3c, 0xd8, +}; +static const struct drbg_kat_pr_true kat3261_t = { + 5, kat3261_entropyin, kat3261_nonce, kat3261_persstr, + kat3261_entropyinpr1, kat3261_addinpr1, kat3261_entropyinpr2, + kat3261_addinpr2, kat3261_retbits +}; +static const struct drbg_kat kat3261 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3261_t +}; + +static const unsigned char kat3262_entropyin[] = { + 0x7f, 0x70, 0x54, 0x1d, 0x69, 0x5a, 0xea, 0x4a, 0xc7, 0x81, 0xe7, 0x5b, + 0x45, 0x95, 0x4e, 0xa2, 0xfe, 0xc9, 0x08, 0x66, 0x82, 0x14, 0x69, 0xca, +}; +static const unsigned char kat3262_nonce[] = { + 0x49, 0x8a, 0x65, 0xd8, 0xa4, 0x47, 0x84, 0xa6, 0x49, 0x06, 0x00, 0x78, + 0xf3, 0x82, 0x91, 0x90, +}; +static const unsigned char kat3262_persstr[] = {0}; +static const unsigned char kat3262_entropyinpr1[] = { + 0x0e, 0x12, 0x30, 0x93, 0x9e, 0x9b, 0xd0, 0x85, 0x4c, 0xdc, 0x7b, 0x9e, + 0x2d, 0x07, 0xb4, 0x73, 0x46, 0x78, 0xeb, 0x89, 0x8f, 0x90, 0x16, 0xeb, +}; +static const unsigned char kat3262_addinpr1[] = { + 0xfd, 0xa4, 0x9e, 0xcc, 0x3e, 0xd3, 0x5b, 0x59, 0x85, 0x1a, 0xae, 0xba, + 0x4a, 0xc3, 0x8a, 0x53, 0xae, 0x78, 0xd8, 0x81, 0x2d, 0xcf, 0x56, 0xbb, + 0x76, 0x96, 0xf2, 0xe5, 0x80, 0x8d, 0x2e, 0xcb, +}; +static const unsigned char kat3262_entropyinpr2[] = { + 0x1c, 0xa6, 0x60, 0x00, 0x7c, 0x02, 0x18, 0xbd, 0x45, 0xf0, 0x66, 0x0e, + 0xcf, 0x6f, 0x98, 0x24, 0x8f, 0x23, 0xb2, 0xd8, 0x7b, 0x98, 0x4a, 0x59, +}; +static const unsigned char kat3262_addinpr2[] = { + 0x04, 0xe4, 0x08, 0xa9, 0xb7, 0xa1, 0x47, 0x3f, 0xe9, 0x6b, 0x08, 0x86, + 0x60, 0x90, 0x8f, 0x73, 0x0b, 0xac, 0xf2, 0xe4, 0x75, 0xf5, 0xd8, 0x3e, + 0x95, 0x1a, 0xe8, 0x8d, 0x0d, 0xe3, 0xd8, 0x56, +}; +static const unsigned char kat3262_retbits[] = { + 0x59, 0x9a, 0x96, 0xd3, 0x25, 0xac, 0xcc, 0x57, 0xb4, 0x86, 0xfc, 0x65, + 0xac, 0x9e, 0xff, 0x4a, 0xd4, 0xde, 0x51, 0xc0, 0x8b, 0x31, 0x47, 0xfc, + 0x1e, 0x24, 0x0a, 0x9e, 0x27, 0xf0, 0x5a, 0x2d, 0xd4, 0xc4, 0x7a, 0x27, + 0x70, 0x08, 0x59, 0xfd, 0x11, 0xc0, 0x23, 0xc7, 0x33, 0x9b, 0x4f, 0x1c, + 0xf8, 0xf8, 0xfa, 0xae, 0x19, 0xa4, 0x3c, 0x1a, 0x2c, 0xa4, 0xc2, 0xb1, + 0xb2, 0x72, 0xad, 0xb6, +}; +static const struct drbg_kat_pr_true kat3262_t = { + 6, kat3262_entropyin, kat3262_nonce, kat3262_persstr, + kat3262_entropyinpr1, kat3262_addinpr1, kat3262_entropyinpr2, + kat3262_addinpr2, kat3262_retbits +}; +static const struct drbg_kat kat3262 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3262_t +}; + +static const unsigned char kat3263_entropyin[] = { + 0xda, 0x29, 0xbe, 0xa1, 0x8e, 0x5c, 0x26, 0x41, 0xd2, 0x71, 0x46, 0x69, + 0xa7, 0x35, 0x13, 0xd6, 0xd7, 0x6b, 0x04, 0xf2, 0x8f, 0xb4, 0xed, 0x2a, +}; +static const unsigned char kat3263_nonce[] = { + 0xca, 0xe7, 0x23, 0x3b, 0x24, 0xfa, 0xd1, 0x55, 0x45, 0xd9, 0x5e, 0x35, + 0xb6, 0x58, 0x79, 0xcb, +}; +static const unsigned char kat3263_persstr[] = {0}; +static const unsigned char kat3263_entropyinpr1[] = { + 0x7a, 0xdb, 0x54, 0x4c, 0xda, 0x70, 0xe8, 0x16, 0xeb, 0x80, 0xd5, 0x98, + 0xf2, 0x09, 0x64, 0x95, 0x4e, 0x8e, 0x9e, 0x04, 0xa4, 0x8b, 0xab, 0x29, +}; +static const unsigned char kat3263_addinpr1[] = { + 0xb8, 0x3a, 0x8c, 0x26, 0x35, 0xd3, 0x31, 0xcc, 0xf8, 0xf0, 0xc8, 0x1d, + 0x97, 0xb7, 0x45, 0xa1, 0xa1, 0xd0, 0x20, 0x06, 0xb6, 0xec, 0x9d, 0xce, + 0x51, 0x7d, 0x30, 0x1e, 0x75, 0x81, 0x93, 0x9e, +}; +static const unsigned char kat3263_entropyinpr2[] = { + 0x0d, 0x30, 0xb6, 0xe1, 0xd6, 0xe1, 0x6a, 0xc9, 0xe7, 0xf9, 0xec, 0x45, + 0x19, 0x39, 0xe9, 0xb1, 0x45, 0xfa, 0xcb, 0xf0, 0x84, 0x78, 0x02, 0xd0, +}; +static const unsigned char kat3263_addinpr2[] = { + 0x78, 0x35, 0x65, 0x02, 0xe2, 0xa7, 0x95, 0x4f, 0x48, 0x37, 0x86, 0xd2, + 0xae, 0xb5, 0x5b, 0x30, 0xe7, 0x71, 0x68, 0x9c, 0x2b, 0x49, 0xf0, 0x38, + 0xfb, 0xa4, 0x99, 0x01, 0x71, 0x26, 0xb5, 0xf4, +}; +static const unsigned char kat3263_retbits[] = { + 0xa3, 0xfe, 0xaa, 0xaf, 0x77, 0x5d, 0x08, 0xc2, 0x81, 0xd9, 0xaf, 0x19, + 0x83, 0xfa, 0xcc, 0xb2, 0xe5, 0x40, 0xc9, 0x34, 0xda, 0xde, 0xfa, 0x05, + 0xec, 0x7a, 0xb3, 0x2e, 0xd9, 0xd3, 0xd0, 0xfa, 0xb5, 0x8c, 0x57, 0x1f, + 0x34, 0x08, 0x92, 0x7d, 0xf0, 0x15, 0x86, 0x97, 0xa7, 0x03, 0x9f, 0x50, + 0x2b, 0x9f, 0xdc, 0x12, 0xcd, 0x01, 0x87, 0x62, 0xc6, 0xba, 0x53, 0xc2, + 0x98, 0x83, 0x70, 0x36, +}; +static const struct drbg_kat_pr_true kat3263_t = { + 7, kat3263_entropyin, kat3263_nonce, kat3263_persstr, + kat3263_entropyinpr1, kat3263_addinpr1, kat3263_entropyinpr2, + kat3263_addinpr2, kat3263_retbits +}; +static const struct drbg_kat kat3263 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3263_t +}; + +static const unsigned char kat3264_entropyin[] = { + 0x52, 0xb9, 0xde, 0x81, 0x33, 0x16, 0xd7, 0x6f, 0x19, 0xe4, 0x1b, 0x9d, + 0xa3, 0x91, 0xce, 0x57, 0xb7, 0xee, 0xd1, 0xb2, 0xe5, 0x9e, 0x90, 0xe8, +}; +static const unsigned char kat3264_nonce[] = { + 0x67, 0x56, 0xec, 0x3c, 0xa1, 0x00, 0x7b, 0x50, 0x0a, 0x65, 0x6a, 0x24, + 0x28, 0xc8, 0x3a, 0x31, +}; +static const unsigned char kat3264_persstr[] = {0}; +static const unsigned char kat3264_entropyinpr1[] = { + 0xb5, 0x7e, 0xcf, 0xa4, 0xdb, 0x4c, 0xc8, 0x62, 0x0c, 0x89, 0x78, 0x21, + 0x0d, 0xa3, 0xf3, 0x16, 0xb2, 0xcb, 0xd0, 0x21, 0x01, 0x5d, 0x7e, 0xb9, +}; +static const unsigned char kat3264_addinpr1[] = { + 0xbf, 0xa3, 0x10, 0x19, 0x6b, 0xcf, 0xbd, 0x9d, 0x26, 0xa3, 0x66, 0xdd, + 0xbf, 0xe0, 0xb0, 0xd3, 0x85, 0xfb, 0x08, 0x20, 0xd5, 0xb1, 0x97, 0x7e, + 0x6c, 0x4d, 0x42, 0xf9, 0xce, 0x48, 0x42, 0xff, +}; +static const unsigned char kat3264_entropyinpr2[] = { + 0x7d, 0x32, 0xcf, 0x1e, 0x2e, 0x65, 0x68, 0x93, 0x38, 0xae, 0x65, 0x81, + 0x21, 0xd4, 0xf4, 0x9c, 0xa1, 0x1a, 0x38, 0xc8, 0x19, 0x48, 0x42, 0xc7, +}; +static const unsigned char kat3264_addinpr2[] = { + 0x48, 0xa0, 0xda, 0x78, 0x43, 0xd4, 0x7c, 0xe6, 0xd1, 0xfc, 0xa3, 0x71, + 0x1c, 0x06, 0xb6, 0xe5, 0xba, 0x0e, 0x35, 0xf1, 0x5d, 0x2a, 0x58, 0xeb, + 0x88, 0x8b, 0x8d, 0xdf, 0x6b, 0x16, 0xa6, 0xa2, +}; +static const unsigned char kat3264_retbits[] = { + 0xa6, 0x07, 0x25, 0x3c, 0xcd, 0x8c, 0xff, 0xfe, 0x48, 0x0c, 0x06, 0x69, + 0xa5, 0x4a, 0xbe, 0x88, 0x37, 0xca, 0x07, 0x14, 0xf4, 0xa0, 0x0d, 0xe2, + 0x30, 0xf6, 0x61, 0x33, 0x3e, 0xea, 0xc4, 0xf5, 0x4c, 0x88, 0x01, 0xf9, + 0xdb, 0x53, 0x39, 0xeb, 0x18, 0x52, 0x58, 0xe9, 0xe2, 0x93, 0x71, 0xe5, + 0xbf, 0x87, 0x47, 0x95, 0x09, 0x59, 0x78, 0x94, 0x1c, 0xb6, 0xbe, 0x65, + 0x35, 0xb9, 0xfa, 0xc1, +}; +static const struct drbg_kat_pr_true kat3264_t = { + 8, kat3264_entropyin, kat3264_nonce, kat3264_persstr, + kat3264_entropyinpr1, kat3264_addinpr1, kat3264_entropyinpr2, + kat3264_addinpr2, kat3264_retbits +}; +static const struct drbg_kat kat3264 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3264_t +}; + +static const unsigned char kat3265_entropyin[] = { + 0xa2, 0x1d, 0x94, 0xe4, 0xf1, 0x5c, 0xb4, 0xb5, 0xf4, 0x06, 0x7e, 0x57, + 0x5f, 0x51, 0xce, 0xfa, 0x01, 0x3f, 0x8b, 0xd6, 0xb9, 0xff, 0x08, 0xc1, +}; +static const unsigned char kat3265_nonce[] = { + 0x38, 0x86, 0x8d, 0x59, 0x41, 0x9e, 0x34, 0x80, 0xc5, 0xaf, 0x5f, 0xbe, + 0x24, 0x56, 0x28, 0x12, +}; +static const unsigned char kat3265_persstr[] = {0}; +static const unsigned char kat3265_entropyinpr1[] = { + 0x2d, 0x60, 0xe5, 0xbe, 0xe9, 0xf4, 0xe0, 0x72, 0xe3, 0x0a, 0xd7, 0xe0, + 0x11, 0xa3, 0xff, 0x16, 0x8b, 0x05, 0x4a, 0xba, 0x09, 0xc1, 0x7d, 0xd3, +}; +static const unsigned char kat3265_addinpr1[] = { + 0xce, 0x0f, 0x66, 0x0a, 0x52, 0x60, 0x5f, 0xa8, 0xce, 0x4c, 0xa7, 0xc3, + 0x91, 0x14, 0x92, 0xfe, 0x41, 0x82, 0x3e, 0x9d, 0x2a, 0xb0, 0xdc, 0x06, + 0x53, 0xcc, 0xde, 0xfb, 0xde, 0x52, 0x38, 0xbf, +}; +static const unsigned char kat3265_entropyinpr2[] = { + 0x0d, 0xdf, 0x5f, 0x45, 0x1a, 0xc1, 0x7f, 0x5c, 0x9c, 0xb2, 0xf1, 0xad, + 0x17, 0x59, 0xa8, 0x1d, 0x6a, 0xba, 0xe8, 0x1a, 0xf5, 0x9f, 0x89, 0x03, +}; +static const unsigned char kat3265_addinpr2[] = { + 0xb8, 0x55, 0xa6, 0xb8, 0xb3, 0x0b, 0xd9, 0xa5, 0xfd, 0xb3, 0xc2, 0xbe, + 0xbe, 0x16, 0xa2, 0xc5, 0xa7, 0x0c, 0x16, 0x1d, 0x84, 0xa1, 0x57, 0xbe, + 0xaa, 0x70, 0x00, 0x0e, 0x4a, 0xa3, 0x71, 0x12, +}; +static const unsigned char kat3265_retbits[] = { + 0xfa, 0x77, 0xcc, 0x78, 0x02, 0xd4, 0x57, 0xce, 0x1d, 0x1e, 0x94, 0x0e, + 0x27, 0xbd, 0xa2, 0xda, 0x7f, 0xcc, 0xe0, 0x69, 0x24, 0x7e, 0xba, 0xa8, + 0x49, 0x40, 0x6d, 0xd3, 0x20, 0x81, 0x48, 0x97, 0x7b, 0x09, 0x29, 0xc8, + 0x6e, 0xb7, 0xb8, 0x92, 0x9a, 0x91, 0x74, 0xcb, 0xd1, 0x81, 0xe0, 0xae, + 0xf1, 0x7e, 0xfb, 0x8f, 0x05, 0xfe, 0x4b, 0x45, 0x06, 0x17, 0x72, 0x86, + 0x7a, 0x2c, 0xee, 0xf9, +}; +static const struct drbg_kat_pr_true kat3265_t = { + 9, kat3265_entropyin, kat3265_nonce, kat3265_persstr, + kat3265_entropyinpr1, kat3265_addinpr1, kat3265_entropyinpr2, + kat3265_addinpr2, kat3265_retbits +}; +static const struct drbg_kat kat3265 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3265_t +}; + +static const unsigned char kat3266_entropyin[] = { + 0x0a, 0x09, 0x68, 0x83, 0x88, 0xa2, 0x03, 0xc9, 0xa8, 0x61, 0x38, 0xa5, + 0x6a, 0xcd, 0xd1, 0xe1, 0x8e, 0x53, 0xaf, 0x2d, 0x4d, 0xf4, 0xf8, 0x2b, +}; +static const unsigned char kat3266_nonce[] = { + 0x7c, 0x99, 0x35, 0xad, 0x47, 0x64, 0x02, 0xda, 0x67, 0x8f, 0xb8, 0x88, + 0x47, 0xbc, 0x79, 0xda, +}; +static const unsigned char kat3266_persstr[] = {0}; +static const unsigned char kat3266_entropyinpr1[] = { + 0xfb, 0xe2, 0xfc, 0xd6, 0x87, 0x33, 0x6d, 0xb7, 0x56, 0xd6, 0x88, 0x9a, + 0xdd, 0x29, 0xb4, 0xe1, 0x74, 0xf8, 0x60, 0x58, 0x54, 0xfa, 0x90, 0xcd, +}; +static const unsigned char kat3266_addinpr1[] = { + 0xf2, 0x8e, 0x4d, 0xd1, 0x74, 0xb4, 0xe2, 0x63, 0x97, 0x29, 0x05, 0xb4, + 0x10, 0x7a, 0x55, 0x06, 0x35, 0x80, 0x67, 0xcd, 0xef, 0xa2, 0xc6, 0xbd, + 0x87, 0x0e, 0x4d, 0xe6, 0x1c, 0x63, 0x9e, 0xa7, +}; +static const unsigned char kat3266_entropyinpr2[] = { + 0xd9, 0x3c, 0xe3, 0x2c, 0xb1, 0x92, 0xce, 0x1a, 0x4b, 0xff, 0x95, 0x63, + 0x91, 0x06, 0x3a, 0xdf, 0xab, 0x11, 0xee, 0x62, 0xff, 0x9f, 0xde, 0xbe, +}; +static const unsigned char kat3266_addinpr2[] = { + 0x23, 0x21, 0x81, 0xf3, 0x29, 0x3d, 0x37, 0xec, 0xf6, 0x5e, 0xa1, 0xf2, + 0xaf, 0xf6, 0x6d, 0x21, 0x2d, 0xdb, 0x43, 0x4b, 0xe7, 0xc6, 0x41, 0x0f, + 0x72, 0xa7, 0xab, 0x46, 0xb1, 0xfc, 0xfb, 0x8b, +}; +static const unsigned char kat3266_retbits[] = { + 0xde, 0x5c, 0xf7, 0x7d, 0xcd, 0x48, 0x72, 0x73, 0x95, 0xb9, 0xdc, 0x8c, + 0xd0, 0x1f, 0xa0, 0x6b, 0x36, 0x24, 0x6b, 0xe0, 0x1b, 0x6b, 0xcd, 0xf1, + 0x12, 0x6f, 0x24, 0xd1, 0x64, 0x99, 0xbb, 0x2e, 0xda, 0x5c, 0x67, 0x17, + 0xd7, 0x84, 0xf2, 0xff, 0xe5, 0x8f, 0x96, 0xe4, 0x11, 0x6f, 0x80, 0x47, + 0x90, 0xf1, 0x39, 0x87, 0xfa, 0x30, 0x99, 0x9d, 0xec, 0xcc, 0xd8, 0x32, + 0x47, 0xab, 0x7f, 0xb3, +}; +static const struct drbg_kat_pr_true kat3266_t = { + 10, kat3266_entropyin, kat3266_nonce, kat3266_persstr, + kat3266_entropyinpr1, kat3266_addinpr1, kat3266_entropyinpr2, + kat3266_addinpr2, kat3266_retbits +}; +static const struct drbg_kat kat3266 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3266_t +}; + +static const unsigned char kat3267_entropyin[] = { + 0xd7, 0x4d, 0x47, 0x64, 0x5d, 0xe0, 0xc4, 0x13, 0x1d, 0x0e, 0xfa, 0x5b, + 0xf2, 0xcd, 0xb3, 0x0e, 0xf8, 0x34, 0xed, 0xe8, 0x60, 0xcf, 0x23, 0x2f, +}; +static const unsigned char kat3267_nonce[] = { + 0xc1, 0x9c, 0x88, 0x8c, 0x22, 0x9a, 0xee, 0x57, 0x97, 0xf7, 0x84, 0xbe, + 0xa1, 0x83, 0x3a, 0x1b, +}; +static const unsigned char kat3267_persstr[] = {0}; +static const unsigned char kat3267_entropyinpr1[] = { + 0x06, 0x7f, 0x62, 0x6a, 0x17, 0x36, 0x18, 0x10, 0x01, 0xe2, 0x40, 0xc6, + 0xa3, 0x64, 0xb8, 0xa8, 0xbe, 0x5b, 0x56, 0x58, 0x25, 0xeb, 0xd2, 0x70, +}; +static const unsigned char kat3267_addinpr1[] = { + 0xf8, 0xf5, 0xac, 0x79, 0x8d, 0xe7, 0x32, 0x4c, 0x6d, 0x7e, 0x9e, 0xa1, + 0x1e, 0xd0, 0xe1, 0xbb, 0x77, 0x6b, 0xbf, 0xac, 0xad, 0x70, 0x01, 0xa3, + 0xa7, 0x34, 0xfc, 0x47, 0x69, 0x45, 0x2b, 0xea, +}; +static const unsigned char kat3267_entropyinpr2[] = { + 0x9d, 0xe6, 0xf8, 0xda, 0x19, 0xd2, 0x26, 0x06, 0x27, 0x55, 0x07, 0x77, + 0x69, 0xe6, 0x8f, 0xf0, 0x6f, 0x05, 0x07, 0xf9, 0x17, 0x7b, 0x9c, 0x09, +}; +static const unsigned char kat3267_addinpr2[] = { + 0xe1, 0x7f, 0x98, 0xbd, 0x2a, 0xbd, 0xb1, 0xed, 0xe2, 0x1b, 0xfb, 0x6f, + 0x8b, 0x48, 0x67, 0x02, 0x69, 0xef, 0x34, 0xc8, 0xbf, 0xbd, 0x9e, 0xc6, + 0x53, 0x19, 0x9b, 0xbf, 0x31, 0xfb, 0x0c, 0xa1, +}; +static const unsigned char kat3267_retbits[] = { + 0xe5, 0x80, 0x02, 0xeb, 0x49, 0x63, 0xf7, 0x08, 0x41, 0x74, 0xfe, 0x60, + 0xb4, 0x86, 0xc3, 0x72, 0x7c, 0xe1, 0xb6, 0x15, 0x17, 0x18, 0xe2, 0x09, + 0x0d, 0xd8, 0xce, 0x84, 0xff, 0x76, 0xf4, 0x9a, 0xa5, 0x23, 0x12, 0x2f, + 0x68, 0xa1, 0x65, 0xc7, 0x98, 0xea, 0x75, 0xd5, 0x4a, 0xe9, 0xef, 0x2d, + 0xe3, 0xd3, 0x77, 0x00, 0x35, 0x8e, 0xac, 0x07, 0xf9, 0x9a, 0xa1, 0x1a, + 0x13, 0x93, 0xef, 0x86, +}; +static const struct drbg_kat_pr_true kat3267_t = { + 11, kat3267_entropyin, kat3267_nonce, kat3267_persstr, + kat3267_entropyinpr1, kat3267_addinpr1, kat3267_entropyinpr2, + kat3267_addinpr2, kat3267_retbits +}; +static const struct drbg_kat kat3267 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3267_t +}; + +static const unsigned char kat3268_entropyin[] = { + 0x77, 0x97, 0xe5, 0xd1, 0x4b, 0x65, 0xe6, 0x40, 0xef, 0x35, 0x2e, 0x00, + 0x14, 0x03, 0xb1, 0x3a, 0x43, 0x42, 0x5c, 0x62, 0xcc, 0x6d, 0x68, 0x4a, +}; +static const unsigned char kat3268_nonce[] = { + 0x6f, 0xe4, 0x1e, 0xcf, 0xc8, 0x02, 0x59, 0x96, 0x87, 0xf7, 0x06, 0xe0, + 0x49, 0x54, 0x2c, 0xda, +}; +static const unsigned char kat3268_persstr[] = {0}; +static const unsigned char kat3268_entropyinpr1[] = { + 0x87, 0x7c, 0xca, 0x91, 0x1f, 0xb3, 0x4f, 0xa9, 0x21, 0x6a, 0xb0, 0xb2, + 0x71, 0xcb, 0x57, 0x4c, 0x0e, 0x61, 0xc1, 0x87, 0x5a, 0xb7, 0x0f, 0xfd, +}; +static const unsigned char kat3268_addinpr1[] = { + 0x5f, 0x42, 0xc7, 0x23, 0xb0, 0xf3, 0x9c, 0xb7, 0xbc, 0xd6, 0x7e, 0x0f, + 0xcb, 0xcd, 0x7a, 0x89, 0x2a, 0x01, 0x72, 0xe3, 0x64, 0x9a, 0x97, 0xa6, + 0x66, 0x08, 0x87, 0x56, 0x48, 0x1f, 0xfd, 0x16, +}; +static const unsigned char kat3268_entropyinpr2[] = { + 0x9e, 0x1a, 0x26, 0x1f, 0x84, 0xd4, 0x77, 0x55, 0xc5, 0x11, 0xa0, 0x15, + 0xaf, 0xa2, 0x3b, 0xfa, 0x23, 0x1c, 0x90, 0xfd, 0x8a, 0x68, 0xe6, 0x24, +}; +static const unsigned char kat3268_addinpr2[] = { + 0x1d, 0x85, 0x2b, 0x6e, 0x6e, 0xcf, 0x97, 0x3f, 0x25, 0xe8, 0x42, 0x7d, + 0x57, 0x3a, 0x0c, 0xb9, 0x0f, 0xcf, 0xd0, 0x7c, 0xdf, 0x8b, 0xe6, 0x5d, + 0x17, 0x3a, 0x31, 0xe4, 0xbd, 0x39, 0xed, 0xbd, +}; +static const unsigned char kat3268_retbits[] = { + 0xc7, 0xdc, 0x41, 0x41, 0xaf, 0x86, 0xa8, 0x27, 0xf7, 0x34, 0xc6, 0xda, + 0x58, 0x59, 0x3a, 0x18, 0xd1, 0xf9, 0x11, 0xdf, 0xb6, 0xd8, 0x86, 0x8c, + 0x0f, 0xab, 0x20, 0xdb, 0xd3, 0x1f, 0x31, 0x18, 0x9c, 0xdc, 0xef, 0x89, + 0xaf, 0x4d, 0xf4, 0xf6, 0x4e, 0x53, 0x1f, 0xaf, 0xc6, 0x10, 0xd2, 0xbc, + 0xac, 0xde, 0x05, 0xe3, 0xd2, 0x3c, 0x41, 0xa7, 0xc1, 0x00, 0xb3, 0xaf, + 0x49, 0x94, 0x11, 0x60, +}; +static const struct drbg_kat_pr_true kat3268_t = { + 12, kat3268_entropyin, kat3268_nonce, kat3268_persstr, + kat3268_entropyinpr1, kat3268_addinpr1, kat3268_entropyinpr2, + kat3268_addinpr2, kat3268_retbits +}; +static const struct drbg_kat kat3268 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3268_t +}; + +static const unsigned char kat3269_entropyin[] = { + 0xea, 0xb0, 0x28, 0xdc, 0x4c, 0xcb, 0x75, 0x8b, 0x33, 0xb8, 0xb7, 0x2a, + 0x33, 0xfc, 0x55, 0x16, 0x81, 0xeb, 0x05, 0x68, 0x5c, 0x62, 0x1c, 0xb9, +}; +static const unsigned char kat3269_nonce[] = { + 0x3c, 0x45, 0x7b, 0x9c, 0xad, 0x22, 0x8f, 0x51, 0x28, 0x95, 0x6b, 0xea, + 0x40, 0x2d, 0xef, 0x9d, +}; +static const unsigned char kat3269_persstr[] = {0}; +static const unsigned char kat3269_entropyinpr1[] = { + 0xef, 0xb4, 0x8f, 0x69, 0xe3, 0xcd, 0x1a, 0x91, 0x9a, 0x89, 0x80, 0x3d, + 0x78, 0x02, 0x50, 0x59, 0x9d, 0x2e, 0x0d, 0x5a, 0x8f, 0x9b, 0x77, 0x6d, +}; +static const unsigned char kat3269_addinpr1[] = { + 0x86, 0x1b, 0xfb, 0x5b, 0xe4, 0x84, 0xea, 0xff, 0x7d, 0x40, 0x7f, 0x4e, + 0x08, 0x23, 0x63, 0x65, 0x1b, 0xa0, 0x74, 0x2f, 0x26, 0x54, 0xbf, 0x6f, + 0xdd, 0xeb, 0xd3, 0x6b, 0xa3, 0x40, 0xab, 0x99, +}; +static const unsigned char kat3269_entropyinpr2[] = { + 0x73, 0x5c, 0xc8, 0x08, 0x22, 0x44, 0x77, 0x86, 0x52, 0x91, 0xae, 0xfd, + 0x56, 0xfb, 0x9a, 0x22, 0xc5, 0xe2, 0x87, 0x0a, 0x0a, 0x70, 0xb3, 0x90, +}; +static const unsigned char kat3269_addinpr2[] = { + 0x85, 0x5b, 0x9d, 0xe8, 0xf6, 0xa9, 0x00, 0xf7, 0x19, 0xc4, 0x1e, 0xe9, + 0x32, 0x4a, 0x9d, 0xe1, 0xbf, 0xe8, 0x78, 0xa1, 0x31, 0x28, 0xbb, 0x7c, + 0x56, 0xba, 0x27, 0xef, 0x08, 0x79, 0x66, 0xe0, +}; +static const unsigned char kat3269_retbits[] = { + 0x63, 0x99, 0x87, 0x47, 0x61, 0xbb, 0x95, 0x7b, 0x73, 0x37, 0x45, 0xda, + 0xe3, 0xe1, 0x12, 0x51, 0x45, 0xc1, 0x0a, 0x0e, 0x40, 0x12, 0x35, 0xc6, + 0xd0, 0x63, 0xf4, 0xd4, 0x14, 0x28, 0xc0, 0xf9, 0xcc, 0x17, 0x1b, 0xea, + 0xd1, 0x0e, 0x53, 0x63, 0x8f, 0x7f, 0x0f, 0x3f, 0xa6, 0xe5, 0xe5, 0x36, + 0x85, 0x20, 0x64, 0x36, 0x03, 0x80, 0x91, 0x36, 0x9d, 0xb6, 0xe1, 0x72, + 0xd3, 0x64, 0x16, 0x1c, +}; +static const struct drbg_kat_pr_true kat3269_t = { + 13, kat3269_entropyin, kat3269_nonce, kat3269_persstr, + kat3269_entropyinpr1, kat3269_addinpr1, kat3269_entropyinpr2, + kat3269_addinpr2, kat3269_retbits +}; +static const struct drbg_kat kat3269 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3269_t +}; + +static const unsigned char kat3270_entropyin[] = { + 0x12, 0x97, 0x1c, 0xf0, 0x16, 0x86, 0x1d, 0xcb, 0xf8, 0x8d, 0x94, 0xc5, + 0x02, 0xf2, 0x05, 0x8a, 0xd4, 0xe3, 0x4c, 0x32, 0xab, 0xac, 0xb6, 0x4e, +}; +static const unsigned char kat3270_nonce[] = { + 0x09, 0x39, 0x64, 0xe5, 0x17, 0xf9, 0xc4, 0x5b, 0xb2, 0xd0, 0x8b, 0xe7, + 0x98, 0x5f, 0x84, 0x5f, +}; +static const unsigned char kat3270_persstr[] = {0}; +static const unsigned char kat3270_entropyinpr1[] = { + 0x81, 0x9b, 0x92, 0x95, 0xc2, 0x30, 0xab, 0x04, 0x0a, 0xa4, 0xac, 0x51, + 0xb6, 0x2e, 0xf0, 0xd8, 0x44, 0x7f, 0xf2, 0xce, 0x11, 0x12, 0x17, 0x32, +}; +static const unsigned char kat3270_addinpr1[] = { + 0x5a, 0x5d, 0x31, 0x0a, 0x1b, 0x59, 0xc6, 0xa4, 0xb6, 0xae, 0x77, 0x55, + 0xfc, 0x44, 0xe7, 0xb8, 0xd8, 0xd9, 0x2c, 0xbc, 0xd2, 0x3a, 0x37, 0xdc, + 0x1d, 0x78, 0x85, 0x9d, 0x66, 0x1a, 0x1c, 0xd4, +}; +static const unsigned char kat3270_entropyinpr2[] = { + 0x85, 0x58, 0x71, 0x5d, 0x42, 0x82, 0x3d, 0xa8, 0xa7, 0xc7, 0x72, 0xa7, + 0x2a, 0x76, 0x35, 0x88, 0x5d, 0xcf, 0x25, 0x9b, 0xf3, 0x7f, 0x6a, 0xe0, +}; +static const unsigned char kat3270_addinpr2[] = { + 0xdc, 0x7a, 0xdd, 0x14, 0xbb, 0x20, 0x52, 0x84, 0x08, 0xb8, 0xd3, 0xb8, + 0x57, 0x1d, 0xbf, 0xb9, 0x88, 0xf1, 0x93, 0xcd, 0x7b, 0x12, 0xd7, 0xde, + 0x97, 0xeb, 0x0d, 0x15, 0x1d, 0xc5, 0xb5, 0x6e, +}; +static const unsigned char kat3270_retbits[] = { + 0xe7, 0xf0, 0x1a, 0x2d, 0x2d, 0x19, 0x23, 0xfb, 0xfc, 0xf0, 0x11, 0x40, + 0x23, 0xc2, 0x84, 0x11, 0x32, 0x3e, 0x79, 0xbf, 0x63, 0x76, 0xdf, 0x38, + 0x04, 0x40, 0x6c, 0x01, 0x46, 0x68, 0x56, 0x7b, 0x7b, 0xfe, 0x21, 0x44, + 0x59, 0xce, 0x84, 0xac, 0xb6, 0xfc, 0xaf, 0x6a, 0x90, 0x24, 0x76, 0xe7, + 0xef, 0x4c, 0x70, 0x0c, 0x1a, 0xf1, 0xef, 0x81, 0xce, 0x1b, 0x5c, 0x3c, + 0x9c, 0x6d, 0xa7, 0x5d, +}; +static const struct drbg_kat_pr_true kat3270_t = { + 14, kat3270_entropyin, kat3270_nonce, kat3270_persstr, + kat3270_entropyinpr1, kat3270_addinpr1, kat3270_entropyinpr2, + kat3270_addinpr2, kat3270_retbits +}; +static const struct drbg_kat kat3270 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3270_t +}; + +static const unsigned char kat3271_entropyin[] = { + 0xe9, 0x03, 0x18, 0x10, 0x27, 0xfc, 0xb2, 0x02, 0x63, 0xbe, 0xee, 0x48, + 0x77, 0x66, 0x39, 0x50, 0x48, 0x17, 0x5d, 0x63, 0x6c, 0x25, 0x79, 0x0f, +}; +static const unsigned char kat3271_nonce[] = { + 0x3c, 0xc2, 0x09, 0xd6, 0x7d, 0xc6, 0x7c, 0xe1, 0x0c, 0x44, 0xcd, 0x85, + 0x87, 0xd4, 0x56, 0x4a, +}; +static const unsigned char kat3271_persstr[] = { + 0x9b, 0xc6, 0xbf, 0x7c, 0xe8, 0xe9, 0x95, 0x15, 0x75, 0xec, 0xcf, 0x77, + 0xd6, 0x9f, 0xd9, 0xd5, 0x13, 0x2b, 0xf7, 0x22, 0xe1, 0x94, 0xc8, 0x9f, + 0x19, 0xf9, 0xcc, 0x42, 0xdc, 0xf7, 0x24, 0x07, +}; +static const unsigned char kat3271_entropyinpr1[] = { + 0xdc, 0xd8, 0x28, 0xdf, 0x91, 0x57, 0x8e, 0x38, 0x32, 0x2f, 0xaa, 0x8c, + 0x4e, 0x89, 0xdc, 0xb2, 0xec, 0x33, 0x12, 0x72, 0xff, 0xb2, 0x40, 0x19, +}; +static const unsigned char kat3271_addinpr1[] = {0}; +static const unsigned char kat3271_entropyinpr2[] = { + 0x55, 0x6b, 0x36, 0x2d, 0x72, 0xe4, 0x9f, 0x96, 0x57, 0xd6, 0x0a, 0x6e, + 0x0d, 0x59, 0x40, 0xd1, 0xf8, 0x66, 0x73, 0xf1, 0xbc, 0xcb, 0x32, 0xff, +}; +static const unsigned char kat3271_addinpr2[] = {0}; +static const unsigned char kat3271_retbits[] = { + 0x20, 0xea, 0xbb, 0xb1, 0xbc, 0xe0, 0xa5, 0xbd, 0xff, 0x5e, 0x0b, 0x46, + 0x86, 0x0b, 0x76, 0x11, 0xe0, 0x3a, 0x3e, 0xb6, 0x72, 0xaf, 0x74, 0xd1, + 0xf8, 0x9d, 0x62, 0x4b, 0x7c, 0x78, 0x57, 0xf2, 0x52, 0x3b, 0x34, 0x2a, + 0x22, 0xcb, 0xa4, 0xba, 0x99, 0x27, 0xb6, 0x52, 0xbd, 0xce, 0x17, 0xbc, + 0x67, 0x09, 0x6a, 0x4a, 0xcf, 0xcd, 0x87, 0x62, 0xe3, 0x7a, 0x9c, 0xe1, + 0x7e, 0xd9, 0x2d, 0x34, +}; +static const struct drbg_kat_pr_true kat3271_t = { + 0, kat3271_entropyin, kat3271_nonce, kat3271_persstr, + kat3271_entropyinpr1, kat3271_addinpr1, kat3271_entropyinpr2, + kat3271_addinpr2, kat3271_retbits +}; +static const struct drbg_kat kat3271 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3271_t +}; + +static const unsigned char kat3272_entropyin[] = { + 0xc4, 0xfb, 0x68, 0xb9, 0x1a, 0xab, 0x25, 0x20, 0xe0, 0x6b, 0xe8, 0xfb, + 0x42, 0x99, 0x50, 0xea, 0x93, 0x1a, 0x97, 0xaf, 0x99, 0xcc, 0x95, 0xa9, +}; +static const unsigned char kat3272_nonce[] = { + 0x31, 0xc4, 0xe8, 0x7e, 0x8b, 0x1a, 0x40, 0x5b, 0x53, 0xda, 0x9b, 0xea, + 0xcd, 0x67, 0x3e, 0x05, +}; +static const unsigned char kat3272_persstr[] = { + 0xe6, 0xe7, 0x73, 0x46, 0xb6, 0xc1, 0x69, 0xc9, 0x44, 0x7a, 0xb9, 0xe2, + 0xbb, 0x95, 0x72, 0x58, 0x1f, 0xd5, 0x58, 0x48, 0xa3, 0xb4, 0xf5, 0x51, + 0x1b, 0x74, 0xf0, 0xc7, 0xa1, 0xdc, 0x95, 0xa0, +}; +static const unsigned char kat3272_entropyinpr1[] = { + 0x5a, 0xba, 0x28, 0xfc, 0xdd, 0x50, 0x9b, 0x69, 0xe3, 0x46, 0xae, 0x49, + 0xd7, 0xca, 0x5b, 0x7d, 0x70, 0xd1, 0x42, 0x2e, 0xff, 0x1b, 0x76, 0xf7, +}; +static const unsigned char kat3272_addinpr1[] = {0}; +static const unsigned char kat3272_entropyinpr2[] = { + 0x16, 0x7f, 0xe0, 0x2f, 0xd2, 0xa4, 0x5f, 0x21, 0xc8, 0x45, 0x9e, 0x67, + 0x03, 0x37, 0xe5, 0x62, 0xf4, 0x1e, 0x21, 0x64, 0x4d, 0x6c, 0x9c, 0xf4, +}; +static const unsigned char kat3272_addinpr2[] = {0}; +static const unsigned char kat3272_retbits[] = { + 0x32, 0xac, 0xca, 0x54, 0x98, 0x27, 0x29, 0x21, 0xa5, 0xf5, 0x49, 0x43, + 0x60, 0x30, 0x93, 0xbe, 0x34, 0x0e, 0xca, 0x9d, 0xe1, 0x36, 0x08, 0x2e, + 0xcc, 0xe3, 0xc0, 0x1f, 0xdd, 0x7e, 0x7f, 0x78, 0xe4, 0xca, 0x27, 0xf0, + 0x6f, 0x99, 0xd1, 0xe7, 0xc0, 0x3c, 0x8d, 0x1c, 0x75, 0xc2, 0x9d, 0x0a, + 0x58, 0x14, 0x60, 0x21, 0x35, 0xf2, 0x10, 0x12, 0xa5, 0x3d, 0xe2, 0x9e, + 0x94, 0x39, 0x5d, 0x8d, +}; +static const struct drbg_kat_pr_true kat3272_t = { + 1, kat3272_entropyin, kat3272_nonce, kat3272_persstr, + kat3272_entropyinpr1, kat3272_addinpr1, kat3272_entropyinpr2, + kat3272_addinpr2, kat3272_retbits +}; +static const struct drbg_kat kat3272 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3272_t +}; + +static const unsigned char kat3273_entropyin[] = { + 0x6a, 0x58, 0xe4, 0xc1, 0x4c, 0x4d, 0x3b, 0x6a, 0x9f, 0x2f, 0x0a, 0x6d, + 0x2c, 0x9c, 0x35, 0x20, 0x18, 0x55, 0x77, 0x29, 0x58, 0x74, 0x09, 0x29, +}; +static const unsigned char kat3273_nonce[] = { + 0x44, 0x19, 0x42, 0xdd, 0x72, 0x92, 0x6d, 0xf2, 0xec, 0x3d, 0xa1, 0x21, + 0xa0, 0x18, 0xc8, 0xc6, +}; +static const unsigned char kat3273_persstr[] = { + 0x4c, 0x09, 0x1a, 0x44, 0x88, 0x75, 0xd1, 0x8d, 0x88, 0xc4, 0x14, 0xf0, + 0xb3, 0x5c, 0xc4, 0xaa, 0x00, 0xf8, 0x14, 0xba, 0x74, 0xec, 0x8b, 0xc1, + 0x22, 0xe0, 0x76, 0x73, 0x50, 0x33, 0xa3, 0x6e, +}; +static const unsigned char kat3273_entropyinpr1[] = { + 0xfa, 0x03, 0xd1, 0xb0, 0x41, 0xe5, 0x78, 0x24, 0xd8, 0x3c, 0xe2, 0xf5, + 0x12, 0x60, 0xd9, 0x83, 0x62, 0x2f, 0x92, 0xa0, 0x2a, 0xc4, 0x12, 0xf7, +}; +static const unsigned char kat3273_addinpr1[] = {0}; +static const unsigned char kat3273_entropyinpr2[] = { + 0x14, 0x36, 0xcb, 0x63, 0xe1, 0x5c, 0x02, 0x2a, 0x04, 0x1f, 0x97, 0xc7, + 0xc9, 0xfa, 0x67, 0xd8, 0x00, 0x4a, 0x15, 0x07, 0x31, 0xbd, 0x0a, 0x6a, +}; +static const unsigned char kat3273_addinpr2[] = {0}; +static const unsigned char kat3273_retbits[] = { + 0x47, 0xd7, 0xa7, 0x18, 0xbc, 0x61, 0xa0, 0x6b, 0x0d, 0xda, 0xcf, 0xd9, + 0x53, 0x93, 0x4c, 0x5c, 0xbd, 0xdc, 0x7b, 0x90, 0x43, 0x92, 0xd9, 0xcc, + 0x72, 0xab, 0xa8, 0xa8, 0x0c, 0x55, 0x9e, 0x10, 0xd0, 0x73, 0x18, 0x0e, + 0xc6, 0x1c, 0xfe, 0x3f, 0xc1, 0xbb, 0x1e, 0x52, 0x37, 0x4c, 0x34, 0xb1, + 0xd4, 0xc4, 0xae, 0xca, 0x04, 0x8a, 0x10, 0x85, 0xfb, 0x4b, 0x8b, 0x8c, + 0xbe, 0x1e, 0x20, 0xb3, +}; +static const struct drbg_kat_pr_true kat3273_t = { + 2, kat3273_entropyin, kat3273_nonce, kat3273_persstr, + kat3273_entropyinpr1, kat3273_addinpr1, kat3273_entropyinpr2, + kat3273_addinpr2, kat3273_retbits +}; +static const struct drbg_kat kat3273 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3273_t +}; + +static const unsigned char kat3274_entropyin[] = { + 0x37, 0x7d, 0xc5, 0x74, 0xe3, 0x5c, 0x9d, 0x1a, 0x27, 0xa8, 0x64, 0x70, + 0x57, 0xe8, 0x24, 0x85, 0x0c, 0x2f, 0xaf, 0xca, 0xf6, 0x6e, 0x83, 0x09, +}; +static const unsigned char kat3274_nonce[] = { + 0x28, 0x5a, 0x1b, 0x7b, 0xb6, 0x39, 0x3b, 0x5c, 0xb4, 0x92, 0xc0, 0x56, + 0x00, 0xd4, 0x43, 0x07, +}; +static const unsigned char kat3274_persstr[] = { + 0x85, 0x1a, 0x9b, 0x5e, 0xf3, 0x4f, 0x1a, 0xa5, 0xa0, 0xe1, 0x05, 0xb5, + 0xb7, 0x12, 0xe1, 0xa6, 0xbb, 0xca, 0xa4, 0x75, 0x8a, 0x93, 0x70, 0x55, + 0x41, 0x93, 0x24, 0x78, 0xe3, 0xcf, 0x73, 0x5b, +}; +static const unsigned char kat3274_entropyinpr1[] = { + 0xf5, 0x13, 0x4f, 0x41, 0x02, 0x05, 0x78, 0x7d, 0xbb, 0x66, 0xe5, 0x6b, + 0x99, 0xe9, 0x75, 0x4e, 0x09, 0xc1, 0xf5, 0x47, 0xaf, 0x7a, 0xdd, 0xa1, +}; +static const unsigned char kat3274_addinpr1[] = {0}; +static const unsigned char kat3274_entropyinpr2[] = { + 0x61, 0x1a, 0x69, 0x88, 0x4b, 0xc0, 0xb0, 0xc0, 0xbc, 0x2c, 0xd6, 0x89, + 0x7b, 0xd4, 0xbf, 0x74, 0x13, 0x56, 0xaf, 0x16, 0xe6, 0x7d, 0x65, 0xcd, +}; +static const unsigned char kat3274_addinpr2[] = {0}; +static const unsigned char kat3274_retbits[] = { + 0x34, 0xf1, 0x08, 0x48, 0xee, 0xaf, 0x81, 0xd3, 0x68, 0x12, 0xe6, 0xf9, + 0xee, 0xc7, 0x71, 0xf9, 0x91, 0xe9, 0xb3, 0xb0, 0x50, 0xfd, 0x60, 0xf6, + 0xd0, 0xeb, 0x79, 0xc2, 0x89, 0x99, 0x0c, 0x85, 0x90, 0x3b, 0x81, 0x90, + 0x59, 0xd5, 0x99, 0x06, 0x89, 0xaf, 0x12, 0x20, 0x14, 0xc7, 0xad, 0x4a, + 0x69, 0xef, 0xe6, 0x8d, 0xf4, 0xcc, 0xb4, 0x3f, 0xfd, 0x8f, 0x98, 0xb2, + 0x69, 0xbc, 0xbb, 0x34, +}; +static const struct drbg_kat_pr_true kat3274_t = { + 3, kat3274_entropyin, kat3274_nonce, kat3274_persstr, + kat3274_entropyinpr1, kat3274_addinpr1, kat3274_entropyinpr2, + kat3274_addinpr2, kat3274_retbits +}; +static const struct drbg_kat kat3274 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3274_t +}; + +static const unsigned char kat3275_entropyin[] = { + 0x52, 0xcf, 0xe3, 0x22, 0xd7, 0x65, 0x6c, 0x27, 0xd7, 0x43, 0x42, 0xb3, + 0xc9, 0x2f, 0x32, 0xab, 0x3e, 0xc3, 0x94, 0x34, 0xc8, 0xcb, 0x6e, 0x76, +}; +static const unsigned char kat3275_nonce[] = { + 0xcb, 0x0d, 0x3e, 0x58, 0x67, 0x13, 0x3f, 0x12, 0x8c, 0x32, 0x33, 0x23, + 0x09, 0x0f, 0x88, 0x65, +}; +static const unsigned char kat3275_persstr[] = { + 0x70, 0xf9, 0xab, 0x2a, 0xb3, 0xd9, 0xb1, 0x3c, 0xa9, 0x1f, 0x84, 0xb3, + 0xb2, 0xeb, 0xd5, 0x5c, 0x9d, 0xfb, 0xf1, 0xe9, 0x71, 0x36, 0x7c, 0x93, + 0xef, 0x20, 0x3d, 0x46, 0x8e, 0xbe, 0xc7, 0x0e, +}; +static const unsigned char kat3275_entropyinpr1[] = { + 0x6c, 0x09, 0x0c, 0xb8, 0xde, 0xbf, 0xb3, 0x23, 0xbd, 0xda, 0xda, 0x16, + 0x46, 0x9c, 0x38, 0xb7, 0x5e, 0xd0, 0xb0, 0x75, 0x67, 0x32, 0x58, 0x4b, +}; +static const unsigned char kat3275_addinpr1[] = {0}; +static const unsigned char kat3275_entropyinpr2[] = { + 0xc6, 0x0d, 0x6a, 0xb3, 0xa7, 0x1f, 0x7d, 0x48, 0xfc, 0x4d, 0x5a, 0x91, + 0x17, 0x6e, 0xa8, 0x64, 0xf0, 0x33, 0x51, 0xa8, 0xfd, 0x4b, 0x1f, 0x4d, +}; +static const unsigned char kat3275_addinpr2[] = {0}; +static const unsigned char kat3275_retbits[] = { + 0x1a, 0xa9, 0x74, 0xf5, 0x64, 0xab, 0x2b, 0x58, 0xb9, 0x28, 0xd4, 0x41, + 0x08, 0xe9, 0x29, 0x4d, 0x48, 0xad, 0xa9, 0x84, 0x31, 0x61, 0x0a, 0x7e, + 0x57, 0xc6, 0xdd, 0xbc, 0xd9, 0x42, 0x3d, 0x96, 0x56, 0xed, 0x09, 0x69, + 0x58, 0x32, 0xd4, 0xaa, 0xae, 0x6b, 0x01, 0xba, 0x60, 0x9a, 0xbf, 0x46, + 0xbf, 0x5c, 0x22, 0xb1, 0x8d, 0xe0, 0x13, 0x88, 0x82, 0x84, 0x2a, 0x77, + 0x53, 0x9a, 0xdc, 0x6f, +}; +static const struct drbg_kat_pr_true kat3275_t = { + 4, kat3275_entropyin, kat3275_nonce, kat3275_persstr, + kat3275_entropyinpr1, kat3275_addinpr1, kat3275_entropyinpr2, + kat3275_addinpr2, kat3275_retbits +}; +static const struct drbg_kat kat3275 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3275_t +}; + +static const unsigned char kat3276_entropyin[] = { + 0xf5, 0xd5, 0xf5, 0xfd, 0x63, 0x80, 0xdb, 0x66, 0x35, 0xe0, 0x10, 0xaa, + 0x60, 0xbe, 0x31, 0x37, 0x4b, 0xe3, 0x5f, 0x30, 0x53, 0x1f, 0x87, 0x82, +}; +static const unsigned char kat3276_nonce[] = { + 0xe6, 0xcd, 0xc1, 0x03, 0x69, 0x9f, 0x16, 0xd2, 0x23, 0x42, 0x68, 0x3e, + 0x9a, 0x4e, 0xd6, 0x78, +}; +static const unsigned char kat3276_persstr[] = { + 0x4a, 0x3c, 0x58, 0xb1, 0x80, 0x2e, 0xd2, 0x1b, 0xee, 0xa8, 0x7d, 0xab, + 0xf3, 0x7a, 0x7f, 0x7d, 0xae, 0xa6, 0xf6, 0x9c, 0xb0, 0x02, 0x7f, 0xea, + 0x1a, 0x7a, 0x76, 0xdf, 0x00, 0xd2, 0xa3, 0x43, +}; +static const unsigned char kat3276_entropyinpr1[] = { + 0xe2, 0xe9, 0x5d, 0xce, 0xba, 0x00, 0xaf, 0xbe, 0xd3, 0xb1, 0x13, 0x76, + 0xb3, 0x2a, 0xa2, 0xc7, 0x0d, 0xa4, 0xed, 0xa3, 0xce, 0xa2, 0x93, 0x39, +}; +static const unsigned char kat3276_addinpr1[] = {0}; +static const unsigned char kat3276_entropyinpr2[] = { + 0x33, 0xa9, 0x04, 0x92, 0x49, 0x7e, 0x57, 0xea, 0x3f, 0x92, 0x6a, 0x73, + 0xb7, 0x4a, 0x12, 0x25, 0xc0, 0x0e, 0x3f, 0x77, 0x49, 0xc3, 0xc0, 0x4c, +}; +static const unsigned char kat3276_addinpr2[] = {0}; +static const unsigned char kat3276_retbits[] = { + 0x09, 0x7e, 0xa7, 0x16, 0x5e, 0x4b, 0x43, 0xf2, 0x16, 0x4d, 0xef, 0x00, + 0x44, 0x8c, 0x3b, 0x9b, 0xeb, 0x4d, 0x61, 0x1f, 0xab, 0x71, 0xf9, 0x01, + 0xaa, 0xea, 0x61, 0xcb, 0x76, 0xf7, 0x88, 0x1d, 0xd9, 0xe7, 0x06, 0x1f, + 0xd1, 0xcb, 0xfd, 0xe0, 0xe5, 0xca, 0x3c, 0x31, 0x3e, 0x0c, 0x24, 0x70, + 0xd0, 0x2f, 0x7a, 0x11, 0xdf, 0x7e, 0x8a, 0xe3, 0xda, 0x4b, 0x4f, 0x39, + 0x53, 0x9a, 0x2b, 0xb2, +}; +static const struct drbg_kat_pr_true kat3276_t = { + 5, kat3276_entropyin, kat3276_nonce, kat3276_persstr, + kat3276_entropyinpr1, kat3276_addinpr1, kat3276_entropyinpr2, + kat3276_addinpr2, kat3276_retbits +}; +static const struct drbg_kat kat3276 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3276_t +}; + +static const unsigned char kat3277_entropyin[] = { + 0xb1, 0x9e, 0x03, 0x7c, 0xb4, 0x28, 0x30, 0x3d, 0x9e, 0xba, 0x53, 0xa4, + 0x92, 0x66, 0x15, 0x31, 0xa6, 0x9b, 0x50, 0x62, 0xbe, 0x81, 0xe5, 0x6b, +}; +static const unsigned char kat3277_nonce[] = { + 0x97, 0x44, 0xba, 0x5f, 0x7b, 0xfa, 0x2c, 0xa9, 0x5b, 0x07, 0x4a, 0x04, + 0xb1, 0xed, 0x4c, 0xab, +}; +static const unsigned char kat3277_persstr[] = { + 0xce, 0x22, 0x46, 0xe4, 0xba, 0x1d, 0xd7, 0xc2, 0xc4, 0x71, 0x6b, 0xb9, + 0xe6, 0x45, 0x19, 0x28, 0xb4, 0xcb, 0x4b, 0xbe, 0x00, 0xbf, 0xa1, 0x75, + 0x5a, 0xd4, 0x70, 0x85, 0xdf, 0x3b, 0x0f, 0xa9, +}; +static const unsigned char kat3277_entropyinpr1[] = { + 0x40, 0xf6, 0xef, 0xc0, 0xbd, 0x66, 0xbf, 0x56, 0x49, 0x32, 0x34, 0x93, + 0xb5, 0x29, 0xc9, 0x8c, 0xf2, 0xa8, 0x12, 0xc4, 0x79, 0x5c, 0xd4, 0x42, +}; +static const unsigned char kat3277_addinpr1[] = {0}; +static const unsigned char kat3277_entropyinpr2[] = { + 0x08, 0x07, 0x39, 0xc7, 0xaf, 0x62, 0xe5, 0x80, 0xab, 0x5f, 0xb9, 0x39, + 0x7b, 0x95, 0x1d, 0x23, 0x60, 0x33, 0x05, 0xf8, 0xf6, 0x5d, 0x1b, 0x01, +}; +static const unsigned char kat3277_addinpr2[] = {0}; +static const unsigned char kat3277_retbits[] = { + 0x71, 0x14, 0x3f, 0xa8, 0xa8, 0x68, 0x3c, 0xb4, 0xb8, 0x46, 0xed, 0xb1, + 0x0d, 0x63, 0xad, 0x4f, 0xa9, 0xb2, 0x1c, 0xce, 0x2f, 0x78, 0x44, 0x21, + 0xd5, 0x15, 0x4e, 0xa6, 0x11, 0x0a, 0x03, 0xd4, 0x68, 0x79, 0x1a, 0x51, + 0x65, 0x62, 0xd1, 0x35, 0x30, 0x73, 0x68, 0x64, 0x5c, 0x48, 0xd1, 0x4f, + 0x95, 0xf7, 0xc9, 0xc6, 0xa3, 0x9c, 0xe5, 0xf7, 0x6b, 0x56, 0xfc, 0x73, + 0x22, 0x71, 0xc2, 0x2f, +}; +static const struct drbg_kat_pr_true kat3277_t = { + 6, kat3277_entropyin, kat3277_nonce, kat3277_persstr, + kat3277_entropyinpr1, kat3277_addinpr1, kat3277_entropyinpr2, + kat3277_addinpr2, kat3277_retbits +}; +static const struct drbg_kat kat3277 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3277_t +}; + +static const unsigned char kat3278_entropyin[] = { + 0xdf, 0xc4, 0x5c, 0x9f, 0x7d, 0x3e, 0x50, 0x99, 0xc7, 0xde, 0x9d, 0x3c, + 0x52, 0x61, 0xc0, 0x50, 0x49, 0xdf, 0xb2, 0x53, 0xf7, 0xc3, 0x3a, 0x81, +}; +static const unsigned char kat3278_nonce[] = { + 0x2c, 0xf2, 0xa2, 0x39, 0x5f, 0x32, 0x95, 0x09, 0x5d, 0x9b, 0xad, 0x0f, + 0xcf, 0xd9, 0x86, 0x19, +}; +static const unsigned char kat3278_persstr[] = { + 0xa1, 0x9a, 0x02, 0x3f, 0xbf, 0xad, 0x56, 0x69, 0x50, 0xbd, 0xf6, 0xea, + 0x53, 0x78, 0x31, 0xad, 0xe3, 0x48, 0xf2, 0x56, 0x5f, 0x45, 0x9a, 0x0f, + 0x1b, 0x6a, 0xdc, 0x0d, 0xae, 0x8d, 0x52, 0x23, +}; +static const unsigned char kat3278_entropyinpr1[] = { + 0xa2, 0xa7, 0x0e, 0xa0, 0x34, 0x84, 0x0b, 0xcc, 0x36, 0xf6, 0x68, 0xee, + 0x81, 0xfd, 0x6b, 0x95, 0x2c, 0x63, 0x72, 0x57, 0x26, 0xe7, 0x5b, 0x04, +}; +static const unsigned char kat3278_addinpr1[] = {0}; +static const unsigned char kat3278_entropyinpr2[] = { + 0x03, 0x41, 0xcd, 0x4a, 0x43, 0x76, 0x50, 0x1f, 0x0d, 0x9b, 0xb4, 0x7a, + 0x02, 0x0a, 0x91, 0x2f, 0xb0, 0x5b, 0x95, 0x67, 0x9b, 0x29, 0x43, 0x6a, +}; +static const unsigned char kat3278_addinpr2[] = {0}; +static const unsigned char kat3278_retbits[] = { + 0xbc, 0x1a, 0x64, 0x46, 0x46, 0x9b, 0xb1, 0xc8, 0x22, 0x5a, 0x1e, 0xff, + 0xb5, 0x76, 0xb5, 0x6f, 0xda, 0x18, 0x9d, 0xee, 0x2b, 0x59, 0x97, 0x08, + 0x1f, 0x74, 0x72, 0x69, 0x2f, 0x05, 0xd4, 0x50, 0x02, 0xd4, 0x34, 0xd2, + 0x93, 0x63, 0x71, 0x65, 0xb6, 0xea, 0x4c, 0x5c, 0x5c, 0x98, 0xad, 0x07, + 0x19, 0xdf, 0x35, 0x35, 0x6d, 0xc0, 0x1b, 0x44, 0x56, 0x4f, 0x40, 0xc9, + 0xb8, 0x43, 0x71, 0x26, +}; +static const struct drbg_kat_pr_true kat3278_t = { + 7, kat3278_entropyin, kat3278_nonce, kat3278_persstr, + kat3278_entropyinpr1, kat3278_addinpr1, kat3278_entropyinpr2, + kat3278_addinpr2, kat3278_retbits +}; +static const struct drbg_kat kat3278 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3278_t +}; + +static const unsigned char kat3279_entropyin[] = { + 0x84, 0x72, 0x86, 0xaf, 0x63, 0x34, 0x13, 0x41, 0x73, 0x33, 0x6e, 0x76, + 0x8f, 0x29, 0x3e, 0x5f, 0xdb, 0x28, 0xd9, 0xf4, 0x6a, 0x66, 0xbb, 0xdd, +}; +static const unsigned char kat3279_nonce[] = { + 0x16, 0x93, 0x37, 0x1b, 0x49, 0xe4, 0xe6, 0x7b, 0xc0, 0xc9, 0xcc, 0xff, + 0xf7, 0xa4, 0xb5, 0x02, +}; +static const unsigned char kat3279_persstr[] = { + 0xdd, 0xa2, 0x3c, 0x77, 0x30, 0x04, 0xb4, 0x6b, 0xbe, 0x2a, 0x0f, 0x88, + 0xd2, 0xa8, 0x91, 0xa1, 0x7e, 0x0f, 0x05, 0xad, 0x12, 0x42, 0x1b, 0x36, + 0x42, 0xe4, 0x30, 0xac, 0xf0, 0xd7, 0x3c, 0xef, +}; +static const unsigned char kat3279_entropyinpr1[] = { + 0xa8, 0x2c, 0xba, 0x0b, 0x17, 0x7f, 0xd6, 0x18, 0x46, 0x3b, 0xc7, 0xcb, + 0xf0, 0x61, 0x9f, 0x48, 0x47, 0x79, 0x64, 0xee, 0x5d, 0x93, 0x09, 0x5d, +}; +static const unsigned char kat3279_addinpr1[] = {0}; +static const unsigned char kat3279_entropyinpr2[] = { + 0xd7, 0x89, 0x2d, 0xcc, 0x82, 0x82, 0xcc, 0x92, 0x07, 0x68, 0x5d, 0x05, + 0xbf, 0x73, 0x0c, 0xbd, 0x83, 0xc7, 0x67, 0x3a, 0x68, 0x82, 0xff, 0x3c, +}; +static const unsigned char kat3279_addinpr2[] = {0}; +static const unsigned char kat3279_retbits[] = { + 0x2f, 0x42, 0x71, 0x39, 0xaa, 0x90, 0xfb, 0x12, 0xf1, 0x27, 0xaa, 0xe6, + 0xce, 0x72, 0x6c, 0x9e, 0x8d, 0xb6, 0xbb, 0x60, 0x7f, 0x4c, 0x22, 0x43, + 0x08, 0x15, 0x73, 0x03, 0xc8, 0xf9, 0xcc, 0x54, 0x54, 0x99, 0x1f, 0x4e, + 0xf1, 0xa4, 0x1c, 0xf1, 0x66, 0x8a, 0x26, 0xec, 0xf5, 0x90, 0x09, 0x33, + 0xe8, 0xe4, 0x77, 0x18, 0xaa, 0xa4, 0x5b, 0xb3, 0x99, 0xa0, 0xe9, 0x5a, + 0x4f, 0xd9, 0x40, 0x87, +}; +static const struct drbg_kat_pr_true kat3279_t = { + 8, kat3279_entropyin, kat3279_nonce, kat3279_persstr, + kat3279_entropyinpr1, kat3279_addinpr1, kat3279_entropyinpr2, + kat3279_addinpr2, kat3279_retbits +}; +static const struct drbg_kat kat3279 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3279_t +}; + +static const unsigned char kat3280_entropyin[] = { + 0x3b, 0x45, 0xba, 0x62, 0x83, 0x4f, 0x1a, 0xab, 0xf5, 0x99, 0xa5, 0xbd, + 0xc7, 0x3d, 0xda, 0x9f, 0x6b, 0x24, 0x86, 0x0e, 0x02, 0x4c, 0x45, 0x0f, +}; +static const unsigned char kat3280_nonce[] = { + 0x87, 0x94, 0x02, 0x14, 0x37, 0x25, 0x69, 0xc0, 0x33, 0xfa, 0xaf, 0xb7, + 0x0f, 0x95, 0x5a, 0x98, +}; +static const unsigned char kat3280_persstr[] = { + 0xc8, 0xe9, 0x0a, 0x16, 0xfe, 0x1c, 0xdb, 0x85, 0xa5, 0x22, 0xd1, 0xba, + 0x8d, 0x81, 0xc7, 0x35, 0xe1, 0x40, 0xd7, 0x1f, 0x0f, 0x1e, 0xad, 0x65, + 0xe6, 0x1d, 0xb2, 0x31, 0x8a, 0x7c, 0xd3, 0x6c, +}; +static const unsigned char kat3280_entropyinpr1[] = { + 0xfb, 0x08, 0xa8, 0xf8, 0x20, 0x65, 0x9d, 0xe3, 0xc3, 0x78, 0x45, 0x10, + 0xd1, 0xa9, 0xc1, 0x51, 0xfb, 0xa6, 0xe1, 0x4d, 0xe7, 0x54, 0xd8, 0x2b, +}; +static const unsigned char kat3280_addinpr1[] = {0}; +static const unsigned char kat3280_entropyinpr2[] = { + 0x0b, 0x47, 0xe9, 0x28, 0x0b, 0xd5, 0x63, 0x9c, 0x39, 0x4d, 0x18, 0x26, + 0x50, 0x35, 0x9d, 0x9b, 0xb5, 0xc9, 0xa8, 0x6f, 0xf0, 0x8b, 0xbf, 0xd5, +}; +static const unsigned char kat3280_addinpr2[] = {0}; +static const unsigned char kat3280_retbits[] = { + 0x5d, 0xd8, 0x49, 0xe1, 0xd5, 0x57, 0x4a, 0x93, 0x57, 0x0f, 0x05, 0x58, + 0x9a, 0x03, 0x07, 0xf7, 0xf1, 0xc7, 0xbf, 0x8f, 0xf3, 0xe8, 0x6e, 0x02, + 0x6a, 0x85, 0xbc, 0x88, 0xaa, 0x10, 0xf2, 0x1d, 0x7a, 0xfd, 0xf6, 0x0e, + 0x9f, 0x45, 0xcd, 0x6a, 0xfd, 0x6e, 0xcc, 0x34, 0xd1, 0xe5, 0x54, 0x32, + 0x83, 0x98, 0x44, 0x98, 0x72, 0x0f, 0x6c, 0x73, 0xb0, 0x37, 0x6e, 0x25, + 0x12, 0x3f, 0xcd, 0xe3, +}; +static const struct drbg_kat_pr_true kat3280_t = { + 9, kat3280_entropyin, kat3280_nonce, kat3280_persstr, + kat3280_entropyinpr1, kat3280_addinpr1, kat3280_entropyinpr2, + kat3280_addinpr2, kat3280_retbits +}; +static const struct drbg_kat kat3280 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3280_t +}; + +static const unsigned char kat3281_entropyin[] = { + 0xc6, 0x8e, 0x25, 0x57, 0xaa, 0x50, 0xdc, 0xfd, 0x10, 0xf3, 0xde, 0xa4, + 0xcb, 0xa2, 0x3e, 0x11, 0xe0, 0x41, 0x5e, 0x32, 0xcd, 0xed, 0x6a, 0x6b, +}; +static const unsigned char kat3281_nonce[] = { + 0x67, 0x0c, 0x96, 0x0e, 0xea, 0xad, 0x33, 0x1a, 0x21, 0x21, 0x89, 0xe6, + 0xb5, 0xe0, 0xdf, 0xa8, +}; +static const unsigned char kat3281_persstr[] = { + 0xfd, 0x11, 0xd1, 0x15, 0xad, 0x41, 0xb9, 0xa8, 0x3e, 0xfe, 0x71, 0x24, + 0x40, 0xd1, 0xa6, 0x2b, 0x1b, 0xa6, 0x53, 0x96, 0xd8, 0xbf, 0xfe, 0x19, + 0x7b, 0x00, 0xc3, 0x69, 0xf2, 0x94, 0x69, 0x6e, +}; +static const unsigned char kat3281_entropyinpr1[] = { + 0xa4, 0x5e, 0x0f, 0x78, 0xb7, 0xfe, 0xf9, 0x40, 0xc7, 0x6f, 0x9c, 0x3a, + 0x59, 0x4c, 0x34, 0x1a, 0xce, 0x3c, 0x43, 0x01, 0xf5, 0x69, 0xa2, 0x82, +}; +static const unsigned char kat3281_addinpr1[] = {0}; +static const unsigned char kat3281_entropyinpr2[] = { + 0x8c, 0x2f, 0x45, 0xc9, 0x77, 0x38, 0x4d, 0xa6, 0x6a, 0xa8, 0xeb, 0xf5, + 0xaa, 0xd9, 0x12, 0xb8, 0xe1, 0x1e, 0x0f, 0xa4, 0xb8, 0xda, 0x31, 0x2d, +}; +static const unsigned char kat3281_addinpr2[] = {0}; +static const unsigned char kat3281_retbits[] = { + 0xa1, 0xad, 0x8c, 0x27, 0x83, 0x65, 0x39, 0xfb, 0x66, 0x8d, 0x26, 0x0e, + 0x71, 0x90, 0x48, 0xda, 0xcf, 0x7f, 0xd8, 0x42, 0x09, 0x31, 0xe8, 0x9d, + 0x66, 0x39, 0x0d, 0xd5, 0xb5, 0xc9, 0x52, 0x3a, 0x51, 0x10, 0x21, 0x69, + 0x6e, 0x9a, 0xd0, 0x62, 0x19, 0xda, 0xd2, 0x61, 0x56, 0xf4, 0xd3, 0x18, + 0xf5, 0x59, 0xf2, 0xc4, 0x0f, 0x72, 0x7d, 0x4f, 0xdd, 0x93, 0xea, 0x38, + 0xd9, 0x5b, 0xb7, 0xfb, +}; +static const struct drbg_kat_pr_true kat3281_t = { + 10, kat3281_entropyin, kat3281_nonce, kat3281_persstr, + kat3281_entropyinpr1, kat3281_addinpr1, kat3281_entropyinpr2, + kat3281_addinpr2, kat3281_retbits +}; +static const struct drbg_kat kat3281 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3281_t +}; + +static const unsigned char kat3282_entropyin[] = { + 0x5c, 0x40, 0x93, 0xa2, 0x20, 0xe4, 0xc4, 0x21, 0xb9, 0x56, 0x58, 0x86, + 0xc4, 0xcc, 0x22, 0x6c, 0xcb, 0xf1, 0x8d, 0x3e, 0x5c, 0x5e, 0xd4, 0x2d, +}; +static const unsigned char kat3282_nonce[] = { + 0x66, 0x94, 0x3d, 0x61, 0x4e, 0xc9, 0xa4, 0x01, 0xee, 0x38, 0x94, 0xa4, + 0x27, 0x88, 0x96, 0xca, +}; +static const unsigned char kat3282_persstr[] = { + 0x3e, 0x6d, 0xd0, 0x41, 0x12, 0x84, 0x38, 0xa2, 0x66, 0xda, 0x29, 0xf5, + 0xca, 0x66, 0xf3, 0x87, 0x89, 0x45, 0x23, 0xdc, 0x7f, 0x30, 0x63, 0xc7, + 0x75, 0xd5, 0xaf, 0x40, 0xa8, 0xa6, 0x87, 0x69, +}; +static const unsigned char kat3282_entropyinpr1[] = { + 0xf2, 0x0a, 0x83, 0xcf, 0xec, 0x42, 0xc8, 0xa3, 0xb5, 0x84, 0xa8, 0x34, + 0xbe, 0x7d, 0x6b, 0xdf, 0x3c, 0x89, 0x0a, 0x39, 0x98, 0xda, 0x22, 0x0b, +}; +static const unsigned char kat3282_addinpr1[] = {0}; +static const unsigned char kat3282_entropyinpr2[] = { + 0x43, 0xef, 0x2a, 0xed, 0xd2, 0xf6, 0x65, 0xf1, 0x78, 0x42, 0xa1, 0x2a, + 0x1c, 0x2d, 0xbb, 0x0d, 0xba, 0x2e, 0xa9, 0x88, 0xfa, 0xd3, 0xd4, 0x40, +}; +static const unsigned char kat3282_addinpr2[] = {0}; +static const unsigned char kat3282_retbits[] = { + 0x53, 0x15, 0x1c, 0xe9, 0x40, 0xc2, 0x81, 0xaf, 0x83, 0x64, 0x93, 0x89, + 0x59, 0x90, 0xa3, 0x65, 0x1d, 0xc1, 0xb2, 0x8d, 0x45, 0x96, 0xbc, 0xde, + 0xbe, 0x0b, 0x5d, 0xcd, 0xc9, 0x32, 0x4f, 0x2f, 0x58, 0x53, 0x0d, 0xd3, + 0xea, 0x48, 0xf0, 0x2a, 0x26, 0x3e, 0xe3, 0x6b, 0x86, 0xac, 0xa8, 0x98, + 0x6e, 0x90, 0x05, 0x89, 0xd9, 0xed, 0x2f, 0x8f, 0x2f, 0xea, 0x98, 0x7b, + 0x6b, 0x08, 0xbf, 0x00, +}; +static const struct drbg_kat_pr_true kat3282_t = { + 11, kat3282_entropyin, kat3282_nonce, kat3282_persstr, + kat3282_entropyinpr1, kat3282_addinpr1, kat3282_entropyinpr2, + kat3282_addinpr2, kat3282_retbits +}; +static const struct drbg_kat kat3282 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3282_t +}; + +static const unsigned char kat3283_entropyin[] = { + 0xb1, 0x07, 0x4c, 0xa2, 0xb2, 0x20, 0x03, 0xe3, 0x19, 0x25, 0xa5, 0x4b, + 0xba, 0xf3, 0xc1, 0x8e, 0xa9, 0x79, 0x58, 0x73, 0x4f, 0xf7, 0x25, 0x6e, +}; +static const unsigned char kat3283_nonce[] = { + 0xac, 0xb5, 0x89, 0xa2, 0xdf, 0x45, 0x32, 0xfc, 0x97, 0xe6, 0x4b, 0x43, + 0xeb, 0x9f, 0x91, 0x54, +}; +static const unsigned char kat3283_persstr[] = { + 0xe9, 0x92, 0x8b, 0x8a, 0xe0, 0x07, 0xf1, 0xc1, 0x57, 0x5a, 0xab, 0x97, + 0x23, 0xca, 0xd0, 0xaf, 0x83, 0xd5, 0xd4, 0xce, 0xe3, 0x06, 0xde, 0x44, + 0x7b, 0x50, 0x95, 0xa2, 0x12, 0x74, 0xdb, 0x6d, +}; +static const unsigned char kat3283_entropyinpr1[] = { + 0x73, 0x2d, 0x0d, 0x31, 0x37, 0xfb, 0xc8, 0x6b, 0x6e, 0xb1, 0xfd, 0x51, + 0x0b, 0x3d, 0x2d, 0x63, 0x71, 0xfe, 0xc3, 0xa3, 0x4f, 0x49, 0xae, 0x67, +}; +static const unsigned char kat3283_addinpr1[] = {0}; +static const unsigned char kat3283_entropyinpr2[] = { + 0x2f, 0x5a, 0xef, 0xcd, 0x00, 0x09, 0xa1, 0xc9, 0x76, 0x44, 0x8a, 0x25, + 0xda, 0x51, 0x48, 0xc7, 0x70, 0xac, 0xaa, 0x74, 0x2d, 0x05, 0xcb, 0x1c, +}; +static const unsigned char kat3283_addinpr2[] = {0}; +static const unsigned char kat3283_retbits[] = { + 0xf2, 0xe8, 0x4b, 0x27, 0x1e, 0x88, 0xb2, 0x7b, 0xd2, 0xd7, 0xc1, 0xd9, + 0x66, 0x11, 0x54, 0xfc, 0x21, 0x67, 0xdc, 0x29, 0xae, 0xea, 0xeb, 0x71, + 0xb8, 0x3c, 0x09, 0xc0, 0xca, 0x65, 0xc0, 0xdd, 0x86, 0xe7, 0x96, 0x16, + 0x63, 0x7f, 0x12, 0x2a, 0xc7, 0x7d, 0x4c, 0xd5, 0x79, 0xda, 0xaf, 0xdd, + 0x0e, 0xad, 0x71, 0x94, 0xcc, 0x3a, 0xab, 0x90, 0xfb, 0xb3, 0x2a, 0xc6, + 0x52, 0x48, 0x84, 0x83, +}; +static const struct drbg_kat_pr_true kat3283_t = { + 12, kat3283_entropyin, kat3283_nonce, kat3283_persstr, + kat3283_entropyinpr1, kat3283_addinpr1, kat3283_entropyinpr2, + kat3283_addinpr2, kat3283_retbits +}; +static const struct drbg_kat kat3283 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3283_t +}; + +static const unsigned char kat3284_entropyin[] = { + 0x6d, 0x10, 0x03, 0x75, 0x5e, 0xf6, 0x6e, 0x7c, 0xa5, 0x07, 0x29, 0x6a, + 0x49, 0xc2, 0x9e, 0x63, 0xa0, 0xc8, 0x9e, 0x9e, 0xdb, 0xf3, 0x39, 0xc5, +}; +static const unsigned char kat3284_nonce[] = { + 0x91, 0x77, 0x98, 0x84, 0x9e, 0xf0, 0xba, 0xe4, 0xfb, 0x48, 0x20, 0x20, + 0x67, 0x70, 0x17, 0xbd, +}; +static const unsigned char kat3284_persstr[] = { + 0x50, 0x7a, 0x71, 0x49, 0xc6, 0x4e, 0xf8, 0xe3, 0xef, 0xf9, 0x71, 0x8b, + 0x30, 0x6a, 0xba, 0xae, 0x9f, 0x8b, 0xb2, 0x08, 0xfb, 0x0d, 0x18, 0x7b, + 0x3b, 0x94, 0x4b, 0xd4, 0x10, 0xd2, 0x3f, 0x96, +}; +static const unsigned char kat3284_entropyinpr1[] = { + 0x22, 0xd8, 0xc9, 0x94, 0x29, 0x8c, 0x23, 0x68, 0xe8, 0x6e, 0x91, 0xd3, + 0x9e, 0xf8, 0x35, 0x82, 0xd0, 0x59, 0x64, 0xeb, 0x9c, 0x16, 0xee, 0x5d, +}; +static const unsigned char kat3284_addinpr1[] = {0}; +static const unsigned char kat3284_entropyinpr2[] = { + 0xce, 0xb3, 0xdc, 0xd6, 0xc6, 0xb9, 0xfa, 0xfd, 0xcb, 0x6b, 0x1d, 0xc9, + 0xa1, 0x89, 0x5b, 0x1b, 0x54, 0x00, 0xea, 0x7e, 0x17, 0x23, 0xfe, 0xaf, +}; +static const unsigned char kat3284_addinpr2[] = {0}; +static const unsigned char kat3284_retbits[] = { + 0xd8, 0x6b, 0xc2, 0xe8, 0x5f, 0x4a, 0xd0, 0x7e, 0x1d, 0xc1, 0x55, 0x8c, + 0x8f, 0xcb, 0xf0, 0x12, 0xa8, 0xec, 0xeb, 0x4e, 0x33, 0x5a, 0xe0, 0x3a, + 0x56, 0xdf, 0x75, 0x80, 0xa1, 0x7c, 0xf4, 0x1a, 0x2c, 0xd1, 0x54, 0xd0, + 0x33, 0x67, 0x43, 0x8b, 0x7a, 0xae, 0x00, 0x79, 0x88, 0x89, 0x9e, 0x94, + 0x26, 0xc1, 0x71, 0x01, 0x5f, 0x6e, 0x63, 0x0c, 0xa7, 0xe7, 0x2c, 0x14, + 0x62, 0x07, 0x66, 0xe8, +}; +static const struct drbg_kat_pr_true kat3284_t = { + 13, kat3284_entropyin, kat3284_nonce, kat3284_persstr, + kat3284_entropyinpr1, kat3284_addinpr1, kat3284_entropyinpr2, + kat3284_addinpr2, kat3284_retbits +}; +static const struct drbg_kat kat3284 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3284_t +}; + +static const unsigned char kat3285_entropyin[] = { + 0x6d, 0xdd, 0x09, 0x4c, 0xbe, 0x5c, 0x5e, 0x53, 0xb6, 0x30, 0x72, 0xbe, + 0x3f, 0xb9, 0xac, 0xc2, 0xde, 0x5c, 0x92, 0xee, 0x53, 0x38, 0x75, 0x2f, +}; +static const unsigned char kat3285_nonce[] = { + 0x47, 0x58, 0x54, 0x2a, 0x2f, 0xfc, 0x8c, 0x7c, 0x68, 0x72, 0xea, 0xc0, + 0x98, 0xb3, 0xd9, 0xdc, +}; +static const unsigned char kat3285_persstr[] = { + 0x88, 0xec, 0x6c, 0x87, 0xc3, 0x37, 0x4b, 0xf2, 0x26, 0xa9, 0xe8, 0x4b, + 0x70, 0x7c, 0x24, 0x8d, 0x1b, 0xfa, 0xea, 0xe7, 0xd3, 0x21, 0x7e, 0x43, + 0x98, 0xfc, 0xcf, 0x4d, 0x57, 0x68, 0xd8, 0xd5, +}; +static const unsigned char kat3285_entropyinpr1[] = { + 0x22, 0x1d, 0xac, 0xa8, 0x41, 0x6e, 0xb1, 0xad, 0x4f, 0x1e, 0x30, 0x2e, + 0x7b, 0x97, 0x42, 0xc9, 0x30, 0x8b, 0xdf, 0xe2, 0x9a, 0xdf, 0x0b, 0x66, +}; +static const unsigned char kat3285_addinpr1[] = {0}; +static const unsigned char kat3285_entropyinpr2[] = { + 0x58, 0xb0, 0xa7, 0x82, 0x8c, 0x20, 0x55, 0xbf, 0xc8, 0xb4, 0x95, 0x6e, + 0xea, 0xf4, 0xe5, 0x08, 0x5f, 0x4c, 0x45, 0xbb, 0x19, 0x41, 0x62, 0xf4, +}; +static const unsigned char kat3285_addinpr2[] = {0}; +static const unsigned char kat3285_retbits[] = { + 0x0a, 0x06, 0x83, 0xf5, 0x1b, 0x1e, 0x6c, 0x52, 0x2d, 0x43, 0x61, 0x28, + 0xe4, 0xcc, 0x83, 0x68, 0x32, 0x8e, 0xca, 0xd4, 0x30, 0xea, 0x04, 0xfd, + 0x7b, 0x33, 0xf5, 0xac, 0xda, 0xd9, 0x0e, 0x9f, 0x30, 0x8d, 0x09, 0x5b, + 0x06, 0x8d, 0x58, 0x2d, 0xf5, 0x92, 0x7a, 0x61, 0x6a, 0x5a, 0xa6, 0x0d, + 0x10, 0x96, 0x82, 0x74, 0xed, 0xad, 0xab, 0xa3, 0x95, 0xcd, 0xd9, 0x3f, + 0xde, 0x50, 0xed, 0x58, +}; +static const struct drbg_kat_pr_true kat3285_t = { + 14, kat3285_entropyin, kat3285_nonce, kat3285_persstr, + kat3285_entropyinpr1, kat3285_addinpr1, kat3285_entropyinpr2, + kat3285_addinpr2, kat3285_retbits +}; +static const struct drbg_kat kat3285 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3285_t +}; + +static const unsigned char kat3286_entropyin[] = { + 0x33, 0x68, 0x42, 0x1d, 0x98, 0x5f, 0x7c, 0x82, 0x4c, 0x19, 0x0a, 0x09, + 0x26, 0x0e, 0x11, 0x6d, 0x39, 0x0d, 0x08, 0x4b, 0xc7, 0xf1, 0x96, 0x35, +}; +static const unsigned char kat3286_nonce[] = { + 0xfe, 0x4c, 0x5e, 0xf9, 0x54, 0xe3, 0x90, 0x3f, 0x00, 0x6e, 0xa5, 0x23, + 0x31, 0xb7, 0x6b, 0xdb, +}; +static const unsigned char kat3286_persstr[] = { + 0x25, 0x07, 0xc6, 0xd4, 0x64, 0xa4, 0x72, 0xf1, 0xb7, 0x4b, 0x30, 0xb3, + 0xd9, 0xf0, 0x28, 0x68, 0x24, 0x9e, 0x85, 0x09, 0x44, 0x37, 0xf4, 0x9c, + 0x7d, 0xac, 0xed, 0xd2, 0x83, 0x1b, 0x39, 0xc9, +}; +static const unsigned char kat3286_entropyinpr1[] = { + 0xf4, 0x8e, 0x13, 0xc1, 0x7e, 0xc4, 0x5d, 0xe1, 0x49, 0x99, 0x8e, 0xd2, + 0xb6, 0x01, 0xa1, 0x8c, 0x3e, 0x39, 0x46, 0x96, 0x78, 0x13, 0xb4, 0xec, +}; +static const unsigned char kat3286_addinpr1[] = { + 0x93, 0xbf, 0x05, 0x95, 0x4c, 0x98, 0xac, 0xca, 0xd2, 0x55, 0x96, 0x84, + 0x40, 0x41, 0x91, 0x3b, 0x36, 0x25, 0x93, 0x0a, 0x24, 0x14, 0xe0, 0x46, + 0xc0, 0x34, 0xe6, 0xfe, 0x40, 0xd0, 0x39, 0x64, +}; +static const unsigned char kat3286_entropyinpr2[] = { + 0x78, 0x07, 0x75, 0x4a, 0x89, 0x85, 0xce, 0x95, 0x01, 0x21, 0x0a, 0xec, + 0x6b, 0x98, 0xf7, 0x56, 0x5b, 0x73, 0xf6, 0x8f, 0x23, 0xa2, 0xd4, 0xa9, +}; +static const unsigned char kat3286_addinpr2[] = { + 0x81, 0x58, 0x68, 0xad, 0x1e, 0xff, 0x3c, 0x1f, 0x89, 0x62, 0xc6, 0x14, + 0x2d, 0xf8, 0x03, 0x7a, 0x47, 0xf7, 0x4b, 0xfc, 0x95, 0x7b, 0x33, 0x7f, + 0xde, 0xc8, 0x89, 0x90, 0x38, 0x7c, 0x14, 0xf3, +}; +static const unsigned char kat3286_retbits[] = { + 0xab, 0x55, 0x79, 0x7e, 0x73, 0xb1, 0xcc, 0x1a, 0x5e, 0x3c, 0x66, 0x42, + 0xe0, 0x7f, 0x49, 0x51, 0x61, 0x82, 0xde, 0xf7, 0x81, 0x89, 0xc4, 0x1b, + 0x4d, 0x7b, 0x44, 0x3c, 0x5a, 0x48, 0x2e, 0x8b, 0x6c, 0xd9, 0xf2, 0xf4, + 0x28, 0xe8, 0x4a, 0x09, 0xbb, 0xea, 0x63, 0xb3, 0x8a, 0x63, 0x0d, 0xe7, + 0x3c, 0x84, 0x0b, 0x8e, 0x91, 0x93, 0x72, 0x8e, 0xa2, 0x83, 0x67, 0x8e, + 0xc4, 0xeb, 0xd6, 0xf3, +}; +static const struct drbg_kat_pr_true kat3286_t = { + 0, kat3286_entropyin, kat3286_nonce, kat3286_persstr, + kat3286_entropyinpr1, kat3286_addinpr1, kat3286_entropyinpr2, + kat3286_addinpr2, kat3286_retbits +}; +static const struct drbg_kat kat3286 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3286_t +}; + +static const unsigned char kat3287_entropyin[] = { + 0x09, 0xe2, 0xf3, 0x05, 0xe6, 0xb0, 0xff, 0xed, 0xa1, 0x88, 0x9e, 0x15, + 0x8a, 0x1c, 0x00, 0xc3, 0xa9, 0x7c, 0x53, 0xf5, 0x5c, 0x99, 0x91, 0xe5, +}; +static const unsigned char kat3287_nonce[] = { + 0xaf, 0x1e, 0xf9, 0x44, 0x38, 0x89, 0x64, 0xa8, 0xbc, 0x96, 0xdf, 0x4a, + 0x26, 0x3b, 0xcd, 0x97, +}; +static const unsigned char kat3287_persstr[] = { + 0xe2, 0xcc, 0x91, 0x93, 0xf3, 0xd9, 0xe6, 0x63, 0x12, 0xe4, 0xc7, 0x06, + 0x00, 0x73, 0x08, 0xf8, 0xfc, 0x33, 0xc4, 0x8f, 0xe0, 0x00, 0x89, 0x22, + 0xf2, 0x98, 0x68, 0x48, 0xd1, 0xab, 0xbd, 0x81, +}; +static const unsigned char kat3287_entropyinpr1[] = { + 0x99, 0x87, 0xe1, 0x07, 0xbb, 0x04, 0x29, 0x37, 0xef, 0x1a, 0x43, 0x7c, + 0x6f, 0x42, 0xe7, 0x6d, 0xea, 0x85, 0xbc, 0xb3, 0x79, 0x67, 0x15, 0x1c, +}; +static const unsigned char kat3287_addinpr1[] = { + 0xf9, 0x07, 0x7f, 0xf2, 0x65, 0x9d, 0xf4, 0x56, 0x41, 0xaa, 0x1f, 0x07, + 0xdc, 0x62, 0x48, 0x06, 0x4e, 0xc4, 0xf3, 0x0d, 0xa1, 0xb7, 0x4d, 0x2a, + 0x73, 0xd2, 0xdc, 0xf4, 0x4a, 0x71, 0x95, 0xb3, +}; +static const unsigned char kat3287_entropyinpr2[] = { + 0xe9, 0x4a, 0xed, 0x66, 0x4f, 0x8d, 0x0d, 0xe1, 0x1c, 0x9a, 0x27, 0x02, + 0x5a, 0xef, 0xf2, 0x6d, 0x7b, 0x30, 0x37, 0x56, 0xe3, 0x7d, 0x0b, 0x29, +}; +static const unsigned char kat3287_addinpr2[] = { + 0xd6, 0xb5, 0xca, 0x0a, 0x5a, 0x6a, 0xab, 0x8b, 0xfa, 0xb8, 0x00, 0x4a, + 0xce, 0x82, 0x7a, 0xb0, 0x61, 0xd8, 0x5a, 0xae, 0x31, 0x95, 0xc0, 0x76, + 0xe5, 0xfc, 0x6c, 0x2c, 0xe8, 0x82, 0xd4, 0xbe, +}; +static const unsigned char kat3287_retbits[] = { + 0x36, 0x98, 0xb7, 0x54, 0xac, 0x77, 0x84, 0x0b, 0x00, 0x86, 0x15, 0x0a, + 0x0d, 0xa1, 0x72, 0x30, 0xe9, 0x40, 0xae, 0x95, 0x6e, 0x85, 0xdb, 0x64, + 0xa1, 0x3f, 0x08, 0xc0, 0xb8, 0x05, 0x57, 0xf9, 0x57, 0xd4, 0x55, 0x2a, + 0x90, 0x73, 0x9c, 0x8d, 0x1f, 0xcb, 0x48, 0x49, 0x14, 0x61, 0x2f, 0x8c, + 0x43, 0x8c, 0xec, 0xbc, 0xdc, 0xb2, 0x1e, 0x61, 0x9a, 0x9b, 0xb6, 0x6d, + 0x00, 0xb1, 0xac, 0xca, +}; +static const struct drbg_kat_pr_true kat3287_t = { + 1, kat3287_entropyin, kat3287_nonce, kat3287_persstr, + kat3287_entropyinpr1, kat3287_addinpr1, kat3287_entropyinpr2, + kat3287_addinpr2, kat3287_retbits +}; +static const struct drbg_kat kat3287 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3287_t +}; + +static const unsigned char kat3288_entropyin[] = { + 0xac, 0xf0, 0x15, 0xc0, 0xc8, 0xed, 0x60, 0x33, 0x0c, 0x81, 0xc8, 0xdb, + 0x62, 0xa5, 0xb4, 0x98, 0x34, 0x4a, 0x35, 0xcb, 0xac, 0x60, 0x29, 0x34, +}; +static const unsigned char kat3288_nonce[] = { + 0x21, 0x4e, 0x49, 0x49, 0xe5, 0x97, 0x9c, 0x7a, 0x97, 0xc9, 0x39, 0x97, + 0xf8, 0x6e, 0xb9, 0x4e, +}; +static const unsigned char kat3288_persstr[] = { + 0x5c, 0x95, 0xff, 0xa0, 0x2c, 0xa7, 0x2d, 0x74, 0x0b, 0x0e, 0x1a, 0xe6, + 0xb5, 0x79, 0x5f, 0xc3, 0x62, 0x06, 0x51, 0x99, 0x0d, 0x53, 0x0e, 0x02, + 0x03, 0x30, 0x6a, 0x41, 0x9e, 0x48, 0x66, 0x04, +}; +static const unsigned char kat3288_entropyinpr1[] = { + 0xc7, 0x5d, 0x26, 0x37, 0x2e, 0x35, 0x81, 0xce, 0xc0, 0x13, 0x3c, 0x8b, + 0x78, 0x01, 0x42, 0x8e, 0x03, 0xb4, 0x8e, 0xc0, 0x3a, 0x5d, 0x44, 0xd0, +}; +static const unsigned char kat3288_addinpr1[] = { + 0x55, 0x59, 0x41, 0xbf, 0x3e, 0x97, 0x7d, 0x2d, 0x14, 0xb3, 0xf3, 0x70, + 0x52, 0x7a, 0xe0, 0xc6, 0x47, 0x62, 0xd7, 0xba, 0x57, 0x9b, 0x07, 0xfe, + 0x1b, 0x04, 0x18, 0xda, 0xec, 0xb2, 0x99, 0x4b, +}; +static const unsigned char kat3288_entropyinpr2[] = { + 0x95, 0x0e, 0xfb, 0x8a, 0xd7, 0xef, 0xd2, 0x6a, 0x9e, 0x98, 0x61, 0x09, + 0x34, 0x56, 0xf3, 0x82, 0x77, 0xff, 0x49, 0xe3, 0xf8, 0xff, 0xa6, 0x4b, +}; +static const unsigned char kat3288_addinpr2[] = { + 0x73, 0x8b, 0x3b, 0xb3, 0xd7, 0x50, 0xda, 0xd9, 0x9a, 0x30, 0xdb, 0x3e, + 0xa4, 0xba, 0x32, 0x62, 0xad, 0xd3, 0xd7, 0x77, 0xf4, 0x50, 0xf2, 0x25, + 0x79, 0xe0, 0x47, 0xae, 0xfa, 0x11, 0xa0, 0xc0, +}; +static const unsigned char kat3288_retbits[] = { + 0x81, 0x9b, 0xda, 0x49, 0x78, 0x5e, 0x3a, 0xeb, 0xda, 0xc4, 0xdf, 0xf5, + 0x36, 0x8b, 0x67, 0xec, 0x9f, 0x01, 0x87, 0x4a, 0x98, 0xe8, 0x5d, 0x6b, + 0xbd, 0x39, 0xb3, 0x61, 0x24, 0x00, 0x23, 0xe2, 0x80, 0x5d, 0x8a, 0xef, + 0x93, 0x76, 0xf3, 0x8f, 0xd9, 0x2a, 0xda, 0x43, 0xe3, 0x87, 0x38, 0xec, + 0x6b, 0xf1, 0x15, 0xf2, 0xf5, 0x93, 0xe8, 0x33, 0xf4, 0x90, 0xa0, 0xe0, + 0x43, 0x7b, 0x07, 0xd6, +}; +static const struct drbg_kat_pr_true kat3288_t = { + 2, kat3288_entropyin, kat3288_nonce, kat3288_persstr, + kat3288_entropyinpr1, kat3288_addinpr1, kat3288_entropyinpr2, + kat3288_addinpr2, kat3288_retbits +}; +static const struct drbg_kat kat3288 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3288_t +}; + +static const unsigned char kat3289_entropyin[] = { + 0x08, 0xa2, 0xc0, 0xb7, 0xee, 0xf6, 0x9f, 0xf3, 0xd0, 0x54, 0xbe, 0xa1, + 0x12, 0x02, 0x96, 0xeb, 0xff, 0xba, 0x74, 0x8a, 0x48, 0x86, 0xfa, 0x4d, +}; +static const unsigned char kat3289_nonce[] = { + 0x07, 0x6f, 0xf8, 0xe4, 0xe0, 0xa3, 0x75, 0x85, 0x04, 0xc2, 0x68, 0xd4, + 0x5f, 0x2d, 0xad, 0x1a, +}; +static const unsigned char kat3289_persstr[] = { + 0x65, 0x18, 0xe9, 0x4f, 0x40, 0xcd, 0x4a, 0x38, 0x89, 0xde, 0xdd, 0x5d, + 0xd4, 0x1b, 0xf4, 0x09, 0xcf, 0x1a, 0x4a, 0xb3, 0x97, 0xa9, 0xf1, 0x8a, + 0xfc, 0x37, 0x23, 0x09, 0x2a, 0x4e, 0xed, 0x0b, +}; +static const unsigned char kat3289_entropyinpr1[] = { + 0x04, 0x9e, 0x00, 0x04, 0xfa, 0x74, 0xa2, 0xa9, 0x16, 0xde, 0xe5, 0xf9, + 0xcf, 0x16, 0x0b, 0x3c, 0x32, 0x7c, 0x71, 0x8d, 0x49, 0x64, 0xff, 0x0a, +}; +static const unsigned char kat3289_addinpr1[] = { + 0xc8, 0xfe, 0xbb, 0xd0, 0x82, 0x32, 0xfb, 0xac, 0xd4, 0xb4, 0x8a, 0x5c, + 0xea, 0xa9, 0xe0, 0x56, 0x98, 0xc8, 0x9e, 0x12, 0xc5, 0xe8, 0x7b, 0xa1, + 0x4b, 0x9c, 0xb7, 0x5e, 0x60, 0x6a, 0x8a, 0x81, +}; +static const unsigned char kat3289_entropyinpr2[] = { + 0x4b, 0x06, 0x0d, 0x85, 0x63, 0xc6, 0xfb, 0x96, 0x41, 0x90, 0x8f, 0xa4, + 0x27, 0xf9, 0x23, 0xbb, 0xfc, 0x1a, 0x77, 0xb1, 0x69, 0x00, 0x4f, 0xcb, +}; +static const unsigned char kat3289_addinpr2[] = { + 0xa4, 0xd6, 0xba, 0x1f, 0x88, 0xa2, 0xe1, 0x8f, 0x2c, 0x85, 0x9d, 0x00, + 0x3f, 0xa6, 0xf1, 0x0c, 0x05, 0xee, 0x91, 0xe0, 0x9c, 0x5c, 0x30, 0x23, + 0x29, 0xb8, 0xe2, 0x91, 0x18, 0x90, 0x4c, 0xb0, +}; +static const unsigned char kat3289_retbits[] = { + 0x84, 0x5e, 0xe6, 0x33, 0x6b, 0xf6, 0x9d, 0x28, 0xff, 0x1c, 0x5b, 0x1c, + 0x15, 0x5c, 0x28, 0x30, 0xf1, 0x6b, 0xc6, 0x3b, 0xaa, 0xec, 0x02, 0xa1, + 0xb1, 0xd8, 0x95, 0x22, 0x27, 0xdf, 0xa7, 0x2e, 0xdb, 0x37, 0x35, 0xaa, + 0x3e, 0x10, 0x73, 0xc3, 0x38, 0x87, 0x6e, 0x3e, 0x54, 0x66, 0x10, 0xff, + 0x75, 0x95, 0x0d, 0x39, 0x3a, 0x3d, 0x1d, 0x26, 0xb1, 0x15, 0x1a, 0xa9, + 0x7f, 0x70, 0x31, 0xa2, +}; +static const struct drbg_kat_pr_true kat3289_t = { + 3, kat3289_entropyin, kat3289_nonce, kat3289_persstr, + kat3289_entropyinpr1, kat3289_addinpr1, kat3289_entropyinpr2, + kat3289_addinpr2, kat3289_retbits +}; +static const struct drbg_kat kat3289 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3289_t +}; + +static const unsigned char kat3290_entropyin[] = { + 0x4e, 0x1b, 0xf3, 0xdd, 0xe3, 0x4e, 0xa2, 0xde, 0x16, 0x4c, 0x22, 0x4b, + 0x30, 0xb7, 0x0f, 0xb7, 0x41, 0x8d, 0x47, 0x08, 0xbd, 0xec, 0xc1, 0x63, +}; +static const unsigned char kat3290_nonce[] = { + 0x53, 0x73, 0x20, 0xdc, 0x12, 0xc6, 0xdb, 0x73, 0x6b, 0x53, 0x73, 0x1f, + 0x90, 0x9a, 0x2f, 0x5e, +}; +static const unsigned char kat3290_persstr[] = { + 0xd2, 0xdd, 0x5d, 0x00, 0xc6, 0xc4, 0x25, 0xde, 0x0f, 0x93, 0x21, 0xf2, + 0x73, 0x74, 0x0d, 0x22, 0xf7, 0x06, 0xfa, 0x55, 0x29, 0x55, 0x60, 0xa6, + 0x8c, 0x17, 0x95, 0xcb, 0x6d, 0x12, 0x7f, 0x1a, +}; +static const unsigned char kat3290_entropyinpr1[] = { + 0xa9, 0x62, 0xa1, 0xa5, 0x81, 0xd9, 0xb3, 0x7b, 0x01, 0x61, 0x60, 0xd0, + 0x0a, 0x37, 0x03, 0x28, 0xa5, 0x8b, 0x24, 0x8b, 0xab, 0x5e, 0x50, 0x98, +}; +static const unsigned char kat3290_addinpr1[] = { + 0xd3, 0x09, 0xd7, 0x3d, 0x61, 0x56, 0xd0, 0x35, 0xc1, 0x80, 0xec, 0x29, + 0xfa, 0xa9, 0xa5, 0x11, 0x9c, 0x12, 0x72, 0x23, 0xf5, 0xdd, 0x17, 0x7d, + 0x1b, 0x29, 0x7f, 0x71, 0xbd, 0x61, 0xce, 0x54, +}; +static const unsigned char kat3290_entropyinpr2[] = { + 0xe1, 0xb8, 0x83, 0x83, 0xfc, 0xca, 0x39, 0x5c, 0xd5, 0x48, 0x40, 0x60, + 0x8d, 0xc0, 0xad, 0xf4, 0x38, 0x48, 0xb7, 0xce, 0xc2, 0x8e, 0x6e, 0xf8, +}; +static const unsigned char kat3290_addinpr2[] = { + 0xcd, 0x5a, 0x0a, 0xe6, 0xd4, 0xe4, 0xdb, 0x49, 0x79, 0xf7, 0x1e, 0x96, + 0xcf, 0xa3, 0x24, 0x2f, 0x68, 0x15, 0x3b, 0x39, 0xab, 0x81, 0x96, 0x3a, + 0xbe, 0x92, 0xb7, 0x29, 0x4d, 0xbe, 0x6b, 0xb6, +}; +static const unsigned char kat3290_retbits[] = { + 0xf4, 0x08, 0x11, 0x0d, 0xc5, 0xf0, 0xe8, 0x65, 0x42, 0x7d, 0x4a, 0xd4, + 0xf2, 0x01, 0x37, 0xe4, 0x89, 0xdb, 0xbd, 0x06, 0x4f, 0x71, 0x4b, 0xf1, + 0xc5, 0x10, 0x6e, 0x52, 0x25, 0x96, 0xe3, 0x31, 0x20, 0xd8, 0xc1, 0x36, + 0xbe, 0xca, 0xbf, 0x76, 0x1b, 0x47, 0x5e, 0xc5, 0x7d, 0xb3, 0x20, 0xcc, + 0xe8, 0x53, 0x7b, 0x5f, 0x80, 0x56, 0x5a, 0x5e, 0x15, 0xb0, 0x0e, 0x74, + 0x4d, 0x92, 0xb5, 0x26, +}; +static const struct drbg_kat_pr_true kat3290_t = { + 4, kat3290_entropyin, kat3290_nonce, kat3290_persstr, + kat3290_entropyinpr1, kat3290_addinpr1, kat3290_entropyinpr2, + kat3290_addinpr2, kat3290_retbits +}; +static const struct drbg_kat kat3290 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3290_t +}; + +static const unsigned char kat3291_entropyin[] = { + 0x06, 0x27, 0xa2, 0xdf, 0x86, 0xef, 0x77, 0x05, 0x8f, 0x2d, 0x54, 0x2b, + 0x8b, 0x59, 0x79, 0x04, 0xa3, 0xda, 0xec, 0x8b, 0x8e, 0xbd, 0x36, 0x5f, +}; +static const unsigned char kat3291_nonce[] = { + 0x6a, 0x0f, 0x2e, 0x71, 0x82, 0xaf, 0x9b, 0xbc, 0xc5, 0xdf, 0xd6, 0x72, + 0x20, 0x43, 0x47, 0x68, +}; +static const unsigned char kat3291_persstr[] = { + 0x41, 0xf8, 0x23, 0x75, 0x8a, 0x11, 0xf4, 0x27, 0x15, 0x5b, 0x49, 0xe0, + 0xb8, 0xa1, 0x0e, 0xe2, 0x5d, 0x23, 0x46, 0xba, 0xeb, 0x14, 0xc3, 0xfb, + 0x47, 0x7f, 0x67, 0x8b, 0xa4, 0xb5, 0xab, 0xb3, +}; +static const unsigned char kat3291_entropyinpr1[] = { + 0x98, 0xb7, 0x45, 0xea, 0xf3, 0xf2, 0xe2, 0xa8, 0x46, 0x96, 0xc2, 0xf2, + 0xc8, 0xca, 0x73, 0x6a, 0x98, 0xe0, 0x31, 0x4a, 0xb9, 0xf5, 0x48, 0x44, +}; +static const unsigned char kat3291_addinpr1[] = { + 0x50, 0xce, 0x71, 0xbc, 0x75, 0x6c, 0x28, 0x92, 0x20, 0x64, 0x70, 0x01, + 0x89, 0xab, 0xe3, 0x12, 0xe6, 0x3d, 0xc4, 0xa7, 0x2d, 0x81, 0x90, 0xfa, + 0xbc, 0x72, 0x94, 0x9a, 0xe2, 0xc7, 0xa0, 0xc8, +}; +static const unsigned char kat3291_entropyinpr2[] = { + 0xa4, 0x21, 0x5c, 0x75, 0x68, 0x38, 0x25, 0xff, 0xb1, 0xbf, 0xc5, 0x65, + 0x3f, 0xab, 0x32, 0xc2, 0x41, 0x38, 0x27, 0xde, 0x63, 0x67, 0x45, 0xa2, +}; +static const unsigned char kat3291_addinpr2[] = { + 0x9b, 0x3b, 0x2a, 0xf1, 0x12, 0x85, 0xad, 0x52, 0x57, 0x5d, 0x87, 0xc0, + 0xa2, 0x62, 0xd0, 0xd4, 0x4d, 0xb6, 0x8c, 0x69, 0x78, 0x1c, 0x34, 0xb4, + 0x9c, 0x27, 0x46, 0xcf, 0xba, 0x8f, 0x06, 0xd8, +}; +static const unsigned char kat3291_retbits[] = { + 0x3d, 0x36, 0xe5, 0xfe, 0xcc, 0x13, 0x3b, 0x2c, 0xfe, 0x9a, 0x04, 0x79, + 0x0e, 0x28, 0x7f, 0x0e, 0x28, 0x1b, 0x54, 0x9a, 0x55, 0x4d, 0x1d, 0xe1, + 0xec, 0x01, 0xc1, 0xbd, 0xa9, 0x0f, 0x44, 0x71, 0xa6, 0xec, 0x87, 0x0a, + 0x80, 0x9d, 0xaa, 0xec, 0xa1, 0x1c, 0x74, 0x12, 0xf7, 0x5e, 0x4f, 0x8b, + 0x10, 0x32, 0xd9, 0xdd, 0xbb, 0xdb, 0x61, 0xdc, 0x15, 0x00, 0xd7, 0x27, + 0xba, 0x72, 0x11, 0xb5, +}; +static const struct drbg_kat_pr_true kat3291_t = { + 5, kat3291_entropyin, kat3291_nonce, kat3291_persstr, + kat3291_entropyinpr1, kat3291_addinpr1, kat3291_entropyinpr2, + kat3291_addinpr2, kat3291_retbits +}; +static const struct drbg_kat kat3291 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3291_t +}; + +static const unsigned char kat3292_entropyin[] = { + 0xa2, 0x0e, 0x04, 0xa9, 0xfd, 0x0a, 0x6b, 0xfd, 0xbe, 0xe6, 0x3f, 0xd5, + 0x8a, 0x41, 0x17, 0x5f, 0xd8, 0xc8, 0x9e, 0x83, 0x5f, 0x1e, 0x57, 0xf1, +}; +static const unsigned char kat3292_nonce[] = { + 0x59, 0xc6, 0xe4, 0x44, 0x66, 0x1f, 0xea, 0x9c, 0xea, 0x0e, 0xe3, 0x64, + 0x93, 0x40, 0x8a, 0xf4, +}; +static const unsigned char kat3292_persstr[] = { + 0xcf, 0x99, 0xdf, 0xd8, 0x25, 0x17, 0xf4, 0x53, 0xff, 0x11, 0x7b, 0xf7, + 0x3b, 0xea, 0xfd, 0x28, 0xb7, 0x97, 0x50, 0x5e, 0x22, 0x79, 0x3e, 0x0a, + 0x90, 0x75, 0xd7, 0x00, 0xa5, 0xd7, 0xaa, 0xf8, +}; +static const unsigned char kat3292_entropyinpr1[] = { + 0x2c, 0x71, 0xbc, 0x3b, 0xe6, 0x44, 0x46, 0x9f, 0x3f, 0xf9, 0x1d, 0x00, + 0x2d, 0xda, 0xf0, 0xbe, 0x72, 0xd5, 0x33, 0xd6, 0x16, 0x13, 0x44, 0x3b, +}; +static const unsigned char kat3292_addinpr1[] = { + 0x64, 0x99, 0x5f, 0xe5, 0x11, 0x3e, 0xad, 0xef, 0x65, 0xc9, 0xa1, 0x15, + 0xb4, 0x80, 0x4b, 0xd7, 0x9b, 0x05, 0x41, 0x3d, 0x2d, 0xe1, 0x4c, 0x32, + 0x1b, 0x75, 0xcc, 0x03, 0xb4, 0x26, 0xae, 0x08, +}; +static const unsigned char kat3292_entropyinpr2[] = { + 0x44, 0xfa, 0x6e, 0xbb, 0x4c, 0xd2, 0xaf, 0x3c, 0x62, 0x04, 0xfe, 0x24, + 0x07, 0x31, 0x79, 0x39, 0x04, 0xbd, 0x08, 0x32, 0x8d, 0xcd, 0x2d, 0xb0, +}; +static const unsigned char kat3292_addinpr2[] = { + 0x03, 0xe1, 0xef, 0x3d, 0x99, 0xb2, 0xac, 0x8f, 0x93, 0x0a, 0xe0, 0x11, + 0x1b, 0xe8, 0x28, 0xcb, 0xf3, 0xd2, 0xc6, 0x20, 0x4d, 0xff, 0x66, 0x7c, + 0xc0, 0xc6, 0x6f, 0x3a, 0x8b, 0x8f, 0x77, 0x42, +}; +static const unsigned char kat3292_retbits[] = { + 0x68, 0xcd, 0xbd, 0xe4, 0x62, 0x03, 0x23, 0x51, 0x3d, 0x52, 0x9f, 0xac, + 0xc2, 0x5c, 0x1f, 0x82, 0x26, 0xd3, 0x4e, 0xba, 0xa3, 0x3f, 0xf2, 0xa8, + 0x3f, 0xaf, 0x62, 0x75, 0x5d, 0x26, 0x7d, 0xb5, 0x1b, 0x0f, 0x6a, 0x42, + 0x51, 0x28, 0x89, 0xd7, 0xe2, 0x40, 0xdf, 0x63, 0x88, 0x6b, 0x13, 0x94, + 0x80, 0xfd, 0xfc, 0xf9, 0x20, 0x20, 0x60, 0x24, 0x27, 0x04, 0x71, 0x86, + 0xc8, 0x25, 0xb1, 0xc5, +}; +static const struct drbg_kat_pr_true kat3292_t = { + 6, kat3292_entropyin, kat3292_nonce, kat3292_persstr, + kat3292_entropyinpr1, kat3292_addinpr1, kat3292_entropyinpr2, + kat3292_addinpr2, kat3292_retbits +}; +static const struct drbg_kat kat3292 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3292_t +}; + +static const unsigned char kat3293_entropyin[] = { + 0xf5, 0xab, 0x13, 0x6e, 0x8d, 0x5d, 0x9c, 0xe4, 0xb6, 0xe2, 0xfe, 0x12, + 0x43, 0x53, 0x1d, 0xd8, 0xa7, 0x6c, 0x15, 0x92, 0xa8, 0x23, 0x6f, 0x9e, +}; +static const unsigned char kat3293_nonce[] = { + 0xb3, 0x3b, 0x0d, 0x9c, 0x9a, 0x5a, 0xcc, 0x18, 0x44, 0x89, 0x3c, 0xaa, + 0x34, 0x1d, 0x00, 0x6a, +}; +static const unsigned char kat3293_persstr[] = { + 0xd0, 0x8d, 0x05, 0x7b, 0x8a, 0xe7, 0x71, 0xa5, 0x01, 0x2a, 0x56, 0xc6, + 0xef, 0xb7, 0xcb, 0x6f, 0xb6, 0xbb, 0x8e, 0x80, 0x01, 0xe9, 0x9b, 0x0f, + 0x08, 0x75, 0x01, 0x82, 0x1d, 0xc6, 0x42, 0xbc, +}; +static const unsigned char kat3293_entropyinpr1[] = { + 0x36, 0xb5, 0x17, 0x23, 0x47, 0x64, 0x1a, 0x48, 0x35, 0xac, 0xf0, 0x5e, + 0xf2, 0x06, 0xbb, 0x52, 0xad, 0x82, 0xe5, 0x06, 0xec, 0xeb, 0x6e, 0xe3, +}; +static const unsigned char kat3293_addinpr1[] = { + 0x73, 0xbe, 0x9e, 0x3d, 0x92, 0x51, 0xcf, 0x17, 0xed, 0xd4, 0x02, 0x25, + 0x9d, 0xde, 0x5e, 0xb7, 0xe3, 0x08, 0xbd, 0x96, 0x37, 0xe5, 0x34, 0xc2, + 0x0a, 0x47, 0xbf, 0x84, 0xbc, 0x53, 0x0a, 0x4a, +}; +static const unsigned char kat3293_entropyinpr2[] = { + 0x95, 0x9d, 0xb8, 0x07, 0x4f, 0x8b, 0x0e, 0xe9, 0x23, 0x88, 0xdd, 0xd7, + 0xb0, 0x5e, 0x34, 0x80, 0x73, 0x48, 0x56, 0x09, 0xc6, 0xe3, 0xc8, 0x95, +}; +static const unsigned char kat3293_addinpr2[] = { + 0xad, 0x7b, 0xef, 0xed, 0x0c, 0xd6, 0xe3, 0x03, 0x83, 0xaf, 0x7a, 0xa2, + 0xf1, 0x37, 0xed, 0x10, 0x21, 0xe5, 0xbd, 0x2e, 0xed, 0x4d, 0x86, 0x8b, + 0xc6, 0x2a, 0x3e, 0x15, 0x0d, 0xca, 0x8b, 0x81, +}; +static const unsigned char kat3293_retbits[] = { + 0xa5, 0xad, 0x9f, 0x08, 0xc4, 0xd9, 0x6b, 0xd0, 0x2e, 0x1b, 0xf2, 0x5a, + 0x9e, 0x14, 0x2a, 0x16, 0xcb, 0xba, 0x20, 0xc7, 0x66, 0xd4, 0x8a, 0xfe, + 0x8f, 0x9c, 0x61, 0x98, 0x2d, 0x47, 0x4a, 0x7a, 0xad, 0x1c, 0x1c, 0x09, + 0xdf, 0x9b, 0x6b, 0x24, 0x13, 0x41, 0xae, 0xcc, 0x2d, 0x0e, 0x82, 0x3b, + 0x90, 0xce, 0xb0, 0x54, 0xe3, 0x56, 0x02, 0xc2, 0xf7, 0x6d, 0x28, 0xd1, + 0xa5, 0x57, 0xd7, 0x93, +}; +static const struct drbg_kat_pr_true kat3293_t = { + 7, kat3293_entropyin, kat3293_nonce, kat3293_persstr, + kat3293_entropyinpr1, kat3293_addinpr1, kat3293_entropyinpr2, + kat3293_addinpr2, kat3293_retbits +}; +static const struct drbg_kat kat3293 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3293_t +}; + +static const unsigned char kat3294_entropyin[] = { + 0xf5, 0x7f, 0x54, 0x4c, 0xfe, 0xb2, 0x4f, 0xc7, 0x17, 0xa2, 0x8f, 0x6b, + 0xf3, 0x33, 0xd3, 0xf7, 0x91, 0x16, 0x9e, 0xfa, 0x24, 0xd7, 0xa6, 0x49, +}; +static const unsigned char kat3294_nonce[] = { + 0xf5, 0x01, 0xa0, 0x9f, 0x2d, 0x6b, 0x7c, 0x75, 0x36, 0x40, 0x9a, 0x6e, + 0xbe, 0x5d, 0x0c, 0xc7, +}; +static const unsigned char kat3294_persstr[] = { + 0x06, 0x11, 0xc5, 0xdd, 0x75, 0x7a, 0xa8, 0x10, 0xb6, 0x10, 0xf0, 0xd2, + 0xe7, 0xf5, 0xad, 0x55, 0xd0, 0xa1, 0xe5, 0x09, 0xa3, 0x27, 0xc5, 0xbb, + 0xe6, 0xdb, 0xf8, 0x95, 0x45, 0x4e, 0xe2, 0xb7, +}; +static const unsigned char kat3294_entropyinpr1[] = { + 0xda, 0x5f, 0x82, 0x37, 0x56, 0xe7, 0xe4, 0xa9, 0x2c, 0xfb, 0x88, 0x8b, + 0xf1, 0x8d, 0x2c, 0xbb, 0x85, 0x6b, 0x66, 0x4e, 0x98, 0xd6, 0xa7, 0xa1, +}; +static const unsigned char kat3294_addinpr1[] = { + 0xe7, 0x20, 0x07, 0x6f, 0x67, 0x8c, 0x77, 0x94, 0x9b, 0x71, 0x3b, 0x0d, + 0x21, 0x2c, 0x64, 0xae, 0x22, 0xdf, 0x08, 0x23, 0xba, 0xfc, 0x54, 0x41, + 0x66, 0xbe, 0xd5, 0x00, 0x79, 0xcc, 0x99, 0x4d, +}; +static const unsigned char kat3294_entropyinpr2[] = { + 0x76, 0x11, 0x68, 0x97, 0x14, 0xb7, 0xcd, 0xbf, 0x82, 0x73, 0xb1, 0x6a, + 0x35, 0xda, 0xd0, 0x97, 0xc1, 0x90, 0x13, 0xfc, 0x68, 0x2c, 0xfa, 0x60, +}; +static const unsigned char kat3294_addinpr2[] = { + 0x37, 0x1a, 0x0c, 0x03, 0x06, 0x69, 0xeb, 0x75, 0x34, 0xe1, 0x68, 0x24, + 0x31, 0x41, 0x4f, 0x34, 0x1d, 0x24, 0xcc, 0xc2, 0xa5, 0xb6, 0x3b, 0xf6, + 0x16, 0x13, 0x57, 0x54, 0x53, 0x7c, 0x72, 0x3b, +}; +static const unsigned char kat3294_retbits[] = { + 0xb1, 0x87, 0x1a, 0x98, 0xf9, 0xbc, 0xa0, 0x34, 0xad, 0xe0, 0x42, 0x51, + 0x64, 0xc0, 0x10, 0x56, 0x47, 0x85, 0x80, 0x0e, 0x59, 0xc3, 0xd5, 0xa0, + 0x19, 0x51, 0xd0, 0xc1, 0x49, 0x6f, 0xd0, 0x6b, 0x27, 0x36, 0x71, 0x1f, + 0xc4, 0xf5, 0xff, 0xfb, 0xc5, 0xbc, 0x78, 0x0c, 0xd7, 0x5a, 0x8f, 0xee, + 0xb1, 0x5d, 0x3f, 0xfd, 0x55, 0x89, 0x12, 0xb4, 0xdd, 0x6a, 0x90, 0x9b, + 0x9c, 0x24, 0xde, 0xf9, +}; +static const struct drbg_kat_pr_true kat3294_t = { + 8, kat3294_entropyin, kat3294_nonce, kat3294_persstr, + kat3294_entropyinpr1, kat3294_addinpr1, kat3294_entropyinpr2, + kat3294_addinpr2, kat3294_retbits +}; +static const struct drbg_kat kat3294 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3294_t +}; + +static const unsigned char kat3295_entropyin[] = { + 0xaf, 0xc3, 0xcc, 0xed, 0xc6, 0x93, 0x5a, 0xc2, 0xb8, 0x9e, 0x18, 0x5f, + 0xfe, 0x32, 0x04, 0xe9, 0x55, 0x4e, 0x6a, 0x5c, 0x20, 0xb2, 0xf8, 0x16, +}; +static const unsigned char kat3295_nonce[] = { + 0x1b, 0x7f, 0x9c, 0xed, 0xef, 0x59, 0xaf, 0x31, 0x44, 0xb7, 0x83, 0x61, + 0xa5, 0xa6, 0x55, 0xf6, +}; +static const unsigned char kat3295_persstr[] = { + 0xa1, 0xf5, 0x32, 0x64, 0x96, 0x7b, 0xf9, 0xa2, 0x18, 0xca, 0xcc, 0x6b, + 0xf0, 0x93, 0xda, 0xf3, 0x37, 0x9b, 0x72, 0x23, 0x3f, 0x12, 0xde, 0x6a, + 0x1c, 0x2a, 0xa0, 0xfd, 0xd8, 0x72, 0x0c, 0x6c, +}; +static const unsigned char kat3295_entropyinpr1[] = { + 0x75, 0x1e, 0x91, 0x23, 0x8e, 0x90, 0x23, 0x66, 0x6b, 0xc7, 0xe6, 0x22, + 0x40, 0xc9, 0xf8, 0x75, 0x08, 0xe9, 0xe4, 0xd3, 0x4e, 0xf0, 0xe5, 0xd3, +}; +static const unsigned char kat3295_addinpr1[] = { + 0xe0, 0x0f, 0x93, 0xd1, 0xb6, 0x4b, 0x34, 0x11, 0xc5, 0xb8, 0x95, 0xf5, + 0x29, 0x18, 0x83, 0x70, 0x15, 0x28, 0xb7, 0xfb, 0x5e, 0xe5, 0xf6, 0xc3, + 0x44, 0x5c, 0xc0, 0x2e, 0xa4, 0xa4, 0x1b, 0x68, +}; +static const unsigned char kat3295_entropyinpr2[] = { + 0xfa, 0x0d, 0x76, 0x8e, 0x3a, 0x90, 0xa5, 0xdf, 0x1e, 0xc6, 0xab, 0x53, + 0x3f, 0xbf, 0xb0, 0x54, 0xe9, 0x8b, 0xc5, 0xef, 0x24, 0x49, 0x2a, 0x3a, +}; +static const unsigned char kat3295_addinpr2[] = { + 0x34, 0xf6, 0x55, 0x9e, 0xd5, 0x97, 0x5a, 0xa1, 0xb0, 0x94, 0x00, 0xf7, + 0xa5, 0x5d, 0xd4, 0x8b, 0x05, 0xf4, 0x96, 0x80, 0x4c, 0xee, 0x94, 0x5a, + 0x8d, 0x81, 0x87, 0x20, 0xa9, 0x22, 0xb8, 0x05, +}; +static const unsigned char kat3295_retbits[] = { + 0xee, 0x50, 0x7c, 0x1d, 0x32, 0x60, 0xcf, 0xf1, 0x1d, 0x5e, 0x65, 0xe4, + 0xf0, 0xf6, 0xdd, 0x7c, 0x75, 0x6b, 0x16, 0xd7, 0xb7, 0x35, 0xcb, 0xc7, + 0x0f, 0xbe, 0x88, 0xe0, 0xab, 0x98, 0x5b, 0xeb, 0x0b, 0x6f, 0xbb, 0xde, + 0xc1, 0xb8, 0xe9, 0xf7, 0xf7, 0x43, 0xa3, 0xbe, 0x61, 0xe6, 0xd1, 0xde, + 0x12, 0x73, 0xd2, 0x3f, 0x3b, 0xf7, 0xfb, 0x27, 0x92, 0x3b, 0x37, 0xa9, + 0xf1, 0x3a, 0x47, 0x3d, +}; +static const struct drbg_kat_pr_true kat3295_t = { + 9, kat3295_entropyin, kat3295_nonce, kat3295_persstr, + kat3295_entropyinpr1, kat3295_addinpr1, kat3295_entropyinpr2, + kat3295_addinpr2, kat3295_retbits +}; +static const struct drbg_kat kat3295 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3295_t +}; + +static const unsigned char kat3296_entropyin[] = { + 0x38, 0x2f, 0xb8, 0x8b, 0xe9, 0xf0, 0xab, 0x05, 0xd9, 0x9b, 0xaf, 0x8f, + 0x7d, 0x9a, 0x64, 0xa8, 0x54, 0xdc, 0x5a, 0xd7, 0xe2, 0x5e, 0x55, 0xbc, +}; +static const unsigned char kat3296_nonce[] = { + 0x35, 0xd1, 0x63, 0xc9, 0x7c, 0xa2, 0x6b, 0x5f, 0x9f, 0x43, 0x31, 0x03, + 0x7b, 0x3b, 0xb5, 0x0b, +}; +static const unsigned char kat3296_persstr[] = { + 0x5c, 0xab, 0xd6, 0x95, 0x67, 0x4d, 0x26, 0xd9, 0xb7, 0x84, 0x4b, 0x18, + 0xd8, 0x7e, 0xab, 0xcc, 0x04, 0x18, 0xff, 0x03, 0x69, 0x6f, 0xc3, 0x1a, + 0x65, 0xc9, 0xa2, 0x74, 0x87, 0x58, 0xe5, 0xd5, +}; +static const unsigned char kat3296_entropyinpr1[] = { + 0xcc, 0x8d, 0xfe, 0x28, 0xd9, 0xb2, 0xd6, 0xba, 0x0b, 0xf6, 0xd7, 0x4c, + 0x17, 0x1f, 0xcd, 0x2a, 0x65, 0x0d, 0xa4, 0x6e, 0x2f, 0xd6, 0x91, 0x69, +}; +static const unsigned char kat3296_addinpr1[] = { + 0x0c, 0x2e, 0x47, 0xe5, 0x0a, 0xb0, 0x26, 0x55, 0x24, 0xa0, 0x02, 0x09, + 0xc5, 0x8e, 0x44, 0x7a, 0x6e, 0x0b, 0xad, 0xf8, 0xeb, 0xf8, 0x5f, 0x6c, + 0x21, 0x3c, 0xa4, 0xfd, 0x25, 0x2e, 0xa6, 0xc0, +}; +static const unsigned char kat3296_entropyinpr2[] = { + 0x0b, 0x4c, 0x3b, 0x4b, 0x82, 0x9f, 0x84, 0x4f, 0x46, 0xa6, 0x7d, 0xbb, + 0xec, 0xce, 0x2f, 0x99, 0xc4, 0x2f, 0xe3, 0x77, 0x68, 0x26, 0x11, 0x04, +}; +static const unsigned char kat3296_addinpr2[] = { + 0xf3, 0x87, 0x05, 0xff, 0x8c, 0x3b, 0x6a, 0x21, 0x71, 0x7c, 0x4e, 0x81, + 0x11, 0xbf, 0xa9, 0x31, 0x0a, 0x20, 0x6b, 0xac, 0x85, 0xb7, 0x0c, 0xd3, + 0x79, 0x01, 0x70, 0x98, 0x8f, 0xbc, 0x1c, 0xa9, +}; +static const unsigned char kat3296_retbits[] = { + 0x3e, 0x1a, 0xe9, 0xfa, 0xc4, 0x72, 0x90, 0x79, 0x75, 0xf4, 0x7a, 0x10, + 0xa8, 0x01, 0x05, 0x33, 0xac, 0xde, 0x35, 0xaf, 0xc9, 0x1b, 0xd7, 0xf8, + 0x81, 0xd6, 0x2f, 0x49, 0x82, 0x95, 0x10, 0x7f, 0x70, 0x28, 0xc6, 0x4c, + 0xb1, 0x29, 0xdc, 0x85, 0x67, 0x47, 0xa9, 0xab, 0xb0, 0x31, 0x98, 0x39, + 0xbe, 0x83, 0x99, 0x6c, 0xef, 0x44, 0xab, 0x27, 0xda, 0x2d, 0x90, 0xd1, + 0xc9, 0xbf, 0xb2, 0xc8, +}; +static const struct drbg_kat_pr_true kat3296_t = { + 10, kat3296_entropyin, kat3296_nonce, kat3296_persstr, + kat3296_entropyinpr1, kat3296_addinpr1, kat3296_entropyinpr2, + kat3296_addinpr2, kat3296_retbits +}; +static const struct drbg_kat kat3296 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3296_t +}; + +static const unsigned char kat3297_entropyin[] = { + 0xcd, 0x59, 0xa8, 0xa8, 0xdc, 0x7e, 0x96, 0x26, 0x31, 0x8b, 0x25, 0x8e, + 0x3a, 0xb1, 0xcd, 0x5f, 0xb0, 0x45, 0x3f, 0x8c, 0x14, 0x00, 0xe2, 0x67, +}; +static const unsigned char kat3297_nonce[] = { + 0x25, 0xa8, 0x5e, 0x74, 0x53, 0x45, 0x9a, 0x79, 0x80, 0xdb, 0x4c, 0xe5, + 0x14, 0x61, 0x95, 0x65, +}; +static const unsigned char kat3297_persstr[] = { + 0x20, 0x41, 0x77, 0xf9, 0xe9, 0x7f, 0x8c, 0x24, 0x9a, 0xd6, 0xf6, 0x34, + 0x2c, 0x31, 0x09, 0xc7, 0xf1, 0x21, 0x8f, 0xb1, 0x71, 0x67, 0x37, 0x88, + 0x35, 0x22, 0x7b, 0xeb, 0x40, 0x18, 0x5d, 0xd1, +}; +static const unsigned char kat3297_entropyinpr1[] = { + 0xa9, 0xc8, 0x89, 0x08, 0x21, 0x7b, 0xd1, 0xdb, 0xcc, 0x83, 0x4d, 0xbd, + 0x16, 0x52, 0xc0, 0x23, 0xf9, 0x85, 0x61, 0x80, 0x40, 0x71, 0x80, 0xb6, +}; +static const unsigned char kat3297_addinpr1[] = { + 0x61, 0xa9, 0xa2, 0x4e, 0x8c, 0xe6, 0x91, 0x93, 0xf0, 0x5f, 0x4a, 0x16, + 0x30, 0xf0, 0xf4, 0xaf, 0xcf, 0x1a, 0x19, 0x5a, 0x1f, 0x4c, 0x1a, 0xb3, + 0x04, 0x86, 0xee, 0x8e, 0x80, 0x0c, 0x0d, 0x54, +}; +static const unsigned char kat3297_entropyinpr2[] = { + 0xf2, 0xab, 0x9b, 0xcd, 0x76, 0x2c, 0x7e, 0x55, 0xb0, 0xbb, 0xe3, 0x80, + 0x62, 0x23, 0x86, 0xd3, 0xd1, 0xc7, 0x1a, 0x44, 0xe7, 0xfc, 0xaf, 0xf6, +}; +static const unsigned char kat3297_addinpr2[] = { + 0x8a, 0x17, 0xf4, 0xb5, 0xd8, 0x75, 0x01, 0x35, 0xe9, 0xfe, 0x88, 0xf7, + 0xe8, 0x85, 0xb6, 0x24, 0xaa, 0xa8, 0x1a, 0xa0, 0xce, 0x49, 0x03, 0xc0, + 0x54, 0x19, 0xd0, 0xc9, 0x6c, 0x60, 0xbe, 0x47, +}; +static const unsigned char kat3297_retbits[] = { + 0x46, 0x45, 0x29, 0x18, 0xb3, 0xd2, 0x0d, 0x24, 0x56, 0x92, 0x79, 0x57, + 0x0b, 0x63, 0x0f, 0xf3, 0x2b, 0xf7, 0xf4, 0x2a, 0xdf, 0xa0, 0x9e, 0xb5, + 0x9c, 0xd8, 0x98, 0xe3, 0x43, 0x20, 0x1d, 0xe2, 0x90, 0x78, 0x5c, 0x46, + 0xa8, 0xb9, 0x46, 0xde, 0xe6, 0xd8, 0x11, 0xb5, 0xfd, 0x50, 0xc7, 0x6f, + 0xc4, 0x6c, 0xfa, 0x41, 0x66, 0x9b, 0x2c, 0xc6, 0xb9, 0x37, 0x3e, 0x72, + 0x52, 0x1c, 0xc8, 0x8b, +}; +static const struct drbg_kat_pr_true kat3297_t = { + 11, kat3297_entropyin, kat3297_nonce, kat3297_persstr, + kat3297_entropyinpr1, kat3297_addinpr1, kat3297_entropyinpr2, + kat3297_addinpr2, kat3297_retbits +}; +static const struct drbg_kat kat3297 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3297_t +}; + +static const unsigned char kat3298_entropyin[] = { + 0xc2, 0xb4, 0x73, 0xb8, 0xb9, 0xb6, 0x2a, 0x13, 0x1b, 0x93, 0x4c, 0x2d, + 0x33, 0x4e, 0x30, 0x6e, 0x34, 0xfb, 0x5a, 0x42, 0xc7, 0xdb, 0x64, 0xa7, +}; +static const unsigned char kat3298_nonce[] = { + 0x61, 0xea, 0x0e, 0x2b, 0x02, 0x27, 0xb2, 0x94, 0x77, 0x01, 0xf1, 0x7f, + 0xbf, 0x00, 0xd8, 0x31, +}; +static const unsigned char kat3298_persstr[] = { + 0x02, 0x45, 0x58, 0xfa, 0x98, 0x5a, 0xc6, 0xd9, 0x04, 0xbf, 0x75, 0xe6, + 0x56, 0xb4, 0x54, 0x58, 0xa1, 0x4e, 0x53, 0xd8, 0x7b, 0xd9, 0x3b, 0x54, + 0xb0, 0x39, 0x1f, 0x7e, 0xcd, 0xdc, 0x3d, 0x79, +}; +static const unsigned char kat3298_entropyinpr1[] = { + 0x51, 0x48, 0x5d, 0x1d, 0x7a, 0x7b, 0xb2, 0x38, 0x63, 0xf2, 0xd4, 0xe7, + 0xe6, 0xab, 0xc6, 0x6b, 0xb3, 0x50, 0xac, 0x93, 0x51, 0xf0, 0x33, 0xb5, +}; +static const unsigned char kat3298_addinpr1[] = { + 0xad, 0xb1, 0x5e, 0xac, 0x54, 0x36, 0xe9, 0xb2, 0x63, 0x52, 0xb1, 0xa7, + 0x13, 0x04, 0xb6, 0x9e, 0xe3, 0xdb, 0x4e, 0xed, 0x79, 0x1e, 0x61, 0x8b, + 0x42, 0x35, 0x58, 0x33, 0xb8, 0x5e, 0x1d, 0x93, +}; +static const unsigned char kat3298_entropyinpr2[] = { + 0x60, 0x03, 0x86, 0x68, 0xd8, 0x56, 0xf1, 0xe5, 0xc2, 0xd7, 0x84, 0x25, + 0x40, 0xa4, 0x59, 0xcf, 0xa5, 0x5a, 0x0b, 0x3d, 0xa0, 0x36, 0x2c, 0xbe, +}; +static const unsigned char kat3298_addinpr2[] = { + 0xb1, 0x67, 0x3c, 0xcc, 0xde, 0xcd, 0xf0, 0xb7, 0xe6, 0x00, 0x59, 0x4d, + 0xc1, 0xde, 0xc2, 0x2d, 0x05, 0x87, 0x3d, 0x90, 0x2a, 0x40, 0x49, 0xb2, + 0xf7, 0x71, 0x24, 0x1d, 0xba, 0x08, 0x6b, 0x02, +}; +static const unsigned char kat3298_retbits[] = { + 0x33, 0x69, 0x46, 0x6f, 0xce, 0xd7, 0xf6, 0xb6, 0x73, 0xc0, 0x4f, 0x1a, + 0x0d, 0x6a, 0xd1, 0x6b, 0x9c, 0xe8, 0x1d, 0x6b, 0x1d, 0x28, 0x9b, 0x94, + 0xa8, 0xaa, 0x86, 0x77, 0xa7, 0x30, 0x5c, 0x05, 0xd0, 0x37, 0xcc, 0x43, + 0x61, 0x89, 0x48, 0x52, 0x04, 0x61, 0xf5, 0x28, 0x96, 0x90, 0xd8, 0xfb, + 0x25, 0x94, 0xf1, 0x0f, 0x80, 0xf5, 0x46, 0x20, 0xf5, 0xe4, 0x65, 0x61, + 0x1c, 0x92, 0x3b, 0xac, +}; +static const struct drbg_kat_pr_true kat3298_t = { + 12, kat3298_entropyin, kat3298_nonce, kat3298_persstr, + kat3298_entropyinpr1, kat3298_addinpr1, kat3298_entropyinpr2, + kat3298_addinpr2, kat3298_retbits +}; +static const struct drbg_kat kat3298 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3298_t +}; + +static const unsigned char kat3299_entropyin[] = { + 0x82, 0xf9, 0x16, 0xa7, 0x09, 0xb5, 0x21, 0xbf, 0x74, 0xcd, 0x86, 0x07, + 0x0c, 0x82, 0x1c, 0xdf, 0xf9, 0x94, 0x0e, 0xb8, 0x54, 0x1b, 0xab, 0x2c, +}; +static const unsigned char kat3299_nonce[] = { + 0x70, 0x4e, 0x21, 0x7b, 0xa1, 0xf9, 0x07, 0xdd, 0x66, 0xb5, 0x05, 0x24, + 0xf5, 0x4f, 0x9f, 0x55, +}; +static const unsigned char kat3299_persstr[] = { + 0x09, 0xbd, 0xfa, 0x9a, 0x73, 0x61, 0xf2, 0xcc, 0x3f, 0x81, 0x14, 0xcb, + 0x67, 0xd0, 0x7a, 0x37, 0x01, 0xf9, 0x74, 0x0f, 0x62, 0x11, 0x87, 0x95, + 0xe2, 0xc0, 0x07, 0xcc, 0x45, 0xfc, 0x12, 0xf0, +}; +static const unsigned char kat3299_entropyinpr1[] = { + 0xd6, 0x95, 0x64, 0x20, 0x52, 0x62, 0xe9, 0x0f, 0x87, 0x94, 0xd8, 0xef, + 0x26, 0xba, 0x1c, 0x01, 0x73, 0x34, 0xc5, 0x02, 0x1b, 0x6e, 0x60, 0xed, +}; +static const unsigned char kat3299_addinpr1[] = { + 0x0a, 0x11, 0xc7, 0x86, 0x7b, 0x2a, 0x52, 0x91, 0x2e, 0xea, 0xff, 0xf5, + 0xcc, 0xdc, 0xda, 0xc5, 0x4a, 0xc4, 0x52, 0x5f, 0xe4, 0x7d, 0x71, 0x12, + 0x56, 0x7f, 0x4c, 0x7e, 0xac, 0xa2, 0x06, 0x2a, +}; +static const unsigned char kat3299_entropyinpr2[] = { + 0x7e, 0x47, 0x24, 0x44, 0x78, 0xaf, 0x68, 0x6d, 0xdc, 0x1d, 0x2c, 0x61, + 0x66, 0x19, 0x07, 0x72, 0x71, 0x8e, 0x0d, 0x13, 0xae, 0x35, 0x61, 0x19, +}; +static const unsigned char kat3299_addinpr2[] = { + 0x2e, 0x58, 0xed, 0xb4, 0x52, 0x23, 0xe9, 0x15, 0x06, 0x50, 0xe7, 0x53, + 0x42, 0xf9, 0xf3, 0x53, 0xb6, 0x77, 0x77, 0xed, 0x39, 0x08, 0xb5, 0x4d, + 0x93, 0xb6, 0x59, 0x20, 0x07, 0xee, 0xb6, 0x9c, +}; +static const unsigned char kat3299_retbits[] = { + 0x0a, 0x90, 0xa7, 0x15, 0xa3, 0x1a, 0xb0, 0x2d, 0x39, 0xcc, 0xce, 0x24, + 0x37, 0x8b, 0x7b, 0x68, 0xcb, 0xf0, 0x40, 0xfc, 0x5a, 0x94, 0xa0, 0x57, + 0x67, 0x73, 0x77, 0xdd, 0x65, 0xfc, 0xe8, 0x5a, 0x19, 0x37, 0xac, 0x76, + 0xf7, 0x1f, 0x1b, 0x81, 0x5b, 0x96, 0xf0, 0x92, 0xe8, 0x55, 0xb0, 0x74, + 0x61, 0x68, 0xd2, 0xdd, 0xd4, 0x99, 0x28, 0xe6, 0x1f, 0x6f, 0x53, 0x36, + 0x92, 0xd9, 0x18, 0x00, +}; +static const struct drbg_kat_pr_true kat3299_t = { + 13, kat3299_entropyin, kat3299_nonce, kat3299_persstr, + kat3299_entropyinpr1, kat3299_addinpr1, kat3299_entropyinpr2, + kat3299_addinpr2, kat3299_retbits +}; +static const struct drbg_kat kat3299 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3299_t +}; + +static const unsigned char kat3300_entropyin[] = { + 0x9e, 0x99, 0x5d, 0x90, 0x34, 0x17, 0x62, 0xa9, 0x32, 0x99, 0x1d, 0x1d, + 0xa3, 0x41, 0x17, 0x28, 0x7e, 0x5c, 0xa6, 0x88, 0xce, 0x60, 0x41, 0x39, +}; +static const unsigned char kat3300_nonce[] = { + 0xa6, 0x1b, 0xf0, 0xe9, 0x69, 0x83, 0xee, 0xdf, 0x2d, 0xaa, 0x6c, 0x1b, + 0xf6, 0x4c, 0x83, 0x83, +}; +static const unsigned char kat3300_persstr[] = { + 0x48, 0xfd, 0x5d, 0x22, 0x02, 0xb1, 0x30, 0x4a, 0x2d, 0xfe, 0x2e, 0x57, + 0x65, 0xdf, 0xa6, 0x2f, 0x18, 0x8e, 0x6c, 0x38, 0xc0, 0x63, 0xef, 0x3d, + 0xe0, 0xc5, 0xf9, 0x53, 0x12, 0xf8, 0x49, 0x49, +}; +static const unsigned char kat3300_entropyinpr1[] = { + 0xe9, 0x89, 0xbb, 0xce, 0x44, 0x7c, 0x6b, 0x47, 0x99, 0xf2, 0xbc, 0x85, + 0xa4, 0xc4, 0xf8, 0x4b, 0xfb, 0x0f, 0xe7, 0xc2, 0x29, 0xad, 0x64, 0x3c, +}; +static const unsigned char kat3300_addinpr1[] = { + 0x24, 0x66, 0x32, 0xbb, 0xe3, 0x29, 0x52, 0x89, 0x54, 0x89, 0x33, 0xad, + 0xb9, 0x76, 0xa7, 0x88, 0xf5, 0xff, 0x18, 0x3e, 0x52, 0xe9, 0x70, 0xc0, + 0x32, 0x6a, 0xe5, 0x18, 0x71, 0x13, 0x87, 0xcc, +}; +static const unsigned char kat3300_entropyinpr2[] = { + 0x23, 0x12, 0x66, 0xf5, 0xcc, 0xab, 0x8f, 0x29, 0xb0, 0x4b, 0xc9, 0xe1, + 0x1f, 0xfa, 0xcf, 0x0f, 0x67, 0x7b, 0x49, 0xdd, 0x83, 0xd6, 0x84, 0x5a, +}; +static const unsigned char kat3300_addinpr2[] = { + 0x54, 0x7a, 0xc1, 0xc6, 0x74, 0xae, 0xbe, 0x59, 0x71, 0x70, 0xab, 0x83, + 0xb0, 0x7e, 0x78, 0x09, 0xff, 0x60, 0x0f, 0x6c, 0x1d, 0x64, 0x7d, 0xd5, + 0x50, 0x17, 0x51, 0xef, 0x97, 0x68, 0x53, 0xeb, +}; +static const unsigned char kat3300_retbits[] = { + 0x00, 0xcb, 0x0a, 0x33, 0x87, 0x7c, 0x26, 0x8e, 0xc8, 0x54, 0xfa, 0x99, + 0x69, 0xa8, 0x39, 0x1b, 0x79, 0xef, 0xd7, 0xc7, 0xb9, 0xb3, 0x6c, 0xea, + 0x83, 0x2c, 0x21, 0x75, 0x62, 0x1e, 0x1b, 0xd9, 0xb8, 0xea, 0x9d, 0x50, + 0x20, 0x2e, 0xd0, 0x9e, 0x01, 0x09, 0x72, 0xea, 0x8f, 0x17, 0x8c, 0x6b, + 0xa7, 0x09, 0x5d, 0x7d, 0xef, 0x1d, 0x6d, 0x12, 0x9b, 0x7c, 0x7e, 0x0a, + 0x82, 0x7e, 0xcd, 0xce, +}; +static const struct drbg_kat_pr_true kat3300_t = { + 14, kat3300_entropyin, kat3300_nonce, kat3300_persstr, + kat3300_entropyinpr1, kat3300_addinpr1, kat3300_entropyinpr2, + kat3300_addinpr2, kat3300_retbits +}; +static const struct drbg_kat kat3300 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3300_t +}; + +static const unsigned char kat3301_entropyin[] = { + 0x21, 0x34, 0xb7, 0x9a, 0x4d, 0xc2, 0xea, 0xb9, 0x71, 0xcb, 0x0a, 0x1d, + 0x4f, 0xb4, 0xf8, 0x90, 0x8e, 0xe3, 0x29, 0x75, 0x1e, 0xbb, 0x4a, 0xe3, +}; +static const unsigned char kat3301_nonce[] = { + 0x10, 0x39, 0x9c, 0x42, 0x2f, 0x25, 0x6d, 0x96, 0x2b, 0xd3, 0xb9, 0x3f, + 0x7d, 0xfe, 0x13, 0x50, +}; +static const unsigned char kat3301_persstr[] = {0}; +static const unsigned char kat3301_entropyinpr1[] = { + 0x96, 0xae, 0x9a, 0xfe, 0xf8, 0xc0, 0x40, 0x14, 0xfc, 0x5b, 0x35, 0x82, + 0x9e, 0x40, 0xd7, 0x45, 0x51, 0x1b, 0x45, 0x0f, 0x0e, 0xdd, 0x99, 0xda, +}; +static const unsigned char kat3301_addinpr1[] = {0}; +static const unsigned char kat3301_entropyinpr2[] = { + 0xd7, 0x5c, 0x71, 0xfd, 0x93, 0x39, 0xc6, 0x7a, 0xc7, 0xc7, 0x87, 0x8b, + 0xca, 0xe2, 0xb6, 0xf4, 0x5b, 0x52, 0xad, 0x09, 0x83, 0xe3, 0xb9, 0x5f, +}; +static const unsigned char kat3301_addinpr2[] = {0}; +static const unsigned char kat3301_retbits[] = { + 0xe2, 0x35, 0x17, 0x55, 0xfd, 0xb1, 0x47, 0x4f, 0xec, 0xe8, 0xa2, 0xcc, + 0x8d, 0xb2, 0x8d, 0x6e, 0x74, 0x88, 0xba, 0x00, 0xee, 0x7b, 0xc3, 0x28, + 0xf5, 0x48, 0xff, 0x1d, 0xea, 0xf1, 0x30, 0x57, 0xaa, 0x06, 0x4c, 0xe9, + 0xc2, 0x12, 0xe6, 0xcf, 0x97, 0x26, 0x42, 0x54, 0xe3, 0x4c, 0xc3, 0x32, + 0xef, 0x28, 0x7c, 0x11, 0x24, 0x6f, 0x3a, 0xea, 0x61, 0x10, 0x61, 0xd9, + 0x56, 0x2f, 0x5c, 0x6a, +}; +static const struct drbg_kat_pr_true kat3301_t = { + 0, kat3301_entropyin, kat3301_nonce, kat3301_persstr, + kat3301_entropyinpr1, kat3301_addinpr1, kat3301_entropyinpr2, + kat3301_addinpr2, kat3301_retbits +}; +static const struct drbg_kat kat3301 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3301_t +}; + +static const unsigned char kat3302_entropyin[] = { + 0x74, 0xf9, 0x79, 0xe8, 0xe2, 0xfa, 0x6a, 0xf9, 0xbf, 0x1d, 0x8a, 0x62, + 0x6d, 0xac, 0xbd, 0x68, 0x43, 0x14, 0x4c, 0xa1, 0x6b, 0x9f, 0x53, 0xaf, +}; +static const unsigned char kat3302_nonce[] = { + 0xcc, 0x71, 0x45, 0xe1, 0xfc, 0x84, 0xd6, 0x4f, 0x35, 0x07, 0xf8, 0xf9, + 0xac, 0x42, 0x41, 0xb4, +}; +static const unsigned char kat3302_persstr[] = {0}; +static const unsigned char kat3302_entropyinpr1[] = { + 0xbb, 0xdb, 0x42, 0x77, 0x43, 0xda, 0x0c, 0x16, 0x83, 0x77, 0x21, 0x81, + 0x75, 0x57, 0x8c, 0x47, 0xf9, 0xac, 0x9e, 0xe8, 0x6c, 0x0e, 0x23, 0xbf, +}; +static const unsigned char kat3302_addinpr1[] = {0}; +static const unsigned char kat3302_entropyinpr2[] = { + 0x61, 0xcf, 0xb4, 0xb9, 0x88, 0x91, 0xfa, 0xdb, 0x89, 0x9e, 0x99, 0xb2, + 0x7f, 0xa2, 0x35, 0xb6, 0x52, 0xb6, 0x6a, 0x18, 0x23, 0xbc, 0xd3, 0x3e, +}; +static const unsigned char kat3302_addinpr2[] = {0}; +static const unsigned char kat3302_retbits[] = { + 0x54, 0xbd, 0xb7, 0x97, 0x96, 0x0a, 0x5d, 0x6e, 0x20, 0x8f, 0x19, 0xb8, + 0xa9, 0xf9, 0x67, 0xf4, 0x11, 0x3a, 0x42, 0xb6, 0x6d, 0xa4, 0x73, 0xba, + 0x1e, 0x0b, 0x1a, 0x81, 0x82, 0x80, 0xf8, 0xcd, 0x16, 0x8f, 0x71, 0x95, + 0x90, 0x9d, 0x8e, 0xa3, 0x79, 0xe5, 0xe7, 0x99, 0xdd, 0x97, 0xdc, 0x0a, + 0x7b, 0x7a, 0x92, 0x0f, 0x70, 0x7f, 0x9e, 0x63, 0x91, 0x51, 0x46, 0xd8, + 0xfc, 0xe4, 0x51, 0x72, +}; +static const struct drbg_kat_pr_true kat3302_t = { + 1, kat3302_entropyin, kat3302_nonce, kat3302_persstr, + kat3302_entropyinpr1, kat3302_addinpr1, kat3302_entropyinpr2, + kat3302_addinpr2, kat3302_retbits +}; +static const struct drbg_kat kat3302 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3302_t +}; + +static const unsigned char kat3303_entropyin[] = { + 0xff, 0x8e, 0x2c, 0xc4, 0x11, 0x28, 0x43, 0xba, 0x31, 0x9a, 0x35, 0x92, + 0x2e, 0xfa, 0xa3, 0x60, 0x2d, 0x45, 0xa9, 0x46, 0x57, 0x91, 0x8e, 0x5c, +}; +static const unsigned char kat3303_nonce[] = { + 0x2d, 0xb6, 0xf5, 0xab, 0x97, 0x47, 0x77, 0x97, 0x03, 0xdd, 0x65, 0x43, + 0xe1, 0x37, 0xf3, 0x33, +}; +static const unsigned char kat3303_persstr[] = {0}; +static const unsigned char kat3303_entropyinpr1[] = { + 0x65, 0xe2, 0x25, 0xef, 0xf0, 0xdc, 0xe8, 0x6e, 0x76, 0x3b, 0x0d, 0x94, + 0x0c, 0x62, 0x62, 0xce, 0xb3, 0x5e, 0x14, 0x72, 0x50, 0x27, 0xcc, 0xe0, +}; +static const unsigned char kat3303_addinpr1[] = {0}; +static const unsigned char kat3303_entropyinpr2[] = { + 0x7a, 0xa6, 0xd4, 0x60, 0x39, 0xc2, 0x9d, 0x02, 0x42, 0xe9, 0x65, 0x1c, + 0xf6, 0x46, 0xa1, 0x69, 0x5b, 0x58, 0x54, 0x03, 0x1d, 0x6e, 0xe3, 0x11, +}; +static const unsigned char kat3303_addinpr2[] = {0}; +static const unsigned char kat3303_retbits[] = { + 0x52, 0x3c, 0x4a, 0x8d, 0xa0, 0xb9, 0x68, 0xb1, 0x62, 0x19, 0x5a, 0x4c, + 0x83, 0x08, 0x12, 0x88, 0x62, 0xe8, 0xdc, 0x50, 0x9c, 0x33, 0x90, 0xd2, + 0x75, 0x86, 0x69, 0x96, 0x16, 0xd7, 0xcf, 0x8b, 0x7e, 0xe7, 0x47, 0xd3, + 0x48, 0xa2, 0xf2, 0xad, 0x76, 0x79, 0xb1, 0xb5, 0xf6, 0x80, 0xf0, 0x02, + 0x76, 0x5b, 0x28, 0x5d, 0xaf, 0x4c, 0xab, 0xf1, 0x1d, 0x47, 0xa0, 0x40, + 0xb7, 0x38, 0x80, 0x1b, +}; +static const struct drbg_kat_pr_true kat3303_t = { + 2, kat3303_entropyin, kat3303_nonce, kat3303_persstr, + kat3303_entropyinpr1, kat3303_addinpr1, kat3303_entropyinpr2, + kat3303_addinpr2, kat3303_retbits +}; +static const struct drbg_kat kat3303 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3303_t +}; + +static const unsigned char kat3304_entropyin[] = { + 0x55, 0x02, 0x1e, 0xf0, 0x0b, 0x1e, 0xcf, 0xb8, 0x69, 0xee, 0xf3, 0xdb, + 0x0a, 0x0d, 0x23, 0xd1, 0x7b, 0x63, 0xb3, 0xe4, 0x57, 0x35, 0x24, 0x19, +}; +static const unsigned char kat3304_nonce[] = { + 0x6c, 0x00, 0xea, 0xa2, 0x67, 0xc6, 0x9e, 0x6f, 0xc4, 0x98, 0x2e, 0xed, + 0xb8, 0xee, 0x1e, 0x79, +}; +static const unsigned char kat3304_persstr[] = {0}; +static const unsigned char kat3304_entropyinpr1[] = { + 0x35, 0x0d, 0x2a, 0x14, 0xf7, 0x81, 0xb9, 0xe1, 0x52, 0x6b, 0x44, 0x04, + 0xe8, 0x16, 0xa5, 0xf4, 0xa7, 0x55, 0xa9, 0xe6, 0x82, 0x21, 0x54, 0x85, +}; +static const unsigned char kat3304_addinpr1[] = {0}; +static const unsigned char kat3304_entropyinpr2[] = { + 0x20, 0x2d, 0x43, 0xb4, 0x3c, 0x98, 0x80, 0x52, 0x30, 0xd1, 0xa1, 0x22, + 0xb8, 0x9a, 0x65, 0x42, 0x76, 0xf5, 0xd0, 0x92, 0x95, 0xac, 0x81, 0x43, +}; +static const unsigned char kat3304_addinpr2[] = {0}; +static const unsigned char kat3304_retbits[] = { + 0x81, 0x4b, 0xc0, 0xb4, 0xb1, 0xf4, 0x71, 0x1a, 0x20, 0x46, 0x21, 0xc5, + 0x4d, 0xff, 0xff, 0x67, 0x64, 0xe3, 0x55, 0xd5, 0x42, 0x18, 0xe4, 0x4c, + 0xc4, 0xb7, 0x6c, 0x9e, 0x79, 0x44, 0x79, 0xa5, 0x54, 0xa3, 0x39, 0xb3, + 0x35, 0xfa, 0xcf, 0x5e, 0x72, 0xe1, 0xea, 0x4b, 0x26, 0xb2, 0x57, 0x8b, + 0xb4, 0xc7, 0xda, 0x89, 0x80, 0xea, 0xbc, 0x7d, 0xec, 0x4e, 0x32, 0x47, + 0x62, 0x20, 0xde, 0x6e, +}; +static const struct drbg_kat_pr_true kat3304_t = { + 3, kat3304_entropyin, kat3304_nonce, kat3304_persstr, + kat3304_entropyinpr1, kat3304_addinpr1, kat3304_entropyinpr2, + kat3304_addinpr2, kat3304_retbits +}; +static const struct drbg_kat kat3304 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3304_t +}; + +static const unsigned char kat3305_entropyin[] = { + 0x2e, 0xb3, 0xae, 0x37, 0x60, 0xb6, 0x80, 0xa0, 0x26, 0xcb, 0x70, 0x98, + 0x1b, 0x28, 0x46, 0x2c, 0x14, 0x6a, 0x48, 0x39, 0xfe, 0xba, 0x34, 0xc5, +}; +static const unsigned char kat3305_nonce[] = { + 0x1c, 0x77, 0x49, 0x39, 0xf2, 0xfd, 0x46, 0xa6, 0x34, 0x3a, 0x9c, 0x56, + 0x9d, 0xeb, 0xef, 0x62, +}; +static const unsigned char kat3305_persstr[] = {0}; +static const unsigned char kat3305_entropyinpr1[] = { + 0x16, 0x75, 0x18, 0x83, 0x59, 0x5b, 0xa7, 0xa1, 0xa0, 0xda, 0x38, 0x3e, + 0x25, 0x8f, 0x11, 0xa1, 0xc8, 0x2d, 0x39, 0x9d, 0x16, 0x3b, 0x79, 0x26, +}; +static const unsigned char kat3305_addinpr1[] = {0}; +static const unsigned char kat3305_entropyinpr2[] = { + 0x7b, 0x2a, 0x0f, 0x3e, 0xc4, 0x8d, 0x7a, 0x62, 0x6a, 0x02, 0x18, 0x25, + 0xa9, 0x91, 0x24, 0xf9, 0x0f, 0x2a, 0xcb, 0xc5, 0x09, 0x74, 0x1b, 0x89, +}; +static const unsigned char kat3305_addinpr2[] = {0}; +static const unsigned char kat3305_retbits[] = { + 0xc4, 0x2e, 0x67, 0x6d, 0x9a, 0x7b, 0x0c, 0x2a, 0xd6, 0x90, 0x98, 0xa6, + 0x4e, 0x10, 0x36, 0x48, 0x95, 0x02, 0x97, 0xaa, 0x10, 0x3b, 0xd2, 0xfa, + 0x4a, 0x35, 0xac, 0xd4, 0xec, 0x85, 0x15, 0xa3, 0x87, 0x94, 0x8f, 0x3b, + 0xff, 0xca, 0xbf, 0x05, 0x2a, 0xeb, 0xce, 0x6e, 0x2b, 0x7b, 0x58, 0xd4, + 0x0a, 0x8e, 0x9f, 0xe1, 0x94, 0x52, 0x31, 0x40, 0xc9, 0x5d, 0xf1, 0xc2, + 0x3f, 0x92, 0x2e, 0x50, +}; +static const struct drbg_kat_pr_true kat3305_t = { + 4, kat3305_entropyin, kat3305_nonce, kat3305_persstr, + kat3305_entropyinpr1, kat3305_addinpr1, kat3305_entropyinpr2, + kat3305_addinpr2, kat3305_retbits +}; +static const struct drbg_kat kat3305 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3305_t +}; + +static const unsigned char kat3306_entropyin[] = { + 0x55, 0xe8, 0xc6, 0x05, 0x2e, 0xfa, 0x83, 0x9a, 0xc1, 0x4d, 0x63, 0x2f, + 0xa6, 0x9c, 0xc1, 0xbf, 0x74, 0x2d, 0x6b, 0x24, 0x9e, 0x4a, 0xa8, 0x0f, +}; +static const unsigned char kat3306_nonce[] = { + 0x27, 0xfb, 0xe6, 0xd5, 0x7d, 0x5b, 0x7f, 0x33, 0x06, 0x31, 0x2a, 0x5a, + 0x50, 0x1c, 0xc4, 0x69, +}; +static const unsigned char kat3306_persstr[] = {0}; +static const unsigned char kat3306_entropyinpr1[] = { + 0x81, 0x1c, 0xdd, 0xf9, 0x20, 0x2f, 0x2b, 0x9b, 0xcc, 0x35, 0x53, 0x9c, + 0x37, 0xf4, 0xe2, 0x75, 0x97, 0x93, 0x8c, 0xff, 0x74, 0x3c, 0x25, 0x8c, +}; +static const unsigned char kat3306_addinpr1[] = {0}; +static const unsigned char kat3306_entropyinpr2[] = { + 0x73, 0xef, 0x38, 0xcf, 0xa3, 0x97, 0x70, 0xc9, 0x0b, 0x4f, 0x05, 0xcc, + 0xda, 0xe4, 0x92, 0x27, 0x8f, 0xc6, 0x8d, 0x1e, 0x3e, 0x56, 0x9c, 0xa7, +}; +static const unsigned char kat3306_addinpr2[] = {0}; +static const unsigned char kat3306_retbits[] = { + 0x12, 0x87, 0xf4, 0x05, 0xa8, 0x90, 0x05, 0xd6, 0x73, 0x8b, 0x73, 0xb1, + 0x51, 0x6e, 0x4b, 0xb1, 0xb2, 0x25, 0x85, 0x43, 0xd2, 0x4d, 0x18, 0xc9, + 0xe5, 0x34, 0x10, 0x28, 0xc3, 0x9b, 0x21, 0x7c, 0xe7, 0xba, 0xce, 0xad, + 0xe8, 0x0f, 0xe0, 0x33, 0x50, 0x4c, 0xaa, 0x9a, 0x2b, 0x47, 0xcd, 0x2c, + 0x7b, 0x3c, 0xce, 0xc4, 0x73, 0x62, 0x3c, 0x75, 0x26, 0x07, 0x22, 0xb7, + 0x18, 0x2c, 0xb6, 0x63, +}; +static const struct drbg_kat_pr_true kat3306_t = { + 5, kat3306_entropyin, kat3306_nonce, kat3306_persstr, + kat3306_entropyinpr1, kat3306_addinpr1, kat3306_entropyinpr2, + kat3306_addinpr2, kat3306_retbits +}; +static const struct drbg_kat kat3306 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3306_t +}; + +static const unsigned char kat3307_entropyin[] = { + 0x71, 0x53, 0xb4, 0xec, 0x44, 0x6c, 0x75, 0x7a, 0xbc, 0x46, 0x1f, 0x04, + 0x52, 0x4f, 0x82, 0xaf, 0x9a, 0xe1, 0x7f, 0xa1, 0x43, 0x2c, 0x6f, 0x07, +}; +static const unsigned char kat3307_nonce[] = { + 0x2e, 0xaa, 0xb2, 0x16, 0x66, 0x94, 0x67, 0x4b, 0x26, 0x3f, 0x65, 0xfe, + 0x3b, 0x1f, 0x27, 0x3e, +}; +static const unsigned char kat3307_persstr[] = {0}; +static const unsigned char kat3307_entropyinpr1[] = { + 0xf7, 0x95, 0xfe, 0xa7, 0x05, 0x26, 0xb1, 0xb0, 0xa5, 0xfc, 0xdc, 0x1b, + 0x0b, 0x21, 0xa2, 0x2b, 0xbc, 0x16, 0x31, 0xac, 0x6b, 0x58, 0x21, 0x19, +}; +static const unsigned char kat3307_addinpr1[] = {0}; +static const unsigned char kat3307_entropyinpr2[] = { + 0x18, 0xfd, 0x4c, 0xe8, 0xb7, 0x42, 0x99, 0xda, 0x60, 0x64, 0x9c, 0xd8, + 0x06, 0x80, 0xdc, 0x49, 0x2b, 0xb1, 0x9d, 0x64, 0xf6, 0x93, 0x1f, 0xaf, +}; +static const unsigned char kat3307_addinpr2[] = {0}; +static const unsigned char kat3307_retbits[] = { + 0x72, 0x7f, 0x6c, 0x39, 0x24, 0x93, 0x70, 0xbb, 0xaf, 0xb8, 0xa6, 0x4a, + 0xb5, 0x25, 0xee, 0xff, 0x32, 0xa2, 0x41, 0xa7, 0xdc, 0x19, 0xd5, 0xc7, + 0xe3, 0x4f, 0x95, 0xba, 0xed, 0x54, 0x0b, 0xee, 0x1b, 0x3b, 0x9e, 0xee, + 0x6a, 0x56, 0xaa, 0x8f, 0x89, 0xff, 0x19, 0xaf, 0x7b, 0x5b, 0x8d, 0x94, + 0x72, 0xfb, 0x9b, 0x89, 0xc8, 0xc1, 0x11, 0xd3, 0x3c, 0xe4, 0xc1, 0x6f, + 0x4c, 0xb7, 0x42, 0xe6, +}; +static const struct drbg_kat_pr_true kat3307_t = { + 6, kat3307_entropyin, kat3307_nonce, kat3307_persstr, + kat3307_entropyinpr1, kat3307_addinpr1, kat3307_entropyinpr2, + kat3307_addinpr2, kat3307_retbits +}; +static const struct drbg_kat kat3307 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3307_t +}; + +static const unsigned char kat3308_entropyin[] = { + 0x0b, 0x8a, 0x24, 0xa9, 0xc3, 0x72, 0xaa, 0x3a, 0x40, 0x75, 0x37, 0xd8, + 0xef, 0x2f, 0x7c, 0x43, 0x22, 0x1c, 0xa9, 0x10, 0xe0, 0x54, 0x7b, 0x37, +}; +static const unsigned char kat3308_nonce[] = { + 0x5e, 0x64, 0x4f, 0x69, 0x4b, 0x7c, 0xbb, 0xb9, 0xe7, 0xb1, 0x5e, 0x75, + 0x96, 0xd9, 0x9d, 0x58, +}; +static const unsigned char kat3308_persstr[] = {0}; +static const unsigned char kat3308_entropyinpr1[] = { + 0xa3, 0x86, 0x4f, 0x4a, 0x3a, 0x2b, 0xf8, 0xb6, 0x89, 0x78, 0xcc, 0x66, + 0xae, 0x04, 0x6b, 0x95, 0x3f, 0x6c, 0xc7, 0x53, 0xb2, 0x67, 0xd2, 0x9c, +}; +static const unsigned char kat3308_addinpr1[] = {0}; +static const unsigned char kat3308_entropyinpr2[] = { + 0x10, 0xf9, 0x69, 0x10, 0xc2, 0xa1, 0x46, 0xdd, 0x1b, 0xb9, 0x69, 0x2b, + 0x6e, 0xf8, 0x83, 0xf3, 0x5a, 0xdb, 0x0c, 0x88, 0x42, 0x65, 0x03, 0x93, +}; +static const unsigned char kat3308_addinpr2[] = {0}; +static const unsigned char kat3308_retbits[] = { + 0x56, 0x13, 0x04, 0x4b, 0x9c, 0x3f, 0xcf, 0x7d, 0xf6, 0xaf, 0xb4, 0x2e, + 0xcd, 0x95, 0xe4, 0x03, 0x13, 0x5a, 0x01, 0x9c, 0xfd, 0x51, 0x5b, 0xfb, + 0x90, 0x22, 0x8a, 0xf8, 0xe9, 0x50, 0x5c, 0x9e, 0xd6, 0x84, 0x09, 0x3e, + 0xfb, 0xf7, 0xd5, 0x1d, 0x14, 0xab, 0x9e, 0xf0, 0x6f, 0x35, 0xf8, 0x1e, + 0x24, 0xa0, 0x65, 0xe3, 0xb6, 0x61, 0x83, 0x65, 0x5b, 0x9e, 0xcf, 0x32, + 0xf2, 0xb0, 0x4f, 0x8e, +}; +static const struct drbg_kat_pr_true kat3308_t = { + 7, kat3308_entropyin, kat3308_nonce, kat3308_persstr, + kat3308_entropyinpr1, kat3308_addinpr1, kat3308_entropyinpr2, + kat3308_addinpr2, kat3308_retbits +}; +static const struct drbg_kat kat3308 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3308_t +}; + +static const unsigned char kat3309_entropyin[] = { + 0x0c, 0xfd, 0x36, 0xe8, 0x79, 0x96, 0xd8, 0x33, 0xb9, 0x22, 0xb4, 0xd9, + 0xb5, 0x46, 0x91, 0xf7, 0xd9, 0x52, 0x08, 0x13, 0x05, 0xff, 0xbc, 0x60, +}; +static const unsigned char kat3309_nonce[] = { + 0xde, 0xee, 0x33, 0x10, 0x31, 0xec, 0x17, 0xb1, 0x42, 0xd8, 0x9b, 0x67, + 0x9d, 0xe7, 0x8a, 0xe8, +}; +static const unsigned char kat3309_persstr[] = {0}; +static const unsigned char kat3309_entropyinpr1[] = { + 0xe2, 0xa9, 0xe8, 0xb0, 0x35, 0xf3, 0x19, 0xf4, 0x9b, 0x76, 0x18, 0xc3, + 0xbc, 0x4e, 0xcb, 0xc5, 0xb9, 0x4f, 0x80, 0xdd, 0xb6, 0xee, 0xba, 0x16, +}; +static const unsigned char kat3309_addinpr1[] = {0}; +static const unsigned char kat3309_entropyinpr2[] = { + 0xa0, 0xae, 0xdc, 0x1b, 0xc2, 0x75, 0x25, 0xc4, 0x73, 0xec, 0x69, 0x57, + 0xf4, 0x6e, 0x38, 0x04, 0x64, 0x29, 0x97, 0xbb, 0xf1, 0x5c, 0xad, 0xd4, +}; +static const unsigned char kat3309_addinpr2[] = {0}; +static const unsigned char kat3309_retbits[] = { + 0x56, 0x9f, 0xc2, 0xf0, 0x3f, 0xd5, 0x01, 0x18, 0xa2, 0xb6, 0x18, 0x79, + 0xf8, 0xf3, 0xd4, 0xe0, 0xbd, 0xc4, 0xf7, 0x6c, 0x15, 0x06, 0x38, 0x18, + 0x2d, 0xda, 0x2b, 0x11, 0x5a, 0x9f, 0x13, 0x6c, 0x9c, 0xf6, 0xb9, 0x9f, + 0x7e, 0xf6, 0x96, 0x8d, 0xca, 0xf9, 0x48, 0x0a, 0x80, 0x8a, 0x4c, 0x4d, + 0x45, 0xd5, 0xb5, 0x48, 0x5e, 0xb5, 0x0c, 0x4c, 0x48, 0xdc, 0x54, 0x29, + 0xa7, 0x8f, 0x67, 0x03, +}; +static const struct drbg_kat_pr_true kat3309_t = { + 8, kat3309_entropyin, kat3309_nonce, kat3309_persstr, + kat3309_entropyinpr1, kat3309_addinpr1, kat3309_entropyinpr2, + kat3309_addinpr2, kat3309_retbits +}; +static const struct drbg_kat kat3309 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3309_t +}; + +static const unsigned char kat3310_entropyin[] = { + 0x6b, 0x05, 0x01, 0x43, 0x34, 0x99, 0x05, 0x91, 0xbb, 0xbc, 0x30, 0xdd, + 0x60, 0x11, 0xaa, 0x69, 0x98, 0x82, 0x84, 0xac, 0x3f, 0xbc, 0x17, 0x32, +}; +static const unsigned char kat3310_nonce[] = { + 0x6f, 0x82, 0xd5, 0x79, 0xbc, 0x6b, 0xcf, 0x7a, 0x3f, 0x01, 0x0c, 0x93, + 0x89, 0x8c, 0xee, 0xfc, +}; +static const unsigned char kat3310_persstr[] = {0}; +static const unsigned char kat3310_entropyinpr1[] = { + 0xa9, 0xdb, 0x48, 0x61, 0x86, 0x86, 0x56, 0x14, 0xce, 0x58, 0xe4, 0x26, + 0x5b, 0xcc, 0xab, 0x7c, 0x73, 0x59, 0x9f, 0x9a, 0x2b, 0x89, 0xf1, 0x3e, +}; +static const unsigned char kat3310_addinpr1[] = {0}; +static const unsigned char kat3310_entropyinpr2[] = { + 0x25, 0x2b, 0x29, 0xb6, 0x5b, 0x9c, 0x0a, 0x4e, 0x7b, 0x00, 0x65, 0x42, + 0x6f, 0xca, 0x03, 0x79, 0xdf, 0xb9, 0x8b, 0x37, 0x06, 0x8c, 0xeb, 0x38, +}; +static const unsigned char kat3310_addinpr2[] = {0}; +static const unsigned char kat3310_retbits[] = { + 0xce, 0xdc, 0xf2, 0x3b, 0x01, 0xd7, 0x98, 0x18, 0x19, 0xf3, 0xfb, 0x57, + 0xf7, 0xad, 0x51, 0xf2, 0x74, 0x9c, 0xff, 0xdb, 0x97, 0x7c, 0xcd, 0x65, + 0x26, 0xa2, 0xdc, 0x52, 0x92, 0xa1, 0x49, 0xd5, 0xca, 0x48, 0x1c, 0xe5, + 0xb2, 0x97, 0xc8, 0x65, 0x9b, 0xed, 0xd0, 0xdd, 0x1d, 0x21, 0x55, 0x2d, + 0x29, 0x26, 0x28, 0x67, 0x49, 0x7e, 0xe0, 0xd4, 0x73, 0x53, 0x4c, 0xf7, + 0xc6, 0xe1, 0xd3, 0x71, +}; +static const struct drbg_kat_pr_true kat3310_t = { + 9, kat3310_entropyin, kat3310_nonce, kat3310_persstr, + kat3310_entropyinpr1, kat3310_addinpr1, kat3310_entropyinpr2, + kat3310_addinpr2, kat3310_retbits +}; +static const struct drbg_kat kat3310 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3310_t +}; + +static const unsigned char kat3311_entropyin[] = { + 0xe7, 0x42, 0x44, 0xd5, 0xd8, 0x24, 0xa4, 0x22, 0x1e, 0xcc, 0x74, 0x82, + 0x37, 0x13, 0x50, 0xc4, 0x9e, 0xe3, 0x9a, 0x01, 0x54, 0xa1, 0xbd, 0x5e, +}; +static const unsigned char kat3311_nonce[] = { + 0xfa, 0xbc, 0x00, 0x11, 0x0b, 0x66, 0x8b, 0x3f, 0x71, 0xdd, 0x65, 0xb8, + 0x20, 0x0a, 0xd4, 0xc9, +}; +static const unsigned char kat3311_persstr[] = {0}; +static const unsigned char kat3311_entropyinpr1[] = { + 0xd7, 0x8a, 0xa0, 0xff, 0x03, 0xa1, 0x9f, 0x38, 0xcb, 0xe7, 0x01, 0x7e, + 0xe1, 0x0e, 0xb5, 0xca, 0x3c, 0x5c, 0x9a, 0x05, 0x6e, 0xe5, 0x28, 0x63, +}; +static const unsigned char kat3311_addinpr1[] = {0}; +static const unsigned char kat3311_entropyinpr2[] = { + 0xfe, 0x4a, 0xac, 0x63, 0xa7, 0x4e, 0x72, 0x72, 0xb8, 0x53, 0xd4, 0xa9, + 0x72, 0xd3, 0x6f, 0x7e, 0xf9, 0xeb, 0x13, 0x2f, 0x37, 0x34, 0x85, 0xe1, +}; +static const unsigned char kat3311_addinpr2[] = {0}; +static const unsigned char kat3311_retbits[] = { + 0x52, 0x0b, 0xc1, 0x77, 0xa8, 0x3d, 0xf2, 0xff, 0x4a, 0xdd, 0xb3, 0xd4, + 0xf6, 0x5b, 0x6c, 0x5d, 0xec, 0x05, 0x88, 0x57, 0xd3, 0xef, 0x09, 0x74, + 0xe0, 0x08, 0xa3, 0x1e, 0x66, 0xad, 0x6d, 0xca, 0x84, 0x6e, 0xc0, 0x3b, + 0x27, 0x9c, 0xbb, 0x81, 0x80, 0xdf, 0xc0, 0x7a, 0x5a, 0xf6, 0x12, 0x78, + 0xd6, 0x83, 0x65, 0x83, 0x7f, 0x99, 0xf4, 0x2c, 0x4a, 0x19, 0x5f, 0x25, + 0xdb, 0xae, 0xd6, 0xd6, +}; +static const struct drbg_kat_pr_true kat3311_t = { + 10, kat3311_entropyin, kat3311_nonce, kat3311_persstr, + kat3311_entropyinpr1, kat3311_addinpr1, kat3311_entropyinpr2, + kat3311_addinpr2, kat3311_retbits +}; +static const struct drbg_kat kat3311 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3311_t +}; + +static const unsigned char kat3312_entropyin[] = { + 0xdd, 0x6b, 0x07, 0x15, 0xf8, 0xba, 0x83, 0x03, 0xac, 0xda, 0xdd, 0x3b, + 0x86, 0x65, 0x19, 0x11, 0xec, 0xf0, 0x50, 0x74, 0xf2, 0xd4, 0x87, 0xca, +}; +static const unsigned char kat3312_nonce[] = { + 0xb4, 0xbb, 0x8d, 0xe7, 0x57, 0x1a, 0x66, 0x25, 0x0d, 0xe7, 0x71, 0xcd, + 0x2d, 0x1f, 0x54, 0x75, +}; +static const unsigned char kat3312_persstr[] = {0}; +static const unsigned char kat3312_entropyinpr1[] = { + 0x10, 0xd0, 0x18, 0xad, 0x13, 0x69, 0xf9, 0x13, 0xc1, 0x54, 0xd4, 0x2e, + 0x13, 0xaa, 0xbb, 0x35, 0x7e, 0xfe, 0xb5, 0x90, 0x4b, 0x61, 0xd1, 0x33, +}; +static const unsigned char kat3312_addinpr1[] = {0}; +static const unsigned char kat3312_entropyinpr2[] = { + 0x26, 0x25, 0xb4, 0xa6, 0x8f, 0x67, 0xa4, 0x21, 0x17, 0x72, 0xae, 0x46, + 0x02, 0xca, 0x46, 0x0c, 0xbd, 0xbe, 0x77, 0x51, 0x84, 0xae, 0xdf, 0x10, +}; +static const unsigned char kat3312_addinpr2[] = {0}; +static const unsigned char kat3312_retbits[] = { + 0x3b, 0x86, 0x62, 0xd2, 0xa7, 0xe8, 0x5d, 0xb3, 0x2f, 0x82, 0xca, 0x08, + 0x24, 0x09, 0x8d, 0x3c, 0xee, 0x71, 0xe0, 0xcf, 0xe6, 0x4b, 0xf4, 0x8a, + 0xa7, 0xc5, 0x82, 0xc6, 0x7f, 0x2f, 0x33, 0xfa, 0x22, 0x58, 0x10, 0x9e, + 0xe6, 0x38, 0x96, 0x27, 0x70, 0x7f, 0x30, 0xe2, 0xaa, 0xad, 0x66, 0xa3, + 0x4e, 0xfc, 0x52, 0xb0, 0xad, 0x5e, 0x85, 0x1a, 0xb9, 0xa0, 0x1a, 0xdf, + 0x52, 0x97, 0x69, 0x1b, +}; +static const struct drbg_kat_pr_true kat3312_t = { + 11, kat3312_entropyin, kat3312_nonce, kat3312_persstr, + kat3312_entropyinpr1, kat3312_addinpr1, kat3312_entropyinpr2, + kat3312_addinpr2, kat3312_retbits +}; +static const struct drbg_kat kat3312 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3312_t +}; + +static const unsigned char kat3313_entropyin[] = { + 0x8a, 0x41, 0x68, 0x2f, 0x93, 0x71, 0x18, 0xce, 0x50, 0xc6, 0x2a, 0x0a, + 0x94, 0xea, 0xe5, 0x80, 0x0c, 0x1e, 0x29, 0x6e, 0x6b, 0xa6, 0x57, 0xb2, +}; +static const unsigned char kat3313_nonce[] = { + 0x52, 0xc9, 0x0e, 0x60, 0x5e, 0xd3, 0xde, 0x4f, 0xe0, 0x22, 0xde, 0xc2, + 0x62, 0xe1, 0x61, 0xe7, +}; +static const unsigned char kat3313_persstr[] = {0}; +static const unsigned char kat3313_entropyinpr1[] = { + 0x85, 0x43, 0x67, 0xa3, 0xee, 0x0f, 0x83, 0x53, 0x81, 0x06, 0x25, 0x71, + 0xad, 0x83, 0x1b, 0x31, 0xf9, 0x2d, 0x08, 0xd6, 0xe7, 0xbf, 0x2f, 0x00, +}; +static const unsigned char kat3313_addinpr1[] = {0}; +static const unsigned char kat3313_entropyinpr2[] = { + 0x35, 0x01, 0xa3, 0x55, 0x21, 0x0c, 0x8d, 0xdd, 0x72, 0x83, 0x44, 0x39, + 0xfb, 0x66, 0x4c, 0xf5, 0x5e, 0x56, 0x0b, 0xd9, 0x9f, 0xce, 0xb9, 0x3b, +}; +static const unsigned char kat3313_addinpr2[] = {0}; +static const unsigned char kat3313_retbits[] = { + 0x83, 0xb2, 0xae, 0xfe, 0xa6, 0x95, 0x4a, 0x67, 0xb4, 0x3c, 0x58, 0x48, + 0xee, 0x75, 0xaf, 0x33, 0xb4, 0x18, 0x41, 0xa8, 0xd8, 0x65, 0x8b, 0x5b, + 0x7a, 0xd3, 0x68, 0xef, 0x30, 0x59, 0x45, 0x4b, 0xb3, 0xf1, 0x6d, 0x4f, + 0x2d, 0xaa, 0x6c, 0xb5, 0x04, 0x4a, 0x6b, 0x60, 0xcb, 0xf5, 0x46, 0xa3, + 0x93, 0x2f, 0xe7, 0x4f, 0xd0, 0xf9, 0x4c, 0x14, 0x11, 0xe1, 0x13, 0x88, + 0x7c, 0x2d, 0x67, 0x81, +}; +static const struct drbg_kat_pr_true kat3313_t = { + 12, kat3313_entropyin, kat3313_nonce, kat3313_persstr, + kat3313_entropyinpr1, kat3313_addinpr1, kat3313_entropyinpr2, + kat3313_addinpr2, kat3313_retbits +}; +static const struct drbg_kat kat3313 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3313_t +}; + +static const unsigned char kat3314_entropyin[] = { + 0xbd, 0x8f, 0x2a, 0x00, 0x0a, 0xbb, 0x7f, 0x8a, 0x45, 0x0b, 0x22, 0xee, + 0x4f, 0x86, 0x47, 0x32, 0x62, 0x9d, 0x81, 0x28, 0x92, 0x7e, 0x94, 0x5d, +}; +static const unsigned char kat3314_nonce[] = { + 0x4f, 0x36, 0x89, 0x65, 0x42, 0xaf, 0xff, 0x79, 0x7f, 0xaf, 0x79, 0xf7, + 0xd4, 0x03, 0x60, 0x80, +}; +static const unsigned char kat3314_persstr[] = {0}; +static const unsigned char kat3314_entropyinpr1[] = { + 0xef, 0xa3, 0x45, 0x94, 0x69, 0x81, 0x52, 0xdb, 0x2d, 0xad, 0xc8, 0xbe, + 0xcd, 0xcf, 0x4f, 0xbb, 0x0e, 0xcf, 0x6f, 0x56, 0xa8, 0x9f, 0x02, 0x39, +}; +static const unsigned char kat3314_addinpr1[] = {0}; +static const unsigned char kat3314_entropyinpr2[] = { + 0x88, 0x64, 0xde, 0xe7, 0x55, 0xe1, 0xe6, 0x20, 0x78, 0x9d, 0x48, 0x65, + 0x70, 0x6a, 0xde, 0xbb, 0xbc, 0x28, 0x36, 0x22, 0xb3, 0xc2, 0x8e, 0x95, +}; +static const unsigned char kat3314_addinpr2[] = {0}; +static const unsigned char kat3314_retbits[] = { + 0x83, 0x27, 0x0f, 0x47, 0xcd, 0xf5, 0x77, 0xba, 0x39, 0xfd, 0x97, 0x81, + 0x0d, 0x1a, 0xfd, 0xb6, 0x8a, 0xc1, 0xf5, 0xf4, 0x7d, 0xd6, 0x12, 0xf5, + 0xe1, 0x55, 0xb2, 0x42, 0x2f, 0xa8, 0xa6, 0x18, 0x5c, 0x48, 0xa3, 0x9e, + 0xd2, 0x12, 0x62, 0x40, 0xa9, 0xcf, 0x87, 0x9b, 0xab, 0xd4, 0xdb, 0x6d, + 0xdd, 0x7d, 0x97, 0x84, 0x39, 0x17, 0x71, 0xf9, 0x8e, 0x01, 0x16, 0xd1, + 0xbb, 0x8e, 0xff, 0xcc, +}; +static const struct drbg_kat_pr_true kat3314_t = { + 13, kat3314_entropyin, kat3314_nonce, kat3314_persstr, + kat3314_entropyinpr1, kat3314_addinpr1, kat3314_entropyinpr2, + kat3314_addinpr2, kat3314_retbits +}; +static const struct drbg_kat kat3314 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3314_t +}; + +static const unsigned char kat3315_entropyin[] = { + 0xef, 0xfe, 0xb9, 0xcc, 0x89, 0x07, 0x9c, 0xd8, 0x96, 0xbe, 0x2d, 0xab, + 0x9e, 0xe2, 0xf4, 0xc8, 0xfb, 0x7a, 0xfb, 0xfa, 0xad, 0x38, 0x4c, 0x4a, +}; +static const unsigned char kat3315_nonce[] = { + 0xdf, 0x00, 0x92, 0xa5, 0xda, 0x10, 0xe6, 0x0a, 0xc6, 0x96, 0x95, 0xc2, + 0xfc, 0x03, 0xf0, 0xad, +}; +static const unsigned char kat3315_persstr[] = {0}; +static const unsigned char kat3315_entropyinpr1[] = { + 0x43, 0x8a, 0x63, 0x46, 0xd0, 0x14, 0x19, 0xcc, 0x88, 0x04, 0x6c, 0x23, + 0x14, 0x97, 0x45, 0xd1, 0xa2, 0xb7, 0x5a, 0x51, 0x76, 0xb9, 0xb7, 0x56, +}; +static const unsigned char kat3315_addinpr1[] = {0}; +static const unsigned char kat3315_entropyinpr2[] = { + 0xb5, 0x38, 0xb9, 0xe6, 0x2d, 0x8a, 0xb6, 0xa0, 0x16, 0xf8, 0x00, 0x46, + 0x25, 0x94, 0xf7, 0xce, 0x29, 0x8e, 0xe6, 0x6d, 0xda, 0xed, 0xa1, 0x99, +}; +static const unsigned char kat3315_addinpr2[] = {0}; +static const unsigned char kat3315_retbits[] = { + 0xa0, 0xaf, 0xb4, 0x97, 0xcd, 0xcb, 0x73, 0xe1, 0x0f, 0xc6, 0x36, 0x2c, + 0xbf, 0x2b, 0x11, 0x7f, 0x28, 0x90, 0xd3, 0xdc, 0x6f, 0x4b, 0x88, 0xb8, + 0xe2, 0x8c, 0x9d, 0xea, 0x15, 0x90, 0x20, 0x12, 0x2b, 0x10, 0x7c, 0xa4, + 0xdc, 0x84, 0x74, 0xff, 0x9a, 0x2f, 0x1c, 0xaf, 0x07, 0xeb, 0x17, 0xb4, + 0xcf, 0xa6, 0x1d, 0x45, 0x41, 0x63, 0xe6, 0x91, 0x65, 0x20, 0xbc, 0x47, + 0x3a, 0x4f, 0x62, 0x06, +}; +static const struct drbg_kat_pr_true kat3315_t = { + 14, kat3315_entropyin, kat3315_nonce, kat3315_persstr, + kat3315_entropyinpr1, kat3315_addinpr1, kat3315_entropyinpr2, + kat3315_addinpr2, kat3315_retbits +}; +static const struct drbg_kat kat3315 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 0, 64, &kat3315_t +}; + +static const unsigned char kat3316_entropyin[] = { + 0x6f, 0x7f, 0xf6, 0xc0, 0x4c, 0x09, 0x9e, 0xbc, 0xdc, 0x4d, 0x53, 0x42, + 0xf8, 0x27, 0x27, 0x23, 0xd6, 0x4d, 0xde, 0x80, 0x82, 0x92, 0xce, 0x2a, +}; +static const unsigned char kat3316_nonce[] = { + 0x49, 0x51, 0xa2, 0x54, 0xfb, 0xa3, 0xf5, 0x54, 0x3c, 0xd0, 0x79, 0xde, + 0x76, 0x57, 0x0c, 0x1a, +}; +static const unsigned char kat3316_persstr[] = {0}; +static const unsigned char kat3316_entropyinpr1[] = { + 0x7e, 0x23, 0x57, 0x52, 0xe0, 0xf7, 0x91, 0xe8, 0x52, 0x33, 0xc9, 0xa6, + 0x7f, 0x56, 0x87, 0x55, 0x29, 0xbf, 0xc8, 0x1f, 0x3a, 0x5b, 0x1c, 0x96, +}; +static const unsigned char kat3316_addinpr1[] = { + 0x0a, 0x12, 0x5b, 0xbf, 0x9b, 0xb1, 0x92, 0x76, 0xc9, 0x45, 0xfd, 0x5d, + 0x73, 0x26, 0xf8, 0x92, 0xb4, 0x90, 0x55, 0x8e, 0x63, 0xf6, 0xe1, 0xf7, + 0x73, 0x29, 0x31, 0x11, 0x11, 0xe8, 0x5a, 0x18, +}; +static const unsigned char kat3316_entropyinpr2[] = { + 0xac, 0x11, 0x47, 0x10, 0xb4, 0x55, 0xbb, 0x97, 0xeb, 0x00, 0x5a, 0xbd, + 0xaa, 0x43, 0xa2, 0xd6, 0xbd, 0xb8, 0xad, 0x72, 0xbb, 0x23, 0x1d, 0xa8, +}; +static const unsigned char kat3316_addinpr2[] = { + 0xfc, 0x35, 0x3e, 0xc1, 0x70, 0x3c, 0xe1, 0xb2, 0x83, 0xed, 0xc0, 0xf7, + 0x6e, 0x76, 0xb4, 0xb6, 0xf5, 0xf2, 0x08, 0xef, 0x56, 0xb1, 0x20, 0x60, + 0x40, 0x4c, 0xbb, 0x32, 0x35, 0x5c, 0x94, 0x17, +}; +static const unsigned char kat3316_retbits[] = { + 0xa1, 0xe2, 0xdb, 0x67, 0x9d, 0xdc, 0x26, 0x96, 0x31, 0x66, 0x67, 0xfd, + 0xe3, 0x1e, 0xbc, 0x2b, 0x9f, 0xea, 0x01, 0x72, 0x50, 0xdf, 0xfd, 0x32, + 0xb2, 0x3b, 0x46, 0x86, 0x40, 0x73, 0xbe, 0x8b, 0x3c, 0x6b, 0xac, 0x56, + 0x72, 0x14, 0x23, 0x91, 0xcc, 0x12, 0x8b, 0x12, 0x30, 0xea, 0x13, 0xa2, + 0xff, 0x9e, 0x18, 0x24, 0x93, 0x30, 0x09, 0x62, 0x5b, 0xc6, 0xa8, 0xd2, + 0x9f, 0x47, 0x59, 0x41, +}; +static const struct drbg_kat_pr_true kat3316_t = { + 0, kat3316_entropyin, kat3316_nonce, kat3316_persstr, + kat3316_entropyinpr1, kat3316_addinpr1, kat3316_entropyinpr2, + kat3316_addinpr2, kat3316_retbits +}; +static const struct drbg_kat kat3316 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3316_t +}; + +static const unsigned char kat3317_entropyin[] = { + 0x36, 0xd1, 0x62, 0x02, 0x9d, 0x90, 0xf8, 0x30, 0x58, 0x7a, 0x6e, 0x35, + 0xd4, 0xec, 0xc8, 0x60, 0x2d, 0xda, 0x10, 0x98, 0xde, 0xc6, 0x8a, 0x69, +}; +static const unsigned char kat3317_nonce[] = { + 0xa8, 0x87, 0x98, 0x4c, 0x23, 0x2a, 0x6d, 0x9f, 0x51, 0x5b, 0x4a, 0x3c, + 0xae, 0x33, 0x35, 0x4a, +}; +static const unsigned char kat3317_persstr[] = {0}; +static const unsigned char kat3317_entropyinpr1[] = { + 0xae, 0xac, 0x85, 0x1a, 0x81, 0x0f, 0xa2, 0x1c, 0xe3, 0x8d, 0x47, 0x6d, + 0x03, 0xbf, 0xd9, 0xea, 0xe4, 0x5c, 0xa6, 0xe4, 0x4e, 0x60, 0xa4, 0xd1, +}; +static const unsigned char kat3317_addinpr1[] = { + 0x9b, 0x94, 0x7e, 0x1e, 0x19, 0x92, 0x77, 0x76, 0x8c, 0xad, 0x0f, 0x09, + 0x83, 0xc2, 0xfb, 0x6d, 0xfd, 0xf0, 0x07, 0x71, 0xef, 0x6a, 0x6b, 0xcf, + 0xb8, 0x93, 0x8f, 0x55, 0xb8, 0x07, 0xd4, 0x05, +}; +static const unsigned char kat3317_entropyinpr2[] = { + 0x81, 0xce, 0x73, 0x9b, 0x37, 0x3b, 0x5b, 0xee, 0xa4, 0xa4, 0xa6, 0xe9, + 0xfb, 0xb0, 0x12, 0x43, 0x46, 0x88, 0x23, 0xce, 0x05, 0x21, 0x13, 0x5a, +}; +static const unsigned char kat3317_addinpr2[] = { + 0xce, 0x48, 0xf1, 0x42, 0xb3, 0x6a, 0xee, 0x5e, 0x23, 0xd6, 0x3a, 0x38, + 0x4c, 0x43, 0x33, 0xbb, 0xaa, 0x57, 0x6b, 0x3a, 0x49, 0xdc, 0xa1, 0x7e, + 0xc9, 0x95, 0x8f, 0x51, 0xca, 0x70, 0x5f, 0x51, +}; +static const unsigned char kat3317_retbits[] = { + 0x69, 0xcd, 0x06, 0xc9, 0xa4, 0x8c, 0x89, 0xdc, 0x60, 0x86, 0x70, 0x70, + 0x12, 0x9e, 0xcf, 0x4e, 0xdf, 0x72, 0xe1, 0x9c, 0x67, 0x42, 0xf3, 0xf6, + 0xad, 0x1a, 0xe2, 0xa1, 0x0f, 0x02, 0x6b, 0x88, 0xd8, 0xbd, 0x74, 0xf8, + 0xb5, 0xe6, 0x68, 0xc2, 0x6f, 0x97, 0xd5, 0xae, 0xcd, 0x34, 0x3e, 0x01, + 0x86, 0x31, 0xd5, 0x43, 0x5b, 0x17, 0x42, 0xa6, 0xd9, 0xd1, 0xec, 0xf5, + 0xe0, 0x52, 0xca, 0x28, +}; +static const struct drbg_kat_pr_true kat3317_t = { + 1, kat3317_entropyin, kat3317_nonce, kat3317_persstr, + kat3317_entropyinpr1, kat3317_addinpr1, kat3317_entropyinpr2, + kat3317_addinpr2, kat3317_retbits +}; +static const struct drbg_kat kat3317 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3317_t +}; + +static const unsigned char kat3318_entropyin[] = { + 0x1a, 0x52, 0xf5, 0x16, 0x3e, 0x9d, 0x85, 0xc6, 0x0e, 0xd7, 0x81, 0x4e, + 0x34, 0x06, 0x2b, 0xef, 0x2a, 0x43, 0xb4, 0x25, 0x95, 0xdb, 0x94, 0x1a, +}; +static const unsigned char kat3318_nonce[] = { + 0x53, 0xdb, 0xed, 0xfa, 0xe1, 0x55, 0x17, 0x10, 0x56, 0xb8, 0x88, 0x96, + 0xcd, 0x25, 0x13, 0x3c, +}; +static const unsigned char kat3318_persstr[] = {0}; +static const unsigned char kat3318_entropyinpr1[] = { + 0xb8, 0x37, 0x00, 0x24, 0x8b, 0xd4, 0x13, 0xdc, 0xe6, 0x1d, 0x12, 0xfa, + 0x26, 0x27, 0x0a, 0xd5, 0x8c, 0x94, 0x22, 0xac, 0xb0, 0x96, 0x56, 0xdb, +}; +static const unsigned char kat3318_addinpr1[] = { + 0x91, 0xd5, 0x5c, 0x47, 0x33, 0xfa, 0x29, 0x10, 0x07, 0x01, 0xed, 0x52, + 0x5b, 0xc0, 0x01, 0x96, 0x39, 0x46, 0x6c, 0x81, 0x7c, 0xc4, 0xb5, 0xbd, + 0xf6, 0x85, 0x78, 0xc7, 0x2c, 0xae, 0x5c, 0xca, +}; +static const unsigned char kat3318_entropyinpr2[] = { + 0x3a, 0xac, 0x8e, 0x6a, 0x63, 0x6e, 0xd6, 0xab, 0xa5, 0xb1, 0xb9, 0x49, + 0x22, 0x53, 0x81, 0xfe, 0x27, 0xca, 0x5d, 0x7f, 0xe0, 0xcb, 0x46, 0x13, +}; +static const unsigned char kat3318_addinpr2[] = { + 0x99, 0xa1, 0x42, 0x96, 0xc6, 0x96, 0xd4, 0x1b, 0xa1, 0x1d, 0x3a, 0xd0, + 0x36, 0xe4, 0xcf, 0x2b, 0xff, 0x39, 0x44, 0xd8, 0x66, 0x26, 0xb8, 0x92, + 0x53, 0xc5, 0x5c, 0x50, 0x41, 0x58, 0x62, 0x97, +}; +static const unsigned char kat3318_retbits[] = { + 0x9c, 0xf2, 0xc5, 0x9d, 0x81, 0xd2, 0xcb, 0x8e, 0x3b, 0x21, 0xed, 0xd8, + 0xf2, 0x22, 0x17, 0x3f, 0x00, 0x3d, 0xa1, 0xe4, 0x0c, 0x5e, 0x18, 0x1c, + 0x29, 0x87, 0xb5, 0xab, 0x4c, 0xb4, 0x28, 0x64, 0x7f, 0x42, 0xe5, 0x00, + 0x26, 0xf7, 0xd4, 0xa5, 0x42, 0xad, 0x39, 0x28, 0x5e, 0x40, 0x16, 0x02, + 0x2c, 0x60, 0x8e, 0xc3, 0xbe, 0x45, 0x7d, 0xbd, 0x79, 0x4c, 0x90, 0xc6, + 0xbd, 0x54, 0x9b, 0x45, +}; +static const struct drbg_kat_pr_true kat3318_t = { + 2, kat3318_entropyin, kat3318_nonce, kat3318_persstr, + kat3318_entropyinpr1, kat3318_addinpr1, kat3318_entropyinpr2, + kat3318_addinpr2, kat3318_retbits +}; +static const struct drbg_kat kat3318 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3318_t +}; + +static const unsigned char kat3319_entropyin[] = { + 0x26, 0x66, 0xbb, 0x8b, 0x82, 0xc3, 0x4e, 0x47, 0x39, 0x20, 0xad, 0xce, + 0xeb, 0x05, 0xd8, 0x78, 0x50, 0x1b, 0x2d, 0x85, 0x0f, 0xd4, 0x95, 0xd2, +}; +static const unsigned char kat3319_nonce[] = { + 0x4a, 0x1b, 0x6f, 0x23, 0xed, 0xf9, 0x3a, 0x22, 0x39, 0xf3, 0x5f, 0xe5, + 0x19, 0xe3, 0x88, 0x0b, +}; +static const unsigned char kat3319_persstr[] = {0}; +static const unsigned char kat3319_entropyinpr1[] = { + 0xbf, 0xac, 0x90, 0xf8, 0x2b, 0x93, 0x7c, 0x3a, 0xa7, 0xff, 0x30, 0x42, + 0x2c, 0xda, 0x77, 0x1c, 0x7e, 0x11, 0x2f, 0x7f, 0x0d, 0xc7, 0x8f, 0x55, +}; +static const unsigned char kat3319_addinpr1[] = { + 0x6d, 0x6a, 0x2d, 0x3c, 0x1a, 0x0e, 0xe1, 0x3d, 0x29, 0x1d, 0xfd, 0xc0, + 0x13, 0xda, 0x92, 0x3e, 0xf1, 0xa2, 0x69, 0x81, 0xfc, 0x37, 0xf6, 0x24, + 0x2a, 0x13, 0x55, 0x03, 0xdd, 0xe5, 0xd8, 0x5e, +}; +static const unsigned char kat3319_entropyinpr2[] = { + 0xb1, 0x81, 0xeb, 0xc9, 0x97, 0xa9, 0x35, 0x11, 0x49, 0xa1, 0xc5, 0x08, + 0xc7, 0xd7, 0x03, 0x2a, 0x9a, 0x6f, 0xee, 0x5f, 0x58, 0xbd, 0xc0, 0x62, +}; +static const unsigned char kat3319_addinpr2[] = { + 0x56, 0xd9, 0xb4, 0x2a, 0xef, 0xd6, 0xed, 0xce, 0xdc, 0x01, 0x15, 0xec, + 0x49, 0x6f, 0x48, 0xdf, 0x76, 0x79, 0x25, 0x78, 0x45, 0x0c, 0x7b, 0xfa, + 0x93, 0x71, 0x21, 0x23, 0xfb, 0x96, 0x9a, 0x56, +}; +static const unsigned char kat3319_retbits[] = { + 0xa2, 0x4d, 0xa1, 0x36, 0x41, 0x83, 0x80, 0x0b, 0xb8, 0xa8, 0x55, 0x65, + 0xf4, 0x7c, 0xcc, 0x68, 0xe7, 0x3e, 0x90, 0xf7, 0xf7, 0x23, 0x65, 0xfe, + 0x90, 0x53, 0x71, 0x65, 0x45, 0x81, 0x88, 0xdb, 0xb0, 0x94, 0x3f, 0x92, + 0x60, 0xf1, 0xbc, 0xc5, 0x98, 0x76, 0x5f, 0xaa, 0x8d, 0x6f, 0x9c, 0xd8, + 0x8e, 0xe1, 0x95, 0x25, 0x61, 0x6e, 0xe5, 0xd6, 0xbc, 0xb3, 0x00, 0x6a, + 0xee, 0xa2, 0xa5, 0xba, +}; +static const struct drbg_kat_pr_true kat3319_t = { + 3, kat3319_entropyin, kat3319_nonce, kat3319_persstr, + kat3319_entropyinpr1, kat3319_addinpr1, kat3319_entropyinpr2, + kat3319_addinpr2, kat3319_retbits +}; +static const struct drbg_kat kat3319 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3319_t +}; + +static const unsigned char kat3320_entropyin[] = { + 0xe6, 0x56, 0x9f, 0xcb, 0x2c, 0x27, 0xdf, 0x67, 0x7a, 0x33, 0x9a, 0x60, + 0x0d, 0xa8, 0x33, 0x62, 0x93, 0xfa, 0xf6, 0xed, 0x45, 0x59, 0x8c, 0x74, +}; +static const unsigned char kat3320_nonce[] = { + 0x93, 0x01, 0x50, 0x5a, 0xe5, 0xe6, 0xa8, 0x99, 0x20, 0x03, 0x66, 0xc7, + 0xa3, 0x3f, 0xbe, 0x43, +}; +static const unsigned char kat3320_persstr[] = {0}; +static const unsigned char kat3320_entropyinpr1[] = { + 0xaf, 0x79, 0x04, 0x8c, 0xdc, 0x78, 0x20, 0xb7, 0xaa, 0xd6, 0xf5, 0x94, + 0x05, 0xb6, 0xbd, 0x2e, 0x49, 0x00, 0xba, 0x46, 0xe5, 0x07, 0xb3, 0x6e, +}; +static const unsigned char kat3320_addinpr1[] = { + 0x07, 0xb6, 0x7b, 0x48, 0x6c, 0x2a, 0x6f, 0xb9, 0xa7, 0x56, 0x65, 0x44, + 0xce, 0x5f, 0x5f, 0x07, 0x1e, 0xb6, 0x0d, 0xd4, 0x26, 0x0d, 0x99, 0xae, + 0xa7, 0x98, 0x74, 0x2e, 0x0b, 0x2e, 0x6e, 0x89, +}; +static const unsigned char kat3320_entropyinpr2[] = { + 0xdb, 0xc3, 0xf5, 0x10, 0x2d, 0x0d, 0xef, 0xac, 0x2c, 0x24, 0x83, 0xed, + 0x6a, 0xaa, 0xa8, 0x72, 0xe2, 0x04, 0xd2, 0xb4, 0xb0, 0xf5, 0xfc, 0x84, +}; +static const unsigned char kat3320_addinpr2[] = { + 0x78, 0x64, 0x4e, 0x0e, 0xd2, 0xda, 0xb2, 0xff, 0x9f, 0x65, 0x34, 0xd6, + 0xaf, 0xc8, 0xa5, 0x17, 0x14, 0x8a, 0x44, 0xb8, 0x5b, 0xc4, 0x25, 0x03, + 0xb3, 0x49, 0x45, 0xb3, 0x0a, 0x46, 0xb7, 0x11, +}; +static const unsigned char kat3320_retbits[] = { + 0x39, 0xcc, 0xa2, 0x46, 0x63, 0x0c, 0x6d, 0x34, 0x0b, 0x77, 0xbc, 0x65, + 0xa6, 0x19, 0xa0, 0x15, 0xbe, 0xcd, 0x0f, 0xca, 0xd7, 0x2c, 0x8e, 0x01, + 0xed, 0x6f, 0xac, 0x4a, 0x86, 0x1f, 0x19, 0x01, 0xd0, 0xc4, 0x22, 0xc5, + 0x2a, 0xe9, 0xa5, 0x0e, 0x0e, 0x4e, 0x2c, 0x19, 0xd1, 0x90, 0xca, 0xbd, + 0x83, 0x33, 0xd2, 0x39, 0x9d, 0x7d, 0x66, 0x6d, 0x20, 0x8b, 0x98, 0x13, + 0xa5, 0x65, 0x32, 0x43, +}; +static const struct drbg_kat_pr_true kat3320_t = { + 4, kat3320_entropyin, kat3320_nonce, kat3320_persstr, + kat3320_entropyinpr1, kat3320_addinpr1, kat3320_entropyinpr2, + kat3320_addinpr2, kat3320_retbits +}; +static const struct drbg_kat kat3320 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3320_t +}; + +static const unsigned char kat3321_entropyin[] = { + 0x7c, 0xd6, 0x93, 0x63, 0xc9, 0x5b, 0x34, 0xb5, 0x7f, 0x6a, 0x00, 0x0f, + 0x8b, 0x8c, 0x75, 0xd8, 0x23, 0x37, 0xed, 0xb1, 0x54, 0xce, 0x4b, 0xc0, +}; +static const unsigned char kat3321_nonce[] = { + 0xdc, 0x4c, 0x29, 0xfe, 0x39, 0x10, 0xbf, 0xb1, 0xf1, 0xd5, 0xac, 0x51, + 0x9f, 0x74, 0x00, 0x8f, +}; +static const unsigned char kat3321_persstr[] = {0}; +static const unsigned char kat3321_entropyinpr1[] = { + 0xdd, 0xc6, 0x06, 0xc3, 0xbe, 0x28, 0x63, 0x15, 0xa8, 0xee, 0x94, 0x63, + 0xc3, 0xec, 0xa2, 0x61, 0xcf, 0xf6, 0x1e, 0xa3, 0x1b, 0x79, 0x34, 0xb4, +}; +static const unsigned char kat3321_addinpr1[] = { + 0xe2, 0xe1, 0x66, 0xf0, 0x6d, 0xc5, 0x95, 0x28, 0x27, 0xed, 0xb8, 0x71, + 0xb4, 0x7d, 0x01, 0xdf, 0x19, 0x6f, 0x1b, 0x20, 0x2b, 0x5c, 0x06, 0xce, + 0x98, 0xd2, 0xe2, 0xaf, 0x4a, 0x04, 0x67, 0x90, +}; +static const unsigned char kat3321_entropyinpr2[] = { + 0x72, 0xbd, 0xd7, 0x11, 0x62, 0xac, 0xf8, 0x56, 0x7d, 0x6f, 0xf5, 0x7d, + 0x9c, 0x6a, 0x62, 0xa9, 0x4a, 0xa4, 0xea, 0x03, 0xaa, 0xe8, 0x58, 0xec, +}; +static const unsigned char kat3321_addinpr2[] = { + 0x92, 0x04, 0x2a, 0x37, 0x78, 0x9e, 0x69, 0xb3, 0x11, 0x1d, 0x48, 0x0c, + 0x0d, 0x19, 0xf0, 0x91, 0x7c, 0xde, 0x4f, 0xeb, 0x10, 0x1c, 0x48, 0x68, + 0x1f, 0xfe, 0xe2, 0xf9, 0x89, 0xff, 0xf9, 0x26, +}; +static const unsigned char kat3321_retbits[] = { + 0xb4, 0x16, 0x04, 0xe0, 0xdb, 0xec, 0x04, 0xd5, 0x7b, 0x99, 0x30, 0x12, + 0xf0, 0xab, 0xb7, 0xf8, 0x2c, 0x18, 0xb4, 0x6b, 0x36, 0x95, 0x14, 0x00, + 0x9c, 0x69, 0x68, 0xf6, 0x4f, 0xbd, 0x34, 0xf4, 0x02, 0xac, 0xcc, 0xe4, + 0xfc, 0x23, 0xa8, 0x09, 0x35, 0x3b, 0x62, 0x95, 0xd2, 0xf1, 0xf3, 0x94, + 0x9a, 0xdd, 0x6a, 0xc9, 0x5c, 0x64, 0x66, 0xff, 0xf4, 0x70, 0x2d, 0x9f, + 0x65, 0x4a, 0xca, 0xbd, +}; +static const struct drbg_kat_pr_true kat3321_t = { + 5, kat3321_entropyin, kat3321_nonce, kat3321_persstr, + kat3321_entropyinpr1, kat3321_addinpr1, kat3321_entropyinpr2, + kat3321_addinpr2, kat3321_retbits +}; +static const struct drbg_kat kat3321 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3321_t +}; + +static const unsigned char kat3322_entropyin[] = { + 0x58, 0xb1, 0x16, 0x71, 0xd1, 0x61, 0x0d, 0x3f, 0x7b, 0x0b, 0xae, 0xaa, + 0x98, 0xbc, 0x7a, 0x8f, 0xb5, 0xce, 0x99, 0x00, 0x7e, 0x49, 0x07, 0xed, +}; +static const unsigned char kat3322_nonce[] = { + 0xe3, 0xa0, 0x24, 0x2f, 0x78, 0x2e, 0xe5, 0x67, 0xf7, 0xc2, 0xab, 0x15, + 0x3d, 0xcb, 0xdf, 0x85, +}; +static const unsigned char kat3322_persstr[] = {0}; +static const unsigned char kat3322_entropyinpr1[] = { + 0x4b, 0xd4, 0x0e, 0xd9, 0x52, 0x24, 0xb6, 0xd7, 0x0c, 0x39, 0xf8, 0x67, + 0x8a, 0xe3, 0x28, 0xb8, 0x9e, 0xa9, 0x69, 0x73, 0x5a, 0xe1, 0xca, 0xf8, +}; +static const unsigned char kat3322_addinpr1[] = { + 0x67, 0x38, 0xa8, 0x65, 0xd1, 0x28, 0x78, 0xfd, 0xec, 0x65, 0x97, 0x27, + 0x90, 0x2f, 0x80, 0xf5, 0xec, 0x7f, 0xee, 0x75, 0x18, 0x30, 0x4e, 0x1d, + 0xd6, 0xb0, 0x6b, 0x99, 0x62, 0xea, 0x5b, 0xf0, +}; +static const unsigned char kat3322_entropyinpr2[] = { + 0xa4, 0x35, 0x38, 0x22, 0x2b, 0x83, 0x0b, 0xb8, 0x89, 0xc6, 0xa7, 0xf2, + 0x33, 0x9a, 0x26, 0x0d, 0x17, 0x2b, 0x5e, 0x4a, 0xaa, 0xad, 0xaf, 0xf2, +}; +static const unsigned char kat3322_addinpr2[] = { + 0xfa, 0xa8, 0xd4, 0xbf, 0xb2, 0x27, 0xa4, 0xcc, 0x41, 0x9e, 0x0f, 0x8a, + 0xf4, 0x43, 0xb5, 0xd0, 0xb9, 0x8f, 0xe6, 0x19, 0x6a, 0x71, 0x13, 0x0b, + 0xb5, 0xa3, 0x00, 0x9c, 0x04, 0x96, 0xcf, 0x9e, +}; +static const unsigned char kat3322_retbits[] = { + 0x52, 0x48, 0x65, 0x45, 0xc1, 0x71, 0x50, 0x87, 0x0b, 0xbe, 0x17, 0x45, + 0xa6, 0xc6, 0xb4, 0x46, 0x78, 0x80, 0x83, 0xe4, 0x88, 0x0c, 0xca, 0x12, + 0x8a, 0x12, 0xe0, 0x81, 0xf9, 0x6b, 0x87, 0xbd, 0x80, 0xaf, 0x46, 0xc7, + 0xf0, 0xf7, 0xf6, 0xf9, 0xc8, 0xb8, 0x67, 0x60, 0x40, 0x0e, 0x63, 0xef, + 0x34, 0x1a, 0xf3, 0x92, 0x0f, 0xf1, 0x8a, 0xc4, 0xdf, 0x2f, 0xb9, 0x60, + 0xa2, 0x89, 0x01, 0x32, +}; +static const struct drbg_kat_pr_true kat3322_t = { + 6, kat3322_entropyin, kat3322_nonce, kat3322_persstr, + kat3322_entropyinpr1, kat3322_addinpr1, kat3322_entropyinpr2, + kat3322_addinpr2, kat3322_retbits +}; +static const struct drbg_kat kat3322 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3322_t +}; + +static const unsigned char kat3323_entropyin[] = { + 0xa7, 0xde, 0x60, 0x0b, 0x8e, 0x74, 0x90, 0x14, 0x8a, 0x9e, 0x3e, 0x11, + 0x68, 0xb5, 0xef, 0xf0, 0x6f, 0x72, 0xc1, 0x92, 0x36, 0x04, 0xa4, 0xe7, +}; +static const unsigned char kat3323_nonce[] = { + 0x93, 0xe5, 0xeb, 0xe0, 0xd1, 0x4f, 0x5b, 0x9f, 0xf2, 0x44, 0xc8, 0x50, + 0xbf, 0xa5, 0xbd, 0x16, +}; +static const unsigned char kat3323_persstr[] = {0}; +static const unsigned char kat3323_entropyinpr1[] = { + 0x3c, 0x8a, 0xf4, 0xe7, 0x7f, 0xeb, 0xf6, 0xe7, 0xcf, 0xe1, 0xac, 0x83, + 0x61, 0x36, 0x11, 0xdb, 0xb8, 0x8b, 0xfe, 0x37, 0x1d, 0x2a, 0x7a, 0x87, +}; +static const unsigned char kat3323_addinpr1[] = { + 0xbf, 0x1c, 0xd4, 0x00, 0x6e, 0xcd, 0x28, 0x40, 0xff, 0x89, 0x3d, 0xf4, + 0x3c, 0x58, 0x94, 0x24, 0xf2, 0x80, 0x4f, 0x98, 0x04, 0x4e, 0xc5, 0xb9, + 0xd9, 0xf5, 0x09, 0xb5, 0x80, 0xde, 0x89, 0xd1, +}; +static const unsigned char kat3323_entropyinpr2[] = { + 0x45, 0x14, 0x70, 0x91, 0xfb, 0xcb, 0xbe, 0x77, 0x7e, 0x45, 0xf3, 0x39, + 0x0d, 0xba, 0x43, 0x0b, 0x8c, 0xf3, 0xfd, 0x83, 0xe0, 0x15, 0xa8, 0x19, +}; +static const unsigned char kat3323_addinpr2[] = { + 0x17, 0x9e, 0x74, 0x39, 0xf0, 0xc5, 0xaf, 0x97, 0x35, 0x29, 0x99, 0x68, + 0xa8, 0x6e, 0x4e, 0xeb, 0x3b, 0x5a, 0x3c, 0x1d, 0x28, 0x4a, 0xbe, 0x48, + 0x92, 0x7a, 0x07, 0xee, 0xed, 0x26, 0x17, 0x0d, +}; +static const unsigned char kat3323_retbits[] = { + 0x6d, 0x05, 0xde, 0x2e, 0x9f, 0xb1, 0x30, 0x73, 0x5b, 0x6e, 0x36, 0xf4, + 0x5c, 0x2a, 0x0f, 0xa2, 0x12, 0xd5, 0x35, 0x48, 0xfa, 0x51, 0xbd, 0xd0, + 0x32, 0xfd, 0xb6, 0x20, 0x8d, 0x2d, 0xa9, 0x1d, 0x9c, 0x2d, 0x05, 0xb1, + 0x3d, 0x82, 0x6d, 0x62, 0xa1, 0x06, 0x10, 0x3b, 0x7e, 0x41, 0xf2, 0x1b, + 0xec, 0xd8, 0xc6, 0x4d, 0x22, 0x1e, 0x4b, 0x9d, 0x3c, 0xe5, 0xd6, 0xd5, + 0xc6, 0x30, 0xc0, 0xee, +}; +static const struct drbg_kat_pr_true kat3323_t = { + 7, kat3323_entropyin, kat3323_nonce, kat3323_persstr, + kat3323_entropyinpr1, kat3323_addinpr1, kat3323_entropyinpr2, + kat3323_addinpr2, kat3323_retbits +}; +static const struct drbg_kat kat3323 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3323_t +}; + +static const unsigned char kat3324_entropyin[] = { + 0xe8, 0x18, 0x29, 0x57, 0x95, 0xc3, 0x32, 0xe4, 0xda, 0x0c, 0x3a, 0xfa, + 0x7b, 0x0f, 0xeb, 0x4f, 0x5d, 0x6f, 0xf7, 0x15, 0x10, 0x6b, 0x44, 0x58, +}; +static const unsigned char kat3324_nonce[] = { + 0x96, 0x66, 0x70, 0x0a, 0x2e, 0x8e, 0x16, 0x05, 0x21, 0x4d, 0xb3, 0xc2, + 0x86, 0x13, 0xcb, 0xf3, +}; +static const unsigned char kat3324_persstr[] = {0}; +static const unsigned char kat3324_entropyinpr1[] = { + 0xe1, 0x05, 0xdb, 0x6d, 0x97, 0xe2, 0x9a, 0x4d, 0x08, 0x62, 0x4c, 0xbc, + 0x20, 0x62, 0x6c, 0x39, 0x3b, 0x4a, 0xf2, 0x80, 0xa9, 0xee, 0x8a, 0xb1, +}; +static const unsigned char kat3324_addinpr1[] = { + 0x2e, 0x2c, 0x66, 0xf6, 0x9e, 0x91, 0x55, 0xb1, 0xd0, 0xba, 0x22, 0xf5, + 0x45, 0x54, 0x9c, 0x2e, 0x68, 0xc0, 0x9f, 0x81, 0x07, 0x02, 0x0b, 0x26, + 0x08, 0x8b, 0x70, 0x90, 0xf2, 0x4c, 0xc4, 0x0e, +}; +static const unsigned char kat3324_entropyinpr2[] = { + 0x6e, 0x51, 0xd8, 0xc8, 0x33, 0x7f, 0x97, 0x44, 0x00, 0xf9, 0x8a, 0x19, + 0x30, 0x49, 0xa7, 0x5d, 0xf5, 0xd3, 0x4c, 0x6b, 0xb4, 0xec, 0xad, 0xb2, +}; +static const unsigned char kat3324_addinpr2[] = { + 0x78, 0xea, 0xf7, 0xc0, 0x68, 0xd7, 0xb8, 0xd2, 0xaf, 0x94, 0x64, 0x61, + 0x63, 0x7b, 0x6d, 0xe0, 0xff, 0x22, 0xcf, 0x69, 0xfb, 0x98, 0xec, 0x30, + 0xd0, 0xbe, 0x2a, 0x85, 0xcf, 0xfc, 0x5a, 0x83, +}; +static const unsigned char kat3324_retbits[] = { + 0xed, 0x27, 0x65, 0x42, 0xf1, 0xfa, 0x48, 0x24, 0xc0, 0x35, 0x34, 0xcd, + 0x14, 0x30, 0xc1, 0xf1, 0xa2, 0x33, 0xc8, 0x80, 0xf5, 0xe7, 0xb8, 0xa5, + 0xa7, 0x94, 0x09, 0x78, 0x9a, 0x50, 0xf8, 0x30, 0xdd, 0x90, 0x53, 0x1f, + 0x78, 0x9b, 0x43, 0xa9, 0x7f, 0xf7, 0x30, 0x4d, 0x8d, 0x9b, 0xea, 0xe6, + 0xc1, 0xf7, 0xff, 0x39, 0x87, 0x1e, 0x54, 0xfb, 0xb3, 0xbb, 0xca, 0x91, + 0x60, 0xe8, 0xdb, 0xdc, +}; +static const struct drbg_kat_pr_true kat3324_t = { + 8, kat3324_entropyin, kat3324_nonce, kat3324_persstr, + kat3324_entropyinpr1, kat3324_addinpr1, kat3324_entropyinpr2, + kat3324_addinpr2, kat3324_retbits +}; +static const struct drbg_kat kat3324 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3324_t +}; + +static const unsigned char kat3325_entropyin[] = { + 0x1b, 0x3f, 0x42, 0x50, 0x8f, 0x47, 0x2d, 0x4a, 0x9a, 0x94, 0x81, 0x57, + 0x25, 0x7e, 0x8c, 0xe2, 0x3f, 0x95, 0xba, 0x8e, 0x0c, 0x09, 0x9e, 0xb6, +}; +static const unsigned char kat3325_nonce[] = { + 0x8f, 0xb8, 0x4f, 0xc7, 0x2b, 0xc4, 0x59, 0xcc, 0x8f, 0xbd, 0xde, 0x4a, + 0x66, 0xa1, 0x71, 0x19, +}; +static const unsigned char kat3325_persstr[] = {0}; +static const unsigned char kat3325_entropyinpr1[] = { + 0x12, 0x74, 0x25, 0x1f, 0x19, 0xa5, 0x2e, 0xc6, 0x31, 0xb9, 0xcc, 0x3f, + 0xb8, 0x82, 0x7e, 0x04, 0xa5, 0xee, 0xa3, 0xd0, 0xbf, 0x3d, 0xb1, 0x2a, +}; +static const unsigned char kat3325_addinpr1[] = { + 0xe3, 0xc7, 0x74, 0xf0, 0x00, 0x16, 0xe7, 0x64, 0xd3, 0xb4, 0x29, 0xfb, + 0x3d, 0xd1, 0xd3, 0x5b, 0x7d, 0x89, 0xa2, 0x44, 0xfe, 0x72, 0xc8, 0x69, + 0xdb, 0xc3, 0x69, 0x5a, 0x74, 0x96, 0xd4, 0x20, +}; +static const unsigned char kat3325_entropyinpr2[] = { + 0x31, 0x23, 0x09, 0x06, 0xf2, 0xd7, 0x0e, 0x6c, 0xc7, 0x07, 0xa4, 0xa5, + 0xac, 0xb3, 0x04, 0xcd, 0xd8, 0x35, 0x25, 0xc6, 0x16, 0x39, 0x5d, 0xac, +}; +static const unsigned char kat3325_addinpr2[] = { + 0x29, 0x2a, 0x8d, 0x14, 0xa4, 0x86, 0xab, 0xfc, 0xce, 0xa5, 0x6e, 0x4c, + 0x88, 0x77, 0xe9, 0x5b, 0x32, 0x4e, 0x00, 0x98, 0x96, 0x21, 0x50, 0x03, + 0xee, 0x8c, 0x2e, 0xe4, 0x73, 0x59, 0xbf, 0x5c, +}; +static const unsigned char kat3325_retbits[] = { + 0xd5, 0x02, 0x85, 0x96, 0x9b, 0x82, 0x9b, 0xb3, 0xbc, 0xa9, 0xbe, 0xd5, + 0x22, 0xda, 0x5f, 0x6c, 0x15, 0x12, 0xdd, 0x6f, 0x4a, 0x11, 0xa5, 0x1d, + 0x12, 0xb0, 0xe6, 0x7d, 0x52, 0x9f, 0xd3, 0x0a, 0x3b, 0xc2, 0x34, 0x72, + 0x65, 0xad, 0xdd, 0xf5, 0xec, 0xfc, 0x12, 0x8b, 0x94, 0xe9, 0x64, 0xba, + 0xc5, 0x4c, 0xc7, 0x90, 0xe6, 0x8f, 0x7a, 0x66, 0x15, 0x63, 0xc0, 0xd6, + 0x47, 0x16, 0x4a, 0x5a, +}; +static const struct drbg_kat_pr_true kat3325_t = { + 9, kat3325_entropyin, kat3325_nonce, kat3325_persstr, + kat3325_entropyinpr1, kat3325_addinpr1, kat3325_entropyinpr2, + kat3325_addinpr2, kat3325_retbits +}; +static const struct drbg_kat kat3325 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3325_t +}; + +static const unsigned char kat3326_entropyin[] = { + 0x53, 0x6f, 0x96, 0x51, 0x39, 0xd3, 0x7d, 0x73, 0x43, 0x41, 0xdb, 0x02, + 0x38, 0x77, 0xaa, 0xcf, 0x32, 0x20, 0x8f, 0x67, 0x7a, 0x7a, 0x45, 0x23, +}; +static const unsigned char kat3326_nonce[] = { + 0xae, 0xfa, 0x3d, 0x9e, 0x72, 0x61, 0xd3, 0x55, 0xeb, 0xa9, 0x11, 0xaa, + 0x73, 0x84, 0x92, 0x37, +}; +static const unsigned char kat3326_persstr[] = {0}; +static const unsigned char kat3326_entropyinpr1[] = { + 0x68, 0xa3, 0xe7, 0xed, 0x17, 0x89, 0xf3, 0xc3, 0x0d, 0x13, 0xbb, 0x7f, + 0x52, 0x2c, 0x66, 0x5a, 0x0e, 0xc1, 0x72, 0xde, 0xd6, 0xda, 0xf3, 0x2a, +}; +static const unsigned char kat3326_addinpr1[] = { + 0x8e, 0x3c, 0xf0, 0xa0, 0x6f, 0x06, 0x09, 0xc9, 0xd4, 0x9d, 0xc1, 0xc8, + 0x47, 0x49, 0x8a, 0xb2, 0x29, 0xdf, 0x96, 0x06, 0x8a, 0xfa, 0x63, 0x24, + 0x9b, 0xac, 0x6d, 0x5d, 0x22, 0x9e, 0xc1, 0x9d, +}; +static const unsigned char kat3326_entropyinpr2[] = { + 0xe2, 0xba, 0x4f, 0x5b, 0x05, 0xe7, 0xe4, 0xef, 0x27, 0xb3, 0xe7, 0xcc, + 0xbb, 0x06, 0x49, 0xca, 0x21, 0x24, 0xe6, 0x83, 0xce, 0x37, 0x1a, 0x89, +}; +static const unsigned char kat3326_addinpr2[] = { + 0x7d, 0x16, 0x15, 0xe0, 0x1c, 0x58, 0xde, 0x28, 0x17, 0xd7, 0x1a, 0x96, + 0x3a, 0x9c, 0x23, 0xbf, 0x06, 0xcd, 0xa9, 0x11, 0x99, 0xea, 0x56, 0xba, + 0x03, 0x67, 0xb3, 0x3f, 0x99, 0xdb, 0x69, 0xd7, +}; +static const unsigned char kat3326_retbits[] = { + 0xcc, 0x35, 0x88, 0x7e, 0xcd, 0xde, 0x4e, 0xca, 0xa8, 0xd2, 0x38, 0x3b, + 0xe8, 0xd7, 0x2d, 0xce, 0xb4, 0x64, 0xca, 0x9a, 0x94, 0xc7, 0x8e, 0x34, + 0x35, 0xbb, 0x85, 0x97, 0x42, 0xb6, 0xa8, 0x4e, 0xcf, 0x8a, 0x7a, 0xf9, + 0x9f, 0xd7, 0xbe, 0x28, 0xd3, 0xef, 0x31, 0x52, 0x3b, 0x0d, 0x70, 0xb8, + 0x8b, 0x0d, 0xd9, 0x18, 0xcd, 0x70, 0x58, 0x81, 0xb4, 0x18, 0xdf, 0xe9, + 0x1f, 0x84, 0xb4, 0x90, +}; +static const struct drbg_kat_pr_true kat3326_t = { + 10, kat3326_entropyin, kat3326_nonce, kat3326_persstr, + kat3326_entropyinpr1, kat3326_addinpr1, kat3326_entropyinpr2, + kat3326_addinpr2, kat3326_retbits +}; +static const struct drbg_kat kat3326 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3326_t +}; + +static const unsigned char kat3327_entropyin[] = { + 0x0a, 0xf0, 0x29, 0xdc, 0xf2, 0xf0, 0xe3, 0xe7, 0x01, 0x5d, 0x59, 0xa2, + 0x41, 0x58, 0x85, 0x30, 0x71, 0x23, 0xaf, 0x3d, 0x1a, 0x8a, 0x24, 0x27, +}; +static const unsigned char kat3327_nonce[] = { + 0x7b, 0xcf, 0xe6, 0xbf, 0x04, 0x22, 0xbf, 0x2e, 0x8e, 0xb4, 0x3f, 0x9c, + 0xbd, 0x32, 0x6f, 0x6b, +}; +static const unsigned char kat3327_persstr[] = {0}; +static const unsigned char kat3327_entropyinpr1[] = { + 0xed, 0x25, 0x7d, 0x65, 0xd7, 0x49, 0x96, 0xbf, 0x4e, 0xc1, 0xfa, 0x1a, + 0xb4, 0x8a, 0x60, 0x98, 0x55, 0x35, 0x49, 0xb7, 0x8e, 0xd6, 0x9e, 0x59, +}; +static const unsigned char kat3327_addinpr1[] = { + 0xdc, 0x5c, 0xcd, 0x61, 0xd0, 0xef, 0x94, 0x55, 0xdb, 0x53, 0x3b, 0x86, + 0x70, 0xf5, 0x52, 0x85, 0x7a, 0xb0, 0x31, 0x0a, 0xef, 0x7d, 0xcb, 0x17, + 0xe7, 0x95, 0xf5, 0xf0, 0x9a, 0x49, 0xbe, 0xcd, +}; +static const unsigned char kat3327_entropyinpr2[] = { + 0xcf, 0xdf, 0x74, 0x0e, 0x29, 0x1f, 0x30, 0xa8, 0x75, 0x0d, 0x75, 0x74, + 0x75, 0xd5, 0x6f, 0x2a, 0xa1, 0x51, 0x27, 0xe3, 0x32, 0x07, 0xe2, 0x65, +}; +static const unsigned char kat3327_addinpr2[] = { + 0x0d, 0x63, 0x91, 0x8b, 0xcc, 0xa4, 0xe3, 0xcf, 0x2c, 0xf5, 0x06, 0x2c, + 0x1f, 0xbf, 0x18, 0x7f, 0x1c, 0x18, 0x1f, 0x8c, 0x5a, 0xf6, 0x95, 0x07, + 0x56, 0x54, 0xaf, 0xbf, 0x0c, 0x74, 0x81, 0xe7, +}; +static const unsigned char kat3327_retbits[] = { + 0x60, 0x0c, 0xad, 0x75, 0x1c, 0xf1, 0x8b, 0xd3, 0x25, 0x2c, 0x42, 0x4f, + 0x82, 0xfb, 0x92, 0x84, 0x69, 0xbe, 0xbf, 0xdf, 0x5c, 0xe6, 0x9d, 0x67, + 0x7e, 0x54, 0xea, 0x99, 0x1f, 0x95, 0x23, 0x37, 0x16, 0x73, 0x64, 0xc5, + 0xfd, 0x98, 0x9a, 0xad, 0x97, 0xe2, 0x33, 0xcf, 0x2c, 0x2e, 0xd6, 0x37, + 0xda, 0x43, 0xe0, 0xc7, 0xe0, 0xf2, 0xa4, 0xeb, 0x0d, 0xad, 0x53, 0x0c, + 0x06, 0x2d, 0x00, 0x3d, +}; +static const struct drbg_kat_pr_true kat3327_t = { + 11, kat3327_entropyin, kat3327_nonce, kat3327_persstr, + kat3327_entropyinpr1, kat3327_addinpr1, kat3327_entropyinpr2, + kat3327_addinpr2, kat3327_retbits +}; +static const struct drbg_kat kat3327 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3327_t +}; + +static const unsigned char kat3328_entropyin[] = { + 0xf8, 0x9a, 0x02, 0x01, 0x2c, 0x81, 0xdf, 0x0b, 0x9f, 0x97, 0xbc, 0x16, + 0xe0, 0x1f, 0xf4, 0x76, 0xe4, 0x9a, 0x97, 0x39, 0x28, 0x1a, 0x93, 0x3b, +}; +static const unsigned char kat3328_nonce[] = { + 0xcb, 0x40, 0xa5, 0x54, 0x3a, 0x48, 0x99, 0x14, 0x4a, 0xf5, 0xea, 0x81, + 0x37, 0xe0, 0x26, 0x11, +}; +static const unsigned char kat3328_persstr[] = {0}; +static const unsigned char kat3328_entropyinpr1[] = { + 0x22, 0x86, 0x5c, 0x64, 0x32, 0xf6, 0x4e, 0xd8, 0xca, 0x0d, 0xcd, 0x6c, + 0xc9, 0x9e, 0x2b, 0xa9, 0x49, 0x0b, 0xe9, 0x65, 0x9d, 0xbb, 0x73, 0x9c, +}; +static const unsigned char kat3328_addinpr1[] = { + 0x9a, 0x54, 0x67, 0x44, 0x7c, 0x38, 0xc3, 0x6b, 0x01, 0xec, 0x67, 0xa6, + 0xf0, 0x3b, 0x68, 0x12, 0x00, 0xdc, 0x41, 0x61, 0xae, 0xef, 0xd2, 0x74, + 0xfb, 0x06, 0x6e, 0x88, 0xd2, 0xa4, 0x0a, 0x95, +}; +static const unsigned char kat3328_entropyinpr2[] = { + 0x53, 0x62, 0x00, 0x88, 0x52, 0x66, 0x5f, 0x0d, 0x5d, 0x9f, 0x44, 0x10, + 0x2d, 0x26, 0x80, 0xd9, 0x80, 0xfa, 0x90, 0x87, 0x72, 0x9d, 0xc1, 0x20, +}; +static const unsigned char kat3328_addinpr2[] = { + 0x46, 0x7f, 0x83, 0x0f, 0x21, 0xdf, 0x84, 0x1c, 0x78, 0x72, 0x1a, 0xc4, + 0x4d, 0x25, 0xfb, 0xf2, 0xc5, 0xb9, 0x2c, 0x42, 0xc9, 0x26, 0xeb, 0x9d, + 0xbd, 0x1a, 0x32, 0x17, 0xf7, 0x7a, 0xa8, 0x39, +}; +static const unsigned char kat3328_retbits[] = { + 0xc5, 0xe4, 0xbf, 0xef, 0xbe, 0x9c, 0x7b, 0x07, 0xde, 0x53, 0xf7, 0x82, + 0x7f, 0xba, 0x53, 0x86, 0x83, 0x30, 0xf9, 0x0f, 0xcf, 0x87, 0x37, 0x53, + 0x80, 0xbe, 0xbc, 0x6c, 0x92, 0xaf, 0xf4, 0x3c, 0x7e, 0x17, 0x66, 0x6b, + 0x98, 0x95, 0xad, 0x1f, 0xf4, 0x99, 0xf7, 0x97, 0x77, 0xed, 0xb0, 0x0f, + 0x11, 0x3b, 0x18, 0x6a, 0x74, 0xf4, 0x38, 0xb9, 0x99, 0xa8, 0x20, 0xf5, + 0x27, 0x87, 0x64, 0xa9, +}; +static const struct drbg_kat_pr_true kat3328_t = { + 12, kat3328_entropyin, kat3328_nonce, kat3328_persstr, + kat3328_entropyinpr1, kat3328_addinpr1, kat3328_entropyinpr2, + kat3328_addinpr2, kat3328_retbits +}; +static const struct drbg_kat kat3328 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3328_t +}; + +static const unsigned char kat3329_entropyin[] = { + 0x11, 0x8d, 0x4d, 0x35, 0x43, 0x94, 0x6d, 0xa8, 0xcc, 0x86, 0x35, 0xb9, + 0xef, 0x6b, 0xbc, 0x4d, 0x03, 0x71, 0xc0, 0x6c, 0x39, 0x6f, 0x63, 0x77, +}; +static const unsigned char kat3329_nonce[] = { + 0x15, 0x15, 0x05, 0xea, 0x32, 0x2d, 0x29, 0xa9, 0x7c, 0x5c, 0x56, 0x80, + 0xa0, 0xdb, 0x16, 0x34, +}; +static const unsigned char kat3329_persstr[] = {0}; +static const unsigned char kat3329_entropyinpr1[] = { + 0x17, 0x77, 0x8e, 0x99, 0x22, 0x27, 0xe1, 0x92, 0x99, 0x36, 0x04, 0x90, + 0x31, 0x59, 0x1a, 0x33, 0x42, 0x7e, 0x29, 0x06, 0x88, 0xef, 0x46, 0x89, +}; +static const unsigned char kat3329_addinpr1[] = { + 0x70, 0xa1, 0x49, 0xb7, 0x24, 0x49, 0x0c, 0x10, 0x75, 0xaf, 0xc8, 0x0a, + 0x4b, 0xe4, 0x05, 0x9c, 0x18, 0xea, 0xba, 0xf1, 0xaa, 0x47, 0xa7, 0xb2, + 0xd9, 0x2d, 0xc1, 0x88, 0x5d, 0xd9, 0xc8, 0x91, +}; +static const unsigned char kat3329_entropyinpr2[] = { + 0x53, 0x5d, 0x26, 0x94, 0xb9, 0x41, 0x58, 0xc7, 0x34, 0x58, 0x3e, 0xee, + 0xa8, 0x06, 0xe1, 0xf5, 0x42, 0x93, 0x71, 0xf9, 0xa7, 0xbb, 0xca, 0xdf, +}; +static const unsigned char kat3329_addinpr2[] = { + 0x1e, 0x2e, 0x99, 0x36, 0x41, 0xea, 0x85, 0xbc, 0x3f, 0x5a, 0xfc, 0xe8, + 0x58, 0x10, 0x3f, 0xc0, 0xe5, 0xbc, 0x90, 0x4a, 0x9f, 0x20, 0x61, 0x10, + 0xfc, 0xae, 0x7f, 0x87, 0x3a, 0xf5, 0x9a, 0x8f, +}; +static const unsigned char kat3329_retbits[] = { + 0xb2, 0x21, 0x90, 0x86, 0xa9, 0x48, 0x63, 0x31, 0x4f, 0x37, 0x4d, 0x49, + 0x23, 0x12, 0x0c, 0xde, 0x1d, 0x35, 0x93, 0x6a, 0xc2, 0xf6, 0x86, 0x21, + 0xf3, 0x2c, 0x16, 0xdf, 0x40, 0x1a, 0x6e, 0xc3, 0x15, 0x41, 0x26, 0x20, + 0x27, 0x17, 0xa2, 0x7b, 0xbb, 0xf9, 0x61, 0xb3, 0xdd, 0x1f, 0x20, 0x63, + 0xfd, 0x58, 0x52, 0x67, 0x73, 0x89, 0x02, 0x8c, 0xda, 0xc8, 0xf2, 0x47, + 0xf2, 0x51, 0xda, 0x2e, +}; +static const struct drbg_kat_pr_true kat3329_t = { + 13, kat3329_entropyin, kat3329_nonce, kat3329_persstr, + kat3329_entropyinpr1, kat3329_addinpr1, kat3329_entropyinpr2, + kat3329_addinpr2, kat3329_retbits +}; +static const struct drbg_kat kat3329 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3329_t +}; + +static const unsigned char kat3330_entropyin[] = { + 0x3f, 0x37, 0x7f, 0xaa, 0x0b, 0x6d, 0x47, 0x2f, 0x3b, 0xa5, 0xd6, 0x55, + 0x6f, 0xe2, 0xa8, 0x40, 0xd5, 0x5a, 0x78, 0xa4, 0xb8, 0x04, 0xa0, 0x01, +}; +static const unsigned char kat3330_nonce[] = { + 0x54, 0xa0, 0x31, 0x01, 0xb1, 0x58, 0x78, 0x73, 0xdd, 0xf3, 0xe0, 0xae, + 0xeb, 0x21, 0xf4, 0x77, +}; +static const unsigned char kat3330_persstr[] = {0}; +static const unsigned char kat3330_entropyinpr1[] = { + 0xd4, 0x8e, 0xca, 0x53, 0x66, 0x2d, 0x88, 0xcc, 0xa3, 0x5e, 0x64, 0xf7, + 0x29, 0x14, 0x34, 0xd1, 0xe3, 0x2b, 0xd3, 0x09, 0x1c, 0x9f, 0x56, 0xd8, +}; +static const unsigned char kat3330_addinpr1[] = { + 0x96, 0x01, 0x72, 0x96, 0x42, 0x58, 0x45, 0x06, 0x3b, 0xa4, 0x83, 0x5a, + 0x96, 0xd8, 0x80, 0xf5, 0xc9, 0xa8, 0xc0, 0x20, 0x39, 0x70, 0x6a, 0x81, + 0xa2, 0xf9, 0x02, 0xf4, 0x41, 0x71, 0xbd, 0x3b, +}; +static const unsigned char kat3330_entropyinpr2[] = { + 0x0c, 0x3a, 0x07, 0xdf, 0x91, 0x6a, 0xcc, 0x0e, 0x6a, 0x2e, 0x6e, 0xef, + 0x50, 0xc3, 0x2d, 0xb6, 0xeb, 0xb1, 0x96, 0x2f, 0xcf, 0xb0, 0xce, 0xee, +}; +static const unsigned char kat3330_addinpr2[] = { + 0xc0, 0x26, 0x3d, 0x4c, 0x2d, 0x07, 0x26, 0x44, 0x5d, 0x61, 0x9c, 0x87, + 0x39, 0x14, 0xea, 0x5d, 0xd9, 0xa0, 0x1e, 0x4f, 0x80, 0x5e, 0x57, 0x20, + 0x61, 0x29, 0x8e, 0xac, 0x76, 0xe0, 0x7c, 0x52, +}; +static const unsigned char kat3330_retbits[] = { + 0x9a, 0x29, 0x85, 0x2c, 0x06, 0xe0, 0x6c, 0xf7, 0x43, 0x5f, 0x01, 0x3d, + 0x1e, 0x1d, 0x65, 0x30, 0x74, 0x90, 0x40, 0x54, 0xb9, 0x71, 0x85, 0xda, + 0x69, 0x08, 0x74, 0x9c, 0x8b, 0x75, 0xc9, 0xa2, 0xf8, 0x1e, 0x29, 0xf0, + 0xcf, 0xbb, 0xec, 0xc8, 0x6b, 0xb7, 0x35, 0x38, 0x97, 0xb6, 0x36, 0xcc, + 0x9f, 0x7b, 0xd0, 0x8d, 0xc2, 0x7b, 0xa1, 0x3d, 0x1a, 0x3d, 0x48, 0x2e, + 0x83, 0x8a, 0x5f, 0x6a, +}; +static const struct drbg_kat_pr_true kat3330_t = { + 14, kat3330_entropyin, kat3330_nonce, kat3330_persstr, + kat3330_entropyinpr1, kat3330_addinpr1, kat3330_entropyinpr2, + kat3330_addinpr2, kat3330_retbits +}; +static const struct drbg_kat kat3330 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 0, 32, 64, &kat3330_t +}; + +static const unsigned char kat3331_entropyin[] = { + 0x38, 0x4d, 0xe3, 0x30, 0x43, 0x14, 0xb2, 0x12, 0x4c, 0x40, 0xbf, 0x2c, + 0x5c, 0x82, 0x35, 0xa3, 0xe7, 0x30, 0x6d, 0x94, 0xa0, 0xca, 0x3b, 0x67, +}; +static const unsigned char kat3331_nonce[] = { + 0x76, 0xde, 0x42, 0x6b, 0x4b, 0xb1, 0xc5, 0xc3, 0x68, 0xe0, 0x64, 0xda, + 0x2e, 0x38, 0xf8, 0x3a, +}; +static const unsigned char kat3331_persstr[] = { + 0x06, 0x01, 0x5e, 0xaa, 0x5f, 0x5e, 0xb0, 0x0f, 0x09, 0xa1, 0xf5, 0x49, + 0x2e, 0x21, 0x85, 0xb5, 0x7c, 0x5e, 0x30, 0x8c, 0x5c, 0xcf, 0x14, 0x4a, + 0x93, 0xbe, 0x6f, 0xa2, 0xc1, 0xcb, 0xa9, 0x88, +}; +static const unsigned char kat3331_entropyinpr1[] = { + 0x06, 0xa1, 0xfc, 0x53, 0xd9, 0x59, 0x30, 0x3b, 0x7d, 0x94, 0xc0, 0xd7, + 0x8a, 0xd1, 0xaf, 0x0a, 0xe2, 0x3f, 0x40, 0x48, 0xfd, 0x99, 0xff, 0x53, +}; +static const unsigned char kat3331_addinpr1[] = {0}; +static const unsigned char kat3331_entropyinpr2[] = { + 0x78, 0xa0, 0xbb, 0x09, 0xf8, 0x39, 0x94, 0x43, 0xcc, 0x95, 0x0f, 0xd2, + 0x35, 0xd6, 0xd9, 0x66, 0x3d, 0x45, 0xad, 0xbf, 0x94, 0x81, 0xd7, 0x24, +}; +static const unsigned char kat3331_addinpr2[] = {0}; +static const unsigned char kat3331_retbits[] = { + 0x2d, 0xb2, 0xf9, 0xce, 0x0c, 0x80, 0x74, 0xe0, 0xf0, 0x20, 0x5e, 0x3c, + 0xd0, 0x58, 0xe3, 0x1b, 0x5d, 0x8c, 0x73, 0xba, 0x51, 0xef, 0xda, 0x36, + 0x08, 0x47, 0x77, 0x82, 0x06, 0xb1, 0x26, 0x82, 0x2d, 0x7d, 0xc9, 0xe8, + 0x73, 0xdc, 0x7e, 0x07, 0xe3, 0x03, 0x92, 0xff, 0xaa, 0x42, 0x27, 0x61, + 0xff, 0xa2, 0x97, 0xc1, 0x89, 0x26, 0x5d, 0x2f, 0x8e, 0xbd, 0x45, 0xef, + 0x49, 0x22, 0x69, 0x03, +}; +static const struct drbg_kat_pr_true kat3331_t = { + 0, kat3331_entropyin, kat3331_nonce, kat3331_persstr, + kat3331_entropyinpr1, kat3331_addinpr1, kat3331_entropyinpr2, + kat3331_addinpr2, kat3331_retbits +}; +static const struct drbg_kat kat3331 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3331_t +}; + +static const unsigned char kat3332_entropyin[] = { + 0xa3, 0x0b, 0xc9, 0x33, 0xf7, 0x2a, 0xa4, 0xe2, 0x5d, 0x32, 0x47, 0xa8, + 0x97, 0xb9, 0xde, 0xd3, 0x92, 0x6b, 0xa1, 0xbb, 0x52, 0x20, 0x2d, 0xa4, +}; +static const unsigned char kat3332_nonce[] = { + 0xc2, 0xe8, 0x7e, 0xb6, 0xab, 0xf0, 0x11, 0xa0, 0x6a, 0x46, 0x07, 0x95, + 0xa3, 0x34, 0xc7, 0x50, +}; +static const unsigned char kat3332_persstr[] = { + 0xe6, 0x55, 0xfa, 0xd3, 0x2b, 0x67, 0x1c, 0x7f, 0xb4, 0xc8, 0xe5, 0x38, + 0x68, 0x3a, 0xb8, 0x7f, 0xbd, 0x7f, 0x51, 0xc3, 0x31, 0x3f, 0x66, 0x74, + 0x6c, 0x46, 0xcb, 0x63, 0x65, 0xa7, 0x8c, 0xe8, +}; +static const unsigned char kat3332_entropyinpr1[] = { + 0x2e, 0x15, 0x55, 0x28, 0xed, 0x2f, 0x44, 0x17, 0xfd, 0x95, 0x54, 0x37, + 0xcb, 0x13, 0x46, 0x4c, 0x63, 0xfd, 0x88, 0xec, 0x8d, 0x78, 0x5c, 0x03, +}; +static const unsigned char kat3332_addinpr1[] = {0}; +static const unsigned char kat3332_entropyinpr2[] = { + 0xf4, 0x76, 0x5d, 0x5d, 0x72, 0x78, 0x47, 0xf8, 0xd8, 0x12, 0xdc, 0xa0, + 0x4a, 0xfa, 0x56, 0x80, 0xcf, 0x61, 0xb9, 0xcc, 0xfc, 0xc5, 0x62, 0xda, +}; +static const unsigned char kat3332_addinpr2[] = {0}; +static const unsigned char kat3332_retbits[] = { + 0xe3, 0x99, 0xbb, 0x27, 0x96, 0x53, 0x90, 0x52, 0xd0, 0x7f, 0x92, 0x47, + 0x49, 0xa6, 0xb2, 0x73, 0x29, 0x9a, 0x92, 0x76, 0xdc, 0x48, 0x25, 0x4d, + 0x8a, 0x81, 0x3e, 0x80, 0xf8, 0x04, 0x34, 0xfa, 0xa5, 0x53, 0xd7, 0x69, + 0x4f, 0xb8, 0x39, 0x57, 0xb2, 0xe5, 0x8a, 0x34, 0x54, 0xfb, 0x83, 0x80, + 0x78, 0x45, 0x12, 0x6c, 0x2d, 0x7a, 0xa0, 0x2b, 0xe5, 0x36, 0xcf, 0x2c, + 0xc7, 0xbc, 0x94, 0xfd, +}; +static const struct drbg_kat_pr_true kat3332_t = { + 1, kat3332_entropyin, kat3332_nonce, kat3332_persstr, + kat3332_entropyinpr1, kat3332_addinpr1, kat3332_entropyinpr2, + kat3332_addinpr2, kat3332_retbits +}; +static const struct drbg_kat kat3332 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3332_t +}; + +static const unsigned char kat3333_entropyin[] = { + 0x63, 0xec, 0xe4, 0x56, 0x6c, 0xa8, 0x25, 0x98, 0x6c, 0x64, 0x3a, 0x0d, + 0x99, 0xa1, 0xc7, 0x19, 0x6e, 0x12, 0x3c, 0x84, 0x2e, 0x87, 0x4c, 0x55, +}; +static const unsigned char kat3333_nonce[] = { + 0x04, 0x42, 0x46, 0x90, 0xb1, 0xe8, 0xc5, 0x95, 0x3e, 0xb5, 0x05, 0xac, + 0x10, 0x49, 0xc8, 0x8d, +}; +static const unsigned char kat3333_persstr[] = { + 0xf3, 0xbe, 0x85, 0x79, 0x3b, 0xd9, 0x82, 0xf9, 0xdd, 0x24, 0x69, 0x4c, + 0x17, 0xa3, 0x41, 0xd5, 0x91, 0xbd, 0xf8, 0x08, 0x6e, 0xf0, 0xd5, 0xbf, + 0x8b, 0xd3, 0xdd, 0xb8, 0xf4, 0x32, 0x80, 0xc5, +}; +static const unsigned char kat3333_entropyinpr1[] = { + 0xfe, 0xcd, 0x0d, 0xcf, 0x8c, 0xcc, 0x62, 0xc8, 0x23, 0x8a, 0x3e, 0xd1, + 0x5c, 0x5e, 0x03, 0x24, 0x98, 0x89, 0x3c, 0x2e, 0x74, 0x3e, 0xbe, 0x5c, +}; +static const unsigned char kat3333_addinpr1[] = {0}; +static const unsigned char kat3333_entropyinpr2[] = { + 0x58, 0xc6, 0x23, 0x00, 0x2b, 0x46, 0x80, 0xad, 0xdb, 0x63, 0x42, 0x6c, + 0x7c, 0x46, 0xc6, 0xba, 0xa0, 0x53, 0xb1, 0x1c, 0x90, 0xec, 0x39, 0x5d, +}; +static const unsigned char kat3333_addinpr2[] = {0}; +static const unsigned char kat3333_retbits[] = { + 0x72, 0xdb, 0xfd, 0xca, 0xf5, 0x27, 0x4d, 0x22, 0x56, 0xb0, 0xf4, 0x6c, + 0x4e, 0xf6, 0x8e, 0x11, 0x12, 0x70, 0x0d, 0xfb, 0xbd, 0x38, 0x00, 0xf3, + 0x97, 0x80, 0x88, 0x20, 0x23, 0x1a, 0xe2, 0x42, 0x23, 0x90, 0x2d, 0x9a, + 0xdb, 0x55, 0xa6, 0xa1, 0xb4, 0xd1, 0x90, 0x5a, 0xe2, 0x06, 0x7b, 0xb4, + 0xea, 0xf9, 0x36, 0xc2, 0xec, 0xcd, 0xdb, 0xf4, 0x0a, 0x02, 0xdf, 0xce, + 0xe0, 0x6a, 0xc6, 0xa9, +}; +static const struct drbg_kat_pr_true kat3333_t = { + 2, kat3333_entropyin, kat3333_nonce, kat3333_persstr, + kat3333_entropyinpr1, kat3333_addinpr1, kat3333_entropyinpr2, + kat3333_addinpr2, kat3333_retbits +}; +static const struct drbg_kat kat3333 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3333_t +}; + +static const unsigned char kat3334_entropyin[] = { + 0xa3, 0xcd, 0x8e, 0x61, 0xcb, 0xbb, 0xec, 0xf7, 0xf4, 0x68, 0xb7, 0x01, + 0x04, 0x6c, 0x61, 0x66, 0xf6, 0x4e, 0xb3, 0xd4, 0x0a, 0xc9, 0xdd, 0xd2, +}; +static const unsigned char kat3334_nonce[] = { + 0x66, 0x51, 0xb0, 0xb7, 0xb1, 0x20, 0xe9, 0x52, 0x2b, 0x76, 0x72, 0xa7, + 0x65, 0x29, 0x2b, 0x28, +}; +static const unsigned char kat3334_persstr[] = { + 0x23, 0xdb, 0xa9, 0xa6, 0x57, 0x07, 0x77, 0x42, 0x7d, 0x72, 0x2d, 0x82, + 0x7a, 0x87, 0xcd, 0xbe, 0x2b, 0xb9, 0x07, 0x66, 0xcb, 0xa7, 0x75, 0x1f, + 0xe0, 0xc8, 0x0a, 0x10, 0x94, 0x0b, 0x49, 0x7c, +}; +static const unsigned char kat3334_entropyinpr1[] = { + 0x24, 0x9d, 0x6b, 0x3c, 0x22, 0xd6, 0x0e, 0xdf, 0xae, 0x0e, 0x43, 0x8b, + 0x51, 0x09, 0xaa, 0x7d, 0x81, 0xe3, 0x9c, 0x23, 0x3c, 0x9f, 0xc6, 0x9c, +}; +static const unsigned char kat3334_addinpr1[] = {0}; +static const unsigned char kat3334_entropyinpr2[] = { + 0x2c, 0x68, 0x15, 0xce, 0xe0, 0x42, 0x79, 0x50, 0xe2, 0x6e, 0x80, 0x63, + 0xb6, 0x2f, 0x35, 0x5a, 0x72, 0x52, 0xc6, 0xc2, 0xc1, 0xe5, 0xce, 0x11, +}; +static const unsigned char kat3334_addinpr2[] = {0}; +static const unsigned char kat3334_retbits[] = { + 0x8b, 0xe5, 0x65, 0x00, 0x0c, 0xf9, 0x17, 0x45, 0x38, 0x9c, 0x3b, 0x26, + 0x98, 0x2c, 0x45, 0xdb, 0x3f, 0xb0, 0x6a, 0xb8, 0xbd, 0xdf, 0xba, 0xea, + 0x52, 0x43, 0x39, 0x9a, 0x04, 0x4e, 0xb2, 0xfa, 0xab, 0x15, 0xf4, 0x70, + 0xc8, 0xdc, 0xad, 0xde, 0xed, 0x39, 0xfd, 0xb1, 0x64, 0x19, 0xee, 0x4f, + 0xa7, 0x0b, 0x7f, 0x83, 0xff, 0x28, 0x55, 0xcf, 0x0c, 0xe9, 0x2a, 0xd5, + 0x15, 0xbb, 0x34, 0x74, +}; +static const struct drbg_kat_pr_true kat3334_t = { + 3, kat3334_entropyin, kat3334_nonce, kat3334_persstr, + kat3334_entropyinpr1, kat3334_addinpr1, kat3334_entropyinpr2, + kat3334_addinpr2, kat3334_retbits +}; +static const struct drbg_kat kat3334 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3334_t +}; + +static const unsigned char kat3335_entropyin[] = { + 0x86, 0x39, 0xad, 0xe7, 0xfc, 0xcd, 0x79, 0x40, 0x26, 0xd6, 0xef, 0xee, + 0x07, 0xdf, 0xb9, 0x88, 0x15, 0x41, 0x8b, 0x9d, 0x1a, 0x0a, 0x5f, 0xb5, +}; +static const unsigned char kat3335_nonce[] = { + 0x79, 0xa2, 0x43, 0xe6, 0x84, 0x8a, 0xe6, 0x84, 0xe4, 0x0e, 0x84, 0x0c, + 0xb7, 0x5e, 0x1f, 0x20, +}; +static const unsigned char kat3335_persstr[] = { + 0x7f, 0xa8, 0xae, 0x9e, 0x56, 0x54, 0xfb, 0x4e, 0x84, 0x61, 0xc1, 0xfa, + 0x0f, 0xbc, 0xbb, 0x27, 0xe6, 0xea, 0x14, 0xaf, 0x88, 0x3a, 0x95, 0x8f, + 0xe2, 0x4e, 0x65, 0x95, 0xc9, 0x43, 0x2c, 0xfc, +}; +static const unsigned char kat3335_entropyinpr1[] = { + 0xb0, 0x16, 0xe1, 0x2e, 0x78, 0x73, 0xda, 0xe0, 0x59, 0x0e, 0x20, 0xb8, + 0x3e, 0x3f, 0x90, 0x04, 0x9e, 0xe6, 0xe9, 0x97, 0x9c, 0xb6, 0xff, 0x97, +}; +static const unsigned char kat3335_addinpr1[] = {0}; +static const unsigned char kat3335_entropyinpr2[] = { + 0x86, 0x7b, 0x19, 0x92, 0x45, 0xd7, 0xb2, 0xda, 0x5c, 0x80, 0xe0, 0x05, + 0x43, 0xef, 0x80, 0xf7, 0xfd, 0xd6, 0x60, 0x5b, 0x6c, 0x67, 0x64, 0x35, +}; +static const unsigned char kat3335_addinpr2[] = {0}; +static const unsigned char kat3335_retbits[] = { + 0x16, 0x2b, 0xcf, 0x3d, 0x37, 0x31, 0x52, 0xbf, 0x12, 0xd5, 0x00, 0xd5, + 0x13, 0xf6, 0x8a, 0x4b, 0x05, 0x36, 0x75, 0x5d, 0xdb, 0x6a, 0x32, 0x29, + 0xcf, 0x10, 0xcf, 0x47, 0x13, 0x83, 0x91, 0x25, 0xed, 0xf3, 0xd9, 0x47, + 0x70, 0x49, 0x23, 0x95, 0xa7, 0xc4, 0xe8, 0x99, 0x95, 0x21, 0x76, 0xbf, + 0x5b, 0xf0, 0x31, 0xa1, 0xd5, 0x16, 0x27, 0x3a, 0x58, 0x86, 0x5d, 0x3e, + 0xbc, 0xf8, 0xea, 0x73, +}; +static const struct drbg_kat_pr_true kat3335_t = { + 4, kat3335_entropyin, kat3335_nonce, kat3335_persstr, + kat3335_entropyinpr1, kat3335_addinpr1, kat3335_entropyinpr2, + kat3335_addinpr2, kat3335_retbits +}; +static const struct drbg_kat kat3335 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3335_t +}; + +static const unsigned char kat3336_entropyin[] = { + 0x9c, 0xee, 0xa9, 0x7b, 0x37, 0x81, 0x36, 0xcb, 0x0a, 0x25, 0xe7, 0x24, + 0x04, 0x40, 0x71, 0xfe, 0x65, 0x30, 0xaf, 0x74, 0xed, 0x3a, 0x2e, 0x81, +}; +static const unsigned char kat3336_nonce[] = { + 0x1f, 0x19, 0xbd, 0x84, 0xe6, 0x7a, 0x42, 0x6c, 0xbf, 0x5b, 0x94, 0x31, + 0x2d, 0xc8, 0xfc, 0x80, +}; +static const unsigned char kat3336_persstr[] = { + 0x06, 0x06, 0x5d, 0xc8, 0xe0, 0xbc, 0x46, 0x61, 0xc5, 0xbd, 0x23, 0x1d, + 0xc1, 0x49, 0xe4, 0x93, 0x91, 0x02, 0x96, 0x5d, 0x09, 0x10, 0x56, 0x0c, + 0xdf, 0x36, 0xdb, 0xf0, 0xa8, 0xc4, 0x82, 0x16, +}; +static const unsigned char kat3336_entropyinpr1[] = { + 0x80, 0x0d, 0x22, 0xa9, 0x13, 0x5d, 0x84, 0x82, 0xba, 0x14, 0xbd, 0xcc, + 0x7d, 0x60, 0x8f, 0x1e, 0xe2, 0xda, 0x93, 0x51, 0xa1, 0xb4, 0xcb, 0x98, +}; +static const unsigned char kat3336_addinpr1[] = {0}; +static const unsigned char kat3336_entropyinpr2[] = { + 0xd4, 0x3a, 0xdb, 0xd3, 0xbc, 0xbb, 0x75, 0x92, 0x53, 0x6a, 0x9d, 0xe8, + 0x8c, 0xf2, 0xe0, 0xa4, 0xaa, 0x92, 0xe0, 0xb7, 0x8f, 0x73, 0x86, 0x83, +}; +static const unsigned char kat3336_addinpr2[] = {0}; +static const unsigned char kat3336_retbits[] = { + 0xda, 0x8d, 0xae, 0x5a, 0xa8, 0xa8, 0xb1, 0x36, 0xf1, 0x29, 0x8e, 0xfc, + 0x5e, 0x90, 0x42, 0x16, 0xdf, 0x94, 0x09, 0xf5, 0x1c, 0xbf, 0xc8, 0xa7, + 0xfd, 0x98, 0x4e, 0x4a, 0x71, 0x98, 0xb1, 0xa8, 0xd1, 0x1c, 0x1e, 0xd0, + 0xb1, 0x9c, 0x75, 0x20, 0xd3, 0x3c, 0x34, 0xa0, 0x86, 0xec, 0x86, 0x67, + 0x4b, 0xc4, 0x7f, 0x10, 0xa4, 0x4e, 0x4c, 0x74, 0xa8, 0xfa, 0x8f, 0xde, + 0x5e, 0x2c, 0x5f, 0x87, +}; +static const struct drbg_kat_pr_true kat3336_t = { + 5, kat3336_entropyin, kat3336_nonce, kat3336_persstr, + kat3336_entropyinpr1, kat3336_addinpr1, kat3336_entropyinpr2, + kat3336_addinpr2, kat3336_retbits +}; +static const struct drbg_kat kat3336 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3336_t +}; + +static const unsigned char kat3337_entropyin[] = { + 0x3d, 0x7b, 0x66, 0x69, 0x72, 0xce, 0x07, 0xb4, 0x80, 0xbb, 0x7f, 0xc4, + 0x5b, 0x57, 0x6b, 0x75, 0xe1, 0xbf, 0xe3, 0x24, 0x25, 0xfe, 0xa7, 0x48, +}; +static const unsigned char kat3337_nonce[] = { + 0xe2, 0x09, 0xeb, 0x61, 0x0a, 0x3a, 0xd2, 0xc4, 0x3c, 0x50, 0x88, 0xb0, + 0xdc, 0xfe, 0xcf, 0x2c, +}; +static const unsigned char kat3337_persstr[] = { + 0x77, 0x1a, 0xed, 0x7b, 0x51, 0xc2, 0x2e, 0x00, 0x26, 0x76, 0xd3, 0xc7, + 0xcd, 0xcd, 0xa9, 0x06, 0xd4, 0x3f, 0xe8, 0x05, 0x5d, 0x83, 0x24, 0x79, + 0xe8, 0x71, 0xa2, 0x3f, 0x35, 0xe0, 0xa7, 0x85, +}; +static const unsigned char kat3337_entropyinpr1[] = { + 0xd5, 0xaf, 0xae, 0x2e, 0x7e, 0x12, 0xee, 0x53, 0x8f, 0x41, 0x5c, 0x32, + 0x66, 0xd9, 0x2f, 0xd0, 0x91, 0xdd, 0x73, 0x0f, 0x01, 0x7b, 0x21, 0x1a, +}; +static const unsigned char kat3337_addinpr1[] = {0}; +static const unsigned char kat3337_entropyinpr2[] = { + 0x92, 0x48, 0xae, 0x65, 0x13, 0x4e, 0xa2, 0xba, 0xc3, 0xb4, 0x59, 0xa9, + 0x1c, 0x65, 0x33, 0x0e, 0x2a, 0x52, 0xcd, 0xa2, 0xf5, 0x41, 0x6c, 0x19, +}; +static const unsigned char kat3337_addinpr2[] = {0}; +static const unsigned char kat3337_retbits[] = { + 0xc1, 0xf3, 0x6b, 0xe2, 0x61, 0x10, 0x8c, 0xa5, 0x62, 0xdf, 0x10, 0xb0, + 0x71, 0xff, 0x5f, 0xab, 0x4d, 0x61, 0x11, 0x3f, 0xcb, 0x84, 0xc9, 0xe4, + 0xc6, 0xa5, 0xe9, 0x63, 0x30, 0x7a, 0x5e, 0x7c, 0x74, 0xa7, 0x85, 0xb1, + 0xcd, 0x9d, 0x9a, 0x4c, 0x99, 0xfe, 0x1b, 0xee, 0xf7, 0xe9, 0xc9, 0x6e, + 0x7c, 0xd6, 0xee, 0xcd, 0xf3, 0x70, 0x10, 0xac, 0x64, 0xaa, 0xf4, 0x7d, + 0x1e, 0x36, 0x52, 0x2b, +}; +static const struct drbg_kat_pr_true kat3337_t = { + 6, kat3337_entropyin, kat3337_nonce, kat3337_persstr, + kat3337_entropyinpr1, kat3337_addinpr1, kat3337_entropyinpr2, + kat3337_addinpr2, kat3337_retbits +}; +static const struct drbg_kat kat3337 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3337_t +}; + +static const unsigned char kat3338_entropyin[] = { + 0x5c, 0x8b, 0xf4, 0xd0, 0x49, 0x7c, 0xde, 0xb9, 0xc8, 0xaa, 0x41, 0x34, + 0x83, 0xeb, 0x59, 0x61, 0xf2, 0x58, 0x63, 0x6b, 0x29, 0x64, 0xe0, 0x22, +}; +static const unsigned char kat3338_nonce[] = { + 0x82, 0x7b, 0xb9, 0x4d, 0x7a, 0x94, 0xa2, 0x35, 0x68, 0x03, 0x9a, 0x8c, + 0x9e, 0x04, 0x5a, 0x27, +}; +static const unsigned char kat3338_persstr[] = { + 0x52, 0xb5, 0x41, 0xed, 0xb5, 0x99, 0x04, 0x1c, 0x35, 0x0c, 0x18, 0x65, + 0x3c, 0x70, 0x5c, 0xe3, 0x01, 0x18, 0xce, 0xb5, 0xaa, 0x62, 0xe5, 0xea, + 0x52, 0xeb, 0x51, 0x01, 0x2b, 0xa9, 0x8c, 0x5d, +}; +static const unsigned char kat3338_entropyinpr1[] = { + 0xb2, 0xdc, 0x39, 0xdf, 0x8c, 0x0f, 0x40, 0x2a, 0x49, 0x3b, 0x43, 0x05, + 0x31, 0x36, 0xa7, 0xea, 0xcc, 0x86, 0xed, 0x75, 0xec, 0x5c, 0xa5, 0xfc, +}; +static const unsigned char kat3338_addinpr1[] = {0}; +static const unsigned char kat3338_entropyinpr2[] = { + 0x1e, 0x25, 0x85, 0x2a, 0xe1, 0x6d, 0x40, 0x53, 0x2a, 0xd5, 0xff, 0xc6, + 0x89, 0x65, 0x79, 0xeb, 0xdd, 0x4a, 0xc2, 0xcf, 0x9b, 0xa7, 0xa3, 0x1f, +}; +static const unsigned char kat3338_addinpr2[] = {0}; +static const unsigned char kat3338_retbits[] = { + 0xd4, 0x4f, 0x52, 0x57, 0x27, 0x34, 0x72, 0x02, 0xd2, 0x3f, 0xaf, 0x0b, + 0xc5, 0x0c, 0x5b, 0x14, 0xd6, 0x51, 0x93, 0x75, 0x64, 0x5f, 0x2b, 0xf6, + 0xaf, 0xf7, 0xf1, 0x1c, 0x64, 0x2f, 0x1a, 0x7e, 0xf2, 0xff, 0x6f, 0x73, + 0x18, 0xdb, 0x8f, 0x15, 0x75, 0xeb, 0xc0, 0xd5, 0x05, 0xd1, 0x66, 0x0e, + 0x6d, 0xad, 0x50, 0x4c, 0x56, 0xdf, 0xb1, 0x46, 0xb9, 0x32, 0x61, 0xcb, + 0x6a, 0x88, 0x72, 0x2d, +}; +static const struct drbg_kat_pr_true kat3338_t = { + 7, kat3338_entropyin, kat3338_nonce, kat3338_persstr, + kat3338_entropyinpr1, kat3338_addinpr1, kat3338_entropyinpr2, + kat3338_addinpr2, kat3338_retbits +}; +static const struct drbg_kat kat3338 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3338_t +}; + +static const unsigned char kat3339_entropyin[] = { + 0xd5, 0xfb, 0x69, 0xe7, 0xaa, 0x08, 0x00, 0x97, 0xf6, 0xa2, 0xf5, 0xc8, + 0x17, 0x9b, 0x18, 0x6a, 0x21, 0x18, 0x09, 0xbc, 0x13, 0x32, 0x59, 0xec, +}; +static const unsigned char kat3339_nonce[] = { + 0x60, 0x3f, 0x8a, 0x72, 0x32, 0x13, 0x5c, 0x99, 0x73, 0x15, 0xe0, 0x4a, + 0x07, 0xec, 0xab, 0xa8, +}; +static const unsigned char kat3339_persstr[] = { + 0xd1, 0x02, 0x65, 0x64, 0xe8, 0x75, 0x79, 0x0e, 0x42, 0x88, 0x4b, 0x09, + 0x1e, 0xb8, 0x6d, 0x6f, 0xd2, 0x08, 0xcc, 0x04, 0x0f, 0x5c, 0x49, 0xd4, + 0x6b, 0x1c, 0x1b, 0x6d, 0xbe, 0x4c, 0x99, 0x40, +}; +static const unsigned char kat3339_entropyinpr1[] = { + 0x23, 0xf4, 0x9a, 0x2b, 0x9d, 0x87, 0x14, 0xfc, 0x8a, 0x03, 0x0b, 0x70, + 0x7d, 0x62, 0xb8, 0x26, 0x39, 0x4f, 0x92, 0x23, 0xd1, 0x51, 0xcf, 0xbe, +}; +static const unsigned char kat3339_addinpr1[] = {0}; +static const unsigned char kat3339_entropyinpr2[] = { + 0xcc, 0xc6, 0x52, 0x4d, 0x6c, 0xc5, 0x65, 0x67, 0x2d, 0x7b, 0xa9, 0x5b, + 0x19, 0x01, 0x97, 0xcb, 0x9c, 0x17, 0xe7, 0xe1, 0x56, 0x01, 0x01, 0x1e, +}; +static const unsigned char kat3339_addinpr2[] = {0}; +static const unsigned char kat3339_retbits[] = { + 0xc7, 0x17, 0xdb, 0xc0, 0x47, 0xd4, 0xeb, 0x6b, 0x26, 0x84, 0xc6, 0xcc, + 0x93, 0x47, 0x0d, 0x1e, 0x06, 0x42, 0xd7, 0xc1, 0x5c, 0x63, 0xcd, 0xf8, + 0xed, 0xfd, 0xa8, 0x52, 0x01, 0xf0, 0x62, 0x43, 0xf5, 0xf9, 0x68, 0x2c, + 0xad, 0x07, 0x71, 0x70, 0xb6, 0x1e, 0xd1, 0x40, 0x17, 0x1b, 0x44, 0x5f, + 0x2e, 0x7f, 0x23, 0xd0, 0x11, 0x62, 0xd8, 0x57, 0xd5, 0xfb, 0xc9, 0x06, + 0xd2, 0xfb, 0x12, 0x49, +}; +static const struct drbg_kat_pr_true kat3339_t = { + 8, kat3339_entropyin, kat3339_nonce, kat3339_persstr, + kat3339_entropyinpr1, kat3339_addinpr1, kat3339_entropyinpr2, + kat3339_addinpr2, kat3339_retbits +}; +static const struct drbg_kat kat3339 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3339_t +}; + +static const unsigned char kat3340_entropyin[] = { + 0x5f, 0x56, 0x49, 0xdf, 0x0b, 0x46, 0x11, 0xf7, 0x1a, 0xd8, 0xa4, 0x64, + 0x85, 0xc2, 0x72, 0xa5, 0xc8, 0x57, 0xdc, 0x60, 0x4f, 0x23, 0x71, 0xc6, +}; +static const unsigned char kat3340_nonce[] = { + 0x0a, 0x79, 0x50, 0xe6, 0xbc, 0x62, 0x88, 0xd2, 0xf7, 0x78, 0xce, 0xa1, + 0x92, 0x59, 0xfd, 0x22, +}; +static const unsigned char kat3340_persstr[] = { + 0x2a, 0x5f, 0x50, 0x38, 0x08, 0x17, 0x88, 0x3e, 0x9c, 0x76, 0xc9, 0xae, + 0xf0, 0x97, 0x73, 0x75, 0xe6, 0xce, 0xa5, 0x8d, 0x0a, 0xa5, 0x63, 0xa2, + 0x89, 0x91, 0x49, 0xae, 0x37, 0x05, 0x39, 0x5c, +}; +static const unsigned char kat3340_entropyinpr1[] = { + 0xfe, 0xb0, 0x97, 0xd4, 0x2b, 0xdd, 0x52, 0xb0, 0xa3, 0xc7, 0xbb, 0xcc, + 0x58, 0x4e, 0x4d, 0xaa, 0xd1, 0xa2, 0x1e, 0x07, 0x0b, 0x8b, 0x04, 0xe1, +}; +static const unsigned char kat3340_addinpr1[] = {0}; +static const unsigned char kat3340_entropyinpr2[] = { + 0x8f, 0x7c, 0xbd, 0x63, 0x44, 0xe5, 0x6c, 0x3d, 0x2b, 0x58, 0xfd, 0xf0, + 0x3b, 0x13, 0x6d, 0x46, 0x68, 0x40, 0x30, 0xc8, 0xbf, 0x18, 0x1e, 0x23, +}; +static const unsigned char kat3340_addinpr2[] = {0}; +static const unsigned char kat3340_retbits[] = { + 0x16, 0xb8, 0x9a, 0xa5, 0x89, 0x5b, 0xd2, 0x43, 0x0e, 0x98, 0xba, 0x7b, + 0xba, 0xaa, 0x3a, 0xb0, 0x88, 0x20, 0x31, 0x01, 0xfa, 0xe7, 0xaa, 0xcb, + 0xf1, 0xa0, 0xc1, 0xfb, 0x2e, 0x41, 0x99, 0x15, 0xc9, 0xaf, 0xd9, 0x03, + 0x31, 0x69, 0xa5, 0x58, 0x03, 0xbd, 0xb7, 0xb8, 0xdd, 0x51, 0xa8, 0x65, + 0x5f, 0x29, 0x75, 0x77, 0xbd, 0x64, 0xa4, 0x67, 0x0e, 0xed, 0x5e, 0x74, + 0x7c, 0x39, 0xad, 0x4e, +}; +static const struct drbg_kat_pr_true kat3340_t = { + 9, kat3340_entropyin, kat3340_nonce, kat3340_persstr, + kat3340_entropyinpr1, kat3340_addinpr1, kat3340_entropyinpr2, + kat3340_addinpr2, kat3340_retbits +}; +static const struct drbg_kat kat3340 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3340_t +}; + +static const unsigned char kat3341_entropyin[] = { + 0x3f, 0x95, 0x4e, 0xad, 0x27, 0xfa, 0x11, 0xba, 0x39, 0x1b, 0x4c, 0x41, + 0xe8, 0xe5, 0x14, 0x85, 0x4f, 0x1d, 0xad, 0xa3, 0xca, 0x1e, 0x72, 0xa1, +}; +static const unsigned char kat3341_nonce[] = { + 0x99, 0xb8, 0xdf, 0x3b, 0x2c, 0x9a, 0x83, 0x01, 0x81, 0xcf, 0x11, 0xbd, + 0x6e, 0x59, 0xef, 0x2a, +}; +static const unsigned char kat3341_persstr[] = { + 0x2b, 0x86, 0x1d, 0xb6, 0xd6, 0x22, 0xa6, 0xca, 0x2e, 0xe4, 0xa3, 0xeb, + 0x19, 0xfc, 0x54, 0x19, 0x48, 0xc3, 0xcd, 0x12, 0x02, 0xe5, 0x96, 0xa0, + 0x44, 0x81, 0xb5, 0x39, 0x49, 0xc8, 0xdc, 0xde, +}; +static const unsigned char kat3341_entropyinpr1[] = { + 0x06, 0x1a, 0xed, 0x91, 0xfe, 0x46, 0x28, 0x00, 0x9b, 0x0e, 0xf5, 0x96, + 0x30, 0xa6, 0x1a, 0x7f, 0xbf, 0xae, 0x33, 0xac, 0x06, 0xa0, 0x27, 0x09, +}; +static const unsigned char kat3341_addinpr1[] = {0}; +static const unsigned char kat3341_entropyinpr2[] = { + 0xdc, 0x84, 0x4c, 0x4e, 0x2a, 0xf7, 0x77, 0xdf, 0xa0, 0x24, 0xe2, 0xfb, + 0xc5, 0x40, 0xb2, 0x60, 0x2c, 0xde, 0x67, 0xb5, 0xf8, 0x20, 0xae, 0x79, +}; +static const unsigned char kat3341_addinpr2[] = {0}; +static const unsigned char kat3341_retbits[] = { + 0x5b, 0x93, 0xe5, 0x37, 0xb2, 0xcf, 0x46, 0xa9, 0x32, 0xa0, 0x60, 0xce, + 0xa1, 0x36, 0xb7, 0xac, 0x38, 0xee, 0x3e, 0x3d, 0x61, 0xed, 0xf1, 0x59, + 0xdb, 0x09, 0xb8, 0x45, 0xfe, 0x4c, 0x32, 0x8a, 0xae, 0xea, 0xbf, 0x5b, + 0x65, 0x04, 0xbd, 0x39, 0x1e, 0x13, 0x89, 0x5f, 0x2c, 0x58, 0xfa, 0x4d, + 0xce, 0x98, 0x6b, 0x87, 0x99, 0x1c, 0x98, 0xdf, 0x94, 0xa5, 0x48, 0x30, + 0x34, 0xb8, 0xb9, 0x4d, +}; +static const struct drbg_kat_pr_true kat3341_t = { + 10, kat3341_entropyin, kat3341_nonce, kat3341_persstr, + kat3341_entropyinpr1, kat3341_addinpr1, kat3341_entropyinpr2, + kat3341_addinpr2, kat3341_retbits +}; +static const struct drbg_kat kat3341 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3341_t +}; + +static const unsigned char kat3342_entropyin[] = { + 0x24, 0x8d, 0x73, 0xe3, 0x9d, 0x86, 0xad, 0x65, 0x51, 0x01, 0xe3, 0x63, + 0x38, 0x01, 0x51, 0xe9, 0x48, 0x27, 0xb6, 0x49, 0xbc, 0x85, 0x62, 0x82, +}; +static const unsigned char kat3342_nonce[] = { + 0xda, 0xf5, 0xd9, 0xd1, 0xad, 0x98, 0x93, 0x1f, 0x67, 0xa3, 0x60, 0x9e, + 0x17, 0x41, 0xbf, 0x3a, +}; +static const unsigned char kat3342_persstr[] = { + 0x21, 0x31, 0x0c, 0x14, 0x1c, 0xbf, 0xed, 0x62, 0x04, 0xb6, 0xe9, 0x28, + 0xc9, 0xe7, 0xee, 0x3a, 0x66, 0x40, 0x1c, 0xa3, 0xd0, 0x32, 0xa0, 0x6e, + 0x31, 0x67, 0xa9, 0xd9, 0x97, 0xb8, 0x4e, 0x27, +}; +static const unsigned char kat3342_entropyinpr1[] = { + 0x04, 0x79, 0xff, 0x68, 0xf1, 0x0d, 0x67, 0xff, 0x5b, 0x88, 0x45, 0xbf, + 0x75, 0x32, 0x0a, 0xd3, 0x43, 0x6a, 0x57, 0x1b, 0xcc, 0x76, 0x3f, 0x52, +}; +static const unsigned char kat3342_addinpr1[] = {0}; +static const unsigned char kat3342_entropyinpr2[] = { + 0x5e, 0x66, 0x89, 0xa7, 0xe9, 0x91, 0xb0, 0x23, 0xb9, 0x41, 0xbe, 0x2e, + 0xad, 0xad, 0xdd, 0x5b, 0xfb, 0x19, 0xa0, 0x40, 0x2b, 0x78, 0xa0, 0x4a, +}; +static const unsigned char kat3342_addinpr2[] = {0}; +static const unsigned char kat3342_retbits[] = { + 0x3d, 0xb5, 0x27, 0xad, 0x3a, 0x51, 0x94, 0x2c, 0x88, 0xaf, 0x34, 0x63, + 0x4b, 0x1b, 0x47, 0x16, 0x76, 0xa4, 0x9f, 0xc7, 0x93, 0xa7, 0xec, 0x4a, + 0xff, 0x97, 0xfc, 0xf8, 0xba, 0x49, 0xfa, 0xd3, 0x8b, 0x55, 0xab, 0xb9, + 0x60, 0x1d, 0x1f, 0x22, 0xdf, 0x9f, 0x93, 0xcb, 0x70, 0xc0, 0x90, 0x86, + 0xc6, 0x74, 0x3e, 0xab, 0x2e, 0x21, 0x0b, 0x54, 0x55, 0x48, 0x6f, 0x61, + 0x2d, 0xc2, 0x3c, 0x31, +}; +static const struct drbg_kat_pr_true kat3342_t = { + 11, kat3342_entropyin, kat3342_nonce, kat3342_persstr, + kat3342_entropyinpr1, kat3342_addinpr1, kat3342_entropyinpr2, + kat3342_addinpr2, kat3342_retbits +}; +static const struct drbg_kat kat3342 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3342_t +}; + +static const unsigned char kat3343_entropyin[] = { + 0x4a, 0x65, 0x39, 0x7a, 0xac, 0xf8, 0xb2, 0xd5, 0xc8, 0x5c, 0xcf, 0x6c, + 0x3c, 0x85, 0xe9, 0xee, 0x35, 0xe9, 0xbc, 0x97, 0xf6, 0x54, 0xf9, 0x9d, +}; +static const unsigned char kat3343_nonce[] = { + 0x18, 0x60, 0x0a, 0x32, 0x9c, 0xd1, 0xf9, 0x62, 0x92, 0x61, 0xb3, 0x05, + 0x31, 0x67, 0x03, 0xdb, +}; +static const unsigned char kat3343_persstr[] = { + 0x2e, 0x9f, 0xf1, 0x17, 0x0a, 0x1d, 0x62, 0x9f, 0x13, 0x7f, 0xb2, 0x34, + 0xf7, 0x74, 0x8a, 0xc1, 0x71, 0x10, 0x17, 0xbc, 0x14, 0x0f, 0xf9, 0xed, + 0xe9, 0x3f, 0xdf, 0x6f, 0x45, 0x21, 0xec, 0x7e, +}; +static const unsigned char kat3343_entropyinpr1[] = { + 0x7b, 0x63, 0xb6, 0xed, 0x68, 0xdc, 0xbb, 0x20, 0xa0, 0x9f, 0x47, 0x9a, + 0x5f, 0x9b, 0x79, 0x7f, 0x8c, 0x0b, 0x9b, 0x1e, 0x7f, 0xca, 0xcd, 0xb6, +}; +static const unsigned char kat3343_addinpr1[] = {0}; +static const unsigned char kat3343_entropyinpr2[] = { + 0x61, 0x4b, 0x58, 0xf2, 0x49, 0xce, 0x4e, 0x0d, 0x18, 0x40, 0xc8, 0xec, + 0x62, 0x0c, 0x05, 0xe0, 0x38, 0x4d, 0x3c, 0x0c, 0x48, 0x93, 0x86, 0xe2, +}; +static const unsigned char kat3343_addinpr2[] = {0}; +static const unsigned char kat3343_retbits[] = { + 0xf9, 0x7f, 0xf4, 0xd8, 0xb1, 0x44, 0x74, 0x6f, 0x79, 0x44, 0xe6, 0x9a, + 0xa1, 0x07, 0x24, 0x1c, 0xa5, 0xb6, 0xe6, 0x7c, 0xc2, 0x84, 0x43, 0xa8, + 0xb0, 0x15, 0x09, 0xb1, 0xca, 0xd3, 0xa0, 0xab, 0x42, 0x72, 0xb8, 0xc9, + 0x98, 0xbc, 0xc5, 0x45, 0x5a, 0xdd, 0xec, 0x52, 0xae, 0x97, 0x10, 0x42, + 0xf1, 0xba, 0xea, 0x37, 0xa2, 0xc7, 0xda, 0x2c, 0x87, 0xa5, 0xad, 0xf0, + 0x41, 0x04, 0xb8, 0xcc, +}; +static const struct drbg_kat_pr_true kat3343_t = { + 12, kat3343_entropyin, kat3343_nonce, kat3343_persstr, + kat3343_entropyinpr1, kat3343_addinpr1, kat3343_entropyinpr2, + kat3343_addinpr2, kat3343_retbits +}; +static const struct drbg_kat kat3343 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3343_t +}; + +static const unsigned char kat3344_entropyin[] = { + 0x01, 0xbe, 0x00, 0xdc, 0xc4, 0xa2, 0xb5, 0xea, 0x92, 0x22, 0x3c, 0x2d, + 0x17, 0xde, 0x9f, 0x50, 0xda, 0x37, 0xa5, 0x1e, 0x1c, 0x5c, 0xa4, 0x20, +}; +static const unsigned char kat3344_nonce[] = { + 0xb4, 0xca, 0x36, 0x3e, 0xee, 0xd8, 0x93, 0x29, 0xa4, 0x94, 0x01, 0x7e, + 0xfa, 0xa4, 0xb7, 0xd8, +}; +static const unsigned char kat3344_persstr[] = { + 0x58, 0x65, 0x8f, 0x38, 0xa2, 0xa7, 0x9e, 0xc9, 0xbe, 0x8d, 0x54, 0xcf, + 0xfa, 0x4c, 0x88, 0x8c, 0x16, 0xd7, 0x4e, 0xdd, 0x0f, 0x30, 0xf3, 0xbe, + 0x4c, 0x42, 0xe8, 0xcc, 0x28, 0x8c, 0xb8, 0x2e, +}; +static const unsigned char kat3344_entropyinpr1[] = { + 0x94, 0x09, 0x4e, 0x9b, 0xce, 0x3d, 0xd1, 0x75, 0xc4, 0x7f, 0xfd, 0xac, + 0xac, 0x65, 0x12, 0x35, 0xae, 0xc4, 0x5e, 0xb5, 0x2f, 0x31, 0x5f, 0x3d, +}; +static const unsigned char kat3344_addinpr1[] = {0}; +static const unsigned char kat3344_entropyinpr2[] = { + 0x11, 0xcb, 0xb3, 0xa9, 0x60, 0xa9, 0x97, 0xe6, 0x4b, 0x57, 0x23, 0x36, + 0x53, 0x49, 0x7c, 0x35, 0x3c, 0xd9, 0x2b, 0x01, 0x81, 0x7f, 0x1e, 0x28, +}; +static const unsigned char kat3344_addinpr2[] = {0}; +static const unsigned char kat3344_retbits[] = { + 0xa7, 0x28, 0x2e, 0xc7, 0x3f, 0xac, 0x8d, 0x2f, 0xc8, 0x74, 0x89, 0x29, + 0xe1, 0xa3, 0xe3, 0x5e, 0x68, 0x65, 0x45, 0x20, 0x35, 0xbe, 0xb5, 0x3d, + 0x8a, 0xe8, 0x1d, 0xe0, 0xc6, 0x87, 0x20, 0x55, 0x16, 0x10, 0x4a, 0x08, + 0x31, 0x3f, 0xf6, 0xdb, 0xc3, 0xa2, 0x82, 0x4e, 0x7e, 0x74, 0x38, 0x2f, + 0xe1, 0xc1, 0x6e, 0x9e, 0x4e, 0xa6, 0x38, 0x35, 0x73, 0x50, 0x33, 0x40, + 0x50, 0xb0, 0xd7, 0x04, +}; +static const struct drbg_kat_pr_true kat3344_t = { + 13, kat3344_entropyin, kat3344_nonce, kat3344_persstr, + kat3344_entropyinpr1, kat3344_addinpr1, kat3344_entropyinpr2, + kat3344_addinpr2, kat3344_retbits +}; +static const struct drbg_kat kat3344 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3344_t +}; + +static const unsigned char kat3345_entropyin[] = { + 0x76, 0x2e, 0x5a, 0x59, 0x5e, 0xc9, 0x81, 0xda, 0x51, 0x86, 0xf2, 0x66, + 0x7a, 0xba, 0x37, 0xac, 0xa5, 0x0d, 0x11, 0x6d, 0x0c, 0x68, 0x92, 0x89, +}; +static const unsigned char kat3345_nonce[] = { + 0x20, 0x3a, 0x94, 0xd0, 0xa4, 0x92, 0x93, 0xce, 0x76, 0x2e, 0x8e, 0x8e, + 0x8f, 0x96, 0xcf, 0x1c, +}; +static const unsigned char kat3345_persstr[] = { + 0xe3, 0x17, 0x98, 0xcc, 0xa7, 0x24, 0x23, 0x99, 0x97, 0xc0, 0xe1, 0x14, + 0xc6, 0x45, 0x66, 0x5a, 0xea, 0xeb, 0xf0, 0x2f, 0x9c, 0x96, 0x03, 0x0e, + 0x1b, 0x19, 0x39, 0x0c, 0x63, 0xe8, 0x34, 0x1d, +}; +static const unsigned char kat3345_entropyinpr1[] = { + 0x87, 0x39, 0xe1, 0xf7, 0xd7, 0xe3, 0x47, 0x81, 0x9f, 0xa2, 0x4b, 0x03, + 0x68, 0xec, 0xcf, 0xa8, 0xad, 0x3c, 0x60, 0x22, 0x72, 0x4f, 0x59, 0xf4, +}; +static const unsigned char kat3345_addinpr1[] = {0}; +static const unsigned char kat3345_entropyinpr2[] = { + 0x65, 0x5e, 0xbd, 0x1d, 0x57, 0x8e, 0x43, 0xd8, 0x8a, 0x36, 0x2d, 0x9f, + 0x3f, 0x4f, 0xc0, 0xf0, 0xac, 0x84, 0x64, 0x45, 0x68, 0x77, 0x90, 0x79, +}; +static const unsigned char kat3345_addinpr2[] = {0}; +static const unsigned char kat3345_retbits[] = { + 0x6e, 0xdd, 0x34, 0xb0, 0x11, 0x1a, 0xd2, 0xdf, 0x8a, 0xe4, 0x7e, 0x4d, + 0xc6, 0x8f, 0x08, 0x82, 0xf0, 0x8a, 0xf2, 0xef, 0xe4, 0x18, 0x07, 0xe0, + 0x29, 0x6c, 0x50, 0xc2, 0xc4, 0x56, 0x8c, 0x02, 0x5c, 0xeb, 0x8c, 0xbe, + 0x6d, 0xe2, 0x89, 0x19, 0x0d, 0x75, 0x99, 0xc2, 0xf3, 0x80, 0x13, 0x0d, + 0x07, 0xd7, 0x8b, 0x95, 0xaa, 0x6e, 0x6f, 0xc6, 0xb5, 0xcd, 0x1e, 0x6f, + 0xcc, 0x81, 0xb2, 0x66, +}; +static const struct drbg_kat_pr_true kat3345_t = { + 14, kat3345_entropyin, kat3345_nonce, kat3345_persstr, + kat3345_entropyinpr1, kat3345_addinpr1, kat3345_entropyinpr2, + kat3345_addinpr2, kat3345_retbits +}; +static const struct drbg_kat kat3345 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 0, 64, &kat3345_t +}; + +static const unsigned char kat3346_entropyin[] = { + 0x5c, 0xf3, 0x47, 0x2c, 0x83, 0xb4, 0xa9, 0x0c, 0x6b, 0x5f, 0x34, 0x9c, + 0xa2, 0xf9, 0xbd, 0xe4, 0xf7, 0xff, 0x42, 0xf3, 0x04, 0x67, 0x57, 0x13, +}; +static const unsigned char kat3346_nonce[] = { + 0x6d, 0x2f, 0xc8, 0xc1, 0xe3, 0xae, 0x56, 0x7f, 0xb9, 0xd2, 0x23, 0x84, + 0x70, 0xa9, 0x82, 0x49, +}; +static const unsigned char kat3346_persstr[] = { + 0xc9, 0xc7, 0xab, 0x32, 0xc6, 0x18, 0xa2, 0x66, 0x06, 0x25, 0xc8, 0x15, + 0x25, 0x0f, 0x46, 0xe8, 0x09, 0x7d, 0xdc, 0xa0, 0x38, 0x18, 0x81, 0x75, + 0x97, 0x04, 0xf9, 0x33, 0x38, 0x3e, 0x8d, 0xa7, +}; +static const unsigned char kat3346_entropyinpr1[] = { + 0x99, 0xbd, 0x71, 0xbc, 0xd4, 0x82, 0xcf, 0x4c, 0xcc, 0x84, 0x9b, 0x9d, + 0x3c, 0xbc, 0xc0, 0x52, 0x9b, 0xf1, 0x61, 0xd5, 0x05, 0x6d, 0x11, 0xf8, +}; +static const unsigned char kat3346_addinpr1[] = { + 0x1c, 0x34, 0xe8, 0x15, 0xf3, 0xa3, 0xbc, 0xd7, 0x1f, 0xe0, 0x8b, 0xd7, + 0x63, 0x3e, 0xb7, 0x08, 0xaf, 0x86, 0x10, 0x4d, 0x0e, 0x49, 0x9a, 0x4b, + 0xa1, 0x28, 0x88, 0xd6, 0xd1, 0xee, 0x57, 0x0f, +}; +static const unsigned char kat3346_entropyinpr2[] = { + 0xe4, 0x60, 0xda, 0xfd, 0x8b, 0x32, 0xa9, 0x6e, 0xc5, 0x02, 0x16, 0xb0, + 0xfa, 0x91, 0x41, 0x9e, 0x77, 0x17, 0xf5, 0x0d, 0xf6, 0x6a, 0xc7, 0xe0, +}; +static const unsigned char kat3346_addinpr2[] = { + 0x22, 0x1a, 0x56, 0x80, 0xb2, 0x50, 0x18, 0xb2, 0xa5, 0x3f, 0x5e, 0x1d, + 0x0a, 0x7b, 0x19, 0xb0, 0x4c, 0xaf, 0x7b, 0x25, 0x58, 0x79, 0x3d, 0xbe, + 0x36, 0xbb, 0xab, 0xca, 0xea, 0xb8, 0xbc, 0x8e, +}; +static const unsigned char kat3346_retbits[] = { + 0x29, 0x43, 0x3a, 0xe6, 0xda, 0x5e, 0xff, 0x61, 0x61, 0x44, 0x9a, 0x2f, + 0xaf, 0x74, 0x91, 0xa4, 0x72, 0x54, 0x3a, 0x38, 0x29, 0x39, 0x5c, 0x19, + 0x5b, 0x93, 0x28, 0x6a, 0x25, 0x57, 0x00, 0x3c, 0x07, 0x0e, 0x60, 0xbc, + 0x37, 0x7a, 0x5e, 0x6e, 0x89, 0x1a, 0x9e, 0x46, 0xb7, 0xc5, 0x34, 0x02, + 0x68, 0xaf, 0xf9, 0x89, 0xf8, 0x6f, 0x5a, 0x6a, 0x32, 0x24, 0x02, 0x1c, + 0x37, 0x1e, 0x8d, 0x11, +}; +static const struct drbg_kat_pr_true kat3346_t = { + 0, kat3346_entropyin, kat3346_nonce, kat3346_persstr, + kat3346_entropyinpr1, kat3346_addinpr1, kat3346_entropyinpr2, + kat3346_addinpr2, kat3346_retbits +}; +static const struct drbg_kat kat3346 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3346_t +}; + +static const unsigned char kat3347_entropyin[] = { + 0x7d, 0x97, 0x11, 0x81, 0x37, 0xbd, 0xd3, 0xeb, 0x7c, 0x27, 0xc5, 0x57, + 0x70, 0xb2, 0xdf, 0xb3, 0x0d, 0xda, 0x66, 0x8e, 0xfa, 0xea, 0x5c, 0x42, +}; +static const unsigned char kat3347_nonce[] = { + 0x6d, 0x30, 0x04, 0xa2, 0x98, 0xfc, 0x50, 0xba, 0xd2, 0xa6, 0xa1, 0x65, + 0xf3, 0xc4, 0x9e, 0x6d, +}; +static const unsigned char kat3347_persstr[] = { + 0xd4, 0xf4, 0xa0, 0x32, 0x80, 0xcf, 0x33, 0xdd, 0xd4, 0x15, 0xda, 0xcf, + 0x43, 0x01, 0x7e, 0x68, 0x78, 0x9a, 0xbb, 0x15, 0x2f, 0x06, 0x79, 0x5e, + 0x24, 0x7e, 0xbe, 0x03, 0xb8, 0xd8, 0x29, 0xfb, +}; +static const unsigned char kat3347_entropyinpr1[] = { + 0x27, 0x3f, 0x10, 0xd9, 0x00, 0x43, 0x80, 0x6a, 0x6a, 0x9d, 0x73, 0x2e, + 0x44, 0x30, 0xdf, 0x52, 0xbd, 0xcb, 0x8a, 0xfc, 0xfc, 0xe6, 0xc9, 0x83, +}; +static const unsigned char kat3347_addinpr1[] = { + 0xa1, 0x3d, 0xf7, 0x5d, 0x2a, 0x2c, 0x49, 0x60, 0x9f, 0x0e, 0x06, 0x47, + 0x07, 0xe7, 0x71, 0xe9, 0xe4, 0xad, 0x67, 0x00, 0xfd, 0xc5, 0x9b, 0x11, + 0x59, 0x2b, 0x17, 0x34, 0x04, 0xbf, 0x02, 0x59, +}; +static const unsigned char kat3347_entropyinpr2[] = { + 0x33, 0xa1, 0x18, 0x24, 0xc6, 0x9a, 0x4c, 0xdc, 0xb0, 0xec, 0x46, 0xb0, + 0xe3, 0xae, 0xb0, 0x1b, 0x82, 0x47, 0x51, 0x2f, 0x3c, 0x3d, 0x0c, 0x93, +}; +static const unsigned char kat3347_addinpr2[] = { + 0x89, 0xc3, 0xf3, 0x72, 0x10, 0x49, 0x97, 0x55, 0xab, 0x16, 0xe9, 0xfe, + 0x09, 0x95, 0xbf, 0x0e, 0x8a, 0x2f, 0x05, 0x30, 0x9b, 0x1e, 0x42, 0xf3, + 0x37, 0xe5, 0x3b, 0x95, 0x6f, 0x89, 0x26, 0xdf, +}; +static const unsigned char kat3347_retbits[] = { + 0xdc, 0x4b, 0x4f, 0xf2, 0x2e, 0x96, 0x83, 0x96, 0xc5, 0xa7, 0x18, 0x94, + 0x03, 0x30, 0xb2, 0xf0, 0x81, 0x46, 0x1a, 0x5b, 0x3d, 0xa1, 0x5f, 0xab, + 0xe5, 0xe5, 0xda, 0xdf, 0x8b, 0xef, 0xde, 0x6c, 0xc9, 0x60, 0xf0, 0x91, + 0xb0, 0x2c, 0xe5, 0xa7, 0xd3, 0xe7, 0x5b, 0x5e, 0x90, 0x28, 0x95, 0x59, + 0x05, 0x11, 0x36, 0x47, 0xb7, 0x7f, 0x7b, 0x03, 0x0f, 0xd0, 0xf7, 0x70, + 0x6b, 0x2c, 0x9c, 0x2e, +}; +static const struct drbg_kat_pr_true kat3347_t = { + 1, kat3347_entropyin, kat3347_nonce, kat3347_persstr, + kat3347_entropyinpr1, kat3347_addinpr1, kat3347_entropyinpr2, + kat3347_addinpr2, kat3347_retbits +}; +static const struct drbg_kat kat3347 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3347_t +}; + +static const unsigned char kat3348_entropyin[] = { + 0x83, 0x2d, 0x0e, 0x92, 0x54, 0x0e, 0x3f, 0x7f, 0xb5, 0xcd, 0x7b, 0xb3, + 0xf4, 0x29, 0x98, 0x27, 0xa2, 0xb4, 0xaf, 0x76, 0x29, 0x87, 0xa0, 0xd5, +}; +static const unsigned char kat3348_nonce[] = { + 0x14, 0x15, 0x5a, 0x93, 0x84, 0xe6, 0x5f, 0x12, 0xb7, 0x53, 0x3d, 0xce, + 0x65, 0xcc, 0x22, 0xcb, +}; +static const unsigned char kat3348_persstr[] = { + 0xf9, 0x7e, 0xd0, 0xb9, 0xf7, 0x3d, 0xef, 0x68, 0x40, 0x5f, 0x90, 0x6a, + 0xbd, 0xdc, 0xab, 0x1f, 0xfa, 0x90, 0x8c, 0xc0, 0x6d, 0x30, 0x0f, 0x0b, + 0x5c, 0x76, 0x38, 0x0b, 0xb9, 0x31, 0x05, 0x88, +}; +static const unsigned char kat3348_entropyinpr1[] = { + 0xbe, 0x09, 0xed, 0x1c, 0xfe, 0x95, 0xe3, 0xee, 0x64, 0xc6, 0x63, 0x7f, + 0x32, 0x5c, 0x67, 0xeb, 0x0c, 0x41, 0x79, 0x20, 0xfa, 0x58, 0xe5, 0x78, +}; +static const unsigned char kat3348_addinpr1[] = { + 0x48, 0x05, 0xbc, 0x59, 0xf6, 0xc3, 0x0d, 0x29, 0x5d, 0x2e, 0xa4, 0x59, + 0x5a, 0xf0, 0x67, 0x1b, 0x85, 0x04, 0xe1, 0x80, 0xfb, 0xfb, 0x87, 0x2b, + 0x1e, 0x79, 0xc4, 0x2b, 0x78, 0x3e, 0xee, 0x1d, +}; +static const unsigned char kat3348_entropyinpr2[] = { + 0xbc, 0xe0, 0x9a, 0x32, 0x15, 0x87, 0x36, 0x32, 0xd2, 0x16, 0x50, 0xe2, + 0x12, 0x43, 0x70, 0xb4, 0xb5, 0x4f, 0x7b, 0x6c, 0x32, 0x4c, 0xc3, 0x56, +}; +static const unsigned char kat3348_addinpr2[] = { + 0x77, 0x31, 0x31, 0xc5, 0x4a, 0xdb, 0x91, 0x48, 0x47, 0xa3, 0xd9, 0xaa, + 0xf0, 0x1e, 0xac, 0x25, 0xdd, 0x80, 0x41, 0x76, 0xe0, 0x9f, 0xc0, 0xb6, + 0xd5, 0x50, 0x38, 0x8d, 0x44, 0xdf, 0x1c, 0x43, +}; +static const unsigned char kat3348_retbits[] = { + 0x31, 0xcc, 0x5d, 0xb6, 0x5c, 0xbb, 0xe3, 0x7b, 0xf4, 0x8b, 0xcc, 0x13, + 0xb8, 0x78, 0x4d, 0xeb, 0x34, 0x9b, 0x86, 0xf7, 0xb4, 0xaa, 0x99, 0x51, + 0x3c, 0x8e, 0x84, 0x82, 0xc4, 0x8b, 0x4b, 0xa4, 0x6e, 0x53, 0xc7, 0xcb, + 0x94, 0x91, 0xe4, 0x14, 0x29, 0x5b, 0x37, 0x24, 0x71, 0x24, 0x78, 0x48, + 0xd7, 0x7e, 0x94, 0x44, 0x3e, 0x61, 0xb3, 0x3c, 0x96, 0xb5, 0xab, 0xe8, + 0x24, 0x85, 0xa7, 0x22, +}; +static const struct drbg_kat_pr_true kat3348_t = { + 2, kat3348_entropyin, kat3348_nonce, kat3348_persstr, + kat3348_entropyinpr1, kat3348_addinpr1, kat3348_entropyinpr2, + kat3348_addinpr2, kat3348_retbits +}; +static const struct drbg_kat kat3348 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3348_t +}; + +static const unsigned char kat3349_entropyin[] = { + 0xda, 0x49, 0x7e, 0x17, 0xce, 0xca, 0xa3, 0xe1, 0xe6, 0x83, 0xb1, 0x42, + 0x70, 0xc9, 0x3f, 0xe6, 0xec, 0x5c, 0x8c, 0x8a, 0x27, 0x5d, 0x23, 0xc8, +}; +static const unsigned char kat3349_nonce[] = { + 0x4c, 0x79, 0xbc, 0xe5, 0x95, 0x26, 0x86, 0x14, 0xce, 0xd6, 0x6d, 0x2d, + 0x1d, 0x0d, 0xc0, 0x57, +}; +static const unsigned char kat3349_persstr[] = { + 0x43, 0xf9, 0xdb, 0xf0, 0x49, 0xb5, 0xb8, 0x0f, 0xd3, 0x54, 0xca, 0x48, + 0x53, 0x1d, 0x55, 0xac, 0x01, 0x46, 0x03, 0x12, 0xd8, 0xa8, 0x81, 0xf2, + 0xa9, 0x3a, 0x58, 0xc0, 0xbe, 0x2b, 0x70, 0x54, +}; +static const unsigned char kat3349_entropyinpr1[] = { + 0x9d, 0xf1, 0xa1, 0xb6, 0xec, 0x71, 0x4a, 0xae, 0x85, 0x99, 0x3d, 0x5c, + 0x14, 0x8a, 0x96, 0x8f, 0x75, 0x2d, 0x7e, 0x69, 0x4d, 0x19, 0xea, 0xb6, +}; +static const unsigned char kat3349_addinpr1[] = { + 0xe4, 0x18, 0xe0, 0xa4, 0x2e, 0x48, 0x77, 0x96, 0xa9, 0x82, 0xa0, 0x98, + 0x2c, 0xc4, 0x69, 0xc8, 0x5a, 0xf3, 0xec, 0x64, 0x9d, 0xbb, 0x13, 0x67, + 0x69, 0xe9, 0xd0, 0x54, 0x4d, 0x7e, 0xe8, 0x90, +}; +static const unsigned char kat3349_entropyinpr2[] = { + 0xdc, 0xd5, 0xbb, 0x25, 0x6f, 0xc0, 0xf4, 0x13, 0xde, 0xea, 0x9b, 0xb8, + 0x09, 0x1a, 0x90, 0x82, 0xff, 0xdd, 0x2d, 0x90, 0x3c, 0x59, 0x65, 0xaf, +}; +static const unsigned char kat3349_addinpr2[] = { + 0x88, 0x36, 0xf4, 0x86, 0xad, 0x00, 0xf3, 0x90, 0xd8, 0x69, 0x7a, 0xe6, + 0x9e, 0x95, 0xa7, 0xff, 0x06, 0xa2, 0xaa, 0x99, 0x9b, 0xdb, 0xb1, 0x2d, + 0x4c, 0x22, 0xa7, 0x32, 0x21, 0xc8, 0x4c, 0xc5, +}; +static const unsigned char kat3349_retbits[] = { + 0xcc, 0x35, 0xb9, 0xf4, 0x0b, 0x15, 0x34, 0xc7, 0x88, 0x45, 0x03, 0xb1, + 0x17, 0xe3, 0x6a, 0xb7, 0x85, 0x3f, 0xb7, 0xe4, 0x98, 0x50, 0x6c, 0xf9, + 0xe2, 0xef, 0x4f, 0x6e, 0x62, 0xc6, 0x3e, 0x15, 0xd3, 0xda, 0x02, 0x2b, + 0x7b, 0xf1, 0xb0, 0x47, 0x53, 0x9b, 0x9f, 0x96, 0xc5, 0x7a, 0xee, 0x25, + 0x9c, 0x38, 0x7a, 0x56, 0xc5, 0x9b, 0x2c, 0xc2, 0xc7, 0x22, 0x56, 0x09, + 0x5e, 0x7e, 0xd5, 0x95, +}; +static const struct drbg_kat_pr_true kat3349_t = { + 3, kat3349_entropyin, kat3349_nonce, kat3349_persstr, + kat3349_entropyinpr1, kat3349_addinpr1, kat3349_entropyinpr2, + kat3349_addinpr2, kat3349_retbits +}; +static const struct drbg_kat kat3349 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3349_t +}; + +static const unsigned char kat3350_entropyin[] = { + 0xdb, 0xf8, 0xdc, 0xb8, 0x18, 0x34, 0xfc, 0x9f, 0xef, 0x2a, 0x41, 0xff, + 0xb0, 0x17, 0x14, 0x29, 0x20, 0x0e, 0x84, 0xa5, 0xe0, 0x01, 0xa6, 0x08, +}; +static const unsigned char kat3350_nonce[] = { + 0xb4, 0x67, 0x3b, 0xbe, 0xdc, 0x0e, 0x47, 0xf7, 0xe9, 0x7a, 0xcc, 0x06, + 0x27, 0x5c, 0x00, 0xa5, +}; +static const unsigned char kat3350_persstr[] = { + 0xd5, 0x8c, 0xd9, 0x92, 0x95, 0xcf, 0x42, 0xd4, 0xf5, 0x9b, 0xaa, 0x82, + 0xce, 0x2e, 0x60, 0x2d, 0xb1, 0x6c, 0x79, 0x99, 0xe7, 0xbd, 0xc4, 0xac, + 0xdd, 0xa9, 0xcc, 0x65, 0xcb, 0x21, 0x96, 0x78, +}; +static const unsigned char kat3350_entropyinpr1[] = { + 0x62, 0x94, 0xa8, 0x09, 0x62, 0x4a, 0x69, 0x9b, 0xfa, 0xd9, 0x97, 0x77, + 0xeb, 0x8e, 0xa6, 0xcc, 0x56, 0xe8, 0xb9, 0x14, 0xc7, 0xc8, 0x6e, 0xd9, +}; +static const unsigned char kat3350_addinpr1[] = { + 0x49, 0x67, 0x78, 0x38, 0x1d, 0x15, 0xff, 0x17, 0x48, 0x25, 0x0c, 0x29, + 0x83, 0x7e, 0xa5, 0xd0, 0x60, 0xa2, 0x44, 0x6a, 0xf3, 0x69, 0x13, 0x65, + 0x4a, 0x1e, 0x00, 0xf2, 0x6c, 0x72, 0x2c, 0x0d, +}; +static const unsigned char kat3350_entropyinpr2[] = { + 0xa3, 0x26, 0xc5, 0xe9, 0x21, 0x69, 0x20, 0xbf, 0xcb, 0xf8, 0x5b, 0x77, + 0x46, 0x10, 0xde, 0xf9, 0xdb, 0xa8, 0x3c, 0xbc, 0x23, 0xec, 0x47, 0xcf, +}; +static const unsigned char kat3350_addinpr2[] = { + 0x86, 0x2e, 0xa5, 0x81, 0xcf, 0x33, 0xa1, 0x44, 0x9b, 0x0c, 0x97, 0x44, + 0xd9, 0xc6, 0xa1, 0x96, 0x8d, 0x6a, 0x37, 0x9b, 0x1d, 0x22, 0x8e, 0xfc, + 0x5a, 0x74, 0x97, 0x71, 0x31, 0x24, 0xd0, 0x7b, +}; +static const unsigned char kat3350_retbits[] = { + 0x1a, 0x5c, 0x0b, 0x1f, 0x6a, 0xfa, 0xfa, 0x39, 0x46, 0x6e, 0x8e, 0x59, + 0xec, 0xdd, 0x28, 0x85, 0x9c, 0xb5, 0x55, 0x45, 0x4e, 0x2f, 0xaa, 0x4b, + 0x33, 0x56, 0xfc, 0xc3, 0x6e, 0xbb, 0xec, 0x47, 0xa6, 0xb9, 0x1b, 0x54, + 0x29, 0x6d, 0xee, 0xa6, 0xf1, 0x1d, 0x69, 0x9e, 0x07, 0x9a, 0x6f, 0x14, + 0x12, 0xe7, 0x5c, 0xab, 0x22, 0xc1, 0x09, 0xbd, 0x92, 0xb1, 0x50, 0xa6, + 0x0a, 0xe2, 0xbe, 0x20, +}; +static const struct drbg_kat_pr_true kat3350_t = { + 4, kat3350_entropyin, kat3350_nonce, kat3350_persstr, + kat3350_entropyinpr1, kat3350_addinpr1, kat3350_entropyinpr2, + kat3350_addinpr2, kat3350_retbits +}; +static const struct drbg_kat kat3350 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3350_t +}; + +static const unsigned char kat3351_entropyin[] = { + 0x58, 0xbf, 0xbe, 0x83, 0x70, 0xaf, 0xd0, 0xd6, 0x3b, 0x5a, 0x1c, 0xd4, + 0xe8, 0x12, 0xcb, 0xb1, 0x5c, 0x26, 0x18, 0xce, 0x57, 0x48, 0x86, 0x1a, +}; +static const unsigned char kat3351_nonce[] = { + 0x0b, 0x50, 0x26, 0xc3, 0x95, 0x51, 0xf5, 0xf9, 0x90, 0xed, 0x02, 0x63, + 0x34, 0x73, 0xbd, 0x6f, +}; +static const unsigned char kat3351_persstr[] = { + 0x51, 0x2d, 0x64, 0xe6, 0xb8, 0xbd, 0x0b, 0x13, 0x78, 0x3f, 0x67, 0x3f, + 0x5a, 0x5c, 0xe7, 0xdc, 0xbf, 0x58, 0x34, 0x99, 0xb9, 0xb1, 0x83, 0x46, + 0xa5, 0xa4, 0xce, 0xc8, 0x2a, 0x9e, 0x35, 0x58, +}; +static const unsigned char kat3351_entropyinpr1[] = { + 0x85, 0x4b, 0x08, 0x40, 0x0d, 0x45, 0x5f, 0xde, 0x18, 0x5b, 0x37, 0x5f, + 0x96, 0x14, 0xea, 0x00, 0x3b, 0xef, 0x38, 0x83, 0x92, 0xd8, 0xbd, 0x3a, +}; +static const unsigned char kat3351_addinpr1[] = { + 0xa2, 0x8d, 0x77, 0x7c, 0x4e, 0xee, 0xa8, 0xc6, 0xb2, 0x6c, 0x19, 0x71, + 0x7e, 0x21, 0x88, 0xd3, 0x03, 0xfe, 0xcb, 0x4e, 0xf6, 0x3d, 0xa2, 0xa4, + 0x24, 0xa9, 0x68, 0x9a, 0xaa, 0x18, 0xd5, 0x04, +}; +static const unsigned char kat3351_entropyinpr2[] = { + 0xc5, 0x07, 0x3b, 0x46, 0x77, 0x6f, 0xca, 0x74, 0x28, 0x66, 0xe1, 0x49, + 0x7e, 0x9f, 0xa4, 0x74, 0x8f, 0xe7, 0xc9, 0x1f, 0x38, 0xad, 0xe2, 0x6c, +}; +static const unsigned char kat3351_addinpr2[] = { + 0x84, 0x43, 0x11, 0x49, 0xa9, 0xcc, 0x32, 0x26, 0x50, 0x1c, 0x0c, 0x68, + 0x37, 0xbd, 0xa0, 0xdf, 0xab, 0x00, 0x29, 0xf0, 0xce, 0xda, 0x0c, 0xad, + 0xa4, 0x92, 0xdc, 0xcb, 0xc0, 0x08, 0x30, 0x07, +}; +static const unsigned char kat3351_retbits[] = { + 0xd8, 0x73, 0xdf, 0xc9, 0x20, 0x23, 0x95, 0xb7, 0xb8, 0xb9, 0xee, 0x29, + 0x83, 0xe1, 0xd6, 0x07, 0x1a, 0x95, 0x74, 0x75, 0x40, 0xfb, 0xb6, 0xbb, + 0xcb, 0xeb, 0x72, 0xe6, 0x1c, 0x56, 0x1e, 0x39, 0xac, 0xc0, 0x1b, 0xc0, + 0x7b, 0x8e, 0x38, 0x42, 0xd8, 0x35, 0xd9, 0x3f, 0x43, 0x0c, 0x43, 0x48, + 0x39, 0x85, 0x29, 0x88, 0x81, 0xc2, 0x08, 0xfd, 0x08, 0x1c, 0x34, 0x0e, + 0x80, 0x49, 0x1a, 0xef, +}; +static const struct drbg_kat_pr_true kat3351_t = { + 5, kat3351_entropyin, kat3351_nonce, kat3351_persstr, + kat3351_entropyinpr1, kat3351_addinpr1, kat3351_entropyinpr2, + kat3351_addinpr2, kat3351_retbits +}; +static const struct drbg_kat kat3351 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3351_t +}; + +static const unsigned char kat3352_entropyin[] = { + 0x67, 0x16, 0x9d, 0xcd, 0xc3, 0x1f, 0xae, 0x15, 0x7b, 0x35, 0x63, 0x67, + 0x24, 0x82, 0xea, 0x0a, 0xf6, 0x23, 0x68, 0x62, 0x7f, 0xbc, 0x4f, 0x42, +}; +static const unsigned char kat3352_nonce[] = { + 0x8b, 0xf7, 0x4e, 0x01, 0x91, 0x16, 0x81, 0xe6, 0x44, 0x2f, 0x61, 0x90, + 0x34, 0x89, 0x20, 0xed, +}; +static const unsigned char kat3352_persstr[] = { + 0x8d, 0xbd, 0xd0, 0x22, 0xea, 0x36, 0x56, 0x66, 0x19, 0xf7, 0xe1, 0x86, + 0x72, 0xfc, 0x89, 0xa3, 0xba, 0xd8, 0x80, 0x49, 0xf1, 0x51, 0x39, 0x71, + 0xfa, 0x8e, 0x79, 0x8f, 0x37, 0x42, 0xcf, 0xfb, +}; +static const unsigned char kat3352_entropyinpr1[] = { + 0xef, 0xa4, 0x70, 0xb0, 0x7f, 0x71, 0xe4, 0x59, 0x69, 0x73, 0x03, 0x47, + 0x4d, 0xb2, 0x1e, 0xd0, 0x15, 0x1a, 0x1f, 0xa1, 0x13, 0xd5, 0x25, 0x81, +}; +static const unsigned char kat3352_addinpr1[] = { + 0xb1, 0xc1, 0xb2, 0x36, 0x55, 0x2e, 0xe6, 0x1c, 0x65, 0x67, 0xc8, 0x64, + 0xb7, 0x13, 0x73, 0x36, 0xfb, 0xce, 0x27, 0x0b, 0xc3, 0xa7, 0x9d, 0xc4, + 0x16, 0xef, 0xdc, 0x0a, 0x0c, 0x7b, 0x07, 0xd8, +}; +static const unsigned char kat3352_entropyinpr2[] = { + 0xb5, 0x88, 0xd3, 0x42, 0x94, 0x7c, 0xd5, 0x48, 0xf6, 0x71, 0x30, 0xe0, + 0xb4, 0x48, 0x50, 0xf8, 0xe2, 0x40, 0x36, 0x4f, 0x1c, 0x2b, 0x09, 0xd6, +}; +static const unsigned char kat3352_addinpr2[] = { + 0xee, 0x9d, 0x7d, 0x99, 0xda, 0x81, 0xf2, 0x75, 0x52, 0x6b, 0x2d, 0x23, + 0x63, 0x68, 0x6f, 0x94, 0xf9, 0x1f, 0x8c, 0xf3, 0xa0, 0x2a, 0x66, 0x7a, + 0x0c, 0x72, 0x45, 0x5d, 0xba, 0x3c, 0x3f, 0xb2, +}; +static const unsigned char kat3352_retbits[] = { + 0x08, 0xfa, 0x98, 0x2a, 0x06, 0x20, 0xfd, 0xa7, 0x05, 0x5f, 0xec, 0xbc, + 0x3f, 0x3b, 0x9c, 0x91, 0x4e, 0xf4, 0xc7, 0x7c, 0xf2, 0x8a, 0xeb, 0x21, + 0x27, 0xad, 0xaf, 0x63, 0x35, 0x95, 0x7b, 0x75, 0xd3, 0x89, 0xaf, 0x83, + 0x0f, 0x5d, 0xb4, 0x59, 0x3e, 0xd2, 0xaa, 0x22, 0xaa, 0x9a, 0x9d, 0x42, + 0x1d, 0xb0, 0x7b, 0x9f, 0xc4, 0x77, 0x24, 0x0a, 0x9b, 0x1a, 0xb3, 0x0e, + 0xd2, 0xc5, 0x42, 0xb2, +}; +static const struct drbg_kat_pr_true kat3352_t = { + 6, kat3352_entropyin, kat3352_nonce, kat3352_persstr, + kat3352_entropyinpr1, kat3352_addinpr1, kat3352_entropyinpr2, + kat3352_addinpr2, kat3352_retbits +}; +static const struct drbg_kat kat3352 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3352_t +}; + +static const unsigned char kat3353_entropyin[] = { + 0x51, 0xba, 0xcc, 0xfe, 0x17, 0x74, 0x31, 0xa0, 0x48, 0x7c, 0xee, 0x12, + 0xf7, 0x43, 0x8b, 0x99, 0x91, 0x06, 0x10, 0x9d, 0x98, 0x79, 0x56, 0xc1, +}; +static const unsigned char kat3353_nonce[] = { + 0x6e, 0xed, 0x6f, 0xcc, 0xf4, 0x0a, 0x7d, 0xa2, 0xfa, 0xa9, 0xdf, 0xb5, + 0x50, 0x0f, 0xf2, 0x4a, +}; +static const unsigned char kat3353_persstr[] = { + 0x59, 0x7f, 0x4d, 0xcc, 0x86, 0x07, 0x75, 0xfe, 0xd9, 0xdf, 0x51, 0x57, + 0x90, 0x76, 0x6d, 0xe0, 0xe5, 0x3c, 0x9d, 0x81, 0x7a, 0xf9, 0x6a, 0xd6, + 0x7d, 0x57, 0x22, 0xe1, 0x2f, 0x6e, 0xe5, 0xd5, +}; +static const unsigned char kat3353_entropyinpr1[] = { + 0xb7, 0x26, 0x1c, 0xe8, 0x53, 0x40, 0xe5, 0x71, 0x14, 0xb7, 0x13, 0x78, + 0xa0, 0x4c, 0x57, 0x8c, 0x1e, 0x99, 0xd5, 0x50, 0xe2, 0xf1, 0x25, 0x07, +}; +static const unsigned char kat3353_addinpr1[] = { + 0x5c, 0x58, 0xcb, 0xa6, 0xbd, 0x90, 0xec, 0xac, 0x56, 0xae, 0x71, 0xa1, + 0x5e, 0x75, 0xa0, 0xfb, 0x4b, 0x72, 0x3f, 0xa9, 0xa4, 0x6d, 0x5d, 0x6a, + 0x78, 0x64, 0xfd, 0x9a, 0x1f, 0x45, 0xa2, 0xf2, +}; +static const unsigned char kat3353_entropyinpr2[] = { + 0x83, 0x70, 0xd3, 0xdd, 0x3e, 0x1f, 0x34, 0x5d, 0xd8, 0x48, 0x33, 0x40, + 0x99, 0xd9, 0x02, 0x9a, 0xda, 0x14, 0x45, 0x55, 0xb8, 0x38, 0xb8, 0x63, +}; +static const unsigned char kat3353_addinpr2[] = { + 0xe6, 0x1e, 0x49, 0xc2, 0x55, 0x51, 0x0b, 0x79, 0x05, 0xf1, 0x25, 0x76, + 0xbd, 0x2f, 0xf2, 0x94, 0xb7, 0xd4, 0xe9, 0xb7, 0x1b, 0xf5, 0xe3, 0xfa, + 0x1f, 0x52, 0xb4, 0x17, 0x10, 0xc5, 0xd0, 0x36, +}; +static const unsigned char kat3353_retbits[] = { + 0x77, 0xa4, 0x80, 0x44, 0x6d, 0x5c, 0x3a, 0x78, 0x90, 0xf5, 0xf6, 0x64, + 0x29, 0x8a, 0xfc, 0x9a, 0xa0, 0x04, 0x17, 0x8c, 0x69, 0xa3, 0xe2, 0x6a, + 0xe5, 0x0f, 0x2e, 0xff, 0xc3, 0xf9, 0xb9, 0x4f, 0xb5, 0x35, 0xed, 0x01, + 0x55, 0x21, 0x8c, 0x7f, 0x57, 0xa0, 0x5c, 0xf2, 0x7f, 0xac, 0x80, 0x96, + 0x42, 0x13, 0x60, 0xac, 0x8d, 0x6d, 0x06, 0xa9, 0xd8, 0xa8, 0x9b, 0x76, + 0x96, 0x3c, 0x7f, 0xe4, +}; +static const struct drbg_kat_pr_true kat3353_t = { + 7, kat3353_entropyin, kat3353_nonce, kat3353_persstr, + kat3353_entropyinpr1, kat3353_addinpr1, kat3353_entropyinpr2, + kat3353_addinpr2, kat3353_retbits +}; +static const struct drbg_kat kat3353 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3353_t +}; + +static const unsigned char kat3354_entropyin[] = { + 0xf8, 0x87, 0x60, 0xbf, 0x6c, 0x92, 0x64, 0x82, 0xd5, 0x41, 0xdb, 0x3c, + 0xb2, 0xe8, 0x55, 0x6f, 0x84, 0x31, 0x4a, 0x30, 0xbf, 0xa5, 0x2c, 0xb0, +}; +static const unsigned char kat3354_nonce[] = { + 0xf7, 0x57, 0xff, 0xb7, 0x3c, 0x0f, 0x52, 0x34, 0x2f, 0x3c, 0xe9, 0x68, + 0x2a, 0x90, 0x38, 0x54, +}; +static const unsigned char kat3354_persstr[] = { + 0xc4, 0x55, 0x20, 0x6f, 0x25, 0x75, 0xd4, 0x8b, 0x03, 0x23, 0x80, 0x65, + 0xd0, 0x78, 0x5c, 0xbe, 0x8e, 0x40, 0xc6, 0x20, 0x42, 0xcc, 0xc0, 0xf9, + 0xc4, 0xbc, 0xe6, 0x69, 0x2d, 0x45, 0xc5, 0xfd, +}; +static const unsigned char kat3354_entropyinpr1[] = { + 0x53, 0x62, 0xce, 0xd8, 0xe3, 0xa4, 0x82, 0x6c, 0x67, 0xa7, 0x08, 0xa7, + 0xba, 0xc4, 0x66, 0x3c, 0x4f, 0xcb, 0x47, 0xdf, 0xaa, 0xbf, 0x88, 0xfa, +}; +static const unsigned char kat3354_addinpr1[] = { + 0x0d, 0xa9, 0x10, 0x9b, 0x01, 0xcc, 0xfb, 0x20, 0x07, 0x7d, 0x9f, 0xb5, + 0x7b, 0xf8, 0xd4, 0xc4, 0xb6, 0x95, 0xf5, 0x4a, 0x34, 0x0b, 0x3f, 0xb7, + 0x5f, 0x17, 0xad, 0xb4, 0xe7, 0x49, 0xcf, 0xd7, +}; +static const unsigned char kat3354_entropyinpr2[] = { + 0xd8, 0x7b, 0x82, 0x2c, 0x4d, 0x46, 0x9e, 0x81, 0x35, 0x6c, 0x35, 0x50, + 0x85, 0x59, 0xa9, 0xae, 0x1a, 0x41, 0xea, 0xe1, 0x41, 0x3c, 0x11, 0x9c, +}; +static const unsigned char kat3354_addinpr2[] = { + 0x20, 0x06, 0x3a, 0x53, 0xbd, 0x0f, 0xae, 0x0e, 0x4b, 0x78, 0x86, 0x51, + 0x62, 0x51, 0x84, 0x54, 0x54, 0x29, 0x89, 0xa8, 0x7d, 0x53, 0xea, 0x6c, + 0x3c, 0x6c, 0x67, 0x6b, 0x85, 0xb2, 0x45, 0xd9, +}; +static const unsigned char kat3354_retbits[] = { + 0xcf, 0x75, 0xeb, 0x0c, 0x05, 0x82, 0x73, 0x5f, 0x72, 0x19, 0xef, 0x2e, + 0x47, 0xb7, 0x20, 0x4f, 0x02, 0xbe, 0xe9, 0xc1, 0x34, 0xc5, 0x89, 0x47, + 0xd1, 0x8f, 0x16, 0xba, 0x22, 0x09, 0xc6, 0x95, 0x92, 0x77, 0x1d, 0x62, + 0x82, 0xad, 0x02, 0xf6, 0xda, 0x62, 0xd4, 0xe0, 0xab, 0x21, 0xd4, 0x6c, + 0x6f, 0x81, 0xcc, 0x17, 0x1b, 0x9e, 0x0b, 0xc0, 0x2f, 0xa0, 0xda, 0x84, + 0xd9, 0x9d, 0x46, 0x7c, +}; +static const struct drbg_kat_pr_true kat3354_t = { + 8, kat3354_entropyin, kat3354_nonce, kat3354_persstr, + kat3354_entropyinpr1, kat3354_addinpr1, kat3354_entropyinpr2, + kat3354_addinpr2, kat3354_retbits +}; +static const struct drbg_kat kat3354 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3354_t +}; + +static const unsigned char kat3355_entropyin[] = { + 0xdc, 0x51, 0x16, 0xd2, 0x23, 0x5b, 0x9c, 0xf3, 0x82, 0x25, 0x21, 0xaa, + 0x7a, 0xf3, 0x87, 0x9c, 0xca, 0x95, 0xfd, 0x2d, 0x1b, 0x5f, 0xc2, 0x91, +}; +static const unsigned char kat3355_nonce[] = { + 0x2e, 0xec, 0x8e, 0xb1, 0xcf, 0x05, 0xe2, 0x01, 0xfa, 0x34, 0x8a, 0x85, + 0xc7, 0xd8, 0x93, 0x20, +}; +static const unsigned char kat3355_persstr[] = { + 0x33, 0x9e, 0x80, 0x73, 0x53, 0x5a, 0xee, 0x3e, 0x85, 0x66, 0x5a, 0x8b, + 0x35, 0x2a, 0x8d, 0xfa, 0xd3, 0x7c, 0x3b, 0x1f, 0xe8, 0xb5, 0xa4, 0x31, + 0x2b, 0xa7, 0x75, 0x6c, 0x0a, 0x8d, 0xd8, 0x29, +}; +static const unsigned char kat3355_entropyinpr1[] = { + 0x2c, 0xba, 0xdf, 0xa1, 0xb4, 0x02, 0x51, 0x57, 0xd1, 0x26, 0xee, 0x56, + 0x16, 0x50, 0x15, 0x17, 0x3b, 0x6d, 0xbb, 0x4a, 0xb5, 0xdb, 0xd9, 0x47, +}; +static const unsigned char kat3355_addinpr1[] = { + 0x34, 0x36, 0xc6, 0xfa, 0xa6, 0x11, 0x1c, 0xce, 0x07, 0x76, 0xb2, 0x4a, + 0x06, 0xa2, 0x21, 0xb7, 0xe5, 0xcf, 0xa8, 0x33, 0x7a, 0x44, 0x47, 0x83, + 0xd2, 0x1a, 0x87, 0x80, 0x83, 0xda, 0x24, 0xed, +}; +static const unsigned char kat3355_entropyinpr2[] = { + 0xc7, 0x65, 0xf2, 0x54, 0x97, 0xbc, 0xa8, 0xdb, 0xe7, 0x37, 0xc8, 0x45, + 0x79, 0x0b, 0x95, 0x6f, 0xf4, 0xfb, 0x44, 0x2f, 0xe6, 0x72, 0xab, 0x37, +}; +static const unsigned char kat3355_addinpr2[] = { + 0x76, 0xb3, 0x3c, 0x5f, 0x9b, 0x32, 0x8e, 0xf9, 0xac, 0x51, 0x24, 0x18, + 0x04, 0x79, 0xff, 0x76, 0xc1, 0x90, 0x7e, 0xb9, 0xf9, 0x83, 0x17, 0x77, + 0xaf, 0x98, 0xd1, 0xf9, 0x55, 0x64, 0x30, 0xcb, +}; +static const unsigned char kat3355_retbits[] = { + 0xe7, 0x30, 0x37, 0x0d, 0x41, 0xde, 0x1a, 0xb0, 0x0c, 0x46, 0xfd, 0xb7, + 0x6a, 0x60, 0x71, 0xa6, 0x72, 0x2e, 0x89, 0xfe, 0x75, 0x3e, 0x82, 0x1d, + 0x15, 0xdf, 0x59, 0x27, 0xc6, 0xa8, 0x04, 0x0f, 0x50, 0x31, 0x03, 0xc0, + 0x25, 0x6c, 0x93, 0x60, 0xf1, 0x25, 0x65, 0x0e, 0x62, 0xcc, 0x01, 0xc2, + 0x1e, 0x67, 0x0e, 0x2a, 0x69, 0x9d, 0x53, 0x3b, 0xaf, 0x6c, 0xd4, 0x9c, + 0xc5, 0x3e, 0x86, 0x86, +}; +static const struct drbg_kat_pr_true kat3355_t = { + 9, kat3355_entropyin, kat3355_nonce, kat3355_persstr, + kat3355_entropyinpr1, kat3355_addinpr1, kat3355_entropyinpr2, + kat3355_addinpr2, kat3355_retbits +}; +static const struct drbg_kat kat3355 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3355_t +}; + +static const unsigned char kat3356_entropyin[] = { + 0x5d, 0x87, 0x45, 0x79, 0xea, 0x6c, 0xf4, 0x72, 0x2f, 0xfa, 0xf6, 0x04, + 0x48, 0x9d, 0xbe, 0xd9, 0xee, 0xf5, 0x6d, 0x82, 0xb1, 0x92, 0xc1, 0xb7, +}; +static const unsigned char kat3356_nonce[] = { + 0xd1, 0x08, 0x28, 0x0c, 0x33, 0x1d, 0xd9, 0xf8, 0x4c, 0x1d, 0x5b, 0xe2, + 0xd4, 0x31, 0xb2, 0x11, +}; +static const unsigned char kat3356_persstr[] = { + 0x31, 0x1c, 0xf5, 0xd8, 0x07, 0x42, 0x3c, 0x71, 0x6d, 0xd0, 0x16, 0xed, + 0xd1, 0x19, 0x8c, 0xc2, 0xc0, 0xf0, 0x68, 0x33, 0x1b, 0xe0, 0x87, 0xee, + 0x51, 0xbd, 0xc8, 0x42, 0x59, 0xe3, 0xf6, 0x77, +}; +static const unsigned char kat3356_entropyinpr1[] = { + 0x4c, 0xa7, 0x83, 0xfd, 0xca, 0x58, 0xcb, 0x8f, 0x37, 0xdc, 0x0b, 0x41, + 0x6d, 0xab, 0x82, 0xd1, 0x3a, 0x6a, 0x36, 0xdf, 0x95, 0xf0, 0x46, 0xda, +}; +static const unsigned char kat3356_addinpr1[] = { + 0x65, 0x96, 0x2c, 0x7e, 0xea, 0x0d, 0xc2, 0x67, 0xf3, 0x9c, 0xf3, 0x5a, + 0x22, 0x2c, 0xf0, 0x25, 0x5d, 0x8b, 0x1b, 0x21, 0x19, 0x25, 0xc6, 0xc7, + 0xf9, 0x5d, 0xdd, 0xcc, 0x7c, 0x03, 0xba, 0x19, +}; +static const unsigned char kat3356_entropyinpr2[] = { + 0x65, 0xb5, 0x3d, 0x2d, 0x1f, 0xc7, 0x3b, 0x6a, 0xa2, 0xc1, 0xff, 0x55, + 0x18, 0x78, 0xf6, 0x59, 0xd1, 0x36, 0x85, 0xbb, 0x3d, 0x3c, 0x7f, 0xf4, +}; +static const unsigned char kat3356_addinpr2[] = { + 0xd4, 0x7a, 0xe4, 0xb2, 0x1b, 0x26, 0xd7, 0xf7, 0x50, 0x94, 0x83, 0x59, + 0xa0, 0x4d, 0x9e, 0xdf, 0x8d, 0xb6, 0x2e, 0x86, 0x1b, 0xe4, 0x4f, 0x88, + 0x99, 0xf5, 0xe1, 0x57, 0x8c, 0xb1, 0x6a, 0xb4, +}; +static const unsigned char kat3356_retbits[] = { + 0x1f, 0x36, 0xa9, 0x3b, 0x7b, 0x93, 0x46, 0xf1, 0x29, 0xb0, 0x4b, 0x5e, + 0x28, 0x7d, 0xc9, 0xbe, 0xde, 0x9a, 0x84, 0xb7, 0x33, 0x0e, 0x99, 0xf2, + 0x85, 0xd6, 0x56, 0x9a, 0x0f, 0x38, 0x94, 0x25, 0x14, 0x1c, 0xa5, 0x5d, + 0x89, 0xfe, 0xf8, 0x38, 0x45, 0x87, 0x1a, 0x08, 0x8d, 0xe3, 0x1f, 0x9c, + 0xfe, 0x78, 0x5e, 0x77, 0xf8, 0x46, 0xe1, 0x7b, 0x3f, 0xd7, 0x1f, 0x94, + 0x72, 0xd5, 0x8d, 0xad, +}; +static const struct drbg_kat_pr_true kat3356_t = { + 10, kat3356_entropyin, kat3356_nonce, kat3356_persstr, + kat3356_entropyinpr1, kat3356_addinpr1, kat3356_entropyinpr2, + kat3356_addinpr2, kat3356_retbits +}; +static const struct drbg_kat kat3356 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3356_t +}; + +static const unsigned char kat3357_entropyin[] = { + 0x9e, 0x3b, 0x8a, 0xbc, 0x23, 0x6f, 0x74, 0xf4, 0xb4, 0x9a, 0xc3, 0x18, + 0xd0, 0x85, 0xd1, 0x66, 0xad, 0x71, 0x67, 0x56, 0xc1, 0x9a, 0xbe, 0x6b, +}; +static const unsigned char kat3357_nonce[] = { + 0x64, 0xbb, 0x43, 0x63, 0x52, 0xba, 0x73, 0x49, 0xf5, 0x7c, 0x1c, 0xd8, + 0xf3, 0x37, 0xd1, 0xe0, +}; +static const unsigned char kat3357_persstr[] = { + 0x1e, 0xee, 0xa7, 0x51, 0x75, 0x64, 0x8c, 0x96, 0x1a, 0x15, 0xef, 0x23, + 0x5e, 0x54, 0x1a, 0xb6, 0x65, 0xa3, 0x13, 0x7c, 0x52, 0x97, 0x36, 0x7c, + 0x52, 0xdb, 0x2a, 0xc2, 0xbd, 0x90, 0xc6, 0x75, +}; +static const unsigned char kat3357_entropyinpr1[] = { + 0xda, 0x4e, 0x94, 0x5c, 0x6f, 0xf8, 0x26, 0xad, 0xbf, 0x49, 0x24, 0x8c, + 0x56, 0xb7, 0x9b, 0x22, 0x4d, 0xe5, 0x00, 0x95, 0xbb, 0x87, 0x0b, 0x1e, +}; +static const unsigned char kat3357_addinpr1[] = { + 0x39, 0xd6, 0x04, 0x4b, 0xf7, 0x47, 0xaf, 0xaa, 0xaa, 0x0a, 0xde, 0xa6, + 0x4c, 0xd1, 0xbf, 0xf2, 0xda, 0x15, 0xb1, 0x4d, 0x70, 0x26, 0x82, 0xe2, + 0xdd, 0x63, 0x4a, 0xd6, 0x90, 0x19, 0xd7, 0x15, +}; +static const unsigned char kat3357_entropyinpr2[] = { + 0x80, 0x40, 0xca, 0x2e, 0xa5, 0xcc, 0x93, 0xa4, 0xa3, 0xae, 0x9f, 0x9a, + 0xe8, 0xe7, 0x4b, 0x27, 0x04, 0x84, 0x59, 0x8f, 0xd2, 0xaf, 0xe9, 0xaf, +}; +static const unsigned char kat3357_addinpr2[] = { + 0xaf, 0xd6, 0x72, 0xc2, 0xee, 0xf5, 0xfc, 0x34, 0xe0, 0x0a, 0x3d, 0x41, + 0x45, 0xf7, 0xfd, 0xd3, 0xba, 0xba, 0xe2, 0x65, 0xb8, 0x24, 0x32, 0x78, + 0x2e, 0x54, 0x4a, 0x51, 0xd8, 0xe5, 0xe8, 0xda, +}; +static const unsigned char kat3357_retbits[] = { + 0x97, 0x28, 0x3b, 0x30, 0xc2, 0x27, 0xcf, 0xa1, 0xba, 0x6f, 0xbc, 0xa6, + 0x57, 0xa8, 0x54, 0x58, 0x06, 0x14, 0x52, 0x46, 0x8c, 0xf1, 0x2d, 0xe6, + 0x2f, 0xaf, 0xfb, 0x31, 0x23, 0xb9, 0xc1, 0xc1, 0xc5, 0xec, 0xac, 0x16, + 0xb1, 0xd5, 0x54, 0xb9, 0xaf, 0x95, 0xaf, 0x0d, 0xe4, 0xb0, 0x09, 0x79, + 0x68, 0x3c, 0xfb, 0xb8, 0xea, 0xc0, 0x56, 0xd0, 0x0c, 0x57, 0x21, 0x10, + 0xcc, 0x6b, 0xb5, 0x2b, +}; +static const struct drbg_kat_pr_true kat3357_t = { + 11, kat3357_entropyin, kat3357_nonce, kat3357_persstr, + kat3357_entropyinpr1, kat3357_addinpr1, kat3357_entropyinpr2, + kat3357_addinpr2, kat3357_retbits +}; +static const struct drbg_kat kat3357 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3357_t +}; + +static const unsigned char kat3358_entropyin[] = { + 0xc0, 0xfe, 0xb9, 0xd1, 0xb2, 0x23, 0xa3, 0x06, 0x3e, 0x50, 0xa8, 0xde, + 0x8c, 0x13, 0x09, 0x02, 0xbf, 0x83, 0xad, 0xe8, 0x99, 0x9f, 0xad, 0x0b, +}; +static const unsigned char kat3358_nonce[] = { + 0x96, 0x31, 0x41, 0x89, 0x09, 0x13, 0x91, 0x25, 0xc0, 0x4c, 0x1c, 0x74, + 0x10, 0xbd, 0x70, 0x68, +}; +static const unsigned char kat3358_persstr[] = { + 0x3d, 0x5d, 0x88, 0x73, 0x44, 0x15, 0x5e, 0x4c, 0xa8, 0xb2, 0x9c, 0x9a, + 0x3d, 0x2d, 0xde, 0x0a, 0xad, 0x45, 0x5f, 0xb8, 0xf8, 0x9a, 0x24, 0x8d, + 0x8c, 0xcf, 0xba, 0xc6, 0x97, 0x96, 0x5a, 0x4a, +}; +static const unsigned char kat3358_entropyinpr1[] = { + 0x45, 0x32, 0x87, 0xf2, 0x3f, 0xc4, 0xd5, 0xd8, 0x9f, 0xd6, 0xce, 0xda, + 0x27, 0x64, 0x75, 0x5b, 0x7c, 0x65, 0x0a, 0x55, 0xb2, 0xa2, 0xa2, 0x82, +}; +static const unsigned char kat3358_addinpr1[] = { + 0x50, 0xe3, 0x6e, 0x23, 0x59, 0x7b, 0x42, 0x21, 0x5f, 0x50, 0xcc, 0xb5, + 0x52, 0x7c, 0x08, 0x06, 0xe6, 0x34, 0xe7, 0x58, 0xae, 0xc3, 0x5f, 0x46, + 0x16, 0xcd, 0x29, 0x3f, 0xf8, 0xac, 0x28, 0x8e, +}; +static const unsigned char kat3358_entropyinpr2[] = { + 0xa0, 0x2a, 0x38, 0x11, 0x90, 0xd1, 0x29, 0x99, 0xc9, 0xe9, 0x77, 0x81, + 0xb7, 0xdf, 0x16, 0xa8, 0xb6, 0xc4, 0x6c, 0x42, 0x63, 0xd4, 0xb1, 0x15, +}; +static const unsigned char kat3358_addinpr2[] = { + 0xf0, 0x13, 0x8a, 0x42, 0xb8, 0x31, 0x22, 0x41, 0x7c, 0xb8, 0xe6, 0x03, + 0x3e, 0x5b, 0x36, 0x8b, 0xea, 0xc6, 0xf2, 0x09, 0xe8, 0x12, 0x50, 0xb6, + 0xcc, 0xf7, 0x95, 0xe1, 0x76, 0xe8, 0xe5, 0x9d, +}; +static const unsigned char kat3358_retbits[] = { + 0xcf, 0xbf, 0xb8, 0xe3, 0x9c, 0x6d, 0xe9, 0xf0, 0xa9, 0x1a, 0xb2, 0x1a, + 0xca, 0x0c, 0x47, 0xc8, 0x88, 0x94, 0x5e, 0x34, 0xbb, 0xd3, 0xc3, 0x5b, + 0xbe, 0x47, 0x63, 0x3a, 0xc5, 0xaa, 0x76, 0xc3, 0xf9, 0xa8, 0x58, 0x0d, + 0xc1, 0xc6, 0x7f, 0x24, 0x51, 0x71, 0xeb, 0xe7, 0xcf, 0x0b, 0xd3, 0xf1, + 0xd5, 0x42, 0x9d, 0x2e, 0x6e, 0x73, 0xa3, 0x5a, 0x78, 0x6c, 0xf9, 0x71, + 0xd6, 0x18, 0x69, 0xf7, +}; +static const struct drbg_kat_pr_true kat3358_t = { + 12, kat3358_entropyin, kat3358_nonce, kat3358_persstr, + kat3358_entropyinpr1, kat3358_addinpr1, kat3358_entropyinpr2, + kat3358_addinpr2, kat3358_retbits +}; +static const struct drbg_kat kat3358 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3358_t +}; + +static const unsigned char kat3359_entropyin[] = { + 0xde, 0xab, 0xed, 0xfb, 0x2a, 0x21, 0x6d, 0x60, 0x39, 0x84, 0x04, 0x10, + 0xa8, 0xf8, 0x03, 0xe1, 0x1e, 0x14, 0x36, 0xc1, 0x38, 0x4d, 0x49, 0x1b, +}; +static const unsigned char kat3359_nonce[] = { + 0x03, 0x47, 0xd8, 0x43, 0x7d, 0x55, 0x99, 0xac, 0xdd, 0xba, 0xec, 0x58, + 0xc3, 0x6a, 0xfe, 0x2c, +}; +static const unsigned char kat3359_persstr[] = { + 0x55, 0xda, 0xc9, 0x84, 0x83, 0x78, 0x44, 0x3b, 0x53, 0x4d, 0x00, 0x0e, + 0x31, 0xd6, 0xf6, 0x51, 0x24, 0x64, 0x4d, 0x15, 0x38, 0x9d, 0xed, 0x8e, + 0x80, 0xd6, 0x35, 0x60, 0x7e, 0x9a, 0xbf, 0x1f, +}; +static const unsigned char kat3359_entropyinpr1[] = { + 0x3f, 0xf0, 0x98, 0x24, 0x43, 0x4e, 0xa9, 0x0e, 0xe6, 0x3a, 0x65, 0xce, + 0x83, 0x66, 0x76, 0xe5, 0x11, 0xec, 0x98, 0x05, 0xb0, 0x06, 0x60, 0x5a, +}; +static const unsigned char kat3359_addinpr1[] = { + 0x4e, 0xd2, 0xbd, 0xab, 0x34, 0xa1, 0x24, 0x87, 0x79, 0xd2, 0x5c, 0x93, + 0x71, 0x3c, 0x4c, 0x91, 0x98, 0x53, 0x9a, 0xf9, 0xdc, 0x8a, 0x1e, 0xbd, + 0x4b, 0x74, 0x03, 0x85, 0x8d, 0x8d, 0x27, 0x9a, +}; +static const unsigned char kat3359_entropyinpr2[] = { + 0xdd, 0xad, 0x29, 0xad, 0xe1, 0xe1, 0x80, 0x4e, 0x4b, 0x4e, 0xac, 0x97, + 0x43, 0xa0, 0xd8, 0x72, 0xef, 0x56, 0x65, 0x44, 0xb1, 0x43, 0xab, 0xa0, +}; +static const unsigned char kat3359_addinpr2[] = { + 0x9f, 0xc5, 0x04, 0x8d, 0x21, 0x87, 0x91, 0xbf, 0xf0, 0xd0, 0xce, 0xd0, + 0x4e, 0x78, 0x05, 0x6a, 0x54, 0x8a, 0x9b, 0x73, 0x81, 0xdf, 0x90, 0x98, + 0x25, 0x2e, 0xde, 0x78, 0x3c, 0xd1, 0x55, 0xec, +}; +static const unsigned char kat3359_retbits[] = { + 0xa1, 0x4a, 0xde, 0xda, 0x18, 0x38, 0xbd, 0x0f, 0xf4, 0x3e, 0x31, 0x85, + 0x98, 0x4f, 0xb3, 0xd7, 0xb4, 0xaf, 0xab, 0xaf, 0x0d, 0x88, 0x7b, 0x4d, + 0x3e, 0x70, 0x9a, 0x16, 0x10, 0x0a, 0x7e, 0xc1, 0x5a, 0xe8, 0xd5, 0x8f, + 0xf6, 0x3f, 0xfb, 0x15, 0x3c, 0x68, 0x2e, 0x5d, 0x09, 0x30, 0x00, 0x88, + 0x3c, 0x54, 0x31, 0x19, 0xec, 0xf9, 0x0c, 0x15, 0xe1, 0x61, 0x5e, 0x32, + 0x5d, 0x88, 0x23, 0x78, +}; +static const struct drbg_kat_pr_true kat3359_t = { + 13, kat3359_entropyin, kat3359_nonce, kat3359_persstr, + kat3359_entropyinpr1, kat3359_addinpr1, kat3359_entropyinpr2, + kat3359_addinpr2, kat3359_retbits +}; +static const struct drbg_kat kat3359 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3359_t +}; + +static const unsigned char kat3360_entropyin[] = { + 0x1e, 0x98, 0x2c, 0x1c, 0xaf, 0x50, 0x1a, 0x32, 0x3c, 0xbd, 0x46, 0xb0, + 0x48, 0xa1, 0x57, 0x9b, 0x28, 0x8c, 0x44, 0x77, 0x46, 0xec, 0x3b, 0x25, +}; +static const unsigned char kat3360_nonce[] = { + 0xb0, 0x13, 0x96, 0x9f, 0x5b, 0x3d, 0x74, 0x1b, 0x6a, 0x32, 0xa8, 0x6b, + 0x47, 0x5c, 0x15, 0x8d, +}; +static const unsigned char kat3360_persstr[] = { + 0x6a, 0xaf, 0x29, 0x87, 0xdb, 0x9a, 0xa3, 0x99, 0xcd, 0x57, 0x66, 0x4c, + 0xbc, 0x61, 0x41, 0x68, 0x88, 0x08, 0x53, 0x97, 0x83, 0xbd, 0x2e, 0xf1, + 0xbf, 0x9d, 0x14, 0xe8, 0xc9, 0x36, 0x42, 0x5a, +}; +static const unsigned char kat3360_entropyinpr1[] = { + 0xf5, 0xf5, 0xfd, 0xb8, 0x75, 0xda, 0xf3, 0xa6, 0x1b, 0xa0, 0x70, 0xa2, + 0xe2, 0x32, 0xdd, 0x39, 0xc6, 0xb2, 0x75, 0xe0, 0x55, 0xc4, 0x3d, 0x0d, +}; +static const unsigned char kat3360_addinpr1[] = { + 0x9d, 0x55, 0x6b, 0xbf, 0x38, 0xe0, 0x64, 0xe3, 0xa7, 0xbd, 0x65, 0x1b, + 0x0c, 0xbe, 0x59, 0xb4, 0xa1, 0xc2, 0xf2, 0xaa, 0xb2, 0x6d, 0xee, 0x19, + 0x90, 0x92, 0x40, 0x2d, 0x86, 0x33, 0xf4, 0x00, +}; +static const unsigned char kat3360_entropyinpr2[] = { + 0x10, 0x10, 0x94, 0x67, 0x69, 0xf0, 0xfb, 0x94, 0xb0, 0xac, 0xa8, 0x47, + 0x94, 0x92, 0xdd, 0x30, 0x75, 0xc4, 0x66, 0x7a, 0x7f, 0xbd, 0xec, 0x47, +}; +static const unsigned char kat3360_addinpr2[] = { + 0xd2, 0x44, 0xbf, 0xad, 0xb4, 0xc9, 0x0f, 0xb7, 0x2a, 0xb3, 0x00, 0x4f, + 0xab, 0x45, 0xd3, 0xe5, 0x83, 0xeb, 0xe4, 0xef, 0x4b, 0xb9, 0x38, 0x04, + 0x84, 0xd7, 0xee, 0x8b, 0x4f, 0x2a, 0x20, 0x65, +}; +static const unsigned char kat3360_retbits[] = { + 0x97, 0x25, 0xbe, 0xb2, 0x6c, 0x8e, 0x5e, 0xa5, 0x3d, 0x9e, 0x19, 0xee, + 0x78, 0x86, 0xab, 0x36, 0x9f, 0x22, 0xd3, 0x57, 0x7c, 0x3a, 0x0e, 0x42, + 0x96, 0x9a, 0xb6, 0xa6, 0x95, 0x60, 0x26, 0x12, 0x88, 0xd4, 0x36, 0xe5, + 0xcb, 0x45, 0xaf, 0x02, 0xf6, 0x96, 0xb9, 0x6f, 0xdd, 0x19, 0x75, 0xaa, + 0xab, 0x07, 0x38, 0xc3, 0xcc, 0x17, 0x65, 0xda, 0xf7, 0xcd, 0x53, 0xf8, + 0x3d, 0x74, 0xa8, 0xb3, +}; +static const struct drbg_kat_pr_true kat3360_t = { + 14, kat3360_entropyin, kat3360_nonce, kat3360_persstr, + kat3360_entropyinpr1, kat3360_addinpr1, kat3360_entropyinpr2, + kat3360_addinpr2, kat3360_retbits +}; +static const struct drbg_kat kat3360 = { + PR_TRUE, USE_DF, NID_aes_192_ctr, 24, 16, 32, 32, 64, &kat3360_t +}; + +static const unsigned char kat3361_entropyin[] = { + 0x16, 0xa1, 0xf0, 0x35, 0x38, 0x8c, 0xd8, 0xd9, 0x56, 0x02, 0x6e, 0x3b, + 0x01, 0x17, 0xcb, 0x52, 0x4d, 0xd3, 0xeb, 0x56, 0x3f, 0x9a, 0x77, 0x20, + 0xbb, 0x7d, 0xcb, 0x0f, 0xc6, 0xfb, 0xe7, 0x43, +}; +static const unsigned char kat3361_nonce[] = { + 0xa2, 0xd0, 0x15, 0xf2, 0x2d, 0x85, 0x4e, 0x29, 0xde, 0x27, 0x8d, 0x91, + 0x0c, 0x57, 0x3d, 0xe5, +}; +static const unsigned char kat3361_persstr[] = {0}; +static const unsigned char kat3361_entropyinpr1[] = { + 0xcf, 0x14, 0x0b, 0xcd, 0x4d, 0x71, 0x30, 0xe7, 0xe3, 0xea, 0x14, 0x04, + 0x6c, 0x56, 0x44, 0x2b, 0x57, 0xc4, 0x3b, 0x34, 0xad, 0x21, 0x95, 0x53, + 0xe7, 0x10, 0x5c, 0x18, 0xf6, 0xe5, 0x61, 0xaf, +}; +static const unsigned char kat3361_addinpr1[] = {0}; +static const unsigned char kat3361_entropyinpr2[] = { + 0xe2, 0x7c, 0x9f, 0x0b, 0xe6, 0x0d, 0x82, 0xd6, 0xcc, 0x47, 0x4e, 0xfb, + 0x7f, 0xc7, 0x37, 0xb1, 0x6a, 0x68, 0x95, 0xd9, 0xa3, 0xa4, 0x5b, 0x97, + 0x1d, 0x19, 0xb7, 0x43, 0xc1, 0xa4, 0xac, 0x8f, +}; +static const unsigned char kat3361_addinpr2[] = {0}; +static const unsigned char kat3361_retbits[] = { + 0xb4, 0xe8, 0x39, 0x5b, 0xcb, 0x75, 0x03, 0x41, 0x0a, 0x94, 0x63, 0x3f, + 0x70, 0xe9, 0x90, 0x4a, 0x5b, 0x30, 0xe6, 0x2c, 0x35, 0xbc, 0x6d, 0xd2, + 0xa0, 0x34, 0x96, 0xc4, 0xa4, 0x99, 0x32, 0xe1, 0x84, 0xfb, 0xff, 0xdb, + 0xcf, 0x1d, 0xe1, 0xc7, 0x2c, 0x50, 0xd3, 0x6d, 0xc2, 0xae, 0x8f, 0x04, + 0xf4, 0x0f, 0x96, 0xaa, 0xe1, 0x59, 0xc3, 0xfb, 0x81, 0x6c, 0xa1, 0x6d, + 0xf9, 0x9b, 0x6c, 0x3e, +}; +static const struct drbg_kat_pr_true kat3361_t = { + 0, kat3361_entropyin, kat3361_nonce, kat3361_persstr, + kat3361_entropyinpr1, kat3361_addinpr1, kat3361_entropyinpr2, + kat3361_addinpr2, kat3361_retbits +}; +static const struct drbg_kat kat3361 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3361_t +}; + +static const unsigned char kat3362_entropyin[] = { + 0x65, 0x23, 0x1f, 0xc1, 0x7f, 0x7b, 0xb8, 0xa0, 0x53, 0x8b, 0xf6, 0xc4, + 0x17, 0x63, 0x6a, 0x83, 0x52, 0xed, 0xb5, 0xf2, 0x7b, 0x3d, 0xce, 0x35, + 0x08, 0x20, 0xa4, 0xdd, 0xc8, 0xa0, 0x26, 0x27, +}; +static const unsigned char kat3362_nonce[] = { + 0x51, 0xc0, 0x23, 0x88, 0x6d, 0xea, 0x57, 0xd8, 0x8d, 0x71, 0xa8, 0x8b, + 0xc2, 0x12, 0xd2, 0xfd, +}; +static const unsigned char kat3362_persstr[] = {0}; +static const unsigned char kat3362_entropyinpr1[] = { + 0x62, 0x15, 0x90, 0x85, 0x90, 0x84, 0x3a, 0x1a, 0xda, 0x55, 0x2d, 0x53, + 0xb2, 0x37, 0x03, 0x96, 0xf1, 0x44, 0xa9, 0xba, 0xca, 0xc1, 0xa0, 0x25, + 0x4a, 0x78, 0x7e, 0x48, 0xd5, 0xf6, 0x76, 0x22, +}; +static const unsigned char kat3362_addinpr1[] = {0}; +static const unsigned char kat3362_entropyinpr2[] = { + 0xbd, 0x84, 0xb5, 0x7f, 0xb7, 0xf7, 0xa7, 0x85, 0xdb, 0x9d, 0x1d, 0xf5, + 0x66, 0x57, 0x5f, 0x7a, 0xaf, 0x6c, 0xee, 0x64, 0xb6, 0xb8, 0x55, 0x6f, + 0x5d, 0xbf, 0x15, 0x3a, 0x0e, 0x35, 0x8d, 0x45, +}; +static const unsigned char kat3362_addinpr2[] = {0}; +static const unsigned char kat3362_retbits[] = { + 0x43, 0x9d, 0x25, 0x05, 0xe5, 0x8b, 0x95, 0x1f, 0xa8, 0xcb, 0xad, 0x4e, + 0x72, 0x32, 0xef, 0xef, 0x66, 0xeb, 0x74, 0x39, 0x94, 0x10, 0xcf, 0x9e, + 0x8e, 0xf1, 0x08, 0x9d, 0x39, 0xd2, 0xe1, 0xbc, 0xbb, 0x15, 0xc2, 0x2c, + 0x98, 0x04, 0xa6, 0x7e, 0x31, 0xfa, 0x2d, 0x88, 0x89, 0x53, 0xa2, 0xbf, + 0xd5, 0x82, 0x89, 0x94, 0xa2, 0xea, 0x6d, 0xe7, 0xe6, 0x6e, 0xad, 0xcb, + 0x16, 0xc1, 0x6c, 0x90, +}; +static const struct drbg_kat_pr_true kat3362_t = { + 1, kat3362_entropyin, kat3362_nonce, kat3362_persstr, + kat3362_entropyinpr1, kat3362_addinpr1, kat3362_entropyinpr2, + kat3362_addinpr2, kat3362_retbits +}; +static const struct drbg_kat kat3362 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3362_t +}; + +static const unsigned char kat3363_entropyin[] = { + 0x4f, 0xbe, 0x00, 0x0a, 0x46, 0x91, 0x30, 0x8c, 0xf5, 0x90, 0x7f, 0x81, + 0xd4, 0x1a, 0x3e, 0xea, 0xb9, 0xfb, 0x1a, 0x14, 0x90, 0xd5, 0xe7, 0x1d, + 0xa6, 0x59, 0x18, 0xbf, 0x26, 0x1f, 0x48, 0x5f, +}; +static const unsigned char kat3363_nonce[] = { + 0xc6, 0xcd, 0xed, 0xc5, 0x17, 0x08, 0x8c, 0x42, 0xa5, 0xbb, 0x6d, 0x68, + 0x73, 0xe2, 0x17, 0x23, +}; +static const unsigned char kat3363_persstr[] = {0}; +static const unsigned char kat3363_entropyinpr1[] = { + 0xaa, 0x7e, 0x82, 0xb0, 0x86, 0x0d, 0xfe, 0x9f, 0xeb, 0xda, 0x4e, 0x15, + 0x65, 0xd2, 0x60, 0xef, 0x26, 0xf6, 0xd8, 0xe6, 0x37, 0xb9, 0x15, 0xd5, + 0xc7, 0x56, 0x61, 0x8f, 0x4d, 0x18, 0xa5, 0x43, +}; +static const unsigned char kat3363_addinpr1[] = {0}; +static const unsigned char kat3363_entropyinpr2[] = { + 0xbc, 0x6e, 0x63, 0x58, 0xd0, 0xd9, 0x0c, 0x23, 0x24, 0x68, 0x85, 0xf8, + 0xc6, 0x7b, 0x28, 0x3f, 0x91, 0xc9, 0xfd, 0x3c, 0xe9, 0xc4, 0xde, 0x07, + 0xa6, 0x83, 0xb4, 0x38, 0x33, 0x38, 0x68, 0xf2, +}; +static const unsigned char kat3363_addinpr2[] = {0}; +static const unsigned char kat3363_retbits[] = { + 0xdb, 0x3c, 0x3f, 0xc9, 0x61, 0xfd, 0x6a, 0x6c, 0x2f, 0x46, 0x3f, 0xd2, + 0xf6, 0xba, 0x44, 0x0c, 0xe9, 0xf2, 0x2c, 0xe6, 0x63, 0x88, 0x94, 0xf6, + 0xa1, 0xce, 0xae, 0x96, 0x9f, 0xca, 0x34, 0xc7, 0x26, 0x6e, 0x12, 0x2c, + 0xfa, 0x43, 0xdb, 0x90, 0x6f, 0x1f, 0xcc, 0xda, 0x28, 0x61, 0x6c, 0x6f, + 0x1e, 0x68, 0xca, 0x8d, 0x41, 0x2b, 0x19, 0x95, 0xd9, 0x12, 0xe8, 0x56, + 0x71, 0xe2, 0x4d, 0xc5, +}; +static const struct drbg_kat_pr_true kat3363_t = { + 2, kat3363_entropyin, kat3363_nonce, kat3363_persstr, + kat3363_entropyinpr1, kat3363_addinpr1, kat3363_entropyinpr2, + kat3363_addinpr2, kat3363_retbits +}; +static const struct drbg_kat kat3363 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3363_t +}; + +static const unsigned char kat3364_entropyin[] = { + 0x32, 0x71, 0xbc, 0x91, 0x28, 0x7c, 0x78, 0x1f, 0x74, 0x4e, 0x96, 0x86, + 0xb6, 0xb6, 0x07, 0x6d, 0x5a, 0x2e, 0x95, 0xb9, 0xbc, 0xc1, 0x86, 0x1d, + 0xf9, 0x48, 0x75, 0x1e, 0x02, 0x20, 0x0e, 0x96, +}; +static const unsigned char kat3364_nonce[] = { + 0xeb, 0x06, 0x14, 0x12, 0xf6, 0xb2, 0x25, 0xcf, 0x48, 0x5e, 0xfa, 0x3a, + 0xad, 0xe7, 0x33, 0x8d, +}; +static const unsigned char kat3364_persstr[] = {0}; +static const unsigned char kat3364_entropyinpr1[] = { + 0x10, 0xa5, 0x83, 0x03, 0xf3, 0xcb, 0xfa, 0xda, 0xac, 0x04, 0x1f, 0x3a, + 0x11, 0xa4, 0xa7, 0xac, 0x18, 0xb8, 0x99, 0x90, 0x04, 0x4b, 0x54, 0x32, + 0xa1, 0x32, 0xd0, 0x4d, 0xc9, 0x4d, 0x29, 0x10, +}; +static const unsigned char kat3364_addinpr1[] = {0}; +static const unsigned char kat3364_entropyinpr2[] = { + 0x76, 0x36, 0xf9, 0x0a, 0x37, 0x94, 0xe3, 0xe1, 0xbb, 0x7d, 0xf0, 0xbb, + 0xaf, 0x3d, 0xcd, 0x49, 0x8f, 0x46, 0x83, 0x5a, 0xf7, 0xff, 0x51, 0x61, + 0x49, 0x7a, 0xfe, 0x52, 0xae, 0x64, 0x9a, 0xa3, +}; +static const unsigned char kat3364_addinpr2[] = {0}; +static const unsigned char kat3364_retbits[] = { + 0xc9, 0x0d, 0x09, 0xf1, 0x6c, 0xe4, 0xdf, 0x61, 0x3c, 0x95, 0x1b, 0x85, + 0x5a, 0x0c, 0x28, 0x32, 0x9a, 0x83, 0x13, 0xda, 0x7c, 0xa4, 0x51, 0x14, + 0xfa, 0x28, 0xbe, 0x99, 0x66, 0x1f, 0xbc, 0x2b, 0x22, 0x5e, 0x64, 0xad, + 0xa0, 0xf3, 0x61, 0xf6, 0x76, 0xda, 0xf8, 0x51, 0x19, 0xc8, 0xbe, 0x95, + 0xb5, 0x1a, 0xeb, 0x5a, 0xe6, 0x99, 0xa4, 0x4f, 0xf7, 0x4d, 0xaa, 0xb0, + 0x16, 0xc1, 0xc7, 0x2b, +}; +static const struct drbg_kat_pr_true kat3364_t = { + 3, kat3364_entropyin, kat3364_nonce, kat3364_persstr, + kat3364_entropyinpr1, kat3364_addinpr1, kat3364_entropyinpr2, + kat3364_addinpr2, kat3364_retbits +}; +static const struct drbg_kat kat3364 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3364_t +}; + +static const unsigned char kat3365_entropyin[] = { + 0x36, 0x41, 0x4b, 0xc0, 0x51, 0xfd, 0x29, 0x2b, 0x8a, 0xa2, 0xaf, 0xdc, + 0x3e, 0x73, 0x53, 0x33, 0x3b, 0xdf, 0xa3, 0xb2, 0xb6, 0x0b, 0x93, 0xfb, + 0x88, 0xa4, 0x30, 0x47, 0x82, 0x66, 0x32, 0xb6, +}; +static const unsigned char kat3365_nonce[] = { + 0x5d, 0x6d, 0x6f, 0x03, 0x7f, 0xfb, 0xc4, 0xf9, 0x9a, 0xca, 0x29, 0x6f, + 0x1b, 0x3a, 0x77, 0x14, +}; +static const unsigned char kat3365_persstr[] = {0}; +static const unsigned char kat3365_entropyinpr1[] = { + 0x9d, 0xc0, 0x69, 0x16, 0xe6, 0x38, 0xfc, 0x7d, 0xcf, 0xe1, 0x55, 0xce, + 0x82, 0x62, 0x4a, 0x0d, 0xab, 0xd9, 0x74, 0xa1, 0x79, 0x4f, 0xea, 0xc8, + 0x44, 0xf7, 0xc5, 0x2c, 0xe4, 0xe9, 0x89, 0x85, +}; +static const unsigned char kat3365_addinpr1[] = {0}; +static const unsigned char kat3365_entropyinpr2[] = { + 0x3e, 0x54, 0xbc, 0xda, 0x64, 0xaa, 0x0f, 0x31, 0x1b, 0xd6, 0xaf, 0x04, + 0xd3, 0x8d, 0x23, 0x3f, 0xe5, 0x90, 0xec, 0x53, 0x17, 0x0f, 0x45, 0xcc, + 0x80, 0x9e, 0xeb, 0x62, 0x04, 0x53, 0xb2, 0xfb, +}; +static const unsigned char kat3365_addinpr2[] = {0}; +static const unsigned char kat3365_retbits[] = { + 0x51, 0x81, 0xf2, 0x6c, 0x7e, 0x14, 0x45, 0x89, 0x89, 0xaa, 0x11, 0x64, + 0xb5, 0xf4, 0xad, 0x68, 0x02, 0x1f, 0xe1, 0xaf, 0x77, 0x22, 0xa6, 0xfd, + 0x97, 0xcb, 0x56, 0x6a, 0x03, 0x90, 0x8c, 0xf5, 0x6b, 0xe9, 0x3f, 0xa5, + 0x83, 0x54, 0x9f, 0x4c, 0x04, 0x73, 0x8f, 0xfd, 0x89, 0x98, 0x76, 0x5e, + 0x0f, 0xaa, 0xfa, 0xf0, 0xa1, 0x4a, 0x16, 0x9d, 0x27, 0x58, 0x5a, 0x0f, + 0x1a, 0xdf, 0xd0, 0xb5, +}; +static const struct drbg_kat_pr_true kat3365_t = { + 4, kat3365_entropyin, kat3365_nonce, kat3365_persstr, + kat3365_entropyinpr1, kat3365_addinpr1, kat3365_entropyinpr2, + kat3365_addinpr2, kat3365_retbits +}; +static const struct drbg_kat kat3365 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3365_t +}; + +static const unsigned char kat3366_entropyin[] = { + 0x86, 0xcc, 0x6e, 0x0d, 0x10, 0xda, 0xe4, 0x33, 0x2d, 0x04, 0xaa, 0x67, + 0x62, 0x76, 0x18, 0xf8, 0x18, 0x15, 0x11, 0x68, 0x9b, 0x33, 0x4d, 0x42, + 0x31, 0xc3, 0x37, 0x93, 0x07, 0xd3, 0xa4, 0x43, +}; +static const unsigned char kat3366_nonce[] = { + 0xb9, 0xa9, 0xfe, 0x7a, 0x90, 0x56, 0x22, 0x09, 0xec, 0x60, 0xde, 0x81, + 0xd4, 0x31, 0xb7, 0x66, +}; +static const unsigned char kat3366_persstr[] = {0}; +static const unsigned char kat3366_entropyinpr1[] = { + 0x47, 0xab, 0x3b, 0xdf, 0x88, 0xae, 0x84, 0xe8, 0xe1, 0x0a, 0x47, 0x3a, + 0xa5, 0x03, 0xb2, 0xc8, 0xcc, 0x7b, 0x02, 0x10, 0x58, 0x30, 0xfd, 0xb1, + 0x6b, 0x9e, 0xf8, 0x38, 0x22, 0x0b, 0x1d, 0xef, +}; +static const unsigned char kat3366_addinpr1[] = {0}; +static const unsigned char kat3366_entropyinpr2[] = { + 0xfa, 0x27, 0x5c, 0xa7, 0xf2, 0x6f, 0xf7, 0xf2, 0x46, 0xf1, 0xf3, 0x89, + 0x1f, 0xf4, 0x14, 0x22, 0x68, 0xc4, 0x7c, 0x1d, 0xf2, 0x5b, 0x62, 0xc4, + 0x53, 0x19, 0x58, 0x74, 0x4d, 0x66, 0x4d, 0xc3, +}; +static const unsigned char kat3366_addinpr2[] = {0}; +static const unsigned char kat3366_retbits[] = { + 0xd7, 0x68, 0x0e, 0x68, 0x40, 0x33, 0xb1, 0x7e, 0xee, 0xdd, 0x95, 0x39, + 0xb0, 0xf3, 0x57, 0x1e, 0xbe, 0x71, 0xa0, 0x80, 0x71, 0x08, 0x83, 0xc5, + 0x23, 0x38, 0xd9, 0x36, 0x35, 0xd3, 0xa2, 0xff, 0xb2, 0x15, 0x5b, 0xdf, + 0x0c, 0xba, 0x62, 0xe9, 0xa5, 0xaa, 0xb7, 0x00, 0x98, 0x9f, 0xd7, 0x28, + 0x62, 0x4f, 0x01, 0x95, 0x2a, 0x09, 0xa1, 0x35, 0x1a, 0xd0, 0xd5, 0x58, + 0xf0, 0x6f, 0xe2, 0x6e, +}; +static const struct drbg_kat_pr_true kat3366_t = { + 5, kat3366_entropyin, kat3366_nonce, kat3366_persstr, + kat3366_entropyinpr1, kat3366_addinpr1, kat3366_entropyinpr2, + kat3366_addinpr2, kat3366_retbits +}; +static const struct drbg_kat kat3366 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3366_t +}; + +static const unsigned char kat3367_entropyin[] = { + 0x61, 0x58, 0x52, 0x0b, 0xa8, 0x5c, 0x53, 0x01, 0x56, 0x33, 0x1b, 0x36, + 0x83, 0x51, 0xa4, 0x6f, 0x11, 0xd7, 0xc5, 0xf2, 0x14, 0x1f, 0x00, 0xa4, + 0x84, 0xbe, 0xec, 0xfa, 0x56, 0xa6, 0xf7, 0xea, +}; +static const unsigned char kat3367_nonce[] = { + 0xb5, 0x25, 0x1e, 0x69, 0x0c, 0xc5, 0x5f, 0xc2, 0x3a, 0xc9, 0x21, 0xc5, + 0x9b, 0x3b, 0xdd, 0xd0, +}; +static const unsigned char kat3367_persstr[] = {0}; +static const unsigned char kat3367_entropyinpr1[] = { + 0xe4, 0x56, 0xaf, 0x1b, 0xad, 0x93, 0x97, 0x57, 0xb4, 0xc1, 0xe2, 0xd4, + 0xf9, 0xda, 0x12, 0xe6, 0xb0, 0x8f, 0xb7, 0xf0, 0x01, 0x8f, 0xa9, 0x6a, + 0x52, 0xd3, 0xee, 0x7c, 0x58, 0x5e, 0xb7, 0x68, +}; +static const unsigned char kat3367_addinpr1[] = {0}; +static const unsigned char kat3367_entropyinpr2[] = { + 0xcf, 0xab, 0x0f, 0x48, 0xcb, 0x7e, 0xfd, 0x84, 0x0e, 0x85, 0x5a, 0x81, + 0xf4, 0xb2, 0xb4, 0x07, 0x25, 0x4b, 0xfb, 0x60, 0xec, 0x75, 0x4b, 0x84, + 0xef, 0x3c, 0x61, 0x6c, 0xc6, 0x5c, 0xf3, 0xd3, +}; +static const unsigned char kat3367_addinpr2[] = {0}; +static const unsigned char kat3367_retbits[] = { + 0x6d, 0x91, 0x4e, 0x1a, 0x09, 0x19, 0x3f, 0x12, 0x90, 0xcd, 0x85, 0x84, + 0xf2, 0x3c, 0xd0, 0xdc, 0x9d, 0x4d, 0x37, 0xea, 0x67, 0xca, 0x9b, 0xdb, + 0x89, 0x17, 0x03, 0x89, 0x55, 0x1c, 0x57, 0x93, 0x8a, 0xf2, 0x21, 0x16, + 0x0a, 0x53, 0x43, 0xdd, 0x15, 0x68, 0x90, 0xfb, 0xb1, 0x56, 0xd9, 0xa3, + 0x44, 0xc3, 0xcd, 0x84, 0xa7, 0x83, 0x3a, 0xed, 0x05, 0x87, 0xc3, 0x38, + 0x13, 0xd6, 0xb5, 0x5e, +}; +static const struct drbg_kat_pr_true kat3367_t = { + 6, kat3367_entropyin, kat3367_nonce, kat3367_persstr, + kat3367_entropyinpr1, kat3367_addinpr1, kat3367_entropyinpr2, + kat3367_addinpr2, kat3367_retbits +}; +static const struct drbg_kat kat3367 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3367_t +}; + +static const unsigned char kat3368_entropyin[] = { + 0x70, 0xf9, 0xd8, 0x9c, 0x0d, 0xb6, 0xe8, 0x1d, 0x38, 0x0a, 0x31, 0x9a, + 0x7a, 0x8f, 0xef, 0x25, 0x66, 0x01, 0x67, 0xde, 0x54, 0x8f, 0x64, 0x03, + 0xa6, 0xfc, 0x87, 0x4d, 0x19, 0x6d, 0x5b, 0x24, +}; +static const unsigned char kat3368_nonce[] = { + 0xe1, 0xf1, 0x48, 0x8a, 0x2c, 0x8a, 0x17, 0x16, 0x6f, 0x5f, 0x49, 0x82, + 0x7d, 0xb6, 0x9b, 0x1e, +}; +static const unsigned char kat3368_persstr[] = {0}; +static const unsigned char kat3368_entropyinpr1[] = { + 0xf8, 0x02, 0x46, 0xbf, 0xd7, 0x4f, 0x98, 0x0d, 0x4a, 0xa6, 0x72, 0x4f, + 0xf2, 0xcd, 0x19, 0xbc, 0x56, 0x7c, 0x7a, 0xdb, 0x1f, 0xfd, 0xb0, 0x74, + 0x45, 0xc2, 0x26, 0x49, 0xc1, 0xa7, 0xe0, 0xbc, +}; +static const unsigned char kat3368_addinpr1[] = {0}; +static const unsigned char kat3368_entropyinpr2[] = { + 0x6a, 0x39, 0xc3, 0x59, 0x2c, 0x6e, 0x52, 0x46, 0xed, 0xb9, 0x25, 0xfa, + 0x24, 0x08, 0x50, 0xf5, 0x42, 0x06, 0xff, 0xc9, 0x1f, 0xcb, 0xb9, 0xc9, + 0xc3, 0x99, 0x6a, 0xbe, 0x71, 0xec, 0x01, 0x49, +}; +static const unsigned char kat3368_addinpr2[] = {0}; +static const unsigned char kat3368_retbits[] = { + 0x9e, 0x62, 0x95, 0x44, 0xae, 0xc8, 0xf8, 0x72, 0xa2, 0x31, 0x99, 0xe8, + 0xaf, 0xf7, 0xc8, 0x3b, 0xd7, 0xa3, 0x98, 0xed, 0xc3, 0xa9, 0xc9, 0x35, + 0x03, 0xdf, 0x2b, 0xa5, 0x30, 0xe6, 0xfc, 0x6b, 0xbd, 0x84, 0x0b, 0x65, + 0x0f, 0x51, 0xa9, 0x97, 0xa1, 0x26, 0xf2, 0x52, 0x4d, 0x12, 0x27, 0xd0, + 0x4f, 0x7b, 0x6f, 0x3d, 0x1f, 0x4e, 0x4e, 0x81, 0xa6, 0xa6, 0xd2, 0x98, + 0x9a, 0xb7, 0x76, 0x7c, +}; +static const struct drbg_kat_pr_true kat3368_t = { + 7, kat3368_entropyin, kat3368_nonce, kat3368_persstr, + kat3368_entropyinpr1, kat3368_addinpr1, kat3368_entropyinpr2, + kat3368_addinpr2, kat3368_retbits +}; +static const struct drbg_kat kat3368 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3368_t +}; + +static const unsigned char kat3369_entropyin[] = { + 0xd3, 0xbe, 0x2c, 0x6f, 0xa7, 0x7b, 0xca, 0x18, 0x28, 0x6f, 0x97, 0xce, + 0x46, 0x7f, 0x81, 0x45, 0xcd, 0xb3, 0xa6, 0x60, 0xf6, 0x8d, 0x51, 0xfc, + 0x81, 0x80, 0xb7, 0x51, 0xf6, 0xb7, 0x6f, 0x6c, +}; +static const unsigned char kat3369_nonce[] = { + 0x99, 0x7b, 0x73, 0x2c, 0x50, 0xad, 0x4f, 0x7a, 0xb2, 0x8b, 0xc6, 0x13, + 0x4a, 0x9f, 0x6b, 0xf5, +}; +static const unsigned char kat3369_persstr[] = {0}; +static const unsigned char kat3369_entropyinpr1[] = { + 0x52, 0x71, 0x6f, 0x69, 0xa6, 0xc8, 0x43, 0xb6, 0xd8, 0x1a, 0x00, 0x79, + 0x66, 0x0f, 0x50, 0x95, 0xfa, 0xd5, 0x04, 0x2b, 0x68, 0x81, 0x7b, 0x3b, + 0xb3, 0xc3, 0xe8, 0xd3, 0x85, 0x60, 0x02, 0x7e, +}; +static const unsigned char kat3369_addinpr1[] = {0}; +static const unsigned char kat3369_entropyinpr2[] = { + 0xcf, 0xc9, 0x5e, 0x2d, 0x59, 0xcb, 0x32, 0x60, 0x58, 0x33, 0xc7, 0xd2, + 0xca, 0xa1, 0x23, 0x19, 0x9f, 0x73, 0xad, 0x5f, 0x2d, 0xbb, 0x40, 0xca, + 0xe5, 0x71, 0x2f, 0x8c, 0xf7, 0x65, 0xcd, 0x98, +}; +static const unsigned char kat3369_addinpr2[] = {0}; +static const unsigned char kat3369_retbits[] = { + 0x6b, 0xc6, 0x6d, 0x2a, 0xab, 0x05, 0x7c, 0x21, 0x43, 0x5d, 0xac, 0xfd, + 0x88, 0x74, 0xed, 0x6c, 0xaa, 0x70, 0xf6, 0x0e, 0x36, 0x42, 0x5f, 0x8b, + 0x0d, 0xed, 0xac, 0x98, 0x91, 0x9b, 0x85, 0xde, 0xe1, 0xe1, 0x90, 0xd8, + 0x8c, 0xaf, 0xa5, 0xb9, 0xd9, 0x9a, 0x02, 0x72, 0x38, 0x25, 0xcd, 0x46, + 0x5a, 0x6b, 0x00, 0xad, 0x01, 0x51, 0xc5, 0x27, 0x25, 0x33, 0x40, 0x97, + 0x76, 0xe2, 0xb1, 0x6e, +}; +static const struct drbg_kat_pr_true kat3369_t = { + 8, kat3369_entropyin, kat3369_nonce, kat3369_persstr, + kat3369_entropyinpr1, kat3369_addinpr1, kat3369_entropyinpr2, + kat3369_addinpr2, kat3369_retbits +}; +static const struct drbg_kat kat3369 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3369_t +}; + +static const unsigned char kat3370_entropyin[] = { + 0x64, 0xe9, 0x58, 0xc9, 0x5d, 0x76, 0x5e, 0x47, 0xe4, 0xb8, 0xf7, 0x41, + 0x52, 0xbc, 0xc8, 0xae, 0x01, 0xc0, 0xaa, 0x9f, 0x42, 0x0c, 0xd4, 0xad, + 0xf1, 0x95, 0xc9, 0xc4, 0xa1, 0xce, 0x25, 0x4f, +}; +static const unsigned char kat3370_nonce[] = { + 0x2f, 0x31, 0x50, 0x16, 0x54, 0x6e, 0xbf, 0x76, 0x58, 0xc3, 0x59, 0x54, + 0x63, 0xc2, 0x4f, 0x68, +}; +static const unsigned char kat3370_persstr[] = {0}; +static const unsigned char kat3370_entropyinpr1[] = { + 0x71, 0x53, 0xe5, 0x8b, 0x36, 0xd0, 0x00, 0xb9, 0xb1, 0xba, 0xe1, 0x8b, + 0xf2, 0x71, 0xa9, 0x92, 0x65, 0x5c, 0x24, 0x6e, 0x8a, 0xa7, 0x91, 0xb2, + 0xb6, 0x5f, 0xbd, 0xc8, 0x9c, 0xed, 0x1f, 0x39, +}; +static const unsigned char kat3370_addinpr1[] = {0}; +static const unsigned char kat3370_entropyinpr2[] = { + 0x5d, 0x38, 0xbe, 0x88, 0x95, 0x58, 0x9d, 0x30, 0x79, 0x0b, 0x03, 0x6e, + 0x95, 0x46, 0xee, 0xc6, 0x95, 0x49, 0xaa, 0x5d, 0xcc, 0xf4, 0x42, 0x82, + 0x1d, 0x93, 0xf5, 0xe2, 0x01, 0x22, 0xec, 0xc2, +}; +static const unsigned char kat3370_addinpr2[] = {0}; +static const unsigned char kat3370_retbits[] = { + 0x57, 0xd1, 0x2d, 0xdc, 0x95, 0x09, 0xad, 0xcb, 0x3e, 0x34, 0xf4, 0x96, + 0xa8, 0xbe, 0x9a, 0x95, 0xa7, 0x4e, 0x66, 0x9d, 0xba, 0xc3, 0x12, 0xa3, + 0xbf, 0x63, 0x43, 0x09, 0x1d, 0xab, 0x05, 0x36, 0xf2, 0x2a, 0xaa, 0x3a, + 0x4a, 0xa9, 0x82, 0x69, 0x0f, 0x33, 0xdb, 0x52, 0x22, 0x35, 0xcc, 0xb2, + 0x5e, 0xa9, 0x12, 0xb2, 0x6d, 0x71, 0x65, 0x72, 0xec, 0x86, 0xc8, 0x75, + 0xb3, 0x33, 0xd9, 0x42, +}; +static const struct drbg_kat_pr_true kat3370_t = { + 9, kat3370_entropyin, kat3370_nonce, kat3370_persstr, + kat3370_entropyinpr1, kat3370_addinpr1, kat3370_entropyinpr2, + kat3370_addinpr2, kat3370_retbits +}; +static const struct drbg_kat kat3370 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3370_t +}; + +static const unsigned char kat3371_entropyin[] = { + 0x88, 0x47, 0x68, 0x30, 0xe6, 0xc6, 0x35, 0x3a, 0x08, 0x17, 0x8e, 0xaa, + 0x37, 0xca, 0x6d, 0xf6, 0xe8, 0xfa, 0x39, 0x61, 0xed, 0xba, 0x13, 0xf2, + 0xd3, 0xe5, 0x37, 0x8d, 0xad, 0x07, 0xed, 0x54, +}; +static const unsigned char kat3371_nonce[] = { + 0xb5, 0xee, 0xfb, 0x5b, 0xab, 0x71, 0x68, 0x2c, 0x37, 0xf8, 0x24, 0xb8, + 0xc9, 0xcb, 0x9d, 0x22, +}; +static const unsigned char kat3371_persstr[] = {0}; +static const unsigned char kat3371_entropyinpr1[] = { + 0xee, 0x6b, 0xb2, 0xc1, 0x83, 0xfe, 0x42, 0x88, 0xe3, 0x77, 0x92, 0x27, + 0xee, 0x23, 0xff, 0x8a, 0x57, 0xef, 0xb2, 0x20, 0x70, 0x6c, 0xc0, 0xce, + 0x6c, 0x96, 0xb9, 0x77, 0xff, 0x4f, 0x0b, 0xdb, +}; +static const unsigned char kat3371_addinpr1[] = {0}; +static const unsigned char kat3371_entropyinpr2[] = { + 0xfe, 0x1b, 0xda, 0x9e, 0x05, 0x9c, 0x8e, 0x01, 0xf9, 0x96, 0xd2, 0xda, + 0x32, 0xb4, 0x79, 0xf9, 0xf9, 0xd0, 0x27, 0xa2, 0x5b, 0xbe, 0xcd, 0xc0, + 0x50, 0xb8, 0x54, 0x85, 0x4d, 0x0a, 0xa5, 0x0a, +}; +static const unsigned char kat3371_addinpr2[] = {0}; +static const unsigned char kat3371_retbits[] = { + 0x06, 0x9f, 0x8a, 0x45, 0x74, 0x12, 0x1b, 0xfb, 0x57, 0xa3, 0xee, 0x6d, + 0xc1, 0xca, 0x1b, 0xeb, 0x47, 0x34, 0x74, 0x63, 0x6e, 0xe0, 0x58, 0xed, + 0x9a, 0xba, 0x68, 0x41, 0x2f, 0x1f, 0xaf, 0xfa, 0x0b, 0xfb, 0x00, 0xc9, + 0xb5, 0x22, 0x65, 0x18, 0x9f, 0xf7, 0xfe, 0x84, 0x60, 0xa6, 0xf4, 0x5e, + 0x1c, 0x54, 0x68, 0xb1, 0x3a, 0x8c, 0x6c, 0x7e, 0xd9, 0x51, 0xc1, 0x72, + 0x59, 0xa1, 0xb5, 0x80, +}; +static const struct drbg_kat_pr_true kat3371_t = { + 10, kat3371_entropyin, kat3371_nonce, kat3371_persstr, + kat3371_entropyinpr1, kat3371_addinpr1, kat3371_entropyinpr2, + kat3371_addinpr2, kat3371_retbits +}; +static const struct drbg_kat kat3371 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3371_t +}; + +static const unsigned char kat3372_entropyin[] = { + 0xdb, 0xe2, 0x78, 0x74, 0x49, 0xb0, 0xd3, 0x0b, 0x20, 0xae, 0xaa, 0x6e, + 0x90, 0x0e, 0x7f, 0xf8, 0x12, 0x07, 0x10, 0x19, 0x6e, 0x02, 0xb3, 0xa0, + 0x70, 0x8d, 0xd8, 0xb8, 0xe8, 0x3e, 0x44, 0x31, +}; +static const unsigned char kat3372_nonce[] = { + 0x6d, 0x10, 0xb1, 0xfb, 0x2a, 0xfe, 0xf1, 0xa6, 0x1c, 0x8c, 0x29, 0xb2, + 0x37, 0x64, 0x08, 0x10, +}; +static const unsigned char kat3372_persstr[] = {0}; +static const unsigned char kat3372_entropyinpr1[] = { + 0xf8, 0xed, 0x93, 0x8f, 0xac, 0x49, 0x14, 0x29, 0xd0, 0xe1, 0x77, 0xe0, + 0x7f, 0x8b, 0xf3, 0x90, 0x11, 0xe6, 0x2d, 0xec, 0x83, 0x77, 0xd1, 0x28, + 0xfc, 0xf7, 0xe4, 0x5a, 0x2e, 0x51, 0xd5, 0xb0, +}; +static const unsigned char kat3372_addinpr1[] = {0}; +static const unsigned char kat3372_entropyinpr2[] = { + 0x1f, 0x03, 0x41, 0x1b, 0x4f, 0x90, 0xa8, 0x7f, 0x35, 0x98, 0xef, 0xe4, + 0x37, 0x96, 0xd3, 0x04, 0xa3, 0xca, 0x24, 0x50, 0x84, 0xd2, 0x6e, 0xe5, + 0x5c, 0x25, 0x62, 0x9b, 0xb8, 0x81, 0x06, 0xe3, +}; +static const unsigned char kat3372_addinpr2[] = {0}; +static const unsigned char kat3372_retbits[] = { + 0xd4, 0xd8, 0xa2, 0x2c, 0x19, 0x05, 0x76, 0x32, 0xe0, 0xd4, 0x95, 0xf9, + 0x76, 0x3a, 0xa7, 0x06, 0x33, 0xf9, 0x2d, 0xa5, 0xf3, 0xcd, 0xa5, 0xf2, + 0xb1, 0xa4, 0xac, 0x99, 0xb3, 0x54, 0x1d, 0xde, 0x49, 0x25, 0x05, 0x84, + 0x1d, 0xc5, 0x4d, 0x1e, 0xf3, 0x10, 0x01, 0xbb, 0xbf, 0x9d, 0x5f, 0xf5, + 0x02, 0xd9, 0x53, 0x02, 0x58, 0xdc, 0x61, 0xf7, 0xb3, 0x0b, 0x08, 0x3c, + 0x88, 0x2e, 0x01, 0x99, +}; +static const struct drbg_kat_pr_true kat3372_t = { + 11, kat3372_entropyin, kat3372_nonce, kat3372_persstr, + kat3372_entropyinpr1, kat3372_addinpr1, kat3372_entropyinpr2, + kat3372_addinpr2, kat3372_retbits +}; +static const struct drbg_kat kat3372 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3372_t +}; + +static const unsigned char kat3373_entropyin[] = { + 0x70, 0xb9, 0xc1, 0xa5, 0x04, 0x31, 0x13, 0xb8, 0x1c, 0x9d, 0xa5, 0x26, + 0xe3, 0x1d, 0xa2, 0x50, 0x2d, 0x37, 0x56, 0x20, 0xd2, 0x57, 0x3f, 0xb9, + 0x08, 0xf7, 0x17, 0x1e, 0xc9, 0xeb, 0x20, 0xfa, +}; +static const unsigned char kat3373_nonce[] = { + 0xd9, 0x1a, 0xcc, 0xed, 0x2e, 0x94, 0x35, 0x9b, 0xb8, 0x6f, 0x11, 0xf8, + 0x80, 0x1b, 0x7b, 0xf8, +}; +static const unsigned char kat3373_persstr[] = {0}; +static const unsigned char kat3373_entropyinpr1[] = { + 0x2c, 0x2e, 0x64, 0x75, 0x5b, 0xc1, 0xaa, 0xb2, 0xd4, 0xd7, 0x1a, 0x09, + 0x76, 0x20, 0x29, 0x91, 0x01, 0xb9, 0x54, 0x85, 0x53, 0x09, 0x1d, 0x6c, + 0x98, 0xd1, 0xed, 0x18, 0x2a, 0x10, 0xf6, 0x60, +}; +static const unsigned char kat3373_addinpr1[] = {0}; +static const unsigned char kat3373_entropyinpr2[] = { + 0x3b, 0x0d, 0x9f, 0x37, 0xf7, 0x38, 0x5d, 0xc3, 0xf2, 0xa0, 0x97, 0x55, + 0x5c, 0xa3, 0xf7, 0x6b, 0xc0, 0x47, 0xee, 0xa5, 0x3d, 0x37, 0x87, 0x29, + 0x06, 0x38, 0x92, 0x38, 0xb1, 0x3e, 0xec, 0x45, +}; +static const unsigned char kat3373_addinpr2[] = {0}; +static const unsigned char kat3373_retbits[] = { + 0x71, 0xce, 0x9a, 0xf0, 0xc9, 0xd9, 0x5e, 0xf4, 0x02, 0x09, 0x3e, 0x7e, + 0x33, 0xfd, 0xf7, 0x22, 0x1f, 0xa1, 0x3d, 0x6a, 0x2a, 0x3a, 0x6b, 0x35, + 0xcf, 0xf3, 0x1d, 0x57, 0x7d, 0x92, 0x4c, 0xec, 0x97, 0xc5, 0x7e, 0x37, + 0x6e, 0xe3, 0xad, 0x7e, 0xb1, 0x7f, 0xe1, 0x67, 0x7f, 0x7e, 0xcb, 0xf5, + 0x68, 0x2d, 0xf9, 0xe9, 0xde, 0xae, 0x6a, 0x7e, 0x3e, 0x3d, 0x54, 0x11, + 0x24, 0x34, 0x10, 0xcd, +}; +static const struct drbg_kat_pr_true kat3373_t = { + 12, kat3373_entropyin, kat3373_nonce, kat3373_persstr, + kat3373_entropyinpr1, kat3373_addinpr1, kat3373_entropyinpr2, + kat3373_addinpr2, kat3373_retbits +}; +static const struct drbg_kat kat3373 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3373_t +}; + +static const unsigned char kat3374_entropyin[] = { + 0xd5, 0x10, 0xb9, 0x9f, 0xe2, 0xd1, 0x8c, 0x5d, 0x71, 0xa8, 0x9e, 0x46, + 0xb8, 0xed, 0x68, 0x91, 0x14, 0xf6, 0xfa, 0xf3, 0xb9, 0x55, 0x60, 0xa3, + 0x78, 0x33, 0x1e, 0xec, 0xcc, 0x70, 0x32, 0x11, +}; +static const unsigned char kat3374_nonce[] = { + 0x42, 0x09, 0xd3, 0x29, 0xa9, 0x5f, 0xc3, 0xf0, 0xcc, 0x4d, 0xd9, 0xb5, + 0x17, 0xa7, 0x64, 0xfc, +}; +static const unsigned char kat3374_persstr[] = {0}; +static const unsigned char kat3374_entropyinpr1[] = { + 0x84, 0x38, 0x0a, 0x1e, 0x44, 0xc2, 0x1f, 0x59, 0x70, 0x78, 0x17, 0x5e, + 0x0b, 0x27, 0x67, 0x98, 0x1e, 0xe1, 0x8b, 0x54, 0xa1, 0x6c, 0xff, 0xde, + 0x62, 0x3c, 0x2a, 0x89, 0x52, 0x81, 0x43, 0x8b, +}; +static const unsigned char kat3374_addinpr1[] = {0}; +static const unsigned char kat3374_entropyinpr2[] = { + 0xbd, 0xe5, 0xc6, 0x0c, 0x32, 0x2f, 0xf3, 0x04, 0x7d, 0xc2, 0xbe, 0x51, + 0x21, 0xbb, 0x5f, 0xe0, 0x1d, 0x55, 0xc0, 0x7f, 0x48, 0x18, 0x3b, 0x74, + 0x7b, 0x1a, 0xfa, 0x7b, 0xc1, 0xb7, 0x9b, 0x03, +}; +static const unsigned char kat3374_addinpr2[] = {0}; +static const unsigned char kat3374_retbits[] = { + 0x31, 0x62, 0x5e, 0xce, 0x09, 0x50, 0xde, 0x3e, 0xf4, 0xb4, 0x99, 0x92, + 0x1a, 0x8c, 0xc9, 0x41, 0x18, 0x81, 0x1c, 0x36, 0x44, 0xef, 0x0a, 0xb6, + 0xc6, 0x6a, 0x2b, 0x08, 0xf4, 0x96, 0x05, 0x58, 0x2b, 0xf4, 0x7a, 0xe5, + 0xdb, 0xa9, 0x31, 0x60, 0x32, 0x80, 0xf5, 0x37, 0x23, 0xe6, 0x82, 0x03, + 0xa3, 0x99, 0x10, 0xa5, 0xcb, 0x17, 0x33, 0x5f, 0x2f, 0x99, 0xc2, 0xda, + 0x82, 0xe2, 0x70, 0xd0, +}; +static const struct drbg_kat_pr_true kat3374_t = { + 13, kat3374_entropyin, kat3374_nonce, kat3374_persstr, + kat3374_entropyinpr1, kat3374_addinpr1, kat3374_entropyinpr2, + kat3374_addinpr2, kat3374_retbits +}; +static const struct drbg_kat kat3374 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3374_t +}; + +static const unsigned char kat3375_entropyin[] = { + 0xcb, 0x65, 0x79, 0xc0, 0xdd, 0x77, 0xed, 0x68, 0x33, 0x10, 0x4d, 0xf8, + 0xe7, 0x78, 0x12, 0xa9, 0x1a, 0x92, 0x41, 0x94, 0xf4, 0xb2, 0x8e, 0x3b, + 0xba, 0xd1, 0x1b, 0x3e, 0x36, 0x4a, 0x11, 0x8b, +}; +static const unsigned char kat3375_nonce[] = { + 0xdf, 0x4d, 0x07, 0xd8, 0x3c, 0x4d, 0x90, 0x77, 0x9c, 0x7b, 0xd3, 0xdd, + 0xcf, 0xac, 0x2f, 0x3d, +}; +static const unsigned char kat3375_persstr[] = {0}; +static const unsigned char kat3375_entropyinpr1[] = { + 0xc7, 0xc1, 0xca, 0x7e, 0xe0, 0x4e, 0xb6, 0x48, 0xd4, 0x6c, 0x5f, 0x2a, + 0xe2, 0x08, 0xe1, 0x46, 0x3a, 0xaa, 0x7f, 0xe4, 0x42, 0xdb, 0x0b, 0x8e, + 0x1a, 0xe1, 0x8c, 0x20, 0x4b, 0x61, 0x4a, 0x30, +}; +static const unsigned char kat3375_addinpr1[] = {0}; +static const unsigned char kat3375_entropyinpr2[] = { + 0x72, 0x31, 0x50, 0x8c, 0xfb, 0x7d, 0x0f, 0xe9, 0xaa, 0x9e, 0x5d, 0xe8, + 0x0b, 0x22, 0x11, 0xb4, 0x98, 0x44, 0x42, 0x57, 0xba, 0x01, 0x1d, 0x70, + 0x6e, 0xe0, 0xaa, 0x35, 0xb2, 0xe2, 0x81, 0x84, +}; +static const unsigned char kat3375_addinpr2[] = {0}; +static const unsigned char kat3375_retbits[] = { + 0xbe, 0x54, 0xef, 0x3d, 0xd1, 0xb7, 0x97, 0x9a, 0xaf, 0x1e, 0xba, 0xde, + 0xeb, 0xba, 0x41, 0x45, 0xb6, 0x9f, 0x46, 0x29, 0x84, 0xf7, 0x28, 0x62, + 0xcb, 0x45, 0x28, 0xb5, 0xc7, 0x03, 0x76, 0xaa, 0x40, 0xda, 0xd0, 0xfa, + 0x9b, 0xde, 0x07, 0xe5, 0x88, 0xef, 0x5b, 0xfc, 0xda, 0x5a, 0x0c, 0x6a, + 0xcc, 0xd9, 0xce, 0x77, 0xf4, 0x81, 0x0b, 0xa2, 0xf2, 0xe5, 0xf1, 0x36, + 0x3c, 0xab, 0x7c, 0x9f, +}; +static const struct drbg_kat_pr_true kat3375_t = { + 14, kat3375_entropyin, kat3375_nonce, kat3375_persstr, + kat3375_entropyinpr1, kat3375_addinpr1, kat3375_entropyinpr2, + kat3375_addinpr2, kat3375_retbits +}; +static const struct drbg_kat kat3375 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3375_t +}; + +static const unsigned char kat3376_entropyin[] = { + 0xa3, 0x13, 0x37, 0xe0, 0xcb, 0xf2, 0xee, 0x3e, 0x8d, 0x1d, 0x39, 0x32, + 0x4c, 0x97, 0x8e, 0x71, 0x4b, 0x5a, 0xcc, 0x67, 0x89, 0x20, 0xd5, 0x83, + 0x9f, 0xe9, 0x54, 0x77, 0xca, 0x3b, 0x87, 0x41, +}; +static const unsigned char kat3376_nonce[] = { + 0xa7, 0xf8, 0xb7, 0x70, 0xa5, 0x06, 0xac, 0xfc, 0x79, 0xb2, 0xc4, 0x31, + 0x66, 0x0d, 0x31, 0x0f, +}; +static const unsigned char kat3376_persstr[] = {0}; +static const unsigned char kat3376_entropyinpr1[] = { + 0xc2, 0xe4, 0x4d, 0x8b, 0x2c, 0x97, 0xf4, 0xc1, 0x4e, 0x39, 0xc8, 0x13, + 0x7c, 0xc6, 0x28, 0x18, 0xf1, 0xa2, 0x23, 0xdd, 0xe1, 0xdf, 0xe9, 0xde, + 0xf8, 0x67, 0x2c, 0x2a, 0x6f, 0xab, 0x8c, 0x04, +}; +static const unsigned char kat3376_addinpr1[] = { + 0x54, 0x94, 0x59, 0x7f, 0x0e, 0x86, 0x44, 0xd6, 0x02, 0x84, 0x95, 0xc6, + 0x59, 0x99, 0x11, 0xcf, 0x30, 0xfc, 0x96, 0xa1, 0xb9, 0x2a, 0x3a, 0x5d, + 0xc8, 0x62, 0xfe, 0xcf, 0xc3, 0x53, 0xc4, 0x3d, +}; +static const unsigned char kat3376_entropyinpr2[] = { + 0x92, 0x34, 0x05, 0xe7, 0x87, 0x8b, 0x3e, 0x20, 0x3c, 0xb5, 0x31, 0xf6, + 0x88, 0xc1, 0x07, 0x25, 0xd7, 0xa5, 0x5e, 0xda, 0xcc, 0x2b, 0x9f, 0x19, + 0x5f, 0x71, 0x37, 0x08, 0x0b, 0x27, 0x8e, 0xa1, +}; +static const unsigned char kat3376_addinpr2[] = { + 0xe7, 0x63, 0x5b, 0x6f, 0x9e, 0x63, 0xc0, 0x89, 0x42, 0xc4, 0xb5, 0xc8, + 0x6b, 0x5e, 0x60, 0xbb, 0xe3, 0xe8, 0x9e, 0xa3, 0x80, 0x9f, 0xb3, 0x93, + 0x99, 0x85, 0xc9, 0x3e, 0xed, 0xd1, 0x7f, 0x8d, +}; +static const unsigned char kat3376_retbits[] = { + 0x5d, 0xbd, 0x55, 0xed, 0x2f, 0x6d, 0x6c, 0x17, 0x49, 0x09, 0x6b, 0x40, + 0xf6, 0xa9, 0x7d, 0x9c, 0xf4, 0x2c, 0x08, 0x41, 0xb2, 0x7c, 0xe0, 0xef, + 0xd7, 0x43, 0x31, 0x10, 0xd8, 0x11, 0x89, 0x55, 0xc8, 0xce, 0xfe, 0xb9, + 0xdb, 0x8e, 0x1c, 0x79, 0x61, 0xeb, 0x3f, 0x51, 0x7f, 0x20, 0x47, 0xd2, + 0x72, 0x81, 0x26, 0x17, 0x60, 0xa5, 0xe2, 0xb2, 0x45, 0x35, 0xbb, 0x6f, + 0x56, 0x5b, 0xb9, 0x71, +}; +static const struct drbg_kat_pr_true kat3376_t = { + 0, kat3376_entropyin, kat3376_nonce, kat3376_persstr, + kat3376_entropyinpr1, kat3376_addinpr1, kat3376_entropyinpr2, + kat3376_addinpr2, kat3376_retbits +}; +static const struct drbg_kat kat3376 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3376_t +}; + +static const unsigned char kat3377_entropyin[] = { + 0xd9, 0xf2, 0xb3, 0xc2, 0x94, 0xf7, 0xc3, 0x2a, 0x9a, 0x66, 0x5f, 0x65, + 0xef, 0x7a, 0x95, 0x2d, 0xe2, 0x20, 0x89, 0x2e, 0xe1, 0xa1, 0x0f, 0x6b, + 0x87, 0x1b, 0x70, 0x98, 0x35, 0x00, 0xf9, 0x7a, +}; +static const unsigned char kat3377_nonce[] = { + 0x80, 0xf7, 0xf8, 0xaa, 0xce, 0x8b, 0x28, 0xf8, 0xb5, 0x35, 0xeb, 0x9d, + 0xd6, 0x3b, 0x17, 0x75, +}; +static const unsigned char kat3377_persstr[] = {0}; +static const unsigned char kat3377_entropyinpr1[] = { + 0x49, 0x6a, 0x1a, 0x11, 0xf8, 0xd8, 0x6c, 0x33, 0x24, 0x32, 0xf1, 0x7e, + 0xec, 0x1a, 0xd4, 0x38, 0x77, 0x0f, 0xc7, 0xba, 0xd9, 0xd3, 0xfc, 0x18, + 0xda, 0x08, 0xcf, 0x6d, 0x3d, 0x64, 0xc2, 0x30, +}; +static const unsigned char kat3377_addinpr1[] = { + 0x66, 0x33, 0x9f, 0x6e, 0x53, 0x47, 0x61, 0xfe, 0xea, 0x28, 0x3d, 0x46, + 0xfb, 0x3f, 0x33, 0xb7, 0x2d, 0x74, 0xd5, 0x98, 0x3a, 0x90, 0xbf, 0xa3, + 0xd9, 0xa9, 0xf8, 0x3b, 0x4c, 0xdd, 0x36, 0x1d, +}; +static const unsigned char kat3377_entropyinpr2[] = { + 0x90, 0xa2, 0x58, 0xcf, 0x29, 0x34, 0x84, 0x0d, 0xbd, 0x5f, 0x6b, 0x82, + 0x2b, 0x34, 0x70, 0xd7, 0x05, 0xb3, 0x72, 0x20, 0xbd, 0x97, 0xdc, 0x9b, + 0xfa, 0x32, 0x0d, 0x96, 0x59, 0xba, 0x4e, 0xe7, +}; +static const unsigned char kat3377_addinpr2[] = { + 0xa2, 0x23, 0xe7, 0xb8, 0xba, 0xa9, 0xba, 0xe1, 0xab, 0x8a, 0x11, 0x4f, + 0x98, 0x0d, 0x01, 0xb7, 0x9b, 0x4f, 0xd7, 0xe3, 0xb9, 0x0d, 0xda, 0xf1, + 0x3c, 0xe5, 0x0a, 0x13, 0x54, 0x18, 0x63, 0x4c, +}; +static const unsigned char kat3377_retbits[] = { + 0x46, 0xb8, 0x83, 0x5a, 0x0b, 0xb1, 0xa6, 0x1f, 0xe3, 0xc3, 0x29, 0x65, + 0x3a, 0x81, 0x77, 0x47, 0x17, 0x4e, 0xd0, 0x50, 0xf6, 0x6f, 0x2e, 0xf5, + 0x15, 0x08, 0x3b, 0xad, 0x17, 0xde, 0x83, 0xd8, 0x62, 0x43, 0xad, 0xe7, + 0xde, 0xb3, 0xe7, 0x29, 0xd7, 0xea, 0x07, 0x98, 0xba, 0x4a, 0x6e, 0x04, + 0x45, 0x6b, 0xed, 0x32, 0x23, 0x54, 0x27, 0x58, 0x36, 0xb2, 0x84, 0x71, + 0x26, 0x0a, 0xdf, 0x5d, +}; +static const struct drbg_kat_pr_true kat3377_t = { + 1, kat3377_entropyin, kat3377_nonce, kat3377_persstr, + kat3377_entropyinpr1, kat3377_addinpr1, kat3377_entropyinpr2, + kat3377_addinpr2, kat3377_retbits +}; +static const struct drbg_kat kat3377 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3377_t +}; + +static const unsigned char kat3378_entropyin[] = { + 0xd3, 0x9d, 0x9d, 0x70, 0x2f, 0xbf, 0x59, 0x9e, 0x55, 0xe6, 0x3b, 0x97, + 0x0b, 0xbd, 0x1f, 0x18, 0xa1, 0xf3, 0x83, 0x05, 0x53, 0xda, 0x8c, 0x4b, + 0xe1, 0xba, 0x7f, 0x4e, 0x1d, 0x50, 0x3f, 0xea, +}; +static const unsigned char kat3378_nonce[] = { + 0x97, 0xc3, 0xd0, 0x72, 0xfc, 0xde, 0xec, 0x21, 0x11, 0xf7, 0x71, 0x07, + 0x48, 0xef, 0xd5, 0x9c, +}; +static const unsigned char kat3378_persstr[] = {0}; +static const unsigned char kat3378_entropyinpr1[] = { + 0xd8, 0x13, 0x7d, 0x18, 0xab, 0xde, 0x9b, 0x2a, 0x74, 0x3d, 0xd2, 0xd7, + 0x81, 0x16, 0x62, 0xe9, 0x51, 0xb6, 0x75, 0xc4, 0x39, 0x42, 0x1e, 0x5b, + 0x06, 0x9c, 0x41, 0x4e, 0x36, 0xcf, 0xff, 0x10, +}; +static const unsigned char kat3378_addinpr1[] = { + 0xff, 0xad, 0xaa, 0x40, 0x16, 0x07, 0x96, 0xb6, 0xee, 0xda, 0xab, 0x1f, + 0x70, 0x67, 0x7e, 0xea, 0xd4, 0x2f, 0x19, 0x1a, 0xfb, 0x4c, 0xe5, 0xfe, + 0xfc, 0x57, 0x51, 0x02, 0x71, 0xd3, 0x8b, 0xe4, +}; +static const unsigned char kat3378_entropyinpr2[] = { + 0x38, 0x4d, 0x13, 0xb4, 0xcd, 0x26, 0xcf, 0x9a, 0x13, 0x98, 0x32, 0x0f, + 0xe4, 0x2c, 0x2b, 0x92, 0x7f, 0xf7, 0xf3, 0xa0, 0xb5, 0x4a, 0xd5, 0xf7, + 0x19, 0x56, 0x2b, 0x5f, 0xac, 0x83, 0x2c, 0xb7, +}; +static const unsigned char kat3378_addinpr2[] = { + 0x73, 0x0d, 0x3a, 0x97, 0xf4, 0xb7, 0x53, 0xab, 0x7f, 0x09, 0x75, 0x1c, + 0x3e, 0xdc, 0xa0, 0x9d, 0x1d, 0x56, 0xda, 0x18, 0x85, 0xe2, 0x78, 0xd7, + 0xc9, 0xfb, 0x7e, 0x53, 0x39, 0xd3, 0xae, 0xfb, +}; +static const unsigned char kat3378_retbits[] = { + 0x71, 0x57, 0x06, 0xf3, 0xcd, 0xc3, 0xae, 0xdb, 0x9b, 0x00, 0x24, 0xd4, + 0x57, 0x6e, 0x9d, 0x7e, 0xf9, 0x17, 0x05, 0xed, 0x67, 0x9b, 0x5b, 0x94, + 0x47, 0x7e, 0x88, 0x2a, 0x60, 0xcc, 0x00, 0x97, 0x28, 0x02, 0xf8, 0x0f, + 0x2a, 0xe4, 0x67, 0x5c, 0x34, 0x3e, 0x2a, 0x23, 0x73, 0x96, 0x98, 0xbf, + 0x89, 0x05, 0xd3, 0xf8, 0x3d, 0x1c, 0x2f, 0x1c, 0x89, 0xb5, 0xef, 0x8a, + 0xd9, 0x83, 0x6f, 0xfd, +}; +static const struct drbg_kat_pr_true kat3378_t = { + 2, kat3378_entropyin, kat3378_nonce, kat3378_persstr, + kat3378_entropyinpr1, kat3378_addinpr1, kat3378_entropyinpr2, + kat3378_addinpr2, kat3378_retbits +}; +static const struct drbg_kat kat3378 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3378_t +}; + +static const unsigned char kat3379_entropyin[] = { + 0x03, 0x52, 0x0d, 0xdd, 0x04, 0x3b, 0x0b, 0x22, 0x9b, 0x16, 0x27, 0x29, + 0x61, 0x20, 0xf0, 0x6a, 0x3b, 0x36, 0x01, 0x76, 0x9c, 0x8e, 0x18, 0x99, + 0xb2, 0x79, 0x99, 0xa7, 0x8e, 0x58, 0xea, 0xc3, +}; +static const unsigned char kat3379_nonce[] = { + 0x48, 0x38, 0x94, 0xd8, 0x05, 0xf5, 0x76, 0xca, 0x44, 0xdb, 0xc5, 0xf5, + 0x3a, 0xb7, 0xf8, 0x2b, +}; +static const unsigned char kat3379_persstr[] = {0}; +static const unsigned char kat3379_entropyinpr1[] = { + 0x1a, 0x65, 0x3e, 0x9d, 0x2a, 0xab, 0x7c, 0x7b, 0x17, 0xb8, 0x90, 0xb4, + 0x58, 0x2d, 0xa6, 0x18, 0x59, 0x03, 0x09, 0x48, 0x4e, 0xc6, 0x30, 0x9e, + 0x9d, 0x5c, 0x7b, 0xc4, 0x18, 0x8f, 0x66, 0x2a, +}; +static const unsigned char kat3379_addinpr1[] = { + 0x82, 0x5e, 0x3c, 0xf1, 0x56, 0xaf, 0x5e, 0xa5, 0x78, 0xb9, 0x1d, 0x72, + 0x76, 0xe4, 0xae, 0x4b, 0xa4, 0xf0, 0x09, 0xe8, 0xa8, 0xa1, 0xa2, 0xa5, + 0x20, 0xcd, 0xa5, 0xbd, 0xb7, 0x04, 0xc8, 0x77, +}; +static const unsigned char kat3379_entropyinpr2[] = { + 0xdb, 0x0d, 0xc2, 0xc0, 0x7d, 0x15, 0xeb, 0x0b, 0x0e, 0x95, 0x62, 0x65, + 0x23, 0x2a, 0xf6, 0x96, 0x09, 0x6b, 0x55, 0x00, 0x80, 0xe3, 0x50, 0xc8, + 0xd7, 0x39, 0x1a, 0x96, 0x2a, 0xf1, 0x38, 0xed, +}; +static const unsigned char kat3379_addinpr2[] = { + 0xd9, 0x1b, 0x43, 0xc7, 0x0f, 0x15, 0x05, 0xad, 0xe9, 0xde, 0xa6, 0x23, + 0x62, 0x7f, 0x3a, 0x75, 0x0e, 0x3a, 0xcd, 0xcd, 0x7a, 0x60, 0x9d, 0xbc, + 0x36, 0x66, 0x84, 0x7b, 0xa9, 0x4e, 0x6f, 0x67, +}; +static const unsigned char kat3379_retbits[] = { + 0xd4, 0xcb, 0xb5, 0xf5, 0xb0, 0x2f, 0x57, 0x1a, 0x64, 0xe2, 0x99, 0xee, + 0xd7, 0x4d, 0xb8, 0x53, 0x4b, 0x93, 0x73, 0x84, 0x1c, 0xae, 0xeb, 0xaa, + 0x85, 0xea, 0x16, 0x4d, 0x78, 0x22, 0x21, 0xbf, 0x0a, 0x6a, 0x87, 0x71, + 0x04, 0x55, 0x11, 0x63, 0xa8, 0xb6, 0xa0, 0xd7, 0xf3, 0xbb, 0xf5, 0xd7, + 0xab, 0xaf, 0x46, 0x1c, 0x9f, 0xf7, 0xab, 0xf9, 0x9f, 0x01, 0x74, 0x01, + 0x69, 0x10, 0xbf, 0x91, +}; +static const struct drbg_kat_pr_true kat3379_t = { + 3, kat3379_entropyin, kat3379_nonce, kat3379_persstr, + kat3379_entropyinpr1, kat3379_addinpr1, kat3379_entropyinpr2, + kat3379_addinpr2, kat3379_retbits +}; +static const struct drbg_kat kat3379 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3379_t +}; + +static const unsigned char kat3380_entropyin[] = { + 0x60, 0xc8, 0x19, 0x9b, 0xfa, 0x57, 0x03, 0x06, 0xf5, 0x45, 0x56, 0x84, + 0x47, 0x86, 0x0b, 0xf8, 0x92, 0x82, 0xcc, 0xfc, 0x8e, 0xf8, 0xa2, 0x3e, + 0xf0, 0x80, 0xb6, 0x5e, 0xf6, 0x25, 0x7d, 0x96, +}; +static const unsigned char kat3380_nonce[] = { + 0x8b, 0x62, 0xf3, 0x8f, 0x93, 0x62, 0x55, 0x42, 0x69, 0x8f, 0xf7, 0x27, + 0x7b, 0x69, 0x07, 0x03, +}; +static const unsigned char kat3380_persstr[] = {0}; +static const unsigned char kat3380_entropyinpr1[] = { + 0x68, 0x5d, 0x84, 0x11, 0xfb, 0x4c, 0x3c, 0xb6, 0x36, 0xa9, 0xaf, 0xcd, + 0x68, 0x2c, 0xe8, 0x26, 0x2e, 0x99, 0xb6, 0x31, 0xd2, 0xa3, 0x57, 0xcf, + 0x7f, 0xe0, 0xe3, 0x68, 0x4f, 0x8c, 0x9b, 0xaf, +}; +static const unsigned char kat3380_addinpr1[] = { + 0x63, 0x62, 0x9a, 0xae, 0xe0, 0x7f, 0xa8, 0x54, 0x66, 0xea, 0x16, 0x96, + 0x4d, 0x79, 0xf6, 0x4b, 0xfc, 0xde, 0x89, 0xdd, 0xf1, 0x4c, 0xd4, 0x55, + 0x3c, 0xf7, 0x91, 0xbf, 0xe9, 0x56, 0x8f, 0x5a, +}; +static const unsigned char kat3380_entropyinpr2[] = { + 0x89, 0xfc, 0x1b, 0xef, 0xee, 0x86, 0xc4, 0x3d, 0xe4, 0x34, 0x56, 0x5b, + 0xb1, 0x7f, 0xee, 0xb5, 0x34, 0x7a, 0x01, 0xca, 0x1d, 0x6d, 0x96, 0x1d, + 0x73, 0x01, 0x13, 0x08, 0x54, 0xbe, 0x61, 0xf4, +}; +static const unsigned char kat3380_addinpr2[] = { + 0xff, 0x08, 0x7b, 0xd4, 0xf5, 0x83, 0x26, 0x8e, 0x20, 0xe7, 0x48, 0x63, + 0xd9, 0x6a, 0x3e, 0x56, 0xa5, 0x46, 0x22, 0x65, 0x2f, 0xbb, 0x71, 0x0d, + 0xd8, 0x9c, 0xc2, 0xe8, 0x39, 0xe2, 0xc7, 0x37, +}; +static const unsigned char kat3380_retbits[] = { + 0xbd, 0x01, 0xc3, 0xe2, 0x35, 0x48, 0xfb, 0x30, 0x76, 0xdb, 0x9a, 0xe7, + 0x2c, 0x2c, 0xd6, 0x1b, 0xfc, 0x6c, 0x92, 0xc4, 0xab, 0xe2, 0x61, 0x96, + 0x9a, 0xaf, 0x54, 0xd3, 0x60, 0x3f, 0xd3, 0xa1, 0xec, 0xb7, 0xf0, 0x78, + 0xce, 0x29, 0x1a, 0x98, 0xa2, 0x57, 0xf8, 0xa9, 0xe8, 0xb2, 0x55, 0xaf, + 0x40, 0x3c, 0x3f, 0xf7, 0x2f, 0x09, 0x1c, 0x04, 0xd7, 0x02, 0x77, 0x88, + 0xc2, 0xea, 0x5b, 0xd6, +}; +static const struct drbg_kat_pr_true kat3380_t = { + 4, kat3380_entropyin, kat3380_nonce, kat3380_persstr, + kat3380_entropyinpr1, kat3380_addinpr1, kat3380_entropyinpr2, + kat3380_addinpr2, kat3380_retbits +}; +static const struct drbg_kat kat3380 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3380_t +}; + +static const unsigned char kat3381_entropyin[] = { + 0x05, 0x4e, 0x48, 0x5b, 0x9e, 0xf4, 0x3c, 0x22, 0x74, 0x18, 0x5d, 0xdb, + 0x02, 0x8f, 0x63, 0xbe, 0x49, 0xa6, 0x51, 0xdf, 0x02, 0xf8, 0xd3, 0x82, + 0x2c, 0xcb, 0x48, 0x1d, 0xeb, 0xb9, 0x91, 0x77, +}; +static const unsigned char kat3381_nonce[] = { + 0x5e, 0x2b, 0xf7, 0x58, 0xb9, 0xf1, 0x32, 0x2c, 0xb8, 0x16, 0xa8, 0x2a, + 0x2e, 0x12, 0xa4, 0x5e, +}; +static const unsigned char kat3381_persstr[] = {0}; +static const unsigned char kat3381_entropyinpr1[] = { + 0x4a, 0x28, 0xb7, 0xef, 0x75, 0x5a, 0xc4, 0xf7, 0x0a, 0x96, 0x37, 0x99, + 0x10, 0xe6, 0x2d, 0x7b, 0x55, 0x88, 0x42, 0x48, 0x4d, 0xde, 0x1a, 0x9a, + 0x84, 0x37, 0x64, 0x33, 0xfd, 0x22, 0xa8, 0xf5, +}; +static const unsigned char kat3381_addinpr1[] = { + 0xe0, 0x52, 0xd7, 0x34, 0x16, 0xfc, 0x25, 0xb9, 0x71, 0x60, 0x18, 0xa6, + 0x20, 0x2c, 0xe8, 0x99, 0xe0, 0xcd, 0x57, 0x3e, 0xc3, 0x78, 0x43, 0xd2, + 0x30, 0x06, 0x13, 0xed, 0x5c, 0x2d, 0x4f, 0xed, +}; +static const unsigned char kat3381_entropyinpr2[] = { + 0xad, 0x33, 0x2f, 0x07, 0xf3, 0x6d, 0xc1, 0xf8, 0x07, 0x70, 0x94, 0xa7, + 0xa4, 0xd2, 0xf9, 0x20, 0x38, 0xbc, 0x4b, 0x23, 0x79, 0x31, 0x59, 0xcb, + 0x39, 0x1f, 0x11, 0x45, 0xdb, 0x9c, 0x0b, 0x36, +}; +static const unsigned char kat3381_addinpr2[] = { + 0xf8, 0xf6, 0x5a, 0xb9, 0xb1, 0x1e, 0x2e, 0xa8, 0xf4, 0x6e, 0xea, 0xfb, + 0xef, 0x2a, 0x8a, 0x17, 0xdd, 0x0d, 0xdd, 0x4b, 0x3c, 0x5f, 0x75, 0xf5, + 0x71, 0x6d, 0x21, 0xdb, 0xcb, 0x73, 0x82, 0x91, +}; +static const unsigned char kat3381_retbits[] = { + 0x61, 0xb4, 0xea, 0xa4, 0x5b, 0xaa, 0x22, 0xb6, 0x85, 0x09, 0xcf, 0x76, + 0xe4, 0xcc, 0xc5, 0xbc, 0x55, 0x0b, 0x4e, 0x10, 0x24, 0x72, 0xed, 0x31, + 0xd2, 0x87, 0xcf, 0xbb, 0x9c, 0x9b, 0xbf, 0xdb, 0xd2, 0xf9, 0x63, 0x3a, + 0x3f, 0x11, 0x24, 0xf2, 0x18, 0xd7, 0xd3, 0x6c, 0xd4, 0xf8, 0x01, 0xd7, + 0xe5, 0xb8, 0xee, 0xa6, 0x4b, 0x80, 0x18, 0x11, 0x28, 0x68, 0xa2, 0x6c, + 0x1a, 0x0d, 0x0c, 0xc6, +}; +static const struct drbg_kat_pr_true kat3381_t = { + 5, kat3381_entropyin, kat3381_nonce, kat3381_persstr, + kat3381_entropyinpr1, kat3381_addinpr1, kat3381_entropyinpr2, + kat3381_addinpr2, kat3381_retbits +}; +static const struct drbg_kat kat3381 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3381_t +}; + +static const unsigned char kat3382_entropyin[] = { + 0xd2, 0x26, 0x71, 0x02, 0x4d, 0xcb, 0x5d, 0xf2, 0xee, 0x4f, 0x29, 0x3f, + 0xfe, 0x3d, 0xea, 0xac, 0x81, 0xad, 0xb0, 0xe3, 0xe9, 0xf4, 0xc6, 0x72, + 0x32, 0x23, 0xd2, 0x0b, 0xaf, 0x89, 0xac, 0x0f, +}; +static const unsigned char kat3382_nonce[] = { + 0x17, 0x3c, 0xb7, 0xce, 0x36, 0x87, 0xbf, 0xf6, 0x39, 0xff, 0xf8, 0x54, + 0x46, 0x06, 0x79, 0x4a, +}; +static const unsigned char kat3382_persstr[] = {0}; +static const unsigned char kat3382_entropyinpr1[] = { + 0xbb, 0x4a, 0x0d, 0xcb, 0x40, 0x76, 0xe3, 0x42, 0x8d, 0xb1, 0x5c, 0xc7, + 0x50, 0x82, 0x85, 0xaf, 0x2f, 0x52, 0x17, 0xf6, 0xdb, 0x28, 0xce, 0xff, + 0x93, 0xe1, 0xfe, 0x8f, 0x44, 0x95, 0x64, 0xc6, +}; +static const unsigned char kat3382_addinpr1[] = { + 0x34, 0xd4, 0x7a, 0xe5, 0x81, 0x9c, 0xfd, 0x6d, 0xa3, 0x26, 0xf3, 0xe8, + 0x99, 0x09, 0x98, 0x9d, 0x0a, 0x32, 0xc2, 0x06, 0x4d, 0x3e, 0x6e, 0xde, + 0x31, 0xc6, 0x8c, 0xff, 0xcd, 0xdb, 0x86, 0x20, +}; +static const unsigned char kat3382_entropyinpr2[] = { + 0x0b, 0xbb, 0x4b, 0x34, 0xe8, 0xa4, 0xc9, 0xe4, 0x39, 0xbf, 0x9e, 0xce, + 0x4d, 0x5f, 0x44, 0xdf, 0x56, 0x46, 0xdb, 0x61, 0x8b, 0x70, 0xdf, 0xe6, + 0xf5, 0xc3, 0x03, 0x2d, 0x81, 0x4c, 0xc4, 0xf4, +}; +static const unsigned char kat3382_addinpr2[] = { + 0x42, 0xcd, 0xef, 0xf9, 0xf5, 0x29, 0x7a, 0x70, 0x8f, 0xa7, 0xc1, 0x6a, + 0x93, 0x1a, 0x1a, 0x62, 0x78, 0x1f, 0xbc, 0xbd, 0xb0, 0x37, 0xe4, 0xd3, + 0xf7, 0x8b, 0x29, 0x55, 0x23, 0xba, 0x87, 0x5f, +}; +static const unsigned char kat3382_retbits[] = { + 0x1e, 0xca, 0xee, 0x88, 0x88, 0x79, 0x1c, 0xb5, 0x20, 0xcf, 0x91, 0x8c, + 0xdb, 0xb9, 0x48, 0xad, 0x4b, 0xcb, 0x89, 0x68, 0x1b, 0x22, 0xf8, 0xa5, + 0x13, 0x3b, 0x71, 0x84, 0x8e, 0x78, 0xf2, 0x17, 0x3f, 0xcb, 0xee, 0xb1, + 0x06, 0xa6, 0x20, 0x09, 0x2a, 0x12, 0x7f, 0x0d, 0x79, 0x43, 0xbb, 0x0d, + 0xce, 0x6d, 0x5c, 0xf2, 0xfe, 0x47, 0xc7, 0x80, 0xc8, 0xf8, 0xe3, 0xa1, + 0xca, 0x75, 0xef, 0x0e, +}; +static const struct drbg_kat_pr_true kat3382_t = { + 6, kat3382_entropyin, kat3382_nonce, kat3382_persstr, + kat3382_entropyinpr1, kat3382_addinpr1, kat3382_entropyinpr2, + kat3382_addinpr2, kat3382_retbits +}; +static const struct drbg_kat kat3382 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3382_t +}; + +static const unsigned char kat3383_entropyin[] = { + 0xc8, 0x0c, 0x8f, 0xe8, 0x07, 0xc4, 0x28, 0x01, 0x72, 0x25, 0xa5, 0xc2, + 0x47, 0x2b, 0x6e, 0x00, 0xe7, 0x18, 0x68, 0x27, 0x05, 0x01, 0xd7, 0x04, + 0x7b, 0x49, 0x2c, 0x85, 0x83, 0x9e, 0x17, 0x5f, +}; +static const unsigned char kat3383_nonce[] = { + 0x20, 0x82, 0xa7, 0x24, 0x4a, 0x51, 0xfd, 0x6a, 0x19, 0x90, 0x80, 0x34, + 0xc5, 0x68, 0x48, 0x69, +}; +static const unsigned char kat3383_persstr[] = {0}; +static const unsigned char kat3383_entropyinpr1[] = { + 0x38, 0x61, 0x69, 0x44, 0x09, 0x25, 0x05, 0x37, 0xc2, 0xff, 0xad, 0x39, + 0x0f, 0xb8, 0x7e, 0xc5, 0xf3, 0x60, 0x62, 0xbd, 0xef, 0x34, 0xf9, 0x7a, + 0x67, 0xc4, 0x0e, 0x71, 0xef, 0x67, 0x8e, 0x2d, +}; +static const unsigned char kat3383_addinpr1[] = { + 0x62, 0xfa, 0x4f, 0x96, 0xd3, 0xeb, 0xa7, 0x1a, 0x9d, 0xbb, 0x0b, 0x20, + 0x5a, 0x17, 0x9f, 0xb3, 0xcb, 0xbb, 0x63, 0xa8, 0xa1, 0x51, 0x96, 0x56, + 0xec, 0x20, 0x50, 0x07, 0x42, 0x46, 0x40, 0x0d, +}; +static const unsigned char kat3383_entropyinpr2[] = { + 0x8f, 0x0d, 0x69, 0x05, 0xca, 0x5d, 0x20, 0x01, 0x99, 0xe2, 0xec, 0x52, + 0xfb, 0xc1, 0x05, 0x87, 0xce, 0x81, 0x0e, 0x64, 0xd6, 0x9f, 0x29, 0x5b, + 0x15, 0x6f, 0x18, 0x8f, 0x84, 0xbd, 0xdb, 0xf0, +}; +static const unsigned char kat3383_addinpr2[] = { + 0x0d, 0x02, 0xf7, 0x49, 0xd2, 0xfa, 0x74, 0x67, 0xbd, 0xe1, 0x65, 0x5c, + 0x93, 0xa9, 0x55, 0x17, 0x78, 0x8a, 0xf0, 0xef, 0xef, 0x0e, 0xbc, 0xff, + 0xe8, 0x58, 0x3f, 0x4f, 0xdf, 0x6f, 0xf2, 0x3e, +}; +static const unsigned char kat3383_retbits[] = { + 0xce, 0x17, 0x56, 0xc7, 0x56, 0xb8, 0x33, 0x4f, 0x21, 0xb5, 0xa6, 0x12, + 0x12, 0x97, 0x75, 0xa6, 0x62, 0xeb, 0xde, 0x56, 0xe9, 0x99, 0x36, 0x52, + 0x72, 0x73, 0x65, 0x85, 0x06, 0x1b, 0x66, 0xd5, 0x30, 0xa0, 0xc0, 0x2c, + 0x24, 0xc7, 0x14, 0x5d, 0x53, 0x1e, 0xc6, 0xfc, 0x5f, 0x46, 0x06, 0x96, + 0x51, 0x63, 0xb2, 0x1f, 0xf6, 0x63, 0xbe, 0x1c, 0xcc, 0x5f, 0x33, 0xd9, + 0x23, 0xa4, 0x2a, 0x49, +}; +static const struct drbg_kat_pr_true kat3383_t = { + 7, kat3383_entropyin, kat3383_nonce, kat3383_persstr, + kat3383_entropyinpr1, kat3383_addinpr1, kat3383_entropyinpr2, + kat3383_addinpr2, kat3383_retbits +}; +static const struct drbg_kat kat3383 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3383_t +}; + +static const unsigned char kat3384_entropyin[] = { + 0x52, 0x14, 0x28, 0xbc, 0xe4, 0xbd, 0x59, 0xb3, 0xbd, 0xf0, 0xc2, 0x20, + 0x96, 0xf8, 0x50, 0x0f, 0xf0, 0x79, 0xf5, 0xe9, 0xad, 0x47, 0x26, 0x44, + 0x55, 0x65, 0x70, 0x59, 0xf5, 0x2f, 0x58, 0x69, +}; +static const unsigned char kat3384_nonce[] = { + 0x88, 0x36, 0xb6, 0xa6, 0xae, 0xaa, 0x60, 0x01, 0x27, 0x67, 0x68, 0xb6, + 0xc8, 0xca, 0xc2, 0x32, +}; +static const unsigned char kat3384_persstr[] = {0}; +static const unsigned char kat3384_entropyinpr1[] = { + 0x2b, 0xcd, 0x59, 0xcf, 0x48, 0xf6, 0x9a, 0xb7, 0x72, 0x56, 0x44, 0x6a, + 0xe6, 0x34, 0x77, 0x46, 0x15, 0xa8, 0x5e, 0xfa, 0xfc, 0xf0, 0xb0, 0x56, + 0xfa, 0x0f, 0x5d, 0x02, 0x35, 0xd7, 0x9f, 0xd1, +}; +static const unsigned char kat3384_addinpr1[] = { + 0x31, 0x79, 0xda, 0xef, 0x3c, 0x3e, 0x53, 0x09, 0x4f, 0x7e, 0xe6, 0x21, + 0x3f, 0xf7, 0x43, 0x33, 0xc9, 0x8d, 0x3a, 0x06, 0x98, 0xaf, 0xf9, 0x97, + 0xec, 0x3c, 0x40, 0x87, 0x67, 0x6b, 0xe7, 0x3f, +}; +static const unsigned char kat3384_entropyinpr2[] = { + 0x4d, 0x29, 0x60, 0x7e, 0x27, 0x0c, 0x98, 0xa5, 0x41, 0x45, 0xb6, 0x58, + 0xd9, 0x21, 0x67, 0x35, 0x0f, 0xf1, 0x0c, 0xab, 0x78, 0xe9, 0x59, 0x58, + 0xd1, 0x8a, 0x10, 0xe4, 0xfc, 0x48, 0xe1, 0x2a, +}; +static const unsigned char kat3384_addinpr2[] = { + 0xb6, 0x51, 0xbd, 0xcb, 0xf5, 0x9a, 0x75, 0x44, 0x81, 0xe8, 0xae, 0x5c, + 0xc7, 0x81, 0xbf, 0x4b, 0x40, 0x86, 0x55, 0xbd, 0xb6, 0x9d, 0x5a, 0x68, + 0x3a, 0xa9, 0x6d, 0xe0, 0x36, 0xaa, 0x18, 0x4b, +}; +static const unsigned char kat3384_retbits[] = { + 0x5e, 0xf6, 0x9a, 0xef, 0x75, 0x83, 0xe9, 0x87, 0xc5, 0x02, 0x3a, 0x77, + 0x4c, 0x3c, 0xfa, 0x90, 0x4b, 0xdc, 0xd1, 0xa8, 0x41, 0x36, 0x49, 0x88, + 0x4e, 0xe2, 0x6b, 0xe0, 0x3f, 0xde, 0x12, 0xcd, 0x2d, 0x0c, 0xad, 0x61, + 0xa2, 0x73, 0x8f, 0x3f, 0xec, 0xf7, 0xf4, 0xb1, 0xd9, 0xea, 0x1d, 0x6d, + 0x83, 0x0c, 0xf9, 0x9a, 0x6b, 0xab, 0x25, 0xd5, 0x56, 0x8d, 0xa2, 0xbb, + 0x18, 0x0d, 0xcf, 0x7c, +}; +static const struct drbg_kat_pr_true kat3384_t = { + 8, kat3384_entropyin, kat3384_nonce, kat3384_persstr, + kat3384_entropyinpr1, kat3384_addinpr1, kat3384_entropyinpr2, + kat3384_addinpr2, kat3384_retbits +}; +static const struct drbg_kat kat3384 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3384_t +}; + +static const unsigned char kat3385_entropyin[] = { + 0x0c, 0x6a, 0x28, 0x09, 0xb3, 0x52, 0x7b, 0xd9, 0x8e, 0x4e, 0x50, 0xf7, + 0xe0, 0xe2, 0x92, 0x7c, 0x14, 0xd8, 0x22, 0xb7, 0x1d, 0xb0, 0xd0, 0x7f, + 0x7f, 0x1f, 0x6d, 0x88, 0x04, 0x22, 0xfc, 0xb9, +}; +static const unsigned char kat3385_nonce[] = { + 0x6a, 0x13, 0x68, 0x51, 0x87, 0xd9, 0x3a, 0x3d, 0xa6, 0xed, 0x6d, 0xfe, + 0xe2, 0xce, 0x28, 0xfc, +}; +static const unsigned char kat3385_persstr[] = {0}; +static const unsigned char kat3385_entropyinpr1[] = { + 0x3f, 0x1e, 0x55, 0x89, 0x89, 0x08, 0x56, 0x09, 0xa3, 0x64, 0x2c, 0xeb, + 0xbb, 0x82, 0x1a, 0x8b, 0xe6, 0x92, 0x6c, 0x54, 0xc2, 0xe0, 0x5c, 0x29, + 0x6e, 0x6d, 0x7e, 0x94, 0x10, 0x5d, 0x1f, 0xf5, +}; +static const unsigned char kat3385_addinpr1[] = { + 0x7e, 0x85, 0xf4, 0xac, 0x00, 0xbb, 0x6c, 0x86, 0xb4, 0x77, 0x01, 0x99, + 0x56, 0xc6, 0xdd, 0xc1, 0x28, 0x0f, 0xf1, 0x31, 0x42, 0x99, 0xd3, 0x17, + 0xdd, 0xb1, 0x71, 0x61, 0x52, 0x4b, 0x74, 0x38, +}; +static const unsigned char kat3385_entropyinpr2[] = { + 0x70, 0x8d, 0x35, 0xcf, 0x39, 0x83, 0x83, 0x98, 0x1e, 0x84, 0x66, 0xeb, + 0x80, 0x4f, 0x14, 0x73, 0x5b, 0xb5, 0x29, 0x39, 0x90, 0x11, 0x28, 0xbb, + 0xe9, 0x29, 0x68, 0x63, 0x38, 0x43, 0x24, 0x71, +}; +static const unsigned char kat3385_addinpr2[] = { + 0x4c, 0x2e, 0xf9, 0x39, 0xce, 0xef, 0xd0, 0xe3, 0x12, 0xf8, 0x7b, 0x34, + 0xad, 0xb3, 0x7c, 0x1d, 0x10, 0x33, 0x01, 0x1d, 0x36, 0x76, 0x86, 0x4e, + 0x70, 0x70, 0x5f, 0x70, 0xf3, 0x66, 0xfb, 0x29, +}; +static const unsigned char kat3385_retbits[] = { + 0x80, 0xcc, 0x65, 0xb5, 0x41, 0xd1, 0xf8, 0xe0, 0xf7, 0xa3, 0x93, 0x0e, + 0x87, 0xeb, 0x10, 0x2f, 0xc0, 0x81, 0xd3, 0x95, 0x5d, 0x3c, 0x73, 0x5a, + 0x93, 0x80, 0x17, 0x79, 0xc7, 0x53, 0x57, 0x46, 0xb8, 0x6f, 0x26, 0x36, + 0x78, 0x22, 0xfa, 0xc3, 0xd6, 0xd4, 0x87, 0x12, 0xcf, 0xdb, 0xee, 0x0e, + 0xf3, 0xf3, 0x50, 0x65, 0x27, 0xf4, 0x26, 0xbb, 0x4f, 0xb6, 0xb1, 0x46, + 0xab, 0xfb, 0x55, 0xbb, +}; +static const struct drbg_kat_pr_true kat3385_t = { + 9, kat3385_entropyin, kat3385_nonce, kat3385_persstr, + kat3385_entropyinpr1, kat3385_addinpr1, kat3385_entropyinpr2, + kat3385_addinpr2, kat3385_retbits +}; +static const struct drbg_kat kat3385 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3385_t +}; + +static const unsigned char kat3386_entropyin[] = { + 0x04, 0x8c, 0x22, 0xa3, 0xcc, 0xa7, 0xd6, 0xf1, 0x69, 0x42, 0x19, 0x91, + 0xfd, 0xa9, 0x00, 0xac, 0x8b, 0xe5, 0xae, 0x75, 0x54, 0xef, 0xd9, 0x25, + 0x3c, 0x52, 0xa6, 0x3f, 0xac, 0x5e, 0xae, 0xe6, +}; +static const unsigned char kat3386_nonce[] = { + 0x4a, 0xaf, 0xc3, 0x10, 0x7b, 0x59, 0xe2, 0xf3, 0xc0, 0x2c, 0xdb, 0x0e, + 0xd5, 0xba, 0x84, 0x8f, +}; +static const unsigned char kat3386_persstr[] = {0}; +static const unsigned char kat3386_entropyinpr1[] = { + 0x16, 0x2b, 0x46, 0x1f, 0xcf, 0x56, 0x72, 0x49, 0xca, 0xee, 0x3f, 0x10, + 0x23, 0x35, 0x90, 0xe4, 0xa4, 0x58, 0x90, 0x45, 0x54, 0x26, 0xba, 0x54, + 0x49, 0x20, 0x67, 0x6e, 0x3f, 0x88, 0x70, 0xd0, +}; +static const unsigned char kat3386_addinpr1[] = { + 0x29, 0x22, 0x1f, 0x30, 0x90, 0x24, 0xab, 0x8c, 0x64, 0x16, 0x39, 0x36, + 0x26, 0xfd, 0xa8, 0xf1, 0xf8, 0x58, 0x5a, 0x98, 0x66, 0x72, 0xc2, 0x90, + 0x5f, 0x9e, 0xb7, 0xc5, 0x3d, 0x01, 0x87, 0xe6, +}; +static const unsigned char kat3386_entropyinpr2[] = { + 0x3d, 0xdb, 0xb0, 0x26, 0xb7, 0x61, 0x94, 0x9b, 0x58, 0x7a, 0xe4, 0xcf, + 0xb7, 0x64, 0xc5, 0xe2, 0x14, 0x9f, 0x7e, 0xba, 0xa8, 0x19, 0x21, 0x2a, + 0x6f, 0xff, 0x71, 0xa7, 0x57, 0x1e, 0x7b, 0x27, +}; +static const unsigned char kat3386_addinpr2[] = { + 0x56, 0x84, 0x43, 0x99, 0x9e, 0x55, 0x6e, 0x9d, 0x7e, 0x4d, 0x67, 0x14, + 0xc5, 0x2c, 0x32, 0xf0, 0x5a, 0x29, 0x7d, 0x13, 0x69, 0x9c, 0x8d, 0xd9, + 0x7d, 0x9c, 0xb3, 0xc4, 0x92, 0x2b, 0x19, 0xe1, +}; +static const unsigned char kat3386_retbits[] = { + 0x9d, 0xb1, 0x29, 0x3d, 0x4d, 0xb9, 0xf7, 0xe4, 0x9f, 0x5f, 0x29, 0xdb, + 0x60, 0x56, 0xa3, 0x44, 0x13, 0x71, 0x45, 0x89, 0x72, 0xf1, 0x65, 0x3a, + 0x3f, 0xfe, 0xa9, 0xc6, 0x5f, 0x20, 0xa7, 0x66, 0x27, 0x32, 0xf2, 0xa4, + 0x81, 0xcf, 0x2a, 0xd5, 0xb8, 0x6f, 0xbb, 0xa8, 0x5d, 0x9f, 0x72, 0x5f, + 0xc0, 0xd1, 0x02, 0xa4, 0x05, 0x80, 0x17, 0x94, 0x98, 0xe7, 0x21, 0x24, + 0x3a, 0x76, 0xc1, 0x4e, +}; +static const struct drbg_kat_pr_true kat3386_t = { + 10, kat3386_entropyin, kat3386_nonce, kat3386_persstr, + kat3386_entropyinpr1, kat3386_addinpr1, kat3386_entropyinpr2, + kat3386_addinpr2, kat3386_retbits +}; +static const struct drbg_kat kat3386 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3386_t +}; + +static const unsigned char kat3387_entropyin[] = { + 0xf3, 0xf1, 0xb4, 0xa1, 0x94, 0x2c, 0x88, 0xd6, 0x32, 0x9f, 0x3b, 0x64, + 0x20, 0x49, 0x2d, 0x30, 0x6c, 0x0a, 0x52, 0x08, 0x4a, 0xd2, 0x59, 0xdc, + 0xfe, 0xdc, 0xdb, 0xb8, 0xfd, 0x7c, 0xf1, 0xba, +}; +static const unsigned char kat3387_nonce[] = { + 0x05, 0x80, 0xc4, 0xa9, 0x40, 0xf2, 0xed, 0xc0, 0x90, 0x43, 0xed, 0x2c, + 0x63, 0x94, 0x09, 0xfd, +}; +static const unsigned char kat3387_persstr[] = {0}; +static const unsigned char kat3387_entropyinpr1[] = { + 0x5a, 0xdb, 0xb2, 0xe9, 0x88, 0xfb, 0xba, 0x65, 0xca, 0x4e, 0x63, 0x4a, + 0xcf, 0x63, 0x4f, 0xd8, 0x0b, 0xc0, 0x16, 0x08, 0xc9, 0x8a, 0x28, 0x9c, + 0x19, 0x57, 0x04, 0x22, 0xd4, 0x4b, 0x48, 0x0c, +}; +static const unsigned char kat3387_addinpr1[] = { + 0xf8, 0xd0, 0x95, 0x8f, 0xe0, 0x37, 0xae, 0xfe, 0x31, 0x97, 0xe1, 0x12, + 0xaf, 0xf2, 0x08, 0xea, 0x78, 0xc3, 0x0f, 0x63, 0xb5, 0x9a, 0x76, 0xdd, + 0x3f, 0xfc, 0xbd, 0x9a, 0xba, 0x8d, 0x2e, 0xea, +}; +static const unsigned char kat3387_entropyinpr2[] = { + 0x87, 0x3c, 0x57, 0x2e, 0x17, 0x24, 0x14, 0x78, 0x56, 0xb9, 0x1b, 0xde, + 0xed, 0x82, 0xf7, 0x6c, 0x2a, 0xde, 0x71, 0xf7, 0x0f, 0x16, 0x7d, 0x8b, + 0x0b, 0xed, 0x6a, 0xc3, 0x3d, 0x7f, 0xd5, 0x7e, +}; +static const unsigned char kat3387_addinpr2[] = { + 0x72, 0xe5, 0xe9, 0xa8, 0x40, 0x0e, 0xf6, 0x9c, 0x85, 0x57, 0x52, 0x97, + 0xae, 0xad, 0x7a, 0x79, 0x20, 0x73, 0xc9, 0xd6, 0x59, 0x64, 0xa3, 0x11, + 0x8e, 0x31, 0x90, 0x44, 0xb1, 0x49, 0xba, 0x27, +}; +static const unsigned char kat3387_retbits[] = { + 0x79, 0x56, 0x5b, 0x44, 0x13, 0xd0, 0xc6, 0x33, 0x94, 0xc5, 0x29, 0x96, + 0xae, 0xa4, 0xcc, 0xf3, 0xf2, 0xf8, 0x2e, 0xab, 0x7d, 0x0a, 0xb0, 0x4b, + 0x34, 0x9a, 0x87, 0xb2, 0x38, 0x05, 0xe8, 0x5d, 0xb9, 0xcb, 0x32, 0x91, + 0xb6, 0x44, 0x8b, 0xdd, 0x2e, 0x77, 0x2e, 0x97, 0xfd, 0x12, 0x47, 0x96, + 0x0e, 0x93, 0x71, 0xb4, 0x14, 0x88, 0x22, 0x28, 0xc2, 0x6c, 0xa5, 0xe2, + 0xe3, 0xcb, 0x69, 0xc3, +}; +static const struct drbg_kat_pr_true kat3387_t = { + 11, kat3387_entropyin, kat3387_nonce, kat3387_persstr, + kat3387_entropyinpr1, kat3387_addinpr1, kat3387_entropyinpr2, + kat3387_addinpr2, kat3387_retbits +}; +static const struct drbg_kat kat3387 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3387_t +}; + +static const unsigned char kat3388_entropyin[] = { + 0x53, 0x76, 0x51, 0x0b, 0xef, 0xbf, 0x7f, 0xb9, 0x27, 0x3f, 0xba, 0x26, + 0x1d, 0xab, 0x50, 0x5f, 0x6e, 0xb2, 0xe5, 0x29, 0x1d, 0x5c, 0x9f, 0xe4, + 0xf6, 0x8b, 0x98, 0xea, 0xe5, 0xb2, 0xb4, 0xd8, +}; +static const unsigned char kat3388_nonce[] = { + 0x1e, 0x33, 0x04, 0x90, 0xcd, 0x10, 0x71, 0x1b, 0xf5, 0x1e, 0x65, 0x8b, + 0x65, 0x70, 0xad, 0x52, +}; +static const unsigned char kat3388_persstr[] = {0}; +static const unsigned char kat3388_entropyinpr1[] = { + 0x32, 0x32, 0xd2, 0x0c, 0xaf, 0xcb, 0xe2, 0xf2, 0xa7, 0x67, 0x62, 0xc5, + 0x17, 0x79, 0x21, 0x8c, 0xd7, 0x87, 0xd4, 0x14, 0x26, 0x93, 0x47, 0xf6, + 0x35, 0xe4, 0xa7, 0xcb, 0x1a, 0xcb, 0x98, 0xf4, +}; +static const unsigned char kat3388_addinpr1[] = { + 0xa0, 0x45, 0xab, 0x54, 0x6c, 0x97, 0x2e, 0x57, 0xbb, 0x99, 0x1d, 0x65, + 0xd7, 0xd3, 0x84, 0x55, 0x7d, 0x78, 0xc6, 0xe5, 0xc3, 0x76, 0x43, 0xf0, + 0xde, 0xab, 0xba, 0xfa, 0x25, 0x18, 0x9c, 0x5d, +}; +static const unsigned char kat3388_entropyinpr2[] = { + 0xae, 0x06, 0x16, 0x7f, 0xa0, 0xd7, 0x10, 0x9b, 0x0d, 0x12, 0x40, 0x91, + 0x58, 0x77, 0xd7, 0x1c, 0x6e, 0x24, 0x5a, 0x9e, 0x74, 0x22, 0xfd, 0xb9, + 0x3b, 0x9b, 0xa3, 0xe0, 0xaa, 0xe6, 0xe5, 0x8a, +}; +static const unsigned char kat3388_addinpr2[] = { + 0xa7, 0x3d, 0x00, 0x7f, 0x14, 0xd9, 0x0e, 0x2e, 0x09, 0x1a, 0x44, 0xbe, + 0x04, 0x17, 0xfb, 0x8e, 0x2c, 0x30, 0x0e, 0xcf, 0x94, 0xd6, 0x8f, 0xb5, + 0xdf, 0x5a, 0x99, 0x18, 0x24, 0x93, 0x1a, 0x80, +}; +static const unsigned char kat3388_retbits[] = { + 0x89, 0x8d, 0x5a, 0x6c, 0x2f, 0x5f, 0x47, 0x4e, 0x1e, 0xf2, 0x4f, 0xf8, + 0x56, 0xf4, 0x50, 0x71, 0x96, 0xa6, 0x7a, 0x79, 0xe7, 0x22, 0xb4, 0xce, + 0xd7, 0x10, 0x2a, 0x37, 0xa4, 0x3f, 0x42, 0x30, 0x6c, 0xa8, 0xcf, 0x03, + 0x6c, 0x24, 0x29, 0x71, 0x38, 0xf7, 0x8b, 0x84, 0x60, 0x3b, 0x73, 0x7d, + 0x36, 0x9a, 0xe1, 0x62, 0xca, 0xfe, 0x5e, 0x63, 0xff, 0x74, 0x9d, 0xc2, + 0xca, 0x49, 0xee, 0x84, +}; +static const struct drbg_kat_pr_true kat3388_t = { + 12, kat3388_entropyin, kat3388_nonce, kat3388_persstr, + kat3388_entropyinpr1, kat3388_addinpr1, kat3388_entropyinpr2, + kat3388_addinpr2, kat3388_retbits +}; +static const struct drbg_kat kat3388 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3388_t +}; + +static const unsigned char kat3389_entropyin[] = { + 0xe0, 0x21, 0x3e, 0x7a, 0x37, 0x41, 0x69, 0x71, 0x2b, 0x6e, 0x19, 0x01, + 0x5f, 0x6e, 0xff, 0x12, 0x76, 0xa2, 0xa2, 0x2f, 0x21, 0x38, 0x89, 0xbb, + 0x0c, 0xf2, 0xfe, 0xd7, 0x27, 0xd4, 0x37, 0xfd, +}; +static const unsigned char kat3389_nonce[] = { + 0xda, 0x92, 0x30, 0xc4, 0x5b, 0xed, 0xbe, 0x6b, 0x93, 0xe1, 0xca, 0x78, + 0x35, 0x2b, 0x5c, 0xcd, +}; +static const unsigned char kat3389_persstr[] = {0}; +static const unsigned char kat3389_entropyinpr1[] = { + 0x09, 0xb3, 0x1b, 0x90, 0x60, 0xaa, 0x02, 0x96, 0x2d, 0x7c, 0x53, 0xc9, + 0x8d, 0x14, 0x38, 0xd9, 0xde, 0xb5, 0x2a, 0x1f, 0x95, 0x1c, 0x1d, 0xce, + 0x7e, 0x3e, 0x83, 0x3f, 0xfa, 0x7f, 0x48, 0x10, +}; +static const unsigned char kat3389_addinpr1[] = { + 0x9c, 0x2a, 0xf4, 0x6c, 0x2a, 0xd0, 0x6b, 0x49, 0x7f, 0x6a, 0x82, 0x39, + 0x0f, 0xcb, 0x65, 0xe2, 0x4b, 0xf8, 0xdb, 0x56, 0xb6, 0xa5, 0xff, 0x04, + 0xd4, 0x8a, 0xbc, 0x01, 0xb3, 0xe1, 0xf0, 0x69, +}; +static const unsigned char kat3389_entropyinpr2[] = { + 0x9d, 0x7d, 0x1c, 0xa8, 0xf7, 0xa7, 0x58, 0xe7, 0x3b, 0xdc, 0x86, 0xb5, + 0x27, 0xa3, 0xa4, 0xd9, 0xc5, 0xd3, 0x45, 0x0c, 0xc9, 0xb2, 0xf6, 0x77, + 0xdd, 0xbf, 0xef, 0x1a, 0x9e, 0xec, 0x73, 0x18, +}; +static const unsigned char kat3389_addinpr2[] = { + 0xf5, 0xe8, 0x8e, 0x02, 0xdc, 0xe6, 0xbf, 0x79, 0x81, 0x44, 0x3a, 0x68, + 0x5d, 0x51, 0x4c, 0x27, 0xf9, 0x78, 0xd7, 0x01, 0xbf, 0xc9, 0xb9, 0xaf, + 0xdb, 0xd9, 0x27, 0x6a, 0x42, 0xb7, 0x06, 0x20, +}; +static const unsigned char kat3389_retbits[] = { + 0xd2, 0x5b, 0xa0, 0xfd, 0x9f, 0xb1, 0xb7, 0x80, 0x88, 0xf8, 0xfc, 0x65, + 0x0c, 0x8d, 0x26, 0xad, 0xa1, 0xb9, 0x65, 0x1f, 0x72, 0x9b, 0x79, 0xf1, + 0x82, 0x36, 0x61, 0xf1, 0x13, 0x01, 0x2d, 0x23, 0xc1, 0x73, 0x68, 0x7d, + 0x96, 0x7b, 0x7c, 0x3e, 0xd2, 0x1e, 0x45, 0x73, 0x24, 0x0d, 0x78, 0x8b, + 0x13, 0xad, 0xe4, 0x2a, 0x86, 0x4a, 0xa0, 0x48, 0x20, 0xe1, 0xa8, 0xe9, + 0xba, 0x0a, 0x34, 0xa6, +}; +static const struct drbg_kat_pr_true kat3389_t = { + 13, kat3389_entropyin, kat3389_nonce, kat3389_persstr, + kat3389_entropyinpr1, kat3389_addinpr1, kat3389_entropyinpr2, + kat3389_addinpr2, kat3389_retbits +}; +static const struct drbg_kat kat3389 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3389_t +}; + +static const unsigned char kat3390_entropyin[] = { + 0xe8, 0x30, 0xa3, 0xb6, 0x2a, 0x8e, 0x7b, 0x11, 0xda, 0x12, 0x66, 0x1e, + 0xe4, 0xfc, 0x35, 0x31, 0x76, 0x2f, 0x3c, 0x86, 0xdc, 0xdf, 0x8d, 0x77, + 0xdf, 0xe7, 0xcb, 0xda, 0xeb, 0x5e, 0xad, 0x0a, +}; +static const unsigned char kat3390_nonce[] = { + 0xc2, 0xe9, 0x92, 0x0c, 0xfe, 0x94, 0xde, 0x89, 0xd7, 0x41, 0x49, 0xad, + 0x7d, 0x87, 0x68, 0xb1, +}; +static const unsigned char kat3390_persstr[] = {0}; +static const unsigned char kat3390_entropyinpr1[] = { + 0xee, 0x52, 0x2f, 0x97, 0x6f, 0x98, 0xc0, 0x2d, 0x5a, 0x41, 0xeb, 0x17, + 0x9b, 0x84, 0xe3, 0x62, 0x2d, 0xdc, 0x60, 0xd8, 0x6b, 0xcf, 0x17, 0xfb, + 0xc3, 0x94, 0xf0, 0x51, 0x1a, 0x40, 0xd8, 0x51, +}; +static const unsigned char kat3390_addinpr1[] = { + 0x46, 0x0a, 0x1e, 0x65, 0xaa, 0xcd, 0x22, 0x22, 0x26, 0x22, 0x16, 0xf3, + 0xeb, 0xaa, 0xe6, 0x21, 0xf9, 0x51, 0x7a, 0xbc, 0x73, 0x24, 0x26, 0x4d, + 0x90, 0x4b, 0x36, 0x94, 0x0d, 0xea, 0x51, 0xf5, +}; +static const unsigned char kat3390_entropyinpr2[] = { + 0x67, 0xca, 0x64, 0x28, 0x19, 0xb5, 0xc8, 0xab, 0x14, 0x59, 0x67, 0x37, + 0x6f, 0x2e, 0x67, 0xfb, 0x2b, 0xb9, 0x16, 0x6f, 0x0b, 0x76, 0xd7, 0x56, + 0x18, 0xdf, 0x94, 0x44, 0xc9, 0x9e, 0xf1, 0xaa, +}; +static const unsigned char kat3390_addinpr2[] = { + 0x9b, 0x9e, 0x82, 0x3a, 0xe4, 0xa4, 0xe5, 0x38, 0x27, 0x4c, 0xa5, 0x69, + 0xbc, 0x7f, 0x55, 0xa8, 0x3e, 0x30, 0x01, 0xc1, 0x7a, 0xe9, 0xc4, 0x97, + 0x29, 0x54, 0x8e, 0x96, 0x24, 0xed, 0x8f, 0x57, +}; +static const unsigned char kat3390_retbits[] = { + 0xb3, 0x87, 0x85, 0x1e, 0x69, 0x5e, 0x07, 0xc6, 0xc2, 0x80, 0xcd, 0x7e, + 0xc5, 0x9e, 0xb0, 0x78, 0xa0, 0x33, 0xb2, 0x5f, 0x86, 0xee, 0x25, 0x91, + 0x14, 0x4a, 0x96, 0x0a, 0xc8, 0x3e, 0x55, 0x0b, 0x7b, 0x97, 0x6c, 0xd8, + 0xd2, 0x08, 0x5c, 0x85, 0x68, 0x58, 0x57, 0xf8, 0x41, 0xc4, 0xc6, 0x69, + 0x75, 0x12, 0xea, 0xc3, 0x26, 0x41, 0x96, 0xa8, 0xb6, 0x67, 0x50, 0x59, + 0x1e, 0x99, 0x33, 0x94, +}; +static const struct drbg_kat_pr_true kat3390_t = { + 14, kat3390_entropyin, kat3390_nonce, kat3390_persstr, + kat3390_entropyinpr1, kat3390_addinpr1, kat3390_entropyinpr2, + kat3390_addinpr2, kat3390_retbits +}; +static const struct drbg_kat kat3390 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3390_t +}; + +static const unsigned char kat3391_entropyin[] = { + 0xca, 0x58, 0xfd, 0xf2, 0xb9, 0x77, 0xcb, 0x49, 0xd4, 0xe0, 0x5b, 0xe2, + 0x39, 0x50, 0xd9, 0x8a, 0x6a, 0xb3, 0xc5, 0x2f, 0xdf, 0x74, 0xd5, 0x85, + 0x8f, 0xd1, 0xba, 0x64, 0x54, 0x7b, 0xdb, 0x1e, +}; +static const unsigned char kat3391_nonce[] = { + 0xc5, 0xea, 0x24, 0xc0, 0xfa, 0x0c, 0x90, 0x15, 0x09, 0x20, 0x92, 0x42, + 0x32, 0x36, 0x45, 0x45, +}; +static const unsigned char kat3391_persstr[] = { + 0x5a, 0x70, 0x95, 0xe9, 0x81, 0x40, 0x52, 0x33, 0x91, 0x53, 0x7e, 0x75, + 0xd6, 0x19, 0x9d, 0x1e, 0xad, 0x0d, 0xc6, 0xa7, 0xde, 0x6c, 0x1f, 0xe0, + 0xea, 0x18, 0x33, 0xa8, 0x7e, 0x06, 0x20, 0xe9, +}; +static const unsigned char kat3391_entropyinpr1[] = { + 0x7d, 0x20, 0x76, 0x6b, 0xcf, 0xa2, 0x15, 0xc8, 0x2f, 0x9f, 0xbc, 0x88, + 0x3f, 0x80, 0xd1, 0x2c, 0xb7, 0x16, 0xd1, 0x80, 0x9e, 0xe1, 0xc9, 0xb3, + 0x88, 0x1b, 0x21, 0x45, 0xef, 0xa1, 0x7f, 0xce, +}; +static const unsigned char kat3391_addinpr1[] = {0}; +static const unsigned char kat3391_entropyinpr2[] = { + 0xc8, 0x92, 0x35, 0x55, 0x2a, 0xd9, 0x1d, 0x8e, 0x12, 0x38, 0xac, 0x01, + 0x4e, 0x38, 0x18, 0x76, 0x9c, 0xf2, 0xb6, 0xd4, 0x13, 0xb6, 0x2c, 0x77, + 0xc0, 0xe7, 0xe6, 0x0c, 0x47, 0x44, 0x95, 0xbe, +}; +static const unsigned char kat3391_addinpr2[] = {0}; +static const unsigned char kat3391_retbits[] = { + 0xce, 0x2f, 0xdb, 0xb6, 0xd9, 0xb7, 0x39, 0x85, 0x04, 0xc5, 0xc0, 0x42, + 0xc2, 0x31, 0xc6, 0x1d, 0x9b, 0x5a, 0x59, 0xf8, 0x7e, 0x0d, 0xcc, 0x62, + 0x7b, 0x65, 0x11, 0x55, 0x10, 0xeb, 0x9e, 0x3d, 0xa4, 0xfb, 0x1c, 0x6a, + 0x18, 0xc0, 0x74, 0xdb, 0xdd, 0xe7, 0x02, 0x23, 0x63, 0x21, 0xd0, 0x39, + 0xf9, 0xa7, 0xc4, 0x52, 0x84, 0x3b, 0x49, 0x40, 0x72, 0x2b, 0xb0, 0x6c, + 0x9c, 0xdb, 0xc3, 0x43, +}; +static const struct drbg_kat_pr_true kat3391_t = { + 0, kat3391_entropyin, kat3391_nonce, kat3391_persstr, + kat3391_entropyinpr1, kat3391_addinpr1, kat3391_entropyinpr2, + kat3391_addinpr2, kat3391_retbits +}; +static const struct drbg_kat kat3391 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3391_t +}; + +static const unsigned char kat3392_entropyin[] = { + 0x58, 0xeb, 0x6c, 0xc9, 0xb9, 0xa3, 0x6b, 0x93, 0x17, 0xb8, 0x1b, 0x80, + 0x6a, 0x7e, 0xfd, 0x86, 0x89, 0xf7, 0x2c, 0xce, 0x9d, 0x7d, 0x2f, 0xc7, + 0xd0, 0x0d, 0xce, 0x2d, 0x2d, 0x21, 0x4f, 0xc5, +}; +static const unsigned char kat3392_nonce[] = { + 0x32, 0xaf, 0x78, 0x6a, 0xeb, 0x62, 0x0c, 0x53, 0x38, 0xa7, 0x93, 0x17, + 0x54, 0x63, 0xfb, 0xd3, +}; +static const unsigned char kat3392_persstr[] = { + 0xb5, 0x1b, 0xec, 0x3b, 0xdc, 0xfd, 0x8d, 0xa6, 0x47, 0x28, 0x31, 0xeb, + 0xa7, 0x80, 0x3b, 0xbb, 0xc7, 0xf2, 0x7e, 0x7d, 0xe1, 0x25, 0x17, 0x25, + 0x15, 0x04, 0x61, 0xf3, 0x22, 0x2a, 0x55, 0x84, +}; +static const unsigned char kat3392_entropyinpr1[] = { + 0x0c, 0x4b, 0x0c, 0x36, 0x35, 0xd1, 0xfc, 0x95, 0x37, 0x18, 0x46, 0x9a, + 0x76, 0x8c, 0xb0, 0x09, 0x66, 0x25, 0xe9, 0x54, 0xde, 0xd5, 0xf6, 0x23, + 0x8f, 0xd9, 0x57, 0x37, 0xeb, 0xbd, 0x91, 0x75, +}; +static const unsigned char kat3392_addinpr1[] = {0}; +static const unsigned char kat3392_entropyinpr2[] = { + 0xad, 0x80, 0x24, 0x22, 0xaa, 0xbd, 0x51, 0xd2, 0x87, 0x8a, 0xf3, 0xd9, + 0x08, 0xe3, 0x43, 0xa2, 0x7a, 0x34, 0x71, 0x00, 0x67, 0x80, 0x6a, 0x46, + 0x87, 0x41, 0x03, 0x0c, 0x81, 0x45, 0x3c, 0x08, +}; +static const unsigned char kat3392_addinpr2[] = {0}; +static const unsigned char kat3392_retbits[] = { + 0xf3, 0x27, 0x11, 0x50, 0xd5, 0x92, 0x7f, 0x04, 0x48, 0xd6, 0x3c, 0xd3, + 0xbd, 0xd9, 0x2e, 0x3c, 0x99, 0x89, 0x9d, 0x3d, 0x61, 0x40, 0x8b, 0x79, + 0x1b, 0xfc, 0x02, 0xcf, 0xee, 0x71, 0xde, 0x8c, 0xb1, 0xaa, 0x1d, 0xe5, + 0x50, 0xf4, 0x24, 0xda, 0x79, 0xf5, 0xcb, 0x00, 0x87, 0x6d, 0x85, 0xe9, + 0xab, 0xe6, 0xfc, 0x5c, 0xf3, 0x0c, 0xa4, 0x98, 0xcd, 0x22, 0x3a, 0xd8, + 0x32, 0x21, 0x09, 0x39, +}; +static const struct drbg_kat_pr_true kat3392_t = { + 1, kat3392_entropyin, kat3392_nonce, kat3392_persstr, + kat3392_entropyinpr1, kat3392_addinpr1, kat3392_entropyinpr2, + kat3392_addinpr2, kat3392_retbits +}; +static const struct drbg_kat kat3392 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3392_t +}; + +static const unsigned char kat3393_entropyin[] = { + 0x22, 0x62, 0x98, 0x16, 0xd2, 0x6e, 0x52, 0xf7, 0x05, 0xdc, 0x95, 0xf9, + 0xb5, 0xb2, 0xc3, 0x0f, 0xa4, 0xb8, 0x80, 0x25, 0x72, 0x0a, 0x73, 0xce, + 0xaa, 0x41, 0x5d, 0xed, 0x64, 0x7b, 0xa1, 0x5c, +}; +static const unsigned char kat3393_nonce[] = { + 0x3d, 0x48, 0xaf, 0x2e, 0xca, 0xb9, 0x39, 0xaa, 0xce, 0x68, 0x1d, 0xfc, + 0xd2, 0x21, 0x00, 0x9e, +}; +static const unsigned char kat3393_persstr[] = { + 0xe7, 0xfb, 0x3a, 0x13, 0x23, 0xcc, 0xff, 0x3c, 0xf3, 0xa8, 0xe1, 0x1a, + 0xe6, 0x74, 0xbb, 0xd2, 0x26, 0x2e, 0x77, 0xd2, 0xdb, 0x95, 0xc0, 0x3b, + 0x23, 0xd4, 0xa6, 0x61, 0x6e, 0x4f, 0x0f, 0x7b, +}; +static const unsigned char kat3393_entropyinpr1[] = { + 0xbb, 0xa2, 0xa6, 0xe6, 0xb7, 0xaf, 0xe5, 0x7b, 0x4b, 0xb3, 0x8e, 0x64, + 0x19, 0x09, 0x18, 0xf2, 0x05, 0xf1, 0x75, 0x80, 0x56, 0x60, 0x9a, 0x98, + 0xbe, 0x4f, 0xe6, 0x3e, 0xa7, 0xd0, 0x35, 0x81, +}; +static const unsigned char kat3393_addinpr1[] = {0}; +static const unsigned char kat3393_entropyinpr2[] = { + 0x43, 0x5b, 0x62, 0x42, 0xec, 0xc0, 0x23, 0x1c, 0xc0, 0x0d, 0xd3, 0x68, + 0x56, 0x87, 0x2b, 0xbd, 0x1b, 0x19, 0xef, 0x80, 0xcd, 0x41, 0x2e, 0xb1, + 0xb6, 0x45, 0xf8, 0xce, 0x2f, 0xb4, 0xdf, 0xc7, +}; +static const unsigned char kat3393_addinpr2[] = {0}; +static const unsigned char kat3393_retbits[] = { + 0xcc, 0xaf, 0x68, 0xd0, 0xc7, 0xb0, 0x9d, 0xbc, 0x3f, 0x84, 0xea, 0x61, + 0xb3, 0x6e, 0x47, 0x1e, 0x74, 0x5b, 0xd0, 0xed, 0x01, 0x08, 0x89, 0x20, + 0xbf, 0xdb, 0x9f, 0xac, 0xad, 0xe3, 0x30, 0xb1, 0xf9, 0xec, 0x73, 0xd2, + 0xc1, 0xda, 0xf9, 0x1c, 0xdd, 0x66, 0xa9, 0xd6, 0xe0, 0x1d, 0x0c, 0xf7, + 0x04, 0x65, 0x4b, 0xad, 0x6a, 0x98, 0x2c, 0x68, 0x27, 0x82, 0x37, 0xa5, + 0x39, 0x45, 0x3b, 0x05, +}; +static const struct drbg_kat_pr_true kat3393_t = { + 2, kat3393_entropyin, kat3393_nonce, kat3393_persstr, + kat3393_entropyinpr1, kat3393_addinpr1, kat3393_entropyinpr2, + kat3393_addinpr2, kat3393_retbits +}; +static const struct drbg_kat kat3393 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3393_t +}; + +static const unsigned char kat3394_entropyin[] = { + 0x8e, 0xa5, 0xb0, 0x5f, 0x5d, 0x13, 0xd4, 0x48, 0x7c, 0xff, 0x6a, 0x09, + 0xb7, 0x09, 0x03, 0x09, 0xa1, 0x1f, 0xae, 0x73, 0xe9, 0x01, 0x7c, 0xaa, + 0x91, 0x60, 0x41, 0x9e, 0xa3, 0xf0, 0xe8, 0x2f, +}; +static const unsigned char kat3394_nonce[] = { + 0x7a, 0xeb, 0x36, 0x95, 0x1c, 0x60, 0x08, 0xe8, 0x48, 0x4c, 0x18, 0xce, + 0xb7, 0x8e, 0xff, 0xbf, +}; +static const unsigned char kat3394_persstr[] = { + 0x92, 0x26, 0x2c, 0x66, 0x65, 0xee, 0x72, 0x43, 0xc4, 0xab, 0x02, 0xce, + 0xf1, 0x99, 0x79, 0x53, 0x59, 0xed, 0x09, 0x1c, 0xb4, 0x7c, 0xfd, 0x06, + 0x56, 0x85, 0x7d, 0x5a, 0x58, 0xcf, 0x3a, 0xc8, +}; +static const unsigned char kat3394_entropyinpr1[] = { + 0x59, 0x77, 0x29, 0x4b, 0x97, 0xd3, 0xe6, 0x37, 0xeb, 0xf0, 0xd4, 0xb3, + 0xa2, 0x77, 0x1b, 0x61, 0x6a, 0x15, 0x9d, 0xc3, 0x33, 0x9b, 0x09, 0xba, + 0x99, 0x91, 0x4e, 0xf3, 0xb2, 0x4f, 0x0a, 0xcc, +}; +static const unsigned char kat3394_addinpr1[] = {0}; +static const unsigned char kat3394_entropyinpr2[] = { + 0x99, 0x2f, 0xf6, 0x03, 0x1f, 0x8c, 0xd2, 0x88, 0x99, 0x8b, 0x89, 0xd0, + 0x6f, 0x9c, 0xce, 0x8f, 0x9a, 0x40, 0xf3, 0x04, 0xe4, 0x54, 0xcc, 0xf3, + 0xb1, 0x46, 0xd1, 0x2b, 0x31, 0x99, 0x89, 0x6e, +}; +static const unsigned char kat3394_addinpr2[] = {0}; +static const unsigned char kat3394_retbits[] = { + 0xa7, 0xd4, 0x32, 0xd8, 0xbd, 0x03, 0xc3, 0xfc, 0x52, 0x51, 0x60, 0x91, + 0x1f, 0x7f, 0xb1, 0xb2, 0xdf, 0x3a, 0xa5, 0xdc, 0x76, 0x9f, 0x93, 0xb9, + 0x2d, 0x66, 0x25, 0x49, 0x70, 0xa2, 0xcd, 0x35, 0xed, 0x74, 0x89, 0x34, + 0xcb, 0x64, 0x26, 0xb6, 0x46, 0x96, 0xf0, 0xc2, 0xa1, 0x51, 0x5c, 0xa9, + 0x4a, 0x07, 0x66, 0x79, 0x22, 0xc4, 0x94, 0x91, 0x5a, 0x97, 0x4d, 0x26, + 0x33, 0x28, 0xa6, 0x1d, +}; +static const struct drbg_kat_pr_true kat3394_t = { + 3, kat3394_entropyin, kat3394_nonce, kat3394_persstr, + kat3394_entropyinpr1, kat3394_addinpr1, kat3394_entropyinpr2, + kat3394_addinpr2, kat3394_retbits +}; +static const struct drbg_kat kat3394 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3394_t +}; + +static const unsigned char kat3395_entropyin[] = { + 0x88, 0xab, 0x9b, 0x05, 0xf5, 0xc0, 0x7c, 0xfa, 0xf3, 0x44, 0xeb, 0x5f, + 0x60, 0x7a, 0xf9, 0x18, 0xf6, 0x96, 0x57, 0x2d, 0x70, 0xde, 0xdd, 0x86, + 0xc3, 0x62, 0x8b, 0x15, 0x22, 0x27, 0xf6, 0xa0, +}; +static const unsigned char kat3395_nonce[] = { + 0x1d, 0xb3, 0x55, 0xf8, 0x21, 0x53, 0x79, 0x06, 0xd5, 0x23, 0xc6, 0xdf, + 0xd8, 0x15, 0x5d, 0xaf, +}; +static const unsigned char kat3395_persstr[] = { + 0xd0, 0xcd, 0x78, 0xb9, 0x39, 0x7c, 0x6d, 0xff, 0x8c, 0x0d, 0xe8, 0x40, + 0xc0, 0xd8, 0x15, 0xce, 0xcd, 0x24, 0x54, 0x42, 0xc8, 0x1f, 0x4c, 0x3e, + 0x56, 0xdd, 0x08, 0xcc, 0x94, 0xf8, 0x29, 0xfd, +}; +static const unsigned char kat3395_entropyinpr1[] = { + 0x26, 0xe6, 0x7d, 0x43, 0x3d, 0xbe, 0x49, 0x41, 0x0d, 0x94, 0xb5, 0xa8, + 0xaa, 0x0c, 0x3f, 0x0c, 0x1d, 0xf4, 0x01, 0x8f, 0xa8, 0x8f, 0x8d, 0x5c, + 0x72, 0x64, 0x94, 0xe6, 0x42, 0xcb, 0xe4, 0x30, +}; +static const unsigned char kat3395_addinpr1[] = {0}; +static const unsigned char kat3395_entropyinpr2[] = { + 0xb3, 0x98, 0xc1, 0x44, 0xcf, 0x39, 0xba, 0x01, 0x37, 0x91, 0x03, 0x7a, + 0xa0, 0xa6, 0x2b, 0x44, 0x74, 0x3a, 0x52, 0x05, 0xfc, 0x71, 0xfb, 0x75, + 0x43, 0x96, 0x19, 0xc5, 0xa3, 0x11, 0x29, 0x80, +}; +static const unsigned char kat3395_addinpr2[] = {0}; +static const unsigned char kat3395_retbits[] = { + 0x1b, 0x02, 0xc4, 0x9a, 0x67, 0xa7, 0x6a, 0x7d, 0xaa, 0x5a, 0xd4, 0x52, + 0xc6, 0xca, 0x89, 0xce, 0x81, 0xd7, 0x32, 0xda, 0x1f, 0x3d, 0x19, 0x39, + 0x6c, 0x8f, 0x26, 0xf8, 0x69, 0x61, 0x04, 0x32, 0xef, 0xbb, 0x49, 0xcf, + 0x0f, 0xef, 0x6a, 0xcf, 0x59, 0x4b, 0xa3, 0xe1, 0xb0, 0x88, 0x5d, 0x31, + 0x08, 0x20, 0x00, 0x74, 0xd9, 0x3a, 0x16, 0xc0, 0xcc, 0x3b, 0x03, 0x1e, + 0x64, 0xa0, 0x97, 0x46, +}; +static const struct drbg_kat_pr_true kat3395_t = { + 4, kat3395_entropyin, kat3395_nonce, kat3395_persstr, + kat3395_entropyinpr1, kat3395_addinpr1, kat3395_entropyinpr2, + kat3395_addinpr2, kat3395_retbits +}; +static const struct drbg_kat kat3395 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3395_t +}; + +static const unsigned char kat3396_entropyin[] = { + 0xca, 0x3a, 0x82, 0x5e, 0xab, 0xda, 0x32, 0xe4, 0xf0, 0x85, 0xc2, 0x59, + 0x01, 0x1f, 0x0e, 0x5b, 0xc8, 0x8c, 0xc1, 0x61, 0x66, 0xc7, 0xc3, 0x71, + 0x3b, 0x76, 0xe7, 0xe6, 0xe5, 0x9a, 0x4a, 0xd5, +}; +static const unsigned char kat3396_nonce[] = { + 0xac, 0x70, 0xd0, 0x9e, 0x85, 0xf4, 0x72, 0xca, 0xcd, 0xeb, 0xdd, 0x34, + 0x7f, 0xbd, 0x9c, 0x84, +}; +static const unsigned char kat3396_persstr[] = { + 0x73, 0x44, 0x43, 0x67, 0xe8, 0x78, 0xf0, 0x67, 0x96, 0xc1, 0x98, 0xb2, + 0xb9, 0xa6, 0x13, 0xcf, 0x45, 0xdc, 0x12, 0x82, 0xca, 0x29, 0x52, 0x2c, + 0x07, 0x18, 0x3a, 0x91, 0x25, 0x98, 0x48, 0xa7, +}; +static const unsigned char kat3396_entropyinpr1[] = { + 0x56, 0xb7, 0x09, 0x2c, 0x01, 0x19, 0x78, 0x98, 0x47, 0x8a, 0x0b, 0xcd, + 0x9d, 0x3a, 0xce, 0x0f, 0x2c, 0x49, 0x0d, 0x2f, 0x02, 0xa0, 0xe4, 0x3d, + 0x3e, 0x4c, 0x39, 0xf1, 0xa6, 0xb1, 0x58, 0x8a, +}; +static const unsigned char kat3396_addinpr1[] = {0}; +static const unsigned char kat3396_entropyinpr2[] = { + 0x85, 0x3e, 0xa3, 0x32, 0x87, 0x89, 0xf1, 0x42, 0x9b, 0xba, 0x8c, 0x20, + 0x76, 0xdb, 0x22, 0xff, 0x16, 0xdf, 0xd4, 0x41, 0xf9, 0xa6, 0xd4, 0xc0, + 0x53, 0x3f, 0x2a, 0x2a, 0xcd, 0x26, 0x9a, 0xaa, +}; +static const unsigned char kat3396_addinpr2[] = {0}; +static const unsigned char kat3396_retbits[] = { + 0x0c, 0x6c, 0x19, 0x73, 0x19, 0x28, 0x9c, 0xa7, 0xbe, 0x68, 0x79, 0xe8, + 0x7d, 0x66, 0x27, 0xcd, 0x04, 0xbd, 0xfe, 0x91, 0x66, 0x43, 0x36, 0xa5, + 0xe1, 0xb3, 0x79, 0x8a, 0x9b, 0x74, 0xe4, 0x9b, 0x6d, 0xb8, 0x2f, 0xa6, + 0xf3, 0xd2, 0x62, 0xc7, 0x86, 0xdf, 0x2f, 0xc3, 0x9d, 0xa5, 0x14, 0xb8, + 0xd9, 0xdc, 0x61, 0xf2, 0x63, 0x9d, 0xbf, 0x94, 0x9d, 0xd6, 0x05, 0x4f, + 0x0b, 0x42, 0xfa, 0x6d, +}; +static const struct drbg_kat_pr_true kat3396_t = { + 5, kat3396_entropyin, kat3396_nonce, kat3396_persstr, + kat3396_entropyinpr1, kat3396_addinpr1, kat3396_entropyinpr2, + kat3396_addinpr2, kat3396_retbits +}; +static const struct drbg_kat kat3396 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3396_t +}; + +static const unsigned char kat3397_entropyin[] = { + 0xa3, 0x6b, 0xfc, 0x41, 0x7a, 0x82, 0x3e, 0x84, 0xb2, 0xda, 0xd2, 0xe2, + 0xfc, 0x16, 0xd4, 0x3d, 0xc8, 0xba, 0xd5, 0xa8, 0x36, 0xe3, 0x7e, 0x20, + 0x9f, 0xbf, 0xb2, 0x11, 0x51, 0x8e, 0x8c, 0xe5, +}; +static const unsigned char kat3397_nonce[] = { + 0x36, 0xaa, 0xd5, 0x42, 0xc8, 0x5d, 0x06, 0x42, 0xba, 0x10, 0xf3, 0x2b, + 0xbf, 0x62, 0x19, 0xb2, +}; +static const unsigned char kat3397_persstr[] = { + 0x66, 0x77, 0x9e, 0x85, 0xa9, 0xb3, 0xbe, 0x78, 0x2b, 0xe8, 0x21, 0x7d, + 0x7c, 0x21, 0xeb, 0xc4, 0x8c, 0xd7, 0x10, 0x42, 0xf4, 0xae, 0x17, 0x3f, + 0xd5, 0x7e, 0x8c, 0x34, 0x28, 0x9d, 0x6a, 0x76, +}; +static const unsigned char kat3397_entropyinpr1[] = { + 0xe5, 0x04, 0xec, 0xec, 0x60, 0x85, 0xc9, 0x11, 0x55, 0x1d, 0xfe, 0x92, + 0x21, 0x0b, 0xe0, 0x95, 0x07, 0xd2, 0x2b, 0x45, 0x9a, 0x61, 0xf3, 0x67, + 0x8a, 0x09, 0xa8, 0x6e, 0x92, 0x1d, 0x1f, 0x46, +}; +static const unsigned char kat3397_addinpr1[] = {0}; +static const unsigned char kat3397_entropyinpr2[] = { + 0xb6, 0x89, 0xa2, 0x08, 0x05, 0x8f, 0x23, 0x79, 0x07, 0x81, 0x0d, 0x96, + 0xf9, 0xe1, 0x7c, 0xc1, 0x44, 0xc0, 0xb1, 0x0e, 0xbe, 0xd0, 0xca, 0xff, + 0x05, 0xd8, 0x97, 0x0c, 0xe9, 0xb0, 0x7b, 0xc7, +}; +static const unsigned char kat3397_addinpr2[] = {0}; +static const unsigned char kat3397_retbits[] = { + 0xbc, 0xd9, 0x28, 0x84, 0xb6, 0x32, 0x5e, 0x31, 0xc7, 0x27, 0x28, 0x9f, + 0xc6, 0xa1, 0xfa, 0xf5, 0x40, 0x1d, 0xca, 0x6c, 0xf7, 0xc0, 0x09, 0x20, + 0x70, 0xc7, 0x18, 0xc6, 0xbd, 0xe0, 0x03, 0x79, 0x40, 0xa3, 0xaa, 0x45, + 0x98, 0x74, 0xdb, 0xeb, 0x51, 0x3b, 0x2d, 0xde, 0x07, 0xa6, 0x1a, 0xd8, + 0x93, 0x8c, 0x90, 0xab, 0xcc, 0xb0, 0xe4, 0xa0, 0x6c, 0x77, 0x96, 0x6f, + 0xa2, 0x93, 0x2a, 0xf1, +}; +static const struct drbg_kat_pr_true kat3397_t = { + 6, kat3397_entropyin, kat3397_nonce, kat3397_persstr, + kat3397_entropyinpr1, kat3397_addinpr1, kat3397_entropyinpr2, + kat3397_addinpr2, kat3397_retbits +}; +static const struct drbg_kat kat3397 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3397_t +}; + +static const unsigned char kat3398_entropyin[] = { + 0x88, 0x2b, 0x68, 0x34, 0xac, 0x17, 0x48, 0xdc, 0x5d, 0x8b, 0x33, 0x65, + 0xe7, 0x2b, 0x56, 0x03, 0x9f, 0x37, 0x85, 0xb1, 0xbf, 0x02, 0xeb, 0x6f, + 0x3c, 0x33, 0x8b, 0x84, 0x45, 0xf0, 0xde, 0xa3, +}; +static const unsigned char kat3398_nonce[] = { + 0x0e, 0xa5, 0x26, 0xa8, 0x72, 0xcc, 0x3b, 0x9b, 0x70, 0xaa, 0x15, 0xed, + 0x75, 0x14, 0xcd, 0x5a, +}; +static const unsigned char kat3398_persstr[] = { + 0xa0, 0x85, 0x91, 0x13, 0x2d, 0x1a, 0xe4, 0x67, 0x54, 0xa1, 0xc9, 0x1d, + 0x9d, 0xca, 0xcd, 0x58, 0xbf, 0x17, 0x34, 0xf4, 0x6a, 0x42, 0x11, 0x55, + 0x59, 0x81, 0x8a, 0xb8, 0xf2, 0x30, 0xfe, 0x4a, +}; +static const unsigned char kat3398_entropyinpr1[] = { + 0xfc, 0xa4, 0x95, 0xa8, 0xf5, 0xc6, 0x47, 0x40, 0xeb, 0x60, 0x41, 0xae, + 0x0d, 0x98, 0xf9, 0x11, 0xfb, 0xd0, 0x2a, 0xd4, 0xc1, 0xf7, 0xda, 0x75, + 0x80, 0xaf, 0xea, 0xf5, 0x52, 0x38, 0x3b, 0xa4, +}; +static const unsigned char kat3398_addinpr1[] = {0}; +static const unsigned char kat3398_entropyinpr2[] = { + 0x40, 0xaf, 0x61, 0x14, 0x5a, 0x3f, 0xbf, 0x1b, 0x87, 0xd2, 0xdb, 0x0a, + 0x74, 0xdc, 0x5b, 0x98, 0x14, 0x13, 0x42, 0x23, 0x55, 0xb1, 0x28, 0xba, + 0x7a, 0xb6, 0x1f, 0x58, 0x0b, 0x96, 0x5f, 0x3c, +}; +static const unsigned char kat3398_addinpr2[] = {0}; +static const unsigned char kat3398_retbits[] = { + 0x63, 0x8b, 0xc8, 0x5c, 0x8c, 0x70, 0xf3, 0x29, 0x1c, 0x61, 0x05, 0xd9, + 0x29, 0x0a, 0xec, 0x9c, 0x10, 0x59, 0xb9, 0x3a, 0xc9, 0xbf, 0x20, 0xb3, + 0xf6, 0xb3, 0xd1, 0xb5, 0x93, 0x3a, 0x32, 0x8d, 0xfc, 0xcb, 0xdf, 0x19, + 0x22, 0xc0, 0x7f, 0xfe, 0x7b, 0xda, 0xf8, 0x63, 0x0a, 0xea, 0x3c, 0x29, + 0x8d, 0x19, 0xab, 0x6e, 0xfb, 0x99, 0xf7, 0x1c, 0xd5, 0x72, 0x4b, 0x20, + 0x09, 0xaf, 0x44, 0x67, +}; +static const struct drbg_kat_pr_true kat3398_t = { + 7, kat3398_entropyin, kat3398_nonce, kat3398_persstr, + kat3398_entropyinpr1, kat3398_addinpr1, kat3398_entropyinpr2, + kat3398_addinpr2, kat3398_retbits +}; +static const struct drbg_kat kat3398 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3398_t +}; + +static const unsigned char kat3399_entropyin[] = { + 0x83, 0x42, 0xc4, 0xeb, 0xfe, 0x19, 0x38, 0xbe, 0x92, 0x20, 0xf9, 0x76, + 0xc9, 0x87, 0x19, 0xeb, 0x83, 0x47, 0xe4, 0xfc, 0x5f, 0xfc, 0xdf, 0x2a, + 0x85, 0x79, 0x40, 0xb7, 0x31, 0x37, 0xcc, 0xd4, +}; +static const unsigned char kat3399_nonce[] = { + 0xe3, 0xdb, 0xb1, 0x7d, 0xe4, 0x55, 0xb2, 0x60, 0xba, 0xc8, 0xf6, 0x13, + 0x89, 0x08, 0x4e, 0xe2, +}; +static const unsigned char kat3399_persstr[] = { + 0xde, 0x0a, 0xae, 0x98, 0x34, 0x1f, 0xf2, 0xc6, 0xad, 0x81, 0xcc, 0xd2, + 0x60, 0xa5, 0xcb, 0x40, 0x5a, 0xc2, 0x0c, 0xd7, 0x1c, 0x63, 0x51, 0x9a, + 0x49, 0xf0, 0x46, 0x39, 0x18, 0xc3, 0x39, 0xe1, +}; +static const unsigned char kat3399_entropyinpr1[] = { + 0xf1, 0x66, 0x14, 0x22, 0xc8, 0xa4, 0x59, 0x42, 0x01, 0xc7, 0x02, 0x53, + 0x89, 0xef, 0x64, 0x45, 0xe6, 0xfd, 0x6e, 0xf8, 0x1a, 0xb6, 0x51, 0xc6, + 0x79, 0x51, 0x52, 0x56, 0x6c, 0x48, 0x5d, 0x22, +}; +static const unsigned char kat3399_addinpr1[] = {0}; +static const unsigned char kat3399_entropyinpr2[] = { + 0x97, 0x27, 0xf2, 0x19, 0x4c, 0x05, 0x58, 0x5b, 0xab, 0xb5, 0x6b, 0xf6, + 0xad, 0x84, 0xc2, 0xd2, 0xa3, 0x77, 0xe2, 0x87, 0x86, 0x6c, 0x79, 0x6b, + 0x01, 0xc9, 0xb7, 0x33, 0xcb, 0xa4, 0x9c, 0x7b, +}; +static const unsigned char kat3399_addinpr2[] = {0}; +static const unsigned char kat3399_retbits[] = { + 0x63, 0xd6, 0x0d, 0x13, 0x45, 0xcb, 0xa4, 0x84, 0x0a, 0x97, 0x2d, 0xc4, + 0x49, 0x5f, 0x0b, 0x70, 0xb0, 0x16, 0x69, 0x7b, 0xc0, 0x9e, 0x37, 0x25, + 0xb8, 0xfa, 0x91, 0x8c, 0x38, 0xc9, 0xb3, 0xb0, 0x63, 0x09, 0xe7, 0x28, + 0x77, 0xe7, 0x67, 0x78, 0x03, 0x28, 0xed, 0x83, 0x4a, 0xbf, 0xf8, 0x89, + 0x32, 0x44, 0x73, 0x58, 0x89, 0x40, 0x94, 0xc3, 0xe2, 0x07, 0x76, 0x9b, + 0x2b, 0x18, 0x29, 0xae, +}; +static const struct drbg_kat_pr_true kat3399_t = { + 8, kat3399_entropyin, kat3399_nonce, kat3399_persstr, + kat3399_entropyinpr1, kat3399_addinpr1, kat3399_entropyinpr2, + kat3399_addinpr2, kat3399_retbits +}; +static const struct drbg_kat kat3399 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3399_t +}; + +static const unsigned char kat3400_entropyin[] = { + 0x46, 0xb9, 0x6b, 0x97, 0x8b, 0xe2, 0x92, 0xab, 0xcd, 0xff, 0xfe, 0x4c, + 0x35, 0xbb, 0xc6, 0xff, 0xf1, 0x61, 0x05, 0x58, 0x77, 0x39, 0x63, 0xa0, + 0x99, 0xad, 0x17, 0xd9, 0x9f, 0x3d, 0xe4, 0x32, +}; +static const unsigned char kat3400_nonce[] = { + 0x2d, 0x13, 0x38, 0x7e, 0xff, 0x79, 0xfe, 0xa8, 0xc8, 0xb0, 0xed, 0xcb, + 0xb9, 0x64, 0x3e, 0x22, +}; +static const unsigned char kat3400_persstr[] = { + 0x64, 0xc5, 0x5f, 0xbe, 0xa7, 0x4e, 0xe9, 0xe6, 0x2b, 0xb6, 0xd5, 0x0f, + 0xee, 0x5e, 0x6e, 0xdd, 0xd9, 0xe7, 0x00, 0x35, 0xaf, 0x69, 0x94, 0x31, + 0x39, 0x44, 0x3c, 0x0d, 0x75, 0xe5, 0x5e, 0x8f, +}; +static const unsigned char kat3400_entropyinpr1[] = { + 0xe3, 0xe4, 0xa5, 0xa1, 0x19, 0x18, 0x80, 0xb7, 0x4d, 0x40, 0xf8, 0xd9, + 0x5c, 0x3c, 0xa8, 0x0d, 0xb5, 0x40, 0x32, 0x0b, 0x9a, 0xa5, 0x0c, 0x13, + 0xc4, 0x5d, 0x76, 0xca, 0x14, 0xc5, 0x1b, 0xa8, +}; +static const unsigned char kat3400_addinpr1[] = {0}; +static const unsigned char kat3400_entropyinpr2[] = { + 0x52, 0xa8, 0x57, 0x37, 0xe0, 0x00, 0x76, 0x45, 0x9f, 0x91, 0x53, 0xed, + 0xed, 0xb1, 0xc2, 0xea, 0xb6, 0x36, 0xd6, 0xbb, 0x9f, 0xbb, 0x59, 0xae, + 0x30, 0x8a, 0x04, 0xb5, 0x7c, 0x05, 0x0b, 0x74, +}; +static const unsigned char kat3400_addinpr2[] = {0}; +static const unsigned char kat3400_retbits[] = { + 0x69, 0xc2, 0x3a, 0x0b, 0xd3, 0xb0, 0x9a, 0x18, 0xfa, 0x04, 0xea, 0x7f, + 0x81, 0xc9, 0x36, 0x2d, 0x2d, 0x40, 0x46, 0x70, 0xa4, 0x43, 0x99, 0x6b, + 0xa0, 0xcf, 0x4f, 0xe4, 0x76, 0xc8, 0x4e, 0x9c, 0x8d, 0x55, 0xa7, 0x7e, + 0xcc, 0xb8, 0x54, 0x15, 0x97, 0x57, 0x60, 0x7e, 0xb4, 0x6d, 0x72, 0x04, + 0x7b, 0x65, 0xa8, 0x0b, 0x01, 0x8f, 0xae, 0xfc, 0x25, 0xe3, 0x46, 0x06, + 0x3c, 0xd9, 0x8f, 0x23, +}; +static const struct drbg_kat_pr_true kat3400_t = { + 9, kat3400_entropyin, kat3400_nonce, kat3400_persstr, + kat3400_entropyinpr1, kat3400_addinpr1, kat3400_entropyinpr2, + kat3400_addinpr2, kat3400_retbits +}; +static const struct drbg_kat kat3400 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3400_t +}; + +static const unsigned char kat3401_entropyin[] = { + 0xf3, 0x53, 0xf2, 0x5a, 0xc6, 0xb8, 0x0d, 0x9a, 0xb3, 0x7d, 0x6e, 0xb6, + 0x98, 0x05, 0x84, 0x89, 0xfa, 0x91, 0x7b, 0xdb, 0x9c, 0xf3, 0xdf, 0x9c, + 0x7a, 0x71, 0xf9, 0xb6, 0xf2, 0xc5, 0x22, 0x16, +}; +static const unsigned char kat3401_nonce[] = { + 0xe8, 0xbd, 0x09, 0x50, 0xbd, 0x8c, 0x8e, 0xb8, 0xc9, 0x46, 0x67, 0xfd, + 0x58, 0x0c, 0x70, 0xe9, +}; +static const unsigned char kat3401_persstr[] = { + 0x51, 0xf1, 0x30, 0x90, 0x29, 0x2c, 0x62, 0x74, 0x07, 0x16, 0x68, 0xe0, + 0xb8, 0x8f, 0x04, 0x05, 0x19, 0x6d, 0x2f, 0xb4, 0xa0, 0x81, 0x7f, 0x33, + 0x36, 0x5a, 0xca, 0x1b, 0x73, 0x1e, 0x72, 0xfc, +}; +static const unsigned char kat3401_entropyinpr1[] = { + 0x60, 0x44, 0xef, 0x8b, 0xf9, 0x25, 0xac, 0x17, 0x44, 0xac, 0x0c, 0x69, + 0xb2, 0x0a, 0x39, 0xe3, 0xa7, 0x60, 0x6c, 0xa5, 0x2c, 0x0a, 0x0e, 0x22, + 0x4a, 0x28, 0x30, 0x8c, 0x27, 0x90, 0xb4, 0x0f, +}; +static const unsigned char kat3401_addinpr1[] = {0}; +static const unsigned char kat3401_entropyinpr2[] = { + 0x6b, 0x7a, 0x83, 0x68, 0x4b, 0x33, 0x4e, 0xa7, 0x5f, 0xb8, 0x17, 0x89, + 0xef, 0x0c, 0xac, 0xb1, 0x4b, 0x32, 0xd2, 0xd7, 0xcd, 0x99, 0x7a, 0x82, + 0xdb, 0x82, 0x29, 0x9d, 0xdb, 0x73, 0xa0, 0x9f, +}; +static const unsigned char kat3401_addinpr2[] = {0}; +static const unsigned char kat3401_retbits[] = { + 0x7b, 0xd3, 0xd0, 0x29, 0x7e, 0xfe, 0x96, 0xe2, 0x8b, 0x71, 0x7c, 0xe9, + 0x1c, 0x0c, 0xac, 0x93, 0x16, 0x19, 0xf2, 0x9c, 0xef, 0x7e, 0xb4, 0x5b, + 0x89, 0x05, 0x5d, 0x08, 0x15, 0x43, 0x2e, 0x7e, 0x28, 0x97, 0x92, 0x4a, + 0x63, 0xec, 0xda, 0xa8, 0xd8, 0x00, 0xa1, 0x03, 0xdb, 0x96, 0xa1, 0x81, + 0xb4, 0xee, 0x7e, 0x6a, 0x67, 0xf1, 0x5e, 0x62, 0x9d, 0xb4, 0xbf, 0x8d, + 0x58, 0x2f, 0x3f, 0xdb, +}; +static const struct drbg_kat_pr_true kat3401_t = { + 10, kat3401_entropyin, kat3401_nonce, kat3401_persstr, + kat3401_entropyinpr1, kat3401_addinpr1, kat3401_entropyinpr2, + kat3401_addinpr2, kat3401_retbits +}; +static const struct drbg_kat kat3401 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3401_t +}; + +static const unsigned char kat3402_entropyin[] = { + 0x6c, 0x9a, 0x22, 0x4c, 0xe8, 0x21, 0xc1, 0xb2, 0x69, 0x7f, 0xa5, 0x1f, + 0x76, 0x8b, 0x1e, 0xb5, 0xdd, 0xff, 0x6d, 0x1b, 0x15, 0x82, 0x45, 0x72, + 0xf0, 0x95, 0x8e, 0x41, 0x30, 0x9e, 0xad, 0x05, +}; +static const unsigned char kat3402_nonce[] = { + 0xb5, 0xdc, 0xdd, 0x7d, 0xaf, 0x55, 0x9c, 0xb3, 0xd3, 0xa3, 0xbf, 0xb3, + 0xce, 0x48, 0xef, 0x3e, +}; +static const unsigned char kat3402_persstr[] = { + 0x95, 0x99, 0xbe, 0x91, 0x66, 0xfd, 0x6c, 0x35, 0x5a, 0x8f, 0x68, 0x3d, + 0x63, 0xb8, 0xc1, 0xe2, 0x8d, 0x82, 0x53, 0x14, 0xdf, 0x3d, 0xcc, 0x26, + 0xd2, 0x9b, 0xc5, 0x45, 0x13, 0x6e, 0x44, 0x23, +}; +static const unsigned char kat3402_entropyinpr1[] = { + 0xd4, 0xdb, 0x52, 0x5e, 0xdc, 0x8c, 0x48, 0x6c, 0x72, 0xd9, 0x6c, 0x58, + 0x72, 0x4f, 0x16, 0x0f, 0x51, 0xfe, 0x61, 0x94, 0xf5, 0xd0, 0xb5, 0x6c, + 0xc2, 0xa8, 0xcb, 0x53, 0x15, 0x1a, 0xa0, 0xd0, +}; +static const unsigned char kat3402_addinpr1[] = {0}; +static const unsigned char kat3402_entropyinpr2[] = { + 0x23, 0x61, 0x51, 0x02, 0x92, 0x45, 0x6d, 0x41, 0x06, 0x09, 0xb0, 0x14, + 0x3c, 0x49, 0x82, 0x01, 0x1a, 0x79, 0xc8, 0x68, 0x31, 0xd1, 0x07, 0x65, + 0xae, 0x3e, 0x32, 0x54, 0x07, 0x71, 0x02, 0xbc, +}; +static const unsigned char kat3402_addinpr2[] = {0}; +static const unsigned char kat3402_retbits[] = { + 0xaf, 0x5b, 0x9d, 0x31, 0x81, 0x3f, 0xf4, 0x96, 0x7d, 0x42, 0xe3, 0xff, + 0x37, 0x07, 0x9c, 0x3f, 0x39, 0xa1, 0xc9, 0xe3, 0x0a, 0x10, 0xd7, 0xf3, + 0x0e, 0x14, 0x29, 0x12, 0x6e, 0xea, 0xaf, 0x3a, 0x69, 0x5e, 0xf1, 0x66, + 0x55, 0xd6, 0x02, 0x55, 0xb6, 0xd0, 0xe4, 0x92, 0x1a, 0x3f, 0xd1, 0x27, + 0xd0, 0x5d, 0xf2, 0x33, 0x8e, 0xd2, 0x5b, 0x11, 0xe4, 0x5c, 0x1f, 0xfd, + 0x67, 0x2e, 0x9f, 0x2b, +}; +static const struct drbg_kat_pr_true kat3402_t = { + 11, kat3402_entropyin, kat3402_nonce, kat3402_persstr, + kat3402_entropyinpr1, kat3402_addinpr1, kat3402_entropyinpr2, + kat3402_addinpr2, kat3402_retbits +}; +static const struct drbg_kat kat3402 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3402_t +}; + +static const unsigned char kat3403_entropyin[] = { + 0xe0, 0xd1, 0x97, 0x4d, 0x3e, 0x1c, 0x47, 0x20, 0x73, 0xf2, 0x28, 0xac, + 0xb7, 0x97, 0x56, 0x0c, 0x1f, 0x1b, 0xf9, 0xc9, 0x9b, 0xe1, 0x9e, 0xc7, + 0x68, 0x1c, 0x82, 0x7a, 0x20, 0x67, 0x34, 0xb4, +}; +static const unsigned char kat3403_nonce[] = { + 0xd3, 0xda, 0xa8, 0xcc, 0x35, 0xa5, 0x90, 0xf7, 0x4d, 0x72, 0x02, 0xf2, + 0x0c, 0x4f, 0x58, 0x87, +}; +static const unsigned char kat3403_persstr[] = { + 0xaf, 0x96, 0x50, 0xf0, 0x32, 0x0d, 0x62, 0xe1, 0x13, 0x0a, 0xb8, 0xc5, + 0x1e, 0x0a, 0xc4, 0x23, 0xd6, 0xf9, 0x2a, 0xe5, 0x64, 0xaa, 0x1e, 0x89, + 0x4c, 0x80, 0x11, 0x0c, 0x25, 0xeb, 0x81, 0x37, +}; +static const unsigned char kat3403_entropyinpr1[] = { + 0xd0, 0x89, 0x3d, 0x61, 0x83, 0x50, 0xe4, 0x90, 0x27, 0xd4, 0xfd, 0x50, + 0xe5, 0x02, 0xb6, 0x2e, 0x0c, 0xb6, 0x7c, 0xd1, 0x99, 0x72, 0x27, 0x7c, + 0xc1, 0xea, 0xc0, 0xd5, 0xeb, 0x51, 0xdf, 0x44, +}; +static const unsigned char kat3403_addinpr1[] = {0}; +static const unsigned char kat3403_entropyinpr2[] = { + 0xe3, 0xd3, 0xce, 0x9f, 0xe7, 0x3d, 0x15, 0x04, 0x41, 0x21, 0x94, 0xd2, + 0x57, 0xfc, 0x8a, 0x25, 0x2c, 0x5c, 0x55, 0xb1, 0x12, 0x76, 0xd3, 0x4d, + 0xc9, 0x7d, 0xcf, 0x17, 0x50, 0x64, 0xe3, 0x29, +}; +static const unsigned char kat3403_addinpr2[] = {0}; +static const unsigned char kat3403_retbits[] = { + 0xcb, 0xa4, 0x2a, 0xf0, 0x0d, 0x3a, 0x68, 0xa3, 0x1e, 0x64, 0xa0, 0xd1, + 0x7e, 0x8a, 0x4b, 0x74, 0xd1, 0xae, 0xec, 0x20, 0x93, 0x55, 0x6d, 0x99, + 0x27, 0x43, 0x4e, 0x72, 0x66, 0x13, 0x49, 0x8a, 0xa8, 0xbe, 0x98, 0x04, + 0x44, 0x1b, 0xc6, 0x81, 0xf5, 0x2c, 0xe1, 0x56, 0x84, 0x52, 0x55, 0xc3, + 0x5d, 0xcd, 0xce, 0xed, 0x68, 0x6e, 0x45, 0xdc, 0x36, 0x88, 0x62, 0x3b, + 0x72, 0x4d, 0x20, 0xf4, +}; +static const struct drbg_kat_pr_true kat3403_t = { + 12, kat3403_entropyin, kat3403_nonce, kat3403_persstr, + kat3403_entropyinpr1, kat3403_addinpr1, kat3403_entropyinpr2, + kat3403_addinpr2, kat3403_retbits +}; +static const struct drbg_kat kat3403 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3403_t +}; + +static const unsigned char kat3404_entropyin[] = { + 0x73, 0x5e, 0xed, 0x4b, 0xec, 0x0c, 0xb8, 0x49, 0x72, 0xef, 0x1f, 0x15, + 0xfd, 0x79, 0x39, 0x27, 0x03, 0x25, 0x30, 0x07, 0x68, 0x36, 0xa4, 0xe8, + 0x42, 0xd2, 0xe9, 0x9d, 0x0b, 0x89, 0xcc, 0xe4, +}; +static const unsigned char kat3404_nonce[] = { + 0x72, 0x64, 0xce, 0x83, 0xc8, 0x70, 0x2a, 0x1a, 0xcd, 0xc5, 0xea, 0x55, + 0x6e, 0x9e, 0x3f, 0xcd, +}; +static const unsigned char kat3404_persstr[] = { + 0xc1, 0x46, 0xf2, 0xf7, 0xc7, 0xc6, 0x7c, 0x33, 0xda, 0x36, 0x21, 0x5d, + 0xc6, 0xa1, 0xe2, 0x58, 0xb3, 0x9a, 0x91, 0x71, 0xc0, 0x8f, 0x3c, 0x8d, + 0x51, 0x79, 0x48, 0xd6, 0xb9, 0x25, 0x92, 0x00, +}; +static const unsigned char kat3404_entropyinpr1[] = { + 0x9e, 0x32, 0x92, 0x3d, 0x52, 0x23, 0xf4, 0x1b, 0xac, 0x70, 0x1a, 0xfd, + 0x4a, 0xd1, 0x86, 0x81, 0x8d, 0xa7, 0xca, 0xbd, 0xce, 0x4b, 0xc5, 0x25, + 0xb7, 0x4d, 0x38, 0x4f, 0xff, 0x94, 0x94, 0xfc, +}; +static const unsigned char kat3404_addinpr1[] = {0}; +static const unsigned char kat3404_entropyinpr2[] = { + 0xc6, 0x86, 0x4c, 0x54, 0x45, 0x9c, 0x4f, 0x57, 0x85, 0x4b, 0xf1, 0x3c, + 0x5e, 0x77, 0xbb, 0xf5, 0x1c, 0x58, 0x9e, 0x5f, 0xd2, 0x88, 0x12, 0xa1, + 0x5e, 0x72, 0x47, 0x1e, 0x70, 0xd2, 0xe2, 0x8c, +}; +static const unsigned char kat3404_addinpr2[] = {0}; +static const unsigned char kat3404_retbits[] = { + 0x50, 0x37, 0x91, 0xfc, 0x73, 0x73, 0x8b, 0xff, 0x85, 0xb6, 0x3f, 0x26, + 0xa2, 0x4c, 0x9d, 0xb3, 0xfd, 0x5f, 0x3c, 0x7e, 0x6e, 0xc0, 0xd9, 0xf1, + 0xcf, 0x46, 0xb0, 0x1c, 0xf3, 0x36, 0xd1, 0xe8, 0x4e, 0x78, 0x8c, 0x06, + 0x26, 0xa3, 0x7d, 0xb6, 0x32, 0x30, 0x49, 0x88, 0xfe, 0x68, 0xae, 0x47, + 0x99, 0x62, 0x85, 0xdd, 0x05, 0x2b, 0x10, 0x15, 0x3c, 0x71, 0x78, 0x03, + 0x17, 0x80, 0x43, 0x6b, +}; +static const struct drbg_kat_pr_true kat3404_t = { + 13, kat3404_entropyin, kat3404_nonce, kat3404_persstr, + kat3404_entropyinpr1, kat3404_addinpr1, kat3404_entropyinpr2, + kat3404_addinpr2, kat3404_retbits +}; +static const struct drbg_kat kat3404 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3404_t +}; + +static const unsigned char kat3405_entropyin[] = { + 0x54, 0xdb, 0xc6, 0x36, 0x95, 0x76, 0x7d, 0x07, 0xd1, 0x98, 0x61, 0xc2, + 0x07, 0xfb, 0xdc, 0x5c, 0x09, 0xe3, 0x98, 0x99, 0x75, 0x95, 0x49, 0xf0, + 0x48, 0x2e, 0x36, 0x76, 0x73, 0x69, 0x70, 0x12, +}; +static const unsigned char kat3405_nonce[] = { + 0x29, 0xae, 0x41, 0xb8, 0x77, 0xc8, 0xdd, 0xa9, 0x39, 0xf5, 0xa4, 0x88, + 0xf3, 0x77, 0x4f, 0x8f, +}; +static const unsigned char kat3405_persstr[] = { + 0x76, 0x79, 0x9b, 0x83, 0x15, 0x4f, 0xc9, 0xcb, 0xde, 0x61, 0x6f, 0x7e, + 0xa9, 0xcf, 0xdc, 0x08, 0x97, 0xa2, 0x13, 0x64, 0x02, 0x99, 0x1c, 0xce, + 0xf2, 0xb1, 0x75, 0x95, 0xaa, 0x1d, 0x7c, 0x50, +}; +static const unsigned char kat3405_entropyinpr1[] = { + 0x03, 0xd6, 0x9a, 0x9c, 0xca, 0x9b, 0x95, 0xd1, 0x08, 0x7f, 0xc5, 0x0d, + 0x0c, 0xfc, 0xa0, 0x33, 0x50, 0xc9, 0xd4, 0xd0, 0xf1, 0xe8, 0x72, 0x52, + 0x2e, 0x2c, 0x60, 0xb7, 0x38, 0x98, 0xae, 0x53, +}; +static const unsigned char kat3405_addinpr1[] = {0}; +static const unsigned char kat3405_entropyinpr2[] = { + 0xf4, 0x30, 0xd8, 0x49, 0x67, 0xcc, 0x46, 0x05, 0x75, 0xd2, 0xb5, 0xad, + 0x34, 0xfb, 0x99, 0x80, 0xa3, 0x1f, 0xaf, 0x10, 0x22, 0x9d, 0xbe, 0xdb, + 0x64, 0x25, 0x09, 0x9a, 0x0a, 0xa8, 0x33, 0x23, +}; +static const unsigned char kat3405_addinpr2[] = {0}; +static const unsigned char kat3405_retbits[] = { + 0x9a, 0x23, 0xd0, 0x8a, 0x1f, 0x2d, 0x90, 0x7c, 0x9e, 0xb4, 0x73, 0xe5, + 0xd4, 0xf3, 0xea, 0xd7, 0x9d, 0x70, 0x05, 0x6a, 0x26, 0x44, 0x63, 0xc7, + 0xc8, 0x98, 0x14, 0x80, 0xa7, 0x0d, 0xfd, 0xe5, 0xc5, 0xf9, 0x0a, 0x07, + 0x41, 0x57, 0xeb, 0x38, 0x4f, 0x39, 0x1a, 0xc0, 0x1b, 0x1c, 0x31, 0x38, + 0xc9, 0xd3, 0x6f, 0x9e, 0x11, 0xb4, 0x71, 0xdc, 0x02, 0x05, 0x67, 0x59, + 0x29, 0x62, 0x35, 0xe4, +}; +static const struct drbg_kat_pr_true kat3405_t = { + 14, kat3405_entropyin, kat3405_nonce, kat3405_persstr, + kat3405_entropyinpr1, kat3405_addinpr1, kat3405_entropyinpr2, + kat3405_addinpr2, kat3405_retbits +}; +static const struct drbg_kat kat3405 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3405_t +}; + +static const unsigned char kat3406_entropyin[] = { + 0x53, 0x43, 0x46, 0xa3, 0xe0, 0xba, 0xa6, 0x5d, 0x7a, 0x51, 0x87, 0x1b, + 0x6d, 0x63, 0x3a, 0x6f, 0x1e, 0xfa, 0x9f, 0xf5, 0x5d, 0xfd, 0xe3, 0x21, + 0x2c, 0x95, 0x02, 0x9a, 0xdf, 0x23, 0x87, 0xd9, +}; +static const unsigned char kat3406_nonce[] = { + 0x0c, 0xbe, 0x99, 0x82, 0x15, 0x09, 0x97, 0x5d, 0x82, 0x4f, 0xd8, 0x26, + 0xc4, 0x7d, 0x2a, 0xbc, +}; +static const unsigned char kat3406_persstr[] = { + 0x02, 0x0d, 0x73, 0x40, 0x56, 0x9e, 0x68, 0xd9, 0x92, 0xe6, 0xe8, 0xdd, + 0xfb, 0xea, 0xd9, 0xf9, 0x93, 0xc7, 0x4d, 0x97, 0x1e, 0x43, 0x39, 0xfe, + 0x91, 0x07, 0x4f, 0x87, 0xe9, 0xd7, 0xd7, 0x77, +}; +static const unsigned char kat3406_entropyinpr1[] = { + 0x28, 0x60, 0x91, 0x70, 0x9d, 0x2e, 0x91, 0xbf, 0xef, 0x66, 0x54, 0xb8, + 0x44, 0x9d, 0x5e, 0x55, 0x64, 0xb6, 0xc2, 0xfe, 0x1f, 0x3e, 0x4e, 0x6e, + 0x59, 0xfe, 0x77, 0x64, 0x61, 0xbf, 0xb0, 0xdc, +}; +static const unsigned char kat3406_addinpr1[] = { + 0xf4, 0x10, 0x40, 0xef, 0xf2, 0xa7, 0x01, 0x02, 0x87, 0xc2, 0xa7, 0x6d, + 0x78, 0x67, 0xa6, 0x6e, 0x61, 0x29, 0x9b, 0xe1, 0xe1, 0x24, 0x7a, 0x6b, + 0x22, 0xa6, 0x4b, 0x82, 0x9a, 0xda, 0x86, 0x24, +}; +static const unsigned char kat3406_entropyinpr2[] = { + 0xe6, 0x8e, 0x12, 0x7b, 0x2e, 0x5b, 0x9d, 0x65, 0x39, 0xc2, 0x6f, 0x7e, + 0x78, 0xbe, 0xc1, 0x33, 0x14, 0xe3, 0x7f, 0xeb, 0xdb, 0x71, 0x05, 0xd1, + 0xd6, 0x5f, 0x0b, 0xde, 0x23, 0xc8, 0x7d, 0x38, +}; +static const unsigned char kat3406_addinpr2[] = { + 0x94, 0xef, 0xe6, 0x8e, 0x21, 0x85, 0x64, 0x6a, 0x17, 0xbb, 0x8a, 0x83, + 0x26, 0x81, 0x42, 0xa7, 0xb7, 0xa0, 0x27, 0x86, 0xc1, 0xee, 0x90, 0xab, + 0x8f, 0x73, 0x99, 0xcc, 0xf5, 0x43, 0xde, 0x26, +}; +static const unsigned char kat3406_retbits[] = { + 0xda, 0x63, 0x89, 0xd1, 0x51, 0xe3, 0xb2, 0xb3, 0x32, 0xfb, 0xcc, 0x02, + 0xb2, 0xcc, 0x5a, 0xf4, 0xf6, 0x98, 0x35, 0xe9, 0xfb, 0xbe, 0x19, 0x13, + 0x0f, 0x91, 0xcb, 0xf3, 0x0a, 0x3c, 0x24, 0x58, 0x0e, 0xbf, 0xb4, 0x31, + 0x1b, 0x34, 0x87, 0xe9, 0xd6, 0xa6, 0x1d, 0xe9, 0xdc, 0x28, 0x42, 0xc1, + 0x07, 0x15, 0x21, 0x58, 0xb0, 0xe7, 0x5a, 0x93, 0x2c, 0x38, 0xe5, 0xb8, + 0xdd, 0xff, 0x10, 0xe6, +}; +static const struct drbg_kat_pr_true kat3406_t = { + 0, kat3406_entropyin, kat3406_nonce, kat3406_persstr, + kat3406_entropyinpr1, kat3406_addinpr1, kat3406_entropyinpr2, + kat3406_addinpr2, kat3406_retbits +}; +static const struct drbg_kat kat3406 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3406_t +}; + +static const unsigned char kat3407_entropyin[] = { + 0x44, 0x3c, 0x6f, 0xfd, 0x30, 0xba, 0x94, 0xd7, 0xbc, 0x6c, 0x8d, 0xed, + 0x25, 0x7f, 0x9a, 0x63, 0xdf, 0x33, 0x9d, 0x39, 0x39, 0xf0, 0xa8, 0xd9, + 0x3e, 0x4f, 0xed, 0x65, 0xd9, 0x86, 0x31, 0xa5, +}; +static const unsigned char kat3407_nonce[] = { + 0xd4, 0xdd, 0x3a, 0xe9, 0x8e, 0x45, 0x65, 0x59, 0x0e, 0x5b, 0x03, 0xc8, + 0x7a, 0x77, 0xce, 0x59, +}; +static const unsigned char kat3407_persstr[] = { + 0xe0, 0xdd, 0x7a, 0x9b, 0xbe, 0x35, 0x69, 0xf4, 0xbe, 0x1e, 0x8e, 0x4c, + 0x4b, 0x7d, 0x37, 0x09, 0x17, 0x02, 0x2e, 0x6f, 0x6e, 0x8e, 0x2c, 0x04, + 0x92, 0x48, 0x10, 0x08, 0x00, 0x85, 0xf6, 0xb8, +}; +static const unsigned char kat3407_entropyinpr1[] = { + 0xed, 0x4c, 0x48, 0xec, 0xca, 0x67, 0x60, 0xb6, 0xae, 0xda, 0xce, 0x40, + 0x94, 0xde, 0x3c, 0x8f, 0xda, 0x82, 0xbc, 0x5e, 0x43, 0x0a, 0xec, 0x1c, + 0x3d, 0x09, 0x01, 0x2d, 0x9f, 0xc1, 0x9f, 0xf5, +}; +static const unsigned char kat3407_addinpr1[] = { + 0xc7, 0xeb, 0xd6, 0xfc, 0xaf, 0xbb, 0x36, 0x14, 0xf4, 0x79, 0xfd, 0xdb, + 0x73, 0x4c, 0xd9, 0xbc, 0xc1, 0x85, 0xed, 0xa9, 0x91, 0x89, 0x0b, 0x4a, + 0xab, 0xba, 0xcc, 0x10, 0x20, 0xc4, 0x9b, 0xf5, +}; +static const unsigned char kat3407_entropyinpr2[] = { + 0xac, 0x76, 0xc7, 0x0a, 0x15, 0x6a, 0x7e, 0x4a, 0x9b, 0x1a, 0x02, 0x8a, + 0x3a, 0xc7, 0x64, 0x8f, 0x66, 0x16, 0x40, 0x82, 0xb4, 0x63, 0xf8, 0xbf, + 0x14, 0x9d, 0xd8, 0xd9, 0x95, 0x0a, 0x52, 0xa7, +}; +static const unsigned char kat3407_addinpr2[] = { + 0x27, 0xfa, 0x20, 0x4c, 0xd6, 0xec, 0xc4, 0xc4, 0x3b, 0x14, 0xc4, 0x45, + 0x49, 0xeb, 0x7a, 0x0c, 0x7a, 0xc5, 0xb5, 0xd6, 0x03, 0x8e, 0x44, 0xe4, + 0x8c, 0x72, 0x78, 0xdf, 0xdb, 0x20, 0x9b, 0xe8, +}; +static const unsigned char kat3407_retbits[] = { + 0x74, 0xf8, 0x0e, 0x6d, 0x8a, 0x61, 0xdc, 0x7e, 0x12, 0x9f, 0x4e, 0xb6, + 0x8e, 0xe6, 0x0e, 0xca, 0xee, 0xa7, 0xaf, 0xef, 0xbd, 0xbf, 0x88, 0x3c, + 0x35, 0xd3, 0xe4, 0xdb, 0x18, 0x93, 0x8d, 0xb0, 0x64, 0x36, 0x68, 0x26, + 0x5f, 0x4b, 0x21, 0xa1, 0x8d, 0xc0, 0xdc, 0x20, 0x92, 0x19, 0x67, 0x1f, + 0xe4, 0x94, 0xad, 0xd3, 0x7b, 0x88, 0x49, 0x19, 0xb2, 0xec, 0xab, 0x1c, + 0xbd, 0xdc, 0x9d, 0x10, +}; +static const struct drbg_kat_pr_true kat3407_t = { + 1, kat3407_entropyin, kat3407_nonce, kat3407_persstr, + kat3407_entropyinpr1, kat3407_addinpr1, kat3407_entropyinpr2, + kat3407_addinpr2, kat3407_retbits +}; +static const struct drbg_kat kat3407 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3407_t +}; + +static const unsigned char kat3408_entropyin[] = { + 0x39, 0x90, 0x59, 0x84, 0x4d, 0x1b, 0x57, 0xeb, 0x78, 0x81, 0x5d, 0xe9, + 0xf1, 0x31, 0xce, 0x7a, 0x4b, 0x38, 0xb6, 0xb9, 0x39, 0x98, 0x0a, 0xc3, + 0x1a, 0x7f, 0xb1, 0x49, 0xa9, 0x9f, 0x87, 0x45, +}; +static const unsigned char kat3408_nonce[] = { + 0xc9, 0xb7, 0xff, 0xb6, 0x6a, 0xe7, 0xd0, 0xd6, 0xdc, 0x1b, 0xb2, 0x8b, + 0x9e, 0x54, 0xfa, 0xd2, +}; +static const unsigned char kat3408_persstr[] = { + 0xf1, 0x0a, 0x65, 0x66, 0x5b, 0xb9, 0xa6, 0xfd, 0x2d, 0x7f, 0x88, 0x0b, + 0x4a, 0x9d, 0x55, 0x93, 0x4f, 0x8b, 0xc8, 0x24, 0xde, 0x66, 0x06, 0xdc, + 0xf8, 0x89, 0x90, 0x76, 0xf4, 0x75, 0x1b, 0x39, +}; +static const unsigned char kat3408_entropyinpr1[] = { + 0x28, 0xf4, 0x30, 0x2a, 0xc5, 0x6c, 0x09, 0x51, 0x18, 0x41, 0x84, 0xdc, + 0x4c, 0xbb, 0x01, 0xc0, 0x7b, 0x48, 0x2d, 0xee, 0x61, 0x15, 0xe7, 0xe9, + 0x40, 0xb0, 0x0b, 0xf9, 0x61, 0x22, 0x6c, 0x05, +}; +static const unsigned char kat3408_addinpr1[] = { + 0x4a, 0x41, 0x63, 0x63, 0x39, 0x4c, 0x08, 0x48, 0x4a, 0xc2, 0xf2, 0x47, + 0xea, 0x6d, 0xfd, 0x95, 0xd4, 0xc8, 0x29, 0xe1, 0x6b, 0x4c, 0xe9, 0xdd, + 0x16, 0x1e, 0x1f, 0x3e, 0x5f, 0x36, 0xfe, 0xfb, +}; +static const unsigned char kat3408_entropyinpr2[] = { + 0x3e, 0x07, 0x6a, 0x04, 0xd1, 0x12, 0x89, 0x1c, 0x57, 0x4f, 0x66, 0x91, + 0xd4, 0x41, 0x43, 0x9f, 0xbe, 0x49, 0x93, 0x75, 0x17, 0x56, 0xe0, 0xa9, + 0x01, 0x3b, 0x68, 0xb4, 0x66, 0x14, 0x2b, 0x7f, +}; +static const unsigned char kat3408_addinpr2[] = { + 0x1a, 0x76, 0xe1, 0x0d, 0x5e, 0x18, 0x38, 0x0b, 0x09, 0x78, 0xc6, 0xa2, + 0xf9, 0x7e, 0xaa, 0x10, 0xfa, 0xa1, 0x22, 0xc5, 0x0b, 0x89, 0x73, 0xa6, + 0x5b, 0x30, 0x01, 0x44, 0x0c, 0x26, 0xeb, 0x81, +}; +static const unsigned char kat3408_retbits[] = { + 0x8e, 0x48, 0x18, 0xd7, 0xc1, 0x0d, 0x63, 0xd0, 0x67, 0x00, 0x6b, 0xa3, + 0x5f, 0x46, 0x36, 0xc3, 0x0f, 0x32, 0xa9, 0x62, 0x46, 0x7d, 0x43, 0x7d, + 0x2a, 0xca, 0xcd, 0x42, 0xd5, 0xb5, 0x2d, 0x4c, 0x75, 0x8f, 0xb3, 0x35, + 0xd9, 0xde, 0x88, 0xe6, 0xf6, 0x40, 0x7f, 0x2f, 0x6c, 0x7d, 0x2a, 0xc1, + 0x73, 0xd5, 0xfb, 0x94, 0x04, 0x5b, 0xc8, 0x34, 0x82, 0xb0, 0x87, 0xd6, + 0x33, 0xc5, 0x83, 0xe5, +}; +static const struct drbg_kat_pr_true kat3408_t = { + 2, kat3408_entropyin, kat3408_nonce, kat3408_persstr, + kat3408_entropyinpr1, kat3408_addinpr1, kat3408_entropyinpr2, + kat3408_addinpr2, kat3408_retbits +}; +static const struct drbg_kat kat3408 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3408_t +}; + +static const unsigned char kat3409_entropyin[] = { + 0x4d, 0x62, 0x68, 0x47, 0x28, 0x7b, 0x6a, 0x49, 0x4e, 0xbd, 0x86, 0x0c, + 0x68, 0x6a, 0x5c, 0xed, 0x43, 0x3f, 0x44, 0xe1, 0xdf, 0x47, 0x6c, 0x35, + 0x9b, 0xd1, 0xa5, 0x6a, 0xa5, 0xda, 0xd1, 0xb1, +}; +static const unsigned char kat3409_nonce[] = { + 0x07, 0xe6, 0xa8, 0x6f, 0x3b, 0xf4, 0x9d, 0xcb, 0xa6, 0xbc, 0x7e, 0x3e, + 0x78, 0x07, 0xe7, 0x57, +}; +static const unsigned char kat3409_persstr[] = { + 0x78, 0xd7, 0x56, 0x66, 0x95, 0x21, 0x7d, 0xb1, 0x71, 0x87, 0x42, 0xc3, + 0x7b, 0x59, 0x62, 0xc6, 0xb3, 0xb7, 0x86, 0xf8, 0x71, 0xd0, 0x38, 0xac, + 0xe0, 0xf2, 0x2c, 0x72, 0xae, 0xbf, 0xfd, 0x50, +}; +static const unsigned char kat3409_entropyinpr1[] = { + 0x32, 0x40, 0x8b, 0x60, 0xbe, 0xe5, 0x9d, 0x57, 0xa6, 0x2e, 0x64, 0x66, + 0xc0, 0x25, 0xac, 0x2a, 0xeb, 0xdb, 0x23, 0x22, 0x69, 0xb5, 0x8e, 0x36, + 0x20, 0x45, 0x71, 0x63, 0x5f, 0x86, 0x92, 0x30, +}; +static const unsigned char kat3409_addinpr1[] = { + 0x98, 0xaf, 0x9b, 0x2b, 0xee, 0xbe, 0x5d, 0x20, 0x7e, 0xb5, 0x3d, 0x7c, + 0x4a, 0x54, 0xb1, 0x19, 0x65, 0x49, 0xf7, 0x0f, 0x00, 0x99, 0xea, 0x10, + 0x38, 0x0d, 0xca, 0xcf, 0xb9, 0x65, 0xf4, 0x9b, +}; +static const unsigned char kat3409_entropyinpr2[] = { + 0xb2, 0x93, 0x14, 0xc6, 0xfb, 0x88, 0x93, 0x81, 0x94, 0x9f, 0x04, 0x99, + 0xcc, 0x2e, 0xc6, 0x2b, 0xb6, 0x03, 0x65, 0x81, 0x3d, 0x46, 0x48, 0x26, + 0x25, 0x56, 0x08, 0x97, 0x38, 0xfb, 0x64, 0xa1, +}; +static const unsigned char kat3409_addinpr2[] = { + 0x80, 0x23, 0xc0, 0x56, 0x2d, 0xe8, 0x9e, 0x77, 0xbf, 0x9d, 0x43, 0xcf, + 0x31, 0xdf, 0xd2, 0xc0, 0xdc, 0x63, 0x6e, 0xb4, 0x0f, 0x61, 0x57, 0x9b, + 0xea, 0x60, 0xe8, 0x0d, 0xd3, 0x09, 0xe9, 0x55, +}; +static const unsigned char kat3409_retbits[] = { + 0x6d, 0x36, 0x92, 0xb8, 0x2b, 0x7c, 0x18, 0x93, 0x66, 0xd1, 0xd3, 0xe6, + 0x77, 0x34, 0xb5, 0x69, 0xdd, 0x91, 0x08, 0x7f, 0x40, 0xef, 0x8c, 0xe0, + 0xca, 0x27, 0xd0, 0x0d, 0xe1, 0xe1, 0xce, 0xd0, 0x3e, 0x36, 0xd8, 0xba, + 0xa3, 0x76, 0x5e, 0xec, 0x4f, 0x04, 0x26, 0x15, 0x9d, 0x75, 0xcd, 0xe0, + 0x69, 0x0a, 0xc5, 0x87, 0x55, 0xa7, 0x2a, 0x47, 0x69, 0xae, 0xe8, 0x6e, + 0xac, 0xf7, 0x11, 0x2f, +}; +static const struct drbg_kat_pr_true kat3409_t = { + 3, kat3409_entropyin, kat3409_nonce, kat3409_persstr, + kat3409_entropyinpr1, kat3409_addinpr1, kat3409_entropyinpr2, + kat3409_addinpr2, kat3409_retbits +}; +static const struct drbg_kat kat3409 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3409_t +}; + +static const unsigned char kat3410_entropyin[] = { + 0x9e, 0x0b, 0x8f, 0xda, 0xe5, 0x7b, 0xaf, 0xd5, 0x37, 0x02, 0x94, 0xdb, + 0x3c, 0xb0, 0x9e, 0x6a, 0xd8, 0xf0, 0xf0, 0xb9, 0x0f, 0x68, 0x7c, 0x70, + 0xdc, 0xd2, 0xc5, 0xf6, 0xfb, 0x28, 0x5f, 0x46, +}; +static const unsigned char kat3410_nonce[] = { + 0xe8, 0x4f, 0xd4, 0xbf, 0x3d, 0xeb, 0xed, 0x96, 0xf9, 0x67, 0x30, 0xf4, + 0x8b, 0x6f, 0x44, 0xb2, +}; +static const unsigned char kat3410_persstr[] = { + 0xc4, 0x71, 0xd4, 0x44, 0xc0, 0x8a, 0x08, 0x67, 0x77, 0xa7, 0xd3, 0xef, + 0xc2, 0x33, 0xc2, 0x15, 0x69, 0x6e, 0x37, 0x1c, 0x3a, 0x9d, 0x05, 0x5c, + 0xbd, 0x54, 0x2c, 0xbe, 0x86, 0xff, 0x4e, 0x13, +}; +static const unsigned char kat3410_entropyinpr1[] = { + 0x90, 0x3c, 0x73, 0xeb, 0x49, 0xf5, 0x32, 0x81, 0xa0, 0x83, 0xc7, 0x36, + 0xd0, 0x62, 0xe8, 0xe8, 0x4b, 0x59, 0xdb, 0x1f, 0x91, 0x5a, 0x8d, 0x25, + 0x05, 0x1a, 0x6a, 0x82, 0xac, 0xc3, 0x0c, 0x03, +}; +static const unsigned char kat3410_addinpr1[] = { + 0x13, 0x39, 0xa2, 0xd8, 0x63, 0x30, 0xbe, 0xf5, 0x86, 0x90, 0x32, 0xd5, + 0x5e, 0xd4, 0xf0, 0x30, 0xa6, 0xba, 0xc4, 0x60, 0x76, 0x2f, 0x5a, 0xe6, + 0x13, 0x78, 0xc7, 0xb1, 0xf9, 0xe6, 0x36, 0xb4, +}; +static const unsigned char kat3410_entropyinpr2[] = { + 0x8e, 0x98, 0x88, 0xfa, 0x5f, 0xb0, 0xaa, 0x27, 0x50, 0xaa, 0xcf, 0xa9, + 0x58, 0x17, 0x5c, 0xce, 0x54, 0xc1, 0x23, 0x30, 0x20, 0x93, 0x81, 0xfd, + 0x73, 0x50, 0xa6, 0x58, 0x12, 0xa4, 0xb1, 0x8d, +}; +static const unsigned char kat3410_addinpr2[] = { + 0x36, 0x52, 0xa0, 0xee, 0x38, 0xa9, 0x26, 0xf5, 0x0a, 0xc5, 0x6e, 0x07, + 0x7f, 0xe8, 0x89, 0x40, 0x52, 0x33, 0x43, 0xcf, 0x39, 0xd1, 0x5a, 0x30, + 0xa6, 0xe3, 0x03, 0xb2, 0x8c, 0xe6, 0x5b, 0x53, +}; +static const unsigned char kat3410_retbits[] = { + 0xac, 0xa9, 0x60, 0x2e, 0x63, 0x66, 0x98, 0x42, 0xc0, 0xb6, 0xa8, 0x0a, + 0x7d, 0xbf, 0x71, 0xf5, 0x1a, 0xc9, 0xbc, 0xc6, 0x24, 0xc9, 0x85, 0x8f, + 0x41, 0xea, 0x3a, 0x55, 0xae, 0x9d, 0xb8, 0x94, 0x93, 0x0b, 0x90, 0x3d, + 0xd2, 0x07, 0x49, 0xb4, 0xa9, 0xb8, 0x7f, 0x9a, 0xd2, 0xc2, 0xca, 0xc4, + 0x4d, 0x43, 0xa2, 0x6a, 0x14, 0xff, 0x7f, 0xee, 0x6f, 0x52, 0x38, 0xa2, + 0xe5, 0x69, 0xc8, 0xf8, +}; +static const struct drbg_kat_pr_true kat3410_t = { + 4, kat3410_entropyin, kat3410_nonce, kat3410_persstr, + kat3410_entropyinpr1, kat3410_addinpr1, kat3410_entropyinpr2, + kat3410_addinpr2, kat3410_retbits +}; +static const struct drbg_kat kat3410 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3410_t +}; + +static const unsigned char kat3411_entropyin[] = { + 0x75, 0x2f, 0x52, 0x8b, 0x9a, 0x1c, 0x0f, 0x2e, 0x3c, 0xc9, 0x9c, 0x24, + 0x1f, 0x1e, 0x2c, 0xa7, 0x56, 0x1c, 0xac, 0x4a, 0x34, 0xe9, 0x4e, 0x73, + 0x94, 0x78, 0x51, 0x2e, 0xd3, 0x28, 0x68, 0xd7, +}; +static const unsigned char kat3411_nonce[] = { + 0x9d, 0x75, 0xe0, 0xdb, 0x08, 0x85, 0xb9, 0xeb, 0x35, 0x89, 0x45, 0x1a, + 0xb9, 0xf9, 0xd0, 0x54, +}; +static const unsigned char kat3411_persstr[] = { + 0x81, 0xf0, 0x98, 0x61, 0x01, 0xd4, 0xfe, 0x5b, 0x7c, 0x85, 0xb8, 0x92, + 0x74, 0xf8, 0x8f, 0xe0, 0xcf, 0x0f, 0xa4, 0x20, 0x4d, 0x5a, 0xb2, 0x3f, + 0x14, 0x9b, 0xc6, 0x2c, 0x83, 0x6d, 0x96, 0xab, +}; +static const unsigned char kat3411_entropyinpr1[] = { + 0x7f, 0x65, 0xa3, 0x3f, 0x99, 0x9f, 0x35, 0xb3, 0xe5, 0x7f, 0x37, 0xc2, + 0xe1, 0x4f, 0xbb, 0x03, 0x4f, 0x97, 0x89, 0xe3, 0xa2, 0xbc, 0x9c, 0x8c, + 0x6f, 0xd0, 0x15, 0xe5, 0xcb, 0x66, 0x45, 0x8e, +}; +static const unsigned char kat3411_addinpr1[] = { + 0x3d, 0x46, 0xa2, 0x28, 0x0d, 0x08, 0xb2, 0x6e, 0x7c, 0xd7, 0x01, 0x8d, + 0x22, 0x59, 0xc7, 0xcf, 0x7b, 0xd6, 0xc1, 0xbd, 0xf2, 0x77, 0xf9, 0xb6, + 0xe6, 0xf3, 0x4c, 0xc4, 0xa5, 0x7f, 0x05, 0x75, +}; +static const unsigned char kat3411_entropyinpr2[] = { + 0xfe, 0xf1, 0xa7, 0x14, 0x85, 0x8a, 0x06, 0x14, 0xa2, 0x3b, 0x4a, 0xc0, + 0x15, 0x1d, 0x6b, 0xb9, 0xda, 0xb4, 0x27, 0xda, 0xa4, 0x76, 0x86, 0xd8, + 0xa3, 0xf6, 0x99, 0x9d, 0x63, 0x09, 0x98, 0xd6, +}; +static const unsigned char kat3411_addinpr2[] = { + 0x20, 0x88, 0x69, 0x97, 0xf8, 0x8b, 0x4d, 0x27, 0x4c, 0xad, 0xe0, 0x5a, + 0x05, 0x42, 0x7e, 0xce, 0xa3, 0x5d, 0xb5, 0x15, 0x01, 0x3f, 0xf2, 0x16, + 0x46, 0x9a, 0x1c, 0x5f, 0x13, 0xaa, 0x7e, 0x45, +}; +static const unsigned char kat3411_retbits[] = { + 0x1d, 0x67, 0xf1, 0x61, 0x99, 0x10, 0x44, 0x53, 0x48, 0xa0, 0x26, 0x3d, + 0x80, 0x2e, 0x38, 0xfd, 0x54, 0xdf, 0x01, 0x34, 0xda, 0x92, 0x5b, 0x44, + 0x38, 0xe0, 0xa9, 0x5e, 0x41, 0x91, 0xf9, 0x5c, 0x77, 0xe1, 0xc2, 0xa3, + 0x98, 0x04, 0xbe, 0x37, 0xb2, 0x58, 0x63, 0x9e, 0xe9, 0x84, 0xf3, 0x7f, + 0x74, 0x92, 0x17, 0x29, 0x39, 0x5a, 0xbf, 0xa4, 0xb3, 0x7a, 0x36, 0xf6, + 0x0e, 0x4b, 0x79, 0xdd, +}; +static const struct drbg_kat_pr_true kat3411_t = { + 5, kat3411_entropyin, kat3411_nonce, kat3411_persstr, + kat3411_entropyinpr1, kat3411_addinpr1, kat3411_entropyinpr2, + kat3411_addinpr2, kat3411_retbits +}; +static const struct drbg_kat kat3411 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3411_t +}; + +static const unsigned char kat3412_entropyin[] = { + 0xc0, 0xb4, 0xf6, 0x57, 0xdb, 0xe3, 0xc4, 0x9b, 0x45, 0x8d, 0xb5, 0x59, + 0x31, 0xe8, 0x3a, 0xc7, 0xe9, 0x7a, 0xd8, 0xb1, 0x98, 0x25, 0x46, 0xf0, + 0xb4, 0xab, 0x48, 0xa2, 0x83, 0xcb, 0x18, 0x1c, +}; +static const unsigned char kat3412_nonce[] = { + 0x7d, 0xd9, 0x41, 0xae, 0xe8, 0x5d, 0x2f, 0x86, 0xed, 0x5a, 0x2d, 0xe8, + 0xd9, 0xdc, 0x3a, 0x8c, +}; +static const unsigned char kat3412_persstr[] = { + 0x31, 0x15, 0xf3, 0x9e, 0xa0, 0xd4, 0x1f, 0xeb, 0x15, 0xcf, 0x81, 0xdf, + 0x2f, 0x56, 0x9f, 0xcd, 0x40, 0x02, 0xbf, 0xb9, 0x1c, 0x23, 0x49, 0x58, + 0x81, 0x2b, 0x96, 0xdb, 0x11, 0x01, 0x5a, 0x28, +}; +static const unsigned char kat3412_entropyinpr1[] = { + 0x1c, 0xde, 0x14, 0xf5, 0xbc, 0x73, 0xdf, 0x2d, 0xbd, 0x6d, 0xb0, 0x55, + 0xed, 0xde, 0x7b, 0x4e, 0xc7, 0xd7, 0x69, 0xb3, 0xc3, 0x27, 0xd8, 0x00, + 0xcd, 0xf7, 0x1f, 0x18, 0x32, 0x07, 0xfc, 0x15, +}; +static const unsigned char kat3412_addinpr1[] = { + 0xc6, 0x64, 0xf2, 0xc5, 0x52, 0x35, 0xca, 0x71, 0xa3, 0x94, 0x01, 0x0f, + 0x8d, 0xc0, 0xeb, 0x5e, 0x7e, 0xb8, 0x4c, 0xf3, 0x25, 0x42, 0x5d, 0x57, + 0x34, 0x3b, 0x7a, 0x47, 0x21, 0x8b, 0x05, 0x7c, +}; +static const unsigned char kat3412_entropyinpr2[] = { + 0xbb, 0x6e, 0x54, 0x37, 0x80, 0x69, 0x75, 0x8a, 0x09, 0xaa, 0xc0, 0xb9, + 0x87, 0xea, 0x55, 0x64, 0x62, 0xbb, 0x2d, 0x7a, 0x18, 0x8e, 0x96, 0x17, + 0xab, 0x36, 0xdd, 0x6f, 0x66, 0xbc, 0x3d, 0x85, +}; +static const unsigned char kat3412_addinpr2[] = { + 0x8e, 0x2c, 0x01, 0xf8, 0x4a, 0x41, 0x22, 0xde, 0x34, 0x12, 0x4e, 0x01, + 0xf1, 0x27, 0x38, 0x77, 0x1a, 0x48, 0xad, 0x09, 0xdb, 0xd4, 0x69, 0x48, + 0x0a, 0xd9, 0x46, 0x6f, 0x13, 0x97, 0xfe, 0xf7, +}; +static const unsigned char kat3412_retbits[] = { + 0x6b, 0x40, 0xfb, 0x4d, 0x95, 0x04, 0x3f, 0x57, 0x9b, 0x05, 0xa4, 0xba, + 0xfc, 0x12, 0x74, 0xb8, 0x8e, 0xa8, 0xad, 0x54, 0x42, 0xab, 0x5f, 0xfc, + 0xf8, 0xa0, 0x52, 0x12, 0x93, 0xe7, 0xc5, 0x54, 0x33, 0x61, 0x38, 0x00, + 0x4a, 0xd5, 0xd3, 0xca, 0x79, 0x7e, 0x1b, 0x3d, 0xd1, 0xb5, 0x8c, 0x50, + 0xea, 0x30, 0x23, 0x42, 0x89, 0x80, 0x52, 0x33, 0xdd, 0x85, 0xf4, 0x60, + 0xa3, 0xbc, 0x31, 0xb1, +}; +static const struct drbg_kat_pr_true kat3412_t = { + 6, kat3412_entropyin, kat3412_nonce, kat3412_persstr, + kat3412_entropyinpr1, kat3412_addinpr1, kat3412_entropyinpr2, + kat3412_addinpr2, kat3412_retbits +}; +static const struct drbg_kat kat3412 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3412_t +}; + +static const unsigned char kat3413_entropyin[] = { + 0x94, 0x5e, 0x56, 0xdd, 0x12, 0x1a, 0x32, 0x92, 0x4e, 0x9a, 0x5a, 0xe1, + 0x9b, 0x79, 0x0f, 0x14, 0xec, 0x49, 0x03, 0x1f, 0xa7, 0x30, 0x08, 0x7c, + 0xa4, 0xed, 0xe5, 0x0e, 0x12, 0x29, 0xc9, 0x35, +}; +static const unsigned char kat3413_nonce[] = { + 0xc7, 0x03, 0xdc, 0xeb, 0xac, 0x6b, 0x6e, 0x89, 0x89, 0x91, 0x10, 0xa2, + 0x40, 0x4c, 0x52, 0x26, +}; +static const unsigned char kat3413_persstr[] = { + 0xfd, 0x27, 0x55, 0x11, 0x55, 0xf3, 0xd8, 0xfa, 0x0a, 0xf5, 0xae, 0x41, + 0x3a, 0x97, 0xc8, 0x40, 0x12, 0x0d, 0x56, 0x59, 0xfb, 0x6c, 0x8a, 0x19, + 0x45, 0xe5, 0x13, 0x6a, 0xbf, 0x3a, 0x46, 0x39, +}; +static const unsigned char kat3413_entropyinpr1[] = { + 0x4e, 0xa5, 0xb5, 0x17, 0xee, 0x3c, 0x00, 0xa0, 0x85, 0x50, 0xb5, 0x9f, + 0xb8, 0xa9, 0xb9, 0x97, 0x1b, 0x39, 0x2c, 0xa4, 0xba, 0xcd, 0x93, 0xc1, + 0x42, 0x11, 0xa4, 0xd4, 0x49, 0xf3, 0x30, 0x4b, +}; +static const unsigned char kat3413_addinpr1[] = { + 0xe8, 0x3a, 0x46, 0xc1, 0x02, 0xc1, 0xd6, 0x22, 0xa6, 0xac, 0x2c, 0xc5, + 0x1d, 0x0b, 0xf8, 0x54, 0x1e, 0x5d, 0xfa, 0x34, 0xb2, 0xfb, 0x63, 0x6e, + 0x64, 0xfc, 0xb7, 0x84, 0x22, 0x9d, 0xca, 0xdb, +}; +static const unsigned char kat3413_entropyinpr2[] = { + 0xe8, 0xbc, 0x82, 0x45, 0xb5, 0x10, 0x5f, 0x9e, 0xf6, 0x4b, 0x13, 0xc6, + 0x0a, 0xd0, 0xcf, 0x95, 0xaa, 0x14, 0x5f, 0x7d, 0xda, 0x66, 0x16, 0x1e, + 0x84, 0xf9, 0x53, 0xa1, 0xec, 0xde, 0xb2, 0x6a, +}; +static const unsigned char kat3413_addinpr2[] = { + 0x3a, 0xdd, 0x8a, 0x8b, 0xf9, 0x5e, 0x1d, 0xc5, 0x6a, 0x1b, 0xae, 0x60, + 0xa3, 0x6c, 0xd8, 0xd5, 0xec, 0x10, 0x96, 0x2a, 0xf9, 0xeb, 0x09, 0xca, + 0x48, 0x9b, 0xf6, 0xa5, 0xc1, 0xc1, 0x29, 0x1b, +}; +static const unsigned char kat3413_retbits[] = { + 0x6a, 0x4d, 0xd3, 0x61, 0x4b, 0x64, 0x28, 0x33, 0x92, 0xba, 0xb1, 0xbd, + 0x2a, 0xbc, 0x26, 0x57, 0x0e, 0x23, 0x11, 0x6b, 0x72, 0x7f, 0x99, 0x5d, + 0xf4, 0xd2, 0x91, 0x9c, 0x63, 0x06, 0x4d, 0xfb, 0x1e, 0xda, 0xb0, 0x38, + 0x8c, 0xc4, 0x6c, 0xe5, 0x82, 0x33, 0x9b, 0x8e, 0x6e, 0x4f, 0xf1, 0xe2, + 0xc8, 0x66, 0xe4, 0x21, 0xa0, 0xd9, 0x8f, 0x47, 0x68, 0x74, 0x69, 0x06, + 0xfa, 0x71, 0x70, 0x54, +}; +static const struct drbg_kat_pr_true kat3413_t = { + 7, kat3413_entropyin, kat3413_nonce, kat3413_persstr, + kat3413_entropyinpr1, kat3413_addinpr1, kat3413_entropyinpr2, + kat3413_addinpr2, kat3413_retbits +}; +static const struct drbg_kat kat3413 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3413_t +}; + +static const unsigned char kat3414_entropyin[] = { + 0x52, 0xf1, 0x88, 0xee, 0x67, 0x25, 0x22, 0xb6, 0x10, 0x70, 0xb9, 0xb0, + 0x0d, 0x57, 0xc2, 0x9c, 0xf5, 0x75, 0x92, 0x03, 0x72, 0x96, 0x35, 0x1e, + 0x94, 0xc9, 0x38, 0xcb, 0x1d, 0x43, 0x26, 0xa7, +}; +static const unsigned char kat3414_nonce[] = { + 0xa6, 0xdc, 0x77, 0x50, 0x7d, 0xd5, 0x95, 0xe5, 0x52, 0xbf, 0xea, 0x6c, + 0xe8, 0x9e, 0x6d, 0xdb, +}; +static const unsigned char kat3414_persstr[] = { + 0x6c, 0x3d, 0x05, 0x96, 0x3b, 0xd7, 0xf1, 0x8a, 0xff, 0x43, 0xc3, 0xcc, + 0xff, 0x5d, 0x33, 0x30, 0x9a, 0xc2, 0x19, 0x6e, 0xc4, 0x8b, 0x82, 0x32, + 0x0a, 0xe9, 0xb4, 0x82, 0x9f, 0xf1, 0x03, 0x31, +}; +static const unsigned char kat3414_entropyinpr1[] = { + 0xe0, 0x64, 0x76, 0xf6, 0x1f, 0xa9, 0x36, 0xc2, 0x28, 0x3a, 0x96, 0x3d, + 0x01, 0x04, 0x04, 0x55, 0xca, 0xc8, 0x18, 0x79, 0x36, 0x9c, 0x9a, 0x93, + 0x94, 0x95, 0x8d, 0xa2, 0xc4, 0x90, 0xb8, 0x06, +}; +static const unsigned char kat3414_addinpr1[] = { + 0x62, 0xe1, 0x0a, 0x60, 0x8c, 0x82, 0xc4, 0x94, 0x23, 0x3a, 0xe7, 0xe3, + 0x53, 0xdc, 0x6d, 0x30, 0x4c, 0xd9, 0x88, 0xd9, 0x4c, 0xbc, 0x4f, 0x62, + 0x63, 0x79, 0x34, 0xad, 0xa8, 0x47, 0x6b, 0xfc, +}; +static const unsigned char kat3414_entropyinpr2[] = { + 0x18, 0xa6, 0x32, 0x99, 0xb8, 0xb2, 0xc7, 0x73, 0x60, 0xfd, 0xe0, 0x4a, + 0x26, 0x63, 0xac, 0x06, 0x4f, 0xbd, 0xd6, 0xcf, 0xa3, 0x09, 0x3b, 0xe5, + 0xc3, 0xdf, 0xd3, 0x36, 0xaa, 0x45, 0x7c, 0x86, +}; +static const unsigned char kat3414_addinpr2[] = { + 0xb3, 0x30, 0xb7, 0x05, 0x4b, 0x39, 0xd1, 0xaa, 0xf7, 0x89, 0xc7, 0xb8, + 0x09, 0x5a, 0x21, 0x16, 0x6d, 0x2b, 0x6d, 0xf6, 0x94, 0x1f, 0xc9, 0x31, + 0x39, 0xda, 0x75, 0x01, 0x6e, 0x94, 0x88, 0x39, +}; +static const unsigned char kat3414_retbits[] = { + 0x8b, 0x4b, 0xd4, 0xb1, 0x5f, 0xb0, 0x86, 0xf0, 0x38, 0x97, 0x85, 0xf5, + 0x5e, 0x15, 0xb9, 0xf0, 0xbd, 0x5b, 0xbc, 0xd0, 0xe6, 0x52, 0x22, 0x86, + 0x6f, 0x21, 0xce, 0xe7, 0x0d, 0x9f, 0xe6, 0xef, 0x6a, 0x06, 0x9e, 0x9d, + 0xae, 0x22, 0x89, 0xcf, 0x1b, 0xf3, 0x5d, 0x53, 0x73, 0xd3, 0x5e, 0x08, + 0xb3, 0x07, 0x99, 0x8b, 0x8b, 0x32, 0xbe, 0x15, 0xbc, 0xac, 0x91, 0x92, + 0x69, 0x24, 0x27, 0xa0, +}; +static const struct drbg_kat_pr_true kat3414_t = { + 8, kat3414_entropyin, kat3414_nonce, kat3414_persstr, + kat3414_entropyinpr1, kat3414_addinpr1, kat3414_entropyinpr2, + kat3414_addinpr2, kat3414_retbits +}; +static const struct drbg_kat kat3414 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3414_t +}; + +static const unsigned char kat3415_entropyin[] = { + 0x76, 0xfe, 0x11, 0x7c, 0xf3, 0x33, 0xd9, 0x2f, 0xae, 0xc0, 0x76, 0xc2, + 0xe2, 0xd2, 0x64, 0x1b, 0x9b, 0x5e, 0x23, 0xe5, 0x61, 0x45, 0x8b, 0x8d, + 0x91, 0x6a, 0x6c, 0xf3, 0x64, 0xb2, 0x5d, 0xa9, +}; +static const unsigned char kat3415_nonce[] = { + 0x13, 0x9f, 0xab, 0xa6, 0x74, 0xcf, 0x21, 0x08, 0x65, 0xac, 0x3b, 0xc8, + 0xf1, 0x66, 0x14, 0xed, +}; +static const unsigned char kat3415_persstr[] = { + 0x3a, 0xc8, 0x0f, 0xe6, 0xf2, 0x65, 0x79, 0xd5, 0x37, 0x6f, 0x4b, 0x0c, + 0xc2, 0xcc, 0x8e, 0x0e, 0x5b, 0xfb, 0x75, 0x48, 0x46, 0x71, 0x07, 0xc9, + 0x6a, 0xa3, 0xb4, 0xf2, 0xd8, 0x8c, 0xda, 0xc8, +}; +static const unsigned char kat3415_entropyinpr1[] = { + 0xf5, 0xe8, 0x82, 0x47, 0xc1, 0xc6, 0x9e, 0x82, 0x71, 0xce, 0x33, 0x33, + 0x9d, 0x11, 0x1a, 0x2c, 0x9d, 0xf3, 0x1a, 0xf5, 0x7c, 0x7d, 0x98, 0x0b, + 0x56, 0x21, 0xbd, 0x3a, 0x6e, 0xe2, 0x7e, 0xa8, +}; +static const unsigned char kat3415_addinpr1[] = { + 0x4a, 0xfc, 0x7b, 0x77, 0x1e, 0xd5, 0xba, 0xb9, 0xeb, 0xb0, 0x1d, 0x49, + 0x4c, 0x31, 0xd8, 0xc8, 0x14, 0xe2, 0x66, 0x62, 0x5d, 0xbb, 0x4f, 0x39, + 0x4d, 0x2e, 0xaf, 0x31, 0xdc, 0x43, 0x06, 0x38, +}; +static const unsigned char kat3415_entropyinpr2[] = { + 0x2e, 0xb4, 0xfd, 0xe0, 0x56, 0xd3, 0x62, 0xd4, 0x5b, 0xe9, 0x79, 0x0d, + 0xfc, 0x44, 0xcb, 0x84, 0xa7, 0xd0, 0xe8, 0x5d, 0xef, 0x13, 0xfb, 0xb7, + 0xb4, 0xf4, 0xae, 0x38, 0xae, 0x4e, 0x08, 0xe7, +}; +static const unsigned char kat3415_addinpr2[] = { + 0xa6, 0x0b, 0x92, 0x71, 0x9b, 0xcb, 0x7b, 0x76, 0x01, 0x70, 0x24, 0x11, + 0x43, 0x10, 0x72, 0x3f, 0x4e, 0x6a, 0xa1, 0x73, 0x18, 0x9c, 0xc2, 0x89, + 0x7b, 0x0d, 0x88, 0xe5, 0xd4, 0x5b, 0x09, 0xd2, +}; +static const unsigned char kat3415_retbits[] = { + 0x2c, 0x36, 0x81, 0x1d, 0x03, 0x33, 0x9b, 0x41, 0x52, 0x95, 0x65, 0x4c, + 0xdd, 0x67, 0xf5, 0x29, 0x52, 0xea, 0x7b, 0xb9, 0xe2, 0xe9, 0xc5, 0x65, + 0xdd, 0x8b, 0x2e, 0x96, 0x75, 0x88, 0xdc, 0x28, 0xcb, 0x9a, 0xb1, 0x47, + 0x5b, 0xd0, 0x38, 0xcd, 0x19, 0x98, 0x14, 0xf7, 0xdd, 0x19, 0xf3, 0xd0, + 0x54, 0x83, 0x84, 0x66, 0x24, 0x04, 0x04, 0x45, 0xcf, 0x6f, 0xa9, 0x11, + 0x7f, 0xac, 0xe5, 0xb1, +}; +static const struct drbg_kat_pr_true kat3415_t = { + 9, kat3415_entropyin, kat3415_nonce, kat3415_persstr, + kat3415_entropyinpr1, kat3415_addinpr1, kat3415_entropyinpr2, + kat3415_addinpr2, kat3415_retbits +}; +static const struct drbg_kat kat3415 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3415_t +}; + +static const unsigned char kat3416_entropyin[] = { + 0x9e, 0x59, 0x99, 0xda, 0x32, 0xc2, 0x5d, 0x85, 0xff, 0xfa, 0xcf, 0xce, + 0x5c, 0x22, 0xe1, 0x71, 0x13, 0x28, 0x54, 0xf9, 0x5b, 0xa3, 0x05, 0xcf, + 0x13, 0x0b, 0xb1, 0xe0, 0x93, 0xf2, 0xdc, 0xc8, +}; +static const unsigned char kat3416_nonce[] = { + 0xb0, 0x01, 0x42, 0xd7, 0x02, 0x43, 0x49, 0xb4, 0xad, 0xde, 0x2c, 0xd5, + 0x81, 0x0b, 0x8a, 0x2a, +}; +static const unsigned char kat3416_persstr[] = { + 0x90, 0xad, 0x37, 0xdb, 0x25, 0xbc, 0x90, 0xa9, 0x86, 0x46, 0x47, 0x22, + 0xbe, 0xc6, 0x3f, 0x89, 0x57, 0xeb, 0x70, 0x03, 0x4c, 0x08, 0x8f, 0x95, + 0x0e, 0x76, 0x12, 0x8c, 0x4c, 0x03, 0x49, 0xb8, +}; +static const unsigned char kat3416_entropyinpr1[] = { + 0xb6, 0x7c, 0xc9, 0x52, 0xff, 0x93, 0x9c, 0x79, 0x45, 0xf0, 0xef, 0x30, + 0xb2, 0x1c, 0x67, 0xb8, 0xb1, 0x4c, 0xf8, 0x9b, 0xed, 0x48, 0x21, 0x18, + 0xa2, 0xfb, 0x34, 0x93, 0x2e, 0x4a, 0x38, 0xe6, +}; +static const unsigned char kat3416_addinpr1[] = { + 0x56, 0xe9, 0xe9, 0x94, 0x86, 0x04, 0xd6, 0x86, 0x74, 0x4f, 0x95, 0x9d, + 0x33, 0xa4, 0x45, 0xa9, 0x6d, 0x59, 0xf0, 0x73, 0xcd, 0x04, 0x2f, 0x10, + 0xcb, 0x8c, 0x68, 0x21, 0x7c, 0xbf, 0x00, 0x09, +}; +static const unsigned char kat3416_entropyinpr2[] = { + 0x45, 0x02, 0xa2, 0xbe, 0x58, 0x83, 0x10, 0xfb, 0xac, 0x5a, 0x73, 0xac, + 0x71, 0x86, 0x56, 0x6c, 0x71, 0x34, 0xc8, 0x82, 0x03, 0xbe, 0xcf, 0xb8, + 0xc5, 0xe1, 0x84, 0xdd, 0x5a, 0xf0, 0xd9, 0xe6, +}; +static const unsigned char kat3416_addinpr2[] = { + 0xca, 0xea, 0xee, 0xd1, 0x94, 0xb5, 0x64, 0xae, 0xb3, 0x9d, 0x47, 0x61, + 0xf5, 0xea, 0x83, 0x10, 0x17, 0x7f, 0xa5, 0x76, 0x43, 0xd8, 0x65, 0x58, + 0xdf, 0x1e, 0xcf, 0x04, 0xf6, 0xe5, 0x35, 0x8c, +}; +static const unsigned char kat3416_retbits[] = { + 0x31, 0x5a, 0xb8, 0xfa, 0xc8, 0x50, 0xbc, 0xf4, 0x8c, 0x84, 0xc4, 0x3c, + 0x8f, 0x79, 0x9b, 0x17, 0x47, 0x2e, 0x11, 0x7c, 0x9f, 0x0a, 0x56, 0xcb, + 0x65, 0x37, 0xc7, 0x44, 0x36, 0x3b, 0xa2, 0x89, 0xa0, 0x39, 0xa7, 0x70, + 0xa4, 0x1d, 0xaa, 0x6d, 0xe1, 0xa6, 0x2f, 0xc7, 0x05, 0x6d, 0xee, 0x48, + 0xc3, 0x88, 0xad, 0xbd, 0x23, 0x1a, 0xc3, 0x0b, 0x8a, 0xd1, 0xab, 0xe8, + 0x76, 0x27, 0xf1, 0x1c, +}; +static const struct drbg_kat_pr_true kat3416_t = { + 10, kat3416_entropyin, kat3416_nonce, kat3416_persstr, + kat3416_entropyinpr1, kat3416_addinpr1, kat3416_entropyinpr2, + kat3416_addinpr2, kat3416_retbits +}; +static const struct drbg_kat kat3416 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3416_t +}; + +static const unsigned char kat3417_entropyin[] = { + 0xfd, 0x52, 0x32, 0x83, 0xe4, 0x6f, 0xd8, 0x6d, 0x54, 0x84, 0x43, 0xe6, + 0xf8, 0x9e, 0xc5, 0xfa, 0x3c, 0x7c, 0xeb, 0x1e, 0x13, 0xd6, 0x99, 0x74, + 0x0e, 0xcd, 0xf5, 0x2a, 0xf9, 0x5f, 0x3b, 0x49, +}; +static const unsigned char kat3417_nonce[] = { + 0x23, 0xe5, 0xee, 0x2e, 0x12, 0x32, 0x26, 0xcc, 0xd2, 0xfe, 0x11, 0x4a, + 0x99, 0xf7, 0x9d, 0x36, +}; +static const unsigned char kat3417_persstr[] = { + 0x5b, 0x6a, 0x95, 0xd1, 0xbe, 0x7b, 0x38, 0x06, 0x04, 0x23, 0xdd, 0x95, + 0x4a, 0xac, 0x51, 0x41, 0x32, 0xd8, 0x23, 0x6d, 0x57, 0x0e, 0x2f, 0x01, + 0xc0, 0x13, 0x52, 0x50, 0x30, 0x6b, 0x1b, 0x0b, +}; +static const unsigned char kat3417_entropyinpr1[] = { + 0xf9, 0xe0, 0x8c, 0x6d, 0xc7, 0x17, 0x84, 0x12, 0x52, 0xa3, 0xd8, 0xa4, + 0x7d, 0xf4, 0x3f, 0x02, 0xdb, 0x7d, 0x27, 0x85, 0xcd, 0xac, 0xb1, 0x69, + 0x23, 0x27, 0xee, 0x57, 0x15, 0x75, 0x60, 0xe2, +}; +static const unsigned char kat3417_addinpr1[] = { + 0xc5, 0xc9, 0xbc, 0x9b, 0x7f, 0xd5, 0x7a, 0x97, 0xec, 0x63, 0xe9, 0xb0, + 0x44, 0x61, 0x34, 0xd7, 0x25, 0xdb, 0x8c, 0x88, 0x54, 0x23, 0x31, 0xa9, + 0xed, 0xf8, 0x22, 0x7d, 0xc4, 0xda, 0xc9, 0xf0, +}; +static const unsigned char kat3417_entropyinpr2[] = { + 0x93, 0x12, 0x3c, 0x93, 0x71, 0xd9, 0x15, 0x37, 0xb8, 0x7c, 0x47, 0x42, + 0xb5, 0x82, 0x88, 0xe7, 0x64, 0x56, 0xe3, 0x5a, 0xb4, 0xdd, 0x4f, 0xdb, + 0x73, 0xf6, 0x67, 0x60, 0x7d, 0x4c, 0xbc, 0xda, +}; +static const unsigned char kat3417_addinpr2[] = { + 0xaf, 0xa1, 0xc2, 0x02, 0xf2, 0xab, 0xd3, 0xc5, 0x2c, 0xa9, 0x5f, 0x6e, + 0xc0, 0x26, 0xae, 0x0e, 0xb1, 0x65, 0xfa, 0x11, 0x8d, 0xd3, 0xd4, 0xd6, + 0x22, 0x1a, 0xc8, 0xe9, 0xcc, 0xbc, 0x2a, 0xe1, +}; +static const unsigned char kat3417_retbits[] = { + 0x56, 0x6c, 0xec, 0x51, 0x2d, 0x29, 0x6b, 0xd1, 0x0b, 0x46, 0xbf, 0x9c, + 0xcc, 0x3d, 0x40, 0x84, 0xc4, 0x28, 0x9d, 0xda, 0xe3, 0x48, 0xbb, 0x78, + 0x0d, 0xb0, 0x6c, 0x02, 0x02, 0x15, 0x14, 0x93, 0xda, 0x63, 0x22, 0xa5, + 0x7f, 0x62, 0x9f, 0xc1, 0x54, 0x7b, 0xb1, 0x8a, 0x5a, 0x96, 0x3b, 0xd1, + 0xb7, 0x06, 0x24, 0x9b, 0x45, 0xec, 0xf8, 0x40, 0x9c, 0x94, 0x48, 0x03, + 0xde, 0xf1, 0x7f, 0xd0, +}; +static const struct drbg_kat_pr_true kat3417_t = { + 11, kat3417_entropyin, kat3417_nonce, kat3417_persstr, + kat3417_entropyinpr1, kat3417_addinpr1, kat3417_entropyinpr2, + kat3417_addinpr2, kat3417_retbits +}; +static const struct drbg_kat kat3417 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3417_t +}; + +static const unsigned char kat3418_entropyin[] = { + 0xb9, 0xe1, 0x28, 0xb0, 0xec, 0x74, 0x49, 0xbc, 0x3a, 0x19, 0x09, 0x29, + 0xd9, 0xe8, 0xae, 0xff, 0x3f, 0x1d, 0x4a, 0x7e, 0x8b, 0x77, 0xd1, 0xea, + 0xff, 0xa8, 0x43, 0xd1, 0x5e, 0x3f, 0xbc, 0x2a, +}; +static const unsigned char kat3418_nonce[] = { + 0xa6, 0x1f, 0x8d, 0xb7, 0x89, 0xfa, 0xff, 0xb6, 0xae, 0x4f, 0x9d, 0xb3, + 0xb9, 0xe7, 0x98, 0xb2, +}; +static const unsigned char kat3418_persstr[] = { + 0xe6, 0x62, 0x53, 0x8d, 0x48, 0x25, 0xef, 0x66, 0x32, 0x33, 0x09, 0x8b, + 0xf7, 0x1a, 0x5b, 0xdb, 0x9c, 0xd3, 0x3c, 0x75, 0x88, 0x79, 0x68, 0x5c, + 0xd6, 0xc5, 0x5f, 0x87, 0x4f, 0x11, 0x69, 0xc8, +}; +static const unsigned char kat3418_entropyinpr1[] = { + 0xee, 0x7b, 0x28, 0x57, 0x51, 0x7e, 0xd1, 0x80, 0x8f, 0x02, 0x2c, 0xbf, + 0xf0, 0xed, 0x14, 0x48, 0xfe, 0x4e, 0x2c, 0xcf, 0x02, 0x73, 0xb9, 0xeb, + 0x52, 0xdb, 0x66, 0xfd, 0x30, 0x78, 0x56, 0xab, +}; +static const unsigned char kat3418_addinpr1[] = { + 0x53, 0x34, 0x5f, 0x1c, 0xc3, 0x9f, 0x10, 0x0e, 0xf6, 0x73, 0x38, 0xd9, + 0x93, 0x7e, 0x1a, 0x81, 0xc3, 0xcc, 0x7c, 0xcc, 0x4d, 0xb3, 0x2a, 0x2d, + 0x38, 0x10, 0x55, 0x0c, 0x3f, 0x61, 0x5e, 0x6e, +}; +static const unsigned char kat3418_entropyinpr2[] = { + 0xd8, 0xc6, 0x0c, 0xf1, 0x4b, 0x00, 0x97, 0x51, 0xd9, 0x72, 0x5f, 0x54, + 0x97, 0x59, 0xac, 0xcd, 0x00, 0xdd, 0xa7, 0x01, 0x09, 0xa9, 0x1d, 0x56, + 0x0e, 0x83, 0x66, 0x6c, 0x4d, 0x24, 0xbc, 0x0e, +}; +static const unsigned char kat3418_addinpr2[] = { + 0xa3, 0x33, 0x1a, 0x84, 0xfe, 0xaf, 0x82, 0x31, 0x37, 0x6c, 0x81, 0x1f, + 0x24, 0x58, 0xd0, 0xad, 0xc0, 0x2d, 0x09, 0xfe, 0x85, 0xf5, 0x0e, 0x29, + 0x07, 0x2e, 0x58, 0x34, 0x05, 0x98, 0xef, 0xfb, +}; +static const unsigned char kat3418_retbits[] = { + 0x18, 0x6f, 0x47, 0x6c, 0x96, 0x6e, 0x6d, 0x7b, 0x79, 0xe4, 0x64, 0x97, + 0x47, 0xc7, 0xb3, 0xd0, 0xb1, 0x8e, 0xde, 0x2b, 0x26, 0x5c, 0xcd, 0x0c, + 0xb7, 0x3b, 0xd5, 0x9b, 0x73, 0x25, 0xce, 0xd0, 0xdc, 0xe7, 0x9d, 0xa1, + 0x50, 0x99, 0xe2, 0x3c, 0xaa, 0x4d, 0x9f, 0x61, 0xe5, 0xf3, 0x2f, 0x40, + 0x18, 0xac, 0xc0, 0x26, 0x67, 0xe9, 0xf2, 0x99, 0x9f, 0x36, 0x01, 0x46, + 0xc4, 0xc1, 0xec, 0x80, +}; +static const struct drbg_kat_pr_true kat3418_t = { + 12, kat3418_entropyin, kat3418_nonce, kat3418_persstr, + kat3418_entropyinpr1, kat3418_addinpr1, kat3418_entropyinpr2, + kat3418_addinpr2, kat3418_retbits +}; +static const struct drbg_kat kat3418 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3418_t +}; + +static const unsigned char kat3419_entropyin[] = { + 0x84, 0x62, 0x9d, 0x28, 0xb3, 0x0a, 0xf4, 0x3a, 0x8c, 0xe0, 0x8e, 0x7a, + 0x01, 0x46, 0xb2, 0x52, 0xec, 0x70, 0xcd, 0x12, 0x54, 0xf4, 0xe1, 0xa4, + 0xaf, 0x01, 0xb3, 0x8f, 0x03, 0x3a, 0xc5, 0x29, +}; +static const unsigned char kat3419_nonce[] = { + 0xa4, 0xae, 0x5a, 0x61, 0xb3, 0xb3, 0xb9, 0x8e, 0x26, 0x7d, 0x4d, 0x98, + 0xa8, 0x7c, 0x0c, 0xfb, +}; +static const unsigned char kat3419_persstr[] = { + 0x1d, 0xbe, 0xdd, 0x95, 0x3e, 0xd1, 0x06, 0x5c, 0x72, 0xb8, 0x7b, 0x1e, + 0xb2, 0x2c, 0x4e, 0x08, 0x51, 0x6c, 0x6c, 0xef, 0x41, 0xbc, 0xbf, 0x23, + 0x28, 0x61, 0x25, 0xb2, 0x24, 0xef, 0x12, 0x6e, +}; +static const unsigned char kat3419_entropyinpr1[] = { + 0x9d, 0xd9, 0x36, 0x08, 0x73, 0x54, 0xe2, 0xea, 0xcd, 0x92, 0x41, 0x7c, + 0x3f, 0x50, 0x5c, 0x08, 0x1b, 0xaa, 0x7f, 0x6d, 0x77, 0xe1, 0x71, 0xb6, + 0x2a, 0x27, 0xcd, 0x45, 0xf3, 0xca, 0x97, 0x14, +}; +static const unsigned char kat3419_addinpr1[] = { + 0x11, 0xb3, 0x09, 0x26, 0x53, 0xe4, 0x48, 0xad, 0x5a, 0xf0, 0x5d, 0x61, + 0x24, 0x92, 0xac, 0xf3, 0x5d, 0x0a, 0xbc, 0x90, 0x66, 0x1f, 0xb0, 0xae, + 0x3e, 0x8e, 0xd9, 0x1c, 0x7d, 0x87, 0xb9, 0xb6, +}; +static const unsigned char kat3419_entropyinpr2[] = { + 0x21, 0xd7, 0x1c, 0x3d, 0xf3, 0x84, 0x82, 0xf7, 0x92, 0xd3, 0x50, 0xce, + 0x98, 0x4f, 0xc5, 0x8b, 0xca, 0x81, 0xe4, 0x1f, 0x59, 0x8d, 0xc8, 0xdb, + 0xc4, 0x0a, 0xbc, 0x53, 0xf7, 0x15, 0x39, 0x5d, +}; +static const unsigned char kat3419_addinpr2[] = { + 0xe9, 0xb5, 0xf6, 0x63, 0x13, 0x13, 0xec, 0xb9, 0x3e, 0xae, 0x1a, 0xeb, + 0x83, 0xaf, 0xd8, 0xf2, 0xcf, 0xd4, 0xa9, 0xe0, 0xc6, 0xa9, 0xee, 0x45, + 0xf7, 0x9a, 0x37, 0x94, 0x1b, 0xe3, 0x79, 0x5d, +}; +static const unsigned char kat3419_retbits[] = { + 0xbc, 0x88, 0xaa, 0xf3, 0x55, 0xd7, 0x82, 0x61, 0xcf, 0x2b, 0x6e, 0x05, + 0x78, 0x50, 0x70, 0xa2, 0x52, 0x38, 0x33, 0x2a, 0xb3, 0x2c, 0x1f, 0x28, + 0x31, 0x7e, 0xd9, 0x6f, 0x87, 0xca, 0x09, 0xe5, 0x5b, 0x7d, 0xd5, 0xc8, + 0x13, 0x54, 0xf7, 0xa8, 0xb2, 0xa3, 0x7a, 0x9c, 0x62, 0x23, 0x0b, 0x94, + 0x2f, 0x51, 0xfb, 0xa5, 0xa8, 0x83, 0x22, 0x61, 0x92, 0x5c, 0x93, 0x05, + 0x5d, 0x15, 0xde, 0x6e, +}; +static const struct drbg_kat_pr_true kat3419_t = { + 13, kat3419_entropyin, kat3419_nonce, kat3419_persstr, + kat3419_entropyinpr1, kat3419_addinpr1, kat3419_entropyinpr2, + kat3419_addinpr2, kat3419_retbits +}; +static const struct drbg_kat kat3419 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3419_t +}; + +static const unsigned char kat3420_entropyin[] = { + 0xc5, 0xb7, 0x34, 0x9e, 0xc8, 0x63, 0xfa, 0x24, 0x5a, 0xe7, 0xc4, 0x19, + 0x1f, 0x74, 0x2f, 0x7e, 0x2f, 0xa4, 0x5a, 0x9c, 0xd3, 0xcb, 0x7a, 0x5a, + 0xb7, 0x0b, 0x51, 0x85, 0x04, 0xc8, 0x9d, 0x4f, +}; +static const unsigned char kat3420_nonce[] = { + 0x6e, 0x1f, 0x05, 0x40, 0x13, 0x05, 0xc8, 0x91, 0xbe, 0xc2, 0x65, 0xed, + 0x81, 0x6c, 0x56, 0xdd, +}; +static const unsigned char kat3420_persstr[] = { + 0x84, 0xd4, 0x11, 0x51, 0x84, 0x7d, 0xf4, 0xf6, 0xf2, 0xb3, 0x2f, 0x9f, + 0xb5, 0xbc, 0x9d, 0x24, 0xae, 0xa0, 0x19, 0xbf, 0xff, 0x75, 0x33, 0x02, + 0x9c, 0x3f, 0x76, 0x6a, 0xca, 0xd1, 0xbb, 0x68, +}; +static const unsigned char kat3420_entropyinpr1[] = { + 0x90, 0x89, 0xb5, 0x78, 0xd1, 0x61, 0x0f, 0xe0, 0x72, 0xb0, 0x69, 0xe8, + 0x33, 0xd9, 0x3d, 0xc2, 0xc9, 0x20, 0xd8, 0x4e, 0xfc, 0x54, 0x19, 0x64, + 0x94, 0x03, 0x36, 0x6c, 0x66, 0x4a, 0xe6, 0xe0, +}; +static const unsigned char kat3420_addinpr1[] = { + 0x43, 0xbd, 0xb3, 0xda, 0xa2, 0x79, 0x9d, 0x33, 0xce, 0xed, 0xfa, 0xc9, + 0xee, 0x67, 0x89, 0xf7, 0x4b, 0x66, 0x61, 0xdf, 0xfa, 0x64, 0xc3, 0xe0, + 0x30, 0x17, 0x8f, 0xd0, 0x46, 0x74, 0xa7, 0x5d, +}; +static const unsigned char kat3420_entropyinpr2[] = { + 0x99, 0x02, 0x9e, 0xa2, 0xc2, 0x48, 0x01, 0x3a, 0xd4, 0xa4, 0x05, 0x3b, + 0x89, 0x5d, 0x42, 0x55, 0xaa, 0x50, 0x5c, 0x5a, 0x13, 0x27, 0xc2, 0xf8, + 0x79, 0x02, 0x2a, 0x49, 0x20, 0x71, 0x75, 0x46, +}; +static const unsigned char kat3420_addinpr2[] = { + 0x56, 0xf5, 0x81, 0x6f, 0xa3, 0xdd, 0xdc, 0xc0, 0x8d, 0x14, 0x6f, 0x09, + 0x14, 0x3a, 0x4a, 0x6a, 0x52, 0x58, 0xa3, 0x53, 0x38, 0xc1, 0x8f, 0xda, + 0x83, 0x12, 0xdd, 0x4a, 0xf9, 0xc9, 0x87, 0xe7, +}; +static const unsigned char kat3420_retbits[] = { + 0x67, 0xf0, 0x61, 0xfe, 0x0a, 0xe9, 0x38, 0xe8, 0x5f, 0x84, 0xfb, 0x41, + 0x93, 0x38, 0x32, 0xb2, 0x94, 0x66, 0x80, 0x93, 0x81, 0xbc, 0x8a, 0x99, + 0xe6, 0xc2, 0x74, 0x2b, 0x32, 0x56, 0x79, 0x8f, 0xf4, 0x35, 0x26, 0x6f, + 0x05, 0x73, 0x86, 0x9f, 0xcf, 0xd0, 0xba, 0x26, 0x4a, 0x09, 0x04, 0x23, + 0xd5, 0x0c, 0x96, 0xb8, 0x6c, 0x54, 0xaf, 0xd7, 0x26, 0x9d, 0xf2, 0x61, + 0xfa, 0x70, 0xdd, 0xb2, +}; +static const struct drbg_kat_pr_true kat3420_t = { + 14, kat3420_entropyin, kat3420_nonce, kat3420_persstr, + kat3420_entropyinpr1, kat3420_addinpr1, kat3420_entropyinpr2, + kat3420_addinpr2, kat3420_retbits +}; +static const struct drbg_kat kat3420 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3420_t +}; + +static const unsigned char kat3421_entropyin[] = { + 0x2c, 0x79, 0xfd, 0x40, 0x32, 0x34, 0xad, 0xaa, 0x43, 0xb4, 0x0d, 0x1c, + 0x7e, 0xd7, 0x39, 0xb7, 0xf8, 0x3a, 0x56, 0xc1, 0x31, 0xd8, 0x8c, 0xa7, + 0x62, 0x58, 0xe4, 0xb6, 0xee, 0xde, 0x2b, 0xd7, +}; +static const unsigned char kat3421_nonce[] = { + 0xd2, 0x7e, 0xe9, 0x94, 0x6e, 0x0a, 0xb0, 0x69, 0xde, 0xf3, 0x7c, 0xa6, + 0x6f, 0xdd, 0x1b, 0x48, +}; +static const unsigned char kat3421_persstr[] = {0}; +static const unsigned char kat3421_entropyinpr1[] = { + 0x73, 0xf4, 0x11, 0xad, 0xc9, 0x1b, 0x85, 0xed, 0x1f, 0xf7, 0x14, 0x1b, + 0x87, 0x97, 0xc9, 0x26, 0x2d, 0x0c, 0xfc, 0x1c, 0xac, 0x32, 0x88, 0x71, + 0x3e, 0xed, 0xe0, 0x8e, 0x33, 0x20, 0x09, 0x06, +}; +static const unsigned char kat3421_addinpr1[] = {0}; +static const unsigned char kat3421_entropyinpr2[] = { + 0xf9, 0x6a, 0x72, 0x10, 0x48, 0x87, 0xd3, 0x5d, 0xee, 0xd2, 0x1a, 0x4d, + 0x35, 0x44, 0x96, 0x98, 0xa0, 0x6a, 0x40, 0x35, 0xc8, 0x9f, 0x44, 0xbe, + 0x28, 0xb2, 0xa7, 0xb6, 0x6d, 0xa8, 0xd3, 0x97, +}; +static const unsigned char kat3421_addinpr2[] = {0}; +static const unsigned char kat3421_retbits[] = { + 0x4f, 0x6c, 0x6f, 0x16, 0x3e, 0x76, 0x66, 0x5b, 0x1f, 0xe5, 0xbe, 0x08, + 0xcc, 0xc4, 0x0b, 0x07, 0xea, 0x36, 0x91, 0xd3, 0x8b, 0xa2, 0x8b, 0xfb, + 0xc8, 0xc3, 0xb0, 0x94, 0xf2, 0xc4, 0x03, 0x3c, 0xea, 0xaf, 0x9e, 0x33, + 0x51, 0xae, 0xd5, 0xd9, 0x42, 0x81, 0x6b, 0x3a, 0x70, 0x05, 0x84, 0x42, + 0xac, 0x1e, 0x12, 0xcf, 0x96, 0xd0, 0x53, 0x15, 0x4c, 0xdc, 0xa5, 0x69, + 0x60, 0x64, 0x2c, 0xb0, +}; +static const struct drbg_kat_pr_true kat3421_t = { + 0, kat3421_entropyin, kat3421_nonce, kat3421_persstr, + kat3421_entropyinpr1, kat3421_addinpr1, kat3421_entropyinpr2, + kat3421_addinpr2, kat3421_retbits +}; +static const struct drbg_kat kat3421 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3421_t +}; + +static const unsigned char kat3422_entropyin[] = { + 0xf7, 0x22, 0x49, 0x3d, 0x68, 0x6e, 0xb5, 0xbf, 0x22, 0x6f, 0xa8, 0x6d, + 0x74, 0x99, 0x62, 0x23, 0x61, 0xe7, 0xe0, 0xb3, 0x24, 0x03, 0x7a, 0xca, + 0xb4, 0xce, 0x97, 0xd8, 0xa1, 0x4a, 0x66, 0xdb, +}; +static const unsigned char kat3422_nonce[] = { + 0xbe, 0x84, 0x6d, 0xac, 0x7e, 0x25, 0xf1, 0xe6, 0xa8, 0x2a, 0xed, 0x95, + 0xf0, 0x2b, 0xbe, 0x28, +}; +static const unsigned char kat3422_persstr[] = {0}; +static const unsigned char kat3422_entropyinpr1[] = { + 0x29, 0x1b, 0x26, 0x6f, 0xdc, 0x66, 0x8f, 0x8d, 0x1a, 0x92, 0x7d, 0xf2, + 0x11, 0x44, 0xb3, 0xee, 0x55, 0xf8, 0x71, 0x66, 0x4e, 0x4b, 0x3d, 0x90, + 0x7f, 0x4d, 0xd1, 0x90, 0xc7, 0x07, 0x1e, 0x03, +}; +static const unsigned char kat3422_addinpr1[] = {0}; +static const unsigned char kat3422_entropyinpr2[] = { + 0xb2, 0x85, 0xb4, 0xe7, 0x00, 0xed, 0xbf, 0x00, 0xc1, 0x3f, 0xea, 0x8d, + 0x13, 0x07, 0xb6, 0x17, 0xd0, 0x80, 0x4b, 0x60, 0x34, 0x90, 0xf5, 0xa8, + 0xb6, 0x2f, 0xb5, 0x2b, 0xd6, 0xa5, 0xe4, 0xbd, +}; +static const unsigned char kat3422_addinpr2[] = {0}; +static const unsigned char kat3422_retbits[] = { + 0x9e, 0xb4, 0x7f, 0xf7, 0x71, 0xdf, 0xc6, 0xad, 0xe4, 0xab, 0x2f, 0x2f, + 0x57, 0xf3, 0x72, 0x22, 0x19, 0xe3, 0xb5, 0x92, 0x66, 0x64, 0x35, 0xde, + 0x3e, 0xbb, 0x2e, 0x5d, 0x14, 0xee, 0x66, 0xfc, 0x3d, 0xa1, 0x2a, 0x57, + 0xff, 0x15, 0x21, 0xa5, 0xaf, 0x41, 0x83, 0x5b, 0x9d, 0x59, 0xa3, 0x95, + 0x2e, 0xdb, 0xc9, 0x88, 0x52, 0xec, 0x4d, 0x2f, 0x9f, 0x86, 0x91, 0x52, + 0x6a, 0x62, 0x63, 0x1c, +}; +static const struct drbg_kat_pr_true kat3422_t = { + 1, kat3422_entropyin, kat3422_nonce, kat3422_persstr, + kat3422_entropyinpr1, kat3422_addinpr1, kat3422_entropyinpr2, + kat3422_addinpr2, kat3422_retbits +}; +static const struct drbg_kat kat3422 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3422_t +}; + +static const unsigned char kat3423_entropyin[] = { + 0x8d, 0x56, 0x7d, 0x4d, 0x78, 0xe9, 0x0a, 0x30, 0xa8, 0x6e, 0xd8, 0x86, + 0x57, 0xbf, 0x0b, 0x3f, 0x16, 0xaa, 0xe4, 0xdf, 0x84, 0x54, 0x48, 0x0a, + 0xe1, 0x32, 0x22, 0x45, 0x2e, 0x4d, 0x6c, 0xfe, +}; +static const unsigned char kat3423_nonce[] = { + 0x16, 0x52, 0x6e, 0xae, 0x5a, 0x7d, 0xf0, 0x65, 0xc7, 0x85, 0xa7, 0x74, + 0x3e, 0xb6, 0x09, 0x5a, +}; +static const unsigned char kat3423_persstr[] = {0}; +static const unsigned char kat3423_entropyinpr1[] = { + 0x20, 0x66, 0xf3, 0x84, 0xfb, 0xf8, 0xce, 0xe4, 0x64, 0xfe, 0x2a, 0x6a, + 0xfd, 0xe4, 0x37, 0xbb, 0x1e, 0x6e, 0x3e, 0xa0, 0x0a, 0xb2, 0xe7, 0x74, + 0x11, 0x96, 0xa7, 0xe6, 0x33, 0x0a, 0x1a, 0x19, +}; +static const unsigned char kat3423_addinpr1[] = {0}; +static const unsigned char kat3423_entropyinpr2[] = { + 0x80, 0x15, 0xe2, 0xb8, 0xb3, 0x04, 0x35, 0xfb, 0x76, 0xb6, 0x99, 0xce, + 0xa6, 0x4b, 0x6a, 0x78, 0x95, 0xda, 0xd4, 0x5d, 0xbd, 0xff, 0xf6, 0xd6, + 0x70, 0xb4, 0x7e, 0x71, 0x98, 0x1f, 0xc6, 0xa9, +}; +static const unsigned char kat3423_addinpr2[] = {0}; +static const unsigned char kat3423_retbits[] = { + 0x1c, 0x2d, 0xb9, 0xe6, 0xd7, 0x99, 0x99, 0xf7, 0xbb, 0xa3, 0x79, 0x0e, + 0xb5, 0xfc, 0x17, 0xa9, 0x7b, 0xa1, 0x37, 0x96, 0xcb, 0x3d, 0x1d, 0xb1, + 0xaa, 0x32, 0x04, 0x03, 0x08, 0x01, 0x81, 0x93, 0xb5, 0x47, 0xf9, 0xc6, + 0x7f, 0xa3, 0x0a, 0x09, 0xb5, 0x86, 0x73, 0x4c, 0xfa, 0xfa, 0x28, 0x35, + 0xe0, 0x64, 0x93, 0x07, 0x5d, 0x32, 0xcb, 0x95, 0x9b, 0x3b, 0x2d, 0x03, + 0x76, 0xa3, 0xa5, 0x0c, +}; +static const struct drbg_kat_pr_true kat3423_t = { + 2, kat3423_entropyin, kat3423_nonce, kat3423_persstr, + kat3423_entropyinpr1, kat3423_addinpr1, kat3423_entropyinpr2, + kat3423_addinpr2, kat3423_retbits +}; +static const struct drbg_kat kat3423 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3423_t +}; + +static const unsigned char kat3424_entropyin[] = { + 0xfd, 0x6e, 0xca, 0x11, 0xf5, 0x78, 0xf6, 0x35, 0xb8, 0x12, 0xae, 0x50, + 0x3a, 0x58, 0xf9, 0x66, 0xf6, 0x7b, 0x69, 0xe2, 0xb6, 0x95, 0xd6, 0x2c, + 0xc4, 0x48, 0x3e, 0x66, 0xd7, 0x30, 0x04, 0xbd, +}; +static const unsigned char kat3424_nonce[] = { + 0xe4, 0xf5, 0xe5, 0xc3, 0xdd, 0x41, 0x67, 0x06, 0xa9, 0x46, 0xbc, 0x7a, + 0x9e, 0x63, 0xc7, 0x52, +}; +static const unsigned char kat3424_persstr[] = {0}; +static const unsigned char kat3424_entropyinpr1[] = { + 0x59, 0x83, 0xed, 0x65, 0xe9, 0xe4, 0x08, 0xdc, 0xf6, 0xd4, 0x2a, 0x1a, + 0x5b, 0x0a, 0xb5, 0x21, 0x1a, 0x84, 0x34, 0xfe, 0x49, 0x90, 0x40, 0x1e, + 0x37, 0x19, 0xdf, 0x92, 0x51, 0x76, 0x20, 0x10, +}; +static const unsigned char kat3424_addinpr1[] = {0}; +static const unsigned char kat3424_entropyinpr2[] = { + 0x78, 0x1c, 0x86, 0x61, 0xc0, 0xcf, 0x0d, 0x23, 0x93, 0xc6, 0xe5, 0x5c, + 0x35, 0xaf, 0x1a, 0x38, 0x7f, 0x6a, 0xf3, 0x49, 0xfe, 0x60, 0x3b, 0x68, + 0xaa, 0xbb, 0xbe, 0x8e, 0xc9, 0xb7, 0x57, 0x3c, +}; +static const unsigned char kat3424_addinpr2[] = {0}; +static const unsigned char kat3424_retbits[] = { + 0x2d, 0x3a, 0x35, 0x11, 0x22, 0x1a, 0x79, 0x46, 0x42, 0xb7, 0x8b, 0xd7, + 0x6c, 0xf5, 0xa4, 0x63, 0xbc, 0xd1, 0x7d, 0x0d, 0xcc, 0x71, 0x68, 0xf2, + 0x0f, 0x75, 0xa5, 0xfc, 0x7f, 0x07, 0xa4, 0xd5, 0x27, 0xcf, 0x87, 0x01, + 0xd5, 0xc4, 0x5b, 0xcd, 0x71, 0xf3, 0xae, 0x3d, 0x1b, 0x1f, 0x98, 0x3c, + 0x7e, 0x2d, 0x3e, 0x98, 0x6c, 0x72, 0x95, 0x5d, 0xb5, 0x11, 0xf3, 0xb0, + 0x5a, 0x88, 0x08, 0x08, +}; +static const struct drbg_kat_pr_true kat3424_t = { + 3, kat3424_entropyin, kat3424_nonce, kat3424_persstr, + kat3424_entropyinpr1, kat3424_addinpr1, kat3424_entropyinpr2, + kat3424_addinpr2, kat3424_retbits +}; +static const struct drbg_kat kat3424 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3424_t +}; + +static const unsigned char kat3425_entropyin[] = { + 0xba, 0xc7, 0xc9, 0xe2, 0x08, 0xef, 0x28, 0xe1, 0xc5, 0x1a, 0x39, 0xdd, + 0x4f, 0x7f, 0x96, 0x08, 0x48, 0xe6, 0xec, 0x9b, 0x5f, 0x05, 0x66, 0x4a, + 0x0c, 0x82, 0x5a, 0x31, 0x65, 0xd6, 0x4b, 0xdc, +}; +static const unsigned char kat3425_nonce[] = { + 0x2a, 0xd4, 0x8f, 0xc6, 0xbf, 0x15, 0x59, 0x34, 0xef, 0x50, 0xc5, 0x8a, + 0x56, 0x5f, 0x34, 0xe7, +}; +static const unsigned char kat3425_persstr[] = {0}; +static const unsigned char kat3425_entropyinpr1[] = { + 0x12, 0x42, 0x45, 0xd0, 0x88, 0x09, 0x7d, 0x41, 0x37, 0x99, 0xb6, 0xd2, + 0xa2, 0x45, 0xbf, 0xc0, 0x71, 0x85, 0x7d, 0xb1, 0xdc, 0x07, 0xd1, 0x00, + 0x49, 0x4d, 0xee, 0x4f, 0x86, 0xf4, 0xea, 0xf9, +}; +static const unsigned char kat3425_addinpr1[] = {0}; +static const unsigned char kat3425_entropyinpr2[] = { + 0x67, 0xe4, 0xee, 0xfe, 0x42, 0x77, 0x19, 0xd6, 0x5a, 0x98, 0x41, 0x76, + 0x7c, 0xc2, 0xbf, 0x8e, 0xfb, 0x69, 0xb8, 0xa8, 0x65, 0x83, 0x00, 0xe6, + 0xd7, 0xf2, 0xc8, 0x0f, 0x6f, 0x0e, 0xd3, 0xec, +}; +static const unsigned char kat3425_addinpr2[] = {0}; +static const unsigned char kat3425_retbits[] = { + 0xbb, 0x54, 0xbd, 0x17, 0xd5, 0x9c, 0xcf, 0x61, 0x19, 0x96, 0x96, 0x8a, + 0x4b, 0xa2, 0x52, 0x51, 0xcf, 0x84, 0x2e, 0xae, 0xb9, 0xc3, 0xf9, 0xf0, + 0x31, 0x8b, 0x57, 0x71, 0xdb, 0xd4, 0x13, 0xf4, 0x3c, 0xa6, 0x46, 0xa0, + 0xf5, 0x28, 0x03, 0xd1, 0x88, 0x72, 0xa7, 0x2a, 0x00, 0x5f, 0x7c, 0x49, + 0x03, 0x04, 0x4e, 0x41, 0x47, 0xb6, 0x90, 0x3b, 0x5f, 0x1d, 0xf8, 0x1c, + 0xe5, 0x59, 0x3b, 0x24, +}; +static const struct drbg_kat_pr_true kat3425_t = { + 4, kat3425_entropyin, kat3425_nonce, kat3425_persstr, + kat3425_entropyinpr1, kat3425_addinpr1, kat3425_entropyinpr2, + kat3425_addinpr2, kat3425_retbits +}; +static const struct drbg_kat kat3425 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3425_t +}; + +static const unsigned char kat3426_entropyin[] = { + 0x2c, 0xc5, 0xa1, 0x44, 0x88, 0xe2, 0xb1, 0xa6, 0xc3, 0xdc, 0x2b, 0x87, + 0x5e, 0x18, 0xed, 0x9a, 0xd9, 0xd1, 0xb7, 0xd6, 0xd4, 0x19, 0x19, 0x44, + 0x8f, 0x63, 0x9a, 0x75, 0x09, 0xb6, 0x52, 0x78, +}; +static const unsigned char kat3426_nonce[] = { + 0x24, 0x0c, 0xde, 0x41, 0x22, 0x1c, 0x1a, 0x5b, 0x94, 0x2d, 0x18, 0xcb, + 0x52, 0x4e, 0xb7, 0x14, +}; +static const unsigned char kat3426_persstr[] = {0}; +static const unsigned char kat3426_entropyinpr1[] = { + 0x8f, 0x88, 0xf6, 0xc7, 0x92, 0x12, 0xdf, 0x56, 0x33, 0x90, 0xd4, 0xb7, + 0x33, 0xcf, 0xc0, 0x2f, 0x20, 0x73, 0x6d, 0x27, 0xcc, 0x4a, 0xd8, 0xe1, + 0x57, 0x36, 0x2e, 0x00, 0x36, 0x3e, 0x1c, 0x92, +}; +static const unsigned char kat3426_addinpr1[] = {0}; +static const unsigned char kat3426_entropyinpr2[] = { + 0xbd, 0xeb, 0x9e, 0x19, 0xac, 0xd2, 0x06, 0x52, 0x39, 0xd3, 0x63, 0xbc, + 0xde, 0x70, 0x2a, 0x1c, 0x4c, 0x03, 0x77, 0xb1, 0x48, 0x87, 0x16, 0x50, + 0x1a, 0x2f, 0xda, 0x15, 0x11, 0xca, 0xb1, 0xac, +}; +static const unsigned char kat3426_addinpr2[] = {0}; +static const unsigned char kat3426_retbits[] = { + 0x42, 0xaf, 0xb4, 0x0d, 0xb4, 0x72, 0x89, 0x45, 0x28, 0xb9, 0xe9, 0x7a, + 0xef, 0xec, 0x04, 0xd3, 0x41, 0x8a, 0x1f, 0x24, 0x78, 0xea, 0x63, 0x1f, + 0x17, 0x44, 0x1b, 0x19, 0x7f, 0xaa, 0xd6, 0xa7, 0x72, 0x67, 0xc2, 0x5e, + 0xa5, 0x19, 0x4d, 0x7e, 0x1b, 0x99, 0x77, 0x34, 0xb6, 0x98, 0xd1, 0x8c, + 0xdf, 0xc3, 0x95, 0xf8, 0x69, 0x7e, 0x82, 0x98, 0x52, 0xd9, 0xe6, 0x39, + 0x3c, 0x2c, 0x55, 0xf9, +}; +static const struct drbg_kat_pr_true kat3426_t = { + 5, kat3426_entropyin, kat3426_nonce, kat3426_persstr, + kat3426_entropyinpr1, kat3426_addinpr1, kat3426_entropyinpr2, + kat3426_addinpr2, kat3426_retbits +}; +static const struct drbg_kat kat3426 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3426_t +}; + +static const unsigned char kat3427_entropyin[] = { + 0x1f, 0x5c, 0xb7, 0xc2, 0xd0, 0x58, 0x65, 0xc9, 0x4d, 0x1d, 0x47, 0x39, + 0x61, 0x01, 0x0e, 0xf4, 0x0f, 0xa4, 0xd3, 0x56, 0x92, 0xe7, 0xb4, 0x6b, + 0x46, 0xfb, 0xa0, 0x36, 0xb1, 0x29, 0xef, 0x1f, +}; +static const unsigned char kat3427_nonce[] = { + 0x0d, 0x1d, 0x61, 0x42, 0xc1, 0x0e, 0x3d, 0x96, 0x98, 0x33, 0x35, 0x02, + 0x40, 0x2b, 0x7c, 0x08, +}; +static const unsigned char kat3427_persstr[] = {0}; +static const unsigned char kat3427_entropyinpr1[] = { + 0x59, 0x42, 0x07, 0x0a, 0x94, 0x4b, 0x66, 0xa7, 0x51, 0x97, 0xa5, 0xa6, + 0x9b, 0xef, 0xb7, 0x06, 0x35, 0x57, 0xf9, 0x0c, 0xc6, 0x7f, 0x9f, 0x6f, + 0xe3, 0x11, 0x53, 0xac, 0x45, 0x06, 0x40, 0x3b, +}; +static const unsigned char kat3427_addinpr1[] = {0}; +static const unsigned char kat3427_entropyinpr2[] = { + 0xa2, 0xf1, 0x94, 0x45, 0xdb, 0xd3, 0xd3, 0x37, 0xf4, 0x62, 0x7e, 0xde, + 0x5a, 0x27, 0xd0, 0x69, 0x45, 0x5c, 0x5d, 0xd9, 0xa7, 0x1d, 0x27, 0x3a, + 0xe3, 0x5c, 0x39, 0x48, 0xcc, 0x2b, 0x51, 0x8c, +}; +static const unsigned char kat3427_addinpr2[] = {0}; +static const unsigned char kat3427_retbits[] = { + 0xca, 0xc1, 0x3b, 0x84, 0xf1, 0xf9, 0x74, 0x54, 0xb4, 0x38, 0x6a, 0xb4, + 0xd8, 0x7b, 0x34, 0x19, 0x31, 0x03, 0x26, 0xb8, 0x9f, 0xf6, 0x4f, 0x93, + 0xa8, 0xc5, 0xaa, 0x59, 0x78, 0xe0, 0x38, 0x16, 0xad, 0x7d, 0x49, 0x1d, + 0x9c, 0x4e, 0x1c, 0xcc, 0x77, 0x05, 0xa1, 0x72, 0x88, 0x37, 0x37, 0x2e, + 0x7b, 0xe6, 0xd9, 0xa7, 0x4e, 0x1c, 0xa6, 0x3d, 0xa4, 0xf0, 0xa8, 0x56, + 0x36, 0xc1, 0x6f, 0xd6, +}; +static const struct drbg_kat_pr_true kat3427_t = { + 6, kat3427_entropyin, kat3427_nonce, kat3427_persstr, + kat3427_entropyinpr1, kat3427_addinpr1, kat3427_entropyinpr2, + kat3427_addinpr2, kat3427_retbits +}; +static const struct drbg_kat kat3427 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3427_t +}; + +static const unsigned char kat3428_entropyin[] = { + 0xd7, 0x08, 0x4e, 0x69, 0x23, 0x28, 0x4f, 0xa1, 0x96, 0xe4, 0x41, 0xcf, + 0x75, 0xb4, 0x0e, 0x50, 0xf2, 0xc0, 0xfe, 0x4e, 0xde, 0x60, 0x0b, 0x31, + 0x18, 0x0e, 0x3e, 0xe8, 0xcd, 0xfe, 0x98, 0x2e, +}; +static const unsigned char kat3428_nonce[] = { + 0x26, 0x19, 0x3c, 0x3e, 0xed, 0x59, 0x24, 0x64, 0xd8, 0x7c, 0x63, 0x60, + 0xc4, 0xd6, 0x02, 0xe0, +}; +static const unsigned char kat3428_persstr[] = {0}; +static const unsigned char kat3428_entropyinpr1[] = { + 0xf2, 0x90, 0x4f, 0xf4, 0xf0, 0x02, 0x93, 0x60, 0x75, 0x26, 0x86, 0xf9, + 0xb6, 0x9e, 0xa6, 0x96, 0xeb, 0xcc, 0x5c, 0xb2, 0xca, 0xd4, 0x79, 0xa6, + 0x73, 0x12, 0xda, 0x31, 0xb9, 0x3d, 0x18, 0x3f, +}; +static const unsigned char kat3428_addinpr1[] = {0}; +static const unsigned char kat3428_entropyinpr2[] = { + 0x39, 0xc5, 0x6b, 0x79, 0xd4, 0x0b, 0xf0, 0x25, 0xb7, 0xd8, 0xa3, 0x06, + 0xb9, 0x71, 0xee, 0xcf, 0x3c, 0x27, 0x22, 0xd5, 0x67, 0xf1, 0x8f, 0xef, + 0x64, 0x1e, 0x7b, 0x4a, 0x1f, 0xa4, 0xcf, 0xfa, +}; +static const unsigned char kat3428_addinpr2[] = {0}; +static const unsigned char kat3428_retbits[] = { + 0x0b, 0xa9, 0x3d, 0x05, 0x1a, 0xb5, 0x93, 0x26, 0x43, 0x31, 0xd8, 0x9d, + 0xd9, 0x17, 0xd0, 0x14, 0xad, 0xd1, 0x40, 0x2f, 0xa8, 0x83, 0x96, 0x25, + 0x81, 0xf2, 0x6a, 0xd6, 0xe7, 0xa2, 0x2f, 0xec, 0x6a, 0xe4, 0xdb, 0xa9, + 0x29, 0x35, 0x07, 0xae, 0x68, 0xd0, 0x2a, 0xb5, 0xef, 0x3e, 0x91, 0x66, + 0x0c, 0xc4, 0x94, 0x4e, 0x83, 0x87, 0xe0, 0x5c, 0x11, 0x7e, 0x72, 0xda, + 0x1e, 0xc0, 0x3e, 0x2f, +}; +static const struct drbg_kat_pr_true kat3428_t = { + 7, kat3428_entropyin, kat3428_nonce, kat3428_persstr, + kat3428_entropyinpr1, kat3428_addinpr1, kat3428_entropyinpr2, + kat3428_addinpr2, kat3428_retbits +}; +static const struct drbg_kat kat3428 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3428_t +}; + +static const unsigned char kat3429_entropyin[] = { + 0x71, 0x6e, 0x01, 0x98, 0x50, 0xe8, 0xb1, 0x65, 0xcf, 0x11, 0x79, 0x64, + 0x0a, 0xa5, 0x3e, 0x11, 0x44, 0x4e, 0x79, 0x11, 0x12, 0xb2, 0xa9, 0x0f, + 0x71, 0xc5, 0x49, 0x73, 0xd5, 0xb3, 0xe1, 0x01, +}; +static const unsigned char kat3429_nonce[] = { + 0x83, 0xc8, 0xab, 0x39, 0x8d, 0x26, 0x3d, 0x73, 0xad, 0xdb, 0x87, 0x54, + 0x0e, 0xdc, 0xf5, 0x70, +}; +static const unsigned char kat3429_persstr[] = {0}; +static const unsigned char kat3429_entropyinpr1[] = { + 0x67, 0x87, 0xb4, 0xd8, 0x7d, 0x97, 0xac, 0xe3, 0x5a, 0x92, 0x6f, 0xf2, + 0xf0, 0x42, 0xc3, 0x11, 0x6c, 0xa6, 0x67, 0x55, 0x78, 0x4f, 0x8d, 0x30, + 0xbf, 0x0d, 0xaf, 0x12, 0x6e, 0x27, 0x13, 0xcb, +}; +static const unsigned char kat3429_addinpr1[] = {0}; +static const unsigned char kat3429_entropyinpr2[] = { + 0xf3, 0x9d, 0x11, 0xaa, 0x64, 0x89, 0x12, 0x3e, 0xf7, 0x47, 0x82, 0xe2, + 0x1f, 0x73, 0x16, 0xa4, 0x9e, 0x30, 0xe7, 0x29, 0x43, 0x17, 0x2a, 0x02, + 0xfb, 0x75, 0xad, 0xa3, 0xbb, 0x8e, 0x27, 0xb4, +}; +static const unsigned char kat3429_addinpr2[] = {0}; +static const unsigned char kat3429_retbits[] = { + 0xa8, 0xe7, 0xb8, 0x3c, 0x29, 0x50, 0x58, 0x71, 0xd4, 0xee, 0x4f, 0xcd, + 0x21, 0xc9, 0x75, 0x69, 0x6d, 0xf4, 0xdd, 0xfb, 0x4e, 0x94, 0x61, 0x15, + 0x2e, 0x14, 0x2d, 0x31, 0x1e, 0xaa, 0x92, 0xc4, 0xb0, 0xba, 0x53, 0xb1, + 0xf6, 0xac, 0x71, 0x60, 0xe6, 0xf1, 0x0f, 0x2d, 0x0c, 0xc8, 0xe6, 0x7d, + 0x76, 0xb0, 0xd3, 0x21, 0x89, 0x26, 0x10, 0x1f, 0xd6, 0x61, 0x2b, 0xd7, + 0x6e, 0x4b, 0xa3, 0xee, +}; +static const struct drbg_kat_pr_true kat3429_t = { + 8, kat3429_entropyin, kat3429_nonce, kat3429_persstr, + kat3429_entropyinpr1, kat3429_addinpr1, kat3429_entropyinpr2, + kat3429_addinpr2, kat3429_retbits +}; +static const struct drbg_kat kat3429 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3429_t +}; + +static const unsigned char kat3430_entropyin[] = { + 0xb0, 0x42, 0xdf, 0xad, 0x33, 0xcd, 0xd7, 0x94, 0x91, 0x60, 0x23, 0x32, + 0xd6, 0x5d, 0x3d, 0xbe, 0x32, 0x44, 0xac, 0x73, 0x9d, 0xbe, 0xc7, 0x63, + 0xc7, 0xdd, 0x6b, 0x85, 0xe5, 0x96, 0xd7, 0x8a, +}; +static const unsigned char kat3430_nonce[] = { + 0x8c, 0x56, 0x3c, 0x61, 0x21, 0x84, 0x8f, 0x1e, 0x1a, 0x24, 0x54, 0x97, + 0x6b, 0x9d, 0x3d, 0xad, +}; +static const unsigned char kat3430_persstr[] = {0}; +static const unsigned char kat3430_entropyinpr1[] = { + 0x21, 0xd6, 0x82, 0x6c, 0x08, 0x05, 0x38, 0x48, 0xf8, 0xf7, 0x9a, 0xd3, + 0x25, 0x79, 0xe1, 0x37, 0xbf, 0x42, 0x37, 0x9d, 0x27, 0xf1, 0x29, 0xc5, + 0x7d, 0xfe, 0x68, 0xc4, 0xae, 0xdc, 0x82, 0xae, +}; +static const unsigned char kat3430_addinpr1[] = {0}; +static const unsigned char kat3430_entropyinpr2[] = { + 0xac, 0xa4, 0x2d, 0xd1, 0x66, 0xd9, 0x09, 0xa5, 0x23, 0x8c, 0x43, 0x0f, + 0x00, 0x33, 0x1b, 0x74, 0x25, 0x1b, 0xfc, 0x20, 0xd3, 0x87, 0x55, 0x36, + 0xa3, 0xf5, 0x87, 0xc4, 0x11, 0x99, 0x43, 0x04, +}; +static const unsigned char kat3430_addinpr2[] = {0}; +static const unsigned char kat3430_retbits[] = { + 0x95, 0x94, 0xe0, 0x62, 0xcc, 0xfe, 0x43, 0xa5, 0xcb, 0xea, 0x55, 0x6b, + 0xb8, 0x79, 0xb7, 0x8f, 0xe1, 0x72, 0x5b, 0xa1, 0xcb, 0xcc, 0x0d, 0x75, + 0x39, 0x97, 0x09, 0x7e, 0x93, 0x05, 0xe6, 0x79, 0xb2, 0x93, 0x39, 0xf2, + 0x81, 0x11, 0xe4, 0xc1, 0x37, 0xc9, 0xe6, 0x13, 0x8e, 0xdd, 0xb7, 0x94, + 0x3a, 0x4f, 0x14, 0x6c, 0x97, 0x33, 0xa0, 0x60, 0xeb, 0xa0, 0x97, 0x9b, + 0x04, 0x9a, 0xab, 0x70, +}; +static const struct drbg_kat_pr_true kat3430_t = { + 9, kat3430_entropyin, kat3430_nonce, kat3430_persstr, + kat3430_entropyinpr1, kat3430_addinpr1, kat3430_entropyinpr2, + kat3430_addinpr2, kat3430_retbits +}; +static const struct drbg_kat kat3430 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3430_t +}; + +static const unsigned char kat3431_entropyin[] = { + 0x88, 0x4a, 0xce, 0x7e, 0x14, 0x80, 0x18, 0x2c, 0xb4, 0x4d, 0xe6, 0x1f, + 0x14, 0x8e, 0xb1, 0xd1, 0x68, 0x9c, 0x02, 0x39, 0x50, 0x2f, 0x6c, 0x6c, + 0x5c, 0xf3, 0x6b, 0xa3, 0x3a, 0x70, 0x4a, 0x5a, +}; +static const unsigned char kat3431_nonce[] = { + 0xe8, 0x7b, 0x3b, 0x0f, 0x5d, 0x0b, 0xda, 0xa2, 0x42, 0x6b, 0x93, 0xdd, + 0x8f, 0x43, 0x6a, 0x02, +}; +static const unsigned char kat3431_persstr[] = {0}; +static const unsigned char kat3431_entropyinpr1[] = { + 0xee, 0x4f, 0x97, 0x6d, 0x9c, 0x5f, 0xd7, 0xf4, 0xb1, 0x40, 0x32, 0x6a, + 0x1b, 0x30, 0xcf, 0xf2, 0x6b, 0x33, 0xdd, 0xa3, 0x4c, 0xbe, 0x74, 0x46, + 0x78, 0x95, 0x75, 0x0a, 0x6b, 0x2a, 0x82, 0x2e, +}; +static const unsigned char kat3431_addinpr1[] = {0}; +static const unsigned char kat3431_entropyinpr2[] = { + 0x6e, 0x5c, 0x6d, 0x10, 0xf4, 0x99, 0xbc, 0x5d, 0xde, 0x08, 0x1f, 0x89, + 0x5d, 0x17, 0x55, 0x3a, 0xb3, 0x73, 0x2d, 0x64, 0x95, 0xfa, 0x9c, 0x9a, + 0x75, 0x4e, 0xfa, 0x17, 0x61, 0x47, 0x2d, 0xa2, +}; +static const unsigned char kat3431_addinpr2[] = {0}; +static const unsigned char kat3431_retbits[] = { + 0x56, 0x8f, 0xf9, 0xdd, 0xec, 0x1f, 0x0a, 0x7a, 0x88, 0x57, 0xa5, 0xbe, + 0xef, 0xa2, 0xfa, 0x54, 0x3c, 0x42, 0x2a, 0xd2, 0x1c, 0xc3, 0xd8, 0x40, + 0x47, 0x94, 0x22, 0x89, 0x0f, 0x86, 0x84, 0x65, 0x19, 0x1d, 0x86, 0xa6, + 0x16, 0x70, 0xc5, 0xe7, 0x1b, 0x60, 0x3b, 0xe1, 0xca, 0xbb, 0x88, 0xef, + 0x54, 0xc5, 0xc2, 0xe4, 0xca, 0xf4, 0xf0, 0xdc, 0xae, 0xae, 0x56, 0xd1, + 0x83, 0xf8, 0x44, 0x61, +}; +static const struct drbg_kat_pr_true kat3431_t = { + 10, kat3431_entropyin, kat3431_nonce, kat3431_persstr, + kat3431_entropyinpr1, kat3431_addinpr1, kat3431_entropyinpr2, + kat3431_addinpr2, kat3431_retbits +}; +static const struct drbg_kat kat3431 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3431_t +}; + +static const unsigned char kat3432_entropyin[] = { + 0xa6, 0xf6, 0x08, 0xd8, 0x6e, 0xc7, 0xd9, 0x10, 0x52, 0x30, 0x3e, 0xd0, + 0xba, 0x48, 0x0a, 0x76, 0xe7, 0xca, 0x22, 0x96, 0x19, 0x3b, 0x27, 0x67, + 0xd3, 0x99, 0x16, 0xf6, 0x46, 0x0b, 0x5e, 0x76, +}; +static const unsigned char kat3432_nonce[] = { + 0x02, 0x45, 0x34, 0xfc, 0xe0, 0xd3, 0x98, 0xf8, 0xaa, 0x1f, 0x2e, 0x8c, + 0xef, 0x69, 0x05, 0x60, +}; +static const unsigned char kat3432_persstr[] = {0}; +static const unsigned char kat3432_entropyinpr1[] = { + 0x3b, 0x25, 0x6e, 0xd3, 0xbf, 0xdd, 0xc3, 0xad, 0x92, 0xdc, 0xb0, 0xb6, + 0xd5, 0x18, 0x4e, 0x9b, 0xaf, 0x26, 0x7d, 0x50, 0xce, 0x9b, 0x26, 0xf3, + 0x09, 0x59, 0x26, 0x58, 0xc5, 0xd2, 0x2c, 0x79, +}; +static const unsigned char kat3432_addinpr1[] = {0}; +static const unsigned char kat3432_entropyinpr2[] = { + 0x43, 0x4f, 0xb5, 0xa6, 0x28, 0xe9, 0x17, 0x70, 0x9c, 0x42, 0x0b, 0x2b, + 0xd4, 0xba, 0xc3, 0x5f, 0x44, 0xf7, 0xb4, 0xd8, 0xab, 0xcc, 0xc7, 0x63, + 0xa4, 0x9a, 0x31, 0x89, 0x91, 0xbe, 0xb8, 0xcd, +}; +static const unsigned char kat3432_addinpr2[] = {0}; +static const unsigned char kat3432_retbits[] = { + 0x1c, 0x6a, 0xd9, 0xd8, 0x29, 0x4a, 0x45, 0xb8, 0x84, 0x7c, 0x86, 0x6a, + 0x9c, 0x44, 0x60, 0x2e, 0x01, 0x8e, 0x5d, 0x47, 0x4e, 0x50, 0x3d, 0xb8, + 0xe8, 0xec, 0x3d, 0x95, 0xdb, 0x9e, 0x93, 0xad, 0x19, 0x17, 0x22, 0x8f, + 0x17, 0x00, 0x37, 0xbe, 0x93, 0x70, 0x2e, 0x90, 0x6b, 0x4a, 0xf3, 0x6b, + 0x8b, 0xc7, 0xfc, 0x8b, 0x9f, 0x25, 0x1e, 0x48, 0x68, 0x2c, 0x50, 0x10, + 0x1c, 0xb1, 0xc5, 0x11, +}; +static const struct drbg_kat_pr_true kat3432_t = { + 11, kat3432_entropyin, kat3432_nonce, kat3432_persstr, + kat3432_entropyinpr1, kat3432_addinpr1, kat3432_entropyinpr2, + kat3432_addinpr2, kat3432_retbits +}; +static const struct drbg_kat kat3432 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3432_t +}; + +static const unsigned char kat3433_entropyin[] = { + 0x3a, 0x6a, 0xfa, 0x1b, 0xf6, 0x74, 0x6d, 0x0d, 0xb3, 0x61, 0xbf, 0x5d, + 0xae, 0x97, 0x4a, 0xf8, 0x1e, 0x0e, 0x54, 0xde, 0xa2, 0xdd, 0x3b, 0xba, + 0x8b, 0x20, 0x06, 0x9a, 0x53, 0x44, 0xc8, 0xe7, +}; +static const unsigned char kat3433_nonce[] = { + 0xbe, 0x77, 0x0b, 0x94, 0x4e, 0x23, 0x21, 0x35, 0x29, 0x93, 0xae, 0x6d, + 0x29, 0xe6, 0xfa, 0x3c, +}; +static const unsigned char kat3433_persstr[] = {0}; +static const unsigned char kat3433_entropyinpr1[] = { + 0x6d, 0xa6, 0x0c, 0x74, 0x48, 0xb0, 0x2b, 0xc4, 0xd8, 0xe2, 0x2a, 0x69, + 0xc9, 0xb7, 0x4a, 0xfc, 0xac, 0xcc, 0x43, 0xf3, 0x18, 0xc5, 0x1e, 0x53, + 0xed, 0x9f, 0xe1, 0xf3, 0xca, 0x04, 0xe2, 0xa5, +}; +static const unsigned char kat3433_addinpr1[] = {0}; +static const unsigned char kat3433_entropyinpr2[] = { + 0xf7, 0x46, 0x2f, 0x1e, 0x71, 0x6e, 0x61, 0x61, 0x37, 0x49, 0x80, 0x76, + 0x46, 0x47, 0x27, 0xb7, 0x1c, 0x96, 0x85, 0x10, 0x2f, 0x45, 0x8e, 0x75, + 0x87, 0xb6, 0xa8, 0x68, 0x0d, 0xf7, 0xc7, 0xe8, +}; +static const unsigned char kat3433_addinpr2[] = {0}; +static const unsigned char kat3433_retbits[] = { + 0x3b, 0x83, 0x3e, 0x50, 0x60, 0xce, 0xbe, 0x4b, 0x01, 0xf4, 0x66, 0x48, + 0xca, 0x29, 0x6c, 0x35, 0xed, 0x6a, 0x61, 0x96, 0xb2, 0xe7, 0xd1, 0x0e, + 0xad, 0x88, 0xe9, 0x79, 0xce, 0x8c, 0xd0, 0x0d, 0xae, 0xc3, 0xfe, 0x78, + 0x8e, 0xcf, 0x4e, 0xd2, 0x4e, 0x25, 0xf1, 0xb0, 0x43, 0x73, 0x19, 0x1c, + 0x55, 0x0a, 0x25, 0x44, 0x2a, 0xc5, 0x4c, 0x9e, 0x30, 0x90, 0x94, 0x06, + 0x3b, 0x96, 0x6a, 0xb3, +}; +static const struct drbg_kat_pr_true kat3433_t = { + 12, kat3433_entropyin, kat3433_nonce, kat3433_persstr, + kat3433_entropyinpr1, kat3433_addinpr1, kat3433_entropyinpr2, + kat3433_addinpr2, kat3433_retbits +}; +static const struct drbg_kat kat3433 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3433_t +}; + +static const unsigned char kat3434_entropyin[] = { + 0xbf, 0x1d, 0xa6, 0x80, 0xa6, 0x4d, 0x30, 0xe1, 0x92, 0x4f, 0x53, 0x06, + 0x74, 0x23, 0xf3, 0xf4, 0x64, 0x8e, 0x4d, 0x62, 0xd0, 0xab, 0x80, 0x52, + 0xd6, 0x9c, 0x82, 0x40, 0x45, 0x5f, 0xec, 0x57, +}; +static const unsigned char kat3434_nonce[] = { + 0x68, 0xb1, 0x88, 0x74, 0x5c, 0x7d, 0xcb, 0x94, 0x6e, 0x22, 0x02, 0x49, + 0xa4, 0xa0, 0x2b, 0x84, +}; +static const unsigned char kat3434_persstr[] = {0}; +static const unsigned char kat3434_entropyinpr1[] = { + 0xc4, 0x60, 0x22, 0x9e, 0x1c, 0x2b, 0x73, 0x3e, 0x5b, 0x0b, 0x04, 0x75, + 0x8b, 0xaa, 0xef, 0xd8, 0x2b, 0x92, 0xa9, 0x53, 0x14, 0x6b, 0xcd, 0xfb, + 0xfa, 0x8c, 0x1c, 0x76, 0x41, 0x8a, 0xfb, 0xd5, +}; +static const unsigned char kat3434_addinpr1[] = {0}; +static const unsigned char kat3434_entropyinpr2[] = { + 0x3f, 0xcf, 0x43, 0xba, 0x5b, 0x0c, 0x47, 0x09, 0x89, 0x1a, 0xbd, 0x94, + 0x05, 0x25, 0xe3, 0xa6, 0xe7, 0x51, 0xa5, 0xd7, 0x2f, 0x2e, 0xe3, 0xd6, + 0xc5, 0x37, 0xab, 0xa7, 0x49, 0xda, 0x43, 0x8c, +}; +static const unsigned char kat3434_addinpr2[] = {0}; +static const unsigned char kat3434_retbits[] = { + 0x46, 0x80, 0xbe, 0x15, 0x18, 0x89, 0x5e, 0xc0, 0x02, 0x58, 0xa8, 0x77, + 0xdb, 0xec, 0xa7, 0x41, 0x34, 0x14, 0x09, 0x98, 0x4f, 0x73, 0x49, 0x99, + 0x2e, 0xef, 0x6c, 0x2a, 0xb4, 0x36, 0xe0, 0x0e, 0xec, 0xc1, 0x3c, 0xcb, + 0x65, 0xa1, 0xcb, 0x2b, 0xf4, 0xe0, 0x7e, 0xe6, 0x70, 0x80, 0x02, 0x9f, + 0x42, 0xb2, 0x28, 0xe6, 0xef, 0xa0, 0xa7, 0x42, 0x3d, 0xde, 0xaa, 0x5d, + 0xdf, 0x28, 0x07, 0xfb, +}; +static const struct drbg_kat_pr_true kat3434_t = { + 13, kat3434_entropyin, kat3434_nonce, kat3434_persstr, + kat3434_entropyinpr1, kat3434_addinpr1, kat3434_entropyinpr2, + kat3434_addinpr2, kat3434_retbits +}; +static const struct drbg_kat kat3434 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3434_t +}; + +static const unsigned char kat3435_entropyin[] = { + 0x2a, 0x29, 0x88, 0x03, 0x21, 0x24, 0x86, 0xea, 0xbd, 0x8d, 0x36, 0x4d, + 0xc6, 0x2e, 0x8c, 0x05, 0x17, 0x14, 0xa7, 0x44, 0x90, 0x0e, 0xa1, 0xfe, + 0xb1, 0x57, 0xfd, 0x7a, 0x63, 0xc2, 0x6a, 0x17, +}; +static const unsigned char kat3435_nonce[] = { + 0xba, 0x8f, 0xab, 0xb4, 0xb7, 0x8f, 0xd1, 0x88, 0x66, 0x21, 0x0c, 0xb5, + 0x23, 0x5d, 0xbf, 0xda, +}; +static const unsigned char kat3435_persstr[] = {0}; +static const unsigned char kat3435_entropyinpr1[] = { + 0xea, 0x6e, 0xec, 0x8f, 0x32, 0xb4, 0x40, 0xbe, 0x68, 0xb3, 0xb0, 0x23, + 0x71, 0xfc, 0xbe, 0x1e, 0x6f, 0xdf, 0xe6, 0xd3, 0x5a, 0x9f, 0x86, 0x7a, + 0xc5, 0xaa, 0xb2, 0x97, 0xd4, 0x26, 0x31, 0x00, +}; +static const unsigned char kat3435_addinpr1[] = {0}; +static const unsigned char kat3435_entropyinpr2[] = { + 0xa7, 0x90, 0x86, 0xf9, 0x39, 0xb9, 0x3a, 0x8a, 0xbb, 0xa0, 0x4d, 0x74, + 0x16, 0xd4, 0xd6, 0x2d, 0x37, 0xf3, 0x07, 0x9d, 0x2e, 0xcb, 0x1a, 0xf9, + 0x23, 0xf4, 0xf8, 0x14, 0xdd, 0x57, 0x23, 0x7c, +}; +static const unsigned char kat3435_addinpr2[] = {0}; +static const unsigned char kat3435_retbits[] = { + 0x77, 0xf4, 0xda, 0xf2, 0x5c, 0x97, 0x40, 0xfc, 0x3c, 0x66, 0x80, 0x33, + 0x57, 0x84, 0x2b, 0xb7, 0x4b, 0xba, 0xb9, 0x11, 0xe7, 0x81, 0x87, 0x95, + 0x3d, 0xb6, 0x7f, 0xef, 0x93, 0xfe, 0xcd, 0x28, 0x28, 0x0d, 0xcb, 0x21, + 0xf7, 0x50, 0x63, 0xe3, 0xe8, 0x89, 0x22, 0x8c, 0x0e, 0x65, 0x87, 0x84, + 0x93, 0xa3, 0x9e, 0x1c, 0xea, 0x95, 0x61, 0xfb, 0x01, 0x5f, 0xbe, 0x44, + 0xad, 0x85, 0xb2, 0x61, +}; +static const struct drbg_kat_pr_true kat3435_t = { + 14, kat3435_entropyin, kat3435_nonce, kat3435_persstr, + kat3435_entropyinpr1, kat3435_addinpr1, kat3435_entropyinpr2, + kat3435_addinpr2, kat3435_retbits +}; +static const struct drbg_kat kat3435 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3435_t +}; + +static const unsigned char kat3436_entropyin[] = { + 0x4e, 0x07, 0x0b, 0x3f, 0xac, 0xe0, 0x97, 0xf9, 0x97, 0xd0, 0xd0, 0xeb, + 0xd4, 0x51, 0x3c, 0xdd, 0x66, 0x3d, 0x2c, 0x21, 0x49, 0x73, 0xd1, 0xd4, + 0x69, 0xa1, 0xd1, 0x8f, 0xcd, 0x23, 0x72, 0x39, +}; +static const unsigned char kat3436_nonce[] = { + 0xf5, 0x1b, 0xd6, 0xbc, 0x3a, 0x10, 0xf1, 0x06, 0x5c, 0x67, 0x16, 0x73, + 0x80, 0x15, 0x9c, 0xf5, +}; +static const unsigned char kat3436_persstr[] = {0}; +static const unsigned char kat3436_entropyinpr1[] = { + 0xd3, 0xbe, 0xab, 0x10, 0x44, 0xea, 0xe2, 0x8c, 0x3c, 0x72, 0xea, 0xee, + 0xe5, 0xf0, 0xda, 0xc4, 0xb8, 0x1e, 0x70, 0xc0, 0xa5, 0x88, 0x4e, 0x94, + 0x0d, 0xef, 0x6d, 0x9b, 0xca, 0x09, 0x2e, 0x18, +}; +static const unsigned char kat3436_addinpr1[] = { + 0x75, 0xc0, 0x70, 0x45, 0xb2, 0xd9, 0x6a, 0xa1, 0x23, 0xd6, 0x57, 0xc0, + 0x89, 0x47, 0x68, 0xb7, 0xe5, 0xf9, 0xb4, 0x05, 0xbf, 0x2c, 0xde, 0xea, + 0xa6, 0x20, 0xfd, 0x1b, 0x5c, 0x52, 0xf0, 0x2f, +}; +static const unsigned char kat3436_entropyinpr2[] = { + 0xb6, 0x19, 0xd7, 0x94, 0x6d, 0x9d, 0x91, 0x26, 0x32, 0x8f, 0xab, 0x95, + 0x9e, 0x60, 0xbb, 0xbc, 0x78, 0xff, 0x27, 0xa7, 0x01, 0xd9, 0x98, 0x44, + 0x1a, 0x60, 0xdc, 0x59, 0xc3, 0x9d, 0xe6, 0x02, +}; +static const unsigned char kat3436_addinpr2[] = { + 0x5c, 0xfb, 0xec, 0x3d, 0xb9, 0x29, 0x7e, 0xc5, 0x6b, 0xa3, 0xd4, 0x3b, + 0x41, 0x37, 0xb9, 0xc7, 0x85, 0x37, 0x1c, 0x3c, 0xa4, 0xe9, 0xd8, 0x4c, + 0x17, 0x02, 0x90, 0x82, 0x2c, 0xc0, 0x3a, 0x52, +}; +static const unsigned char kat3436_retbits[] = { + 0xb4, 0xc8, 0xee, 0xf1, 0x98, 0xc4, 0xee, 0x1b, 0x0d, 0xde, 0xe1, 0x61, + 0xd0, 0x37, 0x31, 0x70, 0x46, 0xc0, 0x5c, 0x09, 0x51, 0x22, 0x3f, 0x8a, + 0x03, 0xe2, 0x3c, 0xc0, 0x44, 0x04, 0xfe, 0x9d, 0xec, 0x08, 0x9c, 0xb6, + 0x1d, 0x1f, 0xb2, 0x86, 0xf7, 0x75, 0xb2, 0xb9, 0x2c, 0x51, 0x4f, 0x2e, + 0xf2, 0x1a, 0xfd, 0x28, 0x5f, 0x15, 0xa9, 0xb7, 0x62, 0x1d, 0xed, 0x0e, + 0x6c, 0x1b, 0xff, 0xb6, +}; +static const struct drbg_kat_pr_true kat3436_t = { + 0, kat3436_entropyin, kat3436_nonce, kat3436_persstr, + kat3436_entropyinpr1, kat3436_addinpr1, kat3436_entropyinpr2, + kat3436_addinpr2, kat3436_retbits +}; +static const struct drbg_kat kat3436 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3436_t +}; + +static const unsigned char kat3437_entropyin[] = { + 0x51, 0xe9, 0xe0, 0x03, 0x5a, 0xcb, 0xf4, 0x83, 0x75, 0x0b, 0x9f, 0xbd, + 0xf2, 0xe3, 0x55, 0x5c, 0x07, 0xc0, 0x7b, 0xc8, 0xfb, 0x5d, 0xae, 0xca, + 0x91, 0xf0, 0xf8, 0xa1, 0xb1, 0x7f, 0x01, 0x39, +}; +static const unsigned char kat3437_nonce[] = { + 0xab, 0xd3, 0x73, 0xa5, 0xcf, 0x3c, 0x21, 0xe6, 0x92, 0xef, 0x81, 0x39, + 0xc0, 0xcd, 0x42, 0xb3, +}; +static const unsigned char kat3437_persstr[] = {0}; +static const unsigned char kat3437_entropyinpr1[] = { + 0xbf, 0x53, 0x30, 0x1f, 0x80, 0x49, 0x13, 0xbe, 0x3d, 0xfc, 0x6e, 0x04, + 0x10, 0x9a, 0xd9, 0x0e, 0xb9, 0xa9, 0x62, 0xa2, 0x92, 0x28, 0xe5, 0x8b, + 0xca, 0x12, 0xe1, 0x33, 0x9a, 0xf2, 0xf6, 0xea, +}; +static const unsigned char kat3437_addinpr1[] = { + 0xcd, 0x1f, 0x82, 0x4b, 0xd3, 0x8d, 0x70, 0xca, 0xa5, 0x60, 0xe1, 0xb4, + 0x0f, 0xd0, 0x86, 0xc1, 0x07, 0xa3, 0x5b, 0x50, 0x3c, 0xdb, 0x16, 0xd9, + 0x91, 0x5b, 0xc5, 0xaf, 0x85, 0x29, 0x6e, 0x21, +}; +static const unsigned char kat3437_entropyinpr2[] = { + 0x75, 0x3d, 0xc1, 0x5a, 0x9e, 0x00, 0x7e, 0xf7, 0x55, 0x83, 0xd8, 0x30, + 0xde, 0xb6, 0x6c, 0x3e, 0xd6, 0x7e, 0xf7, 0xe8, 0x85, 0x7f, 0xe1, 0x9e, + 0xea, 0x15, 0xa3, 0x09, 0x47, 0xec, 0x1c, 0x5f, +}; +static const unsigned char kat3437_addinpr2[] = { + 0xa5, 0x16, 0xb3, 0x1d, 0x2d, 0x71, 0x2f, 0xf7, 0xc7, 0xb4, 0x41, 0x77, + 0x62, 0x65, 0x1e, 0xad, 0x78, 0x7a, 0x49, 0xe6, 0x25, 0xc9, 0xc1, 0x95, + 0xa5, 0x52, 0x2b, 0x8d, 0x2e, 0xaf, 0x8c, 0x77, +}; +static const unsigned char kat3437_retbits[] = { + 0x98, 0x23, 0x4d, 0x6e, 0xe8, 0xec, 0x6e, 0x02, 0x73, 0x10, 0xe9, 0x49, + 0x31, 0x14, 0xce, 0x3c, 0x11, 0x8b, 0x37, 0xb7, 0xff, 0x52, 0xe8, 0x23, + 0x51, 0xd5, 0x15, 0xcf, 0xa1, 0x1e, 0x1f, 0x4f, 0x4d, 0xc2, 0x0f, 0xe3, + 0x5b, 0xed, 0x87, 0xe4, 0x22, 0x12, 0x23, 0xcf, 0xae, 0x97, 0xb5, 0x6f, + 0xe4, 0xf9, 0xa9, 0xbc, 0x7b, 0x1e, 0x33, 0xca, 0x86, 0x3a, 0x71, 0x89, + 0x8a, 0x70, 0x5a, 0x0f, +}; +static const struct drbg_kat_pr_true kat3437_t = { + 1, kat3437_entropyin, kat3437_nonce, kat3437_persstr, + kat3437_entropyinpr1, kat3437_addinpr1, kat3437_entropyinpr2, + kat3437_addinpr2, kat3437_retbits +}; +static const struct drbg_kat kat3437 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3437_t +}; + +static const unsigned char kat3438_entropyin[] = { + 0x52, 0xf0, 0xc7, 0xd3, 0x37, 0x57, 0x96, 0x08, 0x75, 0x39, 0xb0, 0xb0, + 0x5c, 0xa1, 0xd1, 0x14, 0xad, 0xa6, 0x4d, 0x6e, 0x42, 0x3d, 0xbc, 0xa9, + 0xe9, 0x7e, 0x1d, 0xc2, 0x8a, 0x7f, 0x0b, 0xa2, +}; +static const unsigned char kat3438_nonce[] = { + 0x4e, 0xf3, 0xac, 0x8f, 0x75, 0x72, 0x5e, 0xbe, 0x25, 0x35, 0x28, 0x53, + 0x77, 0x40, 0x58, 0xfc, +}; +static const unsigned char kat3438_persstr[] = {0}; +static const unsigned char kat3438_entropyinpr1[] = { + 0xf7, 0x02, 0x75, 0x20, 0x0f, 0x74, 0xb9, 0x9b, 0xa4, 0xae, 0x7a, 0xd5, + 0xd2, 0xb1, 0x2e, 0x8a, 0x70, 0x48, 0x1a, 0x8a, 0xd5, 0x24, 0x37, 0xfa, + 0x65, 0x26, 0xd0, 0xd1, 0xc3, 0xf2, 0x21, 0x1a, +}; +static const unsigned char kat3438_addinpr1[] = { + 0xfe, 0x06, 0x13, 0x66, 0xfa, 0xa5, 0x04, 0x44, 0x32, 0x1d, 0x30, 0x53, + 0x29, 0xbb, 0x6f, 0x40, 0x2a, 0x37, 0x3d, 0x15, 0x69, 0x88, 0xd5, 0x09, + 0xad, 0xc3, 0x89, 0x66, 0x45, 0xba, 0x03, 0xf3, +}; +static const unsigned char kat3438_entropyinpr2[] = { + 0xd8, 0xc3, 0x85, 0x68, 0x5b, 0xe1, 0x3c, 0x47, 0xdc, 0xbc, 0x15, 0x55, + 0x67, 0x0f, 0xb3, 0x83, 0xf9, 0xea, 0xeb, 0x03, 0x3e, 0x39, 0x0b, 0x38, + 0x84, 0x6f, 0x4c, 0xcd, 0x77, 0xf4, 0xec, 0x9c, +}; +static const unsigned char kat3438_addinpr2[] = { + 0xca, 0xad, 0x68, 0x8b, 0xa6, 0x7b, 0x63, 0xd9, 0xda, 0x82, 0x9e, 0xd8, + 0x49, 0x74, 0xf5, 0xec, 0x09, 0x21, 0xb5, 0xec, 0x59, 0x55, 0x53, 0x4f, + 0x0b, 0x9b, 0xff, 0xce, 0xad, 0x9c, 0x34, 0xde, +}; +static const unsigned char kat3438_retbits[] = { + 0xd6, 0x25, 0x22, 0x89, 0x2a, 0xf5, 0x3a, 0x57, 0xbb, 0x2d, 0x70, 0xf6, + 0x1c, 0xc4, 0x35, 0x7d, 0x85, 0x93, 0x5f, 0x23, 0x4a, 0x42, 0xf9, 0x88, + 0xc5, 0x1d, 0xf4, 0xf0, 0x29, 0x9d, 0x42, 0xf4, 0x00, 0xa8, 0xd2, 0x11, + 0xae, 0x98, 0xcb, 0xdb, 0x92, 0xbc, 0x3b, 0x3d, 0x5c, 0xe5, 0x6e, 0xf8, + 0x62, 0x8f, 0xa2, 0x0e, 0x25, 0x84, 0xf4, 0x81, 0x1e, 0x30, 0x02, 0xfe, + 0xfa, 0x49, 0x7c, 0x86, +}; +static const struct drbg_kat_pr_true kat3438_t = { + 2, kat3438_entropyin, kat3438_nonce, kat3438_persstr, + kat3438_entropyinpr1, kat3438_addinpr1, kat3438_entropyinpr2, + kat3438_addinpr2, kat3438_retbits +}; +static const struct drbg_kat kat3438 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3438_t +}; + +static const unsigned char kat3439_entropyin[] = { + 0x8c, 0xdc, 0x9b, 0xd9, 0x9e, 0x2e, 0x85, 0x20, 0x86, 0x14, 0xd4, 0x47, + 0x3a, 0xcc, 0x51, 0x89, 0x9e, 0xbb, 0x2d, 0x4d, 0x8c, 0x3b, 0xc2, 0xbe, + 0x97, 0x4f, 0x12, 0x1e, 0x01, 0x2c, 0x06, 0xd3, +}; +static const unsigned char kat3439_nonce[] = { + 0x5d, 0xfd, 0x4a, 0x5d, 0x66, 0xae, 0xd5, 0x40, 0x67, 0xcf, 0x1c, 0x4f, + 0x74, 0x41, 0xd5, 0x3e, +}; +static const unsigned char kat3439_persstr[] = {0}; +static const unsigned char kat3439_entropyinpr1[] = { + 0x67, 0x0b, 0x1e, 0x22, 0xea, 0x4d, 0x55, 0x01, 0xa4, 0xa9, 0xfd, 0xe4, + 0xce, 0x76, 0x5e, 0xec, 0x72, 0xd2, 0x09, 0x02, 0x13, 0x2a, 0xc8, 0x57, + 0xc3, 0xb6, 0xe7, 0x34, 0x3f, 0xe9, 0x69, 0x17, +}; +static const unsigned char kat3439_addinpr1[] = { + 0x10, 0xef, 0x15, 0x42, 0x72, 0x3d, 0x99, 0x79, 0x77, 0x72, 0xe9, 0xbb, + 0xc4, 0x9d, 0x6a, 0x4b, 0x53, 0x3b, 0x55, 0xfd, 0xe8, 0x2b, 0x8f, 0x00, + 0x67, 0x63, 0x16, 0x61, 0xd3, 0x05, 0xa0, 0x4e, +}; +static const unsigned char kat3439_entropyinpr2[] = { + 0xd3, 0x5a, 0x3a, 0x62, 0x01, 0x35, 0xd2, 0x47, 0xce, 0x05, 0x9e, 0x42, + 0xa4, 0x31, 0x3e, 0x33, 0x55, 0x23, 0x80, 0x42, 0xde, 0x1f, 0x7d, 0x3d, + 0x13, 0xac, 0x36, 0x51, 0x47, 0xae, 0x40, 0x46, +}; +static const unsigned char kat3439_addinpr2[] = { + 0xc8, 0x45, 0xc1, 0xd3, 0xe4, 0x27, 0x59, 0x4c, 0x48, 0xf0, 0xa3, 0xa9, + 0x74, 0x7f, 0x74, 0x66, 0x07, 0x66, 0xb8, 0xfa, 0x9c, 0xe6, 0xe1, 0x4e, + 0xd5, 0xec, 0x94, 0x1c, 0xa0, 0x54, 0x76, 0xef, +}; +static const unsigned char kat3439_retbits[] = { + 0x27, 0xa2, 0x5b, 0x87, 0x53, 0x92, 0xf5, 0x0f, 0xaf, 0xf4, 0x01, 0xf3, + 0x70, 0xc5, 0x0b, 0xdb, 0xab, 0x97, 0xd2, 0x0d, 0x94, 0x17, 0xec, 0xdd, + 0xf0, 0x91, 0xa1, 0x3c, 0x80, 0x54, 0x66, 0x55, 0x89, 0x9b, 0x5c, 0xe7, + 0x04, 0x83, 0x9f, 0x0b, 0xb8, 0x73, 0xdf, 0x66, 0x65, 0xe6, 0x8b, 0x02, + 0xb7, 0xd6, 0x4e, 0x7c, 0xa6, 0xdb, 0xb1, 0xd6, 0xac, 0x52, 0xa1, 0x7a, + 0xef, 0xcd, 0x88, 0x28, +}; +static const struct drbg_kat_pr_true kat3439_t = { + 3, kat3439_entropyin, kat3439_nonce, kat3439_persstr, + kat3439_entropyinpr1, kat3439_addinpr1, kat3439_entropyinpr2, + kat3439_addinpr2, kat3439_retbits +}; +static const struct drbg_kat kat3439 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3439_t +}; + +static const unsigned char kat3440_entropyin[] = { + 0x99, 0xf6, 0x24, 0x09, 0x47, 0x1b, 0xa1, 0x1b, 0x8b, 0x58, 0x0c, 0x8b, + 0xfb, 0x28, 0x5a, 0x0f, 0xa4, 0xad, 0x2e, 0xa0, 0xaa, 0x6d, 0x7e, 0x85, + 0xa4, 0xdd, 0x1e, 0xfb, 0x5b, 0xa1, 0x62, 0x95, +}; +static const unsigned char kat3440_nonce[] = { + 0x22, 0x1c, 0x0b, 0xf1, 0x20, 0x83, 0xdd, 0xb9, 0xa0, 0xe9, 0x4a, 0xbd, + 0x88, 0x86, 0x21, 0xad, +}; +static const unsigned char kat3440_persstr[] = {0}; +static const unsigned char kat3440_entropyinpr1[] = { + 0xc2, 0x6b, 0x82, 0x2e, 0xcd, 0xcd, 0xbb, 0x0d, 0xe8, 0x2a, 0x02, 0x30, + 0xe1, 0xfd, 0xc2, 0x7e, 0x9b, 0xac, 0x45, 0xb7, 0xb1, 0x68, 0xf8, 0x4b, + 0xf4, 0x51, 0x06, 0xb3, 0x2b, 0x14, 0x97, 0xb3, +}; +static const unsigned char kat3440_addinpr1[] = { + 0xf2, 0xfe, 0xf7, 0x86, 0x7d, 0x85, 0xc8, 0x8f, 0x19, 0x80, 0x20, 0x0d, + 0x42, 0xcf, 0xe4, 0x65, 0x93, 0xc7, 0x0f, 0xc8, 0x84, 0xf4, 0x7d, 0x9c, + 0x82, 0xc7, 0x7e, 0x27, 0x95, 0xbc, 0xbb, 0xe6, +}; +static const unsigned char kat3440_entropyinpr2[] = { + 0xb2, 0x2c, 0x9f, 0xcb, 0x28, 0x27, 0x3f, 0xfa, 0x5b, 0xad, 0xd8, 0x19, + 0xf8, 0xdb, 0x22, 0xe7, 0xca, 0xec, 0x78, 0x94, 0x1d, 0x58, 0xac, 0xad, + 0xa1, 0x3e, 0xb8, 0xd1, 0xfc, 0x11, 0xd0, 0xe2, +}; +static const unsigned char kat3440_addinpr2[] = { + 0x19, 0x53, 0x4c, 0xa0, 0xc2, 0x4d, 0xf8, 0x9a, 0x48, 0x29, 0xa9, 0x86, + 0x29, 0xc8, 0xd6, 0x30, 0x2a, 0x34, 0xc7, 0x9f, 0xf5, 0x41, 0x4d, 0x56, + 0xb5, 0x26, 0x2e, 0xfe, 0x94, 0x7b, 0x6d, 0xfd, +}; +static const unsigned char kat3440_retbits[] = { + 0xbb, 0x6d, 0x3a, 0x40, 0xce, 0x87, 0xa8, 0xa3, 0x6c, 0x08, 0xb4, 0x2f, + 0x1d, 0xed, 0xf0, 0x2b, 0x79, 0x9e, 0xd0, 0x96, 0x58, 0x8d, 0xdc, 0x55, + 0x43, 0x6a, 0xdc, 0x8e, 0x1f, 0xf8, 0x25, 0x4a, 0xe2, 0xb3, 0x0c, 0x7f, + 0xe1, 0xeb, 0x33, 0x5e, 0xbe, 0xd9, 0xf4, 0x64, 0x77, 0x91, 0x8e, 0x7e, + 0x15, 0xc4, 0x2a, 0x83, 0x48, 0x32, 0x7e, 0x1e, 0xf8, 0x25, 0x59, 0x0c, + 0x10, 0xb5, 0x66, 0x5d, +}; +static const struct drbg_kat_pr_true kat3440_t = { + 4, kat3440_entropyin, kat3440_nonce, kat3440_persstr, + kat3440_entropyinpr1, kat3440_addinpr1, kat3440_entropyinpr2, + kat3440_addinpr2, kat3440_retbits +}; +static const struct drbg_kat kat3440 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3440_t +}; + +static const unsigned char kat3441_entropyin[] = { + 0xe1, 0xe9, 0x28, 0x03, 0x1b, 0x60, 0x45, 0x79, 0xa8, 0x21, 0x15, 0x55, + 0x5c, 0x4e, 0x66, 0x4f, 0x50, 0x77, 0xda, 0xba, 0x5b, 0x65, 0x8f, 0xc3, + 0xde, 0x0e, 0xb0, 0x01, 0xed, 0x2e, 0x35, 0x7d, +}; +static const unsigned char kat3441_nonce[] = { + 0xab, 0xf2, 0x56, 0x3d, 0xf0, 0x3a, 0x25, 0x32, 0x73, 0xe4, 0x17, 0x0c, + 0x21, 0xdb, 0x7a, 0xfb, +}; +static const unsigned char kat3441_persstr[] = {0}; +static const unsigned char kat3441_entropyinpr1[] = { + 0x12, 0x98, 0x90, 0x6c, 0x23, 0xfd, 0x10, 0x32, 0x12, 0x4e, 0x6c, 0xee, + 0x3c, 0x9f, 0x1b, 0x6f, 0x44, 0xda, 0xfd, 0xe3, 0x06, 0x4f, 0xa0, 0x99, + 0x3f, 0x5c, 0xf5, 0x96, 0x55, 0xc9, 0x75, 0x1c, +}; +static const unsigned char kat3441_addinpr1[] = { + 0x81, 0x00, 0x8e, 0xef, 0x04, 0x68, 0x6a, 0x88, 0x2a, 0x6e, 0x89, 0x5d, + 0x2b, 0xea, 0xad, 0x0a, 0xf7, 0xfd, 0x90, 0x6d, 0xd0, 0x2b, 0xd9, 0x10, + 0xb5, 0x09, 0x51, 0xc6, 0x51, 0x51, 0x5f, 0xf1, +}; +static const unsigned char kat3441_entropyinpr2[] = { + 0x1a, 0xdf, 0x9a, 0x7e, 0xfb, 0x6e, 0x2d, 0xa2, 0xfd, 0x0c, 0xff, 0x19, + 0xd6, 0x22, 0xb4, 0xb5, 0xcc, 0xed, 0x2d, 0x98, 0x2b, 0x38, 0x59, 0xe4, + 0x74, 0xda, 0xe8, 0x51, 0x9d, 0xa2, 0x37, 0x62, +}; +static const unsigned char kat3441_addinpr2[] = { + 0xfb, 0xb8, 0xce, 0xe0, 0xc7, 0xbb, 0x23, 0xba, 0x35, 0x21, 0x1e, 0x4d, + 0xe9, 0x9f, 0xc7, 0xd4, 0xe0, 0xac, 0xc1, 0x22, 0xdc, 0xf0, 0x5e, 0x65, + 0x7a, 0x33, 0x7f, 0x3c, 0x99, 0xc3, 0x37, 0x58, +}; +static const unsigned char kat3441_retbits[] = { + 0xe5, 0x99, 0x55, 0xdd, 0x62, 0x91, 0x80, 0xfc, 0xea, 0x95, 0x0b, 0x6d, + 0xbc, 0x20, 0xae, 0xce, 0xd7, 0xab, 0xa5, 0x4b, 0x06, 0x54, 0x9c, 0x56, + 0xa3, 0xae, 0xc4, 0xc9, 0x8b, 0xdf, 0x06, 0xbf, 0xd3, 0x03, 0xb1, 0x07, + 0x54, 0xfd, 0x0b, 0x61, 0xd5, 0xe4, 0x02, 0x04, 0xd9, 0xfb, 0x9e, 0x5e, + 0x3d, 0xd5, 0x34, 0xe2, 0x8d, 0x68, 0x3f, 0xe0, 0x61, 0xd1, 0xbc, 0x3d, + 0xda, 0xc8, 0x04, 0xcf, +}; +static const struct drbg_kat_pr_true kat3441_t = { + 5, kat3441_entropyin, kat3441_nonce, kat3441_persstr, + kat3441_entropyinpr1, kat3441_addinpr1, kat3441_entropyinpr2, + kat3441_addinpr2, kat3441_retbits +}; +static const struct drbg_kat kat3441 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3441_t +}; + +static const unsigned char kat3442_entropyin[] = { + 0x8b, 0x14, 0xd0, 0xe4, 0x2d, 0x71, 0x2d, 0x4b, 0x4b, 0x77, 0xa9, 0x6d, + 0x62, 0x93, 0xff, 0xed, 0x15, 0xb0, 0xb9, 0xb4, 0x83, 0x1a, 0x67, 0x6a, + 0xac, 0x23, 0x5a, 0x25, 0x64, 0xcd, 0x33, 0x00, +}; +static const unsigned char kat3442_nonce[] = { + 0xe0, 0x44, 0x20, 0x66, 0x5b, 0xd5, 0x68, 0x14, 0x0b, 0xe7, 0xf2, 0x15, + 0x48, 0x97, 0xf5, 0x35, +}; +static const unsigned char kat3442_persstr[] = {0}; +static const unsigned char kat3442_entropyinpr1[] = { + 0x5f, 0xda, 0x24, 0xff, 0xd2, 0x95, 0x3c, 0xe2, 0x47, 0x34, 0xd1, 0x30, + 0xf9, 0x05, 0x9a, 0xea, 0x83, 0x24, 0x9c, 0xe0, 0xf4, 0x6b, 0xf7, 0x2a, + 0xd3, 0xad, 0xf9, 0x72, 0xf9, 0x86, 0x2f, 0x3a, +}; +static const unsigned char kat3442_addinpr1[] = { + 0x36, 0xb9, 0x63, 0xc4, 0xc7, 0x34, 0x09, 0x03, 0xb0, 0xc7, 0x55, 0x1d, + 0xcb, 0x21, 0x97, 0xc4, 0x93, 0xbc, 0xb6, 0x58, 0x93, 0xaf, 0xa3, 0x38, + 0x28, 0x4f, 0x74, 0xe7, 0xae, 0xd9, 0xd6, 0x30, +}; +static const unsigned char kat3442_entropyinpr2[] = { + 0xe6, 0x1c, 0xa7, 0x1b, 0x4b, 0x24, 0x49, 0xa6, 0xd5, 0xb1, 0x5f, 0xc2, + 0x8f, 0x56, 0x33, 0xcf, 0x48, 0x53, 0x92, 0x37, 0x08, 0x3d, 0x53, 0xa2, + 0x5e, 0x59, 0x7f, 0x7b, 0x55, 0xde, 0x65, 0xf0, +}; +static const unsigned char kat3442_addinpr2[] = { + 0x2a, 0xe2, 0x50, 0x42, 0x26, 0x49, 0xac, 0x67, 0xdc, 0x55, 0x9a, 0x41, + 0xfa, 0x18, 0x8a, 0x4e, 0x31, 0x3b, 0x4a, 0x02, 0x8e, 0x90, 0x9f, 0xcf, + 0xdc, 0xc0, 0xe3, 0xd9, 0xde, 0x5c, 0x9a, 0xe8, +}; +static const unsigned char kat3442_retbits[] = { + 0xc8, 0x99, 0x0d, 0xda, 0x05, 0xbb, 0xb7, 0xbd, 0xb8, 0x2b, 0xf6, 0xca, + 0x89, 0xc7, 0x01, 0x44, 0x5e, 0x9b, 0x94, 0x4c, 0x79, 0x85, 0x92, 0x1a, + 0x18, 0xc0, 0x90, 0x09, 0x97, 0x91, 0xe3, 0xae, 0xa4, 0x5f, 0x9f, 0x84, + 0x3c, 0x3c, 0x9a, 0x28, 0xf5, 0x7c, 0x21, 0x8e, 0x04, 0x23, 0xdf, 0x2a, + 0x60, 0x38, 0x10, 0xe9, 0xc2, 0x57, 0x6e, 0x1b, 0xe5, 0x03, 0xef, 0x02, + 0x7a, 0xaf, 0x5d, 0x20, +}; +static const struct drbg_kat_pr_true kat3442_t = { + 6, kat3442_entropyin, kat3442_nonce, kat3442_persstr, + kat3442_entropyinpr1, kat3442_addinpr1, kat3442_entropyinpr2, + kat3442_addinpr2, kat3442_retbits +}; +static const struct drbg_kat kat3442 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3442_t +}; + +static const unsigned char kat3443_entropyin[] = { + 0xe1, 0x8e, 0x5e, 0x0f, 0xbd, 0x42, 0xd2, 0xc6, 0xaf, 0x77, 0x90, 0x82, + 0x2c, 0x6d, 0xbf, 0x5a, 0x49, 0x2e, 0x52, 0x63, 0xb1, 0x42, 0x25, 0xbe, + 0x31, 0xe3, 0x85, 0x5b, 0x95, 0xe1, 0xb7, 0x08, +}; +static const unsigned char kat3443_nonce[] = { + 0xab, 0x75, 0xe9, 0xfc, 0xf3, 0x3b, 0xb1, 0x51, 0xca, 0x6e, 0x22, 0xcf, + 0x13, 0x78, 0x84, 0x99, +}; +static const unsigned char kat3443_persstr[] = {0}; +static const unsigned char kat3443_entropyinpr1[] = { + 0xb9, 0x58, 0x4c, 0x80, 0x24, 0x56, 0x03, 0xaf, 0x87, 0x04, 0x61, 0x2d, + 0xe2, 0x4e, 0xfb, 0x48, 0x16, 0x29, 0xb4, 0x97, 0x73, 0x56, 0x59, 0xd3, + 0x00, 0xa8, 0x31, 0xa4, 0x59, 0x79, 0x57, 0x27, +}; +static const unsigned char kat3443_addinpr1[] = { + 0x45, 0x5a, 0x9b, 0xe0, 0x4d, 0xcd, 0x77, 0x80, 0x3e, 0xb3, 0xec, 0x3a, + 0xe5, 0x5a, 0xcf, 0x09, 0x19, 0x16, 0x51, 0x61, 0xcb, 0x38, 0x14, 0xf7, + 0x6f, 0xf6, 0x7f, 0x48, 0xbb, 0x51, 0x6c, 0xc8, +}; +static const unsigned char kat3443_entropyinpr2[] = { + 0x5f, 0x6c, 0xa9, 0xd8, 0x35, 0x9d, 0x4d, 0x1d, 0x04, 0x50, 0x42, 0xd1, + 0xbb, 0xf9, 0x6e, 0xf8, 0xc2, 0xc8, 0x33, 0x25, 0x04, 0x0b, 0x79, 0xc6, + 0x6a, 0x3d, 0xaa, 0xf7, 0x81, 0xfd, 0xea, 0xbe, +}; +static const unsigned char kat3443_addinpr2[] = { + 0xc1, 0xef, 0xe0, 0xc5, 0x01, 0xb5, 0xfc, 0xf2, 0x4d, 0x2e, 0x9f, 0x02, + 0x16, 0xd7, 0x9b, 0xf9, 0x63, 0x70, 0x3c, 0x43, 0x9c, 0x41, 0x7d, 0x0f, + 0x40, 0x14, 0xfa, 0xd5, 0xdc, 0xa8, 0xee, 0x6d, +}; +static const unsigned char kat3443_retbits[] = { + 0x02, 0xb6, 0x03, 0xcb, 0x68, 0x39, 0x0c, 0x94, 0x59, 0x1a, 0x00, 0x74, + 0xe5, 0x0c, 0x32, 0xc7, 0x5a, 0x40, 0x98, 0x2d, 0x9d, 0x92, 0xf8, 0x50, + 0x1b, 0x20, 0x05, 0x59, 0xd1, 0x4f, 0xbb, 0x03, 0x6e, 0x10, 0xdf, 0xe3, + 0xaa, 0x06, 0xc3, 0x4a, 0x42, 0xfb, 0x51, 0x97, 0xe7, 0xa3, 0x44, 0xc0, + 0x4c, 0xbf, 0x1c, 0xe7, 0x2b, 0x69, 0xde, 0x01, 0xd9, 0x70, 0x82, 0x4a, + 0x3c, 0xa0, 0x5d, 0x03, +}; +static const struct drbg_kat_pr_true kat3443_t = { + 7, kat3443_entropyin, kat3443_nonce, kat3443_persstr, + kat3443_entropyinpr1, kat3443_addinpr1, kat3443_entropyinpr2, + kat3443_addinpr2, kat3443_retbits +}; +static const struct drbg_kat kat3443 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3443_t +}; + +static const unsigned char kat3444_entropyin[] = { + 0x60, 0x02, 0x64, 0x10, 0x66, 0xd9, 0x49, 0x86, 0x8b, 0x63, 0xb1, 0x5e, + 0x20, 0x1b, 0x3f, 0x89, 0x96, 0x9a, 0x27, 0xf2, 0xdb, 0xc6, 0xdb, 0xcf, + 0x0a, 0x7d, 0x98, 0xc4, 0x66, 0x6e, 0xf7, 0xcf, +}; +static const unsigned char kat3444_nonce[] = { + 0xe6, 0xb5, 0x48, 0x8d, 0xa0, 0xa9, 0x0d, 0x41, 0xa3, 0xc2, 0xbf, 0x91, + 0x29, 0x34, 0xe7, 0xf6, +}; +static const unsigned char kat3444_persstr[] = {0}; +static const unsigned char kat3444_entropyinpr1[] = { + 0x95, 0x5d, 0x24, 0xbf, 0x4d, 0x19, 0x27, 0xe2, 0x95, 0x75, 0x6e, 0x49, + 0x5d, 0xb9, 0x49, 0x98, 0xd2, 0xfb, 0x89, 0xec, 0xcb, 0x9d, 0x8b, 0x96, + 0x5f, 0xf8, 0xe3, 0xf9, 0xce, 0xc2, 0xb9, 0x62, +}; +static const unsigned char kat3444_addinpr1[] = { + 0x11, 0x69, 0xcc, 0x97, 0xfd, 0x71, 0xb3, 0xa8, 0x21, 0xa6, 0x05, 0x9e, + 0x37, 0x4b, 0x4b, 0x96, 0x6a, 0x85, 0x7c, 0x28, 0x44, 0x9a, 0x33, 0xae, + 0x26, 0x5b, 0xbb, 0x50, 0xb3, 0xcd, 0x92, 0xb9, +}; +static const unsigned char kat3444_entropyinpr2[] = { + 0x43, 0x21, 0xc4, 0x14, 0xda, 0xf7, 0xb1, 0x6d, 0x1c, 0x7d, 0xa7, 0x2f, + 0x58, 0x25, 0x62, 0x71, 0x56, 0x1e, 0x13, 0xa4, 0xb2, 0x32, 0x5d, 0xcb, + 0xdb, 0x91, 0x27, 0x4f, 0x65, 0x96, 0x0e, 0xcb, +}; +static const unsigned char kat3444_addinpr2[] = { + 0xab, 0xec, 0xfd, 0x41, 0xbc, 0x3b, 0x67, 0x9b, 0x25, 0xa9, 0x83, 0x13, + 0x14, 0xb3, 0x30, 0x26, 0xd6, 0x23, 0x09, 0xb5, 0xb4, 0x13, 0xc6, 0xb5, + 0x3f, 0x54, 0x98, 0x5e, 0xcf, 0x7f, 0xfa, 0x55, +}; +static const unsigned char kat3444_retbits[] = { + 0x51, 0x5e, 0x68, 0x95, 0xf5, 0x46, 0x96, 0xe7, 0x21, 0x9e, 0x29, 0xd5, + 0x36, 0xda, 0x24, 0xa1, 0x80, 0x54, 0xf4, 0x29, 0xa6, 0x73, 0xeb, 0xfb, + 0x9e, 0x30, 0xc1, 0xde, 0x7f, 0x03, 0x5b, 0x48, 0x5f, 0x59, 0x1f, 0x73, + 0x64, 0x8c, 0xde, 0xeb, 0xd8, 0x89, 0x16, 0x4e, 0x80, 0x36, 0x9d, 0xae, + 0x8d, 0x9e, 0xbf, 0xb7, 0x76, 0xe3, 0xa5, 0x7e, 0xd6, 0xd5, 0x86, 0x58, + 0x7a, 0x0f, 0x72, 0x43, +}; +static const struct drbg_kat_pr_true kat3444_t = { + 8, kat3444_entropyin, kat3444_nonce, kat3444_persstr, + kat3444_entropyinpr1, kat3444_addinpr1, kat3444_entropyinpr2, + kat3444_addinpr2, kat3444_retbits +}; +static const struct drbg_kat kat3444 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3444_t +}; + +static const unsigned char kat3445_entropyin[] = { + 0xa4, 0x54, 0x3e, 0x2c, 0xb2, 0xaa, 0xa8, 0xce, 0x94, 0x72, 0x67, 0xbc, + 0xbd, 0x7a, 0x4d, 0x50, 0x71, 0xa8, 0x07, 0x29, 0xad, 0x86, 0x88, 0x3d, + 0x54, 0x57, 0xe3, 0x9d, 0xbc, 0xa7, 0x2d, 0x3e, +}; +static const unsigned char kat3445_nonce[] = { + 0xf5, 0x47, 0x63, 0xd1, 0x34, 0x76, 0xfc, 0x49, 0x39, 0x3d, 0x23, 0xbc, + 0x25, 0xc7, 0x9d, 0x19, +}; +static const unsigned char kat3445_persstr[] = {0}; +static const unsigned char kat3445_entropyinpr1[] = { + 0x3d, 0x22, 0xbc, 0x6b, 0x2d, 0xc5, 0x91, 0x86, 0xb7, 0x24, 0xfb, 0x1b, + 0x37, 0xfe, 0xcb, 0x3b, 0xd3, 0x8c, 0x49, 0xf7, 0xbd, 0xa5, 0xbd, 0x01, + 0xf1, 0xc8, 0x7d, 0x28, 0x6c, 0xe2, 0x8b, 0xee, +}; +static const unsigned char kat3445_addinpr1[] = { + 0xe6, 0x92, 0x69, 0x53, 0x0f, 0xeb, 0xb9, 0xef, 0xef, 0x40, 0x55, 0xbe, + 0x7f, 0xee, 0xaf, 0x52, 0xaf, 0xe2, 0xe5, 0x5d, 0xd8, 0xb6, 0x16, 0xd5, + 0x26, 0x2c, 0x86, 0xf3, 0x7a, 0xef, 0xac, 0xcd, +}; +static const unsigned char kat3445_entropyinpr2[] = { + 0x1d, 0x46, 0x11, 0x3d, 0x77, 0xa6, 0x64, 0x1f, 0xb1, 0xe7, 0xbf, 0xad, + 0x8d, 0x45, 0x68, 0xbf, 0x4c, 0xf9, 0x91, 0xce, 0x39, 0xe5, 0x58, 0xd1, + 0xd9, 0xb6, 0xa0, 0x43, 0x9e, 0x23, 0x12, 0x34, +}; +static const unsigned char kat3445_addinpr2[] = { + 0x68, 0x8f, 0x47, 0x37, 0xba, 0x45, 0x17, 0x07, 0x84, 0xd3, 0xe0, 0xc0, + 0xee, 0x98, 0x20, 0xb5, 0x38, 0x07, 0xaf, 0x66, 0x47, 0x95, 0x9d, 0xbe, + 0x39, 0x40, 0x4e, 0x07, 0x4b, 0x54, 0xe1, 0x76, +}; +static const unsigned char kat3445_retbits[] = { + 0xe6, 0x1f, 0x54, 0x8b, 0x05, 0x3a, 0x30, 0x35, 0xfa, 0xa8, 0xf0, 0xcc, + 0xf8, 0xa3, 0xc4, 0x2a, 0x67, 0xfe, 0x89, 0xdc, 0xa0, 0x4f, 0x9a, 0xbc, + 0x6e, 0x31, 0xd2, 0xc5, 0xad, 0x85, 0xb6, 0x85, 0xd8, 0x31, 0xfa, 0xb0, + 0x6b, 0x75, 0x2e, 0xad, 0xa3, 0x77, 0x6d, 0x1f, 0x3b, 0x71, 0x45, 0x21, + 0xc2, 0xe0, 0x0b, 0xde, 0x18, 0x50, 0xe1, 0x58, 0x78, 0x51, 0x3a, 0x9d, + 0x50, 0x2c, 0x0e, 0xda, +}; +static const struct drbg_kat_pr_true kat3445_t = { + 9, kat3445_entropyin, kat3445_nonce, kat3445_persstr, + kat3445_entropyinpr1, kat3445_addinpr1, kat3445_entropyinpr2, + kat3445_addinpr2, kat3445_retbits +}; +static const struct drbg_kat kat3445 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3445_t +}; + +static const unsigned char kat3446_entropyin[] = { + 0x27, 0xf2, 0x62, 0x11, 0xf9, 0x8b, 0xf2, 0x27, 0xe0, 0xa1, 0xcf, 0x1b, + 0x0e, 0x88, 0x8f, 0x9b, 0x44, 0x2a, 0x48, 0x64, 0xd3, 0x37, 0xb2, 0x34, + 0xd4, 0xf9, 0x47, 0xde, 0xe7, 0x3a, 0x31, 0x27, +}; +static const unsigned char kat3446_nonce[] = { + 0xca, 0x2a, 0x52, 0x17, 0x0f, 0x82, 0xb9, 0x44, 0x9b, 0x65, 0x21, 0x72, + 0xc2, 0x6e, 0x9d, 0x26, +}; +static const unsigned char kat3446_persstr[] = {0}; +static const unsigned char kat3446_entropyinpr1[] = { + 0x5b, 0x78, 0x24, 0x12, 0xd1, 0xe4, 0x33, 0x6a, 0xcc, 0xff, 0x10, 0x78, + 0x60, 0xdc, 0xa2, 0xa5, 0xd9, 0xc8, 0x0f, 0x1e, 0x15, 0xbc, 0xcb, 0xe7, + 0xbc, 0xbd, 0x80, 0x17, 0x2f, 0xd9, 0xd2, 0x6c, +}; +static const unsigned char kat3446_addinpr1[] = { + 0xb7, 0x43, 0xcb, 0x78, 0x9b, 0xe9, 0x4b, 0xc6, 0xbc, 0xbd, 0x44, 0xfa, + 0xf5, 0x2e, 0x0f, 0xcc, 0xfc, 0xfd, 0x58, 0xc5, 0x7b, 0xc6, 0xa1, 0x54, + 0x7e, 0xac, 0x40, 0x98, 0xf3, 0xdb, 0xf1, 0x89, +}; +static const unsigned char kat3446_entropyinpr2[] = { + 0x0d, 0x48, 0x58, 0x12, 0x0e, 0xb4, 0x4f, 0xd9, 0x08, 0xf9, 0x76, 0x2f, + 0xe7, 0x30, 0x6d, 0x52, 0x69, 0xcc, 0xa3, 0x04, 0xf7, 0x44, 0xce, 0xe3, + 0x92, 0xeb, 0xbf, 0x15, 0x00, 0x10, 0x6d, 0x86, +}; +static const unsigned char kat3446_addinpr2[] = { + 0x7a, 0x74, 0xb5, 0x4b, 0xef, 0x59, 0x0d, 0x6d, 0x3a, 0x54, 0x35, 0x35, + 0x44, 0xc6, 0x95, 0xe0, 0x07, 0x2f, 0xdf, 0xa5, 0x66, 0x7f, 0xf7, 0x6b, + 0x69, 0xf2, 0x84, 0xeb, 0xde, 0x05, 0x6d, 0x5e, +}; +static const unsigned char kat3446_retbits[] = { + 0x4e, 0xf8, 0xc3, 0x6e, 0xa7, 0x4a, 0x56, 0x7a, 0x59, 0xcd, 0x84, 0x1f, + 0x31, 0x50, 0x91, 0x79, 0x8d, 0xe4, 0x91, 0xce, 0x0a, 0x09, 0x66, 0xb3, + 0x4d, 0xde, 0xb3, 0x8b, 0xc0, 0xe1, 0xa9, 0x28, 0xc1, 0x1e, 0x85, 0xcf, + 0x13, 0x5d, 0x30, 0x96, 0xd2, 0xcc, 0x61, 0xdd, 0xb0, 0x42, 0x54, 0xa6, + 0x4b, 0x37, 0x3f, 0xbc, 0x6c, 0x43, 0x2a, 0x88, 0xa2, 0xb9, 0xf5, 0xc7, + 0x89, 0x38, 0x55, 0xa5, +}; +static const struct drbg_kat_pr_true kat3446_t = { + 10, kat3446_entropyin, kat3446_nonce, kat3446_persstr, + kat3446_entropyinpr1, kat3446_addinpr1, kat3446_entropyinpr2, + kat3446_addinpr2, kat3446_retbits +}; +static const struct drbg_kat kat3446 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3446_t +}; + +static const unsigned char kat3447_entropyin[] = { + 0x59, 0x9c, 0x6b, 0x73, 0x8e, 0x1f, 0x97, 0xd4, 0xc8, 0xdb, 0xf8, 0xab, + 0x76, 0xbb, 0xf6, 0xab, 0x04, 0x25, 0xaf, 0xbb, 0xe2, 0xa3, 0xd9, 0xfe, + 0xec, 0xc4, 0xb1, 0xb0, 0x3b, 0x70, 0xe5, 0x85, +}; +static const unsigned char kat3447_nonce[] = { + 0xb9, 0x00, 0x88, 0x9f, 0x58, 0x3c, 0x25, 0xda, 0x9e, 0x52, 0x4f, 0xc8, + 0x65, 0x79, 0x28, 0x47, +}; +static const unsigned char kat3447_persstr[] = {0}; +static const unsigned char kat3447_entropyinpr1[] = { + 0xb3, 0x81, 0xba, 0xa2, 0x1a, 0xac, 0xcd, 0x1e, 0xbb, 0x8e, 0xa0, 0xcd, + 0x33, 0x7b, 0x06, 0x06, 0xd5, 0x09, 0x8f, 0x35, 0xc8, 0x06, 0xa7, 0xd9, + 0x1a, 0xde, 0x94, 0xdb, 0xd6, 0xaf, 0xd7, 0x16, +}; +static const unsigned char kat3447_addinpr1[] = { + 0x4c, 0xa8, 0xa7, 0x8c, 0x10, 0xf5, 0x25, 0x65, 0xac, 0xcf, 0xe9, 0xd8, + 0x1e, 0xac, 0x03, 0x4c, 0x82, 0xfc, 0xa9, 0x4a, 0x20, 0x26, 0x43, 0x63, + 0x8c, 0x77, 0xb3, 0x7b, 0x66, 0x0a, 0x25, 0xa9, +}; +static const unsigned char kat3447_entropyinpr2[] = { + 0xb1, 0x6a, 0xe7, 0xa5, 0x15, 0xec, 0xe2, 0x56, 0x8e, 0x2e, 0xd5, 0xe4, + 0x28, 0xb9, 0xab, 0xd0, 0x9e, 0xd1, 0xaa, 0x1c, 0xf5, 0x1c, 0x08, 0x49, + 0x15, 0x14, 0xd6, 0x8c, 0x86, 0x9d, 0xbb, 0xd6, +}; +static const unsigned char kat3447_addinpr2[] = { + 0x07, 0xce, 0xb0, 0xae, 0x35, 0xcb, 0x05, 0x93, 0x48, 0xf4, 0x43, 0xa0, + 0xef, 0x1a, 0x5d, 0x34, 0x02, 0xa2, 0x90, 0xb6, 0xf5, 0xc9, 0x3b, 0x93, + 0x46, 0xd4, 0x5f, 0xd6, 0x77, 0x59, 0x1f, 0x80, +}; +static const unsigned char kat3447_retbits[] = { + 0xce, 0x3f, 0x0a, 0xe6, 0x24, 0x62, 0x7d, 0x0b, 0x8e, 0x26, 0xcd, 0xcb, + 0x6e, 0x59, 0x9f, 0x11, 0x1a, 0xd4, 0xfe, 0xe1, 0xdd, 0x14, 0xa9, 0xe6, + 0x92, 0x3c, 0x57, 0x65, 0xfa, 0x71, 0xce, 0xd5, 0x5f, 0x82, 0x06, 0xc4, + 0xbd, 0xf7, 0xcb, 0x37, 0xf3, 0xda, 0x11, 0xf0, 0x7c, 0x61, 0x65, 0x03, + 0x33, 0x8c, 0x0c, 0x86, 0x67, 0xed, 0xf6, 0xdf, 0x2f, 0xb1, 0x7f, 0xc7, + 0x5f, 0xad, 0xf7, 0xb3, +}; +static const struct drbg_kat_pr_true kat3447_t = { + 11, kat3447_entropyin, kat3447_nonce, kat3447_persstr, + kat3447_entropyinpr1, kat3447_addinpr1, kat3447_entropyinpr2, + kat3447_addinpr2, kat3447_retbits +}; +static const struct drbg_kat kat3447 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3447_t +}; + +static const unsigned char kat3448_entropyin[] = { + 0x2b, 0x15, 0x9e, 0xf3, 0x19, 0xf9, 0xcc, 0xd3, 0xa8, 0x98, 0x5c, 0x9d, + 0x32, 0x7f, 0xa8, 0x80, 0x39, 0x33, 0xf4, 0x0e, 0x05, 0x0d, 0xcf, 0x6a, + 0x28, 0xeb, 0xf4, 0x21, 0xa7, 0x2c, 0x46, 0x36, +}; +static const unsigned char kat3448_nonce[] = { + 0x34, 0x12, 0x5e, 0x45, 0xf1, 0x6b, 0x50, 0x7c, 0xa3, 0x62, 0xfd, 0x6f, + 0xea, 0xe8, 0x8f, 0xd8, +}; +static const unsigned char kat3448_persstr[] = {0}; +static const unsigned char kat3448_entropyinpr1[] = { + 0x27, 0x4a, 0x3e, 0x2c, 0x5e, 0x66, 0x42, 0xee, 0x43, 0x41, 0xc2, 0xaa, + 0x04, 0x43, 0xa0, 0xed, 0x77, 0x48, 0x63, 0xed, 0x49, 0xd5, 0x22, 0x96, + 0x4a, 0x21, 0x45, 0xe9, 0x99, 0xf8, 0xa1, 0xbc, +}; +static const unsigned char kat3448_addinpr1[] = { + 0x7c, 0x7c, 0x5d, 0xce, 0x2d, 0x42, 0x58, 0x75, 0x51, 0x84, 0xcc, 0x6c, + 0x50, 0x9e, 0xae, 0x29, 0x41, 0xf8, 0xb9, 0xb3, 0x22, 0xaf, 0xd6, 0xb9, + 0x7c, 0xcb, 0x12, 0xd9, 0xde, 0x8d, 0x0c, 0xf9, +}; +static const unsigned char kat3448_entropyinpr2[] = { + 0x7f, 0x98, 0x39, 0xbc, 0x7f, 0xfc, 0x59, 0xb6, 0x80, 0xc2, 0xcd, 0xc9, + 0x2d, 0x36, 0x89, 0x94, 0x56, 0x2a, 0x66, 0xe2, 0x6f, 0xe5, 0x67, 0x16, + 0x9c, 0x71, 0x48, 0x70, 0x16, 0x34, 0x1b, 0xf3, +}; +static const unsigned char kat3448_addinpr2[] = { + 0xa6, 0xe7, 0x78, 0x90, 0x98, 0x2d, 0xd0, 0xb7, 0x4e, 0x98, 0xeb, 0xdc, + 0x70, 0x2b, 0xb6, 0x12, 0xa8, 0x2d, 0xb2, 0x4c, 0x11, 0x27, 0x3b, 0x25, + 0x64, 0x60, 0x7e, 0x96, 0xeb, 0x68, 0x8f, 0x33, +}; +static const unsigned char kat3448_retbits[] = { + 0xe1, 0x93, 0x41, 0x11, 0x1b, 0xb1, 0x0c, 0x29, 0x74, 0x3e, 0x48, 0xa7, + 0xf1, 0x44, 0xc1, 0xcd, 0xd6, 0xa2, 0x14, 0xa7, 0x7c, 0x4b, 0xb4, 0xc6, + 0x31, 0xb8, 0x8f, 0x07, 0x5c, 0xb6, 0xdf, 0x00, 0x36, 0xb0, 0x0a, 0x0d, + 0x59, 0x2b, 0x8a, 0xdb, 0xc2, 0x6b, 0x88, 0x44, 0x4c, 0x80, 0x27, 0xd0, + 0xf6, 0x8d, 0xc8, 0x01, 0x82, 0x15, 0x05, 0x38, 0xc7, 0x01, 0x8a, 0xf4, + 0xa4, 0xef, 0xeb, 0x09, +}; +static const struct drbg_kat_pr_true kat3448_t = { + 12, kat3448_entropyin, kat3448_nonce, kat3448_persstr, + kat3448_entropyinpr1, kat3448_addinpr1, kat3448_entropyinpr2, + kat3448_addinpr2, kat3448_retbits +}; +static const struct drbg_kat kat3448 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3448_t +}; + +static const unsigned char kat3449_entropyin[] = { + 0x1e, 0xa8, 0xfc, 0x3a, 0x49, 0x3c, 0xf6, 0x5b, 0x07, 0xf7, 0x33, 0xc7, + 0x6b, 0xf7, 0x64, 0x29, 0x79, 0xd5, 0x38, 0xf7, 0xe7, 0xef, 0x44, 0x37, + 0x3f, 0xf1, 0xef, 0x05, 0x55, 0xfc, 0x1b, 0x9e, +}; +static const unsigned char kat3449_nonce[] = { + 0xd8, 0x51, 0x08, 0x72, 0xa0, 0x69, 0xa2, 0xfd, 0x01, 0x62, 0xe0, 0x72, + 0x9c, 0x27, 0x34, 0x4c, +}; +static const unsigned char kat3449_persstr[] = {0}; +static const unsigned char kat3449_entropyinpr1[] = { + 0x82, 0x8b, 0x2f, 0x9e, 0xcd, 0xa5, 0x72, 0xf6, 0x64, 0x02, 0x88, 0x9d, + 0x10, 0x6c, 0xc3, 0x69, 0x9a, 0x80, 0x5d, 0xc4, 0x16, 0x27, 0xa2, 0xef, + 0x52, 0x5e, 0xdf, 0x10, 0xff, 0x53, 0x9f, 0x9c, +}; +static const unsigned char kat3449_addinpr1[] = { + 0x0f, 0x31, 0xb0, 0x35, 0x6f, 0x34, 0xa4, 0x49, 0xa0, 0x17, 0x4b, 0xc6, + 0x2b, 0x7d, 0xee, 0x5f, 0xbe, 0xd1, 0xec, 0x76, 0x95, 0xe8, 0x42, 0x5d, + 0x65, 0x87, 0x6d, 0x27, 0xfe, 0x67, 0xb6, 0x5b, +}; +static const unsigned char kat3449_entropyinpr2[] = { + 0x25, 0x3d, 0xd6, 0xf6, 0x92, 0x2f, 0x36, 0x86, 0xfe, 0x24, 0x71, 0xaf, + 0x07, 0x6a, 0x43, 0x9b, 0xb9, 0xba, 0xde, 0x05, 0xfb, 0x72, 0xc6, 0x4e, + 0x00, 0xc4, 0x5a, 0x03, 0x8a, 0xd0, 0xbe, 0xb0, +}; +static const unsigned char kat3449_addinpr2[] = { + 0x35, 0x24, 0x65, 0xe3, 0xd4, 0xbb, 0x4c, 0x14, 0xd3, 0xb8, 0x62, 0xbd, + 0xe4, 0x34, 0x65, 0xee, 0x88, 0xf1, 0x97, 0x29, 0x4b, 0xf7, 0xbe, 0x78, + 0x22, 0xaa, 0x56, 0xdb, 0xba, 0xef, 0x66, 0x56, +}; +static const unsigned char kat3449_retbits[] = { + 0xd7, 0x45, 0x7b, 0xc3, 0x05, 0xfa, 0x40, 0x84, 0x6d, 0x3e, 0x94, 0x29, + 0x9a, 0xdb, 0xb7, 0xe3, 0x39, 0xcd, 0x94, 0x90, 0xab, 0xdf, 0x8a, 0xec, + 0x1a, 0x03, 0x49, 0x49, 0x2b, 0xfe, 0xcc, 0xee, 0x5e, 0xe4, 0xd8, 0x20, + 0x3f, 0xae, 0xb0, 0x0c, 0xaa, 0x2d, 0xce, 0x0a, 0x61, 0x6e, 0xa3, 0x1a, + 0x63, 0x53, 0xee, 0xb7, 0x07, 0xc4, 0x76, 0xf3, 0xe0, 0xa5, 0x84, 0x7f, + 0xf4, 0x01, 0x46, 0x04, +}; +static const struct drbg_kat_pr_true kat3449_t = { + 13, kat3449_entropyin, kat3449_nonce, kat3449_persstr, + kat3449_entropyinpr1, kat3449_addinpr1, kat3449_entropyinpr2, + kat3449_addinpr2, kat3449_retbits +}; +static const struct drbg_kat kat3449 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3449_t +}; + +static const unsigned char kat3450_entropyin[] = { + 0x8f, 0x21, 0x15, 0xea, 0x7e, 0x25, 0x3d, 0x68, 0xa0, 0x20, 0xb7, 0xd1, + 0xb2, 0x9e, 0x2e, 0x89, 0xa9, 0x49, 0xff, 0x14, 0xbf, 0xa3, 0x3d, 0xb9, + 0xea, 0x73, 0x97, 0xbc, 0x10, 0x05, 0x13, 0x7a, +}; +static const unsigned char kat3450_nonce[] = { + 0xf0, 0xfd, 0xe3, 0xbe, 0xc8, 0x2a, 0x7a, 0xd4, 0x89, 0xfd, 0x14, 0x80, + 0x61, 0x39, 0xdc, 0x08, +}; +static const unsigned char kat3450_persstr[] = {0}; +static const unsigned char kat3450_entropyinpr1[] = { + 0x29, 0xde, 0x7b, 0x63, 0xd4, 0x21, 0xab, 0x69, 0x92, 0x20, 0xc8, 0x28, + 0xc7, 0x23, 0xdf, 0xcc, 0xc9, 0xf2, 0xa3, 0x7a, 0xd1, 0xe1, 0x97, 0x40, + 0x03, 0xf6, 0x00, 0xc4, 0x9a, 0x39, 0x98, 0xca, +}; +static const unsigned char kat3450_addinpr1[] = { + 0x72, 0xce, 0x1e, 0xff, 0x59, 0xf0, 0xd6, 0xc5, 0xd1, 0xaf, 0x10, 0x40, + 0x87, 0xa5, 0xca, 0xf1, 0xc9, 0x6f, 0x0d, 0x3e, 0xdd, 0xae, 0x97, 0x20, + 0x51, 0xec, 0x88, 0x47, 0x12, 0x7e, 0xfb, 0x2a, +}; +static const unsigned char kat3450_entropyinpr2[] = { + 0x2c, 0xe7, 0x76, 0xcc, 0x1b, 0xa0, 0x2a, 0xf9, 0x1c, 0x6c, 0x4f, 0xa1, + 0x0b, 0xd0, 0x41, 0x2b, 0x98, 0x1f, 0x2d, 0x78, 0x1a, 0x33, 0xde, 0x7e, + 0x4e, 0xd3, 0x44, 0xac, 0xca, 0x32, 0xfd, 0xae, +}; +static const unsigned char kat3450_addinpr2[] = { + 0x3d, 0x8c, 0x81, 0xed, 0x48, 0x21, 0xa2, 0xdd, 0xfe, 0x58, 0x86, 0x0f, + 0xa7, 0x52, 0x9d, 0x77, 0x86, 0xe6, 0x38, 0x98, 0x45, 0xa3, 0x7f, 0x04, + 0x76, 0xf1, 0x20, 0x78, 0xb4, 0x73, 0x0e, 0xd6, +}; +static const unsigned char kat3450_retbits[] = { + 0x18, 0xfe, 0xc5, 0x8f, 0x3a, 0x5d, 0x46, 0x33, 0x86, 0xc8, 0x9b, 0xb9, + 0xdc, 0xb9, 0xbe, 0xc4, 0x4f, 0x88, 0xfe, 0x42, 0xe7, 0xea, 0x82, 0x9b, + 0xe9, 0x1a, 0x92, 0xdc, 0x6a, 0xd9, 0xef, 0xc7, 0x8e, 0xb0, 0xe0, 0xfa, + 0x88, 0xb8, 0xb6, 0x90, 0xd8, 0xef, 0x8a, 0xf0, 0xe7, 0x9d, 0xff, 0x76, + 0x85, 0x75, 0x2b, 0xab, 0x9a, 0x3d, 0x55, 0xec, 0xbd, 0xc6, 0x41, 0x35, + 0xc1, 0xfe, 0x40, 0x83, +}; +static const struct drbg_kat_pr_true kat3450_t = { + 14, kat3450_entropyin, kat3450_nonce, kat3450_persstr, + kat3450_entropyinpr1, kat3450_addinpr1, kat3450_entropyinpr2, + kat3450_addinpr2, kat3450_retbits +}; +static const struct drbg_kat kat3450 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3450_t +}; + +static const unsigned char kat3451_entropyin[] = { + 0xb7, 0xc1, 0xd9, 0xee, 0xf9, 0x8d, 0x53, 0x70, 0x31, 0x37, 0xb4, 0xd9, + 0x1e, 0x86, 0xc5, 0x8d, 0x5b, 0x79, 0x1d, 0xc1, 0x97, 0x5b, 0xa5, 0xc2, + 0x08, 0x0a, 0x28, 0xdd, 0x2d, 0xdb, 0x2a, 0xe8, +}; +static const unsigned char kat3451_nonce[] = { + 0x05, 0xa9, 0xdd, 0xa0, 0x62, 0x88, 0x70, 0xaa, 0xa5, 0x26, 0xde, 0x69, + 0x5d, 0x1c, 0xd3, 0x63, +}; +static const unsigned char kat3451_persstr[] = { + 0x0b, 0x27, 0xf0, 0x80, 0x56, 0x3c, 0x26, 0x0c, 0xf7, 0x4c, 0xc8, 0x98, + 0x27, 0x66, 0x98, 0x5e, 0x1e, 0x3f, 0xd4, 0xd6, 0x04, 0x45, 0x81, 0xdf, + 0x83, 0xec, 0xb0, 0x8d, 0x7c, 0x4d, 0xb9, 0x26, +}; +static const unsigned char kat3451_entropyinpr1[] = { + 0xd3, 0x7a, 0x86, 0x71, 0x00, 0xb5, 0x11, 0xd3, 0x06, 0x3c, 0x5d, 0xad, + 0x39, 0xf3, 0xb8, 0x21, 0xa0, 0xfe, 0x9e, 0xcb, 0x1c, 0xd7, 0x64, 0xca, + 0xc2, 0xf5, 0x3a, 0xb3, 0xea, 0x3c, 0x66, 0x4b, +}; +static const unsigned char kat3451_addinpr1[] = {0}; +static const unsigned char kat3451_entropyinpr2[] = { + 0xfd, 0x8f, 0xbd, 0x84, 0xfb, 0x77, 0xe0, 0xd4, 0x6f, 0xa4, 0xc5, 0x24, + 0x7f, 0xa4, 0xfc, 0xc3, 0xf2, 0x35, 0x8a, 0x6f, 0x17, 0xd1, 0x7c, 0x95, + 0x09, 0xfd, 0x81, 0x4d, 0xec, 0x12, 0x06, 0xc6, +}; +static const unsigned char kat3451_addinpr2[] = {0}; +static const unsigned char kat3451_retbits[] = { + 0xf6, 0x64, 0x05, 0xf9, 0xa8, 0x7b, 0xae, 0x5e, 0xa6, 0x49, 0x36, 0x8a, + 0x83, 0x0a, 0xc7, 0xf0, 0x0a, 0x72, 0x23, 0x90, 0x09, 0x8c, 0xac, 0xe8, + 0x5d, 0x38, 0x19, 0x47, 0x70, 0xaf, 0x3a, 0xc8, 0x32, 0xf4, 0x33, 0xf8, + 0x16, 0xf5, 0xcd, 0x44, 0x81, 0x9c, 0xc9, 0xd8, 0xd3, 0xd2, 0x4e, 0x2a, + 0x7a, 0x32, 0x20, 0xea, 0x89, 0x9b, 0x38, 0xe7, 0x5e, 0xde, 0x62, 0x72, + 0x90, 0x36, 0x10, 0x93, +}; +static const struct drbg_kat_pr_true kat3451_t = { + 0, kat3451_entropyin, kat3451_nonce, kat3451_persstr, + kat3451_entropyinpr1, kat3451_addinpr1, kat3451_entropyinpr2, + kat3451_addinpr2, kat3451_retbits +}; +static const struct drbg_kat kat3451 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3451_t +}; + +static const unsigned char kat3452_entropyin[] = { + 0x53, 0x0f, 0x7c, 0x81, 0xe5, 0x0f, 0x1c, 0x22, 0xc9, 0x4a, 0x26, 0x40, + 0xae, 0x04, 0xd9, 0x69, 0xc1, 0xaa, 0x1c, 0x2d, 0x53, 0xa6, 0x5f, 0xc8, + 0xab, 0xf5, 0x9f, 0x54, 0x2f, 0x99, 0x02, 0xcf, +}; +static const unsigned char kat3452_nonce[] = { + 0x40, 0xac, 0xc4, 0x00, 0x15, 0x95, 0xe6, 0xb9, 0xde, 0x7b, 0x02, 0x62, + 0x1c, 0x61, 0x50, 0x1b, +}; +static const unsigned char kat3452_persstr[] = { + 0xa9, 0x20, 0x38, 0x26, 0x3c, 0x9e, 0x35, 0x51, 0x37, 0x7d, 0x98, 0x5e, + 0x75, 0xf2, 0x72, 0x32, 0x0d, 0x1c, 0xb0, 0xdc, 0x43, 0xa7, 0xb7, 0x46, + 0xb3, 0xab, 0x80, 0xa8, 0x0c, 0x52, 0x3b, 0xf2, +}; +static const unsigned char kat3452_entropyinpr1[] = { + 0xda, 0x8a, 0xd3, 0x80, 0x5b, 0xc5, 0xf5, 0xbb, 0x55, 0x4d, 0x83, 0xbc, + 0x22, 0xf9, 0x25, 0xef, 0xd2, 0xe0, 0xd0, 0x24, 0x6f, 0x53, 0x14, 0x78, + 0x5a, 0x68, 0x2d, 0x3b, 0x9b, 0x85, 0x9b, 0x1b, +}; +static const unsigned char kat3452_addinpr1[] = {0}; +static const unsigned char kat3452_entropyinpr2[] = { + 0xc7, 0x92, 0x16, 0xa7, 0x0f, 0xa6, 0xbd, 0x82, 0x56, 0x82, 0x2d, 0x75, + 0x39, 0x56, 0x8c, 0x73, 0xca, 0x80, 0xc8, 0xf6, 0xbc, 0x44, 0x2b, 0xcf, + 0xed, 0xcd, 0x25, 0x92, 0xef, 0xb0, 0xe1, 0x4a, +}; +static const unsigned char kat3452_addinpr2[] = {0}; +static const unsigned char kat3452_retbits[] = { + 0x88, 0x41, 0x3f, 0x63, 0x25, 0x90, 0x83, 0xa5, 0x3b, 0x83, 0x27, 0xfb, + 0x72, 0x58, 0x76, 0xd6, 0x26, 0x60, 0x95, 0x55, 0xd9, 0x36, 0xd4, 0x7f, + 0x8c, 0xc6, 0xcc, 0x54, 0xcb, 0x8a, 0x81, 0xdf, 0xf6, 0xee, 0x9e, 0x99, + 0xc1, 0x42, 0xe2, 0xed, 0xb6, 0xa6, 0x47, 0xf5, 0xe0, 0x28, 0xb9, 0x62, + 0x2f, 0xf3, 0xca, 0x3e, 0x58, 0x96, 0xbd, 0x6e, 0x67, 0x9f, 0x46, 0xed, + 0x77, 0x30, 0x71, 0x78, +}; +static const struct drbg_kat_pr_true kat3452_t = { + 1, kat3452_entropyin, kat3452_nonce, kat3452_persstr, + kat3452_entropyinpr1, kat3452_addinpr1, kat3452_entropyinpr2, + kat3452_addinpr2, kat3452_retbits +}; +static const struct drbg_kat kat3452 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3452_t +}; + +static const unsigned char kat3453_entropyin[] = { + 0xd7, 0xba, 0x78, 0x13, 0xf5, 0x28, 0x5b, 0xad, 0x22, 0xa1, 0xd0, 0xa0, + 0x34, 0x42, 0x97, 0x7b, 0x44, 0xb9, 0x2d, 0xfc, 0xc7, 0x85, 0x81, 0x5c, + 0x31, 0xe0, 0x04, 0x23, 0xea, 0xee, 0x28, 0x23, +}; +static const unsigned char kat3453_nonce[] = { + 0x1a, 0xa3, 0x0a, 0xe5, 0x6a, 0xb7, 0xa4, 0xed, 0x92, 0x29, 0x7a, 0x00, + 0xde, 0x8c, 0x4e, 0x34, +}; +static const unsigned char kat3453_persstr[] = { + 0x49, 0xdb, 0x7d, 0x1a, 0xf7, 0x90, 0x33, 0xeb, 0x07, 0x66, 0x42, 0x02, + 0x56, 0x71, 0x0a, 0xb8, 0xff, 0x4e, 0x05, 0x50, 0x54, 0x65, 0xb7, 0x77, + 0x85, 0x1a, 0xe5, 0x49, 0x39, 0x31, 0x79, 0x27, +}; +static const unsigned char kat3453_entropyinpr1[] = { + 0xda, 0xc0, 0x1c, 0xb5, 0xbc, 0x0d, 0xff, 0x75, 0x35, 0x88, 0xb8, 0xc9, + 0xf1, 0xa7, 0xb9, 0xc6, 0xb7, 0x83, 0x0d, 0xcb, 0x2a, 0xf5, 0x21, 0x36, + 0x5e, 0xcd, 0x9d, 0xfb, 0x21, 0x37, 0x92, 0xb7, +}; +static const unsigned char kat3453_addinpr1[] = {0}; +static const unsigned char kat3453_entropyinpr2[] = { + 0xb9, 0x18, 0x78, 0x71, 0xca, 0xb7, 0x7d, 0xb2, 0x27, 0xaa, 0xf5, 0xa2, + 0x37, 0xe6, 0x43, 0x92, 0x3a, 0x02, 0xb4, 0xb7, 0xac, 0xab, 0x4d, 0x0b, + 0x14, 0x04, 0x6c, 0xca, 0x44, 0x0f, 0x87, 0x9a, +}; +static const unsigned char kat3453_addinpr2[] = {0}; +static const unsigned char kat3453_retbits[] = { + 0xab, 0x71, 0xe5, 0x53, 0xf0, 0xec, 0x95, 0x79, 0x12, 0xb8, 0x82, 0x59, + 0xa6, 0xd4, 0x86, 0x2e, 0xde, 0x1c, 0xff, 0x0f, 0x13, 0x00, 0x50, 0xae, + 0x8a, 0xd7, 0xa0, 0xee, 0x37, 0x95, 0xef, 0x76, 0x44, 0xeb, 0x27, 0xe1, + 0x4d, 0x09, 0x11, 0x3c, 0x9a, 0x25, 0x80, 0xc6, 0x0e, 0x98, 0x68, 0x7d, + 0x81, 0x06, 0x44, 0xfa, 0xf9, 0xa6, 0xd6, 0x99, 0xc7, 0xba, 0x64, 0x5d, + 0x75, 0x18, 0x5a, 0x40, +}; +static const struct drbg_kat_pr_true kat3453_t = { + 2, kat3453_entropyin, kat3453_nonce, kat3453_persstr, + kat3453_entropyinpr1, kat3453_addinpr1, kat3453_entropyinpr2, + kat3453_addinpr2, kat3453_retbits +}; +static const struct drbg_kat kat3453 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3453_t +}; + +static const unsigned char kat3454_entropyin[] = { + 0x14, 0xdb, 0x6e, 0x94, 0xfe, 0xc5, 0x73, 0x36, 0xc2, 0xc9, 0xd7, 0x41, + 0x24, 0x2f, 0xfa, 0x60, 0x3c, 0x11, 0x03, 0xd3, 0xbe, 0xe9, 0xa5, 0xc1, + 0xf6, 0x57, 0x15, 0x54, 0x70, 0x05, 0x09, 0xf1, +}; +static const unsigned char kat3454_nonce[] = { + 0x75, 0x6b, 0x03, 0x69, 0x66, 0x63, 0xb0, 0xaa, 0x0a, 0x74, 0x91, 0xfc, + 0x6d, 0x26, 0x96, 0xe2, +}; +static const unsigned char kat3454_persstr[] = { + 0x44, 0x42, 0x26, 0xb6, 0x0d, 0xbd, 0x85, 0xb4, 0x9b, 0x38, 0x5e, 0xcc, + 0xb5, 0xcd, 0xca, 0xc2, 0x42, 0x07, 0x5e, 0x05, 0x87, 0x03, 0xb9, 0x4e, + 0x98, 0x3f, 0x94, 0x57, 0xd4, 0xac, 0x0b, 0xdb, +}; +static const unsigned char kat3454_entropyinpr1[] = { + 0xe6, 0x23, 0x71, 0xb9, 0x55, 0xd0, 0xd0, 0x98, 0x85, 0x44, 0x68, 0xe9, + 0x31, 0xbc, 0xa2, 0x2e, 0x5a, 0x22, 0x6a, 0xad, 0x2c, 0xed, 0x51, 0x6f, + 0xe7, 0xfa, 0xdb, 0x6d, 0x23, 0x58, 0xce, 0x15, +}; +static const unsigned char kat3454_addinpr1[] = {0}; +static const unsigned char kat3454_entropyinpr2[] = { + 0x3d, 0x46, 0xe7, 0x33, 0x00, 0xe6, 0x7b, 0xa1, 0x58, 0x8e, 0x3c, 0xa1, + 0x47, 0x85, 0xdc, 0x13, 0x9e, 0xf6, 0x6c, 0x14, 0xce, 0x20, 0x9d, 0xaa, + 0xd0, 0x54, 0x33, 0xc8, 0x90, 0x04, 0xda, 0x4f, +}; +static const unsigned char kat3454_addinpr2[] = {0}; +static const unsigned char kat3454_retbits[] = { + 0xc9, 0x06, 0xdb, 0x2d, 0x02, 0x46, 0xae, 0xcd, 0xf4, 0x84, 0x40, 0x83, + 0xc4, 0xfc, 0xfb, 0xce, 0x6d, 0x7c, 0xd4, 0xd2, 0x51, 0x20, 0x8a, 0xeb, + 0xe9, 0x22, 0x52, 0xb7, 0xbb, 0x7b, 0x24, 0xb5, 0x8c, 0xa7, 0x3e, 0xa9, + 0x38, 0x1f, 0x48, 0x35, 0x48, 0x3b, 0xe0, 0x15, 0x06, 0x5a, 0x20, 0x23, + 0xb1, 0xe3, 0x85, 0x24, 0x8b, 0x7f, 0xd7, 0x24, 0x3f, 0xf9, 0xbd, 0x77, + 0x88, 0x35, 0x7b, 0xb5, +}; +static const struct drbg_kat_pr_true kat3454_t = { + 3, kat3454_entropyin, kat3454_nonce, kat3454_persstr, + kat3454_entropyinpr1, kat3454_addinpr1, kat3454_entropyinpr2, + kat3454_addinpr2, kat3454_retbits +}; +static const struct drbg_kat kat3454 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3454_t +}; + +static const unsigned char kat3455_entropyin[] = { + 0x98, 0x79, 0x98, 0x03, 0xb5, 0x5c, 0x55, 0xc8, 0xc3, 0x47, 0xc6, 0xbd, + 0x54, 0x2e, 0xa9, 0x17, 0x4b, 0x36, 0xf5, 0xc4, 0x7f, 0x8e, 0xaa, 0xf6, + 0x03, 0x67, 0xb2, 0x20, 0x21, 0xa6, 0xd0, 0x9a, +}; +static const unsigned char kat3455_nonce[] = { + 0x47, 0xce, 0x2c, 0x85, 0xf9, 0x66, 0x0c, 0x14, 0x45, 0x12, 0x09, 0xd0, + 0x19, 0x44, 0xf3, 0x5b, +}; +static const unsigned char kat3455_persstr[] = { + 0xab, 0xad, 0xd6, 0xa8, 0x8b, 0x62, 0x93, 0x9c, 0xbb, 0x46, 0x30, 0xcf, + 0x8d, 0x85, 0xe5, 0xee, 0x3b, 0xa3, 0xa9, 0x8c, 0xaf, 0xfb, 0xf7, 0x5c, + 0x1e, 0x75, 0x92, 0xd2, 0x67, 0x2a, 0x98, 0x30, +}; +static const unsigned char kat3455_entropyinpr1[] = { + 0xab, 0x5a, 0x55, 0xe7, 0xde, 0x98, 0xb6, 0x42, 0xef, 0x4c, 0x59, 0x16, + 0xd2, 0xe9, 0xd9, 0x4a, 0xe6, 0xe0, 0x2c, 0x10, 0x51, 0xd1, 0x67, 0x0d, + 0x72, 0x5b, 0xd0, 0x9b, 0xf2, 0x0a, 0x94, 0x35, +}; +static const unsigned char kat3455_addinpr1[] = {0}; +static const unsigned char kat3455_entropyinpr2[] = { + 0x1d, 0xd9, 0x1a, 0xe2, 0xb5, 0xab, 0x1f, 0xc5, 0xa7, 0x40, 0x3d, 0x09, + 0x33, 0xf7, 0xf6, 0xd5, 0x20, 0xc0, 0x19, 0x4f, 0xdd, 0xe6, 0x69, 0xdc, + 0x6b, 0xb0, 0x83, 0x39, 0xc3, 0x86, 0xf9, 0xb7, +}; +static const unsigned char kat3455_addinpr2[] = {0}; +static const unsigned char kat3455_retbits[] = { + 0x17, 0xf2, 0x9b, 0xdc, 0x3f, 0x9b, 0x6d, 0xd1, 0xfb, 0xdc, 0xff, 0x68, + 0x79, 0xfa, 0x2d, 0x2b, 0x7b, 0x94, 0xd9, 0xb4, 0x4b, 0xd3, 0x7a, 0x84, + 0x41, 0x89, 0xd0, 0x60, 0xf2, 0x74, 0x54, 0xe4, 0x7b, 0x2c, 0x20, 0xdd, + 0x71, 0x21, 0x6d, 0x00, 0x40, 0xb5, 0x86, 0xea, 0x9c, 0x74, 0x10, 0xdc, + 0x68, 0x25, 0x03, 0x3e, 0x58, 0x8e, 0x9a, 0xbd, 0x81, 0x93, 0xdd, 0xa1, + 0xb5, 0xbe, 0x1c, 0xea, +}; +static const struct drbg_kat_pr_true kat3455_t = { + 4, kat3455_entropyin, kat3455_nonce, kat3455_persstr, + kat3455_entropyinpr1, kat3455_addinpr1, kat3455_entropyinpr2, + kat3455_addinpr2, kat3455_retbits +}; +static const struct drbg_kat kat3455 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3455_t +}; + +static const unsigned char kat3456_entropyin[] = { + 0x9f, 0xd5, 0xea, 0x40, 0x02, 0x0a, 0xe5, 0x6c, 0x10, 0x16, 0x3d, 0x17, + 0xc9, 0xc1, 0x95, 0x45, 0xf5, 0x0f, 0xff, 0x9d, 0xf6, 0xf7, 0xaa, 0xaf, + 0x6a, 0x7d, 0x40, 0x8e, 0x3f, 0xf9, 0xba, 0x11, +}; +static const unsigned char kat3456_nonce[] = { + 0xac, 0xcd, 0x67, 0xc4, 0x80, 0x4c, 0xe7, 0x11, 0xc9, 0x73, 0xd8, 0x1a, + 0x72, 0x1a, 0x50, 0x97, +}; +static const unsigned char kat3456_persstr[] = { + 0xb0, 0x17, 0x14, 0xc6, 0x73, 0xad, 0x95, 0xaa, 0x98, 0x7a, 0x9f, 0xdb, + 0xb6, 0x54, 0xcd, 0x86, 0x75, 0x51, 0x01, 0xb3, 0xd2, 0x81, 0x66, 0xf2, + 0xf6, 0xf8, 0x65, 0xce, 0x9d, 0x8c, 0x3b, 0xaa, +}; +static const unsigned char kat3456_entropyinpr1[] = { + 0x10, 0xe9, 0x92, 0xf7, 0x29, 0x7f, 0xf8, 0xfb, 0xe1, 0xa2, 0x2b, 0x02, + 0x56, 0x4a, 0x8c, 0x9b, 0x02, 0xb9, 0xb1, 0xc9, 0x10, 0xb7, 0xd1, 0x8f, + 0x9e, 0xc5, 0x4a, 0x03, 0x1c, 0xba, 0x1e, 0x73, +}; +static const unsigned char kat3456_addinpr1[] = {0}; +static const unsigned char kat3456_entropyinpr2[] = { + 0xee, 0x2a, 0x73, 0xe5, 0x04, 0xe1, 0xf4, 0xd3, 0xa1, 0x1e, 0x82, 0x55, + 0xca, 0x55, 0x44, 0x1e, 0x02, 0x78, 0x50, 0x9a, 0xc1, 0xe3, 0x2d, 0x63, + 0xd1, 0xc2, 0xff, 0xf3, 0xde, 0x6a, 0xaa, 0x6b, +}; +static const unsigned char kat3456_addinpr2[] = {0}; +static const unsigned char kat3456_retbits[] = { + 0x29, 0x51, 0x27, 0x4b, 0xc0, 0x75, 0x56, 0xbb, 0x4e, 0xae, 0xe9, 0x4e, + 0x05, 0x14, 0xef, 0x0e, 0x17, 0x76, 0x5d, 0xbe, 0xdc, 0x8b, 0x30, 0x46, + 0xcf, 0x74, 0x0a, 0xce, 0xbc, 0x0a, 0xc5, 0xa7, 0xcb, 0xa6, 0xe3, 0x72, + 0x81, 0x2d, 0x04, 0xe6, 0xf1, 0x3c, 0xe5, 0xf7, 0xb4, 0x71, 0x98, 0x78, + 0x7a, 0x29, 0x53, 0x49, 0xbc, 0x87, 0x08, 0xb0, 0xa6, 0xc1, 0x79, 0x17, + 0x0d, 0x05, 0xe0, 0x13, +}; +static const struct drbg_kat_pr_true kat3456_t = { + 5, kat3456_entropyin, kat3456_nonce, kat3456_persstr, + kat3456_entropyinpr1, kat3456_addinpr1, kat3456_entropyinpr2, + kat3456_addinpr2, kat3456_retbits +}; +static const struct drbg_kat kat3456 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3456_t +}; + +static const unsigned char kat3457_entropyin[] = { + 0x76, 0x6b, 0xf3, 0x08, 0x5f, 0x1b, 0xa7, 0x54, 0xde, 0x23, 0x4b, 0xb8, + 0x8c, 0x57, 0x31, 0x5e, 0x5f, 0x29, 0xe7, 0x1c, 0x0c, 0x99, 0x98, 0x45, + 0xb5, 0xf1, 0x0b, 0xe6, 0x9b, 0x9f, 0x06, 0x59, +}; +static const unsigned char kat3457_nonce[] = { + 0x12, 0x35, 0xf4, 0x88, 0x79, 0x73, 0xb1, 0x6f, 0x01, 0xbf, 0xcf, 0x33, + 0xa7, 0xcd, 0x67, 0xa2, +}; +static const unsigned char kat3457_persstr[] = { + 0x8e, 0x17, 0x13, 0xdb, 0x79, 0x12, 0x28, 0xf9, 0xd0, 0x14, 0x32, 0xe7, + 0x07, 0x5a, 0x23, 0xf6, 0x7b, 0xd1, 0xec, 0x74, 0x8b, 0x63, 0x32, 0x40, + 0xde, 0x83, 0xd1, 0xf7, 0x5c, 0xee, 0x1a, 0x71, +}; +static const unsigned char kat3457_entropyinpr1[] = { + 0x2a, 0xe7, 0xe8, 0x9e, 0x2f, 0x67, 0xba, 0xe2, 0x85, 0xbb, 0xd4, 0xff, + 0x4a, 0x5a, 0xc9, 0x2a, 0x0f, 0x18, 0x69, 0x08, 0xd0, 0x6d, 0x32, 0x2a, + 0x93, 0x86, 0x54, 0xdd, 0xde, 0xe8, 0xb7, 0x46, +}; +static const unsigned char kat3457_addinpr1[] = {0}; +static const unsigned char kat3457_entropyinpr2[] = { + 0x87, 0x81, 0x8e, 0xf3, 0xd2, 0x0d, 0x05, 0x12, 0xa5, 0x7b, 0x92, 0x9c, + 0xe8, 0x9b, 0xf8, 0x27, 0x03, 0xc0, 0xab, 0x62, 0xd4, 0xa5, 0xa4, 0xe5, + 0xf9, 0xbb, 0x48, 0xe0, 0x95, 0x97, 0xcd, 0x57, +}; +static const unsigned char kat3457_addinpr2[] = {0}; +static const unsigned char kat3457_retbits[] = { + 0xb8, 0x2c, 0xcd, 0xda, 0x39, 0x6b, 0x1a, 0x1b, 0x21, 0xc2, 0x58, 0xf0, + 0xbe, 0x9c, 0x0f, 0x5c, 0x27, 0x54, 0x71, 0xdf, 0x88, 0x60, 0xc3, 0x68, + 0xb4, 0xac, 0x79, 0x26, 0xc9, 0x80, 0xd4, 0x99, 0x73, 0x9f, 0xc6, 0x97, + 0x8a, 0xe0, 0x75, 0x44, 0x8c, 0x38, 0x7e, 0x22, 0xac, 0x35, 0xfb, 0x0f, + 0xbd, 0x77, 0x78, 0x7b, 0xc1, 0xbc, 0x87, 0x5c, 0xfb, 0xc5, 0xfb, 0x1f, + 0xc0, 0x61, 0xae, 0x5c, +}; +static const struct drbg_kat_pr_true kat3457_t = { + 6, kat3457_entropyin, kat3457_nonce, kat3457_persstr, + kat3457_entropyinpr1, kat3457_addinpr1, kat3457_entropyinpr2, + kat3457_addinpr2, kat3457_retbits +}; +static const struct drbg_kat kat3457 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3457_t +}; + +static const unsigned char kat3458_entropyin[] = { + 0x99, 0x4b, 0x00, 0x2b, 0x62, 0x77, 0x84, 0x4f, 0x34, 0x95, 0x09, 0x55, + 0xff, 0xb0, 0x88, 0x08, 0xd1, 0x9a, 0xe8, 0xdf, 0x8a, 0x12, 0xef, 0xea, + 0xe9, 0xdb, 0x41, 0x45, 0x6c, 0x24, 0x11, 0x2f, +}; +static const unsigned char kat3458_nonce[] = { + 0x8a, 0x31, 0x21, 0x89, 0xfd, 0x86, 0xa4, 0xea, 0xeb, 0x56, 0x56, 0xaa, + 0x5e, 0xa7, 0xe2, 0x01, +}; +static const unsigned char kat3458_persstr[] = { + 0xe1, 0xe8, 0xa8, 0x6f, 0x3f, 0x23, 0x71, 0x77, 0x0c, 0x92, 0xb0, 0x00, + 0x20, 0x0a, 0xba, 0x29, 0xae, 0x27, 0x52, 0x12, 0x77, 0x3e, 0x4e, 0x8f, + 0x3d, 0x51, 0x2c, 0x90, 0x5a, 0x2c, 0x00, 0x86, +}; +static const unsigned char kat3458_entropyinpr1[] = { + 0x43, 0x50, 0x17, 0x73, 0x46, 0x59, 0xbd, 0xaf, 0x6a, 0x0f, 0xd7, 0xd6, + 0xa3, 0xbd, 0x98, 0xfa, 0x2a, 0xa2, 0x78, 0xf8, 0xca, 0xb8, 0xef, 0xf0, + 0x8c, 0x33, 0x2e, 0xe2, 0xe6, 0xce, 0x80, 0xb3, +}; +static const unsigned char kat3458_addinpr1[] = {0}; +static const unsigned char kat3458_entropyinpr2[] = { + 0x6b, 0x79, 0xac, 0xd4, 0xd3, 0x9b, 0x39, 0xf0, 0x7a, 0x70, 0xe6, 0xfd, + 0xbb, 0xed, 0x8c, 0xe0, 0x91, 0x50, 0x20, 0xa4, 0xd6, 0x7d, 0x90, 0xcd, + 0xc5, 0x43, 0xb1, 0x62, 0xa4, 0x22, 0x73, 0x0c, +}; +static const unsigned char kat3458_addinpr2[] = {0}; +static const unsigned char kat3458_retbits[] = { + 0xd1, 0xfe, 0x64, 0xff, 0xe1, 0x02, 0x10, 0x96, 0x45, 0xd6, 0xdd, 0x39, + 0xed, 0x3b, 0xc1, 0x8c, 0x3d, 0xde, 0x80, 0x87, 0x81, 0xc0, 0x26, 0xa0, + 0x7e, 0x80, 0xd3, 0x74, 0xbd, 0x7b, 0x32, 0xc4, 0xe0, 0xbb, 0x60, 0xb8, + 0x3b, 0x75, 0xa2, 0x5a, 0xef, 0x68, 0x62, 0xb5, 0xba, 0xba, 0x89, 0xd9, + 0xbe, 0xa9, 0xe3, 0x52, 0xb9, 0x67, 0xd1, 0xb7, 0x55, 0x07, 0xd7, 0xe6, + 0x22, 0xce, 0xbe, 0xff, +}; +static const struct drbg_kat_pr_true kat3458_t = { + 7, kat3458_entropyin, kat3458_nonce, kat3458_persstr, + kat3458_entropyinpr1, kat3458_addinpr1, kat3458_entropyinpr2, + kat3458_addinpr2, kat3458_retbits +}; +static const struct drbg_kat kat3458 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3458_t +}; + +static const unsigned char kat3459_entropyin[] = { + 0xa5, 0x65, 0x2f, 0xb8, 0xee, 0x70, 0x24, 0xd1, 0x1b, 0x0a, 0x6e, 0x0a, + 0xe7, 0x02, 0x01, 0x36, 0xd5, 0x99, 0xc4, 0xeb, 0x7d, 0x91, 0x9f, 0x46, + 0xd8, 0x26, 0x7b, 0xdd, 0xff, 0x44, 0x7f, 0x50, +}; +static const unsigned char kat3459_nonce[] = { + 0x80, 0x2c, 0x43, 0x51, 0xc1, 0x82, 0xe2, 0xff, 0xbd, 0x18, 0x7d, 0x6f, + 0x16, 0xc3, 0x22, 0x08, +}; +static const unsigned char kat3459_persstr[] = { + 0x95, 0x11, 0xf2, 0xbe, 0x02, 0x42, 0x0d, 0x38, 0x3b, 0xbd, 0x54, 0x40, + 0xa6, 0x20, 0x63, 0xad, 0xd5, 0x17, 0x32, 0xcd, 0x0b, 0x90, 0x10, 0x4b, + 0x30, 0x02, 0x32, 0x4a, 0x49, 0x75, 0x94, 0xb2, +}; +static const unsigned char kat3459_entropyinpr1[] = { + 0x90, 0x91, 0xa5, 0x0e, 0xc6, 0x3d, 0xf7, 0xa0, 0xf0, 0x39, 0xf4, 0xc7, + 0x90, 0x53, 0x7e, 0x3d, 0x6e, 0x29, 0x69, 0x72, 0x0f, 0xf2, 0x6b, 0xa5, + 0x9c, 0x5e, 0x38, 0x81, 0x13, 0x9f, 0x05, 0xe0, +}; +static const unsigned char kat3459_addinpr1[] = {0}; +static const unsigned char kat3459_entropyinpr2[] = { + 0x77, 0xce, 0x13, 0x56, 0xc5, 0x04, 0x82, 0x32, 0xba, 0x43, 0x91, 0x4e, + 0x51, 0xdc, 0xab, 0x76, 0x97, 0xc8, 0xda, 0x56, 0x4e, 0xa3, 0xef, 0x38, + 0x1f, 0x01, 0x3d, 0x3f, 0x18, 0x93, 0x74, 0x79, +}; +static const unsigned char kat3459_addinpr2[] = {0}; +static const unsigned char kat3459_retbits[] = { + 0x6f, 0x44, 0xb4, 0x57, 0x74, 0x28, 0xa3, 0xf1, 0xe4, 0x19, 0x56, 0xd1, + 0x1a, 0xaa, 0x8b, 0xe8, 0x93, 0xd6, 0xf9, 0x72, 0x78, 0x54, 0xc1, 0x74, + 0xc0, 0x69, 0x50, 0xb6, 0x5b, 0x84, 0x4b, 0xd9, 0x43, 0xd2, 0xd9, 0xf3, + 0x0a, 0x0e, 0xef, 0xb8, 0x6e, 0xe0, 0x6c, 0x08, 0x75, 0xdc, 0x9c, 0x69, + 0xcd, 0xc5, 0x8b, 0x9c, 0xa2, 0xf3, 0x4f, 0x2b, 0x14, 0x95, 0x4b, 0x14, + 0x16, 0xc5, 0x77, 0x6f, +}; +static const struct drbg_kat_pr_true kat3459_t = { + 8, kat3459_entropyin, kat3459_nonce, kat3459_persstr, + kat3459_entropyinpr1, kat3459_addinpr1, kat3459_entropyinpr2, + kat3459_addinpr2, kat3459_retbits +}; +static const struct drbg_kat kat3459 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3459_t +}; + +static const unsigned char kat3460_entropyin[] = { + 0xc1, 0xdf, 0x59, 0x39, 0x02, 0xae, 0xbc, 0x43, 0x3e, 0x69, 0x2c, 0xad, + 0x37, 0xfe, 0x51, 0x18, 0x09, 0xed, 0x03, 0x3d, 0xca, 0xa0, 0x00, 0x88, + 0x1b, 0x74, 0xb5, 0xc1, 0x0e, 0xcd, 0x0f, 0xaa, +}; +static const unsigned char kat3460_nonce[] = { + 0x0d, 0x2c, 0xfd, 0x3b, 0x20, 0x90, 0x33, 0xdf, 0xda, 0x1c, 0xe5, 0x89, + 0xf3, 0xe0, 0x3f, 0x13, +}; +static const unsigned char kat3460_persstr[] = { + 0xe2, 0x53, 0x30, 0xe2, 0x2e, 0x92, 0x40, 0x70, 0xef, 0xef, 0x21, 0xa7, + 0xb9, 0xd4, 0xec, 0x64, 0x9d, 0x11, 0x25, 0xf5, 0x18, 0xc5, 0x63, 0xfb, + 0x8f, 0x8e, 0xff, 0x6e, 0xae, 0xe8, 0xf7, 0xa9, +}; +static const unsigned char kat3460_entropyinpr1[] = { + 0xee, 0x6d, 0x42, 0x87, 0x30, 0xf5, 0xf2, 0x4a, 0x56, 0x99, 0x75, 0x7d, + 0xc0, 0x25, 0x4e, 0x25, 0x98, 0x83, 0xfa, 0x2e, 0x12, 0x1e, 0xb2, 0xb1, + 0x44, 0xf2, 0xd6, 0xf7, 0x47, 0xbe, 0xbf, 0x5b, +}; +static const unsigned char kat3460_addinpr1[] = {0}; +static const unsigned char kat3460_entropyinpr2[] = { + 0x12, 0x24, 0xf0, 0xbc, 0x30, 0x49, 0x0b, 0xf6, 0x4c, 0xb6, 0xef, 0x62, + 0x23, 0x10, 0x99, 0x73, 0x5f, 0xe8, 0x01, 0xe3, 0x27, 0x89, 0x58, 0x4d, + 0x9f, 0x40, 0x3d, 0x9c, 0x9d, 0xa3, 0xa0, 0x54, +}; +static const unsigned char kat3460_addinpr2[] = {0}; +static const unsigned char kat3460_retbits[] = { + 0x24, 0xe6, 0x3c, 0x38, 0xd0, 0xfe, 0x5b, 0xc1, 0xcb, 0x19, 0xb2, 0xa9, + 0x72, 0x14, 0x6e, 0x12, 0xd4, 0xeb, 0x0b, 0x80, 0x46, 0xcb, 0x66, 0xab, + 0x6e, 0xbf, 0x91, 0x04, 0xa5, 0xe8, 0xd4, 0x6f, 0xed, 0x43, 0x43, 0x22, + 0x77, 0xe8, 0xe2, 0xc7, 0x0b, 0x98, 0x08, 0x97, 0xdd, 0x58, 0xda, 0x0f, + 0xc5, 0x18, 0x10, 0x43, 0x1f, 0xc7, 0x55, 0xca, 0x7d, 0x7f, 0x83, 0x92, + 0xf6, 0x17, 0x31, 0x47, +}; +static const struct drbg_kat_pr_true kat3460_t = { + 9, kat3460_entropyin, kat3460_nonce, kat3460_persstr, + kat3460_entropyinpr1, kat3460_addinpr1, kat3460_entropyinpr2, + kat3460_addinpr2, kat3460_retbits +}; +static const struct drbg_kat kat3460 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3460_t +}; + +static const unsigned char kat3461_entropyin[] = { + 0xfa, 0xb2, 0xd1, 0xee, 0xea, 0xb3, 0x8a, 0xf6, 0xba, 0xd6, 0xef, 0x87, + 0xea, 0xe3, 0x7a, 0xf9, 0x14, 0x5a, 0xf4, 0xe8, 0x4a, 0x63, 0x85, 0x56, + 0xf9, 0x8f, 0xdb, 0x28, 0x22, 0x1e, 0x33, 0x4d, +}; +static const unsigned char kat3461_nonce[] = { + 0xfa, 0xd5, 0x72, 0x61, 0x70, 0xc7, 0xf6, 0x49, 0xd9, 0xcd, 0x15, 0x13, + 0x8f, 0xe2, 0xbe, 0x77, +}; +static const unsigned char kat3461_persstr[] = { + 0xc5, 0x17, 0x6e, 0xc4, 0xd6, 0x97, 0xf2, 0xd2, 0x67, 0x00, 0x51, 0x86, + 0xb3, 0xc0, 0x0a, 0xdd, 0xae, 0x1d, 0x09, 0xe9, 0x11, 0x41, 0x45, 0xec, + 0xb7, 0x2a, 0x78, 0xa1, 0xb0, 0x85, 0x37, 0x3f, +}; +static const unsigned char kat3461_entropyinpr1[] = { + 0xd8, 0x88, 0x42, 0x8d, 0x58, 0x1e, 0x14, 0x6a, 0xf6, 0xcd, 0x0a, 0xff, + 0xf5, 0xc9, 0xfa, 0x5d, 0x98, 0x23, 0xe5, 0xf8, 0x00, 0x42, 0x9e, 0x68, + 0x69, 0x7c, 0xdb, 0xb7, 0x4b, 0x7b, 0x8b, 0xab, +}; +static const unsigned char kat3461_addinpr1[] = {0}; +static const unsigned char kat3461_entropyinpr2[] = { + 0xc5, 0xee, 0x39, 0x6b, 0xc4, 0x76, 0xa7, 0x5a, 0x2e, 0x68, 0x50, 0xe4, + 0xae, 0xad, 0x69, 0xbf, 0x99, 0xa3, 0xb3, 0x75, 0x26, 0x69, 0x36, 0xaa, + 0xe0, 0xf3, 0x92, 0x42, 0x03, 0xa4, 0x97, 0xb3, +}; +static const unsigned char kat3461_addinpr2[] = {0}; +static const unsigned char kat3461_retbits[] = { + 0x54, 0xd0, 0x1c, 0x4c, 0x0e, 0x3b, 0xd9, 0xb0, 0xb3, 0x51, 0x3a, 0x0c, + 0x6e, 0x3e, 0x73, 0x2e, 0xed, 0xfd, 0x31, 0x36, 0xe0, 0xef, 0x7f, 0x23, + 0xa0, 0x88, 0x4b, 0x3f, 0x5d, 0x8d, 0x22, 0x53, 0xbd, 0x6b, 0x95, 0xb0, + 0xfd, 0x80, 0x6e, 0xcf, 0x3e, 0x43, 0x28, 0x06, 0xac, 0x14, 0x26, 0xe6, + 0x70, 0xf7, 0x7d, 0x16, 0xed, 0xa2, 0x85, 0x8e, 0xf6, 0xe9, 0xcf, 0x77, + 0x53, 0xaf, 0x06, 0xfd, +}; +static const struct drbg_kat_pr_true kat3461_t = { + 10, kat3461_entropyin, kat3461_nonce, kat3461_persstr, + kat3461_entropyinpr1, kat3461_addinpr1, kat3461_entropyinpr2, + kat3461_addinpr2, kat3461_retbits +}; +static const struct drbg_kat kat3461 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3461_t +}; + +static const unsigned char kat3462_entropyin[] = { + 0xe9, 0x68, 0xe9, 0xcd, 0x63, 0x62, 0xef, 0x4e, 0x7d, 0x9d, 0x40, 0x19, + 0xf3, 0x54, 0xbb, 0x89, 0x1d, 0x6c, 0x6d, 0xca, 0xad, 0x10, 0x64, 0xca, + 0xaa, 0x73, 0x37, 0xb8, 0x65, 0x1c, 0x6d, 0xc6, +}; +static const unsigned char kat3462_nonce[] = { + 0x67, 0x77, 0xf1, 0xe2, 0x18, 0xa1, 0x0f, 0x02, 0xef, 0x40, 0x75, 0x70, + 0xe2, 0x9f, 0xb1, 0xa8, +}; +static const unsigned char kat3462_persstr[] = { + 0xad, 0x4d, 0x1e, 0xe5, 0x0e, 0x36, 0x72, 0xb3, 0xad, 0xf8, 0xcb, 0x74, + 0xed, 0x8a, 0x2f, 0x1c, 0x58, 0xe8, 0xa4, 0x22, 0x92, 0x90, 0x76, 0x27, + 0x62, 0xe5, 0x88, 0xe7, 0xe3, 0x52, 0xe5, 0x8f, +}; +static const unsigned char kat3462_entropyinpr1[] = { + 0xad, 0xd3, 0x31, 0x92, 0x49, 0xbf, 0x7a, 0xf3, 0x67, 0x42, 0x6f, 0xb2, + 0xdd, 0x14, 0x4d, 0x4d, 0x05, 0xd0, 0x88, 0xdb, 0x55, 0xc0, 0x67, 0x28, + 0x64, 0x50, 0xdd, 0xa2, 0x2a, 0x39, 0x55, 0xf9, +}; +static const unsigned char kat3462_addinpr1[] = {0}; +static const unsigned char kat3462_entropyinpr2[] = { + 0x70, 0x2c, 0x69, 0xeb, 0x06, 0x05, 0xe4, 0x74, 0x82, 0x83, 0x3a, 0xff, + 0x3c, 0xd9, 0xe1, 0x4e, 0x49, 0x38, 0xba, 0xcd, 0xd3, 0x19, 0x99, 0x94, + 0x33, 0x7e, 0x59, 0x44, 0xf0, 0xdd, 0xe5, 0xbd, +}; +static const unsigned char kat3462_addinpr2[] = {0}; +static const unsigned char kat3462_retbits[] = { + 0xb7, 0x09, 0x89, 0x90, 0x63, 0x4f, 0x25, 0x2b, 0x6c, 0xf9, 0x73, 0x86, + 0x68, 0xf3, 0xab, 0xb4, 0x37, 0x8b, 0xa3, 0x77, 0x14, 0x3c, 0xcc, 0x28, + 0x69, 0x94, 0x64, 0x50, 0x8d, 0x36, 0xdb, 0xe5, 0x5e, 0xe2, 0xe7, 0xa9, + 0x20, 0xca, 0xca, 0x25, 0x5b, 0x8b, 0xcc, 0xba, 0x08, 0xb2, 0x45, 0x4b, + 0x67, 0xd4, 0x74, 0xaf, 0x96, 0x21, 0x0e, 0x90, 0x68, 0x21, 0x11, 0xc5, + 0x95, 0xe7, 0xfc, 0x85, +}; +static const struct drbg_kat_pr_true kat3462_t = { + 11, kat3462_entropyin, kat3462_nonce, kat3462_persstr, + kat3462_entropyinpr1, kat3462_addinpr1, kat3462_entropyinpr2, + kat3462_addinpr2, kat3462_retbits +}; +static const struct drbg_kat kat3462 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3462_t +}; + +static const unsigned char kat3463_entropyin[] = { + 0xe9, 0x10, 0xec, 0x33, 0x26, 0xf5, 0x07, 0x59, 0xc0, 0x1a, 0x1b, 0xa3, + 0x48, 0xda, 0xa0, 0xe1, 0x6e, 0xcc, 0x02, 0x17, 0xf7, 0x72, 0x06, 0xeb, + 0x64, 0x0c, 0x4a, 0x56, 0x1a, 0x9b, 0xc8, 0x7d, +}; +static const unsigned char kat3463_nonce[] = { + 0xfb, 0x51, 0x17, 0x9a, 0x22, 0x4e, 0xf3, 0x28, 0x88, 0x01, 0xfb, 0x0e, + 0xdc, 0x12, 0xe3, 0xa3, +}; +static const unsigned char kat3463_persstr[] = { + 0xd5, 0x61, 0x3a, 0x22, 0x24, 0x98, 0xac, 0x95, 0x67, 0xba, 0xb5, 0xb4, + 0x6f, 0xaf, 0x5c, 0x9b, 0xe2, 0xfa, 0xf8, 0xed, 0xea, 0xb3, 0x3f, 0x28, + 0xca, 0x4e, 0xbf, 0x67, 0x61, 0x49, 0x3c, 0x2c, +}; +static const unsigned char kat3463_entropyinpr1[] = { + 0xc6, 0x33, 0xe0, 0x93, 0xea, 0x74, 0xb6, 0x5d, 0x9f, 0xdd, 0xb6, 0x5f, + 0x74, 0x6c, 0x2f, 0x12, 0x29, 0x2e, 0x86, 0x46, 0x4f, 0x2d, 0x71, 0x93, + 0x92, 0x86, 0x83, 0x92, 0x8a, 0xa4, 0x8f, 0xb3, +}; +static const unsigned char kat3463_addinpr1[] = {0}; +static const unsigned char kat3463_entropyinpr2[] = { + 0x35, 0x60, 0xf0, 0x9a, 0xba, 0x4e, 0xec, 0x13, 0x32, 0xef, 0xd4, 0xab, + 0x02, 0x1d, 0x5a, 0xb8, 0x8b, 0x95, 0x1e, 0x77, 0x15, 0xe5, 0x3f, 0x15, + 0x12, 0x73, 0xaa, 0xbd, 0x5a, 0xc8, 0xc1, 0x92, +}; +static const unsigned char kat3463_addinpr2[] = {0}; +static const unsigned char kat3463_retbits[] = { + 0xbc, 0xc0, 0x05, 0xe9, 0x8a, 0x0e, 0x1b, 0x8d, 0x81, 0x1f, 0x81, 0x70, + 0x33, 0xe5, 0xa2, 0xbb, 0xad, 0x3d, 0x41, 0x8d, 0x9a, 0xa4, 0xec, 0x84, + 0xd4, 0x9b, 0xd3, 0x15, 0xb1, 0xf8, 0x92, 0x1f, 0xad, 0x9f, 0xe8, 0xb0, + 0x74, 0x22, 0xe6, 0xdb, 0x38, 0x29, 0xb8, 0x4e, 0xd0, 0x80, 0x47, 0x5a, + 0x98, 0x4b, 0xc5, 0xc2, 0x53, 0x54, 0x3d, 0x8d, 0xab, 0xbb, 0x4a, 0xa7, + 0x3f, 0xf3, 0x7d, 0x36, +}; +static const struct drbg_kat_pr_true kat3463_t = { + 12, kat3463_entropyin, kat3463_nonce, kat3463_persstr, + kat3463_entropyinpr1, kat3463_addinpr1, kat3463_entropyinpr2, + kat3463_addinpr2, kat3463_retbits +}; +static const struct drbg_kat kat3463 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3463_t +}; + +static const unsigned char kat3464_entropyin[] = { + 0xa2, 0x0b, 0x75, 0xf7, 0x48, 0x40, 0xb2, 0xa2, 0xfa, 0xa0, 0x8d, 0x54, + 0x2e, 0x63, 0xb7, 0xab, 0x0d, 0x82, 0x0d, 0x88, 0xed, 0xd8, 0x56, 0x8c, + 0xf5, 0xe6, 0x15, 0xa9, 0xa4, 0x33, 0xe9, 0xe0, +}; +static const unsigned char kat3464_nonce[] = { + 0xf0, 0x54, 0xfa, 0x2b, 0x0c, 0x7b, 0xa9, 0x1f, 0x42, 0xea, 0xa2, 0x87, + 0x60, 0x6b, 0x5a, 0x3d, +}; +static const unsigned char kat3464_persstr[] = { + 0x30, 0x42, 0x08, 0x0b, 0x68, 0x46, 0x43, 0x08, 0x74, 0x70, 0x7b, 0xf7, + 0xbd, 0x64, 0x63, 0xcf, 0x2d, 0x4c, 0x89, 0x73, 0xa9, 0x8d, 0xac, 0xf6, + 0xec, 0x44, 0x55, 0xab, 0x4c, 0x51, 0xcc, 0xd2, +}; +static const unsigned char kat3464_entropyinpr1[] = { + 0x38, 0x69, 0x4e, 0x2e, 0x4b, 0x50, 0xf3, 0x4f, 0xe6, 0x25, 0x74, 0x08, + 0xc9, 0xc9, 0x1c, 0xa2, 0xe6, 0x3d, 0xa4, 0x5a, 0x31, 0xb7, 0x56, 0x1a, + 0x2b, 0x9c, 0x2d, 0xff, 0xc9, 0x43, 0x00, 0x8d, +}; +static const unsigned char kat3464_addinpr1[] = {0}; +static const unsigned char kat3464_entropyinpr2[] = { + 0xc6, 0xea, 0xfc, 0xe7, 0x76, 0x61, 0x5b, 0x6a, 0xf4, 0x17, 0x80, 0x72, + 0x64, 0x2c, 0xd1, 0xa4, 0x83, 0x73, 0x84, 0x5e, 0x40, 0x68, 0x51, 0xf3, + 0x52, 0x9e, 0xa9, 0xba, 0x6b, 0xc1, 0x4f, 0x8f, +}; +static const unsigned char kat3464_addinpr2[] = {0}; +static const unsigned char kat3464_retbits[] = { + 0xb9, 0xc9, 0x4f, 0x3a, 0x98, 0xa2, 0xf0, 0xa0, 0x91, 0xb5, 0x5c, 0x9d, + 0xab, 0x9b, 0xe6, 0x60, 0x5d, 0x64, 0xf9, 0x40, 0xcd, 0x1d, 0x8b, 0x65, + 0x5e, 0xe3, 0x12, 0x9e, 0xba, 0xde, 0xa3, 0x47, 0x30, 0xff, 0x43, 0x91, + 0x77, 0xf7, 0x0f, 0x66, 0xb2, 0xab, 0x29, 0xd9, 0x5c, 0xf6, 0x31, 0x34, + 0xd5, 0x5c, 0xd5, 0x37, 0x0b, 0xcd, 0x0d, 0x74, 0xb3, 0x5f, 0xc3, 0x8d, + 0x36, 0x5a, 0x02, 0x7e, +}; +static const struct drbg_kat_pr_true kat3464_t = { + 13, kat3464_entropyin, kat3464_nonce, kat3464_persstr, + kat3464_entropyinpr1, kat3464_addinpr1, kat3464_entropyinpr2, + kat3464_addinpr2, kat3464_retbits +}; +static const struct drbg_kat kat3464 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3464_t +}; + +static const unsigned char kat3465_entropyin[] = { + 0xe3, 0x96, 0x68, 0x84, 0xa8, 0x8b, 0x31, 0x15, 0x69, 0xc5, 0xcf, 0x3d, + 0x04, 0xbe, 0xf0, 0xaa, 0x65, 0xe6, 0x11, 0x7f, 0xcd, 0x05, 0x16, 0xf7, + 0x0b, 0x8f, 0xd1, 0x09, 0x24, 0x33, 0x69, 0x85, +}; +static const unsigned char kat3465_nonce[] = { + 0x47, 0xde, 0x17, 0x72, 0xdd, 0xba, 0xd0, 0x70, 0xb3, 0xe3, 0x58, 0xfe, + 0x49, 0xbf, 0xcb, 0x3f, +}; +static const unsigned char kat3465_persstr[] = { + 0xe8, 0xd8, 0x99, 0x60, 0xc0, 0x29, 0xe7, 0x4d, 0x18, 0x70, 0x11, 0xf5, + 0x60, 0xec, 0x8a, 0x97, 0x18, 0xea, 0xbb, 0xde, 0x76, 0x26, 0xcd, 0x31, + 0x3f, 0xaf, 0xac, 0xc1, 0x9f, 0x37, 0xa2, 0xfd, +}; +static const unsigned char kat3465_entropyinpr1[] = { + 0x57, 0x30, 0xf7, 0x5d, 0x4d, 0x58, 0xaf, 0x98, 0xca, 0x3c, 0x5a, 0x47, + 0x4a, 0xad, 0xf0, 0x68, 0x36, 0x90, 0xb5, 0x5b, 0x71, 0xbe, 0x5e, 0x6b, + 0x75, 0x4b, 0xf6, 0x0e, 0xc6, 0x80, 0x6a, 0x0b, +}; +static const unsigned char kat3465_addinpr1[] = {0}; +static const unsigned char kat3465_entropyinpr2[] = { + 0xe2, 0x48, 0x99, 0x50, 0xfb, 0xfd, 0xe7, 0x77, 0x56, 0x4c, 0x2c, 0xc8, + 0xd7, 0xf9, 0x7c, 0xcc, 0x51, 0x90, 0x6c, 0x5d, 0x1d, 0x39, 0xa5, 0xe4, + 0xa6, 0xbd, 0x06, 0x12, 0x56, 0x69, 0xc9, 0xb4, +}; +static const unsigned char kat3465_addinpr2[] = {0}; +static const unsigned char kat3465_retbits[] = { + 0x82, 0xf7, 0x8f, 0x8c, 0x9a, 0x36, 0x95, 0x90, 0xaa, 0x2a, 0x61, 0x20, + 0xb2, 0x0b, 0x25, 0x6e, 0xbb, 0x42, 0x33, 0xf3, 0x4b, 0x7f, 0x08, 0x81, + 0xaa, 0x7b, 0xa6, 0x9a, 0xda, 0x8f, 0xcb, 0xf4, 0xc4, 0x73, 0xfb, 0xf2, + 0x4d, 0x80, 0x1f, 0xde, 0xb3, 0x31, 0x54, 0xc0, 0xec, 0xcc, 0x65, 0x0a, + 0x0a, 0x41, 0x1d, 0x2b, 0xa2, 0xfb, 0x32, 0xe8, 0x34, 0xe3, 0x51, 0x8f, + 0x43, 0x20, 0xa3, 0x07, +}; +static const struct drbg_kat_pr_true kat3465_t = { + 14, kat3465_entropyin, kat3465_nonce, kat3465_persstr, + kat3465_entropyinpr1, kat3465_addinpr1, kat3465_entropyinpr2, + kat3465_addinpr2, kat3465_retbits +}; +static const struct drbg_kat kat3465 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3465_t +}; + +static const unsigned char kat3466_entropyin[] = { + 0x12, 0xb0, 0x08, 0xa9, 0xfb, 0xac, 0x31, 0xaa, 0xa8, 0xd0, 0x46, 0xb1, + 0x50, 0xdf, 0x91, 0x18, 0xa9, 0x5b, 0x00, 0x0b, 0x69, 0xca, 0xc2, 0x1d, + 0xa4, 0xda, 0x49, 0x9d, 0x1b, 0xd2, 0xff, 0xb7, +}; +static const unsigned char kat3466_nonce[] = { + 0x82, 0xd9, 0xb3, 0x97, 0x9a, 0x99, 0xde, 0x7b, 0xc1, 0x7e, 0x38, 0x79, + 0x03, 0x87, 0x94, 0xda, +}; +static const unsigned char kat3466_persstr[] = { + 0xfc, 0xbf, 0xbd, 0x88, 0xc4, 0xb8, 0x65, 0x13, 0x88, 0xe5, 0xc5, 0x86, + 0xcf, 0x5a, 0xb8, 0x62, 0x0d, 0x54, 0x7f, 0x43, 0x6b, 0x97, 0xc9, 0x93, + 0x46, 0x0f, 0xa5, 0xac, 0x99, 0x16, 0x37, 0xf1, +}; +static const unsigned char kat3466_entropyinpr1[] = { + 0x88, 0xac, 0xf8, 0x81, 0x66, 0x5c, 0x99, 0x45, 0x95, 0xee, 0x65, 0x39, + 0xc5, 0x66, 0x1f, 0x82, 0x0e, 0xef, 0xba, 0xf3, 0x07, 0xe4, 0x8c, 0x58, + 0x52, 0x66, 0x05, 0x52, 0xb7, 0x9d, 0x41, 0x9c, +}; +static const unsigned char kat3466_addinpr1[] = { + 0xe5, 0x6a, 0x9a, 0x3b, 0x45, 0x22, 0x88, 0x4b, 0xc9, 0xb6, 0x49, 0x76, + 0x83, 0x73, 0x21, 0x63, 0xe3, 0x14, 0x1c, 0xf0, 0xf9, 0xd4, 0xa0, 0x8d, + 0x86, 0x4f, 0xbd, 0x72, 0xdc, 0x36, 0x11, 0x6f, +}; +static const unsigned char kat3466_entropyinpr2[] = { + 0x8a, 0x47, 0x66, 0x5e, 0x48, 0x50, 0xd4, 0x89, 0xc4, 0x0b, 0xac, 0x6e, + 0x59, 0x41, 0xd2, 0x16, 0xf1, 0x80, 0x1f, 0x67, 0xeb, 0x3a, 0xbd, 0x59, + 0xa6, 0x23, 0xcc, 0xbd, 0x5f, 0x15, 0x12, 0x46, +}; +static const unsigned char kat3466_addinpr2[] = { + 0x89, 0x67, 0x59, 0x14, 0x27, 0xfb, 0xa1, 0x74, 0xe1, 0x8a, 0x2c, 0xff, + 0xfb, 0x2b, 0xe1, 0xf4, 0x89, 0xc8, 0x5a, 0x13, 0x09, 0x1b, 0xdf, 0xba, + 0x81, 0xf0, 0x82, 0xdd, 0xbe, 0xc3, 0x68, 0x97, +}; +static const unsigned char kat3466_retbits[] = { + 0x3e, 0xa6, 0xb9, 0x01, 0x38, 0xe7, 0x65, 0x57, 0x2f, 0x59, 0xb3, 0x35, + 0x42, 0x79, 0x0d, 0x4c, 0xd4, 0x5c, 0x68, 0xa4, 0xf7, 0xe3, 0x92, 0xcf, + 0xb3, 0xf4, 0xfa, 0xef, 0xd4, 0xce, 0x0d, 0x32, 0x04, 0x48, 0x02, 0x84, + 0x19, 0x0b, 0x35, 0xd9, 0x2f, 0x96, 0xc0, 0xb0, 0x35, 0x81, 0xbf, 0xc1, + 0x07, 0x9e, 0x7b, 0xa9, 0x76, 0x92, 0xbf, 0x9c, 0x7e, 0x2e, 0x0e, 0x86, + 0x3b, 0xee, 0x77, 0x3e, +}; +static const struct drbg_kat_pr_true kat3466_t = { + 0, kat3466_entropyin, kat3466_nonce, kat3466_persstr, + kat3466_entropyinpr1, kat3466_addinpr1, kat3466_entropyinpr2, + kat3466_addinpr2, kat3466_retbits +}; +static const struct drbg_kat kat3466 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3466_t +}; + +static const unsigned char kat3467_entropyin[] = { + 0x16, 0x06, 0x27, 0xa0, 0xaf, 0xc7, 0xd5, 0xfb, 0x08, 0xe3, 0x6d, 0x38, + 0xb4, 0xcf, 0x88, 0xfa, 0x81, 0xf3, 0x70, 0x4b, 0x10, 0xf7, 0x7d, 0xea, + 0x98, 0xe8, 0x07, 0xb3, 0x9a, 0x07, 0x7c, 0x07, +}; +static const unsigned char kat3467_nonce[] = { + 0x64, 0x98, 0xb5, 0x1a, 0x48, 0xc8, 0x50, 0x60, 0xc2, 0x06, 0x9e, 0x61, + 0x3e, 0x64, 0x78, 0x57, +}; +static const unsigned char kat3467_persstr[] = { + 0xf6, 0x76, 0x09, 0xed, 0x7d, 0x74, 0xe8, 0xc2, 0x2f, 0xe1, 0x8f, 0x74, + 0xd4, 0x49, 0xcb, 0x8d, 0x24, 0xd1, 0xba, 0xd7, 0x30, 0x64, 0xb7, 0xc5, + 0x14, 0x84, 0x7d, 0x9a, 0xd6, 0xd6, 0xbc, 0x01, +}; +static const unsigned char kat3467_entropyinpr1[] = { + 0x0a, 0x42, 0x3c, 0xde, 0x16, 0x4b, 0x9a, 0x4f, 0x8c, 0xf8, 0x56, 0x86, + 0x62, 0xc5, 0x53, 0x50, 0x43, 0x46, 0xf0, 0x1c, 0xd5, 0x6f, 0x36, 0x60, + 0xfd, 0x7f, 0xbc, 0x64, 0xa7, 0x3e, 0x05, 0xd7, +}; +static const unsigned char kat3467_addinpr1[] = { + 0x1f, 0x42, 0x0b, 0xc5, 0xba, 0xa3, 0xea, 0x36, 0xb7, 0xb8, 0x28, 0x33, + 0x3f, 0x6e, 0x0b, 0x95, 0x53, 0x12, 0x4d, 0x49, 0xc4, 0x51, 0x24, 0x39, + 0x84, 0x00, 0x22, 0xba, 0x89, 0x43, 0x58, 0xae, +}; +static const unsigned char kat3467_entropyinpr2[] = { + 0xba, 0xed, 0x1a, 0x2a, 0x85, 0xa3, 0x45, 0x1e, 0x50, 0x73, 0xde, 0x03, + 0xc9, 0x98, 0x58, 0xc7, 0xb5, 0x26, 0x24, 0xd6, 0x99, 0xaf, 0x35, 0xea, + 0x80, 0xdd, 0x74, 0xef, 0x93, 0x5a, 0x6b, 0xa3, +}; +static const unsigned char kat3467_addinpr2[] = { + 0xcb, 0xbf, 0xda, 0xd4, 0x63, 0x5c, 0xb5, 0x33, 0x40, 0xa2, 0x75, 0x00, + 0x8c, 0xa8, 0xaf, 0x24, 0xd1, 0x98, 0x2d, 0x59, 0x0a, 0x65, 0x47, 0x4f, + 0xf2, 0xbc, 0xee, 0xd8, 0xc8, 0xd1, 0x65, 0xe1, +}; +static const unsigned char kat3467_retbits[] = { + 0xa2, 0x20, 0xb6, 0xda, 0xf3, 0xb6, 0xc9, 0xc2, 0x41, 0x57, 0x75, 0xd5, + 0x6b, 0xbe, 0x64, 0x77, 0xda, 0x2c, 0x79, 0xd0, 0xbf, 0xd0, 0x4e, 0x2c, + 0x89, 0xc7, 0xe5, 0xe3, 0xe9, 0x00, 0xfa, 0x3a, 0xe4, 0x38, 0xb5, 0x78, + 0x0d, 0x8d, 0xda, 0x95, 0xf7, 0x22, 0xf9, 0xcf, 0xbf, 0x5f, 0x6e, 0x0a, + 0x68, 0xd4, 0xfe, 0xa7, 0x07, 0x5d, 0x11, 0xda, 0x55, 0x13, 0x3e, 0x35, + 0x15, 0x6b, 0xc9, 0x4f, +}; +static const struct drbg_kat_pr_true kat3467_t = { + 1, kat3467_entropyin, kat3467_nonce, kat3467_persstr, + kat3467_entropyinpr1, kat3467_addinpr1, kat3467_entropyinpr2, + kat3467_addinpr2, kat3467_retbits +}; +static const struct drbg_kat kat3467 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3467_t +}; + +static const unsigned char kat3468_entropyin[] = { + 0x01, 0x37, 0xcd, 0x0f, 0xcd, 0x80, 0xca, 0xba, 0x70, 0x96, 0x18, 0x58, + 0xc5, 0x6d, 0xa4, 0x37, 0xa5, 0xc6, 0xe3, 0xf1, 0x37, 0x9b, 0xa6, 0x3b, + 0x76, 0xf8, 0x61, 0x84, 0xbb, 0xbc, 0x3c, 0x5b, +}; +static const unsigned char kat3468_nonce[] = { + 0x6c, 0x92, 0x65, 0xa3, 0xfa, 0x8d, 0xa4, 0x2f, 0x2d, 0xd6, 0x33, 0x74, + 0xdd, 0x3b, 0xf4, 0x2a, +}; +static const unsigned char kat3468_persstr[] = { + 0xe2, 0x5c, 0x93, 0x5a, 0x97, 0x06, 0xd4, 0x16, 0xd8, 0x5f, 0xe0, 0x23, + 0x66, 0xdf, 0x5c, 0x7d, 0x8a, 0xf7, 0x7b, 0xc4, 0xf7, 0xdd, 0xa9, 0x7b, + 0x73, 0x9e, 0xe1, 0x68, 0xde, 0xdc, 0x51, 0x8a, +}; +static const unsigned char kat3468_entropyinpr1[] = { + 0xa6, 0xbe, 0x42, 0x6a, 0x2b, 0x22, 0x83, 0x40, 0xfd, 0x4f, 0xb1, 0xd5, + 0x7b, 0x22, 0x8a, 0x60, 0x0d, 0xeb, 0x8d, 0x82, 0xbf, 0xe3, 0x17, 0x56, + 0xae, 0x92, 0x62, 0xe9, 0xe9, 0x9a, 0xaa, 0x73, +}; +static const unsigned char kat3468_addinpr1[] = { + 0xd1, 0x41, 0x69, 0x59, 0x3c, 0xe1, 0xb3, 0x7c, 0x91, 0x59, 0x6d, 0x02, + 0x7b, 0x55, 0xe0, 0xe9, 0xc5, 0xa6, 0xf6, 0x66, 0x7b, 0xf6, 0x2b, 0x42, + 0xab, 0x4a, 0xc2, 0x46, 0x80, 0xb1, 0xea, 0xb4, +}; +static const unsigned char kat3468_entropyinpr2[] = { + 0x86, 0xf5, 0x2b, 0x61, 0x47, 0x58, 0x7e, 0x6f, 0xc3, 0x8c, 0x42, 0xd5, + 0xfa, 0xf7, 0x61, 0xeb, 0x65, 0x09, 0xeb, 0xb1, 0x07, 0x17, 0x06, 0xae, + 0x0d, 0x08, 0x88, 0x82, 0xc9, 0x51, 0x89, 0x76, +}; +static const unsigned char kat3468_addinpr2[] = { + 0x03, 0x11, 0xb0, 0xad, 0x7c, 0xc7, 0x0d, 0x78, 0x45, 0xee, 0xbe, 0xed, + 0x33, 0xfe, 0x89, 0x24, 0x3f, 0x61, 0x76, 0xed, 0x88, 0xe7, 0xe9, 0xcb, + 0x7b, 0x4b, 0xd9, 0x27, 0x65, 0x41, 0x9b, 0x4c, +}; +static const unsigned char kat3468_retbits[] = { + 0x79, 0x96, 0xf6, 0x83, 0x88, 0xb1, 0xc3, 0x17, 0x4a, 0xc3, 0x33, 0xbe, + 0xa7, 0xfe, 0x19, 0xb1, 0x5a, 0xe2, 0x10, 0x01, 0x55, 0x4f, 0x0e, 0x1c, + 0x17, 0x08, 0x4c, 0x1a, 0x29, 0x6b, 0x46, 0x13, 0xf3, 0x9d, 0x94, 0xa9, + 0x3b, 0xdf, 0xa7, 0x06, 0xc7, 0x76, 0xb7, 0x93, 0x41, 0x54, 0x91, 0xf5, + 0x21, 0xf9, 0x22, 0x9c, 0x87, 0x97, 0xaa, 0x29, 0x64, 0x68, 0x18, 0xab, + 0x43, 0x67, 0xd3, 0x2b, +}; +static const struct drbg_kat_pr_true kat3468_t = { + 2, kat3468_entropyin, kat3468_nonce, kat3468_persstr, + kat3468_entropyinpr1, kat3468_addinpr1, kat3468_entropyinpr2, + kat3468_addinpr2, kat3468_retbits +}; +static const struct drbg_kat kat3468 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3468_t +}; + +static const unsigned char kat3469_entropyin[] = { + 0xcc, 0x0a, 0xd2, 0xcb, 0x3a, 0x15, 0x8e, 0xb3, 0x77, 0x3d, 0x46, 0x48, + 0x64, 0x53, 0xbf, 0xe6, 0xb9, 0x24, 0xa1, 0xbe, 0x7e, 0x24, 0x69, 0xb5, + 0x86, 0xa8, 0x23, 0x2c, 0xe1, 0x06, 0x5e, 0xf2, +}; +static const unsigned char kat3469_nonce[] = { + 0x53, 0xdc, 0x3e, 0x49, 0x4c, 0x17, 0xdc, 0x64, 0xdb, 0x46, 0x4d, 0x28, + 0xc0, 0x0b, 0x00, 0x50, +}; +static const unsigned char kat3469_persstr[] = { + 0x8b, 0x63, 0x08, 0x2f, 0x7c, 0x02, 0xcb, 0x5b, 0x77, 0x19, 0xdf, 0x24, + 0xc3, 0x71, 0x93, 0x8c, 0xac, 0x7f, 0x4b, 0xda, 0x4b, 0xcc, 0xfe, 0x89, + 0x3f, 0xbf, 0xe5, 0xa0, 0x2f, 0xf3, 0xfe, 0xfd, +}; +static const unsigned char kat3469_entropyinpr1[] = { + 0xf5, 0xc0, 0x06, 0xd6, 0x06, 0xe6, 0xad, 0xa6, 0xd0, 0xcc, 0x9d, 0xa0, + 0x1a, 0x6d, 0x13, 0x32, 0x4b, 0xf5, 0x6b, 0x86, 0x19, 0x45, 0x01, 0x1f, + 0x9d, 0x3e, 0xd9, 0x1b, 0x17, 0x1a, 0xaa, 0xe1, +}; +static const unsigned char kat3469_addinpr1[] = { + 0x0e, 0x75, 0x93, 0x8c, 0x7d, 0x35, 0x04, 0x08, 0xa1, 0xcc, 0x05, 0x34, + 0x9d, 0xb5, 0x95, 0x89, 0x17, 0xd0, 0x11, 0x41, 0xb8, 0x32, 0x86, 0x6a, + 0xa3, 0x41, 0x68, 0xc4, 0x81, 0xd8, 0x7e, 0x09, +}; +static const unsigned char kat3469_entropyinpr2[] = { + 0x84, 0xf7, 0x9d, 0x37, 0x33, 0x3b, 0x86, 0xad, 0xbf, 0xb1, 0x31, 0x16, + 0xf6, 0xa6, 0xc4, 0xb1, 0x02, 0xcc, 0x82, 0x9a, 0x67, 0xd2, 0x82, 0x9f, + 0x5c, 0x57, 0x7a, 0xfc, 0x84, 0x50, 0x46, 0xd5, +}; +static const unsigned char kat3469_addinpr2[] = { + 0xd5, 0xe7, 0x1f, 0x16, 0x49, 0x2b, 0x62, 0x63, 0xa0, 0x5c, 0x89, 0x23, + 0xc7, 0x26, 0x20, 0x3f, 0x11, 0xc9, 0xca, 0xb8, 0x8d, 0x7a, 0x94, 0x91, + 0x87, 0x45, 0xaf, 0xbb, 0x18, 0x27, 0xa3, 0x8f, +}; +static const unsigned char kat3469_retbits[] = { + 0x98, 0x49, 0x3c, 0x84, 0x38, 0xd6, 0x82, 0x83, 0x53, 0x03, 0x15, 0x62, + 0x99, 0xef, 0x75, 0x15, 0x45, 0xe2, 0xdf, 0x6b, 0x60, 0xed, 0x67, 0x5a, + 0xee, 0x31, 0xe0, 0xf8, 0x98, 0x2b, 0x9a, 0xdd, 0x88, 0x52, 0x54, 0xb0, + 0xc7, 0x1d, 0x12, 0xb1, 0xc1, 0x1e, 0x78, 0x6a, 0x5c, 0xd7, 0x03, 0xfb, + 0xf5, 0xf7, 0x54, 0x5f, 0xba, 0xa5, 0xd3, 0xfe, 0x49, 0x9e, 0x9d, 0x95, + 0xd9, 0x33, 0xde, 0xa8, +}; +static const struct drbg_kat_pr_true kat3469_t = { + 3, kat3469_entropyin, kat3469_nonce, kat3469_persstr, + kat3469_entropyinpr1, kat3469_addinpr1, kat3469_entropyinpr2, + kat3469_addinpr2, kat3469_retbits +}; +static const struct drbg_kat kat3469 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3469_t +}; + +static const unsigned char kat3470_entropyin[] = { + 0x75, 0x73, 0x62, 0x51, 0x65, 0x32, 0x35, 0xe3, 0xfb, 0x1b, 0x89, 0x11, + 0x64, 0x46, 0xdc, 0x80, 0xdf, 0xb2, 0x49, 0x2b, 0x38, 0x20, 0xb2, 0xb0, + 0x3d, 0x50, 0x35, 0x33, 0x1c, 0x8c, 0xd6, 0x54, +}; +static const unsigned char kat3470_nonce[] = { + 0x4f, 0x20, 0x31, 0x76, 0x61, 0x2c, 0xcd, 0x27, 0x7a, 0x2c, 0x47, 0x64, + 0x7a, 0xe4, 0x74, 0x12, +}; +static const unsigned char kat3470_persstr[] = { + 0x87, 0x0c, 0xba, 0xaa, 0x61, 0xac, 0x66, 0xf6, 0x48, 0x9a, 0xe5, 0x46, + 0x4a, 0x15, 0xa3, 0x38, 0x4f, 0xb5, 0xf9, 0x71, 0xca, 0x2b, 0x8b, 0xda, + 0x92, 0xe3, 0x06, 0x6f, 0x4c, 0xa7, 0xf5, 0xdc, +}; +static const unsigned char kat3470_entropyinpr1[] = { + 0x2e, 0xa2, 0xd9, 0xe9, 0x55, 0xf3, 0x09, 0x39, 0x68, 0x49, 0x24, 0x96, + 0xbf, 0x85, 0x9e, 0xf7, 0xec, 0xbb, 0x60, 0x4f, 0xf2, 0x43, 0x02, 0x0a, + 0x98, 0xc0, 0xa9, 0xb7, 0x9d, 0xa4, 0x5a, 0x18, +}; +static const unsigned char kat3470_addinpr1[] = { + 0xac, 0xa6, 0xc8, 0xa1, 0xa9, 0xcd, 0x22, 0x93, 0x2a, 0x41, 0x30, 0x30, + 0xa3, 0x51, 0x96, 0xa1, 0xd8, 0x37, 0x6a, 0x31, 0x82, 0x14, 0x72, 0xcf, + 0x83, 0x4a, 0x07, 0x20, 0xd8, 0x55, 0x40, 0x42, +}; +static const unsigned char kat3470_entropyinpr2[] = { + 0x09, 0x71, 0x6b, 0x11, 0x86, 0x91, 0x68, 0xc6, 0x2d, 0x27, 0xeb, 0xf0, + 0xad, 0x67, 0x07, 0xfe, 0xab, 0x9c, 0x66, 0x65, 0xa8, 0xd3, 0x13, 0x3b, + 0x53, 0x88, 0xfd, 0x21, 0xa4, 0xd3, 0x0c, 0xd2, +}; +static const unsigned char kat3470_addinpr2[] = { + 0x77, 0xa6, 0xcd, 0x42, 0x17, 0x90, 0x71, 0xe6, 0x81, 0xeb, 0xcd, 0x82, + 0xf3, 0x0d, 0xf8, 0xb1, 0x89, 0x7c, 0x25, 0x77, 0xcb, 0xd4, 0x14, 0x32, + 0xb6, 0x64, 0x99, 0x3e, 0xd7, 0xa0, 0x12, 0x87, +}; +static const unsigned char kat3470_retbits[] = { + 0xf8, 0x84, 0x57, 0x3a, 0x22, 0x30, 0x45, 0x60, 0xe2, 0x5a, 0xcd, 0x7b, + 0xfa, 0x83, 0x9b, 0x23, 0xe5, 0x64, 0xaa, 0x77, 0x49, 0x06, 0x26, 0x32, + 0x16, 0x09, 0x98, 0xcd, 0xec, 0x07, 0x95, 0x6f, 0xc4, 0x0a, 0x44, 0x59, + 0x34, 0xfc, 0x5c, 0xb0, 0xd0, 0xc2, 0x4d, 0x0c, 0x3d, 0xa9, 0x38, 0x67, + 0x0b, 0xbd, 0x70, 0x63, 0xd3, 0xcc, 0xd5, 0xc2, 0xd9, 0xc5, 0xed, 0xbe, + 0x52, 0xcd, 0x0e, 0x9c, +}; +static const struct drbg_kat_pr_true kat3470_t = { + 4, kat3470_entropyin, kat3470_nonce, kat3470_persstr, + kat3470_entropyinpr1, kat3470_addinpr1, kat3470_entropyinpr2, + kat3470_addinpr2, kat3470_retbits +}; +static const struct drbg_kat kat3470 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3470_t +}; + +static const unsigned char kat3471_entropyin[] = { + 0x25, 0x47, 0xa3, 0xef, 0xfa, 0x12, 0xd6, 0x07, 0xe3, 0x01, 0x20, 0xf6, + 0xa9, 0x4b, 0x7e, 0x35, 0xf9, 0x96, 0x0a, 0xba, 0x3e, 0x55, 0x33, 0x65, + 0xa0, 0x3d, 0x0f, 0x52, 0xfd, 0xad, 0x8c, 0x83, +}; +static const unsigned char kat3471_nonce[] = { + 0x4f, 0x5f, 0xf3, 0x54, 0x0a, 0xb0, 0xaf, 0xcb, 0xc2, 0x0c, 0x63, 0x33, + 0x76, 0xc4, 0x44, 0xac, +}; +static const unsigned char kat3471_persstr[] = { + 0x30, 0x95, 0xdd, 0xa5, 0xe7, 0xeb, 0x87, 0xa7, 0x2e, 0x2d, 0x9a, 0x31, + 0xf2, 0x29, 0x43, 0xaa, 0x7f, 0xa3, 0x1c, 0xc9, 0x57, 0x41, 0x0c, 0xfa, + 0xcf, 0x4c, 0xd7, 0x09, 0x58, 0xbc, 0xfb, 0x9d, +}; +static const unsigned char kat3471_entropyinpr1[] = { + 0x4e, 0x6e, 0x86, 0xb4, 0x1d, 0x12, 0xae, 0x64, 0xc9, 0xb3, 0xa8, 0x75, + 0x70, 0xe7, 0xc8, 0xad, 0x55, 0x74, 0x3e, 0x0f, 0x71, 0xa7, 0xf3, 0x00, + 0xe0, 0x2f, 0x6d, 0xe8, 0x17, 0x88, 0x93, 0x30, +}; +static const unsigned char kat3471_addinpr1[] = { + 0x64, 0x8b, 0x8f, 0x81, 0x12, 0xfd, 0x94, 0x8d, 0xe9, 0x3b, 0x8c, 0x64, + 0x1b, 0xb6, 0xd2, 0xa0, 0x2b, 0x34, 0x2b, 0x7d, 0x64, 0x19, 0x01, 0x03, + 0xe2, 0x02, 0x34, 0x4d, 0x42, 0x34, 0x61, 0x3a, +}; +static const unsigned char kat3471_entropyinpr2[] = { + 0x16, 0xee, 0x00, 0x0b, 0xc8, 0xd2, 0x36, 0x58, 0x61, 0x30, 0x60, 0x10, + 0x5f, 0x0c, 0x50, 0xad, 0x87, 0x84, 0x2f, 0x35, 0x9d, 0x5f, 0xce, 0x3e, + 0x1a, 0x2a, 0x6e, 0x4e, 0xf8, 0xc8, 0x25, 0xf4, +}; +static const unsigned char kat3471_addinpr2[] = { + 0x72, 0xa7, 0xa6, 0x3c, 0xd2, 0x9f, 0xed, 0x4c, 0xc2, 0x55, 0x40, 0x89, + 0x71, 0xb9, 0x7f, 0xf5, 0x9e, 0x7e, 0xe0, 0xb7, 0x84, 0x71, 0xb8, 0x63, + 0x7c, 0xc6, 0xcb, 0xfc, 0xc0, 0x12, 0xaf, 0x3c, +}; +static const unsigned char kat3471_retbits[] = { + 0xbf, 0x88, 0x99, 0x1c, 0x85, 0xca, 0xac, 0x5f, 0x39, 0x2c, 0xc2, 0xbc, + 0x6f, 0x08, 0x19, 0xe2, 0x42, 0x5c, 0x22, 0x7f, 0x0f, 0x5d, 0x48, 0x02, + 0x9c, 0x83, 0x85, 0xa8, 0x2d, 0x35, 0xa1, 0x83, 0x33, 0x73, 0xd5, 0xa1, + 0xa9, 0xc2, 0x23, 0x94, 0x96, 0xd3, 0xa3, 0xbf, 0xd4, 0xd8, 0x95, 0x63, + 0x27, 0xee, 0x35, 0x39, 0x04, 0xc0, 0x0a, 0xdb, 0xd0, 0x7d, 0x53, 0x3b, + 0x9f, 0x66, 0x13, 0xc1, +}; +static const struct drbg_kat_pr_true kat3471_t = { + 5, kat3471_entropyin, kat3471_nonce, kat3471_persstr, + kat3471_entropyinpr1, kat3471_addinpr1, kat3471_entropyinpr2, + kat3471_addinpr2, kat3471_retbits +}; +static const struct drbg_kat kat3471 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3471_t +}; + +static const unsigned char kat3472_entropyin[] = { + 0x94, 0x66, 0x0d, 0x5e, 0x5f, 0xfa, 0x59, 0xda, 0x53, 0x0d, 0xd2, 0x0d, + 0x9b, 0x9c, 0x80, 0x25, 0x02, 0x95, 0x9a, 0xf6, 0xd7, 0xc4, 0x35, 0x16, + 0xb4, 0x29, 0x1e, 0xc9, 0x16, 0x48, 0xba, 0xaa, +}; +static const unsigned char kat3472_nonce[] = { + 0x12, 0x35, 0x96, 0x80, 0x75, 0x82, 0x5c, 0x20, 0x2d, 0xe9, 0xb0, 0xcb, + 0xc2, 0x4f, 0x2e, 0x01, +}; +static const unsigned char kat3472_persstr[] = { + 0x8c, 0xe4, 0xad, 0x45, 0x7e, 0x59, 0x09, 0xd3, 0xb5, 0x35, 0x21, 0x08, + 0xc2, 0x0e, 0xa9, 0x25, 0x60, 0x2b, 0x92, 0xfe, 0x90, 0x4b, 0xd7, 0x9b, + 0x15, 0x93, 0x21, 0xf5, 0x76, 0xd2, 0xa8, 0xcd, +}; +static const unsigned char kat3472_entropyinpr1[] = { + 0x4f, 0x52, 0x69, 0xde, 0x5c, 0xd3, 0x55, 0x54, 0xbc, 0x89, 0x5a, 0x5b, + 0x6b, 0x05, 0x27, 0x5d, 0xeb, 0xfb, 0x45, 0x5d, 0x31, 0xee, 0x70, 0xfb, + 0x2f, 0xa4, 0x0d, 0x1a, 0x9e, 0x76, 0x2b, 0xbc, +}; +static const unsigned char kat3472_addinpr1[] = { + 0xf1, 0x9e, 0x1f, 0x45, 0x52, 0x63, 0x41, 0x4f, 0x55, 0x77, 0x68, 0x7f, + 0xbd, 0xf5, 0xd4, 0xdf, 0xbd, 0xdf, 0xc5, 0x7c, 0x98, 0xc7, 0xd7, 0x56, + 0xd0, 0x10, 0xad, 0xff, 0x5c, 0x52, 0xa7, 0x67, +}; +static const unsigned char kat3472_entropyinpr2[] = { + 0x01, 0xb2, 0xef, 0x47, 0x2b, 0xc8, 0x4f, 0x90, 0xc0, 0x22, 0x76, 0x36, + 0x57, 0xce, 0x56, 0x41, 0xc0, 0x9a, 0xdf, 0xb5, 0x33, 0xf8, 0x2b, 0xff, + 0x4f, 0xa1, 0xe1, 0x95, 0x0b, 0x89, 0x8a, 0x22, +}; +static const unsigned char kat3472_addinpr2[] = { + 0xdc, 0xa7, 0xc7, 0xc0, 0x34, 0xc2, 0x54, 0x3d, 0x39, 0xe6, 0x36, 0xa1, + 0xbc, 0xe6, 0x3d, 0xdb, 0x56, 0xc8, 0x1c, 0xdc, 0x78, 0xf4, 0xc6, 0x4d, + 0x85, 0xb1, 0x15, 0x86, 0x14, 0xda, 0xea, 0x35, +}; +static const unsigned char kat3472_retbits[] = { + 0xd3, 0xab, 0x21, 0xeb, 0x04, 0x02, 0x90, 0x00, 0xf8, 0x00, 0xc7, 0x22, + 0x0a, 0x48, 0x86, 0xb8, 0xb8, 0x18, 0x81, 0xa1, 0x5b, 0x9e, 0x43, 0xb4, + 0x80, 0x92, 0x88, 0x13, 0xe8, 0x4c, 0x14, 0x3b, 0x81, 0x59, 0x22, 0xea, + 0x9f, 0xef, 0x46, 0xe1, 0x4f, 0x8e, 0xec, 0xc9, 0xd9, 0x85, 0x98, 0xb7, + 0xa9, 0x7f, 0x98, 0x89, 0x56, 0x7b, 0x4e, 0x92, 0xb3, 0x5b, 0x3f, 0xa6, + 0x4c, 0x35, 0xe7, 0xf6, +}; +static const struct drbg_kat_pr_true kat3472_t = { + 6, kat3472_entropyin, kat3472_nonce, kat3472_persstr, + kat3472_entropyinpr1, kat3472_addinpr1, kat3472_entropyinpr2, + kat3472_addinpr2, kat3472_retbits +}; +static const struct drbg_kat kat3472 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3472_t +}; + +static const unsigned char kat3473_entropyin[] = { + 0x21, 0x39, 0x8e, 0x68, 0xde, 0x5b, 0x4a, 0x93, 0x4e, 0xa0, 0xf3, 0xfa, + 0x58, 0xfb, 0x48, 0xe0, 0xa3, 0xec, 0x9e, 0x81, 0xcf, 0xe3, 0x4a, 0xab, + 0x36, 0x1b, 0x93, 0x94, 0xe7, 0x20, 0x9a, 0xa1, +}; +static const unsigned char kat3473_nonce[] = { + 0x80, 0x4f, 0x75, 0x24, 0x5f, 0xf9, 0x26, 0xb8, 0xd8, 0xe7, 0x60, 0xf9, + 0xdb, 0xee, 0x8a, 0xbd, +}; +static const unsigned char kat3473_persstr[] = { + 0xe9, 0x97, 0xc5, 0x36, 0x8a, 0x7b, 0x58, 0xdd, 0x3f, 0x2f, 0x3f, 0x8e, + 0xbd, 0x64, 0x70, 0x8d, 0xc2, 0x19, 0xc1, 0x27, 0xfc, 0xce, 0x7d, 0x81, + 0x4c, 0xc4, 0xd7, 0x5c, 0xe3, 0xd6, 0x09, 0xcd, +}; +static const unsigned char kat3473_entropyinpr1[] = { + 0xae, 0xa0, 0x22, 0xf8, 0x14, 0xb3, 0xff, 0x88, 0x81, 0x64, 0xab, 0xdd, + 0x7b, 0x87, 0xd7, 0xef, 0xee, 0xb8, 0x47, 0x47, 0xd0, 0x95, 0x21, 0x4a, + 0x05, 0xc5, 0x33, 0x77, 0x87, 0xca, 0x10, 0xe9, +}; +static const unsigned char kat3473_addinpr1[] = { + 0xa3, 0x79, 0x47, 0x14, 0x9e, 0x58, 0x30, 0x7d, 0xdb, 0x28, 0x9a, 0x08, + 0x97, 0x2f, 0x33, 0xce, 0xae, 0x36, 0xd9, 0x2c, 0x5d, 0xf0, 0x07, 0x40, + 0x17, 0xfc, 0xe9, 0xdf, 0xc9, 0x87, 0x77, 0xe3, +}; +static const unsigned char kat3473_entropyinpr2[] = { + 0xcd, 0x0f, 0xfb, 0xba, 0x56, 0x92, 0xc3, 0xce, 0xf2, 0xf5, 0x5e, 0xd5, + 0x14, 0xd1, 0x19, 0xf5, 0x5a, 0x23, 0x7a, 0x2a, 0xfa, 0x20, 0xc9, 0x1c, + 0x82, 0xb7, 0xa1, 0x5b, 0x96, 0x3e, 0x5b, 0xc5, +}; +static const unsigned char kat3473_addinpr2[] = { + 0xaf, 0x9a, 0x76, 0x9f, 0xa9, 0x4d, 0xba, 0x5a, 0x9d, 0xbe, 0xa4, 0x48, + 0xeb, 0x8d, 0x6d, 0xf3, 0x76, 0x36, 0x16, 0x69, 0x53, 0x49, 0x13, 0x5e, + 0xa3, 0x2a, 0x97, 0xe0, 0xa5, 0x7e, 0xda, 0xfb, +}; +static const unsigned char kat3473_retbits[] = { + 0x1a, 0xdb, 0x11, 0x1b, 0x7b, 0x15, 0x9c, 0xae, 0x8e, 0x69, 0x54, 0x29, + 0x9c, 0xf3, 0xc5, 0x58, 0xc4, 0xc7, 0x10, 0xce, 0xb5, 0xdb, 0x33, 0x28, + 0x27, 0xda, 0x86, 0x6f, 0x07, 0x32, 0xd8, 0xbc, 0xc7, 0x33, 0x24, 0x1f, + 0x50, 0xb2, 0x0f, 0x80, 0xe0, 0xf4, 0xee, 0xf2, 0x55, 0x46, 0x00, 0xb6, + 0x5c, 0x25, 0x35, 0xdb, 0xb1, 0xa2, 0xd7, 0x2b, 0xf5, 0x35, 0xb8, 0x1a, + 0x1e, 0x9c, 0x58, 0x82, +}; +static const struct drbg_kat_pr_true kat3473_t = { + 7, kat3473_entropyin, kat3473_nonce, kat3473_persstr, + kat3473_entropyinpr1, kat3473_addinpr1, kat3473_entropyinpr2, + kat3473_addinpr2, kat3473_retbits +}; +static const struct drbg_kat kat3473 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3473_t +}; + +static const unsigned char kat3474_entropyin[] = { + 0xfa, 0xb9, 0x80, 0x67, 0x03, 0xee, 0xbd, 0x6e, 0xc8, 0x5d, 0xbd, 0xfe, + 0x99, 0x9c, 0xb1, 0x45, 0x9e, 0xaa, 0x80, 0x6f, 0x46, 0xba, 0x98, 0x81, + 0x42, 0x85, 0x0b, 0x41, 0xf6, 0x2a, 0xd0, 0x9a, +}; +static const unsigned char kat3474_nonce[] = { + 0xa2, 0xc4, 0x6e, 0xd7, 0xc2, 0xa9, 0x93, 0xdb, 0xf7, 0x7e, 0xcf, 0x64, + 0xe7, 0xa1, 0x2b, 0x82, +}; +static const unsigned char kat3474_persstr[] = { + 0x48, 0x18, 0xfd, 0x97, 0x0c, 0xda, 0xf7, 0xbc, 0x82, 0xb8, 0x0e, 0x14, + 0x19, 0xcb, 0xb1, 0xa8, 0x43, 0x75, 0xf2, 0x20, 0x00, 0xd8, 0x9a, 0x61, + 0xd0, 0x60, 0x6d, 0xb3, 0xf3, 0x27, 0x30, 0x68, +}; +static const unsigned char kat3474_entropyinpr1[] = { + 0x28, 0x94, 0x58, 0xc8, 0x9c, 0x57, 0xd8, 0x01, 0x7d, 0x89, 0xf9, 0xbe, + 0xac, 0x9d, 0x79, 0x33, 0x8e, 0x71, 0xfa, 0x70, 0xb3, 0x87, 0x8e, 0x42, + 0x4d, 0x47, 0x4d, 0x27, 0x7e, 0x97, 0x14, 0xcb, +}; +static const unsigned char kat3474_addinpr1[] = { + 0xda, 0xe8, 0x17, 0x30, 0x3d, 0x48, 0x14, 0xc4, 0xe0, 0xc4, 0x18, 0x63, + 0xe2, 0xd8, 0x6e, 0x2d, 0x50, 0x6b, 0x49, 0x54, 0x03, 0x18, 0x0d, 0xfa, + 0xa1, 0x59, 0x04, 0x28, 0x76, 0x62, 0x5a, 0x48, +}; +static const unsigned char kat3474_entropyinpr2[] = { + 0x05, 0x0c, 0x98, 0xd9, 0xc3, 0x7c, 0xba, 0x9e, 0x71, 0x7f, 0x4d, 0x0f, + 0xbc, 0x45, 0xc0, 0x6d, 0x6e, 0x91, 0x54, 0x3d, 0x6a, 0xb3, 0x20, 0xf1, + 0x59, 0xf3, 0xee, 0xd5, 0xd8, 0xd3, 0x94, 0x14, +}; +static const unsigned char kat3474_addinpr2[] = { + 0x00, 0x7d, 0x64, 0x9c, 0x63, 0x30, 0x6c, 0xe4, 0x34, 0xfd, 0x55, 0x81, + 0x03, 0xb3, 0xaa, 0xc3, 0xa6, 0x5a, 0x6c, 0x3f, 0x58, 0x88, 0xe9, 0x01, + 0x66, 0xb5, 0xaa, 0x4b, 0xb2, 0xb3, 0x51, 0xae, +}; +static const unsigned char kat3474_retbits[] = { + 0x23, 0xfb, 0x2c, 0x01, 0x58, 0x68, 0x49, 0xcc, 0x04, 0x1b, 0x72, 0xa4, + 0x7c, 0x89, 0x8a, 0x69, 0xa7, 0x0f, 0xd8, 0x73, 0x9d, 0x54, 0x7a, 0x28, + 0x50, 0xe6, 0xc5, 0x2e, 0x74, 0xc2, 0x42, 0x05, 0x59, 0xb1, 0xcc, 0x21, + 0x47, 0x62, 0xa8, 0x54, 0xef, 0x7e, 0xcf, 0x84, 0x21, 0xfd, 0x92, 0x52, + 0x33, 0x9e, 0xff, 0x35, 0xee, 0x44, 0x1e, 0xea, 0xe9, 0xf1, 0x69, 0xcf, + 0x2a, 0x2f, 0x8a, 0xe0, +}; +static const struct drbg_kat_pr_true kat3474_t = { + 8, kat3474_entropyin, kat3474_nonce, kat3474_persstr, + kat3474_entropyinpr1, kat3474_addinpr1, kat3474_entropyinpr2, + kat3474_addinpr2, kat3474_retbits +}; +static const struct drbg_kat kat3474 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3474_t +}; + +static const unsigned char kat3475_entropyin[] = { + 0xc0, 0x2b, 0x86, 0xdb, 0x7b, 0x02, 0x2e, 0xba, 0x95, 0xa8, 0x8f, 0x82, + 0x4d, 0xfc, 0xa3, 0x18, 0x3a, 0xf4, 0xf3, 0x02, 0x9e, 0xb9, 0x99, 0x68, + 0xea, 0x7c, 0x54, 0xd9, 0x27, 0x68, 0x2b, 0x27, +}; +static const unsigned char kat3475_nonce[] = { + 0x90, 0x15, 0x9a, 0xcf, 0x1e, 0x5d, 0x0e, 0x85, 0x34, 0x3a, 0x37, 0xb2, + 0xe1, 0x95, 0x78, 0xda, +}; +static const unsigned char kat3475_persstr[] = { + 0x36, 0x3d, 0xd2, 0x02, 0xfe, 0x1b, 0x07, 0x1e, 0x80, 0x6c, 0x61, 0x94, + 0x98, 0xa9, 0xf4, 0x86, 0xf2, 0xa1, 0x3c, 0x08, 0x5e, 0xba, 0x8a, 0x43, + 0x1d, 0x33, 0xff, 0x5d, 0x73, 0xe4, 0x62, 0xda, +}; +static const unsigned char kat3475_entropyinpr1[] = { + 0x2d, 0xbb, 0x59, 0x67, 0xe5, 0x19, 0x14, 0xb4, 0x10, 0xaf, 0xe1, 0xec, + 0x96, 0xe8, 0xa8, 0xc8, 0x46, 0xb2, 0x63, 0x44, 0xc4, 0xe1, 0xce, 0x66, + 0x44, 0x21, 0x7f, 0x7a, 0xcb, 0xf6, 0x1b, 0xfa, +}; +static const unsigned char kat3475_addinpr1[] = { + 0x3a, 0x86, 0x27, 0xf8, 0xa2, 0x79, 0xf0, 0xee, 0x8e, 0x9b, 0x7e, 0x0d, + 0x9e, 0xbf, 0x27, 0x91, 0x4c, 0xed, 0xc5, 0xdf, 0xf5, 0xdb, 0xc4, 0xb1, + 0x27, 0x2d, 0xbb, 0xda, 0xeb, 0xdb, 0x22, 0xdb, +}; +static const unsigned char kat3475_entropyinpr2[] = { + 0x67, 0x49, 0xab, 0xcf, 0xc3, 0x54, 0x96, 0x7c, 0xd7, 0xba, 0xf7, 0x7c, + 0x1f, 0x5a, 0xcd, 0x83, 0xc3, 0x8f, 0x13, 0x80, 0x81, 0xeb, 0xff, 0xe0, + 0x35, 0xa1, 0xae, 0x4d, 0xdc, 0xf8, 0x5b, 0xb0, +}; +static const unsigned char kat3475_addinpr2[] = { + 0xfe, 0x0b, 0x77, 0x82, 0xcb, 0xea, 0x10, 0x12, 0xda, 0x90, 0x00, 0x16, + 0x32, 0xf8, 0xf2, 0xc4, 0x02, 0xc8, 0x76, 0xf7, 0x78, 0x2c, 0x2b, 0x5b, + 0x80, 0x6d, 0x98, 0x1b, 0x99, 0x2f, 0xf7, 0x30, +}; +static const unsigned char kat3475_retbits[] = { + 0x5d, 0x6e, 0x10, 0xf2, 0x05, 0xdb, 0x6d, 0x53, 0x4f, 0x4a, 0x7d, 0x74, + 0x8e, 0xf8, 0x36, 0x67, 0x11, 0x34, 0xb8, 0xf3, 0x58, 0x7d, 0x59, 0x37, + 0x51, 0x4f, 0x63, 0x8b, 0x49, 0x69, 0xac, 0xe4, 0xae, 0x69, 0x49, 0x0e, + 0x27, 0x82, 0xb9, 0x63, 0xde, 0x4d, 0x39, 0x0b, 0x12, 0xa9, 0xb1, 0xa6, + 0x67, 0x04, 0xdf, 0x86, 0xe0, 0xa0, 0x66, 0x3e, 0x23, 0xc9, 0x0b, 0x49, + 0x3a, 0x5a, 0xa1, 0x82, +}; +static const struct drbg_kat_pr_true kat3475_t = { + 9, kat3475_entropyin, kat3475_nonce, kat3475_persstr, + kat3475_entropyinpr1, kat3475_addinpr1, kat3475_entropyinpr2, + kat3475_addinpr2, kat3475_retbits +}; +static const struct drbg_kat kat3475 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3475_t +}; + +static const unsigned char kat3476_entropyin[] = { + 0xa0, 0x17, 0xd9, 0x09, 0xe6, 0x00, 0xbd, 0xc1, 0xd7, 0x80, 0xa0, 0x9a, + 0xcc, 0x59, 0xfb, 0x4f, 0x00, 0xbd, 0x82, 0xa4, 0x4a, 0x60, 0x1b, 0xbc, + 0xdf, 0x41, 0xd7, 0xcd, 0x8c, 0xbd, 0x6a, 0x2f, +}; +static const unsigned char kat3476_nonce[] = { + 0x0c, 0x6a, 0x43, 0x91, 0x48, 0x6d, 0x9b, 0x41, 0x08, 0x4a, 0xcd, 0x80, + 0x31, 0x42, 0x7e, 0x6a, +}; +static const unsigned char kat3476_persstr[] = { + 0xfc, 0x30, 0x93, 0xbb, 0xa8, 0xf6, 0x5b, 0x69, 0xb2, 0xcf, 0x8a, 0xb3, + 0x17, 0xb1, 0xc6, 0x08, 0xde, 0xd5, 0x00, 0x09, 0x01, 0x1b, 0xcb, 0xb5, + 0xfd, 0xf7, 0x7f, 0x83, 0x52, 0x68, 0xd0, 0xa2, +}; +static const unsigned char kat3476_entropyinpr1[] = { + 0x6d, 0x70, 0x7a, 0xf9, 0xa2, 0xee, 0xb1, 0x98, 0x12, 0xd5, 0xf2, 0x5b, + 0x03, 0x9d, 0xcb, 0xcd, 0x8e, 0x88, 0x35, 0xc1, 0x12, 0x7f, 0x3b, 0x82, + 0xe6, 0xf0, 0x06, 0x53, 0xe2, 0x5e, 0xa0, 0xde, +}; +static const unsigned char kat3476_addinpr1[] = { + 0x48, 0xd0, 0xbb, 0x1d, 0xa0, 0x62, 0x52, 0xf9, 0x90, 0x6e, 0xbc, 0x2a, + 0xf6, 0xe8, 0x2a, 0x1e, 0x64, 0x4b, 0xd9, 0x9f, 0xca, 0x3e, 0x81, 0x6a, + 0xdf, 0x94, 0xf1, 0x3d, 0xc8, 0xaf, 0x27, 0x21, +}; +static const unsigned char kat3476_entropyinpr2[] = { + 0x3e, 0x70, 0x44, 0xcf, 0x77, 0xf4, 0x7b, 0xba, 0x02, 0x9e, 0x51, 0x46, + 0xee, 0x18, 0xdc, 0xd3, 0x41, 0x6a, 0x3b, 0x9d, 0x8f, 0x2b, 0x5c, 0xff, + 0x69, 0xc5, 0x38, 0x3f, 0x25, 0x5e, 0xe2, 0x83, +}; +static const unsigned char kat3476_addinpr2[] = { + 0xb8, 0x83, 0x33, 0x6f, 0x21, 0xfb, 0x70, 0xbe, 0x1a, 0x73, 0xab, 0xf0, + 0xa7, 0x8b, 0x46, 0x58, 0xca, 0x87, 0x9c, 0x9b, 0x36, 0x57, 0xf8, 0xdf, + 0xa3, 0xc7, 0xa2, 0xef, 0xc2, 0xd7, 0x17, 0x3c, +}; +static const unsigned char kat3476_retbits[] = { + 0xc5, 0x65, 0x02, 0x2c, 0xb9, 0x0c, 0x58, 0xa0, 0x92, 0xc4, 0x01, 0x58, + 0x31, 0x30, 0x36, 0xd7, 0x97, 0x4f, 0x14, 0xda, 0x3b, 0x25, 0x6f, 0x68, + 0xb0, 0x52, 0x04, 0xf9, 0xac, 0x46, 0xae, 0x67, 0x05, 0xe3, 0xdc, 0x3b, + 0x92, 0x0b, 0x92, 0xbe, 0xfb, 0xa3, 0x98, 0xc3, 0x6d, 0x5e, 0xc5, 0xed, + 0x69, 0xcd, 0xce, 0xa8, 0x18, 0xaf, 0x6d, 0x01, 0x55, 0xc4, 0xb6, 0x27, + 0x40, 0xf8, 0x9d, 0xf1, +}; +static const struct drbg_kat_pr_true kat3476_t = { + 10, kat3476_entropyin, kat3476_nonce, kat3476_persstr, + kat3476_entropyinpr1, kat3476_addinpr1, kat3476_entropyinpr2, + kat3476_addinpr2, kat3476_retbits +}; +static const struct drbg_kat kat3476 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3476_t +}; + +static const unsigned char kat3477_entropyin[] = { + 0x8e, 0xc5, 0xb5, 0x90, 0x6a, 0x70, 0x63, 0x9b, 0xc1, 0x29, 0x86, 0x32, + 0xf5, 0x0d, 0xf1, 0xa6, 0xf9, 0x02, 0x19, 0xe1, 0x9f, 0x8a, 0x94, 0x6a, + 0xbc, 0x35, 0x02, 0x2f, 0xb4, 0xf5, 0xcb, 0xf4, +}; +static const unsigned char kat3477_nonce[] = { + 0x31, 0x72, 0xe3, 0x7c, 0xb3, 0x41, 0x9d, 0xff, 0x0f, 0xe6, 0x98, 0xc0, + 0x13, 0x38, 0xad, 0x3e, +}; +static const unsigned char kat3477_persstr[] = { + 0x27, 0xec, 0xcc, 0x8f, 0x13, 0x1d, 0x68, 0x08, 0xc9, 0x50, 0x71, 0x09, + 0x00, 0x7e, 0x4d, 0x1e, 0xed, 0xf2, 0x70, 0x0b, 0xb6, 0x60, 0xb5, 0x83, + 0x93, 0x8f, 0xb5, 0xa1, 0xf1, 0xd2, 0x54, 0xb8, +}; +static const unsigned char kat3477_entropyinpr1[] = { + 0x8a, 0xdf, 0x76, 0x0f, 0x81, 0xfc, 0xbf, 0x4e, 0x77, 0xd7, 0x4b, 0x89, + 0x0b, 0x03, 0x61, 0xc4, 0x09, 0x0e, 0xc3, 0x67, 0xaf, 0x67, 0xc7, 0xc6, + 0xd0, 0xb5, 0x10, 0x47, 0xf6, 0xeb, 0x4e, 0xf1, +}; +static const unsigned char kat3477_addinpr1[] = { + 0x00, 0x3b, 0xcf, 0x45, 0xde, 0x0a, 0xef, 0x58, 0xf5, 0x92, 0xe5, 0x41, + 0x2c, 0x3c, 0x4c, 0x42, 0x6e, 0xcb, 0x26, 0x13, 0xdf, 0xb3, 0xac, 0x69, + 0x05, 0xb9, 0x86, 0xd3, 0x28, 0x85, 0x3e, 0x23, +}; +static const unsigned char kat3477_entropyinpr2[] = { + 0x74, 0x11, 0xfc, 0xea, 0x66, 0x2a, 0x2a, 0xa5, 0x87, 0x6d, 0x38, 0x6f, + 0x70, 0x67, 0x31, 0x67, 0x99, 0x3f, 0x39, 0x5f, 0xa7, 0xcb, 0x87, 0x78, + 0xb3, 0x3d, 0xd0, 0x09, 0xf3, 0x53, 0xc8, 0xff, +}; +static const unsigned char kat3477_addinpr2[] = { + 0x75, 0x2c, 0x13, 0x4e, 0x1a, 0x59, 0x24, 0xd0, 0xbe, 0x05, 0x55, 0x0d, + 0x45, 0x4f, 0xa5, 0x17, 0x96, 0x99, 0xad, 0x41, 0xb0, 0x96, 0x8d, 0x21, + 0x42, 0xaf, 0xca, 0x35, 0x44, 0x30, 0xf0, 0xe1, +}; +static const unsigned char kat3477_retbits[] = { + 0xf5, 0x36, 0x2d, 0x27, 0x6d, 0x58, 0x1c, 0x2d, 0x0e, 0x80, 0x8a, 0xe4, + 0x86, 0xe8, 0xe6, 0x2f, 0xfd, 0x35, 0x49, 0x01, 0xa0, 0xf9, 0x80, 0x7c, + 0xf5, 0x65, 0x7a, 0x3d, 0x90, 0x24, 0xa7, 0x24, 0x78, 0xac, 0xd4, 0x03, + 0x7d, 0x06, 0xd4, 0xba, 0x5c, 0x3b, 0x29, 0xb5, 0xfb, 0x4f, 0x6b, 0x52, + 0x29, 0xc1, 0x7f, 0xe9, 0xde, 0xab, 0x68, 0xe0, 0xd0, 0x3a, 0x2f, 0x12, + 0x40, 0x9a, 0x0d, 0x46, +}; +static const struct drbg_kat_pr_true kat3477_t = { + 11, kat3477_entropyin, kat3477_nonce, kat3477_persstr, + kat3477_entropyinpr1, kat3477_addinpr1, kat3477_entropyinpr2, + kat3477_addinpr2, kat3477_retbits +}; +static const struct drbg_kat kat3477 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3477_t +}; + +static const unsigned char kat3478_entropyin[] = { + 0x06, 0xf9, 0x5f, 0xe2, 0x43, 0x9b, 0x4f, 0x09, 0xbe, 0x2f, 0x86, 0x01, + 0xb4, 0x00, 0x0a, 0x0b, 0x27, 0xba, 0x4c, 0xf2, 0xcc, 0xdc, 0x1d, 0x41, + 0x5d, 0xf0, 0x03, 0x39, 0x4b, 0xb4, 0x2d, 0x43, +}; +static const unsigned char kat3478_nonce[] = { + 0x38, 0x84, 0x85, 0xd1, 0x9a, 0x5f, 0xbc, 0x7f, 0x29, 0xfe, 0x10, 0xe3, + 0xa2, 0x01, 0x0c, 0x33, +}; +static const unsigned char kat3478_persstr[] = { + 0xb6, 0xd8, 0xc2, 0x33, 0xcc, 0xb6, 0x8c, 0x8c, 0xd1, 0x45, 0xf0, 0x63, + 0xf2, 0xdf, 0xd3, 0x7b, 0x62, 0xc5, 0x60, 0xa6, 0xf1, 0x60, 0x5a, 0xcf, + 0x35, 0xf9, 0x56, 0x63, 0xa7, 0x06, 0xa0, 0x8a, +}; +static const unsigned char kat3478_entropyinpr1[] = { + 0x60, 0x5b, 0x02, 0x02, 0x51, 0x99, 0xa0, 0xad, 0x76, 0x14, 0xa0, 0xf2, + 0x3f, 0x17, 0x32, 0x75, 0x00, 0x7e, 0x3e, 0x17, 0x5a, 0x31, 0xa0, 0x04, + 0x50, 0xdd, 0xb4, 0x65, 0x79, 0xb0, 0x40, 0x93, +}; +static const unsigned char kat3478_addinpr1[] = { + 0x4f, 0xbc, 0x8c, 0x3d, 0x7e, 0xbc, 0x00, 0xf4, 0x5b, 0x06, 0x08, 0x4a, + 0x8a, 0xaf, 0x5d, 0x4d, 0x2e, 0xe7, 0x0f, 0x78, 0xba, 0x3d, 0x46, 0xf8, + 0x58, 0x8e, 0xf0, 0xf3, 0x59, 0x8c, 0xc4, 0x3e, +}; +static const unsigned char kat3478_entropyinpr2[] = { + 0xc2, 0x4b, 0xdd, 0x83, 0xfe, 0x41, 0x93, 0x48, 0x71, 0x44, 0x8c, 0x93, + 0x0c, 0x6d, 0x63, 0xb6, 0xcc, 0xb4, 0xbf, 0xa7, 0x39, 0x60, 0xd9, 0xe8, + 0xdf, 0xb9, 0x6b, 0x4a, 0x38, 0xb2, 0xfb, 0x0c, +}; +static const unsigned char kat3478_addinpr2[] = { + 0x8d, 0x30, 0xb7, 0x62, 0x5b, 0x0c, 0x3c, 0x2d, 0x4a, 0x57, 0xd7, 0xa7, + 0xb2, 0xc8, 0xe2, 0x51, 0x1f, 0x77, 0xe7, 0x54, 0x6a, 0xd7, 0x27, 0x58, + 0x5d, 0x22, 0x6d, 0x83, 0xb0, 0x30, 0x0a, 0xd5, +}; +static const unsigned char kat3478_retbits[] = { + 0x31, 0x38, 0x8d, 0x27, 0x34, 0xa8, 0x08, 0x88, 0xdd, 0xe6, 0x90, 0xf7, + 0x86, 0x7c, 0x24, 0x71, 0x33, 0x05, 0x2b, 0xe2, 0xdd, 0x09, 0x2b, 0x84, + 0xf1, 0x42, 0x2f, 0xd3, 0x65, 0x0b, 0x25, 0xf9, 0x6b, 0xed, 0xc9, 0x1b, + 0x42, 0xda, 0x30, 0x61, 0x12, 0x85, 0x80, 0x50, 0x60, 0x40, 0x27, 0x25, + 0x07, 0xe7, 0x34, 0x9d, 0x26, 0x4c, 0xa3, 0x75, 0x4c, 0x77, 0x63, 0xd2, + 0xa8, 0xa4, 0x30, 0xe6, +}; +static const struct drbg_kat_pr_true kat3478_t = { + 12, kat3478_entropyin, kat3478_nonce, kat3478_persstr, + kat3478_entropyinpr1, kat3478_addinpr1, kat3478_entropyinpr2, + kat3478_addinpr2, kat3478_retbits +}; +static const struct drbg_kat kat3478 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3478_t +}; + +static const unsigned char kat3479_entropyin[] = { + 0xd2, 0xb2, 0x5a, 0x12, 0x1f, 0x9f, 0xda, 0x73, 0x22, 0xf4, 0xe2, 0xb2, + 0x29, 0xd6, 0xe0, 0x5f, 0x5d, 0xa4, 0x38, 0x22, 0xe6, 0xa1, 0xc7, 0xa1, + 0x73, 0xd4, 0x68, 0xcc, 0x5f, 0xc2, 0x6a, 0x1e, +}; +static const unsigned char kat3479_nonce[] = { + 0x7e, 0x69, 0x36, 0x37, 0x76, 0x87, 0x79, 0x09, 0xf3, 0x58, 0xa0, 0x0e, + 0xf4, 0xee, 0x78, 0x11, +}; +static const unsigned char kat3479_persstr[] = { + 0x71, 0x6f, 0x2e, 0xed, 0x8f, 0x4f, 0x34, 0x03, 0x10, 0xf1, 0x9b, 0x95, + 0x44, 0x12, 0xae, 0x57, 0xd9, 0xd7, 0xe9, 0x60, 0xe6, 0x6d, 0x3c, 0x0b, + 0xff, 0x02, 0x31, 0xbc, 0x36, 0x09, 0x64, 0xa5, +}; +static const unsigned char kat3479_entropyinpr1[] = { + 0x0c, 0x28, 0xf6, 0x72, 0x91, 0xf0, 0x31, 0xd4, 0xc5, 0xc4, 0xc2, 0x37, + 0x3d, 0xc7, 0x72, 0x4c, 0x3f, 0x01, 0x92, 0xbf, 0x86, 0x26, 0x84, 0x65, + 0x21, 0xc3, 0xf4, 0xbc, 0xa3, 0xb6, 0xac, 0x9e, +}; +static const unsigned char kat3479_addinpr1[] = { + 0x2e, 0x44, 0xae, 0x67, 0xef, 0xd1, 0xb2, 0xa0, 0x2f, 0x3c, 0x9b, 0xda, + 0x81, 0x57, 0xa4, 0x35, 0x06, 0xac, 0xa6, 0xc8, 0x69, 0xc4, 0x59, 0xaa, + 0xde, 0x83, 0x8a, 0xc2, 0x76, 0x38, 0x81, 0xba, +}; +static const unsigned char kat3479_entropyinpr2[] = { + 0xba, 0x93, 0x5e, 0xbc, 0xda, 0x1a, 0xe3, 0xd5, 0x07, 0x79, 0xdf, 0x10, + 0x3e, 0x15, 0xae, 0xd6, 0xc2, 0xe9, 0xdd, 0x7e, 0xd9, 0x7e, 0xcf, 0xe6, + 0x76, 0xb5, 0x96, 0xa9, 0xf5, 0x5e, 0xfd, 0x66, +}; +static const unsigned char kat3479_addinpr2[] = { + 0xdd, 0x35, 0xdc, 0x7d, 0xc8, 0x7b, 0x42, 0x5f, 0x4e, 0x35, 0x83, 0xfb, + 0x9e, 0x36, 0xf9, 0x43, 0xe2, 0xca, 0x07, 0x51, 0xb7, 0x99, 0x5b, 0x2a, + 0x73, 0xea, 0x10, 0xcf, 0x32, 0x01, 0x0f, 0x3f, +}; +static const unsigned char kat3479_retbits[] = { + 0xab, 0xcc, 0x64, 0x83, 0xc0, 0x68, 0x5d, 0x2a, 0xc0, 0x13, 0x29, 0xeb, + 0xd6, 0x98, 0x13, 0x8f, 0xa2, 0x6a, 0x1a, 0xca, 0xaf, 0xce, 0x8e, 0xc1, + 0xcc, 0x58, 0xa7, 0x3b, 0x64, 0x60, 0x25, 0xe3, 0xa7, 0xb7, 0x38, 0x6c, + 0x1b, 0x49, 0x2d, 0x28, 0x3d, 0xdd, 0x26, 0x3e, 0x3b, 0xe3, 0x68, 0xb2, + 0x66, 0xc5, 0x73, 0x62, 0x04, 0x81, 0x22, 0x56, 0x30, 0x19, 0x5b, 0xf5, + 0x9d, 0x46, 0x4f, 0xdf, +}; +static const struct drbg_kat_pr_true kat3479_t = { + 13, kat3479_entropyin, kat3479_nonce, kat3479_persstr, + kat3479_entropyinpr1, kat3479_addinpr1, kat3479_entropyinpr2, + kat3479_addinpr2, kat3479_retbits +}; +static const struct drbg_kat kat3479 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3479_t +}; + +static const unsigned char kat3480_entropyin[] = { + 0x6f, 0xa0, 0x76, 0x20, 0x48, 0x16, 0xf7, 0xa1, 0x85, 0x61, 0x89, 0xc4, + 0x09, 0xa4, 0x66, 0x50, 0xce, 0x8d, 0xd2, 0x8b, 0xa1, 0x2d, 0xff, 0xce, + 0x25, 0x35, 0x07, 0x9a, 0x9a, 0xe7, 0x77, 0xd7, +}; +static const unsigned char kat3480_nonce[] = { + 0x77, 0x12, 0x44, 0x12, 0x2a, 0x2f, 0xb4, 0x39, 0x33, 0xd1, 0x89, 0x1d, + 0x3d, 0xae, 0x1f, 0x22, +}; +static const unsigned char kat3480_persstr[] = { + 0x59, 0x63, 0x21, 0xac, 0x34, 0x04, 0x43, 0x49, 0x61, 0xed, 0x7e, 0x0e, + 0x29, 0x4d, 0x11, 0xe9, 0x70, 0xdf, 0x1f, 0x08, 0xb8, 0x4e, 0xc6, 0xa9, + 0x86, 0x33, 0x90, 0x09, 0xfe, 0x0a, 0xd7, 0x8b, +}; +static const unsigned char kat3480_entropyinpr1[] = { + 0x0f, 0x1a, 0xf9, 0x88, 0xec, 0x95, 0x13, 0xa8, 0x65, 0x2e, 0x2b, 0x4d, + 0x27, 0xc0, 0x8c, 0x74, 0x73, 0x19, 0x2c, 0x86, 0x83, 0xa4, 0xb4, 0x26, + 0x15, 0x9d, 0xf7, 0x21, 0x02, 0xe1, 0x30, 0x94, +}; +static const unsigned char kat3480_addinpr1[] = { + 0x0b, 0x1d, 0x5a, 0x09, 0xc6, 0x95, 0xc3, 0x75, 0x7f, 0x22, 0xdb, 0xdd, + 0xff, 0x15, 0x32, 0xa7, 0xe1, 0x62, 0x5d, 0xd2, 0xc0, 0x33, 0xde, 0x77, + 0xcb, 0xc5, 0xff, 0xc1, 0x58, 0x15, 0x14, 0x79, +}; +static const unsigned char kat3480_entropyinpr2[] = { + 0x5e, 0x20, 0xd8, 0x71, 0x83, 0x67, 0x91, 0x4f, 0xa0, 0xb5, 0x68, 0x0a, + 0x2a, 0x6b, 0x20, 0x30, 0xf7, 0x1d, 0xcb, 0x59, 0x61, 0x77, 0x7c, 0x1c, + 0x2d, 0x70, 0xc3, 0xcb, 0xfe, 0x19, 0x76, 0x15, +}; +static const unsigned char kat3480_addinpr2[] = { + 0x00, 0xeb, 0x04, 0x08, 0x78, 0xd2, 0xae, 0xd9, 0xb1, 0xa2, 0xc6, 0x86, + 0x61, 0x08, 0xc1, 0x3b, 0x24, 0xc2, 0x65, 0xd3, 0x73, 0x96, 0xce, 0x0e, + 0x3d, 0xa9, 0x8d, 0xe8, 0x5f, 0x25, 0x64, 0xea, +}; +static const unsigned char kat3480_retbits[] = { + 0x11, 0x26, 0xdc, 0xdc, 0x7e, 0xa3, 0x5a, 0x3a, 0x0a, 0xd2, 0x74, 0x56, + 0x07, 0x65, 0xed, 0x66, 0x82, 0x2c, 0x80, 0x4a, 0x93, 0x7a, 0x59, 0x4c, + 0xa5, 0xe0, 0x21, 0x35, 0x33, 0x62, 0x86, 0x50, 0x33, 0xd1, 0x58, 0x3b, + 0x27, 0x12, 0xab, 0xd0, 0xde, 0xc7, 0x5d, 0x24, 0x00, 0x63, 0x71, 0xbf, + 0x72, 0x0a, 0x25, 0x85, 0x56, 0xb6, 0xe3, 0x7b, 0x44, 0xf4, 0x13, 0x2b, + 0xe1, 0x9d, 0x8b, 0xed, +}; +static const struct drbg_kat_pr_true kat3480_t = { + 14, kat3480_entropyin, kat3480_nonce, kat3480_persstr, + kat3480_entropyinpr1, kat3480_addinpr1, kat3480_entropyinpr2, + kat3480_addinpr2, kat3480_retbits +}; +static const struct drbg_kat kat3480 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3480_t +}; + +static const unsigned char kat3481_entropyin[] = { + 0x04, 0x7b, 0x78, 0xbe, 0x0a, 0x7b, 0x29, 0xdd, 0xd2, 0xf1, 0x16, 0x11, + 0x84, 0x85, 0x89, 0x22, 0xd6, 0x85, 0xe0, 0xaf, 0xa3, 0x52, 0x64, 0xb7, + 0x8e, 0x74, 0x87, 0x4b, 0x60, 0xe5, 0x24, 0x93, +}; +static const unsigned char kat3481_nonce[] = { + 0x91, 0x1a, 0x40, 0x34, 0x07, 0x50, 0x05, 0xe0, 0x30, 0x5f, 0x98, 0x3d, + 0x75, 0xb1, 0xd2, 0x04, +}; +static const unsigned char kat3481_persstr[] = {0}; +static const unsigned char kat3481_entropyinpr1[] = { + 0x2d, 0xf2, 0xdd, 0xa6, 0xf5, 0x6a, 0x49, 0xc9, 0x68, 0xac, 0x34, 0x3f, + 0xca, 0x5a, 0xc4, 0x80, 0xfa, 0x21, 0x63, 0x91, 0x80, 0x60, 0x92, 0x50, + 0x6a, 0x4d, 0x11, 0xbe, 0xf3, 0x55, 0xd8, 0x27, +}; +static const unsigned char kat3481_addinpr1[] = {0}; +static const unsigned char kat3481_entropyinpr2[] = { + 0xc5, 0xc8, 0x7f, 0xa5, 0x84, 0x34, 0x81, 0xa1, 0xb3, 0x35, 0xb3, 0xb5, + 0xb6, 0x29, 0xdb, 0xff, 0x64, 0xec, 0xcd, 0x4a, 0x95, 0xed, 0x39, 0x69, + 0x38, 0x43, 0xcf, 0xae, 0x10, 0x0f, 0x70, 0xc3, +}; +static const unsigned char kat3481_addinpr2[] = {0}; +static const unsigned char kat3481_retbits[] = { + 0x17, 0xd2, 0xca, 0x11, 0xcb, 0x82, 0x8f, 0x43, 0xc0, 0xe4, 0x9f, 0x41, + 0x9e, 0x7d, 0xff, 0xab, 0xee, 0xdb, 0x56, 0xaf, 0x84, 0x6e, 0x60, 0x43, + 0x99, 0xea, 0xd7, 0xa6, 0x4c, 0xd8, 0xbc, 0xb9, 0xa8, 0xa5, 0x97, 0x39, + 0x21, 0x69, 0x8a, 0xe7, 0xc5, 0x4c, 0x32, 0x99, 0x01, 0x25, 0xe7, 0x78, + 0x9c, 0xb7, 0x37, 0x91, 0xc6, 0x3c, 0x78, 0x89, 0x56, 0x6c, 0x9f, 0xb4, + 0x6c, 0x18, 0x0b, 0x61, +}; +static const struct drbg_kat_pr_true kat3481_t = { + 0, kat3481_entropyin, kat3481_nonce, kat3481_persstr, + kat3481_entropyinpr1, kat3481_addinpr1, kat3481_entropyinpr2, + kat3481_addinpr2, kat3481_retbits +}; +static const struct drbg_kat kat3481 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3481_t +}; + +static const unsigned char kat3482_entropyin[] = { + 0xb3, 0x26, 0x3d, 0xd0, 0x82, 0xf0, 0x03, 0x62, 0x61, 0x70, 0xe9, 0x18, + 0x77, 0xba, 0x59, 0x32, 0x52, 0x6e, 0xc5, 0x80, 0x19, 0xee, 0x8b, 0x3f, + 0xcc, 0xbc, 0x05, 0x7a, 0xf7, 0x10, 0x58, 0x59, +}; +static const unsigned char kat3482_nonce[] = { + 0x7b, 0x1d, 0x5e, 0x79, 0x3d, 0xb6, 0xda, 0x07, 0xe4, 0xf8, 0xd7, 0x72, + 0xb9, 0xfb, 0x01, 0x85, +}; +static const unsigned char kat3482_persstr[] = {0}; +static const unsigned char kat3482_entropyinpr1[] = { + 0x5d, 0xbd, 0x68, 0xaa, 0x42, 0xaa, 0x48, 0xae, 0x4e, 0x55, 0xe4, 0x9b, + 0xbc, 0x58, 0xfd, 0x5b, 0xe8, 0x3f, 0x6b, 0x82, 0x0d, 0x49, 0xcd, 0x0a, + 0xc7, 0x91, 0x25, 0xb7, 0xfd, 0x70, 0x2e, 0xa0, +}; +static const unsigned char kat3482_addinpr1[] = {0}; +static const unsigned char kat3482_entropyinpr2[] = { + 0xae, 0xb0, 0xaf, 0xba, 0x7f, 0xa1, 0xd7, 0xb4, 0x44, 0x50, 0x87, 0x4a, + 0x2b, 0x48, 0x45, 0xc7, 0xe0, 0x7c, 0xfa, 0x3b, 0x38, 0xb7, 0x58, 0xa2, + 0xc4, 0xa1, 0xd4, 0x57, 0x5b, 0x7c, 0xe8, 0x14, +}; +static const unsigned char kat3482_addinpr2[] = {0}; +static const unsigned char kat3482_retbits[] = { + 0x77, 0x9a, 0x28, 0xbd, 0x4c, 0xc4, 0xb9, 0x92, 0xfe, 0x62, 0x2b, 0x7a, + 0x00, 0xee, 0x61, 0x4d, 0x23, 0xd3, 0x43, 0x9b, 0x8c, 0x48, 0x73, 0x61, + 0x0d, 0xcc, 0x25, 0x9e, 0xa4, 0x49, 0xc2, 0xd7, 0xa7, 0xca, 0xee, 0x22, + 0xa8, 0x0c, 0x07, 0x84, 0x7e, 0xb1, 0x82, 0x26, 0x44, 0xb4, 0x92, 0x7c, + 0x27, 0x0a, 0xf8, 0x9e, 0xad, 0x56, 0x18, 0xd6, 0x7d, 0x77, 0x1a, 0xf9, + 0x07, 0x72, 0x8a, 0xfd, +}; +static const struct drbg_kat_pr_true kat3482_t = { + 1, kat3482_entropyin, kat3482_nonce, kat3482_persstr, + kat3482_entropyinpr1, kat3482_addinpr1, kat3482_entropyinpr2, + kat3482_addinpr2, kat3482_retbits +}; +static const struct drbg_kat kat3482 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3482_t +}; + +static const unsigned char kat3483_entropyin[] = { + 0x4a, 0xbb, 0x8a, 0xb7, 0xcb, 0x8d, 0xd6, 0x6b, 0x74, 0xf6, 0x7a, 0x7c, + 0xbb, 0x2c, 0x6b, 0xfe, 0x21, 0x7a, 0x95, 0xf8, 0x2f, 0x84, 0xf8, 0x22, + 0x02, 0x24, 0x58, 0x73, 0x43, 0x4e, 0xdd, 0x0b, +}; +static const unsigned char kat3483_nonce[] = { + 0xe0, 0xeb, 0x5f, 0x37, 0xfd, 0xc8, 0xaa, 0xe7, 0xce, 0xdc, 0x9d, 0x46, + 0x9e, 0x29, 0x15, 0x35, +}; +static const unsigned char kat3483_persstr[] = {0}; +static const unsigned char kat3483_entropyinpr1[] = { + 0x58, 0x76, 0x37, 0xbd, 0x3b, 0xef, 0x94, 0xa0, 0x96, 0xee, 0xfd, 0xd6, + 0xbf, 0x4d, 0x9c, 0xbb, 0xbd, 0xab, 0x40, 0x23, 0xe4, 0xba, 0x24, 0xc0, + 0xda, 0x6c, 0x12, 0x2e, 0xd3, 0x7b, 0xda, 0x2e, +}; +static const unsigned char kat3483_addinpr1[] = {0}; +static const unsigned char kat3483_entropyinpr2[] = { + 0x08, 0xfa, 0xc1, 0xf1, 0xfb, 0xe4, 0x2a, 0x80, 0x4b, 0x29, 0x0c, 0xe2, + 0x23, 0xe5, 0x66, 0x9d, 0xf3, 0x6d, 0x78, 0xa1, 0x2d, 0x24, 0x0f, 0x1a, + 0xff, 0xed, 0x6e, 0x4d, 0x54, 0xef, 0x17, 0x83, +}; +static const unsigned char kat3483_addinpr2[] = {0}; +static const unsigned char kat3483_retbits[] = { + 0x44, 0xff, 0x27, 0x53, 0x5a, 0xae, 0x8a, 0x22, 0x21, 0xbb, 0x7e, 0x06, + 0x64, 0xbd, 0x21, 0xc1, 0x44, 0x13, 0x86, 0xce, 0x30, 0x18, 0x96, 0x4f, + 0x39, 0xd6, 0xb4, 0xc9, 0x5d, 0x60, 0x4d, 0xe8, 0x13, 0x1f, 0x75, 0x5f, + 0xdc, 0xdf, 0x05, 0xe8, 0xc4, 0xa2, 0x36, 0xde, 0x5e, 0x72, 0xbc, 0x80, + 0x0d, 0x46, 0x8e, 0xc4, 0x7c, 0x6b, 0x80, 0x2c, 0xd8, 0x08, 0x19, 0x30, + 0xb8, 0xde, 0xfb, 0x8b, +}; +static const struct drbg_kat_pr_true kat3483_t = { + 2, kat3483_entropyin, kat3483_nonce, kat3483_persstr, + kat3483_entropyinpr1, kat3483_addinpr1, kat3483_entropyinpr2, + kat3483_addinpr2, kat3483_retbits +}; +static const struct drbg_kat kat3483 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3483_t +}; + +static const unsigned char kat3484_entropyin[] = { + 0x14, 0x4a, 0x6f, 0x82, 0x5b, 0x41, 0x14, 0xd8, 0x99, 0xd9, 0x42, 0x50, + 0xa9, 0x34, 0xc8, 0xe9, 0xe5, 0x41, 0x13, 0x73, 0xb8, 0xf5, 0x03, 0x54, + 0x19, 0xf2, 0x70, 0x17, 0x50, 0x38, 0x9e, 0x7f, +}; +static const unsigned char kat3484_nonce[] = { + 0x79, 0xf4, 0xf9, 0xb9, 0x53, 0xad, 0xf2, 0x1a, 0x0a, 0x2b, 0x7a, 0xa7, + 0x15, 0x85, 0xbb, 0x6d, +}; +static const unsigned char kat3484_persstr[] = {0}; +static const unsigned char kat3484_entropyinpr1[] = { + 0xf9, 0x0e, 0x58, 0x6e, 0x14, 0xc5, 0x10, 0x86, 0xda, 0x0a, 0xfa, 0x32, + 0x9f, 0x80, 0x68, 0x02, 0x32, 0x76, 0xe9, 0x36, 0x47, 0x79, 0x7d, 0xa6, + 0x4b, 0x89, 0xb5, 0xdf, 0x0d, 0xd5, 0xa9, 0x42, +}; +static const unsigned char kat3484_addinpr1[] = {0}; +static const unsigned char kat3484_entropyinpr2[] = { + 0x43, 0xf1, 0x99, 0xc0, 0x93, 0xa0, 0xb5, 0x52, 0x35, 0xe5, 0x26, 0xda, + 0x6f, 0x2c, 0x32, 0xe7, 0xf9, 0x90, 0xa5, 0x0b, 0x4b, 0x74, 0x84, 0x92, + 0x4e, 0xdf, 0xb2, 0xe5, 0xc7, 0x35, 0xdb, 0xec, +}; +static const unsigned char kat3484_addinpr2[] = {0}; +static const unsigned char kat3484_retbits[] = { + 0xba, 0x08, 0x83, 0x16, 0xdd, 0xfe, 0x25, 0x3a, 0xe1, 0xfa, 0x37, 0x97, + 0x13, 0x87, 0x6a, 0x23, 0x62, 0xea, 0x0f, 0xad, 0x30, 0x7e, 0xf5, 0xaa, + 0x3d, 0x72, 0x55, 0x6d, 0x1f, 0xc5, 0xa1, 0xf5, 0x83, 0xb5, 0x4a, 0x0f, + 0x89, 0xc5, 0x99, 0xb4, 0x1d, 0x96, 0x84, 0xa3, 0xc7, 0x05, 0xba, 0x24, + 0xde, 0x6e, 0xea, 0x25, 0x5f, 0x3a, 0x9e, 0xf5, 0x84, 0x78, 0x1e, 0x9c, + 0xb3, 0xb6, 0x3b, 0x7e, +}; +static const struct drbg_kat_pr_true kat3484_t = { + 3, kat3484_entropyin, kat3484_nonce, kat3484_persstr, + kat3484_entropyinpr1, kat3484_addinpr1, kat3484_entropyinpr2, + kat3484_addinpr2, kat3484_retbits +}; +static const struct drbg_kat kat3484 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3484_t +}; + +static const unsigned char kat3485_entropyin[] = { + 0xc9, 0x1b, 0xa8, 0xd0, 0x5d, 0x8a, 0x1a, 0xb6, 0x7b, 0x52, 0x12, 0xb3, + 0x0e, 0x65, 0x47, 0x4d, 0x61, 0x2e, 0x11, 0x8d, 0x84, 0xa8, 0xe2, 0x53, + 0x36, 0x65, 0xcb, 0xd3, 0x44, 0x72, 0x7d, 0xb3, +}; +static const unsigned char kat3485_nonce[] = { + 0x54, 0xdb, 0xbd, 0xf9, 0x77, 0xf5, 0x45, 0x3d, 0x15, 0x26, 0x28, 0xc9, + 0x69, 0xb2, 0xe1, 0x8c, +}; +static const unsigned char kat3485_persstr[] = {0}; +static const unsigned char kat3485_entropyinpr1[] = { + 0x0d, 0x8c, 0xd3, 0xb8, 0x16, 0xb0, 0xd6, 0xd0, 0x1e, 0x34, 0x46, 0xc0, + 0x62, 0x6c, 0xcd, 0xba, 0x47, 0xbf, 0xde, 0x65, 0xba, 0x65, 0x16, 0x1b, + 0xb2, 0xc5, 0x6e, 0xe6, 0xb9, 0xd1, 0xec, 0xe7, +}; +static const unsigned char kat3485_addinpr1[] = {0}; +static const unsigned char kat3485_entropyinpr2[] = { + 0xcd, 0x9b, 0x27, 0xe7, 0x6e, 0xd3, 0x3a, 0xdc, 0xec, 0x38, 0x29, 0xb1, + 0xfa, 0x21, 0x48, 0x81, 0x81, 0xd8, 0x87, 0x96, 0xf3, 0x66, 0xb6, 0x44, + 0xc5, 0x4f, 0xf1, 0x33, 0x7c, 0xd6, 0x06, 0x9b, +}; +static const unsigned char kat3485_addinpr2[] = {0}; +static const unsigned char kat3485_retbits[] = { + 0x43, 0x4e, 0xff, 0x91, 0x96, 0xe6, 0xb3, 0x0c, 0x0e, 0xbf, 0x94, 0x44, + 0x31, 0x1e, 0x7a, 0xe9, 0x61, 0xea, 0x09, 0x0c, 0x59, 0x37, 0x49, 0xf7, + 0x5e, 0xb4, 0x33, 0xf4, 0x77, 0xf3, 0x69, 0x1b, 0x69, 0xfd, 0xe2, 0x97, + 0x6a, 0xdf, 0x59, 0x5f, 0xc7, 0x86, 0x31, 0xd6, 0xff, 0x00, 0x22, 0x38, + 0xd1, 0x82, 0x98, 0xd8, 0xcf, 0xe9, 0xeb, 0x31, 0xa7, 0x7f, 0x97, 0xed, + 0xbb, 0xf6, 0x61, 0x25, +}; +static const struct drbg_kat_pr_true kat3485_t = { + 4, kat3485_entropyin, kat3485_nonce, kat3485_persstr, + kat3485_entropyinpr1, kat3485_addinpr1, kat3485_entropyinpr2, + kat3485_addinpr2, kat3485_retbits +}; +static const struct drbg_kat kat3485 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3485_t +}; + +static const unsigned char kat3486_entropyin[] = { + 0xfb, 0x8b, 0xc3, 0xe0, 0x1c, 0x14, 0x5c, 0x09, 0x94, 0x98, 0x93, 0x2c, + 0xec, 0xd7, 0xe2, 0x1c, 0x7a, 0xb4, 0x76, 0xab, 0xa8, 0x24, 0x39, 0x19, + 0x11, 0xa4, 0xa7, 0xfd, 0xb1, 0x4f, 0x1a, 0x24, +}; +static const unsigned char kat3486_nonce[] = { + 0x7e, 0x85, 0x6a, 0xf3, 0xd7, 0xad, 0xe4, 0xc2, 0xb5, 0x5a, 0xd9, 0xb9, + 0x14, 0x67, 0xb7, 0x77, +}; +static const unsigned char kat3486_persstr[] = {0}; +static const unsigned char kat3486_entropyinpr1[] = { + 0xa6, 0x9c, 0x96, 0xff, 0x7a, 0x4a, 0xbe, 0x95, 0x48, 0x04, 0xe2, 0x20, + 0x53, 0xa1, 0x14, 0x84, 0x43, 0xd8, 0xe3, 0xac, 0x05, 0x26, 0x16, 0xc5, + 0xf7, 0xb3, 0xf3, 0xaf, 0x96, 0x05, 0x5a, 0xab, +}; +static const unsigned char kat3486_addinpr1[] = {0}; +static const unsigned char kat3486_entropyinpr2[] = { + 0x80, 0xd7, 0xfd, 0x18, 0x95, 0x33, 0x9c, 0x97, 0x4a, 0x82, 0xe2, 0x96, + 0x9b, 0xf2, 0x79, 0x28, 0x35, 0x45, 0xa6, 0xd9, 0xa8, 0xec, 0x50, 0x55, + 0x26, 0x03, 0xb8, 0x3d, 0xd6, 0x9c, 0xe6, 0xa8, +}; +static const unsigned char kat3486_addinpr2[] = {0}; +static const unsigned char kat3486_retbits[] = { + 0x88, 0x36, 0x93, 0x0c, 0x29, 0xb7, 0x51, 0x0c, 0x9c, 0xd7, 0x8e, 0x5d, + 0x84, 0x1b, 0xa8, 0xb3, 0xab, 0xe8, 0x2f, 0xaa, 0x69, 0x6d, 0x57, 0x06, + 0xed, 0x49, 0xc5, 0xb1, 0x15, 0x97, 0x3f, 0xaf, 0xb6, 0x30, 0x3e, 0x05, + 0x36, 0x11, 0xcb, 0xc1, 0x64, 0x70, 0x43, 0x2a, 0xff, 0x7e, 0xf7, 0x00, + 0x66, 0x89, 0x64, 0xe2, 0x07, 0xe4, 0x06, 0x06, 0x8f, 0xb3, 0x96, 0xf5, + 0xfe, 0x80, 0xe0, 0xce, +}; +static const struct drbg_kat_pr_true kat3486_t = { + 5, kat3486_entropyin, kat3486_nonce, kat3486_persstr, + kat3486_entropyinpr1, kat3486_addinpr1, kat3486_entropyinpr2, + kat3486_addinpr2, kat3486_retbits +}; +static const struct drbg_kat kat3486 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3486_t +}; + +static const unsigned char kat3487_entropyin[] = { + 0x00, 0x5b, 0x76, 0xa9, 0x3d, 0x2f, 0x77, 0x46, 0xf1, 0xf5, 0xe8, 0x9e, + 0x21, 0x4e, 0x3e, 0x58, 0x0c, 0x63, 0x90, 0xcb, 0x5b, 0xa8, 0xe1, 0xf6, + 0x49, 0x9d, 0x34, 0xee, 0x28, 0x97, 0xc9, 0x54, +}; +static const unsigned char kat3487_nonce[] = { + 0xad, 0xa2, 0x88, 0x12, 0xf6, 0xf3, 0x28, 0x96, 0x8f, 0xfa, 0x2a, 0x14, + 0x04, 0x9d, 0xa9, 0xa1, +}; +static const unsigned char kat3487_persstr[] = {0}; +static const unsigned char kat3487_entropyinpr1[] = { + 0xe8, 0xcf, 0xb9, 0x01, 0xc1, 0x93, 0x33, 0x81, 0xa7, 0xe3, 0x39, 0x84, + 0x14, 0x8a, 0x03, 0x82, 0x9a, 0xf1, 0x5b, 0x4a, 0xcd, 0x5b, 0x7c, 0xf6, + 0x65, 0xaf, 0xc6, 0x98, 0x02, 0x75, 0x68, 0xad, +}; +static const unsigned char kat3487_addinpr1[] = {0}; +static const unsigned char kat3487_entropyinpr2[] = { + 0xf8, 0x81, 0xb9, 0xf8, 0xd2, 0x33, 0x9f, 0x6e, 0xbf, 0xda, 0xf8, 0xcb, + 0x78, 0x22, 0x59, 0x9d, 0x72, 0x7f, 0x99, 0x4d, 0x14, 0x6e, 0x0b, 0x70, + 0xb9, 0x3b, 0xb1, 0x5f, 0x86, 0x4d, 0x6a, 0xc0, +}; +static const unsigned char kat3487_addinpr2[] = {0}; +static const unsigned char kat3487_retbits[] = { + 0x51, 0x59, 0xbe, 0x5c, 0xea, 0xc7, 0x02, 0x0f, 0x32, 0x02, 0x92, 0xb6, + 0xf7, 0x6f, 0x54, 0x1c, 0xa6, 0xc1, 0x6a, 0xd8, 0x2a, 0x6f, 0x78, 0xb5, + 0x2c, 0xa4, 0xa6, 0x63, 0xd5, 0x2b, 0x39, 0xca, 0x1e, 0x15, 0x30, 0xa0, + 0xc7, 0xce, 0xa3, 0x7a, 0x7f, 0x4e, 0x8f, 0xde, 0x44, 0xb8, 0xa2, 0xbc, + 0xef, 0xab, 0xdf, 0x29, 0xb1, 0x4e, 0x8d, 0x3d, 0x2d, 0x71, 0xe5, 0xb2, + 0x6b, 0x1e, 0x33, 0xcf, +}; +static const struct drbg_kat_pr_true kat3487_t = { + 6, kat3487_entropyin, kat3487_nonce, kat3487_persstr, + kat3487_entropyinpr1, kat3487_addinpr1, kat3487_entropyinpr2, + kat3487_addinpr2, kat3487_retbits +}; +static const struct drbg_kat kat3487 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3487_t +}; + +static const unsigned char kat3488_entropyin[] = { + 0x2f, 0x4b, 0xdd, 0x27, 0xcc, 0x2f, 0x84, 0x16, 0xa0, 0x26, 0x15, 0xa9, + 0x74, 0x77, 0xfd, 0xbd, 0x38, 0x8f, 0x9d, 0x6c, 0x78, 0xca, 0xa7, 0x7b, + 0x1e, 0xd3, 0xcc, 0x48, 0xf3, 0xfb, 0x73, 0x21, +}; +static const unsigned char kat3488_nonce[] = { + 0x41, 0xde, 0xa1, 0xf9, 0x37, 0xce, 0x02, 0x64, 0xe9, 0x10, 0xbb, 0x23, + 0x7b, 0xa9, 0x85, 0xc1, +}; +static const unsigned char kat3488_persstr[] = {0}; +static const unsigned char kat3488_entropyinpr1[] = { + 0x70, 0x0a, 0xe2, 0xa5, 0xa7, 0x70, 0x4e, 0x65, 0x78, 0x00, 0x39, 0x09, + 0x24, 0x2c, 0x60, 0x7a, 0xe5, 0x78, 0xe6, 0x1d, 0xf4, 0x23, 0xc9, 0x75, + 0xc6, 0x14, 0x9a, 0x4d, 0xbf, 0xb6, 0x6f, 0xf2, +}; +static const unsigned char kat3488_addinpr1[] = {0}; +static const unsigned char kat3488_entropyinpr2[] = { + 0x2c, 0xbd, 0x43, 0x01, 0xa9, 0x4a, 0x76, 0x1c, 0x87, 0x2d, 0xc3, 0x1a, + 0x42, 0xa1, 0xa9, 0x3b, 0x02, 0xbe, 0x96, 0xd4, 0xc6, 0x84, 0x30, 0x14, + 0xaf, 0x60, 0x5b, 0x01, 0x7b, 0xa7, 0x67, 0x07, +}; +static const unsigned char kat3488_addinpr2[] = {0}; +static const unsigned char kat3488_retbits[] = { + 0x88, 0x72, 0xff, 0xcb, 0x88, 0x78, 0x82, 0x33, 0xc4, 0x20, 0x17, 0xfa, + 0x22, 0x9e, 0xcf, 0xa0, 0x4e, 0x80, 0xfe, 0x34, 0x2a, 0x40, 0xc0, 0x69, + 0x9f, 0xa1, 0xf2, 0x15, 0xf6, 0x04, 0x3c, 0x1d, 0xbf, 0xf7, 0x2f, 0x77, + 0x61, 0x15, 0x5d, 0x4d, 0xa0, 0x50, 0x04, 0x13, 0x23, 0x28, 0x78, 0xee, + 0x7f, 0xaa, 0xe0, 0xc4, 0x25, 0xac, 0x0a, 0x50, 0xee, 0xf8, 0x99, 0x2b, + 0xbc, 0x30, 0xea, 0x90, +}; +static const struct drbg_kat_pr_true kat3488_t = { + 7, kat3488_entropyin, kat3488_nonce, kat3488_persstr, + kat3488_entropyinpr1, kat3488_addinpr1, kat3488_entropyinpr2, + kat3488_addinpr2, kat3488_retbits +}; +static const struct drbg_kat kat3488 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3488_t +}; + +static const unsigned char kat3489_entropyin[] = { + 0xef, 0xb3, 0xa5, 0xff, 0xdb, 0xda, 0x70, 0xd1, 0x2a, 0xed, 0xfc, 0xae, + 0xf8, 0x9b, 0xa7, 0x90, 0x26, 0x94, 0x67, 0x23, 0x1b, 0x88, 0x0f, 0x01, + 0x87, 0x0a, 0x60, 0xc1, 0x26, 0x0c, 0x46, 0xe9, +}; +static const unsigned char kat3489_nonce[] = { + 0xfc, 0x1e, 0x7f, 0xe0, 0x4c, 0x93, 0x53, 0xda, 0x29, 0xaa, 0x72, 0x44, + 0x50, 0xbd, 0x73, 0xeb, +}; +static const unsigned char kat3489_persstr[] = {0}; +static const unsigned char kat3489_entropyinpr1[] = { + 0xc0, 0x02, 0x63, 0x36, 0x2d, 0x31, 0x57, 0x4b, 0x93, 0x6c, 0xab, 0x20, + 0x70, 0x59, 0x61, 0xf4, 0x8b, 0x94, 0x22, 0x4b, 0x41, 0x12, 0x07, 0x53, + 0x33, 0x86, 0x26, 0x8b, 0x0a, 0x69, 0x2f, 0x09, +}; +static const unsigned char kat3489_addinpr1[] = {0}; +static const unsigned char kat3489_entropyinpr2[] = { + 0x35, 0xcd, 0x29, 0x3c, 0xf7, 0x82, 0x86, 0x32, 0x91, 0x71, 0xc9, 0x99, + 0x87, 0x84, 0x97, 0x20, 0xf4, 0x5d, 0xbb, 0x23, 0xe7, 0x9c, 0x60, 0xaa, + 0x5c, 0xbb, 0xbe, 0x3e, 0x12, 0xa9, 0x81, 0x9a, +}; +static const unsigned char kat3489_addinpr2[] = {0}; +static const unsigned char kat3489_retbits[] = { + 0x30, 0x2b, 0x18, 0x41, 0x44, 0xe2, 0xea, 0x2b, 0x78, 0xf7, 0xf6, 0x6a, + 0x06, 0x8e, 0xf5, 0xd4, 0xd4, 0xe6, 0x12, 0x87, 0xea, 0x68, 0x75, 0xb0, + 0x06, 0xe8, 0xf5, 0x97, 0x26, 0x86, 0x9d, 0xe2, 0xd0, 0xb9, 0x23, 0x21, + 0x4c, 0x9c, 0x35, 0x2f, 0x07, 0x3c, 0x1f, 0x18, 0x3d, 0x97, 0x45, 0x75, + 0x05, 0xb8, 0x6f, 0x28, 0x33, 0xde, 0xb7, 0xbd, 0x75, 0xf4, 0x16, 0x8a, + 0x72, 0x7d, 0xdb, 0x8f, +}; +static const struct drbg_kat_pr_true kat3489_t = { + 8, kat3489_entropyin, kat3489_nonce, kat3489_persstr, + kat3489_entropyinpr1, kat3489_addinpr1, kat3489_entropyinpr2, + kat3489_addinpr2, kat3489_retbits +}; +static const struct drbg_kat kat3489 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3489_t +}; + +static const unsigned char kat3490_entropyin[] = { + 0x8b, 0x4a, 0xfd, 0xeb, 0xae, 0xa8, 0x19, 0x95, 0x4d, 0x4f, 0x14, 0x0f, + 0x86, 0xe0, 0x7c, 0x7f, 0x10, 0x6a, 0x07, 0x43, 0x59, 0x7a, 0x6c, 0xf3, + 0xc8, 0x8b, 0x82, 0xdb, 0xec, 0xc1, 0xab, 0xa8, +}; +static const unsigned char kat3490_nonce[] = { + 0xd1, 0x52, 0x86, 0x69, 0x5a, 0x40, 0xd1, 0xe9, 0xd8, 0xda, 0xd1, 0x63, + 0xba, 0x9a, 0x88, 0xd0, +}; +static const unsigned char kat3490_persstr[] = {0}; +static const unsigned char kat3490_entropyinpr1[] = { + 0xea, 0x9d, 0x32, 0x7d, 0x1a, 0x2f, 0xae, 0xf2, 0xc0, 0x91, 0x0a, 0xbf, + 0xc5, 0x57, 0xf0, 0x5f, 0x75, 0x79, 0xb0, 0xc4, 0xbf, 0x29, 0x38, 0x0e, + 0xed, 0x9e, 0x05, 0xf5, 0x27, 0xe4, 0xeb, 0x1f, +}; +static const unsigned char kat3490_addinpr1[] = {0}; +static const unsigned char kat3490_entropyinpr2[] = { + 0x0e, 0xd6, 0x94, 0x4e, 0xac, 0xbc, 0x4a, 0x0b, 0x1e, 0x81, 0xc9, 0x5f, + 0x72, 0x00, 0xb2, 0x58, 0xaf, 0xb0, 0x4c, 0x5e, 0x43, 0x65, 0xab, 0x2e, + 0x92, 0x83, 0x3f, 0x8e, 0x0b, 0x4e, 0xeb, 0x2d, +}; +static const unsigned char kat3490_addinpr2[] = {0}; +static const unsigned char kat3490_retbits[] = { + 0x67, 0xb7, 0xff, 0x78, 0x0b, 0x3b, 0xb1, 0x49, 0x8a, 0xca, 0x41, 0xbf, + 0xad, 0x29, 0x16, 0xa4, 0xff, 0x16, 0x29, 0xab, 0x6b, 0x9f, 0x80, 0x4f, + 0x45, 0xa9, 0xed, 0xda, 0xc9, 0xbe, 0x33, 0xd1, 0xc6, 0x74, 0x81, 0x46, + 0x5b, 0x1d, 0x75, 0xfe, 0x37, 0xc4, 0x2b, 0x92, 0xc6, 0xfb, 0xba, 0x14, + 0xe1, 0x8b, 0x0f, 0x39, 0x3a, 0x64, 0xb3, 0x85, 0x44, 0xef, 0xa0, 0x55, + 0xeb, 0xb6, 0x82, 0x19, +}; +static const struct drbg_kat_pr_true kat3490_t = { + 9, kat3490_entropyin, kat3490_nonce, kat3490_persstr, + kat3490_entropyinpr1, kat3490_addinpr1, kat3490_entropyinpr2, + kat3490_addinpr2, kat3490_retbits +}; +static const struct drbg_kat kat3490 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3490_t +}; + +static const unsigned char kat3491_entropyin[] = { + 0xc4, 0x3e, 0xff, 0xee, 0x50, 0x10, 0xe9, 0xd7, 0x1e, 0x44, 0x99, 0x38, + 0xc1, 0x61, 0x48, 0xd9, 0x7d, 0x5f, 0x67, 0xba, 0xb4, 0x21, 0x03, 0x2a, + 0xc6, 0x2d, 0x65, 0x51, 0x68, 0xe0, 0xc0, 0x55, +}; +static const unsigned char kat3491_nonce[] = { + 0xa6, 0xb6, 0x95, 0xbb, 0xf8, 0xd2, 0xcc, 0x25, 0xfa, 0x4a, 0x0d, 0x71, + 0x0f, 0xbb, 0xc3, 0xbf, +}; +static const unsigned char kat3491_persstr[] = {0}; +static const unsigned char kat3491_entropyinpr1[] = { + 0xa2, 0xc2, 0xa6, 0x0b, 0x9b, 0xe7, 0x43, 0x8d, 0x50, 0xe3, 0xb6, 0xbe, + 0xd8, 0xd3, 0x3f, 0xdd, 0xc2, 0xd5, 0xa2, 0xbc, 0x2f, 0xd2, 0x4f, 0x70, + 0x16, 0x50, 0xe4, 0xdc, 0x74, 0x0d, 0x5e, 0x7a, +}; +static const unsigned char kat3491_addinpr1[] = {0}; +static const unsigned char kat3491_entropyinpr2[] = { + 0x21, 0x69, 0x71, 0xfc, 0x3b, 0x86, 0xf1, 0x93, 0x79, 0xfa, 0xb4, 0x62, + 0x8f, 0xe2, 0x57, 0xcf, 0x87, 0xd0, 0xaa, 0xc2, 0xca, 0xfd, 0x67, 0x7f, + 0xe2, 0x81, 0xdc, 0xd0, 0x08, 0x5d, 0x03, 0xfe, +}; +static const unsigned char kat3491_addinpr2[] = {0}; +static const unsigned char kat3491_retbits[] = { + 0xad, 0xac, 0x58, 0xc5, 0x4e, 0x80, 0x54, 0x08, 0x6a, 0x4a, 0x73, 0x5d, + 0x54, 0x5e, 0xb2, 0xb8, 0x32, 0x37, 0xd5, 0x8f, 0x6e, 0xde, 0x02, 0xe7, + 0x25, 0x97, 0x45, 0x79, 0xef, 0x2c, 0x35, 0x50, 0x40, 0xf4, 0x55, 0x26, + 0xb6, 0x33, 0xb0, 0x22, 0x1c, 0xec, 0x3a, 0x0d, 0x26, 0x42, 0xa9, 0xa7, + 0xa6, 0x8f, 0xd5, 0x32, 0x35, 0x16, 0x84, 0xcd, 0x54, 0x46, 0xaa, 0x63, + 0x02, 0xe2, 0x2a, 0x02, +}; +static const struct drbg_kat_pr_true kat3491_t = { + 10, kat3491_entropyin, kat3491_nonce, kat3491_persstr, + kat3491_entropyinpr1, kat3491_addinpr1, kat3491_entropyinpr2, + kat3491_addinpr2, kat3491_retbits +}; +static const struct drbg_kat kat3491 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3491_t +}; + +static const unsigned char kat3492_entropyin[] = { + 0x24, 0xa0, 0xfc, 0xa3, 0xbe, 0xa7, 0xd1, 0x50, 0xf4, 0xd2, 0xd5, 0x8d, + 0xb4, 0x8c, 0x76, 0x86, 0xef, 0xdb, 0xa1, 0xfb, 0x74, 0xc4, 0xa7, 0x05, + 0xe3, 0xbe, 0x49, 0x06, 0x67, 0x0c, 0xcd, 0xcb, +}; +static const unsigned char kat3492_nonce[] = { + 0xc9, 0xf3, 0x05, 0xef, 0x01, 0x24, 0x68, 0xa1, 0x19, 0xee, 0x4d, 0xa9, + 0x34, 0x53, 0x56, 0x76, +}; +static const unsigned char kat3492_persstr[] = {0}; +static const unsigned char kat3492_entropyinpr1[] = { + 0x1a, 0xed, 0xf5, 0x3e, 0xbb, 0x77, 0xf5, 0xfc, 0x09, 0x57, 0xa2, 0xee, + 0x9b, 0xe1, 0x95, 0x7b, 0xc0, 0x0b, 0x34, 0x32, 0x25, 0x6b, 0xbc, 0xc9, + 0x24, 0x37, 0x46, 0xff, 0xbd, 0x01, 0x1b, 0x0e, +}; +static const unsigned char kat3492_addinpr1[] = {0}; +static const unsigned char kat3492_entropyinpr2[] = { + 0xbd, 0x6f, 0xf8, 0x34, 0xa4, 0x2a, 0x6a, 0x7d, 0x0a, 0x89, 0x79, 0xb7, + 0x1a, 0x84, 0x9d, 0x14, 0xea, 0xe2, 0xf8, 0x6e, 0xf9, 0xa6, 0x58, 0x11, + 0x22, 0xfc, 0x91, 0x2f, 0xf5, 0x97, 0x45, 0x21, +}; +static const unsigned char kat3492_addinpr2[] = {0}; +static const unsigned char kat3492_retbits[] = { + 0x38, 0x9d, 0xf3, 0xb3, 0x29, 0x9c, 0xfe, 0x4a, 0xa0, 0x72, 0xa8, 0x21, + 0xa0, 0x28, 0xd5, 0x65, 0x86, 0x4a, 0xf2, 0xd9, 0x2e, 0xfb, 0xcc, 0xee, + 0xb5, 0x09, 0x6f, 0xc2, 0x18, 0x72, 0x33, 0x4b, 0x7d, 0x14, 0x1a, 0xb8, + 0xb3, 0xf3, 0x9b, 0xb9, 0x00, 0x9c, 0x81, 0x38, 0xc4, 0xd4, 0x9f, 0xce, + 0xae, 0x82, 0xc7, 0x94, 0x9d, 0x6b, 0x6f, 0x43, 0x1f, 0xe0, 0xa5, 0x52, + 0xca, 0x22, 0x66, 0x8b, +}; +static const struct drbg_kat_pr_true kat3492_t = { + 11, kat3492_entropyin, kat3492_nonce, kat3492_persstr, + kat3492_entropyinpr1, kat3492_addinpr1, kat3492_entropyinpr2, + kat3492_addinpr2, kat3492_retbits +}; +static const struct drbg_kat kat3492 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3492_t +}; + +static const unsigned char kat3493_entropyin[] = { + 0xe4, 0xc9, 0xcb, 0x62, 0x9b, 0xe9, 0x86, 0x5c, 0x87, 0x22, 0xa0, 0xd4, + 0xd3, 0x09, 0xc6, 0x05, 0xa3, 0x57, 0x03, 0xa8, 0xcd, 0x93, 0x6a, 0xe8, + 0xcf, 0xbc, 0xc1, 0x53, 0x9c, 0x1b, 0xbf, 0x00, +}; +static const unsigned char kat3493_nonce[] = { + 0x0f, 0xfe, 0x80, 0x46, 0x9c, 0xe0, 0x39, 0x77, 0xd8, 0x14, 0xd9, 0x18, + 0xf7, 0x68, 0x52, 0xd4, +}; +static const unsigned char kat3493_persstr[] = {0}; +static const unsigned char kat3493_entropyinpr1[] = { + 0x26, 0xcf, 0x01, 0x01, 0x37, 0x82, 0x1c, 0xcc, 0x59, 0x57, 0x40, 0x54, + 0xe3, 0x16, 0x9b, 0x62, 0xed, 0x83, 0xc9, 0xda, 0x5c, 0xdf, 0xc0, 0xd4, + 0x99, 0x9a, 0xf9, 0x80, 0x3c, 0x30, 0x27, 0x7d, +}; +static const unsigned char kat3493_addinpr1[] = {0}; +static const unsigned char kat3493_entropyinpr2[] = { + 0x00, 0x8b, 0x6f, 0xd3, 0xd1, 0xce, 0xba, 0x6a, 0xdd, 0xff, 0x19, 0xbd, + 0x53, 0x7b, 0x1b, 0x6b, 0x54, 0x93, 0x26, 0x5b, 0x05, 0x2b, 0xc2, 0xdd, + 0xd8, 0x03, 0x7b, 0x0b, 0xc0, 0x5d, 0xa1, 0xc6, +}; +static const unsigned char kat3493_addinpr2[] = {0}; +static const unsigned char kat3493_retbits[] = { + 0x5e, 0x81, 0xdd, 0x07, 0x2d, 0x50, 0xc9, 0x05, 0x1c, 0x5b, 0xa3, 0x71, + 0x9e, 0xf5, 0x18, 0xc3, 0x42, 0xa7, 0x75, 0xc0, 0xfe, 0x3e, 0xa1, 0x45, + 0xba, 0xe1, 0xbc, 0x34, 0x52, 0xcd, 0xcf, 0xd8, 0x96, 0x4b, 0x9b, 0x92, + 0xaf, 0x68, 0x14, 0x20, 0x54, 0x78, 0xf5, 0xe4, 0x3e, 0xf9, 0xdc, 0xad, + 0xc1, 0x8e, 0x64, 0x09, 0x65, 0x39, 0x96, 0x49, 0x30, 0x44, 0x33, 0x17, + 0xa5, 0x92, 0x97, 0xa8, +}; +static const struct drbg_kat_pr_true kat3493_t = { + 12, kat3493_entropyin, kat3493_nonce, kat3493_persstr, + kat3493_entropyinpr1, kat3493_addinpr1, kat3493_entropyinpr2, + kat3493_addinpr2, kat3493_retbits +}; +static const struct drbg_kat kat3493 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3493_t +}; + +static const unsigned char kat3494_entropyin[] = { + 0x60, 0xda, 0x47, 0x3f, 0x8d, 0x81, 0xf0, 0x38, 0x46, 0xda, 0x88, 0x21, + 0xee, 0xee, 0x12, 0xe3, 0x1d, 0x5a, 0x98, 0x91, 0xf3, 0xb4, 0x5c, 0xcb, + 0x91, 0x21, 0x8a, 0xde, 0x47, 0x1e, 0xe3, 0x7d, +}; +static const unsigned char kat3494_nonce[] = { + 0x79, 0x12, 0x79, 0x4f, 0x93, 0x78, 0xa9, 0x22, 0x5e, 0x59, 0x0e, 0x90, + 0x30, 0x1b, 0x56, 0x7d, +}; +static const unsigned char kat3494_persstr[] = {0}; +static const unsigned char kat3494_entropyinpr1[] = { + 0xed, 0xb6, 0x8d, 0xa6, 0x7e, 0x65, 0x9e, 0x6f, 0x6e, 0xfe, 0x6e, 0x62, + 0x34, 0xac, 0x2a, 0xe0, 0xd9, 0x22, 0x3f, 0xc0, 0x54, 0x92, 0x04, 0x40, + 0x4a, 0xf4, 0xf9, 0x3c, 0x6f, 0x4d, 0x5d, 0xb3, +}; +static const unsigned char kat3494_addinpr1[] = {0}; +static const unsigned char kat3494_entropyinpr2[] = { + 0x8c, 0xc0, 0x53, 0x6d, 0xc8, 0x3b, 0x53, 0x80, 0x74, 0xfc, 0x86, 0x40, + 0xad, 0x40, 0x6a, 0x0e, 0xbe, 0xe9, 0x57, 0x89, 0x86, 0xa7, 0x18, 0x7d, + 0x0a, 0xc2, 0x9f, 0x66, 0x1b, 0x36, 0xd2, 0xe3, +}; +static const unsigned char kat3494_addinpr2[] = {0}; +static const unsigned char kat3494_retbits[] = { + 0xae, 0x34, 0x74, 0x28, 0x2b, 0x13, 0x2d, 0xe6, 0x5c, 0x73, 0x21, 0xc3, + 0xfd, 0x19, 0x42, 0x92, 0xd8, 0x1f, 0xa2, 0x1a, 0xb6, 0xd5, 0xf3, 0x43, + 0x43, 0xc2, 0xcc, 0xdc, 0x64, 0x63, 0x41, 0x1d, 0x18, 0x75, 0xb7, 0x70, + 0xdb, 0x7b, 0x95, 0x32, 0xa5, 0x1a, 0x2c, 0x35, 0xca, 0x9f, 0x61, 0xe1, + 0xb1, 0xec, 0xb6, 0x09, 0x35, 0x6b, 0x0a, 0xc7, 0xec, 0xf4, 0xc9, 0x35, + 0x21, 0x75, 0xb2, 0x4d, +}; +static const struct drbg_kat_pr_true kat3494_t = { + 13, kat3494_entropyin, kat3494_nonce, kat3494_persstr, + kat3494_entropyinpr1, kat3494_addinpr1, kat3494_entropyinpr2, + kat3494_addinpr2, kat3494_retbits +}; +static const struct drbg_kat kat3494 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3494_t +}; + +static const unsigned char kat3495_entropyin[] = { + 0x45, 0x1b, 0xe1, 0xbe, 0x4f, 0x13, 0xb1, 0xc5, 0xb7, 0xda, 0x81, 0x6b, + 0x15, 0x11, 0xbc, 0x5a, 0x31, 0x54, 0x81, 0x4c, 0x43, 0xd2, 0x42, 0x02, + 0x23, 0x91, 0xaf, 0xe4, 0xf2, 0x77, 0x85, 0x04, +}; +static const unsigned char kat3495_nonce[] = { + 0x3d, 0x95, 0xfc, 0x04, 0xbe, 0x57, 0x2d, 0x0b, 0x82, 0xd6, 0x30, 0x86, + 0xab, 0x30, 0x0f, 0x55, +}; +static const unsigned char kat3495_persstr[] = {0}; +static const unsigned char kat3495_entropyinpr1[] = { + 0x93, 0x61, 0x6f, 0x22, 0x63, 0xa2, 0x6c, 0x9f, 0x07, 0x31, 0x0e, 0x37, + 0xbc, 0x7e, 0x42, 0xd2, 0xf3, 0xa0, 0x76, 0xc4, 0xef, 0x7b, 0x84, 0xdf, + 0xf4, 0x0a, 0xba, 0xd0, 0x1f, 0xa1, 0xd8, 0xe3, +}; +static const unsigned char kat3495_addinpr1[] = {0}; +static const unsigned char kat3495_entropyinpr2[] = { + 0x5b, 0x14, 0xf3, 0x8f, 0xeb, 0x74, 0x20, 0x63, 0xb9, 0x2f, 0x91, 0xc9, + 0x14, 0x04, 0x30, 0x00, 0x99, 0x77, 0x7a, 0x62, 0xd9, 0x42, 0x07, 0x3b, + 0x7a, 0xf1, 0x64, 0xd7, 0xdf, 0xc2, 0x1d, 0x11, +}; +static const unsigned char kat3495_addinpr2[] = {0}; +static const unsigned char kat3495_retbits[] = { + 0x85, 0x2b, 0x40, 0x52, 0xd2, 0x61, 0xb2, 0xc4, 0xae, 0x3d, 0x95, 0x04, + 0x9e, 0x99, 0xa9, 0x34, 0xc8, 0xa9, 0xe8, 0x20, 0xd5, 0x7b, 0x4c, 0xcc, + 0x64, 0x03, 0x1c, 0x27, 0x16, 0xbe, 0xf8, 0x9c, 0xa0, 0xef, 0x89, 0x32, + 0x53, 0xb7, 0x37, 0x27, 0x12, 0xe7, 0xef, 0x10, 0xa3, 0x40, 0xdc, 0x5c, + 0x55, 0xf3, 0x44, 0x89, 0x5c, 0xf3, 0x48, 0x74, 0xb4, 0x2b, 0x42, 0xa1, + 0x1f, 0xab, 0xce, 0xec, +}; +static const struct drbg_kat_pr_true kat3495_t = { + 14, kat3495_entropyin, kat3495_nonce, kat3495_persstr, + kat3495_entropyinpr1, kat3495_addinpr1, kat3495_entropyinpr2, + kat3495_addinpr2, kat3495_retbits +}; +static const struct drbg_kat kat3495 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3495_t +}; + +static const unsigned char kat3496_entropyin[] = { + 0x3f, 0xd2, 0x17, 0x84, 0x6d, 0xa9, 0x87, 0x38, 0xb8, 0xed, 0x51, 0x9b, + 0x3d, 0x61, 0x5d, 0x8d, 0x0c, 0xd0, 0x06, 0xbe, 0x1f, 0x24, 0x87, 0x72, + 0x65, 0x53, 0x67, 0xcf, 0x0f, 0x65, 0xb1, 0x0f, +}; +static const unsigned char kat3496_nonce[] = { + 0xeb, 0xaf, 0x09, 0xbb, 0x8b, 0xa3, 0x1e, 0xf9, 0xd8, 0x47, 0xae, 0x39, + 0xf8, 0x5d, 0x41, 0x50, +}; +static const unsigned char kat3496_persstr[] = {0}; +static const unsigned char kat3496_entropyinpr1[] = { + 0x28, 0xf5, 0xbf, 0x9c, 0x27, 0xdf, 0xae, 0x18, 0x62, 0x0f, 0xbc, 0xe6, + 0xe8, 0x9b, 0xbe, 0x38, 0xad, 0xe3, 0x56, 0x1e, 0xb8, 0xc7, 0x8b, 0xd2, + 0x43, 0x50, 0x63, 0xad, 0xe5, 0x58, 0xc3, 0x5a, +}; +static const unsigned char kat3496_addinpr1[] = { + 0xd8, 0xad, 0x85, 0x31, 0xf9, 0xb8, 0x8f, 0x5d, 0xcf, 0x9a, 0x6c, 0x4b, + 0x7d, 0x8e, 0x25, 0x78, 0x9b, 0x18, 0xb2, 0x9f, 0xd0, 0xac, 0x09, 0x7b, + 0x81, 0x91, 0x2e, 0x48, 0x56, 0x7b, 0x89, 0x2b, +}; +static const unsigned char kat3496_entropyinpr2[] = { + 0xc4, 0x53, 0x86, 0x22, 0x01, 0x47, 0xe2, 0x28, 0x24, 0x2d, 0xfb, 0xea, + 0x60, 0x28, 0x40, 0xa7, 0x63, 0xaa, 0xb5, 0x90, 0x10, 0x9f, 0x1c, 0x25, + 0xec, 0x66, 0x1a, 0x10, 0xc7, 0x16, 0xb3, 0xff, +}; +static const unsigned char kat3496_addinpr2[] = { + 0xfd, 0xd3, 0x3c, 0x05, 0x4d, 0xe2, 0x37, 0xd6, 0x44, 0x1b, 0x25, 0xfb, + 0xfc, 0xff, 0xb6, 0xbd, 0x29, 0xba, 0x5c, 0x5e, 0x02, 0xac, 0x01, 0x3c, + 0x91, 0x5a, 0x78, 0x70, 0x3e, 0xfa, 0x9d, 0x21, +}; +static const unsigned char kat3496_retbits[] = { + 0x47, 0x68, 0x36, 0xf6, 0x9a, 0x21, 0xd1, 0x27, 0x23, 0xe9, 0x4e, 0x7c, + 0xaf, 0xb4, 0x86, 0xc0, 0x4c, 0x77, 0xd7, 0xe1, 0xb8, 0x7a, 0xde, 0x17, + 0xea, 0xdd, 0xdd, 0x90, 0x62, 0x94, 0x79, 0x15, 0x29, 0x76, 0xd4, 0xfe, + 0xf6, 0xdd, 0xd9, 0x36, 0x59, 0x8f, 0xba, 0xd2, 0x18, 0xf4, 0xad, 0x42, + 0x3b, 0x1e, 0xa2, 0x0b, 0xfd, 0xd9, 0x9b, 0xa8, 0xae, 0x5e, 0x31, 0x7c, + 0x6c, 0x2a, 0x2d, 0x1e, +}; +static const struct drbg_kat_pr_true kat3496_t = { + 0, kat3496_entropyin, kat3496_nonce, kat3496_persstr, + kat3496_entropyinpr1, kat3496_addinpr1, kat3496_entropyinpr2, + kat3496_addinpr2, kat3496_retbits +}; +static const struct drbg_kat kat3496 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3496_t +}; + +static const unsigned char kat3497_entropyin[] = { + 0xb7, 0xd8, 0x43, 0xdd, 0x24, 0x13, 0xc5, 0x81, 0x93, 0x01, 0x51, 0x22, + 0x21, 0xf4, 0x46, 0x77, 0x46, 0x92, 0xd1, 0xd4, 0xb7, 0x96, 0xa3, 0x0f, + 0x17, 0xdd, 0x18, 0x9f, 0x89, 0xe0, 0x2a, 0x24, +}; +static const unsigned char kat3497_nonce[] = { + 0x13, 0x06, 0xb9, 0xe5, 0xc6, 0x4d, 0xe5, 0x12, 0x89, 0x2a, 0x3a, 0x4c, + 0x38, 0x05, 0xec, 0x25, +}; +static const unsigned char kat3497_persstr[] = {0}; +static const unsigned char kat3497_entropyinpr1[] = { + 0x6a, 0xeb, 0x3e, 0x2c, 0x97, 0xbd, 0x4b, 0xc2, 0x04, 0x7e, 0x37, 0xdf, + 0x34, 0x3a, 0x1c, 0xf4, 0x05, 0x55, 0xe2, 0xde, 0xac, 0x1d, 0x04, 0xcf, + 0x71, 0x38, 0xe3, 0x5c, 0xce, 0x0d, 0x91, 0x8b, +}; +static const unsigned char kat3497_addinpr1[] = { + 0xae, 0x61, 0xff, 0x8e, 0xf2, 0xcb, 0x4e, 0xaa, 0x48, 0x2c, 0x14, 0xe3, + 0xc4, 0x44, 0x9b, 0xc0, 0x1a, 0x85, 0x1a, 0xd0, 0xf0, 0xc3, 0xdb, 0x37, + 0x0a, 0x78, 0x15, 0xf7, 0xe8, 0x39, 0x82, 0x8c, +}; +static const unsigned char kat3497_entropyinpr2[] = { + 0x3d, 0xab, 0x9e, 0xb8, 0x60, 0x33, 0x0c, 0x13, 0xd9, 0x45, 0xdd, 0xc0, + 0x85, 0x91, 0x91, 0x68, 0xc3, 0x78, 0x12, 0x55, 0x6d, 0x6f, 0x4d, 0x45, + 0x00, 0x8f, 0xd4, 0x75, 0x4e, 0xe8, 0xb3, 0x1c, +}; +static const unsigned char kat3497_addinpr2[] = { + 0x9d, 0x97, 0x82, 0x32, 0x62, 0xd0, 0x0b, 0x1d, 0x91, 0x1f, 0x84, 0xfd, + 0xe9, 0xd4, 0xbe, 0x2b, 0xd9, 0x51, 0x87, 0x68, 0xce, 0xe6, 0x8a, 0xe1, + 0x1d, 0x7f, 0xb4, 0x87, 0x1b, 0x41, 0xe0, 0x9b, +}; +static const unsigned char kat3497_retbits[] = { + 0xf0, 0xe0, 0x09, 0x16, 0x59, 0x7d, 0x11, 0x55, 0xbc, 0x72, 0x73, 0xd8, + 0xc2, 0xfa, 0xc6, 0x1b, 0x1d, 0xf9, 0xa5, 0xb0, 0x10, 0xae, 0x94, 0x35, + 0xc1, 0x4c, 0x13, 0x23, 0x94, 0xab, 0xd9, 0x84, 0x89, 0xb4, 0x39, 0x47, + 0xb1, 0xfa, 0xaa, 0xb5, 0xa3, 0x4a, 0xa0, 0xce, 0x2d, 0x9b, 0xc3, 0xc4, + 0x3b, 0x83, 0x4b, 0xde, 0x50, 0x5e, 0xd2, 0x35, 0xc9, 0x03, 0x76, 0xb8, + 0x58, 0x86, 0x7c, 0xa5, +}; +static const struct drbg_kat_pr_true kat3497_t = { + 1, kat3497_entropyin, kat3497_nonce, kat3497_persstr, + kat3497_entropyinpr1, kat3497_addinpr1, kat3497_entropyinpr2, + kat3497_addinpr2, kat3497_retbits +}; +static const struct drbg_kat kat3497 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3497_t +}; + +static const unsigned char kat3498_entropyin[] = { + 0x59, 0x60, 0x67, 0x43, 0xdd, 0xef, 0x2a, 0x03, 0xcc, 0xf6, 0x66, 0xef, + 0xd5, 0x4f, 0x25, 0xc4, 0xc3, 0xcc, 0x30, 0x4c, 0x35, 0xbb, 0x2a, 0x50, + 0xa2, 0x67, 0x4f, 0x3f, 0x84, 0xbd, 0xad, 0xd7, +}; +static const unsigned char kat3498_nonce[] = { + 0x19, 0xc1, 0x84, 0x17, 0x4c, 0xb3, 0x60, 0xfe, 0x44, 0xf5, 0x39, 0xc3, + 0xd7, 0x49, 0x83, 0xe1, +}; +static const unsigned char kat3498_persstr[] = {0}; +static const unsigned char kat3498_entropyinpr1[] = { + 0x37, 0x6c, 0x65, 0x9e, 0x38, 0x35, 0xac, 0x5b, 0x82, 0x75, 0x6b, 0x5e, + 0xa9, 0x59, 0xae, 0xbb, 0xa9, 0x71, 0x87, 0x77, 0x06, 0xc2, 0xf1, 0x78, + 0xcb, 0xcf, 0x6a, 0x65, 0x35, 0x14, 0x49, 0x80, +}; +static const unsigned char kat3498_addinpr1[] = { + 0x4d, 0xeb, 0x16, 0x3e, 0x51, 0xe7, 0x49, 0x5d, 0x6a, 0x73, 0x5a, 0xdd, + 0x39, 0xb4, 0x61, 0xbb, 0x6c, 0xf4, 0xbb, 0xc5, 0x9d, 0xf5, 0xd9, 0x00, + 0x74, 0x45, 0x57, 0xff, 0xff, 0x34, 0xfd, 0xde, +}; +static const unsigned char kat3498_entropyinpr2[] = { + 0xd2, 0xfc, 0x76, 0x52, 0x94, 0x89, 0xa2, 0xd6, 0xf2, 0xef, 0x1d, 0xa3, + 0x9b, 0x15, 0x0d, 0x54, 0x4c, 0x80, 0xc9, 0xd8, 0x10, 0xff, 0x37, 0x11, + 0xab, 0x26, 0x6e, 0xd8, 0xa0, 0xc3, 0xd3, 0xcb, +}; +static const unsigned char kat3498_addinpr2[] = { + 0xf2, 0xfa, 0x6f, 0xd8, 0x89, 0x38, 0x36, 0x8f, 0x1e, 0x29, 0x90, 0x72, + 0xe1, 0x37, 0x9f, 0xe1, 0x33, 0x3c, 0x09, 0x1c, 0x80, 0x48, 0x75, 0xb0, + 0x53, 0xef, 0x62, 0x43, 0x74, 0x68, 0xef, 0x8a, +}; +static const unsigned char kat3498_retbits[] = { + 0xd7, 0xcd, 0x8a, 0x0c, 0x7b, 0xc9, 0x9e, 0x4b, 0x91, 0x09, 0xa9, 0xc8, + 0x5e, 0xef, 0xcd, 0x1e, 0x49, 0x60, 0xde, 0xb1, 0xd3, 0x55, 0xe5, 0x73, + 0xe8, 0xb2, 0xaf, 0xeb, 0x0f, 0x7b, 0x11, 0x40, 0x3e, 0xff, 0x99, 0x2b, + 0xdf, 0xaf, 0x01, 0x6a, 0x45, 0xf8, 0x1b, 0xc9, 0xbe, 0x6b, 0x96, 0xc4, + 0x03, 0xc9, 0xf8, 0x34, 0x9b, 0x9a, 0xd7, 0xb5, 0x99, 0x9d, 0xdb, 0x13, + 0xde, 0x58, 0xfd, 0xd8, +}; +static const struct drbg_kat_pr_true kat3498_t = { + 2, kat3498_entropyin, kat3498_nonce, kat3498_persstr, + kat3498_entropyinpr1, kat3498_addinpr1, kat3498_entropyinpr2, + kat3498_addinpr2, kat3498_retbits +}; +static const struct drbg_kat kat3498 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3498_t +}; + +static const unsigned char kat3499_entropyin[] = { + 0x38, 0x9a, 0xce, 0x66, 0x98, 0x6a, 0x72, 0x8e, 0x0a, 0x42, 0x38, 0x88, + 0xe5, 0x63, 0xde, 0xa7, 0x8b, 0x9d, 0x54, 0x8d, 0x91, 0x8b, 0xfc, 0x29, + 0x98, 0xc2, 0xa7, 0x4c, 0x33, 0xd0, 0xf2, 0x05, +}; +static const unsigned char kat3499_nonce[] = { + 0x6e, 0x0f, 0xa1, 0xd2, 0x53, 0xcf, 0x12, 0x7f, 0x69, 0xfc, 0x8f, 0x41, + 0x84, 0x1e, 0x54, 0x1a, +}; +static const unsigned char kat3499_persstr[] = {0}; +static const unsigned char kat3499_entropyinpr1[] = { + 0x4b, 0x50, 0x60, 0x78, 0x6b, 0xe8, 0xbb, 0xd2, 0xdd, 0x0d, 0xd5, 0xca, + 0xc7, 0xcf, 0xac, 0x3e, 0x40, 0x86, 0x5f, 0xe0, 0xfd, 0x0a, 0xfd, 0xe8, + 0x0a, 0xad, 0x84, 0xab, 0x83, 0x79, 0x6e, 0x58, +}; +static const unsigned char kat3499_addinpr1[] = { + 0x40, 0x0c, 0xe6, 0x2f, 0xa2, 0x27, 0x48, 0x90, 0xac, 0x2f, 0xb1, 0x88, + 0x97, 0x42, 0x2b, 0xbf, 0x80, 0xf6, 0x3f, 0x7a, 0x95, 0xf7, 0x0d, 0x1e, + 0xb6, 0xc3, 0x2d, 0x62, 0x61, 0x1e, 0xa9, 0x39, +}; +static const unsigned char kat3499_entropyinpr2[] = { + 0xac, 0x31, 0x8b, 0x14, 0x2d, 0x87, 0x75, 0x5a, 0x8a, 0xd9, 0xbf, 0xd2, + 0xd4, 0x1d, 0x29, 0xaf, 0xa6, 0xc3, 0x98, 0xd1, 0x6f, 0xa9, 0xe5, 0x1e, + 0xe5, 0xb0, 0xea, 0x30, 0x12, 0xd9, 0x37, 0xc1, +}; +static const unsigned char kat3499_addinpr2[] = { + 0xa5, 0x83, 0x4c, 0x14, 0x9c, 0x21, 0x81, 0x1c, 0xe1, 0x9f, 0x43, 0x53, + 0x53, 0x3f, 0xe6, 0x4b, 0x9a, 0xe4, 0xf3, 0x25, 0x74, 0x63, 0x98, 0xa5, + 0x4f, 0x46, 0x81, 0x85, 0xc0, 0xdf, 0x74, 0xc4, +}; +static const unsigned char kat3499_retbits[] = { + 0x58, 0x49, 0x13, 0xf2, 0x8a, 0x9f, 0x51, 0x01, 0x8b, 0x6f, 0x82, 0xa2, + 0x6f, 0x3d, 0xb3, 0x40, 0x94, 0x11, 0x72, 0xf8, 0xbc, 0x08, 0x87, 0x8c, + 0x5c, 0xcb, 0xe1, 0xa7, 0xe8, 0xaf, 0x8b, 0xca, 0x64, 0x42, 0xbb, 0xd4, + 0xf0, 0x41, 0x2e, 0x5e, 0xed, 0x7f, 0xca, 0x5b, 0x0b, 0x4e, 0xc0, 0x5b, + 0xd1, 0x4a, 0xdf, 0x84, 0x9e, 0xd9, 0xc7, 0xe7, 0x18, 0xd2, 0xa8, 0x19, + 0x1d, 0x29, 0x4c, 0x24, +}; +static const struct drbg_kat_pr_true kat3499_t = { + 3, kat3499_entropyin, kat3499_nonce, kat3499_persstr, + kat3499_entropyinpr1, kat3499_addinpr1, kat3499_entropyinpr2, + kat3499_addinpr2, kat3499_retbits +}; +static const struct drbg_kat kat3499 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3499_t +}; + +static const unsigned char kat3500_entropyin[] = { + 0x22, 0x7c, 0x5a, 0xf1, 0x70, 0xc3, 0x37, 0xb2, 0x18, 0x62, 0x3b, 0xb6, + 0x6e, 0xa1, 0x70, 0xb4, 0xdd, 0xca, 0xb1, 0xcf, 0xa4, 0x6d, 0xf8, 0x86, + 0x53, 0xcd, 0x67, 0x06, 0x8b, 0xd0, 0x52, 0xbd, +}; +static const unsigned char kat3500_nonce[] = { + 0x55, 0x91, 0x15, 0x8b, 0x53, 0x5b, 0x5d, 0xb2, 0x8d, 0x9f, 0xb4, 0xc4, + 0xa1, 0x14, 0xdc, 0x68, +}; +static const unsigned char kat3500_persstr[] = {0}; +static const unsigned char kat3500_entropyinpr1[] = { + 0x5e, 0x4f, 0x91, 0x47, 0x90, 0xe7, 0x27, 0x31, 0xaa, 0x98, 0xc7, 0xcb, + 0xc9, 0xb1, 0xd2, 0x63, 0xfa, 0xea, 0xa5, 0x6f, 0xfa, 0xfe, 0xc5, 0x8d, + 0x44, 0x3e, 0xbf, 0x0c, 0xb3, 0x88, 0xf8, 0x39, +}; +static const unsigned char kat3500_addinpr1[] = { + 0x14, 0x9d, 0x55, 0x86, 0x47, 0x8e, 0xb6, 0xbb, 0xe9, 0xbb, 0x00, 0x3a, + 0x6a, 0x49, 0x8a, 0x54, 0x09, 0x3a, 0xd6, 0x3d, 0x01, 0xd6, 0xe4, 0x6f, + 0x17, 0xd2, 0xa9, 0x54, 0x01, 0xb1, 0xec, 0x31, +}; +static const unsigned char kat3500_entropyinpr2[] = { + 0x98, 0x62, 0xbe, 0xaa, 0x4a, 0x68, 0x56, 0x09, 0xdc, 0xe0, 0x28, 0x1a, + 0x0f, 0x9b, 0xa3, 0xbe, 0x89, 0xa3, 0x80, 0x52, 0x41, 0x19, 0xf8, 0xc3, + 0x9d, 0xae, 0xf8, 0xe8, 0x46, 0xb4, 0x0b, 0xec, +}; +static const unsigned char kat3500_addinpr2[] = { + 0x13, 0xd6, 0x88, 0xf3, 0xad, 0x45, 0x74, 0xb9, 0x03, 0xf5, 0x6f, 0x65, + 0x70, 0x5d, 0xcc, 0x39, 0x10, 0x81, 0x15, 0x0c, 0xfd, 0x2e, 0xc7, 0x46, + 0x1f, 0xa1, 0xf8, 0xf5, 0xf6, 0x31, 0x9e, 0x60, +}; +static const unsigned char kat3500_retbits[] = { + 0x64, 0x7c, 0x5f, 0xd3, 0x1a, 0xd0, 0xfd, 0xb2, 0x5c, 0x18, 0x81, 0x54, + 0x62, 0x23, 0xa0, 0x6d, 0x5e, 0xba, 0xb3, 0x8b, 0x18, 0x85, 0xb8, 0x4b, + 0x7e, 0x4d, 0x7c, 0x05, 0xee, 0x58, 0xa4, 0x48, 0xb4, 0x4e, 0x17, 0x81, + 0xeb, 0xee, 0x66, 0x43, 0x52, 0x9e, 0x92, 0xad, 0xb1, 0xb5, 0x78, 0xa9, + 0xb0, 0x30, 0xa9, 0x13, 0x24, 0x5c, 0x2c, 0xff, 0x23, 0xd9, 0x19, 0x6d, + 0x46, 0xff, 0x6d, 0xe1, +}; +static const struct drbg_kat_pr_true kat3500_t = { + 4, kat3500_entropyin, kat3500_nonce, kat3500_persstr, + kat3500_entropyinpr1, kat3500_addinpr1, kat3500_entropyinpr2, + kat3500_addinpr2, kat3500_retbits +}; +static const struct drbg_kat kat3500 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3500_t +}; + +static const unsigned char kat3501_entropyin[] = { + 0xb4, 0x94, 0x41, 0xb3, 0x78, 0x7f, 0x63, 0x1c, 0x26, 0x3e, 0xa2, 0x22, + 0x85, 0x17, 0x76, 0xf7, 0x0f, 0x69, 0x3a, 0xef, 0x18, 0xf5, 0x0a, 0x4b, + 0x5c, 0x43, 0x15, 0xdf, 0x3e, 0xdf, 0x9c, 0xda, +}; +static const unsigned char kat3501_nonce[] = { + 0x73, 0xbd, 0x41, 0xc9, 0x29, 0x0a, 0x30, 0x5c, 0x66, 0xc6, 0x91, 0x21, + 0xf8, 0x2a, 0x13, 0x51, +}; +static const unsigned char kat3501_persstr[] = {0}; +static const unsigned char kat3501_entropyinpr1[] = { + 0x09, 0x4a, 0x19, 0x24, 0x3b, 0x65, 0x1c, 0xf3, 0xcb, 0xe9, 0x81, 0xbd, + 0x3a, 0x73, 0xa8, 0x68, 0xae, 0xf6, 0xa9, 0xef, 0x24, 0xf1, 0x87, 0x56, + 0x22, 0x77, 0x2a, 0x18, 0x77, 0x21, 0xc0, 0x5f, +}; +static const unsigned char kat3501_addinpr1[] = { + 0x49, 0x8f, 0xab, 0xf3, 0x09, 0x46, 0x1b, 0x64, 0xd8, 0x3e, 0x90, 0x6e, + 0x89, 0xf0, 0x3f, 0xff, 0x00, 0x40, 0x8f, 0x57, 0xb7, 0xd6, 0x4f, 0xff, + 0xc8, 0x8f, 0x5c, 0x50, 0xe5, 0x32, 0x5b, 0xc4, +}; +static const unsigned char kat3501_entropyinpr2[] = { + 0xb1, 0xf3, 0x09, 0x15, 0x36, 0xa2, 0xf9, 0x32, 0x0a, 0x8d, 0x21, 0x4e, + 0x9e, 0xe0, 0x04, 0xd1, 0xa5, 0x00, 0x8c, 0x92, 0x80, 0x0a, 0xcf, 0xf5, + 0xa3, 0x60, 0xe6, 0x2c, 0x86, 0x62, 0x76, 0x74, +}; +static const unsigned char kat3501_addinpr2[] = { + 0xbb, 0xf1, 0x46, 0xa1, 0x09, 0x5c, 0xcf, 0xf2, 0xb9, 0xd5, 0xd4, 0xb2, + 0x3b, 0x7f, 0xee, 0x42, 0x7d, 0x88, 0x0a, 0xdb, 0x2d, 0xbf, 0x2b, 0x4a, + 0xb3, 0x7b, 0x04, 0xfd, 0xe3, 0xab, 0x89, 0xcd, +}; +static const unsigned char kat3501_retbits[] = { + 0xb0, 0x1c, 0x18, 0x59, 0x27, 0x8d, 0x47, 0x04, 0x7a, 0xf0, 0x40, 0x31, + 0x73, 0xb4, 0x2c, 0xe7, 0x86, 0xb3, 0xa7, 0x2a, 0x29, 0xfe, 0x65, 0x20, + 0x84, 0x2b, 0x8a, 0x1e, 0x5d, 0xbb, 0xc6, 0x05, 0x04, 0x2b, 0x04, 0xd6, + 0xe6, 0xba, 0xed, 0x0a, 0x49, 0xe8, 0x27, 0xf4, 0x03, 0xfb, 0x98, 0xc4, + 0x5b, 0x5a, 0x71, 0xfa, 0x6d, 0x72, 0x12, 0xff, 0x63, 0xfe, 0x8e, 0x46, + 0xdf, 0xf6, 0x4c, 0xca, +}; +static const struct drbg_kat_pr_true kat3501_t = { + 5, kat3501_entropyin, kat3501_nonce, kat3501_persstr, + kat3501_entropyinpr1, kat3501_addinpr1, kat3501_entropyinpr2, + kat3501_addinpr2, kat3501_retbits +}; +static const struct drbg_kat kat3501 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3501_t +}; + +static const unsigned char kat3502_entropyin[] = { + 0xd8, 0x3f, 0x97, 0x95, 0x5d, 0x70, 0xe2, 0xb5, 0x6e, 0x55, 0xca, 0x23, + 0x1b, 0x56, 0x9e, 0xd2, 0x45, 0x8a, 0x9f, 0xd3, 0xbc, 0x69, 0x64, 0x4b, + 0x8a, 0x08, 0x93, 0xd2, 0x90, 0x0a, 0x84, 0xf1, +}; +static const unsigned char kat3502_nonce[] = { + 0x92, 0x5b, 0xaa, 0xa7, 0x1f, 0x4b, 0x50, 0x4b, 0xf8, 0x72, 0x59, 0x0e, + 0xd8, 0x80, 0x7f, 0x31, +}; +static const unsigned char kat3502_persstr[] = {0}; +static const unsigned char kat3502_entropyinpr1[] = { + 0x69, 0x9e, 0x2e, 0x39, 0xae, 0x7a, 0xc4, 0x34, 0x36, 0x79, 0x0f, 0xad, + 0x95, 0x84, 0x5f, 0x43, 0x44, 0xb8, 0xb3, 0xf6, 0x42, 0x1d, 0xa2, 0x67, + 0x82, 0xd6, 0xfd, 0x57, 0x42, 0xf5, 0x23, 0x00, +}; +static const unsigned char kat3502_addinpr1[] = { + 0x11, 0x4d, 0xc9, 0x9a, 0x93, 0x85, 0x54, 0x54, 0xf8, 0x28, 0x4d, 0x2b, + 0x54, 0x4b, 0xc8, 0x3d, 0x19, 0x13, 0xb1, 0x86, 0x98, 0x92, 0x24, 0x72, + 0x59, 0x35, 0xc7, 0x1a, 0xf7, 0x7e, 0x8a, 0x75, +}; +static const unsigned char kat3502_entropyinpr2[] = { + 0x06, 0x03, 0x0e, 0x98, 0xfe, 0x7b, 0xd5, 0x6d, 0xa3, 0x58, 0xdb, 0x6b, + 0x99, 0x35, 0x90, 0x6d, 0xe1, 0x68, 0x6f, 0xb7, 0x3b, 0x57, 0x00, 0xbf, + 0x10, 0xcd, 0x3c, 0x63, 0x57, 0x48, 0x25, 0x00, +}; +static const unsigned char kat3502_addinpr2[] = { + 0xdb, 0x02, 0xfe, 0x02, 0xf7, 0xf2, 0xb6, 0x88, 0x4e, 0x64, 0x00, 0xe3, + 0xea, 0xc5, 0xa7, 0x4f, 0x61, 0x4d, 0x66, 0xd1, 0x07, 0xec, 0x4b, 0x30, + 0x7a, 0x2c, 0x86, 0xe6, 0xaa, 0xee, 0x8f, 0xa4, +}; +static const unsigned char kat3502_retbits[] = { + 0xb1, 0x55, 0xbd, 0xab, 0xf3, 0x0f, 0xe2, 0x84, 0xbb, 0x94, 0x6a, 0xe7, + 0x94, 0xa7, 0xa6, 0xb0, 0xb7, 0x79, 0x6e, 0x05, 0xcb, 0xc5, 0xe5, 0xb8, + 0x22, 0xdb, 0xd1, 0xd1, 0xbf, 0x57, 0x60, 0x2f, 0x44, 0xb6, 0x14, 0x6e, + 0x52, 0x9d, 0x40, 0xc0, 0x1b, 0x32, 0xa1, 0x00, 0xca, 0x53, 0x5b, 0xbf, + 0x83, 0xe5, 0x1a, 0x4d, 0x6b, 0x5b, 0x43, 0xb3, 0xc1, 0xb0, 0x47, 0x37, + 0x6c, 0x7d, 0x00, 0x90, +}; +static const struct drbg_kat_pr_true kat3502_t = { + 6, kat3502_entropyin, kat3502_nonce, kat3502_persstr, + kat3502_entropyinpr1, kat3502_addinpr1, kat3502_entropyinpr2, + kat3502_addinpr2, kat3502_retbits +}; +static const struct drbg_kat kat3502 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3502_t +}; + +static const unsigned char kat3503_entropyin[] = { + 0x43, 0xe9, 0x55, 0xd2, 0xf0, 0x8f, 0x18, 0x24, 0x66, 0x5c, 0xfd, 0x02, + 0x86, 0x8e, 0xc9, 0xdb, 0x4c, 0x04, 0x16, 0xfa, 0xf7, 0xf3, 0x7b, 0xaf, + 0x09, 0x6e, 0x0e, 0x0c, 0xb3, 0x0d, 0x38, 0xda, +}; +static const unsigned char kat3503_nonce[] = { + 0x6c, 0x97, 0x9a, 0xa0, 0x9b, 0xb6, 0x49, 0xa5, 0x55, 0xb5, 0x2a, 0xea, + 0xb8, 0xc4, 0x77, 0x01, +}; +static const unsigned char kat3503_persstr[] = {0}; +static const unsigned char kat3503_entropyinpr1[] = { + 0x93, 0xa2, 0x23, 0x8b, 0x5d, 0x53, 0xd5, 0x1f, 0x0f, 0xbf, 0x8b, 0x00, + 0x0c, 0x8b, 0xd2, 0xa1, 0x7f, 0x1b, 0xed, 0xe3, 0x39, 0xe9, 0xdb, 0xb0, + 0x09, 0xd0, 0xfa, 0x20, 0x32, 0xea, 0x5e, 0x3f, +}; +static const unsigned char kat3503_addinpr1[] = { + 0xfe, 0x3f, 0x7c, 0x1b, 0x41, 0x6f, 0xcf, 0x86, 0x43, 0x4f, 0xc4, 0x37, + 0x79, 0x3c, 0xbd, 0x57, 0x25, 0xa3, 0x11, 0x59, 0x98, 0x65, 0x5d, 0xbd, + 0xf7, 0x6a, 0x26, 0x44, 0x2f, 0xb8, 0xd4, 0xd6, +}; +static const unsigned char kat3503_entropyinpr2[] = { + 0x43, 0x7a, 0xd5, 0x15, 0x84, 0xd1, 0xda, 0x7f, 0x8d, 0x19, 0x5f, 0x20, + 0xd0, 0x5d, 0xa5, 0x16, 0xcf, 0x4e, 0x7e, 0xd7, 0xa2, 0x68, 0x0e, 0x39, + 0x2e, 0xb7, 0xb5, 0x47, 0xb0, 0xb1, 0x9d, 0xcb, +}; +static const unsigned char kat3503_addinpr2[] = { + 0x58, 0x3f, 0x79, 0x96, 0x15, 0x61, 0x90, 0xe0, 0xeb, 0x27, 0x86, 0x4b, + 0xd4, 0xf2, 0x4d, 0x09, 0x98, 0x46, 0xc4, 0x7d, 0x97, 0x2e, 0xe2, 0x89, + 0x82, 0xd5, 0xfa, 0x04, 0x4f, 0x74, 0x9d, 0x6d, +}; +static const unsigned char kat3503_retbits[] = { + 0x99, 0xf7, 0xaa, 0x5b, 0x62, 0x07, 0x0b, 0xf1, 0xc4, 0x30, 0x2c, 0x20, + 0x7c, 0xe8, 0x63, 0x2d, 0x18, 0x10, 0x65, 0x0e, 0x1f, 0x3c, 0x79, 0x3e, + 0xa3, 0xd8, 0x1d, 0x4a, 0xa7, 0x13, 0x47, 0x12, 0x5e, 0x76, 0x2e, 0xd4, + 0x54, 0xb6, 0x23, 0xe7, 0x5d, 0xb4, 0x55, 0x89, 0x0e, 0x2d, 0xc8, 0x51, + 0x16, 0xfc, 0xff, 0xfa, 0x6c, 0x3a, 0x21, 0x60, 0xdb, 0x97, 0x65, 0x50, + 0xe2, 0x18, 0x22, 0xca, +}; +static const struct drbg_kat_pr_true kat3503_t = { + 7, kat3503_entropyin, kat3503_nonce, kat3503_persstr, + kat3503_entropyinpr1, kat3503_addinpr1, kat3503_entropyinpr2, + kat3503_addinpr2, kat3503_retbits +}; +static const struct drbg_kat kat3503 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3503_t +}; + +static const unsigned char kat3504_entropyin[] = { + 0x7c, 0xc0, 0x77, 0x3c, 0x7e, 0xba, 0xe7, 0x47, 0x76, 0xec, 0x58, 0x54, + 0x21, 0x38, 0xf4, 0x90, 0x7e, 0x20, 0xc0, 0x88, 0x92, 0x27, 0xfc, 0xba, + 0xef, 0xcc, 0x29, 0x71, 0xa8, 0xc3, 0xbf, 0x75, +}; +static const unsigned char kat3504_nonce[] = { + 0xdf, 0xc5, 0xb7, 0xac, 0xde, 0x00, 0xee, 0x0d, 0xb3, 0x48, 0x4d, 0x27, + 0xab, 0xd1, 0x8d, 0x1d, +}; +static const unsigned char kat3504_persstr[] = {0}; +static const unsigned char kat3504_entropyinpr1[] = { + 0xe9, 0x2d, 0xa5, 0x38, 0x1b, 0x16, 0x38, 0x74, 0x74, 0xf7, 0xb2, 0xd2, + 0xb5, 0x76, 0x7d, 0xde, 0x76, 0xa8, 0x36, 0xb1, 0x0f, 0xe5, 0x4c, 0x29, + 0x78, 0x90, 0xe6, 0x7b, 0xe9, 0x2e, 0x71, 0x7f, +}; +static const unsigned char kat3504_addinpr1[] = { + 0xad, 0x78, 0xd1, 0xac, 0xd8, 0x75, 0x83, 0x84, 0xee, 0xf4, 0xb7, 0xad, + 0x48, 0xaa, 0x54, 0x68, 0xd5, 0xf9, 0x77, 0x7f, 0x4f, 0x4f, 0xaf, 0x3b, + 0x44, 0x83, 0xaa, 0x67, 0x8e, 0x7a, 0xfa, 0x83, +}; +static const unsigned char kat3504_entropyinpr2[] = { + 0x2a, 0x0c, 0x8b, 0xdd, 0x54, 0x31, 0x96, 0xdf, 0x25, 0xde, 0x9d, 0xe6, + 0x29, 0x91, 0xfb, 0xc7, 0xfa, 0x67, 0x52, 0x3a, 0x2b, 0x97, 0x39, 0xd7, + 0x60, 0xbc, 0xbd, 0x6d, 0xfc, 0xdb, 0xbd, 0x4d, +}; +static const unsigned char kat3504_addinpr2[] = { + 0xf5, 0x73, 0xab, 0x82, 0xe7, 0xbf, 0x38, 0xfe, 0xe9, 0x7b, 0x06, 0x9d, + 0x83, 0x34, 0x98, 0xcc, 0x29, 0x92, 0xb0, 0xaa, 0x16, 0xd6, 0x2a, 0x6a, + 0xd1, 0xf4, 0x93, 0x31, 0xbc, 0xbb, 0x68, 0x52, +}; +static const unsigned char kat3504_retbits[] = { + 0xac, 0x73, 0x54, 0xfb, 0x97, 0xe0, 0x9e, 0x2f, 0x5d, 0x29, 0x89, 0xe5, + 0x14, 0xf6, 0xe3, 0xcb, 0x83, 0xfc, 0xef, 0x4d, 0x76, 0x50, 0x2c, 0x9f, + 0xaa, 0x85, 0x19, 0x28, 0x88, 0x74, 0x49, 0xdb, 0x45, 0xf9, 0x01, 0x88, + 0x33, 0x24, 0x47, 0x21, 0x43, 0xd5, 0x71, 0xbb, 0xd4, 0xea, 0x72, 0xa7, + 0x1f, 0xc7, 0x01, 0x35, 0xde, 0x63, 0xe6, 0x81, 0x5a, 0x35, 0x36, 0x18, + 0x9b, 0x9f, 0x92, 0x3a, +}; +static const struct drbg_kat_pr_true kat3504_t = { + 8, kat3504_entropyin, kat3504_nonce, kat3504_persstr, + kat3504_entropyinpr1, kat3504_addinpr1, kat3504_entropyinpr2, + kat3504_addinpr2, kat3504_retbits +}; +static const struct drbg_kat kat3504 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3504_t +}; + +static const unsigned char kat3505_entropyin[] = { + 0x44, 0x04, 0x48, 0x14, 0x99, 0x19, 0x90, 0xde, 0xbc, 0x84, 0x27, 0x63, + 0xe2, 0x92, 0xce, 0x36, 0x77, 0x95, 0x1c, 0x50, 0x92, 0x85, 0xf0, 0x9e, + 0xfe, 0x03, 0x99, 0xcf, 0x1b, 0x35, 0xa7, 0xd5, +}; +static const unsigned char kat3505_nonce[] = { + 0x5b, 0xfa, 0x9c, 0x26, 0x05, 0xbe, 0x64, 0x69, 0xc0, 0x5e, 0x30, 0xc7, + 0xa4, 0x91, 0xdc, 0xd3, +}; +static const unsigned char kat3505_persstr[] = {0}; +static const unsigned char kat3505_entropyinpr1[] = { + 0x04, 0x26, 0xc1, 0x42, 0xe2, 0xd5, 0x99, 0x1f, 0xab, 0x81, 0x1d, 0x11, + 0xcf, 0xcc, 0xe2, 0xa3, 0x4b, 0xf4, 0xad, 0x86, 0x81, 0xb7, 0x09, 0x53, + 0xc6, 0x77, 0x47, 0x64, 0xe6, 0xf0, 0x9d, 0xeb, +}; +static const unsigned char kat3505_addinpr1[] = { + 0xa1, 0xf7, 0xff, 0x3d, 0x0a, 0xf6, 0xe3, 0x04, 0x37, 0x2c, 0xa3, 0xdf, + 0xb8, 0x97, 0x19, 0x45, 0x9c, 0xc4, 0xd0, 0x3a, 0x25, 0x79, 0x43, 0x9d, + 0xf3, 0x87, 0xd3, 0xc8, 0xe7, 0xa1, 0xfc, 0x6b, +}; +static const unsigned char kat3505_entropyinpr2[] = { + 0xf4, 0xee, 0x6f, 0x0e, 0xb5, 0x7d, 0xd9, 0xf2, 0xa6, 0x8d, 0x7f, 0xea, + 0x38, 0xf3, 0x9f, 0xe5, 0x36, 0x58, 0x0e, 0x09, 0xe2, 0x56, 0x5a, 0x1d, + 0xc9, 0x72, 0xd3, 0x8b, 0x9d, 0xf1, 0xa5, 0xa9, +}; +static const unsigned char kat3505_addinpr2[] = { + 0x95, 0xf4, 0x6b, 0x9d, 0x49, 0xc5, 0xa6, 0x5c, 0xd9, 0x91, 0xb6, 0xb7, + 0xbe, 0xde, 0xcc, 0x51, 0x5c, 0x73, 0x8a, 0x1a, 0x4f, 0x07, 0x89, 0x1b, + 0x18, 0x2b, 0x06, 0x93, 0xd7, 0x8d, 0x21, 0x96, +}; +static const unsigned char kat3505_retbits[] = { + 0x30, 0xc2, 0x73, 0x78, 0x12, 0xc4, 0xfc, 0xbe, 0x24, 0x5c, 0xa7, 0x29, + 0x2e, 0x44, 0xbe, 0xf1, 0x77, 0xf6, 0x04, 0x83, 0x20, 0xb9, 0xe1, 0x1f, + 0xae, 0xcb, 0x1d, 0xdf, 0xdb, 0x6d, 0x6d, 0xeb, 0xa0, 0x94, 0xf3, 0xdb, + 0x49, 0x7d, 0xed, 0xef, 0xa1, 0xa9, 0x3f, 0x41, 0xc9, 0xab, 0xa7, 0x10, + 0x9f, 0x75, 0xcd, 0x7b, 0x26, 0xac, 0x21, 0xdf, 0xe2, 0x74, 0xec, 0xb7, + 0xb9, 0x7f, 0x9a, 0x7c, +}; +static const struct drbg_kat_pr_true kat3505_t = { + 9, kat3505_entropyin, kat3505_nonce, kat3505_persstr, + kat3505_entropyinpr1, kat3505_addinpr1, kat3505_entropyinpr2, + kat3505_addinpr2, kat3505_retbits +}; +static const struct drbg_kat kat3505 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3505_t +}; + +static const unsigned char kat3506_entropyin[] = { + 0x26, 0x54, 0xb8, 0x39, 0xa1, 0xec, 0xdf, 0x06, 0x10, 0xaa, 0x87, 0x65, + 0x0b, 0xe8, 0x10, 0x5a, 0x3c, 0xdc, 0xdd, 0xe0, 0x4d, 0x77, 0x39, 0x6e, + 0x77, 0xb3, 0xd5, 0x8e, 0xce, 0x7c, 0x91, 0x77, +}; +static const unsigned char kat3506_nonce[] = { + 0xc0, 0x02, 0xf7, 0x46, 0xdb, 0xae, 0xd3, 0xae, 0x5b, 0xb6, 0xc0, 0xad, + 0xc2, 0x34, 0x7d, 0x49, +}; +static const unsigned char kat3506_persstr[] = {0}; +static const unsigned char kat3506_entropyinpr1[] = { + 0x2a, 0x16, 0xa5, 0xf0, 0x17, 0x60, 0x53, 0x13, 0x93, 0x39, 0x8a, 0x9c, + 0xda, 0x89, 0xbc, 0xe8, 0x2a, 0x0a, 0x76, 0x1f, 0xb3, 0x20, 0x3f, 0xd1, + 0x07, 0x77, 0xd3, 0x95, 0x45, 0x83, 0x0a, 0xbd, +}; +static const unsigned char kat3506_addinpr1[] = { + 0x0a, 0x8f, 0x6f, 0x3f, 0x24, 0x92, 0xca, 0x87, 0x83, 0xef, 0x9e, 0x49, + 0xb6, 0x0a, 0xbd, 0xb5, 0x47, 0x9e, 0xe4, 0x45, 0x55, 0x36, 0xe6, 0x5b, + 0x18, 0x99, 0xd7, 0x50, 0x25, 0xb2, 0x2e, 0x47, +}; +static const unsigned char kat3506_entropyinpr2[] = { + 0x84, 0x28, 0xff, 0x87, 0x82, 0x88, 0x83, 0x0f, 0x9f, 0x4d, 0xf3, 0xb9, + 0xa4, 0x24, 0x19, 0x1c, 0xcd, 0xd6, 0x18, 0xc8, 0x73, 0xb7, 0x1e, 0x8a, + 0xa6, 0x57, 0xd1, 0x30, 0xd4, 0x1b, 0x46, 0x8b, +}; +static const unsigned char kat3506_addinpr2[] = { + 0x75, 0xd3, 0x55, 0x2a, 0xe3, 0x5d, 0x1d, 0xa4, 0xda, 0x77, 0xb7, 0xd7, + 0x40, 0x3c, 0x0b, 0x30, 0xc1, 0x9e, 0x13, 0xaa, 0x25, 0xe2, 0x59, 0xdc, + 0x04, 0x4b, 0x3f, 0x1d, 0x1b, 0xe7, 0x68, 0x3b, +}; +static const unsigned char kat3506_retbits[] = { + 0x23, 0x28, 0x0c, 0x43, 0x29, 0x52, 0x4e, 0xe7, 0x7d, 0x6a, 0xe8, 0xfa, + 0x6e, 0x37, 0x7f, 0xff, 0x35, 0x0d, 0xf4, 0xf5, 0xf5, 0xb7, 0xa0, 0x17, + 0xd9, 0xbe, 0x3d, 0x24, 0x6e, 0x6b, 0x37, 0x02, 0x6c, 0xdd, 0xa2, 0x3e, + 0x8e, 0x51, 0x7c, 0x95, 0x4d, 0xa6, 0x92, 0x8b, 0x94, 0x7a, 0x21, 0x28, + 0x0d, 0xaa, 0x9e, 0x35, 0xf6, 0x9f, 0x41, 0x68, 0x6b, 0xe5, 0x66, 0x26, + 0x76, 0x6c, 0x6f, 0x0d, +}; +static const struct drbg_kat_pr_true kat3506_t = { + 10, kat3506_entropyin, kat3506_nonce, kat3506_persstr, + kat3506_entropyinpr1, kat3506_addinpr1, kat3506_entropyinpr2, + kat3506_addinpr2, kat3506_retbits +}; +static const struct drbg_kat kat3506 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3506_t +}; + +static const unsigned char kat3507_entropyin[] = { + 0x49, 0xe5, 0x48, 0x72, 0xbc, 0x61, 0xde, 0x4e, 0xc9, 0x4d, 0xff, 0xf9, + 0xd6, 0xfe, 0x51, 0x07, 0xe2, 0x6b, 0xc3, 0x80, 0xf6, 0x8b, 0x63, 0xbb, + 0x2a, 0x86, 0x5b, 0x99, 0xc3, 0x2a, 0x18, 0x23, +}; +static const unsigned char kat3507_nonce[] = { + 0x61, 0x63, 0xb0, 0xa2, 0x4c, 0xa5, 0xfc, 0xb3, 0x6c, 0xcc, 0xd6, 0xae, + 0xfc, 0xf2, 0x03, 0x85, +}; +static const unsigned char kat3507_persstr[] = {0}; +static const unsigned char kat3507_entropyinpr1[] = { + 0xc8, 0x1b, 0x37, 0x3f, 0x7e, 0x2f, 0x92, 0x98, 0xf3, 0x4f, 0xce, 0xf2, + 0x8c, 0x9d, 0xd6, 0x21, 0x08, 0xa5, 0x9c, 0xad, 0x6d, 0xbb, 0x4b, 0x3f, + 0x99, 0x3c, 0xe0, 0x87, 0x52, 0xc1, 0xf1, 0x7a, +}; +static const unsigned char kat3507_addinpr1[] = { + 0x38, 0xde, 0x6a, 0x0a, 0xe5, 0x89, 0x34, 0x67, 0x6b, 0x3b, 0xeb, 0xd3, + 0x35, 0xcf, 0x8a, 0xec, 0x6c, 0x25, 0xb9, 0xce, 0x70, 0x92, 0x72, 0xaf, + 0xb7, 0x7f, 0xd2, 0x92, 0x57, 0x98, 0x60, 0xb2, +}; +static const unsigned char kat3507_entropyinpr2[] = { + 0x72, 0xcf, 0x78, 0xc3, 0xe4, 0xce, 0x36, 0x2e, 0xe7, 0x1c, 0x5d, 0xbb, + 0xba, 0xfe, 0x1a, 0x6b, 0xdb, 0x80, 0xdb, 0x2f, 0x40, 0x3d, 0x28, 0xee, + 0x65, 0x3a, 0x64, 0xea, 0x09, 0x2c, 0xdd, 0xf3, +}; +static const unsigned char kat3507_addinpr2[] = { + 0xc2, 0xb7, 0x79, 0x4a, 0xee, 0xdd, 0xe6, 0x71, 0xc5, 0x3d, 0x8c, 0x39, + 0x08, 0xdb, 0x48, 0xc3, 0x07, 0x16, 0x7c, 0x0e, 0x41, 0xfa, 0x10, 0x7d, + 0xe8, 0x21, 0x7b, 0x66, 0x04, 0xef, 0x10, 0x44, +}; +static const unsigned char kat3507_retbits[] = { + 0x9a, 0xaf, 0x64, 0xed, 0x5d, 0x02, 0xa6, 0x5f, 0x95, 0x3c, 0x17, 0x26, + 0x87, 0x5f, 0x5a, 0x0e, 0x33, 0x91, 0xf9, 0x57, 0xeb, 0x44, 0x31, 0xe9, + 0x19, 0x88, 0x6c, 0xb5, 0xbd, 0x9f, 0x3e, 0x41, 0xaa, 0xc8, 0x2c, 0x7f, + 0x3c, 0x01, 0x4d, 0x40, 0x44, 0x35, 0x7d, 0x95, 0xc8, 0xdb, 0xc2, 0x3a, + 0xcb, 0xa0, 0x19, 0x5a, 0x9a, 0x97, 0xf4, 0x64, 0x1e, 0x7a, 0xf2, 0x4f, + 0x98, 0xb9, 0x8a, 0x3d, +}; +static const struct drbg_kat_pr_true kat3507_t = { + 11, kat3507_entropyin, kat3507_nonce, kat3507_persstr, + kat3507_entropyinpr1, kat3507_addinpr1, kat3507_entropyinpr2, + kat3507_addinpr2, kat3507_retbits +}; +static const struct drbg_kat kat3507 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3507_t +}; + +static const unsigned char kat3508_entropyin[] = { + 0x43, 0x30, 0x59, 0x31, 0x6b, 0xb9, 0x12, 0x75, 0x00, 0x42, 0x78, 0x99, + 0x35, 0x69, 0x88, 0xda, 0xea, 0xc1, 0xc4, 0x2e, 0x82, 0xdc, 0xff, 0x63, + 0xcf, 0xf0, 0x0c, 0x1f, 0x7e, 0x7b, 0xef, 0xd4, +}; +static const unsigned char kat3508_nonce[] = { + 0xe8, 0xf3, 0xbd, 0x99, 0x41, 0x81, 0x6a, 0x87, 0x20, 0x9f, 0x64, 0x66, + 0xcc, 0xc3, 0x3e, 0x58, +}; +static const unsigned char kat3508_persstr[] = {0}; +static const unsigned char kat3508_entropyinpr1[] = { + 0xcc, 0x4d, 0x1a, 0x1d, 0x78, 0xb3, 0x38, 0x8e, 0xbf, 0x9f, 0x63, 0xb5, + 0xb1, 0x02, 0x02, 0x25, 0xe9, 0xf4, 0x0f, 0x59, 0xe1, 0x56, 0xf3, 0xab, + 0xcb, 0xd2, 0x6a, 0xb8, 0x8b, 0xf9, 0x2b, 0x0d, +}; +static const unsigned char kat3508_addinpr1[] = { + 0xd3, 0x18, 0xd7, 0xc9, 0x14, 0xee, 0xce, 0x67, 0xb5, 0x1d, 0x93, 0x88, + 0x04, 0xab, 0x9b, 0x80, 0x11, 0x2d, 0xbf, 0xa9, 0xf2, 0xad, 0x1b, 0xb6, + 0x1b, 0xaf, 0x7d, 0x72, 0xfc, 0x91, 0xb0, 0xc0, +}; +static const unsigned char kat3508_entropyinpr2[] = { + 0x5f, 0x0c, 0xa0, 0xd5, 0x92, 0x06, 0x23, 0x64, 0xbd, 0x38, 0x1b, 0xb0, + 0x29, 0xbd, 0xf1, 0xab, 0xba, 0x71, 0x2c, 0xd0, 0xe7, 0xc7, 0xb2, 0x7c, + 0x6c, 0xf7, 0xff, 0x2f, 0xc6, 0x34, 0x1c, 0x22, +}; +static const unsigned char kat3508_addinpr2[] = { + 0xd8, 0x2d, 0x08, 0x11, 0x6e, 0xd3, 0x0e, 0x92, 0x51, 0x6b, 0xb2, 0x16, + 0x04, 0x5f, 0xc1, 0x07, 0x9c, 0xb4, 0x2a, 0xb1, 0x01, 0xd7, 0xac, 0x46, + 0xab, 0x41, 0xb0, 0x19, 0xe2, 0x68, 0xbb, 0xbb, +}; +static const unsigned char kat3508_retbits[] = { + 0xe1, 0xbf, 0x5e, 0x50, 0x24, 0x56, 0x29, 0x48, 0x04, 0x49, 0x2d, 0x5d, + 0xf4, 0x94, 0x92, 0x11, 0x15, 0x94, 0x6b, 0x33, 0x16, 0xe7, 0xf8, 0x00, + 0x6e, 0x84, 0xd3, 0xfc, 0x1d, 0xd9, 0x12, 0x26, 0xd8, 0x2b, 0x47, 0x71, + 0x07, 0x14, 0x08, 0xba, 0x8b, 0xa9, 0xcf, 0xff, 0x19, 0x2c, 0xc6, 0x27, + 0x72, 0x36, 0x8e, 0x37, 0x4a, 0xfd, 0x2d, 0xa6, 0x6f, 0xf6, 0xa4, 0x32, + 0x17, 0xdd, 0x13, 0xf4, +}; +static const struct drbg_kat_pr_true kat3508_t = { + 12, kat3508_entropyin, kat3508_nonce, kat3508_persstr, + kat3508_entropyinpr1, kat3508_addinpr1, kat3508_entropyinpr2, + kat3508_addinpr2, kat3508_retbits +}; +static const struct drbg_kat kat3508 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3508_t +}; + +static const unsigned char kat3509_entropyin[] = { + 0x0c, 0xc0, 0x43, 0x35, 0x34, 0x20, 0x5f, 0xef, 0x1d, 0x5b, 0x3a, 0x4f, + 0x54, 0xbe, 0x5f, 0xe8, 0x08, 0x38, 0x98, 0xb8, 0x15, 0xeb, 0x43, 0x77, + 0xa1, 0x20, 0x82, 0xee, 0x12, 0x93, 0x87, 0x22, +}; +static const unsigned char kat3509_nonce[] = { + 0xd7, 0xb5, 0x78, 0xf0, 0x32, 0x2d, 0x93, 0xc1, 0x15, 0x2d, 0x3a, 0x13, + 0xcd, 0xa7, 0xbb, 0xbe, +}; +static const unsigned char kat3509_persstr[] = {0}; +static const unsigned char kat3509_entropyinpr1[] = { + 0x66, 0x85, 0x31, 0x7b, 0x0f, 0x9a, 0x41, 0xc5, 0x8d, 0x30, 0x80, 0x7c, + 0x0b, 0x6a, 0xdd, 0x9f, 0x7f, 0x1a, 0xda, 0xb6, 0xd6, 0x1f, 0x43, 0x21, + 0x55, 0x54, 0xd0, 0x44, 0x22, 0x0a, 0x80, 0xb1, +}; +static const unsigned char kat3509_addinpr1[] = { + 0xc7, 0xa9, 0x05, 0x1f, 0xd8, 0x35, 0x55, 0xce, 0xa8, 0x4d, 0x08, 0xa6, + 0xb6, 0x3d, 0xdd, 0x2c, 0xb1, 0x18, 0x51, 0xbf, 0x73, 0x6b, 0xcb, 0x19, + 0x81, 0xca, 0xc1, 0x20, 0x7f, 0xe3, 0x92, 0xf5, +}; +static const unsigned char kat3509_entropyinpr2[] = { + 0xff, 0xa2, 0xa8, 0x0d, 0xcb, 0x6f, 0xe4, 0x51, 0x0f, 0x47, 0xa2, 0xac, + 0xdc, 0x60, 0x76, 0x65, 0x3b, 0xb6, 0x52, 0xf8, 0x4b, 0xd1, 0xc3, 0x90, + 0x97, 0x9a, 0xb9, 0x59, 0xd0, 0x55, 0x84, 0x5d, +}; +static const unsigned char kat3509_addinpr2[] = { + 0x22, 0xe0, 0xe4, 0xaa, 0x94, 0x51, 0xf9, 0x5b, 0xcd, 0x19, 0x27, 0x06, + 0xcc, 0xc7, 0x0a, 0x1d, 0x71, 0x02, 0x9f, 0x49, 0x4e, 0x46, 0xcd, 0x5b, + 0xbe, 0x39, 0x60, 0x9c, 0x17, 0x9d, 0xe9, 0x60, +}; +static const unsigned char kat3509_retbits[] = { + 0x53, 0x18, 0xc0, 0x7a, 0xfe, 0x58, 0xbf, 0x84, 0x9c, 0x3d, 0xe4, 0xe1, + 0xfa, 0x14, 0x57, 0xc7, 0x27, 0x2a, 0x1e, 0xe9, 0x43, 0x05, 0xc5, 0xcd, + 0x9f, 0x82, 0xf1, 0x69, 0x1a, 0xe9, 0xc6, 0xd3, 0x52, 0x61, 0xbb, 0xbb, + 0xd5, 0x29, 0x86, 0x6a, 0x65, 0xef, 0xdd, 0x58, 0x95, 0x79, 0x90, 0x38, + 0x0a, 0x73, 0xfd, 0x77, 0x8b, 0xbc, 0x19, 0x0e, 0x23, 0xc1, 0xc8, 0x91, + 0x27, 0x1c, 0xd6, 0xda, +}; +static const struct drbg_kat_pr_true kat3509_t = { + 13, kat3509_entropyin, kat3509_nonce, kat3509_persstr, + kat3509_entropyinpr1, kat3509_addinpr1, kat3509_entropyinpr2, + kat3509_addinpr2, kat3509_retbits +}; +static const struct drbg_kat kat3509 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3509_t +}; + +static const unsigned char kat3510_entropyin[] = { + 0xec, 0x13, 0x4d, 0x60, 0xe8, 0xa1, 0x5f, 0xfa, 0xca, 0xd5, 0x53, 0x3e, + 0xc1, 0x29, 0x04, 0x60, 0x23, 0xea, 0xf6, 0x61, 0x1a, 0x0b, 0x0c, 0xe5, + 0x40, 0xb3, 0xe1, 0xd2, 0x54, 0x5b, 0xea, 0x39, +}; +static const unsigned char kat3510_nonce[] = { + 0xf9, 0xbc, 0x86, 0x24, 0xd7, 0xe7, 0x3c, 0xb7, 0xef, 0x3c, 0x4a, 0x9b, + 0x33, 0x9e, 0x57, 0x08, +}; +static const unsigned char kat3510_persstr[] = {0}; +static const unsigned char kat3510_entropyinpr1[] = { + 0x39, 0x52, 0x19, 0xc4, 0x01, 0xf9, 0x54, 0xa4, 0xcd, 0x04, 0xaf, 0x85, + 0x2e, 0x08, 0xc2, 0xab, 0xd8, 0x15, 0x2e, 0xe5, 0xf8, 0xc9, 0x15, 0xe1, + 0x0a, 0x5f, 0x2e, 0x22, 0xb9, 0xff, 0x1f, 0x92, +}; +static const unsigned char kat3510_addinpr1[] = { + 0x39, 0x43, 0x3c, 0xe8, 0x53, 0xe8, 0xdd, 0xcd, 0x14, 0x78, 0x5f, 0xf2, + 0x26, 0x79, 0xe0, 0xe5, 0x6f, 0xf9, 0x53, 0xb7, 0xf4, 0x67, 0x07, 0xd0, + 0x15, 0x88, 0x05, 0xe3, 0xcd, 0x87, 0xd3, 0xf7, +}; +static const unsigned char kat3510_entropyinpr2[] = { + 0x6d, 0x30, 0x35, 0xdf, 0xaf, 0xd8, 0x55, 0x4e, 0xc9, 0xa6, 0x29, 0xf3, + 0x86, 0x1c, 0xf2, 0x2b, 0x6b, 0x49, 0xae, 0x32, 0x63, 0x78, 0xf0, 0xf7, + 0x1a, 0xb3, 0xc0, 0x04, 0xe7, 0xbc, 0x89, 0x52, +}; +static const unsigned char kat3510_addinpr2[] = { + 0xa4, 0xc4, 0x4e, 0x43, 0x7d, 0x0d, 0xfb, 0xb3, 0x09, 0x7f, 0x26, 0x68, + 0xc8, 0x73, 0x52, 0xff, 0xa0, 0x2e, 0xf4, 0x5a, 0xae, 0x12, 0x34, 0x80, + 0x08, 0x61, 0x2f, 0x33, 0x7d, 0x8e, 0xda, 0xe2, +}; +static const unsigned char kat3510_retbits[] = { + 0x69, 0x24, 0xb5, 0x58, 0x78, 0x13, 0x44, 0xb2, 0xb8, 0x37, 0xea, 0x46, + 0x76, 0x71, 0xa0, 0x7f, 0xfa, 0xe3, 0xb4, 0x23, 0x2d, 0x01, 0xd0, 0x4d, + 0x34, 0x7b, 0x6a, 0xa2, 0xfe, 0x60, 0xf6, 0xfa, 0x83, 0xd9, 0x63, 0x4e, + 0xe0, 0xa0, 0x94, 0x65, 0x9c, 0x70, 0x9b, 0x10, 0x02, 0x74, 0x9a, 0x67, + 0x27, 0xde, 0xce, 0x8a, 0x2c, 0x1a, 0x49, 0xd4, 0x3f, 0x19, 0xc2, 0x35, + 0x66, 0x8a, 0x64, 0x29, +}; +static const struct drbg_kat_pr_true kat3510_t = { + 14, kat3510_entropyin, kat3510_nonce, kat3510_persstr, + kat3510_entropyinpr1, kat3510_addinpr1, kat3510_entropyinpr2, + kat3510_addinpr2, kat3510_retbits +}; +static const struct drbg_kat kat3510 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3510_t +}; + +static const unsigned char kat3511_entropyin[] = { + 0x72, 0x94, 0x93, 0x0b, 0x69, 0xbe, 0x88, 0xe5, 0x78, 0xba, 0x26, 0xc6, + 0x0e, 0x25, 0xd7, 0x46, 0x22, 0xbf, 0x58, 0x46, 0x7d, 0xff, 0x7b, 0xc7, + 0x54, 0x7d, 0x4f, 0x3d, 0x62, 0x59, 0x29, 0x89, +}; +static const unsigned char kat3511_nonce[] = { + 0x3d, 0x16, 0xc6, 0x68, 0x2a, 0x9f, 0xcd, 0xea, 0xc6, 0x67, 0xd8, 0xb2, + 0x0b, 0x95, 0x42, 0x99, +}; +static const unsigned char kat3511_persstr[] = { + 0xc8, 0x61, 0x20, 0x45, 0x07, 0x6c, 0x47, 0x3f, 0x45, 0x79, 0x3f, 0x47, + 0xa5, 0xac, 0x6f, 0x9c, 0x31, 0xcc, 0xe9, 0xc2, 0x57, 0x0d, 0x64, 0x53, + 0xa9, 0x6e, 0x45, 0x9f, 0xb5, 0xb6, 0xf1, 0x4b, +}; +static const unsigned char kat3511_entropyinpr1[] = { + 0x7a, 0xce, 0xff, 0x8b, 0x42, 0x1c, 0xc1, 0xb8, 0xb5, 0x21, 0x5d, 0x9f, + 0x7f, 0x6e, 0x8f, 0xf7, 0x05, 0x25, 0xc1, 0xc3, 0x30, 0x5f, 0xe1, 0x84, + 0x71, 0xac, 0xb0, 0xfd, 0xb6, 0xc7, 0x62, 0x78, +}; +static const unsigned char kat3511_addinpr1[] = {0}; +static const unsigned char kat3511_entropyinpr2[] = { + 0x3e, 0xf0, 0x31, 0x6b, 0xc2, 0xfc, 0xe7, 0xde, 0xb4, 0x70, 0x28, 0xfa, + 0x13, 0x9f, 0x39, 0x7f, 0xf4, 0x92, 0xda, 0x25, 0x6f, 0x20, 0xd8, 0x91, + 0xde, 0x59, 0xe3, 0x4e, 0x2a, 0xb8, 0x22, 0x3d, +}; +static const unsigned char kat3511_addinpr2[] = {0}; +static const unsigned char kat3511_retbits[] = { + 0x98, 0xb3, 0x7b, 0x5b, 0xc1, 0xf6, 0x73, 0xf3, 0x55, 0xec, 0x12, 0x72, + 0x94, 0x59, 0x22, 0xb0, 0x88, 0xea, 0x57, 0x79, 0x20, 0x89, 0x06, 0x1f, + 0x97, 0xe7, 0x36, 0xc3, 0xc2, 0xa3, 0xac, 0xe0, 0x4d, 0x72, 0x55, 0xc1, + 0xf1, 0xad, 0x3a, 0x94, 0x78, 0x6c, 0x5d, 0x8c, 0x9a, 0x10, 0xc0, 0xf8, + 0xd7, 0x4c, 0x18, 0x8a, 0x35, 0x44, 0xe9, 0x7f, 0x06, 0xe4, 0x0a, 0x96, + 0xa5, 0xa9, 0x4a, 0x12, +}; +static const struct drbg_kat_pr_true kat3511_t = { + 0, kat3511_entropyin, kat3511_nonce, kat3511_persstr, + kat3511_entropyinpr1, kat3511_addinpr1, kat3511_entropyinpr2, + kat3511_addinpr2, kat3511_retbits +}; +static const struct drbg_kat kat3511 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3511_t +}; + +static const unsigned char kat3512_entropyin[] = { + 0xd9, 0x61, 0x2d, 0x03, 0x38, 0xe6, 0xb5, 0x42, 0xb6, 0x85, 0x9c, 0x1c, + 0x67, 0xe0, 0xee, 0x13, 0x65, 0x92, 0x36, 0x47, 0x9e, 0x57, 0xe3, 0x0c, + 0xd5, 0xec, 0x15, 0x59, 0x64, 0x51, 0x69, 0x46, +}; +static const unsigned char kat3512_nonce[] = { + 0xf1, 0xaa, 0xc2, 0x95, 0xd4, 0xc1, 0xd8, 0xe5, 0xe0, 0xd3, 0xcf, 0xfe, + 0xd7, 0xd8, 0x17, 0xc4, +}; +static const unsigned char kat3512_persstr[] = { + 0x75, 0x3f, 0x6c, 0xcf, 0x97, 0xb0, 0x22, 0x50, 0x64, 0x15, 0x65, 0x88, + 0x1f, 0x86, 0xb1, 0xff, 0xde, 0x54, 0x5e, 0x9c, 0x19, 0x25, 0x32, 0x98, + 0x31, 0x9c, 0x0e, 0x2a, 0xa1, 0x5a, 0xa3, 0xa3, +}; +static const unsigned char kat3512_entropyinpr1[] = { + 0xc7, 0x7b, 0xe5, 0x59, 0xf2, 0x7e, 0xfb, 0x38, 0x49, 0x3f, 0x88, 0x3b, + 0x87, 0xc7, 0xb6, 0xd1, 0x8f, 0x17, 0x2e, 0x67, 0x83, 0x87, 0xca, 0xec, + 0xf6, 0x04, 0xfa, 0x02, 0xda, 0xe0, 0xca, 0xe4, +}; +static const unsigned char kat3512_addinpr1[] = {0}; +static const unsigned char kat3512_entropyinpr2[] = { + 0x8d, 0x83, 0x7e, 0x74, 0xc5, 0x11, 0xc2, 0x7a, 0x55, 0x60, 0xd2, 0x80, + 0x66, 0x1f, 0x98, 0x63, 0x63, 0x15, 0xc2, 0xb8, 0x55, 0x00, 0x04, 0x54, + 0xf6, 0xb7, 0xd9, 0xca, 0xa1, 0x7c, 0x4c, 0x54, +}; +static const unsigned char kat3512_addinpr2[] = {0}; +static const unsigned char kat3512_retbits[] = { + 0xdd, 0xa9, 0x9d, 0xaa, 0x33, 0x67, 0x76, 0x39, 0x3d, 0xdf, 0xe9, 0x85, + 0x5d, 0xb2, 0x13, 0x4f, 0xf5, 0x3a, 0x70, 0x9f, 0xce, 0x9c, 0x22, 0x9b, + 0xe7, 0x68, 0xdb, 0x0c, 0x15, 0xce, 0x17, 0x6f, 0xbc, 0x6c, 0x9c, 0x7b, + 0xe0, 0xd9, 0xe0, 0xbf, 0x36, 0x2b, 0xef, 0x33, 0x9e, 0x12, 0x5d, 0x2f, + 0x55, 0xf1, 0x15, 0xcd, 0x64, 0x17, 0xe9, 0x94, 0x04, 0x60, 0x21, 0x32, + 0xcb, 0x22, 0xa2, 0x6a, +}; +static const struct drbg_kat_pr_true kat3512_t = { + 1, kat3512_entropyin, kat3512_nonce, kat3512_persstr, + kat3512_entropyinpr1, kat3512_addinpr1, kat3512_entropyinpr2, + kat3512_addinpr2, kat3512_retbits +}; +static const struct drbg_kat kat3512 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3512_t +}; + +static const unsigned char kat3513_entropyin[] = { + 0xf0, 0x1a, 0x75, 0x07, 0xa7, 0x1f, 0x34, 0xb4, 0xf8, 0x58, 0x99, 0xb3, + 0x1a, 0xcb, 0xcd, 0x62, 0x11, 0xa0, 0xe9, 0xc9, 0x41, 0x7c, 0xa5, 0xca, + 0xac, 0x0e, 0x18, 0xbc, 0x9f, 0x65, 0x5c, 0x0c, +}; +static const unsigned char kat3513_nonce[] = { + 0xa6, 0x0a, 0x10, 0x8c, 0xe5, 0xe2, 0x3e, 0x0a, 0x2e, 0xbe, 0xf1, 0xb6, + 0x7f, 0xcc, 0xbe, 0x54, +}; +static const unsigned char kat3513_persstr[] = { + 0x53, 0x36, 0xa4, 0xb9, 0xdd, 0x7e, 0x2d, 0xa6, 0x43, 0x9a, 0xf0, 0x08, + 0x61, 0x1a, 0x1c, 0x55, 0xcd, 0x12, 0x60, 0x40, 0x77, 0x6b, 0x16, 0xd5, + 0x61, 0xae, 0xf0, 0x25, 0xf1, 0x25, 0x34, 0x23, +}; +static const unsigned char kat3513_entropyinpr1[] = { + 0x67, 0x7e, 0xc5, 0xb8, 0x00, 0xb5, 0xd3, 0xcb, 0xca, 0x40, 0xb9, 0x0e, + 0xbf, 0x26, 0xbf, 0xfc, 0xc5, 0xc2, 0xb7, 0xd5, 0x6b, 0x14, 0xb7, 0x77, + 0x93, 0x01, 0x68, 0xa4, 0x5e, 0xb0, 0xf6, 0x8c, +}; +static const unsigned char kat3513_addinpr1[] = {0}; +static const unsigned char kat3513_entropyinpr2[] = { + 0x86, 0xee, 0x44, 0xb2, 0x17, 0xcd, 0x80, 0x80, 0x78, 0x75, 0x9e, 0x9f, + 0xd2, 0xfc, 0x08, 0x26, 0xd9, 0x56, 0x5a, 0x78, 0x9a, 0xa9, 0xd1, 0x69, + 0xac, 0x84, 0x3c, 0x13, 0x5f, 0xe9, 0xb5, 0xcf, +}; +static const unsigned char kat3513_addinpr2[] = {0}; +static const unsigned char kat3513_retbits[] = { + 0xf1, 0x8b, 0x06, 0x88, 0xdd, 0x8e, 0xf9, 0x06, 0xf5, 0x3f, 0x71, 0xb6, + 0x69, 0x8c, 0x64, 0x4c, 0x66, 0xf0, 0x21, 0xf3, 0x5b, 0x64, 0x64, 0x94, + 0x7a, 0x5b, 0x70, 0xf3, 0x46, 0xce, 0x43, 0xa0, 0xa6, 0xab, 0xd3, 0xa1, + 0x34, 0x98, 0xc4, 0x05, 0x4c, 0x01, 0x40, 0x67, 0x3d, 0x0a, 0xe5, 0x41, + 0x82, 0x5a, 0xe0, 0x48, 0x7a, 0xbf, 0xaf, 0x34, 0x6d, 0x5f, 0xf1, 0xa2, + 0xe1, 0x81, 0xea, 0x97, +}; +static const struct drbg_kat_pr_true kat3513_t = { + 2, kat3513_entropyin, kat3513_nonce, kat3513_persstr, + kat3513_entropyinpr1, kat3513_addinpr1, kat3513_entropyinpr2, + kat3513_addinpr2, kat3513_retbits +}; +static const struct drbg_kat kat3513 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3513_t +}; + +static const unsigned char kat3514_entropyin[] = { + 0x6a, 0xa3, 0x8b, 0x18, 0xe8, 0x1e, 0xbd, 0x7e, 0x2e, 0x37, 0x7d, 0x05, + 0x80, 0xc9, 0x35, 0xed, 0xe4, 0x23, 0xf4, 0x08, 0x6a, 0x01, 0xec, 0xcd, + 0xab, 0x16, 0xb8, 0x22, 0xab, 0x7c, 0x3d, 0x19, +}; +static const unsigned char kat3514_nonce[] = { + 0x3b, 0xc4, 0xd6, 0x59, 0xf5, 0xfe, 0x11, 0x30, 0x68, 0x41, 0xfb, 0x98, + 0x73, 0x65, 0xa6, 0x04, +}; +static const unsigned char kat3514_persstr[] = { + 0x5b, 0x20, 0xbd, 0xd3, 0xa7, 0x29, 0xb9, 0x92, 0xf5, 0x10, 0x30, 0x60, + 0xbe, 0x19, 0xed, 0xd3, 0x5b, 0xed, 0x62, 0xf2, 0xa6, 0x99, 0x80, 0xc4, + 0x0d, 0x02, 0x06, 0x59, 0x56, 0xda, 0x42, 0xee, +}; +static const unsigned char kat3514_entropyinpr1[] = { + 0x12, 0x0c, 0xd8, 0x66, 0xb3, 0x56, 0x7c, 0x00, 0x4d, 0xd3, 0x3e, 0xd4, + 0x2d, 0x16, 0x0a, 0x7f, 0x43, 0x37, 0xba, 0x08, 0xa2, 0x3b, 0xdf, 0x0e, + 0x71, 0xde, 0x2b, 0xc9, 0x1c, 0x1d, 0x19, 0x1c, +}; +static const unsigned char kat3514_addinpr1[] = {0}; +static const unsigned char kat3514_entropyinpr2[] = { + 0x25, 0x82, 0x32, 0x2d, 0x64, 0x85, 0x1c, 0xf1, 0x92, 0xf6, 0x84, 0xc1, + 0xca, 0x8e, 0x71, 0xff, 0xa5, 0x96, 0x4f, 0x7d, 0xe5, 0xd5, 0xf8, 0xbb, + 0x45, 0x6d, 0x12, 0xdd, 0xe7, 0x4f, 0x18, 0xd2, +}; +static const unsigned char kat3514_addinpr2[] = {0}; +static const unsigned char kat3514_retbits[] = { + 0xeb, 0x00, 0x92, 0x4b, 0x44, 0xc7, 0x7e, 0x97, 0x2a, 0x13, 0xdb, 0xc2, + 0x07, 0x4e, 0x4d, 0x33, 0xac, 0xf3, 0x86, 0xe7, 0xb0, 0x6a, 0x64, 0x6d, + 0x74, 0x72, 0xc3, 0xb6, 0xa2, 0x46, 0x66, 0x2b, 0x8a, 0xe2, 0x4f, 0xe0, + 0x47, 0x08, 0xa3, 0xad, 0xda, 0x1b, 0xfb, 0x8e, 0x63, 0x0e, 0x00, 0xb1, + 0x76, 0x85, 0x14, 0xbf, 0x48, 0x0a, 0x25, 0xa5, 0xae, 0x9b, 0x32, 0x4e, + 0x8e, 0x32, 0x85, 0x43, +}; +static const struct drbg_kat_pr_true kat3514_t = { + 3, kat3514_entropyin, kat3514_nonce, kat3514_persstr, + kat3514_entropyinpr1, kat3514_addinpr1, kat3514_entropyinpr2, + kat3514_addinpr2, kat3514_retbits +}; +static const struct drbg_kat kat3514 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3514_t +}; + +static const unsigned char kat3515_entropyin[] = { + 0xf5, 0x11, 0x84, 0xa5, 0x92, 0x4d, 0x02, 0xc6, 0x45, 0xa0, 0xaf, 0x17, + 0xee, 0x9d, 0x76, 0x82, 0xb9, 0xae, 0xc2, 0x95, 0x20, 0x91, 0x5e, 0x53, + 0xc8, 0x5e, 0x58, 0xc2, 0xd6, 0xed, 0x68, 0x01, +}; +static const unsigned char kat3515_nonce[] = { + 0xce, 0x8c, 0x81, 0x01, 0x47, 0xc5, 0x64, 0x99, 0x91, 0xed, 0x10, 0x1b, + 0x7a, 0x93, 0x69, 0x13, +}; +static const unsigned char kat3515_persstr[] = { + 0xe3, 0x9b, 0xd7, 0xfb, 0x6a, 0xba, 0x16, 0x46, 0x2f, 0x49, 0x2f, 0x64, + 0x82, 0x4d, 0x4e, 0x94, 0xc5, 0xfc, 0x65, 0xe2, 0x88, 0x58, 0x09, 0xd4, + 0x0e, 0xe8, 0x05, 0x06, 0x22, 0xe8, 0x22, 0x34, +}; +static const unsigned char kat3515_entropyinpr1[] = { + 0xd0, 0xe0, 0xfd, 0xa7, 0x49, 0x0a, 0x9c, 0x37, 0x97, 0x90, 0x39, 0x10, + 0x14, 0xa6, 0x41, 0x18, 0x95, 0x5a, 0x72, 0xe5, 0xac, 0x36, 0x3e, 0xef, + 0x06, 0xf3, 0x70, 0xfd, 0x61, 0x5b, 0x5c, 0x44, +}; +static const unsigned char kat3515_addinpr1[] = {0}; +static const unsigned char kat3515_entropyinpr2[] = { + 0x02, 0xdd, 0xef, 0xc9, 0x30, 0xfa, 0x83, 0x35, 0x67, 0xd2, 0x89, 0xaa, + 0x0d, 0x80, 0x9b, 0x17, 0x03, 0x62, 0x16, 0x05, 0xa2, 0x2b, 0x8d, 0xd9, + 0x40, 0x91, 0x1e, 0xd0, 0x84, 0xd3, 0xc2, 0xd8, +}; +static const unsigned char kat3515_addinpr2[] = {0}; +static const unsigned char kat3515_retbits[] = { + 0x47, 0xa6, 0x40, 0x20, 0xb8, 0x76, 0x54, 0x1d, 0xcd, 0x51, 0x1d, 0xbe, + 0xa2, 0x47, 0xb7, 0x93, 0xc8, 0x0c, 0x7e, 0x34, 0x7f, 0x4d, 0x13, 0x92, + 0xbb, 0x93, 0x15, 0x16, 0x46, 0x41, 0x59, 0xfc, 0x28, 0xc5, 0x0e, 0xa8, + 0xc9, 0x83, 0xae, 0xa0, 0xc3, 0x5d, 0x8e, 0x8b, 0xba, 0xee, 0xcc, 0x4e, + 0xe3, 0xea, 0x52, 0xff, 0x24, 0xef, 0x79, 0xdd, 0xa5, 0xfb, 0x50, 0xb4, + 0x84, 0xc7, 0x63, 0x75, +}; +static const struct drbg_kat_pr_true kat3515_t = { + 4, kat3515_entropyin, kat3515_nonce, kat3515_persstr, + kat3515_entropyinpr1, kat3515_addinpr1, kat3515_entropyinpr2, + kat3515_addinpr2, kat3515_retbits +}; +static const struct drbg_kat kat3515 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3515_t +}; + +static const unsigned char kat3516_entropyin[] = { + 0x23, 0x2e, 0x95, 0xd1, 0xbb, 0xe4, 0x3f, 0xb9, 0x95, 0x42, 0x78, 0xff, + 0x69, 0x75, 0xca, 0x5b, 0x4a, 0x60, 0xb5, 0x5b, 0xb9, 0xeb, 0x62, 0xca, + 0xa7, 0x18, 0xf8, 0x65, 0xd6, 0xf2, 0x85, 0x44, +}; +static const unsigned char kat3516_nonce[] = { + 0xf4, 0xe1, 0x9d, 0x72, 0x2f, 0x27, 0x01, 0xc0, 0x48, 0x6e, 0x5b, 0xa2, + 0x0a, 0x28, 0xf9, 0x0a, +}; +static const unsigned char kat3516_persstr[] = { + 0x4d, 0xf1, 0xf9, 0xf9, 0xcd, 0xb8, 0x8b, 0x10, 0x2b, 0x47, 0xb3, 0xe7, + 0x26, 0x5a, 0xd3, 0xc4, 0x05, 0x97, 0x78, 0xd9, 0x69, 0xf4, 0xe8, 0xf7, + 0x56, 0x00, 0x05, 0x50, 0x2a, 0xeb, 0xa3, 0xcd, +}; +static const unsigned char kat3516_entropyinpr1[] = { + 0x5e, 0x71, 0x22, 0xec, 0xb8, 0x40, 0x65, 0x39, 0x85, 0x3e, 0x8f, 0x1d, + 0x10, 0x48, 0xc8, 0xef, 0x06, 0x8b, 0x0a, 0xeb, 0x67, 0x66, 0xdc, 0x24, + 0xf5, 0x2e, 0x66, 0x2f, 0x67, 0x87, 0xf9, 0x69, +}; +static const unsigned char kat3516_addinpr1[] = {0}; +static const unsigned char kat3516_entropyinpr2[] = { + 0xd4, 0x5e, 0x39, 0xf3, 0xaa, 0xf1, 0xe1, 0x41, 0x0d, 0xb0, 0x9f, 0xb1, + 0xc4, 0x56, 0xab, 0x19, 0xb2, 0x59, 0xa9, 0x6b, 0x6e, 0x71, 0x70, 0x25, + 0xad, 0x33, 0x89, 0x7a, 0x50, 0xd3, 0xa0, 0x18, +}; +static const unsigned char kat3516_addinpr2[] = {0}; +static const unsigned char kat3516_retbits[] = { + 0x96, 0xa1, 0xb8, 0x22, 0xe4, 0x91, 0xec, 0xb3, 0x1f, 0xc3, 0xec, 0x6b, + 0x5b, 0xa4, 0x05, 0x4d, 0x5b, 0x86, 0xed, 0x11, 0xcb, 0xf2, 0x69, 0xe9, + 0x5b, 0xe1, 0xf3, 0x03, 0xd7, 0x17, 0x6f, 0xc7, 0x84, 0x38, 0xee, 0x55, + 0x0d, 0xd2, 0x88, 0x82, 0xb5, 0x9c, 0x8b, 0x6b, 0x84, 0x58, 0x5a, 0x7a, + 0xf0, 0x3f, 0x2a, 0x26, 0x7c, 0xf9, 0x39, 0x85, 0x43, 0x44, 0xf3, 0x99, + 0xd7, 0xad, 0xe5, 0xc8, +}; +static const struct drbg_kat_pr_true kat3516_t = { + 5, kat3516_entropyin, kat3516_nonce, kat3516_persstr, + kat3516_entropyinpr1, kat3516_addinpr1, kat3516_entropyinpr2, + kat3516_addinpr2, kat3516_retbits +}; +static const struct drbg_kat kat3516 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3516_t +}; + +static const unsigned char kat3517_entropyin[] = { + 0x4e, 0xd5, 0x83, 0x1a, 0x39, 0x45, 0x2c, 0x83, 0xbd, 0xd4, 0x2f, 0x14, + 0x22, 0xc3, 0x32, 0x37, 0x9d, 0x28, 0xc9, 0xa7, 0xe5, 0xe6, 0x79, 0x0b, + 0xaa, 0xf9, 0xd3, 0xcc, 0xb9, 0xc5, 0xed, 0x38, +}; +static const unsigned char kat3517_nonce[] = { + 0x46, 0x95, 0x53, 0x20, 0x4e, 0xf5, 0x0d, 0x9a, 0x5e, 0x69, 0xa3, 0xd3, + 0x8c, 0x63, 0x36, 0xb9, +}; +static const unsigned char kat3517_persstr[] = { + 0x4d, 0xac, 0x02, 0x90, 0x31, 0x2b, 0x5c, 0x66, 0x14, 0x71, 0xbe, 0xa5, + 0x92, 0x21, 0x95, 0xe4, 0x2e, 0xed, 0x51, 0x20, 0x05, 0x00, 0x8b, 0xc2, + 0x0b, 0x59, 0x1b, 0xcc, 0xcf, 0xc2, 0xa7, 0xd3, +}; +static const unsigned char kat3517_entropyinpr1[] = { + 0x0c, 0x37, 0xbd, 0x3d, 0xdd, 0x5c, 0x95, 0x93, 0xc1, 0x61, 0xd7, 0x22, + 0x78, 0x57, 0x7a, 0x9d, 0xe6, 0x00, 0x08, 0x65, 0x43, 0x26, 0x1c, 0x0d, + 0xc4, 0x8c, 0xed, 0x09, 0x50, 0x1a, 0xa2, 0x4d, +}; +static const unsigned char kat3517_addinpr1[] = {0}; +static const unsigned char kat3517_entropyinpr2[] = { + 0xbf, 0x32, 0xfe, 0xcf, 0x20, 0x55, 0xc7, 0x6c, 0xbc, 0x48, 0xae, 0x92, + 0x62, 0xd5, 0x66, 0xdf, 0xa7, 0x6d, 0xb4, 0x8f, 0xa2, 0x52, 0x8d, 0x36, + 0x70, 0x69, 0x51, 0x7f, 0x16, 0x8d, 0x7d, 0x19, +}; +static const unsigned char kat3517_addinpr2[] = {0}; +static const unsigned char kat3517_retbits[] = { + 0x5e, 0xb6, 0xd4, 0x16, 0x1a, 0x0c, 0x1e, 0x24, 0x07, 0xcf, 0x35, 0x83, + 0x54, 0x3c, 0x43, 0x55, 0xde, 0xa4, 0x97, 0x0c, 0x9f, 0x46, 0xdb, 0x73, + 0xea, 0x33, 0xa9, 0xe1, 0x71, 0xc2, 0xfa, 0x25, 0x6e, 0x71, 0xb5, 0xb3, + 0x35, 0xf5, 0x31, 0x19, 0x34, 0x05, 0x08, 0x66, 0xe0, 0xf3, 0x69, 0xe5, + 0x50, 0xcd, 0x6b, 0xaa, 0x9c, 0xdd, 0x50, 0x98, 0xe7, 0xf2, 0x0f, 0x64, + 0x28, 0x0a, 0x6e, 0x6f, +}; +static const struct drbg_kat_pr_true kat3517_t = { + 6, kat3517_entropyin, kat3517_nonce, kat3517_persstr, + kat3517_entropyinpr1, kat3517_addinpr1, kat3517_entropyinpr2, + kat3517_addinpr2, kat3517_retbits +}; +static const struct drbg_kat kat3517 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3517_t +}; + +static const unsigned char kat3518_entropyin[] = { + 0xec, 0x1b, 0x05, 0x5e, 0x2d, 0xbf, 0xfb, 0xf3, 0x1c, 0x5d, 0xc5, 0x84, + 0x27, 0x14, 0xc5, 0x5f, 0x9e, 0x9a, 0x3d, 0xf7, 0xdc, 0x00, 0x75, 0x31, + 0x42, 0x80, 0x64, 0x5c, 0x64, 0x0a, 0xd3, 0x6d, +}; +static const unsigned char kat3518_nonce[] = { + 0x28, 0x07, 0x86, 0xab, 0xf5, 0x07, 0xf6, 0xd8, 0x8c, 0x16, 0xce, 0xa8, + 0xbb, 0xc2, 0x91, 0x07, +}; +static const unsigned char kat3518_persstr[] = { + 0xda, 0x4a, 0xda, 0xbe, 0x6c, 0x8d, 0x49, 0x52, 0xfa, 0x2a, 0x79, 0xa6, + 0x63, 0xb6, 0x4a, 0x1f, 0xdb, 0x45, 0x0c, 0x1d, 0xd5, 0xdd, 0x10, 0x37, + 0x11, 0xcf, 0x78, 0xe8, 0x59, 0x26, 0xfe, 0x5b, +}; +static const unsigned char kat3518_entropyinpr1[] = { + 0xe8, 0x8a, 0xbc, 0x6b, 0x3a, 0x9c, 0x71, 0x38, 0x47, 0x11, 0x27, 0x74, + 0x48, 0x83, 0xed, 0x7a, 0xc1, 0x03, 0x81, 0x9a, 0x3a, 0x29, 0x74, 0xf0, + 0x96, 0x26, 0xf7, 0x19, 0xe8, 0xa4, 0x8a, 0x55, +}; +static const unsigned char kat3518_addinpr1[] = {0}; +static const unsigned char kat3518_entropyinpr2[] = { + 0x29, 0x7d, 0x96, 0xf0, 0x16, 0x3c, 0x56, 0xb9, 0xab, 0xa9, 0xf2, 0xc2, + 0x7f, 0xee, 0x9a, 0x91, 0x3e, 0x82, 0x35, 0x88, 0xb9, 0x69, 0xe0, 0x46, + 0x34, 0x28, 0xee, 0x74, 0xf8, 0xad, 0x64, 0xaf, +}; +static const unsigned char kat3518_addinpr2[] = {0}; +static const unsigned char kat3518_retbits[] = { + 0x9a, 0xf8, 0x9d, 0x5f, 0xa2, 0x42, 0xc3, 0xed, 0x00, 0x97, 0xf4, 0xe2, + 0x5a, 0x47, 0x85, 0x50, 0xb7, 0x8e, 0xca, 0x0f, 0xbc, 0x03, 0x31, 0x31, + 0x1c, 0x94, 0x72, 0xba, 0x20, 0x44, 0xd7, 0x40, 0x1b, 0x35, 0x20, 0xfa, + 0x7a, 0xf8, 0xe9, 0x6e, 0x1d, 0x80, 0x21, 0xc3, 0xdb, 0xd6, 0x08, 0xc1, + 0x41, 0x24, 0xbe, 0xbc, 0x59, 0xf5, 0xc7, 0x69, 0x6c, 0x92, 0x11, 0x7a, + 0x5e, 0x3c, 0xf5, 0x43, +}; +static const struct drbg_kat_pr_true kat3518_t = { + 7, kat3518_entropyin, kat3518_nonce, kat3518_persstr, + kat3518_entropyinpr1, kat3518_addinpr1, kat3518_entropyinpr2, + kat3518_addinpr2, kat3518_retbits +}; +static const struct drbg_kat kat3518 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3518_t +}; + +static const unsigned char kat3519_entropyin[] = { + 0x7f, 0xbb, 0xdd, 0x4e, 0xbb, 0x2c, 0xe9, 0x6b, 0x76, 0x30, 0xcd, 0x74, + 0x5c, 0x8c, 0x34, 0x0e, 0x24, 0x43, 0x1d, 0xe1, 0x21, 0x5d, 0xdd, 0xa4, + 0x40, 0xa9, 0xa9, 0x33, 0x58, 0x71, 0x9b, 0xf0, +}; +static const unsigned char kat3519_nonce[] = { + 0x85, 0x01, 0x0f, 0x8a, 0xe7, 0x16, 0xd4, 0x91, 0x8e, 0x62, 0x3d, 0x24, + 0x06, 0x22, 0x3f, 0x32, +}; +static const unsigned char kat3519_persstr[] = { + 0xe8, 0xda, 0xa5, 0x25, 0xd5, 0x43, 0xfa, 0xbe, 0xde, 0x07, 0x29, 0x1d, + 0x51, 0x13, 0x2e, 0x03, 0xd4, 0x48, 0x8c, 0xae, 0xf1, 0xca, 0xfa, 0xe0, + 0x20, 0x01, 0x13, 0xdb, 0xf3, 0x5c, 0xb1, 0xd0, +}; +static const unsigned char kat3519_entropyinpr1[] = { + 0x09, 0x15, 0x9b, 0x1e, 0xa2, 0x84, 0x98, 0xb0, 0x16, 0x08, 0x90, 0x2f, + 0x9e, 0x3e, 0xce, 0x53, 0x99, 0x7f, 0xa6, 0x02, 0x9f, 0x86, 0x14, 0x3e, + 0x88, 0xb8, 0xdd, 0x1b, 0x73, 0x8c, 0x8d, 0x8d, +}; +static const unsigned char kat3519_addinpr1[] = {0}; +static const unsigned char kat3519_entropyinpr2[] = { + 0x00, 0xcb, 0xa4, 0xae, 0xe9, 0xc7, 0x55, 0x09, 0xb8, 0x08, 0xd5, 0x07, + 0x6c, 0x03, 0x76, 0xc8, 0x89, 0x4f, 0xe1, 0x04, 0x18, 0x46, 0x16, 0x5b, + 0xec, 0x96, 0xbb, 0x0f, 0xb3, 0xe2, 0x4f, 0x08, +}; +static const unsigned char kat3519_addinpr2[] = {0}; +static const unsigned char kat3519_retbits[] = { + 0x48, 0xbc, 0xd6, 0x82, 0x31, 0xea, 0x05, 0x75, 0x29, 0x7b, 0x62, 0x55, + 0x8c, 0xc0, 0xc6, 0x38, 0x8a, 0x75, 0x70, 0x33, 0x4e, 0xc4, 0xe4, 0xe7, + 0xff, 0xe3, 0x28, 0x71, 0x45, 0x3a, 0x5f, 0x83, 0x9d, 0x2d, 0x81, 0x29, + 0xba, 0x47, 0x12, 0x1d, 0x9d, 0x5b, 0x27, 0x23, 0x52, 0xe6, 0x4a, 0xf8, + 0x50, 0x06, 0xed, 0x5d, 0x5b, 0xcc, 0x7b, 0xbb, 0x76, 0x9a, 0x11, 0x38, + 0x16, 0x45, 0x29, 0x65, +}; +static const struct drbg_kat_pr_true kat3519_t = { + 8, kat3519_entropyin, kat3519_nonce, kat3519_persstr, + kat3519_entropyinpr1, kat3519_addinpr1, kat3519_entropyinpr2, + kat3519_addinpr2, kat3519_retbits +}; +static const struct drbg_kat kat3519 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3519_t +}; + +static const unsigned char kat3520_entropyin[] = { + 0x14, 0xb5, 0x51, 0xa3, 0xf0, 0x1e, 0x02, 0xbd, 0x50, 0xa8, 0xdd, 0x76, + 0x51, 0xc8, 0xe4, 0x33, 0xd0, 0x8e, 0x80, 0x9f, 0x2d, 0xed, 0x45, 0x93, + 0x0e, 0x40, 0x0f, 0x77, 0x6d, 0x8a, 0xd6, 0x3e, +}; +static const unsigned char kat3520_nonce[] = { + 0x05, 0x9a, 0x6e, 0x92, 0xe2, 0x79, 0x01, 0x9a, 0xa8, 0x9d, 0xf8, 0xc5, + 0xb1, 0xca, 0x25, 0x81, +}; +static const unsigned char kat3520_persstr[] = { + 0x12, 0x97, 0xdd, 0x3c, 0x0f, 0x75, 0x52, 0xcc, 0xaf, 0x32, 0x90, 0xe6, + 0x5c, 0xbd, 0xd2, 0x22, 0x29, 0xdf, 0x51, 0x85, 0x7e, 0xc8, 0x9b, 0x7b, + 0x94, 0xa1, 0x7a, 0x30, 0x57, 0xbb, 0x40, 0x3c, +}; +static const unsigned char kat3520_entropyinpr1[] = { + 0x20, 0xbc, 0x2c, 0x16, 0x70, 0xff, 0xb3, 0x88, 0x45, 0xec, 0xc2, 0x30, + 0xed, 0x55, 0xdc, 0x19, 0x71, 0x8b, 0xae, 0x45, 0xc5, 0x36, 0xcb, 0x64, + 0x71, 0xea, 0xa5, 0xbd, 0xbd, 0xf9, 0x93, 0xd5, +}; +static const unsigned char kat3520_addinpr1[] = {0}; +static const unsigned char kat3520_entropyinpr2[] = { + 0xf3, 0xca, 0x78, 0xe6, 0xd6, 0x0f, 0x42, 0x1d, 0x1c, 0x88, 0xdd, 0x28, + 0x4d, 0xe5, 0x76, 0x3c, 0xa8, 0x49, 0x1a, 0xa5, 0x72, 0x38, 0xbf, 0x90, + 0xd6, 0x43, 0xfc, 0x3b, 0x43, 0x98, 0x1c, 0x7f, +}; +static const unsigned char kat3520_addinpr2[] = {0}; +static const unsigned char kat3520_retbits[] = { + 0x85, 0xc3, 0x64, 0x41, 0xb2, 0x82, 0xeb, 0x20, 0xa2, 0x55, 0x10, 0x2a, + 0xe1, 0xfa, 0x19, 0x75, 0xfc, 0xb6, 0x3b, 0x4c, 0x78, 0x1b, 0x5e, 0x1e, + 0x75, 0xb6, 0x80, 0x08, 0x62, 0xee, 0xdb, 0xa1, 0x55, 0x5e, 0xab, 0x73, + 0xfd, 0x8a, 0xc7, 0xf7, 0x01, 0xb0, 0xfd, 0xbd, 0xf4, 0x7d, 0x5c, 0x79, + 0xed, 0xe5, 0xf0, 0x8e, 0x7a, 0x4a, 0x9f, 0x93, 0x61, 0x01, 0xfa, 0xa1, + 0x14, 0x6b, 0x6e, 0xa7, +}; +static const struct drbg_kat_pr_true kat3520_t = { + 9, kat3520_entropyin, kat3520_nonce, kat3520_persstr, + kat3520_entropyinpr1, kat3520_addinpr1, kat3520_entropyinpr2, + kat3520_addinpr2, kat3520_retbits +}; +static const struct drbg_kat kat3520 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3520_t +}; + +static const unsigned char kat3521_entropyin[] = { + 0xa6, 0xae, 0x35, 0x3f, 0x27, 0x6c, 0x88, 0x8c, 0x86, 0x88, 0x06, 0x29, + 0x8c, 0x64, 0x50, 0x26, 0x8f, 0x07, 0x9f, 0xdd, 0xc5, 0x9a, 0x88, 0xae, + 0x0b, 0x00, 0xc3, 0x91, 0x3e, 0x1a, 0x48, 0x78, +}; +static const unsigned char kat3521_nonce[] = { + 0x2d, 0xc0, 0xf6, 0x3e, 0x0f, 0x36, 0x2e, 0xe6, 0xa6, 0x09, 0x80, 0xa8, + 0x74, 0x82, 0x17, 0x26, +}; +static const unsigned char kat3521_persstr[] = { + 0x25, 0x36, 0x75, 0x9f, 0x11, 0xb7, 0x32, 0xba, 0xef, 0x65, 0x40, 0xed, + 0x9f, 0xd9, 0xe7, 0x48, 0x5d, 0x36, 0xfe, 0x76, 0x50, 0xf8, 0x38, 0x9f, + 0x35, 0x59, 0x5b, 0x02, 0x91, 0x56, 0x6b, 0x0c, +}; +static const unsigned char kat3521_entropyinpr1[] = { + 0xfc, 0xda, 0xbc, 0x02, 0xca, 0x6e, 0xbc, 0x6a, 0x85, 0x70, 0x91, 0x77, + 0x59, 0x40, 0x3d, 0x81, 0xe0, 0xba, 0xad, 0x4d, 0x14, 0xe1, 0x6b, 0xde, + 0x35, 0x34, 0x76, 0xaa, 0xab, 0x89, 0x3e, 0x47, +}; +static const unsigned char kat3521_addinpr1[] = {0}; +static const unsigned char kat3521_entropyinpr2[] = { + 0x56, 0x9b, 0x85, 0xa9, 0x4d, 0x0e, 0xae, 0x8b, 0xba, 0x75, 0xa6, 0x0c, + 0xeb, 0xc0, 0x0b, 0xe4, 0x69, 0x84, 0x31, 0x44, 0xb1, 0x46, 0x56, 0xa9, + 0x78, 0x30, 0x8f, 0x72, 0x5f, 0x77, 0x86, 0xeb, +}; +static const unsigned char kat3521_addinpr2[] = {0}; +static const unsigned char kat3521_retbits[] = { + 0x70, 0xe9, 0x9d, 0xd2, 0x46, 0x0c, 0x5a, 0xff, 0x65, 0x89, 0x08, 0x77, + 0xcf, 0xba, 0x81, 0x27, 0xad, 0xbb, 0x85, 0xf9, 0xbd, 0xa4, 0x3a, 0xd0, + 0x60, 0x3f, 0xa3, 0x23, 0xb1, 0xf2, 0xdb, 0x99, 0x2c, 0x02, 0x05, 0x7c, + 0x10, 0x1e, 0x08, 0x96, 0x54, 0xac, 0xb2, 0xa7, 0xc7, 0x1c, 0xba, 0xba, + 0x27, 0x17, 0xb5, 0x9a, 0x72, 0x5f, 0x13, 0x3d, 0xd7, 0x78, 0x52, 0x59, + 0xb5, 0xa1, 0x5a, 0x00, +}; +static const struct drbg_kat_pr_true kat3521_t = { + 10, kat3521_entropyin, kat3521_nonce, kat3521_persstr, + kat3521_entropyinpr1, kat3521_addinpr1, kat3521_entropyinpr2, + kat3521_addinpr2, kat3521_retbits +}; +static const struct drbg_kat kat3521 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3521_t +}; + +static const unsigned char kat3522_entropyin[] = { + 0xc5, 0xa1, 0x20, 0x9b, 0xd7, 0xb7, 0xd3, 0x7c, 0xae, 0x67, 0x3d, 0xca, + 0xfc, 0xcf, 0x23, 0xe8, 0x43, 0xe5, 0xcf, 0x2a, 0x96, 0xd9, 0x04, 0x61, + 0x33, 0x94, 0xe8, 0x7b, 0xaf, 0xfb, 0x0b, 0x8f, +}; +static const unsigned char kat3522_nonce[] = { + 0x72, 0x81, 0xe2, 0x8b, 0xce, 0x17, 0x9c, 0x86, 0x2a, 0xa6, 0x9b, 0xdb, + 0x1f, 0xb9, 0x50, 0xf9, +}; +static const unsigned char kat3522_persstr[] = { + 0x4f, 0x3f, 0x3e, 0x6e, 0x83, 0x8d, 0x17, 0x63, 0x85, 0xf6, 0x8e, 0xf9, + 0x9c, 0xff, 0x0a, 0xbb, 0xc1, 0x4d, 0xe8, 0x0a, 0x88, 0xb7, 0x0c, 0x63, + 0xc1, 0x69, 0x34, 0x36, 0x3b, 0x80, 0x1b, 0x32, +}; +static const unsigned char kat3522_entropyinpr1[] = { + 0x8c, 0x77, 0xe4, 0x4e, 0x06, 0xb3, 0xc4, 0xad, 0xea, 0x9d, 0x03, 0x5b, + 0x19, 0x80, 0xe1, 0x58, 0x9c, 0xbf, 0xe7, 0x20, 0x74, 0x7a, 0x6d, 0x6d, + 0x89, 0x61, 0x68, 0x71, 0x26, 0x16, 0x63, 0xf9, +}; +static const unsigned char kat3522_addinpr1[] = {0}; +static const unsigned char kat3522_entropyinpr2[] = { + 0xc5, 0xfa, 0x21, 0x4f, 0x6e, 0x5b, 0x06, 0xd9, 0xb5, 0x33, 0x1f, 0x82, + 0xed, 0x35, 0xb4, 0x9e, 0x43, 0x01, 0xd3, 0x86, 0x4f, 0xd9, 0x0e, 0xf7, + 0x09, 0x72, 0xa3, 0xe3, 0x0e, 0xc0, 0x3b, 0x3b, +}; +static const unsigned char kat3522_addinpr2[] = {0}; +static const unsigned char kat3522_retbits[] = { + 0x9c, 0xf5, 0x08, 0xc8, 0x69, 0x8b, 0xa8, 0x6e, 0x69, 0xa1, 0xa9, 0x9f, + 0xe2, 0x6c, 0xaf, 0xa7, 0xd0, 0x7d, 0xce, 0x59, 0x67, 0xf1, 0x1a, 0xd0, + 0xf0, 0xe6, 0x38, 0xa7, 0xaa, 0xb2, 0xfe, 0x12, 0x02, 0xc0, 0x59, 0x43, + 0x29, 0x67, 0x9b, 0xbc, 0xe8, 0xdf, 0xbd, 0x2d, 0x7a, 0xea, 0x1d, 0xa5, + 0xe8, 0x8b, 0xad, 0xad, 0x05, 0xa6, 0x9b, 0x0c, 0x12, 0x20, 0x36, 0xfa, + 0xe4, 0x4c, 0x80, 0xa6, +}; +static const struct drbg_kat_pr_true kat3522_t = { + 11, kat3522_entropyin, kat3522_nonce, kat3522_persstr, + kat3522_entropyinpr1, kat3522_addinpr1, kat3522_entropyinpr2, + kat3522_addinpr2, kat3522_retbits +}; +static const struct drbg_kat kat3522 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3522_t +}; + +static const unsigned char kat3523_entropyin[] = { + 0x52, 0x73, 0xbb, 0x52, 0x34, 0xa1, 0xbc, 0x1a, 0x18, 0x3f, 0xe9, 0x7a, + 0xa0, 0xa0, 0x44, 0x14, 0xbb, 0x6e, 0x36, 0x6b, 0x68, 0x37, 0xb4, 0x4e, + 0xb0, 0x84, 0x7b, 0xd6, 0xa7, 0x73, 0x69, 0x6e, +}; +static const unsigned char kat3523_nonce[] = { + 0x05, 0xb8, 0xad, 0x30, 0x96, 0x8f, 0xc2, 0x63, 0xdd, 0x73, 0x1c, 0x9d, + 0x6e, 0xca, 0xda, 0x33, +}; +static const unsigned char kat3523_persstr[] = { + 0x61, 0x0c, 0x0f, 0x41, 0xd8, 0xee, 0xff, 0x00, 0x46, 0x75, 0x81, 0x09, + 0xb4, 0xe0, 0xc8, 0x91, 0xc5, 0x70, 0x2f, 0x43, 0xf9, 0x63, 0x92, 0x0e, + 0x48, 0xeb, 0x64, 0x1c, 0x76, 0x3c, 0xae, 0x80, +}; +static const unsigned char kat3523_entropyinpr1[] = { + 0x69, 0xa6, 0x5f, 0x48, 0x07, 0x05, 0x08, 0x2d, 0x79, 0x14, 0x59, 0x1b, + 0xb6, 0x29, 0x13, 0x21, 0xa9, 0x4d, 0xd2, 0xf7, 0x5a, 0xdb, 0x82, 0x70, + 0x01, 0x95, 0x04, 0x41, 0xac, 0xc8, 0x43, 0x1f, +}; +static const unsigned char kat3523_addinpr1[] = {0}; +static const unsigned char kat3523_entropyinpr2[] = { + 0xc2, 0xef, 0x3c, 0xbe, 0xfe, 0x07, 0xf0, 0xf5, 0xcd, 0xb4, 0x7d, 0xf2, + 0x7e, 0x9e, 0xaf, 0x3c, 0xc5, 0xde, 0xb6, 0xe2, 0x3f, 0xe9, 0x3a, 0x47, + 0x80, 0x10, 0xda, 0xb1, 0xcd, 0xad, 0x9e, 0x74, +}; +static const unsigned char kat3523_addinpr2[] = {0}; +static const unsigned char kat3523_retbits[] = { + 0x9b, 0x88, 0x7c, 0xc9, 0xe2, 0x95, 0x2f, 0x6b, 0x79, 0x31, 0xe0, 0x0c, + 0xcd, 0x2f, 0xed, 0x1a, 0xf3, 0x03, 0x51, 0x83, 0x97, 0xd8, 0xd6, 0x6c, + 0x53, 0x8e, 0xde, 0x16, 0x63, 0xd0, 0x13, 0xcd, 0xf7, 0x35, 0x05, 0x4a, + 0xce, 0xf1, 0x92, 0x60, 0x74, 0xa8, 0x4e, 0xf6, 0x85, 0xb1, 0xb9, 0xd9, + 0x12, 0x62, 0x6e, 0xa4, 0x80, 0x13, 0x96, 0x6a, 0x12, 0x85, 0x1a, 0x4c, + 0x29, 0x3f, 0xe3, 0x4c, +}; +static const struct drbg_kat_pr_true kat3523_t = { + 12, kat3523_entropyin, kat3523_nonce, kat3523_persstr, + kat3523_entropyinpr1, kat3523_addinpr1, kat3523_entropyinpr2, + kat3523_addinpr2, kat3523_retbits +}; +static const struct drbg_kat kat3523 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3523_t +}; + +static const unsigned char kat3524_entropyin[] = { + 0x51, 0x70, 0x55, 0x85, 0x0f, 0xb9, 0xdf, 0x06, 0xab, 0x58, 0xcb, 0xed, + 0xf0, 0x4a, 0x78, 0x79, 0xd7, 0xd5, 0xab, 0x14, 0xd4, 0xf7, 0xfc, 0x82, + 0x54, 0x6e, 0x12, 0xc1, 0x48, 0xc8, 0x81, 0x7e, +}; +static const unsigned char kat3524_nonce[] = { + 0x6a, 0x05, 0xf5, 0x4d, 0x40, 0xcb, 0xa9, 0xec, 0xf1, 0x71, 0xdc, 0x09, + 0x38, 0x3f, 0x7a, 0x27, +}; +static const unsigned char kat3524_persstr[] = { + 0x5e, 0xfe, 0xa8, 0x41, 0xb1, 0x3e, 0x14, 0x68, 0x9d, 0xde, 0x9a, 0x1a, + 0xf2, 0x3b, 0x12, 0xda, 0x5b, 0xb4, 0xbc, 0x06, 0x5c, 0xc7, 0x3b, 0x29, + 0x46, 0x5b, 0x55, 0x44, 0xa9, 0x8a, 0xb9, 0xf8, +}; +static const unsigned char kat3524_entropyinpr1[] = { + 0x1a, 0x21, 0xff, 0x08, 0x22, 0x10, 0x3c, 0xbb, 0x5a, 0xee, 0x0b, 0x88, + 0xe5, 0x0c, 0x5a, 0xe1, 0x71, 0x30, 0xbd, 0x30, 0xb1, 0xde, 0xf7, 0x88, + 0x05, 0xa5, 0xa8, 0x1f, 0x63, 0x0a, 0x9c, 0x84, +}; +static const unsigned char kat3524_addinpr1[] = {0}; +static const unsigned char kat3524_entropyinpr2[] = { + 0x0e, 0x4d, 0x04, 0x33, 0xd0, 0x1f, 0x14, 0x83, 0x14, 0x2e, 0xe7, 0x9c, + 0x95, 0xaf, 0x20, 0x9a, 0xb9, 0xf0, 0xda, 0x4f, 0xa9, 0xc0, 0xe7, 0xbb, + 0xe1, 0x39, 0x24, 0x04, 0x81, 0x10, 0x41, 0x07, +}; +static const unsigned char kat3524_addinpr2[] = {0}; +static const unsigned char kat3524_retbits[] = { + 0x39, 0x59, 0x1c, 0x4a, 0x55, 0x19, 0x3a, 0x93, 0xc9, 0xe4, 0x53, 0xbb, + 0xf7, 0x81, 0x77, 0xf8, 0x0c, 0xfc, 0x38, 0x87, 0x28, 0x66, 0x88, 0x0d, + 0x34, 0x55, 0x57, 0x86, 0xbb, 0xf0, 0xb0, 0xae, 0x1f, 0x2b, 0xf2, 0xd2, + 0xb1, 0x71, 0x11, 0xc5, 0xa3, 0xe3, 0x91, 0x3b, 0xb5, 0x09, 0x54, 0x79, + 0x75, 0x2e, 0x6f, 0x42, 0xe9, 0x40, 0xd7, 0x74, 0x16, 0x12, 0x36, 0x0f, + 0xb2, 0x3e, 0xf6, 0xc9, +}; +static const struct drbg_kat_pr_true kat3524_t = { + 13, kat3524_entropyin, kat3524_nonce, kat3524_persstr, + kat3524_entropyinpr1, kat3524_addinpr1, kat3524_entropyinpr2, + kat3524_addinpr2, kat3524_retbits +}; +static const struct drbg_kat kat3524 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3524_t +}; + +static const unsigned char kat3525_entropyin[] = { + 0x7f, 0xd0, 0xaf, 0xbc, 0x5a, 0x9c, 0xe5, 0xcf, 0xed, 0xe0, 0xab, 0xed, + 0xbe, 0x61, 0x4f, 0x7a, 0xa2, 0x64, 0xf5, 0xee, 0x51, 0xdb, 0x3e, 0x7b, + 0x5c, 0x69, 0x3c, 0xbe, 0x00, 0x12, 0xba, 0x9a, +}; +static const unsigned char kat3525_nonce[] = { + 0x6b, 0x43, 0x21, 0x2f, 0xf9, 0x4b, 0x8a, 0x3d, 0xa0, 0xb8, 0x2b, 0x5f, + 0x14, 0xbe, 0xb0, 0x11, +}; +static const unsigned char kat3525_persstr[] = { + 0xfa, 0xa7, 0xdf, 0xb1, 0x13, 0x27, 0x75, 0xea, 0xfc, 0x85, 0xf9, 0x7c, + 0x4b, 0x4d, 0x05, 0x97, 0x25, 0x57, 0x8f, 0x26, 0x91, 0x55, 0x61, 0x7f, + 0xd9, 0xf0, 0xac, 0x38, 0x9d, 0x8e, 0x65, 0x47, +}; +static const unsigned char kat3525_entropyinpr1[] = { + 0x1d, 0x2c, 0x0e, 0xd4, 0xc5, 0x7d, 0x77, 0x7d, 0x44, 0x87, 0x9b, 0xf3, + 0x36, 0xb8, 0x0e, 0xbb, 0xb8, 0x23, 0x15, 0x15, 0x57, 0xf9, 0x9c, 0x37, + 0x69, 0xdf, 0x39, 0x07, 0x90, 0x44, 0x5e, 0xef, +}; +static const unsigned char kat3525_addinpr1[] = {0}; +static const unsigned char kat3525_entropyinpr2[] = { + 0x7b, 0xb5, 0x11, 0x6d, 0xd7, 0x95, 0xfe, 0xf7, 0xc4, 0x52, 0x4f, 0x9a, + 0xc3, 0xb8, 0x21, 0xfa, 0xf0, 0x60, 0xc2, 0x09, 0x81, 0x8d, 0x17, 0xe3, + 0xc6, 0xcb, 0xdf, 0x7a, 0x3a, 0x41, 0xf1, 0xe9, +}; +static const unsigned char kat3525_addinpr2[] = {0}; +static const unsigned char kat3525_retbits[] = { + 0x4e, 0xb2, 0xa1, 0xbf, 0xd4, 0xfe, 0x74, 0x16, 0x80, 0x06, 0x23, 0xff, + 0xba, 0xe0, 0x2b, 0xfe, 0x30, 0xd8, 0x16, 0xc8, 0xa9, 0xb6, 0x47, 0xf6, + 0x09, 0x2c, 0x1a, 0xab, 0x99, 0xd8, 0x77, 0xc1, 0xe6, 0xc7, 0xa1, 0x16, + 0x54, 0x37, 0x05, 0xcc, 0x3f, 0x94, 0x16, 0x51, 0x83, 0x33, 0xd5, 0x8c, + 0x58, 0xcc, 0x72, 0x4c, 0xa1, 0x51, 0x03, 0x98, 0xbf, 0x82, 0x48, 0xd2, + 0x28, 0x54, 0x4a, 0x15, +}; +static const struct drbg_kat_pr_true kat3525_t = { + 14, kat3525_entropyin, kat3525_nonce, kat3525_persstr, + kat3525_entropyinpr1, kat3525_addinpr1, kat3525_entropyinpr2, + kat3525_addinpr2, kat3525_retbits +}; +static const struct drbg_kat kat3525 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3525_t +}; + +static const unsigned char kat3526_entropyin[] = { + 0x1f, 0xe5, 0x86, 0x0d, 0x25, 0xc6, 0xfe, 0x83, 0x23, 0x1d, 0xe9, 0xb6, + 0x5e, 0xcb, 0x76, 0x43, 0x44, 0x4b, 0x97, 0x37, 0xd2, 0xba, 0x08, 0x35, + 0x9b, 0x50, 0x09, 0x1d, 0x6d, 0xd2, 0x80, 0x9b, +}; +static const unsigned char kat3526_nonce[] = { + 0xf1, 0x90, 0xc0, 0x1d, 0x07, 0x72, 0xa7, 0x39, 0xe1, 0xb2, 0x49, 0xd8, + 0x5a, 0xca, 0xbe, 0xc9, +}; +static const unsigned char kat3526_persstr[] = { + 0x0a, 0x71, 0x4c, 0x2c, 0x9c, 0x14, 0x4b, 0xed, 0xac, 0xb5, 0x9b, 0x10, + 0x59, 0xbc, 0x45, 0x83, 0xcc, 0x2d, 0x92, 0x33, 0x1e, 0xca, 0xbf, 0x14, + 0x6d, 0x48, 0x96, 0xe9, 0x6d, 0x83, 0x0e, 0xa8, +}; +static const unsigned char kat3526_entropyinpr1[] = { + 0xbd, 0xd1, 0xba, 0xca, 0xec, 0x39, 0xe1, 0x92, 0x31, 0x07, 0x44, 0xeb, + 0x25, 0x4a, 0x3f, 0x05, 0xe6, 0x1b, 0x2a, 0xd4, 0x19, 0x61, 0x1a, 0x43, + 0x14, 0x77, 0x44, 0xa4, 0x44, 0xf1, 0x54, 0xd6, +}; +static const unsigned char kat3526_addinpr1[] = { + 0x98, 0x95, 0x8f, 0x55, 0x7c, 0xb2, 0x43, 0x51, 0xc3, 0xce, 0xa0, 0x27, + 0x80, 0x18, 0xf9, 0xdd, 0xe6, 0x18, 0x40, 0xf5, 0x1f, 0x36, 0xef, 0x64, + 0xd8, 0x64, 0x14, 0xa2, 0x73, 0x01, 0xef, 0x65, +}; +static const unsigned char kat3526_entropyinpr2[] = { + 0x48, 0x0d, 0x2d, 0xd9, 0x38, 0x9b, 0xaf, 0x09, 0x75, 0x5c, 0x78, 0xd5, + 0x63, 0x25, 0x0e, 0x92, 0x24, 0x8f, 0x0f, 0x5c, 0xc5, 0x06, 0x7a, 0xe8, + 0x20, 0x78, 0x93, 0x05, 0xc0, 0xa4, 0xd6, 0x26, +}; +static const unsigned char kat3526_addinpr2[] = { + 0x55, 0x15, 0x5f, 0x75, 0x2c, 0xb5, 0xf5, 0x3b, 0x49, 0x1f, 0xd8, 0xab, + 0xda, 0xbe, 0xec, 0x22, 0xd5, 0xf3, 0x5b, 0x3a, 0xf4, 0x94, 0x84, 0x28, + 0x2f, 0xeb, 0xbd, 0x79, 0x4c, 0xb7, 0x12, 0x82, +}; +static const unsigned char kat3526_retbits[] = { + 0x3d, 0xce, 0x54, 0xa9, 0x9d, 0x91, 0x96, 0xdf, 0x36, 0x29, 0xa2, 0x95, + 0x77, 0x20, 0xae, 0xa3, 0x94, 0xe1, 0x57, 0x3c, 0x2a, 0x41, 0xf9, 0xa6, + 0x33, 0x25, 0xca, 0x57, 0x30, 0x3e, 0xd0, 0xf4, 0xa3, 0x4b, 0x39, 0xbc, + 0xb5, 0x53, 0x74, 0x98, 0xb7, 0x1f, 0xdd, 0x13, 0x8e, 0x0f, 0x83, 0x03, + 0xe5, 0x4f, 0x8e, 0xd4, 0x12, 0xd8, 0x2c, 0x64, 0x75, 0x4d, 0x27, 0x8a, + 0x8b, 0x68, 0xbc, 0xd1, +}; +static const struct drbg_kat_pr_true kat3526_t = { + 0, kat3526_entropyin, kat3526_nonce, kat3526_persstr, + kat3526_entropyinpr1, kat3526_addinpr1, kat3526_entropyinpr2, + kat3526_addinpr2, kat3526_retbits +}; +static const struct drbg_kat kat3526 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3526_t +}; + +static const unsigned char kat3527_entropyin[] = { + 0xb9, 0xdf, 0xc4, 0xd8, 0x92, 0x04, 0x95, 0xa9, 0x82, 0xb5, 0xd3, 0x69, + 0xb9, 0xa7, 0x06, 0x4d, 0x4a, 0x07, 0x2c, 0x4f, 0x33, 0x6a, 0x94, 0x2f, + 0xbd, 0x28, 0x94, 0x1a, 0xed, 0xe3, 0x48, 0x4f, +}; +static const unsigned char kat3527_nonce[] = { + 0x5a, 0x6c, 0xd9, 0x5e, 0x00, 0xbd, 0x4c, 0xf6, 0x71, 0xc7, 0xe7, 0xaa, + 0xca, 0x97, 0xf5, 0x92, +}; +static const unsigned char kat3527_persstr[] = { + 0x1d, 0x69, 0x9f, 0x24, 0xd8, 0x73, 0x84, 0x81, 0x57, 0x7e, 0xf4, 0x76, + 0x8b, 0xc0, 0x6d, 0xf8, 0xb7, 0x41, 0x9a, 0x7b, 0xfb, 0x02, 0xb9, 0xe4, + 0xb1, 0x81, 0xdb, 0xf4, 0x92, 0x86, 0x05, 0x47, +}; +static const unsigned char kat3527_entropyinpr1[] = { + 0x29, 0x24, 0x1b, 0x65, 0x2e, 0x34, 0x24, 0xac, 0x5b, 0xd1, 0x8f, 0x86, + 0xe1, 0xe1, 0xf8, 0x46, 0x2e, 0x4e, 0xf5, 0xa6, 0x72, 0xa1, 0xb2, 0x1e, + 0xbc, 0x6b, 0x24, 0x4e, 0x7e, 0x2e, 0x30, 0x45, +}; +static const unsigned char kat3527_addinpr1[] = { + 0x92, 0x03, 0x1e, 0x29, 0x1b, 0x34, 0x52, 0x06, 0x24, 0x37, 0x4b, 0x24, + 0x56, 0x5f, 0xb9, 0x64, 0x3f, 0x26, 0xa7, 0x8c, 0xf8, 0x5e, 0x8f, 0x89, + 0xa1, 0xa3, 0x74, 0xa0, 0x2f, 0x9a, 0x2c, 0x76, +}; +static const unsigned char kat3527_entropyinpr2[] = { + 0x9f, 0x33, 0x66, 0xf9, 0x60, 0xd9, 0xc7, 0xcb, 0x2d, 0x05, 0x68, 0x3d, + 0x4b, 0x43, 0xfe, 0xcb, 0x44, 0xc2, 0x68, 0xbf, 0x87, 0xdd, 0x43, 0x6d, + 0x5a, 0x08, 0x82, 0xde, 0x90, 0x4f, 0xb2, 0x21, +}; +static const unsigned char kat3527_addinpr2[] = { + 0x30, 0x33, 0xd7, 0xbb, 0x15, 0x43, 0x23, 0x3f, 0x3d, 0xc1, 0x69, 0xa1, + 0xcc, 0xbb, 0x3c, 0x47, 0xe2, 0x61, 0xe3, 0x03, 0x80, 0x30, 0x86, 0x19, + 0xc8, 0x4c, 0xd6, 0x0a, 0x13, 0xda, 0xdd, 0xf9, +}; +static const unsigned char kat3527_retbits[] = { + 0x33, 0x31, 0x15, 0x0c, 0x62, 0x75, 0x85, 0xfc, 0x52, 0x71, 0x5a, 0xc7, + 0xff, 0x83, 0xce, 0xa2, 0x65, 0xed, 0x5a, 0xdb, 0xb1, 0xd3, 0x0b, 0xda, + 0x3f, 0x75, 0xfd, 0x39, 0x8c, 0x6f, 0x9a, 0x81, 0xf1, 0xe7, 0xc4, 0xea, + 0xe5, 0xd7, 0xc3, 0x62, 0x3d, 0xd1, 0xdc, 0x4a, 0x5b, 0x8a, 0xd4, 0xa4, + 0x21, 0xb3, 0xda, 0xa9, 0x78, 0x66, 0x6f, 0xff, 0x8b, 0xe2, 0xa0, 0xb6, + 0x43, 0xb0, 0x95, 0x60, +}; +static const struct drbg_kat_pr_true kat3527_t = { + 1, kat3527_entropyin, kat3527_nonce, kat3527_persstr, + kat3527_entropyinpr1, kat3527_addinpr1, kat3527_entropyinpr2, + kat3527_addinpr2, kat3527_retbits +}; +static const struct drbg_kat kat3527 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3527_t +}; + +static const unsigned char kat3528_entropyin[] = { + 0xcd, 0xb3, 0xf0, 0x16, 0xb2, 0x24, 0x4b, 0x9e, 0x55, 0xb5, 0xf1, 0x19, + 0x19, 0x78, 0x44, 0x92, 0x39, 0xc1, 0x91, 0xa2, 0xa4, 0x5f, 0xe0, 0xd1, + 0x9f, 0x02, 0xe2, 0x92, 0x3c, 0x36, 0x12, 0xdd, +}; +static const unsigned char kat3528_nonce[] = { + 0xdc, 0x1f, 0xd8, 0xb8, 0xd1, 0xce, 0x82, 0x0a, 0x4d, 0xc7, 0x45, 0xb9, + 0x9e, 0x65, 0x7f, 0x62, +}; +static const unsigned char kat3528_persstr[] = { + 0xff, 0xa2, 0x60, 0x57, 0x7d, 0x92, 0xd0, 0xea, 0x96, 0x65, 0x33, 0x1c, + 0x3e, 0x18, 0x22, 0x7d, 0x5c, 0x9a, 0xea, 0x46, 0xa7, 0xc3, 0x6a, 0x76, + 0x2f, 0xe1, 0xc5, 0xa6, 0x6e, 0x73, 0xf8, 0x0b, +}; +static const unsigned char kat3528_entropyinpr1[] = { + 0xf9, 0x1b, 0x41, 0x7c, 0x0d, 0x8f, 0xe4, 0x53, 0xb8, 0x3a, 0x9f, 0x34, + 0x6e, 0xab, 0x8c, 0x87, 0x99, 0xb0, 0x34, 0x44, 0xe0, 0xf3, 0xa4, 0xe5, + 0xdd, 0x5c, 0xc0, 0x86, 0x24, 0x6b, 0x0d, 0x45, +}; +static const unsigned char kat3528_addinpr1[] = { + 0x87, 0xf4, 0xd8, 0x2b, 0x14, 0x1d, 0x38, 0x79, 0x7d, 0x52, 0x6b, 0xa9, + 0x1b, 0xd4, 0x48, 0x69, 0x49, 0xe4, 0xad, 0xad, 0xf4, 0x52, 0x74, 0xeb, + 0xb8, 0x05, 0xe1, 0x8c, 0xf8, 0xf9, 0xc0, 0x5f, +}; +static const unsigned char kat3528_entropyinpr2[] = { + 0xf6, 0xcb, 0xb8, 0x52, 0x38, 0xb8, 0x62, 0x8c, 0x4a, 0x1d, 0x12, 0xc3, + 0x65, 0x64, 0x7e, 0x06, 0xad, 0x60, 0x07, 0x0e, 0xd2, 0x85, 0xed, 0x37, + 0xb3, 0xe3, 0x42, 0x2f, 0xfb, 0x96, 0xe8, 0x36, +}; +static const unsigned char kat3528_addinpr2[] = { + 0x10, 0xee, 0xc6, 0x8e, 0xbb, 0xeb, 0x48, 0xbf, 0xa6, 0xb4, 0x71, 0x35, + 0x5d, 0x38, 0xae, 0x5d, 0x68, 0x61, 0xa6, 0xf6, 0xff, 0x36, 0x85, 0x48, + 0x66, 0xe8, 0xb7, 0x7b, 0x3b, 0xe0, 0x5f, 0x86, +}; +static const unsigned char kat3528_retbits[] = { + 0x5b, 0x2c, 0x8e, 0x3b, 0xb4, 0x73, 0xd9, 0x4c, 0x67, 0x7d, 0x0b, 0xc3, + 0xb3, 0x74, 0x14, 0x5b, 0xc8, 0x79, 0xdd, 0x46, 0xb7, 0x59, 0x87, 0x8f, + 0x33, 0x65, 0x6c, 0xaf, 0xa8, 0x8d, 0xa7, 0xc9, 0x36, 0x86, 0x72, 0x5d, + 0x82, 0xf9, 0x87, 0xdd, 0xe6, 0x6d, 0x03, 0x5d, 0xd9, 0x61, 0xf5, 0x19, + 0x76, 0xcf, 0x62, 0xc7, 0x8e, 0x14, 0x51, 0x50, 0x81, 0xa1, 0xb0, 0x4c, + 0xc6, 0x11, 0x76, 0x02, +}; +static const struct drbg_kat_pr_true kat3528_t = { + 2, kat3528_entropyin, kat3528_nonce, kat3528_persstr, + kat3528_entropyinpr1, kat3528_addinpr1, kat3528_entropyinpr2, + kat3528_addinpr2, kat3528_retbits +}; +static const struct drbg_kat kat3528 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3528_t +}; + +static const unsigned char kat3529_entropyin[] = { + 0xc9, 0x04, 0xac, 0x8b, 0x08, 0xba, 0x8f, 0x4c, 0xa1, 0xcb, 0x93, 0xc6, + 0x7f, 0xad, 0xf1, 0x76, 0x6f, 0xc1, 0x59, 0x79, 0x84, 0x7c, 0x3f, 0x45, + 0x3a, 0xf9, 0x8b, 0x55, 0xa4, 0xe2, 0xee, 0xf0, +}; +static const unsigned char kat3529_nonce[] = { + 0x45, 0x7a, 0x6d, 0xed, 0xfb, 0xdb, 0x56, 0x74, 0x8b, 0x05, 0xa5, 0x21, + 0xa2, 0xc2, 0xa0, 0xe1, +}; +static const unsigned char kat3529_persstr[] = { + 0x52, 0x4e, 0x44, 0x2e, 0xbb, 0x64, 0x67, 0xf8, 0x1d, 0xa6, 0xa4, 0xab, + 0x75, 0x9c, 0x30, 0xcd, 0xe5, 0x41, 0x23, 0x4f, 0xc6, 0x93, 0x35, 0xd6, + 0x14, 0x76, 0xa3, 0xbd, 0x77, 0xf8, 0x18, 0x77, +}; +static const unsigned char kat3529_entropyinpr1[] = { + 0x3a, 0x22, 0xa1, 0xec, 0xc8, 0x8e, 0x1e, 0x62, 0x0f, 0xb8, 0x53, 0x8e, + 0xba, 0x77, 0xa3, 0x31, 0x53, 0xc6, 0xf5, 0xe4, 0x3b, 0xb7, 0x86, 0xea, + 0x17, 0x69, 0xbe, 0xb2, 0x5d, 0x7e, 0xdc, 0xc9, +}; +static const unsigned char kat3529_addinpr1[] = { + 0x17, 0x9c, 0x68, 0xde, 0x66, 0x7a, 0xf9, 0x81, 0xe1, 0xa3, 0xa8, 0x79, + 0x75, 0xfa, 0x94, 0xf4, 0xe2, 0xc0, 0xf0, 0xbb, 0x87, 0x08, 0xb9, 0x3f, + 0x7a, 0x91, 0xe0, 0xbd, 0x6e, 0xcf, 0x8e, 0xf6, +}; +static const unsigned char kat3529_entropyinpr2[] = { + 0x3e, 0x29, 0x58, 0x28, 0x04, 0x3b, 0x6c, 0xf7, 0xc2, 0xcd, 0xf3, 0xa7, + 0x63, 0xfd, 0x9d, 0xeb, 0x7d, 0x05, 0x52, 0xfd, 0x54, 0x94, 0x07, 0x4e, + 0x4f, 0x80, 0xfa, 0x52, 0x59, 0xa0, 0x7e, 0x3a, +}; +static const unsigned char kat3529_addinpr2[] = { + 0x18, 0xac, 0xbd, 0xa0, 0x31, 0x0e, 0x14, 0x44, 0xd7, 0xee, 0xc6, 0x60, + 0x9a, 0x47, 0xf3, 0xf2, 0xe2, 0xfa, 0xcf, 0x41, 0x36, 0xf4, 0xee, 0x9b, + 0x60, 0x66, 0x6c, 0x17, 0xea, 0xba, 0xb2, 0x9b, +}; +static const unsigned char kat3529_retbits[] = { + 0xbd, 0x6b, 0x64, 0x0b, 0x13, 0x8f, 0xa0, 0xc2, 0xea, 0x56, 0xd8, 0x1e, + 0x85, 0x44, 0x6b, 0x88, 0x70, 0x0e, 0xfa, 0x66, 0xe3, 0xed, 0x3b, 0x88, + 0x16, 0xe2, 0xe3, 0x1c, 0x9b, 0x49, 0xbf, 0xa6, 0x4b, 0xcd, 0x36, 0x2b, + 0x1a, 0xc7, 0xc8, 0x98, 0xf4, 0x45, 0xe9, 0xdd, 0xc8, 0xa3, 0xdb, 0x21, + 0x79, 0x4e, 0xc0, 0x77, 0xe7, 0xbd, 0xd8, 0xd9, 0x07, 0x91, 0xad, 0xb2, + 0xb5, 0xcf, 0x5a, 0x76, +}; +static const struct drbg_kat_pr_true kat3529_t = { + 3, kat3529_entropyin, kat3529_nonce, kat3529_persstr, + kat3529_entropyinpr1, kat3529_addinpr1, kat3529_entropyinpr2, + kat3529_addinpr2, kat3529_retbits +}; +static const struct drbg_kat kat3529 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3529_t +}; + +static const unsigned char kat3530_entropyin[] = { + 0x74, 0x28, 0x06, 0x3c, 0xd1, 0xd8, 0x52, 0x1d, 0xd9, 0x8b, 0x9a, 0xe1, + 0xb1, 0xc7, 0xc7, 0x53, 0x3d, 0x79, 0xba, 0x07, 0x76, 0x0b, 0x37, 0x6c, + 0x59, 0xeb, 0x1d, 0x58, 0xfe, 0x05, 0xa6, 0xf9, +}; +static const unsigned char kat3530_nonce[] = { + 0x79, 0xa9, 0x32, 0xf0, 0xb9, 0x57, 0x08, 0x47, 0x76, 0x07, 0x2d, 0xf8, + 0xe5, 0x2b, 0xfe, 0x8e, +}; +static const unsigned char kat3530_persstr[] = { + 0x8d, 0xb7, 0x74, 0x0a, 0x7a, 0x30, 0x1a, 0xcc, 0xf6, 0xb9, 0x9b, 0xb9, + 0xc8, 0x7d, 0x07, 0xda, 0x99, 0x1c, 0xcf, 0x2c, 0x76, 0x27, 0xe9, 0xb7, + 0xad, 0x2d, 0x73, 0x1a, 0x90, 0x79, 0x06, 0x77, +}; +static const unsigned char kat3530_entropyinpr1[] = { + 0x6d, 0x0d, 0x3c, 0x47, 0x82, 0x23, 0xab, 0xcf, 0x5d, 0x85, 0xaa, 0x06, + 0xc8, 0xfa, 0x97, 0xea, 0x2a, 0x97, 0xf0, 0x27, 0x16, 0x75, 0x3e, 0x23, + 0x59, 0xde, 0x9e, 0x2d, 0xe5, 0xf3, 0x8b, 0x79, +}; +static const unsigned char kat3530_addinpr1[] = { + 0xd7, 0xf0, 0xca, 0xa7, 0x39, 0x78, 0x60, 0xc8, 0x6c, 0xd1, 0x4f, 0xdd, + 0x07, 0x6a, 0x6a, 0xca, 0x52, 0x09, 0x32, 0x67, 0x91, 0xe4, 0xf4, 0x7d, + 0x26, 0x60, 0x01, 0x16, 0x17, 0x40, 0x35, 0x0b, +}; +static const unsigned char kat3530_entropyinpr2[] = { + 0x11, 0xfa, 0x1a, 0x95, 0x56, 0xeb, 0x56, 0x4e, 0x74, 0x4d, 0xc0, 0x5a, + 0xc4, 0x1c, 0x58, 0xb3, 0xd3, 0x51, 0xe0, 0x00, 0xc8, 0x8b, 0xdf, 0x53, + 0x71, 0x63, 0x75, 0x9a, 0x38, 0xfe, 0x68, 0xd8, +}; +static const unsigned char kat3530_addinpr2[] = { + 0x8a, 0x76, 0xd7, 0xd3, 0x64, 0x4a, 0x97, 0x74, 0x17, 0x23, 0xa5, 0xe2, + 0x32, 0xd1, 0x45, 0x1f, 0xf7, 0x89, 0xb5, 0xeb, 0xf3, 0xd7, 0xec, 0x78, + 0x01, 0x3e, 0x8e, 0x1e, 0xf2, 0xb4, 0xb3, 0xab, +}; +static const unsigned char kat3530_retbits[] = { + 0x03, 0x85, 0xd4, 0x47, 0x22, 0xce, 0x60, 0xd2, 0xac, 0x0b, 0x8f, 0x35, + 0xaf, 0xd9, 0x99, 0xef, 0xbf, 0x07, 0xc7, 0x36, 0xce, 0xc6, 0x5d, 0xe0, + 0x69, 0x30, 0x0b, 0xd6, 0x4a, 0xb0, 0xe2, 0xda, 0xf0, 0x74, 0x37, 0x4b, + 0x17, 0x1c, 0x36, 0x22, 0xa8, 0xb0, 0xb5, 0x54, 0x99, 0x3b, 0xcc, 0xa4, + 0xca, 0xa5, 0x78, 0xc3, 0x77, 0xbd, 0xf5, 0xdb, 0xf5, 0x10, 0xe3, 0xb4, + 0xf1, 0x4b, 0x6f, 0xdf, +}; +static const struct drbg_kat_pr_true kat3530_t = { + 4, kat3530_entropyin, kat3530_nonce, kat3530_persstr, + kat3530_entropyinpr1, kat3530_addinpr1, kat3530_entropyinpr2, + kat3530_addinpr2, kat3530_retbits +}; +static const struct drbg_kat kat3530 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3530_t +}; + +static const unsigned char kat3531_entropyin[] = { + 0x84, 0x65, 0xf5, 0x2f, 0x8c, 0xf1, 0xc2, 0x80, 0xda, 0xf3, 0x48, 0x03, + 0xf5, 0xbe, 0xba, 0x60, 0x7d, 0xc1, 0x92, 0xb2, 0xcc, 0x99, 0xdb, 0x21, + 0x5d, 0x24, 0xe8, 0x54, 0x0d, 0x0e, 0xf7, 0x39, +}; +static const unsigned char kat3531_nonce[] = { + 0xd6, 0xb8, 0x52, 0x1d, 0x98, 0x12, 0x35, 0xfd, 0x4e, 0xc8, 0x52, 0xb7, + 0x59, 0x08, 0x1c, 0x0d, +}; +static const unsigned char kat3531_persstr[] = { + 0x8f, 0x14, 0x94, 0x04, 0xf4, 0xcf, 0x6b, 0x88, 0x93, 0x12, 0x68, 0x4f, + 0x41, 0x55, 0x46, 0x35, 0xcf, 0xb8, 0xfb, 0x43, 0x8f, 0xb0, 0x8e, 0x91, + 0x02, 0xcb, 0x68, 0x7c, 0x95, 0xe9, 0x1a, 0x0d, +}; +static const unsigned char kat3531_entropyinpr1[] = { + 0x91, 0x8a, 0x30, 0x2d, 0x6e, 0x0f, 0xb1, 0xb1, 0xa8, 0x41, 0x4c, 0xea, + 0x43, 0x98, 0xb5, 0x6c, 0x92, 0xc1, 0x43, 0xe2, 0x12, 0x04, 0xd7, 0xa2, + 0x20, 0x87, 0xa2, 0xb0, 0x26, 0x61, 0x37, 0x62, +}; +static const unsigned char kat3531_addinpr1[] = { + 0x00, 0xf2, 0x14, 0x97, 0x58, 0x66, 0x8a, 0x76, 0xcc, 0xc2, 0x61, 0x19, + 0x5b, 0xd6, 0x36, 0x52, 0x32, 0x61, 0x04, 0x7b, 0x85, 0xc4, 0xe9, 0xa6, + 0x49, 0xe6, 0xc3, 0xaa, 0x5e, 0x43, 0x86, 0x0f, +}; +static const unsigned char kat3531_entropyinpr2[] = { + 0x78, 0xb2, 0x1f, 0x28, 0x54, 0x0b, 0x07, 0x06, 0x21, 0xcf, 0x13, 0x3c, + 0x2c, 0xe6, 0xc2, 0xa8, 0xb7, 0xe1, 0x17, 0x44, 0x01, 0x67, 0x05, 0xb3, + 0x97, 0x74, 0xb3, 0x2f, 0x25, 0x8e, 0xf3, 0xcd, +}; +static const unsigned char kat3531_addinpr2[] = { + 0x21, 0xba, 0x9a, 0xba, 0xdb, 0x22, 0x94, 0x87, 0x99, 0x39, 0x9f, 0xec, + 0x93, 0x33, 0x9b, 0xed, 0xdc, 0x2f, 0x07, 0xc5, 0x76, 0xdb, 0xfc, 0xbd, + 0x07, 0x13, 0x47, 0x7f, 0xb6, 0x92, 0x74, 0x6e, +}; +static const unsigned char kat3531_retbits[] = { + 0x89, 0xce, 0xfa, 0x96, 0x1f, 0x9c, 0x17, 0xeb, 0xdf, 0xa1, 0x41, 0xdf, + 0xd5, 0x42, 0x56, 0x94, 0xcc, 0xe1, 0xc3, 0xae, 0x1b, 0x4e, 0x34, 0xe8, + 0xb9, 0xdb, 0xe6, 0x25, 0xda, 0x89, 0x00, 0x41, 0xce, 0x00, 0x22, 0xce, + 0xa5, 0x5f, 0x6f, 0x1f, 0xb1, 0x3b, 0x35, 0x01, 0x39, 0x09, 0x5f, 0x08, + 0x96, 0x02, 0x99, 0x14, 0xa7, 0x97, 0x7e, 0x10, 0xe1, 0xa9, 0x88, 0x58, + 0x8c, 0xdb, 0x67, 0x51, +}; +static const struct drbg_kat_pr_true kat3531_t = { + 5, kat3531_entropyin, kat3531_nonce, kat3531_persstr, + kat3531_entropyinpr1, kat3531_addinpr1, kat3531_entropyinpr2, + kat3531_addinpr2, kat3531_retbits +}; +static const struct drbg_kat kat3531 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3531_t +}; + +static const unsigned char kat3532_entropyin[] = { + 0xc2, 0x4a, 0x5a, 0xc7, 0xb9, 0x73, 0x11, 0x56, 0x18, 0xb3, 0x31, 0x98, + 0x00, 0xdd, 0x4e, 0x22, 0xdc, 0x53, 0x6f, 0x3c, 0xca, 0xb2, 0xca, 0x9a, + 0x2b, 0xb3, 0x2d, 0x9b, 0x17, 0x11, 0xd2, 0x61, +}; +static const unsigned char kat3532_nonce[] = { + 0xfa, 0xcb, 0x57, 0xdb, 0xbe, 0xb7, 0x3f, 0x12, 0xe5, 0x67, 0xf9, 0xa8, + 0xa0, 0x66, 0x84, 0xb1, +}; +static const unsigned char kat3532_persstr[] = { + 0xcf, 0x07, 0xba, 0x3d, 0xad, 0x1c, 0x2d, 0x02, 0x37, 0x98, 0x13, 0xa1, + 0x46, 0xe0, 0x88, 0xb2, 0x54, 0x04, 0x54, 0x5d, 0xfc, 0x7e, 0x4f, 0x7f, + 0xfc, 0x35, 0x8c, 0xa2, 0x67, 0xcd, 0x6c, 0x65, +}; +static const unsigned char kat3532_entropyinpr1[] = { + 0x91, 0xcf, 0xbc, 0x7c, 0xe1, 0x0e, 0xc3, 0x93, 0xfb, 0x6a, 0x4e, 0xcd, + 0x49, 0x52, 0x41, 0x47, 0x51, 0x54, 0x41, 0x2c, 0x59, 0xba, 0x1d, 0x18, + 0x39, 0x42, 0x23, 0xa8, 0x2c, 0x4e, 0xfb, 0x63, +}; +static const unsigned char kat3532_addinpr1[] = { + 0xa5, 0xe8, 0x86, 0xcf, 0x4a, 0x16, 0xc0, 0x33, 0xa7, 0x56, 0xcd, 0x01, + 0xc2, 0x24, 0xb6, 0x94, 0x85, 0xa6, 0x26, 0x19, 0x45, 0x49, 0x6b, 0xe4, + 0x91, 0x36, 0x48, 0xab, 0x00, 0xf3, 0xb3, 0x5c, +}; +static const unsigned char kat3532_entropyinpr2[] = { + 0xfa, 0xf1, 0x4d, 0x6f, 0x6d, 0xdb, 0x1d, 0xd9, 0xd0, 0x4a, 0x8d, 0xeb, + 0xac, 0xbc, 0x61, 0xe0, 0x60, 0x5a, 0x80, 0x1d, 0x44, 0x11, 0x87, 0xc3, + 0xee, 0x95, 0x73, 0x34, 0x49, 0xaa, 0x1e, 0x93, +}; +static const unsigned char kat3532_addinpr2[] = { + 0x12, 0x9c, 0xe3, 0xb5, 0xdf, 0x7b, 0x42, 0xa8, 0x10, 0x38, 0xe1, 0x2c, + 0x7a, 0x08, 0x18, 0x58, 0xe7, 0x84, 0x0b, 0xdd, 0x47, 0x2f, 0x10, 0x9f, + 0x16, 0x71, 0xc7, 0x9f, 0x6f, 0xf9, 0x8c, 0x2d, +}; +static const unsigned char kat3532_retbits[] = { + 0xdd, 0x37, 0x29, 0xc1, 0xc6, 0x58, 0x26, 0xe6, 0x8d, 0x8f, 0x2b, 0x79, + 0x06, 0xb0, 0xf1, 0xa4, 0xc2, 0x12, 0x30, 0x43, 0x67, 0x24, 0x24, 0x63, + 0x91, 0x22, 0x3d, 0x3b, 0x61, 0xa5, 0x05, 0x00, 0x67, 0xee, 0xde, 0x65, + 0x79, 0x88, 0x55, 0xde, 0x8a, 0xa0, 0xdc, 0xa6, 0xcf, 0xb0, 0x49, 0xff, + 0xe8, 0x4a, 0x1f, 0xeb, 0xc7, 0xe9, 0xfe, 0x65, 0xff, 0x17, 0x2a, 0x1a, + 0x06, 0xdf, 0xe8, 0x72, +}; +static const struct drbg_kat_pr_true kat3532_t = { + 6, kat3532_entropyin, kat3532_nonce, kat3532_persstr, + kat3532_entropyinpr1, kat3532_addinpr1, kat3532_entropyinpr2, + kat3532_addinpr2, kat3532_retbits +}; +static const struct drbg_kat kat3532 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3532_t +}; + +static const unsigned char kat3533_entropyin[] = { + 0x7e, 0x22, 0x68, 0x53, 0x9f, 0x62, 0x6c, 0x43, 0x1a, 0xab, 0x9a, 0x5f, + 0x12, 0xa1, 0xe6, 0x4e, 0x1b, 0xd8, 0x1c, 0x2e, 0x05, 0xe8, 0x4b, 0x8a, + 0x1d, 0x8f, 0x1a, 0xe6, 0x54, 0x52, 0x3f, 0x25, +}; +static const unsigned char kat3533_nonce[] = { + 0x0f, 0x63, 0x99, 0xfe, 0x56, 0x02, 0xb8, 0x74, 0x73, 0xd8, 0xf9, 0xd4, + 0xd3, 0xac, 0x9b, 0x52, +}; +static const unsigned char kat3533_persstr[] = { + 0xc8, 0x5a, 0xe1, 0x94, 0xe9, 0xaf, 0xaa, 0xdb, 0xaa, 0x7a, 0x1d, 0x2c, + 0xb1, 0x4e, 0xef, 0x49, 0xeb, 0x5a, 0x3f, 0x8a, 0x45, 0x23, 0x48, 0x96, + 0x45, 0x23, 0x01, 0x11, 0xbc, 0x01, 0x5e, 0xec, +}; +static const unsigned char kat3533_entropyinpr1[] = { + 0x9e, 0x65, 0x80, 0x32, 0x91, 0x38, 0xc2, 0x5b, 0x9a, 0x65, 0x1f, 0x0f, + 0xfb, 0x99, 0x9d, 0x5c, 0xf0, 0x2f, 0xf3, 0xa3, 0x33, 0x34, 0x49, 0x24, + 0x27, 0xa2, 0xfc, 0x94, 0xba, 0x9f, 0x36, 0x13, +}; +static const unsigned char kat3533_addinpr1[] = { + 0x1a, 0x7b, 0x50, 0x47, 0xc0, 0x56, 0x30, 0xc4, 0xff, 0x15, 0x05, 0x4e, + 0xf2, 0xe3, 0x69, 0x68, 0x08, 0xc1, 0xc6, 0xd1, 0x39, 0x3e, 0xec, 0x4e, + 0x85, 0xa2, 0xc0, 0x33, 0xf8, 0x24, 0x18, 0xe4, +}; +static const unsigned char kat3533_entropyinpr2[] = { + 0x7f, 0x75, 0x69, 0x81, 0x34, 0xa0, 0xa2, 0xdc, 0xbf, 0xfc, 0x82, 0xd5, + 0x7c, 0xdf, 0x40, 0x3b, 0x01, 0x42, 0x0b, 0x5b, 0x7a, 0x59, 0xaf, 0xfd, + 0x67, 0xb7, 0x7b, 0x7b, 0x1a, 0xdf, 0xcc, 0x82, +}; +static const unsigned char kat3533_addinpr2[] = { + 0x9f, 0x6f, 0x40, 0xc3, 0xe9, 0x35, 0x1c, 0xfc, 0x1c, 0x51, 0x72, 0xe4, + 0xf7, 0x13, 0xca, 0x96, 0xb3, 0xc1, 0x84, 0xe9, 0xa6, 0x9b, 0xe6, 0xc8, + 0xf4, 0xff, 0x54, 0x02, 0xb0, 0xe8, 0xf4, 0x8b, +}; +static const unsigned char kat3533_retbits[] = { + 0x92, 0x40, 0x83, 0x70, 0x60, 0xff, 0xd6, 0x04, 0xb3, 0xbb, 0x7f, 0x35, + 0xee, 0x68, 0xf3, 0x4b, 0x84, 0x4d, 0xea, 0xd7, 0xa8, 0x9d, 0xe5, 0x79, + 0xba, 0x1f, 0xd4, 0xec, 0xb1, 0x62, 0x5e, 0x85, 0x6b, 0x5e, 0x53, 0xce, + 0xe4, 0x90, 0xe3, 0x64, 0x82, 0x77, 0x41, 0x5b, 0xe7, 0x48, 0x29, 0x50, + 0xce, 0xb5, 0xbb, 0xea, 0xd0, 0x27, 0xfe, 0x36, 0xa9, 0xe1, 0x08, 0xb7, + 0xae, 0x9a, 0x7f, 0x6a, +}; +static const struct drbg_kat_pr_true kat3533_t = { + 7, kat3533_entropyin, kat3533_nonce, kat3533_persstr, + kat3533_entropyinpr1, kat3533_addinpr1, kat3533_entropyinpr2, + kat3533_addinpr2, kat3533_retbits +}; +static const struct drbg_kat kat3533 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3533_t +}; + +static const unsigned char kat3534_entropyin[] = { + 0x26, 0x57, 0xfb, 0xae, 0x48, 0x11, 0x44, 0x4d, 0xa8, 0x6f, 0xba, 0xb9, + 0xc5, 0x0b, 0xb8, 0x93, 0xed, 0xd5, 0xdc, 0x93, 0x68, 0x27, 0xbe, 0xbc, + 0x05, 0x17, 0x01, 0x15, 0xab, 0x03, 0x9c, 0x79, +}; +static const unsigned char kat3534_nonce[] = { + 0xd0, 0x00, 0x4a, 0xc3, 0x9d, 0x19, 0x74, 0x48, 0xcb, 0xad, 0x72, 0x6d, + 0x79, 0xca, 0xc9, 0x8f, +}; +static const unsigned char kat3534_persstr[] = { + 0xe5, 0x58, 0x04, 0xe2, 0x58, 0x14, 0xcd, 0xa1, 0x7d, 0x63, 0x5f, 0xa0, + 0x49, 0x6a, 0xf0, 0x6e, 0x9f, 0x33, 0x5c, 0xdf, 0x3d, 0x37, 0xe8, 0x7f, + 0x49, 0xbf, 0x9c, 0xda, 0x96, 0xac, 0x7d, 0x49, +}; +static const unsigned char kat3534_entropyinpr1[] = { + 0x29, 0xda, 0xcc, 0x26, 0xd4, 0x89, 0x05, 0x9f, 0x4d, 0xde, 0xc6, 0x28, + 0x03, 0x91, 0x69, 0x02, 0x67, 0x02, 0x67, 0xd8, 0x32, 0x5d, 0xe3, 0x14, + 0xde, 0xe3, 0x0f, 0x49, 0xb8, 0x9f, 0xf9, 0x1d, +}; +static const unsigned char kat3534_addinpr1[] = { + 0x29, 0xfd, 0x36, 0x31, 0x34, 0x57, 0xfa, 0xd5, 0x6d, 0xbc, 0x11, 0x06, + 0x2f, 0xc8, 0xf7, 0x57, 0x6c, 0x0e, 0x5f, 0x38, 0xea, 0xf0, 0xb2, 0x64, + 0xb1, 0x65, 0xf4, 0xce, 0x64, 0xe3, 0xfb, 0xd0, +}; +static const unsigned char kat3534_entropyinpr2[] = { + 0x5b, 0x83, 0xa4, 0xf2, 0x1c, 0x4d, 0x70, 0x7c, 0x58, 0x00, 0x7d, 0x04, + 0x78, 0x1a, 0x97, 0x2b, 0x5a, 0xbb, 0x87, 0x81, 0x16, 0x85, 0x67, 0x79, + 0xfe, 0xd9, 0xe6, 0xe3, 0xb9, 0xe4, 0x4a, 0x50, +}; +static const unsigned char kat3534_addinpr2[] = { + 0xc0, 0xbc, 0x83, 0x19, 0xac, 0x31, 0x6a, 0xe6, 0xf7, 0x1f, 0x7c, 0x51, + 0x79, 0x36, 0x33, 0x58, 0x88, 0x32, 0x73, 0x3b, 0x7b, 0x53, 0x08, 0xf2, + 0xab, 0x3e, 0xaf, 0x0e, 0x3e, 0xbc, 0xd8, 0x7e, +}; +static const unsigned char kat3534_retbits[] = { + 0x36, 0xaf, 0x67, 0xb5, 0x7a, 0x2c, 0xd2, 0xde, 0x35, 0x38, 0xcd, 0x1a, + 0x60, 0x28, 0xa4, 0x97, 0xf3, 0x32, 0x36, 0x6f, 0x35, 0x83, 0x04, 0x0d, + 0x87, 0x53, 0x22, 0x2d, 0x14, 0x91, 0xfb, 0x8f, 0x03, 0xdb, 0x97, 0xb0, + 0x8c, 0xa0, 0x29, 0xa1, 0xbb, 0x2e, 0x4d, 0xf8, 0xed, 0x50, 0xeb, 0x00, + 0x3d, 0x5d, 0x68, 0xe1, 0x5b, 0x23, 0xe9, 0xa4, 0x79, 0xef, 0x78, 0x17, + 0x33, 0x15, 0x76, 0xb7, +}; +static const struct drbg_kat_pr_true kat3534_t = { + 8, kat3534_entropyin, kat3534_nonce, kat3534_persstr, + kat3534_entropyinpr1, kat3534_addinpr1, kat3534_entropyinpr2, + kat3534_addinpr2, kat3534_retbits +}; +static const struct drbg_kat kat3534 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3534_t +}; + +static const unsigned char kat3535_entropyin[] = { + 0x08, 0xb2, 0x32, 0x31, 0x9b, 0xbc, 0xd5, 0xbd, 0xf2, 0x72, 0xe3, 0xa0, + 0xd4, 0x11, 0x66, 0x6b, 0x56, 0x76, 0xa0, 0x3d, 0xf6, 0xfa, 0x53, 0xa3, + 0xba, 0x71, 0xcb, 0xb5, 0x40, 0x72, 0x42, 0xcc, +}; +static const unsigned char kat3535_nonce[] = { + 0x91, 0x9b, 0xfe, 0x07, 0x75, 0xd2, 0x73, 0xfb, 0x20, 0x61, 0x3d, 0xbe, + 0xc0, 0xc1, 0x8c, 0x6b, +}; +static const unsigned char kat3535_persstr[] = { + 0xe8, 0x3a, 0xe8, 0xa5, 0x2b, 0x77, 0x8b, 0x26, 0x7f, 0x67, 0x32, 0x2f, + 0xf3, 0x89, 0xcf, 0x4e, 0xa5, 0xab, 0x5d, 0x2d, 0x83, 0x57, 0xea, 0x0a, + 0x81, 0x60, 0x4a, 0x7c, 0xe4, 0x99, 0x6e, 0x16, +}; +static const unsigned char kat3535_entropyinpr1[] = { + 0x8a, 0xf2, 0xc7, 0xc2, 0x06, 0x50, 0x85, 0x68, 0x83, 0x43, 0x21, 0x0b, + 0xe7, 0x79, 0x1e, 0xbb, 0x71, 0x41, 0x9e, 0xa2, 0x6b, 0x08, 0x2a, 0x28, + 0x94, 0x98, 0x00, 0x87, 0xb0, 0x86, 0x28, 0x81, +}; +static const unsigned char kat3535_addinpr1[] = { + 0xcd, 0x25, 0xd8, 0xc7, 0x88, 0x42, 0xe4, 0x0d, 0x86, 0x07, 0xd3, 0x50, + 0x00, 0x42, 0xed, 0x20, 0xf1, 0xe0, 0x1f, 0xeb, 0xce, 0x4f, 0x86, 0x28, + 0xd4, 0x25, 0x5d, 0xd3, 0xdb, 0x55, 0x37, 0x5a, +}; +static const unsigned char kat3535_entropyinpr2[] = { + 0x73, 0x45, 0xa5, 0x69, 0x45, 0x6c, 0x05, 0xfb, 0x62, 0x5e, 0x36, 0xd1, + 0x7a, 0xf7, 0x1f, 0x83, 0xd9, 0xbc, 0xc4, 0x26, 0x49, 0x40, 0x4c, 0xa8, + 0x0d, 0x22, 0x79, 0x86, 0x59, 0xc8, 0xd4, 0xc3, +}; +static const unsigned char kat3535_addinpr2[] = { + 0xe2, 0xcd, 0x69, 0x96, 0xb8, 0x3a, 0x75, 0x5a, 0x66, 0xbb, 0xca, 0x24, + 0x87, 0x86, 0x73, 0x0c, 0xfe, 0xc7, 0xb4, 0x33, 0x0c, 0x63, 0x38, 0x1f, + 0x1f, 0x46, 0x56, 0x22, 0xc0, 0xbb, 0xef, 0x51, +}; +static const unsigned char kat3535_retbits[] = { + 0xf8, 0xf4, 0x29, 0xec, 0xb5, 0x99, 0xa8, 0x8f, 0x25, 0xca, 0xe9, 0xa9, + 0x0b, 0xf4, 0x48, 0x71, 0x0e, 0x9f, 0x5b, 0xd9, 0x0f, 0x42, 0xc9, 0x36, + 0xeb, 0xcd, 0xc8, 0xcd, 0xcf, 0x36, 0xd9, 0x04, 0x3c, 0x64, 0xa8, 0x13, + 0x61, 0xc1, 0x2a, 0x67, 0xc2, 0xf4, 0x80, 0x60, 0x30, 0x81, 0xc1, 0x9f, + 0x64, 0xef, 0xda, 0x61, 0x86, 0x71, 0x4b, 0xa4, 0x4d, 0x08, 0x3c, 0x60, + 0xcb, 0xb7, 0xfb, 0x47, +}; +static const struct drbg_kat_pr_true kat3535_t = { + 9, kat3535_entropyin, kat3535_nonce, kat3535_persstr, + kat3535_entropyinpr1, kat3535_addinpr1, kat3535_entropyinpr2, + kat3535_addinpr2, kat3535_retbits +}; +static const struct drbg_kat kat3535 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3535_t +}; + +static const unsigned char kat3536_entropyin[] = { + 0x78, 0x3c, 0x02, 0x85, 0x00, 0x9f, 0x20, 0x46, 0x52, 0x36, 0x86, 0xe3, + 0xa6, 0x00, 0xea, 0x95, 0x84, 0x72, 0x76, 0x76, 0x4d, 0x57, 0xe8, 0xff, + 0x1c, 0xde, 0x26, 0xe9, 0xef, 0x2b, 0x8e, 0x04, +}; +static const unsigned char kat3536_nonce[] = { + 0xce, 0x5a, 0x19, 0x9d, 0x4b, 0xe8, 0xed, 0x1e, 0xa6, 0xdf, 0x26, 0x0b, + 0x1a, 0x91, 0x17, 0xbf, +}; +static const unsigned char kat3536_persstr[] = { + 0xa2, 0xbe, 0x1b, 0x21, 0xfd, 0x13, 0xef, 0xc5, 0x53, 0x2f, 0xba, 0xb1, + 0xa2, 0x82, 0x70, 0xb2, 0x01, 0xb4, 0xa6, 0xe6, 0x5c, 0x79, 0x6e, 0x22, + 0xb2, 0x76, 0x58, 0xb1, 0xa3, 0x78, 0xe6, 0xa7, +}; +static const unsigned char kat3536_entropyinpr1[] = { + 0x05, 0x84, 0x19, 0x48, 0x53, 0x9e, 0x4b, 0xcc, 0xc1, 0x5d, 0x6b, 0x70, + 0xe4, 0x0e, 0x30, 0xad, 0x0e, 0x8b, 0x21, 0xc9, 0xec, 0x0d, 0x4b, 0x01, + 0x5a, 0x2a, 0x56, 0x89, 0x61, 0xe3, 0x67, 0xed, +}; +static const unsigned char kat3536_addinpr1[] = { + 0x3e, 0x40, 0x9f, 0x02, 0x06, 0x08, 0x86, 0xce, 0xbe, 0xc3, 0x08, 0x10, + 0x63, 0x08, 0x53, 0x39, 0x0c, 0x88, 0xae, 0x31, 0xa6, 0x1a, 0x30, 0xb4, + 0x9c, 0x42, 0x35, 0x27, 0x47, 0xa1, 0x9e, 0xc8, +}; +static const unsigned char kat3536_entropyinpr2[] = { + 0x18, 0x3a, 0x46, 0x12, 0x79, 0x34, 0x8e, 0x3e, 0x46, 0x29, 0x63, 0x72, + 0x01, 0xa1, 0x1a, 0x1e, 0x40, 0xed, 0xc8, 0xfc, 0x18, 0x1c, 0xc8, 0x92, + 0x24, 0x61, 0x26, 0x61, 0xae, 0x17, 0x2a, 0x1f, +}; +static const unsigned char kat3536_addinpr2[] = { + 0x1e, 0x09, 0x58, 0xa5, 0x5a, 0x40, 0x53, 0xe1, 0xf6, 0x48, 0x3c, 0x94, + 0x3d, 0xbc, 0xfb, 0x60, 0x9d, 0x03, 0x76, 0xf2, 0x6b, 0xf0, 0x0d, 0x90, + 0xd6, 0x78, 0x79, 0x31, 0x04, 0x77, 0x16, 0xf6, +}; +static const unsigned char kat3536_retbits[] = { + 0x20, 0x2e, 0x9e, 0xae, 0x40, 0xf4, 0xdb, 0xcc, 0xa6, 0x74, 0x83, 0x9d, + 0x26, 0xaa, 0x96, 0xe0, 0x1e, 0x77, 0x86, 0xaf, 0xde, 0x1b, 0xaa, 0x97, + 0xd1, 0x27, 0x01, 0x08, 0x9e, 0xd6, 0xe7, 0x14, 0x5f, 0x96, 0xad, 0x68, + 0x5c, 0x06, 0xee, 0x6a, 0x3c, 0xc2, 0xca, 0xc3, 0x1f, 0xd3, 0x5e, 0xb1, + 0x84, 0x16, 0x0c, 0xd3, 0xac, 0xb2, 0x6b, 0xce, 0xe7, 0xd3, 0xf9, 0x1b, + 0x99, 0x57, 0x61, 0xb2, +}; +static const struct drbg_kat_pr_true kat3536_t = { + 10, kat3536_entropyin, kat3536_nonce, kat3536_persstr, + kat3536_entropyinpr1, kat3536_addinpr1, kat3536_entropyinpr2, + kat3536_addinpr2, kat3536_retbits +}; +static const struct drbg_kat kat3536 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3536_t +}; + +static const unsigned char kat3537_entropyin[] = { + 0x80, 0x48, 0x95, 0x7c, 0xf9, 0x60, 0x60, 0x74, 0xee, 0x6d, 0x39, 0x43, + 0x30, 0x5c, 0x17, 0xa0, 0xb2, 0x81, 0x81, 0xb9, 0x07, 0x69, 0xf5, 0xd9, + 0x3a, 0x5a, 0x98, 0xa2, 0x31, 0xa0, 0x37, 0xa4, +}; +static const unsigned char kat3537_nonce[] = { + 0x7e, 0x32, 0xfa, 0xa0, 0x25, 0xd5, 0xb1, 0xe3, 0xfe, 0x36, 0x6d, 0xa5, + 0xb4, 0xc4, 0x07, 0xa3, +}; +static const unsigned char kat3537_persstr[] = { + 0x65, 0xab, 0x0a, 0x82, 0x13, 0x7f, 0xdd, 0x84, 0xe9, 0x85, 0xf5, 0x74, + 0x81, 0x85, 0x97, 0x9f, 0x42, 0x18, 0x01, 0x0c, 0x03, 0x6d, 0x72, 0xfe, + 0xab, 0x40, 0xb3, 0x82, 0x71, 0xca, 0x04, 0x93, +}; +static const unsigned char kat3537_entropyinpr1[] = { + 0xa4, 0x44, 0x39, 0x0d, 0xe2, 0x43, 0xb6, 0x11, 0x88, 0x56, 0x70, 0x83, + 0xf5, 0xdd, 0xac, 0x45, 0xce, 0x0a, 0x07, 0xf1, 0xd7, 0xe0, 0x77, 0x8c, + 0xc4, 0xa9, 0xa4, 0x4d, 0xfc, 0xe5, 0x24, 0xd3, +}; +static const unsigned char kat3537_addinpr1[] = { + 0x1b, 0x7b, 0x3c, 0xff, 0xb5, 0x6b, 0x5a, 0x86, 0xa9, 0xce, 0x9b, 0x71, + 0x24, 0x0f, 0xc3, 0xe0, 0x32, 0xda, 0x7f, 0x83, 0xb3, 0x47, 0x82, 0xbd, + 0x6b, 0x7d, 0x53, 0xd8, 0x6c, 0x00, 0xfe, 0xe6, +}; +static const unsigned char kat3537_entropyinpr2[] = { + 0x4b, 0x1e, 0x9b, 0x9f, 0xf3, 0x7e, 0xc8, 0xe5, 0x16, 0x0c, 0xfd, 0xc9, + 0x8a, 0x45, 0xbf, 0x12, 0x92, 0x22, 0x43, 0x47, 0xc0, 0x95, 0xfc, 0xd3, + 0x06, 0xac, 0xee, 0x22, 0x56, 0xd3, 0x50, 0xce, +}; +static const unsigned char kat3537_addinpr2[] = { + 0x28, 0x29, 0xb1, 0x93, 0x67, 0xff, 0x15, 0x2d, 0x6e, 0x43, 0xad, 0x30, + 0x8e, 0x77, 0x6f, 0xea, 0x64, 0x66, 0x62, 0xe2, 0x15, 0xb3, 0x28, 0x76, + 0x0b, 0x09, 0xf7, 0xe1, 0x13, 0x26, 0x18, 0xdd, +}; +static const unsigned char kat3537_retbits[] = { + 0x4c, 0x00, 0x08, 0x3e, 0x35, 0x8d, 0xca, 0x53, 0x13, 0x79, 0x40, 0xfc, + 0x21, 0x8b, 0xe6, 0x59, 0xd7, 0xc1, 0x12, 0x46, 0x6f, 0x17, 0x5d, 0x99, + 0xe5, 0xd9, 0x73, 0x81, 0xeb, 0x71, 0x91, 0x2d, 0x56, 0x09, 0xd8, 0x26, + 0xae, 0xa0, 0x83, 0x8b, 0x64, 0x71, 0x5e, 0x22, 0x6e, 0xb7, 0xa8, 0x7b, + 0xcd, 0x86, 0x82, 0x43, 0xe6, 0x25, 0x90, 0xd6, 0xa1, 0xab, 0x6c, 0x60, + 0xd7, 0x14, 0x70, 0x6c, +}; +static const struct drbg_kat_pr_true kat3537_t = { + 11, kat3537_entropyin, kat3537_nonce, kat3537_persstr, + kat3537_entropyinpr1, kat3537_addinpr1, kat3537_entropyinpr2, + kat3537_addinpr2, kat3537_retbits +}; +static const struct drbg_kat kat3537 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3537_t +}; + +static const unsigned char kat3538_entropyin[] = { + 0xfd, 0xf6, 0xfb, 0xda, 0x2e, 0x50, 0x0d, 0x5a, 0x0b, 0xa6, 0x9a, 0xa2, + 0x8a, 0x70, 0x76, 0xd8, 0x6b, 0x68, 0x1d, 0x08, 0x52, 0x23, 0x6f, 0x70, + 0x84, 0xec, 0xa9, 0x90, 0x77, 0xe5, 0x4e, 0x34, +}; +static const unsigned char kat3538_nonce[] = { + 0xca, 0xe5, 0xa2, 0x38, 0xa0, 0xab, 0x8a, 0x2b, 0x34, 0x32, 0x93, 0x86, + 0x3d, 0x1d, 0xe2, 0xa7, +}; +static const unsigned char kat3538_persstr[] = { + 0xa9, 0xa2, 0x12, 0x42, 0xd9, 0xa1, 0x8f, 0x7f, 0xd3, 0x4c, 0x42, 0x62, + 0x06, 0xb6, 0xb7, 0x50, 0xf1, 0x07, 0x7c, 0xd6, 0x2b, 0x6a, 0x02, 0x3b, + 0x46, 0x3c, 0x08, 0x60, 0xf1, 0x19, 0x63, 0x8d, +}; +static const unsigned char kat3538_entropyinpr1[] = { + 0x75, 0x6e, 0x91, 0xf8, 0x4a, 0x66, 0x8b, 0x65, 0x10, 0x9f, 0xd0, 0xda, + 0xa9, 0xe4, 0x1a, 0x29, 0x26, 0x85, 0x5d, 0xe0, 0x31, 0xa7, 0xca, 0xa9, + 0xeb, 0xb6, 0xf8, 0x0e, 0x55, 0xb1, 0xd7, 0x91, +}; +static const unsigned char kat3538_addinpr1[] = { + 0xf5, 0x01, 0x9b, 0x81, 0x2f, 0xcb, 0xcb, 0xcc, 0x0d, 0x6a, 0xac, 0x91, + 0x3f, 0x04, 0x77, 0xa5, 0xd0, 0x8b, 0x50, 0xd6, 0x94, 0xd7, 0x9c, 0x48, + 0x13, 0x8a, 0x35, 0xf8, 0xfc, 0x28, 0x6a, 0xdb, +}; +static const unsigned char kat3538_entropyinpr2[] = { + 0xae, 0x66, 0xfa, 0xce, 0xb5, 0x4b, 0x68, 0x94, 0x1f, 0x35, 0x12, 0xbf, + 0xdb, 0xc0, 0x06, 0xfd, 0x2c, 0x1e, 0xdb, 0xde, 0x81, 0xcf, 0x1d, 0x21, + 0x6e, 0x1a, 0xcc, 0x2d, 0xd9, 0x59, 0x81, 0x38, +}; +static const unsigned char kat3538_addinpr2[] = { + 0x49, 0x09, 0xd2, 0x35, 0xc2, 0x1f, 0x5e, 0x2d, 0x9f, 0xf1, 0x2e, 0xe9, + 0xce, 0x78, 0x9c, 0xc9, 0x67, 0xf3, 0x5a, 0x88, 0xc7, 0xc1, 0xb1, 0x8e, + 0x60, 0xe7, 0xd7, 0x1c, 0x93, 0x5b, 0x2c, 0x62, +}; +static const unsigned char kat3538_retbits[] = { + 0xf5, 0xa5, 0xbc, 0x69, 0x79, 0x7d, 0x03, 0xda, 0x9e, 0x31, 0x37, 0x59, + 0x71, 0x7c, 0x5f, 0xf4, 0xc4, 0xee, 0xce, 0x3c, 0xaf, 0x35, 0x04, 0x49, + 0x0e, 0x80, 0xca, 0x56, 0x7a, 0xb1, 0x6f, 0x3c, 0xf7, 0xb5, 0x78, 0x77, + 0xbc, 0x0d, 0x0f, 0x76, 0x58, 0x26, 0xb7, 0x45, 0x1c, 0x34, 0x54, 0xc7, + 0xef, 0xd4, 0x82, 0x31, 0xda, 0xb5, 0xac, 0x84, 0x0d, 0x1d, 0xdb, 0x04, + 0xfb, 0xaa, 0x8b, 0x68, +}; +static const struct drbg_kat_pr_true kat3538_t = { + 12, kat3538_entropyin, kat3538_nonce, kat3538_persstr, + kat3538_entropyinpr1, kat3538_addinpr1, kat3538_entropyinpr2, + kat3538_addinpr2, kat3538_retbits +}; +static const struct drbg_kat kat3538 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3538_t +}; + +static const unsigned char kat3539_entropyin[] = { + 0x6e, 0x10, 0x64, 0xee, 0x9e, 0x80, 0x81, 0xba, 0x9f, 0x12, 0xfa, 0x15, + 0xa1, 0x4e, 0x72, 0xa5, 0x6a, 0x0b, 0xc4, 0x19, 0x6a, 0x96, 0x5a, 0x92, + 0xf0, 0x25, 0x37, 0xe8, 0x11, 0xbf, 0x2f, 0xa1, +}; +static const unsigned char kat3539_nonce[] = { + 0x67, 0x3d, 0xff, 0x90, 0xad, 0x32, 0x8c, 0x32, 0x3a, 0x1c, 0x24, 0x9b, + 0xa5, 0xd8, 0x73, 0xa7, +}; +static const unsigned char kat3539_persstr[] = { + 0x99, 0xd5, 0x5d, 0x70, 0x54, 0x56, 0xc2, 0x12, 0x63, 0x8c, 0xe6, 0x57, + 0xd9, 0x27, 0x5d, 0x9a, 0x81, 0xfa, 0x91, 0x2c, 0x9f, 0x67, 0xed, 0x62, + 0x74, 0xb6, 0x23, 0x96, 0x25, 0x73, 0xb7, 0xa1, +}; +static const unsigned char kat3539_entropyinpr1[] = { + 0x07, 0xb4, 0x48, 0x9c, 0x54, 0x5f, 0x1f, 0xbf, 0x4c, 0x71, 0x58, 0xfc, + 0x47, 0x2a, 0x5b, 0x65, 0x98, 0x54, 0x06, 0x83, 0xab, 0xff, 0xac, 0x61, + 0x5c, 0x5a, 0x64, 0x58, 0x7b, 0xb8, 0x2e, 0xfc, +}; +static const unsigned char kat3539_addinpr1[] = { + 0xb9, 0x96, 0xe1, 0xdd, 0x92, 0xcc, 0x27, 0x01, 0xe3, 0x6c, 0xdc, 0xc6, + 0x92, 0xa7, 0x81, 0xd0, 0x88, 0x96, 0x47, 0xa5, 0xd3, 0x20, 0x8f, 0x41, + 0xea, 0x72, 0x7c, 0x6d, 0x24, 0x1d, 0xe1, 0x1d, +}; +static const unsigned char kat3539_entropyinpr2[] = { + 0x6c, 0x70, 0x89, 0x32, 0xa8, 0x0d, 0x37, 0x43, 0xb2, 0x6f, 0xa3, 0x71, + 0xf3, 0xc4, 0xc2, 0x48, 0x9b, 0xfd, 0x89, 0x8e, 0xc2, 0x25, 0x78, 0x2f, + 0xf1, 0x17, 0x9d, 0xc0, 0x87, 0x4b, 0xb9, 0x49, +}; +static const unsigned char kat3539_addinpr2[] = { + 0x5c, 0xc2, 0x8e, 0x4d, 0x5b, 0xf1, 0x91, 0x0f, 0xd8, 0x8f, 0x92, 0x01, + 0xac, 0xab, 0x65, 0xb5, 0xa2, 0x77, 0xde, 0x2d, 0xdf, 0x52, 0x86, 0x85, + 0x28, 0xd9, 0x9d, 0x12, 0xd5, 0x80, 0x45, 0x3a, +}; +static const unsigned char kat3539_retbits[] = { + 0xfb, 0x1c, 0x03, 0xf8, 0xc8, 0x08, 0xf9, 0x8e, 0x85, 0x77, 0x54, 0x1b, + 0x04, 0x61, 0x98, 0x72, 0x0f, 0xfc, 0xa4, 0x4e, 0xbb, 0x85, 0xa4, 0xa0, + 0x73, 0x19, 0x8b, 0x17, 0x02, 0x99, 0x90, 0x6e, 0x0c, 0x1b, 0x19, 0xcc, + 0x88, 0x46, 0xff, 0x38, 0xbb, 0x67, 0xfe, 0xd1, 0xef, 0x2c, 0x49, 0x18, + 0x3e, 0x91, 0x89, 0xb4, 0x5e, 0x5b, 0xb4, 0xb0, 0x96, 0x7a, 0xed, 0xae, + 0x6d, 0x23, 0xa5, 0x8a, +}; +static const struct drbg_kat_pr_true kat3539_t = { + 13, kat3539_entropyin, kat3539_nonce, kat3539_persstr, + kat3539_entropyinpr1, kat3539_addinpr1, kat3539_entropyinpr2, + kat3539_addinpr2, kat3539_retbits +}; +static const struct drbg_kat kat3539 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3539_t +}; + +static const unsigned char kat3540_entropyin[] = { + 0x12, 0x95, 0x93, 0xff, 0x41, 0x86, 0xcd, 0x0a, 0x39, 0x98, 0xcf, 0xad, + 0x1c, 0xce, 0x16, 0x5b, 0xc2, 0x60, 0x0b, 0x4f, 0x72, 0xcd, 0x35, 0x9e, + 0xb9, 0x61, 0x49, 0x73, 0xd8, 0x44, 0xf3, 0x54, +}; +static const unsigned char kat3540_nonce[] = { + 0xab, 0x7f, 0x73, 0xef, 0x5f, 0x12, 0xe2, 0x00, 0x51, 0x93, 0xa3, 0x0e, + 0xc8, 0x71, 0x44, 0x43, +}; +static const unsigned char kat3540_persstr[] = { + 0xf8, 0x35, 0x8e, 0x83, 0x26, 0xc7, 0xee, 0xb7, 0xec, 0x04, 0xdf, 0xbe, + 0x07, 0x5c, 0x15, 0xdb, 0xa6, 0x64, 0x2d, 0x29, 0x52, 0x7a, 0x1a, 0x06, + 0x62, 0x04, 0x49, 0xef, 0xa7, 0x73, 0x8a, 0x42, +}; +static const unsigned char kat3540_entropyinpr1[] = { + 0x13, 0x0e, 0x77, 0x68, 0x11, 0xa9, 0xad, 0x54, 0x6c, 0xbd, 0x88, 0xc4, + 0xe2, 0x10, 0x54, 0x2f, 0x69, 0x8d, 0x4b, 0x3d, 0x1e, 0x71, 0x73, 0x90, + 0x99, 0x13, 0x3f, 0x8c, 0x62, 0x0e, 0x21, 0xe7, +}; +static const unsigned char kat3540_addinpr1[] = { + 0x44, 0x03, 0x91, 0xfd, 0x91, 0x3a, 0x12, 0x44, 0xf0, 0xdc, 0x7c, 0xc5, + 0x11, 0xa9, 0x68, 0xff, 0xed, 0x70, 0x9b, 0x4e, 0xdd, 0x8d, 0x24, 0x08, + 0x82, 0x74, 0x41, 0x65, 0x90, 0x62, 0x39, 0xd3, +}; +static const unsigned char kat3540_entropyinpr2[] = { + 0x0c, 0x15, 0xcf, 0x3b, 0x8d, 0x2f, 0x82, 0x6c, 0x5d, 0x04, 0xd5, 0x5e, + 0x1e, 0xfb, 0x17, 0x8b, 0xe9, 0x10, 0xf7, 0x17, 0xb6, 0x4b, 0x05, 0x26, + 0xed, 0x44, 0x9e, 0x45, 0x45, 0xf7, 0xe8, 0xa4, +}; +static const unsigned char kat3540_addinpr2[] = { + 0x9a, 0x55, 0xd6, 0x83, 0x12, 0x3e, 0x51, 0xc9, 0x5d, 0xb2, 0xa7, 0x74, + 0xa4, 0xff, 0x0c, 0x52, 0x74, 0xc1, 0x23, 0x68, 0x23, 0x7b, 0xc1, 0x1a, + 0xb0, 0x7f, 0x03, 0x1c, 0x8a, 0xa0, 0xd7, 0x05, +}; +static const unsigned char kat3540_retbits[] = { + 0x40, 0xd6, 0xb6, 0x9f, 0xd1, 0x4a, 0x20, 0x02, 0xe5, 0x3c, 0x68, 0x4c, + 0x76, 0xad, 0x79, 0x4d, 0xd6, 0xba, 0x07, 0x69, 0x8d, 0x94, 0x1d, 0x72, + 0x7a, 0x99, 0x7d, 0x3b, 0x3b, 0xa1, 0x17, 0xc2, 0xbe, 0xab, 0x5d, 0x67, + 0x59, 0x05, 0x8c, 0x0c, 0x9e, 0x46, 0x12, 0x6b, 0x56, 0xd6, 0xc7, 0x53, + 0xba, 0xa3, 0x1e, 0x9e, 0xc2, 0xc5, 0x7b, 0x1d, 0xcf, 0xda, 0xd8, 0x78, + 0x99, 0x88, 0x3a, 0xd9, +}; +static const struct drbg_kat_pr_true kat3540_t = { + 14, kat3540_entropyin, kat3540_nonce, kat3540_persstr, + kat3540_entropyinpr1, kat3540_addinpr1, kat3540_entropyinpr2, + kat3540_addinpr2, kat3540_retbits +}; +static const struct drbg_kat kat3540 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3540_t +}; + +static const unsigned char kat3541_entropyin[] = { + 0x11, 0xc1, 0xe5, 0xa6, 0xf8, 0x4f, 0x57, 0x33, 0xb7, 0x7d, 0x1f, 0x0a, + 0xe4, 0xfc, 0x38, 0xa0, 0x7e, 0x8c, 0xad, 0x9f, 0xc0, 0xab, 0x98, 0x7b, + 0xfe, 0x07, 0x19, 0x47, 0xa5, 0x4e, 0x2c, 0xad, +}; +static const unsigned char kat3541_nonce[] = { + 0x68, 0xef, 0x00, 0xf2, 0x2b, 0x20, 0xf3, 0x15, 0x86, 0x73, 0xc8, 0x9a, + 0xc9, 0x6a, 0x55, 0xf2, +}; +static const unsigned char kat3541_persstr[] = {0}; +static const unsigned char kat3541_entropyinpr1[] = { + 0x0b, 0xd0, 0x55, 0x2e, 0x81, 0x2f, 0xff, 0x18, 0xc5, 0x32, 0xbb, 0x57, + 0xcb, 0x62, 0xb9, 0x2a, 0x4e, 0x61, 0xe3, 0xe9, 0x61, 0xb8, 0x95, 0xe4, + 0x45, 0x8b, 0xf2, 0x98, 0xec, 0xa8, 0x37, 0xd3, +}; +static const unsigned char kat3541_addinpr1[] = {0}; +static const unsigned char kat3541_entropyinpr2[] = { + 0x54, 0xaf, 0x1e, 0x7f, 0xf9, 0x15, 0x33, 0xd0, 0xcb, 0x54, 0x6e, 0x85, + 0xba, 0x29, 0x10, 0xba, 0x4a, 0xdb, 0x04, 0x74, 0xe6, 0x3b, 0x7f, 0x96, + 0xc8, 0x90, 0x43, 0xf5, 0xab, 0x70, 0xe9, 0x25, +}; +static const unsigned char kat3541_addinpr2[] = {0}; +static const unsigned char kat3541_retbits[] = { + 0x73, 0x6e, 0x67, 0x82, 0x02, 0xe6, 0x4c, 0x8c, 0x47, 0x74, 0xda, 0xf6, + 0xed, 0xba, 0x97, 0x6e, 0x68, 0xda, 0xd5, 0x4f, 0xc2, 0xae, 0x71, 0x3b, + 0xaf, 0x77, 0x99, 0xc8, 0xdc, 0xd9, 0x8a, 0x0d, 0x12, 0x4a, 0xb5, 0x52, + 0xbe, 0x80, 0x11, 0x37, 0xd7, 0x64, 0x3a, 0xb1, 0x1a, 0x90, 0x2e, 0x2c, + 0xe6, 0x07, 0x36, 0x64, 0xd6, 0x2b, 0x5e, 0xb9, 0xf5, 0x0a, 0xf5, 0x7d, + 0xc9, 0xbb, 0x77, 0xa2, +}; +static const struct drbg_kat_pr_true kat3541_t = { + 0, kat3541_entropyin, kat3541_nonce, kat3541_persstr, + kat3541_entropyinpr1, kat3541_addinpr1, kat3541_entropyinpr2, + kat3541_addinpr2, kat3541_retbits +}; +static const struct drbg_kat kat3541 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3541_t +}; + +static const unsigned char kat3542_entropyin[] = { + 0xbb, 0x68, 0xde, 0x06, 0xe7, 0x52, 0xa9, 0xe7, 0xcd, 0x80, 0x8e, 0x27, + 0xea, 0xa5, 0x86, 0xea, 0x1e, 0xa5, 0x0d, 0x02, 0x85, 0x86, 0xe7, 0x16, + 0x28, 0x2b, 0x30, 0xff, 0x80, 0x8c, 0xb5, 0x8a, +}; +static const unsigned char kat3542_nonce[] = { + 0xc5, 0xe3, 0xa2, 0x14, 0x2a, 0x07, 0x9c, 0xb2, 0xa1, 0xb5, 0x5f, 0xa8, + 0xca, 0x20, 0xcc, 0x2b, +}; +static const unsigned char kat3542_persstr[] = {0}; +static const unsigned char kat3542_entropyinpr1[] = { + 0xbd, 0x7b, 0xaa, 0x6c, 0x7d, 0xed, 0x0a, 0x67, 0x9c, 0xa6, 0xff, 0xc8, + 0x7f, 0x6c, 0x7b, 0x54, 0x9a, 0x51, 0xab, 0xcc, 0xf6, 0x56, 0x81, 0x10, + 0x01, 0xc6, 0xce, 0xde, 0x85, 0x1a, 0xde, 0xb8, +}; +static const unsigned char kat3542_addinpr1[] = {0}; +static const unsigned char kat3542_entropyinpr2[] = { + 0x2e, 0x3e, 0x81, 0x5c, 0x63, 0x84, 0x54, 0x3b, 0x22, 0x2e, 0x7b, 0x4c, + 0x8c, 0x60, 0x0f, 0x29, 0x60, 0xff, 0xd9, 0x87, 0xd9, 0x43, 0x9a, 0x6d, + 0x14, 0xe4, 0x23, 0x4a, 0x36, 0x55, 0x47, 0x91, +}; +static const unsigned char kat3542_addinpr2[] = {0}; +static const unsigned char kat3542_retbits[] = { + 0xdd, 0x67, 0x2f, 0x75, 0x3f, 0x51, 0x15, 0x37, 0x82, 0x30, 0xd5, 0xe0, + 0xf0, 0x8e, 0x87, 0x28, 0x73, 0xad, 0xf9, 0x92, 0xe2, 0xf7, 0xa2, 0x32, + 0x94, 0xee, 0x88, 0xae, 0x57, 0x30, 0xa8, 0x2c, 0x8a, 0xfd, 0x26, 0x0e, + 0x9e, 0xf0, 0x2c, 0x5d, 0xa6, 0x74, 0x3e, 0xad, 0xc0, 0x54, 0x7f, 0x26, + 0x95, 0xba, 0xf1, 0x58, 0x55, 0x8e, 0x18, 0x7f, 0x4b, 0xee, 0x83, 0x6e, + 0x59, 0x54, 0xd4, 0xc3, +}; +static const struct drbg_kat_pr_true kat3542_t = { + 1, kat3542_entropyin, kat3542_nonce, kat3542_persstr, + kat3542_entropyinpr1, kat3542_addinpr1, kat3542_entropyinpr2, + kat3542_addinpr2, kat3542_retbits +}; +static const struct drbg_kat kat3542 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3542_t +}; + +static const unsigned char kat3543_entropyin[] = { + 0xce, 0x36, 0xc5, 0x54, 0xe3, 0xa6, 0xf9, 0xf6, 0xfe, 0x4a, 0xfe, 0x21, + 0x02, 0x60, 0x24, 0x54, 0xd9, 0x8c, 0x5a, 0xc8, 0xdd, 0xee, 0x12, 0x1e, + 0xcc, 0xa3, 0x82, 0x40, 0xd2, 0xba, 0x64, 0x63, +}; +static const unsigned char kat3543_nonce[] = { + 0x5f, 0x38, 0xf7, 0x0e, 0x8c, 0x0a, 0xeb, 0xf8, 0x44, 0xf9, 0x3d, 0x9b, + 0x47, 0x7a, 0x7a, 0x12, +}; +static const unsigned char kat3543_persstr[] = {0}; +static const unsigned char kat3543_entropyinpr1[] = { + 0x64, 0x64, 0xb3, 0xab, 0x30, 0x1a, 0xf2, 0x4b, 0x7e, 0x26, 0xee, 0x3c, + 0x9c, 0xc9, 0x7d, 0x61, 0xb9, 0x00, 0x23, 0x8a, 0x80, 0x6d, 0x2e, 0xb8, + 0x7c, 0x26, 0x4e, 0x18, 0x25, 0x9d, 0xc6, 0x49, +}; +static const unsigned char kat3543_addinpr1[] = {0}; +static const unsigned char kat3543_entropyinpr2[] = { + 0x0f, 0xe0, 0x90, 0xb4, 0x44, 0x31, 0x9f, 0x54, 0xcc, 0xfd, 0xda, 0x4a, + 0xe9, 0x78, 0xcd, 0xad, 0x67, 0x85, 0xf6, 0xbd, 0xab, 0x23, 0x4e, 0x79, + 0xbe, 0x65, 0x8e, 0xe7, 0x4d, 0x8c, 0x57, 0x02, +}; +static const unsigned char kat3543_addinpr2[] = {0}; +static const unsigned char kat3543_retbits[] = { + 0xf1, 0xa4, 0x2e, 0xf1, 0xb5, 0xf3, 0x24, 0x86, 0x49, 0xca, 0x26, 0x08, + 0x0c, 0x73, 0x27, 0x6e, 0x48, 0xea, 0x16, 0xf8, 0x94, 0x9d, 0x71, 0x8f, + 0x8c, 0x8f, 0x3b, 0xf8, 0x5b, 0x7c, 0x45, 0xb5, 0x8f, 0x82, 0x0f, 0xd4, + 0xd5, 0xc3, 0xe7, 0x95, 0x67, 0x10, 0x49, 0x53, 0xf1, 0x13, 0x98, 0x86, + 0x75, 0xc6, 0x19, 0x97, 0xaf, 0xb0, 0xf8, 0x4d, 0xce, 0xe8, 0xa6, 0x58, + 0xd1, 0x44, 0x50, 0xc0, +}; +static const struct drbg_kat_pr_true kat3543_t = { + 2, kat3543_entropyin, kat3543_nonce, kat3543_persstr, + kat3543_entropyinpr1, kat3543_addinpr1, kat3543_entropyinpr2, + kat3543_addinpr2, kat3543_retbits +}; +static const struct drbg_kat kat3543 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3543_t +}; + +static const unsigned char kat3544_entropyin[] = { + 0x8f, 0x52, 0x6e, 0xcd, 0xec, 0x66, 0x19, 0x30, 0xf4, 0xec, 0x0d, 0xb1, + 0xd3, 0x4c, 0x4f, 0xdb, 0x81, 0xda, 0xcc, 0x30, 0x8a, 0x85, 0x78, 0x0f, + 0x25, 0x9e, 0xf0, 0xea, 0x30, 0x74, 0x8b, 0xc8, +}; +static const unsigned char kat3544_nonce[] = { + 0x09, 0xeb, 0x6d, 0x69, 0x20, 0x7a, 0x93, 0x0d, 0x90, 0x46, 0x84, 0x8b, + 0xa8, 0xbe, 0x40, 0xec, +}; +static const unsigned char kat3544_persstr[] = {0}; +static const unsigned char kat3544_entropyinpr1[] = { + 0x4a, 0x0e, 0x29, 0x3b, 0x71, 0x52, 0xfe, 0x7c, 0x8e, 0x3a, 0xf4, 0xbd, + 0x88, 0xc0, 0xc5, 0x06, 0x31, 0xa3, 0x10, 0xd0, 0x57, 0xb0, 0x9b, 0xb7, + 0x91, 0xf9, 0x98, 0x57, 0xd4, 0x22, 0x2c, 0x5d, +}; +static const unsigned char kat3544_addinpr1[] = {0}; +static const unsigned char kat3544_entropyinpr2[] = { + 0x48, 0x7f, 0x43, 0x63, 0x53, 0x19, 0x9d, 0x7f, 0x79, 0x33, 0x7c, 0xfb, + 0xb4, 0xb2, 0x16, 0x03, 0x9c, 0x7d, 0x8e, 0xd0, 0x8c, 0x0e, 0xcf, 0xd0, + 0x80, 0xd2, 0xc0, 0xc4, 0xc4, 0x26, 0xd1, 0x41, +}; +static const unsigned char kat3544_addinpr2[] = {0}; +static const unsigned char kat3544_retbits[] = { + 0x6e, 0x9e, 0x0c, 0xed, 0x10, 0xe7, 0x31, 0x3c, 0x62, 0xd2, 0xb2, 0xd1, + 0xe8, 0x95, 0x24, 0xc8, 0x83, 0xcc, 0x17, 0x9e, 0x36, 0xe8, 0x01, 0x42, + 0x84, 0x3a, 0xdb, 0xd6, 0xc7, 0x55, 0x6c, 0x06, 0x7c, 0xae, 0x71, 0x83, + 0xd5, 0xa0, 0x40, 0x37, 0xc3, 0x9a, 0x0c, 0xd8, 0xbc, 0xaa, 0x19, 0x23, + 0x17, 0x06, 0x8f, 0x14, 0x4c, 0x22, 0x02, 0x4b, 0x33, 0x90, 0x36, 0x31, + 0xbf, 0x84, 0x54, 0x92, +}; +static const struct drbg_kat_pr_true kat3544_t = { + 3, kat3544_entropyin, kat3544_nonce, kat3544_persstr, + kat3544_entropyinpr1, kat3544_addinpr1, kat3544_entropyinpr2, + kat3544_addinpr2, kat3544_retbits +}; +static const struct drbg_kat kat3544 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3544_t +}; + +static const unsigned char kat3545_entropyin[] = { + 0x73, 0x9e, 0xc5, 0x70, 0x0f, 0x52, 0x48, 0xcb, 0xb6, 0x48, 0xbe, 0x9a, + 0xea, 0xfa, 0x95, 0x25, 0xa2, 0x25, 0xe4, 0xc2, 0xeb, 0xce, 0x3e, 0x81, + 0xaf, 0xb9, 0x57, 0xb9, 0x09, 0x09, 0x87, 0xe5, +}; +static const unsigned char kat3545_nonce[] = { + 0x6e, 0x2b, 0x9b, 0xfc, 0x28, 0x58, 0x6f, 0x6f, 0x79, 0x5d, 0xb2, 0x58, + 0xda, 0x06, 0x01, 0x5a, +}; +static const unsigned char kat3545_persstr[] = {0}; +static const unsigned char kat3545_entropyinpr1[] = { + 0xa9, 0xbe, 0xa4, 0xaf, 0x42, 0x07, 0x8b, 0x7e, 0xf0, 0x10, 0xbf, 0x6b, + 0x79, 0x89, 0x2c, 0xa5, 0xa9, 0x3d, 0xde, 0x17, 0x43, 0x4d, 0xfb, 0xad, + 0x7e, 0x84, 0x17, 0xf6, 0x2f, 0x57, 0xac, 0x9e, +}; +static const unsigned char kat3545_addinpr1[] = {0}; +static const unsigned char kat3545_entropyinpr2[] = { + 0x92, 0xb3, 0x75, 0x60, 0xcd, 0x72, 0xd3, 0x17, 0xb1, 0x29, 0x4a, 0xff, + 0x70, 0xfd, 0xe4, 0xd6, 0xcb, 0xfd, 0x5b, 0x7c, 0x37, 0x34, 0xf8, 0x21, + 0xbd, 0x99, 0x94, 0x13, 0x95, 0x4c, 0x23, 0x92, +}; +static const unsigned char kat3545_addinpr2[] = {0}; +static const unsigned char kat3545_retbits[] = { + 0x37, 0x70, 0x47, 0x64, 0xb1, 0x3c, 0xf3, 0x2d, 0xb0, 0xce, 0x6e, 0xac, + 0xf9, 0x20, 0xd2, 0xa3, 0x00, 0x7d, 0xcf, 0x87, 0x8e, 0x48, 0x1a, 0xec, + 0x4c, 0x07, 0x29, 0x1d, 0x9e, 0xd8, 0xaa, 0x93, 0x65, 0x1c, 0x53, 0x6e, + 0xaa, 0xba, 0xb3, 0xd4, 0x4a, 0x57, 0x81, 0xcc, 0xf0, 0x0d, 0x8f, 0xcc, + 0x1a, 0xb2, 0xfe, 0x39, 0x37, 0xaf, 0xfc, 0x5f, 0x77, 0x55, 0x02, 0x7a, + 0xfc, 0x37, 0xfe, 0x36, +}; +static const struct drbg_kat_pr_true kat3545_t = { + 4, kat3545_entropyin, kat3545_nonce, kat3545_persstr, + kat3545_entropyinpr1, kat3545_addinpr1, kat3545_entropyinpr2, + kat3545_addinpr2, kat3545_retbits +}; +static const struct drbg_kat kat3545 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3545_t +}; + +static const unsigned char kat3546_entropyin[] = { + 0x9f, 0x09, 0xc4, 0xe2, 0x73, 0x0a, 0xd8, 0x3b, 0x23, 0xb8, 0x9b, 0x88, + 0x68, 0x35, 0xf2, 0x73, 0x5a, 0xb0, 0x0e, 0x57, 0x42, 0x8a, 0xc2, 0x70, + 0x51, 0xa5, 0xd2, 0xea, 0x8a, 0xc6, 0x96, 0x8f, +}; +static const unsigned char kat3546_nonce[] = { + 0xfa, 0x24, 0xa5, 0x1c, 0x41, 0x1c, 0xd8, 0x29, 0x85, 0x02, 0xde, 0x20, + 0x77, 0x36, 0x77, 0xa2, +}; +static const unsigned char kat3546_persstr[] = {0}; +static const unsigned char kat3546_entropyinpr1[] = { + 0x5b, 0xfb, 0x7f, 0x78, 0xa3, 0xc3, 0x3d, 0xab, 0xd6, 0x24, 0x94, 0x62, + 0xeb, 0xa7, 0x0f, 0x5c, 0x4b, 0xac, 0x72, 0x22, 0x90, 0x70, 0xef, 0xa4, + 0x17, 0x82, 0x59, 0xa2, 0x3f, 0xbb, 0x5b, 0x4b, +}; +static const unsigned char kat3546_addinpr1[] = {0}; +static const unsigned char kat3546_entropyinpr2[] = { + 0x1b, 0xd6, 0x12, 0x3f, 0x5e, 0x57, 0xfa, 0xf2, 0xbf, 0x2e, 0x7e, 0xcd, + 0xee, 0x25, 0x4f, 0xfe, 0x2f, 0xdc, 0x9d, 0xea, 0x93, 0x64, 0x80, 0xc5, + 0x3a, 0x57, 0xa5, 0x12, 0x64, 0xfb, 0x87, 0x46, +}; +static const unsigned char kat3546_addinpr2[] = {0}; +static const unsigned char kat3546_retbits[] = { + 0xb1, 0x4d, 0x83, 0x22, 0x84, 0xb3, 0x35, 0x19, 0x2d, 0xcb, 0x89, 0x59, + 0x19, 0xa2, 0x97, 0x11, 0xed, 0xdc, 0x91, 0xad, 0x3a, 0xd4, 0xb4, 0x88, + 0xde, 0x26, 0x53, 0x1e, 0x16, 0xdb, 0x47, 0xd2, 0x39, 0xfa, 0x9e, 0x03, + 0x07, 0x1d, 0x16, 0x07, 0x42, 0x43, 0x72, 0xc8, 0xe0, 0xf5, 0x8c, 0xb9, + 0xd9, 0x71, 0xfa, 0x45, 0x07, 0xdd, 0x58, 0xd3, 0x0d, 0xc6, 0x60, 0x29, + 0xda, 0xb6, 0x5f, 0xcc, +}; +static const struct drbg_kat_pr_true kat3546_t = { + 5, kat3546_entropyin, kat3546_nonce, kat3546_persstr, + kat3546_entropyinpr1, kat3546_addinpr1, kat3546_entropyinpr2, + kat3546_addinpr2, kat3546_retbits +}; +static const struct drbg_kat kat3546 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3546_t +}; + +static const unsigned char kat3547_entropyin[] = { + 0x31, 0x5e, 0x35, 0xd0, 0x33, 0x8f, 0xb2, 0x69, 0x0a, 0x06, 0xe3, 0x63, + 0xd6, 0x63, 0x8a, 0xa8, 0x37, 0x09, 0x9b, 0x6f, 0x25, 0xfd, 0xef, 0xbd, + 0x19, 0x4b, 0xa0, 0xe4, 0x8f, 0x6c, 0x09, 0x9c, +}; +static const unsigned char kat3547_nonce[] = { + 0x6d, 0x8f, 0x59, 0x08, 0x6f, 0x29, 0x72, 0x90, 0x81, 0x8f, 0x53, 0x4d, + 0x5e, 0xed, 0xf9, 0x6f, +}; +static const unsigned char kat3547_persstr[] = {0}; +static const unsigned char kat3547_entropyinpr1[] = { + 0x40, 0x58, 0x6a, 0xfd, 0xae, 0x48, 0x33, 0x42, 0xa2, 0xf8, 0x7b, 0xed, + 0x91, 0x61, 0xc1, 0xa8, 0xd9, 0xb8, 0x49, 0xfb, 0x0f, 0xd5, 0x30, 0x26, + 0x81, 0xa2, 0xbc, 0xf1, 0x64, 0x88, 0x2c, 0x30, +}; +static const unsigned char kat3547_addinpr1[] = {0}; +static const unsigned char kat3547_entropyinpr2[] = { + 0xde, 0xec, 0x53, 0x94, 0xf9, 0x2e, 0x0b, 0x37, 0x27, 0x22, 0xda, 0x45, + 0x9d, 0xd0, 0x58, 0x76, 0x55, 0x3f, 0xff, 0xd2, 0x52, 0x58, 0x9b, 0x9a, + 0xa3, 0xae, 0x38, 0x0a, 0x19, 0xa3, 0x86, 0x98, +}; +static const unsigned char kat3547_addinpr2[] = {0}; +static const unsigned char kat3547_retbits[] = { + 0x2c, 0x2f, 0x04, 0xe3, 0x12, 0x1f, 0x4e, 0x31, 0x7a, 0x49, 0xd0, 0xfb, + 0xf6, 0xbc, 0xfe, 0x5b, 0xd6, 0x18, 0x2c, 0x39, 0xcd, 0x5d, 0x3d, 0x6d, + 0x5e, 0x55, 0x8d, 0x1c, 0xfb, 0x51, 0xd3, 0xe9, 0x35, 0x24, 0x17, 0x3b, + 0x0a, 0x91, 0xd4, 0xec, 0xb7, 0x14, 0x1e, 0xa2, 0x16, 0xe1, 0xa0, 0x34, + 0x52, 0x05, 0xd9, 0x8a, 0x16, 0xf4, 0xf6, 0xc5, 0xae, 0xb4, 0xb1, 0x53, + 0xd8, 0x3e, 0xe7, 0x25, +}; +static const struct drbg_kat_pr_true kat3547_t = { + 6, kat3547_entropyin, kat3547_nonce, kat3547_persstr, + kat3547_entropyinpr1, kat3547_addinpr1, kat3547_entropyinpr2, + kat3547_addinpr2, kat3547_retbits +}; +static const struct drbg_kat kat3547 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3547_t +}; + +static const unsigned char kat3548_entropyin[] = { + 0x5a, 0xa7, 0x04, 0x8f, 0xef, 0x04, 0x0c, 0x8f, 0x56, 0xac, 0xa6, 0x8a, + 0x46, 0x90, 0x0f, 0xe1, 0x48, 0x62, 0xd6, 0x67, 0xe2, 0x0e, 0xf7, 0xfa, + 0xf4, 0xa6, 0x7e, 0x1d, 0x75, 0x84, 0x37, 0x81, +}; +static const unsigned char kat3548_nonce[] = { + 0x2f, 0xf0, 0x73, 0xfb, 0x3a, 0xf5, 0xad, 0xc9, 0xbc, 0xf0, 0x0d, 0xa5, + 0x7b, 0xeb, 0x52, 0x5d, +}; +static const unsigned char kat3548_persstr[] = {0}; +static const unsigned char kat3548_entropyinpr1[] = { + 0x8c, 0x83, 0x8d, 0x5d, 0xcb, 0xd3, 0xc4, 0x5b, 0x36, 0xe1, 0xa0, 0x9f, + 0xfa, 0x50, 0xb3, 0x2e, 0x1c, 0x78, 0x96, 0x95, 0x1f, 0x4c, 0x2d, 0x3e, + 0xcf, 0x62, 0x2c, 0x9f, 0x2d, 0x7a, 0xe3, 0xee, +}; +static const unsigned char kat3548_addinpr1[] = {0}; +static const unsigned char kat3548_entropyinpr2[] = { + 0xf7, 0x7b, 0xb0, 0xe1, 0x7e, 0x9e, 0x39, 0x8e, 0xeb, 0x04, 0xac, 0x52, + 0x28, 0xfc, 0xf7, 0x48, 0xd6, 0x89, 0x9b, 0xae, 0x78, 0xa7, 0xdb, 0xcd, + 0xb9, 0x10, 0xae, 0xa0, 0x53, 0x05, 0x33, 0x09, +}; +static const unsigned char kat3548_addinpr2[] = {0}; +static const unsigned char kat3548_retbits[] = { + 0x3b, 0xf1, 0x48, 0xda, 0x2d, 0xa0, 0x3a, 0x69, 0x49, 0x6a, 0x50, 0xfa, + 0xf1, 0x89, 0x65, 0x76, 0x49, 0x05, 0x8f, 0x7c, 0x66, 0x17, 0xb1, 0x1a, + 0x35, 0x11, 0x06, 0x89, 0x8a, 0xd8, 0x60, 0x2a, 0xf8, 0xa5, 0xbb, 0x63, + 0x6e, 0x9a, 0x45, 0x6e, 0xe9, 0x3c, 0x96, 0x52, 0x5d, 0xc4, 0x83, 0x8c, + 0x76, 0x15, 0x46, 0xc7, 0x71, 0x2f, 0x1c, 0x39, 0xd1, 0xf6, 0xb1, 0xcc, + 0x36, 0xe9, 0x64, 0x9c, +}; +static const struct drbg_kat_pr_true kat3548_t = { + 7, kat3548_entropyin, kat3548_nonce, kat3548_persstr, + kat3548_entropyinpr1, kat3548_addinpr1, kat3548_entropyinpr2, + kat3548_addinpr2, kat3548_retbits +}; +static const struct drbg_kat kat3548 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3548_t +}; + +static const unsigned char kat3549_entropyin[] = { + 0xa0, 0xdd, 0xf3, 0xfe, 0x34, 0x1a, 0x71, 0x19, 0x8c, 0x01, 0x58, 0xee, + 0x50, 0x18, 0x19, 0x84, 0x03, 0x2c, 0xfb, 0x62, 0x76, 0xde, 0xaf, 0x8b, + 0x43, 0x18, 0xbb, 0xb7, 0xed, 0xbc, 0x64, 0xc4, +}; +static const unsigned char kat3549_nonce[] = { + 0xf2, 0x1d, 0x58, 0x9a, 0x47, 0xbf, 0x64, 0x06, 0xb6, 0xdc, 0x5b, 0x98, + 0x98, 0x01, 0xd8, 0x8e, +}; +static const unsigned char kat3549_persstr[] = {0}; +static const unsigned char kat3549_entropyinpr1[] = { + 0xc1, 0x79, 0xe0, 0x1e, 0x69, 0xf2, 0x8a, 0xa7, 0x7a, 0x86, 0x1f, 0x11, + 0x4f, 0x34, 0x9a, 0x3c, 0x56, 0x68, 0x8e, 0x57, 0xcf, 0xf1, 0xb1, 0xe8, + 0x85, 0x79, 0xcd, 0x7d, 0xff, 0xda, 0xfb, 0x83, +}; +static const unsigned char kat3549_addinpr1[] = {0}; +static const unsigned char kat3549_entropyinpr2[] = { + 0xe4, 0x73, 0xca, 0xb7, 0x6e, 0x5f, 0xad, 0x3b, 0x11, 0x8d, 0xdc, 0x00, + 0xf9, 0x0f, 0xe7, 0xf0, 0x7c, 0x1d, 0xe9, 0xf3, 0x38, 0x3a, 0xdf, 0xe0, + 0x0a, 0xff, 0x33, 0xfc, 0x7c, 0xf5, 0xeb, 0xda, +}; +static const unsigned char kat3549_addinpr2[] = {0}; +static const unsigned char kat3549_retbits[] = { + 0xf5, 0xbb, 0x6f, 0x85, 0xd6, 0x04, 0x3d, 0x3a, 0x3c, 0xe3, 0x23, 0xd7, + 0x8f, 0xdf, 0xec, 0xdf, 0x3c, 0xce, 0xa2, 0x79, 0xc7, 0x0c, 0xba, 0xf5, + 0x3f, 0xb3, 0x24, 0xb4, 0xd6, 0x59, 0x99, 0xc4, 0x05, 0x52, 0xd4, 0x78, + 0x86, 0xd0, 0xde, 0x79, 0xa4, 0x49, 0xd0, 0xb6, 0xc4, 0xa9, 0xba, 0x78, + 0x7e, 0x08, 0x78, 0xe2, 0x74, 0x36, 0xac, 0x3e, 0x56, 0x88, 0x7c, 0x9c, + 0xb8, 0xca, 0xc6, 0xce, +}; +static const struct drbg_kat_pr_true kat3549_t = { + 8, kat3549_entropyin, kat3549_nonce, kat3549_persstr, + kat3549_entropyinpr1, kat3549_addinpr1, kat3549_entropyinpr2, + kat3549_addinpr2, kat3549_retbits +}; +static const struct drbg_kat kat3549 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3549_t +}; + +static const unsigned char kat3550_entropyin[] = { + 0xd6, 0x4d, 0x63, 0x80, 0x36, 0x24, 0xae, 0x04, 0x0a, 0x92, 0x5e, 0x20, + 0x9e, 0x21, 0x00, 0x2a, 0x28, 0xd6, 0x52, 0x1c, 0x8e, 0x9d, 0x0f, 0x90, + 0x5c, 0x3c, 0x79, 0x34, 0x84, 0x44, 0xc5, 0x80, +}; +static const unsigned char kat3550_nonce[] = { + 0xc8, 0x4c, 0x89, 0x53, 0x24, 0x8e, 0x1b, 0xc2, 0xcf, 0x00, 0x96, 0xdf, + 0x99, 0xc9, 0xf5, 0xb0, +}; +static const unsigned char kat3550_persstr[] = {0}; +static const unsigned char kat3550_entropyinpr1[] = { + 0x50, 0x1a, 0x85, 0x27, 0xc8, 0x82, 0xb0, 0x66, 0xbf, 0x9e, 0x71, 0x88, + 0x5f, 0xc6, 0x1c, 0x94, 0x91, 0xd1, 0xb3, 0x38, 0xca, 0x7a, 0x44, 0x01, + 0x5b, 0x97, 0x39, 0xfa, 0xca, 0x75, 0x58, 0x5a, +}; +static const unsigned char kat3550_addinpr1[] = {0}; +static const unsigned char kat3550_entropyinpr2[] = { + 0x45, 0x83, 0x99, 0x56, 0x00, 0x20, 0x61, 0x8e, 0x1c, 0xe0, 0xbe, 0xac, + 0x13, 0x3a, 0xbb, 0x2d, 0x6d, 0xef, 0x11, 0x35, 0x22, 0x16, 0xae, 0x94, + 0x7b, 0x5e, 0xd0, 0x26, 0x79, 0x53, 0xef, 0xc5, +}; +static const unsigned char kat3550_addinpr2[] = {0}; +static const unsigned char kat3550_retbits[] = { + 0x71, 0x0c, 0xb3, 0xfa, 0x8b, 0x85, 0x95, 0x6c, 0x76, 0x56, 0x7c, 0x90, + 0x2f, 0x58, 0xc5, 0x45, 0x55, 0x75, 0x32, 0x65, 0xe8, 0xde, 0x61, 0x91, + 0xf2, 0xbd, 0x1c, 0xa2, 0xee, 0x12, 0xd5, 0x09, 0xac, 0xf8, 0x3c, 0xb5, + 0xc1, 0xbc, 0x05, 0x8f, 0xaa, 0x7b, 0x8a, 0x90, 0x54, 0x26, 0xef, 0xc9, + 0xe6, 0x51, 0xa9, 0x60, 0xc8, 0x14, 0x74, 0xcb, 0x6a, 0x35, 0xbe, 0x86, + 0x94, 0x3a, 0x10, 0x89, +}; +static const struct drbg_kat_pr_true kat3550_t = { + 9, kat3550_entropyin, kat3550_nonce, kat3550_persstr, + kat3550_entropyinpr1, kat3550_addinpr1, kat3550_entropyinpr2, + kat3550_addinpr2, kat3550_retbits +}; +static const struct drbg_kat kat3550 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3550_t +}; + +static const unsigned char kat3551_entropyin[] = { + 0x30, 0x46, 0x21, 0x45, 0x06, 0x32, 0x5d, 0x80, 0x5e, 0xca, 0x77, 0xae, + 0x70, 0x24, 0xbc, 0xcf, 0x17, 0xad, 0xb8, 0xcc, 0x73, 0x4d, 0xe5, 0xf7, + 0x29, 0x9a, 0x7f, 0x24, 0x9f, 0xcd, 0x77, 0xe8, +}; +static const unsigned char kat3551_nonce[] = { + 0xbf, 0x71, 0xf7, 0xb2, 0x0b, 0xb8, 0xc6, 0x42, 0xc9, 0x65, 0x6c, 0x84, + 0x9e, 0x9f, 0x99, 0x04, +}; +static const unsigned char kat3551_persstr[] = {0}; +static const unsigned char kat3551_entropyinpr1[] = { + 0xfb, 0x90, 0xcf, 0x3b, 0xb5, 0x3b, 0x1e, 0xb5, 0xf9, 0x79, 0x84, 0xb2, + 0x68, 0xf6, 0xfa, 0x11, 0xfa, 0xb0, 0xc7, 0x05, 0xe3, 0x24, 0x7a, 0x34, + 0xab, 0xe8, 0x33, 0xa6, 0x3a, 0x01, 0x33, 0x70, +}; +static const unsigned char kat3551_addinpr1[] = {0}; +static const unsigned char kat3551_entropyinpr2[] = { + 0x48, 0x7c, 0xba, 0xd0, 0xff, 0xb9, 0x5f, 0x7f, 0xb0, 0xe0, 0xf6, 0x80, + 0x4a, 0x62, 0x10, 0xd6, 0xef, 0x86, 0xa9, 0x57, 0x2c, 0x61, 0xc6, 0xc2, + 0xcc, 0xa8, 0x10, 0x94, 0x1f, 0x7e, 0xa9, 0xd0, +}; +static const unsigned char kat3551_addinpr2[] = {0}; +static const unsigned char kat3551_retbits[] = { + 0x07, 0x49, 0x48, 0xb6, 0x20, 0x87, 0xa2, 0x9c, 0x6a, 0xf8, 0x23, 0xe1, + 0xcf, 0xaa, 0xf0, 0x26, 0x60, 0xb6, 0x42, 0xdb, 0xa2, 0xcf, 0x49, 0xa1, + 0xcc, 0xec, 0x91, 0x15, 0xbc, 0xab, 0x68, 0x44, 0xd3, 0x08, 0x0f, 0x84, + 0x0b, 0x44, 0xaa, 0x1f, 0xf6, 0xe8, 0xb4, 0x8b, 0x1e, 0x00, 0x92, 0x1a, + 0xc9, 0x4f, 0x9b, 0xb3, 0x2c, 0x62, 0xf1, 0xcd, 0xa6, 0x30, 0x0b, 0xc3, + 0xf9, 0x84, 0x10, 0x4e, +}; +static const struct drbg_kat_pr_true kat3551_t = { + 10, kat3551_entropyin, kat3551_nonce, kat3551_persstr, + kat3551_entropyinpr1, kat3551_addinpr1, kat3551_entropyinpr2, + kat3551_addinpr2, kat3551_retbits +}; +static const struct drbg_kat kat3551 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3551_t +}; + +static const unsigned char kat3552_entropyin[] = { + 0xe9, 0x8c, 0x86, 0x5d, 0xa5, 0x40, 0x13, 0x78, 0xa8, 0x63, 0x2f, 0x71, + 0xfa, 0x3c, 0x40, 0xaa, 0x5f, 0x85, 0xce, 0x57, 0xcd, 0x9e, 0x9c, 0xcb, + 0xf6, 0x55, 0x2b, 0x18, 0x3a, 0x64, 0x23, 0xb0, +}; +static const unsigned char kat3552_nonce[] = { + 0xa2, 0xe6, 0x05, 0xf2, 0x6f, 0xb3, 0x4a, 0xab, 0x78, 0x75, 0x09, 0x4f, + 0xff, 0x35, 0x96, 0x01, +}; +static const unsigned char kat3552_persstr[] = {0}; +static const unsigned char kat3552_entropyinpr1[] = { + 0x15, 0x7e, 0x41, 0x02, 0x85, 0xc0, 0x0c, 0xde, 0x99, 0xff, 0xb8, 0xa8, + 0xdc, 0x2a, 0x23, 0xad, 0xc4, 0xa7, 0x45, 0x23, 0x79, 0x8e, 0x03, 0x81, + 0xf5, 0x61, 0x31, 0x60, 0xdf, 0x78, 0xbe, 0x9b, +}; +static const unsigned char kat3552_addinpr1[] = {0}; +static const unsigned char kat3552_entropyinpr2[] = { + 0xe4, 0x07, 0x7c, 0x63, 0x90, 0x4c, 0x30, 0xf1, 0xc0, 0x95, 0x21, 0x7d, + 0x56, 0x3c, 0x31, 0x22, 0x6b, 0xa7, 0x65, 0x70, 0x11, 0x59, 0xbb, 0x19, + 0x40, 0x88, 0x49, 0x8a, 0x10, 0xf2, 0x0e, 0x74, +}; +static const unsigned char kat3552_addinpr2[] = {0}; +static const unsigned char kat3552_retbits[] = { + 0x52, 0xe6, 0xfc, 0x79, 0x80, 0x86, 0x97, 0x35, 0x5a, 0x5a, 0x1e, 0xa7, + 0xc4, 0x38, 0x05, 0xda, 0x4b, 0x3c, 0x5a, 0xf1, 0xbf, 0xc4, 0x94, 0x55, + 0x34, 0x2d, 0x10, 0xc0, 0x47, 0xda, 0x21, 0xab, 0xf2, 0xa9, 0x94, 0x88, + 0xf9, 0xc3, 0x43, 0x3e, 0xed, 0xc8, 0xf0, 0x87, 0xab, 0x4f, 0xfb, 0xdd, + 0x25, 0x73, 0x1b, 0x36, 0xdd, 0xb2, 0xf6, 0xdd, 0x7a, 0x67, 0x6c, 0x0d, + 0x05, 0x24, 0x92, 0x66, +}; +static const struct drbg_kat_pr_true kat3552_t = { + 11, kat3552_entropyin, kat3552_nonce, kat3552_persstr, + kat3552_entropyinpr1, kat3552_addinpr1, kat3552_entropyinpr2, + kat3552_addinpr2, kat3552_retbits +}; +static const struct drbg_kat kat3552 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3552_t +}; + +static const unsigned char kat3553_entropyin[] = { + 0x5c, 0x66, 0xe2, 0xde, 0x8c, 0x7a, 0xe2, 0xf5, 0x27, 0x6d, 0x00, 0x5c, + 0xe0, 0xc0, 0xe0, 0xc4, 0x54, 0x5e, 0xe2, 0xa0, 0x73, 0x71, 0xa0, 0x26, + 0xe9, 0x70, 0xe1, 0x65, 0x33, 0x6e, 0x0d, 0xa5, +}; +static const unsigned char kat3553_nonce[] = { + 0x1e, 0x8d, 0x44, 0x1f, 0x5e, 0xe3, 0xe6, 0x1c, 0xca, 0xff, 0xe0, 0x35, + 0xb9, 0xab, 0xb3, 0x83, +}; +static const unsigned char kat3553_persstr[] = {0}; +static const unsigned char kat3553_entropyinpr1[] = { + 0x95, 0xe3, 0xff, 0x95, 0x01, 0xad, 0x46, 0x33, 0xf3, 0x22, 0x62, 0xd6, + 0x37, 0xe3, 0xdb, 0x4a, 0xb2, 0x62, 0xa5, 0x09, 0x1b, 0xff, 0x46, 0xec, + 0x00, 0xf3, 0x84, 0x60, 0x3e, 0x32, 0xaa, 0xb7, +}; +static const unsigned char kat3553_addinpr1[] = {0}; +static const unsigned char kat3553_entropyinpr2[] = { + 0x41, 0xf9, 0xfe, 0xba, 0xb7, 0xd5, 0xf8, 0x73, 0x5d, 0xdd, 0xea, 0x04, + 0x60, 0x7a, 0xb6, 0xe5, 0xfd, 0x96, 0x5c, 0xc5, 0x61, 0xf4, 0xbe, 0xaa, + 0x17, 0x88, 0x40, 0x9b, 0xa6, 0x84, 0xbf, 0x60, +}; +static const unsigned char kat3553_addinpr2[] = {0}; +static const unsigned char kat3553_retbits[] = { + 0xf4, 0xb0, 0x91, 0x4c, 0xec, 0x02, 0x61, 0xe0, 0x49, 0xae, 0x38, 0x42, + 0x64, 0x80, 0x67, 0xc6, 0x11, 0x59, 0x6c, 0x63, 0xf3, 0x90, 0x38, 0xcc, + 0x5a, 0xad, 0xe2, 0xb7, 0xc1, 0x23, 0x14, 0x2c, 0xd9, 0xc0, 0x72, 0x9e, + 0x25, 0xbc, 0xcd, 0xfb, 0x60, 0x52, 0xde, 0xba, 0x31, 0x85, 0x14, 0xe8, + 0x19, 0xe9, 0x1f, 0x75, 0x31, 0x06, 0x52, 0x81, 0xb6, 0xd5, 0x04, 0x69, + 0xfe, 0x94, 0xb0, 0x8a, +}; +static const struct drbg_kat_pr_true kat3553_t = { + 12, kat3553_entropyin, kat3553_nonce, kat3553_persstr, + kat3553_entropyinpr1, kat3553_addinpr1, kat3553_entropyinpr2, + kat3553_addinpr2, kat3553_retbits +}; +static const struct drbg_kat kat3553 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3553_t +}; + +static const unsigned char kat3554_entropyin[] = { + 0xc5, 0xbe, 0x1e, 0xac, 0x27, 0x36, 0x75, 0xd6, 0xd2, 0xb5, 0x7e, 0xbe, + 0x3b, 0xc8, 0xfc, 0x70, 0x5c, 0x11, 0x6a, 0x26, 0xc1, 0xcc, 0x4a, 0xa0, + 0xcb, 0x7f, 0xa6, 0x43, 0xa7, 0xba, 0x6f, 0x1f, +}; +static const unsigned char kat3554_nonce[] = { + 0xfe, 0x84, 0x5e, 0x6a, 0x8a, 0x9a, 0xc1, 0xed, 0x87, 0x3f, 0xe1, 0xa3, + 0x68, 0xf7, 0x69, 0xb9, +}; +static const unsigned char kat3554_persstr[] = {0}; +static const unsigned char kat3554_entropyinpr1[] = { + 0x8a, 0x2a, 0xdf, 0x21, 0x54, 0xab, 0x58, 0x07, 0x59, 0x0b, 0x9e, 0x4e, + 0x1d, 0xc5, 0x47, 0x61, 0xf0, 0xa4, 0x34, 0xea, 0x99, 0xa0, 0x3b, 0x0b, + 0xd4, 0x7b, 0x5f, 0x2a, 0x75, 0xfa, 0x2d, 0xc7, +}; +static const unsigned char kat3554_addinpr1[] = {0}; +static const unsigned char kat3554_entropyinpr2[] = { + 0xdb, 0x11, 0xe9, 0x4e, 0xa2, 0xa4, 0x46, 0xad, 0x4c, 0xc3, 0xf6, 0xd8, + 0x9a, 0x75, 0x1d, 0x79, 0x68, 0x79, 0x34, 0x03, 0xae, 0x98, 0x28, 0x61, + 0x36, 0x9d, 0x24, 0x97, 0x11, 0x6a, 0x31, 0x4c, +}; +static const unsigned char kat3554_addinpr2[] = {0}; +static const unsigned char kat3554_retbits[] = { + 0xae, 0xb5, 0x05, 0xb4, 0xc2, 0x01, 0xb3, 0x16, 0xac, 0x38, 0x98, 0xdc, + 0x77, 0x34, 0x30, 0x06, 0x3b, 0xb7, 0xc9, 0xaf, 0x2e, 0x44, 0xbe, 0x22, + 0xd0, 0xc4, 0xb1, 0xbe, 0x56, 0x54, 0x18, 0x7b, 0xd4, 0x3d, 0xf5, 0x91, + 0x57, 0x48, 0xea, 0xbb, 0x00, 0xf8, 0x8e, 0x7f, 0x41, 0xd3, 0x59, 0x45, + 0xf8, 0x7a, 0x42, 0x13, 0x67, 0xb2, 0xaf, 0x1a, 0xc0, 0xf5, 0xf0, 0x8c, + 0xe9, 0x0d, 0x8a, 0xf8, +}; +static const struct drbg_kat_pr_true kat3554_t = { + 13, kat3554_entropyin, kat3554_nonce, kat3554_persstr, + kat3554_entropyinpr1, kat3554_addinpr1, kat3554_entropyinpr2, + kat3554_addinpr2, kat3554_retbits +}; +static const struct drbg_kat kat3554 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3554_t +}; + +static const unsigned char kat3555_entropyin[] = { + 0xb3, 0x62, 0x9c, 0x96, 0x3f, 0x7e, 0x81, 0xb2, 0xfa, 0xc4, 0x94, 0xd5, + 0x43, 0x43, 0xfa, 0xa0, 0x87, 0x78, 0x33, 0xd8, 0x1c, 0xe4, 0x5a, 0xf3, + 0x95, 0x93, 0x40, 0xb1, 0x7b, 0xe2, 0x1f, 0xd4, +}; +static const unsigned char kat3555_nonce[] = { + 0xf4, 0xb5, 0x41, 0xd6, 0x65, 0xba, 0x9d, 0x43, 0xd8, 0xea, 0x06, 0xd6, + 0x4c, 0xb5, 0x18, 0x14, +}; +static const unsigned char kat3555_persstr[] = {0}; +static const unsigned char kat3555_entropyinpr1[] = { + 0x51, 0xd7, 0xc6, 0x59, 0xbb, 0xe1, 0xc8, 0xad, 0x35, 0x09, 0x07, 0x56, + 0xb8, 0x04, 0x70, 0x6e, 0xe4, 0x6c, 0x91, 0x54, 0x1b, 0x9d, 0x41, 0x9b, + 0xb9, 0x12, 0x2e, 0x3b, 0x75, 0xd4, 0xe8, 0xcb, +}; +static const unsigned char kat3555_addinpr1[] = {0}; +static const unsigned char kat3555_entropyinpr2[] = { + 0x34, 0x3e, 0x94, 0x51, 0xf1, 0x64, 0x23, 0xc9, 0x7a, 0xba, 0x91, 0x8b, + 0x13, 0x66, 0x2f, 0x47, 0xc4, 0xfb, 0xf8, 0x8b, 0x19, 0x10, 0xa0, 0xf1, + 0x08, 0x26, 0x95, 0xad, 0xe8, 0xc3, 0x31, 0x57, +}; +static const unsigned char kat3555_addinpr2[] = {0}; +static const unsigned char kat3555_retbits[] = { + 0x49, 0xc2, 0x93, 0x1f, 0x3a, 0x86, 0x01, 0x16, 0x50, 0xe4, 0x71, 0x84, + 0x3b, 0x02, 0x56, 0xfe, 0x4b, 0x75, 0x42, 0xa7, 0x2e, 0x0c, 0xfe, 0x56, + 0xbd, 0xad, 0xf6, 0xf0, 0xaf, 0xdb, 0x60, 0x1e, 0x61, 0x45, 0xe3, 0x6d, + 0x72, 0x70, 0x42, 0x98, 0xc3, 0xf2, 0xe1, 0x42, 0xfa, 0x41, 0xea, 0xb7, + 0xc1, 0x5e, 0xa9, 0xba, 0x34, 0x9a, 0x04, 0x09, 0xc1, 0x2c, 0xe6, 0x24, + 0x77, 0xf7, 0x89, 0xb8, +}; +static const struct drbg_kat_pr_true kat3555_t = { + 14, kat3555_entropyin, kat3555_nonce, kat3555_persstr, + kat3555_entropyinpr1, kat3555_addinpr1, kat3555_entropyinpr2, + kat3555_addinpr2, kat3555_retbits +}; +static const struct drbg_kat kat3555 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 0, 64, &kat3555_t +}; + +static const unsigned char kat3556_entropyin[] = { + 0xf0, 0xa9, 0x97, 0xa4, 0xf7, 0x36, 0x0d, 0xc1, 0xb6, 0x42, 0xdc, 0x13, + 0xf6, 0x96, 0xa3, 0x26, 0x5c, 0x5c, 0xbb, 0x21, 0x79, 0x27, 0xb6, 0x22, + 0xcd, 0x3d, 0xd6, 0xde, 0xbf, 0x14, 0x27, 0x28, +}; +static const unsigned char kat3556_nonce[] = { + 0xcd, 0x56, 0x32, 0x17, 0xb5, 0x8b, 0x91, 0xb4, 0xe5, 0x00, 0xa9, 0x45, + 0xf1, 0x5b, 0xd5, 0x45, +}; +static const unsigned char kat3556_persstr[] = {0}; +static const unsigned char kat3556_entropyinpr1[] = { + 0xdf, 0x5e, 0x72, 0xd1, 0x42, 0x38, 0x57, 0xe7, 0x11, 0x2f, 0x59, 0x8e, + 0xe1, 0x11, 0x20, 0x63, 0xb2, 0xaa, 0x62, 0xec, 0xf2, 0xfb, 0xd6, 0xa8, + 0xb7, 0x71, 0x04, 0xe2, 0xa1, 0x18, 0x08, 0xbb, +}; +static const unsigned char kat3556_addinpr1[] = { + 0xe6, 0x97, 0xfb, 0x68, 0xe5, 0xbd, 0xdc, 0x65, 0xca, 0x91, 0x52, 0x6f, + 0x01, 0x4c, 0xce, 0x30, 0x1a, 0xae, 0xfb, 0x82, 0xfb, 0xdf, 0xed, 0xc5, + 0x00, 0x14, 0x9a, 0xa0, 0xb1, 0x93, 0x0b, 0xd5, +}; +static const unsigned char kat3556_entropyinpr2[] = { + 0x67, 0x6a, 0xae, 0x87, 0xee, 0x17, 0x20, 0x17, 0xa6, 0x9a, 0x88, 0xa9, + 0x7e, 0xe3, 0xf1, 0x82, 0x62, 0xc4, 0xdc, 0x3d, 0x90, 0x24, 0x70, 0x0e, + 0x6b, 0xae, 0x3a, 0xee, 0x1d, 0x93, 0x75, 0x50, +}; +static const unsigned char kat3556_addinpr2[] = { + 0x20, 0x2e, 0x49, 0x40, 0x56, 0xe8, 0x5b, 0x0a, 0x93, 0xe8, 0xb8, 0x99, + 0x0e, 0xc4, 0x86, 0x72, 0xc6, 0x87, 0xc5, 0x16, 0xf5, 0x8c, 0x95, 0x3d, + 0xc4, 0x42, 0x47, 0x45, 0xb0, 0x9d, 0xc8, 0xeb, +}; +static const unsigned char kat3556_retbits[] = { + 0xb5, 0xd9, 0x25, 0xd9, 0xbc, 0x56, 0x7a, 0x44, 0x0b, 0xf1, 0xa3, 0xce, + 0x04, 0xbb, 0x39, 0xe8, 0x00, 0x51, 0x32, 0x02, 0xa9, 0x01, 0xf9, 0x45, + 0x7a, 0xbe, 0xea, 0x6b, 0x6f, 0x67, 0xf9, 0xef, 0x09, 0x97, 0x41, 0x32, + 0x1a, 0x7e, 0x38, 0x2d, 0x0d, 0x5d, 0x87, 0x3e, 0x2f, 0x4b, 0x66, 0x48, + 0xa1, 0x7e, 0xa1, 0x38, 0xfe, 0xed, 0xf4, 0x81, 0xd5, 0xf6, 0x69, 0x47, + 0xa7, 0xb0, 0xbd, 0x64, +}; +static const struct drbg_kat_pr_true kat3556_t = { + 0, kat3556_entropyin, kat3556_nonce, kat3556_persstr, + kat3556_entropyinpr1, kat3556_addinpr1, kat3556_entropyinpr2, + kat3556_addinpr2, kat3556_retbits +}; +static const struct drbg_kat kat3556 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3556_t +}; + +static const unsigned char kat3557_entropyin[] = { + 0x60, 0x1a, 0x59, 0x41, 0x92, 0x64, 0x2b, 0x2c, 0xae, 0x1d, 0x09, 0xb8, + 0xd4, 0x22, 0x96, 0x86, 0xf4, 0xdc, 0x94, 0xad, 0xf8, 0x21, 0x5a, 0xe9, + 0x4c, 0x70, 0xf7, 0xe9, 0x68, 0xa6, 0x84, 0xf8, +}; +static const unsigned char kat3557_nonce[] = { + 0x00, 0x84, 0x6a, 0xad, 0x2d, 0x58, 0xde, 0x71, 0x80, 0xa3, 0x1a, 0xdb, + 0x7f, 0x30, 0xae, 0xb5, +}; +static const unsigned char kat3557_persstr[] = {0}; +static const unsigned char kat3557_entropyinpr1[] = { + 0xc3, 0x73, 0x6a, 0xc5, 0xa8, 0xeb, 0xb3, 0xdb, 0x8d, 0x2c, 0x7f, 0x71, + 0x31, 0x10, 0x58, 0x8a, 0xf7, 0x9c, 0xe1, 0xea, 0xee, 0x09, 0x84, 0xd7, + 0xd9, 0x57, 0x05, 0xe7, 0x73, 0x1e, 0x5d, 0x6b, +}; +static const unsigned char kat3557_addinpr1[] = { + 0x02, 0x8c, 0xcb, 0x1a, 0x3e, 0x3f, 0xe0, 0xb6, 0x4f, 0x43, 0xd4, 0x87, + 0x98, 0xed, 0xda, 0x14, 0xd0, 0x9b, 0xda, 0xed, 0xce, 0x58, 0x85, 0xaa, + 0xf4, 0xd6, 0xa2, 0x79, 0x3d, 0x29, 0xff, 0xb4, +}; +static const unsigned char kat3557_entropyinpr2[] = { + 0x9a, 0xee, 0xd6, 0xf9, 0xdd, 0x84, 0x5b, 0xcc, 0x50, 0xe5, 0x05, 0x8c, + 0x03, 0x05, 0x7a, 0x05, 0xce, 0x74, 0x5a, 0xe0, 0x58, 0x2e, 0x66, 0x4e, + 0x2b, 0x70, 0xd6, 0x35, 0x4e, 0x96, 0x81, 0xa5, +}; +static const unsigned char kat3557_addinpr2[] = { + 0xdc, 0x3d, 0xf6, 0x1d, 0x29, 0xfc, 0xe8, 0x75, 0x83, 0x9d, 0x6c, 0xfa, + 0x22, 0x1e, 0x40, 0xdc, 0xd6, 0x21, 0xe6, 0x66, 0xf9, 0x6e, 0xe2, 0x5c, + 0xca, 0x8d, 0xf1, 0x6a, 0xaf, 0xda, 0x1d, 0x21, +}; +static const unsigned char kat3557_retbits[] = { + 0xcc, 0x8a, 0x68, 0x0e, 0x00, 0x3a, 0xd8, 0xc5, 0x71, 0x73, 0x27, 0x84, + 0xb0, 0x29, 0x03, 0xfd, 0xc4, 0x18, 0x99, 0xcd, 0x52, 0xfd, 0xc9, 0x6b, + 0x41, 0x47, 0x2e, 0xaa, 0x70, 0xcc, 0xac, 0x26, 0x0a, 0x63, 0xd3, 0x06, + 0x6b, 0x38, 0x02, 0x3f, 0xc1, 0xcd, 0xcf, 0x97, 0x3e, 0x80, 0x44, 0xa3, + 0xf8, 0x0e, 0x16, 0xea, 0xfc, 0x85, 0x9a, 0x8f, 0x24, 0x37, 0x02, 0xa7, + 0x9b, 0xe7, 0x25, 0xa1, +}; +static const struct drbg_kat_pr_true kat3557_t = { + 1, kat3557_entropyin, kat3557_nonce, kat3557_persstr, + kat3557_entropyinpr1, kat3557_addinpr1, kat3557_entropyinpr2, + kat3557_addinpr2, kat3557_retbits +}; +static const struct drbg_kat kat3557 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3557_t +}; + +static const unsigned char kat3558_entropyin[] = { + 0x4d, 0xd5, 0x99, 0xcf, 0xf6, 0xef, 0xf7, 0x6d, 0xa0, 0x2b, 0xa9, 0x54, + 0x40, 0xc8, 0x2e, 0x9f, 0xb7, 0xff, 0x29, 0x10, 0x77, 0x0c, 0x5d, 0x9b, + 0x44, 0xdb, 0x1a, 0x14, 0x9d, 0xad, 0x15, 0x55, +}; +static const unsigned char kat3558_nonce[] = { + 0xe0, 0x99, 0x86, 0xdc, 0x2e, 0x15, 0xcc, 0xbe, 0x75, 0x04, 0x28, 0x32, + 0x1c, 0x1f, 0xea, 0x7c, +}; +static const unsigned char kat3558_persstr[] = {0}; +static const unsigned char kat3558_entropyinpr1[] = { + 0x22, 0xf4, 0x28, 0x3f, 0xbc, 0x59, 0xc1, 0xad, 0xc1, 0xaa, 0x79, 0xfa, + 0x63, 0x3b, 0x00, 0x55, 0x5b, 0x59, 0xca, 0x8f, 0x39, 0x6c, 0x29, 0xf9, + 0x60, 0xe5, 0x50, 0xa8, 0x7b, 0x95, 0x82, 0xc5, +}; +static const unsigned char kat3558_addinpr1[] = { + 0x72, 0xe0, 0x84, 0xed, 0x63, 0x2e, 0xae, 0xfd, 0xb6, 0x49, 0x5b, 0x15, + 0x6b, 0x4b, 0x4d, 0x15, 0x0b, 0xbb, 0x7b, 0xd3, 0x36, 0xfc, 0xce, 0xbd, + 0xa6, 0x30, 0x99, 0x8d, 0x45, 0x8d, 0xb3, 0x2f, +}; +static const unsigned char kat3558_entropyinpr2[] = { + 0x9f, 0xf2, 0x0b, 0xad, 0xb6, 0xb7, 0x5c, 0x38, 0x3d, 0x18, 0x1f, 0x94, + 0x3b, 0x16, 0x56, 0xde, 0x92, 0x79, 0x59, 0x8a, 0x52, 0xfb, 0x31, 0x7a, + 0x18, 0xdf, 0x2b, 0xa7, 0x2f, 0xdd, 0xed, 0x74, +}; +static const unsigned char kat3558_addinpr2[] = { + 0x3d, 0x1e, 0x9e, 0x2e, 0x8b, 0x17, 0xfd, 0x31, 0x70, 0x03, 0x31, 0x60, + 0x20, 0x96, 0xa4, 0x63, 0x21, 0x14, 0xde, 0x81, 0xf0, 0x54, 0x1a, 0x5d, + 0xcd, 0x3f, 0x17, 0x1e, 0xe6, 0xdb, 0x68, 0xe0, +}; +static const unsigned char kat3558_retbits[] = { + 0xa9, 0x8f, 0xfd, 0x9d, 0x9a, 0x22, 0x32, 0x4d, 0xe9, 0xfd, 0xc8, 0x83, + 0x10, 0x9d, 0x67, 0x42, 0xf6, 0x27, 0x1b, 0x01, 0x20, 0xdd, 0x9e, 0xf1, + 0x0d, 0x7a, 0xd4, 0x13, 0x43, 0xcd, 0x5d, 0x95, 0x50, 0x9c, 0x8c, 0xe8, + 0xf7, 0x7d, 0xbc, 0x3c, 0x27, 0x61, 0x75, 0x30, 0x6a, 0xa6, 0x2f, 0x41, + 0x30, 0xeb, 0x5b, 0x8b, 0x27, 0xa6, 0x51, 0xca, 0xcf, 0x79, 0x53, 0xd1, + 0x39, 0x1f, 0xb6, 0x9f, +}; +static const struct drbg_kat_pr_true kat3558_t = { + 2, kat3558_entropyin, kat3558_nonce, kat3558_persstr, + kat3558_entropyinpr1, kat3558_addinpr1, kat3558_entropyinpr2, + kat3558_addinpr2, kat3558_retbits +}; +static const struct drbg_kat kat3558 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3558_t +}; + +static const unsigned char kat3559_entropyin[] = { + 0x35, 0xd3, 0x03, 0xf9, 0x1d, 0x7a, 0x0c, 0x7b, 0xba, 0xef, 0xff, 0xc6, + 0x05, 0x36, 0xf1, 0xaa, 0xae, 0x55, 0x16, 0x3e, 0x7b, 0xdc, 0x44, 0x22, + 0x14, 0x3d, 0x98, 0x53, 0xcc, 0x1e, 0xad, 0x8a, +}; +static const unsigned char kat3559_nonce[] = { + 0x15, 0x6a, 0xe7, 0x59, 0x4e, 0xb7, 0x55, 0x3e, 0xb1, 0xc8, 0xb5, 0xe9, + 0x79, 0x0c, 0x5d, 0xa4, +}; +static const unsigned char kat3559_persstr[] = {0}; +static const unsigned char kat3559_entropyinpr1[] = { + 0xb8, 0x70, 0x3b, 0xe8, 0x63, 0xc0, 0x79, 0x92, 0x68, 0xc6, 0x1e, 0x0d, + 0x59, 0x7f, 0x4f, 0x87, 0x1a, 0x0a, 0xfd, 0xff, 0x7b, 0xc0, 0x99, 0xcb, + 0xdf, 0x6b, 0xc2, 0x65, 0x66, 0x1c, 0xa3, 0x38, +}; +static const unsigned char kat3559_addinpr1[] = { + 0x84, 0x27, 0xc9, 0x13, 0x04, 0x0c, 0xcd, 0x78, 0xfb, 0x7e, 0xa1, 0x95, + 0x6a, 0x04, 0x69, 0xb0, 0xd8, 0x86, 0x6a, 0xb1, 0xaf, 0x20, 0x5e, 0x36, + 0x0e, 0x1c, 0x58, 0xe6, 0xc0, 0xfa, 0x7b, 0x91, +}; +static const unsigned char kat3559_entropyinpr2[] = { + 0xcd, 0xd1, 0x6c, 0x96, 0x99, 0x3b, 0xf2, 0x66, 0x2b, 0x73, 0x14, 0x76, + 0x6c, 0xbe, 0x30, 0x8b, 0x72, 0xc5, 0x42, 0xfa, 0x27, 0x56, 0xfc, 0xde, + 0xe0, 0x8d, 0xa2, 0x23, 0x8e, 0xc8, 0xe7, 0x6b, +}; +static const unsigned char kat3559_addinpr2[] = { + 0x26, 0x0c, 0x5b, 0xff, 0xef, 0xf5, 0x64, 0x1c, 0x97, 0x7b, 0xb3, 0x64, + 0xc2, 0xe2, 0x7d, 0x9a, 0x8a, 0x85, 0x16, 0xc2, 0x1f, 0xb8, 0x77, 0xd9, + 0xd0, 0x6d, 0x16, 0xd2, 0xdb, 0x17, 0x78, 0xfc, +}; +static const unsigned char kat3559_retbits[] = { + 0x23, 0x53, 0x37, 0x36, 0xcf, 0x03, 0x95, 0x67, 0x14, 0x98, 0xe1, 0xf7, + 0xf9, 0xab, 0x49, 0xdd, 0xac, 0xed, 0x84, 0x61, 0x75, 0xd9, 0x24, 0x42, + 0xdb, 0x5a, 0xcd, 0x1e, 0x29, 0x8d, 0xc2, 0x8e, 0xc4, 0xd4, 0x22, 0xe9, + 0xec, 0x97, 0x2e, 0x9a, 0xeb, 0x63, 0x5a, 0x30, 0xdd, 0x0e, 0x67, 0xf4, + 0xd3, 0x0d, 0x45, 0x04, 0x4e, 0xbf, 0xbb, 0xd7, 0x6a, 0x4c, 0xf8, 0x6b, + 0x80, 0x07, 0x3e, 0x06, +}; +static const struct drbg_kat_pr_true kat3559_t = { + 3, kat3559_entropyin, kat3559_nonce, kat3559_persstr, + kat3559_entropyinpr1, kat3559_addinpr1, kat3559_entropyinpr2, + kat3559_addinpr2, kat3559_retbits +}; +static const struct drbg_kat kat3559 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3559_t +}; + +static const unsigned char kat3560_entropyin[] = { + 0xee, 0xe6, 0x20, 0xfe, 0x23, 0x7d, 0xe2, 0x34, 0x5e, 0x3b, 0x8c, 0x8e, + 0x91, 0x10, 0x0f, 0x5e, 0x7b, 0xef, 0xf5, 0x32, 0xae, 0x5d, 0x77, 0xfb, + 0x6a, 0x57, 0x6d, 0xf2, 0x53, 0x6f, 0x0f, 0xb6, +}; +static const unsigned char kat3560_nonce[] = { + 0xa2, 0xaa, 0x77, 0x6e, 0x76, 0x30, 0xfa, 0x17, 0x13, 0x78, 0x8d, 0x0e, + 0x02, 0xad, 0x53, 0x37, +}; +static const unsigned char kat3560_persstr[] = {0}; +static const unsigned char kat3560_entropyinpr1[] = { + 0xfb, 0x78, 0x8a, 0xa6, 0x15, 0x2c, 0x4a, 0x79, 0xff, 0xb6, 0xa8, 0xb8, + 0x93, 0x31, 0x87, 0x85, 0x2e, 0x36, 0x44, 0x63, 0xe0, 0x0c, 0x87, 0x63, + 0xb8, 0xfd, 0xcc, 0x17, 0xee, 0x6d, 0x26, 0x30, +}; +static const unsigned char kat3560_addinpr1[] = { + 0x0a, 0xe6, 0x2e, 0x9c, 0x91, 0x82, 0x5e, 0xd1, 0x17, 0x7f, 0xde, 0x05, + 0x07, 0xd2, 0x3d, 0x57, 0x69, 0x68, 0x49, 0xdb, 0x23, 0x8f, 0xe4, 0x19, + 0x64, 0x08, 0xab, 0xb5, 0x57, 0x72, 0xf1, 0xf0, +}; +static const unsigned char kat3560_entropyinpr2[] = { + 0xb9, 0x9e, 0x02, 0x51, 0xd4, 0x58, 0x7d, 0xd4, 0x95, 0x2e, 0x38, 0x3a, + 0x84, 0x1d, 0x6b, 0xff, 0xb9, 0x3f, 0xc4, 0x2b, 0x28, 0x78, 0xb3, 0x04, + 0xe4, 0x90, 0xe6, 0x64, 0x66, 0xf2, 0xb3, 0x4c, +}; +static const unsigned char kat3560_addinpr2[] = { + 0xb1, 0xb8, 0xa4, 0xb1, 0xbe, 0x81, 0x00, 0xf8, 0x10, 0x70, 0x8b, 0xf4, + 0xec, 0xc9, 0xf5, 0xf4, 0x46, 0x37, 0x2f, 0xd7, 0x0f, 0xa0, 0x21, 0x6e, + 0x46, 0xcb, 0xff, 0xc4, 0x15, 0x59, 0xe2, 0xf1, +}; +static const unsigned char kat3560_retbits[] = { + 0xf0, 0x3b, 0xaa, 0x93, 0x69, 0x33, 0x27, 0xa0, 0xa6, 0x88, 0x86, 0xcd, + 0x62, 0xa2, 0x40, 0x48, 0xde, 0xd3, 0x12, 0xdf, 0x71, 0x87, 0x3e, 0x96, + 0x29, 0x81, 0xc4, 0x38, 0xdc, 0xe8, 0xd5, 0x6f, 0x03, 0xeb, 0xbb, 0x67, + 0xc4, 0x97, 0xd9, 0x43, 0x52, 0xaa, 0x9d, 0x00, 0xd5, 0x86, 0x06, 0xc9, + 0xbf, 0xad, 0xaf, 0xeb, 0x37, 0xed, 0x80, 0xa0, 0x7f, 0xac, 0xc0, 0x3d, + 0x36, 0x41, 0xa1, 0x6a, +}; +static const struct drbg_kat_pr_true kat3560_t = { + 4, kat3560_entropyin, kat3560_nonce, kat3560_persstr, + kat3560_entropyinpr1, kat3560_addinpr1, kat3560_entropyinpr2, + kat3560_addinpr2, kat3560_retbits +}; +static const struct drbg_kat kat3560 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3560_t +}; + +static const unsigned char kat3561_entropyin[] = { + 0x2a, 0xa4, 0xf1, 0x5a, 0xc2, 0x1e, 0x48, 0xb6, 0x7a, 0xd5, 0xa3, 0x2c, + 0x73, 0x9b, 0x80, 0x51, 0x7c, 0xda, 0xea, 0xc2, 0x98, 0xf4, 0x6f, 0x18, + 0xba, 0x5b, 0xe3, 0xef, 0xb4, 0x0c, 0x93, 0xdd, +}; +static const unsigned char kat3561_nonce[] = { + 0xc1, 0xd2, 0xf5, 0xa6, 0xd6, 0x52, 0x2f, 0x3c, 0xd2, 0xde, 0xf5, 0x9f, + 0x34, 0x4a, 0x14, 0xfc, +}; +static const unsigned char kat3561_persstr[] = {0}; +static const unsigned char kat3561_entropyinpr1[] = { + 0xe9, 0x93, 0xfd, 0x24, 0xb8, 0x2b, 0x62, 0x44, 0xe1, 0xbf, 0x60, 0xc5, + 0x94, 0x54, 0x87, 0xc2, 0xa7, 0x88, 0xae, 0x1b, 0x3e, 0x55, 0xdf, 0xe1, + 0x2f, 0xec, 0x88, 0x9e, 0x80, 0xf9, 0xee, 0x6b, +}; +static const unsigned char kat3561_addinpr1[] = { + 0x45, 0x37, 0x9b, 0x77, 0x1e, 0xbc, 0xcb, 0x69, 0x72, 0x16, 0x11, 0xe9, + 0x74, 0xad, 0xe2, 0x4b, 0xa7, 0xd0, 0x1d, 0x18, 0xc1, 0x88, 0x1b, 0x0c, + 0xb5, 0xe6, 0x83, 0x70, 0xa0, 0xea, 0x06, 0x65, +}; +static const unsigned char kat3561_entropyinpr2[] = { + 0xb4, 0x6a, 0x12, 0x1c, 0xfa, 0xac, 0xc8, 0x97, 0xcf, 0x8c, 0x7e, 0xc7, + 0xdd, 0xff, 0x84, 0x35, 0x15, 0xd0, 0x73, 0x3b, 0xc7, 0x66, 0xab, 0x6c, + 0x5a, 0x7b, 0x50, 0x56, 0x18, 0x63, 0x91, 0xbd, +}; +static const unsigned char kat3561_addinpr2[] = { + 0x76, 0xb0, 0x04, 0x04, 0xd8, 0x8b, 0xe2, 0x2d, 0x13, 0x2a, 0x86, 0x8f, + 0x07, 0x27, 0x46, 0x43, 0xbf, 0xb2, 0xdd, 0x71, 0xdd, 0x85, 0xee, 0x18, + 0xf1, 0xa7, 0x06, 0x51, 0x7a, 0xbb, 0xa8, 0xd0, +}; +static const unsigned char kat3561_retbits[] = { + 0x7f, 0x6f, 0xfa, 0x3f, 0x3c, 0xdd, 0x9e, 0x1b, 0x2f, 0x19, 0x60, 0xea, + 0x7d, 0x5b, 0x35, 0x8d, 0x00, 0x13, 0xf9, 0xd6, 0x28, 0x55, 0x90, 0x43, + 0x1d, 0x01, 0x75, 0x22, 0xe2, 0xdb, 0x02, 0x77, 0xcc, 0x1b, 0x50, 0xbd, + 0xc8, 0x2a, 0x50, 0x28, 0x69, 0x37, 0x61, 0x7e, 0x34, 0x2a, 0x8e, 0xa2, + 0x56, 0x2f, 0x7d, 0x59, 0xe9, 0x56, 0x54, 0x9f, 0x49, 0xad, 0xa9, 0xc0, + 0x65, 0x14, 0x67, 0x53, +}; +static const struct drbg_kat_pr_true kat3561_t = { + 5, kat3561_entropyin, kat3561_nonce, kat3561_persstr, + kat3561_entropyinpr1, kat3561_addinpr1, kat3561_entropyinpr2, + kat3561_addinpr2, kat3561_retbits +}; +static const struct drbg_kat kat3561 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3561_t +}; + +static const unsigned char kat3562_entropyin[] = { + 0x96, 0x46, 0x71, 0x45, 0x4f, 0xff, 0x79, 0x45, 0xe9, 0xd4, 0x72, 0x2a, + 0x44, 0x9c, 0xa8, 0xa0, 0x79, 0x55, 0x34, 0xbe, 0xe6, 0xa0, 0x6c, 0x2b, + 0x43, 0xb9, 0x2a, 0x7e, 0x6a, 0x07, 0x44, 0xad, +}; +static const unsigned char kat3562_nonce[] = { + 0xc4, 0xe9, 0x1a, 0x4e, 0xaf, 0xc0, 0x34, 0x6f, 0x6f, 0xf9, 0x62, 0x74, + 0x10, 0xb0, 0x93, 0x31, +}; +static const unsigned char kat3562_persstr[] = {0}; +static const unsigned char kat3562_entropyinpr1[] = { + 0xc1, 0x0d, 0x27, 0x16, 0xcb, 0xad, 0xe7, 0xd9, 0x54, 0xe1, 0x2c, 0x34, + 0xaa, 0xf8, 0xb3, 0x94, 0xe8, 0xe3, 0x53, 0x20, 0xd8, 0x10, 0x31, 0x57, + 0xdf, 0xee, 0x9e, 0x38, 0x2e, 0x5a, 0xdd, 0x79, +}; +static const unsigned char kat3562_addinpr1[] = { + 0xbd, 0xc3, 0x37, 0x61, 0xfd, 0xcb, 0x98, 0xb9, 0x8e, 0x56, 0x65, 0x73, + 0xe1, 0x45, 0x17, 0x22, 0x0f, 0x95, 0x6d, 0x4e, 0xb0, 0x6a, 0x9f, 0xe2, + 0x49, 0xb9, 0xb9, 0x99, 0xc6, 0x8a, 0x94, 0x7f, +}; +static const unsigned char kat3562_entropyinpr2[] = { + 0x87, 0x1d, 0xef, 0xf9, 0xd6, 0xf4, 0xda, 0x37, 0x34, 0x24, 0x5f, 0x6b, + 0x0f, 0xfa, 0x89, 0x61, 0x18, 0x61, 0x91, 0xb1, 0x9a, 0x9d, 0x2d, 0x89, + 0xad, 0x5c, 0xe6, 0xce, 0x04, 0x66, 0x46, 0x3d, +}; +static const unsigned char kat3562_addinpr2[] = { + 0x0d, 0x47, 0xdb, 0x4c, 0x8e, 0xda, 0x48, 0xfc, 0x3f, 0x46, 0xea, 0x30, + 0x33, 0x2f, 0xfa, 0x0f, 0x0b, 0x1f, 0x6f, 0x2e, 0x3c, 0xa0, 0xcd, 0xcc, + 0xab, 0x79, 0x7f, 0x38, 0x4a, 0xd1, 0xb7, 0xf1, +}; +static const unsigned char kat3562_retbits[] = { + 0x38, 0x8a, 0xbe, 0xe5, 0x6d, 0xc4, 0x6e, 0xef, 0xae, 0xdf, 0xb0, 0x0a, + 0x67, 0x61, 0x65, 0x40, 0x03, 0x38, 0x86, 0xd9, 0x11, 0xa5, 0x37, 0xe6, + 0x86, 0x83, 0x4a, 0xa2, 0x90, 0xc8, 0xf9, 0xf6, 0xf9, 0xdb, 0x41, 0x8a, + 0x91, 0x74, 0x51, 0xa7, 0xf0, 0x92, 0xa2, 0xe4, 0x71, 0x2f, 0x66, 0x98, + 0x8f, 0x15, 0x29, 0xac, 0x8a, 0x88, 0xb9, 0xa4, 0x10, 0x1c, 0xf2, 0x2a, + 0xd1, 0xfe, 0x6f, 0xac, +}; +static const struct drbg_kat_pr_true kat3562_t = { + 6, kat3562_entropyin, kat3562_nonce, kat3562_persstr, + kat3562_entropyinpr1, kat3562_addinpr1, kat3562_entropyinpr2, + kat3562_addinpr2, kat3562_retbits +}; +static const struct drbg_kat kat3562 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3562_t +}; + +static const unsigned char kat3563_entropyin[] = { + 0x23, 0x9d, 0x5e, 0xf2, 0x89, 0x62, 0x59, 0x46, 0x87, 0x3d, 0x30, 0xb4, + 0xba, 0x3a, 0xa1, 0xf9, 0x38, 0x15, 0x6e, 0xe5, 0x10, 0x1b, 0x0c, 0x94, + 0x75, 0xaf, 0x5f, 0x11, 0x93, 0x4a, 0x95, 0xcb, +}; +static const unsigned char kat3563_nonce[] = { + 0xd4, 0x0b, 0xd6, 0x89, 0xd5, 0x48, 0xbc, 0x6c, 0x5e, 0x47, 0x0d, 0xbb, + 0x27, 0xce, 0x10, 0x5a, +}; +static const unsigned char kat3563_persstr[] = {0}; +static const unsigned char kat3563_entropyinpr1[] = { + 0xaf, 0x57, 0x60, 0x42, 0x1b, 0xcf, 0xc7, 0x8b, 0xd1, 0x9e, 0xb6, 0xe2, + 0x55, 0x79, 0x8d, 0xab, 0xe7, 0xbb, 0x41, 0x13, 0xdc, 0xa6, 0x1e, 0xb6, + 0xfd, 0x28, 0xdd, 0x4e, 0x28, 0x59, 0xf0, 0x1a, +}; +static const unsigned char kat3563_addinpr1[] = { + 0x8c, 0x32, 0xc0, 0xfe, 0x20, 0xb0, 0xde, 0x59, 0xc4, 0xfc, 0x21, 0x1c, + 0x8d, 0x20, 0x3a, 0x5f, 0x85, 0xbc, 0xf4, 0x01, 0x0c, 0xe5, 0xb4, 0x3f, + 0xb7, 0x38, 0xe0, 0x02, 0x6d, 0x06, 0x31, 0x15, +}; +static const unsigned char kat3563_entropyinpr2[] = { + 0x18, 0x14, 0x7b, 0x05, 0x57, 0x66, 0x74, 0xaa, 0x54, 0x6a, 0xeb, 0xe0, + 0x1b, 0x78, 0xa7, 0x9d, 0xfe, 0xde, 0x75, 0xb1, 0xc7, 0x19, 0x87, 0x00, + 0x91, 0xc9, 0xfc, 0x4e, 0xe7, 0x53, 0xce, 0x47, +}; +static const unsigned char kat3563_addinpr2[] = { + 0x8a, 0xf5, 0xbe, 0x7f, 0x17, 0xf1, 0x4b, 0xe5, 0x05, 0xe1, 0xa1, 0x0b, + 0x7a, 0x20, 0x8b, 0xe1, 0x76, 0x50, 0x77, 0x5c, 0xb8, 0xf7, 0x1d, 0xb2, + 0x71, 0x02, 0x5b, 0xa6, 0xa3, 0x18, 0x80, 0x81, +}; +static const unsigned char kat3563_retbits[] = { + 0xc8, 0xfd, 0x14, 0xeb, 0xf3, 0x86, 0x46, 0xee, 0xed, 0xa8, 0xca, 0x47, + 0xcb, 0x42, 0xf5, 0xdf, 0xae, 0x6b, 0xd5, 0xd9, 0x65, 0xca, 0xe3, 0x28, + 0x3b, 0x05, 0x60, 0xea, 0x67, 0x26, 0x3c, 0xdf, 0x9b, 0xd3, 0xcf, 0x6d, + 0x8b, 0x3e, 0x11, 0xb3, 0xb0, 0xeb, 0x79, 0xe8, 0x25, 0xb7, 0x47, 0x72, + 0xd0, 0xdf, 0xa4, 0xf5, 0xe2, 0x29, 0xb8, 0x54, 0xda, 0x6a, 0x05, 0x04, + 0x95, 0xcb, 0x91, 0x7c, +}; +static const struct drbg_kat_pr_true kat3563_t = { + 7, kat3563_entropyin, kat3563_nonce, kat3563_persstr, + kat3563_entropyinpr1, kat3563_addinpr1, kat3563_entropyinpr2, + kat3563_addinpr2, kat3563_retbits +}; +static const struct drbg_kat kat3563 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3563_t +}; + +static const unsigned char kat3564_entropyin[] = { + 0x97, 0x19, 0x90, 0xd9, 0x65, 0x61, 0x5b, 0x0e, 0xf8, 0xee, 0x54, 0x92, + 0xcf, 0x9e, 0x52, 0x3b, 0xcc, 0x86, 0xf7, 0xf7, 0x94, 0x99, 0x2d, 0xd7, + 0x9b, 0x4f, 0x00, 0x5b, 0x81, 0xff, 0xb4, 0x36, +}; +static const unsigned char kat3564_nonce[] = { + 0x25, 0x9c, 0x50, 0xc2, 0x56, 0x6b, 0x6c, 0x12, 0x3f, 0xaf, 0x7d, 0x89, + 0xb3, 0x96, 0x62, 0x7b, +}; +static const unsigned char kat3564_persstr[] = {0}; +static const unsigned char kat3564_entropyinpr1[] = { + 0x35, 0x3d, 0xd4, 0x12, 0x39, 0x64, 0x6d, 0x8d, 0xb4, 0x3c, 0xe9, 0xc1, + 0x64, 0x04, 0x07, 0x1e, 0x5d, 0x85, 0x3f, 0xbb, 0xe2, 0x32, 0x20, 0x1a, + 0x57, 0x19, 0x90, 0xba, 0xcf, 0x8f, 0x10, 0xcb, +}; +static const unsigned char kat3564_addinpr1[] = { + 0xf6, 0x4a, 0x39, 0x61, 0xd4, 0x61, 0x6b, 0x07, 0xcc, 0xc0, 0x01, 0x46, + 0x90, 0x2c, 0x26, 0x1f, 0xd1, 0x20, 0x30, 0xdf, 0xe7, 0x96, 0x6c, 0xcc, + 0xd4, 0xc1, 0x89, 0xcb, 0x51, 0xef, 0xf8, 0xb1, +}; +static const unsigned char kat3564_entropyinpr2[] = { + 0xcd, 0x39, 0xfb, 0x0f, 0x78, 0xc2, 0x79, 0xc0, 0x32, 0x4c, 0xb5, 0x4c, + 0xbc, 0x0f, 0xf5, 0x6d, 0xbc, 0x02, 0x11, 0x60, 0xf4, 0x5e, 0x61, 0xf1, + 0x23, 0x63, 0xe9, 0xcb, 0x6e, 0x80, 0xb7, 0xa2, +}; +static const unsigned char kat3564_addinpr2[] = { + 0xea, 0x09, 0x44, 0xcd, 0x18, 0x29, 0xcb, 0x4f, 0x2c, 0x50, 0x5b, 0xb6, + 0xe8, 0x37, 0x83, 0x03, 0xfe, 0xf9, 0x8a, 0xf0, 0x02, 0xa7, 0xfb, 0x44, + 0xd8, 0x0c, 0xb8, 0xcd, 0xb3, 0x43, 0xe8, 0x29, +}; +static const unsigned char kat3564_retbits[] = { + 0x0c, 0xd1, 0xb0, 0x36, 0xf2, 0x0b, 0xda, 0x78, 0xa8, 0x19, 0x1b, 0x3e, + 0x4b, 0x59, 0x8e, 0x89, 0xd6, 0xd1, 0x50, 0x3e, 0xbb, 0x3b, 0xfc, 0xef, + 0xa1, 0x57, 0xad, 0x82, 0xfb, 0x3e, 0x62, 0xe4, 0x3a, 0xf4, 0x9e, 0xf8, + 0x74, 0x55, 0x6c, 0x55, 0xab, 0xee, 0x89, 0x16, 0x08, 0x5d, 0x17, 0xb0, + 0x94, 0x98, 0x70, 0xa5, 0x8f, 0x81, 0x33, 0x26, 0x3f, 0x2f, 0x46, 0xb0, + 0xcb, 0x76, 0x9d, 0xa1, +}; +static const struct drbg_kat_pr_true kat3564_t = { + 8, kat3564_entropyin, kat3564_nonce, kat3564_persstr, + kat3564_entropyinpr1, kat3564_addinpr1, kat3564_entropyinpr2, + kat3564_addinpr2, kat3564_retbits +}; +static const struct drbg_kat kat3564 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3564_t +}; + +static const unsigned char kat3565_entropyin[] = { + 0x48, 0x28, 0xa5, 0xc3, 0x39, 0x1b, 0x33, 0xba, 0x02, 0xc5, 0x6a, 0x5e, + 0x7e, 0xbf, 0x8d, 0x57, 0x81, 0x3c, 0x2a, 0x13, 0xb3, 0x9b, 0x32, 0xa5, + 0x32, 0xe4, 0xeb, 0x54, 0xf9, 0x8f, 0xa2, 0x77, +}; +static const unsigned char kat3565_nonce[] = { + 0x1f, 0x55, 0x29, 0x86, 0x04, 0xdf, 0x26, 0xa2, 0xc5, 0x62, 0xa1, 0x00, + 0xce, 0xa5, 0x17, 0x9f, +}; +static const unsigned char kat3565_persstr[] = {0}; +static const unsigned char kat3565_entropyinpr1[] = { + 0xcf, 0x23, 0xa3, 0x92, 0x4e, 0x15, 0x4c, 0x75, 0xa0, 0xc0, 0x92, 0x6e, + 0xda, 0x78, 0xa0, 0xc4, 0x36, 0xe0, 0x83, 0xa6, 0x96, 0xe1, 0x5d, 0xf6, + 0xe9, 0x86, 0xe3, 0x5b, 0x8c, 0x86, 0xd1, 0x3d, +}; +static const unsigned char kat3565_addinpr1[] = { + 0x72, 0x3c, 0xe5, 0x19, 0xe7, 0x93, 0x32, 0x91, 0xec, 0x53, 0x70, 0xe7, + 0x08, 0x1f, 0x42, 0x46, 0x55, 0x22, 0x9e, 0x54, 0x81, 0xd8, 0xc4, 0xff, + 0xb3, 0x37, 0x08, 0x56, 0xb4, 0x69, 0x0c, 0x1c, +}; +static const unsigned char kat3565_entropyinpr2[] = { + 0xe1, 0x77, 0xdc, 0x50, 0x1e, 0x82, 0xef, 0x1d, 0x19, 0x84, 0xc7, 0x8d, + 0xca, 0x62, 0x1f, 0xbb, 0x0c, 0x73, 0xfe, 0x68, 0xdf, 0xd3, 0x84, 0x76, + 0x1e, 0xc0, 0xd7, 0xd6, 0x48, 0xa7, 0x67, 0x07, +}; +static const unsigned char kat3565_addinpr2[] = { + 0xa1, 0x57, 0xde, 0x2c, 0xc4, 0xfd, 0x95, 0x81, 0x5e, 0x1f, 0xdb, 0xec, + 0xe2, 0xb1, 0x5c, 0x47, 0x4a, 0xc7, 0x6e, 0xab, 0x03, 0x5a, 0x22, 0x83, + 0x43, 0x73, 0x3e, 0xb6, 0x23, 0xed, 0x8b, 0x66, +}; +static const unsigned char kat3565_retbits[] = { + 0xd7, 0x54, 0x14, 0x65, 0x72, 0x27, 0x2e, 0xbb, 0xe9, 0xda, 0x93, 0x52, + 0x50, 0x74, 0xdf, 0x35, 0x72, 0x65, 0x09, 0x57, 0x50, 0x68, 0x7f, 0x67, + 0x2f, 0x14, 0x58, 0xf6, 0xef, 0x2c, 0x4e, 0xa4, 0x44, 0x13, 0x11, 0x87, + 0x1e, 0xd8, 0x05, 0x22, 0x67, 0xa5, 0xfc, 0x6c, 0x0f, 0x3a, 0x65, 0xf3, + 0x56, 0x48, 0x02, 0x8a, 0xb5, 0x78, 0x09, 0xeb, 0xe5, 0x62, 0x40, 0xd9, + 0xa5, 0xf6, 0x62, 0x9c, +}; +static const struct drbg_kat_pr_true kat3565_t = { + 9, kat3565_entropyin, kat3565_nonce, kat3565_persstr, + kat3565_entropyinpr1, kat3565_addinpr1, kat3565_entropyinpr2, + kat3565_addinpr2, kat3565_retbits +}; +static const struct drbg_kat kat3565 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3565_t +}; + +static const unsigned char kat3566_entropyin[] = { + 0x32, 0x8a, 0x3a, 0xf8, 0x68, 0x93, 0xc2, 0x1a, 0xe1, 0x21, 0x59, 0xd4, + 0xc2, 0xa0, 0xca, 0xd2, 0xda, 0x87, 0x20, 0xb2, 0xc1, 0xe1, 0x76, 0x4c, + 0x41, 0x19, 0x88, 0x4b, 0xcb, 0xe0, 0x18, 0x36, +}; +static const unsigned char kat3566_nonce[] = { + 0x94, 0xe7, 0x10, 0xed, 0x04, 0x90, 0xec, 0xd4, 0x5c, 0xe8, 0x9c, 0x47, + 0x83, 0x6d, 0x99, 0xf9, +}; +static const unsigned char kat3566_persstr[] = {0}; +static const unsigned char kat3566_entropyinpr1[] = { + 0x4d, 0x23, 0x93, 0x20, 0x99, 0xe8, 0x49, 0xa8, 0x05, 0x8d, 0x3c, 0x36, + 0xdc, 0x84, 0x2c, 0x2b, 0xcd, 0x68, 0x4e, 0xee, 0x27, 0x68, 0x13, 0x7f, + 0xa9, 0x13, 0x58, 0x2c, 0x0e, 0xf0, 0x5f, 0xda, +}; +static const unsigned char kat3566_addinpr1[] = { + 0x00, 0x05, 0x77, 0xf0, 0xe9, 0xe5, 0x0e, 0x39, 0x30, 0x6a, 0x65, 0x64, + 0x49, 0x8a, 0x4b, 0x19, 0x0c, 0xdb, 0xb8, 0x7a, 0x91, 0x7e, 0x56, 0x13, + 0x3a, 0x2e, 0x6d, 0xd0, 0x66, 0xb3, 0x55, 0xd6, +}; +static const unsigned char kat3566_entropyinpr2[] = { + 0x87, 0x4b, 0x1e, 0x1d, 0x2c, 0x9a, 0x00, 0xe2, 0xbb, 0x01, 0x61, 0x1f, + 0x2e, 0x5d, 0x6c, 0xa3, 0x2e, 0x8a, 0x42, 0x16, 0xde, 0x85, 0xc4, 0x0d, + 0xa7, 0xeb, 0x62, 0xbc, 0x98, 0x45, 0x5c, 0x4c, +}; +static const unsigned char kat3566_addinpr2[] = { + 0x6d, 0x4a, 0xcf, 0x66, 0xf2, 0x7f, 0x44, 0xd5, 0xb5, 0x45, 0xf8, 0x1b, + 0x72, 0x58, 0xe9, 0xba, 0xb9, 0xa6, 0x6d, 0x1f, 0x1c, 0xe4, 0xf1, 0x21, + 0xc6, 0x51, 0x5f, 0x85, 0x7d, 0x5e, 0xf5, 0xd6, +}; +static const unsigned char kat3566_retbits[] = { + 0x40, 0xaf, 0xef, 0x4a, 0xce, 0x54, 0x82, 0x05, 0xe9, 0x62, 0x57, 0xca, + 0x4e, 0xf3, 0x65, 0xbb, 0x31, 0xac, 0xc3, 0xf2, 0x6b, 0x3b, 0xff, 0x09, + 0x24, 0x36, 0xf4, 0xde, 0xbc, 0xa3, 0x27, 0x99, 0x2a, 0x14, 0xd7, 0x56, + 0xcd, 0x95, 0xd3, 0xeb, 0x31, 0x55, 0x9d, 0xe8, 0xdc, 0xc6, 0x19, 0x90, + 0xe2, 0x62, 0x34, 0xed, 0x81, 0x75, 0x02, 0x1c, 0x1d, 0x46, 0x54, 0xa0, + 0xe4, 0x59, 0x26, 0xae, +}; +static const struct drbg_kat_pr_true kat3566_t = { + 10, kat3566_entropyin, kat3566_nonce, kat3566_persstr, + kat3566_entropyinpr1, kat3566_addinpr1, kat3566_entropyinpr2, + kat3566_addinpr2, kat3566_retbits +}; +static const struct drbg_kat kat3566 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3566_t +}; + +static const unsigned char kat3567_entropyin[] = { + 0x4b, 0x11, 0xfa, 0xfa, 0xea, 0x5a, 0x99, 0x45, 0xd2, 0x08, 0x14, 0xac, + 0xd8, 0x77, 0x77, 0xce, 0xaf, 0xfb, 0xb4, 0x43, 0x25, 0xf1, 0x01, 0x25, + 0xdd, 0x2b, 0x2f, 0x92, 0x2c, 0x20, 0x78, 0xf6, +}; +static const unsigned char kat3567_nonce[] = { + 0x55, 0x8c, 0xc8, 0x66, 0x23, 0x81, 0x4b, 0x5c, 0x96, 0x02, 0xd5, 0x69, + 0x67, 0x06, 0x80, 0x80, +}; +static const unsigned char kat3567_persstr[] = {0}; +static const unsigned char kat3567_entropyinpr1[] = { + 0x25, 0x1e, 0x9f, 0x7d, 0xb4, 0x48, 0xd3, 0x2b, 0xf5, 0xd1, 0x95, 0x29, + 0x03, 0xf6, 0x86, 0xba, 0xec, 0x93, 0x8c, 0xee, 0x8a, 0x8b, 0x1f, 0x40, + 0xdf, 0xb9, 0x33, 0xef, 0x7d, 0x1d, 0xc9, 0x3c, +}; +static const unsigned char kat3567_addinpr1[] = { + 0x92, 0xfb, 0x30, 0x5e, 0xb9, 0xf9, 0x38, 0x05, 0x0b, 0x78, 0xa3, 0xdb, + 0x14, 0x09, 0x04, 0x3c, 0x5d, 0x42, 0xf9, 0xa6, 0xda, 0xf7, 0xf0, 0x52, + 0x7d, 0xb7, 0xa0, 0xce, 0x16, 0x54, 0x68, 0x9a, +}; +static const unsigned char kat3567_entropyinpr2[] = { + 0x06, 0x2c, 0x74, 0x03, 0xf2, 0x1d, 0x7b, 0x51, 0x6a, 0xc8, 0x7f, 0x80, + 0x75, 0x72, 0x2b, 0xdf, 0xb7, 0xb7, 0xea, 0xd2, 0xa3, 0xcc, 0x3e, 0xae, + 0x8f, 0xe9, 0xf0, 0xdb, 0xbd, 0x33, 0xff, 0x67, +}; +static const unsigned char kat3567_addinpr2[] = { + 0xa2, 0xce, 0x9b, 0x84, 0x18, 0x7c, 0xcc, 0xc8, 0x85, 0x9c, 0x97, 0x45, + 0xbf, 0x8d, 0xc9, 0xc2, 0x26, 0x2d, 0xe9, 0xf5, 0x02, 0x2c, 0x3d, 0x3e, + 0xd8, 0xa6, 0xed, 0x8a, 0xb1, 0x9f, 0x4f, 0xee, +}; +static const unsigned char kat3567_retbits[] = { + 0xf8, 0xcb, 0x3e, 0x74, 0x4d, 0x69, 0x5c, 0x0c, 0x00, 0xc3, 0x9d, 0x85, + 0x43, 0x7a, 0xed, 0xe8, 0xf8, 0xea, 0x28, 0x08, 0x71, 0xfd, 0x35, 0xd0, + 0x08, 0x94, 0x0d, 0xc0, 0x01, 0xef, 0x40, 0x36, 0x4d, 0x3c, 0x73, 0x6d, + 0x07, 0x3a, 0x6d, 0x7e, 0x0b, 0xb0, 0xc0, 0x60, 0x1a, 0x37, 0x98, 0xd0, + 0x49, 0x63, 0x21, 0x67, 0xaa, 0x33, 0xf2, 0x81, 0xe1, 0x1c, 0xda, 0x46, + 0xfd, 0x5e, 0x85, 0x68, +}; +static const struct drbg_kat_pr_true kat3567_t = { + 11, kat3567_entropyin, kat3567_nonce, kat3567_persstr, + kat3567_entropyinpr1, kat3567_addinpr1, kat3567_entropyinpr2, + kat3567_addinpr2, kat3567_retbits +}; +static const struct drbg_kat kat3567 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3567_t +}; + +static const unsigned char kat3568_entropyin[] = { + 0x10, 0x99, 0xc7, 0xef, 0xdb, 0x10, 0x81, 0xce, 0xaa, 0x7a, 0x6f, 0x49, + 0x9c, 0x49, 0x5e, 0x57, 0x26, 0xee, 0x4d, 0x28, 0xb3, 0xa4, 0x69, 0x31, + 0x38, 0x6f, 0x02, 0x5c, 0x3f, 0x5b, 0x3d, 0xd3, +}; +static const unsigned char kat3568_nonce[] = { + 0x37, 0x3b, 0xab, 0xd6, 0xa0, 0xb0, 0x20, 0x06, 0x6d, 0x50, 0xd4, 0x3e, + 0x46, 0x22, 0xdc, 0x7d, +}; +static const unsigned char kat3568_persstr[] = {0}; +static const unsigned char kat3568_entropyinpr1[] = { + 0x9a, 0x56, 0xc7, 0xb2, 0x54, 0x52, 0xe9, 0x5f, 0x60, 0x64, 0xfa, 0xbe, + 0x8c, 0xbf, 0x2e, 0xa4, 0x4d, 0xfa, 0x11, 0x44, 0x38, 0x6a, 0x7f, 0xee, + 0x37, 0xfe, 0xe0, 0x27, 0xa1, 0xad, 0x5d, 0x98, +}; +static const unsigned char kat3568_addinpr1[] = { + 0xb2, 0x13, 0xd8, 0x08, 0x7d, 0x07, 0x3a, 0x24, 0x70, 0xaf, 0xad, 0x08, + 0x2c, 0xf6, 0xff, 0xe8, 0xb0, 0xea, 0xac, 0xe7, 0xe9, 0x4e, 0xc9, 0xe2, + 0x94, 0x05, 0x0d, 0xee, 0xaf, 0x0a, 0x26, 0xa5, +}; +static const unsigned char kat3568_entropyinpr2[] = { + 0x5c, 0x48, 0x2a, 0x91, 0x42, 0x11, 0xa7, 0x16, 0xda, 0x6f, 0x39, 0x21, + 0xf4, 0xaa, 0x51, 0xba, 0x84, 0x36, 0x02, 0x04, 0x3b, 0x80, 0x89, 0x5a, + 0x7e, 0xbd, 0xdb, 0x76, 0x51, 0x71, 0x53, 0x5f, +}; +static const unsigned char kat3568_addinpr2[] = { + 0x85, 0xa0, 0x09, 0x5a, 0x5d, 0xd2, 0x92, 0x6b, 0x96, 0x4a, 0x67, 0x48, + 0x6e, 0x80, 0x20, 0xc8, 0x1f, 0x71, 0x81, 0x1f, 0x74, 0xab, 0x27, 0x93, + 0x85, 0x57, 0xed, 0x57, 0xef, 0x6f, 0x60, 0x7e, +}; +static const unsigned char kat3568_retbits[] = { + 0xe5, 0x92, 0x7e, 0xb7, 0x93, 0x96, 0x83, 0x77, 0xa4, 0x87, 0xee, 0xe6, + 0x29, 0x7d, 0xd0, 0xd1, 0xd3, 0xf3, 0xb8, 0x82, 0xd8, 0xf5, 0x2b, 0xde, + 0x51, 0x89, 0x50, 0x20, 0x1d, 0x00, 0x3b, 0x1e, 0x39, 0x8e, 0x33, 0x65, + 0xab, 0xd1, 0x12, 0x6b, 0xd0, 0x99, 0x50, 0x0f, 0x6e, 0x1a, 0x6c, 0x1c, + 0x8f, 0xd3, 0x62, 0x33, 0x09, 0x21, 0x13, 0x9d, 0x86, 0xde, 0xa6, 0x9f, + 0x14, 0x72, 0xfc, 0x77, +}; +static const struct drbg_kat_pr_true kat3568_t = { + 12, kat3568_entropyin, kat3568_nonce, kat3568_persstr, + kat3568_entropyinpr1, kat3568_addinpr1, kat3568_entropyinpr2, + kat3568_addinpr2, kat3568_retbits +}; +static const struct drbg_kat kat3568 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3568_t +}; + +static const unsigned char kat3569_entropyin[] = { + 0x23, 0x04, 0x2c, 0x00, 0x03, 0xb8, 0x70, 0x40, 0x9a, 0x56, 0x30, 0x56, + 0xc2, 0xb4, 0x8b, 0x6b, 0x2b, 0xcf, 0x29, 0xe5, 0x2b, 0x27, 0x32, 0xbc, + 0xd3, 0xa4, 0x2a, 0xa1, 0x1a, 0x45, 0xc2, 0x74, +}; +static const unsigned char kat3569_nonce[] = { + 0x92, 0x8c, 0x3b, 0x68, 0x37, 0x44, 0xbe, 0xfc, 0x60, 0x14, 0xd5, 0x40, + 0x65, 0x98, 0xd9, 0x8c, +}; +static const unsigned char kat3569_persstr[] = {0}; +static const unsigned char kat3569_entropyinpr1[] = { + 0x34, 0x01, 0xbb, 0x98, 0xcd, 0x1c, 0x2d, 0x6a, 0x9b, 0xb6, 0xd7, 0x88, + 0x69, 0x6d, 0xe0, 0xd5, 0x85, 0x2a, 0xd8, 0x86, 0x15, 0xc7, 0xb9, 0x71, + 0x6a, 0x87, 0x06, 0xe9, 0xcc, 0xd0, 0x52, 0xa7, +}; +static const unsigned char kat3569_addinpr1[] = { + 0xc4, 0x0f, 0xa3, 0xcb, 0x9f, 0xb3, 0x95, 0x72, 0xac, 0x2e, 0x22, 0xb5, + 0x55, 0x6a, 0x2c, 0x75, 0xbe, 0xeb, 0xd8, 0xec, 0x75, 0x4d, 0x96, 0x17, + 0x1f, 0x14, 0x86, 0xa7, 0x84, 0x5c, 0x67, 0x80, +}; +static const unsigned char kat3569_entropyinpr2[] = { + 0xa1, 0xa1, 0x14, 0xcd, 0x1a, 0x59, 0xb6, 0x22, 0xb9, 0x90, 0xf0, 0x1b, + 0x2d, 0x47, 0x40, 0x63, 0x1e, 0x3a, 0x31, 0xd7, 0x35, 0x61, 0x63, 0xbd, + 0x0f, 0x7f, 0x6f, 0x8e, 0xf8, 0xad, 0xca, 0xbe, +}; +static const unsigned char kat3569_addinpr2[] = { + 0xc1, 0x6f, 0x6a, 0x1e, 0xfb, 0x94, 0xb2, 0xd2, 0x88, 0xc6, 0xab, 0xbd, + 0xb9, 0xd0, 0xc5, 0x65, 0xf5, 0xfe, 0xb8, 0x23, 0x60, 0xd9, 0xad, 0xd5, + 0x6a, 0x45, 0x27, 0x94, 0x21, 0x4d, 0x22, 0x8e, +}; +static const unsigned char kat3569_retbits[] = { + 0x18, 0xda, 0x94, 0xa8, 0x76, 0x53, 0x2b, 0xb7, 0x8b, 0xe4, 0x75, 0xdf, + 0x05, 0x03, 0x00, 0xbb, 0xd5, 0xd8, 0x03, 0x9f, 0x2f, 0x3f, 0xcf, 0xf1, + 0x01, 0x7e, 0x05, 0xe2, 0x89, 0x9c, 0x3a, 0x17, 0xd8, 0xf7, 0xe3, 0xcf, + 0xf0, 0x7b, 0xca, 0xbe, 0xcf, 0x11, 0xf8, 0x06, 0xd2, 0xdb, 0x10, 0xe6, + 0xa9, 0x79, 0xab, 0x86, 0x7b, 0x5a, 0x74, 0x29, 0x20, 0xb2, 0xdd, 0x6f, + 0x4d, 0x18, 0x95, 0x21, +}; +static const struct drbg_kat_pr_true kat3569_t = { + 13, kat3569_entropyin, kat3569_nonce, kat3569_persstr, + kat3569_entropyinpr1, kat3569_addinpr1, kat3569_entropyinpr2, + kat3569_addinpr2, kat3569_retbits +}; +static const struct drbg_kat kat3569 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3569_t +}; + +static const unsigned char kat3570_entropyin[] = { + 0x1b, 0x46, 0xc5, 0xa0, 0xde, 0x71, 0x0a, 0xf4, 0xc1, 0xb3, 0xf8, 0xf7, + 0x7e, 0x0d, 0x50, 0xb5, 0x2e, 0xe4, 0x61, 0x36, 0xe9, 0xc1, 0x9e, 0x50, + 0xf1, 0x24, 0x9f, 0xf1, 0xb0, 0x34, 0x59, 0x00, +}; +static const unsigned char kat3570_nonce[] = { + 0xb2, 0x87, 0xec, 0x51, 0xff, 0x61, 0xe2, 0xb0, 0xf8, 0xd2, 0xbc, 0xd8, + 0x0f, 0x52, 0x88, 0x56, +}; +static const unsigned char kat3570_persstr[] = {0}; +static const unsigned char kat3570_entropyinpr1[] = { + 0xb0, 0x0f, 0x5b, 0x2d, 0xff, 0x8e, 0x56, 0x6d, 0xf9, 0x49, 0x54, 0x8c, + 0x34, 0x12, 0x47, 0x43, 0xb5, 0x12, 0xa6, 0x79, 0xab, 0x10, 0x48, 0x42, + 0x44, 0x73, 0xa5, 0x35, 0x69, 0x41, 0x4e, 0x21, +}; +static const unsigned char kat3570_addinpr1[] = { + 0x1a, 0x83, 0xbe, 0xef, 0xaf, 0x54, 0x3c, 0x6c, 0xd9, 0xe3, 0x18, 0x97, + 0x28, 0x62, 0x5e, 0xa3, 0xd3, 0x5f, 0xc0, 0xb8, 0x7e, 0xdb, 0x63, 0x55, + 0xed, 0xc4, 0xd3, 0x47, 0x47, 0x03, 0x9d, 0x2e, +}; +static const unsigned char kat3570_entropyinpr2[] = { + 0x7f, 0xb6, 0xca, 0x08, 0xe7, 0xd1, 0xa8, 0x29, 0xed, 0x08, 0xe5, 0x53, + 0x7c, 0xb3, 0x27, 0x77, 0xa0, 0xc9, 0xe5, 0x35, 0x30, 0x95, 0xf5, 0x03, + 0xfc, 0xf9, 0x2b, 0x3b, 0x8d, 0x5d, 0x95, 0x0b, +}; +static const unsigned char kat3570_addinpr2[] = { + 0x82, 0x24, 0xf8, 0x4a, 0xdc, 0x9d, 0xff, 0x6c, 0x3b, 0x0f, 0xa3, 0xd2, + 0x71, 0xd1, 0xf0, 0x36, 0x96, 0x94, 0x52, 0x41, 0x14, 0x2e, 0xc0, 0xe8, + 0x45, 0xe7, 0x5c, 0x56, 0xe2, 0x90, 0xe4, 0xcd, +}; +static const unsigned char kat3570_retbits[] = { + 0xc5, 0x72, 0xc7, 0x7d, 0x60, 0x81, 0x90, 0xe7, 0x10, 0x22, 0xde, 0xb8, + 0x81, 0x22, 0x5f, 0x87, 0xb6, 0xb1, 0xf1, 0x29, 0x27, 0x9e, 0x23, 0x17, + 0x8c, 0x73, 0x1c, 0xc0, 0xa1, 0x19, 0x40, 0x8c, 0x6f, 0x83, 0x16, 0xc1, + 0xda, 0x8b, 0x18, 0xa0, 0x0f, 0x55, 0x1e, 0xb6, 0xfd, 0xd3, 0x9e, 0xa1, + 0xef, 0x42, 0x35, 0xc3, 0x01, 0xd1, 0xc1, 0x33, 0x48, 0xad, 0xc1, 0x47, + 0xd0, 0xfc, 0x3a, 0x71, +}; +static const struct drbg_kat_pr_true kat3570_t = { + 14, kat3570_entropyin, kat3570_nonce, kat3570_persstr, + kat3570_entropyinpr1, kat3570_addinpr1, kat3570_entropyinpr2, + kat3570_addinpr2, kat3570_retbits +}; +static const struct drbg_kat kat3570 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 0, 32, 64, &kat3570_t +}; + +static const unsigned char kat3571_entropyin[] = { + 0x38, 0xd5, 0x4f, 0x70, 0x9a, 0x27, 0x4e, 0x03, 0x67, 0xa9, 0x43, 0xb9, + 0xe9, 0x0f, 0x6f, 0xdb, 0x32, 0x41, 0x24, 0x44, 0x94, 0x1b, 0x7e, 0xab, + 0x92, 0x87, 0x05, 0xfa, 0xa1, 0x04, 0x5f, 0x90, +}; +static const unsigned char kat3571_nonce[] = { + 0xd4, 0xd5, 0xaa, 0x7a, 0x06, 0xb6, 0x15, 0x28, 0x75, 0x2b, 0x63, 0x3e, + 0xb7, 0xd7, 0x77, 0xba, +}; +static const unsigned char kat3571_persstr[] = { + 0x84, 0x73, 0x13, 0xd7, 0xe4, 0xe0, 0x2d, 0xd8, 0xa2, 0x33, 0xc3, 0xa9, + 0xfb, 0x77, 0xa3, 0x10, 0x09, 0x12, 0x88, 0x5b, 0xe5, 0x86, 0x6c, 0x8f, + 0x44, 0xf4, 0x7a, 0xd8, 0x48, 0x9b, 0xe3, 0xc8, +}; +static const unsigned char kat3571_entropyinpr1[] = { + 0x59, 0xc0, 0x2e, 0x14, 0x2d, 0xb6, 0x46, 0x21, 0xc1, 0x63, 0xd8, 0x62, + 0x87, 0xbe, 0x98, 0x18, 0xdf, 0xfe, 0xf5, 0xe9, 0xb0, 0x15, 0xba, 0x1a, + 0x86, 0xf6, 0x3f, 0xa8, 0xc1, 0x8a, 0xd1, 0xe1, +}; +static const unsigned char kat3571_addinpr1[] = {0}; +static const unsigned char kat3571_entropyinpr2[] = { + 0xe3, 0x2a, 0x2a, 0xe8, 0x54, 0x7f, 0xdb, 0x8e, 0xae, 0xa2, 0xde, 0xa1, + 0x5e, 0x0e, 0x08, 0xd8, 0x76, 0x16, 0xd1, 0x80, 0xe4, 0x9d, 0x84, 0x91, + 0x02, 0x56, 0xd3, 0x33, 0x99, 0x33, 0x44, 0xe6, +}; +static const unsigned char kat3571_addinpr2[] = {0}; +static const unsigned char kat3571_retbits[] = { + 0x43, 0x69, 0xfe, 0xfd, 0xb9, 0x38, 0x57, 0xce, 0x6a, 0x50, 0xf5, 0x24, + 0x37, 0x09, 0x87, 0x6a, 0x68, 0x87, 0xf7, 0xc8, 0xfa, 0xcc, 0x08, 0x7d, + 0xb9, 0x61, 0x64, 0xd1, 0x30, 0x03, 0x01, 0xcf, 0xeb, 0x0b, 0xcd, 0xbb, + 0x25, 0x38, 0xa4, 0x56, 0x7a, 0xc3, 0xcf, 0xf4, 0xb9, 0xc6, 0xc1, 0x6d, + 0xe6, 0x36, 0xc2, 0xc6, 0x44, 0x9b, 0x8b, 0x55, 0xbb, 0x1d, 0x1c, 0xcd, + 0x87, 0x28, 0xe2, 0xc2, +}; +static const struct drbg_kat_pr_true kat3571_t = { + 0, kat3571_entropyin, kat3571_nonce, kat3571_persstr, + kat3571_entropyinpr1, kat3571_addinpr1, kat3571_entropyinpr2, + kat3571_addinpr2, kat3571_retbits +}; +static const struct drbg_kat kat3571 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3571_t +}; + +static const unsigned char kat3572_entropyin[] = { + 0x98, 0xd6, 0xd8, 0xfe, 0x8d, 0x18, 0x96, 0xe9, 0xff, 0x42, 0x78, 0x7e, + 0x64, 0x50, 0xe2, 0x8b, 0x0d, 0x59, 0xfb, 0x84, 0x19, 0xc9, 0x00, 0xd1, + 0x21, 0x40, 0xb1, 0xaf, 0xe2, 0xb1, 0x22, 0xe9, +}; +static const unsigned char kat3572_nonce[] = { + 0x53, 0x14, 0x5d, 0x02, 0x53, 0x91, 0x8b, 0xd9, 0xb2, 0x5a, 0xce, 0xeb, + 0xc1, 0xb9, 0xd8, 0x38, +}; +static const unsigned char kat3572_persstr[] = { + 0x9e, 0xa9, 0x5b, 0x59, 0x98, 0x84, 0x1e, 0x91, 0x6c, 0xfb, 0x68, 0x5b, + 0x36, 0x2c, 0xea, 0xdd, 0x3c, 0x3b, 0x6c, 0x8d, 0x7e, 0x00, 0x7c, 0x53, + 0x47, 0x12, 0xd8, 0x24, 0xcd, 0x4b, 0x9a, 0x5b, +}; +static const unsigned char kat3572_entropyinpr1[] = { + 0xe6, 0x46, 0x2f, 0x46, 0x18, 0xc7, 0xa6, 0xa3, 0x9b, 0xdd, 0xaf, 0xd0, + 0x51, 0xf8, 0x87, 0x30, 0xbf, 0xf1, 0x25, 0xc7, 0xcb, 0xb9, 0x7b, 0x05, + 0xb7, 0x81, 0x7f, 0x00, 0x22, 0xae, 0xa5, 0xc6, +}; +static const unsigned char kat3572_addinpr1[] = {0}; +static const unsigned char kat3572_entropyinpr2[] = { + 0x24, 0x8d, 0xe2, 0xcc, 0xa3, 0xe2, 0x1a, 0xeb, 0xdb, 0x03, 0x87, 0xce, + 0x40, 0x4e, 0x12, 0xb7, 0xfc, 0xc2, 0xad, 0x51, 0xd4, 0x3e, 0x7b, 0x55, + 0x4e, 0xba, 0x56, 0x57, 0x75, 0xf5, 0x28, 0x26, +}; +static const unsigned char kat3572_addinpr2[] = {0}; +static const unsigned char kat3572_retbits[] = { + 0xcf, 0xc3, 0x87, 0x6c, 0x14, 0x55, 0x67, 0xeb, 0xdd, 0x94, 0xde, 0x43, + 0xd0, 0x72, 0x6e, 0xaa, 0xb0, 0xdd, 0x37, 0x7f, 0x80, 0x3f, 0x6c, 0xf8, + 0x48, 0x0e, 0x86, 0xa7, 0x79, 0xd8, 0xe8, 0xef, 0xaf, 0x14, 0x3d, 0x0d, + 0x3d, 0x0f, 0x23, 0x92, 0x10, 0x9d, 0x56, 0x60, 0x4e, 0x36, 0x7f, 0xdf, + 0xc7, 0x70, 0x65, 0x8b, 0x56, 0xf1, 0xe4, 0x5c, 0x32, 0xc9, 0xa7, 0xa5, + 0xc3, 0x71, 0x19, 0x36, +}; +static const struct drbg_kat_pr_true kat3572_t = { + 1, kat3572_entropyin, kat3572_nonce, kat3572_persstr, + kat3572_entropyinpr1, kat3572_addinpr1, kat3572_entropyinpr2, + kat3572_addinpr2, kat3572_retbits +}; +static const struct drbg_kat kat3572 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3572_t +}; + +static const unsigned char kat3573_entropyin[] = { + 0xc5, 0x14, 0x3e, 0x6d, 0x5b, 0x29, 0x5a, 0x76, 0x89, 0x02, 0x79, 0x39, + 0xed, 0x78, 0x30, 0x89, 0x0d, 0xa2, 0xbd, 0x3c, 0x70, 0x47, 0xa1, 0x7d, + 0xf7, 0x6b, 0xfe, 0x13, 0xca, 0xd8, 0xb2, 0xf3, +}; +static const unsigned char kat3573_nonce[] = { + 0x0e, 0xa3, 0x4f, 0xca, 0x48, 0xfa, 0x0e, 0x9e, 0xf1, 0xe9, 0x90, 0x1c, + 0xa2, 0xec, 0x1e, 0x56, +}; +static const unsigned char kat3573_persstr[] = { + 0x7f, 0x78, 0x43, 0x86, 0x6d, 0xe2, 0x2a, 0xd8, 0x0e, 0xc3, 0x93, 0xeb, + 0x1f, 0x55, 0xcc, 0x02, 0x2a, 0x4e, 0x9b, 0x6b, 0x62, 0x66, 0x6d, 0xd2, + 0x28, 0x99, 0x0c, 0x2a, 0x30, 0xfc, 0xb3, 0x06, +}; +static const unsigned char kat3573_entropyinpr1[] = { + 0xd3, 0xbc, 0x98, 0xae, 0x70, 0x76, 0x80, 0xfa, 0xb6, 0x01, 0x5c, 0x5c, + 0x05, 0xc9, 0x5d, 0x43, 0xbb, 0x86, 0xca, 0xdb, 0xe6, 0x14, 0x9b, 0xff, + 0x72, 0x03, 0x69, 0x8d, 0x0c, 0xe3, 0xa9, 0xe2, +}; +static const unsigned char kat3573_addinpr1[] = {0}; +static const unsigned char kat3573_entropyinpr2[] = { + 0x50, 0x2d, 0xfa, 0x50, 0x33, 0xaf, 0xd3, 0xb1, 0x5c, 0x20, 0xa6, 0xae, + 0xc2, 0x2f, 0xee, 0xfa, 0xd2, 0x20, 0xd0, 0x26, 0xf8, 0x3d, 0x2e, 0x5c, + 0x5f, 0xa3, 0x8f, 0x41, 0x75, 0xfa, 0xb2, 0x95, +}; +static const unsigned char kat3573_addinpr2[] = {0}; +static const unsigned char kat3573_retbits[] = { + 0x00, 0x72, 0x21, 0xb2, 0x5f, 0x15, 0x67, 0xbb, 0x34, 0xee, 0xa0, 0x6e, + 0x9a, 0x72, 0xb9, 0x1f, 0xe3, 0x1b, 0xea, 0x07, 0xff, 0x3c, 0xc8, 0x20, + 0x3d, 0x57, 0xa0, 0x6b, 0x6d, 0x9a, 0x30, 0x67, 0x55, 0x2f, 0x62, 0x9e, + 0x03, 0x68, 0x27, 0xe3, 0x64, 0x1a, 0x85, 0x77, 0xa3, 0xe7, 0xe5, 0x0b, + 0x0d, 0xf5, 0x49, 0xc6, 0x42, 0x4b, 0xf6, 0xdb, 0xc6, 0x36, 0x3b, 0xa5, + 0x44, 0x6e, 0x2a, 0xfa, +}; +static const struct drbg_kat_pr_true kat3573_t = { + 2, kat3573_entropyin, kat3573_nonce, kat3573_persstr, + kat3573_entropyinpr1, kat3573_addinpr1, kat3573_entropyinpr2, + kat3573_addinpr2, kat3573_retbits +}; +static const struct drbg_kat kat3573 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3573_t +}; + +static const unsigned char kat3574_entropyin[] = { + 0x26, 0x4e, 0x18, 0xca, 0xcb, 0xf0, 0xcc, 0xd9, 0xdb, 0x90, 0xcc, 0x71, + 0x82, 0x8f, 0x17, 0xaa, 0x8d, 0x0c, 0x92, 0xb0, 0xe7, 0x06, 0xbd, 0x83, + 0x1f, 0x43, 0x8b, 0x8c, 0xe4, 0x46, 0x9d, 0xc9, +}; +static const unsigned char kat3574_nonce[] = { + 0x42, 0x32, 0x71, 0x81, 0x5a, 0x47, 0x48, 0x6a, 0x4b, 0xa7, 0xe2, 0x5a, + 0xed, 0x68, 0x37, 0xca, +}; +static const unsigned char kat3574_persstr[] = { + 0x6e, 0x24, 0x9e, 0xc4, 0x56, 0x31, 0x6b, 0x39, 0x39, 0xb0, 0xde, 0x9d, + 0x84, 0xe0, 0x24, 0x22, 0xd1, 0x1d, 0xa5, 0x53, 0x8a, 0xb0, 0x76, 0x1e, + 0xa7, 0xe6, 0xb1, 0xb9, 0x9b, 0x9e, 0xa8, 0x0e, +}; +static const unsigned char kat3574_entropyinpr1[] = { + 0x62, 0x6f, 0x2b, 0x13, 0x78, 0x79, 0x0c, 0xdd, 0x4d, 0x27, 0xee, 0xb1, + 0xac, 0x53, 0x5a, 0x8b, 0x46, 0x7f, 0xe1, 0xbc, 0x4e, 0x86, 0xb1, 0xee, + 0x11, 0xe4, 0xd4, 0x31, 0x96, 0x2f, 0xd5, 0x84, +}; +static const unsigned char kat3574_addinpr1[] = {0}; +static const unsigned char kat3574_entropyinpr2[] = { + 0x68, 0x79, 0x6b, 0xfa, 0x21, 0x36, 0x29, 0x7c, 0x0e, 0x92, 0x85, 0x89, + 0xd4, 0x8f, 0x74, 0xc6, 0xb0, 0x9f, 0x45, 0xa8, 0xb2, 0x14, 0x55, 0x97, + 0x27, 0x6c, 0x91, 0x64, 0x27, 0x2f, 0xc5, 0xe3, +}; +static const unsigned char kat3574_addinpr2[] = {0}; +static const unsigned char kat3574_retbits[] = { + 0x2b, 0xbb, 0x8c, 0x6f, 0x80, 0x7c, 0x1d, 0xd2, 0xe9, 0xec, 0x39, 0xa3, + 0xec, 0xf7, 0x83, 0x75, 0x4d, 0x12, 0x57, 0x01, 0x02, 0x92, 0x0f, 0x9b, + 0x48, 0xd4, 0xed, 0x04, 0xfa, 0xe3, 0x37, 0x5d, 0x05, 0xb7, 0xc1, 0x86, + 0xa5, 0x8b, 0xce, 0xfe, 0x8d, 0x5d, 0x71, 0x4f, 0xf4, 0x39, 0x10, 0xa2, + 0x33, 0x45, 0x60, 0x04, 0x9f, 0x95, 0xcb, 0x2a, 0xf4, 0xbb, 0xad, 0x0a, + 0x9b, 0x81, 0x68, 0xdd, +}; +static const struct drbg_kat_pr_true kat3574_t = { + 3, kat3574_entropyin, kat3574_nonce, kat3574_persstr, + kat3574_entropyinpr1, kat3574_addinpr1, kat3574_entropyinpr2, + kat3574_addinpr2, kat3574_retbits +}; +static const struct drbg_kat kat3574 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3574_t +}; + +static const unsigned char kat3575_entropyin[] = { + 0xda, 0x4a, 0x59, 0x97, 0xde, 0x6f, 0x87, 0x9d, 0x90, 0x33, 0x8a, 0x05, + 0xf4, 0x8b, 0x1d, 0xa8, 0x2c, 0x42, 0x41, 0x0d, 0x0f, 0x7f, 0x41, 0xfc, + 0xdd, 0x77, 0xc3, 0xa7, 0xd9, 0x97, 0xc9, 0x2d, +}; +static const unsigned char kat3575_nonce[] = { + 0xa3, 0xf1, 0xc7, 0x0f, 0x78, 0xab, 0xff, 0x24, 0xfc, 0x2c, 0x60, 0x10, + 0x02, 0x90, 0x0f, 0x19, +}; +static const unsigned char kat3575_persstr[] = { + 0x6d, 0x92, 0x57, 0xd2, 0xc1, 0xa2, 0x0a, 0x88, 0x7c, 0x75, 0x8f, 0x12, + 0xfa, 0xf2, 0xa3, 0xd1, 0xb8, 0x19, 0xfb, 0xf6, 0xf5, 0xe0, 0x6d, 0x6b, + 0x06, 0x28, 0xe5, 0x62, 0x34, 0x53, 0xdb, 0x23, +}; +static const unsigned char kat3575_entropyinpr1[] = { + 0xa8, 0xae, 0xba, 0x60, 0x88, 0x96, 0x94, 0xae, 0xa3, 0x0d, 0xa1, 0xde, + 0x9f, 0xd0, 0x81, 0xf4, 0x3d, 0x39, 0xe2, 0x71, 0x54, 0x79, 0x5b, 0xae, + 0xc9, 0x2e, 0x4a, 0xcf, 0xb9, 0x15, 0xbc, 0x6b, +}; +static const unsigned char kat3575_addinpr1[] = {0}; +static const unsigned char kat3575_entropyinpr2[] = { + 0x61, 0x06, 0xcd, 0xb0, 0xf4, 0x5d, 0xfb, 0x81, 0x76, 0xfc, 0x99, 0xa1, + 0x30, 0xfa, 0x02, 0x54, 0xa0, 0xe5, 0x4b, 0x19, 0x64, 0x88, 0x0b, 0xab, + 0xed, 0x0a, 0xab, 0x48, 0xb1, 0x5f, 0xf7, 0x7d, +}; +static const unsigned char kat3575_addinpr2[] = {0}; +static const unsigned char kat3575_retbits[] = { + 0xb1, 0x3a, 0x18, 0x6e, 0xdc, 0x40, 0x57, 0xc4, 0x28, 0xea, 0xfc, 0xe1, + 0x23, 0xde, 0xf1, 0x5c, 0x65, 0xa1, 0xd8, 0x1d, 0x91, 0xc9, 0xc0, 0xb1, + 0xa7, 0xd0, 0x61, 0x27, 0x5e, 0x52, 0x71, 0xc0, 0xcf, 0xfa, 0xf0, 0x32, + 0x79, 0xca, 0x2b, 0x65, 0x8e, 0xdd, 0x12, 0xca, 0xed, 0xc4, 0xc2, 0xa3, + 0x97, 0x3e, 0x22, 0x6a, 0x12, 0x3d, 0x01, 0x75, 0x0f, 0x2f, 0x60, 0x6c, + 0x50, 0x2f, 0x61, 0x68, +}; +static const struct drbg_kat_pr_true kat3575_t = { + 4, kat3575_entropyin, kat3575_nonce, kat3575_persstr, + kat3575_entropyinpr1, kat3575_addinpr1, kat3575_entropyinpr2, + kat3575_addinpr2, kat3575_retbits +}; +static const struct drbg_kat kat3575 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3575_t +}; + +static const unsigned char kat3576_entropyin[] = { + 0x9e, 0x2b, 0x44, 0x24, 0xdb, 0xa3, 0x57, 0x88, 0x52, 0xec, 0x0a, 0x0a, + 0x25, 0xcb, 0x72, 0xae, 0xf7, 0xad, 0x53, 0x1b, 0x7d, 0x03, 0xbf, 0x70, + 0x52, 0x72, 0x14, 0xaa, 0x9b, 0x29, 0x8a, 0x7b, +}; +static const unsigned char kat3576_nonce[] = { + 0x53, 0xa3, 0x64, 0x90, 0x2c, 0x93, 0xd0, 0x87, 0x7c, 0x9d, 0x26, 0xd0, + 0xbb, 0xb1, 0xa4, 0xc8, +}; +static const unsigned char kat3576_persstr[] = { + 0x94, 0xac, 0xf5, 0x26, 0x78, 0xbf, 0xaa, 0x21, 0xa1, 0xb6, 0x3a, 0x17, + 0x6d, 0x79, 0x91, 0xda, 0x28, 0x66, 0x77, 0x58, 0x61, 0x33, 0x12, 0x6c, + 0x63, 0x8f, 0x9e, 0x13, 0xea, 0xa4, 0x10, 0xd4, +}; +static const unsigned char kat3576_entropyinpr1[] = { + 0xc9, 0x51, 0x1c, 0x6b, 0x14, 0x50, 0xe2, 0x36, 0x28, 0x0a, 0x9a, 0x19, + 0x27, 0x15, 0x8f, 0xe3, 0xba, 0xfe, 0x7f, 0xe8, 0xa6, 0x13, 0xcf, 0xb3, + 0xc1, 0x4a, 0x61, 0x3e, 0x62, 0x26, 0x41, 0xe5, +}; +static const unsigned char kat3576_addinpr1[] = {0}; +static const unsigned char kat3576_entropyinpr2[] = { + 0x65, 0xf2, 0xc5, 0xb1, 0xf3, 0xc4, 0x6f, 0x9c, 0xae, 0x6e, 0x39, 0x6b, + 0x86, 0xda, 0xb2, 0x43, 0x9e, 0x7a, 0xce, 0x72, 0x3b, 0xd2, 0x7c, 0x6f, + 0xbc, 0x08, 0xd7, 0x06, 0x0d, 0x74, 0x00, 0x2d, +}; +static const unsigned char kat3576_addinpr2[] = {0}; +static const unsigned char kat3576_retbits[] = { + 0x1a, 0x96, 0xe9, 0xbc, 0x65, 0x18, 0xb9, 0x1b, 0x00, 0x1e, 0x0e, 0x46, + 0x83, 0xbf, 0x1b, 0x49, 0x5e, 0x46, 0x92, 0x38, 0x8e, 0x16, 0xd9, 0xb6, + 0x9f, 0x41, 0xd1, 0xd4, 0xbb, 0xa8, 0x8a, 0x49, 0x7a, 0xc5, 0x60, 0x13, + 0xc2, 0x8f, 0x20, 0x7f, 0x5c, 0xfc, 0x52, 0x07, 0x7d, 0x12, 0x88, 0x60, + 0x08, 0x58, 0x0e, 0xc4, 0x62, 0x04, 0xf5, 0xf3, 0x65, 0xaa, 0x8c, 0x98, + 0x86, 0xa6, 0x01, 0xc6, +}; +static const struct drbg_kat_pr_true kat3576_t = { + 5, kat3576_entropyin, kat3576_nonce, kat3576_persstr, + kat3576_entropyinpr1, kat3576_addinpr1, kat3576_entropyinpr2, + kat3576_addinpr2, kat3576_retbits +}; +static const struct drbg_kat kat3576 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3576_t +}; + +static const unsigned char kat3577_entropyin[] = { + 0x5a, 0x1a, 0xba, 0x12, 0x1c, 0xd8, 0xce, 0x9f, 0xd9, 0xf7, 0xb9, 0xe5, + 0xb8, 0xc4, 0x41, 0x98, 0x45, 0x0d, 0xf3, 0x44, 0x0a, 0x36, 0xe9, 0x0f, + 0x6d, 0x76, 0x5e, 0xf3, 0xc2, 0x6b, 0x6c, 0x1d, +}; +static const unsigned char kat3577_nonce[] = { + 0x98, 0x7b, 0xd9, 0xdc, 0x7d, 0xa8, 0x30, 0x5c, 0x14, 0x0e, 0xd7, 0x5a, + 0x40, 0xa1, 0xb4, 0xf2, +}; +static const unsigned char kat3577_persstr[] = { + 0x83, 0x55, 0x0d, 0xff, 0x99, 0x10, 0x57, 0xdf, 0x78, 0x59, 0xc2, 0xd0, + 0x0c, 0x7f, 0xb1, 0x30, 0xa9, 0x1e, 0xae, 0xc7, 0xdf, 0x86, 0x8c, 0x39, + 0xda, 0x30, 0x20, 0x58, 0xb2, 0x2c, 0x6e, 0x67, +}; +static const unsigned char kat3577_entropyinpr1[] = { + 0x58, 0x9d, 0x3b, 0x8d, 0x4d, 0xe0, 0x68, 0x32, 0x3e, 0xf2, 0x89, 0x44, + 0x7d, 0x1e, 0x7d, 0xf9, 0x69, 0xa3, 0x6d, 0xdc, 0x08, 0x36, 0xef, 0x32, + 0xf0, 0x15, 0x41, 0x94, 0xff, 0xaa, 0xfd, 0xd5, +}; +static const unsigned char kat3577_addinpr1[] = {0}; +static const unsigned char kat3577_entropyinpr2[] = { + 0x0e, 0x5d, 0xbd, 0xdf, 0x2f, 0x57, 0x63, 0x68, 0x22, 0x3d, 0x12, 0x11, + 0xe9, 0xe1, 0xc2, 0x35, 0x13, 0xf1, 0x85, 0x6f, 0xf5, 0xe9, 0x8e, 0x39, + 0xb1, 0xd3, 0x3e, 0x74, 0xe1, 0x87, 0xc9, 0xe2, +}; +static const unsigned char kat3577_addinpr2[] = {0}; +static const unsigned char kat3577_retbits[] = { + 0x8f, 0x48, 0x0f, 0xf1, 0x59, 0x97, 0xaa, 0xec, 0xe2, 0x3c, 0xd8, 0xd2, + 0x44, 0x00, 0xb1, 0x96, 0x81, 0x99, 0x0d, 0x76, 0xe6, 0xdf, 0x09, 0x30, + 0x5a, 0x84, 0x24, 0xe6, 0x60, 0x86, 0x8b, 0x36, 0x5c, 0x50, 0xdf, 0xce, + 0x3c, 0x56, 0x42, 0x18, 0x1c, 0x24, 0x3b, 0x5f, 0x45, 0x95, 0x8f, 0x69, + 0xf4, 0x10, 0xa1, 0xe0, 0x26, 0x54, 0xdf, 0xe4, 0xa7, 0x32, 0xbf, 0x67, + 0x35, 0x69, 0x28, 0xf4, +}; +static const struct drbg_kat_pr_true kat3577_t = { + 6, kat3577_entropyin, kat3577_nonce, kat3577_persstr, + kat3577_entropyinpr1, kat3577_addinpr1, kat3577_entropyinpr2, + kat3577_addinpr2, kat3577_retbits +}; +static const struct drbg_kat kat3577 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3577_t +}; + +static const unsigned char kat3578_entropyin[] = { + 0xf9, 0xef, 0x76, 0xd7, 0xfa, 0xf3, 0x33, 0x81, 0x6d, 0x71, 0xa8, 0xa1, + 0x6f, 0xfb, 0x5b, 0x0c, 0xed, 0xf1, 0x42, 0x66, 0x8b, 0xb1, 0x9c, 0xa8, + 0xb2, 0x25, 0xf3, 0x93, 0xaa, 0xbe, 0xdd, 0x0b, +}; +static const unsigned char kat3578_nonce[] = { + 0xcc, 0xf2, 0xcc, 0x15, 0xbd, 0x73, 0x54, 0x66, 0x8a, 0x30, 0x44, 0xc5, + 0x4d, 0x1a, 0x4f, 0x47, +}; +static const unsigned char kat3578_persstr[] = { + 0x01, 0x45, 0x35, 0x93, 0x07, 0x95, 0xd5, 0x36, 0xf2, 0x67, 0x80, 0xca, + 0x1c, 0x88, 0x79, 0x93, 0xaa, 0xf5, 0x33, 0x94, 0x6c, 0x5c, 0xf2, 0x08, + 0xcb, 0xb4, 0x71, 0x6f, 0xec, 0x6c, 0xb2, 0xdd, +}; +static const unsigned char kat3578_entropyinpr1[] = { + 0x48, 0xbb, 0xce, 0x4f, 0xe2, 0xd5, 0xd6, 0x7e, 0x18, 0xae, 0x28, 0xcf, + 0x07, 0x31, 0xfb, 0x95, 0xf7, 0x98, 0xa5, 0xcf, 0x6a, 0x89, 0xa5, 0xb1, + 0x46, 0x62, 0xdf, 0x87, 0x7c, 0xd6, 0x2d, 0xb1, +}; +static const unsigned char kat3578_addinpr1[] = {0}; +static const unsigned char kat3578_entropyinpr2[] = { + 0xb7, 0xf0, 0xe5, 0x93, 0xea, 0xa4, 0x46, 0xb9, 0xd2, 0xb2, 0x14, 0x31, + 0x87, 0x1c, 0xeb, 0x90, 0x32, 0x40, 0x70, 0xd6, 0xd2, 0x86, 0x8a, 0xe7, + 0x28, 0x5f, 0xfa, 0x34, 0x8e, 0xe0, 0x3e, 0x9d, +}; +static const unsigned char kat3578_addinpr2[] = {0}; +static const unsigned char kat3578_retbits[] = { + 0x0a, 0x6b, 0x46, 0xa6, 0xf6, 0xc2, 0x20, 0x73, 0x7b, 0xc2, 0xb2, 0x2c, + 0xbc, 0x6c, 0xa9, 0xf6, 0x63, 0xf8, 0x3e, 0x33, 0xc8, 0x94, 0x6b, 0xef, + 0x9e, 0x68, 0x3c, 0xfe, 0x5b, 0x46, 0x96, 0xca, 0x00, 0x83, 0xe8, 0xf1, + 0xee, 0x1e, 0x82, 0x8b, 0xcf, 0x0b, 0xef, 0xf8, 0xc5, 0xa4, 0x93, 0x3c, + 0xe5, 0x71, 0x63, 0x4a, 0xd8, 0xfe, 0x38, 0xb2, 0xf6, 0x64, 0x62, 0x57, + 0x2f, 0x55, 0x0d, 0x15, +}; +static const struct drbg_kat_pr_true kat3578_t = { + 7, kat3578_entropyin, kat3578_nonce, kat3578_persstr, + kat3578_entropyinpr1, kat3578_addinpr1, kat3578_entropyinpr2, + kat3578_addinpr2, kat3578_retbits +}; +static const struct drbg_kat kat3578 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3578_t +}; + +static const unsigned char kat3579_entropyin[] = { + 0xa4, 0x97, 0x21, 0x7c, 0x52, 0x97, 0x27, 0xc8, 0xb6, 0xa0, 0xab, 0x2f, + 0xae, 0xa3, 0x98, 0x2b, 0x97, 0x1f, 0x70, 0xe2, 0xbc, 0x70, 0xf9, 0x35, + 0xcc, 0xf2, 0x6f, 0x77, 0x53, 0xd0, 0xbc, 0x65, +}; +static const unsigned char kat3579_nonce[] = { + 0xe8, 0x96, 0xc2, 0xde, 0xdd, 0xcb, 0xe6, 0x2d, 0xd8, 0x04, 0x62, 0x34, + 0x40, 0x9f, 0xef, 0x8f, +}; +static const unsigned char kat3579_persstr[] = { + 0xd6, 0x9c, 0x0f, 0x42, 0xec, 0xa5, 0x5b, 0xd7, 0x44, 0x9a, 0x30, 0x6c, + 0xd2, 0x66, 0xbf, 0xcf, 0x65, 0xfe, 0x07, 0x24, 0x24, 0x48, 0xf6, 0xc3, + 0xaa, 0xc2, 0x6a, 0xa4, 0xc1, 0xd5, 0x28, 0x06, +}; +static const unsigned char kat3579_entropyinpr1[] = { + 0xac, 0x2c, 0x4e, 0x52, 0x76, 0x06, 0x57, 0x34, 0x4f, 0xdf, 0x6e, 0x27, + 0xd8, 0x59, 0x06, 0x5f, 0xd5, 0xa8, 0xea, 0x95, 0xa5, 0x98, 0x46, 0x88, + 0xe4, 0x0d, 0x68, 0x03, 0x50, 0x9e, 0xf6, 0x6f, +}; +static const unsigned char kat3579_addinpr1[] = {0}; +static const unsigned char kat3579_entropyinpr2[] = { + 0x5a, 0x61, 0x84, 0xd5, 0x2e, 0xee, 0x0c, 0x05, 0x90, 0x2f, 0x6a, 0xd1, + 0x9d, 0x39, 0x86, 0xc4, 0x9a, 0xd5, 0x1e, 0xb4, 0x26, 0x53, 0x9f, 0xb4, + 0x08, 0x22, 0x05, 0xa8, 0xe1, 0xaf, 0xe8, 0xdd, +}; +static const unsigned char kat3579_addinpr2[] = {0}; +static const unsigned char kat3579_retbits[] = { + 0xa6, 0x49, 0x84, 0xf1, 0xb0, 0x3a, 0x95, 0x95, 0xaa, 0x85, 0xaa, 0x38, + 0x4c, 0xe3, 0x3f, 0x2d, 0xa9, 0xd7, 0xb7, 0xac, 0xb3, 0x4d, 0x6f, 0x18, + 0x5f, 0x7f, 0x6b, 0x62, 0xf6, 0x38, 0x2f, 0x45, 0xb1, 0x53, 0xe8, 0x1d, + 0x83, 0xf3, 0x63, 0x59, 0xfe, 0x06, 0x84, 0x2f, 0xd5, 0x82, 0x74, 0x98, + 0x62, 0x1e, 0x7f, 0xc1, 0x39, 0xbb, 0x84, 0x93, 0x05, 0xce, 0x87, 0x05, + 0xac, 0x72, 0xb1, 0x35, +}; +static const struct drbg_kat_pr_true kat3579_t = { + 8, kat3579_entropyin, kat3579_nonce, kat3579_persstr, + kat3579_entropyinpr1, kat3579_addinpr1, kat3579_entropyinpr2, + kat3579_addinpr2, kat3579_retbits +}; +static const struct drbg_kat kat3579 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3579_t +}; + +static const unsigned char kat3580_entropyin[] = { + 0x37, 0xd6, 0x15, 0x6b, 0xee, 0xa5, 0x14, 0x9a, 0x19, 0xc4, 0x36, 0x49, + 0xb7, 0x6d, 0xd7, 0x66, 0x47, 0xc7, 0x86, 0x16, 0x07, 0xbc, 0xa1, 0x44, + 0x09, 0xeb, 0x36, 0x39, 0xca, 0xbd, 0xbc, 0xb0, +}; +static const unsigned char kat3580_nonce[] = { + 0xa9, 0x1e, 0x1d, 0x9b, 0x1b, 0x38, 0x7f, 0x50, 0x6b, 0xd2, 0x8c, 0x1e, + 0xf1, 0x08, 0x86, 0x07, +}; +static const unsigned char kat3580_persstr[] = { + 0x08, 0x64, 0x9e, 0x3e, 0x1c, 0x87, 0x7a, 0x4a, 0xf5, 0xe4, 0xbe, 0x85, + 0x42, 0x04, 0xac, 0xea, 0x64, 0x56, 0xcd, 0x59, 0xd0, 0x10, 0x50, 0xae, + 0xb7, 0x8a, 0xca, 0xdd, 0x3f, 0xb2, 0xfe, 0x67, +}; +static const unsigned char kat3580_entropyinpr1[] = { + 0x44, 0xa9, 0x30, 0x49, 0xdd, 0xa9, 0xb1, 0x91, 0x1d, 0x99, 0xd4, 0xd6, + 0xc8, 0xd0, 0xe8, 0x44, 0xd0, 0xec, 0x25, 0x59, 0xfb, 0xb7, 0xcc, 0xea, + 0xe4, 0x2b, 0x80, 0xb0, 0x23, 0xa5, 0xd7, 0xdb, +}; +static const unsigned char kat3580_addinpr1[] = {0}; +static const unsigned char kat3580_entropyinpr2[] = { + 0x89, 0xc1, 0xcc, 0x6a, 0x40, 0xb0, 0xfe, 0xc1, 0xdd, 0x54, 0x82, 0xdd, + 0x3a, 0x6f, 0x4f, 0x65, 0x36, 0x83, 0xa6, 0xb2, 0xb3, 0x1c, 0xa0, 0x2b, + 0x92, 0x53, 0x3a, 0x46, 0xbd, 0xaa, 0x6b, 0xbe, +}; +static const unsigned char kat3580_addinpr2[] = {0}; +static const unsigned char kat3580_retbits[] = { + 0x65, 0xe5, 0x2a, 0xe2, 0x40, 0x0b, 0x44, 0x62, 0x2e, 0x6a, 0x8e, 0x27, + 0x9b, 0x41, 0x92, 0x01, 0x29, 0xb4, 0x80, 0x2c, 0x3f, 0x1f, 0x9e, 0xc8, + 0x5e, 0xc0, 0x52, 0x57, 0xd5, 0x73, 0x64, 0xac, 0x05, 0x68, 0x30, 0x5d, + 0xce, 0xf3, 0xa1, 0xa5, 0x79, 0xc9, 0x2f, 0xf5, 0xc0, 0x86, 0x8d, 0x5b, + 0x02, 0x93, 0x36, 0x3d, 0x50, 0x9b, 0x53, 0xac, 0xce, 0x0b, 0x2d, 0xa1, + 0xc6, 0x80, 0x43, 0x86, +}; +static const struct drbg_kat_pr_true kat3580_t = { + 9, kat3580_entropyin, kat3580_nonce, kat3580_persstr, + kat3580_entropyinpr1, kat3580_addinpr1, kat3580_entropyinpr2, + kat3580_addinpr2, kat3580_retbits +}; +static const struct drbg_kat kat3580 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3580_t +}; + +static const unsigned char kat3581_entropyin[] = { + 0x5d, 0x14, 0xf4, 0x8f, 0xa6, 0x3d, 0xea, 0x3c, 0x30, 0x15, 0x88, 0xb5, + 0xd1, 0x47, 0x3d, 0x7b, 0x33, 0x26, 0x05, 0x98, 0xc4, 0x02, 0xd1, 0x82, + 0x06, 0xe3, 0xf2, 0x31, 0x5d, 0x14, 0x7a, 0xd8, +}; +static const unsigned char kat3581_nonce[] = { + 0xbf, 0x6d, 0x67, 0xe2, 0x05, 0x3d, 0x83, 0x42, 0x93, 0x6c, 0xf8, 0x0e, + 0x12, 0x87, 0x1f, 0x16, +}; +static const unsigned char kat3581_persstr[] = { + 0xd3, 0xd0, 0xa6, 0x5b, 0x7d, 0xb9, 0x9a, 0x0c, 0xf6, 0x68, 0xb7, 0x08, + 0x50, 0x5f, 0x48, 0x31, 0x47, 0x46, 0x03, 0xbd, 0xa2, 0x52, 0xd6, 0x4f, + 0x62, 0xea, 0x25, 0xae, 0x64, 0x36, 0x3e, 0xef, +}; +static const unsigned char kat3581_entropyinpr1[] = { + 0x95, 0xd9, 0x60, 0xf8, 0xf9, 0x6c, 0x95, 0x85, 0xcf, 0xc5, 0x88, 0x6d, + 0xd7, 0x87, 0x81, 0xea, 0xe2, 0xce, 0x52, 0xad, 0x71, 0xb9, 0xc6, 0x7d, + 0x2e, 0xc1, 0xbf, 0xf8, 0x46, 0x56, 0x23, 0x8d, +}; +static const unsigned char kat3581_addinpr1[] = {0}; +static const unsigned char kat3581_entropyinpr2[] = { + 0x8c, 0x3d, 0x0b, 0xfc, 0x13, 0x8d, 0x0a, 0x6d, 0x8a, 0x11, 0xae, 0x35, + 0xc6, 0xfa, 0x48, 0x18, 0xd9, 0xc4, 0xac, 0xe9, 0x39, 0x07, 0xbb, 0x94, + 0xa9, 0x66, 0x7b, 0xd5, 0x79, 0xe1, 0xc9, 0x88, +}; +static const unsigned char kat3581_addinpr2[] = {0}; +static const unsigned char kat3581_retbits[] = { + 0xa6, 0xa1, 0x88, 0x2f, 0xc8, 0xf1, 0x4e, 0xc3, 0x2c, 0x12, 0x7a, 0x22, + 0x2f, 0xa1, 0x3b, 0x47, 0x0c, 0xe6, 0x92, 0xc4, 0x9c, 0x44, 0x36, 0x5a, + 0x2c, 0x52, 0x5e, 0x82, 0x87, 0x64, 0x6e, 0xbe, 0xe2, 0x40, 0x37, 0xb4, + 0x67, 0x2f, 0xb8, 0xa1, 0x68, 0x2e, 0xf1, 0x4c, 0x71, 0xa8, 0x0d, 0x17, + 0x8a, 0x12, 0x37, 0x81, 0x9a, 0x5b, 0xdd, 0x58, 0x95, 0xc5, 0xfd, 0xc9, + 0xd4, 0x0c, 0x4d, 0xfa, +}; +static const struct drbg_kat_pr_true kat3581_t = { + 10, kat3581_entropyin, kat3581_nonce, kat3581_persstr, + kat3581_entropyinpr1, kat3581_addinpr1, kat3581_entropyinpr2, + kat3581_addinpr2, kat3581_retbits +}; +static const struct drbg_kat kat3581 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3581_t +}; + +static const unsigned char kat3582_entropyin[] = { + 0xe8, 0xf9, 0x0a, 0xa2, 0x60, 0x39, 0x6c, 0x27, 0xcd, 0x2c, 0xea, 0x50, + 0x9d, 0x14, 0x79, 0x4b, 0x32, 0x64, 0x07, 0x7f, 0x9f, 0xe2, 0xc9, 0xbb, + 0x10, 0xb0, 0x1e, 0xf6, 0xd4, 0x67, 0xb8, 0xe4, +}; +static const unsigned char kat3582_nonce[] = { + 0x77, 0x96, 0x31, 0x48, 0xe3, 0xc2, 0x97, 0x35, 0xe4, 0x1e, 0x1b, 0x67, + 0xcb, 0x7d, 0xd1, 0x96, +}; +static const unsigned char kat3582_persstr[] = { + 0xa0, 0x4a, 0x1f, 0x62, 0x1f, 0x9d, 0xcc, 0x30, 0xf0, 0xf2, 0xa4, 0xb7, + 0x46, 0x3a, 0xd3, 0xbd, 0xdd, 0xf4, 0x40, 0xb1, 0x91, 0x20, 0x17, 0xb0, + 0xf7, 0x26, 0x3a, 0x5b, 0x19, 0x82, 0xc6, 0xe5, +}; +static const unsigned char kat3582_entropyinpr1[] = { + 0xa5, 0xb9, 0xcd, 0xb7, 0x7c, 0x43, 0x6a, 0x90, 0xc2, 0xcc, 0xf3, 0x8b, + 0x8a, 0x12, 0x24, 0x85, 0xd0, 0x80, 0x4c, 0xdd, 0x1c, 0x27, 0xf2, 0x32, + 0x6f, 0x1e, 0xd7, 0xfd, 0xa1, 0xe5, 0x54, 0x6a, +}; +static const unsigned char kat3582_addinpr1[] = {0}; +static const unsigned char kat3582_entropyinpr2[] = { + 0xbc, 0x9d, 0x0b, 0xb2, 0x92, 0x07, 0xf4, 0x3f, 0xe3, 0xb1, 0xf9, 0x81, + 0x1c, 0x63, 0x76, 0x0f, 0xea, 0xfb, 0x8d, 0x96, 0xe6, 0x89, 0x0e, 0x1f, + 0x6d, 0xde, 0x33, 0xb0, 0x46, 0xd3, 0x26, 0x58, +}; +static const unsigned char kat3582_addinpr2[] = {0}; +static const unsigned char kat3582_retbits[] = { + 0xf2, 0x02, 0x0d, 0x61, 0xd9, 0x87, 0x51, 0x80, 0xf9, 0xa6, 0xd4, 0xc4, + 0x2e, 0x70, 0xb3, 0xa3, 0xee, 0x88, 0x82, 0x2a, 0xc9, 0x07, 0x1d, 0xae, + 0x1b, 0x0b, 0xdd, 0xbc, 0x7d, 0x9f, 0xba, 0x05, 0x49, 0x46, 0x24, 0xd4, + 0x2c, 0xea, 0x5a, 0x16, 0xf0, 0x7a, 0x1e, 0x19, 0x17, 0x74, 0xf4, 0xaa, + 0x0f, 0x77, 0x5f, 0x6e, 0x29, 0x95, 0x8e, 0x98, 0xbd, 0xd1, 0x82, 0x54, + 0x93, 0x18, 0x6b, 0xdf, +}; +static const struct drbg_kat_pr_true kat3582_t = { + 11, kat3582_entropyin, kat3582_nonce, kat3582_persstr, + kat3582_entropyinpr1, kat3582_addinpr1, kat3582_entropyinpr2, + kat3582_addinpr2, kat3582_retbits +}; +static const struct drbg_kat kat3582 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3582_t +}; + +static const unsigned char kat3583_entropyin[] = { + 0x79, 0xe4, 0x17, 0x12, 0x6f, 0x55, 0xca, 0x50, 0x68, 0xd3, 0xd6, 0xc6, + 0x6e, 0xfe, 0xa2, 0x16, 0xcf, 0x4a, 0x17, 0x73, 0x9f, 0xe7, 0xb4, 0x79, + 0xd4, 0xf6, 0xd4, 0x4b, 0x5c, 0x65, 0x52, 0x15, +}; +static const unsigned char kat3583_nonce[] = { + 0xaa, 0x04, 0xe7, 0xb2, 0xee, 0x3e, 0xa9, 0xdf, 0xcb, 0xc7, 0xeb, 0x6c, + 0x21, 0xcf, 0xbf, 0xea, +}; +static const unsigned char kat3583_persstr[] = { + 0x69, 0x41, 0x75, 0xf2, 0x67, 0x21, 0x59, 0x49, 0xa4, 0x85, 0x58, 0xf1, + 0xde, 0xfd, 0x91, 0x5a, 0xd0, 0x54, 0xe8, 0xa6, 0x0d, 0x99, 0x3c, 0x8a, + 0x85, 0xb3, 0x75, 0xb8, 0x91, 0x62, 0xb6, 0xd3, +}; +static const unsigned char kat3583_entropyinpr1[] = { + 0xa7, 0x72, 0x21, 0x4d, 0x8c, 0xd3, 0x7c, 0xab, 0xe7, 0xc6, 0x85, 0xe8, + 0x79, 0x5c, 0x61, 0x9c, 0x5d, 0xfe, 0x05, 0xfb, 0x23, 0x59, 0x19, 0x5c, + 0x93, 0x2c, 0x43, 0x31, 0xc7, 0xc7, 0x00, 0xc7, +}; +static const unsigned char kat3583_addinpr1[] = {0}; +static const unsigned char kat3583_entropyinpr2[] = { + 0x18, 0x1e, 0x64, 0xf8, 0x56, 0x51, 0xb3, 0xee, 0x4c, 0x44, 0x13, 0xea, + 0x2c, 0x6d, 0x22, 0xa1, 0xdb, 0xac, 0xcf, 0xf6, 0xc8, 0xeb, 0x27, 0x64, + 0xc9, 0x22, 0x04, 0x45, 0x96, 0xc5, 0xfb, 0x36, +}; +static const unsigned char kat3583_addinpr2[] = {0}; +static const unsigned char kat3583_retbits[] = { + 0x74, 0x8a, 0x7e, 0x73, 0x94, 0x9e, 0x39, 0x57, 0x00, 0x26, 0x69, 0xcb, + 0x40, 0xb7, 0x17, 0x06, 0xde, 0x0d, 0xc3, 0x9c, 0xae, 0xeb, 0x0a, 0xdc, + 0xd5, 0xe3, 0xf7, 0xf7, 0x53, 0x03, 0xc2, 0x27, 0xb2, 0xe2, 0xad, 0xf2, + 0xbe, 0x2b, 0xe5, 0xad, 0x29, 0x69, 0x55, 0xc1, 0x3b, 0xc8, 0xc8, 0xb8, + 0x68, 0x80, 0x3d, 0x45, 0xd6, 0x11, 0xd0, 0xe9, 0x70, 0x61, 0xe3, 0x6c, + 0x30, 0x33, 0x9e, 0x6c, +}; +static const struct drbg_kat_pr_true kat3583_t = { + 12, kat3583_entropyin, kat3583_nonce, kat3583_persstr, + kat3583_entropyinpr1, kat3583_addinpr1, kat3583_entropyinpr2, + kat3583_addinpr2, kat3583_retbits +}; +static const struct drbg_kat kat3583 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3583_t +}; + +static const unsigned char kat3584_entropyin[] = { + 0xe8, 0x53, 0x00, 0xa0, 0x12, 0x03, 0xd1, 0xa7, 0x65, 0xd3, 0x6e, 0x49, + 0x41, 0x23, 0xce, 0xcf, 0xd8, 0xd8, 0x23, 0x02, 0x21, 0x98, 0xa9, 0x5b, + 0x09, 0x91, 0xf9, 0x8d, 0x9a, 0x93, 0xf3, 0xe3, +}; +static const unsigned char kat3584_nonce[] = { + 0x5a, 0x10, 0x9a, 0x8d, 0xab, 0x80, 0x4a, 0xd3, 0x50, 0xf7, 0x73, 0x57, + 0x81, 0xb5, 0x38, 0x01, +}; +static const unsigned char kat3584_persstr[] = { + 0xcb, 0xd4, 0xb3, 0xe9, 0x9e, 0xf2, 0x4a, 0xa7, 0x53, 0x9f, 0x65, 0x13, + 0x25, 0x3a, 0x69, 0xc3, 0x53, 0x55, 0x8f, 0xe7, 0x80, 0x87, 0x20, 0xdd, + 0x68, 0xd9, 0x45, 0x10, 0xa0, 0x2e, 0x8e, 0xf0, +}; +static const unsigned char kat3584_entropyinpr1[] = { + 0x39, 0x0d, 0xde, 0x5c, 0x5d, 0x62, 0xc6, 0x4c, 0x5a, 0x50, 0x12, 0x7a, + 0xa9, 0x10, 0x18, 0xcc, 0xf8, 0x5a, 0x4f, 0xfd, 0x76, 0x49, 0xde, 0x29, + 0x3e, 0x12, 0x33, 0x0f, 0x4f, 0xeb, 0xd5, 0x4c, +}; +static const unsigned char kat3584_addinpr1[] = {0}; +static const unsigned char kat3584_entropyinpr2[] = { + 0x3c, 0x36, 0x5d, 0xa2, 0xc3, 0x41, 0x4a, 0xbc, 0x81, 0xf9, 0xb5, 0xe7, + 0x18, 0x79, 0x04, 0x31, 0xd6, 0x00, 0xaf, 0xcc, 0x17, 0x37, 0xa6, 0xd8, + 0x15, 0x65, 0xc5, 0x71, 0xe4, 0xc5, 0x65, 0xff, +}; +static const unsigned char kat3584_addinpr2[] = {0}; +static const unsigned char kat3584_retbits[] = { + 0x99, 0xae, 0x95, 0xf5, 0x40, 0x18, 0x19, 0xfc, 0x68, 0xaf, 0xcf, 0x1b, + 0x12, 0xd8, 0x03, 0xc1, 0x65, 0x79, 0x74, 0x5a, 0x78, 0x21, 0x91, 0x0c, + 0xbe, 0x2e, 0x2f, 0x3b, 0xbc, 0x05, 0xcd, 0xef, 0xa3, 0x90, 0x85, 0xc5, + 0xbe, 0x66, 0xbd, 0x5c, 0x96, 0x1b, 0xa5, 0x11, 0xf1, 0xa2, 0x1b, 0x97, + 0xe3, 0x7f, 0x07, 0x99, 0x63, 0x2b, 0x29, 0x65, 0x1d, 0xc4, 0x12, 0xad, + 0x89, 0xf9, 0xcd, 0xfb, +}; +static const struct drbg_kat_pr_true kat3584_t = { + 13, kat3584_entropyin, kat3584_nonce, kat3584_persstr, + kat3584_entropyinpr1, kat3584_addinpr1, kat3584_entropyinpr2, + kat3584_addinpr2, kat3584_retbits +}; +static const struct drbg_kat kat3584 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3584_t +}; + +static const unsigned char kat3585_entropyin[] = { + 0x39, 0x2c, 0x62, 0x19, 0xa5, 0x5f, 0x46, 0x45, 0x22, 0x65, 0x24, 0xa1, + 0x25, 0x17, 0xd6, 0xf4, 0x0d, 0xcc, 0xf2, 0x5b, 0xe9, 0x30, 0xee, 0xed, + 0xe9, 0xd2, 0x70, 0xfb, 0x63, 0x2e, 0x5e, 0x71, +}; +static const unsigned char kat3585_nonce[] = { + 0x6c, 0xaa, 0x85, 0x8e, 0xc3, 0xe8, 0xf9, 0x46, 0xc9, 0xbc, 0xb2, 0x28, + 0xba, 0x66, 0xda, 0x07, +}; +static const unsigned char kat3585_persstr[] = { + 0xa5, 0x9b, 0x7e, 0xd9, 0x98, 0xb6, 0x9e, 0xbc, 0x7d, 0xc5, 0x42, 0xbd, + 0x62, 0x17, 0x24, 0x66, 0x12, 0x5c, 0x21, 0xc6, 0x25, 0x18, 0xb1, 0x07, + 0x61, 0xf6, 0xc0, 0x0d, 0xd1, 0x23, 0x4f, 0x45, +}; +static const unsigned char kat3585_entropyinpr1[] = { + 0x47, 0x40, 0xca, 0x4c, 0xa8, 0x1e, 0xd2, 0x94, 0xd9, 0xa9, 0xb6, 0x00, + 0x09, 0x76, 0x00, 0x63, 0x7a, 0x1a, 0x1e, 0xf2, 0xfe, 0xf2, 0x39, 0x1d, + 0x2a, 0x30, 0xe0, 0xc2, 0x27, 0xc2, 0xb1, 0x53, +}; +static const unsigned char kat3585_addinpr1[] = {0}; +static const unsigned char kat3585_entropyinpr2[] = { + 0x27, 0x2b, 0xa6, 0x58, 0x8a, 0x44, 0x3c, 0xf6, 0xd8, 0xa9, 0xa2, 0x59, + 0x4f, 0x4d, 0x4d, 0xb7, 0x3e, 0xa2, 0xd3, 0x56, 0x04, 0x8c, 0x1f, 0xe3, + 0x59, 0xff, 0x91, 0x70, 0xa4, 0x25, 0xa0, 0x0f, +}; +static const unsigned char kat3585_addinpr2[] = {0}; +static const unsigned char kat3585_retbits[] = { + 0x63, 0x86, 0x85, 0xb6, 0x25, 0x6b, 0x54, 0xc1, 0xc2, 0x8d, 0x8e, 0x67, + 0xb9, 0x8a, 0xb9, 0xa5, 0x6b, 0x71, 0xed, 0xe3, 0xf0, 0x46, 0x84, 0x31, + 0xb0, 0xd0, 0xde, 0x2d, 0xfb, 0xe3, 0x47, 0xea, 0x0b, 0xc0, 0x5d, 0x87, + 0x0f, 0x6d, 0xcd, 0xee, 0x0f, 0x1b, 0xc6, 0x18, 0xa6, 0x38, 0x29, 0x0a, + 0x43, 0x97, 0x27, 0x7f, 0x4a, 0x1f, 0x8f, 0x7b, 0xfb, 0xb2, 0x7f, 0x16, + 0x3f, 0xed, 0x08, 0x82, +}; +static const struct drbg_kat_pr_true kat3585_t = { + 14, kat3585_entropyin, kat3585_nonce, kat3585_persstr, + kat3585_entropyinpr1, kat3585_addinpr1, kat3585_entropyinpr2, + kat3585_addinpr2, kat3585_retbits +}; +static const struct drbg_kat kat3585 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 0, 64, &kat3585_t +}; + +static const unsigned char kat3586_entropyin[] = { + 0xe0, 0x2c, 0x66, 0x27, 0xdf, 0x0c, 0x04, 0x22, 0xd2, 0xdf, 0xc7, 0xda, + 0x96, 0x86, 0xda, 0xf8, 0xdc, 0xe5, 0x78, 0x96, 0x67, 0x98, 0xd4, 0xe5, + 0x03, 0x53, 0x0d, 0xd7, 0xdb, 0x50, 0x13, 0x0e, +}; +static const unsigned char kat3586_nonce[] = { + 0x1b, 0x48, 0xe1, 0x03, 0xc4, 0x09, 0x1a, 0xc2, 0xf4, 0x58, 0x1d, 0xba, + 0x6a, 0x61, 0x85, 0x8c, +}; +static const unsigned char kat3586_persstr[] = { + 0x01, 0x45, 0xaa, 0xfa, 0x6e, 0xc8, 0x3e, 0xb6, 0x52, 0x5a, 0x8f, 0x2f, + 0xa8, 0x4a, 0xd6, 0x30, 0xbb, 0x57, 0xbf, 0xe6, 0x76, 0xa5, 0x91, 0x90, + 0x0e, 0x18, 0xa4, 0xc0, 0xc4, 0xaa, 0x84, 0x02, +}; +static const unsigned char kat3586_entropyinpr1[] = { + 0x32, 0x3b, 0x97, 0xc0, 0xfe, 0x00, 0x60, 0xc9, 0x4d, 0x04, 0x23, 0xf9, + 0xe4, 0x42, 0x4c, 0x9b, 0x92, 0xf7, 0x69, 0xe1, 0x70, 0xa3, 0xe1, 0xea, + 0xbb, 0x72, 0xd7, 0x8b, 0xec, 0x04, 0xbb, 0x27, +}; +static const unsigned char kat3586_addinpr1[] = { + 0xfd, 0xdd, 0xda, 0xcb, 0x8c, 0x20, 0x18, 0x2f, 0x16, 0x59, 0x6a, 0x61, + 0x91, 0x05, 0xaa, 0xe7, 0x91, 0x69, 0x6e, 0xe7, 0xac, 0xa3, 0x08, 0xb5, + 0x52, 0x43, 0x83, 0xc1, 0x78, 0xa2, 0x7c, 0xc2, +}; +static const unsigned char kat3586_entropyinpr2[] = { + 0xc9, 0x6c, 0x87, 0xb9, 0xee, 0xee, 0x3c, 0xa7, 0x76, 0x89, 0xd8, 0x93, + 0x5d, 0x01, 0x63, 0xcf, 0x26, 0x79, 0xbd, 0x35, 0xaf, 0x98, 0xb1, 0x95, + 0xcf, 0x06, 0x22, 0xbd, 0x85, 0xdc, 0x95, 0x78, +}; +static const unsigned char kat3586_addinpr2[] = { + 0xd7, 0xe7, 0x68, 0xa3, 0x28, 0x1e, 0x4a, 0x43, 0xa0, 0xda, 0x59, 0xcd, + 0x9a, 0xf6, 0x30, 0x54, 0x8b, 0xcc, 0x2b, 0x95, 0xbf, 0xf5, 0xc6, 0x58, + 0xb3, 0x12, 0xb0, 0x86, 0xf0, 0xfb, 0x54, 0xe4, +}; +static const unsigned char kat3586_retbits[] = { + 0x49, 0x3c, 0xda, 0xcf, 0xd2, 0x5a, 0x67, 0x8b, 0x8d, 0x81, 0x38, 0xbd, + 0x4e, 0xff, 0x88, 0x8b, 0x28, 0x0d, 0x3e, 0x21, 0xe1, 0xfa, 0x73, 0xaf, + 0x33, 0x75, 0xd5, 0x91, 0x4d, 0xa9, 0x58, 0xb1, 0xbe, 0xd0, 0x23, 0x32, + 0x89, 0xac, 0x49, 0xe5, 0x9d, 0x56, 0xd5, 0xd4, 0x0a, 0x75, 0x77, 0xfd, + 0xc7, 0x23, 0x04, 0xf8, 0xc8, 0xc8, 0xcb, 0x4a, 0xd4, 0xb2, 0x16, 0xef, + 0xa2, 0x81, 0x80, 0xfd, +}; +static const struct drbg_kat_pr_true kat3586_t = { + 0, kat3586_entropyin, kat3586_nonce, kat3586_persstr, + kat3586_entropyinpr1, kat3586_addinpr1, kat3586_entropyinpr2, + kat3586_addinpr2, kat3586_retbits +}; +static const struct drbg_kat kat3586 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3586_t +}; + +static const unsigned char kat3587_entropyin[] = { + 0x22, 0x74, 0x6d, 0xf1, 0x0c, 0x7d, 0x1e, 0x0a, 0x7d, 0x68, 0xd7, 0xcf, + 0x20, 0x68, 0xde, 0x78, 0xc3, 0xfd, 0x74, 0x9d, 0x88, 0x31, 0xd7, 0x10, + 0x83, 0x37, 0xb5, 0xb9, 0x37, 0x0e, 0xb3, 0x22, +}; +static const unsigned char kat3587_nonce[] = { + 0x1c, 0x7e, 0xd6, 0x06, 0x3a, 0xe0, 0xcc, 0x22, 0x1b, 0x45, 0x79, 0xf5, + 0xa6, 0x18, 0x17, 0xb7, +}; +static const unsigned char kat3587_persstr[] = { + 0x71, 0x84, 0xc2, 0x99, 0x85, 0x6a, 0x54, 0x05, 0x84, 0x29, 0x41, 0x8c, + 0x8b, 0xd7, 0x12, 0xd9, 0x2c, 0x76, 0x75, 0xec, 0x3d, 0x49, 0x63, 0x5c, + 0xfc, 0xae, 0x3d, 0x24, 0x73, 0xd0, 0x4b, 0x13, +}; +static const unsigned char kat3587_entropyinpr1[] = { + 0xba, 0x85, 0x3c, 0x00, 0xf9, 0x06, 0xde, 0xb3, 0xc3, 0xfa, 0x4e, 0x15, + 0xc7, 0xce, 0x36, 0x58, 0x7f, 0x89, 0x68, 0x08, 0x35, 0x0b, 0xd8, 0xab, + 0x51, 0x89, 0x68, 0xfa, 0x02, 0x15, 0x86, 0xaa, +}; +static const unsigned char kat3587_addinpr1[] = { + 0x49, 0xcb, 0x34, 0x65, 0x1c, 0x60, 0x69, 0x9b, 0xd9, 0xdc, 0x30, 0x83, + 0xc9, 0x2f, 0x27, 0xe7, 0xb9, 0x2d, 0x05, 0x59, 0x78, 0x2c, 0x97, 0x51, + 0x50, 0xa8, 0x00, 0x5e, 0xb2, 0x3a, 0xaa, 0xc6, +}; +static const unsigned char kat3587_entropyinpr2[] = { + 0xfc, 0xd7, 0x52, 0x98, 0x32, 0xd5, 0x33, 0x2b, 0xb7, 0x2a, 0x04, 0x60, + 0x48, 0x28, 0x59, 0xbb, 0x33, 0xdc, 0xbd, 0x08, 0x45, 0xe6, 0x8c, 0xf7, + 0xac, 0xd0, 0x9e, 0x58, 0x88, 0xef, 0x26, 0x11, +}; +static const unsigned char kat3587_addinpr2[] = { + 0x36, 0xae, 0xff, 0x1d, 0x32, 0xbb, 0xfb, 0x71, 0x4e, 0x84, 0xa1, 0x59, + 0x77, 0x95, 0x79, 0xec, 0x28, 0x23, 0xb6, 0x12, 0x32, 0x5a, 0x03, 0x4e, + 0xe7, 0xae, 0x91, 0xcc, 0x8d, 0x5f, 0x6f, 0xe5, +}; +static const unsigned char kat3587_retbits[] = { + 0x19, 0x7c, 0x85, 0xc3, 0xa8, 0x14, 0xd5, 0xc4, 0xe4, 0xed, 0xe3, 0x6c, + 0x7d, 0xba, 0xcc, 0x54, 0xce, 0x6f, 0x99, 0x96, 0xcf, 0xb2, 0x50, 0xbe, + 0x31, 0xfc, 0x8f, 0x90, 0xa7, 0x09, 0x24, 0x70, 0xd6, 0x1d, 0x81, 0x1f, + 0xd8, 0xfe, 0xe5, 0x83, 0xf4, 0x49, 0xd1, 0x68, 0x0c, 0x35, 0xee, 0xfa, + 0x35, 0x7b, 0xc4, 0x1e, 0xca, 0xe8, 0x4d, 0xc8, 0x2b, 0x91, 0x1d, 0x51, + 0x18, 0x4a, 0x2b, 0x93, +}; +static const struct drbg_kat_pr_true kat3587_t = { + 1, kat3587_entropyin, kat3587_nonce, kat3587_persstr, + kat3587_entropyinpr1, kat3587_addinpr1, kat3587_entropyinpr2, + kat3587_addinpr2, kat3587_retbits +}; +static const struct drbg_kat kat3587 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3587_t +}; + +static const unsigned char kat3588_entropyin[] = { + 0x5f, 0x4f, 0x40, 0xcf, 0x42, 0xe6, 0x43, 0xe5, 0xf3, 0x8f, 0x06, 0xf0, + 0x5a, 0x80, 0xa8, 0xbe, 0x0e, 0x44, 0xb7, 0x5f, 0x64, 0x7a, 0xc9, 0x35, + 0xdf, 0x1d, 0xcb, 0x22, 0x06, 0xdb, 0xeb, 0x59, +}; +static const unsigned char kat3588_nonce[] = { + 0x90, 0xdb, 0xc9, 0xb6, 0x73, 0x77, 0x66, 0x8d, 0x1a, 0xf1, 0x5b, 0xea, + 0xe7, 0x90, 0xa1, 0x3e, +}; +static const unsigned char kat3588_persstr[] = { + 0xb2, 0xa2, 0x80, 0x6a, 0x31, 0xe8, 0xb0, 0xdf, 0xa3, 0x2d, 0x92, 0xcc, + 0x87, 0xf1, 0x34, 0x5e, 0xf9, 0x18, 0xf8, 0x9e, 0x14, 0x84, 0xd0, 0x1f, + 0x00, 0xb9, 0xf7, 0x82, 0x80, 0xd9, 0x3b, 0x5a, +}; +static const unsigned char kat3588_entropyinpr1[] = { + 0xdb, 0x29, 0xa5, 0xef, 0x0c, 0xbe, 0x50, 0x16, 0xba, 0x0a, 0xb8, 0xd3, + 0xd5, 0x20, 0xca, 0x36, 0x83, 0xf1, 0x63, 0x7b, 0xe1, 0xda, 0xe4, 0x34, + 0xb8, 0x7b, 0x5e, 0x5f, 0x4a, 0x4c, 0x6b, 0x5f, +}; +static const unsigned char kat3588_addinpr1[] = { + 0xf6, 0xaa, 0xa7, 0x0b, 0x82, 0xd7, 0x2b, 0x1c, 0xfd, 0x79, 0x40, 0x87, + 0x48, 0xbd, 0xa7, 0x73, 0x27, 0xcf, 0x62, 0x29, 0xda, 0x2c, 0xef, 0xee, + 0xcc, 0x27, 0xf2, 0x4b, 0x85, 0x64, 0x33, 0x76, +}; +static const unsigned char kat3588_entropyinpr2[] = { + 0x07, 0x48, 0x54, 0xcf, 0x33, 0xf5, 0x70, 0xca, 0x0f, 0xbc, 0x13, 0x63, + 0xd5, 0x90, 0x33, 0x4b, 0x60, 0x17, 0xa2, 0xe3, 0xa1, 0x93, 0xda, 0x59, + 0x99, 0xdb, 0x75, 0x53, 0x0d, 0x3a, 0x9b, 0x56, +}; +static const unsigned char kat3588_addinpr2[] = { + 0x0a, 0x97, 0xc0, 0x21, 0xf7, 0x48, 0x71, 0xd6, 0x82, 0x9b, 0x47, 0x35, + 0x56, 0x30, 0x9c, 0xd3, 0x2c, 0x45, 0xc1, 0xf4, 0xfe, 0x46, 0x19, 0xca, + 0x82, 0xf9, 0x9e, 0xbd, 0x2d, 0xf0, 0xf2, 0x5a, +}; +static const unsigned char kat3588_retbits[] = { + 0x58, 0xcd, 0x0e, 0x07, 0xdd, 0xd3, 0x4c, 0x32, 0xb2, 0x08, 0x46, 0xe9, + 0x62, 0x20, 0x98, 0x08, 0x2e, 0xc1, 0xd2, 0x4e, 0x4d, 0x0a, 0xd5, 0xc7, + 0x33, 0x07, 0xa2, 0x62, 0xd6, 0x9b, 0x2e, 0x7c, 0x9b, 0xa5, 0xfa, 0xb3, + 0x59, 0xea, 0xc9, 0x33, 0x6d, 0x80, 0xeb, 0x4c, 0xe3, 0x35, 0x7b, 0x9c, + 0xe2, 0xa7, 0x96, 0x2b, 0x4b, 0x21, 0xb7, 0x39, 0x3d, 0xfe, 0xad, 0xd7, + 0x5a, 0x50, 0xe8, 0x7e, +}; +static const struct drbg_kat_pr_true kat3588_t = { + 2, kat3588_entropyin, kat3588_nonce, kat3588_persstr, + kat3588_entropyinpr1, kat3588_addinpr1, kat3588_entropyinpr2, + kat3588_addinpr2, kat3588_retbits +}; +static const struct drbg_kat kat3588 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3588_t +}; + +static const unsigned char kat3589_entropyin[] = { + 0xff, 0xb9, 0xd4, 0x74, 0x10, 0x74, 0xae, 0x51, 0xd8, 0xff, 0xe3, 0x9b, + 0x31, 0xcf, 0x56, 0xc1, 0xe8, 0xc9, 0x78, 0xe3, 0x6f, 0x32, 0x08, 0x98, + 0xa9, 0xac, 0xc2, 0xf0, 0xe0, 0x75, 0xf5, 0xd1, +}; +static const unsigned char kat3589_nonce[] = { + 0x17, 0xa7, 0x02, 0xd7, 0x76, 0x8a, 0x47, 0xcd, 0x11, 0x60, 0xf1, 0xee, + 0xa6, 0x61, 0xcc, 0xcd, +}; +static const unsigned char kat3589_persstr[] = { + 0x3f, 0x4d, 0xe7, 0xa9, 0xfb, 0xe5, 0xbb, 0xf6, 0x99, 0x73, 0xee, 0x77, + 0x2f, 0x4a, 0xb8, 0xc8, 0xa5, 0x7b, 0xd8, 0xe6, 0xc0, 0x0d, 0x91, 0x3f, + 0xcb, 0xe5, 0x1c, 0x5e, 0x8d, 0x36, 0x58, 0xc4, +}; +static const unsigned char kat3589_entropyinpr1[] = { + 0xf0, 0x3d, 0xa2, 0x2e, 0x53, 0xc4, 0xe8, 0xb7, 0x8b, 0x0e, 0xcc, 0xab, + 0x9b, 0x3b, 0x77, 0x94, 0xd7, 0x5d, 0x0f, 0x36, 0xa9, 0xf1, 0x93, 0xeb, + 0xc8, 0xab, 0x42, 0x2d, 0x72, 0x7c, 0xea, 0x8e, +}; +static const unsigned char kat3589_addinpr1[] = { + 0x72, 0xdf, 0x5f, 0x25, 0xa2, 0x7d, 0x3e, 0xec, 0x24, 0x90, 0x5e, 0x92, + 0x76, 0x38, 0xab, 0xe2, 0x2f, 0x15, 0x73, 0xb0, 0x7e, 0x5b, 0xf0, 0x2b, + 0x06, 0x68, 0xcc, 0x8c, 0x33, 0x91, 0x0f, 0xaf, +}; +static const unsigned char kat3589_entropyinpr2[] = { + 0x50, 0xb0, 0x44, 0xee, 0x25, 0x2d, 0x8d, 0x83, 0xd5, 0x6a, 0xe2, 0x43, + 0x8d, 0x2c, 0xa9, 0xc0, 0x1b, 0x07, 0x92, 0x46, 0x72, 0x63, 0xe2, 0x4c, + 0x79, 0x9c, 0x6e, 0xa0, 0x47, 0x69, 0x4c, 0xd1, +}; +static const unsigned char kat3589_addinpr2[] = { + 0xf0, 0x92, 0xf9, 0x05, 0xd4, 0x1a, 0x8f, 0xdf, 0x4a, 0x39, 0xf2, 0x2a, + 0xe8, 0xb1, 0xd6, 0xda, 0x0e, 0xfc, 0xc6, 0x7e, 0xfe, 0x59, 0x8e, 0x9a, + 0xaa, 0xa9, 0x14, 0x37, 0x0c, 0x3f, 0x75, 0x9e, +}; +static const unsigned char kat3589_retbits[] = { + 0xd3, 0xab, 0x14, 0x99, 0xd9, 0x82, 0x46, 0xbb, 0xcd, 0x49, 0x9f, 0xad, + 0x33, 0xbe, 0xc4, 0x9d, 0x29, 0x93, 0xa5, 0xa6, 0xb8, 0xe1, 0x0f, 0xb9, + 0x96, 0x0a, 0x22, 0x99, 0xc1, 0x3e, 0xe4, 0x11, 0x24, 0x02, 0xbd, 0xea, + 0x77, 0xa2, 0x80, 0xca, 0xcf, 0x15, 0x52, 0x64, 0x37, 0xa9, 0xed, 0x4b, + 0x14, 0xff, 0x08, 0xbf, 0x70, 0x9b, 0x08, 0x0f, 0xea, 0xea, 0x8a, 0x51, + 0xf1, 0xa0, 0x6c, 0xc9, +}; +static const struct drbg_kat_pr_true kat3589_t = { + 3, kat3589_entropyin, kat3589_nonce, kat3589_persstr, + kat3589_entropyinpr1, kat3589_addinpr1, kat3589_entropyinpr2, + kat3589_addinpr2, kat3589_retbits +}; +static const struct drbg_kat kat3589 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3589_t +}; + +static const unsigned char kat3590_entropyin[] = { + 0x8a, 0xc0, 0xf2, 0x56, 0xad, 0x07, 0x0a, 0x5f, 0x14, 0x85, 0xc3, 0x0d, + 0xcb, 0x07, 0xdf, 0x3b, 0x3a, 0x38, 0x80, 0xd4, 0x0f, 0x02, 0xf2, 0x3e, + 0x72, 0xaf, 0x81, 0xcc, 0xdc, 0xa0, 0x41, 0x7e, +}; +static const unsigned char kat3590_nonce[] = { + 0xba, 0x87, 0xe7, 0x93, 0x00, 0xd8, 0xca, 0xf1, 0x31, 0x9b, 0xd3, 0x7e, + 0x9a, 0x1f, 0xae, 0xf7, +}; +static const unsigned char kat3590_persstr[] = { + 0x71, 0xfe, 0x61, 0x05, 0x10, 0x62, 0xe3, 0x6a, 0x98, 0x76, 0xe4, 0xce, + 0xcb, 0xef, 0x68, 0x50, 0x40, 0x52, 0xbf, 0xbd, 0x45, 0xce, 0x59, 0xda, + 0x56, 0x4f, 0x9f, 0x91, 0x12, 0x27, 0xd4, 0x26, +}; +static const unsigned char kat3590_entropyinpr1[] = { + 0x31, 0x70, 0x5c, 0xa9, 0x1f, 0x1b, 0x08, 0xee, 0x14, 0x82, 0xad, 0xe6, + 0x44, 0x10, 0xee, 0xd1, 0x1f, 0xfa, 0xbd, 0xf6, 0x8c, 0x01, 0xe8, 0x05, + 0xb6, 0x9c, 0x9d, 0x0c, 0xa8, 0x0e, 0xf9, 0x35, +}; +static const unsigned char kat3590_addinpr1[] = { + 0x22, 0x16, 0x57, 0x46, 0xd6, 0x24, 0xb0, 0xba, 0xf0, 0x69, 0x55, 0xe2, + 0x08, 0xbe, 0xf0, 0x85, 0xc0, 0x5d, 0x24, 0x71, 0xbd, 0x88, 0x1b, 0x76, + 0x66, 0x0c, 0x94, 0xf7, 0x51, 0x77, 0x64, 0x00, +}; +static const unsigned char kat3590_entropyinpr2[] = { + 0xd7, 0x9b, 0x6f, 0x38, 0x6c, 0xdb, 0xcd, 0x94, 0x64, 0xd5, 0xdb, 0x74, + 0xbd, 0xd0, 0x64, 0xec, 0xbb, 0xf2, 0x29, 0xd8, 0x90, 0xe4, 0xf6, 0x30, + 0xee, 0x8b, 0x26, 0xd0, 0x3c, 0x8b, 0xb1, 0xab, +}; +static const unsigned char kat3590_addinpr2[] = { + 0x13, 0x50, 0x2f, 0x34, 0x58, 0x98, 0xd1, 0x24, 0xdf, 0x93, 0x05, 0x01, + 0xa5, 0x69, 0xcf, 0xa2, 0xb0, 0x06, 0xc1, 0xf5, 0x8a, 0xad, 0xaf, 0x83, + 0x67, 0x2b, 0x83, 0x45, 0xc1, 0x17, 0x83, 0xbb, +}; +static const unsigned char kat3590_retbits[] = { + 0xc7, 0x0e, 0x0f, 0x3c, 0x93, 0x2a, 0x3b, 0xe3, 0x01, 0xba, 0x45, 0x27, + 0xc3, 0xf0, 0xd2, 0xf3, 0x13, 0x12, 0xfb, 0xd2, 0x12, 0x3a, 0x18, 0x4d, + 0xef, 0x1e, 0xcc, 0x04, 0xe3, 0x6a, 0x6d, 0x07, 0x10, 0x5c, 0x1f, 0x52, + 0xe9, 0xf2, 0xfb, 0xe0, 0x6a, 0x2d, 0xf8, 0xa8, 0xb4, 0x58, 0xd1, 0xf4, + 0xbd, 0x93, 0xe6, 0x77, 0x7a, 0xf1, 0x6e, 0x29, 0x80, 0x0b, 0x60, 0x3a, + 0xa6, 0x6c, 0xc4, 0x5c, +}; +static const struct drbg_kat_pr_true kat3590_t = { + 4, kat3590_entropyin, kat3590_nonce, kat3590_persstr, + kat3590_entropyinpr1, kat3590_addinpr1, kat3590_entropyinpr2, + kat3590_addinpr2, kat3590_retbits +}; +static const struct drbg_kat kat3590 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3590_t +}; + +static const unsigned char kat3591_entropyin[] = { + 0x22, 0xa7, 0xad, 0x79, 0x4f, 0x7e, 0x14, 0x81, 0xab, 0xe2, 0xf1, 0xef, + 0x18, 0xe1, 0xa2, 0x0c, 0xbb, 0xb1, 0x1e, 0xec, 0xe1, 0xdf, 0x6c, 0x39, + 0x4e, 0xb9, 0x75, 0x36, 0xd2, 0xe3, 0xeb, 0xbb, +}; +static const unsigned char kat3591_nonce[] = { + 0x38, 0x3e, 0x9f, 0xd6, 0x03, 0x36, 0x93, 0xd0, 0x47, 0xcb, 0xee, 0x6e, + 0x2a, 0xc1, 0xd7, 0xef, +}; +static const unsigned char kat3591_persstr[] = { + 0xec, 0xf0, 0xf8, 0x40, 0x39, 0x71, 0x4f, 0x4f, 0x38, 0xda, 0xe4, 0x59, + 0xdd, 0x8d, 0xf3, 0x36, 0xdc, 0x93, 0xdc, 0x9c, 0xc3, 0x1f, 0x35, 0xea, + 0xfb, 0x03, 0x4a, 0x85, 0x35, 0xb5, 0xf7, 0x86, +}; +static const unsigned char kat3591_entropyinpr1[] = { + 0x52, 0x91, 0x63, 0x3f, 0xdd, 0x22, 0xd8, 0xef, 0x60, 0x11, 0x1d, 0xd2, + 0x62, 0xc1, 0x10, 0xbb, 0xf0, 0x2f, 0x24, 0xdb, 0x7b, 0xe1, 0x92, 0x12, + 0xad, 0x18, 0xdc, 0xba, 0xef, 0x4d, 0x9d, 0x02, +}; +static const unsigned char kat3591_addinpr1[] = { + 0x88, 0x42, 0xbb, 0x79, 0xfc, 0xcc, 0x18, 0xb1, 0x83, 0x7f, 0xac, 0x5a, + 0x8d, 0x5f, 0x9a, 0x18, 0x24, 0x82, 0xcb, 0x2f, 0x99, 0xf7, 0x70, 0x1e, + 0xed, 0xed, 0x7a, 0xff, 0xad, 0x2b, 0xb1, 0x03, +}; +static const unsigned char kat3591_entropyinpr2[] = { + 0x32, 0xe9, 0xc0, 0x25, 0x44, 0xc5, 0x82, 0x1d, 0x92, 0x24, 0x87, 0x99, + 0x58, 0xb7, 0x20, 0x6e, 0x57, 0x0e, 0x48, 0xfe, 0x59, 0xdc, 0x1b, 0xcd, + 0xea, 0xfb, 0x1d, 0xba, 0x19, 0xaa, 0x53, 0x50, +}; +static const unsigned char kat3591_addinpr2[] = { + 0xc2, 0xf6, 0xf8, 0x67, 0x4e, 0xa2, 0x69, 0xe9, 0x01, 0xcc, 0x21, 0x32, + 0xb1, 0x4f, 0xa2, 0xff, 0xff, 0xf1, 0x61, 0x9f, 0x22, 0xf5, 0x39, 0xcf, + 0xe6, 0xe8, 0x1a, 0x7a, 0x6e, 0x7d, 0xe9, 0x89, +}; +static const unsigned char kat3591_retbits[] = { + 0xf5, 0x80, 0xc1, 0x18, 0x05, 0x20, 0xb7, 0x86, 0xcb, 0x3a, 0x52, 0xd0, + 0x39, 0xe0, 0x16, 0xf6, 0xea, 0x01, 0x5f, 0x88, 0x4e, 0x64, 0xec, 0x87, + 0x70, 0x78, 0xa5, 0x80, 0xae, 0x08, 0xcb, 0x74, 0x1d, 0x9d, 0xe9, 0xab, + 0x46, 0x85, 0xfe, 0xef, 0xf2, 0x74, 0x01, 0x58, 0x1d, 0xf7, 0x3c, 0xde, + 0x77, 0xaa, 0x71, 0xe9, 0xe4, 0x86, 0x08, 0x8f, 0x36, 0xfd, 0x2f, 0xea, + 0x7e, 0x06, 0x20, 0x7d, +}; +static const struct drbg_kat_pr_true kat3591_t = { + 5, kat3591_entropyin, kat3591_nonce, kat3591_persstr, + kat3591_entropyinpr1, kat3591_addinpr1, kat3591_entropyinpr2, + kat3591_addinpr2, kat3591_retbits +}; +static const struct drbg_kat kat3591 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3591_t +}; + +static const unsigned char kat3592_entropyin[] = { + 0x9a, 0x10, 0x99, 0x42, 0xe7, 0x83, 0xcd, 0xf7, 0xdb, 0xc5, 0x12, 0x9e, + 0x93, 0xce, 0x1a, 0x57, 0xe8, 0xbb, 0x17, 0x88, 0x5f, 0xf1, 0x26, 0x82, + 0x5d, 0xea, 0xdd, 0xfb, 0x89, 0x13, 0xed, 0xcf, +}; +static const unsigned char kat3592_nonce[] = { + 0x29, 0x57, 0x8d, 0xb5, 0xe7, 0x6b, 0xf2, 0x60, 0xdf, 0x35, 0x26, 0x10, + 0xa5, 0xad, 0xc5, 0x15, +}; +static const unsigned char kat3592_persstr[] = { + 0x21, 0x8c, 0x72, 0xa6, 0xe8, 0x84, 0xe9, 0x12, 0x6e, 0xae, 0x86, 0x9d, + 0x88, 0xcc, 0xff, 0xe3, 0xb8, 0x2f, 0xaf, 0xba, 0x13, 0x5d, 0x82, 0xc8, + 0x1a, 0xe2, 0x5c, 0xa4, 0x20, 0xb2, 0xa5, 0xff, +}; +static const unsigned char kat3592_entropyinpr1[] = { + 0x76, 0x4a, 0x94, 0xdf, 0x0d, 0x09, 0x7a, 0xe4, 0x7a, 0xba, 0x27, 0xa7, + 0x15, 0x42, 0xf9, 0x97, 0x64, 0xbf, 0xc1, 0x7a, 0x46, 0x57, 0x94, 0x37, + 0xe8, 0x77, 0xab, 0x25, 0x23, 0x5a, 0x0d, 0x70, +}; +static const unsigned char kat3592_addinpr1[] = { + 0x52, 0xaf, 0x46, 0xb6, 0xdf, 0x95, 0x29, 0x40, 0x41, 0xde, 0x7a, 0x69, + 0xa6, 0x4b, 0xf5, 0x37, 0x80, 0x77, 0x69, 0x88, 0xc4, 0xf8, 0x08, 0x86, + 0xa1, 0xf9, 0xc1, 0xd8, 0x65, 0x8a, 0x9f, 0xf0, +}; +static const unsigned char kat3592_entropyinpr2[] = { + 0xb9, 0x66, 0x6b, 0xe9, 0x57, 0xbc, 0x31, 0x66, 0x9c, 0x83, 0xcd, 0x97, + 0x35, 0x14, 0xbc, 0x3a, 0xe8, 0xe7, 0x73, 0xfa, 0x44, 0x52, 0x1e, 0x1e, + 0x22, 0xfa, 0xaf, 0x32, 0x0d, 0xb3, 0xe5, 0x10, +}; +static const unsigned char kat3592_addinpr2[] = { + 0xeb, 0x20, 0xda, 0x7d, 0x4b, 0x21, 0x48, 0xaa, 0x70, 0xc3, 0xa3, 0xb1, + 0x22, 0xb2, 0xae, 0x2d, 0x5d, 0x10, 0x86, 0x3f, 0x05, 0x1a, 0x36, 0x98, + 0x5e, 0x40, 0x41, 0xe2, 0x50, 0xa8, 0xd3, 0x10, +}; +static const unsigned char kat3592_retbits[] = { + 0xc9, 0x78, 0xab, 0xf8, 0x1e, 0x2c, 0x99, 0x64, 0x9c, 0x22, 0xf7, 0xe3, + 0x0f, 0x53, 0xe9, 0x81, 0xc3, 0xd9, 0xe5, 0xf0, 0x6a, 0xe8, 0x39, 0x9d, + 0xf6, 0x5a, 0xe7, 0x26, 0x8b, 0x6e, 0x52, 0x7f, 0xec, 0x07, 0x6f, 0x40, + 0x39, 0x6d, 0x82, 0xf6, 0xe8, 0xc2, 0x48, 0x0b, 0x1c, 0xde, 0xd2, 0x15, + 0x3c, 0x19, 0x75, 0x56, 0xf9, 0x6b, 0xcd, 0x39, 0x4d, 0xf5, 0x0e, 0x73, + 0xb0, 0x35, 0x3e, 0xbc, +}; +static const struct drbg_kat_pr_true kat3592_t = { + 6, kat3592_entropyin, kat3592_nonce, kat3592_persstr, + kat3592_entropyinpr1, kat3592_addinpr1, kat3592_entropyinpr2, + kat3592_addinpr2, kat3592_retbits +}; +static const struct drbg_kat kat3592 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3592_t +}; + +static const unsigned char kat3593_entropyin[] = { + 0x46, 0xf2, 0x2c, 0xf2, 0x88, 0x2c, 0x00, 0x78, 0x7d, 0x79, 0x24, 0xb8, + 0x91, 0x87, 0x8a, 0x23, 0xd8, 0x96, 0x29, 0xfc, 0xa3, 0x97, 0xf6, 0x9c, + 0x17, 0x07, 0x7e, 0x70, 0x5b, 0x45, 0xa4, 0x55, +}; +static const unsigned char kat3593_nonce[] = { + 0xf7, 0xf3, 0x29, 0x0e, 0xdb, 0x9c, 0xd0, 0x21, 0x53, 0xc1, 0x7c, 0xbb, + 0x60, 0xa3, 0xc9, 0xe8, +}; +static const unsigned char kat3593_persstr[] = { + 0xad, 0x2c, 0x48, 0x7f, 0xc2, 0x21, 0x72, 0x11, 0x35, 0x89, 0x3a, 0x4b, + 0xc4, 0x37, 0x81, 0xe0, 0x2d, 0x28, 0xb0, 0xfc, 0xa4, 0x49, 0xfc, 0xea, + 0x49, 0xfc, 0xfa, 0x2b, 0x49, 0x84, 0xc6, 0x58, +}; +static const unsigned char kat3593_entropyinpr1[] = { + 0xe2, 0xac, 0x38, 0x5e, 0xd2, 0x53, 0x59, 0xb8, 0xef, 0x9a, 0x6e, 0x87, + 0xc7, 0xf8, 0xb4, 0x17, 0x63, 0xc4, 0xf2, 0x98, 0xae, 0xac, 0x27, 0xf5, + 0xc0, 0xd2, 0x0a, 0x7f, 0x9c, 0xc0, 0x71, 0xa0, +}; +static const unsigned char kat3593_addinpr1[] = { + 0x2b, 0xe6, 0x04, 0x10, 0x20, 0x1f, 0xf1, 0x5e, 0xb5, 0x2a, 0xe9, 0x7e, + 0x53, 0xa9, 0x0c, 0x56, 0x77, 0x77, 0x9d, 0xc0, 0x0d, 0x7b, 0x05, 0xe2, + 0x83, 0xf0, 0xdc, 0xd3, 0x98, 0xb9, 0x07, 0xc8, +}; +static const unsigned char kat3593_entropyinpr2[] = { + 0xd9, 0x13, 0x0a, 0x00, 0x69, 0x8f, 0x45, 0x47, 0x45, 0x7d, 0x0b, 0x5d, + 0x27, 0x3d, 0x36, 0x55, 0xd3, 0xf6, 0x7d, 0xac, 0xfc, 0x99, 0x81, 0x27, + 0xb9, 0xb4, 0xfa, 0xdd, 0xab, 0x1d, 0xd6, 0x37, +}; +static const unsigned char kat3593_addinpr2[] = { + 0x66, 0xb7, 0x63, 0xbd, 0x38, 0x6d, 0xb6, 0xe7, 0x0e, 0xcc, 0x37, 0x15, + 0x47, 0x8a, 0xe5, 0xe9, 0x0a, 0x65, 0xcf, 0x40, 0x4a, 0x7a, 0x53, 0x9a, + 0xb1, 0xf6, 0xfe, 0x71, 0x45, 0x25, 0xa0, 0xf8, +}; +static const unsigned char kat3593_retbits[] = { + 0xb2, 0x45, 0x1d, 0x64, 0x65, 0xf4, 0x37, 0xa9, 0xdd, 0x52, 0x1d, 0x28, + 0x7e, 0x55, 0xea, 0x4c, 0xd9, 0x98, 0xd2, 0xb3, 0x23, 0x28, 0xe7, 0x8e, + 0x5f, 0xaf, 0xf6, 0xcf, 0x4b, 0x65, 0x51, 0x31, 0xb1, 0x22, 0xc8, 0xee, + 0x85, 0xb4, 0x70, 0xd1, 0xd6, 0x0a, 0xff, 0xd5, 0xb3, 0x15, 0xae, 0x4e, + 0xb8, 0x54, 0x02, 0x6b, 0x62, 0x9b, 0x39, 0xe2, 0xba, 0x9c, 0x48, 0x20, + 0xbf, 0x39, 0x68, 0x35, +}; +static const struct drbg_kat_pr_true kat3593_t = { + 7, kat3593_entropyin, kat3593_nonce, kat3593_persstr, + kat3593_entropyinpr1, kat3593_addinpr1, kat3593_entropyinpr2, + kat3593_addinpr2, kat3593_retbits +}; +static const struct drbg_kat kat3593 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3593_t +}; + +static const unsigned char kat3594_entropyin[] = { + 0x8f, 0xa1, 0x4d, 0xd5, 0xc6, 0xf8, 0xa1, 0x22, 0xd2, 0xd5, 0x59, 0xca, + 0x8d, 0x34, 0x79, 0x6b, 0xb7, 0x59, 0x2f, 0x78, 0x40, 0x37, 0x3f, 0xfb, + 0x33, 0x3e, 0x48, 0x8c, 0x27, 0xb6, 0x41, 0x9f, +}; +static const unsigned char kat3594_nonce[] = { + 0x8e, 0x1f, 0xbb, 0x81, 0xa8, 0xf8, 0x63, 0x75, 0xff, 0x76, 0x33, 0xca, + 0xb4, 0x5e, 0x4b, 0xc4, +}; +static const unsigned char kat3594_persstr[] = { + 0x72, 0x7c, 0x12, 0x8b, 0x15, 0x37, 0xa6, 0x08, 0x1c, 0x04, 0xe1, 0xf6, + 0xaa, 0xc7, 0x7c, 0xf4, 0x83, 0xf4, 0x37, 0xec, 0xa2, 0x64, 0xdf, 0x87, + 0xd8, 0x67, 0x17, 0x61, 0x7d, 0x60, 0xa6, 0x8f, +}; +static const unsigned char kat3594_entropyinpr1[] = { + 0xcc, 0x50, 0x4f, 0x7e, 0xaf, 0xa6, 0xbc, 0x5b, 0xe9, 0xdf, 0x4a, 0x2b, + 0xb2, 0x9c, 0x74, 0xe6, 0x0d, 0xbe, 0x21, 0x16, 0xfd, 0x0c, 0x66, 0xab, + 0xce, 0x07, 0x4b, 0x08, 0xac, 0x9d, 0x69, 0xd4, +}; +static const unsigned char kat3594_addinpr1[] = { + 0x83, 0xe7, 0xf7, 0x85, 0xec, 0x5c, 0x6d, 0x42, 0xa0, 0x01, 0xf0, 0x99, + 0x58, 0x91, 0x81, 0xf2, 0x42, 0x03, 0x71, 0xc9, 0xc5, 0x2b, 0x5f, 0x97, + 0x02, 0xe3, 0xd3, 0x8d, 0x9c, 0x87, 0x39, 0x79, +}; +static const unsigned char kat3594_entropyinpr2[] = { + 0x75, 0x23, 0x1c, 0x2f, 0x23, 0x0f, 0xb9, 0x48, 0x64, 0xe2, 0x42, 0x5f, + 0x6b, 0xcd, 0x62, 0x49, 0x0f, 0xe6, 0x07, 0x08, 0x5b, 0xe2, 0xd7, 0x0b, + 0x41, 0xab, 0x20, 0xd8, 0xa7, 0x4a, 0x42, 0xab, +}; +static const unsigned char kat3594_addinpr2[] = { + 0xe0, 0x6d, 0xa7, 0x85, 0x89, 0x11, 0x66, 0x38, 0x3b, 0x06, 0xdd, 0xfa, + 0xa1, 0x4f, 0x36, 0x91, 0x2e, 0xb2, 0x9e, 0x33, 0x10, 0x90, 0xc3, 0xe6, + 0x87, 0x45, 0xbb, 0x30, 0x09, 0x2b, 0xf8, 0x4a, +}; +static const unsigned char kat3594_retbits[] = { + 0x55, 0x29, 0x1c, 0x46, 0xd9, 0xd4, 0x86, 0x47, 0x8d, 0x64, 0x0e, 0xe6, + 0xfd, 0x3c, 0xb8, 0x43, 0xb0, 0xed, 0x8d, 0x23, 0x2a, 0x80, 0xc1, 0x71, + 0x2c, 0x2c, 0xde, 0xcf, 0x66, 0x23, 0xb9, 0x24, 0x53, 0x55, 0x9c, 0x29, + 0x20, 0xd5, 0x03, 0x2c, 0xed, 0x86, 0x34, 0x37, 0x79, 0x9b, 0xe1, 0x05, + 0x03, 0x98, 0x7c, 0x32, 0x89, 0x7b, 0x0e, 0xaa, 0x3a, 0xd5, 0x03, 0x07, + 0xfc, 0x59, 0xd9, 0xe3, +}; +static const struct drbg_kat_pr_true kat3594_t = { + 8, kat3594_entropyin, kat3594_nonce, kat3594_persstr, + kat3594_entropyinpr1, kat3594_addinpr1, kat3594_entropyinpr2, + kat3594_addinpr2, kat3594_retbits +}; +static const struct drbg_kat kat3594 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3594_t +}; + +static const unsigned char kat3595_entropyin[] = { + 0xec, 0x95, 0x2d, 0x39, 0x62, 0x96, 0xc7, 0xa3, 0xca, 0x26, 0x98, 0xc3, + 0x73, 0x8a, 0x31, 0x99, 0x46, 0x2c, 0x85, 0xdb, 0x4e, 0xa3, 0xe8, 0xcb, + 0x13, 0xab, 0x02, 0x69, 0x6a, 0xcf, 0x15, 0xe3, +}; +static const unsigned char kat3595_nonce[] = { + 0xcd, 0x34, 0x22, 0x46, 0xaa, 0x35, 0x01, 0x6e, 0xaa, 0xb0, 0xa1, 0x67, + 0x81, 0xf1, 0x65, 0x8d, +}; +static const unsigned char kat3595_persstr[] = { + 0x0e, 0x72, 0x88, 0x0b, 0xd7, 0xab, 0xf2, 0xc3, 0x7d, 0x65, 0xbe, 0x9d, + 0xea, 0x2b, 0x0b, 0x56, 0x21, 0x69, 0xae, 0x83, 0xa0, 0xc0, 0xc4, 0xfa, + 0x92, 0x08, 0x9b, 0x94, 0x0b, 0x9c, 0xfc, 0xb4, +}; +static const unsigned char kat3595_entropyinpr1[] = { + 0x9b, 0x11, 0x10, 0x2a, 0xdc, 0x27, 0xda, 0x52, 0xe0, 0x5e, 0xec, 0x2b, + 0x2d, 0x1b, 0xaf, 0xa4, 0x4a, 0x43, 0x67, 0x8d, 0x0a, 0x3d, 0x4f, 0x18, + 0x13, 0x86, 0xb6, 0x3f, 0x27, 0x48, 0xd9, 0xa0, +}; +static const unsigned char kat3595_addinpr1[] = { + 0x47, 0x03, 0x7e, 0xd6, 0xde, 0x88, 0x4a, 0xb7, 0xa5, 0x87, 0x67, 0x8f, + 0x95, 0x90, 0x76, 0x4d, 0x8e, 0x07, 0xd1, 0xd3, 0xb3, 0xbd, 0xbd, 0x2f, + 0x31, 0xda, 0x45, 0xed, 0xfa, 0xf8, 0x7a, 0x9e, +}; +static const unsigned char kat3595_entropyinpr2[] = { + 0x79, 0x9f, 0x40, 0xa0, 0x64, 0x2d, 0xcf, 0x0c, 0xe2, 0x05, 0xc0, 0x2b, + 0x2b, 0xfb, 0x5f, 0xb2, 0xa1, 0x07, 0x45, 0xd9, 0x69, 0x0d, 0x2d, 0x62, + 0x1f, 0xd2, 0xc0, 0x84, 0x41, 0xe0, 0xb8, 0xbe, +}; +static const unsigned char kat3595_addinpr2[] = { + 0xce, 0x80, 0xd2, 0x93, 0x6b, 0x50, 0xdb, 0xc9, 0x74, 0x2b, 0x09, 0x1d, + 0x7e, 0x1b, 0x20, 0xfa, 0x78, 0xf0, 0x1e, 0x32, 0x88, 0xc3, 0xf0, 0xc6, + 0x2e, 0x7d, 0x99, 0x5f, 0x9c, 0xc1, 0x10, 0x7d, +}; +static const unsigned char kat3595_retbits[] = { + 0x12, 0xa5, 0x41, 0x14, 0xe9, 0x6d, 0xcb, 0xfe, 0x4e, 0xce, 0xd7, 0x5a, + 0x98, 0xb5, 0xb8, 0xa3, 0x77, 0x68, 0xbb, 0x62, 0x96, 0x2a, 0x2a, 0x4f, + 0x0c, 0x0e, 0xe3, 0x8e, 0x08, 0xa9, 0x08, 0xf2, 0x5d, 0xe4, 0x8f, 0x5b, + 0xee, 0x4c, 0x9a, 0x9e, 0x1c, 0xc0, 0x3d, 0x3a, 0x8c, 0xf8, 0xbe, 0xdb, + 0xc7, 0x38, 0xa3, 0x56, 0x7a, 0x84, 0xc2, 0x87, 0x76, 0xc4, 0x47, 0x8f, + 0xa2, 0xf1, 0x83, 0x51, +}; +static const struct drbg_kat_pr_true kat3595_t = { + 9, kat3595_entropyin, kat3595_nonce, kat3595_persstr, + kat3595_entropyinpr1, kat3595_addinpr1, kat3595_entropyinpr2, + kat3595_addinpr2, kat3595_retbits +}; +static const struct drbg_kat kat3595 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3595_t +}; + +static const unsigned char kat3596_entropyin[] = { + 0x86, 0x06, 0x71, 0xa4, 0x2a, 0xd1, 0xea, 0x67, 0x71, 0x1d, 0xb8, 0x9f, + 0x7d, 0x3f, 0xe7, 0xed, 0x05, 0x26, 0x90, 0x84, 0xc8, 0xc0, 0xdf, 0xf7, + 0x67, 0x6b, 0x6b, 0x6e, 0x8c, 0x63, 0xd3, 0x9f, +}; +static const unsigned char kat3596_nonce[] = { + 0xa2, 0xbd, 0x71, 0x11, 0x92, 0xa3, 0xb3, 0x81, 0xa6, 0xa7, 0x79, 0x86, + 0x26, 0xb4, 0xa0, 0x70, +}; +static const unsigned char kat3596_persstr[] = { + 0x56, 0xef, 0x96, 0x08, 0x34, 0x9f, 0x6a, 0xdd, 0x6e, 0x04, 0xbb, 0x9f, + 0x91, 0x7d, 0x8d, 0x01, 0x12, 0x86, 0x3b, 0x4f, 0x32, 0xab, 0x6b, 0xe0, + 0xf6, 0x05, 0x55, 0x32, 0x13, 0xe1, 0xbd, 0x71, +}; +static const unsigned char kat3596_entropyinpr1[] = { + 0x2d, 0x28, 0x29, 0x91, 0x2f, 0xc0, 0x83, 0xaf, 0x8c, 0xf2, 0x7a, 0x82, + 0x67, 0x0f, 0x30, 0x68, 0xbd, 0xda, 0x73, 0x9f, 0x73, 0xa5, 0x12, 0x0c, + 0x05, 0x69, 0x23, 0xc7, 0x5a, 0x06, 0xef, 0x0d, +}; +static const unsigned char kat3596_addinpr1[] = { + 0x41, 0x77, 0xba, 0xda, 0x3f, 0xe1, 0x39, 0x32, 0x68, 0xd1, 0x98, 0x69, + 0xa5, 0x6e, 0x7c, 0xe8, 0xd3, 0xdf, 0xab, 0x82, 0x0f, 0x9f, 0x23, 0x75, + 0xac, 0x99, 0xe8, 0x72, 0x76, 0x93, 0x1e, 0x51, +}; +static const unsigned char kat3596_entropyinpr2[] = { + 0xf6, 0xac, 0x02, 0x4b, 0x6c, 0xca, 0x29, 0x0a, 0x37, 0x29, 0x15, 0x57, + 0xb7, 0x64, 0x95, 0x87, 0x62, 0x3a, 0x75, 0x2d, 0x1a, 0x08, 0x8e, 0xa4, + 0xf2, 0xc6, 0xba, 0x8e, 0x95, 0xc0, 0x38, 0x08, +}; +static const unsigned char kat3596_addinpr2[] = { + 0xe2, 0x54, 0xbf, 0x0d, 0xd8, 0x01, 0x16, 0xb9, 0xea, 0x95, 0xf8, 0xbe, + 0x00, 0x89, 0x45, 0xe8, 0x69, 0x65, 0x8e, 0x75, 0xf8, 0xfc, 0xa8, 0xaf, + 0x3d, 0x8f, 0xe7, 0xbc, 0x86, 0x92, 0x5e, 0x4b, +}; +static const unsigned char kat3596_retbits[] = { + 0x7b, 0xe6, 0x39, 0x6c, 0xa2, 0x06, 0xf6, 0xf0, 0x6d, 0x8e, 0x41, 0x34, + 0x5b, 0x6b, 0x3f, 0xd4, 0x7e, 0x38, 0x1c, 0x69, 0x0a, 0x0d, 0x18, 0x38, + 0x56, 0x03, 0x89, 0x91, 0x14, 0x11, 0x3c, 0x2d, 0xa1, 0xb9, 0x24, 0xca, + 0xbc, 0x7a, 0x17, 0x00, 0x58, 0xee, 0x14, 0xa1, 0x58, 0x73, 0xe7, 0x66, + 0xfd, 0xfb, 0x1f, 0xce, 0x8a, 0xf9, 0x6c, 0x5b, 0x58, 0x95, 0x91, 0x3c, + 0x57, 0x49, 0x28, 0xb7, +}; +static const struct drbg_kat_pr_true kat3596_t = { + 10, kat3596_entropyin, kat3596_nonce, kat3596_persstr, + kat3596_entropyinpr1, kat3596_addinpr1, kat3596_entropyinpr2, + kat3596_addinpr2, kat3596_retbits +}; +static const struct drbg_kat kat3596 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3596_t +}; + +static const unsigned char kat3597_entropyin[] = { + 0x67, 0xa8, 0x1d, 0x11, 0xf3, 0x52, 0x18, 0x3b, 0x31, 0xd9, 0x5e, 0x0c, + 0x2f, 0xcf, 0xab, 0xb4, 0x72, 0xeb, 0x91, 0x8f, 0x5e, 0x04, 0xc5, 0x92, + 0x57, 0x9f, 0xff, 0x2c, 0xdd, 0x96, 0x95, 0xd0, +}; +static const unsigned char kat3597_nonce[] = { + 0x9d, 0x72, 0x94, 0xca, 0xcc, 0x19, 0xc1, 0x76, 0x86, 0x89, 0x4e, 0xbd, + 0xac, 0x26, 0xfc, 0xe9, +}; +static const unsigned char kat3597_persstr[] = { + 0xac, 0xca, 0x3c, 0xc3, 0x93, 0x34, 0xcd, 0x62, 0x2e, 0x52, 0x23, 0xf5, + 0x5f, 0x78, 0xf4, 0x82, 0xc1, 0x3c, 0xc0, 0x78, 0x24, 0x00, 0x0d, 0xab, + 0xca, 0xde, 0x81, 0x79, 0xa9, 0x6b, 0xb1, 0x12, +}; +static const unsigned char kat3597_entropyinpr1[] = { + 0x35, 0xe1, 0x85, 0xb5, 0x42, 0x9e, 0xd1, 0x10, 0xa8, 0x99, 0x73, 0x29, + 0xa7, 0xd3, 0x14, 0xe7, 0xc8, 0x05, 0xd4, 0x95, 0x82, 0x38, 0x85, 0x5b, + 0x5b, 0x7f, 0x61, 0xe7, 0x14, 0x5a, 0xd8, 0x24, +}; +static const unsigned char kat3597_addinpr1[] = { + 0xdb, 0x7b, 0x3b, 0x9c, 0xba, 0x0d, 0xfa, 0x6d, 0x13, 0x7f, 0x91, 0x67, + 0x54, 0x85, 0x15, 0x11, 0x27, 0x1b, 0x7e, 0xf4, 0x5c, 0x86, 0x3f, 0xfc, + 0xa7, 0x62, 0x8b, 0x14, 0x27, 0x5e, 0xd0, 0xd4, +}; +static const unsigned char kat3597_entropyinpr2[] = { + 0xd9, 0xe4, 0xb2, 0x28, 0x3b, 0x9e, 0x72, 0x74, 0xa3, 0x6b, 0x04, 0xa5, + 0xd5, 0xf2, 0x01, 0x7d, 0x1f, 0x35, 0xa0, 0x8c, 0x4f, 0x14, 0x7f, 0x76, + 0x4e, 0x2e, 0x9f, 0xc9, 0xa4, 0x03, 0x16, 0x1c, +}; +static const unsigned char kat3597_addinpr2[] = { + 0x5b, 0xb4, 0x7d, 0x5c, 0x5c, 0x88, 0xd0, 0x70, 0xcc, 0xe4, 0xc4, 0x10, + 0x0c, 0xe4, 0x0d, 0x0c, 0xea, 0x07, 0xf1, 0xd5, 0xe7, 0xdf, 0x56, 0xcd, + 0x3f, 0xd3, 0xf6, 0x52, 0xd1, 0xb5, 0x24, 0xce, +}; +static const unsigned char kat3597_retbits[] = { + 0xde, 0x19, 0x0a, 0xf2, 0x00, 0x16, 0x98, 0x52, 0x26, 0x1b, 0xae, 0x91, + 0x6c, 0x76, 0xc1, 0xe6, 0x70, 0x6a, 0x6a, 0x50, 0x66, 0x1c, 0x4e, 0x90, + 0x04, 0x94, 0xa3, 0x3e, 0x51, 0xb7, 0x37, 0x6d, 0xa6, 0x96, 0xd6, 0x08, + 0x66, 0x72, 0x50, 0x33, 0x27, 0x89, 0xe2, 0x80, 0x78, 0x1c, 0x9d, 0x7c, + 0x0e, 0xba, 0x9e, 0x29, 0x10, 0x25, 0x6c, 0x7f, 0xe4, 0x16, 0x1a, 0xdb, + 0x82, 0x6c, 0xbe, 0x07, +}; +static const struct drbg_kat_pr_true kat3597_t = { + 11, kat3597_entropyin, kat3597_nonce, kat3597_persstr, + kat3597_entropyinpr1, kat3597_addinpr1, kat3597_entropyinpr2, + kat3597_addinpr2, kat3597_retbits +}; +static const struct drbg_kat kat3597 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3597_t +}; + +static const unsigned char kat3598_entropyin[] = { + 0x4b, 0x19, 0xb7, 0x3d, 0x91, 0x00, 0x6d, 0x9c, 0xa6, 0x0d, 0x18, 0x6c, + 0xc6, 0x72, 0x17, 0xb9, 0x79, 0x77, 0xd2, 0xe1, 0x39, 0xad, 0x51, 0xe2, + 0x5f, 0xfc, 0x24, 0x43, 0x32, 0xb1, 0xdd, 0x06, +}; +static const unsigned char kat3598_nonce[] = { + 0x3a, 0xef, 0xf5, 0x55, 0x76, 0x42, 0xf2, 0x3e, 0xee, 0x84, 0x58, 0xd0, + 0xea, 0xa8, 0x3b, 0x85, +}; +static const unsigned char kat3598_persstr[] = { + 0x9f, 0x8d, 0x6f, 0xe7, 0x0b, 0x20, 0xc6, 0x37, 0x4d, 0xfd, 0x6d, 0x9d, + 0x3f, 0xfc, 0x16, 0xb0, 0xe8, 0x95, 0x2c, 0x03, 0x99, 0x44, 0x5d, 0xd9, + 0xd7, 0x4c, 0xfc, 0xf2, 0x36, 0x04, 0xee, 0x59, +}; +static const unsigned char kat3598_entropyinpr1[] = { + 0xf3, 0x6c, 0xee, 0xd5, 0xeb, 0xbc, 0x38, 0x71, 0x6f, 0x7e, 0x50, 0x6d, + 0x81, 0xcf, 0x04, 0x27, 0xb9, 0x4c, 0x8a, 0x39, 0x46, 0x55, 0x59, 0x5b, + 0x31, 0x3e, 0xf5, 0x71, 0x81, 0xec, 0x3f, 0x35, +}; +static const unsigned char kat3598_addinpr1[] = { + 0x54, 0x31, 0x05, 0xca, 0xd4, 0x55, 0x04, 0x11, 0xfb, 0x26, 0xd4, 0x64, + 0xed, 0xa0, 0xcb, 0x3c, 0x62, 0xcc, 0x87, 0xae, 0xef, 0x29, 0x2a, 0xe3, + 0xb7, 0x4e, 0x9a, 0xdf, 0x23, 0xd8, 0xad, 0x2e, +}; +static const unsigned char kat3598_entropyinpr2[] = { + 0xca, 0x63, 0xdd, 0xed, 0x9e, 0xbe, 0xc1, 0x50, 0xaf, 0x62, 0x6b, 0x73, + 0xf0, 0xc7, 0xf5, 0x87, 0x66, 0x5d, 0x59, 0x9b, 0x3a, 0x2e, 0xe7, 0x0a, + 0x9a, 0x0e, 0x6f, 0x46, 0xc4, 0xe3, 0xea, 0x82, +}; +static const unsigned char kat3598_addinpr2[] = { + 0xbf, 0xd4, 0xc4, 0x8a, 0xae, 0x26, 0xf7, 0x09, 0x9d, 0xc3, 0x05, 0x69, + 0xe0, 0x35, 0x1d, 0xe4, 0x3a, 0x60, 0x2d, 0xfa, 0xe3, 0xc3, 0x21, 0xcb, + 0x7e, 0xf8, 0xb5, 0x7e, 0x4d, 0xbf, 0x30, 0xda, +}; +static const unsigned char kat3598_retbits[] = { + 0x87, 0x82, 0xa2, 0xb6, 0x05, 0xe1, 0x0a, 0x5e, 0xfd, 0xf9, 0x60, 0xa6, + 0xc8, 0x03, 0x21, 0x07, 0xd0, 0x88, 0xaa, 0x11, 0x0b, 0xb4, 0xd4, 0xa3, + 0x36, 0x16, 0xca, 0x31, 0xaf, 0x1a, 0x15, 0xb7, 0x9e, 0x36, 0x57, 0x62, + 0x1c, 0x50, 0x96, 0xdf, 0xcb, 0xc4, 0x50, 0x86, 0x89, 0xcf, 0xe8, 0x5a, + 0xc1, 0xb6, 0xd0, 0x0f, 0x6e, 0x45, 0xc4, 0x5d, 0xa9, 0x14, 0x5b, 0x84, + 0xe3, 0x3b, 0xd6, 0x03, +}; +static const struct drbg_kat_pr_true kat3598_t = { + 12, kat3598_entropyin, kat3598_nonce, kat3598_persstr, + kat3598_entropyinpr1, kat3598_addinpr1, kat3598_entropyinpr2, + kat3598_addinpr2, kat3598_retbits +}; +static const struct drbg_kat kat3598 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3598_t +}; + +static const unsigned char kat3599_entropyin[] = { + 0x14, 0x7a, 0xc0, 0x57, 0x6d, 0x43, 0x7f, 0xc0, 0x34, 0xec, 0xf7, 0xa1, + 0x73, 0x85, 0xe3, 0xb7, 0x81, 0x1b, 0x5e, 0xb3, 0xc9, 0xc9, 0x07, 0x6e, + 0x29, 0x09, 0x29, 0x72, 0xd0, 0x72, 0x80, 0x01, +}; +static const unsigned char kat3599_nonce[] = { + 0x4b, 0x61, 0x05, 0x7a, 0xc2, 0xfa, 0x6f, 0x39, 0xda, 0x57, 0x1f, 0x32, + 0xcc, 0xec, 0x2c, 0xc1, +}; +static const unsigned char kat3599_persstr[] = { + 0xc8, 0xdb, 0xa9, 0xd9, 0x20, 0xfe, 0xe3, 0xdd, 0x19, 0xba, 0xc7, 0xb5, + 0x55, 0x3d, 0x0b, 0x25, 0x97, 0x1c, 0x08, 0x7a, 0x99, 0x2c, 0x65, 0x13, + 0x39, 0xc1, 0x91, 0xc3, 0xff, 0xc4, 0x21, 0x64, +}; +static const unsigned char kat3599_entropyinpr1[] = { + 0xe6, 0xee, 0x39, 0x9a, 0xdd, 0x12, 0x7e, 0x28, 0x82, 0xd0, 0x09, 0x18, + 0xd6, 0x29, 0x2f, 0x1c, 0x9e, 0x41, 0x87, 0xfd, 0xee, 0xf8, 0x02, 0xd2, + 0x77, 0x20, 0x93, 0x34, 0x1e, 0x24, 0xea, 0xdd, +}; +static const unsigned char kat3599_addinpr1[] = { + 0xb5, 0x77, 0xea, 0x45, 0x6c, 0x0d, 0x58, 0x90, 0xbc, 0xd7, 0xd2, 0x59, + 0x3b, 0x51, 0xab, 0xf1, 0x87, 0xe6, 0xdc, 0x42, 0xcc, 0xa7, 0x27, 0xb3, + 0xba, 0x7e, 0x7e, 0xeb, 0xab, 0x68, 0xe6, 0x25, +}; +static const unsigned char kat3599_entropyinpr2[] = { + 0x3f, 0xdf, 0xb9, 0x2a, 0xab, 0xac, 0xde, 0x1f, 0xcf, 0x57, 0x5a, 0xa5, + 0xab, 0xc2, 0xf7, 0xe5, 0x4f, 0x90, 0xa7, 0x77, 0xce, 0x2d, 0x90, 0x4a, + 0xaa, 0x07, 0x8b, 0xe8, 0xd7, 0x0a, 0xf5, 0xb1, +}; +static const unsigned char kat3599_addinpr2[] = { + 0x1c, 0xb8, 0x41, 0x8e, 0x51, 0x82, 0x81, 0xf1, 0xb7, 0xb8, 0x40, 0x59, + 0xea, 0xd1, 0xc0, 0x6d, 0x2e, 0x14, 0x87, 0x26, 0xa3, 0xc3, 0xfc, 0xc7, + 0xab, 0xd4, 0x84, 0x9c, 0x86, 0xd0, 0xab, 0xdb, +}; +static const unsigned char kat3599_retbits[] = { + 0xf9, 0xb0, 0xa0, 0xef, 0x77, 0x32, 0xad, 0xed, 0xc5, 0xd6, 0x2d, 0xb5, + 0x38, 0x69, 0xc0, 0xd6, 0x10, 0xe5, 0x7a, 0xd5, 0x7b, 0xbd, 0x02, 0xef, + 0x41, 0x7d, 0x16, 0x84, 0x55, 0xa8, 0xfd, 0x1b, 0x1d, 0x01, 0xc6, 0xf6, + 0xac, 0xec, 0x68, 0xac, 0xab, 0xb5, 0x62, 0x71, 0x90, 0xa8, 0x02, 0x00, + 0x54, 0x0d, 0x57, 0xae, 0x26, 0xd0, 0xc1, 0x97, 0xfd, 0xce, 0x4a, 0x27, + 0x25, 0x7f, 0x70, 0x30, +}; +static const struct drbg_kat_pr_true kat3599_t = { + 13, kat3599_entropyin, kat3599_nonce, kat3599_persstr, + kat3599_entropyinpr1, kat3599_addinpr1, kat3599_entropyinpr2, + kat3599_addinpr2, kat3599_retbits +}; +static const struct drbg_kat kat3599 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3599_t +}; + +static const unsigned char kat3600_entropyin[] = { + 0x3a, 0x59, 0x99, 0xb2, 0xcb, 0xaa, 0x25, 0xe3, 0xfd, 0xa6, 0xcf, 0x86, + 0x8c, 0x9b, 0xc2, 0xe0, 0x92, 0x2b, 0x48, 0x23, 0x01, 0x7c, 0x9f, 0x66, + 0xf4, 0xa5, 0x32, 0xb5, 0x74, 0xd0, 0x30, 0x21, +}; +static const unsigned char kat3600_nonce[] = { + 0x0e, 0x65, 0xb1, 0xe4, 0x65, 0x13, 0x6f, 0xd4, 0x7b, 0xc7, 0xb1, 0x2f, + 0x90, 0x5a, 0x73, 0x6f, +}; +static const unsigned char kat3600_persstr[] = { + 0x50, 0xfc, 0x46, 0xa2, 0xc8, 0x8a, 0xaa, 0xf7, 0x95, 0x93, 0x6c, 0x12, + 0x65, 0x6c, 0x3e, 0xab, 0x2e, 0xa9, 0xa3, 0xd9, 0xf3, 0x34, 0x64, 0xba, + 0xda, 0x67, 0x38, 0x47, 0x87, 0x1c, 0x43, 0x41, +}; +static const unsigned char kat3600_entropyinpr1[] = { + 0xe9, 0x63, 0x81, 0xb8, 0x9c, 0x4d, 0x6d, 0x9a, 0x10, 0x61, 0x84, 0xf8, + 0xfa, 0x72, 0x27, 0x93, 0x3d, 0xd6, 0x0d, 0x86, 0x9e, 0x84, 0xfe, 0xdd, + 0x5e, 0xaa, 0x14, 0x23, 0xca, 0xb6, 0xc7, 0xbc, +}; +static const unsigned char kat3600_addinpr1[] = { + 0xf1, 0xfa, 0xcb, 0x82, 0x2c, 0x5c, 0x0b, 0xe6, 0xfd, 0x65, 0x58, 0xb6, + 0xc1, 0xf3, 0xb7, 0x57, 0x4e, 0x5e, 0x42, 0x68, 0xcb, 0x24, 0xe8, 0x31, + 0x02, 0xcb, 0x27, 0xa2, 0x82, 0xdf, 0xfd, 0x40, +}; +static const unsigned char kat3600_entropyinpr2[] = { + 0x72, 0x90, 0x1d, 0x3c, 0x63, 0x24, 0xcb, 0x6e, 0xea, 0x7e, 0x62, 0x87, + 0x97, 0x21, 0xc4, 0xab, 0x43, 0x7f, 0xca, 0xc4, 0x53, 0xcc, 0x43, 0xf1, + 0x79, 0x38, 0x88, 0x51, 0xb6, 0xd1, 0x60, 0xf3, +}; +static const unsigned char kat3600_addinpr2[] = { + 0x37, 0x3b, 0x7d, 0x3c, 0x6e, 0x3c, 0x07, 0x90, 0x7a, 0x45, 0xe6, 0x29, + 0x2d, 0xa0, 0x29, 0x91, 0xc2, 0x52, 0xb4, 0xf3, 0x68, 0xac, 0x89, 0x4e, + 0x44, 0xfe, 0x27, 0x41, 0xd6, 0x3e, 0xdb, 0xc5, +}; +static const unsigned char kat3600_retbits[] = { + 0xef, 0xfd, 0xdd, 0x2d, 0x7c, 0x39, 0xdf, 0x20, 0x55, 0x0e, 0x03, 0xad, + 0x21, 0xcc, 0xba, 0x6f, 0x67, 0x75, 0xa9, 0x27, 0x26, 0xaf, 0x56, 0x7a, + 0x80, 0xbc, 0xc9, 0x15, 0x23, 0xf3, 0x64, 0x6e, 0xc1, 0x56, 0xcb, 0xaa, + 0xbd, 0x4f, 0xdb, 0x13, 0xc6, 0x31, 0x05, 0xf2, 0xb7, 0x71, 0xf9, 0x4f, + 0xbd, 0xec, 0x6a, 0x26, 0x70, 0xf8, 0xfb, 0x26, 0x3c, 0xde, 0xc3, 0xac, + 0x1b, 0x77, 0x57, 0x74, +}; +static const struct drbg_kat_pr_true kat3600_t = { + 14, kat3600_entropyin, kat3600_nonce, kat3600_persstr, + kat3600_entropyinpr1, kat3600_addinpr1, kat3600_entropyinpr2, + kat3600_addinpr2, kat3600_retbits +}; +static const struct drbg_kat kat3600 = { + PR_TRUE, USE_DF, NID_aes_256_ctr, 32, 16, 32, 32, 64, &kat3600_t +}; + +static const unsigned char kat3601_entropyin[] = { + 0xf1, 0x89, 0x3b, 0xe2, 0xbc, 0x86, 0xc8, 0x0d, 0x64, 0x22, 0xf3, 0xd5, + 0x86, 0xc0, 0xa8, 0xce, 0x9b, 0xad, 0x64, 0x86, 0xf2, 0x31, 0x23, 0xf0, + 0x2b, 0xa0, 0x14, 0x03, 0x38, 0x4b, 0x83, 0xfe, +}; +static const unsigned char kat3601_nonce[] = {0}; +static const unsigned char kat3601_persstr[] = {0}; +static const unsigned char kat3601_entropyinpr1[] = { + 0x79, 0xdd, 0xe8, 0xe1, 0x50, 0x28, 0x18, 0xdf, 0x74, 0x4e, 0x1a, 0xfe, + 0x8e, 0x5e, 0xcb, 0x3b, 0x8d, 0x19, 0x36, 0x51, 0x82, 0xc7, 0x95, 0x72, + 0x60, 0xd1, 0x79, 0x4e, 0x54, 0x91, 0x26, 0x20, +}; +static const unsigned char kat3601_addinpr1[] = {0}; +static const unsigned char kat3601_entropyinpr2[] = { + 0xcf, 0x68, 0x4f, 0xd0, 0xee, 0xbb, 0xa7, 0x79, 0x01, 0xef, 0xcb, 0xe3, + 0xcc, 0x52, 0x97, 0xba, 0x9f, 0x04, 0x36, 0x7f, 0xd5, 0x4f, 0xe6, 0xaf, + 0x94, 0x63, 0xad, 0x2e, 0xbc, 0xfe, 0xdb, 0xf4, +}; +static const unsigned char kat3601_addinpr2[] = {0}; +static const unsigned char kat3601_retbits[] = { + 0xfd, 0xb9, 0x7f, 0x0e, 0xb2, 0x72, 0x79, 0xb8, 0xd8, 0x85, 0xf2, 0x46, + 0x2e, 0x89, 0x68, 0xdc, 0x4c, 0x92, 0x66, 0xf8, 0x11, 0x67, 0x35, 0x9d, + 0x89, 0xdf, 0x4c, 0x32, 0x76, 0x42, 0xea, 0xe1, 0xb3, 0x13, 0x1f, 0x90, + 0xd6, 0x4c, 0x1b, 0x5a, 0x0e, 0x71, 0x95, 0x02, 0x84, 0xfc, 0x3f, 0xd0, + 0x26, 0x20, 0x10, 0x94, 0xe8, 0xab, 0x3f, 0x37, 0x60, 0x18, 0x4d, 0x71, + 0x84, 0xc9, 0x0a, 0x34, +}; +static const struct drbg_kat_pr_true kat3601_t = { + 0, kat3601_entropyin, kat3601_nonce, kat3601_persstr, + kat3601_entropyinpr1, kat3601_addinpr1, kat3601_entropyinpr2, + kat3601_addinpr2, kat3601_retbits +}; +static const struct drbg_kat kat3601 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3601_t +}; + +static const unsigned char kat3602_entropyin[] = { + 0x61, 0x4c, 0x33, 0xc5, 0x44, 0xb0, 0xe8, 0xc2, 0x81, 0x17, 0xc5, 0xe7, + 0x59, 0xb6, 0x81, 0x07, 0x0e, 0x15, 0x7b, 0x6f, 0x3c, 0xeb, 0xa2, 0x56, + 0x75, 0xd7, 0x79, 0x1d, 0xbf, 0x79, 0x61, 0xe8, +}; +static const unsigned char kat3602_nonce[] = {0}; +static const unsigned char kat3602_persstr[] = {0}; +static const unsigned char kat3602_entropyinpr1[] = { + 0xcb, 0xf2, 0xbe, 0x8b, 0xbb, 0xa5, 0x88, 0x11, 0xdd, 0xc7, 0xa9, 0x71, + 0x23, 0xca, 0xae, 0xa1, 0x2d, 0xd7, 0x96, 0xdb, 0xa8, 0x71, 0xfd, 0xd4, + 0x89, 0xd1, 0x58, 0xb8, 0x9d, 0xb5, 0xbf, 0x6d, +}; +static const unsigned char kat3602_addinpr1[] = {0}; +static const unsigned char kat3602_entropyinpr2[] = { + 0xf0, 0xc8, 0x1d, 0x9f, 0x75, 0x0b, 0x2b, 0xde, 0x9d, 0xb4, 0x52, 0x6f, + 0x58, 0x8b, 0x59, 0xba, 0x09, 0x5e, 0x8a, 0x02, 0xe2, 0x5f, 0x34, 0x0c, + 0x71, 0xb5, 0x2a, 0x98, 0xb6, 0x03, 0xe7, 0x36, +}; +static const unsigned char kat3602_addinpr2[] = {0}; +static const unsigned char kat3602_retbits[] = { + 0xbf, 0x22, 0xde, 0x04, 0xc7, 0xf6, 0x29, 0x57, 0xe6, 0x48, 0x65, 0xb8, + 0x6b, 0x7d, 0xba, 0x29, 0x73, 0x7b, 0x8a, 0xeb, 0xaf, 0x5b, 0x91, 0x25, + 0x73, 0x79, 0x42, 0x13, 0x41, 0xdd, 0xd1, 0x22, 0x52, 0x51, 0x4d, 0x3c, + 0xc2, 0x20, 0x4e, 0xde, 0x75, 0x65, 0xaf, 0x58, 0x55, 0x2d, 0xfb, 0x87, + 0x67, 0x58, 0x69, 0x17, 0xfa, 0xcc, 0x70, 0x06, 0x85, 0xc7, 0x03, 0x0d, + 0xa1, 0x38, 0x41, 0x36, +}; +static const struct drbg_kat_pr_true kat3602_t = { + 1, kat3602_entropyin, kat3602_nonce, kat3602_persstr, + kat3602_entropyinpr1, kat3602_addinpr1, kat3602_entropyinpr2, + kat3602_addinpr2, kat3602_retbits +}; +static const struct drbg_kat kat3602 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3602_t +}; + +static const unsigned char kat3603_entropyin[] = { + 0x7f, 0x00, 0x38, 0xcc, 0xa3, 0xc7, 0x7c, 0x95, 0x4a, 0x67, 0xec, 0xda, + 0x1b, 0xc0, 0xf5, 0x59, 0x85, 0x6e, 0xdd, 0xef, 0xf3, 0x2a, 0x27, 0x41, + 0x44, 0x9b, 0x8f, 0xdb, 0x12, 0x3c, 0x8c, 0x93, +}; +static const unsigned char kat3603_nonce[] = {0}; +static const unsigned char kat3603_persstr[] = {0}; +static const unsigned char kat3603_entropyinpr1[] = { + 0x09, 0xbe, 0x22, 0x7d, 0xc9, 0xc3, 0x00, 0xb5, 0xa0, 0x58, 0xb7, 0xa4, + 0x17, 0xb0, 0xa8, 0xae, 0x76, 0xe0, 0xfb, 0x63, 0xba, 0x77, 0x86, 0x6d, + 0xdd, 0x27, 0xc3, 0x3f, 0xe4, 0x0c, 0x86, 0x8d, +}; +static const unsigned char kat3603_addinpr1[] = {0}; +static const unsigned char kat3603_entropyinpr2[] = { + 0x37, 0xcc, 0x30, 0xa0, 0x4a, 0x78, 0xc3, 0xa7, 0x7b, 0x01, 0x05, 0xd9, + 0xc2, 0xb7, 0x2f, 0xe1, 0x55, 0x11, 0xa2, 0xfa, 0xdc, 0x31, 0x5d, 0x04, + 0x1c, 0x6d, 0xfc, 0xd9, 0xe0, 0x54, 0x7b, 0x43, +}; +static const unsigned char kat3603_addinpr2[] = {0}; +static const unsigned char kat3603_retbits[] = { + 0x1a, 0x5b, 0x3d, 0x85, 0xe2, 0xd9, 0x2e, 0xbf, 0x1f, 0x49, 0x51, 0xed, + 0xad, 0x6b, 0x0a, 0xe2, 0xe7, 0x4b, 0x38, 0x12, 0x5b, 0x32, 0x40, 0xb7, + 0x0d, 0xd6, 0x09, 0xc9, 0x92, 0xb3, 0xd5, 0x2e, 0xce, 0xfb, 0xab, 0x51, + 0x9d, 0x6d, 0x15, 0xf0, 0xb9, 0x3c, 0xf9, 0xae, 0x62, 0x30, 0xd9, 0xcb, + 0xcb, 0xd1, 0x7e, 0x56, 0x20, 0xa8, 0x93, 0xf1, 0x9a, 0x85, 0x11, 0x70, + 0x4a, 0x0c, 0xe9, 0xf7, +}; +static const struct drbg_kat_pr_true kat3603_t = { + 2, kat3603_entropyin, kat3603_nonce, kat3603_persstr, + kat3603_entropyinpr1, kat3603_addinpr1, kat3603_entropyinpr2, + kat3603_addinpr2, kat3603_retbits +}; +static const struct drbg_kat kat3603 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3603_t +}; + +static const unsigned char kat3604_entropyin[] = { + 0x51, 0x68, 0x4d, 0x77, 0xf6, 0x18, 0xcb, 0x07, 0x66, 0x68, 0x55, 0xdf, + 0x7e, 0xcf, 0xbc, 0x82, 0xcb, 0x64, 0xe6, 0x39, 0x9d, 0x45, 0x21, 0x52, + 0x14, 0x1f, 0x78, 0x7b, 0x23, 0x20, 0x0d, 0x7e, +}; +static const unsigned char kat3604_nonce[] = {0}; +static const unsigned char kat3604_persstr[] = {0}; +static const unsigned char kat3604_entropyinpr1[] = { + 0xcb, 0x20, 0xc9, 0x70, 0xc4, 0xcb, 0x4a, 0x1a, 0x42, 0x9f, 0x6e, 0xc8, + 0x11, 0x7b, 0x7c, 0x25, 0x89, 0xd3, 0x21, 0x41, 0xf8, 0x93, 0x56, 0x21, + 0xee, 0x9b, 0xb1, 0x02, 0x7f, 0x61, 0x61, 0x0d, +}; +static const unsigned char kat3604_addinpr1[] = {0}; +static const unsigned char kat3604_entropyinpr2[] = { + 0x61, 0x29, 0x7e, 0x68, 0x17, 0xb3, 0xc1, 0xe4, 0x7c, 0x37, 0xa7, 0x81, + 0x2f, 0x01, 0xac, 0xcc, 0x89, 0xce, 0xc1, 0x5f, 0x5b, 0x71, 0x30, 0xfe, + 0xb2, 0xae, 0xbf, 0x59, 0x7b, 0xeb, 0xd4, 0x83, +}; +static const unsigned char kat3604_addinpr2[] = {0}; +static const unsigned char kat3604_retbits[] = { + 0x11, 0x97, 0xc0, 0x23, 0x06, 0x6f, 0xe8, 0x80, 0xd9, 0xe2, 0x1d, 0x01, + 0x07, 0x79, 0x1b, 0xc3, 0xd4, 0x62, 0x20, 0xba, 0x91, 0xf8, 0xef, 0xf7, + 0xf9, 0xef, 0x95, 0xf6, 0xa2, 0x64, 0x85, 0x1c, 0x62, 0x8c, 0x56, 0xcd, + 0x64, 0x4e, 0x45, 0x71, 0x14, 0xab, 0xfb, 0x4b, 0x69, 0xd2, 0xae, 0xe8, + 0x48, 0x58, 0xc8, 0x68, 0x17, 0x69, 0x57, 0xf5, 0xff, 0x05, 0x0d, 0x9a, + 0x0b, 0xf9, 0x78, 0xed, +}; +static const struct drbg_kat_pr_true kat3604_t = { + 3, kat3604_entropyin, kat3604_nonce, kat3604_persstr, + kat3604_entropyinpr1, kat3604_addinpr1, kat3604_entropyinpr2, + kat3604_addinpr2, kat3604_retbits +}; +static const struct drbg_kat kat3604 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3604_t +}; + +static const unsigned char kat3605_entropyin[] = { + 0x9d, 0x2b, 0xaf, 0x47, 0x0a, 0x2a, 0x8b, 0xd4, 0xae, 0xb5, 0x2d, 0x98, + 0xce, 0xe3, 0xca, 0x04, 0x79, 0x2c, 0x16, 0x84, 0xbf, 0xee, 0xa2, 0x76, + 0x63, 0xf3, 0x90, 0x74, 0xa0, 0x57, 0x30, 0x96, +}; +static const unsigned char kat3605_nonce[] = {0}; +static const unsigned char kat3605_persstr[] = {0}; +static const unsigned char kat3605_entropyinpr1[] = { + 0x06, 0x8d, 0x79, 0x4d, 0x7e, 0x8c, 0x85, 0x1e, 0xb1, 0xc4, 0xb3, 0x6b, + 0xd1, 0x54, 0x96, 0x6f, 0xd1, 0x0f, 0x0f, 0x43, 0xcc, 0xe4, 0x35, 0xcc, + 0x5b, 0xf1, 0x6e, 0x2e, 0x48, 0x9b, 0x9f, 0x4a, +}; +static const unsigned char kat3605_addinpr1[] = {0}; +static const unsigned char kat3605_entropyinpr2[] = { + 0xb2, 0x1e, 0x1c, 0x09, 0xc4, 0x68, 0x69, 0x3e, 0xb5, 0x8a, 0x46, 0x51, + 0x7f, 0xa4, 0xa7, 0x25, 0x5e, 0x99, 0x7d, 0x49, 0xb7, 0x41, 0xf7, 0x29, + 0xe1, 0x57, 0x1c, 0x18, 0x8e, 0x68, 0xe5, 0xc4, +}; +static const unsigned char kat3605_addinpr2[] = {0}; +static const unsigned char kat3605_retbits[] = { + 0xcf, 0xc8, 0x3d, 0x9d, 0x6d, 0x87, 0x16, 0x13, 0xf1, 0x68, 0x06, 0x95, + 0xe2, 0x48, 0xbe, 0x4a, 0x53, 0x01, 0xf2, 0x8f, 0xc1, 0x4e, 0x61, 0xf5, + 0x10, 0x41, 0xfb, 0xa7, 0x23, 0x0b, 0xe6, 0x66, 0x54, 0x79, 0x34, 0xd2, + 0x3a, 0xd1, 0x45, 0x6a, 0x53, 0xc0, 0x2b, 0xe4, 0x0f, 0x74, 0xa6, 0x6b, + 0x8a, 0x0a, 0x8e, 0xf9, 0x81, 0xe1, 0x13, 0x74, 0x02, 0x3b, 0x52, 0x0b, + 0xaf, 0x19, 0x33, 0xa5, +}; +static const struct drbg_kat_pr_true kat3605_t = { + 4, kat3605_entropyin, kat3605_nonce, kat3605_persstr, + kat3605_entropyinpr1, kat3605_addinpr1, kat3605_entropyinpr2, + kat3605_addinpr2, kat3605_retbits +}; +static const struct drbg_kat kat3605 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3605_t +}; + +static const unsigned char kat3606_entropyin[] = { + 0xc2, 0x2a, 0x02, 0x48, 0x5e, 0xd9, 0xb6, 0x7b, 0xae, 0x0a, 0x74, 0x2e, + 0xf6, 0x5a, 0x57, 0xae, 0x7c, 0x43, 0x33, 0x03, 0x1c, 0x81, 0xfe, 0x75, + 0x21, 0x66, 0x0a, 0xcd, 0xba, 0x06, 0xaa, 0x4a, +}; +static const unsigned char kat3606_nonce[] = {0}; +static const unsigned char kat3606_persstr[] = {0}; +static const unsigned char kat3606_entropyinpr1[] = { + 0x10, 0xf5, 0x34, 0xa0, 0xdd, 0x67, 0xb4, 0x09, 0x9e, 0x78, 0x30, 0x86, + 0xe8, 0x9f, 0xd5, 0x0d, 0x46, 0x7c, 0x79, 0x70, 0x35, 0x7e, 0xfe, 0xfc, + 0xde, 0xb9, 0xcf, 0xac, 0xb9, 0xb2, 0x5e, 0xeb, +}; +static const unsigned char kat3606_addinpr1[] = {0}; +static const unsigned char kat3606_entropyinpr2[] = { + 0x27, 0xb5, 0x27, 0x35, 0x93, 0x51, 0x89, 0x05, 0x98, 0xb1, 0xf8, 0x77, + 0x86, 0xbc, 0x20, 0xc7, 0x59, 0xa6, 0x08, 0x20, 0xcc, 0x54, 0x8c, 0xbf, + 0x12, 0x12, 0x6d, 0x56, 0xf4, 0xd1, 0xbc, 0xf9, +}; +static const unsigned char kat3606_addinpr2[] = {0}; +static const unsigned char kat3606_retbits[] = { + 0x29, 0x93, 0x2a, 0x12, 0x05, 0xa1, 0x87, 0x8a, 0x1b, 0xa5, 0xdb, 0xf0, + 0xeb, 0xe1, 0xb5, 0x09, 0x92, 0x73, 0x7d, 0x6d, 0x86, 0x10, 0x63, 0x16, + 0x46, 0x59, 0x45, 0xdb, 0x8e, 0xf4, 0xc5, 0x2a, 0x8c, 0x3e, 0xd9, 0xc3, + 0x14, 0x98, 0xa6, 0xb2, 0xed, 0x50, 0x2a, 0x85, 0x30, 0x28, 0xf1, 0xd2, + 0x17, 0x9f, 0x1e, 0xa6, 0x5e, 0x6f, 0x98, 0x02, 0x64, 0xee, 0xae, 0x82, + 0x5a, 0x02, 0x37, 0x76, +}; +static const struct drbg_kat_pr_true kat3606_t = { + 5, kat3606_entropyin, kat3606_nonce, kat3606_persstr, + kat3606_entropyinpr1, kat3606_addinpr1, kat3606_entropyinpr2, + kat3606_addinpr2, kat3606_retbits +}; +static const struct drbg_kat kat3606 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3606_t +}; + +static const unsigned char kat3607_entropyin[] = { + 0xd1, 0x23, 0xe0, 0x1d, 0xa1, 0xce, 0x99, 0x0f, 0x22, 0x4b, 0x03, 0xe8, + 0x8e, 0xc1, 0x9b, 0x90, 0x6c, 0x19, 0xcb, 0x09, 0xdf, 0xbf, 0x97, 0x4d, + 0xde, 0xeb, 0xe7, 0xe8, 0x48, 0xdc, 0xa6, 0x62, +}; +static const unsigned char kat3607_nonce[] = {0}; +static const unsigned char kat3607_persstr[] = {0}; +static const unsigned char kat3607_entropyinpr1[] = { + 0x1d, 0xda, 0xd2, 0xb4, 0xb7, 0xcf, 0x09, 0xa3, 0x47, 0x60, 0x72, 0xa9, + 0x2f, 0x35, 0x49, 0xd7, 0x54, 0xd7, 0xd5, 0x22, 0x5f, 0x23, 0xe3, 0xc7, + 0x51, 0x43, 0x65, 0x94, 0x66, 0x38, 0x2c, 0x6f, +}; +static const unsigned char kat3607_addinpr1[] = {0}; +static const unsigned char kat3607_entropyinpr2[] = { + 0x48, 0x40, 0x00, 0xb9, 0x77, 0xd6, 0xcf, 0xe6, 0x83, 0x57, 0x36, 0x43, + 0x68, 0x00, 0x4a, 0x62, 0x68, 0x5e, 0xa4, 0x92, 0xe3, 0x5d, 0x28, 0x5c, + 0x73, 0x45, 0xbd, 0xc3, 0x4d, 0x5c, 0x93, 0x87, +}; +static const unsigned char kat3607_addinpr2[] = {0}; +static const unsigned char kat3607_retbits[] = { + 0xa2, 0x0e, 0xa8, 0x7f, 0x11, 0x40, 0xac, 0xd6, 0x5b, 0xef, 0x4c, 0x32, + 0x2e, 0xb6, 0x73, 0xea, 0x7c, 0x43, 0x0d, 0x72, 0x91, 0x71, 0xae, 0x76, + 0x99, 0x40, 0x22, 0x29, 0xa7, 0xa2, 0xb0, 0x07, 0x89, 0xac, 0x08, 0x37, + 0x2a, 0x4c, 0x28, 0x75, 0x46, 0xe5, 0x20, 0x5c, 0xcc, 0xd3, 0xb8, 0x82, + 0x42, 0xf9, 0x4e, 0x31, 0x77, 0xc9, 0xeb, 0x42, 0x8d, 0x2b, 0xa2, 0xf0, + 0x2f, 0xa7, 0xb6, 0xcf, +}; +static const struct drbg_kat_pr_true kat3607_t = { + 6, kat3607_entropyin, kat3607_nonce, kat3607_persstr, + kat3607_entropyinpr1, kat3607_addinpr1, kat3607_entropyinpr2, + kat3607_addinpr2, kat3607_retbits +}; +static const struct drbg_kat kat3607 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3607_t +}; + +static const unsigned char kat3608_entropyin[] = { + 0x4c, 0xcb, 0xd9, 0x3d, 0xa2, 0x57, 0x56, 0xe0, 0xe9, 0xe0, 0x33, 0x63, + 0x30, 0x05, 0x97, 0xec, 0xca, 0x37, 0x7e, 0xa0, 0x5c, 0xb4, 0xf7, 0xb6, + 0x99, 0xca, 0xb1, 0x34, 0xc1, 0xf8, 0xa0, 0xe5, +}; +static const unsigned char kat3608_nonce[] = {0}; +static const unsigned char kat3608_persstr[] = {0}; +static const unsigned char kat3608_entropyinpr1[] = { + 0xdb, 0xbe, 0x7e, 0x04, 0x4a, 0xba, 0xaf, 0x9d, 0x69, 0x11, 0x52, 0x8e, + 0xf9, 0x05, 0x20, 0x2f, 0xdc, 0x49, 0x3c, 0xda, 0x87, 0xb1, 0x4f, 0x1e, + 0x49, 0x6c, 0xdf, 0xfe, 0xf2, 0x63, 0xbc, 0xd2, +}; +static const unsigned char kat3608_addinpr1[] = {0}; +static const unsigned char kat3608_entropyinpr2[] = { + 0x30, 0x60, 0xb4, 0x68, 0x97, 0x3a, 0x86, 0xb8, 0xdf, 0xd6, 0x6e, 0x31, + 0xe4, 0x2f, 0x57, 0x9b, 0x4d, 0x0d, 0xcf, 0x10, 0x0e, 0xc2, 0xdf, 0xe2, + 0xd0, 0x88, 0x9f, 0x2c, 0x9f, 0x0b, 0xb5, 0x83, +}; +static const unsigned char kat3608_addinpr2[] = {0}; +static const unsigned char kat3608_retbits[] = { + 0x3a, 0xe7, 0xe9, 0x59, 0x91, 0xbe, 0xe3, 0x93, 0xfb, 0xde, 0xa4, 0x03, + 0x6b, 0xb0, 0x6c, 0xf7, 0x57, 0xb2, 0xed, 0x67, 0xfb, 0xe3, 0x84, 0x12, + 0x41, 0x29, 0x26, 0x4f, 0xbf, 0x45, 0xab, 0xd7, 0xeb, 0x50, 0x52, 0x86, + 0xd8, 0xc5, 0xa3, 0xf3, 0x10, 0x46, 0x0f, 0xc0, 0x4c, 0x6a, 0x11, 0x2c, + 0x3a, 0x9a, 0x2a, 0x6a, 0x1e, 0x2c, 0x53, 0x07, 0xbb, 0xcb, 0x69, 0x04, + 0xfc, 0x90, 0x63, 0xb6, +}; +static const struct drbg_kat_pr_true kat3608_t = { + 7, kat3608_entropyin, kat3608_nonce, kat3608_persstr, + kat3608_entropyinpr1, kat3608_addinpr1, kat3608_entropyinpr2, + kat3608_addinpr2, kat3608_retbits +}; +static const struct drbg_kat kat3608 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3608_t +}; + +static const unsigned char kat3609_entropyin[] = { + 0x89, 0xb9, 0x0a, 0x5a, 0x28, 0x26, 0x73, 0xe0, 0x95, 0x97, 0x4c, 0xa1, + 0xd3, 0x83, 0x67, 0x41, 0x48, 0xe3, 0x83, 0x1d, 0x5b, 0x29, 0x4e, 0x64, + 0xf2, 0x39, 0x78, 0x8c, 0xb7, 0xb7, 0xb5, 0xfe, +}; +static const unsigned char kat3609_nonce[] = {0}; +static const unsigned char kat3609_persstr[] = {0}; +static const unsigned char kat3609_entropyinpr1[] = { + 0xc1, 0x3e, 0x80, 0x0b, 0x12, 0x52, 0x0f, 0x2a, 0x7a, 0xfa, 0xac, 0xb9, + 0xf6, 0xfb, 0xf9, 0x14, 0xc5, 0x29, 0x9d, 0xe1, 0x92, 0xb5, 0x7f, 0x29, + 0xe3, 0xfa, 0xec, 0x51, 0xcc, 0xfa, 0x0d, 0x1d, +}; +static const unsigned char kat3609_addinpr1[] = {0}; +static const unsigned char kat3609_entropyinpr2[] = { + 0x10, 0x3b, 0x98, 0xff, 0x04, 0xb4, 0x88, 0xa4, 0xf8, 0x89, 0xa0, 0xae, + 0x39, 0x9f, 0x0b, 0x6d, 0x68, 0xe1, 0x26, 0xc6, 0x2b, 0xb6, 0x9d, 0x2f, + 0x83, 0xb7, 0xb5, 0xcc, 0x07, 0xec, 0x5e, 0xe2, +}; +static const unsigned char kat3609_addinpr2[] = {0}; +static const unsigned char kat3609_retbits[] = { + 0x7d, 0xb8, 0xae, 0x33, 0x89, 0xff, 0x7e, 0x38, 0xa4, 0x65, 0x5f, 0xe9, + 0xfa, 0x96, 0x83, 0x1c, 0x8b, 0xab, 0xc9, 0xd1, 0x1b, 0x86, 0x33, 0x8e, + 0x2a, 0xd1, 0x2f, 0xf9, 0x4a, 0xd4, 0xa6, 0x1e, 0x94, 0x9a, 0xe0, 0xb1, + 0x8a, 0xac, 0x0d, 0xd0, 0x57, 0x22, 0x00, 0xdf, 0x27, 0x09, 0x63, 0x52, + 0xf1, 0x38, 0x0e, 0x77, 0x21, 0xc6, 0xa4, 0x25, 0x64, 0x26, 0xd5, 0x37, + 0x47, 0x33, 0xb5, 0x68, +}; +static const struct drbg_kat_pr_true kat3609_t = { + 8, kat3609_entropyin, kat3609_nonce, kat3609_persstr, + kat3609_entropyinpr1, kat3609_addinpr1, kat3609_entropyinpr2, + kat3609_addinpr2, kat3609_retbits +}; +static const struct drbg_kat kat3609 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3609_t +}; + +static const unsigned char kat3610_entropyin[] = { + 0x8e, 0x1f, 0xd6, 0x5e, 0x65, 0x60, 0x3a, 0x69, 0x44, 0x3d, 0x3e, 0x4d, + 0x05, 0xe4, 0xf9, 0x95, 0x0d, 0xaa, 0x8b, 0x0b, 0xb1, 0xc7, 0x06, 0xd0, + 0x85, 0xd3, 0x0a, 0x2e, 0x2c, 0xaa, 0xa6, 0x7a, +}; +static const unsigned char kat3610_nonce[] = {0}; +static const unsigned char kat3610_persstr[] = {0}; +static const unsigned char kat3610_entropyinpr1[] = { + 0xf9, 0x3e, 0x29, 0xbb, 0xb3, 0xba, 0xf5, 0xba, 0xba, 0xee, 0x65, 0xc8, + 0xf6, 0x5f, 0x73, 0xe2, 0x78, 0xb7, 0xbb, 0xc7, 0x69, 0xbc, 0x9c, 0xa8, + 0xd3, 0xdb, 0x35, 0x97, 0xdf, 0x47, 0x13, 0xda, +}; +static const unsigned char kat3610_addinpr1[] = {0}; +static const unsigned char kat3610_entropyinpr2[] = { + 0x21, 0xca, 0xad, 0xa8, 0xad, 0xf9, 0x00, 0x8e, 0x64, 0x5d, 0x23, 0xd3, + 0x9c, 0x76, 0x70, 0x0a, 0xc1, 0xe7, 0xf4, 0xed, 0x85, 0x27, 0x03, 0xad, + 0x2b, 0x08, 0xe0, 0xaa, 0xec, 0xa3, 0x63, 0xa5, +}; +static const unsigned char kat3610_addinpr2[] = {0}; +static const unsigned char kat3610_retbits[] = { + 0x5c, 0xb2, 0x39, 0xc5, 0xa2, 0x28, 0xb4, 0x3f, 0x81, 0x4b, 0x05, 0xfd, + 0xf0, 0x49, 0xa1, 0xab, 0x6c, 0x01, 0xaf, 0xdd, 0xa8, 0x68, 0xa5, 0xa1, + 0x8d, 0x6b, 0x29, 0xa2, 0xf1, 0xca, 0x96, 0x83, 0x36, 0x4a, 0x86, 0x3b, + 0x01, 0xca, 0x09, 0xb1, 0x71, 0xbd, 0xea, 0xfe, 0x93, 0x1f, 0x77, 0x10, + 0x07, 0x2f, 0xf6, 0xac, 0xd2, 0xbe, 0xd9, 0xa6, 0x46, 0x6a, 0xa5, 0xbb, + 0x6a, 0xfe, 0xe2, 0x0e, +}; +static const struct drbg_kat_pr_true kat3610_t = { + 9, kat3610_entropyin, kat3610_nonce, kat3610_persstr, + kat3610_entropyinpr1, kat3610_addinpr1, kat3610_entropyinpr2, + kat3610_addinpr2, kat3610_retbits +}; +static const struct drbg_kat kat3610 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3610_t +}; + +static const unsigned char kat3611_entropyin[] = { + 0x98, 0x32, 0x36, 0x08, 0x1d, 0x95, 0xc6, 0x3d, 0x0f, 0x25, 0x3d, 0x0f, + 0xbe, 0x6d, 0x19, 0x18, 0x21, 0xfb, 0x5e, 0x8f, 0x90, 0xac, 0xd8, 0xf0, + 0x0f, 0x4c, 0x09, 0x7b, 0xf9, 0xb9, 0xb0, 0x87, +}; +static const unsigned char kat3611_nonce[] = {0}; +static const unsigned char kat3611_persstr[] = {0}; +static const unsigned char kat3611_entropyinpr1[] = { + 0xd3, 0xde, 0xe0, 0x75, 0x54, 0x6d, 0xc8, 0xdd, 0x05, 0xbc, 0x01, 0x37, + 0x7e, 0xa3, 0x11, 0xbf, 0x12, 0xec, 0x54, 0xed, 0x5f, 0x52, 0xe4, 0x98, + 0x01, 0x6b, 0x8d, 0x5e, 0x8c, 0xd8, 0x5d, 0xa0, +}; +static const unsigned char kat3611_addinpr1[] = {0}; +static const unsigned char kat3611_entropyinpr2[] = { + 0x96, 0xf1, 0x18, 0xb2, 0x5f, 0x80, 0xa3, 0x78, 0x0f, 0xa7, 0x38, 0x92, + 0xe4, 0xbf, 0xe9, 0x00, 0x00, 0x74, 0xc0, 0x29, 0xce, 0x28, 0x8b, 0x73, + 0x65, 0xb0, 0x0f, 0x9e, 0x2f, 0x79, 0x3d, 0x44, +}; +static const unsigned char kat3611_addinpr2[] = {0}; +static const unsigned char kat3611_retbits[] = { + 0x11, 0x0c, 0xe2, 0x60, 0xce, 0xb4, 0x80, 0x9f, 0x78, 0x45, 0xea, 0xb5, + 0xd8, 0x20, 0x83, 0xc9, 0xde, 0xc1, 0x6d, 0xd5, 0x8b, 0x8e, 0x90, 0xd7, + 0xee, 0x40, 0xdc, 0xda, 0xbd, 0x16, 0xb2, 0x75, 0xb8, 0x07, 0xcf, 0xfa, + 0x67, 0x79, 0xbd, 0x05, 0x76, 0x5b, 0x0e, 0x2b, 0x33, 0x1a, 0x43, 0x28, + 0xd1, 0xe9, 0x6c, 0xf6, 0x19, 0x5b, 0x55, 0x0f, 0x8a, 0xac, 0xc0, 0xf0, + 0x63, 0xcf, 0x70, 0xa4, +}; +static const struct drbg_kat_pr_true kat3611_t = { + 10, kat3611_entropyin, kat3611_nonce, kat3611_persstr, + kat3611_entropyinpr1, kat3611_addinpr1, kat3611_entropyinpr2, + kat3611_addinpr2, kat3611_retbits +}; +static const struct drbg_kat kat3611 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3611_t +}; + +static const unsigned char kat3612_entropyin[] = { + 0x04, 0xbd, 0x50, 0x5b, 0xd5, 0xeb, 0xad, 0xb1, 0x76, 0x0b, 0x7c, 0x04, + 0xfb, 0xc1, 0x69, 0x1d, 0x01, 0xf2, 0x0d, 0xeb, 0x0c, 0xc6, 0xa9, 0x3c, + 0x3d, 0x7e, 0xa6, 0xc3, 0x5d, 0x74, 0xd5, 0x80, +}; +static const unsigned char kat3612_nonce[] = {0}; +static const unsigned char kat3612_persstr[] = {0}; +static const unsigned char kat3612_entropyinpr1[] = { + 0xef, 0x9d, 0xed, 0x9e, 0x52, 0x20, 0x65, 0xd3, 0x04, 0xa6, 0x0b, 0x18, + 0xd5, 0xd0, 0x36, 0xc7, 0x0a, 0xad, 0xe7, 0x75, 0x8c, 0x3e, 0xb8, 0x2c, + 0xee, 0x6f, 0xbb, 0xdb, 0xba, 0x0f, 0xd4, 0xd0, +}; +static const unsigned char kat3612_addinpr1[] = {0}; +static const unsigned char kat3612_entropyinpr2[] = { + 0xef, 0xb6, 0x2f, 0x77, 0xff, 0x61, 0x3c, 0xe0, 0x20, 0x90, 0xb6, 0x20, + 0xc0, 0x4c, 0x57, 0x88, 0x12, 0x7d, 0x10, 0xdc, 0x1c, 0x2e, 0x6f, 0x3b, + 0x74, 0x80, 0x3f, 0xbd, 0xb1, 0x64, 0xd0, 0x2b, +}; +static const unsigned char kat3612_addinpr2[] = {0}; +static const unsigned char kat3612_retbits[] = { + 0xe6, 0x19, 0x6c, 0x21, 0x24, 0x83, 0x10, 0x20, 0xbd, 0x5e, 0x0d, 0x00, + 0xf0, 0x5b, 0x3c, 0xe6, 0xa0, 0x71, 0x23, 0xda, 0xf8, 0xe9, 0x60, 0x7e, + 0xc7, 0x0b, 0xb8, 0x12, 0xbb, 0x84, 0xce, 0x8a, 0x1a, 0xd0, 0x1a, 0x35, + 0x9e, 0x5c, 0x57, 0x63, 0x2d, 0x34, 0x06, 0xfa, 0x0b, 0xeb, 0x72, 0x41, + 0x6f, 0x59, 0x5c, 0x92, 0x9b, 0xce, 0xc8, 0x46, 0x9b, 0x8e, 0xb6, 0xfe, + 0x0b, 0x2a, 0x24, 0xf9, +}; +static const struct drbg_kat_pr_true kat3612_t = { + 11, kat3612_entropyin, kat3612_nonce, kat3612_persstr, + kat3612_entropyinpr1, kat3612_addinpr1, kat3612_entropyinpr2, + kat3612_addinpr2, kat3612_retbits +}; +static const struct drbg_kat kat3612 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3612_t +}; + +static const unsigned char kat3613_entropyin[] = { + 0xf1, 0x56, 0x74, 0x04, 0xad, 0xad, 0x31, 0xdf, 0xbd, 0x86, 0x10, 0x4a, + 0x23, 0x6c, 0x8b, 0x2d, 0x48, 0x70, 0xa0, 0x24, 0xe6, 0xb7, 0x74, 0xf1, + 0x5c, 0xc2, 0x4c, 0x13, 0x91, 0xf9, 0x4e, 0x20, +}; +static const unsigned char kat3613_nonce[] = {0}; +static const unsigned char kat3613_persstr[] = {0}; +static const unsigned char kat3613_entropyinpr1[] = { + 0x2e, 0xcd, 0x60, 0xa6, 0x60, 0x2d, 0xfa, 0x81, 0xf2, 0x1c, 0xab, 0xe6, + 0x8b, 0x36, 0x77, 0xcf, 0x8c, 0xcd, 0xbb, 0xda, 0xb6, 0xc7, 0xb6, 0x54, + 0x39, 0x5b, 0x1d, 0x1b, 0xb1, 0xe5, 0xe1, 0x3c, +}; +static const unsigned char kat3613_addinpr1[] = {0}; +static const unsigned char kat3613_entropyinpr2[] = { + 0x52, 0x7a, 0x51, 0x9d, 0xc2, 0x89, 0x90, 0x3f, 0xdc, 0xeb, 0x09, 0x4a, + 0xba, 0xc7, 0xa2, 0x0f, 0x8e, 0xef, 0x1b, 0x44, 0xe4, 0x07, 0x7e, 0x16, + 0x48, 0xbe, 0x3f, 0xae, 0xcd, 0xc8, 0x1c, 0xfa, +}; +static const unsigned char kat3613_addinpr2[] = {0}; +static const unsigned char kat3613_retbits[] = { + 0x8c, 0xa8, 0xef, 0xc8, 0x47, 0xfb, 0xdc, 0xb0, 0xfe, 0x75, 0x46, 0xf7, + 0x0a, 0x78, 0xbf, 0x10, 0xc5, 0xa2, 0x6c, 0x18, 0x05, 0x12, 0x57, 0xa5, + 0xfa, 0x86, 0x6c, 0x41, 0x27, 0xb4, 0x73, 0xbe, 0x90, 0x8f, 0xeb, 0xd7, + 0xd8, 0x1f, 0x54, 0x1b, 0x4d, 0xe4, 0xf5, 0xf4, 0x9c, 0x0e, 0xc5, 0xfa, + 0xb5, 0x91, 0xd1, 0xd5, 0x07, 0x17, 0xde, 0x52, 0x94, 0x17, 0x7c, 0x25, + 0x6d, 0xa9, 0x74, 0x9f, +}; +static const struct drbg_kat_pr_true kat3613_t = { + 12, kat3613_entropyin, kat3613_nonce, kat3613_persstr, + kat3613_entropyinpr1, kat3613_addinpr1, kat3613_entropyinpr2, + kat3613_addinpr2, kat3613_retbits +}; +static const struct drbg_kat kat3613 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3613_t +}; + +static const unsigned char kat3614_entropyin[] = { + 0xf8, 0xd7, 0x07, 0xf2, 0xd5, 0x04, 0x98, 0xbc, 0x7e, 0xa8, 0x35, 0xd8, + 0xee, 0xa3, 0xa4, 0x41, 0xba, 0x48, 0xd0, 0x90, 0xbe, 0xc8, 0x28, 0xac, + 0xa8, 0x73, 0xae, 0x16, 0xe6, 0xdf, 0xc3, 0xfa, +}; +static const unsigned char kat3614_nonce[] = {0}; +static const unsigned char kat3614_persstr[] = {0}; +static const unsigned char kat3614_entropyinpr1[] = { + 0x5e, 0xb8, 0x4e, 0x69, 0x4d, 0x54, 0x23, 0xf8, 0x83, 0x0e, 0x48, 0x0d, + 0x84, 0xe3, 0xd2, 0xcd, 0xc4, 0x04, 0x4f, 0x13, 0x87, 0x8a, 0xc5, 0xd5, + 0x69, 0x36, 0x61, 0x0e, 0x0e, 0x01, 0x94, 0x19, +}; +static const unsigned char kat3614_addinpr1[] = {0}; +static const unsigned char kat3614_entropyinpr2[] = { + 0xe4, 0x2c, 0x5d, 0x66, 0x60, 0x22, 0x42, 0xb6, 0xca, 0x83, 0x74, 0x91, + 0x9a, 0xfd, 0x0b, 0x3d, 0x98, 0xde, 0x07, 0x95, 0x86, 0xe4, 0x94, 0xd7, + 0x03, 0x55, 0xbf, 0x11, 0xca, 0x63, 0x70, 0xb0, +}; +static const unsigned char kat3614_addinpr2[] = {0}; +static const unsigned char kat3614_retbits[] = { + 0xc5, 0x0e, 0x3d, 0xff, 0x40, 0x85, 0x78, 0x40, 0xe7, 0x52, 0xe8, 0x90, + 0x16, 0x2b, 0xb6, 0xa2, 0x44, 0xdc, 0x47, 0xc7, 0xa3, 0x51, 0x65, 0xb8, + 0x8f, 0x06, 0x09, 0xea, 0x50, 0xdf, 0xd2, 0xb7, 0xe9, 0xe5, 0x55, 0x75, + 0x4c, 0x45, 0x26, 0x6e, 0x37, 0x41, 0x22, 0x2a, 0x71, 0xb2, 0x6f, 0xde, + 0x6d, 0x8e, 0xdf, 0xc2, 0xd6, 0x78, 0x36, 0xaf, 0x00, 0xfc, 0xa3, 0x1d, + 0x19, 0xb2, 0x33, 0xea, +}; +static const struct drbg_kat_pr_true kat3614_t = { + 13, kat3614_entropyin, kat3614_nonce, kat3614_persstr, + kat3614_entropyinpr1, kat3614_addinpr1, kat3614_entropyinpr2, + kat3614_addinpr2, kat3614_retbits +}; +static const struct drbg_kat kat3614 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3614_t +}; + +static const unsigned char kat3615_entropyin[] = { + 0x84, 0x91, 0x21, 0x23, 0x25, 0xbe, 0xca, 0xf2, 0x95, 0x1b, 0x93, 0x5c, + 0xbc, 0x6f, 0x18, 0x3f, 0xb9, 0x30, 0xec, 0x45, 0x1a, 0x93, 0xcd, 0x7d, + 0x13, 0xab, 0x53, 0x00, 0x6e, 0x56, 0x5a, 0xdf, +}; +static const unsigned char kat3615_nonce[] = {0}; +static const unsigned char kat3615_persstr[] = {0}; +static const unsigned char kat3615_entropyinpr1[] = { + 0x43, 0xd5, 0x3e, 0x48, 0xde, 0x3c, 0x24, 0x78, 0x57, 0x13, 0x22, 0x24, + 0xa4, 0x48, 0x14, 0x76, 0x72, 0xde, 0xc7, 0xcf, 0xfe, 0x10, 0x16, 0x4d, + 0x83, 0x44, 0x6c, 0x10, 0x03, 0xed, 0x71, 0xb9, +}; +static const unsigned char kat3615_addinpr1[] = {0}; +static const unsigned char kat3615_entropyinpr2[] = { + 0xde, 0x28, 0xc5, 0x74, 0xf0, 0xd7, 0x71, 0xf2, 0x21, 0x1a, 0xcb, 0x54, + 0xb4, 0x3a, 0x60, 0xef, 0x79, 0x97, 0x30, 0x81, 0xf0, 0x6d, 0xa6, 0x81, + 0x92, 0x19, 0x61, 0x2c, 0x67, 0xbd, 0x94, 0xb7, +}; +static const unsigned char kat3615_addinpr2[] = {0}; +static const unsigned char kat3615_retbits[] = { + 0x3e, 0x6e, 0x82, 0xf2, 0xed, 0xb3, 0xfc, 0xd7, 0x45, 0x59, 0xb4, 0x6d, + 0x31, 0x9b, 0x09, 0xcf, 0xc3, 0x44, 0x1c, 0x06, 0xba, 0xc7, 0xa1, 0x26, + 0x06, 0x47, 0xed, 0x7f, 0x93, 0x27, 0x48, 0x5d, 0x55, 0x38, 0x73, 0xd8, + 0xb5, 0x8c, 0x08, 0x41, 0x05, 0x74, 0x16, 0x1e, 0x0f, 0xf9, 0xd5, 0xbb, + 0x2e, 0xd4, 0xcf, 0xea, 0x53, 0x3b, 0xdb, 0xcd, 0x47, 0xec, 0x62, 0x7a, + 0xc4, 0x05, 0xd3, 0xf6, +}; +static const struct drbg_kat_pr_true kat3615_t = { + 14, kat3615_entropyin, kat3615_nonce, kat3615_persstr, + kat3615_entropyinpr1, kat3615_addinpr1, kat3615_entropyinpr2, + kat3615_addinpr2, kat3615_retbits +}; +static const struct drbg_kat kat3615 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3615_t +}; + +static const unsigned char kat3616_entropyin[] = { + 0x4d, 0x85, 0xec, 0x7a, 0x58, 0x76, 0x3c, 0x38, 0x35, 0x48, 0xe7, 0x07, + 0x58, 0xc6, 0xdb, 0x91, 0xf9, 0x9b, 0x14, 0x66, 0xba, 0xa7, 0xd4, 0xf2, + 0x0b, 0xa1, 0xf8, 0xa4, 0x4e, 0xc4, 0xd1, 0xf3, +}; +static const unsigned char kat3616_nonce[] = {0}; +static const unsigned char kat3616_persstr[] = {0}; +static const unsigned char kat3616_entropyinpr1[] = { + 0x3a, 0x9e, 0x8e, 0x7a, 0xeb, 0xfe, 0xd9, 0x9f, 0x34, 0xb1, 0x62, 0x94, + 0xc1, 0xda, 0x97, 0x3b, 0xd7, 0x06, 0xaf, 0xba, 0x10, 0x5d, 0x78, 0xcb, + 0x13, 0x2e, 0x4d, 0x3a, 0xee, 0x22, 0x1c, 0xc1, +}; +static const unsigned char kat3616_addinpr1[] = { + 0xdd, 0x4f, 0x1c, 0x82, 0x47, 0x3f, 0xe4, 0xcc, 0x56, 0x12, 0x81, 0x52, + 0x00, 0x15, 0x47, 0xff, 0x72, 0x34, 0xea, 0xde, 0xa5, 0xe9, 0x4f, 0x0d, + 0x64, 0xb0, 0xc0, 0x8d, 0x24, 0x78, 0x85, 0x70, +}; +static const unsigned char kat3616_entropyinpr2[] = { + 0xe3, 0x7f, 0x19, 0x3e, 0x5f, 0x13, 0x56, 0x36, 0x8a, 0xec, 0x70, 0xa0, + 0xde, 0x2c, 0x33, 0x0c, 0x3c, 0xf9, 0xaf, 0x26, 0xc6, 0xae, 0xe4, 0x6b, + 0x9f, 0x11, 0x4f, 0x62, 0x76, 0xed, 0x38, 0xb4, +}; +static const unsigned char kat3616_addinpr2[] = { + 0xe9, 0x00, 0x46, 0xb7, 0xfc, 0xd9, 0xd8, 0x64, 0x34, 0xc3, 0x12, 0xb9, + 0x59, 0x79, 0x5f, 0xbf, 0xbe, 0x66, 0x6d, 0xda, 0x2b, 0x16, 0xa7, 0xb1, + 0x4c, 0xb0, 0xcc, 0x1d, 0x84, 0x89, 0x52, 0x73, +}; +static const unsigned char kat3616_retbits[] = { + 0x17, 0x3a, 0x53, 0x5a, 0x1c, 0xe5, 0x2e, 0x3c, 0xa2, 0xb6, 0x8f, 0xb2, + 0xc2, 0x48, 0x80, 0xa4, 0xdc, 0x28, 0x37, 0x17, 0x4c, 0xe3, 0xdf, 0x1c, + 0x1f, 0x44, 0x5f, 0x43, 0x01, 0x33, 0x84, 0xa0, 0x57, 0x0e, 0xc8, 0xd5, + 0x19, 0x7b, 0x2d, 0x00, 0xfe, 0xf3, 0xcb, 0x35, 0x56, 0x08, 0x6b, 0xd8, + 0x2f, 0xb6, 0x07, 0x55, 0x62, 0xf3, 0xad, 0xae, 0x4d, 0xca, 0x39, 0x00, + 0x8b, 0xcd, 0x73, 0x97, +}; +static const struct drbg_kat_pr_true kat3616_t = { + 0, kat3616_entropyin, kat3616_nonce, kat3616_persstr, + kat3616_entropyinpr1, kat3616_addinpr1, kat3616_entropyinpr2, + kat3616_addinpr2, kat3616_retbits +}; +static const struct drbg_kat kat3616 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3616_t +}; + +static const unsigned char kat3617_entropyin[] = { + 0x35, 0x8c, 0xdb, 0x23, 0x37, 0xe4, 0x2e, 0xa8, 0x4d, 0x4e, 0x03, 0xce, + 0x5f, 0x76, 0xd3, 0xb7, 0xb3, 0xf5, 0xd1, 0x33, 0xfa, 0x99, 0x09, 0xe6, + 0x37, 0x99, 0x7f, 0x96, 0x37, 0x40, 0x91, 0xb1, +}; +static const unsigned char kat3617_nonce[] = {0}; +static const unsigned char kat3617_persstr[] = {0}; +static const unsigned char kat3617_entropyinpr1[] = { + 0x58, 0x3e, 0x3a, 0x99, 0x61, 0x09, 0xb6, 0x4e, 0x72, 0x7e, 0x87, 0x08, + 0x5a, 0x53, 0x4f, 0x1f, 0x20, 0xe6, 0x0d, 0x98, 0x58, 0x7b, 0xe4, 0x5c, + 0x69, 0xe5, 0xac, 0x7b, 0x96, 0x4f, 0x44, 0x96, +}; +static const unsigned char kat3617_addinpr1[] = { + 0xe9, 0x33, 0x8a, 0xca, 0x9c, 0x02, 0xe7, 0xb9, 0x74, 0x8d, 0x23, 0x99, + 0x45, 0x40, 0x50, 0x5b, 0x94, 0x4f, 0x44, 0xeb, 0x5a, 0xd1, 0xf5, 0x1b, + 0x83, 0x1f, 0x69, 0x56, 0x52, 0xd7, 0x1a, 0x5d, +}; +static const unsigned char kat3617_entropyinpr2[] = { + 0x78, 0x45, 0xb7, 0x4f, 0x4d, 0x34, 0xd6, 0x16, 0x61, 0x5a, 0x52, 0x63, + 0x53, 0x40, 0x4c, 0x37, 0x6b, 0x69, 0x40, 0xf0, 0x8d, 0x49, 0xc5, 0x26, + 0x81, 0x8c, 0xdd, 0xca, 0x40, 0x73, 0xca, 0x88, +}; +static const unsigned char kat3617_addinpr2[] = { + 0x69, 0x5d, 0x66, 0xf7, 0x7e, 0xba, 0x05, 0x6c, 0xcb, 0x2b, 0x31, 0xb3, + 0xa9, 0x50, 0x98, 0x04, 0xcf, 0x69, 0xb9, 0x4e, 0x7b, 0x83, 0x24, 0x12, + 0xbc, 0xd7, 0x6c, 0xbc, 0x86, 0x74, 0xe2, 0x6b, +}; +static const unsigned char kat3617_retbits[] = { + 0x85, 0x5c, 0x34, 0xdd, 0x29, 0x94, 0xdd, 0x59, 0x1f, 0x50, 0x21, 0x92, + 0xbb, 0xb6, 0x7d, 0xc8, 0xa4, 0x23, 0xb7, 0x10, 0x85, 0x90, 0xaa, 0x82, + 0x73, 0x1a, 0x30, 0x06, 0x89, 0x32, 0x09, 0x7f, 0x3a, 0xda, 0x82, 0x66, + 0x10, 0x51, 0x48, 0x55, 0xe2, 0x30, 0xcc, 0x0c, 0x7a, 0xaf, 0x61, 0x70, + 0x52, 0xc0, 0x97, 0x53, 0x45, 0x95, 0x8d, 0x5a, 0xcd, 0x6c, 0x6c, 0xaa, + 0xa1, 0x22, 0xfe, 0x4b, +}; +static const struct drbg_kat_pr_true kat3617_t = { + 1, kat3617_entropyin, kat3617_nonce, kat3617_persstr, + kat3617_entropyinpr1, kat3617_addinpr1, kat3617_entropyinpr2, + kat3617_addinpr2, kat3617_retbits +}; +static const struct drbg_kat kat3617 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3617_t +}; + +static const unsigned char kat3618_entropyin[] = { + 0x70, 0x08, 0x4b, 0x14, 0xb3, 0x7e, 0x2f, 0xc9, 0x17, 0xd3, 0xd6, 0xb4, + 0xa7, 0xc8, 0x20, 0x1f, 0x31, 0xd7, 0x64, 0xfa, 0x58, 0x8f, 0x51, 0x3e, + 0x36, 0x5f, 0x8e, 0x31, 0x3d, 0xbc, 0x8e, 0xc2, +}; +static const unsigned char kat3618_nonce[] = {0}; +static const unsigned char kat3618_persstr[] = {0}; +static const unsigned char kat3618_entropyinpr1[] = { + 0x40, 0x27, 0xdb, 0x96, 0xb9, 0x00, 0xc4, 0xa0, 0x74, 0xbe, 0xd9, 0xb5, + 0xb2, 0xcf, 0xa5, 0x73, 0xf4, 0x0d, 0x60, 0x7c, 0x3b, 0x5e, 0x00, 0xae, + 0x1b, 0xca, 0x84, 0x41, 0xfa, 0x58, 0x4c, 0xb1, +}; +static const unsigned char kat3618_addinpr1[] = { + 0xc0, 0x9f, 0x3c, 0x76, 0xb3, 0x8e, 0x50, 0x2b, 0x12, 0x27, 0x86, 0xf4, + 0x57, 0x96, 0xe1, 0x97, 0x23, 0xe9, 0x41, 0x73, 0xec, 0x79, 0xcf, 0x19, + 0x0e, 0x7d, 0x1e, 0x9e, 0x77, 0x09, 0x05, 0xb1, +}; +static const unsigned char kat3618_entropyinpr2[] = { + 0x60, 0x4b, 0x9d, 0x0b, 0xe8, 0xe5, 0x0f, 0x4f, 0xbe, 0xe8, 0xc2, 0x0b, + 0x5a, 0x8a, 0x56, 0x97, 0xa4, 0xfa, 0xf4, 0xa2, 0x5b, 0x86, 0xa6, 0x63, + 0x79, 0x7c, 0x8c, 0xe6, 0x03, 0xa7, 0x09, 0x2b, +}; +static const unsigned char kat3618_addinpr2[] = { + 0xed, 0x48, 0x44, 0xee, 0xdc, 0x13, 0x7c, 0x95, 0xcb, 0xf7, 0x9c, 0x88, + 0x5b, 0x0b, 0x6b, 0x4a, 0x06, 0x7f, 0x02, 0x57, 0xc8, 0x97, 0xab, 0xe7, + 0x52, 0x74, 0x69, 0x49, 0x05, 0x04, 0x1c, 0x97, +}; +static const unsigned char kat3618_retbits[] = { + 0x01, 0x30, 0xf2, 0xe4, 0x75, 0x72, 0xd8, 0x8b, 0x2f, 0xe2, 0x5e, 0x81, + 0x38, 0x23, 0xae, 0x33, 0xed, 0x05, 0x51, 0xe9, 0x2b, 0x2a, 0x97, 0xa6, + 0x08, 0x6e, 0x6a, 0xb9, 0x62, 0x08, 0x04, 0x96, 0x9b, 0x5c, 0x4d, 0x72, + 0x16, 0xc0, 0x02, 0x9d, 0x60, 0xa4, 0x5d, 0x24, 0xd3, 0xe4, 0xbb, 0x96, + 0x99, 0x3c, 0x1c, 0x41, 0x88, 0x7a, 0xa4, 0xc5, 0xa9, 0x00, 0x1e, 0xd3, + 0xab, 0xfe, 0x95, 0x8d, +}; +static const struct drbg_kat_pr_true kat3618_t = { + 2, kat3618_entropyin, kat3618_nonce, kat3618_persstr, + kat3618_entropyinpr1, kat3618_addinpr1, kat3618_entropyinpr2, + kat3618_addinpr2, kat3618_retbits +}; +static const struct drbg_kat kat3618 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3618_t +}; + +static const unsigned char kat3619_entropyin[] = { + 0xc9, 0x17, 0x6a, 0xd2, 0x11, 0x0b, 0x4b, 0x34, 0x7a, 0xdd, 0xee, 0x42, + 0x89, 0x27, 0x72, 0x95, 0x35, 0x16, 0x78, 0x99, 0xf8, 0xca, 0x7c, 0x68, + 0x23, 0xbe, 0x50, 0x43, 0xe5, 0xec, 0xa5, 0xb8, +}; +static const unsigned char kat3619_nonce[] = {0}; +static const unsigned char kat3619_persstr[] = {0}; +static const unsigned char kat3619_entropyinpr1[] = { + 0x8a, 0xaa, 0xa7, 0xdd, 0x87, 0x77, 0xc9, 0x16, 0xfa, 0x60, 0x7d, 0x21, + 0x08, 0x55, 0x6e, 0x13, 0x3a, 0xec, 0x8c, 0x67, 0x1b, 0xba, 0xf5, 0x50, + 0xb6, 0x78, 0x31, 0x19, 0xf0, 0xbd, 0x17, 0xe1, +}; +static const unsigned char kat3619_addinpr1[] = { + 0x89, 0x51, 0xa5, 0x4e, 0xdd, 0x47, 0xe7, 0x80, 0xda, 0x51, 0x87, 0x57, + 0x05, 0x34, 0x7d, 0x0a, 0xb0, 0x8f, 0xfb, 0x2f, 0xb5, 0x31, 0xf5, 0xa7, + 0x4d, 0x79, 0xcd, 0x0f, 0xab, 0x0b, 0x9a, 0xdd, +}; +static const unsigned char kat3619_entropyinpr2[] = { + 0x6c, 0xff, 0x33, 0x92, 0x03, 0x89, 0xc3, 0x3b, 0x74, 0x26, 0x51, 0x5b, + 0x3a, 0x9b, 0x23, 0x6b, 0xe6, 0x03, 0x4e, 0xc3, 0x4d, 0x66, 0xd0, 0x0f, + 0xe8, 0x51, 0x79, 0xce, 0xfb, 0x6d, 0x82, 0x8d, +}; +static const unsigned char kat3619_addinpr2[] = { + 0xcb, 0xd1, 0x0c, 0x57, 0x9d, 0xf5, 0x80, 0x72, 0x93, 0x76, 0x19, 0xeb, + 0xfc, 0x16, 0xcc, 0xd8, 0xf7, 0xbf, 0xf8, 0xbe, 0xfe, 0x85, 0xd0, 0x97, + 0x96, 0xb8, 0x45, 0xca, 0x69, 0xde, 0xe1, 0x9d, +}; +static const unsigned char kat3619_retbits[] = { + 0x24, 0x65, 0x73, 0xfe, 0xc9, 0x0f, 0x56, 0x83, 0x2e, 0xf6, 0x1a, 0xc7, + 0x6e, 0xce, 0x81, 0x48, 0xb9, 0xad, 0xce, 0xe2, 0xb4, 0x13, 0x8f, 0xcb, + 0xab, 0x7c, 0x73, 0xed, 0x90, 0x2a, 0xec, 0x68, 0x71, 0x16, 0x0a, 0xa8, + 0xdf, 0xdc, 0xa6, 0x29, 0x0f, 0xac, 0x05, 0x8f, 0x2a, 0xb0, 0xf1, 0xbe, + 0x36, 0x63, 0x79, 0x2f, 0x7a, 0xd7, 0x2c, 0x5e, 0x49, 0x5e, 0x58, 0x71, + 0x7b, 0x42, 0x37, 0xce, +}; +static const struct drbg_kat_pr_true kat3619_t = { + 3, kat3619_entropyin, kat3619_nonce, kat3619_persstr, + kat3619_entropyinpr1, kat3619_addinpr1, kat3619_entropyinpr2, + kat3619_addinpr2, kat3619_retbits +}; +static const struct drbg_kat kat3619 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3619_t +}; + +static const unsigned char kat3620_entropyin[] = { + 0x96, 0xaa, 0xa1, 0x15, 0x0f, 0x58, 0x6f, 0xe1, 0x56, 0xd0, 0xf9, 0x88, + 0xb0, 0xc0, 0x4b, 0x98, 0x96, 0xa0, 0xf0, 0xdc, 0xe2, 0x4f, 0x12, 0x58, + 0xca, 0xc0, 0xb9, 0xb7, 0xbf, 0xf4, 0x1d, 0xbd, +}; +static const unsigned char kat3620_nonce[] = {0}; +static const unsigned char kat3620_persstr[] = {0}; +static const unsigned char kat3620_entropyinpr1[] = { + 0xf2, 0x94, 0xb1, 0x2b, 0x6b, 0x6a, 0x07, 0x7e, 0x22, 0xc9, 0x93, 0xb3, + 0x44, 0x6a, 0xfe, 0xd1, 0xe3, 0x4c, 0xae, 0x0e, 0x6b, 0xd8, 0x8f, 0x23, + 0x4a, 0x22, 0x52, 0xb7, 0xcc, 0x3f, 0xc0, 0xc9, +}; +static const unsigned char kat3620_addinpr1[] = { + 0xb7, 0x78, 0x90, 0x4c, 0x42, 0xbf, 0xff, 0xd5, 0x37, 0x79, 0x59, 0xaf, + 0x64, 0x64, 0x2e, 0xd6, 0x25, 0x4c, 0xf0, 0x96, 0xfe, 0xfc, 0xca, 0x8c, + 0x2f, 0xeb, 0x0c, 0xee, 0xbd, 0x85, 0x8c, 0xa1, +}; +static const unsigned char kat3620_entropyinpr2[] = { + 0x72, 0xce, 0xf2, 0xc4, 0x54, 0xc6, 0xa3, 0x5b, 0x2c, 0x79, 0xfd, 0x57, + 0x2e, 0x33, 0x8f, 0xde, 0x36, 0x88, 0xc3, 0x86, 0x59, 0xc2, 0xed, 0xf5, + 0x5b, 0x65, 0x78, 0xb4, 0x77, 0x81, 0x8a, 0x47, +}; +static const unsigned char kat3620_addinpr2[] = { + 0xd0, 0x9f, 0x4e, 0xb1, 0xa0, 0xd2, 0x4c, 0xd7, 0xce, 0xfc, 0x67, 0x94, + 0x36, 0x15, 0xe5, 0x43, 0x39, 0x9d, 0xd3, 0x27, 0x1d, 0x6b, 0x0a, 0x49, + 0x33, 0x7e, 0x2f, 0x25, 0xbe, 0xb8, 0x40, 0x6c, +}; +static const unsigned char kat3620_retbits[] = { + 0xd5, 0xd5, 0xd1, 0x76, 0x93, 0xd8, 0x32, 0x16, 0x68, 0x1b, 0x1a, 0xa1, + 0x4a, 0xbd, 0xf8, 0xd5, 0xfe, 0xa4, 0x4e, 0xd4, 0x92, 0x41, 0xf5, 0xe6, + 0x74, 0x92, 0x49, 0x9f, 0x59, 0x06, 0x4a, 0x57, 0x24, 0x55, 0x73, 0x86, + 0xa1, 0xfe, 0x5b, 0x3c, 0x14, 0xe3, 0x4c, 0x98, 0x4a, 0xf9, 0xba, 0x58, + 0x19, 0x14, 0x0f, 0x06, 0x04, 0x52, 0xbc, 0xf4, 0x57, 0xe2, 0x7b, 0x15, + 0x07, 0xbd, 0x40, 0x79, +}; +static const struct drbg_kat_pr_true kat3620_t = { + 4, kat3620_entropyin, kat3620_nonce, kat3620_persstr, + kat3620_entropyinpr1, kat3620_addinpr1, kat3620_entropyinpr2, + kat3620_addinpr2, kat3620_retbits +}; +static const struct drbg_kat kat3620 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3620_t +}; + +static const unsigned char kat3621_entropyin[] = { + 0x05, 0x29, 0xd7, 0x8a, 0xb6, 0xd8, 0x0d, 0xc8, 0xe2, 0xb4, 0x09, 0xa7, + 0xbf, 0x91, 0x03, 0x8d, 0x4e, 0xeb, 0x44, 0xd7, 0x31, 0x0f, 0xc3, 0x71, + 0x45, 0x32, 0x10, 0xaa, 0x69, 0x74, 0x19, 0xad, +}; +static const unsigned char kat3621_nonce[] = {0}; +static const unsigned char kat3621_persstr[] = {0}; +static const unsigned char kat3621_entropyinpr1[] = { + 0x44, 0x8d, 0x96, 0x26, 0x02, 0x72, 0xb9, 0x39, 0xe5, 0xf9, 0x49, 0xdd, + 0xac, 0x93, 0x1c, 0xde, 0x53, 0xbe, 0xf5, 0x0b, 0xf6, 0x19, 0x06, 0x31, + 0x0f, 0x96, 0x59, 0xcb, 0xf7, 0xa5, 0x77, 0x1e, +}; +static const unsigned char kat3621_addinpr1[] = { + 0x32, 0x80, 0x8a, 0x53, 0x50, 0x29, 0x22, 0x60, 0xcb, 0xb5, 0x89, 0x05, + 0xcf, 0x12, 0xe5, 0x27, 0xfd, 0xaa, 0xdb, 0x5d, 0xc6, 0x23, 0xa0, 0x65, + 0x5e, 0xfe, 0x2a, 0x19, 0xf8, 0xed, 0x90, 0xe9, +}; +static const unsigned char kat3621_entropyinpr2[] = { + 0x1d, 0x08, 0xa4, 0x81, 0x21, 0xfd, 0x55, 0x7e, 0x11, 0x96, 0x48, 0x15, + 0xa1, 0x63, 0x9e, 0x5b, 0xcb, 0x6f, 0xa2, 0x3a, 0xc3, 0x68, 0x5f, 0x6e, + 0xe5, 0x10, 0x8c, 0x7a, 0x72, 0x56, 0xea, 0x64, +}; +static const unsigned char kat3621_addinpr2[] = { + 0x5d, 0x5e, 0xe1, 0xa3, 0x75, 0xcd, 0x24, 0xa1, 0xbf, 0xd9, 0x00, 0x17, + 0x35, 0x4a, 0xe6, 0xaf, 0x22, 0xed, 0x51, 0xbb, 0x77, 0x7e, 0x96, 0xb0, + 0x3b, 0x04, 0xbc, 0x01, 0x43, 0xbe, 0x6a, 0x92, +}; +static const unsigned char kat3621_retbits[] = { + 0xb7, 0x90, 0x2a, 0x01, 0xc5, 0x19, 0xd5, 0x8f, 0x11, 0x02, 0x7d, 0x40, + 0xd3, 0x96, 0x61, 0x74, 0x11, 0x14, 0x86, 0x0f, 0xa4, 0x49, 0x57, 0xe9, + 0x28, 0x5f, 0x2e, 0xcd, 0x1d, 0x7d, 0xf7, 0x3a, 0xf1, 0x35, 0x2e, 0x73, + 0x7e, 0x81, 0x3e, 0x26, 0x38, 0x5d, 0xf8, 0x0a, 0x66, 0xb9, 0x47, 0xef, + 0x5d, 0xa0, 0xf5, 0x31, 0x34, 0xc8, 0x0f, 0x1f, 0x75, 0x38, 0x0f, 0x73, + 0xa6, 0xc2, 0xc5, 0x9c, +}; +static const struct drbg_kat_pr_true kat3621_t = { + 5, kat3621_entropyin, kat3621_nonce, kat3621_persstr, + kat3621_entropyinpr1, kat3621_addinpr1, kat3621_entropyinpr2, + kat3621_addinpr2, kat3621_retbits +}; +static const struct drbg_kat kat3621 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3621_t +}; + +static const unsigned char kat3622_entropyin[] = { + 0xe0, 0xa3, 0x0e, 0x9e, 0xa5, 0x7a, 0x32, 0x08, 0xd0, 0xfc, 0x1f, 0x4c, + 0x3b, 0xf5, 0xbf, 0x4a, 0x21, 0xc5, 0xf8, 0x27, 0x66, 0x79, 0xc8, 0x2e, + 0xba, 0x9a, 0x56, 0x89, 0x3c, 0x75, 0xb6, 0xae, +}; +static const unsigned char kat3622_nonce[] = {0}; +static const unsigned char kat3622_persstr[] = {0}; +static const unsigned char kat3622_entropyinpr1[] = { + 0x41, 0x4e, 0x9a, 0xd8, 0x30, 0xa3, 0xa0, 0xba, 0xc5, 0xc8, 0xd5, 0x5b, + 0x39, 0x4b, 0x0f, 0xb5, 0xba, 0xdc, 0xb0, 0x52, 0x95, 0xa7, 0x7d, 0xdc, + 0xaf, 0x34, 0x25, 0x12, 0xe7, 0x5e, 0xf7, 0x9b, +}; +static const unsigned char kat3622_addinpr1[] = { + 0x09, 0xbe, 0x6e, 0x3e, 0x1f, 0x3b, 0x04, 0x54, 0x83, 0x88, 0x4d, 0x1e, + 0xc7, 0x03, 0x05, 0x21, 0x7c, 0x61, 0x5f, 0x1e, 0x95, 0xbf, 0xf3, 0x14, + 0x60, 0x0f, 0x3c, 0x17, 0x39, 0x3d, 0x5b, 0x59, +}; +static const unsigned char kat3622_entropyinpr2[] = { + 0x3a, 0xc4, 0x79, 0xe9, 0x10, 0x84, 0xa2, 0x1f, 0x01, 0x35, 0x7b, 0x8f, + 0x3c, 0x49, 0xe8, 0xf1, 0xc7, 0x5d, 0x09, 0x3e, 0xb8, 0x7b, 0xa4, 0x73, + 0x6b, 0x8f, 0x55, 0x9f, 0xf4, 0xc3, 0x4d, 0xdc, +}; +static const unsigned char kat3622_addinpr2[] = { + 0x11, 0x38, 0x07, 0xe2, 0x81, 0x90, 0x36, 0x57, 0x76, 0xe3, 0xd2, 0x6c, + 0x7b, 0x60, 0x7e, 0xe1, 0x2a, 0x1a, 0x0d, 0x5b, 0xaa, 0x2b, 0x3e, 0x53, + 0x4c, 0x15, 0x77, 0x09, 0x90, 0x65, 0xee, 0xa9, +}; +static const unsigned char kat3622_retbits[] = { + 0xc6, 0xd9, 0x70, 0x7d, 0x35, 0x40, 0x4a, 0x81, 0x7f, 0x32, 0x06, 0x2b, + 0x0c, 0x42, 0x8b, 0xe1, 0x37, 0xeb, 0x35, 0x03, 0x0b, 0x04, 0xe6, 0x8e, + 0x14, 0xfd, 0x92, 0xd8, 0xd4, 0xf1, 0xc4, 0x0a, 0x1b, 0xcd, 0x67, 0x58, + 0xca, 0x05, 0xae, 0x32, 0x64, 0xe7, 0x5f, 0xb1, 0x09, 0x9c, 0x07, 0xa3, + 0x1c, 0x22, 0x10, 0x12, 0x69, 0x05, 0xe1, 0xea, 0x94, 0xac, 0xed, 0xaa, + 0x2d, 0xe9, 0x05, 0xdc, +}; +static const struct drbg_kat_pr_true kat3622_t = { + 6, kat3622_entropyin, kat3622_nonce, kat3622_persstr, + kat3622_entropyinpr1, kat3622_addinpr1, kat3622_entropyinpr2, + kat3622_addinpr2, kat3622_retbits +}; +static const struct drbg_kat kat3622 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3622_t +}; + +static const unsigned char kat3623_entropyin[] = { + 0x7e, 0xd2, 0x2a, 0x3b, 0xbb, 0xc1, 0x6c, 0xa6, 0xa8, 0x5a, 0x4f, 0x6a, + 0x83, 0xe5, 0xe5, 0x0b, 0xe4, 0x7d, 0x04, 0x3d, 0x5d, 0x22, 0x75, 0x8c, + 0x0e, 0x65, 0xf0, 0xc2, 0x8e, 0xd8, 0x83, 0x1d, +}; +static const unsigned char kat3623_nonce[] = {0}; +static const unsigned char kat3623_persstr[] = {0}; +static const unsigned char kat3623_entropyinpr1[] = { + 0x27, 0x54, 0x67, 0x22, 0x31, 0x04, 0xc5, 0xe0, 0x9a, 0xc9, 0xd1, 0xcb, + 0x47, 0x3f, 0x62, 0x4a, 0xd8, 0x64, 0xb8, 0x12, 0x79, 0xa4, 0x18, 0xf1, + 0xdf, 0xe1, 0x00, 0x37, 0xb1, 0xf4, 0x1a, 0x72, +}; +static const unsigned char kat3623_addinpr1[] = { + 0x8a, 0x89, 0xc7, 0x9e, 0xbc, 0x11, 0x82, 0xba, 0x22, 0x4d, 0x5e, 0x4b, + 0x27, 0x79, 0x7d, 0xb9, 0x08, 0x78, 0x2e, 0x69, 0xe8, 0x97, 0x4f, 0x5f, + 0xd2, 0x28, 0x41, 0x49, 0x8d, 0xc0, 0xb5, 0x67, +}; +static const unsigned char kat3623_entropyinpr2[] = { + 0x88, 0x73, 0x8a, 0x05, 0x2a, 0xe6, 0x2b, 0x47, 0xcb, 0x76, 0xe9, 0xdc, + 0x57, 0x68, 0xe9, 0xeb, 0x3d, 0x6d, 0x57, 0xe2, 0x83, 0x41, 0x6d, 0xce, + 0xad, 0x44, 0xcc, 0xb6, 0x2e, 0x46, 0x7c, 0x71, +}; +static const unsigned char kat3623_addinpr2[] = { + 0xb2, 0x4b, 0x91, 0x27, 0x0e, 0x5a, 0x1a, 0x32, 0x4a, 0xb8, 0x82, 0x98, + 0xf7, 0xbb, 0x6e, 0xbc, 0x90, 0xd9, 0xeb, 0xa3, 0xc7, 0x68, 0xbb, 0xf1, + 0xfc, 0x65, 0x97, 0x59, 0xae, 0xdb, 0xc9, 0x1d, +}; +static const unsigned char kat3623_retbits[] = { + 0x80, 0x37, 0x4c, 0x37, 0x8a, 0xd0, 0xaf, 0xc0, 0xfc, 0x59, 0xed, 0xa5, + 0xf4, 0xfa, 0x70, 0x8d, 0xf5, 0xca, 0xd6, 0xa4, 0x05, 0x5a, 0x83, 0x04, + 0x6b, 0x37, 0x92, 0x17, 0x85, 0x66, 0x51, 0x71, 0x6e, 0xe8, 0xfc, 0x62, + 0x60, 0x2b, 0x89, 0x47, 0x01, 0xc7, 0xdc, 0xba, 0x65, 0x83, 0x24, 0xe1, + 0x60, 0x8f, 0x37, 0x52, 0xd5, 0xb4, 0xa5, 0xca, 0x9a, 0x69, 0xf4, 0x9d, + 0x6e, 0x1d, 0xca, 0xbe, +}; +static const struct drbg_kat_pr_true kat3623_t = { + 7, kat3623_entropyin, kat3623_nonce, kat3623_persstr, + kat3623_entropyinpr1, kat3623_addinpr1, kat3623_entropyinpr2, + kat3623_addinpr2, kat3623_retbits +}; +static const struct drbg_kat kat3623 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3623_t +}; + +static const unsigned char kat3624_entropyin[] = { + 0xdf, 0x0c, 0x87, 0x0c, 0x53, 0x12, 0x39, 0x35, 0xd6, 0xb4, 0xf3, 0x56, + 0x39, 0x8a, 0x25, 0x30, 0x25, 0xca, 0xa0, 0x30, 0xc4, 0x98, 0xe9, 0xa0, + 0x19, 0xfb, 0x33, 0xd7, 0x53, 0x51, 0x7c, 0x95, +}; +static const unsigned char kat3624_nonce[] = {0}; +static const unsigned char kat3624_persstr[] = {0}; +static const unsigned char kat3624_entropyinpr1[] = { + 0xa4, 0xb2, 0x81, 0x6c, 0xfb, 0x97, 0xd2, 0x0d, 0x11, 0x3a, 0x09, 0x85, + 0xeb, 0x7d, 0x24, 0xca, 0x37, 0x0c, 0xd1, 0x2c, 0xca, 0x9a, 0xc8, 0xa1, + 0x97, 0xbf, 0xc7, 0xdd, 0xe6, 0xe2, 0xec, 0xb5, +}; +static const unsigned char kat3624_addinpr1[] = { + 0xfd, 0x5c, 0xc5, 0xf9, 0x22, 0xd9, 0xe8, 0x67, 0xff, 0x26, 0x65, 0x9d, + 0xb1, 0x1d, 0x56, 0xdc, 0x1e, 0x98, 0x90, 0x71, 0x3b, 0xef, 0x37, 0xcb, + 0xde, 0xa4, 0x56, 0x94, 0x52, 0xa6, 0x0f, 0x40, +}; +static const unsigned char kat3624_entropyinpr2[] = { + 0xe3, 0x10, 0x95, 0xf6, 0x44, 0x3b, 0x86, 0x36, 0x29, 0xe1, 0x0c, 0x0e, + 0x49, 0x34, 0x19, 0x62, 0x7b, 0x79, 0x8e, 0x80, 0x67, 0xf2, 0x90, 0x3b, + 0x6d, 0x06, 0xd6, 0x7e, 0xf6, 0xab, 0x77, 0xaf, +}; +static const unsigned char kat3624_addinpr2[] = { + 0x1b, 0xd4, 0x59, 0xcf, 0x12, 0x20, 0xf7, 0xe1, 0x65, 0xd0, 0x08, 0x42, + 0xc7, 0x06, 0x9c, 0xf0, 0x73, 0x39, 0x39, 0x7d, 0xe9, 0xe2, 0x73, 0xd2, + 0xf7, 0xfb, 0x27, 0xd4, 0xcf, 0x0d, 0x24, 0x7e, +}; +static const unsigned char kat3624_retbits[] = { + 0xe3, 0xce, 0x4c, 0xb6, 0x0d, 0x5a, 0x06, 0xb0, 0x49, 0x53, 0xca, 0xe7, + 0xfc, 0x46, 0xd1, 0xb4, 0x08, 0xa6, 0x77, 0x2e, 0xf8, 0x57, 0xbd, 0x74, + 0xef, 0x37, 0xfa, 0x25, 0x40, 0x14, 0x10, 0x63, 0x2e, 0xb1, 0xb3, 0x53, + 0x3d, 0x58, 0xfd, 0x37, 0xd5, 0x8b, 0xd5, 0x48, 0x59, 0xa7, 0xa3, 0x5b, + 0x29, 0x81, 0x7e, 0x93, 0xc0, 0xbf, 0xb8, 0xc2, 0x94, 0x72, 0x27, 0x5b, + 0x0d, 0x67, 0xb3, 0xf0, +}; +static const struct drbg_kat_pr_true kat3624_t = { + 8, kat3624_entropyin, kat3624_nonce, kat3624_persstr, + kat3624_entropyinpr1, kat3624_addinpr1, kat3624_entropyinpr2, + kat3624_addinpr2, kat3624_retbits +}; +static const struct drbg_kat kat3624 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3624_t +}; + +static const unsigned char kat3625_entropyin[] = { + 0x47, 0x66, 0x5c, 0xd5, 0x03, 0x75, 0x28, 0x48, 0xd0, 0x2f, 0xf6, 0xad, + 0xf5, 0xe6, 0x7c, 0xd7, 0xc7, 0x41, 0xf6, 0x93, 0x2b, 0x36, 0xd5, 0x11, + 0xb6, 0xed, 0x16, 0x62, 0x38, 0x9c, 0xb6, 0x2b, +}; +static const unsigned char kat3625_nonce[] = {0}; +static const unsigned char kat3625_persstr[] = {0}; +static const unsigned char kat3625_entropyinpr1[] = { + 0x16, 0xb4, 0xa3, 0xfe, 0xf9, 0xa1, 0xb6, 0xca, 0x83, 0xd0, 0x27, 0xa1, + 0xe3, 0x55, 0x4e, 0x75, 0x17, 0xb6, 0x50, 0xba, 0xa8, 0x7f, 0x8e, 0x49, + 0xcc, 0x75, 0x17, 0x5e, 0xc6, 0x0a, 0x56, 0x9b, +}; +static const unsigned char kat3625_addinpr1[] = { + 0x77, 0x3f, 0x50, 0xbb, 0xf3, 0x78, 0x3c, 0xe1, 0x8e, 0x13, 0x79, 0x32, + 0xd0, 0x9c, 0x13, 0x10, 0x77, 0x38, 0x61, 0x78, 0x5c, 0xcc, 0x20, 0x45, + 0xfc, 0x4d, 0x3e, 0xb8, 0xed, 0xbb, 0xdd, 0xa7, +}; +static const unsigned char kat3625_entropyinpr2[] = { + 0x95, 0x04, 0x77, 0xb5, 0xca, 0x17, 0x16, 0x79, 0x5c, 0x00, 0xed, 0xcd, + 0x88, 0x06, 0x84, 0x95, 0x2e, 0xcc, 0x7f, 0x9d, 0x9d, 0x21, 0x16, 0x6b, + 0xfd, 0xdc, 0x81, 0x09, 0x6e, 0x4d, 0x4a, 0x6c, +}; +static const unsigned char kat3625_addinpr2[] = { + 0x04, 0x87, 0x95, 0x44, 0x41, 0xe5, 0x53, 0x8b, 0xfd, 0xc5, 0xe2, 0xfd, + 0x88, 0x20, 0x6f, 0x0a, 0x90, 0xf2, 0x95, 0xdd, 0x00, 0xd6, 0x0a, 0x20, + 0xaa, 0x2f, 0x52, 0x6c, 0x2c, 0xe3, 0x90, 0x2f, +}; +static const unsigned char kat3625_retbits[] = { + 0xe4, 0x02, 0x63, 0xc7, 0x5f, 0x8b, 0xe0, 0xf4, 0x3f, 0x64, 0xe3, 0x3c, + 0x9c, 0xb7, 0x0a, 0x39, 0xe4, 0xb3, 0x54, 0xbd, 0x99, 0xbb, 0x63, 0x77, + 0xa4, 0x0e, 0xb5, 0x04, 0x4f, 0xac, 0xc7, 0xef, 0x16, 0xd4, 0xda, 0xfe, + 0xcf, 0x47, 0x6b, 0xdc, 0x8f, 0x3a, 0x89, 0xb9, 0x3e, 0x88, 0x73, 0xbf, + 0x19, 0xeb, 0x2a, 0x42, 0x6e, 0xee, 0x0b, 0x05, 0x22, 0x16, 0x7f, 0x4c, + 0x70, 0x7f, 0x59, 0x49, +}; +static const struct drbg_kat_pr_true kat3625_t = { + 9, kat3625_entropyin, kat3625_nonce, kat3625_persstr, + kat3625_entropyinpr1, kat3625_addinpr1, kat3625_entropyinpr2, + kat3625_addinpr2, kat3625_retbits +}; +static const struct drbg_kat kat3625 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3625_t +}; + +static const unsigned char kat3626_entropyin[] = { + 0xac, 0x20, 0x6c, 0x41, 0x78, 0xb1, 0xc3, 0xb9, 0xa7, 0x36, 0xa1, 0xfc, + 0x98, 0x04, 0x7e, 0xb3, 0xb8, 0xed, 0xda, 0x6a, 0x75, 0xba, 0x3f, 0xae, + 0x82, 0xad, 0x43, 0x0b, 0xab, 0x45, 0xb1, 0x92, +}; +static const unsigned char kat3626_nonce[] = {0}; +static const unsigned char kat3626_persstr[] = {0}; +static const unsigned char kat3626_entropyinpr1[] = { + 0x26, 0x60, 0xec, 0x62, 0x7c, 0x44, 0xd2, 0x59, 0xa9, 0xb1, 0xb0, 0x1e, + 0x0a, 0x62, 0x39, 0xc7, 0x5a, 0xda, 0xd8, 0x3a, 0xd2, 0x69, 0x4b, 0x3b, + 0xe3, 0x6a, 0x9c, 0x24, 0xb5, 0xd9, 0x12, 0x22, +}; +static const unsigned char kat3626_addinpr1[] = { + 0x50, 0xa6, 0xbb, 0x58, 0xf3, 0x86, 0xb6, 0x69, 0x8a, 0xf0, 0x1d, 0xd0, + 0x5b, 0x9b, 0x67, 0xc5, 0x1d, 0x6f, 0xb7, 0xbf, 0x7e, 0x7e, 0xe6, 0x94, + 0xd9, 0x92, 0x36, 0x09, 0xab, 0x3a, 0x9e, 0xd4, +}; +static const unsigned char kat3626_entropyinpr2[] = { + 0x0b, 0xb0, 0x9e, 0xe8, 0x42, 0xc1, 0xde, 0xb2, 0x58, 0xea, 0x41, 0xd2, + 0xf4, 0xa6, 0x28, 0x66, 0xc2, 0xde, 0xe9, 0x3f, 0xc1, 0x42, 0x6e, 0xd0, + 0x31, 0x8a, 0x2e, 0xc6, 0x09, 0x95, 0xf2, 0xf2, +}; +static const unsigned char kat3626_addinpr2[] = { + 0xf9, 0xe0, 0x4e, 0xbc, 0x76, 0xe9, 0xc4, 0xb1, 0xb1, 0x40, 0xa7, 0x84, + 0x87, 0x04, 0xda, 0xfb, 0x55, 0x12, 0x7a, 0x97, 0x47, 0x29, 0xd2, 0x2d, + 0xcb, 0xdd, 0x40, 0xd8, 0x19, 0xbb, 0x4d, 0x87, +}; +static const unsigned char kat3626_retbits[] = { + 0xfd, 0x86, 0xf6, 0xef, 0xde, 0x8c, 0x73, 0x37, 0x33, 0x47, 0x0e, 0x60, + 0x05, 0xa9, 0xe3, 0x32, 0x7e, 0xea, 0xfa, 0x8f, 0x81, 0xf5, 0xf9, 0x41, + 0xf5, 0xb2, 0x75, 0x2e, 0xc1, 0x6d, 0x1c, 0x2d, 0xdd, 0xd4, 0x39, 0xf7, + 0x1b, 0x0b, 0x75, 0xdb, 0x4c, 0x51, 0xde, 0xac, 0x59, 0x23, 0x33, 0x4a, + 0xb1, 0x8f, 0x27, 0x2d, 0xf8, 0x3c, 0xdc, 0xc8, 0x04, 0xe2, 0x8b, 0xc3, + 0xe8, 0xb6, 0xc6, 0xa9, +}; +static const struct drbg_kat_pr_true kat3626_t = { + 10, kat3626_entropyin, kat3626_nonce, kat3626_persstr, + kat3626_entropyinpr1, kat3626_addinpr1, kat3626_entropyinpr2, + kat3626_addinpr2, kat3626_retbits +}; +static const struct drbg_kat kat3626 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3626_t +}; + +static const unsigned char kat3627_entropyin[] = { + 0xf1, 0x4f, 0xbc, 0x8c, 0x98, 0xce, 0x66, 0xfe, 0x6a, 0x13, 0x5a, 0x54, + 0x35, 0x4c, 0x54, 0xe1, 0x9c, 0xc2, 0x16, 0x2d, 0x2f, 0x3f, 0x69, 0x17, + 0x35, 0xbf, 0x20, 0x72, 0x89, 0x73, 0x20, 0x33, +}; +static const unsigned char kat3627_nonce[] = {0}; +static const unsigned char kat3627_persstr[] = {0}; +static const unsigned char kat3627_entropyinpr1[] = { + 0xa0, 0x8a, 0x66, 0xad, 0x0d, 0x0b, 0x84, 0x73, 0xbd, 0xe7, 0xea, 0xa7, + 0x6c, 0x7b, 0x28, 0x18, 0xf5, 0x7f, 0x20, 0x1d, 0x3a, 0xe8, 0x98, 0xff, + 0x53, 0xe5, 0xb0, 0x81, 0xfb, 0xdd, 0x1a, 0x52, +}; +static const unsigned char kat3627_addinpr1[] = { + 0xbd, 0xa3, 0x5c, 0xf2, 0x57, 0x6e, 0x9f, 0xdc, 0x5e, 0x8e, 0x7c, 0xa9, + 0x22, 0xad, 0x50, 0xa8, 0x1b, 0x1a, 0x2a, 0x5a, 0x00, 0xe5, 0x4d, 0x2e, + 0x20, 0xb1, 0xba, 0x7c, 0x63, 0x39, 0x42, 0xbb, +}; +static const unsigned char kat3627_entropyinpr2[] = { + 0x56, 0xad, 0x37, 0x29, 0x0a, 0xfa, 0x62, 0xb4, 0xca, 0xcb, 0x6b, 0x68, + 0x50, 0xab, 0x35, 0x19, 0xd8, 0xcc, 0x6a, 0x2a, 0x9b, 0xf2, 0x4d, 0x05, + 0xd0, 0xd7, 0x5e, 0x57, 0x21, 0xef, 0xc0, 0x42, +}; +static const unsigned char kat3627_addinpr2[] = { + 0xda, 0x02, 0xcd, 0x68, 0xa0, 0x66, 0x04, 0xbb, 0xfa, 0xd8, 0xa6, 0xaa, + 0x79, 0x96, 0x7a, 0x9e, 0x2f, 0x30, 0xc6, 0x61, 0x08, 0xc1, 0xf9, 0xfb, + 0xae, 0x9b, 0x74, 0x07, 0x08, 0x3e, 0x7b, 0xb5, +}; +static const unsigned char kat3627_retbits[] = { + 0x57, 0xe6, 0xba, 0x35, 0xd9, 0x4d, 0xab, 0x57, 0x58, 0x7f, 0xd5, 0x26, + 0x48, 0x2a, 0x92, 0x43, 0x03, 0x3d, 0x4c, 0x68, 0x6c, 0x3a, 0x51, 0xb1, + 0x29, 0x51, 0x40, 0x1d, 0x86, 0x5f, 0x2c, 0x24, 0xf2, 0x0c, 0x80, 0xa9, + 0xdb, 0x7e, 0x96, 0xef, 0x0a, 0xe8, 0x47, 0x64, 0xd4, 0x60, 0x29, 0x67, + 0xde, 0xe4, 0x45, 0xb1, 0x2a, 0xdc, 0xff, 0x9b, 0xbd, 0xa9, 0xb0, 0xf0, + 0xe6, 0xa0, 0x2f, 0xae, +}; +static const struct drbg_kat_pr_true kat3627_t = { + 11, kat3627_entropyin, kat3627_nonce, kat3627_persstr, + kat3627_entropyinpr1, kat3627_addinpr1, kat3627_entropyinpr2, + kat3627_addinpr2, kat3627_retbits +}; +static const struct drbg_kat kat3627 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3627_t +}; + +static const unsigned char kat3628_entropyin[] = { + 0xcd, 0x48, 0x1f, 0x49, 0x38, 0x22, 0x0a, 0xb2, 0xe3, 0x13, 0x05, 0xae, + 0xff, 0x42, 0xbc, 0x16, 0xde, 0xee, 0x05, 0xf9, 0x2f, 0x1e, 0x9b, 0xcd, + 0x33, 0x81, 0xcf, 0xa9, 0x53, 0x77, 0xee, 0xb4, +}; +static const unsigned char kat3628_nonce[] = {0}; +static const unsigned char kat3628_persstr[] = {0}; +static const unsigned char kat3628_entropyinpr1[] = { + 0xac, 0x87, 0xfb, 0xff, 0x62, 0x72, 0x40, 0x8d, 0xe1, 0xb8, 0xe3, 0xc4, + 0xb9, 0x9b, 0x8f, 0x57, 0x35, 0x48, 0xc4, 0xb4, 0x51, 0x69, 0x4c, 0x2b, + 0x4d, 0xc4, 0x5d, 0x96, 0xb3, 0xee, 0xc4, 0xd8, +}; +static const unsigned char kat3628_addinpr1[] = { + 0xbf, 0x84, 0x3b, 0xd3, 0x2c, 0xc9, 0xa5, 0xb2, 0xea, 0xe9, 0xc0, 0x19, + 0x4f, 0xb8, 0x62, 0xb1, 0x04, 0x31, 0x18, 0x5f, 0x8e, 0xd4, 0x5f, 0x90, + 0xa4, 0xa8, 0x29, 0x61, 0x3e, 0xb6, 0xa8, 0x0f, +}; +static const unsigned char kat3628_entropyinpr2[] = { + 0x2c, 0xfe, 0x16, 0x40, 0x01, 0x13, 0xff, 0xa2, 0xee, 0xb7, 0x93, 0x89, + 0x05, 0x0a, 0x87, 0xe8, 0xf1, 0x1e, 0x3a, 0x00, 0x16, 0xec, 0xd8, 0x90, + 0x2c, 0x69, 0x64, 0x7e, 0x99, 0x29, 0x47, 0x08, +}; +static const unsigned char kat3628_addinpr2[] = { + 0x9f, 0xc4, 0x0b, 0xe6, 0x5c, 0xb5, 0xe8, 0x1c, 0x90, 0xeb, 0x2c, 0x8a, + 0x64, 0x0d, 0x1e, 0xe2, 0xb1, 0x80, 0xdd, 0xba, 0x2f, 0x44, 0x8f, 0x5f, + 0xd8, 0x55, 0x5e, 0x2d, 0x21, 0x22, 0x41, 0x16, +}; +static const unsigned char kat3628_retbits[] = { + 0x5c, 0x1d, 0x1e, 0x4a, 0xf7, 0x89, 0xfc, 0x9a, 0xd2, 0x80, 0x4a, 0x04, + 0xcf, 0xc7, 0x1d, 0xc8, 0xae, 0x9e, 0x7e, 0xda, 0xe0, 0xe4, 0xe1, 0x65, + 0xb4, 0x01, 0x8b, 0x11, 0xaf, 0x9a, 0x43, 0xe1, 0x66, 0x6c, 0xe3, 0x9c, + 0xe5, 0x7d, 0xa6, 0x00, 0x31, 0x82, 0x64, 0x51, 0xd8, 0x66, 0xdc, 0x52, + 0xf5, 0x67, 0x51, 0x9b, 0xe6, 0x05, 0x53, 0x15, 0x00, 0xed, 0x64, 0xec, + 0x6f, 0xd5, 0x34, 0xec, +}; +static const struct drbg_kat_pr_true kat3628_t = { + 12, kat3628_entropyin, kat3628_nonce, kat3628_persstr, + kat3628_entropyinpr1, kat3628_addinpr1, kat3628_entropyinpr2, + kat3628_addinpr2, kat3628_retbits +}; +static const struct drbg_kat kat3628 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3628_t +}; + +static const unsigned char kat3629_entropyin[] = { + 0x67, 0x85, 0x33, 0x3b, 0x3f, 0xb9, 0x3b, 0x39, 0xce, 0xff, 0x40, 0x20, + 0x1d, 0xf0, 0xc2, 0x71, 0x39, 0xd3, 0x49, 0xcf, 0xdd, 0xa1, 0x33, 0xb9, + 0x36, 0xa9, 0x6d, 0x6b, 0x3c, 0x6f, 0x5b, 0xf8, +}; +static const unsigned char kat3629_nonce[] = {0}; +static const unsigned char kat3629_persstr[] = {0}; +static const unsigned char kat3629_entropyinpr1[] = { + 0x14, 0xf0, 0x06, 0x2f, 0x1c, 0x7e, 0x51, 0xb4, 0xbd, 0x92, 0xd0, 0x5d, + 0xfd, 0xfe, 0x24, 0x55, 0xad, 0x80, 0x32, 0xcd, 0x2d, 0x4a, 0xc4, 0x2c, + 0xd2, 0xe2, 0xc0, 0x99, 0x3f, 0x47, 0xa5, 0x16, +}; +static const unsigned char kat3629_addinpr1[] = { + 0xdd, 0x7d, 0x78, 0x47, 0x65, 0x99, 0x8e, 0xbf, 0x80, 0x8d, 0x11, 0x05, + 0xc7, 0x61, 0x9c, 0x96, 0x94, 0xd1, 0x2c, 0x6c, 0x6c, 0xc1, 0xb5, 0xfe, + 0x30, 0x9a, 0xa6, 0xf9, 0x16, 0xe7, 0x19, 0x79, +}; +static const unsigned char kat3629_entropyinpr2[] = { + 0x71, 0x9e, 0x01, 0xa2, 0x9c, 0x1d, 0x7e, 0xf2, 0xca, 0x96, 0x07, 0x3f, + 0x6c, 0x86, 0xc4, 0xfd, 0xd5, 0x4a, 0xaa, 0x02, 0x75, 0xa0, 0x41, 0x61, + 0x67, 0x16, 0xe0, 0xbd, 0xdc, 0x51, 0x98, 0xe7, +}; +static const unsigned char kat3629_addinpr2[] = { + 0xc7, 0x6e, 0x7f, 0x80, 0xd0, 0xa1, 0xf4, 0x1c, 0x59, 0xc2, 0x52, 0xae, + 0x63, 0x59, 0xc3, 0x0c, 0x78, 0xb0, 0x5a, 0x9d, 0x49, 0xe8, 0xd5, 0x74, + 0x8e, 0x04, 0xe2, 0x4a, 0x61, 0xce, 0x34, 0x52, +}; +static const unsigned char kat3629_retbits[] = { + 0x15, 0xd3, 0x76, 0xec, 0x61, 0xce, 0x62, 0xe0, 0x3e, 0xb5, 0x39, 0x98, + 0x25, 0x2c, 0x54, 0x0b, 0x3e, 0xa5, 0xec, 0x93, 0x36, 0x0b, 0xfa, 0x77, + 0x5d, 0x2a, 0x11, 0xf8, 0x8f, 0x7e, 0x19, 0xb6, 0x59, 0x02, 0x0b, 0x42, + 0xbd, 0xb2, 0x8d, 0xcd, 0xde, 0xb1, 0xfa, 0x0d, 0xf5, 0xcd, 0x9c, 0x30, + 0x74, 0xa5, 0x51, 0x06, 0x6f, 0x2c, 0x2c, 0x8c, 0x46, 0xed, 0xe6, 0xa4, + 0x97, 0x90, 0x3f, 0xb6, +}; +static const struct drbg_kat_pr_true kat3629_t = { + 13, kat3629_entropyin, kat3629_nonce, kat3629_persstr, + kat3629_entropyinpr1, kat3629_addinpr1, kat3629_entropyinpr2, + kat3629_addinpr2, kat3629_retbits +}; +static const struct drbg_kat kat3629 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3629_t +}; + +static const unsigned char kat3630_entropyin[] = { + 0xda, 0x89, 0xad, 0xc5, 0xf1, 0x44, 0x42, 0x92, 0xc2, 0x6b, 0x3c, 0xc9, + 0xd6, 0x1f, 0xfe, 0x7e, 0x6f, 0xa2, 0xfe, 0xae, 0xe0, 0x6b, 0x4f, 0x99, + 0xe8, 0x3c, 0x48, 0x0d, 0x02, 0x38, 0x61, 0x94, +}; +static const unsigned char kat3630_nonce[] = {0}; +static const unsigned char kat3630_persstr[] = {0}; +static const unsigned char kat3630_entropyinpr1[] = { + 0x06, 0x18, 0x73, 0xd9, 0x2e, 0x0e, 0x90, 0x8c, 0x30, 0xee, 0x49, 0x6d, + 0x62, 0xa7, 0x1e, 0x5a, 0x0b, 0x22, 0x5c, 0xbf, 0x13, 0xb6, 0xa8, 0x50, + 0x15, 0x61, 0xb9, 0x0a, 0xad, 0x9e, 0x78, 0x4f, +}; +static const unsigned char kat3630_addinpr1[] = { + 0x8f, 0x7a, 0xde, 0xa4, 0xc9, 0x82, 0x8b, 0x99, 0xe8, 0x00, 0x56, 0xf9, + 0x9f, 0x5a, 0xc1, 0xcd, 0xf7, 0xa2, 0xb5, 0x1f, 0x2e, 0x83, 0x1c, 0xc8, + 0xc0, 0x9a, 0x3e, 0x35, 0xf2, 0x5d, 0x24, 0xf7, +}; +static const unsigned char kat3630_entropyinpr2[] = { + 0x9a, 0x4d, 0xfa, 0xc9, 0x92, 0x70, 0xa6, 0x7b, 0x45, 0x25, 0x6a, 0x4d, + 0xa4, 0xac, 0x0d, 0xf1, 0x56, 0x93, 0xa4, 0xa1, 0x9f, 0xb6, 0x8d, 0x08, + 0xc0, 0xa2, 0x06, 0x1a, 0x9e, 0x19, 0x07, 0x49, +}; +static const unsigned char kat3630_addinpr2[] = { + 0xf2, 0x98, 0xb8, 0x78, 0x9d, 0xb7, 0xc5, 0xb8, 0xe0, 0x35, 0x47, 0x64, + 0xd0, 0xb3, 0x00, 0x13, 0x45, 0x3c, 0x3c, 0x5c, 0x77, 0xbf, 0xec, 0x04, + 0x26, 0x42, 0x03, 0xd7, 0x67, 0x4f, 0x23, 0xc4, +}; +static const unsigned char kat3630_retbits[] = { + 0xa7, 0x74, 0x6e, 0x68, 0x9f, 0xbe, 0x9e, 0xee, 0xd3, 0x4b, 0x0b, 0xa5, + 0x24, 0x85, 0x17, 0x42, 0xa5, 0xfe, 0xfe, 0x1f, 0xf5, 0xab, 0x84, 0xc6, + 0xb9, 0xa1, 0x18, 0xda, 0x64, 0xa8, 0xad, 0x8f, 0xc9, 0xff, 0x60, 0x1c, + 0xcb, 0xe6, 0xa5, 0xb7, 0xe9, 0x0c, 0x5d, 0xa8, 0xcd, 0xc8, 0xd9, 0xfb, + 0xa7, 0x41, 0xd2, 0x2a, 0x0a, 0xa1, 0xd8, 0xce, 0x4f, 0xb9, 0xcd, 0x61, + 0x48, 0xeb, 0x06, 0xda, +}; +static const struct drbg_kat_pr_true kat3630_t = { + 14, kat3630_entropyin, kat3630_nonce, kat3630_persstr, + kat3630_entropyinpr1, kat3630_addinpr1, kat3630_entropyinpr2, + kat3630_addinpr2, kat3630_retbits +}; +static const struct drbg_kat kat3630 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3630_t +}; + +static const unsigned char kat3631_entropyin[] = { + 0x52, 0x8c, 0xcd, 0x2d, 0x6c, 0x14, 0x38, 0x00, 0xa3, 0x4a, 0xd3, 0x3e, + 0x7f, 0x15, 0x3c, 0xfa, 0xce, 0xaa, 0x24, 0x11, 0xab, 0xba, 0xf4, 0xbf, + 0xcf, 0xe9, 0x79, 0x68, 0x98, 0xd0, 0xec, 0xe6, +}; +static const unsigned char kat3631_nonce[] = {0}; +static const unsigned char kat3631_persstr[] = { + 0x07, 0xca, 0x7a, 0x00, 0x7b, 0x53, 0xf0, 0x14, 0xd7, 0xf1, 0x04, 0x61, + 0xd6, 0xc9, 0x7b, 0x5c, 0x8b, 0x0c, 0x50, 0x2d, 0x34, 0x61, 0xd5, 0x83, + 0xf9, 0x9e, 0xfe, 0xc6, 0x9f, 0x12, 0x1c, 0xd2, +}; +static const unsigned char kat3631_entropyinpr1[] = { + 0x47, 0x8f, 0xd1, 0xea, 0xa7, 0xed, 0x29, 0x32, 0x94, 0xd3, 0x70, 0x97, + 0x9b, 0x0f, 0x0f, 0x19, 0x48, 0xd5, 0xa3, 0x16, 0x1b, 0x12, 0xee, 0xeb, + 0xf2, 0xcf, 0x6b, 0xd1, 0xbf, 0x05, 0x9a, 0xdf, +}; +static const unsigned char kat3631_addinpr1[] = {0}; +static const unsigned char kat3631_entropyinpr2[] = { + 0x03, 0x6b, 0xf1, 0x17, 0x39, 0x77, 0xb3, 0x23, 0xf6, 0x0c, 0x6f, 0x0f, + 0x60, 0x3d, 0x9c, 0x50, 0x83, 0x5b, 0x2a, 0xfc, 0xa8, 0x34, 0x7d, 0xfb, + 0x24, 0xe8, 0xf6, 0x66, 0x04, 0x44, 0x49, 0x51, +}; +static const unsigned char kat3631_addinpr2[] = {0}; +static const unsigned char kat3631_retbits[] = { + 0xbb, 0xa1, 0xef, 0x50, 0xb4, 0xba, 0xd2, 0x88, 0x89, 0x7f, 0x02, 0xac, + 0x27, 0x06, 0xee, 0x1e, 0x01, 0x48, 0x8d, 0xcb, 0xe9, 0xb3, 0xd8, 0xa6, + 0x37, 0x92, 0x1f, 0x5e, 0x78, 0x8f, 0xae, 0xd3, 0xb2, 0x3d, 0xb6, 0x3d, + 0x59, 0x0c, 0xea, 0xa7, 0x60, 0x7a, 0x21, 0x79, 0x19, 0x2b, 0xea, 0x9a, + 0xea, 0xa8, 0x5d, 0x04, 0x8e, 0x7e, 0x10, 0x8f, 0xee, 0x66, 0x6d, 0xc6, + 0x46, 0xaf, 0x5f, 0x0e, +}; +static const struct drbg_kat_pr_true kat3631_t = { + 0, kat3631_entropyin, kat3631_nonce, kat3631_persstr, + kat3631_entropyinpr1, kat3631_addinpr1, kat3631_entropyinpr2, + kat3631_addinpr2, kat3631_retbits +}; +static const struct drbg_kat kat3631 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3631_t +}; + +static const unsigned char kat3632_entropyin[] = { + 0x53, 0xe5, 0x78, 0x3f, 0xd2, 0x7c, 0xda, 0x26, 0x41, 0x89, 0xff, 0x0a, + 0xa5, 0x51, 0x3d, 0xc5, 0x90, 0x3c, 0x28, 0xe3, 0xe2, 0x60, 0xb7, 0x7b, + 0x4b, 0x4a, 0x0b, 0x9b, 0x76, 0xe4, 0xaa, 0x46, +}; +static const unsigned char kat3632_nonce[] = {0}; +static const unsigned char kat3632_persstr[] = { + 0x99, 0xf2, 0xd5, 0x01, 0xdd, 0x18, 0x3f, 0x56, 0x57, 0xd8, 0xb8, 0x06, + 0x1b, 0xf4, 0xf0, 0x98, 0x8d, 0xe3, 0xbc, 0x27, 0x19, 0xf4, 0x12, 0x81, + 0xcf, 0x08, 0xd9, 0xbc, 0xc9, 0x9f, 0x0d, 0xcb, +}; +static const unsigned char kat3632_entropyinpr1[] = { + 0xe0, 0x4b, 0xad, 0xe7, 0x63, 0x6e, 0x72, 0x39, 0x7f, 0x83, 0x03, 0x43, + 0x7c, 0xb2, 0x2b, 0xe5, 0x28, 0x10, 0xda, 0xdd, 0x76, 0x8d, 0x5c, 0xfc, + 0x9d, 0x32, 0x69, 0xe7, 0xad, 0x4b, 0xc8, 0xbc, +}; +static const unsigned char kat3632_addinpr1[] = {0}; +static const unsigned char kat3632_entropyinpr2[] = { + 0xe2, 0x0d, 0xab, 0xb9, 0xfc, 0xaf, 0x3a, 0xed, 0x0e, 0xc4, 0x0c, 0x7e, + 0xf6, 0x8d, 0x78, 0xf2, 0xbc, 0xb5, 0x67, 0x5d, 0xb2, 0xd6, 0x2e, 0xe4, + 0x0d, 0x81, 0x84, 0xb7, 0x04, 0x6f, 0x0e, 0x0e, +}; +static const unsigned char kat3632_addinpr2[] = {0}; +static const unsigned char kat3632_retbits[] = { + 0xb9, 0xec, 0xf5, 0x52, 0x1d, 0x38, 0xf9, 0x21, 0x25, 0x78, 0xf9, 0xdd, + 0x32, 0xaf, 0x38, 0x08, 0x9b, 0x45, 0x81, 0x2c, 0xa9, 0x6e, 0x66, 0x1f, + 0xc8, 0xe1, 0xbe, 0x0b, 0x2f, 0x4b, 0x54, 0x21, 0x5f, 0x52, 0xc9, 0xc9, + 0x3a, 0x6f, 0x76, 0xef, 0xee, 0x45, 0x21, 0xcb, 0x31, 0x63, 0x78, 0x40, + 0x31, 0x08, 0xa6, 0xbf, 0x27, 0x24, 0xfd, 0xc9, 0x3b, 0xc4, 0xd2, 0xdb, + 0x60, 0xa2, 0xde, 0x83, +}; +static const struct drbg_kat_pr_true kat3632_t = { + 1, kat3632_entropyin, kat3632_nonce, kat3632_persstr, + kat3632_entropyinpr1, kat3632_addinpr1, kat3632_entropyinpr2, + kat3632_addinpr2, kat3632_retbits +}; +static const struct drbg_kat kat3632 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3632_t +}; + +static const unsigned char kat3633_entropyin[] = { + 0xf3, 0xb2, 0x47, 0xd0, 0x40, 0x07, 0x40, 0xd1, 0x8b, 0x79, 0x5e, 0x8e, + 0x9c, 0x04, 0xcc, 0x43, 0xeb, 0x13, 0x8c, 0xb9, 0xeb, 0x6c, 0x46, 0x86, + 0x20, 0x30, 0x51, 0x7d, 0x8b, 0x36, 0x79, 0xdb, +}; +static const unsigned char kat3633_nonce[] = {0}; +static const unsigned char kat3633_persstr[] = { + 0x61, 0x7d, 0x64, 0x63, 0xea, 0xf3, 0x84, 0x9e, 0x13, 0xb8, 0x9a, 0x7f, + 0x98, 0x05, 0xed, 0xff, 0x3e, 0xa1, 0xf0, 0xaa, 0x7a, 0xd7, 0x1e, 0x7d, + 0xe7, 0xaf, 0x34, 0x81, 0xbf, 0xeb, 0xa7, 0xf5, +}; +static const unsigned char kat3633_entropyinpr1[] = { + 0x06, 0x03, 0xb4, 0x81, 0xbb, 0x88, 0xd7, 0x7d, 0x6b, 0xac, 0xf0, 0x3a, + 0x64, 0xcf, 0x82, 0x24, 0x84, 0x20, 0xa9, 0x5c, 0xca, 0x10, 0xe3, 0xef, + 0xc0, 0x12, 0xbd, 0x77, 0x0d, 0xd5, 0x62, 0x1c, +}; +static const unsigned char kat3633_addinpr1[] = {0}; +static const unsigned char kat3633_entropyinpr2[] = { + 0x23, 0x3b, 0x1e, 0x55, 0x0a, 0x0d, 0x12, 0x49, 0xa5, 0xbd, 0x09, 0xcc, + 0xb9, 0xa8, 0x8b, 0xe9, 0x11, 0x92, 0x58, 0xfe, 0xad, 0xfc, 0x30, 0x9a, + 0x6a, 0xe3, 0xc3, 0x40, 0x91, 0x85, 0x45, 0xb9, +}; +static const unsigned char kat3633_addinpr2[] = {0}; +static const unsigned char kat3633_retbits[] = { + 0xce, 0x4b, 0xec, 0x82, 0x41, 0xdd, 0x1c, 0xe1, 0x2d, 0x7f, 0xa1, 0x8b, + 0xd1, 0xa3, 0x18, 0x8b, 0x43, 0x89, 0x23, 0x92, 0xb7, 0xdc, 0xae, 0x72, + 0x28, 0xa8, 0x51, 0xaf, 0xef, 0x9c, 0x97, 0x28, 0xc5, 0x87, 0x16, 0x7b, + 0x6d, 0xf2, 0x8c, 0x89, 0x5a, 0x67, 0xaf, 0x35, 0xb6, 0xfd, 0x84, 0xad, + 0x07, 0x6e, 0xfc, 0xd7, 0x0d, 0x1c, 0x59, 0xc4, 0x9f, 0xa7, 0xc0, 0xf7, + 0xed, 0x87, 0xbc, 0x82, +}; +static const struct drbg_kat_pr_true kat3633_t = { + 2, kat3633_entropyin, kat3633_nonce, kat3633_persstr, + kat3633_entropyinpr1, kat3633_addinpr1, kat3633_entropyinpr2, + kat3633_addinpr2, kat3633_retbits +}; +static const struct drbg_kat kat3633 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3633_t +}; + +static const unsigned char kat3634_entropyin[] = { + 0x9d, 0x97, 0xce, 0x84, 0x52, 0x47, 0x4b, 0xc1, 0x9a, 0x4b, 0xe6, 0x4e, + 0xfd, 0x43, 0x48, 0x48, 0x74, 0x07, 0x47, 0x79, 0xe0, 0x5a, 0xc2, 0x21, + 0xf1, 0x9d, 0xb3, 0x95, 0x5c, 0xe2, 0x9b, 0xc1, +}; +static const unsigned char kat3634_nonce[] = {0}; +static const unsigned char kat3634_persstr[] = { + 0x7f, 0x7d, 0x81, 0xa5, 0xc7, 0x2f, 0x9e, 0x34, 0x98, 0xde, 0x18, 0x33, + 0x29, 0xd6, 0xb2, 0x29, 0x17, 0x92, 0xac, 0x8c, 0x81, 0xe6, 0x90, 0x20, + 0x03, 0x87, 0x30, 0x5a, 0xba, 0x89, 0x87, 0xc7, +}; +static const unsigned char kat3634_entropyinpr1[] = { + 0x5c, 0x0e, 0xf2, 0x7b, 0x53, 0xeb, 0x79, 0x03, 0xcc, 0x9e, 0x2b, 0xc7, + 0x09, 0xf9, 0xe8, 0x85, 0xee, 0xc1, 0x39, 0xec, 0x68, 0x7a, 0x34, 0x44, + 0x45, 0x0f, 0x0c, 0xb0, 0x79, 0xca, 0x51, 0x71, +}; +static const unsigned char kat3634_addinpr1[] = {0}; +static const unsigned char kat3634_entropyinpr2[] = { + 0x0e, 0x26, 0xd3, 0xe8, 0xd2, 0xfd, 0x18, 0xfe, 0x0c, 0xe2, 0x53, 0x8c, + 0x2e, 0xde, 0x5d, 0x61, 0x57, 0x4c, 0x82, 0x27, 0xb3, 0xf8, 0x2b, 0x33, + 0x3a, 0xc4, 0x2d, 0xbd, 0xd7, 0x8b, 0x8e, 0x19, +}; +static const unsigned char kat3634_addinpr2[] = {0}; +static const unsigned char kat3634_retbits[] = { + 0x94, 0x00, 0x1b, 0x01, 0x18, 0x30, 0xbc, 0x6a, 0x91, 0x1f, 0xa2, 0x3b, + 0xc1, 0xfd, 0x0d, 0xac, 0x8c, 0x0a, 0xcd, 0x0e, 0x85, 0x6a, 0xb4, 0x49, + 0x7a, 0xd0, 0x72, 0xe5, 0x4f, 0xe3, 0xb4, 0x7b, 0xc0, 0x68, 0x90, 0xe7, + 0xe7, 0xba, 0xbd, 0x49, 0x12, 0xaf, 0x1e, 0x7d, 0xa9, 0x6e, 0x90, 0x52, + 0x3b, 0x75, 0xdd, 0x86, 0xd9, 0xa4, 0xba, 0x4d, 0x88, 0x10, 0x7d, 0xe6, + 0x07, 0xe5, 0x25, 0x34, +}; +static const struct drbg_kat_pr_true kat3634_t = { + 3, kat3634_entropyin, kat3634_nonce, kat3634_persstr, + kat3634_entropyinpr1, kat3634_addinpr1, kat3634_entropyinpr2, + kat3634_addinpr2, kat3634_retbits +}; +static const struct drbg_kat kat3634 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3634_t +}; + +static const unsigned char kat3635_entropyin[] = { + 0x12, 0xf6, 0x8f, 0x04, 0x92, 0x16, 0xe3, 0x98, 0x78, 0x60, 0x65, 0x1f, + 0x6f, 0xd1, 0x3e, 0xfe, 0xf1, 0x84, 0xfc, 0x8f, 0xe0, 0x5c, 0xac, 0x45, + 0x9e, 0xb3, 0xcf, 0x97, 0xdd, 0x95, 0x7e, 0x6c, +}; +static const unsigned char kat3635_nonce[] = {0}; +static const unsigned char kat3635_persstr[] = { + 0x0c, 0x70, 0xa2, 0x0b, 0x69, 0x0b, 0xf5, 0xd5, 0x86, 0xb2, 0x84, 0xaa, + 0x75, 0x2e, 0xc7, 0x30, 0x55, 0xe0, 0x39, 0x23, 0x30, 0x89, 0xa3, 0x0e, + 0xfd, 0xd6, 0x21, 0x8a, 0x1e, 0x49, 0xf5, 0x48, +}; +static const unsigned char kat3635_entropyinpr1[] = { + 0xcc, 0xfa, 0xbc, 0x0f, 0x84, 0x78, 0x01, 0xb3, 0x42, 0x77, 0x4c, 0xe5, + 0x0d, 0x80, 0xc6, 0x00, 0xaf, 0x2d, 0x1f, 0x20, 0x16, 0xe1, 0xae, 0xa4, + 0x12, 0xfc, 0x4c, 0x60, 0xb2, 0xa0, 0x41, 0xb1, +}; +static const unsigned char kat3635_addinpr1[] = {0}; +static const unsigned char kat3635_entropyinpr2[] = { + 0x07, 0xe1, 0x92, 0xe5, 0x76, 0xbb, 0x03, 0x1b, 0xb8, 0xba, 0xa6, 0x0b, + 0x93, 0x74, 0xdc, 0xc1, 0xc4, 0x0c, 0xb4, 0x3a, 0xb4, 0x20, 0x35, 0x71, + 0x95, 0x88, 0xe2, 0xaf, 0xd7, 0x5f, 0xc8, 0xf0, +}; +static const unsigned char kat3635_addinpr2[] = {0}; +static const unsigned char kat3635_retbits[] = { + 0xd0, 0x61, 0x99, 0x96, 0xc8, 0x84, 0x23, 0xa7, 0x40, 0xf0, 0x4d, 0xfd, + 0xad, 0x3b, 0xfc, 0x13, 0x1b, 0xf3, 0x60, 0x1f, 0xc4, 0x30, 0x22, 0xe8, + 0x99, 0x57, 0xbf, 0x8b, 0x9a, 0x1a, 0xd8, 0x70, 0x2b, 0xc8, 0xfb, 0xb2, + 0x00, 0x4e, 0x7a, 0xb0, 0x25, 0x50, 0x77, 0x78, 0x18, 0xe1, 0x1f, 0x03, + 0xfa, 0xb4, 0x84, 0x58, 0x42, 0x4a, 0xe5, 0xc8, 0xcc, 0x8c, 0xb7, 0x34, + 0x36, 0x65, 0x72, 0x92, +}; +static const struct drbg_kat_pr_true kat3635_t = { + 4, kat3635_entropyin, kat3635_nonce, kat3635_persstr, + kat3635_entropyinpr1, kat3635_addinpr1, kat3635_entropyinpr2, + kat3635_addinpr2, kat3635_retbits +}; +static const struct drbg_kat kat3635 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3635_t +}; + +static const unsigned char kat3636_entropyin[] = { + 0x61, 0x29, 0xa1, 0x63, 0xef, 0xde, 0x5f, 0x14, 0x06, 0x7e, 0x07, 0x5c, + 0x47, 0x90, 0x02, 0x96, 0x52, 0xa5, 0x6e, 0xed, 0xf8, 0xea, 0x48, 0x77, + 0xa0, 0xff, 0xce, 0xdd, 0x32, 0x86, 0x61, 0x66, +}; +static const unsigned char kat3636_nonce[] = {0}; +static const unsigned char kat3636_persstr[] = { + 0x1f, 0xe2, 0xb0, 0xce, 0x3a, 0x18, 0x96, 0x01, 0x7e, 0x30, 0x75, 0x30, + 0x64, 0xe1, 0xc0, 0xe1, 0x34, 0x1b, 0x67, 0x35, 0x69, 0xc7, 0x39, 0xa1, + 0x99, 0xcd, 0x21, 0x8f, 0xe6, 0x46, 0x65, 0xd0, +}; +static const unsigned char kat3636_entropyinpr1[] = { + 0x35, 0x6a, 0xde, 0x73, 0xb8, 0xff, 0xb3, 0x84, 0x08, 0xbe, 0x05, 0x37, + 0xca, 0x53, 0x9b, 0x63, 0x3d, 0x0a, 0xff, 0xfc, 0xf2, 0x96, 0x2b, 0x71, + 0x7a, 0xc3, 0x7e, 0xb2, 0xa0, 0x6d, 0xdf, 0x50, +}; +static const unsigned char kat3636_addinpr1[] = {0}; +static const unsigned char kat3636_entropyinpr2[] = { + 0x0b, 0x85, 0x7f, 0xe1, 0x37, 0xca, 0xb1, 0x49, 0xe9, 0x19, 0x50, 0x19, + 0x73, 0x2a, 0x71, 0x4e, 0x25, 0xe6, 0x2c, 0x94, 0x6e, 0xba, 0x58, 0xdd, + 0x2f, 0xa8, 0xe6, 0xc7, 0x97, 0x17, 0x2b, 0xcb, +}; +static const unsigned char kat3636_addinpr2[] = {0}; +static const unsigned char kat3636_retbits[] = { + 0xa2, 0x61, 0x3d, 0xdb, 0x75, 0x10, 0x7e, 0xf3, 0xfe, 0x9f, 0xc3, 0x92, + 0x06, 0x1a, 0x52, 0xea, 0x23, 0x04, 0xaf, 0x7a, 0xed, 0x6d, 0xed, 0xec, + 0x3a, 0xee, 0x62, 0x6e, 0x1a, 0xb2, 0xbf, 0x98, 0x9c, 0xe7, 0xd6, 0x48, + 0x45, 0x55, 0x94, 0x1e, 0x9a, 0x40, 0x13, 0x03, 0x6c, 0x46, 0x05, 0xc5, + 0x64, 0xf1, 0x7d, 0x4d, 0x13, 0x69, 0xe1, 0xe1, 0x2d, 0x28, 0xb8, 0x77, + 0xd2, 0x12, 0x5d, 0x99, +}; +static const struct drbg_kat_pr_true kat3636_t = { + 5, kat3636_entropyin, kat3636_nonce, kat3636_persstr, + kat3636_entropyinpr1, kat3636_addinpr1, kat3636_entropyinpr2, + kat3636_addinpr2, kat3636_retbits +}; +static const struct drbg_kat kat3636 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3636_t +}; + +static const unsigned char kat3637_entropyin[] = { + 0x31, 0x0d, 0x2e, 0x7b, 0x24, 0x9c, 0xa8, 0xfd, 0xf1, 0xd4, 0xb1, 0x56, + 0x12, 0xf6, 0xe1, 0xf5, 0x42, 0x82, 0x41, 0xc7, 0xad, 0x77, 0x72, 0x81, + 0x17, 0x1f, 0xdc, 0xec, 0xf7, 0xf5, 0xed, 0x44, +}; +static const unsigned char kat3637_nonce[] = {0}; +static const unsigned char kat3637_persstr[] = { + 0x27, 0x03, 0xe1, 0xdc, 0xa9, 0x92, 0x69, 0x95, 0x70, 0x52, 0x29, 0xcc, + 0x8a, 0x8c, 0x9d, 0x95, 0x8b, 0xcd, 0xbf, 0xd5, 0xf3, 0xe0, 0x9e, 0xeb, + 0x34, 0x9b, 0x51, 0x35, 0x68, 0x6a, 0xee, 0xd1, +}; +static const unsigned char kat3637_entropyinpr1[] = { + 0x24, 0x1e, 0x8f, 0xe2, 0xd6, 0xde, 0x5e, 0xfb, 0x65, 0x09, 0x14, 0x4c, + 0x8d, 0xba, 0x00, 0xa5, 0x82, 0xd1, 0xae, 0xbf, 0xab, 0xd3, 0x06, 0x05, + 0x27, 0x47, 0xfc, 0x31, 0x1d, 0x7c, 0x5a, 0x56, +}; +static const unsigned char kat3637_addinpr1[] = {0}; +static const unsigned char kat3637_entropyinpr2[] = { + 0xa2, 0xc1, 0x00, 0xda, 0x70, 0xd8, 0x65, 0x9d, 0x94, 0xa4, 0xd6, 0xa0, + 0xf1, 0x05, 0x94, 0xc8, 0x41, 0x2c, 0x97, 0x71, 0x68, 0xdf, 0x24, 0x2a, + 0x35, 0xd5, 0xc2, 0x60, 0x0a, 0x47, 0x08, 0x4b, +}; +static const unsigned char kat3637_addinpr2[] = {0}; +static const unsigned char kat3637_retbits[] = { + 0x48, 0x46, 0x05, 0x43, 0xd0, 0x8b, 0x33, 0x31, 0xf0, 0xc7, 0xbc, 0xf7, + 0x86, 0xbe, 0x06, 0xa2, 0x76, 0xef, 0xc7, 0x57, 0xbe, 0xdc, 0xe0, 0xf4, + 0x28, 0x32, 0x3d, 0x54, 0x20, 0x69, 0x31, 0xf1, 0x8c, 0x3c, 0x7c, 0x60, + 0x6c, 0x0f, 0xf8, 0xe6, 0x73, 0xf3, 0xd1, 0x36, 0x7c, 0x7d, 0x50, 0xdb, + 0x2e, 0xd0, 0x02, 0x12, 0x0f, 0xf0, 0x56, 0x23, 0xd2, 0xde, 0xdd, 0xd0, + 0x37, 0xc1, 0x25, 0xa4, +}; +static const struct drbg_kat_pr_true kat3637_t = { + 6, kat3637_entropyin, kat3637_nonce, kat3637_persstr, + kat3637_entropyinpr1, kat3637_addinpr1, kat3637_entropyinpr2, + kat3637_addinpr2, kat3637_retbits +}; +static const struct drbg_kat kat3637 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3637_t +}; + +static const unsigned char kat3638_entropyin[] = { + 0xf5, 0x77, 0x1e, 0xea, 0xcd, 0xde, 0xf0, 0xc6, 0xcb, 0xfa, 0xc5, 0xac, + 0x42, 0x85, 0x20, 0x5f, 0x11, 0x0f, 0xd6, 0xa8, 0x17, 0x4a, 0xd4, 0x57, + 0x48, 0xa8, 0x63, 0x3a, 0x28, 0xc8, 0x5e, 0xc2, +}; +static const unsigned char kat3638_nonce[] = {0}; +static const unsigned char kat3638_persstr[] = { + 0x9c, 0xa4, 0xb8, 0xe6, 0xcd, 0xec, 0x1e, 0xcd, 0x95, 0x46, 0x50, 0x85, + 0x42, 0xc8, 0x49, 0x36, 0xff, 0x2a, 0xa1, 0xa4, 0xda, 0xb9, 0x69, 0x61, + 0x31, 0x39, 0xc0, 0x1e, 0x35, 0xf3, 0x6d, 0x71, +}; +static const unsigned char kat3638_entropyinpr1[] = { + 0x06, 0x21, 0xba, 0xbc, 0x5c, 0x0e, 0xa5, 0x27, 0xca, 0x7c, 0x8d, 0x42, + 0x33, 0x8e, 0x16, 0xb6, 0x11, 0x3b, 0x38, 0x7b, 0xa8, 0x88, 0xa6, 0xc1, + 0x27, 0x79, 0xcc, 0x12, 0x75, 0x61, 0xa1, 0x48, +}; +static const unsigned char kat3638_addinpr1[] = {0}; +static const unsigned char kat3638_entropyinpr2[] = { + 0x67, 0x2d, 0xf1, 0xd5, 0x85, 0x10, 0xc0, 0x16, 0x91, 0x3f, 0xc6, 0xc4, + 0x27, 0x71, 0x27, 0x3f, 0x7c, 0xba, 0xee, 0xf1, 0x99, 0x3d, 0xba, 0xbc, + 0xd6, 0xcc, 0xa2, 0x67, 0x58, 0xbd, 0xb7, 0xdf, +}; +static const unsigned char kat3638_addinpr2[] = {0}; +static const unsigned char kat3638_retbits[] = { + 0x03, 0x7a, 0x03, 0x05, 0x53, 0x2b, 0x6b, 0xd2, 0xa5, 0x10, 0x57, 0x96, + 0x2f, 0x23, 0xdb, 0xfd, 0x46, 0x60, 0xbe, 0x8e, 0x5b, 0x7a, 0x44, 0x8b, + 0x11, 0x68, 0xbe, 0x3b, 0xf8, 0x59, 0x8a, 0x30, 0x1f, 0xb5, 0x17, 0xa4, + 0x71, 0x4b, 0x78, 0x26, 0x16, 0x2f, 0xc0, 0xfc, 0xda, 0xe0, 0x88, 0x00, + 0xe9, 0x67, 0xf6, 0x38, 0xff, 0x1a, 0xd1, 0xda, 0x39, 0x28, 0x2d, 0x34, + 0x54, 0xd9, 0x30, 0x75, +}; +static const struct drbg_kat_pr_true kat3638_t = { + 7, kat3638_entropyin, kat3638_nonce, kat3638_persstr, + kat3638_entropyinpr1, kat3638_addinpr1, kat3638_entropyinpr2, + kat3638_addinpr2, kat3638_retbits +}; +static const struct drbg_kat kat3638 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3638_t +}; + +static const unsigned char kat3639_entropyin[] = { + 0x7a, 0x93, 0x65, 0xeb, 0xb4, 0x8f, 0xdd, 0x83, 0x80, 0x91, 0x67, 0xcb, + 0x2b, 0xfe, 0xbc, 0x37, 0xb6, 0x9b, 0x34, 0x59, 0x5b, 0x2f, 0x8d, 0x81, + 0xcf, 0xf2, 0x92, 0x4a, 0x70, 0xe3, 0x00, 0xd5, +}; +static const unsigned char kat3639_nonce[] = {0}; +static const unsigned char kat3639_persstr[] = { + 0x0f, 0x53, 0x39, 0x37, 0x85, 0x7d, 0xc9, 0xf9, 0x7f, 0xef, 0xa1, 0x42, + 0xc9, 0x54, 0x45, 0xb4, 0x84, 0xe1, 0xf2, 0x59, 0xa4, 0x88, 0xe9, 0xfa, + 0x38, 0xa4, 0x6e, 0x49, 0xd6, 0x93, 0xc4, 0xb6, +}; +static const unsigned char kat3639_entropyinpr1[] = { + 0x95, 0x4e, 0x64, 0xb6, 0xf4, 0xf1, 0xd7, 0xe0, 0x13, 0x5e, 0xb2, 0xa9, + 0x17, 0x46, 0x12, 0xd2, 0x31, 0x11, 0x32, 0x9c, 0x00, 0xbd, 0xed, 0x4c, + 0xec, 0xf6, 0xb2, 0xb2, 0xfd, 0xfa, 0xd1, 0x45, +}; +static const unsigned char kat3639_addinpr1[] = {0}; +static const unsigned char kat3639_entropyinpr2[] = { + 0xe6, 0x49, 0x57, 0x28, 0xcb, 0x28, 0xb8, 0xf6, 0x4b, 0x20, 0x8a, 0xfa, + 0x9e, 0x10, 0x12, 0xf0, 0x61, 0xc7, 0x90, 0xd2, 0x85, 0x66, 0x3f, 0x5c, + 0xf0, 0x76, 0x0c, 0x9f, 0x7c, 0x4b, 0xd3, 0x2f, +}; +static const unsigned char kat3639_addinpr2[] = {0}; +static const unsigned char kat3639_retbits[] = { + 0x03, 0x5c, 0x19, 0x39, 0x6d, 0x60, 0x3b, 0x52, 0x22, 0x2c, 0x16, 0xaf, + 0x6c, 0x6b, 0xc1, 0xc0, 0x7a, 0x1a, 0x51, 0x8f, 0x57, 0x8b, 0x59, 0x94, + 0x3f, 0xfa, 0xd7, 0x3c, 0xa1, 0x49, 0x48, 0xb7, 0xa8, 0xdd, 0xe1, 0x17, + 0xe5, 0xc5, 0x71, 0x50, 0x6d, 0x57, 0xfd, 0x08, 0xe3, 0xa0, 0x67, 0xa2, + 0xae, 0x3b, 0xde, 0x22, 0x40, 0xc2, 0x39, 0x9f, 0x16, 0x0c, 0x5c, 0xc5, + 0xa2, 0xf5, 0xd5, 0x82, +}; +static const struct drbg_kat_pr_true kat3639_t = { + 8, kat3639_entropyin, kat3639_nonce, kat3639_persstr, + kat3639_entropyinpr1, kat3639_addinpr1, kat3639_entropyinpr2, + kat3639_addinpr2, kat3639_retbits +}; +static const struct drbg_kat kat3639 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3639_t +}; + +static const unsigned char kat3640_entropyin[] = { + 0xbd, 0x10, 0xe4, 0xb2, 0x82, 0xc9, 0x8b, 0x6c, 0x2e, 0x04, 0x51, 0x27, + 0x2a, 0x33, 0x2c, 0x24, 0xf5, 0x4a, 0x2a, 0x45, 0x24, 0x4e, 0x98, 0x89, + 0x42, 0x0a, 0x48, 0x78, 0x6f, 0x66, 0x2a, 0xed, +}; +static const unsigned char kat3640_nonce[] = {0}; +static const unsigned char kat3640_persstr[] = { + 0x95, 0x04, 0x72, 0xba, 0x4b, 0x3b, 0x69, 0x79, 0xba, 0x4d, 0x2a, 0x1a, + 0xd5, 0x1d, 0xb7, 0x73, 0x2e, 0xb3, 0x33, 0x7b, 0x28, 0x27, 0x0f, 0xdb, + 0x7f, 0x99, 0x01, 0x81, 0x44, 0x73, 0x4f, 0x72, +}; +static const unsigned char kat3640_entropyinpr1[] = { + 0x5a, 0x1c, 0xf5, 0xb5, 0x21, 0x2a, 0xe2, 0xa7, 0x76, 0xae, 0x4f, 0x68, + 0x8e, 0xa9, 0xe6, 0x12, 0x4f, 0x62, 0x4c, 0x81, 0x7b, 0x5e, 0x42, 0x9b, + 0x8c, 0xc2, 0xad, 0x73, 0x0c, 0xf2, 0x9f, 0x6e, +}; +static const unsigned char kat3640_addinpr1[] = {0}; +static const unsigned char kat3640_entropyinpr2[] = { + 0xfc, 0xca, 0x99, 0x6b, 0xf0, 0x11, 0xba, 0x13, 0x9b, 0x7b, 0xd0, 0x5e, + 0x31, 0xc5, 0x94, 0xd4, 0x59, 0x68, 0x5a, 0xa1, 0x43, 0xe0, 0xee, 0x46, + 0xd6, 0xdb, 0x0b, 0xa8, 0x58, 0x2a, 0x6f, 0xd6, +}; +static const unsigned char kat3640_addinpr2[] = {0}; +static const unsigned char kat3640_retbits[] = { + 0xe1, 0x76, 0x74, 0x17, 0x23, 0x97, 0x36, 0x90, 0x25, 0xd6, 0xb7, 0x81, + 0x1b, 0x69, 0xb6, 0xe6, 0x2d, 0xfb, 0x8a, 0xb9, 0x48, 0x52, 0xcc, 0x96, + 0xbd, 0xe1, 0x37, 0x1f, 0xce, 0xdb, 0xe5, 0xfe, 0x31, 0xa1, 0x15, 0x89, + 0xf4, 0xe5, 0x71, 0x83, 0xfb, 0x46, 0x88, 0x3d, 0x93, 0xc6, 0x47, 0xe3, + 0x6f, 0x70, 0xf8, 0xd5, 0xa5, 0x36, 0xf8, 0xfb, 0x0d, 0x42, 0x8d, 0xcf, + 0xd7, 0x72, 0x2e, 0x4e, +}; +static const struct drbg_kat_pr_true kat3640_t = { + 9, kat3640_entropyin, kat3640_nonce, kat3640_persstr, + kat3640_entropyinpr1, kat3640_addinpr1, kat3640_entropyinpr2, + kat3640_addinpr2, kat3640_retbits +}; +static const struct drbg_kat kat3640 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3640_t +}; + +static const unsigned char kat3641_entropyin[] = { + 0x90, 0x09, 0xb2, 0xd3, 0xb9, 0xef, 0x7f, 0xd1, 0xe9, 0x25, 0xd7, 0x5d, + 0x6a, 0xd0, 0x7d, 0x42, 0xe1, 0x65, 0x31, 0x01, 0x53, 0xed, 0x1e, 0xf9, + 0xe1, 0x28, 0x48, 0x94, 0xe0, 0xd1, 0x65, 0x75, +}; +static const unsigned char kat3641_nonce[] = {0}; +static const unsigned char kat3641_persstr[] = { + 0x06, 0xbd, 0x36, 0x97, 0x7e, 0x09, 0xcc, 0x13, 0xd7, 0xc9, 0xed, 0xc9, + 0xa2, 0x85, 0x04, 0x3f, 0x7c, 0x00, 0x57, 0x56, 0x10, 0xe9, 0xb9, 0x5f, + 0xd3, 0x75, 0x4a, 0x4b, 0x7c, 0x56, 0x1f, 0xb7, +}; +static const unsigned char kat3641_entropyinpr1[] = { + 0x13, 0xf8, 0x64, 0x1a, 0x1d, 0x9c, 0xd5, 0x09, 0x66, 0xb4, 0xff, 0xf6, + 0xf2, 0xa5, 0xa9, 0xf6, 0x7a, 0xef, 0xa8, 0xd7, 0xb5, 0xcb, 0x52, 0x7d, + 0x3b, 0x73, 0x33, 0x8a, 0xea, 0x77, 0x3e, 0xe1, +}; +static const unsigned char kat3641_addinpr1[] = {0}; +static const unsigned char kat3641_entropyinpr2[] = { + 0x46, 0x45, 0xaa, 0x5e, 0xbb, 0x41, 0xf2, 0x73, 0x80, 0x32, 0x81, 0x61, + 0x86, 0x4c, 0xca, 0x36, 0x05, 0x5c, 0x87, 0x13, 0x56, 0x31, 0x6b, 0xf3, + 0x77, 0x3d, 0x35, 0x68, 0x7f, 0xe7, 0x28, 0x74, +}; +static const unsigned char kat3641_addinpr2[] = {0}; +static const unsigned char kat3641_retbits[] = { + 0xcb, 0xed, 0xcc, 0xaa, 0x88, 0xb2, 0x2e, 0x39, 0xfb, 0x0e, 0x14, 0xbf, + 0x15, 0xdc, 0x05, 0xe4, 0xe1, 0xb7, 0x00, 0x2f, 0xa0, 0xcf, 0xfe, 0x78, + 0x03, 0xe3, 0xf6, 0xbc, 0xf6, 0xa0, 0x3f, 0x3f, 0xaa, 0x51, 0xce, 0x5b, + 0x3c, 0xcb, 0x0d, 0x34, 0x15, 0x33, 0xd3, 0x35, 0xe2, 0x0f, 0x9f, 0x71, + 0xe9, 0x0f, 0x83, 0xfe, 0xf0, 0x6e, 0xcf, 0xe9, 0x3e, 0xd0, 0x56, 0xf5, + 0xd6, 0x85, 0x13, 0x06, +}; +static const struct drbg_kat_pr_true kat3641_t = { + 10, kat3641_entropyin, kat3641_nonce, kat3641_persstr, + kat3641_entropyinpr1, kat3641_addinpr1, kat3641_entropyinpr2, + kat3641_addinpr2, kat3641_retbits +}; +static const struct drbg_kat kat3641 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3641_t +}; + +static const unsigned char kat3642_entropyin[] = { + 0x87, 0xe5, 0x8c, 0x3c, 0x91, 0xae, 0x09, 0x35, 0xb7, 0x93, 0x5d, 0x2d, + 0x0a, 0x85, 0x5e, 0x79, 0x53, 0x27, 0x06, 0x22, 0x38, 0x18, 0x0f, 0x20, + 0xb0, 0x2f, 0x9c, 0x9c, 0x86, 0x1c, 0xbc, 0x33, +}; +static const unsigned char kat3642_nonce[] = {0}; +static const unsigned char kat3642_persstr[] = { + 0x6d, 0xac, 0xec, 0x09, 0xcc, 0x40, 0x7d, 0xdf, 0x54, 0x5c, 0x4d, 0x54, + 0xc7, 0x7e, 0xfd, 0x71, 0x2f, 0x65, 0xbe, 0x8b, 0xa5, 0xec, 0xbc, 0x9f, + 0xa6, 0xbd, 0xf2, 0x92, 0x43, 0xee, 0xd7, 0x2e, +}; +static const unsigned char kat3642_entropyinpr1[] = { + 0x28, 0xc5, 0x69, 0x1d, 0x0c, 0x0f, 0xf0, 0xd8, 0x34, 0xcb, 0x0c, 0x85, + 0xa8, 0x2f, 0xe5, 0x61, 0xf4, 0x08, 0x03, 0xf6, 0x3b, 0xeb, 0x3e, 0x74, + 0x02, 0x15, 0xe5, 0xd5, 0x08, 0x9f, 0xc5, 0x54, +}; +static const unsigned char kat3642_addinpr1[] = {0}; +static const unsigned char kat3642_entropyinpr2[] = { + 0xfd, 0x22, 0x32, 0x43, 0x69, 0xfd, 0x30, 0xe2, 0xf4, 0x75, 0x53, 0xc0, + 0x12, 0xce, 0x2c, 0x46, 0xfd, 0x40, 0xdf, 0x5f, 0xcd, 0xd7, 0x37, 0xbf, + 0x26, 0x6c, 0xd2, 0x0b, 0xcd, 0xc2, 0x0a, 0x98, +}; +static const unsigned char kat3642_addinpr2[] = {0}; +static const unsigned char kat3642_retbits[] = { + 0x11, 0x6b, 0xd7, 0xab, 0x40, 0x30, 0x37, 0x9c, 0xd6, 0xf5, 0x0e, 0x85, + 0xa0, 0x41, 0x82, 0x77, 0x52, 0x92, 0xfa, 0x96, 0x19, 0xc3, 0x8b, 0x74, + 0x18, 0xa1, 0x9b, 0x8e, 0x78, 0x55, 0xf2, 0x9e, 0xff, 0xfd, 0xf7, 0xa2, + 0xb8, 0xb1, 0xd9, 0xd3, 0xd9, 0x6e, 0xa8, 0x5a, 0x6d, 0x56, 0x30, 0x20, + 0x14, 0xdd, 0x3b, 0xcb, 0xe4, 0x01, 0xad, 0xa5, 0xb0, 0xe3, 0xcf, 0x2f, + 0x66, 0xdc, 0xe9, 0xcd, +}; +static const struct drbg_kat_pr_true kat3642_t = { + 11, kat3642_entropyin, kat3642_nonce, kat3642_persstr, + kat3642_entropyinpr1, kat3642_addinpr1, kat3642_entropyinpr2, + kat3642_addinpr2, kat3642_retbits +}; +static const struct drbg_kat kat3642 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3642_t +}; + +static const unsigned char kat3643_entropyin[] = { + 0xf3, 0x29, 0x1f, 0x1d, 0x5f, 0xa4, 0x7a, 0xbf, 0x19, 0x18, 0x41, 0x6a, + 0x2c, 0xb7, 0x8b, 0x24, 0x3e, 0x61, 0x4f, 0x88, 0x3b, 0xda, 0x2a, 0xfc, + 0x10, 0xff, 0xc1, 0xcc, 0x7f, 0x7f, 0x06, 0xa8, +}; +static const unsigned char kat3643_nonce[] = {0}; +static const unsigned char kat3643_persstr[] = { + 0x85, 0xfa, 0xcc, 0x57, 0x1d, 0x2c, 0x6e, 0xb2, 0x57, 0x43, 0x7e, 0x1d, + 0x3b, 0x77, 0xb5, 0xfb, 0xa4, 0xa1, 0x25, 0x60, 0x64, 0x40, 0x18, 0x1b, + 0x83, 0x87, 0xf9, 0xa4, 0xfb, 0x1a, 0x7f, 0xbf, +}; +static const unsigned char kat3643_entropyinpr1[] = { + 0xc9, 0xcb, 0xe9, 0xf4, 0x1e, 0x2d, 0x81, 0xf9, 0x9c, 0xa6, 0x32, 0x7c, + 0xa6, 0x17, 0xca, 0xf8, 0x36, 0xb7, 0x35, 0x12, 0xd9, 0x6b, 0x1e, 0xdc, + 0x5a, 0xe5, 0xed, 0x56, 0xc0, 0x56, 0xca, 0xde, +}; +static const unsigned char kat3643_addinpr1[] = {0}; +static const unsigned char kat3643_entropyinpr2[] = { + 0x47, 0xeb, 0xfc, 0x44, 0x37, 0xf7, 0x69, 0xac, 0x29, 0x9f, 0x0d, 0x87, + 0x06, 0x9e, 0x5d, 0x60, 0x74, 0x42, 0x01, 0x13, 0x76, 0x1a, 0x9f, 0x9e, + 0x05, 0x38, 0x66, 0x58, 0x1e, 0x83, 0x67, 0x01, +}; +static const unsigned char kat3643_addinpr2[] = {0}; +static const unsigned char kat3643_retbits[] = { + 0x51, 0xe0, 0xb5, 0x4c, 0x10, 0x98, 0x84, 0xba, 0xec, 0xd1, 0x88, 0x4f, + 0x7b, 0xaf, 0xc8, 0x46, 0xac, 0xe2, 0x16, 0xb6, 0xfd, 0x97, 0xeb, 0x1c, + 0xa7, 0x0b, 0x56, 0x3e, 0x62, 0xc4, 0xa2, 0xf2, 0x2b, 0x55, 0x56, 0x11, + 0x52, 0xf3, 0x79, 0x32, 0x6e, 0xf2, 0x99, 0x9e, 0x97, 0x46, 0xf2, 0x50, + 0x43, 0xa0, 0x24, 0x02, 0xd3, 0xe4, 0x7b, 0x4a, 0x58, 0xe7, 0x47, 0xc2, + 0x22, 0xb7, 0xa0, 0x81, +}; +static const struct drbg_kat_pr_true kat3643_t = { + 12, kat3643_entropyin, kat3643_nonce, kat3643_persstr, + kat3643_entropyinpr1, kat3643_addinpr1, kat3643_entropyinpr2, + kat3643_addinpr2, kat3643_retbits +}; +static const struct drbg_kat kat3643 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3643_t +}; + +static const unsigned char kat3644_entropyin[] = { + 0xbc, 0xb5, 0x1b, 0xc0, 0xdf, 0xae, 0x0f, 0xb0, 0x4b, 0xf0, 0x8f, 0xac, + 0xe7, 0x36, 0x99, 0x81, 0xd9, 0xa7, 0x8b, 0xbc, 0xc0, 0xd3, 0xda, 0x2a, + 0x14, 0x42, 0xd8, 0xfe, 0xf7, 0x56, 0xc1, 0xc0, +}; +static const unsigned char kat3644_nonce[] = {0}; +static const unsigned char kat3644_persstr[] = { + 0x2c, 0x4e, 0x73, 0xad, 0x25, 0x97, 0xb0, 0x27, 0xdd, 0x04, 0xc6, 0x05, + 0x6d, 0xb1, 0x18, 0x9b, 0x7a, 0x0d, 0x8e, 0x9f, 0xec, 0xe5, 0x22, 0x37, + 0xcb, 0x7f, 0xc2, 0x51, 0x15, 0x09, 0xc4, 0xeb, +}; +static const unsigned char kat3644_entropyinpr1[] = { + 0xb7, 0x4a, 0x39, 0x2b, 0xe0, 0x91, 0xfe, 0x00, 0xeb, 0x6a, 0x65, 0x76, + 0xf0, 0x27, 0x07, 0x3a, 0x83, 0x83, 0x08, 0xf5, 0xa5, 0xae, 0xd7, 0xfd, + 0x0d, 0xb4, 0x7d, 0x66, 0x16, 0xcb, 0xec, 0x98, +}; +static const unsigned char kat3644_addinpr1[] = {0}; +static const unsigned char kat3644_entropyinpr2[] = { + 0xd3, 0x9a, 0x30, 0x7b, 0x95, 0x6d, 0x11, 0x83, 0xf7, 0x18, 0xbe, 0x7d, + 0x91, 0xa1, 0x18, 0x91, 0xdc, 0x3f, 0xee, 0x45, 0x65, 0x2e, 0xdb, 0x89, + 0x44, 0x9d, 0x97, 0x66, 0xfc, 0x85, 0xbb, 0x32, +}; +static const unsigned char kat3644_addinpr2[] = {0}; +static const unsigned char kat3644_retbits[] = { + 0x7c, 0x41, 0xad, 0xf9, 0x41, 0x65, 0x6c, 0xfb, 0x9f, 0x24, 0x40, 0x9d, + 0x6c, 0xc4, 0xd5, 0x78, 0xd4, 0x39, 0x30, 0xb3, 0xe2, 0x3e, 0xc8, 0x01, + 0xa5, 0x9c, 0x53, 0xd9, 0x99, 0x40, 0x1b, 0xc0, 0xcb, 0x3e, 0x5b, 0x87, + 0x97, 0xb2, 0x77, 0x0a, 0x8a, 0x8f, 0x51, 0xff, 0x59, 0x4b, 0x7b, 0x17, + 0xd9, 0xe6, 0x94, 0xd5, 0xe3, 0x66, 0x44, 0x50, 0x8d, 0x16, 0xcb, 0x25, + 0x54, 0x05, 0x7a, 0xdc, +}; +static const struct drbg_kat_pr_true kat3644_t = { + 13, kat3644_entropyin, kat3644_nonce, kat3644_persstr, + kat3644_entropyinpr1, kat3644_addinpr1, kat3644_entropyinpr2, + kat3644_addinpr2, kat3644_retbits +}; +static const struct drbg_kat kat3644 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3644_t +}; + +static const unsigned char kat3645_entropyin[] = { + 0x55, 0x65, 0x45, 0x7c, 0xf6, 0x0a, 0x3a, 0xff, 0x9e, 0xa6, 0xf3, 0xdc, + 0x62, 0x54, 0xa7, 0x6a, 0x08, 0x5f, 0xf8, 0x7f, 0x1d, 0xd1, 0x91, 0x27, + 0xb2, 0xae, 0xb3, 0xac, 0x50, 0xb8, 0xc3, 0x1e, +}; +static const unsigned char kat3645_nonce[] = {0}; +static const unsigned char kat3645_persstr[] = { + 0x71, 0x7c, 0x4d, 0xe3, 0x0c, 0x0a, 0xc7, 0xb8, 0x31, 0x80, 0x7c, 0xb1, + 0xfc, 0xf4, 0xab, 0x37, 0xf1, 0x73, 0x46, 0x83, 0xa7, 0x23, 0xd1, 0x83, + 0xfc, 0xfe, 0x5f, 0xc8, 0xa4, 0xc6, 0xc7, 0xe5, +}; +static const unsigned char kat3645_entropyinpr1[] = { + 0x9d, 0xfd, 0x31, 0xe3, 0xad, 0xc8, 0x22, 0xb6, 0x75, 0xc0, 0xa9, 0xc8, + 0x70, 0x2d, 0xf1, 0x2d, 0xe4, 0xc3, 0x35, 0x4c, 0xcd, 0xb5, 0x38, 0x9e, + 0xd4, 0x81, 0xd9, 0x10, 0xb3, 0xdb, 0xb5, 0x1a, +}; +static const unsigned char kat3645_addinpr1[] = {0}; +static const unsigned char kat3645_entropyinpr2[] = { + 0x2a, 0x1b, 0x15, 0x19, 0xd2, 0x2d, 0x40, 0xef, 0x4e, 0xc2, 0x3c, 0x6d, + 0x97, 0xdc, 0x14, 0x8c, 0xfe, 0x17, 0x1f, 0xb5, 0xf8, 0xb1, 0xc3, 0x05, + 0xec, 0x6d, 0x8e, 0x83, 0xa1, 0xef, 0x90, 0x64, +}; +static const unsigned char kat3645_addinpr2[] = {0}; +static const unsigned char kat3645_retbits[] = { + 0xac, 0x05, 0x45, 0x70, 0xb0, 0x81, 0xcf, 0x53, 0xb3, 0x9b, 0x0a, 0x2f, + 0xaa, 0x21, 0xee, 0x9b, 0x55, 0x4c, 0x05, 0xff, 0x90, 0x55, 0x84, 0x3a, + 0xc0, 0xeb, 0x90, 0x31, 0xd1, 0xde, 0x32, 0x47, 0x01, 0xad, 0x4c, 0xf2, + 0x87, 0x56, 0x23, 0xe0, 0xbf, 0x41, 0x84, 0xde, 0x4a, 0xea, 0x20, 0x07, + 0x0b, 0xe1, 0xcb, 0x58, 0x68, 0x80, 0xac, 0x87, 0xfb, 0xb7, 0xe4, 0x14, + 0xb4, 0xb1, 0x28, 0xd0, +}; +static const struct drbg_kat_pr_true kat3645_t = { + 14, kat3645_entropyin, kat3645_nonce, kat3645_persstr, + kat3645_entropyinpr1, kat3645_addinpr1, kat3645_entropyinpr2, + kat3645_addinpr2, kat3645_retbits +}; +static const struct drbg_kat kat3645 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3645_t +}; + +static const unsigned char kat3646_entropyin[] = { + 0xf6, 0x23, 0x91, 0x1b, 0xb7, 0xef, 0xe5, 0xf6, 0xc4, 0xe9, 0x69, 0x79, + 0x97, 0x24, 0xb3, 0x17, 0xd6, 0xaa, 0x21, 0x07, 0xa3, 0x56, 0xab, 0x6a, + 0x05, 0x14, 0x3e, 0xee, 0x99, 0xe6, 0x75, 0xb3, +}; +static const unsigned char kat3646_nonce[] = {0}; +static const unsigned char kat3646_persstr[] = { + 0x19, 0x73, 0x3e, 0xdb, 0xc2, 0x0b, 0xed, 0xc0, 0xbc, 0x26, 0x9c, 0x48, + 0x37, 0xa1, 0xa4, 0x71, 0x37, 0x7c, 0xfe, 0xb6, 0xcd, 0x60, 0x03, 0x9e, + 0x49, 0x44, 0xb3, 0x1a, 0xf7, 0x3b, 0xc4, 0xc0, +}; +static const unsigned char kat3646_entropyinpr1[] = { + 0x60, 0xa8, 0x09, 0xd6, 0x3f, 0x6d, 0x5e, 0xfe, 0xb4, 0x33, 0x5b, 0x81, + 0x9e, 0x1d, 0x0a, 0x06, 0xb7, 0xbe, 0x66, 0x87, 0x65, 0xca, 0x72, 0xf5, + 0x40, 0x49, 0x92, 0xa0, 0xe9, 0x0b, 0x7a, 0x70, +}; +static const unsigned char kat3646_addinpr1[] = { + 0x05, 0x91, 0xfe, 0xff, 0xa7, 0x7d, 0xe2, 0x23, 0xd6, 0xfb, 0x1a, 0x91, + 0x57, 0x9f, 0x76, 0x6c, 0x4c, 0x09, 0xf3, 0xe9, 0x54, 0x0d, 0x14, 0xfd, + 0x2e, 0xe9, 0x88, 0x94, 0xf7, 0xa8, 0x00, 0x53, +}; +static const unsigned char kat3646_entropyinpr2[] = { + 0x53, 0x0e, 0x7a, 0x6d, 0xfa, 0x63, 0x39, 0xaa, 0xa6, 0x66, 0x1b, 0xc4, + 0xfb, 0x13, 0xff, 0x1f, 0x35, 0x1c, 0x79, 0xe9, 0xd3, 0x41, 0x5e, 0x2d, + 0x0d, 0x57, 0x0b, 0x8f, 0x99, 0x07, 0xc8, 0xb4, +}; +static const unsigned char kat3646_addinpr2[] = { + 0xc5, 0xf7, 0xb2, 0x82, 0xa5, 0x16, 0xa2, 0xf8, 0x31, 0xd6, 0x68, 0xca, + 0x44, 0x48, 0x66, 0x2c, 0x92, 0x90, 0x7c, 0xbb, 0xfa, 0x9b, 0x90, 0xc3, + 0x74, 0x5e, 0xa2, 0xe7, 0x9b, 0x28, 0xec, 0x6d, +}; +static const unsigned char kat3646_retbits[] = { + 0xe1, 0x08, 0xb1, 0xbd, 0x65, 0x92, 0x8d, 0x80, 0x97, 0x19, 0x0c, 0x10, + 0x63, 0x21, 0xe9, 0xfc, 0xb3, 0xb9, 0x30, 0xef, 0x3b, 0x74, 0x42, 0x1e, + 0xd8, 0xe7, 0x08, 0x02, 0xd3, 0xf0, 0x6e, 0xbe, 0x73, 0x38, 0x94, 0x8c, + 0xbf, 0x08, 0xab, 0x91, 0xcd, 0xf7, 0x1d, 0xd3, 0x98, 0xdd, 0xc4, 0x75, + 0x2b, 0x6d, 0x3d, 0xbc, 0x26, 0x5f, 0xe8, 0x36, 0x58, 0x87, 0x83, 0xfb, + 0xdd, 0xd5, 0x09, 0xfb, +}; +static const struct drbg_kat_pr_true kat3646_t = { + 0, kat3646_entropyin, kat3646_nonce, kat3646_persstr, + kat3646_entropyinpr1, kat3646_addinpr1, kat3646_entropyinpr2, + kat3646_addinpr2, kat3646_retbits +}; +static const struct drbg_kat kat3646 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3646_t +}; + +static const unsigned char kat3647_entropyin[] = { + 0x15, 0x89, 0x5a, 0x61, 0xc6, 0x9c, 0x50, 0x70, 0x9b, 0x42, 0x54, 0xf3, + 0xa3, 0x83, 0x62, 0x3d, 0xfb, 0x54, 0xc2, 0x73, 0xb2, 0xdf, 0x38, 0x95, + 0x5f, 0xfd, 0x0c, 0xd1, 0x89, 0x1d, 0x3d, 0x97, +}; +static const unsigned char kat3647_nonce[] = {0}; +static const unsigned char kat3647_persstr[] = { + 0x9e, 0xbd, 0xe8, 0x23, 0xc9, 0xcf, 0x6f, 0x9b, 0x87, 0x46, 0xf9, 0x96, + 0xbc, 0xa3, 0xbc, 0xa9, 0x09, 0x38, 0xad, 0x89, 0xcc, 0x4d, 0xda, 0xb0, + 0xc0, 0x05, 0xdd, 0xef, 0x74, 0xff, 0x06, 0x5e, +}; +static const unsigned char kat3647_entropyinpr1[] = { + 0x37, 0xac, 0x0d, 0x2c, 0xb9, 0xfd, 0xc4, 0xd6, 0xf7, 0x20, 0x81, 0xca, + 0x31, 0x83, 0x1e, 0xb9, 0x64, 0x19, 0x79, 0x16, 0x57, 0x24, 0x26, 0xd4, + 0xc5, 0x98, 0xb3, 0xb2, 0xf0, 0x7e, 0x2d, 0xa2, +}; +static const unsigned char kat3647_addinpr1[] = { + 0xe5, 0xb5, 0x66, 0x8b, 0x1f, 0x83, 0xff, 0x61, 0x40, 0x74, 0xd0, 0xa7, + 0x97, 0xaf, 0x82, 0xb9, 0xfa, 0x16, 0x75, 0xaa, 0x8b, 0xe9, 0xc1, 0xd5, + 0x17, 0x10, 0x92, 0x04, 0xb5, 0xf0, 0xbf, 0xbf, +}; +static const unsigned char kat3647_entropyinpr2[] = { + 0x70, 0x7b, 0x53, 0x90, 0x3a, 0x0c, 0x18, 0x84, 0x56, 0x2c, 0x7c, 0x93, + 0x65, 0xef, 0xdd, 0xa0, 0x98, 0xc7, 0x3e, 0x97, 0x41, 0x67, 0x84, 0x7a, + 0x48, 0xce, 0x78, 0x51, 0xa3, 0xda, 0x7d, 0x00, +}; +static const unsigned char kat3647_addinpr2[] = { + 0x56, 0xeb, 0x51, 0xd2, 0x84, 0x35, 0xdd, 0x73, 0xf1, 0x0b, 0xba, 0xfb, + 0x1e, 0x92, 0xd2, 0x50, 0x8b, 0x7c, 0x56, 0xe2, 0xbb, 0x53, 0x81, 0xf5, + 0x91, 0xc6, 0x89, 0x8f, 0x3d, 0xbe, 0x3b, 0xc4, +}; +static const unsigned char kat3647_retbits[] = { + 0xe3, 0x80, 0x7a, 0x26, 0x52, 0x0e, 0xa2, 0x40, 0xb6, 0x95, 0x07, 0x69, + 0xea, 0x25, 0x0e, 0x26, 0xce, 0x05, 0xbe, 0x72, 0xa6, 0xf6, 0x87, 0x62, + 0xfd, 0x9b, 0x6e, 0x94, 0xe1, 0xa1, 0x7e, 0x07, 0x74, 0x47, 0x96, 0x82, + 0xa6, 0x66, 0x81, 0x33, 0x58, 0x9a, 0xa9, 0x56, 0x57, 0x2d, 0x15, 0xc3, + 0x2a, 0x51, 0x73, 0x37, 0xff, 0xcc, 0x8d, 0x9f, 0xf4, 0xa5, 0x3b, 0x6d, + 0xfa, 0x18, 0xb2, 0xb3, +}; +static const struct drbg_kat_pr_true kat3647_t = { + 1, kat3647_entropyin, kat3647_nonce, kat3647_persstr, + kat3647_entropyinpr1, kat3647_addinpr1, kat3647_entropyinpr2, + kat3647_addinpr2, kat3647_retbits +}; +static const struct drbg_kat kat3647 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3647_t +}; + +static const unsigned char kat3648_entropyin[] = { + 0xb2, 0xcf, 0x89, 0xb4, 0xb2, 0xf4, 0xbd, 0x78, 0x90, 0x48, 0x48, 0x8d, + 0x75, 0x02, 0x8b, 0xde, 0x40, 0x07, 0xfe, 0x3d, 0x0b, 0xc6, 0x1b, 0xd2, + 0x18, 0x01, 0xe2, 0x63, 0x42, 0xdf, 0x88, 0x67, +}; +static const unsigned char kat3648_nonce[] = {0}; +static const unsigned char kat3648_persstr[] = { + 0x85, 0x89, 0xa9, 0x5a, 0x91, 0xca, 0xf3, 0xe7, 0xd3, 0xcc, 0x50, 0xad, + 0xfb, 0xc9, 0x5c, 0x79, 0xad, 0xe1, 0xbc, 0x40, 0x7f, 0x99, 0xe5, 0x2b, + 0x07, 0x48, 0xf0, 0x59, 0x3e, 0x88, 0xb5, 0x4b, +}; +static const unsigned char kat3648_entropyinpr1[] = { + 0x6a, 0xa3, 0xaa, 0xb9, 0xe8, 0x52, 0xb6, 0x38, 0xa1, 0xeb, 0x5d, 0xb8, + 0x66, 0x9b, 0xd3, 0xf5, 0x8d, 0xd4, 0x51, 0xe0, 0xf2, 0x41, 0xfa, 0x5e, + 0x22, 0xea, 0xed, 0x9e, 0x89, 0xc9, 0xf2, 0xf6, +}; +static const unsigned char kat3648_addinpr1[] = { + 0xa4, 0x10, 0x85, 0xc7, 0xe9, 0x3e, 0x84, 0x74, 0x77, 0x2e, 0x53, 0x8d, + 0x10, 0x30, 0xb7, 0x40, 0xd8, 0x3c, 0x2c, 0x40, 0xdb, 0x46, 0xe6, 0xac, + 0x7e, 0xe8, 0x95, 0x0f, 0xbd, 0xa1, 0xc0, 0x92, +}; +static const unsigned char kat3648_entropyinpr2[] = { + 0x80, 0x1b, 0x37, 0x9f, 0xcd, 0x5e, 0xe8, 0xb9, 0x8d, 0x40, 0x3b, 0xd8, + 0xae, 0xb1, 0x3f, 0xe5, 0x40, 0x26, 0x96, 0x06, 0x3c, 0xb1, 0x3e, 0x48, + 0x48, 0xf2, 0x0f, 0x5f, 0xa7, 0x43, 0x37, 0x0a, +}; +static const unsigned char kat3648_addinpr2[] = { + 0x26, 0x03, 0x6f, 0x2f, 0xce, 0x86, 0x63, 0x45, 0x8d, 0x28, 0x2a, 0xe7, + 0x15, 0xc3, 0x93, 0x3d, 0x4b, 0x3b, 0x76, 0x70, 0xbb, 0x61, 0x5f, 0x78, + 0x6c, 0x2c, 0x61, 0x57, 0x1a, 0x6f, 0xba, 0x9c, +}; +static const unsigned char kat3648_retbits[] = { + 0xbe, 0xa5, 0x5b, 0xcb, 0x1b, 0xc6, 0x10, 0x15, 0xca, 0x96, 0x7c, 0x5e, + 0x92, 0x88, 0x65, 0x55, 0xec, 0xcf, 0x87, 0xc6, 0x89, 0x7c, 0xe1, 0x06, + 0x8d, 0x74, 0x80, 0x7c, 0x70, 0x00, 0x98, 0xbb, 0x91, 0x98, 0x9d, 0xc1, + 0x24, 0x1c, 0xcd, 0x2c, 0x80, 0x77, 0x42, 0x66, 0x01, 0xa7, 0x20, 0x27, + 0xb2, 0x33, 0x48, 0x06, 0x46, 0xd7, 0xe9, 0x70, 0x52, 0xf0, 0x02, 0xa4, + 0xa4, 0x01, 0x88, 0x44, +}; +static const struct drbg_kat_pr_true kat3648_t = { + 2, kat3648_entropyin, kat3648_nonce, kat3648_persstr, + kat3648_entropyinpr1, kat3648_addinpr1, kat3648_entropyinpr2, + kat3648_addinpr2, kat3648_retbits +}; +static const struct drbg_kat kat3648 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3648_t +}; + +static const unsigned char kat3649_entropyin[] = { + 0x02, 0x4a, 0xcd, 0x77, 0xfa, 0x20, 0x14, 0x13, 0xde, 0x7f, 0xba, 0xe0, + 0x80, 0xd4, 0xdc, 0xc4, 0xd3, 0x7e, 0x61, 0xa8, 0xec, 0x5a, 0x4a, 0x8b, + 0xe1, 0x4d, 0xcb, 0x43, 0x01, 0x86, 0x73, 0x01, +}; +static const unsigned char kat3649_nonce[] = {0}; +static const unsigned char kat3649_persstr[] = { + 0xbb, 0xe7, 0xc2, 0x75, 0x37, 0x47, 0x27, 0x27, 0xfe, 0xb9, 0xdc, 0x27, + 0x89, 0x8a, 0x2b, 0x0b, 0x44, 0x2b, 0xe0, 0x0c, 0xde, 0xd8, 0x7d, 0x14, + 0xcb, 0x81, 0xce, 0xc2, 0x84, 0x9e, 0xf1, 0xe9, +}; +static const unsigned char kat3649_entropyinpr1[] = { + 0xb3, 0x3c, 0x88, 0xa5, 0x8d, 0x58, 0xb4, 0x29, 0x96, 0x1c, 0xc9, 0x8d, + 0x14, 0x15, 0x22, 0xf3, 0x26, 0xe5, 0xb5, 0x1a, 0xc2, 0x4a, 0x17, 0xae, + 0xcd, 0xce, 0x67, 0xfd, 0x0c, 0xd0, 0xac, 0x5e, +}; +static const unsigned char kat3649_addinpr1[] = { + 0xa7, 0xc9, 0xa8, 0x08, 0x01, 0xdc, 0x9c, 0xc3, 0xd6, 0x1c, 0x21, 0x93, + 0xc2, 0x50, 0x5c, 0xd2, 0x94, 0x98, 0x82, 0x34, 0x93, 0xe6, 0x8f, 0x3b, + 0xd8, 0x5e, 0xde, 0xa2, 0x56, 0x87, 0x7f, 0xde, +}; +static const unsigned char kat3649_entropyinpr2[] = { + 0x7c, 0x88, 0x8a, 0xa3, 0x32, 0x1a, 0x1c, 0xfe, 0x25, 0x4a, 0x3f, 0x70, + 0xe1, 0x44, 0x35, 0x95, 0xf8, 0x31, 0x89, 0xc9, 0x06, 0xf0, 0x25, 0xe0, + 0x5b, 0x54, 0x04, 0x63, 0x36, 0x4e, 0xe5, 0x09, +}; +static const unsigned char kat3649_addinpr2[] = { + 0x70, 0xe9, 0x97, 0xdf, 0x10, 0xf6, 0xb9, 0xa2, 0x17, 0xcd, 0xa9, 0xa8, + 0xd7, 0xa0, 0xfd, 0xb6, 0x6e, 0x57, 0xc6, 0x2c, 0x0e, 0x93, 0x83, 0xe3, + 0x04, 0x1f, 0xbf, 0xf5, 0x72, 0x5f, 0x9e, 0xc4, +}; +static const unsigned char kat3649_retbits[] = { + 0x85, 0xce, 0x70, 0x84, 0x7d, 0x95, 0x53, 0xa1, 0xfa, 0x5f, 0x15, 0x91, + 0x3f, 0x80, 0x21, 0xf7, 0xf5, 0xd6, 0xdd, 0x56, 0x5b, 0x7e, 0x72, 0x1e, + 0x2c, 0x09, 0x0f, 0x66, 0x20, 0x7d, 0x22, 0x8f, 0x83, 0x24, 0x70, 0x30, + 0x0a, 0x01, 0xcb, 0xe6, 0xb1, 0x3e, 0x23, 0x62, 0xd8, 0x4e, 0x3a, 0x0d, + 0x3d, 0xb2, 0xfd, 0xd4, 0x36, 0x2f, 0x55, 0x4b, 0x23, 0x2d, 0x5a, 0xa4, + 0xf6, 0x79, 0x57, 0x7d, +}; +static const struct drbg_kat_pr_true kat3649_t = { + 3, kat3649_entropyin, kat3649_nonce, kat3649_persstr, + kat3649_entropyinpr1, kat3649_addinpr1, kat3649_entropyinpr2, + kat3649_addinpr2, kat3649_retbits +}; +static const struct drbg_kat kat3649 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3649_t +}; + +static const unsigned char kat3650_entropyin[] = { + 0x80, 0x13, 0x7b, 0xbd, 0xf6, 0xeb, 0xb0, 0x5e, 0xa1, 0xbd, 0x8e, 0x80, + 0x79, 0xc6, 0xed, 0x67, 0x3f, 0x18, 0x35, 0x47, 0x10, 0x3c, 0xcc, 0xba, + 0xf3, 0x60, 0xb2, 0xf2, 0x17, 0xb5, 0x89, 0xe8, +}; +static const unsigned char kat3650_nonce[] = {0}; +static const unsigned char kat3650_persstr[] = { + 0x9b, 0x73, 0xaa, 0x2d, 0x08, 0x04, 0x77, 0xc5, 0xc6, 0x44, 0x1b, 0x11, + 0xe9, 0x3b, 0xdd, 0x03, 0xeb, 0x6d, 0xba, 0xd2, 0xeb, 0xf1, 0xf4, 0x93, + 0xef, 0x9e, 0xab, 0xd8, 0x6d, 0x34, 0xe1, 0x15, +}; +static const unsigned char kat3650_entropyinpr1[] = { + 0x60, 0xb1, 0x5d, 0x6f, 0xe5, 0x8a, 0xd7, 0xb8, 0x00, 0x50, 0x50, 0x41, + 0xbb, 0x8e, 0xa3, 0x8d, 0x0d, 0x08, 0xed, 0xf6, 0xf4, 0xee, 0x6a, 0x6f, + 0xfa, 0x01, 0x09, 0x08, 0xc0, 0x75, 0x60, 0x77, +}; +static const unsigned char kat3650_addinpr1[] = { + 0x67, 0x9b, 0x2c, 0xc3, 0x7c, 0x0b, 0x6a, 0xf5, 0xa0, 0x00, 0xe7, 0x7b, + 0xbc, 0x4b, 0x03, 0x0d, 0xd7, 0xd9, 0x29, 0xa3, 0x3f, 0xd7, 0xd1, 0xf5, + 0x2e, 0x8f, 0x5d, 0xac, 0x6f, 0x1a, 0x3c, 0xe8, +}; +static const unsigned char kat3650_entropyinpr2[] = { + 0x41, 0x10, 0x8a, 0x5f, 0x54, 0x0a, 0x40, 0xa8, 0xf9, 0x43, 0xfe, 0xf5, + 0x72, 0xac, 0x3a, 0xeb, 0x48, 0x06, 0xac, 0x6a, 0xdd, 0xde, 0x77, 0x6c, + 0x2c, 0x0d, 0x31, 0x87, 0xf9, 0xe4, 0x6e, 0x33, +}; +static const unsigned char kat3650_addinpr2[] = { + 0xe4, 0xb5, 0x26, 0x13, 0x12, 0x63, 0x8d, 0x00, 0x7c, 0x3a, 0x5e, 0x27, + 0x56, 0x04, 0xd8, 0xc8, 0xce, 0xc3, 0xa0, 0x55, 0xc4, 0xb1, 0xf1, 0x1d, + 0xf6, 0x2f, 0x6d, 0x4e, 0x87, 0xdd, 0x8e, 0x35, +}; +static const unsigned char kat3650_retbits[] = { + 0xbd, 0x90, 0xe0, 0x11, 0x22, 0x17, 0x83, 0xdb, 0x4b, 0xae, 0x48, 0x61, + 0x61, 0x5f, 0x15, 0x4c, 0x59, 0x5c, 0x3b, 0xb6, 0x3b, 0x75, 0x92, 0xbf, + 0x49, 0x58, 0x80, 0xb6, 0x0f, 0xd0, 0x43, 0x4f, 0xfc, 0x0c, 0xaf, 0xca, + 0x0f, 0xda, 0x24, 0x90, 0xe5, 0x87, 0xa2, 0x1c, 0xff, 0x07, 0xd0, 0x94, + 0x1b, 0x3a, 0x06, 0x0b, 0x68, 0x54, 0x84, 0x06, 0xc5, 0xc6, 0xb9, 0x30, + 0x04, 0x84, 0x7c, 0xf6, +}; +static const struct drbg_kat_pr_true kat3650_t = { + 4, kat3650_entropyin, kat3650_nonce, kat3650_persstr, + kat3650_entropyinpr1, kat3650_addinpr1, kat3650_entropyinpr2, + kat3650_addinpr2, kat3650_retbits +}; +static const struct drbg_kat kat3650 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3650_t +}; + +static const unsigned char kat3651_entropyin[] = { + 0x2c, 0x6e, 0x01, 0x0b, 0xfd, 0x6f, 0x91, 0x6e, 0x94, 0xa6, 0x5a, 0xb8, + 0xa9, 0x7d, 0x53, 0x56, 0xb6, 0xd0, 0x6a, 0x9d, 0x36, 0xf0, 0x5b, 0x67, + 0x78, 0x7f, 0x27, 0xd5, 0xa5, 0x49, 0x02, 0x67, +}; +static const unsigned char kat3651_nonce[] = {0}; +static const unsigned char kat3651_persstr[] = { + 0x05, 0x5a, 0x7c, 0x90, 0x08, 0xf7, 0x76, 0x43, 0x46, 0xaf, 0x60, 0xae, + 0xc6, 0xa8, 0x18, 0xfa, 0xab, 0xac, 0x6a, 0xa5, 0x1b, 0x02, 0xb3, 0xdb, + 0x06, 0x5f, 0x0e, 0xe1, 0x5f, 0xd9, 0x72, 0xb0, +}; +static const unsigned char kat3651_entropyinpr1[] = { + 0x7e, 0x34, 0xa9, 0x35, 0x3f, 0x2f, 0x2d, 0x8a, 0x56, 0x55, 0x6e, 0xa7, + 0x3a, 0x1b, 0xa0, 0x71, 0xf3, 0x5e, 0xe7, 0xb4, 0xc2, 0x4c, 0x33, 0x78, + 0x1d, 0x6b, 0xbf, 0x62, 0x78, 0xae, 0x49, 0xe4, +}; +static const unsigned char kat3651_addinpr1[] = { + 0x88, 0xd6, 0x5a, 0x5e, 0xf8, 0xf6, 0x52, 0xbd, 0x51, 0xec, 0x2f, 0xef, + 0x35, 0xfb, 0xba, 0x9f, 0x3f, 0x6d, 0x02, 0x41, 0x5c, 0xb3, 0x96, 0xf6, + 0x64, 0xc9, 0x00, 0xad, 0x66, 0xd1, 0x2b, 0xe6, +}; +static const unsigned char kat3651_entropyinpr2[] = { + 0x4d, 0x46, 0x07, 0xac, 0x38, 0x63, 0x08, 0x15, 0xbc, 0xda, 0x32, 0xbb, + 0x95, 0xe2, 0xe2, 0x2f, 0xc3, 0xb5, 0x83, 0xe4, 0xe1, 0x44, 0xdb, 0xf1, + 0x0d, 0x63, 0x43, 0xdf, 0x7c, 0x0a, 0x4d, 0x65, +}; +static const unsigned char kat3651_addinpr2[] = { + 0x75, 0x5a, 0xf3, 0x19, 0x10, 0x9d, 0xba, 0xe8, 0xea, 0x94, 0x02, 0x18, + 0x74, 0x24, 0x9d, 0xe4, 0x1e, 0xfa, 0x7f, 0x56, 0x9c, 0x8a, 0x00, 0xba, + 0xac, 0xdc, 0x3f, 0x1f, 0xdb, 0xcc, 0x44, 0xba, +}; +static const unsigned char kat3651_retbits[] = { + 0xb3, 0xf9, 0xb3, 0x9a, 0x15, 0xed, 0x7e, 0x49, 0x1e, 0x6e, 0xad, 0xa8, + 0x3d, 0xe8, 0x8f, 0xfb, 0x33, 0x4c, 0xf5, 0x6c, 0x9d, 0xe2, 0xa8, 0x65, + 0xd9, 0xaa, 0x3a, 0xd2, 0x41, 0xe3, 0xe2, 0xef, 0xd7, 0x2f, 0x15, 0x98, + 0xe2, 0x1b, 0xc0, 0xe2, 0x65, 0x87, 0x3d, 0x7a, 0x70, 0xf8, 0x6e, 0x3a, + 0x40, 0xa7, 0xd8, 0x15, 0x9a, 0x9a, 0x98, 0xb4, 0x74, 0x09, 0xd8, 0xdd, + 0xcd, 0x44, 0x34, 0xc7, +}; +static const struct drbg_kat_pr_true kat3651_t = { + 5, kat3651_entropyin, kat3651_nonce, kat3651_persstr, + kat3651_entropyinpr1, kat3651_addinpr1, kat3651_entropyinpr2, + kat3651_addinpr2, kat3651_retbits +}; +static const struct drbg_kat kat3651 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3651_t +}; + +static const unsigned char kat3652_entropyin[] = { + 0xd5, 0x42, 0x66, 0xc7, 0x38, 0xc1, 0xd9, 0xe9, 0x57, 0xf8, 0x26, 0x06, + 0xdf, 0xdd, 0x59, 0xc8, 0xf1, 0x98, 0xd3, 0xa4, 0x1f, 0xcb, 0xcc, 0x5a, + 0x4c, 0xe5, 0xbb, 0x29, 0x68, 0x1f, 0x9c, 0x0a, +}; +static const unsigned char kat3652_nonce[] = {0}; +static const unsigned char kat3652_persstr[] = { + 0xc9, 0x94, 0x59, 0x37, 0x3b, 0xa7, 0x7c, 0x4e, 0xa9, 0x54, 0xd2, 0xfe, + 0xeb, 0x9f, 0x1e, 0x59, 0x70, 0x97, 0x58, 0xfe, 0x4f, 0x06, 0x65, 0xf9, + 0xb4, 0x3b, 0x10, 0xdb, 0x17, 0x9d, 0x69, 0x08, +}; +static const unsigned char kat3652_entropyinpr1[] = { + 0x0b, 0x9a, 0xb6, 0x6b, 0x9d, 0x53, 0x93, 0x1f, 0x67, 0xb4, 0xa8, 0x2d, + 0x86, 0xf6, 0x17, 0x24, 0x39, 0x62, 0x72, 0xcc, 0x56, 0x0b, 0xe0, 0xc8, + 0x08, 0xd5, 0xaf, 0x95, 0x18, 0x47, 0x8c, 0x3f, +}; +static const unsigned char kat3652_addinpr1[] = { + 0x10, 0x4c, 0x44, 0x32, 0xaf, 0xf0, 0xb6, 0xc6, 0xd1, 0x7c, 0x74, 0xdc, + 0x20, 0x64, 0x78, 0xe3, 0x7d, 0xfc, 0xcf, 0x92, 0x1a, 0x3f, 0x9c, 0x51, + 0x8f, 0x03, 0x51, 0x15, 0xed, 0x5b, 0xa6, 0xe3, +}; +static const unsigned char kat3652_entropyinpr2[] = { + 0x64, 0x23, 0x04, 0xfc, 0xcd, 0x20, 0xa0, 0x76, 0x08, 0x0e, 0x4b, 0x18, + 0xa9, 0xec, 0x03, 0x19, 0x26, 0x41, 0x34, 0x38, 0x59, 0x64, 0x2b, 0xc4, + 0xb4, 0xc2, 0xd0, 0x17, 0x27, 0x77, 0xf2, 0x62, +}; +static const unsigned char kat3652_addinpr2[] = { + 0x1f, 0x42, 0xa2, 0x3b, 0xf4, 0xdc, 0x65, 0xa0, 0xac, 0x61, 0xf9, 0xfe, + 0x59, 0x67, 0xfb, 0xa1, 0x36, 0x79, 0x1b, 0x19, 0xa3, 0x99, 0x2d, 0x5e, + 0x5c, 0xa6, 0x53, 0x2a, 0xc8, 0x55, 0x24, 0x23, +}; +static const unsigned char kat3652_retbits[] = { + 0x2a, 0x5a, 0xe9, 0xab, 0x04, 0x3e, 0x8f, 0x71, 0x4f, 0x26, 0x6e, 0x76, + 0x51, 0x50, 0xf1, 0xb3, 0xa0, 0xfe, 0xef, 0x8e, 0x9c, 0x7e, 0x73, 0x5f, + 0x97, 0xb6, 0xda, 0x70, 0x91, 0xa0, 0xf3, 0x1d, 0x23, 0x1a, 0x48, 0x4b, + 0xb0, 0xdb, 0x91, 0x72, 0x18, 0x8e, 0x67, 0xc6, 0x07, 0xc6, 0xdb, 0x9f, + 0xbf, 0xac, 0x9d, 0xf8, 0xa8, 0xdb, 0x5a, 0x71, 0x6d, 0xa1, 0x16, 0x3e, + 0x04, 0x9f, 0x38, 0x04, +}; +static const struct drbg_kat_pr_true kat3652_t = { + 6, kat3652_entropyin, kat3652_nonce, kat3652_persstr, + kat3652_entropyinpr1, kat3652_addinpr1, kat3652_entropyinpr2, + kat3652_addinpr2, kat3652_retbits +}; +static const struct drbg_kat kat3652 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3652_t +}; + +static const unsigned char kat3653_entropyin[] = { + 0xe2, 0x69, 0xdb, 0x4e, 0x5e, 0x5d, 0x14, 0x9b, 0x12, 0xec, 0x74, 0x85, + 0x8e, 0x79, 0xef, 0x42, 0x64, 0xa6, 0x78, 0xb9, 0xfb, 0x91, 0x88, 0x96, + 0x23, 0x8f, 0x96, 0x0f, 0xc4, 0x55, 0x45, 0x66, +}; +static const unsigned char kat3653_nonce[] = {0}; +static const unsigned char kat3653_persstr[] = { + 0x33, 0x32, 0x6d, 0xbf, 0x20, 0x2c, 0x5c, 0x0f, 0xa8, 0x87, 0xd3, 0x59, + 0xd7, 0x7e, 0x0c, 0x51, 0x5f, 0xaf, 0x7a, 0xed, 0xd1, 0x92, 0xab, 0x36, + 0x35, 0x9b, 0xcc, 0xf6, 0x61, 0xf2, 0x53, 0x91, +}; +static const unsigned char kat3653_entropyinpr1[] = { + 0xe6, 0x3c, 0x3c, 0x8e, 0x4b, 0xda, 0xdd, 0x60, 0x01, 0xab, 0x08, 0x57, + 0xb1, 0x37, 0x6d, 0x5d, 0xe4, 0xa5, 0x34, 0x8c, 0xec, 0x3b, 0x0d, 0xea, + 0xc2, 0x70, 0xf1, 0xae, 0x7b, 0x38, 0xa7, 0xe5, +}; +static const unsigned char kat3653_addinpr1[] = { + 0x35, 0x2b, 0xde, 0x5d, 0xa2, 0x54, 0x16, 0x54, 0x29, 0xca, 0x0f, 0xdd, + 0x55, 0x95, 0x94, 0x94, 0x3b, 0x60, 0xd2, 0x6b, 0x34, 0x83, 0xe8, 0xaa, + 0xc8, 0x7d, 0xc9, 0x28, 0xcd, 0x21, 0xc2, 0xe8, +}; +static const unsigned char kat3653_entropyinpr2[] = { + 0x9b, 0x6f, 0x55, 0xd5, 0xba, 0x67, 0xb1, 0xcc, 0xd3, 0x19, 0xb3, 0x17, + 0x8b, 0x58, 0x69, 0xb8, 0xe4, 0xb8, 0xd1, 0xb8, 0x29, 0x60, 0x77, 0xd2, + 0x52, 0x82, 0xf8, 0xe7, 0x23, 0xd4, 0x01, 0xd7, +}; +static const unsigned char kat3653_addinpr2[] = { + 0x66, 0x7b, 0xa3, 0x62, 0x15, 0x09, 0x31, 0x6e, 0xa4, 0x64, 0x13, 0xe2, + 0x34, 0x45, 0x42, 0x97, 0x5b, 0x9f, 0x63, 0xa8, 0x4b, 0x07, 0xc2, 0x83, + 0x04, 0x99, 0x64, 0xc8, 0xc4, 0xcd, 0x69, 0xe9, +}; +static const unsigned char kat3653_retbits[] = { + 0x9c, 0xd4, 0x7c, 0x64, 0x41, 0x9e, 0x5e, 0xfc, 0x4c, 0xa9, 0xe4, 0x63, + 0x7b, 0xfb, 0x4c, 0x9a, 0x26, 0x3b, 0x53, 0x9c, 0xed, 0xe6, 0xd0, 0xd3, + 0x0b, 0x8d, 0xd3, 0x46, 0x53, 0x6c, 0x31, 0x90, 0x47, 0x82, 0x13, 0x96, + 0x34, 0x5e, 0x8f, 0x4b, 0x99, 0xae, 0x45, 0xa2, 0xa5, 0x8a, 0x30, 0x03, + 0x87, 0x9b, 0x88, 0x26, 0x55, 0x69, 0x82, 0xb5, 0x89, 0x25, 0xa7, 0xc3, + 0xc3, 0xcb, 0x77, 0x8a, +}; +static const struct drbg_kat_pr_true kat3653_t = { + 7, kat3653_entropyin, kat3653_nonce, kat3653_persstr, + kat3653_entropyinpr1, kat3653_addinpr1, kat3653_entropyinpr2, + kat3653_addinpr2, kat3653_retbits +}; +static const struct drbg_kat kat3653 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3653_t +}; + +static const unsigned char kat3654_entropyin[] = { + 0x92, 0xf5, 0x6b, 0xc8, 0xe8, 0x90, 0x5c, 0xeb, 0xed, 0x8a, 0x3f, 0x9b, + 0x1f, 0x6f, 0x51, 0x14, 0x0e, 0xce, 0xcb, 0xb0, 0xc6, 0x51, 0x26, 0x31, + 0xc9, 0x73, 0x14, 0x80, 0xaf, 0xf8, 0x55, 0x62, +}; +static const unsigned char kat3654_nonce[] = {0}; +static const unsigned char kat3654_persstr[] = { + 0x8a, 0x07, 0xcc, 0x2b, 0x3d, 0x4b, 0xef, 0x18, 0xfc, 0x14, 0x89, 0xe7, + 0x3b, 0x0d, 0xcd, 0x19, 0x09, 0x00, 0xa0, 0xd7, 0xe8, 0x41, 0x8c, 0x66, + 0x4e, 0x4f, 0x46, 0xc1, 0xaf, 0x45, 0x54, 0x53, +}; +static const unsigned char kat3654_entropyinpr1[] = { + 0x03, 0xdb, 0x58, 0x8c, 0xce, 0x94, 0xdd, 0xe5, 0x39, 0xcd, 0x69, 0xb8, + 0xf2, 0x21, 0x4c, 0x00, 0x47, 0x08, 0x3e, 0x93, 0xbf, 0xe5, 0x7d, 0x69, + 0x7e, 0x5c, 0x8f, 0xb1, 0xa0, 0x15, 0xe6, 0x23, +}; +static const unsigned char kat3654_addinpr1[] = { + 0x27, 0xbb, 0x21, 0x41, 0x9e, 0xbc, 0x68, 0x0c, 0x36, 0x6b, 0x22, 0x6e, + 0x78, 0x18, 0x23, 0xd7, 0x23, 0xe4, 0x61, 0xe6, 0xb3, 0x35, 0x96, 0x88, + 0x4a, 0x11, 0xc9, 0xc8, 0x04, 0x27, 0xfa, 0x8f, +}; +static const unsigned char kat3654_entropyinpr2[] = { + 0x49, 0x2b, 0xb7, 0x9e, 0x11, 0x27, 0x3d, 0xf7, 0x7c, 0xe6, 0xb8, 0x20, + 0x4f, 0xf1, 0xfe, 0xb7, 0x78, 0x9f, 0x16, 0xc8, 0xfd, 0xa1, 0x4e, 0xb5, + 0x85, 0x18, 0x63, 0x47, 0x01, 0xa2, 0x69, 0x8f, +}; +static const unsigned char kat3654_addinpr2[] = { + 0xe6, 0x69, 0xac, 0x48, 0x4b, 0x15, 0x58, 0xbf, 0x86, 0x84, 0x50, 0x24, + 0x93, 0xd4, 0x79, 0x8b, 0x16, 0xa8, 0x21, 0x87, 0xaf, 0xb8, 0xeb, 0xff, + 0xda, 0x21, 0x6e, 0x85, 0x60, 0x46, 0x46, 0xcf, +}; +static const unsigned char kat3654_retbits[] = { + 0xa4, 0x6e, 0x2d, 0x65, 0xbb, 0x2b, 0x9c, 0xc0, 0xf8, 0xa2, 0x87, 0x18, + 0x59, 0xd4, 0x87, 0xb7, 0x4d, 0xd1, 0x5b, 0xe6, 0x78, 0xb8, 0xa8, 0x6b, + 0x4c, 0xd7, 0x61, 0xae, 0x12, 0xfd, 0xeb, 0x30, 0x9b, 0x88, 0x9d, 0x23, + 0x54, 0xc2, 0xb6, 0xe4, 0xf1, 0x3d, 0xbb, 0x0b, 0xed, 0xfc, 0x69, 0xb4, + 0x90, 0xe0, 0xf7, 0x38, 0xdb, 0x17, 0x05, 0xde, 0x28, 0xe4, 0x40, 0x84, + 0xf5, 0x15, 0xb1, 0x9b, +}; +static const struct drbg_kat_pr_true kat3654_t = { + 8, kat3654_entropyin, kat3654_nonce, kat3654_persstr, + kat3654_entropyinpr1, kat3654_addinpr1, kat3654_entropyinpr2, + kat3654_addinpr2, kat3654_retbits +}; +static const struct drbg_kat kat3654 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3654_t +}; + +static const unsigned char kat3655_entropyin[] = { + 0xd7, 0xfb, 0x73, 0x77, 0x6b, 0x1c, 0x69, 0x58, 0x8e, 0x42, 0x63, 0x4b, + 0xb2, 0xea, 0x09, 0xdb, 0x7c, 0xc0, 0xf0, 0x4e, 0xbd, 0xb7, 0x9b, 0x50, + 0x4f, 0x30, 0x72, 0xca, 0x49, 0xf5, 0x7a, 0xcd, +}; +static const unsigned char kat3655_nonce[] = {0}; +static const unsigned char kat3655_persstr[] = { + 0x32, 0xbd, 0xd8, 0xd9, 0xc9, 0xd6, 0x94, 0x05, 0xff, 0x0f, 0xa4, 0x4a, + 0x4d, 0xba, 0x8d, 0xd8, 0x85, 0x58, 0xed, 0x62, 0x9a, 0x7e, 0x75, 0x17, + 0x14, 0xd5, 0x13, 0x9c, 0xc8, 0x71, 0xa7, 0xa0, +}; +static const unsigned char kat3655_entropyinpr1[] = { + 0x76, 0x49, 0xc8, 0x4f, 0x58, 0x9f, 0x1c, 0x0d, 0x78, 0x9b, 0xef, 0xb3, + 0x29, 0xd5, 0x99, 0x48, 0xc3, 0x97, 0xb5, 0x35, 0xa4, 0x16, 0xfd, 0xb3, + 0x46, 0xb7, 0xdc, 0x11, 0x23, 0x56, 0x7c, 0x15, +}; +static const unsigned char kat3655_addinpr1[] = { + 0xce, 0xe7, 0x4c, 0x61, 0x33, 0x91, 0xec, 0x0d, 0xd3, 0xd8, 0xb2, 0x7f, + 0xff, 0x73, 0x61, 0x7d, 0xbf, 0xdf, 0xa1, 0x47, 0xea, 0xb0, 0x88, 0x4d, + 0x22, 0xef, 0x09, 0xeb, 0x6a, 0xf1, 0x3b, 0x68, +}; +static const unsigned char kat3655_entropyinpr2[] = { + 0xf6, 0x0b, 0x46, 0x18, 0x23, 0x6c, 0xcc, 0x43, 0x05, 0xbb, 0x3c, 0x2d, + 0x7c, 0xcc, 0x9c, 0x73, 0x3c, 0x22, 0x19, 0x16, 0xb7, 0x76, 0xfe, 0x55, + 0xb4, 0xdb, 0x02, 0x78, 0xfa, 0x49, 0xb2, 0x69, +}; +static const unsigned char kat3655_addinpr2[] = { + 0xb7, 0x77, 0xc9, 0xa6, 0x5e, 0x84, 0x4b, 0x6b, 0xe1, 0x85, 0x00, 0x7e, + 0x14, 0x92, 0xb8, 0x01, 0xfe, 0x3f, 0x60, 0x28, 0x48, 0x31, 0xea, 0x25, + 0xc9, 0xef, 0xfa, 0x90, 0x12, 0x3e, 0x0b, 0xd0, +}; +static const unsigned char kat3655_retbits[] = { + 0x21, 0xd9, 0xc5, 0x79, 0x17, 0x63, 0x9e, 0x59, 0xd6, 0x84, 0x7a, 0xd0, + 0x32, 0x83, 0xb0, 0x44, 0xd2, 0x29, 0x10, 0x3a, 0xb4, 0x0b, 0x08, 0xbc, + 0x9b, 0xef, 0x6d, 0xae, 0xf3, 0xf0, 0xcd, 0xff, 0xac, 0x11, 0x9d, 0x3c, + 0xa4, 0x54, 0xc4, 0xb0, 0x05, 0xd4, 0xfa, 0x65, 0xef, 0xe1, 0xfe, 0xf8, + 0x9f, 0x18, 0xf9, 0xd4, 0x4e, 0x37, 0x4d, 0x44, 0xc3, 0xfe, 0xa4, 0xc6, + 0x6a, 0xa4, 0xff, 0x8e, +}; +static const struct drbg_kat_pr_true kat3655_t = { + 9, kat3655_entropyin, kat3655_nonce, kat3655_persstr, + kat3655_entropyinpr1, kat3655_addinpr1, kat3655_entropyinpr2, + kat3655_addinpr2, kat3655_retbits +}; +static const struct drbg_kat kat3655 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3655_t +}; + +static const unsigned char kat3656_entropyin[] = { + 0xbe, 0xc5, 0x62, 0x56, 0xce, 0x5f, 0x06, 0x6d, 0x32, 0x70, 0x58, 0x66, + 0xbd, 0x43, 0x1f, 0x84, 0xa2, 0x43, 0x90, 0x22, 0x33, 0x23, 0x92, 0x4a, + 0x7a, 0xf9, 0x0e, 0x33, 0xf8, 0xa8, 0x5b, 0x70, +}; +static const unsigned char kat3656_nonce[] = {0}; +static const unsigned char kat3656_persstr[] = { + 0x5e, 0x0a, 0x0f, 0xfd, 0x45, 0x82, 0xfc, 0x6d, 0x32, 0xdf, 0xe4, 0x12, + 0xfb, 0xfc, 0xc9, 0x5e, 0x03, 0x3d, 0x59, 0xde, 0x2f, 0x67, 0x30, 0x18, + 0xfc, 0x76, 0xbd, 0x64, 0x51, 0xe9, 0xdc, 0x14, +}; +static const unsigned char kat3656_entropyinpr1[] = { + 0x21, 0xa3, 0xd1, 0x39, 0x27, 0xd2, 0xa7, 0x23, 0x94, 0x2e, 0xf3, 0x29, + 0x41, 0xfe, 0xfe, 0xe8, 0x3e, 0x82, 0x3e, 0x3b, 0xf4, 0xe3, 0x70, 0x2e, + 0x38, 0x4c, 0x49, 0x60, 0xec, 0x33, 0xa3, 0x17, +}; +static const unsigned char kat3656_addinpr1[] = { + 0xbe, 0xa8, 0x34, 0x98, 0x2a, 0x99, 0xe6, 0xdf, 0x84, 0x0a, 0xc9, 0x26, + 0x18, 0x1e, 0xf8, 0xcf, 0x66, 0xdf, 0x1d, 0xfe, 0xbc, 0xab, 0x0a, 0x31, + 0x50, 0x4c, 0x8e, 0xfa, 0x10, 0x4b, 0x60, 0xd1, +}; +static const unsigned char kat3656_entropyinpr2[] = { + 0x83, 0xf1, 0x12, 0xba, 0xaf, 0x10, 0x8c, 0x73, 0x4f, 0x5c, 0x94, 0xe6, + 0x7f, 0x57, 0x8c, 0x5c, 0xc7, 0xac, 0x2a, 0x43, 0x28, 0x70, 0xd3, 0x7e, + 0x9d, 0x3c, 0x91, 0x15, 0x30, 0x0c, 0xcf, 0x6b, +}; +static const unsigned char kat3656_addinpr2[] = { + 0x56, 0xce, 0x06, 0x2a, 0x0f, 0x58, 0x32, 0xcd, 0xa6, 0x63, 0xbf, 0x14, + 0x67, 0x24, 0xe4, 0xf5, 0x49, 0x8a, 0x25, 0xb8, 0xdf, 0x44, 0x9d, 0x51, + 0x51, 0xf5, 0x88, 0xfa, 0xc5, 0x7a, 0xb8, 0xde, +}; +static const unsigned char kat3656_retbits[] = { + 0x49, 0xc2, 0x50, 0x0f, 0x53, 0xba, 0xd7, 0x58, 0xff, 0x45, 0xd8, 0x89, + 0x59, 0x18, 0x50, 0x96, 0x90, 0xeb, 0x4c, 0x6d, 0x8e, 0x14, 0x77, 0x0e, + 0x7d, 0x6d, 0x19, 0x26, 0x41, 0x56, 0x8e, 0x0a, 0x85, 0x08, 0x2f, 0x62, + 0x58, 0x3a, 0xef, 0xbb, 0x0e, 0xb9, 0x34, 0x2e, 0x28, 0x3d, 0x5f, 0x6f, + 0xbd, 0xfc, 0xda, 0x12, 0xc5, 0x20, 0x5a, 0x6c, 0xe4, 0x3c, 0x91, 0x33, + 0xed, 0x49, 0xb9, 0x81, +}; +static const struct drbg_kat_pr_true kat3656_t = { + 10, kat3656_entropyin, kat3656_nonce, kat3656_persstr, + kat3656_entropyinpr1, kat3656_addinpr1, kat3656_entropyinpr2, + kat3656_addinpr2, kat3656_retbits +}; +static const struct drbg_kat kat3656 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3656_t +}; + +static const unsigned char kat3657_entropyin[] = { + 0xcb, 0xc8, 0x54, 0xa6, 0x94, 0x5c, 0xdd, 0xc2, 0xc1, 0x84, 0x22, 0x30, + 0x1e, 0x4c, 0xa8, 0x08, 0x72, 0xc7, 0xd2, 0x88, 0x5a, 0x45, 0x17, 0x79, + 0xc9, 0x93, 0x31, 0xf5, 0xcb, 0xd4, 0xd3, 0x4c, +}; +static const unsigned char kat3657_nonce[] = {0}; +static const unsigned char kat3657_persstr[] = { + 0xd7, 0x33, 0xa7, 0xda, 0x06, 0xea, 0x57, 0x09, 0x31, 0x55, 0x77, 0xa7, + 0x51, 0xf7, 0x45, 0x18, 0x6d, 0xc2, 0x7f, 0x04, 0x14, 0x95, 0x6b, 0xef, + 0x52, 0x2a, 0x21, 0xb6, 0xa5, 0x58, 0x4f, 0x21, +}; +static const unsigned char kat3657_entropyinpr1[] = { + 0xb8, 0x15, 0x0c, 0xcf, 0x68, 0x58, 0xbe, 0xd3, 0x2a, 0x62, 0xe9, 0x85, + 0x76, 0x6f, 0x28, 0x94, 0xf1, 0x6a, 0x38, 0x0d, 0x97, 0xe2, 0x62, 0xc6, + 0xa0, 0xa5, 0x80, 0xb0, 0x29, 0xd7, 0x8b, 0x73, +}; +static const unsigned char kat3657_addinpr1[] = { + 0xb3, 0xe4, 0xa0, 0xba, 0x71, 0x90, 0x60, 0xa9, 0xba, 0x63, 0x6e, 0x55, + 0x8d, 0x31, 0x87, 0xfd, 0x79, 0x8a, 0x84, 0x69, 0xd2, 0x8a, 0xc6, 0x1f, + 0x4c, 0x92, 0xf0, 0x0e, 0xff, 0x61, 0x01, 0x2a, +}; +static const unsigned char kat3657_entropyinpr2[] = { + 0x65, 0x64, 0x15, 0x10, 0x7f, 0x51, 0xa7, 0x26, 0x02, 0x82, 0xbc, 0xb2, + 0x52, 0x5f, 0xf1, 0x84, 0xe7, 0x5d, 0xf7, 0x20, 0x99, 0x6e, 0x3d, 0xef, + 0x8e, 0xd8, 0xd1, 0x3f, 0x5f, 0xaf, 0x05, 0xce, +}; +static const unsigned char kat3657_addinpr2[] = { + 0xa8, 0x38, 0x80, 0xd2, 0x5a, 0x8d, 0x6e, 0xb2, 0x8d, 0x66, 0xd1, 0x59, + 0xa6, 0x2f, 0x56, 0xd2, 0x3b, 0x2d, 0xb0, 0xe6, 0x87, 0xdf, 0xfc, 0xde, + 0x6c, 0x64, 0xcb, 0x29, 0x74, 0xe8, 0x87, 0x1a, +}; +static const unsigned char kat3657_retbits[] = { + 0xd3, 0xb2, 0x1d, 0xa9, 0xc2, 0xd9, 0xa7, 0xbc, 0xed, 0x12, 0x94, 0x67, + 0x50, 0xe4, 0x09, 0xf9, 0xf2, 0xb7, 0xc6, 0xf3, 0xf8, 0x4d, 0x74, 0x53, + 0x1d, 0x07, 0x11, 0xe4, 0x1e, 0x8c, 0xc0, 0x19, 0xeb, 0xf5, 0x9d, 0x35, + 0x1a, 0xd9, 0x33, 0xbb, 0x1e, 0x77, 0xd6, 0xeb, 0xbe, 0xf2, 0xe9, 0xff, + 0x98, 0x01, 0x6b, 0x68, 0x5d, 0xf9, 0x0f, 0x60, 0x83, 0x66, 0xe3, 0x2a, + 0x9d, 0x78, 0x40, 0x58, +}; +static const struct drbg_kat_pr_true kat3657_t = { + 11, kat3657_entropyin, kat3657_nonce, kat3657_persstr, + kat3657_entropyinpr1, kat3657_addinpr1, kat3657_entropyinpr2, + kat3657_addinpr2, kat3657_retbits +}; +static const struct drbg_kat kat3657 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3657_t +}; + +static const unsigned char kat3658_entropyin[] = { + 0x20, 0x43, 0x76, 0x3f, 0x12, 0x7c, 0x2c, 0x72, 0xac, 0x58, 0x1b, 0x2d, + 0x6a, 0xe6, 0x2e, 0xe9, 0x80, 0xfa, 0x4c, 0xc7, 0x2e, 0x30, 0x57, 0xa5, + 0xcf, 0x10, 0x3d, 0x40, 0xc1, 0xac, 0x05, 0xb2, +}; +static const unsigned char kat3658_nonce[] = {0}; +static const unsigned char kat3658_persstr[] = { + 0x45, 0xc7, 0xa2, 0x9c, 0x14, 0x7c, 0xeb, 0x42, 0xc3, 0x2a, 0xdb, 0xac, + 0xed, 0xd7, 0x24, 0xc0, 0x2e, 0x63, 0x26, 0xb5, 0xdd, 0xc9, 0x98, 0xef, + 0x64, 0x0e, 0x4e, 0x52, 0xf9, 0x23, 0x53, 0xb8, +}; +static const unsigned char kat3658_entropyinpr1[] = { + 0xd9, 0xb7, 0x9a, 0x0e, 0x45, 0x50, 0x58, 0x0b, 0xed, 0x48, 0xce, 0x52, + 0xe7, 0xc6, 0xb7, 0x95, 0xa2, 0xf3, 0x37, 0xb0, 0x95, 0x7e, 0xf8, 0xbc, + 0xc0, 0xc3, 0x7d, 0xf2, 0x37, 0x1a, 0x12, 0x95, +}; +static const unsigned char kat3658_addinpr1[] = { + 0x87, 0x79, 0xaa, 0xdb, 0x8b, 0x9d, 0xc2, 0x68, 0x51, 0x74, 0x31, 0x20, + 0xea, 0x7e, 0x41, 0xed, 0xf8, 0x24, 0xdb, 0x2a, 0xd7, 0xc9, 0xe5, 0x67, + 0xdf, 0x23, 0xb1, 0x54, 0xf2, 0x12, 0x06, 0x0f, +}; +static const unsigned char kat3658_entropyinpr2[] = { + 0xde, 0x11, 0x49, 0xf1, 0xd2, 0xce, 0x43, 0xc5, 0x82, 0x25, 0xfd, 0x25, + 0x70, 0x17, 0x87, 0x43, 0xf1, 0x42, 0x9d, 0xc9, 0xdd, 0x33, 0xe5, 0x42, + 0x36, 0xe5, 0xdf, 0xc0, 0x85, 0x7c, 0x89, 0x84, +}; +static const unsigned char kat3658_addinpr2[] = { + 0x4f, 0xdf, 0xaa, 0xfb, 0xfb, 0x71, 0xa0, 0x68, 0x56, 0x69, 0xfd, 0xf0, + 0x90, 0x02, 0x54, 0x17, 0xde, 0xfc, 0x9f, 0x0c, 0xfb, 0x6b, 0xeb, 0x0a, + 0x02, 0x36, 0x52, 0x1e, 0x6b, 0xae, 0x29, 0x28, +}; +static const unsigned char kat3658_retbits[] = { + 0x83, 0x19, 0x8a, 0xdb, 0xeb, 0x9e, 0xa5, 0x99, 0x4e, 0xc8, 0x29, 0x48, + 0xd6, 0xf6, 0xd0, 0x36, 0x1a, 0x08, 0xe5, 0xf0, 0xe1, 0x7b, 0xec, 0x10, + 0x3d, 0xbf, 0xf4, 0x12, 0x5e, 0x2f, 0x24, 0xa6, 0x71, 0xe3, 0xb3, 0x72, + 0x09, 0xc5, 0x9f, 0xa9, 0x00, 0xa7, 0xf3, 0xf1, 0x9f, 0xfd, 0x20, 0x07, + 0x78, 0xfa, 0xa2, 0x30, 0xff, 0x32, 0x90, 0x9e, 0x61, 0xcc, 0x0b, 0x05, + 0xec, 0x9d, 0x86, 0xc7, +}; +static const struct drbg_kat_pr_true kat3658_t = { + 12, kat3658_entropyin, kat3658_nonce, kat3658_persstr, + kat3658_entropyinpr1, kat3658_addinpr1, kat3658_entropyinpr2, + kat3658_addinpr2, kat3658_retbits +}; +static const struct drbg_kat kat3658 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3658_t +}; + +static const unsigned char kat3659_entropyin[] = { + 0x17, 0x8e, 0xfb, 0xf1, 0xe3, 0x7a, 0xd1, 0xfa, 0x19, 0xd8, 0x36, 0x13, + 0x57, 0xae, 0xbf, 0x28, 0x41, 0xeb, 0xc9, 0x73, 0x8b, 0x29, 0x2b, 0xd1, + 0xd4, 0x01, 0x75, 0x97, 0xfd, 0x75, 0x1e, 0x9a, +}; +static const unsigned char kat3659_nonce[] = {0}; +static const unsigned char kat3659_persstr[] = { + 0x37, 0x84, 0xf3, 0x05, 0xb9, 0x16, 0xe2, 0xf3, 0x44, 0xe3, 0x16, 0x3e, + 0x46, 0x2a, 0x83, 0xde, 0x37, 0x5a, 0x50, 0x8e, 0xd8, 0xc8, 0xaf, 0x81, + 0x56, 0xad, 0xd7, 0xac, 0x23, 0x74, 0x04, 0xff, +}; +static const unsigned char kat3659_entropyinpr1[] = { + 0x95, 0x71, 0x6e, 0x48, 0x4c, 0xd8, 0x11, 0xc3, 0x26, 0x73, 0xbb, 0xd8, + 0xf4, 0x41, 0xf8, 0xa2, 0x32, 0xe4, 0x45, 0xed, 0x05, 0xe4, 0x7b, 0xec, + 0xa6, 0x48, 0x8c, 0x4d, 0x3e, 0x0e, 0x36, 0xa5, +}; +static const unsigned char kat3659_addinpr1[] = { + 0xa0, 0x2e, 0xa6, 0xf6, 0xd9, 0xb8, 0x99, 0x72, 0xa3, 0xf7, 0x1d, 0xe2, + 0xd9, 0xf1, 0x77, 0x6f, 0x96, 0xb2, 0xf5, 0x94, 0xb9, 0x24, 0x52, 0xa4, + 0xee, 0x6e, 0xc7, 0x59, 0xc4, 0x0f, 0x42, 0x77, +}; +static const unsigned char kat3659_entropyinpr2[] = { + 0xfc, 0x86, 0x25, 0xd5, 0xcf, 0x7e, 0xaf, 0x5f, 0xac, 0xa7, 0xb6, 0x38, + 0x6f, 0xee, 0xcc, 0x2e, 0x2e, 0xd1, 0x5b, 0xee, 0x2d, 0x3f, 0xdd, 0xa3, + 0xb7, 0x22, 0xf1, 0x03, 0x2d, 0x03, 0xa2, 0xb3, +}; +static const unsigned char kat3659_addinpr2[] = { + 0x17, 0x0f, 0x9c, 0xab, 0x0a, 0xd1, 0x7e, 0xb2, 0x86, 0x70, 0x2e, 0x02, + 0xd4, 0x8b, 0x3f, 0xcb, 0x09, 0xc0, 0xfe, 0x34, 0xe4, 0xee, 0xa6, 0x58, + 0xfe, 0xa5, 0x36, 0xc3, 0x76, 0x28, 0xe5, 0x3c, +}; +static const unsigned char kat3659_retbits[] = { + 0xa1, 0xe4, 0xc5, 0x16, 0x67, 0x56, 0x19, 0xf7, 0x50, 0x91, 0xd8, 0x30, + 0x72, 0xe1, 0xac, 0xde, 0x7b, 0x47, 0x98, 0x1e, 0x89, 0x56, 0x13, 0x5b, + 0x54, 0xcd, 0x87, 0x56, 0x8b, 0xcc, 0xe5, 0xb7, 0xf0, 0xea, 0x03, 0x84, + 0x5c, 0x2e, 0x09, 0xe1, 0xeb, 0x0c, 0xd6, 0xa8, 0x65, 0x29, 0x7c, 0xe5, + 0xb8, 0x71, 0x33, 0xd9, 0xd0, 0xc2, 0xee, 0x9e, 0x48, 0xe6, 0xea, 0x69, + 0x0d, 0xbc, 0x63, 0x10, +}; +static const struct drbg_kat_pr_true kat3659_t = { + 13, kat3659_entropyin, kat3659_nonce, kat3659_persstr, + kat3659_entropyinpr1, kat3659_addinpr1, kat3659_entropyinpr2, + kat3659_addinpr2, kat3659_retbits +}; +static const struct drbg_kat kat3659 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3659_t +}; + +static const unsigned char kat3660_entropyin[] = { + 0xcc, 0x15, 0x11, 0xf4, 0xe3, 0x53, 0x0b, 0x26, 0xba, 0x89, 0x95, 0x7c, + 0x3f, 0x30, 0xda, 0xdb, 0x17, 0xf0, 0x40, 0x98, 0x92, 0x16, 0xfe, 0xfc, + 0x57, 0xb5, 0x90, 0x7e, 0xf4, 0x37, 0xbd, 0x10, +}; +static const unsigned char kat3660_nonce[] = {0}; +static const unsigned char kat3660_persstr[] = { + 0x83, 0x8b, 0x73, 0x06, 0x5f, 0x63, 0x4f, 0x9e, 0xf6, 0xe8, 0x9b, 0x67, + 0x77, 0xf4, 0xf7, 0xd6, 0x6f, 0xc4, 0x79, 0x42, 0xff, 0x60, 0xae, 0xde, + 0x0d, 0x6f, 0xe4, 0x2b, 0xb7, 0x4c, 0xb0, 0x01, +}; +static const unsigned char kat3660_entropyinpr1[] = { + 0xbb, 0xec, 0x89, 0x7b, 0x0d, 0x90, 0xfe, 0x17, 0x35, 0xbb, 0x49, 0x24, + 0x81, 0x43, 0xcb, 0x24, 0xb1, 0xe0, 0x44, 0x87, 0xfe, 0xe6, 0x80, 0x07, + 0x1d, 0x66, 0x76, 0x77, 0xef, 0x00, 0x6d, 0xaa, +}; +static const unsigned char kat3660_addinpr1[] = { + 0x1e, 0x9e, 0x8a, 0x1a, 0x97, 0x3e, 0x4e, 0xaf, 0xf5, 0x07, 0xb3, 0x17, + 0xf6, 0x8c, 0xfa, 0x08, 0xb9, 0x85, 0x85, 0xb8, 0xab, 0x44, 0x13, 0x20, + 0x24, 0xff, 0xc6, 0x6c, 0x61, 0x42, 0x10, 0x8a, +}; +static const unsigned char kat3660_entropyinpr2[] = { + 0x16, 0xf3, 0xbd, 0x62, 0x63, 0x43, 0x68, 0x53, 0x5d, 0xa1, 0x70, 0xa7, + 0xf1, 0x17, 0xbb, 0xf8, 0xb8, 0x96, 0xba, 0x1b, 0xfa, 0xc5, 0xab, 0x68, + 0x22, 0x47, 0xb1, 0xb5, 0x54, 0x52, 0xe8, 0x44, +}; +static const unsigned char kat3660_addinpr2[] = { + 0x6f, 0xd4, 0x6c, 0xa1, 0x8d, 0x10, 0x32, 0x6f, 0x57, 0x34, 0xd0, 0x16, + 0x01, 0x63, 0xbc, 0x42, 0xd3, 0xda, 0xa5, 0x5e, 0x3c, 0x74, 0xa2, 0xe0, + 0xfc, 0x73, 0x80, 0xfd, 0x84, 0xdc, 0x0b, 0xec, +}; +static const unsigned char kat3660_retbits[] = { + 0xf8, 0x4c, 0x05, 0xb1, 0x44, 0xb1, 0x14, 0xfb, 0xd2, 0xf8, 0x0a, 0x21, + 0x86, 0x2a, 0x44, 0xf3, 0x64, 0x1f, 0xbe, 0x98, 0x09, 0x57, 0xe3, 0xfa, + 0xb7, 0x36, 0x97, 0x6d, 0xb3, 0x7b, 0x8b, 0xca, 0x82, 0x3d, 0x7f, 0x84, + 0x8f, 0x32, 0xf4, 0xac, 0xa6, 0x02, 0x68, 0xc0, 0x20, 0xa2, 0xe8, 0x5a, + 0x5e, 0xe0, 0xf3, 0x1f, 0xb7, 0x46, 0xf0, 0xdf, 0xf0, 0x66, 0xb8, 0x3d, + 0x32, 0x56, 0x3d, 0xf9, +}; +static const struct drbg_kat_pr_true kat3660_t = { + 14, kat3660_entropyin, kat3660_nonce, kat3660_persstr, + kat3660_entropyinpr1, kat3660_addinpr1, kat3660_entropyinpr2, + kat3660_addinpr2, kat3660_retbits +}; +static const struct drbg_kat kat3660 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3660_t +}; + +static const unsigned char kat3661_entropyin[] = { + 0xdb, 0x6b, 0xb4, 0x98, 0xf9, 0x71, 0x20, 0xae, 0xde, 0x8b, 0x99, 0xe8, + 0xa2, 0xb4, 0x17, 0x4c, 0xc0, 0x05, 0xef, 0xef, 0x77, 0x85, 0x5a, 0xef, + 0x21, 0x8d, 0x5d, 0x3f, 0x15, 0x49, 0x4e, 0x94, +}; +static const unsigned char kat3661_nonce[] = {0}; +static const unsigned char kat3661_persstr[] = {0}; +static const unsigned char kat3661_entropyinpr1[] = { + 0x2f, 0x28, 0xf4, 0x96, 0x5f, 0x77, 0xc6, 0x7a, 0x55, 0x40, 0x1e, 0x01, + 0x74, 0x5c, 0xb5, 0x5c, 0x64, 0xa0, 0x84, 0x12, 0x74, 0xc2, 0x41, 0xe2, + 0x66, 0xf7, 0xfe, 0x40, 0x79, 0xe5, 0x7a, 0x63, +}; +static const unsigned char kat3661_addinpr1[] = {0}; +static const unsigned char kat3661_entropyinpr2[] = { + 0x0c, 0x82, 0x3e, 0xea, 0xe1, 0x0e, 0x26, 0xec, 0x1d, 0x48, 0x26, 0xe2, + 0xa5, 0x62, 0x58, 0xf4, 0x9e, 0x54, 0x79, 0x52, 0xf4, 0xcb, 0x86, 0x4c, + 0x5f, 0xd9, 0xb3, 0x2e, 0x33, 0xa7, 0x0c, 0x50, +}; +static const unsigned char kat3661_addinpr2[] = {0}; +static const unsigned char kat3661_retbits[] = { + 0xe6, 0x66, 0x7c, 0xf7, 0xb2, 0x79, 0xa4, 0x81, 0xa0, 0xb8, 0x9e, 0xea, + 0x9f, 0x2b, 0x52, 0xf2, 0x20, 0xf2, 0x72, 0xc1, 0xc0, 0x6a, 0x3a, 0x76, + 0xda, 0xef, 0x95, 0xe9, 0x0c, 0xcb, 0xda, 0x26, 0xca, 0xf0, 0x7c, 0x56, + 0x9c, 0x68, 0xda, 0xd4, 0x51, 0x87, 0x3f, 0xa4, 0x49, 0x79, 0x68, 0xb3, + 0xfa, 0x07, 0x3b, 0x93, 0x69, 0xd1, 0x3d, 0xae, 0xbd, 0x22, 0x9e, 0x75, + 0x4c, 0x9c, 0xb2, 0xec, +}; +static const struct drbg_kat_pr_true kat3661_t = { + 0, kat3661_entropyin, kat3661_nonce, kat3661_persstr, + kat3661_entropyinpr1, kat3661_addinpr1, kat3661_entropyinpr2, + kat3661_addinpr2, kat3661_retbits +}; +static const struct drbg_kat kat3661 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3661_t +}; + +static const unsigned char kat3662_entropyin[] = { + 0xab, 0xe6, 0xe2, 0xed, 0xf1, 0x9d, 0xf0, 0x63, 0x0e, 0x62, 0x7f, 0xe5, + 0xe5, 0x87, 0x07, 0x6d, 0x4e, 0x81, 0xb4, 0xfc, 0x94, 0x41, 0x3a, 0x01, + 0xe8, 0xee, 0x37, 0x24, 0x2c, 0xdd, 0xaa, 0xea, +}; +static const unsigned char kat3662_nonce[] = {0}; +static const unsigned char kat3662_persstr[] = {0}; +static const unsigned char kat3662_entropyinpr1[] = { + 0x82, 0xc7, 0x71, 0x18, 0x75, 0x5a, 0x84, 0xda, 0xa2, 0x2e, 0xac, 0x2f, + 0x47, 0xaf, 0x90, 0x9e, 0xe7, 0xe6, 0xc9, 0x30, 0xd0, 0x61, 0x21, 0x79, + 0x94, 0xbb, 0x59, 0x6e, 0x2b, 0x84, 0xce, 0x54, +}; +static const unsigned char kat3662_addinpr1[] = {0}; +static const unsigned char kat3662_entropyinpr2[] = { + 0xd0, 0x6e, 0x80, 0x40, 0xa8, 0xf7, 0xf5, 0xcf, 0x48, 0x16, 0xd0, 0x91, + 0x55, 0xb1, 0xd5, 0x3e, 0x60, 0x5a, 0xd1, 0xae, 0xf3, 0xbf, 0x15, 0xa8, + 0x84, 0x9d, 0x81, 0x90, 0x43, 0x92, 0xf7, 0x12, +}; +static const unsigned char kat3662_addinpr2[] = {0}; +static const unsigned char kat3662_retbits[] = { + 0x3b, 0x4a, 0x2f, 0x22, 0xb9, 0xb4, 0xe5, 0x46, 0x0e, 0x97, 0x25, 0x6a, + 0x83, 0xaa, 0xdc, 0x1f, 0x28, 0x7f, 0x3f, 0xf0, 0x18, 0x6d, 0x66, 0xa9, + 0xc7, 0xdb, 0x9a, 0x06, 0xcf, 0xc0, 0xc9, 0xa0, 0xc3, 0x5a, 0xb6, 0x0f, + 0x01, 0xec, 0x52, 0xf6, 0x8f, 0x25, 0x6b, 0xa4, 0x6f, 0x77, 0x96, 0xf9, + 0xbd, 0x53, 0x10, 0x4b, 0x00, 0xac, 0xa5, 0x9d, 0xbe, 0xab, 0x78, 0x58, + 0xf5, 0xce, 0xd3, 0x7f, +}; +static const struct drbg_kat_pr_true kat3662_t = { + 1, kat3662_entropyin, kat3662_nonce, kat3662_persstr, + kat3662_entropyinpr1, kat3662_addinpr1, kat3662_entropyinpr2, + kat3662_addinpr2, kat3662_retbits +}; +static const struct drbg_kat kat3662 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3662_t +}; + +static const unsigned char kat3663_entropyin[] = { + 0x27, 0xf9, 0xac, 0x96, 0xdd, 0x7e, 0xdb, 0xe5, 0xd0, 0xf6, 0x49, 0xdf, + 0x3a, 0x31, 0x88, 0x10, 0xb5, 0xc4, 0x5e, 0xa6, 0xd1, 0xfe, 0x16, 0x5c, + 0xad, 0xa2, 0xfe, 0x78, 0x2f, 0x72, 0x7d, 0x80, +}; +static const unsigned char kat3663_nonce[] = {0}; +static const unsigned char kat3663_persstr[] = {0}; +static const unsigned char kat3663_entropyinpr1[] = { + 0x8b, 0xde, 0x9b, 0x95, 0x7d, 0x32, 0x61, 0xfa, 0xbe, 0x26, 0xd3, 0x58, + 0xaa, 0xc3, 0xba, 0x40, 0x89, 0xa5, 0x55, 0x37, 0x84, 0x9b, 0xe4, 0x97, + 0xd3, 0x25, 0xba, 0xf9, 0xa4, 0x8c, 0xa4, 0xad, +}; +static const unsigned char kat3663_addinpr1[] = {0}; +static const unsigned char kat3663_entropyinpr2[] = { + 0x2e, 0xb3, 0xb6, 0x89, 0x57, 0x49, 0x03, 0x6c, 0xae, 0xcd, 0x0b, 0x25, + 0x62, 0x9b, 0x71, 0xa2, 0x01, 0x82, 0x6c, 0xae, 0x03, 0xf5, 0xf6, 0xcb, + 0x5b, 0x73, 0xb4, 0xfe, 0x86, 0x94, 0xcf, 0x96, +}; +static const unsigned char kat3663_addinpr2[] = {0}; +static const unsigned char kat3663_retbits[] = { + 0x92, 0xd0, 0xbd, 0x52, 0xe3, 0xd3, 0xc4, 0x3c, 0xd9, 0x37, 0x29, 0xef, + 0xea, 0x4b, 0x51, 0x1f, 0xc7, 0xd1, 0x09, 0xe9, 0x7d, 0x6d, 0xe4, 0x97, + 0x24, 0xa9, 0xbc, 0xb0, 0xba, 0x75, 0x4d, 0xb2, 0x3c, 0x83, 0xb2, 0xf4, + 0x85, 0xf0, 0xc1, 0x13, 0x18, 0xa5, 0xcb, 0x40, 0x1e, 0xf2, 0x0d, 0x1a, + 0x5e, 0x47, 0x63, 0xec, 0xc5, 0x80, 0xcd, 0x8a, 0x37, 0xa1, 0xd3, 0x65, + 0x32, 0x05, 0x49, 0x9b, +}; +static const struct drbg_kat_pr_true kat3663_t = { + 2, kat3663_entropyin, kat3663_nonce, kat3663_persstr, + kat3663_entropyinpr1, kat3663_addinpr1, kat3663_entropyinpr2, + kat3663_addinpr2, kat3663_retbits +}; +static const struct drbg_kat kat3663 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3663_t +}; + +static const unsigned char kat3664_entropyin[] = { + 0xcd, 0xb5, 0x75, 0x21, 0x3b, 0x84, 0xed, 0xfd, 0xd4, 0x56, 0x1c, 0x81, + 0x95, 0x94, 0xb6, 0x11, 0x7b, 0x06, 0xe7, 0x51, 0xd7, 0x77, 0xa0, 0x5c, + 0xa6, 0x7e, 0x22, 0x91, 0xfa, 0xc0, 0x35, 0xc6, +}; +static const unsigned char kat3664_nonce[] = {0}; +static const unsigned char kat3664_persstr[] = {0}; +static const unsigned char kat3664_entropyinpr1[] = { + 0xd1, 0x8e, 0x8a, 0x22, 0xce, 0xda, 0x05, 0xa5, 0x10, 0x3c, 0x3e, 0xf3, + 0x3c, 0x4a, 0x0f, 0xee, 0x80, 0x70, 0xa9, 0xa2, 0xcb, 0x27, 0x91, 0x1b, + 0x3d, 0xd5, 0x8b, 0x75, 0xdd, 0x81, 0x36, 0xfb, +}; +static const unsigned char kat3664_addinpr1[] = {0}; +static const unsigned char kat3664_entropyinpr2[] = { + 0xd9, 0xb4, 0x7b, 0xcf, 0xfa, 0xcf, 0xeb, 0x5e, 0xc5, 0x2a, 0x67, 0x5c, + 0x28, 0x87, 0x8d, 0xcb, 0xe6, 0x1c, 0x13, 0xe8, 0xe8, 0xa7, 0xd8, 0xb6, + 0x71, 0xc2, 0xad, 0x66, 0x28, 0xee, 0xd1, 0xc9, +}; +static const unsigned char kat3664_addinpr2[] = {0}; +static const unsigned char kat3664_retbits[] = { + 0x8d, 0xbf, 0xdc, 0xb6, 0x87, 0x4a, 0xf5, 0x3a, 0x01, 0xfb, 0xe8, 0x5d, + 0xb6, 0x47, 0x94, 0x5a, 0xec, 0x99, 0x71, 0x25, 0x3a, 0x40, 0xb8, 0xef, + 0xc7, 0x31, 0xbf, 0x10, 0x90, 0x1a, 0xd4, 0xcd, 0x4a, 0x0b, 0x83, 0xb9, + 0xfc, 0x18, 0x55, 0x72, 0x02, 0x26, 0x93, 0xd8, 0xd2, 0x42, 0x24, 0x6c, + 0xa6, 0x8b, 0x6b, 0x31, 0x16, 0x8b, 0xee, 0xc7, 0x11, 0xfa, 0x23, 0x63, + 0xfe, 0x70, 0x2a, 0xfb, +}; +static const struct drbg_kat_pr_true kat3664_t = { + 3, kat3664_entropyin, kat3664_nonce, kat3664_persstr, + kat3664_entropyinpr1, kat3664_addinpr1, kat3664_entropyinpr2, + kat3664_addinpr2, kat3664_retbits +}; +static const struct drbg_kat kat3664 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3664_t +}; + +static const unsigned char kat3665_entropyin[] = { + 0x68, 0x2a, 0x58, 0xab, 0x59, 0x9b, 0x95, 0x0f, 0x11, 0x54, 0xde, 0xcc, + 0x79, 0x88, 0xc4, 0x74, 0x1d, 0x10, 0x90, 0x6f, 0x1d, 0x48, 0x77, 0x15, + 0xd2, 0xa7, 0xba, 0x76, 0x6e, 0x10, 0x67, 0x56, +}; +static const unsigned char kat3665_nonce[] = {0}; +static const unsigned char kat3665_persstr[] = {0}; +static const unsigned char kat3665_entropyinpr1[] = { + 0xd9, 0xc8, 0x05, 0xbd, 0x1a, 0xb8, 0x62, 0xda, 0x95, 0x75, 0x99, 0x91, + 0xab, 0x86, 0xfe, 0x68, 0x38, 0x5b, 0x6c, 0x52, 0x3f, 0xba, 0xc0, 0x8b, + 0x97, 0x9e, 0x34, 0x36, 0xca, 0x93, 0x86, 0x05, +}; +static const unsigned char kat3665_addinpr1[] = {0}; +static const unsigned char kat3665_entropyinpr2[] = { + 0x33, 0x6d, 0x8e, 0xc5, 0x96, 0x5b, 0x6f, 0x69, 0x92, 0xad, 0xfc, 0x31, + 0x47, 0x71, 0x3f, 0xae, 0x10, 0xa9, 0x76, 0x6a, 0x21, 0x50, 0x80, 0x91, + 0xf3, 0xe1, 0xb3, 0x06, 0xb3, 0x0b, 0xc5, 0x9f, +}; +static const unsigned char kat3665_addinpr2[] = {0}; +static const unsigned char kat3665_retbits[] = { + 0x92, 0x74, 0x6b, 0x57, 0x9e, 0x54, 0x52, 0xae, 0x22, 0x64, 0xd9, 0x07, + 0xf8, 0x00, 0x86, 0x5a, 0xfa, 0x59, 0x14, 0x18, 0x41, 0x6f, 0xe5, 0x6d, + 0x71, 0x9a, 0xf9, 0xaa, 0x0a, 0x39, 0x6b, 0x99, 0x60, 0x85, 0x09, 0xa9, + 0x7c, 0xbb, 0xa6, 0xa1, 0x30, 0x97, 0xee, 0x55, 0x7d, 0x25, 0x11, 0x06, + 0x34, 0x72, 0xbf, 0x2a, 0xbc, 0xa0, 0x86, 0x31, 0x01, 0x05, 0x2b, 0xeb, + 0xf9, 0xd7, 0x77, 0x00, +}; +static const struct drbg_kat_pr_true kat3665_t = { + 4, kat3665_entropyin, kat3665_nonce, kat3665_persstr, + kat3665_entropyinpr1, kat3665_addinpr1, kat3665_entropyinpr2, + kat3665_addinpr2, kat3665_retbits +}; +static const struct drbg_kat kat3665 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3665_t +}; + +static const unsigned char kat3666_entropyin[] = { + 0x97, 0xad, 0xca, 0x81, 0xc0, 0x45, 0xfa, 0x02, 0xe3, 0x0d, 0x4a, 0x0d, + 0x72, 0x62, 0x44, 0x85, 0x28, 0x8d, 0x0a, 0xd9, 0x6e, 0x06, 0x6b, 0x13, + 0xe8, 0x7a, 0xf4, 0x81, 0x43, 0xf9, 0x68, 0x6c, +}; +static const unsigned char kat3666_nonce[] = {0}; +static const unsigned char kat3666_persstr[] = {0}; +static const unsigned char kat3666_entropyinpr1[] = { + 0x09, 0xeb, 0x90, 0xd3, 0x3a, 0xff, 0xab, 0xa9, 0xc6, 0x4d, 0xeb, 0xfa, + 0xd8, 0xb0, 0x7a, 0x62, 0x1e, 0x2c, 0xa7, 0xb7, 0xa0, 0xb7, 0x0d, 0x0f, + 0xf1, 0xe2, 0x08, 0x1b, 0x58, 0x23, 0x13, 0x93, +}; +static const unsigned char kat3666_addinpr1[] = {0}; +static const unsigned char kat3666_entropyinpr2[] = { + 0xdd, 0x7b, 0xaa, 0x33, 0x95, 0xcd, 0xe9, 0xe8, 0x57, 0xd9, 0xe6, 0x91, + 0x55, 0xdc, 0x95, 0x8a, 0x04, 0x9b, 0x19, 0x2b, 0x83, 0x95, 0xf2, 0xab, + 0xf1, 0x3f, 0xc4, 0x6b, 0xbe, 0x99, 0xd8, 0x83, +}; +static const unsigned char kat3666_addinpr2[] = {0}; +static const unsigned char kat3666_retbits[] = { + 0x1c, 0xa6, 0xd2, 0x6c, 0xb3, 0x93, 0xec, 0xdf, 0x92, 0x17, 0x47, 0x9c, + 0x29, 0x52, 0xd4, 0x13, 0xa8, 0x4c, 0x2d, 0xca, 0xbb, 0x19, 0x0f, 0x4f, + 0xb4, 0x3a, 0xa4, 0x1c, 0x61, 0xdd, 0xe7, 0xa6, 0xe8, 0xea, 0x07, 0xc4, + 0xbb, 0xc0, 0x78, 0x32, 0x2f, 0x3f, 0xd8, 0x2c, 0xe3, 0x7e, 0xdf, 0x97, + 0xf6, 0xcb, 0x35, 0x82, 0x50, 0x1a, 0xe9, 0x58, 0x89, 0x49, 0xef, 0xcd, + 0x29, 0xe2, 0x60, 0x3c, +}; +static const struct drbg_kat_pr_true kat3666_t = { + 5, kat3666_entropyin, kat3666_nonce, kat3666_persstr, + kat3666_entropyinpr1, kat3666_addinpr1, kat3666_entropyinpr2, + kat3666_addinpr2, kat3666_retbits +}; +static const struct drbg_kat kat3666 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3666_t +}; + +static const unsigned char kat3667_entropyin[] = { + 0xcf, 0xca, 0x50, 0xe7, 0xdd, 0x06, 0xd4, 0x38, 0xae, 0x9c, 0x14, 0x27, + 0x80, 0xf7, 0xac, 0x16, 0x4b, 0x49, 0x89, 0x9e, 0x67, 0x3f, 0x52, 0x39, + 0x10, 0x17, 0xd9, 0x4f, 0x71, 0x3f, 0xaf, 0x74, +}; +static const unsigned char kat3667_nonce[] = {0}; +static const unsigned char kat3667_persstr[] = {0}; +static const unsigned char kat3667_entropyinpr1[] = { + 0x0f, 0x91, 0x61, 0xcc, 0x14, 0x75, 0x93, 0x85, 0x96, 0x74, 0x32, 0xca, + 0x96, 0xc1, 0x9b, 0xde, 0xaa, 0x2f, 0xa4, 0x40, 0x50, 0x1f, 0xbf, 0xf1, + 0xcf, 0xa2, 0x2b, 0xbb, 0xd9, 0xf5, 0xb8, 0xe9, +}; +static const unsigned char kat3667_addinpr1[] = {0}; +static const unsigned char kat3667_entropyinpr2[] = { + 0x11, 0xd6, 0x4b, 0x5d, 0xe8, 0x47, 0x69, 0x13, 0xcc, 0xaa, 0x11, 0x45, + 0x8c, 0x32, 0x25, 0x11, 0x67, 0xc7, 0xe2, 0x88, 0x4e, 0x6f, 0x7d, 0x65, + 0x20, 0xb5, 0xae, 0xac, 0xe8, 0x4e, 0x47, 0xd7, +}; +static const unsigned char kat3667_addinpr2[] = {0}; +static const unsigned char kat3667_retbits[] = { + 0x0c, 0xb6, 0x92, 0x6b, 0x15, 0x24, 0x6c, 0xd2, 0x11, 0x5c, 0x24, 0xa0, + 0xea, 0x4f, 0xd3, 0x72, 0x90, 0xff, 0x3a, 0x67, 0x74, 0x25, 0xb6, 0x3e, + 0x1f, 0xdd, 0xb6, 0xad, 0x05, 0x75, 0xcf, 0x98, 0x7b, 0xd8, 0xc0, 0xd4, + 0xf0, 0xac, 0xfc, 0x49, 0x62, 0xe1, 0x1f, 0x7e, 0xec, 0xa5, 0x14, 0xd0, + 0x13, 0x14, 0x6d, 0x4e, 0x1c, 0xe0, 0x44, 0x0a, 0x27, 0x61, 0x34, 0xbc, + 0xbb, 0x7a, 0x81, 0x20, +}; +static const struct drbg_kat_pr_true kat3667_t = { + 6, kat3667_entropyin, kat3667_nonce, kat3667_persstr, + kat3667_entropyinpr1, kat3667_addinpr1, kat3667_entropyinpr2, + kat3667_addinpr2, kat3667_retbits +}; +static const struct drbg_kat kat3667 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3667_t +}; + +static const unsigned char kat3668_entropyin[] = { + 0xd9, 0x96, 0x6e, 0xb9, 0x1c, 0xb7, 0x4d, 0xbc, 0x27, 0xfb, 0x39, 0x35, + 0x1d, 0x83, 0x43, 0xcd, 0x77, 0xe3, 0x6c, 0xae, 0xa6, 0xb5, 0xf4, 0xb2, + 0xbb, 0x99, 0x45, 0xeb, 0x2d, 0xc8, 0x91, 0xf8, +}; +static const unsigned char kat3668_nonce[] = {0}; +static const unsigned char kat3668_persstr[] = {0}; +static const unsigned char kat3668_entropyinpr1[] = { + 0xb9, 0x6f, 0xdc, 0x93, 0xf8, 0x20, 0x13, 0x33, 0xff, 0x13, 0x81, 0x1a, + 0xbd, 0x03, 0xf9, 0x85, 0x46, 0xc8, 0x83, 0xfd, 0x82, 0x21, 0x6a, 0xdc, + 0xbf, 0xae, 0x28, 0xe7, 0x6d, 0x93, 0x1c, 0x77, +}; +static const unsigned char kat3668_addinpr1[] = {0}; +static const unsigned char kat3668_entropyinpr2[] = { + 0x4b, 0x87, 0x1a, 0x4a, 0xa5, 0xea, 0x41, 0x8a, 0x15, 0x5c, 0x23, 0x53, + 0xd2, 0x7e, 0x37, 0x08, 0x1b, 0xbf, 0x49, 0x43, 0xd4, 0x77, 0x27, 0x38, + 0xda, 0xa4, 0xc0, 0x74, 0xf9, 0x2d, 0x2a, 0x98, +}; +static const unsigned char kat3668_addinpr2[] = {0}; +static const unsigned char kat3668_retbits[] = { + 0xe7, 0xb9, 0x7d, 0xc7, 0x7f, 0x23, 0x0a, 0x0a, 0x7a, 0x1d, 0x0f, 0x7f, + 0x6a, 0xcb, 0x5a, 0x91, 0xff, 0x53, 0x9d, 0xf2, 0x6e, 0x83, 0x3a, 0x29, + 0xe1, 0xe5, 0x0c, 0x09, 0x60, 0xbb, 0xb5, 0xae, 0xdc, 0x12, 0xd6, 0xfb, + 0x46, 0x02, 0x7c, 0xf9, 0x2b, 0x13, 0x0a, 0xd3, 0xe6, 0xeb, 0x93, 0x9c, + 0xb0, 0x1a, 0x64, 0xb5, 0xae, 0x6d, 0xfb, 0x9a, 0x7b, 0x9e, 0x18, 0x78, + 0xce, 0xf2, 0xdc, 0x56, +}; +static const struct drbg_kat_pr_true kat3668_t = { + 7, kat3668_entropyin, kat3668_nonce, kat3668_persstr, + kat3668_entropyinpr1, kat3668_addinpr1, kat3668_entropyinpr2, + kat3668_addinpr2, kat3668_retbits +}; +static const struct drbg_kat kat3668 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3668_t +}; + +static const unsigned char kat3669_entropyin[] = { + 0x9a, 0x47, 0x04, 0x92, 0x95, 0x36, 0x13, 0x32, 0x1d, 0x55, 0x10, 0x93, + 0x87, 0xb7, 0x8a, 0x5d, 0x0f, 0xd1, 0xe5, 0x84, 0x63, 0x2d, 0xaa, 0x3c, + 0x60, 0xe2, 0x0a, 0x33, 0x4a, 0x3d, 0xb7, 0xa7, +}; +static const unsigned char kat3669_nonce[] = {0}; +static const unsigned char kat3669_persstr[] = {0}; +static const unsigned char kat3669_entropyinpr1[] = { + 0x50, 0x30, 0xc4, 0x9f, 0xcb, 0x18, 0x0c, 0x26, 0x4c, 0xab, 0x2e, 0x15, + 0x9c, 0x7b, 0x7d, 0x0a, 0x31, 0xbe, 0x6e, 0x36, 0xf1, 0x4c, 0x74, 0x33, + 0x15, 0xd8, 0x9e, 0xae, 0x5a, 0xb0, 0x05, 0xf9, +}; +static const unsigned char kat3669_addinpr1[] = {0}; +static const unsigned char kat3669_entropyinpr2[] = { + 0xba, 0xac, 0x16, 0xb0, 0xf7, 0x41, 0x1d, 0x0e, 0x7f, 0xcc, 0x25, 0x2e, + 0x36, 0x02, 0x2f, 0xfa, 0x74, 0xd2, 0x47, 0x18, 0xe6, 0x93, 0xf3, 0x3e, + 0xb4, 0x4a, 0x45, 0xec, 0x0b, 0xa4, 0xbd, 0xdb, +}; +static const unsigned char kat3669_addinpr2[] = {0}; +static const unsigned char kat3669_retbits[] = { + 0xe9, 0x74, 0xbe, 0xf1, 0x52, 0x1c, 0x1e, 0x64, 0xe8, 0xf4, 0x84, 0x3e, + 0x2f, 0x8f, 0x02, 0x97, 0x34, 0x14, 0x0c, 0xe2, 0x43, 0xbb, 0x7c, 0x06, + 0xd2, 0xad, 0x3a, 0x6e, 0xde, 0xc3, 0x98, 0x6b, 0x8e, 0xe9, 0x69, 0x42, + 0x9e, 0x66, 0x76, 0xb8, 0x6f, 0x42, 0xe8, 0xe3, 0xf9, 0x8d, 0x90, 0xa5, + 0x45, 0x72, 0xc3, 0x5d, 0xa8, 0xf0, 0x28, 0x50, 0xcc, 0x6e, 0x50, 0xa9, + 0x9f, 0x11, 0x3f, 0x79, +}; +static const struct drbg_kat_pr_true kat3669_t = { + 8, kat3669_entropyin, kat3669_nonce, kat3669_persstr, + kat3669_entropyinpr1, kat3669_addinpr1, kat3669_entropyinpr2, + kat3669_addinpr2, kat3669_retbits +}; +static const struct drbg_kat kat3669 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3669_t +}; + +static const unsigned char kat3670_entropyin[] = { + 0x41, 0xc1, 0xb4, 0x30, 0x2f, 0x77, 0x89, 0xe8, 0x51, 0x37, 0x97, 0xdc, + 0x78, 0x86, 0x52, 0xd0, 0xe5, 0x7e, 0xfc, 0x21, 0x64, 0x11, 0xe6, 0x6b, + 0xb1, 0xcb, 0xc3, 0xe5, 0x57, 0x1c, 0xcf, 0x15, +}; +static const unsigned char kat3670_nonce[] = {0}; +static const unsigned char kat3670_persstr[] = {0}; +static const unsigned char kat3670_entropyinpr1[] = { + 0x0a, 0x82, 0x79, 0xe0, 0x6c, 0xd8, 0xa5, 0x5d, 0x85, 0x0c, 0x10, 0xea, + 0x98, 0x65, 0x3c, 0x20, 0x8b, 0xc0, 0x7c, 0x55, 0x0b, 0x24, 0xa1, 0x1e, + 0xda, 0xfd, 0xe3, 0x4e, 0x1f, 0xc1, 0xdd, 0xa6, +}; +static const unsigned char kat3670_addinpr1[] = {0}; +static const unsigned char kat3670_entropyinpr2[] = { + 0x46, 0x61, 0x82, 0x5f, 0x15, 0x2d, 0x96, 0x78, 0xec, 0x5b, 0x82, 0x10, + 0xb9, 0xdf, 0x48, 0x2a, 0x18, 0xa9, 0x0d, 0x70, 0xb7, 0x74, 0x8b, 0x1e, + 0x21, 0x21, 0xfa, 0xcc, 0x2d, 0x66, 0xcb, 0x7f, +}; +static const unsigned char kat3670_addinpr2[] = {0}; +static const unsigned char kat3670_retbits[] = { + 0x62, 0x9a, 0x07, 0x5a, 0x23, 0x0b, 0x58, 0xbc, 0x32, 0x6a, 0x58, 0x9c, + 0xa4, 0x2a, 0xe6, 0x1b, 0x3a, 0x5e, 0xaa, 0x7a, 0x46, 0xee, 0x95, 0x35, + 0xb1, 0xbb, 0xc8, 0xb7, 0xb6, 0xab, 0xfa, 0xe1, 0x17, 0x47, 0x0b, 0xf1, + 0x99, 0x1a, 0xc7, 0x1e, 0xc6, 0xff, 0x3e, 0x02, 0xf5, 0xb8, 0xfb, 0x6b, + 0xa7, 0x44, 0x90, 0x5a, 0xca, 0xd6, 0x16, 0x5c, 0xfa, 0xcc, 0xa0, 0x47, + 0xd6, 0x4e, 0x16, 0xc8, +}; +static const struct drbg_kat_pr_true kat3670_t = { + 9, kat3670_entropyin, kat3670_nonce, kat3670_persstr, + kat3670_entropyinpr1, kat3670_addinpr1, kat3670_entropyinpr2, + kat3670_addinpr2, kat3670_retbits +}; +static const struct drbg_kat kat3670 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3670_t +}; + +static const unsigned char kat3671_entropyin[] = { + 0x1e, 0x7d, 0x27, 0xc4, 0x7a, 0x96, 0x46, 0xd6, 0xa2, 0xe7, 0xcd, 0x3e, + 0x7b, 0x44, 0x8f, 0x9b, 0x0b, 0x27, 0x34, 0xe7, 0xa3, 0x79, 0x7b, 0x08, + 0x69, 0x6a, 0x7a, 0xaa, 0x0d, 0x9b, 0xa1, 0xef, +}; +static const unsigned char kat3671_nonce[] = {0}; +static const unsigned char kat3671_persstr[] = {0}; +static const unsigned char kat3671_entropyinpr1[] = { + 0xf7, 0xc7, 0x08, 0x35, 0xd3, 0xbf, 0xb9, 0x81, 0x55, 0x59, 0x4a, 0xd1, + 0x79, 0xfb, 0x8e, 0x86, 0x34, 0x0a, 0xe8, 0x79, 0xf5, 0x6d, 0x4d, 0x8b, + 0x2b, 0x31, 0xc3, 0xc8, 0x5b, 0x2f, 0x4e, 0x60, +}; +static const unsigned char kat3671_addinpr1[] = {0}; +static const unsigned char kat3671_entropyinpr2[] = { + 0x6b, 0x1a, 0x47, 0xf0, 0x91, 0x37, 0xb7, 0x9d, 0xac, 0xca, 0xe0, 0xbc, + 0x33, 0x5a, 0xf9, 0x39, 0xd0, 0x0b, 0xcf, 0xb6, 0x81, 0x4a, 0x87, 0x19, + 0xfa, 0x06, 0x98, 0xf9, 0x4b, 0x94, 0x5b, 0xfb, +}; +static const unsigned char kat3671_addinpr2[] = {0}; +static const unsigned char kat3671_retbits[] = { + 0xff, 0x06, 0x08, 0x4d, 0x0a, 0xc2, 0xf7, 0xd2, 0x83, 0x64, 0xbc, 0x75, + 0xb6, 0x8c, 0xf3, 0xdb, 0x4b, 0xd9, 0xcf, 0xfb, 0x2a, 0x40, 0xbb, 0x77, + 0xc9, 0xf0, 0x27, 0xd9, 0xe9, 0xc1, 0x44, 0x2a, 0x34, 0xe0, 0xfb, 0x44, + 0x2e, 0x58, 0x8d, 0xfc, 0xe0, 0x09, 0x66, 0x82, 0x2f, 0xff, 0xc1, 0x43, + 0xae, 0xf5, 0x5e, 0x07, 0x23, 0xe9, 0xd0, 0x1b, 0x1e, 0xb8, 0xa6, 0xfe, + 0x32, 0x48, 0xda, 0x22, +}; +static const struct drbg_kat_pr_true kat3671_t = { + 10, kat3671_entropyin, kat3671_nonce, kat3671_persstr, + kat3671_entropyinpr1, kat3671_addinpr1, kat3671_entropyinpr2, + kat3671_addinpr2, kat3671_retbits +}; +static const struct drbg_kat kat3671 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3671_t +}; + +static const unsigned char kat3672_entropyin[] = { + 0xa9, 0x68, 0xf3, 0x79, 0xe2, 0x10, 0x34, 0x79, 0x86, 0x6b, 0xc5, 0x4c, + 0x37, 0x14, 0x63, 0x7d, 0xf2, 0x16, 0xf3, 0x5a, 0x63, 0xf2, 0x87, 0xbe, + 0x4f, 0x32, 0x26, 0x8f, 0x83, 0x94, 0x21, 0x56, +}; +static const unsigned char kat3672_nonce[] = {0}; +static const unsigned char kat3672_persstr[] = {0}; +static const unsigned char kat3672_entropyinpr1[] = { + 0x08, 0x40, 0x78, 0xf8, 0xd2, 0xac, 0xfa, 0xac, 0x34, 0x03, 0x5f, 0x6d, + 0x3b, 0x3e, 0xaa, 0x44, 0xd4, 0xad, 0x6d, 0x90, 0x79, 0xf7, 0xe2, 0xe4, + 0x2f, 0x7c, 0x99, 0x78, 0xe5, 0xda, 0x77, 0x50, +}; +static const unsigned char kat3672_addinpr1[] = {0}; +static const unsigned char kat3672_entropyinpr2[] = { + 0xe3, 0x02, 0xb2, 0xbf, 0x67, 0x10, 0xef, 0xce, 0x24, 0xf6, 0xde, 0x49, + 0x49, 0x9d, 0xec, 0xf7, 0x0d, 0x17, 0xd6, 0xd4, 0x6d, 0xb0, 0x73, 0xce, + 0x9d, 0x2d, 0x8b, 0xb2, 0x2f, 0x67, 0x10, 0x39, +}; +static const unsigned char kat3672_addinpr2[] = {0}; +static const unsigned char kat3672_retbits[] = { + 0x6f, 0x49, 0x6b, 0x51, 0x6b, 0xde, 0xde, 0x77, 0x38, 0xe1, 0x61, 0xa2, + 0xc9, 0xb6, 0x50, 0x05, 0x20, 0x95, 0xb7, 0x34, 0x04, 0xc8, 0x45, 0xec, + 0x95, 0x6f, 0xa6, 0x3d, 0xd1, 0x3d, 0xba, 0x90, 0x36, 0xee, 0x95, 0x80, + 0x45, 0x3b, 0x2d, 0x27, 0x83, 0xcf, 0x05, 0x0a, 0xb8, 0xcb, 0xc4, 0x32, + 0x94, 0x8d, 0x67, 0xd7, 0x17, 0x94, 0xe6, 0x12, 0x80, 0x11, 0xbf, 0xde, + 0x58, 0xf3, 0xe8, 0xdd, +}; +static const struct drbg_kat_pr_true kat3672_t = { + 11, kat3672_entropyin, kat3672_nonce, kat3672_persstr, + kat3672_entropyinpr1, kat3672_addinpr1, kat3672_entropyinpr2, + kat3672_addinpr2, kat3672_retbits +}; +static const struct drbg_kat kat3672 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3672_t +}; + +static const unsigned char kat3673_entropyin[] = { + 0x5c, 0x58, 0xba, 0xa6, 0x6d, 0x39, 0x2d, 0x19, 0xf0, 0x2d, 0x95, 0x34, + 0xf6, 0x9c, 0x3e, 0x40, 0x82, 0x67, 0xeb, 0xe2, 0x74, 0x64, 0x67, 0xfd, + 0xd9, 0x21, 0xae, 0xc7, 0x9d, 0x57, 0x80, 0x11, +}; +static const unsigned char kat3673_nonce[] = {0}; +static const unsigned char kat3673_persstr[] = {0}; +static const unsigned char kat3673_entropyinpr1[] = { + 0x2e, 0xc8, 0x2a, 0xb4, 0xef, 0x05, 0xa9, 0xc8, 0xc6, 0x38, 0x60, 0x94, + 0xd8, 0xb6, 0x4f, 0xfc, 0x54, 0xcd, 0xd9, 0x5f, 0x82, 0xdb, 0xd1, 0x9d, + 0xbf, 0x48, 0x6f, 0x0e, 0x13, 0x79, 0xe2, 0xd1, +}; +static const unsigned char kat3673_addinpr1[] = {0}; +static const unsigned char kat3673_entropyinpr2[] = { + 0xdc, 0x83, 0xe9, 0xad, 0xcf, 0xaf, 0xa3, 0x6c, 0xf5, 0x77, 0xe1, 0xd7, + 0x6b, 0x7a, 0xbb, 0x2e, 0xd1, 0x07, 0x3b, 0x71, 0x4e, 0x57, 0x3c, 0x34, + 0x2e, 0x06, 0x59, 0x8d, 0xe5, 0xc0, 0x40, 0xbd, +}; +static const unsigned char kat3673_addinpr2[] = {0}; +static const unsigned char kat3673_retbits[] = { + 0xb5, 0xa4, 0x9e, 0x83, 0xb6, 0xbc, 0xaf, 0xe0, 0xee, 0x09, 0x90, 0xa5, + 0xe3, 0x50, 0x6f, 0x5d, 0xdb, 0xa4, 0xf2, 0x10, 0x94, 0xcc, 0x20, 0x1e, + 0x79, 0x5b, 0xd5, 0xab, 0xb7, 0x6e, 0x03, 0x55, 0x7f, 0x8c, 0xd3, 0x7d, + 0x8c, 0x91, 0xc8, 0xb3, 0x75, 0x58, 0x00, 0xd8, 0x99, 0xe0, 0x5a, 0xe6, + 0xdb, 0x98, 0x05, 0x16, 0xac, 0xc7, 0xd5, 0x84, 0x70, 0x01, 0xce, 0x62, + 0xdd, 0xe7, 0x88, 0xf6, +}; +static const struct drbg_kat_pr_true kat3673_t = { + 12, kat3673_entropyin, kat3673_nonce, kat3673_persstr, + kat3673_entropyinpr1, kat3673_addinpr1, kat3673_entropyinpr2, + kat3673_addinpr2, kat3673_retbits +}; +static const struct drbg_kat kat3673 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3673_t +}; + +static const unsigned char kat3674_entropyin[] = { + 0x28, 0xae, 0x05, 0x64, 0xe7, 0x43, 0xe9, 0x10, 0x5a, 0x56, 0x90, 0xb1, + 0x7e, 0xeb, 0xcb, 0xc8, 0x4f, 0xe6, 0x6e, 0xe9, 0x68, 0x2c, 0x0a, 0x80, + 0xac, 0xe4, 0xb2, 0x9e, 0x40, 0xc8, 0x2c, 0xb9, +}; +static const unsigned char kat3674_nonce[] = {0}; +static const unsigned char kat3674_persstr[] = {0}; +static const unsigned char kat3674_entropyinpr1[] = { + 0xfd, 0xce, 0xf7, 0x9a, 0x1a, 0x47, 0x83, 0xb9, 0xe6, 0xbc, 0x58, 0x40, + 0xc7, 0x41, 0x49, 0x0b, 0xfe, 0x78, 0x4e, 0xe1, 0xf2, 0xc6, 0xfa, 0x12, + 0x47, 0xbd, 0x6f, 0xbf, 0x65, 0x18, 0xe6, 0xc4, +}; +static const unsigned char kat3674_addinpr1[] = {0}; +static const unsigned char kat3674_entropyinpr2[] = { + 0x5f, 0x25, 0xe9, 0x91, 0xdf, 0x4c, 0xf3, 0xe4, 0xa1, 0xc3, 0x89, 0x19, + 0x6c, 0x62, 0x47, 0xe9, 0x73, 0xca, 0xe0, 0x4f, 0x65, 0xbd, 0x5b, 0x03, + 0xa4, 0x19, 0x5a, 0x5c, 0x91, 0xc3, 0x06, 0xc8, +}; +static const unsigned char kat3674_addinpr2[] = {0}; +static const unsigned char kat3674_retbits[] = { + 0x35, 0xa7, 0xc9, 0x1f, 0xc9, 0x61, 0x37, 0x46, 0x39, 0xd0, 0x29, 0xef, + 0xef, 0x82, 0xc0, 0xde, 0x6a, 0xb3, 0xfc, 0x02, 0xc2, 0xa6, 0xb9, 0xcd, + 0x19, 0x82, 0x03, 0xe2, 0xd7, 0x81, 0x6e, 0xf9, 0x58, 0x4d, 0xe9, 0xb1, + 0xfa, 0x58, 0x1b, 0x7f, 0xb2, 0xa8, 0x6a, 0xa2, 0x38, 0xbf, 0x79, 0xd3, + 0x16, 0x13, 0xa9, 0x8d, 0x17, 0x60, 0x7a, 0x9a, 0x8e, 0x07, 0xf4, 0x63, + 0x1b, 0xba, 0x28, 0x6a, +}; +static const struct drbg_kat_pr_true kat3674_t = { + 13, kat3674_entropyin, kat3674_nonce, kat3674_persstr, + kat3674_entropyinpr1, kat3674_addinpr1, kat3674_entropyinpr2, + kat3674_addinpr2, kat3674_retbits +}; +static const struct drbg_kat kat3674 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3674_t +}; + +static const unsigned char kat3675_entropyin[] = { + 0x75, 0xfb, 0x31, 0xa8, 0xff, 0x97, 0x44, 0x86, 0xf2, 0x51, 0xce, 0x94, + 0xdf, 0x35, 0x47, 0xbb, 0x83, 0x1a, 0x95, 0xc2, 0x6b, 0x4e, 0xfb, 0xd8, + 0x16, 0x91, 0x2f, 0xcc, 0x76, 0x87, 0x77, 0xae, +}; +static const unsigned char kat3675_nonce[] = {0}; +static const unsigned char kat3675_persstr[] = {0}; +static const unsigned char kat3675_entropyinpr1[] = { + 0x80, 0x90, 0x39, 0x13, 0x80, 0xed, 0x44, 0xd3, 0x42, 0x3f, 0xdf, 0x8d, + 0x47, 0x89, 0x1a, 0x20, 0x27, 0x11, 0x0d, 0xa4, 0xc2, 0x33, 0x4e, 0xb9, + 0x1f, 0xe8, 0x61, 0x14, 0x02, 0x17, 0x63, 0x26, +}; +static const unsigned char kat3675_addinpr1[] = {0}; +static const unsigned char kat3675_entropyinpr2[] = { + 0x82, 0x88, 0xa1, 0x90, 0xae, 0x91, 0x18, 0xc5, 0x7b, 0x03, 0x38, 0x08, + 0xbb, 0x3f, 0x89, 0x5d, 0x4d, 0xfb, 0xf2, 0xdc, 0x7c, 0xe9, 0xb9, 0x01, + 0x6e, 0x33, 0x95, 0x48, 0xfe, 0xe1, 0x0a, 0x6f, +}; +static const unsigned char kat3675_addinpr2[] = {0}; +static const unsigned char kat3675_retbits[] = { + 0x73, 0xd1, 0x22, 0xb8, 0x85, 0x4f, 0x26, 0x10, 0xa8, 0x33, 0xa7, 0x8a, + 0xf2, 0x8b, 0xaf, 0x4a, 0x2d, 0xae, 0x48, 0xdd, 0x1e, 0xd6, 0x85, 0xe4, + 0xf9, 0x89, 0x47, 0x09, 0x2e, 0x3a, 0xaa, 0x56, 0xa6, 0x5f, 0xdc, 0x9a, + 0xcd, 0x8a, 0x87, 0x5c, 0x16, 0xb2, 0xa9, 0x1c, 0x75, 0x7f, 0xf7, 0xcd, + 0x6e, 0xe7, 0x77, 0x29, 0x2f, 0xbc, 0xb0, 0x22, 0x07, 0x95, 0xc9, 0x51, + 0x9c, 0xf4, 0x40, 0x52, +}; +static const struct drbg_kat_pr_true kat3675_t = { + 14, kat3675_entropyin, kat3675_nonce, kat3675_persstr, + kat3675_entropyinpr1, kat3675_addinpr1, kat3675_entropyinpr2, + kat3675_addinpr2, kat3675_retbits +}; +static const struct drbg_kat kat3675 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3675_t +}; + +static const unsigned char kat3676_entropyin[] = { + 0x2d, 0xd0, 0xfc, 0xc7, 0x16, 0x2b, 0x3e, 0x79, 0xcc, 0xf4, 0x8b, 0xca, + 0x28, 0xb7, 0x67, 0x60, 0x2f, 0x0e, 0x2f, 0xd3, 0xb5, 0xd3, 0xec, 0x2b, + 0xf9, 0x30, 0x66, 0xbc, 0xa0, 0xb4, 0x03, 0x1a, +}; +static const unsigned char kat3676_nonce[] = {0}; +static const unsigned char kat3676_persstr[] = {0}; +static const unsigned char kat3676_entropyinpr1[] = { + 0x19, 0x15, 0x75, 0x6d, 0xdd, 0xdd, 0x51, 0xab, 0x6b, 0xde, 0x8f, 0x0f, + 0x9e, 0xee, 0xa4, 0x99, 0x8e, 0x9b, 0x38, 0x44, 0x2b, 0x0e, 0x49, 0x4e, + 0x63, 0x27, 0x36, 0x73, 0xa1, 0x4a, 0xd6, 0x71, +}; +static const unsigned char kat3676_addinpr1[] = { + 0x3a, 0xc3, 0xda, 0xea, 0xd1, 0x3c, 0x11, 0x0c, 0xa3, 0xeb, 0x44, 0x99, + 0xd8, 0x38, 0xb9, 0x03, 0x64, 0xd9, 0x18, 0x35, 0x62, 0xc6, 0xad, 0x39, + 0xfa, 0xf5, 0x20, 0x4e, 0xdd, 0x12, 0x55, 0x26, +}; +static const unsigned char kat3676_entropyinpr2[] = { + 0x99, 0xf1, 0x84, 0x92, 0xb6, 0xf3, 0x02, 0x90, 0x55, 0x23, 0x16, 0x10, + 0x63, 0x90, 0x5f, 0x78, 0xe5, 0x8a, 0xb8, 0x06, 0x4c, 0xa0, 0x2a, 0x4f, + 0x33, 0x61, 0xa3, 0x37, 0x4a, 0xd6, 0x82, 0xdf, +}; +static const unsigned char kat3676_addinpr2[] = { + 0x6a, 0x14, 0x4c, 0xd9, 0x3e, 0x69, 0x56, 0x53, 0x3c, 0x8b, 0xe6, 0x04, + 0x8a, 0x44, 0x2b, 0x26, 0x8d, 0x88, 0x06, 0xa1, 0x12, 0xbc, 0xd8, 0x80, + 0xc9, 0x24, 0x23, 0x70, 0x05, 0x5c, 0x5e, 0x3f, +}; +static const unsigned char kat3676_retbits[] = { + 0x0f, 0xb6, 0x6b, 0x92, 0x99, 0xcc, 0xe5, 0x46, 0x10, 0x63, 0xcc, 0xf0, + 0xae, 0x08, 0x65, 0x5b, 0x0b, 0xc3, 0xf8, 0x53, 0x81, 0x3d, 0x04, 0xb0, + 0x8c, 0xc7, 0xfe, 0x6d, 0x76, 0xbf, 0xa2, 0xe7, 0x54, 0x9c, 0x45, 0x25, + 0xbf, 0x41, 0xff, 0xfa, 0xd6, 0x92, 0x7f, 0x3e, 0xa7, 0x59, 0xb0, 0xe0, + 0xcf, 0x0b, 0xb1, 0x33, 0x04, 0xc6, 0xfc, 0xb4, 0x28, 0xa3, 0xf2, 0xdb, + 0x3c, 0xe7, 0x5c, 0x2b, +}; +static const struct drbg_kat_pr_true kat3676_t = { + 0, kat3676_entropyin, kat3676_nonce, kat3676_persstr, + kat3676_entropyinpr1, kat3676_addinpr1, kat3676_entropyinpr2, + kat3676_addinpr2, kat3676_retbits +}; +static const struct drbg_kat kat3676 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3676_t +}; + +static const unsigned char kat3677_entropyin[] = { + 0x93, 0x62, 0xdc, 0x76, 0x2d, 0xeb, 0x45, 0xc0, 0x55, 0xc0, 0xe9, 0x21, + 0xf2, 0xaa, 0x78, 0xf8, 0x4c, 0x25, 0xd3, 0xe8, 0x53, 0x63, 0xf5, 0x45, + 0xb3, 0x60, 0xc7, 0x47, 0xfa, 0x49, 0xe0, 0xd9, +}; +static const unsigned char kat3677_nonce[] = {0}; +static const unsigned char kat3677_persstr[] = {0}; +static const unsigned char kat3677_entropyinpr1[] = { + 0xea, 0x75, 0x06, 0x27, 0x67, 0x58, 0x38, 0x80, 0xba, 0xa3, 0x1e, 0x1b, + 0xb8, 0xd1, 0x44, 0x5a, 0x54, 0x48, 0xb7, 0xab, 0x54, 0x39, 0x91, 0x43, + 0xcd, 0xfe, 0x70, 0xd3, 0x24, 0xca, 0x06, 0x69, +}; +static const unsigned char kat3677_addinpr1[] = { + 0x01, 0x53, 0xf8, 0x0a, 0xd5, 0xd4, 0x76, 0xe9, 0xa5, 0x73, 0x42, 0xf6, + 0x3a, 0xb7, 0xe4, 0xa6, 0x50, 0xce, 0x0b, 0x89, 0xc9, 0x42, 0x1d, 0xbc, + 0xe2, 0x7d, 0x5c, 0x87, 0x25, 0x2d, 0xd0, 0xa9, +}; +static const unsigned char kat3677_entropyinpr2[] = { + 0xc2, 0x67, 0xca, 0x3a, 0x1d, 0x0f, 0x08, 0x49, 0x80, 0x66, 0x07, 0x74, + 0xa4, 0x73, 0x2a, 0x8b, 0x7e, 0xd3, 0x9e, 0x9f, 0xee, 0x74, 0x82, 0x8d, + 0x88, 0x79, 0x25, 0xb0, 0x0a, 0x48, 0xb1, 0xda, +}; +static const unsigned char kat3677_addinpr2[] = { + 0x97, 0x33, 0x02, 0xeb, 0x52, 0xb4, 0x74, 0x0a, 0xc1, 0xa0, 0x96, 0xe4, + 0xc1, 0x7c, 0x1c, 0x2b, 0xa7, 0x05, 0xe8, 0xf2, 0xdd, 0x94, 0x13, 0x0d, + 0x29, 0x02, 0x02, 0x4d, 0x14, 0xb8, 0x8e, 0x64, +}; +static const unsigned char kat3677_retbits[] = { + 0xc3, 0x05, 0x9e, 0x25, 0x93, 0xf5, 0x83, 0x98, 0xa7, 0x08, 0x0e, 0xcc, + 0x25, 0xb0, 0x83, 0xa8, 0x18, 0xfe, 0xd5, 0x80, 0x2b, 0x10, 0xaf, 0xbe, + 0x6d, 0xe4, 0x49, 0x2b, 0x21, 0x99, 0x0a, 0x69, 0xac, 0xff, 0x74, 0xf0, + 0x41, 0x9a, 0x64, 0x37, 0x19, 0x6a, 0xfd, 0x02, 0xef, 0x27, 0x0c, 0x48, + 0x76, 0x64, 0xd3, 0xed, 0x1b, 0xcc, 0x39, 0x60, 0x45, 0x64, 0xaf, 0x01, + 0x4c, 0xaf, 0x62, 0x34, +}; +static const struct drbg_kat_pr_true kat3677_t = { + 1, kat3677_entropyin, kat3677_nonce, kat3677_persstr, + kat3677_entropyinpr1, kat3677_addinpr1, kat3677_entropyinpr2, + kat3677_addinpr2, kat3677_retbits +}; +static const struct drbg_kat kat3677 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3677_t +}; + +static const unsigned char kat3678_entropyin[] = { + 0x09, 0xaf, 0xd3, 0xec, 0x30, 0x0f, 0x19, 0x90, 0x93, 0x76, 0x84, 0xa3, + 0x15, 0xba, 0x4b, 0xf5, 0x56, 0xad, 0x93, 0xb9, 0x09, 0xd9, 0x01, 0xc9, + 0xfd, 0x12, 0xb0, 0xd1, 0x83, 0x2a, 0x83, 0x08, +}; +static const unsigned char kat3678_nonce[] = {0}; +static const unsigned char kat3678_persstr[] = {0}; +static const unsigned char kat3678_entropyinpr1[] = { + 0x3c, 0x4b, 0xc9, 0x6d, 0x25, 0xb9, 0x27, 0xbf, 0x52, 0x0d, 0x12, 0xec, + 0x1d, 0x19, 0xbd, 0xbf, 0xb5, 0x22, 0xd6, 0x2b, 0x59, 0x16, 0x17, 0x87, + 0x55, 0x9f, 0x3c, 0xa8, 0x9f, 0x1b, 0xa6, 0xe7, +}; +static const unsigned char kat3678_addinpr1[] = { + 0x90, 0xe2, 0x85, 0x63, 0x7a, 0x7b, 0x7a, 0x64, 0x0f, 0xd9, 0xec, 0xed, + 0x97, 0xc6, 0x86, 0xd0, 0x0e, 0x90, 0x08, 0x37, 0x31, 0xe6, 0xd9, 0xe7, + 0xba, 0x3c, 0x5a, 0x81, 0xfa, 0xe1, 0x17, 0x49, +}; +static const unsigned char kat3678_entropyinpr2[] = { + 0xf9, 0x8a, 0xec, 0xf3, 0x30, 0xb5, 0xf2, 0x9d, 0xba, 0x8b, 0xee, 0x1f, + 0xdd, 0x06, 0xd5, 0x06, 0xaf, 0xe9, 0x37, 0xd9, 0x84, 0xb4, 0xd0, 0x3e, + 0x00, 0x96, 0x1a, 0x89, 0x91, 0xba, 0x08, 0x71, +}; +static const unsigned char kat3678_addinpr2[] = { + 0x51, 0xbb, 0x47, 0x11, 0xd2, 0xce, 0x43, 0x0f, 0x9f, 0x13, 0x4d, 0x13, + 0xba, 0x5a, 0xa3, 0x25, 0x84, 0x31, 0xf8, 0x1f, 0x63, 0xc9, 0x96, 0x78, + 0x83, 0x44, 0x59, 0x14, 0x1d, 0xa1, 0xf6, 0x16, +}; +static const unsigned char kat3678_retbits[] = { + 0xa3, 0xcf, 0xff, 0x87, 0xc0, 0x88, 0x92, 0x7f, 0x0d, 0x1e, 0x52, 0xbf, + 0x1b, 0x2e, 0xaa, 0xb5, 0x2a, 0xcb, 0xf0, 0xa0, 0xd8, 0x94, 0x70, 0x52, + 0x34, 0xc9, 0xcc, 0x29, 0x7e, 0x53, 0xe5, 0xba, 0xeb, 0x55, 0x8a, 0x17, + 0x52, 0xaa, 0x53, 0x5d, 0xe9, 0x34, 0x10, 0xb8, 0xa0, 0x6b, 0xea, 0x90, + 0x02, 0xf4, 0x50, 0x6e, 0x17, 0x1e, 0xf3, 0x98, 0x69, 0xce, 0xf6, 0x15, + 0xac, 0x0f, 0xba, 0x4c, +}; +static const struct drbg_kat_pr_true kat3678_t = { + 2, kat3678_entropyin, kat3678_nonce, kat3678_persstr, + kat3678_entropyinpr1, kat3678_addinpr1, kat3678_entropyinpr2, + kat3678_addinpr2, kat3678_retbits +}; +static const struct drbg_kat kat3678 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3678_t +}; + +static const unsigned char kat3679_entropyin[] = { + 0xf0, 0xfa, 0x26, 0x41, 0x13, 0x59, 0x9c, 0xc3, 0xd7, 0x8f, 0xc8, 0xfa, + 0xd2, 0x76, 0x84, 0xc1, 0x8a, 0x6e, 0xe9, 0x98, 0xcd, 0x91, 0x3e, 0x2f, + 0xeb, 0x13, 0x8a, 0xb1, 0xf2, 0xff, 0x4c, 0xc7, +}; +static const unsigned char kat3679_nonce[] = {0}; +static const unsigned char kat3679_persstr[] = {0}; +static const unsigned char kat3679_entropyinpr1[] = { + 0x0d, 0xa9, 0x07, 0x26, 0x4f, 0xb1, 0xcc, 0x38, 0x5e, 0xc6, 0x98, 0xad, + 0xf8, 0x89, 0x92, 0xd1, 0x21, 0x9b, 0xee, 0x72, 0x13, 0x77, 0xa5, 0x1e, + 0x73, 0xef, 0xf6, 0xc6, 0x19, 0xa6, 0x3b, 0x1f, +}; +static const unsigned char kat3679_addinpr1[] = { + 0x20, 0xc7, 0x04, 0x71, 0xca, 0xa7, 0x43, 0xe3, 0x32, 0xde, 0xae, 0x20, + 0xf4, 0x9f, 0xfd, 0xad, 0x60, 0x36, 0xd5, 0x4a, 0x12, 0xcc, 0x5e, 0xa1, + 0x79, 0xff, 0x1a, 0xb7, 0x5a, 0x32, 0xd2, 0xc0, +}; +static const unsigned char kat3679_entropyinpr2[] = { + 0x11, 0xe1, 0xe3, 0x92, 0x1b, 0x8d, 0x34, 0xfd, 0xde, 0xd9, 0x5b, 0x7f, + 0x34, 0x9d, 0xd4, 0x86, 0x5a, 0x1d, 0x00, 0x0c, 0x5e, 0xb1, 0x86, 0x01, + 0x77, 0xbf, 0x30, 0x05, 0x06, 0x79, 0x6b, 0x0f, +}; +static const unsigned char kat3679_addinpr2[] = { + 0xa4, 0xac, 0xaf, 0x52, 0xec, 0xcf, 0x13, 0x8c, 0xc7, 0xbf, 0xb6, 0x1d, + 0xf7, 0x33, 0x20, 0xcd, 0xd4, 0x4b, 0x93, 0x38, 0xa5, 0xd6, 0x1b, 0x7a, + 0x3b, 0x0b, 0xd5, 0xc0, 0x63, 0x94, 0x20, 0x52, +}; +static const unsigned char kat3679_retbits[] = { + 0x19, 0x41, 0xdf, 0x8f, 0xe4, 0x4f, 0xc7, 0xdc, 0x3b, 0x6f, 0x3c, 0xf6, + 0x77, 0x17, 0x7b, 0x2f, 0x3b, 0x9b, 0xba, 0x7f, 0xc8, 0xc6, 0xaf, 0x02, + 0xc8, 0xf0, 0xf5, 0xdf, 0x06, 0xcc, 0x56, 0xd1, 0x33, 0x61, 0x6a, 0x24, + 0xde, 0xec, 0xb8, 0x00, 0xc3, 0x87, 0x55, 0xdc, 0xe1, 0x9b, 0x2d, 0x7b, + 0x49, 0x0c, 0x1f, 0x59, 0xb5, 0xa5, 0xdd, 0xd3, 0xdd, 0xc4, 0x84, 0x2f, + 0x47, 0x8a, 0x5e, 0x48, +}; +static const struct drbg_kat_pr_true kat3679_t = { + 3, kat3679_entropyin, kat3679_nonce, kat3679_persstr, + kat3679_entropyinpr1, kat3679_addinpr1, kat3679_entropyinpr2, + kat3679_addinpr2, kat3679_retbits +}; +static const struct drbg_kat kat3679 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3679_t +}; + +static const unsigned char kat3680_entropyin[] = { + 0xc5, 0xc4, 0xce, 0xba, 0xc0, 0x2c, 0xe5, 0xf2, 0x87, 0xc8, 0xfb, 0xcd, + 0x66, 0xd0, 0x8b, 0x64, 0x66, 0x34, 0xf0, 0x95, 0x0f, 0x5e, 0x11, 0x9a, + 0xb8, 0xe3, 0x42, 0x51, 0xe9, 0xe4, 0x9e, 0x13, +}; +static const unsigned char kat3680_nonce[] = {0}; +static const unsigned char kat3680_persstr[] = {0}; +static const unsigned char kat3680_entropyinpr1[] = { + 0x7b, 0x20, 0x60, 0xe8, 0x15, 0x20, 0xda, 0x7d, 0x30, 0x9c, 0xd8, 0x85, + 0xb7, 0xcd, 0x97, 0xb2, 0xce, 0x58, 0xfd, 0xb3, 0x07, 0x56, 0xf2, 0xef, + 0xf2, 0x57, 0x6c, 0xd1, 0x48, 0xbc, 0x34, 0x99, +}; +static const unsigned char kat3680_addinpr1[] = { + 0x37, 0x7b, 0x47, 0x59, 0xc1, 0xa6, 0xb0, 0xfb, 0x86, 0x20, 0x4b, 0x30, + 0x78, 0x67, 0x9b, 0xbc, 0x8c, 0x5a, 0x3c, 0xa8, 0xd9, 0x68, 0xd0, 0xf8, + 0xe4, 0x7b, 0x99, 0x75, 0xa9, 0x3c, 0x47, 0x56, +}; +static const unsigned char kat3680_entropyinpr2[] = { + 0xd3, 0xe9, 0x5b, 0x3c, 0xaf, 0x41, 0x29, 0x96, 0xc1, 0x8f, 0x32, 0x95, + 0x53, 0x95, 0x0b, 0x83, 0xb8, 0x3f, 0x27, 0x60, 0xc9, 0xf8, 0x55, 0x60, + 0x06, 0x47, 0xfe, 0xff, 0x1e, 0x85, 0xe1, 0x90, +}; +static const unsigned char kat3680_addinpr2[] = { + 0x97, 0x7d, 0x08, 0x18, 0x83, 0x66, 0x8e, 0xac, 0x6a, 0x42, 0x78, 0x14, + 0xb6, 0xbe, 0x53, 0x1b, 0xc1, 0x7a, 0x8c, 0x32, 0x03, 0x3f, 0xe5, 0x68, + 0xd1, 0x90, 0xde, 0x07, 0x85, 0xd1, 0x52, 0x62, +}; +static const unsigned char kat3680_retbits[] = { + 0x16, 0x11, 0x54, 0x7c, 0x23, 0x8c, 0x72, 0x74, 0xec, 0xf2, 0xbf, 0x45, + 0x3d, 0xe2, 0x5b, 0x37, 0xfc, 0x5e, 0x0b, 0xc5, 0x50, 0x23, 0x5b, 0x86, + 0x7b, 0x66, 0xd4, 0x92, 0x90, 0x2c, 0xd4, 0xd7, 0xd9, 0x04, 0xef, 0x25, + 0xf4, 0x33, 0xc8, 0x03, 0x06, 0xef, 0xb8, 0x96, 0xd9, 0xc5, 0x31, 0xc4, + 0x48, 0x96, 0xb8, 0x64, 0xe0, 0x34, 0x2f, 0xc0, 0xfe, 0x69, 0x28, 0x46, + 0x17, 0x34, 0xa1, 0x8a, +}; +static const struct drbg_kat_pr_true kat3680_t = { + 4, kat3680_entropyin, kat3680_nonce, kat3680_persstr, + kat3680_entropyinpr1, kat3680_addinpr1, kat3680_entropyinpr2, + kat3680_addinpr2, kat3680_retbits +}; +static const struct drbg_kat kat3680 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3680_t +}; + +static const unsigned char kat3681_entropyin[] = { + 0xbd, 0x08, 0xca, 0xd2, 0x7b, 0x7f, 0xe2, 0xd3, 0x9a, 0x95, 0x09, 0x59, + 0xc2, 0xa1, 0x8a, 0x48, 0xbd, 0xf6, 0xff, 0xe7, 0x95, 0x91, 0xc5, 0x2e, + 0x94, 0xb5, 0x05, 0x26, 0x99, 0x07, 0x39, 0x80, +}; +static const unsigned char kat3681_nonce[] = {0}; +static const unsigned char kat3681_persstr[] = {0}; +static const unsigned char kat3681_entropyinpr1[] = { + 0x84, 0x1d, 0x45, 0x33, 0x4b, 0x4a, 0x4b, 0x5e, 0x14, 0xd5, 0xe4, 0x5e, + 0x7f, 0xf4, 0xed, 0x8c, 0x23, 0x29, 0x6b, 0x61, 0xd7, 0xba, 0x93, 0xaf, + 0x8c, 0x4f, 0x7f, 0x26, 0x38, 0x83, 0xe2, 0x19, +}; +static const unsigned char kat3681_addinpr1[] = { + 0x45, 0xb4, 0x9b, 0x8a, 0x72, 0x96, 0xf5, 0x71, 0x9a, 0x07, 0x9e, 0xeb, + 0x29, 0x85, 0x06, 0xec, 0xdd, 0xdf, 0x90, 0x46, 0x6c, 0x68, 0x63, 0x22, + 0x90, 0x8f, 0xf8, 0x12, 0x1c, 0x49, 0x15, 0xc5, +}; +static const unsigned char kat3681_entropyinpr2[] = { + 0x13, 0xf9, 0x1a, 0x9f, 0xe3, 0xc2, 0x27, 0x71, 0x49, 0x41, 0x0a, 0xa9, + 0xdd, 0xcb, 0xf4, 0xff, 0x68, 0x1d, 0xa7, 0x7e, 0xf8, 0x52, 0x61, 0x07, + 0x6e, 0xbd, 0xde, 0x0d, 0xf8, 0x0e, 0xb8, 0xa9, +}; +static const unsigned char kat3681_addinpr2[] = { + 0xe3, 0x55, 0x64, 0xd7, 0x2e, 0x5c, 0xa8, 0xa3, 0xb3, 0xf7, 0x0c, 0x75, + 0xb8, 0xd5, 0x05, 0x4c, 0x3d, 0xdb, 0xe2, 0x30, 0xf7, 0x6d, 0x0c, 0x30, + 0xff, 0x4a, 0xdc, 0xad, 0xda, 0xce, 0x05, 0x0c, +}; +static const unsigned char kat3681_retbits[] = { + 0x25, 0xab, 0x2d, 0x67, 0x3c, 0xbe, 0x63, 0x0c, 0x32, 0xa0, 0x51, 0xc8, + 0x1a, 0x20, 0x32, 0x7d, 0x85, 0xcf, 0x1f, 0x39, 0xa3, 0x46, 0xf4, 0x4a, + 0x8e, 0x8f, 0x3f, 0xe0, 0x18, 0xb8, 0xb3, 0x35, 0xce, 0xe0, 0x30, 0xa9, + 0x5e, 0x4b, 0xf1, 0xa6, 0x7f, 0x12, 0x08, 0xc4, 0xe7, 0xf8, 0x6e, 0x93, + 0xdd, 0x6a, 0xa5, 0xe7, 0x4b, 0x8b, 0x9c, 0x27, 0x81, 0x60, 0xb8, 0xf3, + 0x6c, 0x00, 0x54, 0xca, +}; +static const struct drbg_kat_pr_true kat3681_t = { + 5, kat3681_entropyin, kat3681_nonce, kat3681_persstr, + kat3681_entropyinpr1, kat3681_addinpr1, kat3681_entropyinpr2, + kat3681_addinpr2, kat3681_retbits +}; +static const struct drbg_kat kat3681 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3681_t +}; + +static const unsigned char kat3682_entropyin[] = { + 0xad, 0x73, 0x2d, 0x92, 0xbe, 0x54, 0x88, 0x42, 0x07, 0xea, 0x80, 0x87, + 0xd2, 0x04, 0x36, 0x60, 0xf0, 0x0e, 0xc7, 0xe9, 0x90, 0x5d, 0x72, 0x5b, + 0x49, 0xe3, 0xc9, 0x47, 0x2d, 0xd8, 0xf5, 0x67, +}; +static const unsigned char kat3682_nonce[] = {0}; +static const unsigned char kat3682_persstr[] = {0}; +static const unsigned char kat3682_entropyinpr1[] = { + 0x21, 0x9d, 0x63, 0x3d, 0x75, 0x00, 0x04, 0x85, 0xd9, 0x3d, 0xc3, 0x91, + 0x2a, 0xce, 0x84, 0xa4, 0x9b, 0x89, 0x63, 0x74, 0xb1, 0xb0, 0xf6, 0xc5, + 0xb6, 0x85, 0x59, 0x7f, 0x84, 0xbe, 0x5a, 0x20, +}; +static const unsigned char kat3682_addinpr1[] = { + 0x66, 0xd3, 0x9c, 0x4b, 0x35, 0x80, 0x73, 0x23, 0x70, 0xeb, 0xf6, 0x38, + 0x27, 0x24, 0x1a, 0x66, 0x18, 0x51, 0xef, 0x81, 0xe9, 0x5c, 0x16, 0x56, + 0xb2, 0xc0, 0x42, 0xcc, 0x84, 0xa5, 0x3e, 0xd4, +}; +static const unsigned char kat3682_entropyinpr2[] = { + 0x5b, 0x56, 0xfa, 0xa1, 0xa2, 0x8d, 0xaf, 0x8e, 0x33, 0x67, 0x0a, 0x9a, + 0x88, 0x29, 0x0f, 0x84, 0xb1, 0xe0, 0x12, 0xb1, 0xce, 0x87, 0x31, 0x29, + 0x06, 0x27, 0x57, 0x14, 0x75, 0x67, 0x5d, 0xec, +}; +static const unsigned char kat3682_addinpr2[] = { + 0x18, 0x06, 0xa0, 0x80, 0x80, 0x6f, 0x2f, 0x75, 0xac, 0xfe, 0x64, 0x92, + 0x87, 0x80, 0xd8, 0x91, 0x0a, 0x9e, 0xe3, 0x7f, 0x18, 0xf8, 0xce, 0x4f, + 0x0f, 0xf8, 0xe5, 0xfe, 0x15, 0xce, 0xf4, 0xd8, +}; +static const unsigned char kat3682_retbits[] = { + 0x13, 0x94, 0x3d, 0xaa, 0x9f, 0x54, 0xf8, 0x78, 0xf5, 0xc4, 0xe7, 0x80, + 0x6b, 0x41, 0x89, 0xf6, 0xc4, 0x70, 0x73, 0x86, 0xbc, 0xe9, 0x85, 0xe6, + 0xea, 0x5d, 0x59, 0xdf, 0xb6, 0x44, 0xec, 0xe6, 0x54, 0xea, 0x3f, 0x37, + 0xdb, 0x37, 0x0a, 0x86, 0x86, 0x33, 0xb4, 0x14, 0x5f, 0xa6, 0xa9, 0x18, + 0x60, 0xd5, 0x44, 0x6c, 0x61, 0xc8, 0x95, 0x50, 0x79, 0x43, 0x1b, 0xc3, + 0xcd, 0x39, 0x82, 0x24, +}; +static const struct drbg_kat_pr_true kat3682_t = { + 6, kat3682_entropyin, kat3682_nonce, kat3682_persstr, + kat3682_entropyinpr1, kat3682_addinpr1, kat3682_entropyinpr2, + kat3682_addinpr2, kat3682_retbits +}; +static const struct drbg_kat kat3682 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3682_t +}; + +static const unsigned char kat3683_entropyin[] = { + 0x9c, 0x8b, 0xf8, 0x3c, 0x10, 0x44, 0x4c, 0x6c, 0x01, 0xc3, 0x15, 0x30, + 0xde, 0xfe, 0x2c, 0x0f, 0xb3, 0x03, 0x59, 0x2f, 0xa4, 0xe4, 0xa5, 0x27, + 0x8a, 0x90, 0xa5, 0x99, 0x74, 0xbf, 0x24, 0xc6, +}; +static const unsigned char kat3683_nonce[] = {0}; +static const unsigned char kat3683_persstr[] = {0}; +static const unsigned char kat3683_entropyinpr1[] = { + 0x3a, 0xd1, 0xbd, 0xaf, 0x31, 0xb8, 0x42, 0x3c, 0x41, 0x60, 0x59, 0x77, + 0xfe, 0x26, 0xc3, 0x89, 0xdf, 0x45, 0x04, 0xf1, 0xb2, 0x11, 0xf3, 0xfc, + 0xfa, 0x7d, 0x70, 0xfa, 0x8a, 0x27, 0xff, 0x41, +}; +static const unsigned char kat3683_addinpr1[] = { + 0x39, 0xad, 0x1b, 0x47, 0xb3, 0x7d, 0x90, 0xf3, 0x5d, 0x0d, 0xf7, 0x56, + 0x4d, 0x35, 0xb8, 0x2e, 0x98, 0x74, 0x0f, 0x23, 0xf9, 0xb2, 0x06, 0x95, + 0x03, 0x38, 0x75, 0xae, 0x19, 0xad, 0xcc, 0x0d, +}; +static const unsigned char kat3683_entropyinpr2[] = { + 0xf0, 0xf1, 0xb8, 0x0d, 0x29, 0x61, 0x23, 0x35, 0x73, 0x80, 0xc9, 0xf2, + 0x6f, 0x00, 0xa0, 0x4a, 0xc9, 0x56, 0x61, 0x02, 0xb0, 0x0a, 0x8a, 0xd6, + 0xc7, 0x1c, 0x08, 0x2a, 0x24, 0x58, 0xf4, 0xeb, +}; +static const unsigned char kat3683_addinpr2[] = { + 0xcd, 0xa8, 0xf6, 0x8e, 0x54, 0x64, 0x21, 0x05, 0x53, 0x50, 0x5c, 0x0d, + 0x54, 0x86, 0x1e, 0x50, 0x0d, 0xb8, 0xb3, 0x28, 0x26, 0xd4, 0x7e, 0xec, + 0x2b, 0x27, 0xb3, 0x93, 0xa6, 0x1f, 0x05, 0xd9, +}; +static const unsigned char kat3683_retbits[] = { + 0xe5, 0xb3, 0x01, 0x9c, 0x7f, 0x4e, 0x80, 0x92, 0xc0, 0x23, 0xb1, 0x57, + 0x3d, 0x83, 0xb7, 0xe3, 0x1a, 0xd6, 0xea, 0x88, 0x20, 0xa7, 0x42, 0x59, + 0x4a, 0x42, 0xde, 0x4c, 0x7b, 0xc6, 0xc2, 0x7f, 0x13, 0xa9, 0xeb, 0xb4, + 0x46, 0xb7, 0x86, 0x82, 0xe1, 0x6e, 0xd6, 0x75, 0x99, 0x06, 0xdf, 0x12, + 0xb8, 0x85, 0x45, 0x4d, 0x35, 0x4f, 0x8e, 0x72, 0xc7, 0x32, 0x52, 0xd5, + 0xda, 0xdb, 0x48, 0x5c, +}; +static const struct drbg_kat_pr_true kat3683_t = { + 7, kat3683_entropyin, kat3683_nonce, kat3683_persstr, + kat3683_entropyinpr1, kat3683_addinpr1, kat3683_entropyinpr2, + kat3683_addinpr2, kat3683_retbits +}; +static const struct drbg_kat kat3683 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3683_t +}; + +static const unsigned char kat3684_entropyin[] = { + 0x6b, 0xf4, 0x78, 0x25, 0x78, 0x20, 0xc1, 0xd1, 0x0c, 0xb7, 0x35, 0xaa, + 0xc7, 0x63, 0x25, 0xe8, 0xd8, 0x28, 0x65, 0x2b, 0x3d, 0x85, 0xb8, 0x21, + 0x76, 0xc4, 0xab, 0x3e, 0x2a, 0xb5, 0x93, 0xc0, +}; +static const unsigned char kat3684_nonce[] = {0}; +static const unsigned char kat3684_persstr[] = {0}; +static const unsigned char kat3684_entropyinpr1[] = { + 0x94, 0x1e, 0xca, 0xd9, 0x52, 0x8b, 0x28, 0x8c, 0x61, 0x6a, 0x07, 0xd1, + 0x53, 0x06, 0xb3, 0xcb, 0xb4, 0x91, 0x54, 0x7d, 0xd5, 0x1c, 0xf0, 0x0b, + 0x83, 0xc6, 0xc9, 0xf7, 0x6c, 0xc2, 0x75, 0x2d, +}; +static const unsigned char kat3684_addinpr1[] = { + 0xf8, 0x04, 0xbb, 0x31, 0x34, 0x0d, 0xbb, 0x30, 0xa4, 0xf0, 0xc7, 0xdf, + 0xc2, 0x75, 0x3c, 0x5b, 0x52, 0x5e, 0x7f, 0xc2, 0x5a, 0xf8, 0x9c, 0x6e, + 0x20, 0x8b, 0xc5, 0xb6, 0x92, 0xa0, 0xc4, 0x53, +}; +static const unsigned char kat3684_entropyinpr2[] = { + 0xe2, 0xa8, 0xa2, 0x33, 0xcc, 0xcf, 0xc5, 0xd8, 0x30, 0x38, 0xbb, 0x66, + 0xbe, 0x79, 0xc7, 0x95, 0xa8, 0x7f, 0x32, 0xa6, 0xd0, 0xaa, 0x62, 0x87, + 0xc8, 0x28, 0xde, 0x02, 0x60, 0x46, 0xbd, 0x62, +}; +static const unsigned char kat3684_addinpr2[] = { + 0x59, 0xca, 0x63, 0x5f, 0x03, 0x14, 0x76, 0xd4, 0x77, 0x09, 0x06, 0x7f, + 0x10, 0x87, 0x24, 0x1a, 0x13, 0x5f, 0xc6, 0x17, 0xb6, 0xf4, 0x38, 0xfb, + 0xb1, 0x43, 0xe2, 0xcd, 0x4b, 0xe0, 0xc3, 0xff, +}; +static const unsigned char kat3684_retbits[] = { + 0xf5, 0xa2, 0xb8, 0x49, 0x8e, 0x45, 0xe8, 0xa5, 0x15, 0x1b, 0xb5, 0xdc, + 0x6c, 0x87, 0x1b, 0xa1, 0xf4, 0x4a, 0x1b, 0xfe, 0x37, 0x6c, 0x57, 0x67, + 0x1c, 0x62, 0x16, 0xe4, 0xf2, 0x2c, 0x75, 0x15, 0x2a, 0x2a, 0x4e, 0x5a, + 0x52, 0x95, 0xa0, 0x48, 0x6d, 0x3e, 0x80, 0x93, 0x78, 0xae, 0xf1, 0xa8, + 0x93, 0xde, 0x7e, 0x2a, 0xef, 0x5a, 0x3b, 0xe8, 0x24, 0x01, 0x41, 0x3f, + 0xc9, 0x7f, 0x8d, 0x97, +}; +static const struct drbg_kat_pr_true kat3684_t = { + 8, kat3684_entropyin, kat3684_nonce, kat3684_persstr, + kat3684_entropyinpr1, kat3684_addinpr1, kat3684_entropyinpr2, + kat3684_addinpr2, kat3684_retbits +}; +static const struct drbg_kat kat3684 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3684_t +}; + +static const unsigned char kat3685_entropyin[] = { + 0xed, 0x30, 0x36, 0x7d, 0x5a, 0xb3, 0x33, 0x62, 0x86, 0x75, 0x9f, 0x9d, + 0x8b, 0xa7, 0x42, 0x0c, 0x04, 0x17, 0x11, 0x6c, 0x2c, 0xb6, 0x73, 0x55, + 0x60, 0xd8, 0x14, 0x45, 0x22, 0x0b, 0xfc, 0x73, +}; +static const unsigned char kat3685_nonce[] = {0}; +static const unsigned char kat3685_persstr[] = {0}; +static const unsigned char kat3685_entropyinpr1[] = { + 0x27, 0x10, 0xbc, 0xc2, 0xfb, 0x39, 0xcf, 0xbb, 0x2b, 0x23, 0x0d, 0x21, + 0x7c, 0xdc, 0xcc, 0xab, 0x7b, 0xcf, 0xe8, 0xc7, 0xd9, 0x60, 0xfd, 0xca, + 0xa8, 0x44, 0xc5, 0x7f, 0xb2, 0x21, 0xe2, 0x8f, +}; +static const unsigned char kat3685_addinpr1[] = { + 0xc5, 0x0c, 0xa9, 0x2a, 0x85, 0xcb, 0x04, 0xe2, 0x37, 0x8a, 0xf4, 0x9f, + 0xba, 0xf5, 0xe7, 0xe5, 0x09, 0x94, 0x64, 0x75, 0x81, 0x82, 0x70, 0xf7, + 0xec, 0xa1, 0x54, 0xc8, 0xeb, 0x2b, 0x97, 0x0a, +}; +static const unsigned char kat3685_entropyinpr2[] = { + 0x11, 0x67, 0x7e, 0x7b, 0xff, 0x8b, 0x42, 0xbf, 0x71, 0xb8, 0xf5, 0xc0, + 0xc0, 0xa1, 0xf2, 0x82, 0x90, 0x63, 0x73, 0xdc, 0x94, 0xa2, 0x25, 0x76, + 0x4d, 0x70, 0x83, 0x50, 0x66, 0xe7, 0xd5, 0x2f, +}; +static const unsigned char kat3685_addinpr2[] = { + 0xe6, 0xfe, 0xd3, 0x6e, 0x76, 0x3c, 0x72, 0x54, 0xff, 0xf2, 0x04, 0x46, + 0xd1, 0x61, 0x0b, 0x7c, 0xe8, 0xf3, 0x8e, 0xf7, 0xd1, 0x29, 0xe9, 0x07, + 0xdf, 0x8e, 0x38, 0xf5, 0x84, 0x2d, 0x72, 0xa6, +}; +static const unsigned char kat3685_retbits[] = { + 0x83, 0x6c, 0x1c, 0xd9, 0xeb, 0x49, 0xbb, 0x83, 0xc8, 0xe0, 0xaf, 0xbd, + 0xf9, 0x93, 0x55, 0x89, 0xcd, 0x78, 0x72, 0x1b, 0x3b, 0x97, 0x4f, 0x63, + 0xf3, 0x2b, 0x06, 0xf0, 0x6e, 0xcd, 0xce, 0x5e, 0x1d, 0x59, 0x10, 0xf0, + 0xd1, 0xa3, 0xa4, 0x21, 0xb4, 0x7c, 0xe6, 0x1e, 0xb2, 0x68, 0x94, 0xf2, + 0xdc, 0x51, 0xee, 0x36, 0xa0, 0x9f, 0x74, 0xa9, 0xdc, 0x15, 0x0c, 0x84, + 0x82, 0x66, 0xdc, 0x1f, +}; +static const struct drbg_kat_pr_true kat3685_t = { + 9, kat3685_entropyin, kat3685_nonce, kat3685_persstr, + kat3685_entropyinpr1, kat3685_addinpr1, kat3685_entropyinpr2, + kat3685_addinpr2, kat3685_retbits +}; +static const struct drbg_kat kat3685 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3685_t +}; + +static const unsigned char kat3686_entropyin[] = { + 0xe4, 0x92, 0xb8, 0x3d, 0x6e, 0xed, 0xc1, 0xd9, 0x54, 0x8a, 0xf4, 0x5b, + 0x15, 0xdb, 0x4b, 0xce, 0x09, 0x7f, 0x0c, 0x28, 0xf1, 0xb0, 0x3b, 0xed, + 0x9f, 0x2c, 0xef, 0x37, 0x72, 0x5e, 0x5c, 0x98, +}; +static const unsigned char kat3686_nonce[] = {0}; +static const unsigned char kat3686_persstr[] = {0}; +static const unsigned char kat3686_entropyinpr1[] = { + 0xc6, 0x6a, 0x45, 0xb7, 0x88, 0x9a, 0x10, 0xa0, 0x7a, 0xb5, 0xa6, 0xb2, + 0x9d, 0x4c, 0x26, 0x5c, 0x9e, 0x19, 0x6b, 0xbe, 0x5d, 0x0f, 0xea, 0x35, + 0xe5, 0x52, 0x1d, 0x4d, 0x06, 0xe4, 0x87, 0xde, +}; +static const unsigned char kat3686_addinpr1[] = { + 0xb2, 0x7a, 0x9c, 0x49, 0xab, 0xe0, 0x3e, 0x4b, 0xbb, 0x62, 0x73, 0x8a, + 0xe8, 0x69, 0x59, 0xc5, 0xb7, 0xb6, 0x99, 0x22, 0x40, 0xee, 0x8d, 0x99, + 0xb1, 0x53, 0x70, 0xdf, 0x1c, 0x5d, 0xfb, 0x10, +}; +static const unsigned char kat3686_entropyinpr2[] = { + 0x13, 0x2c, 0x6a, 0xac, 0x2b, 0xfe, 0x3a, 0x23, 0x17, 0x5a, 0xf8, 0xf7, + 0x3e, 0x0b, 0x0f, 0xfb, 0xb7, 0xca, 0x29, 0x94, 0x20, 0x59, 0x91, 0xb2, + 0x42, 0xe7, 0x8e, 0xd7, 0x47, 0xb2, 0x9d, 0xa6, +}; +static const unsigned char kat3686_addinpr2[] = { + 0x0b, 0x9e, 0xd3, 0x1e, 0xf4, 0xa3, 0x53, 0xa9, 0xe5, 0x58, 0xc8, 0x14, + 0x22, 0x5c, 0xe6, 0xa4, 0x8c, 0xcd, 0xc0, 0x47, 0x92, 0xc0, 0xa5, 0x17, + 0x52, 0x16, 0xc3, 0x94, 0xae, 0x6c, 0x5a, 0x20, +}; +static const unsigned char kat3686_retbits[] = { + 0x42, 0xde, 0x12, 0x48, 0xd7, 0xb8, 0x6b, 0xdf, 0xe2, 0x7d, 0xa7, 0x4f, + 0xf1, 0x73, 0x48, 0x23, 0xae, 0x44, 0x24, 0x29, 0xd0, 0x0e, 0xde, 0xfa, + 0xdb, 0x60, 0x00, 0xb2, 0x50, 0x9d, 0x51, 0xd9, 0x46, 0x74, 0x26, 0xf8, + 0xca, 0x60, 0xa0, 0x8b, 0xdc, 0xed, 0x0a, 0x29, 0x30, 0x91, 0xc5, 0xf9, + 0x79, 0x43, 0x24, 0x4c, 0xc5, 0xa1, 0x92, 0x2d, 0x78, 0x8b, 0xd7, 0x3e, + 0xcb, 0x3f, 0x0f, 0x2e, +}; +static const struct drbg_kat_pr_true kat3686_t = { + 10, kat3686_entropyin, kat3686_nonce, kat3686_persstr, + kat3686_entropyinpr1, kat3686_addinpr1, kat3686_entropyinpr2, + kat3686_addinpr2, kat3686_retbits +}; +static const struct drbg_kat kat3686 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3686_t +}; + +static const unsigned char kat3687_entropyin[] = { + 0x90, 0x98, 0x15, 0x0b, 0x27, 0x27, 0x41, 0x47, 0x67, 0x01, 0x6c, 0xf5, + 0x47, 0x12, 0x12, 0x96, 0x21, 0x3f, 0x3d, 0xe8, 0xef, 0x13, 0x18, 0x31, + 0x11, 0xde, 0xb0, 0xeb, 0x05, 0x32, 0x5b, 0xd9, +}; +static const unsigned char kat3687_nonce[] = {0}; +static const unsigned char kat3687_persstr[] = {0}; +static const unsigned char kat3687_entropyinpr1[] = { + 0x95, 0xa1, 0x89, 0x59, 0x45, 0x59, 0xbc, 0xe1, 0x4e, 0x5b, 0xd3, 0x29, + 0x35, 0x27, 0x41, 0x1b, 0x5c, 0x0a, 0x5b, 0x3d, 0x5c, 0x9a, 0x11, 0x7e, + 0x06, 0x35, 0x68, 0x3d, 0x93, 0xdc, 0x77, 0xa2, +}; +static const unsigned char kat3687_addinpr1[] = { + 0x22, 0x86, 0x35, 0x43, 0xbd, 0xfa, 0xe1, 0x63, 0x71, 0x89, 0x95, 0xb7, + 0xca, 0x3c, 0xa7, 0xf7, 0xc6, 0xde, 0x43, 0x3c, 0xc5, 0xdc, 0x97, 0xb4, + 0xe6, 0xda, 0x7e, 0x0e, 0xfa, 0x38, 0x14, 0xeb, +}; +static const unsigned char kat3687_entropyinpr2[] = { + 0x80, 0x59, 0x6d, 0xf2, 0xb2, 0x54, 0x94, 0x06, 0x76, 0x96, 0x8e, 0xde, + 0xd6, 0x90, 0x99, 0x1a, 0x81, 0x6a, 0x12, 0x78, 0x37, 0x3e, 0xc6, 0x38, + 0xc9, 0x15, 0x3a, 0x40, 0xbb, 0xaa, 0x37, 0xc5, +}; +static const unsigned char kat3687_addinpr2[] = { + 0xda, 0xdc, 0x98, 0xa2, 0xbd, 0x1f, 0xae, 0xea, 0x04, 0x00, 0x05, 0x7d, + 0x5e, 0xc0, 0xdf, 0x66, 0x38, 0xce, 0x83, 0x86, 0x63, 0xe3, 0x4b, 0x94, + 0x7b, 0x44, 0x8f, 0xdf, 0xca, 0x99, 0x6a, 0x4b, +}; +static const unsigned char kat3687_retbits[] = { + 0x20, 0x88, 0xca, 0xd0, 0xec, 0x91, 0x65, 0xf1, 0x0b, 0x53, 0xbc, 0x86, + 0x05, 0x07, 0x3d, 0x15, 0x82, 0x99, 0x0f, 0xce, 0xd6, 0x19, 0x99, 0xea, + 0x1c, 0xca, 0xc3, 0xb7, 0xda, 0xaa, 0x2d, 0xd6, 0x33, 0x39, 0xf2, 0x97, + 0x5f, 0x1e, 0x8a, 0x92, 0x64, 0xf1, 0x54, 0x0c, 0x23, 0x2f, 0xcc, 0x6a, + 0x79, 0xd9, 0xaa, 0x63, 0xf9, 0x6c, 0x94, 0x8e, 0x86, 0x46, 0x77, 0x7d, + 0x72, 0x35, 0xfc, 0x7f, +}; +static const struct drbg_kat_pr_true kat3687_t = { + 11, kat3687_entropyin, kat3687_nonce, kat3687_persstr, + kat3687_entropyinpr1, kat3687_addinpr1, kat3687_entropyinpr2, + kat3687_addinpr2, kat3687_retbits +}; +static const struct drbg_kat kat3687 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3687_t +}; + +static const unsigned char kat3688_entropyin[] = { + 0x0e, 0xcf, 0x8a, 0x53, 0xc5, 0xcb, 0xfc, 0x45, 0xb0, 0x96, 0x44, 0xe1, + 0xb7, 0x68, 0x74, 0x8d, 0xf8, 0x9d, 0xe7, 0x7e, 0x2e, 0xc2, 0xe5, 0x53, + 0x5f, 0x75, 0x7e, 0x9b, 0x90, 0x18, 0xc9, 0x9e, +}; +static const unsigned char kat3688_nonce[] = {0}; +static const unsigned char kat3688_persstr[] = {0}; +static const unsigned char kat3688_entropyinpr1[] = { + 0x53, 0x27, 0x09, 0x98, 0x32, 0xd3, 0x3e, 0x86, 0x3f, 0x2f, 0x1d, 0x84, + 0x3b, 0x1c, 0x1e, 0x84, 0xa1, 0xf2, 0xcb, 0x9f, 0x94, 0xf1, 0x0c, 0x00, + 0xd1, 0xaa, 0x2c, 0xe8, 0x8d, 0x6f, 0xf5, 0xce, +}; +static const unsigned char kat3688_addinpr1[] = { + 0xb6, 0x43, 0xb1, 0xad, 0x03, 0x55, 0x99, 0xe7, 0x59, 0xb6, 0x1a, 0x2e, + 0xe0, 0x9f, 0x22, 0xd7, 0x8b, 0xbd, 0x45, 0xb5, 0x95, 0x09, 0xf3, 0x99, + 0xb6, 0x5a, 0xd2, 0x50, 0x01, 0xbc, 0x54, 0x49, +}; +static const unsigned char kat3688_entropyinpr2[] = { + 0x96, 0x40, 0x43, 0x39, 0x0c, 0x74, 0xcc, 0x18, 0x2b, 0x79, 0xcf, 0x23, + 0xe9, 0xe5, 0x9a, 0x98, 0xd6, 0x79, 0xb0, 0x4b, 0xdc, 0x1a, 0xd2, 0xf5, + 0xdc, 0xc2, 0x89, 0xbb, 0x02, 0x1c, 0x8d, 0xc0, +}; +static const unsigned char kat3688_addinpr2[] = { + 0x50, 0x27, 0x52, 0xaf, 0x6b, 0xf6, 0xf6, 0xd4, 0x0c, 0x1d, 0xf4, 0xdd, + 0x25, 0x56, 0xa7, 0x5b, 0x74, 0xc9, 0x4f, 0xc2, 0x6f, 0xc9, 0x1b, 0x12, + 0x83, 0x05, 0x9c, 0x9e, 0xcd, 0xd2, 0xec, 0x9a, +}; +static const unsigned char kat3688_retbits[] = { + 0xe7, 0x2c, 0xc6, 0x12, 0xda, 0x25, 0x14, 0xb1, 0x10, 0x94, 0xbe, 0x0e, + 0x1c, 0x22, 0x79, 0x89, 0x1a, 0x41, 0x30, 0xc7, 0xbe, 0x8b, 0x4b, 0xb7, + 0xec, 0x8b, 0xe5, 0x26, 0xf3, 0x68, 0xf8, 0x14, 0xe8, 0x30, 0xfc, 0xc9, + 0x26, 0xc3, 0xaf, 0xeb, 0xa0, 0xba, 0xe6, 0x24, 0xad, 0xf7, 0xfd, 0x34, + 0xf6, 0x1f, 0x78, 0x92, 0x16, 0xfc, 0x62, 0xb0, 0xf1, 0x8c, 0xfa, 0xc7, + 0x46, 0x76, 0xd0, 0x0f, +}; +static const struct drbg_kat_pr_true kat3688_t = { + 12, kat3688_entropyin, kat3688_nonce, kat3688_persstr, + kat3688_entropyinpr1, kat3688_addinpr1, kat3688_entropyinpr2, + kat3688_addinpr2, kat3688_retbits +}; +static const struct drbg_kat kat3688 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3688_t +}; + +static const unsigned char kat3689_entropyin[] = { + 0x6e, 0xe8, 0xc0, 0xcc, 0xdb, 0x7e, 0x9f, 0x30, 0x74, 0x04, 0x0e, 0x89, + 0xd9, 0xa6, 0x6a, 0xea, 0xa3, 0xf6, 0x4c, 0xf3, 0x51, 0xc6, 0x33, 0x0b, + 0x35, 0x30, 0x02, 0x14, 0xe1, 0x6a, 0x48, 0x4f, +}; +static const unsigned char kat3689_nonce[] = {0}; +static const unsigned char kat3689_persstr[] = {0}; +static const unsigned char kat3689_entropyinpr1[] = { + 0x76, 0x2d, 0x63, 0xec, 0x18, 0x92, 0x7c, 0x1a, 0xe3, 0x70, 0x37, 0x64, + 0x43, 0xbb, 0x07, 0x06, 0xc3, 0x0c, 0x42, 0x6e, 0x4f, 0x38, 0x1a, 0x67, + 0xff, 0x4d, 0x99, 0x55, 0x63, 0x33, 0x39, 0x54, +}; +static const unsigned char kat3689_addinpr1[] = { + 0x28, 0x9a, 0xc3, 0x36, 0x56, 0x5e, 0x1b, 0x8a, 0xbe, 0x25, 0x17, 0x31, + 0x40, 0x21, 0x8e, 0x09, 0xc7, 0x40, 0x9b, 0xca, 0x8d, 0x84, 0xb7, 0x57, + 0x6f, 0x0e, 0x87, 0xdb, 0x11, 0x7f, 0x53, 0x13, +}; +static const unsigned char kat3689_entropyinpr2[] = { + 0x2f, 0xa8, 0xd5, 0xe4, 0x26, 0x3f, 0x55, 0x85, 0x59, 0x71, 0x99, 0x3a, + 0x5f, 0xc7, 0xfa, 0xcc, 0xe1, 0xe4, 0x0e, 0x87, 0xfb, 0xf6, 0x4d, 0x1c, + 0xbc, 0x6b, 0x57, 0x05, 0xd8, 0x2d, 0x30, 0xf9, +}; +static const unsigned char kat3689_addinpr2[] = { + 0xca, 0x03, 0x7d, 0x1e, 0xeb, 0xa3, 0xc6, 0x6c, 0x15, 0xa9, 0x62, 0xed, + 0x44, 0xf0, 0xb5, 0x0b, 0xa6, 0x31, 0x76, 0xb6, 0x47, 0x84, 0xcf, 0x2c, + 0x68, 0x8c, 0x79, 0x9c, 0x9e, 0xbb, 0x4d, 0x16, +}; +static const unsigned char kat3689_retbits[] = { + 0x10, 0x53, 0x6a, 0x10, 0xa9, 0x9f, 0x84, 0x5c, 0x43, 0xd5, 0x50, 0x1f, + 0x8a, 0x4c, 0xfc, 0xaa, 0x9c, 0xd4, 0x36, 0x34, 0x0a, 0xd8, 0xfc, 0x58, + 0x57, 0xea, 0xa8, 0xd2, 0x0f, 0xbb, 0x67, 0x33, 0x61, 0x24, 0x8a, 0x44, + 0x66, 0x80, 0x0f, 0x31, 0x9f, 0xa9, 0x26, 0xec, 0xee, 0xe5, 0x87, 0xa7, + 0x11, 0x48, 0x14, 0x43, 0x32, 0xbd, 0x8a, 0xff, 0x0a, 0xfc, 0xbf, 0x55, + 0x87, 0x4f, 0xc3, 0xc0, +}; +static const struct drbg_kat_pr_true kat3689_t = { + 13, kat3689_entropyin, kat3689_nonce, kat3689_persstr, + kat3689_entropyinpr1, kat3689_addinpr1, kat3689_entropyinpr2, + kat3689_addinpr2, kat3689_retbits +}; +static const struct drbg_kat kat3689 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3689_t +}; + +static const unsigned char kat3690_entropyin[] = { + 0xdd, 0xd1, 0x29, 0x6d, 0x4d, 0x08, 0x84, 0x6c, 0x92, 0x20, 0x43, 0x76, + 0x1f, 0x5d, 0xe9, 0xb4, 0xf4, 0xdc, 0xb7, 0x87, 0xde, 0x09, 0xe3, 0x9d, + 0x2e, 0xca, 0xac, 0x9a, 0x90, 0x6e, 0x06, 0x20, +}; +static const unsigned char kat3690_nonce[] = {0}; +static const unsigned char kat3690_persstr[] = {0}; +static const unsigned char kat3690_entropyinpr1[] = { + 0xd5, 0x39, 0x8b, 0x48, 0x77, 0x3c, 0x39, 0x0c, 0xd8, 0x9d, 0x95, 0x1c, + 0x5e, 0x6d, 0xee, 0xed, 0x0e, 0xb3, 0x8d, 0x59, 0xe3, 0xb1, 0xd0, 0xbf, + 0x5b, 0x2e, 0x43, 0x59, 0xb0, 0x78, 0x43, 0x05, +}; +static const unsigned char kat3690_addinpr1[] = { + 0x67, 0x3f, 0x6d, 0x71, 0xad, 0x3c, 0x7c, 0x0e, 0x5c, 0xc2, 0x26, 0xb8, + 0x2f, 0x37, 0x84, 0x07, 0x81, 0x4e, 0xa1, 0x01, 0xdb, 0xc0, 0x51, 0x82, + 0x1b, 0xd5, 0xd1, 0xd7, 0xf4, 0xbc, 0x7b, 0xe3, +}; +static const unsigned char kat3690_entropyinpr2[] = { + 0x3c, 0xd2, 0xf7, 0x04, 0xac, 0xe5, 0x60, 0x33, 0x7f, 0xcb, 0xcc, 0x07, + 0xd2, 0xb0, 0x27, 0xc3, 0x73, 0x80, 0xb3, 0x5b, 0x26, 0xb2, 0x6e, 0x40, + 0xb9, 0xd6, 0x2d, 0xd6, 0x54, 0xe4, 0x41, 0x93, +}; +static const unsigned char kat3690_addinpr2[] = { + 0x44, 0x0e, 0x9b, 0x55, 0xa6, 0x8d, 0xd2, 0x7d, 0xf4, 0xef, 0x8d, 0x0d, + 0xfe, 0xb8, 0xc2, 0x15, 0x6c, 0x22, 0x50, 0xcc, 0x1a, 0xb5, 0x74, 0x43, + 0x2c, 0x2b, 0x62, 0xba, 0xca, 0x7c, 0x44, 0x39, +}; +static const unsigned char kat3690_retbits[] = { + 0xe5, 0x5b, 0x53, 0x6c, 0xca, 0x2b, 0x21, 0x48, 0xaf, 0x20, 0xe8, 0x87, + 0xad, 0x6b, 0x1c, 0x6a, 0xb5, 0xc2, 0x85, 0xfe, 0x52, 0x71, 0xe1, 0x88, + 0xc5, 0xfe, 0x5f, 0x7f, 0x03, 0x7b, 0xab, 0x8d, 0x6d, 0x25, 0x02, 0xab, + 0x71, 0xd7, 0x68, 0xd4, 0xf0, 0x5b, 0x1b, 0xef, 0x7f, 0x27, 0x44, 0x0c, + 0xe8, 0xf6, 0x43, 0x11, 0xff, 0x71, 0x47, 0xdb, 0xb5, 0x57, 0x19, 0xbf, + 0x73, 0x71, 0xbb, 0xd4, +}; +static const struct drbg_kat_pr_true kat3690_t = { + 14, kat3690_entropyin, kat3690_nonce, kat3690_persstr, + kat3690_entropyinpr1, kat3690_addinpr1, kat3690_entropyinpr2, + kat3690_addinpr2, kat3690_retbits +}; +static const struct drbg_kat kat3690 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3690_t +}; + +static const unsigned char kat3691_entropyin[] = { + 0xee, 0x55, 0xa9, 0x77, 0x38, 0x55, 0x07, 0x42, 0xef, 0xfe, 0xfd, 0x7d, + 0x5a, 0x43, 0xfb, 0x23, 0x63, 0xb9, 0x1a, 0xcc, 0xca, 0xc5, 0xb4, 0xb4, + 0x79, 0xc4, 0xed, 0xfe, 0x0e, 0x66, 0xd5, 0x6e, +}; +static const unsigned char kat3691_nonce[] = {0}; +static const unsigned char kat3691_persstr[] = { + 0x5f, 0xe7, 0xc9, 0x47, 0x78, 0xa3, 0x47, 0x4f, 0xca, 0xe5, 0xd5, 0x66, + 0x4c, 0xd9, 0x53, 0x0b, 0xb2, 0xca, 0xad, 0x48, 0x0b, 0x94, 0x15, 0x67, + 0x6e, 0x30, 0x06, 0x42, 0x06, 0x8b, 0x63, 0x9d, +}; +static const unsigned char kat3691_entropyinpr1[] = { + 0x3e, 0xf8, 0x2e, 0x3b, 0x01, 0x69, 0xad, 0xf2, 0x2b, 0xc1, 0xd1, 0x3a, + 0x91, 0xdd, 0x35, 0x9d, 0xef, 0x6f, 0x26, 0x9f, 0x00, 0x8f, 0x3c, 0x49, + 0x46, 0x74, 0x47, 0x06, 0x3e, 0x0e, 0xf8, 0x05, +}; +static const unsigned char kat3691_addinpr1[] = {0}; +static const unsigned char kat3691_entropyinpr2[] = { + 0xac, 0x84, 0xeb, 0xc9, 0x93, 0x8b, 0xda, 0x8f, 0xe8, 0x47, 0x56, 0xa8, + 0x70, 0x47, 0xa5, 0xd5, 0x02, 0xce, 0x64, 0x82, 0xa2, 0xa0, 0x40, 0xd2, + 0x56, 0x43, 0x00, 0x7f, 0x2e, 0x1d, 0xa8, 0xf3, +}; +static const unsigned char kat3691_addinpr2[] = {0}; +static const unsigned char kat3691_retbits[] = { + 0xdb, 0xed, 0x55, 0x77, 0x2e, 0x15, 0x85, 0x48, 0xb8, 0xc0, 0x1c, 0x4c, + 0xd4, 0x82, 0x55, 0x07, 0xe1, 0x26, 0xf2, 0xf1, 0xb1, 0x8e, 0x4d, 0xb4, + 0x50, 0x9c, 0x19, 0xb1, 0x84, 0x84, 0xe6, 0x03, 0x2e, 0xd3, 0xbd, 0x22, + 0x71, 0xb0, 0x02, 0xf1, 0x3f, 0x1b, 0xcb, 0x9b, 0xc1, 0x22, 0x3f, 0x9a, + 0xc0, 0xda, 0x01, 0x70, 0x72, 0x0e, 0xc8, 0xeb, 0x97, 0x49, 0xd0, 0x69, + 0xe2, 0x00, 0xf2, 0xe8, +}; +static const struct drbg_kat_pr_true kat3691_t = { + 0, kat3691_entropyin, kat3691_nonce, kat3691_persstr, + kat3691_entropyinpr1, kat3691_addinpr1, kat3691_entropyinpr2, + kat3691_addinpr2, kat3691_retbits +}; +static const struct drbg_kat kat3691 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3691_t +}; + +static const unsigned char kat3692_entropyin[] = { + 0x11, 0xed, 0xc9, 0x98, 0x85, 0x1e, 0xba, 0x78, 0xa0, 0x19, 0x60, 0xd7, + 0x13, 0xf8, 0x43, 0xd8, 0x94, 0x9d, 0xb4, 0xbb, 0x07, 0x35, 0xd6, 0xbb, + 0xc9, 0x41, 0xd1, 0x3a, 0xed, 0xe5, 0x35, 0x53, +}; +static const unsigned char kat3692_nonce[] = {0}; +static const unsigned char kat3692_persstr[] = { + 0xab, 0xe1, 0x33, 0x91, 0x16, 0x9a, 0x7b, 0x3d, 0x3d, 0x49, 0x8d, 0x89, + 0x06, 0xb5, 0x20, 0x04, 0xbd, 0xb6, 0x76, 0xd4, 0x5e, 0x9c, 0xa3, 0x06, + 0x0c, 0xfe, 0x21, 0xec, 0xf6, 0xd1, 0x03, 0x48, +}; +static const unsigned char kat3692_entropyinpr1[] = { + 0x17, 0xd5, 0xfd, 0x16, 0xd8, 0x66, 0x60, 0xef, 0x3a, 0x3d, 0x2f, 0x36, + 0xe9, 0x9c, 0xc6, 0x7c, 0x59, 0x0c, 0x5c, 0xae, 0xb2, 0xf3, 0x4c, 0x13, + 0xc1, 0x53, 0x98, 0xd1, 0x66, 0x43, 0x7e, 0xf5, +}; +static const unsigned char kat3692_addinpr1[] = {0}; +static const unsigned char kat3692_entropyinpr2[] = { + 0xad, 0x40, 0x52, 0xe8, 0xc3, 0xd7, 0x10, 0x5f, 0x9e, 0xe2, 0xbd, 0x04, + 0x58, 0xe7, 0xe6, 0xee, 0xe7, 0xf8, 0x1a, 0x52, 0x07, 0xc2, 0x8c, 0x06, + 0xcd, 0x49, 0x78, 0xd1, 0xf9, 0x7b, 0x7d, 0x44, +}; +static const unsigned char kat3692_addinpr2[] = {0}; +static const unsigned char kat3692_retbits[] = { + 0x33, 0xdf, 0x35, 0x9f, 0xad, 0x35, 0x8f, 0xd0, 0x52, 0xd8, 0x1d, 0x6e, + 0x6a, 0xaf, 0xe3, 0xd3, 0x0d, 0x2b, 0xd5, 0xf0, 0xcb, 0xea, 0x34, 0xfa, + 0xf0, 0xa2, 0xc5, 0xf7, 0x98, 0x1e, 0x10, 0x03, 0x92, 0x4b, 0x6f, 0x5d, + 0xed, 0x0f, 0xe0, 0x08, 0x66, 0xc6, 0x38, 0x7a, 0x36, 0x89, 0x8d, 0xc6, + 0xe2, 0x3d, 0x2f, 0x3f, 0x10, 0x92, 0x72, 0x01, 0x29, 0xc5, 0x5c, 0xea, + 0xb8, 0xb9, 0x49, 0x41, +}; +static const struct drbg_kat_pr_true kat3692_t = { + 1, kat3692_entropyin, kat3692_nonce, kat3692_persstr, + kat3692_entropyinpr1, kat3692_addinpr1, kat3692_entropyinpr2, + kat3692_addinpr2, kat3692_retbits +}; +static const struct drbg_kat kat3692 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3692_t +}; + +static const unsigned char kat3693_entropyin[] = { + 0xf9, 0xdc, 0x20, 0xcd, 0xa9, 0x48, 0x3f, 0x64, 0x01, 0x99, 0xc4, 0x88, + 0xcb, 0xf5, 0x9e, 0xdc, 0x8e, 0xf9, 0x82, 0x9a, 0x2c, 0xdc, 0xff, 0x27, + 0xc9, 0x49, 0x6e, 0x92, 0x72, 0xf1, 0x90, 0x4e, +}; +static const unsigned char kat3693_nonce[] = {0}; +static const unsigned char kat3693_persstr[] = { + 0x06, 0xd2, 0x8e, 0x96, 0x9a, 0xf2, 0xde, 0x1e, 0x67, 0x73, 0x13, 0x6b, + 0xee, 0xab, 0xac, 0x97, 0x79, 0x60, 0x85, 0x99, 0x55, 0xcc, 0x1f, 0xff, + 0x5e, 0x3c, 0xc3, 0x65, 0x84, 0xf9, 0x6a, 0x3f, +}; +static const unsigned char kat3693_entropyinpr1[] = { + 0xc6, 0x68, 0x11, 0x72, 0x28, 0x27, 0x4c, 0xf4, 0x87, 0xbb, 0x89, 0xf2, + 0x1e, 0x1a, 0xd6, 0x0a, 0x1f, 0xaf, 0x0d, 0x27, 0xcb, 0x87, 0x3f, 0x1d, + 0x31, 0x59, 0xe7, 0x11, 0x5b, 0x6a, 0x7e, 0x9c, +}; +static const unsigned char kat3693_addinpr1[] = {0}; +static const unsigned char kat3693_entropyinpr2[] = { + 0xa7, 0xeb, 0x3c, 0xc4, 0xdf, 0xe1, 0xe5, 0xaf, 0x2d, 0x54, 0xc5, 0x29, + 0x2d, 0x86, 0x9f, 0x96, 0x40, 0x05, 0xf4, 0x2e, 0xf8, 0x10, 0x09, 0x72, + 0xc8, 0x65, 0x90, 0x91, 0x1d, 0x21, 0x83, 0x07, +}; +static const unsigned char kat3693_addinpr2[] = {0}; +static const unsigned char kat3693_retbits[] = { + 0xaa, 0xdc, 0x34, 0xee, 0x91, 0x54, 0x99, 0xb1, 0x7c, 0xad, 0x15, 0x13, + 0x1a, 0xe1, 0x38, 0x3f, 0x35, 0xe5, 0xfb, 0xca, 0x3f, 0x13, 0x82, 0x00, + 0xdd, 0x07, 0x06, 0x51, 0xcd, 0x29, 0x2e, 0x96, 0x5b, 0x65, 0x9c, 0x49, + 0x28, 0x09, 0x0b, 0xf4, 0xca, 0xa8, 0x2e, 0xb2, 0xa3, 0xd5, 0x59, 0x42, + 0x4d, 0xb2, 0x3a, 0x04, 0x26, 0xfb, 0xd6, 0x61, 0x44, 0xbd, 0x0d, 0x13, + 0x78, 0xe3, 0x29, 0x3b, +}; +static const struct drbg_kat_pr_true kat3693_t = { + 2, kat3693_entropyin, kat3693_nonce, kat3693_persstr, + kat3693_entropyinpr1, kat3693_addinpr1, kat3693_entropyinpr2, + kat3693_addinpr2, kat3693_retbits +}; +static const struct drbg_kat kat3693 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3693_t +}; + +static const unsigned char kat3694_entropyin[] = { + 0x33, 0xd4, 0x7f, 0xb0, 0xf3, 0x3e, 0xe9, 0x8c, 0x93, 0x9a, 0xab, 0x57, + 0xca, 0x43, 0x1f, 0x70, 0x60, 0xbc, 0x90, 0xc2, 0x94, 0x28, 0x69, 0x40, + 0x7c, 0x16, 0x86, 0xd6, 0x61, 0xf3, 0x1b, 0x35, +}; +static const unsigned char kat3694_nonce[] = {0}; +static const unsigned char kat3694_persstr[] = { + 0x0c, 0x5b, 0x86, 0x31, 0x72, 0xdc, 0x14, 0xff, 0xeb, 0xdb, 0x0c, 0xa9, + 0x40, 0x7f, 0x97, 0xc6, 0x9e, 0x87, 0xd6, 0x41, 0xab, 0xd4, 0x62, 0x6a, + 0x8e, 0x35, 0xbb, 0x23, 0x0f, 0x6f, 0x62, 0x59, +}; +static const unsigned char kat3694_entropyinpr1[] = { + 0xae, 0x5a, 0xaf, 0xff, 0x05, 0x46, 0x13, 0x43, 0x9b, 0x01, 0x42, 0x7e, + 0xbf, 0x22, 0xea, 0xde, 0x86, 0x74, 0x4a, 0x6b, 0xa1, 0x83, 0x54, 0x71, + 0xe1, 0x77, 0x33, 0x54, 0x07, 0x9d, 0x4a, 0x67, +}; +static const unsigned char kat3694_addinpr1[] = {0}; +static const unsigned char kat3694_entropyinpr2[] = { + 0x3b, 0xd9, 0xab, 0x01, 0x0f, 0x7a, 0x31, 0x90, 0x4c, 0xff, 0x7f, 0x9d, + 0x2e, 0x1e, 0x77, 0x65, 0xa7, 0x1e, 0xfc, 0xe1, 0x5f, 0xd2, 0xc2, 0x03, + 0xa5, 0x01, 0x26, 0x5c, 0xba, 0x6f, 0x24, 0x61, +}; +static const unsigned char kat3694_addinpr2[] = {0}; +static const unsigned char kat3694_retbits[] = { + 0x3b, 0xf8, 0xd5, 0xfc, 0xc0, 0x06, 0xb6, 0xc8, 0xe9, 0x28, 0x80, 0x48, + 0xf7, 0x39, 0xf7, 0x22, 0xcb, 0x7a, 0x04, 0xd7, 0x2f, 0x1f, 0x2f, 0xf3, + 0x80, 0xa7, 0x69, 0xde, 0x5d, 0x22, 0xfa, 0x7e, 0xfa, 0x9c, 0x1f, 0x88, + 0x5f, 0x50, 0x27, 0x4d, 0x5f, 0x67, 0xb0, 0x5b, 0xb3, 0xdb, 0x38, 0xf7, + 0x23, 0x95, 0x7c, 0xdc, 0x7b, 0x0e, 0xa5, 0xe6, 0x4a, 0x16, 0x88, 0x92, + 0x79, 0x0c, 0xf3, 0x66, +}; +static const struct drbg_kat_pr_true kat3694_t = { + 3, kat3694_entropyin, kat3694_nonce, kat3694_persstr, + kat3694_entropyinpr1, kat3694_addinpr1, kat3694_entropyinpr2, + kat3694_addinpr2, kat3694_retbits +}; +static const struct drbg_kat kat3694 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3694_t +}; + +static const unsigned char kat3695_entropyin[] = { + 0xfa, 0x02, 0x4c, 0x89, 0xb9, 0x28, 0x1e, 0x20, 0xc5, 0x1f, 0x37, 0x89, + 0xdf, 0xcf, 0x21, 0xe7, 0x8f, 0x0e, 0x71, 0x3f, 0x71, 0x48, 0xee, 0xf3, + 0x82, 0x61, 0xf1, 0x63, 0x74, 0x01, 0x14, 0x1f, +}; +static const unsigned char kat3695_nonce[] = {0}; +static const unsigned char kat3695_persstr[] = { + 0x1c, 0x88, 0x20, 0x3a, 0xff, 0x89, 0xcb, 0x4b, 0xbb, 0xdb, 0x5d, 0x1b, + 0x64, 0x32, 0x23, 0x15, 0x6c, 0x56, 0x98, 0x20, 0x79, 0x09, 0xbb, 0x7b, + 0x6b, 0xe0, 0xb9, 0xe7, 0xd8, 0xf8, 0x3e, 0x67, +}; +static const unsigned char kat3695_entropyinpr1[] = { + 0x8a, 0x03, 0xf7, 0x9c, 0xfa, 0xee, 0xc6, 0xb6, 0x1b, 0xec, 0x27, 0xd6, + 0xf7, 0xac, 0x9b, 0x5b, 0x10, 0xc6, 0x3e, 0x7e, 0x6a, 0xed, 0x2a, 0x1f, + 0x02, 0x92, 0xfd, 0x35, 0x48, 0xea, 0x9f, 0x3e, +}; +static const unsigned char kat3695_addinpr1[] = {0}; +static const unsigned char kat3695_entropyinpr2[] = { + 0x41, 0x3d, 0x8c, 0x0a, 0xda, 0x92, 0x34, 0xf9, 0x52, 0x10, 0xdc, 0x1c, + 0xa8, 0xe5, 0xf1, 0xf2, 0xcb, 0x5f, 0x9c, 0xc4, 0x19, 0x3d, 0xcf, 0xc5, + 0x3a, 0xa1, 0x6c, 0xf4, 0xb1, 0xd2, 0x1e, 0xfa, +}; +static const unsigned char kat3695_addinpr2[] = {0}; +static const unsigned char kat3695_retbits[] = { + 0xcd, 0x17, 0xd5, 0xeb, 0x10, 0xa7, 0x38, 0xdb, 0xb0, 0x22, 0x92, 0x5f, + 0x82, 0xa8, 0x34, 0xf2, 0xa3, 0x39, 0xfb, 0x4c, 0xb3, 0xee, 0x07, 0xf5, + 0xaa, 0x9b, 0x7d, 0x06, 0x49, 0x3d, 0x92, 0x8c, 0xa6, 0x83, 0xa1, 0x33, + 0xb4, 0x0b, 0x3e, 0x94, 0x9e, 0xb0, 0xbb, 0x33, 0x61, 0x59, 0x33, 0x84, + 0xfa, 0x0b, 0x04, 0x79, 0x1a, 0x43, 0xd9, 0x4b, 0x87, 0x9a, 0x34, 0xa1, + 0xfb, 0xa2, 0x9f, 0x02, +}; +static const struct drbg_kat_pr_true kat3695_t = { + 4, kat3695_entropyin, kat3695_nonce, kat3695_persstr, + kat3695_entropyinpr1, kat3695_addinpr1, kat3695_entropyinpr2, + kat3695_addinpr2, kat3695_retbits +}; +static const struct drbg_kat kat3695 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3695_t +}; + +static const unsigned char kat3696_entropyin[] = { + 0x80, 0x66, 0x5c, 0x98, 0xd1, 0x0d, 0x79, 0x77, 0x59, 0xec, 0x16, 0xde, + 0x62, 0xd8, 0xee, 0x4d, 0xf5, 0x16, 0x23, 0x34, 0x7b, 0xfc, 0xd8, 0xac, + 0x3e, 0xbb, 0xeb, 0x10, 0x15, 0x6f, 0xfd, 0xdc, +}; +static const unsigned char kat3696_nonce[] = {0}; +static const unsigned char kat3696_persstr[] = { + 0x65, 0x3e, 0x8c, 0x87, 0xd6, 0x20, 0xdf, 0x64, 0x5d, 0x31, 0x57, 0x73, + 0x32, 0x03, 0xf0, 0xc5, 0x6b, 0x63, 0xe4, 0xcd, 0xfb, 0x7f, 0x98, 0x83, + 0xda, 0x4e, 0x19, 0x75, 0xea, 0x14, 0xc8, 0x52, +}; +static const unsigned char kat3696_entropyinpr1[] = { + 0x99, 0xe0, 0x59, 0x7c, 0x5f, 0xa9, 0x6d, 0xc4, 0xee, 0x61, 0x99, 0x37, + 0x09, 0x1d, 0x5f, 0x7a, 0x67, 0xe6, 0x86, 0xa1, 0x79, 0xbd, 0xe6, 0x8c, + 0x0e, 0xdd, 0xcf, 0xf6, 0xb1, 0xdb, 0x19, 0xc8, +}; +static const unsigned char kat3696_addinpr1[] = {0}; +static const unsigned char kat3696_entropyinpr2[] = { + 0x08, 0x7c, 0x73, 0x67, 0x58, 0xe4, 0x2a, 0x8b, 0x6c, 0x6e, 0x4a, 0x1a, + 0x13, 0xe6, 0x15, 0x01, 0xff, 0x79, 0x48, 0xa2, 0xcc, 0xce, 0xcf, 0x2c, + 0x20, 0x70, 0xad, 0xc5, 0x93, 0x1c, 0x49, 0x72, +}; +static const unsigned char kat3696_addinpr2[] = {0}; +static const unsigned char kat3696_retbits[] = { + 0x29, 0xfd, 0x64, 0x17, 0x16, 0x69, 0x1b, 0x1f, 0x94, 0x35, 0x42, 0x19, + 0xe2, 0x0e, 0x7e, 0xfb, 0x15, 0x17, 0x54, 0x67, 0x1e, 0x19, 0x6e, 0x44, + 0x0a, 0x61, 0x4f, 0x34, 0xb8, 0x68, 0x37, 0xa8, 0xbc, 0xb0, 0x80, 0xcf, + 0x7f, 0xbc, 0xf0, 0x91, 0x41, 0xbd, 0x8e, 0xbe, 0xe7, 0xde, 0x6e, 0xec, + 0x06, 0xf6, 0x22, 0xbe, 0x10, 0x06, 0x3b, 0x6f, 0x6e, 0xfc, 0x21, 0x7c, + 0x94, 0x5f, 0xc9, 0xef, +}; +static const struct drbg_kat_pr_true kat3696_t = { + 5, kat3696_entropyin, kat3696_nonce, kat3696_persstr, + kat3696_entropyinpr1, kat3696_addinpr1, kat3696_entropyinpr2, + kat3696_addinpr2, kat3696_retbits +}; +static const struct drbg_kat kat3696 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3696_t +}; + +static const unsigned char kat3697_entropyin[] = { + 0xa5, 0x3e, 0x59, 0x2b, 0xf6, 0x28, 0xec, 0x67, 0xb0, 0x70, 0xe3, 0xc1, + 0x43, 0xe5, 0x4c, 0x1f, 0x86, 0x5b, 0x8f, 0xcf, 0x0b, 0x3e, 0x43, 0x7d, + 0x09, 0x2b, 0xe8, 0x2b, 0xe7, 0x2c, 0x7e, 0x6c, +}; +static const unsigned char kat3697_nonce[] = {0}; +static const unsigned char kat3697_persstr[] = { + 0xa3, 0x50, 0x28, 0x3b, 0x25, 0xd1, 0x53, 0x05, 0x83, 0x74, 0xf5, 0x81, + 0x4e, 0xcd, 0xd8, 0x0c, 0xd7, 0x8b, 0x8e, 0xef, 0xdb, 0xc6, 0x7b, 0x06, + 0x54, 0xa9, 0x83, 0x6b, 0xc8, 0x0c, 0x28, 0x6d, +}; +static const unsigned char kat3697_entropyinpr1[] = { + 0xd0, 0x1f, 0x40, 0x4c, 0x9f, 0xe6, 0xcc, 0x4b, 0x06, 0x46, 0xad, 0xe5, + 0x6e, 0x6f, 0x30, 0xa0, 0xc7, 0x63, 0xbf, 0x53, 0x7a, 0x95, 0xb7, 0x1b, + 0x9f, 0x97, 0x6e, 0x9c, 0x7d, 0x6e, 0x15, 0x51, +}; +static const unsigned char kat3697_addinpr1[] = {0}; +static const unsigned char kat3697_entropyinpr2[] = { + 0xc7, 0x79, 0x4c, 0x0b, 0xe9, 0x0f, 0x4a, 0xd1, 0xb4, 0x4d, 0x95, 0xb2, + 0xa5, 0x64, 0xee, 0x5f, 0xaf, 0x9c, 0x2a, 0x86, 0x74, 0xde, 0x9f, 0x4c, + 0xca, 0xc0, 0x24, 0x77, 0x15, 0xf8, 0x73, 0xf7, +}; +static const unsigned char kat3697_addinpr2[] = {0}; +static const unsigned char kat3697_retbits[] = { + 0x13, 0xb1, 0xbf, 0x14, 0x67, 0x2e, 0xa2, 0x03, 0xa7, 0xa5, 0xfe, 0xca, + 0x66, 0x38, 0x59, 0xb0, 0x8a, 0xb5, 0x87, 0x8f, 0x44, 0xc3, 0xb8, 0x8d, + 0xf7, 0x95, 0x98, 0x98, 0x5a, 0x88, 0xc3, 0xb2, 0x8a, 0x84, 0xd6, 0xe0, + 0x0e, 0x87, 0x01, 0x10, 0x9c, 0xfe, 0x2c, 0x15, 0xea, 0x85, 0x90, 0x8f, + 0x0e, 0xdf, 0x7b, 0x87, 0x76, 0x71, 0xc0, 0x22, 0xbb, 0xb0, 0xd3, 0x1e, + 0xbf, 0xa3, 0xb3, 0x8a, +}; +static const struct drbg_kat_pr_true kat3697_t = { + 6, kat3697_entropyin, kat3697_nonce, kat3697_persstr, + kat3697_entropyinpr1, kat3697_addinpr1, kat3697_entropyinpr2, + kat3697_addinpr2, kat3697_retbits +}; +static const struct drbg_kat kat3697 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3697_t +}; + +static const unsigned char kat3698_entropyin[] = { + 0x8c, 0xb2, 0xfa, 0xbb, 0x3f, 0xeb, 0x08, 0x21, 0xb8, 0xbe, 0x1a, 0xe0, + 0x25, 0x13, 0x79, 0x18, 0x35, 0xac, 0xcd, 0x0f, 0xaf, 0x33, 0x05, 0x95, + 0x55, 0x74, 0x4b, 0x8e, 0x7b, 0xbb, 0x59, 0x00, +}; +static const unsigned char kat3698_nonce[] = {0}; +static const unsigned char kat3698_persstr[] = { + 0x5e, 0x63, 0x16, 0xfb, 0x93, 0xcd, 0xc3, 0x40, 0x78, 0x80, 0x7f, 0xd8, + 0x38, 0x58, 0xca, 0x6d, 0xeb, 0xfe, 0x7b, 0x50, 0xd7, 0xb5, 0x1a, 0xc1, + 0xb8, 0x93, 0xf2, 0x7b, 0xb5, 0x82, 0xfd, 0xe4, +}; +static const unsigned char kat3698_entropyinpr1[] = { + 0xd5, 0xf9, 0x90, 0x5d, 0x50, 0xef, 0x70, 0xb9, 0x60, 0x44, 0xf6, 0x6f, + 0x9a, 0xea, 0x9e, 0x38, 0x1c, 0x84, 0x07, 0xc1, 0x8c, 0xa9, 0x8d, 0x7c, + 0x65, 0xec, 0x72, 0xda, 0x06, 0x25, 0x17, 0xc8, +}; +static const unsigned char kat3698_addinpr1[] = {0}; +static const unsigned char kat3698_entropyinpr2[] = { + 0x1c, 0x06, 0x81, 0x5f, 0xba, 0x94, 0x6e, 0x4f, 0x86, 0x03, 0xcf, 0x7f, + 0x11, 0x69, 0xda, 0xb4, 0x95, 0x9a, 0x75, 0x34, 0x4e, 0x6f, 0x5e, 0x3d, + 0xe9, 0xe8, 0xa9, 0x8a, 0x85, 0xb1, 0x35, 0x17, +}; +static const unsigned char kat3698_addinpr2[] = {0}; +static const unsigned char kat3698_retbits[] = { + 0x03, 0x09, 0x7c, 0xe5, 0x59, 0x66, 0x9f, 0x28, 0x94, 0x87, 0x13, 0x9d, + 0xa6, 0x30, 0x5f, 0x23, 0x23, 0x04, 0x8b, 0xf9, 0x24, 0x5a, 0xc0, 0x06, + 0xaa, 0xa0, 0xe5, 0x78, 0xac, 0xd9, 0xab, 0x16, 0xf2, 0xa8, 0xdd, 0xa5, + 0x06, 0x51, 0xff, 0xbd, 0x91, 0xa8, 0x45, 0xd6, 0xfc, 0x11, 0x75, 0x93, + 0x28, 0xc6, 0x7e, 0xcd, 0x65, 0x86, 0x34, 0x1f, 0xa2, 0x20, 0x51, 0x3b, + 0xde, 0xc7, 0x30, 0x1a, +}; +static const struct drbg_kat_pr_true kat3698_t = { + 7, kat3698_entropyin, kat3698_nonce, kat3698_persstr, + kat3698_entropyinpr1, kat3698_addinpr1, kat3698_entropyinpr2, + kat3698_addinpr2, kat3698_retbits +}; +static const struct drbg_kat kat3698 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3698_t +}; + +static const unsigned char kat3699_entropyin[] = { + 0xee, 0xb5, 0x66, 0xd9, 0xc6, 0xdc, 0x97, 0x9b, 0xd0, 0x6e, 0x73, 0x4b, + 0x54, 0xad, 0xb7, 0xff, 0x2c, 0xe8, 0x06, 0x79, 0xcb, 0x3b, 0x54, 0x06, + 0x06, 0x3a, 0xb5, 0x89, 0xa2, 0x36, 0x88, 0xcc, +}; +static const unsigned char kat3699_nonce[] = {0}; +static const unsigned char kat3699_persstr[] = { + 0x0b, 0x22, 0xb4, 0x63, 0x3e, 0x36, 0x57, 0xbd, 0x5f, 0xaa, 0x1d, 0x88, + 0xeb, 0xa2, 0x3e, 0x8d, 0xd6, 0x70, 0xd8, 0x34, 0xcc, 0x0a, 0xbd, 0x6a, + 0xa7, 0x00, 0x74, 0x5b, 0xc2, 0x5a, 0xb5, 0x35, +}; +static const unsigned char kat3699_entropyinpr1[] = { + 0x3c, 0x5e, 0xb7, 0x0e, 0xf7, 0x83, 0x25, 0x1d, 0xb8, 0xe1, 0x65, 0xf2, + 0x78, 0xe3, 0x77, 0x65, 0x41, 0xc4, 0x8c, 0x24, 0x8f, 0xa1, 0xf5, 0x79, + 0x01, 0x24, 0xc0, 0xa4, 0x67, 0x56, 0x59, 0xe7, +}; +static const unsigned char kat3699_addinpr1[] = {0}; +static const unsigned char kat3699_entropyinpr2[] = { + 0x82, 0x0a, 0xeb, 0x6b, 0x9c, 0x95, 0x9b, 0xd0, 0xf9, 0xa6, 0xcb, 0xe0, + 0xbe, 0x5d, 0x01, 0xe4, 0xb3, 0x6d, 0x00, 0xfe, 0x56, 0x15, 0x08, 0xef, + 0x4d, 0xc4, 0x5b, 0xd5, 0x03, 0xe8, 0xb9, 0x9f, +}; +static const unsigned char kat3699_addinpr2[] = {0}; +static const unsigned char kat3699_retbits[] = { + 0x83, 0xba, 0x42, 0xf8, 0x51, 0xc8, 0x37, 0xcc, 0x9b, 0x45, 0x54, 0x14, + 0xf0, 0x76, 0x50, 0x4f, 0x17, 0xb7, 0x6f, 0x41, 0x7f, 0x62, 0x83, 0xaf, + 0x33, 0xf6, 0x39, 0x89, 0x2f, 0xc8, 0x57, 0x1a, 0xcb, 0x52, 0x53, 0x46, + 0xe2, 0xff, 0x79, 0xab, 0x12, 0xd8, 0x91, 0x3e, 0x69, 0x6a, 0x18, 0x59, + 0xa1, 0x7e, 0xfc, 0xa8, 0x8d, 0xb7, 0x27, 0x3a, 0x99, 0x41, 0x7c, 0x5e, + 0xf1, 0xd8, 0x87, 0x15, +}; +static const struct drbg_kat_pr_true kat3699_t = { + 8, kat3699_entropyin, kat3699_nonce, kat3699_persstr, + kat3699_entropyinpr1, kat3699_addinpr1, kat3699_entropyinpr2, + kat3699_addinpr2, kat3699_retbits +}; +static const struct drbg_kat kat3699 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3699_t +}; + +static const unsigned char kat3700_entropyin[] = { + 0xa7, 0x1c, 0x2f, 0x01, 0x70, 0xe7, 0x99, 0x88, 0x04, 0xe6, 0x96, 0x1d, + 0x79, 0x18, 0xee, 0x63, 0x87, 0xcc, 0x08, 0xba, 0x7f, 0xb7, 0xe5, 0x6e, + 0x7b, 0x26, 0xa4, 0x15, 0x97, 0xc5, 0xc0, 0x98, +}; +static const unsigned char kat3700_nonce[] = {0}; +static const unsigned char kat3700_persstr[] = { + 0x93, 0x63, 0x77, 0xc9, 0xb6, 0xfd, 0xf5, 0xe3, 0xe8, 0xb7, 0xb2, 0x88, + 0xf4, 0x70, 0xc1, 0x3b, 0x1d, 0x2c, 0x43, 0x42, 0x6b, 0x96, 0x95, 0xc3, + 0x25, 0xc3, 0xed, 0xf2, 0x00, 0xbf, 0xac, 0x5f, +}; +static const unsigned char kat3700_entropyinpr1[] = { + 0x08, 0x3e, 0xc9, 0xfa, 0x97, 0x4b, 0x46, 0xb1, 0x11, 0xb3, 0x41, 0xb2, + 0x7c, 0x26, 0x64, 0x04, 0x98, 0x72, 0x2a, 0xf6, 0x54, 0xcb, 0x87, 0x8a, + 0x6d, 0x26, 0x6a, 0x86, 0xbf, 0x63, 0xfb, 0x7c, +}; +static const unsigned char kat3700_addinpr1[] = {0}; +static const unsigned char kat3700_entropyinpr2[] = { + 0x6e, 0x9c, 0xa0, 0xee, 0x1f, 0x96, 0x11, 0x61, 0x9d, 0x3f, 0x7c, 0x84, + 0xde, 0x39, 0xb3, 0xde, 0xc1, 0xa1, 0x01, 0x32, 0x9e, 0xf2, 0x51, 0x86, + 0xea, 0x37, 0x9f, 0x00, 0x01, 0xa6, 0x72, 0xeb, +}; +static const unsigned char kat3700_addinpr2[] = {0}; +static const unsigned char kat3700_retbits[] = { + 0xfa, 0x52, 0xa3, 0x8f, 0xaa, 0xdd, 0x5b, 0xcf, 0x80, 0x07, 0x82, 0x5d, + 0x66, 0x97, 0x45, 0x94, 0xe8, 0xd8, 0x8b, 0xec, 0x83, 0x5a, 0x42, 0x68, + 0x66, 0xe1, 0x0f, 0x30, 0xef, 0x24, 0x53, 0xdb, 0x2b, 0xa6, 0x45, 0x7b, + 0xea, 0xdc, 0x64, 0xdf, 0x2d, 0xb4, 0x16, 0xae, 0xd0, 0x7c, 0x2e, 0xd6, + 0xb0, 0xac, 0xf7, 0x7a, 0xb5, 0x32, 0x53, 0x66, 0xae, 0xcf, 0x7e, 0xf9, + 0x80, 0x53, 0x04, 0x21, +}; +static const struct drbg_kat_pr_true kat3700_t = { + 9, kat3700_entropyin, kat3700_nonce, kat3700_persstr, + kat3700_entropyinpr1, kat3700_addinpr1, kat3700_entropyinpr2, + kat3700_addinpr2, kat3700_retbits +}; +static const struct drbg_kat kat3700 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3700_t +}; + +static const unsigned char kat3701_entropyin[] = { + 0xe6, 0x7e, 0x46, 0xf3, 0xf0, 0xf9, 0x46, 0x83, 0x59, 0xc9, 0xdc, 0xf9, + 0xfe, 0x0d, 0x89, 0x5e, 0x67, 0x92, 0x9c, 0x1b, 0xa4, 0xe1, 0xe7, 0x7a, + 0xd2, 0xbc, 0x7a, 0xc6, 0x89, 0x78, 0xf7, 0x78, +}; +static const unsigned char kat3701_nonce[] = {0}; +static const unsigned char kat3701_persstr[] = { + 0x70, 0xb3, 0x07, 0x4d, 0xe0, 0x21, 0xce, 0xc7, 0xbc, 0xe1, 0xaf, 0x85, + 0xd8, 0x65, 0x35, 0xca, 0x96, 0xe3, 0xc1, 0x98, 0xf1, 0xb1, 0xbc, 0xb6, + 0x4d, 0xce, 0xc2, 0x8b, 0x62, 0x68, 0xf0, 0x2c, +}; +static const unsigned char kat3701_entropyinpr1[] = { + 0x4b, 0xf6, 0x8c, 0x60, 0x1a, 0x85, 0x57, 0xbe, 0xf0, 0x15, 0x5e, 0x3d, + 0xa0, 0xb7, 0xa0, 0x7b, 0x9f, 0x5a, 0xef, 0xe2, 0xb6, 0x65, 0x75, 0xbd, + 0x92, 0x9f, 0xcf, 0x4d, 0x5c, 0xcf, 0xce, 0x6c, +}; +static const unsigned char kat3701_addinpr1[] = {0}; +static const unsigned char kat3701_entropyinpr2[] = { + 0x27, 0x0f, 0x83, 0xa0, 0xa7, 0xc4, 0x67, 0x8c, 0xad, 0x79, 0x2d, 0x9d, + 0x35, 0xb6, 0x3c, 0x8f, 0x32, 0xe5, 0xf0, 0x4c, 0x7c, 0x2e, 0x36, 0x52, + 0x72, 0xe7, 0x4f, 0x4a, 0x68, 0x0a, 0x13, 0xe2, +}; +static const unsigned char kat3701_addinpr2[] = {0}; +static const unsigned char kat3701_retbits[] = { + 0xfe, 0xf3, 0x3e, 0xd5, 0x98, 0xd9, 0xc9, 0x2b, 0x11, 0x59, 0xea, 0x27, + 0x4b, 0x17, 0xd0, 0xd2, 0xe7, 0x57, 0x47, 0x67, 0xb2, 0x2f, 0xae, 0xfe, + 0x49, 0x2f, 0x76, 0x3f, 0x87, 0x5b, 0xa8, 0x25, 0xdd, 0x1d, 0x2b, 0x80, + 0x08, 0xa4, 0x64, 0x8e, 0x8d, 0x63, 0xb7, 0x57, 0xa6, 0x29, 0xd2, 0xdc, + 0x3b, 0xcb, 0xf1, 0xc2, 0xff, 0x98, 0x99, 0x91, 0xc6, 0x9f, 0xca, 0x17, + 0xd3, 0xf9, 0x8c, 0x1a, +}; +static const struct drbg_kat_pr_true kat3701_t = { + 10, kat3701_entropyin, kat3701_nonce, kat3701_persstr, + kat3701_entropyinpr1, kat3701_addinpr1, kat3701_entropyinpr2, + kat3701_addinpr2, kat3701_retbits +}; +static const struct drbg_kat kat3701 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3701_t +}; + +static const unsigned char kat3702_entropyin[] = { + 0x6a, 0x0f, 0x20, 0xfb, 0x2e, 0x79, 0x80, 0x58, 0x8a, 0x87, 0xdd, 0xfb, + 0xc6, 0xcb, 0x6a, 0x91, 0x91, 0x95, 0xde, 0xca, 0x2b, 0x3a, 0xac, 0x7a, + 0x8e, 0xd0, 0x27, 0x3f, 0x95, 0xdf, 0x6f, 0xd3, +}; +static const unsigned char kat3702_nonce[] = {0}; +static const unsigned char kat3702_persstr[] = { + 0x18, 0x83, 0x20, 0x43, 0x62, 0x39, 0x8a, 0x02, 0xf0, 0xd6, 0xd3, 0x22, + 0x22, 0x32, 0x65, 0x58, 0xdc, 0x7b, 0xc9, 0x4b, 0xd9, 0x48, 0x2a, 0xd0, + 0xac, 0x61, 0x16, 0x99, 0x95, 0x1d, 0xf1, 0x06, +}; +static const unsigned char kat3702_entropyinpr1[] = { + 0xad, 0xc6, 0x64, 0x96, 0xb8, 0xd7, 0x73, 0x8d, 0xfe, 0xb9, 0x73, 0x29, + 0x4a, 0x6d, 0x79, 0x45, 0xe4, 0xa1, 0xb0, 0xbd, 0x54, 0x00, 0x06, 0x2a, + 0x56, 0xcf, 0xeb, 0x04, 0xbf, 0xde, 0x98, 0x57, +}; +static const unsigned char kat3702_addinpr1[] = {0}; +static const unsigned char kat3702_entropyinpr2[] = { + 0xb8, 0x20, 0xc3, 0xf1, 0x0c, 0x8d, 0xd7, 0x20, 0x5f, 0xda, 0x78, 0xa4, + 0x29, 0x23, 0x14, 0xd4, 0x57, 0x97, 0xdf, 0xec, 0xd7, 0x1f, 0xed, 0x23, + 0xff, 0x0a, 0x85, 0x6e, 0xec, 0x45, 0x01, 0x79, +}; +static const unsigned char kat3702_addinpr2[] = {0}; +static const unsigned char kat3702_retbits[] = { + 0x01, 0x0e, 0x13, 0xdc, 0xea, 0x57, 0xc0, 0xde, 0xbd, 0x88, 0x71, 0x3c, + 0x3b, 0x7e, 0x43, 0x3c, 0x97, 0xdd, 0xad, 0xd8, 0x4e, 0x49, 0x39, 0x6a, + 0xf4, 0xa7, 0xee, 0x7f, 0x58, 0x02, 0x85, 0xd8, 0x02, 0x88, 0x08, 0x7f, + 0xf7, 0x2a, 0x37, 0x42, 0x87, 0x0c, 0x38, 0x64, 0x2f, 0x45, 0x6f, 0x67, + 0x6b, 0xf0, 0x19, 0x52, 0xcc, 0x2e, 0xdf, 0xc8, 0x2a, 0xea, 0x75, 0x37, + 0xd7, 0x53, 0xdf, 0xef, +}; +static const struct drbg_kat_pr_true kat3702_t = { + 11, kat3702_entropyin, kat3702_nonce, kat3702_persstr, + kat3702_entropyinpr1, kat3702_addinpr1, kat3702_entropyinpr2, + kat3702_addinpr2, kat3702_retbits +}; +static const struct drbg_kat kat3702 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3702_t +}; + +static const unsigned char kat3703_entropyin[] = { + 0x55, 0x56, 0x66, 0xbc, 0x1f, 0xb0, 0x98, 0x84, 0xc0, 0xf8, 0x3a, 0x0b, + 0x2b, 0x05, 0xb6, 0x99, 0x35, 0x06, 0xcd, 0x9c, 0xfa, 0x99, 0x47, 0x03, + 0x94, 0x21, 0x11, 0x63, 0x0b, 0x51, 0xb2, 0x59, +}; +static const unsigned char kat3703_nonce[] = {0}; +static const unsigned char kat3703_persstr[] = { + 0x64, 0x83, 0xa0, 0xaf, 0x79, 0x7c, 0xb6, 0xc9, 0xd6, 0x8b, 0xe1, 0x30, + 0xe7, 0x93, 0xc9, 0x86, 0xa9, 0x21, 0x87, 0xf5, 0x1c, 0x0f, 0xf9, 0x47, + 0xc7, 0x34, 0x5a, 0xaa, 0x61, 0x27, 0xfb, 0xcd, +}; +static const unsigned char kat3703_entropyinpr1[] = { + 0x8e, 0x5a, 0x9f, 0x4a, 0x73, 0xa8, 0xdb, 0x1e, 0xd8, 0xdb, 0x88, 0x9e, + 0x80, 0xc7, 0x87, 0xe2, 0x0d, 0x25, 0xd2, 0x22, 0x06, 0xe9, 0x5e, 0xec, + 0x61, 0xd5, 0x7c, 0xd1, 0xcd, 0x91, 0x76, 0xaf, +}; +static const unsigned char kat3703_addinpr1[] = {0}; +static const unsigned char kat3703_entropyinpr2[] = { + 0xb5, 0x99, 0x04, 0xdd, 0xfd, 0x61, 0xc3, 0xf2, 0x6b, 0x7d, 0x33, 0xd2, + 0x3c, 0x18, 0xc7, 0xf9, 0xd7, 0x16, 0x15, 0x3b, 0x48, 0x87, 0x73, 0x67, + 0x82, 0x41, 0xb8, 0x1b, 0x40, 0x66, 0x66, 0xda, +}; +static const unsigned char kat3703_addinpr2[] = {0}; +static const unsigned char kat3703_retbits[] = { + 0x19, 0xc8, 0xe2, 0x9e, 0x51, 0xf8, 0x98, 0x6a, 0x63, 0x5e, 0xd5, 0x3d, + 0x4a, 0x98, 0x47, 0xa6, 0x02, 0x16, 0x8e, 0x5c, 0xa2, 0xfb, 0xba, 0x07, + 0x99, 0xf0, 0xbc, 0x85, 0xf4, 0xe9, 0xa9, 0x82, 0xa6, 0x46, 0xa7, 0xc2, + 0x36, 0x42, 0xe4, 0xa4, 0x5c, 0x71, 0xd9, 0x24, 0x90, 0xf4, 0x7a, 0x24, + 0xdd, 0x82, 0xbf, 0xe0, 0x73, 0xa2, 0x9f, 0x5c, 0xc8, 0x87, 0x3e, 0xe2, + 0x38, 0x23, 0xfe, 0x89, +}; +static const struct drbg_kat_pr_true kat3703_t = { + 12, kat3703_entropyin, kat3703_nonce, kat3703_persstr, + kat3703_entropyinpr1, kat3703_addinpr1, kat3703_entropyinpr2, + kat3703_addinpr2, kat3703_retbits +}; +static const struct drbg_kat kat3703 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3703_t +}; + +static const unsigned char kat3704_entropyin[] = { + 0xfc, 0x85, 0x15, 0x5e, 0xfd, 0x4e, 0x76, 0x78, 0x31, 0x51, 0x46, 0xa3, + 0x8b, 0x52, 0x99, 0xaa, 0x41, 0x8f, 0xbd, 0xa1, 0x8e, 0x1f, 0x6d, 0x59, + 0x3c, 0x7e, 0xf3, 0xaf, 0x54, 0x62, 0x9e, 0xe4, +}; +static const unsigned char kat3704_nonce[] = {0}; +static const unsigned char kat3704_persstr[] = { + 0xde, 0x30, 0xff, 0x5d, 0xd4, 0xaa, 0x92, 0xef, 0xd8, 0xaa, 0x19, 0x98, + 0x39, 0xd1, 0x83, 0xef, 0xcd, 0xc3, 0xc5, 0xbc, 0xeb, 0x4e, 0x24, 0x06, + 0x06, 0x06, 0x1a, 0xd0, 0xc3, 0xab, 0x1d, 0x6a, +}; +static const unsigned char kat3704_entropyinpr1[] = { + 0xc2, 0xec, 0x1d, 0x42, 0xb8, 0xad, 0xd6, 0x49, 0x44, 0x02, 0x49, 0x5b, + 0x7a, 0xcf, 0x6b, 0xf6, 0xff, 0x43, 0xe9, 0xf9, 0x09, 0xeb, 0x89, 0x0e, + 0xbb, 0x58, 0xbc, 0x3e, 0x2f, 0x57, 0x4d, 0x99, +}; +static const unsigned char kat3704_addinpr1[] = {0}; +static const unsigned char kat3704_entropyinpr2[] = { + 0x3b, 0x8a, 0xb0, 0xe3, 0x69, 0x81, 0x6b, 0xea, 0xf5, 0xb4, 0x6b, 0xa2, + 0xc6, 0x51, 0xd1, 0x04, 0x32, 0x44, 0xa8, 0x91, 0x0f, 0xce, 0x1e, 0x99, + 0x87, 0x3e, 0x48, 0x7a, 0x60, 0xc3, 0x2a, 0x54, +}; +static const unsigned char kat3704_addinpr2[] = {0}; +static const unsigned char kat3704_retbits[] = { + 0x33, 0x19, 0x31, 0xde, 0xa8, 0xd6, 0xa2, 0x89, 0x02, 0x9c, 0x14, 0xe0, + 0x83, 0xb7, 0x5b, 0x63, 0x6c, 0x92, 0x8c, 0x89, 0x58, 0x21, 0x02, 0xce, + 0x2e, 0xa8, 0xa9, 0xa1, 0xa2, 0x4b, 0xf2, 0x26, 0x93, 0xb0, 0xa2, 0xcd, + 0x3f, 0x56, 0x2f, 0x17, 0xc1, 0x0f, 0xd8, 0x3d, 0x81, 0x75, 0x57, 0x3a, + 0x80, 0x5e, 0xd3, 0xdc, 0x6a, 0x3b, 0x28, 0x59, 0x8e, 0x33, 0xec, 0xc2, + 0xc5, 0x93, 0xb6, 0xe1, +}; +static const struct drbg_kat_pr_true kat3704_t = { + 13, kat3704_entropyin, kat3704_nonce, kat3704_persstr, + kat3704_entropyinpr1, kat3704_addinpr1, kat3704_entropyinpr2, + kat3704_addinpr2, kat3704_retbits +}; +static const struct drbg_kat kat3704 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3704_t +}; + +static const unsigned char kat3705_entropyin[] = { + 0x8b, 0x1a, 0x74, 0x0b, 0xa7, 0x0e, 0xc2, 0x15, 0xa6, 0x9c, 0x4c, 0x3d, + 0x92, 0xa0, 0xfa, 0x1b, 0x3a, 0x8a, 0x2b, 0x8c, 0xdb, 0x43, 0x58, 0xf7, + 0x7f, 0x02, 0xcc, 0xa4, 0xed, 0x50, 0x3f, 0xd7, +}; +static const unsigned char kat3705_nonce[] = {0}; +static const unsigned char kat3705_persstr[] = { + 0xbf, 0xe8, 0x59, 0x2a, 0x40, 0x93, 0xbd, 0x46, 0x4f, 0xf3, 0xc8, 0x36, + 0x88, 0x5f, 0x41, 0x92, 0x74, 0xe7, 0x4d, 0x71, 0xca, 0x62, 0xea, 0x83, + 0xcd, 0xef, 0x07, 0xcd, 0xf5, 0x27, 0x87, 0x9a, +}; +static const unsigned char kat3705_entropyinpr1[] = { + 0xd0, 0xca, 0xa7, 0x1a, 0x0c, 0x2e, 0x2f, 0x21, 0x8b, 0xdd, 0xed, 0x7a, + 0x08, 0x86, 0x4a, 0xdd, 0xea, 0x82, 0x2a, 0xaa, 0xb5, 0x98, 0xb5, 0x67, + 0x92, 0x70, 0x42, 0xdd, 0x3d, 0xb2, 0x93, 0x13, +}; +static const unsigned char kat3705_addinpr1[] = {0}; +static const unsigned char kat3705_entropyinpr2[] = { + 0x31, 0xfc, 0xf2, 0xf4, 0xf7, 0x58, 0x0e, 0xa3, 0xb7, 0x9e, 0x73, 0x88, + 0x30, 0xd4, 0x2a, 0x21, 0x89, 0x35, 0xac, 0x5c, 0x65, 0x83, 0xfe, 0xba, + 0xbc, 0x14, 0xbb, 0x54, 0x63, 0xfe, 0x46, 0x09, +}; +static const unsigned char kat3705_addinpr2[] = {0}; +static const unsigned char kat3705_retbits[] = { + 0xae, 0x6c, 0xbc, 0x3e, 0x10, 0x8b, 0xa6, 0x4b, 0x18, 0x24, 0x4a, 0xc1, + 0x4e, 0xef, 0xb6, 0x70, 0xca, 0xa1, 0x67, 0x84, 0xe1, 0x75, 0xff, 0xc1, + 0xf4, 0x11, 0x26, 0xcd, 0xbe, 0x79, 0x1e, 0x0e, 0x3d, 0xe2, 0x6d, 0x58, + 0x12, 0x3a, 0xae, 0x68, 0x43, 0x61, 0x3b, 0x47, 0x8b, 0x9e, 0xd9, 0x41, + 0x73, 0xfa, 0x27, 0xc7, 0x40, 0x0b, 0xb0, 0x71, 0xe0, 0xa9, 0x82, 0x9b, + 0x9a, 0x8f, 0xca, 0x19, +}; +static const struct drbg_kat_pr_true kat3705_t = { + 14, kat3705_entropyin, kat3705_nonce, kat3705_persstr, + kat3705_entropyinpr1, kat3705_addinpr1, kat3705_entropyinpr2, + kat3705_addinpr2, kat3705_retbits +}; +static const struct drbg_kat kat3705 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3705_t +}; + +static const unsigned char kat3706_entropyin[] = { + 0x0b, 0x9b, 0x6b, 0x06, 0x76, 0x68, 0xbc, 0xdd, 0x7f, 0xe3, 0xc9, 0x97, + 0x34, 0x11, 0x99, 0xa0, 0x92, 0x12, 0x44, 0xa4, 0xc5, 0x96, 0x09, 0xfe, + 0x00, 0x2a, 0xa4, 0x0a, 0x83, 0xd7, 0x9b, 0x9b, +}; +static const unsigned char kat3706_nonce[] = {0}; +static const unsigned char kat3706_persstr[] = { + 0x1d, 0xf9, 0xc0, 0x23, 0xcc, 0x60, 0x33, 0x5d, 0x65, 0xff, 0xa7, 0x10, + 0xf6, 0x26, 0x47, 0xf9, 0xfb, 0xae, 0x53, 0x9f, 0xf1, 0xfd, 0xf4, 0x35, + 0xd4, 0xfb, 0x79, 0xdc, 0x22, 0x2c, 0x5b, 0x5d, +}; +static const unsigned char kat3706_entropyinpr1[] = { + 0x48, 0x08, 0xa7, 0xa6, 0x73, 0xcb, 0x94, 0xf0, 0xcf, 0xe5, 0xb7, 0xe8, + 0x02, 0x1c, 0xc8, 0x94, 0xaa, 0xa2, 0xa6, 0xd3, 0x95, 0x2a, 0x80, 0xfa, + 0x75, 0x21, 0xa8, 0x5e, 0xde, 0x78, 0xc9, 0x2f, +}; +static const unsigned char kat3706_addinpr1[] = { + 0xbf, 0x8d, 0x39, 0x17, 0x67, 0x46, 0x17, 0xd0, 0xab, 0x65, 0x56, 0x47, + 0x65, 0x46, 0x3f, 0x9e, 0x5d, 0x79, 0x57, 0x60, 0x23, 0x7e, 0x6e, 0x99, + 0x9f, 0x3f, 0xb4, 0x22, 0xb7, 0xd4, 0xa1, 0x14, +}; +static const unsigned char kat3706_entropyinpr2[] = { + 0xaa, 0x83, 0x65, 0x9b, 0xbb, 0x6c, 0x6d, 0xdd, 0x97, 0x23, 0x3a, 0xf1, + 0x88, 0x47, 0x95, 0x2a, 0x37, 0x49, 0x8b, 0x1f, 0xa5, 0x0a, 0x59, 0xe2, + 0x5a, 0x90, 0x27, 0x31, 0x13, 0x36, 0xf7, 0xe9, +}; +static const unsigned char kat3706_addinpr2[] = { + 0x9e, 0x7e, 0xa0, 0xa9, 0x68, 0x35, 0xa0, 0x27, 0x06, 0xeb, 0x28, 0xbc, + 0xb0, 0xe5, 0xa3, 0xb0, 0xaa, 0x04, 0xd1, 0x7b, 0xa6, 0xf4, 0x1f, 0x1e, + 0x6e, 0x03, 0x4d, 0x97, 0x3c, 0xcc, 0x24, 0x42, +}; +static const unsigned char kat3706_retbits[] = { + 0x2d, 0xb1, 0x0f, 0xe1, 0xd5, 0xfe, 0x7c, 0x3c, 0xf2, 0x7f, 0x22, 0x1d, + 0x97, 0x21, 0x47, 0xe5, 0x55, 0x3b, 0xb4, 0x58, 0x5a, 0xfc, 0x0c, 0x71, + 0xf4, 0x89, 0xb0, 0xf7, 0xd2, 0x3d, 0xa8, 0x3e, 0x27, 0x5c, 0x12, 0x4f, + 0x42, 0xb6, 0xb1, 0xdf, 0x7d, 0x24, 0x98, 0x7a, 0xcb, 0x51, 0x29, 0x40, + 0x9e, 0xdb, 0x34, 0x03, 0xf1, 0x5a, 0x01, 0x50, 0x8d, 0xd1, 0x3b, 0xd6, + 0x59, 0xf7, 0x30, 0xf2, +}; +static const struct drbg_kat_pr_true kat3706_t = { + 0, kat3706_entropyin, kat3706_nonce, kat3706_persstr, + kat3706_entropyinpr1, kat3706_addinpr1, kat3706_entropyinpr2, + kat3706_addinpr2, kat3706_retbits +}; +static const struct drbg_kat kat3706 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3706_t +}; + +static const unsigned char kat3707_entropyin[] = { + 0x26, 0x5d, 0x9b, 0x95, 0xf4, 0x76, 0x1b, 0x9e, 0x1d, 0x76, 0x20, 0x66, + 0xd0, 0x0d, 0x60, 0x74, 0x0a, 0xe9, 0x89, 0xc7, 0x8a, 0xd1, 0x94, 0xbe, + 0x2d, 0xa4, 0xe8, 0x9a, 0xac, 0xf4, 0xbe, 0x8c, +}; +static const unsigned char kat3707_nonce[] = {0}; +static const unsigned char kat3707_persstr[] = { + 0x5c, 0x14, 0x53, 0x10, 0x17, 0x33, 0x5f, 0x13, 0x5f, 0xf8, 0xd6, 0x5d, + 0x21, 0xd7, 0x43, 0xed, 0x75, 0xe9, 0x60, 0x2e, 0xec, 0xab, 0x5c, 0x9c, + 0x88, 0x31, 0x31, 0x94, 0xd0, 0xa1, 0x75, 0xe8, +}; +static const unsigned char kat3707_entropyinpr1[] = { + 0x63, 0xb8, 0x4e, 0x47, 0x51, 0xae, 0xc6, 0x9f, 0x06, 0xc7, 0x99, 0x78, + 0xc7, 0x31, 0xf4, 0x25, 0xd6, 0x75, 0xfb, 0x7f, 0x44, 0xe7, 0x7f, 0x53, + 0xfc, 0x5b, 0xc3, 0x03, 0x2b, 0x22, 0xa3, 0x2e, +}; +static const unsigned char kat3707_addinpr1[] = { + 0x81, 0x37, 0x4f, 0xd0, 0x8c, 0x93, 0xbe, 0x2e, 0xcd, 0x4c, 0xb0, 0x50, + 0x40, 0xd3, 0x03, 0xc2, 0x00, 0x37, 0x7b, 0x7d, 0x5b, 0x73, 0x66, 0x1e, + 0x07, 0x12, 0x7b, 0x7e, 0x4d, 0x4e, 0xce, 0xe4, +}; +static const unsigned char kat3707_entropyinpr2[] = { + 0xde, 0xb7, 0xc9, 0x9b, 0xb0, 0xb1, 0x43, 0xb4, 0xa4, 0x8f, 0xe2, 0x41, + 0x79, 0xbf, 0x8f, 0x25, 0x52, 0xa1, 0x48, 0xa1, 0x04, 0x1f, 0x54, 0xbf, + 0x76, 0x3d, 0x3a, 0xc5, 0x35, 0xbf, 0x8c, 0x5a, +}; +static const unsigned char kat3707_addinpr2[] = { + 0xd1, 0xd9, 0xb7, 0x61, 0xcf, 0x1a, 0x63, 0xec, 0x9f, 0x5c, 0x8e, 0xca, + 0x0b, 0x78, 0x1d, 0x43, 0x30, 0x00, 0x81, 0x2b, 0xcd, 0xc0, 0x52, 0x59, + 0x8a, 0x39, 0xe2, 0x4c, 0x9c, 0x58, 0x19, 0x37, +}; +static const unsigned char kat3707_retbits[] = { + 0xdb, 0x2e, 0x08, 0x59, 0x21, 0x08, 0xaf, 0xda, 0xb5, 0xcf, 0x8d, 0x60, + 0x29, 0x70, 0x96, 0x2b, 0x3c, 0x64, 0x24, 0x1c, 0x55, 0xf7, 0xdc, 0x38, + 0x97, 0xd9, 0x97, 0x50, 0xe7, 0x6a, 0xa4, 0x0f, 0xad, 0xa0, 0x36, 0x23, + 0xf1, 0xf2, 0x94, 0xce, 0xd6, 0x7d, 0x4a, 0x31, 0xa6, 0xba, 0x37, 0x18, + 0x1d, 0xac, 0xd1, 0x81, 0x7f, 0x8f, 0x82, 0x2a, 0x5f, 0xab, 0x6a, 0x96, + 0xa0, 0x16, 0xda, 0xe7, +}; +static const struct drbg_kat_pr_true kat3707_t = { + 1, kat3707_entropyin, kat3707_nonce, kat3707_persstr, + kat3707_entropyinpr1, kat3707_addinpr1, kat3707_entropyinpr2, + kat3707_addinpr2, kat3707_retbits +}; +static const struct drbg_kat kat3707 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3707_t +}; + +static const unsigned char kat3708_entropyin[] = { + 0x35, 0xd6, 0xb0, 0xc8, 0xcf, 0xcf, 0x54, 0x14, 0x15, 0x9e, 0xc0, 0x98, + 0xbe, 0xaa, 0x0f, 0x0d, 0xad, 0x4b, 0xb0, 0xde, 0xad, 0xc1, 0xd1, 0xe6, + 0x3a, 0x60, 0x46, 0xe2, 0x2a, 0xb2, 0xd8, 0x2f, +}; +static const unsigned char kat3708_nonce[] = {0}; +static const unsigned char kat3708_persstr[] = { + 0x4e, 0x46, 0xee, 0x7b, 0x13, 0xac, 0x4b, 0x55, 0x7c, 0x65, 0x35, 0xfe, + 0x91, 0x0c, 0x3b, 0xb8, 0x86, 0x91, 0x30, 0x2f, 0x81, 0xc4, 0xa0, 0x7e, + 0xd0, 0xda, 0x1a, 0x1a, 0xb0, 0xf6, 0xe6, 0xeb, +}; +static const unsigned char kat3708_entropyinpr1[] = { + 0x30, 0xce, 0x14, 0xb0, 0xfd, 0x21, 0x11, 0x15, 0xd2, 0x5b, 0x68, 0x5c, + 0x70, 0x14, 0xc9, 0x0d, 0xdc, 0xce, 0x98, 0xdd, 0x24, 0xa5, 0xd1, 0x69, + 0x56, 0x98, 0xea, 0x95, 0xbb, 0x43, 0x54, 0x8b, +}; +static const unsigned char kat3708_addinpr1[] = { + 0x8a, 0x91, 0x28, 0x1a, 0x93, 0xcb, 0x72, 0x9f, 0xe2, 0xdc, 0x22, 0xbd, + 0x51, 0x96, 0xb6, 0x12, 0x26, 0x6d, 0xb0, 0x37, 0x42, 0x52, 0x73, 0x83, + 0x4a, 0xc1, 0x00, 0x39, 0x9e, 0x28, 0xa3, 0x29, +}; +static const unsigned char kat3708_entropyinpr2[] = { + 0x4e, 0x94, 0x25, 0x92, 0x66, 0x50, 0x64, 0x70, 0x32, 0x9f, 0x05, 0x7c, + 0x3c, 0x40, 0xbb, 0xc0, 0xeb, 0x6e, 0x6c, 0xcb, 0x80, 0x32, 0x71, 0x2a, + 0xb6, 0xd5, 0xb9, 0x31, 0x00, 0x86, 0x70, 0x10, +}; +static const unsigned char kat3708_addinpr2[] = { + 0xd0, 0xa4, 0xfa, 0x40, 0x35, 0x3a, 0x05, 0xa3, 0xf8, 0xb5, 0x66, 0x50, + 0x7e, 0x63, 0x67, 0x44, 0x68, 0xb2, 0x73, 0x15, 0xc0, 0x7b, 0xea, 0xe1, + 0x19, 0x69, 0xd1, 0x99, 0x61, 0x76, 0x7b, 0x6f, +}; +static const unsigned char kat3708_retbits[] = { + 0x64, 0x87, 0x5b, 0xc8, 0x0b, 0x7c, 0x11, 0x59, 0x34, 0x4f, 0xff, 0x09, + 0x12, 0xbd, 0xa8, 0xf2, 0xb9, 0x5d, 0x81, 0xb6, 0x06, 0xc8, 0xa6, 0xef, + 0x75, 0x3c, 0x13, 0xce, 0xff, 0xbf, 0x34, 0x57, 0x48, 0x4b, 0x6b, 0xb4, + 0xd8, 0x6a, 0xec, 0x50, 0xf4, 0x20, 0xf2, 0x54, 0x49, 0x1d, 0xd1, 0xbe, + 0xa1, 0xe0, 0xc4, 0x74, 0xd0, 0xab, 0xd8, 0x17, 0x29, 0x45, 0x4a, 0xa9, + 0xdf, 0xb0, 0x5d, 0xf6, +}; +static const struct drbg_kat_pr_true kat3708_t = { + 2, kat3708_entropyin, kat3708_nonce, kat3708_persstr, + kat3708_entropyinpr1, kat3708_addinpr1, kat3708_entropyinpr2, + kat3708_addinpr2, kat3708_retbits +}; +static const struct drbg_kat kat3708 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3708_t +}; + +static const unsigned char kat3709_entropyin[] = { + 0x20, 0x74, 0x7b, 0x09, 0x74, 0x6e, 0x37, 0xaf, 0xdb, 0x1c, 0x67, 0xb6, + 0x93, 0xa0, 0x58, 0x70, 0x0b, 0x9d, 0x96, 0x32, 0x13, 0x54, 0x4f, 0x22, + 0x15, 0xb0, 0x31, 0x0a, 0x1e, 0x01, 0xc3, 0xd7, +}; +static const unsigned char kat3709_nonce[] = {0}; +static const unsigned char kat3709_persstr[] = { + 0xb6, 0xac, 0x79, 0xad, 0xa8, 0xa5, 0x02, 0x24, 0x0d, 0xf0, 0x8e, 0x6e, + 0x01, 0xc8, 0x69, 0xb3, 0xa4, 0xcb, 0x61, 0xc9, 0xfa, 0x90, 0xac, 0x50, + 0x24, 0x34, 0x0b, 0x58, 0x2a, 0xac, 0xde, 0xf2, +}; +static const unsigned char kat3709_entropyinpr1[] = { + 0x91, 0x35, 0x54, 0x79, 0x4c, 0x14, 0x9c, 0x50, 0x3e, 0x7a, 0xd5, 0x40, + 0xc2, 0xa0, 0xdd, 0x0b, 0x6c, 0x04, 0x3e, 0xe0, 0x67, 0xe2, 0x10, 0xfa, + 0xe4, 0x3f, 0xcd, 0x14, 0x12, 0x83, 0xde, 0xf0, +}; +static const unsigned char kat3709_addinpr1[] = { + 0x63, 0xcc, 0x67, 0xab, 0xf5, 0x62, 0xa7, 0x6f, 0x56, 0xca, 0xf0, 0x96, + 0x06, 0xbc, 0x28, 0x05, 0x31, 0x22, 0x01, 0x45, 0xd0, 0x49, 0xe6, 0x84, + 0xb9, 0xc3, 0x95, 0x5d, 0xa9, 0xfe, 0x83, 0x63, +}; +static const unsigned char kat3709_entropyinpr2[] = { + 0x30, 0x27, 0xc5, 0x37, 0x35, 0x8b, 0xec, 0xa2, 0xc6, 0xea, 0xaf, 0xe3, + 0x0f, 0xcc, 0xd0, 0x56, 0x58, 0xc5, 0xa0, 0xfd, 0xd9, 0x3f, 0x68, 0x9f, + 0x70, 0x1d, 0xed, 0xdd, 0x23, 0xe8, 0x59, 0x3f, +}; +static const unsigned char kat3709_addinpr2[] = { + 0xbe, 0xbf, 0x24, 0x7f, 0xb5, 0x14, 0xf5, 0xef, 0x65, 0xab, 0x6a, 0xde, + 0x98, 0xb8, 0xe8, 0x69, 0x66, 0x00, 0x44, 0x1b, 0xd3, 0x0b, 0x04, 0xc7, + 0x42, 0x25, 0x73, 0xb2, 0x4a, 0x32, 0x9c, 0xbe, +}; +static const unsigned char kat3709_retbits[] = { + 0x62, 0xa1, 0xec, 0x0e, 0x4f, 0xe1, 0x70, 0xdf, 0x11, 0x2b, 0x93, 0xd5, + 0x31, 0xb2, 0xb2, 0xbd, 0x5c, 0x23, 0x2c, 0x2c, 0xfb, 0xb2, 0xfd, 0x28, + 0x09, 0x02, 0xa1, 0x93, 0x6b, 0x9e, 0x1d, 0xe2, 0x4c, 0x02, 0x67, 0x14, + 0x18, 0xe2, 0xa4, 0x46, 0x19, 0x8c, 0x36, 0x7a, 0xb2, 0x1a, 0xa7, 0x21, + 0x58, 0x2d, 0xc6, 0xf3, 0x97, 0x8e, 0xa8, 0x73, 0x58, 0xa1, 0x76, 0xfc, + 0x0c, 0x7e, 0x30, 0x5a, +}; +static const struct drbg_kat_pr_true kat3709_t = { + 3, kat3709_entropyin, kat3709_nonce, kat3709_persstr, + kat3709_entropyinpr1, kat3709_addinpr1, kat3709_entropyinpr2, + kat3709_addinpr2, kat3709_retbits +}; +static const struct drbg_kat kat3709 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3709_t +}; + +static const unsigned char kat3710_entropyin[] = { + 0x23, 0xa6, 0xa7, 0x1e, 0x3c, 0x87, 0x05, 0x7d, 0xd2, 0x08, 0x7c, 0x23, + 0x02, 0x45, 0xba, 0x86, 0xe3, 0x8b, 0x8b, 0x72, 0x62, 0x7b, 0x97, 0x7b, + 0xb6, 0x0b, 0xed, 0xf2, 0xd1, 0xe7, 0x9b, 0x22, +}; +static const unsigned char kat3710_nonce[] = {0}; +static const unsigned char kat3710_persstr[] = { + 0xd2, 0x3a, 0xff, 0x93, 0xd2, 0x25, 0x74, 0x1c, 0xf5, 0x26, 0x16, 0x7d, + 0xce, 0x96, 0x91, 0x0d, 0x0d, 0xe3, 0x9e, 0xff, 0x8f, 0xa1, 0xa2, 0x87, + 0x09, 0x63, 0x71, 0x16, 0xe8, 0x75, 0x54, 0x4e, +}; +static const unsigned char kat3710_entropyinpr1[] = { + 0x96, 0x05, 0x37, 0x70, 0xc1, 0xcf, 0xe2, 0xd4, 0x6e, 0xf1, 0x3b, 0x1a, + 0x7b, 0xbe, 0x77, 0xd6, 0xcc, 0xad, 0x8f, 0xb7, 0x70, 0xd5, 0x04, 0x8f, + 0x80, 0x22, 0x5e, 0x27, 0x6f, 0x4c, 0x5b, 0xaf, +}; +static const unsigned char kat3710_addinpr1[] = { + 0x9c, 0xd3, 0x83, 0x20, 0x36, 0xd4, 0xf9, 0x80, 0xb7, 0xbc, 0xa1, 0x01, + 0x27, 0x71, 0x29, 0xe2, 0xf9, 0x7e, 0xe6, 0x9d, 0x74, 0xfc, 0x09, 0x47, + 0x5b, 0x4f, 0x2c, 0x3f, 0xb8, 0x12, 0xe5, 0x1c, +}; +static const unsigned char kat3710_entropyinpr2[] = { + 0xdb, 0x48, 0x00, 0x7e, 0x0a, 0xb2, 0x68, 0x02, 0xcf, 0x54, 0x9a, 0x22, + 0x88, 0x34, 0xb9, 0x0b, 0x1c, 0x99, 0x3d, 0x25, 0x2c, 0xd0, 0x49, 0xfa, + 0x3e, 0xd1, 0xbd, 0x74, 0xa6, 0x07, 0x1b, 0x9d, +}; +static const unsigned char kat3710_addinpr2[] = { + 0x91, 0x0f, 0x54, 0x6a, 0xc7, 0x2d, 0xf3, 0xd5, 0x1a, 0x80, 0xc0, 0x72, + 0xd5, 0xd7, 0x10, 0x6e, 0xe2, 0x16, 0x80, 0x22, 0x06, 0x0f, 0xd1, 0x9e, + 0xb4, 0x52, 0xc3, 0x4f, 0x62, 0x1c, 0xf4, 0xdf, +}; +static const unsigned char kat3710_retbits[] = { + 0x99, 0xae, 0x2f, 0xb0, 0x02, 0x51, 0x1c, 0x05, 0x5f, 0x05, 0x3d, 0x70, + 0x71, 0xdc, 0x72, 0x96, 0xe1, 0x0f, 0xd0, 0x69, 0x13, 0x58, 0xa6, 0x25, + 0x01, 0x7d, 0xd7, 0x0d, 0x72, 0x68, 0xbd, 0x4c, 0xde, 0x91, 0x26, 0x77, + 0x5d, 0x59, 0x3a, 0x89, 0xe6, 0xe5, 0x3c, 0xc0, 0xc6, 0xf5, 0x8a, 0x08, + 0x57, 0xe5, 0xb0, 0xae, 0x06, 0x46, 0xee, 0x49, 0x4a, 0x24, 0x3b, 0xec, + 0xb2, 0xe6, 0x0e, 0xce, +}; +static const struct drbg_kat_pr_true kat3710_t = { + 4, kat3710_entropyin, kat3710_nonce, kat3710_persstr, + kat3710_entropyinpr1, kat3710_addinpr1, kat3710_entropyinpr2, + kat3710_addinpr2, kat3710_retbits +}; +static const struct drbg_kat kat3710 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3710_t +}; + +static const unsigned char kat3711_entropyin[] = { + 0x51, 0xf3, 0xad, 0x44, 0x4e, 0xda, 0x63, 0xdd, 0xec, 0x44, 0x6f, 0xa7, + 0xb6, 0x5c, 0xe2, 0x32, 0xf0, 0xdb, 0x1c, 0x19, 0xf9, 0xe1, 0x42, 0x7f, + 0x1f, 0x75, 0xf7, 0x46, 0xc2, 0x0d, 0x6f, 0x72, +}; +static const unsigned char kat3711_nonce[] = {0}; +static const unsigned char kat3711_persstr[] = { + 0x8a, 0x75, 0xb8, 0xcb, 0x69, 0x7f, 0x9a, 0x9c, 0x52, 0x6d, 0x4f, 0xcb, + 0xc0, 0x1d, 0x22, 0xf2, 0xce, 0xa3, 0x93, 0x95, 0xd7, 0x97, 0x0a, 0xc4, + 0x7a, 0xe9, 0x60, 0x15, 0x58, 0x12, 0x4c, 0x72, +}; +static const unsigned char kat3711_entropyinpr1[] = { + 0xc0, 0xfe, 0x28, 0x0e, 0x31, 0x2e, 0xb7, 0x47, 0x16, 0x0e, 0xaa, 0xdf, + 0x08, 0xe1, 0x7f, 0x84, 0xdd, 0x82, 0x1e, 0xee, 0x5b, 0xe1, 0xd0, 0x1d, + 0x1f, 0x35, 0xb8, 0xe9, 0xc9, 0x0d, 0x89, 0xe9, +}; +static const unsigned char kat3711_addinpr1[] = { + 0x71, 0xcb, 0x3d, 0x4d, 0x25, 0x2e, 0xdb, 0x9c, 0x39, 0xd0, 0x90, 0x65, + 0xf6, 0xbb, 0xcf, 0x23, 0x90, 0xaa, 0x25, 0xa3, 0x94, 0x91, 0x83, 0x10, + 0x7d, 0x88, 0x5c, 0xb7, 0x1c, 0x98, 0x2b, 0xc1, +}; +static const unsigned char kat3711_entropyinpr2[] = { + 0xb8, 0xe0, 0x3e, 0xce, 0xbf, 0xa5, 0x66, 0x4a, 0x2a, 0xe0, 0x5a, 0xbd, + 0xdb, 0x2f, 0x58, 0xe0, 0x85, 0x42, 0x5e, 0xda, 0xd5, 0xbc, 0x5b, 0x4a, + 0x9d, 0x5a, 0x87, 0xa1, 0x05, 0xdb, 0x87, 0xa9, +}; +static const unsigned char kat3711_addinpr2[] = { + 0xec, 0xe2, 0xd3, 0x5d, 0xb4, 0x02, 0xa1, 0x2d, 0x08, 0x7c, 0xf6, 0x34, + 0x50, 0xb7, 0xc5, 0xf8, 0x07, 0x7d, 0x9f, 0xaf, 0x4d, 0x82, 0x16, 0xad, + 0x39, 0x6f, 0x74, 0xfb, 0xfa, 0x32, 0x5f, 0x70, +}; +static const unsigned char kat3711_retbits[] = { + 0xe9, 0x9f, 0x57, 0x9c, 0x67, 0xef, 0xc4, 0x1c, 0x37, 0x99, 0x21, 0x75, + 0x0d, 0x5e, 0xa2, 0x2d, 0x4f, 0x23, 0x56, 0xfa, 0x67, 0x6b, 0xe4, 0xad, + 0x38, 0x4f, 0x30, 0x6b, 0x1e, 0x61, 0x7e, 0x80, 0x4a, 0x3c, 0xd0, 0xa8, + 0xe2, 0x54, 0xec, 0x6a, 0xb4, 0x21, 0x0e, 0x14, 0x7d, 0x09, 0x72, 0xdd, + 0xfe, 0x1d, 0x45, 0x03, 0xfd, 0xf5, 0x94, 0x55, 0x35, 0xa8, 0x42, 0x34, + 0x63, 0x30, 0xbe, 0xbf, +}; +static const struct drbg_kat_pr_true kat3711_t = { + 5, kat3711_entropyin, kat3711_nonce, kat3711_persstr, + kat3711_entropyinpr1, kat3711_addinpr1, kat3711_entropyinpr2, + kat3711_addinpr2, kat3711_retbits +}; +static const struct drbg_kat kat3711 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3711_t +}; + +static const unsigned char kat3712_entropyin[] = { + 0x84, 0xe7, 0x75, 0x5e, 0x66, 0xd6, 0xcd, 0xe3, 0x3d, 0xb0, 0xd7, 0xd1, + 0x17, 0xaf, 0x40, 0x76, 0xc6, 0x53, 0x6a, 0x5b, 0xf1, 0xd1, 0xf5, 0xc7, + 0xe9, 0x03, 0x48, 0x2a, 0x02, 0x02, 0x8b, 0x8e, +}; +static const unsigned char kat3712_nonce[] = {0}; +static const unsigned char kat3712_persstr[] = { + 0xe4, 0xc8, 0x57, 0x59, 0x34, 0xc0, 0x25, 0x14, 0xc2, 0x80, 0x8c, 0xd3, + 0xa5, 0x30, 0xe9, 0x6b, 0x0c, 0x0a, 0x4e, 0xdd, 0x26, 0x17, 0x8e, 0xf0, + 0x55, 0x06, 0x11, 0x80, 0xb3, 0x2a, 0xd6, 0x7f, +}; +static const unsigned char kat3712_entropyinpr1[] = { + 0x0f, 0xd2, 0xc7, 0x52, 0x05, 0x65, 0x69, 0x71, 0x51, 0x91, 0xe4, 0x79, + 0xe5, 0x16, 0x58, 0xc9, 0xa4, 0xa4, 0x42, 0x20, 0x71, 0x94, 0x9c, 0x5e, + 0x9a, 0xca, 0x74, 0x94, 0x18, 0x83, 0x6a, 0xb5, +}; +static const unsigned char kat3712_addinpr1[] = { + 0xa2, 0x39, 0xeb, 0x3d, 0x1f, 0x21, 0xca, 0xfa, 0xa2, 0x3e, 0x04, 0x9f, + 0x51, 0x94, 0x43, 0x67, 0xe6, 0x83, 0xcc, 0xf9, 0xd6, 0x23, 0x16, 0x24, + 0x05, 0xca, 0x37, 0x5d, 0xe5, 0x49, 0x17, 0xfa, +}; +static const unsigned char kat3712_entropyinpr2[] = { + 0x84, 0x0f, 0xdf, 0xe2, 0xfd, 0x2e, 0x90, 0x75, 0x4b, 0xd5, 0x2d, 0xb1, + 0x6a, 0xab, 0x32, 0xa0, 0xa7, 0x5f, 0x62, 0xca, 0x87, 0x57, 0xc7, 0x65, + 0x5a, 0x7b, 0xdf, 0xe2, 0x24, 0xfb, 0x54, 0x6b, +}; +static const unsigned char kat3712_addinpr2[] = { + 0xe3, 0x91, 0x61, 0xcb, 0x97, 0x22, 0x85, 0x68, 0x7d, 0x65, 0xd4, 0xdf, + 0xd7, 0x4e, 0x08, 0xe3, 0xfe, 0x1e, 0x25, 0x18, 0xe8, 0x15, 0xe3, 0x26, + 0x6e, 0x47, 0xfc, 0x1f, 0x5d, 0xbc, 0x5e, 0x4d, +}; +static const unsigned char kat3712_retbits[] = { + 0x36, 0x2d, 0x01, 0xae, 0xf0, 0xe7, 0x4e, 0xd7, 0x74, 0xb6, 0x79, 0xc1, + 0x5c, 0x71, 0x9c, 0x2f, 0x6d, 0x0e, 0xcb, 0x6c, 0x72, 0x0a, 0x28, 0xd6, + 0x5a, 0xcf, 0x28, 0x29, 0xe9, 0x86, 0x98, 0x43, 0x87, 0xa2, 0xe3, 0xd4, + 0x05, 0xca, 0xa3, 0x24, 0x94, 0xcf, 0x38, 0x3e, 0x87, 0x79, 0xcb, 0x78, + 0xdb, 0xc4, 0xfc, 0xf0, 0xe5, 0xff, 0xa1, 0xb2, 0xed, 0x78, 0x5c, 0x69, + 0xdd, 0xe2, 0x0c, 0x46, +}; +static const struct drbg_kat_pr_true kat3712_t = { + 6, kat3712_entropyin, kat3712_nonce, kat3712_persstr, + kat3712_entropyinpr1, kat3712_addinpr1, kat3712_entropyinpr2, + kat3712_addinpr2, kat3712_retbits +}; +static const struct drbg_kat kat3712 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3712_t +}; + +static const unsigned char kat3713_entropyin[] = { + 0xf5, 0x1d, 0x83, 0xd3, 0x4f, 0x19, 0xbb, 0x78, 0x3c, 0xba, 0xb5, 0x99, + 0x48, 0xab, 0xd9, 0x60, 0x87, 0xb1, 0x69, 0x35, 0x85, 0xf3, 0xbc, 0xfe, + 0xce, 0x8c, 0x51, 0x5a, 0x76, 0x1f, 0xa8, 0x7e, +}; +static const unsigned char kat3713_nonce[] = {0}; +static const unsigned char kat3713_persstr[] = { + 0xa5, 0x22, 0x26, 0x42, 0xe0, 0xa0, 0xd2, 0xef, 0x5a, 0x37, 0xc9, 0x32, + 0x9e, 0xf4, 0xb7, 0x47, 0xac, 0x4f, 0x01, 0xa1, 0x49, 0xae, 0x39, 0xc4, + 0xef, 0x00, 0x32, 0xa3, 0x6d, 0xf1, 0x66, 0xfe, +}; +static const unsigned char kat3713_entropyinpr1[] = { + 0xfc, 0x3f, 0xe5, 0xb9, 0x7a, 0x2a, 0x2c, 0x9d, 0x88, 0x61, 0xe7, 0x3d, + 0x73, 0xcb, 0x8c, 0x85, 0x41, 0x92, 0x28, 0x22, 0x2c, 0x41, 0xc2, 0x7e, + 0x01, 0xe2, 0xcf, 0xcd, 0x29, 0xd8, 0x6e, 0x30, +}; +static const unsigned char kat3713_addinpr1[] = { + 0xf7, 0x5f, 0x0e, 0xf6, 0x29, 0x19, 0x6c, 0x5d, 0x00, 0xba, 0x6c, 0xbe, + 0x65, 0xa2, 0x49, 0x23, 0xf0, 0x62, 0x31, 0xb5, 0x6c, 0xed, 0xeb, 0x07, + 0x78, 0x8c, 0x57, 0x74, 0xd2, 0xed, 0xfc, 0x1b, +}; +static const unsigned char kat3713_entropyinpr2[] = { + 0x6f, 0x98, 0xff, 0x76, 0x6f, 0x41, 0x97, 0xd4, 0xa0, 0x09, 0xcf, 0xc1, + 0x83, 0x15, 0x47, 0x0f, 0xa0, 0xf4, 0xf1, 0x5c, 0x0c, 0x71, 0xdf, 0x37, + 0x10, 0x37, 0xe4, 0xac, 0xf5, 0x20, 0xc0, 0x47, +}; +static const unsigned char kat3713_addinpr2[] = { + 0x94, 0x14, 0x21, 0x9c, 0x87, 0x0b, 0x38, 0xa0, 0x68, 0x08, 0x99, 0x3d, + 0xfd, 0xe0, 0xa5, 0xcc, 0xec, 0x22, 0x86, 0x05, 0xa7, 0x29, 0x59, 0xc8, + 0x3f, 0x29, 0x74, 0xe4, 0x2c, 0xc9, 0x43, 0xaf, +}; +static const unsigned char kat3713_retbits[] = { + 0x65, 0x44, 0xa8, 0x44, 0xd1, 0xb5, 0xfa, 0xe1, 0x5e, 0x86, 0x03, 0x4e, + 0x82, 0x11, 0xef, 0x85, 0x78, 0x40, 0x2b, 0x70, 0xbf, 0xc6, 0x74, 0xa2, + 0x66, 0xb1, 0x14, 0xe6, 0xdb, 0x96, 0x58, 0x58, 0x32, 0x4c, 0x76, 0x60, + 0x15, 0xee, 0xe1, 0xeb, 0x4d, 0x24, 0xd6, 0x49, 0xe7, 0x6b, 0xd3, 0x88, + 0x9f, 0xc8, 0x09, 0x60, 0x3b, 0xf6, 0xc9, 0xe4, 0xbb, 0x3f, 0x8e, 0x94, + 0x7f, 0x6f, 0x7a, 0x80, +}; +static const struct drbg_kat_pr_true kat3713_t = { + 7, kat3713_entropyin, kat3713_nonce, kat3713_persstr, + kat3713_entropyinpr1, kat3713_addinpr1, kat3713_entropyinpr2, + kat3713_addinpr2, kat3713_retbits +}; +static const struct drbg_kat kat3713 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3713_t +}; + +static const unsigned char kat3714_entropyin[] = { + 0xb0, 0x13, 0x2a, 0xd2, 0x38, 0xa0, 0x8c, 0x27, 0x9a, 0x7d, 0x7a, 0x6c, + 0xc5, 0x79, 0x4c, 0x94, 0xb9, 0xca, 0x26, 0x8b, 0x9d, 0x3b, 0xf1, 0x8a, + 0x3c, 0x8b, 0x58, 0x8e, 0xa2, 0x2c, 0x9c, 0x25, +}; +static const unsigned char kat3714_nonce[] = {0}; +static const unsigned char kat3714_persstr[] = { + 0xe3, 0x02, 0xec, 0xe7, 0x67, 0xc6, 0x0d, 0x01, 0xc6, 0x47, 0x00, 0x84, + 0x3b, 0x1a, 0x88, 0x08, 0xf8, 0x7e, 0x09, 0xe3, 0x3a, 0xf4, 0x61, 0x9b, + 0x09, 0x89, 0x2f, 0xbe, 0x5f, 0x0f, 0x66, 0x87, +}; +static const unsigned char kat3714_entropyinpr1[] = { + 0x49, 0x4b, 0x9d, 0xa0, 0x84, 0x94, 0x3e, 0xbd, 0x9e, 0xcd, 0x90, 0x1a, + 0x9b, 0xdc, 0x0c, 0x38, 0xea, 0xb6, 0xfd, 0x04, 0xb4, 0x2b, 0xc0, 0x19, + 0x03, 0x04, 0xb4, 0xaf, 0x5d, 0x42, 0x79, 0xe1, +}; +static const unsigned char kat3714_addinpr1[] = { + 0x7c, 0xfc, 0xca, 0xce, 0x01, 0x3c, 0x1d, 0x20, 0x8d, 0x17, 0x78, 0xfb, + 0xb2, 0x3c, 0x0b, 0x88, 0x4d, 0xed, 0x21, 0x5e, 0x93, 0xeb, 0x9c, 0x44, + 0x80, 0x43, 0xc8, 0x6f, 0xf8, 0x11, 0x17, 0xeb, +}; +static const unsigned char kat3714_entropyinpr2[] = { + 0xc8, 0xdf, 0x5c, 0x40, 0x45, 0xaa, 0x6f, 0x66, 0x25, 0x49, 0x21, 0xf1, + 0x65, 0x66, 0xe3, 0x14, 0xf2, 0x45, 0xa3, 0xe3, 0x3b, 0xfa, 0x96, 0xc9, + 0xda, 0x84, 0xd9, 0xe1, 0x69, 0x7a, 0xda, 0xf3, +}; +static const unsigned char kat3714_addinpr2[] = { + 0x6d, 0x8d, 0x03, 0x7f, 0x12, 0xf4, 0xa1, 0xbf, 0x6b, 0xdc, 0xed, 0x6b, + 0x5c, 0xd8, 0xc8, 0x81, 0xb1, 0xd4, 0xf2, 0xbd, 0x1c, 0xa9, 0x2e, 0x5e, + 0xd7, 0x1a, 0x32, 0xa5, 0xc6, 0xe5, 0xd7, 0xc1, +}; +static const unsigned char kat3714_retbits[] = { + 0x81, 0xa7, 0x5b, 0x74, 0x30, 0xc9, 0x1a, 0xd3, 0xca, 0xd4, 0xe5, 0x44, + 0x3c, 0xeb, 0x2b, 0x22, 0xb6, 0x31, 0xa3, 0xae, 0xe4, 0x71, 0x12, 0x2d, + 0xd8, 0x21, 0x4a, 0xb0, 0x5c, 0xdd, 0x5c, 0xd9, 0x68, 0x11, 0xde, 0x3b, + 0xcd, 0xe3, 0xfc, 0x4a, 0xc1, 0x59, 0x5c, 0x76, 0xc6, 0x6d, 0x18, 0xe9, + 0x1b, 0xc1, 0xbb, 0xf4, 0xa5, 0x8e, 0xa7, 0xc1, 0xd2, 0x30, 0x8f, 0xa5, + 0xfd, 0x8c, 0xa3, 0x61, +}; +static const struct drbg_kat_pr_true kat3714_t = { + 8, kat3714_entropyin, kat3714_nonce, kat3714_persstr, + kat3714_entropyinpr1, kat3714_addinpr1, kat3714_entropyinpr2, + kat3714_addinpr2, kat3714_retbits +}; +static const struct drbg_kat kat3714 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3714_t +}; + +static const unsigned char kat3715_entropyin[] = { + 0x76, 0xf7, 0x35, 0xbe, 0xc2, 0x47, 0x9c, 0x15, 0x12, 0x1f, 0x0b, 0xc6, + 0xf1, 0x6a, 0x9e, 0x28, 0xfd, 0x1d, 0xa5, 0x8e, 0xdc, 0x15, 0x86, 0x03, + 0xb2, 0x70, 0xd6, 0xe0, 0x97, 0xd4, 0x8b, 0x89, +}; +static const unsigned char kat3715_nonce[] = {0}; +static const unsigned char kat3715_persstr[] = { + 0x25, 0x27, 0x6b, 0xeb, 0xf4, 0x4b, 0x8d, 0x73, 0x08, 0x39, 0xe8, 0x3d, + 0x82, 0xff, 0x3a, 0xb0, 0x07, 0x76, 0x42, 0x83, 0xa2, 0x22, 0x20, 0xbb, + 0xa6, 0x8d, 0xab, 0x0b, 0xbc, 0xea, 0x72, 0x6e, +}; +static const unsigned char kat3715_entropyinpr1[] = { + 0xb1, 0x11, 0xb9, 0x9d, 0x11, 0x99, 0xd9, 0x1b, 0xb9, 0x1c, 0x44, 0xee, + 0x4e, 0x6c, 0x4b, 0xbb, 0x41, 0xa4, 0x53, 0x51, 0x07, 0xbf, 0x68, 0xcf, + 0x44, 0x2a, 0xea, 0xf0, 0xf6, 0x8f, 0xc9, 0xf1, +}; +static const unsigned char kat3715_addinpr1[] = { + 0x94, 0xd2, 0x18, 0x4e, 0x69, 0x1e, 0xac, 0x3a, 0x2b, 0xdf, 0x4d, 0x6e, + 0x11, 0xad, 0xfd, 0xeb, 0x4d, 0x5b, 0xef, 0xf8, 0x07, 0x48, 0xb9, 0x97, + 0x73, 0x1d, 0xb0, 0x01, 0xb4, 0x2d, 0x3f, 0xff, +}; +static const unsigned char kat3715_entropyinpr2[] = { + 0x66, 0xb2, 0x90, 0xed, 0x3f, 0x40, 0xa7, 0x5c, 0x0c, 0x1e, 0xff, 0x42, + 0xd6, 0x57, 0xb5, 0x53, 0x9c, 0xe8, 0xcd, 0xaa, 0x11, 0x6b, 0x91, 0xf3, + 0x9e, 0xf3, 0x14, 0x67, 0x97, 0xf8, 0x15, 0xce, +}; +static const unsigned char kat3715_addinpr2[] = { + 0xcb, 0x1b, 0xa3, 0xf3, 0x28, 0x70, 0xe3, 0xd5, 0xe6, 0x7d, 0xb5, 0xc4, + 0xa2, 0xdb, 0xca, 0xb8, 0xc5, 0xdc, 0x09, 0xf8, 0x5a, 0x40, 0xc4, 0x6c, + 0xd2, 0x0a, 0x13, 0x0c, 0x0f, 0x1d, 0x3e, 0xb7, +}; +static const unsigned char kat3715_retbits[] = { + 0x80, 0xdf, 0xac, 0xaa, 0xe8, 0xe3, 0x55, 0x84, 0xf9, 0xd4, 0x7e, 0xed, + 0x8b, 0xed, 0x62, 0xa8, 0xcf, 0x92, 0xb4, 0x40, 0x40, 0x6d, 0x5b, 0x95, + 0x50, 0xd5, 0x9c, 0x28, 0x3e, 0xe9, 0x73, 0xc8, 0xaa, 0x41, 0x6f, 0x7f, + 0x4a, 0xb4, 0x73, 0x02, 0x57, 0x94, 0x66, 0x4d, 0x2d, 0x2c, 0xf9, 0x38, + 0x60, 0x15, 0x40, 0x4c, 0x09, 0x1e, 0x42, 0x25, 0xc6, 0x1b, 0x73, 0xf0, + 0x07, 0x15, 0x80, 0xf2, +}; +static const struct drbg_kat_pr_true kat3715_t = { + 9, kat3715_entropyin, kat3715_nonce, kat3715_persstr, + kat3715_entropyinpr1, kat3715_addinpr1, kat3715_entropyinpr2, + kat3715_addinpr2, kat3715_retbits +}; +static const struct drbg_kat kat3715 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3715_t +}; + +static const unsigned char kat3716_entropyin[] = { + 0x53, 0x80, 0x65, 0xf6, 0x3b, 0xc4, 0x65, 0x74, 0x18, 0x67, 0x15, 0x77, + 0xa8, 0x7c, 0x53, 0x7f, 0x72, 0xe8, 0x89, 0x0c, 0x4d, 0xa8, 0x30, 0x54, + 0x44, 0x6c, 0x4d, 0x04, 0x90, 0xce, 0xfd, 0xc6, +}; +static const unsigned char kat3716_nonce[] = {0}; +static const unsigned char kat3716_persstr[] = { + 0x7a, 0xa2, 0xa0, 0x5b, 0x76, 0xad, 0xeb, 0x23, 0x81, 0x97, 0x21, 0xf2, + 0xce, 0x58, 0x71, 0xe3, 0x07, 0x24, 0x6c, 0x34, 0x97, 0xb0, 0x65, 0xda, + 0xcd, 0xd8, 0xe0, 0x8a, 0xbb, 0x55, 0xe0, 0x1c, +}; +static const unsigned char kat3716_entropyinpr1[] = { + 0x74, 0xef, 0xc7, 0x30, 0xd8, 0x54, 0x56, 0xf1, 0xe7, 0x59, 0x54, 0x0d, + 0x2a, 0x72, 0x18, 0xa5, 0x97, 0x08, 0x66, 0x67, 0x35, 0x65, 0x59, 0xab, + 0x3f, 0x78, 0x15, 0xfe, 0xd9, 0x26, 0xc5, 0xfb, +}; +static const unsigned char kat3716_addinpr1[] = { + 0x76, 0xd1, 0xd2, 0xa2, 0xcf, 0xa5, 0x8a, 0xce, 0xef, 0x40, 0xff, 0x21, + 0x67, 0xe6, 0xfd, 0x77, 0x4f, 0x78, 0x58, 0x15, 0xf2, 0x3c, 0xd0, 0x57, + 0xf4, 0xa8, 0xac, 0xf0, 0x2b, 0x9b, 0x5f, 0x8f, +}; +static const unsigned char kat3716_entropyinpr2[] = { + 0x49, 0x76, 0xdf, 0x61, 0xeb, 0x5d, 0x15, 0x91, 0xbc, 0xaf, 0xae, 0xaf, + 0x49, 0xcb, 0x49, 0xa7, 0xb6, 0x6e, 0x4f, 0x4c, 0x39, 0xe1, 0xae, 0xab, + 0x46, 0xf7, 0xe1, 0xae, 0xaa, 0x50, 0x52, 0xa2, +}; +static const unsigned char kat3716_addinpr2[] = { + 0xe0, 0xa7, 0xed, 0x10, 0x83, 0x9b, 0x78, 0x7e, 0x31, 0x04, 0xa4, 0x2a, + 0xd1, 0x39, 0x95, 0x7e, 0xda, 0xfa, 0xe4, 0x80, 0xf0, 0xb4, 0x3d, 0x7c, + 0x47, 0x42, 0x67, 0xe6, 0x52, 0x60, 0xba, 0xc4, +}; +static const unsigned char kat3716_retbits[] = { + 0x24, 0xe7, 0x34, 0xb1, 0xb0, 0x40, 0x58, 0x5d, 0xfa, 0xea, 0x5d, 0x09, + 0x56, 0xe7, 0x0c, 0xf1, 0x09, 0x26, 0xdf, 0xb8, 0xef, 0xa2, 0x98, 0xaf, + 0xd3, 0xc0, 0x3f, 0x33, 0xe3, 0x3c, 0xb6, 0xc1, 0xe3, 0x7e, 0xa4, 0xfa, + 0x54, 0x7c, 0x5c, 0xea, 0x74, 0x5e, 0x05, 0x7b, 0xfe, 0x66, 0xbe, 0x7b, + 0x7c, 0x8f, 0x22, 0x7e, 0x15, 0x69, 0x7f, 0xac, 0x04, 0xb8, 0x46, 0x0f, + 0xc9, 0x99, 0x9c, 0xeb, +}; +static const struct drbg_kat_pr_true kat3716_t = { + 10, kat3716_entropyin, kat3716_nonce, kat3716_persstr, + kat3716_entropyinpr1, kat3716_addinpr1, kat3716_entropyinpr2, + kat3716_addinpr2, kat3716_retbits +}; +static const struct drbg_kat kat3716 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3716_t +}; + +static const unsigned char kat3717_entropyin[] = { + 0xcc, 0xe0, 0x8c, 0x5c, 0xd8, 0xc5, 0x79, 0x5d, 0x98, 0xf2, 0x63, 0xc9, + 0x66, 0xfe, 0x4e, 0x15, 0xfa, 0xe5, 0x50, 0xf5, 0x19, 0x20, 0x15, 0xf1, + 0x03, 0x37, 0x52, 0xc9, 0x8c, 0x8e, 0x81, 0xea, +}; +static const unsigned char kat3717_nonce[] = {0}; +static const unsigned char kat3717_persstr[] = { + 0x0c, 0xed, 0x7e, 0xc5, 0xc3, 0x3a, 0x92, 0xdd, 0xc3, 0x4f, 0x06, 0xa3, + 0xa2, 0xbe, 0x06, 0xcc, 0xf4, 0xb3, 0xa8, 0x6b, 0x61, 0xf1, 0x5c, 0xa9, + 0xc5, 0x93, 0x9c, 0x2e, 0xe7, 0x28, 0x69, 0x15, +}; +static const unsigned char kat3717_entropyinpr1[] = { + 0xcc, 0xc1, 0xb4, 0xf4, 0xdf, 0x36, 0x78, 0x3b, 0x9d, 0x81, 0x67, 0x82, + 0xa6, 0x5a, 0x9c, 0x81, 0xfe, 0xee, 0x64, 0x8c, 0x2d, 0x97, 0x85, 0x08, + 0x72, 0xb9, 0x17, 0x27, 0xa2, 0xc6, 0xcd, 0x51, +}; +static const unsigned char kat3717_addinpr1[] = { + 0x0c, 0x67, 0xa0, 0x57, 0x19, 0x9b, 0x04, 0xa5, 0x4d, 0x29, 0x4a, 0x4b, + 0xf2, 0x2c, 0xdc, 0xfa, 0x48, 0x98, 0xb7, 0x88, 0xe4, 0x28, 0xb9, 0xc7, + 0x4f, 0xe3, 0xa7, 0xf5, 0x4b, 0xb5, 0xa5, 0x5c, +}; +static const unsigned char kat3717_entropyinpr2[] = { + 0x35, 0xc2, 0xa5, 0x94, 0x6d, 0x20, 0x63, 0x6b, 0xe7, 0x76, 0x6a, 0x4b, + 0xd9, 0x2d, 0xa8, 0x49, 0x15, 0x4c, 0x46, 0xa1, 0x4a, 0x58, 0x99, 0xb8, + 0xe5, 0x28, 0x0b, 0xac, 0x97, 0x24, 0x3c, 0xaa, +}; +static const unsigned char kat3717_addinpr2[] = { + 0xbe, 0x44, 0xaa, 0x50, 0x20, 0x6a, 0x12, 0xb5, 0xf4, 0x46, 0x28, 0x42, + 0x6a, 0x24, 0x10, 0x50, 0x33, 0x65, 0x06, 0x1a, 0x19, 0xf2, 0x3c, 0x6c, + 0x3e, 0x02, 0x56, 0xff, 0x57, 0x54, 0xcd, 0x68, +}; +static const unsigned char kat3717_retbits[] = { + 0x40, 0x5f, 0x52, 0x55, 0xcf, 0xfe, 0xb1, 0xe8, 0x54, 0x22, 0x78, 0xb5, + 0x41, 0x66, 0xc5, 0x6a, 0x9e, 0x42, 0x3b, 0xa6, 0xff, 0x33, 0x72, 0x49, + 0x7c, 0x64, 0x05, 0x40, 0xba, 0x6f, 0x31, 0x27, 0x18, 0x74, 0x38, 0x05, + 0x43, 0xe4, 0x2f, 0x24, 0xd1, 0xb3, 0x8b, 0xed, 0xeb, 0x13, 0xc9, 0xcc, + 0xb1, 0xe7, 0xf4, 0x3e, 0x3a, 0x48, 0x20, 0x02, 0x49, 0x8b, 0x64, 0x48, + 0x04, 0x88, 0x10, 0xa9, +}; +static const struct drbg_kat_pr_true kat3717_t = { + 11, kat3717_entropyin, kat3717_nonce, kat3717_persstr, + kat3717_entropyinpr1, kat3717_addinpr1, kat3717_entropyinpr2, + kat3717_addinpr2, kat3717_retbits +}; +static const struct drbg_kat kat3717 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3717_t +}; + +static const unsigned char kat3718_entropyin[] = { + 0xfc, 0xd4, 0x0e, 0xfd, 0xc3, 0x47, 0xad, 0x7f, 0x41, 0x65, 0x3d, 0xbb, + 0xc8, 0x9e, 0x3b, 0x18, 0x10, 0xaf, 0xbd, 0x61, 0x61, 0xc8, 0x38, 0x97, + 0xac, 0xe9, 0xd2, 0x1c, 0x0b, 0x2b, 0x10, 0x39, +}; +static const unsigned char kat3718_nonce[] = {0}; +static const unsigned char kat3718_persstr[] = { + 0x7f, 0x9e, 0xbf, 0xf0, 0x24, 0xc3, 0xb5, 0x30, 0x0f, 0xce, 0x4a, 0xc8, + 0x82, 0x13, 0xb3, 0x9a, 0xf0, 0x8b, 0x04, 0x8e, 0xed, 0x78, 0x1b, 0x33, + 0x48, 0x98, 0xc0, 0xe7, 0xe5, 0x63, 0x0c, 0xb8, +}; +static const unsigned char kat3718_entropyinpr1[] = { + 0xdd, 0xde, 0x54, 0x0b, 0xdf, 0x23, 0x3d, 0x54, 0x6e, 0x16, 0x69, 0x72, + 0x2d, 0x21, 0xa9, 0x7f, 0x5d, 0xf7, 0x87, 0x00, 0xa9, 0x56, 0xae, 0xd8, + 0x8f, 0x34, 0xc4, 0x29, 0x53, 0x21, 0x55, 0x4f, +}; +static const unsigned char kat3718_addinpr1[] = { + 0x53, 0xab, 0xdb, 0xcc, 0x9f, 0x94, 0x22, 0x9b, 0xbf, 0x77, 0xbf, 0xc0, + 0x03, 0x92, 0x0c, 0xca, 0xd0, 0x57, 0xf6, 0xba, 0xce, 0xff, 0xfd, 0x23, + 0xa5, 0x4f, 0x2b, 0x3c, 0x53, 0x2a, 0x70, 0x33, +}; +static const unsigned char kat3718_entropyinpr2[] = { + 0x27, 0x4a, 0xdc, 0x87, 0x98, 0x61, 0x49, 0xc4, 0xeb, 0xb5, 0xc3, 0xb4, + 0x63, 0x86, 0x21, 0x89, 0xe1, 0x49, 0x73, 0x90, 0xa0, 0x38, 0x4a, 0xae, + 0x89, 0xfe, 0x69, 0x2a, 0x24, 0x6a, 0xe7, 0xbd, +}; +static const unsigned char kat3718_addinpr2[] = { + 0x05, 0xa0, 0x13, 0xe9, 0xac, 0x5e, 0x3e, 0x98, 0xd6, 0x03, 0x9e, 0x78, + 0x87, 0x10, 0x17, 0xf4, 0xc5, 0x7a, 0x53, 0x85, 0x03, 0x4f, 0x1d, 0x74, + 0x02, 0xb2, 0xf1, 0xc9, 0xcc, 0x8b, 0xeb, 0xd0, +}; +static const unsigned char kat3718_retbits[] = { + 0xbe, 0xf9, 0x58, 0x25, 0x37, 0xb5, 0x20, 0xcd, 0xf9, 0x56, 0xc3, 0xcb, + 0x9f, 0xa4, 0x54, 0x74, 0x10, 0x7e, 0xb0, 0x2b, 0x1a, 0xb3, 0xb1, 0xd4, + 0xd9, 0x53, 0x52, 0x2d, 0xce, 0xf8, 0x0f, 0x4a, 0x71, 0x86, 0x5c, 0x0d, + 0x84, 0x9b, 0x9e, 0x44, 0xf6, 0x46, 0x31, 0x99, 0x8a, 0x48, 0xc1, 0x01, + 0x78, 0x72, 0xce, 0x2e, 0x6e, 0xbb, 0xd2, 0xbd, 0x7f, 0x98, 0x1c, 0xc5, + 0xcd, 0x5b, 0xe0, 0x2e, +}; +static const struct drbg_kat_pr_true kat3718_t = { + 12, kat3718_entropyin, kat3718_nonce, kat3718_persstr, + kat3718_entropyinpr1, kat3718_addinpr1, kat3718_entropyinpr2, + kat3718_addinpr2, kat3718_retbits +}; +static const struct drbg_kat kat3718 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3718_t +}; + +static const unsigned char kat3719_entropyin[] = { + 0xd0, 0xf5, 0xe6, 0x43, 0x2e, 0x57, 0x59, 0xf2, 0x60, 0x26, 0x23, 0x6c, + 0xe9, 0xfe, 0xcd, 0xb4, 0xe8, 0xde, 0xd5, 0x2c, 0x98, 0x48, 0x93, 0x11, + 0xe8, 0xff, 0x92, 0x98, 0xe6, 0xd7, 0x81, 0x6b, +}; +static const unsigned char kat3719_nonce[] = {0}; +static const unsigned char kat3719_persstr[] = { + 0x1b, 0x74, 0x6f, 0x2b, 0x1f, 0xb5, 0x4c, 0x4a, 0x0b, 0xac, 0x0c, 0x94, + 0x80, 0xbb, 0x6d, 0x11, 0x5c, 0xa0, 0xe8, 0xbc, 0x7e, 0xfc, 0x74, 0xc2, + 0x57, 0x96, 0x6a, 0x0a, 0x9f, 0x3f, 0xa3, 0x88, +}; +static const unsigned char kat3719_entropyinpr1[] = { + 0x40, 0x9a, 0x02, 0x4e, 0x1c, 0x94, 0xc5, 0x92, 0xd4, 0x36, 0xe6, 0x03, + 0xc8, 0xea, 0x25, 0xe1, 0xd4, 0x8d, 0x55, 0xfe, 0x2b, 0x08, 0x94, 0x65, + 0xdc, 0x3c, 0xf3, 0x4b, 0xb2, 0xe1, 0x14, 0xc4, +}; +static const unsigned char kat3719_addinpr1[] = { + 0x99, 0xdf, 0xdf, 0xa5, 0xea, 0x3e, 0x54, 0xed, 0xc3, 0xab, 0xdd, 0x3c, + 0xc0, 0xfd, 0x85, 0x84, 0x3e, 0x40, 0x4f, 0xe1, 0x23, 0xf8, 0xa0, 0x1f, + 0x42, 0x95, 0x09, 0x5d, 0x87, 0x95, 0xca, 0xb4, +}; +static const unsigned char kat3719_entropyinpr2[] = { + 0xce, 0x18, 0x1c, 0xdc, 0xa5, 0x64, 0xcc, 0xba, 0x8f, 0x3b, 0xae, 0xa1, + 0x82, 0x79, 0x72, 0xb4, 0xd1, 0x55, 0xcf, 0x51, 0x2e, 0x0f, 0x4c, 0xee, + 0x2f, 0x47, 0xb7, 0xfd, 0x49, 0x46, 0x29, 0x94, +}; +static const unsigned char kat3719_addinpr2[] = { + 0x49, 0x41, 0x90, 0x3f, 0x86, 0x75, 0xc0, 0x1a, 0x4e, 0xb6, 0x46, 0x4e, + 0xca, 0xa1, 0xfb, 0x17, 0x75, 0x9f, 0x8b, 0x66, 0x7d, 0x25, 0x0d, 0x8d, + 0x1e, 0xcd, 0x8e, 0xed, 0xb4, 0xe7, 0x31, 0x8c, +}; +static const unsigned char kat3719_retbits[] = { + 0x2d, 0x16, 0xdc, 0xe6, 0xa8, 0x44, 0x20, 0x6f, 0x6b, 0xd6, 0xd5, 0x71, + 0x5c, 0xda, 0x01, 0x44, 0x7d, 0x79, 0x5c, 0xd6, 0x4b, 0x60, 0xb4, 0x58, + 0xfa, 0x7f, 0x21, 0xd1, 0x0e, 0xc6, 0x56, 0x5b, 0xbf, 0x31, 0x44, 0xe0, + 0x92, 0x05, 0x27, 0xed, 0x4e, 0x9c, 0xa9, 0xc7, 0x59, 0xfc, 0x3c, 0xd8, + 0xac, 0x05, 0x48, 0xf7, 0xa0, 0x39, 0xc1, 0x55, 0xe6, 0x2a, 0x2b, 0xeb, + 0x78, 0x85, 0x63, 0x2c, +}; +static const struct drbg_kat_pr_true kat3719_t = { + 13, kat3719_entropyin, kat3719_nonce, kat3719_persstr, + kat3719_entropyinpr1, kat3719_addinpr1, kat3719_entropyinpr2, + kat3719_addinpr2, kat3719_retbits +}; +static const struct drbg_kat kat3719 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3719_t +}; + +static const unsigned char kat3720_entropyin[] = { + 0x86, 0xf4, 0xf7, 0xec, 0x3c, 0xb2, 0xd3, 0x7c, 0xea, 0x66, 0x47, 0xe3, + 0x83, 0xcd, 0x0f, 0x35, 0x71, 0x99, 0x89, 0xcb, 0x13, 0x23, 0x71, 0x07, + 0x84, 0xcb, 0x27, 0xa6, 0x4f, 0xc3, 0xee, 0x9b, +}; +static const unsigned char kat3720_nonce[] = {0}; +static const unsigned char kat3720_persstr[] = { + 0xcc, 0xe1, 0x28, 0xaa, 0xa8, 0x5c, 0xb5, 0x2d, 0xcf, 0x2e, 0xbf, 0xd8, + 0x37, 0xbb, 0x13, 0x7e, 0x53, 0xa9, 0x1d, 0xd2, 0x9b, 0x7d, 0x65, 0xe8, + 0x90, 0xe6, 0x6d, 0x54, 0xfa, 0x09, 0x6f, 0xc6, +}; +static const unsigned char kat3720_entropyinpr1[] = { + 0xa8, 0xaf, 0xcb, 0x36, 0xc5, 0x1b, 0x7c, 0xba, 0x56, 0x4e, 0xc8, 0xeb, + 0xe2, 0x58, 0xc9, 0x36, 0xcd, 0xa3, 0x61, 0x3b, 0x22, 0x3a, 0x70, 0xab, + 0x9f, 0x65, 0xf0, 0x01, 0xc2, 0x2c, 0xc5, 0xa4, +}; +static const unsigned char kat3720_addinpr1[] = { + 0x40, 0x60, 0x82, 0xc9, 0xde, 0xc4, 0x16, 0x91, 0x7d, 0x56, 0xae, 0xff, + 0xac, 0xba, 0xcd, 0xc4, 0xe2, 0xad, 0x24, 0x0b, 0x08, 0x04, 0x2d, 0x33, + 0x82, 0x47, 0x18, 0x11, 0x13, 0x42, 0xdb, 0x5f, +}; +static const unsigned char kat3720_entropyinpr2[] = { + 0xc6, 0x4d, 0xc7, 0xf4, 0xe7, 0xfc, 0x14, 0xad, 0xa0, 0x90, 0x5e, 0x27, + 0x1e, 0x0d, 0xe4, 0x91, 0xa7, 0xb8, 0xe4, 0x93, 0x1d, 0x26, 0x82, 0x3e, + 0x57, 0x21, 0x32, 0x32, 0x9e, 0x00, 0x65, 0x2a, +}; +static const unsigned char kat3720_addinpr2[] = { + 0x55, 0x15, 0x6a, 0x60, 0x49, 0x66, 0x21, 0x2f, 0x7c, 0xf2, 0x03, 0x79, + 0xb7, 0x9c, 0xdf, 0xee, 0x41, 0xa9, 0xfe, 0x46, 0x2c, 0x9f, 0x7e, 0x17, + 0xe5, 0xa0, 0x82, 0xc5, 0xdc, 0xa8, 0xb6, 0x60, +}; +static const unsigned char kat3720_retbits[] = { + 0x7d, 0x96, 0xdf, 0xe0, 0xf6, 0xfe, 0x3e, 0xac, 0x2d, 0xe3, 0xa3, 0xa8, + 0x72, 0x9d, 0x36, 0xaf, 0xb1, 0x76, 0x7a, 0xea, 0xe2, 0xac, 0x3c, 0x79, + 0xdb, 0x0c, 0x52, 0x32, 0x26, 0xca, 0xca, 0xc3, 0xca, 0xc6, 0xd5, 0xa8, + 0x7d, 0x4f, 0x15, 0x2e, 0x8e, 0x72, 0x74, 0x06, 0x9c, 0xc9, 0xf1, 0x2b, + 0xb7, 0xed, 0xb2, 0x93, 0xf0, 0x4e, 0x9b, 0xbd, 0x5a, 0x8f, 0x0a, 0xb1, + 0x42, 0xfc, 0x37, 0x3b, +}; +static const struct drbg_kat_pr_true kat3720_t = { + 14, kat3720_entropyin, kat3720_nonce, kat3720_persstr, + kat3720_entropyinpr1, kat3720_addinpr1, kat3720_entropyinpr2, + kat3720_addinpr2, kat3720_retbits +}; +static const struct drbg_kat kat3720 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3720_t +}; + +static const unsigned char kat3721_entropyin[] = { + 0x1f, 0x44, 0xa9, 0x9b, 0xdc, 0x8e, 0x23, 0xa2, 0x73, 0x67, 0x71, 0x9a, + 0xa6, 0x18, 0x70, 0xa0, 0xd1, 0xfe, 0x73, 0xd5, 0x73, 0x43, 0x41, 0x34, + 0x92, 0xfc, 0x8b, 0x15, 0xef, 0x91, 0x7c, 0xc7, +}; +static const unsigned char kat3721_nonce[] = {0}; +static const unsigned char kat3721_persstr[] = {0}; +static const unsigned char kat3721_entropyinpr1[] = { + 0x22, 0xc7, 0x2e, 0xc1, 0x27, 0xc3, 0x05, 0x9f, 0x6e, 0x9a, 0xb0, 0x9a, + 0x7b, 0x21, 0xa7, 0x2e, 0xc1, 0x1f, 0x71, 0x60, 0x98, 0x70, 0xfa, 0x76, + 0x4a, 0x0b, 0xb9, 0xb1, 0x8b, 0x4e, 0xe0, 0xbf, +}; +static const unsigned char kat3721_addinpr1[] = {0}; +static const unsigned char kat3721_entropyinpr2[] = { + 0xbb, 0x50, 0x59, 0x26, 0xd5, 0x82, 0xf6, 0x98, 0x43, 0x0e, 0xbf, 0x1b, + 0x22, 0x20, 0x6c, 0xb7, 0x7b, 0xa0, 0xff, 0xc9, 0x6a, 0x77, 0x12, 0x97, + 0x09, 0xff, 0x99, 0xe7, 0xf7, 0x31, 0xa2, 0x0a, +}; +static const unsigned char kat3721_addinpr2[] = {0}; +static const unsigned char kat3721_retbits[] = { + 0x7b, 0x5a, 0x20, 0x1a, 0xa4, 0xb7, 0x95, 0x0b, 0xc2, 0x08, 0x1f, 0x27, + 0x7e, 0x7a, 0xec, 0xe3, 0xb1, 0x9c, 0x74, 0xae, 0xe3, 0x4f, 0x19, 0x2f, + 0xeb, 0x0b, 0x05, 0x77, 0x70, 0xe1, 0x2e, 0x9f, 0x55, 0x1e, 0x3e, 0x31, + 0x0a, 0x6c, 0x73, 0x92, 0xe9, 0x8e, 0xe5, 0xd4, 0xd2, 0x4e, 0x1d, 0xa9, + 0x6d, 0xe2, 0xb2, 0xc6, 0x40, 0xc8, 0x63, 0xda, 0x9e, 0x97, 0x1c, 0xd3, + 0x15, 0x61, 0xb0, 0xa8, +}; +static const struct drbg_kat_pr_true kat3721_t = { + 0, kat3721_entropyin, kat3721_nonce, kat3721_persstr, + kat3721_entropyinpr1, kat3721_addinpr1, kat3721_entropyinpr2, + kat3721_addinpr2, kat3721_retbits +}; +static const struct drbg_kat kat3721 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3721_t +}; + +static const unsigned char kat3722_entropyin[] = { + 0xb0, 0x4d, 0x2c, 0xb8, 0x99, 0xec, 0x91, 0x5d, 0x83, 0xb5, 0x28, 0x56, + 0x6b, 0x49, 0xa0, 0x9a, 0x00, 0xe7, 0x58, 0x02, 0xd3, 0x97, 0x83, 0xae, + 0x2a, 0xfa, 0x8d, 0xb5, 0x8c, 0x7b, 0x8f, 0x81, +}; +static const unsigned char kat3722_nonce[] = {0}; +static const unsigned char kat3722_persstr[] = {0}; +static const unsigned char kat3722_entropyinpr1[] = { + 0xbf, 0xd5, 0x8c, 0x5e, 0x21, 0xbd, 0x56, 0xda, 0x4d, 0x65, 0x52, 0x96, + 0x0b, 0x76, 0xb4, 0xaa, 0x7c, 0x9c, 0x66, 0xc9, 0xa2, 0x38, 0x2d, 0xab, + 0x79, 0x9a, 0xe5, 0x56, 0x9e, 0x01, 0xff, 0xd3, +}; +static const unsigned char kat3722_addinpr1[] = {0}; +static const unsigned char kat3722_entropyinpr2[] = { + 0x0c, 0x70, 0x5b, 0x94, 0xf2, 0x06, 0x5e, 0x4b, 0x2f, 0x63, 0x7a, 0x2d, + 0xc9, 0xb7, 0xed, 0x01, 0x57, 0xf9, 0xe0, 0x72, 0x2a, 0xa9, 0xe8, 0x3e, + 0x8a, 0xa1, 0x3b, 0xb6, 0x51, 0x0b, 0x8e, 0x58, +}; +static const unsigned char kat3722_addinpr2[] = {0}; +static const unsigned char kat3722_retbits[] = { + 0xdd, 0xd0, 0x9f, 0x4c, 0x9e, 0x93, 0xca, 0x2d, 0x2b, 0xb7, 0xd4, 0x36, + 0x6b, 0x0a, 0x6f, 0xbf, 0x72, 0x2d, 0xac, 0xdf, 0x5d, 0x59, 0x15, 0x2a, + 0xd1, 0xd5, 0x5f, 0x33, 0x91, 0x1c, 0x52, 0x13, 0x4e, 0xab, 0x81, 0xf6, + 0x4e, 0x5b, 0xf4, 0xa0, 0x86, 0x1c, 0xfe, 0xbc, 0xcd, 0xee, 0x0a, 0x74, + 0x04, 0xb3, 0x27, 0x99, 0xf8, 0x6a, 0xef, 0x63, 0xb2, 0x95, 0xd0, 0xe6, + 0xd9, 0xef, 0x4a, 0xdc, +}; +static const struct drbg_kat_pr_true kat3722_t = { + 1, kat3722_entropyin, kat3722_nonce, kat3722_persstr, + kat3722_entropyinpr1, kat3722_addinpr1, kat3722_entropyinpr2, + kat3722_addinpr2, kat3722_retbits +}; +static const struct drbg_kat kat3722 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3722_t +}; + +static const unsigned char kat3723_entropyin[] = { + 0x05, 0x6d, 0xf1, 0x8d, 0x2e, 0x8b, 0xf1, 0x7a, 0xef, 0x52, 0xf6, 0x08, + 0x24, 0xd5, 0x3b, 0xe5, 0x49, 0x3a, 0x0e, 0xbf, 0xb3, 0x14, 0x36, 0x36, + 0xb0, 0xb3, 0xf0, 0x66, 0xc7, 0x81, 0x1f, 0x0a, +}; +static const unsigned char kat3723_nonce[] = {0}; +static const unsigned char kat3723_persstr[] = {0}; +static const unsigned char kat3723_entropyinpr1[] = { + 0xb6, 0x3e, 0x45, 0x14, 0x8c, 0x28, 0x59, 0xde, 0x11, 0x9f, 0xc8, 0x31, + 0xfd, 0x26, 0x51, 0x64, 0x30, 0x2e, 0x8c, 0x5e, 0x23, 0x0f, 0x26, 0xa7, + 0x1e, 0x02, 0x10, 0xae, 0x57, 0x96, 0xf7, 0x9d, +}; +static const unsigned char kat3723_addinpr1[] = {0}; +static const unsigned char kat3723_entropyinpr2[] = { + 0xba, 0x82, 0xed, 0x1e, 0x95, 0x90, 0xcc, 0x53, 0x09, 0x32, 0x8f, 0xc5, + 0x1f, 0x92, 0xf2, 0xdc, 0xaa, 0xe2, 0xe3, 0x20, 0x22, 0x72, 0x65, 0xe6, + 0x3b, 0xe8, 0x19, 0x03, 0xb1, 0x76, 0x6b, 0x53, +}; +static const unsigned char kat3723_addinpr2[] = {0}; +static const unsigned char kat3723_retbits[] = { + 0xa3, 0x81, 0xd0, 0x6d, 0x00, 0xc9, 0xda, 0x58, 0xf4, 0x84, 0xc9, 0xcf, + 0xf8, 0xdf, 0xad, 0x4c, 0xd8, 0x51, 0x23, 0x94, 0xdd, 0x6e, 0x96, 0x04, + 0xbb, 0x76, 0x3b, 0xda, 0x89, 0x60, 0x59, 0x4f, 0x34, 0x4c, 0x55, 0x73, + 0x2f, 0xbc, 0x37, 0x6e, 0x6e, 0x34, 0xf6, 0x49, 0xab, 0xcd, 0xaf, 0x82, + 0x1e, 0x76, 0xd1, 0xde, 0x9f, 0xfc, 0xd6, 0x0b, 0x6a, 0x19, 0x17, 0xbe, + 0x5a, 0xdd, 0x1c, 0x07, +}; +static const struct drbg_kat_pr_true kat3723_t = { + 2, kat3723_entropyin, kat3723_nonce, kat3723_persstr, + kat3723_entropyinpr1, kat3723_addinpr1, kat3723_entropyinpr2, + kat3723_addinpr2, kat3723_retbits +}; +static const struct drbg_kat kat3723 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3723_t +}; + +static const unsigned char kat3724_entropyin[] = { + 0x51, 0x98, 0x97, 0x56, 0xb7, 0xd9, 0xbc, 0x1d, 0x18, 0x27, 0x4c, 0xe4, + 0xff, 0x80, 0x22, 0xf0, 0x22, 0x1b, 0xc6, 0xf6, 0x96, 0xfb, 0x6c, 0x2e, + 0x36, 0x76, 0xeb, 0x7e, 0x0b, 0x28, 0x04, 0x8b, +}; +static const unsigned char kat3724_nonce[] = {0}; +static const unsigned char kat3724_persstr[] = {0}; +static const unsigned char kat3724_entropyinpr1[] = { + 0x50, 0x02, 0x5b, 0x1a, 0xba, 0xc5, 0x8e, 0x63, 0x66, 0xe3, 0xc5, 0xf5, + 0xc4, 0xf3, 0xe0, 0x6d, 0x31, 0xc6, 0x85, 0xd7, 0xe4, 0xe0, 0x31, 0xb9, + 0x73, 0x6a, 0x27, 0x2c, 0x08, 0x5f, 0x98, 0xe4, +}; +static const unsigned char kat3724_addinpr1[] = {0}; +static const unsigned char kat3724_entropyinpr2[] = { + 0xf7, 0x57, 0xba, 0xdd, 0x45, 0x42, 0x53, 0xdc, 0x84, 0x07, 0x4f, 0xf9, + 0xc5, 0xb3, 0x45, 0x36, 0x5a, 0x24, 0xe5, 0xf8, 0x37, 0x0e, 0x3d, 0xee, + 0x1c, 0x4c, 0x69, 0x6c, 0x71, 0x98, 0x2d, 0x74, +}; +static const unsigned char kat3724_addinpr2[] = {0}; +static const unsigned char kat3724_retbits[] = { + 0xd6, 0x0a, 0xcb, 0xe5, 0x7e, 0x4a, 0x44, 0xdc, 0x5d, 0x8d, 0xc3, 0x1e, + 0xc2, 0x82, 0x15, 0x01, 0x37, 0xca, 0x3d, 0xd5, 0xa9, 0xde, 0x0f, 0x39, + 0x79, 0x89, 0x72, 0x26, 0x2a, 0x6b, 0x69, 0x1f, 0x48, 0x5b, 0x44, 0xd5, + 0x53, 0xa7, 0x95, 0x59, 0x3e, 0xb1, 0x78, 0x6e, 0xa1, 0x01, 0xeb, 0x0d, + 0x71, 0x6e, 0x95, 0x5a, 0x2d, 0xe2, 0x6f, 0x14, 0x8b, 0x64, 0x0d, 0xef, + 0x80, 0xba, 0x38, 0xc5, +}; +static const struct drbg_kat_pr_true kat3724_t = { + 3, kat3724_entropyin, kat3724_nonce, kat3724_persstr, + kat3724_entropyinpr1, kat3724_addinpr1, kat3724_entropyinpr2, + kat3724_addinpr2, kat3724_retbits +}; +static const struct drbg_kat kat3724 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3724_t +}; + +static const unsigned char kat3725_entropyin[] = { + 0x7c, 0xfc, 0x70, 0xa8, 0x91, 0x6d, 0xf2, 0xea, 0x28, 0x5b, 0xf1, 0x08, + 0x2b, 0x37, 0x12, 0x99, 0xd0, 0x12, 0xf2, 0x99, 0x03, 0x68, 0x25, 0x40, + 0x1b, 0x69, 0x28, 0x87, 0x69, 0x18, 0x98, 0x24, +}; +static const unsigned char kat3725_nonce[] = {0}; +static const unsigned char kat3725_persstr[] = {0}; +static const unsigned char kat3725_entropyinpr1[] = { + 0x95, 0x92, 0x75, 0xa7, 0x19, 0x9e, 0xb2, 0x1b, 0x6e, 0x31, 0xdf, 0x76, + 0x38, 0x00, 0x2b, 0x2d, 0x9a, 0x8b, 0xf5, 0x90, 0xfd, 0x81, 0x75, 0xf3, + 0x53, 0x18, 0x59, 0x43, 0x16, 0xb4, 0xa3, 0xff, +}; +static const unsigned char kat3725_addinpr1[] = {0}; +static const unsigned char kat3725_entropyinpr2[] = { + 0xd9, 0x00, 0x0f, 0x75, 0xba, 0xb8, 0x91, 0xfa, 0x4a, 0xa6, 0x64, 0x7f, + 0x93, 0xf6, 0x62, 0x51, 0xfb, 0x98, 0x23, 0x16, 0x49, 0xe2, 0x34, 0xde, + 0x32, 0xe7, 0x57, 0x5a, 0xed, 0x00, 0x8b, 0x47, +}; +static const unsigned char kat3725_addinpr2[] = {0}; +static const unsigned char kat3725_retbits[] = { + 0x06, 0xd9, 0x1a, 0xed, 0xd2, 0x8f, 0xc5, 0xde, 0x08, 0xc7, 0x27, 0xde, + 0xcf, 0x85, 0xa0, 0x8e, 0xf5, 0x6f, 0x02, 0xc7, 0x6b, 0x37, 0x6e, 0x27, + 0xbc, 0x47, 0x73, 0x5b, 0x58, 0x81, 0x9d, 0x90, 0xa7, 0x95, 0x7f, 0x75, + 0x4c, 0x29, 0x5c, 0xfd, 0x9e, 0xe6, 0x17, 0xda, 0x44, 0x7b, 0xc3, 0x53, + 0xe4, 0x2a, 0x92, 0x46, 0xda, 0x3f, 0xf3, 0xa8, 0xb0, 0x8c, 0xa3, 0x38, + 0xbc, 0x40, 0x9f, 0xae, +}; +static const struct drbg_kat_pr_true kat3725_t = { + 4, kat3725_entropyin, kat3725_nonce, kat3725_persstr, + kat3725_entropyinpr1, kat3725_addinpr1, kat3725_entropyinpr2, + kat3725_addinpr2, kat3725_retbits +}; +static const struct drbg_kat kat3725 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3725_t +}; + +static const unsigned char kat3726_entropyin[] = { + 0x36, 0x6a, 0x1d, 0x80, 0xe7, 0xe5, 0x4e, 0x84, 0x91, 0x59, 0x90, 0x35, + 0xe8, 0x54, 0x3e, 0x04, 0x8f, 0x98, 0x26, 0xd8, 0xb5, 0x41, 0xa0, 0x67, + 0x76, 0xf9, 0x26, 0x37, 0x9b, 0x0e, 0x13, 0x7b, +}; +static const unsigned char kat3726_nonce[] = {0}; +static const unsigned char kat3726_persstr[] = {0}; +static const unsigned char kat3726_entropyinpr1[] = { + 0x44, 0x75, 0x26, 0x69, 0x4c, 0x6e, 0x18, 0xaf, 0xdf, 0xa6, 0x3b, 0xf2, + 0x24, 0x74, 0xf4, 0xc3, 0x43, 0x3d, 0x00, 0x48, 0x8f, 0x8c, 0x0c, 0x83, + 0xe4, 0xbf, 0x3a, 0x0a, 0xed, 0xd2, 0x0a, 0x56, +}; +static const unsigned char kat3726_addinpr1[] = {0}; +static const unsigned char kat3726_entropyinpr2[] = { + 0xc3, 0x2b, 0x6c, 0xcb, 0xee, 0xc2, 0xb1, 0xf8, 0x4d, 0x52, 0xe8, 0xb9, + 0x18, 0x6c, 0x6b, 0x25, 0xce, 0xac, 0x8b, 0x24, 0x0a, 0x35, 0x5e, 0xb2, + 0xbc, 0xd0, 0x07, 0x62, 0x99, 0x52, 0x3d, 0x0f, +}; +static const unsigned char kat3726_addinpr2[] = {0}; +static const unsigned char kat3726_retbits[] = { + 0xd5, 0x16, 0x90, 0x0e, 0x90, 0xf7, 0xbf, 0x7f, 0x07, 0xc7, 0xc9, 0xc5, + 0x33, 0xf3, 0x50, 0x67, 0x2d, 0x8a, 0x8f, 0xdf, 0x15, 0x0b, 0x37, 0x00, + 0xe6, 0x40, 0x87, 0x33, 0x98, 0x29, 0xb2, 0xcc, 0x76, 0x4d, 0xe7, 0x91, + 0x65, 0xc8, 0xce, 0x3c, 0xf7, 0x82, 0xdc, 0x72, 0xce, 0x5a, 0xdb, 0xb7, + 0x16, 0xf6, 0x9d, 0x39, 0x47, 0xe4, 0x7d, 0x0b, 0x0f, 0x47, 0x3d, 0x34, + 0x50, 0x60, 0x62, 0xde, +}; +static const struct drbg_kat_pr_true kat3726_t = { + 5, kat3726_entropyin, kat3726_nonce, kat3726_persstr, + kat3726_entropyinpr1, kat3726_addinpr1, kat3726_entropyinpr2, + kat3726_addinpr2, kat3726_retbits +}; +static const struct drbg_kat kat3726 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3726_t +}; + +static const unsigned char kat3727_entropyin[] = { + 0x26, 0xf1, 0x9a, 0x88, 0x23, 0x9e, 0x0a, 0xe8, 0xb2, 0xfd, 0xa7, 0x46, + 0x5b, 0x72, 0x10, 0xdd, 0xf2, 0xc6, 0x33, 0x46, 0xff, 0x4c, 0x00, 0xcf, + 0x5f, 0xdf, 0xc5, 0x6d, 0x99, 0xac, 0xd3, 0xdd, +}; +static const unsigned char kat3727_nonce[] = {0}; +static const unsigned char kat3727_persstr[] = {0}; +static const unsigned char kat3727_entropyinpr1[] = { + 0x44, 0x8b, 0x93, 0x41, 0xb1, 0x9d, 0x26, 0xab, 0x46, 0x6f, 0x90, 0x5b, + 0x58, 0x9d, 0xf1, 0x94, 0x7f, 0x9c, 0xd3, 0xe3, 0x97, 0x99, 0x8f, 0x5b, + 0xd0, 0x36, 0xa3, 0xae, 0x39, 0x5b, 0xba, 0xaa, +}; +static const unsigned char kat3727_addinpr1[] = {0}; +static const unsigned char kat3727_entropyinpr2[] = { + 0x53, 0x2f, 0x6b, 0x54, 0x91, 0x1c, 0x10, 0x2d, 0xed, 0xf4, 0x76, 0x55, + 0xb1, 0x73, 0x4e, 0x52, 0xd4, 0xae, 0x18, 0x06, 0x2c, 0x5b, 0x80, 0xc2, + 0x42, 0x30, 0xd9, 0x75, 0x5e, 0x1a, 0xb3, 0x96, +}; +static const unsigned char kat3727_addinpr2[] = {0}; +static const unsigned char kat3727_retbits[] = { + 0x48, 0x47, 0xfc, 0x50, 0x8e, 0x66, 0xba, 0x3f, 0x68, 0xec, 0xaa, 0x3f, + 0xc4, 0xb8, 0x7c, 0xb8, 0xbf, 0xc2, 0xd9, 0x30, 0xa0, 0xe5, 0x6f, 0x63, + 0x76, 0x7c, 0xcb, 0x4e, 0xf8, 0x9b, 0x80, 0xb3, 0x17, 0xf3, 0x3e, 0x46, + 0x5b, 0x2f, 0x39, 0x3c, 0xaa, 0x75, 0x85, 0x32, 0x74, 0xe0, 0x37, 0x7e, + 0x80, 0x2e, 0x1f, 0x8b, 0x55, 0xb3, 0x1e, 0x51, 0xd2, 0x23, 0x81, 0x93, + 0x54, 0x2f, 0x57, 0x88, +}; +static const struct drbg_kat_pr_true kat3727_t = { + 6, kat3727_entropyin, kat3727_nonce, kat3727_persstr, + kat3727_entropyinpr1, kat3727_addinpr1, kat3727_entropyinpr2, + kat3727_addinpr2, kat3727_retbits +}; +static const struct drbg_kat kat3727 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3727_t +}; + +static const unsigned char kat3728_entropyin[] = { + 0x7b, 0xc8, 0x57, 0xc7, 0x5c, 0x47, 0x75, 0x5c, 0x47, 0x1f, 0x70, 0x95, + 0xa2, 0xb2, 0x15, 0x75, 0xae, 0x21, 0x9a, 0x9d, 0xae, 0xa4, 0x2b, 0x9c, + 0x93, 0xea, 0x83, 0x55, 0x4c, 0x92, 0xb7, 0xd0, +}; +static const unsigned char kat3728_nonce[] = {0}; +static const unsigned char kat3728_persstr[] = {0}; +static const unsigned char kat3728_entropyinpr1[] = { + 0xaf, 0x7e, 0xe8, 0x26, 0xf8, 0x9d, 0xdc, 0xb7, 0xc6, 0xab, 0xf6, 0x3b, + 0x50, 0xe7, 0xac, 0x3d, 0xe0, 0x64, 0xa4, 0xab, 0x65, 0x58, 0x3c, 0x47, + 0x06, 0x0e, 0x3e, 0xab, 0xb7, 0x0c, 0x2c, 0xf1, +}; +static const unsigned char kat3728_addinpr1[] = {0}; +static const unsigned char kat3728_entropyinpr2[] = { + 0x64, 0x57, 0x68, 0xbc, 0x93, 0x61, 0x90, 0x8b, 0x16, 0x16, 0x17, 0xf0, + 0x43, 0x09, 0x17, 0xbd, 0x5c, 0x26, 0x57, 0xf2, 0x96, 0x8b, 0x9a, 0x49, + 0xe1, 0x76, 0x69, 0x53, 0x8e, 0x37, 0x25, 0xa4, +}; +static const unsigned char kat3728_addinpr2[] = {0}; +static const unsigned char kat3728_retbits[] = { + 0x57, 0xb6, 0x14, 0x4f, 0x77, 0x3f, 0xed, 0xc6, 0x8f, 0x2c, 0x91, 0xd7, + 0x4a, 0x66, 0x63, 0x38, 0x4b, 0x64, 0xba, 0x9d, 0x87, 0xe4, 0x9a, 0xca, + 0xa9, 0x28, 0xcb, 0x57, 0x16, 0x56, 0xfb, 0xde, 0xb1, 0xfd, 0xdd, 0xf6, + 0x00, 0xd5, 0xab, 0xcb, 0x5c, 0x05, 0x80, 0xff, 0x8b, 0x84, 0xa7, 0x99, + 0x2b, 0xf9, 0x18, 0xb9, 0x01, 0xda, 0xa2, 0x14, 0x8c, 0xe9, 0x91, 0xd4, + 0xdb, 0xad, 0xf0, 0x09, +}; +static const struct drbg_kat_pr_true kat3728_t = { + 7, kat3728_entropyin, kat3728_nonce, kat3728_persstr, + kat3728_entropyinpr1, kat3728_addinpr1, kat3728_entropyinpr2, + kat3728_addinpr2, kat3728_retbits +}; +static const struct drbg_kat kat3728 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3728_t +}; + +static const unsigned char kat3729_entropyin[] = { + 0x8e, 0xdb, 0x1b, 0x84, 0x73, 0x5c, 0x84, 0x0f, 0x96, 0x15, 0x55, 0xa7, + 0x1b, 0x2a, 0x0c, 0x4d, 0xa7, 0xd4, 0xdb, 0x99, 0x06, 0xdb, 0xbb, 0xa2, + 0x08, 0x24, 0x54, 0xbd, 0x6b, 0xe0, 0xc5, 0x34, +}; +static const unsigned char kat3729_nonce[] = {0}; +static const unsigned char kat3729_persstr[] = {0}; +static const unsigned char kat3729_entropyinpr1[] = { + 0x50, 0x6a, 0xf2, 0x42, 0xe6, 0x8c, 0x48, 0x92, 0x72, 0xf5, 0x67, 0xb2, + 0x49, 0xa4, 0x7d, 0xcf, 0x73, 0xf2, 0xf6, 0x47, 0x94, 0x3c, 0xd3, 0xb4, + 0x7e, 0x5a, 0xad, 0xe3, 0x41, 0xe4, 0x1e, 0xee, +}; +static const unsigned char kat3729_addinpr1[] = {0}; +static const unsigned char kat3729_entropyinpr2[] = { + 0x09, 0xa2, 0x21, 0xe9, 0xee, 0x13, 0x9b, 0x0c, 0xee, 0x12, 0x46, 0x45, + 0x87, 0x92, 0x85, 0xdc, 0x29, 0x86, 0x25, 0x40, 0x93, 0x82, 0x0c, 0xb2, + 0x2f, 0x77, 0x1d, 0xe2, 0x59, 0x8f, 0x65, 0xc1, +}; +static const unsigned char kat3729_addinpr2[] = {0}; +static const unsigned char kat3729_retbits[] = { + 0x79, 0x66, 0x25, 0x92, 0x55, 0xc3, 0xc6, 0xcf, 0xb7, 0x08, 0x48, 0xc9, + 0x06, 0xf4, 0x44, 0x6d, 0x6d, 0x0d, 0xe8, 0x57, 0xd7, 0xc0, 0x6b, 0x81, + 0xdf, 0x6c, 0xbb, 0xcc, 0x45, 0xfc, 0x9e, 0xce, 0xc5, 0x8e, 0x68, 0x9c, + 0x7a, 0x88, 0x30, 0xe3, 0xd4, 0x56, 0x20, 0xbf, 0xb8, 0x4f, 0x1e, 0x76, + 0xbe, 0x29, 0x2a, 0x26, 0xb9, 0x09, 0xe5, 0xdf, 0xc3, 0x80, 0xc1, 0xb8, + 0xd7, 0x2d, 0x9a, 0x78, +}; +static const struct drbg_kat_pr_true kat3729_t = { + 8, kat3729_entropyin, kat3729_nonce, kat3729_persstr, + kat3729_entropyinpr1, kat3729_addinpr1, kat3729_entropyinpr2, + kat3729_addinpr2, kat3729_retbits +}; +static const struct drbg_kat kat3729 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3729_t +}; + +static const unsigned char kat3730_entropyin[] = { + 0xa8, 0x44, 0x0d, 0xc1, 0x4f, 0x68, 0x7f, 0x7d, 0x0a, 0xfc, 0x13, 0x11, + 0x52, 0x69, 0x26, 0xc6, 0x70, 0x7d, 0x05, 0xc3, 0xf1, 0xc6, 0x9d, 0xad, + 0x19, 0x99, 0xa6, 0x84, 0x20, 0x88, 0x74, 0xf1, +}; +static const unsigned char kat3730_nonce[] = {0}; +static const unsigned char kat3730_persstr[] = {0}; +static const unsigned char kat3730_entropyinpr1[] = { + 0x41, 0x65, 0x82, 0xe4, 0x49, 0x6b, 0x0b, 0x3c, 0x9e, 0xc4, 0x40, 0x82, + 0x71, 0x5c, 0x38, 0x91, 0x38, 0x18, 0x73, 0xdd, 0x73, 0xff, 0x04, 0x90, + 0x98, 0x7d, 0xe1, 0x7e, 0x0f, 0xf5, 0x88, 0x8a, +}; +static const unsigned char kat3730_addinpr1[] = {0}; +static const unsigned char kat3730_entropyinpr2[] = { + 0x3f, 0xa9, 0xfe, 0x9a, 0xf5, 0x6a, 0xbb, 0x65, 0x19, 0xb6, 0xe2, 0x2e, + 0x76, 0x37, 0x46, 0xf6, 0x3d, 0xaa, 0xf2, 0x21, 0x33, 0xf7, 0x34, 0xc7, + 0xc4, 0x5d, 0xfc, 0x46, 0x40, 0xf1, 0x0c, 0x86, +}; +static const unsigned char kat3730_addinpr2[] = {0}; +static const unsigned char kat3730_retbits[] = { + 0xcb, 0x61, 0xfa, 0xa4, 0x9f, 0x18, 0x22, 0x0a, 0xed, 0xbb, 0x5e, 0x1c, + 0xc4, 0x69, 0xc5, 0xe1, 0xd3, 0x8f, 0xdc, 0x4a, 0xe6, 0xdc, 0x73, 0x33, + 0x0d, 0xde, 0x98, 0xa2, 0x7c, 0x32, 0xd1, 0x08, 0x03, 0x96, 0x92, 0xe5, + 0x91, 0x0b, 0x42, 0x0a, 0x8f, 0x4a, 0x46, 0x70, 0x39, 0x85, 0x66, 0x20, + 0x88, 0x73, 0xd3, 0x50, 0x11, 0x85, 0x4f, 0x29, 0x24, 0x33, 0x93, 0xb0, + 0x48, 0xc7, 0x02, 0x2f, +}; +static const struct drbg_kat_pr_true kat3730_t = { + 9, kat3730_entropyin, kat3730_nonce, kat3730_persstr, + kat3730_entropyinpr1, kat3730_addinpr1, kat3730_entropyinpr2, + kat3730_addinpr2, kat3730_retbits +}; +static const struct drbg_kat kat3730 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3730_t +}; + +static const unsigned char kat3731_entropyin[] = { + 0xbf, 0xf9, 0x91, 0x1a, 0x1b, 0xf3, 0xda, 0x59, 0xdc, 0x92, 0x80, 0xf6, + 0x3b, 0x34, 0x9e, 0xd0, 0x8b, 0xc4, 0x57, 0x49, 0x67, 0xff, 0x2e, 0xfb, + 0x50, 0xe8, 0x84, 0xb7, 0x13, 0x5f, 0xfb, 0xdd, +}; +static const unsigned char kat3731_nonce[] = {0}; +static const unsigned char kat3731_persstr[] = {0}; +static const unsigned char kat3731_entropyinpr1[] = { + 0x01, 0x66, 0x8f, 0x77, 0xd0, 0xce, 0x93, 0x54, 0xeb, 0x59, 0x80, 0x4d, + 0x84, 0xee, 0xc2, 0xdd, 0x2c, 0xb6, 0xc3, 0x17, 0xe8, 0x8e, 0xe8, 0x31, + 0x93, 0x17, 0x24, 0xac, 0x15, 0xcf, 0xb2, 0xd0, +}; +static const unsigned char kat3731_addinpr1[] = {0}; +static const unsigned char kat3731_entropyinpr2[] = { + 0x3c, 0x31, 0x00, 0x55, 0x48, 0x89, 0x4b, 0x40, 0x85, 0x95, 0xcd, 0xc4, + 0x3a, 0x2c, 0x7e, 0x97, 0x7b, 0x01, 0xb2, 0x24, 0x74, 0x6b, 0x29, 0xd6, + 0xa4, 0xab, 0xf6, 0xd3, 0x35, 0x9c, 0x58, 0x9e, +}; +static const unsigned char kat3731_addinpr2[] = {0}; +static const unsigned char kat3731_retbits[] = { + 0xc6, 0x16, 0xf4, 0x84, 0xc2, 0x34, 0xd9, 0x1a, 0xe9, 0x05, 0xa1, 0xfa, + 0xc3, 0x63, 0xa2, 0x30, 0x97, 0xbd, 0x70, 0x2c, 0x39, 0xee, 0x02, 0x69, + 0xef, 0xf4, 0x5c, 0x06, 0x86, 0x53, 0xe3, 0xf0, 0xe7, 0x22, 0xe6, 0x8f, + 0x2d, 0x2a, 0x98, 0xe7, 0x38, 0x43, 0xce, 0x6b, 0xcf, 0xcb, 0xc9, 0x87, + 0xb9, 0xfd, 0x3b, 0xd6, 0xd1, 0x94, 0xeb, 0xc4, 0x97, 0xa0, 0x95, 0xc9, + 0xb8, 0xbc, 0x75, 0x1b, +}; +static const struct drbg_kat_pr_true kat3731_t = { + 10, kat3731_entropyin, kat3731_nonce, kat3731_persstr, + kat3731_entropyinpr1, kat3731_addinpr1, kat3731_entropyinpr2, + kat3731_addinpr2, kat3731_retbits +}; +static const struct drbg_kat kat3731 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3731_t +}; + +static const unsigned char kat3732_entropyin[] = { + 0x03, 0xad, 0x0c, 0x92, 0x7e, 0x08, 0x07, 0x6b, 0x74, 0x9f, 0x3a, 0xab, + 0x7c, 0x1d, 0x3f, 0x32, 0xa7, 0x3e, 0x80, 0x01, 0xfd, 0xd4, 0x91, 0x9a, + 0xf3, 0xb7, 0x1d, 0xaf, 0x32, 0x7d, 0x36, 0xb4, +}; +static const unsigned char kat3732_nonce[] = {0}; +static const unsigned char kat3732_persstr[] = {0}; +static const unsigned char kat3732_entropyinpr1[] = { + 0x66, 0xdf, 0xb7, 0x9e, 0x77, 0xb1, 0x7e, 0xc9, 0x00, 0xfa, 0x00, 0xc3, + 0x49, 0x55, 0xe2, 0x4c, 0xff, 0x40, 0x39, 0xb3, 0xf5, 0x66, 0x2b, 0x3b, + 0x5c, 0xae, 0xc5, 0x4b, 0x40, 0x56, 0x7e, 0x30, +}; +static const unsigned char kat3732_addinpr1[] = {0}; +static const unsigned char kat3732_entropyinpr2[] = { + 0xe2, 0x99, 0xad, 0xc4, 0x8a, 0xf2, 0x8a, 0x46, 0x18, 0x16, 0x7c, 0x56, + 0xb6, 0xa7, 0xe9, 0x38, 0xe0, 0x55, 0xb8, 0xd7, 0x27, 0xd1, 0x37, 0x5d, + 0xf8, 0x25, 0xec, 0xac, 0xa0, 0xfd, 0x37, 0xea, +}; +static const unsigned char kat3732_addinpr2[] = {0}; +static const unsigned char kat3732_retbits[] = { + 0xe5, 0x52, 0xf5, 0xfb, 0x40, 0x94, 0x6c, 0x00, 0xa2, 0x76, 0x4a, 0x3f, + 0xf3, 0x9f, 0x58, 0x0c, 0xf9, 0x64, 0x59, 0xcb, 0xd1, 0xee, 0x39, 0x98, + 0x0b, 0xbd, 0x6a, 0x14, 0xd8, 0xc5, 0x2a, 0xdd, 0x51, 0xf8, 0xa6, 0x59, + 0xc0, 0xd0, 0x39, 0xfd, 0x44, 0xa6, 0xa0, 0xe1, 0xed, 0x1c, 0x89, 0x6b, + 0x65, 0xcf, 0xac, 0xdb, 0x87, 0x4c, 0x44, 0x28, 0x8a, 0xbb, 0x1a, 0x0b, + 0x0e, 0xe6, 0x90, 0xa9, +}; +static const struct drbg_kat_pr_true kat3732_t = { + 11, kat3732_entropyin, kat3732_nonce, kat3732_persstr, + kat3732_entropyinpr1, kat3732_addinpr1, kat3732_entropyinpr2, + kat3732_addinpr2, kat3732_retbits +}; +static const struct drbg_kat kat3732 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3732_t +}; + +static const unsigned char kat3733_entropyin[] = { + 0xe6, 0x0e, 0x54, 0xb0, 0x09, 0x50, 0xea, 0xb4, 0x1b, 0xe8, 0x41, 0x8a, + 0xbd, 0x2c, 0x1c, 0x0a, 0x9e, 0xb6, 0xe5, 0x37, 0xf4, 0x3a, 0xcb, 0xb1, + 0x23, 0x0c, 0xc5, 0x18, 0x6c, 0x8a, 0x01, 0x0f, +}; +static const unsigned char kat3733_nonce[] = {0}; +static const unsigned char kat3733_persstr[] = {0}; +static const unsigned char kat3733_entropyinpr1[] = { + 0xa4, 0x1a, 0x04, 0xe6, 0xda, 0x54, 0xf7, 0x70, 0x91, 0x79, 0xab, 0x4d, + 0x27, 0xbe, 0x59, 0x89, 0xb0, 0xe4, 0xd5, 0xee, 0xab, 0x65, 0x4f, 0x2a, + 0xf3, 0xdb, 0x31, 0x0c, 0x50, 0x13, 0x4d, 0x66, +}; +static const unsigned char kat3733_addinpr1[] = {0}; +static const unsigned char kat3733_entropyinpr2[] = { + 0xa1, 0xde, 0xbc, 0x18, 0xd1, 0x3f, 0x18, 0x6f, 0x93, 0xfd, 0x83, 0x1c, + 0x2d, 0x0b, 0xc0, 0xe6, 0x77, 0x6c, 0x17, 0xe6, 0x03, 0x81, 0xd6, 0xbf, + 0xbc, 0x6c, 0x21, 0x04, 0xb6, 0x30, 0xc1, 0xe2, +}; +static const unsigned char kat3733_addinpr2[] = {0}; +static const unsigned char kat3733_retbits[] = { + 0xf4, 0x3e, 0xf2, 0x61, 0xda, 0xc7, 0xc6, 0xa5, 0x6a, 0x4f, 0x9f, 0xba, + 0xad, 0x1b, 0x90, 0xcb, 0xbd, 0x0e, 0x7f, 0x26, 0x0d, 0x34, 0xc1, 0xb0, + 0x7b, 0x90, 0x1e, 0x17, 0x97, 0x14, 0x14, 0x24, 0xc5, 0x37, 0xa4, 0x6f, + 0xc4, 0x11, 0x4f, 0x9e, 0x19, 0x4d, 0x5b, 0xbd, 0x70, 0x7d, 0x54, 0xfd, + 0xac, 0xdc, 0xb0, 0x03, 0xc8, 0x54, 0xda, 0x17, 0xdb, 0x5e, 0x1e, 0x08, + 0x3e, 0x26, 0x06, 0xcb, +}; +static const struct drbg_kat_pr_true kat3733_t = { + 12, kat3733_entropyin, kat3733_nonce, kat3733_persstr, + kat3733_entropyinpr1, kat3733_addinpr1, kat3733_entropyinpr2, + kat3733_addinpr2, kat3733_retbits +}; +static const struct drbg_kat kat3733 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3733_t +}; + +static const unsigned char kat3734_entropyin[] = { + 0xa8, 0x42, 0x70, 0x59, 0x21, 0xd7, 0x44, 0xbb, 0xe5, 0xe4, 0x00, 0xad, + 0x5f, 0x32, 0xcb, 0xe6, 0x88, 0xd0, 0xa1, 0x74, 0x21, 0xab, 0x4f, 0x39, + 0xe9, 0x5c, 0x7d, 0x3e, 0xc5, 0x9d, 0xb7, 0x79, +}; +static const unsigned char kat3734_nonce[] = {0}; +static const unsigned char kat3734_persstr[] = {0}; +static const unsigned char kat3734_entropyinpr1[] = { + 0xed, 0xbd, 0x73, 0x30, 0x27, 0xa5, 0x53, 0x2f, 0xb7, 0x3a, 0xd1, 0x69, + 0x4c, 0xd2, 0x3a, 0x5b, 0x6c, 0x66, 0xd4, 0x43, 0x4e, 0x3d, 0x42, 0xb7, + 0x7a, 0x70, 0x12, 0xe3, 0x5e, 0x8a, 0xb6, 0xc8, +}; +static const unsigned char kat3734_addinpr1[] = {0}; +static const unsigned char kat3734_entropyinpr2[] = { + 0xd6, 0x48, 0xcf, 0x8f, 0xd4, 0xde, 0xe8, 0xe5, 0x35, 0x34, 0x1e, 0xaf, + 0x28, 0x00, 0x2a, 0x90, 0x0c, 0x17, 0x4c, 0xe7, 0x5f, 0x18, 0x5f, 0xb7, + 0xb8, 0x23, 0x4a, 0x23, 0xe9, 0xd8, 0xb6, 0xab, +}; +static const unsigned char kat3734_addinpr2[] = {0}; +static const unsigned char kat3734_retbits[] = { + 0x27, 0xaa, 0xaf, 0x1f, 0x30, 0x09, 0x8b, 0xa0, 0x3b, 0x49, 0xe1, 0xe0, + 0x5c, 0xdf, 0x88, 0x8d, 0x2f, 0xa5, 0x3d, 0x1a, 0x99, 0xdd, 0xb6, 0xeb, + 0x67, 0xf2, 0x98, 0x50, 0xae, 0x7c, 0xd9, 0x8b, 0x8f, 0x0e, 0xc2, 0xef, + 0x55, 0xc6, 0x53, 0x66, 0xbb, 0x58, 0xab, 0xc1, 0xcb, 0xd4, 0x5c, 0x0d, + 0xe4, 0x06, 0x9b, 0xe0, 0x8e, 0xe7, 0xea, 0xb0, 0x9f, 0x9b, 0xa6, 0x67, + 0x20, 0x26, 0x64, 0xcd, +}; +static const struct drbg_kat_pr_true kat3734_t = { + 13, kat3734_entropyin, kat3734_nonce, kat3734_persstr, + kat3734_entropyinpr1, kat3734_addinpr1, kat3734_entropyinpr2, + kat3734_addinpr2, kat3734_retbits +}; +static const struct drbg_kat kat3734 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3734_t +}; + +static const unsigned char kat3735_entropyin[] = { + 0xfc, 0x23, 0x12, 0xb8, 0xc8, 0x69, 0x93, 0xc0, 0x59, 0xea, 0xe3, 0xe1, + 0x17, 0x3c, 0x47, 0xf9, 0x65, 0xbc, 0xef, 0xce, 0x43, 0x8f, 0x95, 0xbe, + 0x59, 0xe6, 0x6b, 0xa8, 0xda, 0x67, 0xa5, 0x80, +}; +static const unsigned char kat3735_nonce[] = {0}; +static const unsigned char kat3735_persstr[] = {0}; +static const unsigned char kat3735_entropyinpr1[] = { + 0x25, 0xae, 0xb7, 0x3b, 0xc0, 0x41, 0x39, 0xa6, 0x47, 0xb6, 0x0a, 0x0e, + 0x50, 0x6d, 0xb2, 0x10, 0x95, 0x81, 0xf5, 0x8b, 0x70, 0x4f, 0x00, 0x88, + 0x97, 0xcc, 0xb2, 0xba, 0x12, 0xe0, 0x7a, 0xb7, +}; +static const unsigned char kat3735_addinpr1[] = {0}; +static const unsigned char kat3735_entropyinpr2[] = { + 0xa2, 0xe5, 0x83, 0x9c, 0x59, 0xfc, 0x25, 0x55, 0x76, 0xa2, 0xfd, 0x46, + 0x2c, 0x71, 0x98, 0x95, 0x31, 0x4a, 0x03, 0x38, 0x23, 0xf1, 0x1f, 0x41, + 0x94, 0x46, 0xd0, 0x27, 0x02, 0xbf, 0x00, 0x4f, +}; +static const unsigned char kat3735_addinpr2[] = {0}; +static const unsigned char kat3735_retbits[] = { + 0xfb, 0x83, 0x3a, 0x40, 0xa6, 0x58, 0x21, 0x7a, 0xd7, 0x53, 0x91, 0xaa, + 0x83, 0x11, 0xb3, 0xe8, 0x72, 0xbb, 0xc2, 0xe1, 0xcb, 0x15, 0x0d, 0xa8, + 0x7c, 0xc6, 0xe3, 0x49, 0x44, 0x23, 0xc5, 0xa9, 0x92, 0x59, 0x3b, 0x68, + 0xf6, 0x09, 0xd3, 0x03, 0x87, 0xa0, 0x38, 0x4f, 0x64, 0x07, 0x92, 0x36, + 0xa1, 0x03, 0x89, 0x69, 0xd0, 0x11, 0xbe, 0xa6, 0xf8, 0xad, 0xb0, 0x52, + 0xc5, 0xb5, 0x7e, 0xec, +}; +static const struct drbg_kat_pr_true kat3735_t = { + 14, kat3735_entropyin, kat3735_nonce, kat3735_persstr, + kat3735_entropyinpr1, kat3735_addinpr1, kat3735_entropyinpr2, + kat3735_addinpr2, kat3735_retbits +}; +static const struct drbg_kat kat3735 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3735_t +}; + +static const unsigned char kat3736_entropyin[] = { + 0x09, 0xb6, 0x20, 0x43, 0x61, 0x91, 0x8e, 0x4c, 0xd1, 0xb6, 0xf2, 0x7b, + 0x40, 0xf9, 0x35, 0x7c, 0x36, 0xb0, 0x75, 0x8b, 0x27, 0x76, 0x7e, 0xf0, + 0x91, 0x75, 0xc2, 0x71, 0x60, 0x10, 0x91, 0x65, +}; +static const unsigned char kat3736_nonce[] = {0}; +static const unsigned char kat3736_persstr[] = {0}; +static const unsigned char kat3736_entropyinpr1[] = { + 0xf4, 0xad, 0xb0, 0xdb, 0x65, 0xfd, 0xc5, 0xc6, 0xf7, 0x6f, 0x74, 0xa6, + 0x9e, 0x51, 0x5a, 0x59, 0x87, 0xfe, 0x38, 0xe4, 0x7e, 0xb6, 0x6f, 0xc4, + 0x58, 0x4e, 0x00, 0xf1, 0xf9, 0xf0, 0xfa, 0xd5, +}; +static const unsigned char kat3736_addinpr1[] = { + 0x08, 0x32, 0xb5, 0x36, 0xba, 0x54, 0xf1, 0xce, 0xe9, 0xb9, 0x9c, 0x97, + 0x01, 0x1e, 0xf4, 0xf7, 0x1c, 0xc0, 0x8e, 0xe1, 0x63, 0x6c, 0x5b, 0x78, + 0x15, 0x4b, 0x0e, 0x7f, 0x45, 0xdf, 0xd5, 0x24, +}; +static const unsigned char kat3736_entropyinpr2[] = { + 0xd0, 0xb4, 0x67, 0x4f, 0x63, 0x36, 0x24, 0xa9, 0x5e, 0x3f, 0x17, 0x20, + 0xc1, 0x23, 0xd4, 0xf6, 0x44, 0xb9, 0x0c, 0x5a, 0x18, 0xc9, 0x70, 0xa0, + 0x2b, 0x7c, 0x4e, 0x5c, 0xb0, 0x96, 0xdb, 0x56, +}; +static const unsigned char kat3736_addinpr2[] = { + 0x46, 0xf8, 0x22, 0x20, 0x26, 0xc4, 0x59, 0xe2, 0x50, 0x2d, 0x54, 0x7f, + 0x77, 0x65, 0x43, 0xb3, 0x7f, 0xab, 0xb2, 0x75, 0x04, 0x0f, 0x9e, 0xee, + 0x16, 0xce, 0xdf, 0x27, 0xa6, 0xba, 0x95, 0xa4, +}; +static const unsigned char kat3736_retbits[] = { + 0x8b, 0x5b, 0xbb, 0x02, 0x7d, 0x26, 0xd0, 0xa2, 0xe5, 0xc9, 0x79, 0x04, + 0x5e, 0x7b, 0x38, 0x27, 0xdb, 0xae, 0x3a, 0x36, 0xce, 0x15, 0x84, 0x43, + 0xe7, 0x43, 0x28, 0x37, 0x18, 0x7f, 0xe2, 0xb1, 0x4f, 0xde, 0xab, 0x24, + 0x71, 0xf1, 0x03, 0x70, 0x72, 0xdd, 0x52, 0x78, 0xd7, 0x64, 0x66, 0x81, + 0x22, 0x5a, 0xdc, 0x18, 0x8d, 0x3c, 0xc9, 0xbc, 0x22, 0xe8, 0xc3, 0xd2, + 0x73, 0x3c, 0xd0, 0x7f, +}; +static const struct drbg_kat_pr_true kat3736_t = { + 0, kat3736_entropyin, kat3736_nonce, kat3736_persstr, + kat3736_entropyinpr1, kat3736_addinpr1, kat3736_entropyinpr2, + kat3736_addinpr2, kat3736_retbits +}; +static const struct drbg_kat kat3736 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3736_t +}; + +static const unsigned char kat3737_entropyin[] = { + 0x18, 0x16, 0x68, 0x7a, 0x8f, 0x0e, 0x84, 0xd7, 0xcd, 0xd5, 0xb3, 0x1a, + 0x84, 0x64, 0x00, 0x2d, 0x30, 0x7c, 0xff, 0xaa, 0xdd, 0x3a, 0xab, 0x07, + 0x94, 0x92, 0xd0, 0x5a, 0xf3, 0x31, 0x25, 0x65, +}; +static const unsigned char kat3737_nonce[] = {0}; +static const unsigned char kat3737_persstr[] = {0}; +static const unsigned char kat3737_entropyinpr1[] = { + 0xc5, 0x84, 0x89, 0x93, 0xe3, 0x95, 0x10, 0x47, 0x68, 0xf9, 0xa5, 0xac, + 0x90, 0xbc, 0x3f, 0x3d, 0xfa, 0x04, 0x92, 0x5f, 0xf4, 0xdc, 0x86, 0xfb, + 0x0f, 0xc4, 0x62, 0x56, 0x91, 0x2d, 0x29, 0x4d, +}; +static const unsigned char kat3737_addinpr1[] = { + 0xe4, 0x6b, 0x69, 0xb4, 0x99, 0xbe, 0xf0, 0x51, 0x72, 0x4d, 0xa0, 0x8e, + 0x94, 0x2d, 0xdc, 0xf7, 0xeb, 0x42, 0xd2, 0xe6, 0x6d, 0x12, 0xd9, 0x54, + 0xda, 0x65, 0x62, 0x9f, 0x78, 0x38, 0x18, 0x13, +}; +static const unsigned char kat3737_entropyinpr2[] = { + 0xca, 0x16, 0x5d, 0x20, 0xa6, 0x8e, 0x36, 0x1b, 0xe9, 0x85, 0x1f, 0x61, + 0x9d, 0xfc, 0xde, 0x9f, 0x7b, 0x38, 0xa3, 0xe9, 0x80, 0xaf, 0xa5, 0xb2, + 0xb7, 0xc3, 0xe2, 0xd1, 0xec, 0xa8, 0x16, 0x9a, +}; +static const unsigned char kat3737_addinpr2[] = { + 0xea, 0x77, 0x65, 0x10, 0x18, 0xfc, 0x08, 0xae, 0xc2, 0x0e, 0x36, 0x77, + 0x7e, 0xf0, 0x28, 0x2a, 0x71, 0x3b, 0xc5, 0x6e, 0x08, 0x4e, 0xcf, 0x45, + 0xd9, 0x2e, 0xdb, 0x63, 0x5a, 0xb9, 0xce, 0xd0, +}; +static const unsigned char kat3737_retbits[] = { + 0x9a, 0x2e, 0x7f, 0x4e, 0x32, 0x0a, 0xdc, 0x04, 0x87, 0xaa, 0x6d, 0x57, + 0x23, 0x0f, 0xfe, 0xdf, 0x74, 0x2b, 0xe5, 0xcc, 0xdd, 0xe6, 0xbc, 0xea, + 0xe6, 0xd5, 0x6b, 0x62, 0xdb, 0x34, 0x15, 0x61, 0x9f, 0x62, 0x4d, 0x08, + 0x79, 0x16, 0x93, 0x97, 0x0d, 0x08, 0x78, 0x8f, 0x3c, 0x6e, 0x7e, 0x33, + 0xef, 0xc4, 0x62, 0x80, 0xce, 0x40, 0x28, 0xe4, 0xe4, 0x5d, 0xc0, 0x69, + 0x0c, 0xe9, 0x9f, 0x00, +}; +static const struct drbg_kat_pr_true kat3737_t = { + 1, kat3737_entropyin, kat3737_nonce, kat3737_persstr, + kat3737_entropyinpr1, kat3737_addinpr1, kat3737_entropyinpr2, + kat3737_addinpr2, kat3737_retbits +}; +static const struct drbg_kat kat3737 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3737_t +}; + +static const unsigned char kat3738_entropyin[] = { + 0x00, 0xd7, 0x79, 0xe7, 0x4b, 0x81, 0xfc, 0x7a, 0xd2, 0x84, 0x67, 0xdc, + 0x5f, 0xf0, 0x52, 0x04, 0x26, 0x93, 0x09, 0x01, 0x79, 0x27, 0x5d, 0xbf, + 0x46, 0xc0, 0xe0, 0x96, 0x2e, 0x08, 0x13, 0x94, +}; +static const unsigned char kat3738_nonce[] = {0}; +static const unsigned char kat3738_persstr[] = {0}; +static const unsigned char kat3738_entropyinpr1[] = { + 0x31, 0x91, 0x12, 0x38, 0xcf, 0xc7, 0x72, 0x81, 0x55, 0xb2, 0xcb, 0x7d, + 0xc8, 0xc9, 0x35, 0xff, 0x86, 0xa6, 0x38, 0x61, 0xf3, 0x34, 0xe7, 0x05, + 0x33, 0xd8, 0x83, 0x44, 0xc3, 0x4f, 0xe4, 0xb0, +}; +static const unsigned char kat3738_addinpr1[] = { + 0x8f, 0xd1, 0xf4, 0x00, 0x02, 0xec, 0xf2, 0xb6, 0xde, 0xee, 0xeb, 0xcc, + 0x9d, 0x6f, 0x12, 0x01, 0x91, 0x86, 0xf9, 0xbf, 0x1a, 0x3e, 0xc3, 0xb8, + 0x04, 0x3a, 0x60, 0x92, 0xfc, 0xed, 0xd4, 0xd9, +}; +static const unsigned char kat3738_entropyinpr2[] = { + 0xf6, 0x09, 0x20, 0xf2, 0x92, 0x2e, 0x33, 0xba, 0x8a, 0x6a, 0xcd, 0x4f, + 0x96, 0x43, 0x49, 0xc0, 0x55, 0xbd, 0xf2, 0x62, 0xdd, 0x8c, 0xf4, 0xb3, + 0x08, 0xf9, 0xa0, 0x04, 0x2f, 0x30, 0x0b, 0xa4, +}; +static const unsigned char kat3738_addinpr2[] = { + 0x88, 0x56, 0x01, 0x48, 0x0f, 0x2b, 0x50, 0xa9, 0xcb, 0xc7, 0xc9, 0x38, + 0x41, 0x92, 0x55, 0x79, 0xd0, 0xe5, 0xa4, 0x0b, 0x81, 0xc1, 0xa4, 0xf1, + 0xef, 0xd0, 0x40, 0xe2, 0x1e, 0x65, 0x96, 0xb2, +}; +static const unsigned char kat3738_retbits[] = { + 0xff, 0xf4, 0x9a, 0x04, 0x58, 0xf0, 0x64, 0x16, 0x1e, 0x37, 0xc5, 0x63, + 0x86, 0x1a, 0x91, 0xd0, 0xa4, 0x01, 0xc6, 0x8f, 0xd0, 0x33, 0x88, 0x30, + 0x1c, 0x22, 0x5f, 0x3c, 0x47, 0x81, 0x38, 0xdd, 0xa2, 0x1d, 0x5d, 0x7e, + 0x34, 0x85, 0xf5, 0x2a, 0xb2, 0xfe, 0x21, 0x6c, 0xeb, 0xe3, 0x08, 0x1f, + 0x65, 0x79, 0xe2, 0xef, 0x00, 0xb7, 0x47, 0xbc, 0xe3, 0x46, 0x67, 0xa6, + 0x7d, 0x47, 0xfc, 0x56, +}; +static const struct drbg_kat_pr_true kat3738_t = { + 2, kat3738_entropyin, kat3738_nonce, kat3738_persstr, + kat3738_entropyinpr1, kat3738_addinpr1, kat3738_entropyinpr2, + kat3738_addinpr2, kat3738_retbits +}; +static const struct drbg_kat kat3738 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3738_t +}; + +static const unsigned char kat3739_entropyin[] = { + 0x87, 0xe5, 0x92, 0x73, 0xb6, 0xcc, 0xc7, 0x0f, 0x7c, 0xa4, 0xa9, 0x51, + 0xa0, 0x0f, 0x4e, 0x07, 0x18, 0xfc, 0xc3, 0xfc, 0xe5, 0x9e, 0x11, 0x32, + 0x8f, 0x9e, 0x18, 0xaf, 0xb9, 0x04, 0x84, 0x04, +}; +static const unsigned char kat3739_nonce[] = {0}; +static const unsigned char kat3739_persstr[] = {0}; +static const unsigned char kat3739_entropyinpr1[] = { + 0x35, 0x25, 0x39, 0x05, 0xf4, 0x5e, 0x67, 0x84, 0x31, 0xee, 0x2b, 0xc5, + 0x12, 0xdb, 0xe0, 0x9b, 0x55, 0x30, 0xf2, 0x03, 0xa6, 0xcb, 0xe9, 0x53, + 0xa8, 0xad, 0x22, 0xf4, 0xd5, 0xbb, 0x1e, 0x27, +}; +static const unsigned char kat3739_addinpr1[] = { + 0x87, 0x70, 0x45, 0xd9, 0xfc, 0xbe, 0x3d, 0xa5, 0xec, 0x18, 0xa7, 0xcf, + 0x36, 0x05, 0x37, 0xd4, 0xd1, 0x5a, 0xd1, 0x15, 0xb2, 0xfd, 0x95, 0x61, + 0xb7, 0xc5, 0xe0, 0x02, 0xf0, 0xa4, 0x5a, 0x87, +}; +static const unsigned char kat3739_entropyinpr2[] = { + 0x75, 0xb5, 0x47, 0x36, 0x43, 0x21, 0x57, 0x12, 0x40, 0x65, 0xeb, 0x26, + 0xd5, 0x8a, 0x54, 0xb5, 0x82, 0x1f, 0x2c, 0x7e, 0xe5, 0x69, 0xba, 0x29, + 0xa1, 0xd1, 0xff, 0x89, 0x35, 0x12, 0x64, 0x6c, +}; +static const unsigned char kat3739_addinpr2[] = { + 0x8d, 0x2c, 0xed, 0x1c, 0xfe, 0x17, 0x3e, 0x7c, 0x99, 0xf1, 0x26, 0x49, + 0xa7, 0x56, 0xac, 0x71, 0x07, 0xee, 0xc6, 0x02, 0x61, 0xdc, 0x61, 0xc7, + 0xb1, 0xc2, 0x43, 0x8a, 0x22, 0x95, 0x7f, 0xa3, +}; +static const unsigned char kat3739_retbits[] = { + 0x19, 0x24, 0xe2, 0xa5, 0x1b, 0x72, 0x95, 0x3b, 0xd2, 0xcf, 0x81, 0xbc, + 0xe2, 0x33, 0x46, 0x62, 0xf3, 0xfe, 0x3f, 0x3a, 0x1b, 0x0b, 0x24, 0xe0, + 0x72, 0xd0, 0xf4, 0x0f, 0xec, 0x42, 0x36, 0xd0, 0x8c, 0x8a, 0xb1, 0xaf, + 0xc0, 0xb2, 0xdf, 0x58, 0x17, 0x7a, 0xf2, 0x49, 0xe4, 0x5a, 0x19, 0x6e, + 0xe8, 0x1e, 0x71, 0x82, 0x9c, 0x97, 0xec, 0x1b, 0x5f, 0xe8, 0x56, 0x4e, + 0x25, 0x22, 0xb1, 0x41, +}; +static const struct drbg_kat_pr_true kat3739_t = { + 3, kat3739_entropyin, kat3739_nonce, kat3739_persstr, + kat3739_entropyinpr1, kat3739_addinpr1, kat3739_entropyinpr2, + kat3739_addinpr2, kat3739_retbits +}; +static const struct drbg_kat kat3739 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3739_t +}; + +static const unsigned char kat3740_entropyin[] = { + 0xfb, 0x80, 0x1e, 0x2e, 0x3d, 0x7a, 0x59, 0x42, 0xf8, 0x8a, 0x1a, 0xea, + 0x72, 0x68, 0x60, 0x88, 0x70, 0x4b, 0x28, 0x15, 0xf8, 0x65, 0xf9, 0xe1, + 0xb0, 0xcb, 0x41, 0xa3, 0x82, 0x6a, 0x59, 0x53, +}; +static const unsigned char kat3740_nonce[] = {0}; +static const unsigned char kat3740_persstr[] = {0}; +static const unsigned char kat3740_entropyinpr1[] = { + 0xa7, 0xc4, 0x41, 0x12, 0x07, 0xde, 0x8c, 0xf4, 0xa8, 0x8f, 0x56, 0x25, + 0x55, 0x13, 0x45, 0xae, 0x3e, 0xfa, 0x57, 0x75, 0x53, 0xe0, 0xbd, 0x2b, + 0xac, 0xd0, 0x22, 0x38, 0x39, 0x5f, 0x1c, 0xec, +}; +static const unsigned char kat3740_addinpr1[] = { + 0x49, 0xdf, 0xac, 0xc7, 0x50, 0x11, 0xac, 0xed, 0x1c, 0x8b, 0x44, 0x8a, + 0xb9, 0x83, 0x9d, 0xe3, 0xba, 0x63, 0xb8, 0xc1, 0xbc, 0x63, 0xc7, 0x65, + 0x50, 0xf5, 0x3f, 0x5e, 0xec, 0x02, 0x0c, 0xfb, +}; +static const unsigned char kat3740_entropyinpr2[] = { + 0xfa, 0x2b, 0x7a, 0x7e, 0x68, 0xfb, 0xa3, 0x04, 0x89, 0x34, 0x1c, 0x23, + 0x7f, 0x71, 0x01, 0x69, 0xdf, 0xd4, 0xa4, 0x17, 0xe4, 0x74, 0xfc, 0x56, + 0xdf, 0x4e, 0xa2, 0xbb, 0x85, 0xca, 0x82, 0xee, +}; +static const unsigned char kat3740_addinpr2[] = { + 0xa1, 0x61, 0x64, 0x9c, 0xf8, 0xcc, 0x5e, 0xef, 0x89, 0x37, 0x70, 0x0b, + 0xcc, 0x54, 0xe1, 0x5d, 0xe4, 0xf5, 0x6c, 0x15, 0x4c, 0x74, 0xea, 0x0c, + 0x1a, 0xee, 0x38, 0x0b, 0x6f, 0x75, 0x67, 0x8a, +}; +static const unsigned char kat3740_retbits[] = { + 0xec, 0x59, 0x7d, 0xa7, 0x90, 0xf0, 0xb8, 0x0d, 0xaf, 0xb7, 0xc7, 0x69, + 0xe5, 0x66, 0xc3, 0xa6, 0xd3, 0x8b, 0x96, 0xbd, 0x2c, 0x72, 0x55, 0x9c, + 0x09, 0x1a, 0xe2, 0x3a, 0x47, 0x29, 0x67, 0xc6, 0x85, 0x12, 0xd4, 0x78, + 0x7b, 0xd8, 0x81, 0x2c, 0xdf, 0x82, 0xa7, 0x63, 0xb4, 0x9d, 0xc4, 0x7d, + 0x56, 0x2d, 0xf6, 0x3d, 0x8d, 0xef, 0x5b, 0xdc, 0xef, 0x92, 0x56, 0xc6, + 0x22, 0x73, 0xf0, 0xc6, +}; +static const struct drbg_kat_pr_true kat3740_t = { + 4, kat3740_entropyin, kat3740_nonce, kat3740_persstr, + kat3740_entropyinpr1, kat3740_addinpr1, kat3740_entropyinpr2, + kat3740_addinpr2, kat3740_retbits +}; +static const struct drbg_kat kat3740 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3740_t +}; + +static const unsigned char kat3741_entropyin[] = { + 0xb9, 0x0d, 0xb3, 0x40, 0xae, 0x9b, 0xf1, 0x2a, 0xd0, 0x26, 0x84, 0x7d, + 0x0e, 0x1f, 0x39, 0x9d, 0x11, 0x1e, 0xa1, 0x83, 0xeb, 0xa7, 0x08, 0x27, + 0xcb, 0x74, 0x93, 0xc5, 0x16, 0x0b, 0xdc, 0x7e, +}; +static const unsigned char kat3741_nonce[] = {0}; +static const unsigned char kat3741_persstr[] = {0}; +static const unsigned char kat3741_entropyinpr1[] = { + 0xc9, 0x73, 0x48, 0xff, 0x9d, 0x0b, 0x8e, 0x75, 0xbc, 0xea, 0xf6, 0x08, + 0xaa, 0x9a, 0x0d, 0xd7, 0x10, 0xa8, 0x18, 0x3e, 0x6f, 0x64, 0x17, 0x0d, + 0xc0, 0xf3, 0x22, 0x2a, 0x38, 0x49, 0x17, 0xb3, +}; +static const unsigned char kat3741_addinpr1[] = { + 0x30, 0xe9, 0xbc, 0x3c, 0x71, 0x25, 0xd8, 0xa7, 0x05, 0x5d, 0x4f, 0xfc, + 0x09, 0x66, 0x04, 0x3f, 0xa8, 0x98, 0xdc, 0xef, 0x35, 0xb1, 0x6a, 0x33, + 0xbc, 0x68, 0xa2, 0x29, 0xb2, 0x9c, 0x94, 0x3a, +}; +static const unsigned char kat3741_entropyinpr2[] = { + 0x22, 0x27, 0xb6, 0x57, 0x4c, 0x9b, 0x8a, 0x06, 0x1d, 0x73, 0x06, 0xcc, + 0xe1, 0xf6, 0xac, 0x26, 0x37, 0x6c, 0x9a, 0x6e, 0x20, 0xc8, 0x8d, 0x33, + 0x38, 0x7c, 0x6e, 0x69, 0x20, 0x71, 0xad, 0xe3, +}; +static const unsigned char kat3741_addinpr2[] = { + 0x1f, 0x4e, 0x51, 0x14, 0xa1, 0xa7, 0x9b, 0xb5, 0x1c, 0xc1, 0xd5, 0x8a, + 0x71, 0x4c, 0x2b, 0xa8, 0x0b, 0x59, 0xad, 0xcc, 0x15, 0x00, 0xf7, 0x8c, + 0x06, 0x27, 0x94, 0x2b, 0xfd, 0x70, 0x63, 0xdd, +}; +static const unsigned char kat3741_retbits[] = { + 0x02, 0xdc, 0x40, 0xc5, 0x39, 0x22, 0x8f, 0xcd, 0xa7, 0xb0, 0x56, 0xd6, + 0x5a, 0x4e, 0x91, 0x84, 0xac, 0x2c, 0x58, 0x2b, 0x08, 0x32, 0x19, 0x9a, + 0xaa, 0x34, 0x60, 0x0b, 0x3c, 0xff, 0xc8, 0x75, 0x95, 0xca, 0x77, 0x33, + 0x9c, 0x5b, 0x54, 0xf8, 0x64, 0x12, 0x98, 0x13, 0x74, 0xcf, 0x44, 0x68, + 0x31, 0x8b, 0x08, 0x1a, 0x87, 0x3b, 0xdb, 0x31, 0x67, 0xad, 0x72, 0x14, + 0xbf, 0x09, 0xa8, 0xab, +}; +static const struct drbg_kat_pr_true kat3741_t = { + 5, kat3741_entropyin, kat3741_nonce, kat3741_persstr, + kat3741_entropyinpr1, kat3741_addinpr1, kat3741_entropyinpr2, + kat3741_addinpr2, kat3741_retbits +}; +static const struct drbg_kat kat3741 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3741_t +}; + +static const unsigned char kat3742_entropyin[] = { + 0xac, 0x80, 0x4a, 0x99, 0xb7, 0x1d, 0x9b, 0x51, 0x0c, 0x21, 0xdb, 0x7a, + 0x38, 0x1c, 0x1d, 0xee, 0xbe, 0x8b, 0x80, 0xb0, 0x3e, 0xd8, 0x10, 0xac, + 0x05, 0x50, 0x06, 0x55, 0x8e, 0x00, 0x57, 0xbc, +}; +static const unsigned char kat3742_nonce[] = {0}; +static const unsigned char kat3742_persstr[] = {0}; +static const unsigned char kat3742_entropyinpr1[] = { + 0xac, 0x31, 0xc0, 0xf2, 0xf0, 0xbf, 0xbd, 0xa0, 0xcd, 0xe0, 0x2b, 0x0d, + 0x6c, 0xd4, 0xd3, 0xaf, 0xf5, 0x32, 0x5d, 0x39, 0x30, 0xce, 0x07, 0x25, + 0x03, 0x2f, 0x1d, 0xb3, 0x36, 0xdb, 0x8d, 0xa4, +}; +static const unsigned char kat3742_addinpr1[] = { + 0xdf, 0x9f, 0xcf, 0xe9, 0xba, 0xfe, 0xe5, 0x59, 0x5a, 0x4b, 0x6d, 0x44, + 0x9c, 0x2a, 0x04, 0x2b, 0x2e, 0x73, 0x71, 0x46, 0x5a, 0x74, 0x99, 0x7c, + 0x3c, 0x63, 0x06, 0xdb, 0xf2, 0xf5, 0x90, 0x8a, +}; +static const unsigned char kat3742_entropyinpr2[] = { + 0x73, 0xce, 0x5f, 0x31, 0xb0, 0x2f, 0x84, 0x3f, 0x19, 0x35, 0x3d, 0xcc, + 0xcf, 0x48, 0x50, 0xd9, 0xc9, 0x10, 0x64, 0x31, 0x0a, 0xf9, 0xd9, 0x8b, + 0x74, 0x45, 0x65, 0x15, 0xd9, 0x51, 0x14, 0xc6, +}; +static const unsigned char kat3742_addinpr2[] = { + 0x61, 0x8f, 0x5b, 0x1a, 0xdd, 0x2e, 0x19, 0xf0, 0xe7, 0x84, 0xe7, 0xde, + 0x1a, 0x59, 0x1a, 0x64, 0xa8, 0x90, 0xf7, 0x93, 0x7f, 0xbc, 0xb7, 0x09, + 0x86, 0x2d, 0x28, 0xdc, 0xec, 0x46, 0x7c, 0x13, +}; +static const unsigned char kat3742_retbits[] = { + 0x4d, 0x91, 0x99, 0xb0, 0x9e, 0xde, 0xfd, 0xcc, 0xdd, 0x5b, 0x49, 0x41, + 0xad, 0x51, 0x9f, 0xb0, 0x0e, 0x90, 0x2d, 0xa8, 0x75, 0x8b, 0xa2, 0x24, + 0xa2, 0x22, 0xf9, 0xc8, 0xb2, 0x99, 0xe8, 0xd5, 0x39, 0x2c, 0xa9, 0x6b, + 0x70, 0xc6, 0xb0, 0x47, 0x3b, 0x7c, 0x93, 0xd7, 0x34, 0xfd, 0x5d, 0x2c, + 0x5d, 0x4b, 0x1a, 0xa3, 0x66, 0xf8, 0x98, 0x4a, 0x01, 0x70, 0x6a, 0x8b, + 0x78, 0xeb, 0x29, 0x58, +}; +static const struct drbg_kat_pr_true kat3742_t = { + 6, kat3742_entropyin, kat3742_nonce, kat3742_persstr, + kat3742_entropyinpr1, kat3742_addinpr1, kat3742_entropyinpr2, + kat3742_addinpr2, kat3742_retbits +}; +static const struct drbg_kat kat3742 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3742_t +}; + +static const unsigned char kat3743_entropyin[] = { + 0x93, 0x5b, 0xc8, 0xd2, 0x37, 0xa4, 0x49, 0xfb, 0x53, 0x07, 0x95, 0x95, + 0x3b, 0x60, 0xb7, 0x3e, 0x15, 0xfe, 0xca, 0xee, 0x85, 0xbd, 0xa0, 0x53, + 0xce, 0x23, 0xa2, 0x3b, 0x46, 0xdd, 0x01, 0xa2, +}; +static const unsigned char kat3743_nonce[] = {0}; +static const unsigned char kat3743_persstr[] = {0}; +static const unsigned char kat3743_entropyinpr1[] = { + 0x97, 0x1c, 0x09, 0x9e, 0x6b, 0x8a, 0xd9, 0x54, 0x47, 0xa0, 0x3a, 0xb3, + 0xf0, 0x4d, 0xb8, 0x93, 0x2c, 0x58, 0xca, 0xbb, 0xf3, 0x8f, 0x5d, 0x25, + 0x57, 0xdb, 0x7a, 0x7b, 0x6a, 0x82, 0x64, 0xf4, +}; +static const unsigned char kat3743_addinpr1[] = { + 0xba, 0xc7, 0xdb, 0x39, 0xcf, 0x77, 0x3e, 0xda, 0x0b, 0xd9, 0xc9, 0x97, + 0x89, 0x08, 0xa1, 0x5d, 0x09, 0x0c, 0xac, 0xc2, 0xdd, 0x85, 0xc1, 0x35, + 0x76, 0xe1, 0x79, 0xa7, 0x99, 0xc8, 0x38, 0xa0, +}; +static const unsigned char kat3743_entropyinpr2[] = { + 0x8d, 0xd9, 0x97, 0x47, 0x86, 0xb2, 0x92, 0x04, 0xcf, 0x08, 0xc0, 0x72, + 0x6c, 0x66, 0x08, 0xb2, 0x2e, 0xab, 0xff, 0xa6, 0x92, 0xb8, 0x76, 0x2e, + 0x4c, 0x67, 0xc2, 0x83, 0xf5, 0x62, 0x0a, 0xdf, +}; +static const unsigned char kat3743_addinpr2[] = { + 0x58, 0xe3, 0x50, 0x5b, 0x2e, 0x61, 0x93, 0x95, 0xe0, 0xb7, 0x06, 0x22, + 0x5e, 0xad, 0x4e, 0xe3, 0xb0, 0x2f, 0x92, 0xfa, 0x48, 0xc6, 0xec, 0x3e, + 0x7d, 0xe3, 0x85, 0x50, 0x57, 0x3c, 0x0a, 0x6a, +}; +static const unsigned char kat3743_retbits[] = { + 0x76, 0xc7, 0xf8, 0xe1, 0x21, 0xbc, 0xf7, 0xa3, 0x11, 0x70, 0x59, 0xaa, + 0x91, 0x7f, 0x31, 0xc6, 0xea, 0xf6, 0x38, 0x48, 0x44, 0xff, 0x15, 0x3f, + 0xbe, 0x25, 0xd2, 0x90, 0x8c, 0xbb, 0x4a, 0x26, 0xbd, 0xed, 0x67, 0xb3, + 0xd0, 0x1e, 0xc2, 0xd9, 0x9f, 0x71, 0x43, 0x52, 0xb7, 0x30, 0x11, 0x54, + 0x22, 0xdc, 0xd5, 0x13, 0x52, 0x16, 0xdb, 0x01, 0xab, 0x55, 0x56, 0x09, + 0x2a, 0x7b, 0xb7, 0xaa, +}; +static const struct drbg_kat_pr_true kat3743_t = { + 7, kat3743_entropyin, kat3743_nonce, kat3743_persstr, + kat3743_entropyinpr1, kat3743_addinpr1, kat3743_entropyinpr2, + kat3743_addinpr2, kat3743_retbits +}; +static const struct drbg_kat kat3743 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3743_t +}; + +static const unsigned char kat3744_entropyin[] = { + 0x24, 0x8d, 0xd8, 0x15, 0xfe, 0xa4, 0x35, 0x1d, 0x9b, 0x62, 0xc7, 0x1d, + 0x76, 0xb2, 0x9a, 0xb7, 0xab, 0xbb, 0xa7, 0x6f, 0xa3, 0x0e, 0x7f, 0xfd, + 0x7b, 0xcb, 0xdd, 0x36, 0xf7, 0x36, 0x4f, 0xf2, +}; +static const unsigned char kat3744_nonce[] = {0}; +static const unsigned char kat3744_persstr[] = {0}; +static const unsigned char kat3744_entropyinpr1[] = { + 0xb8, 0xd8, 0x13, 0xda, 0x52, 0x4e, 0x5f, 0xc5, 0xcd, 0x25, 0x8e, 0x26, + 0x29, 0x62, 0x07, 0x2c, 0x13, 0xfd, 0x2b, 0xb8, 0xd4, 0x87, 0xf8, 0x43, + 0xf0, 0xe3, 0x0e, 0x56, 0x95, 0x53, 0xae, 0x41, +}; +static const unsigned char kat3744_addinpr1[] = { + 0x91, 0x6b, 0x0d, 0x6a, 0x03, 0x64, 0x87, 0x04, 0x4c, 0xba, 0x6c, 0x20, + 0x9e, 0x8b, 0xd4, 0x30, 0xbe, 0x0f, 0xde, 0x46, 0x24, 0x2a, 0xd6, 0x69, + 0x81, 0xd2, 0xc8, 0x35, 0x14, 0xb7, 0xb0, 0x3b, +}; +static const unsigned char kat3744_entropyinpr2[] = { + 0x28, 0xcc, 0x54, 0xba, 0x21, 0x8b, 0x44, 0xd0, 0x82, 0x72, 0xdb, 0x5f, + 0x5b, 0x2d, 0x72, 0xf8, 0xf6, 0x32, 0x18, 0x9a, 0xec, 0x0a, 0x0a, 0x80, + 0xc7, 0x92, 0xd2, 0xc1, 0xff, 0x44, 0x41, 0x55, +}; +static const unsigned char kat3744_addinpr2[] = { + 0xb6, 0xea, 0x49, 0x48, 0x82, 0x4e, 0x7c, 0xdb, 0xa9, 0x99, 0x5d, 0x42, + 0x29, 0x08, 0x1c, 0x94, 0xde, 0xbc, 0xb1, 0x9b, 0x0e, 0x07, 0xcb, 0x72, + 0xd8, 0x38, 0x85, 0xf6, 0xad, 0x7a, 0x1e, 0xba, +}; +static const unsigned char kat3744_retbits[] = { + 0x2b, 0xe3, 0x58, 0xc9, 0x8c, 0xdb, 0x5b, 0xd6, 0x0c, 0x17, 0x29, 0x81, + 0x57, 0x63, 0x37, 0x6f, 0xa4, 0xc6, 0x73, 0x3d, 0xdd, 0xf1, 0xb6, 0x18, + 0xbf, 0x64, 0xac, 0xf3, 0x1e, 0xec, 0x8d, 0x18, 0x01, 0x55, 0x36, 0xf3, + 0x35, 0x77, 0x7e, 0x92, 0xd9, 0x20, 0x0e, 0x3c, 0xb8, 0xf0, 0x7c, 0x96, + 0x3b, 0x76, 0x88, 0xff, 0x0f, 0x38, 0xdf, 0x15, 0xc4, 0x0f, 0x4b, 0xa8, + 0xa2, 0x86, 0x75, 0xb9, +}; +static const struct drbg_kat_pr_true kat3744_t = { + 8, kat3744_entropyin, kat3744_nonce, kat3744_persstr, + kat3744_entropyinpr1, kat3744_addinpr1, kat3744_entropyinpr2, + kat3744_addinpr2, kat3744_retbits +}; +static const struct drbg_kat kat3744 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3744_t +}; + +static const unsigned char kat3745_entropyin[] = { + 0x71, 0x52, 0xfd, 0xb8, 0xc0, 0x09, 0x09, 0xd6, 0x64, 0x9c, 0xb4, 0x3a, + 0xfb, 0x2b, 0x51, 0xbe, 0xd3, 0x5c, 0x9a, 0xc6, 0x5f, 0x0d, 0xba, 0xe0, + 0xca, 0x5a, 0x97, 0xed, 0x3d, 0x2f, 0x5b, 0xa6, +}; +static const unsigned char kat3745_nonce[] = {0}; +static const unsigned char kat3745_persstr[] = {0}; +static const unsigned char kat3745_entropyinpr1[] = { + 0x9e, 0xdd, 0x0d, 0x56, 0xfb, 0xd0, 0xfa, 0xb4, 0x5c, 0xbf, 0x4c, 0x5a, + 0xb1, 0xb2, 0xdb, 0x30, 0x93, 0xff, 0x90, 0x48, 0x41, 0x21, 0x8c, 0xf7, + 0x48, 0x0d, 0x7c, 0xc7, 0x3d, 0x59, 0xd3, 0xce, +}; +static const unsigned char kat3745_addinpr1[] = { + 0x58, 0xab, 0xb0, 0x9d, 0xf5, 0x5e, 0xb0, 0x73, 0x48, 0x94, 0x40, 0x11, + 0x1d, 0xbe, 0x3d, 0xd3, 0x62, 0x8b, 0xac, 0x4a, 0xbe, 0x37, 0x9c, 0x4e, + 0x20, 0xbf, 0x6e, 0xe7, 0x12, 0xb3, 0xe4, 0xb4, +}; +static const unsigned char kat3745_entropyinpr2[] = { + 0xc4, 0xaf, 0x36, 0x3b, 0x91, 0x1c, 0xce, 0xc1, 0xd3, 0xbb, 0x27, 0xe2, + 0x4d, 0x83, 0x6e, 0xe5, 0xfc, 0x9b, 0xc9, 0xeb, 0x43, 0x62, 0xfe, 0x0b, + 0x73, 0x82, 0x35, 0x23, 0x24, 0xb3, 0xff, 0x3b, +}; +static const unsigned char kat3745_addinpr2[] = { + 0xed, 0xd5, 0xd4, 0x46, 0x13, 0xd6, 0x36, 0xd1, 0x77, 0xe5, 0x79, 0x03, + 0xbb, 0xf8, 0xdc, 0x95, 0xa5, 0x28, 0xed, 0x2b, 0x01, 0xdc, 0xb4, 0xe7, + 0xd7, 0xb3, 0xf2, 0x57, 0xe3, 0xcb, 0x25, 0x9f, +}; +static const unsigned char kat3745_retbits[] = { + 0xe6, 0xf8, 0x28, 0x7a, 0x4d, 0x87, 0x1c, 0x8a, 0x6e, 0x11, 0xfb, 0x33, + 0xa2, 0x3d, 0x83, 0x8f, 0xe3, 0x7f, 0x42, 0xd2, 0xcb, 0xb4, 0x67, 0xd4, + 0x2a, 0x45, 0x9f, 0xf7, 0x2f, 0xdb, 0x59, 0xd1, 0xb7, 0xd7, 0xa5, 0xf9, + 0x07, 0x94, 0xac, 0x2a, 0x5e, 0x05, 0x6a, 0x20, 0x14, 0x39, 0x03, 0xc0, + 0xf2, 0x79, 0x01, 0xdf, 0x2d, 0xe8, 0x38, 0xe3, 0x42, 0xfd, 0xb4, 0x37, + 0x6a, 0x2c, 0xac, 0x92, +}; +static const struct drbg_kat_pr_true kat3745_t = { + 9, kat3745_entropyin, kat3745_nonce, kat3745_persstr, + kat3745_entropyinpr1, kat3745_addinpr1, kat3745_entropyinpr2, + kat3745_addinpr2, kat3745_retbits +}; +static const struct drbg_kat kat3745 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3745_t +}; + +static const unsigned char kat3746_entropyin[] = { + 0x67, 0x63, 0xfc, 0x2f, 0x32, 0x07, 0xef, 0x59, 0x4b, 0xbe, 0xfe, 0x03, + 0x97, 0x3f, 0xe1, 0x21, 0x1e, 0x39, 0x62, 0x97, 0x0a, 0xbb, 0xcf, 0xc1, + 0x1e, 0x6d, 0xb3, 0x46, 0x52, 0x93, 0x02, 0xde, +}; +static const unsigned char kat3746_nonce[] = {0}; +static const unsigned char kat3746_persstr[] = {0}; +static const unsigned char kat3746_entropyinpr1[] = { + 0x4d, 0xff, 0x73, 0x69, 0x95, 0xf8, 0x61, 0x4c, 0xd1, 0x9f, 0x45, 0x6d, + 0x84, 0x2e, 0x78, 0x48, 0x35, 0x65, 0xaa, 0x78, 0xe7, 0xc6, 0x54, 0x7d, + 0x92, 0x60, 0xea, 0xc2, 0x9a, 0xa1, 0xb7, 0x83, +}; +static const unsigned char kat3746_addinpr1[] = { + 0x70, 0x99, 0x24, 0xf6, 0x23, 0x33, 0x03, 0xb8, 0x21, 0xb7, 0x25, 0xc7, + 0x3e, 0x78, 0xa1, 0x61, 0x02, 0xe0, 0x1b, 0xcc, 0xcd, 0xb4, 0xb1, 0xfa, + 0x4d, 0x18, 0x90, 0x8e, 0xc7, 0x65, 0xa3, 0x19, +}; +static const unsigned char kat3746_entropyinpr2[] = { + 0xe9, 0x80, 0xfd, 0xe4, 0x7c, 0x99, 0xf9, 0x1b, 0xd5, 0x56, 0xc1, 0x48, + 0xd6, 0x8d, 0x87, 0xd8, 0xd6, 0x69, 0x6f, 0xbf, 0x44, 0xf7, 0x38, 0xbd, + 0x64, 0xaa, 0xbe, 0x65, 0x4e, 0x39, 0xc3, 0x63, +}; +static const unsigned char kat3746_addinpr2[] = { + 0x28, 0xea, 0x79, 0xbe, 0xcd, 0x7a, 0xa6, 0xa0, 0x8e, 0xe7, 0x39, 0x43, + 0xa8, 0x6f, 0x0b, 0x1d, 0xaf, 0x8e, 0x20, 0x3f, 0x26, 0xbb, 0x31, 0x2e, + 0x13, 0x55, 0xc4, 0x39, 0xbc, 0x47, 0x10, 0xe8, +}; +static const unsigned char kat3746_retbits[] = { + 0xad, 0x43, 0x47, 0xc4, 0x75, 0xed, 0xc9, 0x5b, 0x8c, 0x3a, 0xca, 0xda, + 0x36, 0x5c, 0x0e, 0xaa, 0xab, 0xf1, 0xf6, 0x34, 0xdb, 0x74, 0xaa, 0xc1, + 0xe6, 0xdf, 0x47, 0x5d, 0xdf, 0x21, 0x66, 0xb5, 0xcd, 0x58, 0x2e, 0x33, + 0x88, 0x90, 0x86, 0x12, 0x43, 0x31, 0x3a, 0x8c, 0xce, 0xa5, 0xa8, 0x63, + 0x31, 0x06, 0x38, 0x0c, 0xe8, 0x35, 0x81, 0xcc, 0x30, 0xf8, 0xd6, 0x1f, + 0xbf, 0xa7, 0x8e, 0x04, +}; +static const struct drbg_kat_pr_true kat3746_t = { + 10, kat3746_entropyin, kat3746_nonce, kat3746_persstr, + kat3746_entropyinpr1, kat3746_addinpr1, kat3746_entropyinpr2, + kat3746_addinpr2, kat3746_retbits +}; +static const struct drbg_kat kat3746 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3746_t +}; + +static const unsigned char kat3747_entropyin[] = { + 0xa2, 0xdf, 0x34, 0xb1, 0x03, 0xb9, 0x54, 0xe5, 0x98, 0xed, 0xf3, 0xd6, + 0x54, 0x3e, 0x08, 0x43, 0x7c, 0x44, 0x18, 0x75, 0x32, 0x62, 0x22, 0xc1, + 0x22, 0xf5, 0xb0, 0x0c, 0xce, 0xf9, 0x4c, 0x67, +}; +static const unsigned char kat3747_nonce[] = {0}; +static const unsigned char kat3747_persstr[] = {0}; +static const unsigned char kat3747_entropyinpr1[] = { + 0xf9, 0xb3, 0xba, 0x76, 0xd3, 0x7a, 0x84, 0x6c, 0x0f, 0x28, 0xa9, 0x9a, + 0x57, 0x41, 0xa6, 0x6e, 0x3d, 0x0f, 0xaf, 0xe0, 0x71, 0x44, 0x0c, 0xa5, + 0xa6, 0x3e, 0x91, 0x13, 0xef, 0x4f, 0xf3, 0x78, +}; +static const unsigned char kat3747_addinpr1[] = { + 0x8a, 0x7a, 0xd8, 0xf1, 0x6d, 0x7e, 0x75, 0xa2, 0x85, 0xc0, 0x39, 0x85, + 0x7d, 0xcc, 0x1d, 0xd5, 0x9b, 0xb8, 0x51, 0xcb, 0x19, 0x46, 0xc7, 0xe5, + 0xb3, 0x38, 0xd0, 0x29, 0x2b, 0xa4, 0x83, 0x4e, +}; +static const unsigned char kat3747_entropyinpr2[] = { + 0xa5, 0x95, 0x78, 0xd4, 0x2d, 0xb9, 0xfe, 0x98, 0x57, 0x59, 0x02, 0x6b, + 0xc2, 0xc2, 0x8a, 0xc2, 0xb3, 0x4c, 0xd5, 0xd3, 0xff, 0xc7, 0x36, 0x7f, + 0x46, 0x90, 0x1e, 0x3f, 0x0b, 0x30, 0xb9, 0x57, +}; +static const unsigned char kat3747_addinpr2[] = { + 0x10, 0x9d, 0x7e, 0x9a, 0x0c, 0xcc, 0xe5, 0x27, 0x26, 0x1a, 0xdb, 0xd0, + 0x22, 0x54, 0x42, 0x4e, 0x2c, 0x24, 0x5a, 0x02, 0xcf, 0xd3, 0x74, 0x41, + 0x36, 0x95, 0x6a, 0x90, 0x99, 0xde, 0x45, 0xd4, +}; +static const unsigned char kat3747_retbits[] = { + 0xe5, 0x54, 0x12, 0x35, 0x61, 0x49, 0x31, 0x69, 0x3d, 0xf7, 0x02, 0x77, + 0x8b, 0x6f, 0xb1, 0x7c, 0xac, 0x14, 0x17, 0xca, 0xa3, 0x12, 0xe8, 0x0e, + 0x52, 0xb6, 0x59, 0x5d, 0x4e, 0x22, 0xdf, 0x27, 0x99, 0xfa, 0x01, 0xcd, + 0xb3, 0xca, 0x33, 0x95, 0x9e, 0x20, 0xbb, 0xf0, 0xce, 0xab, 0x1f, 0x83, + 0x09, 0x68, 0x46, 0xdb, 0x12, 0x4d, 0xf1, 0x5a, 0x94, 0xd0, 0xe7, 0x10, + 0x04, 0x5e, 0x63, 0xb2, +}; +static const struct drbg_kat_pr_true kat3747_t = { + 11, kat3747_entropyin, kat3747_nonce, kat3747_persstr, + kat3747_entropyinpr1, kat3747_addinpr1, kat3747_entropyinpr2, + kat3747_addinpr2, kat3747_retbits +}; +static const struct drbg_kat kat3747 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3747_t +}; + +static const unsigned char kat3748_entropyin[] = { + 0xe4, 0x00, 0xd7, 0xd2, 0xae, 0x3d, 0xf9, 0x9e, 0x01, 0x58, 0x2a, 0xe6, + 0xe2, 0x7f, 0xd5, 0x4d, 0xa4, 0x94, 0x3a, 0x44, 0x21, 0xcf, 0x3c, 0x15, + 0x52, 0x82, 0x5e, 0x7a, 0x20, 0xec, 0x01, 0x3b, +}; +static const unsigned char kat3748_nonce[] = {0}; +static const unsigned char kat3748_persstr[] = {0}; +static const unsigned char kat3748_entropyinpr1[] = { + 0xea, 0x18, 0x15, 0x2b, 0xd3, 0x23, 0xad, 0x9c, 0xd9, 0x37, 0xae, 0xe5, + 0x47, 0x22, 0x53, 0x99, 0x1f, 0x28, 0x68, 0x11, 0x45, 0x19, 0x9d, 0x91, + 0x62, 0xe0, 0x88, 0x01, 0xac, 0xcd, 0x7a, 0xe7, +}; +static const unsigned char kat3748_addinpr1[] = { + 0x84, 0x2e, 0xe4, 0x8e, 0x18, 0x98, 0x3a, 0x99, 0x92, 0x6f, 0xfe, 0xd2, + 0x26, 0xdf, 0x6d, 0xd8, 0x89, 0x88, 0x7a, 0x9e, 0xa6, 0x6e, 0x5f, 0xce, + 0x11, 0x11, 0xd7, 0xdd, 0x40, 0xe0, 0x56, 0xc8, +}; +static const unsigned char kat3748_entropyinpr2[] = { + 0xb6, 0x5c, 0x20, 0x70, 0x9f, 0x49, 0xdb, 0x10, 0xb6, 0x56, 0x38, 0xce, + 0xc8, 0x74, 0x22, 0x76, 0x7c, 0x66, 0x4a, 0x5f, 0x27, 0x99, 0xe0, 0x90, + 0x22, 0x3f, 0x2e, 0x59, 0x51, 0x68, 0x92, 0x64, +}; +static const unsigned char kat3748_addinpr2[] = { + 0x6a, 0xe9, 0xda, 0x1e, 0xea, 0x95, 0x57, 0xa2, 0x84, 0x25, 0x97, 0x47, + 0x95, 0xf9, 0xf4, 0xda, 0x83, 0x0e, 0x19, 0x56, 0xd7, 0xa1, 0x4e, 0x1d, + 0x1a, 0x48, 0xaa, 0x67, 0x4b, 0xca, 0x56, 0x22, +}; +static const unsigned char kat3748_retbits[] = { + 0x38, 0xd0, 0x73, 0xdc, 0x26, 0x7c, 0x3f, 0x2f, 0xfa, 0xe7, 0x46, 0x20, + 0x6b, 0x39, 0x2c, 0xfa, 0x4a, 0xa6, 0xfb, 0x99, 0xd3, 0xcd, 0xf5, 0x10, + 0xf6, 0xb3, 0x4f, 0x26, 0xb1, 0x92, 0xf6, 0x78, 0xd8, 0xd7, 0x98, 0xc8, + 0x43, 0xa1, 0x53, 0xd3, 0x6f, 0x1f, 0x85, 0x30, 0x9f, 0x0b, 0xf2, 0xbc, + 0x5e, 0xe6, 0x6e, 0xe9, 0xc5, 0xdd, 0xc9, 0xdc, 0x33, 0x45, 0xe7, 0x24, + 0x0d, 0x7f, 0x8d, 0x7c, +}; +static const struct drbg_kat_pr_true kat3748_t = { + 12, kat3748_entropyin, kat3748_nonce, kat3748_persstr, + kat3748_entropyinpr1, kat3748_addinpr1, kat3748_entropyinpr2, + kat3748_addinpr2, kat3748_retbits +}; +static const struct drbg_kat kat3748 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3748_t +}; + +static const unsigned char kat3749_entropyin[] = { + 0xcc, 0x62, 0x67, 0xa1, 0x56, 0x5d, 0x63, 0x8f, 0xa5, 0x64, 0x14, 0xfc, + 0xa8, 0xc4, 0x84, 0xcd, 0xea, 0x12, 0xaa, 0xc7, 0x40, 0x0d, 0xd0, 0xa1, + 0x5c, 0x25, 0xdd, 0x6d, 0xff, 0x2b, 0xb0, 0x0d, +}; +static const unsigned char kat3749_nonce[] = {0}; +static const unsigned char kat3749_persstr[] = {0}; +static const unsigned char kat3749_entropyinpr1[] = { + 0xdc, 0x02, 0x80, 0x17, 0x56, 0x7e, 0xde, 0x34, 0xc7, 0x4e, 0x10, 0x4d, + 0xed, 0x71, 0xb4, 0x59, 0x69, 0x13, 0x5f, 0x48, 0x71, 0x51, 0x33, 0xfa, + 0x35, 0x0b, 0xdd, 0x83, 0x9e, 0x3f, 0x11, 0x98, +}; +static const unsigned char kat3749_addinpr1[] = { + 0x05, 0x16, 0xcb, 0xa5, 0x81, 0x08, 0x7f, 0x7f, 0x36, 0xa8, 0xb4, 0x39, + 0xb8, 0xc6, 0xf5, 0xf8, 0x6e, 0xa2, 0xcc, 0x53, 0x48, 0xe6, 0x8b, 0x2e, + 0x3f, 0x13, 0xaa, 0x8c, 0x2a, 0xe8, 0xcc, 0xb0, +}; +static const unsigned char kat3749_entropyinpr2[] = { + 0x12, 0xc9, 0x47, 0x53, 0xd3, 0xb5, 0xda, 0x74, 0xd0, 0xbe, 0xd6, 0xe5, + 0x8d, 0x07, 0x3b, 0xb7, 0xc2, 0xac, 0x68, 0xbe, 0x69, 0xb7, 0x7d, 0x03, + 0x87, 0x88, 0xd1, 0x1b, 0x2e, 0x23, 0x19, 0x6c, +}; +static const unsigned char kat3749_addinpr2[] = { + 0x3c, 0xe2, 0x6f, 0xcf, 0x5e, 0xba, 0x70, 0x30, 0x4d, 0x49, 0x10, 0x30, + 0xe9, 0xb5, 0xfd, 0xbc, 0xf2, 0x23, 0x00, 0x9e, 0x02, 0xc4, 0x46, 0x03, + 0xc6, 0xd3, 0x22, 0xb0, 0x0d, 0xc5, 0x1b, 0xfe, +}; +static const unsigned char kat3749_retbits[] = { + 0x28, 0xae, 0x84, 0x30, 0x01, 0x30, 0x76, 0x0b, 0x86, 0x3b, 0x76, 0xa6, + 0x73, 0x76, 0x52, 0x5c, 0x4e, 0xc0, 0xf1, 0x64, 0x88, 0xfc, 0xfd, 0xf6, + 0x10, 0x7f, 0x3c, 0x62, 0x39, 0x45, 0x7c, 0xbc, 0xee, 0xcf, 0x82, 0xa7, + 0x68, 0xce, 0x6d, 0x14, 0xef, 0x61, 0xdc, 0xa6, 0xcd, 0x4c, 0x87, 0x55, + 0x5d, 0xd2, 0x80, 0xc0, 0x18, 0x5b, 0x20, 0x31, 0xdf, 0xfe, 0xe6, 0xe7, + 0x43, 0x1b, 0x5f, 0x7c, +}; +static const struct drbg_kat_pr_true kat3749_t = { + 13, kat3749_entropyin, kat3749_nonce, kat3749_persstr, + kat3749_entropyinpr1, kat3749_addinpr1, kat3749_entropyinpr2, + kat3749_addinpr2, kat3749_retbits +}; +static const struct drbg_kat kat3749 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3749_t +}; + +static const unsigned char kat3750_entropyin[] = { + 0x46, 0xde, 0x03, 0x48, 0xe3, 0x02, 0x98, 0x39, 0xc0, 0xe4, 0x99, 0x57, + 0xd4, 0x03, 0xb2, 0xd7, 0x96, 0x93, 0x98, 0xdb, 0x04, 0xca, 0x35, 0x06, + 0x02, 0xf9, 0xd2, 0x6f, 0x44, 0x17, 0x3f, 0xdc, +}; +static const unsigned char kat3750_nonce[] = {0}; +static const unsigned char kat3750_persstr[] = {0}; +static const unsigned char kat3750_entropyinpr1[] = { + 0x34, 0x41, 0xcd, 0xa0, 0xda, 0x09, 0xa7, 0x2c, 0xab, 0xf7, 0xee, 0x1a, + 0xdb, 0xd4, 0xbf, 0x8c, 0x37, 0xf2, 0x53, 0x89, 0x0b, 0x4a, 0xc5, 0x90, + 0x74, 0xdf, 0x1d, 0x4c, 0x3e, 0x93, 0x0a, 0x24, +}; +static const unsigned char kat3750_addinpr1[] = { + 0xa1, 0x31, 0x56, 0x3c, 0x96, 0xbf, 0xd8, 0xa2, 0xfe, 0x05, 0xd8, 0x37, + 0x7d, 0xf2, 0xd3, 0xe4, 0xa7, 0x89, 0x96, 0x6c, 0x58, 0x18, 0x9f, 0x85, + 0xe0, 0xb1, 0x8e, 0xc2, 0xe2, 0xbf, 0x57, 0x61, +}; +static const unsigned char kat3750_entropyinpr2[] = { + 0xbc, 0xad, 0x22, 0x5d, 0x77, 0x9b, 0xd3, 0x65, 0x3a, 0x61, 0x6a, 0x8d, + 0x66, 0x70, 0x30, 0xc5, 0x56, 0x11, 0x7b, 0x2a, 0xdb, 0x88, 0xe4, 0xa6, + 0xa4, 0xe0, 0xd0, 0x56, 0x1a, 0xe9, 0x4f, 0x42, +}; +static const unsigned char kat3750_addinpr2[] = { + 0x4e, 0x6c, 0x1d, 0x08, 0x29, 0x17, 0xac, 0x9e, 0xda, 0x7f, 0x03, 0x2c, + 0x61, 0x86, 0x77, 0x36, 0xb5, 0xbe, 0x7b, 0x30, 0x45, 0x55, 0x5f, 0x6e, + 0xf1, 0x0c, 0x58, 0x48, 0x75, 0x6e, 0x66, 0x65, +}; +static const unsigned char kat3750_retbits[] = { + 0x14, 0xcf, 0x6f, 0xa5, 0xcf, 0xb8, 0xf9, 0xc7, 0x4a, 0xdd, 0x5b, 0x2d, + 0xca, 0x5e, 0x30, 0x39, 0x5a, 0x10, 0x45, 0xed, 0x1e, 0x1c, 0xf4, 0xe9, + 0x1c, 0xcb, 0xdf, 0x8a, 0xb8, 0x0d, 0x1c, 0x0f, 0x1d, 0x93, 0x48, 0x16, + 0x51, 0x53, 0x5e, 0x40, 0x89, 0x63, 0x8b, 0x04, 0xfd, 0xf9, 0x5f, 0x52, + 0xae, 0xc1, 0xff, 0xf6, 0x56, 0x5b, 0x21, 0xd8, 0xa2, 0xa3, 0x2e, 0xa8, + 0x14, 0x95, 0x24, 0x11, +}; +static const struct drbg_kat_pr_true kat3750_t = { + 14, kat3750_entropyin, kat3750_nonce, kat3750_persstr, + kat3750_entropyinpr1, kat3750_addinpr1, kat3750_entropyinpr2, + kat3750_addinpr2, kat3750_retbits +}; +static const struct drbg_kat kat3750 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3750_t +}; + +static const unsigned char kat3751_entropyin[] = { + 0x3c, 0x71, 0x78, 0xb3, 0x01, 0xa2, 0x08, 0x84, 0x7d, 0xd7, 0xa9, 0xbf, + 0x28, 0x07, 0x55, 0x7f, 0xcf, 0xb9, 0x3c, 0x70, 0xb9, 0x93, 0xba, 0x69, + 0x8e, 0x35, 0x5b, 0xcb, 0xbb, 0xbc, 0xe5, 0x77, +}; +static const unsigned char kat3751_nonce[] = {0}; +static const unsigned char kat3751_persstr[] = { + 0xdb, 0x8b, 0x9d, 0x57, 0xa3, 0x4b, 0xd4, 0x85, 0x23, 0x48, 0x0b, 0x8c, + 0x0b, 0xdc, 0x05, 0x15, 0x72, 0x46, 0x6d, 0x19, 0x8e, 0x6a, 0x4c, 0x22, + 0xeb, 0x2d, 0x47, 0xb0, 0x36, 0xd4, 0xca, 0xaf, +}; +static const unsigned char kat3751_entropyinpr1[] = { + 0x51, 0xf4, 0x9b, 0x7f, 0x2a, 0x28, 0xc2, 0xe3, 0x3b, 0x95, 0x4e, 0x07, + 0xb2, 0x34, 0x10, 0xa8, 0xd7, 0x0a, 0x71, 0xb8, 0x91, 0x9d, 0x13, 0xd9, + 0x93, 0x29, 0x47, 0x00, 0x41, 0x1e, 0x51, 0x13, +}; +static const unsigned char kat3751_addinpr1[] = {0}; +static const unsigned char kat3751_entropyinpr2[] = { + 0xac, 0xc0, 0xd4, 0xb4, 0x10, 0xf4, 0xd8, 0xc1, 0x08, 0xaa, 0x12, 0xe6, + 0xa0, 0x80, 0x85, 0x71, 0x9b, 0x8e, 0x19, 0x14, 0x22, 0xdd, 0x5a, 0xee, + 0x95, 0xa3, 0x39, 0xd1, 0xf6, 0x79, 0xb1, 0x1f, +}; +static const unsigned char kat3751_addinpr2[] = {0}; +static const unsigned char kat3751_retbits[] = { + 0x65, 0xfa, 0x48, 0x64, 0xfa, 0xb3, 0xd8, 0x83, 0xc2, 0x88, 0x36, 0xe0, + 0xe0, 0xa5, 0xb9, 0x4b, 0x50, 0x68, 0x90, 0x20, 0x1b, 0x30, 0x0e, 0xaf, + 0x60, 0x76, 0x15, 0xd6, 0xc0, 0x10, 0xd1, 0xd1, 0x5c, 0x05, 0x0d, 0xa9, + 0x66, 0x77, 0x4b, 0xfb, 0xc8, 0x86, 0x16, 0xbb, 0xf1, 0x63, 0x4a, 0xf0, + 0x6a, 0xeb, 0x63, 0xb2, 0x07, 0x83, 0x2d, 0x46, 0x42, 0x9d, 0x7c, 0xea, + 0x75, 0xe5, 0x1c, 0x27, +}; +static const struct drbg_kat_pr_true kat3751_t = { + 0, kat3751_entropyin, kat3751_nonce, kat3751_persstr, + kat3751_entropyinpr1, kat3751_addinpr1, kat3751_entropyinpr2, + kat3751_addinpr2, kat3751_retbits +}; +static const struct drbg_kat kat3751 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3751_t +}; + +static const unsigned char kat3752_entropyin[] = { + 0x0f, 0x49, 0x8f, 0xec, 0x87, 0xa7, 0x24, 0x88, 0x2c, 0x80, 0xf2, 0x2f, + 0x49, 0x99, 0x95, 0x5a, 0xb6, 0x3a, 0x9a, 0x53, 0xd9, 0x0c, 0xb3, 0x3e, + 0xc0, 0x26, 0xd7, 0xed, 0xb5, 0x62, 0x40, 0xd8, +}; +static const unsigned char kat3752_nonce[] = {0}; +static const unsigned char kat3752_persstr[] = { + 0x1d, 0x5c, 0x1b, 0x78, 0xca, 0xdc, 0xb2, 0x2f, 0x0c, 0x9e, 0x2d, 0xe0, + 0xff, 0x59, 0x37, 0x91, 0x8f, 0xba, 0xcb, 0x62, 0xee, 0xc1, 0x5c, 0x68, + 0x08, 0x05, 0xe6, 0x81, 0x95, 0x27, 0x79, 0xf6, +}; +static const unsigned char kat3752_entropyinpr1[] = { + 0x2e, 0x5b, 0xb4, 0x4b, 0x07, 0xad, 0x27, 0xbf, 0x16, 0x97, 0x83, 0xd7, + 0xbb, 0xf4, 0xfb, 0xbb, 0xbc, 0xe5, 0x39, 0xe2, 0xf5, 0x23, 0xd5, 0xce, + 0xb1, 0xd7, 0xbf, 0x1d, 0xda, 0x0d, 0xfd, 0xb3, +}; +static const unsigned char kat3752_addinpr1[] = {0}; +static const unsigned char kat3752_entropyinpr2[] = { + 0x88, 0xe2, 0xc9, 0x12, 0xa0, 0x11, 0x02, 0x66, 0xb9, 0xf5, 0xc3, 0xa6, + 0x18, 0x6c, 0x3d, 0xed, 0x6b, 0xb7, 0x34, 0xc5, 0xc4, 0x3d, 0x07, 0xd9, + 0x07, 0xdd, 0x4f, 0x83, 0x3f, 0xe1, 0x72, 0x92, +}; +static const unsigned char kat3752_addinpr2[] = {0}; +static const unsigned char kat3752_retbits[] = { + 0x51, 0x5d, 0x13, 0x45, 0x38, 0x41, 0xc0, 0xed, 0x3b, 0x0f, 0xb0, 0xa2, + 0xd7, 0x64, 0x60, 0xef, 0x88, 0x8c, 0x50, 0x5a, 0x72, 0x23, 0x36, 0x21, + 0xa7, 0x13, 0xb3, 0xb2, 0x0e, 0x39, 0xf6, 0x5c, 0x83, 0x8e, 0x9a, 0x1a, + 0xde, 0xd2, 0x7d, 0xba, 0x97, 0xaf, 0xcf, 0xb5, 0x77, 0xcc, 0x2c, 0x97, + 0xaa, 0x47, 0xe5, 0xf7, 0xc9, 0x32, 0x3f, 0x48, 0x82, 0x41, 0x17, 0x8d, + 0x64, 0xe8, 0x68, 0x72, +}; +static const struct drbg_kat_pr_true kat3752_t = { + 1, kat3752_entropyin, kat3752_nonce, kat3752_persstr, + kat3752_entropyinpr1, kat3752_addinpr1, kat3752_entropyinpr2, + kat3752_addinpr2, kat3752_retbits +}; +static const struct drbg_kat kat3752 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3752_t +}; + +static const unsigned char kat3753_entropyin[] = { + 0x28, 0xbe, 0x5b, 0xcc, 0x8e, 0xeb, 0xac, 0xd6, 0x53, 0x84, 0x0b, 0x34, + 0xbb, 0xf1, 0x5a, 0xb4, 0x63, 0xa7, 0x97, 0xe0, 0x7d, 0xad, 0xa1, 0xab, + 0xf3, 0x4c, 0x1d, 0xd8, 0x22, 0x7c, 0x55, 0x5b, +}; +static const unsigned char kat3753_nonce[] = {0}; +static const unsigned char kat3753_persstr[] = { + 0xba, 0x7d, 0x78, 0xbc, 0x7a, 0xb9, 0xb4, 0x9c, 0x27, 0x4e, 0xd3, 0x3a, + 0xc9, 0xce, 0xa0, 0x32, 0xa7, 0xef, 0x8e, 0x44, 0x13, 0x89, 0xfe, 0xa8, + 0x9f, 0xa7, 0x4c, 0x5d, 0x6e, 0xf3, 0x66, 0x9e, +}; +static const unsigned char kat3753_entropyinpr1[] = { + 0xeb, 0xf6, 0x58, 0xca, 0x70, 0xdf, 0xfd, 0xf7, 0xd5, 0xf2, 0x32, 0x32, + 0x0a, 0xd1, 0xcc, 0xa7, 0xcf, 0x08, 0x0e, 0x5a, 0xab, 0xa5, 0x25, 0x04, + 0xc7, 0xd4, 0xa6, 0x55, 0xe5, 0x12, 0xcf, 0xb7, +}; +static const unsigned char kat3753_addinpr1[] = {0}; +static const unsigned char kat3753_entropyinpr2[] = { + 0xfa, 0xe4, 0x1b, 0x02, 0x43, 0xe9, 0x38, 0x42, 0x22, 0x86, 0xb1, 0x28, + 0x0c, 0x91, 0xcc, 0xf3, 0xb3, 0x71, 0x65, 0x19, 0x4b, 0x42, 0x88, 0x99, + 0x85, 0xa9, 0x9d, 0xc4, 0x57, 0xeb, 0xb4, 0x49, +}; +static const unsigned char kat3753_addinpr2[] = {0}; +static const unsigned char kat3753_retbits[] = { + 0xf8, 0x39, 0xaf, 0xce, 0x9c, 0x99, 0xaf, 0x94, 0x8e, 0x6c, 0xe7, 0x53, + 0x08, 0x39, 0x3a, 0x43, 0x71, 0xc6, 0x48, 0xa6, 0xc7, 0x94, 0x18, 0x27, + 0x2e, 0xa5, 0xf2, 0x75, 0x43, 0x8e, 0x65, 0xcb, 0x9b, 0x6e, 0x48, 0xf8, + 0xaa, 0x44, 0x60, 0x74, 0x8c, 0xde, 0x38, 0x0e, 0x02, 0xd6, 0xc2, 0x73, + 0x5a, 0x68, 0x6a, 0x86, 0xdd, 0xd5, 0xb9, 0x5a, 0xd7, 0xd6, 0x91, 0x15, + 0x5a, 0x7b, 0x3c, 0x50, +}; +static const struct drbg_kat_pr_true kat3753_t = { + 2, kat3753_entropyin, kat3753_nonce, kat3753_persstr, + kat3753_entropyinpr1, kat3753_addinpr1, kat3753_entropyinpr2, + kat3753_addinpr2, kat3753_retbits +}; +static const struct drbg_kat kat3753 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3753_t +}; + +static const unsigned char kat3754_entropyin[] = { + 0x69, 0xc1, 0x87, 0x5a, 0x4b, 0xe9, 0x2c, 0x22, 0x47, 0x6b, 0x04, 0xcc, + 0xa2, 0x4f, 0x6e, 0x88, 0x57, 0x15, 0xb0, 0xe5, 0x3a, 0x93, 0xfd, 0x88, + 0xb8, 0xd6, 0xe7, 0xf2, 0xf1, 0x5d, 0x51, 0x68, +}; +static const unsigned char kat3754_nonce[] = {0}; +static const unsigned char kat3754_persstr[] = { + 0x88, 0x59, 0x8f, 0x5b, 0xe9, 0xb0, 0x9f, 0x21, 0xd9, 0x54, 0x2f, 0x99, + 0x38, 0xb1, 0x58, 0x91, 0xd3, 0x87, 0xb3, 0x2a, 0x56, 0x1f, 0xbe, 0x7e, + 0xfc, 0x19, 0x6d, 0xba, 0x24, 0x39, 0xa9, 0xbb, +}; +static const unsigned char kat3754_entropyinpr1[] = { + 0x20, 0xf5, 0xee, 0x39, 0xaf, 0x10, 0x42, 0xab, 0x05, 0x48, 0xc5, 0x19, + 0x65, 0x6d, 0x6b, 0x58, 0x33, 0xed, 0xde, 0xeb, 0x79, 0xc8, 0x1a, 0x64, + 0xc8, 0x2a, 0x2f, 0xaa, 0xf7, 0xe2, 0xc3, 0xf1, +}; +static const unsigned char kat3754_addinpr1[] = {0}; +static const unsigned char kat3754_entropyinpr2[] = { + 0x7b, 0x78, 0x27, 0xea, 0xbc, 0x68, 0x6a, 0xdc, 0xdb, 0xa8, 0x1c, 0xc5, + 0x3a, 0x27, 0xd4, 0xe5, 0x7f, 0xbe, 0x6c, 0x29, 0xa2, 0x88, 0xe4, 0x60, + 0xc5, 0x7a, 0x67, 0xd2, 0xdc, 0xb6, 0x6f, 0x93, +}; +static const unsigned char kat3754_addinpr2[] = {0}; +static const unsigned char kat3754_retbits[] = { + 0x9b, 0xd4, 0x82, 0xe4, 0xa2, 0xb3, 0x2b, 0x13, 0x38, 0x9f, 0x4d, 0x38, + 0x60, 0x9e, 0x80, 0xf2, 0x7a, 0x74, 0xee, 0x44, 0x6c, 0x08, 0xb9, 0xea, + 0x2b, 0xf4, 0x35, 0xfc, 0x87, 0xab, 0x7c, 0xa9, 0x03, 0x1a, 0x5c, 0xfc, + 0x92, 0x4c, 0x8c, 0xf3, 0x60, 0x75, 0xc5, 0xfe, 0x96, 0xae, 0x0a, 0x45, + 0xbf, 0x42, 0x42, 0x34, 0xb8, 0xdb, 0x2a, 0x5e, 0x9c, 0xa7, 0xd3, 0x06, + 0xdc, 0xa8, 0xae, 0x40, +}; +static const struct drbg_kat_pr_true kat3754_t = { + 3, kat3754_entropyin, kat3754_nonce, kat3754_persstr, + kat3754_entropyinpr1, kat3754_addinpr1, kat3754_entropyinpr2, + kat3754_addinpr2, kat3754_retbits +}; +static const struct drbg_kat kat3754 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3754_t +}; + +static const unsigned char kat3755_entropyin[] = { + 0xaf, 0x6d, 0xe3, 0xf8, 0x45, 0x5a, 0xc4, 0x08, 0x94, 0x48, 0x8e, 0xdb, + 0x8c, 0x60, 0x39, 0x30, 0x53, 0x74, 0x26, 0xeb, 0xe4, 0x6d, 0x03, 0x3b, + 0x5a, 0xa4, 0xf9, 0xf2, 0x54, 0x7e, 0x5e, 0x6e, +}; +static const unsigned char kat3755_nonce[] = {0}; +static const unsigned char kat3755_persstr[] = { + 0x16, 0x5d, 0x53, 0xa1, 0x7b, 0xf8, 0xc2, 0x81, 0x3d, 0xa5, 0x98, 0x64, + 0x53, 0x13, 0xdc, 0x63, 0x8f, 0xb7, 0x33, 0xaf, 0x65, 0x19, 0x0f, 0x24, + 0x86, 0xd1, 0x16, 0x16, 0x30, 0x70, 0xef, 0x4f, +}; +static const unsigned char kat3755_entropyinpr1[] = { + 0xa5, 0xa4, 0x6c, 0xb3, 0xaa, 0x60, 0xed, 0x5c, 0xb9, 0xc8, 0x2c, 0x25, + 0x41, 0x78, 0xc8, 0x41, 0x15, 0x08, 0x01, 0x6a, 0x81, 0x43, 0x81, 0xd0, + 0x90, 0x9d, 0x21, 0x6b, 0xe9, 0xad, 0x6c, 0x45, +}; +static const unsigned char kat3755_addinpr1[] = {0}; +static const unsigned char kat3755_entropyinpr2[] = { + 0xfc, 0xc8, 0x56, 0x54, 0xcd, 0xbe, 0x07, 0x54, 0x1b, 0x8a, 0xf9, 0x98, + 0x9d, 0x88, 0x75, 0x98, 0xc2, 0x2a, 0xd3, 0xed, 0xcf, 0xa1, 0xc7, 0x54, + 0x6c, 0xc5, 0x8a, 0xa6, 0x10, 0xce, 0x81, 0xff, +}; +static const unsigned char kat3755_addinpr2[] = {0}; +static const unsigned char kat3755_retbits[] = { + 0xbc, 0xbd, 0xce, 0x92, 0x49, 0x3a, 0x23, 0x45, 0xcb, 0x0a, 0xbe, 0x13, + 0xfc, 0x4e, 0x2d, 0x90, 0x88, 0xf6, 0x1c, 0x28, 0xf7, 0x25, 0x6b, 0x5a, + 0xf6, 0x50, 0x40, 0x4c, 0x21, 0xa4, 0x18, 0x10, 0xeb, 0x19, 0x2d, 0x7f, + 0x0f, 0x4d, 0x44, 0x9a, 0x0a, 0x9c, 0x60, 0x5f, 0x3f, 0x07, 0xc2, 0x76, + 0x91, 0x63, 0x95, 0x0b, 0x5e, 0xdb, 0x33, 0xaa, 0x68, 0xdd, 0xb8, 0x96, + 0x99, 0x27, 0xb0, 0x38, +}; +static const struct drbg_kat_pr_true kat3755_t = { + 4, kat3755_entropyin, kat3755_nonce, kat3755_persstr, + kat3755_entropyinpr1, kat3755_addinpr1, kat3755_entropyinpr2, + kat3755_addinpr2, kat3755_retbits +}; +static const struct drbg_kat kat3755 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3755_t +}; + +static const unsigned char kat3756_entropyin[] = { + 0x74, 0xad, 0x98, 0x3b, 0x7d, 0xaf, 0x0a, 0xaf, 0xab, 0x1b, 0x2a, 0x14, + 0x10, 0x5e, 0x74, 0x55, 0xd3, 0xbc, 0x66, 0x7f, 0xd3, 0x3b, 0x20, 0xbc, + 0x09, 0xa6, 0xea, 0xd4, 0xf6, 0xd5, 0x5d, 0xd2, +}; +static const unsigned char kat3756_nonce[] = {0}; +static const unsigned char kat3756_persstr[] = { + 0xab, 0xa2, 0xf2, 0x4b, 0xa9, 0x42, 0x1b, 0xec, 0x5e, 0xa8, 0x40, 0x1b, + 0x31, 0xdd, 0xf7, 0x74, 0xc3, 0x6c, 0x52, 0x1b, 0x4b, 0xb2, 0x54, 0x9d, + 0xf4, 0x7f, 0x6c, 0xa8, 0x2f, 0x20, 0xa4, 0x41, +}; +static const unsigned char kat3756_entropyinpr1[] = { + 0xb0, 0x81, 0x35, 0x49, 0x8d, 0x4a, 0x43, 0xbf, 0x55, 0x71, 0x23, 0x3c, + 0x09, 0x05, 0xe7, 0x3d, 0x0e, 0x1b, 0xa0, 0xc3, 0x97, 0x7a, 0x0c, 0x27, + 0x36, 0x71, 0x33, 0x73, 0x90, 0xcb, 0xa4, 0x9b, +}; +static const unsigned char kat3756_addinpr1[] = {0}; +static const unsigned char kat3756_entropyinpr2[] = { + 0x26, 0x7e, 0x0a, 0x11, 0xdc, 0x59, 0x3a, 0xc1, 0x7c, 0x45, 0xab, 0x28, + 0x61, 0x92, 0x51, 0x6d, 0xd7, 0xf7, 0x55, 0x4f, 0x80, 0x3f, 0x8b, 0x3e, + 0x31, 0x00, 0x21, 0x90, 0xc9, 0x8e, 0x7a, 0x33, +}; +static const unsigned char kat3756_addinpr2[] = {0}; +static const unsigned char kat3756_retbits[] = { + 0xbc, 0xf3, 0x99, 0x80, 0x48, 0xc7, 0x2f, 0x0f, 0x04, 0x00, 0x29, 0xf1, + 0x64, 0xe0, 0x13, 0x53, 0x9b, 0xb3, 0x49, 0x5d, 0x05, 0x35, 0xb5, 0x43, + 0xd0, 0xfd, 0xa2, 0xb3, 0x10, 0xd5, 0xc3, 0xc2, 0xcb, 0xf7, 0x46, 0xca, + 0xca, 0x20, 0xb7, 0xd6, 0xb0, 0x3c, 0x87, 0x5c, 0x8d, 0x1b, 0x0b, 0xe0, + 0xde, 0x93, 0xdd, 0x1b, 0xfe, 0x9e, 0xe1, 0x7b, 0x0f, 0x21, 0x4f, 0xba, + 0x65, 0xf6, 0x6d, 0x58, +}; +static const struct drbg_kat_pr_true kat3756_t = { + 5, kat3756_entropyin, kat3756_nonce, kat3756_persstr, + kat3756_entropyinpr1, kat3756_addinpr1, kat3756_entropyinpr2, + kat3756_addinpr2, kat3756_retbits +}; +static const struct drbg_kat kat3756 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3756_t +}; + +static const unsigned char kat3757_entropyin[] = { + 0xed, 0x60, 0x67, 0xf9, 0xbd, 0xe1, 0x69, 0x78, 0x0b, 0x55, 0x5c, 0x83, + 0xa1, 0x8f, 0xb1, 0x6e, 0x02, 0xc8, 0x5d, 0x1d, 0xf6, 0xb6, 0x8a, 0x2d, + 0x91, 0xa1, 0xd1, 0xde, 0xd4, 0xe8, 0x96, 0xb8, +}; +static const unsigned char kat3757_nonce[] = {0}; +static const unsigned char kat3757_persstr[] = { + 0xf1, 0x60, 0xe7, 0x79, 0x1d, 0x87, 0x1b, 0x85, 0x59, 0xf4, 0xb0, 0xf8, + 0x00, 0xca, 0xf9, 0xa2, 0xd2, 0x3c, 0xa3, 0x05, 0xb6, 0x75, 0x7c, 0x7e, + 0xea, 0xe5, 0xbe, 0xae, 0x51, 0x95, 0x81, 0x4d, +}; +static const unsigned char kat3757_entropyinpr1[] = { + 0x94, 0xaa, 0x96, 0x0f, 0x12, 0x84, 0x5e, 0x8f, 0xa0, 0x83, 0xd7, 0xce, + 0xba, 0xc2, 0xfb, 0xdb, 0xab, 0x6c, 0xa3, 0xc1, 0x53, 0x0f, 0x58, 0x32, + 0xfa, 0xc1, 0x89, 0x6f, 0x51, 0xdb, 0x4c, 0xaf, +}; +static const unsigned char kat3757_addinpr1[] = {0}; +static const unsigned char kat3757_entropyinpr2[] = { + 0xa8, 0x62, 0x21, 0xc6, 0xb0, 0xcf, 0x66, 0x5c, 0x0e, 0xbc, 0x62, 0x96, + 0x68, 0xcd, 0xbe, 0x7b, 0x6c, 0xe7, 0x56, 0xd1, 0x54, 0xfa, 0x36, 0x2e, + 0xb5, 0x90, 0xf6, 0x55, 0xa1, 0x37, 0x68, 0xdd, +}; +static const unsigned char kat3757_addinpr2[] = {0}; +static const unsigned char kat3757_retbits[] = { + 0xd0, 0x66, 0x63, 0xdf, 0x3f, 0x96, 0xf4, 0x8c, 0x29, 0x5c, 0x68, 0xe8, + 0xdb, 0x5f, 0xa5, 0xb5, 0x90, 0x09, 0xde, 0x65, 0xbb, 0x30, 0x8b, 0x7c, + 0x84, 0xb7, 0xc4, 0xe7, 0x24, 0xe3, 0x75, 0x08, 0x5f, 0xdb, 0xd5, 0xb0, + 0x53, 0xe9, 0x17, 0x13, 0x61, 0x2f, 0x47, 0xd8, 0x7f, 0x40, 0xee, 0x6a, + 0x04, 0xe7, 0xb0, 0x7f, 0x28, 0x40, 0xf3, 0x14, 0x09, 0x59, 0xd7, 0x8c, + 0xab, 0xe0, 0x2a, 0xe2, +}; +static const struct drbg_kat_pr_true kat3757_t = { + 6, kat3757_entropyin, kat3757_nonce, kat3757_persstr, + kat3757_entropyinpr1, kat3757_addinpr1, kat3757_entropyinpr2, + kat3757_addinpr2, kat3757_retbits +}; +static const struct drbg_kat kat3757 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3757_t +}; + +static const unsigned char kat3758_entropyin[] = { + 0xd4, 0xad, 0x97, 0x5a, 0xa3, 0x8e, 0xd4, 0xf4, 0xba, 0x2d, 0xde, 0x6d, + 0x7e, 0x2a, 0x0c, 0xb6, 0x9f, 0x1d, 0xc3, 0xef, 0xa9, 0x43, 0x32, 0x7c, + 0xe5, 0xfc, 0xa8, 0x2b, 0x0a, 0xf5, 0x9d, 0x04, +}; +static const unsigned char kat3758_nonce[] = {0}; +static const unsigned char kat3758_persstr[] = { + 0xff, 0x88, 0x4c, 0x91, 0xfa, 0x00, 0x5e, 0xfc, 0x94, 0xfa, 0x9e, 0x74, + 0x25, 0x84, 0x72, 0xd8, 0x88, 0xe9, 0x22, 0x09, 0x99, 0xb6, 0xcd, 0xb8, + 0xb8, 0x93, 0x04, 0xe7, 0xf6, 0xfc, 0x56, 0x90, +}; +static const unsigned char kat3758_entropyinpr1[] = { + 0xd0, 0x0b, 0x53, 0xdc, 0x12, 0x0a, 0xdf, 0x30, 0x6a, 0x97, 0x23, 0xdc, + 0x1b, 0x76, 0xce, 0xf0, 0xf5, 0x9b, 0x29, 0x4f, 0xb4, 0x13, 0xc2, 0x04, + 0x12, 0xb2, 0xd0, 0x81, 0xee, 0xef, 0xc5, 0xbe, +}; +static const unsigned char kat3758_addinpr1[] = {0}; +static const unsigned char kat3758_entropyinpr2[] = { + 0x57, 0xdf, 0x07, 0x19, 0x2f, 0x04, 0xd6, 0x11, 0x31, 0x30, 0xee, 0x3c, + 0x1c, 0x23, 0x0d, 0xcb, 0x29, 0x2e, 0xbe, 0xe8, 0x54, 0x76, 0xa5, 0xdd, + 0xf5, 0xc2, 0xe6, 0xad, 0xcb, 0xab, 0xd7, 0x98, +}; +static const unsigned char kat3758_addinpr2[] = {0}; +static const unsigned char kat3758_retbits[] = { + 0xb3, 0xdc, 0xa2, 0x41, 0xa1, 0x04, 0x07, 0x92, 0x60, 0x93, 0x4c, 0x74, + 0x14, 0x4f, 0x85, 0x0a, 0x1a, 0x54, 0x96, 0xf8, 0xba, 0x25, 0x9f, 0x9a, + 0x20, 0x66, 0x44, 0xd0, 0x44, 0x26, 0x75, 0xbe, 0x29, 0x39, 0x2b, 0xcd, + 0x1b, 0xca, 0x6e, 0xc1, 0x47, 0x25, 0x6a, 0xf7, 0x17, 0x67, 0x39, 0x37, + 0xa3, 0xdb, 0x81, 0x9c, 0x23, 0x42, 0x30, 0xef, 0xee, 0x6d, 0x71, 0x1b, + 0xcb, 0x84, 0xc2, 0x31, +}; +static const struct drbg_kat_pr_true kat3758_t = { + 7, kat3758_entropyin, kat3758_nonce, kat3758_persstr, + kat3758_entropyinpr1, kat3758_addinpr1, kat3758_entropyinpr2, + kat3758_addinpr2, kat3758_retbits +}; +static const struct drbg_kat kat3758 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3758_t +}; + +static const unsigned char kat3759_entropyin[] = { + 0xa5, 0x65, 0xe9, 0x0b, 0xbf, 0xe0, 0x1f, 0xac, 0x6c, 0xcf, 0xb5, 0xae, + 0x7d, 0x7b, 0x0d, 0x3f, 0xb2, 0x7d, 0xd2, 0xaf, 0xf1, 0xd6, 0x80, 0x69, + 0xdd, 0x38, 0x1e, 0x63, 0xab, 0x71, 0x3d, 0xae, +}; +static const unsigned char kat3759_nonce[] = {0}; +static const unsigned char kat3759_persstr[] = { + 0x18, 0x6b, 0x27, 0x99, 0xce, 0xd8, 0x1d, 0x4c, 0xf9, 0x56, 0xe4, 0x50, + 0xbb, 0x1c, 0x8f, 0x75, 0x7c, 0x67, 0x8a, 0x05, 0x72, 0x0d, 0xa7, 0x6c, + 0x43, 0x80, 0x81, 0x3e, 0x31, 0x2f, 0xaf, 0x0a, +}; +static const unsigned char kat3759_entropyinpr1[] = { + 0x33, 0xbb, 0xa3, 0x56, 0x09, 0x6e, 0x75, 0xd5, 0x75, 0x81, 0x93, 0x93, + 0xff, 0xa2, 0x41, 0xb9, 0x38, 0x29, 0x20, 0x93, 0xff, 0xd9, 0x8d, 0x66, + 0x35, 0xb8, 0x4d, 0xb2, 0xec, 0x5a, 0x2e, 0x74, +}; +static const unsigned char kat3759_addinpr1[] = {0}; +static const unsigned char kat3759_entropyinpr2[] = { + 0xf1, 0xbf, 0x05, 0x16, 0x48, 0x44, 0xf1, 0x40, 0xea, 0x2f, 0x14, 0xed, + 0xe5, 0xe1, 0x89, 0xf8, 0xf8, 0xc7, 0x7a, 0x63, 0xf0, 0x5f, 0x45, 0x81, + 0x16, 0x0a, 0x56, 0x38, 0xf7, 0x02, 0x06, 0x25, +}; +static const unsigned char kat3759_addinpr2[] = {0}; +static const unsigned char kat3759_retbits[] = { + 0x78, 0x98, 0x92, 0x6b, 0x73, 0x6b, 0x4f, 0x8d, 0x51, 0x33, 0x83, 0x8b, + 0x58, 0x82, 0xd3, 0x71, 0xd5, 0x62, 0x35, 0x30, 0x3b, 0xfb, 0x50, 0x2f, + 0x1d, 0x20, 0xf8, 0x2e, 0xc9, 0x56, 0x94, 0x4c, 0x80, 0xbf, 0xbe, 0x84, + 0xff, 0x9c, 0xd9, 0x6a, 0x5a, 0x8c, 0xc4, 0x0d, 0x62, 0x91, 0x41, 0x99, + 0x78, 0x45, 0xd9, 0xd6, 0x12, 0x8d, 0xd7, 0xd5, 0xdc, 0x68, 0x9f, 0x17, + 0x6a, 0x50, 0xbc, 0x47, +}; +static const struct drbg_kat_pr_true kat3759_t = { + 8, kat3759_entropyin, kat3759_nonce, kat3759_persstr, + kat3759_entropyinpr1, kat3759_addinpr1, kat3759_entropyinpr2, + kat3759_addinpr2, kat3759_retbits +}; +static const struct drbg_kat kat3759 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3759_t +}; + +static const unsigned char kat3760_entropyin[] = { + 0x0f, 0x8d, 0xef, 0xcd, 0x0a, 0xac, 0xd1, 0xf9, 0xb1, 0x80, 0xfd, 0x1e, + 0x34, 0x0f, 0xf9, 0xb5, 0x5b, 0x62, 0xbd, 0x54, 0xd5, 0x73, 0x6e, 0xb5, + 0xad, 0x5a, 0xe1, 0x42, 0x33, 0x6f, 0x0a, 0xb9, +}; +static const unsigned char kat3760_nonce[] = {0}; +static const unsigned char kat3760_persstr[] = { + 0xf6, 0x86, 0x6b, 0x6b, 0xad, 0x1a, 0xcf, 0xe4, 0x3c, 0x3c, 0xce, 0x9c, + 0xe6, 0x2b, 0x44, 0x12, 0xf5, 0x1b, 0xec, 0x73, 0x70, 0xdb, 0xb1, 0xc4, + 0x66, 0x78, 0x6b, 0x57, 0x07, 0xcb, 0x24, 0xee, +}; +static const unsigned char kat3760_entropyinpr1[] = { + 0x9d, 0x69, 0x0b, 0x9b, 0x71, 0xe3, 0x10, 0xef, 0x15, 0x65, 0x3a, 0x3f, + 0x1f, 0xae, 0x1c, 0x36, 0x62, 0x7a, 0x20, 0x13, 0xa0, 0xac, 0xa6, 0xde, + 0xf3, 0xa0, 0x92, 0x8e, 0x45, 0xfd, 0xc1, 0xbf, +}; +static const unsigned char kat3760_addinpr1[] = {0}; +static const unsigned char kat3760_entropyinpr2[] = { + 0xdf, 0x62, 0xe6, 0xef, 0x16, 0x7d, 0x06, 0xa9, 0x7f, 0xc2, 0x81, 0x9b, + 0x47, 0xe5, 0x1f, 0x38, 0xc9, 0xf9, 0x57, 0x2e, 0xcb, 0x2c, 0x7e, 0xb0, + 0xe7, 0x56, 0x9b, 0xda, 0xc5, 0xe9, 0xd9, 0xfb, +}; +static const unsigned char kat3760_addinpr2[] = {0}; +static const unsigned char kat3760_retbits[] = { + 0x06, 0xcc, 0x71, 0xa0, 0xe7, 0x2a, 0x34, 0x26, 0xc6, 0x21, 0xeb, 0xd6, + 0xb6, 0xb2, 0x80, 0x0b, 0xb1, 0x11, 0x67, 0xb8, 0xfd, 0xd0, 0xa0, 0xd7, + 0x37, 0xb4, 0x45, 0x62, 0x9f, 0x5c, 0x2f, 0x9c, 0x68, 0x24, 0xad, 0x53, + 0x34, 0xed, 0x3f, 0x8c, 0x98, 0x25, 0x51, 0xfd, 0xea, 0x6d, 0xf1, 0xa1, + 0x13, 0xf8, 0x42, 0x94, 0xbd, 0x14, 0x80, 0x33, 0xba, 0x83, 0x09, 0xe2, + 0x4f, 0x00, 0xfd, 0xc3, +}; +static const struct drbg_kat_pr_true kat3760_t = { + 9, kat3760_entropyin, kat3760_nonce, kat3760_persstr, + kat3760_entropyinpr1, kat3760_addinpr1, kat3760_entropyinpr2, + kat3760_addinpr2, kat3760_retbits +}; +static const struct drbg_kat kat3760 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3760_t +}; + +static const unsigned char kat3761_entropyin[] = { + 0x90, 0x48, 0xf0, 0x0f, 0xce, 0x43, 0xac, 0x12, 0x61, 0x2c, 0x59, 0x52, + 0xf9, 0x93, 0xea, 0xf5, 0xde, 0x58, 0x25, 0x78, 0x5a, 0x1e, 0x2e, 0x17, + 0x91, 0x06, 0x3a, 0x6c, 0xb8, 0x34, 0x8c, 0xce, +}; +static const unsigned char kat3761_nonce[] = {0}; +static const unsigned char kat3761_persstr[] = { + 0xd3, 0xdf, 0xf5, 0x21, 0x54, 0x1b, 0xbf, 0xc1, 0x97, 0x10, 0x52, 0x8a, + 0x3a, 0x53, 0xc3, 0xd9, 0x3e, 0x45, 0x4b, 0x17, 0x0d, 0x77, 0x0a, 0x17, + 0x99, 0xfa, 0x47, 0x2d, 0x66, 0x4b, 0x11, 0xf2, +}; +static const unsigned char kat3761_entropyinpr1[] = { + 0x00, 0x87, 0xa1, 0x7f, 0x43, 0x22, 0x91, 0x6d, 0x29, 0x3a, 0xca, 0x7d, + 0xdd, 0xe9, 0xb5, 0xd6, 0x1f, 0xda, 0x92, 0x4d, 0xb8, 0xfd, 0x13, 0xd4, + 0xd3, 0x86, 0x43, 0x8f, 0x66, 0xba, 0xcc, 0xe9, +}; +static const unsigned char kat3761_addinpr1[] = {0}; +static const unsigned char kat3761_entropyinpr2[] = { + 0x3a, 0x94, 0xfa, 0x99, 0x94, 0xbf, 0x84, 0xd5, 0x0f, 0x39, 0x9e, 0x7b, + 0x58, 0x9e, 0x34, 0x5d, 0xdd, 0x59, 0xbf, 0x7d, 0xb5, 0x86, 0x7a, 0x9d, + 0x96, 0x13, 0x11, 0x19, 0xf4, 0x3b, 0xf4, 0xaa, +}; +static const unsigned char kat3761_addinpr2[] = {0}; +static const unsigned char kat3761_retbits[] = { + 0x59, 0x5d, 0x6a, 0x04, 0x79, 0x31, 0xe5, 0xe0, 0x0d, 0xc1, 0x27, 0x24, + 0xf1, 0x4c, 0x37, 0xc4, 0x92, 0x8d, 0x15, 0xac, 0xff, 0x6f, 0x86, 0xa3, + 0x17, 0xf6, 0x54, 0x33, 0x43, 0x92, 0xba, 0x65, 0xbf, 0xfa, 0x35, 0xfd, + 0x2d, 0x08, 0xd4, 0xdf, 0x1b, 0xb5, 0x86, 0x57, 0xa2, 0x09, 0x05, 0xac, + 0x33, 0x1f, 0xbc, 0x8d, 0x61, 0x1e, 0x86, 0x14, 0xec, 0x46, 0xfb, 0xa5, + 0x59, 0x60, 0xc7, 0x3c, +}; +static const struct drbg_kat_pr_true kat3761_t = { + 10, kat3761_entropyin, kat3761_nonce, kat3761_persstr, + kat3761_entropyinpr1, kat3761_addinpr1, kat3761_entropyinpr2, + kat3761_addinpr2, kat3761_retbits +}; +static const struct drbg_kat kat3761 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3761_t +}; + +static const unsigned char kat3762_entropyin[] = { + 0xb6, 0xc3, 0x12, 0x56, 0xc0, 0x41, 0x2e, 0x6b, 0x00, 0x22, 0xd3, 0xe1, + 0x21, 0x71, 0x0c, 0xf3, 0xcf, 0xc4, 0x8d, 0x5e, 0x6e, 0xd7, 0xb3, 0xfe, + 0x7b, 0x5b, 0xfc, 0x9e, 0xd8, 0x08, 0x2b, 0x7f, +}; +static const unsigned char kat3762_nonce[] = {0}; +static const unsigned char kat3762_persstr[] = { + 0xe8, 0x85, 0xf7, 0x98, 0x94, 0xbc, 0x2f, 0x20, 0x81, 0x2a, 0x8a, 0x18, + 0x7c, 0xc9, 0x99, 0x20, 0x01, 0xf9, 0xb3, 0xb3, 0x71, 0x35, 0x87, 0x61, + 0xdc, 0xd9, 0xb9, 0x73, 0x73, 0x60, 0x2c, 0xaa, +}; +static const unsigned char kat3762_entropyinpr1[] = { + 0xbd, 0x7e, 0xb9, 0x3c, 0x4f, 0xc3, 0x70, 0x0f, 0x1f, 0x7c, 0xcf, 0xf1, + 0xae, 0x9a, 0x19, 0xae, 0x62, 0x1b, 0xbb, 0xe4, 0x3d, 0x1b, 0x75, 0x28, + 0x75, 0x2a, 0xe8, 0x7f, 0x78, 0xe7, 0x69, 0x25, +}; +static const unsigned char kat3762_addinpr1[] = {0}; +static const unsigned char kat3762_entropyinpr2[] = { + 0xe0, 0xad, 0x35, 0x3d, 0x29, 0xdb, 0x22, 0x3f, 0x3c, 0xab, 0xa6, 0x4f, + 0xeb, 0x9a, 0x91, 0xd5, 0x74, 0xbb, 0x67, 0xc0, 0xd8, 0x77, 0xeb, 0xbe, + 0xff, 0x60, 0xd5, 0x57, 0xa7, 0xee, 0x92, 0xca, +}; +static const unsigned char kat3762_addinpr2[] = {0}; +static const unsigned char kat3762_retbits[] = { + 0x82, 0x07, 0x42, 0x5c, 0x7b, 0x99, 0x6a, 0xbd, 0x8e, 0xc2, 0x3d, 0xfe, + 0xad, 0xf4, 0x29, 0x67, 0x6b, 0x55, 0x19, 0x4c, 0xf9, 0xdd, 0x7e, 0x39, + 0x7b, 0x36, 0x17, 0x43, 0x33, 0xd5, 0xc6, 0xaf, 0x58, 0x25, 0x76, 0xa4, + 0x66, 0xeb, 0xf3, 0xa3, 0x74, 0x31, 0x1e, 0x51, 0x3f, 0x2d, 0xbd, 0xe5, + 0x18, 0xda, 0xe9, 0x10, 0xcd, 0xb4, 0x9c, 0x4a, 0xfa, 0x27, 0x8e, 0x38, + 0x1d, 0x38, 0xaf, 0x0d, +}; +static const struct drbg_kat_pr_true kat3762_t = { + 11, kat3762_entropyin, kat3762_nonce, kat3762_persstr, + kat3762_entropyinpr1, kat3762_addinpr1, kat3762_entropyinpr2, + kat3762_addinpr2, kat3762_retbits +}; +static const struct drbg_kat kat3762 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3762_t +}; + +static const unsigned char kat3763_entropyin[] = { + 0x3d, 0xf3, 0xf2, 0x2e, 0x70, 0xab, 0x49, 0x65, 0x80, 0xbb, 0x4c, 0xda, + 0xb8, 0x2c, 0x74, 0x9e, 0xb9, 0x54, 0x95, 0x8f, 0xef, 0xba, 0xa4, 0x0a, + 0xf2, 0x31, 0x0b, 0x73, 0xb0, 0xed, 0x0d, 0x94, +}; +static const unsigned char kat3763_nonce[] = {0}; +static const unsigned char kat3763_persstr[] = { + 0xb8, 0x7b, 0xfd, 0x75, 0x8d, 0x8f, 0x36, 0x4f, 0x0b, 0x33, 0x6a, 0x0f, + 0xcc, 0x06, 0x92, 0xe8, 0x07, 0x50, 0x7c, 0x2a, 0xb8, 0xc0, 0x40, 0xa8, + 0xd2, 0xea, 0xa1, 0xef, 0xfa, 0xb7, 0xc9, 0x2f, +}; +static const unsigned char kat3763_entropyinpr1[] = { + 0x13, 0xc4, 0x07, 0x2a, 0x34, 0xcc, 0x13, 0x05, 0x55, 0x5a, 0xbb, 0x1f, + 0xc9, 0x61, 0xf7, 0xfc, 0xca, 0x4d, 0x38, 0x9a, 0x35, 0x5f, 0xa3, 0x64, + 0xa7, 0x12, 0xe5, 0x85, 0xc1, 0x5c, 0x05, 0xce, +}; +static const unsigned char kat3763_addinpr1[] = {0}; +static const unsigned char kat3763_entropyinpr2[] = { + 0x09, 0xc0, 0x21, 0xf8, 0xa8, 0x16, 0xe6, 0xf6, 0x16, 0x97, 0xa5, 0xb2, + 0x33, 0xd4, 0xa6, 0x64, 0xdd, 0xe2, 0xfd, 0x67, 0x8a, 0x61, 0x71, 0x7e, + 0x31, 0x08, 0xf6, 0x47, 0xc4, 0x30, 0xc1, 0x2c, +}; +static const unsigned char kat3763_addinpr2[] = {0}; +static const unsigned char kat3763_retbits[] = { + 0xe2, 0x6a, 0x38, 0xfd, 0x0e, 0x4f, 0xbe, 0x95, 0xc4, 0x14, 0xdd, 0x60, + 0x00, 0xa2, 0xc7, 0x54, 0x4a, 0x5f, 0x59, 0xe0, 0x05, 0x29, 0x1c, 0x03, + 0xfe, 0x61, 0xbe, 0xa8, 0x5d, 0xa5, 0x81, 0xda, 0xee, 0xf2, 0xef, 0xf5, + 0xc8, 0xfa, 0x5c, 0x11, 0x29, 0xa3, 0x89, 0x86, 0x3b, 0x6e, 0xba, 0x26, + 0x9d, 0x73, 0xd2, 0x23, 0x03, 0x39, 0x96, 0xc9, 0x0b, 0x05, 0xa1, 0xe9, + 0x03, 0xa0, 0x7b, 0xcc, +}; +static const struct drbg_kat_pr_true kat3763_t = { + 12, kat3763_entropyin, kat3763_nonce, kat3763_persstr, + kat3763_entropyinpr1, kat3763_addinpr1, kat3763_entropyinpr2, + kat3763_addinpr2, kat3763_retbits +}; +static const struct drbg_kat kat3763 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3763_t +}; + +static const unsigned char kat3764_entropyin[] = { + 0xf5, 0xb4, 0x40, 0x81, 0x49, 0x69, 0x2b, 0x9d, 0xe6, 0x79, 0x49, 0xdb, + 0x4e, 0x7a, 0x9d, 0xb1, 0x60, 0x39, 0xab, 0xef, 0xb2, 0x41, 0x47, 0xe6, + 0x80, 0x86, 0x8b, 0x2e, 0xd3, 0xe6, 0x59, 0x24, +}; +static const unsigned char kat3764_nonce[] = {0}; +static const unsigned char kat3764_persstr[] = { + 0x03, 0x46, 0xba, 0x04, 0x40, 0x77, 0x79, 0x84, 0x8e, 0xf2, 0x9c, 0x36, + 0xe4, 0x88, 0xa7, 0xce, 0x15, 0x5b, 0xfd, 0xe5, 0xa5, 0x7c, 0x09, 0x7f, + 0x6e, 0xd6, 0x58, 0xc2, 0x3d, 0x80, 0x18, 0xe0, +}; +static const unsigned char kat3764_entropyinpr1[] = { + 0x91, 0x69, 0x37, 0x87, 0x55, 0xd1, 0xc4, 0xe9, 0x63, 0x64, 0xc3, 0x22, + 0x22, 0xb7, 0x2c, 0xa0, 0xa5, 0xb4, 0x2d, 0x55, 0x61, 0x86, 0x4b, 0x3f, + 0x60, 0xdd, 0x16, 0xcf, 0x3a, 0x30, 0x3a, 0x2d, +}; +static const unsigned char kat3764_addinpr1[] = {0}; +static const unsigned char kat3764_entropyinpr2[] = { + 0x89, 0x2a, 0x51, 0xb9, 0x12, 0x56, 0x4f, 0x90, 0x2d, 0x8c, 0x81, 0x5d, + 0x76, 0x17, 0xb7, 0x61, 0xe5, 0x43, 0xb6, 0x51, 0x7e, 0x6d, 0x2b, 0xb9, + 0x08, 0xf0, 0xbc, 0xdd, 0x47, 0xee, 0x7a, 0x51, +}; +static const unsigned char kat3764_addinpr2[] = {0}; +static const unsigned char kat3764_retbits[] = { + 0x04, 0x95, 0xa1, 0x6d, 0x1f, 0x6e, 0xeb, 0xb6, 0x7f, 0x47, 0x8a, 0x83, + 0xd5, 0x16, 0x06, 0x8b, 0x77, 0xdf, 0x89, 0x64, 0x48, 0xe9, 0x7b, 0x9f, + 0xa3, 0x50, 0x34, 0xe3, 0xc1, 0x99, 0x8b, 0x16, 0x49, 0xbb, 0x77, 0x67, + 0xc3, 0x6e, 0x28, 0x12, 0x5e, 0x7b, 0x78, 0x1a, 0xcb, 0xbd, 0xe9, 0x2c, + 0xbf, 0xb9, 0xb7, 0x2e, 0x1d, 0x90, 0x1e, 0x4e, 0x35, 0xef, 0x9a, 0x51, + 0x82, 0x2b, 0x0f, 0x3a, +}; +static const struct drbg_kat_pr_true kat3764_t = { + 13, kat3764_entropyin, kat3764_nonce, kat3764_persstr, + kat3764_entropyinpr1, kat3764_addinpr1, kat3764_entropyinpr2, + kat3764_addinpr2, kat3764_retbits +}; +static const struct drbg_kat kat3764 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3764_t +}; + +static const unsigned char kat3765_entropyin[] = { + 0xe5, 0xb6, 0x93, 0xf4, 0x8c, 0xc0, 0x0e, 0x33, 0x7e, 0x6b, 0x37, 0x02, + 0xaa, 0xff, 0x9a, 0xbf, 0xee, 0x6f, 0x32, 0x5a, 0x34, 0xff, 0x03, 0x27, + 0x4b, 0x7a, 0xb6, 0x41, 0x13, 0xf8, 0xea, 0x21, +}; +static const unsigned char kat3765_nonce[] = {0}; +static const unsigned char kat3765_persstr[] = { + 0x31, 0xff, 0x20, 0x75, 0x18, 0x7f, 0x29, 0x96, 0x7b, 0xf9, 0x60, 0x2d, + 0xf6, 0x15, 0xf4, 0xb8, 0x05, 0x9b, 0xe5, 0x23, 0xe7, 0x7f, 0xff, 0x1f, + 0x82, 0xd6, 0xe1, 0xa8, 0x1c, 0xb5, 0x15, 0x34, +}; +static const unsigned char kat3765_entropyinpr1[] = { + 0x24, 0xe9, 0xce, 0x22, 0xa7, 0x27, 0xe4, 0x54, 0x0d, 0x7d, 0x85, 0xe0, + 0x56, 0xbf, 0x64, 0x48, 0x06, 0x3d, 0x5f, 0x13, 0xda, 0xe5, 0x59, 0xe8, + 0xc0, 0x38, 0x0b, 0xd1, 0xb1, 0x90, 0xdd, 0xe7, +}; +static const unsigned char kat3765_addinpr1[] = {0}; +static const unsigned char kat3765_entropyinpr2[] = { + 0x9a, 0x5f, 0x15, 0xc3, 0x60, 0x78, 0xcf, 0xa0, 0xc7, 0x68, 0x86, 0x88, + 0x16, 0xd5, 0xbd, 0x0b, 0x1d, 0x33, 0xc4, 0x92, 0xfa, 0x95, 0x54, 0x49, + 0x8b, 0x66, 0x25, 0x63, 0x9a, 0x29, 0x3d, 0xcc, +}; +static const unsigned char kat3765_addinpr2[] = {0}; +static const unsigned char kat3765_retbits[] = { + 0x54, 0xc0, 0x2a, 0xa8, 0xe6, 0xcc, 0xc1, 0xf1, 0x09, 0xa5, 0xf2, 0x15, + 0xf4, 0x88, 0xfe, 0x9c, 0xa7, 0xc7, 0xce, 0xb3, 0xd1, 0xb0, 0xd9, 0xe9, + 0x25, 0x6a, 0xc4, 0xf5, 0xd4, 0x19, 0x5c, 0xc8, 0xc3, 0x6f, 0x8d, 0x8d, + 0xdf, 0xf5, 0x5e, 0xa1, 0x0f, 0x86, 0xd0, 0xeb, 0x5b, 0xdb, 0x5b, 0x11, + 0x63, 0x39, 0xb9, 0xc0, 0x22, 0x9e, 0xb7, 0xe9, 0x68, 0x14, 0x01, 0x2a, + 0x2e, 0xd5, 0xeb, 0x0a, +}; +static const struct drbg_kat_pr_true kat3765_t = { + 14, kat3765_entropyin, kat3765_nonce, kat3765_persstr, + kat3765_entropyinpr1, kat3765_addinpr1, kat3765_entropyinpr2, + kat3765_addinpr2, kat3765_retbits +}; +static const struct drbg_kat kat3765 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3765_t +}; + +static const unsigned char kat3766_entropyin[] = { + 0xba, 0x18, 0xf1, 0x4f, 0xb9, 0x28, 0xd7, 0x68, 0x6c, 0x62, 0x54, 0x1f, + 0x37, 0xb0, 0x51, 0x78, 0x4b, 0x33, 0x66, 0xb7, 0xd1, 0x32, 0x7b, 0x31, + 0xc7, 0xb9, 0x04, 0xc5, 0xff, 0xaf, 0xe3, 0x75, +}; +static const unsigned char kat3766_nonce[] = {0}; +static const unsigned char kat3766_persstr[] = { + 0x14, 0x08, 0xa9, 0x34, 0xd2, 0xd4, 0x07, 0x9d, 0xef, 0xd0, 0xaa, 0x01, + 0xfe, 0xc7, 0x77, 0x03, 0xea, 0x97, 0x4f, 0x93, 0xca, 0x5a, 0xf3, 0x88, + 0xad, 0x7c, 0x67, 0xb1, 0x54, 0x35, 0x7c, 0x1b, +}; +static const unsigned char kat3766_entropyinpr1[] = { + 0x32, 0xaa, 0x9d, 0x4e, 0xf8, 0xff, 0x81, 0xb9, 0x58, 0x86, 0xe1, 0x6e, + 0x6e, 0x91, 0x59, 0xbe, 0x26, 0xd5, 0x52, 0x8a, 0xc3, 0x6a, 0x2f, 0xf1, + 0xb9, 0x10, 0xa9, 0x18, 0xae, 0x65, 0x22, 0x40, +}; +static const unsigned char kat3766_addinpr1[] = { + 0x2c, 0x1c, 0x1c, 0xdd, 0x21, 0x2b, 0x37, 0x16, 0x50, 0xf5, 0x35, 0x9c, + 0x9f, 0x90, 0x64, 0xa1, 0xfa, 0xce, 0x05, 0xf5, 0x12, 0x32, 0x5b, 0xe7, + 0x9a, 0xfb, 0xdd, 0xa7, 0x32, 0xcd, 0x44, 0x72, +}; +static const unsigned char kat3766_entropyinpr2[] = { + 0x69, 0x0c, 0x18, 0x45, 0xba, 0xd0, 0x69, 0x96, 0xb0, 0x76, 0xf9, 0xaa, + 0xd0, 0xf2, 0xc1, 0x7d, 0x0c, 0x30, 0x4a, 0xab, 0x35, 0xb2, 0x6b, 0x81, + 0xaf, 0x72, 0xb4, 0x02, 0xf5, 0xe2, 0xac, 0x82, +}; +static const unsigned char kat3766_addinpr2[] = { + 0x7b, 0xec, 0x3e, 0x0b, 0x55, 0x09, 0xd6, 0xb8, 0x65, 0x96, 0x0e, 0x94, + 0x3e, 0x87, 0xe4, 0x11, 0x90, 0xdb, 0xe3, 0x38, 0xf2, 0x8f, 0xb6, 0x39, + 0x62, 0x21, 0x4c, 0x49, 0x4e, 0xd1, 0x64, 0xeb, +}; +static const unsigned char kat3766_retbits[] = { + 0x77, 0x91, 0x6b, 0x29, 0x3b, 0x63, 0xc3, 0x72, 0xae, 0x03, 0xd0, 0xb6, + 0xee, 0x52, 0x05, 0x24, 0xb7, 0x4d, 0x16, 0xbd, 0x1d, 0xd8, 0xbe, 0xb5, + 0x56, 0xea, 0xbe, 0xa7, 0x17, 0x3d, 0xa3, 0x45, 0x21, 0x33, 0x9e, 0xb2, + 0xf7, 0x70, 0xcc, 0x77, 0xce, 0x3d, 0x93, 0x29, 0x28, 0x0c, 0xc6, 0x68, + 0x17, 0x75, 0xb4, 0xe2, 0x7e, 0xad, 0xa6, 0x2c, 0x39, 0x2f, 0x4d, 0x07, + 0x7c, 0x2c, 0xc8, 0xac, +}; +static const struct drbg_kat_pr_true kat3766_t = { + 0, kat3766_entropyin, kat3766_nonce, kat3766_persstr, + kat3766_entropyinpr1, kat3766_addinpr1, kat3766_entropyinpr2, + kat3766_addinpr2, kat3766_retbits +}; +static const struct drbg_kat kat3766 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3766_t +}; + +static const unsigned char kat3767_entropyin[] = { + 0x2e, 0xa5, 0xa3, 0xfd, 0x54, 0xa0, 0x63, 0x41, 0x30, 0xe8, 0xc2, 0x2f, + 0x59, 0xc5, 0x03, 0xe6, 0xf3, 0x91, 0x86, 0x92, 0x0a, 0x9d, 0x8e, 0x47, + 0xf4, 0x1f, 0xe0, 0x7c, 0xdb, 0x81, 0xae, 0xa4, +}; +static const unsigned char kat3767_nonce[] = {0}; +static const unsigned char kat3767_persstr[] = { + 0x7d, 0xee, 0x98, 0xb4, 0xf3, 0x78, 0xb8, 0x0f, 0x69, 0x7c, 0xab, 0x1b, + 0xa2, 0xcb, 0x26, 0xc2, 0xc2, 0x70, 0xbb, 0x6b, 0xb0, 0x22, 0xd6, 0xf7, + 0xe8, 0xe5, 0x2b, 0x44, 0xcb, 0x01, 0xc6, 0xf1, +}; +static const unsigned char kat3767_entropyinpr1[] = { + 0x4c, 0x32, 0x65, 0x3a, 0x06, 0x99, 0x63, 0xa1, 0x7c, 0xc8, 0x40, 0x37, + 0x2e, 0x81, 0x5e, 0x4c, 0xe0, 0xa4, 0x38, 0xe2, 0xea, 0xa0, 0x73, 0x3f, + 0xc2, 0xb5, 0xe8, 0xa4, 0x4e, 0xcd, 0xbe, 0xc8, +}; +static const unsigned char kat3767_addinpr1[] = { + 0x89, 0x2a, 0xb8, 0x12, 0xcc, 0xd6, 0x04, 0x7a, 0xdc, 0xf6, 0xda, 0x0f, + 0x94, 0x32, 0xd6, 0x78, 0x0f, 0x46, 0x69, 0xaa, 0xd3, 0x1e, 0x12, 0x33, + 0xbd, 0xd7, 0x44, 0x77, 0xf5, 0x63, 0x45, 0x5d, +}; +static const unsigned char kat3767_entropyinpr2[] = { + 0xc5, 0x36, 0xb6, 0x30, 0x5e, 0xdb, 0x8a, 0x6a, 0x3f, 0x96, 0x36, 0x83, + 0x6d, 0x4c, 0x59, 0x40, 0x2d, 0xca, 0x5f, 0x64, 0xb4, 0xd7, 0xdd, 0x16, + 0xfb, 0xd1, 0x1b, 0xc7, 0x65, 0x84, 0xd2, 0x92, +}; +static const unsigned char kat3767_addinpr2[] = { + 0x4e, 0x5a, 0x8d, 0xe1, 0x4c, 0x03, 0x10, 0x72, 0xe8, 0x94, 0xec, 0x98, + 0xde, 0x50, 0x20, 0x41, 0xc8, 0x1b, 0x5d, 0xc1, 0x04, 0x7e, 0x81, 0xd8, + 0xe2, 0x6c, 0x24, 0xa2, 0xd7, 0xf3, 0x81, 0xb9, +}; +static const unsigned char kat3767_retbits[] = { + 0xab, 0xa9, 0x12, 0x5a, 0xcc, 0xe7, 0xfe, 0x77, 0xbf, 0xfb, 0x79, 0x6e, + 0x2f, 0xab, 0x64, 0xa2, 0xdd, 0x90, 0x60, 0x11, 0xa7, 0x59, 0x51, 0x52, + 0xcf, 0xc5, 0xc7, 0x2a, 0x7b, 0x32, 0xbe, 0xea, 0xdc, 0x5f, 0xcd, 0xa5, + 0xd5, 0x5c, 0x72, 0x10, 0x4e, 0x7c, 0x36, 0x6c, 0x56, 0x49, 0x8d, 0xcb, + 0xb7, 0x0f, 0xe5, 0xc2, 0x90, 0x40, 0x3b, 0x22, 0xad, 0x90, 0xc2, 0x39, + 0x9e, 0xa0, 0x69, 0xf6, +}; +static const struct drbg_kat_pr_true kat3767_t = { + 1, kat3767_entropyin, kat3767_nonce, kat3767_persstr, + kat3767_entropyinpr1, kat3767_addinpr1, kat3767_entropyinpr2, + kat3767_addinpr2, kat3767_retbits +}; +static const struct drbg_kat kat3767 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3767_t +}; + +static const unsigned char kat3768_entropyin[] = { + 0x9f, 0x60, 0x15, 0x5d, 0x5c, 0xfe, 0xb9, 0xed, 0x55, 0xa6, 0xb0, 0x41, + 0x7b, 0xd5, 0x1e, 0xe0, 0xcb, 0x4d, 0xd6, 0xc4, 0xb9, 0x3a, 0xf5, 0xc3, + 0x40, 0x9c, 0x9d, 0x59, 0xcc, 0x72, 0xd3, 0x21, +}; +static const unsigned char kat3768_nonce[] = {0}; +static const unsigned char kat3768_persstr[] = { + 0x94, 0xdc, 0xc3, 0x91, 0x80, 0x35, 0x22, 0xf5, 0xb0, 0xc0, 0x29, 0x47, + 0x76, 0x78, 0xe6, 0xe5, 0xd1, 0x84, 0x32, 0xf9, 0xdb, 0x50, 0x76, 0xa1, + 0x3a, 0xad, 0xe6, 0xc0, 0x3a, 0xb5, 0xbf, 0x71, +}; +static const unsigned char kat3768_entropyinpr1[] = { + 0x3a, 0xf6, 0x14, 0x8f, 0x14, 0x27, 0xda, 0x27, 0xca, 0x93, 0x5a, 0x8b, + 0x98, 0x58, 0x1e, 0xb0, 0x9a, 0xf8, 0xeb, 0xbf, 0xfe, 0x04, 0xcc, 0x70, + 0x3d, 0x4b, 0x56, 0xab, 0x4c, 0x34, 0x7f, 0x06, +}; +static const unsigned char kat3768_addinpr1[] = { + 0x71, 0xe2, 0x01, 0xae, 0x29, 0x09, 0x71, 0x66, 0xe2, 0x88, 0x3a, 0xc3, + 0xf2, 0x94, 0xcd, 0x79, 0x81, 0x65, 0x6a, 0xf4, 0x5c, 0x1e, 0xf8, 0xc9, + 0x55, 0x67, 0x1f, 0x96, 0x31, 0x83, 0xbd, 0x36, +}; +static const unsigned char kat3768_entropyinpr2[] = { + 0xa5, 0xf5, 0x23, 0x5d, 0x90, 0xd9, 0xc6, 0x68, 0x1e, 0x83, 0xf5, 0x02, + 0x9f, 0x7d, 0x5f, 0xd9, 0xf6, 0xad, 0x80, 0xdb, 0xbc, 0xff, 0x3d, 0xd2, + 0x20, 0x01, 0xd1, 0x67, 0x3b, 0xb4, 0x1d, 0xfc, +}; +static const unsigned char kat3768_addinpr2[] = { + 0xcc, 0xad, 0x3d, 0xff, 0x4e, 0x4f, 0x80, 0x20, 0x8a, 0x5a, 0xfa, 0x69, + 0x18, 0xed, 0x22, 0x0d, 0x2e, 0xab, 0x2a, 0x44, 0x67, 0x0a, 0xfe, 0xf2, + 0xb4, 0x4d, 0x9f, 0x3a, 0x2c, 0xd7, 0x24, 0xd5, +}; +static const unsigned char kat3768_retbits[] = { + 0x90, 0x6c, 0x4f, 0x3a, 0xc4, 0xad, 0xed, 0x23, 0x71, 0xd5, 0xd8, 0x4f, + 0x14, 0x9a, 0x60, 0x56, 0xdc, 0xdb, 0x94, 0x72, 0x2d, 0x7d, 0x8c, 0x1d, + 0x08, 0xb7, 0xe6, 0xf8, 0xff, 0x02, 0x2a, 0xf1, 0xcd, 0xcf, 0xd7, 0x1f, + 0x9f, 0x04, 0xfb, 0x15, 0x32, 0x44, 0x35, 0xfc, 0x2d, 0xb8, 0x73, 0x11, + 0x20, 0x96, 0xa4, 0x4e, 0xa2, 0x48, 0x7e, 0x63, 0xa7, 0x85, 0x33, 0x8b, + 0x4f, 0x3a, 0x80, 0x6d, +}; +static const struct drbg_kat_pr_true kat3768_t = { + 2, kat3768_entropyin, kat3768_nonce, kat3768_persstr, + kat3768_entropyinpr1, kat3768_addinpr1, kat3768_entropyinpr2, + kat3768_addinpr2, kat3768_retbits +}; +static const struct drbg_kat kat3768 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3768_t +}; + +static const unsigned char kat3769_entropyin[] = { + 0xca, 0x8c, 0xb0, 0x25, 0xb5, 0x11, 0xe5, 0x32, 0x7a, 0xa0, 0xad, 0xf2, + 0xee, 0x64, 0x18, 0xad, 0x14, 0xd7, 0xd8, 0xfa, 0xbb, 0xa4, 0xc4, 0x1f, + 0xf9, 0x14, 0x3e, 0xd6, 0xa4, 0x45, 0xf8, 0x8e, +}; +static const unsigned char kat3769_nonce[] = {0}; +static const unsigned char kat3769_persstr[] = { + 0x66, 0xb4, 0xa7, 0x60, 0xca, 0x7f, 0xa0, 0x52, 0x18, 0x2c, 0xc2, 0xf5, + 0x7d, 0xac, 0x55, 0xa5, 0xec, 0x18, 0xc7, 0xe0, 0x82, 0x9a, 0xea, 0x28, + 0x20, 0xca, 0x4a, 0x06, 0x33, 0xff, 0xe2, 0x73, +}; +static const unsigned char kat3769_entropyinpr1[] = { + 0xe3, 0xe1, 0x52, 0xd3, 0xee, 0x5c, 0x00, 0x8c, 0x71, 0x94, 0x7a, 0x2e, + 0x86, 0xcb, 0x64, 0x45, 0x44, 0xd9, 0xeb, 0x81, 0xd2, 0xec, 0xc5, 0xc0, + 0x7e, 0x57, 0x8d, 0xbf, 0xfa, 0x2a, 0xc8, 0x9b, +}; +static const unsigned char kat3769_addinpr1[] = { + 0x14, 0x01, 0xb6, 0xee, 0xdc, 0x19, 0x51, 0x2e, 0x56, 0xf3, 0xc3, 0xdc, + 0x58, 0x89, 0x5d, 0x71, 0xb3, 0x50, 0x3b, 0x52, 0xa8, 0x28, 0xd2, 0xda, + 0x98, 0xd3, 0x6e, 0x00, 0x20, 0x0a, 0x01, 0xe2, +}; +static const unsigned char kat3769_entropyinpr2[] = { + 0x91, 0xe0, 0x91, 0xfa, 0xa8, 0x67, 0xbf, 0x42, 0x60, 0x5c, 0x8d, 0x75, + 0xf8, 0x02, 0xe7, 0x16, 0x99, 0x9a, 0x9b, 0x5c, 0x44, 0xb6, 0x4d, 0xcb, + 0xb5, 0x19, 0xb2, 0xbc, 0x30, 0x08, 0x15, 0x8d, +}; +static const unsigned char kat3769_addinpr2[] = { + 0x76, 0x43, 0x23, 0x11, 0x99, 0xe4, 0xb5, 0x0f, 0xb2, 0xd8, 0xb4, 0xe7, + 0xea, 0x8d, 0xb4, 0x9d, 0x00, 0x70, 0x0d, 0x2f, 0x69, 0xcc, 0xbe, 0xa6, + 0x35, 0xbd, 0x39, 0xc2, 0x63, 0x00, 0x5a, 0x3f, +}; +static const unsigned char kat3769_retbits[] = { + 0x4e, 0x9c, 0x31, 0x37, 0xcc, 0x9d, 0xc6, 0x27, 0xa7, 0xfe, 0xd3, 0xff, + 0xa6, 0xff, 0xf4, 0xd4, 0x43, 0x5f, 0x3c, 0xba, 0xd5, 0x69, 0xf3, 0x73, + 0xbc, 0xbd, 0x0e, 0xa3, 0xdf, 0x73, 0xc2, 0xdc, 0xec, 0x23, 0x0b, 0x2b, + 0xf0, 0x08, 0x1c, 0x6e, 0x6a, 0xa0, 0x26, 0xfa, 0xd4, 0x09, 0x84, 0x0d, + 0xab, 0xcb, 0xc6, 0x1f, 0x37, 0x55, 0x10, 0x82, 0xb2, 0x82, 0x10, 0x9c, + 0x5d, 0x1d, 0xb6, 0xc3, +}; +static const struct drbg_kat_pr_true kat3769_t = { + 3, kat3769_entropyin, kat3769_nonce, kat3769_persstr, + kat3769_entropyinpr1, kat3769_addinpr1, kat3769_entropyinpr2, + kat3769_addinpr2, kat3769_retbits +}; +static const struct drbg_kat kat3769 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3769_t +}; + +static const unsigned char kat3770_entropyin[] = { + 0x0d, 0x22, 0x34, 0x34, 0xa0, 0xaf, 0x6e, 0x4a, 0x60, 0x63, 0x81, 0x44, + 0xad, 0x55, 0xed, 0x14, 0x1d, 0xa1, 0x92, 0x0c, 0x0d, 0x4c, 0xe6, 0x39, + 0xe0, 0x38, 0xe8, 0x9d, 0x93, 0x62, 0x8d, 0xc9, +}; +static const unsigned char kat3770_nonce[] = {0}; +static const unsigned char kat3770_persstr[] = { + 0xef, 0xca, 0x79, 0x4c, 0x07, 0xb2, 0x35, 0xe0, 0x9a, 0x6c, 0xc6, 0x85, + 0xa3, 0x39, 0x0b, 0x84, 0x65, 0x5e, 0x04, 0xb8, 0xeb, 0x92, 0x4a, 0xd3, + 0xed, 0x4d, 0x35, 0x6f, 0x80, 0x6a, 0x61, 0x00, +}; +static const unsigned char kat3770_entropyinpr1[] = { + 0x0e, 0xc6, 0x96, 0xe5, 0x2d, 0x57, 0xbc, 0xec, 0xd2, 0x31, 0x03, 0xfe, + 0x5d, 0x54, 0x21, 0xf5, 0x3e, 0xb1, 0xab, 0x16, 0x3a, 0x9a, 0xd0, 0x91, + 0xe5, 0xc4, 0x78, 0x9c, 0xf6, 0xac, 0xa0, 0xf2, +}; +static const unsigned char kat3770_addinpr1[] = { + 0x93, 0xe5, 0x64, 0x8c, 0x4c, 0xa0, 0x9a, 0x97, 0x48, 0xa8, 0x1a, 0xf0, + 0xce, 0x83, 0xc3, 0xb8, 0x44, 0x9f, 0xa6, 0x7c, 0x5d, 0x46, 0x18, 0x56, + 0x86, 0xeb, 0xbd, 0x6d, 0xc1, 0xd9, 0x58, 0x56, +}; +static const unsigned char kat3770_entropyinpr2[] = { + 0x19, 0xda, 0x72, 0x04, 0x93, 0x7c, 0xc7, 0x4f, 0x4b, 0x1e, 0x70, 0xed, + 0x06, 0xf1, 0x9e, 0x9c, 0xe8, 0x66, 0xcd, 0x5d, 0xe3, 0x13, 0x12, 0xa4, + 0xf0, 0x95, 0xb7, 0xed, 0xa1, 0x5f, 0xb1, 0x9d, +}; +static const unsigned char kat3770_addinpr2[] = { + 0x38, 0xdd, 0xab, 0x18, 0xeb, 0x96, 0x0e, 0xb5, 0x57, 0x75, 0x09, 0x87, + 0x9e, 0xe7, 0x5a, 0x24, 0x66, 0x8f, 0x04, 0xdb, 0x74, 0x63, 0x1e, 0x40, + 0x7a, 0xd7, 0x44, 0xdb, 0x98, 0x9d, 0x4f, 0x52, +}; +static const unsigned char kat3770_retbits[] = { + 0x07, 0xfa, 0x35, 0x10, 0x26, 0x12, 0x68, 0xd9, 0x44, 0x0d, 0x83, 0x26, + 0x28, 0x78, 0xdb, 0x37, 0xf8, 0xe5, 0x4e, 0x79, 0xb7, 0x74, 0x51, 0xe1, + 0x6e, 0xf5, 0x1a, 0x3e, 0x9a, 0x13, 0x4d, 0x51, 0x0a, 0x36, 0x07, 0x03, + 0x0c, 0x73, 0x18, 0xc8, 0x8f, 0xfd, 0x34, 0x21, 0x20, 0xde, 0xbf, 0xa7, + 0x16, 0xee, 0x9d, 0xfd, 0x07, 0xc1, 0x8e, 0x59, 0x3d, 0x5f, 0xc7, 0xcd, + 0x68, 0xbd, 0x47, 0x85, +}; +static const struct drbg_kat_pr_true kat3770_t = { + 4, kat3770_entropyin, kat3770_nonce, kat3770_persstr, + kat3770_entropyinpr1, kat3770_addinpr1, kat3770_entropyinpr2, + kat3770_addinpr2, kat3770_retbits +}; +static const struct drbg_kat kat3770 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3770_t +}; + +static const unsigned char kat3771_entropyin[] = { + 0x36, 0x25, 0xc0, 0xe3, 0x1b, 0x4d, 0xa7, 0xa3, 0xa4, 0x6d, 0x1e, 0x4b, + 0xd3, 0x87, 0x1f, 0x65, 0x03, 0xb2, 0x3c, 0x0b, 0xac, 0xf1, 0x92, 0x02, + 0xc8, 0x48, 0x39, 0xdc, 0x75, 0xb0, 0x2d, 0xa8, +}; +static const unsigned char kat3771_nonce[] = {0}; +static const unsigned char kat3771_persstr[] = { + 0x58, 0xa8, 0x3c, 0xc2, 0xc7, 0x2c, 0x15, 0x66, 0x0e, 0x59, 0xff, 0x13, + 0xe9, 0x32, 0xeb, 0x92, 0xe8, 0x55, 0xed, 0x63, 0x11, 0x8d, 0xe1, 0xf4, + 0xec, 0x1e, 0xff, 0x85, 0x50, 0xd4, 0x2d, 0xea, +}; +static const unsigned char kat3771_entropyinpr1[] = { + 0xe6, 0x5f, 0x53, 0xcc, 0x6a, 0x5d, 0x0d, 0x63, 0x9e, 0x0a, 0x3a, 0x72, + 0xf8, 0x7e, 0x0c, 0x9e, 0x9a, 0xd8, 0xa1, 0xc5, 0x1e, 0x8d, 0xf8, 0x2c, + 0x73, 0x9a, 0xfb, 0x24, 0x3b, 0xd1, 0x55, 0xd2, +}; +static const unsigned char kat3771_addinpr1[] = { + 0x41, 0x16, 0xc8, 0x66, 0x9d, 0x9d, 0x84, 0x62, 0x99, 0x07, 0x54, 0x29, + 0x9f, 0xd2, 0x82, 0xdb, 0x6e, 0xc7, 0x7d, 0x95, 0x67, 0x13, 0x50, 0xcf, + 0x3a, 0xb3, 0xac, 0xee, 0xeb, 0x46, 0xb7, 0x94, +}; +static const unsigned char kat3771_entropyinpr2[] = { + 0x79, 0x38, 0x90, 0x23, 0x56, 0x6a, 0xd6, 0x0f, 0x80, 0x86, 0xe7, 0xfb, + 0x6b, 0x4c, 0x24, 0x75, 0x77, 0x05, 0xc4, 0xa6, 0x52, 0x6d, 0x80, 0x42, + 0xd3, 0x89, 0x9a, 0x65, 0x63, 0x60, 0x2a, 0x8e, +}; +static const unsigned char kat3771_addinpr2[] = { + 0xd6, 0xb8, 0xd5, 0xdb, 0x3b, 0x72, 0x8c, 0x0b, 0x2b, 0xb5, 0xb7, 0x6a, + 0x49, 0x6d, 0x50, 0xad, 0xf3, 0xac, 0xd9, 0xa6, 0xfb, 0x25, 0xe8, 0x5b, + 0x5f, 0x47, 0xbe, 0xfc, 0x22, 0x53, 0xf7, 0x5c, +}; +static const unsigned char kat3771_retbits[] = { + 0xfb, 0xde, 0xa1, 0xd6, 0x61, 0xa9, 0x6d, 0xe7, 0xc8, 0x61, 0xf8, 0x77, + 0xfd, 0x00, 0x8a, 0x38, 0x40, 0xef, 0xd3, 0xef, 0x47, 0x74, 0xdd, 0x9c, + 0xa0, 0x9d, 0xd1, 0x89, 0x74, 0xb9, 0x05, 0x09, 0xdb, 0xd6, 0xb3, 0x88, + 0xc5, 0x97, 0x5b, 0xde, 0xad, 0x20, 0xc9, 0x38, 0xfd, 0x21, 0x31, 0xf5, + 0x30, 0xb5, 0xa4, 0x16, 0xbd, 0x6c, 0x01, 0x4c, 0x9f, 0xf5, 0x19, 0xdb, + 0xfd, 0x38, 0x25, 0x4d, +}; +static const struct drbg_kat_pr_true kat3771_t = { + 5, kat3771_entropyin, kat3771_nonce, kat3771_persstr, + kat3771_entropyinpr1, kat3771_addinpr1, kat3771_entropyinpr2, + kat3771_addinpr2, kat3771_retbits +}; +static const struct drbg_kat kat3771 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3771_t +}; + +static const unsigned char kat3772_entropyin[] = { + 0x30, 0x80, 0x0d, 0x7c, 0xa1, 0x7a, 0x45, 0xe8, 0x2b, 0x83, 0x07, 0x27, + 0x9a, 0x99, 0x1c, 0xaf, 0x9f, 0xa9, 0x7d, 0xe6, 0xe0, 0x3a, 0x45, 0x47, + 0xbc, 0x27, 0x28, 0xe1, 0x96, 0xa6, 0x79, 0x8e, +}; +static const unsigned char kat3772_nonce[] = {0}; +static const unsigned char kat3772_persstr[] = { + 0x91, 0xb2, 0x95, 0x59, 0x8f, 0xe6, 0xd4, 0x7c, 0xd6, 0x20, 0x9c, 0xf8, + 0xd9, 0x71, 0xee, 0x57, 0x41, 0x7a, 0x50, 0xc7, 0x41, 0x70, 0x07, 0x40, + 0x8a, 0x65, 0x98, 0xdb, 0x27, 0x77, 0xb1, 0x3a, +}; +static const unsigned char kat3772_entropyinpr1[] = { + 0x96, 0x20, 0xfd, 0x1e, 0x59, 0x11, 0x0a, 0x92, 0xf3, 0x2b, 0xb9, 0x04, + 0xe3, 0xea, 0xbd, 0xd1, 0x6c, 0x98, 0x67, 0x1e, 0x37, 0xa4, 0x45, 0xd6, + 0xca, 0x21, 0xd1, 0xef, 0x3a, 0x8c, 0x44, 0xd5, +}; +static const unsigned char kat3772_addinpr1[] = { + 0x92, 0xfb, 0x70, 0x02, 0xe3, 0x25, 0xa0, 0x0a, 0x73, 0xa2, 0x50, 0x4b, + 0x68, 0xc1, 0x20, 0xa5, 0x12, 0x65, 0x71, 0xf9, 0xd9, 0xf7, 0xf2, 0x33, + 0x7c, 0xa7, 0xb7, 0xaa, 0x6a, 0xf6, 0xc7, 0x10, +}; +static const unsigned char kat3772_entropyinpr2[] = { + 0x79, 0x9f, 0xb4, 0xbe, 0xc7, 0xe3, 0xfb, 0x89, 0x2f, 0x29, 0x41, 0x95, + 0xfa, 0x05, 0xe6, 0x0c, 0xa1, 0x1a, 0x09, 0xce, 0x2e, 0x41, 0xd7, 0x47, + 0x9f, 0x4c, 0x97, 0xea, 0x8b, 0x4f, 0x1f, 0xfd, +}; +static const unsigned char kat3772_addinpr2[] = { + 0x97, 0xee, 0x81, 0xb5, 0xd7, 0x94, 0x71, 0xfa, 0xf1, 0x0c, 0x74, 0x04, + 0x73, 0x70, 0x2d, 0x74, 0xa6, 0xab, 0xf2, 0x29, 0x0a, 0x88, 0x97, 0xbe, + 0x7f, 0x6d, 0x56, 0x23, 0x6f, 0xc8, 0x6f, 0x56, +}; +static const unsigned char kat3772_retbits[] = { + 0x34, 0x51, 0x7c, 0xf4, 0xcd, 0xe2, 0x75, 0xe3, 0x3f, 0xad, 0x5f, 0x0c, + 0x13, 0xe1, 0x94, 0x57, 0xa1, 0x27, 0xc3, 0x6f, 0xf4, 0xdf, 0x90, 0x96, + 0xfb, 0xbc, 0x68, 0xa4, 0x5b, 0x8a, 0xb4, 0x32, 0xa9, 0x3e, 0xbb, 0x4f, + 0x98, 0xcf, 0xbe, 0x5e, 0xeb, 0x34, 0x4c, 0xe3, 0xf6, 0x31, 0xed, 0x46, + 0x6b, 0x5a, 0x48, 0x85, 0xb7, 0xf3, 0xbe, 0x02, 0xd2, 0xda, 0xd9, 0x45, + 0x09, 0x7e, 0x5f, 0x84, +}; +static const struct drbg_kat_pr_true kat3772_t = { + 6, kat3772_entropyin, kat3772_nonce, kat3772_persstr, + kat3772_entropyinpr1, kat3772_addinpr1, kat3772_entropyinpr2, + kat3772_addinpr2, kat3772_retbits +}; +static const struct drbg_kat kat3772 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3772_t +}; + +static const unsigned char kat3773_entropyin[] = { + 0x51, 0x67, 0xd2, 0xbc, 0x1d, 0x6e, 0x96, 0x1f, 0xfc, 0x0c, 0xd4, 0x37, + 0x03, 0x83, 0xe9, 0xf1, 0x9d, 0xd5, 0xca, 0xfd, 0xc9, 0x76, 0x6a, 0x8d, + 0xfa, 0x20, 0xef, 0x7d, 0xaf, 0x78, 0xdb, 0x05, +}; +static const unsigned char kat3773_nonce[] = {0}; +static const unsigned char kat3773_persstr[] = { + 0xf7, 0x88, 0x07, 0x9f, 0x78, 0x0a, 0xfb, 0x0d, 0xfd, 0x22, 0x88, 0x28, + 0x20, 0xa9, 0x7d, 0x83, 0x3c, 0x60, 0x0d, 0xf8, 0x6e, 0xdc, 0x31, 0xa0, + 0x40, 0xfd, 0x13, 0x75, 0x4a, 0xe3, 0x98, 0x1e, +}; +static const unsigned char kat3773_entropyinpr1[] = { + 0xf6, 0xed, 0xab, 0x02, 0x88, 0x17, 0xce, 0x8e, 0x37, 0x73, 0x4c, 0x20, + 0xfb, 0xdd, 0x5c, 0x2c, 0xab, 0xa6, 0xf9, 0xf3, 0xb6, 0x5a, 0xd6, 0x58, + 0xbb, 0x34, 0x97, 0x09, 0xe5, 0xa9, 0x59, 0xba, +}; +static const unsigned char kat3773_addinpr1[] = { + 0xb2, 0x53, 0xa2, 0xde, 0xfe, 0x03, 0xb7, 0x9f, 0xc8, 0x1a, 0x2c, 0xde, + 0xc5, 0xe6, 0xf0, 0xdf, 0x30, 0xd3, 0x61, 0xf1, 0x31, 0x11, 0xe4, 0x04, + 0x63, 0x0a, 0x27, 0xc7, 0xd2, 0x87, 0x76, 0xf7, +}; +static const unsigned char kat3773_entropyinpr2[] = { + 0xbd, 0xb4, 0x41, 0xbe, 0x3c, 0x41, 0x9f, 0x69, 0x6d, 0xd6, 0x97, 0x1f, + 0x4d, 0xf2, 0x63, 0x51, 0x4a, 0xa8, 0x63, 0x75, 0x7a, 0x81, 0x9f, 0xba, + 0xf2, 0x89, 0x45, 0x76, 0x8f, 0xe8, 0x8d, 0x20, +}; +static const unsigned char kat3773_addinpr2[] = { + 0xd8, 0xfa, 0x7b, 0xc7, 0x70, 0x63, 0x04, 0x96, 0xe3, 0xfd, 0x98, 0x29, + 0x41, 0x55, 0xb9, 0x7f, 0xfd, 0x4a, 0x38, 0x7f, 0x0d, 0xe6, 0x9d, 0xff, + 0x0f, 0x7e, 0x72, 0x50, 0x7c, 0x7b, 0x45, 0x46, +}; +static const unsigned char kat3773_retbits[] = { + 0xd7, 0x6b, 0x76, 0x3a, 0x20, 0x24, 0x9c, 0x39, 0x0b, 0x91, 0xce, 0x83, + 0x82, 0x47, 0x87, 0x82, 0x23, 0x07, 0xe1, 0xc8, 0xb7, 0x81, 0x3d, 0x8f, + 0xdf, 0x4d, 0xf8, 0xa7, 0x3c, 0xa4, 0x0c, 0xbb, 0xe7, 0x52, 0xbe, 0x73, + 0x21, 0xf8, 0x3e, 0xc1, 0xb1, 0xd4, 0x97, 0xf3, 0x09, 0x01, 0xd7, 0x38, + 0x36, 0x15, 0x29, 0x0c, 0xea, 0x94, 0x30, 0x29, 0xcf, 0xd1, 0x8a, 0x43, + 0x26, 0x8a, 0x3f, 0x87, +}; +static const struct drbg_kat_pr_true kat3773_t = { + 7, kat3773_entropyin, kat3773_nonce, kat3773_persstr, + kat3773_entropyinpr1, kat3773_addinpr1, kat3773_entropyinpr2, + kat3773_addinpr2, kat3773_retbits +}; +static const struct drbg_kat kat3773 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3773_t +}; + +static const unsigned char kat3774_entropyin[] = { + 0x6f, 0xf9, 0x15, 0xee, 0x3d, 0xb8, 0x66, 0x62, 0x8a, 0xed, 0x69, 0x1a, + 0xf9, 0xe3, 0x05, 0xca, 0xf0, 0x88, 0xb5, 0xe5, 0x54, 0xcf, 0x2b, 0xeb, + 0x1e, 0x56, 0x41, 0x69, 0x3f, 0x7c, 0xbc, 0x21, +}; +static const unsigned char kat3774_nonce[] = {0}; +static const unsigned char kat3774_persstr[] = { + 0x80, 0xcf, 0x68, 0xb0, 0x1d, 0xba, 0xb7, 0x98, 0x74, 0xf4, 0x5d, 0xce, + 0x79, 0x68, 0x1a, 0x28, 0x48, 0xbe, 0x47, 0x9e, 0xcd, 0xc7, 0x01, 0xd3, + 0x3c, 0x1c, 0x78, 0xc1, 0xef, 0x4c, 0xb9, 0xfe, +}; +static const unsigned char kat3774_entropyinpr1[] = { + 0xb3, 0x35, 0x8c, 0x4c, 0x5a, 0x68, 0x17, 0x80, 0x44, 0x79, 0xa2, 0x71, + 0xc7, 0x12, 0xc3, 0xea, 0xfc, 0x53, 0x74, 0xee, 0x2b, 0x63, 0xb2, 0x61, + 0xa0, 0xb0, 0x7b, 0xe1, 0xa9, 0xfb, 0x8a, 0x4a, +}; +static const unsigned char kat3774_addinpr1[] = { + 0x83, 0x62, 0x11, 0xab, 0x7b, 0x1a, 0x3c, 0x4d, 0x0a, 0x0d, 0xe4, 0xa9, + 0xf1, 0xed, 0x70, 0xb3, 0x04, 0x66, 0x87, 0xc7, 0xe8, 0xfb, 0x87, 0x91, + 0x9b, 0xb6, 0x82, 0x64, 0x7b, 0xaa, 0xf2, 0x75, +}; +static const unsigned char kat3774_entropyinpr2[] = { + 0xbd, 0xdc, 0xf3, 0xcf, 0xf1, 0x43, 0x0e, 0xfe, 0x51, 0x53, 0x42, 0xd5, + 0x6f, 0xb8, 0xd8, 0x08, 0xae, 0xa7, 0xed, 0xc6, 0x99, 0x87, 0x0e, 0xf2, + 0x8a, 0xdf, 0xa5, 0xfb, 0xce, 0x3d, 0x45, 0xfd, +}; +static const unsigned char kat3774_addinpr2[] = { + 0x49, 0x6a, 0xc3, 0xd6, 0x07, 0xcc, 0xcd, 0x79, 0x56, 0xfe, 0x9c, 0x76, + 0xef, 0x9d, 0x17, 0xbd, 0x9a, 0x74, 0xf8, 0x72, 0x77, 0xb1, 0xfc, 0x24, + 0x08, 0xca, 0xe2, 0xf3, 0x9a, 0x72, 0x8b, 0x5f, +}; +static const unsigned char kat3774_retbits[] = { + 0x23, 0x87, 0x50, 0xd4, 0x85, 0x45, 0xac, 0x5f, 0xae, 0xe0, 0x2b, 0x4d, + 0x80, 0xd6, 0x30, 0xc0, 0x4c, 0xa3, 0xd9, 0x26, 0x74, 0xa7, 0x87, 0x9b, + 0xda, 0xba, 0x72, 0x0b, 0x9a, 0x90, 0xd6, 0x43, 0xa9, 0x4e, 0x07, 0x10, + 0xa7, 0xfe, 0x43, 0x52, 0x7b, 0x75, 0x90, 0xac, 0x35, 0x6c, 0xa5, 0x5c, + 0x9a, 0x5f, 0x5f, 0xf5, 0x63, 0xb0, 0xd4, 0xb2, 0x6c, 0x3b, 0x2e, 0xb9, + 0x00, 0x40, 0x9e, 0x7e, +}; +static const struct drbg_kat_pr_true kat3774_t = { + 8, kat3774_entropyin, kat3774_nonce, kat3774_persstr, + kat3774_entropyinpr1, kat3774_addinpr1, kat3774_entropyinpr2, + kat3774_addinpr2, kat3774_retbits +}; +static const struct drbg_kat kat3774 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3774_t +}; + +static const unsigned char kat3775_entropyin[] = { + 0xb8, 0x66, 0xf2, 0x99, 0x6e, 0x94, 0x8d, 0xd1, 0xb0, 0x07, 0x71, 0x0d, + 0x17, 0xcd, 0x34, 0x5a, 0xe3, 0xaf, 0x32, 0x9f, 0x9e, 0x74, 0xab, 0x8c, + 0x34, 0xb0, 0x59, 0x24, 0x3d, 0x46, 0xe2, 0xbc, +}; +static const unsigned char kat3775_nonce[] = {0}; +static const unsigned char kat3775_persstr[] = { + 0xdf, 0xc9, 0xcc, 0xda, 0xb3, 0xcd, 0xdf, 0xc5, 0xa0, 0xca, 0x19, 0x83, + 0x41, 0x52, 0xc5, 0x78, 0x1d, 0x9f, 0x5c, 0xae, 0x0a, 0xa2, 0x2a, 0x2e, + 0x1f, 0x47, 0x34, 0x35, 0x9c, 0x4c, 0x4c, 0xa0, +}; +static const unsigned char kat3775_entropyinpr1[] = { + 0x6c, 0xb7, 0x7c, 0x32, 0xf9, 0x87, 0x3e, 0x05, 0xeb, 0xa0, 0x48, 0x1e, + 0xb5, 0xde, 0x38, 0x81, 0x51, 0x86, 0xb6, 0xb0, 0x00, 0x7c, 0x9c, 0x2b, + 0x62, 0x12, 0x94, 0xb8, 0x32, 0x2d, 0xab, 0x82, +}; +static const unsigned char kat3775_addinpr1[] = { + 0xfd, 0x0f, 0x72, 0x02, 0x7f, 0xd3, 0x8f, 0x69, 0x6d, 0x93, 0x0e, 0xee, + 0xe1, 0xdd, 0x7a, 0x16, 0xa4, 0xd8, 0x90, 0x88, 0x26, 0x7c, 0x86, 0xb8, + 0xd5, 0xe4, 0xf3, 0x04, 0xdf, 0xfe, 0x71, 0x68, +}; +static const unsigned char kat3775_entropyinpr2[] = { + 0x58, 0xbc, 0xe6, 0xa6, 0x86, 0xe7, 0xae, 0x5c, 0x98, 0x22, 0x4a, 0xe5, + 0x55, 0x2a, 0x5a, 0x63, 0x26, 0x1a, 0xa4, 0xed, 0xab, 0x98, 0x71, 0x3b, + 0x4a, 0xc7, 0x85, 0x2e, 0x21, 0x30, 0x32, 0x6a, +}; +static const unsigned char kat3775_addinpr2[] = { + 0x06, 0x80, 0x7f, 0xc4, 0x6b, 0x11, 0x01, 0x79, 0x7e, 0x09, 0x4a, 0xd6, + 0xab, 0x8a, 0xcf, 0x7b, 0x68, 0x88, 0x85, 0xd2, 0x5f, 0x42, 0xbd, 0xd5, + 0xef, 0xde, 0x2f, 0x79, 0xf1, 0x14, 0xcf, 0x81, +}; +static const unsigned char kat3775_retbits[] = { + 0x9d, 0xf0, 0x15, 0x5e, 0x02, 0x06, 0x45, 0x9d, 0x61, 0x70, 0xf9, 0xfc, + 0x9c, 0x55, 0x12, 0x0b, 0x4d, 0xfe, 0x10, 0x5e, 0xbc, 0xe4, 0x31, 0x15, + 0x15, 0x40, 0x7a, 0x90, 0xba, 0x32, 0xd3, 0x0b, 0x9c, 0x94, 0x29, 0x14, + 0x07, 0x01, 0xac, 0x8e, 0x35, 0x77, 0x82, 0x6c, 0xef, 0xcc, 0x62, 0x4b, + 0x2f, 0x9c, 0x94, 0xd6, 0xc5, 0x61, 0xe2, 0x35, 0x27, 0x0d, 0x8c, 0xac, + 0x36, 0xad, 0xeb, 0xd5, +}; +static const struct drbg_kat_pr_true kat3775_t = { + 9, kat3775_entropyin, kat3775_nonce, kat3775_persstr, + kat3775_entropyinpr1, kat3775_addinpr1, kat3775_entropyinpr2, + kat3775_addinpr2, kat3775_retbits +}; +static const struct drbg_kat kat3775 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3775_t +}; + +static const unsigned char kat3776_entropyin[] = { + 0xdc, 0x05, 0x49, 0x19, 0x18, 0x29, 0x0d, 0x01, 0x57, 0x97, 0xbf, 0xd0, + 0xff, 0x78, 0x61, 0x90, 0x71, 0x8e, 0x8d, 0x73, 0xbe, 0xc7, 0x83, 0xbd, + 0x3f, 0xd5, 0x0a, 0x7b, 0x21, 0xb5, 0x9d, 0xd5, +}; +static const unsigned char kat3776_nonce[] = {0}; +static const unsigned char kat3776_persstr[] = { + 0xda, 0xf2, 0x1b, 0x5f, 0x65, 0x19, 0x95, 0xce, 0xbf, 0x70, 0x0d, 0x45, + 0x3f, 0xbd, 0x80, 0x69, 0xc1, 0xee, 0x34, 0xa5, 0xdc, 0x40, 0x4a, 0xe4, + 0xf7, 0x75, 0x6d, 0x84, 0x04, 0xcc, 0x56, 0x78, +}; +static const unsigned char kat3776_entropyinpr1[] = { + 0x45, 0x21, 0xa5, 0xcd, 0x8d, 0x4f, 0xbd, 0xfa, 0xd4, 0x94, 0x1d, 0xce, + 0x55, 0x18, 0x4a, 0xb2, 0x10, 0x9d, 0xf1, 0xe5, 0x59, 0x28, 0x37, 0xf7, + 0x2b, 0xe4, 0x30, 0x9e, 0xf9, 0x35, 0x04, 0x1c, +}; +static const unsigned char kat3776_addinpr1[] = { + 0x0a, 0xd7, 0x65, 0x72, 0x0c, 0x58, 0xb4, 0xbe, 0x8d, 0x88, 0x46, 0x30, + 0x18, 0xd1, 0xc5, 0x31, 0x42, 0x65, 0x2d, 0x73, 0x94, 0x11, 0x0a, 0xeb, + 0x62, 0xf3, 0x86, 0xfd, 0x4e, 0xa4, 0xbb, 0x4f, +}; +static const unsigned char kat3776_entropyinpr2[] = { + 0x86, 0xb1, 0x99, 0x15, 0x69, 0xd1, 0xd0, 0x19, 0x05, 0xe7, 0xf8, 0x22, + 0xc6, 0x34, 0x8f, 0x64, 0xc3, 0xa4, 0x76, 0x23, 0x00, 0x29, 0x2e, 0x8e, + 0x6b, 0xb9, 0xa4, 0x0b, 0x43, 0xa5, 0xd3, 0x2f, +}; +static const unsigned char kat3776_addinpr2[] = { + 0xd1, 0x89, 0x08, 0xd8, 0x6d, 0xd5, 0x09, 0x75, 0xe8, 0x79, 0xf6, 0x13, + 0x17, 0xb0, 0x31, 0xb5, 0x6d, 0x2b, 0xba, 0x9d, 0xfc, 0x65, 0x2d, 0x59, + 0xb0, 0xcc, 0x60, 0x31, 0xfa, 0x4b, 0x12, 0x1c, +}; +static const unsigned char kat3776_retbits[] = { + 0x6e, 0x90, 0xac, 0x71, 0xeb, 0x0d, 0xa1, 0x0c, 0x76, 0xc8, 0x88, 0x77, + 0xbd, 0x18, 0x0b, 0x0e, 0x1c, 0x24, 0x81, 0x81, 0x3e, 0x67, 0xfb, 0xe8, + 0xad, 0x95, 0x5f, 0x75, 0xa9, 0x5f, 0xfd, 0x4f, 0x97, 0x96, 0xc7, 0xe2, + 0xb3, 0xf7, 0x6e, 0x20, 0x42, 0x3e, 0x30, 0xa0, 0x19, 0x23, 0x95, 0xc7, + 0x40, 0xf4, 0xd7, 0x14, 0x8b, 0xcb, 0xd8, 0xa5, 0xd1, 0xf9, 0xf4, 0xe6, + 0x6a, 0x51, 0x7b, 0x03, +}; +static const struct drbg_kat_pr_true kat3776_t = { + 10, kat3776_entropyin, kat3776_nonce, kat3776_persstr, + kat3776_entropyinpr1, kat3776_addinpr1, kat3776_entropyinpr2, + kat3776_addinpr2, kat3776_retbits +}; +static const struct drbg_kat kat3776 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3776_t +}; + +static const unsigned char kat3777_entropyin[] = { + 0x9c, 0x68, 0x7d, 0x67, 0xb9, 0x95, 0xf3, 0x36, 0x15, 0x69, 0x49, 0x33, + 0x8a, 0xa9, 0xb1, 0xe0, 0x1f, 0xdd, 0xb0, 0xfd, 0x5d, 0x07, 0x5c, 0xfc, + 0x2a, 0x6f, 0xba, 0x06, 0xf9, 0xc6, 0xf9, 0xc6, +}; +static const unsigned char kat3777_nonce[] = {0}; +static const unsigned char kat3777_persstr[] = { + 0xba, 0x8b, 0x6f, 0x0b, 0x19, 0xae, 0x8c, 0x14, 0x48, 0xdf, 0x3f, 0x14, + 0x3c, 0xbd, 0x67, 0xda, 0xb4, 0xde, 0xc0, 0x19, 0x85, 0x3f, 0xc3, 0xea, + 0xb7, 0x91, 0x1b, 0xc9, 0x30, 0x52, 0x1f, 0x37, +}; +static const unsigned char kat3777_entropyinpr1[] = { + 0x27, 0x91, 0xfa, 0x55, 0x26, 0x04, 0x5c, 0x3d, 0xc0, 0x1f, 0xc2, 0x0e, + 0x52, 0x69, 0x65, 0x66, 0xf8, 0x85, 0xd1, 0x8a, 0x9d, 0xf4, 0x41, 0x1c, + 0xee, 0xbd, 0x99, 0x84, 0xe9, 0xb0, 0xcd, 0x2b, +}; +static const unsigned char kat3777_addinpr1[] = { + 0x49, 0x5a, 0xec, 0x82, 0x0a, 0xa6, 0x6a, 0xc0, 0x81, 0x80, 0xc1, 0x25, + 0xcf, 0x81, 0xf3, 0x22, 0xbb, 0x00, 0xb4, 0x86, 0x16, 0x8f, 0xea, 0xb7, + 0x20, 0x59, 0xab, 0xff, 0x04, 0xa9, 0x73, 0x50, +}; +static const unsigned char kat3777_entropyinpr2[] = { + 0x66, 0x1f, 0xd9, 0x25, 0x76, 0x10, 0xf1, 0xc4, 0xfe, 0x96, 0x1e, 0x2c, + 0x3a, 0xca, 0xb0, 0x17, 0x39, 0x58, 0x67, 0x94, 0x32, 0xdd, 0xbf, 0xf8, + 0x61, 0xc4, 0x81, 0x60, 0xaa, 0x0a, 0x5d, 0x4e, +}; +static const unsigned char kat3777_addinpr2[] = { + 0x20, 0xa8, 0x07, 0x8f, 0x69, 0x29, 0x35, 0x38, 0xe8, 0x1a, 0x6b, 0xfd, + 0x24, 0xbd, 0x20, 0x0b, 0xe3, 0x47, 0x4d, 0x04, 0x25, 0x2c, 0xe5, 0x36, + 0x51, 0x99, 0x9e, 0x11, 0xce, 0x06, 0xdd, 0xc3, +}; +static const unsigned char kat3777_retbits[] = { + 0xb9, 0xf3, 0x92, 0xa5, 0xb3, 0x36, 0xdd, 0xf0, 0xbb, 0x55, 0x6c, 0x86, + 0xaf, 0xa4, 0x0a, 0x2d, 0x9c, 0xaf, 0x99, 0x19, 0x27, 0x40, 0x33, 0x30, + 0xfc, 0x62, 0x2b, 0xf0, 0x21, 0x54, 0x7e, 0x22, 0xca, 0x42, 0xee, 0x9c, + 0x6a, 0x84, 0x23, 0x27, 0x8c, 0x0f, 0x89, 0xcf, 0xc2, 0x00, 0x01, 0x25, + 0xee, 0x5d, 0x7b, 0x8b, 0x0e, 0x89, 0x50, 0x70, 0xa2, 0xcf, 0x68, 0x59, + 0x40, 0xe4, 0xc2, 0x10, +}; +static const struct drbg_kat_pr_true kat3777_t = { + 11, kat3777_entropyin, kat3777_nonce, kat3777_persstr, + kat3777_entropyinpr1, kat3777_addinpr1, kat3777_entropyinpr2, + kat3777_addinpr2, kat3777_retbits +}; +static const struct drbg_kat kat3777 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3777_t +}; + +static const unsigned char kat3778_entropyin[] = { + 0x58, 0x3c, 0xe2, 0x14, 0xee, 0x4b, 0xa0, 0x11, 0x70, 0x1b, 0xb0, 0xf8, + 0xf5, 0x56, 0xda, 0x0f, 0x95, 0x2f, 0x4a, 0x85, 0x5d, 0x3e, 0xbe, 0x18, + 0x82, 0xca, 0xc3, 0x30, 0x81, 0x81, 0x87, 0x83, +}; +static const unsigned char kat3778_nonce[] = {0}; +static const unsigned char kat3778_persstr[] = { + 0xd4, 0x2e, 0x1f, 0x3d, 0x1e, 0xae, 0x3c, 0x1f, 0x9a, 0xa0, 0xc7, 0x92, + 0x34, 0xa9, 0xc8, 0x6e, 0xe1, 0x60, 0xf6, 0xc3, 0x4e, 0x0d, 0x9c, 0xd8, + 0xc5, 0xb9, 0xf0, 0x73, 0x99, 0x2e, 0xc0, 0x77, +}; +static const unsigned char kat3778_entropyinpr1[] = { + 0x63, 0x4f, 0x25, 0x2d, 0x8c, 0xfb, 0xa4, 0xe0, 0x1c, 0x94, 0x75, 0x16, + 0x48, 0xc7, 0xf8, 0xe0, 0x42, 0x42, 0xe4, 0xd5, 0x86, 0x48, 0xbb, 0xb1, + 0x39, 0xf2, 0x7d, 0x7a, 0x76, 0x10, 0x30, 0xd5, +}; +static const unsigned char kat3778_addinpr1[] = { + 0x7f, 0x79, 0x87, 0xdc, 0x42, 0x45, 0x33, 0x7d, 0x6e, 0xec, 0x6e, 0x63, + 0x40, 0x90, 0x99, 0x1b, 0xdd, 0xe8, 0xf3, 0x6d, 0x54, 0x88, 0xf1, 0x1e, + 0xb0, 0x2a, 0xbf, 0xcb, 0x00, 0xb0, 0x57, 0x8b, +}; +static const unsigned char kat3778_entropyinpr2[] = { + 0x19, 0xdc, 0x7c, 0x54, 0x14, 0xde, 0xdc, 0x2d, 0x71, 0x7e, 0xc7, 0x44, + 0xaa, 0x12, 0x91, 0xc6, 0xaa, 0x8a, 0x2b, 0xd3, 0x4b, 0x4f, 0x40, 0x63, + 0xb1, 0x49, 0x21, 0xbb, 0x9a, 0x68, 0x45, 0x96, +}; +static const unsigned char kat3778_addinpr2[] = { + 0xb9, 0xa1, 0x52, 0x49, 0xcb, 0xe9, 0x5e, 0x06, 0x89, 0x53, 0xe7, 0xb7, + 0x01, 0x04, 0xf0, 0x35, 0x93, 0x87, 0x77, 0xa0, 0x7f, 0xd2, 0x18, 0x39, + 0x12, 0x16, 0x93, 0x29, 0xc4, 0x16, 0x1e, 0xea, +}; +static const unsigned char kat3778_retbits[] = { + 0xdc, 0xe9, 0x6a, 0x75, 0xd5, 0xed, 0x65, 0xad, 0x34, 0x23, 0x93, 0xb8, + 0x73, 0x86, 0x63, 0xf3, 0x44, 0x59, 0x8d, 0x59, 0x69, 0xd8, 0xf7, 0x8f, + 0x48, 0x02, 0xcc, 0x26, 0x7d, 0x1b, 0xc0, 0x00, 0x67, 0xb8, 0x6f, 0xb2, + 0x9f, 0xaa, 0x29, 0x90, 0x68, 0x33, 0x3a, 0x16, 0xce, 0xcb, 0x57, 0xa4, + 0x3e, 0xf6, 0x63, 0x1d, 0x5c, 0xa6, 0x24, 0xf0, 0x57, 0x97, 0x0e, 0x58, + 0x40, 0xeb, 0x1f, 0x44, +}; +static const struct drbg_kat_pr_true kat3778_t = { + 12, kat3778_entropyin, kat3778_nonce, kat3778_persstr, + kat3778_entropyinpr1, kat3778_addinpr1, kat3778_entropyinpr2, + kat3778_addinpr2, kat3778_retbits +}; +static const struct drbg_kat kat3778 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3778_t +}; + +static const unsigned char kat3779_entropyin[] = { + 0x22, 0xcb, 0xd0, 0xc8, 0x99, 0x1a, 0x1f, 0xbf, 0x5e, 0x28, 0x76, 0xf5, + 0x1c, 0x83, 0x5e, 0x7b, 0x52, 0x22, 0xd4, 0xde, 0x29, 0xb4, 0x74, 0x41, + 0x4a, 0x1b, 0x67, 0x5e, 0xaa, 0xe0, 0x7a, 0x37, +}; +static const unsigned char kat3779_nonce[] = {0}; +static const unsigned char kat3779_persstr[] = { + 0x2c, 0xd5, 0xf1, 0xb2, 0x68, 0xe3, 0x6b, 0x99, 0x41, 0x3d, 0x01, 0xee, + 0xaf, 0x5b, 0x48, 0xf2, 0x08, 0x47, 0x3e, 0xc9, 0x97, 0x5f, 0xc0, 0x09, + 0x89, 0x28, 0x36, 0x89, 0xa3, 0xa9, 0xda, 0x8d, +}; +static const unsigned char kat3779_entropyinpr1[] = { + 0xea, 0x71, 0x10, 0x74, 0x2c, 0x7d, 0xc5, 0x29, 0x1e, 0x17, 0xa9, 0xf0, + 0xdc, 0x5a, 0x04, 0x02, 0x84, 0x8d, 0xfa, 0x42, 0x48, 0x82, 0x23, 0x69, + 0x31, 0x30, 0x88, 0xb7, 0xf9, 0x2f, 0x60, 0x93, +}; +static const unsigned char kat3779_addinpr1[] = { + 0x9e, 0x27, 0x30, 0x7e, 0x22, 0xbe, 0x64, 0x49, 0x27, 0x9a, 0xc8, 0xfb, + 0xa4, 0xfb, 0x91, 0xb9, 0xf8, 0x77, 0x71, 0x4d, 0x59, 0x20, 0x01, 0xc9, + 0x82, 0x3e, 0xc3, 0xd4, 0x3c, 0x94, 0x99, 0xe7, +}; +static const unsigned char kat3779_entropyinpr2[] = { + 0x57, 0xe3, 0x79, 0x8a, 0xe9, 0x74, 0x02, 0x4c, 0xd6, 0x01, 0xb1, 0xe4, + 0x78, 0xdc, 0xfe, 0x24, 0xb0, 0xac, 0xb5, 0x85, 0x1e, 0x9e, 0xc9, 0x51, + 0x8a, 0x60, 0xf9, 0x30, 0xa6, 0x5c, 0xf4, 0xef, +}; +static const unsigned char kat3779_addinpr2[] = { + 0x39, 0xa3, 0xa1, 0x9f, 0x9c, 0xf1, 0x76, 0x64, 0x13, 0x63, 0x0f, 0x5d, + 0x14, 0x3a, 0x1d, 0x6c, 0x4b, 0x0e, 0x7d, 0xaa, 0xdb, 0xfa, 0x60, 0xcb, + 0x23, 0x65, 0xc7, 0x43, 0x1f, 0xd7, 0xc8, 0xd2, +}; +static const unsigned char kat3779_retbits[] = { + 0x19, 0x69, 0x08, 0x14, 0xe0, 0x9f, 0x6c, 0xd1, 0x2f, 0xc2, 0x10, 0x3a, + 0x1c, 0xe6, 0xb3, 0x53, 0x9d, 0xd3, 0xbe, 0x92, 0x0b, 0xe9, 0x42, 0xed, + 0xfa, 0x70, 0x3e, 0xf2, 0xa2, 0x05, 0xb3, 0xe6, 0x98, 0x20, 0x75, 0x57, + 0x89, 0xcd, 0x98, 0x93, 0xdf, 0x9f, 0x2a, 0xf1, 0x8f, 0x16, 0x4c, 0xeb, + 0xf4, 0x24, 0x9c, 0xb5, 0x83, 0x0c, 0x3d, 0x1b, 0x66, 0x27, 0xf9, 0xdf, + 0x14, 0x30, 0xdf, 0x8c, +}; +static const struct drbg_kat_pr_true kat3779_t = { + 13, kat3779_entropyin, kat3779_nonce, kat3779_persstr, + kat3779_entropyinpr1, kat3779_addinpr1, kat3779_entropyinpr2, + kat3779_addinpr2, kat3779_retbits +}; +static const struct drbg_kat kat3779 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3779_t +}; + +static const unsigned char kat3780_entropyin[] = { + 0x31, 0x53, 0xc1, 0x04, 0xbb, 0x02, 0xd1, 0x5c, 0x49, 0xc4, 0x38, 0x78, + 0x78, 0x38, 0xaf, 0x42, 0x11, 0xa5, 0xa6, 0x83, 0xb9, 0x09, 0x93, 0xf1, + 0xa3, 0x96, 0x9f, 0xec, 0x80, 0x69, 0xcc, 0x25, +}; +static const unsigned char kat3780_nonce[] = {0}; +static const unsigned char kat3780_persstr[] = { + 0x8c, 0x90, 0x54, 0x4a, 0x34, 0x43, 0x5c, 0x27, 0x35, 0x76, 0x0d, 0x8f, + 0x55, 0xe6, 0x43, 0x51, 0x9b, 0x70, 0x3f, 0x04, 0xae, 0x11, 0x72, 0x0d, + 0x63, 0xcc, 0x73, 0xf6, 0xd4, 0xe6, 0x3b, 0x58, +}; +static const unsigned char kat3780_entropyinpr1[] = { + 0x68, 0x05, 0xeb, 0xcb, 0x82, 0xb1, 0x18, 0xc9, 0x8e, 0xf7, 0x3f, 0x0d, + 0x98, 0x67, 0xa7, 0x1f, 0xef, 0x1a, 0xe4, 0x35, 0xf1, 0x96, 0xd2, 0x3b, + 0xd3, 0xac, 0xfb, 0xfc, 0x88, 0x84, 0x9f, 0x40, +}; +static const unsigned char kat3780_addinpr1[] = { + 0x4a, 0x4b, 0x1e, 0x9e, 0x90, 0x99, 0x8c, 0xde, 0x32, 0x03, 0x5a, 0xd2, + 0xce, 0x01, 0xc2, 0x77, 0x22, 0xfb, 0xe4, 0x04, 0xff, 0x5c, 0x6b, 0x8e, + 0xb3, 0xae, 0x8e, 0x76, 0x29, 0xa8, 0x32, 0xe8, +}; +static const unsigned char kat3780_entropyinpr2[] = { + 0x09, 0xd8, 0xb1, 0x63, 0x46, 0xfb, 0xf2, 0x0c, 0xa0, 0x73, 0x68, 0x8a, + 0xb3, 0xe9, 0x17, 0x60, 0x26, 0x86, 0xe0, 0x7d, 0xff, 0x33, 0x81, 0x42, + 0x84, 0x14, 0x10, 0x06, 0x8e, 0x64, 0x02, 0x96, +}; +static const unsigned char kat3780_addinpr2[] = { + 0x34, 0xe5, 0x17, 0xff, 0x4f, 0x40, 0xe3, 0xc0, 0xc6, 0x99, 0x71, 0x01, + 0x34, 0xcd, 0xee, 0xd0, 0x29, 0xba, 0xea, 0x8e, 0x14, 0x2d, 0xb0, 0xba, + 0xc9, 0xc5, 0xab, 0xa6, 0xa0, 0xca, 0xa5, 0xf4, +}; +static const unsigned char kat3780_retbits[] = { + 0xc1, 0xd0, 0x09, 0x53, 0x76, 0xac, 0x84, 0x69, 0x21, 0xd2, 0xbb, 0xa5, + 0xf4, 0xd5, 0x0d, 0x23, 0x18, 0x51, 0x31, 0x17, 0x92, 0xc6, 0x6d, 0x12, + 0x5d, 0x57, 0x01, 0xd6, 0xcc, 0x46, 0x6e, 0x18, 0x1c, 0x89, 0x3d, 0xfc, + 0x99, 0x99, 0xc2, 0x10, 0x63, 0xf6, 0x9f, 0x0c, 0xdb, 0x98, 0x50, 0xc3, + 0xa3, 0x47, 0x55, 0x92, 0x6c, 0x67, 0xe3, 0xaf, 0x75, 0xe8, 0x01, 0xe7, + 0xc2, 0x1f, 0x3d, 0xa9, +}; +static const struct drbg_kat_pr_true kat3780_t = { + 14, kat3780_entropyin, kat3780_nonce, kat3780_persstr, + kat3780_entropyinpr1, kat3780_addinpr1, kat3780_entropyinpr2, + kat3780_addinpr2, kat3780_retbits +}; +static const struct drbg_kat kat3780 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3780_t +}; + +static const unsigned char kat3781_entropyin[] = { + 0x0e, 0x43, 0x8b, 0x67, 0x0b, 0x4d, 0x80, 0x3c, 0xb7, 0xf9, 0xea, 0x4c, + 0xe7, 0x5c, 0x22, 0x3a, 0xa4, 0x9e, 0xf1, 0xad, 0xff, 0x45, 0x49, 0xdb, + 0xaf, 0xff, 0x52, 0x50, 0x3a, 0x54, 0x79, 0xde, +}; +static const unsigned char kat3781_nonce[] = {0}; +static const unsigned char kat3781_persstr[] = {0}; +static const unsigned char kat3781_entropyinpr1[] = { + 0x5a, 0x04, 0xf7, 0xb4, 0x95, 0xdd, 0x0d, 0x74, 0x4e, 0xc1, 0x44, 0x3e, + 0x2f, 0x6e, 0x1b, 0xc2, 0x0e, 0xb4, 0x57, 0x3d, 0xe1, 0x12, 0xa5, 0x34, + 0x1c, 0x13, 0xc5, 0x12, 0xc5, 0xc6, 0x19, 0xe8, +}; +static const unsigned char kat3781_addinpr1[] = {0}; +static const unsigned char kat3781_entropyinpr2[] = { + 0x15, 0xd4, 0x94, 0x35, 0xdb, 0x69, 0x54, 0xe8, 0x06, 0x47, 0x6c, 0x7d, + 0x2e, 0xa4, 0xc5, 0xff, 0xf4, 0xa1, 0xd5, 0x83, 0x4f, 0x5c, 0xbf, 0x7b, + 0xd6, 0x16, 0xdd, 0xc7, 0x90, 0xaf, 0xe4, 0x09, +}; +static const unsigned char kat3781_addinpr2[] = {0}; +static const unsigned char kat3781_retbits[] = { + 0x0a, 0xe8, 0x21, 0x83, 0x79, 0x52, 0x08, 0x83, 0x32, 0xc7, 0xc9, 0xa9, + 0xc9, 0xb9, 0xa9, 0x1c, 0xf7, 0xa2, 0xbf, 0xae, 0xe6, 0x64, 0x4d, 0xde, + 0x20, 0xf9, 0x19, 0x66, 0x9f, 0x97, 0xd2, 0xf1, 0x4d, 0x16, 0xff, 0x25, + 0xbe, 0xe5, 0x06, 0x2e, 0x6d, 0xb9, 0x14, 0x72, 0x52, 0x92, 0xb1, 0x47, + 0xca, 0xb0, 0xfb, 0xc1, 0xfa, 0x20, 0x25, 0x07, 0xf8, 0x82, 0xa9, 0x1b, + 0x69, 0x58, 0xba, 0xfd, +}; +static const struct drbg_kat_pr_true kat3781_t = { + 0, kat3781_entropyin, kat3781_nonce, kat3781_persstr, + kat3781_entropyinpr1, kat3781_addinpr1, kat3781_entropyinpr2, + kat3781_addinpr2, kat3781_retbits +}; +static const struct drbg_kat kat3781 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3781_t +}; + +static const unsigned char kat3782_entropyin[] = { + 0xd1, 0xaf, 0x89, 0x7a, 0x3f, 0x0d, 0xb9, 0xee, 0xc2, 0x19, 0x1d, 0xdf, + 0x52, 0xb9, 0x43, 0x10, 0xbb, 0xb0, 0x0a, 0x1c, 0xf2, 0x5b, 0xb7, 0xcd, + 0xd2, 0xc2, 0xe2, 0xc5, 0x3d, 0x67, 0x98, 0x66, +}; +static const unsigned char kat3782_nonce[] = {0}; +static const unsigned char kat3782_persstr[] = {0}; +static const unsigned char kat3782_entropyinpr1[] = { + 0x61, 0x42, 0x0c, 0x5e, 0x63, 0x72, 0xa1, 0x26, 0x50, 0xf2, 0x91, 0x4f, + 0xec, 0x5b, 0xb7, 0x0b, 0x9f, 0xf5, 0x30, 0x98, 0xa9, 0x98, 0xd5, 0xd4, + 0x83, 0xa5, 0xa4, 0x1a, 0x17, 0x43, 0x95, 0x9d, +}; +static const unsigned char kat3782_addinpr1[] = {0}; +static const unsigned char kat3782_entropyinpr2[] = { + 0x0e, 0x02, 0xb6, 0xb4, 0x6b, 0xa4, 0x3b, 0x77, 0x8d, 0xe2, 0x09, 0x20, + 0xc5, 0x55, 0xc2, 0xcb, 0x52, 0xeb, 0x16, 0xbe, 0x3a, 0xb2, 0x2e, 0xa4, + 0xee, 0x6f, 0x42, 0xae, 0x20, 0x11, 0xad, 0xb4, +}; +static const unsigned char kat3782_addinpr2[] = {0}; +static const unsigned char kat3782_retbits[] = { + 0x15, 0x03, 0x79, 0x7e, 0xfd, 0xc2, 0x46, 0xe3, 0x33, 0x87, 0x70, 0x9e, + 0x9b, 0xce, 0x77, 0x1a, 0xa9, 0xa3, 0x9a, 0xba, 0xdf, 0xd2, 0xb2, 0x9f, + 0xb6, 0xee, 0x6b, 0xf2, 0xb0, 0xeb, 0x7a, 0xed, 0x1c, 0xfb, 0xfb, 0x93, + 0x32, 0x6e, 0xbe, 0xcd, 0x43, 0x00, 0xe7, 0x16, 0x98, 0xda, 0x82, 0x75, + 0x6b, 0x9e, 0x12, 0x30, 0x24, 0x3f, 0x81, 0xce, 0xda, 0xc6, 0xd2, 0xb4, + 0x85, 0x07, 0x17, 0xb3, +}; +static const struct drbg_kat_pr_true kat3782_t = { + 1, kat3782_entropyin, kat3782_nonce, kat3782_persstr, + kat3782_entropyinpr1, kat3782_addinpr1, kat3782_entropyinpr2, + kat3782_addinpr2, kat3782_retbits +}; +static const struct drbg_kat kat3782 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3782_t +}; + +static const unsigned char kat3783_entropyin[] = { + 0x46, 0x51, 0x68, 0xf3, 0x18, 0x97, 0xcc, 0xe4, 0x08, 0x21, 0x0d, 0xab, + 0x00, 0x31, 0x4a, 0x76, 0x9e, 0xc5, 0xf3, 0x23, 0x0c, 0x8c, 0xf6, 0x8b, + 0x80, 0xa0, 0x48, 0x33, 0x45, 0xfe, 0x4a, 0xdd, +}; +static const unsigned char kat3783_nonce[] = {0}; +static const unsigned char kat3783_persstr[] = {0}; +static const unsigned char kat3783_entropyinpr1[] = { + 0x6a, 0xb8, 0x2b, 0x88, 0x4b, 0x5b, 0x88, 0x88, 0xbe, 0xf8, 0xec, 0x38, + 0x11, 0x84, 0x4c, 0x2e, 0x14, 0xa5, 0xc7, 0x1d, 0xac, 0xae, 0x63, 0xf4, + 0x77, 0xf5, 0xc7, 0xac, 0xee, 0x64, 0xf9, 0x9b, +}; +static const unsigned char kat3783_addinpr1[] = {0}; +static const unsigned char kat3783_entropyinpr2[] = { + 0x76, 0x19, 0x33, 0x06, 0x5a, 0x97, 0xb0, 0x50, 0x23, 0xce, 0xb1, 0x81, + 0xd0, 0xc7, 0x2a, 0x14, 0xf3, 0x47, 0xd4, 0x19, 0x6a, 0x37, 0x74, 0x4c, + 0xeb, 0xab, 0xe3, 0x0f, 0x42, 0xcd, 0xaa, 0x7f, +}; +static const unsigned char kat3783_addinpr2[] = {0}; +static const unsigned char kat3783_retbits[] = { + 0x1e, 0x8f, 0x3c, 0x68, 0xac, 0x09, 0x2f, 0x1e, 0x69, 0x97, 0xb1, 0x3f, + 0x4a, 0x9c, 0x97, 0x1c, 0x27, 0xb8, 0x57, 0xa0, 0x7b, 0xf2, 0xc4, 0x1a, + 0x1e, 0x90, 0x1b, 0xf0, 0xe9, 0xe7, 0xd5, 0x61, 0xbd, 0xc9, 0x69, 0x04, + 0xf5, 0xf0, 0x0e, 0x66, 0x7f, 0xde, 0x20, 0x49, 0x34, 0xb8, 0x88, 0xc7, + 0x10, 0x9a, 0xeb, 0x97, 0x56, 0x2f, 0x25, 0xcf, 0xf6, 0x8d, 0x52, 0x9b, + 0x0a, 0x8e, 0x48, 0x52, +}; +static const struct drbg_kat_pr_true kat3783_t = { + 2, kat3783_entropyin, kat3783_nonce, kat3783_persstr, + kat3783_entropyinpr1, kat3783_addinpr1, kat3783_entropyinpr2, + kat3783_addinpr2, kat3783_retbits +}; +static const struct drbg_kat kat3783 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3783_t +}; + +static const unsigned char kat3784_entropyin[] = { + 0x40, 0x9f, 0x5d, 0x9b, 0x56, 0x14, 0xbc, 0x92, 0x21, 0xbb, 0x41, 0xd0, + 0x3c, 0x7e, 0x34, 0xc0, 0xfc, 0xd3, 0x1b, 0x86, 0x97, 0x99, 0xea, 0xbf, + 0x95, 0xc1, 0x29, 0xba, 0x1a, 0x62, 0x51, 0x2c, +}; +static const unsigned char kat3784_nonce[] = {0}; +static const unsigned char kat3784_persstr[] = {0}; +static const unsigned char kat3784_entropyinpr1[] = { + 0xbc, 0x36, 0x3e, 0xe6, 0xea, 0x2c, 0x9e, 0x85, 0xa2, 0xcb, 0xff, 0xfe, + 0xc9, 0xe8, 0xf7, 0xd0, 0xe9, 0xac, 0x4d, 0x62, 0x7b, 0xaf, 0xc4, 0x22, + 0xa2, 0xdc, 0x5c, 0x8b, 0x3e, 0xd0, 0xec, 0x1d, +}; +static const unsigned char kat3784_addinpr1[] = {0}; +static const unsigned char kat3784_entropyinpr2[] = { + 0x03, 0x48, 0x37, 0x74, 0x5d, 0x05, 0x83, 0x47, 0xc3, 0xc7, 0x54, 0xaf, + 0x58, 0x6c, 0xe8, 0xec, 0xa4, 0x13, 0x49, 0x84, 0x27, 0x12, 0x51, 0xec, + 0xdf, 0x09, 0xa4, 0x6a, 0xfc, 0xc1, 0x21, 0xf2, +}; +static const unsigned char kat3784_addinpr2[] = {0}; +static const unsigned char kat3784_retbits[] = { + 0xec, 0x9b, 0x08, 0x43, 0xac, 0x59, 0xc2, 0x1f, 0x11, 0xd1, 0xdf, 0x59, + 0x35, 0x73, 0x54, 0x83, 0x69, 0x70, 0x95, 0x3f, 0xe2, 0xde, 0xc7, 0xd5, + 0x2e, 0xd6, 0x06, 0x04, 0xc8, 0xf5, 0x56, 0x02, 0x90, 0xeb, 0xa3, 0xb2, + 0x0c, 0x65, 0x38, 0xc1, 0xa5, 0xf9, 0x9e, 0x5c, 0xc9, 0x78, 0xee, 0xba, + 0x48, 0xb7, 0x7a, 0xd1, 0x5e, 0x48, 0x8c, 0xdb, 0x62, 0xd2, 0x84, 0xbd, + 0xad, 0x16, 0xab, 0xcc, +}; +static const struct drbg_kat_pr_true kat3784_t = { + 3, kat3784_entropyin, kat3784_nonce, kat3784_persstr, + kat3784_entropyinpr1, kat3784_addinpr1, kat3784_entropyinpr2, + kat3784_addinpr2, kat3784_retbits +}; +static const struct drbg_kat kat3784 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3784_t +}; + +static const unsigned char kat3785_entropyin[] = { + 0xd4, 0x69, 0x70, 0x11, 0x4f, 0x0c, 0x6d, 0x09, 0x3c, 0x6a, 0x20, 0xc3, + 0x28, 0x27, 0x95, 0xc0, 0x51, 0xa8, 0xb4, 0xef, 0xea, 0x10, 0x5c, 0x94, + 0xc3, 0xc7, 0x5d, 0x92, 0x1c, 0x34, 0x86, 0xad, +}; +static const unsigned char kat3785_nonce[] = {0}; +static const unsigned char kat3785_persstr[] = {0}; +static const unsigned char kat3785_entropyinpr1[] = { + 0xd9, 0x1d, 0xeb, 0x7d, 0x15, 0x39, 0x9a, 0xf1, 0xd6, 0xc7, 0x6f, 0xc4, + 0xf3, 0x1d, 0xf4, 0xa5, 0xfc, 0x2a, 0xa8, 0x69, 0x29, 0x06, 0xf7, 0xf8, + 0x43, 0xc8, 0x80, 0xd2, 0xee, 0x11, 0x43, 0xb5, +}; +static const unsigned char kat3785_addinpr1[] = {0}; +static const unsigned char kat3785_entropyinpr2[] = { + 0x36, 0x14, 0x5c, 0x0c, 0x3f, 0x47, 0x4d, 0x2d, 0xb3, 0x25, 0xda, 0xc7, + 0xac, 0x89, 0xc2, 0x1e, 0x84, 0xfe, 0x8d, 0xa6, 0x28, 0xff, 0x02, 0xa8, + 0x48, 0xa4, 0xea, 0xe3, 0xb4, 0xd8, 0x1e, 0xf4, +}; +static const unsigned char kat3785_addinpr2[] = {0}; +static const unsigned char kat3785_retbits[] = { + 0x71, 0x37, 0x79, 0xba, 0x11, 0xf5, 0x87, 0xb5, 0x22, 0xc6, 0x32, 0x7a, + 0xca, 0x5a, 0xaa, 0x27, 0x1d, 0xb2, 0x63, 0xee, 0x01, 0x94, 0x28, 0x02, + 0x8d, 0x1e, 0x33, 0x52, 0x84, 0xbf, 0xdb, 0x11, 0xc7, 0x64, 0xfd, 0xcb, + 0x4c, 0x4a, 0x91, 0x26, 0x45, 0xb4, 0x1e, 0xfc, 0x65, 0xad, 0xb8, 0xfb, + 0x23, 0x32, 0x93, 0x75, 0x34, 0x18, 0xa3, 0xab, 0x4e, 0xed, 0x32, 0x3c, + 0xbe, 0x71, 0xd6, 0xa4, +}; +static const struct drbg_kat_pr_true kat3785_t = { + 4, kat3785_entropyin, kat3785_nonce, kat3785_persstr, + kat3785_entropyinpr1, kat3785_addinpr1, kat3785_entropyinpr2, + kat3785_addinpr2, kat3785_retbits +}; +static const struct drbg_kat kat3785 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3785_t +}; + +static const unsigned char kat3786_entropyin[] = { + 0x7b, 0x37, 0x47, 0xb5, 0x6f, 0x85, 0x47, 0xcb, 0x1d, 0x99, 0xb9, 0x25, + 0x38, 0xee, 0x95, 0x5c, 0x15, 0xda, 0x10, 0x57, 0xbc, 0x5f, 0x69, 0x19, + 0x98, 0xff, 0xd4, 0x84, 0x12, 0xd9, 0x22, 0x16, +}; +static const unsigned char kat3786_nonce[] = {0}; +static const unsigned char kat3786_persstr[] = {0}; +static const unsigned char kat3786_entropyinpr1[] = { + 0x05, 0x70, 0xe5, 0x45, 0xd5, 0x02, 0x61, 0x3d, 0xf9, 0x96, 0x0b, 0x89, + 0xf1, 0x6f, 0xe9, 0x9e, 0xd6, 0x5d, 0x84, 0xc7, 0x33, 0x35, 0x9a, 0xb4, + 0xc3, 0x91, 0xb9, 0xa2, 0x35, 0xd8, 0xa2, 0xd0, +}; +static const unsigned char kat3786_addinpr1[] = {0}; +static const unsigned char kat3786_entropyinpr2[] = { + 0x6e, 0x70, 0xf5, 0xa3, 0x89, 0x51, 0x71, 0xcb, 0xfd, 0x42, 0x64, 0x4a, + 0xc7, 0x09, 0x3e, 0xcb, 0xd4, 0x39, 0xf9, 0x94, 0x73, 0x3a, 0x6e, 0xa1, + 0xfd, 0x54, 0x30, 0x86, 0xd8, 0xc8, 0x67, 0x87, +}; +static const unsigned char kat3786_addinpr2[] = {0}; +static const unsigned char kat3786_retbits[] = { + 0x57, 0xc1, 0x29, 0x16, 0xb0, 0xe1, 0xd3, 0x1e, 0x1d, 0x1e, 0x25, 0x56, + 0x19, 0x65, 0x5c, 0x6f, 0xba, 0x57, 0xfb, 0x62, 0x43, 0x0d, 0xef, 0x55, + 0xf2, 0x86, 0xe3, 0xac, 0xe3, 0xf3, 0x24, 0xba, 0x5d, 0x9d, 0x8a, 0xdb, + 0x08, 0x07, 0xa6, 0x89, 0xd6, 0x3c, 0x24, 0x2e, 0x44, 0x9a, 0x6f, 0x0c, + 0xfd, 0xa0, 0x66, 0x9e, 0xfa, 0xd5, 0x99, 0xc6, 0x07, 0x14, 0x05, 0x76, + 0x2f, 0x2a, 0xff, 0x8c, +}; +static const struct drbg_kat_pr_true kat3786_t = { + 5, kat3786_entropyin, kat3786_nonce, kat3786_persstr, + kat3786_entropyinpr1, kat3786_addinpr1, kat3786_entropyinpr2, + kat3786_addinpr2, kat3786_retbits +}; +static const struct drbg_kat kat3786 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3786_t +}; + +static const unsigned char kat3787_entropyin[] = { + 0x67, 0xef, 0xb0, 0x46, 0xd0, 0xf2, 0x94, 0x7d, 0x10, 0xf9, 0x7f, 0x6b, + 0xe8, 0x03, 0xff, 0xa9, 0x4a, 0x5f, 0xa2, 0x30, 0x93, 0x14, 0x26, 0x92, + 0x72, 0xac, 0xed, 0x52, 0x62, 0x01, 0x3c, 0xc7, +}; +static const unsigned char kat3787_nonce[] = {0}; +static const unsigned char kat3787_persstr[] = {0}; +static const unsigned char kat3787_entropyinpr1[] = { + 0xd9, 0xd2, 0x27, 0x6b, 0x9d, 0x7c, 0xe2, 0x72, 0xfd, 0x5c, 0x6f, 0x4d, + 0x59, 0x0d, 0x32, 0xc0, 0x17, 0xe6, 0xca, 0x88, 0xe7, 0xe6, 0x4d, 0x37, + 0x17, 0x5e, 0x9a, 0x44, 0x94, 0x5f, 0x2a, 0x6a, +}; +static const unsigned char kat3787_addinpr1[] = {0}; +static const unsigned char kat3787_entropyinpr2[] = { + 0x0d, 0x04, 0x95, 0x78, 0x33, 0x5a, 0xa1, 0xe7, 0x63, 0xf2, 0x21, 0x10, + 0xb3, 0x48, 0x32, 0xa1, 0x53, 0x98, 0xf3, 0x04, 0xe3, 0x95, 0x5b, 0x86, + 0x45, 0xd8, 0x83, 0xe1, 0xf9, 0x58, 0x95, 0xd8, +}; +static const unsigned char kat3787_addinpr2[] = {0}; +static const unsigned char kat3787_retbits[] = { + 0x94, 0x08, 0xcb, 0x6c, 0x00, 0x8a, 0x62, 0x84, 0xb7, 0x19, 0x32, 0x82, + 0x69, 0xdb, 0x30, 0xb6, 0x45, 0xe7, 0xe6, 0x8e, 0x34, 0xf6, 0xb5, 0x6c, + 0xba, 0x64, 0xfc, 0x8e, 0x8d, 0xe1, 0x8c, 0x24, 0x04, 0xdd, 0xc2, 0x9d, + 0xcc, 0xcd, 0xf2, 0x6e, 0x05, 0xa4, 0xe1, 0xb4, 0x9b, 0xdf, 0x4e, 0x5b, + 0xac, 0x0b, 0xdc, 0x83, 0x10, 0x92, 0x47, 0x7b, 0x33, 0xfd, 0x13, 0x24, + 0x49, 0xf8, 0x0d, 0xe9, +}; +static const struct drbg_kat_pr_true kat3787_t = { + 6, kat3787_entropyin, kat3787_nonce, kat3787_persstr, + kat3787_entropyinpr1, kat3787_addinpr1, kat3787_entropyinpr2, + kat3787_addinpr2, kat3787_retbits +}; +static const struct drbg_kat kat3787 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3787_t +}; + +static const unsigned char kat3788_entropyin[] = { + 0x5e, 0x87, 0x16, 0x4f, 0x7e, 0x49, 0x39, 0xad, 0xb8, 0x90, 0x3c, 0x39, + 0x9c, 0x2c, 0xd4, 0x5d, 0x7a, 0x9e, 0xce, 0x7e, 0x22, 0xa9, 0x5f, 0x3a, + 0xfe, 0xca, 0xcf, 0xe6, 0x0e, 0xc8, 0x44, 0x86, +}; +static const unsigned char kat3788_nonce[] = {0}; +static const unsigned char kat3788_persstr[] = {0}; +static const unsigned char kat3788_entropyinpr1[] = { + 0xed, 0x07, 0xab, 0xbd, 0xa1, 0x6c, 0x7e, 0x85, 0x23, 0x6f, 0x04, 0x11, + 0xf1, 0x93, 0x69, 0x1c, 0xa1, 0xaf, 0x65, 0x89, 0x5d, 0x67, 0x88, 0x95, + 0x37, 0x3e, 0x4b, 0x95, 0x5b, 0x64, 0x15, 0xee, +}; +static const unsigned char kat3788_addinpr1[] = {0}; +static const unsigned char kat3788_entropyinpr2[] = { + 0x91, 0x10, 0x69, 0x7c, 0xda, 0xdf, 0x4a, 0x9c, 0x03, 0x26, 0x4d, 0x6b, + 0xcb, 0xf0, 0x83, 0xb4, 0x08, 0xcd, 0x13, 0xa1, 0xcd, 0x71, 0x2b, 0xe5, + 0xf3, 0x29, 0x04, 0xf8, 0xf3, 0x21, 0xb7, 0x5f, +}; +static const unsigned char kat3788_addinpr2[] = {0}; +static const unsigned char kat3788_retbits[] = { + 0xa3, 0x82, 0xc2, 0x9b, 0xd8, 0xa3, 0x27, 0x5a, 0x5f, 0x9c, 0x34, 0x70, + 0x9e, 0xa9, 0x89, 0xdc, 0xd6, 0x45, 0xb2, 0x41, 0x7d, 0x03, 0xeb, 0xa6, + 0x2b, 0x34, 0x95, 0x95, 0xda, 0x15, 0x5b, 0xcb, 0x5a, 0x33, 0x43, 0xd1, + 0x74, 0x8e, 0x57, 0x51, 0x25, 0xa1, 0x03, 0xa7, 0xd2, 0xe8, 0xc6, 0xfa, + 0x86, 0xfa, 0xa8, 0xee, 0x81, 0x29, 0x09, 0x38, 0x22, 0xd1, 0x24, 0xa4, + 0x89, 0x3c, 0x39, 0xaa, +}; +static const struct drbg_kat_pr_true kat3788_t = { + 7, kat3788_entropyin, kat3788_nonce, kat3788_persstr, + kat3788_entropyinpr1, kat3788_addinpr1, kat3788_entropyinpr2, + kat3788_addinpr2, kat3788_retbits +}; +static const struct drbg_kat kat3788 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3788_t +}; + +static const unsigned char kat3789_entropyin[] = { + 0x95, 0x5e, 0x06, 0x63, 0xb8, 0x25, 0x26, 0x0a, 0xa7, 0x26, 0xe8, 0x68, + 0xc4, 0x82, 0xa4, 0x92, 0xc7, 0xe6, 0x0d, 0x27, 0x3d, 0x80, 0x6a, 0x9a, + 0x92, 0xf2, 0xe3, 0x64, 0x99, 0x67, 0x38, 0xd4, +}; +static const unsigned char kat3789_nonce[] = {0}; +static const unsigned char kat3789_persstr[] = {0}; +static const unsigned char kat3789_entropyinpr1[] = { + 0xfa, 0x07, 0x85, 0xdf, 0xc3, 0x39, 0xe8, 0x17, 0xab, 0x4a, 0xe9, 0x8c, + 0x45, 0x37, 0x52, 0x8b, 0x5c, 0x0b, 0x98, 0x97, 0x24, 0x72, 0x6d, 0x95, + 0xe4, 0xbe, 0xa4, 0x96, 0x1b, 0xd3, 0x59, 0x53, +}; +static const unsigned char kat3789_addinpr1[] = {0}; +static const unsigned char kat3789_entropyinpr2[] = { + 0xa8, 0x6b, 0x47, 0xdf, 0xa1, 0xe4, 0x2b, 0x9b, 0x73, 0x00, 0xb3, 0x90, + 0x9f, 0x6a, 0x09, 0xa7, 0x53, 0x09, 0x0b, 0xf4, 0xad, 0xbf, 0x5d, 0xe2, + 0x07, 0xa4, 0x6c, 0xa0, 0xee, 0x50, 0x11, 0x72, +}; +static const unsigned char kat3789_addinpr2[] = {0}; +static const unsigned char kat3789_retbits[] = { + 0xbd, 0x35, 0xf3, 0x74, 0x1e, 0x4d, 0xcb, 0xf3, 0x2d, 0x0f, 0x2e, 0x69, + 0xbb, 0x8d, 0x46, 0x71, 0x88, 0xe2, 0xac, 0x67, 0x12, 0x4c, 0x84, 0xf5, + 0x09, 0x02, 0x0f, 0xa9, 0x90, 0xcf, 0x30, 0xfa, 0xae, 0x64, 0x38, 0x29, + 0x99, 0xb4, 0x43, 0x79, 0xae, 0xc8, 0x60, 0x97, 0x8c, 0xcf, 0xc0, 0x90, + 0x64, 0x62, 0x67, 0x8a, 0xec, 0xbc, 0x5d, 0x42, 0x5e, 0xfc, 0x22, 0x82, + 0xe1, 0xb5, 0x33, 0x2d, +}; +static const struct drbg_kat_pr_true kat3789_t = { + 8, kat3789_entropyin, kat3789_nonce, kat3789_persstr, + kat3789_entropyinpr1, kat3789_addinpr1, kat3789_entropyinpr2, + kat3789_addinpr2, kat3789_retbits +}; +static const struct drbg_kat kat3789 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3789_t +}; + +static const unsigned char kat3790_entropyin[] = { + 0x8f, 0x91, 0xc3, 0x3b, 0xc4, 0xc6, 0x65, 0xa1, 0xca, 0x75, 0x2a, 0xdc, + 0x2e, 0x06, 0xa3, 0x98, 0xb4, 0x66, 0x19, 0x41, 0xf3, 0x17, 0x30, 0x88, + 0x65, 0xea, 0x28, 0x57, 0xc8, 0x28, 0xdb, 0xcc, +}; +static const unsigned char kat3790_nonce[] = {0}; +static const unsigned char kat3790_persstr[] = {0}; +static const unsigned char kat3790_entropyinpr1[] = { + 0x75, 0xc6, 0xbb, 0x2d, 0x4f, 0xb2, 0x77, 0xad, 0x91, 0xb9, 0x35, 0xf6, + 0xa4, 0x50, 0xf4, 0xc9, 0x87, 0xa8, 0x9d, 0xf5, 0xa6, 0x58, 0x1f, 0xad, + 0xf0, 0xf6, 0xed, 0x60, 0xd0, 0x89, 0x92, 0x0c, +}; +static const unsigned char kat3790_addinpr1[] = {0}; +static const unsigned char kat3790_entropyinpr2[] = { + 0x16, 0x4a, 0xb4, 0xd6, 0xd0, 0xdf, 0xd8, 0x41, 0x04, 0xb7, 0xbb, 0xb9, + 0xc3, 0x1c, 0x85, 0x9f, 0xa7, 0x67, 0x68, 0xb5, 0x32, 0xe1, 0x1c, 0xa1, + 0x5b, 0x19, 0x84, 0x10, 0xf0, 0xb9, 0x24, 0x7d, +}; +static const unsigned char kat3790_addinpr2[] = {0}; +static const unsigned char kat3790_retbits[] = { + 0x93, 0x44, 0x7d, 0x09, 0x5c, 0x4b, 0x19, 0x69, 0xb1, 0x63, 0x13, 0x20, + 0x37, 0x39, 0x77, 0x6b, 0xeb, 0xf6, 0xf2, 0x41, 0x63, 0xe9, 0xaf, 0xff, + 0x86, 0x60, 0x6f, 0x54, 0xea, 0xc4, 0xff, 0x97, 0x51, 0xf2, 0xec, 0x08, + 0xa2, 0xca, 0x66, 0xf1, 0x35, 0xcf, 0x10, 0x49, 0xf2, 0x2c, 0xf7, 0x9a, + 0xad, 0x87, 0x75, 0xfa, 0x7c, 0xf1, 0x1e, 0x48, 0x0e, 0x4d, 0x53, 0x82, + 0x9d, 0xd1, 0x7e, 0xa8, +}; +static const struct drbg_kat_pr_true kat3790_t = { + 9, kat3790_entropyin, kat3790_nonce, kat3790_persstr, + kat3790_entropyinpr1, kat3790_addinpr1, kat3790_entropyinpr2, + kat3790_addinpr2, kat3790_retbits +}; +static const struct drbg_kat kat3790 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3790_t +}; + +static const unsigned char kat3791_entropyin[] = { + 0x36, 0xd5, 0x59, 0x45, 0xab, 0x9c, 0x3f, 0x38, 0x08, 0x54, 0xd0, 0x4d, + 0xb5, 0xc1, 0x5c, 0x8b, 0x7e, 0x10, 0xd8, 0xdb, 0x2c, 0xe9, 0xdc, 0x22, + 0x1b, 0x6e, 0x87, 0x24, 0x4e, 0xe1, 0x9c, 0xe5, +}; +static const unsigned char kat3791_nonce[] = {0}; +static const unsigned char kat3791_persstr[] = {0}; +static const unsigned char kat3791_entropyinpr1[] = { + 0x20, 0x7d, 0x69, 0x69, 0xc1, 0x64, 0x33, 0xd2, 0x78, 0xc3, 0x77, 0xc5, + 0xac, 0x67, 0xf2, 0x89, 0x75, 0xd6, 0x9d, 0x7f, 0x13, 0x1a, 0x9f, 0x19, + 0x81, 0x8e, 0x7a, 0x0d, 0x46, 0xd7, 0xe4, 0xb8, +}; +static const unsigned char kat3791_addinpr1[] = {0}; +static const unsigned char kat3791_entropyinpr2[] = { + 0x59, 0x40, 0x1d, 0x66, 0x81, 0xc5, 0xd5, 0x6d, 0xda, 0xaa, 0x7e, 0xd6, + 0x4e, 0x3b, 0x4b, 0x84, 0x73, 0x14, 0xb4, 0x4d, 0xf1, 0x0b, 0x69, 0xc3, + 0x13, 0x2f, 0x14, 0xba, 0x41, 0xcc, 0xe6, 0x48, +}; +static const unsigned char kat3791_addinpr2[] = {0}; +static const unsigned char kat3791_retbits[] = { + 0xb3, 0xd1, 0x61, 0x12, 0x79, 0x8d, 0x6e, 0x9f, 0x12, 0x75, 0xd8, 0x8d, + 0x89, 0x32, 0x0b, 0x4b, 0xff, 0xf4, 0x4f, 0xe4, 0xed, 0xe9, 0xea, 0x73, + 0x44, 0x91, 0xb2, 0x04, 0x8d, 0xf1, 0x8e, 0x04, 0xbb, 0xc7, 0x92, 0x40, + 0xec, 0x5a, 0x2c, 0x6a, 0x7c, 0xcf, 0xce, 0x73, 0xae, 0x90, 0xda, 0xf3, + 0x58, 0xce, 0x96, 0x7b, 0x00, 0x93, 0xa8, 0x53, 0xbe, 0x5c, 0x19, 0x08, + 0x27, 0x55, 0x5a, 0xc7, +}; +static const struct drbg_kat_pr_true kat3791_t = { + 10, kat3791_entropyin, kat3791_nonce, kat3791_persstr, + kat3791_entropyinpr1, kat3791_addinpr1, kat3791_entropyinpr2, + kat3791_addinpr2, kat3791_retbits +}; +static const struct drbg_kat kat3791 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3791_t +}; + +static const unsigned char kat3792_entropyin[] = { + 0x12, 0x94, 0x15, 0x19, 0xf6, 0x19, 0xd9, 0x7f, 0x3c, 0xfa, 0xb9, 0x1c, + 0x68, 0xc5, 0x7d, 0xfe, 0x9d, 0x55, 0xee, 0x3c, 0x17, 0xee, 0x92, 0x7f, + 0xdb, 0x48, 0xe2, 0xb3, 0xa4, 0x99, 0x49, 0x4a, +}; +static const unsigned char kat3792_nonce[] = {0}; +static const unsigned char kat3792_persstr[] = {0}; +static const unsigned char kat3792_entropyinpr1[] = { + 0xa4, 0x23, 0x4e, 0x62, 0x9f, 0x9b, 0x7b, 0xa4, 0xa0, 0x13, 0x3f, 0x17, + 0x61, 0x79, 0x85, 0xd2, 0xb3, 0xf8, 0xff, 0xc3, 0x30, 0x38, 0x53, 0xda, + 0xe2, 0x21, 0x4c, 0x47, 0x01, 0xa2, 0xfc, 0xee, +}; +static const unsigned char kat3792_addinpr1[] = {0}; +static const unsigned char kat3792_entropyinpr2[] = { + 0xa2, 0x36, 0xe0, 0x62, 0x05, 0x5a, 0x4a, 0x18, 0xfd, 0xc4, 0xbf, 0x9c, + 0xd7, 0x54, 0x6d, 0xa1, 0x23, 0x9b, 0x7b, 0x87, 0x60, 0xbc, 0x3d, 0xf6, + 0x8f, 0xe4, 0x28, 0x25, 0x81, 0x2f, 0x5e, 0x38, +}; +static const unsigned char kat3792_addinpr2[] = {0}; +static const unsigned char kat3792_retbits[] = { + 0xd5, 0x45, 0x60, 0x92, 0x7b, 0x33, 0x4d, 0x05, 0x46, 0x90, 0x7d, 0x50, + 0x0b, 0x49, 0xfb, 0xe9, 0xec, 0x2f, 0x33, 0xf4, 0x66, 0xc3, 0x18, 0x5a, + 0xd6, 0x38, 0xb8, 0x04, 0x1a, 0x88, 0x15, 0x26, 0x01, 0x98, 0x45, 0x31, + 0x18, 0xcb, 0x97, 0xd5, 0xac, 0xe9, 0x06, 0x89, 0x6d, 0x18, 0x8b, 0x6f, + 0xba, 0x3c, 0x9a, 0x14, 0x90, 0x4f, 0xb7, 0xd4, 0x00, 0x89, 0xa9, 0xdb, + 0x0c, 0xff, 0x9f, 0xc8, +}; +static const struct drbg_kat_pr_true kat3792_t = { + 11, kat3792_entropyin, kat3792_nonce, kat3792_persstr, + kat3792_entropyinpr1, kat3792_addinpr1, kat3792_entropyinpr2, + kat3792_addinpr2, kat3792_retbits +}; +static const struct drbg_kat kat3792 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3792_t +}; + +static const unsigned char kat3793_entropyin[] = { + 0x3e, 0x53, 0xb7, 0x2a, 0x8f, 0x70, 0x15, 0x7b, 0x5b, 0x4d, 0xf9, 0x12, + 0x6a, 0xa0, 0x28, 0x64, 0xcd, 0x24, 0x13, 0x97, 0x62, 0x52, 0xc4, 0x6e, + 0xcb, 0x4f, 0x9e, 0xcd, 0x10, 0xc2, 0x02, 0xfa, +}; +static const unsigned char kat3793_nonce[] = {0}; +static const unsigned char kat3793_persstr[] = {0}; +static const unsigned char kat3793_entropyinpr1[] = { + 0x3b, 0x56, 0x4e, 0x33, 0x1c, 0xbb, 0x00, 0x1b, 0xbe, 0xe3, 0xc4, 0xa4, + 0x79, 0xf8, 0x5c, 0x57, 0x14, 0xa0, 0xbe, 0x6e, 0x2a, 0x72, 0x79, 0xfb, + 0xc4, 0xc6, 0x19, 0xf4, 0x43, 0x49, 0x4c, 0x16, +}; +static const unsigned char kat3793_addinpr1[] = {0}; +static const unsigned char kat3793_entropyinpr2[] = { + 0xbc, 0x2e, 0x4d, 0xdc, 0x2d, 0x65, 0x73, 0x45, 0x26, 0xe8, 0xb6, 0x4c, + 0x96, 0x5b, 0x2f, 0x21, 0x7a, 0xb4, 0x99, 0xc6, 0x7d, 0x0e, 0xd2, 0x58, + 0xb0, 0x40, 0xe5, 0xab, 0x4b, 0x25, 0x10, 0x27, +}; +static const unsigned char kat3793_addinpr2[] = {0}; +static const unsigned char kat3793_retbits[] = { + 0x18, 0x74, 0xe5, 0xeb, 0x37, 0xd4, 0x8d, 0x1a, 0x4b, 0x68, 0x2e, 0xe0, + 0xd5, 0x03, 0xa0, 0xe3, 0x0c, 0xf6, 0x8e, 0x71, 0xd6, 0x5e, 0x8c, 0x3b, + 0x78, 0x03, 0xea, 0x56, 0x1f, 0xd5, 0x41, 0x3b, 0x20, 0x7b, 0xe3, 0xea, + 0x04, 0x9a, 0xfb, 0x97, 0xc1, 0xfb, 0xb5, 0xf5, 0x9a, 0x34, 0xe4, 0xf8, + 0xbb, 0xf8, 0x63, 0x77, 0x27, 0xd4, 0x1b, 0x90, 0x8b, 0x8b, 0x61, 0x26, + 0xe8, 0x9f, 0x1f, 0xb0, +}; +static const struct drbg_kat_pr_true kat3793_t = { + 12, kat3793_entropyin, kat3793_nonce, kat3793_persstr, + kat3793_entropyinpr1, kat3793_addinpr1, kat3793_entropyinpr2, + kat3793_addinpr2, kat3793_retbits +}; +static const struct drbg_kat kat3793 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3793_t +}; + +static const unsigned char kat3794_entropyin[] = { + 0x8a, 0x7c, 0x2c, 0x25, 0x33, 0xfd, 0xf0, 0xcb, 0x75, 0x00, 0xfb, 0x12, + 0xd8, 0x24, 0x7e, 0x2a, 0xa4, 0x59, 0x0f, 0xe0, 0xe7, 0x69, 0x97, 0xda, + 0xcf, 0x54, 0x34, 0x81, 0x23, 0x1c, 0x8b, 0x4b, +}; +static const unsigned char kat3794_nonce[] = {0}; +static const unsigned char kat3794_persstr[] = {0}; +static const unsigned char kat3794_entropyinpr1[] = { + 0x5d, 0xe0, 0x94, 0xe6, 0x42, 0x04, 0x39, 0x05, 0x2e, 0x76, 0xa9, 0x5e, + 0x2c, 0x15, 0xf0, 0xa5, 0x93, 0xa1, 0xe0, 0xac, 0x6a, 0xed, 0xfa, 0x31, + 0xb6, 0x81, 0x83, 0x05, 0x79, 0xf0, 0x0d, 0x2d, +}; +static const unsigned char kat3794_addinpr1[] = {0}; +static const unsigned char kat3794_entropyinpr2[] = { + 0x7b, 0x92, 0xdd, 0xde, 0xa5, 0x1e, 0xde, 0xa7, 0x11, 0xbf, 0x43, 0x4e, + 0xf8, 0xf6, 0x04, 0x60, 0xb5, 0x1c, 0x88, 0x8d, 0x9b, 0x73, 0x6a, 0x99, + 0x8a, 0xf9, 0xbe, 0xfe, 0x12, 0xe3, 0xaa, 0x63, +}; +static const unsigned char kat3794_addinpr2[] = {0}; +static const unsigned char kat3794_retbits[] = { + 0xbb, 0x7a, 0xdf, 0x58, 0x1b, 0x96, 0xa9, 0x4d, 0xd2, 0x65, 0xfe, 0xaa, + 0x14, 0xf0, 0xf8, 0xe4, 0x7d, 0xc7, 0xb3, 0x71, 0x6f, 0xa5, 0x8d, 0x67, + 0x36, 0x3d, 0x35, 0x36, 0xe4, 0x11, 0x50, 0xcd, 0xdd, 0xd5, 0x9a, 0x53, + 0xd0, 0x2f, 0xb6, 0x5a, 0x93, 0xdd, 0x64, 0x41, 0x7e, 0x11, 0x4d, 0xf5, + 0x1a, 0xac, 0xf9, 0x8d, 0x96, 0x91, 0xff, 0x3d, 0x19, 0x6c, 0x2d, 0xb6, + 0x88, 0x91, 0x72, 0x09, +}; +static const struct drbg_kat_pr_true kat3794_t = { + 13, kat3794_entropyin, kat3794_nonce, kat3794_persstr, + kat3794_entropyinpr1, kat3794_addinpr1, kat3794_entropyinpr2, + kat3794_addinpr2, kat3794_retbits +}; +static const struct drbg_kat kat3794 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3794_t +}; + +static const unsigned char kat3795_entropyin[] = { + 0x37, 0x36, 0x46, 0x1a, 0x00, 0x06, 0x66, 0x6e, 0xff, 0x36, 0x32, 0x87, + 0x3a, 0x14, 0xad, 0x00, 0x6d, 0xf6, 0x9c, 0xf7, 0xc1, 0xfd, 0x86, 0x48, + 0x49, 0xff, 0xd7, 0x2c, 0x04, 0xa5, 0x7c, 0xe6, +}; +static const unsigned char kat3795_nonce[] = {0}; +static const unsigned char kat3795_persstr[] = {0}; +static const unsigned char kat3795_entropyinpr1[] = { + 0xc5, 0x20, 0x74, 0xe8, 0x34, 0x3f, 0x57, 0xc0, 0xf5, 0x6c, 0x9a, 0xa4, + 0xbc, 0x3a, 0x6b, 0xcc, 0x9d, 0xff, 0x30, 0xb2, 0x19, 0x05, 0xae, 0x6c, + 0x5e, 0xaa, 0xfc, 0x8d, 0xd0, 0xd8, 0x71, 0x5d, +}; +static const unsigned char kat3795_addinpr1[] = {0}; +static const unsigned char kat3795_entropyinpr2[] = { + 0xf0, 0x9a, 0x47, 0x30, 0x9a, 0x1d, 0xdf, 0xeb, 0x54, 0xee, 0xa6, 0xdf, + 0xa7, 0xb1, 0x5a, 0xb0, 0xe6, 0xf1, 0x83, 0xe2, 0x47, 0x8a, 0x38, 0x89, + 0xde, 0x89, 0x09, 0x1c, 0x2b, 0xac, 0x0c, 0x25, +}; +static const unsigned char kat3795_addinpr2[] = {0}; +static const unsigned char kat3795_retbits[] = { + 0xef, 0xd9, 0x31, 0xfe, 0x77, 0xe2, 0x02, 0xd2, 0xab, 0xa8, 0x6f, 0x64, + 0x07, 0x12, 0x6a, 0x85, 0x9c, 0x88, 0x1a, 0xbc, 0x86, 0xc8, 0xf8, 0x34, + 0x2d, 0xee, 0xab, 0xf5, 0x27, 0xed, 0x6d, 0xc6, 0x79, 0xe5, 0xdf, 0xcd, + 0xd2, 0x12, 0xdd, 0xc3, 0xf2, 0xe7, 0x79, 0xd0, 0x43, 0xf0, 0x58, 0x89, + 0x3d, 0x7b, 0x23, 0xc6, 0xb6, 0x93, 0x34, 0xba, 0x01, 0x32, 0xdb, 0x6c, + 0xe8, 0x2a, 0x16, 0x7c, +}; +static const struct drbg_kat_pr_true kat3795_t = { + 14, kat3795_entropyin, kat3795_nonce, kat3795_persstr, + kat3795_entropyinpr1, kat3795_addinpr1, kat3795_entropyinpr2, + kat3795_addinpr2, kat3795_retbits +}; +static const struct drbg_kat kat3795 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 0, 64, &kat3795_t +}; + +static const unsigned char kat3796_entropyin[] = { + 0x94, 0x05, 0x13, 0x83, 0x2d, 0xa6, 0x87, 0x8e, 0xb7, 0x6b, 0x91, 0xf2, + 0x59, 0xcc, 0x76, 0xf0, 0x16, 0xf4, 0x75, 0x16, 0xbf, 0x4e, 0xcf, 0x05, + 0x91, 0x90, 0x83, 0x7b, 0xad, 0x02, 0x6f, 0x46, +}; +static const unsigned char kat3796_nonce[] = {0}; +static const unsigned char kat3796_persstr[] = {0}; +static const unsigned char kat3796_entropyinpr1[] = { + 0x42, 0xc6, 0xf3, 0x08, 0xbb, 0x9d, 0x05, 0xb9, 0x0e, 0x57, 0x0f, 0x5a, + 0xf5, 0xe7, 0xee, 0x62, 0xe5, 0xd9, 0xd5, 0x32, 0x6b, 0x14, 0x55, 0xe3, + 0x3d, 0xfd, 0x9e, 0x1a, 0x4b, 0x7a, 0xe7, 0x10, +}; +static const unsigned char kat3796_addinpr1[] = { + 0x3a, 0x5e, 0x2f, 0xbe, 0xb2, 0xc6, 0x05, 0x49, 0x48, 0xe0, 0xce, 0x2c, + 0xd0, 0xb2, 0xa5, 0x57, 0x62, 0x8d, 0x41, 0x2b, 0xe0, 0xb6, 0x08, 0x6c, + 0x63, 0xd8, 0xfa, 0x4f, 0x19, 0x6d, 0x8f, 0x91, +}; +static const unsigned char kat3796_entropyinpr2[] = { + 0xac, 0xd9, 0xa1, 0x6b, 0x81, 0x79, 0x5e, 0xc2, 0x17, 0xc2, 0x9b, 0xb9, + 0xe4, 0xa8, 0xe5, 0x1b, 0xe6, 0x1e, 0xf0, 0xe2, 0xf8, 0xd9, 0xac, 0x0d, + 0xa4, 0x9f, 0x4b, 0x74, 0x61, 0x6d, 0xd7, 0x89, +}; +static const unsigned char kat3796_addinpr2[] = { + 0xf9, 0xe1, 0x53, 0xb0, 0x41, 0xbe, 0xc6, 0xe7, 0xb3, 0xb7, 0xd9, 0x64, + 0x4b, 0xd6, 0xb8, 0xcb, 0x15, 0x6f, 0xf7, 0xc7, 0xbb, 0x60, 0xae, 0x71, + 0xd0, 0xac, 0x64, 0xf8, 0x6b, 0x00, 0x16, 0xdd, +}; +static const unsigned char kat3796_retbits[] = { + 0xda, 0x60, 0x0d, 0x28, 0x5c, 0xf0, 0x47, 0xc7, 0x74, 0x07, 0x96, 0x12, + 0xea, 0x68, 0x4f, 0xce, 0x14, 0xa9, 0x32, 0x34, 0xba, 0x4e, 0x39, 0xca, + 0x27, 0xeb, 0x8f, 0x68, 0xda, 0xde, 0x12, 0xc9, 0xe8, 0x1f, 0xbe, 0x93, + 0x45, 0xe6, 0xd4, 0xd1, 0xee, 0x70, 0x5e, 0x7e, 0x34, 0xee, 0x01, 0x49, + 0x7b, 0x1a, 0x55, 0xd6, 0x5f, 0x39, 0x6b, 0xaa, 0x7b, 0x9b, 0xe7, 0xc7, + 0x20, 0xc7, 0xe8, 0x0d, +}; +static const struct drbg_kat_pr_true kat3796_t = { + 0, kat3796_entropyin, kat3796_nonce, kat3796_persstr, + kat3796_entropyinpr1, kat3796_addinpr1, kat3796_entropyinpr2, + kat3796_addinpr2, kat3796_retbits +}; +static const struct drbg_kat kat3796 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3796_t +}; + +static const unsigned char kat3797_entropyin[] = { + 0xc3, 0x50, 0x86, 0xe6, 0x89, 0x2f, 0xde, 0x79, 0xbf, 0x81, 0x2b, 0x18, + 0x12, 0x1d, 0x8f, 0x5f, 0x2b, 0xb3, 0x73, 0x26, 0x1c, 0xbf, 0x12, 0x96, + 0x8d, 0x29, 0xe8, 0xf0, 0xd0, 0x8f, 0xc7, 0x40, +}; +static const unsigned char kat3797_nonce[] = {0}; +static const unsigned char kat3797_persstr[] = {0}; +static const unsigned char kat3797_entropyinpr1[] = { + 0x24, 0x29, 0x6a, 0xa0, 0x27, 0xd9, 0x10, 0xe9, 0x39, 0x9d, 0xed, 0xcd, + 0x8e, 0x30, 0xdf, 0x2e, 0x26, 0x14, 0x44, 0xc5, 0xab, 0x44, 0x3f, 0xcd, + 0x3c, 0x0c, 0x47, 0x64, 0xf1, 0x7c, 0x16, 0xb6, +}; +static const unsigned char kat3797_addinpr1[] = { + 0x29, 0x9f, 0x07, 0xb9, 0xec, 0x54, 0xe5, 0x78, 0x02, 0x6f, 0xd8, 0xf1, + 0xaf, 0xef, 0xaf, 0x2d, 0x7c, 0x89, 0x08, 0xde, 0xc6, 0x92, 0x78, 0x87, + 0x28, 0x43, 0xa5, 0xbb, 0x8f, 0xe3, 0x9d, 0x1f, +}; +static const unsigned char kat3797_entropyinpr2[] = { + 0x14, 0xf0, 0x39, 0x34, 0x08, 0x45, 0x2e, 0x98, 0x1d, 0x84, 0x48, 0x50, + 0x72, 0xca, 0xb5, 0xba, 0xf5, 0x6c, 0xcd, 0x55, 0x4f, 0x47, 0x35, 0xc5, + 0x16, 0xa8, 0x0d, 0x6d, 0xde, 0x1c, 0x51, 0xc4, +}; +static const unsigned char kat3797_addinpr2[] = { + 0x84, 0x99, 0x27, 0xc7, 0xe5, 0x69, 0x58, 0xb7, 0xdd, 0x1b, 0x91, 0xc5, + 0xf1, 0x8b, 0x94, 0x15, 0xa7, 0x4f, 0xc5, 0xdd, 0x7d, 0x5e, 0x8e, 0x0e, + 0x36, 0x36, 0x5d, 0xa1, 0xee, 0x7e, 0x35, 0x61, +}; +static const unsigned char kat3797_retbits[] = { + 0x13, 0xba, 0x75, 0x70, 0x47, 0x6b, 0x6a, 0x69, 0xa8, 0x7c, 0x3f, 0x0f, + 0x43, 0x8b, 0x74, 0xb7, 0xc6, 0x18, 0x12, 0xa6, 0x8a, 0xc5, 0xbc, 0x19, + 0x37, 0x89, 0x4b, 0xd4, 0x80, 0xae, 0x03, 0xef, 0x99, 0x75, 0x2b, 0x77, + 0xa6, 0x94, 0xab, 0x94, 0xaa, 0x72, 0xf6, 0x88, 0x39, 0xb3, 0x3e, 0xf8, + 0xbb, 0xf1, 0x31, 0x23, 0xfe, 0x8a, 0x82, 0x07, 0x8b, 0x91, 0x4c, 0x9b, + 0x8e, 0xc0, 0x87, 0x27, +}; +static const struct drbg_kat_pr_true kat3797_t = { + 1, kat3797_entropyin, kat3797_nonce, kat3797_persstr, + kat3797_entropyinpr1, kat3797_addinpr1, kat3797_entropyinpr2, + kat3797_addinpr2, kat3797_retbits +}; +static const struct drbg_kat kat3797 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3797_t +}; + +static const unsigned char kat3798_entropyin[] = { + 0x69, 0xdf, 0xcb, 0xb4, 0xa2, 0x84, 0x38, 0x68, 0xcd, 0x14, 0x1a, 0x24, + 0x6c, 0x69, 0xb6, 0x4e, 0x5a, 0x91, 0x1d, 0xd1, 0xc4, 0xf6, 0x23, 0x89, + 0xcb, 0xa4, 0x75, 0x0c, 0xc2, 0xee, 0xcd, 0xfa, +}; +static const unsigned char kat3798_nonce[] = {0}; +static const unsigned char kat3798_persstr[] = {0}; +static const unsigned char kat3798_entropyinpr1[] = { + 0x6a, 0xa7, 0xe0, 0x06, 0x57, 0xea, 0x6a, 0x29, 0x4a, 0xe0, 0xb4, 0x5e, + 0xa5, 0xe0, 0x17, 0xbe, 0x53, 0xaa, 0x67, 0x43, 0x4b, 0x1e, 0xdd, 0xe2, + 0x8e, 0xb9, 0x0f, 0x52, 0xbf, 0xc9, 0xf2, 0x68, +}; +static const unsigned char kat3798_addinpr1[] = { + 0x3b, 0xf1, 0xc1, 0x48, 0xb0, 0x4c, 0xb5, 0x3e, 0x19, 0x73, 0xa8, 0xc5, + 0xad, 0xe5, 0x6d, 0xc6, 0xe6, 0xc7, 0x5c, 0x5f, 0x12, 0xc6, 0x89, 0xa7, + 0x4a, 0xcf, 0x71, 0xf8, 0x49, 0x79, 0x7e, 0x8c, +}; +static const unsigned char kat3798_entropyinpr2[] = { + 0x79, 0x09, 0x7e, 0x55, 0xba, 0x3c, 0xfd, 0xdd, 0x22, 0x3c, 0x62, 0xbc, + 0x25, 0x36, 0xc2, 0x84, 0xe2, 0xb2, 0x36, 0x72, 0x6a, 0x77, 0xe5, 0x36, + 0x1b, 0xed, 0x1f, 0xea, 0x7a, 0x7d, 0x7a, 0xdd, +}; +static const unsigned char kat3798_addinpr2[] = { + 0xf8, 0x63, 0xae, 0x0c, 0xa0, 0x5c, 0xbd, 0x59, 0x97, 0x95, 0x44, 0xcd, + 0xc8, 0x5c, 0x9f, 0x90, 0xed, 0x33, 0x00, 0x1d, 0x60, 0xf5, 0xd4, 0x4e, + 0xde, 0x91, 0xd8, 0xb8, 0x12, 0x70, 0xf7, 0x5a, +}; +static const unsigned char kat3798_retbits[] = { + 0x1e, 0x28, 0x68, 0x0f, 0x65, 0xc3, 0x60, 0xf4, 0xbc, 0xcd, 0xba, 0xd1, + 0x6c, 0x70, 0x27, 0x6b, 0x8e, 0xf0, 0x61, 0xf7, 0x85, 0xce, 0xb2, 0x4e, + 0x5c, 0x26, 0xcc, 0x81, 0x80, 0xb4, 0x93, 0x11, 0xa0, 0x1f, 0xc7, 0xec, + 0xa2, 0x3f, 0x7e, 0x77, 0xbe, 0xad, 0x9d, 0xf3, 0x26, 0x8e, 0x32, 0xdc, + 0x9b, 0x1a, 0x9c, 0x6b, 0x7c, 0xe4, 0x62, 0xf1, 0x49, 0xcb, 0x53, 0xdd, + 0x9c, 0xf4, 0x3e, 0x20, +}; +static const struct drbg_kat_pr_true kat3798_t = { + 2, kat3798_entropyin, kat3798_nonce, kat3798_persstr, + kat3798_entropyinpr1, kat3798_addinpr1, kat3798_entropyinpr2, + kat3798_addinpr2, kat3798_retbits +}; +static const struct drbg_kat kat3798 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3798_t +}; + +static const unsigned char kat3799_entropyin[] = { + 0xcb, 0xbd, 0x17, 0x5d, 0x42, 0x7c, 0xab, 0x8b, 0xb8, 0xa4, 0x4a, 0xcf, + 0x18, 0x9d, 0xb1, 0x92, 0x4e, 0xb3, 0x14, 0x80, 0x6c, 0xba, 0x32, 0x11, + 0x23, 0xed, 0xb9, 0x5c, 0xb8, 0x5f, 0xcb, 0x83, +}; +static const unsigned char kat3799_nonce[] = {0}; +static const unsigned char kat3799_persstr[] = {0}; +static const unsigned char kat3799_entropyinpr1[] = { + 0x9f, 0x2c, 0x59, 0x2f, 0x9a, 0x68, 0xc0, 0x63, 0x61, 0x7f, 0x74, 0x0d, + 0xfb, 0x31, 0x13, 0x84, 0xb1, 0xa3, 0x1a, 0x21, 0xe0, 0xcb, 0x78, 0xa0, + 0x53, 0xe7, 0x4c, 0xa8, 0x88, 0xa1, 0x44, 0xeb, +}; +static const unsigned char kat3799_addinpr1[] = { + 0xb8, 0x16, 0xf2, 0x05, 0xed, 0x3d, 0x44, 0xbd, 0xa7, 0x29, 0xf3, 0xe1, + 0xd3, 0x17, 0xbb, 0xb7, 0x51, 0x16, 0x89, 0x2b, 0xc6, 0xaa, 0xe8, 0x68, + 0x66, 0x95, 0x57, 0x05, 0x19, 0x3a, 0xe1, 0xdd, +}; +static const unsigned char kat3799_entropyinpr2[] = { + 0xad, 0x96, 0x1d, 0xbd, 0x7e, 0x2e, 0xc6, 0xef, 0x76, 0x69, 0xf3, 0x5e, + 0xf7, 0x9e, 0x79, 0x94, 0x5a, 0xf8, 0x1b, 0x1e, 0x81, 0x59, 0x1b, 0x5d, + 0xd8, 0xfb, 0x44, 0x85, 0xb9, 0xbe, 0x86, 0xed, +}; +static const unsigned char kat3799_addinpr2[] = { + 0xf0, 0x73, 0xd0, 0xef, 0x5d, 0x90, 0x82, 0xd1, 0x17, 0x8d, 0x4e, 0x54, + 0x79, 0x93, 0x7a, 0x4c, 0x27, 0x96, 0x1b, 0x98, 0x34, 0xc6, 0x72, 0xe1, + 0xce, 0xea, 0x9a, 0x0b, 0x27, 0xad, 0x3e, 0x26, +}; +static const unsigned char kat3799_retbits[] = { + 0x2d, 0x72, 0x39, 0x62, 0x29, 0x34, 0x5d, 0xe1, 0x44, 0xa3, 0xf1, 0x92, + 0x43, 0xa3, 0xe6, 0xd1, 0xe0, 0xdf, 0x81, 0x06, 0x20, 0xe4, 0xa4, 0xce, + 0x4b, 0xfa, 0xb4, 0x04, 0xf6, 0xcd, 0x36, 0x4b, 0x5a, 0x85, 0x44, 0xe6, + 0x1d, 0xf5, 0x6a, 0x34, 0xf9, 0xcd, 0xe6, 0x85, 0xa2, 0x4c, 0x9d, 0xf4, + 0x21, 0x36, 0xc2, 0xd4, 0x98, 0x5d, 0x56, 0xf5, 0x35, 0xe9, 0xb5, 0x7e, + 0x6a, 0xf1, 0x90, 0x80, +}; +static const struct drbg_kat_pr_true kat3799_t = { + 3, kat3799_entropyin, kat3799_nonce, kat3799_persstr, + kat3799_entropyinpr1, kat3799_addinpr1, kat3799_entropyinpr2, + kat3799_addinpr2, kat3799_retbits +}; +static const struct drbg_kat kat3799 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3799_t +}; + +static const unsigned char kat3800_entropyin[] = { + 0x5b, 0x31, 0x4e, 0x29, 0x4b, 0xa1, 0x4a, 0x9a, 0x14, 0xcb, 0x4d, 0x82, + 0x81, 0xe4, 0x4c, 0x26, 0x74, 0xe9, 0x4c, 0x47, 0x44, 0xc3, 0xed, 0xf0, + 0xbb, 0xdd, 0x14, 0x4f, 0xce, 0xe1, 0x29, 0x5e, +}; +static const unsigned char kat3800_nonce[] = {0}; +static const unsigned char kat3800_persstr[] = {0}; +static const unsigned char kat3800_entropyinpr1[] = { + 0x1e, 0x00, 0xe9, 0x6f, 0x93, 0x97, 0x7e, 0x68, 0xd8, 0x47, 0x9a, 0x03, + 0xe7, 0x8d, 0x14, 0xc3, 0x74, 0x48, 0x9e, 0x99, 0x2a, 0x51, 0xd0, 0x15, + 0x3d, 0x0b, 0x8d, 0x5e, 0xd5, 0xcc, 0xb9, 0xcb, +}; +static const unsigned char kat3800_addinpr1[] = { + 0xf5, 0xf3, 0xdf, 0xbf, 0xae, 0xe3, 0xd0, 0x2d, 0xfd, 0xb8, 0x28, 0x84, + 0x10, 0xcf, 0x4d, 0x51, 0x8f, 0xd7, 0x49, 0xf3, 0x39, 0xdc, 0x4c, 0x3d, + 0xc5, 0xef, 0xae, 0x83, 0xa1, 0xeb, 0x4d, 0xd8, +}; +static const unsigned char kat3800_entropyinpr2[] = { + 0x88, 0xa4, 0xfb, 0x2c, 0xe8, 0xf2, 0xb2, 0x2f, 0xd3, 0x01, 0x14, 0xc7, + 0x06, 0x46, 0x70, 0x31, 0x60, 0x17, 0xdc, 0xce, 0x22, 0xd7, 0xb4, 0xa8, + 0x24, 0x0c, 0xfb, 0x2b, 0xd6, 0xba, 0x93, 0xf1, +}; +static const unsigned char kat3800_addinpr2[] = { + 0xfb, 0xb0, 0x0a, 0x5d, 0xaa, 0xf8, 0xe5, 0x17, 0xdd, 0x5a, 0x20, 0x7d, + 0xfa, 0x27, 0xe4, 0xb7, 0xba, 0x83, 0xed, 0xfb, 0x38, 0x4d, 0x58, 0x09, + 0xd1, 0xcc, 0x46, 0x33, 0x98, 0x3b, 0x8c, 0xfc, +}; +static const unsigned char kat3800_retbits[] = { + 0x1a, 0xf8, 0x07, 0x4b, 0x29, 0xde, 0xd5, 0x85, 0x1f, 0x41, 0x4b, 0x06, + 0x2e, 0x7d, 0x7f, 0xba, 0x3a, 0x27, 0x4d, 0x15, 0xc5, 0xe8, 0xf9, 0xdc, + 0x04, 0x6b, 0x40, 0x76, 0x45, 0xf4, 0x6c, 0xea, 0xfa, 0x9b, 0xf6, 0xf9, + 0x62, 0x81, 0x7b, 0x90, 0x39, 0x51, 0x83, 0x54, 0x82, 0x01, 0xb8, 0x24, + 0x90, 0x3b, 0x49, 0x17, 0xa4, 0x54, 0xef, 0x5a, 0x32, 0x6d, 0x3d, 0x9f, + 0x56, 0x18, 0xe5, 0x95, +}; +static const struct drbg_kat_pr_true kat3800_t = { + 4, kat3800_entropyin, kat3800_nonce, kat3800_persstr, + kat3800_entropyinpr1, kat3800_addinpr1, kat3800_entropyinpr2, + kat3800_addinpr2, kat3800_retbits +}; +static const struct drbg_kat kat3800 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3800_t +}; + +static const unsigned char kat3801_entropyin[] = { + 0x27, 0x43, 0xf8, 0xb3, 0x7d, 0x24, 0x2a, 0xe4, 0x92, 0x8e, 0x61, 0xb9, + 0x46, 0x92, 0xe9, 0x2a, 0x73, 0xe9, 0xdb, 0xcf, 0x26, 0xff, 0xfc, 0xbd, + 0xf8, 0x6a, 0xf2, 0x00, 0xe2, 0x48, 0xa8, 0x9c, +}; +static const unsigned char kat3801_nonce[] = {0}; +static const unsigned char kat3801_persstr[] = {0}; +static const unsigned char kat3801_entropyinpr1[] = { + 0xb5, 0xb8, 0xc3, 0xb0, 0xd8, 0xdb, 0x9a, 0x0f, 0x30, 0x90, 0xe0, 0x82, + 0x68, 0x6d, 0x02, 0x66, 0x92, 0x4e, 0x59, 0xd1, 0x50, 0x58, 0x1b, 0xc1, + 0x7f, 0x99, 0x6f, 0x8d, 0x8e, 0xfa, 0xa5, 0xdb, +}; +static const unsigned char kat3801_addinpr1[] = { + 0x7e, 0xd4, 0x21, 0xae, 0xe6, 0xff, 0x71, 0x16, 0x0f, 0x00, 0x02, 0xc2, + 0x85, 0x53, 0xc1, 0xb7, 0xca, 0xb5, 0xcf, 0x69, 0x66, 0xef, 0xc2, 0xba, + 0x38, 0x6a, 0x84, 0xe6, 0xbf, 0xe7, 0x75, 0x5e, +}; +static const unsigned char kat3801_entropyinpr2[] = { + 0x7e, 0x09, 0x09, 0x22, 0x19, 0xc3, 0x0f, 0x0a, 0xb2, 0x1a, 0x9b, 0xff, + 0x15, 0xe6, 0x53, 0xdc, 0x47, 0xa8, 0xf7, 0x8a, 0x9b, 0x48, 0xdd, 0x44, + 0xa0, 0x06, 0xb9, 0x4c, 0xd2, 0xf3, 0x40, 0x64, +}; +static const unsigned char kat3801_addinpr2[] = { + 0x15, 0xbe, 0xac, 0xda, 0xf7, 0x1f, 0xf4, 0x6f, 0x96, 0xa0, 0x94, 0xd0, + 0x19, 0xfa, 0x1b, 0xcf, 0x8d, 0x37, 0x12, 0x30, 0x35, 0xa7, 0xb5, 0xfa, + 0xd3, 0x1b, 0x77, 0x5f, 0x7d, 0x4d, 0xc8, 0x61, +}; +static const unsigned char kat3801_retbits[] = { + 0x9b, 0x8a, 0x28, 0x52, 0x03, 0x8a, 0x57, 0xae, 0x7d, 0xad, 0xe5, 0x7b, + 0xd9, 0xee, 0xc5, 0x08, 0xa2, 0xa2, 0xad, 0xc4, 0xd9, 0x89, 0x4f, 0x8e, + 0xf9, 0x95, 0x1c, 0xe1, 0x16, 0x4b, 0x0b, 0xd2, 0x79, 0x80, 0x08, 0x45, + 0x6a, 0x29, 0xa3, 0xae, 0xa0, 0x5d, 0x43, 0xef, 0x94, 0xed, 0x12, 0xf9, + 0xa7, 0xba, 0x9b, 0xed, 0xb2, 0x76, 0x39, 0xfc, 0x29, 0xeb, 0x03, 0x54, + 0x39, 0x07, 0x18, 0xdc, +}; +static const struct drbg_kat_pr_true kat3801_t = { + 5, kat3801_entropyin, kat3801_nonce, kat3801_persstr, + kat3801_entropyinpr1, kat3801_addinpr1, kat3801_entropyinpr2, + kat3801_addinpr2, kat3801_retbits +}; +static const struct drbg_kat kat3801 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3801_t +}; + +static const unsigned char kat3802_entropyin[] = { + 0x59, 0x06, 0xe1, 0xde, 0x68, 0xed, 0x4b, 0x52, 0xd6, 0x0e, 0xc9, 0x7a, + 0xc6, 0x62, 0xe8, 0xc0, 0xab, 0xfc, 0x1c, 0xb3, 0x1b, 0x46, 0x11, 0x3d, + 0xf2, 0x41, 0xfa, 0x88, 0x8c, 0xc3, 0xb4, 0xeb, +}; +static const unsigned char kat3802_nonce[] = {0}; +static const unsigned char kat3802_persstr[] = {0}; +static const unsigned char kat3802_entropyinpr1[] = { + 0xae, 0xa7, 0x34, 0x57, 0x8a, 0xa6, 0x62, 0xcc, 0x13, 0x5f, 0x0c, 0x88, + 0xec, 0x24, 0xe7, 0x10, 0x07, 0x7a, 0x8a, 0x2e, 0xa3, 0x18, 0x69, 0xdb, + 0xf9, 0x92, 0x1f, 0x48, 0x5a, 0x66, 0x47, 0x40, +}; +static const unsigned char kat3802_addinpr1[] = { + 0xf0, 0xa6, 0x5a, 0xf4, 0x8d, 0x67, 0xbe, 0x70, 0x5f, 0xf6, 0xda, 0xb9, + 0x40, 0x53, 0x3d, 0x72, 0x50, 0x15, 0x6a, 0x28, 0x2d, 0xba, 0x18, 0x56, + 0xa7, 0xfa, 0x1d, 0x13, 0x2e, 0xcc, 0xb5, 0xe6, +}; +static const unsigned char kat3802_entropyinpr2[] = { + 0x0f, 0x24, 0xc6, 0xd7, 0xf9, 0x32, 0x24, 0x11, 0x01, 0x67, 0x34, 0xea, + 0x1c, 0x26, 0x52, 0xce, 0x88, 0x0d, 0x65, 0x82, 0x66, 0x0c, 0x89, 0xba, + 0xfc, 0xad, 0x7a, 0xe7, 0x5d, 0x90, 0x02, 0x9f, +}; +static const unsigned char kat3802_addinpr2[] = { + 0xcd, 0xa4, 0xcd, 0xc0, 0xc7, 0xf7, 0x37, 0x45, 0x42, 0xd9, 0x07, 0x24, + 0xf4, 0xae, 0x94, 0x68, 0xe6, 0x68, 0x16, 0x40, 0x23, 0x29, 0x58, 0xbb, + 0x1a, 0xc1, 0xc4, 0xaa, 0xdb, 0xc3, 0x27, 0xe3, +}; +static const unsigned char kat3802_retbits[] = { + 0x9b, 0x3b, 0xf3, 0xf8, 0xb9, 0x14, 0xe6, 0x49, 0x62, 0x78, 0x84, 0xa9, + 0xdb, 0x3b, 0xea, 0xca, 0x71, 0x12, 0x70, 0xb5, 0x4d, 0xdb, 0xd4, 0x0d, + 0x31, 0x80, 0x20, 0x0f, 0x0a, 0x09, 0xbd, 0x98, 0x83, 0x79, 0x45, 0xda, + 0x9c, 0xb0, 0x26, 0x00, 0xe8, 0xfe, 0xff, 0x41, 0x0b, 0xb5, 0xd8, 0xde, + 0x4c, 0x8e, 0x4f, 0xf1, 0x2f, 0xb6, 0x2b, 0xa3, 0x94, 0x5a, 0x7d, 0xcd, + 0x24, 0x9b, 0x36, 0xa1, +}; +static const struct drbg_kat_pr_true kat3802_t = { + 6, kat3802_entropyin, kat3802_nonce, kat3802_persstr, + kat3802_entropyinpr1, kat3802_addinpr1, kat3802_entropyinpr2, + kat3802_addinpr2, kat3802_retbits +}; +static const struct drbg_kat kat3802 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3802_t +}; + +static const unsigned char kat3803_entropyin[] = { + 0x9d, 0xf1, 0x04, 0x38, 0xa5, 0xfe, 0x5e, 0xf0, 0x63, 0x13, 0x46, 0xab, + 0xae, 0x84, 0xfe, 0x08, 0x5a, 0x5d, 0x66, 0x2a, 0xae, 0x49, 0x27, 0xa0, + 0x42, 0x29, 0x21, 0xe0, 0xc5, 0x0c, 0x9a, 0x16, +}; +static const unsigned char kat3803_nonce[] = {0}; +static const unsigned char kat3803_persstr[] = {0}; +static const unsigned char kat3803_entropyinpr1[] = { + 0x32, 0xb4, 0x16, 0xbb, 0x02, 0xe2, 0xd4, 0xdb, 0xce, 0x86, 0x0e, 0x57, + 0x02, 0x0b, 0x25, 0x16, 0x98, 0xe3, 0xf9, 0x6d, 0x55, 0xd4, 0x5c, 0x0d, + 0x0a, 0x12, 0x4f, 0x8e, 0xc5, 0xf4, 0x33, 0x70, +}; +static const unsigned char kat3803_addinpr1[] = { + 0xd0, 0xb0, 0xec, 0xc9, 0x8a, 0xff, 0x92, 0x9d, 0x67, 0xf2, 0x0c, 0x86, + 0x51, 0x9d, 0x27, 0x64, 0xa0, 0x77, 0x1c, 0x23, 0x25, 0xf1, 0xce, 0x75, + 0x94, 0xe7, 0x74, 0x25, 0xe3, 0x8f, 0xcb, 0x71, +}; +static const unsigned char kat3803_entropyinpr2[] = { + 0x5b, 0xe9, 0xeb, 0x7b, 0x43, 0x73, 0x80, 0xa9, 0xd4, 0x79, 0x01, 0xcc, + 0x4b, 0xb9, 0xdd, 0xc4, 0xbc, 0x62, 0x01, 0xd9, 0x06, 0x0b, 0x24, 0x78, + 0x60, 0x0e, 0x3f, 0x97, 0x28, 0x7f, 0xea, 0x37, +}; +static const unsigned char kat3803_addinpr2[] = { + 0xfc, 0x61, 0xb3, 0x4f, 0xa0, 0x34, 0xed, 0x67, 0x39, 0xb1, 0xa3, 0xf3, + 0x64, 0xb4, 0x1b, 0x7c, 0x8c, 0x60, 0x54, 0xfd, 0xfd, 0x14, 0xc4, 0x91, + 0x39, 0x19, 0x3b, 0x91, 0xcf, 0x6d, 0xc9, 0xb5, +}; +static const unsigned char kat3803_retbits[] = { + 0xc8, 0xe3, 0x35, 0x86, 0x1e, 0xbc, 0x61, 0xea, 0x6d, 0xde, 0x4c, 0x7e, + 0x6b, 0x9a, 0xfc, 0x90, 0x8f, 0xb9, 0x67, 0x44, 0x19, 0x31, 0xc1, 0xc1, + 0x3f, 0x8e, 0x5e, 0xbe, 0xef, 0x7d, 0xc5, 0x09, 0xd0, 0x7f, 0x01, 0x85, + 0xe9, 0x4a, 0x1d, 0x53, 0x5f, 0x5c, 0xf1, 0x33, 0xed, 0x98, 0x8b, 0xe5, + 0xf8, 0x3b, 0x86, 0xb0, 0x01, 0xc5, 0x5f, 0xe6, 0x1d, 0x78, 0x1c, 0xc5, + 0x05, 0x25, 0x9a, 0xff, +}; +static const struct drbg_kat_pr_true kat3803_t = { + 7, kat3803_entropyin, kat3803_nonce, kat3803_persstr, + kat3803_entropyinpr1, kat3803_addinpr1, kat3803_entropyinpr2, + kat3803_addinpr2, kat3803_retbits +}; +static const struct drbg_kat kat3803 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3803_t +}; + +static const unsigned char kat3804_entropyin[] = { + 0x21, 0xa8, 0xb5, 0x9c, 0x97, 0xf2, 0xf7, 0xaa, 0xb5, 0x09, 0x8e, 0xb5, + 0x47, 0x99, 0xeb, 0xea, 0x56, 0xb9, 0xf6, 0xc7, 0xb5, 0x61, 0x0d, 0xbe, + 0x33, 0xb8, 0x25, 0x07, 0xea, 0x0d, 0x6c, 0x58, +}; +static const unsigned char kat3804_nonce[] = {0}; +static const unsigned char kat3804_persstr[] = {0}; +static const unsigned char kat3804_entropyinpr1[] = { + 0x16, 0xef, 0x87, 0x1c, 0xb3, 0x79, 0x62, 0xc7, 0xf5, 0x80, 0x9c, 0x59, + 0x85, 0x7c, 0xb2, 0x7b, 0x31, 0x06, 0xcc, 0xf0, 0x22, 0x7f, 0x91, 0x75, + 0xc7, 0x1b, 0x03, 0x57, 0xd6, 0xfc, 0x97, 0x9d, +}; +static const unsigned char kat3804_addinpr1[] = { + 0x28, 0xf8, 0xf4, 0x76, 0xf9, 0x79, 0x4e, 0x5e, 0x30, 0xff, 0x71, 0x1e, + 0x2e, 0xe3, 0x17, 0x99, 0x4f, 0x5a, 0xb5, 0x1b, 0xcc, 0x09, 0x7e, 0x87, + 0x39, 0xcf, 0xb0, 0xa7, 0x26, 0x82, 0x5d, 0x6b, +}; +static const unsigned char kat3804_entropyinpr2[] = { + 0x12, 0x4f, 0x03, 0xb8, 0x4c, 0xac, 0x8b, 0x23, 0x3c, 0xc1, 0x3a, 0xa1, + 0xb3, 0xae, 0x7d, 0xa2, 0x8d, 0xcf, 0x85, 0xa1, 0xce, 0xdb, 0x4c, 0xf9, + 0x4a, 0xf8, 0x4c, 0x2f, 0x90, 0xdc, 0xfe, 0x7f, +}; +static const unsigned char kat3804_addinpr2[] = { + 0xf4, 0x07, 0xb5, 0x5a, 0x73, 0x18, 0x52, 0xa8, 0x48, 0x77, 0x7b, 0x14, + 0x93, 0x12, 0xfd, 0x34, 0x6b, 0x9b, 0xca, 0x7e, 0x77, 0x8d, 0x37, 0x6e, + 0xac, 0x5b, 0xde, 0x0b, 0x7b, 0xea, 0xf8, 0xcb, +}; +static const unsigned char kat3804_retbits[] = { + 0xaa, 0xdf, 0x5f, 0xda, 0x6a, 0x56, 0xe8, 0xc1, 0x48, 0x0d, 0x5c, 0x99, + 0x34, 0xe4, 0x49, 0x9e, 0xf4, 0x6d, 0x41, 0xd4, 0x46, 0x27, 0x3f, 0xcc, + 0x85, 0x40, 0x40, 0x2e, 0x45, 0x31, 0x37, 0xaa, 0x08, 0x63, 0x4c, 0xec, + 0x74, 0xf4, 0x3b, 0xc9, 0xb7, 0xe6, 0xcb, 0x14, 0x01, 0x52, 0x49, 0xb1, + 0x84, 0xa9, 0x1a, 0x43, 0xeb, 0x7c, 0x09, 0xa9, 0xa9, 0x5a, 0x92, 0xa6, + 0x49, 0x5d, 0x13, 0xd5, +}; +static const struct drbg_kat_pr_true kat3804_t = { + 8, kat3804_entropyin, kat3804_nonce, kat3804_persstr, + kat3804_entropyinpr1, kat3804_addinpr1, kat3804_entropyinpr2, + kat3804_addinpr2, kat3804_retbits +}; +static const struct drbg_kat kat3804 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3804_t +}; + +static const unsigned char kat3805_entropyin[] = { + 0x48, 0x3e, 0xe9, 0xfa, 0x60, 0xe7, 0xf9, 0x37, 0x72, 0x92, 0x6f, 0xa7, + 0xc5, 0x4f, 0x08, 0x23, 0xf4, 0x38, 0x05, 0x42, 0x06, 0x52, 0x39, 0xc5, + 0x60, 0xee, 0xb7, 0xad, 0xb4, 0x74, 0xe5, 0x34, +}; +static const unsigned char kat3805_nonce[] = {0}; +static const unsigned char kat3805_persstr[] = {0}; +static const unsigned char kat3805_entropyinpr1[] = { + 0x2b, 0x6c, 0x86, 0xa7, 0xcd, 0x5e, 0xc8, 0x90, 0xc8, 0x1b, 0xd7, 0x63, + 0xcb, 0x44, 0x52, 0x39, 0x1d, 0x3c, 0xcd, 0x41, 0x73, 0x9e, 0x0a, 0x61, + 0xcc, 0xb5, 0x9b, 0x28, 0x34, 0x38, 0x6d, 0xdc, +}; +static const unsigned char kat3805_addinpr1[] = { + 0x5c, 0x07, 0x64, 0x6e, 0x67, 0xbf, 0x53, 0xed, 0x23, 0x41, 0x9f, 0x7f, + 0xfb, 0x51, 0xe4, 0x3a, 0x30, 0x66, 0x57, 0x22, 0x3f, 0x0d, 0x07, 0x2c, + 0x34, 0x51, 0x25, 0xab, 0x70, 0x73, 0x7a, 0x02, +}; +static const unsigned char kat3805_entropyinpr2[] = { + 0x18, 0x45, 0x91, 0xf2, 0xd1, 0x1d, 0xfe, 0x9f, 0x54, 0x1f, 0x37, 0x5b, + 0x4a, 0x81, 0xf2, 0x98, 0x12, 0x98, 0x42, 0xf8, 0x68, 0x26, 0x06, 0x52, + 0x46, 0x24, 0x7b, 0x7f, 0xdc, 0x35, 0xc1, 0x62, +}; +static const unsigned char kat3805_addinpr2[] = { + 0x61, 0xa8, 0x83, 0xa3, 0x2e, 0xec, 0x11, 0x1e, 0x8d, 0xab, 0xbc, 0x78, + 0x79, 0x63, 0x75, 0x52, 0x65, 0xf8, 0x54, 0xd7, 0x83, 0x7d, 0xd2, 0xdb, + 0x5d, 0xe7, 0x21, 0xe3, 0x01, 0x6b, 0xf5, 0xe7, +}; +static const unsigned char kat3805_retbits[] = { + 0x12, 0xc0, 0xbd, 0xa3, 0x14, 0x4b, 0x7c, 0x6e, 0x8e, 0xa4, 0xb7, 0xbd, + 0x94, 0xc2, 0x0f, 0xf4, 0x16, 0xf8, 0x91, 0x36, 0x01, 0x3b, 0xbe, 0x16, + 0x04, 0xf6, 0xee, 0x33, 0x5f, 0x45, 0x50, 0xb9, 0x21, 0xc6, 0xb5, 0x8a, + 0x26, 0x27, 0xa2, 0x0a, 0x14, 0x82, 0x5c, 0x5b, 0x8e, 0xae, 0x41, 0x80, + 0x52, 0xf1, 0x65, 0xf7, 0xb1, 0x54, 0x27, 0xe7, 0xed, 0x83, 0x77, 0xd4, + 0x54, 0x4c, 0x8d, 0x95, +}; +static const struct drbg_kat_pr_true kat3805_t = { + 9, kat3805_entropyin, kat3805_nonce, kat3805_persstr, + kat3805_entropyinpr1, kat3805_addinpr1, kat3805_entropyinpr2, + kat3805_addinpr2, kat3805_retbits +}; +static const struct drbg_kat kat3805 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3805_t +}; + +static const unsigned char kat3806_entropyin[] = { + 0x5d, 0x12, 0x7c, 0x29, 0xee, 0x65, 0xdb, 0xb8, 0x2f, 0x10, 0x1f, 0x5f, + 0x40, 0x68, 0xb7, 0xf3, 0xb0, 0x80, 0xe3, 0x89, 0xc4, 0xbe, 0xb4, 0xc2, + 0x79, 0xc4, 0x25, 0x01, 0xbd, 0xbb, 0xe2, 0xb1, +}; +static const unsigned char kat3806_nonce[] = {0}; +static const unsigned char kat3806_persstr[] = {0}; +static const unsigned char kat3806_entropyinpr1[] = { + 0x6f, 0x1a, 0xe9, 0x47, 0x6b, 0xda, 0xf1, 0x8c, 0x3c, 0x84, 0x10, 0x7f, + 0x81, 0x11, 0x80, 0x26, 0x09, 0x62, 0x4e, 0x52, 0x47, 0xd5, 0x07, 0xfe, + 0x32, 0x16, 0xab, 0x19, 0x1b, 0x80, 0xb4, 0x33, +}; +static const unsigned char kat3806_addinpr1[] = { + 0x90, 0x5d, 0x3f, 0x85, 0x14, 0xc7, 0xda, 0xe6, 0x1e, 0x8e, 0x72, 0x95, + 0x11, 0xe3, 0xe8, 0xa1, 0x66, 0x98, 0xa7, 0xf8, 0xb4, 0xed, 0x5f, 0x85, + 0x70, 0xf8, 0x74, 0x58, 0x4a, 0xee, 0x96, 0x59, +}; +static const unsigned char kat3806_entropyinpr2[] = { + 0x50, 0xfd, 0xf5, 0xd4, 0xe9, 0xdc, 0x33, 0x5a, 0x8a, 0x1c, 0x66, 0xe8, + 0xf5, 0xc1, 0x9a, 0x17, 0x1f, 0x01, 0xc2, 0x9c, 0xc3, 0x5c, 0xb4, 0x33, + 0x74, 0x73, 0x91, 0xc7, 0x13, 0xcb, 0xf9, 0xf3, +}; +static const unsigned char kat3806_addinpr2[] = { + 0xaa, 0x8c, 0x36, 0xbc, 0x37, 0x2a, 0x5c, 0xc7, 0x8d, 0x14, 0xce, 0x58, + 0xfd, 0x74, 0x24, 0xa8, 0x84, 0x79, 0xa4, 0x23, 0x63, 0x16, 0x6a, 0x37, + 0x14, 0x59, 0x2d, 0x56, 0xeb, 0x13, 0xa0, 0x43, +}; +static const unsigned char kat3806_retbits[] = { + 0xcf, 0x4c, 0x37, 0x29, 0x81, 0xd2, 0xb0, 0x57, 0x47, 0xba, 0x74, 0x1b, + 0x02, 0x11, 0xe1, 0xdf, 0xe5, 0x62, 0x4d, 0x39, 0xc1, 0x7f, 0xad, 0x73, + 0xdb, 0x7c, 0xf2, 0xd8, 0x13, 0x41, 0x9d, 0x87, 0x8d, 0xd5, 0xe6, 0x4f, + 0x34, 0xdc, 0xbc, 0xdd, 0x58, 0x28, 0xce, 0x6d, 0xfa, 0x58, 0x51, 0x25, + 0xdd, 0xd3, 0x2c, 0xb2, 0x9e, 0x8e, 0x21, 0x62, 0x4e, 0x5d, 0x75, 0x58, + 0x76, 0xca, 0x5b, 0xa6, +}; +static const struct drbg_kat_pr_true kat3806_t = { + 10, kat3806_entropyin, kat3806_nonce, kat3806_persstr, + kat3806_entropyinpr1, kat3806_addinpr1, kat3806_entropyinpr2, + kat3806_addinpr2, kat3806_retbits +}; +static const struct drbg_kat kat3806 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3806_t +}; + +static const unsigned char kat3807_entropyin[] = { + 0xd0, 0x6b, 0xae, 0xb8, 0x51, 0x97, 0xf6, 0x0b, 0x27, 0x17, 0x71, 0xb6, + 0x25, 0xe0, 0x41, 0xc3, 0x73, 0x58, 0x76, 0xb1, 0x74, 0xdb, 0xd1, 0x53, + 0x70, 0x02, 0xec, 0x7e, 0x95, 0xf4, 0xa9, 0x16, +}; +static const unsigned char kat3807_nonce[] = {0}; +static const unsigned char kat3807_persstr[] = {0}; +static const unsigned char kat3807_entropyinpr1[] = { + 0xbc, 0x8b, 0xdc, 0x23, 0xe0, 0xf2, 0xc8, 0xe4, 0x0b, 0x53, 0xf7, 0x50, + 0xf8, 0xb0, 0xde, 0x61, 0x44, 0xac, 0xac, 0x6c, 0xf6, 0xca, 0x4f, 0x66, + 0xe5, 0x4f, 0x31, 0x44, 0x0b, 0x1b, 0x9b, 0xab, +}; +static const unsigned char kat3807_addinpr1[] = { + 0x16, 0x92, 0xed, 0x36, 0xa3, 0x09, 0x66, 0x28, 0x81, 0x02, 0x76, 0x33, + 0x3b, 0x1f, 0xf5, 0x66, 0xaa, 0x41, 0xed, 0xe8, 0x6e, 0x4a, 0xe2, 0x93, + 0x92, 0x55, 0xf9, 0xe5, 0x77, 0xba, 0x87, 0x7f, +}; +static const unsigned char kat3807_entropyinpr2[] = { + 0x1a, 0x86, 0x0e, 0x6e, 0xaf, 0x23, 0x7f, 0x51, 0x6e, 0xb0, 0x07, 0x0c, + 0x18, 0x65, 0x86, 0x5b, 0x08, 0x76, 0x55, 0xa0, 0x3d, 0xac, 0x8b, 0x86, + 0x30, 0x34, 0xf3, 0x91, 0x1a, 0xf3, 0xdc, 0x39, +}; +static const unsigned char kat3807_addinpr2[] = { + 0x66, 0xbe, 0xef, 0x40, 0x3f, 0x26, 0xa6, 0x1b, 0x3b, 0x45, 0xe5, 0x2a, + 0x30, 0x16, 0x02, 0x55, 0x7e, 0x1c, 0x13, 0x11, 0x69, 0x85, 0x5c, 0x02, + 0x87, 0x8e, 0xcb, 0x16, 0xe0, 0x2d, 0xa0, 0xaf, +}; +static const unsigned char kat3807_retbits[] = { + 0xc6, 0x57, 0x95, 0xb4, 0x4d, 0x82, 0x65, 0x8a, 0x57, 0xc6, 0xd5, 0xf0, + 0xf8, 0xf3, 0x63, 0xeb, 0x5f, 0xc7, 0xae, 0x7e, 0x9e, 0x09, 0x15, 0xb8, + 0x83, 0xd0, 0xe0, 0x2b, 0xb7, 0xcc, 0x3d, 0x13, 0x78, 0xcb, 0xf8, 0xbd, + 0xd2, 0x5d, 0x0c, 0xf3, 0xf4, 0x43, 0xfc, 0x25, 0xfe, 0xce, 0x1f, 0xd5, + 0xb4, 0xa8, 0x77, 0xdd, 0x92, 0xeb, 0xe7, 0x40, 0x67, 0xab, 0x72, 0x86, + 0x0a, 0x2e, 0xf7, 0x2d, +}; +static const struct drbg_kat_pr_true kat3807_t = { + 11, kat3807_entropyin, kat3807_nonce, kat3807_persstr, + kat3807_entropyinpr1, kat3807_addinpr1, kat3807_entropyinpr2, + kat3807_addinpr2, kat3807_retbits +}; +static const struct drbg_kat kat3807 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3807_t +}; + +static const unsigned char kat3808_entropyin[] = { + 0x57, 0x35, 0xc8, 0x1c, 0xcc, 0xf6, 0xd8, 0xab, 0x94, 0xd1, 0x5b, 0xc0, + 0xcd, 0xc4, 0xfb, 0x64, 0xe6, 0xe3, 0x16, 0x89, 0x04, 0x38, 0x9d, 0xd4, + 0xa4, 0x5d, 0xbf, 0x41, 0xe9, 0xce, 0x1b, 0xc0, +}; +static const unsigned char kat3808_nonce[] = {0}; +static const unsigned char kat3808_persstr[] = {0}; +static const unsigned char kat3808_entropyinpr1[] = { + 0xee, 0xf1, 0x16, 0x61, 0x40, 0x75, 0x26, 0xdd, 0x66, 0x73, 0xfa, 0x08, + 0x0d, 0x26, 0x22, 0xf3, 0x28, 0x9d, 0x98, 0x2f, 0x24, 0x26, 0xb7, 0x93, + 0x0a, 0x23, 0x90, 0x23, 0x99, 0xd0, 0x6e, 0x28, +}; +static const unsigned char kat3808_addinpr1[] = { + 0x11, 0xb6, 0x19, 0x04, 0x54, 0xb6, 0x9c, 0x99, 0x8c, 0x7a, 0x6b, 0x1a, + 0x77, 0x0b, 0x07, 0xe3, 0xbb, 0xbb, 0x9e, 0x59, 0xca, 0xa7, 0x53, 0xda, + 0x79, 0x9e, 0xc4, 0xcb, 0xf6, 0x4e, 0xd6, 0xc1, +}; +static const unsigned char kat3808_entropyinpr2[] = { + 0x12, 0xfd, 0x7a, 0x46, 0x26, 0x47, 0xaa, 0x6c, 0x49, 0x83, 0x2a, 0x68, + 0xbb, 0x2b, 0x74, 0xde, 0xce, 0x33, 0x5c, 0x7d, 0xa4, 0x65, 0x84, 0x98, + 0x19, 0x9d, 0x43, 0x9a, 0x4b, 0x2a, 0xbd, 0x34, +}; +static const unsigned char kat3808_addinpr2[] = { + 0x1f, 0x07, 0x10, 0x76, 0xda, 0x26, 0x6c, 0x8f, 0xe9, 0xf5, 0x61, 0x1a, + 0xce, 0x68, 0x78, 0x29, 0x2b, 0xa3, 0x7f, 0x25, 0xa9, 0x12, 0x27, 0xf6, + 0x24, 0x8e, 0x2b, 0x5a, 0x96, 0xf9, 0x6b, 0xec, +}; +static const unsigned char kat3808_retbits[] = { + 0xff, 0xd5, 0x08, 0xdc, 0xc3, 0xc5, 0x16, 0x78, 0xb9, 0x95, 0x4c, 0x69, + 0x20, 0xa7, 0x00, 0x54, 0x15, 0x5b, 0x5f, 0xaf, 0x9d, 0xb5, 0xf6, 0x7a, + 0xe1, 0x22, 0x79, 0xef, 0x3e, 0xcd, 0x75, 0x3d, 0x28, 0x0d, 0x24, 0xfc, + 0x10, 0xd3, 0xe8, 0xb3, 0xc1, 0x54, 0x94, 0x83, 0x68, 0x31, 0x1e, 0x99, + 0x1f, 0x8c, 0xa7, 0xcd, 0x13, 0x19, 0x3b, 0x6a, 0x51, 0xe7, 0x50, 0xe0, + 0xde, 0x0f, 0x7e, 0x85, +}; +static const struct drbg_kat_pr_true kat3808_t = { + 12, kat3808_entropyin, kat3808_nonce, kat3808_persstr, + kat3808_entropyinpr1, kat3808_addinpr1, kat3808_entropyinpr2, + kat3808_addinpr2, kat3808_retbits +}; +static const struct drbg_kat kat3808 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3808_t +}; + +static const unsigned char kat3809_entropyin[] = { + 0x9e, 0x83, 0x1d, 0x78, 0x17, 0x60, 0x92, 0x48, 0x95, 0xdd, 0xe9, 0xae, + 0x33, 0xb4, 0xe1, 0x52, 0xba, 0xe2, 0x00, 0x72, 0x85, 0xf4, 0xf7, 0xad, + 0x29, 0x4e, 0x29, 0x5b, 0x45, 0xb3, 0xde, 0x63, +}; +static const unsigned char kat3809_nonce[] = {0}; +static const unsigned char kat3809_persstr[] = {0}; +static const unsigned char kat3809_entropyinpr1[] = { + 0x26, 0x59, 0x19, 0x42, 0xfc, 0xa9, 0xfa, 0xf5, 0xf7, 0x3d, 0x60, 0xcf, + 0xaf, 0x89, 0xbd, 0x21, 0x33, 0x1b, 0x96, 0xac, 0x1a, 0xb1, 0xcb, 0x66, + 0xe2, 0xf7, 0x34, 0x59, 0x33, 0x6e, 0x62, 0x6d, +}; +static const unsigned char kat3809_addinpr1[] = { + 0xd9, 0x31, 0xa3, 0xf1, 0xdc, 0x6d, 0x4a, 0xf2, 0x8d, 0xa7, 0x3f, 0x4f, + 0xff, 0x02, 0x72, 0xc2, 0x7b, 0x52, 0x9f, 0xe8, 0xd0, 0x87, 0x6b, 0x4c, + 0xf6, 0x26, 0x4c, 0x4c, 0x0b, 0x85, 0x03, 0x3c, +}; +static const unsigned char kat3809_entropyinpr2[] = { + 0x23, 0xc8, 0xee, 0xaf, 0x66, 0x51, 0xe0, 0xf9, 0xc7, 0xba, 0xcc, 0x8a, + 0xa8, 0x32, 0xa2, 0x40, 0xa9, 0x0d, 0x1a, 0x5e, 0x48, 0x1d, 0xb9, 0x58, + 0x95, 0x27, 0xe8, 0xbb, 0x6b, 0x61, 0x7a, 0x8f, +}; +static const unsigned char kat3809_addinpr2[] = { + 0x15, 0x98, 0xb0, 0x4a, 0x3c, 0x9d, 0x3f, 0xc1, 0x27, 0xea, 0xf8, 0xf1, + 0x36, 0xdf, 0xc5, 0x64, 0x69, 0x0a, 0x48, 0x1a, 0x86, 0x8c, 0xb8, 0x60, + 0x5e, 0x07, 0x68, 0x3a, 0xa5, 0xb9, 0x1c, 0xcc, +}; +static const unsigned char kat3809_retbits[] = { + 0xbc, 0xac, 0xb4, 0x29, 0xa5, 0xf7, 0x06, 0x7f, 0x79, 0xfe, 0xb4, 0x71, + 0x7c, 0x31, 0xfd, 0x39, 0x91, 0xa4, 0xf9, 0x61, 0x8d, 0x89, 0x00, 0xa2, + 0x6c, 0x0d, 0x53, 0x1e, 0x21, 0x31, 0x9b, 0x0d, 0x49, 0x5c, 0x91, 0xf2, + 0xe1, 0x14, 0xca, 0x4c, 0x78, 0x05, 0x95, 0xa2, 0x6b, 0x0c, 0xd0, 0x3d, + 0x4d, 0x0d, 0x43, 0x05, 0x67, 0x79, 0x4b, 0xa1, 0xeb, 0x35, 0x8b, 0x86, + 0xc9, 0xf5, 0xa3, 0x60, +}; +static const struct drbg_kat_pr_true kat3809_t = { + 13, kat3809_entropyin, kat3809_nonce, kat3809_persstr, + kat3809_entropyinpr1, kat3809_addinpr1, kat3809_entropyinpr2, + kat3809_addinpr2, kat3809_retbits +}; +static const struct drbg_kat kat3809 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3809_t +}; + +static const unsigned char kat3810_entropyin[] = { + 0x63, 0xe9, 0x37, 0xe3, 0x4c, 0xa9, 0xcd, 0x2d, 0xad, 0x10, 0xcd, 0xed, + 0x36, 0x67, 0xec, 0x36, 0x17, 0x78, 0x0e, 0x04, 0x30, 0x6d, 0xf1, 0x15, + 0x09, 0xe8, 0x33, 0xbd, 0x7a, 0x96, 0x61, 0x0e, +}; +static const unsigned char kat3810_nonce[] = {0}; +static const unsigned char kat3810_persstr[] = {0}; +static const unsigned char kat3810_entropyinpr1[] = { + 0xa4, 0x46, 0x4a, 0x11, 0x16, 0xea, 0x8c, 0x17, 0x61, 0x6a, 0xd3, 0x67, + 0x29, 0xf5, 0x8e, 0x47, 0xa9, 0x0f, 0xb7, 0x9c, 0x26, 0x90, 0x4d, 0xbb, + 0xc7, 0x11, 0x47, 0x70, 0x9c, 0xff, 0x35, 0xad, +}; +static const unsigned char kat3810_addinpr1[] = { + 0x6b, 0x62, 0x0b, 0xc5, 0x83, 0x88, 0xae, 0xcc, 0x90, 0xab, 0x95, 0xed, + 0x4d, 0x4b, 0xe4, 0xae, 0x3c, 0xd3, 0x6a, 0x00, 0x0a, 0x30, 0xeb, 0x7e, + 0x90, 0xee, 0x79, 0xcc, 0xd5, 0xe3, 0x26, 0x50, +}; +static const unsigned char kat3810_entropyinpr2[] = { + 0xd0, 0xb9, 0xc1, 0x2b, 0xd6, 0xb1, 0x78, 0xf8, 0x9a, 0x23, 0x8a, 0xfb, + 0x0f, 0xce, 0x43, 0xd4, 0x5d, 0xfd, 0x24, 0x67, 0xb3, 0xa1, 0xcf, 0x9b, + 0x1a, 0xa3, 0x19, 0x60, 0x17, 0x9f, 0x12, 0x5c, +}; +static const unsigned char kat3810_addinpr2[] = { + 0x0b, 0xf2, 0x12, 0x30, 0x2b, 0x4d, 0x20, 0xc6, 0xd2, 0xb7, 0x99, 0xc9, + 0xfd, 0x69, 0x2b, 0x14, 0xb5, 0x67, 0x28, 0x97, 0xfc, 0x45, 0xb4, 0x16, + 0xad, 0xda, 0xf5, 0x55, 0x01, 0xc8, 0x10, 0xea, +}; +static const unsigned char kat3810_retbits[] = { + 0x7e, 0x57, 0x20, 0x12, 0x6c, 0xe4, 0xef, 0x83, 0xb7, 0x85, 0xd9, 0x64, + 0x99, 0x15, 0xcf, 0x76, 0xed, 0x6e, 0xf3, 0x18, 0x42, 0x29, 0x50, 0xb6, + 0x54, 0x0c, 0xef, 0x9a, 0x0c, 0xa9, 0x0c, 0x40, 0x20, 0x3b, 0x3a, 0x36, + 0x5b, 0x8a, 0x5c, 0x40, 0xd6, 0x34, 0x75, 0xf7, 0xb3, 0x7f, 0x53, 0x66, + 0xb7, 0xf2, 0xed, 0x6e, 0x18, 0x88, 0x5e, 0x36, 0x1b, 0xa8, 0x9d, 0x46, + 0x35, 0x00, 0x28, 0xe4, +}; +static const struct drbg_kat_pr_true kat3810_t = { + 14, kat3810_entropyin, kat3810_nonce, kat3810_persstr, + kat3810_entropyinpr1, kat3810_addinpr1, kat3810_entropyinpr2, + kat3810_addinpr2, kat3810_retbits +}; +static const struct drbg_kat kat3810 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 0, 32, 64, &kat3810_t +}; + +static const unsigned char kat3811_entropyin[] = { + 0xb9, 0x49, 0x7a, 0xd7, 0x44, 0x95, 0xfe, 0x66, 0xc2, 0x74, 0xfd, 0x52, + 0x41, 0xc7, 0xd3, 0x06, 0x71, 0x39, 0xfd, 0xd4, 0x66, 0x5e, 0xd1, 0x2e, + 0xde, 0x09, 0x71, 0x0b, 0x08, 0x0c, 0xb2, 0xe7, +}; +static const unsigned char kat3811_nonce[] = {0}; +static const unsigned char kat3811_persstr[] = { + 0x16, 0x52, 0x42, 0x76, 0x14, 0x8d, 0x95, 0x59, 0x0d, 0x75, 0x7e, 0xbf, + 0xd7, 0xd2, 0xf1, 0x44, 0xce, 0x21, 0x81, 0x9b, 0x66, 0xdc, 0x40, 0xab, + 0x9f, 0x6a, 0x6a, 0x13, 0x06, 0x91, 0x5f, 0xf9, +}; +static const unsigned char kat3811_entropyinpr1[] = { + 0x08, 0xe8, 0x25, 0x55, 0x24, 0x98, 0x83, 0xf5, 0x4b, 0x04, 0x07, 0x53, + 0x41, 0x7d, 0xf7, 0xaa, 0x26, 0x77, 0xbd, 0xf8, 0x7f, 0x99, 0x1d, 0xd1, + 0x0a, 0xdb, 0x59, 0x2f, 0xfb, 0xba, 0xdd, 0x29, +}; +static const unsigned char kat3811_addinpr1[] = {0}; +static const unsigned char kat3811_entropyinpr2[] = { + 0x26, 0x36, 0x4f, 0xc5, 0xa0, 0xf1, 0x55, 0x54, 0xc8, 0x19, 0x22, 0x1c, + 0x83, 0x42, 0x31, 0x8f, 0x31, 0xb5, 0xc9, 0x51, 0xae, 0x0e, 0x08, 0xad, + 0x8a, 0xf6, 0x03, 0x4c, 0xd8, 0x16, 0xf0, 0x36, +}; +static const unsigned char kat3811_addinpr2[] = {0}; +static const unsigned char kat3811_retbits[] = { + 0xf6, 0x9c, 0xd5, 0x76, 0x93, 0xa9, 0x28, 0x59, 0xee, 0x17, 0x40, 0xaf, + 0x65, 0xc8, 0xe4, 0x0e, 0x25, 0xc9, 0xba, 0xae, 0x04, 0xce, 0x92, 0x5b, + 0xb3, 0x25, 0xc0, 0x92, 0x68, 0xd3, 0x8d, 0xd9, 0x97, 0x70, 0x10, 0x08, + 0xa6, 0x5c, 0x79, 0x60, 0x81, 0x12, 0xc9, 0x55, 0xdc, 0x58, 0xb5, 0x79, + 0x75, 0x52, 0x76, 0x0e, 0xec, 0x50, 0xe3, 0x7a, 0x70, 0x90, 0x23, 0xcf, + 0x4a, 0x8c, 0x36, 0xeb, +}; +static const struct drbg_kat_pr_true kat3811_t = { + 0, kat3811_entropyin, kat3811_nonce, kat3811_persstr, + kat3811_entropyinpr1, kat3811_addinpr1, kat3811_entropyinpr2, + kat3811_addinpr2, kat3811_retbits +}; +static const struct drbg_kat kat3811 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3811_t +}; + +static const unsigned char kat3812_entropyin[] = { + 0x2a, 0xec, 0x54, 0xd5, 0xab, 0x90, 0xde, 0x43, 0xb6, 0xfe, 0xd4, 0x84, + 0x78, 0x65, 0xab, 0xc9, 0xbf, 0x64, 0x8c, 0xf9, 0xba, 0x45, 0x60, 0xcb, + 0x35, 0x9d, 0x1e, 0xe7, 0x6b, 0xf3, 0xcf, 0x33, +}; +static const unsigned char kat3812_nonce[] = {0}; +static const unsigned char kat3812_persstr[] = { + 0xbc, 0x88, 0xec, 0xdf, 0x28, 0x37, 0xf9, 0x41, 0x56, 0x89, 0xb2, 0xc5, + 0x89, 0x5e, 0x7a, 0xe1, 0xe5, 0x4c, 0xd5, 0xa9, 0x78, 0xcf, 0xd2, 0x6c, + 0x90, 0x47, 0x40, 0x93, 0xb4, 0xe9, 0x12, 0xfe, +}; +static const unsigned char kat3812_entropyinpr1[] = { + 0xb8, 0xe5, 0x0e, 0xa1, 0x18, 0x58, 0xa4, 0xc9, 0xc5, 0x61, 0x24, 0x3d, + 0xeb, 0xdf, 0x63, 0xbe, 0x66, 0xcf, 0xa3, 0xf9, 0x33, 0xe5, 0xd9, 0x4a, + 0x22, 0xc1, 0x07, 0x62, 0x88, 0xbf, 0xaf, 0x9d, +}; +static const unsigned char kat3812_addinpr1[] = {0}; +static const unsigned char kat3812_entropyinpr2[] = { + 0xa2, 0xd6, 0x29, 0x19, 0x06, 0x82, 0xa2, 0x88, 0x16, 0x4a, 0x50, 0x33, + 0x50, 0xd2, 0x9a, 0x0d, 0x5e, 0x9b, 0xba, 0x37, 0x33, 0x87, 0x76, 0x84, + 0xa4, 0xd2, 0xa7, 0xf7, 0xb7, 0x0a, 0xbb, 0xf1, +}; +static const unsigned char kat3812_addinpr2[] = {0}; +static const unsigned char kat3812_retbits[] = { + 0xa2, 0xc4, 0x9d, 0xae, 0x90, 0xa3, 0x13, 0x70, 0x4c, 0x91, 0x96, 0xe6, + 0x69, 0xdb, 0xb0, 0xd4, 0xd2, 0x5c, 0x05, 0xe3, 0x50, 0xde, 0x02, 0x45, + 0x66, 0x25, 0xc0, 0x2c, 0x5a, 0x0c, 0x77, 0x5f, 0xc3, 0x03, 0xf4, 0x9e, + 0x1f, 0x8f, 0xd4, 0xd9, 0x76, 0x33, 0xb2, 0xe7, 0xbc, 0x5b, 0xcf, 0x7a, + 0xd1, 0x15, 0x52, 0x95, 0x87, 0x80, 0xf4, 0x81, 0x5f, 0xa6, 0x01, 0xa7, + 0xdc, 0x75, 0x8d, 0xe1, +}; +static const struct drbg_kat_pr_true kat3812_t = { + 1, kat3812_entropyin, kat3812_nonce, kat3812_persstr, + kat3812_entropyinpr1, kat3812_addinpr1, kat3812_entropyinpr2, + kat3812_addinpr2, kat3812_retbits +}; +static const struct drbg_kat kat3812 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3812_t +}; + +static const unsigned char kat3813_entropyin[] = { + 0x94, 0x87, 0xd0, 0xdd, 0x5b, 0x9f, 0x44, 0x67, 0x7a, 0x8b, 0x60, 0x25, + 0x13, 0xc9, 0xf7, 0x4e, 0xb3, 0x1a, 0x48, 0xfb, 0x38, 0x75, 0x9f, 0xb6, + 0xfa, 0xa2, 0x8b, 0x7f, 0x7e, 0xc2, 0x0e, 0x3b, +}; +static const unsigned char kat3813_nonce[] = {0}; +static const unsigned char kat3813_persstr[] = { + 0xf6, 0xf3, 0x0d, 0xa2, 0x71, 0xb7, 0x47, 0x00, 0x95, 0xa8, 0x2f, 0xdc, + 0xfc, 0xd5, 0xa0, 0x8b, 0x4d, 0xbb, 0x0a, 0xba, 0x2b, 0x5b, 0x3f, 0xa0, + 0x65, 0x4d, 0x63, 0x45, 0xc7, 0xdf, 0x72, 0x87, +}; +static const unsigned char kat3813_entropyinpr1[] = { + 0x86, 0xb7, 0x57, 0xa6, 0x73, 0xeb, 0xca, 0xd9, 0xf7, 0x48, 0x84, 0x1b, + 0x67, 0x4c, 0x20, 0xea, 0x1c, 0x6d, 0xf4, 0x19, 0x68, 0xec, 0xab, 0xde, + 0xef, 0xa6, 0xbe, 0xcd, 0x56, 0xe2, 0x94, 0xba, +}; +static const unsigned char kat3813_addinpr1[] = {0}; +static const unsigned char kat3813_entropyinpr2[] = { + 0xab, 0x66, 0x5a, 0x80, 0xd4, 0xd0, 0x3a, 0x09, 0xb8, 0x4d, 0x90, 0xbf, + 0x82, 0x34, 0x7c, 0x5f, 0xa9, 0xbf, 0x5b, 0xeb, 0xb1, 0x28, 0x34, 0x8b, + 0xdf, 0x17, 0xf9, 0xe6, 0xa4, 0x22, 0xc3, 0x7e, +}; +static const unsigned char kat3813_addinpr2[] = {0}; +static const unsigned char kat3813_retbits[] = { + 0xd4, 0xc4, 0x7e, 0x64, 0xe6, 0x3b, 0x8c, 0x1a, 0x2f, 0xcf, 0x12, 0x00, + 0xf5, 0x99, 0xe2, 0xcd, 0x12, 0x5f, 0xd0, 0xd2, 0x46, 0xa6, 0x4f, 0x19, + 0x02, 0x78, 0x49, 0x11, 0x14, 0xb7, 0xd0, 0x7d, 0x77, 0x89, 0xe3, 0xaf, + 0xde, 0x6c, 0x27, 0x67, 0x3c, 0x32, 0x93, 0x50, 0x46, 0xa9, 0xbe, 0x68, + 0xdd, 0xb7, 0xea, 0x8d, 0x3e, 0x24, 0xab, 0x63, 0xa7, 0x06, 0x98, 0x43, + 0x06, 0x49, 0x2a, 0x23, +}; +static const struct drbg_kat_pr_true kat3813_t = { + 2, kat3813_entropyin, kat3813_nonce, kat3813_persstr, + kat3813_entropyinpr1, kat3813_addinpr1, kat3813_entropyinpr2, + kat3813_addinpr2, kat3813_retbits +}; +static const struct drbg_kat kat3813 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3813_t +}; + +static const unsigned char kat3814_entropyin[] = { + 0xe4, 0xeb, 0x49, 0xbf, 0x54, 0x34, 0xa7, 0xfa, 0x3b, 0xbe, 0x6f, 0x35, + 0x9b, 0xaf, 0x39, 0xe9, 0x7f, 0x1f, 0xec, 0x60, 0x98, 0xed, 0x54, 0x33, + 0x14, 0xc2, 0xfe, 0xaa, 0xc7, 0x10, 0x0d, 0x66, +}; +static const unsigned char kat3814_nonce[] = {0}; +static const unsigned char kat3814_persstr[] = { + 0xa0, 0x47, 0x48, 0x32, 0xde, 0xaf, 0xba, 0xf3, 0x5b, 0x95, 0x39, 0xa8, + 0xc1, 0x3b, 0xaf, 0x20, 0x60, 0x9e, 0xc5, 0x73, 0x9e, 0x70, 0x1f, 0x15, + 0x5c, 0x44, 0x31, 0xaf, 0x41, 0x21, 0x59, 0x07, +}; +static const unsigned char kat3814_entropyinpr1[] = { + 0xf3, 0x03, 0xce, 0x79, 0x5b, 0x2e, 0xcd, 0xe6, 0x37, 0x54, 0x7b, 0x8c, + 0xf8, 0xd3, 0x9c, 0xdc, 0xef, 0xac, 0xe6, 0x23, 0xf7, 0x90, 0x53, 0x05, + 0x7c, 0xc5, 0xdc, 0x81, 0x52, 0x4a, 0x6a, 0x01, +}; +static const unsigned char kat3814_addinpr1[] = {0}; +static const unsigned char kat3814_entropyinpr2[] = { + 0xb2, 0x97, 0xcb, 0xba, 0xd8, 0x81, 0xea, 0x29, 0x36, 0x9b, 0xb5, 0x6f, + 0x42, 0x8f, 0xdb, 0x74, 0x2e, 0xd9, 0xb9, 0xa7, 0x33, 0x13, 0x64, 0x39, + 0xb1, 0xcd, 0xb8, 0x3a, 0x85, 0x78, 0xe9, 0xac, +}; +static const unsigned char kat3814_addinpr2[] = {0}; +static const unsigned char kat3814_retbits[] = { + 0x10, 0x62, 0x0e, 0xdd, 0x06, 0xba, 0x0c, 0x75, 0x62, 0x8a, 0xf2, 0x4a, + 0x1c, 0x3a, 0xce, 0x54, 0x52, 0x08, 0x1d, 0x96, 0xdb, 0x25, 0x16, 0x31, + 0xa1, 0x21, 0xaf, 0x8d, 0x18, 0xe1, 0x97, 0x8c, 0x58, 0xb0, 0x92, 0x57, + 0x0f, 0xb1, 0x62, 0x25, 0xca, 0xfd, 0x14, 0xac, 0x2c, 0x44, 0x8e, 0x87, + 0x78, 0x1a, 0x88, 0x81, 0xea, 0xeb, 0x10, 0x30, 0x8a, 0xeb, 0x96, 0x5f, + 0x57, 0x9a, 0x37, 0xcd, +}; +static const struct drbg_kat_pr_true kat3814_t = { + 3, kat3814_entropyin, kat3814_nonce, kat3814_persstr, + kat3814_entropyinpr1, kat3814_addinpr1, kat3814_entropyinpr2, + kat3814_addinpr2, kat3814_retbits +}; +static const struct drbg_kat kat3814 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3814_t +}; + +static const unsigned char kat3815_entropyin[] = { + 0x23, 0x73, 0x7f, 0xa4, 0x97, 0xab, 0xf5, 0x93, 0x72, 0xf7, 0x92, 0x8b, + 0xaa, 0x79, 0x27, 0x47, 0xdd, 0x40, 0x80, 0xdb, 0x49, 0x6f, 0x6e, 0xed, + 0xbf, 0x85, 0xda, 0xb0, 0x79, 0xef, 0x73, 0xe1, +}; +static const unsigned char kat3815_nonce[] = {0}; +static const unsigned char kat3815_persstr[] = { + 0x7d, 0x4c, 0x18, 0xe3, 0x4b, 0x74, 0xa5, 0x37, 0x7d, 0xbd, 0x75, 0xe2, + 0x87, 0x44, 0x7f, 0x5d, 0xbc, 0x07, 0x8a, 0xd4, 0xe7, 0xbb, 0x8c, 0x0c, + 0x1d, 0x74, 0x8e, 0x8b, 0x27, 0x1a, 0xaf, 0x75, +}; +static const unsigned char kat3815_entropyinpr1[] = { + 0xcf, 0x5a, 0x8c, 0x69, 0xee, 0x67, 0xf3, 0xb8, 0x50, 0xe6, 0x0f, 0x6d, + 0xc3, 0xd1, 0x32, 0xb4, 0xc6, 0xa6, 0x1d, 0x48, 0xe5, 0x82, 0x87, 0x96, + 0x2a, 0x28, 0x41, 0xb8, 0x9b, 0xcd, 0x1c, 0x48, +}; +static const unsigned char kat3815_addinpr1[] = {0}; +static const unsigned char kat3815_entropyinpr2[] = { + 0xec, 0x58, 0xc1, 0xf1, 0x46, 0xc4, 0x17, 0x9d, 0x54, 0xaf, 0xe2, 0x4b, + 0xc7, 0x41, 0x2e, 0x2b, 0x86, 0x7f, 0xca, 0x33, 0x70, 0x3f, 0xb8, 0xfa, + 0x58, 0x70, 0xb8, 0x5b, 0x16, 0x04, 0x38, 0xd5, +}; +static const unsigned char kat3815_addinpr2[] = {0}; +static const unsigned char kat3815_retbits[] = { + 0x39, 0x85, 0xed, 0x1a, 0x02, 0x27, 0xbc, 0x61, 0xfc, 0xe2, 0x6d, 0x64, + 0x7e, 0xd7, 0x44, 0xe9, 0xc4, 0x15, 0x48, 0x89, 0xe6, 0xff, 0x60, 0x9b, + 0xd6, 0xff, 0xac, 0x9b, 0x8b, 0xc2, 0xf0, 0xa1, 0xba, 0x8d, 0xe5, 0x66, + 0xd4, 0x67, 0x70, 0xe6, 0x12, 0x00, 0x44, 0xdd, 0xde, 0x1e, 0x9a, 0x69, + 0x26, 0xca, 0x56, 0xd1, 0x68, 0x47, 0x9d, 0x5e, 0x31, 0xb6, 0x3d, 0xd0, + 0xb9, 0xfe, 0x48, 0x15, +}; +static const struct drbg_kat_pr_true kat3815_t = { + 4, kat3815_entropyin, kat3815_nonce, kat3815_persstr, + kat3815_entropyinpr1, kat3815_addinpr1, kat3815_entropyinpr2, + kat3815_addinpr2, kat3815_retbits +}; +static const struct drbg_kat kat3815 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3815_t +}; + +static const unsigned char kat3816_entropyin[] = { + 0xcf, 0xa4, 0x69, 0x9a, 0x22, 0x97, 0x84, 0x70, 0x4e, 0x1f, 0x4c, 0x27, + 0x45, 0xd5, 0x0d, 0x30, 0x9c, 0x99, 0x76, 0x91, 0x81, 0x2d, 0x21, 0x68, + 0x47, 0x3a, 0x2e, 0xc6, 0xc4, 0xd8, 0xe6, 0x56, +}; +static const unsigned char kat3816_nonce[] = {0}; +static const unsigned char kat3816_persstr[] = { + 0x53, 0xad, 0xa9, 0x43, 0x08, 0x80, 0x9c, 0x3b, 0x24, 0x5c, 0xd2, 0x8c, + 0xba, 0xbc, 0xe2, 0xc8, 0xf9, 0xc1, 0x47, 0x45, 0x90, 0x41, 0x92, 0x3f, + 0x9f, 0xaf, 0x10, 0x81, 0x48, 0x6a, 0x60, 0x5e, +}; +static const unsigned char kat3816_entropyinpr1[] = { + 0x2f, 0xfb, 0xb5, 0xba, 0x73, 0x55, 0x61, 0xda, 0x52, 0x75, 0x24, 0x0f, + 0xd6, 0x06, 0x62, 0xec, 0x76, 0x78, 0x68, 0x15, 0x04, 0x7d, 0x48, 0x0e, + 0x2c, 0xd1, 0x15, 0xb9, 0x88, 0x0b, 0x38, 0xfc, +}; +static const unsigned char kat3816_addinpr1[] = {0}; +static const unsigned char kat3816_entropyinpr2[] = { + 0xf3, 0x17, 0x96, 0x3f, 0xd2, 0x37, 0x66, 0x35, 0x2b, 0x11, 0xe7, 0x8f, + 0x65, 0x2d, 0x16, 0x75, 0x30, 0x13, 0x68, 0xf7, 0x3d, 0x34, 0xc2, 0xe4, + 0x39, 0x60, 0x9d, 0xc6, 0xbe, 0x5c, 0xbc, 0x64, +}; +static const unsigned char kat3816_addinpr2[] = {0}; +static const unsigned char kat3816_retbits[] = { + 0x82, 0xec, 0x64, 0x17, 0xd3, 0x99, 0x83, 0x9d, 0x1b, 0x8c, 0xd3, 0x8c, + 0x51, 0xc4, 0x32, 0x93, 0xc2, 0xcf, 0xf2, 0x33, 0xc2, 0x90, 0x43, 0x1b, + 0x19, 0x17, 0x8a, 0xa4, 0x3f, 0xa4, 0xd7, 0xfd, 0xd8, 0x4f, 0xac, 0x19, + 0xe8, 0xc8, 0x4a, 0xc1, 0xaa, 0x0a, 0xe5, 0xd9, 0x7d, 0xf4, 0xd9, 0x04, + 0x58, 0x23, 0x4f, 0x00, 0xd0, 0xdc, 0x74, 0xa8, 0xf6, 0xb4, 0xf6, 0x18, + 0xb9, 0x38, 0x2f, 0x24, +}; +static const struct drbg_kat_pr_true kat3816_t = { + 5, kat3816_entropyin, kat3816_nonce, kat3816_persstr, + kat3816_entropyinpr1, kat3816_addinpr1, kat3816_entropyinpr2, + kat3816_addinpr2, kat3816_retbits +}; +static const struct drbg_kat kat3816 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3816_t +}; + +static const unsigned char kat3817_entropyin[] = { + 0x4b, 0xd4, 0x5b, 0x5c, 0x6e, 0xf8, 0x7f, 0xae, 0x29, 0x4d, 0x48, 0x87, + 0x65, 0x27, 0x16, 0x84, 0xc5, 0x8e, 0x10, 0xa6, 0x63, 0x61, 0xf2, 0x78, + 0xee, 0x89, 0x9b, 0xd0, 0xf7, 0xca, 0x22, 0x54, +}; +static const unsigned char kat3817_nonce[] = {0}; +static const unsigned char kat3817_persstr[] = { + 0xfc, 0x3e, 0x3e, 0xa9, 0x4f, 0x54, 0x7e, 0x0c, 0xdc, 0xaf, 0x4b, 0xae, + 0x51, 0xd0, 0x39, 0x22, 0xb5, 0x64, 0x10, 0x75, 0xe9, 0x11, 0x0f, 0x4f, + 0x6a, 0x06, 0x93, 0x2f, 0x24, 0xed, 0x11, 0x51, +}; +static const unsigned char kat3817_entropyinpr1[] = { + 0xbd, 0xa0, 0xa1, 0x08, 0x68, 0x54, 0x63, 0x5e, 0xbb, 0xce, 0xc8, 0x5d, + 0xcc, 0x4e, 0x47, 0x7a, 0x7b, 0x51, 0x17, 0x55, 0xe9, 0x3f, 0x6b, 0xd1, + 0xdc, 0x90, 0x34, 0xd9, 0xf8, 0x96, 0xad, 0xb6, +}; +static const unsigned char kat3817_addinpr1[] = {0}; +static const unsigned char kat3817_entropyinpr2[] = { + 0xc6, 0xfe, 0x9a, 0x25, 0xea, 0x37, 0x2c, 0x7c, 0x8c, 0x93, 0x05, 0xf4, + 0x31, 0xe8, 0xd3, 0x59, 0x36, 0x9e, 0x70, 0x22, 0xd6, 0x7d, 0xc3, 0xe8, + 0x4f, 0xbd, 0xf5, 0xa0, 0x1e, 0xff, 0x28, 0x24, +}; +static const unsigned char kat3817_addinpr2[] = {0}; +static const unsigned char kat3817_retbits[] = { + 0x2e, 0xc3, 0x55, 0xef, 0x56, 0xd1, 0x75, 0x37, 0xca, 0x1a, 0xab, 0x80, + 0x2c, 0xfd, 0xc7, 0x18, 0x19, 0xcd, 0x69, 0x10, 0xe3, 0xc9, 0x27, 0x18, + 0x10, 0x2b, 0x15, 0xce, 0xcc, 0x6f, 0x77, 0xdb, 0xa2, 0x1a, 0x5d, 0x43, + 0xf2, 0xcb, 0x35, 0x53, 0xa8, 0xd4, 0x46, 0x15, 0x32, 0xf8, 0x89, 0x33, + 0x94, 0xa6, 0x89, 0xbe, 0x47, 0x60, 0x31, 0x44, 0x69, 0x1c, 0x47, 0xb6, + 0x96, 0x90, 0x07, 0xc6, +}; +static const struct drbg_kat_pr_true kat3817_t = { + 6, kat3817_entropyin, kat3817_nonce, kat3817_persstr, + kat3817_entropyinpr1, kat3817_addinpr1, kat3817_entropyinpr2, + kat3817_addinpr2, kat3817_retbits +}; +static const struct drbg_kat kat3817 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3817_t +}; + +static const unsigned char kat3818_entropyin[] = { + 0x74, 0xab, 0xe9, 0x1c, 0xfd, 0x30, 0xc8, 0x97, 0x82, 0x5e, 0x70, 0x30, + 0x4f, 0x03, 0x7e, 0xfe, 0x12, 0xce, 0xea, 0xaa, 0xf2, 0x72, 0x8b, 0x1c, + 0x02, 0x3d, 0xbf, 0xcf, 0x7d, 0x70, 0x5c, 0xe4, +}; +static const unsigned char kat3818_nonce[] = {0}; +static const unsigned char kat3818_persstr[] = { + 0xca, 0xc3, 0xbc, 0x51, 0x8f, 0x9a, 0xa4, 0xf3, 0xf6, 0xd0, 0xe4, 0xbb, + 0x65, 0xe5, 0xf2, 0xb7, 0xb3, 0x6b, 0xba, 0x1b, 0xc4, 0x33, 0xa5, 0x9a, + 0x68, 0xd8, 0xa9, 0x68, 0x8a, 0x3c, 0xf2, 0x52, +}; +static const unsigned char kat3818_entropyinpr1[] = { + 0xe8, 0x3e, 0xc8, 0x09, 0xa3, 0x8a, 0x10, 0x49, 0x98, 0xd5, 0x0b, 0x4a, + 0x5d, 0x06, 0xa5, 0x2b, 0xde, 0x87, 0x39, 0x34, 0x21, 0xe3, 0x57, 0xd7, + 0xf1, 0x1a, 0x8c, 0x63, 0x07, 0x9a, 0x0f, 0x2d, +}; +static const unsigned char kat3818_addinpr1[] = {0}; +static const unsigned char kat3818_entropyinpr2[] = { + 0xa1, 0x7b, 0xd9, 0xbe, 0x94, 0xb2, 0x5a, 0x57, 0xed, 0xa3, 0xa2, 0x44, + 0xf7, 0x80, 0xf9, 0x92, 0xef, 0x9b, 0x2b, 0xad, 0x96, 0x1b, 0xad, 0x4a, + 0x7a, 0x36, 0x05, 0xcc, 0x66, 0x59, 0x64, 0xf7, +}; +static const unsigned char kat3818_addinpr2[] = {0}; +static const unsigned char kat3818_retbits[] = { + 0x6f, 0x99, 0x6c, 0xfd, 0x0c, 0xe7, 0xee, 0xac, 0x7d, 0xc7, 0x97, 0x3e, + 0x3d, 0xb4, 0x4a, 0x56, 0xc2, 0xcd, 0x01, 0xa5, 0x9e, 0x03, 0x9a, 0x1e, + 0xf3, 0x6d, 0xc6, 0x65, 0x5b, 0xe2, 0x4b, 0xc6, 0x6c, 0x9c, 0xff, 0x98, + 0xcd, 0x8c, 0x43, 0x8d, 0xc0, 0x33, 0x8b, 0xb2, 0xbf, 0xd6, 0xfd, 0xa2, + 0x07, 0x1a, 0x8f, 0xa2, 0x8f, 0xd0, 0x1a, 0x8a, 0x6f, 0x86, 0x31, 0xca, + 0xac, 0x37, 0xcd, 0x8d, +}; +static const struct drbg_kat_pr_true kat3818_t = { + 7, kat3818_entropyin, kat3818_nonce, kat3818_persstr, + kat3818_entropyinpr1, kat3818_addinpr1, kat3818_entropyinpr2, + kat3818_addinpr2, kat3818_retbits +}; +static const struct drbg_kat kat3818 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3818_t +}; + +static const unsigned char kat3819_entropyin[] = { + 0xee, 0x26, 0x22, 0xc7, 0x7a, 0xb4, 0xdd, 0x02, 0x37, 0xf0, 0xbe, 0x1a, + 0xaa, 0x50, 0xab, 0x12, 0x78, 0x81, 0xdf, 0x09, 0x22, 0xcb, 0xe8, 0xca, + 0x7d, 0x00, 0x8a, 0x64, 0x58, 0xec, 0x9b, 0xbe, +}; +static const unsigned char kat3819_nonce[] = {0}; +static const unsigned char kat3819_persstr[] = { + 0x27, 0x4f, 0xb2, 0x21, 0x46, 0x89, 0xb9, 0x51, 0x69, 0xb3, 0x89, 0x3f, + 0xf1, 0x4f, 0x0e, 0x30, 0xdf, 0x94, 0xe1, 0x2d, 0x40, 0xea, 0x01, 0x42, + 0x61, 0x8f, 0x28, 0xfd, 0xbe, 0xec, 0xc4, 0x9d, +}; +static const unsigned char kat3819_entropyinpr1[] = { + 0x39, 0xb7, 0xb2, 0x0d, 0x0a, 0x1d, 0x82, 0x42, 0x2d, 0x2b, 0x3b, 0x79, + 0x71, 0x6a, 0x34, 0x4d, 0xf4, 0x9d, 0xeb, 0xde, 0xfd, 0xc4, 0xb7, 0x56, + 0x79, 0xc2, 0x6d, 0x00, 0x38, 0x45, 0x43, 0x94, +}; +static const unsigned char kat3819_addinpr1[] = {0}; +static const unsigned char kat3819_entropyinpr2[] = { + 0xec, 0x0d, 0x23, 0x99, 0xdd, 0x18, 0x5d, 0x2a, 0x07, 0x55, 0x6a, 0xf3, + 0xd5, 0x0c, 0xcf, 0xaa, 0x1a, 0x25, 0xab, 0x09, 0xf9, 0x86, 0x95, 0x42, + 0x02, 0xea, 0x00, 0x3e, 0xe4, 0x96, 0x86, 0x74, +}; +static const unsigned char kat3819_addinpr2[] = {0}; +static const unsigned char kat3819_retbits[] = { + 0x1c, 0x8d, 0x9d, 0x7e, 0xa3, 0x90, 0x89, 0x35, 0x2a, 0xf0, 0x5d, 0x8e, + 0xf9, 0xf3, 0xa7, 0xeb, 0x18, 0xf9, 0x26, 0xe5, 0x66, 0xf8, 0x62, 0xd0, + 0x8b, 0x2e, 0x11, 0xa8, 0xf6, 0xe8, 0xc7, 0x27, 0x03, 0x4a, 0x7c, 0xa5, + 0xd6, 0xe3, 0xa8, 0xd2, 0x98, 0x2d, 0x36, 0xa2, 0x5f, 0xf9, 0x31, 0x97, + 0x92, 0xb8, 0xf3, 0xba, 0x34, 0x3e, 0xb6, 0x96, 0x5e, 0x93, 0xcf, 0xa0, + 0xdf, 0xcc, 0x5a, 0xaa, +}; +static const struct drbg_kat_pr_true kat3819_t = { + 8, kat3819_entropyin, kat3819_nonce, kat3819_persstr, + kat3819_entropyinpr1, kat3819_addinpr1, kat3819_entropyinpr2, + kat3819_addinpr2, kat3819_retbits +}; +static const struct drbg_kat kat3819 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3819_t +}; + +static const unsigned char kat3820_entropyin[] = { + 0x3d, 0x16, 0x68, 0x67, 0xfa, 0xce, 0x52, 0xe5, 0x53, 0x82, 0x77, 0x2c, + 0xb3, 0x3b, 0x95, 0x0b, 0x4d, 0x34, 0x47, 0x49, 0x74, 0x80, 0xa4, 0x1f, + 0xda, 0x43, 0x56, 0xae, 0xe7, 0x10, 0x75, 0xad, +}; +static const unsigned char kat3820_nonce[] = {0}; +static const unsigned char kat3820_persstr[] = { + 0x4b, 0x73, 0x60, 0x82, 0x65, 0x10, 0x27, 0x2a, 0x3f, 0xbf, 0x22, 0x4b, + 0xe4, 0x3e, 0xb0, 0xcd, 0x8e, 0x29, 0x4e, 0x6f, 0x8b, 0xfb, 0xa4, 0xf6, + 0x71, 0xff, 0x7c, 0x94, 0xae, 0x5a, 0xa2, 0xf4, +}; +static const unsigned char kat3820_entropyinpr1[] = { + 0xf9, 0x1a, 0x04, 0x24, 0x06, 0xe8, 0x63, 0xfc, 0xb9, 0xe8, 0x07, 0xfd, + 0x94, 0x1c, 0xe1, 0x17, 0x79, 0xdf, 0xb3, 0xea, 0xe4, 0x4c, 0x82, 0x1b, + 0xaa, 0x8f, 0xef, 0xf9, 0x34, 0xbf, 0xea, 0x3e, +}; +static const unsigned char kat3820_addinpr1[] = {0}; +static const unsigned char kat3820_entropyinpr2[] = { + 0xa1, 0x26, 0x5c, 0x9d, 0x1c, 0x26, 0xed, 0xb1, 0xb4, 0x15, 0x6b, 0xd7, + 0x36, 0xfb, 0x24, 0x6f, 0x0e, 0xc6, 0xa2, 0x52, 0x45, 0x17, 0xfb, 0x4d, + 0xe9, 0x6a, 0xe5, 0xeb, 0x22, 0x09, 0x3c, 0x6c, +}; +static const unsigned char kat3820_addinpr2[] = {0}; +static const unsigned char kat3820_retbits[] = { + 0xe2, 0x74, 0x73, 0x3c, 0xf5, 0xe0, 0x83, 0xa6, 0xf9, 0xd5, 0x56, 0x66, + 0x7c, 0x88, 0x8c, 0x80, 0x13, 0x3e, 0x0f, 0x88, 0x51, 0xd2, 0xa1, 0x33, + 0x08, 0x76, 0xea, 0xd3, 0x1e, 0x65, 0xef, 0xf7, 0xf8, 0x63, 0xd3, 0x58, + 0xb2, 0xf4, 0xa4, 0xf8, 0x51, 0xd3, 0x49, 0x72, 0xf0, 0x5d, 0xaa, 0xae, + 0x2b, 0xdb, 0x2a, 0x9b, 0x05, 0xc7, 0xfa, 0xe5, 0xbc, 0x68, 0x49, 0xad, + 0x98, 0x90, 0x3a, 0x9d, +}; +static const struct drbg_kat_pr_true kat3820_t = { + 9, kat3820_entropyin, kat3820_nonce, kat3820_persstr, + kat3820_entropyinpr1, kat3820_addinpr1, kat3820_entropyinpr2, + kat3820_addinpr2, kat3820_retbits +}; +static const struct drbg_kat kat3820 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3820_t +}; + +static const unsigned char kat3821_entropyin[] = { + 0xa6, 0xfe, 0x47, 0x8c, 0x35, 0x8a, 0x26, 0x72, 0x11, 0x02, 0x70, 0xdb, + 0x94, 0xa1, 0xf1, 0x35, 0x85, 0xe9, 0xda, 0x5d, 0xc8, 0xe3, 0x78, 0xa5, + 0xb6, 0xdb, 0xb5, 0x00, 0x1a, 0x0b, 0x88, 0x54, +}; +static const unsigned char kat3821_nonce[] = {0}; +static const unsigned char kat3821_persstr[] = { + 0x8b, 0xe5, 0x08, 0x0d, 0xda, 0x60, 0x0e, 0x3d, 0xfe, 0x16, 0x72, 0x0d, + 0x3f, 0xad, 0xdb, 0x44, 0x9b, 0x19, 0x6c, 0x58, 0x6e, 0x65, 0x5c, 0xf7, + 0x4c, 0x8b, 0x4a, 0x2a, 0xd2, 0x33, 0x0c, 0xb4, +}; +static const unsigned char kat3821_entropyinpr1[] = { + 0x45, 0x94, 0xea, 0x12, 0x21, 0x1d, 0x85, 0x55, 0x3f, 0x97, 0x67, 0x12, + 0x21, 0x43, 0xf5, 0x2b, 0xcc, 0xba, 0x5e, 0x9b, 0x60, 0x94, 0xbd, 0xab, + 0xa3, 0x3c, 0x34, 0xf6, 0xcc, 0xfd, 0x3f, 0x36, +}; +static const unsigned char kat3821_addinpr1[] = {0}; +static const unsigned char kat3821_entropyinpr2[] = { + 0xe2, 0x7d, 0x8a, 0xcb, 0x00, 0x6a, 0xab, 0xf9, 0x37, 0x8d, 0xfa, 0x01, + 0x94, 0xf0, 0x9c, 0x8e, 0x1a, 0x12, 0x77, 0x6c, 0xd8, 0xab, 0x18, 0x2a, + 0xd0, 0x6e, 0xdf, 0xf1, 0xd7, 0x74, 0xeb, 0xc6, +}; +static const unsigned char kat3821_addinpr2[] = {0}; +static const unsigned char kat3821_retbits[] = { + 0x08, 0x55, 0x8c, 0xf7, 0xad, 0xfa, 0x8a, 0xe2, 0xbb, 0x3f, 0xff, 0x5c, + 0xd8, 0x9a, 0xc7, 0x44, 0x87, 0xf7, 0x8b, 0xe3, 0x77, 0xac, 0x3c, 0xfd, + 0xbb, 0x37, 0xc7, 0xf0, 0xe1, 0x81, 0x26, 0x0f, 0x20, 0x44, 0xcb, 0xbb, + 0x31, 0x40, 0x1e, 0x88, 0x9c, 0x9c, 0x67, 0xa1, 0x6c, 0xed, 0x38, 0x6e, + 0x07, 0xfd, 0x92, 0xbb, 0x13, 0x3d, 0x76, 0xd5, 0xcc, 0x65, 0x8f, 0xd8, + 0x30, 0xc3, 0x0c, 0xba, +}; +static const struct drbg_kat_pr_true kat3821_t = { + 10, kat3821_entropyin, kat3821_nonce, kat3821_persstr, + kat3821_entropyinpr1, kat3821_addinpr1, kat3821_entropyinpr2, + kat3821_addinpr2, kat3821_retbits +}; +static const struct drbg_kat kat3821 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3821_t +}; + +static const unsigned char kat3822_entropyin[] = { + 0x72, 0x90, 0xfb, 0x42, 0xbe, 0xf4, 0xdc, 0xf3, 0x92, 0x3c, 0x9d, 0x43, + 0xd6, 0x9b, 0x03, 0xaa, 0x45, 0x3c, 0x95, 0xfa, 0x5e, 0xc0, 0x7f, 0x76, + 0x83, 0x90, 0x54, 0x91, 0xd2, 0xeb, 0x54, 0x90, +}; +static const unsigned char kat3822_nonce[] = {0}; +static const unsigned char kat3822_persstr[] = { + 0x48, 0xa4, 0x17, 0x6b, 0x80, 0x56, 0x35, 0x81, 0x81, 0xca, 0x4d, 0xc9, + 0x08, 0x9f, 0x78, 0x24, 0x17, 0xbd, 0x17, 0x5b, 0x3c, 0x03, 0x9e, 0x27, + 0x8a, 0x0f, 0xde, 0xb5, 0x6e, 0x8e, 0x9c, 0xd3, +}; +static const unsigned char kat3822_entropyinpr1[] = { + 0xe2, 0x10, 0x95, 0xb2, 0x68, 0xc5, 0x8c, 0xd9, 0x35, 0x47, 0x4a, 0x4f, + 0x56, 0x9a, 0x3f, 0xc8, 0x19, 0x59, 0xaf, 0x04, 0xaa, 0x19, 0x61, 0x05, + 0x34, 0x3a, 0x56, 0x43, 0x19, 0x83, 0xae, 0x22, +}; +static const unsigned char kat3822_addinpr1[] = {0}; +static const unsigned char kat3822_entropyinpr2[] = { + 0xdf, 0x30, 0x51, 0x86, 0xa9, 0xe5, 0x93, 0xca, 0xe4, 0xc4, 0xab, 0xbe, + 0xf8, 0x39, 0x48, 0x7d, 0x0e, 0x04, 0x64, 0x1f, 0x4b, 0xce, 0x3d, 0x1c, + 0x60, 0x1b, 0x77, 0x40, 0xd8, 0xdd, 0xcd, 0x94, +}; +static const unsigned char kat3822_addinpr2[] = {0}; +static const unsigned char kat3822_retbits[] = { + 0x70, 0x3f, 0x5f, 0xc5, 0xaa, 0x1d, 0x4f, 0xc6, 0x42, 0x24, 0xfb, 0xed, + 0xf3, 0x64, 0xf0, 0x1f, 0xf4, 0x4a, 0xf8, 0x7b, 0x45, 0x7a, 0xa2, 0x82, + 0x02, 0x84, 0x10, 0x17, 0x4d, 0x4b, 0x9c, 0x86, 0xec, 0x9c, 0x2a, 0x03, + 0xbc, 0x36, 0x4a, 0x6b, 0xee, 0xfa, 0x5a, 0xb0, 0x43, 0xf5, 0x71, 0x3f, + 0xad, 0xb7, 0xae, 0x38, 0x03, 0xc8, 0x2c, 0xa4, 0x28, 0x94, 0xac, 0xe7, + 0x3c, 0xcd, 0x41, 0xed, +}; +static const struct drbg_kat_pr_true kat3822_t = { + 11, kat3822_entropyin, kat3822_nonce, kat3822_persstr, + kat3822_entropyinpr1, kat3822_addinpr1, kat3822_entropyinpr2, + kat3822_addinpr2, kat3822_retbits +}; +static const struct drbg_kat kat3822 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3822_t +}; + +static const unsigned char kat3823_entropyin[] = { + 0xc4, 0x7e, 0x73, 0x0d, 0xe1, 0x7f, 0x4c, 0x47, 0xac, 0xd1, 0x68, 0xe0, + 0xeb, 0xb5, 0xac, 0x30, 0x62, 0xf7, 0x8f, 0x6f, 0x80, 0xb6, 0x27, 0xe5, + 0x82, 0xfa, 0xa8, 0x19, 0x0d, 0x78, 0xcd, 0xdf, +}; +static const unsigned char kat3823_nonce[] = {0}; +static const unsigned char kat3823_persstr[] = { + 0x91, 0x7c, 0x66, 0xee, 0x6b, 0xa1, 0xa2, 0xbd, 0x1e, 0x94, 0x4a, 0x9d, + 0xbf, 0xf7, 0xfe, 0x47, 0xd6, 0xf0, 0x48, 0x21, 0xe3, 0xca, 0x5a, 0xfa, + 0xe3, 0x47, 0x6b, 0xe8, 0x70, 0xa4, 0xba, 0x52, +}; +static const unsigned char kat3823_entropyinpr1[] = { + 0x2c, 0xea, 0x0e, 0xf6, 0x3e, 0x61, 0x75, 0x43, 0xed, 0x62, 0x36, 0x18, + 0xaa, 0x01, 0x76, 0x4c, 0xc0, 0x1d, 0x5d, 0x10, 0xb5, 0x50, 0x8b, 0x78, + 0x5d, 0x2d, 0x87, 0x88, 0x90, 0x07, 0x6c, 0x64, +}; +static const unsigned char kat3823_addinpr1[] = {0}; +static const unsigned char kat3823_entropyinpr2[] = { + 0x9c, 0xc8, 0x0d, 0x3e, 0x71, 0x42, 0x0c, 0xcd, 0x92, 0xd9, 0x7c, 0x25, + 0x09, 0x2d, 0x37, 0x0c, 0x81, 0xb4, 0x51, 0x65, 0x3e, 0xfa, 0x2d, 0x10, + 0xb6, 0x05, 0xe1, 0x3d, 0x65, 0x0b, 0xcf, 0xa1, +}; +static const unsigned char kat3823_addinpr2[] = {0}; +static const unsigned char kat3823_retbits[] = { + 0x4f, 0x25, 0x70, 0x36, 0x4d, 0x1a, 0xe7, 0x1d, 0x29, 0xc0, 0x05, 0xbd, + 0xea, 0x9d, 0xf2, 0x8c, 0xec, 0x9a, 0xe3, 0x1c, 0x2d, 0x29, 0x6a, 0xec, + 0xd0, 0x42, 0x0e, 0xc2, 0xd7, 0x2f, 0x72, 0x4e, 0x5c, 0x2e, 0x9c, 0xf7, + 0xb5, 0xfa, 0xa4, 0x6d, 0xa4, 0x58, 0x9f, 0xb6, 0x03, 0xfe, 0xd6, 0x36, + 0x1b, 0xae, 0xf2, 0x2f, 0x58, 0x48, 0x46, 0xb1, 0xbe, 0x79, 0x31, 0x0c, + 0x62, 0x45, 0x14, 0x3c, +}; +static const struct drbg_kat_pr_true kat3823_t = { + 12, kat3823_entropyin, kat3823_nonce, kat3823_persstr, + kat3823_entropyinpr1, kat3823_addinpr1, kat3823_entropyinpr2, + kat3823_addinpr2, kat3823_retbits +}; +static const struct drbg_kat kat3823 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3823_t +}; + +static const unsigned char kat3824_entropyin[] = { + 0x97, 0xa2, 0xcc, 0x8d, 0x94, 0x5c, 0xa5, 0x24, 0xdb, 0x7f, 0x77, 0x4a, + 0x4d, 0xaa, 0x4a, 0xcc, 0xc0, 0xeb, 0xd3, 0xeb, 0x79, 0xa6, 0x5f, 0xb9, + 0x64, 0x98, 0xe7, 0xe9, 0x03, 0xb3, 0x57, 0xd9, +}; +static const unsigned char kat3824_nonce[] = {0}; +static const unsigned char kat3824_persstr[] = { + 0x8c, 0x58, 0x19, 0xb2, 0xcf, 0x2a, 0xaf, 0x5b, 0x23, 0xf4, 0x7f, 0x02, + 0x9d, 0xb8, 0x18, 0xba, 0x7c, 0xfd, 0xb5, 0x06, 0x38, 0xd1, 0xc9, 0x78, + 0x3a, 0xf3, 0x30, 0xfe, 0x18, 0x5e, 0xf9, 0x60, +}; +static const unsigned char kat3824_entropyinpr1[] = { + 0x53, 0xbb, 0x7c, 0xf0, 0xb4, 0x52, 0xf7, 0xea, 0xdd, 0xa9, 0x7c, 0x20, + 0x23, 0x14, 0x7b, 0x3d, 0x80, 0x2e, 0xad, 0x78, 0x4f, 0x76, 0x63, 0x28, + 0x2a, 0xa4, 0x0c, 0x11, 0xa5, 0x65, 0xe6, 0x91, +}; +static const unsigned char kat3824_addinpr1[] = {0}; +static const unsigned char kat3824_entropyinpr2[] = { + 0x72, 0x5e, 0x52, 0x3b, 0xaa, 0xb3, 0xeb, 0x5e, 0xe4, 0x32, 0xd1, 0x3a, + 0xb5, 0x9e, 0xc5, 0x36, 0x4e, 0xe1, 0x79, 0xce, 0x74, 0x43, 0xbf, 0x3a, + 0x29, 0x45, 0x4c, 0x91, 0x9b, 0x8d, 0xfe, 0x0c, +}; +static const unsigned char kat3824_addinpr2[] = {0}; +static const unsigned char kat3824_retbits[] = { + 0x94, 0xc3, 0x51, 0xd1, 0xfe, 0x28, 0x3e, 0xc7, 0xba, 0x67, 0xc4, 0xca, + 0x86, 0x01, 0x75, 0xdd, 0x24, 0xed, 0x1f, 0x8a, 0xf1, 0xca, 0xb0, 0xf1, + 0x23, 0x59, 0x50, 0x83, 0xd3, 0x15, 0x28, 0x7e, 0x12, 0xe8, 0xa4, 0x5e, + 0x3a, 0x3c, 0x0f, 0x90, 0x4d, 0xcb, 0xf3, 0xab, 0xbb, 0x9b, 0xc9, 0x68, + 0xad, 0x03, 0xe7, 0x94, 0xbe, 0x19, 0xbb, 0x50, 0x05, 0xb9, 0xd6, 0xb9, + 0xbe, 0xcc, 0x18, 0xd8, +}; +static const struct drbg_kat_pr_true kat3824_t = { + 13, kat3824_entropyin, kat3824_nonce, kat3824_persstr, + kat3824_entropyinpr1, kat3824_addinpr1, kat3824_entropyinpr2, + kat3824_addinpr2, kat3824_retbits +}; +static const struct drbg_kat kat3824 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3824_t +}; + +static const unsigned char kat3825_entropyin[] = { + 0xa9, 0xba, 0x59, 0x81, 0x80, 0x8f, 0x34, 0x25, 0x82, 0xe2, 0xb7, 0x3b, + 0xfc, 0xd0, 0x7f, 0x12, 0x46, 0x20, 0x79, 0xbb, 0xf2, 0xdd, 0x6f, 0x83, + 0xf6, 0x25, 0xeb, 0xd6, 0x2f, 0xa9, 0x0c, 0x3d, +}; +static const unsigned char kat3825_nonce[] = {0}; +static const unsigned char kat3825_persstr[] = { + 0xf1, 0x1d, 0xaf, 0x3a, 0x00, 0x89, 0x70, 0x90, 0x82, 0xa4, 0x89, 0xac, + 0x74, 0x0f, 0xe0, 0x59, 0xd5, 0x68, 0xe0, 0x3a, 0x82, 0xbb, 0xcc, 0x2b, + 0x70, 0xc8, 0xab, 0xac, 0x56, 0x84, 0x24, 0x39, +}; +static const unsigned char kat3825_entropyinpr1[] = { + 0x36, 0x95, 0xbd, 0x2e, 0x5b, 0x30, 0xb1, 0xd3, 0x95, 0x7d, 0xd0, 0xa1, + 0x16, 0xbd, 0xdb, 0xa5, 0x3a, 0x24, 0xdb, 0xe6, 0x47, 0xde, 0xa6, 0x3b, + 0x9d, 0x40, 0x20, 0x74, 0x5a, 0xfb, 0x90, 0xe4, +}; +static const unsigned char kat3825_addinpr1[] = {0}; +static const unsigned char kat3825_entropyinpr2[] = { + 0x40, 0x79, 0xd6, 0x61, 0x0b, 0xbc, 0x71, 0x5e, 0x62, 0x77, 0x7a, 0xb6, + 0x99, 0xe3, 0xac, 0x6b, 0x6c, 0x4d, 0x09, 0x7a, 0xad, 0x4d, 0xeb, 0xf6, + 0x68, 0xa5, 0x4d, 0x15, 0x74, 0x4d, 0x9e, 0xc1, +}; +static const unsigned char kat3825_addinpr2[] = {0}; +static const unsigned char kat3825_retbits[] = { + 0xd0, 0xaa, 0xa5, 0x1f, 0xb0, 0x84, 0x82, 0x5f, 0x8b, 0xf0, 0x47, 0x6c, + 0x70, 0x3f, 0x11, 0x33, 0x82, 0x9a, 0x93, 0xde, 0xe1, 0xf8, 0x06, 0x12, + 0x22, 0xf3, 0x50, 0x2f, 0xf1, 0xbd, 0xfd, 0x55, 0x0e, 0xdf, 0xdc, 0x27, + 0x5f, 0x3a, 0xec, 0x8a, 0x8f, 0xc5, 0xf9, 0xe5, 0xf7, 0x12, 0x46, 0x36, + 0x2f, 0xdb, 0xcc, 0x65, 0xa0, 0x0e, 0x7c, 0xc5, 0x2f, 0xf3, 0x53, 0xcf, + 0xa3, 0xb3, 0x75, 0x9a, +}; +static const struct drbg_kat_pr_true kat3825_t = { + 14, kat3825_entropyin, kat3825_nonce, kat3825_persstr, + kat3825_entropyinpr1, kat3825_addinpr1, kat3825_entropyinpr2, + kat3825_addinpr2, kat3825_retbits +}; +static const struct drbg_kat kat3825 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 0, 64, &kat3825_t +}; + +static const unsigned char kat3826_entropyin[] = { + 0x0b, 0xfd, 0xe8, 0xb3, 0x2c, 0x0a, 0xda, 0xbd, 0x84, 0xe2, 0x71, 0xd1, + 0x9b, 0x76, 0xcb, 0x96, 0x95, 0xe1, 0xf8, 0x9a, 0x08, 0x13, 0xe6, 0x3e, + 0x7d, 0x9e, 0x6a, 0x0d, 0xd1, 0x69, 0x1c, 0x55, +}; +static const unsigned char kat3826_nonce[] = {0}; +static const unsigned char kat3826_persstr[] = { + 0xf3, 0x45, 0xff, 0xd4, 0x13, 0x8e, 0xa0, 0xb4, 0x1e, 0x1b, 0x87, 0xa6, + 0x78, 0xe2, 0x4a, 0xd8, 0x7c, 0x14, 0xfa, 0xde, 0x68, 0xe7, 0x03, 0xb3, + 0x59, 0xca, 0xaf, 0x2e, 0x26, 0x9e, 0x7c, 0x58, +}; +static const unsigned char kat3826_entropyinpr1[] = { + 0x2a, 0x04, 0x6c, 0xb4, 0x77, 0xaf, 0xd5, 0x42, 0x71, 0xb0, 0xf5, 0xd6, + 0x92, 0x4c, 0x70, 0x6c, 0x40, 0x43, 0x70, 0x2a, 0x56, 0x57, 0xe9, 0x9b, + 0x88, 0x4b, 0xbc, 0xd7, 0xec, 0x6a, 0xa2, 0x67, +}; +static const unsigned char kat3826_addinpr1[] = { + 0x68, 0x38, 0x8f, 0x4c, 0x45, 0xc3, 0x49, 0xf0, 0x76, 0xc3, 0x1e, 0xbb, + 0x97, 0x2c, 0x31, 0xd2, 0x58, 0x95, 0xdf, 0xad, 0xf3, 0xa8, 0xd8, 0xc3, + 0x36, 0xaf, 0xac, 0xf3, 0xe3, 0x10, 0x8c, 0xaf, +}; +static const unsigned char kat3826_entropyinpr2[] = { + 0xd1, 0x42, 0xdf, 0xb3, 0x9b, 0x02, 0x51, 0x1f, 0x93, 0x31, 0x20, 0xa8, + 0x8c, 0x2f, 0xab, 0xb8, 0x8e, 0x82, 0x4a, 0x91, 0x6c, 0x82, 0x6b, 0x20, + 0xf4, 0x44, 0xc6, 0x2e, 0x9d, 0x9a, 0xf0, 0xb9, +}; +static const unsigned char kat3826_addinpr2[] = { + 0xc8, 0xa9, 0x5b, 0xca, 0xb7, 0x63, 0x58, 0x60, 0x8d, 0xb1, 0xf6, 0x6e, + 0xa8, 0xb4, 0x53, 0x7f, 0x3d, 0xd8, 0x70, 0xe3, 0x8d, 0xf4, 0x1b, 0xcf, + 0xdf, 0x41, 0xd7, 0x3e, 0xb5, 0x90, 0x1c, 0x93, +}; +static const unsigned char kat3826_retbits[] = { + 0xed, 0xa2, 0x04, 0xa7, 0xc5, 0x1b, 0x29, 0xa7, 0x9c, 0xa1, 0xa7, 0x14, + 0x8d, 0xae, 0x64, 0x45, 0xb4, 0xc7, 0xd8, 0x30, 0x41, 0x0d, 0xe1, 0x31, + 0xc5, 0xc4, 0xa2, 0x8e, 0x85, 0xc7, 0x4a, 0x15, 0xc7, 0x68, 0x16, 0x7d, + 0xac, 0x0b, 0xba, 0x1c, 0xac, 0xc3, 0xdf, 0xfd, 0xb2, 0x53, 0x12, 0xf9, + 0x18, 0x6f, 0xdf, 0xc9, 0xa6, 0xe5, 0x70, 0x08, 0x1f, 0x41, 0xc9, 0x97, + 0xab, 0x82, 0x95, 0x24, +}; +static const struct drbg_kat_pr_true kat3826_t = { + 0, kat3826_entropyin, kat3826_nonce, kat3826_persstr, + kat3826_entropyinpr1, kat3826_addinpr1, kat3826_entropyinpr2, + kat3826_addinpr2, kat3826_retbits +}; +static const struct drbg_kat kat3826 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3826_t +}; + +static const unsigned char kat3827_entropyin[] = { + 0x3a, 0xc6, 0x7c, 0x4f, 0x19, 0x26, 0xbf, 0xe8, 0x0e, 0x8a, 0xd2, 0x93, + 0x1b, 0x6e, 0x6f, 0x20, 0x35, 0x89, 0x31, 0x6b, 0x7c, 0xa1, 0x52, 0xdd, + 0x00, 0xfb, 0xd0, 0x68, 0x1f, 0x23, 0x1f, 0x58, +}; +static const unsigned char kat3827_nonce[] = {0}; +static const unsigned char kat3827_persstr[] = { + 0x6e, 0xed, 0xd4, 0xb2, 0xa1, 0xe4, 0x1b, 0xfc, 0x47, 0x0c, 0x79, 0x06, + 0x85, 0xf9, 0x76, 0xd2, 0x87, 0xa8, 0x80, 0xf1, 0x5f, 0x1a, 0xb8, 0x93, + 0xd8, 0x75, 0x40, 0xd5, 0x67, 0x72, 0xbd, 0xca, +}; +static const unsigned char kat3827_entropyinpr1[] = { + 0x89, 0x92, 0xb1, 0x09, 0x2d, 0xc4, 0xe3, 0xdb, 0x41, 0xf6, 0xdd, 0xab, + 0xb1, 0xeb, 0x86, 0xd4, 0x2c, 0x90, 0xc1, 0xea, 0x96, 0x73, 0x64, 0x6c, + 0x6d, 0x69, 0xa8, 0xdc, 0x0c, 0xd9, 0x28, 0x4f, +}; +static const unsigned char kat3827_addinpr1[] = { + 0xff, 0xff, 0x55, 0xb7, 0x1b, 0x1c, 0xa8, 0xad, 0x44, 0xb7, 0xd5, 0x01, + 0x1c, 0x1e, 0x68, 0x5c, 0x88, 0x17, 0x97, 0x83, 0xdf, 0x0c, 0x55, 0x51, + 0x72, 0xf2, 0x01, 0x89, 0xac, 0xdc, 0xb2, 0x34, +}; +static const unsigned char kat3827_entropyinpr2[] = { + 0x99, 0x04, 0xcf, 0x4e, 0x3d, 0x81, 0x0a, 0x2b, 0xec, 0x3a, 0x30, 0x09, + 0x73, 0x5e, 0x89, 0xa4, 0x5a, 0x25, 0x9e, 0xb3, 0x72, 0xaa, 0x3d, 0xa3, + 0xff, 0x0d, 0x53, 0xe2, 0x47, 0x8b, 0x22, 0x8b, +}; +static const unsigned char kat3827_addinpr2[] = { + 0x76, 0x35, 0xa5, 0x7b, 0x4f, 0x40, 0xad, 0xd8, 0xfe, 0xd1, 0x03, 0x2e, + 0x76, 0x1a, 0x96, 0x2c, 0x9f, 0xe2, 0xc6, 0xa9, 0xf0, 0x10, 0x23, 0x88, + 0x4f, 0x50, 0x2a, 0x04, 0x94, 0xc6, 0x0f, 0x18, +}; +static const unsigned char kat3827_retbits[] = { + 0x8e, 0xeb, 0x30, 0xb0, 0x24, 0x55, 0x9e, 0x6c, 0x9c, 0xc3, 0xa6, 0x24, + 0x7f, 0x7d, 0x11, 0x84, 0xc1, 0x1a, 0x5e, 0x68, 0x11, 0xa2, 0xdc, 0xce, + 0xbd, 0x6c, 0x3b, 0xed, 0xcc, 0xeb, 0x8c, 0xb4, 0xed, 0xa1, 0x56, 0xea, + 0xac, 0x30, 0x92, 0x01, 0xa1, 0x62, 0xca, 0x23, 0x11, 0xb1, 0x3c, 0x7f, + 0xc0, 0x5f, 0x06, 0x52, 0xb0, 0x85, 0x07, 0xc2, 0xce, 0x57, 0xc4, 0xbd, + 0x81, 0x9b, 0x4a, 0x2f, +}; +static const struct drbg_kat_pr_true kat3827_t = { + 1, kat3827_entropyin, kat3827_nonce, kat3827_persstr, + kat3827_entropyinpr1, kat3827_addinpr1, kat3827_entropyinpr2, + kat3827_addinpr2, kat3827_retbits +}; +static const struct drbg_kat kat3827 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3827_t +}; + +static const unsigned char kat3828_entropyin[] = { + 0x0e, 0x19, 0xa3, 0xe9, 0x8e, 0xc9, 0xcc, 0xb8, 0xda, 0x19, 0x5b, 0x61, + 0xf4, 0x18, 0x42, 0xc9, 0x5c, 0x14, 0xe6, 0x93, 0x74, 0x9e, 0x55, 0xf5, + 0xfc, 0x0e, 0x55, 0xff, 0x63, 0xf7, 0x4e, 0x68, +}; +static const unsigned char kat3828_nonce[] = {0}; +static const unsigned char kat3828_persstr[] = { + 0x27, 0x08, 0x83, 0x54, 0x5a, 0xb4, 0x1c, 0xf4, 0x26, 0xf9, 0xa9, 0x67, + 0x52, 0x17, 0x2a, 0x71, 0xab, 0xfc, 0x79, 0x75, 0x52, 0xb3, 0xed, 0xd4, + 0x63, 0xbb, 0xb7, 0x23, 0x18, 0x33, 0x55, 0x2d, +}; +static const unsigned char kat3828_entropyinpr1[] = { + 0x82, 0xb6, 0x8c, 0x3f, 0xd2, 0xe8, 0x75, 0x0c, 0x2b, 0xfd, 0x83, 0x4d, + 0xd3, 0x7b, 0x6a, 0x47, 0x1c, 0x30, 0xf6, 0x58, 0x1a, 0x93, 0xd7, 0x62, + 0x18, 0x4f, 0x61, 0x78, 0x25, 0xb2, 0xdd, 0x83, +}; +static const unsigned char kat3828_addinpr1[] = { + 0x10, 0x78, 0xf5, 0x4e, 0x5b, 0x60, 0xfd, 0x70, 0xb4, 0x8b, 0x1b, 0x70, + 0xd1, 0xd0, 0xb4, 0xd1, 0x75, 0x49, 0xc3, 0xe6, 0xb0, 0xbe, 0xcf, 0xac, + 0x8a, 0x7a, 0x45, 0x17, 0xb4, 0xd2, 0xf6, 0x84, +}; +static const unsigned char kat3828_entropyinpr2[] = { + 0x47, 0xcd, 0x9d, 0xc7, 0x10, 0xf0, 0x7b, 0xb6, 0xf5, 0xea, 0xb8, 0x1d, + 0xad, 0x0e, 0x28, 0xa6, 0xcc, 0xaa, 0x8b, 0x74, 0x5a, 0xca, 0x22, 0x49, + 0xd4, 0x9f, 0x3b, 0x4a, 0xe3, 0x4f, 0x23, 0x75, +}; +static const unsigned char kat3828_addinpr2[] = { + 0x52, 0xdc, 0xe3, 0x79, 0x6b, 0x79, 0x2a, 0x58, 0x87, 0x8b, 0x37, 0x0e, + 0x78, 0x9e, 0x3c, 0xdd, 0x13, 0xc3, 0x9e, 0xe9, 0x36, 0x1e, 0x0d, 0x0d, + 0x8f, 0xe3, 0xbb, 0x33, 0x82, 0x2e, 0x60, 0xc4, +}; +static const unsigned char kat3828_retbits[] = { + 0x99, 0x27, 0x0a, 0xb2, 0xf4, 0x4d, 0x0c, 0xc1, 0xe6, 0xc1, 0x88, 0x8a, + 0xd5, 0xbc, 0x63, 0x8b, 0x28, 0x43, 0x25, 0x59, 0x08, 0x7a, 0xda, 0x30, + 0xf6, 0x3b, 0x37, 0x24, 0x2c, 0x84, 0x8c, 0x8f, 0xe0, 0x48, 0xbf, 0x27, + 0x5b, 0xc5, 0x46, 0xbe, 0xe8, 0x28, 0x3d, 0xd6, 0x6b, 0x6f, 0xaa, 0x30, + 0x60, 0xe4, 0x34, 0x23, 0x15, 0x20, 0x21, 0xc7, 0xc3, 0x6a, 0x89, 0x32, + 0x52, 0x8f, 0x55, 0x57, +}; +static const struct drbg_kat_pr_true kat3828_t = { + 2, kat3828_entropyin, kat3828_nonce, kat3828_persstr, + kat3828_entropyinpr1, kat3828_addinpr1, kat3828_entropyinpr2, + kat3828_addinpr2, kat3828_retbits +}; +static const struct drbg_kat kat3828 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3828_t +}; + +static const unsigned char kat3829_entropyin[] = { + 0xcc, 0x03, 0x94, 0x76, 0x19, 0xeb, 0xda, 0x1a, 0x32, 0xff, 0x0d, 0xa1, + 0xab, 0x50, 0x32, 0x2d, 0x91, 0x4a, 0x8c, 0x92, 0x8f, 0x22, 0x17, 0x1c, + 0x5f, 0x57, 0x94, 0xf0, 0x47, 0xc1, 0xb5, 0x7c, +}; +static const unsigned char kat3829_nonce[] = {0}; +static const unsigned char kat3829_persstr[] = { + 0x9b, 0x58, 0xfd, 0x04, 0x4d, 0x90, 0x99, 0x3a, 0x74, 0xc2, 0x1b, 0x3d, + 0xd3, 0x9e, 0x47, 0x8a, 0x67, 0x1e, 0xd3, 0x6e, 0xa7, 0x65, 0x71, 0x24, + 0x13, 0x58, 0x59, 0xc2, 0x71, 0xad, 0x61, 0xd3, +}; +static const unsigned char kat3829_entropyinpr1[] = { + 0x3a, 0xbd, 0xb2, 0x21, 0x60, 0xef, 0x49, 0x9b, 0xcc, 0xbd, 0x18, 0x16, + 0x30, 0x84, 0xfe, 0x44, 0x52, 0x06, 0x82, 0xc2, 0x10, 0x72, 0xd2, 0xb5, + 0xa6, 0xaf, 0xf2, 0x5a, 0x28, 0x2a, 0xad, 0xab, +}; +static const unsigned char kat3829_addinpr1[] = { + 0x55, 0x8e, 0x7e, 0x98, 0x05, 0x36, 0xab, 0xce, 0xdb, 0x6c, 0x16, 0x54, + 0xa9, 0x65, 0xb3, 0xd0, 0x78, 0xc2, 0x6e, 0xfd, 0xab, 0x1d, 0x1c, 0x6d, + 0x8a, 0x58, 0x24, 0x30, 0x3e, 0x89, 0x80, 0xe3, +}; +static const unsigned char kat3829_entropyinpr2[] = { + 0x85, 0x54, 0xaf, 0x8e, 0xb3, 0x17, 0x98, 0xfe, 0x3d, 0xc1, 0x55, 0xa1, + 0x9f, 0x61, 0xdd, 0x68, 0x56, 0x5e, 0x06, 0x8d, 0xaa, 0xef, 0x08, 0xf2, + 0x54, 0x6f, 0x4a, 0xeb, 0x46, 0x1b, 0xf2, 0xb4, +}; +static const unsigned char kat3829_addinpr2[] = { + 0xc8, 0x59, 0x91, 0x33, 0xdc, 0x1d, 0x2f, 0xb1, 0xe7, 0xb7, 0x86, 0xc6, + 0x6c, 0x99, 0x36, 0x5e, 0x49, 0xeb, 0x46, 0x61, 0x5b, 0xdd, 0x4f, 0xda, + 0xdb, 0xe5, 0x84, 0x9a, 0xf6, 0xae, 0x1a, 0xe9, +}; +static const unsigned char kat3829_retbits[] = { + 0x9d, 0x49, 0x50, 0x1d, 0xd8, 0x07, 0xba, 0x3a, 0x98, 0xd5, 0x07, 0x3c, + 0xeb, 0x2f, 0xf1, 0x4a, 0x5a, 0xa5, 0xd0, 0x95, 0xb5, 0xae, 0x0d, 0xb5, + 0x0f, 0x74, 0xcf, 0x97, 0xe0, 0x89, 0xcb, 0x1e, 0x4c, 0xb6, 0xeb, 0x59, + 0x4e, 0xc8, 0x60, 0xed, 0x76, 0x45, 0x67, 0xa2, 0xee, 0xf7, 0x0a, 0x38, + 0xd3, 0xd2, 0x43, 0xab, 0x47, 0x1a, 0xe9, 0x73, 0xe2, 0x93, 0xaf, 0x10, + 0xd6, 0x02, 0x35, 0x4f, +}; +static const struct drbg_kat_pr_true kat3829_t = { + 3, kat3829_entropyin, kat3829_nonce, kat3829_persstr, + kat3829_entropyinpr1, kat3829_addinpr1, kat3829_entropyinpr2, + kat3829_addinpr2, kat3829_retbits +}; +static const struct drbg_kat kat3829 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3829_t +}; + +static const unsigned char kat3830_entropyin[] = { + 0x89, 0x80, 0x74, 0x4d, 0xac, 0x51, 0x87, 0x6f, 0x03, 0x20, 0x11, 0xc9, + 0x59, 0xb1, 0x30, 0xfd, 0x63, 0x3a, 0x23, 0x0e, 0x5a, 0x5b, 0xe1, 0xbb, + 0x61, 0x46, 0x70, 0x63, 0xa6, 0xc3, 0xed, 0xf2, +}; +static const unsigned char kat3830_nonce[] = {0}; +static const unsigned char kat3830_persstr[] = { + 0x55, 0x74, 0x2e, 0x9d, 0x45, 0xda, 0xaf, 0xb4, 0xee, 0x2d, 0x44, 0x7e, + 0x3c, 0x63, 0xe5, 0x1e, 0x6f, 0x15, 0xb0, 0x8f, 0x45, 0x78, 0x43, 0x75, + 0x71, 0x17, 0xb6, 0x8d, 0x4d, 0xc8, 0xb9, 0x45, +}; +static const unsigned char kat3830_entropyinpr1[] = { + 0x2c, 0x11, 0xc2, 0x36, 0x69, 0x0b, 0xde, 0xec, 0x27, 0x5b, 0x8f, 0xec, + 0x24, 0x59, 0x78, 0xca, 0xf8, 0x7c, 0xe3, 0x6f, 0xe9, 0xb5, 0xb8, 0x9c, + 0x2c, 0x0c, 0x2d, 0x14, 0xdb, 0x79, 0x9b, 0x5d, +}; +static const unsigned char kat3830_addinpr1[] = { + 0xa2, 0x7a, 0xdc, 0x9a, 0x12, 0xe0, 0xa0, 0x3a, 0x50, 0x01, 0xe0, 0x18, + 0x4a, 0x63, 0x86, 0x68, 0x95, 0xe3, 0xcd, 0x62, 0xb7, 0x28, 0x52, 0xc3, + 0xc1, 0xbb, 0x09, 0x18, 0xfb, 0xaf, 0xf7, 0x68, +}; +static const unsigned char kat3830_entropyinpr2[] = { + 0x42, 0x45, 0xa8, 0x50, 0xfb, 0xfa, 0xdb, 0x2e, 0x36, 0x71, 0x42, 0xae, + 0x7d, 0xf0, 0xb4, 0x72, 0xc5, 0x08, 0xb4, 0x7e, 0x69, 0x42, 0x3a, 0x83, + 0x27, 0x2d, 0x7e, 0xda, 0x6d, 0x72, 0x1e, 0x1c, +}; +static const unsigned char kat3830_addinpr2[] = { + 0xf3, 0x8a, 0x3b, 0x20, 0x23, 0x02, 0xe2, 0xa5, 0xf9, 0x6e, 0x44, 0xc2, + 0x0a, 0xb9, 0x14, 0x86, 0xe5, 0x07, 0xa2, 0x3a, 0xb5, 0xd7, 0xbc, 0x68, + 0x3e, 0xc6, 0x4e, 0x49, 0x74, 0xc2, 0x42, 0x4a, +}; +static const unsigned char kat3830_retbits[] = { + 0x5c, 0x93, 0x29, 0xe7, 0x86, 0xe0, 0xdb, 0x03, 0xcb, 0x33, 0xb2, 0xd6, + 0xc4, 0x0f, 0x7b, 0xb0, 0xe2, 0x14, 0x30, 0x30, 0x22, 0x4e, 0x3f, 0x18, + 0xe5, 0xeb, 0x43, 0xbb, 0xf7, 0x3f, 0x8a, 0xdd, 0xaa, 0x14, 0x0a, 0x32, + 0xf4, 0x04, 0x48, 0xd6, 0xd8, 0x0d, 0x65, 0x82, 0x8d, 0x92, 0x05, 0xe8, + 0x39, 0xef, 0x46, 0x0f, 0x74, 0xf0, 0x42, 0x3e, 0x4c, 0x7b, 0x5e, 0x0c, + 0x49, 0x8c, 0xd1, 0xa8, +}; +static const struct drbg_kat_pr_true kat3830_t = { + 4, kat3830_entropyin, kat3830_nonce, kat3830_persstr, + kat3830_entropyinpr1, kat3830_addinpr1, kat3830_entropyinpr2, + kat3830_addinpr2, kat3830_retbits +}; +static const struct drbg_kat kat3830 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3830_t +}; + +static const unsigned char kat3831_entropyin[] = { + 0x61, 0x09, 0x43, 0xe4, 0xb2, 0x97, 0x45, 0xc8, 0x7f, 0x04, 0x5a, 0x45, + 0xd3, 0x82, 0x43, 0x08, 0xde, 0x7c, 0x45, 0x2f, 0xfe, 0x27, 0xf0, 0x77, + 0x51, 0xe7, 0x31, 0x91, 0xf2, 0x75, 0xd7, 0x2b, +}; +static const unsigned char kat3831_nonce[] = {0}; +static const unsigned char kat3831_persstr[] = { + 0xf4, 0x04, 0x79, 0x8a, 0x26, 0x3e, 0x6c, 0xb7, 0xa4, 0x92, 0x6b, 0x13, + 0xf7, 0x9e, 0xca, 0x7e, 0x30, 0x03, 0x97, 0xce, 0xb8, 0xb6, 0x09, 0x22, + 0x64, 0x4a, 0x8a, 0x29, 0xd9, 0x96, 0x21, 0x79, +}; +static const unsigned char kat3831_entropyinpr1[] = { + 0x77, 0xc5, 0xbf, 0x63, 0x10, 0x60, 0xf6, 0xe6, 0xe1, 0x38, 0xbf, 0xcb, + 0xf9, 0x34, 0x3c, 0x42, 0x8a, 0x91, 0x0a, 0xea, 0x96, 0x8a, 0x3c, 0x1d, + 0x7e, 0xe1, 0xb0, 0x40, 0x57, 0x82, 0x89, 0x75, +}; +static const unsigned char kat3831_addinpr1[] = { + 0x12, 0x55, 0x07, 0xe6, 0xaf, 0xab, 0x4b, 0x1c, 0x37, 0xae, 0x63, 0x7e, + 0x7d, 0xeb, 0x4a, 0x53, 0x50, 0xf8, 0xb2, 0x3f, 0xfb, 0x78, 0x6f, 0x2c, + 0x53, 0xc8, 0xc3, 0x98, 0xa2, 0x2e, 0x8a, 0x14, +}; +static const unsigned char kat3831_entropyinpr2[] = { + 0x2d, 0xa9, 0xa8, 0x7d, 0xed, 0xc5, 0xc1, 0x20, 0xaa, 0x17, 0x8d, 0xbe, + 0x46, 0xa2, 0x56, 0x12, 0x1e, 0xae, 0x55, 0x24, 0x68, 0xfe, 0xcf, 0xfe, + 0x85, 0x73, 0x3d, 0x40, 0x34, 0xb4, 0x38, 0xd3, +}; +static const unsigned char kat3831_addinpr2[] = { + 0x97, 0x46, 0xd7, 0xcd, 0x3f, 0x03, 0xa0, 0xb6, 0x0c, 0xc3, 0xcd, 0x91, + 0x56, 0x0e, 0x05, 0xfc, 0x80, 0x8e, 0xcb, 0x51, 0x7c, 0xe5, 0x7f, 0xdc, + 0x19, 0x61, 0x36, 0xee, 0x5e, 0xdc, 0xbe, 0xe6, +}; +static const unsigned char kat3831_retbits[] = { + 0xbe, 0x8e, 0xb3, 0xe4, 0xc9, 0x80, 0xc2, 0xbe, 0x06, 0xf8, 0x22, 0x4b, + 0xab, 0x24, 0xd6, 0xe6, 0xe5, 0xe3, 0x73, 0xc7, 0xe2, 0xd8, 0x04, 0x24, + 0x76, 0x43, 0x8f, 0x25, 0x07, 0xa0, 0x05, 0x1d, 0x4d, 0xa2, 0x69, 0x70, + 0x02, 0x0a, 0x8e, 0x04, 0xd1, 0x6b, 0x93, 0x73, 0xa2, 0xce, 0xb4, 0x6f, + 0xda, 0x2d, 0x3e, 0x0a, 0xa0, 0xed, 0x0e, 0xea, 0x22, 0x03, 0xc9, 0x56, + 0x27, 0x6f, 0x36, 0xc7, +}; +static const struct drbg_kat_pr_true kat3831_t = { + 5, kat3831_entropyin, kat3831_nonce, kat3831_persstr, + kat3831_entropyinpr1, kat3831_addinpr1, kat3831_entropyinpr2, + kat3831_addinpr2, kat3831_retbits +}; +static const struct drbg_kat kat3831 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3831_t +}; + +static const unsigned char kat3832_entropyin[] = { + 0xee, 0xbd, 0x8f, 0x78, 0x7b, 0x46, 0x5e, 0x82, 0xd6, 0x45, 0xee, 0x25, + 0x1e, 0xf4, 0x9a, 0xb2, 0x43, 0x2a, 0x8b, 0x91, 0x8f, 0x4b, 0x7b, 0x98, + 0xac, 0x6c, 0xd9, 0xfb, 0x91, 0x33, 0x13, 0x10, +}; +static const unsigned char kat3832_nonce[] = {0}; +static const unsigned char kat3832_persstr[] = { + 0xfa, 0xeb, 0x92, 0xfc, 0x4a, 0xe0, 0x73, 0xa7, 0x04, 0x8d, 0x31, 0xce, + 0xa5, 0x17, 0xda, 0x5e, 0x35, 0x08, 0x00, 0x1d, 0x37, 0xbb, 0xb6, 0x25, + 0x8b, 0xb7, 0x8f, 0x69, 0x11, 0x32, 0x67, 0x01, +}; +static const unsigned char kat3832_entropyinpr1[] = { + 0x58, 0xc4, 0x0d, 0x6e, 0x41, 0xa1, 0x78, 0xad, 0x01, 0xa0, 0xd1, 0xf3, + 0x9d, 0x57, 0xe1, 0xcc, 0x85, 0x15, 0x33, 0xb0, 0xc8, 0xb3, 0xbc, 0xd5, + 0x81, 0x30, 0x79, 0x28, 0x7f, 0x98, 0x56, 0xe2, +}; +static const unsigned char kat3832_addinpr1[] = { + 0xd7, 0x6b, 0x08, 0x6f, 0xe5, 0x9e, 0x22, 0x64, 0x34, 0x13, 0x47, 0x34, + 0x60, 0xfe, 0xa2, 0xed, 0x47, 0x10, 0xbf, 0x18, 0xd4, 0xe1, 0x8a, 0xcb, + 0xf5, 0x16, 0xa0, 0x3c, 0x90, 0xb4, 0x12, 0x94, +}; +static const unsigned char kat3832_entropyinpr2[] = { + 0x40, 0x69, 0xc9, 0x09, 0x7c, 0x30, 0x09, 0xc6, 0xdc, 0x7a, 0x04, 0x0c, + 0x59, 0x49, 0x1a, 0xe0, 0x83, 0xcb, 0x26, 0x3b, 0x06, 0x3d, 0x26, 0x76, + 0xab, 0x43, 0xbd, 0x03, 0x9a, 0x78, 0xd3, 0xfb, +}; +static const unsigned char kat3832_addinpr2[] = { + 0x29, 0x5d, 0x0d, 0x82, 0x8b, 0x6e, 0x6e, 0xff, 0xde, 0x05, 0xab, 0x3b, + 0xc9, 0xce, 0x58, 0x4e, 0x4e, 0x45, 0xcf, 0x9b, 0xa5, 0x02, 0x5f, 0x39, + 0x0b, 0x70, 0x9e, 0x37, 0x12, 0x43, 0x4c, 0x1c, +}; +static const unsigned char kat3832_retbits[] = { + 0x26, 0x08, 0x75, 0x47, 0xae, 0x8a, 0x97, 0x91, 0x89, 0x2e, 0xcc, 0xdd, + 0xb6, 0x46, 0x77, 0x5c, 0x6d, 0xe5, 0x5f, 0xb1, 0x74, 0x8f, 0xb5, 0x73, + 0x7f, 0x56, 0x4a, 0x26, 0xeb, 0x6b, 0xca, 0x58, 0xdc, 0x80, 0xf8, 0xb8, + 0xf4, 0x2c, 0xdf, 0x91, 0x8c, 0x35, 0xae, 0x0f, 0x9a, 0xed, 0x50, 0x8a, + 0xfa, 0x01, 0x6c, 0x49, 0xdf, 0xd4, 0x10, 0x86, 0x0b, 0x70, 0x24, 0xc5, + 0x1e, 0xae, 0xff, 0x83, +}; +static const struct drbg_kat_pr_true kat3832_t = { + 6, kat3832_entropyin, kat3832_nonce, kat3832_persstr, + kat3832_entropyinpr1, kat3832_addinpr1, kat3832_entropyinpr2, + kat3832_addinpr2, kat3832_retbits +}; +static const struct drbg_kat kat3832 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3832_t +}; + +static const unsigned char kat3833_entropyin[] = { + 0xdb, 0x92, 0x1a, 0x90, 0x5c, 0x58, 0xc8, 0x45, 0x33, 0x3a, 0x52, 0xf0, + 0x8c, 0xae, 0xa9, 0x7d, 0x47, 0x19, 0x0e, 0x91, 0x90, 0x25, 0x32, 0xf3, + 0x6d, 0xdc, 0x87, 0x93, 0x89, 0x30, 0xd8, 0xcb, +}; +static const unsigned char kat3833_nonce[] = {0}; +static const unsigned char kat3833_persstr[] = { + 0xc6, 0x32, 0x56, 0xf1, 0xc8, 0xf9, 0xaa, 0xa7, 0x53, 0x56, 0xe9, 0xc7, + 0x10, 0x2e, 0xc9, 0x60, 0xf0, 0x75, 0x45, 0xa1, 0xb9, 0x80, 0x25, 0x94, + 0x3b, 0x78, 0x83, 0xd0, 0x4a, 0xd6, 0x36, 0xc8, +}; +static const unsigned char kat3833_entropyinpr1[] = { + 0x4b, 0xe8, 0x3a, 0xb9, 0xf7, 0xcd, 0x8e, 0x06, 0xcb, 0x76, 0xc5, 0x25, + 0x80, 0xe2, 0x3c, 0xeb, 0xa7, 0x0e, 0x99, 0xa8, 0xd9, 0x8c, 0xdb, 0x00, + 0x6b, 0xed, 0xe2, 0x2d, 0xc8, 0x0d, 0xfe, 0xb4, +}; +static const unsigned char kat3833_addinpr1[] = { + 0x44, 0xbc, 0xa1, 0xbe, 0x19, 0xc6, 0xa5, 0x21, 0x1f, 0xc9, 0xe0, 0xa1, + 0x9e, 0xa4, 0x29, 0xbe, 0xef, 0x23, 0x5d, 0x24, 0xf5, 0xf5, 0x13, 0xfc, + 0xcd, 0xbd, 0x8d, 0x76, 0xf1, 0xd6, 0xbc, 0x31, +}; +static const unsigned char kat3833_entropyinpr2[] = { + 0x02, 0xa4, 0x82, 0xfe, 0x9c, 0x1e, 0xdd, 0x21, 0xcb, 0x1e, 0xf2, 0x4c, + 0xcb, 0xa2, 0x65, 0x08, 0xa2, 0x1a, 0x0a, 0x15, 0xdc, 0x53, 0xd1, 0x04, + 0x35, 0x2c, 0x9d, 0x38, 0x66, 0x98, 0x4e, 0x4e, +}; +static const unsigned char kat3833_addinpr2[] = { + 0x7e, 0x03, 0x78, 0xd4, 0x75, 0x19, 0x1a, 0x40, 0x5f, 0x0f, 0x6f, 0x41, + 0x1d, 0x8e, 0x5b, 0xa8, 0xa8, 0xc7, 0x56, 0x79, 0xdc, 0x91, 0x8a, 0x39, + 0x03, 0x90, 0xdd, 0xd5, 0x84, 0x78, 0xd6, 0xf0, +}; +static const unsigned char kat3833_retbits[] = { + 0x7d, 0xf6, 0xcf, 0x44, 0x2e, 0xe4, 0x2a, 0xc3, 0x46, 0x98, 0x07, 0xd0, + 0x1e, 0xb9, 0x50, 0x04, 0xda, 0xcd, 0xaa, 0xd2, 0x0d, 0x26, 0xbd, 0x66, + 0x0f, 0xb7, 0xfb, 0x2b, 0x45, 0xc4, 0x70, 0xf0, 0xe1, 0xc7, 0x40, 0xe1, + 0x57, 0xb7, 0x2f, 0x69, 0xaa, 0xc6, 0x05, 0x8f, 0x39, 0x1f, 0x1a, 0xed, + 0x37, 0x8a, 0x53, 0x96, 0x35, 0x6a, 0xea, 0x08, 0x0e, 0x42, 0x09, 0x8c, + 0xba, 0x24, 0xb8, 0x2f, +}; +static const struct drbg_kat_pr_true kat3833_t = { + 7, kat3833_entropyin, kat3833_nonce, kat3833_persstr, + kat3833_entropyinpr1, kat3833_addinpr1, kat3833_entropyinpr2, + kat3833_addinpr2, kat3833_retbits +}; +static const struct drbg_kat kat3833 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3833_t +}; + +static const unsigned char kat3834_entropyin[] = { + 0x56, 0x7d, 0x90, 0x54, 0x42, 0x30, 0xc7, 0xdf, 0x90, 0x00, 0x54, 0xdc, + 0xfd, 0x65, 0x43, 0xa8, 0xf1, 0x0b, 0xc3, 0x5f, 0x4d, 0x71, 0xcb, 0x9b, + 0x57, 0x39, 0xc9, 0x28, 0xc6, 0x4f, 0xe3, 0x64, +}; +static const unsigned char kat3834_nonce[] = {0}; +static const unsigned char kat3834_persstr[] = { + 0xaa, 0x9a, 0xfe, 0x72, 0x28, 0x34, 0x8f, 0xaa, 0x3e, 0x81, 0x75, 0xbe, + 0x71, 0xec, 0xf3, 0x1a, 0xdf, 0x32, 0xb5, 0x86, 0x0f, 0xdf, 0x4f, 0x68, + 0xc9, 0xa0, 0x30, 0x05, 0xea, 0x13, 0x08, 0xa6, +}; +static const unsigned char kat3834_entropyinpr1[] = { + 0x62, 0x0d, 0x7f, 0x08, 0xe9, 0x03, 0x65, 0xd7, 0xb2, 0x18, 0xbb, 0xf9, + 0x50, 0xfd, 0x33, 0x0c, 0xb3, 0x12, 0x91, 0x9f, 0xbc, 0xb7, 0x19, 0xa5, + 0x07, 0x32, 0x1c, 0x90, 0x3b, 0x11, 0xe0, 0x01, +}; +static const unsigned char kat3834_addinpr1[] = { + 0x30, 0x86, 0x6b, 0x52, 0xc5, 0x89, 0x09, 0x2d, 0x64, 0xd4, 0x2e, 0x99, + 0x03, 0x32, 0x5b, 0xd6, 0x22, 0x74, 0x1b, 0xa2, 0x11, 0x04, 0x94, 0x73, + 0xb0, 0x08, 0xe0, 0x15, 0xa4, 0x03, 0x48, 0x46, +}; +static const unsigned char kat3834_entropyinpr2[] = { + 0x1b, 0x09, 0x91, 0x4d, 0xd7, 0x13, 0x6b, 0xe0, 0x92, 0x29, 0x00, 0xb5, + 0x55, 0x98, 0x01, 0x03, 0xdc, 0x24, 0xa2, 0x86, 0xd1, 0xe4, 0xa5, 0x18, + 0x58, 0xa5, 0xaf, 0x49, 0x03, 0x17, 0x19, 0xdb, +}; +static const unsigned char kat3834_addinpr2[] = { + 0xa5, 0xc9, 0x50, 0xc0, 0xbb, 0x9c, 0x3e, 0x4a, 0x18, 0x9d, 0xef, 0x6f, + 0xa0, 0xfa, 0xf2, 0xd2, 0x10, 0xe0, 0xea, 0x5b, 0x27, 0x19, 0xac, 0x50, + 0xe6, 0x29, 0x86, 0x53, 0x53, 0x4c, 0x8a, 0xe1, +}; +static const unsigned char kat3834_retbits[] = { + 0xdf, 0xcb, 0xf4, 0xf9, 0x8e, 0xce, 0x17, 0xc7, 0x89, 0xcc, 0x71, 0x36, + 0xc6, 0xcd, 0x3d, 0x62, 0xe5, 0xcd, 0xee, 0x1a, 0xb7, 0x1c, 0x0f, 0x68, + 0xf4, 0xa6, 0x3d, 0x62, 0x3b, 0x28, 0xd4, 0xf0, 0xf0, 0x19, 0x60, 0x6c, + 0x5f, 0x42, 0xac, 0x19, 0xeb, 0x21, 0xe8, 0xea, 0xc5, 0x87, 0xb1, 0x35, + 0x49, 0x6a, 0xe3, 0x4d, 0x0d, 0x55, 0x89, 0x8e, 0xce, 0x9c, 0xfa, 0x6c, + 0x93, 0xa4, 0xd1, 0xdc, +}; +static const struct drbg_kat_pr_true kat3834_t = { + 8, kat3834_entropyin, kat3834_nonce, kat3834_persstr, + kat3834_entropyinpr1, kat3834_addinpr1, kat3834_entropyinpr2, + kat3834_addinpr2, kat3834_retbits +}; +static const struct drbg_kat kat3834 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3834_t +}; + +static const unsigned char kat3835_entropyin[] = { + 0xc8, 0x8d, 0xdc, 0xbd, 0x3a, 0x90, 0xe7, 0x69, 0x0b, 0x34, 0x4d, 0x47, + 0x3f, 0x74, 0x50, 0xf9, 0xc2, 0xd6, 0x7f, 0xb1, 0xcd, 0x16, 0x2d, 0x0d, + 0x9a, 0x0b, 0xeb, 0xa5, 0xdd, 0x64, 0x29, 0xcf, +}; +static const unsigned char kat3835_nonce[] = {0}; +static const unsigned char kat3835_persstr[] = { + 0x5a, 0xa9, 0x67, 0x83, 0x85, 0x6e, 0x22, 0x9c, 0xe7, 0x15, 0x63, 0x7c, + 0x7c, 0x9d, 0xe4, 0x02, 0xcb, 0x29, 0x78, 0xf8, 0x42, 0xcb, 0xe3, 0x05, + 0x00, 0x14, 0x7c, 0x95, 0x40, 0x47, 0x07, 0x92, +}; +static const unsigned char kat3835_entropyinpr1[] = { + 0x23, 0x81, 0x02, 0xd7, 0x59, 0xe0, 0x17, 0xf8, 0xab, 0xf3, 0x73, 0x58, + 0x38, 0x4a, 0xd4, 0x9c, 0xba, 0xab, 0x74, 0xef, 0x38, 0x85, 0xc0, 0xc0, + 0x07, 0xfb, 0xce, 0x23, 0x34, 0x88, 0x36, 0xcf, +}; +static const unsigned char kat3835_addinpr1[] = { + 0x05, 0x7b, 0x19, 0x6c, 0x2c, 0x86, 0xb7, 0x1e, 0x41, 0xee, 0x58, 0x89, + 0x5a, 0x74, 0x0d, 0x61, 0x97, 0x22, 0x39, 0x5d, 0x16, 0xbe, 0x13, 0x23, + 0x86, 0x92, 0x72, 0xf6, 0xf1, 0x07, 0x69, 0x2f, +}; +static const unsigned char kat3835_entropyinpr2[] = { + 0xe9, 0xb8, 0x1b, 0x2a, 0x76, 0x77, 0x26, 0xa6, 0x71, 0xec, 0xc7, 0xf3, + 0xa2, 0xa6, 0x86, 0x7a, 0xff, 0x7b, 0x96, 0x60, 0x64, 0xb3, 0x16, 0x64, + 0x27, 0x3c, 0x02, 0xe8, 0x60, 0x49, 0x15, 0xa0, +}; +static const unsigned char kat3835_addinpr2[] = { + 0xc8, 0x5a, 0xf1, 0x7f, 0x50, 0x26, 0x4f, 0xb2, 0xda, 0xe7, 0x0a, 0x3e, + 0x52, 0xff, 0xcd, 0xb0, 0xf3, 0xf8, 0x5d, 0x13, 0xbf, 0x04, 0x72, 0x14, + 0x91, 0x36, 0xf1, 0x51, 0x71, 0xc0, 0x9d, 0xca, +}; +static const unsigned char kat3835_retbits[] = { + 0x14, 0x76, 0x1b, 0x40, 0xc7, 0x87, 0x42, 0x5e, 0x2e, 0xdf, 0x31, 0x6d, + 0x4b, 0x2d, 0xa5, 0xaa, 0x7b, 0xf9, 0x0e, 0xc8, 0x7f, 0x1e, 0x12, 0x40, + 0x4f, 0xf1, 0xe8, 0x69, 0x09, 0x34, 0x2e, 0xa5, 0x4e, 0x64, 0x7e, 0x52, + 0x9c, 0xe3, 0xe4, 0x7a, 0x87, 0x69, 0x07, 0xdc, 0x9a, 0xb7, 0xdf, 0x29, + 0x85, 0xd5, 0xd0, 0xfb, 0xb5, 0x41, 0xa2, 0x4a, 0xbb, 0x60, 0x3c, 0x1b, + 0xda, 0x90, 0xa9, 0x8e, +}; +static const struct drbg_kat_pr_true kat3835_t = { + 9, kat3835_entropyin, kat3835_nonce, kat3835_persstr, + kat3835_entropyinpr1, kat3835_addinpr1, kat3835_entropyinpr2, + kat3835_addinpr2, kat3835_retbits +}; +static const struct drbg_kat kat3835 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3835_t +}; + +static const unsigned char kat3836_entropyin[] = { + 0x7d, 0x45, 0xc5, 0x7c, 0x97, 0x74, 0x42, 0xbf, 0xd9, 0x40, 0xc1, 0x14, + 0x5b, 0x15, 0x6b, 0xf9, 0x3a, 0xb4, 0xa4, 0x8a, 0x49, 0x50, 0x9d, 0x08, + 0xc1, 0x9a, 0x97, 0xb1, 0x23, 0x33, 0xf1, 0x95, +}; +static const unsigned char kat3836_nonce[] = {0}; +static const unsigned char kat3836_persstr[] = { + 0x0f, 0x85, 0x88, 0x5f, 0x09, 0xe0, 0x33, 0xd9, 0x27, 0x29, 0x5f, 0x17, + 0xe3, 0x38, 0xfd, 0x23, 0xa7, 0xf2, 0x71, 0x29, 0x86, 0x22, 0x74, 0x16, + 0xfa, 0xa0, 0xf4, 0x47, 0xf5, 0x66, 0xc8, 0x7d, +}; +static const unsigned char kat3836_entropyinpr1[] = { + 0x48, 0x56, 0x94, 0x5f, 0xb0, 0x87, 0xf0, 0xa8, 0x76, 0xa2, 0xcf, 0xc2, + 0x66, 0x46, 0x18, 0x63, 0xad, 0x56, 0x11, 0xa2, 0x60, 0xaa, 0xa6, 0x19, + 0x14, 0x58, 0x83, 0xf5, 0xf1, 0x88, 0x2f, 0x4b, +}; +static const unsigned char kat3836_addinpr1[] = { + 0xec, 0xef, 0x28, 0x0b, 0x94, 0xfb, 0x1e, 0xca, 0x94, 0x79, 0x41, 0x53, + 0x4f, 0xe6, 0xd9, 0xee, 0x1d, 0x7c, 0xe8, 0x92, 0x1a, 0xd5, 0xcf, 0x76, + 0xc7, 0x2a, 0x80, 0xb5, 0xd5, 0x71, 0x68, 0x6b, +}; +static const unsigned char kat3836_entropyinpr2[] = { + 0x02, 0x20, 0x01, 0xc4, 0x25, 0xbb, 0x74, 0x65, 0x3d, 0xcc, 0x96, 0x8f, + 0x79, 0xb6, 0xd1, 0x42, 0x47, 0x3f, 0xfc, 0x45, 0x29, 0x4c, 0xcd, 0x08, + 0x82, 0x19, 0x25, 0xfe, 0x0e, 0x7b, 0x59, 0xf3, +}; +static const unsigned char kat3836_addinpr2[] = { + 0x96, 0x40, 0xc1, 0xef, 0x76, 0x6c, 0x6d, 0xdf, 0x7e, 0x28, 0x37, 0x66, + 0xcc, 0xeb, 0x02, 0x19, 0xb4, 0x4c, 0xd4, 0x06, 0x1f, 0x2c, 0x21, 0x5c, + 0x38, 0xa2, 0xbd, 0xec, 0xda, 0x74, 0xe7, 0x68, +}; +static const unsigned char kat3836_retbits[] = { + 0x97, 0x47, 0x67, 0x8c, 0x0b, 0xfc, 0xe8, 0x24, 0x48, 0x44, 0x81, 0x48, + 0x3f, 0xbf, 0xb3, 0x6e, 0x52, 0xb4, 0x2b, 0xb6, 0x1c, 0x7b, 0x9e, 0x81, + 0xb8, 0x64, 0x6c, 0xb9, 0x61, 0xa5, 0xe2, 0x33, 0x73, 0xcd, 0x1b, 0x38, + 0x11, 0x73, 0xe8, 0x98, 0xf5, 0x98, 0x5d, 0x6b, 0x88, 0x07, 0xe8, 0x54, + 0xaf, 0xb7, 0xf9, 0x90, 0x8b, 0x86, 0xb5, 0x9f, 0x10, 0xab, 0x7e, 0x5f, + 0x40, 0xd9, 0x95, 0xbf, +}; +static const struct drbg_kat_pr_true kat3836_t = { + 10, kat3836_entropyin, kat3836_nonce, kat3836_persstr, + kat3836_entropyinpr1, kat3836_addinpr1, kat3836_entropyinpr2, + kat3836_addinpr2, kat3836_retbits +}; +static const struct drbg_kat kat3836 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3836_t +}; + +static const unsigned char kat3837_entropyin[] = { + 0xfa, 0xce, 0xb4, 0x77, 0x25, 0x5e, 0x51, 0x95, 0x1a, 0xdf, 0xd7, 0xed, + 0x0e, 0xb9, 0x9e, 0x39, 0x1d, 0xc7, 0x77, 0x85, 0xea, 0x7c, 0x03, 0xa1, + 0x50, 0x04, 0x7f, 0xf7, 0x36, 0x38, 0x2e, 0x86, +}; +static const unsigned char kat3837_nonce[] = {0}; +static const unsigned char kat3837_persstr[] = { + 0xee, 0xd0, 0xf3, 0xa4, 0xc9, 0xb7, 0xf1, 0x2e, 0x46, 0xdf, 0xa7, 0x75, + 0xec, 0xf8, 0x48, 0xd9, 0x63, 0xa1, 0xaf, 0x09, 0x7f, 0xa7, 0x9c, 0x9d, + 0x31, 0xd3, 0x46, 0xd7, 0x0b, 0xce, 0xcc, 0x44, +}; +static const unsigned char kat3837_entropyinpr1[] = { + 0x23, 0x3d, 0x42, 0xaa, 0x4a, 0x3a, 0x00, 0xb1, 0x1b, 0x53, 0xbc, 0xab, + 0x65, 0x74, 0x9b, 0x8f, 0xc4, 0xb5, 0xdd, 0x7e, 0x63, 0x20, 0x73, 0x2e, + 0xc5, 0x36, 0x54, 0xc3, 0xa8, 0x97, 0x4f, 0xed, +}; +static const unsigned char kat3837_addinpr1[] = { + 0xab, 0x58, 0x91, 0xd6, 0x6a, 0x28, 0x41, 0xd2, 0xdf, 0x0f, 0xb6, 0x6e, + 0xa7, 0x93, 0xf2, 0x50, 0x69, 0xb3, 0xd3, 0xaf, 0x08, 0xa5, 0xe0, 0x76, + 0x46, 0xbd, 0x4b, 0x1c, 0x53, 0xe4, 0x1c, 0xc6, +}; +static const unsigned char kat3837_entropyinpr2[] = { + 0xda, 0xc6, 0xcb, 0x6b, 0x3c, 0x87, 0x11, 0xf6, 0x25, 0x3d, 0x0f, 0xdd, + 0x20, 0xdd, 0xc7, 0x40, 0xf8, 0x60, 0x28, 0x7a, 0x9f, 0x5f, 0xca, 0x78, + 0xe3, 0x62, 0xb5, 0x83, 0xa7, 0x75, 0x3f, 0x38, +}; +static const unsigned char kat3837_addinpr2[] = { + 0x33, 0x2f, 0xa3, 0x94, 0x0a, 0xdb, 0x21, 0x7e, 0x5e, 0x66, 0xb1, 0xe7, + 0xdc, 0xb0, 0xe1, 0x5f, 0x06, 0x55, 0x93, 0x73, 0xae, 0xd4, 0xb7, 0x5b, + 0xf6, 0xbb, 0x5b, 0x78, 0xd0, 0x17, 0xba, 0x6f, +}; +static const unsigned char kat3837_retbits[] = { + 0x77, 0xb2, 0xe6, 0xd1, 0x9e, 0xee, 0x7e, 0x24, 0x56, 0xe3, 0x60, 0x14, + 0xc4, 0xe9, 0xd2, 0x37, 0x71, 0xcd, 0xaf, 0x6d, 0x17, 0x3d, 0xe5, 0xe7, + 0xfd, 0x5e, 0xb5, 0xc2, 0x50, 0x78, 0x56, 0xd2, 0x7c, 0x45, 0x4e, 0x82, + 0x3b, 0x98, 0x42, 0xda, 0xd1, 0x57, 0x81, 0x6e, 0x03, 0xe2, 0x2f, 0x87, + 0x28, 0xce, 0xe6, 0xb0, 0xfd, 0x2e, 0xf1, 0x4f, 0xd4, 0x24, 0x9e, 0x83, + 0x6f, 0x32, 0xff, 0xa9, +}; +static const struct drbg_kat_pr_true kat3837_t = { + 11, kat3837_entropyin, kat3837_nonce, kat3837_persstr, + kat3837_entropyinpr1, kat3837_addinpr1, kat3837_entropyinpr2, + kat3837_addinpr2, kat3837_retbits +}; +static const struct drbg_kat kat3837 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3837_t +}; + +static const unsigned char kat3838_entropyin[] = { + 0xbe, 0x34, 0xf7, 0x6f, 0xf2, 0x57, 0x9a, 0xee, 0xa3, 0xa8, 0xe3, 0x34, + 0x42, 0x4c, 0xf6, 0xfd, 0x21, 0x2a, 0x35, 0x6e, 0x60, 0x51, 0x9e, 0xbe, + 0x03, 0xe5, 0x8e, 0xa0, 0x70, 0x20, 0x52, 0xa3, +}; +static const unsigned char kat3838_nonce[] = {0}; +static const unsigned char kat3838_persstr[] = { + 0x67, 0xda, 0xbd, 0x1f, 0x3a, 0x54, 0x38, 0x36, 0x31, 0xf7, 0xaa, 0xfa, + 0xbe, 0x44, 0x60, 0x25, 0xae, 0xf8, 0xde, 0x21, 0xc9, 0xf2, 0x00, 0xf1, + 0x54, 0x23, 0xbb, 0xd9, 0xb3, 0xbb, 0xcf, 0x02, +}; +static const unsigned char kat3838_entropyinpr1[] = { + 0x49, 0xcd, 0x2b, 0x74, 0xee, 0xea, 0x27, 0x52, 0x3a, 0xe6, 0x13, 0xe1, + 0xbf, 0x00, 0x03, 0x39, 0xfc, 0xbe, 0xa5, 0xd9, 0x12, 0x33, 0x3d, 0x83, + 0xcf, 0x41, 0x6c, 0xb0, 0xcf, 0xf7, 0x4a, 0x5d, +}; +static const unsigned char kat3838_addinpr1[] = { + 0xff, 0x4e, 0xb8, 0xc0, 0x0d, 0xec, 0x61, 0xf3, 0xe3, 0xfd, 0x1b, 0x26, + 0x08, 0x31, 0x90, 0x45, 0x5f, 0x89, 0x31, 0x21, 0xfb, 0x97, 0x85, 0x53, + 0x2f, 0xa3, 0x3c, 0x1f, 0xe3, 0x74, 0xbb, 0xb1, +}; +static const unsigned char kat3838_entropyinpr2[] = { + 0x26, 0xd6, 0x5b, 0x73, 0xfe, 0xe9, 0xe6, 0xb2, 0x6e, 0x3f, 0xba, 0x4e, + 0xc5, 0xbf, 0xc0, 0x8f, 0xa0, 0x77, 0xf9, 0xc4, 0x75, 0xff, 0x68, 0xc6, + 0x70, 0x7f, 0x48, 0x76, 0xc8, 0x21, 0xbc, 0x9e, +}; +static const unsigned char kat3838_addinpr2[] = { + 0xa0, 0xf1, 0x8d, 0xdd, 0x51, 0x78, 0x65, 0xd2, 0x63, 0x03, 0x21, 0xa4, + 0x10, 0x84, 0xd7, 0x9d, 0xbd, 0x20, 0x25, 0x5d, 0xba, 0x5b, 0x86, 0x91, + 0x63, 0x2e, 0x85, 0xde, 0xb3, 0xe0, 0xc0, 0x72, +}; +static const unsigned char kat3838_retbits[] = { + 0x49, 0xcd, 0xce, 0xc1, 0xd6, 0x5b, 0x0e, 0x03, 0xac, 0x4d, 0x19, 0x21, + 0x6e, 0xa4, 0x5a, 0xc3, 0x1f, 0x76, 0xba, 0xc7, 0xd6, 0x30, 0xe1, 0x01, + 0x8e, 0x7a, 0x5b, 0x9d, 0x81, 0xff, 0x20, 0xac, 0x15, 0x91, 0x10, 0xa1, + 0xf9, 0x3d, 0x36, 0x82, 0x05, 0x2a, 0x07, 0x93, 0xe1, 0x92, 0x3e, 0x59, + 0xe5, 0x03, 0xde, 0xfb, 0xbe, 0xd3, 0x11, 0x86, 0x82, 0xd7, 0x57, 0xd0, + 0x22, 0x27, 0xc4, 0xbc, +}; +static const struct drbg_kat_pr_true kat3838_t = { + 12, kat3838_entropyin, kat3838_nonce, kat3838_persstr, + kat3838_entropyinpr1, kat3838_addinpr1, kat3838_entropyinpr2, + kat3838_addinpr2, kat3838_retbits +}; +static const struct drbg_kat kat3838 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3838_t +}; + +static const unsigned char kat3839_entropyin[] = { + 0x81, 0xc4, 0x7b, 0x1a, 0xfb, 0x87, 0x6f, 0x71, 0x15, 0x9b, 0x3c, 0x7d, + 0xa5, 0x87, 0x90, 0x99, 0xe3, 0x6f, 0x72, 0xcd, 0x39, 0x0b, 0x5f, 0x91, + 0x68, 0x31, 0xfb, 0x7d, 0x9a, 0x33, 0xcc, 0x8b, +}; +static const unsigned char kat3839_nonce[] = {0}; +static const unsigned char kat3839_persstr[] = { + 0x05, 0xa2, 0x4c, 0x4e, 0xef, 0x87, 0x2e, 0xcc, 0x59, 0x09, 0xe4, 0x64, + 0xe0, 0xb9, 0xfd, 0x6b, 0x17, 0x1a, 0x76, 0x9b, 0x5c, 0x76, 0xa0, 0x27, + 0x11, 0x4a, 0x0d, 0x11, 0xb3, 0x02, 0xc3, 0xa8, +}; +static const unsigned char kat3839_entropyinpr1[] = { + 0xb6, 0x83, 0x32, 0xd2, 0xe1, 0x60, 0x00, 0x22, 0xf3, 0x3e, 0x3d, 0xdb, + 0x8b, 0x7a, 0x58, 0x46, 0xbb, 0xde, 0x26, 0xb0, 0xeb, 0x12, 0xc6, 0x3b, + 0x39, 0x4d, 0xd4, 0xdf, 0xc1, 0xef, 0x18, 0x7a, +}; +static const unsigned char kat3839_addinpr1[] = { + 0xa6, 0x6f, 0xa6, 0x27, 0x7d, 0x83, 0x96, 0xd4, 0x98, 0xac, 0x82, 0x51, + 0x8a, 0xae, 0x10, 0xe6, 0x7d, 0x96, 0x1e, 0x67, 0x9e, 0x5a, 0x89, 0xef, + 0xd8, 0x18, 0xf0, 0x81, 0x1f, 0x4a, 0x28, 0xe6, +}; +static const unsigned char kat3839_entropyinpr2[] = { + 0xc3, 0x92, 0x04, 0xb1, 0xf0, 0x56, 0x23, 0x4d, 0x37, 0xe4, 0x9d, 0xfe, + 0x40, 0x63, 0x18, 0xcf, 0x41, 0x77, 0xcc, 0xe6, 0xd1, 0x72, 0xc3, 0xf8, + 0x2a, 0xdd, 0x7f, 0x8a, 0x2f, 0x9b, 0xd3, 0x55, +}; +static const unsigned char kat3839_addinpr2[] = { + 0xad, 0xac, 0xff, 0xc9, 0x45, 0xa6, 0x21, 0xe6, 0x18, 0x5d, 0x81, 0xc2, + 0x8e, 0xe0, 0xc4, 0xf7, 0x1f, 0x5e, 0xcf, 0xb1, 0x12, 0x2b, 0x43, 0x32, + 0x1c, 0x77, 0x78, 0x25, 0x93, 0x75, 0xcc, 0x9f, +}; +static const unsigned char kat3839_retbits[] = { + 0x44, 0xc5, 0x2b, 0x3b, 0xde, 0x4f, 0x0e, 0xad, 0x73, 0x3d, 0x15, 0x49, + 0x0d, 0x6f, 0xd9, 0xe2, 0xe9, 0xf7, 0x10, 0x52, 0x56, 0x3a, 0x62, 0xb5, + 0xa1, 0x3f, 0x87, 0x10, 0x39, 0xc7, 0xa6, 0x46, 0x91, 0x63, 0x6b, 0x7c, + 0x0b, 0x4a, 0xa9, 0xe8, 0xa5, 0x27, 0xc7, 0x15, 0x16, 0xce, 0x9d, 0x9c, + 0x96, 0x92, 0xd4, 0x3e, 0x84, 0x5d, 0x38, 0x4d, 0xaa, 0x17, 0x2f, 0xf5, + 0x41, 0xe7, 0x99, 0x6b, +}; +static const struct drbg_kat_pr_true kat3839_t = { + 13, kat3839_entropyin, kat3839_nonce, kat3839_persstr, + kat3839_entropyinpr1, kat3839_addinpr1, kat3839_entropyinpr2, + kat3839_addinpr2, kat3839_retbits +}; +static const struct drbg_kat kat3839 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3839_t +}; + +static const unsigned char kat3840_entropyin[] = { + 0x08, 0x5d, 0xaa, 0xc1, 0x2b, 0x24, 0x01, 0xe3, 0xff, 0x88, 0x4f, 0x03, + 0xbf, 0xf7, 0x07, 0x63, 0xc3, 0x8e, 0xae, 0x65, 0xbd, 0x24, 0xb5, 0x73, + 0x3c, 0x6b, 0xfd, 0x54, 0x50, 0x11, 0xc6, 0x9e, +}; +static const unsigned char kat3840_nonce[] = {0}; +static const unsigned char kat3840_persstr[] = { + 0x6a, 0x9f, 0x2e, 0x31, 0x42, 0xa2, 0x80, 0x82, 0x32, 0xc3, 0xfe, 0xd7, + 0xef, 0xd3, 0x34, 0x36, 0xa5, 0xa4, 0xd9, 0xef, 0x14, 0x81, 0x56, 0x38, + 0xc6, 0x5d, 0x01, 0x2e, 0x11, 0x47, 0x0c, 0xc8, +}; +static const unsigned char kat3840_entropyinpr1[] = { + 0xdb, 0x22, 0xd9, 0xa3, 0xf5, 0x3f, 0xc7, 0x39, 0xd3, 0x02, 0x55, 0xa6, + 0x61, 0x7c, 0x98, 0x62, 0x54, 0x15, 0x3c, 0x51, 0x9c, 0x34, 0xe7, 0x9d, + 0x2a, 0x6e, 0x87, 0x62, 0xa0, 0x69, 0x09, 0xb0, +}; +static const unsigned char kat3840_addinpr1[] = { + 0x6d, 0x18, 0xd7, 0xd0, 0xed, 0x67, 0x98, 0xbb, 0x4f, 0xd7, 0xfa, 0xb8, + 0xd2, 0xab, 0x6d, 0x2d, 0x72, 0x99, 0x77, 0x10, 0x70, 0x06, 0x61, 0x91, + 0x3d, 0x05, 0xfc, 0xbc, 0x5d, 0x6d, 0x86, 0x52, +}; +static const unsigned char kat3840_entropyinpr2[] = { + 0xa4, 0x34, 0x1a, 0xe5, 0x15, 0x56, 0x01, 0xaf, 0x7c, 0xcf, 0xd9, 0xbc, + 0x57, 0x39, 0x68, 0xf9, 0x9f, 0xf8, 0x2a, 0xe2, 0x60, 0x5a, 0x46, 0x2a, + 0xf7, 0xe6, 0xed, 0x6f, 0xd5, 0xf2, 0xca, 0xb6, +}; +static const unsigned char kat3840_addinpr2[] = { + 0xb4, 0x4a, 0x49, 0x9f, 0xdf, 0x93, 0x30, 0x17, 0x0e, 0xbe, 0xde, 0x64, + 0xcf, 0x8f, 0xb1, 0x9f, 0x4a, 0x83, 0x17, 0x59, 0x6d, 0x80, 0xd8, 0xf9, + 0xc9, 0xd1, 0x00, 0x93, 0x22, 0x98, 0xe4, 0xae, +}; +static const unsigned char kat3840_retbits[] = { + 0xde, 0x65, 0x41, 0xda, 0xe0, 0x91, 0x37, 0xdf, 0xe1, 0x7f, 0xa3, 0xbc, + 0x78, 0x5c, 0x8f, 0x45, 0xd3, 0xd3, 0x6c, 0xb6, 0x21, 0xd7, 0x6c, 0x53, + 0xf9, 0x03, 0x1b, 0x28, 0x53, 0xee, 0x06, 0x57, 0xa1, 0xed, 0xba, 0x0f, + 0x6f, 0x06, 0xda, 0xde, 0x6a, 0x5a, 0x62, 0xfa, 0xec, 0x54, 0xcf, 0x69, + 0xbb, 0xf1, 0x5d, 0xb2, 0x24, 0x49, 0x09, 0x11, 0x4b, 0x04, 0x86, 0xf7, + 0x5d, 0xa3, 0xcf, 0x16, +}; +static const struct drbg_kat_pr_true kat3840_t = { + 14, kat3840_entropyin, kat3840_nonce, kat3840_persstr, + kat3840_entropyinpr1, kat3840_addinpr1, kat3840_entropyinpr2, + kat3840_addinpr2, kat3840_retbits +}; +static const struct drbg_kat kat3840 = { + PR_TRUE, NO_DF, NID_aes_128_ctr, 32, 0, 32, 32, 64, &kat3840_t +}; + +static const unsigned char kat3841_entropyin[] = { + 0xed, 0xdb, 0x79, 0xf0, 0xfb, 0x5a, 0x5d, 0xd6, 0xb5, 0xe4, 0x61, 0x12, + 0xa7, 0xd7, 0x05, 0x27, 0x0c, 0xee, 0xce, 0xfd, 0xcc, 0x2e, 0x8d, 0xb2, + 0x72, 0x1c, 0x42, 0xf3, 0xe6, 0x35, 0x86, 0x83, 0x61, 0x0d, 0x40, 0xd0, + 0xf6, 0x70, 0x92, 0xcc, +}; +static const unsigned char kat3841_nonce[] = {0}; +static const unsigned char kat3841_persstr[] = {0}; +static const unsigned char kat3841_entropyinpr1[] = { + 0x7e, 0x96, 0x35, 0x54, 0xe9, 0x0e, 0x20, 0xa6, 0xd8, 0x51, 0xba, 0x86, + 0x78, 0x55, 0x2d, 0x3c, 0xc4, 0xe8, 0xad, 0x73, 0x8d, 0xba, 0x17, 0xfd, + 0xe8, 0xb3, 0xc5, 0x1f, 0x65, 0xf2, 0xc0, 0x5b, 0x6b, 0x38, 0x25, 0xd8, + 0xc4, 0xfa, 0x8e, 0x9c, +}; +static const unsigned char kat3841_addinpr1[] = {0}; +static const unsigned char kat3841_entropyinpr2[] = { + 0x42, 0xca, 0x45, 0x3e, 0xbd, 0xc7, 0xe3, 0x92, 0x15, 0x67, 0x18, 0xa8, + 0x56, 0xd4, 0xfd, 0xed, 0xf3, 0x24, 0xaa, 0xb0, 0x11, 0x56, 0x43, 0x1e, + 0x49, 0xed, 0xcb, 0x44, 0xd9, 0x16, 0x90, 0x6d, 0x78, 0x9f, 0xc2, 0xe0, + 0xd8, 0xd5, 0x27, 0x97, +}; +static const unsigned char kat3841_addinpr2[] = {0}; +static const unsigned char kat3841_retbits[] = { + 0xe1, 0x98, 0xbf, 0xc6, 0xcc, 0x3a, 0x02, 0x6a, 0x14, 0x3d, 0x35, 0x60, + 0xb7, 0x0b, 0x69, 0x83, 0x2a, 0x4d, 0x08, 0x64, 0xac, 0x2b, 0x97, 0x13, + 0x4b, 0xb6, 0x48, 0x76, 0xde, 0x80, 0xb0, 0x85, 0xf0, 0x54, 0x83, 0xe8, + 0x2a, 0xd4, 0xb5, 0x0d, 0xef, 0xd3, 0x7f, 0x77, 0xbe, 0x7e, 0x1a, 0x03, + 0x10, 0xb7, 0x1f, 0xf7, 0xdf, 0x6e, 0x7f, 0xe0, 0xc2, 0x2d, 0xc5, 0xa7, + 0x78, 0x06, 0xe0, 0x94, +}; +static const struct drbg_kat_pr_true kat3841_t = { + 0, kat3841_entropyin, kat3841_nonce, kat3841_persstr, + kat3841_entropyinpr1, kat3841_addinpr1, kat3841_entropyinpr2, + kat3841_addinpr2, kat3841_retbits +}; +static const struct drbg_kat kat3841 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3841_t +}; + +static const unsigned char kat3842_entropyin[] = { + 0xde, 0xa1, 0x43, 0x22, 0xc5, 0x34, 0x8f, 0xd2, 0x38, 0x73, 0x47, 0x77, + 0x6c, 0x47, 0x45, 0xec, 0xf0, 0x97, 0x79, 0xc1, 0x5b, 0x04, 0xb6, 0x2c, + 0x0d, 0x19, 0x05, 0x8d, 0xfc, 0x5d, 0xc6, 0xdb, 0x7b, 0xb7, 0x1d, 0xd3, + 0x42, 0x2f, 0x0d, 0x5b, +}; +static const unsigned char kat3842_nonce[] = {0}; +static const unsigned char kat3842_persstr[] = {0}; +static const unsigned char kat3842_entropyinpr1[] = { + 0xcb, 0x2f, 0xf6, 0xc5, 0xbe, 0x24, 0x26, 0x48, 0x5e, 0xa9, 0x63, 0x2d, + 0xad, 0x6f, 0x78, 0x5c, 0xf0, 0xb3, 0x69, 0x20, 0x56, 0x8d, 0xae, 0x6d, + 0x6a, 0xaf, 0x82, 0x79, 0x1b, 0x7c, 0x52, 0x67, 0xc4, 0x4e, 0x33, 0x59, + 0xe4, 0xbd, 0x7f, 0x08, +}; +static const unsigned char kat3842_addinpr1[] = {0}; +static const unsigned char kat3842_entropyinpr2[] = { + 0x0a, 0x1c, 0x36, 0xed, 0x96, 0xa8, 0x12, 0xce, 0xdf, 0xb7, 0x9b, 0x1c, + 0x8e, 0xec, 0xce, 0xbf, 0x36, 0xd0, 0x0b, 0xb8, 0xbe, 0x76, 0xdb, 0xfe, + 0x03, 0x31, 0x16, 0x00, 0x22, 0xeb, 0x65, 0xee, 0xd2, 0x5e, 0x78, 0xbf, + 0xbb, 0xd4, 0xfe, 0xc1, +}; +static const unsigned char kat3842_addinpr2[] = {0}; +static const unsigned char kat3842_retbits[] = { + 0x04, 0x09, 0x6e, 0x53, 0xc4, 0x45, 0x9e, 0x7f, 0x7c, 0x0d, 0xfb, 0xe3, + 0x5e, 0x8d, 0x6c, 0x68, 0x90, 0x3d, 0x64, 0x98, 0xee, 0x77, 0x87, 0x22, + 0xb7, 0x76, 0x15, 0x6e, 0xae, 0x08, 0x58, 0x60, 0xf7, 0xf0, 0xf4, 0x2a, + 0x46, 0xdd, 0x4a, 0x81, 0x13, 0xf7, 0x28, 0xbc, 0xfd, 0x99, 0x35, 0x16, + 0xe4, 0xbb, 0xe1, 0x32, 0xff, 0x4a, 0xa5, 0x7a, 0x7c, 0x54, 0x00, 0x51, + 0xe4, 0xb3, 0x30, 0x0e, +}; +static const struct drbg_kat_pr_true kat3842_t = { + 1, kat3842_entropyin, kat3842_nonce, kat3842_persstr, + kat3842_entropyinpr1, kat3842_addinpr1, kat3842_entropyinpr2, + kat3842_addinpr2, kat3842_retbits +}; +static const struct drbg_kat kat3842 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3842_t +}; + +static const unsigned char kat3843_entropyin[] = { + 0x16, 0xad, 0x0d, 0xb9, 0x82, 0xa3, 0x5d, 0x87, 0x90, 0x9a, 0xfb, 0x21, + 0xdc, 0xb2, 0xa3, 0x49, 0xf6, 0x9d, 0x72, 0x58, 0xfa, 0x49, 0xb4, 0x76, + 0xc7, 0x02, 0x75, 0x80, 0xdd, 0xb2, 0x98, 0xfe, 0x37, 0xc6, 0x2d, 0xce, + 0x21, 0xc6, 0x28, 0x43, +}; +static const unsigned char kat3843_nonce[] = {0}; +static const unsigned char kat3843_persstr[] = {0}; +static const unsigned char kat3843_entropyinpr1[] = { + 0x0a, 0x78, 0x02, 0x80, 0x9a, 0x17, 0x3c, 0x32, 0x05, 0x94, 0x0a, 0x02, + 0x1c, 0x32, 0x33, 0x65, 0x89, 0xdd, 0x55, 0xd1, 0x73, 0x52, 0xe8, 0xe2, + 0x14, 0x86, 0xd5, 0xf7, 0x27, 0x73, 0xb5, 0x69, 0xcd, 0x3f, 0x3a, 0x66, + 0xdb, 0x32, 0xb3, 0x68, +}; +static const unsigned char kat3843_addinpr1[] = {0}; +static const unsigned char kat3843_entropyinpr2[] = { + 0x5e, 0x2a, 0xdf, 0x42, 0x8e, 0xa1, 0x0b, 0x47, 0x2d, 0x04, 0xfd, 0xe2, + 0x84, 0x53, 0x58, 0x17, 0x79, 0xe0, 0x03, 0xe6, 0x1b, 0xac, 0x07, 0x04, + 0x96, 0x90, 0x58, 0x56, 0xcd, 0xa1, 0xf5, 0xf9, 0xd4, 0xcf, 0x88, 0xd2, + 0x5e, 0x7e, 0x7d, 0x50, +}; +static const unsigned char kat3843_addinpr2[] = {0}; +static const unsigned char kat3843_retbits[] = { + 0x6c, 0xc7, 0x24, 0xcb, 0xb7, 0xe2, 0xfc, 0x49, 0xcf, 0xaa, 0x31, 0x43, + 0x80, 0x6d, 0x3d, 0xda, 0x2f, 0x82, 0xd4, 0xf7, 0x64, 0x67, 0x7f, 0x8e, + 0xf1, 0x94, 0x7f, 0x32, 0xcc, 0xfc, 0xb0, 0xc5, 0x50, 0x48, 0xbb, 0x24, + 0x03, 0xea, 0xd6, 0xf4, 0x86, 0x0b, 0x65, 0xc8, 0x9f, 0x30, 0xbf, 0xf8, + 0x0f, 0xa5, 0x64, 0xc2, 0xd1, 0x21, 0xf9, 0x82, 0x11, 0x48, 0xa3, 0x72, + 0xa4, 0xd9, 0xd1, 0x9c, +}; +static const struct drbg_kat_pr_true kat3843_t = { + 2, kat3843_entropyin, kat3843_nonce, kat3843_persstr, + kat3843_entropyinpr1, kat3843_addinpr1, kat3843_entropyinpr2, + kat3843_addinpr2, kat3843_retbits +}; +static const struct drbg_kat kat3843 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3843_t +}; + +static const unsigned char kat3844_entropyin[] = { + 0x29, 0x87, 0xf9, 0x8a, 0x5e, 0x4f, 0x7e, 0x5b, 0x13, 0xd1, 0x33, 0x9a, + 0x28, 0x4a, 0x03, 0x5b, 0x21, 0x4b, 0x94, 0x15, 0xce, 0x1c, 0x33, 0x38, + 0xf2, 0xcc, 0x56, 0x7d, 0x43, 0x2a, 0x88, 0xbd, 0xeb, 0xa2, 0x5f, 0xc5, + 0xf1, 0x05, 0x3b, 0x80, +}; +static const unsigned char kat3844_nonce[] = {0}; +static const unsigned char kat3844_persstr[] = {0}; +static const unsigned char kat3844_entropyinpr1[] = { + 0x7d, 0xbf, 0x58, 0x1f, 0xf9, 0x54, 0xcb, 0xbe, 0x20, 0xac, 0x91, 0x77, + 0xe9, 0x37, 0xf8, 0x36, 0x78, 0x2c, 0x89, 0x73, 0x17, 0x02, 0xe8, 0x60, + 0x95, 0xae, 0xcc, 0xd3, 0xe4, 0x3f, 0x4d, 0x97, 0x67, 0x31, 0x62, 0xa2, + 0xba, 0x98, 0xeb, 0x19, +}; +static const unsigned char kat3844_addinpr1[] = {0}; +static const unsigned char kat3844_entropyinpr2[] = { + 0x8e, 0xd7, 0x23, 0xe9, 0x0e, 0xc1, 0xfa, 0x99, 0xcd, 0x18, 0xe1, 0xb8, + 0x18, 0x92, 0x75, 0x42, 0xd5, 0x76, 0xd8, 0xfa, 0xcc, 0x3f, 0x83, 0xf4, + 0xed, 0xc6, 0xf7, 0xda, 0x63, 0x96, 0x17, 0xae, 0xe7, 0xd4, 0xe0, 0xf7, + 0x96, 0xee, 0xaf, 0x54, +}; +static const unsigned char kat3844_addinpr2[] = {0}; +static const unsigned char kat3844_retbits[] = { + 0x02, 0x10, 0xb4, 0xcf, 0x9f, 0x63, 0x0d, 0x7f, 0x16, 0xf5, 0x47, 0xa1, + 0xfe, 0x6c, 0xad, 0xcf, 0x36, 0xa7, 0x19, 0x73, 0x26, 0xd0, 0x82, 0x2a, + 0x2a, 0x1a, 0xc6, 0x02, 0xca, 0x4e, 0x9b, 0x98, 0xab, 0xce, 0x55, 0xf0, + 0xd4, 0xde, 0x7a, 0x8a, 0xff, 0xfd, 0x07, 0x04, 0x6d, 0xbb, 0x10, 0x32, + 0xf3, 0x32, 0xe6, 0x43, 0x8c, 0xa2, 0x57, 0x71, 0xee, 0x2a, 0xab, 0x40, + 0x36, 0x5b, 0x86, 0xef, +}; +static const struct drbg_kat_pr_true kat3844_t = { + 3, kat3844_entropyin, kat3844_nonce, kat3844_persstr, + kat3844_entropyinpr1, kat3844_addinpr1, kat3844_entropyinpr2, + kat3844_addinpr2, kat3844_retbits +}; +static const struct drbg_kat kat3844 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3844_t +}; + +static const unsigned char kat3845_entropyin[] = { + 0x54, 0xbb, 0x6a, 0x89, 0x30, 0x50, 0xfd, 0x80, 0xcd, 0x9c, 0x27, 0xcc, + 0xc7, 0x99, 0x62, 0xb4, 0x54, 0x1c, 0x8e, 0x8f, 0x7f, 0xde, 0x37, 0x7b, + 0x82, 0x8c, 0xac, 0x75, 0xf3, 0x66, 0x94, 0x9f, 0x2b, 0xdb, 0x5c, 0x22, + 0xfa, 0x1c, 0x70, 0xff, +}; +static const unsigned char kat3845_nonce[] = {0}; +static const unsigned char kat3845_persstr[] = {0}; +static const unsigned char kat3845_entropyinpr1[] = { + 0x26, 0x05, 0x98, 0x57, 0xb8, 0x63, 0xd9, 0x53, 0x76, 0xc6, 0x32, 0xa7, + 0x50, 0x0e, 0xb9, 0xfc, 0x34, 0xc5, 0x33, 0x52, 0x39, 0x04, 0xee, 0xa4, + 0x2d, 0xa2, 0xe5, 0xeb, 0xfd, 0x5b, 0xac, 0xb6, 0x72, 0xe9, 0x56, 0xf4, + 0x7b, 0x2e, 0x15, 0x6c, +}; +static const unsigned char kat3845_addinpr1[] = {0}; +static const unsigned char kat3845_entropyinpr2[] = { + 0x11, 0x82, 0xff, 0xde, 0x1a, 0x81, 0x06, 0x8a, 0xba, 0x30, 0xae, 0x1f, + 0x37, 0xc5, 0x89, 0x66, 0xe7, 0xf0, 0xe5, 0xf1, 0xda, 0x4f, 0xeb, 0x2c, + 0x8d, 0xb6, 0xf8, 0x43, 0x2d, 0x89, 0x60, 0x4e, 0x30, 0x4c, 0x66, 0x67, + 0xbd, 0x7a, 0xbc, 0xf7, +}; +static const unsigned char kat3845_addinpr2[] = {0}; +static const unsigned char kat3845_retbits[] = { + 0x24, 0x10, 0x7f, 0x45, 0xcc, 0xeb, 0x4c, 0xcc, 0x63, 0x2d, 0xd5, 0xc0, + 0x32, 0x57, 0xf9, 0x7b, 0x5e, 0x53, 0xd8, 0x40, 0xaf, 0x88, 0xb7, 0x8d, + 0x98, 0x0f, 0x88, 0xfc, 0x99, 0xe7, 0xfe, 0xfd, 0x92, 0xea, 0x23, 0x3c, + 0x67, 0xdf, 0xa7, 0x93, 0x21, 0x50, 0xd7, 0x6f, 0xdd, 0xb8, 0xb0, 0xc9, + 0x7a, 0x2c, 0x7c, 0xcc, 0x13, 0x4b, 0xda, 0x81, 0x5c, 0x0f, 0x99, 0xd0, + 0x68, 0x2d, 0x6c, 0x0e, +}; +static const struct drbg_kat_pr_true kat3845_t = { + 4, kat3845_entropyin, kat3845_nonce, kat3845_persstr, + kat3845_entropyinpr1, kat3845_addinpr1, kat3845_entropyinpr2, + kat3845_addinpr2, kat3845_retbits +}; +static const struct drbg_kat kat3845 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3845_t +}; + +static const unsigned char kat3846_entropyin[] = { + 0xcc, 0x25, 0x88, 0x0b, 0x50, 0x3c, 0xfa, 0x9c, 0x15, 0x64, 0x73, 0xde, + 0xc1, 0xb7, 0x54, 0xd6, 0x21, 0xdd, 0x43, 0x49, 0x8b, 0x38, 0xca, 0x43, + 0x6f, 0xef, 0x6e, 0x74, 0xe0, 0xc4, 0x92, 0x1b, 0xb7, 0x88, 0x7d, 0x91, + 0xe5, 0xba, 0x7e, 0x4b, +}; +static const unsigned char kat3846_nonce[] = {0}; +static const unsigned char kat3846_persstr[] = {0}; +static const unsigned char kat3846_entropyinpr1[] = { + 0x7c, 0x19, 0xe9, 0xa1, 0xbf, 0x95, 0x1f, 0xd9, 0x71, 0x6e, 0x23, 0xaf, + 0xce, 0xdc, 0x5e, 0x4d, 0xca, 0xb9, 0xa3, 0x3a, 0xcc, 0xa4, 0x06, 0x02, + 0x0c, 0x99, 0xfe, 0x1a, 0xa2, 0x4d, 0x7f, 0xc8, 0x45, 0xa5, 0x53, 0x35, + 0x84, 0x1d, 0x03, 0x21, +}; +static const unsigned char kat3846_addinpr1[] = {0}; +static const unsigned char kat3846_entropyinpr2[] = { + 0x83, 0x4b, 0x7b, 0x64, 0xb1, 0x3f, 0x53, 0xe1, 0x58, 0x2c, 0x83, 0x7c, + 0x9a, 0x1f, 0x50, 0x5a, 0x34, 0x11, 0x53, 0x6d, 0x35, 0x45, 0x1f, 0xa9, + 0x7d, 0x03, 0xb9, 0x8f, 0x8b, 0x1f, 0x91, 0x49, 0xc0, 0x61, 0xa1, 0xe1, + 0x93, 0x3a, 0x79, 0x74, +}; +static const unsigned char kat3846_addinpr2[] = {0}; +static const unsigned char kat3846_retbits[] = { + 0xd5, 0x3e, 0xe3, 0x3d, 0x9e, 0x3d, 0xf7, 0x8d, 0x0f, 0x61, 0xe6, 0x53, + 0x98, 0x94, 0xa7, 0x9c, 0xd4, 0x06, 0xac, 0xd5, 0x2f, 0xb6, 0x7d, 0xff, + 0xb1, 0x0b, 0xf4, 0x6f, 0x12, 0x3e, 0xd1, 0xdb, 0xe0, 0x73, 0xf1, 0x96, + 0x01, 0xeb, 0x97, 0x2f, 0x6f, 0x4a, 0x7d, 0x25, 0x1d, 0x0c, 0x50, 0x90, + 0x01, 0x37, 0xfb, 0xc8, 0xf8, 0xb8, 0x23, 0xe4, 0x97, 0x0f, 0x08, 0xe5, + 0x12, 0x26, 0x8c, 0x84, +}; +static const struct drbg_kat_pr_true kat3846_t = { + 5, kat3846_entropyin, kat3846_nonce, kat3846_persstr, + kat3846_entropyinpr1, kat3846_addinpr1, kat3846_entropyinpr2, + kat3846_addinpr2, kat3846_retbits +}; +static const struct drbg_kat kat3846 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3846_t +}; + +static const unsigned char kat3847_entropyin[] = { + 0xc8, 0x3b, 0xc4, 0x72, 0x01, 0xe5, 0xc7, 0xdd, 0x13, 0xc2, 0x97, 0x9c, + 0x1a, 0x07, 0x9e, 0x3f, 0xae, 0x7e, 0x18, 0x85, 0xbc, 0x1b, 0xcc, 0x87, + 0x10, 0xc7, 0xaa, 0xe1, 0x70, 0x36, 0x28, 0x93, 0xad, 0x73, 0xf6, 0x06, + 0x8d, 0xbc, 0x22, 0xa8, +}; +static const unsigned char kat3847_nonce[] = {0}; +static const unsigned char kat3847_persstr[] = {0}; +static const unsigned char kat3847_entropyinpr1[] = { + 0xf6, 0xe4, 0xa4, 0xc0, 0xfe, 0x62, 0x9b, 0x0a, 0x14, 0x53, 0x60, 0x60, + 0x93, 0xb3, 0xce, 0xf8, 0xf1, 0x56, 0x7f, 0x03, 0x98, 0xcc, 0x76, 0x47, + 0xd5, 0x1c, 0x6c, 0xd9, 0x69, 0x40, 0x12, 0x42, 0x8a, 0x3c, 0x01, 0xd1, + 0x8c, 0xd0, 0x75, 0x55, +}; +static const unsigned char kat3847_addinpr1[] = {0}; +static const unsigned char kat3847_entropyinpr2[] = { + 0xf5, 0x13, 0x1d, 0xad, 0x5e, 0xe9, 0x47, 0xa9, 0x0e, 0xa1, 0xcc, 0x85, + 0x1b, 0x30, 0xd6, 0xd2, 0x54, 0x93, 0x2b, 0x9d, 0xc0, 0x30, 0x1a, 0x3b, + 0xf5, 0xc6, 0x08, 0x39, 0x37, 0x6f, 0x42, 0x69, 0x93, 0x3e, 0xd6, 0xd2, + 0xaa, 0x48, 0x97, 0x2c, +}; +static const unsigned char kat3847_addinpr2[] = {0}; +static const unsigned char kat3847_retbits[] = { + 0x69, 0xd2, 0x65, 0x3e, 0xb9, 0x75, 0x23, 0xb2, 0xe7, 0xaf, 0x10, 0xbf, + 0x28, 0xaf, 0x32, 0xd2, 0x56, 0xf7, 0x5e, 0x21, 0x98, 0x13, 0x99, 0x7a, + 0xb2, 0xfe, 0xff, 0xdb, 0xd4, 0x67, 0xd6, 0xbb, 0xf6, 0xd0, 0xd2, 0x6d, + 0xd5, 0x8a, 0x32, 0x7b, 0xd7, 0x52, 0xa8, 0x39, 0x7b, 0xd1, 0x14, 0x01, + 0xaf, 0xe1, 0xd8, 0x48, 0x99, 0x95, 0x30, 0x3c, 0x6f, 0xae, 0xac, 0x8e, + 0x25, 0xe5, 0x6b, 0x34, +}; +static const struct drbg_kat_pr_true kat3847_t = { + 6, kat3847_entropyin, kat3847_nonce, kat3847_persstr, + kat3847_entropyinpr1, kat3847_addinpr1, kat3847_entropyinpr2, + kat3847_addinpr2, kat3847_retbits +}; +static const struct drbg_kat kat3847 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3847_t +}; + +static const unsigned char kat3848_entropyin[] = { + 0x2a, 0xe8, 0x06, 0xf7, 0x07, 0x6d, 0x24, 0xdc, 0x26, 0x32, 0x19, 0xcb, + 0xe1, 0xc1, 0x1a, 0x30, 0x7c, 0x4a, 0x80, 0x27, 0xb9, 0x39, 0xe4, 0xdf, + 0xfa, 0x37, 0xd5, 0xfe, 0x21, 0x54, 0xca, 0xdb, 0xb9, 0x2a, 0x12, 0x0f, + 0x92, 0xe7, 0x88, 0xb0, +}; +static const unsigned char kat3848_nonce[] = {0}; +static const unsigned char kat3848_persstr[] = {0}; +static const unsigned char kat3848_entropyinpr1[] = { + 0x5e, 0xb7, 0xa5, 0x6b, 0x17, 0x56, 0x7a, 0xc6, 0xab, 0x8e, 0xa3, 0x9b, + 0xff, 0x4e, 0x33, 0xd7, 0x54, 0x4f, 0x29, 0x30, 0x57, 0xed, 0xf6, 0xc0, + 0xbc, 0x81, 0x05, 0x70, 0x68, 0x0e, 0x0c, 0xc4, 0xd6, 0xab, 0x14, 0xf0, + 0x18, 0x94, 0xe4, 0xb4, +}; +static const unsigned char kat3848_addinpr1[] = {0}; +static const unsigned char kat3848_entropyinpr2[] = { + 0x21, 0xb0, 0x6d, 0x62, 0x2e, 0x41, 0x69, 0xbc, 0x9c, 0x64, 0x91, 0x98, + 0x05, 0x28, 0x48, 0xff, 0xc5, 0x55, 0x2a, 0x88, 0xb8, 0x2a, 0xb1, 0x26, + 0x5a, 0x74, 0x98, 0xf1, 0x61, 0x04, 0x67, 0x9f, 0x8f, 0x43, 0xed, 0xb1, + 0x54, 0x67, 0xf2, 0x7e, +}; +static const unsigned char kat3848_addinpr2[] = {0}; +static const unsigned char kat3848_retbits[] = { + 0xa6, 0x0e, 0xff, 0x44, 0x25, 0xcd, 0x4e, 0x12, 0x0e, 0x9e, 0xef, 0x68, + 0x7b, 0x86, 0xf0, 0xca, 0x92, 0x32, 0xf7, 0xfb, 0x9d, 0x31, 0x62, 0x6e, + 0x2c, 0x3c, 0x84, 0x6a, 0x1f, 0x76, 0x9a, 0xaf, 0x39, 0x7a, 0x42, 0x70, + 0x10, 0x98, 0xdc, 0x17, 0xc5, 0x56, 0xfa, 0x6f, 0xd2, 0xb3, 0x9c, 0x67, + 0x3e, 0x0c, 0x54, 0xf1, 0x5b, 0x31, 0xfd, 0xb0, 0x1d, 0x03, 0x20, 0x0d, + 0xd1, 0x4a, 0x04, 0x74, +}; +static const struct drbg_kat_pr_true kat3848_t = { + 7, kat3848_entropyin, kat3848_nonce, kat3848_persstr, + kat3848_entropyinpr1, kat3848_addinpr1, kat3848_entropyinpr2, + kat3848_addinpr2, kat3848_retbits +}; +static const struct drbg_kat kat3848 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3848_t +}; + +static const unsigned char kat3849_entropyin[] = { + 0xd0, 0x5a, 0xaa, 0x55, 0x24, 0x41, 0xde, 0xc4, 0xe4, 0xbf, 0x4b, 0xa4, + 0x49, 0x7a, 0x7d, 0x6b, 0xa7, 0x3a, 0x20, 0x36, 0xcc, 0x9e, 0x09, 0xe3, + 0xef, 0x90, 0xe6, 0x37, 0x9b, 0x91, 0x5d, 0x3b, 0x05, 0x01, 0xcb, 0x38, + 0x39, 0x9d, 0x5f, 0x67, +}; +static const unsigned char kat3849_nonce[] = {0}; +static const unsigned char kat3849_persstr[] = {0}; +static const unsigned char kat3849_entropyinpr1[] = { + 0x61, 0x92, 0x36, 0xc2, 0xaa, 0xa0, 0x0a, 0xf0, 0x92, 0x4f, 0xa5, 0x62, + 0xce, 0x08, 0xac, 0x9b, 0xe4, 0x31, 0x05, 0xb8, 0x7a, 0x16, 0xd1, 0x18, + 0x51, 0xcb, 0xac, 0xce, 0x30, 0x47, 0x94, 0xf5, 0xa0, 0x08, 0x4f, 0xbd, + 0x6b, 0x85, 0x5a, 0xaa, +}; +static const unsigned char kat3849_addinpr1[] = {0}; +static const unsigned char kat3849_entropyinpr2[] = { + 0xbf, 0x4b, 0x47, 0xd9, 0x9b, 0x8a, 0xb3, 0x1d, 0xfd, 0x88, 0x73, 0x83, + 0x1d, 0x7d, 0x28, 0xac, 0x03, 0xb1, 0x5b, 0xf6, 0xec, 0x50, 0x8d, 0x9d, + 0xb4, 0xf3, 0x96, 0x1b, 0xbd, 0xbe, 0x49, 0x40, 0x6b, 0x13, 0x62, 0xf6, + 0x3c, 0x55, 0x53, 0x06, +}; +static const unsigned char kat3849_addinpr2[] = {0}; +static const unsigned char kat3849_retbits[] = { + 0x52, 0x65, 0xe9, 0x9c, 0xda, 0x2e, 0x44, 0x9c, 0xfe, 0x60, 0xfc, 0xe0, + 0x77, 0xa1, 0x56, 0xad, 0xad, 0x31, 0x60, 0x2b, 0x73, 0xfb, 0xfc, 0x9a, + 0x94, 0x20, 0xe6, 0x3c, 0x0f, 0xd2, 0x58, 0x0e, 0x1e, 0x4f, 0x5c, 0x0c, + 0x4b, 0x8f, 0x4f, 0xaa, 0x8c, 0x32, 0x99, 0x67, 0xc4, 0xe9, 0x76, 0x1d, + 0x32, 0x82, 0x53, 0x0a, 0xe8, 0x35, 0x81, 0x09, 0xa9, 0xd7, 0x65, 0xf9, + 0x13, 0xaa, 0x52, 0xd9, +}; +static const struct drbg_kat_pr_true kat3849_t = { + 8, kat3849_entropyin, kat3849_nonce, kat3849_persstr, + kat3849_entropyinpr1, kat3849_addinpr1, kat3849_entropyinpr2, + kat3849_addinpr2, kat3849_retbits +}; +static const struct drbg_kat kat3849 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3849_t +}; + +static const unsigned char kat3850_entropyin[] = { + 0x52, 0x16, 0xad, 0x9b, 0xb9, 0x1b, 0xa5, 0x8a, 0x0b, 0x4a, 0xae, 0x30, + 0x79, 0x90, 0x5b, 0xd0, 0xc5, 0xb0, 0x69, 0x89, 0x22, 0xec, 0x13, 0xe4, + 0x9c, 0xcb, 0x20, 0xcc, 0x9b, 0x47, 0x8b, 0xad, 0x87, 0xbd, 0xb5, 0x8d, + 0x2a, 0xdb, 0x7a, 0xd8, +}; +static const unsigned char kat3850_nonce[] = {0}; +static const unsigned char kat3850_persstr[] = {0}; +static const unsigned char kat3850_entropyinpr1[] = { + 0x13, 0xf9, 0x67, 0x5d, 0xf7, 0x35, 0xdb, 0x65, 0x66, 0x98, 0x10, 0x3e, + 0x8a, 0xc4, 0xc7, 0x22, 0x05, 0xca, 0xdf, 0x9b, 0xf5, 0x05, 0xfe, 0xc6, + 0xfc, 0x2f, 0xc3, 0xe3, 0xf3, 0xab, 0xb9, 0xd0, 0xa0, 0x6c, 0x18, 0x35, + 0x9d, 0xae, 0x93, 0x15, +}; +static const unsigned char kat3850_addinpr1[] = {0}; +static const unsigned char kat3850_entropyinpr2[] = { + 0xfd, 0x4a, 0x06, 0xe1, 0x14, 0x93, 0x4a, 0x12, 0xeb, 0x3f, 0x71, 0xe8, + 0xd0, 0x6e, 0x81, 0xb5, 0xa2, 0xdc, 0xbf, 0xf5, 0x8c, 0x79, 0x76, 0x67, + 0x0e, 0xf5, 0xad, 0x28, 0xb7, 0x8c, 0x50, 0x53, 0xbe, 0x81, 0x3c, 0x68, + 0xf7, 0x27, 0xb9, 0x56, +}; +static const unsigned char kat3850_addinpr2[] = {0}; +static const unsigned char kat3850_retbits[] = { + 0x8c, 0x5f, 0x52, 0x12, 0x0d, 0xd0, 0x33, 0xb7, 0x6a, 0xc1, 0x28, 0x3a, + 0x24, 0xe6, 0x7c, 0x24, 0x26, 0xe6, 0xe6, 0x7f, 0xd6, 0xc1, 0x45, 0x79, + 0x1b, 0x0a, 0x26, 0x40, 0x35, 0xc6, 0xe5, 0x76, 0xfe, 0x87, 0x2c, 0xab, + 0x17, 0x1d, 0xe7, 0xae, 0x72, 0x55, 0x2a, 0xb3, 0xef, 0x45, 0x7d, 0xc5, + 0x68, 0xef, 0x16, 0xac, 0xa0, 0x7b, 0x91, 0x70, 0xa4, 0x21, 0xef, 0x9f, + 0x4f, 0x41, 0x60, 0xdc, +}; +static const struct drbg_kat_pr_true kat3850_t = { + 9, kat3850_entropyin, kat3850_nonce, kat3850_persstr, + kat3850_entropyinpr1, kat3850_addinpr1, kat3850_entropyinpr2, + kat3850_addinpr2, kat3850_retbits +}; +static const struct drbg_kat kat3850 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3850_t +}; + +static const unsigned char kat3851_entropyin[] = { + 0xb8, 0x36, 0xe7, 0xa8, 0x0d, 0xd7, 0x13, 0x1a, 0x44, 0x01, 0xcd, 0xd1, + 0xa6, 0xae, 0x1b, 0x29, 0x15, 0xdc, 0xe1, 0x94, 0xdf, 0x81, 0xaa, 0xfc, + 0xef, 0xe5, 0x03, 0x33, 0xa4, 0xba, 0xc8, 0x81, 0xfc, 0xf3, 0x0d, 0x71, + 0xa0, 0x24, 0xbe, 0x38, +}; +static const unsigned char kat3851_nonce[] = {0}; +static const unsigned char kat3851_persstr[] = {0}; +static const unsigned char kat3851_entropyinpr1[] = { + 0xc2, 0xe7, 0x51, 0x17, 0xa2, 0x20, 0x3c, 0xe3, 0x45, 0x61, 0x59, 0x63, + 0x13, 0x2e, 0xdf, 0xf1, 0x8c, 0x17, 0x4e, 0x6d, 0x9e, 0x03, 0x6e, 0xc2, + 0x70, 0x13, 0x4e, 0x5e, 0x41, 0x03, 0xde, 0x86, 0x70, 0x3b, 0x5d, 0x81, + 0xcb, 0x1a, 0xea, 0x88, +}; +static const unsigned char kat3851_addinpr1[] = {0}; +static const unsigned char kat3851_entropyinpr2[] = { + 0xe0, 0xe2, 0x42, 0x01, 0xc1, 0x37, 0x25, 0xaa, 0x76, 0xdd, 0x1e, 0xc4, + 0xd0, 0xcd, 0xcc, 0x30, 0x9b, 0x0c, 0x46, 0xb8, 0x0d, 0x5b, 0xfa, 0x85, + 0x8f, 0xd4, 0xe9, 0x01, 0xd6, 0x40, 0x1a, 0x58, 0x10, 0x5f, 0xbe, 0x43, + 0xea, 0xb7, 0x8a, 0x34, +}; +static const unsigned char kat3851_addinpr2[] = {0}; +static const unsigned char kat3851_retbits[] = { + 0x8a, 0xc9, 0x52, 0xc9, 0x38, 0x8d, 0x91, 0x30, 0x23, 0xa5, 0xde, 0x97, + 0x76, 0xd1, 0xb0, 0x92, 0xc5, 0x40, 0x54, 0x4b, 0x51, 0xf5, 0x84, 0x52, + 0xe4, 0x73, 0x96, 0xac, 0x3a, 0xd3, 0x8e, 0xd7, 0xdd, 0x7b, 0x6a, 0xf8, + 0xa3, 0x6d, 0x01, 0xa2, 0x1b, 0xd3, 0x29, 0xf9, 0xff, 0x85, 0x5e, 0xd1, + 0x5f, 0xb2, 0x7f, 0x46, 0xf9, 0x98, 0xba, 0x97, 0xce, 0x64, 0x4f, 0x79, + 0x99, 0xee, 0x3a, 0x6f, +}; +static const struct drbg_kat_pr_true kat3851_t = { + 10, kat3851_entropyin, kat3851_nonce, kat3851_persstr, + kat3851_entropyinpr1, kat3851_addinpr1, kat3851_entropyinpr2, + kat3851_addinpr2, kat3851_retbits +}; +static const struct drbg_kat kat3851 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3851_t +}; + +static const unsigned char kat3852_entropyin[] = { + 0x40, 0x61, 0xc4, 0xff, 0x84, 0x51, 0x73, 0xab, 0x24, 0xec, 0xea, 0x68, + 0xe1, 0x68, 0xe6, 0x91, 0x1d, 0x36, 0x46, 0xfe, 0x77, 0x86, 0x39, 0x56, + 0xc4, 0xf0, 0xff, 0xbd, 0x2c, 0x46, 0x3a, 0x33, 0x25, 0xe2, 0xf2, 0x62, + 0x01, 0xff, 0x53, 0xf2, +}; +static const unsigned char kat3852_nonce[] = {0}; +static const unsigned char kat3852_persstr[] = {0}; +static const unsigned char kat3852_entropyinpr1[] = { + 0x13, 0xe1, 0xc0, 0x3d, 0x5c, 0xd4, 0x89, 0xa5, 0xd9, 0x5a, 0x45, 0x1b, + 0x31, 0x88, 0xd6, 0xaf, 0x9b, 0xae, 0x55, 0x62, 0xfb, 0x86, 0x45, 0x98, + 0xb7, 0xb9, 0x33, 0x15, 0xa1, 0x58, 0xa7, 0x69, 0x08, 0x00, 0x81, 0x0d, + 0x1c, 0xd8, 0x05, 0x2d, +}; +static const unsigned char kat3852_addinpr1[] = {0}; +static const unsigned char kat3852_entropyinpr2[] = { + 0xff, 0x6e, 0x2e, 0xce, 0xd8, 0xfc, 0x93, 0xdb, 0xc0, 0x3f, 0x76, 0x7b, + 0xb2, 0x23, 0xfd, 0x31, 0x56, 0xb1, 0x1a, 0xf1, 0x89, 0xba, 0xc1, 0x22, + 0xbc, 0x7c, 0xff, 0x4e, 0x3f, 0x62, 0x23, 0xe8, 0x0b, 0xd5, 0x8a, 0xea, + 0x90, 0x72, 0x0c, 0x99, +}; +static const unsigned char kat3852_addinpr2[] = {0}; +static const unsigned char kat3852_retbits[] = { + 0xff, 0x34, 0x5f, 0xf5, 0xeb, 0x29, 0x46, 0x46, 0x2f, 0x2f, 0x16, 0x93, + 0x40, 0x48, 0xd1, 0x28, 0xc7, 0x21, 0x06, 0xd4, 0x93, 0xbe, 0xd0, 0x8c, + 0xaa, 0x92, 0xf7, 0xf2, 0xb7, 0x62, 0x8e, 0x7a, 0xeb, 0x99, 0xdc, 0x16, + 0xe4, 0xeb, 0xc8, 0x50, 0xc7, 0x36, 0x1d, 0xe7, 0x5b, 0xdb, 0x63, 0x3f, + 0x3a, 0xce, 0xcf, 0x1f, 0xa5, 0x33, 0x5b, 0xf0, 0x6e, 0x8c, 0x7e, 0x5c, + 0x61, 0x4f, 0x44, 0x04, +}; +static const struct drbg_kat_pr_true kat3852_t = { + 11, kat3852_entropyin, kat3852_nonce, kat3852_persstr, + kat3852_entropyinpr1, kat3852_addinpr1, kat3852_entropyinpr2, + kat3852_addinpr2, kat3852_retbits +}; +static const struct drbg_kat kat3852 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3852_t +}; + +static const unsigned char kat3853_entropyin[] = { + 0x8f, 0xbe, 0xc7, 0x84, 0xb4, 0xc0, 0xa4, 0x7c, 0x48, 0x5c, 0x13, 0x0c, + 0x8b, 0xa4, 0x65, 0x73, 0x07, 0x4d, 0x36, 0x03, 0x61, 0xe3, 0x05, 0x1c, + 0x22, 0x6a, 0x3e, 0xe3, 0xe6, 0x7b, 0xab, 0x39, 0x00, 0x25, 0x7c, 0xba, + 0xec, 0x37, 0x6a, 0x6f, +}; +static const unsigned char kat3853_nonce[] = {0}; +static const unsigned char kat3853_persstr[] = {0}; +static const unsigned char kat3853_entropyinpr1[] = { + 0x62, 0x2c, 0xcb, 0xb1, 0x29, 0xaf, 0xcf, 0xca, 0x01, 0xc3, 0x63, 0xe4, + 0xa7, 0x45, 0x2f, 0x10, 0xfd, 0x04, 0x4e, 0xdc, 0x6e, 0x6d, 0x47, 0xed, + 0x71, 0x8d, 0x1e, 0x3e, 0xba, 0x48, 0x6c, 0xa6, 0xef, 0x09, 0x53, 0x96, + 0x03, 0x65, 0xbb, 0xd4, +}; +static const unsigned char kat3853_addinpr1[] = {0}; +static const unsigned char kat3853_entropyinpr2[] = { + 0xef, 0x63, 0xd2, 0xbb, 0xc5, 0x0a, 0x60, 0x45, 0x60, 0x03, 0xaa, 0xa3, + 0xb5, 0xca, 0x72, 0x5e, 0x9b, 0x0b, 0xa1, 0x1f, 0xbf, 0x37, 0xdb, 0x06, + 0xd8, 0xc6, 0x6f, 0x2a, 0x88, 0xd9, 0x1e, 0x3b, 0xb2, 0x18, 0x09, 0xe0, + 0xfc, 0x03, 0x48, 0x06, +}; +static const unsigned char kat3853_addinpr2[] = {0}; +static const unsigned char kat3853_retbits[] = { + 0x14, 0x28, 0x64, 0x62, 0x59, 0x39, 0x1e, 0xc1, 0xfb, 0x5e, 0xe0, 0xdf, + 0x14, 0x0f, 0x56, 0x6d, 0x69, 0x3b, 0xa2, 0xd1, 0x7b, 0xe2, 0x8c, 0x15, + 0xb5, 0x4f, 0x56, 0x2b, 0xcf, 0x6c, 0xcf, 0x79, 0x6e, 0x55, 0x92, 0xdb, + 0x96, 0x56, 0xd1, 0x89, 0xe2, 0x8c, 0x02, 0x09, 0x2c, 0x40, 0xc1, 0x40, + 0x9f, 0x7f, 0x6d, 0x7a, 0x6e, 0x6a, 0xdd, 0x4c, 0xa7, 0x98, 0x33, 0xe7, + 0xdd, 0x03, 0x79, 0x24, +}; +static const struct drbg_kat_pr_true kat3853_t = { + 12, kat3853_entropyin, kat3853_nonce, kat3853_persstr, + kat3853_entropyinpr1, kat3853_addinpr1, kat3853_entropyinpr2, + kat3853_addinpr2, kat3853_retbits +}; +static const struct drbg_kat kat3853 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3853_t +}; + +static const unsigned char kat3854_entropyin[] = { + 0x46, 0x16, 0x9c, 0xd3, 0xe2, 0xaf, 0xf2, 0x70, 0x8f, 0x52, 0x70, 0x8a, + 0x30, 0x43, 0xbe, 0x49, 0x6d, 0x35, 0x40, 0x54, 0x14, 0x3f, 0x80, 0x9b, + 0xcd, 0x48, 0x0f, 0xda, 0x82, 0xff, 0xcc, 0xb8, 0x90, 0xfc, 0x9f, 0x46, + 0xf6, 0x95, 0xc0, 0x10, +}; +static const unsigned char kat3854_nonce[] = {0}; +static const unsigned char kat3854_persstr[] = {0}; +static const unsigned char kat3854_entropyinpr1[] = { + 0xce, 0x23, 0x33, 0x68, 0x5a, 0x03, 0x84, 0x5e, 0x09, 0x7f, 0x48, 0x78, + 0xc2, 0xef, 0xd5, 0xd4, 0xcf, 0xf1, 0x02, 0xd0, 0x89, 0x5b, 0x64, 0x76, + 0x51, 0xe8, 0xbf, 0x30, 0x1e, 0x5b, 0xe5, 0xe8, 0xce, 0x6c, 0xa0, 0x59, + 0xd6, 0x49, 0x07, 0xcb, +}; +static const unsigned char kat3854_addinpr1[] = {0}; +static const unsigned char kat3854_entropyinpr2[] = { + 0xc1, 0x0d, 0x13, 0xc1, 0xb1, 0xe1, 0x09, 0x00, 0x44, 0x8b, 0x54, 0xd5, + 0x16, 0x4a, 0xae, 0xed, 0xaa, 0x1e, 0xcc, 0x12, 0x73, 0x5c, 0x51, 0x10, + 0xf4, 0x31, 0x9e, 0x2c, 0x71, 0xb5, 0xcc, 0xa6, 0xee, 0x39, 0xd7, 0x02, + 0xc1, 0x4d, 0xae, 0x05, +}; +static const unsigned char kat3854_addinpr2[] = {0}; +static const unsigned char kat3854_retbits[] = { + 0x9a, 0x26, 0x15, 0xb3, 0x80, 0x2a, 0x5c, 0x61, 0xe3, 0xe8, 0x53, 0x16, + 0x06, 0x68, 0x00, 0xd5, 0x21, 0x34, 0x73, 0xef, 0x52, 0x27, 0x48, 0xfb, + 0x92, 0x03, 0x2e, 0x18, 0xab, 0x59, 0x04, 0x87, 0x04, 0x9b, 0x2a, 0x72, + 0xcf, 0x4e, 0x5f, 0x2b, 0x53, 0xd4, 0xf2, 0x8f, 0x4b, 0x80, 0xd0, 0xcf, + 0x75, 0x5e, 0x54, 0x98, 0xfb, 0x0f, 0xda, 0xaf, 0x57, 0x43, 0xa2, 0xb3, + 0xbd, 0x40, 0x88, 0x97, +}; +static const struct drbg_kat_pr_true kat3854_t = { + 13, kat3854_entropyin, kat3854_nonce, kat3854_persstr, + kat3854_entropyinpr1, kat3854_addinpr1, kat3854_entropyinpr2, + kat3854_addinpr2, kat3854_retbits +}; +static const struct drbg_kat kat3854 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3854_t +}; + +static const unsigned char kat3855_entropyin[] = { + 0xfb, 0x66, 0xc5, 0x7e, 0xd5, 0x84, 0x9f, 0xa1, 0x13, 0xd9, 0xfd, 0xf0, + 0x50, 0xcc, 0x17, 0xcd, 0x26, 0x64, 0xb0, 0x35, 0x94, 0xcd, 0x6f, 0xfd, + 0xd8, 0x9d, 0x00, 0x86, 0xbe, 0x1c, 0x10, 0x47, 0x5a, 0x3c, 0x66, 0x2a, + 0x56, 0xbf, 0x31, 0x24, +}; +static const unsigned char kat3855_nonce[] = {0}; +static const unsigned char kat3855_persstr[] = {0}; +static const unsigned char kat3855_entropyinpr1[] = { + 0xdd, 0xcd, 0x35, 0x39, 0x46, 0x81, 0xd6, 0xf0, 0x17, 0x0a, 0xa6, 0xbd, + 0x89, 0x32, 0xb6, 0x02, 0x74, 0x5f, 0x41, 0x11, 0x7e, 0xec, 0xb8, 0xea, + 0x75, 0x2d, 0x85, 0xff, 0x4e, 0xf5, 0x84, 0x49, 0xe6, 0x2b, 0xb0, 0xb1, + 0xb1, 0x88, 0x3e, 0x93, +}; +static const unsigned char kat3855_addinpr1[] = {0}; +static const unsigned char kat3855_entropyinpr2[] = { + 0x09, 0xa5, 0xd5, 0x92, 0x56, 0x16, 0x37, 0x9b, 0x52, 0x21, 0xb3, 0x47, + 0x65, 0x9a, 0xfa, 0x11, 0xda, 0x43, 0x26, 0xb6, 0x30, 0xb5, 0x7f, 0x3b, + 0x78, 0xdb, 0x98, 0x12, 0xe6, 0x67, 0xed, 0x3f, 0xba, 0xd2, 0x5f, 0xcc, + 0xe6, 0x30, 0x74, 0x86, +}; +static const unsigned char kat3855_addinpr2[] = {0}; +static const unsigned char kat3855_retbits[] = { + 0xe0, 0x4e, 0x54, 0x32, 0xf6, 0x71, 0x01, 0x53, 0x50, 0xf0, 0xcc, 0x91, + 0x2f, 0x5e, 0x83, 0xe9, 0x69, 0xe0, 0x05, 0x84, 0xc6, 0x17, 0x8c, 0xc8, + 0x23, 0x94, 0xcf, 0x85, 0xce, 0x3d, 0xee, 0x6c, 0xa8, 0x7b, 0x6c, 0xb0, + 0x2e, 0x27, 0xa2, 0x1e, 0x03, 0xf8, 0x3c, 0x24, 0xc7, 0x61, 0xf5, 0x21, + 0x83, 0x06, 0x45, 0xfe, 0xfd, 0x44, 0x74, 0xc6, 0x34, 0xe1, 0x12, 0x4a, + 0x4d, 0x93, 0xda, 0x30, +}; +static const struct drbg_kat_pr_true kat3855_t = { + 14, kat3855_entropyin, kat3855_nonce, kat3855_persstr, + kat3855_entropyinpr1, kat3855_addinpr1, kat3855_entropyinpr2, + kat3855_addinpr2, kat3855_retbits +}; +static const struct drbg_kat kat3855 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3855_t +}; + +static const unsigned char kat3856_entropyin[] = { + 0x4b, 0xe5, 0xaf, 0xd0, 0xd9, 0x85, 0x3b, 0xb3, 0x19, 0x9b, 0xff, 0xb6, + 0x51, 0x21, 0x1e, 0x40, 0x20, 0xaf, 0xe4, 0xc2, 0x7d, 0xd9, 0x73, 0x49, + 0xbe, 0x9d, 0x21, 0xe2, 0x60, 0xc2, 0xc4, 0xcb, 0x74, 0x01, 0x4c, 0x4f, + 0x96, 0x84, 0xec, 0xab, +}; +static const unsigned char kat3856_nonce[] = {0}; +static const unsigned char kat3856_persstr[] = {0}; +static const unsigned char kat3856_entropyinpr1[] = { + 0x26, 0xaf, 0x31, 0xf4, 0x5e, 0xed, 0x02, 0x0c, 0xa9, 0x14, 0x6d, 0x15, + 0xd7, 0x2e, 0x5e, 0x5d, 0x81, 0x1a, 0x4c, 0xfe, 0x09, 0x33, 0xc5, 0xeb, + 0xf2, 0xb1, 0xd1, 0xd9, 0x12, 0xcd, 0x4d, 0x33, 0x74, 0xe7, 0x8b, 0x24, + 0xf6, 0xc7, 0xd9, 0xfd, +}; +static const unsigned char kat3856_addinpr1[] = { + 0x22, 0x30, 0x5e, 0x83, 0xb7, 0xc3, 0x62, 0xf9, 0x3a, 0xbe, 0xae, 0x00, + 0x44, 0x45, 0x9b, 0x2b, 0xa9, 0xbc, 0x10, 0x85, 0x26, 0x55, 0x58, 0x81, + 0xdc, 0x9a, 0x9e, 0x7f, 0x74, 0xaf, 0xba, 0xad, 0xe4, 0x49, 0x96, 0xad, + 0x04, 0x78, 0xb0, 0x15, +}; +static const unsigned char kat3856_entropyinpr2[] = { + 0xbb, 0x39, 0xf2, 0x54, 0x81, 0xe8, 0xde, 0x9f, 0xfd, 0x54, 0x02, 0x83, + 0xac, 0x67, 0x47, 0x9a, 0xae, 0x1d, 0x9c, 0xf6, 0x14, 0x31, 0x5d, 0xb7, + 0xd8, 0xec, 0x64, 0xaf, 0xa9, 0xa8, 0x41, 0xca, 0x93, 0x8c, 0x92, 0x89, + 0x6d, 0x8e, 0x84, 0x24, +}; +static const unsigned char kat3856_addinpr2[] = { + 0x58, 0x71, 0x96, 0xfa, 0x6d, 0x13, 0xa8, 0x50, 0x06, 0xe2, 0x58, 0xcf, + 0xef, 0x4b, 0xce, 0x56, 0xe9, 0x16, 0xc6, 0x52, 0x12, 0x5f, 0xb7, 0x9f, + 0xfc, 0x8a, 0xf3, 0x4e, 0x0f, 0x2b, 0x7c, 0x35, 0x7c, 0x1d, 0x61, 0xfd, + 0xa6, 0xf5, 0xe3, 0xfa, +}; +static const unsigned char kat3856_retbits[] = { + 0xa4, 0xb1, 0xad, 0xd2, 0x4b, 0xd7, 0x83, 0x66, 0xd7, 0x71, 0x25, 0xec, + 0x10, 0x0b, 0xb3, 0xc4, 0x0d, 0xd1, 0xae, 0x1a, 0x0e, 0xe8, 0xe0, 0x26, + 0x54, 0x14, 0x62, 0x24, 0x3e, 0x5d, 0x2d, 0xb2, 0xf1, 0xa4, 0x7a, 0xff, + 0xbd, 0xd3, 0x64, 0x36, 0x03, 0x59, 0xdb, 0xb5, 0xe6, 0xee, 0xb5, 0x25, + 0xd7, 0x3a, 0x43, 0xa4, 0x75, 0x31, 0xc0, 0x4c, 0x03, 0x32, 0x53, 0x52, + 0xc6, 0xf2, 0x50, 0x84, +}; +static const struct drbg_kat_pr_true kat3856_t = { + 0, kat3856_entropyin, kat3856_nonce, kat3856_persstr, + kat3856_entropyinpr1, kat3856_addinpr1, kat3856_entropyinpr2, + kat3856_addinpr2, kat3856_retbits +}; +static const struct drbg_kat kat3856 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3856_t +}; + +static const unsigned char kat3857_entropyin[] = { + 0x2f, 0xe7, 0x11, 0x89, 0x1c, 0xe5, 0xa9, 0x1f, 0xa8, 0x6a, 0x33, 0x9a, + 0xf8, 0x6c, 0x81, 0xc1, 0xb1, 0xf2, 0x73, 0xd1, 0xe3, 0xb1, 0x10, 0xb9, + 0x2b, 0x60, 0xe7, 0xc6, 0xdd, 0xa1, 0x26, 0x88, 0x31, 0xb6, 0xd4, 0x4b, + 0x73, 0x3f, 0x1b, 0x24, +}; +static const unsigned char kat3857_nonce[] = {0}; +static const unsigned char kat3857_persstr[] = {0}; +static const unsigned char kat3857_entropyinpr1[] = { + 0x22, 0x07, 0x1b, 0xa3, 0x19, 0xfe, 0x0e, 0xe8, 0x48, 0x1e, 0xa6, 0x58, + 0x17, 0x87, 0xd8, 0x38, 0x84, 0xb8, 0x89, 0x6d, 0x30, 0xad, 0xee, 0x0f, + 0xa1, 0xde, 0x4d, 0x8c, 0x1e, 0xfa, 0xe4, 0x90, 0xeb, 0xe2, 0xb6, 0xd6, + 0xc3, 0xce, 0x42, 0x38, +}; +static const unsigned char kat3857_addinpr1[] = { + 0x8c, 0x4d, 0xeb, 0x80, 0xbe, 0x4e, 0x03, 0x68, 0x11, 0x9b, 0x1e, 0x1b, + 0x65, 0xe7, 0xd5, 0xa9, 0x32, 0x40, 0x2e, 0x3d, 0xf8, 0xba, 0x07, 0x2e, + 0x6f, 0x68, 0x76, 0xd0, 0xa5, 0x7b, 0x13, 0xd9, 0x8f, 0x56, 0x3e, 0x26, + 0xbd, 0x90, 0x6b, 0xeb, +}; +static const unsigned char kat3857_entropyinpr2[] = { + 0x89, 0xa2, 0xce, 0x7c, 0x80, 0xb3, 0x9b, 0x6a, 0xc4, 0x61, 0xb9, 0xc7, + 0x3f, 0xc6, 0x3a, 0x03, 0x92, 0x25, 0xa2, 0xcd, 0x16, 0xc8, 0x1a, 0x25, + 0xdd, 0x6d, 0x69, 0x28, 0x11, 0xf8, 0x7c, 0xe6, 0x4f, 0xe9, 0x23, 0x11, + 0xfe, 0xbb, 0xa8, 0x76, +}; +static const unsigned char kat3857_addinpr2[] = { + 0x94, 0x84, 0xe4, 0x30, 0x3a, 0x48, 0x81, 0x4b, 0x1d, 0x44, 0xd4, 0xff, + 0x50, 0xc2, 0x2e, 0xe1, 0xba, 0x15, 0x94, 0xa5, 0xf7, 0xd0, 0x7b, 0x9f, + 0xc7, 0xbb, 0xea, 0xba, 0xe0, 0xa1, 0x31, 0xe2, 0xa4, 0x78, 0x18, 0x63, + 0xce, 0x12, 0xc7, 0x5e, +}; +static const unsigned char kat3857_retbits[] = { + 0x96, 0xb2, 0x8f, 0x06, 0x77, 0xf2, 0x6b, 0xcc, 0x65, 0x3d, 0xf2, 0xbc, + 0x66, 0x0d, 0x69, 0xca, 0x33, 0x5d, 0x2c, 0x8f, 0x4e, 0x8d, 0x15, 0x1d, + 0xa3, 0x59, 0x66, 0xd1, 0xae, 0xf2, 0x94, 0xa5, 0xc3, 0x42, 0xec, 0x68, + 0xdb, 0xc3, 0x29, 0x64, 0x2f, 0x80, 0x98, 0xf3, 0x88, 0x09, 0x40, 0xa5, + 0x83, 0x4c, 0xa6, 0x44, 0x0c, 0x77, 0x56, 0x15, 0x53, 0xaf, 0xc5, 0xc1, + 0x5a, 0xd2, 0xcd, 0x1a, +}; +static const struct drbg_kat_pr_true kat3857_t = { + 1, kat3857_entropyin, kat3857_nonce, kat3857_persstr, + kat3857_entropyinpr1, kat3857_addinpr1, kat3857_entropyinpr2, + kat3857_addinpr2, kat3857_retbits +}; +static const struct drbg_kat kat3857 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3857_t +}; + +static const unsigned char kat3858_entropyin[] = { + 0x67, 0x58, 0xf1, 0xb9, 0x60, 0x95, 0x12, 0xf8, 0xd2, 0xb0, 0xc3, 0x47, + 0x3e, 0x74, 0x66, 0x7e, 0x1f, 0x15, 0x6f, 0x56, 0xe2, 0xe4, 0x4c, 0x35, + 0x76, 0xdb, 0x0f, 0xe0, 0xaa, 0xd5, 0x64, 0xb8, 0x0d, 0x44, 0x7b, 0x27, + 0xd2, 0x3d, 0x66, 0x45, +}; +static const unsigned char kat3858_nonce[] = {0}; +static const unsigned char kat3858_persstr[] = {0}; +static const unsigned char kat3858_entropyinpr1[] = { + 0x1e, 0x7e, 0x98, 0x65, 0x70, 0x35, 0x0b, 0x0e, 0x34, 0xe7, 0x70, 0x4e, + 0xa3, 0x2b, 0xe0, 0xf9, 0xdb, 0x9e, 0x17, 0xf1, 0x1b, 0x60, 0x83, 0x20, + 0x45, 0xc1, 0x78, 0x27, 0x07, 0x53, 0x48, 0x7e, 0xe3, 0xcb, 0xb2, 0x04, + 0x6c, 0xea, 0x39, 0x94, +}; +static const unsigned char kat3858_addinpr1[] = { + 0x96, 0xca, 0xbf, 0x90, 0xdc, 0xdc, 0xff, 0xa4, 0x17, 0x0e, 0x91, 0x3e, + 0x32, 0x98, 0x01, 0xf8, 0x36, 0xb4, 0xad, 0x11, 0x8a, 0x56, 0x56, 0xfa, + 0x70, 0xd6, 0xf4, 0xb4, 0x02, 0x16, 0xec, 0x91, 0xc5, 0x15, 0xba, 0x55, + 0x83, 0x86, 0x3f, 0xb2, +}; +static const unsigned char kat3858_entropyinpr2[] = { + 0xaf, 0x9d, 0x4b, 0xda, 0x67, 0x1f, 0x29, 0x50, 0xb1, 0x0f, 0x83, 0xd9, + 0xb9, 0xd6, 0x88, 0x52, 0xc4, 0x2a, 0x09, 0xec, 0x31, 0x90, 0x85, 0x1c, + 0x8e, 0xe5, 0xde, 0x1b, 0xa8, 0x22, 0x49, 0x80, 0xbe, 0x20, 0xc5, 0x0b, + 0xcf, 0xfe, 0xa5, 0x10, +}; +static const unsigned char kat3858_addinpr2[] = { + 0x1b, 0x73, 0x89, 0xef, 0x8b, 0x21, 0x97, 0x08, 0x66, 0x68, 0x21, 0x8e, + 0xc4, 0x23, 0x25, 0x1f, 0x0c, 0xbb, 0x0a, 0x5c, 0x0e, 0x88, 0x78, 0x4b, + 0xb5, 0x05, 0x40, 0x87, 0x01, 0xb9, 0xd5, 0xce, 0xae, 0x82, 0xba, 0xa7, + 0xcf, 0x6a, 0x77, 0xb0, +}; +static const unsigned char kat3858_retbits[] = { + 0x9c, 0x83, 0x5d, 0x99, 0x64, 0x8c, 0x5d, 0xef, 0x0f, 0x5e, 0xd9, 0xd3, + 0xbc, 0x32, 0xae, 0x6c, 0x48, 0x4c, 0xd3, 0x08, 0xa1, 0x7f, 0xac, 0x1b, + 0x12, 0x37, 0x61, 0x7a, 0x17, 0x2f, 0x4b, 0x68, 0x40, 0x21, 0x3f, 0x8d, + 0x79, 0x4e, 0x9f, 0x3d, 0xf0, 0x54, 0x32, 0x91, 0x28, 0xbf, 0x8b, 0x8f, + 0x7b, 0x96, 0xb2, 0x22, 0x46, 0xb5, 0xd8, 0x01, 0x36, 0x0b, 0x38, 0x47, + 0x0e, 0xf2, 0x6d, 0xaf, +}; +static const struct drbg_kat_pr_true kat3858_t = { + 2, kat3858_entropyin, kat3858_nonce, kat3858_persstr, + kat3858_entropyinpr1, kat3858_addinpr1, kat3858_entropyinpr2, + kat3858_addinpr2, kat3858_retbits +}; +static const struct drbg_kat kat3858 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3858_t +}; + +static const unsigned char kat3859_entropyin[] = { + 0x08, 0x13, 0x28, 0x50, 0x39, 0x87, 0xfa, 0xa5, 0x29, 0x7a, 0xb5, 0xa4, + 0xa8, 0x86, 0x5c, 0x73, 0xc2, 0x8f, 0x20, 0xed, 0x00, 0x94, 0xdd, 0xe1, + 0xaf, 0x9a, 0xb8, 0x62, 0x67, 0xf7, 0xf5, 0x38, 0x39, 0xaf, 0xe7, 0x31, + 0x69, 0xab, 0x58, 0x01, +}; +static const unsigned char kat3859_nonce[] = {0}; +static const unsigned char kat3859_persstr[] = {0}; +static const unsigned char kat3859_entropyinpr1[] = { + 0xa0, 0x22, 0x6d, 0xc3, 0x05, 0x71, 0xcd, 0xfb, 0x95, 0xa1, 0x59, 0x9e, + 0xc9, 0x29, 0x85, 0xa0, 0xc5, 0xd8, 0x0b, 0x8e, 0xb4, 0x44, 0x7c, 0x34, + 0xcc, 0x8d, 0xc5, 0x82, 0x80, 0xf8, 0x78, 0x77, 0xc6, 0x50, 0x77, 0xf3, + 0x68, 0x02, 0xff, 0x6d, +}; +static const unsigned char kat3859_addinpr1[] = { + 0x12, 0xba, 0xd7, 0x1a, 0x1b, 0x0b, 0x47, 0x54, 0x2f, 0x19, 0x59, 0xe1, + 0x8c, 0x07, 0xac, 0xa0, 0x12, 0x89, 0xc0, 0x2a, 0x1d, 0x45, 0xd6, 0xf9, + 0xe4, 0xa4, 0x3b, 0x26, 0xaa, 0x2e, 0x29, 0x2c, 0x52, 0x07, 0x94, 0x48, + 0x8d, 0x41, 0x9d, 0x94, +}; +static const unsigned char kat3859_entropyinpr2[] = { + 0x11, 0x35, 0xc4, 0x32, 0x59, 0xef, 0xc5, 0x75, 0xf6, 0xad, 0x0f, 0xe2, + 0x0c, 0xb4, 0x01, 0xc2, 0xc0, 0xac, 0x13, 0xdc, 0x99, 0x78, 0xa6, 0x0f, + 0x32, 0x8f, 0xbb, 0x0c, 0x3e, 0x75, 0x71, 0xf3, 0x60, 0x6b, 0xe0, 0x17, + 0x9c, 0x80, 0xb8, 0x0b, +}; +static const unsigned char kat3859_addinpr2[] = { + 0x64, 0xb6, 0xbb, 0x02, 0xff, 0xb6, 0x0c, 0x4f, 0x57, 0x01, 0x7f, 0x1e, + 0x84, 0x10, 0xd8, 0x7b, 0xf2, 0x42, 0x66, 0x57, 0xce, 0x4a, 0xaf, 0xa5, + 0x85, 0x8d, 0xc3, 0xc8, 0x7b, 0x7a, 0x27, 0xad, 0x86, 0x98, 0x8e, 0x0a, + 0xdc, 0x11, 0xcc, 0x25, +}; +static const unsigned char kat3859_retbits[] = { + 0xc8, 0x0e, 0x87, 0xb9, 0x20, 0xd5, 0xe8, 0xeb, 0x38, 0x45, 0xbf, 0xd9, + 0x13, 0xea, 0x9c, 0xb9, 0x61, 0xff, 0xce, 0xad, 0x1d, 0x76, 0x39, 0xe9, + 0x47, 0x7a, 0x87, 0x6f, 0xa7, 0x48, 0xbf, 0x30, 0x08, 0x4c, 0x33, 0x6d, + 0x85, 0x62, 0x6d, 0x0c, 0x01, 0xa1, 0xd1, 0x17, 0x1a, 0x56, 0xd0, 0x52, + 0x42, 0x2f, 0xbb, 0x81, 0xac, 0x3f, 0x1f, 0xe9, 0x96, 0x91, 0x31, 0xc4, + 0xb9, 0xeb, 0x7e, 0x8d, +}; +static const struct drbg_kat_pr_true kat3859_t = { + 3, kat3859_entropyin, kat3859_nonce, kat3859_persstr, + kat3859_entropyinpr1, kat3859_addinpr1, kat3859_entropyinpr2, + kat3859_addinpr2, kat3859_retbits +}; +static const struct drbg_kat kat3859 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3859_t +}; + +static const unsigned char kat3860_entropyin[] = { + 0x80, 0xd4, 0x0d, 0xd9, 0xe2, 0xe0, 0x02, 0x9c, 0x6d, 0x06, 0x4c, 0xd8, + 0xf0, 0x2b, 0xe2, 0x9f, 0x66, 0x42, 0x4d, 0xda, 0x63, 0xb1, 0xb3, 0x69, + 0xfe, 0x32, 0xd7, 0x01, 0x26, 0x3c, 0xe5, 0x06, 0xba, 0x14, 0x2d, 0xbb, + 0x4d, 0xa1, 0x57, 0x95, +}; +static const unsigned char kat3860_nonce[] = {0}; +static const unsigned char kat3860_persstr[] = {0}; +static const unsigned char kat3860_entropyinpr1[] = { + 0x5f, 0xc1, 0xa8, 0xbf, 0xe2, 0x6b, 0x9f, 0x9c, 0x8a, 0xeb, 0xc6, 0x6c, + 0xc5, 0x6d, 0x15, 0x11, 0x50, 0x00, 0xff, 0x34, 0x10, 0xfd, 0x1a, 0x2b, + 0x9c, 0xff, 0xe4, 0x6b, 0x80, 0xa6, 0x36, 0xfb, 0x9e, 0x4b, 0xd4, 0x3f, + 0xa6, 0xea, 0xf9, 0xcd, +}; +static const unsigned char kat3860_addinpr1[] = { + 0xed, 0x82, 0x80, 0xac, 0xe3, 0x7d, 0x5d, 0x0e, 0x1e, 0x05, 0xdc, 0x01, + 0x24, 0x18, 0x9d, 0xed, 0xf8, 0xe0, 0xa4, 0xfe, 0xd5, 0x8a, 0x51, 0x7c, + 0x98, 0x4f, 0x3c, 0x33, 0xd9, 0x7e, 0x51, 0x39, 0x6e, 0xa1, 0x9a, 0x2e, + 0xa5, 0xbe, 0xca, 0x86, +}; +static const unsigned char kat3860_entropyinpr2[] = { + 0xe7, 0x4c, 0x26, 0xdd, 0xfc, 0x7c, 0xf7, 0x77, 0x96, 0x47, 0x7a, 0xf2, + 0x42, 0xc1, 0x95, 0x41, 0x7f, 0x76, 0xf2, 0xf7, 0x5e, 0x9f, 0xba, 0xbb, + 0xd6, 0x30, 0x70, 0xf9, 0x90, 0xd1, 0x3a, 0x7b, 0x7f, 0x49, 0xed, 0x11, + 0xcc, 0xe2, 0x71, 0x47, +}; +static const unsigned char kat3860_addinpr2[] = { + 0x76, 0x6b, 0xc7, 0x27, 0x18, 0xa4, 0x9b, 0x93, 0x0f, 0xca, 0x71, 0xec, + 0x14, 0x65, 0x5e, 0x56, 0xa5, 0xde, 0x0b, 0x9b, 0xac, 0x86, 0x60, 0x00, + 0xdb, 0x51, 0x34, 0xd2, 0x8f, 0xd2, 0x3b, 0x02, 0xbd, 0x28, 0x65, 0x51, + 0xc6, 0x6d, 0x78, 0x8b, +}; +static const unsigned char kat3860_retbits[] = { + 0x21, 0xa6, 0xed, 0xaf, 0x26, 0x18, 0xad, 0x7a, 0x23, 0x37, 0x14, 0x62, + 0x13, 0x60, 0x90, 0xda, 0x6d, 0xb7, 0xa1, 0x77, 0x04, 0x5a, 0x79, 0x20, + 0x7a, 0x87, 0x9c, 0xad, 0xef, 0x9a, 0x2c, 0x0a, 0x0c, 0xd2, 0x0f, 0x0b, + 0x9a, 0xbf, 0xff, 0x05, 0x09, 0x70, 0x1c, 0x71, 0xf7, 0x49, 0x15, 0x37, + 0x21, 0x80, 0x8d, 0x44, 0xa5, 0x94, 0x1d, 0xac, 0xa3, 0x13, 0xf3, 0x9e, + 0xdb, 0x73, 0x2e, 0xf5, +}; +static const struct drbg_kat_pr_true kat3860_t = { + 4, kat3860_entropyin, kat3860_nonce, kat3860_persstr, + kat3860_entropyinpr1, kat3860_addinpr1, kat3860_entropyinpr2, + kat3860_addinpr2, kat3860_retbits +}; +static const struct drbg_kat kat3860 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3860_t +}; + +static const unsigned char kat3861_entropyin[] = { + 0xca, 0x9d, 0xd7, 0xe2, 0x8b, 0x16, 0x49, 0x26, 0xa4, 0xa4, 0x61, 0x96, + 0xfc, 0xee, 0xf2, 0xd8, 0x95, 0xbb, 0x68, 0xf4, 0x20, 0xfc, 0x07, 0xdb, + 0xff, 0x1f, 0x5b, 0x4d, 0x2a, 0x79, 0xf2, 0x56, 0xcc, 0x52, 0xfb, 0x28, + 0xe5, 0x0b, 0xbf, 0x91, +}; +static const unsigned char kat3861_nonce[] = {0}; +static const unsigned char kat3861_persstr[] = {0}; +static const unsigned char kat3861_entropyinpr1[] = { + 0x28, 0x08, 0x3b, 0xa9, 0x88, 0x20, 0x41, 0x0b, 0x63, 0xd0, 0xda, 0x42, + 0x93, 0x4a, 0x0b, 0x98, 0xe2, 0x9a, 0x8b, 0xfd, 0x71, 0xf0, 0x70, 0xae, + 0x40, 0xfc, 0x81, 0xd1, 0x21, 0x13, 0x1b, 0x7a, 0x38, 0x3b, 0x16, 0x4a, + 0xf4, 0xea, 0x5c, 0x90, +}; +static const unsigned char kat3861_addinpr1[] = { + 0x89, 0x1b, 0xd5, 0xb9, 0x04, 0xe6, 0x03, 0xa7, 0x5a, 0xaf, 0x1e, 0xfd, + 0xcc, 0x3c, 0xf3, 0xcb, 0x3c, 0x84, 0xb2, 0x24, 0xd9, 0x86, 0x19, 0x12, + 0x0d, 0x7a, 0x32, 0x24, 0xc9, 0x58, 0xaa, 0x81, 0x83, 0x71, 0x45, 0x3e, + 0x56, 0x31, 0xa2, 0xa9, +}; +static const unsigned char kat3861_entropyinpr2[] = { + 0x38, 0xde, 0x99, 0xd2, 0xb1, 0x9d, 0xe5, 0x57, 0x22, 0x4a, 0x66, 0x4a, + 0xd3, 0x6a, 0x4b, 0x5a, 0xbd, 0x40, 0x60, 0x8f, 0x77, 0x3f, 0x86, 0x2c, + 0xcf, 0x6d, 0x7d, 0xee, 0xec, 0xdd, 0x77, 0x99, 0x2b, 0xfa, 0x37, 0x53, + 0x67, 0x76, 0x10, 0x9a, +}; +static const unsigned char kat3861_addinpr2[] = { + 0x8e, 0x02, 0xd8, 0xc7, 0x0e, 0x14, 0xf7, 0x74, 0x32, 0x29, 0xf4, 0x17, + 0x7e, 0x97, 0x36, 0x3b, 0xb8, 0xb0, 0xed, 0xf9, 0xa0, 0x11, 0x65, 0xf9, + 0x88, 0x16, 0x44, 0xb5, 0x04, 0x18, 0x8a, 0x2b, 0xa8, 0xdd, 0xbd, 0x68, + 0xeb, 0xc3, 0x24, 0x04, +}; +static const unsigned char kat3861_retbits[] = { + 0x87, 0x91, 0x12, 0x4b, 0x30, 0x75, 0x25, 0x99, 0x0a, 0x66, 0x39, 0x59, + 0x0a, 0x82, 0xff, 0x29, 0xa7, 0xd8, 0x32, 0x6d, 0x4f, 0x6b, 0x2e, 0x52, + 0x2b, 0xc1, 0x45, 0x7b, 0xec, 0x16, 0xc3, 0xa6, 0xd5, 0xe5, 0x38, 0x32, + 0x06, 0x20, 0xb7, 0x79, 0xe7, 0x9f, 0xed, 0x88, 0xc3, 0x55, 0x13, 0x67, + 0x6e, 0x6c, 0xf6, 0x00, 0xca, 0x5a, 0x0b, 0xcb, 0xb4, 0xf9, 0x7a, 0xee, + 0xac, 0xea, 0x1e, 0xda, +}; +static const struct drbg_kat_pr_true kat3861_t = { + 5, kat3861_entropyin, kat3861_nonce, kat3861_persstr, + kat3861_entropyinpr1, kat3861_addinpr1, kat3861_entropyinpr2, + kat3861_addinpr2, kat3861_retbits +}; +static const struct drbg_kat kat3861 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3861_t +}; + +static const unsigned char kat3862_entropyin[] = { + 0xc3, 0x84, 0xb8, 0x6c, 0x82, 0xcb, 0xaf, 0xe6, 0xf8, 0xaf, 0x7f, 0x43, + 0x19, 0xd2, 0x65, 0x3c, 0x7b, 0xab, 0x0e, 0x3a, 0xfe, 0xd1, 0xa3, 0x3b, + 0xc2, 0x2d, 0xa3, 0xeb, 0xc2, 0x34, 0x8d, 0xce, 0xea, 0x67, 0x4a, 0xda, + 0x54, 0xd1, 0x94, 0x86, +}; +static const unsigned char kat3862_nonce[] = {0}; +static const unsigned char kat3862_persstr[] = {0}; +static const unsigned char kat3862_entropyinpr1[] = { + 0xbc, 0x6c, 0x20, 0x8c, 0x8d, 0x40, 0xe8, 0x6e, 0xaf, 0x11, 0xb0, 0x18, + 0xad, 0x40, 0x3e, 0x1c, 0xc7, 0x48, 0x95, 0x94, 0x7f, 0xc1, 0xe1, 0x1e, + 0x79, 0xec, 0x3c, 0xce, 0xab, 0x40, 0x31, 0x80, 0xea, 0xdc, 0x4a, 0xb9, + 0x1f, 0x48, 0x11, 0xd1, +}; +static const unsigned char kat3862_addinpr1[] = { + 0x7b, 0x83, 0xd1, 0x13, 0x11, 0x9a, 0xd1, 0x59, 0xf0, 0xf7, 0x7c, 0x55, + 0x30, 0xea, 0xad, 0x68, 0x22, 0x86, 0xfe, 0x31, 0x83, 0x11, 0xa0, 0x57, + 0x5a, 0x3d, 0x77, 0x43, 0x39, 0x48, 0x29, 0xa7, 0x4e, 0x49, 0x15, 0x51, + 0x78, 0xec, 0xe9, 0x62, +}; +static const unsigned char kat3862_entropyinpr2[] = { + 0xb9, 0x9d, 0xb5, 0x42, 0x28, 0x3b, 0xd9, 0x7f, 0x63, 0x16, 0x5d, 0xea, + 0x03, 0x1b, 0x18, 0x88, 0xe0, 0x82, 0x00, 0xa9, 0x04, 0x99, 0xa8, 0x43, + 0x83, 0x71, 0x6a, 0xfe, 0x78, 0x7b, 0xac, 0x1e, 0x65, 0x29, 0x67, 0xd6, + 0x9f, 0xe1, 0xcd, 0xc5, +}; +static const unsigned char kat3862_addinpr2[] = { + 0xac, 0x5e, 0xf5, 0x10, 0x22, 0x41, 0x27, 0x60, 0x55, 0x98, 0x96, 0x25, + 0xfc, 0x86, 0x0c, 0x42, 0xa7, 0x70, 0x5a, 0x6f, 0x61, 0x36, 0xd5, 0xa1, + 0xf6, 0x13, 0xd1, 0x4f, 0x7c, 0xb4, 0x58, 0x63, 0xde, 0xae, 0xcc, 0xe3, + 0x46, 0x87, 0xca, 0x61, +}; +static const unsigned char kat3862_retbits[] = { + 0xa9, 0x40, 0x11, 0x39, 0xa2, 0xaa, 0x31, 0x9c, 0xec, 0xd9, 0xea, 0x96, + 0x0f, 0xd5, 0x3d, 0x6f, 0x86, 0xa1, 0x08, 0xe5, 0xf1, 0x28, 0xce, 0x77, + 0x42, 0x20, 0xee, 0xd1, 0x9f, 0xdc, 0xb7, 0x6f, 0x4f, 0x48, 0xe6, 0x77, + 0x3d, 0x9c, 0x43, 0x10, 0x0d, 0xf0, 0xd0, 0x8a, 0x49, 0xf6, 0xdb, 0xfc, + 0xb0, 0xe1, 0x7f, 0xab, 0x6e, 0xea, 0x97, 0x9e, 0xc7, 0x76, 0x12, 0x9d, + 0xda, 0x8a, 0x9b, 0x90, +}; +static const struct drbg_kat_pr_true kat3862_t = { + 6, kat3862_entropyin, kat3862_nonce, kat3862_persstr, + kat3862_entropyinpr1, kat3862_addinpr1, kat3862_entropyinpr2, + kat3862_addinpr2, kat3862_retbits +}; +static const struct drbg_kat kat3862 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3862_t +}; + +static const unsigned char kat3863_entropyin[] = { + 0xe9, 0x6c, 0xce, 0x83, 0xad, 0x1c, 0x4a, 0xac, 0x66, 0xfd, 0xec, 0x4c, + 0x61, 0xee, 0xd4, 0x6d, 0x2a, 0xab, 0x85, 0x86, 0x60, 0xac, 0x19, 0xb8, + 0xb0, 0xff, 0x7a, 0xd3, 0x05, 0x73, 0xc9, 0x30, 0x7d, 0x3f, 0xe9, 0x9d, + 0x2f, 0x18, 0x66, 0x9b, +}; +static const unsigned char kat3863_nonce[] = {0}; +static const unsigned char kat3863_persstr[] = {0}; +static const unsigned char kat3863_entropyinpr1[] = { + 0xd7, 0x53, 0x33, 0x7d, 0x3d, 0x84, 0xd1, 0x22, 0x7e, 0x43, 0x02, 0xee, + 0xe7, 0x2b, 0x26, 0xc8, 0x39, 0x74, 0x54, 0x9b, 0x9a, 0x15, 0x4d, 0xb9, + 0xba, 0x83, 0xee, 0xaf, 0x8b, 0x98, 0x16, 0xc8, 0xbb, 0xd1, 0x63, 0xed, + 0x25, 0xe8, 0x6b, 0x0a, +}; +static const unsigned char kat3863_addinpr1[] = { + 0x41, 0x76, 0x89, 0xe2, 0x5e, 0xe7, 0x0d, 0xc2, 0xad, 0x77, 0x4e, 0xc5, + 0x31, 0xa2, 0xf2, 0x63, 0xc6, 0xee, 0xcb, 0xa1, 0x29, 0x49, 0x6d, 0x49, + 0xc1, 0xc6, 0x3a, 0xc9, 0x35, 0x7a, 0xea, 0xde, 0x79, 0x7f, 0x9f, 0xc3, + 0xf5, 0x4f, 0xf3, 0x10, +}; +static const unsigned char kat3863_entropyinpr2[] = { + 0x98, 0x74, 0xb2, 0xd3, 0x40, 0x28, 0xa5, 0xad, 0x52, 0xe6, 0x62, 0x09, + 0x2f, 0x93, 0x0d, 0xf2, 0xcc, 0xa9, 0x69, 0xfe, 0x68, 0x2b, 0x61, 0x9c, + 0x2e, 0x4a, 0x65, 0x8a, 0xe2, 0x6d, 0xf2, 0xa8, 0x1f, 0xb2, 0xc7, 0xa1, + 0xe4, 0xf2, 0x1e, 0x3e, +}; +static const unsigned char kat3863_addinpr2[] = { + 0xb1, 0x16, 0x1e, 0xb8, 0x79, 0xde, 0xa2, 0xf0, 0xcd, 0x23, 0x7e, 0xce, + 0x20, 0xae, 0x3a, 0x89, 0x30, 0xa2, 0x20, 0xa4, 0xd8, 0x6e, 0x48, 0x4c, + 0xb3, 0x3a, 0x71, 0xfa, 0x9c, 0x4e, 0x78, 0xff, 0xf9, 0x70, 0xd7, 0x1c, + 0xfd, 0x31, 0x8f, 0x86, +}; +static const unsigned char kat3863_retbits[] = { + 0x1e, 0xbe, 0x04, 0x63, 0x68, 0x27, 0x1c, 0xa6, 0x38, 0xea, 0xf0, 0xc6, + 0xdc, 0xf5, 0x84, 0x50, 0x52, 0x74, 0x83, 0x43, 0x17, 0xa5, 0xf2, 0x68, + 0x3c, 0x1f, 0xcf, 0x1d, 0x67, 0x08, 0xba, 0x36, 0xae, 0x91, 0x88, 0x9c, + 0x58, 0x15, 0xa4, 0x7c, 0x72, 0x74, 0x07, 0x75, 0x82, 0xf7, 0x8b, 0x2b, + 0x77, 0xd2, 0x22, 0x3d, 0x5d, 0x5c, 0xc1, 0x84, 0xae, 0xd7, 0x1e, 0x93, + 0x50, 0x66, 0x6c, 0xb6, +}; +static const struct drbg_kat_pr_true kat3863_t = { + 7, kat3863_entropyin, kat3863_nonce, kat3863_persstr, + kat3863_entropyinpr1, kat3863_addinpr1, kat3863_entropyinpr2, + kat3863_addinpr2, kat3863_retbits +}; +static const struct drbg_kat kat3863 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3863_t +}; + +static const unsigned char kat3864_entropyin[] = { + 0x2a, 0x39, 0x9f, 0xf6, 0xa6, 0x0f, 0xfa, 0x7b, 0xc8, 0xa5, 0x65, 0x6a, + 0x2a, 0x31, 0x1f, 0xea, 0x04, 0x80, 0xec, 0x16, 0xbe, 0xd7, 0x6b, 0x72, + 0x5b, 0x0c, 0xfd, 0x14, 0x76, 0x9a, 0xd2, 0x8b, 0x3b, 0x0d, 0x5c, 0xa3, + 0xd4, 0x65, 0x22, 0xa2, +}; +static const unsigned char kat3864_nonce[] = {0}; +static const unsigned char kat3864_persstr[] = {0}; +static const unsigned char kat3864_entropyinpr1[] = { + 0x71, 0x37, 0xac, 0xd9, 0x69, 0xf3, 0x10, 0x49, 0xa5, 0x2b, 0xa0, 0x85, + 0xab, 0xb8, 0xf8, 0xe8, 0x99, 0x6c, 0x69, 0xb3, 0xd3, 0xf2, 0xbc, 0x36, + 0xb6, 0x03, 0x32, 0x1f, 0xe6, 0x4c, 0xe9, 0x69, 0xc2, 0xd2, 0x1d, 0x7e, + 0xb6, 0xf7, 0xe5, 0x6d, +}; +static const unsigned char kat3864_addinpr1[] = { + 0x7a, 0xdb, 0x9f, 0xdb, 0x05, 0xd7, 0x16, 0x48, 0x15, 0xbc, 0x5c, 0xfa, + 0xfc, 0xb2, 0xee, 0x6d, 0x86, 0xa3, 0x1e, 0xca, 0xd1, 0x8b, 0xc5, 0x37, + 0x78, 0x7a, 0x89, 0x6e, 0xdb, 0x9c, 0x5d, 0xf0, 0xa5, 0x83, 0xee, 0x9a, + 0x5c, 0xa7, 0x1c, 0x47, +}; +static const unsigned char kat3864_entropyinpr2[] = { + 0xa8, 0x4d, 0x1d, 0xff, 0x3f, 0x20, 0xdc, 0x56, 0x1b, 0x1a, 0x6a, 0x8f, + 0x18, 0xff, 0xc7, 0x6c, 0x80, 0x45, 0x21, 0xba, 0xc9, 0x01, 0xf2, 0x4a, + 0x06, 0x7a, 0xb0, 0xe8, 0xf3, 0xbf, 0x09, 0xae, 0x5b, 0x93, 0x69, 0x1d, + 0xa1, 0x76, 0xfc, 0x70, +}; +static const unsigned char kat3864_addinpr2[] = { + 0x3d, 0xc1, 0x36, 0x5d, 0x46, 0xa3, 0x3c, 0x8a, 0xd7, 0xbe, 0x4d, 0x1b, + 0x9c, 0xc2, 0x05, 0xa3, 0xc4, 0x59, 0x98, 0xb5, 0x6e, 0xf2, 0x4d, 0x86, + 0xa7, 0x99, 0x95, 0xa1, 0x9d, 0xcb, 0x22, 0xb2, 0xbc, 0xda, 0xbd, 0xe4, + 0x01, 0x75, 0xbf, 0xd2, +}; +static const unsigned char kat3864_retbits[] = { + 0x2a, 0xdb, 0x8e, 0x9a, 0xe8, 0xee, 0x90, 0x94, 0xec, 0x49, 0xbf, 0x46, + 0x4f, 0xad, 0x4e, 0x23, 0xc0, 0x7a, 0x46, 0x63, 0x3e, 0xbe, 0x17, 0x02, + 0x48, 0x34, 0xc0, 0x4f, 0x9f, 0x06, 0xcc, 0xfe, 0x61, 0x8c, 0x36, 0x96, + 0x8e, 0x68, 0xce, 0x0a, 0x26, 0x7b, 0x06, 0x99, 0x4f, 0xba, 0x9e, 0x53, + 0x63, 0xbc, 0xf7, 0xe1, 0xb6, 0xa6, 0x26, 0x12, 0xdd, 0xca, 0x52, 0xab, + 0x9d, 0x19, 0x36, 0x12, +}; +static const struct drbg_kat_pr_true kat3864_t = { + 8, kat3864_entropyin, kat3864_nonce, kat3864_persstr, + kat3864_entropyinpr1, kat3864_addinpr1, kat3864_entropyinpr2, + kat3864_addinpr2, kat3864_retbits +}; +static const struct drbg_kat kat3864 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3864_t +}; + +static const unsigned char kat3865_entropyin[] = { + 0xc6, 0x29, 0xf9, 0x90, 0xa8, 0x3c, 0x52, 0xc9, 0xfb, 0xa8, 0xa1, 0xb3, + 0x47, 0x69, 0x6c, 0x2c, 0xa7, 0xd3, 0x75, 0x35, 0x0d, 0x81, 0x2c, 0x5c, + 0x96, 0x10, 0x53, 0x99, 0x29, 0x8c, 0x23, 0x18, 0xb5, 0xbd, 0xbe, 0xca, + 0x59, 0xa8, 0x8e, 0xbc, +}; +static const unsigned char kat3865_nonce[] = {0}; +static const unsigned char kat3865_persstr[] = {0}; +static const unsigned char kat3865_entropyinpr1[] = { + 0xbb, 0x85, 0x55, 0x1b, 0x9d, 0x62, 0xea, 0xe2, 0x70, 0x05, 0xcf, 0x4e, + 0xe2, 0x64, 0x79, 0x91, 0xfe, 0x23, 0x66, 0x4a, 0x74, 0xea, 0xac, 0x53, + 0x10, 0xaa, 0x66, 0x19, 0x0c, 0x1f, 0xae, 0xb5, 0xe9, 0xe7, 0xd5, 0x44, + 0x41, 0xd9, 0x74, 0xf5, +}; +static const unsigned char kat3865_addinpr1[] = { + 0x64, 0x68, 0x3d, 0x67, 0x16, 0x94, 0x5c, 0x80, 0xd5, 0x69, 0xd8, 0xc1, + 0x55, 0xdb, 0x06, 0xde, 0x52, 0xd2, 0x48, 0x6e, 0x48, 0x01, 0xd0, 0xa4, + 0x84, 0x6f, 0xe7, 0x6d, 0x07, 0x8d, 0x84, 0x1c, 0x1d, 0x89, 0x74, 0x9a, + 0xd0, 0x68, 0xe2, 0x9e, +}; +static const unsigned char kat3865_entropyinpr2[] = { + 0x54, 0xdc, 0xe8, 0x23, 0xa3, 0x31, 0xe0, 0x0d, 0x22, 0x8c, 0xa9, 0xa7, + 0x4f, 0xe3, 0x5e, 0x44, 0x45, 0x0e, 0x54, 0xa8, 0x6a, 0x22, 0x97, 0xe8, + 0x97, 0x0a, 0x51, 0x2e, 0x18, 0xcb, 0xff, 0x9a, 0x21, 0xef, 0x56, 0x37, + 0xa0, 0xad, 0x1c, 0xbb, +}; +static const unsigned char kat3865_addinpr2[] = { + 0x8e, 0xd1, 0xa4, 0xf8, 0x85, 0x49, 0x37, 0x09, 0x7a, 0x44, 0x39, 0x40, + 0xa3, 0x0c, 0x8c, 0x27, 0x31, 0xc1, 0xf9, 0xbf, 0x3d, 0x9d, 0x15, 0x35, + 0x2c, 0x59, 0x34, 0x5e, 0xa9, 0x93, 0x5e, 0x1e, 0xa6, 0x8b, 0xa2, 0x49, + 0xe2, 0xd4, 0x62, 0xfe, +}; +static const unsigned char kat3865_retbits[] = { + 0x82, 0x2e, 0x29, 0xf8, 0xd7, 0xb4, 0x1f, 0xa1, 0x26, 0x11, 0xa1, 0x6a, + 0x62, 0xbb, 0xfb, 0x78, 0xb5, 0x44, 0x1c, 0xa3, 0x4e, 0x4e, 0x27, 0xdd, + 0xcb, 0x7a, 0x24, 0x23, 0x2a, 0xa7, 0x21, 0x6a, 0x69, 0x76, 0x34, 0x58, + 0xfb, 0xba, 0xee, 0x0a, 0x02, 0xa6, 0x4d, 0x94, 0xff, 0x4d, 0x6b, 0xa5, + 0xbe, 0x65, 0x53, 0x04, 0x68, 0x24, 0xac, 0x8c, 0x66, 0x4d, 0x32, 0x18, + 0x3d, 0x38, 0x3c, 0xe0, +}; +static const struct drbg_kat_pr_true kat3865_t = { + 9, kat3865_entropyin, kat3865_nonce, kat3865_persstr, + kat3865_entropyinpr1, kat3865_addinpr1, kat3865_entropyinpr2, + kat3865_addinpr2, kat3865_retbits +}; +static const struct drbg_kat kat3865 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3865_t +}; + +static const unsigned char kat3866_entropyin[] = { + 0x88, 0xb4, 0x1f, 0xba, 0x13, 0x2f, 0xd5, 0xc4, 0x6f, 0x58, 0x90, 0x21, + 0x96, 0xd7, 0x85, 0xe4, 0xc6, 0xc3, 0xc1, 0x5a, 0xa9, 0xa3, 0x80, 0x1b, + 0xd3, 0x1b, 0xa3, 0xf7, 0x4a, 0xdc, 0xc0, 0xa3, 0x72, 0x63, 0xa4, 0x8c, + 0x44, 0xdd, 0x39, 0xe4, +}; +static const unsigned char kat3866_nonce[] = {0}; +static const unsigned char kat3866_persstr[] = {0}; +static const unsigned char kat3866_entropyinpr1[] = { + 0xe6, 0x51, 0x9f, 0x2f, 0x66, 0x95, 0x5b, 0x41, 0xcb, 0x27, 0x81, 0xb9, + 0x00, 0x1e, 0x2b, 0xe9, 0x58, 0x1b, 0x1e, 0xac, 0x7a, 0xec, 0x96, 0xde, + 0xf8, 0x0a, 0xb2, 0xf8, 0xc8, 0xf0, 0xbd, 0x4f, 0x28, 0x8b, 0x86, 0xf9, + 0xd0, 0xbc, 0x98, 0x10, +}; +static const unsigned char kat3866_addinpr1[] = { + 0xbb, 0x40, 0xe4, 0x1d, 0x29, 0xd5, 0x78, 0xfd, 0xc4, 0x59, 0x5e, 0xc5, + 0xae, 0x5b, 0xd6, 0xef, 0x15, 0xfa, 0xc4, 0x71, 0xf8, 0xdc, 0x91, 0x00, + 0x67, 0x42, 0x35, 0xe6, 0x12, 0x71, 0x51, 0xf7, 0x52, 0xd5, 0x82, 0x13, + 0xdd, 0xc8, 0xc2, 0x69, +}; +static const unsigned char kat3866_entropyinpr2[] = { + 0xfa, 0xa9, 0x1d, 0x51, 0x72, 0x2e, 0xc7, 0x14, 0x6e, 0xa9, 0x05, 0xfd, + 0x70, 0xea, 0xc1, 0xf8, 0x8d, 0x3c, 0x73, 0x83, 0x3f, 0x5b, 0x91, 0xd1, + 0xe4, 0x19, 0x85, 0xea, 0xd6, 0x4d, 0xd2, 0xa7, 0x30, 0xb2, 0x3f, 0xbf, + 0xa7, 0xce, 0x01, 0x8b, +}; +static const unsigned char kat3866_addinpr2[] = { + 0xcb, 0x5e, 0xbd, 0xe0, 0xea, 0x1e, 0x01, 0x9f, 0x77, 0xee, 0xba, 0xea, + 0xbb, 0x48, 0xf1, 0x6f, 0x5d, 0xd2, 0x09, 0x62, 0x21, 0x9c, 0x3e, 0xbc, + 0x2c, 0x1a, 0x95, 0x52, 0xb7, 0xc3, 0x12, 0xfa, 0x1f, 0x9d, 0x68, 0xf9, + 0xed, 0x61, 0xa6, 0x26, +}; +static const unsigned char kat3866_retbits[] = { + 0x93, 0x7c, 0x67, 0x10, 0xa2, 0x2e, 0xa3, 0x80, 0x5b, 0x6f, 0x91, 0x79, + 0x57, 0xd3, 0xa4, 0xb1, 0x36, 0xef, 0x6e, 0x6a, 0x05, 0xf6, 0x74, 0x28, + 0xdc, 0x4e, 0x07, 0x92, 0x28, 0x6d, 0xdf, 0xe2, 0x7d, 0x50, 0x54, 0xa4, + 0x05, 0xcf, 0x61, 0x25, 0x9a, 0x65, 0x19, 0x66, 0x93, 0xf9, 0x4c, 0x2b, + 0x50, 0xc6, 0xa9, 0x15, 0xbd, 0xfb, 0xa3, 0x96, 0xff, 0xc5, 0x72, 0xb6, + 0xfb, 0xab, 0x83, 0x11, +}; +static const struct drbg_kat_pr_true kat3866_t = { + 10, kat3866_entropyin, kat3866_nonce, kat3866_persstr, + kat3866_entropyinpr1, kat3866_addinpr1, kat3866_entropyinpr2, + kat3866_addinpr2, kat3866_retbits +}; +static const struct drbg_kat kat3866 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3866_t +}; + +static const unsigned char kat3867_entropyin[] = { + 0x37, 0xea, 0x6c, 0x5a, 0xaf, 0x90, 0x25, 0x99, 0xb6, 0xd4, 0xfa, 0xa4, + 0xb5, 0x4b, 0x90, 0xc0, 0x1b, 0x1f, 0x7a, 0xb2, 0xcf, 0x81, 0x13, 0xca, + 0xec, 0xea, 0xab, 0xe6, 0x98, 0xa8, 0xef, 0xb7, 0x17, 0x4a, 0xf8, 0x34, + 0xac, 0xea, 0x8a, 0x10, +}; +static const unsigned char kat3867_nonce[] = {0}; +static const unsigned char kat3867_persstr[] = {0}; +static const unsigned char kat3867_entropyinpr1[] = { + 0x4e, 0x7f, 0x31, 0x57, 0x52, 0x5c, 0xdd, 0x3d, 0x20, 0x0a, 0x0c, 0xce, + 0x71, 0x99, 0x9a, 0xbc, 0x48, 0xbb, 0xba, 0xe2, 0xd2, 0x5d, 0x78, 0xfa, + 0x75, 0x00, 0x91, 0x22, 0x2f, 0xad, 0xd6, 0xd8, 0xd2, 0xea, 0xa6, 0xef, + 0x16, 0x7c, 0xc3, 0xcd, +}; +static const unsigned char kat3867_addinpr1[] = { + 0x90, 0x99, 0xe1, 0x72, 0xc0, 0x6e, 0x34, 0x0f, 0xf8, 0xc6, 0x58, 0x43, + 0x04, 0x02, 0x31, 0x4c, 0xb2, 0x89, 0x34, 0xbb, 0xa8, 0xa0, 0x93, 0x87, + 0x06, 0xc4, 0x29, 0x59, 0x72, 0x09, 0x97, 0x2b, 0x96, 0x19, 0x56, 0x5d, + 0xe0, 0x7b, 0x41, 0x6a, +}; +static const unsigned char kat3867_entropyinpr2[] = { + 0xa6, 0xcd, 0xdc, 0x89, 0x67, 0xe8, 0x19, 0x57, 0xe3, 0xad, 0xcc, 0x20, + 0x9e, 0xac, 0x24, 0x17, 0x5a, 0x52, 0x25, 0x9c, 0x42, 0x97, 0x8d, 0x03, + 0xb7, 0x15, 0x30, 0x35, 0x71, 0xa5, 0xd2, 0xec, 0x4e, 0xc5, 0x3d, 0x62, + 0xfb, 0xb1, 0x07, 0xdf, +}; +static const unsigned char kat3867_addinpr2[] = { + 0x7b, 0x4f, 0x4f, 0x61, 0x80, 0x98, 0xfa, 0x5d, 0x7c, 0x27, 0x0a, 0x95, + 0x0d, 0x44, 0xbb, 0xc2, 0x49, 0xf1, 0xe4, 0x63, 0x0d, 0x79, 0xeb, 0x8c, + 0x2e, 0xf1, 0x64, 0xbd, 0xaa, 0xfd, 0x98, 0x2d, 0x9c, 0x57, 0x26, 0xd2, + 0xca, 0x48, 0xbd, 0xe9, +}; +static const unsigned char kat3867_retbits[] = { + 0x31, 0x32, 0x0a, 0x4f, 0x8a, 0x8b, 0x9a, 0x2f, 0x16, 0x1b, 0x91, 0x40, + 0x2e, 0x51, 0x27, 0x48, 0x1e, 0x10, 0x34, 0x3b, 0xa7, 0xbb, 0xd3, 0xfd, + 0xbc, 0x6c, 0x26, 0x73, 0x40, 0xc6, 0xf8, 0x31, 0x13, 0x8a, 0x7a, 0x67, + 0x3f, 0xe5, 0x25, 0xdd, 0x08, 0x22, 0xb6, 0x89, 0x26, 0x8f, 0xe7, 0xdb, + 0xdd, 0x3f, 0xf0, 0xa9, 0xf1, 0x55, 0xa0, 0x89, 0x95, 0xdf, 0x3c, 0x50, + 0x81, 0x27, 0xc6, 0x98, +}; +static const struct drbg_kat_pr_true kat3867_t = { + 11, kat3867_entropyin, kat3867_nonce, kat3867_persstr, + kat3867_entropyinpr1, kat3867_addinpr1, kat3867_entropyinpr2, + kat3867_addinpr2, kat3867_retbits +}; +static const struct drbg_kat kat3867 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3867_t +}; + +static const unsigned char kat3868_entropyin[] = { + 0x09, 0x5b, 0x0f, 0x0c, 0x5b, 0x92, 0x30, 0xa6, 0xd2, 0x80, 0xbb, 0xa9, + 0x90, 0x1f, 0xd1, 0x4d, 0x1f, 0x5b, 0x3b, 0xa1, 0xf1, 0x08, 0xb8, 0x9b, + 0xbe, 0x64, 0xfc, 0x38, 0x38, 0x20, 0xef, 0xe9, 0x72, 0x07, 0xd5, 0x69, + 0xe8, 0x2e, 0xf4, 0xc7, +}; +static const unsigned char kat3868_nonce[] = {0}; +static const unsigned char kat3868_persstr[] = {0}; +static const unsigned char kat3868_entropyinpr1[] = { + 0x5f, 0x0b, 0xf5, 0x46, 0xdb, 0x92, 0x80, 0x7d, 0x22, 0xf7, 0xd4, 0x50, + 0xea, 0x68, 0x20, 0x95, 0xeb, 0xf5, 0x41, 0x3e, 0x42, 0x98, 0xcf, 0x86, + 0x32, 0xae, 0x89, 0xc0, 0x82, 0x09, 0x93, 0xb8, 0x0c, 0x53, 0xb9, 0x47, + 0x9e, 0x2b, 0xb0, 0xf0, +}; +static const unsigned char kat3868_addinpr1[] = { + 0x4f, 0x29, 0x26, 0x13, 0xed, 0xfe, 0x82, 0x9d, 0xca, 0xdf, 0x7f, 0xa8, + 0x87, 0x3a, 0x82, 0xab, 0x65, 0x5e, 0x94, 0x94, 0x6e, 0xb8, 0xae, 0x10, + 0x98, 0x8d, 0x60, 0x2e, 0xfa, 0x24, 0xd2, 0x40, 0x02, 0x75, 0x1d, 0x4c, + 0x80, 0xbb, 0x44, 0xda, +}; +static const unsigned char kat3868_entropyinpr2[] = { + 0x53, 0xa4, 0x12, 0x7a, 0x58, 0xd5, 0x15, 0x65, 0x42, 0x22, 0xa4, 0x93, + 0xf0, 0x99, 0xe5, 0x4f, 0x77, 0x67, 0x19, 0x37, 0x7e, 0xf3, 0x73, 0x5d, + 0x89, 0xab, 0xc1, 0x5f, 0xe2, 0x73, 0xfb, 0x01, 0x02, 0xff, 0x7e, 0x24, + 0x9d, 0x86, 0x5b, 0xab, +}; +static const unsigned char kat3868_addinpr2[] = { + 0x4d, 0xb6, 0xbb, 0x88, 0x7f, 0xc6, 0xea, 0x67, 0x3d, 0x71, 0xf7, 0xae, + 0x58, 0xdd, 0xa5, 0x0e, 0x4d, 0xf1, 0xa1, 0xee, 0x32, 0x84, 0x80, 0xa8, + 0x48, 0x5b, 0x9a, 0x9b, 0xeb, 0x89, 0x29, 0xcc, 0x2c, 0x3b, 0xd8, 0x2d, + 0x98, 0x7b, 0x50, 0xcc, +}; +static const unsigned char kat3868_retbits[] = { + 0x7c, 0x10, 0x43, 0x42, 0xe9, 0xd0, 0x42, 0xfd, 0x3d, 0xaf, 0xbf, 0x43, + 0x6e, 0x63, 0x6a, 0x44, 0xe0, 0x7c, 0x9e, 0xb3, 0xcf, 0xeb, 0x96, 0x9f, + 0x75, 0x9a, 0x42, 0xd6, 0x96, 0xe0, 0xad, 0x71, 0xdb, 0x76, 0x59, 0x5c, + 0x2b, 0x71, 0xb4, 0x67, 0x35, 0x73, 0xe7, 0x8b, 0x9a, 0xfb, 0x7d, 0xf4, + 0x34, 0x64, 0xb9, 0x46, 0x3d, 0x92, 0xeb, 0xe8, 0x1c, 0x01, 0x12, 0x9a, + 0x8e, 0x3f, 0x15, 0x2f, +}; +static const struct drbg_kat_pr_true kat3868_t = { + 12, kat3868_entropyin, kat3868_nonce, kat3868_persstr, + kat3868_entropyinpr1, kat3868_addinpr1, kat3868_entropyinpr2, + kat3868_addinpr2, kat3868_retbits +}; +static const struct drbg_kat kat3868 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3868_t +}; + +static const unsigned char kat3869_entropyin[] = { + 0x88, 0x72, 0xd7, 0xf3, 0xfe, 0x19, 0x12, 0x3f, 0x0b, 0x70, 0xfe, 0x8b, + 0xa5, 0x77, 0xd6, 0x5c, 0x6c, 0xfe, 0xff, 0x98, 0xce, 0x85, 0xda, 0xd6, + 0x90, 0x95, 0x02, 0xf8, 0x4a, 0x3a, 0xf2, 0x1f, 0x66, 0xc3, 0x46, 0x46, + 0x44, 0x9d, 0x5a, 0x85, +}; +static const unsigned char kat3869_nonce[] = {0}; +static const unsigned char kat3869_persstr[] = {0}; +static const unsigned char kat3869_entropyinpr1[] = { + 0x82, 0xb5, 0x55, 0x84, 0x98, 0x57, 0xb0, 0xf3, 0x30, 0xfe, 0xc7, 0x5d, + 0x42, 0x8b, 0xb6, 0xff, 0xad, 0xad, 0x97, 0xaf, 0x65, 0x64, 0x5f, 0x54, + 0x80, 0xa7, 0xa2, 0x20, 0x46, 0x37, 0xa2, 0xe1, 0xf3, 0xe0, 0x7a, 0x4c, + 0x31, 0xad, 0xcb, 0x2b, +}; +static const unsigned char kat3869_addinpr1[] = { + 0x8e, 0x9d, 0xfc, 0xc2, 0x0e, 0xd2, 0x94, 0xc1, 0x31, 0x0c, 0xc0, 0xe5, + 0x2b, 0x09, 0xae, 0xa7, 0x58, 0xe7, 0x4e, 0xe9, 0xb6, 0xf4, 0x9e, 0xe0, + 0x8d, 0x02, 0x24, 0x44, 0xf3, 0x87, 0x5c, 0xa7, 0x68, 0xe8, 0xbc, 0x81, + 0x2a, 0x2e, 0xce, 0x28, +}; +static const unsigned char kat3869_entropyinpr2[] = { + 0x27, 0xba, 0x2d, 0x56, 0xfe, 0x7a, 0x37, 0xf9, 0x49, 0xfb, 0xfa, 0xbf, + 0x56, 0x1d, 0x29, 0x2c, 0xb9, 0x9e, 0xbd, 0x3a, 0xdd, 0x8e, 0x64, 0x66, + 0x85, 0xc4, 0xf8, 0x26, 0xbf, 0x22, 0x71, 0xad, 0x7e, 0xab, 0x77, 0xc0, + 0x4d, 0xa4, 0xc8, 0x58, +}; +static const unsigned char kat3869_addinpr2[] = { + 0x84, 0x00, 0x30, 0x0b, 0xdd, 0xf1, 0x7c, 0xec, 0x75, 0x39, 0x48, 0x7c, + 0xa7, 0x30, 0xbf, 0x86, 0xf8, 0x5b, 0xd7, 0xca, 0x29, 0x4e, 0x63, 0xe0, + 0xfe, 0x2a, 0x83, 0x1f, 0xc0, 0xc5, 0x2b, 0xda, 0x8a, 0xf4, 0x75, 0xa7, + 0x4e, 0x51, 0xc7, 0xbf, +}; +static const unsigned char kat3869_retbits[] = { + 0xb6, 0x53, 0xc6, 0x1b, 0x47, 0x00, 0xf1, 0xb8, 0x42, 0xf1, 0x41, 0x0d, + 0x76, 0x7d, 0x4d, 0x4d, 0x7d, 0x10, 0xbf, 0x22, 0x65, 0xfc, 0x1d, 0x45, + 0xed, 0xef, 0x97, 0x00, 0x73, 0x5e, 0xf7, 0x3d, 0x89, 0x8a, 0xac, 0x7f, + 0x76, 0x68, 0x6f, 0x12, 0xf6, 0x1f, 0xc7, 0x0d, 0x20, 0xa4, 0x84, 0xaa, + 0xeb, 0x6a, 0x56, 0x4b, 0x6b, 0xb2, 0x43, 0x02, 0x3c, 0xcf, 0xe0, 0x80, + 0x0c, 0xc7, 0x13, 0x73, +}; +static const struct drbg_kat_pr_true kat3869_t = { + 13, kat3869_entropyin, kat3869_nonce, kat3869_persstr, + kat3869_entropyinpr1, kat3869_addinpr1, kat3869_entropyinpr2, + kat3869_addinpr2, kat3869_retbits +}; +static const struct drbg_kat kat3869 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3869_t +}; + +static const unsigned char kat3870_entropyin[] = { + 0x4b, 0x37, 0x8d, 0x27, 0xfa, 0xec, 0x66, 0x8a, 0xa8, 0xf4, 0xcb, 0x60, + 0xb8, 0x9f, 0x9a, 0x28, 0x17, 0xee, 0xfd, 0xf5, 0x9e, 0xc6, 0xd1, 0x70, + 0x6b, 0x6d, 0xd8, 0xed, 0x96, 0x1d, 0x5f, 0x17, 0x88, 0xf9, 0x8a, 0x58, + 0x29, 0x8e, 0x21, 0x87, +}; +static const unsigned char kat3870_nonce[] = {0}; +static const unsigned char kat3870_persstr[] = {0}; +static const unsigned char kat3870_entropyinpr1[] = { + 0xa2, 0xb3, 0x4b, 0xaf, 0x5a, 0x6b, 0xc8, 0xee, 0x7e, 0x50, 0xb3, 0x26, + 0x98, 0xac, 0x6b, 0xc3, 0x01, 0x32, 0xac, 0x81, 0x24, 0x28, 0x1c, 0x81, + 0x03, 0x2d, 0x05, 0x07, 0x3a, 0x27, 0x90, 0xab, 0x01, 0xc7, 0x44, 0x8e, + 0x52, 0xfe, 0x1f, 0xf7, +}; +static const unsigned char kat3870_addinpr1[] = { + 0x68, 0x95, 0x3c, 0x65, 0xfa, 0xc6, 0xf0, 0xbc, 0x5d, 0xf7, 0x8b, 0xdf, + 0x6b, 0xd2, 0xcc, 0xcd, 0x8c, 0x67, 0x54, 0x12, 0x2d, 0x1a, 0xa2, 0xdd, + 0x0b, 0x4e, 0xa7, 0xe2, 0x5c, 0x2f, 0x3a, 0x12, 0xe3, 0xd5, 0x27, 0xa2, + 0x88, 0x08, 0xbe, 0x12, +}; +static const unsigned char kat3870_entropyinpr2[] = { + 0x1c, 0x59, 0x55, 0x07, 0x10, 0xb2, 0xef, 0xa9, 0xf0, 0x09, 0xe4, 0x4c, + 0x0a, 0xa7, 0x24, 0xad, 0x34, 0x51, 0xda, 0x29, 0x32, 0x3f, 0x60, 0xd6, + 0x8d, 0x02, 0x56, 0x93, 0x51, 0x0f, 0xc0, 0x16, 0x70, 0xc2, 0x82, 0xb3, + 0x8b, 0xff, 0x32, 0x49, +}; +static const unsigned char kat3870_addinpr2[] = { + 0xcc, 0x7d, 0xf4, 0x2c, 0x7f, 0x93, 0xa6, 0x3b, 0x8a, 0x83, 0x89, 0xc6, + 0x6a, 0x33, 0x65, 0x19, 0xcf, 0x27, 0xcc, 0x6e, 0x61, 0xa0, 0x6a, 0x67, + 0xc3, 0x30, 0x77, 0xc9, 0x54, 0x98, 0xb8, 0xfb, 0x4e, 0x7a, 0xd0, 0xe2, + 0x34, 0xae, 0x9e, 0x5f, +}; +static const unsigned char kat3870_retbits[] = { + 0xde, 0x2a, 0xbc, 0xed, 0x63, 0xa1, 0x1a, 0x9c, 0x7c, 0x03, 0x4f, 0xae, + 0x31, 0xd8, 0xfd, 0x57, 0x23, 0x9a, 0x76, 0xa8, 0xd8, 0x38, 0x2d, 0x9a, + 0x50, 0x7e, 0x52, 0x30, 0xc1, 0xb0, 0xc5, 0xbf, 0x06, 0x3a, 0x99, 0xf0, + 0x0c, 0xd4, 0x42, 0x8d, 0xb1, 0x96, 0x59, 0x74, 0x27, 0x90, 0x0f, 0x56, + 0xac, 0x2f, 0xf8, 0xd5, 0x56, 0xd3, 0xaf, 0x3d, 0x11, 0x9a, 0x59, 0x0b, + 0x59, 0x4c, 0x2e, 0x90, +}; +static const struct drbg_kat_pr_true kat3870_t = { + 14, kat3870_entropyin, kat3870_nonce, kat3870_persstr, + kat3870_entropyinpr1, kat3870_addinpr1, kat3870_entropyinpr2, + kat3870_addinpr2, kat3870_retbits +}; +static const struct drbg_kat kat3870 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3870_t +}; + +static const unsigned char kat3871_entropyin[] = { + 0x6e, 0x7c, 0x6d, 0x32, 0x24, 0xb5, 0x74, 0xf9, 0xd1, 0x97, 0x03, 0x7a, + 0x77, 0x70, 0xdb, 0x1f, 0x00, 0x5d, 0xfc, 0x82, 0xd6, 0xfd, 0x19, 0x39, + 0x9d, 0x73, 0x61, 0x4b, 0xb3, 0x98, 0xfa, 0x0e, 0x25, 0x98, 0x48, 0xde, + 0xd3, 0x1f, 0x19, 0xe4, +}; +static const unsigned char kat3871_nonce[] = {0}; +static const unsigned char kat3871_persstr[] = { + 0xd0, 0xa6, 0x7c, 0x39, 0xd4, 0xee, 0x83, 0x20, 0x8d, 0x40, 0xde, 0xbe, + 0xbf, 0x38, 0x33, 0x2b, 0x0c, 0x09, 0xb6, 0x68, 0x3a, 0x50, 0x70, 0xdf, + 0xd9, 0x1b, 0xdf, 0xb0, 0xaa, 0x7c, 0x60, 0xaf, 0x4d, 0xc3, 0x6b, 0x18, + 0x92, 0x61, 0x89, 0xc6, +}; +static const unsigned char kat3871_entropyinpr1[] = { + 0xb4, 0x81, 0xb8, 0x4b, 0x2a, 0xb1, 0xc5, 0x42, 0xe5, 0x82, 0x8b, 0x3d, + 0xb7, 0x06, 0x77, 0x29, 0x51, 0x6b, 0xb2, 0xea, 0xf6, 0xf9, 0x3f, 0x65, + 0x53, 0x81, 0x02, 0x93, 0x5c, 0xd4, 0xfd, 0x2d, 0x36, 0x75, 0xba, 0xb0, + 0x09, 0x80, 0xa2, 0x17, +}; +static const unsigned char kat3871_addinpr1[] = {0}; +static const unsigned char kat3871_entropyinpr2[] = { + 0x9a, 0xd8, 0xc9, 0x71, 0x0f, 0xbe, 0xcb, 0x0c, 0xa9, 0x1f, 0x0c, 0x1f, + 0x07, 0xcb, 0xea, 0x29, 0xef, 0xa6, 0x75, 0x3a, 0x2f, 0x39, 0xb5, 0x7c, + 0x9d, 0x10, 0xdc, 0x13, 0xeb, 0x2d, 0x8c, 0x39, 0x84, 0x67, 0x12, 0x16, + 0x7b, 0x13, 0xc4, 0x2e, +}; +static const unsigned char kat3871_addinpr2[] = {0}; +static const unsigned char kat3871_retbits[] = { + 0xce, 0x78, 0x8c, 0xcd, 0x16, 0xc5, 0xc2, 0x1f, 0x91, 0xd2, 0x65, 0x56, + 0xb7, 0xfc, 0xb0, 0xaa, 0x64, 0x4a, 0x0d, 0x26, 0x92, 0xab, 0x3c, 0xd9, + 0xe8, 0xa5, 0x08, 0x60, 0xd4, 0x02, 0xe6, 0xb9, 0xb8, 0xc8, 0x24, 0xfe, + 0x38, 0xc4, 0xc1, 0x50, 0xa2, 0xce, 0x97, 0xb9, 0x39, 0xb6, 0xb6, 0x33, + 0xcd, 0x48, 0x99, 0x1e, 0x15, 0x2b, 0x81, 0x34, 0x46, 0x2e, 0xa3, 0xf0, + 0x39, 0xb1, 0x1c, 0x0b, +}; +static const struct drbg_kat_pr_true kat3871_t = { + 0, kat3871_entropyin, kat3871_nonce, kat3871_persstr, + kat3871_entropyinpr1, kat3871_addinpr1, kat3871_entropyinpr2, + kat3871_addinpr2, kat3871_retbits +}; +static const struct drbg_kat kat3871 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3871_t +}; + +static const unsigned char kat3872_entropyin[] = { + 0xec, 0x45, 0xf5, 0x5e, 0x70, 0x22, 0x07, 0xf1, 0x05, 0x29, 0x1f, 0xdc, + 0x47, 0xea, 0x87, 0x04, 0x79, 0xbb, 0xfd, 0x2b, 0x2c, 0xb0, 0x7b, 0xdc, + 0x3d, 0xb0, 0xd3, 0xda, 0x8e, 0x05, 0xf4, 0x3b, 0x2e, 0x90, 0xd9, 0x4d, + 0xf1, 0xcc, 0xfb, 0x63, +}; +static const unsigned char kat3872_nonce[] = {0}; +static const unsigned char kat3872_persstr[] = { + 0x75, 0x4f, 0x41, 0x0b, 0xfd, 0x54, 0x9c, 0x0a, 0x13, 0xf4, 0x44, 0x8a, + 0x1d, 0xa1, 0xd6, 0x43, 0x5b, 0x25, 0x70, 0xf8, 0xe1, 0x02, 0x8c, 0x36, + 0x0a, 0xe6, 0x0d, 0x46, 0xfe, 0xc2, 0x70, 0xf4, 0x99, 0x63, 0xe5, 0xba, + 0xef, 0x94, 0x45, 0x43, +}; +static const unsigned char kat3872_entropyinpr1[] = { + 0x1c, 0x5e, 0xee, 0xf3, 0x6a, 0xc2, 0x35, 0xe5, 0x9d, 0x98, 0x7a, 0xc2, + 0x4c, 0x65, 0xb2, 0xe5, 0x3f, 0x7c, 0x60, 0x57, 0x6a, 0x19, 0xd1, 0x57, + 0x49, 0xf5, 0xf7, 0xc2, 0xf8, 0xaa, 0xb7, 0x7f, 0x65, 0x8e, 0x7a, 0x63, + 0xe8, 0x64, 0xc6, 0x5f, +}; +static const unsigned char kat3872_addinpr1[] = {0}; +static const unsigned char kat3872_entropyinpr2[] = { + 0x2b, 0x41, 0x4f, 0x09, 0xc5, 0xb2, 0x5b, 0xf7, 0xd0, 0x6d, 0x34, 0x4c, + 0xf9, 0xf6, 0x58, 0x09, 0x97, 0xa6, 0xdf, 0xee, 0xad, 0xc4, 0x07, 0x44, + 0xfe, 0x2d, 0x62, 0x35, 0x76, 0x98, 0x18, 0x1f, 0xbb, 0xc7, 0x86, 0xf5, + 0xb9, 0xaf, 0xa4, 0x5c, +}; +static const unsigned char kat3872_addinpr2[] = {0}; +static const unsigned char kat3872_retbits[] = { + 0x14, 0x8d, 0x71, 0xc5, 0x9c, 0xeb, 0x1c, 0x34, 0xc3, 0xbd, 0xe3, 0x15, + 0xaf, 0xf4, 0x00, 0x3c, 0xf3, 0x6a, 0xf9, 0x9c, 0xfb, 0x5e, 0xe4, 0xc4, + 0xa9, 0x20, 0x47, 0x94, 0x2c, 0x77, 0xbe, 0x17, 0xda, 0x9c, 0x75, 0xf9, + 0x6d, 0x1d, 0xdd, 0x12, 0xc4, 0x01, 0x10, 0x22, 0x61, 0xa5, 0x22, 0x69, + 0x90, 0xf9, 0x7f, 0x65, 0x78, 0xdc, 0x80, 0xa1, 0x84, 0xab, 0x51, 0x41, + 0xf7, 0x81, 0xc2, 0x27, +}; +static const struct drbg_kat_pr_true kat3872_t = { + 1, kat3872_entropyin, kat3872_nonce, kat3872_persstr, + kat3872_entropyinpr1, kat3872_addinpr1, kat3872_entropyinpr2, + kat3872_addinpr2, kat3872_retbits +}; +static const struct drbg_kat kat3872 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3872_t +}; + +static const unsigned char kat3873_entropyin[] = { + 0x53, 0x14, 0xd8, 0xf7, 0x3c, 0xee, 0xf9, 0x94, 0x7c, 0xad, 0xab, 0xe5, + 0x22, 0x37, 0xdd, 0x7d, 0xfa, 0x88, 0x83, 0xc3, 0x8d, 0x27, 0x97, 0x8c, + 0x41, 0x28, 0x46, 0x9b, 0x1e, 0x4f, 0x09, 0x9c, 0xc6, 0x59, 0xd3, 0xd4, + 0x72, 0x62, 0x1c, 0x6c, +}; +static const unsigned char kat3873_nonce[] = {0}; +static const unsigned char kat3873_persstr[] = { + 0x04, 0xe8, 0x0f, 0x51, 0xb8, 0x0c, 0xba, 0xf9, 0xe2, 0xfb, 0xc7, 0x31, + 0xd0, 0xad, 0xa4, 0x61, 0x03, 0x84, 0x93, 0xbf, 0x3b, 0x34, 0x53, 0x48, + 0x74, 0x8c, 0x65, 0x2c, 0x52, 0xe2, 0x97, 0xb7, 0xa1, 0xca, 0xdc, 0xf2, + 0x91, 0x97, 0x53, 0x97, +}; +static const unsigned char kat3873_entropyinpr1[] = { + 0x09, 0xb2, 0xdb, 0x29, 0xa7, 0xb0, 0x8d, 0x8a, 0x15, 0xb2, 0x90, 0x45, + 0xca, 0x8a, 0x15, 0xf5, 0xf9, 0x95, 0xf7, 0xc0, 0xa0, 0x8e, 0x36, 0xe1, + 0xb3, 0x29, 0xe2, 0xa3, 0x32, 0x20, 0xb9, 0x5b, 0x48, 0xec, 0x51, 0xe1, + 0xaf, 0xa9, 0x1a, 0x49, +}; +static const unsigned char kat3873_addinpr1[] = {0}; +static const unsigned char kat3873_entropyinpr2[] = { + 0x27, 0x60, 0x61, 0x21, 0xde, 0xae, 0xa6, 0xb2, 0x33, 0xbd, 0xa0, 0x78, + 0x13, 0xe2, 0x61, 0xb5, 0x63, 0x7d, 0x77, 0xe8, 0xc7, 0xb2, 0x44, 0x26, + 0x87, 0x2f, 0xf3, 0xe7, 0x5f, 0x15, 0xbf, 0x44, 0x78, 0xfb, 0x2a, 0xa9, + 0xef, 0x81, 0x26, 0x78, +}; +static const unsigned char kat3873_addinpr2[] = {0}; +static const unsigned char kat3873_retbits[] = { + 0x22, 0xb9, 0xe0, 0x5b, 0x88, 0xf9, 0x86, 0xc1, 0x11, 0xb6, 0xb5, 0x00, + 0x25, 0xc5, 0x6a, 0xd2, 0xa2, 0xd7, 0x81, 0x8d, 0xc6, 0x34, 0xc7, 0xfd, + 0xfe, 0xf7, 0xad, 0xfb, 0x59, 0x08, 0x47, 0x37, 0xe4, 0x12, 0x42, 0x0c, + 0x40, 0x71, 0xd1, 0x9a, 0x44, 0x30, 0x29, 0x0f, 0x10, 0x6a, 0x9d, 0x91, + 0x2f, 0xf3, 0x1c, 0x4b, 0xca, 0x29, 0xa8, 0x24, 0xba, 0x08, 0x5b, 0xa1, + 0x0f, 0x87, 0xb4, 0xb0, +}; +static const struct drbg_kat_pr_true kat3873_t = { + 2, kat3873_entropyin, kat3873_nonce, kat3873_persstr, + kat3873_entropyinpr1, kat3873_addinpr1, kat3873_entropyinpr2, + kat3873_addinpr2, kat3873_retbits +}; +static const struct drbg_kat kat3873 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3873_t +}; + +static const unsigned char kat3874_entropyin[] = { + 0x1a, 0xeb, 0xf4, 0x41, 0xdb, 0x2b, 0x96, 0x52, 0xae, 0xba, 0x7b, 0x9e, + 0xc9, 0x5c, 0x20, 0xa3, 0x4c, 0x79, 0xc1, 0xb9, 0x65, 0x14, 0xcb, 0x32, + 0x1b, 0xc2, 0x0e, 0x38, 0x4d, 0x3c, 0xcd, 0xfd, 0x6a, 0x2c, 0x7a, 0xc8, + 0x0c, 0x1a, 0x49, 0xcd, +}; +static const unsigned char kat3874_nonce[] = {0}; +static const unsigned char kat3874_persstr[] = { + 0x1f, 0xff, 0x67, 0x6d, 0x71, 0x14, 0x03, 0xba, 0x8d, 0xb1, 0x07, 0xc6, + 0x21, 0x4f, 0xb9, 0x71, 0xe3, 0x1c, 0xf5, 0xd3, 0x90, 0x5b, 0x34, 0x3d, + 0x78, 0xfb, 0x4c, 0x78, 0xfa, 0xe7, 0xb6, 0xf6, 0x54, 0xcf, 0xb0, 0x6b, + 0xeb, 0x65, 0x04, 0xe9, +}; +static const unsigned char kat3874_entropyinpr1[] = { + 0xf2, 0xc3, 0x33, 0xf9, 0xdb, 0xb4, 0x85, 0x02, 0xe8, 0xee, 0x30, 0x24, + 0x99, 0x53, 0xeb, 0x24, 0x93, 0x4b, 0x4a, 0xdc, 0x63, 0xf2, 0x77, 0x5f, + 0x65, 0x72, 0x0a, 0xff, 0x14, 0xe9, 0x70, 0x10, 0x44, 0xda, 0x24, 0x9f, + 0x86, 0x6e, 0x97, 0xd2, +}; +static const unsigned char kat3874_addinpr1[] = {0}; +static const unsigned char kat3874_entropyinpr2[] = { + 0x21, 0x5c, 0x33, 0x56, 0xed, 0x6d, 0x71, 0x38, 0x37, 0x3d, 0xd8, 0x2b, + 0xe4, 0xd9, 0x8f, 0x06, 0x95, 0x79, 0x7c, 0xe8, 0xeb, 0x2e, 0x48, 0xd3, + 0x91, 0xa3, 0x6a, 0x5e, 0x02, 0x08, 0xb5, 0x2a, 0xf2, 0x65, 0xb1, 0xe1, + 0xdf, 0xf8, 0x15, 0x7d, +}; +static const unsigned char kat3874_addinpr2[] = {0}; +static const unsigned char kat3874_retbits[] = { + 0xd7, 0xf9, 0x7a, 0x92, 0xd3, 0x9a, 0x4b, 0x36, 0x9a, 0xaa, 0x38, 0x2b, + 0x47, 0x25, 0x4f, 0x4d, 0xa6, 0x1a, 0x44, 0x84, 0x82, 0xf4, 0xe6, 0x0b, + 0x16, 0x44, 0x26, 0x14, 0x60, 0x7d, 0x7f, 0x82, 0x48, 0xe4, 0xda, 0xfe, + 0x0d, 0xd6, 0xa5, 0x20, 0x57, 0xc9, 0x1f, 0xfa, 0x3b, 0xae, 0x5a, 0x4a, + 0xa1, 0x68, 0xc0, 0x73, 0xe0, 0x9f, 0x9f, 0x72, 0x1c, 0xce, 0xa2, 0xe9, + 0xd9, 0x9a, 0x62, 0x71, +}; +static const struct drbg_kat_pr_true kat3874_t = { + 3, kat3874_entropyin, kat3874_nonce, kat3874_persstr, + kat3874_entropyinpr1, kat3874_addinpr1, kat3874_entropyinpr2, + kat3874_addinpr2, kat3874_retbits +}; +static const struct drbg_kat kat3874 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3874_t +}; + +static const unsigned char kat3875_entropyin[] = { + 0x1d, 0xb6, 0x5d, 0xd2, 0x3b, 0x16, 0xb5, 0xd1, 0xc8, 0xc9, 0x03, 0xf4, + 0xb4, 0x61, 0x4d, 0xff, 0xbd, 0xa9, 0x36, 0x20, 0xf0, 0x59, 0x85, 0x90, + 0xb8, 0xdf, 0x39, 0x9d, 0xc5, 0x54, 0x20, 0xd4, 0x66, 0x3a, 0xf3, 0xe3, + 0x2b, 0x4b, 0x15, 0xc8, +}; +static const unsigned char kat3875_nonce[] = {0}; +static const unsigned char kat3875_persstr[] = { + 0x90, 0xa4, 0xd2, 0xe1, 0xe3, 0x1b, 0xec, 0xc5, 0x85, 0x27, 0xa4, 0xa5, + 0xfc, 0x71, 0x78, 0x27, 0x3e, 0xa4, 0x91, 0x0c, 0x05, 0x6a, 0x92, 0x6c, + 0x2b, 0xf3, 0xd1, 0xde, 0xcd, 0xb8, 0x23, 0xc8, 0xe7, 0x2b, 0xff, 0x06, + 0xb0, 0xd2, 0xa9, 0x61, +}; +static const unsigned char kat3875_entropyinpr1[] = { + 0x2b, 0xa0, 0xc3, 0xfc, 0xfc, 0xfc, 0x39, 0xde, 0x20, 0x1b, 0x0b, 0x67, + 0x30, 0x46, 0x0e, 0xe7, 0xac, 0x3d, 0x17, 0x9f, 0xbd, 0xfa, 0x81, 0xc1, + 0x63, 0x48, 0x05, 0x49, 0x5e, 0x93, 0x09, 0x73, 0x92, 0xf0, 0x23, 0x2a, + 0xd9, 0x52, 0x21, 0xd5, +}; +static const unsigned char kat3875_addinpr1[] = {0}; +static const unsigned char kat3875_entropyinpr2[] = { + 0xba, 0x81, 0xba, 0xfb, 0x30, 0x82, 0x64, 0x99, 0x94, 0x80, 0xac, 0x93, + 0x70, 0x6c, 0x5e, 0x12, 0x12, 0xe3, 0xf4, 0xd9, 0x1b, 0x94, 0x38, 0xd7, + 0xf7, 0xf6, 0xa2, 0x06, 0x8e, 0xc9, 0x3d, 0xe8, 0xc7, 0xee, 0x64, 0xaa, + 0xd5, 0xdc, 0x77, 0xef, +}; +static const unsigned char kat3875_addinpr2[] = {0}; +static const unsigned char kat3875_retbits[] = { + 0x98, 0x29, 0x7f, 0xa5, 0x66, 0xa8, 0xe6, 0xc2, 0x53, 0x20, 0x5d, 0x05, + 0x9c, 0xf9, 0xff, 0x30, 0x75, 0xb2, 0xda, 0x13, 0xcd, 0xcc, 0xfc, 0x43, + 0x9a, 0xcb, 0x2b, 0x93, 0xe0, 0x66, 0xc9, 0x2e, 0xec, 0xa5, 0x93, 0xe5, + 0x3d, 0x42, 0xa2, 0x3b, 0x5f, 0x99, 0x5c, 0x17, 0xaf, 0x02, 0x8d, 0x2e, + 0xb8, 0x17, 0x73, 0x32, 0x92, 0x7f, 0x7f, 0x87, 0xd0, 0xb5, 0x3f, 0xa1, + 0xd9, 0xf5, 0x6c, 0x1d, +}; +static const struct drbg_kat_pr_true kat3875_t = { + 4, kat3875_entropyin, kat3875_nonce, kat3875_persstr, + kat3875_entropyinpr1, kat3875_addinpr1, kat3875_entropyinpr2, + kat3875_addinpr2, kat3875_retbits +}; +static const struct drbg_kat kat3875 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3875_t +}; + +static const unsigned char kat3876_entropyin[] = { + 0x1b, 0xb7, 0x1d, 0x6f, 0x27, 0xae, 0x69, 0x35, 0x96, 0x3b, 0xf8, 0xc8, + 0xb9, 0x32, 0x49, 0x69, 0x2c, 0x78, 0xa3, 0x75, 0xbd, 0xe4, 0xd1, 0x80, + 0xaf, 0xfa, 0x12, 0xaf, 0x38, 0xf6, 0x59, 0x3d, 0x63, 0x92, 0xce, 0xae, + 0x54, 0xcd, 0xdb, 0x38, +}; +static const unsigned char kat3876_nonce[] = {0}; +static const unsigned char kat3876_persstr[] = { + 0x6e, 0xd1, 0x1f, 0xa3, 0x97, 0x94, 0x8b, 0xb5, 0x37, 0x42, 0xbf, 0xa9, + 0x59, 0x46, 0x32, 0xac, 0xe6, 0x52, 0xe9, 0x91, 0x53, 0x21, 0x99, 0x15, + 0xdd, 0x64, 0xf7, 0x71, 0xc5, 0xcb, 0x22, 0x53, 0x2c, 0xcc, 0x30, 0x0d, + 0xec, 0xe0, 0x67, 0x01, +}; +static const unsigned char kat3876_entropyinpr1[] = { + 0x21, 0xa9, 0x5e, 0x6e, 0x61, 0x32, 0x0d, 0xf0, 0x98, 0x3f, 0x54, 0xaa, + 0x0d, 0x35, 0x8e, 0x3e, 0xce, 0x9a, 0x87, 0x45, 0x6d, 0xb0, 0xef, 0xa7, + 0x12, 0x26, 0x2a, 0x58, 0x17, 0xfb, 0x60, 0x36, 0x5e, 0xa1, 0xb9, 0xe2, + 0x25, 0xf2, 0xb0, 0x23, +}; +static const unsigned char kat3876_addinpr1[] = {0}; +static const unsigned char kat3876_entropyinpr2[] = { + 0xd6, 0xce, 0xaf, 0xc4, 0x7c, 0x35, 0xaa, 0xfa, 0x5a, 0xdf, 0xa2, 0x3e, + 0xbd, 0xd6, 0x5c, 0xa4, 0x16, 0xa3, 0x9f, 0x18, 0x93, 0x48, 0xaf, 0x89, + 0xa7, 0x26, 0xda, 0x81, 0x4a, 0x98, 0xad, 0xe5, 0x99, 0x5e, 0xe9, 0x73, + 0xdc, 0x3e, 0x8f, 0x12, +}; +static const unsigned char kat3876_addinpr2[] = {0}; +static const unsigned char kat3876_retbits[] = { + 0x83, 0xb0, 0xae, 0xa2, 0x97, 0x99, 0x36, 0x19, 0x57, 0x7c, 0x13, 0x99, + 0x88, 0x3f, 0x53, 0x45, 0x3b, 0xc5, 0x06, 0x06, 0x02, 0x22, 0x9d, 0xa1, + 0x9d, 0xd9, 0x02, 0xee, 0x81, 0x9c, 0x70, 0x8a, 0x28, 0xe5, 0xcc, 0xdb, + 0x5c, 0xf3, 0x99, 0x68, 0x94, 0xd4, 0x4d, 0x89, 0x1f, 0xd5, 0xb4, 0xd8, + 0x75, 0x75, 0x51, 0x55, 0x7b, 0x9d, 0xa5, 0x68, 0xe3, 0xe2, 0xe7, 0x18, + 0x1e, 0xec, 0xad, 0x4f, +}; +static const struct drbg_kat_pr_true kat3876_t = { + 5, kat3876_entropyin, kat3876_nonce, kat3876_persstr, + kat3876_entropyinpr1, kat3876_addinpr1, kat3876_entropyinpr2, + kat3876_addinpr2, kat3876_retbits +}; +static const struct drbg_kat kat3876 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3876_t +}; + +static const unsigned char kat3877_entropyin[] = { + 0x0a, 0x2a, 0x75, 0xe6, 0xc6, 0xee, 0x52, 0x33, 0x85, 0x26, 0x37, 0xcb, + 0x78, 0xd1, 0xa3, 0x96, 0xa0, 0xe8, 0xc3, 0x3e, 0x37, 0x29, 0x22, 0x07, + 0x78, 0x47, 0xcc, 0x8a, 0xfd, 0xeb, 0x3f, 0x4a, 0xfd, 0x0a, 0x3a, 0x04, + 0xeb, 0x62, 0x77, 0xe6, +}; +static const unsigned char kat3877_nonce[] = {0}; +static const unsigned char kat3877_persstr[] = { + 0x31, 0xb9, 0xb1, 0x39, 0x0a, 0x2d, 0x3f, 0xa8, 0x25, 0x82, 0x66, 0xf5, + 0xd4, 0x55, 0xdf, 0x63, 0x0c, 0xde, 0x85, 0x66, 0x05, 0x95, 0xd2, 0x8b, + 0x04, 0x7a, 0x40, 0x97, 0xb6, 0x48, 0x34, 0xdb, 0x32, 0xb8, 0xbb, 0xb8, + 0x9f, 0x4a, 0x34, 0x7f, +}; +static const unsigned char kat3877_entropyinpr1[] = { + 0xc9, 0xe2, 0x91, 0xe8, 0xc2, 0x42, 0xba, 0x53, 0x82, 0x4c, 0x43, 0x09, + 0x4f, 0xa9, 0xcb, 0x39, 0x02, 0xe1, 0x61, 0x97, 0x3d, 0x1b, 0xe8, 0x9c, + 0xd3, 0x89, 0xce, 0x6c, 0x58, 0x4d, 0xd7, 0x8f, 0x8c, 0x1a, 0xed, 0x65, + 0x09, 0xfb, 0xf0, 0xd8, +}; +static const unsigned char kat3877_addinpr1[] = {0}; +static const unsigned char kat3877_entropyinpr2[] = { + 0x66, 0xe3, 0x39, 0x6f, 0x88, 0xa6, 0x31, 0x1d, 0x82, 0x73, 0xe6, 0x8e, + 0x59, 0x04, 0x45, 0x27, 0xd5, 0x95, 0xf0, 0xf7, 0x5e, 0x0f, 0x5b, 0xd1, + 0x33, 0xf5, 0x69, 0x2c, 0xb7, 0xde, 0xa5, 0xd4, 0x23, 0xf1, 0x75, 0xb4, + 0x19, 0xdb, 0xf8, 0xb6, +}; +static const unsigned char kat3877_addinpr2[] = {0}; +static const unsigned char kat3877_retbits[] = { + 0x20, 0x6e, 0x3d, 0x19, 0x79, 0x85, 0xc4, 0xec, 0x92, 0x30, 0xee, 0xf3, + 0x7b, 0x91, 0x31, 0x0b, 0x44, 0x65, 0xb6, 0xbb, 0x8b, 0x26, 0x29, 0xa7, + 0x7a, 0xd6, 0x4f, 0xd8, 0x42, 0x4e, 0x39, 0xf0, 0x0a, 0xa5, 0x9f, 0x93, + 0x46, 0xae, 0xc2, 0xe7, 0x49, 0xa0, 0x45, 0x3e, 0xbb, 0xfc, 0xbc, 0x96, + 0xfa, 0xf4, 0xc7, 0xe3, 0xec, 0x05, 0x65, 0x8b, 0x0d, 0xed, 0xa2, 0xa6, + 0x8c, 0x35, 0x1a, 0x72, +}; +static const struct drbg_kat_pr_true kat3877_t = { + 6, kat3877_entropyin, kat3877_nonce, kat3877_persstr, + kat3877_entropyinpr1, kat3877_addinpr1, kat3877_entropyinpr2, + kat3877_addinpr2, kat3877_retbits +}; +static const struct drbg_kat kat3877 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3877_t +}; + +static const unsigned char kat3878_entropyin[] = { + 0xcb, 0xc5, 0x07, 0x83, 0x33, 0x5c, 0x00, 0x3f, 0x63, 0x2c, 0xa7, 0xea, + 0x0e, 0x34, 0xd3, 0xb8, 0xc5, 0xdb, 0x18, 0xe6, 0xaf, 0xa2, 0x22, 0x82, + 0x21, 0xff, 0x68, 0x2e, 0xff, 0x8f, 0x82, 0x78, 0x9e, 0x2d, 0x51, 0xe5, + 0xed, 0x58, 0xd4, 0x3e, +}; +static const unsigned char kat3878_nonce[] = {0}; +static const unsigned char kat3878_persstr[] = { + 0xc5, 0x08, 0x83, 0x71, 0x9f, 0xf4, 0xce, 0xdd, 0xd0, 0x60, 0x46, 0x6e, + 0x3f, 0x91, 0xf7, 0xb1, 0x20, 0xef, 0x9e, 0xd3, 0x80, 0xd8, 0xe2, 0xec, + 0xfe, 0x46, 0x1d, 0x90, 0xb8, 0x7b, 0x6f, 0x1d, 0x93, 0xce, 0xde, 0xe1, + 0x9d, 0xe0, 0x49, 0x28, +}; +static const unsigned char kat3878_entropyinpr1[] = { + 0xc8, 0xfe, 0x13, 0xb4, 0x34, 0x9a, 0xd2, 0xa6, 0x64, 0x0e, 0x87, 0x60, + 0x5e, 0x68, 0x9a, 0x97, 0x64, 0x4a, 0x60, 0x7b, 0x63, 0x89, 0x88, 0x6f, + 0xa7, 0xd3, 0x2a, 0x14, 0x92, 0x83, 0xc3, 0xa3, 0x80, 0xfd, 0x91, 0x04, + 0xf8, 0x50, 0x11, 0xd4, +}; +static const unsigned char kat3878_addinpr1[] = {0}; +static const unsigned char kat3878_entropyinpr2[] = { + 0x8c, 0x78, 0x6c, 0xbe, 0xd9, 0x08, 0x87, 0x04, 0x96, 0xe6, 0xa7, 0x6f, + 0x90, 0xba, 0xe0, 0x88, 0x2e, 0x5a, 0x38, 0x0c, 0xc5, 0x1a, 0x70, 0x6a, + 0xd1, 0x4e, 0x11, 0x57, 0xdd, 0x3b, 0xa5, 0xcc, 0xcc, 0x75, 0x96, 0xaf, + 0xc8, 0xe0, 0x07, 0x63, +}; +static const unsigned char kat3878_addinpr2[] = {0}; +static const unsigned char kat3878_retbits[] = { + 0x7e, 0x40, 0x09, 0x1e, 0x68, 0xd0, 0xd6, 0x41, 0x76, 0xff, 0x8f, 0xfb, + 0x6b, 0x5c, 0xb1, 0x8f, 0x9e, 0xf4, 0xda, 0xb5, 0x8c, 0x81, 0x6c, 0x23, + 0x32, 0xb7, 0xf5, 0xc8, 0x3f, 0x0d, 0xf7, 0xb2, 0x46, 0x3b, 0x08, 0x86, + 0x14, 0x16, 0xfe, 0xb6, 0xc1, 0xaf, 0xdb, 0xec, 0xb0, 0x1f, 0xaa, 0x3f, + 0xc1, 0xc4, 0xef, 0x14, 0xbc, 0x10, 0xd8, 0xb1, 0x02, 0xc8, 0x3d, 0x73, + 0x49, 0x19, 0x1a, 0xad, +}; +static const struct drbg_kat_pr_true kat3878_t = { + 7, kat3878_entropyin, kat3878_nonce, kat3878_persstr, + kat3878_entropyinpr1, kat3878_addinpr1, kat3878_entropyinpr2, + kat3878_addinpr2, kat3878_retbits +}; +static const struct drbg_kat kat3878 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3878_t +}; + +static const unsigned char kat3879_entropyin[] = { + 0xd0, 0xe5, 0x0c, 0x9f, 0xeb, 0xc5, 0x48, 0x33, 0x8a, 0x20, 0x84, 0x45, + 0xc2, 0xb8, 0xcb, 0xd9, 0x81, 0x6c, 0x3e, 0x1c, 0xcb, 0xea, 0x07, 0x95, + 0x57, 0x9c, 0x51, 0x86, 0xa3, 0xa3, 0x47, 0xb5, 0xd0, 0x54, 0x1b, 0xa1, + 0xc1, 0x1f, 0x47, 0x0a, +}; +static const unsigned char kat3879_nonce[] = {0}; +static const unsigned char kat3879_persstr[] = { + 0x46, 0x30, 0x47, 0x43, 0x02, 0xe2, 0x40, 0x55, 0x85, 0x3e, 0xf5, 0xa0, + 0x34, 0xfe, 0xf0, 0xf7, 0xb5, 0xb1, 0xd9, 0x36, 0x14, 0x3e, 0xb0, 0x93, + 0x50, 0xf4, 0x8d, 0x1a, 0xff, 0x10, 0xd4, 0xe1, 0xb3, 0x2b, 0x45, 0x65, + 0x78, 0x5a, 0xac, 0x5c, +}; +static const unsigned char kat3879_entropyinpr1[] = { + 0x61, 0x0b, 0xd8, 0x82, 0x75, 0xf8, 0xf1, 0x14, 0x4c, 0xf8, 0xcf, 0xe0, + 0x84, 0xe0, 0x7f, 0xfc, 0xec, 0xfa, 0xaa, 0x19, 0x5d, 0xbe, 0x67, 0x7b, + 0x17, 0x9e, 0xba, 0x58, 0x08, 0x1a, 0x1b, 0xe2, 0xff, 0xae, 0x6a, 0x64, + 0x1c, 0xd2, 0xa0, 0x0d, +}; +static const unsigned char kat3879_addinpr1[] = {0}; +static const unsigned char kat3879_entropyinpr2[] = { + 0xf4, 0xba, 0x18, 0xba, 0xa1, 0x99, 0x0b, 0x7c, 0x81, 0x0a, 0x31, 0xf6, + 0xc9, 0x89, 0x0f, 0xc0, 0x8b, 0xdc, 0xc9, 0x70, 0x2c, 0x75, 0x81, 0x71, + 0xf2, 0x76, 0x7c, 0xa1, 0x9e, 0x3e, 0x0e, 0x9a, 0x12, 0xf6, 0xbd, 0x6c, + 0x70, 0xe5, 0xbb, 0x5f, +}; +static const unsigned char kat3879_addinpr2[] = {0}; +static const unsigned char kat3879_retbits[] = { + 0x17, 0x82, 0xeb, 0xde, 0xf5, 0x7a, 0x6e, 0x02, 0x3d, 0xdd, 0xf5, 0xcf, + 0x71, 0x5b, 0xc8, 0xd2, 0xac, 0xa5, 0x09, 0x93, 0x13, 0x46, 0x2f, 0xf8, + 0xd6, 0x69, 0xa7, 0x18, 0x2b, 0xff, 0x08, 0x14, 0xc9, 0x8a, 0x50, 0x84, + 0x58, 0x59, 0x74, 0x6c, 0xf3, 0xc4, 0xe2, 0x1f, 0x6f, 0xb7, 0x8d, 0x41, + 0x95, 0x89, 0x0d, 0x8a, 0x98, 0x09, 0x6d, 0x36, 0xf1, 0x11, 0x35, 0xb3, + 0xac, 0x71, 0xa7, 0x05, +}; +static const struct drbg_kat_pr_true kat3879_t = { + 8, kat3879_entropyin, kat3879_nonce, kat3879_persstr, + kat3879_entropyinpr1, kat3879_addinpr1, kat3879_entropyinpr2, + kat3879_addinpr2, kat3879_retbits +}; +static const struct drbg_kat kat3879 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3879_t +}; + +static const unsigned char kat3880_entropyin[] = { + 0x37, 0xe2, 0xdd, 0xc9, 0x89, 0xc8, 0x3a, 0x45, 0xfc, 0xc1, 0xef, 0x4b, + 0x67, 0x39, 0x83, 0xe2, 0x24, 0xfa, 0xe7, 0xd9, 0x1c, 0x05, 0xa7, 0x9e, + 0xfb, 0x6e, 0xd2, 0x80, 0x4c, 0x80, 0x0e, 0x7a, 0xf4, 0xa4, 0xcd, 0xaf, + 0xec, 0x09, 0xff, 0xd3, +}; +static const unsigned char kat3880_nonce[] = {0}; +static const unsigned char kat3880_persstr[] = { + 0x10, 0x0d, 0x4a, 0x11, 0xe5, 0xa5, 0x42, 0x99, 0xe3, 0x20, 0xcf, 0x18, + 0x23, 0x8f, 0x7c, 0xda, 0x9d, 0xde, 0xe4, 0x0c, 0x37, 0x69, 0x77, 0xef, + 0xe0, 0x1a, 0x63, 0xea, 0xdd, 0xf8, 0x15, 0x01, 0xed, 0x2d, 0x68, 0xbe, + 0xd0, 0x12, 0xa0, 0xdb, +}; +static const unsigned char kat3880_entropyinpr1[] = { + 0x6d, 0xdc, 0xf3, 0xd3, 0x21, 0xb5, 0x94, 0x81, 0x96, 0xd9, 0x2f, 0x79, + 0xc1, 0x74, 0xa9, 0x2a, 0xd2, 0xed, 0xae, 0x27, 0x99, 0xe9, 0xb2, 0x06, + 0x92, 0x57, 0x2c, 0x42, 0xc0, 0xda, 0x25, 0xba, 0x13, 0x1c, 0x5a, 0x18, + 0x0e, 0xc2, 0xec, 0x30, +}; +static const unsigned char kat3880_addinpr1[] = {0}; +static const unsigned char kat3880_entropyinpr2[] = { + 0x4d, 0x94, 0x53, 0x78, 0x41, 0x1b, 0xc5, 0xcf, 0xf5, 0xac, 0x79, 0x08, + 0x3d, 0xd9, 0x3b, 0x34, 0x0c, 0x29, 0x11, 0x9c, 0xa8, 0xe1, 0xc3, 0x3b, + 0x54, 0x3d, 0xce, 0x1a, 0xe0, 0xbe, 0x94, 0x07, 0xb0, 0x68, 0x7e, 0x04, + 0x2b, 0x4f, 0x78, 0x47, +}; +static const unsigned char kat3880_addinpr2[] = {0}; +static const unsigned char kat3880_retbits[] = { + 0x48, 0xff, 0x92, 0xfb, 0xb1, 0xf6, 0x0d, 0x45, 0x85, 0xec, 0x5e, 0x51, + 0x4e, 0xfd, 0xf9, 0x5d, 0x1e, 0x7a, 0x30, 0x50, 0x00, 0xb8, 0xd6, 0xa2, + 0x4c, 0x54, 0xc7, 0xf4, 0x7f, 0xc8, 0x90, 0x7d, 0xff, 0x0d, 0x0e, 0xe5, + 0x3d, 0x58, 0xc8, 0x6f, 0x40, 0xc2, 0x0a, 0xa4, 0xd3, 0x4d, 0xd8, 0x62, + 0xe3, 0x1d, 0xf2, 0x9f, 0xc7, 0x6c, 0x93, 0xdc, 0x30, 0x7d, 0x4a, 0xe1, + 0xf5, 0xee, 0xcd, 0x6e, +}; +static const struct drbg_kat_pr_true kat3880_t = { + 9, kat3880_entropyin, kat3880_nonce, kat3880_persstr, + kat3880_entropyinpr1, kat3880_addinpr1, kat3880_entropyinpr2, + kat3880_addinpr2, kat3880_retbits +}; +static const struct drbg_kat kat3880 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3880_t +}; + +static const unsigned char kat3881_entropyin[] = { + 0x2e, 0x38, 0x73, 0x30, 0x6c, 0x37, 0xba, 0x32, 0xcb, 0x6f, 0xd0, 0x00, + 0xf8, 0xb5, 0x81, 0x4b, 0x56, 0x24, 0x4b, 0x47, 0x56, 0xf9, 0x69, 0x62, + 0x3a, 0xf3, 0xc2, 0x57, 0x1b, 0xb4, 0x93, 0x55, 0xbb, 0xd2, 0xc0, 0xd1, + 0x65, 0x1d, 0x17, 0x31, +}; +static const unsigned char kat3881_nonce[] = {0}; +static const unsigned char kat3881_persstr[] = { + 0x02, 0xdf, 0x84, 0x74, 0x11, 0x5c, 0xdf, 0x57, 0x97, 0x14, 0x76, 0x5d, + 0x15, 0xf7, 0xe5, 0xdb, 0x49, 0x5f, 0x61, 0x96, 0x55, 0xf6, 0xf2, 0xe7, + 0x81, 0x94, 0xdd, 0x4f, 0x5b, 0xd9, 0xe1, 0xac, 0x57, 0x08, 0xbb, 0x31, + 0x20, 0x26, 0x0d, 0x45, +}; +static const unsigned char kat3881_entropyinpr1[] = { + 0x6b, 0xbf, 0xb6, 0xc4, 0xf8, 0xa1, 0x90, 0x77, 0xa9, 0xc8, 0xb5, 0x97, + 0xd4, 0xfc, 0x56, 0x78, 0x78, 0x93, 0xb2, 0xba, 0xa4, 0x7a, 0x2e, 0x6c, + 0x6e, 0x51, 0x6d, 0x15, 0xad, 0xa3, 0xdd, 0x2e, 0xac, 0x75, 0xd0, 0x93, + 0xcf, 0x95, 0x5d, 0x26, +}; +static const unsigned char kat3881_addinpr1[] = {0}; +static const unsigned char kat3881_entropyinpr2[] = { + 0xfa, 0x4d, 0xc0, 0xa0, 0xd9, 0xe4, 0xd1, 0x62, 0xe5, 0x9f, 0x08, 0xdf, + 0x9f, 0x48, 0xf5, 0x84, 0x68, 0xfa, 0x0b, 0xb9, 0x73, 0xef, 0x9a, 0x25, + 0x49, 0xe8, 0xe1, 0x45, 0x92, 0x22, 0xad, 0x06, 0x47, 0x9a, 0xb8, 0x3a, + 0x2f, 0xbf, 0x15, 0x52, +}; +static const unsigned char kat3881_addinpr2[] = {0}; +static const unsigned char kat3881_retbits[] = { + 0x0c, 0x18, 0x8d, 0x78, 0x1b, 0x1e, 0x86, 0xfe, 0x99, 0x16, 0x4e, 0xa0, + 0x20, 0xc2, 0x1a, 0x0b, 0xb2, 0x83, 0x13, 0x91, 0xf1, 0x7f, 0xd5, 0x80, + 0x7d, 0x91, 0x69, 0x49, 0x7b, 0xf1, 0x86, 0xba, 0x35, 0x45, 0x0e, 0xf4, + 0xa5, 0xf2, 0xcb, 0xff, 0xf6, 0x3f, 0xdf, 0x9d, 0xaf, 0xb4, 0x34, 0x8b, + 0xdf, 0x00, 0x7f, 0xbd, 0x32, 0xbb, 0xad, 0x04, 0xe7, 0x25, 0x57, 0xff, + 0x52, 0x5c, 0x85, 0xbb, +}; +static const struct drbg_kat_pr_true kat3881_t = { + 10, kat3881_entropyin, kat3881_nonce, kat3881_persstr, + kat3881_entropyinpr1, kat3881_addinpr1, kat3881_entropyinpr2, + kat3881_addinpr2, kat3881_retbits +}; +static const struct drbg_kat kat3881 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3881_t +}; + +static const unsigned char kat3882_entropyin[] = { + 0xa9, 0x2b, 0x46, 0x43, 0xff, 0x0e, 0xfe, 0x3d, 0xfa, 0x2c, 0x1c, 0xef, + 0x49, 0xd1, 0xd1, 0x32, 0x0e, 0x15, 0x6e, 0xb1, 0x1f, 0x38, 0x88, 0xc0, + 0x02, 0xbc, 0x77, 0xc9, 0xea, 0xc0, 0x63, 0x3f, 0x48, 0x18, 0x9a, 0x29, + 0xc6, 0xb1, 0x90, 0x0a, +}; +static const unsigned char kat3882_nonce[] = {0}; +static const unsigned char kat3882_persstr[] = { + 0x42, 0x71, 0x90, 0x0c, 0x2b, 0xa1, 0x9d, 0x49, 0xa5, 0xc9, 0x11, 0xa2, + 0x0d, 0x43, 0x70, 0xaf, 0x4f, 0x06, 0x92, 0x2a, 0xa5, 0x5d, 0xda, 0xa7, + 0x8f, 0x88, 0xe5, 0x70, 0x3b, 0x8b, 0xc4, 0x91, 0x48, 0xbf, 0xaa, 0x1c, + 0xc3, 0xd5, 0x75, 0xaf, +}; +static const unsigned char kat3882_entropyinpr1[] = { + 0x43, 0xb0, 0x2c, 0xaf, 0x14, 0xcb, 0x3d, 0x3c, 0xff, 0x57, 0x41, 0x87, + 0xb5, 0x57, 0xbb, 0x93, 0xc4, 0xf3, 0x19, 0xf3, 0x7c, 0x1d, 0x20, 0xb3, + 0xf0, 0xa9, 0x7c, 0x32, 0xc6, 0x01, 0x0a, 0x75, 0x65, 0xf1, 0x59, 0x71, + 0x7a, 0xc7, 0x92, 0x1c, +}; +static const unsigned char kat3882_addinpr1[] = {0}; +static const unsigned char kat3882_entropyinpr2[] = { + 0x06, 0x97, 0xb6, 0x7a, 0xe1, 0xd3, 0x9a, 0x72, 0x36, 0x03, 0xf8, 0x10, + 0xdd, 0xce, 0xfa, 0x97, 0x56, 0x53, 0xc0, 0xc1, 0xf6, 0xf6, 0x37, 0x31, + 0x59, 0x71, 0x78, 0xcb, 0x03, 0x36, 0x6d, 0xb9, 0x86, 0x51, 0x94, 0xb7, + 0xfa, 0x81, 0x29, 0xd6, +}; +static const unsigned char kat3882_addinpr2[] = {0}; +static const unsigned char kat3882_retbits[] = { + 0x88, 0x93, 0x88, 0x8e, 0x47, 0x05, 0x52, 0x5c, 0xda, 0x03, 0x82, 0xb0, + 0x1b, 0xa4, 0xff, 0x5b, 0x5d, 0x62, 0x42, 0xd4, 0xe6, 0x27, 0x7a, 0x39, + 0x85, 0x50, 0x16, 0xf5, 0x18, 0xac, 0x63, 0x1b, 0xb2, 0xf7, 0x6f, 0x8b, + 0x3b, 0xd4, 0xd3, 0x7b, 0x78, 0xa2, 0x12, 0x9f, 0x67, 0x0b, 0xfe, 0x1b, + 0xfd, 0x6e, 0x8e, 0xed, 0xe4, 0x3d, 0x3a, 0x27, 0xc2, 0x06, 0x62, 0xf2, + 0x0f, 0xc9, 0xfc, 0xcd, +}; +static const struct drbg_kat_pr_true kat3882_t = { + 11, kat3882_entropyin, kat3882_nonce, kat3882_persstr, + kat3882_entropyinpr1, kat3882_addinpr1, kat3882_entropyinpr2, + kat3882_addinpr2, kat3882_retbits +}; +static const struct drbg_kat kat3882 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3882_t +}; + +static const unsigned char kat3883_entropyin[] = { + 0x02, 0x78, 0xdb, 0x17, 0x6c, 0xb3, 0x75, 0xde, 0xa1, 0x65, 0xaf, 0x91, + 0xa9, 0x2e, 0x39, 0x6c, 0x76, 0x06, 0x22, 0x85, 0x51, 0x41, 0xd5, 0xc1, + 0xac, 0x70, 0xf0, 0x03, 0x49, 0xb9, 0xef, 0x57, 0xbd, 0x66, 0x20, 0x40, + 0xa5, 0x3f, 0xb6, 0x5d, +}; +static const unsigned char kat3883_nonce[] = {0}; +static const unsigned char kat3883_persstr[] = { + 0xfd, 0x1a, 0x24, 0xb8, 0x05, 0x6f, 0x24, 0x2a, 0xbc, 0x95, 0x25, 0xc4, + 0x82, 0x34, 0xa7, 0x95, 0x6a, 0x1f, 0x1b, 0x05, 0x76, 0x95, 0xec, 0x2b, + 0xf5, 0xea, 0xe0, 0xb4, 0x4f, 0xd5, 0x48, 0xf3, 0x8e, 0x18, 0xb3, 0x80, + 0x06, 0x97, 0x85, 0xc1, +}; +static const unsigned char kat3883_entropyinpr1[] = { + 0x4d, 0xd2, 0x00, 0x1d, 0x6a, 0x71, 0x56, 0xad, 0x8f, 0x97, 0x49, 0x32, + 0x60, 0xac, 0xe2, 0xf2, 0xd7, 0x8f, 0xa8, 0x9c, 0xd2, 0x93, 0xac, 0x70, + 0x0b, 0x75, 0x71, 0x28, 0xdc, 0x20, 0xb0, 0x34, 0x4c, 0xab, 0x46, 0x3f, + 0xdb, 0x63, 0xd1, 0x5d, +}; +static const unsigned char kat3883_addinpr1[] = {0}; +static const unsigned char kat3883_entropyinpr2[] = { + 0x64, 0xea, 0xf1, 0x88, 0xb3, 0x25, 0xc3, 0xa1, 0xed, 0xe9, 0x69, 0x30, + 0x0a, 0x07, 0x19, 0xfd, 0xcd, 0x94, 0x2d, 0x7b, 0x1e, 0x22, 0x55, 0xff, + 0xcb, 0x2f, 0xf1, 0xc6, 0x46, 0x8c, 0xef, 0x18, 0x4a, 0x84, 0xa8, 0x5b, + 0x44, 0x29, 0x51, 0x25, +}; +static const unsigned char kat3883_addinpr2[] = {0}; +static const unsigned char kat3883_retbits[] = { + 0xa9, 0xbc, 0x86, 0xb7, 0x15, 0xc5, 0xbf, 0x10, 0xe7, 0xa4, 0x83, 0x96, + 0x34, 0x5a, 0xfc, 0xe9, 0x12, 0xe2, 0xd7, 0x49, 0xd5, 0xcb, 0x67, 0x82, + 0x29, 0x41, 0x37, 0x69, 0x4a, 0xce, 0xd2, 0x5b, 0xaf, 0x5e, 0x55, 0xd2, + 0x3a, 0x31, 0xe5, 0x93, 0x04, 0x5b, 0xd4, 0x52, 0x76, 0x0d, 0x6f, 0x74, + 0x20, 0x53, 0xbf, 0x79, 0x2e, 0x09, 0x74, 0xe1, 0x4c, 0x4b, 0x5e, 0xb6, + 0x1c, 0x0e, 0x20, 0xfa, +}; +static const struct drbg_kat_pr_true kat3883_t = { + 12, kat3883_entropyin, kat3883_nonce, kat3883_persstr, + kat3883_entropyinpr1, kat3883_addinpr1, kat3883_entropyinpr2, + kat3883_addinpr2, kat3883_retbits +}; +static const struct drbg_kat kat3883 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3883_t +}; + +static const unsigned char kat3884_entropyin[] = { + 0x10, 0xc7, 0xfe, 0x6e, 0x44, 0x56, 0xd4, 0x13, 0xa0, 0x54, 0x8c, 0x6b, + 0xe6, 0x86, 0x0d, 0xf6, 0x90, 0x4f, 0x79, 0x6f, 0x0b, 0x04, 0xec, 0xa7, + 0x28, 0x06, 0x0b, 0xd9, 0x7a, 0x21, 0x53, 0x29, 0x8a, 0x6a, 0x2a, 0x67, + 0xcd, 0x3a, 0x36, 0x36, +}; +static const unsigned char kat3884_nonce[] = {0}; +static const unsigned char kat3884_persstr[] = { + 0xbb, 0x95, 0xe7, 0xe4, 0x31, 0x0f, 0x33, 0xc4, 0x03, 0x86, 0x3d, 0xcb, + 0x50, 0x89, 0x82, 0x7c, 0x00, 0x66, 0x11, 0x7a, 0xaa, 0xe6, 0xe3, 0x10, + 0xcd, 0x17, 0x0a, 0x23, 0x8f, 0x07, 0xa4, 0xe4, 0xa2, 0x56, 0xdf, 0x33, + 0x3e, 0x6f, 0x1e, 0xec, +}; +static const unsigned char kat3884_entropyinpr1[] = { + 0x17, 0x70, 0x7c, 0x1e, 0x5b, 0x85, 0xc9, 0x7f, 0xc8, 0x03, 0xd2, 0xc7, + 0x06, 0x19, 0x07, 0x1d, 0xbc, 0xae, 0x96, 0x9c, 0x0d, 0xed, 0x93, 0xe0, + 0x86, 0x95, 0x92, 0xe5, 0x72, 0xa2, 0x1d, 0xff, 0x9f, 0x6f, 0xa1, 0x90, + 0xed, 0x12, 0x56, 0xa8, +}; +static const unsigned char kat3884_addinpr1[] = {0}; +static const unsigned char kat3884_entropyinpr2[] = { + 0xc6, 0xc8, 0x33, 0xf8, 0xca, 0x86, 0xb0, 0x7d, 0xb1, 0x45, 0xdc, 0x90, + 0x48, 0x83, 0x89, 0x2f, 0x35, 0x10, 0xc4, 0xac, 0x22, 0x45, 0xb2, 0x49, + 0x47, 0xfd, 0x5c, 0xe6, 0xe8, 0x12, 0xb0, 0xc0, 0x49, 0xd2, 0xfc, 0x41, + 0xbb, 0x3a, 0x24, 0xfc, +}; +static const unsigned char kat3884_addinpr2[] = {0}; +static const unsigned char kat3884_retbits[] = { + 0xd3, 0x60, 0xb9, 0xec, 0xd4, 0x0b, 0xdc, 0x9d, 0x28, 0x76, 0x58, 0x03, + 0x1d, 0x61, 0xf6, 0xdd, 0x3c, 0xf4, 0xdc, 0x7b, 0xc7, 0x4c, 0xcd, 0x47, + 0x69, 0x14, 0xac, 0x41, 0x75, 0xa3, 0x05, 0x9b, 0x79, 0xd1, 0x01, 0xe2, + 0x00, 0x18, 0x20, 0x2a, 0x8c, 0x68, 0x55, 0x8c, 0xb1, 0x2f, 0x8f, 0x35, + 0x2f, 0xe9, 0x84, 0x57, 0xf2, 0xa0, 0xcf, 0x5d, 0xf8, 0xcc, 0xd4, 0x22, + 0x38, 0x94, 0xe6, 0x4f, +}; +static const struct drbg_kat_pr_true kat3884_t = { + 13, kat3884_entropyin, kat3884_nonce, kat3884_persstr, + kat3884_entropyinpr1, kat3884_addinpr1, kat3884_entropyinpr2, + kat3884_addinpr2, kat3884_retbits +}; +static const struct drbg_kat kat3884 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3884_t +}; + +static const unsigned char kat3885_entropyin[] = { + 0x89, 0xe4, 0x0f, 0x39, 0x59, 0x00, 0xff, 0x4b, 0x24, 0x20, 0xb6, 0xfc, + 0xcc, 0xa1, 0x1b, 0x09, 0xbb, 0xd9, 0x0f, 0x44, 0x70, 0x34, 0xaa, 0x6d, + 0x8e, 0xf4, 0x37, 0xa2, 0x4e, 0x9b, 0xf8, 0xd4, 0xbf, 0xb7, 0x78, 0x93, + 0xc7, 0x68, 0x1b, 0xbe, +}; +static const unsigned char kat3885_nonce[] = {0}; +static const unsigned char kat3885_persstr[] = { + 0x9d, 0x0e, 0x51, 0x91, 0xbe, 0x83, 0x6c, 0x05, 0xf2, 0xd2, 0x6b, 0x79, + 0xc8, 0x3d, 0x37, 0x68, 0x5b, 0xb3, 0x5e, 0x84, 0x57, 0x4b, 0x46, 0x2b, + 0x4e, 0xca, 0xb1, 0xc8, 0x11, 0x5f, 0x2f, 0x9f, 0x34, 0x97, 0x4c, 0x69, + 0xa7, 0x31, 0xd7, 0x25, +}; +static const unsigned char kat3885_entropyinpr1[] = { + 0x75, 0x6f, 0x29, 0x30, 0x5a, 0xf9, 0xf4, 0xd3, 0xce, 0xca, 0x43, 0x99, + 0x59, 0x4d, 0x07, 0x63, 0x6d, 0xf0, 0xb2, 0xec, 0xfa, 0xa0, 0x64, 0x38, + 0x80, 0xe5, 0x86, 0xac, 0xbf, 0x68, 0xad, 0x18, 0xed, 0x6e, 0x33, 0xe2, + 0x8f, 0xc4, 0xfc, 0x54, +}; +static const unsigned char kat3885_addinpr1[] = {0}; +static const unsigned char kat3885_entropyinpr2[] = { + 0x18, 0x80, 0x25, 0x2a, 0xd9, 0x3c, 0x99, 0x4d, 0xff, 0x31, 0xfb, 0x2a, + 0x10, 0xfa, 0xb8, 0xc2, 0x65, 0xcf, 0x6f, 0x6a, 0x36, 0xf0, 0x10, 0xfc, + 0x35, 0xe4, 0xd8, 0x58, 0xbb, 0xb7, 0x83, 0xe3, 0xa6, 0x82, 0xaf, 0xc3, + 0xfb, 0x98, 0xfe, 0x6d, +}; +static const unsigned char kat3885_addinpr2[] = {0}; +static const unsigned char kat3885_retbits[] = { + 0x2f, 0x78, 0x72, 0xa7, 0x04, 0xeb, 0x27, 0x6a, 0xfa, 0xd3, 0xef, 0xb1, + 0x31, 0xe6, 0x7c, 0x4b, 0x95, 0x08, 0xff, 0xfd, 0xbb, 0x70, 0x4e, 0x8c, + 0x85, 0xc0, 0x7e, 0x61, 0x32, 0x74, 0x59, 0x41, 0xa8, 0x88, 0x9f, 0xfc, + 0x37, 0xba, 0xa6, 0x37, 0xa1, 0xb7, 0xb7, 0xb0, 0xb8, 0x4f, 0xbf, 0xdb, + 0x8f, 0xbc, 0x00, 0xe7, 0xf1, 0xef, 0xf5, 0x0b, 0xaf, 0x2d, 0x06, 0x2d, + 0x84, 0x34, 0xbb, 0xa2, +}; +static const struct drbg_kat_pr_true kat3885_t = { + 14, kat3885_entropyin, kat3885_nonce, kat3885_persstr, + kat3885_entropyinpr1, kat3885_addinpr1, kat3885_entropyinpr2, + kat3885_addinpr2, kat3885_retbits +}; +static const struct drbg_kat kat3885 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3885_t +}; + +static const unsigned char kat3886_entropyin[] = { + 0xfe, 0xea, 0x3b, 0x69, 0x64, 0x66, 0x4c, 0x58, 0xbc, 0x58, 0xf5, 0xac, + 0x8f, 0x0e, 0x9d, 0x35, 0xd3, 0xcc, 0xf8, 0x72, 0x20, 0xbb, 0x5e, 0x7a, + 0x84, 0xc1, 0x3c, 0x68, 0xcd, 0x9a, 0x28, 0xf1, 0xff, 0x57, 0x66, 0x75, + 0x22, 0x4c, 0x84, 0xc2, +}; +static const unsigned char kat3886_nonce[] = {0}; +static const unsigned char kat3886_persstr[] = { + 0xee, 0xba, 0xc7, 0x11, 0xed, 0xbb, 0x40, 0x34, 0xa7, 0xd7, 0xfd, 0x17, + 0xc3, 0x01, 0x46, 0x7b, 0xb1, 0x36, 0x9b, 0x85, 0xae, 0xff, 0x93, 0xdb, + 0xe8, 0x2b, 0xce, 0x80, 0x3c, 0xa0, 0x59, 0x49, 0x2c, 0xaf, 0x3e, 0x96, + 0xb5, 0xf0, 0x1d, 0x83, +}; +static const unsigned char kat3886_entropyinpr1[] = { + 0xab, 0x87, 0xb8, 0x1b, 0x15, 0xe4, 0x20, 0x3c, 0xed, 0x5d, 0xcf, 0xa7, + 0xa2, 0xe9, 0x2f, 0x71, 0x78, 0x48, 0x32, 0xa5, 0xc4, 0x7f, 0x00, 0x54, + 0x85, 0x0f, 0xf3, 0x2a, 0x06, 0xc6, 0x87, 0x47, 0x47, 0x44, 0x6c, 0x69, + 0xcb, 0x48, 0x1e, 0xf4, +}; +static const unsigned char kat3886_addinpr1[] = { + 0xa5, 0x50, 0x0c, 0x3f, 0x37, 0xb2, 0x0c, 0xec, 0x33, 0x91, 0xef, 0xfc, + 0xac, 0x45, 0x67, 0x66, 0x74, 0xab, 0x8a, 0xba, 0x5f, 0x96, 0x90, 0x51, + 0x7b, 0x80, 0xeb, 0x6d, 0x26, 0x10, 0xf8, 0x32, 0x56, 0x41, 0x28, 0xf8, + 0x7c, 0x4f, 0x88, 0xb2, +}; +static const unsigned char kat3886_entropyinpr2[] = { + 0x29, 0xde, 0x4f, 0x15, 0xb4, 0x89, 0xc4, 0xe8, 0xcd, 0xc7, 0x32, 0x44, + 0x57, 0x00, 0x12, 0xb4, 0x43, 0xa1, 0x24, 0x2f, 0x28, 0xf9, 0xdd, 0x7f, + 0xa4, 0x3f, 0x98, 0x29, 0x3a, 0x0e, 0x49, 0x0a, 0xef, 0x28, 0x1e, 0xea, + 0x13, 0xd1, 0xe1, 0x36, +}; +static const unsigned char kat3886_addinpr2[] = { + 0x61, 0x38, 0x44, 0x43, 0xe0, 0x7a, 0x56, 0x59, 0xc7, 0xbd, 0xb9, 0xbf, + 0x9f, 0x3f, 0xde, 0x67, 0x7a, 0xd9, 0x57, 0x37, 0xe9, 0x26, 0x0b, 0x53, + 0x63, 0x5f, 0xd7, 0xb9, 0xd4, 0xb6, 0x3a, 0x79, 0x95, 0x86, 0x12, 0x85, + 0xee, 0x61, 0x32, 0x65, +}; +static const unsigned char kat3886_retbits[] = { + 0x2f, 0x19, 0x57, 0x0a, 0x4e, 0xeb, 0xe4, 0x6b, 0x24, 0x10, 0x4c, 0x44, + 0x29, 0x0a, 0x1c, 0x20, 0x6d, 0xaa, 0xaa, 0xf9, 0x9d, 0x43, 0xf0, 0x53, + 0x0d, 0xf4, 0x18, 0x33, 0x22, 0xbd, 0x79, 0x8d, 0x08, 0xd7, 0x95, 0xc2, + 0x8e, 0x9f, 0x67, 0xae, 0x24, 0x50, 0x7b, 0xe4, 0x81, 0xde, 0xab, 0xb4, + 0xf7, 0x60, 0xd2, 0xf6, 0x93, 0xcd, 0x0a, 0xf2, 0x36, 0xb0, 0xba, 0x59, + 0x96, 0x80, 0x6e, 0x34, +}; +static const struct drbg_kat_pr_true kat3886_t = { + 0, kat3886_entropyin, kat3886_nonce, kat3886_persstr, + kat3886_entropyinpr1, kat3886_addinpr1, kat3886_entropyinpr2, + kat3886_addinpr2, kat3886_retbits +}; +static const struct drbg_kat kat3886 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3886_t +}; + +static const unsigned char kat3887_entropyin[] = { + 0x1f, 0x43, 0x40, 0x8a, 0xce, 0xac, 0x5a, 0xe3, 0xfa, 0xe7, 0x3d, 0x8a, + 0x56, 0xd9, 0xdf, 0xbc, 0x3a, 0x4c, 0x83, 0xe1, 0x6d, 0x76, 0x11, 0xea, + 0x5b, 0x34, 0x58, 0x79, 0x27, 0x36, 0x60, 0x4e, 0x77, 0xc3, 0xc7, 0xe5, + 0x08, 0x94, 0xab, 0x13, +}; +static const unsigned char kat3887_nonce[] = {0}; +static const unsigned char kat3887_persstr[] = { + 0x43, 0x75, 0x5b, 0x49, 0x6a, 0x73, 0x1c, 0x26, 0x41, 0x2d, 0xf6, 0x8a, + 0x28, 0x58, 0x48, 0x0e, 0x8f, 0x4b, 0x64, 0xbd, 0xeb, 0x11, 0xd5, 0x31, + 0xbe, 0x87, 0xba, 0x4d, 0x9e, 0xf6, 0x8b, 0x7b, 0x34, 0xe6, 0x8f, 0x3c, + 0x61, 0xe5, 0x7c, 0xf6, +}; +static const unsigned char kat3887_entropyinpr1[] = { + 0xbc, 0x06, 0x41, 0x09, 0x73, 0x8d, 0x79, 0xe6, 0xa0, 0x05, 0x90, 0x73, + 0xce, 0xd6, 0xcf, 0xd3, 0x34, 0x7d, 0xe0, 0x89, 0x28, 0x53, 0x4a, 0xb7, + 0xd2, 0xa3, 0x8c, 0x8e, 0xb1, 0xf3, 0x20, 0x7d, 0x34, 0xa5, 0xcc, 0x29, + 0xd8, 0x7b, 0x37, 0x58, +}; +static const unsigned char kat3887_addinpr1[] = { + 0x55, 0xd7, 0xb4, 0x31, 0x37, 0x8a, 0x16, 0x36, 0xa9, 0x5e, 0x21, 0xc8, + 0xd0, 0x08, 0xed, 0x35, 0x65, 0x9c, 0xc1, 0x23, 0x39, 0x60, 0x88, 0x99, + 0xc5, 0x87, 0x9e, 0x5e, 0xbd, 0xbb, 0x16, 0xc2, 0x3a, 0x8c, 0xa0, 0xa5, + 0x13, 0xf9, 0x2a, 0x3e, +}; +static const unsigned char kat3887_entropyinpr2[] = { + 0xc1, 0x49, 0xc4, 0x83, 0x0b, 0x17, 0xa1, 0x35, 0x1d, 0x3a, 0x66, 0x91, + 0x66, 0x08, 0x24, 0x19, 0x95, 0x65, 0xba, 0x34, 0x85, 0xe9, 0x26, 0xdb, + 0x0a, 0xd2, 0x96, 0xa4, 0x36, 0xde, 0x09, 0xc6, 0x55, 0xdd, 0xc2, 0x9d, + 0x79, 0xd8, 0xfb, 0x36, +}; +static const unsigned char kat3887_addinpr2[] = { + 0x8f, 0x47, 0xa0, 0xb3, 0xe4, 0x44, 0x5b, 0x79, 0x31, 0x3e, 0xcf, 0x02, + 0xc9, 0xa8, 0x40, 0x7b, 0xf0, 0x6f, 0x18, 0x10, 0x3a, 0xb2, 0xa2, 0xc0, + 0xa8, 0x41, 0x55, 0x91, 0x4c, 0x0a, 0x1e, 0xed, 0x78, 0x7d, 0x81, 0xe0, + 0xd2, 0x62, 0x56, 0x59, +}; +static const unsigned char kat3887_retbits[] = { + 0x3a, 0x51, 0xde, 0x2b, 0x18, 0xba, 0xf2, 0x52, 0x8a, 0x48, 0x0c, 0xc3, + 0xde, 0x67, 0xdb, 0xf9, 0xf4, 0x30, 0x39, 0x21, 0x7f, 0x89, 0x88, 0x13, + 0x2f, 0x98, 0xab, 0x34, 0x89, 0x12, 0xa3, 0xc4, 0xe0, 0xe9, 0x37, 0xf4, + 0x3b, 0x29, 0xc4, 0x8b, 0xda, 0x5e, 0x66, 0x8c, 0x97, 0xa5, 0x9a, 0x4d, + 0x81, 0x9f, 0x02, 0x6f, 0xfa, 0x9a, 0x10, 0x7c, 0x08, 0xa3, 0x03, 0x5d, + 0x6a, 0xc6, 0x87, 0x3c, +}; +static const struct drbg_kat_pr_true kat3887_t = { + 1, kat3887_entropyin, kat3887_nonce, kat3887_persstr, + kat3887_entropyinpr1, kat3887_addinpr1, kat3887_entropyinpr2, + kat3887_addinpr2, kat3887_retbits +}; +static const struct drbg_kat kat3887 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3887_t +}; + +static const unsigned char kat3888_entropyin[] = { + 0xad, 0x8a, 0xae, 0xa9, 0xc2, 0x16, 0x4e, 0x70, 0x81, 0xb8, 0xe9, 0x98, + 0xb9, 0xae, 0x7b, 0xf9, 0xcf, 0xf7, 0xe2, 0xa2, 0x29, 0xa9, 0x14, 0x06, + 0xab, 0x46, 0x10, 0x58, 0xe5, 0x44, 0xf1, 0xef, 0xfe, 0x23, 0x57, 0x09, + 0x0c, 0xc5, 0x31, 0xb8, +}; +static const unsigned char kat3888_nonce[] = {0}; +static const unsigned char kat3888_persstr[] = { + 0xc6, 0x95, 0x54, 0x86, 0x98, 0xe8, 0x04, 0x6f, 0xae, 0x63, 0x64, 0x46, + 0x81, 0x26, 0x38, 0x12, 0x6d, 0x1f, 0xdf, 0xbc, 0xc7, 0x2e, 0x14, 0x1a, + 0x45, 0xbd, 0x59, 0xd7, 0xdc, 0xd5, 0x80, 0x0b, 0x0d, 0x74, 0xef, 0x7b, + 0x79, 0x96, 0x2f, 0xc5, +}; +static const unsigned char kat3888_entropyinpr1[] = { + 0x19, 0x5e, 0x30, 0x02, 0x58, 0x47, 0xc4, 0xa6, 0x8b, 0x38, 0xa2, 0x93, + 0xed, 0x67, 0xe5, 0xa7, 0x17, 0x4b, 0x50, 0x1e, 0xa1, 0x8b, 0xd5, 0xfd, + 0x86, 0xb0, 0xdc, 0x27, 0x24, 0x8c, 0xd4, 0xc5, 0x79, 0xc3, 0x65, 0x1b, + 0x7f, 0x3b, 0xef, 0xc6, +}; +static const unsigned char kat3888_addinpr1[] = { + 0xbb, 0xbd, 0xdd, 0x2e, 0x31, 0x44, 0x78, 0x1e, 0xa3, 0x22, 0x25, 0x6c, + 0x16, 0x90, 0x04, 0xc9, 0xcf, 0xc8, 0xe8, 0xb7, 0xce, 0x31, 0x97, 0xa6, + 0x74, 0x9e, 0x7d, 0x47, 0x3f, 0x2a, 0xd6, 0x1a, 0xe8, 0x28, 0x05, 0x00, + 0x7e, 0x9d, 0xf2, 0xde, +}; +static const unsigned char kat3888_entropyinpr2[] = { + 0x60, 0x68, 0xd0, 0x01, 0x30, 0xc5, 0xfa, 0x61, 0x89, 0x28, 0x88, 0xa7, + 0xba, 0xa4, 0x59, 0x74, 0xd4, 0x08, 0xe4, 0xdd, 0x9e, 0x21, 0x1e, 0xa8, + 0x30, 0x33, 0x00, 0xdf, 0x07, 0x06, 0x5e, 0xf0, 0x85, 0xf0, 0x8c, 0xcf, + 0x4f, 0xa0, 0x86, 0x84, +}; +static const unsigned char kat3888_addinpr2[] = { + 0x08, 0x35, 0x04, 0x9c, 0x8f, 0x61, 0x4c, 0x28, 0x79, 0x49, 0x6d, 0x52, + 0xfa, 0x74, 0x1d, 0xfd, 0x2b, 0x19, 0x86, 0x1b, 0x5b, 0xc7, 0x70, 0x81, + 0xf6, 0x07, 0xf0, 0x9e, 0x52, 0xac, 0xef, 0x06, 0x20, 0x09, 0x69, 0x57, + 0xa2, 0x78, 0xca, 0x10, +}; +static const unsigned char kat3888_retbits[] = { + 0x97, 0xd1, 0x78, 0x9e, 0xfe, 0x77, 0x50, 0xc3, 0x5f, 0x06, 0x6a, 0x6a, + 0x71, 0xfa, 0x5b, 0x57, 0x1e, 0x9f, 0x8f, 0x5b, 0x07, 0x07, 0x97, 0xe7, + 0x75, 0xee, 0x06, 0xd8, 0x6f, 0xe5, 0x20, 0x4e, 0x8a, 0x57, 0xf9, 0xd1, + 0x8d, 0xae, 0x51, 0x0f, 0x3c, 0xd3, 0x33, 0xec, 0x9f, 0x5c, 0xa2, 0xf5, + 0xe3, 0x46, 0x12, 0x5d, 0x73, 0xe2, 0xe3, 0xf2, 0x1b, 0xc0, 0x2d, 0x85, + 0xd0, 0x95, 0x70, 0xef, +}; +static const struct drbg_kat_pr_true kat3888_t = { + 2, kat3888_entropyin, kat3888_nonce, kat3888_persstr, + kat3888_entropyinpr1, kat3888_addinpr1, kat3888_entropyinpr2, + kat3888_addinpr2, kat3888_retbits +}; +static const struct drbg_kat kat3888 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3888_t +}; + +static const unsigned char kat3889_entropyin[] = { + 0x72, 0x39, 0x23, 0x00, 0x5d, 0xe0, 0x92, 0x1a, 0x16, 0x1b, 0xb2, 0x01, + 0x9e, 0x50, 0xec, 0x70, 0x6d, 0x9e, 0xb0, 0xef, 0xa5, 0x04, 0x76, 0x00, + 0xd9, 0x29, 0x1c, 0xea, 0x15, 0x76, 0xa1, 0x4d, 0xe9, 0x27, 0x04, 0xff, + 0x21, 0x67, 0xd1, 0x4b, +}; +static const unsigned char kat3889_nonce[] = {0}; +static const unsigned char kat3889_persstr[] = { + 0xd8, 0x6d, 0xef, 0xdf, 0xf1, 0xb7, 0xaf, 0x29, 0x28, 0xed, 0x06, 0x14, + 0xd4, 0xb8, 0xe2, 0x3a, 0xb9, 0xdb, 0x8b, 0xa6, 0x04, 0x0f, 0x74, 0xb5, + 0xfd, 0xb8, 0xfe, 0x7a, 0xdc, 0xe3, 0xb1, 0xd4, 0x39, 0xf5, 0xb4, 0x92, + 0x9b, 0x2e, 0xa8, 0xc9, +}; +static const unsigned char kat3889_entropyinpr1[] = { + 0x29, 0x01, 0xc8, 0xd6, 0x34, 0x60, 0x15, 0xd6, 0x7f, 0x4e, 0x77, 0xbe, + 0x17, 0xdd, 0x1d, 0xe1, 0x44, 0x18, 0x5d, 0xc9, 0x43, 0x86, 0x96, 0x47, + 0x45, 0xfa, 0x78, 0xcd, 0xdd, 0x9e, 0x00, 0xa2, 0xd4, 0xb2, 0x1c, 0xbc, + 0xc3, 0x8f, 0x24, 0x93, +}; +static const unsigned char kat3889_addinpr1[] = { + 0xe1, 0xe6, 0xbd, 0xe7, 0x11, 0x13, 0x53, 0x17, 0x97, 0x38, 0xad, 0x2b, + 0xdd, 0x44, 0x53, 0x6c, 0x84, 0x33, 0xe4, 0x44, 0x3a, 0xf3, 0xa8, 0x07, + 0x88, 0xe3, 0x98, 0x17, 0xf2, 0xf1, 0xf0, 0xce, 0xcd, 0x45, 0xa6, 0x3c, + 0xec, 0x7c, 0x63, 0x6e, +}; +static const unsigned char kat3889_entropyinpr2[] = { + 0xcf, 0x98, 0xb8, 0x58, 0xc1, 0xa8, 0x3c, 0x72, 0x8a, 0xdf, 0xdf, 0x33, + 0xae, 0x3e, 0x54, 0x7b, 0xf4, 0x0a, 0xaf, 0xdf, 0x57, 0xf0, 0x3a, 0xc5, + 0xd4, 0xf8, 0x22, 0x09, 0x64, 0xf0, 0x7d, 0x8e, 0xa7, 0xfe, 0x2b, 0x06, + 0xfa, 0x16, 0xed, 0xda, +}; +static const unsigned char kat3889_addinpr2[] = { + 0xdf, 0xd4, 0xae, 0x3a, 0x33, 0x05, 0xbe, 0xa1, 0x60, 0x69, 0x35, 0x01, + 0x06, 0x38, 0xde, 0xd1, 0xcf, 0x05, 0x19, 0x1b, 0x7c, 0x32, 0x50, 0x9a, + 0xf5, 0x26, 0xad, 0xc3, 0x9c, 0xc8, 0x14, 0x30, 0xcb, 0x05, 0xea, 0xb0, + 0x37, 0xd9, 0xcf, 0x20, +}; +static const unsigned char kat3889_retbits[] = { + 0x80, 0xdf, 0xe5, 0xab, 0x68, 0x8c, 0x7a, 0x91, 0xa6, 0x49, 0xda, 0x94, + 0x23, 0x95, 0xe1, 0xbd, 0xf3, 0xe8, 0x2a, 0x89, 0x62, 0xca, 0x9b, 0x76, + 0x5e, 0x6b, 0xdd, 0xb0, 0x89, 0x75, 0x57, 0x8c, 0xd8, 0xf4, 0xfa, 0x0b, + 0xcd, 0xff, 0xd5, 0x71, 0xb6, 0x0e, 0xd7, 0xea, 0x6e, 0x1d, 0x8a, 0xe6, + 0x2f, 0x44, 0xc7, 0xd2, 0xac, 0x78, 0x3b, 0xaa, 0x0a, 0x08, 0xb8, 0xb6, + 0x35, 0xe6, 0x0d, 0xf4, +}; +static const struct drbg_kat_pr_true kat3889_t = { + 3, kat3889_entropyin, kat3889_nonce, kat3889_persstr, + kat3889_entropyinpr1, kat3889_addinpr1, kat3889_entropyinpr2, + kat3889_addinpr2, kat3889_retbits +}; +static const struct drbg_kat kat3889 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3889_t +}; + +static const unsigned char kat3890_entropyin[] = { + 0x49, 0xed, 0x3a, 0xd0, 0xa1, 0x8d, 0x33, 0x22, 0xdd, 0xfa, 0xcc, 0x61, + 0x2c, 0x0b, 0xb0, 0xa6, 0x0d, 0x2c, 0x2f, 0x3d, 0xc9, 0xfc, 0x47, 0x5f, + 0x05, 0x9a, 0x4c, 0xed, 0xef, 0x64, 0xb3, 0x63, 0xc5, 0xda, 0x85, 0xc9, + 0xbd, 0x0a, 0x3b, 0x7d, +}; +static const unsigned char kat3890_nonce[] = {0}; +static const unsigned char kat3890_persstr[] = { + 0xac, 0x5a, 0x21, 0x52, 0x13, 0x60, 0xe8, 0xcf, 0xbc, 0x95, 0xb4, 0x3c, + 0x78, 0x52, 0x97, 0xec, 0x3e, 0xb1, 0x82, 0x76, 0x6e, 0x51, 0x82, 0xc4, + 0x91, 0x18, 0x73, 0x20, 0x44, 0xc0, 0x97, 0x4d, 0xed, 0x08, 0x86, 0xee, + 0x74, 0x6e, 0x8d, 0x57, +}; +static const unsigned char kat3890_entropyinpr1[] = { + 0x60, 0xb4, 0xd2, 0xb1, 0x74, 0xf6, 0x89, 0x7a, 0x4c, 0xc6, 0x54, 0xc8, + 0xfc, 0x94, 0xf2, 0xd2, 0x4e, 0xbb, 0x01, 0x36, 0xed, 0x25, 0x8c, 0x02, + 0x48, 0xb9, 0x60, 0x56, 0x73, 0x68, 0xdf, 0xd3, 0xdd, 0xdb, 0x26, 0x22, + 0xea, 0x7a, 0xb1, 0x46, +}; +static const unsigned char kat3890_addinpr1[] = { + 0xff, 0x65, 0x59, 0x67, 0xf7, 0xc3, 0x48, 0x23, 0xaf, 0x42, 0xb4, 0xb0, + 0x1e, 0x2d, 0x56, 0xe9, 0x9e, 0x03, 0xfa, 0x3d, 0xf6, 0xe2, 0x07, 0xb0, + 0xfe, 0x68, 0x14, 0x95, 0x71, 0xa1, 0x78, 0x8c, 0xb2, 0x1b, 0x20, 0x0d, + 0x31, 0x32, 0xe2, 0x0f, +}; +static const unsigned char kat3890_entropyinpr2[] = { + 0x72, 0x0e, 0xc5, 0x9f, 0x91, 0xdb, 0x36, 0x98, 0x55, 0xb3, 0x3e, 0xbb, + 0x1a, 0xe3, 0xeb, 0xcd, 0x36, 0x72, 0x28, 0xe5, 0x94, 0x74, 0x89, 0xc5, + 0x39, 0xe7, 0xe0, 0x2f, 0x7f, 0xc5, 0x25, 0x96, 0xfb, 0x5b, 0x51, 0xd8, + 0x77, 0x82, 0x92, 0x9c, +}; +static const unsigned char kat3890_addinpr2[] = { + 0x03, 0x81, 0x25, 0x3e, 0xfb, 0x19, 0x3e, 0xa5, 0x74, 0xe0, 0x93, 0xda, + 0x57, 0x39, 0x1b, 0x23, 0x9a, 0xad, 0xb1, 0xe5, 0x72, 0x12, 0xb6, 0xee, + 0x17, 0xfd, 0xaa, 0x4d, 0x9b, 0x66, 0x4c, 0xe0, 0xd8, 0x7b, 0x3a, 0xd3, + 0xfa, 0x9a, 0x39, 0x7d, +}; +static const unsigned char kat3890_retbits[] = { + 0xf0, 0xd7, 0x0c, 0xfe, 0x38, 0x13, 0x3e, 0x2b, 0x2b, 0xe3, 0x18, 0xd0, + 0x63, 0xe7, 0x26, 0xe6, 0x1d, 0xb8, 0xa8, 0x77, 0x57, 0x63, 0x7e, 0x3a, + 0x51, 0x2c, 0xa5, 0xfc, 0x2c, 0xd4, 0x2a, 0xd9, 0x5a, 0x69, 0x67, 0x41, + 0xa8, 0x38, 0xa8, 0x77, 0x27, 0xf2, 0xda, 0xb0, 0x51, 0xc0, 0x8c, 0x8d, + 0x2b, 0xea, 0x09, 0x8c, 0x87, 0xfe, 0xc0, 0x19, 0xb4, 0x87, 0x62, 0x40, + 0x9d, 0x52, 0x85, 0x44, +}; +static const struct drbg_kat_pr_true kat3890_t = { + 4, kat3890_entropyin, kat3890_nonce, kat3890_persstr, + kat3890_entropyinpr1, kat3890_addinpr1, kat3890_entropyinpr2, + kat3890_addinpr2, kat3890_retbits +}; +static const struct drbg_kat kat3890 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3890_t +}; + +static const unsigned char kat3891_entropyin[] = { + 0x23, 0xcf, 0xde, 0x18, 0x21, 0xb2, 0xcc, 0x19, 0xa5, 0x1c, 0x94, 0x4f, + 0xa9, 0xd1, 0xc5, 0x77, 0xdd, 0x6d, 0x8f, 0xee, 0x18, 0x60, 0xab, 0x16, + 0xf0, 0xb0, 0x9d, 0x76, 0xa5, 0x97, 0x27, 0x9e, 0x30, 0xe0, 0x87, 0x3a, + 0x45, 0x82, 0xfb, 0xb7, +}; +static const unsigned char kat3891_nonce[] = {0}; +static const unsigned char kat3891_persstr[] = { + 0x76, 0x7a, 0x0f, 0xd5, 0x8d, 0x3c, 0xff, 0xcb, 0xa7, 0x9f, 0x23, 0x0c, + 0xe0, 0x37, 0x5c, 0x60, 0x29, 0xb7, 0xdf, 0xb6, 0xa7, 0xdb, 0x4f, 0x35, + 0xe7, 0xc9, 0x49, 0x16, 0x10, 0x1e, 0x64, 0x2b, 0xd1, 0xc8, 0x60, 0x20, + 0x1d, 0x1e, 0xd3, 0x6a, +}; +static const unsigned char kat3891_entropyinpr1[] = { + 0xa0, 0xf6, 0xec, 0xdc, 0x1e, 0x7f, 0x78, 0x66, 0x74, 0x47, 0x23, 0xd6, + 0xc2, 0x44, 0xd1, 0x87, 0xe7, 0x9c, 0x92, 0x3c, 0x1e, 0x8d, 0x81, 0x1f, + 0x1f, 0x6a, 0xdf, 0x70, 0x53, 0x73, 0x4a, 0x17, 0xba, 0x55, 0x30, 0xe5, + 0xd5, 0xc3, 0x27, 0x20, +}; +static const unsigned char kat3891_addinpr1[] = { + 0x23, 0x16, 0x64, 0x91, 0xe6, 0xa8, 0x67, 0x73, 0xfa, 0x3b, 0x2a, 0x9e, + 0x82, 0x27, 0x3e, 0x01, 0x7a, 0x57, 0xc2, 0xac, 0xbb, 0x82, 0x98, 0x2b, + 0x7d, 0x7d, 0x41, 0x81, 0xc0, 0x2a, 0x7e, 0xcb, 0x72, 0x00, 0x87, 0x00, + 0xe4, 0x78, 0x51, 0x1b, +}; +static const unsigned char kat3891_entropyinpr2[] = { + 0xec, 0x61, 0xcf, 0xb3, 0x93, 0xb5, 0x66, 0xaa, 0x03, 0x4e, 0x50, 0x7f, + 0x20, 0xd5, 0x4d, 0x5a, 0x17, 0x83, 0xaa, 0x53, 0xbc, 0x6e, 0xdd, 0xef, + 0xc4, 0x1c, 0xac, 0xcc, 0x4d, 0xd0, 0x36, 0x1c, 0x0c, 0xcd, 0x0a, 0x24, + 0x86, 0x0e, 0xc2, 0x6a, +}; +static const unsigned char kat3891_addinpr2[] = { + 0x95, 0xbf, 0x7d, 0xb9, 0xaf, 0x68, 0xd3, 0x3a, 0xcd, 0x0e, 0x6c, 0xf4, + 0x12, 0x8d, 0xf5, 0x63, 0xb4, 0x70, 0x7d, 0xf8, 0x67, 0x1b, 0xda, 0x46, + 0x21, 0x51, 0xe9, 0x18, 0xa3, 0x43, 0x10, 0x2e, 0x05, 0xed, 0x28, 0x13, + 0xb3, 0x27, 0x20, 0xab, +}; +static const unsigned char kat3891_retbits[] = { + 0xe9, 0xab, 0x16, 0x17, 0x74, 0x9f, 0x21, 0x42, 0xe0, 0xcc, 0xf3, 0x2f, + 0xd9, 0x2c, 0x7e, 0x17, 0xff, 0xf3, 0xff, 0x49, 0xa6, 0x44, 0x24, 0xaf, + 0x4b, 0x3b, 0xe1, 0x0b, 0x37, 0x12, 0xf1, 0xf6, 0x48, 0xbd, 0x00, 0x59, + 0x12, 0xcc, 0x18, 0x51, 0xb2, 0xe4, 0xc6, 0x5f, 0x6e, 0xdd, 0xe2, 0xf1, + 0x92, 0x01, 0xea, 0x92, 0x7d, 0x3e, 0x6d, 0xb8, 0xfe, 0xbb, 0xa2, 0x1b, + 0xc4, 0x50, 0xff, 0xf7, +}; +static const struct drbg_kat_pr_true kat3891_t = { + 5, kat3891_entropyin, kat3891_nonce, kat3891_persstr, + kat3891_entropyinpr1, kat3891_addinpr1, kat3891_entropyinpr2, + kat3891_addinpr2, kat3891_retbits +}; +static const struct drbg_kat kat3891 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3891_t +}; + +static const unsigned char kat3892_entropyin[] = { + 0xd5, 0x3b, 0xc6, 0x6b, 0xfe, 0x73, 0x25, 0x96, 0xff, 0x9c, 0xe4, 0xdf, + 0xe6, 0x57, 0xa0, 0xe9, 0x4a, 0x7a, 0x66, 0x0a, 0x68, 0xb0, 0xcd, 0x7a, + 0x4d, 0xcf, 0xd4, 0x72, 0xaf, 0xc5, 0xc6, 0xea, 0xfb, 0x2d, 0x21, 0xcf, + 0x58, 0x0a, 0x57, 0x69, +}; +static const unsigned char kat3892_nonce[] = {0}; +static const unsigned char kat3892_persstr[] = { + 0x42, 0x4d, 0x16, 0xf1, 0xe9, 0x43, 0x7d, 0xdc, 0x9b, 0x14, 0xbe, 0xdc, + 0x39, 0x08, 0x6a, 0x7d, 0xa8, 0x92, 0x36, 0xe3, 0x70, 0x39, 0x2c, 0xfb, + 0xb0, 0xe7, 0x79, 0x14, 0xbf, 0xfe, 0xea, 0xce, 0xf5, 0x98, 0x44, 0xbf, + 0xd6, 0x2c, 0xd2, 0xaf, +}; +static const unsigned char kat3892_entropyinpr1[] = { + 0xcb, 0xde, 0x0a, 0x1b, 0x71, 0x17, 0xa6, 0x16, 0x31, 0xfa, 0x5f, 0x55, + 0xab, 0xd6, 0x78, 0x27, 0x09, 0xd7, 0x44, 0xfd, 0xe5, 0x3b, 0x08, 0x81, + 0x3a, 0x48, 0x40, 0x8e, 0x15, 0x48, 0x0a, 0xb4, 0xa6, 0x03, 0xbd, 0xc1, + 0xb4, 0x43, 0xe1, 0x06, +}; +static const unsigned char kat3892_addinpr1[] = { + 0x14, 0xba, 0xc6, 0x6e, 0xc0, 0x43, 0x97, 0x4d, 0x03, 0xe9, 0x24, 0xa1, + 0x88, 0xdc, 0xa9, 0xf8, 0x43, 0x20, 0xc3, 0x16, 0x94, 0x97, 0x2f, 0xbb, + 0x13, 0x6b, 0x51, 0x63, 0x82, 0x87, 0xa8, 0x7a, 0xe6, 0xd6, 0x68, 0x0c, + 0x32, 0xe6, 0x30, 0x8b, +}; +static const unsigned char kat3892_entropyinpr2[] = { + 0xd1, 0x84, 0x1a, 0x45, 0x13, 0x91, 0x05, 0xa6, 0x6b, 0xfe, 0xf0, 0x96, + 0xd5, 0x84, 0xc5, 0xf3, 0x8b, 0x93, 0xc2, 0x70, 0xf2, 0x97, 0x6d, 0x9a, + 0x6f, 0xc5, 0x1c, 0x9c, 0xe4, 0x4c, 0xf9, 0x0a, 0xc0, 0x62, 0xf9, 0x90, + 0x2f, 0x4c, 0x54, 0x11, +}; +static const unsigned char kat3892_addinpr2[] = { + 0x76, 0xb2, 0x95, 0xd8, 0xe6, 0x89, 0xea, 0xcd, 0x79, 0x77, 0x42, 0xb5, + 0x22, 0xa5, 0x70, 0x7f, 0xcb, 0x14, 0x80, 0xc8, 0x8b, 0xb2, 0xa8, 0xd2, + 0x88, 0x0d, 0x5b, 0x7d, 0x93, 0x6a, 0x4f, 0x7c, 0xd6, 0xaf, 0x0a, 0x11, + 0x15, 0xe8, 0x3b, 0x74, +}; +static const unsigned char kat3892_retbits[] = { + 0xb1, 0xf8, 0xb5, 0xf6, 0xa9, 0x9b, 0x51, 0x58, 0x00, 0x02, 0xc9, 0xea, + 0xd7, 0x0e, 0xb0, 0x16, 0x97, 0xff, 0x1f, 0x0e, 0x01, 0x41, 0xfe, 0x86, + 0xb4, 0x46, 0xeb, 0x3a, 0x0b, 0x13, 0x46, 0x2a, 0x2c, 0x79, 0x85, 0xef, + 0x78, 0x43, 0xe2, 0xa0, 0x4c, 0x05, 0x07, 0x6b, 0xeb, 0x24, 0xed, 0xb9, + 0x2a, 0xcd, 0xcf, 0x6d, 0xaf, 0x0b, 0x32, 0x0e, 0xc8, 0x98, 0x07, 0xa5, + 0x8b, 0x39, 0xbd, 0x73, +}; +static const struct drbg_kat_pr_true kat3892_t = { + 6, kat3892_entropyin, kat3892_nonce, kat3892_persstr, + kat3892_entropyinpr1, kat3892_addinpr1, kat3892_entropyinpr2, + kat3892_addinpr2, kat3892_retbits +}; +static const struct drbg_kat kat3892 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3892_t +}; + +static const unsigned char kat3893_entropyin[] = { + 0x2b, 0x06, 0xa5, 0xb4, 0x75, 0x31, 0x72, 0xec, 0x3a, 0x9e, 0xa0, 0xd7, + 0x82, 0x92, 0xe9, 0x9c, 0xbb, 0x6c, 0x4f, 0x98, 0xf4, 0x79, 0xe7, 0x4b, + 0xf8, 0xe7, 0xc4, 0x3d, 0x48, 0xce, 0xbe, 0x2a, 0xfc, 0x51, 0xc4, 0x43, + 0xcc, 0x41, 0xe0, 0xc7, +}; +static const unsigned char kat3893_nonce[] = {0}; +static const unsigned char kat3893_persstr[] = { + 0x5b, 0xbe, 0xdb, 0xe4, 0x02, 0x80, 0x70, 0xfa, 0xd9, 0xf3, 0x80, 0x50, + 0x7c, 0x2a, 0x79, 0x24, 0x16, 0x28, 0xf7, 0xdc, 0xef, 0x9f, 0x24, 0x9c, + 0xf6, 0xc6, 0x0c, 0xb7, 0xee, 0x65, 0x3c, 0x5d, 0x16, 0x22, 0x62, 0x48, + 0x36, 0x0f, 0x19, 0x35, +}; +static const unsigned char kat3893_entropyinpr1[] = { + 0xfe, 0xa0, 0xf7, 0x8c, 0x7c, 0x6e, 0x25, 0x58, 0xc1, 0xc6, 0x18, 0x69, + 0x2d, 0x2e, 0x39, 0xb3, 0x5a, 0xb4, 0xc3, 0xaf, 0x4f, 0x27, 0xfe, 0x38, + 0xa3, 0x1c, 0xa0, 0x80, 0xc2, 0x6d, 0x99, 0x34, 0xe1, 0xa2, 0xe9, 0xb6, + 0x2a, 0xb8, 0xee, 0x1d, +}; +static const unsigned char kat3893_addinpr1[] = { + 0xac, 0x8f, 0x06, 0x6d, 0xde, 0x1f, 0x77, 0x16, 0x35, 0x82, 0x1a, 0x9b, + 0xe1, 0x0a, 0xa1, 0x2b, 0xd6, 0x34, 0x1b, 0x57, 0xdd, 0x7c, 0xb0, 0x1f, + 0x11, 0xa3, 0x5b, 0xe6, 0xa9, 0x47, 0x3b, 0x7d, 0x48, 0x65, 0x6b, 0x4a, + 0x7f, 0xcf, 0xc1, 0x7b, +}; +static const unsigned char kat3893_entropyinpr2[] = { + 0x33, 0x66, 0xcb, 0xc5, 0x4c, 0xba, 0x7c, 0x98, 0x9f, 0x65, 0x28, 0x0c, + 0xc5, 0xf0, 0xd5, 0xac, 0xcb, 0x62, 0x35, 0x06, 0xe8, 0x22, 0xe1, 0xd0, + 0xf2, 0x63, 0x68, 0xd1, 0x11, 0xa5, 0x7b, 0x2f, 0x69, 0x2c, 0x44, 0x63, + 0x7d, 0x97, 0x53, 0x9e, +}; +static const unsigned char kat3893_addinpr2[] = { + 0x74, 0x1c, 0x84, 0xce, 0xff, 0xa4, 0x61, 0x18, 0x83, 0xe5, 0x00, 0xcc, + 0xdc, 0xaa, 0x0b, 0x7e, 0x0a, 0x29, 0x7e, 0x2c, 0xb3, 0x74, 0xbb, 0x1c, + 0x29, 0xfe, 0xc8, 0x45, 0xd7, 0x03, 0x67, 0xfd, 0x0a, 0x7e, 0xc5, 0x7d, + 0x70, 0xd5, 0xf4, 0x06, +}; +static const unsigned char kat3893_retbits[] = { + 0xc1, 0x29, 0x38, 0x0b, 0xc3, 0x50, 0x11, 0x35, 0x2f, 0x27, 0xa9, 0x73, + 0x8e, 0x7a, 0x77, 0xa9, 0x15, 0x78, 0x4a, 0x59, 0x2d, 0xc2, 0x4a, 0xb7, + 0x5f, 0x46, 0x25, 0x97, 0xb2, 0xe1, 0x23, 0xaf, 0x3b, 0x38, 0x95, 0x97, + 0x1f, 0x9b, 0x5f, 0x1b, 0xe9, 0x60, 0xf0, 0xa4, 0xce, 0x2c, 0xa0, 0x96, + 0xd6, 0x6b, 0x5d, 0x05, 0x9f, 0xb2, 0x32, 0x7e, 0x3b, 0x8c, 0xeb, 0xb7, + 0xcc, 0xbf, 0x97, 0x74, +}; +static const struct drbg_kat_pr_true kat3893_t = { + 7, kat3893_entropyin, kat3893_nonce, kat3893_persstr, + kat3893_entropyinpr1, kat3893_addinpr1, kat3893_entropyinpr2, + kat3893_addinpr2, kat3893_retbits +}; +static const struct drbg_kat kat3893 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3893_t +}; + +static const unsigned char kat3894_entropyin[] = { + 0x88, 0xdf, 0x6a, 0x70, 0x23, 0x7d, 0xeb, 0x8f, 0x49, 0x4a, 0xf9, 0xed, + 0x56, 0x90, 0x04, 0x1b, 0x9a, 0x0b, 0x74, 0x1d, 0x2b, 0xf1, 0xcb, 0x61, + 0xec, 0x9c, 0x48, 0xa9, 0x3e, 0xfd, 0xbd, 0x3a, 0xac, 0xab, 0x82, 0xf6, + 0x9f, 0x03, 0x6c, 0xba, +}; +static const unsigned char kat3894_nonce[] = {0}; +static const unsigned char kat3894_persstr[] = { + 0x01, 0xc7, 0x01, 0x86, 0xc7, 0xbc, 0x95, 0xbc, 0xaf, 0x5c, 0x88, 0x04, + 0x37, 0x74, 0xdf, 0xcd, 0xa4, 0x40, 0x16, 0xb9, 0x1b, 0x29, 0x33, 0xc6, + 0x9c, 0x02, 0xce, 0x6c, 0x0e, 0x26, 0xe4, 0x23, 0x66, 0xe8, 0xfe, 0x87, + 0x21, 0x25, 0xdd, 0x30, +}; +static const unsigned char kat3894_entropyinpr1[] = { + 0xb5, 0x73, 0xc3, 0xf4, 0x61, 0x09, 0xa3, 0x81, 0xb3, 0xf1, 0xd3, 0xaa, + 0xeb, 0x90, 0x43, 0xc1, 0x86, 0xda, 0xdd, 0xf1, 0xeb, 0xe7, 0xb9, 0x21, + 0x6c, 0x61, 0x6c, 0x94, 0x4a, 0x97, 0x56, 0x46, 0xb2, 0x8c, 0x6d, 0x35, + 0xc2, 0xaf, 0xa7, 0xae, +}; +static const unsigned char kat3894_addinpr1[] = { + 0xbc, 0xde, 0x33, 0x35, 0x27, 0x71, 0x7e, 0x7b, 0x42, 0x7e, 0x6b, 0xb0, + 0x92, 0x65, 0x13, 0x9b, 0x92, 0xb4, 0x54, 0x0d, 0xa1, 0x65, 0x6b, 0x81, + 0xcc, 0x5b, 0x41, 0x9c, 0x71, 0xa2, 0x60, 0x59, 0xb2, 0x83, 0x6a, 0xce, + 0x94, 0x35, 0x0b, 0xb2, +}; +static const unsigned char kat3894_entropyinpr2[] = { + 0x77, 0x4d, 0x4c, 0x74, 0xd9, 0x86, 0x72, 0x1f, 0xa0, 0xd1, 0x5a, 0x9b, + 0x9c, 0xd6, 0x39, 0x43, 0x62, 0xa8, 0xf6, 0x3a, 0xfa, 0xc1, 0xf2, 0x19, + 0x5b, 0x52, 0x9f, 0x4b, 0xeb, 0xbb, 0x0e, 0xde, 0x28, 0x12, 0xc5, 0x54, + 0x91, 0xdf, 0x64, 0x72, +}; +static const unsigned char kat3894_addinpr2[] = { + 0xff, 0xc8, 0xe2, 0x7a, 0x9a, 0x49, 0x22, 0x2a, 0x4f, 0xe9, 0xee, 0xd1, + 0x59, 0xc1, 0x88, 0x29, 0xed, 0x2e, 0x11, 0xc6, 0xb3, 0xbd, 0xc6, 0x66, + 0x52, 0x4b, 0x73, 0x2a, 0xd5, 0x77, 0x20, 0xb6, 0x25, 0x60, 0x7b, 0xb3, + 0xc3, 0x98, 0xc7, 0x37, +}; +static const unsigned char kat3894_retbits[] = { + 0x4c, 0x22, 0x35, 0x4a, 0xaa, 0x9b, 0x9e, 0x29, 0x8b, 0x66, 0x5c, 0xd8, + 0x74, 0x7a, 0x21, 0x7d, 0x50, 0xb3, 0x8b, 0xaa, 0x24, 0x07, 0x72, 0x7d, + 0x8b, 0x0e, 0x1e, 0x35, 0x09, 0x61, 0x31, 0xf5, 0x92, 0x06, 0x31, 0x90, + 0xc7, 0xb6, 0xe9, 0xf8, 0x11, 0xb9, 0xbd, 0xae, 0x87, 0x09, 0xe6, 0x8d, + 0x60, 0xf7, 0x95, 0x3c, 0x3e, 0x3a, 0x45, 0x2b, 0xeb, 0x23, 0x3d, 0xea, + 0xd2, 0xcf, 0xbf, 0xe5, +}; +static const struct drbg_kat_pr_true kat3894_t = { + 8, kat3894_entropyin, kat3894_nonce, kat3894_persstr, + kat3894_entropyinpr1, kat3894_addinpr1, kat3894_entropyinpr2, + kat3894_addinpr2, kat3894_retbits +}; +static const struct drbg_kat kat3894 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3894_t +}; + +static const unsigned char kat3895_entropyin[] = { + 0x4a, 0x8e, 0x24, 0x50, 0x0f, 0x1f, 0xec, 0x02, 0x9b, 0x15, 0x8a, 0xed, + 0x18, 0xac, 0x92, 0xe4, 0x3e, 0xc8, 0xd6, 0xbc, 0xfa, 0x5f, 0x1a, 0x3b, + 0xcc, 0x6e, 0x60, 0x51, 0xac, 0x54, 0xee, 0xee, 0xb9, 0xa5, 0x5e, 0x81, + 0x8d, 0xb4, 0x5e, 0x66, +}; +static const unsigned char kat3895_nonce[] = {0}; +static const unsigned char kat3895_persstr[] = { + 0xaa, 0x73, 0x07, 0xd4, 0x38, 0x1d, 0xcc, 0x7b, 0xcb, 0xdb, 0xab, 0xe4, + 0x5b, 0x9e, 0x90, 0x46, 0x04, 0x92, 0x1c, 0xed, 0x1f, 0x33, 0x28, 0xdf, + 0x7a, 0x90, 0x77, 0x45, 0xb4, 0xb2, 0xe6, 0x5a, 0xa3, 0xb8, 0xa8, 0x19, + 0x20, 0x59, 0xe9, 0xf7, +}; +static const unsigned char kat3895_entropyinpr1[] = { + 0x02, 0x13, 0xd0, 0x90, 0x64, 0x18, 0xfe, 0x16, 0xb7, 0x95, 0x67, 0xa4, + 0x05, 0xfc, 0x06, 0x59, 0x62, 0x3f, 0xa3, 0x9a, 0x02, 0xa3, 0x77, 0x57, + 0x62, 0xc1, 0x3e, 0x10, 0x26, 0x0c, 0xc3, 0x71, 0x99, 0x3b, 0xa2, 0xa9, + 0x14, 0xea, 0x90, 0xf3, +}; +static const unsigned char kat3895_addinpr1[] = { + 0xd2, 0x82, 0x9c, 0xc1, 0xac, 0x9d, 0x9f, 0x3b, 0x4d, 0x37, 0x1d, 0x94, + 0xf5, 0x63, 0x75, 0x6b, 0x71, 0x33, 0x23, 0x08, 0x3a, 0x86, 0x7b, 0xc7, + 0xf6, 0x54, 0x88, 0x6d, 0x35, 0x38, 0x02, 0xb9, 0x6c, 0x66, 0xce, 0x80, + 0xde, 0x81, 0x53, 0xc5, +}; +static const unsigned char kat3895_entropyinpr2[] = { + 0x42, 0xbb, 0x19, 0x2f, 0x3f, 0x98, 0x1c, 0x2d, 0x4e, 0x33, 0x8e, 0xc3, + 0x37, 0xfa, 0x21, 0xb2, 0x11, 0x55, 0x6a, 0xb0, 0x60, 0xed, 0x9a, 0x9f, + 0x79, 0x97, 0x33, 0x45, 0x17, 0xf5, 0x37, 0x3e, 0x41, 0xab, 0x8f, 0x16, + 0x64, 0x6e, 0xda, 0xde, +}; +static const unsigned char kat3895_addinpr2[] = { + 0x5a, 0xa2, 0x51, 0x92, 0xd7, 0xbe, 0x04, 0x44, 0x4a, 0x3f, 0x02, 0x37, + 0x06, 0xce, 0x99, 0x5c, 0x0f, 0x06, 0x13, 0x18, 0x8d, 0xf4, 0x34, 0x2d, + 0x5a, 0x01, 0x92, 0x43, 0xcb, 0x7b, 0x0e, 0x5a, 0x82, 0x2a, 0xe7, 0x18, + 0x1e, 0x7f, 0x79, 0x00, +}; +static const unsigned char kat3895_retbits[] = { + 0xc7, 0xc9, 0xd3, 0xf4, 0x36, 0x5c, 0x28, 0x14, 0xe8, 0xc9, 0x8d, 0xa4, + 0xef, 0xb1, 0x0e, 0xaa, 0x39, 0xb2, 0xb1, 0xcd, 0x99, 0x80, 0x36, 0x8c, + 0x25, 0x26, 0x6d, 0xd5, 0x4f, 0xe9, 0x1f, 0xbe, 0x98, 0xcf, 0x61, 0x72, + 0x71, 0x98, 0x5e, 0x79, 0x2f, 0xe2, 0x43, 0x16, 0x4d, 0x36, 0xca, 0x0b, + 0xa4, 0x14, 0x0f, 0xb8, 0x6f, 0xaa, 0x01, 0x40, 0x79, 0x7b, 0x1d, 0x72, + 0x80, 0x73, 0xd5, 0x93, +}; +static const struct drbg_kat_pr_true kat3895_t = { + 9, kat3895_entropyin, kat3895_nonce, kat3895_persstr, + kat3895_entropyinpr1, kat3895_addinpr1, kat3895_entropyinpr2, + kat3895_addinpr2, kat3895_retbits +}; +static const struct drbg_kat kat3895 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3895_t +}; + +static const unsigned char kat3896_entropyin[] = { + 0x92, 0x7a, 0x1a, 0xe9, 0x56, 0x06, 0xaf, 0x0c, 0xea, 0x3a, 0x61, 0xa6, + 0x3b, 0xa2, 0x92, 0xd0, 0xdf, 0x0c, 0xae, 0x0e, 0x00, 0x9d, 0x2a, 0x3c, + 0xb3, 0x97, 0x93, 0xcb, 0xc2, 0xc8, 0xf6, 0x76, 0x7f, 0x07, 0xed, 0x63, + 0xd1, 0x33, 0xd0, 0x00, +}; +static const unsigned char kat3896_nonce[] = {0}; +static const unsigned char kat3896_persstr[] = { + 0xa0, 0x41, 0xc7, 0x75, 0x06, 0x90, 0xf0, 0xed, 0x70, 0x38, 0x13, 0x15, + 0x7f, 0xa9, 0xaf, 0xa1, 0x6f, 0xd0, 0xfe, 0x48, 0x97, 0x82, 0x62, 0x48, + 0x21, 0x01, 0xff, 0x14, 0xc7, 0xef, 0x9b, 0x98, 0x96, 0xc3, 0x2c, 0x70, + 0xda, 0xf8, 0x26, 0xa8, +}; +static const unsigned char kat3896_entropyinpr1[] = { + 0xe3, 0x1d, 0x3b, 0xf0, 0x74, 0x06, 0x1f, 0x72, 0x12, 0xe7, 0xbf, 0x77, + 0xc4, 0x57, 0xe1, 0xe0, 0x14, 0xf7, 0x09, 0xe6, 0x09, 0xdc, 0xa5, 0x30, + 0x39, 0x50, 0x72, 0x31, 0x9a, 0xcd, 0xe5, 0x21, 0x49, 0x24, 0x2a, 0xf1, + 0x59, 0xa2, 0xe2, 0x15, +}; +static const unsigned char kat3896_addinpr1[] = { + 0x9a, 0xd1, 0xb5, 0x85, 0xef, 0xf6, 0xa6, 0x20, 0xa3, 0xc2, 0x0d, 0xfe, + 0x69, 0x56, 0xad, 0x33, 0xff, 0x86, 0xad, 0x59, 0x27, 0xa7, 0x8c, 0x70, + 0x7b, 0xa7, 0x8f, 0x27, 0x98, 0x20, 0xfd, 0xc6, 0x58, 0x2f, 0x60, 0x01, + 0x4b, 0x38, 0xe4, 0x63, +}; +static const unsigned char kat3896_entropyinpr2[] = { + 0x8c, 0x73, 0xe5, 0x63, 0x03, 0xb8, 0x08, 0x21, 0x19, 0x44, 0x65, 0x16, + 0x22, 0x1e, 0x7f, 0xa3, 0x86, 0x86, 0xf8, 0x5e, 0xa9, 0x38, 0x9a, 0xf3, + 0xbb, 0x5c, 0xf0, 0x3f, 0xfe, 0x87, 0xfa, 0xd9, 0x71, 0x62, 0x6f, 0xc5, + 0x13, 0x49, 0x5c, 0x74, +}; +static const unsigned char kat3896_addinpr2[] = { + 0xd4, 0xfd, 0xd0, 0x44, 0xb0, 0x91, 0xbd, 0x8b, 0xa2, 0x2e, 0x61, 0x35, + 0xf2, 0x87, 0xd0, 0xc7, 0x5e, 0x9b, 0xc4, 0x79, 0x4d, 0x02, 0xba, 0x44, + 0x5e, 0x9c, 0x32, 0x84, 0x82, 0x32, 0x03, 0x1a, 0xdc, 0xa5, 0xd5, 0xfb, + 0xa0, 0x2b, 0xdb, 0xb0, +}; +static const unsigned char kat3896_retbits[] = { + 0x20, 0x99, 0x43, 0x4e, 0x3c, 0x85, 0x5f, 0xa1, 0x9b, 0xf2, 0x07, 0xb7, + 0x02, 0x9c, 0x5a, 0x4f, 0x1b, 0xa8, 0x45, 0x80, 0x86, 0x43, 0x97, 0x5a, + 0xa6, 0xb1, 0x54, 0xaf, 0xf7, 0xa9, 0x02, 0x30, 0x71, 0x5a, 0xbc, 0x70, + 0x31, 0x47, 0xf2, 0x04, 0x55, 0x1a, 0x77, 0xe4, 0x9c, 0x7e, 0x60, 0xa2, + 0x12, 0x79, 0x39, 0xbc, 0x5e, 0xd9, 0xf8, 0xaa, 0x0a, 0xda, 0x4a, 0x52, + 0x6b, 0x6a, 0x34, 0xe4, +}; +static const struct drbg_kat_pr_true kat3896_t = { + 10, kat3896_entropyin, kat3896_nonce, kat3896_persstr, + kat3896_entropyinpr1, kat3896_addinpr1, kat3896_entropyinpr2, + kat3896_addinpr2, kat3896_retbits +}; +static const struct drbg_kat kat3896 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3896_t +}; + +static const unsigned char kat3897_entropyin[] = { + 0x09, 0x48, 0x72, 0x9d, 0x3f, 0xba, 0x75, 0xcb, 0xe8, 0x33, 0xc1, 0x11, + 0x74, 0x11, 0xf9, 0x2a, 0xb7, 0x5b, 0x1f, 0x21, 0x43, 0xed, 0x24, 0x8a, + 0x8c, 0x14, 0x1b, 0xf6, 0xa3, 0x54, 0xe1, 0x14, 0xeb, 0x26, 0xbf, 0x75, + 0x5c, 0x84, 0xbc, 0xab, +}; +static const unsigned char kat3897_nonce[] = {0}; +static const unsigned char kat3897_persstr[] = { + 0x27, 0x0f, 0x9b, 0x80, 0x9a, 0xf5, 0xf4, 0x2d, 0x3a, 0xb0, 0xbd, 0x3c, + 0x8f, 0x63, 0x6e, 0xdc, 0x4a, 0x8b, 0xb7, 0x13, 0xb5, 0x39, 0xe6, 0x98, + 0xd4, 0x08, 0x34, 0x08, 0x44, 0x92, 0xba, 0x50, 0x23, 0xef, 0x08, 0x59, + 0xac, 0x64, 0x93, 0xa4, +}; +static const unsigned char kat3897_entropyinpr1[] = { + 0x8e, 0x4a, 0x81, 0x55, 0x41, 0xcb, 0xf3, 0x1b, 0x58, 0x1a, 0x71, 0x04, + 0x55, 0x55, 0x92, 0xb7, 0xe1, 0x67, 0xbb, 0x42, 0xdd, 0x3c, 0x04, 0xcf, + 0x91, 0x3e, 0xab, 0x6b, 0xee, 0x00, 0x38, 0xc6, 0xd2, 0xc2, 0x8a, 0xeb, + 0x25, 0xe0, 0xc1, 0x9a, +}; +static const unsigned char kat3897_addinpr1[] = { + 0x06, 0x1c, 0x66, 0x10, 0x3d, 0xff, 0x5b, 0xb1, 0xb9, 0x3f, 0xb3, 0x40, + 0xeb, 0xfb, 0xc0, 0x5c, 0xba, 0x7f, 0x8f, 0x07, 0x72, 0x88, 0x99, 0x2b, + 0x5f, 0x06, 0xd5, 0x65, 0x36, 0x7d, 0xec, 0xec, 0x25, 0xf6, 0x67, 0x63, + 0x5a, 0xf9, 0xb0, 0xc8, +}; +static const unsigned char kat3897_entropyinpr2[] = { + 0x95, 0x74, 0x80, 0xd7, 0xc6, 0xca, 0xf4, 0x87, 0xa8, 0x20, 0x02, 0x2f, + 0x20, 0x2f, 0xf2, 0x1b, 0xf1, 0x86, 0x74, 0xdd, 0xb8, 0xc4, 0x4a, 0xa2, + 0x53, 0x39, 0x63, 0x5f, 0xd3, 0x29, 0x14, 0x12, 0x31, 0x1b, 0x27, 0x88, + 0x61, 0x73, 0xf6, 0x62, +}; +static const unsigned char kat3897_addinpr2[] = { + 0x93, 0xa7, 0x08, 0x41, 0xad, 0xa8, 0xe4, 0xa7, 0xce, 0x7a, 0x92, 0x02, + 0xda, 0xbe, 0xac, 0x62, 0x17, 0x4b, 0x1a, 0x1e, 0x84, 0x5b, 0x73, 0xa0, + 0x39, 0xe7, 0x27, 0x00, 0x57, 0xe6, 0x16, 0xe8, 0x0b, 0x14, 0x84, 0xcb, + 0x35, 0xe3, 0x0a, 0xe1, +}; +static const unsigned char kat3897_retbits[] = { + 0x6a, 0x89, 0xae, 0x76, 0x13, 0xa1, 0x9a, 0x23, 0xd4, 0xf9, 0xd2, 0x42, + 0xbd, 0x87, 0x2c, 0xbe, 0x85, 0x9f, 0x62, 0x46, 0x10, 0x54, 0xde, 0x53, + 0xcb, 0x6c, 0x00, 0x90, 0xdf, 0x9e, 0x77, 0xb1, 0xaf, 0xbc, 0xc1, 0xab, + 0x7f, 0x44, 0xa6, 0xdc, 0x9d, 0x81, 0x35, 0x7e, 0x71, 0x46, 0x3d, 0xab, + 0x6b, 0x5c, 0xc2, 0x72, 0xa8, 0xeb, 0x5d, 0xf0, 0x9a, 0x1c, 0x7c, 0xfd, + 0x86, 0x1d, 0x79, 0x33, +}; +static const struct drbg_kat_pr_true kat3897_t = { + 11, kat3897_entropyin, kat3897_nonce, kat3897_persstr, + kat3897_entropyinpr1, kat3897_addinpr1, kat3897_entropyinpr2, + kat3897_addinpr2, kat3897_retbits +}; +static const struct drbg_kat kat3897 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3897_t +}; + +static const unsigned char kat3898_entropyin[] = { + 0xf1, 0xc6, 0xd7, 0xdd, 0x73, 0xfa, 0x72, 0x93, 0x5f, 0xfc, 0x34, 0xcf, + 0xaa, 0x9f, 0x89, 0xbb, 0x8c, 0xf9, 0xbc, 0xe1, 0x53, 0x37, 0xd5, 0x35, + 0xb0, 0x81, 0x2c, 0x78, 0xc8, 0xb0, 0x61, 0x67, 0xc8, 0xd2, 0xd8, 0xf6, + 0x54, 0x9c, 0x75, 0xd6, +}; +static const unsigned char kat3898_nonce[] = {0}; +static const unsigned char kat3898_persstr[] = { + 0x5a, 0xd2, 0x26, 0x7f, 0xc6, 0xf3, 0x2d, 0xd8, 0x36, 0x6f, 0x77, 0xa3, + 0x0a, 0xab, 0xb1, 0xe7, 0xaa, 0xef, 0xf4, 0x6b, 0xda, 0x00, 0x34, 0xec, + 0x94, 0x75, 0x71, 0x48, 0xf5, 0x59, 0xe0, 0x6e, 0x41, 0xa6, 0x74, 0x56, + 0xc9, 0xcd, 0xf8, 0x11, +}; +static const unsigned char kat3898_entropyinpr1[] = { + 0x84, 0xee, 0xc6, 0xd7, 0x55, 0x26, 0x06, 0xcb, 0x8e, 0x04, 0xab, 0xb9, + 0x48, 0x79, 0x55, 0xa1, 0x93, 0xa4, 0x6f, 0x17, 0x4a, 0x62, 0x37, 0xd7, + 0xee, 0x4f, 0x08, 0x08, 0x8b, 0x08, 0x71, 0xb6, 0x4f, 0xc7, 0xfb, 0xfd, + 0x69, 0x4f, 0xad, 0x7a, +}; +static const unsigned char kat3898_addinpr1[] = { + 0xad, 0x0e, 0x2d, 0xf4, 0x6f, 0xb6, 0x77, 0x46, 0x7c, 0x40, 0xfc, 0xd7, + 0x88, 0xe4, 0x3b, 0x6e, 0x30, 0x0d, 0x88, 0xc7, 0x5f, 0x14, 0x33, 0x79, + 0x35, 0x6c, 0x93, 0x54, 0x31, 0x8a, 0x37, 0xcd, 0x4d, 0xbd, 0x3c, 0xd5, + 0x64, 0xb6, 0xef, 0x34, +}; +static const unsigned char kat3898_entropyinpr2[] = { + 0xa0, 0xf8, 0xe9, 0xa6, 0xba, 0x72, 0x85, 0x0a, 0x6d, 0xfd, 0xc5, 0x2f, + 0x16, 0x84, 0x11, 0xa8, 0xe3, 0xaa, 0x1e, 0xa4, 0xcc, 0xb3, 0xbd, 0x7c, + 0xec, 0xd4, 0xf8, 0xde, 0x4d, 0x57, 0x7d, 0xaa, 0x63, 0xee, 0xbf, 0xba, + 0x1b, 0x52, 0x34, 0xec, +}; +static const unsigned char kat3898_addinpr2[] = { + 0x0c, 0x7a, 0xfc, 0x57, 0xdb, 0x9f, 0x38, 0xf3, 0xae, 0xde, 0x61, 0x60, + 0xfe, 0x96, 0x53, 0xc8, 0x7c, 0x4a, 0x89, 0x2a, 0xd1, 0xcb, 0xcd, 0xb7, + 0x2b, 0xb7, 0x0f, 0x94, 0x92, 0xaf, 0xd8, 0xb8, 0x63, 0x78, 0x67, 0x4c, + 0x79, 0xf0, 0x7d, 0xe1, +}; +static const unsigned char kat3898_retbits[] = { + 0x4f, 0x96, 0x40, 0xe1, 0x3a, 0x26, 0x46, 0x78, 0x89, 0x41, 0x3c, 0xb1, + 0xd2, 0xae, 0xb7, 0xe9, 0x53, 0xce, 0x9c, 0x73, 0x10, 0x0a, 0x3b, 0x89, + 0x25, 0xc5, 0x1d, 0xba, 0x54, 0xcf, 0x78, 0x5c, 0x7c, 0xed, 0x5a, 0x18, + 0xf4, 0xf4, 0x76, 0x23, 0xfa, 0x35, 0xfb, 0x1e, 0xce, 0x4b, 0xf4, 0x2f, + 0x99, 0x0d, 0x12, 0x2a, 0x66, 0xda, 0x7c, 0xf4, 0xb9, 0x2b, 0xb2, 0x2f, + 0x06, 0x46, 0xad, 0xb3, +}; +static const struct drbg_kat_pr_true kat3898_t = { + 12, kat3898_entropyin, kat3898_nonce, kat3898_persstr, + kat3898_entropyinpr1, kat3898_addinpr1, kat3898_entropyinpr2, + kat3898_addinpr2, kat3898_retbits +}; +static const struct drbg_kat kat3898 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3898_t +}; + +static const unsigned char kat3899_entropyin[] = { + 0x74, 0xd9, 0xe3, 0x48, 0x2b, 0x9c, 0x30, 0x80, 0x9d, 0x63, 0x70, 0x36, + 0xe4, 0x4a, 0x1e, 0x58, 0x02, 0x23, 0xfb, 0x12, 0xed, 0x51, 0x24, 0x4d, + 0xdd, 0xb0, 0xef, 0x0f, 0xec, 0x45, 0x69, 0x25, 0xa2, 0xf0, 0x6b, 0xd8, + 0xe3, 0x89, 0x20, 0xbc, +}; +static const unsigned char kat3899_nonce[] = {0}; +static const unsigned char kat3899_persstr[] = { + 0x9c, 0xcb, 0x35, 0xbe, 0x8c, 0x4f, 0x28, 0xdb, 0x23, 0x7f, 0x92, 0x93, + 0x7f, 0x14, 0xef, 0x2d, 0xed, 0xdc, 0x78, 0xad, 0x61, 0xa8, 0x47, 0x3f, + 0xe5, 0x00, 0xd3, 0x9f, 0xc8, 0x50, 0xf1, 0x94, 0x34, 0x35, 0x67, 0xc3, + 0xc6, 0xb0, 0xb7, 0x26, +}; +static const unsigned char kat3899_entropyinpr1[] = { + 0x06, 0x83, 0xc9, 0xbe, 0x88, 0x4e, 0xb5, 0x96, 0x32, 0x8d, 0xa0, 0x91, + 0xd4, 0x22, 0x72, 0x87, 0xd1, 0x76, 0x37, 0x8a, 0x3a, 0x47, 0xdf, 0x2a, + 0x60, 0x0e, 0xde, 0x6e, 0x50, 0x75, 0x6e, 0xa6, 0x88, 0x7a, 0x48, 0x08, + 0x6e, 0xcb, 0x76, 0x41, +}; +static const unsigned char kat3899_addinpr1[] = { + 0xd5, 0xd0, 0x9c, 0x99, 0x10, 0x22, 0xde, 0x16, 0x15, 0x49, 0xe3, 0x29, + 0x59, 0x7b, 0xd6, 0xc7, 0x1f, 0xc9, 0x3e, 0x6b, 0xb8, 0xa0, 0xe2, 0x57, + 0x3d, 0x70, 0x6b, 0x49, 0x0d, 0x2e, 0x5c, 0xb0, 0xf2, 0x09, 0x61, 0x98, + 0x8e, 0xf6, 0x08, 0x8e, +}; +static const unsigned char kat3899_entropyinpr2[] = { + 0xce, 0xf3, 0x1c, 0x55, 0xff, 0xf0, 0xff, 0xe9, 0x47, 0x07, 0x13, 0xf0, + 0xc4, 0x08, 0x6d, 0xc3, 0x96, 0x8d, 0xe6, 0x65, 0x8f, 0xe5, 0xac, 0x06, + 0x2a, 0x51, 0x11, 0x23, 0x23, 0xf3, 0x6d, 0x56, 0xf4, 0xf2, 0xec, 0x9a, + 0x0d, 0x87, 0xbe, 0x1b, +}; +static const unsigned char kat3899_addinpr2[] = { + 0x11, 0x88, 0x3b, 0x41, 0x66, 0x30, 0xb2, 0xe7, 0x12, 0x3a, 0xdb, 0x10, + 0xb2, 0x21, 0xa4, 0x11, 0xf5, 0x2e, 0x28, 0xe4, 0x64, 0x2b, 0xd5, 0x85, + 0xbc, 0xe3, 0xc0, 0x1b, 0xb1, 0x49, 0xba, 0xeb, 0xbc, 0x45, 0xe7, 0xac, + 0x70, 0x1b, 0x30, 0x9e, +}; +static const unsigned char kat3899_retbits[] = { + 0x54, 0xae, 0x5b, 0x40, 0x65, 0x9d, 0x67, 0x3b, 0xe0, 0x7b, 0x70, 0x53, + 0x7d, 0xc6, 0x84, 0x51, 0x4d, 0xfb, 0x63, 0x4c, 0x4c, 0xf4, 0xcc, 0x3b, + 0xa9, 0xe0, 0xb5, 0x08, 0xd2, 0xdd, 0x43, 0xc0, 0x99, 0x2e, 0x02, 0xdb, + 0x6f, 0x97, 0xfe, 0xf9, 0x05, 0x0f, 0x00, 0x33, 0x40, 0x37, 0xdf, 0x74, + 0xc0, 0x47, 0x6b, 0x29, 0x03, 0xd0, 0x59, 0x95, 0xf0, 0x0c, 0x80, 0x31, + 0xc1, 0x7a, 0x93, 0x6d, +}; +static const struct drbg_kat_pr_true kat3899_t = { + 13, kat3899_entropyin, kat3899_nonce, kat3899_persstr, + kat3899_entropyinpr1, kat3899_addinpr1, kat3899_entropyinpr2, + kat3899_addinpr2, kat3899_retbits +}; +static const struct drbg_kat kat3899 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3899_t +}; + +static const unsigned char kat3900_entropyin[] = { + 0x5a, 0x9d, 0x6c, 0x36, 0xa4, 0x49, 0x85, 0xf5, 0x43, 0x13, 0x57, 0xe9, + 0x54, 0xbf, 0x60, 0xc0, 0x42, 0xaf, 0x08, 0xc7, 0xd6, 0x77, 0x54, 0x9a, + 0x27, 0x49, 0xd7, 0x10, 0x0b, 0x34, 0x9f, 0xf6, 0x74, 0xfb, 0xe3, 0xe8, + 0xd2, 0x82, 0xaa, 0x99, +}; +static const unsigned char kat3900_nonce[] = {0}; +static const unsigned char kat3900_persstr[] = { + 0xd3, 0x95, 0x86, 0xa3, 0x50, 0x99, 0xa2, 0xa3, 0x48, 0x7b, 0x31, 0xb0, + 0x0f, 0x74, 0x15, 0xcf, 0xd7, 0xa8, 0x25, 0x65, 0xef, 0xa1, 0xfe, 0xf9, + 0x3b, 0xa5, 0x7f, 0x7e, 0x52, 0x0a, 0x26, 0xfc, 0x0a, 0xdc, 0x38, 0x49, + 0xb9, 0x50, 0x62, 0xc1, +}; +static const unsigned char kat3900_entropyinpr1[] = { + 0x64, 0x69, 0xe2, 0x9a, 0x1b, 0xc9, 0x47, 0xdb, 0xac, 0x26, 0x94, 0x2a, + 0x5f, 0x06, 0xa3, 0xce, 0x03, 0x85, 0x48, 0xe8, 0x5d, 0x80, 0x11, 0x63, + 0xcc, 0x5a, 0x38, 0x44, 0xc5, 0x84, 0xa8, 0xd3, 0xb1, 0xec, 0xfb, 0x7f, + 0x2f, 0x0b, 0x3a, 0x89, +}; +static const unsigned char kat3900_addinpr1[] = { + 0xd5, 0xb8, 0xd9, 0x60, 0xb3, 0x00, 0xe1, 0x22, 0x7b, 0xf4, 0x24, 0x31, + 0xc3, 0x65, 0x40, 0x7a, 0xae, 0x24, 0xcb, 0xfa, 0x12, 0x37, 0x5a, 0x77, + 0x3b, 0x2a, 0x1b, 0xd7, 0xd6, 0x78, 0x32, 0x11, 0x8e, 0xba, 0x70, 0xfe, + 0xc6, 0xa3, 0x66, 0xe4, +}; +static const unsigned char kat3900_entropyinpr2[] = { + 0xc9, 0x25, 0x5e, 0x2f, 0xab, 0xf8, 0x4b, 0x9e, 0xdd, 0x45, 0x73, 0x7f, + 0x5d, 0xe1, 0x3e, 0x56, 0x61, 0xac, 0xc0, 0x36, 0x23, 0xa3, 0xf9, 0x26, + 0x8e, 0xfc, 0xaf, 0x7f, 0x55, 0x62, 0xcf, 0x83, 0x9b, 0xcc, 0xed, 0xa2, + 0x29, 0xe0, 0x6f, 0x11, +}; +static const unsigned char kat3900_addinpr2[] = { + 0x3d, 0x91, 0xe9, 0xe7, 0xca, 0x56, 0x83, 0x31, 0x25, 0x45, 0xbd, 0xb4, + 0x61, 0x3d, 0xba, 0x83, 0x18, 0x2b, 0x0c, 0x90, 0x6f, 0x3a, 0x1d, 0x65, + 0xa2, 0x61, 0x07, 0x09, 0xe8, 0x3a, 0x7b, 0x4b, 0x7f, 0xd9, 0x73, 0xe4, + 0x0b, 0x82, 0xa3, 0x72, +}; +static const unsigned char kat3900_retbits[] = { + 0x28, 0xac, 0x3a, 0xcb, 0x17, 0xdf, 0xdb, 0xa1, 0xd5, 0xab, 0xb3, 0xe2, + 0x51, 0x5d, 0xc1, 0x6b, 0x42, 0xbd, 0x20, 0x7d, 0x27, 0x43, 0xc5, 0x1b, + 0x3a, 0x2e, 0x5e, 0xdc, 0xeb, 0x00, 0x21, 0xd9, 0x64, 0xfa, 0xdd, 0x50, + 0xd4, 0x99, 0xe2, 0xdf, 0x16, 0x23, 0xc2, 0x83, 0x2a, 0x9e, 0x55, 0x23, + 0x31, 0xe9, 0x15, 0x39, 0x5d, 0x65, 0xe9, 0x5f, 0x3d, 0x52, 0x3d, 0x40, + 0xd1, 0xd8, 0xa1, 0x5c, +}; +static const struct drbg_kat_pr_true kat3900_t = { + 14, kat3900_entropyin, kat3900_nonce, kat3900_persstr, + kat3900_entropyinpr1, kat3900_addinpr1, kat3900_entropyinpr2, + kat3900_addinpr2, kat3900_retbits +}; +static const struct drbg_kat kat3900 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3900_t +}; + +static const unsigned char kat3901_entropyin[] = { + 0xdb, 0x72, 0x6a, 0x74, 0x30, 0x2a, 0x23, 0xe2, 0x0b, 0xe9, 0x09, 0x06, + 0x7f, 0xe8, 0xe0, 0x2f, 0x22, 0x67, 0x73, 0x9b, 0xdb, 0x73, 0xe0, 0x6f, + 0x16, 0x32, 0xcc, 0x23, 0x68, 0xe3, 0xba, 0xa8, 0x19, 0xf8, 0xd1, 0x00, + 0x73, 0x96, 0x38, 0xc7, +}; +static const unsigned char kat3901_nonce[] = {0}; +static const unsigned char kat3901_persstr[] = {0}; +static const unsigned char kat3901_entropyinpr1[] = { + 0x24, 0x5c, 0xa1, 0xc8, 0x46, 0xbf, 0xbd, 0x2c, 0x05, 0x38, 0x83, 0x4a, + 0xb1, 0x12, 0x91, 0x03, 0xf0, 0x5f, 0x8e, 0xca, 0xac, 0x1f, 0xec, 0x1d, + 0xc3, 0xcb, 0x62, 0x1d, 0x12, 0xad, 0x78, 0x67, 0xd4, 0x99, 0xf2, 0xb0, + 0x2d, 0xab, 0x8b, 0xf5, +}; +static const unsigned char kat3901_addinpr1[] = {0}; +static const unsigned char kat3901_entropyinpr2[] = { + 0xca, 0x7e, 0x4b, 0x36, 0xa0, 0x07, 0x3b, 0xb4, 0x81, 0x1a, 0x4d, 0xf1, + 0x75, 0xa7, 0x9b, 0x8b, 0xe8, 0xd4, 0x02, 0xb1, 0x75, 0x7a, 0xb6, 0xeb, + 0x9a, 0x65, 0x62, 0x00, 0x43, 0x48, 0x0c, 0x4d, 0xca, 0x36, 0x7d, 0xb3, + 0x7b, 0xa8, 0x6e, 0x93, +}; +static const unsigned char kat3901_addinpr2[] = {0}; +static const unsigned char kat3901_retbits[] = { + 0xf0, 0x6b, 0x91, 0x68, 0x7b, 0x59, 0x0d, 0x3e, 0xc7, 0x04, 0x35, 0xd4, + 0xde, 0x8d, 0x2e, 0xa2, 0x42, 0xf4, 0xea, 0x99, 0xf7, 0x88, 0x99, 0x3f, + 0x19, 0x61, 0x3f, 0x54, 0x51, 0x4c, 0x66, 0x19, 0xe4, 0x74, 0x33, 0xd4, + 0x1c, 0x9c, 0x42, 0x66, 0x93, 0x32, 0x32, 0x20, 0x52, 0xa5, 0xa2, 0xe7, + 0xf2, 0xc3, 0x81, 0x3f, 0xe8, 0xc6, 0x4d, 0x82, 0x4c, 0x9d, 0x22, 0xb4, + 0x7c, 0x9e, 0xfe, 0x9b, +}; +static const struct drbg_kat_pr_true kat3901_t = { + 0, kat3901_entropyin, kat3901_nonce, kat3901_persstr, + kat3901_entropyinpr1, kat3901_addinpr1, kat3901_entropyinpr2, + kat3901_addinpr2, kat3901_retbits +}; +static const struct drbg_kat kat3901 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3901_t +}; + +static const unsigned char kat3902_entropyin[] = { + 0xea, 0x61, 0xe5, 0x6d, 0x58, 0x6f, 0x96, 0xad, 0x46, 0x36, 0x24, 0x13, + 0x0c, 0xb6, 0x83, 0xe0, 0x01, 0x45, 0x64, 0xe7, 0x28, 0x62, 0x4f, 0x49, + 0xc2, 0x4d, 0x4f, 0x84, 0x12, 0x59, 0x61, 0xdb, 0x2f, 0x52, 0x89, 0x0d, + 0x78, 0xfe, 0x02, 0xf7, +}; +static const unsigned char kat3902_nonce[] = {0}; +static const unsigned char kat3902_persstr[] = {0}; +static const unsigned char kat3902_entropyinpr1[] = { + 0xdf, 0x68, 0xbb, 0x54, 0x69, 0x6d, 0xbe, 0x1f, 0xc6, 0x04, 0x61, 0x81, + 0xd1, 0x24, 0x3c, 0x88, 0xfa, 0x1c, 0xd2, 0x38, 0xc8, 0x19, 0xfe, 0x8b, + 0x74, 0xd2, 0xd0, 0x8e, 0x27, 0xca, 0x64, 0xe1, 0x33, 0x56, 0x01, 0x64, + 0x0f, 0x08, 0x66, 0x24, +}; +static const unsigned char kat3902_addinpr1[] = {0}; +static const unsigned char kat3902_entropyinpr2[] = { + 0x0b, 0x2d, 0xc2, 0x33, 0xa6, 0x40, 0x20, 0xfd, 0x15, 0x64, 0x73, 0x75, + 0x2e, 0xe4, 0x65, 0xd4, 0xe9, 0x7f, 0x9d, 0xf2, 0xb0, 0x49, 0xf7, 0x45, + 0xfd, 0x69, 0x97, 0x60, 0x50, 0x6e, 0x4f, 0x4c, 0xf5, 0x4f, 0x9d, 0xac, + 0xbc, 0x93, 0xc3, 0x88, +}; +static const unsigned char kat3902_addinpr2[] = {0}; +static const unsigned char kat3902_retbits[] = { + 0x70, 0x4b, 0x74, 0x1b, 0x4d, 0x54, 0x51, 0x73, 0xfa, 0x8a, 0x0b, 0x09, + 0xe8, 0x53, 0xa1, 0x69, 0xc2, 0x4c, 0x32, 0x6d, 0x8c, 0xa1, 0x39, 0x83, + 0xf1, 0xfd, 0xb9, 0xc5, 0xba, 0x9d, 0xf0, 0xc7, 0x6b, 0xc5, 0x44, 0x2d, + 0xdd, 0x0d, 0x40, 0x5d, 0x63, 0x52, 0x6a, 0x32, 0x1e, 0x7a, 0x8c, 0x0e, + 0x00, 0x34, 0xcc, 0x42, 0x40, 0x93, 0xad, 0xd1, 0xb6, 0xe6, 0x94, 0xb4, + 0xda, 0x9d, 0x3f, 0xd8, +}; +static const struct drbg_kat_pr_true kat3902_t = { + 1, kat3902_entropyin, kat3902_nonce, kat3902_persstr, + kat3902_entropyinpr1, kat3902_addinpr1, kat3902_entropyinpr2, + kat3902_addinpr2, kat3902_retbits +}; +static const struct drbg_kat kat3902 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3902_t +}; + +static const unsigned char kat3903_entropyin[] = { + 0xdc, 0x93, 0x6e, 0x4f, 0x82, 0x45, 0xea, 0x7d, 0x2c, 0xb7, 0xa9, 0x2c, + 0x67, 0xd4, 0x42, 0x6b, 0xa4, 0xf5, 0x58, 0xe6, 0x80, 0x0c, 0xc0, 0x8a, + 0x6e, 0x6e, 0x93, 0xd6, 0xfc, 0x5b, 0x71, 0xc2, 0x42, 0xff, 0x55, 0x95, + 0xdc, 0xf0, 0x26, 0x11, +}; +static const unsigned char kat3903_nonce[] = {0}; +static const unsigned char kat3903_persstr[] = {0}; +static const unsigned char kat3903_entropyinpr1[] = { + 0x63, 0x77, 0x7a, 0x5a, 0x22, 0x7d, 0xef, 0xc5, 0xff, 0x7d, 0xeb, 0x4b, + 0x2e, 0x54, 0x59, 0xde, 0x89, 0xf0, 0xe6, 0x88, 0x7a, 0xd6, 0x2c, 0x5c, + 0xb6, 0x94, 0x7f, 0xad, 0x90, 0x03, 0xe9, 0x98, 0xf7, 0x16, 0xd5, 0x1d, + 0x3a, 0x7a, 0x04, 0x62, +}; +static const unsigned char kat3903_addinpr1[] = {0}; +static const unsigned char kat3903_entropyinpr2[] = { + 0x9a, 0x5b, 0x85, 0x72, 0xfd, 0xae, 0x0f, 0x45, 0x6c, 0x02, 0x93, 0x58, + 0x1a, 0xe9, 0x32, 0x6c, 0x43, 0x9b, 0x90, 0xfd, 0xc8, 0x4a, 0x1d, 0xa3, + 0x70, 0xcd, 0xfb, 0xda, 0x2b, 0x5e, 0x64, 0x40, 0xdb, 0x1c, 0xc2, 0xe3, + 0xc4, 0xe5, 0x4b, 0x6d, +}; +static const unsigned char kat3903_addinpr2[] = {0}; +static const unsigned char kat3903_retbits[] = { + 0x1b, 0xf3, 0x2e, 0x6c, 0x87, 0xbd, 0xf5, 0x2d, 0x66, 0x9c, 0x9a, 0xc0, + 0x08, 0x2a, 0x3d, 0x20, 0xba, 0x39, 0x9c, 0xcc, 0x28, 0x24, 0x42, 0xb6, + 0x9f, 0x5b, 0x5a, 0x13, 0x75, 0x86, 0x79, 0xe8, 0x70, 0xa0, 0xad, 0xb6, + 0x64, 0xf3, 0xa8, 0xed, 0x50, 0xce, 0x42, 0x48, 0x46, 0xf3, 0x5b, 0xad, + 0x7a, 0x96, 0xf9, 0x87, 0x31, 0x72, 0xde, 0xb3, 0xb2, 0xfe, 0xa8, 0x23, + 0xdb, 0xa0, 0x4a, 0x79, +}; +static const struct drbg_kat_pr_true kat3903_t = { + 2, kat3903_entropyin, kat3903_nonce, kat3903_persstr, + kat3903_entropyinpr1, kat3903_addinpr1, kat3903_entropyinpr2, + kat3903_addinpr2, kat3903_retbits +}; +static const struct drbg_kat kat3903 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3903_t +}; + +static const unsigned char kat3904_entropyin[] = { + 0x13, 0x8f, 0x40, 0x6a, 0xd9, 0xf7, 0x79, 0x09, 0x8a, 0x74, 0x9f, 0xa3, + 0xbb, 0x98, 0x21, 0x57, 0x96, 0x93, 0x02, 0x2c, 0xc5, 0x2f, 0x88, 0xe5, + 0x33, 0xec, 0x81, 0xa9, 0x1a, 0x77, 0x0b, 0x76, 0xd8, 0x0a, 0x4b, 0x64, + 0x74, 0x00, 0xd9, 0xd0, +}; +static const unsigned char kat3904_nonce[] = {0}; +static const unsigned char kat3904_persstr[] = {0}; +static const unsigned char kat3904_entropyinpr1[] = { + 0x1a, 0x19, 0x20, 0xdb, 0xca, 0xa9, 0x0d, 0x4c, 0xea, 0x09, 0xf8, 0x54, + 0x7a, 0x6e, 0x8a, 0x18, 0x42, 0x58, 0xec, 0x21, 0x79, 0x9e, 0x9e, 0xf4, + 0xa8, 0x67, 0x47, 0x40, 0xe7, 0x90, 0x49, 0xca, 0xe0, 0x12, 0x3a, 0x82, + 0xc5, 0x71, 0xfa, 0x37, +}; +static const unsigned char kat3904_addinpr1[] = {0}; +static const unsigned char kat3904_entropyinpr2[] = { + 0xd7, 0x18, 0x3c, 0x6d, 0x6b, 0xb0, 0xfb, 0x0b, 0x5b, 0x98, 0x03, 0xeb, + 0x27, 0x34, 0x00, 0x8e, 0x09, 0xbe, 0xfe, 0x25, 0x71, 0xe4, 0x56, 0x3b, + 0x63, 0xf1, 0x13, 0xc2, 0x40, 0xf3, 0xe3, 0x59, 0xfd, 0x97, 0x0a, 0xa7, + 0x56, 0x85, 0xa3, 0x32, +}; +static const unsigned char kat3904_addinpr2[] = {0}; +static const unsigned char kat3904_retbits[] = { + 0x63, 0x4f, 0x68, 0x8b, 0x5e, 0x2d, 0x57, 0xd4, 0x3d, 0xf8, 0x07, 0xf6, + 0xae, 0xaa, 0xd6, 0x9b, 0x67, 0x9f, 0x91, 0x72, 0xfa, 0x2d, 0x1b, 0x11, + 0x82, 0xaa, 0x16, 0x85, 0x2a, 0x52, 0x38, 0xd7, 0x3d, 0xc4, 0xff, 0xfe, + 0x17, 0x9d, 0xc5, 0x79, 0xf9, 0x08, 0x46, 0xaa, 0xa6, 0x49, 0xcb, 0x77, + 0x04, 0xc1, 0xb1, 0x31, 0xcb, 0xbc, 0x25, 0x6d, 0x42, 0x5a, 0x8a, 0x41, + 0xb6, 0xdc, 0x22, 0x54, +}; +static const struct drbg_kat_pr_true kat3904_t = { + 3, kat3904_entropyin, kat3904_nonce, kat3904_persstr, + kat3904_entropyinpr1, kat3904_addinpr1, kat3904_entropyinpr2, + kat3904_addinpr2, kat3904_retbits +}; +static const struct drbg_kat kat3904 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3904_t +}; + +static const unsigned char kat3905_entropyin[] = { + 0x5d, 0x8f, 0x91, 0x5c, 0xf0, 0x26, 0xf8, 0x0a, 0x20, 0x00, 0x59, 0x07, + 0x2e, 0xdb, 0xae, 0xec, 0xb8, 0xb2, 0x70, 0x3d, 0x06, 0xca, 0x1c, 0x3b, + 0xda, 0xe8, 0x00, 0x87, 0x47, 0x9c, 0xca, 0x37, 0x03, 0xf7, 0xae, 0xdd, + 0x7a, 0x3f, 0xce, 0x11, +}; +static const unsigned char kat3905_nonce[] = {0}; +static const unsigned char kat3905_persstr[] = {0}; +static const unsigned char kat3905_entropyinpr1[] = { + 0x94, 0x09, 0x52, 0x68, 0x5e, 0x45, 0x97, 0xa8, 0x31, 0xc0, 0x16, 0x25, + 0x7b, 0xb5, 0x43, 0xd6, 0x1a, 0xf9, 0xbd, 0xf5, 0xff, 0xb1, 0x3c, 0xb7, + 0xc3, 0x90, 0x38, 0xdf, 0x3c, 0x4d, 0xdd, 0xb2, 0xaf, 0x44, 0x46, 0x35, + 0x01, 0xe8, 0xe6, 0x95, +}; +static const unsigned char kat3905_addinpr1[] = {0}; +static const unsigned char kat3905_entropyinpr2[] = { + 0xe9, 0x7d, 0xa4, 0xe2, 0x32, 0x8d, 0x32, 0x78, 0x3a, 0xb6, 0xb1, 0x8e, + 0xcc, 0x39, 0xc7, 0x65, 0x84, 0xb9, 0x0e, 0x92, 0x4e, 0xad, 0x38, 0x8c, + 0x39, 0x24, 0x7a, 0x2c, 0xe2, 0xc7, 0xfe, 0x28, 0xdd, 0x48, 0xa9, 0x66, + 0x25, 0x58, 0x9c, 0xab, +}; +static const unsigned char kat3905_addinpr2[] = {0}; +static const unsigned char kat3905_retbits[] = { + 0xa2, 0xe4, 0x5a, 0x82, 0x4a, 0xa5, 0x69, 0x07, 0x78, 0x81, 0xae, 0x16, + 0x5a, 0x27, 0x14, 0x7f, 0xd5, 0x96, 0x7f, 0x92, 0xb3, 0x7d, 0xd0, 0x77, + 0xf8, 0x96, 0xaa, 0xb5, 0x6e, 0x14, 0x06, 0x76, 0xa0, 0xe4, 0xf8, 0x7a, + 0x45, 0x01, 0x4a, 0xe0, 0x15, 0x13, 0xd3, 0xd4, 0x97, 0x8f, 0xdf, 0xd5, + 0x18, 0x51, 0xe6, 0xe6, 0xca, 0xfa, 0x38, 0x34, 0x05, 0xc9, 0x58, 0xe4, + 0x58, 0xd3, 0xcd, 0x66, +}; +static const struct drbg_kat_pr_true kat3905_t = { + 4, kat3905_entropyin, kat3905_nonce, kat3905_persstr, + kat3905_entropyinpr1, kat3905_addinpr1, kat3905_entropyinpr2, + kat3905_addinpr2, kat3905_retbits +}; +static const struct drbg_kat kat3905 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3905_t +}; + +static const unsigned char kat3906_entropyin[] = { + 0x58, 0x44, 0xdc, 0x54, 0xf8, 0xd7, 0x11, 0xcb, 0xd2, 0x60, 0x61, 0x55, + 0xbc, 0x62, 0xdf, 0xbd, 0x31, 0x74, 0xb5, 0x0e, 0xbc, 0x34, 0x95, 0xf1, + 0xf1, 0x32, 0xb3, 0x10, 0x13, 0xad, 0x91, 0x7c, 0x94, 0xee, 0xa9, 0xa9, + 0xd0, 0xc1, 0x26, 0x15, +}; +static const unsigned char kat3906_nonce[] = {0}; +static const unsigned char kat3906_persstr[] = {0}; +static const unsigned char kat3906_entropyinpr1[] = { + 0x20, 0xe8, 0x2f, 0x8d, 0x66, 0xdd, 0x37, 0x6d, 0xa4, 0x2a, 0x36, 0xc0, + 0xae, 0x09, 0xb6, 0x2e, 0x4e, 0x3d, 0xa7, 0x18, 0x12, 0x7a, 0xc7, 0xd0, + 0x91, 0x7d, 0x83, 0x33, 0x24, 0xe6, 0x1f, 0x5a, 0xd6, 0x2e, 0xa9, 0x8d, + 0x62, 0x33, 0x69, 0x34, +}; +static const unsigned char kat3906_addinpr1[] = {0}; +static const unsigned char kat3906_entropyinpr2[] = { + 0x81, 0x9d, 0xa8, 0x3d, 0x8b, 0x19, 0x44, 0xe6, 0x0b, 0xef, 0x93, 0xdb, + 0x44, 0x27, 0x57, 0x6a, 0x92, 0x0e, 0x1f, 0x90, 0xb4, 0x77, 0xa6, 0x12, + 0x3b, 0x62, 0xcb, 0xd2, 0xcb, 0xdc, 0xc7, 0xef, 0xa3, 0xd7, 0x0e, 0x08, + 0x17, 0x5f, 0xf0, 0x4e, +}; +static const unsigned char kat3906_addinpr2[] = {0}; +static const unsigned char kat3906_retbits[] = { + 0x05, 0x61, 0x99, 0x80, 0xe1, 0x28, 0xb7, 0xc7, 0x1a, 0xb7, 0x06, 0x02, + 0x8f, 0x5d, 0x37, 0xae, 0x47, 0xe1, 0x79, 0x67, 0x9c, 0x19, 0x02, 0xba, + 0x0f, 0x59, 0x6b, 0x54, 0x5a, 0x5c, 0x81, 0xef, 0x86, 0x0e, 0xb7, 0x39, + 0xfe, 0x1a, 0xcb, 0xb9, 0x7b, 0xff, 0x73, 0x5d, 0x7c, 0xdd, 0xbd, 0xf2, + 0x94, 0xcf, 0xe2, 0x6f, 0x24, 0x99, 0x2c, 0x93, 0x67, 0x8a, 0xb2, 0x03, + 0xcb, 0x58, 0x2c, 0x3c, +}; +static const struct drbg_kat_pr_true kat3906_t = { + 5, kat3906_entropyin, kat3906_nonce, kat3906_persstr, + kat3906_entropyinpr1, kat3906_addinpr1, kat3906_entropyinpr2, + kat3906_addinpr2, kat3906_retbits +}; +static const struct drbg_kat kat3906 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3906_t +}; + +static const unsigned char kat3907_entropyin[] = { + 0xc4, 0x4b, 0x87, 0x0c, 0xad, 0x13, 0xd0, 0x2e, 0xf0, 0x56, 0x1b, 0x7f, + 0x87, 0xce, 0xd6, 0xcc, 0x08, 0xf9, 0xa1, 0xb6, 0x68, 0x5f, 0x05, 0xa4, + 0x27, 0x9b, 0x25, 0xd9, 0x24, 0x14, 0x44, 0x7e, 0x66, 0x68, 0xb3, 0xc4, + 0x96, 0xf1, 0xdf, 0xf4, +}; +static const unsigned char kat3907_nonce[] = {0}; +static const unsigned char kat3907_persstr[] = {0}; +static const unsigned char kat3907_entropyinpr1[] = { + 0x6c, 0x30, 0x74, 0x4a, 0xdf, 0xf9, 0x09, 0xe2, 0xb4, 0x25, 0x29, 0x6b, + 0xd0, 0xb3, 0x4d, 0x2e, 0x1d, 0xf3, 0x6a, 0x00, 0x76, 0x3d, 0xc1, 0x19, + 0x37, 0x63, 0xfa, 0x91, 0xe3, 0x68, 0xa2, 0x1a, 0xb2, 0xf9, 0x00, 0x5f, + 0x8a, 0xf5, 0x2a, 0x4d, +}; +static const unsigned char kat3907_addinpr1[] = {0}; +static const unsigned char kat3907_entropyinpr2[] = { + 0x9a, 0x94, 0xb5, 0x16, 0x90, 0x4a, 0x7a, 0x7a, 0x67, 0x3d, 0xa1, 0x96, + 0x44, 0xdc, 0xc4, 0x10, 0x7a, 0x50, 0x82, 0x3f, 0x1b, 0x85, 0x30, 0x96, + 0xad, 0x46, 0xc6, 0xa8, 0xf3, 0x8e, 0xf8, 0xbe, 0x60, 0xc5, 0xde, 0xf5, + 0x3b, 0x56, 0x0e, 0x8f, +}; +static const unsigned char kat3907_addinpr2[] = {0}; +static const unsigned char kat3907_retbits[] = { + 0xeb, 0xaa, 0xab, 0x96, 0xf0, 0xf0, 0x92, 0x42, 0x69, 0x69, 0x0b, 0x95, + 0x09, 0x85, 0x58, 0x48, 0x8f, 0x3e, 0x20, 0xdf, 0xab, 0xdb, 0x70, 0x39, + 0xd9, 0x08, 0x8f, 0x88, 0x5e, 0xf0, 0x3e, 0xb4, 0x34, 0x87, 0x47, 0xe1, + 0x85, 0x1f, 0xe0, 0xbd, 0x0e, 0x21, 0x59, 0x1f, 0x68, 0x5e, 0x41, 0x76, + 0x7f, 0x7c, 0xf4, 0x62, 0xbc, 0x03, 0x72, 0x1e, 0xb3, 0x18, 0xe1, 0xd2, + 0x8b, 0x91, 0x2a, 0xe9, +}; +static const struct drbg_kat_pr_true kat3907_t = { + 6, kat3907_entropyin, kat3907_nonce, kat3907_persstr, + kat3907_entropyinpr1, kat3907_addinpr1, kat3907_entropyinpr2, + kat3907_addinpr2, kat3907_retbits +}; +static const struct drbg_kat kat3907 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3907_t +}; + +static const unsigned char kat3908_entropyin[] = { + 0x57, 0x84, 0xe0, 0x2c, 0xa4, 0xa1, 0xca, 0x96, 0x25, 0xfe, 0xf9, 0x99, + 0x8f, 0x13, 0xc9, 0xf4, 0x15, 0x5c, 0xb2, 0x96, 0xea, 0x7a, 0xe0, 0xc6, + 0x32, 0xa1, 0xb1, 0xbc, 0x45, 0x0c, 0x51, 0x00, 0x71, 0x58, 0x54, 0xd8, + 0x47, 0x2c, 0xc6, 0x96, +}; +static const unsigned char kat3908_nonce[] = {0}; +static const unsigned char kat3908_persstr[] = {0}; +static const unsigned char kat3908_entropyinpr1[] = { + 0xf7, 0xce, 0x6b, 0x7e, 0xd6, 0x85, 0xf4, 0x27, 0x1c, 0xf3, 0xea, 0x6f, + 0xab, 0x71, 0x4d, 0xc4, 0x56, 0x02, 0x42, 0xde, 0xca, 0x9c, 0x94, 0xac, + 0xd7, 0xa8, 0x16, 0x44, 0x95, 0xfc, 0xa7, 0x0e, 0x76, 0x7c, 0xcc, 0x8f, + 0x46, 0x11, 0x1d, 0x8e, +}; +static const unsigned char kat3908_addinpr1[] = {0}; +static const unsigned char kat3908_entropyinpr2[] = { + 0x36, 0x36, 0xb6, 0xd5, 0x45, 0xc7, 0xa9, 0x2b, 0x50, 0x07, 0x9d, 0x44, + 0xbd, 0xbe, 0xef, 0xaa, 0x69, 0x1c, 0xed, 0xf4, 0xfb, 0xcb, 0xa3, 0x3a, + 0x26, 0x49, 0x7c, 0x6b, 0x49, 0xcf, 0x77, 0xe1, 0x69, 0x3f, 0x0d, 0x81, + 0x28, 0xfa, 0xa0, 0x12, +}; +static const unsigned char kat3908_addinpr2[] = {0}; +static const unsigned char kat3908_retbits[] = { + 0x48, 0x4c, 0xf9, 0x16, 0x5c, 0xc6, 0xdf, 0x1d, 0x03, 0x5e, 0x3a, 0xa5, + 0x5b, 0xeb, 0x55, 0xa2, 0x4b, 0x80, 0xa9, 0x34, 0x6a, 0x99, 0x00, 0x14, + 0xf1, 0x7f, 0xeb, 0xd4, 0xfa, 0x67, 0x1d, 0x45, 0xca, 0xb0, 0x90, 0xff, + 0x21, 0x22, 0x5b, 0x51, 0x05, 0x76, 0xb0, 0x2a, 0x61, 0xce, 0x44, 0xe9, + 0x53, 0x40, 0x2f, 0x6f, 0x1c, 0xc3, 0xf9, 0xcd, 0x23, 0xa9, 0x11, 0xff, + 0xf0, 0xd8, 0x7b, 0x99, +}; +static const struct drbg_kat_pr_true kat3908_t = { + 7, kat3908_entropyin, kat3908_nonce, kat3908_persstr, + kat3908_entropyinpr1, kat3908_addinpr1, kat3908_entropyinpr2, + kat3908_addinpr2, kat3908_retbits +}; +static const struct drbg_kat kat3908 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3908_t +}; + +static const unsigned char kat3909_entropyin[] = { + 0xcc, 0x0c, 0x84, 0x69, 0x05, 0x5c, 0x7c, 0xfc, 0xaa, 0x23, 0x5f, 0xa0, + 0x74, 0x9c, 0xfe, 0xaf, 0xd8, 0xa7, 0x91, 0x79, 0xf1, 0x13, 0x32, 0x6e, + 0x61, 0x83, 0x39, 0x7b, 0x68, 0x41, 0x71, 0xca, 0x72, 0x5c, 0x02, 0xf0, + 0x3a, 0xfc, 0xb2, 0x61, +}; +static const unsigned char kat3909_nonce[] = {0}; +static const unsigned char kat3909_persstr[] = {0}; +static const unsigned char kat3909_entropyinpr1[] = { + 0x73, 0x4b, 0xe4, 0x6c, 0x1a, 0x35, 0xdc, 0x4d, 0x82, 0x4b, 0x47, 0xd3, + 0x87, 0x9a, 0x2c, 0xd4, 0xb2, 0x14, 0x2b, 0xcc, 0xa5, 0x74, 0xfa, 0xdd, + 0x2c, 0x30, 0x3e, 0xaf, 0x63, 0x56, 0xd8, 0x68, 0x24, 0x63, 0x4d, 0xd9, + 0x08, 0x2f, 0x0b, 0x15, +}; +static const unsigned char kat3909_addinpr1[] = {0}; +static const unsigned char kat3909_entropyinpr2[] = { + 0xfa, 0x1f, 0x09, 0x15, 0x23, 0xe8, 0xd0, 0xfa, 0x51, 0xcc, 0x09, 0x92, + 0x5c, 0xfd, 0x5c, 0xed, 0x21, 0x0d, 0xee, 0x85, 0xcb, 0x28, 0xf9, 0x1b, + 0x8f, 0x88, 0x9a, 0xad, 0xb7, 0xa1, 0x8c, 0x53, 0x1a, 0xfa, 0x4d, 0x47, + 0x43, 0x1a, 0xcc, 0xc7, +}; +static const unsigned char kat3909_addinpr2[] = {0}; +static const unsigned char kat3909_retbits[] = { + 0x19, 0xe0, 0x4d, 0x63, 0x40, 0x42, 0xbe, 0x30, 0x50, 0xeb, 0x07, 0x57, + 0xb1, 0xdc, 0x06, 0xc8, 0xc7, 0x80, 0xdb, 0x22, 0xfa, 0xb1, 0x5c, 0xc9, + 0xdc, 0x66, 0x7b, 0xaf, 0xbf, 0xa8, 0x88, 0x83, 0xeb, 0xd0, 0xff, 0xb2, + 0x1e, 0x1a, 0x87, 0xbc, 0x67, 0x87, 0xf4, 0x73, 0xfe, 0x80, 0xd9, 0xfe, + 0x71, 0x1c, 0x5f, 0xb1, 0x7f, 0x11, 0x1d, 0xac, 0xfe, 0x71, 0x80, 0xe9, + 0x51, 0xc3, 0x80, 0x37, +}; +static const struct drbg_kat_pr_true kat3909_t = { + 8, kat3909_entropyin, kat3909_nonce, kat3909_persstr, + kat3909_entropyinpr1, kat3909_addinpr1, kat3909_entropyinpr2, + kat3909_addinpr2, kat3909_retbits +}; +static const struct drbg_kat kat3909 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3909_t +}; + +static const unsigned char kat3910_entropyin[] = { + 0x0c, 0xbd, 0x31, 0x7c, 0x68, 0x56, 0x03, 0xaf, 0x9d, 0x40, 0x41, 0xc6, + 0xf9, 0x37, 0x3b, 0xaa, 0xb7, 0x82, 0x67, 0x65, 0xcc, 0x59, 0xa2, 0xa5, + 0x37, 0x70, 0xaf, 0x87, 0xe1, 0x91, 0x82, 0x69, 0xe1, 0xea, 0xa8, 0x9a, + 0xc8, 0x97, 0x63, 0xa8, +}; +static const unsigned char kat3910_nonce[] = {0}; +static const unsigned char kat3910_persstr[] = {0}; +static const unsigned char kat3910_entropyinpr1[] = { + 0xf3, 0xb2, 0x47, 0x14, 0x5b, 0x91, 0x41, 0xaa, 0xc3, 0x39, 0x65, 0x75, + 0x7c, 0xb9, 0x98, 0x5a, 0x85, 0x19, 0x80, 0x47, 0x97, 0x43, 0xe6, 0x06, + 0x2d, 0x6a, 0x69, 0x2a, 0x7e, 0xa0, 0x69, 0x2f, 0x1d, 0xff, 0x3d, 0xe7, + 0x51, 0x5e, 0xe1, 0x96, +}; +static const unsigned char kat3910_addinpr1[] = {0}; +static const unsigned char kat3910_entropyinpr2[] = { + 0xa9, 0xbf, 0xb4, 0x46, 0xe5, 0xe5, 0x4f, 0xbc, 0x29, 0x9f, 0x6d, 0x37, + 0x0b, 0x2f, 0x99, 0xcc, 0x21, 0x6d, 0xf6, 0xa8, 0xa6, 0x9e, 0xb6, 0x7b, + 0xbf, 0xad, 0x86, 0x67, 0x2e, 0xb8, 0x61, 0x8b, 0xad, 0x65, 0x09, 0x6c, + 0x7f, 0x47, 0xd8, 0x84, +}; +static const unsigned char kat3910_addinpr2[] = {0}; +static const unsigned char kat3910_retbits[] = { + 0xc7, 0xa9, 0x82, 0xb9, 0x42, 0x4f, 0x31, 0x70, 0x33, 0xea, 0x10, 0xda, + 0x5c, 0xed, 0x43, 0x26, 0x53, 0x32, 0x1c, 0x16, 0xdc, 0x60, 0x85, 0x11, + 0x7f, 0xe8, 0x24, 0xba, 0x04, 0x8d, 0x7c, 0x0d, 0xdd, 0xe9, 0x18, 0x81, + 0x9a, 0x83, 0x0f, 0xe7, 0x44, 0xdd, 0xf1, 0xd4, 0xb4, 0x72, 0x47, 0x4f, + 0x44, 0x21, 0x17, 0x6c, 0xb0, 0x78, 0xd7, 0x2d, 0xbf, 0xf7, 0x82, 0x38, + 0xf0, 0xcb, 0xd4, 0x19, +}; +static const struct drbg_kat_pr_true kat3910_t = { + 9, kat3910_entropyin, kat3910_nonce, kat3910_persstr, + kat3910_entropyinpr1, kat3910_addinpr1, kat3910_entropyinpr2, + kat3910_addinpr2, kat3910_retbits +}; +static const struct drbg_kat kat3910 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3910_t +}; + +static const unsigned char kat3911_entropyin[] = { + 0xa8, 0x9b, 0x3d, 0x14, 0x37, 0x1d, 0x7b, 0x96, 0xcb, 0x55, 0xeb, 0x5d, + 0x85, 0x3d, 0x48, 0xb6, 0xa3, 0xa8, 0xae, 0xf7, 0xbe, 0xe5, 0x8d, 0x06, + 0x0c, 0xe7, 0xcd, 0x2b, 0x3e, 0xcf, 0x8c, 0x57, 0xd7, 0x9e, 0xc7, 0x05, + 0xa1, 0x11, 0xe3, 0xcf, +}; +static const unsigned char kat3911_nonce[] = {0}; +static const unsigned char kat3911_persstr[] = {0}; +static const unsigned char kat3911_entropyinpr1[] = { + 0xce, 0x59, 0xca, 0x33, 0x48, 0xf5, 0x5a, 0x62, 0x24, 0xd3, 0xe3, 0x8c, + 0xce, 0x12, 0xdb, 0xd3, 0x10, 0x53, 0xad, 0x3b, 0xdf, 0x60, 0xd0, 0xcb, + 0xad, 0xa1, 0xc2, 0xdc, 0xca, 0x2a, 0x88, 0x20, 0x7d, 0xdf, 0x8f, 0x57, + 0xe8, 0x1e, 0xfc, 0x4e, +}; +static const unsigned char kat3911_addinpr1[] = {0}; +static const unsigned char kat3911_entropyinpr2[] = { + 0x35, 0xd9, 0x2d, 0x8a, 0xb6, 0x4d, 0x5e, 0xb6, 0x46, 0x81, 0x47, 0x6b, + 0x09, 0x19, 0x94, 0x8a, 0xb1, 0x73, 0xbc, 0x3c, 0x2f, 0x04, 0xbd, 0x7e, + 0x1b, 0x83, 0x87, 0x01, 0xb2, 0x8e, 0xdd, 0xc9, 0x99, 0xec, 0x13, 0xb4, + 0x7e, 0x4b, 0x75, 0x80, +}; +static const unsigned char kat3911_addinpr2[] = {0}; +static const unsigned char kat3911_retbits[] = { + 0x3d, 0x3a, 0x67, 0xf4, 0x13, 0x8e, 0x64, 0xfb, 0xf8, 0x1a, 0xe5, 0x28, + 0x6f, 0x76, 0x18, 0x49, 0xbd, 0xeb, 0x7d, 0xbd, 0xd6, 0xfd, 0xdb, 0xf7, + 0x32, 0x49, 0x51, 0xc6, 0xae, 0xd6, 0x1a, 0xb8, 0xc7, 0x3e, 0x1f, 0x0b, + 0x0e, 0xfb, 0xd2, 0xa2, 0x3e, 0x91, 0x05, 0xcb, 0x1e, 0x17, 0x3f, 0x96, + 0xa3, 0xf6, 0xfb, 0xda, 0x6c, 0x43, 0x9d, 0x61, 0x04, 0x53, 0xdc, 0x55, + 0xeb, 0xda, 0x95, 0x8f, +}; +static const struct drbg_kat_pr_true kat3911_t = { + 10, kat3911_entropyin, kat3911_nonce, kat3911_persstr, + kat3911_entropyinpr1, kat3911_addinpr1, kat3911_entropyinpr2, + kat3911_addinpr2, kat3911_retbits +}; +static const struct drbg_kat kat3911 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3911_t +}; + +static const unsigned char kat3912_entropyin[] = { + 0xc3, 0xd4, 0xf7, 0x5c, 0x07, 0x0e, 0x54, 0x57, 0x81, 0x2d, 0x98, 0x6c, + 0xc3, 0xfa, 0xf1, 0x18, 0x91, 0x49, 0x01, 0x14, 0x7f, 0x1e, 0x2a, 0xf5, + 0x66, 0x11, 0x30, 0x67, 0x84, 0x0d, 0xae, 0x4b, 0xb5, 0xbe, 0xf5, 0xdd, + 0xc5, 0xbe, 0x9a, 0xce, +}; +static const unsigned char kat3912_nonce[] = {0}; +static const unsigned char kat3912_persstr[] = {0}; +static const unsigned char kat3912_entropyinpr1[] = { + 0x25, 0x8e, 0x5c, 0xeb, 0xe7, 0x17, 0x55, 0x7f, 0x64, 0xbb, 0xc5, 0x2c, + 0x2c, 0x1d, 0xc5, 0x54, 0x6a, 0xb2, 0xa4, 0xd8, 0x04, 0x17, 0xc3, 0x29, + 0xa2, 0x68, 0x7b, 0x46, 0xa1, 0x7f, 0x33, 0xfa, 0xa2, 0x49, 0x62, 0x58, + 0x19, 0x96, 0x22, 0xd4, +}; +static const unsigned char kat3912_addinpr1[] = {0}; +static const unsigned char kat3912_entropyinpr2[] = { + 0xb6, 0xe1, 0xf5, 0x05, 0x52, 0x87, 0xd2, 0xa9, 0xcb, 0x2d, 0xeb, 0x3a, + 0xb9, 0x44, 0xd2, 0x1c, 0xdb, 0xa1, 0xfa, 0x64, 0x69, 0x19, 0x4a, 0x18, + 0xba, 0x4a, 0x76, 0x1a, 0x5c, 0xb1, 0x1f, 0x0d, 0xcb, 0xfc, 0x0b, 0x59, + 0x22, 0xad, 0x8e, 0xaf, +}; +static const unsigned char kat3912_addinpr2[] = {0}; +static const unsigned char kat3912_retbits[] = { + 0x6d, 0x33, 0x29, 0x45, 0x29, 0x17, 0x99, 0x77, 0x87, 0x4c, 0xfa, 0xe7, + 0xb0, 0xe6, 0x24, 0x2a, 0xbb, 0x29, 0xe7, 0x99, 0x26, 0xba, 0x8c, 0x65, + 0x1f, 0x5d, 0x54, 0x28, 0xd2, 0x62, 0x5f, 0x06, 0xd7, 0x7f, 0xc7, 0x7e, + 0x5a, 0x35, 0x05, 0x59, 0x3e, 0x6a, 0x1d, 0x30, 0x1b, 0x8c, 0xcd, 0x68, + 0xf4, 0x3f, 0x01, 0xd0, 0x06, 0x44, 0xde, 0xb9, 0xc0, 0x8a, 0xce, 0xc4, + 0x61, 0x33, 0xb8, 0xc9, +}; +static const struct drbg_kat_pr_true kat3912_t = { + 11, kat3912_entropyin, kat3912_nonce, kat3912_persstr, + kat3912_entropyinpr1, kat3912_addinpr1, kat3912_entropyinpr2, + kat3912_addinpr2, kat3912_retbits +}; +static const struct drbg_kat kat3912 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3912_t +}; + +static const unsigned char kat3913_entropyin[] = { + 0x67, 0x25, 0xf6, 0x79, 0x60, 0x9d, 0x34, 0x4b, 0xd7, 0xdb, 0x0a, 0x75, + 0xbd, 0xc0, 0xa5, 0xeb, 0x83, 0xdc, 0x9d, 0x9d, 0x34, 0x97, 0xa2, 0x78, + 0x54, 0x97, 0x04, 0xc9, 0x13, 0xcf, 0x6e, 0x60, 0x05, 0x82, 0xb1, 0xb1, + 0xc9, 0x1b, 0xcf, 0xd8, +}; +static const unsigned char kat3913_nonce[] = {0}; +static const unsigned char kat3913_persstr[] = {0}; +static const unsigned char kat3913_entropyinpr1[] = { + 0xf0, 0x5f, 0x70, 0x45, 0xde, 0xfa, 0xc6, 0xd2, 0xe9, 0x0c, 0x43, 0x79, + 0x8b, 0xfd, 0x85, 0x6b, 0x8a, 0x71, 0x24, 0x7a, 0x3e, 0xa7, 0x51, 0xa2, + 0x85, 0x2f, 0xbb, 0x2f, 0x24, 0xd2, 0xa8, 0xb0, 0x78, 0xd1, 0xb5, 0x42, + 0x1d, 0x80, 0xd2, 0xc6, +}; +static const unsigned char kat3913_addinpr1[] = {0}; +static const unsigned char kat3913_entropyinpr2[] = { + 0x22, 0x63, 0x1d, 0x5e, 0x36, 0x1f, 0x8e, 0xb4, 0x31, 0x1c, 0xeb, 0xce, + 0xd9, 0x71, 0x38, 0xbc, 0xd6, 0x42, 0x49, 0x23, 0x0f, 0x7d, 0x65, 0xd4, + 0x50, 0x64, 0xd1, 0x1d, 0x57, 0xea, 0x21, 0xa6, 0x50, 0x45, 0x60, 0x7e, + 0x1f, 0x2a, 0x01, 0xc1, +}; +static const unsigned char kat3913_addinpr2[] = {0}; +static const unsigned char kat3913_retbits[] = { + 0x34, 0x7c, 0xc5, 0x19, 0xce, 0xd1, 0x4e, 0x46, 0xb4, 0xb1, 0xd0, 0x6a, + 0xe6, 0xc5, 0x55, 0x5e, 0xd8, 0xa3, 0x77, 0x11, 0x3e, 0x4f, 0xe1, 0xe2, + 0x6b, 0x90, 0xf1, 0xad, 0x60, 0x29, 0xa5, 0x26, 0x91, 0x16, 0x68, 0xe3, + 0x5d, 0xaf, 0x9f, 0x72, 0x03, 0x2a, 0x74, 0xe6, 0x37, 0x44, 0xea, 0x52, + 0x42, 0x32, 0x83, 0x1e, 0xf4, 0xd7, 0x7f, 0x56, 0xd2, 0x88, 0xd3, 0x7d, + 0x55, 0x0b, 0xc3, 0xd9, +}; +static const struct drbg_kat_pr_true kat3913_t = { + 12, kat3913_entropyin, kat3913_nonce, kat3913_persstr, + kat3913_entropyinpr1, kat3913_addinpr1, kat3913_entropyinpr2, + kat3913_addinpr2, kat3913_retbits +}; +static const struct drbg_kat kat3913 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3913_t +}; + +static const unsigned char kat3914_entropyin[] = { + 0x9a, 0xd2, 0x35, 0x88, 0x04, 0xb9, 0x91, 0x85, 0x03, 0x80, 0x6c, 0xc0, + 0x9f, 0x92, 0x0e, 0x49, 0x21, 0xfe, 0x38, 0xd0, 0xcc, 0x9b, 0x44, 0x24, + 0xb1, 0x75, 0x17, 0x69, 0x59, 0x5f, 0xf2, 0x6d, 0x89, 0xc7, 0x09, 0xf7, + 0xc0, 0x53, 0x80, 0x58, +}; +static const unsigned char kat3914_nonce[] = {0}; +static const unsigned char kat3914_persstr[] = {0}; +static const unsigned char kat3914_entropyinpr1[] = { + 0x52, 0x4a, 0xc6, 0x44, 0x29, 0x34, 0x50, 0x0d, 0x79, 0x7b, 0x5e, 0x6a, + 0xc6, 0xbe, 0x65, 0x58, 0x3f, 0x3b, 0x41, 0xd0, 0xdc, 0x16, 0xc9, 0x6a, + 0xaa, 0x26, 0x67, 0x00, 0x2a, 0x8f, 0xa0, 0xa4, 0x6f, 0xca, 0x99, 0xdf, + 0xd4, 0x5e, 0xdd, 0x3e, +}; +static const unsigned char kat3914_addinpr1[] = {0}; +static const unsigned char kat3914_entropyinpr2[] = { + 0xff, 0xe9, 0x33, 0xe0, 0xe5, 0x24, 0xb3, 0xf0, 0x1d, 0xc7, 0x70, 0x42, + 0x35, 0x59, 0x7a, 0xb1, 0x57, 0x1d, 0x33, 0xa8, 0x56, 0x34, 0x98, 0xa2, + 0x24, 0xe7, 0x26, 0xd8, 0xb1, 0x8b, 0x2d, 0xce, 0x43, 0x62, 0x4c, 0x81, + 0x41, 0x63, 0xbd, 0xf8, +}; +static const unsigned char kat3914_addinpr2[] = {0}; +static const unsigned char kat3914_retbits[] = { + 0x94, 0xac, 0x8d, 0xe3, 0xb7, 0xd8, 0x3d, 0x32, 0x6e, 0x88, 0x11, 0xb3, + 0x87, 0xd7, 0x9c, 0x68, 0xa0, 0x52, 0xbe, 0xa3, 0x5c, 0x12, 0x07, 0x49, + 0xb8, 0xf8, 0x17, 0xe3, 0x28, 0x53, 0x06, 0x2d, 0x38, 0xb4, 0x3f, 0x5a, + 0x00, 0x34, 0x50, 0x20, 0x88, 0x3d, 0xb7, 0x9b, 0xa3, 0xd5, 0x86, 0x24, + 0x84, 0xc2, 0x56, 0x56, 0xa3, 0x84, 0xf3, 0xf9, 0x01, 0x7a, 0xd7, 0xcb, + 0xe8, 0x5e, 0xd3, 0xc0, +}; +static const struct drbg_kat_pr_true kat3914_t = { + 13, kat3914_entropyin, kat3914_nonce, kat3914_persstr, + kat3914_entropyinpr1, kat3914_addinpr1, kat3914_entropyinpr2, + kat3914_addinpr2, kat3914_retbits +}; +static const struct drbg_kat kat3914 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3914_t +}; + +static const unsigned char kat3915_entropyin[] = { + 0xed, 0xd0, 0xd8, 0x56, 0xba, 0x5c, 0xf4, 0x5e, 0x62, 0x8c, 0xcb, 0x87, + 0x92, 0x48, 0xee, 0x92, 0x18, 0xf3, 0x3c, 0x5a, 0x53, 0x4e, 0xcf, 0xf2, + 0x93, 0x60, 0xc5, 0x42, 0x38, 0xd7, 0xe6, 0x6a, 0x9f, 0x49, 0x29, 0xad, + 0xf1, 0xc9, 0xd9, 0x27, +}; +static const unsigned char kat3915_nonce[] = {0}; +static const unsigned char kat3915_persstr[] = {0}; +static const unsigned char kat3915_entropyinpr1[] = { + 0xea, 0x4f, 0xfc, 0xe5, 0x16, 0xfb, 0xa5, 0xa2, 0x83, 0x25, 0x20, 0x6d, + 0x63, 0x9d, 0x1b, 0x3a, 0x0f, 0x7c, 0x61, 0x79, 0x89, 0x47, 0xa5, 0x4f, + 0x77, 0x09, 0x71, 0xbe, 0xd1, 0x88, 0x47, 0xe3, 0xff, 0x12, 0x6e, 0x65, + 0xa6, 0xb0, 0x70, 0xe9, +}; +static const unsigned char kat3915_addinpr1[] = {0}; +static const unsigned char kat3915_entropyinpr2[] = { + 0xd7, 0xe6, 0x49, 0xcd, 0xf5, 0x63, 0xe9, 0x60, 0x64, 0x0b, 0x50, 0x92, + 0x7a, 0x92, 0xab, 0xca, 0xa3, 0x06, 0xd4, 0xe1, 0x31, 0x5e, 0xad, 0xb0, + 0x31, 0x6b, 0xb6, 0x5d, 0x7f, 0x91, 0x66, 0x57, 0x7b, 0xab, 0x34, 0xbf, + 0x01, 0x2a, 0x6f, 0x9c, +}; +static const unsigned char kat3915_addinpr2[] = {0}; +static const unsigned char kat3915_retbits[] = { + 0xe9, 0x2c, 0x34, 0xe5, 0x44, 0xc5, 0x34, 0x24, 0x45, 0x22, 0x8a, 0xe6, + 0x74, 0x06, 0x16, 0x88, 0x98, 0x56, 0xed, 0xa4, 0xce, 0x82, 0xfb, 0x7f, + 0x1c, 0x15, 0xd1, 0x95, 0x19, 0x53, 0xf5, 0x50, 0x9a, 0xe7, 0x54, 0x62, + 0x4a, 0xd9, 0xf1, 0x59, 0xdd, 0x5e, 0x19, 0x08, 0xda, 0x3c, 0x97, 0xd2, + 0xa6, 0x69, 0x45, 0xb8, 0xa8, 0x74, 0x66, 0x34, 0xdc, 0x70, 0xb7, 0xf3, + 0x17, 0x18, 0xc4, 0xab, +}; +static const struct drbg_kat_pr_true kat3915_t = { + 14, kat3915_entropyin, kat3915_nonce, kat3915_persstr, + kat3915_entropyinpr1, kat3915_addinpr1, kat3915_entropyinpr2, + kat3915_addinpr2, kat3915_retbits +}; +static const struct drbg_kat kat3915 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3915_t +}; + +static const unsigned char kat3916_entropyin[] = { + 0xd7, 0x2b, 0xc2, 0x8b, 0xa4, 0x77, 0xf0, 0xcd, 0x47, 0xaf, 0x99, 0x31, + 0x72, 0x43, 0xb2, 0x30, 0x40, 0xd6, 0x3f, 0x27, 0x68, 0x49, 0x8e, 0xab, + 0x56, 0x91, 0x7b, 0xeb, 0x32, 0x56, 0x6c, 0x24, 0x79, 0x46, 0x8d, 0xb3, + 0xa9, 0x7c, 0x78, 0x46, +}; +static const unsigned char kat3916_nonce[] = {0}; +static const unsigned char kat3916_persstr[] = {0}; +static const unsigned char kat3916_entropyinpr1[] = { + 0x6d, 0xf6, 0x45, 0x31, 0x00, 0x80, 0x81, 0xac, 0xdf, 0x65, 0x9f, 0x53, + 0x70, 0x64, 0xbe, 0x32, 0xb9, 0x65, 0x4b, 0x85, 0xe1, 0xfc, 0xad, 0x8b, + 0x10, 0x8c, 0x1f, 0xbb, 0x4b, 0x57, 0xb3, 0x42, 0x43, 0x31, 0x00, 0xb4, + 0x98, 0x14, 0x7c, 0x5b, +}; +static const unsigned char kat3916_addinpr1[] = { + 0x1e, 0x9b, 0x1d, 0x0a, 0xff, 0xf8, 0x3a, 0x84, 0xe1, 0xca, 0x21, 0x8b, + 0x44, 0x65, 0xac, 0xe4, 0x65, 0x5c, 0x0f, 0x1b, 0x8a, 0x70, 0x29, 0x89, + 0xf2, 0xb6, 0x28, 0xb2, 0x58, 0x15, 0xb8, 0x38, 0xab, 0x88, 0xfc, 0x64, + 0x32, 0x53, 0xa7, 0xaa, +}; +static const unsigned char kat3916_entropyinpr2[] = { + 0x50, 0xf1, 0x67, 0x83, 0x6b, 0xe0, 0x79, 0x90, 0xb9, 0xb1, 0x63, 0x22, + 0x37, 0xbf, 0xae, 0x53, 0xfe, 0xba, 0x17, 0x8b, 0x67, 0x89, 0xc5, 0x69, + 0x3e, 0x8a, 0xf1, 0xbe, 0xeb, 0xb7, 0xe3, 0xeb, 0x2d, 0x50, 0x01, 0xf9, + 0x6d, 0xcb, 0x34, 0x62, +}; +static const unsigned char kat3916_addinpr2[] = { + 0xce, 0x8b, 0x0b, 0x49, 0x99, 0x2e, 0x7d, 0x4e, 0x11, 0x46, 0x5e, 0x3b, + 0xd7, 0x86, 0x20, 0x33, 0x77, 0xc1, 0x10, 0xa6, 0x6f, 0x69, 0xa0, 0x0b, + 0x9d, 0xc2, 0xbe, 0xe7, 0x8a, 0x5c, 0x30, 0x88, 0x42, 0x67, 0xc1, 0x6a, + 0x64, 0x58, 0x18, 0xe9, +}; +static const unsigned char kat3916_retbits[] = { + 0x8c, 0xf0, 0x5e, 0x17, 0x63, 0x2b, 0xfa, 0x4c, 0xc4, 0xf9, 0xe8, 0xf0, + 0x45, 0xa2, 0xc0, 0xe9, 0xdf, 0x5c, 0xe0, 0xc4, 0x31, 0x3f, 0xd4, 0x60, + 0xcd, 0x8e, 0xf4, 0x0e, 0xf3, 0x30, 0xed, 0x04, 0xd5, 0x16, 0x2c, 0x77, + 0x2d, 0xb5, 0x2f, 0xfe, 0x47, 0xf9, 0xdd, 0x17, 0xd3, 0x77, 0xe3, 0x4f, + 0xd6, 0xb0, 0xd6, 0xed, 0x82, 0xca, 0xcd, 0xe6, 0x02, 0xf9, 0x01, 0x74, + 0xe3, 0x3b, 0x5b, 0xaf, +}; +static const struct drbg_kat_pr_true kat3916_t = { + 0, kat3916_entropyin, kat3916_nonce, kat3916_persstr, + kat3916_entropyinpr1, kat3916_addinpr1, kat3916_entropyinpr2, + kat3916_addinpr2, kat3916_retbits +}; +static const struct drbg_kat kat3916 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3916_t +}; + +static const unsigned char kat3917_entropyin[] = { + 0x01, 0x4a, 0x6e, 0xa3, 0x9a, 0xb2, 0xf2, 0xce, 0x9e, 0xdf, 0x44, 0x66, + 0xe6, 0x98, 0x12, 0x27, 0x22, 0x69, 0x4d, 0x81, 0xbb, 0x00, 0x72, 0x7c, + 0x30, 0xf7, 0x0d, 0xec, 0x2a, 0x72, 0x32, 0x9c, 0xa1, 0xe6, 0xf0, 0xc3, + 0x91, 0x84, 0x65, 0xac, +}; +static const unsigned char kat3917_nonce[] = {0}; +static const unsigned char kat3917_persstr[] = {0}; +static const unsigned char kat3917_entropyinpr1[] = { + 0x0c, 0x45, 0x41, 0xd9, 0x84, 0xc2, 0xdb, 0xbf, 0xb1, 0x54, 0xb3, 0x73, + 0x45, 0x51, 0xe9, 0xfa, 0x16, 0x9e, 0xcc, 0xa2, 0xe5, 0xec, 0x0b, 0xea, + 0x08, 0x65, 0x45, 0x32, 0xa8, 0x11, 0xaa, 0xf2, 0x25, 0xd8, 0x57, 0x36, + 0xe7, 0xe8, 0x13, 0x6c, +}; +static const unsigned char kat3917_addinpr1[] = { + 0x9c, 0xc8, 0xb7, 0x74, 0xa9, 0x8d, 0x91, 0x61, 0x19, 0x5f, 0x77, 0x23, + 0xdd, 0xc3, 0x8c, 0x8a, 0xd7, 0x29, 0xd4, 0x8b, 0x6b, 0x9f, 0xa7, 0x12, + 0x6f, 0xde, 0x6e, 0x18, 0x25, 0xe3, 0x74, 0x72, 0x51, 0x22, 0x53, 0x0d, + 0xdd, 0xe2, 0x4c, 0x08, +}; +static const unsigned char kat3917_entropyinpr2[] = { + 0xf8, 0x85, 0x6e, 0x30, 0x6c, 0x9b, 0x65, 0x12, 0x86, 0x64, 0x7c, 0xe3, + 0xc0, 0xd3, 0x43, 0x11, 0xe2, 0x03, 0xbf, 0x46, 0x53, 0xa7, 0xc2, 0xf0, + 0xe1, 0x25, 0xb2, 0xb7, 0x7c, 0xb7, 0x8c, 0xdc, 0xad, 0x1f, 0x78, 0xbc, + 0xbc, 0x24, 0x66, 0x14, +}; +static const unsigned char kat3917_addinpr2[] = { + 0x86, 0x46, 0xa7, 0x2d, 0xc3, 0x16, 0x6c, 0xd4, 0x30, 0xdf, 0xe6, 0x42, + 0xfa, 0x88, 0x67, 0xb5, 0x2d, 0x0a, 0xc9, 0xee, 0x9b, 0xfb, 0x38, 0x8e, + 0xb6, 0x23, 0xbf, 0x2b, 0x64, 0xcb, 0x46, 0x23, 0xb5, 0x4f, 0x51, 0x0b, + 0x0e, 0xff, 0x31, 0xee, +}; +static const unsigned char kat3917_retbits[] = { + 0x81, 0xb6, 0xcd, 0x83, 0xde, 0x16, 0xad, 0x69, 0xb0, 0xa9, 0x18, 0xc5, + 0x92, 0x26, 0x8c, 0x5f, 0xa6, 0x18, 0x72, 0xf4, 0x82, 0x37, 0x52, 0x7a, + 0x99, 0x79, 0xcc, 0x56, 0x23, 0xac, 0x0e, 0x9a, 0x9e, 0xdc, 0x00, 0xa7, + 0x73, 0xa2, 0x8a, 0x6b, 0xb1, 0x92, 0x0b, 0x84, 0x25, 0xdd, 0x6c, 0x4f, + 0x41, 0x2c, 0xb1, 0x2e, 0xe7, 0xa6, 0x0a, 0x59, 0x94, 0x38, 0x73, 0xfa, + 0x64, 0x06, 0x00, 0x27, +}; +static const struct drbg_kat_pr_true kat3917_t = { + 1, kat3917_entropyin, kat3917_nonce, kat3917_persstr, + kat3917_entropyinpr1, kat3917_addinpr1, kat3917_entropyinpr2, + kat3917_addinpr2, kat3917_retbits +}; +static const struct drbg_kat kat3917 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3917_t +}; + +static const unsigned char kat3918_entropyin[] = { + 0x1b, 0xac, 0x87, 0xbf, 0x6f, 0xaa, 0xed, 0x98, 0x2b, 0xc1, 0x62, 0xda, + 0xe0, 0xf6, 0x0a, 0xb8, 0x9c, 0xc4, 0x62, 0xe2, 0x02, 0xa1, 0x5d, 0x28, + 0xc0, 0x3a, 0xa7, 0xf5, 0x4b, 0x46, 0x2c, 0xc0, 0x7f, 0x99, 0x06, 0xb0, + 0x94, 0xd6, 0x41, 0x90, +}; +static const unsigned char kat3918_nonce[] = {0}; +static const unsigned char kat3918_persstr[] = {0}; +static const unsigned char kat3918_entropyinpr1[] = { + 0xdc, 0x7b, 0x93, 0xb5, 0x2e, 0x4e, 0x7d, 0xc5, 0xc8, 0xa1, 0xb5, 0x15, + 0xec, 0xb8, 0xed, 0x1b, 0x83, 0xd3, 0x0b, 0x88, 0xd5, 0xd9, 0x7c, 0x18, + 0xf8, 0xfc, 0x99, 0x93, 0xed, 0x6a, 0x12, 0xe0, 0x11, 0x36, 0xf5, 0x85, + 0xe6, 0x3f, 0xfc, 0xba, +}; +static const unsigned char kat3918_addinpr1[] = { + 0x3a, 0x05, 0xe6, 0xf8, 0xb5, 0xca, 0xa4, 0x71, 0x9d, 0xd6, 0x87, 0xb9, + 0xfd, 0xca, 0x22, 0xfd, 0x52, 0x7b, 0x78, 0xcd, 0xbb, 0x88, 0xcc, 0x57, + 0x55, 0x41, 0x5b, 0x27, 0xdd, 0xce, 0xc1, 0xab, 0xff, 0x8d, 0xf2, 0xab, + 0x8f, 0xde, 0x92, 0xff, +}; +static const unsigned char kat3918_entropyinpr2[] = { + 0x43, 0x39, 0xb9, 0xe4, 0x9d, 0x92, 0xe5, 0x6a, 0x96, 0xb1, 0x0c, 0xbc, + 0x27, 0x1b, 0xea, 0xd5, 0xfc, 0x9d, 0x4e, 0xb1, 0xaf, 0xc7, 0x65, 0xbb, + 0x29, 0x78, 0xda, 0x3e, 0x8f, 0x05, 0x06, 0x60, 0xab, 0x0b, 0x3b, 0x3f, + 0xb6, 0x8b, 0xb3, 0xf3, +}; +static const unsigned char kat3918_addinpr2[] = { + 0x66, 0x27, 0x65, 0x17, 0x05, 0x37, 0x0c, 0x1b, 0xc8, 0xec, 0x97, 0xa2, + 0xfc, 0x22, 0xae, 0x61, 0xf2, 0x0a, 0x6f, 0x12, 0xac, 0x0b, 0x9a, 0x3f, + 0xc0, 0x19, 0x85, 0x20, 0x2b, 0x03, 0x60, 0x18, 0xf2, 0xb8, 0x15, 0x73, + 0x10, 0xf5, 0xe7, 0xde, +}; +static const unsigned char kat3918_retbits[] = { + 0xdb, 0x7c, 0x2b, 0x21, 0x00, 0x9d, 0x01, 0x2a, 0x98, 0x55, 0xc4, 0xc7, + 0xe4, 0x55, 0x7e, 0x47, 0x49, 0x51, 0x85, 0x3f, 0x99, 0x7a, 0x76, 0xef, + 0x20, 0x1b, 0xfd, 0xed, 0x6d, 0xa9, 0xc7, 0xf1, 0xc2, 0x28, 0xbd, 0x85, + 0x0f, 0x2b, 0xfb, 0xbe, 0xf4, 0x70, 0xf1, 0x4e, 0x39, 0x37, 0x7e, 0x2d, + 0x31, 0x33, 0x00, 0x8c, 0x86, 0xf7, 0xa5, 0x1a, 0x91, 0xfd, 0xfb, 0x0b, + 0xb8, 0xea, 0x9b, 0xf1, +}; +static const struct drbg_kat_pr_true kat3918_t = { + 2, kat3918_entropyin, kat3918_nonce, kat3918_persstr, + kat3918_entropyinpr1, kat3918_addinpr1, kat3918_entropyinpr2, + kat3918_addinpr2, kat3918_retbits +}; +static const struct drbg_kat kat3918 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3918_t +}; + +static const unsigned char kat3919_entropyin[] = { + 0x9f, 0x9b, 0x52, 0xf8, 0xd2, 0x22, 0xfe, 0x83, 0x45, 0x09, 0x58, 0xa7, + 0x3a, 0xc2, 0x57, 0x9f, 0x83, 0x04, 0x09, 0x34, 0x6e, 0xdf, 0xac, 0x37, + 0x33, 0xc6, 0x57, 0x15, 0xff, 0x6d, 0xe3, 0x18, 0xdf, 0x83, 0xf0, 0x4b, + 0x97, 0x27, 0x89, 0x06, +}; +static const unsigned char kat3919_nonce[] = {0}; +static const unsigned char kat3919_persstr[] = {0}; +static const unsigned char kat3919_entropyinpr1[] = { + 0x33, 0x9c, 0x90, 0x09, 0x90, 0xe3, 0xa0, 0x91, 0xb0, 0x4a, 0x8f, 0xf7, + 0xdd, 0x49, 0x8c, 0xfa, 0x2a, 0x45, 0xf7, 0x1c, 0x50, 0x0c, 0x84, 0xf2, + 0x03, 0xfe, 0x59, 0x30, 0x10, 0x01, 0x4a, 0xa4, 0x78, 0x63, 0x2b, 0xe2, + 0xf1, 0xa9, 0x76, 0x6c, +}; +static const unsigned char kat3919_addinpr1[] = { + 0x42, 0x70, 0x46, 0x32, 0x14, 0x7b, 0xc6, 0xc6, 0x58, 0x6b, 0x4b, 0xbd, + 0xd6, 0xfb, 0x2b, 0x9c, 0x47, 0x81, 0x4f, 0x85, 0x75, 0xb4, 0xf2, 0x37, + 0x46, 0xa1, 0x62, 0x65, 0x35, 0x1a, 0xf8, 0x13, 0x34, 0x3b, 0x78, 0x7e, + 0xa1, 0xbb, 0xdd, 0xfc, +}; +static const unsigned char kat3919_entropyinpr2[] = { + 0xc8, 0xc5, 0xb3, 0x5f, 0x64, 0x17, 0xd4, 0x15, 0x2b, 0x46, 0x65, 0x74, + 0xb3, 0xb9, 0x27, 0xc0, 0xf3, 0x38, 0x50, 0xe3, 0x46, 0xaf, 0x02, 0xe3, + 0x8d, 0x4b, 0x4f, 0x3b, 0x08, 0xa8, 0x29, 0xce, 0xbb, 0x1f, 0x8c, 0xb7, + 0xec, 0x82, 0x47, 0x39, +}; +static const unsigned char kat3919_addinpr2[] = { + 0x28, 0x53, 0x62, 0x91, 0x91, 0x82, 0x2c, 0xc6, 0x72, 0x25, 0x92, 0x31, + 0x0a, 0x34, 0x23, 0x64, 0xdb, 0xe3, 0xc5, 0xde, 0x87, 0x84, 0xe7, 0xe7, + 0x1c, 0xd5, 0x7d, 0xa8, 0x21, 0x0e, 0x8e, 0x95, 0x7a, 0x2c, 0xad, 0x7b, + 0x0b, 0x14, 0x64, 0xff, +}; +static const unsigned char kat3919_retbits[] = { + 0x86, 0xfc, 0xb4, 0xf9, 0xa8, 0xa9, 0xcb, 0x91, 0x81, 0x14, 0xdd, 0x5d, + 0x9b, 0x63, 0x98, 0xc9, 0x59, 0x2a, 0x9f, 0x82, 0x8a, 0xe3, 0x05, 0xe1, + 0x53, 0x4e, 0xb9, 0x94, 0xbc, 0x03, 0xca, 0x73, 0x52, 0x65, 0x5d, 0x57, + 0x73, 0x1f, 0x0d, 0x93, 0x4d, 0xeb, 0x9b, 0xbc, 0x82, 0xc6, 0x37, 0x96, + 0x60, 0x2c, 0xc8, 0x7c, 0x90, 0xfb, 0xf0, 0xf1, 0x2a, 0xe0, 0x75, 0x30, + 0xa0, 0x03, 0x1c, 0xca, +}; +static const struct drbg_kat_pr_true kat3919_t = { + 3, kat3919_entropyin, kat3919_nonce, kat3919_persstr, + kat3919_entropyinpr1, kat3919_addinpr1, kat3919_entropyinpr2, + kat3919_addinpr2, kat3919_retbits +}; +static const struct drbg_kat kat3919 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3919_t +}; + +static const unsigned char kat3920_entropyin[] = { + 0x7d, 0xe7, 0x58, 0x25, 0x9f, 0x0e, 0xde, 0x3e, 0xef, 0x9c, 0xd4, 0x9e, + 0x48, 0x02, 0xca, 0xcf, 0xb6, 0xa0, 0x07, 0xd0, 0x19, 0xa0, 0x7e, 0x8a, + 0x12, 0x65, 0x98, 0xc4, 0xd4, 0x06, 0xde, 0xab, 0x8c, 0x77, 0xbb, 0xbc, + 0xed, 0x0c, 0x50, 0xf0, +}; +static const unsigned char kat3920_nonce[] = {0}; +static const unsigned char kat3920_persstr[] = {0}; +static const unsigned char kat3920_entropyinpr1[] = { + 0xbc, 0x4f, 0xad, 0xba, 0x71, 0x19, 0x91, 0x4f, 0xf2, 0x67, 0xc7, 0x36, + 0x6e, 0x2d, 0xb8, 0xc9, 0xdf, 0x3f, 0xef, 0xd1, 0xcb, 0xde, 0x10, 0x1b, + 0x1d, 0xd5, 0x12, 0x28, 0x54, 0xba, 0xc1, 0x49, 0xa8, 0x09, 0x0b, 0x76, + 0x7b, 0x20, 0x65, 0x07, +}; +static const unsigned char kat3920_addinpr1[] = { + 0xd0, 0x64, 0x76, 0xf3, 0x82, 0x1a, 0x3b, 0x90, 0x53, 0x4d, 0xfe, 0x0b, + 0x54, 0xd1, 0x88, 0xa7, 0x9d, 0xd1, 0x49, 0x89, 0x24, 0x4f, 0xf9, 0x70, + 0xbb, 0x22, 0x4a, 0x2a, 0x51, 0x11, 0xc5, 0x57, 0xc7, 0x3e, 0xf9, 0xaf, + 0xc5, 0x0c, 0x22, 0x3a, +}; +static const unsigned char kat3920_entropyinpr2[] = { + 0xae, 0x34, 0x4d, 0x13, 0xe0, 0x57, 0x0d, 0x89, 0x99, 0xb8, 0x46, 0xe2, + 0xd2, 0xf4, 0x50, 0xa7, 0x7e, 0xd4, 0x5b, 0x68, 0xba, 0x43, 0x8a, 0x51, + 0xbe, 0x48, 0x43, 0xdd, 0x17, 0x6f, 0xd8, 0xeb, 0xed, 0x4c, 0x09, 0x09, + 0x9c, 0xb4, 0x0a, 0x40, +}; +static const unsigned char kat3920_addinpr2[] = { + 0x0b, 0xef, 0x4e, 0xe5, 0x68, 0xc0, 0x37, 0xb1, 0xfc, 0xa6, 0x55, 0x9b, + 0x26, 0x63, 0xf0, 0xb5, 0x2d, 0x06, 0xa5, 0xb0, 0xb1, 0x2c, 0x5d, 0x4f, + 0x0f, 0x93, 0x75, 0x4b, 0xd3, 0x21, 0xbe, 0x38, 0xdc, 0xc2, 0x19, 0x27, + 0x4b, 0xb0, 0xbf, 0x1e, +}; +static const unsigned char kat3920_retbits[] = { + 0xf5, 0x5b, 0x2c, 0xbe, 0xec, 0xb9, 0xde, 0x59, 0x1d, 0x8b, 0x9a, 0xc5, + 0xce, 0xa5, 0xfe, 0xc3, 0x9c, 0xd5, 0xa2, 0x96, 0xd4, 0x10, 0x03, 0x9a, + 0x40, 0xa6, 0x5a, 0x94, 0xc3, 0xe0, 0x0f, 0xaa, 0xdd, 0x5b, 0x91, 0xfc, + 0x3e, 0x61, 0xe9, 0xca, 0xea, 0xa4, 0xa9, 0x94, 0xd3, 0x10, 0xd1, 0xb4, + 0x63, 0xee, 0x7a, 0x4c, 0x04, 0x48, 0x69, 0x5f, 0x08, 0x72, 0x7a, 0x3a, + 0x86, 0x59, 0x09, 0xcb, +}; +static const struct drbg_kat_pr_true kat3920_t = { + 4, kat3920_entropyin, kat3920_nonce, kat3920_persstr, + kat3920_entropyinpr1, kat3920_addinpr1, kat3920_entropyinpr2, + kat3920_addinpr2, kat3920_retbits +}; +static const struct drbg_kat kat3920 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3920_t +}; + +static const unsigned char kat3921_entropyin[] = { + 0xd7, 0xfc, 0x99, 0x9d, 0xe0, 0x4d, 0x4e, 0x7c, 0xab, 0x03, 0xae, 0x5a, + 0xeb, 0x4a, 0x7c, 0x96, 0x35, 0x8b, 0x6b, 0x0b, 0x98, 0x3f, 0x2a, 0xac, + 0xd7, 0xf6, 0x56, 0x0e, 0x67, 0x5d, 0x4c, 0x37, 0xd8, 0x59, 0xce, 0x4d, + 0xc7, 0xea, 0x87, 0x90, +}; +static const unsigned char kat3921_nonce[] = {0}; +static const unsigned char kat3921_persstr[] = {0}; +static const unsigned char kat3921_entropyinpr1[] = { + 0xe3, 0xd6, 0xfd, 0x7d, 0x45, 0x7a, 0xce, 0x95, 0xa3, 0xc2, 0x5a, 0x35, + 0x6b, 0xa0, 0xb4, 0xfd, 0xd4, 0xd8, 0xc4, 0xb8, 0x70, 0xb9, 0xe1, 0xb6, + 0x5b, 0x04, 0xfb, 0x43, 0x27, 0xbb, 0xc2, 0x89, 0xeb, 0x2d, 0xda, 0x63, + 0x75, 0x1e, 0x5e, 0x95, +}; +static const unsigned char kat3921_addinpr1[] = { + 0xc7, 0x99, 0x8d, 0xdd, 0x0c, 0x4c, 0x2b, 0xab, 0xc0, 0x83, 0x61, 0x5a, + 0xb8, 0xfb, 0x9a, 0x8f, 0x97, 0x4d, 0xc6, 0x9e, 0xad, 0x4e, 0x5c, 0xb9, + 0x76, 0xee, 0x5d, 0x42, 0x66, 0x2f, 0x6a, 0xf4, 0x4f, 0xd5, 0xe4, 0xce, + 0x07, 0xab, 0xa8, 0x81, +}; +static const unsigned char kat3921_entropyinpr2[] = { + 0xff, 0xec, 0xdc, 0x20, 0x56, 0xe6, 0x36, 0xb9, 0xcc, 0x00, 0x86, 0xc4, + 0xf3, 0xb0, 0x2a, 0x90, 0xa5, 0xb8, 0x66, 0xc0, 0x49, 0xa4, 0x66, 0xd6, + 0x17, 0xfc, 0xea, 0xf3, 0x6f, 0x3a, 0xc7, 0x83, 0x65, 0x22, 0x14, 0x4e, + 0x9f, 0xb6, 0xd7, 0x10, +}; +static const unsigned char kat3921_addinpr2[] = { + 0x5a, 0x46, 0xa0, 0x0a, 0x2e, 0xf1, 0xba, 0x40, 0xa2, 0x4a, 0x71, 0x8b, + 0xf4, 0x1a, 0xc6, 0xbe, 0x26, 0xc7, 0x21, 0x16, 0x60, 0x9f, 0x70, 0x75, + 0x82, 0x5a, 0xb4, 0xfd, 0xbe, 0x43, 0x84, 0x24, 0x62, 0xed, 0xec, 0x3f, + 0xe7, 0x27, 0x07, 0x5d, +}; +static const unsigned char kat3921_retbits[] = { + 0x30, 0xd3, 0xb6, 0x0b, 0xec, 0x4b, 0x18, 0xec, 0x4e, 0x93, 0xbb, 0x09, + 0x6e, 0xb0, 0xb2, 0x00, 0xae, 0x4f, 0xb5, 0xe4, 0x61, 0x07, 0xb6, 0x33, + 0xa2, 0xcb, 0xc0, 0xc4, 0xfe, 0xd0, 0x6f, 0xec, 0x9c, 0x75, 0xe3, 0x7d, + 0x55, 0x3c, 0x4c, 0xe1, 0xf6, 0x3a, 0xad, 0x58, 0x19, 0xd8, 0xf3, 0x8b, + 0x43, 0xd5, 0x44, 0x59, 0x17, 0xf4, 0x20, 0x77, 0x33, 0xb2, 0xe2, 0xdf, + 0xc0, 0xf0, 0xd3, 0x51, +}; +static const struct drbg_kat_pr_true kat3921_t = { + 5, kat3921_entropyin, kat3921_nonce, kat3921_persstr, + kat3921_entropyinpr1, kat3921_addinpr1, kat3921_entropyinpr2, + kat3921_addinpr2, kat3921_retbits +}; +static const struct drbg_kat kat3921 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3921_t +}; + +static const unsigned char kat3922_entropyin[] = { + 0x54, 0xca, 0xfb, 0x5d, 0x51, 0x6e, 0x54, 0xa4, 0x81, 0xa4, 0xeb, 0xf5, + 0xe8, 0x1b, 0x89, 0x14, 0xb8, 0x21, 0xf2, 0x3b, 0x12, 0x25, 0x32, 0xea, + 0x14, 0x0c, 0x37, 0x07, 0x5a, 0x43, 0x73, 0xbc, 0x1a, 0x5c, 0x32, 0x42, + 0x09, 0x26, 0x6a, 0x1d, +}; +static const unsigned char kat3922_nonce[] = {0}; +static const unsigned char kat3922_persstr[] = {0}; +static const unsigned char kat3922_entropyinpr1[] = { + 0x7a, 0x3d, 0x33, 0x86, 0x08, 0xca, 0xc0, 0x03, 0xc1, 0x6e, 0x28, 0xcd, + 0x77, 0x9b, 0x12, 0x46, 0x59, 0xfd, 0xdd, 0x44, 0x5d, 0xaa, 0xc0, 0xc9, + 0xb2, 0x6d, 0x32, 0x98, 0x57, 0x3a, 0xb5, 0x05, 0x68, 0x97, 0x9c, 0xa0, + 0x34, 0xb7, 0x7b, 0x45, +}; +static const unsigned char kat3922_addinpr1[] = { + 0x2b, 0x4b, 0x5d, 0x18, 0xf0, 0x56, 0x6e, 0xd8, 0x96, 0xe1, 0x3f, 0x2b, + 0xe0, 0xa5, 0x4c, 0xb6, 0x8d, 0x44, 0x52, 0xe4, 0x3f, 0x36, 0x18, 0xa8, + 0x7e, 0x04, 0xb7, 0xc0, 0x7f, 0x0a, 0xb6, 0x25, 0xe3, 0x31, 0xde, 0xe5, + 0xd4, 0xd2, 0x93, 0x9c, +}; +static const unsigned char kat3922_entropyinpr2[] = { + 0xcd, 0x24, 0xf9, 0xab, 0x7a, 0xb5, 0x26, 0x3c, 0xf7, 0xab, 0x3a, 0xbb, + 0x6f, 0xdf, 0x21, 0xb3, 0x0d, 0x04, 0x97, 0x9b, 0x5d, 0x90, 0x86, 0x16, + 0xe4, 0xa8, 0xf6, 0x53, 0xcf, 0x07, 0x01, 0x26, 0xdd, 0xc3, 0x12, 0x9e, + 0xb9, 0xf7, 0x25, 0xf6, +}; +static const unsigned char kat3922_addinpr2[] = { + 0x0c, 0xec, 0x7d, 0xed, 0x49, 0x33, 0x01, 0x92, 0x9c, 0xb2, 0x27, 0x40, + 0x46, 0x34, 0x7c, 0xc9, 0x90, 0x31, 0x4d, 0xeb, 0xcc, 0x42, 0x3b, 0xc3, + 0x20, 0xc6, 0xd5, 0x40, 0x07, 0x9c, 0x6a, 0x0a, 0x9b, 0xd0, 0x34, 0x09, + 0x34, 0xcc, 0x04, 0x2d, +}; +static const unsigned char kat3922_retbits[] = { + 0xd3, 0x57, 0x63, 0xaf, 0x07, 0xa4, 0xf2, 0x44, 0x17, 0x52, 0x5e, 0x9d, + 0xdc, 0xa6, 0x45, 0x06, 0xf5, 0x59, 0x05, 0x90, 0x0c, 0x75, 0xb8, 0xdd, + 0x83, 0xbc, 0xca, 0x6a, 0xa4, 0x41, 0xc1, 0x7a, 0xe1, 0x5d, 0x19, 0x2a, + 0x2f, 0xca, 0x46, 0x64, 0xba, 0x53, 0x0c, 0x8e, 0x38, 0x6f, 0x9b, 0x15, + 0x64, 0x80, 0xe1, 0x75, 0x36, 0xcc, 0x4f, 0x4e, 0x91, 0x0d, 0x57, 0x90, + 0x06, 0x2c, 0x7c, 0x02, +}; +static const struct drbg_kat_pr_true kat3922_t = { + 6, kat3922_entropyin, kat3922_nonce, kat3922_persstr, + kat3922_entropyinpr1, kat3922_addinpr1, kat3922_entropyinpr2, + kat3922_addinpr2, kat3922_retbits +}; +static const struct drbg_kat kat3922 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3922_t +}; + +static const unsigned char kat3923_entropyin[] = { + 0xb6, 0xbf, 0x46, 0xcb, 0xbe, 0x2b, 0x70, 0x66, 0x3a, 0x9d, 0xff, 0x11, + 0x7e, 0xb5, 0xa6, 0x1c, 0xeb, 0x03, 0x43, 0x3c, 0x48, 0x69, 0xbe, 0xbb, + 0xe3, 0xc5, 0x9c, 0xba, 0xc0, 0x3c, 0x12, 0x8f, 0x5b, 0x9d, 0x4c, 0x33, + 0xdb, 0x79, 0xad, 0x75, +}; +static const unsigned char kat3923_nonce[] = {0}; +static const unsigned char kat3923_persstr[] = {0}; +static const unsigned char kat3923_entropyinpr1[] = { + 0x96, 0xc7, 0x54, 0xf5, 0x45, 0x46, 0xdb, 0x07, 0x8b, 0x28, 0xe8, 0xfd, + 0x83, 0xda, 0x4c, 0xa9, 0x29, 0xb7, 0x5e, 0xf7, 0xb6, 0xd5, 0xf8, 0xea, + 0xc9, 0x5a, 0x95, 0xde, 0x22, 0x82, 0x9f, 0x8c, 0xa0, 0x16, 0x7b, 0xdf, + 0xbb, 0x59, 0xa8, 0xa6, +}; +static const unsigned char kat3923_addinpr1[] = { + 0xcb, 0x4f, 0x5f, 0x7f, 0xa3, 0xf6, 0xa6, 0x4c, 0x2c, 0x00, 0xc8, 0x44, + 0xa4, 0x9b, 0xfb, 0xfb, 0x54, 0x76, 0xa1, 0x12, 0x2d, 0xeb, 0x24, 0x2e, + 0xf6, 0xad, 0xd8, 0xd2, 0xc7, 0x7a, 0x10, 0xc5, 0x4e, 0xfc, 0x63, 0xee, + 0x8c, 0x59, 0xb4, 0xf9, +}; +static const unsigned char kat3923_entropyinpr2[] = { + 0xf9, 0xce, 0x30, 0x05, 0x2c, 0xb3, 0x2f, 0xe2, 0x84, 0x02, 0x93, 0x45, + 0x23, 0xce, 0x2d, 0x2a, 0xeb, 0x82, 0x0f, 0x6f, 0x65, 0xb6, 0xe2, 0x2f, + 0xbc, 0x75, 0xf5, 0x8a, 0x1e, 0xcf, 0x4b, 0x1f, 0xe3, 0x88, 0x58, 0x9d, + 0x31, 0x23, 0xa3, 0xc3, +}; +static const unsigned char kat3923_addinpr2[] = { + 0xb6, 0xf8, 0x87, 0x0c, 0x7d, 0x5d, 0x58, 0x5a, 0x55, 0x81, 0x04, 0xe2, + 0x0e, 0xa6, 0x93, 0x4f, 0x70, 0x90, 0x0d, 0xad, 0x35, 0xa3, 0x0e, 0x9d, + 0x53, 0x0e, 0xba, 0x97, 0x4d, 0xc4, 0x15, 0x8a, 0x3b, 0x34, 0x2a, 0xd8, + 0xb9, 0x3a, 0x33, 0x23, +}; +static const unsigned char kat3923_retbits[] = { + 0xcb, 0x0d, 0x1b, 0x96, 0xb5, 0xcc, 0x16, 0x61, 0x86, 0x66, 0xfa, 0x81, + 0xe0, 0x62, 0x65, 0x70, 0x76, 0xbf, 0x59, 0x0d, 0x99, 0x08, 0xf4, 0x80, + 0xd9, 0xe5, 0xe5, 0xb5, 0x7d, 0x5b, 0x45, 0xa6, 0x83, 0xdd, 0x11, 0x16, + 0xff, 0xe0, 0x34, 0x6a, 0x33, 0xb8, 0xe4, 0xb9, 0xdb, 0xa1, 0xed, 0x1c, + 0x4b, 0x4a, 0xd6, 0x75, 0xa7, 0xd9, 0x01, 0x82, 0xcb, 0x88, 0xe6, 0x11, + 0xeb, 0x52, 0x26, 0xd1, +}; +static const struct drbg_kat_pr_true kat3923_t = { + 7, kat3923_entropyin, kat3923_nonce, kat3923_persstr, + kat3923_entropyinpr1, kat3923_addinpr1, kat3923_entropyinpr2, + kat3923_addinpr2, kat3923_retbits +}; +static const struct drbg_kat kat3923 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3923_t +}; + +static const unsigned char kat3924_entropyin[] = { + 0x41, 0x3e, 0xb0, 0xc2, 0xc2, 0x05, 0xd7, 0x25, 0x66, 0xa8, 0xec, 0x67, + 0xc3, 0x08, 0xcb, 0x2b, 0x22, 0xda, 0x03, 0x8b, 0xc2, 0x57, 0xc1, 0x17, + 0x0e, 0x9e, 0xad, 0x51, 0x14, 0x5a, 0x2c, 0xfe, 0xd6, 0x07, 0xff, 0x7a, + 0x4c, 0x8b, 0xb3, 0x45, +}; +static const unsigned char kat3924_nonce[] = {0}; +static const unsigned char kat3924_persstr[] = {0}; +static const unsigned char kat3924_entropyinpr1[] = { + 0x01, 0x64, 0xc3, 0x79, 0xde, 0x45, 0x96, 0x3a, 0xde, 0x5d, 0x8d, 0xf7, + 0x97, 0x3b, 0x17, 0xbf, 0x92, 0x6f, 0xd4, 0x5e, 0x71, 0x28, 0x8b, 0x2d, + 0xa7, 0x6a, 0xe7, 0x8a, 0x23, 0x54, 0x74, 0x31, 0x9e, 0xb0, 0xc1, 0xa1, + 0x3c, 0xb3, 0x4a, 0x01, +}; +static const unsigned char kat3924_addinpr1[] = { + 0xfb, 0x52, 0x4a, 0xca, 0x2c, 0xfc, 0x0e, 0xa9, 0x42, 0x9e, 0x47, 0x1e, + 0xae, 0xfd, 0x1d, 0x89, 0xad, 0x52, 0x2b, 0x33, 0x1e, 0xa3, 0x1c, 0x7a, + 0x94, 0xf3, 0x20, 0xe4, 0xd2, 0x82, 0xc3, 0x7f, 0xd4, 0x9a, 0xd4, 0x10, + 0x34, 0xac, 0xf4, 0x1d, +}; +static const unsigned char kat3924_entropyinpr2[] = { + 0xbe, 0xa1, 0x6b, 0xbc, 0x6d, 0x84, 0x16, 0xfa, 0x32, 0x08, 0x0b, 0x4a, + 0xde, 0x84, 0xa3, 0x56, 0xfc, 0x97, 0x8f, 0xb9, 0x46, 0x07, 0x55, 0x59, + 0x01, 0xef, 0x7d, 0x20, 0xb8, 0x4f, 0xe3, 0xd0, 0x51, 0x8c, 0x23, 0x55, + 0x13, 0xee, 0xee, 0xf4, +}; +static const unsigned char kat3924_addinpr2[] = { + 0x44, 0x37, 0x7c, 0xd9, 0x6c, 0x92, 0xa3, 0x35, 0xd2, 0x07, 0x4e, 0x3f, + 0xcc, 0x3e, 0x88, 0x2a, 0xf6, 0x36, 0xb9, 0x44, 0xd1, 0x97, 0x24, 0xca, + 0x68, 0xde, 0x5e, 0x6e, 0x31, 0xbe, 0x21, 0xac, 0x49, 0x5e, 0x77, 0xee, + 0x65, 0xdd, 0x3b, 0x53, +}; +static const unsigned char kat3924_retbits[] = { + 0xdd, 0x51, 0x73, 0x80, 0x52, 0xf0, 0x7f, 0xc1, 0x31, 0x7b, 0x7f, 0xaf, + 0x27, 0x0f, 0x86, 0xdb, 0xf5, 0x56, 0xf4, 0x28, 0xcc, 0xaf, 0x2b, 0x5c, + 0x87, 0x23, 0x4f, 0x19, 0x63, 0xd9, 0x33, 0xf2, 0x48, 0x51, 0x15, 0xa2, + 0x46, 0xbf, 0x24, 0x7a, 0x5e, 0xb0, 0x10, 0x6f, 0x00, 0x16, 0xfa, 0x1f, + 0x1b, 0xb1, 0x22, 0x0e, 0x3e, 0x67, 0xdc, 0x07, 0x9c, 0xf9, 0x04, 0x3e, + 0x2a, 0x47, 0x89, 0xe9, +}; +static const struct drbg_kat_pr_true kat3924_t = { + 8, kat3924_entropyin, kat3924_nonce, kat3924_persstr, + kat3924_entropyinpr1, kat3924_addinpr1, kat3924_entropyinpr2, + kat3924_addinpr2, kat3924_retbits +}; +static const struct drbg_kat kat3924 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3924_t +}; + +static const unsigned char kat3925_entropyin[] = { + 0xf4, 0x9c, 0x04, 0x2c, 0x04, 0x33, 0xec, 0x36, 0xae, 0x5b, 0x5e, 0x8c, + 0xcf, 0x35, 0xc1, 0xcd, 0x86, 0xd5, 0xc7, 0xcf, 0xad, 0x38, 0xcb, 0xec, + 0x2b, 0xdd, 0x7b, 0x89, 0x91, 0xe1, 0xa9, 0xb9, 0xcb, 0x70, 0x7c, 0x29, + 0xa6, 0x0f, 0xd2, 0x03, +}; +static const unsigned char kat3925_nonce[] = {0}; +static const unsigned char kat3925_persstr[] = {0}; +static const unsigned char kat3925_entropyinpr1[] = { + 0x8c, 0x0f, 0x0d, 0x3d, 0x18, 0x85, 0x61, 0x2c, 0xc5, 0x83, 0x84, 0x0e, + 0x51, 0x33, 0xa3, 0x25, 0x3e, 0x41, 0xe6, 0x48, 0xe5, 0x94, 0xb9, 0x5e, + 0x39, 0xb7, 0x9e, 0xb5, 0xb9, 0x9d, 0x4f, 0x55, 0x60, 0x64, 0x6d, 0xb1, + 0x1e, 0xc1, 0x52, 0xab, +}; +static const unsigned char kat3925_addinpr1[] = { + 0xde, 0x6d, 0x6b, 0x66, 0xcd, 0x0b, 0x4f, 0x00, 0xb4, 0xf2, 0x1f, 0x6b, + 0x70, 0x7c, 0xd3, 0xb1, 0x64, 0x39, 0xdc, 0x8d, 0xdb, 0xf4, 0xde, 0x16, + 0x90, 0x29, 0x71, 0xb3, 0x88, 0x41, 0x34, 0xe3, 0xbd, 0x53, 0xe7, 0x38, + 0xcf, 0x99, 0xe8, 0x50, +}; +static const unsigned char kat3925_entropyinpr2[] = { + 0x0d, 0x27, 0xc7, 0x31, 0xa0, 0xdf, 0x9c, 0x3d, 0xfe, 0x3b, 0x4a, 0x05, + 0x00, 0x17, 0x76, 0x53, 0x22, 0x09, 0x87, 0x5a, 0x44, 0x27, 0xb8, 0x3d, + 0x03, 0xd5, 0xce, 0x49, 0x2f, 0x62, 0xa4, 0x25, 0xe5, 0xab, 0x34, 0x23, + 0x2c, 0x02, 0xd4, 0x97, +}; +static const unsigned char kat3925_addinpr2[] = { + 0x6d, 0xb7, 0x52, 0xa5, 0xd5, 0x6f, 0x1f, 0xad, 0xc9, 0x58, 0xdb, 0x0a, + 0xc4, 0x86, 0xd7, 0xdb, 0xb1, 0x93, 0x41, 0x74, 0x9f, 0x4b, 0x0b, 0x41, + 0xfa, 0x5d, 0xf9, 0x29, 0x19, 0xba, 0xb9, 0x36, 0xd9, 0x3a, 0x4c, 0xbd, + 0xfc, 0x14, 0x3d, 0x98, +}; +static const unsigned char kat3925_retbits[] = { + 0x61, 0xf7, 0xd3, 0x8c, 0xe6, 0x8f, 0x07, 0xa3, 0xc8, 0x3c, 0xf3, 0xe1, + 0x9b, 0xd8, 0xd2, 0x4b, 0x33, 0x3b, 0x67, 0x79, 0xeb, 0x31, 0x2e, 0x46, + 0x1e, 0x64, 0x86, 0x20, 0x8b, 0x6b, 0x7f, 0x79, 0x70, 0xa7, 0x48, 0x0c, + 0x0c, 0x19, 0xfb, 0xef, 0xf3, 0x2a, 0xe4, 0xae, 0x7d, 0xbc, 0xfa, 0xe9, + 0xb3, 0x6c, 0x1a, 0x33, 0xf3, 0x74, 0x08, 0xf0, 0xc5, 0xa5, 0x70, 0x57, + 0xdd, 0xe4, 0x96, 0xd6, +}; +static const struct drbg_kat_pr_true kat3925_t = { + 9, kat3925_entropyin, kat3925_nonce, kat3925_persstr, + kat3925_entropyinpr1, kat3925_addinpr1, kat3925_entropyinpr2, + kat3925_addinpr2, kat3925_retbits +}; +static const struct drbg_kat kat3925 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3925_t +}; + +static const unsigned char kat3926_entropyin[] = { + 0xfe, 0x79, 0x49, 0x9a, 0xdd, 0xa1, 0xb1, 0x76, 0xe2, 0x75, 0xd8, 0xc3, + 0x17, 0x43, 0x8d, 0x70, 0xa1, 0xb6, 0x2b, 0x0b, 0xc0, 0x56, 0x1c, 0xf1, + 0xcb, 0x62, 0xb5, 0xe4, 0xcd, 0x99, 0x79, 0x8c, 0x32, 0xdc, 0x16, 0x1a, + 0x81, 0x81, 0xc7, 0x8b, +}; +static const unsigned char kat3926_nonce[] = {0}; +static const unsigned char kat3926_persstr[] = {0}; +static const unsigned char kat3926_entropyinpr1[] = { + 0x47, 0xf9, 0x0e, 0x57, 0x0b, 0xd1, 0x1a, 0x35, 0xab, 0x58, 0x62, 0xf6, + 0x73, 0x58, 0xac, 0xd7, 0xc7, 0x98, 0xb3, 0x88, 0xe5, 0x44, 0x1a, 0xe8, + 0x6f, 0x90, 0xc0, 0xa7, 0xc0, 0x71, 0x48, 0xcf, 0x91, 0xdd, 0x74, 0x81, + 0x87, 0x07, 0x5b, 0x27, +}; +static const unsigned char kat3926_addinpr1[] = { + 0xc9, 0x25, 0x0f, 0x70, 0x0a, 0x5c, 0xbc, 0xff, 0x5e, 0xdd, 0x4b, 0x0a, + 0x0f, 0xe4, 0x3f, 0x93, 0x02, 0x85, 0x17, 0xe4, 0xe0, 0x80, 0xe7, 0x86, + 0x59, 0x42, 0xd6, 0xa3, 0xfa, 0xe0, 0x06, 0x1e, 0x3d, 0x54, 0x20, 0x36, + 0xb3, 0x9f, 0xa6, 0x69, +}; +static const unsigned char kat3926_entropyinpr2[] = { + 0xaa, 0x7a, 0xa6, 0x9b, 0xd2, 0xc3, 0xa0, 0x45, 0xa6, 0x46, 0xab, 0xe9, + 0xe2, 0xcb, 0xec, 0x16, 0x66, 0x86, 0xd3, 0x9e, 0xde, 0x26, 0xcc, 0xa5, + 0xbe, 0x38, 0x81, 0x41, 0x0d, 0x4d, 0x03, 0xc2, 0xc3, 0xdd, 0x4a, 0x8a, + 0x08, 0x2a, 0xb5, 0x86, +}; +static const unsigned char kat3926_addinpr2[] = { + 0x90, 0x30, 0x1d, 0xdd, 0x17, 0xf7, 0xb0, 0x0a, 0x10, 0x0d, 0x41, 0x18, + 0x35, 0x08, 0xeb, 0x46, 0xaf, 0x45, 0xbb, 0xd4, 0xfd, 0xe8, 0x61, 0xfa, + 0xde, 0x4b, 0x02, 0x2c, 0x78, 0x6a, 0xdd, 0xfc, 0xd2, 0xdf, 0x94, 0xdb, + 0xca, 0x19, 0x5d, 0xce, +}; +static const unsigned char kat3926_retbits[] = { + 0x2d, 0x38, 0x6e, 0x56, 0x2d, 0x03, 0x88, 0xfb, 0x54, 0xb0, 0xc8, 0x24, + 0xd6, 0x00, 0xf2, 0x1f, 0x87, 0xba, 0x6f, 0x5b, 0xeb, 0xfc, 0xbb, 0x75, + 0x77, 0x92, 0x51, 0x30, 0x93, 0xcc, 0x8b, 0xc0, 0xcf, 0x43, 0x1c, 0x05, + 0x99, 0x5b, 0x7b, 0x20, 0xbe, 0xf0, 0x2a, 0xa1, 0xd9, 0x41, 0x53, 0xeb, + 0x94, 0xdb, 0x8a, 0x4f, 0xfb, 0x27, 0x77, 0xa4, 0x59, 0x88, 0xc4, 0x94, + 0xc1, 0xd7, 0x1a, 0x8c, +}; +static const struct drbg_kat_pr_true kat3926_t = { + 10, kat3926_entropyin, kat3926_nonce, kat3926_persstr, + kat3926_entropyinpr1, kat3926_addinpr1, kat3926_entropyinpr2, + kat3926_addinpr2, kat3926_retbits +}; +static const struct drbg_kat kat3926 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3926_t +}; + +static const unsigned char kat3927_entropyin[] = { + 0x38, 0xa0, 0x3b, 0xc9, 0xce, 0xb8, 0xb6, 0xba, 0x06, 0x44, 0xc6, 0xab, + 0x88, 0x29, 0x4d, 0x5c, 0x63, 0xf5, 0xc5, 0x6e, 0xd0, 0x2e, 0x3c, 0x1c, + 0x9d, 0x69, 0x18, 0xde, 0x8a, 0xd7, 0xfd, 0xae, 0xa7, 0x0b, 0xb7, 0x3c, + 0x77, 0xad, 0x5d, 0xa5, +}; +static const unsigned char kat3927_nonce[] = {0}; +static const unsigned char kat3927_persstr[] = {0}; +static const unsigned char kat3927_entropyinpr1[] = { + 0xc2, 0xab, 0xf2, 0x9d, 0xbb, 0x60, 0x73, 0xb2, 0x90, 0x5c, 0x3b, 0x18, + 0x2a, 0xb6, 0xb1, 0x14, 0x78, 0x48, 0x7d, 0x51, 0x5c, 0x87, 0x51, 0xcf, + 0x65, 0x6d, 0x0d, 0xd9, 0x59, 0x43, 0x30, 0x3a, 0x64, 0xb9, 0xe2, 0x58, + 0x38, 0x5c, 0x59, 0x72, +}; +static const unsigned char kat3927_addinpr1[] = { + 0x0b, 0x77, 0xf7, 0xad, 0xbe, 0xa5, 0xdc, 0xb8, 0xa2, 0xa5, 0xb7, 0x19, + 0x9e, 0x3b, 0xf4, 0xa2, 0x90, 0x58, 0x03, 0xb0, 0x15, 0xf0, 0x8f, 0xbc, + 0x86, 0x86, 0x6c, 0x3e, 0x04, 0x3d, 0x5b, 0xc3, 0x59, 0xe4, 0x70, 0x34, + 0x78, 0xc9, 0xf1, 0xff, +}; +static const unsigned char kat3927_entropyinpr2[] = { + 0x68, 0x32, 0x2a, 0x6a, 0x46, 0x68, 0xac, 0xb1, 0x7f, 0xb1, 0x9e, 0xe4, + 0xc1, 0x87, 0xdb, 0xa2, 0x10, 0x8c, 0xdb, 0x14, 0x57, 0x01, 0x46, 0x2d, + 0xda, 0x21, 0xdb, 0x47, 0x2a, 0x96, 0x47, 0x4c, 0x8d, 0x81, 0x33, 0x5b, + 0x1c, 0x02, 0x7c, 0xab, +}; +static const unsigned char kat3927_addinpr2[] = { + 0xfc, 0xbf, 0x14, 0x7a, 0xee, 0xbc, 0x0e, 0xd5, 0x81, 0x38, 0xe0, 0x7b, + 0xdf, 0xab, 0x3c, 0x9b, 0xe6, 0x20, 0xbd, 0x72, 0x6e, 0x42, 0xa3, 0x8a, + 0x48, 0x8b, 0x5d, 0xb5, 0x33, 0x22, 0xb9, 0xde, 0x93, 0x2b, 0x52, 0xb5, + 0x15, 0x2a, 0x33, 0x8b, +}; +static const unsigned char kat3927_retbits[] = { + 0xa1, 0x87, 0xe8, 0x21, 0x39, 0xd9, 0xac, 0x54, 0x10, 0xcf, 0x45, 0x8e, + 0x7c, 0x6b, 0x80, 0xbb, 0xb7, 0xdc, 0x12, 0x73, 0x19, 0xba, 0xdf, 0x9a, + 0xad, 0x37, 0x34, 0x91, 0x95, 0x1a, 0x46, 0xc7, 0x7c, 0x8d, 0x69, 0xd9, + 0x36, 0x89, 0x5f, 0x4e, 0xbc, 0x4a, 0xf0, 0x3b, 0x83, 0x11, 0x99, 0xa9, + 0x9e, 0x8f, 0xa8, 0x9e, 0xc1, 0x9b, 0xd0, 0x83, 0x88, 0xa8, 0x82, 0x72, + 0x95, 0x7f, 0x49, 0xb3, +}; +static const struct drbg_kat_pr_true kat3927_t = { + 11, kat3927_entropyin, kat3927_nonce, kat3927_persstr, + kat3927_entropyinpr1, kat3927_addinpr1, kat3927_entropyinpr2, + kat3927_addinpr2, kat3927_retbits +}; +static const struct drbg_kat kat3927 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3927_t +}; + +static const unsigned char kat3928_entropyin[] = { + 0xc9, 0xbc, 0x26, 0x37, 0x6a, 0x00, 0xfa, 0x43, 0x0d, 0x4b, 0xe0, 0x71, + 0xa8, 0xbf, 0xef, 0xfd, 0xa7, 0xc8, 0xd3, 0x2a, 0xa3, 0x50, 0x88, 0x95, + 0x4f, 0xb3, 0x04, 0x77, 0xff, 0xef, 0xc1, 0x2d, 0xd7, 0x5d, 0x61, 0x69, + 0xb9, 0x9f, 0xd6, 0xdf, +}; +static const unsigned char kat3928_nonce[] = {0}; +static const unsigned char kat3928_persstr[] = {0}; +static const unsigned char kat3928_entropyinpr1[] = { + 0x54, 0xc0, 0xbb, 0xd4, 0x09, 0x96, 0xe2, 0x92, 0xb4, 0xcd, 0x5f, 0x36, + 0xa0, 0x4e, 0xd8, 0xbb, 0x9e, 0xe3, 0x14, 0x59, 0xaf, 0x79, 0x69, 0x60, + 0x31, 0x9d, 0xd3, 0x94, 0x0c, 0xf6, 0xd6, 0x8c, 0xc1, 0x87, 0x50, 0x06, + 0xdd, 0x63, 0x72, 0x55, +}; +static const unsigned char kat3928_addinpr1[] = { + 0x33, 0x4b, 0xee, 0x95, 0xef, 0x44, 0xae, 0xc5, 0xac, 0x49, 0x47, 0xdd, + 0x39, 0xa1, 0x99, 0x07, 0x2a, 0x4c, 0x82, 0xcc, 0x64, 0xcf, 0xc2, 0x42, + 0xa9, 0xe5, 0x40, 0xb4, 0x3b, 0xc4, 0xbe, 0x88, 0xe9, 0x5f, 0xbd, 0x87, + 0xf7, 0x75, 0xe5, 0x20, +}; +static const unsigned char kat3928_entropyinpr2[] = { + 0xf6, 0xa0, 0x98, 0xd9, 0x79, 0xba, 0x71, 0x86, 0x4f, 0xbd, 0x6c, 0x14, + 0x92, 0x1a, 0x1e, 0xe1, 0xc6, 0x23, 0x0a, 0x23, 0xc1, 0xef, 0xcf, 0xde, + 0x66, 0xa7, 0x2a, 0x97, 0x18, 0x36, 0x29, 0x4c, 0x37, 0x58, 0xb6, 0x44, + 0x72, 0x39, 0xab, 0x57, +}; +static const unsigned char kat3928_addinpr2[] = { + 0xeb, 0x14, 0x47, 0xce, 0xeb, 0xb4, 0xd1, 0xb5, 0x71, 0x59, 0x1e, 0x69, + 0xf1, 0xf2, 0x15, 0x72, 0xee, 0xca, 0x07, 0x96, 0xec, 0x06, 0x9e, 0x4c, + 0x30, 0xf4, 0x77, 0x66, 0x2c, 0xb6, 0x61, 0x9c, 0x4f, 0x51, 0x6a, 0xbb, + 0x9a, 0x13, 0x34, 0x31, +}; +static const unsigned char kat3928_retbits[] = { + 0xbc, 0xce, 0xa4, 0x96, 0xed, 0x48, 0xef, 0x68, 0xf3, 0xf4, 0x5b, 0xa4, + 0x9c, 0xd6, 0xac, 0x5c, 0x71, 0x15, 0x4d, 0x2b, 0x70, 0x9d, 0xf4, 0x29, + 0x67, 0x3a, 0x45, 0xc4, 0x05, 0x68, 0x8b, 0x71, 0xad, 0xf4, 0x35, 0x26, + 0x1a, 0xfc, 0x46, 0xd6, 0x41, 0x49, 0x76, 0x34, 0x0c, 0x7b, 0xd3, 0x2e, + 0xee, 0x7a, 0x4b, 0xaa, 0x4f, 0xbc, 0x4b, 0xaa, 0xe4, 0xd8, 0x07, 0xc3, + 0xc7, 0x45, 0x9c, 0xe4, +}; +static const struct drbg_kat_pr_true kat3928_t = { + 12, kat3928_entropyin, kat3928_nonce, kat3928_persstr, + kat3928_entropyinpr1, kat3928_addinpr1, kat3928_entropyinpr2, + kat3928_addinpr2, kat3928_retbits +}; +static const struct drbg_kat kat3928 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3928_t +}; + +static const unsigned char kat3929_entropyin[] = { + 0xfe, 0xe8, 0x31, 0x8d, 0x60, 0x4c, 0xac, 0x10, 0x53, 0x44, 0x59, 0x2f, + 0x41, 0x40, 0x10, 0xad, 0xe0, 0x86, 0xcd, 0xc2, 0xf0, 0xd4, 0x13, 0x45, + 0xa7, 0x73, 0xe7, 0xfd, 0x69, 0x27, 0xbe, 0x7e, 0x98, 0x4b, 0x7b, 0x51, + 0x2f, 0x93, 0xec, 0xa7, +}; +static const unsigned char kat3929_nonce[] = {0}; +static const unsigned char kat3929_persstr[] = {0}; +static const unsigned char kat3929_entropyinpr1[] = { + 0xb8, 0x36, 0x24, 0x05, 0x74, 0x8b, 0x1d, 0x5a, 0xe9, 0x57, 0xbf, 0xe5, + 0x79, 0x4a, 0x55, 0x78, 0xdf, 0xa8, 0xf7, 0x51, 0x03, 0x69, 0xbe, 0x62, + 0xd6, 0xb0, 0x86, 0xe4, 0x66, 0x29, 0x1e, 0x5f, 0xa0, 0x07, 0x99, 0x90, + 0x21, 0x79, 0x7d, 0x5e, +}; +static const unsigned char kat3929_addinpr1[] = { + 0xc5, 0xd2, 0x58, 0xa3, 0x16, 0x16, 0xe0, 0xc4, 0xf7, 0x0d, 0xa4, 0xbb, + 0x47, 0x20, 0x45, 0xc8, 0x6b, 0x14, 0x47, 0x6c, 0xdf, 0x0b, 0xc6, 0xf1, + 0x17, 0x9e, 0x23, 0x38, 0xd9, 0x03, 0x0a, 0x19, 0xff, 0xb8, 0xc4, 0x6a, + 0x62, 0x8f, 0xbc, 0x55, +}; +static const unsigned char kat3929_entropyinpr2[] = { + 0x8a, 0xa6, 0xcd, 0xf5, 0x28, 0x98, 0xe5, 0xa0, 0xa5, 0x1e, 0xd6, 0x34, + 0xc3, 0xa2, 0x41, 0x08, 0x94, 0x3d, 0x8c, 0x49, 0x50, 0x77, 0xce, 0xcf, + 0x9e, 0xea, 0x68, 0x96, 0xdc, 0x15, 0x04, 0xd7, 0x41, 0xcb, 0x46, 0xa1, + 0xcb, 0x43, 0xd5, 0x40, +}; +static const unsigned char kat3929_addinpr2[] = { + 0x5b, 0xb0, 0x8d, 0xdc, 0x62, 0x85, 0x03, 0x2a, 0x77, 0x48, 0x67, 0xae, + 0x6d, 0x58, 0x1e, 0x9a, 0x7b, 0x9a, 0xd2, 0x33, 0xef, 0x66, 0x32, 0x57, + 0xd8, 0x08, 0x79, 0x87, 0xa6, 0x8a, 0x71, 0x25, 0xf6, 0xbb, 0x21, 0x12, + 0x39, 0x4d, 0xf0, 0x8a, +}; +static const unsigned char kat3929_retbits[] = { + 0x14, 0x03, 0xcf, 0x31, 0xf0, 0xe9, 0xcf, 0x5e, 0x76, 0xc3, 0x78, 0x56, + 0x28, 0xf1, 0x8b, 0x22, 0xac, 0xb1, 0x62, 0x91, 0x6b, 0xe5, 0x25, 0x33, + 0xbc, 0xa1, 0x1e, 0x27, 0x77, 0xcf, 0x4a, 0xd2, 0xa0, 0x53, 0xff, 0xd4, + 0x93, 0x6b, 0x79, 0x9d, 0x2e, 0x2a, 0x69, 0x36, 0x8b, 0x5e, 0x05, 0xe2, + 0xbb, 0x36, 0x1a, 0x6d, 0xb3, 0x10, 0xb5, 0x57, 0x99, 0xb8, 0x4f, 0x58, + 0xc1, 0x79, 0x14, 0xf5, +}; +static const struct drbg_kat_pr_true kat3929_t = { + 13, kat3929_entropyin, kat3929_nonce, kat3929_persstr, + kat3929_entropyinpr1, kat3929_addinpr1, kat3929_entropyinpr2, + kat3929_addinpr2, kat3929_retbits +}; +static const struct drbg_kat kat3929 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3929_t +}; + +static const unsigned char kat3930_entropyin[] = { + 0x92, 0xe9, 0x74, 0xf4, 0x64, 0xbe, 0xc1, 0xd6, 0x08, 0x65, 0x33, 0xad, + 0xdc, 0xbe, 0x81, 0x7d, 0x8e, 0xbe, 0xdc, 0x5e, 0x18, 0xa8, 0xbe, 0x6a, + 0xff, 0xd4, 0xdd, 0x15, 0x88, 0x0b, 0xb1, 0x43, 0x45, 0x2c, 0x87, 0x3a, + 0xf2, 0x97, 0x1c, 0x64, +}; +static const unsigned char kat3930_nonce[] = {0}; +static const unsigned char kat3930_persstr[] = {0}; +static const unsigned char kat3930_entropyinpr1[] = { + 0x3b, 0x51, 0xe4, 0x4a, 0x70, 0x09, 0xa6, 0x98, 0x26, 0x45, 0x77, 0xb8, + 0xe9, 0x66, 0xd5, 0xd4, 0xa0, 0xfc, 0x2b, 0x11, 0x6a, 0xd4, 0x88, 0xf9, + 0x7b, 0x81, 0x59, 0xeb, 0x70, 0xfb, 0x58, 0xd6, 0x1c, 0x73, 0x8f, 0x5e, + 0x01, 0xa4, 0x34, 0xa4, +}; +static const unsigned char kat3930_addinpr1[] = { + 0xd3, 0xf6, 0x48, 0x23, 0xba, 0x05, 0x9b, 0xc1, 0x56, 0x5e, 0x9c, 0x25, + 0x2d, 0x2d, 0x29, 0xb1, 0x69, 0x80, 0xb1, 0xd6, 0xa9, 0x82, 0xa3, 0x00, + 0x85, 0x8b, 0xf2, 0x10, 0xe2, 0xfe, 0xb2, 0xf0, 0x9d, 0x10, 0xa4, 0xa6, + 0xfe, 0x36, 0x99, 0x56, +}; +static const unsigned char kat3930_entropyinpr2[] = { + 0xf6, 0xd9, 0x8f, 0x69, 0x30, 0x2d, 0xa7, 0xad, 0x42, 0xb8, 0xe5, 0x80, + 0xa9, 0xd7, 0x55, 0xe9, 0x29, 0xfe, 0x39, 0xfb, 0x04, 0x36, 0x14, 0x03, + 0x88, 0xfc, 0x71, 0x60, 0xd9, 0x4f, 0x61, 0x67, 0xc0, 0xe1, 0x50, 0x56, + 0x6f, 0xe5, 0x31, 0x0f, +}; +static const unsigned char kat3930_addinpr2[] = { + 0x16, 0xd2, 0x62, 0x84, 0x85, 0x10, 0xe4, 0x07, 0xc7, 0x68, 0x0c, 0xfc, + 0xd3, 0xfc, 0xc2, 0x7b, 0x86, 0x47, 0xfc, 0xc0, 0x15, 0x54, 0x26, 0xb3, + 0xe7, 0xb5, 0x4b, 0xc4, 0x73, 0xec, 0x3d, 0x57, 0xf0, 0x2c, 0xc7, 0x49, + 0xc0, 0x20, 0xea, 0xe9, +}; +static const unsigned char kat3930_retbits[] = { + 0x9c, 0x77, 0x66, 0xb3, 0xeb, 0xb2, 0x7f, 0x65, 0x53, 0x9f, 0x3d, 0xd6, + 0x00, 0x1a, 0xe4, 0x5c, 0x85, 0xbb, 0xa6, 0xd6, 0xc0, 0x9e, 0x60, 0x0f, + 0x0b, 0x9c, 0xf5, 0xe0, 0x2f, 0x30, 0xb0, 0xf8, 0x58, 0x4e, 0x69, 0x6c, + 0x2f, 0xee, 0x02, 0x39, 0xd5, 0xe4, 0xd5, 0xb6, 0x23, 0x70, 0x0c, 0xa9, + 0x8c, 0x94, 0xe7, 0xca, 0x82, 0xfb, 0xb8, 0xb4, 0x64, 0x35, 0x49, 0xf2, + 0x9d, 0x2d, 0xf2, 0x44, +}; +static const struct drbg_kat_pr_true kat3930_t = { + 14, kat3930_entropyin, kat3930_nonce, kat3930_persstr, + kat3930_entropyinpr1, kat3930_addinpr1, kat3930_entropyinpr2, + kat3930_addinpr2, kat3930_retbits +}; +static const struct drbg_kat kat3930 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3930_t +}; + +static const unsigned char kat3931_entropyin[] = { + 0x4e, 0xa0, 0xdc, 0xd1, 0x2d, 0x60, 0xc4, 0xfe, 0x4d, 0x22, 0xc8, 0x08, + 0x95, 0x2b, 0x13, 0xcd, 0x27, 0x4d, 0x97, 0x3c, 0xe2, 0xa2, 0xd8, 0xa2, + 0x3f, 0xf9, 0x9e, 0x8f, 0x86, 0xe3, 0xb9, 0xf7, 0x05, 0xff, 0x03, 0x58, + 0xc6, 0x62, 0xec, 0x21, +}; +static const unsigned char kat3931_nonce[] = {0}; +static const unsigned char kat3931_persstr[] = { + 0xb9, 0xeb, 0x4f, 0xf3, 0x9d, 0x40, 0xc3, 0x02, 0xa8, 0x65, 0x2a, 0x2d, + 0x08, 0x4f, 0x44, 0x54, 0x4b, 0x53, 0xea, 0x00, 0x13, 0xc8, 0x99, 0xd9, + 0x96, 0xa1, 0x44, 0x2b, 0x08, 0x4f, 0x10, 0x4a, 0x26, 0x31, 0x42, 0xc7, + 0x95, 0x25, 0xaf, 0x17, +}; +static const unsigned char kat3931_entropyinpr1[] = { + 0x03, 0x7c, 0xdf, 0xc6, 0x02, 0x75, 0x03, 0x06, 0x78, 0x53, 0x7a, 0x53, + 0xd5, 0x5d, 0xb5, 0x9e, 0x2e, 0x3d, 0x5e, 0xb8, 0x09, 0xe3, 0x35, 0x75, + 0x6a, 0x84, 0x4d, 0x31, 0x0f, 0x39, 0x69, 0x0e, 0xad, 0x4b, 0xd3, 0xb3, + 0x3b, 0x49, 0x98, 0x42, +}; +static const unsigned char kat3931_addinpr1[] = {0}; +static const unsigned char kat3931_entropyinpr2[] = { + 0xe0, 0xb8, 0x6b, 0x4b, 0x5f, 0xf4, 0x87, 0x94, 0x11, 0x9a, 0xc1, 0xc9, + 0x1d, 0x11, 0xf9, 0x1c, 0x74, 0x58, 0x33, 0xe6, 0x8b, 0xb7, 0xd5, 0x6a, + 0xf4, 0x59, 0x82, 0x06, 0x82, 0xb1, 0x32, 0xed, 0x41, 0xb1, 0x8e, 0x7e, + 0xf4, 0x5e, 0xfc, 0xdf, +}; +static const unsigned char kat3931_addinpr2[] = {0}; +static const unsigned char kat3931_retbits[] = { + 0x3c, 0x7f, 0xe5, 0xa0, 0xa0, 0x9a, 0x53, 0x34, 0x21, 0xea, 0x72, 0xcd, + 0xca, 0x52, 0xcd, 0xd3, 0x4e, 0x95, 0xa0, 0x6e, 0x17, 0x49, 0x80, 0x16, + 0xf8, 0x02, 0x7f, 0x7b, 0xb0, 0x5d, 0xed, 0xb3, 0x23, 0x4d, 0x5c, 0xc5, + 0xaa, 0x47, 0xa6, 0xd5, 0x0b, 0x47, 0xba, 0xb4, 0x58, 0x89, 0x96, 0x9c, + 0x37, 0x82, 0x82, 0x2e, 0xf4, 0xd4, 0x48, 0x19, 0x10, 0x78, 0xa6, 0x60, + 0xfa, 0xd2, 0xa3, 0x88, +}; +static const struct drbg_kat_pr_true kat3931_t = { + 0, kat3931_entropyin, kat3931_nonce, kat3931_persstr, + kat3931_entropyinpr1, kat3931_addinpr1, kat3931_entropyinpr2, + kat3931_addinpr2, kat3931_retbits +}; +static const struct drbg_kat kat3931 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3931_t +}; + +static const unsigned char kat3932_entropyin[] = { + 0xee, 0x87, 0x4c, 0xb7, 0x58, 0x2d, 0x39, 0x0d, 0xdc, 0x2c, 0xd3, 0xf3, + 0x44, 0xee, 0xb1, 0x4b, 0x39, 0x7a, 0x6e, 0xeb, 0x46, 0xc6, 0x7a, 0x18, + 0xf7, 0x62, 0x55, 0xf3, 0x61, 0x90, 0xff, 0x7a, 0xfe, 0xfb, 0x56, 0x41, + 0xaf, 0x91, 0xdd, 0x2e, +}; +static const unsigned char kat3932_nonce[] = {0}; +static const unsigned char kat3932_persstr[] = { + 0xde, 0x6a, 0x61, 0x2b, 0xa2, 0xeb, 0xf4, 0x31, 0x36, 0x7e, 0xbc, 0x0e, + 0x07, 0xe1, 0x1c, 0xfb, 0xe6, 0x8f, 0x1f, 0xcc, 0x5f, 0xea, 0x30, 0x6b, + 0x21, 0x8d, 0x9d, 0xfa, 0xa5, 0xc3, 0xf0, 0x15, 0x09, 0xc0, 0x10, 0x41, + 0xe6, 0xc5, 0x44, 0x9c, +}; +static const unsigned char kat3932_entropyinpr1[] = { + 0x58, 0x31, 0x7f, 0x80, 0xf1, 0x53, 0x35, 0x89, 0x79, 0x07, 0xc5, 0x1c, + 0x5f, 0x16, 0x4d, 0xa4, 0x62, 0x63, 0x46, 0xa4, 0xd6, 0x17, 0xfc, 0x77, + 0x37, 0x15, 0xd4, 0xc6, 0xff, 0x1d, 0x58, 0xce, 0xa7, 0x0f, 0x60, 0xdc, + 0xb2, 0xcc, 0xa9, 0xaa, +}; +static const unsigned char kat3932_addinpr1[] = {0}; +static const unsigned char kat3932_entropyinpr2[] = { + 0x6e, 0xcc, 0xa6, 0x9d, 0x5d, 0x69, 0xc3, 0x7b, 0x70, 0x70, 0xcd, 0xab, + 0x3f, 0x84, 0x4c, 0xc5, 0x08, 0x8a, 0xcd, 0x80, 0x85, 0x5e, 0x1f, 0x60, + 0xdc, 0xb9, 0x5f, 0xf0, 0x0a, 0xf0, 0xb3, 0xb8, 0x61, 0x59, 0x12, 0x23, + 0x02, 0x04, 0x41, 0xb0, +}; +static const unsigned char kat3932_addinpr2[] = {0}; +static const unsigned char kat3932_retbits[] = { + 0x2a, 0x0f, 0x6b, 0x30, 0xf9, 0x67, 0x7f, 0x19, 0xb0, 0x9b, 0x0a, 0x8e, + 0x05, 0xad, 0xf2, 0x97, 0x87, 0x48, 0xa9, 0xe2, 0x12, 0xa2, 0x95, 0xe6, + 0x79, 0x96, 0x76, 0x42, 0x86, 0x0b, 0xeb, 0xa4, 0x4b, 0x0c, 0xae, 0xe5, + 0xc1, 0xb0, 0x58, 0xc3, 0xc6, 0xdd, 0xba, 0xe1, 0xd6, 0xcf, 0x1e, 0x0f, + 0x4c, 0x0a, 0x8a, 0x0d, 0x6d, 0x79, 0x84, 0x45, 0x9b, 0xc9, 0x23, 0x59, + 0x92, 0x3e, 0xee, 0x16, +}; +static const struct drbg_kat_pr_true kat3932_t = { + 1, kat3932_entropyin, kat3932_nonce, kat3932_persstr, + kat3932_entropyinpr1, kat3932_addinpr1, kat3932_entropyinpr2, + kat3932_addinpr2, kat3932_retbits +}; +static const struct drbg_kat kat3932 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3932_t +}; + +static const unsigned char kat3933_entropyin[] = { + 0x1a, 0xd9, 0x0b, 0x3f, 0x17, 0xc1, 0x39, 0x0b, 0x86, 0x06, 0xb8, 0xc8, + 0x8e, 0xc6, 0xf7, 0xfe, 0x89, 0x0e, 0x76, 0xdb, 0x21, 0x48, 0x0f, 0xfd, + 0x42, 0xfb, 0x7e, 0x20, 0xd5, 0x31, 0x3d, 0x87, 0x75, 0x69, 0x89, 0xb3, + 0x87, 0x6e, 0x53, 0x84, +}; +static const unsigned char kat3933_nonce[] = {0}; +static const unsigned char kat3933_persstr[] = { + 0x8d, 0x50, 0xa9, 0x33, 0xda, 0x14, 0x1c, 0xa8, 0xa3, 0xc5, 0x04, 0xc4, + 0xd6, 0x24, 0xf2, 0x39, 0x51, 0x9b, 0x09, 0xfd, 0x83, 0x1a, 0xf0, 0x45, + 0xea, 0xd8, 0xdd, 0xf0, 0x1b, 0xf3, 0x62, 0xa5, 0x78, 0xfc, 0x60, 0x60, + 0x30, 0x88, 0x32, 0x9b, +}; +static const unsigned char kat3933_entropyinpr1[] = { + 0x57, 0x56, 0x1f, 0xc8, 0xe1, 0x71, 0x2f, 0xc6, 0x37, 0x97, 0xe1, 0x93, + 0xdf, 0x7d, 0x74, 0xbd, 0xa7, 0x7f, 0x42, 0xf5, 0xf5, 0x31, 0x22, 0x7b, + 0x01, 0xd9, 0x28, 0x19, 0x2f, 0xf7, 0xd6, 0xcc, 0xd9, 0xbd, 0x93, 0xf2, + 0x32, 0x52, 0x0b, 0x42, +}; +static const unsigned char kat3933_addinpr1[] = {0}; +static const unsigned char kat3933_entropyinpr2[] = { + 0x20, 0x10, 0xb1, 0x7f, 0x1e, 0xd4, 0x46, 0xa1, 0x24, 0x06, 0xe7, 0xe9, + 0x69, 0xd8, 0x6f, 0x3a, 0x6b, 0x39, 0x3a, 0x9e, 0xfd, 0xa1, 0x8b, 0x16, + 0xff, 0x63, 0xfe, 0x82, 0xc6, 0xa1, 0x48, 0x5c, 0x37, 0xe0, 0x8a, 0xe8, + 0x49, 0x5c, 0xa0, 0x28, +}; +static const unsigned char kat3933_addinpr2[] = {0}; +static const unsigned char kat3933_retbits[] = { + 0x1b, 0x96, 0x4f, 0x05, 0x65, 0x19, 0x25, 0x4b, 0xe6, 0x71, 0xae, 0x08, + 0x17, 0xd7, 0x15, 0xe1, 0x9a, 0xfe, 0x29, 0x2f, 0xa6, 0x7e, 0x11, 0x01, + 0x27, 0x04, 0x64, 0x62, 0x88, 0x51, 0xab, 0x6d, 0xb8, 0x13, 0xe5, 0xf8, + 0x48, 0xc0, 0xf9, 0xb7, 0xea, 0x64, 0x3d, 0x52, 0x67, 0xb7, 0x65, 0x26, + 0xbb, 0x5d, 0xab, 0xc0, 0x8b, 0x6a, 0x02, 0xb4, 0x4e, 0x90, 0x4a, 0xee, + 0x26, 0xd6, 0xbb, 0x7d, +}; +static const struct drbg_kat_pr_true kat3933_t = { + 2, kat3933_entropyin, kat3933_nonce, kat3933_persstr, + kat3933_entropyinpr1, kat3933_addinpr1, kat3933_entropyinpr2, + kat3933_addinpr2, kat3933_retbits +}; +static const struct drbg_kat kat3933 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3933_t +}; + +static const unsigned char kat3934_entropyin[] = { + 0xf4, 0xa5, 0xfb, 0xde, 0x09, 0x80, 0x2e, 0x93, 0x2f, 0xe7, 0x6d, 0x75, + 0x31, 0x87, 0x78, 0x71, 0x4f, 0x09, 0xc0, 0xb7, 0x8e, 0x25, 0x22, 0x49, + 0xc5, 0xf6, 0x42, 0x8a, 0x77, 0x64, 0x92, 0x89, 0x94, 0xc8, 0xea, 0x6f, + 0x30, 0x4b, 0x14, 0xd1, +}; +static const unsigned char kat3934_nonce[] = {0}; +static const unsigned char kat3934_persstr[] = { + 0x35, 0xab, 0x4f, 0xe8, 0x11, 0x21, 0x52, 0x43, 0x39, 0xe4, 0x00, 0x04, + 0xfd, 0x3f, 0x4d, 0x70, 0x69, 0xef, 0x0d, 0x00, 0xa5, 0x83, 0x0c, 0xd4, + 0x4d, 0x87, 0x2a, 0xf3, 0xd6, 0x29, 0x81, 0xc2, 0x0c, 0xa1, 0xa6, 0x66, + 0x4c, 0x1f, 0x95, 0xd3, +}; +static const unsigned char kat3934_entropyinpr1[] = { + 0x3d, 0x7e, 0xb8, 0xc8, 0x6f, 0x80, 0x18, 0x6c, 0xd4, 0x37, 0x03, 0x90, + 0xba, 0x39, 0x21, 0x4f, 0x5d, 0xc2, 0x82, 0x37, 0x87, 0x60, 0x6e, 0xa6, + 0xa3, 0x4a, 0xda, 0x8f, 0xa1, 0x29, 0xf6, 0x28, 0xc2, 0x14, 0xf4, 0x84, + 0x1f, 0xa3, 0xfc, 0x68, +}; +static const unsigned char kat3934_addinpr1[] = {0}; +static const unsigned char kat3934_entropyinpr2[] = { + 0x1a, 0x66, 0x3e, 0x82, 0xcb, 0xf4, 0x33, 0xf7, 0x3e, 0x86, 0x02, 0xac, + 0x50, 0x3e, 0x6b, 0x86, 0x72, 0x47, 0x34, 0x73, 0x79, 0x1a, 0x60, 0x07, + 0x5b, 0x9f, 0xb1, 0xd0, 0x35, 0x7a, 0xe7, 0xa5, 0x77, 0x7d, 0x68, 0xb1, + 0x9a, 0x27, 0x57, 0x2d, +}; +static const unsigned char kat3934_addinpr2[] = {0}; +static const unsigned char kat3934_retbits[] = { + 0x2d, 0x83, 0xa6, 0x4d, 0x74, 0xd5, 0xc6, 0x29, 0x66, 0x83, 0x7a, 0xc2, + 0xd6, 0xce, 0x47, 0xb4, 0xdf, 0x14, 0xa7, 0x64, 0x34, 0xc6, 0x68, 0x57, + 0x47, 0xea, 0x08, 0x4a, 0x7a, 0x15, 0xac, 0xde, 0xde, 0xae, 0xb6, 0xe0, + 0x3d, 0xfc, 0xc5, 0x69, 0xf9, 0x50, 0x0c, 0x5f, 0xde, 0xd5, 0x6c, 0x15, + 0x76, 0x3a, 0xc8, 0x50, 0x15, 0xcb, 0x31, 0x8a, 0xf8, 0x9e, 0xd4, 0xae, + 0xaa, 0x38, 0x78, 0xd1, +}; +static const struct drbg_kat_pr_true kat3934_t = { + 3, kat3934_entropyin, kat3934_nonce, kat3934_persstr, + kat3934_entropyinpr1, kat3934_addinpr1, kat3934_entropyinpr2, + kat3934_addinpr2, kat3934_retbits +}; +static const struct drbg_kat kat3934 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3934_t +}; + +static const unsigned char kat3935_entropyin[] = { + 0x4e, 0xe9, 0x80, 0xcd, 0x09, 0x38, 0xfb, 0x82, 0xc0, 0x99, 0x08, 0x4b, + 0x61, 0x73, 0x33, 0x15, 0x90, 0x16, 0xa4, 0x41, 0x37, 0xa2, 0xd3, 0xb7, + 0x70, 0xcf, 0x49, 0x75, 0xc3, 0x80, 0xb6, 0xce, 0x06, 0x0a, 0xf5, 0x85, + 0xbc, 0x08, 0x07, 0x15, +}; +static const unsigned char kat3935_nonce[] = {0}; +static const unsigned char kat3935_persstr[] = { + 0x0b, 0xde, 0x39, 0x4e, 0x7e, 0x43, 0x64, 0x1c, 0xca, 0x85, 0x71, 0x7d, + 0xed, 0x61, 0x0c, 0xc1, 0xbd, 0x49, 0x34, 0x26, 0xeb, 0xc8, 0xc9, 0x68, + 0x6d, 0xb5, 0xef, 0x35, 0x97, 0xaa, 0x70, 0x32, 0xc6, 0xf1, 0x7e, 0x76, + 0x9e, 0x8b, 0xdc, 0xae, +}; +static const unsigned char kat3935_entropyinpr1[] = { + 0xc5, 0x84, 0x57, 0x08, 0x0d, 0x9d, 0xba, 0x5b, 0xf9, 0xd6, 0xdf, 0xae, + 0x60, 0xc1, 0x0a, 0x5e, 0x1f, 0x43, 0xf7, 0x5c, 0x15, 0x06, 0x08, 0x36, + 0x5a, 0x94, 0xfb, 0xbd, 0x6b, 0x49, 0xa9, 0x23, 0x5a, 0x9f, 0x09, 0x4f, + 0x23, 0x0a, 0xdd, 0x03, +}; +static const unsigned char kat3935_addinpr1[] = {0}; +static const unsigned char kat3935_entropyinpr2[] = { + 0xde, 0xfe, 0x93, 0x85, 0x2c, 0x3e, 0x9e, 0x31, 0xfb, 0x88, 0xf8, 0x68, + 0x49, 0x3d, 0xdc, 0x5f, 0x14, 0x2e, 0x1b, 0x5b, 0x5c, 0x21, 0x37, 0x14, + 0x42, 0x81, 0x04, 0x0d, 0x50, 0x87, 0x54, 0x71, 0x99, 0x37, 0x1e, 0x16, + 0xca, 0xec, 0xc7, 0x5a, +}; +static const unsigned char kat3935_addinpr2[] = {0}; +static const unsigned char kat3935_retbits[] = { + 0x1f, 0x52, 0xac, 0x35, 0xe3, 0x39, 0x5b, 0x8a, 0xb8, 0x09, 0x44, 0x9d, + 0x3d, 0x14, 0xa6, 0x4b, 0xf0, 0x7b, 0x52, 0x20, 0xa6, 0x34, 0x8e, 0x81, + 0xb5, 0xd4, 0x7d, 0xab, 0xe1, 0x40, 0x8f, 0x93, 0xf5, 0xb5, 0x40, 0xd0, + 0x11, 0x90, 0xd9, 0xbd, 0x2d, 0xfb, 0xe8, 0x66, 0x44, 0x9a, 0x68, 0x22, + 0x1e, 0xd4, 0x3c, 0x23, 0xf1, 0x72, 0x00, 0xb3, 0x5b, 0x3c, 0xbb, 0x9e, + 0xf3, 0x17, 0x37, 0xbf, +}; +static const struct drbg_kat_pr_true kat3935_t = { + 4, kat3935_entropyin, kat3935_nonce, kat3935_persstr, + kat3935_entropyinpr1, kat3935_addinpr1, kat3935_entropyinpr2, + kat3935_addinpr2, kat3935_retbits +}; +static const struct drbg_kat kat3935 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3935_t +}; + +static const unsigned char kat3936_entropyin[] = { + 0xe5, 0x7e, 0x6e, 0xf9, 0x81, 0x01, 0xc9, 0xd3, 0xed, 0x9a, 0x7c, 0x25, + 0xc3, 0x44, 0x8f, 0x57, 0xc0, 0xde, 0xb6, 0x79, 0x16, 0x70, 0x22, 0xba, + 0x10, 0x6f, 0x9a, 0x64, 0x43, 0x85, 0x5a, 0xd6, 0x5c, 0x94, 0xd4, 0xb2, + 0xcb, 0x73, 0x13, 0xf3, +}; +static const unsigned char kat3936_nonce[] = {0}; +static const unsigned char kat3936_persstr[] = { + 0x4c, 0x47, 0xf3, 0xf0, 0x59, 0x16, 0x51, 0x79, 0xd4, 0x3d, 0xd3, 0x72, + 0x43, 0x62, 0xe7, 0x60, 0x96, 0x0e, 0xe7, 0xc6, 0xd7, 0x2b, 0xd4, 0x44, + 0xe9, 0xdf, 0x2f, 0x03, 0xf7, 0xb4, 0x0e, 0x0a, 0x9f, 0x9f, 0x3f, 0xd6, + 0x85, 0x8b, 0x69, 0xef, +}; +static const unsigned char kat3936_entropyinpr1[] = { + 0xc6, 0xbe, 0x1c, 0x30, 0x9a, 0x45, 0xa6, 0x50, 0x4e, 0x71, 0xf6, 0x5a, + 0x58, 0xda, 0xe6, 0x5f, 0x29, 0x14, 0x75, 0x34, 0x46, 0xa4, 0x6b, 0xed, + 0xeb, 0xc5, 0x49, 0xa2, 0x2a, 0xda, 0x9b, 0x45, 0xd9, 0x50, 0xbe, 0x73, + 0x5b, 0x2f, 0x91, 0x50, +}; +static const unsigned char kat3936_addinpr1[] = {0}; +static const unsigned char kat3936_entropyinpr2[] = { + 0x9b, 0xc9, 0xf4, 0xe6, 0xa9, 0x4d, 0x28, 0x9b, 0x0f, 0xe7, 0x11, 0x88, + 0x1c, 0x9f, 0x80, 0x9a, 0x65, 0xe5, 0x52, 0xd8, 0x18, 0x31, 0xae, 0xa9, + 0xfc, 0x34, 0x6f, 0x01, 0xa3, 0x33, 0x70, 0x1f, 0xdf, 0xc9, 0x08, 0x16, + 0x34, 0x97, 0x66, 0x19, +}; +static const unsigned char kat3936_addinpr2[] = {0}; +static const unsigned char kat3936_retbits[] = { + 0xc1, 0x68, 0x2e, 0x57, 0x46, 0xe6, 0x06, 0xd4, 0x86, 0x0a, 0x1f, 0x66, + 0x0b, 0x8f, 0xa3, 0x56, 0xe1, 0x34, 0xbd, 0x9f, 0x45, 0x7d, 0x73, 0xec, + 0x0b, 0x67, 0x67, 0xb6, 0xba, 0xe9, 0xd9, 0x25, 0x79, 0x57, 0x1d, 0x63, + 0xa2, 0x03, 0x29, 0x17, 0xb5, 0xd4, 0x1e, 0x2b, 0xd1, 0x2d, 0x04, 0xb9, + 0x54, 0x6c, 0x42, 0xbf, 0xa1, 0xba, 0x8b, 0x4e, 0xde, 0x7c, 0xb4, 0x4f, + 0x20, 0xd4, 0xe2, 0xca, +}; +static const struct drbg_kat_pr_true kat3936_t = { + 5, kat3936_entropyin, kat3936_nonce, kat3936_persstr, + kat3936_entropyinpr1, kat3936_addinpr1, kat3936_entropyinpr2, + kat3936_addinpr2, kat3936_retbits +}; +static const struct drbg_kat kat3936 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3936_t +}; + +static const unsigned char kat3937_entropyin[] = { + 0x95, 0x83, 0x48, 0xb7, 0x43, 0xd5, 0xb5, 0xc2, 0xbf, 0x0d, 0xed, 0xc7, + 0xe2, 0xe3, 0x59, 0x3d, 0x3b, 0x33, 0x3e, 0x1d, 0x11, 0xe7, 0xf3, 0x97, + 0xd8, 0xde, 0x5f, 0x1b, 0x03, 0xc7, 0x25, 0x72, 0xfa, 0xc7, 0x03, 0x02, + 0x7b, 0x70, 0x7e, 0x20, +}; +static const unsigned char kat3937_nonce[] = {0}; +static const unsigned char kat3937_persstr[] = { + 0xe1, 0xfc, 0x9e, 0xcd, 0x47, 0xbe, 0x72, 0x0b, 0x81, 0x32, 0x66, 0x9d, + 0x20, 0x75, 0x5f, 0x24, 0x37, 0xae, 0xa7, 0x5b, 0xb8, 0xf7, 0xa6, 0x49, + 0xd2, 0xfe, 0xee, 0x2e, 0x79, 0xcf, 0x15, 0x39, 0xba, 0xbd, 0xb2, 0xdd, + 0xc9, 0xca, 0xb3, 0x16, +}; +static const unsigned char kat3937_entropyinpr1[] = { + 0x84, 0x74, 0x25, 0x2d, 0x01, 0x31, 0xa4, 0x6e, 0x16, 0xaa, 0x0f, 0xb4, + 0x1c, 0xc1, 0x4d, 0x2b, 0x7f, 0xe9, 0x63, 0x93, 0x21, 0xb6, 0x5a, 0xd1, + 0x9b, 0x18, 0xfd, 0x5f, 0xd6, 0x50, 0x24, 0x82, 0x90, 0xf7, 0x5b, 0x7d, + 0xba, 0x1b, 0x5b, 0x0e, +}; +static const unsigned char kat3937_addinpr1[] = {0}; +static const unsigned char kat3937_entropyinpr2[] = { + 0x83, 0x24, 0x97, 0xd0, 0x7a, 0xd3, 0xe3, 0xe1, 0xf9, 0xa9, 0xb0, 0x45, + 0x10, 0x78, 0xc4, 0x11, 0x02, 0x94, 0x59, 0x05, 0x70, 0xe9, 0x47, 0x8c, + 0x18, 0x6d, 0xa2, 0x17, 0x77, 0x25, 0x5c, 0xdb, 0x8c, 0x95, 0xbf, 0xaf, + 0xe9, 0x59, 0x55, 0xc0, +}; +static const unsigned char kat3937_addinpr2[] = {0}; +static const unsigned char kat3937_retbits[] = { + 0xe0, 0x61, 0xd9, 0xd3, 0x2d, 0xaa, 0x66, 0xf5, 0xc1, 0xb4, 0x5f, 0x3d, + 0x3f, 0x6e, 0xb1, 0xb1, 0x79, 0x29, 0xab, 0xe6, 0xc5, 0x12, 0xdd, 0x6a, + 0xcb, 0x74, 0xec, 0x10, 0x5b, 0xf7, 0x22, 0x97, 0xff, 0x4b, 0xb1, 0x87, + 0xfb, 0x66, 0x74, 0x78, 0xee, 0x88, 0xdb, 0x51, 0xdd, 0x72, 0x81, 0x6e, + 0x60, 0xf9, 0x76, 0x39, 0x73, 0xbd, 0x5f, 0xa9, 0xe9, 0x0d, 0x5c, 0xf0, + 0x9e, 0x1f, 0x28, 0x55, +}; +static const struct drbg_kat_pr_true kat3937_t = { + 6, kat3937_entropyin, kat3937_nonce, kat3937_persstr, + kat3937_entropyinpr1, kat3937_addinpr1, kat3937_entropyinpr2, + kat3937_addinpr2, kat3937_retbits +}; +static const struct drbg_kat kat3937 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3937_t +}; + +static const unsigned char kat3938_entropyin[] = { + 0x7b, 0xf7, 0xd4, 0xc5, 0xb5, 0xbd, 0x71, 0x3b, 0xf1, 0x92, 0xef, 0x3f, + 0x62, 0x6b, 0xb8, 0x21, 0x68, 0x26, 0x2c, 0x1e, 0xb5, 0x6e, 0x04, 0x91, + 0x1a, 0x59, 0xe0, 0xc4, 0xb3, 0x18, 0x21, 0x25, 0x37, 0x05, 0x83, 0xcc, + 0x49, 0xa1, 0x3a, 0x67, +}; +static const unsigned char kat3938_nonce[] = {0}; +static const unsigned char kat3938_persstr[] = { + 0x4b, 0x2a, 0x55, 0x13, 0xa3, 0xb9, 0xae, 0xc3, 0xa4, 0xa1, 0x1f, 0xa4, + 0x34, 0x61, 0x16, 0x6c, 0xc5, 0x9e, 0x55, 0x21, 0x97, 0xa7, 0x6b, 0xf1, + 0xf0, 0xa1, 0xba, 0xe0, 0x30, 0x1b, 0x57, 0x89, 0xd2, 0xe3, 0xd9, 0xfe, + 0x63, 0x57, 0x6e, 0x5a, +}; +static const unsigned char kat3938_entropyinpr1[] = { + 0x0e, 0xc2, 0x78, 0x29, 0xf3, 0x12, 0xb3, 0xd3, 0x33, 0x75, 0x7c, 0x65, + 0xb7, 0x16, 0xc7, 0xd3, 0xb4, 0x8c, 0x6b, 0x2d, 0xe1, 0x6e, 0xa8, 0x3f, + 0xa1, 0xeb, 0x00, 0x0b, 0xf5, 0x60, 0x86, 0xf3, 0x59, 0x88, 0x1b, 0x87, + 0x98, 0xf6, 0xe9, 0x04, +}; +static const unsigned char kat3938_addinpr1[] = {0}; +static const unsigned char kat3938_entropyinpr2[] = { + 0xf8, 0x55, 0x71, 0x36, 0x50, 0x92, 0x2c, 0x44, 0x16, 0xc2, 0x3d, 0xc3, + 0x0e, 0x64, 0x4e, 0xde, 0x4f, 0x3a, 0x7d, 0x68, 0x88, 0x58, 0x5f, 0x38, + 0x35, 0x81, 0x0d, 0x2f, 0xb5, 0xb6, 0xdc, 0x35, 0x4a, 0x13, 0x2a, 0xdc, + 0x15, 0x84, 0xb6, 0x48, +}; +static const unsigned char kat3938_addinpr2[] = {0}; +static const unsigned char kat3938_retbits[] = { + 0x2c, 0xc4, 0xfa, 0xdd, 0xf2, 0xaa, 0x24, 0x01, 0x26, 0xb4, 0xa4, 0xde, + 0x2d, 0x1b, 0xd8, 0x96, 0xb4, 0xcd, 0x7d, 0x4d, 0x37, 0xe1, 0xf4, 0x30, + 0xd9, 0x03, 0xe5, 0x22, 0x33, 0xb2, 0x5a, 0x6e, 0x46, 0x56, 0x14, 0x93, + 0x13, 0x39, 0xca, 0x60, 0xfb, 0xbf, 0xbe, 0x81, 0x1e, 0xa0, 0xb7, 0x07, + 0x59, 0x64, 0xe2, 0xf5, 0xd5, 0x07, 0x77, 0xd0, 0xe0, 0xa8, 0xa1, 0x4f, + 0x48, 0xb5, 0x0d, 0xf7, +}; +static const struct drbg_kat_pr_true kat3938_t = { + 7, kat3938_entropyin, kat3938_nonce, kat3938_persstr, + kat3938_entropyinpr1, kat3938_addinpr1, kat3938_entropyinpr2, + kat3938_addinpr2, kat3938_retbits +}; +static const struct drbg_kat kat3938 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3938_t +}; + +static const unsigned char kat3939_entropyin[] = { + 0x3d, 0x6d, 0xe5, 0xe2, 0x78, 0x3c, 0xe8, 0x45, 0xd4, 0x61, 0xa1, 0x42, + 0x19, 0x9a, 0x57, 0xbc, 0xc7, 0x2a, 0x1a, 0xfc, 0xb4, 0xdc, 0x4c, 0x61, + 0x3e, 0x20, 0xdd, 0xf0, 0xc2, 0x3b, 0xa4, 0xd9, 0x8b, 0xef, 0x8d, 0xd3, + 0xf1, 0xe3, 0x62, 0x06, +}; +static const unsigned char kat3939_nonce[] = {0}; +static const unsigned char kat3939_persstr[] = { + 0x4c, 0xcb, 0xee, 0xeb, 0xe6, 0xc1, 0x59, 0x64, 0x1b, 0xd4, 0xac, 0xc5, + 0xd3, 0x34, 0xc3, 0x95, 0x58, 0xe9, 0x1e, 0xa8, 0x71, 0x28, 0xe9, 0x5e, + 0x99, 0x0f, 0xdb, 0xe1, 0xb8, 0xe1, 0x8b, 0xe7, 0xe8, 0x87, 0xab, 0x1a, + 0x08, 0xdb, 0x9f, 0x0e, +}; +static const unsigned char kat3939_entropyinpr1[] = { + 0x6f, 0x1b, 0xaa, 0x4d, 0xc2, 0x52, 0x07, 0x83, 0x6a, 0x33, 0x93, 0x2f, + 0xce, 0x35, 0xdd, 0x45, 0x50, 0x43, 0x1f, 0xd0, 0x1c, 0x6c, 0xe2, 0x0a, + 0xe2, 0xea, 0x05, 0xe9, 0x30, 0xa0, 0x89, 0xea, 0x42, 0xc2, 0x1e, 0x88, + 0x1c, 0x83, 0x7c, 0x0e, +}; +static const unsigned char kat3939_addinpr1[] = {0}; +static const unsigned char kat3939_entropyinpr2[] = { + 0x61, 0x45, 0xde, 0x4f, 0x1a, 0x1d, 0x25, 0xe4, 0xb8, 0xcc, 0x6b, 0xec, + 0x9d, 0x0c, 0x5e, 0xfb, 0x39, 0x2d, 0x33, 0x61, 0xb5, 0x11, 0x89, 0xf6, + 0x64, 0xfe, 0x6a, 0xa6, 0x71, 0x8e, 0x4a, 0x99, 0xc0, 0x72, 0x59, 0x29, + 0x70, 0x25, 0x0b, 0x0d, +}; +static const unsigned char kat3939_addinpr2[] = {0}; +static const unsigned char kat3939_retbits[] = { + 0x56, 0xc3, 0x5c, 0xc7, 0x58, 0x0b, 0xac, 0x97, 0x45, 0x78, 0xf9, 0x3a, + 0x32, 0x3f, 0x13, 0x98, 0x9e, 0x14, 0x7c, 0x09, 0x21, 0x3d, 0x84, 0x9d, + 0xfd, 0xfc, 0xc5, 0xf0, 0x98, 0xdd, 0x87, 0x82, 0xc4, 0x9d, 0x74, 0x37, + 0x31, 0xb7, 0x98, 0x2f, 0xb4, 0x52, 0x2b, 0xf5, 0xd8, 0xd5, 0x4f, 0x1c, + 0x78, 0xf3, 0xd2, 0x5a, 0x73, 0xdf, 0xf5, 0x79, 0xf2, 0x19, 0x76, 0x37, + 0x30, 0xe5, 0xf4, 0x61, +}; +static const struct drbg_kat_pr_true kat3939_t = { + 8, kat3939_entropyin, kat3939_nonce, kat3939_persstr, + kat3939_entropyinpr1, kat3939_addinpr1, kat3939_entropyinpr2, + kat3939_addinpr2, kat3939_retbits +}; +static const struct drbg_kat kat3939 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3939_t +}; + +static const unsigned char kat3940_entropyin[] = { + 0x61, 0xc8, 0x27, 0xed, 0x8a, 0x14, 0xc9, 0x79, 0x9f, 0x55, 0xd9, 0x9e, + 0xbe, 0x61, 0xf8, 0xbb, 0x08, 0x05, 0x7b, 0x4d, 0x0a, 0x5d, 0xa5, 0x10, + 0x97, 0xa1, 0xcf, 0x7f, 0x9e, 0xdd, 0x85, 0xc8, 0x1f, 0x02, 0x12, 0x6d, + 0x25, 0xdf, 0x77, 0xed, +}; +static const unsigned char kat3940_nonce[] = {0}; +static const unsigned char kat3940_persstr[] = { + 0xd6, 0xdd, 0x81, 0x33, 0x85, 0xe5, 0xf6, 0x66, 0x9d, 0x3c, 0x23, 0xef, + 0x2c, 0x0b, 0xf1, 0x80, 0x55, 0xc7, 0x5b, 0x76, 0x90, 0x10, 0x9c, 0xb3, + 0x7b, 0xe2, 0x53, 0xed, 0x92, 0x8d, 0x90, 0x0e, 0x4d, 0x23, 0x1e, 0x6e, + 0x2c, 0x50, 0xbb, 0xcd, +}; +static const unsigned char kat3940_entropyinpr1[] = { + 0x8a, 0x70, 0x24, 0xf2, 0xf9, 0xd1, 0x85, 0x96, 0x60, 0x1a, 0x44, 0xcf, + 0xe5, 0xd1, 0x86, 0x53, 0xdc, 0xfe, 0xe6, 0xb4, 0x63, 0x53, 0xc0, 0xaf, + 0x4d, 0xf5, 0x41, 0xd9, 0x25, 0x97, 0xd7, 0xef, 0x6b, 0xaa, 0x6a, 0x9f, + 0x90, 0x35, 0x64, 0x53, +}; +static const unsigned char kat3940_addinpr1[] = {0}; +static const unsigned char kat3940_entropyinpr2[] = { + 0x29, 0xcd, 0x1a, 0x5c, 0x27, 0x8f, 0xf0, 0x7c, 0xa7, 0xf2, 0x09, 0xd5, + 0x5a, 0x4a, 0xa4, 0x2e, 0x8d, 0x55, 0x75, 0x76, 0x3b, 0xd9, 0xd7, 0x07, + 0xee, 0x82, 0x02, 0x5e, 0x22, 0x4b, 0x66, 0x6d, 0x13, 0x3f, 0x49, 0xd6, + 0xc9, 0xc4, 0x81, 0x59, +}; +static const unsigned char kat3940_addinpr2[] = {0}; +static const unsigned char kat3940_retbits[] = { + 0xe0, 0x62, 0x1d, 0x31, 0xf0, 0xce, 0x43, 0x09, 0x42, 0xb6, 0xf8, 0x17, + 0xab, 0x61, 0xbe, 0x87, 0x17, 0xe5, 0x5a, 0x54, 0xfd, 0x80, 0xb6, 0x09, + 0xf4, 0x5f, 0xc6, 0xc3, 0x59, 0xa2, 0x31, 0xf5, 0xd4, 0xd2, 0x8e, 0xd3, + 0x6b, 0x18, 0xad, 0x62, 0x6c, 0xca, 0x30, 0x9f, 0xc6, 0x86, 0xde, 0xc0, + 0x43, 0x59, 0x0d, 0xa9, 0x76, 0xa2, 0x1c, 0xf8, 0x3c, 0x11, 0xd5, 0xe4, + 0x45, 0x95, 0xba, 0x95, +}; +static const struct drbg_kat_pr_true kat3940_t = { + 9, kat3940_entropyin, kat3940_nonce, kat3940_persstr, + kat3940_entropyinpr1, kat3940_addinpr1, kat3940_entropyinpr2, + kat3940_addinpr2, kat3940_retbits +}; +static const struct drbg_kat kat3940 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3940_t +}; + +static const unsigned char kat3941_entropyin[] = { + 0xc1, 0xba, 0xb3, 0xc4, 0xce, 0x68, 0xa4, 0x39, 0xd3, 0x56, 0xee, 0x5b, + 0xf6, 0x47, 0x17, 0x3f, 0x08, 0xa4, 0x32, 0x7b, 0xf6, 0x8f, 0x45, 0x4c, + 0x7d, 0x8c, 0x58, 0x03, 0x83, 0x25, 0x1d, 0x14, 0xf3, 0x7e, 0x8b, 0x56, + 0x34, 0x98, 0x99, 0xdb, +}; +static const unsigned char kat3941_nonce[] = {0}; +static const unsigned char kat3941_persstr[] = { + 0xa0, 0xf9, 0xb3, 0xd2, 0x06, 0x7d, 0xe6, 0x69, 0xe2, 0x0d, 0xe5, 0xb9, + 0xba, 0x0b, 0xcf, 0x31, 0x62, 0xc0, 0x13, 0xeb, 0x31, 0xe8, 0xdd, 0x6e, + 0x8a, 0x24, 0x29, 0x63, 0x6b, 0x3e, 0xe0, 0x18, 0x42, 0x16, 0x90, 0x35, + 0x2e, 0xa6, 0x17, 0xc6, +}; +static const unsigned char kat3941_entropyinpr1[] = { + 0x28, 0x08, 0x30, 0x0c, 0x55, 0x71, 0x75, 0xcd, 0xd3, 0x68, 0x39, 0x42, + 0x05, 0x75, 0x48, 0x1a, 0x43, 0xb2, 0x92, 0x6f, 0x88, 0xd4, 0xf9, 0x6c, + 0xad, 0xa8, 0x17, 0x3d, 0xd2, 0x88, 0x90, 0x1a, 0x30, 0x24, 0x83, 0xa3, + 0x88, 0xb7, 0x95, 0x8b, +}; +static const unsigned char kat3941_addinpr1[] = {0}; +static const unsigned char kat3941_entropyinpr2[] = { + 0xcb, 0xa5, 0x42, 0xe3, 0x6c, 0x71, 0xa8, 0xc0, 0x0a, 0x57, 0x22, 0xc7, + 0x49, 0xbd, 0xe8, 0x3a, 0xbc, 0xde, 0x2c, 0xf3, 0x73, 0x5b, 0x25, 0x20, + 0x09, 0x2a, 0x8f, 0x1f, 0x2f, 0xda, 0xc4, 0x26, 0xa1, 0xda, 0xa1, 0xd0, + 0x7b, 0x43, 0x58, 0xe2, +}; +static const unsigned char kat3941_addinpr2[] = {0}; +static const unsigned char kat3941_retbits[] = { + 0xdd, 0x4b, 0x1f, 0xc8, 0xd3, 0x09, 0x08, 0x45, 0xa1, 0xd9, 0x28, 0x84, + 0xa0, 0x18, 0x43, 0x96, 0xbc, 0x90, 0xbe, 0x40, 0xb5, 0x83, 0xa5, 0xcc, + 0x1d, 0x8a, 0xe1, 0x33, 0x0a, 0xf4, 0x7d, 0x47, 0x51, 0x48, 0xbc, 0xb5, + 0xf1, 0xed, 0x21, 0x03, 0xed, 0xf4, 0xd1, 0x02, 0xc9, 0x76, 0x37, 0xe0, + 0x1b, 0x09, 0x43, 0xc2, 0x7b, 0x0b, 0x3f, 0x46, 0x94, 0x8a, 0x4a, 0x29, + 0xd9, 0x0b, 0xe2, 0x2c, +}; +static const struct drbg_kat_pr_true kat3941_t = { + 10, kat3941_entropyin, kat3941_nonce, kat3941_persstr, + kat3941_entropyinpr1, kat3941_addinpr1, kat3941_entropyinpr2, + kat3941_addinpr2, kat3941_retbits +}; +static const struct drbg_kat kat3941 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3941_t +}; + +static const unsigned char kat3942_entropyin[] = { + 0x8e, 0x37, 0xb3, 0x8d, 0x5a, 0x59, 0x7b, 0x70, 0xec, 0x0f, 0xd5, 0x68, + 0x1d, 0x44, 0x2f, 0x10, 0xf9, 0x53, 0xc6, 0x50, 0x24, 0xf9, 0x0e, 0xb8, + 0xae, 0x36, 0x8a, 0xeb, 0xfd, 0xc9, 0xcb, 0x8a, 0x2c, 0xbe, 0xea, 0x03, + 0xed, 0xa2, 0xbd, 0x93, +}; +static const unsigned char kat3942_nonce[] = {0}; +static const unsigned char kat3942_persstr[] = { + 0x11, 0x55, 0xc5, 0x7d, 0x59, 0xe4, 0xf2, 0xf9, 0x6a, 0x82, 0x14, 0x50, + 0xb9, 0x4d, 0x8a, 0x80, 0x56, 0xfb, 0xb3, 0x3b, 0x3a, 0xb9, 0x29, 0x56, + 0x69, 0xd7, 0x12, 0x12, 0x2b, 0x48, 0xb1, 0xa0, 0x38, 0xe2, 0xd7, 0x94, + 0xb4, 0xf4, 0x4d, 0x46, +}; +static const unsigned char kat3942_entropyinpr1[] = { + 0xea, 0x87, 0xe5, 0xb9, 0x80, 0x83, 0xdb, 0x39, 0x91, 0x46, 0xc3, 0xc3, + 0xa0, 0x58, 0xa6, 0x31, 0xcd, 0x45, 0x4d, 0xb2, 0x73, 0x23, 0x3e, 0xf9, + 0x56, 0xf5, 0x73, 0x59, 0xc8, 0xbc, 0xe3, 0x6a, 0xa2, 0x36, 0x83, 0x6e, + 0xb7, 0x30, 0xe5, 0x0b, +}; +static const unsigned char kat3942_addinpr1[] = {0}; +static const unsigned char kat3942_entropyinpr2[] = { + 0x47, 0x50, 0x61, 0x1f, 0x8e, 0x46, 0xb9, 0x11, 0x73, 0x37, 0x67, 0xf2, + 0x8e, 0x63, 0x34, 0xf0, 0xdb, 0x67, 0xfe, 0x4a, 0x81, 0x72, 0x54, 0xd9, + 0x0b, 0x24, 0x5a, 0xa5, 0xb0, 0x9f, 0x77, 0x9d, 0x18, 0x53, 0xbd, 0x67, + 0xa6, 0x85, 0x1a, 0xbb, +}; +static const unsigned char kat3942_addinpr2[] = {0}; +static const unsigned char kat3942_retbits[] = { + 0xbe, 0xc9, 0xbe, 0x09, 0x9f, 0x6f, 0x6b, 0xeb, 0x96, 0x1f, 0xa1, 0x78, + 0xf8, 0x53, 0x62, 0xa5, 0xf8, 0x3e, 0x16, 0x72, 0x32, 0xea, 0x7c, 0xa3, + 0x20, 0x9d, 0x9b, 0x2d, 0x97, 0x19, 0x17, 0x56, 0x65, 0xe2, 0x65, 0x60, + 0xe3, 0x19, 0x33, 0xf8, 0xda, 0x70, 0x6b, 0x1d, 0x39, 0x02, 0x77, 0x10, + 0x2a, 0x61, 0xde, 0x89, 0x11, 0xa1, 0x08, 0x63, 0x00, 0xc7, 0x1d, 0xec, + 0x1c, 0x67, 0xce, 0x9c, +}; +static const struct drbg_kat_pr_true kat3942_t = { + 11, kat3942_entropyin, kat3942_nonce, kat3942_persstr, + kat3942_entropyinpr1, kat3942_addinpr1, kat3942_entropyinpr2, + kat3942_addinpr2, kat3942_retbits +}; +static const struct drbg_kat kat3942 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3942_t +}; + +static const unsigned char kat3943_entropyin[] = { + 0xde, 0xcb, 0xba, 0xd6, 0x35, 0x46, 0x03, 0xad, 0xc2, 0x1c, 0x97, 0x9b, + 0xfa, 0xf2, 0xbc, 0xa6, 0x59, 0x24, 0x8f, 0xcf, 0x2d, 0xec, 0x66, 0xed, + 0x7c, 0x70, 0x9e, 0x71, 0xe7, 0x05, 0x51, 0x9c, 0x31, 0x21, 0x86, 0xd1, + 0xb5, 0x18, 0x6d, 0xc4, +}; +static const unsigned char kat3943_nonce[] = {0}; +static const unsigned char kat3943_persstr[] = { + 0x2e, 0xb9, 0xc1, 0xf7, 0xb0, 0x30, 0x8a, 0x33, 0x24, 0xbd, 0x56, 0x22, + 0x57, 0x2c, 0x86, 0x38, 0xf7, 0x50, 0x0b, 0xfa, 0x31, 0x08, 0x00, 0x8d, + 0x8b, 0x52, 0x78, 0xe1, 0x79, 0xea, 0x89, 0x27, 0x87, 0x34, 0x6a, 0xbd, + 0x56, 0xa0, 0xac, 0x2b, +}; +static const unsigned char kat3943_entropyinpr1[] = { + 0xed, 0xc6, 0x80, 0xf0, 0x56, 0x40, 0x38, 0x06, 0x01, 0xe6, 0x92, 0xdf, + 0xed, 0xe3, 0x92, 0xac, 0x0a, 0xf5, 0xa9, 0x85, 0x44, 0x76, 0x6a, 0xe7, + 0x3c, 0x94, 0x77, 0xcb, 0x73, 0xa4, 0x19, 0xa7, 0x10, 0x4e, 0x26, 0x25, + 0xe1, 0x21, 0x79, 0x6d, +}; +static const unsigned char kat3943_addinpr1[] = {0}; +static const unsigned char kat3943_entropyinpr2[] = { + 0xea, 0x2a, 0x16, 0x0b, 0x4a, 0xba, 0xaf, 0x40, 0x8f, 0xf9, 0x45, 0x23, + 0x1a, 0x74, 0x1e, 0xfe, 0x0b, 0x47, 0x95, 0x64, 0x7b, 0xd6, 0xb9, 0x17, + 0xd6, 0x93, 0x34, 0x79, 0xb7, 0x24, 0x52, 0x47, 0x8a, 0xa7, 0x66, 0xca, + 0x83, 0x43, 0x26, 0xc7, +}; +static const unsigned char kat3943_addinpr2[] = {0}; +static const unsigned char kat3943_retbits[] = { + 0x39, 0x4a, 0x8c, 0x5e, 0x3c, 0xd4, 0xc3, 0x66, 0xac, 0x4b, 0x28, 0x37, + 0xd8, 0xd7, 0x46, 0x1a, 0x72, 0xea, 0xc3, 0xa8, 0x93, 0x7b, 0xa0, 0x58, + 0x09, 0x59, 0xb1, 0xba, 0x7e, 0xdd, 0x80, 0x3c, 0xab, 0x8a, 0x90, 0xb8, + 0x26, 0xa3, 0x4a, 0xc3, 0x04, 0x8a, 0x7d, 0xcd, 0xab, 0x7d, 0xf7, 0x3c, + 0x82, 0xae, 0x37, 0x76, 0x56, 0xae, 0x48, 0x09, 0x3f, 0xff, 0xff, 0x76, + 0x09, 0xa6, 0x73, 0xa0, +}; +static const struct drbg_kat_pr_true kat3943_t = { + 12, kat3943_entropyin, kat3943_nonce, kat3943_persstr, + kat3943_entropyinpr1, kat3943_addinpr1, kat3943_entropyinpr2, + kat3943_addinpr2, kat3943_retbits +}; +static const struct drbg_kat kat3943 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3943_t +}; + +static const unsigned char kat3944_entropyin[] = { + 0x06, 0x43, 0x3c, 0xe6, 0x84, 0x28, 0x5c, 0x60, 0x93, 0x86, 0x2e, 0x04, + 0x3c, 0x62, 0xbc, 0xbe, 0x4b, 0xb7, 0xe5, 0x27, 0x6a, 0xde, 0x0f, 0xad, + 0x10, 0xa1, 0xc3, 0x1a, 0xa2, 0xc7, 0x88, 0xbd, 0x03, 0x8f, 0xed, 0x0c, + 0x6f, 0x14, 0xd0, 0x5e, +}; +static const unsigned char kat3944_nonce[] = {0}; +static const unsigned char kat3944_persstr[] = { + 0x43, 0x1d, 0x1e, 0x40, 0x12, 0xe4, 0xfd, 0xa1, 0x46, 0xc2, 0x2f, 0x32, + 0xe2, 0x13, 0x64, 0x24, 0xd4, 0x69, 0x9f, 0x60, 0xc6, 0x3b, 0x8e, 0xab, + 0xd2, 0x57, 0x5e, 0x9b, 0xe1, 0x6b, 0x98, 0x9c, 0x94, 0x8b, 0x00, 0xe7, + 0x5b, 0x85, 0xfb, 0xe2, +}; +static const unsigned char kat3944_entropyinpr1[] = { + 0xaa, 0x6d, 0xc2, 0xcf, 0x88, 0xf1, 0x25, 0x23, 0x22, 0x90, 0xa7, 0xb9, + 0xe5, 0x58, 0x7c, 0xa1, 0xf2, 0x0d, 0x5d, 0x36, 0xb4, 0x95, 0x0d, 0x91, + 0xc7, 0xb9, 0x89, 0x93, 0xe4, 0xc0, 0xaf, 0xcd, 0x31, 0x0e, 0xb3, 0xd0, + 0x3b, 0xc8, 0xd5, 0x80, +}; +static const unsigned char kat3944_addinpr1[] = {0}; +static const unsigned char kat3944_entropyinpr2[] = { + 0xb4, 0x43, 0x7f, 0x56, 0x94, 0x08, 0x3e, 0x04, 0xb1, 0xe9, 0x00, 0xb2, + 0xab, 0x4d, 0x88, 0xd9, 0x97, 0x85, 0x1c, 0x7b, 0x4a, 0xe0, 0x67, 0x83, + 0xf4, 0x3a, 0x52, 0x85, 0x1e, 0xa8, 0xdb, 0xd8, 0xd6, 0xa6, 0x96, 0xf5, + 0xb0, 0xa4, 0x30, 0xda, +}; +static const unsigned char kat3944_addinpr2[] = {0}; +static const unsigned char kat3944_retbits[] = { + 0x92, 0xef, 0xc3, 0x29, 0x01, 0xeb, 0xef, 0x99, 0x7c, 0x09, 0x74, 0x2a, + 0x31, 0xb2, 0x6b, 0x27, 0x52, 0xc7, 0x9d, 0x5c, 0x72, 0xfa, 0x37, 0x0b, + 0x5b, 0x96, 0x0e, 0x8e, 0x3f, 0x75, 0x6a, 0x83, 0xbd, 0x75, 0xe0, 0x01, + 0xf4, 0xbf, 0xe8, 0x23, 0x36, 0x2e, 0x7f, 0x10, 0x50, 0x40, 0x98, 0xa9, + 0x16, 0x3e, 0x23, 0x46, 0x8d, 0xa1, 0x1a, 0x2b, 0x3d, 0x98, 0xeb, 0xfd, + 0xf9, 0x91, 0x22, 0xe2, +}; +static const struct drbg_kat_pr_true kat3944_t = { + 13, kat3944_entropyin, kat3944_nonce, kat3944_persstr, + kat3944_entropyinpr1, kat3944_addinpr1, kat3944_entropyinpr2, + kat3944_addinpr2, kat3944_retbits +}; +static const struct drbg_kat kat3944 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3944_t +}; + +static const unsigned char kat3945_entropyin[] = { + 0x71, 0x44, 0x3f, 0x5d, 0x72, 0x13, 0xa5, 0xe7, 0xeb, 0x26, 0x8c, 0x0c, + 0x7b, 0xec, 0x51, 0x2b, 0x98, 0x39, 0xea, 0x90, 0x86, 0x92, 0xd8, 0x22, + 0xe8, 0x12, 0xf9, 0x55, 0xb7, 0x43, 0x08, 0xc6, 0x18, 0xb0, 0x70, 0x6d, + 0x74, 0x60, 0xc8, 0xa5, +}; +static const unsigned char kat3945_nonce[] = {0}; +static const unsigned char kat3945_persstr[] = { + 0x51, 0xbd, 0x28, 0xec, 0xa7, 0x02, 0x77, 0xcb, 0x41, 0xfa, 0x23, 0x16, + 0x63, 0x53, 0xe5, 0xa4, 0x75, 0x39, 0x9e, 0xcf, 0xb2, 0x01, 0x2d, 0x55, + 0xfe, 0xe6, 0xb1, 0xee, 0xea, 0x6f, 0x50, 0x7f, 0xa7, 0x5e, 0x46, 0x34, + 0xc3, 0xa1, 0xe8, 0x02, +}; +static const unsigned char kat3945_entropyinpr1[] = { + 0x82, 0x83, 0x57, 0xad, 0x5c, 0x99, 0xf1, 0x14, 0x39, 0x4f, 0x57, 0x8f, + 0x56, 0xcd, 0x7e, 0x9a, 0x5d, 0xa6, 0x71, 0x63, 0x6b, 0xce, 0x00, 0xa4, + 0xb2, 0x2d, 0x77, 0xe9, 0x8d, 0xd8, 0x2b, 0x63, 0x1e, 0xba, 0x6d, 0x9e, + 0xe5, 0x83, 0xcd, 0x51, +}; +static const unsigned char kat3945_addinpr1[] = {0}; +static const unsigned char kat3945_entropyinpr2[] = { + 0x6f, 0x25, 0x6e, 0x9f, 0x5f, 0x7a, 0x84, 0xba, 0x4f, 0xd6, 0xeb, 0x19, + 0xb6, 0xae, 0x20, 0xb2, 0x7c, 0x26, 0x66, 0x0e, 0x51, 0x98, 0x2b, 0xc4, + 0xcf, 0x8e, 0x28, 0xa2, 0xdc, 0x43, 0xcd, 0xb7, 0x23, 0xcc, 0x8a, 0x72, + 0x7c, 0x2e, 0xa9, 0x1d, +}; +static const unsigned char kat3945_addinpr2[] = {0}; +static const unsigned char kat3945_retbits[] = { + 0xc1, 0x76, 0x91, 0x0a, 0x6a, 0x7c, 0x96, 0x98, 0x28, 0x41, 0xc0, 0xb6, + 0x03, 0xb4, 0x23, 0xb2, 0xfa, 0x67, 0xc2, 0x67, 0xb5, 0x38, 0x8d, 0x85, + 0x8a, 0x4d, 0x8d, 0xcd, 0x69, 0xd6, 0xb6, 0x7c, 0xb9, 0x68, 0x16, 0x89, + 0x21, 0x62, 0x14, 0x7e, 0x38, 0xcc, 0x60, 0x2a, 0xfa, 0x45, 0x9f, 0xc5, + 0x62, 0x3d, 0xa0, 0x86, 0x2b, 0x74, 0xf1, 0xe8, 0xf5, 0x69, 0xbf, 0x3b, + 0x10, 0x24, 0xd8, 0x81, +}; +static const struct drbg_kat_pr_true kat3945_t = { + 14, kat3945_entropyin, kat3945_nonce, kat3945_persstr, + kat3945_entropyinpr1, kat3945_addinpr1, kat3945_entropyinpr2, + kat3945_addinpr2, kat3945_retbits +}; +static const struct drbg_kat kat3945 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3945_t +}; + +static const unsigned char kat3946_entropyin[] = { + 0x6a, 0x5d, 0x9d, 0x87, 0x98, 0x26, 0x24, 0xc9, 0x80, 0x9e, 0x18, 0x03, + 0x24, 0x33, 0x78, 0x64, 0x08, 0xc2, 0xf5, 0x48, 0x1c, 0x0b, 0xd8, 0x11, + 0x79, 0xf3, 0x97, 0x0f, 0xb6, 0xb5, 0x5b, 0x1b, 0x78, 0xc3, 0x6e, 0xeb, + 0x0a, 0x2a, 0x89, 0x94, +}; +static const unsigned char kat3946_nonce[] = {0}; +static const unsigned char kat3946_persstr[] = { + 0x2e, 0x12, 0xd9, 0x22, 0x2c, 0x2d, 0x71, 0xa8, 0x34, 0x4a, 0x4f, 0x61, + 0x24, 0xe7, 0x8c, 0x4f, 0x5b, 0x6f, 0xa1, 0xca, 0xb9, 0x92, 0x58, 0x60, + 0x05, 0xde, 0x04, 0x5d, 0x4c, 0x4c, 0x9a, 0x72, 0xe4, 0xa1, 0x71, 0x25, + 0x7c, 0xd2, 0x6a, 0xba, +}; +static const unsigned char kat3946_entropyinpr1[] = { + 0x60, 0xa1, 0xa1, 0xaa, 0x8b, 0xdf, 0x25, 0x1a, 0x36, 0xc0, 0xd3, 0x52, + 0x88, 0x46, 0xf8, 0x3f, 0x3e, 0x46, 0x41, 0x14, 0x16, 0x0f, 0x66, 0x81, + 0xce, 0x09, 0x66, 0x3b, 0xd4, 0xdc, 0x73, 0xfd, 0x11, 0xd6, 0xf5, 0xe3, + 0xe5, 0xf1, 0x48, 0x33, +}; +static const unsigned char kat3946_addinpr1[] = { + 0xfd, 0x5e, 0xa0, 0x80, 0xeb, 0x32, 0x10, 0x4e, 0x59, 0xf3, 0x31, 0xe0, + 0xf4, 0x89, 0xf4, 0x65, 0x1f, 0x89, 0x5b, 0x4e, 0x43, 0x04, 0x33, 0x0d, + 0x0e, 0x0c, 0x65, 0xe5, 0xbe, 0x23, 0xbc, 0xd9, 0xec, 0x4a, 0x36, 0x5c, + 0x30, 0xdc, 0x22, 0x60, +}; +static const unsigned char kat3946_entropyinpr2[] = { + 0x5b, 0x40, 0xb9, 0x64, 0xc9, 0xff, 0xde, 0xc2, 0xe7, 0x04, 0xef, 0x7f, + 0x5d, 0x3a, 0x85, 0xcf, 0xa6, 0x7f, 0xa7, 0x80, 0x0c, 0x89, 0xaf, 0xbf, + 0xe3, 0x24, 0x87, 0x51, 0x9e, 0x48, 0x75, 0x81, 0x26, 0xa9, 0x8a, 0x42, + 0x5a, 0x92, 0x1e, 0xd1, +}; +static const unsigned char kat3946_addinpr2[] = { + 0xcc, 0xcc, 0x70, 0xa0, 0x26, 0x07, 0x45, 0x80, 0x8f, 0xde, 0x55, 0x2f, + 0x54, 0xfe, 0x18, 0xf2, 0x61, 0x08, 0x4c, 0x65, 0x6c, 0x96, 0x95, 0x41, + 0x14, 0x93, 0xff, 0x89, 0x96, 0xbf, 0xc6, 0x21, 0xb6, 0xd3, 0x1a, 0x4d, + 0xa8, 0x8a, 0x39, 0xee, +}; +static const unsigned char kat3946_retbits[] = { + 0x4b, 0xa3, 0x6c, 0x4b, 0x4f, 0xde, 0xf3, 0x2a, 0x50, 0xbf, 0x34, 0x98, + 0xb7, 0xc8, 0xe2, 0xa1, 0xa9, 0x83, 0x4a, 0x62, 0x95, 0xa3, 0x3f, 0xc2, + 0x46, 0xcc, 0x3b, 0xe2, 0x0f, 0x0f, 0xa1, 0x33, 0x44, 0x00, 0xb9, 0xe4, + 0xfb, 0x36, 0x99, 0xba, 0xbc, 0x84, 0x4a, 0x62, 0xe5, 0x71, 0xc8, 0xb7, + 0x4a, 0xf2, 0x32, 0x99, 0x4d, 0xf7, 0x3c, 0x05, 0xeb, 0xf8, 0x8c, 0x54, + 0x24, 0xdc, 0x89, 0xaa, +}; +static const struct drbg_kat_pr_true kat3946_t = { + 0, kat3946_entropyin, kat3946_nonce, kat3946_persstr, + kat3946_entropyinpr1, kat3946_addinpr1, kat3946_entropyinpr2, + kat3946_addinpr2, kat3946_retbits +}; +static const struct drbg_kat kat3946 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3946_t +}; + +static const unsigned char kat3947_entropyin[] = { + 0xb5, 0xcd, 0x09, 0x81, 0xce, 0x9e, 0x51, 0xfe, 0x43, 0x6a, 0x20, 0x57, + 0xfc, 0x76, 0x54, 0x47, 0x43, 0xb0, 0x03, 0x9b, 0x6e, 0x4e, 0x52, 0xbf, + 0x00, 0x40, 0x23, 0x0b, 0x6f, 0x41, 0xb3, 0x72, 0x39, 0xb0, 0xaa, 0x03, + 0x01, 0x3e, 0x46, 0x50, +}; +static const unsigned char kat3947_nonce[] = {0}; +static const unsigned char kat3947_persstr[] = { + 0x36, 0x38, 0x8d, 0x1e, 0xbf, 0xc0, 0x5e, 0xc0, 0xcb, 0x62, 0x7c, 0x60, + 0xc1, 0xf6, 0x05, 0x36, 0x5e, 0x5f, 0xfe, 0x35, 0x98, 0x8e, 0x15, 0x82, + 0xdf, 0xf1, 0x29, 0xee, 0xff, 0x97, 0xc1, 0x46, 0xff, 0x9b, 0x43, 0xbb, + 0x57, 0x40, 0xf7, 0xea, +}; +static const unsigned char kat3947_entropyinpr1[] = { + 0x91, 0x9b, 0xf6, 0x9e, 0x5f, 0xc6, 0x7a, 0xe2, 0xb1, 0xdd, 0x70, 0x5a, + 0x4a, 0x3a, 0x0b, 0xba, 0x2d, 0x77, 0xc4, 0x92, 0x44, 0x4a, 0x71, 0x80, + 0x81, 0x56, 0x93, 0x77, 0xb7, 0x2d, 0x85, 0xd4, 0x50, 0x4d, 0x94, 0xaa, + 0x1f, 0xc6, 0xe4, 0x3d, +}; +static const unsigned char kat3947_addinpr1[] = { + 0xc4, 0x8e, 0xe8, 0x4a, 0xaf, 0x06, 0xca, 0xf7, 0x54, 0xb6, 0x51, 0xe6, + 0x76, 0x1c, 0x64, 0x19, 0x97, 0xa0, 0x00, 0x33, 0xe8, 0xbc, 0x7d, 0x54, + 0x4a, 0x1c, 0xc0, 0xd2, 0x0c, 0x8c, 0x56, 0xec, 0xa7, 0x54, 0x89, 0x94, + 0x4e, 0xe2, 0xf4, 0xc0, +}; +static const unsigned char kat3947_entropyinpr2[] = { + 0xf8, 0x92, 0x73, 0x55, 0x34, 0x2b, 0x2f, 0xb1, 0x5b, 0x03, 0x2d, 0xc2, + 0x68, 0x32, 0x4a, 0x74, 0x00, 0xac, 0xdf, 0x1b, 0xbd, 0xfe, 0x24, 0xf9, + 0xbb, 0x3e, 0xc2, 0x23, 0xc9, 0x3c, 0x0a, 0x87, 0xdf, 0xc8, 0xed, 0x1f, + 0xda, 0x1e, 0x34, 0x83, +}; +static const unsigned char kat3947_addinpr2[] = { + 0x0a, 0x9b, 0xab, 0xd6, 0x26, 0xb5, 0xdf, 0x2e, 0x3e, 0x68, 0xad, 0xc2, + 0x17, 0x1a, 0x72, 0xcc, 0xe7, 0xaf, 0x0d, 0x89, 0x10, 0x44, 0x8d, 0x54, + 0xf4, 0xf2, 0xc3, 0x75, 0xc1, 0xfb, 0x42, 0x19, 0x28, 0x08, 0xff, 0x2d, + 0x76, 0x0b, 0x18, 0x2e, +}; +static const unsigned char kat3947_retbits[] = { + 0x62, 0x50, 0x11, 0x67, 0xcb, 0x1f, 0x3d, 0x71, 0xcb, 0x9b, 0x09, 0x2e, + 0x3b, 0x79, 0x21, 0x92, 0xa0, 0xfc, 0x26, 0x48, 0xa3, 0x76, 0xd9, 0x1e, + 0xcb, 0xb2, 0x9d, 0x00, 0x72, 0xb8, 0xba, 0xc7, 0x95, 0xba, 0xe0, 0xea, + 0x45, 0x58, 0x46, 0xc6, 0xb1, 0x6e, 0x27, 0xd6, 0x70, 0xd9, 0x89, 0x64, + 0x73, 0x1d, 0x3d, 0xc9, 0x50, 0x0f, 0xbd, 0xdb, 0x16, 0x57, 0x02, 0xde, + 0x45, 0xdb, 0xc0, 0x23, +}; +static const struct drbg_kat_pr_true kat3947_t = { + 1, kat3947_entropyin, kat3947_nonce, kat3947_persstr, + kat3947_entropyinpr1, kat3947_addinpr1, kat3947_entropyinpr2, + kat3947_addinpr2, kat3947_retbits +}; +static const struct drbg_kat kat3947 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3947_t +}; + +static const unsigned char kat3948_entropyin[] = { + 0x02, 0xf3, 0xc4, 0xa1, 0xdd, 0x69, 0xbf, 0x28, 0x1c, 0x0b, 0x9c, 0x9d, + 0xdc, 0x27, 0xe6, 0x8d, 0x8a, 0x90, 0xbb, 0x74, 0xdc, 0x49, 0x29, 0x93, + 0xf4, 0xdc, 0x0d, 0xc6, 0xb2, 0x49, 0xe2, 0x37, 0xbb, 0x7a, 0x54, 0x06, + 0x9d, 0x95, 0x67, 0x35, +}; +static const unsigned char kat3948_nonce[] = {0}; +static const unsigned char kat3948_persstr[] = { + 0x6c, 0x30, 0x40, 0xac, 0x6d, 0x69, 0x43, 0xed, 0x18, 0x00, 0x74, 0x2f, + 0xd1, 0x36, 0x61, 0x61, 0x09, 0x2b, 0x36, 0x36, 0xef, 0xe2, 0x29, 0x85, + 0x06, 0xc6, 0x96, 0xaa, 0xc1, 0xa7, 0xa9, 0xd8, 0x96, 0x83, 0xb4, 0x0e, + 0x27, 0xbf, 0x4a, 0x74, +}; +static const unsigned char kat3948_entropyinpr1[] = { + 0x3b, 0x3c, 0x0e, 0xa6, 0xac, 0x17, 0x31, 0x2c, 0x98, 0x45, 0x81, 0x45, + 0x83, 0x82, 0x20, 0xb1, 0x35, 0xef, 0xda, 0x79, 0x43, 0x33, 0x7c, 0xa4, + 0xf1, 0x36, 0x26, 0xbe, 0x6a, 0x4f, 0x03, 0xd2, 0x3b, 0x23, 0x98, 0x0f, + 0x67, 0x85, 0xba, 0x60, +}; +static const unsigned char kat3948_addinpr1[] = { + 0xb1, 0xb7, 0x2c, 0xd4, 0x9b, 0x5d, 0x45, 0xfd, 0xea, 0xce, 0x1c, 0x7f, + 0x47, 0x0e, 0x90, 0x59, 0xb2, 0x21, 0x9f, 0xcd, 0xc3, 0x3e, 0x90, 0x1e, + 0x96, 0x0c, 0x8e, 0x70, 0x72, 0xc5, 0x43, 0xd0, 0x72, 0x10, 0x38, 0x80, + 0x7d, 0x9b, 0x9f, 0xc3, +}; +static const unsigned char kat3948_entropyinpr2[] = { + 0x20, 0xbb, 0xb0, 0x4d, 0x85, 0xab, 0xfe, 0x74, 0x31, 0xcb, 0xdb, 0x68, + 0x96, 0x95, 0x37, 0x44, 0xbb, 0x18, 0xc8, 0xc0, 0xf3, 0x64, 0x45, 0x1e, + 0xcd, 0x47, 0xbe, 0x3b, 0xed, 0x78, 0x4f, 0x27, 0x35, 0xb3, 0x0b, 0x4a, + 0x97, 0xc6, 0x97, 0xb8, +}; +static const unsigned char kat3948_addinpr2[] = { + 0x2a, 0x7d, 0x8c, 0x96, 0x37, 0x15, 0xe4, 0xdb, 0x36, 0xe5, 0x3e, 0x7f, + 0x3b, 0x8a, 0x5f, 0x09, 0x2f, 0x90, 0x46, 0x47, 0xa1, 0xc8, 0xef, 0x27, + 0xa5, 0xbd, 0x88, 0x05, 0x10, 0x5a, 0x50, 0xf5, 0xe5, 0x4f, 0xe7, 0xd2, + 0x06, 0xeb, 0x22, 0x10, +}; +static const unsigned char kat3948_retbits[] = { + 0x04, 0x43, 0x67, 0x07, 0x40, 0x0f, 0xee, 0x36, 0xdb, 0xf8, 0x63, 0x2e, + 0x40, 0x97, 0xcb, 0x40, 0x7e, 0xf7, 0x73, 0x68, 0x06, 0x24, 0x6f, 0x9e, + 0x6c, 0xa4, 0x6d, 0xbf, 0x98, 0x06, 0xdb, 0x3c, 0x97, 0x9f, 0xe0, 0x67, + 0xd2, 0x7f, 0xfe, 0x35, 0x11, 0x4d, 0x2b, 0xf2, 0x0b, 0x1e, 0x7b, 0x3e, + 0x4d, 0xed, 0xdf, 0x17, 0xa0, 0x9a, 0xd2, 0xd3, 0xbc, 0x8a, 0xaf, 0xb1, + 0x76, 0x45, 0xfe, 0x68, +}; +static const struct drbg_kat_pr_true kat3948_t = { + 2, kat3948_entropyin, kat3948_nonce, kat3948_persstr, + kat3948_entropyinpr1, kat3948_addinpr1, kat3948_entropyinpr2, + kat3948_addinpr2, kat3948_retbits +}; +static const struct drbg_kat kat3948 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3948_t +}; + +static const unsigned char kat3949_entropyin[] = { + 0xd8, 0xe0, 0x97, 0x51, 0xed, 0xc1, 0x58, 0x63, 0xe7, 0xe3, 0x6e, 0x63, + 0xf7, 0x73, 0xb8, 0x23, 0x0a, 0x2b, 0x83, 0x38, 0x96, 0x91, 0xe8, 0xc0, + 0x05, 0xeb, 0x15, 0x3f, 0xc9, 0x92, 0x53, 0x9b, 0x1d, 0x7f, 0x35, 0x75, + 0x3b, 0x00, 0xb1, 0x69, +}; +static const unsigned char kat3949_nonce[] = {0}; +static const unsigned char kat3949_persstr[] = { + 0xc3, 0x27, 0xbc, 0x54, 0x52, 0xe3, 0x3b, 0xee, 0xf5, 0x5d, 0x39, 0xba, + 0x9b, 0xe5, 0xa3, 0x51, 0x7c, 0x8b, 0xd4, 0x6d, 0xc6, 0x63, 0xb8, 0x79, + 0xc2, 0x3f, 0xcc, 0x9d, 0x9e, 0xef, 0xb7, 0x3b, 0xe5, 0x96, 0xb0, 0x32, + 0xdd, 0xba, 0x22, 0x4e, +}; +static const unsigned char kat3949_entropyinpr1[] = { + 0x65, 0x3a, 0x92, 0x7d, 0x92, 0x30, 0x8f, 0xaf, 0xfd, 0x0d, 0xb8, 0x2c, + 0xcf, 0x5a, 0x74, 0xa2, 0x3f, 0xa1, 0xb4, 0x3a, 0x13, 0xf0, 0xc7, 0x3d, + 0x09, 0xbd, 0x0b, 0xaa, 0x79, 0xeb, 0x8c, 0x30, 0xf3, 0x3d, 0x43, 0x0e, + 0xf4, 0x85, 0xaf, 0x82, +}; +static const unsigned char kat3949_addinpr1[] = { + 0xac, 0xb2, 0x56, 0x20, 0x47, 0xfc, 0x8a, 0x85, 0x58, 0x55, 0x10, 0xc2, + 0x31, 0x0f, 0x19, 0xd7, 0xc9, 0x91, 0xa2, 0xf5, 0x66, 0xa7, 0x8a, 0xeb, + 0x89, 0x01, 0x1b, 0x13, 0xe7, 0x1d, 0x28, 0xc6, 0x8b, 0xfa, 0x87, 0xf3, + 0x66, 0x66, 0xbd, 0x30, +}; +static const unsigned char kat3949_entropyinpr2[] = { + 0x79, 0x6a, 0x51, 0x4d, 0x39, 0x76, 0xd4, 0x24, 0xdd, 0x9c, 0x49, 0x4c, + 0x92, 0xc4, 0x39, 0x23, 0x40, 0x30, 0xb1, 0x98, 0x9d, 0xe8, 0xfa, 0xfa, + 0xaf, 0xd7, 0x71, 0x7f, 0xc3, 0x5c, 0x9d, 0xd7, 0x28, 0x8b, 0x21, 0x36, + 0xf0, 0x5f, 0x1d, 0xac, +}; +static const unsigned char kat3949_addinpr2[] = { + 0x1c, 0x49, 0xc5, 0x8d, 0x70, 0x6b, 0x29, 0xe1, 0x95, 0x78, 0x83, 0x46, + 0xd1, 0x0c, 0x91, 0xe5, 0x86, 0x4f, 0x66, 0xc9, 0x60, 0xad, 0x3b, 0x02, + 0xf9, 0xe9, 0xd5, 0x48, 0x56, 0x5a, 0x89, 0x04, 0xee, 0x99, 0x65, 0x5a, + 0x8e, 0x2d, 0x53, 0x35, +}; +static const unsigned char kat3949_retbits[] = { + 0x71, 0x39, 0x16, 0x78, 0x35, 0xab, 0x7d, 0x08, 0xf4, 0xfe, 0x34, 0xa5, + 0xb4, 0x4f, 0x76, 0x5b, 0xaa, 0xbc, 0xce, 0x9f, 0x90, 0x53, 0xff, 0x85, + 0xad, 0x99, 0x98, 0x5c, 0x23, 0x20, 0x60, 0x4a, 0x69, 0xf1, 0xa6, 0xe0, + 0xa7, 0x87, 0xb1, 0xaf, 0x19, 0xb7, 0x07, 0x24, 0x49, 0x32, 0xa5, 0x2b, + 0x97, 0x53, 0x4a, 0xc3, 0x7c, 0xa9, 0x01, 0x0b, 0xb7, 0x92, 0x5e, 0xf8, + 0x94, 0xc9, 0x0a, 0x2e, +}; +static const struct drbg_kat_pr_true kat3949_t = { + 3, kat3949_entropyin, kat3949_nonce, kat3949_persstr, + kat3949_entropyinpr1, kat3949_addinpr1, kat3949_entropyinpr2, + kat3949_addinpr2, kat3949_retbits +}; +static const struct drbg_kat kat3949 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3949_t +}; + +static const unsigned char kat3950_entropyin[] = { + 0x2c, 0x8f, 0x72, 0x01, 0x59, 0x31, 0xe1, 0x96, 0xf5, 0xc4, 0xfd, 0xef, + 0xf3, 0xd2, 0x70, 0x85, 0xdc, 0xdc, 0x4b, 0x4d, 0xd5, 0xdd, 0x77, 0x45, + 0xd8, 0x76, 0x58, 0x5f, 0xfa, 0x3b, 0x5c, 0x1e, 0x52, 0x6d, 0x6b, 0xf5, + 0xfc, 0x92, 0x47, 0x58, +}; +static const unsigned char kat3950_nonce[] = {0}; +static const unsigned char kat3950_persstr[] = { + 0x14, 0x56, 0x4a, 0x84, 0x05, 0x44, 0x06, 0x3b, 0xc9, 0x29, 0x20, 0x0d, + 0x19, 0x74, 0xf2, 0x8f, 0x31, 0x6a, 0x74, 0x85, 0xe7, 0x80, 0xc9, 0x63, + 0x8a, 0x42, 0xd5, 0x8f, 0x37, 0x5a, 0x26, 0xff, 0xa7, 0x04, 0xc0, 0xc6, + 0x3d, 0x2c, 0x07, 0xc8, +}; +static const unsigned char kat3950_entropyinpr1[] = { + 0xdb, 0xbc, 0xc3, 0xd6, 0xea, 0x93, 0x51, 0xa8, 0x92, 0x8f, 0xc6, 0xd4, + 0x44, 0x13, 0xea, 0x03, 0x0c, 0x6e, 0x81, 0x37, 0xa1, 0x74, 0x1b, 0xfe, + 0xc1, 0x52, 0x91, 0x35, 0x44, 0x2e, 0x20, 0x90, 0x9d, 0x90, 0x0f, 0x15, + 0xf0, 0x30, 0x8e, 0x05, +}; +static const unsigned char kat3950_addinpr1[] = { + 0xf6, 0x41, 0xf3, 0x1c, 0x5d, 0xaa, 0x06, 0x69, 0x19, 0x34, 0x80, 0x18, + 0xd0, 0xde, 0x2f, 0xbd, 0x4f, 0xaf, 0x69, 0x0c, 0xdc, 0x0a, 0xa1, 0x02, + 0xe0, 0x9d, 0xe6, 0x6a, 0xc9, 0x25, 0x3d, 0x2a, 0xfe, 0x1f, 0xf5, 0x89, + 0xa9, 0x41, 0xb0, 0x98, +}; +static const unsigned char kat3950_entropyinpr2[] = { + 0xa1, 0x35, 0xa0, 0x60, 0x5a, 0x54, 0x56, 0xd9, 0x21, 0xb7, 0x21, 0xe0, + 0x89, 0xdb, 0xbe, 0xee, 0xe1, 0x20, 0xdd, 0xd9, 0x45, 0x95, 0x33, 0x51, + 0x6e, 0x6a, 0x66, 0xf2, 0x56, 0x88, 0x32, 0x0e, 0x56, 0xf9, 0xd0, 0x34, + 0xb6, 0x37, 0xf8, 0x70, +}; +static const unsigned char kat3950_addinpr2[] = { + 0x4c, 0x21, 0x91, 0xc1, 0xf2, 0x43, 0x06, 0x86, 0xe1, 0x1f, 0xac, 0x33, + 0x2e, 0x4d, 0x00, 0xdc, 0xba, 0xd1, 0x43, 0x7f, 0x28, 0x1b, 0x7c, 0x22, + 0xf7, 0x4f, 0x9b, 0x2e, 0x88, 0x17, 0xe8, 0x18, 0xbf, 0x35, 0x88, 0x10, + 0xd2, 0x0d, 0x68, 0x0b, +}; +static const unsigned char kat3950_retbits[] = { + 0x48, 0xf0, 0xfe, 0x50, 0xd9, 0x90, 0x87, 0x9f, 0x3e, 0xb3, 0x7e, 0xfc, + 0xd8, 0x16, 0x08, 0x2d, 0x6b, 0xa6, 0x51, 0xf5, 0x71, 0x8f, 0x46, 0x83, + 0x05, 0xa1, 0x6a, 0xc8, 0xd5, 0x1b, 0xb0, 0x34, 0x2c, 0xce, 0x19, 0x95, + 0x29, 0xef, 0xca, 0xd5, 0x59, 0x0b, 0xc9, 0x6f, 0x76, 0x5b, 0xf3, 0xfe, + 0xdd, 0x56, 0x43, 0x02, 0xa5, 0xd6, 0x4f, 0xa0, 0xb6, 0x3b, 0x14, 0xe7, + 0x82, 0x65, 0x04, 0x45, +}; +static const struct drbg_kat_pr_true kat3950_t = { + 4, kat3950_entropyin, kat3950_nonce, kat3950_persstr, + kat3950_entropyinpr1, kat3950_addinpr1, kat3950_entropyinpr2, + kat3950_addinpr2, kat3950_retbits +}; +static const struct drbg_kat kat3950 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3950_t +}; + +static const unsigned char kat3951_entropyin[] = { + 0x6e, 0xcf, 0xe6, 0x7c, 0x49, 0x6c, 0xe1, 0x8f, 0xe8, 0x98, 0x98, 0xc0, + 0x6e, 0x63, 0xfa, 0x07, 0x86, 0xf9, 0x4b, 0xb4, 0x65, 0x18, 0xd3, 0x24, + 0xc2, 0xa9, 0x9b, 0xa3, 0x5a, 0x0f, 0xa7, 0xf5, 0x21, 0x14, 0x0c, 0x76, + 0xc8, 0xbd, 0xee, 0xb2, +}; +static const unsigned char kat3951_nonce[] = {0}; +static const unsigned char kat3951_persstr[] = { + 0x76, 0x85, 0x64, 0x61, 0x83, 0xc8, 0xc3, 0x52, 0xe0, 0x28, 0xd1, 0x22, + 0x77, 0x7d, 0xa0, 0xf3, 0xb4, 0xee, 0x48, 0x97, 0xdd, 0xd6, 0x84, 0x6a, + 0xf9, 0x94, 0x9d, 0xee, 0x9b, 0x95, 0xa4, 0x47, 0x97, 0x27, 0xd4, 0x39, + 0xb5, 0x3a, 0x6e, 0x9d, +}; +static const unsigned char kat3951_entropyinpr1[] = { + 0x23, 0xd7, 0x07, 0x16, 0x31, 0x45, 0x5f, 0x05, 0xa1, 0x30, 0x7a, 0x48, + 0xcd, 0xa4, 0x90, 0x7f, 0xf7, 0x9c, 0x75, 0x4b, 0x65, 0x28, 0x51, 0x3f, + 0x5c, 0x86, 0x40, 0xe7, 0x81, 0x1b, 0xa8, 0x0a, 0xe9, 0x31, 0xaf, 0x9a, + 0x1d, 0x3e, 0x95, 0x46, +}; +static const unsigned char kat3951_addinpr1[] = { + 0x00, 0xcf, 0x48, 0x61, 0x37, 0x8b, 0xa7, 0x40, 0xdb, 0xc4, 0x24, 0x38, + 0x4c, 0xb8, 0x0d, 0x8e, 0x2c, 0x60, 0xed, 0xdd, 0x74, 0x29, 0xba, 0xff, + 0x38, 0x73, 0x63, 0xa4, 0x31, 0x70, 0x14, 0x4e, 0x11, 0x79, 0x20, 0xe6, + 0xe8, 0xc3, 0xd4, 0x9f, +}; +static const unsigned char kat3951_entropyinpr2[] = { + 0x51, 0x04, 0x17, 0xc8, 0x58, 0x25, 0x74, 0xcd, 0xe0, 0x9d, 0x3e, 0x98, + 0x0f, 0x38, 0x10, 0xf2, 0x15, 0x33, 0x9a, 0xdd, 0xdb, 0xd8, 0x36, 0xcb, + 0xda, 0x19, 0x72, 0x9e, 0x0b, 0x3b, 0x2d, 0x26, 0x8b, 0x0d, 0x5f, 0xad, + 0x5e, 0x95, 0x04, 0x9c, +}; +static const unsigned char kat3951_addinpr2[] = { + 0x71, 0x12, 0x38, 0x8e, 0x5b, 0x31, 0xfd, 0x14, 0xcb, 0x82, 0x57, 0xe2, + 0xa1, 0x48, 0xe4, 0x15, 0xdd, 0x9a, 0x08, 0x1b, 0x62, 0x6d, 0x0d, 0xee, + 0xe7, 0x88, 0x3c, 0x03, 0xa2, 0x14, 0x5c, 0xb8, 0xe2, 0x03, 0x38, 0x8e, + 0x85, 0x72, 0x23, 0x9c, +}; +static const unsigned char kat3951_retbits[] = { + 0x65, 0x40, 0xb1, 0x18, 0x92, 0xfb, 0x2e, 0xab, 0xc7, 0x92, 0x52, 0x04, + 0x54, 0x81, 0xaf, 0x4f, 0x4a, 0xd6, 0x91, 0xad, 0xcf, 0x4c, 0x8f, 0x4a, + 0xd5, 0xe9, 0xfe, 0xc5, 0x00, 0x92, 0x4a, 0xf9, 0x7b, 0x53, 0x95, 0x8e, + 0xbc, 0x13, 0xe1, 0x31, 0x70, 0x24, 0xf9, 0x0c, 0x89, 0x9d, 0xc2, 0x57, + 0xd0, 0x95, 0x46, 0x2c, 0x98, 0x4d, 0x26, 0x37, 0x44, 0x5e, 0x4a, 0x48, + 0x02, 0x89, 0x81, 0x7f, +}; +static const struct drbg_kat_pr_true kat3951_t = { + 5, kat3951_entropyin, kat3951_nonce, kat3951_persstr, + kat3951_entropyinpr1, kat3951_addinpr1, kat3951_entropyinpr2, + kat3951_addinpr2, kat3951_retbits +}; +static const struct drbg_kat kat3951 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3951_t +}; + +static const unsigned char kat3952_entropyin[] = { + 0x35, 0xab, 0x1d, 0xe2, 0xb1, 0x30, 0x67, 0x03, 0x05, 0x60, 0x9a, 0x16, + 0xd7, 0x47, 0xc7, 0x5c, 0x02, 0xdc, 0x2d, 0x46, 0xbe, 0xa0, 0x50, 0x56, + 0x75, 0x1c, 0x6a, 0x3e, 0xc4, 0x01, 0xd6, 0x7d, 0xf0, 0x24, 0x2d, 0x5f, + 0x06, 0x78, 0x6d, 0x05, +}; +static const unsigned char kat3952_nonce[] = {0}; +static const unsigned char kat3952_persstr[] = { + 0xda, 0xb7, 0x60, 0x9e, 0xf4, 0xfe, 0x09, 0xd9, 0xc5, 0x16, 0x14, 0x0d, + 0xa1, 0x5d, 0x4a, 0x71, 0xf6, 0x5d, 0x54, 0x01, 0xb7, 0x54, 0x4a, 0x76, + 0xbf, 0xe1, 0x9f, 0x7c, 0x80, 0x49, 0x71, 0x06, 0xf8, 0xa5, 0x1f, 0x07, + 0x46, 0x37, 0xd8, 0x68, +}; +static const unsigned char kat3952_entropyinpr1[] = { + 0xc0, 0x6f, 0x14, 0x90, 0x6a, 0x18, 0x6f, 0x1b, 0x95, 0xaf, 0x46, 0x5c, + 0xf5, 0x4a, 0xf4, 0xef, 0x49, 0xb5, 0xf4, 0x7c, 0xfa, 0xaa, 0x68, 0x41, + 0xb1, 0x61, 0xa5, 0x4c, 0x51, 0xad, 0x06, 0x1d, 0xfb, 0xe9, 0xf5, 0x3a, + 0xd0, 0x40, 0x01, 0xdb, +}; +static const unsigned char kat3952_addinpr1[] = { + 0xd6, 0x45, 0xea, 0x03, 0x4e, 0x59, 0x9d, 0xd4, 0x2e, 0x62, 0x0f, 0xe2, + 0x6f, 0x77, 0x54, 0xea, 0xb8, 0x5c, 0xb3, 0x6a, 0x05, 0x2c, 0x0c, 0x1e, + 0xe4, 0x8a, 0x09, 0xa6, 0x9e, 0xae, 0xf7, 0xe5, 0x82, 0x1b, 0xb7, 0xff, + 0x75, 0xe2, 0x92, 0xc7, +}; +static const unsigned char kat3952_entropyinpr2[] = { + 0x9a, 0x74, 0xe7, 0x78, 0x3a, 0xa9, 0xc4, 0x3f, 0xc8, 0xa4, 0x5a, 0x0c, + 0x17, 0x12, 0x9a, 0xc3, 0x9d, 0x84, 0xc8, 0x47, 0xdb, 0x1e, 0xb2, 0xa7, + 0xd7, 0xeb, 0x6c, 0xc7, 0x9e, 0x7c, 0x39, 0x50, 0x69, 0x49, 0xea, 0xc2, + 0x1f, 0x91, 0x67, 0x02, +}; +static const unsigned char kat3952_addinpr2[] = { + 0x17, 0xd8, 0x27, 0xd2, 0xa8, 0xa1, 0x71, 0x13, 0x96, 0x44, 0x2b, 0x86, + 0x96, 0x31, 0x1c, 0x41, 0x45, 0x02, 0x00, 0x67, 0xb5, 0xd7, 0xb5, 0x1a, + 0xf6, 0x35, 0x75, 0x92, 0x06, 0x14, 0x45, 0xfc, 0xc3, 0x63, 0xed, 0x7c, + 0x44, 0x5a, 0xe8, 0x22, +}; +static const unsigned char kat3952_retbits[] = { + 0x08, 0xe8, 0x54, 0x48, 0x03, 0xce, 0xa5, 0x22, 0x79, 0x48, 0xc9, 0xda, + 0x22, 0x79, 0x67, 0x3e, 0x31, 0xe3, 0x01, 0x7c, 0xd0, 0x5e, 0x69, 0x62, + 0x31, 0xb1, 0x16, 0xb1, 0xcf, 0xed, 0x1b, 0x6a, 0x20, 0x61, 0x1d, 0x85, + 0x28, 0xa6, 0x93, 0x0f, 0xc1, 0x9b, 0x14, 0x52, 0x53, 0xc5, 0xae, 0xc8, + 0x41, 0x44, 0x94, 0x46, 0x21, 0xdd, 0x43, 0xbb, 0x3d, 0x34, 0x82, 0x7d, + 0xc6, 0xe2, 0xfa, 0xa6, +}; +static const struct drbg_kat_pr_true kat3952_t = { + 6, kat3952_entropyin, kat3952_nonce, kat3952_persstr, + kat3952_entropyinpr1, kat3952_addinpr1, kat3952_entropyinpr2, + kat3952_addinpr2, kat3952_retbits +}; +static const struct drbg_kat kat3952 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3952_t +}; + +static const unsigned char kat3953_entropyin[] = { + 0xc1, 0x00, 0x46, 0xd8, 0x49, 0x01, 0x25, 0x7f, 0x0a, 0xc9, 0xe3, 0x08, + 0x4d, 0x60, 0xbc, 0x52, 0x13, 0x11, 0xf2, 0x2b, 0x72, 0xc7, 0x70, 0x44, + 0x0a, 0x80, 0x8e, 0xde, 0xa9, 0x50, 0xff, 0xac, 0x51, 0x1e, 0xb9, 0x5c, + 0x98, 0xc2, 0x45, 0xb6, +}; +static const unsigned char kat3953_nonce[] = {0}; +static const unsigned char kat3953_persstr[] = { + 0xe2, 0x66, 0xd2, 0xab, 0xf2, 0x5e, 0x5a, 0x3a, 0xc4, 0x53, 0xc3, 0xe7, + 0xae, 0x63, 0x70, 0xcb, 0x53, 0x65, 0x99, 0xe1, 0xc3, 0x94, 0xc7, 0xaa, + 0xb7, 0x40, 0x24, 0xba, 0x76, 0x48, 0xb9, 0xb9, 0xa0, 0xef, 0x3d, 0xbf, + 0x87, 0x14, 0xea, 0x5b, +}; +static const unsigned char kat3953_entropyinpr1[] = { + 0x3e, 0x2f, 0xdc, 0xfc, 0xc5, 0xe3, 0x22, 0x28, 0x75, 0x7c, 0xff, 0x1a, + 0x4b, 0xb1, 0x72, 0x62, 0x7a, 0x21, 0x2b, 0x47, 0xda, 0xde, 0x8a, 0xc1, + 0x50, 0xa4, 0x2b, 0x77, 0x7c, 0x16, 0x92, 0x09, 0x74, 0x8e, 0x96, 0xfb, + 0x2d, 0xff, 0xaf, 0x61, +}; +static const unsigned char kat3953_addinpr1[] = { + 0x2b, 0xa2, 0xfb, 0x70, 0x6a, 0x54, 0xae, 0x14, 0xce, 0xca, 0x03, 0x46, + 0xab, 0x3b, 0x63, 0x24, 0x96, 0xb2, 0x4b, 0x99, 0x73, 0x66, 0x3b, 0x9a, + 0x26, 0x40, 0x4b, 0x9e, 0xde, 0x55, 0x39, 0x76, 0x2f, 0x16, 0xe8, 0x35, + 0x78, 0x9a, 0xb4, 0xa0, +}; +static const unsigned char kat3953_entropyinpr2[] = { + 0xd4, 0x9b, 0xc1, 0x0d, 0x3f, 0xe2, 0x50, 0x8e, 0xda, 0x10, 0x23, 0xc7, + 0x5a, 0xf9, 0x2d, 0xe6, 0x19, 0x7a, 0xc5, 0xeb, 0x75, 0xe6, 0xa8, 0x7d, + 0x76, 0x58, 0xbd, 0x04, 0xe3, 0x0e, 0x39, 0x66, 0x59, 0x95, 0x8e, 0x28, + 0x17, 0xde, 0xf4, 0xf9, +}; +static const unsigned char kat3953_addinpr2[] = { + 0x88, 0xd3, 0xc7, 0xe9, 0x70, 0x4b, 0x8b, 0x11, 0xb2, 0x86, 0xab, 0xe3, + 0xc2, 0xe5, 0x7a, 0x6a, 0x8e, 0xf7, 0x46, 0xa1, 0x57, 0x30, 0xbf, 0xcf, + 0xf3, 0x1f, 0x2b, 0x13, 0x2f, 0x48, 0x93, 0x84, 0x64, 0x78, 0x96, 0x35, + 0x7c, 0xf8, 0x4f, 0xb8, +}; +static const unsigned char kat3953_retbits[] = { + 0xa7, 0xe3, 0x99, 0x09, 0x06, 0xfd, 0xfc, 0x87, 0x60, 0xff, 0xcb, 0x04, + 0x03, 0x5e, 0x38, 0x97, 0x58, 0xe0, 0xf3, 0x67, 0x2b, 0xb6, 0x43, 0x2f, + 0x3e, 0x00, 0xf0, 0x7b, 0x2b, 0xb9, 0x9e, 0xf3, 0x4c, 0xac, 0x81, 0x08, + 0xb9, 0x16, 0x6d, 0x00, 0x12, 0x65, 0x70, 0x54, 0x42, 0x07, 0x57, 0x91, + 0x91, 0x9f, 0xa9, 0x04, 0x7b, 0xce, 0xe4, 0x34, 0x95, 0x94, 0xe6, 0xa5, + 0xd7, 0xe9, 0x06, 0xc5, +}; +static const struct drbg_kat_pr_true kat3953_t = { + 7, kat3953_entropyin, kat3953_nonce, kat3953_persstr, + kat3953_entropyinpr1, kat3953_addinpr1, kat3953_entropyinpr2, + kat3953_addinpr2, kat3953_retbits +}; +static const struct drbg_kat kat3953 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3953_t +}; + +static const unsigned char kat3954_entropyin[] = { + 0x80, 0x3a, 0x93, 0x24, 0xce, 0x39, 0x97, 0xf6, 0xf4, 0x06, 0xd4, 0x1c, + 0x56, 0xde, 0xcd, 0x80, 0x8d, 0xa6, 0x67, 0x7e, 0x8e, 0x72, 0xbc, 0xed, + 0xbd, 0xf6, 0x07, 0xcb, 0xe6, 0x1f, 0x1a, 0x74, 0x90, 0x2f, 0xcd, 0x55, + 0x49, 0xd0, 0x91, 0x70, +}; +static const unsigned char kat3954_nonce[] = {0}; +static const unsigned char kat3954_persstr[] = { + 0x4a, 0x35, 0x9e, 0x85, 0x49, 0x2e, 0x9d, 0xe5, 0x02, 0x67, 0x35, 0xf4, + 0xe4, 0x25, 0xc6, 0x7c, 0x54, 0x59, 0x24, 0x50, 0x1c, 0xa1, 0x79, 0xc3, + 0x66, 0xef, 0x57, 0xfb, 0x54, 0xfe, 0xd5, 0x24, 0x6e, 0xfe, 0xd1, 0x76, + 0x8f, 0x49, 0x6c, 0xef, +}; +static const unsigned char kat3954_entropyinpr1[] = { + 0x33, 0xac, 0x9f, 0x39, 0x97, 0xd1, 0x9c, 0x7e, 0xe1, 0x26, 0xd4, 0x4a, + 0x6e, 0x12, 0x83, 0xdd, 0x6b, 0x22, 0x3d, 0x9e, 0xcf, 0xca, 0xae, 0x32, + 0x60, 0xe2, 0xf8, 0x57, 0x57, 0x89, 0x63, 0xf3, 0x52, 0xd1, 0x52, 0x5e, + 0x10, 0x94, 0xf1, 0x42, +}; +static const unsigned char kat3954_addinpr1[] = { + 0x53, 0x07, 0x34, 0x59, 0x32, 0xd8, 0xa5, 0xcd, 0x69, 0x9d, 0xeb, 0xe8, + 0x62, 0xaf, 0x9e, 0x4f, 0x87, 0xf0, 0xea, 0x14, 0xdf, 0x32, 0x5b, 0x48, + 0xc5, 0x46, 0x9a, 0x00, 0xa7, 0x9c, 0x22, 0x78, 0x8b, 0x3f, 0x0b, 0xb8, + 0xdf, 0x75, 0x30, 0x64, +}; +static const unsigned char kat3954_entropyinpr2[] = { + 0x54, 0x05, 0x60, 0x14, 0x93, 0x51, 0x22, 0xa4, 0x72, 0x30, 0xdb, 0x8c, + 0x27, 0x6f, 0x11, 0x58, 0x70, 0x7a, 0x6e, 0x97, 0x68, 0x55, 0x75, 0x85, + 0x17, 0xaa, 0xd4, 0x0c, 0x63, 0x76, 0xcd, 0xf8, 0x83, 0x48, 0xc4, 0x36, + 0x53, 0x95, 0x9a, 0x49, +}; +static const unsigned char kat3954_addinpr2[] = { + 0xce, 0xea, 0xa5, 0xeb, 0x72, 0xe9, 0xb0, 0xb9, 0x40, 0x23, 0x19, 0x64, + 0x11, 0x8c, 0x29, 0x43, 0xd3, 0xe4, 0xda, 0xc4, 0xd7, 0x2c, 0x95, 0x47, + 0x7d, 0x39, 0x86, 0x81, 0xb1, 0xe5, 0xa0, 0x0e, 0x2c, 0xaa, 0x3d, 0x92, + 0x15, 0x31, 0x07, 0x4a, +}; +static const unsigned char kat3954_retbits[] = { + 0xb6, 0x11, 0x4d, 0xa3, 0x08, 0x22, 0x4e, 0x1f, 0x9d, 0xd4, 0xec, 0x15, + 0x0b, 0xb9, 0x96, 0xc0, 0x9c, 0xa0, 0xdd, 0xcf, 0x24, 0xef, 0xe3, 0x68, + 0xbd, 0xbf, 0xe4, 0xc6, 0xb0, 0xd3, 0x3a, 0xe6, 0x6c, 0xae, 0xed, 0x7b, + 0xd7, 0x84, 0xa5, 0xda, 0xfd, 0x2b, 0x43, 0xf7, 0x7c, 0x6b, 0x1a, 0x00, + 0x88, 0xdc, 0xa6, 0xd9, 0x2a, 0xea, 0x91, 0x3f, 0xf8, 0x5b, 0x79, 0xa8, + 0x26, 0x98, 0x2e, 0x15, +}; +static const struct drbg_kat_pr_true kat3954_t = { + 8, kat3954_entropyin, kat3954_nonce, kat3954_persstr, + kat3954_entropyinpr1, kat3954_addinpr1, kat3954_entropyinpr2, + kat3954_addinpr2, kat3954_retbits +}; +static const struct drbg_kat kat3954 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3954_t +}; + +static const unsigned char kat3955_entropyin[] = { + 0x0b, 0x3c, 0x6c, 0x23, 0xfc, 0x60, 0x7d, 0xcf, 0x21, 0xf7, 0x72, 0x05, + 0xe2, 0x9c, 0x85, 0x21, 0x12, 0x53, 0x49, 0xa9, 0x45, 0xb5, 0x04, 0x0e, + 0x23, 0xf0, 0x35, 0xff, 0xaa, 0x7a, 0xec, 0x9c, 0x3f, 0x25, 0xd8, 0xca, + 0x0a, 0x53, 0xfd, 0x0c, +}; +static const unsigned char kat3955_nonce[] = {0}; +static const unsigned char kat3955_persstr[] = { + 0x9e, 0xf7, 0x68, 0x24, 0x91, 0xda, 0x1c, 0xfd, 0xe8, 0xf1, 0x07, 0x5f, + 0xc3, 0x9e, 0xe3, 0x1a, 0x5c, 0xf6, 0xcd, 0x36, 0x95, 0x9a, 0x21, 0x46, + 0x59, 0x70, 0xce, 0x8d, 0xdb, 0x6a, 0xb6, 0xd7, 0x28, 0x6c, 0x1f, 0x9d, + 0xba, 0xba, 0xca, 0x0a, +}; +static const unsigned char kat3955_entropyinpr1[] = { + 0xee, 0x9f, 0x7c, 0xf1, 0x67, 0xcd, 0xf1, 0xb0, 0xb0, 0x98, 0xc2, 0x21, + 0x1d, 0x8b, 0xaa, 0x2c, 0xfd, 0x0d, 0x4a, 0x64, 0xe3, 0xed, 0x84, 0xee, + 0x6e, 0xe1, 0x11, 0xb8, 0x4b, 0x7d, 0xda, 0x82, 0x49, 0xdf, 0x63, 0xb1, + 0xf0, 0xfb, 0xbf, 0x61, +}; +static const unsigned char kat3955_addinpr1[] = { + 0xf9, 0xbc, 0xab, 0x5f, 0x68, 0xe5, 0xb5, 0x29, 0xdb, 0x50, 0x45, 0xaf, + 0xa2, 0xf8, 0x71, 0x83, 0xbf, 0x62, 0x6f, 0x7d, 0xc4, 0xff, 0x76, 0xff, + 0x73, 0xdb, 0xea, 0xba, 0x3c, 0x32, 0xba, 0x64, 0x8e, 0x21, 0xeb, 0x4e, + 0x95, 0x4e, 0x20, 0xa6, +}; +static const unsigned char kat3955_entropyinpr2[] = { + 0xa7, 0xcd, 0x5e, 0x84, 0x08, 0x47, 0xfe, 0xff, 0xc4, 0x31, 0x8b, 0x13, + 0xfa, 0xee, 0xf9, 0x4e, 0x84, 0x25, 0x45, 0xcd, 0x5c, 0xf6, 0x91, 0x77, + 0x19, 0x03, 0xa9, 0xea, 0xfe, 0x66, 0x19, 0xe0, 0x82, 0x2d, 0x56, 0xf4, + 0x09, 0xe7, 0x4c, 0x89, +}; +static const unsigned char kat3955_addinpr2[] = { + 0xa7, 0x12, 0x63, 0x60, 0x9c, 0x6b, 0x71, 0x67, 0x47, 0x2f, 0xf4, 0xf3, + 0x89, 0x83, 0x73, 0x7e, 0xc6, 0x95, 0x0b, 0x61, 0xe6, 0x9b, 0x50, 0xf7, + 0x7c, 0x81, 0x07, 0x9a, 0xd3, 0x25, 0xd6, 0x22, 0x38, 0x23, 0x0a, 0x0a, + 0xdd, 0x47, 0xb9, 0x54, +}; +static const unsigned char kat3955_retbits[] = { + 0x6d, 0x4b, 0x7a, 0x9c, 0xef, 0xb2, 0x3c, 0x46, 0xc5, 0xca, 0x9e, 0x23, + 0x3b, 0x07, 0x20, 0xcd, 0x22, 0x4e, 0xb9, 0x0c, 0x62, 0x3e, 0x50, 0x87, + 0x68, 0xee, 0x00, 0x45, 0x2e, 0xe5, 0x3d, 0xc7, 0xfd, 0xea, 0x7e, 0x79, + 0xfd, 0x33, 0x8e, 0x2d, 0xc9, 0xd6, 0x70, 0xa0, 0x83, 0x66, 0x78, 0xce, + 0xbc, 0xcd, 0xd6, 0xf1, 0x80, 0x48, 0x13, 0x74, 0xa6, 0x50, 0xe2, 0xa7, + 0xab, 0xa4, 0x91, 0x4c, +}; +static const struct drbg_kat_pr_true kat3955_t = { + 9, kat3955_entropyin, kat3955_nonce, kat3955_persstr, + kat3955_entropyinpr1, kat3955_addinpr1, kat3955_entropyinpr2, + kat3955_addinpr2, kat3955_retbits +}; +static const struct drbg_kat kat3955 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3955_t +}; + +static const unsigned char kat3956_entropyin[] = { + 0x04, 0x69, 0x3e, 0xc3, 0xea, 0x1a, 0x8d, 0x69, 0x79, 0x48, 0x87, 0x45, + 0x62, 0x10, 0xd6, 0xe8, 0xa6, 0x34, 0x95, 0x0a, 0x91, 0xad, 0xc5, 0xe5, + 0x82, 0x2c, 0xfc, 0xcb, 0x79, 0xe8, 0xce, 0x0e, 0x09, 0x45, 0xd1, 0x2d, + 0xa4, 0xab, 0xd4, 0xd7, +}; +static const unsigned char kat3956_nonce[] = {0}; +static const unsigned char kat3956_persstr[] = { + 0x25, 0xca, 0x10, 0xf6, 0x43, 0x13, 0xb8, 0x41, 0x30, 0x25, 0x6a, 0x40, + 0x56, 0xff, 0xae, 0x7f, 0xac, 0x2b, 0x0c, 0x78, 0xfd, 0x18, 0xc3, 0x62, + 0x5f, 0x98, 0x4f, 0xb0, 0x40, 0x20, 0xe9, 0x90, 0xe7, 0xa6, 0x3c, 0x97, + 0x84, 0xf4, 0xd8, 0x1c, +}; +static const unsigned char kat3956_entropyinpr1[] = { + 0x3c, 0x78, 0xc4, 0x68, 0x5c, 0x68, 0x30, 0x3d, 0xe1, 0x60, 0xaf, 0x7a, + 0x1e, 0x8d, 0x7f, 0xf4, 0xe3, 0xd0, 0x58, 0x7c, 0xa5, 0x2a, 0x0f, 0x66, + 0xce, 0x30, 0xe7, 0x5b, 0x48, 0xd2, 0xd7, 0x7b, 0xcb, 0xfd, 0xa9, 0x84, + 0xbe, 0x51, 0xec, 0xef, +}; +static const unsigned char kat3956_addinpr1[] = { + 0x69, 0x96, 0xbe, 0xc4, 0x97, 0xee, 0x0f, 0x85, 0xdf, 0x92, 0x9a, 0xee, + 0xbd, 0xfa, 0x48, 0x67, 0x07, 0xd0, 0x45, 0xf4, 0xed, 0x9c, 0xa4, 0xc4, + 0x82, 0xbd, 0xb6, 0x5b, 0xa9, 0x8b, 0xc9, 0x34, 0x6b, 0x40, 0xb7, 0x4e, + 0x8f, 0x10, 0x0e, 0x06, +}; +static const unsigned char kat3956_entropyinpr2[] = { + 0x06, 0x90, 0x0e, 0x74, 0x3f, 0x89, 0xa6, 0x41, 0xb7, 0x5d, 0x7b, 0xad, + 0x2b, 0xfc, 0x34, 0x8b, 0xeb, 0x9e, 0x00, 0x07, 0xdc, 0xc6, 0x87, 0x68, + 0x19, 0x38, 0x00, 0x8e, 0x14, 0x8d, 0x77, 0x3a, 0x8f, 0xbc, 0x4d, 0x82, + 0x7e, 0x6a, 0x36, 0x9a, +}; +static const unsigned char kat3956_addinpr2[] = { + 0x30, 0x83, 0xe9, 0xa6, 0x1b, 0xac, 0x25, 0xfa, 0x9e, 0xd3, 0x71, 0x3f, + 0xcb, 0x0b, 0xd9, 0x26, 0x42, 0xdf, 0xb6, 0xb1, 0x7b, 0xf4, 0xbb, 0x66, + 0xb5, 0xff, 0xcb, 0xc2, 0xb5, 0x01, 0x5d, 0xc4, 0x0d, 0x5f, 0x6b, 0x0d, + 0xe9, 0x29, 0xfb, 0x54, +}; +static const unsigned char kat3956_retbits[] = { + 0xb0, 0x05, 0x9b, 0xb5, 0x67, 0xd6, 0x9d, 0x5b, 0xf9, 0x6a, 0x42, 0x89, + 0xbf, 0x93, 0xa2, 0x8d, 0x61, 0x34, 0xdc, 0x6c, 0x66, 0xd2, 0x68, 0x8f, + 0x63, 0x9b, 0x83, 0xf7, 0x49, 0x55, 0x9f, 0x26, 0xd0, 0x1e, 0xd4, 0x7f, + 0x87, 0xe7, 0x71, 0x64, 0x63, 0xda, 0x38, 0x41, 0x2d, 0x97, 0x91, 0x49, + 0xbe, 0xda, 0x53, 0x60, 0xab, 0xdd, 0x38, 0xd5, 0x31, 0xa2, 0x53, 0x74, + 0x42, 0xf5, 0x51, 0xb2, +}; +static const struct drbg_kat_pr_true kat3956_t = { + 10, kat3956_entropyin, kat3956_nonce, kat3956_persstr, + kat3956_entropyinpr1, kat3956_addinpr1, kat3956_entropyinpr2, + kat3956_addinpr2, kat3956_retbits +}; +static const struct drbg_kat kat3956 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3956_t +}; + +static const unsigned char kat3957_entropyin[] = { + 0x5a, 0x22, 0x52, 0xc0, 0x61, 0xea, 0x84, 0xce, 0x1e, 0x9a, 0x8c, 0x79, + 0xe2, 0xd5, 0x26, 0x9c, 0x39, 0x74, 0x37, 0xd1, 0xb2, 0xae, 0xa3, 0x70, + 0xcf, 0xed, 0xaf, 0x75, 0xe2, 0xbe, 0x2c, 0x34, 0x48, 0x81, 0x34, 0xae, + 0x1a, 0xa0, 0x0a, 0x3a, +}; +static const unsigned char kat3957_nonce[] = {0}; +static const unsigned char kat3957_persstr[] = { + 0xd7, 0x1f, 0xa3, 0x34, 0x50, 0xcb, 0x22, 0x7a, 0xcb, 0xea, 0x3f, 0x8f, + 0x05, 0x78, 0x60, 0x95, 0xdb, 0xf2, 0xfc, 0xb8, 0xa0, 0xae, 0x19, 0x34, + 0x25, 0x1b, 0x45, 0xde, 0x1b, 0x14, 0x06, 0x74, 0xab, 0x81, 0x7c, 0xd1, + 0x5a, 0xac, 0xc2, 0x46, +}; +static const unsigned char kat3957_entropyinpr1[] = { + 0x0a, 0x42, 0xfb, 0x59, 0x08, 0xe1, 0xb8, 0x9b, 0x73, 0xa4, 0xa3, 0x9b, + 0x53, 0x31, 0x36, 0x91, 0x78, 0x7a, 0x87, 0xe9, 0x7d, 0xf9, 0x5a, 0x15, + 0x1e, 0xe2, 0xd4, 0x11, 0x7e, 0x4e, 0xc1, 0x70, 0x1d, 0xef, 0x08, 0x4f, + 0x7e, 0xc3, 0xde, 0xf0, +}; +static const unsigned char kat3957_addinpr1[] = { + 0x0d, 0x26, 0x8b, 0xcb, 0xa2, 0x3c, 0x35, 0xd0, 0x8a, 0x37, 0x7c, 0x8f, + 0xeb, 0x24, 0x1e, 0x05, 0x04, 0x8e, 0x5e, 0x0f, 0x43, 0xe6, 0x51, 0x87, + 0x4c, 0xfb, 0xdd, 0x7c, 0xfe, 0x3a, 0x7a, 0xa1, 0xdf, 0x01, 0x21, 0x39, + 0x10, 0xc1, 0xaf, 0xb5, +}; +static const unsigned char kat3957_entropyinpr2[] = { + 0x6e, 0x38, 0xb0, 0xc6, 0x6c, 0xd1, 0x6e, 0xba, 0xdf, 0xf8, 0x8e, 0x92, + 0x1b, 0xc9, 0x3f, 0x9a, 0x1f, 0xf4, 0xb1, 0x58, 0xb5, 0x9f, 0x31, 0x5b, + 0x06, 0x0e, 0x5f, 0xb8, 0x63, 0xcd, 0x46, 0xbd, 0x8b, 0xdd, 0x81, 0x87, + 0xe5, 0xf3, 0x93, 0xf3, +}; +static const unsigned char kat3957_addinpr2[] = { + 0x57, 0xc2, 0x60, 0x17, 0x1a, 0x71, 0xfe, 0x14, 0x64, 0x69, 0xb2, 0x7d, + 0xa2, 0x42, 0xcc, 0x4f, 0x54, 0x96, 0x55, 0x8d, 0xdb, 0x38, 0x4a, 0x58, + 0xda, 0xcc, 0xda, 0x7f, 0x3f, 0xec, 0x27, 0x57, 0xb5, 0x26, 0x12, 0x62, + 0xeb, 0xa6, 0xc3, 0x62, +}; +static const unsigned char kat3957_retbits[] = { + 0xe1, 0x5e, 0x4b, 0xf8, 0x7c, 0x5e, 0xce, 0xde, 0xf4, 0x43, 0xa2, 0x7a, + 0xdd, 0xa7, 0xcd, 0x13, 0x9d, 0x53, 0x7a, 0xcd, 0x25, 0x40, 0x12, 0xe8, + 0x5d, 0xc2, 0x59, 0x54, 0x24, 0x9c, 0x6c, 0x21, 0x44, 0xe9, 0x56, 0x4f, + 0x97, 0xc1, 0x8b, 0xad, 0x83, 0xd3, 0x03, 0xdf, 0x65, 0x50, 0x01, 0xa0, + 0x43, 0x5b, 0xe0, 0xa3, 0xe1, 0x20, 0xd3, 0x08, 0xec, 0xab, 0x1d, 0xb5, + 0x9a, 0x77, 0xce, 0xd9, +}; +static const struct drbg_kat_pr_true kat3957_t = { + 11, kat3957_entropyin, kat3957_nonce, kat3957_persstr, + kat3957_entropyinpr1, kat3957_addinpr1, kat3957_entropyinpr2, + kat3957_addinpr2, kat3957_retbits +}; +static const struct drbg_kat kat3957 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3957_t +}; + +static const unsigned char kat3958_entropyin[] = { + 0x45, 0xfd, 0xd2, 0x8d, 0xd9, 0x07, 0x7d, 0xa5, 0x9b, 0x66, 0xcd, 0xfa, + 0x93, 0xb0, 0x10, 0x71, 0x16, 0x86, 0x5f, 0xba, 0x2a, 0x6d, 0x7f, 0xc5, + 0xff, 0xdb, 0x15, 0xc3, 0xe2, 0xbe, 0x67, 0xc0, 0x2c, 0xb5, 0xe3, 0x73, + 0xec, 0x82, 0xf9, 0xf9, +}; +static const unsigned char kat3958_nonce[] = {0}; +static const unsigned char kat3958_persstr[] = { + 0x30, 0xc5, 0x74, 0xe5, 0x6f, 0xcb, 0x77, 0x5d, 0x42, 0xb4, 0xf7, 0x63, + 0xd2, 0xfd, 0xe2, 0x6f, 0x1b, 0xdd, 0x3e, 0xc1, 0xa7, 0xeb, 0x02, 0x63, + 0xfa, 0x92, 0x53, 0xd4, 0xe9, 0x0d, 0x28, 0x6d, 0x63, 0x33, 0x52, 0x54, + 0xd5, 0x70, 0x96, 0xaf, +}; +static const unsigned char kat3958_entropyinpr1[] = { + 0x22, 0xd7, 0xb2, 0x5e, 0xbe, 0x03, 0x40, 0x89, 0x92, 0xed, 0x44, 0x06, + 0xd0, 0xea, 0x38, 0xe0, 0x23, 0xa1, 0xb6, 0xf8, 0x92, 0x3a, 0x3f, 0xd9, + 0x7a, 0x08, 0x5a, 0x46, 0xfd, 0x01, 0x87, 0x8a, 0xd3, 0xc0, 0x21, 0x97, + 0x7f, 0x9c, 0x1c, 0xfb, +}; +static const unsigned char kat3958_addinpr1[] = { + 0x6d, 0xb3, 0x8b, 0x45, 0x52, 0xbb, 0x09, 0x4d, 0x88, 0xae, 0x98, 0x2b, + 0xe5, 0x2c, 0x70, 0x3c, 0x82, 0x75, 0x53, 0x48, 0xb6, 0xda, 0xd5, 0x5e, + 0x55, 0x17, 0x0f, 0xc7, 0x77, 0x88, 0x50, 0x4f, 0x4c, 0x81, 0x24, 0xa3, + 0x43, 0x7f, 0xd2, 0x6f, +}; +static const unsigned char kat3958_entropyinpr2[] = { + 0x1d, 0x3d, 0x06, 0xa5, 0x33, 0xab, 0xf4, 0x4e, 0xa6, 0x6c, 0x9a, 0xac, + 0x9f, 0x35, 0xda, 0x28, 0x00, 0x5e, 0x24, 0xd0, 0x41, 0xce, 0x0b, 0x24, + 0xaa, 0xc6, 0x29, 0x1d, 0x68, 0x9a, 0x02, 0x2e, 0xb7, 0x98, 0xa3, 0xe5, + 0xdf, 0x4b, 0xac, 0xc9, +}; +static const unsigned char kat3958_addinpr2[] = { + 0x55, 0xc3, 0x33, 0x2a, 0x11, 0x9e, 0x4d, 0x27, 0x93, 0xff, 0x91, 0x71, + 0x8b, 0xbb, 0x01, 0x9b, 0x79, 0x1d, 0xf8, 0x18, 0xc2, 0xa3, 0xfe, 0xc2, + 0xee, 0x55, 0xc5, 0xd0, 0x42, 0xb4, 0x41, 0xfa, 0x0a, 0xfd, 0x23, 0x94, + 0xa1, 0x65, 0x96, 0x4b, +}; +static const unsigned char kat3958_retbits[] = { + 0x04, 0x5c, 0x58, 0xe5, 0x3c, 0xba, 0x73, 0x55, 0xea, 0xff, 0x24, 0xab, + 0xdb, 0xc0, 0x56, 0xf0, 0xaf, 0x4d, 0xb2, 0x43, 0xd1, 0xbf, 0xfb, 0xb7, + 0xe1, 0x6d, 0xfb, 0x19, 0x56, 0x20, 0xba, 0x87, 0x5e, 0x82, 0x99, 0x8a, + 0xc5, 0x92, 0xdd, 0xf0, 0x74, 0x18, 0x71, 0x91, 0xbe, 0x0a, 0x3c, 0xa3, + 0x63, 0x75, 0x80, 0x4c, 0x15, 0x3d, 0x8b, 0x7a, 0x38, 0x0f, 0x85, 0x0b, + 0x95, 0xf1, 0x07, 0x27, +}; +static const struct drbg_kat_pr_true kat3958_t = { + 12, kat3958_entropyin, kat3958_nonce, kat3958_persstr, + kat3958_entropyinpr1, kat3958_addinpr1, kat3958_entropyinpr2, + kat3958_addinpr2, kat3958_retbits +}; +static const struct drbg_kat kat3958 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3958_t +}; + +static const unsigned char kat3959_entropyin[] = { + 0xac, 0x39, 0xeb, 0x7d, 0xbb, 0xd6, 0x72, 0xcc, 0x42, 0x35, 0xc8, 0x37, + 0xe9, 0xb1, 0xe0, 0xef, 0x78, 0x36, 0x1b, 0x2e, 0x3f, 0xbe, 0x5f, 0xe4, + 0xce, 0x14, 0xd8, 0x7c, 0x82, 0x8d, 0xb0, 0xc5, 0xec, 0xf2, 0xe4, 0x38, + 0xd4, 0x5c, 0x4d, 0x4e, +}; +static const unsigned char kat3959_nonce[] = {0}; +static const unsigned char kat3959_persstr[] = { + 0xc9, 0xac, 0xeb, 0x6b, 0xd2, 0xdf, 0x45, 0xbb, 0xe6, 0xe7, 0x87, 0x14, + 0x76, 0xb2, 0xb5, 0xf5, 0xd9, 0xc2, 0xad, 0x2e, 0x2b, 0xec, 0x7e, 0x56, + 0x04, 0x47, 0xaf, 0xcc, 0x08, 0x9f, 0x48, 0xd7, 0x5e, 0x1b, 0x8b, 0x48, + 0x97, 0x27, 0xd0, 0xb9, +}; +static const unsigned char kat3959_entropyinpr1[] = { + 0x31, 0x91, 0x2f, 0x0a, 0x3d, 0x8d, 0x32, 0xad, 0x39, 0x58, 0x48, 0x0c, + 0xac, 0x71, 0x18, 0x89, 0xd6, 0xa9, 0x98, 0x89, 0x0a, 0x32, 0x7b, 0xa4, + 0xb5, 0xbb, 0xce, 0xe1, 0xf7, 0x8f, 0x00, 0x8f, 0x31, 0xb7, 0x8a, 0x57, + 0xa4, 0xd2, 0xef, 0x0e, +}; +static const unsigned char kat3959_addinpr1[] = { + 0xf6, 0x6f, 0xd8, 0x6d, 0x3f, 0x08, 0xd5, 0x38, 0x84, 0x46, 0x6c, 0x68, + 0x8b, 0xa6, 0x14, 0x89, 0x1c, 0x60, 0xbb, 0x2e, 0xed, 0x7a, 0x20, 0x8c, + 0x47, 0x6f, 0xf5, 0x52, 0x70, 0xe0, 0x97, 0x7d, 0x9b, 0xce, 0x30, 0xa3, + 0xa7, 0xe2, 0x7b, 0xea, +}; +static const unsigned char kat3959_entropyinpr2[] = { + 0x0c, 0xf7, 0xb9, 0xa2, 0xd4, 0xe2, 0x8c, 0xdd, 0x77, 0x48, 0x00, 0x0e, + 0x28, 0xe4, 0xa1, 0xa3, 0x02, 0x2c, 0x10, 0xef, 0x18, 0x6b, 0x0d, 0x83, + 0x1e, 0x2c, 0xa6, 0x92, 0x5c, 0x3f, 0x37, 0x7b, 0xc3, 0xa8, 0xf2, 0x58, + 0xf5, 0xae, 0x73, 0x1c, +}; +static const unsigned char kat3959_addinpr2[] = { + 0x4e, 0x0c, 0x20, 0xe0, 0xfb, 0xd6, 0x54, 0xaf, 0xb2, 0x29, 0x05, 0x2e, + 0xc6, 0x48, 0x44, 0xf1, 0x9a, 0x49, 0x52, 0x70, 0xa5, 0xf1, 0x57, 0x4e, + 0xcf, 0xe2, 0xf7, 0xe3, 0xad, 0xc9, 0xd6, 0x0d, 0x78, 0x7f, 0x4c, 0xef, + 0x39, 0x7d, 0x5e, 0x35, +}; +static const unsigned char kat3959_retbits[] = { + 0x00, 0x7f, 0x86, 0x1a, 0x7e, 0xa3, 0x6f, 0x37, 0x7a, 0x66, 0x2f, 0xa8, + 0x60, 0x69, 0x77, 0x3e, 0xd4, 0x3e, 0xf8, 0xe3, 0x3e, 0x39, 0x32, 0x28, + 0xe3, 0xd8, 0x85, 0x90, 0x21, 0xd2, 0x32, 0xf3, 0xa2, 0xeb, 0x44, 0x53, + 0x3c, 0x6c, 0xd8, 0x58, 0x06, 0xdf, 0x84, 0x74, 0x92, 0x34, 0x10, 0x62, + 0x84, 0x09, 0xb5, 0x4a, 0xb2, 0x03, 0xac, 0xb7, 0x13, 0xb8, 0x3c, 0x5f, + 0x94, 0x74, 0x1a, 0x66, +}; +static const struct drbg_kat_pr_true kat3959_t = { + 13, kat3959_entropyin, kat3959_nonce, kat3959_persstr, + kat3959_entropyinpr1, kat3959_addinpr1, kat3959_entropyinpr2, + kat3959_addinpr2, kat3959_retbits +}; +static const struct drbg_kat kat3959 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3959_t +}; + +static const unsigned char kat3960_entropyin[] = { + 0xcc, 0x31, 0xc3, 0x24, 0x7c, 0xd0, 0xd6, 0xb7, 0xc8, 0x43, 0x5b, 0x64, + 0x7b, 0xa5, 0x3d, 0x23, 0x77, 0xf6, 0xf2, 0x79, 0xd8, 0xc0, 0x0a, 0x29, + 0x1a, 0xb0, 0xec, 0xb3, 0x66, 0x1e, 0xa5, 0xf6, 0x9b, 0xdf, 0xab, 0x64, + 0x94, 0xa5, 0x1d, 0x3f, +}; +static const unsigned char kat3960_nonce[] = {0}; +static const unsigned char kat3960_persstr[] = { + 0x15, 0x5a, 0xff, 0x76, 0x3a, 0x68, 0x16, 0xe5, 0xf9, 0x97, 0x0d, 0xdd, + 0x5e, 0x23, 0x2a, 0xf7, 0xc4, 0xaa, 0xcb, 0x32, 0x46, 0x80, 0x18, 0x47, + 0x86, 0xc0, 0x2a, 0x96, 0xc1, 0x4f, 0x20, 0x09, 0x0c, 0x8f, 0x53, 0x5d, + 0x3c, 0x9f, 0x9d, 0xa5, +}; +static const unsigned char kat3960_entropyinpr1[] = { + 0x06, 0xc2, 0xb0, 0x7b, 0x88, 0x95, 0xe3, 0xff, 0xe9, 0x3b, 0x8f, 0x01, + 0x21, 0x92, 0xa8, 0x10, 0x05, 0x31, 0x5a, 0x04, 0x84, 0x3c, 0xab, 0x84, + 0x7d, 0xa6, 0x90, 0xad, 0x54, 0x93, 0xd2, 0xa7, 0x1b, 0xfd, 0x8f, 0xae, + 0xb5, 0x27, 0xcb, 0x0a, +}; +static const unsigned char kat3960_addinpr1[] = { + 0xb6, 0xe9, 0x9d, 0x5d, 0x8b, 0xff, 0x8c, 0xad, 0x38, 0xec, 0xcb, 0x80, + 0x37, 0xd8, 0xa1, 0x92, 0x3a, 0x47, 0xfc, 0x38, 0xc6, 0x31, 0xa8, 0xc3, + 0xbf, 0xe1, 0x71, 0xa7, 0x13, 0xc6, 0x7c, 0x91, 0xe8, 0x78, 0x7e, 0x83, + 0xab, 0xf0, 0xbc, 0x33, +}; +static const unsigned char kat3960_entropyinpr2[] = { + 0x19, 0x89, 0xbe, 0xcc, 0x20, 0xda, 0x39, 0x68, 0x2e, 0x67, 0xb9, 0x61, + 0xdc, 0x4a, 0x2f, 0x10, 0xa7, 0x3b, 0x03, 0x7b, 0x21, 0xcf, 0x05, 0x5f, + 0x1f, 0x12, 0xe8, 0xf5, 0x9f, 0x04, 0x72, 0x00, 0xda, 0xb4, 0x90, 0x7e, + 0x5e, 0x8b, 0x96, 0xaa, +}; +static const unsigned char kat3960_addinpr2[] = { + 0x20, 0x5f, 0x0f, 0x79, 0xd1, 0x40, 0xc6, 0xff, 0xef, 0x74, 0x2b, 0xf3, + 0xcd, 0xa5, 0x12, 0xa3, 0xfb, 0x84, 0xaf, 0x66, 0xd0, 0x58, 0xe5, 0xa3, + 0x47, 0x52, 0xcf, 0xd0, 0xe4, 0xcb, 0x82, 0xfe, 0x3e, 0x7f, 0xab, 0x94, + 0x89, 0xbf, 0x56, 0x33, +}; +static const unsigned char kat3960_retbits[] = { + 0xfa, 0x20, 0xe0, 0x05, 0x4f, 0x9e, 0xde, 0xf7, 0x5b, 0x34, 0xaa, 0x4e, + 0x76, 0xb1, 0x6d, 0xd6, 0xd9, 0xd5, 0x4d, 0xe5, 0xe3, 0x50, 0xc8, 0x79, + 0xe1, 0x65, 0x41, 0xcb, 0x80, 0xa4, 0xe6, 0x4c, 0x3f, 0x39, 0x2a, 0x01, + 0x08, 0xc7, 0x92, 0xec, 0x8f, 0xce, 0xc8, 0x47, 0x21, 0xcd, 0x71, 0xcc, + 0xae, 0x15, 0xde, 0x31, 0xf3, 0xef, 0xf5, 0x7e, 0x09, 0xf0, 0x24, 0x50, + 0x68, 0x57, 0xc3, 0xe9, +}; +static const struct drbg_kat_pr_true kat3960_t = { + 14, kat3960_entropyin, kat3960_nonce, kat3960_persstr, + kat3960_entropyinpr1, kat3960_addinpr1, kat3960_entropyinpr2, + kat3960_addinpr2, kat3960_retbits +}; +static const struct drbg_kat kat3960 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat3960_t +}; + +static const unsigned char kat3961_entropyin[] = { + 0xf7, 0xc2, 0xe8, 0xc3, 0xe1, 0x0d, 0x89, 0xe7, 0x71, 0x76, 0x3f, 0x24, + 0x02, 0xc5, 0xf8, 0x4b, 0xff, 0x9f, 0x1d, 0x85, 0x59, 0x56, 0xe6, 0x21, + 0x4c, 0x4a, 0x79, 0x66, 0x84, 0x7f, 0x4b, 0x5d, 0xc6, 0x9d, 0x96, 0xc4, + 0xd3, 0x16, 0x1d, 0x7a, +}; +static const unsigned char kat3961_nonce[] = {0}; +static const unsigned char kat3961_persstr[] = {0}; +static const unsigned char kat3961_entropyinpr1[] = { + 0x83, 0x2a, 0x12, 0xa2, 0xfa, 0xf8, 0x9a, 0x38, 0x05, 0x0a, 0x77, 0x51, + 0x83, 0x50, 0x34, 0xfa, 0x25, 0xc8, 0x87, 0x47, 0xe4, 0xb0, 0x8e, 0x1a, + 0x26, 0x16, 0x29, 0x1f, 0xa3, 0x64, 0xb7, 0x34, 0x4f, 0x6e, 0x27, 0x45, + 0xaf, 0xdd, 0xa5, 0xc4, +}; +static const unsigned char kat3961_addinpr1[] = {0}; +static const unsigned char kat3961_entropyinpr2[] = { + 0xde, 0xb9, 0xd8, 0xbc, 0xb4, 0x30, 0x25, 0x0c, 0xe5, 0x29, 0x6e, 0x72, + 0x77, 0x2f, 0x0c, 0x70, 0xd4, 0x88, 0xca, 0xb4, 0xfc, 0x1f, 0x84, 0x7a, + 0xac, 0x1f, 0x66, 0x9b, 0x3f, 0x47, 0x34, 0x16, 0xc9, 0x8d, 0x49, 0x7a, + 0x20, 0x89, 0xa9, 0x9a, +}; +static const unsigned char kat3961_addinpr2[] = {0}; +static const unsigned char kat3961_retbits[] = { + 0x05, 0x1d, 0x21, 0x78, 0x4e, 0xe6, 0x4e, 0x73, 0x12, 0xe2, 0xee, 0x93, + 0x04, 0x08, 0x3c, 0x41, 0x0f, 0x8a, 0x23, 0x63, 0xeb, 0x57, 0x37, 0x42, + 0x2e, 0xad, 0x9d, 0x5c, 0x51, 0x3b, 0x3b, 0xc8, 0xbd, 0x18, 0xff, 0x95, + 0xa7, 0xdf, 0xe5, 0x8d, 0xa4, 0x12, 0x22, 0xf8, 0xf4, 0xcf, 0x51, 0x76, + 0x29, 0x33, 0x9c, 0x3c, 0x12, 0x91, 0x55, 0xc4, 0x88, 0x10, 0x16, 0xcc, + 0xfc, 0x33, 0x64, 0xc3, +}; +static const struct drbg_kat_pr_true kat3961_t = { + 0, kat3961_entropyin, kat3961_nonce, kat3961_persstr, + kat3961_entropyinpr1, kat3961_addinpr1, kat3961_entropyinpr2, + kat3961_addinpr2, kat3961_retbits +}; +static const struct drbg_kat kat3961 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3961_t +}; + +static const unsigned char kat3962_entropyin[] = { + 0x05, 0x04, 0x74, 0x48, 0xdc, 0xa9, 0x84, 0x21, 0xa8, 0x23, 0x69, 0x57, + 0x5b, 0xca, 0x11, 0x60, 0x90, 0xf9, 0xb9, 0xa7, 0x01, 0x44, 0xf2, 0x4c, + 0xee, 0x0e, 0xb1, 0xd1, 0x1f, 0xb5, 0xad, 0xac, 0x44, 0xd0, 0x87, 0x0b, + 0x94, 0xeb, 0x48, 0x33, +}; +static const unsigned char kat3962_nonce[] = {0}; +static const unsigned char kat3962_persstr[] = {0}; +static const unsigned char kat3962_entropyinpr1[] = { + 0x4e, 0x33, 0x74, 0x09, 0x5d, 0x77, 0xda, 0xf1, 0x91, 0x4b, 0xc1, 0x70, + 0xd6, 0x5e, 0xfa, 0x48, 0x1e, 0xe0, 0xe5, 0x0d, 0x14, 0xb3, 0x6f, 0xfc, + 0xa0, 0x73, 0x10, 0x30, 0xc1, 0x98, 0x51, 0xec, 0x1a, 0xe6, 0x24, 0x37, + 0xab, 0x0e, 0x31, 0xb9, +}; +static const unsigned char kat3962_addinpr1[] = {0}; +static const unsigned char kat3962_entropyinpr2[] = { + 0x28, 0x5d, 0x86, 0xca, 0x15, 0x19, 0xc0, 0x11, 0xc5, 0xbb, 0x36, 0x6f, + 0x8f, 0xb4, 0x05, 0x8f, 0xb7, 0x77, 0x48, 0xdd, 0x08, 0x98, 0x2a, 0xc3, + 0x61, 0x2a, 0xe0, 0xe7, 0xec, 0x55, 0x38, 0x4d, 0x54, 0xc6, 0x1a, 0xa0, + 0xca, 0x07, 0x07, 0x6a, +}; +static const unsigned char kat3962_addinpr2[] = {0}; +static const unsigned char kat3962_retbits[] = { + 0x24, 0xd0, 0x61, 0x21, 0xc1, 0xa2, 0xeb, 0xf2, 0x5d, 0x0d, 0x56, 0xdc, + 0xf3, 0x38, 0x1e, 0x32, 0xe8, 0x46, 0x3a, 0x90, 0x69, 0x08, 0x85, 0x10, + 0x6c, 0x61, 0x6a, 0x87, 0x79, 0x8f, 0x2b, 0xb2, 0xbd, 0x35, 0x96, 0x6d, + 0x27, 0x33, 0x27, 0x96, 0x86, 0x84, 0x1a, 0x19, 0xdc, 0xc0, 0xf0, 0xea, + 0xa7, 0x3c, 0x58, 0xea, 0x27, 0x4a, 0x38, 0x13, 0xc1, 0xab, 0xd7, 0x22, + 0x98, 0xa3, 0x23, 0x58, +}; +static const struct drbg_kat_pr_true kat3962_t = { + 1, kat3962_entropyin, kat3962_nonce, kat3962_persstr, + kat3962_entropyinpr1, kat3962_addinpr1, kat3962_entropyinpr2, + kat3962_addinpr2, kat3962_retbits +}; +static const struct drbg_kat kat3962 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3962_t +}; + +static const unsigned char kat3963_entropyin[] = { + 0xfd, 0xfe, 0xdb, 0x2b, 0xf6, 0xca, 0x16, 0x74, 0x4a, 0x0e, 0x38, 0x0f, + 0x43, 0xe0, 0x9f, 0x3d, 0x26, 0x0a, 0x2c, 0x52, 0x4d, 0xa2, 0xc1, 0x68, + 0x13, 0xc7, 0x59, 0x8e, 0xb8, 0xba, 0xe0, 0x37, 0xdd, 0x50, 0xc8, 0x8d, + 0x93, 0xaf, 0x2b, 0x51, +}; +static const unsigned char kat3963_nonce[] = {0}; +static const unsigned char kat3963_persstr[] = {0}; +static const unsigned char kat3963_entropyinpr1[] = { + 0x68, 0x0c, 0x44, 0x7f, 0x6d, 0x3b, 0xab, 0x7c, 0xa4, 0xb1, 0x20, 0x98, + 0x59, 0x3e, 0xd6, 0xf3, 0x9b, 0x1f, 0x24, 0x38, 0x56, 0x16, 0x5c, 0x87, + 0xc6, 0xf4, 0x4e, 0x03, 0x97, 0x74, 0x27, 0x2f, 0x06, 0x4a, 0x12, 0x07, + 0x86, 0xff, 0x77, 0xb0, +}; +static const unsigned char kat3963_addinpr1[] = {0}; +static const unsigned char kat3963_entropyinpr2[] = { + 0x4f, 0x76, 0x64, 0xcc, 0x62, 0x79, 0x70, 0x27, 0x1e, 0x3c, 0xbe, 0x9d, + 0xd9, 0x4c, 0x63, 0x10, 0x47, 0x3e, 0x93, 0xc7, 0xa1, 0x0c, 0xa9, 0x2f, + 0x34, 0xe3, 0xf5, 0xfd, 0x69, 0x09, 0xe7, 0xd1, 0x0c, 0xf5, 0x51, 0xeb, + 0x18, 0x0a, 0xe4, 0xcc, +}; +static const unsigned char kat3963_addinpr2[] = {0}; +static const unsigned char kat3963_retbits[] = { + 0x59, 0xe0, 0x56, 0xd6, 0xe0, 0xdd, 0xaa, 0xf5, 0xcf, 0x83, 0xc6, 0x33, + 0x98, 0xe1, 0x44, 0xd1, 0x7d, 0xbe, 0x45, 0x59, 0x46, 0x72, 0x23, 0x3a, + 0x1c, 0x16, 0x11, 0xf0, 0x3d, 0x54, 0xfc, 0x1b, 0x63, 0x61, 0x14, 0x41, + 0x3d, 0x61, 0xe1, 0x50, 0x89, 0x80, 0x98, 0x9e, 0x73, 0x9a, 0x5b, 0x6d, + 0x0f, 0xbc, 0x8f, 0x66, 0x77, 0x64, 0x5f, 0xb6, 0xb2, 0x0c, 0x46, 0xa7, + 0xfe, 0xd8, 0xca, 0x9a, +}; +static const struct drbg_kat_pr_true kat3963_t = { + 2, kat3963_entropyin, kat3963_nonce, kat3963_persstr, + kat3963_entropyinpr1, kat3963_addinpr1, kat3963_entropyinpr2, + kat3963_addinpr2, kat3963_retbits +}; +static const struct drbg_kat kat3963 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3963_t +}; + +static const unsigned char kat3964_entropyin[] = { + 0x7e, 0x48, 0x91, 0x0c, 0xf6, 0xaa, 0xcc, 0x1e, 0x27, 0x22, 0xa3, 0x0b, + 0x05, 0x11, 0x19, 0x45, 0xd2, 0x54, 0xec, 0x02, 0x94, 0x39, 0xa7, 0xfe, + 0xd4, 0xd4, 0x80, 0x2e, 0x1d, 0x5b, 0x80, 0x99, 0x2e, 0xd7, 0x77, 0x93, + 0x99, 0x42, 0xeb, 0x39, +}; +static const unsigned char kat3964_nonce[] = {0}; +static const unsigned char kat3964_persstr[] = {0}; +static const unsigned char kat3964_entropyinpr1[] = { + 0x69, 0x3f, 0xd9, 0xed, 0x85, 0xe7, 0x8a, 0x76, 0xb5, 0xb5, 0xd5, 0xf4, + 0xa6, 0xfe, 0xbb, 0x9c, 0x36, 0xcb, 0xe1, 0xb9, 0x73, 0xb5, 0xfc, 0x16, + 0x74, 0xd5, 0x43, 0xac, 0x3f, 0x18, 0x2b, 0x8a, 0xf1, 0x7e, 0xf3, 0xac, + 0x50, 0xe6, 0x1b, 0x26, +}; +static const unsigned char kat3964_addinpr1[] = {0}; +static const unsigned char kat3964_entropyinpr2[] = { + 0xae, 0xf7, 0xe1, 0x76, 0xc7, 0xf5, 0xea, 0xb4, 0x34, 0xbf, 0x46, 0x1d, + 0x08, 0x20, 0x4f, 0x03, 0xee, 0xd3, 0x95, 0xdd, 0xe9, 0xba, 0xec, 0x6a, + 0xa1, 0x06, 0xb0, 0x3e, 0xd9, 0xa5, 0x70, 0x50, 0x43, 0x85, 0x60, 0x52, + 0xf3, 0x37, 0x3e, 0x22, +}; +static const unsigned char kat3964_addinpr2[] = {0}; +static const unsigned char kat3964_retbits[] = { + 0xb0, 0xcb, 0x41, 0x35, 0x3a, 0xdb, 0xfa, 0x34, 0x6f, 0xf5, 0x7b, 0x22, + 0xf6, 0xab, 0x30, 0xbf, 0x94, 0xce, 0x79, 0xf5, 0x3b, 0x00, 0x19, 0x0c, + 0x57, 0x9d, 0x5f, 0xfe, 0x6f, 0xcf, 0x6b, 0x0d, 0x0c, 0x35, 0xf3, 0xf6, + 0xbc, 0xa1, 0x5a, 0xc7, 0xa5, 0xb5, 0x30, 0x02, 0x34, 0xbd, 0xda, 0x01, + 0x8e, 0x03, 0xa4, 0x53, 0x4e, 0x0c, 0xfd, 0x89, 0x5e, 0x57, 0xc6, 0xbc, + 0x97, 0xb1, 0xdf, 0xc7, +}; +static const struct drbg_kat_pr_true kat3964_t = { + 3, kat3964_entropyin, kat3964_nonce, kat3964_persstr, + kat3964_entropyinpr1, kat3964_addinpr1, kat3964_entropyinpr2, + kat3964_addinpr2, kat3964_retbits +}; +static const struct drbg_kat kat3964 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3964_t +}; + +static const unsigned char kat3965_entropyin[] = { + 0xae, 0x05, 0x46, 0x14, 0xeb, 0xbf, 0x3e, 0xa5, 0x7a, 0x2a, 0xf7, 0xb3, + 0x94, 0x68, 0x0b, 0x86, 0xe9, 0xf3, 0x0e, 0xeb, 0x74, 0x4d, 0xc8, 0x1a, + 0x71, 0xa6, 0x59, 0xae, 0x81, 0xe9, 0x71, 0xb8, 0x91, 0x70, 0x49, 0x82, + 0xc7, 0x03, 0x3b, 0x48, +}; +static const unsigned char kat3965_nonce[] = {0}; +static const unsigned char kat3965_persstr[] = {0}; +static const unsigned char kat3965_entropyinpr1[] = { + 0x7f, 0x0e, 0xbb, 0x7e, 0x35, 0xb6, 0x63, 0xe1, 0x55, 0xa0, 0x9c, 0xa1, + 0x37, 0x09, 0x74, 0x1c, 0x35, 0x4f, 0xaf, 0xe3, 0x61, 0xd1, 0x19, 0xba, + 0x4c, 0xc9, 0xd3, 0x10, 0x9e, 0x14, 0x88, 0xbc, 0x4d, 0xb8, 0x26, 0x28, + 0x60, 0xe7, 0x81, 0x55, +}; +static const unsigned char kat3965_addinpr1[] = {0}; +static const unsigned char kat3965_entropyinpr2[] = { + 0x5b, 0xd8, 0x99, 0x39, 0x5c, 0x99, 0xff, 0xf6, 0xd8, 0x6c, 0x8e, 0x25, + 0x4a, 0x07, 0xa0, 0x43, 0x0d, 0x0e, 0xaa, 0xf4, 0xc9, 0x6c, 0xc9, 0x06, + 0x0e, 0x87, 0x33, 0xe2, 0x7e, 0xa5, 0x47, 0x2c, 0xb6, 0x4e, 0xb2, 0x49, + 0x92, 0xf3, 0x5d, 0xef, +}; +static const unsigned char kat3965_addinpr2[] = {0}; +static const unsigned char kat3965_retbits[] = { + 0xec, 0x83, 0x9c, 0xfc, 0xe9, 0xfc, 0x17, 0x7b, 0xa4, 0x9e, 0x2a, 0xc8, + 0xb3, 0x5f, 0x4c, 0x52, 0xc6, 0xac, 0xd7, 0x09, 0x12, 0x98, 0x13, 0x28, + 0x01, 0xb1, 0x33, 0xf1, 0x3b, 0x05, 0x22, 0x9c, 0x71, 0xf0, 0x25, 0x87, + 0x7e, 0xb1, 0xcd, 0x90, 0x1b, 0x65, 0xec, 0xd7, 0xc5, 0x0f, 0xe7, 0x38, + 0x27, 0xf2, 0x71, 0x76, 0x9c, 0x26, 0x32, 0x12, 0x31, 0x55, 0x24, 0x43, + 0x58, 0x58, 0x02, 0x8e, +}; +static const struct drbg_kat_pr_true kat3965_t = { + 4, kat3965_entropyin, kat3965_nonce, kat3965_persstr, + kat3965_entropyinpr1, kat3965_addinpr1, kat3965_entropyinpr2, + kat3965_addinpr2, kat3965_retbits +}; +static const struct drbg_kat kat3965 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3965_t +}; + +static const unsigned char kat3966_entropyin[] = { + 0xcb, 0xd7, 0x69, 0xaa, 0xb0, 0x20, 0x0c, 0xc4, 0xa9, 0x0b, 0xe6, 0x2d, + 0x67, 0x69, 0x3e, 0x46, 0x82, 0x91, 0x2f, 0x6a, 0xad, 0x5a, 0x22, 0x31, + 0x01, 0xaf, 0x22, 0x70, 0x5c, 0x03, 0xc1, 0x63, 0x60, 0x9b, 0xdc, 0xb4, + 0x8f, 0x47, 0xbb, 0x9f, +}; +static const unsigned char kat3966_nonce[] = {0}; +static const unsigned char kat3966_persstr[] = {0}; +static const unsigned char kat3966_entropyinpr1[] = { + 0x26, 0xe6, 0x81, 0x81, 0x77, 0xe1, 0xc3, 0x28, 0x85, 0xa4, 0x2b, 0x45, + 0xab, 0x65, 0xfd, 0x33, 0x6e, 0x6e, 0x0c, 0xb4, 0x78, 0xcb, 0xc5, 0xea, + 0x52, 0xd1, 0xbf, 0xf0, 0x36, 0x71, 0x62, 0xd1, 0x29, 0xf6, 0xa3, 0xb1, + 0x40, 0xd9, 0xff, 0xf5, +}; +static const unsigned char kat3966_addinpr1[] = {0}; +static const unsigned char kat3966_entropyinpr2[] = { + 0x47, 0xe2, 0x70, 0xa8, 0x86, 0xe3, 0x11, 0x7a, 0xab, 0x48, 0xe9, 0xb2, + 0x97, 0x7f, 0xc6, 0x56, 0x7d, 0xdd, 0x22, 0x7c, 0xa0, 0xef, 0x59, 0xac, + 0xd9, 0xc4, 0x79, 0x25, 0xdd, 0xe5, 0xcc, 0x44, 0x62, 0x92, 0x74, 0x12, + 0x2f, 0x6f, 0x76, 0x2b, +}; +static const unsigned char kat3966_addinpr2[] = {0}; +static const unsigned char kat3966_retbits[] = { + 0x83, 0x86, 0x35, 0x45, 0x44, 0xfa, 0xa5, 0x01, 0x13, 0xeb, 0xd4, 0x24, + 0x56, 0x81, 0xbc, 0x12, 0xd0, 0x03, 0x12, 0x79, 0x46, 0x96, 0xde, 0x7c, + 0x9a, 0x5c, 0xa4, 0x3c, 0x9b, 0x96, 0x94, 0x7b, 0x1c, 0xaa, 0x1e, 0xe0, + 0x38, 0x45, 0x6b, 0x0d, 0xf4, 0xf7, 0x14, 0x37, 0xae, 0x66, 0xe9, 0x84, + 0x92, 0xca, 0x49, 0xfb, 0x8e, 0x0b, 0xef, 0xb4, 0x7e, 0x11, 0xb0, 0x46, + 0x01, 0x68, 0x86, 0xed, +}; +static const struct drbg_kat_pr_true kat3966_t = { + 5, kat3966_entropyin, kat3966_nonce, kat3966_persstr, + kat3966_entropyinpr1, kat3966_addinpr1, kat3966_entropyinpr2, + kat3966_addinpr2, kat3966_retbits +}; +static const struct drbg_kat kat3966 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3966_t +}; + +static const unsigned char kat3967_entropyin[] = { + 0xcb, 0xc8, 0x24, 0x7b, 0x4f, 0x4c, 0xb3, 0x10, 0x0d, 0x6a, 0xf8, 0xdd, + 0x94, 0x03, 0x00, 0x0f, 0xe0, 0xda, 0x4e, 0x0f, 0x9c, 0xb2, 0x76, 0x53, + 0x00, 0xa0, 0x8e, 0x09, 0x61, 0xe0, 0x44, 0xae, 0x1a, 0xf2, 0xb1, 0x74, + 0x9a, 0xbf, 0x3e, 0xcf, +}; +static const unsigned char kat3967_nonce[] = {0}; +static const unsigned char kat3967_persstr[] = {0}; +static const unsigned char kat3967_entropyinpr1[] = { + 0x30, 0x74, 0xb9, 0xa5, 0x5a, 0xe8, 0xea, 0x7d, 0xd0, 0xf2, 0x65, 0x82, + 0xf1, 0xe4, 0x46, 0x66, 0xed, 0xbb, 0x72, 0xcd, 0xa0, 0x68, 0xbc, 0x99, + 0xc4, 0x78, 0x92, 0x14, 0x1e, 0xf5, 0x50, 0x9d, 0xcd, 0x72, 0xd5, 0x1a, + 0x3b, 0x39, 0x4a, 0x63, +}; +static const unsigned char kat3967_addinpr1[] = {0}; +static const unsigned char kat3967_entropyinpr2[] = { + 0x71, 0x0a, 0x18, 0x0c, 0x48, 0x4b, 0x8e, 0x9f, 0x8f, 0xa1, 0xb0, 0x6c, + 0x04, 0xef, 0xd0, 0x92, 0x75, 0x69, 0xe3, 0x47, 0x39, 0xc8, 0xca, 0x30, + 0xeb, 0xe1, 0x0f, 0xc4, 0x4b, 0x2e, 0xd9, 0x84, 0xf2, 0x93, 0x3e, 0x71, + 0x24, 0xc2, 0x1f, 0xe9, +}; +static const unsigned char kat3967_addinpr2[] = {0}; +static const unsigned char kat3967_retbits[] = { + 0x66, 0x5a, 0x66, 0x4e, 0xb1, 0x47, 0x7b, 0x25, 0x27, 0x32, 0xb2, 0x69, + 0x25, 0xb0, 0x92, 0xb2, 0x9a, 0x14, 0xcc, 0xb0, 0xe6, 0x49, 0x79, 0x5d, + 0xba, 0x0d, 0x8f, 0xef, 0x17, 0x7b, 0x87, 0xed, 0xed, 0x48, 0xdc, 0x99, + 0xa7, 0x87, 0x0d, 0xc6, 0x5b, 0x5b, 0x5d, 0x47, 0xb8, 0x78, 0x5a, 0xbe, + 0x6a, 0x08, 0x5e, 0x3e, 0xe4, 0xb4, 0x89, 0x2f, 0xc6, 0x34, 0xc5, 0x89, + 0x38, 0xf7, 0x75, 0xea, +}; +static const struct drbg_kat_pr_true kat3967_t = { + 6, kat3967_entropyin, kat3967_nonce, kat3967_persstr, + kat3967_entropyinpr1, kat3967_addinpr1, kat3967_entropyinpr2, + kat3967_addinpr2, kat3967_retbits +}; +static const struct drbg_kat kat3967 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3967_t +}; + +static const unsigned char kat3968_entropyin[] = { + 0xd9, 0xbb, 0xe8, 0x22, 0x87, 0x8a, 0x71, 0x9c, 0x41, 0x5b, 0xb6, 0x39, + 0xc5, 0xb6, 0x76, 0xa2, 0xf3, 0x74, 0xab, 0xe2, 0x4e, 0x9d, 0x6e, 0x68, + 0xd5, 0xd2, 0x67, 0xeb, 0xe3, 0x5b, 0x86, 0xc2, 0xcf, 0x6f, 0x30, 0x1a, + 0x1a, 0x7b, 0xe0, 0xa0, +}; +static const unsigned char kat3968_nonce[] = {0}; +static const unsigned char kat3968_persstr[] = {0}; +static const unsigned char kat3968_entropyinpr1[] = { + 0xba, 0x95, 0xe1, 0x62, 0x78, 0x07, 0x89, 0x67, 0x6a, 0x7c, 0x2b, 0x37, + 0x86, 0x5b, 0xe5, 0x31, 0xed, 0xfd, 0x8f, 0x22, 0x07, 0xf8, 0x7f, 0x72, + 0xa3, 0x1a, 0xbb, 0x1f, 0xe8, 0x18, 0x17, 0x01, 0x43, 0xbf, 0xd9, 0xee, + 0x0f, 0xea, 0x29, 0x24, +}; +static const unsigned char kat3968_addinpr1[] = {0}; +static const unsigned char kat3968_entropyinpr2[] = { + 0xb3, 0x2a, 0x0e, 0xf7, 0x97, 0x18, 0x46, 0x0e, 0x8e, 0x3e, 0x6c, 0xa3, + 0xae, 0x24, 0x1c, 0x02, 0x2e, 0x89, 0x39, 0xa7, 0xdd, 0xb1, 0x1b, 0xa3, + 0x88, 0x05, 0x7d, 0x32, 0xad, 0xa1, 0x04, 0xcb, 0x72, 0x5d, 0xa5, 0x43, + 0x24, 0xd9, 0x82, 0xda, +}; +static const unsigned char kat3968_addinpr2[] = {0}; +static const unsigned char kat3968_retbits[] = { + 0xdc, 0xa0, 0xc2, 0xc2, 0x76, 0x46, 0xaf, 0xa2, 0xeb, 0x6e, 0x68, 0xce, + 0x14, 0xae, 0x0b, 0x23, 0x83, 0x73, 0x5e, 0x72, 0x85, 0x13, 0xe9, 0x4c, + 0x03, 0xfb, 0x2f, 0xfc, 0xd8, 0xe3, 0xc4, 0xeb, 0xc7, 0x5b, 0x58, 0xb5, + 0x4a, 0x35, 0x4b, 0x0b, 0x38, 0xb8, 0x4e, 0x35, 0x2a, 0x16, 0x53, 0x56, + 0x18, 0x7c, 0x44, 0x73, 0xd3, 0xd2, 0xfa, 0xa4, 0x60, 0x07, 0x2f, 0x06, + 0xec, 0x1e, 0x47, 0xdd, +}; +static const struct drbg_kat_pr_true kat3968_t = { + 7, kat3968_entropyin, kat3968_nonce, kat3968_persstr, + kat3968_entropyinpr1, kat3968_addinpr1, kat3968_entropyinpr2, + kat3968_addinpr2, kat3968_retbits +}; +static const struct drbg_kat kat3968 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3968_t +}; + +static const unsigned char kat3969_entropyin[] = { + 0xf4, 0xbf, 0xd2, 0x1d, 0x23, 0x83, 0xad, 0x6d, 0x0b, 0xe2, 0x04, 0x63, + 0x3b, 0x5e, 0x91, 0x60, 0xa5, 0xc9, 0x97, 0x4b, 0xd2, 0xc8, 0x9b, 0x2d, + 0x1e, 0x52, 0x5b, 0x42, 0xe6, 0xb6, 0x8f, 0x10, 0x2e, 0x0d, 0xea, 0x49, + 0x1c, 0xff, 0xb1, 0x41, +}; +static const unsigned char kat3969_nonce[] = {0}; +static const unsigned char kat3969_persstr[] = {0}; +static const unsigned char kat3969_entropyinpr1[] = { + 0x6b, 0x9b, 0x57, 0xe0, 0xf8, 0xa2, 0xdb, 0x3b, 0xe4, 0xf5, 0x4d, 0x48, + 0x6c, 0x57, 0x06, 0x24, 0xcd, 0xf0, 0x2b, 0xc4, 0xec, 0x25, 0x83, 0x5c, + 0x90, 0xe9, 0xd0, 0xff, 0xc7, 0xa1, 0x18, 0xba, 0x02, 0x5c, 0xd2, 0x89, + 0x6a, 0xaa, 0x2e, 0x34, +}; +static const unsigned char kat3969_addinpr1[] = {0}; +static const unsigned char kat3969_entropyinpr2[] = { + 0xde, 0xf2, 0x78, 0x10, 0x9f, 0xba, 0x66, 0x53, 0x65, 0x52, 0x93, 0x6d, + 0xae, 0x8e, 0x55, 0xfd, 0xf0, 0x81, 0xfb, 0xe8, 0xd2, 0x7f, 0x99, 0x79, + 0x07, 0x40, 0x4f, 0x5e, 0x0e, 0xa5, 0x04, 0x6c, 0x04, 0x19, 0xd3, 0x6e, + 0x70, 0x65, 0xba, 0x54, +}; +static const unsigned char kat3969_addinpr2[] = {0}; +static const unsigned char kat3969_retbits[] = { + 0x8f, 0x5e, 0x0e, 0xb4, 0x74, 0x28, 0x15, 0x41, 0x26, 0x19, 0xfb, 0x02, + 0x58, 0xd6, 0x65, 0xd1, 0x0c, 0x14, 0xf3, 0x6d, 0x15, 0x16, 0x0f, 0x74, + 0x3e, 0x7c, 0x5f, 0xac, 0x5b, 0x39, 0x21, 0x0c, 0xa4, 0x2a, 0x87, 0xcc, + 0xc7, 0x04, 0x9e, 0x47, 0x70, 0xd8, 0x41, 0x8b, 0x36, 0xcc, 0x7e, 0xb5, + 0x66, 0x82, 0xa3, 0x17, 0x69, 0x0b, 0xdc, 0x93, 0x1f, 0x51, 0x9a, 0x50, + 0x15, 0x33, 0x24, 0x37, +}; +static const struct drbg_kat_pr_true kat3969_t = { + 8, kat3969_entropyin, kat3969_nonce, kat3969_persstr, + kat3969_entropyinpr1, kat3969_addinpr1, kat3969_entropyinpr2, + kat3969_addinpr2, kat3969_retbits +}; +static const struct drbg_kat kat3969 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3969_t +}; + +static const unsigned char kat3970_entropyin[] = { + 0x6b, 0x4f, 0x09, 0x09, 0x83, 0xf2, 0x80, 0x22, 0x79, 0x49, 0xd4, 0x2f, + 0xb6, 0xc1, 0x0f, 0x3e, 0xb4, 0xee, 0xf3, 0x49, 0xe6, 0x5e, 0x35, 0x42, + 0xcd, 0x6b, 0x60, 0x4a, 0x7b, 0x8d, 0xe1, 0x6d, 0x88, 0xdc, 0x0c, 0x2a, + 0x66, 0xfe, 0xad, 0xde, +}; +static const unsigned char kat3970_nonce[] = {0}; +static const unsigned char kat3970_persstr[] = {0}; +static const unsigned char kat3970_entropyinpr1[] = { + 0x6f, 0xeb, 0xe6, 0xc3, 0x4b, 0x50, 0xaf, 0xa6, 0x4d, 0x02, 0xc0, 0x3e, + 0x19, 0xb1, 0xba, 0x2c, 0x1b, 0x4e, 0xa2, 0x5f, 0x50, 0x9a, 0x0c, 0xe3, + 0x9f, 0x9f, 0xc2, 0x92, 0x9f, 0x22, 0x27, 0x97, 0x14, 0x1a, 0xbf, 0x1b, + 0xb7, 0x3e, 0x20, 0x8b, +}; +static const unsigned char kat3970_addinpr1[] = {0}; +static const unsigned char kat3970_entropyinpr2[] = { + 0x8f, 0x05, 0x6d, 0x5d, 0x1b, 0x18, 0xad, 0x58, 0xb4, 0x08, 0x51, 0x73, + 0x15, 0xff, 0x71, 0x7b, 0xd8, 0xe3, 0x39, 0xbc, 0x07, 0x85, 0x65, 0x03, + 0x9e, 0x58, 0x0d, 0x75, 0xc7, 0x5a, 0x94, 0x1c, 0x45, 0xdb, 0x4d, 0x51, + 0x7d, 0x44, 0xa9, 0x70, +}; +static const unsigned char kat3970_addinpr2[] = {0}; +static const unsigned char kat3970_retbits[] = { + 0x2d, 0x92, 0xbd, 0xdd, 0xb6, 0x28, 0x64, 0x46, 0xe3, 0x0b, 0xe3, 0xfb, + 0xd8, 0xd6, 0xff, 0x01, 0x86, 0x7c, 0x79, 0x19, 0x42, 0x96, 0x0e, 0x5a, + 0xf0, 0xac, 0x18, 0x75, 0xb2, 0xcd, 0xab, 0xc9, 0x4b, 0xe0, 0xba, 0x0c, + 0x22, 0x9e, 0xdd, 0xb2, 0x61, 0xc2, 0xa7, 0xba, 0xe7, 0x07, 0xe7, 0x5f, + 0xa1, 0x82, 0x9f, 0x18, 0x06, 0xcf, 0xd9, 0x50, 0x45, 0xb9, 0x5c, 0x88, + 0xd8, 0x9e, 0x2a, 0x02, +}; +static const struct drbg_kat_pr_true kat3970_t = { + 9, kat3970_entropyin, kat3970_nonce, kat3970_persstr, + kat3970_entropyinpr1, kat3970_addinpr1, kat3970_entropyinpr2, + kat3970_addinpr2, kat3970_retbits +}; +static const struct drbg_kat kat3970 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3970_t +}; + +static const unsigned char kat3971_entropyin[] = { + 0x89, 0xf5, 0xc7, 0xcf, 0xe6, 0xd5, 0xb1, 0xc3, 0xd8, 0xe8, 0x1e, 0xe2, + 0x9b, 0xe1, 0xcc, 0x6e, 0x24, 0x57, 0xe5, 0xa1, 0xb1, 0x73, 0xf9, 0xe0, + 0xf8, 0x17, 0xb4, 0xcc, 0xd7, 0x53, 0xc0, 0xee, 0xc9, 0x18, 0x7d, 0x0b, + 0x9c, 0xd4, 0x32, 0xdb, +}; +static const unsigned char kat3971_nonce[] = {0}; +static const unsigned char kat3971_persstr[] = {0}; +static const unsigned char kat3971_entropyinpr1[] = { + 0x28, 0x40, 0xdc, 0xc3, 0x26, 0x76, 0xa8, 0x79, 0xd5, 0xb4, 0x9c, 0x9a, + 0x80, 0x44, 0x25, 0x6f, 0xb5, 0xca, 0x0a, 0x38, 0xbb, 0xa3, 0x3e, 0xad, + 0x67, 0x2e, 0xb8, 0x4c, 0x3d, 0x4a, 0xfa, 0xc1, 0xa6, 0x5f, 0x62, 0xfc, + 0xb4, 0x4b, 0x61, 0x1f, +}; +static const unsigned char kat3971_addinpr1[] = {0}; +static const unsigned char kat3971_entropyinpr2[] = { + 0x32, 0x38, 0x9e, 0x1a, 0xda, 0x55, 0x2a, 0x38, 0xff, 0x9c, 0x89, 0xe4, + 0xfa, 0x8e, 0x35, 0x4b, 0xc4, 0x28, 0xe7, 0x76, 0xae, 0x96, 0x05, 0x4e, + 0xb0, 0x9e, 0x1f, 0x5a, 0xc7, 0xc2, 0x5f, 0x80, 0xbf, 0x10, 0x27, 0xb3, + 0xea, 0xf5, 0xd0, 0x91, +}; +static const unsigned char kat3971_addinpr2[] = {0}; +static const unsigned char kat3971_retbits[] = { + 0x9f, 0xe4, 0x10, 0xce, 0xfe, 0x2a, 0x32, 0x9d, 0x37, 0x9a, 0xe6, 0xe7, + 0xa6, 0xd5, 0xe0, 0x68, 0x05, 0x3b, 0x97, 0x92, 0x56, 0xe9, 0x48, 0x7f, + 0x01, 0x60, 0xfc, 0xeb, 0x22, 0xe3, 0x57, 0x0e, 0xff, 0x97, 0x7c, 0x2a, + 0x32, 0xbd, 0xa4, 0x14, 0x88, 0xd0, 0x75, 0xf5, 0xf7, 0x4c, 0x6b, 0xfe, + 0xf8, 0x07, 0xbc, 0x4f, 0x7b, 0xce, 0xb8, 0xdd, 0xcc, 0x07, 0x2e, 0xd4, + 0xf1, 0x9a, 0x28, 0x01, +}; +static const struct drbg_kat_pr_true kat3971_t = { + 10, kat3971_entropyin, kat3971_nonce, kat3971_persstr, + kat3971_entropyinpr1, kat3971_addinpr1, kat3971_entropyinpr2, + kat3971_addinpr2, kat3971_retbits +}; +static const struct drbg_kat kat3971 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3971_t +}; + +static const unsigned char kat3972_entropyin[] = { + 0xad, 0x2f, 0x0c, 0x1d, 0x45, 0x91, 0x83, 0x5d, 0xa1, 0x68, 0x8f, 0x3a, + 0x03, 0xf5, 0x83, 0x4b, 0xaa, 0xe5, 0xba, 0xb8, 0xac, 0x5c, 0xfd, 0x7d, + 0xcd, 0xc9, 0x63, 0xa0, 0x88, 0x65, 0x84, 0x42, 0x93, 0x3b, 0x87, 0xe5, + 0x8a, 0xfb, 0x10, 0xdb, +}; +static const unsigned char kat3972_nonce[] = {0}; +static const unsigned char kat3972_persstr[] = {0}; +static const unsigned char kat3972_entropyinpr1[] = { + 0x27, 0x68, 0xe5, 0x65, 0x8a, 0x39, 0xc8, 0x77, 0x07, 0xff, 0x47, 0xe2, + 0xc0, 0x69, 0xe5, 0x4b, 0x05, 0x90, 0x88, 0xe9, 0xe7, 0x7b, 0x79, 0xcf, + 0x67, 0xad, 0xe0, 0x96, 0x95, 0x38, 0xc4, 0x2a, 0xc6, 0x36, 0x35, 0x1e, + 0xd9, 0x78, 0x82, 0xa1, +}; +static const unsigned char kat3972_addinpr1[] = {0}; +static const unsigned char kat3972_entropyinpr2[] = { + 0x7d, 0x88, 0x2b, 0xf8, 0x9a, 0xf1, 0x75, 0xe3, 0x05, 0xdd, 0x28, 0x01, + 0xf5, 0x30, 0xfe, 0xc6, 0xda, 0x80, 0x2d, 0x1c, 0x4e, 0xf5, 0xf7, 0x04, + 0xbd, 0x17, 0x23, 0x5a, 0x0d, 0xe5, 0xba, 0x33, 0x91, 0x35, 0x49, 0x68, + 0xb7, 0x42, 0x00, 0x02, +}; +static const unsigned char kat3972_addinpr2[] = {0}; +static const unsigned char kat3972_retbits[] = { + 0x88, 0x30, 0xf1, 0xe8, 0x1e, 0x74, 0xde, 0xde, 0x5b, 0x7a, 0xaa, 0x91, + 0x06, 0x44, 0x58, 0x57, 0x2a, 0xbe, 0xfc, 0xf9, 0x3e, 0xc3, 0xa4, 0xf3, + 0xef, 0xc4, 0xa6, 0xe1, 0x99, 0x25, 0x3a, 0xa7, 0x2c, 0x7c, 0x71, 0xb6, + 0x1b, 0x73, 0xf3, 0x63, 0x85, 0x12, 0x3a, 0x1a, 0xd7, 0x6f, 0xfd, 0xc7, + 0xd0, 0x05, 0x38, 0xbd, 0x2c, 0x42, 0x94, 0xa3, 0x49, 0x1a, 0x1f, 0xb7, + 0x67, 0x8c, 0xf0, 0x5e, +}; +static const struct drbg_kat_pr_true kat3972_t = { + 11, kat3972_entropyin, kat3972_nonce, kat3972_persstr, + kat3972_entropyinpr1, kat3972_addinpr1, kat3972_entropyinpr2, + kat3972_addinpr2, kat3972_retbits +}; +static const struct drbg_kat kat3972 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3972_t +}; + +static const unsigned char kat3973_entropyin[] = { + 0x31, 0x81, 0x94, 0xf9, 0xe8, 0x8c, 0xb9, 0x50, 0x92, 0xf7, 0x33, 0xa2, + 0x0e, 0x41, 0x24, 0xd6, 0x0a, 0x0f, 0xab, 0x1e, 0x57, 0xc9, 0x82, 0x8b, + 0xe1, 0xbe, 0xb7, 0xbe, 0x91, 0x36, 0x27, 0x11, 0xfd, 0x15, 0x6b, 0x8d, + 0xfa, 0x14, 0xe2, 0x6d, +}; +static const unsigned char kat3973_nonce[] = {0}; +static const unsigned char kat3973_persstr[] = {0}; +static const unsigned char kat3973_entropyinpr1[] = { + 0xd8, 0x86, 0x16, 0x4a, 0xc0, 0xd4, 0x56, 0x64, 0x29, 0xe2, 0x79, 0x6f, + 0x3b, 0xce, 0xb1, 0xc4, 0xce, 0x5e, 0x23, 0xe0, 0x41, 0x72, 0xfd, 0x7c, + 0xce, 0x41, 0xf4, 0x69, 0x95, 0xbb, 0x3a, 0x22, 0x79, 0x04, 0x94, 0x39, + 0xb7, 0x23, 0xa1, 0xd6, +}; +static const unsigned char kat3973_addinpr1[] = {0}; +static const unsigned char kat3973_entropyinpr2[] = { + 0xa0, 0x10, 0x76, 0xb5, 0xb7, 0xe9, 0x06, 0x3c, 0x0f, 0x35, 0x1e, 0x3d, + 0xc9, 0x9c, 0x40, 0x00, 0xd2, 0x3a, 0x48, 0xa9, 0x74, 0x67, 0xdd, 0x23, + 0xdb, 0x4f, 0x62, 0x7c, 0x8d, 0xf5, 0x0e, 0x83, 0xc3, 0x68, 0xb8, 0xd8, + 0x7b, 0xf1, 0x62, 0x2e, +}; +static const unsigned char kat3973_addinpr2[] = {0}; +static const unsigned char kat3973_retbits[] = { + 0x8b, 0x51, 0x31, 0x89, 0x93, 0x61, 0x11, 0x04, 0xb2, 0x70, 0xff, 0xf6, + 0x3a, 0x2c, 0xb3, 0x26, 0xcf, 0x44, 0x06, 0x3d, 0xa4, 0x97, 0xf5, 0x8e, + 0xfe, 0xb8, 0xa8, 0xab, 0x11, 0x85, 0x25, 0x42, 0x8a, 0xee, 0x2e, 0x3c, + 0x6c, 0xb8, 0xe8, 0x85, 0x15, 0x5b, 0x1a, 0x6d, 0xa0, 0xfb, 0x54, 0x1b, + 0xa8, 0x0e, 0xca, 0xc7, 0x7c, 0x63, 0x4d, 0x3d, 0x85, 0x92, 0x7e, 0x82, + 0x97, 0x02, 0xa5, 0xa9, +}; +static const struct drbg_kat_pr_true kat3973_t = { + 12, kat3973_entropyin, kat3973_nonce, kat3973_persstr, + kat3973_entropyinpr1, kat3973_addinpr1, kat3973_entropyinpr2, + kat3973_addinpr2, kat3973_retbits +}; +static const struct drbg_kat kat3973 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3973_t +}; + +static const unsigned char kat3974_entropyin[] = { + 0x3f, 0xdd, 0x8e, 0xaa, 0x05, 0x02, 0x0d, 0xe2, 0x40, 0x0a, 0x62, 0xb3, + 0xa1, 0xf6, 0xe7, 0xb6, 0xb1, 0xba, 0x5e, 0x97, 0x4e, 0xaa, 0xc1, 0x17, + 0xd1, 0x98, 0xc6, 0x38, 0x14, 0x55, 0x7e, 0xb5, 0xbd, 0x1b, 0xd4, 0x0e, + 0x51, 0x12, 0xb2, 0xd4, +}; +static const unsigned char kat3974_nonce[] = {0}; +static const unsigned char kat3974_persstr[] = {0}; +static const unsigned char kat3974_entropyinpr1[] = { + 0x8d, 0xe3, 0x38, 0x46, 0x7a, 0x27, 0x09, 0xd9, 0x3b, 0x5c, 0xd4, 0x23, + 0x4e, 0x34, 0xbf, 0x91, 0xac, 0x37, 0xec, 0x43, 0x3a, 0xd1, 0xf4, 0x0f, + 0xf2, 0x89, 0xe6, 0x93, 0xf0, 0xf4, 0xa0, 0x09, 0x83, 0x24, 0x89, 0xa9, + 0x5e, 0x25, 0xe3, 0xe7, +}; +static const unsigned char kat3974_addinpr1[] = {0}; +static const unsigned char kat3974_entropyinpr2[] = { + 0x74, 0xa8, 0x54, 0xec, 0xb8, 0x3d, 0x01, 0x72, 0xf1, 0x93, 0x3d, 0x38, + 0x91, 0x11, 0x1b, 0xaf, 0x62, 0x0f, 0x85, 0xfa, 0xb3, 0x91, 0x33, 0xdf, + 0xfa, 0x52, 0x64, 0xa5, 0x01, 0xf0, 0xb7, 0x30, 0xce, 0xc4, 0x38, 0x1f, + 0x39, 0xb3, 0xc5, 0x96, +}; +static const unsigned char kat3974_addinpr2[] = {0}; +static const unsigned char kat3974_retbits[] = { + 0x0a, 0x18, 0x63, 0x09, 0xf0, 0xf7, 0x09, 0x3c, 0x43, 0xfe, 0x30, 0x9c, + 0x5c, 0x49, 0x2a, 0x9a, 0x35, 0x7e, 0x39, 0xa4, 0x66, 0x34, 0x38, 0xcb, + 0x13, 0x2e, 0x28, 0x69, 0x23, 0x97, 0x36, 0xb1, 0xda, 0xbc, 0xd7, 0xfe, + 0x5c, 0x03, 0xb1, 0x5a, 0x78, 0x05, 0xba, 0xaf, 0x3e, 0x05, 0x8c, 0xcf, + 0x5d, 0xb3, 0x3c, 0x47, 0x95, 0xde, 0x9e, 0xb4, 0xe0, 0x73, 0x1f, 0x50, + 0xb5, 0x6b, 0xaf, 0xe2, +}; +static const struct drbg_kat_pr_true kat3974_t = { + 13, kat3974_entropyin, kat3974_nonce, kat3974_persstr, + kat3974_entropyinpr1, kat3974_addinpr1, kat3974_entropyinpr2, + kat3974_addinpr2, kat3974_retbits +}; +static const struct drbg_kat kat3974 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3974_t +}; + +static const unsigned char kat3975_entropyin[] = { + 0xe8, 0x8c, 0x4a, 0x03, 0xfe, 0x25, 0xb8, 0x7b, 0xb9, 0xe6, 0x2e, 0x56, + 0xbd, 0x93, 0xec, 0x3f, 0x34, 0x7d, 0x03, 0x30, 0x9c, 0xdb, 0xb0, 0x97, + 0x15, 0x85, 0x94, 0xde, 0x77, 0x6c, 0xbc, 0x5a, 0x3d, 0xba, 0x72, 0x13, + 0x3b, 0x17, 0xdf, 0xfe, +}; +static const unsigned char kat3975_nonce[] = {0}; +static const unsigned char kat3975_persstr[] = {0}; +static const unsigned char kat3975_entropyinpr1[] = { + 0xfc, 0xab, 0x20, 0x00, 0xec, 0xec, 0x66, 0xa2, 0x3a, 0xf1, 0x38, 0x1d, + 0x36, 0xe1, 0xdf, 0x97, 0xa4, 0x34, 0x1c, 0x32, 0x9f, 0x37, 0x5b, 0x3d, + 0xb6, 0xd7, 0x7a, 0xed, 0xa7, 0xc8, 0x52, 0x2c, 0x02, 0xb1, 0x4b, 0xbd, + 0x26, 0x05, 0x98, 0x5b, +}; +static const unsigned char kat3975_addinpr1[] = {0}; +static const unsigned char kat3975_entropyinpr2[] = { + 0xd7, 0x50, 0x22, 0x69, 0x2b, 0xbe, 0x5b, 0xee, 0xca, 0x5d, 0x81, 0x94, + 0x24, 0x43, 0xcf, 0x0d, 0xd7, 0x8b, 0x77, 0x0b, 0x75, 0x42, 0xcb, 0x8f, + 0xd1, 0xbe, 0x65, 0xe4, 0x90, 0x88, 0x16, 0xea, 0x43, 0xfa, 0x90, 0x3a, + 0x7a, 0x66, 0xfe, 0x0b, +}; +static const unsigned char kat3975_addinpr2[] = {0}; +static const unsigned char kat3975_retbits[] = { + 0xd5, 0xf9, 0x12, 0x35, 0xa9, 0x0c, 0xaf, 0xc9, 0x6e, 0x39, 0xe2, 0xa1, + 0xe6, 0x36, 0xd9, 0xa2, 0x38, 0x6c, 0x52, 0x14, 0xd8, 0x61, 0x69, 0x41, + 0xbb, 0x9f, 0x4c, 0x2f, 0xd3, 0x75, 0xda, 0x49, 0xd3, 0x3f, 0xab, 0xec, + 0x2f, 0xac, 0xa9, 0x71, 0xd6, 0x52, 0x0b, 0xab, 0x48, 0x2e, 0x33, 0xf6, + 0xf2, 0x75, 0x2b, 0x2d, 0x05, 0x4f, 0x9c, 0x3b, 0xb1, 0xf5, 0x0d, 0x07, + 0x29, 0x78, 0xea, 0x2f, +}; +static const struct drbg_kat_pr_true kat3975_t = { + 14, kat3975_entropyin, kat3975_nonce, kat3975_persstr, + kat3975_entropyinpr1, kat3975_addinpr1, kat3975_entropyinpr2, + kat3975_addinpr2, kat3975_retbits +}; +static const struct drbg_kat kat3975 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat3975_t +}; + +static const unsigned char kat3976_entropyin[] = { + 0xb4, 0xba, 0x94, 0x5a, 0xf9, 0x45, 0x35, 0x89, 0x01, 0xfe, 0x68, 0xb6, + 0xe9, 0x98, 0x86, 0x06, 0x0b, 0x50, 0xf5, 0x30, 0xa2, 0x0d, 0x50, 0xb6, + 0x65, 0xf9, 0x04, 0xdd, 0x1f, 0xb8, 0x71, 0x27, 0x13, 0x5a, 0x2a, 0x4f, + 0xc9, 0xc6, 0x5e, 0xcc, +}; +static const unsigned char kat3976_nonce[] = {0}; +static const unsigned char kat3976_persstr[] = {0}; +static const unsigned char kat3976_entropyinpr1[] = { + 0x70, 0x1e, 0x59, 0x6d, 0x0f, 0x11, 0x56, 0xfa, 0xb3, 0xf6, 0x19, 0x71, + 0x87, 0xa8, 0xe0, 0x3c, 0x9f, 0xcd, 0x6d, 0xfe, 0x7b, 0x14, 0x78, 0x5f, + 0x66, 0x33, 0xab, 0x7e, 0x42, 0x13, 0xfa, 0x65, 0xd5, 0x9d, 0xc3, 0x2d, + 0x8a, 0xd9, 0xf2, 0x93, +}; +static const unsigned char kat3976_addinpr1[] = { + 0x06, 0x86, 0xe9, 0x79, 0x1f, 0x0c, 0x56, 0x79, 0x86, 0x30, 0x9d, 0xa5, + 0x4d, 0x9b, 0x17, 0x81, 0xed, 0xd2, 0x3a, 0x7f, 0x79, 0xd4, 0x34, 0xe2, + 0xbf, 0xb0, 0x2d, 0x5c, 0x3d, 0xef, 0x41, 0x21, 0xf2, 0x7b, 0x77, 0xc5, + 0x97, 0xbc, 0xeb, 0x55, +}; +static const unsigned char kat3976_entropyinpr2[] = { + 0x72, 0x11, 0xc4, 0x84, 0x59, 0x6d, 0x20, 0x4d, 0xd2, 0x5c, 0x93, 0x80, + 0x8e, 0xec, 0xfc, 0x28, 0x26, 0xfd, 0x97, 0x6c, 0x44, 0x86, 0xea, 0x39, + 0x72, 0xfb, 0xea, 0x4e, 0x52, 0xbd, 0xc4, 0xed, 0x4a, 0x03, 0x0b, 0x9e, + 0x54, 0x04, 0x21, 0x99, +}; +static const unsigned char kat3976_addinpr2[] = { + 0x7f, 0xf9, 0x53, 0x2f, 0x18, 0xea, 0xb4, 0x41, 0x8c, 0x17, 0xec, 0x08, + 0x0f, 0xe1, 0xfd, 0x79, 0xef, 0xe9, 0xd0, 0xaf, 0x5e, 0x33, 0x6b, 0x23, + 0xa6, 0xf4, 0xce, 0xac, 0xa7, 0xdf, 0x73, 0xc6, 0x85, 0x3b, 0x94, 0x44, + 0xa6, 0x15, 0x87, 0x06, +}; +static const unsigned char kat3976_retbits[] = { + 0xd8, 0xf0, 0xfa, 0xdf, 0xca, 0x55, 0xce, 0xab, 0x82, 0x6b, 0x4e, 0xef, + 0xad, 0x45, 0x3b, 0x7b, 0x40, 0x5a, 0xc5, 0x6b, 0x66, 0x8f, 0xee, 0x2b, + 0x36, 0x59, 0xa2, 0x6c, 0x7e, 0x6c, 0x22, 0xba, 0x96, 0xb8, 0x0d, 0x45, + 0xc8, 0xbf, 0x0e, 0xec, 0xb3, 0x72, 0x23, 0xa8, 0xb0, 0x56, 0x32, 0xea, + 0xed, 0xba, 0x5e, 0x34, 0xcb, 0x53, 0x25, 0x96, 0x3f, 0xd5, 0xf7, 0x21, + 0xbb, 0x37, 0x2b, 0x2a, +}; +static const struct drbg_kat_pr_true kat3976_t = { + 0, kat3976_entropyin, kat3976_nonce, kat3976_persstr, + kat3976_entropyinpr1, kat3976_addinpr1, kat3976_entropyinpr2, + kat3976_addinpr2, kat3976_retbits +}; +static const struct drbg_kat kat3976 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3976_t +}; + +static const unsigned char kat3977_entropyin[] = { + 0x8b, 0xb9, 0x25, 0xd4, 0x76, 0xba, 0x2f, 0x6d, 0xc0, 0xc4, 0xd0, 0xa6, + 0x9e, 0xab, 0xbc, 0xfb, 0xcb, 0x42, 0xc5, 0xd0, 0x31, 0x02, 0x0e, 0x1f, + 0xac, 0x7d, 0x7e, 0x8e, 0x86, 0xf2, 0x83, 0x21, 0x18, 0x57, 0x5a, 0xd1, + 0x30, 0x31, 0x07, 0x70, +}; +static const unsigned char kat3977_nonce[] = {0}; +static const unsigned char kat3977_persstr[] = {0}; +static const unsigned char kat3977_entropyinpr1[] = { + 0x92, 0xcc, 0x90, 0x2a, 0x73, 0x88, 0x4e, 0x17, 0x71, 0x6f, 0xf7, 0xd2, + 0x46, 0x7b, 0x9a, 0x0e, 0x19, 0x7c, 0xaf, 0x60, 0x93, 0x40, 0x68, 0x5e, + 0xbf, 0xbe, 0x94, 0x9b, 0x27, 0xf0, 0x8d, 0xcd, 0x6d, 0xf8, 0xf1, 0x7c, + 0x6f, 0xd2, 0xd8, 0x4d, +}; +static const unsigned char kat3977_addinpr1[] = { + 0x58, 0xc5, 0x33, 0xa7, 0x52, 0xf3, 0xe6, 0x75, 0x34, 0xe9, 0x57, 0xd4, + 0x93, 0x94, 0x6d, 0x00, 0xfc, 0x82, 0x99, 0xe5, 0x64, 0x62, 0x2e, 0x7c, + 0x52, 0xfb, 0xdf, 0xdc, 0x58, 0x3e, 0xfb, 0x8f, 0x56, 0x44, 0x98, 0x53, + 0xbc, 0x49, 0x3d, 0x72, +}; +static const unsigned char kat3977_entropyinpr2[] = { + 0xb5, 0x37, 0xb0, 0xaf, 0x5f, 0xbb, 0x8b, 0x20, 0x71, 0x71, 0x84, 0x35, + 0x34, 0xd0, 0x1c, 0x4c, 0x71, 0x2f, 0x4d, 0xef, 0x64, 0x8f, 0xad, 0x94, + 0xce, 0xf8, 0x8a, 0x5f, 0xcb, 0xdb, 0x7a, 0xe0, 0x57, 0x7e, 0x59, 0x8c, + 0x20, 0x5a, 0xc6, 0xa4, +}; +static const unsigned char kat3977_addinpr2[] = { + 0xbf, 0x75, 0xf1, 0x16, 0x83, 0x90, 0xa2, 0x1e, 0x36, 0x2c, 0x06, 0xfc, + 0x74, 0xe9, 0x13, 0x3a, 0xda, 0xaa, 0xcc, 0x86, 0xe2, 0x62, 0xc7, 0xbf, + 0xdc, 0x71, 0x9d, 0x4a, 0x53, 0x6c, 0x95, 0xe4, 0x81, 0x01, 0x4f, 0x16, + 0xc8, 0xc4, 0xff, 0x21, +}; +static const unsigned char kat3977_retbits[] = { + 0x1a, 0x97, 0x1d, 0xa8, 0x3e, 0xb2, 0x78, 0x08, 0x2a, 0xbf, 0xb5, 0x5e, + 0x03, 0xba, 0x39, 0x3c, 0x62, 0x3d, 0x14, 0xfa, 0x91, 0xd3, 0xf0, 0xf6, + 0x73, 0x86, 0x3c, 0x5d, 0xb9, 0x77, 0x68, 0xf8, 0x29, 0x8c, 0x7c, 0xaf, + 0xd0, 0xb3, 0xf5, 0xe9, 0xe9, 0xf5, 0x8d, 0x3e, 0x9e, 0x32, 0x96, 0x11, + 0x9f, 0x0b, 0xe5, 0x49, 0x7d, 0x25, 0xc8, 0x53, 0xe0, 0x24, 0xec, 0xc2, + 0x1a, 0x35, 0xc8, 0x4e, +}; +static const struct drbg_kat_pr_true kat3977_t = { + 1, kat3977_entropyin, kat3977_nonce, kat3977_persstr, + kat3977_entropyinpr1, kat3977_addinpr1, kat3977_entropyinpr2, + kat3977_addinpr2, kat3977_retbits +}; +static const struct drbg_kat kat3977 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3977_t +}; + +static const unsigned char kat3978_entropyin[] = { + 0x6f, 0xfc, 0xe5, 0x5b, 0x48, 0xeb, 0x23, 0xea, 0xdf, 0xcd, 0x8d, 0x21, + 0x4c, 0xe6, 0x3e, 0x02, 0xeb, 0x47, 0xe2, 0x63, 0x66, 0x16, 0x13, 0x74, + 0xaa, 0x86, 0x61, 0xb7, 0x8c, 0x72, 0xe6, 0xaf, 0xbb, 0x6f, 0x41, 0x25, + 0xbf, 0x32, 0xc7, 0xea, +}; +static const unsigned char kat3978_nonce[] = {0}; +static const unsigned char kat3978_persstr[] = {0}; +static const unsigned char kat3978_entropyinpr1[] = { + 0x86, 0xfd, 0x25, 0xe0, 0xad, 0x7d, 0x02, 0x33, 0x5d, 0xc1, 0x45, 0x99, + 0x09, 0xc4, 0x98, 0x7c, 0xa1, 0xf5, 0xd9, 0x18, 0xcf, 0xfc, 0x8d, 0xcb, + 0x3e, 0x9a, 0xfc, 0x0e, 0xff, 0xbb, 0x6f, 0x8d, 0x79, 0xfe, 0x6f, 0x85, + 0x21, 0x04, 0xf7, 0x6e, +}; +static const unsigned char kat3978_addinpr1[] = { + 0x45, 0xb6, 0x5a, 0xec, 0xfa, 0x29, 0xff, 0x6a, 0x71, 0xc1, 0xbd, 0x47, + 0xc7, 0xf7, 0xc4, 0x3b, 0x5a, 0x95, 0x9d, 0x0f, 0xaf, 0x1f, 0xb7, 0xd9, + 0xb2, 0x70, 0x28, 0xa9, 0x59, 0x50, 0x9c, 0x32, 0x94, 0xb1, 0x22, 0xa9, + 0xdf, 0xe0, 0x85, 0xb1, +}; +static const unsigned char kat3978_entropyinpr2[] = { + 0xa4, 0xbe, 0x2f, 0xde, 0x59, 0x85, 0x94, 0xf9, 0x07, 0x77, 0xd6, 0x14, + 0xa8, 0x6e, 0x51, 0x48, 0x96, 0x27, 0xd9, 0xf9, 0x9b, 0x53, 0xea, 0x47, + 0xbf, 0xdf, 0xa3, 0xea, 0xe5, 0xc6, 0xf2, 0x88, 0x57, 0x90, 0x51, 0xdd, + 0x66, 0x2b, 0xa7, 0x6a, +}; +static const unsigned char kat3978_addinpr2[] = { + 0x06, 0x40, 0x68, 0xfb, 0x0b, 0x50, 0x19, 0x89, 0x7d, 0x61, 0x44, 0x7a, + 0x33, 0x5b, 0x4c, 0xbc, 0x7d, 0xa0, 0xb4, 0x71, 0x6d, 0xec, 0x1a, 0x7e, + 0xaa, 0xa4, 0x0e, 0xf9, 0x0c, 0x5e, 0xc1, 0x3f, 0xe8, 0xfa, 0x5e, 0x8d, + 0x5d, 0xb6, 0xf5, 0xb6, +}; +static const unsigned char kat3978_retbits[] = { + 0xee, 0x3c, 0x6a, 0x2c, 0xac, 0x78, 0x71, 0x64, 0x0e, 0xf9, 0xa1, 0xcc, + 0xd2, 0x72, 0xc7, 0x45, 0x47, 0xd4, 0xfb, 0xda, 0x01, 0x70, 0x2a, 0x92, + 0x0a, 0xc0, 0x0d, 0x61, 0xbc, 0x50, 0x0d, 0xf1, 0x7b, 0x74, 0xac, 0xb2, + 0xfc, 0xbc, 0xc4, 0x87, 0x87, 0x96, 0x2e, 0x8b, 0xb5, 0xcd, 0x3f, 0x12, + 0xb5, 0xdc, 0x24, 0x0a, 0x26, 0xe1, 0x5b, 0x35, 0x22, 0xac, 0x97, 0x4e, + 0x37, 0x1b, 0x78, 0xfc, +}; +static const struct drbg_kat_pr_true kat3978_t = { + 2, kat3978_entropyin, kat3978_nonce, kat3978_persstr, + kat3978_entropyinpr1, kat3978_addinpr1, kat3978_entropyinpr2, + kat3978_addinpr2, kat3978_retbits +}; +static const struct drbg_kat kat3978 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3978_t +}; + +static const unsigned char kat3979_entropyin[] = { + 0x78, 0x52, 0xff, 0x00, 0x44, 0x04, 0x7d, 0x6c, 0xff, 0x1d, 0x4a, 0xe9, + 0x25, 0x17, 0x20, 0x7d, 0x58, 0x6a, 0x79, 0xd1, 0x50, 0xea, 0xa5, 0x96, + 0x66, 0xd4, 0x9c, 0xd8, 0xdd, 0x18, 0xac, 0x9c, 0x37, 0x8c, 0x93, 0x6e, + 0x1f, 0xcc, 0x46, 0x25, +}; +static const unsigned char kat3979_nonce[] = {0}; +static const unsigned char kat3979_persstr[] = {0}; +static const unsigned char kat3979_entropyinpr1[] = { + 0xd1, 0xc2, 0xc9, 0xcb, 0xbe, 0x7d, 0xac, 0xf7, 0xe9, 0x7a, 0xeb, 0x4b, + 0xbd, 0x25, 0x07, 0xac, 0x4a, 0xab, 0x0d, 0x35, 0x83, 0x8d, 0x71, 0xc0, + 0xd0, 0xa5, 0x74, 0xc1, 0x85, 0x67, 0x46, 0x8f, 0xa1, 0xd7, 0x0c, 0xa7, + 0x27, 0x80, 0xed, 0x5e, +}; +static const unsigned char kat3979_addinpr1[] = { + 0x4e, 0xc1, 0xa4, 0xe1, 0xb6, 0xe2, 0xd1, 0x50, 0x87, 0xe9, 0x84, 0x15, + 0xcb, 0x2a, 0xe5, 0x27, 0xf9, 0x84, 0x57, 0x38, 0x12, 0xe3, 0x26, 0xcf, + 0xc1, 0xdd, 0xaa, 0x04, 0x32, 0x33, 0x58, 0x28, 0x5e, 0x78, 0xe2, 0x29, + 0x36, 0xac, 0xe4, 0x28, +}; +static const unsigned char kat3979_entropyinpr2[] = { + 0x42, 0x9d, 0x39, 0x88, 0x6e, 0xa6, 0x5c, 0x18, 0x34, 0xbc, 0xe4, 0x98, + 0x9c, 0x3b, 0x99, 0x60, 0x76, 0x52, 0x8d, 0xd3, 0x3d, 0x6d, 0x4f, 0x6d, + 0xc2, 0x46, 0xef, 0x74, 0xc3, 0x8c, 0x10, 0x54, 0x8b, 0x70, 0x39, 0xd7, + 0xad, 0x05, 0x02, 0xd0, +}; +static const unsigned char kat3979_addinpr2[] = { + 0x4a, 0xd6, 0x97, 0x11, 0x0f, 0x90, 0x41, 0x28, 0xc2, 0x82, 0x21, 0x5a, + 0x4e, 0xd7, 0xc8, 0x94, 0x32, 0xfc, 0xd4, 0x27, 0xa4, 0xed, 0xa8, 0x80, + 0xb8, 0xe1, 0x68, 0x99, 0xcf, 0xa7, 0x8f, 0xd8, 0x79, 0xda, 0x9f, 0x36, + 0x87, 0xdc, 0x4f, 0xaa, +}; +static const unsigned char kat3979_retbits[] = { + 0xf4, 0xac, 0x0c, 0x09, 0x32, 0x8d, 0x99, 0x0b, 0xe0, 0xbb, 0x01, 0x20, + 0xe9, 0xc4, 0x98, 0x99, 0x96, 0x5e, 0x5c, 0xe8, 0xf0, 0xd9, 0xe6, 0x96, + 0x1f, 0xe2, 0x0c, 0x0b, 0xe5, 0xc8, 0x44, 0xd7, 0x27, 0x9f, 0x81, 0x16, + 0x84, 0x51, 0x47, 0x38, 0xca, 0xa3, 0x7e, 0x2b, 0xe6, 0x61, 0xe3, 0xcb, + 0xdd, 0x71, 0x6b, 0xcb, 0x45, 0xd1, 0xcc, 0xd9, 0x8a, 0xcb, 0x82, 0x71, + 0x37, 0xb9, 0xc3, 0x91, +}; +static const struct drbg_kat_pr_true kat3979_t = { + 3, kat3979_entropyin, kat3979_nonce, kat3979_persstr, + kat3979_entropyinpr1, kat3979_addinpr1, kat3979_entropyinpr2, + kat3979_addinpr2, kat3979_retbits +}; +static const struct drbg_kat kat3979 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3979_t +}; + +static const unsigned char kat3980_entropyin[] = { + 0x5e, 0xdc, 0x9a, 0xa9, 0x9a, 0x5e, 0xce, 0xbf, 0x99, 0x29, 0x48, 0x5c, + 0x00, 0xfe, 0xf8, 0xe6, 0xd6, 0xb1, 0x6d, 0x3e, 0x6e, 0x9b, 0x55, 0x4d, + 0xc6, 0x99, 0x95, 0x22, 0xcc, 0xcd, 0x3f, 0xf1, 0x0f, 0x00, 0x63, 0x3c, + 0xe4, 0x22, 0x34, 0x50, +}; +static const unsigned char kat3980_nonce[] = {0}; +static const unsigned char kat3980_persstr[] = {0}; +static const unsigned char kat3980_entropyinpr1[] = { + 0xab, 0xda, 0x15, 0x8d, 0xb1, 0xc0, 0xce, 0xc5, 0x69, 0x89, 0x87, 0x50, + 0x0d, 0xcd, 0x47, 0xa8, 0xa6, 0x3c, 0xca, 0x78, 0xe2, 0xdc, 0x3b, 0x98, + 0x1a, 0x8e, 0x02, 0x58, 0x34, 0xa9, 0xf6, 0x8c, 0x6d, 0x26, 0x57, 0x37, + 0xf8, 0x2b, 0x31, 0xbd, +}; +static const unsigned char kat3980_addinpr1[] = { + 0x9e, 0xda, 0x84, 0x1f, 0xaa, 0xde, 0xfd, 0x4c, 0x6d, 0xfd, 0xc3, 0xed, + 0x35, 0x6b, 0x8a, 0x62, 0x38, 0xdf, 0x6a, 0xea, 0xec, 0x62, 0x03, 0xa3, + 0x7a, 0xe1, 0xd3, 0xc7, 0xe2, 0x16, 0xbd, 0x7c, 0x75, 0xdb, 0xf6, 0x22, + 0xe2, 0xab, 0xac, 0x5d, +}; +static const unsigned char kat3980_entropyinpr2[] = { + 0x69, 0xc0, 0x1c, 0x34, 0x73, 0xaf, 0xc6, 0xd7, 0x65, 0x30, 0x7d, 0x3b, + 0xa1, 0x34, 0x89, 0x34, 0x24, 0xaa, 0x1b, 0xb4, 0x23, 0xed, 0x54, 0x69, + 0x32, 0xbc, 0xe0, 0xc2, 0x55, 0xaa, 0x86, 0x32, 0x65, 0x76, 0x80, 0xfc, + 0x79, 0x26, 0xa8, 0x6a, +}; +static const unsigned char kat3980_addinpr2[] = { + 0x24, 0x32, 0x10, 0x97, 0x61, 0x3a, 0x7d, 0x1d, 0x88, 0x77, 0xd3, 0x42, + 0xd3, 0xde, 0xb5, 0xeb, 0x07, 0x9c, 0x52, 0xc9, 0x3b, 0xe4, 0xe7, 0xeb, + 0xec, 0x54, 0xfd, 0xcc, 0xad, 0xe4, 0x3c, 0xb1, 0x63, 0x17, 0xc4, 0xca, + 0xbc, 0xda, 0x25, 0x9b, +}; +static const unsigned char kat3980_retbits[] = { + 0x8d, 0x9f, 0x12, 0x07, 0x3d, 0x52, 0x39, 0x61, 0x6c, 0x1d, 0x0e, 0x75, + 0x5d, 0x28, 0x75, 0x1a, 0x1e, 0xdf, 0x71, 0x2e, 0x57, 0x36, 0x39, 0x4a, + 0xc0, 0xd5, 0x2f, 0xe2, 0xbb, 0xce, 0x3c, 0x5d, 0x83, 0x8e, 0xfa, 0xdd, + 0x1f, 0x13, 0xbb, 0xf8, 0x04, 0x0b, 0x57, 0x00, 0xc9, 0x6a, 0x1e, 0x33, + 0x8a, 0xb5, 0x0f, 0x8d, 0xa2, 0xa2, 0xcd, 0x32, 0x2a, 0x69, 0x77, 0xce, + 0x76, 0x80, 0xe7, 0xf3, +}; +static const struct drbg_kat_pr_true kat3980_t = { + 4, kat3980_entropyin, kat3980_nonce, kat3980_persstr, + kat3980_entropyinpr1, kat3980_addinpr1, kat3980_entropyinpr2, + kat3980_addinpr2, kat3980_retbits +}; +static const struct drbg_kat kat3980 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3980_t +}; + +static const unsigned char kat3981_entropyin[] = { + 0xba, 0x91, 0x32, 0x92, 0x24, 0xa6, 0x6f, 0x84, 0x35, 0x41, 0xc7, 0xef, + 0xd1, 0x72, 0x90, 0xe1, 0x4d, 0x12, 0x33, 0xa7, 0x59, 0x54, 0x57, 0x0e, + 0x75, 0xe4, 0xdf, 0x89, 0x8b, 0xa8, 0x0f, 0x25, 0xf7, 0x55, 0x64, 0xdd, + 0x41, 0x70, 0xda, 0x82, +}; +static const unsigned char kat3981_nonce[] = {0}; +static const unsigned char kat3981_persstr[] = {0}; +static const unsigned char kat3981_entropyinpr1[] = { + 0xae, 0x54, 0xf5, 0x94, 0x98, 0x1b, 0x2f, 0x2f, 0x24, 0xfe, 0x2a, 0x6f, + 0xfa, 0x51, 0x33, 0x59, 0xa8, 0xcb, 0x71, 0x88, 0xeb, 0x0d, 0x48, 0x06, + 0xa1, 0x8b, 0x5d, 0x1a, 0x86, 0x22, 0xed, 0x85, 0xfe, 0x00, 0x37, 0x85, + 0xd4, 0x92, 0x5b, 0x82, +}; +static const unsigned char kat3981_addinpr1[] = { + 0xb3, 0xa7, 0x64, 0x03, 0x27, 0xa7, 0xf8, 0x32, 0xf1, 0x7c, 0xbe, 0x94, + 0x4f, 0x6f, 0xd9, 0x00, 0xd9, 0xaf, 0xe4, 0x63, 0x2c, 0xb5, 0x7f, 0x67, + 0x8d, 0x32, 0x6d, 0x76, 0x9d, 0x56, 0xf6, 0x3c, 0x95, 0x41, 0x40, 0xaa, + 0x37, 0xbe, 0x13, 0xdf, +}; +static const unsigned char kat3981_entropyinpr2[] = { + 0x94, 0xec, 0x04, 0xf9, 0x47, 0xba, 0x59, 0xe2, 0x8e, 0x70, 0x13, 0xa1, + 0xc5, 0x98, 0x07, 0xf7, 0x7b, 0xfa, 0xfb, 0xaa, 0x29, 0xb7, 0x5c, 0x88, + 0x8a, 0x69, 0xd8, 0x3e, 0xea, 0xa4, 0x9a, 0x0d, 0xe3, 0x81, 0x8a, 0x39, + 0x62, 0x5a, 0x8f, 0x0e, +}; +static const unsigned char kat3981_addinpr2[] = { + 0x13, 0xe3, 0xeb, 0xc2, 0x87, 0x67, 0x47, 0x76, 0x08, 0x11, 0xc0, 0x4d, + 0xce, 0x24, 0xf2, 0xd2, 0xd9, 0x56, 0x1d, 0x25, 0x95, 0xd6, 0xb6, 0x78, + 0xeb, 0xc6, 0x6f, 0xf0, 0x18, 0x92, 0x0a, 0x59, 0xac, 0xfa, 0x30, 0x6f, + 0x22, 0xa6, 0x96, 0x2d, +}; +static const unsigned char kat3981_retbits[] = { + 0x5b, 0x09, 0x6c, 0xeb, 0x7b, 0x49, 0x67, 0x5f, 0x88, 0x49, 0x6e, 0x0e, + 0x12, 0x18, 0x17, 0x19, 0x25, 0x09, 0x55, 0x71, 0xb9, 0xde, 0x2c, 0xec, + 0xc1, 0x82, 0xf3, 0x47, 0x5b, 0x87, 0x54, 0x83, 0x1e, 0xda, 0x62, 0x5c, + 0x93, 0x2f, 0x85, 0x82, 0xfd, 0x54, 0xa6, 0x34, 0x88, 0x6f, 0x48, 0x07, + 0xba, 0x0b, 0xcf, 0x46, 0x72, 0xfa, 0xdd, 0x7b, 0xd7, 0x80, 0x2c, 0xe3, + 0x00, 0x86, 0x21, 0xe4, +}; +static const struct drbg_kat_pr_true kat3981_t = { + 5, kat3981_entropyin, kat3981_nonce, kat3981_persstr, + kat3981_entropyinpr1, kat3981_addinpr1, kat3981_entropyinpr2, + kat3981_addinpr2, kat3981_retbits +}; +static const struct drbg_kat kat3981 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3981_t +}; + +static const unsigned char kat3982_entropyin[] = { + 0xc9, 0x5b, 0xad, 0x13, 0xc3, 0x1c, 0x9a, 0x5a, 0x7f, 0x3b, 0x16, 0xad, + 0x3e, 0xc6, 0x1a, 0xea, 0x40, 0x0b, 0xf2, 0xa2, 0x2b, 0x77, 0xf6, 0x80, + 0x0a, 0x60, 0x32, 0x47, 0x4d, 0xbe, 0xa2, 0x69, 0xc6, 0xd0, 0xfb, 0x5e, + 0xf7, 0x5e, 0xe7, 0xcd, +}; +static const unsigned char kat3982_nonce[] = {0}; +static const unsigned char kat3982_persstr[] = {0}; +static const unsigned char kat3982_entropyinpr1[] = { + 0x0e, 0x05, 0xf1, 0x50, 0x09, 0xeb, 0xad, 0xb2, 0x3d, 0x24, 0xf4, 0x03, + 0x73, 0x0f, 0x92, 0xd2, 0xd7, 0x2b, 0xd9, 0x9f, 0x30, 0xa3, 0x42, 0x67, + 0x4c, 0x60, 0x1e, 0xcd, 0x59, 0x5c, 0x50, 0x4a, 0x46, 0xe8, 0xa2, 0x73, + 0xad, 0xa1, 0xa7, 0x33, +}; +static const unsigned char kat3982_addinpr1[] = { + 0x02, 0xe7, 0x0f, 0x92, 0xd3, 0x5b, 0x0e, 0x41, 0x82, 0xf7, 0x13, 0xa4, + 0xcb, 0xe0, 0xe1, 0xb4, 0x19, 0x22, 0x53, 0x85, 0x3f, 0x74, 0x49, 0x48, + 0x03, 0xbd, 0x64, 0xad, 0xc0, 0xb5, 0x83, 0x32, 0x8a, 0xb9, 0xac, 0x86, + 0xf1, 0x70, 0x72, 0x34, +}; +static const unsigned char kat3982_entropyinpr2[] = { + 0xac, 0x20, 0xd0, 0x48, 0x96, 0x0f, 0x90, 0x1c, 0x4a, 0x1d, 0xe7, 0x92, + 0x5d, 0xd7, 0x20, 0xfb, 0x00, 0xef, 0xe6, 0xac, 0x66, 0xfd, 0x7d, 0x99, + 0xfa, 0x68, 0xda, 0xcd, 0x35, 0x15, 0x18, 0x49, 0x13, 0xcc, 0xe8, 0x7b, + 0x48, 0x46, 0x8b, 0x22, +}; +static const unsigned char kat3982_addinpr2[] = { + 0x68, 0x4c, 0xf1, 0x30, 0x4c, 0x30, 0x5f, 0xcf, 0xd4, 0x30, 0xff, 0x89, + 0xc7, 0x7a, 0x15, 0xbd, 0xa0, 0xbd, 0xaa, 0x73, 0x06, 0xc4, 0x49, 0x17, + 0x4e, 0x39, 0xb1, 0xa2, 0xd7, 0x3e, 0x4b, 0x3f, 0xc3, 0x49, 0xdf, 0x54, + 0xa0, 0xba, 0xf4, 0x9f, +}; +static const unsigned char kat3982_retbits[] = { + 0xad, 0x58, 0x8b, 0xdf, 0x9d, 0x14, 0x5f, 0x8c, 0x0f, 0x87, 0xd8, 0x49, + 0x05, 0x75, 0x41, 0x4f, 0x23, 0xe1, 0xe9, 0x22, 0x40, 0x58, 0x58, 0xd2, + 0x08, 0x36, 0x7a, 0x55, 0x37, 0x24, 0x91, 0x22, 0xdb, 0xd7, 0xb3, 0xe1, + 0xb6, 0x94, 0xeb, 0x7f, 0x9a, 0x93, 0x4d, 0x18, 0x48, 0x5e, 0x89, 0x61, + 0xa0, 0xaf, 0xce, 0x5f, 0xe9, 0xf3, 0xce, 0x9f, 0x6e, 0x9c, 0x90, 0x14, + 0x06, 0x3e, 0x64, 0x31, +}; +static const struct drbg_kat_pr_true kat3982_t = { + 6, kat3982_entropyin, kat3982_nonce, kat3982_persstr, + kat3982_entropyinpr1, kat3982_addinpr1, kat3982_entropyinpr2, + kat3982_addinpr2, kat3982_retbits +}; +static const struct drbg_kat kat3982 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3982_t +}; + +static const unsigned char kat3983_entropyin[] = { + 0x0c, 0x43, 0x25, 0x7c, 0x21, 0x51, 0x25, 0x3d, 0xd7, 0xff, 0xcc, 0x28, + 0xd9, 0xc9, 0xcf, 0x5c, 0x99, 0x1c, 0xc3, 0x80, 0x57, 0x6a, 0x7f, 0x6f, + 0xc3, 0xe9, 0xf6, 0x2c, 0xfe, 0xb0, 0x7e, 0x8f, 0x0c, 0xf8, 0x7c, 0xf1, + 0x8a, 0x48, 0x08, 0xd2, +}; +static const unsigned char kat3983_nonce[] = {0}; +static const unsigned char kat3983_persstr[] = {0}; +static const unsigned char kat3983_entropyinpr1[] = { + 0xd3, 0x9d, 0xb8, 0xa3, 0x75, 0x2b, 0xb9, 0x0c, 0xeb, 0x8c, 0x8c, 0x92, + 0x0a, 0x30, 0xbc, 0x01, 0x59, 0x71, 0x8d, 0x1f, 0x6b, 0x63, 0x16, 0x65, + 0x25, 0x8e, 0xc4, 0xc8, 0x84, 0x6e, 0x56, 0x3b, 0xa2, 0x43, 0x9c, 0x63, + 0xd0, 0xbd, 0x15, 0xa8, +}; +static const unsigned char kat3983_addinpr1[] = { + 0x2f, 0xd5, 0xea, 0xb4, 0x53, 0x47, 0x07, 0x06, 0xaa, 0x09, 0xc5, 0x73, + 0x8a, 0x61, 0x00, 0x66, 0xb6, 0x9c, 0x69, 0xca, 0xe0, 0x0a, 0x13, 0xb3, + 0x98, 0x51, 0xc2, 0xf1, 0x17, 0xd2, 0xa7, 0xc4, 0x61, 0x59, 0xa2, 0x6a, + 0x3d, 0x4b, 0xcb, 0x23, +}; +static const unsigned char kat3983_entropyinpr2[] = { + 0x17, 0x59, 0x78, 0x6a, 0xac, 0xda, 0x03, 0x62, 0xa2, 0xf8, 0xe3, 0x86, + 0x2e, 0xf3, 0x22, 0x2f, 0x14, 0xde, 0x59, 0x5f, 0x5b, 0x36, 0xcc, 0x94, + 0x3a, 0x16, 0x6b, 0x0d, 0xbd, 0x47, 0xff, 0x67, 0x1e, 0xa3, 0xd1, 0x0b, + 0x8d, 0x4f, 0xc1, 0x9b, +}; +static const unsigned char kat3983_addinpr2[] = { + 0x15, 0xd1, 0x6f, 0xae, 0xe2, 0x3b, 0x91, 0x6d, 0xa6, 0xca, 0x80, 0x7a, + 0xcf, 0xf9, 0x46, 0x3c, 0x42, 0xed, 0x5a, 0x82, 0x34, 0x7c, 0xcf, 0xde, + 0xa0, 0x85, 0x04, 0xd9, 0xcc, 0x90, 0xcb, 0x59, 0x8d, 0x32, 0xe5, 0x7e, + 0xcc, 0xab, 0x1e, 0xef, +}; +static const unsigned char kat3983_retbits[] = { + 0x2f, 0x45, 0x83, 0x92, 0x3a, 0x8c, 0x21, 0x87, 0x2c, 0xf4, 0x27, 0x87, + 0x9f, 0x29, 0x49, 0x85, 0x2f, 0x49, 0x33, 0x60, 0x04, 0xd9, 0x11, 0xa4, + 0x70, 0x96, 0xcb, 0x5f, 0xdb, 0xaa, 0x7a, 0x62, 0x09, 0x67, 0x55, 0x92, + 0x8e, 0xdb, 0xf9, 0x77, 0x76, 0x7b, 0xc3, 0x26, 0x10, 0x3b, 0x40, 0x9e, + 0xda, 0x3b, 0xba, 0xfc, 0x92, 0xf7, 0x6b, 0xa0, 0x80, 0x34, 0x07, 0xc2, + 0x95, 0x3d, 0x2f, 0x22, +}; +static const struct drbg_kat_pr_true kat3983_t = { + 7, kat3983_entropyin, kat3983_nonce, kat3983_persstr, + kat3983_entropyinpr1, kat3983_addinpr1, kat3983_entropyinpr2, + kat3983_addinpr2, kat3983_retbits +}; +static const struct drbg_kat kat3983 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3983_t +}; + +static const unsigned char kat3984_entropyin[] = { + 0x23, 0x3c, 0x68, 0xa3, 0xd9, 0x57, 0x62, 0x41, 0xa1, 0x2c, 0xac, 0x09, + 0x63, 0x0c, 0x04, 0x3d, 0xbb, 0x17, 0x6d, 0x72, 0x65, 0x64, 0xa7, 0x2c, + 0x79, 0x61, 0x38, 0x2a, 0x3d, 0xbb, 0xd9, 0x31, 0xac, 0x3d, 0xf2, 0xcb, + 0xb2, 0x31, 0x88, 0xe3, +}; +static const unsigned char kat3984_nonce[] = {0}; +static const unsigned char kat3984_persstr[] = {0}; +static const unsigned char kat3984_entropyinpr1[] = { + 0xd3, 0x01, 0x7a, 0xc9, 0x01, 0x6a, 0x2c, 0xb3, 0x6f, 0xef, 0x1a, 0x9d, + 0x45, 0x74, 0x58, 0xd4, 0xa3, 0xdf, 0xb8, 0x6c, 0x08, 0x2b, 0x97, 0xc5, + 0x35, 0x7a, 0xbe, 0x44, 0x6d, 0x7c, 0x76, 0xe4, 0x93, 0x2f, 0x78, 0x01, + 0xfa, 0x48, 0x9b, 0x96, +}; +static const unsigned char kat3984_addinpr1[] = { + 0x99, 0xb5, 0x62, 0x33, 0x66, 0xba, 0xc4, 0x6d, 0x04, 0x4f, 0xc3, 0xfd, + 0x03, 0x66, 0x4a, 0xca, 0x96, 0x3a, 0xb7, 0x44, 0x34, 0x9c, 0x67, 0xe6, + 0xae, 0x2a, 0x10, 0x38, 0xc2, 0x01, 0xb6, 0x97, 0x64, 0xd8, 0x3b, 0x0c, + 0xd8, 0xaf, 0x8b, 0x60, +}; +static const unsigned char kat3984_entropyinpr2[] = { + 0x94, 0x25, 0x7d, 0x5e, 0xfb, 0x4c, 0x4e, 0x25, 0xf6, 0xce, 0x4e, 0x35, + 0x92, 0x87, 0xf7, 0xd2, 0xf5, 0x5b, 0x8e, 0x34, 0x7d, 0x89, 0x86, 0x0d, + 0x35, 0x05, 0xb0, 0x1a, 0x16, 0x99, 0x4f, 0x38, 0xec, 0x14, 0x42, 0xff, + 0xfd, 0x84, 0xa6, 0x27, +}; +static const unsigned char kat3984_addinpr2[] = { + 0x18, 0x66, 0x19, 0x68, 0x7c, 0x98, 0xf3, 0x97, 0x6b, 0x21, 0x8e, 0x73, + 0xa2, 0xd5, 0x9f, 0x4f, 0x46, 0x90, 0xcc, 0x3c, 0x4f, 0xfb, 0xa8, 0x5b, + 0x45, 0x76, 0xcc, 0xff, 0x7c, 0x89, 0xe3, 0x84, 0x98, 0x78, 0x22, 0x00, + 0xf7, 0x85, 0xb9, 0x8a, +}; +static const unsigned char kat3984_retbits[] = { + 0x43, 0xfe, 0x07, 0x96, 0x95, 0x19, 0x71, 0x80, 0x09, 0x01, 0xce, 0x7f, + 0x84, 0xbf, 0x37, 0x78, 0x95, 0x74, 0x55, 0xd0, 0x09, 0x47, 0xb2, 0xf2, + 0xa4, 0xaf, 0xc3, 0xeb, 0x27, 0x04, 0xd2, 0x2b, 0xb1, 0x1f, 0x9a, 0x47, + 0xe2, 0xb9, 0x2c, 0xb6, 0x82, 0xc2, 0x40, 0x8e, 0xf0, 0x84, 0xf0, 0x59, + 0x26, 0xbc, 0x35, 0xbd, 0x8a, 0x37, 0xbf, 0x86, 0xc3, 0x1d, 0xfe, 0x79, + 0x85, 0xd2, 0x41, 0x61, +}; +static const struct drbg_kat_pr_true kat3984_t = { + 8, kat3984_entropyin, kat3984_nonce, kat3984_persstr, + kat3984_entropyinpr1, kat3984_addinpr1, kat3984_entropyinpr2, + kat3984_addinpr2, kat3984_retbits +}; +static const struct drbg_kat kat3984 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3984_t +}; + +static const unsigned char kat3985_entropyin[] = { + 0xcb, 0xa0, 0x9b, 0xe3, 0xe9, 0x2f, 0xe7, 0x16, 0x05, 0x15, 0xed, 0x62, + 0xe3, 0xaa, 0xb1, 0x8b, 0x82, 0x22, 0xfb, 0x4f, 0x17, 0x0c, 0xc3, 0x35, + 0xfb, 0xc6, 0x67, 0x69, 0xcd, 0x3b, 0x46, 0xe2, 0x31, 0x7c, 0xcd, 0x1b, + 0x84, 0xd8, 0x1b, 0x14, +}; +static const unsigned char kat3985_nonce[] = {0}; +static const unsigned char kat3985_persstr[] = {0}; +static const unsigned char kat3985_entropyinpr1[] = { + 0x2c, 0x42, 0x59, 0x12, 0x44, 0x1b, 0xf8, 0x16, 0xba, 0x45, 0xf8, 0x0e, + 0x95, 0x5e, 0x92, 0x9f, 0x5e, 0xb7, 0x9a, 0x0b, 0x64, 0x51, 0xba, 0x16, + 0xba, 0xa2, 0x92, 0x1b, 0xec, 0xa2, 0x79, 0x8a, 0x63, 0x8b, 0x5a, 0x9a, + 0xd6, 0xe8, 0x79, 0x7c, +}; +static const unsigned char kat3985_addinpr1[] = { + 0xa5, 0x10, 0x67, 0xa0, 0x61, 0xb0, 0xcd, 0x18, 0x52, 0xec, 0xd7, 0x82, + 0xa2, 0xf6, 0x27, 0x6e, 0xd8, 0x83, 0x2a, 0xcd, 0xcf, 0xd7, 0xc2, 0xd6, + 0x59, 0x80, 0x6b, 0xa6, 0x10, 0x0c, 0xd5, 0xe0, 0xe0, 0x10, 0xc1, 0x3e, + 0xf0, 0x90, 0x6d, 0xd6, +}; +static const unsigned char kat3985_entropyinpr2[] = { + 0x82, 0x14, 0xac, 0xe3, 0xb2, 0x76, 0xef, 0xa0, 0x83, 0x5d, 0x54, 0xea, + 0x1e, 0xad, 0xb5, 0xb8, 0xa1, 0x3a, 0xca, 0x4d, 0x07, 0x51, 0x86, 0xbc, + 0x58, 0x3a, 0x06, 0xf2, 0x04, 0x0f, 0x88, 0x69, 0x36, 0x5f, 0x58, 0x7d, + 0x65, 0x0a, 0x9e, 0xb2, +}; +static const unsigned char kat3985_addinpr2[] = { + 0x6b, 0x35, 0x26, 0xf0, 0x9f, 0xfc, 0x34, 0x2d, 0x75, 0xd6, 0x48, 0xd5, + 0x1d, 0x2e, 0x3a, 0x6e, 0x7a, 0xa9, 0x4f, 0x17, 0x77, 0x54, 0x49, 0xd2, + 0xea, 0xc0, 0x5a, 0xad, 0xd6, 0x9b, 0x03, 0x15, 0xe8, 0x00, 0xa0, 0x2c, + 0xda, 0xa7, 0x3d, 0xd4, +}; +static const unsigned char kat3985_retbits[] = { + 0x26, 0x7f, 0xe6, 0x01, 0x07, 0x03, 0xd2, 0x41, 0x90, 0xc2, 0x3d, 0x0a, + 0x93, 0xf5, 0xa3, 0xa7, 0x30, 0xf0, 0x33, 0x6d, 0x24, 0x3a, 0x7b, 0x24, + 0x96, 0xf6, 0x0d, 0x53, 0xdd, 0xf1, 0x39, 0x0d, 0x87, 0x06, 0x1e, 0xd8, + 0x99, 0x4e, 0xea, 0xce, 0xa4, 0xea, 0xe8, 0x2c, 0x6f, 0x06, 0x9d, 0xea, + 0xef, 0xa9, 0x6c, 0x9e, 0x68, 0xb9, 0x7f, 0x21, 0x83, 0x44, 0xd2, 0x93, + 0x02, 0x49, 0x17, 0xe5, +}; +static const struct drbg_kat_pr_true kat3985_t = { + 9, kat3985_entropyin, kat3985_nonce, kat3985_persstr, + kat3985_entropyinpr1, kat3985_addinpr1, kat3985_entropyinpr2, + kat3985_addinpr2, kat3985_retbits +}; +static const struct drbg_kat kat3985 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3985_t +}; + +static const unsigned char kat3986_entropyin[] = { + 0xd5, 0xe1, 0x5a, 0xf1, 0x96, 0x19, 0x03, 0x2b, 0x04, 0x71, 0xf3, 0xd5, + 0x6e, 0x12, 0xd6, 0xb4, 0x1e, 0xb1, 0x57, 0x60, 0xf1, 0x83, 0x99, 0x1f, + 0x10, 0xe4, 0x53, 0xa7, 0xe6, 0x7c, 0xe2, 0x93, 0xb8, 0x14, 0x70, 0xac, + 0x85, 0xa5, 0x41, 0xeb, +}; +static const unsigned char kat3986_nonce[] = {0}; +static const unsigned char kat3986_persstr[] = {0}; +static const unsigned char kat3986_entropyinpr1[] = { + 0x9e, 0xc6, 0x95, 0xb0, 0xcb, 0xf7, 0x02, 0x00, 0x54, 0x73, 0xd3, 0x6d, + 0x8b, 0xd7, 0x10, 0x15, 0x5a, 0x23, 0x07, 0x38, 0x2d, 0x42, 0xc1, 0xb4, + 0xd0, 0xad, 0xf7, 0x28, 0x80, 0x13, 0x44, 0x77, 0x9a, 0x15, 0x0f, 0xc1, + 0x37, 0xaa, 0x49, 0x95, +}; +static const unsigned char kat3986_addinpr1[] = { + 0x00, 0x5c, 0x8d, 0xfa, 0x6a, 0xdf, 0x43, 0x7f, 0x17, 0xb8, 0xee, 0xe1, + 0x60, 0x82, 0x8a, 0x72, 0x7c, 0xab, 0x22, 0x9d, 0x54, 0x02, 0x9b, 0x25, + 0x01, 0x18, 0x31, 0x31, 0x43, 0xda, 0x2b, 0xb0, 0x68, 0x97, 0xd3, 0xea, + 0x55, 0xa4, 0xdd, 0x64, +}; +static const unsigned char kat3986_entropyinpr2[] = { + 0xc5, 0xe1, 0x47, 0xf0, 0x7a, 0xc5, 0x00, 0xfd, 0x5f, 0x4d, 0x18, 0x54, + 0x09, 0x5c, 0x63, 0x94, 0x1a, 0x25, 0x88, 0x73, 0x7d, 0x21, 0x51, 0xa4, + 0x01, 0x3f, 0x58, 0xb0, 0xe5, 0xc8, 0x97, 0xa5, 0x6e, 0x19, 0xc3, 0x34, + 0x43, 0x34, 0xd9, 0x9d, +}; +static const unsigned char kat3986_addinpr2[] = { + 0x56, 0x5a, 0xe7, 0x88, 0xd6, 0xe5, 0x4e, 0x9e, 0x01, 0x54, 0x19, 0x27, + 0x29, 0x18, 0x8d, 0x05, 0x95, 0xd4, 0x2b, 0x2d, 0xab, 0x57, 0xcb, 0xaf, + 0xaa, 0xcc, 0x85, 0xbc, 0xdd, 0x1b, 0xef, 0xfa, 0x81, 0xfa, 0x5e, 0xa0, + 0x72, 0xb3, 0x7c, 0xae, +}; +static const unsigned char kat3986_retbits[] = { + 0xf6, 0xce, 0xb9, 0xfd, 0x67, 0xe7, 0x15, 0x1e, 0xb2, 0xc9, 0xe6, 0xac, + 0x40, 0xa5, 0x35, 0x3a, 0x5a, 0x96, 0xb8, 0x67, 0x52, 0x9c, 0xdc, 0x29, + 0xee, 0x93, 0x88, 0x9c, 0x88, 0x3d, 0xbf, 0x06, 0xfb, 0xba, 0x85, 0x6e, + 0x6c, 0x35, 0x75, 0x32, 0x3f, 0xdb, 0x94, 0xba, 0x30, 0x23, 0x12, 0xea, + 0x4a, 0x77, 0x58, 0xd1, 0x87, 0xb9, 0xe6, 0xa1, 0xe1, 0x92, 0x7e, 0x12, + 0x91, 0x10, 0x57, 0x46, +}; +static const struct drbg_kat_pr_true kat3986_t = { + 10, kat3986_entropyin, kat3986_nonce, kat3986_persstr, + kat3986_entropyinpr1, kat3986_addinpr1, kat3986_entropyinpr2, + kat3986_addinpr2, kat3986_retbits +}; +static const struct drbg_kat kat3986 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3986_t +}; + +static const unsigned char kat3987_entropyin[] = { + 0x51, 0xa3, 0x95, 0xf4, 0xb8, 0x1b, 0x53, 0x20, 0xcc, 0x66, 0x1c, 0xa5, + 0xd7, 0xd2, 0x28, 0x50, 0x90, 0xdd, 0x80, 0x7c, 0xa5, 0x1b, 0xd0, 0x2f, + 0x20, 0x8e, 0xe0, 0x97, 0x2d, 0xdf, 0x74, 0x68, 0xd0, 0x10, 0xf8, 0x11, + 0x66, 0x59, 0xe4, 0x29, +}; +static const unsigned char kat3987_nonce[] = {0}; +static const unsigned char kat3987_persstr[] = {0}; +static const unsigned char kat3987_entropyinpr1[] = { + 0x7b, 0x03, 0xf9, 0x8c, 0x25, 0xd2, 0x9e, 0xc0, 0xad, 0x0f, 0xcd, 0xfa, + 0x9c, 0x39, 0xe7, 0x94, 0x0a, 0xf1, 0x10, 0xe7, 0xe7, 0xdf, 0x08, 0xa9, + 0xed, 0xd6, 0xc3, 0xe8, 0x19, 0x70, 0x6e, 0xf6, 0x01, 0x21, 0x23, 0x5e, + 0xc2, 0xf3, 0xf0, 0x1f, +}; +static const unsigned char kat3987_addinpr1[] = { + 0x92, 0x7e, 0xf9, 0x5f, 0x33, 0x41, 0x33, 0xd7, 0xde, 0xcd, 0x04, 0xb9, + 0x94, 0xc6, 0x8a, 0x89, 0x0d, 0x1e, 0x60, 0xa8, 0x5a, 0xa5, 0x4f, 0xb3, + 0x11, 0xea, 0xd2, 0xe8, 0xc7, 0x5f, 0xd0, 0xee, 0x1c, 0x04, 0xbb, 0xbe, + 0x5d, 0x0c, 0x8a, 0x4f, +}; +static const unsigned char kat3987_entropyinpr2[] = { + 0x68, 0x4f, 0xf8, 0xfe, 0xf4, 0xb6, 0x13, 0x72, 0x68, 0xdf, 0xdf, 0x32, + 0xb5, 0xf9, 0xa3, 0x15, 0x00, 0x68, 0x93, 0x5c, 0x34, 0x11, 0xab, 0x43, + 0x23, 0xbc, 0xf2, 0x1e, 0x2d, 0x1a, 0x4d, 0x9f, 0x27, 0x49, 0x2e, 0x7d, + 0x78, 0x52, 0x83, 0x0d, +}; +static const unsigned char kat3987_addinpr2[] = { + 0x6c, 0xb1, 0x3b, 0x55, 0x92, 0x40, 0x81, 0xac, 0xe5, 0xfb, 0x8c, 0x67, + 0x4d, 0x13, 0xf5, 0xd8, 0xe4, 0xbe, 0xd4, 0x5e, 0x45, 0xd3, 0xcd, 0xdf, + 0x2c, 0x82, 0xf3, 0x63, 0xab, 0x07, 0x6d, 0x4b, 0xc2, 0x3a, 0x89, 0xd6, + 0x72, 0x27, 0xf8, 0x71, +}; +static const unsigned char kat3987_retbits[] = { + 0xb7, 0x1b, 0xef, 0x4b, 0xca, 0x65, 0x6b, 0xa1, 0xa3, 0xd6, 0x56, 0xa5, + 0x72, 0xc6, 0xf2, 0xab, 0x62, 0x66, 0x3d, 0xf1, 0xa1, 0xe7, 0xa2, 0x35, + 0x89, 0x05, 0x1b, 0x12, 0xb2, 0xa7, 0x2c, 0x5c, 0x2d, 0xcf, 0x0c, 0x9a, + 0x92, 0x5b, 0xa1, 0x51, 0xe3, 0xb2, 0x4d, 0xff, 0xc8, 0x5d, 0x7a, 0xa7, + 0x30, 0x1e, 0x41, 0xc6, 0x40, 0x78, 0x20, 0xf2, 0xda, 0x59, 0x0f, 0xd6, + 0x19, 0x52, 0xcc, 0xa3, +}; +static const struct drbg_kat_pr_true kat3987_t = { + 11, kat3987_entropyin, kat3987_nonce, kat3987_persstr, + kat3987_entropyinpr1, kat3987_addinpr1, kat3987_entropyinpr2, + kat3987_addinpr2, kat3987_retbits +}; +static const struct drbg_kat kat3987 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3987_t +}; + +static const unsigned char kat3988_entropyin[] = { + 0x04, 0x1c, 0x1a, 0x7e, 0x09, 0x21, 0xed, 0x9c, 0xe3, 0x0f, 0x3e, 0xc7, + 0xa6, 0xe5, 0xf3, 0x16, 0xbb, 0x2d, 0x6e, 0x26, 0x7a, 0xe9, 0x60, 0x8e, + 0x70, 0xc7, 0xb8, 0x96, 0x62, 0xe7, 0x44, 0x89, 0x78, 0x04, 0x5b, 0x4c, + 0x40, 0x1c, 0x55, 0xc2, +}; +static const unsigned char kat3988_nonce[] = {0}; +static const unsigned char kat3988_persstr[] = {0}; +static const unsigned char kat3988_entropyinpr1[] = { + 0xa7, 0x83, 0xb4, 0x97, 0x1e, 0xa1, 0xa9, 0x17, 0x0e, 0x3e, 0xa1, 0x1d, + 0x43, 0xc5, 0xb7, 0xb2, 0x10, 0x5c, 0x9a, 0x0e, 0x71, 0x8b, 0x73, 0xe5, + 0x8e, 0x2a, 0x2e, 0x4b, 0x7e, 0xa0, 0xac, 0x3e, 0x3e, 0xa6, 0x14, 0x4b, + 0x01, 0x28, 0x09, 0xad, +}; +static const unsigned char kat3988_addinpr1[] = { + 0x62, 0xe3, 0x58, 0x26, 0xa3, 0x11, 0x1f, 0x02, 0x00, 0x9f, 0x17, 0x2b, + 0xa6, 0x58, 0x69, 0xe8, 0x04, 0xea, 0x95, 0x79, 0xde, 0xcf, 0x5f, 0xaa, + 0xb3, 0x39, 0x00, 0xe5, 0x6f, 0xc4, 0xab, 0xbe, 0x25, 0xbb, 0xe6, 0x75, + 0x64, 0x00, 0x12, 0x11, +}; +static const unsigned char kat3988_entropyinpr2[] = { + 0xd7, 0xfc, 0x4a, 0xa1, 0x0e, 0xb6, 0xcc, 0x89, 0x0a, 0x04, 0xdf, 0x01, + 0xf7, 0x87, 0x8c, 0x2e, 0xe9, 0x95, 0x05, 0x37, 0x7d, 0xe3, 0xd9, 0x7b, + 0x5e, 0xc9, 0x0a, 0x62, 0xf3, 0xb3, 0x6c, 0xef, 0x33, 0xdb, 0x29, 0x0b, + 0xe5, 0xd2, 0xc1, 0x0c, +}; +static const unsigned char kat3988_addinpr2[] = { + 0x06, 0xb8, 0xd9, 0xff, 0x1e, 0xff, 0xe2, 0x50, 0x3f, 0xaf, 0x37, 0x00, + 0x36, 0x85, 0xf9, 0xa0, 0xd8, 0x47, 0xc9, 0x27, 0xbd, 0x56, 0xd2, 0x46, + 0xa3, 0x1e, 0xbf, 0xd2, 0xae, 0x38, 0xb5, 0x27, 0xd8, 0x2d, 0x3b, 0x22, + 0x32, 0x3a, 0x96, 0x8a, +}; +static const unsigned char kat3988_retbits[] = { + 0xd8, 0x04, 0xbb, 0x99, 0x32, 0x3d, 0xf3, 0xfe, 0x59, 0x8a, 0x16, 0xf3, + 0x7f, 0xeb, 0xf7, 0x46, 0xd1, 0xa5, 0x17, 0x1e, 0xc3, 0xaa, 0xcb, 0x13, + 0x93, 0x6b, 0xdc, 0xa8, 0x3e, 0x14, 0xda, 0xb2, 0xbe, 0x67, 0x02, 0x4f, + 0x98, 0xf2, 0xc8, 0x9b, 0xc3, 0x08, 0xbc, 0x82, 0x33, 0x7d, 0x28, 0xcd, + 0x50, 0x80, 0x46, 0x8a, 0xf9, 0x0f, 0x00, 0x2e, 0xab, 0x46, 0x5d, 0x65, + 0xc1, 0x17, 0x96, 0xa9, +}; +static const struct drbg_kat_pr_true kat3988_t = { + 12, kat3988_entropyin, kat3988_nonce, kat3988_persstr, + kat3988_entropyinpr1, kat3988_addinpr1, kat3988_entropyinpr2, + kat3988_addinpr2, kat3988_retbits +}; +static const struct drbg_kat kat3988 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3988_t +}; + +static const unsigned char kat3989_entropyin[] = { + 0x09, 0x76, 0xce, 0x78, 0x81, 0x8c, 0x0d, 0xdc, 0xbc, 0x12, 0xcf, 0xac, + 0xc6, 0x3b, 0x7f, 0x53, 0x29, 0xd1, 0x8c, 0xc8, 0x45, 0x35, 0xa1, 0xbc, + 0x3b, 0xf3, 0x27, 0x76, 0x4c, 0x70, 0xd9, 0xdf, 0x9a, 0x29, 0x2f, 0xef, + 0xe5, 0xfa, 0x2f, 0xe0, +}; +static const unsigned char kat3989_nonce[] = {0}; +static const unsigned char kat3989_persstr[] = {0}; +static const unsigned char kat3989_entropyinpr1[] = { + 0xa1, 0xe8, 0x27, 0x12, 0xff, 0xf4, 0x44, 0x0b, 0xf2, 0x22, 0x4f, 0xcc, + 0x3b, 0xc3, 0x94, 0xf4, 0xbd, 0xaa, 0x95, 0x6a, 0x3c, 0x98, 0x0e, 0x0f, + 0x66, 0xa5, 0x82, 0x09, 0x97, 0x6f, 0xdc, 0x5f, 0x8b, 0x93, 0xad, 0x27, + 0x3c, 0x14, 0x3e, 0xc8, +}; +static const unsigned char kat3989_addinpr1[] = { + 0xa6, 0x30, 0xfa, 0x24, 0x91, 0x67, 0x57, 0xac, 0x7a, 0x7a, 0xa6, 0x23, + 0x8c, 0xc4, 0x69, 0xcc, 0x04, 0xc8, 0xd4, 0x1a, 0x36, 0x06, 0x9a, 0xc3, + 0xb1, 0x1a, 0x74, 0x9c, 0x0e, 0x47, 0xf9, 0x71, 0x2b, 0xbe, 0xd0, 0x12, + 0x85, 0x52, 0x76, 0xc6, +}; +static const unsigned char kat3989_entropyinpr2[] = { + 0xa2, 0x54, 0xf9, 0x40, 0xe7, 0xef, 0xca, 0xf5, 0x5d, 0x3a, 0xa5, 0x80, + 0x46, 0x53, 0x2e, 0xfe, 0xde, 0xfe, 0xd7, 0x61, 0x4c, 0xc2, 0xd5, 0xea, + 0x57, 0x7d, 0xc1, 0xa3, 0xf9, 0x75, 0x0a, 0x61, 0x97, 0x16, 0x61, 0xdf, + 0x5a, 0xe1, 0x1c, 0xd4, +}; +static const unsigned char kat3989_addinpr2[] = { + 0xbe, 0xed, 0x9e, 0x8c, 0xc0, 0x82, 0xc9, 0xbd, 0xee, 0xa8, 0xd4, 0x22, + 0x63, 0xe2, 0xf1, 0x9d, 0x29, 0xe4, 0x0e, 0x02, 0x23, 0xd2, 0xc4, 0xc3, + 0x36, 0xd5, 0x4d, 0x00, 0xf0, 0x75, 0x34, 0x2c, 0x24, 0x2a, 0x41, 0x21, + 0xcc, 0x15, 0xeb, 0x5f, +}; +static const unsigned char kat3989_retbits[] = { + 0x12, 0x9a, 0xfd, 0x05, 0x73, 0xd9, 0xf7, 0xe2, 0xf8, 0x25, 0x2c, 0x7b, + 0x6b, 0xea, 0xc2, 0x38, 0xb0, 0xc5, 0x15, 0x62, 0x7e, 0x71, 0x73, 0xef, + 0x1a, 0x13, 0x2e, 0x80, 0xa3, 0xf8, 0x4f, 0x90, 0xcf, 0x69, 0x3b, 0x12, + 0x12, 0x30, 0x03, 0x20, 0x98, 0x97, 0x65, 0x7d, 0x7a, 0x08, 0x28, 0x47, + 0xb4, 0x01, 0x16, 0xec, 0xc2, 0x41, 0x0a, 0x12, 0xc0, 0x1e, 0x29, 0x8d, + 0x97, 0x9f, 0x99, 0x22, +}; +static const struct drbg_kat_pr_true kat3989_t = { + 13, kat3989_entropyin, kat3989_nonce, kat3989_persstr, + kat3989_entropyinpr1, kat3989_addinpr1, kat3989_entropyinpr2, + kat3989_addinpr2, kat3989_retbits +}; +static const struct drbg_kat kat3989 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3989_t +}; + +static const unsigned char kat3990_entropyin[] = { + 0x28, 0xfb, 0x3c, 0x13, 0xcd, 0x47, 0xcc, 0xcf, 0x87, 0x56, 0xe5, 0xce, + 0x47, 0xb5, 0x3c, 0x58, 0x4a, 0xdd, 0x37, 0x11, 0x5b, 0xb4, 0x50, 0xfb, + 0xbd, 0xa5, 0xc6, 0x07, 0xe5, 0x06, 0xd8, 0xb2, 0x24, 0x65, 0xeb, 0xb8, + 0x3b, 0xd4, 0x3e, 0x78, +}; +static const unsigned char kat3990_nonce[] = {0}; +static const unsigned char kat3990_persstr[] = {0}; +static const unsigned char kat3990_entropyinpr1[] = { + 0x2e, 0x05, 0x88, 0xd3, 0x11, 0xe1, 0x8d, 0x70, 0xd5, 0x5a, 0xe9, 0x78, + 0x4c, 0x67, 0x3b, 0xb9, 0x6f, 0xfe, 0x38, 0x0b, 0xbb, 0xaa, 0x75, 0x84, + 0xbe, 0x61, 0x51, 0x15, 0x12, 0x35, 0xce, 0xa4, 0xc3, 0xc0, 0x15, 0x9a, + 0x11, 0xe7, 0x53, 0xb6, +}; +static const unsigned char kat3990_addinpr1[] = { + 0xe0, 0xca, 0x51, 0xc9, 0xa5, 0xf5, 0x7b, 0xef, 0x56, 0xe0, 0xcb, 0xf9, + 0x67, 0x41, 0x75, 0x27, 0x1b, 0x82, 0x53, 0xe2, 0x5b, 0xfa, 0xf8, 0x26, + 0xcb, 0xb9, 0x07, 0xc0, 0xf8, 0x8e, 0x0f, 0x01, 0xd9, 0x0b, 0x3c, 0x47, + 0xad, 0x00, 0x0a, 0x05, +}; +static const unsigned char kat3990_entropyinpr2[] = { + 0x65, 0x87, 0xfd, 0x55, 0x05, 0x75, 0x66, 0xc3, 0xfc, 0xdb, 0xd8, 0x5a, + 0xa2, 0xb6, 0x93, 0xd8, 0x85, 0x23, 0x41, 0x44, 0xa6, 0xac, 0x90, 0x00, + 0xb8, 0x64, 0x0c, 0x85, 0x30, 0xda, 0x8e, 0x2e, 0x72, 0xab, 0xfc, 0xa6, + 0x98, 0x0d, 0x71, 0x19, +}; +static const unsigned char kat3990_addinpr2[] = { + 0x1a, 0x72, 0xca, 0xb5, 0x1b, 0xe3, 0x63, 0x3b, 0xe2, 0x68, 0xe4, 0x53, + 0x3f, 0xe4, 0xad, 0x48, 0x2e, 0x51, 0x78, 0xcb, 0x3b, 0x15, 0xc6, 0xd8, + 0x09, 0x0a, 0xe9, 0xe8, 0x88, 0x2d, 0x24, 0xf1, 0xcb, 0xb2, 0xd9, 0x39, + 0x29, 0xda, 0x38, 0x64, +}; +static const unsigned char kat3990_retbits[] = { + 0xa0, 0x49, 0x6a, 0x05, 0xe5, 0x23, 0x8f, 0x17, 0x1f, 0x18, 0x87, 0x09, + 0x73, 0xc9, 0xe7, 0xb9, 0xb3, 0xff, 0xf4, 0x4d, 0xf1, 0xfc, 0x1c, 0xcf, + 0xa3, 0x98, 0xef, 0x73, 0xae, 0xb4, 0x18, 0x29, 0xa3, 0x93, 0x39, 0xfd, + 0x03, 0x25, 0x91, 0xab, 0xcc, 0xe4, 0xcd, 0x94, 0x02, 0x29, 0x7f, 0x7c, + 0x2e, 0x38, 0xfd, 0x24, 0x86, 0xea, 0xa8, 0xc2, 0x01, 0x34, 0xfc, 0x01, + 0x22, 0xaf, 0x97, 0x8f, +}; +static const struct drbg_kat_pr_true kat3990_t = { + 14, kat3990_entropyin, kat3990_nonce, kat3990_persstr, + kat3990_entropyinpr1, kat3990_addinpr1, kat3990_entropyinpr2, + kat3990_addinpr2, kat3990_retbits +}; +static const struct drbg_kat kat3990 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat3990_t +}; + +static const unsigned char kat3991_entropyin[] = { + 0x4e, 0x0d, 0x69, 0x8c, 0x46, 0x9c, 0xe9, 0x45, 0x8f, 0x4a, 0xe7, 0x35, + 0xef, 0xf6, 0x53, 0xa2, 0x14, 0x5a, 0x6e, 0xdc, 0xbc, 0x92, 0x39, 0x39, + 0x56, 0xeb, 0x15, 0x37, 0xf3, 0x31, 0x01, 0xd0, 0x39, 0x05, 0xd0, 0xaa, + 0x2e, 0x72, 0xf1, 0x91, +}; +static const unsigned char kat3991_nonce[] = {0}; +static const unsigned char kat3991_persstr[] = { + 0x18, 0xc0, 0xe4, 0x34, 0x48, 0xb9, 0xb1, 0xc2, 0x37, 0x9a, 0x08, 0xc9, + 0x3a, 0xc7, 0x87, 0xe4, 0x1c, 0x27, 0xec, 0xc8, 0x79, 0x70, 0x53, 0x56, + 0x7f, 0x7a, 0x96, 0x00, 0x9c, 0xc3, 0xdf, 0x0a, 0xaa, 0x43, 0x1b, 0xff, + 0x57, 0xce, 0x57, 0x1f, +}; +static const unsigned char kat3991_entropyinpr1[] = { + 0xe8, 0xc6, 0x7e, 0x80, 0x83, 0xd7, 0xc2, 0x49, 0x5c, 0xc2, 0x21, 0x06, + 0xd2, 0x11, 0x7f, 0xac, 0x95, 0xa0, 0x25, 0xf8, 0x09, 0x9b, 0x4d, 0x09, + 0x3c, 0x8a, 0xf5, 0x89, 0xa6, 0xc6, 0x22, 0x30, 0x6e, 0x6c, 0x75, 0xc5, + 0x1c, 0x36, 0xe9, 0x87, +}; +static const unsigned char kat3991_addinpr1[] = {0}; +static const unsigned char kat3991_entropyinpr2[] = { + 0xb5, 0x37, 0x85, 0x31, 0x78, 0x07, 0x24, 0x67, 0x79, 0xf5, 0x6a, 0xf2, + 0x37, 0xbc, 0xc6, 0x9e, 0x1d, 0xa0, 0x21, 0x9b, 0x1c, 0x5a, 0xd1, 0xd7, + 0x14, 0xf6, 0x80, 0x5f, 0xa7, 0x5e, 0x5f, 0x91, 0xd6, 0x60, 0xa0, 0x07, + 0x2f, 0xf4, 0x11, 0xf6, +}; +static const unsigned char kat3991_addinpr2[] = {0}; +static const unsigned char kat3991_retbits[] = { + 0x72, 0xa4, 0x11, 0x67, 0x12, 0x87, 0xe9, 0x4d, 0x08, 0x8d, 0x52, 0x05, + 0xad, 0x02, 0xf6, 0x66, 0x55, 0x2a, 0xe4, 0xc8, 0xe2, 0x0c, 0x98, 0xf7, + 0xb3, 0xf4, 0x78, 0xf0, 0xde, 0x5c, 0xcc, 0xce, 0xb5, 0x0e, 0x72, 0xd1, + 0x22, 0xf1, 0x5e, 0x36, 0x80, 0x40, 0x84, 0x86, 0x2c, 0xd0, 0x6b, 0x31, + 0x30, 0x7e, 0x58, 0xc8, 0xb7, 0xd4, 0x4f, 0xe5, 0x2f, 0xb6, 0x24, 0x42, + 0x62, 0xf1, 0x01, 0x98, +}; +static const struct drbg_kat_pr_true kat3991_t = { + 0, kat3991_entropyin, kat3991_nonce, kat3991_persstr, + kat3991_entropyinpr1, kat3991_addinpr1, kat3991_entropyinpr2, + kat3991_addinpr2, kat3991_retbits +}; +static const struct drbg_kat kat3991 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3991_t +}; + +static const unsigned char kat3992_entropyin[] = { + 0xb3, 0x14, 0x61, 0x40, 0x7b, 0xb4, 0x92, 0x50, 0x97, 0xc0, 0x79, 0xd3, + 0x0d, 0x21, 0xf4, 0x65, 0x0b, 0x84, 0xd7, 0x2c, 0x51, 0x6c, 0x32, 0xdc, + 0xb2, 0x5e, 0x61, 0xc7, 0xec, 0xd8, 0x43, 0x3f, 0xbe, 0x3e, 0x5e, 0xc1, + 0x77, 0xb1, 0x24, 0xc4, +}; +static const unsigned char kat3992_nonce[] = {0}; +static const unsigned char kat3992_persstr[] = { + 0xcf, 0x7e, 0xc7, 0xd7, 0xda, 0xb1, 0x73, 0x0f, 0x29, 0x71, 0xbf, 0x47, + 0x68, 0x0b, 0xe1, 0xfa, 0xe3, 0xc1, 0xc4, 0xb4, 0xc2, 0x09, 0xe5, 0xfa, + 0x8c, 0x5e, 0x91, 0x5a, 0xfc, 0x31, 0x6e, 0x14, 0x41, 0x17, 0x91, 0x14, + 0x95, 0x50, 0x69, 0x1f, +}; +static const unsigned char kat3992_entropyinpr1[] = { + 0xfe, 0xae, 0x08, 0x49, 0xb0, 0x04, 0x60, 0xd1, 0x6c, 0x87, 0x1f, 0x40, + 0x89, 0x9e, 0x62, 0x0a, 0x07, 0x3c, 0x54, 0xfc, 0x62, 0xe0, 0xae, 0x9b, + 0xb8, 0x83, 0x7b, 0x39, 0x1b, 0xff, 0x59, 0xaf, 0x6c, 0x08, 0xa8, 0x78, + 0x98, 0xb3, 0xf9, 0x00, +}; +static const unsigned char kat3992_addinpr1[] = {0}; +static const unsigned char kat3992_entropyinpr2[] = { + 0xa1, 0x5d, 0xe4, 0x23, 0x0e, 0x0d, 0xd9, 0x42, 0xd8, 0x0b, 0x9b, 0xdd, + 0x14, 0xf2, 0xd2, 0x3a, 0x06, 0x54, 0x64, 0xcd, 0x5f, 0xf6, 0x9b, 0x21, + 0x71, 0xc0, 0xc5, 0xe6, 0x04, 0xac, 0x33, 0xf5, 0xe4, 0x51, 0xd9, 0x7f, + 0x07, 0x9f, 0xeb, 0x48, +}; +static const unsigned char kat3992_addinpr2[] = {0}; +static const unsigned char kat3992_retbits[] = { + 0x94, 0xba, 0xfb, 0x19, 0x97, 0xde, 0x55, 0x46, 0x84, 0x1b, 0x5a, 0x46, + 0xb7, 0xa2, 0x40, 0x27, 0xb3, 0x8b, 0x73, 0x8b, 0x6b, 0x0a, 0xfc, 0x9a, + 0xb4, 0xc4, 0xb4, 0xbf, 0x0f, 0x7e, 0x84, 0x31, 0xeb, 0xb9, 0xc9, 0x9e, + 0x99, 0x3d, 0xfe, 0x55, 0x5b, 0x70, 0x1f, 0xd7, 0x19, 0xc8, 0x60, 0x32, + 0x91, 0xfa, 0xe0, 0x95, 0xd7, 0x19, 0xfc, 0x58, 0xb0, 0x3f, 0x6f, 0xd5, + 0xfc, 0x32, 0x43, 0xe2, +}; +static const struct drbg_kat_pr_true kat3992_t = { + 1, kat3992_entropyin, kat3992_nonce, kat3992_persstr, + kat3992_entropyinpr1, kat3992_addinpr1, kat3992_entropyinpr2, + kat3992_addinpr2, kat3992_retbits +}; +static const struct drbg_kat kat3992 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3992_t +}; + +static const unsigned char kat3993_entropyin[] = { + 0xe7, 0x48, 0x76, 0x0c, 0x2f, 0x49, 0x55, 0x87, 0xb5, 0xc9, 0x75, 0x5a, + 0xfa, 0x35, 0xbc, 0x8d, 0x67, 0x23, 0x0a, 0x9c, 0x88, 0x5e, 0xcd, 0x99, + 0xcb, 0xac, 0xfa, 0xf1, 0xf7, 0x66, 0xf7, 0x31, 0x56, 0x9c, 0xca, 0x14, + 0x73, 0xca, 0xee, 0xbe, +}; +static const unsigned char kat3993_nonce[] = {0}; +static const unsigned char kat3993_persstr[] = { + 0x20, 0x2b, 0x9f, 0x89, 0x2a, 0x76, 0x6e, 0xbc, 0xc0, 0xfd, 0xe3, 0x3d, + 0x41, 0x4a, 0x65, 0xba, 0xd4, 0xca, 0xfc, 0x0a, 0xfa, 0x99, 0x50, 0x6d, + 0x7b, 0xb3, 0xf9, 0xf2, 0x32, 0x27, 0xd7, 0x7d, 0x63, 0x5c, 0x54, 0x24, + 0xb0, 0x17, 0x34, 0xd2, +}; +static const unsigned char kat3993_entropyinpr1[] = { + 0xf8, 0x61, 0xb7, 0x4b, 0xc6, 0x55, 0xa3, 0x52, 0xea, 0xdf, 0x7c, 0xe5, + 0xd3, 0x38, 0xd2, 0x0a, 0x7f, 0x35, 0x87, 0x77, 0xde, 0x80, 0xfc, 0x9e, + 0x51, 0xc3, 0x1d, 0xb5, 0x13, 0x16, 0x1f, 0x88, 0x41, 0x18, 0xaa, 0xc4, + 0x91, 0xd5, 0xd5, 0xa1, +}; +static const unsigned char kat3993_addinpr1[] = {0}; +static const unsigned char kat3993_entropyinpr2[] = { + 0x00, 0xd0, 0x2d, 0xe2, 0xe0, 0x1b, 0x5b, 0x01, 0x91, 0xe3, 0xa0, 0xfc, + 0x46, 0x7e, 0xda, 0xf1, 0x0c, 0xc7, 0xc8, 0xb0, 0x5e, 0xed, 0x78, 0xef, + 0x29, 0xb6, 0xa0, 0xc9, 0xb0, 0x6e, 0x8c, 0xad, 0xda, 0x58, 0xe9, 0x0f, + 0xcb, 0xd7, 0x3b, 0xbe, +}; +static const unsigned char kat3993_addinpr2[] = {0}; +static const unsigned char kat3993_retbits[] = { + 0x9d, 0xfb, 0x4c, 0xfe, 0x04, 0xc4, 0xab, 0xe0, 0x40, 0xc2, 0xde, 0x7d, + 0x54, 0x10, 0x17, 0xa6, 0x4a, 0x5c, 0xdf, 0xb9, 0xd1, 0x19, 0x65, 0x51, + 0xf0, 0xff, 0xfc, 0x95, 0x85, 0x02, 0x37, 0xa4, 0x21, 0x83, 0x89, 0x57, + 0x0e, 0xcb, 0xaa, 0x59, 0xe6, 0x40, 0xf8, 0xb5, 0x59, 0x10, 0x14, 0xe7, + 0xbf, 0x4d, 0x35, 0xf3, 0x9a, 0x1d, 0x6d, 0x36, 0x1d, 0xfd, 0x22, 0x6c, + 0xd0, 0xe1, 0x60, 0xbf, +}; +static const struct drbg_kat_pr_true kat3993_t = { + 2, kat3993_entropyin, kat3993_nonce, kat3993_persstr, + kat3993_entropyinpr1, kat3993_addinpr1, kat3993_entropyinpr2, + kat3993_addinpr2, kat3993_retbits +}; +static const struct drbg_kat kat3993 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3993_t +}; + +static const unsigned char kat3994_entropyin[] = { + 0x09, 0xc7, 0x45, 0xf0, 0xb9, 0x4a, 0x1b, 0x98, 0x11, 0x93, 0xde, 0x07, + 0x5b, 0xb0, 0xc4, 0x13, 0xb0, 0x47, 0xdc, 0xe8, 0x76, 0xab, 0x63, 0x74, + 0x26, 0xdb, 0x5e, 0x6b, 0x24, 0x56, 0x85, 0x57, 0xa5, 0xcd, 0xd5, 0x83, + 0xcc, 0xc7, 0x9f, 0x6c, +}; +static const unsigned char kat3994_nonce[] = {0}; +static const unsigned char kat3994_persstr[] = { + 0xaa, 0x20, 0x48, 0xb0, 0x6c, 0x4f, 0xb1, 0x60, 0xda, 0x77, 0xec, 0x39, + 0x01, 0x4b, 0x72, 0xf1, 0xef, 0x8b, 0xb2, 0xa1, 0xf3, 0x78, 0xc7, 0x48, + 0xd7, 0xa2, 0xd9, 0x14, 0xf2, 0x75, 0x55, 0x9a, 0x69, 0x97, 0x3a, 0x33, + 0xb7, 0xc0, 0xb9, 0xe8, +}; +static const unsigned char kat3994_entropyinpr1[] = { + 0x20, 0x8a, 0xc4, 0x33, 0xfb, 0xad, 0xf3, 0x35, 0x2a, 0x54, 0x54, 0x60, + 0x30, 0xdd, 0x59, 0xd5, 0x90, 0x71, 0x2f, 0x08, 0xc0, 0x38, 0xf3, 0x29, + 0xb8, 0xd7, 0xa7, 0xbb, 0xdd, 0xd5, 0x3d, 0x5b, 0x59, 0xcf, 0x3b, 0x22, + 0x2a, 0x8a, 0x0e, 0xf3, +}; +static const unsigned char kat3994_addinpr1[] = {0}; +static const unsigned char kat3994_entropyinpr2[] = { + 0x88, 0xa0, 0x61, 0x93, 0xac, 0x99, 0x7b, 0x55, 0xd8, 0x07, 0xd1, 0x4c, + 0x2c, 0x16, 0x48, 0x91, 0xf4, 0x1b, 0x35, 0x2f, 0xfb, 0xd2, 0x75, 0x36, + 0x4c, 0x3a, 0x7d, 0x16, 0x6c, 0x74, 0xa0, 0xbd, 0xf4, 0x8a, 0x55, 0x75, + 0xbc, 0x25, 0x74, 0x9c, +}; +static const unsigned char kat3994_addinpr2[] = {0}; +static const unsigned char kat3994_retbits[] = { + 0xe7, 0x04, 0xd0, 0x2b, 0x48, 0x52, 0x77, 0x2d, 0x5e, 0x7d, 0x4f, 0x73, + 0x28, 0xdf, 0x1c, 0xa7, 0xe6, 0x39, 0x0a, 0xfc, 0x10, 0x3d, 0x84, 0x7c, + 0xde, 0x9a, 0x58, 0xb6, 0x4c, 0x35, 0x23, 0x22, 0xe3, 0x92, 0x37, 0x5e, + 0x32, 0xe7, 0xf0, 0xf9, 0xa8, 0xff, 0x5a, 0x60, 0x45, 0x51, 0xe9, 0xf7, + 0xa2, 0xbd, 0xa1, 0xb9, 0xe9, 0x91, 0x5b, 0x04, 0x72, 0x20, 0xed, 0x2c, + 0xb4, 0xdc, 0x1e, 0x78, +}; +static const struct drbg_kat_pr_true kat3994_t = { + 3, kat3994_entropyin, kat3994_nonce, kat3994_persstr, + kat3994_entropyinpr1, kat3994_addinpr1, kat3994_entropyinpr2, + kat3994_addinpr2, kat3994_retbits +}; +static const struct drbg_kat kat3994 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3994_t +}; + +static const unsigned char kat3995_entropyin[] = { + 0x7f, 0x93, 0xce, 0x4b, 0x74, 0x92, 0x2c, 0x10, 0x3e, 0x5f, 0x2c, 0xf4, + 0xb6, 0x57, 0x8c, 0x05, 0x38, 0xcd, 0xdd, 0x8f, 0x87, 0xde, 0x85, 0x55, + 0x1e, 0xf4, 0x95, 0x4d, 0x89, 0xc6, 0x7c, 0x6f, 0xe0, 0xc7, 0xa4, 0xef, + 0x4c, 0xef, 0xd2, 0x41, +}; +static const unsigned char kat3995_nonce[] = {0}; +static const unsigned char kat3995_persstr[] = { + 0xaa, 0x27, 0xd3, 0x50, 0x7e, 0xba, 0xcc, 0xad, 0x2b, 0x62, 0xc1, 0x9b, + 0xda, 0xd0, 0x01, 0x11, 0x37, 0xf3, 0x29, 0x0b, 0xf6, 0xe6, 0x38, 0xc7, + 0x26, 0x6c, 0xa4, 0x08, 0x70, 0x4b, 0xfd, 0x31, 0xa0, 0xa2, 0x15, 0xcb, + 0x93, 0xab, 0x56, 0x9b, +}; +static const unsigned char kat3995_entropyinpr1[] = { + 0x47, 0xd5, 0xf7, 0x33, 0xea, 0xf3, 0x77, 0x79, 0x7c, 0xcf, 0x80, 0x45, + 0x04, 0xd3, 0xf9, 0x7e, 0x59, 0x52, 0x00, 0x3f, 0xe3, 0x3d, 0x24, 0x52, + 0x2c, 0xcb, 0x30, 0xa9, 0xc7, 0xfd, 0x4d, 0xe6, 0xa3, 0x96, 0xb9, 0x10, + 0x82, 0x84, 0x30, 0x96, +}; +static const unsigned char kat3995_addinpr1[] = {0}; +static const unsigned char kat3995_entropyinpr2[] = { + 0xcc, 0x1b, 0x06, 0xe4, 0xbb, 0xc7, 0xdc, 0xc3, 0x1b, 0x21, 0x40, 0xf4, + 0xb8, 0x74, 0x5f, 0x19, 0x45, 0x9f, 0x39, 0x53, 0x56, 0x6a, 0xf3, 0xd7, + 0x52, 0x70, 0x5b, 0x17, 0xa9, 0xc7, 0x8c, 0xf6, 0x60, 0x0e, 0x64, 0xf3, + 0x8c, 0x25, 0xfa, 0x69, +}; +static const unsigned char kat3995_addinpr2[] = {0}; +static const unsigned char kat3995_retbits[] = { + 0x69, 0x0c, 0x86, 0x44, 0x8b, 0xc2, 0xb0, 0x25, 0x30, 0xc3, 0xeb, 0x70, + 0xd2, 0xdf, 0x30, 0x41, 0xfd, 0x46, 0x2e, 0xb7, 0x49, 0xf1, 0x64, 0x34, + 0x61, 0x90, 0x16, 0xd2, 0x0c, 0x0c, 0x1c, 0x6d, 0x33, 0x4b, 0x20, 0x0e, + 0xe2, 0x5b, 0xb5, 0xd3, 0x36, 0xa5, 0x68, 0x29, 0x83, 0x9c, 0x5e, 0xb2, + 0x1a, 0x5a, 0x0d, 0x5f, 0xc7, 0x20, 0x58, 0xc7, 0x12, 0xa2, 0x4f, 0x5e, + 0xe4, 0x4c, 0xa7, 0xe0, +}; +static const struct drbg_kat_pr_true kat3995_t = { + 4, kat3995_entropyin, kat3995_nonce, kat3995_persstr, + kat3995_entropyinpr1, kat3995_addinpr1, kat3995_entropyinpr2, + kat3995_addinpr2, kat3995_retbits +}; +static const struct drbg_kat kat3995 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3995_t +}; + +static const unsigned char kat3996_entropyin[] = { + 0x7a, 0x11, 0x87, 0x58, 0xf0, 0xc8, 0x24, 0xe7, 0x4b, 0x2f, 0xdf, 0x3e, + 0x5e, 0x79, 0xcd, 0xdc, 0xc9, 0x82, 0xa5, 0x1b, 0x61, 0x64, 0x98, 0xb1, + 0x6b, 0x03, 0x76, 0xcd, 0xb0, 0xe5, 0x55, 0xb3, 0x48, 0xb5, 0x75, 0x02, + 0xa4, 0xe2, 0x23, 0x76, +}; +static const unsigned char kat3996_nonce[] = {0}; +static const unsigned char kat3996_persstr[] = { + 0xf0, 0x01, 0xf0, 0x90, 0x82, 0x6d, 0xd0, 0x46, 0xc6, 0xdf, 0x32, 0x7f, + 0x52, 0x39, 0x0e, 0x79, 0x63, 0x49, 0x4c, 0xdb, 0x5a, 0x74, 0xfa, 0x03, + 0xad, 0xc4, 0xb0, 0x40, 0x02, 0x50, 0x5f, 0xb4, 0x2d, 0x03, 0x24, 0xd9, + 0xc7, 0x17, 0x02, 0xc3, +}; +static const unsigned char kat3996_entropyinpr1[] = { + 0xef, 0xe8, 0x4f, 0xcd, 0x0c, 0x0f, 0x20, 0x1a, 0x5e, 0xbd, 0x15, 0x40, + 0x74, 0x33, 0x66, 0x57, 0x91, 0x00, 0xc8, 0x26, 0x19, 0x0f, 0x3a, 0xd2, + 0x86, 0x8f, 0x07, 0xec, 0xd0, 0xb5, 0x2b, 0x38, 0x60, 0xfa, 0x09, 0xf3, + 0xcc, 0x41, 0xac, 0x27, +}; +static const unsigned char kat3996_addinpr1[] = {0}; +static const unsigned char kat3996_entropyinpr2[] = { + 0xea, 0xaa, 0x8c, 0x35, 0xfb, 0x2c, 0xa7, 0xd0, 0x65, 0xa6, 0x7e, 0x0e, + 0x07, 0x57, 0x8a, 0xd6, 0xf0, 0xe1, 0xb4, 0x05, 0xf8, 0x8d, 0xdd, 0xbc, + 0x4f, 0x23, 0x69, 0xb1, 0x3d, 0x9b, 0xa1, 0x0c, 0xab, 0x19, 0x30, 0xbf, + 0x36, 0xe3, 0x54, 0xa8, +}; +static const unsigned char kat3996_addinpr2[] = {0}; +static const unsigned char kat3996_retbits[] = { + 0xdf, 0xb3, 0x6c, 0x49, 0x6f, 0x76, 0xdb, 0x85, 0x22, 0x3f, 0x88, 0x12, + 0x7a, 0x5a, 0xa3, 0xcb, 0xfd, 0xfe, 0x1d, 0x40, 0x14, 0x43, 0x9a, 0x03, + 0x69, 0xcc, 0x0c, 0xcb, 0xd0, 0x31, 0xf5, 0xf6, 0x63, 0x69, 0x26, 0xb9, + 0xe2, 0xca, 0x3c, 0x66, 0x91, 0xc8, 0x9b, 0x6e, 0x4e, 0xa8, 0xd6, 0xf2, + 0x94, 0x96, 0xd4, 0x44, 0x46, 0x81, 0x0f, 0x76, 0x72, 0xef, 0x4f, 0x34, + 0xa7, 0x90, 0x86, 0x54, +}; +static const struct drbg_kat_pr_true kat3996_t = { + 5, kat3996_entropyin, kat3996_nonce, kat3996_persstr, + kat3996_entropyinpr1, kat3996_addinpr1, kat3996_entropyinpr2, + kat3996_addinpr2, kat3996_retbits +}; +static const struct drbg_kat kat3996 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3996_t +}; + +static const unsigned char kat3997_entropyin[] = { + 0x87, 0xb3, 0x70, 0xbe, 0xff, 0xe7, 0x81, 0xdb, 0x84, 0x32, 0x96, 0x7d, + 0xb9, 0x4c, 0xc4, 0x71, 0xed, 0x9f, 0x89, 0x0d, 0xa9, 0xd5, 0x6d, 0xb0, + 0x94, 0xc2, 0xdd, 0x7a, 0x26, 0xed, 0x19, 0xce, 0xa2, 0x19, 0x7f, 0x72, + 0xff, 0x9f, 0xca, 0x7d, +}; +static const unsigned char kat3997_nonce[] = {0}; +static const unsigned char kat3997_persstr[] = { + 0xf4, 0xe5, 0xbe, 0xe8, 0xe9, 0xc2, 0x63, 0xcb, 0x29, 0xce, 0x88, 0x24, + 0x84, 0x20, 0x92, 0x25, 0x98, 0x27, 0xe4, 0x5d, 0x9f, 0x81, 0x1f, 0xa7, + 0x36, 0xa9, 0x9c, 0xf6, 0xb8, 0xda, 0x8a, 0x42, 0x2e, 0x80, 0xc7, 0xc1, + 0x21, 0x98, 0x8d, 0x4c, +}; +static const unsigned char kat3997_entropyinpr1[] = { + 0x29, 0x6d, 0xd9, 0xa1, 0x90, 0xa6, 0x83, 0x8c, 0x8a, 0xcc, 0xe1, 0xb1, + 0xdc, 0xd6, 0x4a, 0xc3, 0x92, 0x26, 0x16, 0xcb, 0xf0, 0xa6, 0xad, 0xaf, + 0x38, 0x86, 0xfb, 0x70, 0x5a, 0x03, 0x75, 0x70, 0xfb, 0x87, 0x59, 0x97, + 0x5c, 0xf6, 0x8c, 0xc8, +}; +static const unsigned char kat3997_addinpr1[] = {0}; +static const unsigned char kat3997_entropyinpr2[] = { + 0x88, 0x56, 0x82, 0xd3, 0x58, 0x37, 0xc6, 0x36, 0x07, 0x65, 0xff, 0x16, + 0x41, 0xe5, 0x3a, 0xca, 0x02, 0x05, 0x11, 0x51, 0x6a, 0xac, 0x22, 0x1e, + 0x4f, 0x13, 0x26, 0x5d, 0xbc, 0xf2, 0x8d, 0x98, 0x13, 0x9f, 0xfb, 0xbf, + 0x03, 0x5b, 0xd7, 0x9b, +}; +static const unsigned char kat3997_addinpr2[] = {0}; +static const unsigned char kat3997_retbits[] = { + 0x74, 0x2c, 0xda, 0xba, 0x2d, 0xaf, 0xc3, 0x02, 0x79, 0x45, 0xe8, 0xa1, + 0x1e, 0xd7, 0xf9, 0xfa, 0x21, 0x4b, 0xe7, 0x3c, 0xf3, 0x56, 0x18, 0xce, + 0x89, 0x34, 0xe0, 0xa8, 0xf9, 0x72, 0xdf, 0xf8, 0x61, 0x5b, 0xca, 0x72, + 0x51, 0x2f, 0x57, 0xe3, 0x76, 0x6e, 0x23, 0xe6, 0xf2, 0x17, 0x3d, 0x6f, + 0x0f, 0xf4, 0x77, 0xab, 0xed, 0x8f, 0xe1, 0x91, 0xfe, 0x6a, 0x9a, 0x5b, + 0xd2, 0x62, 0x66, 0x1a, +}; +static const struct drbg_kat_pr_true kat3997_t = { + 6, kat3997_entropyin, kat3997_nonce, kat3997_persstr, + kat3997_entropyinpr1, kat3997_addinpr1, kat3997_entropyinpr2, + kat3997_addinpr2, kat3997_retbits +}; +static const struct drbg_kat kat3997 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3997_t +}; + +static const unsigned char kat3998_entropyin[] = { + 0xc6, 0xf2, 0xad, 0xc9, 0xec, 0x99, 0xa6, 0xc8, 0xd1, 0x14, 0xde, 0x0f, + 0xea, 0xd0, 0x92, 0x7f, 0xd2, 0x19, 0x99, 0x99, 0x32, 0xe4, 0xa0, 0x81, + 0x11, 0xd2, 0x09, 0x3d, 0x78, 0x58, 0x35, 0x6d, 0x1d, 0xdf, 0x82, 0x4a, + 0x1e, 0x39, 0xd6, 0xa0, +}; +static const unsigned char kat3998_nonce[] = {0}; +static const unsigned char kat3998_persstr[] = { + 0x58, 0x67, 0xc9, 0x33, 0xe2, 0x07, 0x43, 0xa9, 0x5f, 0xfe, 0xcc, 0xb4, + 0xe2, 0xeb, 0x70, 0x18, 0xd2, 0x18, 0x45, 0xee, 0x78, 0xdf, 0x3f, 0x42, + 0x1e, 0xbe, 0x0f, 0x2a, 0x8d, 0x3c, 0x5e, 0xbb, 0x84, 0xc2, 0x1f, 0x9a, + 0x53, 0x76, 0x70, 0x14, +}; +static const unsigned char kat3998_entropyinpr1[] = { + 0xd3, 0x34, 0x28, 0x51, 0x3d, 0x7f, 0x8a, 0xa9, 0x04, 0x3d, 0xef, 0x19, + 0x06, 0xc9, 0xeb, 0xfd, 0x6f, 0xea, 0x5b, 0x25, 0x2c, 0x6e, 0x13, 0xf2, + 0xf1, 0x58, 0x3d, 0x92, 0x44, 0x47, 0xf2, 0x5b, 0x89, 0xb0, 0x58, 0xbd, + 0xe8, 0x8f, 0x9a, 0xbc, +}; +static const unsigned char kat3998_addinpr1[] = {0}; +static const unsigned char kat3998_entropyinpr2[] = { + 0x4b, 0xd5, 0x3a, 0xca, 0xce, 0x6b, 0xc8, 0xe2, 0x26, 0x9a, 0x40, 0x44, + 0xc3, 0xea, 0xd8, 0x82, 0x12, 0x5a, 0xbc, 0x21, 0x77, 0x3e, 0x07, 0xc4, + 0xbd, 0xc9, 0x9d, 0xd8, 0xa4, 0x36, 0x4c, 0x0a, 0x4a, 0xa9, 0x44, 0xd9, + 0xf3, 0x94, 0x8f, 0xa5, +}; +static const unsigned char kat3998_addinpr2[] = {0}; +static const unsigned char kat3998_retbits[] = { + 0x90, 0x72, 0xa8, 0x76, 0xcb, 0x01, 0xac, 0x97, 0x61, 0x52, 0x6e, 0x34, + 0x66, 0x6c, 0x02, 0xf5, 0x97, 0xaf, 0x08, 0x1e, 0xc0, 0x0a, 0x5d, 0x85, + 0xb9, 0x37, 0x83, 0x80, 0xc6, 0x20, 0xf2, 0x59, 0x82, 0xc0, 0x2c, 0xdb, + 0x93, 0x3c, 0xef, 0x35, 0x13, 0xd7, 0xeb, 0x11, 0x59, 0x1d, 0xa1, 0x95, + 0x77, 0xc0, 0xab, 0xcb, 0xc0, 0x8d, 0xcc, 0xf0, 0x41, 0xa9, 0x9f, 0x0a, + 0xcf, 0xd7, 0x1b, 0xb2, +}; +static const struct drbg_kat_pr_true kat3998_t = { + 7, kat3998_entropyin, kat3998_nonce, kat3998_persstr, + kat3998_entropyinpr1, kat3998_addinpr1, kat3998_entropyinpr2, + kat3998_addinpr2, kat3998_retbits +}; +static const struct drbg_kat kat3998 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3998_t +}; + +static const unsigned char kat3999_entropyin[] = { + 0xa0, 0x19, 0xc5, 0x3b, 0x53, 0x35, 0xd7, 0x06, 0x19, 0x2a, 0x30, 0x15, + 0xa3, 0xd8, 0x18, 0xb9, 0x39, 0x81, 0xa9, 0x24, 0xc2, 0xbf, 0xc8, 0xee, + 0x66, 0xe9, 0x1d, 0x50, 0x58, 0xae, 0xc3, 0x31, 0xe7, 0x1d, 0x71, 0x6c, + 0x0e, 0x9a, 0x64, 0x16, +}; +static const unsigned char kat3999_nonce[] = {0}; +static const unsigned char kat3999_persstr[] = { + 0xa6, 0x44, 0x50, 0x73, 0xc9, 0x3c, 0xfc, 0x7c, 0x8e, 0x14, 0x69, 0x0a, + 0xde, 0x83, 0x65, 0x60, 0x4a, 0x6c, 0xc0, 0x0f, 0x50, 0xfd, 0x33, 0xb8, + 0x03, 0xff, 0xd7, 0xd9, 0x93, 0x2a, 0x45, 0x8d, 0x3d, 0xfe, 0x32, 0x0b, + 0xf6, 0x01, 0x20, 0x0d, +}; +static const unsigned char kat3999_entropyinpr1[] = { + 0x65, 0xd9, 0xf4, 0xee, 0x6e, 0xc2, 0xb8, 0x11, 0xbb, 0x51, 0x17, 0x3a, + 0x3f, 0x38, 0xd7, 0xb8, 0x7f, 0xc4, 0xec, 0x7c, 0x7f, 0xa9, 0x0d, 0xd0, + 0x4a, 0x9f, 0xaf, 0x31, 0xbf, 0x47, 0xaf, 0x05, 0x1c, 0x74, 0x77, 0x31, + 0x6b, 0xaf, 0xc8, 0x19, +}; +static const unsigned char kat3999_addinpr1[] = {0}; +static const unsigned char kat3999_entropyinpr2[] = { + 0x90, 0xe5, 0x70, 0x43, 0x78, 0xac, 0x38, 0x00, 0x95, 0xf3, 0x8b, 0x08, + 0x16, 0x13, 0xdb, 0xbf, 0xb4, 0x58, 0xbd, 0x88, 0x8a, 0xeb, 0x12, 0xfa, + 0x26, 0xbf, 0x02, 0x9b, 0x8b, 0x61, 0xfc, 0x0f, 0xc1, 0x5d, 0xc4, 0x2a, + 0xb5, 0xc2, 0x49, 0x2f, +}; +static const unsigned char kat3999_addinpr2[] = {0}; +static const unsigned char kat3999_retbits[] = { + 0xd8, 0xf5, 0x34, 0x3e, 0x6b, 0x15, 0xd6, 0x3e, 0xac, 0xc2, 0x14, 0x69, + 0xfe, 0xba, 0x32, 0x9a, 0x78, 0xcc, 0xab, 0x56, 0x7c, 0x39, 0x1c, 0x52, + 0xa1, 0xf8, 0x65, 0x99, 0x41, 0x24, 0x32, 0x3a, 0x0b, 0xbe, 0x40, 0x21, + 0x3a, 0xd9, 0xe1, 0x54, 0x2c, 0x55, 0x2d, 0x25, 0xb0, 0x99, 0x4b, 0x09, + 0x5d, 0x4f, 0xe7, 0x5c, 0x35, 0x5c, 0x1b, 0xd6, 0xd9, 0x3f, 0xfd, 0xda, + 0x03, 0x02, 0x01, 0x7c, +}; +static const struct drbg_kat_pr_true kat3999_t = { + 8, kat3999_entropyin, kat3999_nonce, kat3999_persstr, + kat3999_entropyinpr1, kat3999_addinpr1, kat3999_entropyinpr2, + kat3999_addinpr2, kat3999_retbits +}; +static const struct drbg_kat kat3999 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat3999_t +}; + +static const unsigned char kat4000_entropyin[] = { + 0x4e, 0xfb, 0x6e, 0xf4, 0xd7, 0xf3, 0xc6, 0x40, 0xa2, 0x82, 0xfe, 0xef, + 0x77, 0xd8, 0x33, 0xee, 0x60, 0x1f, 0xbd, 0x2f, 0xe8, 0x88, 0x3f, 0xe8, + 0xc1, 0x08, 0xb8, 0x78, 0xcc, 0x19, 0x69, 0x10, 0xd2, 0x67, 0xca, 0xdc, + 0x5c, 0x05, 0x99, 0x4d, +}; +static const unsigned char kat4000_nonce[] = {0}; +static const unsigned char kat4000_persstr[] = { + 0x94, 0x76, 0x17, 0xb4, 0x58, 0x22, 0xe2, 0xc0, 0x46, 0xf8, 0x01, 0x9b, + 0xcf, 0x10, 0xab, 0xf7, 0xed, 0xe1, 0xdb, 0x16, 0x16, 0x8f, 0x9b, 0x9d, + 0x47, 0x1e, 0x87, 0xb1, 0x5c, 0xe5, 0x39, 0xd8, 0x97, 0x37, 0x39, 0x61, + 0xc4, 0x95, 0x82, 0x90, +}; +static const unsigned char kat4000_entropyinpr1[] = { + 0x89, 0x52, 0x45, 0x98, 0xb3, 0x52, 0xec, 0x3c, 0x3a, 0xf2, 0x2f, 0x66, + 0x85, 0x5f, 0xd5, 0x60, 0x71, 0x59, 0x88, 0xaa, 0x20, 0x4d, 0x7f, 0xfb, + 0x9d, 0xa0, 0x46, 0x3e, 0x02, 0xcc, 0xb3, 0x8d, 0xf4, 0x1a, 0x0b, 0x47, + 0x97, 0x2c, 0x0b, 0x73, +}; +static const unsigned char kat4000_addinpr1[] = {0}; +static const unsigned char kat4000_entropyinpr2[] = { + 0x36, 0x87, 0x22, 0x50, 0xa5, 0x33, 0x70, 0x63, 0x09, 0x40, 0x18, 0xd8, + 0x4a, 0x8e, 0x2e, 0x40, 0x36, 0x6d, 0xad, 0x33, 0xbc, 0x29, 0xe3, 0x1d, + 0x23, 0xe2, 0x06, 0x40, 0x59, 0x96, 0x15, 0x6f, 0x84, 0x97, 0xd6, 0xe3, + 0x44, 0x9b, 0xf2, 0x91, +}; +static const unsigned char kat4000_addinpr2[] = {0}; +static const unsigned char kat4000_retbits[] = { + 0xb9, 0x87, 0xc0, 0xa3, 0x81, 0x0d, 0x15, 0x37, 0x4f, 0x28, 0xb0, 0xec, + 0xd2, 0xbd, 0x77, 0x48, 0xbf, 0x33, 0x2f, 0x77, 0x11, 0xf5, 0xfc, 0x64, + 0x88, 0x97, 0x07, 0xfa, 0x19, 0x69, 0x3b, 0x13, 0xbb, 0xaf, 0xd5, 0x87, + 0x10, 0xbf, 0x9c, 0x3f, 0xd7, 0x90, 0x09, 0x37, 0x27, 0xb3, 0xe3, 0x42, + 0x1e, 0xe4, 0x32, 0xb7, 0x6a, 0x3a, 0x44, 0x3c, 0xe9, 0xa4, 0x3b, 0x8b, + 0xcb, 0xda, 0x0e, 0x09, +}; +static const struct drbg_kat_pr_true kat4000_t = { + 9, kat4000_entropyin, kat4000_nonce, kat4000_persstr, + kat4000_entropyinpr1, kat4000_addinpr1, kat4000_entropyinpr2, + kat4000_addinpr2, kat4000_retbits +}; +static const struct drbg_kat kat4000 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4000_t +}; + +static const unsigned char kat4001_entropyin[] = { + 0x6e, 0x6f, 0xac, 0xdb, 0x11, 0x66, 0x50, 0x7d, 0x45, 0xfb, 0xcd, 0xb0, + 0x4d, 0x97, 0xf4, 0xbb, 0xd7, 0x32, 0xae, 0x79, 0x6d, 0x57, 0x5e, 0x8b, + 0xb5, 0x4f, 0x41, 0x4a, 0x83, 0xd4, 0x24, 0x66, 0x76, 0x32, 0xc3, 0x80, + 0xb0, 0x85, 0xa3, 0x7d, +}; +static const unsigned char kat4001_nonce[] = {0}; +static const unsigned char kat4001_persstr[] = { + 0x95, 0xfe, 0xf5, 0x67, 0x41, 0xae, 0x3a, 0xa0, 0x66, 0x39, 0xb2, 0xce, + 0xc2, 0xe7, 0xf5, 0xc3, 0x00, 0x66, 0xd6, 0x70, 0xef, 0x48, 0x05, 0x9b, + 0x55, 0xa4, 0xfb, 0xd8, 0xca, 0x77, 0x38, 0x25, 0xf4, 0xbd, 0x93, 0x4b, + 0x55, 0x6e, 0x34, 0xc0, +}; +static const unsigned char kat4001_entropyinpr1[] = { + 0xf8, 0xc2, 0x52, 0xd7, 0x38, 0x5d, 0xe8, 0x7b, 0xdc, 0x42, 0xe2, 0xa0, + 0x97, 0x4d, 0x0e, 0xe9, 0x21, 0x4c, 0x55, 0x88, 0x4c, 0xa2, 0xd9, 0x88, + 0x53, 0x86, 0xe4, 0x72, 0x33, 0x81, 0x7b, 0x51, 0xa8, 0x43, 0xeb, 0x05, + 0xe5, 0x68, 0xac, 0x9b, +}; +static const unsigned char kat4001_addinpr1[] = {0}; +static const unsigned char kat4001_entropyinpr2[] = { + 0x59, 0xf9, 0x90, 0xbd, 0x50, 0x7e, 0x99, 0xdc, 0xcf, 0x5b, 0xdf, 0x0e, + 0x36, 0xfc, 0xae, 0x29, 0x9f, 0x2e, 0xae, 0x55, 0xa6, 0xa8, 0x52, 0xdf, + 0x10, 0xd6, 0x01, 0xd2, 0x4f, 0x19, 0x32, 0x8d, 0x89, 0x1a, 0x6f, 0xd4, + 0x53, 0x97, 0x5b, 0xb8, +}; +static const unsigned char kat4001_addinpr2[] = {0}; +static const unsigned char kat4001_retbits[] = { + 0xe7, 0x79, 0x41, 0xe4, 0xf7, 0x78, 0xd2, 0x56, 0xd5, 0x3a, 0xad, 0xd2, + 0x06, 0xe8, 0xe9, 0x97, 0xd0, 0xaa, 0xc4, 0x7b, 0x3a, 0xef, 0xaa, 0x9a, + 0xb8, 0xa5, 0x4b, 0x92, 0xee, 0x8d, 0xe3, 0x43, 0x61, 0xfa, 0xe3, 0x2d, + 0x41, 0x4f, 0xcf, 0x97, 0x20, 0x56, 0x1e, 0x95, 0xce, 0x03, 0x5d, 0xd7, + 0x74, 0xec, 0xd4, 0x0d, 0xe0, 0xcf, 0x4a, 0xc7, 0x53, 0x99, 0x09, 0xd6, + 0xb6, 0x0d, 0xd0, 0x65, +}; +static const struct drbg_kat_pr_true kat4001_t = { + 10, kat4001_entropyin, kat4001_nonce, kat4001_persstr, + kat4001_entropyinpr1, kat4001_addinpr1, kat4001_entropyinpr2, + kat4001_addinpr2, kat4001_retbits +}; +static const struct drbg_kat kat4001 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4001_t +}; + +static const unsigned char kat4002_entropyin[] = { + 0x60, 0x58, 0xb4, 0xcc, 0x4b, 0x1d, 0xa3, 0x12, 0x9b, 0x58, 0x09, 0xb5, + 0xd3, 0x3f, 0x2d, 0xa6, 0xfc, 0x3e, 0x55, 0x12, 0x14, 0x57, 0xa2, 0xd3, + 0x91, 0xb9, 0x18, 0xe7, 0xdd, 0x7d, 0x6a, 0x3a, 0x20, 0x6a, 0x31, 0xf3, + 0xe2, 0x6c, 0xbe, 0xc0, +}; +static const unsigned char kat4002_nonce[] = {0}; +static const unsigned char kat4002_persstr[] = { + 0x53, 0x53, 0x05, 0x4c, 0xd0, 0x4b, 0x16, 0x5c, 0x6c, 0x5e, 0xb4, 0xef, + 0x06, 0x0c, 0xdf, 0x6c, 0x8d, 0x8d, 0xf6, 0xc4, 0x94, 0x27, 0x45, 0xe2, + 0x1e, 0xb3, 0x63, 0x66, 0xe8, 0xad, 0xcc, 0x58, 0xa4, 0x19, 0x5e, 0x83, + 0xa7, 0x71, 0x62, 0xa3, +}; +static const unsigned char kat4002_entropyinpr1[] = { + 0xab, 0x0a, 0x9b, 0x1a, 0xcb, 0x12, 0x5e, 0x66, 0x41, 0x98, 0xf5, 0x88, + 0xd6, 0x3d, 0x23, 0x8a, 0x41, 0x2d, 0x22, 0x37, 0x1e, 0x98, 0xd7, 0xbc, + 0x1d, 0xd1, 0x50, 0x4a, 0x3d, 0x96, 0xdb, 0xe1, 0x96, 0xd8, 0xf5, 0x0c, + 0xfe, 0xbe, 0x86, 0xd9, +}; +static const unsigned char kat4002_addinpr1[] = {0}; +static const unsigned char kat4002_entropyinpr2[] = { + 0x2e, 0x20, 0x47, 0xec, 0x98, 0xd6, 0x84, 0xbc, 0x21, 0x30, 0xf6, 0x22, + 0xb1, 0xd1, 0x31, 0x20, 0x3a, 0x87, 0x51, 0xe5, 0xbf, 0x57, 0xdf, 0x9b, + 0x58, 0x7f, 0x6c, 0x9a, 0x05, 0x66, 0x78, 0x99, 0x32, 0x94, 0x4b, 0xfc, + 0x48, 0x76, 0x0a, 0xfc, +}; +static const unsigned char kat4002_addinpr2[] = {0}; +static const unsigned char kat4002_retbits[] = { + 0x70, 0x6c, 0x45, 0x57, 0x77, 0x49, 0xf2, 0x7d, 0x3d, 0x91, 0x50, 0xe7, + 0x4d, 0x7b, 0x5e, 0x50, 0x69, 0x95, 0x57, 0x40, 0xa9, 0x4c, 0x10, 0x17, + 0x17, 0xc4, 0xcf, 0x49, 0x7b, 0x0c, 0x4b, 0x99, 0x47, 0x76, 0x00, 0x5d, + 0x68, 0x0d, 0x8a, 0xf4, 0x19, 0xe8, 0xb1, 0x3b, 0x6c, 0x76, 0x65, 0x20, + 0xc4, 0xca, 0xc1, 0x77, 0xed, 0xf6, 0x66, 0xdb, 0x94, 0x49, 0x59, 0x3c, + 0x64, 0x6c, 0x0a, 0xd5, +}; +static const struct drbg_kat_pr_true kat4002_t = { + 11, kat4002_entropyin, kat4002_nonce, kat4002_persstr, + kat4002_entropyinpr1, kat4002_addinpr1, kat4002_entropyinpr2, + kat4002_addinpr2, kat4002_retbits +}; +static const struct drbg_kat kat4002 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4002_t +}; + +static const unsigned char kat4003_entropyin[] = { + 0xe2, 0xf0, 0x24, 0x05, 0x5d, 0x13, 0x73, 0x8b, 0x6c, 0x42, 0x03, 0xda, + 0xba, 0x88, 0xbf, 0x0f, 0x33, 0xbb, 0xb1, 0x60, 0xda, 0x31, 0x14, 0x19, + 0x4c, 0x31, 0xdf, 0x52, 0x94, 0xbe, 0xb1, 0x61, 0xb2, 0x0c, 0x2e, 0x7d, + 0xa7, 0x10, 0xf2, 0x62, +}; +static const unsigned char kat4003_nonce[] = {0}; +static const unsigned char kat4003_persstr[] = { + 0x12, 0xda, 0x60, 0x9a, 0xdd, 0xda, 0xd5, 0x26, 0x86, 0xb2, 0x63, 0x2b, + 0x14, 0x3d, 0xe0, 0xed, 0xde, 0x8c, 0x94, 0xaf, 0xd7, 0xa1, 0x9b, 0x6f, + 0xed, 0x8d, 0x95, 0x1e, 0x89, 0x27, 0xfc, 0xaa, 0x06, 0x94, 0xd5, 0x16, + 0x52, 0xf0, 0xeb, 0x3b, +}; +static const unsigned char kat4003_entropyinpr1[] = { + 0xc6, 0xdf, 0x50, 0x4c, 0x22, 0x69, 0xb9, 0x56, 0xdd, 0xcc, 0xd0, 0xf1, + 0xfa, 0x1d, 0xf0, 0x6c, 0xdb, 0x76, 0xcd, 0x9f, 0x76, 0x10, 0xf5, 0xa7, + 0x32, 0x71, 0x9a, 0x83, 0xda, 0x6e, 0xb5, 0x91, 0x07, 0xe5, 0x88, 0xe0, + 0xaa, 0xf4, 0x2b, 0x7f, +}; +static const unsigned char kat4003_addinpr1[] = {0}; +static const unsigned char kat4003_entropyinpr2[] = { + 0x02, 0xf3, 0x52, 0x39, 0x88, 0x62, 0xd3, 0xe2, 0x35, 0xb0, 0x27, 0x3a, + 0xc2, 0xce, 0x08, 0x30, 0xdb, 0xf7, 0x8d, 0xd4, 0x1d, 0x62, 0x03, 0x26, + 0x94, 0x29, 0x15, 0x8c, 0x8c, 0xb0, 0x8c, 0xfc, 0xc0, 0xab, 0xc3, 0x2b, + 0xd9, 0xef, 0x5f, 0x2f, +}; +static const unsigned char kat4003_addinpr2[] = {0}; +static const unsigned char kat4003_retbits[] = { + 0x31, 0xaf, 0x80, 0x82, 0x42, 0x6e, 0x0a, 0xa3, 0xa2, 0xe1, 0x40, 0x89, + 0xec, 0x83, 0xc3, 0xfa, 0x0a, 0xc2, 0xe9, 0x01, 0xc2, 0xf1, 0x97, 0x8e, + 0xae, 0x68, 0xa0, 0x2b, 0x75, 0x88, 0xb5, 0xce, 0x42, 0x4e, 0x41, 0x22, + 0xd0, 0x5b, 0x8f, 0x32, 0x54, 0xf0, 0x4a, 0xc6, 0x18, 0x2f, 0x8c, 0xcc, + 0x29, 0xfa, 0xa3, 0x29, 0x42, 0xc8, 0x48, 0x6b, 0xa3, 0x5e, 0x22, 0x5f, + 0xc3, 0xe0, 0xf3, 0x02, +}; +static const struct drbg_kat_pr_true kat4003_t = { + 12, kat4003_entropyin, kat4003_nonce, kat4003_persstr, + kat4003_entropyinpr1, kat4003_addinpr1, kat4003_entropyinpr2, + kat4003_addinpr2, kat4003_retbits +}; +static const struct drbg_kat kat4003 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4003_t +}; + +static const unsigned char kat4004_entropyin[] = { + 0xfb, 0xc1, 0xc9, 0x36, 0x2e, 0x9f, 0x8d, 0x01, 0xe3, 0xda, 0xad, 0xe1, + 0x1a, 0xfc, 0x85, 0x3e, 0xdf, 0xc8, 0x1e, 0x9f, 0x90, 0x86, 0x73, 0x16, + 0x98, 0x1f, 0x91, 0x6f, 0xab, 0x1e, 0x4d, 0x0f, 0x43, 0xc0, 0x20, 0x15, + 0x42, 0x00, 0x9e, 0x3d, +}; +static const unsigned char kat4004_nonce[] = {0}; +static const unsigned char kat4004_persstr[] = { + 0x00, 0xa6, 0x55, 0x53, 0xb0, 0x30, 0xa9, 0x96, 0x98, 0xcd, 0x5f, 0x5b, + 0xc6, 0xf6, 0x25, 0x65, 0x82, 0x2d, 0xec, 0x15, 0x1d, 0xc6, 0x2b, 0x75, + 0x2c, 0xb3, 0xa5, 0x92, 0x96, 0x0d, 0x88, 0xd1, 0xf2, 0xe2, 0x80, 0x3e, + 0x69, 0xcb, 0xa5, 0x2c, +}; +static const unsigned char kat4004_entropyinpr1[] = { + 0x14, 0x71, 0xad, 0x5a, 0xa1, 0xb5, 0x07, 0xfb, 0x62, 0xc8, 0x13, 0xad, + 0xb0, 0x56, 0xfe, 0xa3, 0xfe, 0x0c, 0x91, 0xb5, 0x64, 0xd2, 0x62, 0xeb, + 0x34, 0x81, 0xe3, 0x86, 0x79, 0x47, 0x0f, 0xc9, 0xf4, 0x26, 0x1b, 0xa9, + 0xca, 0x62, 0x11, 0xbb, +}; +static const unsigned char kat4004_addinpr1[] = {0}; +static const unsigned char kat4004_entropyinpr2[] = { + 0xa9, 0x68, 0x6d, 0x7e, 0xa1, 0xc0, 0x60, 0xf9, 0xaa, 0xe9, 0xe6, 0x3a, + 0xb3, 0xd5, 0xa4, 0xbc, 0xfc, 0x4f, 0xc9, 0x5d, 0x20, 0xa8, 0x46, 0x5c, + 0x7a, 0x0a, 0x7f, 0x8e, 0x0f, 0x29, 0x97, 0xc4, 0xd3, 0x1a, 0xe7, 0x5d, + 0xbb, 0x05, 0xd9, 0x59, +}; +static const unsigned char kat4004_addinpr2[] = {0}; +static const unsigned char kat4004_retbits[] = { + 0xf6, 0xaf, 0x5f, 0x00, 0x0c, 0xed, 0x2c, 0xff, 0xe1, 0xa0, 0x67, 0xf6, + 0x45, 0xe3, 0xf8, 0x2a, 0xc3, 0x89, 0x76, 0xd8, 0x6d, 0x39, 0x65, 0x01, + 0xc2, 0xe7, 0xa5, 0xb1, 0x0f, 0x43, 0x56, 0x8b, 0xae, 0x4c, 0x3f, 0x33, + 0x22, 0x5a, 0x78, 0x22, 0x8d, 0x81, 0x23, 0x65, 0x01, 0x0d, 0xbb, 0x41, + 0x6e, 0xb5, 0xab, 0xd6, 0xd3, 0x59, 0x0d, 0x7b, 0x59, 0xf4, 0x3d, 0xd9, + 0x30, 0x26, 0xf6, 0x8a, +}; +static const struct drbg_kat_pr_true kat4004_t = { + 13, kat4004_entropyin, kat4004_nonce, kat4004_persstr, + kat4004_entropyinpr1, kat4004_addinpr1, kat4004_entropyinpr2, + kat4004_addinpr2, kat4004_retbits +}; +static const struct drbg_kat kat4004 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4004_t +}; + +static const unsigned char kat4005_entropyin[] = { + 0xca, 0x5c, 0x86, 0x86, 0x0a, 0xa7, 0xcd, 0x91, 0x49, 0x51, 0xe1, 0x5c, + 0xf9, 0xf3, 0xeb, 0xdd, 0x21, 0x30, 0x21, 0x73, 0x14, 0x72, 0x8d, 0xed, + 0x85, 0x4a, 0xfb, 0xc6, 0x02, 0xd4, 0xb0, 0xaf, 0x9a, 0x5a, 0xb0, 0x00, + 0x97, 0x83, 0xc4, 0xdd, +}; +static const unsigned char kat4005_nonce[] = {0}; +static const unsigned char kat4005_persstr[] = { + 0x7b, 0xfb, 0x36, 0x5d, 0x74, 0x9f, 0x31, 0x4d, 0x89, 0x5e, 0x6c, 0xcb, + 0xea, 0x67, 0xfd, 0x37, 0xc8, 0x6b, 0x58, 0x2d, 0x23, 0xd7, 0x9e, 0x3e, + 0x13, 0x16, 0x7b, 0xb8, 0xf9, 0x4f, 0x50, 0x9e, 0xae, 0x70, 0x89, 0xd9, + 0xe6, 0x08, 0x71, 0x71, +}; +static const unsigned char kat4005_entropyinpr1[] = { + 0xb4, 0x59, 0xee, 0xb4, 0x04, 0xa1, 0x48, 0x0b, 0x64, 0xe7, 0xd5, 0x72, + 0xbc, 0xed, 0x36, 0x5b, 0xf8, 0x22, 0x87, 0x80, 0x85, 0x36, 0x3d, 0xaf, + 0x57, 0xe8, 0x94, 0xc2, 0x9e, 0xf8, 0xfb, 0x46, 0xd0, 0xa7, 0x9f, 0xef, + 0x47, 0x13, 0xd2, 0xaf, +}; +static const unsigned char kat4005_addinpr1[] = {0}; +static const unsigned char kat4005_entropyinpr2[] = { + 0xa0, 0x57, 0x87, 0x1a, 0x39, 0x4e, 0x93, 0xe5, 0x8b, 0xa1, 0x91, 0xc2, + 0x39, 0xe2, 0x18, 0x58, 0xa3, 0x12, 0x7a, 0x6b, 0x74, 0x8a, 0x45, 0x05, + 0xed, 0xa4, 0x87, 0xdc, 0x6a, 0x52, 0x93, 0x30, 0x4a, 0xad, 0x36, 0xd5, + 0x2d, 0xa1, 0x32, 0xb6, +}; +static const unsigned char kat4005_addinpr2[] = {0}; +static const unsigned char kat4005_retbits[] = { + 0x96, 0xb2, 0x4e, 0xf7, 0xb1, 0x93, 0x70, 0xcb, 0x3e, 0xc4, 0x0a, 0x47, + 0x63, 0xde, 0x92, 0x69, 0x77, 0xec, 0xbe, 0x6a, 0xf2, 0xfb, 0xa2, 0x01, + 0xe9, 0x83, 0xe7, 0xbb, 0xd7, 0x1b, 0x23, 0xfa, 0x95, 0xbd, 0x31, 0x59, + 0x33, 0xce, 0x2f, 0xb5, 0xa1, 0x0f, 0x4a, 0x12, 0x1c, 0xc5, 0x6b, 0x12, + 0x52, 0x33, 0xf0, 0x9f, 0xf9, 0x20, 0xcc, 0x38, 0x0d, 0xf7, 0xab, 0x55, + 0x13, 0x40, 0x34, 0x57, +}; +static const struct drbg_kat_pr_true kat4005_t = { + 14, kat4005_entropyin, kat4005_nonce, kat4005_persstr, + kat4005_entropyinpr1, kat4005_addinpr1, kat4005_entropyinpr2, + kat4005_addinpr2, kat4005_retbits +}; +static const struct drbg_kat kat4005 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4005_t +}; + +static const unsigned char kat4006_entropyin[] = { + 0xae, 0x61, 0x46, 0xcc, 0x41, 0x58, 0xe4, 0x3d, 0xd1, 0x14, 0x95, 0xa6, + 0xed, 0x62, 0xad, 0xd0, 0x04, 0x2f, 0x72, 0xc1, 0x5b, 0x8d, 0xdb, 0x26, + 0xb1, 0xf8, 0x59, 0x24, 0x9d, 0xed, 0xa2, 0x69, 0x4b, 0xdd, 0xb9, 0x5a, + 0x58, 0x52, 0x6b, 0xe3, +}; +static const unsigned char kat4006_nonce[] = {0}; +static const unsigned char kat4006_persstr[] = { + 0x1c, 0xa5, 0x8d, 0xbe, 0xbb, 0x6f, 0x45, 0xb7, 0xbc, 0xbe, 0x01, 0x9a, + 0xa6, 0x60, 0x27, 0xbe, 0xbb, 0xe1, 0xb7, 0xf7, 0x2e, 0x46, 0xb0, 0xfd, + 0x95, 0x59, 0x63, 0xd0, 0xba, 0x3b, 0xa5, 0x75, 0xa6, 0xec, 0xb6, 0xce, + 0xe9, 0xb9, 0x1c, 0x55, +}; +static const unsigned char kat4006_entropyinpr1[] = { + 0x7c, 0x24, 0x70, 0x3e, 0xe8, 0xd4, 0x54, 0x10, 0x58, 0xa4, 0x8a, 0xa6, + 0x67, 0xe1, 0xf8, 0xe0, 0x89, 0x5f, 0x51, 0x45, 0xa0, 0x70, 0x6b, 0xb7, + 0x5d, 0x98, 0x98, 0xf6, 0xdc, 0xe5, 0x82, 0x9e, 0x05, 0x40, 0x92, 0x52, + 0x5c, 0x4e, 0x62, 0xb3, +}; +static const unsigned char kat4006_addinpr1[] = { + 0x06, 0x3d, 0xa9, 0x9d, 0xbe, 0x15, 0x70, 0x77, 0xa3, 0x95, 0x9a, 0x12, + 0xe1, 0x12, 0x3f, 0x96, 0x76, 0x72, 0x15, 0xd0, 0x55, 0xc7, 0xc4, 0xf6, + 0x16, 0x69, 0x1a, 0x8f, 0x98, 0xec, 0x2e, 0x28, 0xe5, 0x04, 0x52, 0x80, + 0x05, 0xa7, 0xdf, 0x45, +}; +static const unsigned char kat4006_entropyinpr2[] = { + 0xc1, 0x3b, 0xd6, 0x87, 0x49, 0xd7, 0x7d, 0x35, 0xe8, 0xc9, 0x00, 0xa9, + 0x7a, 0x1d, 0x95, 0x4f, 0x6d, 0x7a, 0x96, 0x0b, 0xc4, 0x3c, 0xb2, 0xf7, + 0x8e, 0x5a, 0x24, 0x09, 0x5d, 0x4a, 0x42, 0x7c, 0xa7, 0x4d, 0x21, 0xc9, + 0xad, 0x97, 0x68, 0x51, +}; +static const unsigned char kat4006_addinpr2[] = { + 0x19, 0x54, 0x61, 0xf3, 0x1e, 0xcb, 0xef, 0x6a, 0xee, 0x22, 0x79, 0xaf, + 0x4f, 0x86, 0xd6, 0xd8, 0xe7, 0xb7, 0x80, 0x10, 0x3b, 0xc7, 0x7a, 0xe6, + 0x09, 0xab, 0xa2, 0xdc, 0xa0, 0xdb, 0xa7, 0xe2, 0x22, 0x99, 0x30, 0x8b, + 0x10, 0x9a, 0xe2, 0xad, +}; +static const unsigned char kat4006_retbits[] = { + 0x54, 0x9c, 0xd9, 0x20, 0x02, 0x42, 0xda, 0x73, 0x3a, 0xb4, 0xde, 0x01, + 0x8e, 0xa2, 0xde, 0x63, 0x8a, 0xe6, 0x7d, 0x87, 0x95, 0x39, 0xcb, 0x1d, + 0xef, 0x16, 0xf2, 0xb2, 0x74, 0x61, 0x88, 0x54, 0xfa, 0xf4, 0x21, 0x1d, + 0x92, 0x4f, 0xdc, 0x7a, 0x3b, 0x56, 0xa9, 0x87, 0x3a, 0x7b, 0x36, 0x8b, + 0x66, 0x7b, 0xb1, 0x34, 0x8c, 0x1b, 0x22, 0x49, 0x91, 0xa4, 0xc7, 0xe5, + 0xbe, 0x55, 0xc8, 0x0d, +}; +static const struct drbg_kat_pr_true kat4006_t = { + 0, kat4006_entropyin, kat4006_nonce, kat4006_persstr, + kat4006_entropyinpr1, kat4006_addinpr1, kat4006_entropyinpr2, + kat4006_addinpr2, kat4006_retbits +}; +static const struct drbg_kat kat4006 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4006_t +}; + +static const unsigned char kat4007_entropyin[] = { + 0x23, 0xb4, 0x32, 0xdb, 0xde, 0xc4, 0x3f, 0x7b, 0x00, 0x1d, 0xcb, 0xfb, + 0x05, 0xa8, 0xe5, 0xd8, 0xa4, 0xe3, 0x44, 0x69, 0x01, 0x32, 0xe0, 0xb2, + 0xb7, 0xef, 0x03, 0x62, 0x03, 0xaa, 0x70, 0x99, 0xc7, 0x3d, 0xcc, 0x39, + 0x86, 0xa2, 0x96, 0xc2, +}; +static const unsigned char kat4007_nonce[] = {0}; +static const unsigned char kat4007_persstr[] = { + 0x7f, 0x75, 0x85, 0xd6, 0xe3, 0x77, 0x00, 0x8a, 0xe8, 0x52, 0x85, 0x05, + 0xbc, 0x66, 0x0a, 0x64, 0x66, 0x79, 0x8b, 0x48, 0x18, 0x68, 0x6d, 0x36, + 0x1a, 0x9a, 0x2b, 0xd7, 0xe2, 0x64, 0x9d, 0xdf, 0x46, 0xbc, 0xec, 0xdb, + 0x89, 0x42, 0x02, 0x1f, +}; +static const unsigned char kat4007_entropyinpr1[] = { + 0x5b, 0x7d, 0xff, 0xf5, 0x27, 0xea, 0x21, 0xd6, 0xdc, 0xa7, 0x34, 0x34, + 0x7e, 0x01, 0xb7, 0xa4, 0x2f, 0xf0, 0x89, 0xac, 0x7b, 0xbc, 0x78, 0x19, + 0xec, 0x09, 0x6a, 0xde, 0x7f, 0xb5, 0xb7, 0x16, 0xd6, 0x76, 0x54, 0x89, + 0xb6, 0x39, 0x85, 0x3e, +}; +static const unsigned char kat4007_addinpr1[] = { + 0xa2, 0xff, 0xc2, 0x2d, 0x8a, 0xd7, 0x8f, 0x63, 0x6b, 0x3b, 0xec, 0x24, + 0xb5, 0x9b, 0x48, 0x7c, 0x1c, 0xed, 0x6b, 0x54, 0x26, 0xce, 0xac, 0xc8, + 0x11, 0x96, 0x6c, 0x57, 0xbd, 0x4b, 0xd7, 0xe7, 0x0a, 0x72, 0x70, 0x62, + 0xe1, 0x34, 0x07, 0x75, +}; +static const unsigned char kat4007_entropyinpr2[] = { + 0x15, 0x7e, 0x7b, 0x1c, 0x10, 0x50, 0xbc, 0x4b, 0x9d, 0xce, 0xba, 0xfa, + 0xb6, 0xb4, 0xf0, 0x35, 0x4d, 0x87, 0x2a, 0x3a, 0xb7, 0xf0, 0x08, 0xc7, + 0xfb, 0xda, 0x08, 0xad, 0x91, 0x94, 0x46, 0xd7, 0xb2, 0xc8, 0xc6, 0xd4, + 0xbf, 0x96, 0xd0, 0xf1, +}; +static const unsigned char kat4007_addinpr2[] = { + 0x1c, 0xf7, 0x9d, 0x49, 0xe4, 0x0b, 0x5f, 0xc2, 0x2d, 0x0b, 0xbf, 0x50, + 0xa4, 0x41, 0x4a, 0xea, 0x49, 0x86, 0x48, 0xbe, 0x18, 0xd3, 0x8c, 0x06, + 0xd5, 0xbc, 0x2d, 0x77, 0x9a, 0xd1, 0x02, 0x41, 0xb3, 0xc6, 0x3d, 0x9d, + 0x2b, 0x68, 0xd3, 0x89, +}; +static const unsigned char kat4007_retbits[] = { + 0x35, 0x3d, 0x83, 0x9b, 0xec, 0xd1, 0x59, 0x11, 0xee, 0xe7, 0x1b, 0x5f, + 0x64, 0xb1, 0x00, 0x17, 0x14, 0xde, 0x4b, 0x85, 0xfb, 0x85, 0x92, 0xd2, + 0xf3, 0x16, 0xd1, 0x27, 0x01, 0x6c, 0xa0, 0xa1, 0xf0, 0x36, 0x7d, 0x10, + 0x8e, 0x40, 0x5f, 0xf6, 0x85, 0xf3, 0x7c, 0x1a, 0xbe, 0x46, 0xd4, 0x67, + 0xa6, 0x04, 0xd8, 0x11, 0xe5, 0x83, 0x10, 0x6d, 0x63, 0xc8, 0x9d, 0x7e, + 0xfc, 0x9d, 0x1f, 0x9e, +}; +static const struct drbg_kat_pr_true kat4007_t = { + 1, kat4007_entropyin, kat4007_nonce, kat4007_persstr, + kat4007_entropyinpr1, kat4007_addinpr1, kat4007_entropyinpr2, + kat4007_addinpr2, kat4007_retbits +}; +static const struct drbg_kat kat4007 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4007_t +}; + +static const unsigned char kat4008_entropyin[] = { + 0x19, 0x85, 0x6e, 0xb8, 0x31, 0xe9, 0x3b, 0x84, 0xba, 0x15, 0x49, 0x6b, + 0xa8, 0xe9, 0xc4, 0x4c, 0x0d, 0xc2, 0xed, 0x07, 0x2d, 0x29, 0xfb, 0xbf, + 0x81, 0xc9, 0x86, 0x53, 0xf3, 0x7c, 0xc6, 0x99, 0xf4, 0xdd, 0xdd, 0x6c, + 0x68, 0x5d, 0x12, 0xf7, +}; +static const unsigned char kat4008_nonce[] = {0}; +static const unsigned char kat4008_persstr[] = { + 0x8d, 0x76, 0x35, 0x82, 0x01, 0x1b, 0x59, 0x00, 0xab, 0xe6, 0x60, 0xc8, + 0xf8, 0x66, 0x69, 0xec, 0x48, 0xc2, 0xa7, 0x03, 0x32, 0x62, 0x32, 0xe3, + 0x4d, 0xe0, 0x46, 0x6e, 0xad, 0xa1, 0x2b, 0x45, 0x9a, 0x4c, 0x7a, 0x2d, + 0xae, 0x89, 0x89, 0x7b, +}; +static const unsigned char kat4008_entropyinpr1[] = { + 0x05, 0x2b, 0x2e, 0x28, 0x8c, 0x4b, 0x0f, 0x94, 0xb1, 0xb8, 0x9e, 0xbc, + 0x99, 0x2b, 0x40, 0x0f, 0xd6, 0x44, 0x75, 0x9a, 0x16, 0x5b, 0x4c, 0x69, + 0x3e, 0xf9, 0x29, 0xe9, 0x97, 0x07, 0x60, 0xd2, 0x23, 0x52, 0x9b, 0xab, + 0x87, 0x97, 0xcf, 0x57, +}; +static const unsigned char kat4008_addinpr1[] = { + 0x1b, 0xcc, 0x0c, 0x9b, 0xd3, 0x4f, 0xf4, 0x90, 0x68, 0xa1, 0x32, 0x8f, + 0xdd, 0xaa, 0xcf, 0x9a, 0x32, 0xb1, 0x66, 0x11, 0x44, 0x58, 0x78, 0x4b, + 0x71, 0xb3, 0x10, 0x08, 0x6f, 0x22, 0x92, 0x8f, 0x37, 0x41, 0x6f, 0xc0, + 0x60, 0x22, 0x5b, 0x17, +}; +static const unsigned char kat4008_entropyinpr2[] = { + 0xfd, 0x33, 0xc6, 0xc1, 0x3d, 0xd6, 0xbc, 0xc0, 0x4b, 0xd7, 0xe2, 0x4c, + 0xd8, 0x02, 0xfc, 0xed, 0xfa, 0x5a, 0x0c, 0xca, 0x20, 0x7d, 0x9b, 0x50, + 0x91, 0x6a, 0x51, 0x2d, 0xc7, 0x44, 0xcd, 0x06, 0x5b, 0xb2, 0xbe, 0xfa, + 0xdf, 0x53, 0x96, 0x35, +}; +static const unsigned char kat4008_addinpr2[] = { + 0xc0, 0xc6, 0xb1, 0x06, 0xea, 0xdf, 0xe5, 0xb0, 0x84, 0xa6, 0xba, 0x02, + 0xe9, 0x18, 0x9d, 0x77, 0x4f, 0x61, 0x61, 0xe8, 0xaf, 0x36, 0x66, 0xa2, + 0x12, 0xa0, 0x91, 0x28, 0xea, 0x83, 0x33, 0xf0, 0xed, 0x14, 0xef, 0x54, + 0x4e, 0x13, 0xc0, 0x3e, +}; +static const unsigned char kat4008_retbits[] = { + 0x31, 0x0b, 0xa8, 0x34, 0xa4, 0x92, 0xa9, 0x7c, 0x27, 0x69, 0xfe, 0xe2, + 0x6a, 0x66, 0xa0, 0xb0, 0x4a, 0xe8, 0x60, 0x26, 0x3f, 0x1a, 0x75, 0xcd, + 0xd6, 0x1d, 0xb7, 0xf9, 0x70, 0x6f, 0x89, 0x2a, 0xe2, 0x43, 0xb3, 0xf8, + 0x6f, 0xef, 0x47, 0x50, 0x8d, 0xe9, 0x67, 0x0e, 0x78, 0xc2, 0x9f, 0x69, + 0x47, 0xb4, 0x93, 0xa5, 0x63, 0x86, 0xb0, 0xd5, 0x1f, 0x2a, 0x72, 0x9b, + 0x4d, 0xd2, 0x19, 0x4a, +}; +static const struct drbg_kat_pr_true kat4008_t = { + 2, kat4008_entropyin, kat4008_nonce, kat4008_persstr, + kat4008_entropyinpr1, kat4008_addinpr1, kat4008_entropyinpr2, + kat4008_addinpr2, kat4008_retbits +}; +static const struct drbg_kat kat4008 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4008_t +}; + +static const unsigned char kat4009_entropyin[] = { + 0x56, 0x06, 0x6f, 0x35, 0xd5, 0x29, 0xff, 0x27, 0x1a, 0xed, 0xe8, 0xb1, + 0x3c, 0x09, 0x7b, 0x02, 0xc3, 0xbb, 0x13, 0xc8, 0x4a, 0x04, 0x51, 0x8e, + 0xd3, 0xd6, 0xfb, 0xa4, 0xf0, 0xbf, 0x3a, 0x19, 0x6b, 0x37, 0x60, 0x9e, + 0x26, 0xb7, 0xaf, 0xa9, +}; +static const unsigned char kat4009_nonce[] = {0}; +static const unsigned char kat4009_persstr[] = { + 0x76, 0xe8, 0xd8, 0xd7, 0x13, 0xed, 0x43, 0xa9, 0xa1, 0xdc, 0x12, 0xd4, + 0x6d, 0x70, 0x37, 0xb1, 0x3f, 0xa1, 0x62, 0x74, 0x37, 0x31, 0x83, 0x41, + 0xac, 0xb2, 0xb8, 0x3c, 0x8c, 0x8a, 0x0c, 0x0a, 0x32, 0x70, 0xeb, 0x9a, + 0xb3, 0x4b, 0x4c, 0x74, +}; +static const unsigned char kat4009_entropyinpr1[] = { + 0x3f, 0x77, 0xa6, 0x62, 0x3d, 0x07, 0xc7, 0x50, 0x5a, 0x78, 0xec, 0x38, + 0xda, 0x6f, 0xea, 0x5f, 0x3d, 0x07, 0xe4, 0xfb, 0x95, 0xdd, 0x6d, 0x52, + 0xd9, 0x4c, 0x75, 0x0a, 0x4b, 0x85, 0x5f, 0x68, 0xec, 0xfb, 0x8a, 0x80, + 0xad, 0x42, 0x8a, 0xab, +}; +static const unsigned char kat4009_addinpr1[] = { + 0x21, 0x01, 0x51, 0xe3, 0xd0, 0x6b, 0x0c, 0x68, 0xa2, 0xce, 0x6f, 0x09, + 0x12, 0x25, 0x33, 0xa9, 0x4f, 0x68, 0x46, 0xac, 0x7d, 0xa5, 0x9d, 0xcc, + 0x20, 0xf1, 0xdf, 0x22, 0xcc, 0xe0, 0x48, 0x55, 0xc1, 0xec, 0x71, 0xcd, + 0x33, 0xd7, 0x0c, 0xa6, +}; +static const unsigned char kat4009_entropyinpr2[] = { + 0x0e, 0x2c, 0x68, 0x07, 0xce, 0x26, 0xb5, 0x68, 0xb9, 0xf0, 0xe5, 0xe2, + 0xdd, 0xb2, 0xcc, 0xbd, 0x4c, 0xc1, 0xc6, 0xbf, 0x97, 0x28, 0x0b, 0xd9, + 0xa9, 0x09, 0xea, 0x41, 0xcb, 0x5f, 0x63, 0x91, 0x14, 0x33, 0xb6, 0xac, + 0x9b, 0x0c, 0xbf, 0x6d, +}; +static const unsigned char kat4009_addinpr2[] = { + 0x44, 0x23, 0x5f, 0x35, 0xc5, 0xa2, 0xaf, 0x16, 0xa0, 0x2d, 0x59, 0xe7, + 0xc3, 0x32, 0x30, 0x8b, 0x39, 0x17, 0x7e, 0x2a, 0x85, 0xe0, 0x34, 0x05, + 0x1b, 0x73, 0x20, 0x9b, 0x29, 0x42, 0xf1, 0xb2, 0x5b, 0xa3, 0x70, 0xb0, + 0x51, 0xbb, 0x12, 0xbf, +}; +static const unsigned char kat4009_retbits[] = { + 0x6a, 0x1b, 0x46, 0xc3, 0x4f, 0x2e, 0xe8, 0xb0, 0xa6, 0x0a, 0x2b, 0x1f, + 0xc7, 0x7b, 0x05, 0x40, 0x01, 0x20, 0xc7, 0x83, 0x47, 0xc9, 0x35, 0x6e, + 0xcc, 0xbd, 0xf7, 0x3c, 0x97, 0xea, 0xe1, 0xea, 0xb7, 0x72, 0x06, 0xe2, + 0x35, 0xfb, 0xbe, 0x47, 0x22, 0x93, 0x7f, 0xbb, 0x78, 0x38, 0x7e, 0xd5, + 0x06, 0x02, 0xa8, 0x2f, 0x2d, 0x88, 0x0f, 0x6a, 0x01, 0x90, 0xd8, 0x46, + 0xe9, 0x8d, 0x65, 0xbe, +}; +static const struct drbg_kat_pr_true kat4009_t = { + 3, kat4009_entropyin, kat4009_nonce, kat4009_persstr, + kat4009_entropyinpr1, kat4009_addinpr1, kat4009_entropyinpr2, + kat4009_addinpr2, kat4009_retbits +}; +static const struct drbg_kat kat4009 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4009_t +}; + +static const unsigned char kat4010_entropyin[] = { + 0x33, 0xc8, 0x79, 0x5c, 0x0b, 0x61, 0xa0, 0x87, 0xc7, 0x60, 0x91, 0xb7, + 0x78, 0x71, 0x6a, 0xa7, 0x1a, 0x46, 0xde, 0x8e, 0x00, 0xcf, 0xbb, 0xe8, + 0xc6, 0x7f, 0xe3, 0xac, 0x76, 0xc8, 0x25, 0x82, 0x9e, 0x3a, 0x91, 0x03, + 0x0c, 0xfb, 0xd0, 0xfd, +}; +static const unsigned char kat4010_nonce[] = {0}; +static const unsigned char kat4010_persstr[] = { + 0xf7, 0x6d, 0x80, 0x17, 0x28, 0x71, 0xf7, 0x49, 0x43, 0x84, 0x36, 0xd0, + 0x72, 0xfd, 0xa5, 0x06, 0x98, 0xda, 0x15, 0x1b, 0x71, 0x3f, 0xee, 0xfc, + 0x38, 0x59, 0x7a, 0x12, 0xd8, 0xb8, 0x1c, 0xa0, 0x09, 0xea, 0xf0, 0xa6, + 0xe9, 0xfd, 0xd0, 0xfd, +}; +static const unsigned char kat4010_entropyinpr1[] = { + 0x5b, 0x45, 0x6b, 0x6b, 0xd9, 0x31, 0xb0, 0xa5, 0x7c, 0x1c, 0x6a, 0x96, + 0x8f, 0xf2, 0xa3, 0x98, 0xce, 0xba, 0xd4, 0xfb, 0x00, 0x29, 0x43, 0x31, + 0x52, 0x3f, 0xa7, 0x58, 0x99, 0x00, 0xcd, 0xb0, 0xb7, 0x7b, 0x4a, 0xfb, + 0x83, 0xc3, 0xfe, 0xb4, +}; +static const unsigned char kat4010_addinpr1[] = { + 0x5d, 0x61, 0xf8, 0x2e, 0xee, 0x6f, 0x89, 0xfa, 0x57, 0xb3, 0x32, 0x66, + 0xda, 0xf6, 0x40, 0x3d, 0xbf, 0x6f, 0x86, 0xdc, 0xad, 0x92, 0x0e, 0xd9, + 0x64, 0x9d, 0x0c, 0x57, 0xf5, 0x9a, 0xef, 0xf3, 0xa1, 0x19, 0xb7, 0x64, + 0x05, 0xeb, 0x7f, 0xe9, +}; +static const unsigned char kat4010_entropyinpr2[] = { + 0x08, 0xf3, 0xe9, 0x96, 0xa4, 0x71, 0x1a, 0xa2, 0x44, 0x4d, 0xcb, 0x05, + 0xf5, 0x0c, 0xd0, 0x6c, 0x6a, 0x8c, 0xa2, 0xcd, 0x2c, 0xec, 0x2a, 0xfb, + 0x44, 0x49, 0x16, 0x6e, 0x47, 0xcc, 0x9a, 0xf3, 0xae, 0xa2, 0xdd, 0xe0, + 0xa1, 0xf8, 0x51, 0x8d, +}; +static const unsigned char kat4010_addinpr2[] = { + 0x12, 0x38, 0x98, 0x04, 0x05, 0x05, 0x5f, 0xf7, 0x07, 0x6c, 0x8e, 0x2f, + 0x2f, 0xc8, 0xf4, 0x16, 0xa6, 0x95, 0x55, 0x12, 0xe6, 0x12, 0xcb, 0xbe, + 0x7e, 0x7e, 0x46, 0x7a, 0x90, 0xab, 0xe9, 0x26, 0x1e, 0x6d, 0x0b, 0x5b, + 0xfe, 0x1e, 0x88, 0xa3, +}; +static const unsigned char kat4010_retbits[] = { + 0xb0, 0xa2, 0x0a, 0x0e, 0x04, 0x48, 0x2a, 0xac, 0xff, 0xf5, 0xb3, 0x55, + 0x55, 0x28, 0x56, 0x06, 0x6b, 0x19, 0xbd, 0xd0, 0x4f, 0x9b, 0x37, 0xc6, + 0x99, 0x9a, 0x62, 0x3a, 0xbd, 0xfb, 0x34, 0x7f, 0x99, 0x03, 0x0c, 0xef, + 0xda, 0x9e, 0x6c, 0x3c, 0x90, 0x5a, 0x70, 0xbf, 0x6e, 0x0f, 0x29, 0x96, + 0xe7, 0xa3, 0x94, 0xde, 0x2c, 0xce, 0x1c, 0x95, 0xf1, 0x3f, 0x93, 0x5f, + 0xee, 0x2a, 0xdc, 0x99, +}; +static const struct drbg_kat_pr_true kat4010_t = { + 4, kat4010_entropyin, kat4010_nonce, kat4010_persstr, + kat4010_entropyinpr1, kat4010_addinpr1, kat4010_entropyinpr2, + kat4010_addinpr2, kat4010_retbits +}; +static const struct drbg_kat kat4010 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4010_t +}; + +static const unsigned char kat4011_entropyin[] = { + 0x30, 0xe2, 0x06, 0xb7, 0x48, 0xa9, 0x6d, 0xbf, 0x9a, 0xe0, 0xe1, 0xd8, + 0x8d, 0xc4, 0x56, 0xff, 0x95, 0xab, 0xe4, 0x56, 0xbb, 0xdf, 0x65, 0xba, + 0xb1, 0xea, 0x00, 0xc4, 0xc7, 0xe4, 0xf8, 0xad, 0xcf, 0x5e, 0x0a, 0x44, + 0x84, 0xb1, 0xa0, 0x92, +}; +static const unsigned char kat4011_nonce[] = {0}; +static const unsigned char kat4011_persstr[] = { + 0x34, 0x3f, 0x74, 0x67, 0xea, 0x7b, 0x15, 0x6b, 0x6e, 0x82, 0x19, 0x32, + 0x24, 0xd5, 0xbb, 0xd5, 0x06, 0xf6, 0x7d, 0xbc, 0xa1, 0x94, 0x0e, 0x8d, + 0xe7, 0xac, 0x77, 0xe0, 0x28, 0x24, 0x23, 0xe5, 0x43, 0x90, 0x72, 0x3a, + 0xc4, 0x7b, 0x53, 0xc0, +}; +static const unsigned char kat4011_entropyinpr1[] = { + 0x28, 0x7e, 0x92, 0xd2, 0x86, 0xd3, 0x9e, 0x12, 0xc8, 0x27, 0x32, 0x90, + 0x0b, 0x90, 0x29, 0x3f, 0x63, 0xc6, 0x3d, 0x1f, 0x5e, 0xee, 0x56, 0x23, + 0x74, 0xe5, 0xd3, 0x29, 0xcd, 0x69, 0x25, 0x3e, 0x2e, 0x83, 0x61, 0xd0, + 0xd2, 0xa0, 0x46, 0x24, +}; +static const unsigned char kat4011_addinpr1[] = { + 0x1a, 0x08, 0xff, 0x30, 0xf8, 0x38, 0x64, 0x14, 0x6e, 0x73, 0xb4, 0x26, + 0x5f, 0xac, 0xae, 0x4d, 0x9f, 0x87, 0x20, 0x51, 0xcf, 0x11, 0x32, 0xfb, + 0x41, 0xcb, 0xc9, 0xb4, 0xf5, 0x80, 0xb1, 0xd8, 0x62, 0x3a, 0x8f, 0x14, + 0x6a, 0x5b, 0xc6, 0xd4, +}; +static const unsigned char kat4011_entropyinpr2[] = { + 0xec, 0x38, 0x52, 0x88, 0x7e, 0x7c, 0x2a, 0xf9, 0x23, 0x76, 0x69, 0xef, + 0x24, 0x09, 0x9c, 0xa3, 0xf8, 0x65, 0xe6, 0x83, 0xfe, 0x6f, 0xcd, 0x05, + 0x95, 0xfd, 0x9a, 0x13, 0xbb, 0x43, 0x90, 0x5a, 0x05, 0x2b, 0x7e, 0xea, + 0x43, 0x62, 0x06, 0x4a, +}; +static const unsigned char kat4011_addinpr2[] = { + 0x38, 0x7a, 0x41, 0xb5, 0xca, 0xb0, 0xc6, 0xac, 0x18, 0x2c, 0x5f, 0x13, + 0x76, 0xf1, 0x2e, 0xc2, 0xdb, 0xd8, 0x21, 0xf7, 0x04, 0x83, 0x42, 0x6c, + 0xa4, 0x80, 0x16, 0x27, 0x5b, 0xa9, 0x8d, 0x6f, 0x37, 0x00, 0xe8, 0xd8, + 0xcc, 0xc2, 0x03, 0xa6, +}; +static const unsigned char kat4011_retbits[] = { + 0x97, 0xf5, 0x6a, 0xcc, 0x3f, 0xfa, 0x66, 0x3c, 0x3b, 0x5b, 0x34, 0x98, + 0xea, 0x3f, 0x78, 0x71, 0xaf, 0xf4, 0x64, 0x97, 0xdc, 0xa1, 0xd9, 0x3d, + 0x5b, 0x9f, 0xa3, 0x84, 0x5b, 0x91, 0xf0, 0x20, 0x13, 0xc2, 0x3e, 0x90, + 0x21, 0xf1, 0x65, 0xa2, 0x7d, 0x98, 0x51, 0x5f, 0x4c, 0xca, 0xc2, 0x3c, + 0x35, 0x45, 0x39, 0x6b, 0x59, 0x63, 0x80, 0x38, 0x86, 0xb0, 0x23, 0x5a, + 0x04, 0xa7, 0xc5, 0xed, +}; +static const struct drbg_kat_pr_true kat4011_t = { + 5, kat4011_entropyin, kat4011_nonce, kat4011_persstr, + kat4011_entropyinpr1, kat4011_addinpr1, kat4011_entropyinpr2, + kat4011_addinpr2, kat4011_retbits +}; +static const struct drbg_kat kat4011 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4011_t +}; + +static const unsigned char kat4012_entropyin[] = { + 0xac, 0x9e, 0x77, 0x8e, 0xbf, 0xde, 0x8c, 0x77, 0xe2, 0x8c, 0x32, 0x36, + 0xba, 0x1a, 0xdf, 0x00, 0x1e, 0x28, 0x05, 0x5c, 0x49, 0x6e, 0xe3, 0x8a, + 0xb6, 0x26, 0xd5, 0xaa, 0x94, 0xad, 0xa7, 0x20, 0xd7, 0x54, 0x6e, 0x62, + 0x66, 0x25, 0x42, 0x0a, +}; +static const unsigned char kat4012_nonce[] = {0}; +static const unsigned char kat4012_persstr[] = { + 0xde, 0xa2, 0x68, 0x43, 0x8f, 0x4c, 0xc4, 0x7b, 0xe0, 0x05, 0x9c, 0x48, + 0x15, 0x3b, 0x90, 0x02, 0x25, 0xe3, 0xca, 0xa6, 0x0f, 0xc7, 0x68, 0x14, + 0xc0, 0x12, 0xa5, 0xc4, 0xf6, 0x62, 0xca, 0x9c, 0xc6, 0xa4, 0x74, 0xef, + 0x6f, 0xc9, 0xbb, 0x5d, +}; +static const unsigned char kat4012_entropyinpr1[] = { + 0xd4, 0xb1, 0x77, 0x5c, 0xa5, 0x17, 0x4e, 0xe2, 0xe3, 0x31, 0xef, 0x09, + 0x68, 0xac, 0xd2, 0x06, 0xe8, 0xe1, 0x61, 0x9c, 0xf2, 0x21, 0x34, 0xfb, + 0x5f, 0x64, 0x12, 0x98, 0x4a, 0xe8, 0x84, 0xcf, 0x66, 0xe2, 0xd7, 0x99, + 0x94, 0xd3, 0xd4, 0x1a, +}; +static const unsigned char kat4012_addinpr1[] = { + 0x8c, 0xdc, 0x1b, 0x9d, 0xe0, 0xee, 0xb9, 0x8e, 0x4d, 0x0c, 0x90, 0x1f, + 0xa2, 0x56, 0x0a, 0xc2, 0xc9, 0xb8, 0x29, 0x05, 0x52, 0x60, 0xc8, 0x6c, + 0xc4, 0x3d, 0x42, 0x14, 0x41, 0x20, 0x85, 0x55, 0x84, 0xd5, 0x68, 0x93, + 0x81, 0xe0, 0x99, 0x7a, +}; +static const unsigned char kat4012_entropyinpr2[] = { + 0x14, 0x48, 0x4e, 0x90, 0xe7, 0x09, 0x69, 0xd1, 0xb0, 0x95, 0x0d, 0x41, + 0x58, 0x45, 0x29, 0x1c, 0x91, 0x2c, 0x86, 0x19, 0x4c, 0x87, 0x59, 0x4d, + 0xd3, 0x79, 0x7f, 0x8c, 0x7a, 0x29, 0xf9, 0x43, 0x88, 0xdf, 0xd9, 0x1c, + 0x44, 0xc8, 0x26, 0x17, +}; +static const unsigned char kat4012_addinpr2[] = { + 0xb1, 0x7d, 0x75, 0x28, 0x07, 0x5a, 0x21, 0x31, 0x41, 0x39, 0x16, 0x15, + 0xab, 0x9a, 0x43, 0x4b, 0x77, 0xe7, 0x48, 0x28, 0x6f, 0x2d, 0x36, 0x44, + 0x8e, 0x3e, 0x37, 0xe6, 0xbf, 0x42, 0xd0, 0x5d, 0x61, 0x9f, 0x57, 0x73, + 0x75, 0x6a, 0x03, 0x14, +}; +static const unsigned char kat4012_retbits[] = { + 0x4a, 0x29, 0x56, 0x7b, 0x43, 0x73, 0x1e, 0x54, 0x1b, 0xde, 0x37, 0xd9, + 0x6c, 0xd5, 0x24, 0x45, 0x82, 0xa7, 0xc3, 0x72, 0xc9, 0x16, 0x3b, 0x94, + 0x38, 0x1d, 0x42, 0x7f, 0x0e, 0x8e, 0x66, 0xb4, 0xce, 0xa5, 0x3f, 0xea, + 0x2d, 0xe6, 0x74, 0x50, 0xe3, 0x59, 0x5d, 0x51, 0x1e, 0xee, 0xc0, 0xe5, + 0x92, 0x00, 0x92, 0x31, 0x69, 0xbe, 0x45, 0x83, 0x9b, 0x42, 0x34, 0x8b, + 0x34, 0x55, 0x1c, 0x1c, +}; +static const struct drbg_kat_pr_true kat4012_t = { + 6, kat4012_entropyin, kat4012_nonce, kat4012_persstr, + kat4012_entropyinpr1, kat4012_addinpr1, kat4012_entropyinpr2, + kat4012_addinpr2, kat4012_retbits +}; +static const struct drbg_kat kat4012 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4012_t +}; + +static const unsigned char kat4013_entropyin[] = { + 0x08, 0xf3, 0xec, 0x3f, 0x8c, 0xd4, 0xbc, 0xcf, 0x69, 0x45, 0xb8, 0x8b, + 0xbd, 0x2f, 0xb2, 0x3f, 0xfc, 0xcd, 0x7f, 0x9e, 0x96, 0x88, 0xef, 0x6f, + 0xe3, 0xfb, 0x82, 0x92, 0x7a, 0xac, 0xb7, 0x23, 0x0c, 0x60, 0xbd, 0x4e, + 0x8b, 0x13, 0xb2, 0xc9, +}; +static const unsigned char kat4013_nonce[] = {0}; +static const unsigned char kat4013_persstr[] = { + 0xa6, 0x4b, 0x0a, 0x67, 0x1d, 0x12, 0xe5, 0xc0, 0x1b, 0x98, 0x32, 0x1a, + 0x76, 0x43, 0x00, 0x04, 0xc1, 0x34, 0x61, 0x6d, 0x09, 0xcc, 0x8f, 0xa3, + 0x93, 0xf7, 0xf5, 0xdc, 0xe2, 0x75, 0xfc, 0x96, 0xcd, 0x85, 0x0f, 0x8a, + 0x16, 0x62, 0x7f, 0xfc, +}; +static const unsigned char kat4013_entropyinpr1[] = { + 0x22, 0x9a, 0x7a, 0xcd, 0xda, 0x3d, 0x73, 0xe8, 0x7e, 0x98, 0x58, 0x53, + 0x7b, 0xc0, 0x2a, 0x53, 0x7d, 0x91, 0xf1, 0x10, 0xac, 0x3a, 0xa7, 0xf4, + 0x63, 0x9f, 0xcc, 0x6e, 0xa0, 0x62, 0xee, 0xd8, 0xee, 0xf7, 0x28, 0x9f, + 0x7f, 0x08, 0x57, 0x44, +}; +static const unsigned char kat4013_addinpr1[] = { + 0xed, 0x48, 0xa1, 0xd6, 0x40, 0xf6, 0x82, 0xbf, 0xcc, 0x92, 0xd2, 0x15, + 0x87, 0x9f, 0x59, 0xaf, 0x71, 0x53, 0x81, 0x58, 0x59, 0x25, 0xfe, 0xc5, + 0xf1, 0x0e, 0x98, 0xf6, 0xb7, 0x97, 0x47, 0xde, 0x72, 0xf2, 0xfc, 0x22, + 0xaa, 0x0e, 0xc0, 0xa1, +}; +static const unsigned char kat4013_entropyinpr2[] = { + 0x16, 0x64, 0x63, 0x98, 0xa5, 0x3f, 0x07, 0x60, 0x72, 0xbc, 0xa5, 0x18, + 0x25, 0x2b, 0x9c, 0x0b, 0xb7, 0xe8, 0x7d, 0xac, 0xd3, 0xf8, 0x76, 0x9c, + 0xf5, 0x33, 0x7b, 0x46, 0xc3, 0x29, 0x48, 0x1d, 0xd0, 0x58, 0x81, 0x9a, + 0xbe, 0x3f, 0x43, 0x1a, +}; +static const unsigned char kat4013_addinpr2[] = { + 0x2e, 0xa1, 0xec, 0x94, 0xf0, 0x83, 0xd6, 0xb5, 0x3c, 0x43, 0xf2, 0xc1, + 0xf0, 0xd8, 0xad, 0x84, 0xf9, 0x81, 0x46, 0x76, 0x88, 0x66, 0x05, 0x61, + 0xc7, 0xe1, 0xca, 0x5e, 0x8a, 0x9a, 0x11, 0x3d, 0x5c, 0xf3, 0x6d, 0x03, + 0x09, 0x69, 0x0d, 0x0e, +}; +static const unsigned char kat4013_retbits[] = { + 0xc3, 0xcd, 0x7a, 0x06, 0xa9, 0x75, 0x92, 0xe8, 0xff, 0x53, 0x02, 0x7d, + 0x9f, 0x86, 0xc0, 0x22, 0xd4, 0xa9, 0x60, 0xe8, 0x58, 0x39, 0x74, 0x8f, + 0x84, 0xe5, 0x1b, 0x06, 0xbf, 0x48, 0x4f, 0x75, 0x3f, 0xeb, 0x92, 0x50, + 0x22, 0x47, 0x29, 0x76, 0x41, 0x00, 0x63, 0x50, 0x55, 0x70, 0xec, 0xc3, + 0x0d, 0xa0, 0x58, 0xee, 0x8d, 0xb0, 0x4e, 0x04, 0x30, 0x30, 0x1b, 0xfb, + 0x4a, 0xdf, 0xd3, 0xc7, +}; +static const struct drbg_kat_pr_true kat4013_t = { + 7, kat4013_entropyin, kat4013_nonce, kat4013_persstr, + kat4013_entropyinpr1, kat4013_addinpr1, kat4013_entropyinpr2, + kat4013_addinpr2, kat4013_retbits +}; +static const struct drbg_kat kat4013 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4013_t +}; + +static const unsigned char kat4014_entropyin[] = { + 0x4a, 0x79, 0xc5, 0x8b, 0x2d, 0x7b, 0x22, 0x33, 0x9f, 0x65, 0x6c, 0xe1, + 0x40, 0x0e, 0x94, 0x21, 0xc6, 0x75, 0x43, 0xec, 0xa1, 0x87, 0x7e, 0x1f, + 0x14, 0xf1, 0xbe, 0xc3, 0x92, 0xeb, 0x5f, 0xef, 0xbc, 0x61, 0x22, 0x9d, + 0x20, 0x42, 0x27, 0x2c, +}; +static const unsigned char kat4014_nonce[] = {0}; +static const unsigned char kat4014_persstr[] = { + 0x7e, 0x3d, 0x63, 0xc1, 0x24, 0xfe, 0x87, 0x9a, 0xd7, 0x96, 0x3b, 0xc3, + 0x12, 0x97, 0x88, 0x34, 0x25, 0xdc, 0xcc, 0x4d, 0x9e, 0xb1, 0x93, 0x96, + 0x3f, 0x8a, 0x62, 0x0b, 0xf6, 0xe7, 0x6d, 0xaa, 0x9e, 0xc4, 0x9a, 0x95, + 0xe2, 0xfa, 0x36, 0xfc, +}; +static const unsigned char kat4014_entropyinpr1[] = { + 0x63, 0x08, 0x18, 0x1a, 0x4f, 0xf2, 0x5a, 0xa7, 0xb6, 0x9b, 0x89, 0x29, + 0xf6, 0xb4, 0x9a, 0x84, 0x43, 0x9a, 0x1a, 0x4b, 0x61, 0x59, 0xc7, 0x14, + 0xf6, 0x1f, 0x02, 0x60, 0xea, 0x89, 0xa4, 0x20, 0x79, 0x3b, 0x16, 0x31, + 0xe5, 0x87, 0xf8, 0x68, +}; +static const unsigned char kat4014_addinpr1[] = { + 0xd1, 0xcd, 0x93, 0xbb, 0xa9, 0x90, 0x78, 0x4e, 0x16, 0xae, 0x61, 0xdb, + 0x9d, 0xf5, 0x23, 0xce, 0xe5, 0x2f, 0xde, 0xf2, 0x63, 0xbe, 0x74, 0x7b, + 0x01, 0x48, 0xb3, 0x8f, 0x7c, 0x10, 0x56, 0xcc, 0x60, 0x10, 0xd6, 0x07, + 0x8d, 0x4a, 0x2d, 0xf6, +}; +static const unsigned char kat4014_entropyinpr2[] = { + 0xdb, 0x4d, 0xa3, 0xb1, 0x20, 0x60, 0x11, 0xec, 0x36, 0x39, 0x18, 0x0f, + 0x83, 0xee, 0xf9, 0x3b, 0xc1, 0x68, 0xfd, 0xfc, 0x6c, 0x0c, 0x2a, 0xef, + 0x2d, 0xbd, 0x3e, 0xa2, 0x3e, 0x7a, 0x19, 0xb1, 0x59, 0xe5, 0x82, 0xd4, + 0xe0, 0xea, 0x7e, 0xde, +}; +static const unsigned char kat4014_addinpr2[] = { + 0x16, 0x26, 0x7d, 0x85, 0x22, 0x68, 0x0f, 0x54, 0x7a, 0x6c, 0x54, 0x50, + 0x63, 0x8c, 0x37, 0x3f, 0x71, 0x60, 0x20, 0x6e, 0xdb, 0xb3, 0x67, 0xf7, + 0x9f, 0x14, 0xb0, 0x16, 0x0e, 0xa6, 0x42, 0xe1, 0x51, 0x91, 0x57, 0x17, + 0x62, 0x55, 0xba, 0x0c, +}; +static const unsigned char kat4014_retbits[] = { + 0xa6, 0x61, 0x91, 0x31, 0xab, 0xbe, 0x25, 0xfe, 0x40, 0x56, 0x74, 0x0a, + 0x52, 0x03, 0x21, 0xfa, 0x1e, 0x5e, 0x9b, 0xc6, 0x61, 0xba, 0x2b, 0x52, + 0xce, 0xa1, 0xeb, 0x36, 0x82, 0x86, 0x18, 0xa9, 0x49, 0x79, 0x6a, 0xf2, + 0xf1, 0xf9, 0x1e, 0xa3, 0xa0, 0xfd, 0x8e, 0x76, 0xa5, 0x21, 0x20, 0x1b, + 0x5d, 0xab, 0x55, 0x74, 0xdf, 0xcb, 0x8d, 0x35, 0x14, 0x34, 0xff, 0xca, + 0xe1, 0x83, 0x02, 0x1e, +}; +static const struct drbg_kat_pr_true kat4014_t = { + 8, kat4014_entropyin, kat4014_nonce, kat4014_persstr, + kat4014_entropyinpr1, kat4014_addinpr1, kat4014_entropyinpr2, + kat4014_addinpr2, kat4014_retbits +}; +static const struct drbg_kat kat4014 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4014_t +}; + +static const unsigned char kat4015_entropyin[] = { + 0x1a, 0xc8, 0x0c, 0x4d, 0xa7, 0x66, 0x72, 0x28, 0xc9, 0xd2, 0x4f, 0x95, + 0xec, 0xd9, 0xf5, 0x41, 0xa0, 0x07, 0xd6, 0x3f, 0xe9, 0xb0, 0x33, 0x96, + 0x5d, 0x3b, 0x7b, 0x2c, 0x54, 0x53, 0x4e, 0x5d, 0xcb, 0xe3, 0x72, 0x46, + 0x09, 0xd9, 0xec, 0xd5, +}; +static const unsigned char kat4015_nonce[] = {0}; +static const unsigned char kat4015_persstr[] = { + 0xf9, 0x64, 0x7f, 0x7c, 0x01, 0x0a, 0x65, 0x64, 0x9e, 0xe1, 0x9a, 0xcb, + 0x40, 0x4b, 0x0d, 0x8b, 0xbb, 0xa1, 0x5b, 0x2b, 0x7e, 0x26, 0xd2, 0xaa, + 0xdd, 0x44, 0x8b, 0x57, 0x5c, 0xc7, 0xb3, 0xdd, 0x3e, 0x79, 0x68, 0xac, + 0xc1, 0xe1, 0x1d, 0xe1, +}; +static const unsigned char kat4015_entropyinpr1[] = { + 0x35, 0xaf, 0x0b, 0xac, 0x76, 0xca, 0x9a, 0x0f, 0xf0, 0x73, 0xee, 0x37, + 0x36, 0x87, 0xac, 0xfd, 0x04, 0xf4, 0x64, 0x22, 0x57, 0x2a, 0xf3, 0x22, + 0xe9, 0x32, 0x04, 0x58, 0xf7, 0x62, 0xc1, 0xa0, 0xf7, 0xe4, 0xda, 0xab, + 0xca, 0xb9, 0xf3, 0x07, +}; +static const unsigned char kat4015_addinpr1[] = { + 0x7d, 0x74, 0x21, 0xac, 0xa6, 0xaf, 0x7d, 0x05, 0xa4, 0x5d, 0x50, 0x64, + 0x46, 0xca, 0xbe, 0xc1, 0xe9, 0x5c, 0x88, 0x6c, 0x1a, 0x5b, 0xd4, 0x85, + 0xea, 0xba, 0x42, 0x76, 0x8c, 0x2d, 0x1e, 0xb5, 0x1b, 0x34, 0x55, 0x3f, + 0x62, 0x83, 0x07, 0x0a, +}; +static const unsigned char kat4015_entropyinpr2[] = { + 0x52, 0xba, 0x71, 0x2a, 0xed, 0xe6, 0x56, 0x17, 0x25, 0xed, 0x8c, 0xf0, + 0xef, 0xaa, 0x2f, 0x0a, 0xf2, 0xa1, 0x7b, 0x38, 0x23, 0xd2, 0x21, 0x99, + 0x71, 0xaa, 0x6d, 0x17, 0x57, 0xfe, 0x22, 0x6a, 0xc4, 0x8c, 0xff, 0xdb, + 0xba, 0x73, 0xe7, 0x54, +}; +static const unsigned char kat4015_addinpr2[] = { + 0x46, 0x83, 0x52, 0x4c, 0xc5, 0xf9, 0x8a, 0xef, 0x69, 0xb3, 0xd2, 0x0d, + 0x4e, 0x67, 0x5b, 0x54, 0x5b, 0xf0, 0x07, 0x7c, 0x4e, 0x29, 0x37, 0xf3, + 0xd3, 0xbd, 0xde, 0xf9, 0x63, 0xd8, 0xa9, 0x8e, 0xca, 0x32, 0xf7, 0x55, + 0x6e, 0x39, 0x48, 0xd6, +}; +static const unsigned char kat4015_retbits[] = { + 0xe9, 0x97, 0x3b, 0xa7, 0x86, 0xfc, 0xcc, 0xeb, 0x33, 0x17, 0x5f, 0xb9, + 0xd7, 0x8f, 0xd9, 0xdd, 0x57, 0x9a, 0x13, 0x9e, 0x3a, 0x60, 0x56, 0xaa, + 0xac, 0xb1, 0x67, 0xe2, 0x71, 0xc2, 0x47, 0x64, 0xc5, 0x14, 0x39, 0xd7, + 0x14, 0x02, 0xe0, 0xe1, 0x40, 0x88, 0x9c, 0x62, 0x1b, 0xc0, 0xab, 0x78, + 0xfb, 0xe9, 0x71, 0xfb, 0x59, 0x60, 0xe4, 0xcb, 0x24, 0xab, 0x15, 0x18, + 0x96, 0xf6, 0x6e, 0x86, +}; +static const struct drbg_kat_pr_true kat4015_t = { + 9, kat4015_entropyin, kat4015_nonce, kat4015_persstr, + kat4015_entropyinpr1, kat4015_addinpr1, kat4015_entropyinpr2, + kat4015_addinpr2, kat4015_retbits +}; +static const struct drbg_kat kat4015 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4015_t +}; + +static const unsigned char kat4016_entropyin[] = { + 0x68, 0x7c, 0xfa, 0x38, 0x38, 0xc0, 0xc2, 0x84, 0x3d, 0x48, 0x78, 0xcb, + 0xec, 0x88, 0xe1, 0xfd, 0x12, 0x07, 0x10, 0xe7, 0x74, 0xfc, 0x85, 0xc9, + 0x22, 0x1c, 0x28, 0x98, 0x68, 0x95, 0x5b, 0xaf, 0x2a, 0x26, 0xe5, 0x33, + 0xe8, 0xf2, 0xef, 0x6c, +}; +static const unsigned char kat4016_nonce[] = {0}; +static const unsigned char kat4016_persstr[] = { + 0xa5, 0x8d, 0x1c, 0x01, 0xc2, 0xe3, 0xeb, 0xe0, 0xfb, 0xd3, 0x28, 0xa7, + 0xae, 0x1f, 0x0c, 0x80, 0x2d, 0xde, 0x30, 0xf6, 0xdc, 0x7b, 0x72, 0xc3, + 0xe3, 0xa0, 0x25, 0x6b, 0x22, 0xfc, 0xdf, 0x2d, 0x9c, 0x52, 0xa0, 0x53, + 0xe8, 0x8e, 0xa1, 0x86, +}; +static const unsigned char kat4016_entropyinpr1[] = { + 0xf9, 0x12, 0xa6, 0x4d, 0x53, 0x2a, 0x34, 0xb3, 0x19, 0x1c, 0x92, 0x58, + 0x82, 0x92, 0xfc, 0xd3, 0xda, 0xc1, 0x38, 0xce, 0x2b, 0xcf, 0xc5, 0x9e, + 0xfa, 0x37, 0xb2, 0x08, 0x93, 0xcf, 0x04, 0x41, 0xa4, 0x3a, 0x11, 0x30, + 0x88, 0x5c, 0x83, 0x43, +}; +static const unsigned char kat4016_addinpr1[] = { + 0x02, 0x51, 0x1b, 0xb4, 0xad, 0x0b, 0x4e, 0x5a, 0xe1, 0xfb, 0x4b, 0x06, + 0x19, 0x84, 0xce, 0xd6, 0x95, 0xaf, 0x0f, 0x1a, 0x63, 0x91, 0x28, 0x9f, + 0x0c, 0x3e, 0x1d, 0x42, 0x73, 0xf3, 0xa6, 0x93, 0x8a, 0x04, 0x5f, 0x63, + 0x1b, 0x41, 0xe9, 0x30, +}; +static const unsigned char kat4016_entropyinpr2[] = { + 0xdf, 0xee, 0x0f, 0x75, 0x1e, 0x0b, 0xb0, 0x60, 0x62, 0x0a, 0xdd, 0x45, + 0xb2, 0xe9, 0x1f, 0x41, 0xb5, 0x93, 0x9f, 0x55, 0x71, 0xfb, 0x90, 0x92, + 0xef, 0x96, 0x8d, 0x8a, 0xe3, 0x98, 0xb9, 0x70, 0x89, 0xb0, 0xad, 0x08, + 0xd5, 0xd1, 0x64, 0x52, +}; +static const unsigned char kat4016_addinpr2[] = { + 0x96, 0x8a, 0xaf, 0x5a, 0x57, 0x58, 0x01, 0x91, 0x35, 0x99, 0x4f, 0x9c, + 0x58, 0x20, 0x31, 0xbd, 0xac, 0x6b, 0xb9, 0xe5, 0xc4, 0x21, 0x0a, 0x2c, + 0x8d, 0x65, 0xcd, 0x1c, 0xab, 0xe7, 0xd3, 0x10, 0xe1, 0xfa, 0x68, 0xcb, + 0x5e, 0xec, 0x3a, 0xdc, +}; +static const unsigned char kat4016_retbits[] = { + 0x1c, 0x16, 0xed, 0xd7, 0xf3, 0x30, 0x80, 0x43, 0xdf, 0x44, 0x95, 0x92, + 0x73, 0xe7, 0xfd, 0x42, 0x15, 0xbd, 0x3a, 0xd8, 0x59, 0x94, 0xbc, 0xc2, + 0x41, 0x9f, 0xe6, 0xff, 0x8f, 0x4b, 0x1c, 0x6b, 0xca, 0xd8, 0x57, 0xe5, + 0xf3, 0x6a, 0xc3, 0x53, 0xef, 0xb5, 0x2b, 0x57, 0xd1, 0x9d, 0x2a, 0x6f, + 0xf8, 0xc4, 0x15, 0x64, 0xef, 0xbe, 0x67, 0x04, 0xc8, 0xe0, 0x83, 0x8b, + 0x90, 0x37, 0x49, 0x8c, +}; +static const struct drbg_kat_pr_true kat4016_t = { + 10, kat4016_entropyin, kat4016_nonce, kat4016_persstr, + kat4016_entropyinpr1, kat4016_addinpr1, kat4016_entropyinpr2, + kat4016_addinpr2, kat4016_retbits +}; +static const struct drbg_kat kat4016 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4016_t +}; + +static const unsigned char kat4017_entropyin[] = { + 0xbc, 0xee, 0x68, 0x2c, 0x54, 0xa0, 0xbe, 0xf1, 0xa1, 0x4f, 0x86, 0xea, + 0x88, 0xab, 0xb0, 0xa4, 0x7f, 0xf6, 0x33, 0x60, 0x84, 0x17, 0x0c, 0xb1, + 0x6f, 0xe7, 0x54, 0xec, 0xbc, 0xc9, 0x3a, 0x52, 0x73, 0xbd, 0x20, 0xe2, + 0x58, 0x67, 0x70, 0x9d, +}; +static const unsigned char kat4017_nonce[] = {0}; +static const unsigned char kat4017_persstr[] = { + 0x49, 0x04, 0x2e, 0xb9, 0x83, 0x89, 0x98, 0xac, 0x20, 0x23, 0xaf, 0x8c, + 0xeb, 0x55, 0x39, 0xf2, 0x0c, 0x00, 0xaa, 0x17, 0x98, 0xc9, 0x06, 0xa0, + 0x2a, 0x5e, 0x6a, 0xc7, 0x02, 0x75, 0x90, 0x54, 0xd1, 0x1d, 0x07, 0x5f, + 0x9d, 0xcc, 0x8c, 0xeb, +}; +static const unsigned char kat4017_entropyinpr1[] = { + 0x76, 0x03, 0x00, 0x2e, 0x2d, 0x42, 0x37, 0xdf, 0x84, 0xfb, 0x9e, 0x0b, + 0xad, 0xb2, 0x9a, 0x25, 0x04, 0x12, 0x2c, 0x77, 0x6c, 0x20, 0x8a, 0xac, + 0x9b, 0xa1, 0x24, 0x3c, 0xa7, 0x87, 0x4d, 0xd7, 0x51, 0xa8, 0x3b, 0xfe, + 0xc7, 0xab, 0xad, 0x75, +}; +static const unsigned char kat4017_addinpr1[] = { + 0x66, 0x56, 0xfe, 0x1b, 0x78, 0x78, 0x43, 0xa0, 0x8a, 0x7c, 0xdb, 0x3d, + 0x13, 0xd1, 0x98, 0x74, 0x03, 0x72, 0x45, 0x70, 0xc8, 0xb5, 0x27, 0x54, + 0x6c, 0x54, 0x69, 0xfd, 0x15, 0xf3, 0x20, 0x4e, 0x67, 0x90, 0xe2, 0x57, + 0xb5, 0xbb, 0x44, 0x27, +}; +static const unsigned char kat4017_entropyinpr2[] = { + 0x81, 0x67, 0x18, 0x30, 0xa8, 0x83, 0x98, 0x85, 0x82, 0x27, 0x10, 0x44, + 0xde, 0xfc, 0x12, 0x9f, 0x54, 0xab, 0x77, 0xc9, 0xb2, 0x7f, 0x4a, 0x43, + 0x6a, 0xb0, 0xe0, 0xaa, 0x8c, 0x4a, 0x4d, 0x89, 0xf6, 0xea, 0x84, 0xb0, + 0xb8, 0x84, 0x09, 0xeb, +}; +static const unsigned char kat4017_addinpr2[] = { + 0xe0, 0xc8, 0xed, 0x7a, 0x32, 0x1c, 0x36, 0xa3, 0x70, 0xfb, 0xae, 0x1c, + 0xad, 0x68, 0x17, 0xf2, 0x55, 0x78, 0xfb, 0x79, 0xec, 0x79, 0x23, 0x8a, + 0x20, 0xd5, 0xdb, 0xf6, 0xb9, 0x6c, 0x2e, 0xd1, 0x39, 0x45, 0x85, 0x18, + 0x06, 0x62, 0x38, 0xaa, +}; +static const unsigned char kat4017_retbits[] = { + 0xdc, 0x20, 0xe0, 0xd4, 0xb8, 0xa6, 0x2f, 0x55, 0xb1, 0x76, 0x5d, 0x97, + 0x47, 0xed, 0xda, 0xda, 0x16, 0x53, 0x21, 0x6a, 0x26, 0x9e, 0x8a, 0x06, + 0x09, 0x29, 0x52, 0x18, 0x2d, 0xb0, 0xa8, 0xd5, 0x10, 0xae, 0x26, 0x3f, + 0x4d, 0x65, 0x71, 0x38, 0x84, 0x3e, 0xcf, 0x55, 0xec, 0x11, 0x03, 0xe8, + 0x0e, 0xce, 0xcb, 0x28, 0x80, 0x55, 0xc5, 0xd5, 0xe4, 0x2d, 0x20, 0x78, + 0xc8, 0xa7, 0x32, 0x26, +}; +static const struct drbg_kat_pr_true kat4017_t = { + 11, kat4017_entropyin, kat4017_nonce, kat4017_persstr, + kat4017_entropyinpr1, kat4017_addinpr1, kat4017_entropyinpr2, + kat4017_addinpr2, kat4017_retbits +}; +static const struct drbg_kat kat4017 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4017_t +}; + +static const unsigned char kat4018_entropyin[] = { + 0x5a, 0xc8, 0xf3, 0xef, 0x18, 0xc1, 0x64, 0x52, 0xf8, 0x2b, 0x2b, 0x2d, + 0xfe, 0xb7, 0x5b, 0x64, 0x1d, 0xc1, 0xc5, 0x4b, 0xc6, 0x58, 0xae, 0x8f, + 0x1e, 0x6b, 0x52, 0x17, 0xdf, 0xf6, 0x01, 0x79, 0x3e, 0x7d, 0x81, 0xa6, + 0x7f, 0x89, 0xb8, 0xa0, +}; +static const unsigned char kat4018_nonce[] = {0}; +static const unsigned char kat4018_persstr[] = { + 0x87, 0xe8, 0xc7, 0x4c, 0x33, 0x1d, 0x05, 0x18, 0x56, 0x9e, 0x6a, 0xdf, + 0x93, 0x5d, 0x14, 0x41, 0x4f, 0xc8, 0x92, 0xe6, 0x4b, 0xc0, 0x62, 0x8b, + 0x06, 0xbd, 0xbd, 0x82, 0x00, 0x94, 0x7a, 0x78, 0xdb, 0x72, 0x10, 0xcd, + 0x1a, 0x96, 0x69, 0x63, +}; +static const unsigned char kat4018_entropyinpr1[] = { + 0x2e, 0x9c, 0xb1, 0x91, 0x38, 0x42, 0xc9, 0x96, 0xda, 0xb7, 0x45, 0xdc, + 0x98, 0xc2, 0xdc, 0x83, 0xac, 0x89, 0xda, 0x97, 0x85, 0xe1, 0x82, 0xfc, + 0x94, 0x14, 0x3b, 0x0b, 0xc9, 0xcb, 0x5e, 0x56, 0x69, 0x55, 0x3d, 0x12, + 0x4b, 0x5b, 0x26, 0x10, +}; +static const unsigned char kat4018_addinpr1[] = { + 0xdc, 0x0f, 0xb8, 0x7a, 0xa0, 0xd3, 0x8c, 0xe6, 0x82, 0x9a, 0xe6, 0xb7, + 0x91, 0x3a, 0xff, 0x96, 0xda, 0x00, 0x6f, 0x96, 0x51, 0xac, 0x28, 0xee, + 0x06, 0x97, 0x41, 0xe5, 0xf5, 0xce, 0x70, 0x6b, 0x71, 0x08, 0xda, 0xde, + 0x89, 0x32, 0xc6, 0xa7, +}; +static const unsigned char kat4018_entropyinpr2[] = { + 0xb6, 0x38, 0x21, 0x11, 0xab, 0x15, 0x8c, 0x3d, 0xbc, 0x27, 0xc8, 0x63, + 0xaa, 0x6c, 0x6f, 0x16, 0x2e, 0x8e, 0x1f, 0x27, 0x00, 0x5d, 0xb8, 0xc4, + 0x5b, 0x83, 0x83, 0x9e, 0x57, 0x66, 0x5e, 0x0f, 0x9e, 0x90, 0xb7, 0x7e, + 0x1b, 0x3a, 0x28, 0xb6, +}; +static const unsigned char kat4018_addinpr2[] = { + 0x5d, 0xaf, 0x56, 0x9d, 0xb5, 0x37, 0xad, 0x13, 0x23, 0x6e, 0x6f, 0x7d, + 0x2f, 0x8b, 0x6f, 0x44, 0xea, 0x07, 0xac, 0x58, 0x67, 0x0e, 0x0c, 0xe3, + 0xd0, 0x31, 0xca, 0x33, 0x45, 0x72, 0xa5, 0x52, 0xba, 0x6f, 0x49, 0xdc, + 0xca, 0x47, 0xb5, 0x53, +}; +static const unsigned char kat4018_retbits[] = { + 0x26, 0x01, 0x76, 0x7b, 0x75, 0xe5, 0x78, 0xb5, 0x6c, 0x7a, 0xb6, 0xe7, + 0x8f, 0xa2, 0x39, 0x01, 0xee, 0x49, 0xf2, 0xab, 0x61, 0xff, 0xa4, 0xf4, + 0xc2, 0xcd, 0x38, 0x70, 0xb2, 0x75, 0x4a, 0x0a, 0x87, 0x77, 0x1b, 0xbd, + 0x2b, 0x5c, 0xea, 0xb2, 0x6f, 0x59, 0x2e, 0xe2, 0x6b, 0xd0, 0x57, 0x48, + 0x97, 0x09, 0x73, 0xaf, 0xe8, 0x00, 0xe8, 0x2e, 0x9b, 0x87, 0xde, 0xac, + 0x31, 0xbf, 0xca, 0x3e, +}; +static const struct drbg_kat_pr_true kat4018_t = { + 12, kat4018_entropyin, kat4018_nonce, kat4018_persstr, + kat4018_entropyinpr1, kat4018_addinpr1, kat4018_entropyinpr2, + kat4018_addinpr2, kat4018_retbits +}; +static const struct drbg_kat kat4018 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4018_t +}; + +static const unsigned char kat4019_entropyin[] = { + 0xc4, 0xd8, 0xf5, 0x71, 0x57, 0x0b, 0x57, 0x92, 0xbb, 0x94, 0x70, 0x06, + 0x9e, 0x0f, 0xf0, 0xed, 0xbb, 0x3f, 0xd6, 0x81, 0x35, 0x74, 0xf1, 0xdc, + 0x08, 0xee, 0xb7, 0x2f, 0x1f, 0xaa, 0x3c, 0x73, 0x7d, 0x2e, 0xb4, 0xe5, + 0x61, 0x3a, 0xda, 0x30, +}; +static const unsigned char kat4019_nonce[] = {0}; +static const unsigned char kat4019_persstr[] = { + 0x19, 0xc7, 0xc3, 0xfa, 0xe3, 0x52, 0xaa, 0xa9, 0xea, 0x3a, 0x30, 0x18, + 0xef, 0x8b, 0xdd, 0x5f, 0x05, 0x8d, 0x34, 0x75, 0x90, 0xd6, 0xba, 0x62, + 0x76, 0xcf, 0x51, 0x73, 0x2b, 0x76, 0x42, 0x33, 0xea, 0x31, 0x0e, 0x1e, + 0xa8, 0xf6, 0x2a, 0xf5, +}; +static const unsigned char kat4019_entropyinpr1[] = { + 0x8b, 0x55, 0xd0, 0x25, 0x68, 0x89, 0x57, 0x71, 0xa7, 0xb7, 0x73, 0x25, + 0xa2, 0xb1, 0xa4, 0x5b, 0x76, 0xed, 0x6a, 0x3a, 0x07, 0x6e, 0x23, 0xf5, + 0xb6, 0x9f, 0x53, 0x22, 0xa9, 0x5e, 0x8e, 0x6b, 0xa2, 0xea, 0x8d, 0x45, + 0xa9, 0xf4, 0xf7, 0xc6, +}; +static const unsigned char kat4019_addinpr1[] = { + 0x63, 0x43, 0x22, 0xb8, 0xd1, 0xc7, 0xf7, 0x01, 0xc1, 0xf0, 0x65, 0x18, + 0x01, 0x20, 0xc1, 0x10, 0x54, 0x62, 0x09, 0xee, 0xb6, 0xa0, 0x76, 0x5a, + 0x8d, 0x09, 0xe7, 0xb8, 0x97, 0x32, 0x64, 0xa4, 0xa0, 0xbb, 0x60, 0xfa, + 0x44, 0xa3, 0x88, 0xa7, +}; +static const unsigned char kat4019_entropyinpr2[] = { + 0xd6, 0x48, 0xda, 0x44, 0xb1, 0x71, 0x74, 0xf7, 0xde, 0x7e, 0x45, 0xae, + 0xb2, 0x7d, 0xbb, 0x68, 0x47, 0xbf, 0x68, 0x52, 0x7d, 0x5d, 0x32, 0x10, + 0xba, 0x54, 0x61, 0x14, 0x86, 0x2e, 0x0f, 0xbe, 0x80, 0xb7, 0x7b, 0xb1, + 0xe9, 0x97, 0x4c, 0x70, +}; +static const unsigned char kat4019_addinpr2[] = { + 0x73, 0x3c, 0x9a, 0x07, 0x8b, 0x1f, 0x60, 0x53, 0xc1, 0x21, 0xbb, 0x85, + 0xbf, 0x9d, 0x86, 0x7d, 0x95, 0xb0, 0xe6, 0xfd, 0xd8, 0xfd, 0x9a, 0x6c, + 0x27, 0x93, 0x23, 0xc7, 0x44, 0xff, 0x0c, 0xf7, 0xc3, 0xb9, 0x15, 0x06, + 0xfd, 0x10, 0xf6, 0xa2, +}; +static const unsigned char kat4019_retbits[] = { + 0x0c, 0xbb, 0x5a, 0xac, 0x61, 0x0d, 0x13, 0x03, 0xc7, 0xe3, 0x61, 0x76, + 0x94, 0x07, 0x72, 0x71, 0x2c, 0xa1, 0x4c, 0x1a, 0xa4, 0x9c, 0x6c, 0xe2, + 0xbc, 0x7a, 0x76, 0x68, 0xf9, 0x54, 0x34, 0x46, 0xd0, 0x15, 0x67, 0xae, + 0x41, 0x24, 0xd7, 0x05, 0xe5, 0x0e, 0x6c, 0xa0, 0x71, 0x69, 0x53, 0x42, + 0x1b, 0xe9, 0x2f, 0x3a, 0x60, 0xd0, 0x9b, 0x05, 0x99, 0x88, 0x80, 0xf3, + 0x6f, 0x50, 0xe3, 0x37, +}; +static const struct drbg_kat_pr_true kat4019_t = { + 13, kat4019_entropyin, kat4019_nonce, kat4019_persstr, + kat4019_entropyinpr1, kat4019_addinpr1, kat4019_entropyinpr2, + kat4019_addinpr2, kat4019_retbits +}; +static const struct drbg_kat kat4019 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4019_t +}; + +static const unsigned char kat4020_entropyin[] = { + 0x0b, 0x8a, 0xa4, 0x1e, 0xea, 0xff, 0x99, 0x20, 0x3d, 0x1d, 0x28, 0x48, + 0x93, 0x65, 0x52, 0xd7, 0x6c, 0xfd, 0x1b, 0x0a, 0x9c, 0xb9, 0xd6, 0xd9, + 0x8c, 0x93, 0x48, 0xc3, 0x96, 0xfa, 0xd0, 0xc6, 0x43, 0x25, 0xa0, 0xca, + 0x67, 0x89, 0x10, 0xb2, +}; +static const unsigned char kat4020_nonce[] = {0}; +static const unsigned char kat4020_persstr[] = { + 0x73, 0xf9, 0xeb, 0x66, 0x51, 0x58, 0xd6, 0xe4, 0x1a, 0x7c, 0x2a, 0x9b, + 0x2e, 0xd2, 0xbf, 0xa5, 0xf1, 0x12, 0x2a, 0xee, 0x6d, 0x3d, 0xd0, 0x05, + 0x88, 0x88, 0xa7, 0xcf, 0xe8, 0x5e, 0x06, 0xf9, 0x9d, 0x7c, 0x53, 0x7c, + 0xa3, 0xdf, 0x98, 0x8a, +}; +static const unsigned char kat4020_entropyinpr1[] = { + 0x65, 0x0f, 0xc0, 0x2f, 0xcb, 0xb7, 0x70, 0xdd, 0xc6, 0x3a, 0xc8, 0x5b, + 0x20, 0x6a, 0x6e, 0x0d, 0xda, 0xae, 0x9f, 0xb7, 0xc1, 0x11, 0x23, 0x41, + 0x94, 0xe8, 0x93, 0xca, 0x2c, 0xbb, 0xb9, 0x58, 0x99, 0x34, 0xd3, 0x0d, + 0x03, 0xae, 0x5d, 0x81, +}; +static const unsigned char kat4020_addinpr1[] = { + 0xf1, 0x18, 0x44, 0x79, 0x87, 0x7a, 0xec, 0xc7, 0x8e, 0x19, 0xba, 0xff, + 0x31, 0xe4, 0xa9, 0xc6, 0xfa, 0x8e, 0x62, 0x39, 0x34, 0xe3, 0x36, 0xcb, + 0xb9, 0xc0, 0x4a, 0x8f, 0x4b, 0x82, 0x5f, 0x8b, 0xd8, 0xfc, 0xaf, 0xcd, + 0xd3, 0x9b, 0x1e, 0x9c, +}; +static const unsigned char kat4020_entropyinpr2[] = { + 0x0d, 0x18, 0xee, 0x1f, 0xdb, 0x9d, 0xc2, 0x3c, 0x66, 0xae, 0xa5, 0x87, + 0xfa, 0x59, 0xcc, 0x9c, 0x65, 0xda, 0x76, 0x90, 0xa7, 0xa7, 0x80, 0xbc, + 0x64, 0x72, 0x7f, 0xa3, 0xfb, 0x22, 0x60, 0x23, 0x01, 0x91, 0x1e, 0xd3, + 0xf9, 0x9f, 0xd7, 0x12, +}; +static const unsigned char kat4020_addinpr2[] = { + 0x02, 0xa3, 0x18, 0xa1, 0x57, 0x97, 0x14, 0xdd, 0xac, 0x23, 0x9f, 0x96, + 0x85, 0x64, 0xfa, 0x27, 0x68, 0xd5, 0x09, 0x9c, 0x23, 0x72, 0x37, 0xac, + 0x15, 0xab, 0xa9, 0xbd, 0xdc, 0x13, 0xaa, 0x9c, 0x30, 0xc3, 0x8f, 0x93, + 0x5f, 0x21, 0x67, 0xa0, +}; +static const unsigned char kat4020_retbits[] = { + 0x99, 0x23, 0x97, 0xec, 0x16, 0x84, 0x48, 0xc4, 0x52, 0x15, 0x60, 0x08, + 0x5f, 0x39, 0x56, 0xd2, 0xfc, 0x58, 0x3b, 0xda, 0x19, 0x24, 0xb2, 0x9f, + 0xdd, 0xd0, 0x81, 0xdf, 0xcc, 0x05, 0x6a, 0x0d, 0xca, 0xaf, 0x3e, 0xdd, + 0x1a, 0x84, 0x15, 0x8b, 0x6b, 0x7e, 0x57, 0x37, 0xd3, 0x75, 0x35, 0xfb, + 0xbd, 0x62, 0x58, 0x31, 0x9b, 0x74, 0x58, 0xc5, 0x52, 0x4c, 0xd0, 0x06, + 0x1a, 0x88, 0x50, 0xe8, +}; +static const struct drbg_kat_pr_true kat4020_t = { + 14, kat4020_entropyin, kat4020_nonce, kat4020_persstr, + kat4020_entropyinpr1, kat4020_addinpr1, kat4020_entropyinpr2, + kat4020_addinpr2, kat4020_retbits +}; +static const struct drbg_kat kat4020 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4020_t +}; + +static const unsigned char kat4021_entropyin[] = { + 0xeb, 0x18, 0x82, 0x13, 0xc6, 0x32, 0x29, 0xe1, 0x87, 0x40, 0x08, 0xe5, + 0x05, 0x8c, 0x2b, 0x24, 0x8c, 0x30, 0xd7, 0xdb, 0x58, 0x48, 0x8d, 0x5e, + 0x9d, 0x82, 0xda, 0xcf, 0x3e, 0xf5, 0xa4, 0xa5, 0x8e, 0xc2, 0x69, 0x5a, + 0x2e, 0x2c, 0xfe, 0x58, +}; +static const unsigned char kat4021_nonce[] = {0}; +static const unsigned char kat4021_persstr[] = {0}; +static const unsigned char kat4021_entropyinpr1[] = { + 0x3a, 0xb2, 0x93, 0x6c, 0xf6, 0x12, 0xa1, 0x2b, 0xc3, 0xc2, 0x54, 0x3d, + 0x34, 0x4c, 0xf0, 0x36, 0x78, 0x42, 0x7d, 0xc2, 0x3a, 0x65, 0x0c, 0xfa, + 0x2e, 0x64, 0xdd, 0xbe, 0xe8, 0x2d, 0xb9, 0xd2, 0x9f, 0x25, 0xfe, 0xdf, + 0x21, 0xfb, 0xe3, 0x01, +}; +static const unsigned char kat4021_addinpr1[] = {0}; +static const unsigned char kat4021_entropyinpr2[] = { + 0x4b, 0x56, 0x92, 0x8b, 0x68, 0x93, 0x66, 0xff, 0xcd, 0xdf, 0x6d, 0xbd, + 0x31, 0xfc, 0xce, 0x30, 0x92, 0xcd, 0x0b, 0x8e, 0x0c, 0x6d, 0xeb, 0xfb, + 0xce, 0x26, 0xec, 0x19, 0x02, 0xe8, 0x03, 0x83, 0x24, 0xde, 0xd0, 0x3d, + 0x07, 0xb9, 0x31, 0x04, +}; +static const unsigned char kat4021_addinpr2[] = {0}; +static const unsigned char kat4021_retbits[] = { + 0x16, 0x52, 0x9e, 0x73, 0xc2, 0xb2, 0xdc, 0x17, 0x1d, 0x44, 0x77, 0x0b, + 0xee, 0x4f, 0xc3, 0xfb, 0x5f, 0xeb, 0x82, 0xb1, 0x4d, 0x0f, 0x2a, 0xa3, + 0xa4, 0xab, 0xf0, 0xa7, 0x6b, 0xb2, 0xae, 0xeb, 0x7b, 0x4c, 0xc6, 0xf6, + 0xc9, 0x21, 0x5e, 0x85, 0xf2, 0x47, 0xde, 0xb3, 0x6b, 0xa4, 0x57, 0xff, + 0xa5, 0xfe, 0x6b, 0xe3, 0xe2, 0xab, 0x1c, 0xc2, 0xa3, 0xa1, 0xa0, 0x65, + 0xb8, 0x16, 0x75, 0x8a, +}; +static const struct drbg_kat_pr_true kat4021_t = { + 0, kat4021_entropyin, kat4021_nonce, kat4021_persstr, + kat4021_entropyinpr1, kat4021_addinpr1, kat4021_entropyinpr2, + kat4021_addinpr2, kat4021_retbits +}; +static const struct drbg_kat kat4021 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4021_t +}; + +static const unsigned char kat4022_entropyin[] = { + 0xd0, 0x68, 0xf2, 0xe5, 0xcc, 0xe9, 0xec, 0xb0, 0x79, 0xf8, 0x0f, 0x07, + 0xef, 0x7d, 0x1c, 0x65, 0x65, 0x0a, 0xa6, 0x6b, 0x0d, 0xa6, 0x9a, 0xda, + 0x27, 0xf6, 0x9f, 0x02, 0x63, 0x0b, 0x49, 0x36, 0xa3, 0xa2, 0x70, 0x69, + 0x9a, 0x82, 0x7c, 0xf9, +}; +static const unsigned char kat4022_nonce[] = {0}; +static const unsigned char kat4022_persstr[] = {0}; +static const unsigned char kat4022_entropyinpr1[] = { + 0x8e, 0x40, 0xb2, 0xb3, 0x65, 0xd5, 0x8b, 0x4b, 0x88, 0x43, 0x1a, 0x39, + 0x8b, 0x2f, 0xb6, 0x8d, 0xd9, 0xc0, 0xdc, 0x8f, 0x7b, 0x46, 0x42, 0x5e, + 0xf6, 0x0b, 0xc7, 0x99, 0x6e, 0x82, 0x40, 0xc1, 0x1a, 0xd0, 0xe7, 0x55, + 0x21, 0xc7, 0x7d, 0x48, +}; +static const unsigned char kat4022_addinpr1[] = {0}; +static const unsigned char kat4022_entropyinpr2[] = { + 0x79, 0xd5, 0x08, 0x61, 0x30, 0xff, 0x9b, 0xb5, 0x82, 0xac, 0xc3, 0xea, + 0x14, 0x91, 0xfe, 0x28, 0x52, 0x82, 0xb5, 0x83, 0xfb, 0x8f, 0xd0, 0x83, + 0x49, 0x21, 0x33, 0x22, 0x54, 0x18, 0xf4, 0x21, 0xf9, 0x89, 0xcf, 0x9b, + 0x36, 0xd2, 0x87, 0xef, +}; +static const unsigned char kat4022_addinpr2[] = {0}; +static const unsigned char kat4022_retbits[] = { + 0xfe, 0x30, 0x4b, 0x3d, 0x14, 0x61, 0x75, 0x60, 0x2f, 0x11, 0x62, 0xb1, + 0xea, 0xda, 0x53, 0x9d, 0xe1, 0xfc, 0xac, 0x16, 0xda, 0x03, 0x7b, 0x14, + 0xf1, 0xe9, 0x5f, 0xc2, 0x23, 0xc2, 0xab, 0x31, 0xba, 0x3b, 0x03, 0xf3, + 0xac, 0xe2, 0xcb, 0xc8, 0xfa, 0xfc, 0x52, 0x1c, 0x0d, 0x72, 0x90, 0x6d, + 0xff, 0x9f, 0x9b, 0xdd, 0xf3, 0xb5, 0x72, 0x42, 0x9b, 0x39, 0xc6, 0x9c, + 0x69, 0x4c, 0x66, 0xc6, +}; +static const struct drbg_kat_pr_true kat4022_t = { + 1, kat4022_entropyin, kat4022_nonce, kat4022_persstr, + kat4022_entropyinpr1, kat4022_addinpr1, kat4022_entropyinpr2, + kat4022_addinpr2, kat4022_retbits +}; +static const struct drbg_kat kat4022 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4022_t +}; + +static const unsigned char kat4023_entropyin[] = { + 0xd3, 0x15, 0xf8, 0x9d, 0x9f, 0x8c, 0xf5, 0x10, 0xaf, 0xae, 0xe1, 0x98, + 0x0d, 0xc2, 0x35, 0x2c, 0xce, 0x01, 0x69, 0xf0, 0x16, 0x06, 0x7b, 0x08, + 0xa2, 0x1c, 0xc6, 0x8b, 0x63, 0xe2, 0xa9, 0xe7, 0xcb, 0x35, 0x3d, 0xad, + 0xec, 0x04, 0xb3, 0x9a, +}; +static const unsigned char kat4023_nonce[] = {0}; +static const unsigned char kat4023_persstr[] = {0}; +static const unsigned char kat4023_entropyinpr1[] = { + 0x48, 0xa2, 0x92, 0x54, 0xfb, 0xc2, 0xe4, 0x6c, 0xd6, 0x91, 0x08, 0x6a, + 0x56, 0x5b, 0xe2, 0x36, 0x85, 0x4f, 0x65, 0x14, 0x92, 0x53, 0xa0, 0x18, + 0x86, 0x4c, 0x5a, 0x48, 0xcb, 0x37, 0x64, 0x81, 0x72, 0x6c, 0xf6, 0xa0, + 0xd6, 0x8c, 0x8f, 0x0f, +}; +static const unsigned char kat4023_addinpr1[] = {0}; +static const unsigned char kat4023_entropyinpr2[] = { + 0xfa, 0xae, 0xcd, 0x3a, 0x47, 0xff, 0x52, 0xfb, 0x1a, 0xdd, 0xdf, 0xc0, + 0x7f, 0x50, 0xc3, 0x64, 0x35, 0x9c, 0xee, 0xc4, 0x94, 0x81, 0x38, 0x56, + 0x1c, 0xbb, 0x33, 0xfb, 0x4b, 0x22, 0x75, 0xde, 0x03, 0xea, 0x5b, 0xda, + 0xee, 0x24, 0xf6, 0xd1, +}; +static const unsigned char kat4023_addinpr2[] = {0}; +static const unsigned char kat4023_retbits[] = { + 0xb7, 0xac, 0xdd, 0x64, 0x49, 0xde, 0xbb, 0xcf, 0xf7, 0x3a, 0xd2, 0x3a, + 0x19, 0xe5, 0xe4, 0xc2, 0xd7, 0x8c, 0xd7, 0x01, 0xb4, 0x88, 0xb6, 0xf3, + 0xe1, 0xe5, 0xb2, 0x94, 0x7f, 0x9d, 0x6b, 0x23, 0x91, 0xd1, 0x76, 0x81, + 0xca, 0xc6, 0x71, 0x60, 0x29, 0x2e, 0xda, 0x2a, 0x24, 0x2e, 0x49, 0xb5, + 0xf2, 0x1c, 0xa6, 0x63, 0xef, 0x11, 0x9b, 0x89, 0x43, 0xaf, 0xcb, 0x3f, + 0x3f, 0x44, 0xa0, 0xca, +}; +static const struct drbg_kat_pr_true kat4023_t = { + 2, kat4023_entropyin, kat4023_nonce, kat4023_persstr, + kat4023_entropyinpr1, kat4023_addinpr1, kat4023_entropyinpr2, + kat4023_addinpr2, kat4023_retbits +}; +static const struct drbg_kat kat4023 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4023_t +}; + +static const unsigned char kat4024_entropyin[] = { + 0x1e, 0xe0, 0x7a, 0x02, 0x35, 0x37, 0x3d, 0x32, 0xf5, 0xd9, 0x54, 0x84, + 0x2a, 0x3f, 0xb8, 0xb1, 0xc8, 0x8b, 0x9f, 0xbe, 0xbd, 0x6a, 0xe5, 0x08, + 0xfc, 0x49, 0xd3, 0x99, 0xfd, 0x05, 0xb3, 0x4a, 0x68, 0x2f, 0xd9, 0x70, + 0x4d, 0x3f, 0x5e, 0xc3, +}; +static const unsigned char kat4024_nonce[] = {0}; +static const unsigned char kat4024_persstr[] = {0}; +static const unsigned char kat4024_entropyinpr1[] = { + 0xe2, 0x01, 0x02, 0x27, 0x79, 0x9b, 0x53, 0x23, 0x65, 0x29, 0xdc, 0xdb, + 0x1f, 0xc9, 0xc7, 0xb5, 0x7d, 0x76, 0x2e, 0x5e, 0x2b, 0x11, 0xf5, 0x78, + 0x21, 0x11, 0xd7, 0x4f, 0x54, 0xb5, 0x1e, 0x2e, 0xba, 0x19, 0x92, 0x29, + 0x1f, 0xe6, 0xf9, 0xb9, +}; +static const unsigned char kat4024_addinpr1[] = {0}; +static const unsigned char kat4024_entropyinpr2[] = { + 0x89, 0xcc, 0x18, 0x59, 0x9e, 0x1f, 0x76, 0x08, 0xad, 0x55, 0x0e, 0x5c, + 0x17, 0x21, 0x37, 0x76, 0x98, 0x06, 0xc0, 0x4c, 0x93, 0xd0, 0x4e, 0x18, + 0x4d, 0x93, 0xe1, 0xdf, 0xa3, 0x2c, 0xdf, 0xfe, 0xe2, 0x9d, 0xd9, 0x47, + 0x55, 0x8f, 0xed, 0xaa, +}; +static const unsigned char kat4024_addinpr2[] = {0}; +static const unsigned char kat4024_retbits[] = { + 0xf4, 0x05, 0x53, 0x5d, 0x6b, 0xd7, 0xd6, 0x83, 0x44, 0x51, 0x37, 0x46, + 0x1d, 0x28, 0xab, 0x7e, 0x16, 0xd4, 0xf6, 0x5b, 0x54, 0xb6, 0xba, 0xf6, + 0x65, 0x86, 0x26, 0x09, 0x37, 0x93, 0x6f, 0xc0, 0x9e, 0x64, 0x02, 0x66, + 0xa8, 0x22, 0xd2, 0xe4, 0x75, 0x36, 0xad, 0xd5, 0xe0, 0xa8, 0x80, 0xf8, + 0xac, 0x54, 0x6f, 0xba, 0x7e, 0x7d, 0x82, 0xac, 0x65, 0x65, 0x99, 0xe7, + 0xa6, 0x88, 0xf6, 0xd9, +}; +static const struct drbg_kat_pr_true kat4024_t = { + 3, kat4024_entropyin, kat4024_nonce, kat4024_persstr, + kat4024_entropyinpr1, kat4024_addinpr1, kat4024_entropyinpr2, + kat4024_addinpr2, kat4024_retbits +}; +static const struct drbg_kat kat4024 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4024_t +}; + +static const unsigned char kat4025_entropyin[] = { + 0xd1, 0x14, 0xf2, 0x9d, 0x42, 0xa0, 0xff, 0x3e, 0x95, 0xf8, 0x4c, 0xbc, + 0x16, 0x70, 0xe9, 0x95, 0xe2, 0xcc, 0x1e, 0x6f, 0xf2, 0xac, 0x26, 0x12, + 0x82, 0x05, 0x07, 0xe2, 0x61, 0x5a, 0xa0, 0xda, 0x5d, 0xc6, 0x45, 0x34, + 0xa6, 0x3c, 0xf1, 0xa4, +}; +static const unsigned char kat4025_nonce[] = {0}; +static const unsigned char kat4025_persstr[] = {0}; +static const unsigned char kat4025_entropyinpr1[] = { + 0x0c, 0xaf, 0xd2, 0x54, 0x78, 0xc5, 0xc8, 0x26, 0xb4, 0x8d, 0x1a, 0xba, + 0x7b, 0xc3, 0x8a, 0xcc, 0x28, 0x82, 0x9e, 0xd2, 0xa3, 0x48, 0x14, 0x01, + 0x68, 0xeb, 0x27, 0x14, 0x57, 0xdc, 0x0c, 0x77, 0x01, 0xc1, 0x08, 0xbd, + 0x71, 0x7e, 0x11, 0x13, +}; +static const unsigned char kat4025_addinpr1[] = {0}; +static const unsigned char kat4025_entropyinpr2[] = { + 0x8c, 0x32, 0x1f, 0x84, 0x78, 0xca, 0xa7, 0x24, 0x25, 0x30, 0x80, 0xd7, + 0xb2, 0x6a, 0x17, 0xb2, 0xd2, 0xd4, 0x2a, 0xb7, 0xb3, 0x30, 0x00, 0xe8, + 0x55, 0xd0, 0x06, 0xe2, 0x9a, 0x54, 0x6a, 0xb0, 0x6d, 0x50, 0x97, 0x0c, + 0x76, 0x35, 0xb4, 0x1e, +}; +static const unsigned char kat4025_addinpr2[] = {0}; +static const unsigned char kat4025_retbits[] = { + 0x47, 0x44, 0x45, 0x5e, 0x38, 0xc9, 0xa5, 0xc5, 0xd8, 0x2b, 0x4c, 0x9d, + 0xdc, 0xc8, 0xff, 0x42, 0x13, 0x93, 0x4b, 0x67, 0x52, 0x7a, 0xb7, 0x50, + 0x00, 0x4d, 0x0e, 0xdc, 0x31, 0x14, 0x79, 0x0b, 0x69, 0x7b, 0x71, 0x56, + 0x0d, 0x77, 0x07, 0x7e, 0x5e, 0x4b, 0xa5, 0x01, 0xd4, 0x8a, 0x4c, 0x21, + 0x41, 0xf2, 0xa5, 0x22, 0x7b, 0x22, 0xf8, 0xec, 0x7c, 0x1c, 0x50, 0x09, + 0xfb, 0x18, 0x2b, 0x6e, +}; +static const struct drbg_kat_pr_true kat4025_t = { + 4, kat4025_entropyin, kat4025_nonce, kat4025_persstr, + kat4025_entropyinpr1, kat4025_addinpr1, kat4025_entropyinpr2, + kat4025_addinpr2, kat4025_retbits +}; +static const struct drbg_kat kat4025 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4025_t +}; + +static const unsigned char kat4026_entropyin[] = { + 0x0f, 0x76, 0x6e, 0x6f, 0x86, 0xec, 0x54, 0xe6, 0x69, 0xd8, 0x9a, 0xd7, + 0x09, 0x1d, 0xec, 0xb2, 0x1b, 0x94, 0x2d, 0x63, 0x46, 0x6a, 0x32, 0x66, + 0xbf, 0x1b, 0xd8, 0x50, 0x92, 0x7c, 0xe7, 0xf2, 0xd1, 0x28, 0x1e, 0xbd, + 0xd8, 0x4e, 0x07, 0x6e, +}; +static const unsigned char kat4026_nonce[] = {0}; +static const unsigned char kat4026_persstr[] = {0}; +static const unsigned char kat4026_entropyinpr1[] = { + 0xca, 0xd5, 0x03, 0x29, 0x3b, 0x46, 0x44, 0xae, 0x36, 0x37, 0x9d, 0xa7, + 0x45, 0xca, 0x4f, 0x64, 0xb7, 0x8d, 0x93, 0x18, 0x20, 0x64, 0x89, 0x96, + 0x9b, 0xb0, 0xf1, 0xd7, 0x10, 0xf6, 0xbc, 0xc8, 0xb7, 0xdb, 0x39, 0x74, + 0x31, 0xf4, 0xe6, 0x03, +}; +static const unsigned char kat4026_addinpr1[] = {0}; +static const unsigned char kat4026_entropyinpr2[] = { + 0x51, 0x55, 0x0c, 0x1b, 0x5e, 0x3e, 0xdb, 0x4f, 0x63, 0x99, 0x62, 0xb0, + 0x2a, 0x2a, 0x44, 0x93, 0x44, 0xe8, 0x48, 0x85, 0x9b, 0x54, 0xe8, 0xa2, + 0xaa, 0x87, 0x9a, 0x97, 0x81, 0x67, 0x4d, 0xf1, 0x10, 0x63, 0x50, 0xd6, + 0x26, 0xfe, 0x82, 0xe5, +}; +static const unsigned char kat4026_addinpr2[] = {0}; +static const unsigned char kat4026_retbits[] = { + 0x3b, 0xca, 0x90, 0xa4, 0x20, 0x8c, 0x28, 0x34, 0x7b, 0x02, 0x68, 0x65, + 0x6a, 0xfb, 0x8d, 0x53, 0x47, 0x49, 0x8b, 0x49, 0xb6, 0x34, 0x3f, 0xf4, + 0x6e, 0x72, 0x29, 0x85, 0x99, 0xc0, 0x47, 0xd4, 0xaa, 0x8e, 0x2a, 0x1b, + 0x32, 0x0b, 0xc1, 0xf9, 0x90, 0x11, 0x84, 0x9b, 0xc7, 0x35, 0xf0, 0x0a, + 0x3c, 0x13, 0x36, 0x54, 0x8d, 0xcf, 0x7c, 0x8e, 0xc9, 0x70, 0x02, 0x63, + 0xe1, 0xb4, 0xa9, 0xce, +}; +static const struct drbg_kat_pr_true kat4026_t = { + 5, kat4026_entropyin, kat4026_nonce, kat4026_persstr, + kat4026_entropyinpr1, kat4026_addinpr1, kat4026_entropyinpr2, + kat4026_addinpr2, kat4026_retbits +}; +static const struct drbg_kat kat4026 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4026_t +}; + +static const unsigned char kat4027_entropyin[] = { + 0xa7, 0x67, 0xa7, 0x77, 0xc3, 0xd6, 0x84, 0x43, 0xa3, 0xda, 0xb7, 0x45, + 0x1d, 0xb5, 0xc6, 0xaf, 0x45, 0x7e, 0x61, 0xfb, 0xbf, 0xfb, 0xf7, 0xf1, + 0xd0, 0x2f, 0x6b, 0xa2, 0xd7, 0x96, 0x2d, 0x8b, 0xb9, 0xcb, 0xf7, 0xe1, + 0x24, 0x2d, 0xf7, 0x56, +}; +static const unsigned char kat4027_nonce[] = {0}; +static const unsigned char kat4027_persstr[] = {0}; +static const unsigned char kat4027_entropyinpr1[] = { + 0xc9, 0x9e, 0x7a, 0x40, 0xad, 0x29, 0xd2, 0x7f, 0x83, 0xbd, 0x6c, 0x3a, + 0xe8, 0x70, 0x5b, 0x7d, 0x6c, 0x42, 0xa0, 0xc4, 0xe9, 0xc5, 0xcf, 0xb2, + 0x88, 0x6b, 0x10, 0xea, 0x57, 0xaa, 0xc8, 0xd6, 0x6a, 0x2f, 0xcc, 0x02, + 0x6b, 0x4c, 0xbe, 0xa8, +}; +static const unsigned char kat4027_addinpr1[] = {0}; +static const unsigned char kat4027_entropyinpr2[] = { + 0x63, 0xea, 0xd0, 0xe6, 0x05, 0xdf, 0x09, 0x1c, 0x9f, 0x9b, 0xe9, 0xc0, + 0x2c, 0x6a, 0x83, 0x2d, 0x0d, 0x22, 0x98, 0xe0, 0x09, 0xf1, 0xb3, 0x8f, + 0xa4, 0x53, 0x3d, 0x30, 0x27, 0x8f, 0x34, 0x2b, 0x0c, 0x6b, 0xbc, 0x66, + 0xaa, 0x97, 0x19, 0x47, +}; +static const unsigned char kat4027_addinpr2[] = {0}; +static const unsigned char kat4027_retbits[] = { + 0x23, 0x2c, 0x52, 0x16, 0x9a, 0x49, 0x19, 0x3b, 0xfb, 0x95, 0x59, 0x16, + 0xeb, 0xca, 0x4f, 0x5a, 0x16, 0xc8, 0x1e, 0x97, 0x1f, 0xc1, 0xe2, 0xe3, + 0x6c, 0x85, 0x19, 0x2f, 0x13, 0xac, 0x4b, 0x7e, 0x38, 0x13, 0x38, 0x28, + 0x3c, 0x8d, 0x4c, 0xab, 0x67, 0x7a, 0x8c, 0x5f, 0x6c, 0x1b, 0x44, 0x0c, + 0x10, 0x96, 0x4e, 0x05, 0x7a, 0x8b, 0x66, 0xb2, 0xba, 0x60, 0xe7, 0xfd, + 0x12, 0x81, 0x3f, 0xa0, +}; +static const struct drbg_kat_pr_true kat4027_t = { + 6, kat4027_entropyin, kat4027_nonce, kat4027_persstr, + kat4027_entropyinpr1, kat4027_addinpr1, kat4027_entropyinpr2, + kat4027_addinpr2, kat4027_retbits +}; +static const struct drbg_kat kat4027 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4027_t +}; + +static const unsigned char kat4028_entropyin[] = { + 0x27, 0xb1, 0x5b, 0xa5, 0xa9, 0x7d, 0xd9, 0xd5, 0x56, 0x40, 0xbd, 0x2c, + 0xc9, 0x14, 0x9c, 0x14, 0xe4, 0x12, 0xd6, 0x5a, 0xe1, 0xaa, 0xf9, 0xbf, + 0x5b, 0x24, 0x61, 0xbf, 0x20, 0xac, 0x46, 0xa5, 0x1b, 0xf8, 0x23, 0x4f, + 0x5c, 0x28, 0x3c, 0x33, +}; +static const unsigned char kat4028_nonce[] = {0}; +static const unsigned char kat4028_persstr[] = {0}; +static const unsigned char kat4028_entropyinpr1[] = { + 0x97, 0x9d, 0x96, 0x18, 0xd0, 0xab, 0x48, 0x17, 0x60, 0x9a, 0xaa, 0x41, + 0x25, 0xa0, 0xee, 0x5c, 0xcd, 0x69, 0x4c, 0xcd, 0x84, 0x63, 0x10, 0x9b, + 0x33, 0x26, 0x12, 0x23, 0xf1, 0xb0, 0xe8, 0x81, 0x10, 0x52, 0x27, 0xc5, + 0xa0, 0x9f, 0x99, 0x17, +}; +static const unsigned char kat4028_addinpr1[] = {0}; +static const unsigned char kat4028_entropyinpr2[] = { + 0x70, 0xa5, 0x7c, 0xe6, 0x8f, 0xe3, 0xc2, 0xcf, 0xde, 0x46, 0x22, 0xe4, + 0x6c, 0xf8, 0x93, 0x13, 0xb9, 0x5c, 0x64, 0xef, 0x97, 0x82, 0x47, 0x74, + 0xa2, 0x81, 0x7f, 0x06, 0xf6, 0x23, 0x90, 0x9f, 0xeb, 0x66, 0xce, 0x73, + 0x8c, 0x45, 0x70, 0x51, +}; +static const unsigned char kat4028_addinpr2[] = {0}; +static const unsigned char kat4028_retbits[] = { + 0x94, 0xbf, 0x4b, 0x90, 0x98, 0x0c, 0xea, 0x16, 0xaa, 0x58, 0x5e, 0x38, + 0x3f, 0x91, 0x37, 0x3b, 0xd5, 0x84, 0xfa, 0xd3, 0x0e, 0x60, 0x93, 0x0c, + 0x0a, 0x9f, 0x99, 0x13, 0xc9, 0xb5, 0x4d, 0xd4, 0x03, 0xe5, 0xa9, 0x35, + 0x43, 0x25, 0x8e, 0x48, 0xff, 0x00, 0x25, 0x52, 0x5f, 0x7a, 0x5d, 0x05, + 0xc0, 0x6c, 0x7a, 0xdd, 0xab, 0x23, 0x6c, 0x1b, 0x37, 0x26, 0x44, 0xf8, + 0xeb, 0xb1, 0x7b, 0x1c, +}; +static const struct drbg_kat_pr_true kat4028_t = { + 7, kat4028_entropyin, kat4028_nonce, kat4028_persstr, + kat4028_entropyinpr1, kat4028_addinpr1, kat4028_entropyinpr2, + kat4028_addinpr2, kat4028_retbits +}; +static const struct drbg_kat kat4028 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4028_t +}; + +static const unsigned char kat4029_entropyin[] = { + 0xed, 0x98, 0xdb, 0x12, 0xb4, 0xc4, 0xf1, 0x58, 0x47, 0xfd, 0x22, 0x46, + 0x4e, 0x98, 0x13, 0xde, 0x49, 0x94, 0x0e, 0xdb, 0xd5, 0x6e, 0x57, 0x54, + 0x55, 0x06, 0xab, 0x96, 0x3f, 0xaa, 0xce, 0x2d, 0x15, 0xed, 0xf2, 0xb7, + 0x58, 0xb3, 0xcf, 0x7a, +}; +static const unsigned char kat4029_nonce[] = {0}; +static const unsigned char kat4029_persstr[] = {0}; +static const unsigned char kat4029_entropyinpr1[] = { + 0x30, 0xc3, 0xe5, 0x60, 0x3f, 0x71, 0x20, 0x2a, 0x0d, 0xac, 0x06, 0x8a, + 0x06, 0x84, 0xde, 0x05, 0x43, 0x86, 0xb3, 0xe0, 0xe8, 0xd5, 0xad, 0x5c, + 0x87, 0x6b, 0x1f, 0x7e, 0x9c, 0xbb, 0x70, 0xc0, 0x9b, 0x7d, 0xfc, 0x7f, + 0xf8, 0xff, 0xd8, 0xd1, +}; +static const unsigned char kat4029_addinpr1[] = {0}; +static const unsigned char kat4029_entropyinpr2[] = { + 0x61, 0xfd, 0xe0, 0x50, 0xce, 0xf1, 0x2d, 0xc2, 0x0f, 0x6b, 0x6a, 0xe5, + 0x60, 0x80, 0xcb, 0x5e, 0xf3, 0xac, 0x36, 0x6b, 0x05, 0xbb, 0xbe, 0x1d, + 0x71, 0xf0, 0xa7, 0xfe, 0xde, 0xbc, 0x18, 0x04, 0x7a, 0x28, 0x5f, 0xae, + 0xf9, 0xbb, 0xab, 0xd4, +}; +static const unsigned char kat4029_addinpr2[] = {0}; +static const unsigned char kat4029_retbits[] = { + 0x68, 0x3e, 0xc6, 0xec, 0x15, 0x50, 0x96, 0x68, 0x35, 0x08, 0x89, 0xda, + 0x51, 0x58, 0xc1, 0xca, 0xbe, 0x6a, 0xec, 0xcb, 0x01, 0x06, 0xc7, 0x51, + 0x75, 0xfd, 0xfb, 0xfe, 0x27, 0x60, 0x95, 0x7d, 0xc1, 0x5b, 0xfc, 0x48, + 0x4c, 0x04, 0x44, 0xcf, 0xc3, 0x01, 0x97, 0x2f, 0x98, 0x85, 0x42, 0xf3, + 0xd4, 0x44, 0x90, 0x1c, 0x2b, 0xb3, 0x59, 0xd3, 0x13, 0x26, 0xb0, 0xe4, + 0x78, 0x10, 0x6b, 0xbd, +}; +static const struct drbg_kat_pr_true kat4029_t = { + 8, kat4029_entropyin, kat4029_nonce, kat4029_persstr, + kat4029_entropyinpr1, kat4029_addinpr1, kat4029_entropyinpr2, + kat4029_addinpr2, kat4029_retbits +}; +static const struct drbg_kat kat4029 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4029_t +}; + +static const unsigned char kat4030_entropyin[] = { + 0xa9, 0x82, 0xe3, 0x8b, 0x24, 0xf6, 0xf9, 0xfa, 0x5f, 0x34, 0xc0, 0x9c, + 0x36, 0x1a, 0x1e, 0xf0, 0xbd, 0x76, 0x85, 0xd6, 0xc2, 0xdd, 0xd5, 0x50, + 0x48, 0x50, 0x68, 0x12, 0xc8, 0xce, 0x51, 0x8c, 0x6b, 0x91, 0x28, 0x1f, + 0x9a, 0xf1, 0x42, 0x80, +}; +static const unsigned char kat4030_nonce[] = {0}; +static const unsigned char kat4030_persstr[] = {0}; +static const unsigned char kat4030_entropyinpr1[] = { + 0x49, 0x23, 0xbc, 0x25, 0xe2, 0x1d, 0x08, 0xb8, 0xfd, 0x3b, 0x2d, 0x62, + 0x19, 0x00, 0x3c, 0xb5, 0xb0, 0xb1, 0x24, 0xd9, 0x42, 0xe9, 0x08, 0x1b, + 0x7d, 0xd4, 0xc0, 0xef, 0x85, 0x01, 0x54, 0xb7, 0x24, 0x24, 0x4e, 0x8c, + 0x37, 0x1b, 0x10, 0x36, +}; +static const unsigned char kat4030_addinpr1[] = {0}; +static const unsigned char kat4030_entropyinpr2[] = { + 0x06, 0xf8, 0xb3, 0xc5, 0x0b, 0x1e, 0xcf, 0xec, 0x50, 0x02, 0x49, 0x69, + 0xb3, 0x4d, 0x60, 0x5c, 0x9b, 0x8f, 0x47, 0x4a, 0x4d, 0x67, 0x35, 0x9f, + 0xfc, 0xb7, 0x4e, 0x83, 0x6b, 0x67, 0x8b, 0xb8, 0xf2, 0x94, 0xca, 0xfd, + 0x84, 0xee, 0x62, 0x69, +}; +static const unsigned char kat4030_addinpr2[] = {0}; +static const unsigned char kat4030_retbits[] = { + 0x50, 0x66, 0x7c, 0xb2, 0x64, 0x2a, 0x63, 0x91, 0x4f, 0xd8, 0x5a, 0x83, + 0xf5, 0x7f, 0xbd, 0x20, 0xe7, 0x24, 0x36, 0xfd, 0xf4, 0x0b, 0x27, 0x02, + 0x23, 0x8b, 0x97, 0xb4, 0xfe, 0xe6, 0x5b, 0x8f, 0x95, 0xc8, 0x1d, 0x1a, + 0xcd, 0x9c, 0x57, 0x91, 0xb0, 0x5d, 0x30, 0xd8, 0x69, 0x74, 0x9b, 0x3d, + 0xaa, 0x46, 0x9d, 0xfa, 0x16, 0xbd, 0xae, 0x24, 0x88, 0xc1, 0x8b, 0x35, + 0x97, 0x11, 0x1b, 0x7e, +}; +static const struct drbg_kat_pr_true kat4030_t = { + 9, kat4030_entropyin, kat4030_nonce, kat4030_persstr, + kat4030_entropyinpr1, kat4030_addinpr1, kat4030_entropyinpr2, + kat4030_addinpr2, kat4030_retbits +}; +static const struct drbg_kat kat4030 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4030_t +}; + +static const unsigned char kat4031_entropyin[] = { + 0xe2, 0x15, 0xbd, 0x3d, 0xa5, 0xd2, 0x4c, 0x75, 0x84, 0x20, 0xeb, 0x74, + 0xb9, 0x11, 0x28, 0x2e, 0x8a, 0x71, 0xe7, 0x87, 0xcd, 0x86, 0x59, 0x31, + 0x68, 0x44, 0x07, 0x9d, 0x3c, 0xb2, 0x80, 0xcd, 0xf5, 0x18, 0x4d, 0xab, + 0x81, 0x94, 0xbf, 0x84, +}; +static const unsigned char kat4031_nonce[] = {0}; +static const unsigned char kat4031_persstr[] = {0}; +static const unsigned char kat4031_entropyinpr1[] = { + 0xf4, 0x4c, 0x96, 0x09, 0x59, 0xc9, 0xd3, 0xf4, 0x2d, 0xb2, 0x58, 0x46, + 0xb7, 0xc0, 0x1c, 0x48, 0xa0, 0xe4, 0xa5, 0x58, 0xce, 0xd5, 0xa4, 0x7a, + 0xa6, 0x61, 0x6d, 0x8c, 0x54, 0x1e, 0xf3, 0x77, 0xe2, 0x3f, 0xe0, 0xf9, + 0xa9, 0x71, 0x12, 0xa2, +}; +static const unsigned char kat4031_addinpr1[] = {0}; +static const unsigned char kat4031_entropyinpr2[] = { + 0xf1, 0xb7, 0x4b, 0x7f, 0x80, 0x62, 0xea, 0x46, 0x14, 0x01, 0xf2, 0xc8, + 0xaf, 0xed, 0xd3, 0x0f, 0x7b, 0x48, 0xc9, 0x33, 0xa7, 0xb0, 0xf9, 0x6d, + 0x1c, 0x90, 0x32, 0x94, 0x39, 0xd4, 0xa5, 0x0d, 0xd3, 0x30, 0x71, 0x4c, + 0xb4, 0xc6, 0x43, 0x8b, +}; +static const unsigned char kat4031_addinpr2[] = {0}; +static const unsigned char kat4031_retbits[] = { + 0x29, 0x68, 0x24, 0x56, 0x84, 0x31, 0x3f, 0x93, 0xd2, 0x52, 0x7c, 0x5c, + 0x13, 0x83, 0x5f, 0xe8, 0x20, 0xbd, 0xbd, 0xb7, 0xf4, 0x76, 0xfa, 0x8e, + 0x0a, 0xdf, 0xf5, 0xa4, 0x3f, 0x48, 0xd0, 0xde, 0x2c, 0x09, 0xa4, 0xc9, + 0xae, 0xcb, 0x9e, 0xdd, 0x7f, 0xc4, 0xee, 0x2b, 0xf8, 0x93, 0xb3, 0x1b, + 0x8f, 0x1d, 0x6a, 0xa4, 0xf3, 0x24, 0x9a, 0xa6, 0x86, 0x5f, 0x83, 0xf4, + 0x81, 0xd2, 0x6a, 0x84, +}; +static const struct drbg_kat_pr_true kat4031_t = { + 10, kat4031_entropyin, kat4031_nonce, kat4031_persstr, + kat4031_entropyinpr1, kat4031_addinpr1, kat4031_entropyinpr2, + kat4031_addinpr2, kat4031_retbits +}; +static const struct drbg_kat kat4031 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4031_t +}; + +static const unsigned char kat4032_entropyin[] = { + 0x8b, 0x39, 0x2d, 0x1f, 0xf4, 0x00, 0xf9, 0xae, 0x5a, 0xc1, 0x6b, 0xb0, + 0x0f, 0x2c, 0x9c, 0xee, 0xf5, 0xed, 0x4c, 0x6a, 0x63, 0x48, 0x28, 0x72, + 0x8a, 0x5b, 0x5f, 0x1d, 0xe4, 0xe0, 0x0c, 0xeb, 0xd9, 0xa4, 0x95, 0x44, + 0x2a, 0x23, 0xb7, 0x8b, +}; +static const unsigned char kat4032_nonce[] = {0}; +static const unsigned char kat4032_persstr[] = {0}; +static const unsigned char kat4032_entropyinpr1[] = { + 0x03, 0x3b, 0xdf, 0xb8, 0x71, 0x85, 0x88, 0x73, 0x9b, 0x3f, 0x8c, 0xac, + 0x83, 0x46, 0xfd, 0x94, 0x6d, 0x64, 0x9c, 0x09, 0x38, 0xdc, 0xb3, 0x2f, + 0xed, 0x47, 0x3f, 0xda, 0xca, 0x62, 0xb0, 0x96, 0x71, 0x28, 0xac, 0x53, + 0xa6, 0x05, 0x48, 0x7c, +}; +static const unsigned char kat4032_addinpr1[] = {0}; +static const unsigned char kat4032_entropyinpr2[] = { + 0xbb, 0x4f, 0x54, 0x74, 0xcc, 0x0e, 0xaf, 0x43, 0x76, 0x77, 0x2f, 0x19, + 0xdb, 0xa7, 0xa5, 0x99, 0x6d, 0x32, 0x90, 0x67, 0xcf, 0xd6, 0xfe, 0xaa, + 0x6e, 0x61, 0x79, 0x66, 0x0f, 0xff, 0x0c, 0xd4, 0x34, 0x2b, 0xd7, 0xb8, + 0x3b, 0x31, 0x79, 0xab, +}; +static const unsigned char kat4032_addinpr2[] = {0}; +static const unsigned char kat4032_retbits[] = { + 0xa9, 0xc4, 0x3e, 0x4e, 0x9c, 0xb4, 0xf5, 0xfb, 0x50, 0x24, 0x21, 0x95, + 0xed, 0x92, 0x9d, 0xe8, 0xa1, 0x5b, 0x58, 0xc8, 0xb6, 0x69, 0xaa, 0x80, + 0x69, 0x0a, 0xd3, 0xc8, 0x2a, 0x80, 0x1d, 0xaa, 0x01, 0x2d, 0x61, 0xab, + 0x0d, 0x09, 0x2e, 0xb5, 0x12, 0xd6, 0x64, 0x3f, 0xa3, 0xee, 0x39, 0xa2, + 0xcb, 0x58, 0xe8, 0x14, 0x2a, 0x11, 0x33, 0x60, 0x62, 0x80, 0xc0, 0x5e, + 0xe0, 0xa0, 0xbc, 0xda, +}; +static const struct drbg_kat_pr_true kat4032_t = { + 11, kat4032_entropyin, kat4032_nonce, kat4032_persstr, + kat4032_entropyinpr1, kat4032_addinpr1, kat4032_entropyinpr2, + kat4032_addinpr2, kat4032_retbits +}; +static const struct drbg_kat kat4032 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4032_t +}; + +static const unsigned char kat4033_entropyin[] = { + 0xa0, 0x7c, 0x4e, 0xb7, 0x21, 0x2c, 0xe9, 0x93, 0xb9, 0xd6, 0xc7, 0x44, + 0x10, 0xa5, 0x9b, 0xe0, 0x6b, 0x79, 0x75, 0x33, 0x26, 0xec, 0x40, 0xed, + 0x2f, 0xa7, 0x92, 0x40, 0xfc, 0xf5, 0x17, 0x42, 0xba, 0xec, 0x43, 0x1c, + 0x73, 0xa2, 0x43, 0x6f, +}; +static const unsigned char kat4033_nonce[] = {0}; +static const unsigned char kat4033_persstr[] = {0}; +static const unsigned char kat4033_entropyinpr1[] = { + 0xa2, 0x4b, 0x4f, 0x6b, 0x44, 0x39, 0xe5, 0x66, 0x13, 0x5a, 0x54, 0x16, + 0x46, 0xd6, 0x4c, 0x0b, 0x63, 0x73, 0xe4, 0x98, 0x1e, 0x79, 0x4b, 0x24, + 0xe2, 0xe4, 0x43, 0x4d, 0x87, 0x37, 0x9e, 0x93, 0x21, 0xc5, 0x7d, 0x0e, + 0x25, 0x7a, 0x01, 0xe0, +}; +static const unsigned char kat4033_addinpr1[] = {0}; +static const unsigned char kat4033_entropyinpr2[] = { + 0x80, 0xe0, 0x0b, 0x56, 0x58, 0x54, 0x5f, 0x02, 0xe7, 0xfd, 0xf9, 0xf3, + 0x9b, 0x4c, 0x04, 0xce, 0xe6, 0x6c, 0x0e, 0x4e, 0xa1, 0xd1, 0x87, 0x75, + 0x77, 0x30, 0x6d, 0x5c, 0x21, 0xd4, 0x1f, 0x61, 0x20, 0xf3, 0x8e, 0x20, + 0xa8, 0x29, 0x0d, 0xbf, +}; +static const unsigned char kat4033_addinpr2[] = {0}; +static const unsigned char kat4033_retbits[] = { + 0x26, 0xf2, 0xda, 0xb5, 0x6a, 0x4a, 0xa9, 0x2d, 0xa0, 0x10, 0x53, 0x93, + 0x25, 0xb0, 0xb0, 0xa6, 0x15, 0xea, 0x2c, 0xd2, 0xf6, 0xd5, 0xd5, 0x2f, + 0x3b, 0xed, 0xf4, 0xa6, 0xee, 0xfd, 0xbd, 0xa8, 0x68, 0x4e, 0x33, 0x0c, + 0x7b, 0xc8, 0x62, 0x95, 0xc6, 0xc6, 0x47, 0x20, 0x79, 0xa1, 0x7f, 0xce, + 0x70, 0xfc, 0xad, 0x09, 0x1e, 0x7d, 0x03, 0xd5, 0x17, 0x9d, 0x91, 0x30, + 0xe2, 0x65, 0x7a, 0xb3, +}; +static const struct drbg_kat_pr_true kat4033_t = { + 12, kat4033_entropyin, kat4033_nonce, kat4033_persstr, + kat4033_entropyinpr1, kat4033_addinpr1, kat4033_entropyinpr2, + kat4033_addinpr2, kat4033_retbits +}; +static const struct drbg_kat kat4033 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4033_t +}; + +static const unsigned char kat4034_entropyin[] = { + 0xcf, 0x7b, 0x32, 0x1c, 0xfc, 0x54, 0x20, 0x95, 0x4d, 0xdb, 0xac, 0x71, + 0x9f, 0xe2, 0x76, 0xb1, 0x43, 0xd7, 0x12, 0x46, 0x16, 0x15, 0x37, 0x57, + 0xc4, 0x7b, 0x0c, 0xb3, 0xe6, 0x07, 0x6f, 0x95, 0xe1, 0x1c, 0x22, 0x1a, + 0x92, 0xa0, 0xff, 0xe1, +}; +static const unsigned char kat4034_nonce[] = {0}; +static const unsigned char kat4034_persstr[] = {0}; +static const unsigned char kat4034_entropyinpr1[] = { + 0x00, 0xf1, 0x98, 0x59, 0x9d, 0x42, 0x12, 0x8e, 0x23, 0x85, 0xd3, 0xd2, + 0x7d, 0x0f, 0xe3, 0x1d, 0x97, 0xfe, 0x2d, 0x02, 0x9f, 0x07, 0xa7, 0xd8, + 0x1c, 0x27, 0xa0, 0x81, 0x2d, 0x45, 0xf0, 0xe5, 0x22, 0xc7, 0x6c, 0x21, + 0x38, 0x26, 0x31, 0xf1, +}; +static const unsigned char kat4034_addinpr1[] = {0}; +static const unsigned char kat4034_entropyinpr2[] = { + 0xcc, 0x8d, 0x81, 0x18, 0x73, 0x14, 0xe7, 0x6f, 0xb5, 0x3c, 0xd0, 0x8b, + 0x89, 0x0d, 0xb3, 0x1c, 0xd0, 0x0d, 0xfd, 0xa5, 0xd5, 0x94, 0x03, 0x25, + 0x07, 0xc0, 0xcd, 0x2a, 0x0b, 0xd1, 0x44, 0x5b, 0x44, 0x22, 0x08, 0x73, + 0x41, 0xbc, 0x36, 0xda, +}; +static const unsigned char kat4034_addinpr2[] = {0}; +static const unsigned char kat4034_retbits[] = { + 0x1b, 0x94, 0xdf, 0x00, 0x2a, 0x93, 0x32, 0x64, 0x91, 0xf2, 0x82, 0x93, + 0x3b, 0xc5, 0x8b, 0x8c, 0xa1, 0xd3, 0x0f, 0xcf, 0x59, 0x12, 0x35, 0xe7, + 0x15, 0x2e, 0xb1, 0x2f, 0x73, 0x56, 0xc3, 0x1a, 0x7e, 0xcf, 0x9f, 0x63, + 0x8a, 0x7f, 0xa2, 0x79, 0xd5, 0xc5, 0x98, 0x24, 0x43, 0x7d, 0x59, 0x7f, + 0xd6, 0x40, 0xad, 0xa1, 0xc5, 0xca, 0xcf, 0x95, 0x57, 0xfd, 0x25, 0x93, + 0xcc, 0xa8, 0x89, 0x2b, +}; +static const struct drbg_kat_pr_true kat4034_t = { + 13, kat4034_entropyin, kat4034_nonce, kat4034_persstr, + kat4034_entropyinpr1, kat4034_addinpr1, kat4034_entropyinpr2, + kat4034_addinpr2, kat4034_retbits +}; +static const struct drbg_kat kat4034 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4034_t +}; + +static const unsigned char kat4035_entropyin[] = { + 0x9b, 0xfc, 0xf7, 0xe4, 0xd3, 0xaf, 0x6c, 0xac, 0xab, 0xa0, 0xef, 0x99, + 0x9c, 0x53, 0x4f, 0xed, 0x5d, 0x5f, 0xcb, 0x58, 0xc9, 0x64, 0xaf, 0x26, + 0xc9, 0xea, 0x5b, 0x2d, 0x6c, 0xbf, 0x5b, 0xb1, 0xa8, 0x30, 0xcd, 0xb0, + 0x88, 0x01, 0xde, 0x7f, +}; +static const unsigned char kat4035_nonce[] = {0}; +static const unsigned char kat4035_persstr[] = {0}; +static const unsigned char kat4035_entropyinpr1[] = { + 0xad, 0x92, 0x7a, 0x71, 0xc6, 0x39, 0x0c, 0x56, 0x13, 0xa7, 0xc1, 0x47, + 0x80, 0xab, 0xe6, 0xd2, 0x66, 0xb2, 0xd1, 0x26, 0xaa, 0x49, 0xf2, 0x3c, + 0x5f, 0xb6, 0x0e, 0x92, 0x73, 0x63, 0x26, 0x15, 0x12, 0x93, 0xeb, 0x36, + 0xe3, 0x1d, 0xc9, 0xbc, +}; +static const unsigned char kat4035_addinpr1[] = {0}; +static const unsigned char kat4035_entropyinpr2[] = { + 0x15, 0x2e, 0xc7, 0xc0, 0xd2, 0x6e, 0xab, 0x6d, 0xe2, 0x9d, 0x3d, 0x2e, + 0xf3, 0x21, 0x28, 0x12, 0x97, 0xbd, 0x25, 0x91, 0xbe, 0x88, 0x73, 0x18, + 0x71, 0x2c, 0xcd, 0xbb, 0xd3, 0xec, 0xfc, 0x1c, 0x92, 0x50, 0xf9, 0x9a, + 0x22, 0x6f, 0xc9, 0xb8, +}; +static const unsigned char kat4035_addinpr2[] = {0}; +static const unsigned char kat4035_retbits[] = { + 0x0a, 0xd1, 0x10, 0x14, 0x54, 0xcf, 0xe0, 0x91, 0xf1, 0x45, 0x63, 0x83, + 0xee, 0xb1, 0xe7, 0xa9, 0x68, 0x32, 0x8d, 0xa1, 0x50, 0xf1, 0x16, 0x6b, + 0x89, 0xe7, 0xc2, 0x02, 0xda, 0xf5, 0xe4, 0x23, 0x24, 0x31, 0x4c, 0x43, + 0xfd, 0x1d, 0xa6, 0xde, 0x3f, 0xeb, 0x9f, 0xfc, 0xf8, 0x2c, 0xf2, 0x17, + 0xbb, 0xcd, 0xf5, 0xc9, 0x68, 0x64, 0xc2, 0x27, 0x24, 0x63, 0x06, 0xf0, + 0xc9, 0x75, 0xc4, 0xc8, +}; +static const struct drbg_kat_pr_true kat4035_t = { + 14, kat4035_entropyin, kat4035_nonce, kat4035_persstr, + kat4035_entropyinpr1, kat4035_addinpr1, kat4035_entropyinpr2, + kat4035_addinpr2, kat4035_retbits +}; +static const struct drbg_kat kat4035 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 0, 64, &kat4035_t +}; + +static const unsigned char kat4036_entropyin[] = { + 0x78, 0xcb, 0x8e, 0xb2, 0x7a, 0xd2, 0xbe, 0x1e, 0x7d, 0x96, 0x75, 0x52, + 0xa6, 0xe2, 0x24, 0x93, 0x09, 0x55, 0x65, 0xa1, 0x6b, 0x04, 0xcf, 0xfe, + 0x05, 0x96, 0xfa, 0x3b, 0xbd, 0x59, 0x2e, 0xcb, 0xf9, 0x02, 0xb7, 0xe6, + 0xd2, 0x38, 0x54, 0xd4, +}; +static const unsigned char kat4036_nonce[] = {0}; +static const unsigned char kat4036_persstr[] = {0}; +static const unsigned char kat4036_entropyinpr1[] = { + 0x62, 0x2a, 0x30, 0x3d, 0x7b, 0x66, 0x6e, 0xbd, 0x3e, 0x50, 0x5c, 0x7c, + 0x89, 0xe8, 0x92, 0xb3, 0xf9, 0x75, 0xcf, 0x40, 0x80, 0x1f, 0x55, 0x27, + 0x00, 0xa6, 0x22, 0x40, 0x4b, 0xb0, 0xf7, 0xfc, 0x19, 0xe1, 0xa2, 0x7e, + 0x2c, 0xf2, 0x7d, 0x46, +}; +static const unsigned char kat4036_addinpr1[] = { + 0x83, 0xeb, 0xb6, 0xfd, 0x47, 0x3d, 0x7d, 0x2c, 0x84, 0xee, 0xe0, 0x20, + 0x11, 0x19, 0xc4, 0x82, 0x39, 0x5a, 0x90, 0x97, 0xc7, 0x9d, 0xd7, 0xec, + 0xf6, 0x6c, 0x44, 0xd4, 0x23, 0x38, 0xf3, 0x24, 0x12, 0x06, 0xe1, 0x57, + 0x17, 0xa0, 0x8b, 0x2a, +}; +static const unsigned char kat4036_entropyinpr2[] = { + 0x79, 0x11, 0x0b, 0x95, 0xd7, 0x9e, 0x2d, 0xc2, 0xb5, 0xcd, 0x9d, 0xc1, + 0x73, 0xb1, 0x8c, 0xca, 0x4a, 0x18, 0x52, 0x48, 0xce, 0x5f, 0x74, 0xa9, + 0x34, 0x03, 0x85, 0x30, 0x39, 0x26, 0x00, 0xea, 0x44, 0xda, 0x29, 0x2b, + 0x0b, 0x2f, 0x64, 0x4e, +}; +static const unsigned char kat4036_addinpr2[] = { + 0x44, 0x16, 0x68, 0x39, 0x33, 0xf1, 0x19, 0x8e, 0xd5, 0xe4, 0xd9, 0xe8, + 0x8a, 0x2c, 0x2d, 0xe0, 0x34, 0x68, 0x43, 0x89, 0x65, 0x98, 0x5d, 0x0a, + 0xd9, 0x78, 0xf6, 0x7d, 0xc1, 0x54, 0x91, 0xe9, 0x66, 0x91, 0x07, 0xc6, + 0xf7, 0x4c, 0x4d, 0xb2, +}; +static const unsigned char kat4036_retbits[] = { + 0xa2, 0xee, 0x55, 0x15, 0x31, 0x90, 0x35, 0x10, 0x8d, 0x0c, 0xe2, 0x30, + 0x21, 0x82, 0x5a, 0x47, 0xdd, 0xee, 0xe1, 0xd5, 0x5b, 0xea, 0xf7, 0xcb, + 0x2e, 0xca, 0x79, 0x6d, 0xa9, 0x41, 0x93, 0xc5, 0x9a, 0x07, 0x31, 0xdf, + 0x73, 0x48, 0xcd, 0xee, 0xd7, 0xb9, 0x1d, 0x6c, 0xd9, 0x33, 0x63, 0x31, + 0xba, 0x71, 0x7d, 0xaf, 0x43, 0xed, 0x45, 0x4a, 0x65, 0x4d, 0xd2, 0x3f, + 0x5f, 0x6d, 0xb8, 0x9e, +}; +static const struct drbg_kat_pr_true kat4036_t = { + 0, kat4036_entropyin, kat4036_nonce, kat4036_persstr, + kat4036_entropyinpr1, kat4036_addinpr1, kat4036_entropyinpr2, + kat4036_addinpr2, kat4036_retbits +}; +static const struct drbg_kat kat4036 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4036_t +}; + +static const unsigned char kat4037_entropyin[] = { + 0x60, 0x5d, 0x4d, 0xaf, 0x01, 0x67, 0x04, 0xa8, 0x6d, 0x30, 0x1b, 0xc0, + 0xf1, 0x90, 0x17, 0x3c, 0x8a, 0x0b, 0x35, 0x9c, 0xd9, 0x29, 0x59, 0xf7, + 0xb2, 0xda, 0xd8, 0x25, 0xf6, 0xb4, 0xe4, 0x58, 0x53, 0x5e, 0xe5, 0x9f, + 0x8f, 0xf0, 0x83, 0x5c, +}; +static const unsigned char kat4037_nonce[] = {0}; +static const unsigned char kat4037_persstr[] = {0}; +static const unsigned char kat4037_entropyinpr1[] = { + 0xbc, 0x66, 0x9c, 0xa8, 0x79, 0x22, 0x11, 0x77, 0x82, 0xe1, 0x96, 0xc6, + 0x25, 0x62, 0x11, 0xdf, 0x02, 0xaf, 0x0b, 0xb2, 0x85, 0x8b, 0x53, 0xa0, + 0x43, 0x0b, 0x76, 0xc3, 0x82, 0x7b, 0x3e, 0x31, 0x98, 0x24, 0x5c, 0xe0, + 0x69, 0x30, 0xea, 0x33, +}; +static const unsigned char kat4037_addinpr1[] = { + 0xf3, 0xa9, 0x82, 0xe6, 0x63, 0xca, 0xb1, 0x7f, 0x41, 0xb0, 0xe4, 0x12, + 0xe2, 0xb6, 0x3a, 0x87, 0x8c, 0x00, 0xde, 0x13, 0x7d, 0x9c, 0x59, 0x8d, + 0x0b, 0x7c, 0x92, 0xde, 0xaf, 0x96, 0x37, 0x39, 0xd3, 0x89, 0x16, 0xb5, + 0xf3, 0xd7, 0x5d, 0x94, +}; +static const unsigned char kat4037_entropyinpr2[] = { + 0x48, 0x70, 0x28, 0x10, 0xba, 0x65, 0x1e, 0x6a, 0x41, 0xd0, 0x4f, 0xb4, + 0x5a, 0x7c, 0xc5, 0x76, 0x0e, 0x33, 0xc5, 0x49, 0x5b, 0x9c, 0x16, 0xb8, + 0xdc, 0xfe, 0x9a, 0x72, 0x80, 0xc2, 0x19, 0x90, 0x75, 0xe5, 0x14, 0x48, + 0xa5, 0x0c, 0x6d, 0xee, +}; +static const unsigned char kat4037_addinpr2[] = { + 0x90, 0xfc, 0xc0, 0x6c, 0x65, 0xe4, 0xe1, 0xd8, 0x31, 0xd7, 0xe4, 0xba, + 0xc1, 0x6e, 0xbe, 0xe3, 0xec, 0x53, 0xe1, 0x8b, 0xcd, 0x35, 0xf7, 0x3a, + 0x5c, 0x4b, 0xbd, 0xf8, 0x1d, 0xcb, 0x99, 0x18, 0xde, 0x5a, 0x5e, 0xdc, + 0xe5, 0x2a, 0xa6, 0x1e, +}; +static const unsigned char kat4037_retbits[] = { + 0x12, 0x77, 0x9e, 0xa7, 0xe2, 0x7a, 0xaf, 0xe1, 0xc2, 0xf4, 0x5c, 0x7c, + 0x7b, 0x12, 0x90, 0x2e, 0x0b, 0x10, 0xdc, 0xa2, 0x30, 0xb8, 0x96, 0x0c, + 0x87, 0x5d, 0x0d, 0x3b, 0x33, 0xe2, 0x3d, 0x0a, 0xcb, 0x47, 0x0c, 0xab, + 0x7f, 0x20, 0xbd, 0xe3, 0x47, 0x09, 0x9b, 0xea, 0xf4, 0xc1, 0xb1, 0x34, + 0xe6, 0xd8, 0xcb, 0xfc, 0x8c, 0x6f, 0x35, 0x71, 0xcb, 0xf7, 0x02, 0xc3, + 0xce, 0x5e, 0xdd, 0xeb, +}; +static const struct drbg_kat_pr_true kat4037_t = { + 1, kat4037_entropyin, kat4037_nonce, kat4037_persstr, + kat4037_entropyinpr1, kat4037_addinpr1, kat4037_entropyinpr2, + kat4037_addinpr2, kat4037_retbits +}; +static const struct drbg_kat kat4037 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4037_t +}; + +static const unsigned char kat4038_entropyin[] = { + 0x76, 0x21, 0x96, 0x26, 0x53, 0x7f, 0x37, 0x78, 0xdd, 0x3f, 0xb6, 0xbf, + 0x64, 0x19, 0xd3, 0x1a, 0xd8, 0x60, 0x11, 0x02, 0x08, 0xf3, 0xdc, 0x59, + 0x01, 0xde, 0xc4, 0x4e, 0xd2, 0xf9, 0x83, 0xe5, 0x41, 0x10, 0x72, 0xce, + 0x69, 0x51, 0x6b, 0x6a, +}; +static const unsigned char kat4038_nonce[] = {0}; +static const unsigned char kat4038_persstr[] = {0}; +static const unsigned char kat4038_entropyinpr1[] = { + 0x4a, 0x7e, 0x8d, 0x93, 0xfc, 0x98, 0x8c, 0x84, 0xe9, 0xf8, 0x95, 0x51, + 0x19, 0x02, 0xfb, 0xf2, 0xcd, 0x8c, 0x49, 0x60, 0x3f, 0xd7, 0x98, 0x17, + 0x3c, 0xda, 0xdd, 0x4b, 0xfc, 0xcb, 0xc1, 0x5b, 0x3b, 0x99, 0xcf, 0xb6, + 0x32, 0x70, 0x40, 0xec, +}; +static const unsigned char kat4038_addinpr1[] = { + 0xa3, 0x4f, 0x5c, 0x5d, 0xcb, 0xb4, 0x29, 0xbb, 0x9f, 0x93, 0xe3, 0x20, + 0x79, 0xfa, 0x44, 0xea, 0x9f, 0x1a, 0x9b, 0xdf, 0x75, 0x80, 0x2b, 0x24, + 0x8d, 0x63, 0x43, 0x20, 0x4b, 0x90, 0xd5, 0x16, 0xc6, 0xfb, 0xb4, 0x76, + 0x47, 0xef, 0xa8, 0x31, +}; +static const unsigned char kat4038_entropyinpr2[] = { + 0xb8, 0xd5, 0x3e, 0xa7, 0xe4, 0xc5, 0xa9, 0xb1, 0x25, 0x89, 0x48, 0x5c, + 0x26, 0x74, 0x71, 0x8a, 0x5b, 0x64, 0x98, 0x42, 0x13, 0xae, 0xe7, 0xb0, + 0x0c, 0xb1, 0x7a, 0x58, 0x99, 0xea, 0x1f, 0x92, 0xfe, 0x10, 0xa8, 0xb9, + 0x63, 0x5d, 0xbb, 0x22, +}; +static const unsigned char kat4038_addinpr2[] = { + 0xb5, 0xc4, 0x19, 0x5d, 0x5a, 0xa9, 0xb8, 0xa7, 0xf3, 0xdb, 0xa4, 0xb3, + 0xe1, 0x30, 0x21, 0xf6, 0xcb, 0xec, 0xe2, 0xb1, 0x9e, 0x24, 0x3d, 0x51, + 0xda, 0x9d, 0x53, 0xeb, 0x2c, 0x65, 0xf7, 0xf5, 0xc6, 0xfc, 0x35, 0x26, + 0x21, 0xd7, 0x0f, 0xe2, +}; +static const unsigned char kat4038_retbits[] = { + 0x49, 0x24, 0xba, 0x74, 0xa5, 0xb2, 0x7f, 0x1c, 0xb6, 0x6c, 0x80, 0x14, + 0x1d, 0x30, 0xe5, 0x4b, 0xa9, 0x8e, 0x35, 0x29, 0x01, 0x10, 0xe5, 0xd0, + 0xb2, 0x95, 0x20, 0x99, 0xeb, 0x33, 0x8b, 0xbc, 0x3f, 0xfa, 0x41, 0xeb, + 0x75, 0xeb, 0x21, 0x6f, 0xd4, 0x38, 0xc3, 0x57, 0xbf, 0x23, 0x8b, 0x6b, + 0x6e, 0xd6, 0x60, 0xbe, 0x5b, 0x5e, 0xb9, 0xe4, 0x92, 0xf2, 0xf8, 0x00, + 0xd7, 0xf7, 0x6e, 0xf1, +}; +static const struct drbg_kat_pr_true kat4038_t = { + 2, kat4038_entropyin, kat4038_nonce, kat4038_persstr, + kat4038_entropyinpr1, kat4038_addinpr1, kat4038_entropyinpr2, + kat4038_addinpr2, kat4038_retbits +}; +static const struct drbg_kat kat4038 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4038_t +}; + +static const unsigned char kat4039_entropyin[] = { + 0xf5, 0x49, 0x0e, 0x46, 0xd3, 0x0f, 0x66, 0xe2, 0x7a, 0x5d, 0xcf, 0x89, + 0xd8, 0x02, 0x8b, 0x17, 0x9d, 0x6f, 0xfa, 0xcb, 0xdf, 0xe5, 0x52, 0x2c, + 0x38, 0x3f, 0x0a, 0x9c, 0x29, 0xdd, 0x85, 0x56, 0x86, 0x31, 0x8d, 0xc3, + 0x1c, 0xc1, 0xf0, 0x05, +}; +static const unsigned char kat4039_nonce[] = {0}; +static const unsigned char kat4039_persstr[] = {0}; +static const unsigned char kat4039_entropyinpr1[] = { + 0x71, 0xc7, 0xb6, 0x0f, 0xef, 0xfa, 0xd7, 0x6d, 0xe3, 0x46, 0x81, 0xf7, + 0xb5, 0xa0, 0x57, 0xbf, 0xa7, 0x32, 0x2c, 0x9a, 0x10, 0xf0, 0xbb, 0x37, + 0xfc, 0xdb, 0xeb, 0x4c, 0xb5, 0x5e, 0xe4, 0x5b, 0x2b, 0x2c, 0x64, 0xe3, + 0x77, 0x93, 0xc6, 0xd9, +}; +static const unsigned char kat4039_addinpr1[] = { + 0xa1, 0x44, 0x8e, 0xa9, 0x45, 0x67, 0x7e, 0xba, 0x2e, 0x0a, 0xb0, 0xcb, + 0x0e, 0x6f, 0xdc, 0xe6, 0xa9, 0x15, 0x48, 0xce, 0xe6, 0xef, 0x14, 0x0f, + 0xc7, 0xa8, 0xeb, 0x4c, 0xc9, 0x1f, 0x2f, 0x5c, 0x48, 0x0a, 0xb2, 0x5b, + 0x6b, 0xdc, 0x22, 0x63, +}; +static const unsigned char kat4039_entropyinpr2[] = { + 0xbd, 0xa7, 0xc4, 0xd0, 0xaa, 0x18, 0xde, 0xee, 0x36, 0x61, 0xf1, 0x5c, + 0xe3, 0xad, 0x7a, 0x31, 0x10, 0x53, 0x50, 0x4f, 0xc4, 0x6c, 0xa5, 0xda, + 0x3c, 0x42, 0xcf, 0x19, 0x1d, 0x24, 0x13, 0x9a, 0x53, 0x49, 0xcc, 0x1f, + 0xb6, 0xdd, 0xef, 0xde, +}; +static const unsigned char kat4039_addinpr2[] = { + 0xc1, 0x41, 0xd3, 0x9a, 0x3c, 0xb7, 0x25, 0x29, 0xfe, 0xa2, 0xf8, 0x08, + 0x20, 0x49, 0x09, 0xfe, 0x92, 0xa0, 0x62, 0x19, 0x04, 0x4b, 0x31, 0x31, + 0x93, 0x18, 0x83, 0xb1, 0x08, 0xf0, 0x36, 0x3a, 0x7b, 0x49, 0x9f, 0x1d, + 0xed, 0x86, 0xf4, 0x25, +}; +static const unsigned char kat4039_retbits[] = { + 0xaf, 0xa6, 0x6e, 0x2c, 0x80, 0x89, 0x8c, 0x57, 0x1f, 0x3b, 0x3e, 0xe9, + 0xf5, 0x3b, 0x5f, 0x5a, 0xd6, 0x01, 0xd1, 0xc9, 0xde, 0x5b, 0x0e, 0x2c, + 0x35, 0xb4, 0x60, 0x3b, 0xff, 0xb9, 0x7b, 0xd5, 0x45, 0xf0, 0x27, 0x1f, + 0xe7, 0x13, 0x3f, 0xb1, 0x9d, 0xd9, 0x9b, 0x23, 0xd2, 0x34, 0x3f, 0x80, + 0x71, 0x8a, 0xfe, 0xf5, 0x38, 0xdb, 0xe7, 0x29, 0x17, 0x3b, 0x95, 0xd7, + 0xff, 0x1a, 0xc4, 0x39, +}; +static const struct drbg_kat_pr_true kat4039_t = { + 3, kat4039_entropyin, kat4039_nonce, kat4039_persstr, + kat4039_entropyinpr1, kat4039_addinpr1, kat4039_entropyinpr2, + kat4039_addinpr2, kat4039_retbits +}; +static const struct drbg_kat kat4039 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4039_t +}; + +static const unsigned char kat4040_entropyin[] = { + 0x98, 0xca, 0x8f, 0x32, 0x53, 0xf3, 0xec, 0x3b, 0x6e, 0xf6, 0x86, 0x3b, + 0x81, 0x82, 0x1f, 0x22, 0x13, 0xd3, 0x76, 0xde, 0x85, 0x78, 0xb0, 0x7b, + 0x77, 0x1d, 0x15, 0x73, 0x56, 0x1f, 0x35, 0xb0, 0x12, 0x87, 0x64, 0x28, + 0xf1, 0xb1, 0x0c, 0xdb, +}; +static const unsigned char kat4040_nonce[] = {0}; +static const unsigned char kat4040_persstr[] = {0}; +static const unsigned char kat4040_entropyinpr1[] = { + 0x92, 0xbb, 0xd6, 0xc8, 0x60, 0xa6, 0xb3, 0x6d, 0x47, 0xb3, 0xb1, 0x01, + 0x57, 0xa7, 0xa6, 0x15, 0xf7, 0xbf, 0x53, 0xec, 0xe2, 0x9b, 0x78, 0x4a, + 0xc3, 0xec, 0x54, 0x5d, 0x48, 0xd3, 0xf1, 0x27, 0xa1, 0x6a, 0x59, 0xba, + 0xd4, 0xf9, 0x40, 0xa9, +}; +static const unsigned char kat4040_addinpr1[] = { + 0x0c, 0xac, 0x06, 0x63, 0xdd, 0x13, 0x5c, 0x39, 0x3b, 0x4e, 0xe4, 0x53, + 0x7d, 0x73, 0xb0, 0x05, 0xfd, 0x66, 0x9a, 0x57, 0x7a, 0xe5, 0x20, 0x18, + 0x05, 0xc5, 0x4f, 0xb9, 0xb4, 0x6b, 0x5f, 0xff, 0xb8, 0x17, 0x4b, 0xec, + 0x02, 0x97, 0xfc, 0x35, +}; +static const unsigned char kat4040_entropyinpr2[] = { + 0x37, 0x81, 0x6b, 0xaf, 0x00, 0x42, 0xfc, 0x29, 0xbc, 0x58, 0xa7, 0x4c, + 0x3d, 0x50, 0x72, 0x34, 0xf5, 0xab, 0x3c, 0x19, 0xf1, 0x74, 0xc3, 0x66, + 0x0d, 0xa2, 0x11, 0x52, 0xb6, 0x1e, 0x3d, 0x13, 0x01, 0x46, 0x14, 0x08, + 0xeb, 0x42, 0xe6, 0x7d, +}; +static const unsigned char kat4040_addinpr2[] = { + 0x93, 0xde, 0x97, 0x78, 0xda, 0x65, 0x9d, 0x03, 0x41, 0xc5, 0xc7, 0x0c, + 0x33, 0xa7, 0xde, 0xc7, 0x52, 0x4e, 0xb4, 0x33, 0x62, 0x38, 0xba, 0xa5, + 0x23, 0x73, 0x0e, 0x92, 0xb4, 0x87, 0x05, 0x3f, 0xe1, 0xe4, 0x6d, 0x74, + 0x5f, 0xde, 0xdc, 0x79, +}; +static const unsigned char kat4040_retbits[] = { + 0x54, 0x97, 0x6e, 0xae, 0x2a, 0x37, 0x43, 0x98, 0x45, 0xe0, 0xe5, 0xda, + 0xd2, 0xcc, 0x14, 0xe1, 0x3c, 0xf6, 0xc0, 0x05, 0x05, 0x83, 0xc1, 0x8f, + 0xe9, 0xd2, 0x62, 0xbb, 0x5a, 0xc2, 0x3e, 0x6e, 0xd6, 0x84, 0xca, 0x3c, + 0xca, 0xdd, 0x9f, 0x42, 0xc5, 0xb8, 0xbf, 0xc0, 0x31, 0x22, 0x02, 0x27, + 0xa3, 0x6d, 0x3a, 0x5a, 0xd8, 0x95, 0x18, 0x95, 0x44, 0x99, 0x0e, 0xa9, + 0xfe, 0x56, 0x15, 0xf1, +}; +static const struct drbg_kat_pr_true kat4040_t = { + 4, kat4040_entropyin, kat4040_nonce, kat4040_persstr, + kat4040_entropyinpr1, kat4040_addinpr1, kat4040_entropyinpr2, + kat4040_addinpr2, kat4040_retbits +}; +static const struct drbg_kat kat4040 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4040_t +}; + +static const unsigned char kat4041_entropyin[] = { + 0x9d, 0x8e, 0x91, 0xb7, 0x22, 0x90, 0xb1, 0x1b, 0x9b, 0xa2, 0xa4, 0x26, + 0x8c, 0xd9, 0xbc, 0x89, 0x0d, 0x5b, 0x09, 0x43, 0x44, 0x3e, 0xe6, 0xc2, + 0x25, 0x2f, 0xc2, 0x44, 0x91, 0x20, 0xd4, 0x6b, 0x3c, 0x09, 0x92, 0x75, + 0x11, 0x49, 0xcd, 0xaf, +}; +static const unsigned char kat4041_nonce[] = {0}; +static const unsigned char kat4041_persstr[] = {0}; +static const unsigned char kat4041_entropyinpr1[] = { + 0xec, 0x96, 0x5d, 0xad, 0x45, 0xc5, 0x4e, 0x79, 0xe2, 0xc5, 0xfc, 0x3f, + 0x63, 0x9a, 0x35, 0x48, 0x41, 0x50, 0xda, 0x4c, 0x69, 0x90, 0x5e, 0x48, + 0x4f, 0xf1, 0xfe, 0xe4, 0x99, 0xc8, 0xbc, 0x9f, 0x64, 0x6d, 0xa9, 0x55, + 0xb3, 0xf1, 0x63, 0x6b, +}; +static const unsigned char kat4041_addinpr1[] = { + 0xaf, 0xbd, 0xd5, 0x2b, 0xdf, 0x1f, 0x5a, 0xfa, 0xfb, 0xe8, 0x51, 0x94, + 0x1d, 0x05, 0x95, 0xf9, 0x90, 0x78, 0xd3, 0x6e, 0x67, 0xe5, 0x61, 0x41, + 0x6b, 0x05, 0xac, 0x04, 0xe8, 0x02, 0x49, 0x52, 0x1c, 0x2c, 0xf1, 0xf5, + 0x5f, 0x16, 0xb9, 0xcd, +}; +static const unsigned char kat4041_entropyinpr2[] = { + 0xfa, 0x5e, 0x0a, 0x66, 0xc4, 0x86, 0x4d, 0x9d, 0xf1, 0xa1, 0x4e, 0xe5, + 0xbc, 0xf7, 0x6b, 0xac, 0xbc, 0xce, 0x62, 0x52, 0x26, 0xa1, 0x27, 0x9c, + 0xf3, 0xef, 0x69, 0xe7, 0x71, 0x70, 0xac, 0x93, 0x1a, 0x52, 0xfc, 0xff, + 0x22, 0xe3, 0xb5, 0x89, +}; +static const unsigned char kat4041_addinpr2[] = { + 0xcc, 0xce, 0x45, 0x26, 0xaa, 0x29, 0x9f, 0xdc, 0x32, 0xea, 0x98, 0x53, + 0xde, 0xc1, 0xb7, 0x71, 0x45, 0xbe, 0x4b, 0xcd, 0xf8, 0x8f, 0x71, 0xc7, + 0x7e, 0xde, 0x3d, 0x36, 0x73, 0x67, 0xbf, 0xb9, 0xd4, 0xd5, 0x63, 0xb5, + 0xaa, 0x5a, 0x65, 0x99, +}; +static const unsigned char kat4041_retbits[] = { + 0x10, 0xd3, 0x5e, 0xaa, 0x2f, 0x47, 0x5e, 0xf1, 0xef, 0xea, 0x1a, 0xbe, + 0x1c, 0xfd, 0x74, 0xcd, 0xdd, 0xd8, 0x94, 0x9f, 0x66, 0x6d, 0xe6, 0xd0, + 0xf1, 0xd4, 0xb2, 0x0b, 0x5d, 0xbc, 0x53, 0xbe, 0xe6, 0xaa, 0x71, 0x2d, + 0xa0, 0x7e, 0x8b, 0xed, 0x23, 0x09, 0x42, 0x7d, 0x01, 0x71, 0x52, 0x1a, + 0x9f, 0x92, 0x83, 0x9c, 0xbe, 0xa9, 0x61, 0x05, 0xa8, 0x90, 0xe4, 0x23, + 0x8b, 0x02, 0x09, 0x23, +}; +static const struct drbg_kat_pr_true kat4041_t = { + 5, kat4041_entropyin, kat4041_nonce, kat4041_persstr, + kat4041_entropyinpr1, kat4041_addinpr1, kat4041_entropyinpr2, + kat4041_addinpr2, kat4041_retbits +}; +static const struct drbg_kat kat4041 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4041_t +}; + +static const unsigned char kat4042_entropyin[] = { + 0x62, 0xf1, 0xad, 0x3b, 0x80, 0xd9, 0x4a, 0xb9, 0xc9, 0x5e, 0x22, 0x8c, + 0x5a, 0xd6, 0x9d, 0x8d, 0x48, 0x2a, 0x83, 0xa2, 0x12, 0x9f, 0xd1, 0x3f, + 0x5c, 0x84, 0xda, 0x76, 0x62, 0xb5, 0x90, 0x94, 0x95, 0x42, 0x1d, 0x23, + 0x89, 0xde, 0x12, 0xd6, +}; +static const unsigned char kat4042_nonce[] = {0}; +static const unsigned char kat4042_persstr[] = {0}; +static const unsigned char kat4042_entropyinpr1[] = { + 0x4b, 0xfe, 0xd1, 0xe6, 0x9a, 0x27, 0xb4, 0x7e, 0xae, 0xd6, 0x87, 0x13, + 0x5e, 0xab, 0x67, 0xd3, 0x7d, 0x42, 0x5c, 0xf5, 0x5e, 0x65, 0xc4, 0x3a, + 0xc8, 0xed, 0xdb, 0x1d, 0x0f, 0xf7, 0xa2, 0xe3, 0x27, 0x54, 0x63, 0x13, + 0x7d, 0x81, 0xf1, 0xa0, +}; +static const unsigned char kat4042_addinpr1[] = { + 0x12, 0x18, 0xc4, 0xc0, 0x3b, 0x69, 0x68, 0x8a, 0xfd, 0xe7, 0x31, 0x90, + 0xf9, 0xea, 0x5f, 0x53, 0x5d, 0x37, 0xd0, 0x6e, 0x66, 0x22, 0xac, 0xc8, + 0x81, 0x73, 0xec, 0xab, 0xdc, 0xac, 0xc4, 0x8e, 0x40, 0x11, 0xa4, 0x8c, + 0xfe, 0x7e, 0x1e, 0x60, +}; +static const unsigned char kat4042_entropyinpr2[] = { + 0xeb, 0x90, 0xff, 0x94, 0x0c, 0x38, 0x03, 0x3d, 0x52, 0x50, 0xfe, 0xa4, + 0xad, 0x83, 0xdd, 0x3a, 0xa0, 0x46, 0x19, 0x6e, 0x7d, 0xed, 0xaa, 0x7b, + 0x17, 0xe8, 0x66, 0xae, 0x18, 0x02, 0x9a, 0xd2, 0xcf, 0xef, 0x14, 0xc4, + 0x0f, 0x65, 0x70, 0x30, +}; +static const unsigned char kat4042_addinpr2[] = { + 0xe4, 0x7e, 0x8f, 0x0b, 0x61, 0xe8, 0xc7, 0x7f, 0x42, 0xa4, 0x52, 0xb4, + 0x68, 0xd6, 0x0c, 0xce, 0xb5, 0xaf, 0x20, 0x1e, 0x5a, 0x4a, 0x9b, 0xf8, + 0xf3, 0x61, 0x58, 0xea, 0x62, 0xed, 0x4d, 0xb0, 0x2f, 0x56, 0x6d, 0x46, + 0x24, 0x2d, 0x38, 0x0a, +}; +static const unsigned char kat4042_retbits[] = { + 0x31, 0xfd, 0x04, 0x48, 0xae, 0xc0, 0xa6, 0x5f, 0x4d, 0x5c, 0xea, 0x1e, + 0xf3, 0xa8, 0x23, 0x1c, 0xa2, 0x33, 0x71, 0x21, 0xba, 0xdc, 0x6a, 0xc1, + 0x05, 0x0c, 0x3b, 0x8c, 0x73, 0x40, 0xe2, 0x12, 0xd6, 0x53, 0x57, 0xc5, + 0xdc, 0x74, 0x47, 0x46, 0xaa, 0xa1, 0x64, 0x98, 0xef, 0x80, 0xe1, 0xf8, + 0x68, 0x9f, 0x34, 0x95, 0x90, 0xbe, 0x02, 0x81, 0x80, 0x1b, 0x3b, 0xba, + 0x3d, 0xbe, 0x9f, 0x7c, +}; +static const struct drbg_kat_pr_true kat4042_t = { + 6, kat4042_entropyin, kat4042_nonce, kat4042_persstr, + kat4042_entropyinpr1, kat4042_addinpr1, kat4042_entropyinpr2, + kat4042_addinpr2, kat4042_retbits +}; +static const struct drbg_kat kat4042 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4042_t +}; + +static const unsigned char kat4043_entropyin[] = { + 0xd0, 0x9b, 0x57, 0x30, 0x2f, 0x6f, 0x80, 0x4d, 0x52, 0x32, 0x18, 0x67, + 0x32, 0x15, 0x80, 0xa4, 0xf8, 0x43, 0x42, 0xcd, 0x1f, 0xad, 0x1a, 0xe6, + 0xcc, 0xb0, 0x52, 0x30, 0x4e, 0x59, 0xb9, 0x3b, 0xcc, 0xcf, 0xf1, 0xbb, + 0x92, 0x89, 0x86, 0x16, +}; +static const unsigned char kat4043_nonce[] = {0}; +static const unsigned char kat4043_persstr[] = {0}; +static const unsigned char kat4043_entropyinpr1[] = { + 0x73, 0xa0, 0x73, 0x42, 0x46, 0x46, 0x27, 0x19, 0x8b, 0x4b, 0x91, 0x83, + 0x2e, 0x8c, 0xaf, 0xc4, 0x94, 0x9a, 0x47, 0x2b, 0x61, 0x3a, 0x89, 0x77, + 0x58, 0xc9, 0x3d, 0x83, 0xcf, 0x2a, 0x29, 0x1f, 0xe6, 0x60, 0x0d, 0xea, + 0x7f, 0x36, 0x14, 0xc5, +}; +static const unsigned char kat4043_addinpr1[] = { + 0x63, 0xd1, 0x9d, 0x8f, 0x47, 0x6a, 0xe6, 0xc9, 0x29, 0x5a, 0xe2, 0x5d, + 0x44, 0xe2, 0xb7, 0xe2, 0x3a, 0xb9, 0x90, 0x93, 0x03, 0x37, 0x91, 0x0a, + 0x7f, 0x5e, 0x0c, 0xcf, 0x81, 0x4a, 0xb6, 0xf2, 0x45, 0xc3, 0x95, 0x28, + 0xdc, 0x3e, 0xdd, 0x56, +}; +static const unsigned char kat4043_entropyinpr2[] = { + 0x40, 0xa1, 0x90, 0x6d, 0xcd, 0x6c, 0x60, 0xb2, 0xd4, 0x59, 0x80, 0x4d, + 0x94, 0xd6, 0xdf, 0x05, 0x88, 0xe7, 0xfd, 0xca, 0x36, 0xff, 0x4b, 0xa3, + 0x48, 0x8d, 0xf2, 0xe0, 0xef, 0xe6, 0x4c, 0x1e, 0x21, 0xa6, 0x44, 0xf7, + 0xa7, 0x01, 0x66, 0x35, +}; +static const unsigned char kat4043_addinpr2[] = { + 0xde, 0xa7, 0x85, 0xe2, 0xb6, 0x91, 0x48, 0x19, 0x49, 0x97, 0xed, 0x61, + 0x67, 0x86, 0xdc, 0xbe, 0x46, 0x7a, 0x4e, 0x3f, 0xfd, 0x93, 0x7d, 0x40, + 0x96, 0x1b, 0xc4, 0x73, 0x68, 0x57, 0x85, 0xde, 0x08, 0x27, 0x73, 0x47, + 0x83, 0xca, 0xe7, 0xc4, +}; +static const unsigned char kat4043_retbits[] = { + 0x36, 0xa8, 0xb2, 0xd1, 0xf9, 0x7a, 0x2c, 0x5c, 0xa0, 0x76, 0xd4, 0x0b, + 0x98, 0x71, 0x44, 0xd3, 0x02, 0x4a, 0xc1, 0x3e, 0x05, 0xef, 0x4f, 0x40, + 0xf7, 0xa7, 0x95, 0xe4, 0x2e, 0x49, 0xa6, 0xae, 0x53, 0xdb, 0x10, 0xcc, + 0xae, 0x26, 0x9a, 0xc7, 0x86, 0x8a, 0xe1, 0x78, 0xc2, 0xb2, 0x94, 0x0c, + 0x32, 0xd2, 0xc8, 0x40, 0x37, 0x50, 0x5b, 0x78, 0x25, 0x9d, 0x2b, 0x4c, + 0xc0, 0x1d, 0x26, 0xe9, +}; +static const struct drbg_kat_pr_true kat4043_t = { + 7, kat4043_entropyin, kat4043_nonce, kat4043_persstr, + kat4043_entropyinpr1, kat4043_addinpr1, kat4043_entropyinpr2, + kat4043_addinpr2, kat4043_retbits +}; +static const struct drbg_kat kat4043 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4043_t +}; + +static const unsigned char kat4044_entropyin[] = { + 0x62, 0xca, 0xc0, 0xd1, 0x0c, 0x0e, 0xda, 0x9e, 0xae, 0x2d, 0x62, 0xfe, + 0xfb, 0xc1, 0x7e, 0xbe, 0xbf, 0x8c, 0x1f, 0x3b, 0xd3, 0x01, 0xf7, 0xa2, + 0x25, 0x6c, 0xfa, 0xce, 0xd8, 0x46, 0xc7, 0xd2, 0x9b, 0x1c, 0xaf, 0x58, + 0x0e, 0xa8, 0x67, 0xb5, +}; +static const unsigned char kat4044_nonce[] = {0}; +static const unsigned char kat4044_persstr[] = {0}; +static const unsigned char kat4044_entropyinpr1[] = { + 0x3c, 0x7a, 0xb9, 0x21, 0xe3, 0xa7, 0x10, 0x47, 0x9d, 0xb0, 0x66, 0xeb, + 0xd1, 0xbe, 0xc4, 0x39, 0x1f, 0xc5, 0xba, 0xb8, 0xdf, 0xd3, 0x83, 0x88, + 0x3c, 0x97, 0xe8, 0x09, 0xf3, 0xc7, 0x82, 0xfb, 0xe4, 0x69, 0xb5, 0x3e, + 0x90, 0x69, 0x13, 0xb6, +}; +static const unsigned char kat4044_addinpr1[] = { + 0xa8, 0xb3, 0x94, 0x1a, 0x9c, 0x9d, 0x26, 0x7e, 0x82, 0x44, 0x5e, 0xc5, + 0x0c, 0xd5, 0x98, 0xbf, 0x43, 0x5c, 0x8e, 0x92, 0xc1, 0xab, 0x2e, 0xb4, + 0x4a, 0xfc, 0xa1, 0xbf, 0x6a, 0xbd, 0x11, 0xbb, 0x21, 0xfc, 0xb8, 0x9d, + 0xee, 0xda, 0xd1, 0xee, +}; +static const unsigned char kat4044_entropyinpr2[] = { + 0x16, 0x22, 0x90, 0xef, 0x03, 0xe8, 0xcc, 0x56, 0xda, 0xef, 0xfb, 0xeb, + 0x84, 0xa6, 0x20, 0xc4, 0xcc, 0x0d, 0x3d, 0x38, 0x5c, 0x88, 0x9e, 0xc3, + 0x1a, 0xeb, 0x7d, 0x3d, 0xbc, 0x33, 0xa0, 0xcf, 0xc2, 0x90, 0x41, 0x55, + 0xc4, 0x22, 0xe5, 0xa9, +}; +static const unsigned char kat4044_addinpr2[] = { + 0x5d, 0xfb, 0x88, 0x87, 0xc0, 0x5c, 0x6d, 0xfe, 0x58, 0x03, 0x2c, 0xc1, + 0x9b, 0xe5, 0xd4, 0xaa, 0x51, 0xce, 0xd9, 0x2c, 0x87, 0x35, 0x0f, 0x05, + 0x2b, 0xa9, 0x93, 0x21, 0x45, 0x22, 0x38, 0x3b, 0xd2, 0x79, 0xfd, 0x31, + 0xbc, 0x6b, 0x54, 0xa2, +}; +static const unsigned char kat4044_retbits[] = { + 0xe2, 0xfb, 0xe5, 0xda, 0xab, 0x4f, 0xd7, 0xd4, 0xc2, 0xca, 0x07, 0x1a, + 0x2b, 0xbb, 0x5a, 0xd4, 0x51, 0x8a, 0x46, 0x7f, 0x4f, 0xb0, 0x96, 0x17, + 0x02, 0x61, 0xd1, 0x05, 0x8a, 0xcb, 0xd8, 0xdd, 0xe6, 0xaa, 0x8c, 0x2b, + 0x25, 0xd7, 0xa6, 0x48, 0x99, 0x20, 0xd8, 0xf2, 0x25, 0xc5, 0x5a, 0xb4, + 0x83, 0x09, 0xfe, 0x81, 0x00, 0x8c, 0x59, 0xdc, 0xfa, 0x2a, 0xdc, 0x4d, + 0xf0, 0xcd, 0x6d, 0x45, +}; +static const struct drbg_kat_pr_true kat4044_t = { + 8, kat4044_entropyin, kat4044_nonce, kat4044_persstr, + kat4044_entropyinpr1, kat4044_addinpr1, kat4044_entropyinpr2, + kat4044_addinpr2, kat4044_retbits +}; +static const struct drbg_kat kat4044 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4044_t +}; + +static const unsigned char kat4045_entropyin[] = { + 0xd1, 0x37, 0xbe, 0x3b, 0xdd, 0x16, 0xf9, 0x0d, 0x96, 0xe9, 0x99, 0x28, + 0xb3, 0xc2, 0x72, 0x10, 0xb0, 0xda, 0x7c, 0xda, 0x92, 0xb2, 0x7a, 0x2b, + 0xeb, 0xc5, 0xa9, 0xdd, 0x82, 0xd9, 0xdd, 0x8a, 0x08, 0x86, 0x4d, 0x39, + 0x93, 0x55, 0x8d, 0x4f, +}; +static const unsigned char kat4045_nonce[] = {0}; +static const unsigned char kat4045_persstr[] = {0}; +static const unsigned char kat4045_entropyinpr1[] = { + 0xec, 0x4d, 0x22, 0x19, 0xcb, 0xdc, 0x84, 0xcd, 0xd6, 0x2f, 0xaf, 0x65, + 0xb6, 0xd1, 0x8d, 0x5c, 0xe2, 0x80, 0x87, 0xa5, 0x4e, 0x06, 0xce, 0x69, + 0xf3, 0x10, 0xb7, 0x98, 0x8d, 0xcb, 0x25, 0xbb, 0x0d, 0xf8, 0xdf, 0x52, + 0x4d, 0xa2, 0x4c, 0x24, +}; +static const unsigned char kat4045_addinpr1[] = { + 0xd2, 0x2e, 0x21, 0x63, 0x15, 0xc9, 0x15, 0xd9, 0xb3, 0x59, 0xe5, 0x09, + 0xee, 0x48, 0xa6, 0x7f, 0x0a, 0x0f, 0x4e, 0x65, 0x77, 0x96, 0x72, 0xef, + 0xc1, 0x8b, 0xdf, 0x57, 0xe4, 0xd1, 0xf6, 0x66, 0xd9, 0xe4, 0xc8, 0xec, + 0x2c, 0xa4, 0x1f, 0x6b, +}; +static const unsigned char kat4045_entropyinpr2[] = { + 0x2b, 0x00, 0xd8, 0x44, 0xfa, 0x01, 0xa2, 0xfc, 0x1d, 0x36, 0xe5, 0x13, + 0x15, 0xa9, 0xc0, 0xc5, 0x04, 0xc2, 0xd8, 0x8d, 0xef, 0xb2, 0x1d, 0x63, + 0x61, 0x67, 0xdc, 0x77, 0xf5, 0x24, 0x8e, 0x87, 0x70, 0x13, 0x76, 0xd4, + 0xd7, 0x53, 0xe1, 0x20, +}; +static const unsigned char kat4045_addinpr2[] = { + 0x4a, 0xf1, 0x1e, 0xef, 0x51, 0x88, 0x10, 0x15, 0xd9, 0x2c, 0xc1, 0x88, + 0x2c, 0xd4, 0x80, 0x90, 0x36, 0xbf, 0xb3, 0x4a, 0x65, 0xe4, 0xeb, 0x93, + 0x3d, 0x2c, 0x55, 0xf0, 0xfa, 0x32, 0x7c, 0x8a, 0x2b, 0x21, 0xf9, 0xcf, + 0xbf, 0xbd, 0xdf, 0x9f, +}; +static const unsigned char kat4045_retbits[] = { + 0xbb, 0x74, 0xb3, 0x2d, 0xc4, 0xb4, 0xf3, 0xd5, 0x7b, 0x5c, 0x02, 0xf7, + 0xbc, 0x78, 0x9f, 0xe3, 0x0a, 0xf9, 0x12, 0x6c, 0x5a, 0x78, 0xc6, 0x36, + 0x8d, 0x05, 0x5c, 0x2d, 0xcd, 0x86, 0x6f, 0xe6, 0x40, 0xe3, 0x92, 0x16, + 0xee, 0x15, 0x4a, 0x7f, 0xed, 0x5e, 0x48, 0x9a, 0x78, 0x4c, 0xc7, 0x56, + 0x22, 0xf0, 0xa0, 0x1d, 0xee, 0x1f, 0xb1, 0xd6, 0xab, 0x8a, 0x39, 0xbe, + 0x0f, 0x7b, 0xe9, 0x28, +}; +static const struct drbg_kat_pr_true kat4045_t = { + 9, kat4045_entropyin, kat4045_nonce, kat4045_persstr, + kat4045_entropyinpr1, kat4045_addinpr1, kat4045_entropyinpr2, + kat4045_addinpr2, kat4045_retbits +}; +static const struct drbg_kat kat4045 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4045_t +}; + +static const unsigned char kat4046_entropyin[] = { + 0x20, 0xb1, 0xef, 0x15, 0x45, 0x01, 0x91, 0xf1, 0x23, 0x0a, 0xf6, 0x30, + 0xd2, 0xe7, 0xe7, 0x3f, 0xe3, 0x2b, 0x47, 0x85, 0xd3, 0xe5, 0x0c, 0x3e, + 0xb9, 0x14, 0x8b, 0x04, 0x9d, 0xca, 0x4a, 0x4f, 0x66, 0x39, 0x8e, 0xea, + 0x92, 0x24, 0xd1, 0x7a, +}; +static const unsigned char kat4046_nonce[] = {0}; +static const unsigned char kat4046_persstr[] = {0}; +static const unsigned char kat4046_entropyinpr1[] = { + 0x45, 0x5c, 0x93, 0x85, 0x70, 0x0f, 0x23, 0x12, 0x4d, 0x9b, 0x3e, 0x28, + 0x91, 0xf8, 0x05, 0x09, 0x21, 0xcc, 0xbc, 0x3b, 0x50, 0x36, 0x40, 0xfc, + 0x8f, 0xae, 0x79, 0x6c, 0xc5, 0xb9, 0x26, 0xcf, 0x35, 0x31, 0x6e, 0x14, + 0x63, 0x65, 0x87, 0xc7, +}; +static const unsigned char kat4046_addinpr1[] = { + 0x4d, 0x9b, 0x38, 0xf8, 0xdd, 0xad, 0x10, 0x71, 0x91, 0x66, 0x3e, 0xbd, + 0x7a, 0x4f, 0x73, 0x71, 0x45, 0xbd, 0xd5, 0xa0, 0x26, 0xa0, 0x1f, 0x12, + 0xbc, 0x56, 0x5a, 0x1c, 0xdd, 0x9e, 0x88, 0x11, 0xba, 0xb7, 0xf6, 0xd7, + 0xa6, 0x41, 0x62, 0x23, +}; +static const unsigned char kat4046_entropyinpr2[] = { + 0x00, 0x3e, 0xdc, 0x62, 0x64, 0xdd, 0x51, 0x95, 0x63, 0x79, 0x2d, 0x81, + 0x47, 0xcc, 0xc5, 0x83, 0x57, 0x18, 0x35, 0x69, 0xb2, 0x18, 0x7d, 0xd0, + 0x41, 0xd8, 0xbe, 0x00, 0xef, 0xf4, 0xcf, 0x5a, 0x30, 0x11, 0x4b, 0x93, + 0x21, 0x03, 0xb4, 0x34, +}; +static const unsigned char kat4046_addinpr2[] = { + 0x70, 0x40, 0x59, 0xd0, 0xf8, 0xc0, 0xed, 0x5c, 0xe5, 0x07, 0x54, 0x0c, + 0xa0, 0xa1, 0x2f, 0x12, 0x02, 0x47, 0x16, 0xb3, 0xea, 0x30, 0x05, 0x4e, + 0x81, 0x72, 0xf2, 0x7f, 0xbc, 0xe9, 0xd4, 0xd8, 0x4f, 0x3d, 0xb5, 0x60, + 0xd0, 0x6b, 0xcf, 0x75, +}; +static const unsigned char kat4046_retbits[] = { + 0xbc, 0x5a, 0xf2, 0xbb, 0xc7, 0x00, 0xc2, 0x59, 0x2a, 0x0e, 0xf0, 0x0b, + 0xbd, 0x5a, 0xf4, 0x32, 0x28, 0x57, 0xe5, 0x93, 0xac, 0x41, 0x03, 0xa0, + 0xc6, 0x40, 0xd4, 0xa2, 0xa6, 0x9f, 0xee, 0x1f, 0x55, 0xd5, 0x71, 0x63, + 0x70, 0x92, 0x13, 0x7d, 0x34, 0x3f, 0x2d, 0x09, 0x39, 0x9d, 0x38, 0x6a, + 0x5a, 0x6c, 0x15, 0x4c, 0x57, 0x56, 0xba, 0x4c, 0x6d, 0x2d, 0x5b, 0xca, + 0x66, 0x53, 0x29, 0x46, +}; +static const struct drbg_kat_pr_true kat4046_t = { + 10, kat4046_entropyin, kat4046_nonce, kat4046_persstr, + kat4046_entropyinpr1, kat4046_addinpr1, kat4046_entropyinpr2, + kat4046_addinpr2, kat4046_retbits +}; +static const struct drbg_kat kat4046 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4046_t +}; + +static const unsigned char kat4047_entropyin[] = { + 0x78, 0x30, 0x96, 0xff, 0x2e, 0x91, 0x1c, 0x69, 0xae, 0x95, 0x39, 0xaa, + 0xf8, 0x6d, 0xa4, 0xab, 0x41, 0x4c, 0x8c, 0x10, 0xb7, 0xb2, 0xd8, 0x2c, + 0x23, 0x67, 0x58, 0x31, 0x3a, 0xa3, 0xad, 0x20, 0x96, 0xbf, 0x75, 0x29, + 0x72, 0x7e, 0xf7, 0x50, +}; +static const unsigned char kat4047_nonce[] = {0}; +static const unsigned char kat4047_persstr[] = {0}; +static const unsigned char kat4047_entropyinpr1[] = { + 0x18, 0xb4, 0x69, 0xba, 0xd3, 0xde, 0x43, 0x1e, 0x06, 0xbe, 0xb2, 0x34, + 0x64, 0x19, 0x13, 0x57, 0x86, 0x8e, 0xcb, 0x7a, 0x79, 0xc6, 0x43, 0x46, + 0x0f, 0x3a, 0x73, 0x20, 0xbe, 0xa8, 0x61, 0x01, 0x09, 0x78, 0xfa, 0xa1, + 0x37, 0x98, 0x16, 0xbc, +}; +static const unsigned char kat4047_addinpr1[] = { + 0xfb, 0x15, 0x7c, 0xb2, 0xc3, 0x23, 0xfc, 0x5a, 0xcd, 0xb1, 0x7d, 0x55, + 0x79, 0x39, 0x5f, 0xf1, 0xe1, 0xa8, 0x89, 0x71, 0x16, 0x2e, 0x4f, 0xde, + 0x11, 0x1f, 0x72, 0x83, 0x25, 0x75, 0x0a, 0x4a, 0x01, 0x1b, 0x70, 0x92, + 0x08, 0x2f, 0x77, 0x19, +}; +static const unsigned char kat4047_entropyinpr2[] = { + 0xaf, 0x9e, 0x39, 0x0e, 0xb1, 0x77, 0x6c, 0xf2, 0xa8, 0x80, 0xe9, 0x28, + 0x14, 0x76, 0x4a, 0x60, 0xc3, 0xd7, 0xbf, 0xa3, 0xbf, 0x00, 0x11, 0x30, + 0xf1, 0x29, 0x30, 0x67, 0x95, 0x3c, 0x74, 0x00, 0x71, 0xb2, 0xb4, 0xcd, + 0x00, 0xf5, 0xd4, 0x1b, +}; +static const unsigned char kat4047_addinpr2[] = { + 0xe5, 0xfb, 0x2e, 0x23, 0x75, 0x4d, 0x4c, 0x61, 0x2e, 0xf9, 0x69, 0x14, + 0xd7, 0x3f, 0x09, 0x12, 0x95, 0x2a, 0x96, 0x8e, 0x8c, 0xf4, 0xe1, 0x95, + 0x2e, 0xaf, 0x29, 0x12, 0x04, 0xb6, 0xaf, 0xe8, 0x4f, 0xe2, 0x6c, 0xc0, + 0x39, 0x1f, 0x09, 0xbd, +}; +static const unsigned char kat4047_retbits[] = { + 0x3c, 0xb2, 0x7f, 0xc2, 0x83, 0xe4, 0x98, 0xaa, 0x7d, 0x2c, 0x43, 0xfb, + 0x77, 0x93, 0x3d, 0x3d, 0x6a, 0x02, 0x69, 0x09, 0xcc, 0x0d, 0xfc, 0xb8, + 0x01, 0x35, 0xdd, 0xeb, 0x83, 0x35, 0x4c, 0x33, 0xcc, 0x15, 0xf5, 0x0a, + 0x89, 0x7e, 0xd1, 0x5d, 0xab, 0x57, 0xda, 0xbe, 0x8f, 0xab, 0x69, 0x06, + 0x4e, 0x5b, 0x7f, 0xbf, 0x59, 0x81, 0x0b, 0x53, 0x88, 0x6a, 0xa7, 0xa5, + 0x95, 0x3e, 0x89, 0x63, +}; +static const struct drbg_kat_pr_true kat4047_t = { + 11, kat4047_entropyin, kat4047_nonce, kat4047_persstr, + kat4047_entropyinpr1, kat4047_addinpr1, kat4047_entropyinpr2, + kat4047_addinpr2, kat4047_retbits +}; +static const struct drbg_kat kat4047 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4047_t +}; + +static const unsigned char kat4048_entropyin[] = { + 0x5f, 0x3f, 0xf6, 0xdf, 0xf2, 0x22, 0x68, 0x05, 0x04, 0x05, 0x2d, 0x94, + 0xae, 0x64, 0xf4, 0xc8, 0x3a, 0x5b, 0x9e, 0x77, 0xdf, 0xe7, 0xb4, 0xcb, + 0x9f, 0xe4, 0x14, 0x1f, 0x04, 0xc7, 0x51, 0xa2, 0xfd, 0xaa, 0x2c, 0xa0, + 0xa5, 0x8a, 0x68, 0xd5, +}; +static const unsigned char kat4048_nonce[] = {0}; +static const unsigned char kat4048_persstr[] = {0}; +static const unsigned char kat4048_entropyinpr1[] = { + 0x60, 0x90, 0x29, 0x0f, 0x51, 0x82, 0xb0, 0x47, 0x0a, 0x97, 0x34, 0x87, + 0xbf, 0x45, 0x35, 0x7e, 0x16, 0x76, 0x40, 0x70, 0xf9, 0x4f, 0x28, 0x6f, + 0xee, 0x55, 0x21, 0x49, 0x9a, 0x66, 0xba, 0x64, 0xc5, 0x51, 0x54, 0xb1, + 0x9f, 0xc3, 0x8d, 0x95, +}; +static const unsigned char kat4048_addinpr1[] = { + 0x85, 0x98, 0xe8, 0x66, 0x26, 0x60, 0xe3, 0xf5, 0x43, 0xb7, 0x0f, 0x0d, + 0x4e, 0x5d, 0xe6, 0x53, 0x5a, 0xae, 0x64, 0xdb, 0x3b, 0x55, 0x6e, 0x2c, + 0x57, 0x56, 0xff, 0x45, 0x27, 0x5d, 0xdf, 0x22, 0xd6, 0x71, 0xbd, 0xaa, + 0xbf, 0x3a, 0x39, 0x7e, +}; +static const unsigned char kat4048_entropyinpr2[] = { + 0x05, 0xd8, 0x44, 0xc7, 0x0f, 0xda, 0xd7, 0xd8, 0x0b, 0xa8, 0x53, 0xf4, + 0x3e, 0xcb, 0x66, 0xe1, 0x7c, 0xc5, 0x0d, 0x2c, 0x2f, 0xaf, 0x2a, 0x74, + 0x82, 0x7a, 0xf2, 0xf4, 0x6b, 0x82, 0x6d, 0x4d, 0x0a, 0x96, 0x6a, 0xa8, + 0x2b, 0x49, 0xe6, 0x80, +}; +static const unsigned char kat4048_addinpr2[] = { + 0x99, 0xa0, 0xc2, 0xc6, 0x97, 0x19, 0x2e, 0x74, 0x3b, 0x19, 0x97, 0xe6, + 0xbf, 0x74, 0x18, 0xa1, 0x1f, 0xfc, 0x14, 0x25, 0xa4, 0xd7, 0x21, 0x57, + 0x22, 0xa1, 0xbb, 0xe9, 0x83, 0x3d, 0xd4, 0x10, 0x4c, 0x55, 0xa1, 0xa8, + 0xc5, 0x76, 0x8e, 0xc6, +}; +static const unsigned char kat4048_retbits[] = { + 0x86, 0x2b, 0xd0, 0xa5, 0x24, 0xbf, 0xf9, 0xa8, 0x71, 0x68, 0x20, 0xbd, + 0xf9, 0xa0, 0x6d, 0x66, 0xf8, 0x8a, 0xa4, 0xed, 0xe3, 0x20, 0x55, 0x3f, + 0x79, 0xb6, 0x11, 0x85, 0xa5, 0x0d, 0x58, 0xf4, 0xd3, 0xeb, 0x82, 0x63, + 0x79, 0x4e, 0xa8, 0xb3, 0x32, 0x39, 0x89, 0x68, 0x7b, 0x4f, 0x54, 0x93, + 0x24, 0x54, 0xbe, 0xac, 0xf0, 0x15, 0xd1, 0x8c, 0x3d, 0x10, 0xe3, 0x47, + 0xd7, 0x93, 0x56, 0x8d, +}; +static const struct drbg_kat_pr_true kat4048_t = { + 12, kat4048_entropyin, kat4048_nonce, kat4048_persstr, + kat4048_entropyinpr1, kat4048_addinpr1, kat4048_entropyinpr2, + kat4048_addinpr2, kat4048_retbits +}; +static const struct drbg_kat kat4048 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4048_t +}; + +static const unsigned char kat4049_entropyin[] = { + 0x87, 0x72, 0xfb, 0x86, 0xc6, 0xf7, 0x71, 0x16, 0x86, 0x10, 0xd6, 0x0f, + 0x62, 0xf8, 0x04, 0xb3, 0x80, 0x3c, 0x4b, 0xb7, 0x0d, 0xfa, 0xa2, 0x52, + 0x18, 0x0a, 0x7d, 0x12, 0xc4, 0x6e, 0xe6, 0xd3, 0xba, 0x3b, 0x4a, 0xe5, + 0xca, 0x67, 0xbe, 0x95, +}; +static const unsigned char kat4049_nonce[] = {0}; +static const unsigned char kat4049_persstr[] = {0}; +static const unsigned char kat4049_entropyinpr1[] = { + 0xa6, 0x5c, 0x84, 0xc7, 0xc4, 0xf7, 0xe9, 0x98, 0xe2, 0x73, 0xa2, 0xc7, + 0xae, 0x89, 0x68, 0x0e, 0xb2, 0x90, 0xeb, 0xc8, 0xcb, 0xea, 0x53, 0x54, + 0x90, 0xd5, 0x22, 0x44, 0xbe, 0x90, 0xe5, 0x62, 0xaa, 0x6d, 0xc9, 0x8b, + 0xfe, 0x63, 0xd8, 0x8e, +}; +static const unsigned char kat4049_addinpr1[] = { + 0x2c, 0x77, 0x76, 0x54, 0x82, 0xdc, 0xf7, 0x2c, 0x58, 0x6c, 0xb0, 0x2f, + 0x8e, 0x31, 0x76, 0x26, 0x64, 0x7b, 0x7d, 0xdc, 0x19, 0xaf, 0x06, 0xca, + 0xa3, 0x03, 0xf4, 0xa8, 0x29, 0xb1, 0x24, 0x54, 0x3d, 0x40, 0xe4, 0x1f, + 0x5a, 0x6f, 0x4b, 0xc2, +}; +static const unsigned char kat4049_entropyinpr2[] = { + 0xdf, 0x9a, 0x15, 0xd2, 0x02, 0x1d, 0x0d, 0x9a, 0x9e, 0x8a, 0xbf, 0x4e, + 0x79, 0x55, 0xb0, 0x96, 0x19, 0xd0, 0x34, 0x8a, 0x2a, 0xa0, 0xa9, 0x5f, + 0xef, 0xcc, 0xf0, 0x42, 0x62, 0x0e, 0x0b, 0x86, 0x8f, 0x32, 0x44, 0x1e, + 0x73, 0xb4, 0x9f, 0xf7, +}; +static const unsigned char kat4049_addinpr2[] = { + 0x9e, 0x9c, 0x88, 0x0d, 0x80, 0x14, 0x0a, 0x3d, 0x3d, 0xa9, 0x5a, 0x12, + 0x6e, 0x92, 0x5b, 0x48, 0x89, 0x42, 0x38, 0x42, 0x14, 0xd6, 0xe9, 0x75, + 0x75, 0x38, 0x6b, 0x9a, 0x32, 0x9b, 0xd9, 0x1e, 0xd2, 0x69, 0x73, 0xee, + 0xb4, 0xca, 0xd4, 0x48, +}; +static const unsigned char kat4049_retbits[] = { + 0x5f, 0x2a, 0x60, 0x8c, 0xba, 0x8b, 0xc5, 0xbe, 0xcb, 0x3d, 0xc9, 0x6b, + 0x5c, 0xaf, 0xe2, 0xaf, 0xc5, 0xe1, 0x7e, 0x92, 0xb7, 0x3c, 0x6d, 0x9f, + 0x81, 0x23, 0x7a, 0x71, 0x81, 0x0a, 0x7a, 0x83, 0xbd, 0x42, 0xa8, 0x58, + 0xe7, 0xbb, 0x25, 0xc5, 0x9d, 0x5c, 0x36, 0x79, 0x1e, 0x36, 0xac, 0xb6, + 0x49, 0xdd, 0x2b, 0xd3, 0x83, 0xab, 0xe2, 0x68, 0x96, 0x12, 0xc6, 0x8c, + 0x35, 0x64, 0xe1, 0x0d, +}; +static const struct drbg_kat_pr_true kat4049_t = { + 13, kat4049_entropyin, kat4049_nonce, kat4049_persstr, + kat4049_entropyinpr1, kat4049_addinpr1, kat4049_entropyinpr2, + kat4049_addinpr2, kat4049_retbits +}; +static const struct drbg_kat kat4049 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4049_t +}; + +static const unsigned char kat4050_entropyin[] = { + 0x90, 0x27, 0xdd, 0x60, 0xe9, 0x2d, 0x08, 0x61, 0x4b, 0x6a, 0x59, 0x0f, + 0xc3, 0x15, 0x1b, 0xae, 0x2b, 0x3f, 0xf7, 0x9d, 0xde, 0x01, 0x08, 0xd4, + 0x88, 0xd0, 0x0f, 0xb3, 0x55, 0xb7, 0x9b, 0x38, 0xfa, 0x88, 0xf6, 0xa8, + 0x91, 0xa4, 0x7b, 0xef, +}; +static const unsigned char kat4050_nonce[] = {0}; +static const unsigned char kat4050_persstr[] = {0}; +static const unsigned char kat4050_entropyinpr1[] = { + 0x03, 0x04, 0x40, 0x59, 0x1e, 0x9c, 0x44, 0x0a, 0xd7, 0xfb, 0x67, 0x3c, + 0x2b, 0x4e, 0x29, 0x02, 0xf7, 0x5b, 0x64, 0x4b, 0xbf, 0x7b, 0x4a, 0xe7, + 0x5f, 0xa1, 0x55, 0xca, 0x7e, 0x1c, 0xb3, 0x9f, 0x61, 0xc5, 0x76, 0x1e, + 0xc8, 0xfc, 0x7f, 0x14, +}; +static const unsigned char kat4050_addinpr1[] = { + 0xb3, 0x8f, 0x24, 0xae, 0x5d, 0x85, 0xc3, 0x00, 0x88, 0xc3, 0x58, 0x4d, + 0xc1, 0x54, 0x81, 0x54, 0xf5, 0x23, 0x30, 0x8a, 0x5c, 0x22, 0x14, 0xc2, + 0xa5, 0x18, 0x17, 0xed, 0xd1, 0x35, 0xcb, 0x54, 0x4f, 0x3a, 0x04, 0x00, + 0x2e, 0x16, 0x16, 0xe3, +}; +static const unsigned char kat4050_entropyinpr2[] = { + 0x1d, 0x81, 0xb5, 0xe1, 0x4e, 0x9f, 0x99, 0x5c, 0xf1, 0x97, 0x71, 0xd5, + 0x48, 0x77, 0xe9, 0x7b, 0x2d, 0x4f, 0x55, 0x1c, 0x36, 0x03, 0x38, 0x74, + 0xfc, 0xf3, 0xa4, 0x81, 0x43, 0x12, 0xd7, 0x06, 0x4a, 0xcc, 0x25, 0x56, + 0xea, 0x5e, 0x0f, 0xdc, +}; +static const unsigned char kat4050_addinpr2[] = { + 0x3f, 0x52, 0x21, 0x73, 0x2e, 0x41, 0x7f, 0xe4, 0x23, 0x46, 0x26, 0xd8, + 0xb4, 0xfe, 0x5d, 0xce, 0x8d, 0x09, 0x74, 0xa7, 0x55, 0x1c, 0x4e, 0x7b, + 0x9e, 0xb8, 0x27, 0xf3, 0x2c, 0x7b, 0x85, 0x79, 0x3b, 0x81, 0xb3, 0x7b, + 0x43, 0x55, 0xf6, 0xa0, +}; +static const unsigned char kat4050_retbits[] = { + 0xc6, 0xd9, 0xcb, 0x21, 0x92, 0x23, 0x98, 0xc6, 0xa6, 0x3e, 0x4d, 0x17, + 0xf0, 0xf6, 0x9f, 0x1d, 0x4c, 0x1b, 0x49, 0x98, 0xd7, 0x38, 0x28, 0xd4, + 0x3e, 0xa1, 0xf6, 0x9a, 0xca, 0xd5, 0xb1, 0xd9, 0x48, 0x00, 0xa6, 0x97, + 0x6c, 0x09, 0xa8, 0xb5, 0xbe, 0xfa, 0x2b, 0x0c, 0x82, 0x87, 0x78, 0x74, + 0xea, 0xed, 0x15, 0x02, 0x7f, 0x9f, 0x7d, 0xad, 0x3b, 0xff, 0xa0, 0x05, + 0xe4, 0x97, 0x58, 0xa0, +}; +static const struct drbg_kat_pr_true kat4050_t = { + 14, kat4050_entropyin, kat4050_nonce, kat4050_persstr, + kat4050_entropyinpr1, kat4050_addinpr1, kat4050_entropyinpr2, + kat4050_addinpr2, kat4050_retbits +}; +static const struct drbg_kat kat4050 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 0, 40, 64, &kat4050_t +}; + +static const unsigned char kat4051_entropyin[] = { + 0x69, 0xf8, 0xeb, 0xe7, 0x50, 0x4d, 0xa9, 0x33, 0x89, 0x3e, 0x02, 0x1d, + 0x09, 0x43, 0xdb, 0xfb, 0xff, 0xe1, 0xa7, 0xf3, 0x4e, 0xdc, 0x54, 0x48, + 0xcf, 0x97, 0xa5, 0xee, 0xe8, 0x7d, 0xe3, 0x39, 0x51, 0xfe, 0x27, 0x17, + 0x0d, 0xee, 0x63, 0x4e, +}; +static const unsigned char kat4051_nonce[] = {0}; +static const unsigned char kat4051_persstr[] = { + 0x83, 0xaa, 0x3e, 0x06, 0xd3, 0xd9, 0x1f, 0x23, 0x66, 0x55, 0x2a, 0xa6, + 0x6a, 0xd4, 0x40, 0xd6, 0xd2, 0x3e, 0x3f, 0x13, 0x9e, 0xdc, 0xe7, 0x1d, + 0x4a, 0x42, 0x5d, 0x3f, 0xeb, 0x11, 0x4d, 0xda, 0x56, 0xf6, 0x7c, 0xc1, + 0x70, 0x06, 0xf9, 0xea, +}; +static const unsigned char kat4051_entropyinpr1[] = { + 0x95, 0x46, 0x4d, 0x5c, 0xec, 0x3b, 0xa7, 0x61, 0x14, 0xb6, 0x48, 0x03, + 0x47, 0x41, 0x9a, 0x35, 0xe3, 0xe7, 0x38, 0xf0, 0x4f, 0xcf, 0x42, 0x1d, + 0x1e, 0x27, 0x0f, 0xb8, 0x22, 0xcc, 0xce, 0xad, 0xa6, 0x3e, 0xe2, 0x93, + 0x24, 0x3b, 0x12, 0xe4, +}; +static const unsigned char kat4051_addinpr1[] = {0}; +static const unsigned char kat4051_entropyinpr2[] = { + 0x64, 0xc7, 0x7b, 0xc8, 0xf0, 0x2c, 0x83, 0x91, 0x9b, 0xf2, 0xd2, 0xe5, + 0x12, 0xe7, 0x17, 0xb8, 0x63, 0xdc, 0x32, 0xcc, 0x90, 0x2e, 0xb6, 0xa4, + 0x10, 0xf6, 0x17, 0xa2, 0x42, 0x01, 0x7d, 0xcc, 0xfb, 0x49, 0xee, 0x20, + 0x7a, 0x48, 0x7b, 0x63, +}; +static const unsigned char kat4051_addinpr2[] = {0}; +static const unsigned char kat4051_retbits[] = { + 0x12, 0x5d, 0xfa, 0x2e, 0xcb, 0x41, 0x7a, 0x4f, 0x6c, 0x07, 0x5a, 0x61, + 0xd4, 0xb9, 0x0d, 0xa4, 0x47, 0x8f, 0x17, 0xcd, 0xfb, 0xeb, 0x67, 0x81, + 0x87, 0xb1, 0x27, 0x6e, 0xdf, 0x6b, 0xf0, 0x29, 0x5d, 0xe7, 0xd8, 0xb9, + 0x0b, 0x5c, 0x9b, 0xd7, 0x72, 0xea, 0x36, 0x04, 0xc4, 0xde, 0x34, 0x23, + 0xf8, 0xd8, 0x19, 0xce, 0x8c, 0x86, 0xcc, 0xae, 0x1a, 0x97, 0x07, 0x49, + 0x7a, 0x11, 0x35, 0x5e, +}; +static const struct drbg_kat_pr_true kat4051_t = { + 0, kat4051_entropyin, kat4051_nonce, kat4051_persstr, + kat4051_entropyinpr1, kat4051_addinpr1, kat4051_entropyinpr2, + kat4051_addinpr2, kat4051_retbits +}; +static const struct drbg_kat kat4051 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4051_t +}; + +static const unsigned char kat4052_entropyin[] = { + 0xb5, 0x7f, 0x96, 0x77, 0x21, 0x29, 0x84, 0x90, 0x0c, 0xd7, 0x3a, 0x14, + 0x00, 0xe3, 0xbf, 0x1d, 0xca, 0x6c, 0xde, 0x37, 0x70, 0xb9, 0xd9, 0xb8, + 0xe8, 0x88, 0xd9, 0xc6, 0xb7, 0x4d, 0xa2, 0x17, 0xeb, 0xdb, 0xa6, 0x8e, + 0x99, 0x29, 0x7f, 0x14, +}; +static const unsigned char kat4052_nonce[] = {0}; +static const unsigned char kat4052_persstr[] = { + 0xd1, 0x11, 0x49, 0x1e, 0x7c, 0x80, 0xf3, 0xa8, 0x9b, 0x1c, 0x3f, 0xa4, + 0x20, 0xae, 0xb3, 0x72, 0x10, 0xf9, 0x41, 0x00, 0x72, 0x1b, 0xca, 0xd2, + 0x97, 0xbb, 0x79, 0x1d, 0x4d, 0xe1, 0xea, 0x92, 0xe7, 0x9f, 0x05, 0xe4, + 0xe7, 0xd5, 0x44, 0xe8, +}; +static const unsigned char kat4052_entropyinpr1[] = { + 0xd0, 0x57, 0x1a, 0x4e, 0x6a, 0x3a, 0xbd, 0xf8, 0x19, 0x19, 0x3e, 0x01, + 0x8e, 0x66, 0x26, 0x88, 0x16, 0xc7, 0xdc, 0xe1, 0x20, 0x3a, 0x1f, 0x6f, + 0xe1, 0x9e, 0x54, 0x5b, 0x42, 0x8a, 0x3d, 0xe5, 0x79, 0x29, 0xb0, 0xb3, + 0xe3, 0xcc, 0x08, 0xd2, +}; +static const unsigned char kat4052_addinpr1[] = {0}; +static const unsigned char kat4052_entropyinpr2[] = { + 0x46, 0x2f, 0x17, 0x59, 0xd2, 0x04, 0x6f, 0x28, 0x1c, 0x2c, 0xab, 0x66, + 0x81, 0x79, 0xa1, 0x13, 0xaa, 0x5e, 0x34, 0xc7, 0x47, 0x73, 0xc9, 0xc5, + 0xe6, 0x1f, 0xab, 0xe2, 0x9b, 0x2a, 0x87, 0x73, 0xb6, 0x81, 0x9a, 0xb5, + 0x22, 0xd2, 0x5d, 0xa8, +}; +static const unsigned char kat4052_addinpr2[] = {0}; +static const unsigned char kat4052_retbits[] = { + 0xdd, 0x69, 0xc0, 0x91, 0xf0, 0x51, 0xe8, 0xad, 0x84, 0x6c, 0x43, 0xb9, + 0x11, 0x23, 0x74, 0x0f, 0xd2, 0x50, 0x3d, 0x4c, 0xcc, 0x82, 0xab, 0x1d, + 0xcf, 0x4a, 0x76, 0xc9, 0xea, 0x05, 0x76, 0xfd, 0xee, 0x62, 0x8d, 0xad, + 0x2e, 0x8c, 0x7a, 0x46, 0x27, 0xec, 0xce, 0xc2, 0x2b, 0xbc, 0x65, 0xfd, + 0x9e, 0xb9, 0x35, 0x11, 0xf1, 0x5a, 0x8b, 0x81, 0x42, 0x2b, 0x03, 0x2c, + 0xaf, 0x12, 0x2e, 0x3a, +}; +static const struct drbg_kat_pr_true kat4052_t = { + 1, kat4052_entropyin, kat4052_nonce, kat4052_persstr, + kat4052_entropyinpr1, kat4052_addinpr1, kat4052_entropyinpr2, + kat4052_addinpr2, kat4052_retbits +}; +static const struct drbg_kat kat4052 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4052_t +}; + +static const unsigned char kat4053_entropyin[] = { + 0x44, 0x5e, 0x9f, 0x07, 0xfa, 0xb8, 0x1a, 0x60, 0x70, 0x77, 0xbd, 0xae, + 0xa1, 0x3f, 0x60, 0x7e, 0xc1, 0xee, 0x32, 0xdb, 0xa3, 0x95, 0x1d, 0x3d, + 0xba, 0xbe, 0xfa, 0x65, 0x0f, 0xd0, 0xdc, 0xb4, 0x24, 0x85, 0x5d, 0x38, + 0xe8, 0xfb, 0xfa, 0x7b, +}; +static const unsigned char kat4053_nonce[] = {0}; +static const unsigned char kat4053_persstr[] = { + 0xb2, 0xef, 0x7e, 0x48, 0x8c, 0x60, 0xed, 0x41, 0x4d, 0x0a, 0x1e, 0xb6, + 0x58, 0xed, 0x96, 0x1d, 0xd6, 0xb8, 0xe1, 0xd1, 0x97, 0xaf, 0x12, 0xe1, + 0x2e, 0x19, 0x43, 0x4b, 0xca, 0x7a, 0xe7, 0x75, 0xf0, 0x74, 0xdb, 0x74, + 0xcf, 0x84, 0xbb, 0x99, +}; +static const unsigned char kat4053_entropyinpr1[] = { + 0xcb, 0x6e, 0x16, 0x2f, 0xae, 0xfc, 0xc7, 0xa6, 0x62, 0x69, 0xd5, 0xd2, + 0xd3, 0x0a, 0x2f, 0x9f, 0x10, 0xe9, 0x93, 0x05, 0xcc, 0xf5, 0xa4, 0xb7, + 0x7c, 0xf3, 0x04, 0xf6, 0xf0, 0xa7, 0x30, 0xc3, 0x73, 0xb8, 0xc7, 0xea, + 0x49, 0x3f, 0xb5, 0x12, +}; +static const unsigned char kat4053_addinpr1[] = {0}; +static const unsigned char kat4053_entropyinpr2[] = { + 0x1c, 0xfb, 0xcc, 0x74, 0x25, 0x03, 0x43, 0x98, 0xf9, 0x04, 0x4f, 0x32, + 0x34, 0x5b, 0x5f, 0x05, 0x9d, 0x61, 0x4b, 0x5f, 0xea, 0xc6, 0x1f, 0xd9, + 0x0c, 0xe1, 0x46, 0x4b, 0xc2, 0xc0, 0x1e, 0xc6, 0x9e, 0x81, 0x25, 0x7d, + 0x05, 0x07, 0x51, 0x92, +}; +static const unsigned char kat4053_addinpr2[] = {0}; +static const unsigned char kat4053_retbits[] = { + 0x36, 0xb9, 0x1f, 0xca, 0x75, 0x46, 0x03, 0x39, 0x2b, 0x23, 0x2e, 0x27, + 0xdf, 0xe8, 0xc8, 0x33, 0xec, 0x3d, 0x80, 0xc7, 0x8b, 0xc5, 0xaa, 0x47, + 0x2a, 0x59, 0xa5, 0xfe, 0xcf, 0xc4, 0x31, 0x1b, 0x86, 0xac, 0xcd, 0xbd, + 0x16, 0x4e, 0x39, 0x85, 0x5a, 0x38, 0xff, 0x13, 0xc9, 0x9c, 0x70, 0xf6, + 0xb4, 0x39, 0x33, 0xf3, 0x27, 0xea, 0xe1, 0x73, 0x3c, 0x6a, 0xb4, 0xe0, + 0xe2, 0xad, 0x41, 0xe1, +}; +static const struct drbg_kat_pr_true kat4053_t = { + 2, kat4053_entropyin, kat4053_nonce, kat4053_persstr, + kat4053_entropyinpr1, kat4053_addinpr1, kat4053_entropyinpr2, + kat4053_addinpr2, kat4053_retbits +}; +static const struct drbg_kat kat4053 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4053_t +}; + +static const unsigned char kat4054_entropyin[] = { + 0x5b, 0xde, 0x17, 0xac, 0x69, 0xbf, 0x36, 0xbb, 0x75, 0x9a, 0x18, 0xcc, + 0x5b, 0xe7, 0xb0, 0xbc, 0x22, 0x31, 0xa1, 0x98, 0x65, 0xbb, 0x6d, 0x7b, + 0x0b, 0x3b, 0x7a, 0xfe, 0x0b, 0x3f, 0x12, 0x3a, 0xcd, 0x70, 0x05, 0xa5, + 0x37, 0x22, 0xf8, 0x21, +}; +static const unsigned char kat4054_nonce[] = {0}; +static const unsigned char kat4054_persstr[] = { + 0x0e, 0xc5, 0xa5, 0xa3, 0x71, 0xf0, 0xe0, 0x19, 0x12, 0x2e, 0x46, 0xe6, + 0x58, 0x34, 0x6d, 0x6d, 0xf0, 0x2c, 0x77, 0xe3, 0x6e, 0xfc, 0x01, 0x07, + 0x87, 0xb4, 0x74, 0xfe, 0xf7, 0xa5, 0xf7, 0xae, 0x28, 0xc4, 0xe4, 0xcc, + 0xc0, 0xaf, 0x3e, 0xde, +}; +static const unsigned char kat4054_entropyinpr1[] = { + 0x03, 0xd6, 0x93, 0xda, 0x71, 0xdf, 0xc9, 0x0c, 0xee, 0xab, 0xa6, 0xa7, + 0x22, 0xe9, 0x01, 0x56, 0x62, 0x07, 0x1b, 0x76, 0x8d, 0xe3, 0x86, 0xd6, + 0x01, 0x9b, 0x4d, 0x5f, 0x12, 0x32, 0x35, 0x58, 0xcc, 0x3a, 0x5e, 0x3a, + 0x56, 0x63, 0xe4, 0xbb, +}; +static const unsigned char kat4054_addinpr1[] = {0}; +static const unsigned char kat4054_entropyinpr2[] = { + 0xad, 0x72, 0x90, 0xac, 0xe8, 0xf0, 0x85, 0x86, 0x41, 0xa4, 0x3e, 0xb7, + 0xee, 0x50, 0xb1, 0xdb, 0x85, 0x8f, 0xe2, 0xa1, 0x01, 0x15, 0xa3, 0x39, + 0x64, 0x1a, 0x77, 0x67, 0xea, 0x05, 0x75, 0x13, 0xfd, 0x77, 0x32, 0xc7, + 0xb7, 0xff, 0x2e, 0x07, +}; +static const unsigned char kat4054_addinpr2[] = {0}; +static const unsigned char kat4054_retbits[] = { + 0x57, 0x77, 0x0a, 0x05, 0xe9, 0x90, 0xa0, 0x6a, 0xf3, 0x72, 0x5a, 0x07, + 0x0c, 0x0b, 0x71, 0x56, 0x33, 0xe5, 0xc1, 0x13, 0xca, 0x5b, 0xaf, 0x1a, + 0xad, 0x4a, 0x6f, 0xb2, 0x53, 0x80, 0x0b, 0x77, 0x6f, 0x7e, 0x67, 0x3f, + 0x9a, 0x3d, 0xb2, 0xeb, 0x96, 0x5a, 0xa8, 0x61, 0x22, 0x01, 0xdc, 0x9c, + 0x6d, 0x20, 0x9c, 0xe8, 0xea, 0x29, 0x2e, 0x09, 0x98, 0x1c, 0x07, 0xa9, + 0x0f, 0xc6, 0x9c, 0x76, +}; +static const struct drbg_kat_pr_true kat4054_t = { + 3, kat4054_entropyin, kat4054_nonce, kat4054_persstr, + kat4054_entropyinpr1, kat4054_addinpr1, kat4054_entropyinpr2, + kat4054_addinpr2, kat4054_retbits +}; +static const struct drbg_kat kat4054 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4054_t +}; + +static const unsigned char kat4055_entropyin[] = { + 0xc5, 0x47, 0x25, 0x8e, 0x18, 0x05, 0x20, 0x6e, 0x63, 0x4e, 0x8e, 0xa8, + 0x29, 0xdd, 0x4f, 0x52, 0x16, 0xfc, 0xdb, 0x4e, 0x9f, 0x2d, 0x80, 0x5e, + 0xbe, 0x1e, 0x31, 0x53, 0xa3, 0xf6, 0x1b, 0x5f, 0xf1, 0x2f, 0x8a, 0xa1, + 0xcf, 0x82, 0x29, 0x4e, +}; +static const unsigned char kat4055_nonce[] = {0}; +static const unsigned char kat4055_persstr[] = { + 0xac, 0xf2, 0x98, 0x82, 0x35, 0x41, 0x7b, 0x30, 0x85, 0xeb, 0x59, 0xe9, + 0xb4, 0x9e, 0x59, 0x20, 0x2b, 0x41, 0xce, 0xbf, 0xe3, 0x4f, 0x36, 0x66, + 0xdc, 0x37, 0xfb, 0x14, 0xc7, 0x16, 0x45, 0x72, 0x39, 0xbb, 0x4d, 0x4e, + 0x36, 0x43, 0xb3, 0xfc, +}; +static const unsigned char kat4055_entropyinpr1[] = { + 0x89, 0xbf, 0x53, 0x64, 0x15, 0xaa, 0x5b, 0x67, 0x3a, 0xf6, 0xb7, 0x75, + 0xcb, 0x6d, 0x6a, 0x9a, 0xc3, 0x99, 0xb3, 0xce, 0x9e, 0xe5, 0x40, 0x7c, + 0x06, 0x4c, 0xca, 0x6d, 0x00, 0x58, 0x4a, 0x70, 0x7e, 0x7b, 0x2f, 0xb7, + 0xfe, 0x62, 0xa4, 0xd7, +}; +static const unsigned char kat4055_addinpr1[] = {0}; +static const unsigned char kat4055_entropyinpr2[] = { + 0x22, 0xfb, 0x3b, 0xe1, 0x27, 0x35, 0xe6, 0xbc, 0x87, 0x8d, 0x9b, 0x8f, + 0x9f, 0x65, 0xb1, 0x3e, 0x60, 0x4f, 0x29, 0x6b, 0xc9, 0x9c, 0xdf, 0xf2, + 0x1c, 0x7b, 0x80, 0x1e, 0x78, 0x6e, 0xa3, 0x77, 0x99, 0xb7, 0x0e, 0xd5, + 0x3a, 0xe7, 0xad, 0x5a, +}; +static const unsigned char kat4055_addinpr2[] = {0}; +static const unsigned char kat4055_retbits[] = { + 0xe1, 0x77, 0xdf, 0xe6, 0xda, 0x1a, 0xd6, 0x83, 0x89, 0xa5, 0xe8, 0xae, + 0xb3, 0x67, 0x82, 0x5b, 0x4d, 0x90, 0x35, 0x94, 0x41, 0x50, 0x97, 0x5e, + 0xe1, 0x17, 0x8d, 0x61, 0x72, 0xc0, 0xe0, 0xed, 0x0e, 0xd8, 0x8b, 0xef, + 0x2b, 0x8c, 0x6c, 0xe5, 0x73, 0xd8, 0x3e, 0xff, 0xd3, 0x47, 0x88, 0xb4, + 0x01, 0x72, 0xc3, 0xff, 0x62, 0xac, 0xfc, 0xf6, 0xaa, 0xf2, 0x6f, 0xc9, + 0x17, 0x64, 0x59, 0xe3, +}; +static const struct drbg_kat_pr_true kat4055_t = { + 4, kat4055_entropyin, kat4055_nonce, kat4055_persstr, + kat4055_entropyinpr1, kat4055_addinpr1, kat4055_entropyinpr2, + kat4055_addinpr2, kat4055_retbits +}; +static const struct drbg_kat kat4055 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4055_t +}; + +static const unsigned char kat4056_entropyin[] = { + 0xd3, 0x4a, 0xe9, 0xfe, 0x14, 0xf8, 0x98, 0x77, 0x95, 0xdc, 0x0b, 0x55, + 0xca, 0x17, 0x10, 0x23, 0x1f, 0xc9, 0xa5, 0x09, 0x1f, 0x39, 0x35, 0xb3, + 0xad, 0x2f, 0xeb, 0x44, 0x71, 0x44, 0x33, 0xd1, 0x74, 0x2c, 0x15, 0xbb, + 0x68, 0x99, 0x7c, 0xed, +}; +static const unsigned char kat4056_nonce[] = {0}; +static const unsigned char kat4056_persstr[] = { + 0xa6, 0xa0, 0xf1, 0xd3, 0x9a, 0x66, 0xfc, 0x55, 0x4f, 0x7d, 0x07, 0x42, + 0x00, 0xdf, 0xad, 0x91, 0xe7, 0xfd, 0x16, 0x31, 0x6a, 0x0b, 0x60, 0xc3, + 0xa1, 0x65, 0x84, 0x23, 0xf8, 0x3b, 0xf1, 0x33, 0x87, 0xaf, 0x2c, 0x83, + 0x01, 0x30, 0x31, 0x72, +}; +static const unsigned char kat4056_entropyinpr1[] = { + 0x4c, 0x5f, 0x21, 0x93, 0x35, 0x44, 0xfe, 0x01, 0xaf, 0xa5, 0xc9, 0x34, + 0x12, 0xd3, 0x51, 0xd9, 0xb2, 0x88, 0xac, 0x80, 0x47, 0xe7, 0xc6, 0x3a, + 0x36, 0xad, 0xed, 0x49, 0xf7, 0x24, 0x9b, 0x59, 0xc0, 0x48, 0x70, 0xf2, + 0x81, 0x5d, 0x5e, 0xb9, +}; +static const unsigned char kat4056_addinpr1[] = {0}; +static const unsigned char kat4056_entropyinpr2[] = { + 0x9f, 0xd6, 0x6b, 0x10, 0x81, 0x44, 0x96, 0x19, 0xf7, 0x67, 0xd4, 0x5f, + 0xba, 0xb3, 0x84, 0x3a, 0x91, 0xba, 0xb0, 0x8d, 0xa9, 0xad, 0x4f, 0x8b, + 0xaa, 0xf2, 0x40, 0x82, 0x26, 0xe1, 0x86, 0x8c, 0x53, 0xc3, 0xfd, 0xa8, + 0x50, 0x85, 0xab, 0x19, +}; +static const unsigned char kat4056_addinpr2[] = {0}; +static const unsigned char kat4056_retbits[] = { + 0x28, 0x43, 0x6a, 0x17, 0x0a, 0xfe, 0x0d, 0x18, 0xb9, 0x04, 0xef, 0x24, + 0x51, 0x79, 0xce, 0xb3, 0xc8, 0x7c, 0x91, 0x1e, 0x6c, 0x41, 0x51, 0x75, + 0x8a, 0x09, 0x90, 0x13, 0x27, 0x7c, 0xb2, 0x31, 0xdf, 0xf6, 0xbf, 0x5d, + 0xff, 0x9f, 0x3d, 0x2a, 0x78, 0xf8, 0x6e, 0x3f, 0x03, 0x05, 0x16, 0xc8, + 0x2b, 0xb0, 0xd3, 0x15, 0xc0, 0x63, 0x8b, 0xaf, 0x02, 0x37, 0x1c, 0x07, + 0x06, 0xdd, 0xd8, 0x39, +}; +static const struct drbg_kat_pr_true kat4056_t = { + 5, kat4056_entropyin, kat4056_nonce, kat4056_persstr, + kat4056_entropyinpr1, kat4056_addinpr1, kat4056_entropyinpr2, + kat4056_addinpr2, kat4056_retbits +}; +static const struct drbg_kat kat4056 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4056_t +}; + +static const unsigned char kat4057_entropyin[] = { + 0x79, 0x06, 0xa7, 0x2d, 0xbb, 0xa6, 0x84, 0x57, 0xfe, 0xa9, 0xd6, 0x31, + 0x45, 0x25, 0xd4, 0x72, 0xfa, 0xfa, 0xba, 0x37, 0x8e, 0x6e, 0x9f, 0xbb, + 0xf0, 0x92, 0xf1, 0xc4, 0x0b, 0x6b, 0xa0, 0x47, 0x05, 0xf7, 0x44, 0xf2, + 0x53, 0xe1, 0xd5, 0x2f, +}; +static const unsigned char kat4057_nonce[] = {0}; +static const unsigned char kat4057_persstr[] = { + 0xa1, 0x72, 0x1f, 0xab, 0x96, 0x40, 0xa4, 0x74, 0x53, 0x3f, 0x6e, 0xc2, + 0x7d, 0x7d, 0x35, 0x18, 0xc5, 0x70, 0xc7, 0x59, 0x6a, 0x8b, 0x65, 0xd1, + 0x2a, 0x6c, 0xfb, 0xc8, 0xae, 0xe9, 0xce, 0xd1, 0xb4, 0xde, 0x63, 0x3c, + 0xca, 0x18, 0xcc, 0x66, +}; +static const unsigned char kat4057_entropyinpr1[] = { + 0x69, 0x5a, 0xe1, 0xcf, 0xd3, 0xa2, 0xc0, 0x64, 0x1c, 0xa8, 0x82, 0x42, + 0xee, 0x47, 0x03, 0x6b, 0x18, 0x35, 0x73, 0xa0, 0xd5, 0xb1, 0x11, 0xd8, + 0xea, 0x28, 0xec, 0xfe, 0x94, 0x94, 0xbb, 0x77, 0xc7, 0x6a, 0xdb, 0xb5, + 0xcd, 0x6d, 0x53, 0x19, +}; +static const unsigned char kat4057_addinpr1[] = {0}; +static const unsigned char kat4057_entropyinpr2[] = { + 0x70, 0xcb, 0xe4, 0x88, 0x2d, 0x3d, 0xa4, 0x3f, 0xf1, 0x6a, 0xc4, 0xe8, + 0xf0, 0x1c, 0x27, 0x65, 0xbb, 0x33, 0x4a, 0xaf, 0x93, 0x6c, 0x1e, 0xd6, + 0x3a, 0x17, 0x4c, 0xb6, 0x4c, 0xdf, 0x30, 0x28, 0x4a, 0x2a, 0x88, 0x01, + 0x5f, 0x2c, 0x70, 0xde, +}; +static const unsigned char kat4057_addinpr2[] = {0}; +static const unsigned char kat4057_retbits[] = { + 0x03, 0x89, 0x98, 0xe9, 0x5d, 0xe7, 0x0b, 0x88, 0x59, 0xb9, 0xf8, 0xc6, + 0x3c, 0x3b, 0xa6, 0x17, 0x9f, 0x60, 0x1b, 0x25, 0x05, 0xa8, 0x7d, 0xa0, + 0x81, 0xa5, 0x1b, 0xec, 0x51, 0xbf, 0xeb, 0x5c, 0x69, 0x42, 0x63, 0xf8, + 0x7e, 0x90, 0x2b, 0x65, 0xc9, 0x2c, 0xcb, 0x85, 0x84, 0x3b, 0x82, 0x4d, + 0xc9, 0xa0, 0x92, 0xcd, 0x17, 0xd4, 0x83, 0x66, 0x3f, 0xe8, 0x23, 0xd2, + 0xea, 0x16, 0x85, 0x96, +}; +static const struct drbg_kat_pr_true kat4057_t = { + 6, kat4057_entropyin, kat4057_nonce, kat4057_persstr, + kat4057_entropyinpr1, kat4057_addinpr1, kat4057_entropyinpr2, + kat4057_addinpr2, kat4057_retbits +}; +static const struct drbg_kat kat4057 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4057_t +}; + +static const unsigned char kat4058_entropyin[] = { + 0xa0, 0x8f, 0xc9, 0x8e, 0x21, 0x0a, 0xe8, 0xe2, 0x32, 0x15, 0xef, 0x34, + 0xe6, 0xee, 0xae, 0x60, 0x1b, 0x11, 0xf1, 0x82, 0x23, 0xdd, 0x82, 0xd9, + 0x8c, 0x9c, 0x3e, 0x56, 0x87, 0x3f, 0xa1, 0xc6, 0xa8, 0x77, 0xee, 0xa3, + 0x22, 0x4b, 0x02, 0xc5, +}; +static const unsigned char kat4058_nonce[] = {0}; +static const unsigned char kat4058_persstr[] = { + 0x53, 0xff, 0x73, 0xab, 0xe2, 0xc2, 0x4b, 0x3e, 0x8b, 0x2e, 0x56, 0xdd, + 0x84, 0xa6, 0x54, 0x1b, 0xbd, 0x01, 0x7b, 0x83, 0x48, 0xb6, 0x7d, 0x97, + 0x0b, 0xe8, 0x5a, 0xee, 0x22, 0x44, 0x80, 0xc1, 0xed, 0x2a, 0x8d, 0x70, + 0x04, 0xa0, 0x1f, 0x56, +}; +static const unsigned char kat4058_entropyinpr1[] = { + 0x81, 0x5c, 0x3e, 0xe7, 0x68, 0x51, 0x98, 0xc2, 0xe2, 0x06, 0xb4, 0x91, + 0x93, 0xae, 0x52, 0xda, 0xf6, 0xb3, 0x71, 0x48, 0x4f, 0x92, 0x90, 0xaa, + 0x9e, 0x22, 0x72, 0x49, 0xfe, 0x33, 0xfb, 0x9a, 0x75, 0x79, 0xf6, 0x80, + 0x3b, 0xe9, 0x9c, 0x55, +}; +static const unsigned char kat4058_addinpr1[] = {0}; +static const unsigned char kat4058_entropyinpr2[] = { + 0x41, 0x99, 0x01, 0x35, 0xfd, 0xfe, 0xd0, 0xed, 0x1a, 0xd2, 0xe3, 0x36, + 0xf4, 0x61, 0x26, 0x31, 0xaa, 0x18, 0xd6, 0x9f, 0x13, 0xdb, 0x80, 0x93, + 0x36, 0x18, 0x82, 0x95, 0xba, 0x8e, 0xa6, 0xe3, 0x75, 0xd9, 0x11, 0xf4, + 0x25, 0x74, 0x88, 0x04, +}; +static const unsigned char kat4058_addinpr2[] = {0}; +static const unsigned char kat4058_retbits[] = { + 0x3f, 0xae, 0xe4, 0x48, 0x63, 0xcf, 0x1b, 0xee, 0x45, 0xe3, 0x72, 0x6f, + 0xaa, 0xfd, 0x11, 0xe6, 0x05, 0x3e, 0x25, 0xb2, 0x5f, 0x7f, 0xa9, 0xaf, + 0x25, 0x83, 0x98, 0xf3, 0x35, 0xbd, 0xe8, 0x65, 0xf8, 0x15, 0xdc, 0x81, + 0xc7, 0xbe, 0x6e, 0xd3, 0x1c, 0x6a, 0x8d, 0xdc, 0x20, 0xa6, 0xc3, 0x80, + 0xbb, 0x76, 0x18, 0x9d, 0x75, 0xe9, 0xae, 0xb8, 0x23, 0x2c, 0x09, 0x4f, + 0x3c, 0x6e, 0x2f, 0xb8, +}; +static const struct drbg_kat_pr_true kat4058_t = { + 7, kat4058_entropyin, kat4058_nonce, kat4058_persstr, + kat4058_entropyinpr1, kat4058_addinpr1, kat4058_entropyinpr2, + kat4058_addinpr2, kat4058_retbits +}; +static const struct drbg_kat kat4058 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4058_t +}; + +static const unsigned char kat4059_entropyin[] = { + 0x0e, 0x43, 0x75, 0x7c, 0xad, 0x68, 0x7e, 0xa7, 0x05, 0xc9, 0x83, 0x68, + 0xfa, 0x8e, 0x22, 0xa2, 0x59, 0x0a, 0x30, 0x10, 0xd3, 0xf7, 0x7b, 0xf5, + 0x7e, 0xec, 0x8d, 0x6e, 0x80, 0x3b, 0x0d, 0xf0, 0x01, 0x33, 0x50, 0x65, + 0x70, 0x2a, 0x73, 0xdc, +}; +static const unsigned char kat4059_nonce[] = {0}; +static const unsigned char kat4059_persstr[] = { + 0x8b, 0xb0, 0x0a, 0xd2, 0x7e, 0x50, 0x4b, 0x26, 0xb7, 0x26, 0xe4, 0x2c, + 0x22, 0x80, 0x8c, 0x96, 0xbe, 0x38, 0x85, 0xb5, 0x14, 0x43, 0x73, 0xa9, + 0xb5, 0x59, 0x26, 0xd0, 0x9c, 0x87, 0xc2, 0xc0, 0xc7, 0xc5, 0x2e, 0x50, + 0xe8, 0xe6, 0xd3, 0xd0, +}; +static const unsigned char kat4059_entropyinpr1[] = { + 0xda, 0x5d, 0xa3, 0x2c, 0xb5, 0xe6, 0xcd, 0x46, 0xa1, 0xcf, 0x7a, 0xbf, + 0x08, 0x5d, 0x63, 0x99, 0x3b, 0x73, 0x6f, 0x5d, 0x34, 0x7c, 0xba, 0x22, + 0xd6, 0x2b, 0xa4, 0x43, 0x7b, 0xfe, 0x9d, 0x82, 0xd5, 0x58, 0x86, 0x7b, + 0x6c, 0xc0, 0xa0, 0x6b, +}; +static const unsigned char kat4059_addinpr1[] = {0}; +static const unsigned char kat4059_entropyinpr2[] = { + 0x1e, 0xf7, 0xcd, 0xb5, 0x4c, 0xa6, 0xd1, 0x61, 0xa3, 0xae, 0xcd, 0x0b, + 0x69, 0xd6, 0xe5, 0xfa, 0x33, 0x64, 0x34, 0xde, 0xc8, 0x04, 0xed, 0x38, + 0xf4, 0x4d, 0xb9, 0x12, 0x3e, 0xdb, 0x9a, 0xcf, 0xd3, 0x1e, 0x0e, 0x40, + 0xd0, 0xd8, 0x51, 0xd2, +}; +static const unsigned char kat4059_addinpr2[] = {0}; +static const unsigned char kat4059_retbits[] = { + 0x8f, 0xde, 0x23, 0x1f, 0xcb, 0xc0, 0xa2, 0x3d, 0x59, 0xc9, 0x1e, 0x25, + 0xd7, 0xb3, 0x79, 0xec, 0x27, 0xd7, 0x9c, 0x86, 0x9a, 0x90, 0x02, 0x16, + 0x3c, 0xb4, 0x9e, 0x29, 0x4c, 0x07, 0x45, 0x3e, 0x7b, 0x3e, 0x62, 0x3d, + 0x8d, 0x2d, 0x0a, 0x26, 0x69, 0x60, 0x8b, 0x51, 0xc1, 0x8f, 0x5e, 0xfe, + 0xb5, 0x20, 0x9f, 0x5d, 0xf6, 0x40, 0x24, 0x2e, 0xe0, 0xe9, 0xe8, 0xfa, + 0x95, 0x0d, 0x0c, 0xe2, +}; +static const struct drbg_kat_pr_true kat4059_t = { + 8, kat4059_entropyin, kat4059_nonce, kat4059_persstr, + kat4059_entropyinpr1, kat4059_addinpr1, kat4059_entropyinpr2, + kat4059_addinpr2, kat4059_retbits +}; +static const struct drbg_kat kat4059 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4059_t +}; + +static const unsigned char kat4060_entropyin[] = { + 0x33, 0x3f, 0xa2, 0x1f, 0x65, 0xac, 0x78, 0x49, 0x10, 0x42, 0x87, 0x23, + 0x4e, 0x32, 0x5f, 0x79, 0x0a, 0x8a, 0x4b, 0x0f, 0xf6, 0xc0, 0xfa, 0xcb, + 0x05, 0xd2, 0xd8, 0xd7, 0xf8, 0xe7, 0xb8, 0xfb, 0xe5, 0x66, 0x04, 0x65, + 0xb2, 0xa1, 0x00, 0x5f, +}; +static const unsigned char kat4060_nonce[] = {0}; +static const unsigned char kat4060_persstr[] = { + 0x31, 0x4e, 0x90, 0xbe, 0xe5, 0x93, 0x2d, 0xa5, 0x78, 0x86, 0x33, 0x70, + 0xcb, 0x45, 0x7f, 0xa4, 0xcf, 0x98, 0x54, 0x91, 0xe4, 0x76, 0xe1, 0x03, + 0x1f, 0xd3, 0x5d, 0x0e, 0xba, 0x34, 0x54, 0x6e, 0x77, 0xf9, 0x08, 0x7e, + 0x19, 0x3a, 0x96, 0x73, +}; +static const unsigned char kat4060_entropyinpr1[] = { + 0x33, 0x57, 0x75, 0x39, 0xb0, 0x04, 0x25, 0x3d, 0x94, 0xec, 0x9b, 0x5b, + 0x00, 0xb0, 0xef, 0xf2, 0x05, 0xf9, 0x71, 0xe4, 0xc4, 0x9e, 0x7d, 0x7a, + 0x24, 0x73, 0x01, 0xd4, 0x52, 0x4d, 0x23, 0xbf, 0x17, 0xcc, 0x39, 0x5d, + 0xa9, 0x29, 0x0a, 0x44, +}; +static const unsigned char kat4060_addinpr1[] = {0}; +static const unsigned char kat4060_entropyinpr2[] = { + 0xbb, 0xa6, 0x3e, 0xe3, 0xbe, 0xdf, 0xe2, 0x43, 0x7a, 0x15, 0x48, 0x3a, + 0xd9, 0x62, 0x30, 0xf0, 0x5b, 0xb4, 0xf8, 0x72, 0x65, 0xd5, 0x35, 0x93, + 0xf5, 0x45, 0xc6, 0x60, 0x1e, 0x1a, 0xa7, 0xc6, 0x09, 0x18, 0x48, 0x3e, + 0x00, 0x24, 0x92, 0x76, +}; +static const unsigned char kat4060_addinpr2[] = {0}; +static const unsigned char kat4060_retbits[] = { + 0x85, 0x29, 0xb8, 0x25, 0x45, 0x26, 0x11, 0x53, 0x64, 0x12, 0xd8, 0x9c, + 0xc1, 0xa3, 0x8e, 0x78, 0x5a, 0xa1, 0xe2, 0x4f, 0x50, 0xd7, 0x5f, 0xa1, + 0x68, 0x3c, 0x75, 0x15, 0xb3, 0x9b, 0xfc, 0xe8, 0xb0, 0xc9, 0xf5, 0x59, + 0xbb, 0x42, 0x2f, 0x93, 0x66, 0x3f, 0xf5, 0x2a, 0x37, 0x83, 0x9e, 0x07, + 0xa9, 0xb3, 0x4c, 0xc9, 0xc4, 0xf3, 0x35, 0xab, 0x21, 0xd9, 0x92, 0x8d, + 0xc4, 0x70, 0xcd, 0x3a, +}; +static const struct drbg_kat_pr_true kat4060_t = { + 9, kat4060_entropyin, kat4060_nonce, kat4060_persstr, + kat4060_entropyinpr1, kat4060_addinpr1, kat4060_entropyinpr2, + kat4060_addinpr2, kat4060_retbits +}; +static const struct drbg_kat kat4060 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4060_t +}; + +static const unsigned char kat4061_entropyin[] = { + 0x7c, 0x84, 0xac, 0x8f, 0xc4, 0x2f, 0x47, 0x38, 0x3c, 0xbb, 0xb7, 0x16, + 0x45, 0xc9, 0xfa, 0x2a, 0x26, 0xd1, 0x0e, 0x90, 0x2b, 0xe6, 0x46, 0xca, + 0xe2, 0x4b, 0xed, 0x37, 0xc4, 0x79, 0xfd, 0xa6, 0xa1, 0x67, 0xfb, 0x3f, + 0x50, 0x97, 0xa0, 0xe2, +}; +static const unsigned char kat4061_nonce[] = {0}; +static const unsigned char kat4061_persstr[] = { + 0xe2, 0x59, 0xd6, 0xc6, 0x3d, 0x8a, 0x3a, 0x37, 0xee, 0x3f, 0xaf, 0xf5, + 0x24, 0x3c, 0x20, 0x6f, 0x02, 0xb3, 0x4d, 0x1f, 0x92, 0x0a, 0xbb, 0xc0, + 0x0b, 0xa9, 0x5e, 0x26, 0x72, 0x37, 0xbb, 0xba, 0x6d, 0x1d, 0xcc, 0x1b, + 0xe8, 0x1d, 0xc5, 0x59, +}; +static const unsigned char kat4061_entropyinpr1[] = { + 0x80, 0xc4, 0xb7, 0x64, 0x9e, 0x7b, 0xf1, 0x89, 0xb9, 0x14, 0xa1, 0xfd, + 0x77, 0x2f, 0x11, 0x19, 0xa5, 0xa6, 0x53, 0x1b, 0x20, 0x1d, 0xf4, 0x7a, + 0x6b, 0xc7, 0x02, 0x37, 0x2b, 0xc3, 0x69, 0x34, 0x15, 0xb1, 0x93, 0xb5, + 0x93, 0x24, 0xd3, 0xfe, +}; +static const unsigned char kat4061_addinpr1[] = {0}; +static const unsigned char kat4061_entropyinpr2[] = { + 0x2e, 0xb1, 0x0d, 0x46, 0xd6, 0xcf, 0x9a, 0xcc, 0x13, 0xbe, 0xc9, 0x7f, + 0xd8, 0x5b, 0xa2, 0xdc, 0xf9, 0x38, 0x04, 0x6d, 0xcf, 0xde, 0xba, 0xdb, + 0xc2, 0x7c, 0xff, 0x0b, 0xe5, 0xa7, 0xef, 0x1b, 0x56, 0x9f, 0x5f, 0xe9, + 0xa5, 0x3b, 0x52, 0x6e, +}; +static const unsigned char kat4061_addinpr2[] = {0}; +static const unsigned char kat4061_retbits[] = { + 0xfb, 0x22, 0x50, 0x4b, 0x11, 0x28, 0x68, 0xe7, 0x2f, 0xcf, 0xde, 0x7b, + 0x8f, 0xfb, 0x67, 0xa9, 0x3b, 0x26, 0x9c, 0xb3, 0x7e, 0x37, 0xcb, 0xd8, + 0x64, 0xb7, 0x22, 0xc0, 0xac, 0xc2, 0xcf, 0x2f, 0x40, 0xff, 0xd4, 0x8e, + 0xd3, 0xa8, 0xf9, 0x17, 0xac, 0x5f, 0xc2, 0x32, 0x0c, 0x4f, 0x4f, 0x9b, + 0x14, 0x77, 0x4a, 0xee, 0x35, 0xaa, 0xed, 0xec, 0x03, 0xa2, 0xfc, 0x68, + 0xd6, 0xa9, 0x80, 0xc1, +}; +static const struct drbg_kat_pr_true kat4061_t = { + 10, kat4061_entropyin, kat4061_nonce, kat4061_persstr, + kat4061_entropyinpr1, kat4061_addinpr1, kat4061_entropyinpr2, + kat4061_addinpr2, kat4061_retbits +}; +static const struct drbg_kat kat4061 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4061_t +}; + +static const unsigned char kat4062_entropyin[] = { + 0x2d, 0xbe, 0x8d, 0xa9, 0x97, 0x4d, 0x6a, 0x6c, 0x75, 0x3b, 0x96, 0xce, + 0x0b, 0x36, 0xdb, 0x95, 0xbc, 0xa4, 0x59, 0xb2, 0xdd, 0xdc, 0x5c, 0xfd, + 0x3e, 0xfe, 0xab, 0x9a, 0x40, 0xd4, 0x51, 0xb0, 0x0e, 0xbd, 0xf7, 0x85, + 0xb3, 0xd3, 0x7e, 0xce, +}; +static const unsigned char kat4062_nonce[] = {0}; +static const unsigned char kat4062_persstr[] = { + 0x3e, 0x00, 0xb6, 0x4a, 0x29, 0x3d, 0x6e, 0xef, 0x06, 0x30, 0x75, 0x7d, + 0x61, 0x33, 0xb0, 0xa7, 0xef, 0x17, 0x2e, 0x57, 0x17, 0xaf, 0xcd, 0x95, + 0xfc, 0x0c, 0xfe, 0x24, 0x84, 0x6e, 0xdd, 0x39, 0x22, 0xf0, 0xc7, 0xbc, + 0xc3, 0x01, 0x13, 0x9b, +}; +static const unsigned char kat4062_entropyinpr1[] = { + 0xad, 0x32, 0xa2, 0x3e, 0x3b, 0x63, 0x1b, 0x87, 0x61, 0x30, 0xdf, 0xed, + 0xa4, 0x75, 0x71, 0x3d, 0x14, 0xb6, 0xf9, 0x4a, 0x4c, 0x8c, 0x9f, 0x4e, + 0x7b, 0xbe, 0xc4, 0x41, 0x08, 0x60, 0xc7, 0xb1, 0x5b, 0x34, 0x6f, 0x53, + 0x16, 0x3c, 0x7c, 0x5c, +}; +static const unsigned char kat4062_addinpr1[] = {0}; +static const unsigned char kat4062_entropyinpr2[] = { + 0xf8, 0x1a, 0x5f, 0x9a, 0x2d, 0xfd, 0x5b, 0x92, 0x41, 0x51, 0x57, 0x07, + 0x59, 0xd8, 0x45, 0xd4, 0x10, 0x73, 0xa3, 0x62, 0x8e, 0xf5, 0xf0, 0xef, + 0x62, 0x22, 0x97, 0xd1, 0x58, 0xcc, 0xb1, 0x73, 0xee, 0x55, 0x4a, 0x6e, + 0x1e, 0xe6, 0x80, 0x83, +}; +static const unsigned char kat4062_addinpr2[] = {0}; +static const unsigned char kat4062_retbits[] = { + 0x29, 0x6a, 0x93, 0x39, 0xec, 0x0a, 0xfe, 0x0a, 0x1a, 0xd8, 0xb3, 0xe8, + 0x10, 0x07, 0x72, 0x1b, 0x78, 0xe8, 0xf4, 0xfa, 0xfb, 0x1e, 0xe6, 0xce, + 0x76, 0xc4, 0x22, 0xc9, 0x94, 0x7c, 0x41, 0x9a, 0xe2, 0xba, 0xb1, 0xea, + 0x0c, 0x9d, 0xee, 0x24, 0xc0, 0x51, 0x23, 0xa2, 0x8e, 0x7a, 0xdc, 0x22, + 0x77, 0xa1, 0x47, 0xaa, 0xf6, 0x82, 0xb8, 0x9e, 0x76, 0x7d, 0xaa, 0xd3, + 0x6a, 0xcb, 0xe2, 0x86, +}; +static const struct drbg_kat_pr_true kat4062_t = { + 11, kat4062_entropyin, kat4062_nonce, kat4062_persstr, + kat4062_entropyinpr1, kat4062_addinpr1, kat4062_entropyinpr2, + kat4062_addinpr2, kat4062_retbits +}; +static const struct drbg_kat kat4062 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4062_t +}; + +static const unsigned char kat4063_entropyin[] = { + 0x5f, 0x8e, 0x78, 0xc5, 0xb9, 0x14, 0x8c, 0xb1, 0x10, 0x5d, 0x6d, 0x52, + 0x92, 0x6e, 0xfb, 0xc9, 0xf5, 0x6a, 0xbb, 0xcf, 0xab, 0x42, 0x9c, 0xef, + 0x20, 0xd1, 0x0b, 0xc1, 0xbb, 0x29, 0x35, 0xf8, 0xcb, 0xfe, 0x73, 0x11, + 0x97, 0xc9, 0x5f, 0x7b, +}; +static const unsigned char kat4063_nonce[] = {0}; +static const unsigned char kat4063_persstr[] = { + 0xb6, 0x1c, 0xc0, 0x87, 0x26, 0xd9, 0x16, 0x62, 0x61, 0x5d, 0x60, 0x19, + 0x0b, 0x4a, 0x06, 0x90, 0xaf, 0x5e, 0x8c, 0x25, 0x25, 0xde, 0xeb, 0x57, + 0x95, 0xe2, 0x40, 0x24, 0x56, 0x6e, 0x64, 0x42, 0xf1, 0x2c, 0xe5, 0x6a, + 0x11, 0x4a, 0x3e, 0x59, +}; +static const unsigned char kat4063_entropyinpr1[] = { + 0x59, 0xe5, 0x9e, 0x0a, 0x80, 0x72, 0x58, 0xf6, 0x9e, 0x58, 0x76, 0x43, + 0xc7, 0xaa, 0x0c, 0x3b, 0xee, 0x55, 0x0c, 0x7a, 0xe5, 0xf8, 0x62, 0xcb, + 0xed, 0x27, 0x8c, 0x94, 0x2b, 0x03, 0xd3, 0x65, 0x08, 0x73, 0xdc, 0xde, + 0x2f, 0xc5, 0xb2, 0xf2, +}; +static const unsigned char kat4063_addinpr1[] = {0}; +static const unsigned char kat4063_entropyinpr2[] = { + 0xad, 0xa9, 0xfa, 0x43, 0x28, 0x29, 0x99, 0x1f, 0x4a, 0x99, 0x33, 0x79, + 0x7d, 0x3f, 0x49, 0x04, 0x50, 0x44, 0xd2, 0xdd, 0x51, 0x24, 0x17, 0xe7, + 0x8a, 0xd3, 0x4f, 0x4b, 0x69, 0x23, 0x6e, 0xc3, 0x78, 0x39, 0x2a, 0xaf, + 0x09, 0x50, 0x09, 0x35, +}; +static const unsigned char kat4063_addinpr2[] = {0}; +static const unsigned char kat4063_retbits[] = { + 0xb6, 0xfe, 0xf6, 0x53, 0x3b, 0x0c, 0x2c, 0xa2, 0x13, 0xeb, 0x57, 0xdc, + 0x67, 0x39, 0x37, 0xde, 0x10, 0x3b, 0x82, 0x59, 0x2b, 0xdc, 0x43, 0xa0, + 0x2b, 0x33, 0x52, 0x91, 0x08, 0x2d, 0x18, 0xf6, 0x63, 0x07, 0x98, 0x66, + 0x2b, 0x56, 0x6c, 0x65, 0x32, 0xcd, 0x45, 0xa5, 0xf3, 0xd0, 0xfe, 0xfb, + 0x8e, 0x29, 0x20, 0x61, 0x13, 0x48, 0x49, 0x08, 0xf9, 0x96, 0x73, 0xed, + 0xf6, 0x06, 0x98, 0x26, +}; +static const struct drbg_kat_pr_true kat4063_t = { + 12, kat4063_entropyin, kat4063_nonce, kat4063_persstr, + kat4063_entropyinpr1, kat4063_addinpr1, kat4063_entropyinpr2, + kat4063_addinpr2, kat4063_retbits +}; +static const struct drbg_kat kat4063 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4063_t +}; + +static const unsigned char kat4064_entropyin[] = { + 0xc2, 0x78, 0x07, 0xee, 0xa7, 0x3d, 0xbc, 0xee, 0x52, 0xf1, 0x22, 0x93, + 0xec, 0xd1, 0x5d, 0x68, 0x33, 0x83, 0x5e, 0x2a, 0x9a, 0x25, 0x3e, 0x03, + 0x07, 0x33, 0x0c, 0xea, 0x17, 0x42, 0xe9, 0xad, 0xbc, 0x63, 0x57, 0xa0, + 0xec, 0x4c, 0x5e, 0x24, +}; +static const unsigned char kat4064_nonce[] = {0}; +static const unsigned char kat4064_persstr[] = { + 0x5e, 0xb4, 0x57, 0xc8, 0x8f, 0xc1, 0x1b, 0xec, 0x9b, 0xeb, 0x9d, 0x4c, + 0xf0, 0x22, 0x54, 0x56, 0xd1, 0x86, 0x3b, 0xb6, 0x24, 0x2d, 0xf9, 0xe1, + 0x12, 0x63, 0x35, 0x58, 0xf4, 0xce, 0xeb, 0xed, 0x99, 0xc7, 0xda, 0x83, + 0x4d, 0xe0, 0x9b, 0xb0, +}; +static const unsigned char kat4064_entropyinpr1[] = { + 0x20, 0x05, 0xe2, 0x38, 0x32, 0x87, 0xbc, 0xc2, 0xbb, 0x86, 0x2b, 0xe0, + 0x1d, 0x48, 0xc2, 0xeb, 0xb3, 0x54, 0x25, 0x1b, 0x66, 0xc5, 0x7b, 0xac, + 0xa2, 0x59, 0x6f, 0x45, 0x88, 0xeb, 0xb9, 0x5c, 0xa1, 0xb4, 0xbe, 0x1e, + 0x83, 0x6c, 0x88, 0xcf, +}; +static const unsigned char kat4064_addinpr1[] = {0}; +static const unsigned char kat4064_entropyinpr2[] = { + 0x8d, 0x60, 0x02, 0xd0, 0xfe, 0x98, 0xd1, 0x5c, 0xc5, 0x10, 0x85, 0x5e, + 0x57, 0xcd, 0x42, 0xe5, 0x4e, 0x85, 0x0f, 0x97, 0x27, 0x36, 0x76, 0xa4, + 0xb0, 0xf2, 0x0a, 0xb0, 0x6f, 0x12, 0x99, 0x2d, 0x8c, 0x2d, 0xad, 0xa6, + 0x7f, 0xf3, 0xe1, 0x38, +}; +static const unsigned char kat4064_addinpr2[] = {0}; +static const unsigned char kat4064_retbits[] = { + 0xad, 0xdb, 0xe7, 0xea, 0xfd, 0x98, 0x1e, 0x18, 0x32, 0x4c, 0x5d, 0x8b, + 0x79, 0x1e, 0x04, 0x75, 0xe3, 0x48, 0xd7, 0xa1, 0x48, 0x0b, 0x4b, 0x70, + 0x9c, 0x72, 0xd1, 0x8e, 0xca, 0x1b, 0xf7, 0xca, 0x2b, 0xb1, 0xa1, 0x43, + 0xff, 0xbb, 0x31, 0x9f, 0x10, 0xc5, 0xd3, 0xad, 0xd3, 0xd8, 0xf5, 0x45, + 0xa0, 0x21, 0x48, 0x10, 0x99, 0xe7, 0x28, 0xba, 0x53, 0x54, 0xf5, 0xe2, + 0x6d, 0x5c, 0xe3, 0xd6, +}; +static const struct drbg_kat_pr_true kat4064_t = { + 13, kat4064_entropyin, kat4064_nonce, kat4064_persstr, + kat4064_entropyinpr1, kat4064_addinpr1, kat4064_entropyinpr2, + kat4064_addinpr2, kat4064_retbits +}; +static const struct drbg_kat kat4064 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4064_t +}; + +static const unsigned char kat4065_entropyin[] = { + 0xdc, 0x0d, 0x01, 0xe6, 0x53, 0x61, 0x81, 0x70, 0x19, 0x83, 0x4e, 0x8e, + 0x94, 0xc9, 0xca, 0xd0, 0x80, 0x90, 0xb1, 0x70, 0x1f, 0x99, 0x1f, 0xf7, + 0x99, 0xf7, 0x5a, 0x1a, 0xa9, 0xf9, 0x7c, 0xa6, 0xf6, 0x3b, 0x48, 0xc7, + 0x40, 0x22, 0x4a, 0x47, +}; +static const unsigned char kat4065_nonce[] = {0}; +static const unsigned char kat4065_persstr[] = { + 0x01, 0xf6, 0x90, 0x2d, 0x4b, 0xc5, 0xfd, 0xad, 0xcf, 0x44, 0xd2, 0x70, + 0xb6, 0x9a, 0x19, 0xf3, 0x61, 0x2a, 0xe6, 0xfc, 0x0c, 0x2d, 0xc5, 0x7e, + 0xb2, 0xe8, 0xad, 0xa5, 0x4a, 0xda, 0x4a, 0xd8, 0xdd, 0x28, 0x52, 0x94, + 0x47, 0xd1, 0x6a, 0xa1, +}; +static const unsigned char kat4065_entropyinpr1[] = { + 0x21, 0xdb, 0x28, 0xb5, 0xcb, 0x97, 0x24, 0xd9, 0x3c, 0x58, 0xf7, 0x87, + 0xb1, 0x55, 0xf0, 0x13, 0x1c, 0x39, 0xb5, 0x60, 0x6e, 0x6a, 0x96, 0x8d, + 0xcf, 0x7e, 0xd4, 0xcc, 0xda, 0x1d, 0xa3, 0xc9, 0xa4, 0xc9, 0xc7, 0x31, + 0xd4, 0xf7, 0xbe, 0xd1, +}; +static const unsigned char kat4065_addinpr1[] = {0}; +static const unsigned char kat4065_entropyinpr2[] = { + 0x4a, 0xa5, 0x87, 0xed, 0xcb, 0x94, 0x0c, 0x3a, 0x93, 0x28, 0xa0, 0xef, + 0x2f, 0x19, 0x5e, 0xff, 0xc1, 0xcf, 0x02, 0x7b, 0x54, 0x9f, 0xf1, 0xec, + 0x5d, 0x5c, 0xac, 0x0e, 0x99, 0x61, 0x96, 0xea, 0xcd, 0x16, 0x10, 0x84, + 0x98, 0xb2, 0x73, 0x66, +}; +static const unsigned char kat4065_addinpr2[] = {0}; +static const unsigned char kat4065_retbits[] = { + 0x69, 0xdc, 0x6c, 0x36, 0x45, 0x9e, 0x00, 0x52, 0x75, 0xe3, 0x44, 0x88, + 0x66, 0x24, 0xca, 0x61, 0xa4, 0x2c, 0xba, 0x33, 0x87, 0xdc, 0xee, 0x79, + 0x39, 0x2a, 0xe9, 0x6a, 0x31, 0x13, 0x13, 0xdc, 0x7e, 0x33, 0x28, 0x36, + 0x05, 0xfb, 0x46, 0xaa, 0x1d, 0x88, 0x1b, 0xcc, 0xae, 0xc6, 0x33, 0x6a, + 0x61, 0x54, 0x5d, 0xac, 0x52, 0x16, 0x6c, 0xbf, 0x81, 0x74, 0xb8, 0xdc, + 0xa3, 0xeb, 0xfb, 0xc6, +}; +static const struct drbg_kat_pr_true kat4065_t = { + 14, kat4065_entropyin, kat4065_nonce, kat4065_persstr, + kat4065_entropyinpr1, kat4065_addinpr1, kat4065_entropyinpr2, + kat4065_addinpr2, kat4065_retbits +}; +static const struct drbg_kat kat4065 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 0, 64, &kat4065_t +}; + +static const unsigned char kat4066_entropyin[] = { + 0x9f, 0x39, 0x78, 0xf1, 0x54, 0x85, 0x45, 0xcc, 0xd1, 0xaf, 0xd2, 0xd9, + 0xa1, 0xa8, 0xb5, 0x0a, 0x0d, 0x4f, 0xfc, 0x8b, 0xb0, 0x8b, 0xfd, 0xd9, + 0x63, 0x79, 0x44, 0x3a, 0x07, 0x07, 0x49, 0xf1, 0xbd, 0x19, 0x52, 0xc1, + 0x49, 0x99, 0x78, 0x4f, +}; +static const unsigned char kat4066_nonce[] = {0}; +static const unsigned char kat4066_persstr[] = { + 0x20, 0xd2, 0x35, 0x8f, 0xb0, 0x0e, 0xab, 0xc9, 0xe2, 0x25, 0xcd, 0xa2, + 0x25, 0x24, 0x35, 0xfd, 0x71, 0x77, 0xff, 0xda, 0x72, 0xc2, 0xc3, 0x15, + 0x50, 0x1a, 0x4c, 0x51, 0x67, 0x59, 0x0f, 0xef, 0xd2, 0x05, 0x26, 0xc8, + 0x20, 0x52, 0x46, 0x87, +}; +static const unsigned char kat4066_entropyinpr1[] = { + 0xe9, 0x53, 0xa8, 0x18, 0x2d, 0xb2, 0x49, 0x71, 0x12, 0xd0, 0xc6, 0xb1, + 0xaa, 0xc6, 0xdb, 0xf3, 0x21, 0xaf, 0xe3, 0x9a, 0x4e, 0xe9, 0xe7, 0x4b, + 0x38, 0x9a, 0x29, 0x3b, 0x6b, 0x69, 0x19, 0x6b, 0x03, 0xca, 0x95, 0xd5, + 0xe4, 0x76, 0x81, 0x0e, +}; +static const unsigned char kat4066_addinpr1[] = { + 0x61, 0x0a, 0xc2, 0x41, 0xfe, 0xa1, 0xda, 0xba, 0xd3, 0x7f, 0x2e, 0x04, + 0x12, 0x0c, 0x6b, 0xea, 0xe2, 0x78, 0x6b, 0x2b, 0x82, 0xfc, 0xda, 0x64, + 0xe8, 0x12, 0xb8, 0x9d, 0x30, 0xf1, 0xc4, 0x1f, 0x83, 0x0a, 0x54, 0x13, + 0x7c, 0x16, 0x24, 0xe6, +}; +static const unsigned char kat4066_entropyinpr2[] = { + 0x65, 0xa4, 0x70, 0x68, 0x13, 0x06, 0xea, 0x1d, 0xbb, 0x9c, 0x32, 0xad, + 0x85, 0xb5, 0xef, 0x8d, 0xaa, 0x50, 0xc3, 0xe2, 0xc1, 0xac, 0xbb, 0x90, + 0xae, 0x2d, 0x08, 0x4b, 0x72, 0xc5, 0x65, 0x1a, 0x2f, 0x46, 0xe8, 0x2a, + 0xf6, 0xe1, 0x29, 0x6d, +}; +static const unsigned char kat4066_addinpr2[] = { + 0xbc, 0xdd, 0xe7, 0x1b, 0xc0, 0x46, 0x5b, 0xf0, 0x13, 0x0e, 0xd5, 0x5f, + 0x3f, 0x80, 0x18, 0x31, 0x71, 0xc8, 0x16, 0x7a, 0x00, 0xe1, 0xee, 0x70, + 0x70, 0xca, 0x4c, 0xc0, 0x4f, 0xb0, 0xc5, 0xf2, 0x77, 0x35, 0x2d, 0xe2, + 0x80, 0x64, 0xaf, 0xb1, +}; +static const unsigned char kat4066_retbits[] = { + 0x0f, 0xfe, 0xf9, 0x78, 0x66, 0x0d, 0x79, 0xa3, 0x27, 0x52, 0xdc, 0xa3, + 0x89, 0xf2, 0x72, 0xce, 0xa7, 0xe0, 0xdd, 0x21, 0x81, 0x9c, 0x4c, 0x6c, + 0x82, 0xb7, 0x1f, 0x53, 0x3c, 0xa4, 0x98, 0xc9, 0xef, 0xb2, 0x1d, 0x1e, + 0xeb, 0x04, 0x0b, 0xf9, 0x87, 0x1e, 0x47, 0x54, 0xee, 0x47, 0x4e, 0xca, + 0xfc, 0x08, 0xb8, 0xda, 0xe3, 0x24, 0x53, 0xa3, 0x0a, 0xb3, 0x58, 0x6a, + 0xef, 0x54, 0xc3, 0xac, +}; +static const struct drbg_kat_pr_true kat4066_t = { + 0, kat4066_entropyin, kat4066_nonce, kat4066_persstr, + kat4066_entropyinpr1, kat4066_addinpr1, kat4066_entropyinpr2, + kat4066_addinpr2, kat4066_retbits +}; +static const struct drbg_kat kat4066 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4066_t +}; + +static const unsigned char kat4067_entropyin[] = { + 0x81, 0x7e, 0xca, 0xb9, 0x38, 0x29, 0xbc, 0xee, 0xaa, 0x9e, 0x86, 0x29, + 0xeb, 0xc3, 0x2c, 0xd6, 0x93, 0xa3, 0x40, 0x15, 0xa2, 0xce, 0x44, 0xa9, + 0x3e, 0xa5, 0xa4, 0x35, 0xa8, 0x33, 0x45, 0x0f, 0x31, 0x95, 0x70, 0x4f, + 0x15, 0x6a, 0x1b, 0x18, +}; +static const unsigned char kat4067_nonce[] = {0}; +static const unsigned char kat4067_persstr[] = { + 0xd1, 0x64, 0x7f, 0xb3, 0x6c, 0x04, 0x15, 0x08, 0x42, 0xae, 0x7e, 0x12, + 0x30, 0x94, 0xe7, 0x93, 0xbc, 0x1b, 0xce, 0xcb, 0x5f, 0x5b, 0x25, 0x22, + 0xef, 0xb6, 0xfb, 0x3c, 0x92, 0x91, 0xea, 0xe4, 0xaf, 0xf0, 0xb8, 0xf6, + 0x76, 0x4b, 0x2f, 0x0e, +}; +static const unsigned char kat4067_entropyinpr1[] = { + 0x03, 0x24, 0x38, 0xad, 0xe2, 0xda, 0x4e, 0x9c, 0xfb, 0x13, 0x5c, 0x29, + 0xcf, 0x87, 0x72, 0x7a, 0xd6, 0xc0, 0xdd, 0x48, 0xab, 0xa6, 0x60, 0xfc, + 0x81, 0xf4, 0x91, 0xb5, 0x16, 0x87, 0xb2, 0x5b, 0x10, 0x8d, 0x97, 0xc6, + 0x8e, 0x17, 0x25, 0xfd, +}; +static const unsigned char kat4067_addinpr1[] = { + 0xd4, 0xb7, 0x9e, 0x9e, 0x70, 0xa4, 0xfd, 0x0c, 0x9b, 0x53, 0x05, 0xe9, + 0xd1, 0xa3, 0xbf, 0xb6, 0x82, 0x4e, 0xea, 0x74, 0x90, 0x2f, 0x82, 0x1b, + 0xb4, 0x08, 0xf7, 0xbf, 0xe2, 0x3d, 0x6e, 0x1e, 0xc3, 0xc6, 0x89, 0x3a, + 0xb6, 0x88, 0x4e, 0x0c, +}; +static const unsigned char kat4067_entropyinpr2[] = { + 0x91, 0x71, 0xa2, 0x46, 0xe5, 0x37, 0x28, 0xa7, 0xd2, 0x95, 0xa6, 0xe7, + 0x55, 0x4a, 0x7d, 0x6a, 0x92, 0x64, 0x67, 0x3a, 0x69, 0x76, 0x77, 0x48, + 0x51, 0x9c, 0xb9, 0xa9, 0xf3, 0xe4, 0x7c, 0xc3, 0x78, 0xaf, 0xa5, 0xd4, + 0x6c, 0x8f, 0x33, 0xef, +}; +static const unsigned char kat4067_addinpr2[] = { + 0x49, 0x46, 0xcd, 0xdd, 0x6d, 0x04, 0x81, 0xb8, 0xa4, 0x03, 0x47, 0xdd, + 0x61, 0x00, 0x69, 0xc5, 0xd2, 0x1b, 0x78, 0x7a, 0x03, 0x7c, 0xb1, 0xe2, + 0x69, 0x92, 0xb2, 0x29, 0x1d, 0xc5, 0xfa, 0x61, 0xea, 0xc1, 0x5d, 0xd7, + 0xf5, 0xcd, 0x0a, 0xd0, +}; +static const unsigned char kat4067_retbits[] = { + 0xe6, 0xd6, 0x73, 0xc0, 0xc4, 0x49, 0xa6, 0x03, 0x09, 0x2b, 0x4e, 0xe4, + 0x6a, 0x8c, 0x61, 0x1c, 0xce, 0x66, 0xba, 0x20, 0x18, 0x98, 0x6b, 0x50, + 0x10, 0x75, 0x34, 0x0c, 0xf0, 0xb1, 0x7e, 0x90, 0x31, 0x33, 0x41, 0xe9, + 0x6d, 0x13, 0x54, 0xc1, 0x5e, 0x73, 0x98, 0xaa, 0x36, 0x1a, 0x2a, 0x8f, + 0x3d, 0x56, 0xbe, 0x18, 0x2a, 0x71, 0xf6, 0x0e, 0xc6, 0x99, 0x94, 0x5e, + 0x9c, 0xd2, 0x3b, 0xc9, +}; +static const struct drbg_kat_pr_true kat4067_t = { + 1, kat4067_entropyin, kat4067_nonce, kat4067_persstr, + kat4067_entropyinpr1, kat4067_addinpr1, kat4067_entropyinpr2, + kat4067_addinpr2, kat4067_retbits +}; +static const struct drbg_kat kat4067 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4067_t +}; + +static const unsigned char kat4068_entropyin[] = { + 0x4b, 0x19, 0x81, 0x69, 0xe0, 0x60, 0x98, 0x1b, 0x62, 0xac, 0xbf, 0x72, + 0x87, 0xae, 0xd7, 0x4d, 0xe5, 0x1e, 0x15, 0xc5, 0x5f, 0xd5, 0x5c, 0x51, + 0x0f, 0xae, 0xfc, 0xab, 0x57, 0xdb, 0xf9, 0xfe, 0x3f, 0x3c, 0xdf, 0xc0, + 0x78, 0x4f, 0x8d, 0x83, +}; +static const unsigned char kat4068_nonce[] = {0}; +static const unsigned char kat4068_persstr[] = { + 0x24, 0xd6, 0xbc, 0xef, 0x2b, 0xf7, 0x14, 0x3c, 0xe0, 0xf3, 0xdf, 0x22, + 0x63, 0xb7, 0xfd, 0xfb, 0x08, 0x8d, 0x19, 0xdd, 0x3f, 0x9f, 0x8d, 0x4a, + 0x18, 0x4e, 0xb7, 0x0d, 0xbf, 0xba, 0xf5, 0x00, 0x82, 0x9d, 0x39, 0x7a, + 0x9f, 0xd7, 0x19, 0xf3, +}; +static const unsigned char kat4068_entropyinpr1[] = { + 0x46, 0x35, 0x58, 0x46, 0x7c, 0x3d, 0xc5, 0xd3, 0xf1, 0x66, 0x98, 0x04, + 0x29, 0x4d, 0x0a, 0xbd, 0x3e, 0x8e, 0xaf, 0x1c, 0x27, 0xf9, 0x4b, 0xf7, + 0x83, 0xf2, 0x45, 0x7d, 0x04, 0x3c, 0x9d, 0x3c, 0xce, 0x68, 0xef, 0x76, + 0x17, 0x29, 0x3e, 0xc1, +}; +static const unsigned char kat4068_addinpr1[] = { + 0x91, 0x1c, 0x40, 0xa4, 0x4b, 0x59, 0x10, 0xdf, 0x4d, 0xa2, 0x6e, 0x5f, + 0x94, 0x20, 0x41, 0x02, 0xba, 0xb6, 0x17, 0x5a, 0xef, 0x7b, 0x33, 0x10, + 0xd1, 0xa8, 0x5e, 0x1f, 0x39, 0x02, 0x4e, 0x68, 0xc4, 0xea, 0x94, 0xa0, + 0x6e, 0x22, 0xc9, 0x08, +}; +static const unsigned char kat4068_entropyinpr2[] = { + 0x56, 0xc3, 0xa4, 0x52, 0xbc, 0xbc, 0x6e, 0x75, 0xc1, 0x7a, 0xf5, 0x6c, + 0xd7, 0x62, 0xc0, 0x9c, 0x47, 0xa1, 0x14, 0xa1, 0x93, 0xc0, 0xd2, 0xf9, + 0xc1, 0x42, 0x8c, 0x7e, 0xb7, 0xb3, 0x61, 0x9b, 0xc2, 0x07, 0x51, 0xb7, + 0xd4, 0x7e, 0x79, 0xcf, +}; +static const unsigned char kat4068_addinpr2[] = { + 0xa6, 0x7a, 0xa8, 0xa8, 0xb3, 0x86, 0x19, 0x20, 0x18, 0xab, 0x83, 0x59, + 0xf8, 0xdd, 0x68, 0x02, 0x5d, 0x55, 0x10, 0x7e, 0x11, 0xc1, 0xd4, 0x86, + 0x3e, 0xa0, 0x08, 0x74, 0x48, 0xf9, 0x56, 0xc2, 0x79, 0x1e, 0x98, 0x59, + 0x60, 0xdd, 0x9a, 0xb2, +}; +static const unsigned char kat4068_retbits[] = { + 0xec, 0x75, 0xc6, 0xd1, 0x6d, 0x7e, 0x9b, 0x82, 0x71, 0xa3, 0xc9, 0x50, + 0x62, 0xa4, 0xfb, 0x91, 0x4d, 0xc2, 0x9a, 0x75, 0x32, 0xa7, 0x3b, 0x92, + 0x2f, 0x40, 0xdb, 0x7d, 0xb4, 0xf6, 0x39, 0x78, 0x45, 0x4e, 0x37, 0x08, + 0x39, 0x28, 0x88, 0x95, 0x2a, 0x12, 0xc9, 0xa4, 0xb4, 0x66, 0x34, 0x40, + 0x19, 0x11, 0x4e, 0xc3, 0x48, 0x92, 0x64, 0x53, 0xe6, 0x85, 0x30, 0xad, + 0xd6, 0x95, 0x8a, 0x41, +}; +static const struct drbg_kat_pr_true kat4068_t = { + 2, kat4068_entropyin, kat4068_nonce, kat4068_persstr, + kat4068_entropyinpr1, kat4068_addinpr1, kat4068_entropyinpr2, + kat4068_addinpr2, kat4068_retbits +}; +static const struct drbg_kat kat4068 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4068_t +}; + +static const unsigned char kat4069_entropyin[] = { + 0x57, 0xea, 0xff, 0xe6, 0x1e, 0xd1, 0x00, 0xe5, 0xe9, 0x15, 0x54, 0x0f, + 0xee, 0xbc, 0x20, 0x2b, 0xf1, 0xd7, 0xc7, 0x41, 0xf1, 0xf2, 0x48, 0x1a, + 0x81, 0x57, 0x2d, 0x3c, 0x33, 0xe0, 0x67, 0xe1, 0x3d, 0xd7, 0x2e, 0x03, + 0x15, 0x96, 0xd0, 0x0e, +}; +static const unsigned char kat4069_nonce[] = {0}; +static const unsigned char kat4069_persstr[] = { + 0x20, 0xdf, 0x87, 0xea, 0xbc, 0xaf, 0xe7, 0xa1, 0x15, 0x91, 0xf5, 0x2e, + 0x1d, 0xbb, 0xdc, 0x67, 0xb2, 0x6b, 0xeb, 0x41, 0x26, 0xaa, 0xb7, 0xdf, + 0x89, 0x1a, 0x6e, 0x43, 0x0f, 0x85, 0x4e, 0x52, 0x14, 0x9e, 0x29, 0x52, + 0x3e, 0xa6, 0xc3, 0x2b, +}; +static const unsigned char kat4069_entropyinpr1[] = { + 0x02, 0xf9, 0x1a, 0xbf, 0x29, 0x84, 0x55, 0x46, 0x5c, 0x0c, 0x5f, 0x62, + 0x88, 0x40, 0x55, 0x89, 0xc8, 0xcf, 0x70, 0x44, 0xc3, 0x11, 0x1c, 0x7b, + 0x02, 0x71, 0x66, 0x0b, 0x6a, 0xcf, 0x04, 0x2d, 0xd7, 0x02, 0x09, 0xba, + 0x8f, 0x9c, 0x44, 0x6e, +}; +static const unsigned char kat4069_addinpr1[] = { + 0x3a, 0x87, 0x4d, 0x78, 0x53, 0x2c, 0x12, 0xca, 0xb6, 0xed, 0x14, 0x6f, + 0x18, 0x43, 0xf7, 0x9d, 0x2e, 0xbc, 0x6a, 0x6d, 0xe3, 0xbb, 0x5b, 0x62, + 0x3c, 0xec, 0x51, 0x1f, 0x20, 0xca, 0xb0, 0x5a, 0xe9, 0x9d, 0x45, 0xd3, + 0xd6, 0x75, 0x4f, 0x3b, +}; +static const unsigned char kat4069_entropyinpr2[] = { + 0xeb, 0xc1, 0x95, 0xda, 0xf0, 0xc2, 0x8d, 0xa0, 0xe7, 0x95, 0x1f, 0xea, + 0x51, 0x71, 0xc2, 0xe5, 0x67, 0x09, 0x97, 0x2f, 0x59, 0x9f, 0x0a, 0x58, + 0xcf, 0x85, 0x83, 0x71, 0x53, 0x48, 0xa1, 0x19, 0x0d, 0xf5, 0x45, 0x2e, + 0x64, 0x05, 0x46, 0x89, +}; +static const unsigned char kat4069_addinpr2[] = { + 0x55, 0xb0, 0x93, 0x0c, 0xc7, 0xfd, 0x93, 0xc2, 0x18, 0xa1, 0x7c, 0x46, + 0x35, 0xc0, 0x6c, 0x91, 0x80, 0xff, 0x04, 0x7e, 0x6a, 0x25, 0x6b, 0x9d, + 0x49, 0x7b, 0x98, 0xb9, 0xfe, 0xb0, 0x1a, 0x7a, 0x1d, 0x27, 0x56, 0x4b, + 0x40, 0x48, 0x07, 0xc9, +}; +static const unsigned char kat4069_retbits[] = { + 0x72, 0xe1, 0xa2, 0x84, 0x39, 0x05, 0xf4, 0x76, 0x5c, 0x67, 0x38, 0x66, + 0xf2, 0x46, 0x24, 0x86, 0x4a, 0xe1, 0xe5, 0x65, 0x3e, 0x93, 0x8e, 0x53, + 0x83, 0x24, 0xcd, 0x9f, 0x20, 0xf9, 0x5c, 0xf0, 0x3e, 0x6c, 0xf9, 0xfa, + 0x95, 0xee, 0xce, 0xf4, 0x97, 0xc0, 0xc6, 0x06, 0x42, 0x65, 0x55, 0x44, + 0x9b, 0x38, 0xda, 0x30, 0x36, 0x28, 0x6d, 0xe3, 0xeb, 0x73, 0xde, 0x1f, + 0xdf, 0x55, 0x84, 0x4a, +}; +static const struct drbg_kat_pr_true kat4069_t = { + 3, kat4069_entropyin, kat4069_nonce, kat4069_persstr, + kat4069_entropyinpr1, kat4069_addinpr1, kat4069_entropyinpr2, + kat4069_addinpr2, kat4069_retbits +}; +static const struct drbg_kat kat4069 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4069_t +}; + +static const unsigned char kat4070_entropyin[] = { + 0x15, 0x5e, 0xcb, 0x97, 0xc3, 0x63, 0x36, 0xbb, 0xa9, 0xc4, 0x52, 0x91, + 0x2c, 0xa2, 0xc0, 0xe9, 0xd9, 0x79, 0x62, 0xba, 0x1f, 0x95, 0x51, 0x95, + 0x6c, 0x1d, 0x2d, 0xa8, 0x10, 0xb9, 0xb5, 0x5e, 0x47, 0xdb, 0x08, 0x8e, + 0x12, 0xe5, 0x5e, 0xd5, +}; +static const unsigned char kat4070_nonce[] = {0}; +static const unsigned char kat4070_persstr[] = { + 0x1c, 0x20, 0x5b, 0x37, 0x15, 0x24, 0x2c, 0x28, 0x2a, 0x5f, 0x7d, 0x02, + 0x8c, 0xdd, 0xcb, 0x64, 0xba, 0xd1, 0x27, 0xe7, 0x2d, 0x91, 0x77, 0x04, + 0x79, 0x74, 0xa9, 0xef, 0xc8, 0xb2, 0xa3, 0x73, 0xf2, 0x9e, 0x74, 0x58, + 0x34, 0xab, 0xb7, 0x04, +}; +static const unsigned char kat4070_entropyinpr1[] = { + 0xc7, 0x5a, 0x95, 0x91, 0xac, 0xb4, 0x89, 0xdc, 0x50, 0x14, 0x65, 0xe5, + 0x03, 0x43, 0x1e, 0xc6, 0x74, 0xeb, 0x3a, 0x2e, 0x25, 0x74, 0x73, 0x02, + 0x8e, 0xf5, 0x76, 0xce, 0x11, 0x9f, 0x35, 0xb0, 0xbb, 0xf7, 0x24, 0x75, + 0x5a, 0xdb, 0x5b, 0x91, +}; +static const unsigned char kat4070_addinpr1[] = { + 0xc1, 0xa0, 0x4a, 0xbb, 0xfd, 0x0c, 0xd5, 0xdb, 0x8b, 0xce, 0x80, 0x42, + 0xe4, 0x17, 0x43, 0xcc, 0xe7, 0xed, 0x03, 0x04, 0x79, 0xd9, 0x15, 0xd0, + 0x5a, 0x77, 0x11, 0x1d, 0x85, 0xce, 0x20, 0x17, 0x57, 0x4d, 0x0d, 0xf2, + 0x63, 0x41, 0xd5, 0xf9, +}; +static const unsigned char kat4070_entropyinpr2[] = { + 0x3a, 0x21, 0xa3, 0xdf, 0x59, 0x42, 0xba, 0x9d, 0x1d, 0xe4, 0xc2, 0x90, + 0x8d, 0x6d, 0x50, 0xfd, 0x93, 0x8d, 0x5e, 0x48, 0xcd, 0xd3, 0x94, 0x8b, + 0xf1, 0x16, 0x5e, 0x53, 0x5d, 0xcc, 0x1d, 0x49, 0x20, 0x45, 0x31, 0x7a, + 0x09, 0x0f, 0x80, 0x62, +}; +static const unsigned char kat4070_addinpr2[] = { + 0x3a, 0x2f, 0xd6, 0x0e, 0x86, 0x87, 0xd0, 0xe4, 0xa8, 0x1f, 0x6f, 0x8f, + 0xb0, 0x49, 0xc0, 0x98, 0xe9, 0xcf, 0x37, 0x91, 0xac, 0x9f, 0xd3, 0x24, + 0x03, 0x20, 0xd7, 0xf5, 0x2c, 0xa7, 0x74, 0x60, 0xe9, 0x77, 0x39, 0x96, + 0xae, 0x95, 0xe0, 0xd8, +}; +static const unsigned char kat4070_retbits[] = { + 0x9c, 0x6c, 0x44, 0x4d, 0x70, 0x65, 0x8d, 0xc1, 0x8a, 0xee, 0xf9, 0x5c, + 0x67, 0xcc, 0x45, 0x77, 0xeb, 0x18, 0x8c, 0xe8, 0x2e, 0x03, 0x6d, 0x00, + 0x94, 0x85, 0x86, 0x39, 0x38, 0x1b, 0x54, 0x98, 0x4b, 0xcf, 0x03, 0x0f, + 0x60, 0xc1, 0x4d, 0xaa, 0xc6, 0x51, 0xf6, 0xaa, 0x3d, 0x37, 0xdf, 0x64, + 0xee, 0xeb, 0x1d, 0xb2, 0x6d, 0x00, 0x3d, 0x79, 0x4f, 0x3a, 0xf7, 0x97, + 0xeb, 0x38, 0xae, 0x80, +}; +static const struct drbg_kat_pr_true kat4070_t = { + 4, kat4070_entropyin, kat4070_nonce, kat4070_persstr, + kat4070_entropyinpr1, kat4070_addinpr1, kat4070_entropyinpr2, + kat4070_addinpr2, kat4070_retbits +}; +static const struct drbg_kat kat4070 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4070_t +}; + +static const unsigned char kat4071_entropyin[] = { + 0x00, 0xd9, 0x28, 0x23, 0x23, 0x97, 0x81, 0x7d, 0xa2, 0xf5, 0xe9, 0x64, + 0xb4, 0x3c, 0x3f, 0xa8, 0x67, 0x53, 0x0f, 0x0f, 0x49, 0xe7, 0x14, 0x4c, + 0x17, 0xdf, 0xb7, 0x42, 0x51, 0x29, 0x3e, 0x26, 0xbf, 0xf1, 0x33, 0x52, + 0xf3, 0x79, 0x72, 0x90, +}; +static const unsigned char kat4071_nonce[] = {0}; +static const unsigned char kat4071_persstr[] = { + 0xcb, 0xca, 0x17, 0x54, 0x5e, 0xc1, 0x50, 0x09, 0xc4, 0x06, 0x49, 0x76, + 0xeb, 0xf1, 0x5f, 0x0d, 0x8e, 0x6b, 0x3e, 0x30, 0x31, 0xec, 0xa0, 0x99, + 0xee, 0x19, 0xc8, 0x68, 0x52, 0xe1, 0x43, 0xc9, 0x5c, 0xe0, 0x76, 0x68, + 0x6a, 0x25, 0x8e, 0x52, +}; +static const unsigned char kat4071_entropyinpr1[] = { + 0x39, 0xe5, 0xb2, 0xd9, 0xc1, 0x5e, 0x84, 0xae, 0x8d, 0xa0, 0xf4, 0x4a, + 0xd2, 0x70, 0xa2, 0x99, 0x50, 0x1f, 0xe9, 0xb3, 0xcb, 0x85, 0x37, 0xcd, + 0x43, 0x33, 0x9f, 0x09, 0x4c, 0x21, 0x3c, 0x95, 0xa8, 0x49, 0x09, 0xda, + 0xa2, 0x48, 0xcc, 0xe0, +}; +static const unsigned char kat4071_addinpr1[] = { + 0x1c, 0x6b, 0x3f, 0x44, 0xab, 0xeb, 0x02, 0xe1, 0x5a, 0x3f, 0x70, 0xb4, + 0xf9, 0x17, 0x07, 0x1c, 0x18, 0x08, 0xee, 0xc0, 0x68, 0x71, 0x30, 0xba, + 0x33, 0xb5, 0xc8, 0x3b, 0xdd, 0xb2, 0x54, 0x92, 0x45, 0x12, 0x78, 0x92, + 0xa2, 0x48, 0xcb, 0x5d, +}; +static const unsigned char kat4071_entropyinpr2[] = { + 0x96, 0x6d, 0x2e, 0x8b, 0x2b, 0x60, 0x25, 0x5c, 0x26, 0x09, 0x09, 0x14, + 0xb7, 0xa0, 0x1c, 0x09, 0x63, 0x37, 0x43, 0xf9, 0x05, 0x57, 0xe0, 0xc0, + 0x65, 0x2a, 0xd7, 0x56, 0xd3, 0x72, 0x4c, 0xad, 0xfc, 0x21, 0xa4, 0xb2, + 0xc0, 0x14, 0xe7, 0xb7, +}; +static const unsigned char kat4071_addinpr2[] = { + 0x02, 0x09, 0x94, 0xf5, 0xd4, 0xad, 0x07, 0x73, 0x0b, 0xa1, 0x1d, 0x64, + 0xa5, 0x10, 0xe8, 0x3d, 0x45, 0x59, 0x43, 0x48, 0x9e, 0x20, 0x73, 0xeb, + 0xef, 0xaf, 0xf8, 0x74, 0x64, 0xd3, 0x6c, 0xb4, 0xbf, 0xd3, 0x5f, 0x15, + 0x7b, 0x31, 0xf3, 0x58, +}; +static const unsigned char kat4071_retbits[] = { + 0xe8, 0x49, 0xbb, 0x1e, 0x69, 0xc4, 0xa0, 0x3c, 0x0f, 0x08, 0xa0, 0x02, + 0xf1, 0x67, 0xf5, 0xb6, 0xe4, 0xa8, 0x8a, 0xf7, 0x40, 0xe1, 0x22, 0x43, + 0xd1, 0xdf, 0x1a, 0x84, 0xc9, 0x51, 0x6e, 0x4d, 0x15, 0xb2, 0xc0, 0x7f, + 0x50, 0xad, 0xa0, 0x8b, 0xba, 0x4e, 0xa3, 0x10, 0x15, 0x59, 0xaf, 0x6a, + 0x13, 0xbb, 0x9e, 0x70, 0xf7, 0x9d, 0x85, 0x2f, 0x78, 0x8c, 0x99, 0x4b, + 0xcc, 0x8c, 0x15, 0x4e, +}; +static const struct drbg_kat_pr_true kat4071_t = { + 5, kat4071_entropyin, kat4071_nonce, kat4071_persstr, + kat4071_entropyinpr1, kat4071_addinpr1, kat4071_entropyinpr2, + kat4071_addinpr2, kat4071_retbits +}; +static const struct drbg_kat kat4071 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4071_t +}; + +static const unsigned char kat4072_entropyin[] = { + 0x13, 0xf3, 0x7a, 0x88, 0x31, 0xb5, 0x5d, 0x35, 0x36, 0x8b, 0x0a, 0x76, + 0x9a, 0xce, 0xf9, 0x4f, 0x27, 0x4c, 0xd1, 0xbc, 0x07, 0xba, 0xde, 0x74, + 0x8d, 0xeb, 0xe2, 0xc2, 0xa3, 0x82, 0x2e, 0x76, 0x00, 0x51, 0x08, 0x71, + 0x4e, 0x97, 0x60, 0x4a, +}; +static const unsigned char kat4072_nonce[] = {0}; +static const unsigned char kat4072_persstr[] = { + 0xe2, 0x7e, 0x30, 0xdc, 0xbd, 0x56, 0xbf, 0xf1, 0x7a, 0xbf, 0x07, 0xe5, + 0xd5, 0x52, 0x8f, 0x62, 0x02, 0x32, 0xca, 0x19, 0x47, 0xe4, 0xe8, 0xf6, + 0x14, 0x8e, 0x68, 0xb7, 0x3f, 0x16, 0x00, 0xf7, 0x03, 0x87, 0x89, 0x49, + 0x2e, 0xdc, 0xaa, 0xb5, +}; +static const unsigned char kat4072_entropyinpr1[] = { + 0x8f, 0x78, 0x6d, 0x4c, 0xdf, 0x67, 0x94, 0x80, 0xea, 0x02, 0x7b, 0xe4, + 0xe7, 0x92, 0x20, 0x16, 0x97, 0xd2, 0x0f, 0x9f, 0xb6, 0x51, 0x08, 0xf5, + 0x07, 0x34, 0xf6, 0x43, 0x92, 0xf5, 0x3e, 0xd5, 0x3a, 0x05, 0x3e, 0xf7, + 0x9a, 0x99, 0x7b, 0x76, +}; +static const unsigned char kat4072_addinpr1[] = { + 0xd8, 0xcf, 0x78, 0x1b, 0x9b, 0xe6, 0x85, 0x55, 0x36, 0xef, 0x0c, 0x0e, + 0xfd, 0xca, 0x56, 0xff, 0x67, 0x20, 0x27, 0xb7, 0x8b, 0x12, 0xd0, 0x10, + 0x96, 0x33, 0xd5, 0xe1, 0x29, 0x69, 0xac, 0x29, 0x67, 0x81, 0x08, 0x83, + 0x5a, 0x86, 0x65, 0x7c, +}; +static const unsigned char kat4072_entropyinpr2[] = { + 0x67, 0x3f, 0xc6, 0x84, 0x5d, 0xda, 0x34, 0xc8, 0x2c, 0xa2, 0xb2, 0x64, + 0x91, 0xe8, 0x9f, 0xd8, 0xd1, 0x8e, 0xaf, 0x79, 0x05, 0x7d, 0x15, 0x11, + 0xb1, 0x89, 0xae, 0x87, 0x4e, 0x46, 0x61, 0x0d, 0x48, 0xf8, 0x23, 0x7c, + 0xf1, 0x11, 0xe1, 0x17, +}; +static const unsigned char kat4072_addinpr2[] = { + 0x54, 0x1e, 0x45, 0x96, 0x65, 0x65, 0xe9, 0x72, 0x6a, 0xa4, 0x39, 0xd4, + 0xe6, 0xe5, 0xeb, 0xf6, 0xc4, 0x41, 0xf7, 0xac, 0xf0, 0x86, 0x2d, 0x92, + 0xfd, 0x54, 0x3f, 0x3d, 0x9e, 0xda, 0xfa, 0x42, 0x89, 0x07, 0x40, 0xcd, + 0xc1, 0x32, 0xe3, 0x19, +}; +static const unsigned char kat4072_retbits[] = { + 0x56, 0x78, 0x77, 0xc2, 0xb3, 0x2d, 0x86, 0xde, 0xe0, 0x82, 0xee, 0xbb, + 0xcb, 0xc6, 0x44, 0xa5, 0xe7, 0xd4, 0x1f, 0x40, 0x14, 0xec, 0xc7, 0xab, + 0x8d, 0x6e, 0xeb, 0xe4, 0xb0, 0x51, 0xa1, 0xeb, 0x6f, 0x36, 0x77, 0x13, + 0xfb, 0xae, 0x21, 0x5e, 0x69, 0x57, 0x0b, 0xdd, 0xc2, 0x21, 0xa9, 0x68, + 0x33, 0xe2, 0xa0, 0x8f, 0x9c, 0x15, 0x0f, 0x47, 0x62, 0x2f, 0xe3, 0x79, + 0x0d, 0x3e, 0xec, 0xf4, +}; +static const struct drbg_kat_pr_true kat4072_t = { + 6, kat4072_entropyin, kat4072_nonce, kat4072_persstr, + kat4072_entropyinpr1, kat4072_addinpr1, kat4072_entropyinpr2, + kat4072_addinpr2, kat4072_retbits +}; +static const struct drbg_kat kat4072 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4072_t +}; + +static const unsigned char kat4073_entropyin[] = { + 0x9a, 0x9f, 0xc7, 0xfe, 0x4d, 0xc3, 0xf3, 0x49, 0xb0, 0x61, 0xfd, 0x1a, + 0xe4, 0x27, 0x36, 0x04, 0xb8, 0x48, 0xa0, 0xe6, 0x92, 0x45, 0xf5, 0x38, + 0x48, 0xba, 0x91, 0x1f, 0x34, 0x82, 0x87, 0x57, 0xb3, 0x53, 0x46, 0x52, + 0x24, 0x29, 0x8b, 0x5d, +}; +static const unsigned char kat4073_nonce[] = {0}; +static const unsigned char kat4073_persstr[] = { + 0x0f, 0xce, 0xae, 0x3c, 0xb4, 0x19, 0x28, 0x4b, 0x97, 0x21, 0x18, 0x10, + 0xad, 0x80, 0xe5, 0x22, 0x42, 0xc3, 0x79, 0xf4, 0x57, 0xf3, 0x65, 0xe3, + 0x92, 0x59, 0xc2, 0x8d, 0xa8, 0xaa, 0x2c, 0x5e, 0x63, 0x5f, 0x2b, 0x32, + 0xce, 0x15, 0xb3, 0x8b, +}; +static const unsigned char kat4073_entropyinpr1[] = { + 0xcb, 0xdd, 0xdc, 0x9d, 0xc3, 0x53, 0x13, 0x6f, 0xdb, 0x5d, 0x04, 0x4b, + 0xd1, 0x79, 0x0d, 0xca, 0x6b, 0x00, 0x03, 0x96, 0x57, 0x03, 0x1c, 0x75, + 0x9f, 0xc4, 0x08, 0xef, 0xf9, 0xcd, 0x9b, 0xfa, 0xe3, 0x6f, 0x3d, 0x6c, + 0xe6, 0x40, 0xc9, 0x78, +}; +static const unsigned char kat4073_addinpr1[] = { + 0x69, 0x4d, 0x13, 0xd1, 0x08, 0x43, 0xdf, 0xc9, 0xe7, 0x9f, 0x26, 0xbe, + 0x52, 0xdd, 0x6f, 0xe1, 0x44, 0xb5, 0x26, 0x0d, 0x2b, 0xef, 0x6b, 0x12, + 0x06, 0xac, 0xfe, 0x6a, 0xf2, 0xa4, 0x7e, 0x13, 0x45, 0x4d, 0x2b, 0xed, + 0x86, 0x47, 0x21, 0x93, +}; +static const unsigned char kat4073_entropyinpr2[] = { + 0x26, 0x31, 0x7f, 0x9a, 0x21, 0x4b, 0x98, 0xb0, 0xce, 0xc1, 0x20, 0x36, + 0xa0, 0xfd, 0x7b, 0x4e, 0x3b, 0x53, 0x1d, 0x9a, 0x68, 0x69, 0x38, 0x75, + 0x25, 0x22, 0x0a, 0x1f, 0xcc, 0x6f, 0x13, 0x11, 0x96, 0x03, 0x9f, 0x89, + 0x5b, 0xd5, 0xa1, 0x93, +}; +static const unsigned char kat4073_addinpr2[] = { + 0xe8, 0x1f, 0x7d, 0xb3, 0x4a, 0xff, 0xdf, 0x7e, 0xd5, 0x24, 0x86, 0x56, + 0x48, 0x78, 0xf0, 0x7f, 0xfc, 0x7a, 0x82, 0x69, 0x1c, 0x58, 0x82, 0xbf, + 0x60, 0x0d, 0xc8, 0xd6, 0x0c, 0xa5, 0xde, 0x8b, 0x35, 0xfb, 0x24, 0xe0, + 0x3b, 0xf1, 0xa4, 0xf6, +}; +static const unsigned char kat4073_retbits[] = { + 0x9f, 0xa5, 0x8c, 0x81, 0x25, 0x09, 0x68, 0xee, 0x7f, 0x9f, 0xc2, 0x46, + 0x8b, 0x95, 0x93, 0xc5, 0xba, 0xbe, 0xa0, 0xcf, 0x3d, 0x53, 0x78, 0x24, + 0xce, 0x35, 0x99, 0xf0, 0x38, 0x4a, 0xb8, 0xa0, 0x84, 0xe5, 0x90, 0x53, + 0xf7, 0xb7, 0x04, 0xa2, 0xa2, 0x29, 0xdf, 0x76, 0x2a, 0xf8, 0x60, 0x3d, + 0x71, 0x1c, 0x88, 0x45, 0x3d, 0x49, 0x39, 0xfa, 0x59, 0x3b, 0xa0, 0x2a, + 0xb1, 0xd1, 0xc6, 0xb5, +}; +static const struct drbg_kat_pr_true kat4073_t = { + 7, kat4073_entropyin, kat4073_nonce, kat4073_persstr, + kat4073_entropyinpr1, kat4073_addinpr1, kat4073_entropyinpr2, + kat4073_addinpr2, kat4073_retbits +}; +static const struct drbg_kat kat4073 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4073_t +}; + +static const unsigned char kat4074_entropyin[] = { + 0xad, 0xa9, 0xe3, 0xda, 0x09, 0xdc, 0x61, 0x62, 0x02, 0xb7, 0x22, 0x06, + 0xb0, 0x01, 0xdf, 0xcc, 0x36, 0x28, 0x31, 0x34, 0xb9, 0xa8, 0xd0, 0xc4, + 0x6f, 0xdd, 0xd8, 0xec, 0xa6, 0xb0, 0x3b, 0x89, 0x1c, 0x17, 0x88, 0x8c, + 0x8c, 0xa6, 0xa8, 0xf6, +}; +static const unsigned char kat4074_nonce[] = {0}; +static const unsigned char kat4074_persstr[] = { + 0xbc, 0x4e, 0xd9, 0xe6, 0xfd, 0xba, 0xae, 0x7b, 0xd3, 0x00, 0x08, 0x34, + 0x1f, 0x33, 0x86, 0x05, 0x59, 0x6c, 0x61, 0xb5, 0x75, 0x35, 0x24, 0xd1, + 0x24, 0xa9, 0x93, 0xef, 0x43, 0x9a, 0xd6, 0xc0, 0x25, 0x22, 0x61, 0x77, + 0x8f, 0x06, 0x6f, 0xec, +}; +static const unsigned char kat4074_entropyinpr1[] = { + 0x39, 0x2a, 0x55, 0xc8, 0x9f, 0x72, 0x13, 0x71, 0xfc, 0xfa, 0xc9, 0x37, + 0x89, 0x06, 0xab, 0x3b, 0x8e, 0x1f, 0xb6, 0x03, 0x81, 0x5f, 0xc9, 0x7a, + 0x05, 0xef, 0xfd, 0x00, 0xcb, 0xa9, 0xae, 0x30, 0x5c, 0x5e, 0x41, 0x95, + 0xaa, 0xe4, 0xbd, 0x7b, +}; +static const unsigned char kat4074_addinpr1[] = { + 0xdc, 0x99, 0xbc, 0x31, 0xa6, 0x91, 0x3d, 0x16, 0x83, 0x27, 0x0a, 0xd8, + 0x00, 0x40, 0xbd, 0xc4, 0x2f, 0xaf, 0xc9, 0x12, 0x1a, 0xf8, 0x7d, 0xad, + 0xb7, 0x9f, 0x3e, 0x01, 0xca, 0xfa, 0x99, 0x9a, 0xe8, 0x83, 0x59, 0xb2, + 0x98, 0x22, 0x4b, 0x0e, +}; +static const unsigned char kat4074_entropyinpr2[] = { + 0x1f, 0x0f, 0x90, 0xaf, 0x72, 0x77, 0xca, 0x5f, 0x28, 0x58, 0x61, 0xe3, + 0x4f, 0x8d, 0x0e, 0xd6, 0x18, 0x80, 0x97, 0x9e, 0xaf, 0xc2, 0x90, 0xbc, + 0xb0, 0xdc, 0xd1, 0x04, 0x90, 0x89, 0x61, 0xa2, 0x1a, 0x9a, 0x7a, 0xba, + 0x23, 0xfc, 0x68, 0x4c, +}; +static const unsigned char kat4074_addinpr2[] = { + 0xe0, 0x82, 0x8f, 0x36, 0x91, 0x46, 0x2a, 0xc1, 0x5b, 0x5f, 0xbd, 0x4f, + 0x8d, 0x8b, 0xc7, 0x26, 0xfc, 0x66, 0xd3, 0xa6, 0xa1, 0x4f, 0x5e, 0x11, + 0x89, 0xb9, 0x29, 0x39, 0x8f, 0x83, 0x54, 0xdf, 0x02, 0xd2, 0x85, 0xb2, + 0x12, 0x8c, 0xf9, 0x9c, +}; +static const unsigned char kat4074_retbits[] = { + 0x8c, 0x65, 0x39, 0x7b, 0xe8, 0xcb, 0xbe, 0xe6, 0xcb, 0x0f, 0x71, 0xfd, + 0x84, 0xb9, 0xf4, 0x41, 0x8b, 0x51, 0x5d, 0x62, 0xd1, 0x4d, 0x6c, 0x07, + 0xc8, 0x7b, 0xdf, 0x8c, 0xe9, 0x28, 0x7c, 0x7d, 0xb1, 0x05, 0x29, 0xb0, + 0x53, 0x08, 0xdd, 0x36, 0x69, 0x9f, 0x2f, 0xd0, 0x62, 0x47, 0xda, 0x53, + 0x99, 0xbe, 0x27, 0xb3, 0x39, 0xf5, 0xb9, 0x83, 0x6e, 0xeb, 0x00, 0x61, + 0x4c, 0x81, 0x47, 0xe7, +}; +static const struct drbg_kat_pr_true kat4074_t = { + 8, kat4074_entropyin, kat4074_nonce, kat4074_persstr, + kat4074_entropyinpr1, kat4074_addinpr1, kat4074_entropyinpr2, + kat4074_addinpr2, kat4074_retbits +}; +static const struct drbg_kat kat4074 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4074_t +}; + +static const unsigned char kat4075_entropyin[] = { + 0xa8, 0x3d, 0xcf, 0x16, 0xd5, 0xe2, 0xbd, 0xd9, 0x6d, 0x37, 0x7e, 0xb3, + 0x64, 0x7d, 0x79, 0xa7, 0xce, 0xc0, 0x14, 0x7c, 0xc9, 0x02, 0xc8, 0x2c, + 0xb9, 0x10, 0xce, 0x73, 0xae, 0xd2, 0x5e, 0xb0, 0xbb, 0x52, 0xd3, 0x3f, + 0xe4, 0x75, 0x65, 0xbe, +}; +static const unsigned char kat4075_nonce[] = {0}; +static const unsigned char kat4075_persstr[] = { + 0xe5, 0x0c, 0xf1, 0x0f, 0x58, 0xb9, 0x5e, 0xed, 0xec, 0x04, 0xec, 0xf5, + 0x7b, 0xa7, 0x5b, 0x45, 0x62, 0x47, 0x26, 0xdf, 0xce, 0xf1, 0x8b, 0xbc, + 0xbd, 0x34, 0x27, 0xa3, 0x5d, 0xc5, 0x44, 0xc5, 0xfa, 0x56, 0x8a, 0xf4, + 0x3c, 0x0a, 0x7a, 0x07, +}; +static const unsigned char kat4075_entropyinpr1[] = { + 0x84, 0x03, 0xb8, 0x09, 0x68, 0x02, 0xb3, 0x21, 0xa2, 0xe7, 0x3c, 0x40, + 0x49, 0x54, 0x51, 0x76, 0x99, 0xbf, 0xbc, 0xa7, 0x90, 0x7d, 0x8f, 0x6f, + 0x0a, 0x81, 0x34, 0x83, 0xc3, 0xcf, 0x60, 0x1a, 0x8b, 0x3d, 0x2a, 0x80, + 0xb9, 0x4b, 0xea, 0x85, +}; +static const unsigned char kat4075_addinpr1[] = { + 0x34, 0x15, 0x69, 0x9a, 0x33, 0xae, 0x55, 0x8f, 0x86, 0x5c, 0x7b, 0x0a, + 0x50, 0xdb, 0x7e, 0x07, 0x68, 0xdf, 0x80, 0x36, 0xbb, 0x78, 0x68, 0x95, + 0xe7, 0x48, 0xfa, 0xa1, 0xcc, 0xc6, 0x45, 0x87, 0x34, 0x48, 0x1e, 0x20, + 0x55, 0xd5, 0x73, 0xc1, +}; +static const unsigned char kat4075_entropyinpr2[] = { + 0x85, 0xc2, 0x60, 0x55, 0xf6, 0x16, 0x15, 0xf8, 0x28, 0x53, 0xc9, 0x26, + 0x14, 0xa4, 0x46, 0x5c, 0x8f, 0xe3, 0x60, 0x1e, 0x7b, 0xee, 0xa3, 0xd0, + 0x18, 0xf9, 0xd9, 0xaa, 0x03, 0x01, 0x4b, 0x96, 0x42, 0xff, 0x86, 0x35, + 0xdf, 0x3f, 0x8e, 0xc4, +}; +static const unsigned char kat4075_addinpr2[] = { + 0xa8, 0xd8, 0xff, 0x08, 0x17, 0xc1, 0xe8, 0x2f, 0xfe, 0x8a, 0x59, 0xb6, + 0xb6, 0xe7, 0x8c, 0xeb, 0xb1, 0x96, 0xf6, 0x6c, 0x6a, 0x3e, 0x7b, 0xf8, + 0x9a, 0x9b, 0xf6, 0xaa, 0xdb, 0x77, 0x73, 0xa7, 0x84, 0x7d, 0x1d, 0x0c, + 0xc1, 0x61, 0xc0, 0xa4, +}; +static const unsigned char kat4075_retbits[] = { + 0xf7, 0x44, 0x46, 0x78, 0xb7, 0x89, 0x59, 0xd2, 0x1b, 0x7c, 0xa9, 0xf0, + 0xc3, 0x12, 0x8a, 0xfa, 0x16, 0xee, 0x53, 0x24, 0xd6, 0x0e, 0xa4, 0xd7, + 0x60, 0x75, 0xdd, 0x3a, 0x53, 0xd2, 0x69, 0x11, 0x47, 0x65, 0x0c, 0x51, + 0xdd, 0xda, 0x5f, 0x28, 0xb6, 0x33, 0x57, 0x2c, 0xfa, 0x92, 0xeb, 0x1a, + 0xea, 0x00, 0x1e, 0xc5, 0xa1, 0xf5, 0x74, 0x47, 0xb5, 0x06, 0x30, 0xa5, + 0xe5, 0x5f, 0xba, 0x27, +}; +static const struct drbg_kat_pr_true kat4075_t = { + 9, kat4075_entropyin, kat4075_nonce, kat4075_persstr, + kat4075_entropyinpr1, kat4075_addinpr1, kat4075_entropyinpr2, + kat4075_addinpr2, kat4075_retbits +}; +static const struct drbg_kat kat4075 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4075_t +}; + +static const unsigned char kat4076_entropyin[] = { + 0x60, 0x5a, 0xec, 0x5b, 0x81, 0x73, 0x68, 0xac, 0xc9, 0x13, 0x95, 0x4e, + 0x10, 0x64, 0xcf, 0x6e, 0x30, 0x39, 0x7d, 0x8e, 0xc4, 0x23, 0x87, 0xbf, + 0x5a, 0x15, 0x52, 0xab, 0x93, 0x8b, 0x7f, 0xf2, 0x14, 0x83, 0x0b, 0xcc, + 0xbb, 0xe6, 0xde, 0xbe, +}; +static const unsigned char kat4076_nonce[] = {0}; +static const unsigned char kat4076_persstr[] = { + 0xbe, 0x58, 0x13, 0xb8, 0xd6, 0x16, 0x3a, 0x72, 0xc2, 0x7a, 0x19, 0x43, + 0x18, 0xb1, 0x50, 0x41, 0x12, 0x65, 0x1b, 0x22, 0x74, 0x92, 0xc4, 0x3d, + 0xe6, 0x64, 0xf5, 0x5f, 0x7b, 0x4e, 0x9b, 0x98, 0x19, 0xf4, 0xc9, 0x39, + 0xe7, 0xfe, 0xc6, 0x05, +}; +static const unsigned char kat4076_entropyinpr1[] = { + 0x2c, 0xa2, 0x24, 0x7e, 0xbf, 0x00, 0x36, 0x2e, 0xf0, 0xfb, 0xda, 0x4c, + 0xde, 0x84, 0x06, 0x75, 0xde, 0xf3, 0x8b, 0x87, 0xe0, 0x3d, 0x10, 0x7d, + 0xa6, 0x46, 0x3f, 0x5d, 0x32, 0x83, 0x8c, 0xb6, 0x75, 0xf9, 0xc4, 0xdc, + 0x45, 0x7d, 0x8e, 0x22, +}; +static const unsigned char kat4076_addinpr1[] = { + 0x0f, 0x2b, 0x2f, 0xe8, 0x84, 0x08, 0x40, 0x7b, 0xa7, 0x07, 0xa0, 0x21, + 0x3f, 0xbe, 0xd7, 0xf8, 0xa5, 0xa7, 0x22, 0xa5, 0xe7, 0x4d, 0xe2, 0xcf, + 0xb3, 0xd6, 0x3b, 0xf5, 0x8f, 0xbe, 0xd7, 0xb1, 0xec, 0xee, 0xdf, 0x90, + 0xb9, 0xd2, 0xab, 0x4a, +}; +static const unsigned char kat4076_entropyinpr2[] = { + 0x68, 0x11, 0xe9, 0x58, 0x4b, 0x3b, 0xd8, 0x7f, 0x74, 0x73, 0x73, 0x3e, + 0x3d, 0x4f, 0xb4, 0x90, 0x5c, 0x4a, 0xff, 0xa9, 0x72, 0x2b, 0x21, 0x29, + 0x3f, 0x30, 0x55, 0xeb, 0x56, 0x61, 0x3a, 0xab, 0x99, 0x59, 0x07, 0x1c, + 0x15, 0x94, 0xf8, 0xe3, +}; +static const unsigned char kat4076_addinpr2[] = { + 0xc6, 0xf7, 0x35, 0xb5, 0x3b, 0x59, 0x24, 0x00, 0x1b, 0x36, 0xf1, 0x1c, + 0xe5, 0x5e, 0xa0, 0xbc, 0xac, 0xf7, 0x86, 0xdf, 0x73, 0x91, 0x1f, 0xa5, + 0x1b, 0x7c, 0xe1, 0xe6, 0x1d, 0x20, 0x7f, 0x3f, 0xb5, 0x11, 0x28, 0x5a, + 0xb0, 0x8d, 0x45, 0xf0, +}; +static const unsigned char kat4076_retbits[] = { + 0xda, 0x90, 0x6d, 0x45, 0x74, 0x1c, 0x66, 0xf7, 0xd1, 0xb9, 0x37, 0xb6, + 0x02, 0x31, 0x92, 0xdb, 0x35, 0x28, 0x58, 0x1e, 0xbf, 0x3b, 0xbf, 0x02, + 0x08, 0x28, 0x0b, 0xdb, 0x97, 0xe0, 0x1e, 0xf2, 0x62, 0xb7, 0xf2, 0x6d, + 0x2c, 0xc5, 0x4c, 0x87, 0x3f, 0x4e, 0x07, 0x92, 0x74, 0x5f, 0x2d, 0xe7, + 0xbc, 0xaa, 0x8e, 0x72, 0x1b, 0x85, 0x7b, 0x82, 0xce, 0xf8, 0x98, 0xa4, + 0x9d, 0x57, 0x0f, 0x34, +}; +static const struct drbg_kat_pr_true kat4076_t = { + 10, kat4076_entropyin, kat4076_nonce, kat4076_persstr, + kat4076_entropyinpr1, kat4076_addinpr1, kat4076_entropyinpr2, + kat4076_addinpr2, kat4076_retbits +}; +static const struct drbg_kat kat4076 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4076_t +}; + +static const unsigned char kat4077_entropyin[] = { + 0xf6, 0xb1, 0x75, 0x3e, 0xbf, 0x0c, 0x6f, 0x31, 0x08, 0xf1, 0xc5, 0x0c, + 0x3d, 0x92, 0x34, 0xdc, 0xd0, 0xab, 0x65, 0xc6, 0x7a, 0x94, 0xb6, 0x20, + 0x00, 0x40, 0xa0, 0x95, 0x47, 0xdb, 0xe5, 0x6a, 0x36, 0xdf, 0x30, 0x21, + 0x81, 0x37, 0xd1, 0x78, +}; +static const unsigned char kat4077_nonce[] = {0}; +static const unsigned char kat4077_persstr[] = { + 0xff, 0xb0, 0xbf, 0x5a, 0x33, 0x65, 0x3e, 0x1f, 0x57, 0x37, 0xe3, 0x3e, + 0x05, 0x7b, 0x77, 0x35, 0xe7, 0xd9, 0x6e, 0x55, 0x48, 0x88, 0xc9, 0x95, + 0xdb, 0x80, 0x9e, 0xbd, 0x4b, 0xd9, 0xd6, 0x36, 0x6d, 0x30, 0xbd, 0xc5, + 0xdd, 0x27, 0xba, 0x61, +}; +static const unsigned char kat4077_entropyinpr1[] = { + 0x69, 0xdd, 0x3e, 0xdd, 0x04, 0x1e, 0x53, 0xfd, 0xf1, 0x95, 0x4c, 0xec, + 0x90, 0xbd, 0x3f, 0xe3, 0xc1, 0xe5, 0xe7, 0x87, 0x85, 0x86, 0x98, 0x95, + 0xc7, 0x14, 0x47, 0x5b, 0x79, 0xe9, 0x6e, 0xbe, 0x47, 0x16, 0x8f, 0x58, + 0xbc, 0xfd, 0xfd, 0x8a, +}; +static const unsigned char kat4077_addinpr1[] = { + 0x76, 0x9e, 0x3d, 0x97, 0xec, 0xac, 0x94, 0x32, 0x40, 0xe7, 0xb2, 0xc7, + 0x3f, 0x95, 0x7e, 0xfd, 0xfd, 0x43, 0xd8, 0x7c, 0xa3, 0xe8, 0x3c, 0xca, + 0x93, 0xf9, 0x24, 0x23, 0x8b, 0x25, 0xf4, 0x9e, 0xf5, 0x05, 0x95, 0xae, + 0xe9, 0x2f, 0x12, 0x51, +}; +static const unsigned char kat4077_entropyinpr2[] = { + 0xe0, 0xe5, 0xd2, 0x33, 0x04, 0x02, 0x4b, 0x77, 0xb0, 0xb0, 0x9e, 0x06, + 0xe9, 0x61, 0x29, 0xda, 0xc8, 0xd0, 0x42, 0xd7, 0x6c, 0x68, 0xa1, 0xc3, + 0x5b, 0x19, 0x74, 0xb0, 0x3e, 0xd2, 0x4a, 0x86, 0xe4, 0x03, 0x0f, 0x85, + 0xa4, 0x4a, 0x02, 0xa1, +}; +static const unsigned char kat4077_addinpr2[] = { + 0x65, 0x25, 0xce, 0x04, 0xe0, 0x7c, 0xe0, 0xbc, 0x46, 0xe4, 0xbe, 0xa6, + 0xa3, 0x59, 0x6e, 0xbc, 0xf5, 0x34, 0x84, 0xe2, 0x18, 0x6d, 0x44, 0x59, + 0xd9, 0x20, 0xbb, 0xcd, 0x02, 0x76, 0x17, 0xb4, 0x2a, 0x0d, 0x15, 0xe4, + 0x96, 0x74, 0xb1, 0xc3, +}; +static const unsigned char kat4077_retbits[] = { + 0x00, 0x73, 0xa5, 0xcb, 0x00, 0xdd, 0x91, 0x2c, 0x25, 0x1a, 0x92, 0xcd, + 0x22, 0x5e, 0x29, 0xcf, 0x43, 0xaa, 0xb6, 0x90, 0x3a, 0xa9, 0xb7, 0x35, + 0x1f, 0xc6, 0x04, 0x7e, 0x22, 0xba, 0x90, 0x66, 0x53, 0x61, 0x16, 0xcd, + 0x84, 0xc7, 0xf0, 0x1b, 0x3f, 0xfd, 0xb7, 0x61, 0x20, 0x33, 0x50, 0x8f, + 0xaf, 0xbe, 0x46, 0xf0, 0xe2, 0x11, 0x7e, 0x0d, 0xaa, 0x8c, 0xc2, 0x5a, + 0x92, 0x6e, 0x5d, 0x12, +}; +static const struct drbg_kat_pr_true kat4077_t = { + 11, kat4077_entropyin, kat4077_nonce, kat4077_persstr, + kat4077_entropyinpr1, kat4077_addinpr1, kat4077_entropyinpr2, + kat4077_addinpr2, kat4077_retbits +}; +static const struct drbg_kat kat4077 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4077_t +}; + +static const unsigned char kat4078_entropyin[] = { + 0x8e, 0xb1, 0x5b, 0xeb, 0xb1, 0x6f, 0x8b, 0xea, 0x5b, 0x1c, 0xdf, 0xce, + 0x91, 0x6e, 0xbf, 0x8d, 0x77, 0xa1, 0x3e, 0xd6, 0x10, 0xaa, 0x35, 0x71, + 0x50, 0x25, 0xeb, 0x06, 0xa8, 0x6b, 0xf6, 0xbf, 0x84, 0x57, 0xdb, 0x8b, + 0xd1, 0xf4, 0x49, 0x9f, +}; +static const unsigned char kat4078_nonce[] = {0}; +static const unsigned char kat4078_persstr[] = { + 0x91, 0x19, 0x2a, 0x28, 0x38, 0x96, 0x7a, 0x29, 0x37, 0xf9, 0xc0, 0x38, + 0xaf, 0xa2, 0xb8, 0x4c, 0x91, 0x53, 0x8a, 0xad, 0x1c, 0x68, 0x45, 0x84, + 0x4d, 0x66, 0x56, 0x87, 0xa2, 0x7d, 0x6c, 0x5f, 0xe9, 0xa6, 0xdf, 0x1e, + 0x4e, 0xeb, 0x15, 0xec, +}; +static const unsigned char kat4078_entropyinpr1[] = { + 0x92, 0x53, 0xf0, 0x67, 0x07, 0xbe, 0x0e, 0x84, 0xa4, 0x23, 0xdb, 0x4d, + 0x61, 0x6e, 0x0d, 0x39, 0xbc, 0x43, 0x28, 0x2e, 0x00, 0xbe, 0x8f, 0xf1, + 0x17, 0xc0, 0x15, 0x37, 0x03, 0x46, 0x05, 0xb3, 0x92, 0x0a, 0x3a, 0xd7, + 0x54, 0x50, 0x6a, 0xf2, +}; +static const unsigned char kat4078_addinpr1[] = { + 0x07, 0xef, 0xf7, 0x03, 0x60, 0x71, 0x03, 0x5c, 0x37, 0x9b, 0xd4, 0x93, + 0xeb, 0xe5, 0xfa, 0xb9, 0x51, 0x60, 0x0d, 0x7f, 0x1d, 0xad, 0xae, 0x40, + 0x7f, 0xde, 0x79, 0x4f, 0xd4, 0x79, 0xab, 0x23, 0xd2, 0x46, 0xf1, 0xe6, + 0x3a, 0xce, 0x10, 0x4a, +}; +static const unsigned char kat4078_entropyinpr2[] = { + 0x00, 0x4b, 0xa6, 0x3d, 0xe3, 0x23, 0x8a, 0xfd, 0xf4, 0x86, 0x91, 0x5a, + 0x60, 0x7d, 0x07, 0xc5, 0xdd, 0xef, 0x12, 0x1c, 0x16, 0xa8, 0x64, 0x02, + 0x9e, 0xc6, 0x35, 0x9a, 0x98, 0xfe, 0xa4, 0xf2, 0xca, 0x9e, 0xcf, 0x2c, + 0x08, 0x4b, 0xe0, 0x77, +}; +static const unsigned char kat4078_addinpr2[] = { + 0x5a, 0x19, 0x7a, 0x6e, 0xb0, 0x6a, 0x1d, 0xc4, 0xa1, 0xfe, 0xcf, 0xbf, + 0x9c, 0x7c, 0x10, 0xe1, 0x79, 0xea, 0xc2, 0x24, 0xea, 0xb0, 0x18, 0x22, + 0xba, 0x1d, 0x9d, 0xbf, 0x98, 0x11, 0x14, 0xb2, 0x6c, 0xc0, 0x28, 0xb5, + 0x75, 0xf6, 0x07, 0x89, +}; +static const unsigned char kat4078_retbits[] = { + 0x00, 0xd8, 0xe2, 0x51, 0x59, 0xd8, 0xc2, 0x49, 0xef, 0xca, 0x64, 0x6e, + 0xf9, 0x75, 0x1c, 0x71, 0xfe, 0x55, 0x70, 0x37, 0x44, 0x5b, 0xdf, 0xf8, + 0xed, 0xbf, 0xb4, 0x69, 0x38, 0xac, 0x75, 0xba, 0x55, 0x41, 0x91, 0x80, + 0x67, 0x91, 0xad, 0xab, 0xb2, 0x50, 0xed, 0x05, 0xa6, 0xec, 0x83, 0x3f, + 0xcb, 0x00, 0x81, 0x97, 0x8a, 0x03, 0x40, 0xac, 0x76, 0x8c, 0xfa, 0x47, + 0xfe, 0x64, 0x0b, 0x9e, +}; +static const struct drbg_kat_pr_true kat4078_t = { + 12, kat4078_entropyin, kat4078_nonce, kat4078_persstr, + kat4078_entropyinpr1, kat4078_addinpr1, kat4078_entropyinpr2, + kat4078_addinpr2, kat4078_retbits +}; +static const struct drbg_kat kat4078 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4078_t +}; + +static const unsigned char kat4079_entropyin[] = { + 0x38, 0x46, 0x40, 0xcd, 0xd5, 0x65, 0xee, 0xcd, 0xf0, 0x5c, 0xba, 0xc4, + 0x02, 0x1c, 0x93, 0xe9, 0xc5, 0x60, 0x7c, 0x36, 0xc7, 0x61, 0xe3, 0x46, + 0x9d, 0x94, 0x64, 0xa9, 0x87, 0x53, 0x37, 0xd3, 0x25, 0x38, 0x9f, 0xa6, + 0x67, 0xe7, 0x8e, 0x56, +}; +static const unsigned char kat4079_nonce[] = {0}; +static const unsigned char kat4079_persstr[] = { + 0x3b, 0x18, 0x88, 0x2c, 0x08, 0x7d, 0x04, 0x04, 0x69, 0x0b, 0x7f, 0x15, + 0xc4, 0xfa, 0xaf, 0x4c, 0x22, 0x7e, 0x62, 0x11, 0x7b, 0x2e, 0xda, 0x5d, + 0xc8, 0x4d, 0xbb, 0xc2, 0x89, 0x68, 0xad, 0x77, 0xb6, 0x93, 0x98, 0xb9, + 0x25, 0x67, 0xea, 0x0a, +}; +static const unsigned char kat4079_entropyinpr1[] = { + 0x38, 0x3e, 0x05, 0x72, 0x32, 0x42, 0xe7, 0x2e, 0x65, 0x70, 0x99, 0x6e, + 0x84, 0x38, 0xb8, 0xec, 0x2e, 0x2b, 0xde, 0x85, 0xef, 0x9f, 0x2c, 0x46, + 0x29, 0xee, 0x81, 0x41, 0x09, 0x2e, 0xbb, 0x4b, 0xee, 0x0b, 0x5d, 0xfb, + 0x17, 0x63, 0xc0, 0x85, +}; +static const unsigned char kat4079_addinpr1[] = { + 0xcd, 0x9d, 0x0d, 0xeb, 0x5f, 0x11, 0x69, 0x46, 0x8b, 0x38, 0xce, 0xea, + 0x01, 0xa5, 0xef, 0xc9, 0x6f, 0x60, 0xa5, 0xe9, 0x29, 0xbd, 0x97, 0x1e, + 0x98, 0x13, 0x1c, 0xeb, 0xa3, 0x78, 0x3d, 0xa6, 0xd8, 0xf2, 0xf2, 0xfe, + 0x7a, 0x52, 0xd3, 0xe0, +}; +static const unsigned char kat4079_entropyinpr2[] = { + 0xb6, 0x0d, 0xc8, 0xd9, 0xd0, 0x54, 0x76, 0xad, 0xde, 0xae, 0x80, 0xcc, + 0xad, 0x1b, 0x2a, 0xf1, 0x0d, 0x92, 0xbe, 0xd1, 0x5b, 0xd8, 0xe9, 0x92, + 0x7a, 0x7f, 0x5b, 0x5d, 0x12, 0x5e, 0x0e, 0x7e, 0x9b, 0x68, 0x78, 0x18, + 0x42, 0xe5, 0x07, 0x1f, +}; +static const unsigned char kat4079_addinpr2[] = { + 0x09, 0x14, 0x24, 0x74, 0x9b, 0xb2, 0x11, 0xbe, 0x80, 0xeb, 0x59, 0x3e, + 0x43, 0x22, 0xde, 0xd4, 0x64, 0x52, 0x5b, 0x31, 0x96, 0xe7, 0xd7, 0xbe, + 0x40, 0xf4, 0x35, 0xe7, 0x37, 0x4e, 0x8f, 0xac, 0x36, 0xf5, 0x7e, 0x1c, + 0x4a, 0xc9, 0x0d, 0x66, +}; +static const unsigned char kat4079_retbits[] = { + 0x53, 0x2e, 0x6c, 0x92, 0x19, 0x2b, 0xd5, 0xed, 0x33, 0xfe, 0x8f, 0x7d, + 0xa9, 0x70, 0x5f, 0x86, 0xee, 0x8e, 0x0c, 0xd3, 0x90, 0xc4, 0x02, 0x6d, + 0x7e, 0x7c, 0x31, 0x46, 0x54, 0xb2, 0xdd, 0x86, 0xa6, 0x83, 0xb5, 0x13, + 0xb0, 0x7d, 0x43, 0x4a, 0x28, 0x99, 0x51, 0x38, 0x4b, 0xeb, 0x34, 0xb7, + 0xe4, 0x43, 0xc7, 0x98, 0xe9, 0x1c, 0xc6, 0x3c, 0xf2, 0x3d, 0x9f, 0xea, + 0xe2, 0xcc, 0xbc, 0x76, +}; +static const struct drbg_kat_pr_true kat4079_t = { + 13, kat4079_entropyin, kat4079_nonce, kat4079_persstr, + kat4079_entropyinpr1, kat4079_addinpr1, kat4079_entropyinpr2, + kat4079_addinpr2, kat4079_retbits +}; +static const struct drbg_kat kat4079 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4079_t +}; + +static const unsigned char kat4080_entropyin[] = { + 0xd9, 0x3c, 0x42, 0x42, 0xea, 0x93, 0x72, 0x28, 0x5a, 0xed, 0x47, 0xba, + 0x4b, 0xfb, 0xb4, 0x30, 0xec, 0x4a, 0x4d, 0xa2, 0x3b, 0x62, 0xf7, 0x7b, + 0x5a, 0x0c, 0x99, 0xac, 0xc3, 0x38, 0xbf, 0x17, 0xf5, 0x9d, 0xaa, 0x32, + 0x11, 0x8f, 0x89, 0x20, +}; +static const unsigned char kat4080_nonce[] = {0}; +static const unsigned char kat4080_persstr[] = { + 0x90, 0x66, 0x00, 0x0c, 0x46, 0x3f, 0x8f, 0x41, 0xde, 0xa0, 0x14, 0x9c, + 0x11, 0xd9, 0x77, 0x24, 0x32, 0x77, 0x3f, 0x78, 0xfe, 0x67, 0xaa, 0xa8, + 0x64, 0xba, 0xf7, 0xe8, 0xe2, 0x06, 0xe8, 0x0d, 0x01, 0x3a, 0xb9, 0x6e, + 0x05, 0x5e, 0xe2, 0xe9, +}; +static const unsigned char kat4080_entropyinpr1[] = { + 0xad, 0xe5, 0x16, 0xa9, 0x45, 0xef, 0xe1, 0x10, 0x1c, 0xf0, 0x98, 0x50, + 0x5f, 0x6c, 0x43, 0x65, 0x9e, 0xfc, 0xff, 0x09, 0xb5, 0x01, 0xc5, 0x9c, + 0x65, 0x6e, 0x83, 0xa6, 0x2f, 0xc8, 0xa4, 0xd0, 0x77, 0xb3, 0x4d, 0xfa, + 0x80, 0xee, 0xe1, 0xe7, +}; +static const unsigned char kat4080_addinpr1[] = { + 0xa3, 0xf3, 0xd5, 0xc2, 0xfc, 0x0e, 0x46, 0x64, 0x5b, 0xc5, 0xc7, 0xd5, + 0x34, 0x01, 0x98, 0x3d, 0xa8, 0xc2, 0x9e, 0x6b, 0xf2, 0x05, 0xf6, 0x5b, + 0x1a, 0xd9, 0x32, 0x14, 0x62, 0x25, 0x04, 0x1a, 0xfc, 0x89, 0xa9, 0xe6, + 0x1c, 0x25, 0x1e, 0x6a, +}; +static const unsigned char kat4080_entropyinpr2[] = { + 0x14, 0x06, 0x36, 0x34, 0x2e, 0x9e, 0xbb, 0x2b, 0xae, 0x8a, 0x87, 0xb5, + 0xd8, 0x19, 0x3a, 0x59, 0xb7, 0x5b, 0x12, 0x31, 0x8e, 0x70, 0x94, 0x97, + 0x5b, 0xed, 0x5c, 0xe2, 0xd2, 0x3a, 0x58, 0xb4, 0xa0, 0x21, 0x49, 0x6e, + 0x82, 0x0a, 0x1b, 0x35, +}; +static const unsigned char kat4080_addinpr2[] = { + 0x3d, 0xc3, 0xef, 0x94, 0x47, 0xff, 0xdd, 0xf6, 0x4c, 0x3c, 0xa0, 0x56, + 0x9a, 0xfc, 0xf8, 0xe5, 0xd4, 0x91, 0xa9, 0x57, 0x1b, 0x9a, 0x1f, 0xa2, + 0x51, 0xe0, 0x68, 0x4d, 0x3a, 0x5e, 0xb2, 0xdb, 0xde, 0x82, 0xbd, 0xd0, + 0xf8, 0xda, 0xbb, 0x8b, +}; +static const unsigned char kat4080_retbits[] = { + 0xb7, 0x2e, 0x48, 0x69, 0x84, 0xd1, 0x27, 0x3f, 0xa7, 0x86, 0x5a, 0x2a, + 0x43, 0xa8, 0x30, 0xb6, 0x25, 0xe3, 0x94, 0xcc, 0xcf, 0x16, 0x96, 0x10, + 0xad, 0x27, 0x14, 0xb5, 0xb6, 0x4e, 0xf6, 0x47, 0x3f, 0x53, 0xe6, 0x2a, + 0xaf, 0xfc, 0x85, 0xbf, 0xa2, 0xb1, 0x55, 0xbf, 0x81, 0x83, 0x0a, 0xbf, + 0xc5, 0x28, 0xa8, 0x0c, 0x17, 0xf2, 0xe3, 0x25, 0xbb, 0x7a, 0xc9, 0x19, + 0x7e, 0x5a, 0x10, 0x99, +}; +static const struct drbg_kat_pr_true kat4080_t = { + 14, kat4080_entropyin, kat4080_nonce, kat4080_persstr, + kat4080_entropyinpr1, kat4080_addinpr1, kat4080_entropyinpr2, + kat4080_addinpr2, kat4080_retbits +}; +static const struct drbg_kat kat4080 = { + PR_TRUE, NO_DF, NID_aes_192_ctr, 40, 0, 40, 40, 64, &kat4080_t +}; + +static const unsigned char kat4081_entropyin[] = { + 0xfa, 0xf3, 0x46, 0xc9, 0xc8, 0xaf, 0xbc, 0x5a, 0xb6, 0xe3, 0x3c, 0xe4, + 0x92, 0x24, 0x7f, 0xac, 0x6d, 0xb9, 0xa7, 0xba, 0x42, 0x97, 0x55, 0x7f, + 0x58, 0x7a, 0x42, 0x56, 0x3d, 0xdf, 0x56, 0xc9, 0x0e, 0x41, 0xc6, 0xaf, + 0xb5, 0x62, 0x33, 0x81, 0x5b, 0x74, 0xe0, 0x91, 0xba, 0xc7, 0xd8, 0xe5, +}; +static const unsigned char kat4081_nonce[] = {0}; +static const unsigned char kat4081_persstr[] = {0}; +static const unsigned char kat4081_entropyinpr1[] = { + 0xdf, 0xc1, 0x11, 0x25, 0x2d, 0x71, 0x46, 0x92, 0x27, 0x13, 0x72, 0x0a, + 0xe1, 0xe3, 0x48, 0xa0, 0x7a, 0xe4, 0x03, 0xb5, 0x23, 0x8f, 0xef, 0xb4, + 0xe8, 0x59, 0x2f, 0x6f, 0x6c, 0xc4, 0xa6, 0x1c, 0x94, 0x82, 0x8d, 0xb8, + 0x4c, 0x6f, 0xae, 0xcd, 0x15, 0x02, 0x26, 0x10, 0x08, 0x01, 0x1f, 0x2c, +}; +static const unsigned char kat4081_addinpr1[] = {0}; +static const unsigned char kat4081_entropyinpr2[] = { + 0x45, 0x28, 0xba, 0xc5, 0xb9, 0x9c, 0x77, 0x23, 0x47, 0xd4, 0x4f, 0x4e, + 0xce, 0x79, 0xbc, 0x81, 0x1c, 0xa8, 0xeb, 0xea, 0x94, 0x83, 0xfa, 0x5f, + 0x50, 0x40, 0xc0, 0x2f, 0x77, 0x06, 0x9d, 0xad, 0x1a, 0xec, 0x7a, 0xda, + 0xa8, 0xa9, 0xa6, 0xa9, 0xdd, 0xab, 0xab, 0x04, 0x5d, 0x32, 0x8a, 0x90, +}; +static const unsigned char kat4081_addinpr2[] = {0}; +static const unsigned char kat4081_retbits[] = { + 0xbc, 0x01, 0x3d, 0xc8, 0x91, 0xdb, 0x12, 0xc3, 0x4a, 0xd1, 0x19, 0x44, + 0x80, 0x5b, 0xf1, 0x3d, 0xfd, 0x67, 0xff, 0x2c, 0x23, 0x17, 0x6d, 0x83, + 0xf5, 0xb3, 0x96, 0xb6, 0x9e, 0x40, 0x00, 0x42, 0x25, 0x2e, 0x11, 0x81, + 0x6c, 0x30, 0x95, 0x42, 0x11, 0x37, 0x18, 0x1a, 0x5d, 0x0e, 0xe3, 0x7c, + 0x83, 0xa3, 0x39, 0xc5, 0x8d, 0x08, 0x09, 0x46, 0xca, 0x90, 0xaa, 0x43, + 0x7d, 0x50, 0xd9, 0xcf, +}; +static const struct drbg_kat_pr_true kat4081_t = { + 0, kat4081_entropyin, kat4081_nonce, kat4081_persstr, + kat4081_entropyinpr1, kat4081_addinpr1, kat4081_entropyinpr2, + kat4081_addinpr2, kat4081_retbits +}; +static const struct drbg_kat kat4081 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4081_t +}; + +static const unsigned char kat4082_entropyin[] = { + 0xe5, 0xd1, 0x5d, 0x66, 0x1c, 0xc3, 0xa5, 0xa7, 0xfb, 0x15, 0xf9, 0x40, + 0x55, 0x44, 0x61, 0xa7, 0xc1, 0xb8, 0x86, 0xa9, 0xc9, 0x39, 0xd6, 0x32, + 0xd3, 0x6d, 0x3e, 0x78, 0x5c, 0x71, 0x3e, 0xa2, 0xdf, 0xf9, 0x44, 0x48, + 0x5b, 0x9b, 0x35, 0xbd, 0x75, 0x03, 0x24, 0x5b, 0x20, 0x81, 0xf8, 0x2d, +}; +static const unsigned char kat4082_nonce[] = {0}; +static const unsigned char kat4082_persstr[] = {0}; +static const unsigned char kat4082_entropyinpr1[] = { + 0x0b, 0x2c, 0x49, 0xe2, 0x16, 0xef, 0x47, 0xdf, 0x86, 0x25, 0x48, 0x67, + 0xb6, 0x19, 0x69, 0xac, 0x63, 0x1c, 0x4b, 0x6a, 0x68, 0xf6, 0x44, 0xcb, + 0x2a, 0x6b, 0x89, 0xc7, 0xf6, 0x28, 0x2f, 0xaf, 0x40, 0x3d, 0xcc, 0xd9, + 0x17, 0x7b, 0x90, 0xab, 0xa3, 0x25, 0x35, 0xfc, 0xce, 0xa4, 0x88, 0xe9, +}; +static const unsigned char kat4082_addinpr1[] = {0}; +static const unsigned char kat4082_entropyinpr2[] = { + 0xc6, 0xc4, 0x6e, 0x98, 0xfa, 0x4b, 0x87, 0xd5, 0xe3, 0x98, 0xdf, 0x48, + 0xaa, 0xda, 0x1a, 0x71, 0x3c, 0x2f, 0x7b, 0xce, 0xb3, 0x66, 0xa1, 0xa7, + 0x46, 0xda, 0xff, 0x60, 0x06, 0x18, 0x83, 0x5f, 0x57, 0x47, 0x53, 0x79, + 0x63, 0x1d, 0xaa, 0xd4, 0x6e, 0xf0, 0x1c, 0x78, 0xf4, 0xed, 0x21, 0x54, +}; +static const unsigned char kat4082_addinpr2[] = {0}; +static const unsigned char kat4082_retbits[] = { + 0x49, 0x63, 0xa8, 0xa8, 0x44, 0x2d, 0x8d, 0x03, 0xed, 0x86, 0x8f, 0x02, + 0x70, 0x21, 0xc6, 0x69, 0xd3, 0xa0, 0x79, 0x80, 0xe5, 0x6f, 0xe5, 0xef, + 0x61, 0x00, 0x41, 0x3b, 0x9a, 0x1c, 0x23, 0x07, 0x29, 0x77, 0x32, 0x4f, + 0x2d, 0x80, 0xbc, 0x4d, 0x1e, 0x25, 0x95, 0x40, 0x0d, 0x49, 0x01, 0xf2, + 0x0e, 0x4b, 0xf1, 0x7f, 0x96, 0x00, 0x55, 0xdc, 0x1f, 0xf3, 0x46, 0xc4, + 0x23, 0x80, 0x70, 0x10, +}; +static const struct drbg_kat_pr_true kat4082_t = { + 1, kat4082_entropyin, kat4082_nonce, kat4082_persstr, + kat4082_entropyinpr1, kat4082_addinpr1, kat4082_entropyinpr2, + kat4082_addinpr2, kat4082_retbits +}; +static const struct drbg_kat kat4082 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4082_t +}; + +static const unsigned char kat4083_entropyin[] = { + 0xbf, 0x5e, 0xc4, 0xb9, 0xb6, 0x13, 0xcd, 0x67, 0xb0, 0xa4, 0x43, 0x87, + 0xf6, 0x67, 0x13, 0x27, 0x29, 0x4c, 0x22, 0xaa, 0x11, 0x80, 0xd4, 0x3e, + 0xab, 0xde, 0xf2, 0xd0, 0xc1, 0xcc, 0xf2, 0x3e, 0xa1, 0x2e, 0x9b, 0xaa, + 0xa7, 0x6b, 0x99, 0xe1, 0xea, 0x69, 0xae, 0xe9, 0x4d, 0xfd, 0x54, 0xa5, +}; +static const unsigned char kat4083_nonce[] = {0}; +static const unsigned char kat4083_persstr[] = {0}; +static const unsigned char kat4083_entropyinpr1[] = { + 0xa6, 0x23, 0x2b, 0x35, 0xb4, 0x08, 0x83, 0x16, 0xef, 0x3d, 0xe6, 0x00, + 0x2e, 0x14, 0xde, 0x76, 0xdd, 0x4d, 0x36, 0x4b, 0xca, 0xbf, 0x1b, 0x82, + 0xb0, 0x69, 0x54, 0x0a, 0x7d, 0x60, 0x02, 0xc5, 0xda, 0x10, 0xd3, 0x55, + 0xde, 0x22, 0xb1, 0xdf, 0x30, 0xee, 0x89, 0x88, 0xce, 0xba, 0x46, 0xe0, +}; +static const unsigned char kat4083_addinpr1[] = {0}; +static const unsigned char kat4083_entropyinpr2[] = { + 0xb7, 0x6c, 0x32, 0x6f, 0xd9, 0x48, 0x51, 0x50, 0x4f, 0x93, 0x0f, 0x16, + 0x05, 0xde, 0x0b, 0x1a, 0x32, 0xd4, 0xac, 0x74, 0x2f, 0x0d, 0xa4, 0x98, + 0xda, 0x00, 0x22, 0x3e, 0x59, 0x82, 0x6a, 0xed, 0x6a, 0x51, 0x0e, 0x98, + 0x33, 0x3f, 0xf2, 0xae, 0x1a, 0xe0, 0x39, 0x8b, 0x3f, 0x38, 0xab, 0x4e, +}; +static const unsigned char kat4083_addinpr2[] = {0}; +static const unsigned char kat4083_retbits[] = { + 0xa6, 0xf8, 0x3f, 0x46, 0x76, 0x38, 0x94, 0xd3, 0xd4, 0x9e, 0x28, 0xf1, + 0xd4, 0x62, 0x69, 0x9a, 0xd6, 0xa5, 0xf4, 0x01, 0x64, 0xd1, 0xc4, 0x6c, + 0xdb, 0x99, 0xfe, 0x12, 0x7d, 0xa7, 0x0b, 0x8a, 0x9c, 0x05, 0x2b, 0x7f, + 0x42, 0xb8, 0xea, 0x3c, 0x92, 0xa2, 0x4a, 0x62, 0xfa, 0xd6, 0x93, 0xd0, + 0xc5, 0xd8, 0x96, 0xfe, 0xc5, 0xf3, 0xdb, 0xfd, 0xc5, 0x0e, 0x4e, 0x32, + 0x41, 0xcf, 0x9b, 0xee, +}; +static const struct drbg_kat_pr_true kat4083_t = { + 2, kat4083_entropyin, kat4083_nonce, kat4083_persstr, + kat4083_entropyinpr1, kat4083_addinpr1, kat4083_entropyinpr2, + kat4083_addinpr2, kat4083_retbits +}; +static const struct drbg_kat kat4083 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4083_t +}; + +static const unsigned char kat4084_entropyin[] = { + 0xf0, 0xb6, 0x1b, 0xd5, 0x37, 0x1e, 0x6a, 0x60, 0xa1, 0x53, 0x9d, 0xc9, + 0x72, 0xcc, 0x63, 0x3c, 0x9a, 0x6c, 0x60, 0x68, 0x97, 0x0e, 0x7a, 0xea, + 0x4a, 0xf1, 0xac, 0xad, 0x26, 0x5b, 0x24, 0x27, 0xdc, 0xc9, 0xe7, 0x5e, + 0x5b, 0xfa, 0x08, 0xad, 0xfd, 0xf5, 0x45, 0x8d, 0xc4, 0x01, 0xed, 0xca, +}; +static const unsigned char kat4084_nonce[] = {0}; +static const unsigned char kat4084_persstr[] = {0}; +static const unsigned char kat4084_entropyinpr1[] = { + 0xa5, 0xd1, 0xae, 0xe0, 0x8e, 0x1b, 0x7a, 0xe5, 0xbc, 0x0a, 0xa3, 0x30, + 0x63, 0x56, 0x36, 0x5d, 0x24, 0xc1, 0x05, 0x54, 0x6c, 0x65, 0x1a, 0x9e, + 0xbf, 0x2e, 0xb7, 0x9a, 0x6a, 0xc7, 0x2f, 0xc7, 0x94, 0xd9, 0x91, 0xce, + 0xbb, 0x83, 0x0c, 0xb4, 0x8f, 0x7c, 0x77, 0x2b, 0x54, 0x55, 0xe0, 0xba, +}; +static const unsigned char kat4084_addinpr1[] = {0}; +static const unsigned char kat4084_entropyinpr2[] = { + 0x26, 0xf6, 0xa4, 0x48, 0x77, 0x16, 0xdc, 0xdd, 0xa8, 0x74, 0x0d, 0xf7, + 0x6a, 0x3f, 0x64, 0x89, 0x5e, 0xbc, 0x82, 0x59, 0x98, 0x9b, 0x82, 0x39, + 0x76, 0xa0, 0xfb, 0xe0, 0x02, 0xb5, 0xc5, 0x43, 0x14, 0xfc, 0x56, 0x60, + 0xde, 0x50, 0xe4, 0x96, 0x92, 0xcd, 0x08, 0xb3, 0x89, 0xcd, 0x08, 0x7f, +}; +static const unsigned char kat4084_addinpr2[] = {0}; +static const unsigned char kat4084_retbits[] = { + 0xcc, 0x83, 0xfa, 0x47, 0xf9, 0xc5, 0x64, 0x3b, 0xb3, 0x61, 0x30, 0x4f, + 0x08, 0xcb, 0x0c, 0xa1, 0x88, 0x83, 0x40, 0x0c, 0x52, 0x1d, 0x23, 0xc8, + 0x97, 0x74, 0x82, 0xc1, 0xa2, 0x9d, 0xb9, 0x44, 0xa9, 0x36, 0x11, 0xc4, + 0x99, 0x6c, 0xa7, 0x96, 0x95, 0x9f, 0x17, 0x0d, 0xa5, 0x6d, 0x92, 0xcf, + 0x92, 0x87, 0x55, 0x2c, 0x9d, 0x13, 0x53, 0x94, 0x02, 0x02, 0x4e, 0xc6, + 0x10, 0x49, 0x95, 0x1e, +}; +static const struct drbg_kat_pr_true kat4084_t = { + 3, kat4084_entropyin, kat4084_nonce, kat4084_persstr, + kat4084_entropyinpr1, kat4084_addinpr1, kat4084_entropyinpr2, + kat4084_addinpr2, kat4084_retbits +}; +static const struct drbg_kat kat4084 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4084_t +}; + +static const unsigned char kat4085_entropyin[] = { + 0xe0, 0xe9, 0xce, 0x9c, 0x3f, 0x19, 0xdb, 0x89, 0x9f, 0xcd, 0x9f, 0x5c, + 0x9b, 0xee, 0x29, 0xfb, 0xca, 0xca, 0xf6, 0xd0, 0x1a, 0x5c, 0xcc, 0x71, + 0xf3, 0x93, 0x54, 0x48, 0xfb, 0xf1, 0xbd, 0x4c, 0x99, 0x19, 0x69, 0x2c, + 0x94, 0xdc, 0xf8, 0x34, 0xf3, 0x93, 0x2a, 0x33, 0x07, 0x6e, 0x32, 0x16, +}; +static const unsigned char kat4085_nonce[] = {0}; +static const unsigned char kat4085_persstr[] = {0}; +static const unsigned char kat4085_entropyinpr1[] = { + 0x8b, 0x25, 0xf8, 0xd4, 0x9b, 0x04, 0x01, 0xf3, 0xc7, 0x3f, 0x82, 0xfe, + 0xbf, 0x2b, 0x6c, 0x95, 0xb2, 0xde, 0x38, 0xed, 0x41, 0xb6, 0xe9, 0x30, + 0x2f, 0xb6, 0x74, 0xe1, 0x19, 0x01, 0xfc, 0x98, 0xd4, 0xc8, 0x12, 0x59, + 0xb8, 0x5a, 0x17, 0xdb, 0xfe, 0xd5, 0x59, 0x3b, 0x27, 0xd1, 0xff, 0xe1, +}; +static const unsigned char kat4085_addinpr1[] = {0}; +static const unsigned char kat4085_entropyinpr2[] = { + 0xc2, 0xfc, 0xf0, 0x2c, 0x73, 0xaf, 0xd7, 0x1c, 0x39, 0x68, 0x1c, 0x71, + 0x11, 0xfb, 0xa1, 0x1d, 0x63, 0x2a, 0x12, 0xe7, 0xa1, 0xb9, 0x40, 0x4b, + 0x0b, 0xb5, 0x8d, 0x45, 0x9b, 0x59, 0xfd, 0x9a, 0x5a, 0x15, 0x75, 0xb3, + 0x6a, 0x33, 0x53, 0x51, 0x67, 0x71, 0x7f, 0xbb, 0xae, 0x01, 0x5c, 0x71, +}; +static const unsigned char kat4085_addinpr2[] = {0}; +static const unsigned char kat4085_retbits[] = { + 0xe2, 0x88, 0x14, 0x7f, 0x1c, 0xf9, 0xed, 0xf6, 0x72, 0xc9, 0x3f, 0xdd, + 0x3b, 0xe2, 0x4c, 0x44, 0x47, 0x02, 0x85, 0x6e, 0xe8, 0xe2, 0x1b, 0x31, + 0xa5, 0x1a, 0x08, 0xc9, 0x56, 0xa0, 0x4b, 0xa3, 0xd4, 0x99, 0xa9, 0x78, + 0x74, 0x75, 0xff, 0x9b, 0x5b, 0x21, 0xe1, 0x30, 0x7c, 0x4e, 0xfa, 0x67, + 0x9f, 0x7a, 0xf8, 0xd3, 0xc6, 0x3d, 0xba, 0xfc, 0xba, 0x87, 0xcc, 0xfc, + 0xaa, 0xc0, 0x57, 0xe3, +}; +static const struct drbg_kat_pr_true kat4085_t = { + 4, kat4085_entropyin, kat4085_nonce, kat4085_persstr, + kat4085_entropyinpr1, kat4085_addinpr1, kat4085_entropyinpr2, + kat4085_addinpr2, kat4085_retbits +}; +static const struct drbg_kat kat4085 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4085_t +}; + +static const unsigned char kat4086_entropyin[] = { + 0x05, 0xe8, 0x93, 0xd9, 0xa6, 0x42, 0x7d, 0x39, 0xc7, 0x27, 0xf1, 0x9a, + 0xa1, 0x68, 0x53, 0x17, 0xe3, 0x59, 0x95, 0x49, 0x19, 0xbb, 0x02, 0xce, + 0x12, 0x9c, 0xa4, 0x9a, 0x99, 0x8b, 0x3e, 0xf1, 0x78, 0x76, 0xd6, 0x88, + 0x91, 0xa2, 0x19, 0xab, 0x5e, 0x90, 0xcb, 0xca, 0xf9, 0x06, 0x21, 0x76, +}; +static const unsigned char kat4086_nonce[] = {0}; +static const unsigned char kat4086_persstr[] = {0}; +static const unsigned char kat4086_entropyinpr1[] = { + 0xc7, 0x96, 0xdd, 0xc4, 0x6a, 0x7c, 0xc0, 0xea, 0xcc, 0x41, 0x72, 0x42, + 0x9f, 0x12, 0x50, 0xa0, 0x1b, 0x9f, 0x0c, 0x78, 0xe3, 0x2d, 0x2f, 0xad, + 0xce, 0x04, 0xfa, 0xa0, 0x84, 0x00, 0x62, 0xf5, 0x12, 0xc2, 0xd1, 0xd9, + 0xfc, 0xf5, 0xe4, 0xce, 0x4c, 0xaa, 0x60, 0x17, 0xcd, 0x6c, 0x56, 0x71, +}; +static const unsigned char kat4086_addinpr1[] = {0}; +static const unsigned char kat4086_entropyinpr2[] = { + 0x45, 0xa5, 0x08, 0x7c, 0x74, 0xc8, 0xbf, 0xce, 0x96, 0xcb, 0xab, 0xb9, + 0x70, 0xdc, 0xed, 0x61, 0x3d, 0xea, 0x2a, 0x0f, 0xba, 0x44, 0xbd, 0x53, + 0xc6, 0x4b, 0x98, 0x2d, 0x23, 0xa4, 0x3e, 0x49, 0xd0, 0x50, 0xfe, 0xe9, + 0x5b, 0x67, 0x46, 0x73, 0xe5, 0xa7, 0xbd, 0xfd, 0xaf, 0x5a, 0x2e, 0x30, +}; +static const unsigned char kat4086_addinpr2[] = {0}; +static const unsigned char kat4086_retbits[] = { + 0x7d, 0x60, 0xec, 0xa5, 0xb2, 0xa9, 0x0a, 0xc9, 0xf8, 0x4d, 0x84, 0xc4, + 0x35, 0x60, 0x97, 0xa0, 0xf2, 0x03, 0x53, 0xcd, 0xd7, 0xf9, 0xe3, 0x53, + 0xf0, 0x71, 0xb4, 0x55, 0x7c, 0xab, 0x38, 0x8a, 0xde, 0xd6, 0x1d, 0xe1, + 0x60, 0x78, 0x49, 0x90, 0x5e, 0xab, 0xb4, 0xf6, 0x81, 0x18, 0x7d, 0x74, + 0x09, 0xd1, 0x5f, 0x30, 0x31, 0x90, 0x35, 0x46, 0x62, 0xc0, 0x50, 0xe8, + 0x99, 0xc1, 0xc6, 0xf8, +}; +static const struct drbg_kat_pr_true kat4086_t = { + 5, kat4086_entropyin, kat4086_nonce, kat4086_persstr, + kat4086_entropyinpr1, kat4086_addinpr1, kat4086_entropyinpr2, + kat4086_addinpr2, kat4086_retbits +}; +static const struct drbg_kat kat4086 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4086_t +}; + +static const unsigned char kat4087_entropyin[] = { + 0x06, 0x7d, 0xe2, 0xf6, 0x5d, 0x56, 0xca, 0xc8, 0xa0, 0x9c, 0x1d, 0x3b, + 0x48, 0x80, 0x06, 0xc7, 0xb3, 0x1a, 0x97, 0x48, 0x4d, 0xd3, 0x0d, 0xb2, + 0xce, 0xb6, 0x70, 0x5c, 0xa9, 0xb7, 0xa9, 0x93, 0xaf, 0xdb, 0xf5, 0x92, + 0x0e, 0xd7, 0x38, 0x49, 0xdc, 0x67, 0xb9, 0xd2, 0x8c, 0xbf, 0xe1, 0xcf, +}; +static const unsigned char kat4087_nonce[] = {0}; +static const unsigned char kat4087_persstr[] = {0}; +static const unsigned char kat4087_entropyinpr1[] = { + 0x16, 0x8b, 0x15, 0x90, 0xc8, 0xe5, 0x2c, 0x83, 0x25, 0x64, 0xa1, 0x13, + 0x50, 0x40, 0xe4, 0x0f, 0xc0, 0x9b, 0x66, 0xa7, 0xea, 0x0a, 0xac, 0xa6, + 0x3a, 0x44, 0xe5, 0x9f, 0x2e, 0xff, 0x38, 0xca, 0x7d, 0x63, 0xde, 0x28, + 0x3f, 0x76, 0x6f, 0x08, 0x5b, 0xe5, 0x10, 0x7f, 0x56, 0x48, 0x79, 0xad, +}; +static const unsigned char kat4087_addinpr1[] = {0}; +static const unsigned char kat4087_entropyinpr2[] = { + 0xc5, 0x5b, 0xd6, 0x17, 0xff, 0x9d, 0x58, 0x01, 0x0b, 0xa0, 0xed, 0x10, + 0xcb, 0xff, 0xac, 0xd7, 0x2a, 0x5a, 0x86, 0x36, 0xb8, 0x16, 0x27, 0x8d, + 0xc0, 0xc8, 0x0e, 0x6a, 0xe2, 0xfe, 0x34, 0x4d, 0xe1, 0xed, 0xdc, 0xef, + 0xe1, 0x1e, 0xa2, 0x7f, 0x7d, 0x32, 0xc6, 0x91, 0xce, 0xab, 0xf4, 0x41, +}; +static const unsigned char kat4087_addinpr2[] = {0}; +static const unsigned char kat4087_retbits[] = { + 0x44, 0x90, 0xd3, 0xeb, 0x16, 0x5b, 0x56, 0x82, 0xd8, 0xe3, 0xc0, 0xce, + 0x23, 0x28, 0xb4, 0x24, 0xab, 0xcb, 0x76, 0xd9, 0x63, 0x44, 0x7d, 0x02, + 0xda, 0x8a, 0x18, 0x6f, 0x5b, 0x07, 0x37, 0x65, 0xf4, 0xd2, 0x73, 0xf8, + 0xf4, 0x58, 0x67, 0x1a, 0xed, 0x28, 0xd6, 0xcf, 0x56, 0xed, 0x54, 0xfe, + 0x5c, 0x3e, 0x12, 0x44, 0x46, 0xcc, 0x04, 0xb8, 0xbc, 0x39, 0x41, 0xdc, + 0x3b, 0xb2, 0xa0, 0xca, +}; +static const struct drbg_kat_pr_true kat4087_t = { + 6, kat4087_entropyin, kat4087_nonce, kat4087_persstr, + kat4087_entropyinpr1, kat4087_addinpr1, kat4087_entropyinpr2, + kat4087_addinpr2, kat4087_retbits +}; +static const struct drbg_kat kat4087 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4087_t +}; + +static const unsigned char kat4088_entropyin[] = { + 0xa1, 0xaa, 0x10, 0xbb, 0x6e, 0xe8, 0xe4, 0xcf, 0xf8, 0xae, 0x8d, 0x36, + 0x39, 0xc4, 0x71, 0x73, 0x21, 0xba, 0x54, 0x6f, 0x75, 0x97, 0x89, 0xfa, + 0x5b, 0x3a, 0xeb, 0x38, 0x9d, 0x58, 0x8a, 0x35, 0xc3, 0x8c, 0x54, 0xb7, + 0x5c, 0x4c, 0x38, 0x3f, 0x69, 0x4e, 0xa8, 0xf3, 0x10, 0xd4, 0x5e, 0xd5, +}; +static const unsigned char kat4088_nonce[] = {0}; +static const unsigned char kat4088_persstr[] = {0}; +static const unsigned char kat4088_entropyinpr1[] = { + 0x11, 0x6c, 0x07, 0xef, 0xb3, 0xb5, 0x3a, 0x90, 0xc5, 0x2a, 0x95, 0x84, + 0x4f, 0x5f, 0x4e, 0x93, 0x04, 0x66, 0x7e, 0xff, 0xfa, 0xd6, 0x03, 0x67, + 0x89, 0x94, 0xb7, 0x25, 0x7a, 0x68, 0x87, 0xa8, 0xa5, 0x22, 0xc4, 0x00, + 0x83, 0xcf, 0xd9, 0x4e, 0x37, 0x1e, 0xa1, 0x8f, 0x7d, 0x7a, 0xfd, 0xa7, +}; +static const unsigned char kat4088_addinpr1[] = {0}; +static const unsigned char kat4088_entropyinpr2[] = { + 0xc0, 0x1b, 0xe2, 0x92, 0xf6, 0xd0, 0x29, 0xba, 0x8f, 0xea, 0x8b, 0x85, + 0xb7, 0x00, 0x7b, 0x9c, 0x4a, 0x22, 0x26, 0x56, 0x6b, 0x94, 0x90, 0xd9, + 0xb9, 0xd3, 0xbb, 0xcd, 0x44, 0x86, 0x62, 0xfa, 0x1c, 0x0b, 0x69, 0xa5, + 0x23, 0xab, 0xe5, 0x47, 0x92, 0xcc, 0x00, 0xe7, 0xd6, 0x78, 0x32, 0x92, +}; +static const unsigned char kat4088_addinpr2[] = {0}; +static const unsigned char kat4088_retbits[] = { + 0xfd, 0x26, 0x72, 0xcb, 0xb1, 0x51, 0xde, 0xf9, 0xec, 0x3a, 0x36, 0xbd, + 0x89, 0xa8, 0x09, 0x7b, 0x4a, 0x14, 0x1a, 0x1d, 0x37, 0xdd, 0x65, 0xd0, + 0xd3, 0x81, 0x9b, 0x13, 0xd6, 0x7e, 0x3a, 0xf2, 0x94, 0x88, 0x94, 0x4c, + 0x52, 0x67, 0xdd, 0x7e, 0x55, 0xf9, 0x24, 0xce, 0x15, 0x59, 0x41, 0xb7, + 0x8b, 0x43, 0xf8, 0x6e, 0x7b, 0x6d, 0x56, 0xdf, 0xb0, 0xd4, 0x8d, 0xcd, + 0xa8, 0x29, 0xc2, 0xba, +}; +static const struct drbg_kat_pr_true kat4088_t = { + 7, kat4088_entropyin, kat4088_nonce, kat4088_persstr, + kat4088_entropyinpr1, kat4088_addinpr1, kat4088_entropyinpr2, + kat4088_addinpr2, kat4088_retbits +}; +static const struct drbg_kat kat4088 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4088_t +}; + +static const unsigned char kat4089_entropyin[] = { + 0xc1, 0x0d, 0x35, 0x3b, 0x2c, 0x51, 0x53, 0x73, 0x0f, 0x90, 0x2f, 0xa2, + 0x8b, 0x02, 0x2d, 0xde, 0xb3, 0x0c, 0x83, 0xaf, 0x8b, 0x3b, 0xdd, 0x2e, + 0x01, 0x13, 0x14, 0xce, 0xe5, 0x80, 0x49, 0x9a, 0x5b, 0x12, 0xc8, 0x07, + 0x62, 0xaf, 0x6b, 0x07, 0xc8, 0x06, 0x63, 0x2e, 0x16, 0x40, 0x70, 0x6b, +}; +static const unsigned char kat4089_nonce[] = {0}; +static const unsigned char kat4089_persstr[] = {0}; +static const unsigned char kat4089_entropyinpr1[] = { + 0xf2, 0x55, 0x1d, 0xce, 0x81, 0x7f, 0xc6, 0xc6, 0xdc, 0x7a, 0x5b, 0x79, + 0x16, 0x99, 0xf0, 0xfd, 0xf6, 0x85, 0x2c, 0x44, 0x19, 0x6a, 0x05, 0x6d, + 0xca, 0xb1, 0xdd, 0x47, 0xd8, 0x1c, 0x93, 0x35, 0x61, 0xae, 0xd9, 0x27, + 0xa8, 0xf9, 0x92, 0xf7, 0x1a, 0xab, 0x6a, 0xde, 0xbb, 0x04, 0x99, 0xd8, +}; +static const unsigned char kat4089_addinpr1[] = {0}; +static const unsigned char kat4089_entropyinpr2[] = { + 0xc6, 0xb8, 0xc8, 0x40, 0x0e, 0x23, 0xbe, 0x6e, 0x22, 0x8b, 0x8d, 0xf9, + 0x69, 0x69, 0xee, 0xd6, 0x05, 0x00, 0x39, 0x21, 0x37, 0xe3, 0x47, 0xca, + 0xbb, 0x23, 0x36, 0x83, 0x03, 0xfe, 0x8d, 0xc8, 0x08, 0x21, 0xd5, 0xa3, + 0xd2, 0xad, 0x07, 0x38, 0x55, 0xec, 0x35, 0x2a, 0x2c, 0x68, 0x6e, 0x53, +}; +static const unsigned char kat4089_addinpr2[] = {0}; +static const unsigned char kat4089_retbits[] = { + 0x98, 0xa1, 0xcd, 0x59, 0x92, 0x65, 0xce, 0x68, 0xd5, 0xf6, 0x0e, 0x61, + 0xa5, 0x1c, 0xf6, 0x1e, 0xae, 0x62, 0x04, 0x84, 0xdc, 0x30, 0x08, 0x14, + 0x73, 0xc5, 0x57, 0xb1, 0x70, 0xab, 0x76, 0xac, 0x9f, 0x2a, 0xa3, 0x3a, + 0xdc, 0x45, 0xc8, 0x90, 0xa9, 0x04, 0x65, 0x4e, 0x32, 0xbc, 0x81, 0xc6, + 0xc4, 0xf8, 0xa9, 0xed, 0xe8, 0xca, 0x88, 0xaa, 0xb4, 0xd9, 0xea, 0x5d, + 0x2f, 0x11, 0x26, 0x47, +}; +static const struct drbg_kat_pr_true kat4089_t = { + 8, kat4089_entropyin, kat4089_nonce, kat4089_persstr, + kat4089_entropyinpr1, kat4089_addinpr1, kat4089_entropyinpr2, + kat4089_addinpr2, kat4089_retbits +}; +static const struct drbg_kat kat4089 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4089_t +}; + +static const unsigned char kat4090_entropyin[] = { + 0xac, 0xd3, 0x0e, 0xa7, 0x34, 0x71, 0xc3, 0x2a, 0xe8, 0x39, 0x7a, 0x2b, + 0x26, 0x68, 0x78, 0x69, 0x73, 0x54, 0x54, 0x30, 0x82, 0x43, 0x8f, 0x6d, + 0x1f, 0x2a, 0x53, 0x29, 0x0b, 0xbf, 0xa8, 0x93, 0x4a, 0x1e, 0x4f, 0x00, + 0x7b, 0x37, 0x5b, 0x6e, 0xab, 0x2d, 0xb5, 0x8b, 0x5b, 0x9a, 0x0a, 0x9d, +}; +static const unsigned char kat4090_nonce[] = {0}; +static const unsigned char kat4090_persstr[] = {0}; +static const unsigned char kat4090_entropyinpr1[] = { + 0xbd, 0x8d, 0x77, 0x47, 0xe2, 0xa7, 0x8a, 0x86, 0xfe, 0x01, 0x63, 0x70, + 0xbd, 0x59, 0x06, 0xab, 0xc4, 0x32, 0x05, 0x09, 0x2a, 0x6a, 0x0e, 0x20, + 0x1e, 0xe2, 0x9b, 0x73, 0x91, 0x30, 0x43, 0xd8, 0x61, 0x61, 0x1d, 0xbb, + 0xed, 0xa2, 0xac, 0x44, 0xab, 0xb7, 0xe2, 0xf3, 0xf2, 0x88, 0x89, 0xa0, +}; +static const unsigned char kat4090_addinpr1[] = {0}; +static const unsigned char kat4090_entropyinpr2[] = { + 0xb6, 0xaf, 0xd9, 0x28, 0x91, 0x4a, 0xc9, 0x54, 0x20, 0xf4, 0xa9, 0x17, + 0x6c, 0x3d, 0x10, 0x82, 0xcf, 0x2a, 0xda, 0xcc, 0xbf, 0xde, 0x0c, 0xb2, + 0xb0, 0xd2, 0x7c, 0x72, 0x77, 0xa8, 0x0b, 0x66, 0x88, 0x8c, 0xe8, 0xae, + 0xf8, 0xd6, 0xe7, 0x98, 0x51, 0xe4, 0x1c, 0x6c, 0xb8, 0x35, 0xc4, 0x72, +}; +static const unsigned char kat4090_addinpr2[] = {0}; +static const unsigned char kat4090_retbits[] = { + 0x1f, 0xd5, 0x8c, 0xae, 0xba, 0xf6, 0xcc, 0x4e, 0x6c, 0x48, 0x10, 0xdd, + 0xef, 0x84, 0x4e, 0xaa, 0x4f, 0xb1, 0xd9, 0x06, 0x9c, 0x94, 0x59, 0x3a, + 0xc5, 0xfa, 0xfb, 0xa3, 0xe5, 0xdd, 0xc0, 0x47, 0x9d, 0xa0, 0x57, 0xd9, + 0xca, 0x29, 0x1c, 0x6d, 0x07, 0x06, 0xca, 0x0b, 0x92, 0xfc, 0x16, 0x3f, + 0x1d, 0xee, 0xcb, 0x07, 0x4b, 0xa2, 0x8e, 0xfd, 0x95, 0xf9, 0x55, 0xfa, + 0xc2, 0xf3, 0xa7, 0x55, +}; +static const struct drbg_kat_pr_true kat4090_t = { + 9, kat4090_entropyin, kat4090_nonce, kat4090_persstr, + kat4090_entropyinpr1, kat4090_addinpr1, kat4090_entropyinpr2, + kat4090_addinpr2, kat4090_retbits +}; +static const struct drbg_kat kat4090 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4090_t +}; + +static const unsigned char kat4091_entropyin[] = { + 0x25, 0x34, 0x7f, 0xec, 0x63, 0x56, 0xc4, 0x39, 0xe5, 0x26, 0x90, 0x81, + 0x47, 0x84, 0x03, 0x29, 0x75, 0xbf, 0x3f, 0x85, 0x61, 0x80, 0xf4, 0xa3, + 0x0c, 0x7f, 0x44, 0x15, 0x78, 0x9a, 0xc5, 0x29, 0x74, 0x05, 0xe9, 0x19, + 0x0f, 0x88, 0x89, 0x5c, 0xf9, 0x25, 0xff, 0x76, 0x67, 0x14, 0xfd, 0xc6, +}; +static const unsigned char kat4091_nonce[] = {0}; +static const unsigned char kat4091_persstr[] = {0}; +static const unsigned char kat4091_entropyinpr1[] = { + 0x35, 0x65, 0xd7, 0x0a, 0x06, 0x42, 0xc5, 0x9f, 0x1c, 0x75, 0xf1, 0x30, + 0x44, 0x44, 0x25, 0x91, 0x9f, 0x3c, 0x24, 0xd5, 0x2c, 0x5a, 0x76, 0x27, + 0x5c, 0xbd, 0xa6, 0x36, 0x2d, 0xa3, 0xec, 0x31, 0xa2, 0x64, 0xf0, 0x18, + 0x1c, 0x07, 0xe7, 0xb1, 0xbd, 0x8a, 0xa0, 0x7c, 0xba, 0x5a, 0x87, 0x90, +}; +static const unsigned char kat4091_addinpr1[] = {0}; +static const unsigned char kat4091_entropyinpr2[] = { + 0x3f, 0x6b, 0xc6, 0xdd, 0x90, 0x2b, 0x2c, 0x82, 0x8d, 0xb3, 0x54, 0x20, + 0x11, 0x74, 0x21, 0x09, 0xdc, 0xd4, 0xf7, 0x3e, 0xea, 0x25, 0x4c, 0x03, + 0x1f, 0x6f, 0xa5, 0x3a, 0x36, 0x5a, 0x90, 0xa0, 0x85, 0x7b, 0xce, 0x59, + 0xb5, 0x4d, 0x3a, 0x17, 0x9b, 0xfe, 0x34, 0x5b, 0x14, 0x50, 0x7d, 0x82, +}; +static const unsigned char kat4091_addinpr2[] = {0}; +static const unsigned char kat4091_retbits[] = { + 0x5e, 0x0c, 0x7f, 0xc1, 0x4d, 0x99, 0x7e, 0xc5, 0xb5, 0x7c, 0x41, 0x29, + 0x9b, 0x11, 0xc1, 0xff, 0xfd, 0x56, 0xf4, 0x6e, 0x03, 0x45, 0x27, 0xa0, + 0xcf, 0x25, 0x5a, 0x17, 0xbf, 0x0d, 0x21, 0x09, 0x7f, 0xba, 0x91, 0xe2, + 0xfc, 0x29, 0xd2, 0x05, 0x7b, 0x7c, 0x33, 0xb1, 0xca, 0x92, 0x02, 0xf4, + 0x3c, 0xe8, 0xad, 0x49, 0x09, 0x81, 0xde, 0x38, 0x86, 0x20, 0x6c, 0xfa, + 0x0d, 0xf2, 0x77, 0x0d, +}; +static const struct drbg_kat_pr_true kat4091_t = { + 10, kat4091_entropyin, kat4091_nonce, kat4091_persstr, + kat4091_entropyinpr1, kat4091_addinpr1, kat4091_entropyinpr2, + kat4091_addinpr2, kat4091_retbits +}; +static const struct drbg_kat kat4091 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4091_t +}; + +static const unsigned char kat4092_entropyin[] = { + 0x7d, 0x40, 0xc2, 0x53, 0x9f, 0x49, 0x69, 0x87, 0xf7, 0x3f, 0x93, 0x65, + 0x2a, 0x42, 0x66, 0x12, 0x67, 0xab, 0x27, 0x51, 0xa3, 0xe1, 0x16, 0x5c, + 0xa6, 0xb5, 0x46, 0x0a, 0x2f, 0xb4, 0x76, 0x25, 0x26, 0x3d, 0x17, 0xf3, + 0xa4, 0x22, 0x7d, 0x86, 0x42, 0xd4, 0x47, 0x5f, 0xd6, 0x9b, 0xe1, 0xc3, +}; +static const unsigned char kat4092_nonce[] = {0}; +static const unsigned char kat4092_persstr[] = {0}; +static const unsigned char kat4092_entropyinpr1[] = { + 0x68, 0xe4, 0x81, 0x0e, 0x03, 0x02, 0x42, 0x8d, 0x8a, 0xfb, 0x9d, 0xa8, + 0x6a, 0x86, 0x67, 0x06, 0x9d, 0x30, 0x2b, 0x5b, 0xed, 0xd2, 0xb4, 0xb4, + 0x05, 0x2e, 0x62, 0xa7, 0xf2, 0x4f, 0x39, 0xa8, 0x80, 0xc5, 0x66, 0x0c, + 0xeb, 0x8b, 0xa0, 0x2a, 0x8e, 0x32, 0xb5, 0x2f, 0x53, 0xf8, 0xd7, 0x75, +}; +static const unsigned char kat4092_addinpr1[] = {0}; +static const unsigned char kat4092_entropyinpr2[] = { + 0x9c, 0x80, 0x5e, 0x77, 0x90, 0x4d, 0x6b, 0xcf, 0x24, 0xe4, 0xa8, 0xba, + 0xe2, 0x25, 0x69, 0x0d, 0x20, 0xdd, 0xd0, 0xda, 0x8d, 0xf1, 0xf0, 0xbe, + 0xd1, 0x2a, 0xe1, 0xb2, 0x93, 0x0c, 0x9c, 0xe5, 0x7b, 0x03, 0x01, 0x6b, + 0x1a, 0x61, 0xf5, 0xd6, 0x51, 0x3f, 0x84, 0xf6, 0x51, 0x75, 0x3f, 0x51, +}; +static const unsigned char kat4092_addinpr2[] = {0}; +static const unsigned char kat4092_retbits[] = { + 0x07, 0xa1, 0x37, 0xc2, 0x44, 0x39, 0x58, 0xcd, 0xea, 0x24, 0x10, 0x58, + 0x43, 0xb6, 0xa8, 0xe4, 0x2f, 0x89, 0xa8, 0xb3, 0xf2, 0xe1, 0x26, 0x37, + 0xfe, 0xeb, 0x0f, 0x7a, 0x91, 0x28, 0xf1, 0x3d, 0x0e, 0x64, 0xf0, 0xd4, + 0xaf, 0x75, 0x07, 0x52, 0x4d, 0x99, 0x3c, 0x23, 0xce, 0x32, 0x2f, 0xe9, + 0x27, 0x62, 0x7b, 0x05, 0x2b, 0xe7, 0x4e, 0x7b, 0xab, 0xde, 0x18, 0xd4, + 0x47, 0x4d, 0xe6, 0xaa, +}; +static const struct drbg_kat_pr_true kat4092_t = { + 11, kat4092_entropyin, kat4092_nonce, kat4092_persstr, + kat4092_entropyinpr1, kat4092_addinpr1, kat4092_entropyinpr2, + kat4092_addinpr2, kat4092_retbits +}; +static const struct drbg_kat kat4092 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4092_t +}; + +static const unsigned char kat4093_entropyin[] = { + 0x34, 0x4a, 0xa8, 0xce, 0xb8, 0x5d, 0x9c, 0xc4, 0xb7, 0xa4, 0x61, 0x10, + 0x39, 0xee, 0x42, 0xe4, 0x21, 0x56, 0x00, 0x04, 0xa2, 0xec, 0xd5, 0x00, + 0x26, 0x17, 0x80, 0xed, 0x08, 0xfe, 0x6f, 0x97, 0x6f, 0x68, 0xe3, 0x70, + 0x37, 0x7a, 0x72, 0x30, 0x1c, 0x38, 0x73, 0x4e, 0x8b, 0x8e, 0xf6, 0xef, +}; +static const unsigned char kat4093_nonce[] = {0}; +static const unsigned char kat4093_persstr[] = {0}; +static const unsigned char kat4093_entropyinpr1[] = { + 0x77, 0x38, 0x1a, 0xf3, 0xd8, 0x8e, 0xe0, 0xe9, 0xc4, 0xb0, 0x24, 0x73, + 0xf9, 0x8b, 0x4f, 0xdb, 0x32, 0x22, 0xd7, 0x56, 0x56, 0xde, 0x78, 0x25, + 0xb6, 0x89, 0xa7, 0x56, 0x59, 0x8a, 0xab, 0xce, 0x26, 0xf6, 0x89, 0x1a, + 0x9e, 0xc2, 0x61, 0x8d, 0xca, 0xb6, 0x4e, 0xf6, 0x91, 0x28, 0x9a, 0xce, +}; +static const unsigned char kat4093_addinpr1[] = {0}; +static const unsigned char kat4093_entropyinpr2[] = { + 0xdc, 0x3d, 0xe1, 0x02, 0x55, 0x19, 0xf4, 0x10, 0x0f, 0x66, 0x60, 0x30, + 0xd8, 0x82, 0x52, 0xd3, 0xb9, 0xe8, 0x4d, 0x75, 0x94, 0xf6, 0xf4, 0x83, + 0x1f, 0xfd, 0x51, 0xf2, 0xf5, 0x12, 0x91, 0x85, 0x52, 0x2c, 0x9b, 0x12, + 0x57, 0x6b, 0x61, 0xa7, 0xab, 0xd7, 0xd5, 0x15, 0x0f, 0x70, 0x3a, 0xf9, +}; +static const unsigned char kat4093_addinpr2[] = {0}; +static const unsigned char kat4093_retbits[] = { + 0xbd, 0xc2, 0x17, 0x3e, 0x5f, 0x51, 0x4a, 0xba, 0xf5, 0xe4, 0xe1, 0xe7, + 0x20, 0x5c, 0x0a, 0x9e, 0xf3, 0x2a, 0x5b, 0x0f, 0xaf, 0x2b, 0x00, 0x3a, + 0xf2, 0x07, 0x7e, 0x40, 0x10, 0x79, 0x47, 0xbb, 0x3e, 0x57, 0x08, 0x73, + 0xdd, 0x81, 0xb9, 0x4c, 0x3a, 0x9c, 0xa0, 0xb1, 0x5d, 0xcf, 0x44, 0x84, + 0xbd, 0x91, 0xef, 0xba, 0xcb, 0xec, 0xe1, 0x53, 0xb5, 0x7a, 0x14, 0xf0, + 0xf9, 0xd3, 0x43, 0xe7, +}; +static const struct drbg_kat_pr_true kat4093_t = { + 12, kat4093_entropyin, kat4093_nonce, kat4093_persstr, + kat4093_entropyinpr1, kat4093_addinpr1, kat4093_entropyinpr2, + kat4093_addinpr2, kat4093_retbits +}; +static const struct drbg_kat kat4093 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4093_t +}; + +static const unsigned char kat4094_entropyin[] = { + 0x59, 0xb0, 0x13, 0xb3, 0x7a, 0xbc, 0x88, 0xcb, 0x2b, 0x7d, 0x2d, 0xb3, + 0xd7, 0xec, 0x00, 0x73, 0x52, 0x2f, 0x15, 0x91, 0x4a, 0xf7, 0xe8, 0x1b, + 0xb3, 0x8c, 0xe5, 0x7d, 0x39, 0xb7, 0x73, 0x91, 0xbd, 0xe4, 0xb4, 0xd3, + 0x58, 0xa2, 0xeb, 0x16, 0xf1, 0xc0, 0x69, 0x64, 0x7e, 0xb3, 0x0d, 0xf5, +}; +static const unsigned char kat4094_nonce[] = {0}; +static const unsigned char kat4094_persstr[] = {0}; +static const unsigned char kat4094_entropyinpr1[] = { + 0x74, 0x3e, 0xfe, 0x2c, 0x95, 0x33, 0x14, 0xe5, 0xac, 0x2a, 0x03, 0x84, + 0x38, 0x88, 0xc2, 0x37, 0x2f, 0xb3, 0xec, 0xd9, 0x5b, 0xff, 0x07, 0x8d, + 0x69, 0x3e, 0xaf, 0xc7, 0x82, 0x32, 0x0a, 0x14, 0x0e, 0xa8, 0x3c, 0x69, + 0x0e, 0x2e, 0xb0, 0x8b, 0x04, 0x8b, 0x76, 0x7d, 0x40, 0x96, 0x81, 0xca, +}; +static const unsigned char kat4094_addinpr1[] = {0}; +static const unsigned char kat4094_entropyinpr2[] = { + 0x12, 0xba, 0x76, 0x30, 0x9a, 0xd3, 0x49, 0xaa, 0xb1, 0xa4, 0x03, 0x78, + 0x54, 0x3d, 0xdb, 0x52, 0xfa, 0x97, 0x20, 0x0a, 0x29, 0x1b, 0x57, 0xc4, + 0x8f, 0xd4, 0x4b, 0x39, 0x6b, 0xa9, 0x25, 0xfa, 0x65, 0x2e, 0x48, 0x80, + 0x0e, 0x13, 0xf6, 0x2f, 0x6b, 0x38, 0x68, 0xc9, 0xd3, 0xf9, 0x52, 0x3f, +}; +static const unsigned char kat4094_addinpr2[] = {0}; +static const unsigned char kat4094_retbits[] = { + 0x0d, 0x03, 0xc6, 0x04, 0x4f, 0xcf, 0x9d, 0xc0, 0xa0, 0xb9, 0xaf, 0x8d, + 0x94, 0x37, 0x6c, 0x2c, 0xf0, 0x9b, 0x00, 0x67, 0x1c, 0x26, 0xfc, 0x72, + 0x0c, 0x69, 0x26, 0x9e, 0x74, 0xf5, 0xea, 0xb4, 0xea, 0xb6, 0xd5, 0x7e, + 0xb3, 0xcd, 0x50, 0xee, 0x96, 0x03, 0xfa, 0xea, 0xfd, 0x75, 0x22, 0xdf, + 0x43, 0xb7, 0xca, 0x9b, 0x18, 0x21, 0xb5, 0x17, 0xb3, 0xb5, 0x5c, 0x72, + 0xea, 0xc6, 0x86, 0xe3, +}; +static const struct drbg_kat_pr_true kat4094_t = { + 13, kat4094_entropyin, kat4094_nonce, kat4094_persstr, + kat4094_entropyinpr1, kat4094_addinpr1, kat4094_entropyinpr2, + kat4094_addinpr2, kat4094_retbits +}; +static const struct drbg_kat kat4094 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4094_t +}; + +static const unsigned char kat4095_entropyin[] = { + 0xfe, 0x00, 0xa4, 0xb1, 0x85, 0x45, 0x64, 0xde, 0x95, 0x11, 0xed, 0xca, + 0xf8, 0xfb, 0xb6, 0x9b, 0xd2, 0x5b, 0xcb, 0xc9, 0xe7, 0x8d, 0x32, 0x17, + 0xf7, 0x6c, 0xc5, 0xa3, 0x36, 0xfe, 0xb7, 0xc3, 0x9b, 0x22, 0x96, 0x56, + 0x1f, 0x69, 0xed, 0x45, 0xbd, 0xb2, 0x2a, 0x26, 0x5d, 0xa8, 0xd1, 0x04, +}; +static const unsigned char kat4095_nonce[] = {0}; +static const unsigned char kat4095_persstr[] = {0}; +static const unsigned char kat4095_entropyinpr1[] = { + 0x6f, 0x16, 0xff, 0x94, 0xcb, 0x8a, 0xde, 0x7a, 0x92, 0x8b, 0x9a, 0x59, + 0xaf, 0x32, 0xea, 0x79, 0x94, 0x4e, 0x68, 0x90, 0xa0, 0x03, 0xb0, 0xfe, + 0x18, 0xf5, 0x32, 0x36, 0xd6, 0x6a, 0x41, 0x16, 0xfc, 0x8c, 0x2f, 0xb4, + 0xc8, 0x4d, 0x25, 0xda, 0x21, 0x97, 0x06, 0x1c, 0x29, 0x70, 0x3d, 0x3e, +}; +static const unsigned char kat4095_addinpr1[] = {0}; +static const unsigned char kat4095_entropyinpr2[] = { + 0xc7, 0x3f, 0xe2, 0x3a, 0x8b, 0xa2, 0xbb, 0x78, 0x01, 0x78, 0x34, 0x25, + 0x98, 0x25, 0x2e, 0x9c, 0xe3, 0xde, 0x90, 0x7c, 0x4f, 0xc1, 0xcd, 0x63, + 0x2b, 0x35, 0x3c, 0xf9, 0x59, 0xff, 0x61, 0x0f, 0x23, 0xa8, 0xa2, 0xb0, + 0x42, 0x4a, 0xd1, 0x37, 0xae, 0xc7, 0xda, 0x42, 0xf8, 0xc9, 0xf2, 0xda, +}; +static const unsigned char kat4095_addinpr2[] = {0}; +static const unsigned char kat4095_retbits[] = { + 0x8f, 0x72, 0x61, 0xed, 0xf6, 0xd1, 0x08, 0x24, 0x21, 0x8a, 0xd0, 0xb1, + 0x08, 0x81, 0xe3, 0xc1, 0x25, 0x16, 0x37, 0xbb, 0xb7, 0x1d, 0x0f, 0x35, + 0x28, 0x0c, 0xae, 0xc7, 0xde, 0x25, 0x4e, 0x07, 0x14, 0x7f, 0x33, 0x28, + 0x8b, 0x5c, 0x60, 0x79, 0x40, 0x60, 0xb5, 0x9e, 0x6f, 0x5c, 0xc2, 0x93, + 0x8e, 0x4c, 0x29, 0xde, 0x1e, 0x4d, 0x5d, 0x4d, 0x3b, 0xde, 0x3f, 0x27, + 0xc3, 0xfa, 0xb9, 0x2d, +}; +static const struct drbg_kat_pr_true kat4095_t = { + 14, kat4095_entropyin, kat4095_nonce, kat4095_persstr, + kat4095_entropyinpr1, kat4095_addinpr1, kat4095_entropyinpr2, + kat4095_addinpr2, kat4095_retbits +}; +static const struct drbg_kat kat4095 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4095_t +}; + +static const unsigned char kat4096_entropyin[] = { + 0xc5, 0x19, 0xcd, 0x4f, 0x83, 0x9c, 0x9a, 0x5e, 0x93, 0x64, 0x85, 0x24, + 0x2c, 0x4d, 0xa8, 0x47, 0xf4, 0x7a, 0xf5, 0xb5, 0x44, 0xac, 0xd1, 0x2b, + 0x49, 0x03, 0x64, 0x53, 0x65, 0x5d, 0xe3, 0xed, 0x57, 0xb2, 0xae, 0x01, + 0x58, 0x22, 0xa6, 0x0e, 0xdc, 0xfb, 0x85, 0x9b, 0x00, 0xbb, 0xef, 0x2e, +}; +static const unsigned char kat4096_nonce[] = {0}; +static const unsigned char kat4096_persstr[] = {0}; +static const unsigned char kat4096_entropyinpr1[] = { + 0x04, 0x15, 0xf8, 0xfd, 0x00, 0xd4, 0xd2, 0x45, 0x47, 0x06, 0x14, 0x20, + 0x83, 0x34, 0x63, 0x04, 0xd8, 0x05, 0x1b, 0x82, 0x59, 0xd0, 0x8d, 0xe4, + 0x93, 0xd9, 0x91, 0xd3, 0x66, 0xa4, 0x2f, 0xd4, 0x52, 0xd6, 0x53, 0x33, + 0x46, 0x89, 0x6d, 0x32, 0x3b, 0xa1, 0x06, 0x6a, 0x48, 0x5e, 0xf1, 0x05, +}; +static const unsigned char kat4096_addinpr1[] = { + 0x7e, 0x95, 0xd8, 0x09, 0xc1, 0x1a, 0x7a, 0x97, 0x52, 0x30, 0xda, 0x95, + 0x99, 0xd0, 0x07, 0x31, 0x36, 0xbd, 0x05, 0x7a, 0x1a, 0x69, 0x90, 0xf9, + 0x80, 0x89, 0x4c, 0x01, 0x91, 0x2b, 0xc3, 0x9b, 0x8d, 0xac, 0x94, 0xc0, + 0x83, 0x93, 0x3d, 0x39, 0x27, 0x8f, 0x65, 0x54, 0x2d, 0xd8, 0xdd, 0x4e, +}; +static const unsigned char kat4096_entropyinpr2[] = { + 0x9a, 0x14, 0x65, 0x01, 0xa4, 0xdc, 0x93, 0x49, 0xb0, 0x39, 0x28, 0x97, + 0x26, 0x3c, 0xfa, 0x41, 0x4b, 0x6f, 0xc7, 0xe5, 0x9d, 0x70, 0x93, 0xab, + 0x66, 0xbd, 0x26, 0x5b, 0x7e, 0x41, 0xb5, 0xc2, 0x76, 0x6f, 0x56, 0xd9, + 0x7b, 0x7d, 0x22, 0xd0, 0x22, 0x20, 0xcb, 0xc3, 0x89, 0xb3, 0x4a, 0x6f, +}; +static const unsigned char kat4096_addinpr2[] = { + 0x18, 0x83, 0x57, 0xa4, 0xc4, 0xdb, 0xdd, 0x05, 0xcb, 0x6b, 0xc5, 0xd9, + 0x16, 0x0d, 0x5d, 0x95, 0x1c, 0xef, 0x6e, 0xd9, 0xab, 0x6c, 0x62, 0x2b, + 0x5a, 0x9c, 0xda, 0x2c, 0x76, 0x1d, 0x92, 0x78, 0x23, 0x5f, 0xbe, 0x9d, + 0x63, 0x12, 0xb9, 0xd8, 0x92, 0xa5, 0x9a, 0xbb, 0x7f, 0x3f, 0x48, 0x65, +}; +static const unsigned char kat4096_retbits[] = { + 0xcb, 0x79, 0xc7, 0x9d, 0xd1, 0x9a, 0x72, 0xb3, 0x03, 0xa2, 0x56, 0x82, + 0x66, 0xab, 0xf2, 0x3a, 0xd6, 0xe3, 0x41, 0xcf, 0xcf, 0xee, 0x8a, 0x76, + 0x8a, 0xf6, 0x45, 0x84, 0xe4, 0xe4, 0x71, 0xde, 0xdc, 0x0d, 0x83, 0x2a, + 0x04, 0xe8, 0xdc, 0xf4, 0xb8, 0x96, 0xad, 0x9b, 0xf4, 0xa4, 0xa2, 0x49, + 0x5c, 0xc6, 0xf3, 0xef, 0xd2, 0x2a, 0x68, 0x93, 0x84, 0x24, 0x71, 0x7d, + 0xd7, 0x5e, 0x83, 0xb0, +}; +static const struct drbg_kat_pr_true kat4096_t = { + 0, kat4096_entropyin, kat4096_nonce, kat4096_persstr, + kat4096_entropyinpr1, kat4096_addinpr1, kat4096_entropyinpr2, + kat4096_addinpr2, kat4096_retbits +}; +static const struct drbg_kat kat4096 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4096_t +}; + +static const unsigned char kat4097_entropyin[] = { + 0xad, 0x45, 0xe5, 0x14, 0x52, 0x98, 0xe5, 0xc4, 0x50, 0xe2, 0x42, 0x11, + 0x53, 0x9e, 0xf8, 0x18, 0xbe, 0xc6, 0x65, 0xb7, 0x8e, 0x77, 0xcc, 0x54, + 0xeb, 0x4e, 0x72, 0xb1, 0x5a, 0xa6, 0xae, 0xb9, 0x82, 0x2a, 0x8d, 0xfb, + 0xe2, 0x7d, 0xef, 0xae, 0xb7, 0xd0, 0x76, 0x2f, 0x8d, 0x01, 0xed, 0xd2, +}; +static const unsigned char kat4097_nonce[] = {0}; +static const unsigned char kat4097_persstr[] = {0}; +static const unsigned char kat4097_entropyinpr1[] = { + 0xfd, 0x98, 0x55, 0xb6, 0xae, 0x6a, 0x26, 0x10, 0x03, 0xfc, 0x0f, 0x25, + 0xfd, 0xd1, 0xa4, 0x8a, 0x9c, 0x9b, 0xfe, 0xb4, 0x4c, 0x84, 0x3b, 0xb1, + 0x6c, 0x3b, 0x9c, 0x89, 0x19, 0x83, 0x1f, 0x0a, 0x7b, 0xa2, 0xc9, 0x04, + 0xa5, 0x4f, 0x07, 0xa1, 0x95, 0xdd, 0x27, 0x2b, 0x5f, 0x76, 0xf0, 0xc6, +}; +static const unsigned char kat4097_addinpr1[] = { + 0x73, 0x7b, 0x0e, 0x8d, 0x18, 0x19, 0x31, 0x64, 0xb2, 0x84, 0xcc, 0x2f, + 0xd1, 0xd2, 0xb9, 0x41, 0x88, 0xb4, 0x9e, 0x79, 0x97, 0xc0, 0x5f, 0xd8, + 0x03, 0xb1, 0xc8, 0x76, 0x61, 0xce, 0x4c, 0x0c, 0xdd, 0x24, 0xb5, 0x7d, + 0x0b, 0xac, 0x8a, 0x6d, 0xec, 0x30, 0xba, 0x80, 0x10, 0xcd, 0xd7, 0x69, +}; +static const unsigned char kat4097_entropyinpr2[] = { + 0x61, 0x05, 0x68, 0x5b, 0x7f, 0x45, 0x5e, 0x04, 0x14, 0x56, 0x0a, 0xcf, + 0xba, 0x3e, 0x1e, 0x01, 0xad, 0x98, 0x23, 0x33, 0x19, 0x2a, 0xa6, 0x55, + 0x41, 0x68, 0x35, 0x76, 0x36, 0x8b, 0xaf, 0xf6, 0x7e, 0xe6, 0x89, 0x22, + 0x5e, 0xbb, 0xea, 0xd0, 0xf8, 0x32, 0xe9, 0xc8, 0x2d, 0xc1, 0x4c, 0x2d, +}; +static const unsigned char kat4097_addinpr2[] = { + 0xef, 0xf2, 0x93, 0x2d, 0x8e, 0xc3, 0x7d, 0x6a, 0x2e, 0xec, 0x22, 0xf7, + 0x61, 0x64, 0x4b, 0xd8, 0xb9, 0xd8, 0x1c, 0x05, 0x9e, 0xaf, 0xdc, 0x0a, + 0xc1, 0x10, 0x00, 0x37, 0x59, 0x1c, 0x6b, 0x2b, 0x11, 0x5c, 0x60, 0x6a, + 0xbf, 0x88, 0x01, 0x77, 0x6c, 0x7c, 0x80, 0xef, 0xd9, 0xbc, 0x1c, 0x9e, +}; +static const unsigned char kat4097_retbits[] = { + 0xc9, 0x13, 0x4f, 0xe3, 0x98, 0xa5, 0x08, 0x60, 0xb2, 0x78, 0x9f, 0x1e, + 0xf4, 0x07, 0x3b, 0x1d, 0xab, 0xd7, 0x40, 0x23, 0x48, 0x9a, 0xa8, 0x0e, + 0x98, 0x17, 0xd9, 0x6c, 0x75, 0xee, 0xe3, 0x30, 0x3f, 0xeb, 0xab, 0x1d, + 0xf3, 0xb5, 0xca, 0xa3, 0x9f, 0xb5, 0xfd, 0xcb, 0x57, 0xee, 0x11, 0xac, + 0x03, 0xb5, 0xc2, 0xf2, 0x0a, 0x5d, 0xc7, 0x1b, 0x75, 0xcd, 0x85, 0x0f, + 0x07, 0x92, 0x58, 0x60, +}; +static const struct drbg_kat_pr_true kat4097_t = { + 1, kat4097_entropyin, kat4097_nonce, kat4097_persstr, + kat4097_entropyinpr1, kat4097_addinpr1, kat4097_entropyinpr2, + kat4097_addinpr2, kat4097_retbits +}; +static const struct drbg_kat kat4097 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4097_t +}; + +static const unsigned char kat4098_entropyin[] = { + 0xb8, 0x68, 0xea, 0xbd, 0x46, 0x8d, 0xb8, 0x6a, 0xcf, 0x05, 0xe4, 0x75, + 0x67, 0x6c, 0x36, 0x89, 0x0e, 0x67, 0xfd, 0x45, 0xfb, 0x6d, 0x3e, 0xd9, + 0xe8, 0xf2, 0x2b, 0x7e, 0xd6, 0x1f, 0x85, 0xa5, 0x2d, 0xb7, 0x06, 0xd8, + 0x48, 0xcc, 0x46, 0x28, 0x03, 0xa1, 0xa4, 0xa3, 0x15, 0x1c, 0x03, 0xe6, +}; +static const unsigned char kat4098_nonce[] = {0}; +static const unsigned char kat4098_persstr[] = {0}; +static const unsigned char kat4098_entropyinpr1[] = { + 0xf4, 0x1c, 0x70, 0xdf, 0x2d, 0xe4, 0x36, 0xa6, 0xb8, 0x80, 0x32, 0xd2, + 0xdd, 0xd9, 0x68, 0x64, 0xf9, 0x8d, 0xd1, 0x59, 0xcf, 0x2b, 0xb0, 0xea, + 0xc1, 0x14, 0x12, 0xad, 0x78, 0xb8, 0xd7, 0xe8, 0xb0, 0x66, 0xaf, 0x5b, + 0x05, 0x2b, 0x0d, 0xe9, 0xe7, 0xf0, 0xa1, 0xf9, 0x74, 0x5a, 0x61, 0x93, +}; +static const unsigned char kat4098_addinpr1[] = { + 0x8d, 0xda, 0x56, 0x63, 0x81, 0xf0, 0xe0, 0x05, 0x92, 0xf3, 0x9b, 0x2f, + 0xb5, 0x58, 0x90, 0x3d, 0xe2, 0x50, 0x7b, 0x28, 0xfe, 0x42, 0xcf, 0xc2, + 0x4c, 0x4e, 0xe5, 0x6a, 0x67, 0xd2, 0x7c, 0x1f, 0xeb, 0x54, 0xb5, 0x2e, + 0xa2, 0x4e, 0x6f, 0x65, 0x5d, 0x6b, 0x13, 0xc5, 0x5c, 0x0f, 0x00, 0xa9, +}; +static const unsigned char kat4098_entropyinpr2[] = { + 0x32, 0x84, 0x34, 0x3f, 0x4e, 0xd4, 0x0c, 0x8e, 0xe3, 0xfa, 0x73, 0x99, + 0x1c, 0xf8, 0xd4, 0xcb, 0x40, 0x53, 0x5e, 0xff, 0x59, 0xad, 0x08, 0xaf, + 0x7a, 0xf7, 0xdc, 0xbe, 0x70, 0x00, 0x39, 0x36, 0x15, 0xed, 0x83, 0x7a, + 0xef, 0x7c, 0x96, 0x77, 0x26, 0xc6, 0xc9, 0x29, 0x37, 0x06, 0xec, 0x96, +}; +static const unsigned char kat4098_addinpr2[] = { + 0x9f, 0x8f, 0xd2, 0x69, 0x15, 0x4a, 0x00, 0xd8, 0x51, 0xcf, 0x21, 0x59, + 0x8a, 0x99, 0x63, 0x39, 0x94, 0x78, 0xd5, 0xed, 0xb9, 0xde, 0x33, 0xfb, + 0x54, 0xfd, 0x03, 0xed, 0xf3, 0xcf, 0xcc, 0xc1, 0x8f, 0xf0, 0xb6, 0x5c, + 0x41, 0xa5, 0x54, 0x86, 0x74, 0xed, 0xb6, 0x75, 0xdc, 0x0a, 0x67, 0x95, +}; +static const unsigned char kat4098_retbits[] = { + 0xbb, 0xf1, 0x34, 0xfa, 0x70, 0xb8, 0x2f, 0xbc, 0x74, 0xb5, 0x83, 0x0c, + 0x5a, 0x9f, 0x1f, 0xff, 0xa0, 0x7d, 0x1d, 0xf7, 0x17, 0xdb, 0x32, 0x34, + 0xab, 0xbd, 0xa3, 0x89, 0x7a, 0x0d, 0xea, 0x34, 0x49, 0xa3, 0xb5, 0xe6, + 0xff, 0x6d, 0x1b, 0xbf, 0x5a, 0x62, 0xbf, 0x50, 0xb5, 0xed, 0x1d, 0x44, + 0x3c, 0x20, 0x41, 0x71, 0x65, 0x6d, 0xa0, 0xd2, 0xa0, 0x21, 0xaf, 0xc3, + 0x2e, 0x3d, 0x36, 0xe8, +}; +static const struct drbg_kat_pr_true kat4098_t = { + 2, kat4098_entropyin, kat4098_nonce, kat4098_persstr, + kat4098_entropyinpr1, kat4098_addinpr1, kat4098_entropyinpr2, + kat4098_addinpr2, kat4098_retbits +}; +static const struct drbg_kat kat4098 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4098_t +}; + +static const unsigned char kat4099_entropyin[] = { + 0x68, 0x52, 0x98, 0xd3, 0x28, 0x18, 0xb0, 0x79, 0x0d, 0xb7, 0x10, 0x1c, + 0x9b, 0x71, 0x28, 0x40, 0xa2, 0x2b, 0x78, 0xa6, 0x40, 0xe1, 0x8b, 0x5b, + 0xb1, 0x61, 0xb6, 0xed, 0x76, 0xa0, 0x2f, 0xf5, 0x8d, 0x8c, 0xf2, 0x1e, + 0xc8, 0xbd, 0x53, 0x30, 0x64, 0x9d, 0xef, 0x28, 0x28, 0x75, 0x23, 0xdd, +}; +static const unsigned char kat4099_nonce[] = {0}; +static const unsigned char kat4099_persstr[] = {0}; +static const unsigned char kat4099_entropyinpr1[] = { + 0xe4, 0x60, 0xe8, 0x9f, 0x3e, 0x24, 0x81, 0x6c, 0xd0, 0x34, 0x44, 0x58, + 0xf2, 0x49, 0xff, 0xcc, 0xb2, 0xac, 0x0e, 0x83, 0x04, 0x46, 0x14, 0xbe, + 0x4e, 0x62, 0x14, 0xbc, 0x67, 0x54, 0x65, 0x2c, 0x7b, 0x91, 0xd9, 0xdb, + 0x26, 0xac, 0x82, 0xfe, 0x51, 0x5f, 0x0e, 0x50, 0x76, 0x9d, 0x75, 0x65, +}; +static const unsigned char kat4099_addinpr1[] = { + 0x7f, 0x01, 0xfd, 0x9f, 0x09, 0x5e, 0xb0, 0x91, 0xa7, 0x00, 0xc2, 0xf9, + 0xd4, 0x78, 0x52, 0x97, 0xa7, 0x34, 0x04, 0x78, 0x53, 0x79, 0xf5, 0xb5, + 0x90, 0xee, 0x3a, 0x5e, 0x24, 0x21, 0xe5, 0x3d, 0xbf, 0xfb, 0xaa, 0xd8, + 0x4c, 0x1d, 0xb5, 0xd1, 0x24, 0x16, 0xfd, 0x49, 0x80, 0x3f, 0xfe, 0x76, +}; +static const unsigned char kat4099_entropyinpr2[] = { + 0x5f, 0x49, 0xc5, 0x29, 0x19, 0x6c, 0x6e, 0x04, 0x93, 0x60, 0x20, 0xfe, + 0xeb, 0x33, 0x2a, 0xf6, 0x94, 0xd0, 0x8a, 0xdb, 0x2d, 0x3a, 0xb5, 0xa9, + 0x3d, 0x35, 0x4b, 0x4e, 0xeb, 0xb8, 0x88, 0x0e, 0xcb, 0xbd, 0xc6, 0x06, + 0x33, 0x35, 0x88, 0x37, 0x29, 0xe5, 0x0b, 0x37, 0xa0, 0x2f, 0x0b, 0xe8, +}; +static const unsigned char kat4099_addinpr2[] = { + 0x3d, 0x84, 0x0b, 0x52, 0x46, 0xf2, 0x29, 0x73, 0x97, 0x3c, 0xdf, 0x48, + 0xc9, 0x0a, 0xe0, 0xdc, 0xef, 0x5c, 0xbc, 0xef, 0xef, 0xe5, 0x08, 0xe4, + 0x6d, 0xee, 0x51, 0xdf, 0x53, 0x5d, 0xf4, 0x37, 0x8c, 0xe3, 0xe5, 0x07, + 0x82, 0x6d, 0x4f, 0x2a, 0x67, 0x28, 0xdb, 0xe7, 0xc7, 0x02, 0xcd, 0x01, +}; +static const unsigned char kat4099_retbits[] = { + 0x54, 0xd0, 0xfb, 0x8f, 0x3f, 0xd4, 0x65, 0x16, 0xdd, 0xfb, 0x26, 0x85, + 0x56, 0x0d, 0x4c, 0xfe, 0x97, 0x7b, 0xd0, 0x65, 0x9a, 0xf6, 0xbc, 0x00, + 0x22, 0x4f, 0xc9, 0x99, 0x44, 0x04, 0x18, 0x7a, 0x12, 0x35, 0xec, 0xa2, + 0xde, 0x5d, 0x4e, 0x7e, 0x8f, 0xe6, 0x93, 0xe1, 0xbe, 0xf4, 0xd5, 0x56, + 0x15, 0xf4, 0x45, 0x9e, 0xb0, 0x2a, 0x00, 0x9c, 0xea, 0x6e, 0x28, 0xd6, + 0x79, 0x0c, 0x0b, 0x83, +}; +static const struct drbg_kat_pr_true kat4099_t = { + 3, kat4099_entropyin, kat4099_nonce, kat4099_persstr, + kat4099_entropyinpr1, kat4099_addinpr1, kat4099_entropyinpr2, + kat4099_addinpr2, kat4099_retbits +}; +static const struct drbg_kat kat4099 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4099_t +}; + +static const unsigned char kat4100_entropyin[] = { + 0xeb, 0xce, 0x52, 0x24, 0x78, 0xe3, 0x70, 0x8b, 0x09, 0xd7, 0xa1, 0xaf, + 0x97, 0x03, 0x58, 0x90, 0xe7, 0x73, 0xfa, 0xd0, 0x35, 0x0d, 0x83, 0x6c, + 0xba, 0xcd, 0xa5, 0x77, 0x4a, 0x96, 0x19, 0x67, 0xc8, 0x8b, 0x1c, 0x24, + 0x90, 0x57, 0x86, 0xd3, 0x64, 0x05, 0x2a, 0xc7, 0x95, 0xdb, 0xa9, 0x97, +}; +static const unsigned char kat4100_nonce[] = {0}; +static const unsigned char kat4100_persstr[] = {0}; +static const unsigned char kat4100_entropyinpr1[] = { + 0x58, 0x40, 0xf1, 0xb8, 0x66, 0x09, 0x55, 0x2d, 0xfb, 0x50, 0x47, 0xb9, + 0xf0, 0x53, 0x14, 0x9b, 0xb3, 0xb3, 0x86, 0x77, 0xb3, 0xeb, 0xce, 0x1c, + 0x28, 0x0e, 0x2b, 0x99, 0xd6, 0xd2, 0xc6, 0xdc, 0x7e, 0x0a, 0xb7, 0x46, + 0x83, 0x3c, 0x5d, 0x6e, 0x5b, 0xb0, 0x8a, 0xa5, 0x72, 0x91, 0xcc, 0xbd, +}; +static const unsigned char kat4100_addinpr1[] = { + 0x07, 0x55, 0x64, 0xaa, 0x76, 0x67, 0x36, 0xe1, 0x71, 0xfb, 0xae, 0x47, + 0x85, 0xd4, 0xb9, 0xb1, 0xbc, 0x97, 0xe0, 0xea, 0x77, 0x41, 0x8e, 0xe7, + 0xaa, 0x7a, 0x4b, 0xce, 0x18, 0xfe, 0x87, 0x11, 0x33, 0x2e, 0xed, 0x06, + 0x40, 0x18, 0x85, 0x01, 0x1e, 0x66, 0x3e, 0x42, 0x94, 0xf5, 0x9b, 0x49, +}; +static const unsigned char kat4100_entropyinpr2[] = { + 0x43, 0x47, 0x91, 0xd1, 0x75, 0xc7, 0x03, 0x6a, 0x1f, 0x44, 0x20, 0x60, + 0xdc, 0x81, 0x99, 0x40, 0x48, 0xc7, 0x70, 0x37, 0x27, 0x98, 0xbd, 0x1c, + 0x5f, 0x63, 0xaf, 0xa4, 0xb5, 0x4c, 0xeb, 0xbd, 0x17, 0x17, 0x99, 0xce, + 0xdc, 0xb3, 0x64, 0xc4, 0x9e, 0x24, 0x9a, 0xf6, 0xe8, 0xfe, 0xa2, 0xa6, +}; +static const unsigned char kat4100_addinpr2[] = { + 0x20, 0xbf, 0x31, 0x91, 0xdd, 0x5e, 0x46, 0xb9, 0x9b, 0x1c, 0x26, 0x4f, + 0x0c, 0x35, 0x34, 0xbf, 0xa5, 0xff, 0x96, 0x31, 0xc6, 0xb0, 0xff, 0xc1, + 0xab, 0xa6, 0x5d, 0x85, 0x8d, 0x3b, 0xa5, 0x73, 0x09, 0x05, 0xe1, 0xa0, + 0xa0, 0xda, 0x28, 0x99, 0x59, 0xfa, 0x43, 0x82, 0xe5, 0x61, 0x95, 0x37, +}; +static const unsigned char kat4100_retbits[] = { + 0xd7, 0xb7, 0x22, 0xae, 0xbe, 0xbb, 0x06, 0x49, 0x0d, 0x5a, 0x71, 0x35, + 0x35, 0x12, 0x81, 0xb8, 0x2c, 0x6e, 0xcb, 0x34, 0xdd, 0x03, 0x6f, 0xbb, + 0xc8, 0x9f, 0x94, 0x0b, 0x73, 0xc6, 0x0f, 0x73, 0x0e, 0x0e, 0x3a, 0xff, + 0xcd, 0x3c, 0xde, 0x85, 0x4c, 0xea, 0xf6, 0x70, 0xa6, 0xbd, 0x35, 0x5c, + 0xdf, 0x39, 0xe1, 0x17, 0x20, 0x29, 0x2e, 0xb7, 0x91, 0x92, 0x3e, 0x3e, + 0x97, 0x35, 0x8a, 0x83, +}; +static const struct drbg_kat_pr_true kat4100_t = { + 4, kat4100_entropyin, kat4100_nonce, kat4100_persstr, + kat4100_entropyinpr1, kat4100_addinpr1, kat4100_entropyinpr2, + kat4100_addinpr2, kat4100_retbits +}; +static const struct drbg_kat kat4100 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4100_t +}; + +static const unsigned char kat4101_entropyin[] = { + 0xde, 0xef, 0x73, 0xc8, 0xbc, 0x87, 0x18, 0x1e, 0xab, 0x0e, 0x44, 0x8f, + 0x4a, 0x30, 0x10, 0xc4, 0x83, 0x0b, 0x65, 0xc6, 0x16, 0x63, 0x2f, 0x6d, + 0xec, 0x91, 0x0a, 0x11, 0xa2, 0x06, 0x1b, 0x03, 0xc1, 0x62, 0x10, 0x4a, + 0xa6, 0xd0, 0x60, 0x90, 0xc2, 0x58, 0x15, 0x22, 0xee, 0x4f, 0xe3, 0x65, +}; +static const unsigned char kat4101_nonce[] = {0}; +static const unsigned char kat4101_persstr[] = {0}; +static const unsigned char kat4101_entropyinpr1[] = { + 0x1f, 0x61, 0xa2, 0xae, 0x14, 0x70, 0xb9, 0xa7, 0x3a, 0x0a, 0x86, 0xef, + 0x94, 0xe6, 0xd5, 0xe2, 0x71, 0x5e, 0xdd, 0x36, 0xf2, 0x3c, 0x84, 0x41, + 0xcd, 0x00, 0x75, 0xa4, 0x1f, 0xc1, 0xe5, 0xd9, 0x5b, 0xeb, 0x6c, 0x5b, + 0x9b, 0x68, 0xfe, 0x8d, 0x5d, 0x27, 0x00, 0x56, 0xbf, 0x46, 0x60, 0xdb, +}; +static const unsigned char kat4101_addinpr1[] = { + 0x91, 0xe3, 0x57, 0x07, 0x2a, 0x50, 0xc7, 0x5b, 0x61, 0xa4, 0x91, 0xe3, + 0x99, 0xf1, 0x16, 0x18, 0xf6, 0xea, 0x97, 0x06, 0xe5, 0x89, 0x3c, 0xce, + 0xd1, 0xd8, 0xbf, 0xde, 0xac, 0xc7, 0x28, 0x05, 0xfb, 0x71, 0x82, 0xf3, + 0xf3, 0x50, 0x20, 0x2f, 0xa1, 0xad, 0x11, 0xa5, 0x02, 0x45, 0x50, 0xc0, +}; +static const unsigned char kat4101_entropyinpr2[] = { + 0x54, 0x24, 0x94, 0xc8, 0x31, 0xe8, 0x41, 0x76, 0x3d, 0x96, 0x9f, 0x9b, + 0x13, 0xe7, 0x11, 0x9d, 0xac, 0xc7, 0xa7, 0xb8, 0x03, 0xf4, 0x57, 0x17, + 0x1b, 0xa8, 0x32, 0xbb, 0x88, 0xe7, 0xe7, 0x59, 0x73, 0xf0, 0xca, 0xd6, + 0x82, 0x05, 0x3d, 0xeb, 0x58, 0x93, 0x75, 0x74, 0x3e, 0x87, 0x29, 0x00, +}; +static const unsigned char kat4101_addinpr2[] = { + 0xe1, 0x82, 0x1a, 0xac, 0xa6, 0xda, 0x73, 0xb2, 0x7d, 0xcf, 0xea, 0x54, + 0x54, 0x80, 0x52, 0x63, 0x17, 0x31, 0x47, 0xce, 0x42, 0xa8, 0xd2, 0xdb, + 0xcf, 0x5a, 0x61, 0xe6, 0xae, 0xd8, 0xe4, 0x92, 0xba, 0x7a, 0xed, 0xb4, + 0xe4, 0xd5, 0xbc, 0x0c, 0x5d, 0xc8, 0x4f, 0xf6, 0x9b, 0x42, 0x2d, 0x58, +}; +static const unsigned char kat4101_retbits[] = { + 0xdc, 0x46, 0x2a, 0xa9, 0x76, 0xf7, 0x3e, 0x05, 0xb9, 0xf7, 0x34, 0xae, + 0x17, 0xdb, 0xe2, 0xef, 0xee, 0x06, 0x0e, 0xf8, 0xd5, 0xfd, 0x31, 0x74, + 0x0f, 0x34, 0x0c, 0x26, 0x53, 0xe3, 0x2a, 0x7e, 0x66, 0xd2, 0x2b, 0x89, + 0x4e, 0xdc, 0x4b, 0x19, 0x5a, 0x07, 0xd9, 0x0b, 0xe3, 0x64, 0xbd, 0x9e, + 0xee, 0x1c, 0xc1, 0x88, 0x5b, 0x91, 0x12, 0x0a, 0x75, 0x65, 0x46, 0x08, + 0x7f, 0x03, 0xb7, 0x59, +}; +static const struct drbg_kat_pr_true kat4101_t = { + 5, kat4101_entropyin, kat4101_nonce, kat4101_persstr, + kat4101_entropyinpr1, kat4101_addinpr1, kat4101_entropyinpr2, + kat4101_addinpr2, kat4101_retbits +}; +static const struct drbg_kat kat4101 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4101_t +}; + +static const unsigned char kat4102_entropyin[] = { + 0x40, 0x49, 0x6b, 0x31, 0xf3, 0x21, 0x82, 0x00, 0xd8, 0x44, 0x55, 0x2b, + 0x0e, 0x07, 0x6e, 0x9d, 0xf0, 0xa1, 0xbc, 0xc0, 0xf4, 0x0d, 0x4f, 0xe3, + 0xc0, 0xaf, 0x0d, 0xea, 0xe4, 0x4e, 0x2f, 0x82, 0x33, 0xff, 0x95, 0x2b, + 0x29, 0x23, 0x54, 0xcc, 0x25, 0xb1, 0x7e, 0xd0, 0xd1, 0xf8, 0x7f, 0x55, +}; +static const unsigned char kat4102_nonce[] = {0}; +static const unsigned char kat4102_persstr[] = {0}; +static const unsigned char kat4102_entropyinpr1[] = { + 0x83, 0x14, 0x7a, 0xc1, 0xae, 0xc7, 0xb0, 0xec, 0x82, 0x39, 0x0e, 0xb1, + 0x9a, 0x64, 0x31, 0x49, 0xf9, 0xdd, 0xda, 0x1a, 0xb6, 0x83, 0x34, 0xdd, + 0xb5, 0xa8, 0xdb, 0x64, 0xed, 0x48, 0x39, 0xce, 0xe4, 0x88, 0x01, 0x1a, + 0x0a, 0x1c, 0x34, 0xa6, 0xe2, 0x22, 0xee, 0x5e, 0xd7, 0x50, 0x72, 0x72, +}; +static const unsigned char kat4102_addinpr1[] = { + 0xb9, 0x7c, 0x0c, 0xab, 0x1f, 0x60, 0xee, 0xa1, 0xb4, 0x41, 0x76, 0xd8, + 0x56, 0x88, 0x3e, 0xf4, 0xe4, 0x4e, 0x68, 0x93, 0xdb, 0x79, 0x22, 0x06, + 0xdc, 0xc7, 0x1a, 0x77, 0xef, 0xf4, 0x34, 0xac, 0x18, 0xfa, 0xbd, 0x3e, + 0xa4, 0xc2, 0x93, 0xd5, 0x1c, 0x0d, 0xc4, 0x06, 0x55, 0x71, 0x83, 0xab, +}; +static const unsigned char kat4102_entropyinpr2[] = { + 0x9b, 0xff, 0x44, 0x5e, 0x46, 0xb4, 0xb9, 0x21, 0xca, 0xdb, 0xab, 0xec, + 0xda, 0xb1, 0xd2, 0x9b, 0x40, 0x47, 0x7e, 0x48, 0xa7, 0x11, 0xcb, 0xa5, + 0x64, 0x7c, 0xc7, 0x9a, 0xbf, 0xc5, 0x2f, 0xe0, 0xf1, 0xb7, 0xdc, 0x3c, + 0x93, 0x1a, 0xd5, 0x4a, 0x24, 0x7a, 0x66, 0xd6, 0xbe, 0xbc, 0x0d, 0x54, +}; +static const unsigned char kat4102_addinpr2[] = { + 0xec, 0x41, 0x34, 0xaf, 0x36, 0x32, 0x78, 0x04, 0xae, 0x3a, 0x41, 0x42, + 0xd4, 0x98, 0x48, 0x24, 0x53, 0xee, 0xe1, 0x70, 0xf8, 0xd7, 0xc6, 0x21, + 0xc0, 0x05, 0x6e, 0xb4, 0x0c, 0x53, 0x81, 0x6b, 0x38, 0xe1, 0x2d, 0xc6, + 0xd6, 0xa2, 0xf6, 0x90, 0xec, 0x4f, 0xd3, 0xa0, 0x7c, 0x13, 0xee, 0x10, +}; +static const unsigned char kat4102_retbits[] = { + 0x2e, 0x4d, 0xf6, 0x67, 0xd9, 0x77, 0x8b, 0x97, 0x18, 0xa0, 0xa0, 0x25, + 0xf6, 0x12, 0xdc, 0x57, 0x47, 0x62, 0x85, 0x7b, 0xc7, 0x0b, 0x11, 0x20, + 0x62, 0x21, 0xcc, 0x28, 0xe2, 0xed, 0xe4, 0x62, 0xcf, 0x8e, 0xd4, 0xe0, + 0x5f, 0xd5, 0xca, 0x0f, 0x4f, 0x7c, 0x75, 0x98, 0xfa, 0x91, 0xec, 0x4f, + 0x03, 0xdf, 0x8c, 0xeb, 0xbd, 0x8c, 0x6c, 0x07, 0x8b, 0xfa, 0xcb, 0x0e, + 0x72, 0x83, 0xff, 0x34, +}; +static const struct drbg_kat_pr_true kat4102_t = { + 6, kat4102_entropyin, kat4102_nonce, kat4102_persstr, + kat4102_entropyinpr1, kat4102_addinpr1, kat4102_entropyinpr2, + kat4102_addinpr2, kat4102_retbits +}; +static const struct drbg_kat kat4102 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4102_t +}; + +static const unsigned char kat4103_entropyin[] = { + 0x9c, 0x2a, 0x30, 0xf6, 0xce, 0x80, 0xf9, 0x24, 0xc8, 0xd3, 0x8d, 0x68, + 0xa7, 0xb3, 0xc5, 0xf0, 0xc6, 0x19, 0xa4, 0x66, 0xd7, 0x15, 0x9a, 0x3b, + 0x76, 0xa9, 0xdc, 0xdd, 0x74, 0x21, 0x87, 0x1d, 0xff, 0x73, 0x8f, 0x80, + 0xb8, 0xe7, 0x7f, 0x1b, 0xae, 0xce, 0xf8, 0x47, 0x77, 0xc0, 0x01, 0x6e, +}; +static const unsigned char kat4103_nonce[] = {0}; +static const unsigned char kat4103_persstr[] = {0}; +static const unsigned char kat4103_entropyinpr1[] = { + 0x08, 0x26, 0x76, 0xfa, 0x9f, 0x61, 0xc8, 0xb0, 0xf0, 0x04, 0xa0, 0x0d, + 0x30, 0xf4, 0x8b, 0xd3, 0x64, 0xe0, 0xee, 0x4f, 0xa3, 0xf3, 0xba, 0xde, + 0x4f, 0xdf, 0xa7, 0xd4, 0x7f, 0x2e, 0xf6, 0x93, 0x3d, 0x23, 0x71, 0x31, + 0x1e, 0x27, 0x5e, 0x9e, 0x02, 0xbb, 0xc5, 0xd2, 0x0a, 0x21, 0x0d, 0x6a, +}; +static const unsigned char kat4103_addinpr1[] = { + 0xd6, 0xab, 0x56, 0xb1, 0xa1, 0x04, 0x9c, 0x40, 0x9a, 0x4c, 0x5d, 0xd0, + 0x7f, 0xb8, 0xac, 0xa0, 0x76, 0xb7, 0x73, 0x89, 0xe4, 0x4a, 0xc4, 0x9f, + 0x44, 0x56, 0xaf, 0xb7, 0x82, 0xef, 0xc1, 0x28, 0xcd, 0x4f, 0x27, 0xe6, + 0x16, 0xa0, 0xfb, 0x9b, 0x73, 0xf3, 0x59, 0xcc, 0xc6, 0xca, 0x89, 0x3a, +}; +static const unsigned char kat4103_entropyinpr2[] = { + 0x94, 0x2f, 0xd3, 0xf0, 0xb8, 0xed, 0xf1, 0xad, 0x60, 0x69, 0x36, 0xbc, + 0x5f, 0x00, 0xb5, 0x5d, 0xc0, 0x15, 0x5a, 0xa1, 0xbc, 0x69, 0xc7, 0xa8, + 0xe6, 0x1d, 0xfb, 0x9e, 0xe5, 0x1d, 0x3c, 0x3e, 0x5e, 0xa8, 0xa9, 0x3f, + 0x3c, 0x68, 0x8b, 0x1e, 0x81, 0xfa, 0xc5, 0xcd, 0x01, 0xb4, 0xa4, 0xc1, +}; +static const unsigned char kat4103_addinpr2[] = { + 0x90, 0xde, 0x48, 0xbc, 0x64, 0xda, 0x62, 0x86, 0x1d, 0xf4, 0x73, 0x15, + 0xf2, 0x38, 0xa2, 0xbf, 0xa8, 0x9b, 0xe8, 0x04, 0x0a, 0x02, 0xb9, 0xfc, + 0x61, 0xcd, 0x6d, 0xcc, 0xcd, 0xdf, 0x58, 0x88, 0xcf, 0x77, 0x6f, 0xa4, + 0x3e, 0x72, 0xb0, 0x3c, 0x0a, 0x11, 0x20, 0x9f, 0x26, 0x04, 0xbd, 0x7e, +}; +static const unsigned char kat4103_retbits[] = { + 0xdc, 0xbc, 0xbc, 0x30, 0x12, 0xd5, 0xbb, 0x17, 0x19, 0x13, 0x0d, 0x29, + 0x81, 0xf4, 0xd2, 0xcd, 0x64, 0x06, 0x11, 0x62, 0xf2, 0xf0, 0x55, 0xa2, + 0x73, 0x88, 0xbc, 0xd9, 0xc3, 0x6e, 0x2a, 0x7c, 0x6b, 0xe1, 0x7b, 0x04, + 0xc7, 0x0f, 0x02, 0x41, 0x4d, 0xea, 0x72, 0xd4, 0x74, 0xc2, 0xf0, 0xc9, + 0x6e, 0x4a, 0xe2, 0x55, 0xac, 0x3f, 0x36, 0x79, 0x7c, 0x53, 0xd1, 0x88, + 0x6a, 0x1b, 0x03, 0xf3, +}; +static const struct drbg_kat_pr_true kat4103_t = { + 7, kat4103_entropyin, kat4103_nonce, kat4103_persstr, + kat4103_entropyinpr1, kat4103_addinpr1, kat4103_entropyinpr2, + kat4103_addinpr2, kat4103_retbits +}; +static const struct drbg_kat kat4103 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4103_t +}; + +static const unsigned char kat4104_entropyin[] = { + 0x93, 0x62, 0xde, 0x1a, 0xbb, 0x49, 0xe4, 0xb7, 0xcd, 0x5f, 0x27, 0xe7, + 0x0f, 0xa1, 0x8c, 0x40, 0x91, 0x61, 0xf1, 0x82, 0x29, 0x87, 0xf2, 0x3a, + 0xca, 0x6f, 0x1e, 0xf5, 0x8d, 0x08, 0x10, 0x80, 0x75, 0xcb, 0x13, 0xab, + 0x81, 0x8c, 0x0a, 0x2b, 0x5e, 0xa7, 0x41, 0xcf, 0x9d, 0x4b, 0x21, 0x74, +}; +static const unsigned char kat4104_nonce[] = {0}; +static const unsigned char kat4104_persstr[] = {0}; +static const unsigned char kat4104_entropyinpr1[] = { + 0xbc, 0x6f, 0xb8, 0xb7, 0xa1, 0x0b, 0x6b, 0xaa, 0xaa, 0xb5, 0x8c, 0x16, + 0x7a, 0x3f, 0x33, 0x05, 0x8d, 0xb1, 0xe5, 0xea, 0x90, 0xf6, 0xaa, 0xc7, + 0xaf, 0x10, 0x0c, 0x03, 0xc5, 0xaa, 0x12, 0x0c, 0x33, 0x30, 0xde, 0x7d, + 0xf1, 0x6e, 0x12, 0x07, 0x6e, 0xcd, 0x68, 0x14, 0x98, 0x40, 0xa1, 0xfb, +}; +static const unsigned char kat4104_addinpr1[] = { + 0x58, 0x6f, 0xb1, 0x84, 0xb4, 0x7e, 0x1a, 0x98, 0x39, 0x91, 0xac, 0x64, + 0x58, 0xba, 0x02, 0xd2, 0x7b, 0x92, 0x58, 0x16, 0x0a, 0xcb, 0x4e, 0xf0, + 0x1a, 0xcb, 0x95, 0x0f, 0x9d, 0xa7, 0x80, 0xd8, 0xfc, 0x9b, 0xdc, 0x69, + 0x0f, 0x92, 0x13, 0x5f, 0x53, 0xb0, 0xd5, 0x19, 0xb2, 0x11, 0xc4, 0x0b, +}; +static const unsigned char kat4104_entropyinpr2[] = { + 0xe7, 0xa6, 0x83, 0xec, 0x66, 0x1a, 0xf9, 0x7e, 0x2d, 0xf1, 0xc5, 0x99, + 0xcc, 0x13, 0x01, 0x14, 0xa7, 0xbb, 0xa9, 0xe2, 0x8f, 0xb3, 0x2e, 0xd8, + 0xc0, 0x53, 0x11, 0x69, 0xc7, 0x57, 0xb2, 0xcf, 0xde, 0x39, 0xef, 0xaf, + 0xd1, 0x44, 0xde, 0x42, 0x17, 0x4b, 0x46, 0x91, 0x9f, 0x77, 0x37, 0xe1, +}; +static const unsigned char kat4104_addinpr2[] = { + 0x04, 0x71, 0x01, 0xcf, 0xc7, 0x52, 0x50, 0xcb, 0x55, 0xed, 0x8b, 0x09, + 0xbd, 0x4e, 0x83, 0x88, 0x06, 0x0e, 0xc0, 0xaf, 0xa8, 0x95, 0x27, 0xa5, + 0x57, 0xac, 0x36, 0xc1, 0x17, 0x69, 0x2e, 0x3e, 0xfd, 0x60, 0x3e, 0x3f, + 0x46, 0x44, 0x16, 0xd4, 0x36, 0xb4, 0x1a, 0xfa, 0x05, 0xac, 0xdf, 0xee, +}; +static const unsigned char kat4104_retbits[] = { + 0xd8, 0x79, 0x68, 0x57, 0x54, 0xc7, 0xd3, 0x48, 0x3f, 0x60, 0x15, 0xf6, + 0x81, 0x8b, 0xa6, 0xb5, 0x8b, 0xb3, 0x81, 0x59, 0x21, 0xff, 0x31, 0xbd, + 0x24, 0x4a, 0x9a, 0x03, 0x49, 0x05, 0xb6, 0x0e, 0x48, 0x34, 0xfe, 0x6e, + 0x7e, 0x05, 0x68, 0x43, 0x8b, 0xf0, 0x19, 0x1e, 0xad, 0xda, 0x9c, 0x84, + 0x93, 0xdc, 0x90, 0x02, 0x34, 0x24, 0xdb, 0x9b, 0xc4, 0x2a, 0xcf, 0x68, + 0x2a, 0xac, 0x9f, 0x92, +}; +static const struct drbg_kat_pr_true kat4104_t = { + 8, kat4104_entropyin, kat4104_nonce, kat4104_persstr, + kat4104_entropyinpr1, kat4104_addinpr1, kat4104_entropyinpr2, + kat4104_addinpr2, kat4104_retbits +}; +static const struct drbg_kat kat4104 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4104_t +}; + +static const unsigned char kat4105_entropyin[] = { + 0x64, 0x0f, 0xfb, 0x8c, 0xbb, 0x51, 0xd9, 0x1b, 0xc5, 0x61, 0x97, 0x99, + 0xc3, 0x77, 0x75, 0x19, 0x07, 0xf4, 0x49, 0x92, 0xea, 0x7c, 0x3b, 0x4f, + 0xe5, 0xe2, 0xe4, 0x7a, 0x00, 0x0e, 0xe7, 0xd4, 0xde, 0xf1, 0x38, 0x8f, + 0x0f, 0x51, 0x10, 0x4e, 0x4f, 0xa6, 0x8e, 0x9e, 0xbe, 0x8d, 0xc9, 0x22, +}; +static const unsigned char kat4105_nonce[] = {0}; +static const unsigned char kat4105_persstr[] = {0}; +static const unsigned char kat4105_entropyinpr1[] = { + 0x68, 0x7f, 0x98, 0xb7, 0xa3, 0xff, 0x9e, 0x1f, 0x93, 0xe3, 0x1d, 0xea, + 0xcb, 0x1b, 0xc5, 0xb5, 0x8c, 0x65, 0xdd, 0x93, 0x1a, 0x04, 0xec, 0xca, + 0xa9, 0x7a, 0x5b, 0x87, 0xec, 0xfc, 0xc0, 0xce, 0x6e, 0xec, 0x24, 0xe2, + 0xa9, 0xaa, 0xd6, 0xad, 0x42, 0x85, 0xb3, 0x43, 0x50, 0xed, 0x8e, 0xf4, +}; +static const unsigned char kat4105_addinpr1[] = { + 0xe0, 0xcf, 0x8b, 0xd9, 0x50, 0x00, 0xb6, 0xe5, 0xd5, 0x42, 0xdb, 0x09, + 0x1a, 0xc5, 0x64, 0x02, 0xab, 0x24, 0x95, 0x7f, 0x97, 0xf4, 0x09, 0xbf, + 0x55, 0xcc, 0x69, 0x44, 0x92, 0xa6, 0xa9, 0x8a, 0xdb, 0xc5, 0xf4, 0xb3, + 0x57, 0x84, 0x65, 0x8b, 0x97, 0xc3, 0x22, 0xbd, 0x72, 0xf2, 0xfc, 0x6b, +}; +static const unsigned char kat4105_entropyinpr2[] = { + 0x30, 0xc3, 0xc1, 0x7c, 0x8b, 0xd9, 0x38, 0xeb, 0x12, 0x5c, 0x74, 0x38, + 0xf3, 0x88, 0xd4, 0x40, 0x82, 0xba, 0xba, 0x17, 0xb3, 0xcf, 0xbb, 0x65, + 0x92, 0x97, 0x21, 0xb0, 0x3f, 0x79, 0xa7, 0x60, 0xca, 0xdc, 0x8e, 0xb2, + 0x0b, 0x11, 0x0a, 0x3a, 0xeb, 0xb9, 0xec, 0x68, 0x02, 0xc7, 0x23, 0xdc, +}; +static const unsigned char kat4105_addinpr2[] = { + 0x00, 0xf1, 0x03, 0xed, 0xa5, 0x96, 0x92, 0x23, 0x2b, 0xc1, 0xab, 0x5a, + 0xb3, 0x26, 0xbc, 0xae, 0x88, 0x31, 0x71, 0x9b, 0x79, 0x03, 0x69, 0x89, + 0xf7, 0xed, 0xfb, 0xf8, 0x40, 0x85, 0x10, 0x6e, 0x30, 0xf4, 0x08, 0x9d, + 0xaa, 0x3b, 0x3c, 0xba, 0x5a, 0x37, 0x85, 0x20, 0x9d, 0xd3, 0x2f, 0xe8, +}; +static const unsigned char kat4105_retbits[] = { + 0x50, 0xaf, 0x8e, 0xc8, 0xe4, 0x12, 0x94, 0x85, 0x68, 0xc5, 0x49, 0xe8, + 0xd0, 0x22, 0xfc, 0x3e, 0xa9, 0xe0, 0xb6, 0xa3, 0x78, 0x1a, 0x95, 0xeb, + 0x0e, 0x96, 0x55, 0xdd, 0x76, 0xec, 0xe0, 0x3c, 0x4a, 0x59, 0x94, 0x24, + 0xca, 0x22, 0x56, 0x44, 0xbf, 0x25, 0xf0, 0x5d, 0xdf, 0x8e, 0x01, 0x73, + 0x34, 0x27, 0x1d, 0xf9, 0x2b, 0xff, 0x5a, 0x7c, 0x56, 0x41, 0x4b, 0x73, + 0xbc, 0xe1, 0x39, 0xe9, +}; +static const struct drbg_kat_pr_true kat4105_t = { + 9, kat4105_entropyin, kat4105_nonce, kat4105_persstr, + kat4105_entropyinpr1, kat4105_addinpr1, kat4105_entropyinpr2, + kat4105_addinpr2, kat4105_retbits +}; +static const struct drbg_kat kat4105 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4105_t +}; + +static const unsigned char kat4106_entropyin[] = { + 0xf6, 0x84, 0x95, 0x1c, 0x09, 0xea, 0x9e, 0x56, 0x23, 0x42, 0x57, 0xd2, + 0xd0, 0xd0, 0xe1, 0x88, 0x83, 0x05, 0xc9, 0x35, 0xd3, 0xa3, 0xef, 0xb4, + 0x9f, 0x13, 0xe3, 0xe0, 0x96, 0x3e, 0x01, 0xe1, 0x26, 0xb6, 0x30, 0x8e, + 0xd4, 0x16, 0xe8, 0xbe, 0x07, 0xc0, 0xf0, 0xf3, 0x70, 0x8d, 0x6b, 0x2f, +}; +static const unsigned char kat4106_nonce[] = {0}; +static const unsigned char kat4106_persstr[] = {0}; +static const unsigned char kat4106_entropyinpr1[] = { + 0x9b, 0xaa, 0x62, 0x29, 0x6b, 0xa9, 0xa4, 0xc3, 0x78, 0x9e, 0x50, 0x17, + 0x79, 0x88, 0x3a, 0xcf, 0x24, 0x7f, 0x4d, 0x50, 0x97, 0x21, 0xff, 0xf5, + 0x71, 0x3e, 0xcd, 0x8b, 0x13, 0x75, 0xdf, 0xb3, 0x91, 0x92, 0x88, 0x98, + 0x93, 0x85, 0xa0, 0xd9, 0x01, 0x47, 0xca, 0x23, 0x91, 0xa2, 0x9d, 0xcb, +}; +static const unsigned char kat4106_addinpr1[] = { + 0xb6, 0x06, 0x07, 0x95, 0xe8, 0x6b, 0xb3, 0x17, 0x19, 0x7d, 0xea, 0x21, + 0x39, 0x68, 0xbe, 0xcb, 0xdd, 0xbc, 0x97, 0x73, 0x87, 0x14, 0x37, 0xf5, + 0xa5, 0x16, 0x82, 0x6f, 0xb6, 0xe6, 0x66, 0x38, 0x85, 0x84, 0xd2, 0xdd, + 0xf8, 0xcf, 0xdf, 0xdc, 0x95, 0xce, 0x19, 0x6b, 0x9b, 0x27, 0x36, 0x65, +}; +static const unsigned char kat4106_entropyinpr2[] = { + 0x55, 0x0e, 0x27, 0xa6, 0x0b, 0x21, 0x1c, 0x62, 0xb4, 0x49, 0x99, 0xf2, + 0xa5, 0xc3, 0xb5, 0x4e, 0x14, 0xbe, 0xc9, 0xae, 0x7a, 0xa3, 0x8c, 0xbd, + 0xe4, 0xb5, 0x6b, 0x4f, 0xf5, 0x58, 0x43, 0xa0, 0x4a, 0xa9, 0x6d, 0x4f, + 0x38, 0xa0, 0x32, 0x37, 0x1c, 0x00, 0x3a, 0xfd, 0x0e, 0xb5, 0xd8, 0xc9, +}; +static const unsigned char kat4106_addinpr2[] = { + 0x8d, 0xf4, 0xb5, 0x49, 0x04, 0x51, 0xa9, 0x15, 0x5d, 0x14, 0x9c, 0xc2, + 0x11, 0x4b, 0x50, 0xaf, 0x36, 0x7f, 0xdd, 0xe0, 0x49, 0x2b, 0x24, 0xfb, + 0x04, 0x28, 0xe9, 0x0b, 0xb1, 0x25, 0x15, 0x89, 0x4a, 0xef, 0x8f, 0xa1, + 0xa5, 0xba, 0xd2, 0x6b, 0x35, 0x58, 0x2c, 0xe6, 0x82, 0xa5, 0xc1, 0xd6, +}; +static const unsigned char kat4106_retbits[] = { + 0xb6, 0xe2, 0xf2, 0xc9, 0xff, 0x2c, 0x9f, 0x00, 0x74, 0xfa, 0x2a, 0x52, + 0xbd, 0xc2, 0xe9, 0x46, 0x04, 0x29, 0xf2, 0x92, 0x27, 0xa6, 0x22, 0x14, + 0xe5, 0x37, 0x46, 0x81, 0x61, 0x69, 0x79, 0xf6, 0x09, 0x23, 0x5f, 0x21, + 0xc7, 0xe3, 0x35, 0x47, 0x1b, 0x48, 0x35, 0x1d, 0x13, 0x5d, 0xdf, 0x97, + 0xe4, 0x1e, 0x7f, 0x88, 0x3f, 0x65, 0xcb, 0xe1, 0x7c, 0x8b, 0xe8, 0xa2, + 0x62, 0xc9, 0x41, 0x6a, +}; +static const struct drbg_kat_pr_true kat4106_t = { + 10, kat4106_entropyin, kat4106_nonce, kat4106_persstr, + kat4106_entropyinpr1, kat4106_addinpr1, kat4106_entropyinpr2, + kat4106_addinpr2, kat4106_retbits +}; +static const struct drbg_kat kat4106 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4106_t +}; + +static const unsigned char kat4107_entropyin[] = { + 0xcb, 0x5f, 0x31, 0xd3, 0xd0, 0xf3, 0x1a, 0x40, 0x71, 0x54, 0x65, 0x5a, + 0x07, 0xe1, 0x00, 0xfb, 0x31, 0xda, 0xa1, 0x90, 0xf8, 0xcd, 0x98, 0x61, + 0x13, 0xa9, 0xbb, 0xbb, 0x82, 0xac, 0x81, 0xf7, 0x25, 0xf2, 0x51, 0xe0, + 0x9d, 0xd5, 0xb4, 0x35, 0x35, 0x97, 0x10, 0x06, 0x2a, 0x37, 0x60, 0x42, +}; +static const unsigned char kat4107_nonce[] = {0}; +static const unsigned char kat4107_persstr[] = {0}; +static const unsigned char kat4107_entropyinpr1[] = { + 0x7b, 0xf5, 0x76, 0xe1, 0x88, 0xbe, 0xd3, 0x1b, 0x17, 0xe7, 0xb9, 0x61, + 0x23, 0x67, 0x58, 0xde, 0xd2, 0xc2, 0xad, 0xf4, 0xc1, 0x70, 0xe8, 0xbc, + 0x79, 0xed, 0x6c, 0x12, 0x21, 0xc9, 0x96, 0xb2, 0x55, 0x91, 0xa6, 0xa2, + 0x10, 0x9a, 0xcb, 0xba, 0x0a, 0x3d, 0x19, 0x14, 0x22, 0xdb, 0xeb, 0x7e, +}; +static const unsigned char kat4107_addinpr1[] = { + 0x7f, 0x56, 0x3d, 0x65, 0x41, 0xdf, 0x7e, 0x40, 0xd7, 0xe5, 0x6e, 0x92, + 0x56, 0xf9, 0x52, 0x3a, 0xd3, 0xb8, 0x79, 0xa8, 0x01, 0x53, 0xcf, 0x06, + 0xbe, 0x36, 0x15, 0x8f, 0xe8, 0xdc, 0xa5, 0x78, 0xbd, 0x2c, 0x82, 0xc0, + 0x21, 0x84, 0x7a, 0x79, 0x1e, 0xcc, 0x8b, 0x41, 0x82, 0x31, 0x79, 0xe9, +}; +static const unsigned char kat4107_entropyinpr2[] = { + 0x38, 0x6d, 0x3f, 0xa4, 0x04, 0xbf, 0xe6, 0xc2, 0xca, 0xc3, 0x90, 0x6c, + 0xdd, 0x95, 0x0a, 0x60, 0xe4, 0x90, 0x8a, 0xe9, 0x8d, 0xfd, 0xcb, 0xf5, + 0xee, 0x27, 0x2f, 0x70, 0x96, 0x0c, 0xad, 0x26, 0x0b, 0xe5, 0x6f, 0x45, + 0xe5, 0xcf, 0x84, 0x03, 0x20, 0x1b, 0x8c, 0xf9, 0x66, 0x00, 0x5c, 0xae, +}; +static const unsigned char kat4107_addinpr2[] = { + 0xcb, 0xaa, 0x95, 0x33, 0xb8, 0xa0, 0x63, 0x5a, 0xc6, 0xc1, 0xa3, 0x21, + 0xa7, 0x58, 0x27, 0xce, 0x36, 0xdb, 0x60, 0xd1, 0xaf, 0x18, 0xf3, 0x79, + 0x31, 0x9a, 0xee, 0x0e, 0x5d, 0xed, 0xc7, 0xfd, 0x29, 0x90, 0xe4, 0xe4, + 0xc7, 0x78, 0x74, 0xc4, 0x21, 0xcc, 0xb2, 0x35, 0x23, 0x5d, 0x27, 0xc1, +}; +static const unsigned char kat4107_retbits[] = { + 0xf0, 0xf7, 0xa7, 0xa3, 0x85, 0xc7, 0x9e, 0xff, 0xf7, 0x1b, 0x6b, 0x89, + 0x25, 0x55, 0x18, 0x4c, 0x8e, 0x33, 0x31, 0x37, 0x8b, 0x67, 0x0e, 0x3e, + 0x26, 0xa3, 0x11, 0xe0, 0x56, 0xb3, 0x8c, 0x96, 0x33, 0x5b, 0x4c, 0xdf, + 0x9e, 0x70, 0x33, 0x18, 0x8f, 0x33, 0xee, 0x0c, 0x41, 0x13, 0x40, 0xe9, + 0xfb, 0x1a, 0xe6, 0x40, 0x60, 0x97, 0xe6, 0x5b, 0x85, 0x91, 0x7d, 0x8d, + 0xda, 0xea, 0x87, 0x0d, +}; +static const struct drbg_kat_pr_true kat4107_t = { + 11, kat4107_entropyin, kat4107_nonce, kat4107_persstr, + kat4107_entropyinpr1, kat4107_addinpr1, kat4107_entropyinpr2, + kat4107_addinpr2, kat4107_retbits +}; +static const struct drbg_kat kat4107 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4107_t +}; + +static const unsigned char kat4108_entropyin[] = { + 0x3f, 0x07, 0x42, 0x8a, 0xf9, 0xe3, 0x7c, 0x5b, 0x23, 0x21, 0xf6, 0x80, + 0x91, 0x62, 0x40, 0x1c, 0xa7, 0x51, 0x3e, 0xc3, 0x8d, 0x7b, 0x9f, 0x2d, + 0xe1, 0x83, 0x23, 0xd9, 0xbd, 0xf6, 0xd5, 0x90, 0x3c, 0x42, 0xae, 0x61, + 0x75, 0x25, 0x58, 0xf5, 0x06, 0x07, 0x25, 0x6e, 0xad, 0x19, 0x04, 0x4c, +}; +static const unsigned char kat4108_nonce[] = {0}; +static const unsigned char kat4108_persstr[] = {0}; +static const unsigned char kat4108_entropyinpr1[] = { + 0x43, 0xa6, 0x8b, 0x61, 0xf3, 0xde, 0x82, 0x5d, 0x6c, 0xd4, 0xa8, 0xd3, + 0x1a, 0x07, 0x5b, 0xe8, 0xc2, 0x73, 0x21, 0xe3, 0xa2, 0xad, 0x56, 0x00, + 0xd3, 0x9c, 0x3b, 0xe0, 0x9b, 0x41, 0x97, 0xde, 0xa3, 0xb7, 0xff, 0xd9, + 0x58, 0x7a, 0x12, 0xb1, 0x9a, 0x59, 0x19, 0x97, 0x96, 0x9f, 0x8f, 0xf1, +}; +static const unsigned char kat4108_addinpr1[] = { + 0xea, 0x65, 0xa6, 0x8c, 0x4c, 0x90, 0x3e, 0xc9, 0xca, 0xa2, 0x7c, 0x24, + 0xeb, 0xbc, 0xd5, 0x3d, 0x77, 0x19, 0x07, 0x4a, 0x3e, 0x42, 0xa9, 0xdd, + 0x12, 0xfa, 0x16, 0x30, 0x92, 0x79, 0xea, 0x93, 0x8c, 0xf9, 0x2f, 0x22, + 0x63, 0x98, 0x52, 0xc4, 0x76, 0xc7, 0x4d, 0xf7, 0xc8, 0xaf, 0xd7, 0xa7, +}; +static const unsigned char kat4108_entropyinpr2[] = { + 0x42, 0x01, 0x7c, 0xe7, 0xb0, 0xb2, 0x16, 0x1d, 0xd0, 0xbe, 0xbd, 0xb9, + 0x3c, 0x5c, 0x82, 0x22, 0x56, 0x14, 0xdd, 0x01, 0x70, 0x0a, 0x80, 0xd5, + 0x95, 0xc2, 0xe2, 0x40, 0xd3, 0x44, 0x1b, 0x09, 0xb5, 0xba, 0x7e, 0x67, + 0x5b, 0x14, 0x34, 0xac, 0x23, 0x10, 0x0a, 0x3e, 0x6c, 0xb8, 0xde, 0x69, +}; +static const unsigned char kat4108_addinpr2[] = { + 0x88, 0x3c, 0xf0, 0x1c, 0x48, 0x82, 0xd0, 0xca, 0x03, 0xd5, 0xa5, 0x2f, + 0xec, 0xb2, 0x68, 0xbd, 0x22, 0x01, 0x1c, 0x04, 0xfc, 0xf2, 0x7a, 0x53, + 0xd8, 0x03, 0x79, 0xa1, 0xc2, 0xa7, 0xc9, 0x2c, 0x0f, 0xfa, 0xcc, 0xd9, + 0x3c, 0x7c, 0xd7, 0x83, 0x84, 0xab, 0xbe, 0x65, 0x31, 0x75, 0x38, 0xc3, +}; +static const unsigned char kat4108_retbits[] = { + 0x2b, 0x63, 0x13, 0xf2, 0x8a, 0x05, 0x5f, 0xbc, 0x9c, 0xd0, 0xec, 0xde, + 0x3b, 0x46, 0xec, 0x8f, 0x75, 0x28, 0x6c, 0x87, 0xb7, 0xdd, 0x7a, 0x41, + 0x9e, 0x44, 0x33, 0x54, 0x9f, 0xde, 0xca, 0xbf, 0xa0, 0xed, 0x40, 0xc6, + 0xd5, 0xab, 0x62, 0xe7, 0xc0, 0x6f, 0x78, 0x39, 0x7f, 0x24, 0xfe, 0x3f, + 0xc2, 0xeb, 0x91, 0x05, 0xc1, 0xf6, 0x28, 0x82, 0xae, 0xee, 0x8c, 0xd9, + 0x2c, 0x18, 0xa0, 0xbb, +}; +static const struct drbg_kat_pr_true kat4108_t = { + 12, kat4108_entropyin, kat4108_nonce, kat4108_persstr, + kat4108_entropyinpr1, kat4108_addinpr1, kat4108_entropyinpr2, + kat4108_addinpr2, kat4108_retbits +}; +static const struct drbg_kat kat4108 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4108_t +}; + +static const unsigned char kat4109_entropyin[] = { + 0xa4, 0x85, 0xac, 0x90, 0xee, 0xb9, 0xc4, 0xe3, 0x04, 0xa5, 0x9e, 0xcc, + 0xbf, 0xfe, 0x9b, 0x56, 0x5b, 0x5f, 0x80, 0x66, 0x15, 0x8e, 0xc3, 0xb6, + 0xd7, 0x51, 0x21, 0xbd, 0x59, 0xe4, 0x12, 0x2e, 0xcf, 0x90, 0x01, 0x40, + 0x66, 0x56, 0xdc, 0x2f, 0xc6, 0x12, 0x71, 0xf2, 0x84, 0xd4, 0x3c, 0x08, +}; +static const unsigned char kat4109_nonce[] = {0}; +static const unsigned char kat4109_persstr[] = {0}; +static const unsigned char kat4109_entropyinpr1[] = { + 0x76, 0xe3, 0x11, 0xf8, 0xde, 0x10, 0x8c, 0xbb, 0xc8, 0xc4, 0x57, 0xec, + 0x0e, 0x22, 0x76, 0x8f, 0x2d, 0x09, 0x2e, 0x79, 0x67, 0x67, 0x41, 0xac, + 0x1a, 0x6a, 0x81, 0x3e, 0xa4, 0x96, 0x84, 0x83, 0x4d, 0xbe, 0xc4, 0x31, + 0x49, 0x6e, 0x5b, 0xf0, 0xfb, 0xbd, 0x82, 0x19, 0xd3, 0xc8, 0xf1, 0x72, +}; +static const unsigned char kat4109_addinpr1[] = { + 0xaa, 0xc9, 0x5b, 0x6a, 0xb0, 0xd4, 0xb9, 0xff, 0xd7, 0xfa, 0xc9, 0x9e, + 0xa9, 0x15, 0xe4, 0xd3, 0xc7, 0x0d, 0x39, 0xb2, 0xd2, 0xb0, 0x90, 0x28, + 0x8c, 0xec, 0x64, 0xc4, 0x41, 0x19, 0x18, 0x4e, 0x67, 0x82, 0x07, 0x61, + 0x39, 0x96, 0x45, 0xa5, 0xe8, 0xd4, 0xb5, 0x24, 0xad, 0xae, 0x9b, 0x91, +}; +static const unsigned char kat4109_entropyinpr2[] = { + 0x20, 0x89, 0xbd, 0xc6, 0x8a, 0x9f, 0xc6, 0xa5, 0x48, 0xcd, 0xd1, 0x0c, + 0x7d, 0x68, 0x49, 0x7b, 0xbe, 0xc6, 0x08, 0x3e, 0x1a, 0x4e, 0xab, 0xbf, + 0xca, 0x99, 0x81, 0x2c, 0xcb, 0xe5, 0x8f, 0xab, 0x8d, 0x64, 0x6f, 0xd2, + 0xc3, 0xe1, 0x9b, 0xa5, 0x93, 0xe8, 0x53, 0x63, 0xd8, 0x1d, 0xbb, 0xba, +}; +static const unsigned char kat4109_addinpr2[] = { + 0x5a, 0x37, 0x2c, 0x60, 0xfc, 0x7d, 0xa6, 0x9e, 0x10, 0x0b, 0xdd, 0xc4, + 0x30, 0x98, 0xbf, 0xb6, 0xbb, 0x92, 0xcb, 0x48, 0x2c, 0xd9, 0x2a, 0xe7, + 0x13, 0xb6, 0x8c, 0xe8, 0x1f, 0x0c, 0xa5, 0xbb, 0xc0, 0x09, 0x3f, 0x4c, + 0xd8, 0x71, 0x62, 0x75, 0xaa, 0x43, 0xa5, 0x2d, 0x22, 0xdc, 0x16, 0x25, +}; +static const unsigned char kat4109_retbits[] = { + 0x83, 0xec, 0xd1, 0xa2, 0xcc, 0xc7, 0x93, 0x16, 0x61, 0x27, 0xf3, 0xa2, + 0x4c, 0x93, 0x25, 0x00, 0x27, 0x0a, 0x64, 0xcf, 0x66, 0x51, 0x8b, 0x1c, + 0xb6, 0x11, 0xc2, 0xf5, 0x96, 0x79, 0x24, 0xc1, 0x10, 0x3d, 0x01, 0xed, + 0xcd, 0x3e, 0xcf, 0xcb, 0x57, 0xbd, 0x7c, 0xf0, 0x26, 0x39, 0xa7, 0x6e, + 0x0f, 0xfb, 0x53, 0xdc, 0x1b, 0xe3, 0xd5, 0x59, 0x10, 0x7a, 0x0a, 0xad, + 0x82, 0xb8, 0x7f, 0xef, +}; +static const struct drbg_kat_pr_true kat4109_t = { + 13, kat4109_entropyin, kat4109_nonce, kat4109_persstr, + kat4109_entropyinpr1, kat4109_addinpr1, kat4109_entropyinpr2, + kat4109_addinpr2, kat4109_retbits +}; +static const struct drbg_kat kat4109 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4109_t +}; + +static const unsigned char kat4110_entropyin[] = { + 0x84, 0x06, 0x27, 0x44, 0x1c, 0x2c, 0x6d, 0xf1, 0x07, 0x9c, 0xa2, 0x70, + 0xcc, 0x24, 0x27, 0xd1, 0x62, 0x62, 0x3f, 0x98, 0xee, 0x96, 0xd9, 0x53, + 0x01, 0xff, 0x55, 0x97, 0xa3, 0xa0, 0x6b, 0x5f, 0x92, 0x82, 0xac, 0xe4, + 0x9c, 0x53, 0x88, 0x9f, 0xb1, 0x19, 0x21, 0xd0, 0x7a, 0x04, 0x62, 0x12, +}; +static const unsigned char kat4110_nonce[] = {0}; +static const unsigned char kat4110_persstr[] = {0}; +static const unsigned char kat4110_entropyinpr1[] = { + 0x4b, 0x35, 0x9a, 0xb5, 0xfb, 0x07, 0x21, 0xc2, 0x66, 0x62, 0x7b, 0x8c, + 0x3e, 0x54, 0xdc, 0x3f, 0x72, 0xb6, 0x62, 0x57, 0x80, 0x90, 0xc2, 0x30, + 0x52, 0x6f, 0x7c, 0xbc, 0x43, 0xff, 0xbd, 0x35, 0x67, 0x6f, 0x84, 0xbb, + 0xa5, 0x1e, 0xf0, 0xbe, 0xfb, 0x63, 0xa1, 0xfe, 0x6b, 0xd0, 0xf9, 0xc7, +}; +static const unsigned char kat4110_addinpr1[] = { + 0x7a, 0x2a, 0x57, 0x39, 0x7e, 0xaa, 0xcc, 0xc0, 0x2a, 0x2e, 0x8b, 0xe5, + 0x1c, 0xe8, 0x07, 0x88, 0xcc, 0x81, 0xe2, 0x16, 0xc8, 0xb9, 0x38, 0x3f, + 0x39, 0x11, 0x6f, 0x7b, 0x6f, 0x1c, 0x0a, 0x85, 0xad, 0x64, 0x80, 0xa8, + 0x8c, 0xa3, 0xce, 0xdf, 0x75, 0xee, 0x26, 0x63, 0x1f, 0x5f, 0xa1, 0x2a, +}; +static const unsigned char kat4110_entropyinpr2[] = { + 0x0d, 0x90, 0x37, 0xcf, 0x74, 0x5b, 0x3c, 0xf4, 0x16, 0x28, 0xeb, 0x15, + 0x38, 0xbb, 0x71, 0xb5, 0x91, 0x16, 0xda, 0x10, 0x49, 0xec, 0xd3, 0x6d, + 0x12, 0xd3, 0x44, 0xc5, 0xa1, 0x7e, 0x47, 0x1c, 0x8c, 0x4e, 0x72, 0xcf, + 0xdc, 0x7c, 0xa0, 0x53, 0x8c, 0x81, 0x08, 0x59, 0x52, 0x24, 0x1d, 0x68, +}; +static const unsigned char kat4110_addinpr2[] = { + 0xda, 0x29, 0x84, 0x6d, 0x4d, 0x48, 0xe3, 0xee, 0xac, 0x71, 0xab, 0x07, + 0xfa, 0xe9, 0xb9, 0xdb, 0xb6, 0xc5, 0xd8, 0x3c, 0xff, 0xb7, 0x5c, 0x67, + 0xbe, 0x10, 0xbb, 0x15, 0xe6, 0x2d, 0x9d, 0x9b, 0xf4, 0x57, 0x1a, 0xea, + 0x5a, 0xe4, 0x75, 0x22, 0x9b, 0x3c, 0x63, 0xba, 0x82, 0x44, 0xb8, 0x31, +}; +static const unsigned char kat4110_retbits[] = { + 0x7a, 0x7e, 0xd6, 0xe6, 0x32, 0x63, 0x0f, 0xfc, 0xf3, 0x2f, 0x03, 0x73, + 0xde, 0xb2, 0xc6, 0x7c, 0x6d, 0xcb, 0x77, 0xf0, 0x4f, 0x19, 0x91, 0xf8, + 0x9d, 0x5d, 0x25, 0xa3, 0xa8, 0xc3, 0x90, 0xac, 0x8a, 0xc3, 0x73, 0xb6, + 0x6c, 0x5d, 0xa9, 0x90, 0xc3, 0xfe, 0x28, 0xcd, 0x93, 0xf3, 0xa4, 0xf8, + 0xe5, 0x59, 0x4c, 0xae, 0x25, 0x49, 0x8e, 0xd7, 0x3f, 0x5f, 0x00, 0x1b, + 0x83, 0x17, 0x9b, 0x0c, +}; +static const struct drbg_kat_pr_true kat4110_t = { + 14, kat4110_entropyin, kat4110_nonce, kat4110_persstr, + kat4110_entropyinpr1, kat4110_addinpr1, kat4110_entropyinpr2, + kat4110_addinpr2, kat4110_retbits +}; +static const struct drbg_kat kat4110 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4110_t +}; + +static const unsigned char kat4111_entropyin[] = { + 0xc8, 0xf0, 0xc7, 0xb9, 0xbd, 0xf7, 0xe7, 0xd5, 0x24, 0xc9, 0x98, 0xae, + 0xde, 0xab, 0xb3, 0xb7, 0xdd, 0x4f, 0xa8, 0xf9, 0x5c, 0x51, 0xb5, 0x82, + 0x01, 0x0a, 0x5e, 0x09, 0xd0, 0xb4, 0xb1, 0xad, 0x51, 0x03, 0x02, 0x42, + 0x2d, 0xf7, 0x38, 0xfb, 0xef, 0x00, 0x2a, 0x05, 0x15, 0x43, 0xb4, 0xcc, +}; +static const unsigned char kat4111_nonce[] = {0}; +static const unsigned char kat4111_persstr[] = { + 0x3b, 0x8f, 0x2e, 0xd0, 0x3e, 0x4c, 0x4a, 0x85, 0x7e, 0xba, 0xf4, 0x73, + 0x01, 0x24, 0xae, 0x5b, 0x3f, 0xfa, 0x67, 0xe2, 0x94, 0x38, 0x1f, 0xe0, + 0x85, 0xe1, 0xd5, 0xb2, 0x5b, 0xb7, 0x9c, 0x22, 0x8f, 0x39, 0xb9, 0x91, + 0x2d, 0x8b, 0xf9, 0xe8, 0x4c, 0xdb, 0x43, 0xfc, 0xef, 0xb5, 0x52, 0xe0, +}; +static const unsigned char kat4111_entropyinpr1[] = { + 0xc1, 0xa7, 0xb1, 0x60, 0xc8, 0xe3, 0x3a, 0x01, 0xfb, 0xd4, 0x97, 0x43, + 0xdc, 0x11, 0x61, 0x53, 0x93, 0x90, 0xd9, 0xba, 0x6b, 0x87, 0x6f, 0xe6, + 0x3b, 0x58, 0xe8, 0xfd, 0x60, 0x5b, 0x98, 0x61, 0x73, 0x22, 0x57, 0x8b, + 0x17, 0xac, 0xa9, 0xdb, 0x71, 0xe8, 0x58, 0xb1, 0x54, 0xf9, 0x79, 0x10, +}; +static const unsigned char kat4111_addinpr1[] = {0}; +static const unsigned char kat4111_entropyinpr2[] = { + 0xd9, 0x8b, 0x25, 0xed, 0xa4, 0x1d, 0x15, 0xea, 0xcd, 0xec, 0xba, 0x58, + 0x66, 0x09, 0xd8, 0xc7, 0x43, 0x70, 0x4f, 0xa0, 0x99, 0xac, 0x37, 0xf9, + 0x18, 0x5b, 0xcb, 0x19, 0x65, 0x27, 0x23, 0xd1, 0x64, 0x84, 0x31, 0xa7, + 0x3c, 0x43, 0x99, 0x77, 0x3c, 0x85, 0xca, 0xf1, 0x2f, 0xcd, 0xd8, 0x42, +}; +static const unsigned char kat4111_addinpr2[] = {0}; +static const unsigned char kat4111_retbits[] = { + 0x33, 0x8d, 0xa5, 0x93, 0x50, 0xa7, 0x2b, 0xba, 0x94, 0xb2, 0x17, 0xb9, + 0x9f, 0xf8, 0x13, 0xfa, 0xfa, 0x85, 0xf3, 0x1f, 0xa7, 0xe9, 0x91, 0xd4, + 0x35, 0x0d, 0x6f, 0xce, 0x39, 0x47, 0x1a, 0xa2, 0x49, 0xc6, 0xa9, 0xe7, + 0xd1, 0x89, 0x64, 0x9e, 0xa6, 0x77, 0x0a, 0x15, 0xbe, 0x30, 0x2b, 0x94, + 0x3a, 0xd4, 0x03, 0x72, 0x8b, 0x73, 0x87, 0xf5, 0x98, 0x4c, 0x9b, 0xfb, + 0x82, 0x59, 0x77, 0x71, +}; +static const struct drbg_kat_pr_true kat4111_t = { + 0, kat4111_entropyin, kat4111_nonce, kat4111_persstr, + kat4111_entropyinpr1, kat4111_addinpr1, kat4111_entropyinpr2, + kat4111_addinpr2, kat4111_retbits +}; +static const struct drbg_kat kat4111 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4111_t +}; + +static const unsigned char kat4112_entropyin[] = { + 0x5f, 0xb3, 0xf3, 0x02, 0xc3, 0x6d, 0x0d, 0x0e, 0x28, 0xef, 0xb0, 0x65, + 0xdf, 0x59, 0x5e, 0xa6, 0x9a, 0x6b, 0x3e, 0xb4, 0x56, 0x22, 0xf9, 0xd1, + 0x40, 0x38, 0xeb, 0xcc, 0x0d, 0x4a, 0x8b, 0x0d, 0x6a, 0xa4, 0x5e, 0x68, + 0x1e, 0xdd, 0x5c, 0x50, 0x6e, 0x00, 0xf0, 0xdc, 0x12, 0x77, 0x5a, 0xc4, +}; +static const unsigned char kat4112_nonce[] = {0}; +static const unsigned char kat4112_persstr[] = { + 0xe4, 0xaf, 0xd4, 0x8a, 0x08, 0x35, 0x5c, 0xcb, 0xd0, 0x97, 0xbf, 0x5c, + 0x87, 0xe9, 0xaa, 0x6c, 0xca, 0x5b, 0xce, 0x84, 0xb2, 0x11, 0xef, 0x0c, + 0x78, 0x3d, 0x7e, 0x05, 0xcd, 0x52, 0xca, 0xae, 0x4b, 0x4d, 0x83, 0xde, + 0x53, 0xa8, 0x42, 0x00, 0xa5, 0x56, 0xb5, 0xaf, 0xf5, 0x04, 0x7b, 0x13, +}; +static const unsigned char kat4112_entropyinpr1[] = { + 0x64, 0x40, 0xcc, 0x8c, 0x73, 0x5c, 0xa9, 0xb0, 0x5f, 0x26, 0x13, 0x58, + 0xe5, 0x1b, 0x8b, 0x4f, 0x8c, 0x4b, 0xbd, 0xee, 0x9e, 0x26, 0x81, 0xc7, + 0x6f, 0xb5, 0x52, 0xbb, 0x6b, 0x62, 0x33, 0x40, 0x38, 0xbd, 0x8e, 0x03, + 0x94, 0xa4, 0xd5, 0x0f, 0x6a, 0xf7, 0xa7, 0xa9, 0x20, 0x37, 0x97, 0x99, +}; +static const unsigned char kat4112_addinpr1[] = {0}; +static const unsigned char kat4112_entropyinpr2[] = { + 0x2e, 0xd7, 0xe6, 0x11, 0x83, 0x94, 0xce, 0x10, 0xa8, 0x42, 0xd6, 0x09, + 0xba, 0xab, 0xfa, 0xef, 0x9d, 0x1c, 0x1f, 0xea, 0x91, 0x4b, 0xe4, 0xb7, + 0x25, 0x82, 0x2f, 0x94, 0x3f, 0xda, 0x02, 0x32, 0x44, 0xf8, 0x06, 0xa4, + 0x7b, 0x94, 0x4e, 0xa0, 0xc1, 0xb8, 0x53, 0xf3, 0x6b, 0xfa, 0x24, 0xf7, +}; +static const unsigned char kat4112_addinpr2[] = {0}; +static const unsigned char kat4112_retbits[] = { + 0xbe, 0x93, 0x33, 0x14, 0x04, 0x28, 0x55, 0x32, 0x31, 0x50, 0x5e, 0x8c, + 0xe3, 0xf7, 0x89, 0xf2, 0x86, 0x0f, 0x44, 0x64, 0x7d, 0x97, 0x23, 0x9c, + 0x0d, 0x34, 0xce, 0xe9, 0x8e, 0x0e, 0x4f, 0x5e, 0x5a, 0x5e, 0xb2, 0x96, + 0xd4, 0xce, 0xc5, 0x08, 0x62, 0x49, 0x13, 0x08, 0x0a, 0x1b, 0x44, 0x99, + 0x09, 0x93, 0xa2, 0xae, 0x63, 0xf6, 0x11, 0x24, 0xc4, 0xd8, 0x18, 0x4f, + 0x19, 0x1c, 0xa8, 0xae, +}; +static const struct drbg_kat_pr_true kat4112_t = { + 1, kat4112_entropyin, kat4112_nonce, kat4112_persstr, + kat4112_entropyinpr1, kat4112_addinpr1, kat4112_entropyinpr2, + kat4112_addinpr2, kat4112_retbits +}; +static const struct drbg_kat kat4112 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4112_t +}; + +static const unsigned char kat4113_entropyin[] = { + 0xf3, 0xfb, 0x24, 0x59, 0x2e, 0x88, 0xaa, 0x2b, 0xb3, 0x92, 0x1b, 0x46, + 0xe1, 0x98, 0x31, 0x0f, 0xd2, 0x69, 0x88, 0x3e, 0xb6, 0x8a, 0x78, 0x31, + 0xe5, 0x62, 0x7a, 0x5a, 0x6d, 0x21, 0x54, 0x38, 0x64, 0xed, 0xe3, 0xfb, + 0xc8, 0xba, 0xdc, 0x18, 0x88, 0xb0, 0xda, 0xf3, 0x7a, 0x97, 0xdd, 0x40, +}; +static const unsigned char kat4113_nonce[] = {0}; +static const unsigned char kat4113_persstr[] = { + 0xa1, 0xa8, 0x53, 0xff, 0xa7, 0x98, 0xf9, 0x3a, 0x60, 0x48, 0x74, 0xd4, + 0xc2, 0xc7, 0xfc, 0xf2, 0xac, 0x4a, 0x6e, 0xd1, 0xe0, 0x7e, 0x03, 0x33, + 0x6b, 0x7e, 0x3d, 0xdb, 0xf6, 0x03, 0xc1, 0x9f, 0x9d, 0x8b, 0x30, 0x41, + 0xcb, 0xe3, 0xac, 0x09, 0xe9, 0x6c, 0x86, 0xc8, 0xbd, 0xeb, 0xaa, 0xd6, +}; +static const unsigned char kat4113_entropyinpr1[] = { + 0xde, 0xda, 0x2a, 0x04, 0x3d, 0x03, 0x57, 0x44, 0xb5, 0xd0, 0xe6, 0x96, + 0xe4, 0x96, 0x38, 0x2f, 0xf0, 0xc0, 0x1c, 0xc7, 0x9c, 0x9f, 0x8f, 0x58, + 0x8b, 0x40, 0xd9, 0x34, 0x23, 0x7f, 0xdf, 0x7d, 0x0f, 0x9e, 0xa3, 0x89, + 0xcf, 0x28, 0xa3, 0x52, 0x91, 0x7c, 0x72, 0x41, 0x06, 0x41, 0x7d, 0x92, +}; +static const unsigned char kat4113_addinpr1[] = {0}; +static const unsigned char kat4113_entropyinpr2[] = { + 0xdc, 0xcf, 0xfb, 0x5e, 0x3c, 0xbf, 0x5e, 0x36, 0xeb, 0x1c, 0xa9, 0x2d, + 0xb6, 0x24, 0x7e, 0x1d, 0x6d, 0xc7, 0x77, 0xe5, 0x91, 0x89, 0x3e, 0x22, + 0x0b, 0x5c, 0xf5, 0x5c, 0x50, 0xc7, 0x4b, 0xae, 0x29, 0x95, 0xaf, 0xfb, + 0x00, 0x3a, 0x83, 0x06, 0x19, 0x77, 0x71, 0x73, 0x7a, 0xad, 0xdf, 0x64, +}; +static const unsigned char kat4113_addinpr2[] = {0}; +static const unsigned char kat4113_retbits[] = { + 0xcd, 0xec, 0xc0, 0x83, 0xb5, 0xc4, 0xbd, 0x38, 0xb5, 0x73, 0xc5, 0xe1, + 0x09, 0xfc, 0x1c, 0xbf, 0x2d, 0xbc, 0x92, 0x98, 0x2e, 0xd6, 0xd2, 0x4c, + 0xf4, 0xd2, 0xcb, 0x06, 0x38, 0x3b, 0xa2, 0x7d, 0x51, 0xdc, 0x06, 0x4a, + 0x8c, 0xf4, 0x22, 0x05, 0x42, 0x0d, 0x1c, 0x62, 0x50, 0x5b, 0x98, 0x7c, + 0x77, 0x45, 0x02, 0xb9, 0x3e, 0x83, 0x74, 0x85, 0x28, 0x4a, 0x13, 0x7c, + 0xf2, 0x38, 0x08, 0x72, +}; +static const struct drbg_kat_pr_true kat4113_t = { + 2, kat4113_entropyin, kat4113_nonce, kat4113_persstr, + kat4113_entropyinpr1, kat4113_addinpr1, kat4113_entropyinpr2, + kat4113_addinpr2, kat4113_retbits +}; +static const struct drbg_kat kat4113 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4113_t +}; + +static const unsigned char kat4114_entropyin[] = { + 0x8a, 0x0a, 0x52, 0xb1, 0xe2, 0x28, 0xc2, 0x6b, 0xe6, 0x49, 0x7b, 0x5c, + 0xad, 0x06, 0x77, 0xcf, 0xaa, 0x2c, 0x42, 0xa4, 0xfc, 0x42, 0x9c, 0x4b, + 0xad, 0xe7, 0xa4, 0x68, 0xce, 0x68, 0x1a, 0x73, 0x2f, 0x92, 0xdc, 0xeb, + 0xdf, 0x5b, 0x3d, 0x9a, 0x0d, 0xcf, 0xdb, 0x5c, 0x11, 0xa8, 0x30, 0xd4, +}; +static const unsigned char kat4114_nonce[] = {0}; +static const unsigned char kat4114_persstr[] = { + 0x93, 0x67, 0xc2, 0x13, 0x59, 0x3e, 0x3a, 0x82, 0x05, 0x9d, 0x3c, 0x80, + 0x51, 0x3c, 0x30, 0x1f, 0x0c, 0x84, 0x0c, 0x90, 0x0a, 0xe8, 0xf1, 0x8b, + 0x5b, 0xe5, 0x58, 0xd1, 0xfb, 0x8b, 0xd5, 0x28, 0xdb, 0xf9, 0x3e, 0x6e, + 0xfb, 0x7f, 0x3c, 0xd8, 0xfe, 0xd5, 0x77, 0xa3, 0xe2, 0x99, 0xbc, 0x76, +}; +static const unsigned char kat4114_entropyinpr1[] = { + 0x51, 0xa2, 0xf3, 0x87, 0x92, 0xfb, 0x87, 0x57, 0x07, 0x47, 0xa5, 0x4b, + 0x7a, 0x3f, 0x54, 0x73, 0x58, 0x3f, 0xaa, 0xce, 0xac, 0xd7, 0x0c, 0xd5, + 0xb5, 0x33, 0x6e, 0x8e, 0xcb, 0xbc, 0xc2, 0x86, 0x62, 0x79, 0x43, 0x99, + 0x92, 0x10, 0x57, 0x3e, 0xe7, 0xf8, 0xf2, 0x94, 0x37, 0xf7, 0x4b, 0x02, +}; +static const unsigned char kat4114_addinpr1[] = {0}; +static const unsigned char kat4114_entropyinpr2[] = { + 0x77, 0xef, 0xd9, 0x0b, 0xf6, 0xfa, 0xab, 0x8e, 0xd0, 0xbb, 0x32, 0xf1, + 0x38, 0xfe, 0xc4, 0xfe, 0x8a, 0xfd, 0x7e, 0x1a, 0x55, 0xb2, 0xe6, 0x0d, + 0x5d, 0x50, 0x0e, 0xbd, 0x57, 0xed, 0x38, 0x2a, 0xf9, 0x7d, 0x9e, 0xa8, + 0x93, 0x75, 0xfc, 0x56, 0xb5, 0x11, 0xcb, 0x67, 0x4e, 0x76, 0xe4, 0xf4, +}; +static const unsigned char kat4114_addinpr2[] = {0}; +static const unsigned char kat4114_retbits[] = { + 0xab, 0x14, 0x78, 0xcc, 0x75, 0xbb, 0xfd, 0xc9, 0x30, 0xfe, 0xfe, 0xff, + 0x1e, 0x6f, 0x8e, 0x7b, 0x82, 0x22, 0x13, 0x97, 0x6f, 0xc5, 0x56, 0xee, + 0x7f, 0x71, 0x55, 0x0d, 0x12, 0x86, 0x20, 0x76, 0x6d, 0x83, 0x53, 0xb3, + 0xc5, 0x4c, 0x59, 0x93, 0x4e, 0x7f, 0xa5, 0x7e, 0x8b, 0x85, 0x7c, 0x7d, + 0xae, 0xf8, 0xe9, 0xd8, 0x27, 0x05, 0xfd, 0x1f, 0xec, 0x7b, 0x19, 0xd5, + 0xc3, 0xb5, 0xaf, 0x4f, +}; +static const struct drbg_kat_pr_true kat4114_t = { + 3, kat4114_entropyin, kat4114_nonce, kat4114_persstr, + kat4114_entropyinpr1, kat4114_addinpr1, kat4114_entropyinpr2, + kat4114_addinpr2, kat4114_retbits +}; +static const struct drbg_kat kat4114 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4114_t +}; + +static const unsigned char kat4115_entropyin[] = { + 0x42, 0x56, 0xc1, 0xc6, 0xdc, 0xb9, 0x46, 0x3f, 0x75, 0x1d, 0x97, 0xc2, + 0xb9, 0xa1, 0xdf, 0x62, 0x9d, 0x2f, 0x6d, 0xb1, 0x9d, 0xfc, 0xe8, 0x0d, + 0xa4, 0x62, 0x4e, 0x5c, 0xeb, 0x24, 0x03, 0xae, 0x6f, 0x19, 0x06, 0xf2, + 0xd8, 0xe3, 0x4c, 0xb0, 0x15, 0x52, 0x5b, 0x27, 0xbb, 0x25, 0xc2, 0x62, +}; +static const unsigned char kat4115_nonce[] = {0}; +static const unsigned char kat4115_persstr[] = { + 0x88, 0xd9, 0xb7, 0xc5, 0x0d, 0x99, 0xc9, 0x26, 0xf0, 0x35, 0x08, 0x5a, + 0x7a, 0x8f, 0x02, 0x69, 0x8f, 0xde, 0x84, 0x5d, 0xb8, 0x50, 0x88, 0xe8, + 0x66, 0x18, 0x74, 0x07, 0xbd, 0xf7, 0x5b, 0x2c, 0x6c, 0xb6, 0x28, 0xd5, + 0x08, 0x1c, 0x85, 0x9a, 0x5d, 0x73, 0x88, 0x26, 0xd2, 0xe8, 0xc1, 0xee, +}; +static const unsigned char kat4115_entropyinpr1[] = { + 0x8b, 0xa0, 0x3c, 0x22, 0x83, 0xb9, 0x7a, 0x37, 0x06, 0x3a, 0x45, 0x97, + 0xf7, 0xca, 0x15, 0xfb, 0x2d, 0xf7, 0xb0, 0xde, 0x1e, 0x22, 0x36, 0xb8, + 0x33, 0x8f, 0x14, 0x53, 0x9c, 0x05, 0x9d, 0x1a, 0x47, 0xa9, 0x47, 0xbc, + 0x9a, 0x3e, 0xf9, 0x54, 0xc8, 0x33, 0xff, 0xfa, 0xff, 0x8f, 0xa8, 0xff, +}; +static const unsigned char kat4115_addinpr1[] = {0}; +static const unsigned char kat4115_entropyinpr2[] = { + 0xc5, 0xd3, 0xa8, 0x8d, 0xe9, 0xdb, 0x79, 0xdd, 0x70, 0x71, 0x87, 0xdf, + 0xe5, 0xd3, 0x54, 0x43, 0xf7, 0xea, 0xda, 0x16, 0x69, 0xd5, 0xda, 0xf3, + 0x9a, 0xf4, 0xd7, 0x8f, 0xff, 0x3f, 0xd3, 0x5f, 0x0e, 0x81, 0x92, 0x2a, + 0x20, 0x7e, 0x64, 0x0c, 0xba, 0x2c, 0x9f, 0xb1, 0x82, 0x80, 0xf6, 0x2d, +}; +static const unsigned char kat4115_addinpr2[] = {0}; +static const unsigned char kat4115_retbits[] = { + 0xf6, 0x4d, 0x6a, 0xc3, 0xfd, 0x9b, 0xed, 0xa9, 0xea, 0x4b, 0x3f, 0xc2, + 0x92, 0x1e, 0x96, 0x7d, 0x12, 0x6a, 0xb4, 0xe7, 0x47, 0xeb, 0x4f, 0x29, + 0xbf, 0xd9, 0x49, 0xf9, 0x41, 0x19, 0x27, 0x10, 0x52, 0xff, 0x52, 0x50, + 0x1c, 0xb4, 0x5a, 0xf6, 0xbf, 0x94, 0x99, 0xef, 0x59, 0x26, 0x42, 0x3f, + 0x61, 0xbd, 0x4d, 0xac, 0x0b, 0x28, 0xfc, 0x95, 0xaa, 0x88, 0x6c, 0x82, + 0x26, 0xea, 0x27, 0xb4, +}; +static const struct drbg_kat_pr_true kat4115_t = { + 4, kat4115_entropyin, kat4115_nonce, kat4115_persstr, + kat4115_entropyinpr1, kat4115_addinpr1, kat4115_entropyinpr2, + kat4115_addinpr2, kat4115_retbits +}; +static const struct drbg_kat kat4115 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4115_t +}; + +static const unsigned char kat4116_entropyin[] = { + 0x6e, 0x92, 0x42, 0x7a, 0x94, 0x81, 0x6c, 0x83, 0x8e, 0xf5, 0x7f, 0x9d, + 0x98, 0x94, 0x1f, 0xfc, 0x3c, 0xd0, 0x70, 0xc7, 0x6f, 0xcc, 0x19, 0xe7, + 0x65, 0xf9, 0xb1, 0xf9, 0xd3, 0x90, 0xec, 0x99, 0xf0, 0xb5, 0x19, 0x3f, + 0xd7, 0x2a, 0x3d, 0x70, 0x0d, 0xea, 0xef, 0xfe, 0xa6, 0xc2, 0x28, 0x2e, +}; +static const unsigned char kat4116_nonce[] = {0}; +static const unsigned char kat4116_persstr[] = { + 0x6d, 0x76, 0x21, 0xae, 0x46, 0x0a, 0xe1, 0x0c, 0x8c, 0x8d, 0x0e, 0x11, + 0xc8, 0x0a, 0xa4, 0x44, 0xe2, 0x79, 0xf2, 0xce, 0xf7, 0xda, 0x2a, 0x0e, + 0x52, 0xfe, 0x43, 0xed, 0xfa, 0x02, 0x5c, 0x67, 0xba, 0x01, 0x11, 0xb6, + 0xa2, 0x77, 0x4b, 0x06, 0x20, 0xea, 0xe6, 0x5a, 0xa2, 0xbc, 0x29, 0x2c, +}; +static const unsigned char kat4116_entropyinpr1[] = { + 0x8e, 0x71, 0x59, 0x35, 0x07, 0x59, 0xfe, 0x73, 0xe6, 0xc5, 0x1a, 0xb2, + 0x24, 0xed, 0xa1, 0xcd, 0x76, 0x9c, 0x70, 0x3a, 0x42, 0xa7, 0x9d, 0x3c, + 0x4c, 0xe4, 0x07, 0xaa, 0x99, 0xc8, 0x42, 0x7f, 0x87, 0x2b, 0x7c, 0x3e, + 0x09, 0x55, 0x9c, 0x78, 0x9c, 0xb7, 0x5c, 0x54, 0x6d, 0xde, 0xb9, 0x88, +}; +static const unsigned char kat4116_addinpr1[] = {0}; +static const unsigned char kat4116_entropyinpr2[] = { + 0xdb, 0x12, 0xfb, 0x9c, 0x2f, 0x1c, 0xc0, 0x22, 0x76, 0x8f, 0x82, 0x4d, + 0xfd, 0x05, 0xed, 0xc6, 0xd5, 0x71, 0x84, 0xee, 0x0e, 0x51, 0xce, 0x8d, + 0xec, 0xc7, 0x4c, 0x39, 0x0a, 0xde, 0xe6, 0x3e, 0xe4, 0x01, 0xa7, 0xd3, + 0xbb, 0x0a, 0x91, 0xc1, 0xd5, 0x0f, 0xd2, 0x23, 0x9d, 0xc3, 0xfa, 0x57, +}; +static const unsigned char kat4116_addinpr2[] = {0}; +static const unsigned char kat4116_retbits[] = { + 0x45, 0xe3, 0xbf, 0xaf, 0xaa, 0x00, 0x94, 0x14, 0x59, 0xb3, 0x73, 0xaa, + 0x00, 0xe6, 0x09, 0x6b, 0x75, 0x27, 0x11, 0x0f, 0x4c, 0x6e, 0x4e, 0x7d, + 0x66, 0x61, 0x82, 0x9d, 0xfe, 0x4a, 0xd8, 0x3a, 0xb2, 0x3a, 0x57, 0x79, + 0xdc, 0x7f, 0x81, 0x16, 0xb7, 0x3b, 0x92, 0x9f, 0xc3, 0xda, 0x43, 0xad, + 0x34, 0x6a, 0x3e, 0x11, 0x36, 0x4e, 0x1b, 0x45, 0x3e, 0x66, 0x33, 0x5b, + 0x5c, 0xbf, 0x59, 0xb1, +}; +static const struct drbg_kat_pr_true kat4116_t = { + 5, kat4116_entropyin, kat4116_nonce, kat4116_persstr, + kat4116_entropyinpr1, kat4116_addinpr1, kat4116_entropyinpr2, + kat4116_addinpr2, kat4116_retbits +}; +static const struct drbg_kat kat4116 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4116_t +}; + +static const unsigned char kat4117_entropyin[] = { + 0x14, 0x93, 0x2f, 0x8e, 0xe3, 0xec, 0x21, 0x19, 0xe0, 0x3b, 0x65, 0xdd, + 0xe5, 0x3c, 0x2c, 0x41, 0x56, 0xb8, 0x01, 0x3c, 0x4d, 0x1c, 0x26, 0x02, + 0x27, 0xb2, 0x40, 0xaf, 0x61, 0xbb, 0xd0, 0xef, 0xed, 0xcd, 0xcd, 0x4f, + 0xbc, 0x82, 0x8d, 0xc6, 0x88, 0xce, 0xf0, 0xb2, 0x5b, 0xb1, 0x23, 0x74, +}; +static const unsigned char kat4117_nonce[] = {0}; +static const unsigned char kat4117_persstr[] = { + 0x3d, 0xc5, 0x24, 0x87, 0xf8, 0x66, 0xee, 0xf2, 0x7a, 0x6a, 0xaa, 0x0f, + 0x3d, 0xa8, 0x7c, 0x09, 0xc8, 0x59, 0xba, 0xbb, 0xb7, 0x3e, 0x17, 0x71, + 0x62, 0x6c, 0xa4, 0x34, 0x53, 0x4a, 0x66, 0xb0, 0x2e, 0x56, 0x13, 0x63, + 0xdb, 0x90, 0x79, 0x8e, 0xdb, 0x55, 0xcc, 0xed, 0x27, 0x46, 0x76, 0x7a, +}; +static const unsigned char kat4117_entropyinpr1[] = { + 0xa5, 0xd0, 0x63, 0xe9, 0x66, 0xeb, 0xfa, 0x8b, 0xb0, 0x5f, 0xc0, 0xc0, + 0x62, 0x5a, 0x30, 0xd0, 0xa4, 0x08, 0xe5, 0xe3, 0x1e, 0xc9, 0x66, 0x73, + 0x74, 0xcc, 0xcc, 0xbc, 0xc0, 0x7f, 0x6c, 0x28, 0x9e, 0xcd, 0xf3, 0xde, + 0xb3, 0xf7, 0x84, 0x92, 0x5e, 0x7e, 0x72, 0xc7, 0x51, 0x05, 0xbf, 0x54, +}; +static const unsigned char kat4117_addinpr1[] = {0}; +static const unsigned char kat4117_entropyinpr2[] = { + 0x31, 0xd8, 0xab, 0x37, 0x20, 0x1b, 0x55, 0x66, 0x21, 0x01, 0xad, 0x23, + 0x58, 0x83, 0xc2, 0x8e, 0xcf, 0xb5, 0xc9, 0xe3, 0xcf, 0x04, 0x98, 0xf6, + 0xcd, 0x56, 0x3d, 0xb9, 0x6f, 0x62, 0x2e, 0x56, 0x56, 0x96, 0x72, 0x56, + 0xc7, 0xc3, 0xef, 0xc2, 0xca, 0x3c, 0x57, 0x7b, 0xe0, 0x2d, 0xe3, 0xce, +}; +static const unsigned char kat4117_addinpr2[] = {0}; +static const unsigned char kat4117_retbits[] = { + 0x8b, 0xc9, 0x8d, 0x27, 0x05, 0x0e, 0x71, 0x3d, 0x19, 0x55, 0x1e, 0xad, + 0xae, 0x19, 0xd1, 0x4f, 0x3b, 0x13, 0x04, 0xaa, 0x6f, 0x73, 0x6d, 0x9b, + 0xec, 0x6c, 0x7c, 0xc9, 0x0c, 0x85, 0x41, 0x2a, 0x4e, 0x6a, 0x72, 0x18, + 0xb8, 0xa7, 0xce, 0x46, 0xb1, 0xcb, 0x93, 0xfa, 0x1b, 0x29, 0x6e, 0xee, + 0x78, 0x9a, 0xae, 0x0c, 0xb2, 0xa5, 0x8f, 0xe7, 0xa8, 0x0e, 0x26, 0xf0, + 0xa1, 0x01, 0x8d, 0xc8, +}; +static const struct drbg_kat_pr_true kat4117_t = { + 6, kat4117_entropyin, kat4117_nonce, kat4117_persstr, + kat4117_entropyinpr1, kat4117_addinpr1, kat4117_entropyinpr2, + kat4117_addinpr2, kat4117_retbits +}; +static const struct drbg_kat kat4117 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4117_t +}; + +static const unsigned char kat4118_entropyin[] = { + 0xa7, 0xd7, 0xb5, 0x6b, 0xdf, 0x38, 0xb5, 0x7d, 0x74, 0x18, 0xae, 0x3f, + 0x3a, 0x90, 0x37, 0x5d, 0x7a, 0xaf, 0xc3, 0x83, 0x9a, 0x29, 0x56, 0xf6, + 0x82, 0x4d, 0x1c, 0x55, 0xd6, 0x15, 0x96, 0x62, 0x07, 0xa5, 0xef, 0x31, + 0xe2, 0xbf, 0x83, 0x59, 0xdb, 0x10, 0x70, 0x61, 0x2a, 0xd6, 0xd7, 0x75, +}; +static const unsigned char kat4118_nonce[] = {0}; +static const unsigned char kat4118_persstr[] = { + 0x01, 0x5c, 0x5a, 0x1d, 0x1f, 0x9e, 0x2a, 0xeb, 0x34, 0x71, 0x37, 0x67, + 0xa5, 0x8d, 0x01, 0xb0, 0x05, 0x5a, 0x27, 0x15, 0x1b, 0xaf, 0xbd, 0x0a, + 0xfc, 0x31, 0xfc, 0x22, 0xd7, 0x65, 0xe5, 0x7f, 0x65, 0xff, 0xc2, 0x82, + 0xab, 0xa7, 0x26, 0xa2, 0xec, 0x5a, 0x7c, 0x36, 0xa3, 0x3c, 0x0e, 0xcc, +}; +static const unsigned char kat4118_entropyinpr1[] = { + 0xf4, 0x80, 0xe7, 0xc9, 0x70, 0xc0, 0x2a, 0x5a, 0x64, 0xb0, 0x9f, 0x04, + 0x73, 0xd0, 0x4b, 0x65, 0x8e, 0x19, 0x33, 0x26, 0x34, 0x04, 0x35, 0x69, + 0xe2, 0x49, 0x96, 0x98, 0x1f, 0x7d, 0x51, 0x5d, 0x32, 0x6a, 0xd1, 0x12, + 0x96, 0x61, 0x63, 0x87, 0x53, 0xd1, 0x17, 0xe8, 0xd3, 0x1a, 0x54, 0x0f, +}; +static const unsigned char kat4118_addinpr1[] = {0}; +static const unsigned char kat4118_entropyinpr2[] = { + 0x08, 0x54, 0xd1, 0xa0, 0xaa, 0x78, 0xe3, 0xe6, 0x0b, 0x68, 0x25, 0xd1, + 0x43, 0xea, 0xa9, 0x7e, 0xc7, 0xdd, 0xd1, 0xb8, 0xb8, 0x5c, 0x26, 0xb6, + 0x25, 0xfe, 0x4d, 0xa7, 0x97, 0x3d, 0x64, 0x3c, 0xd0, 0x62, 0x91, 0x86, + 0xc4, 0x29, 0x28, 0xc8, 0xe4, 0x68, 0x57, 0xa6, 0x03, 0xe5, 0xac, 0x0c, +}; +static const unsigned char kat4118_addinpr2[] = {0}; +static const unsigned char kat4118_retbits[] = { + 0x79, 0x41, 0x28, 0xd6, 0x81, 0xd3, 0x55, 0x33, 0x61, 0x48, 0xee, 0xb4, + 0xdd, 0x88, 0x2d, 0x76, 0xef, 0x98, 0x4f, 0x2a, 0x8c, 0xeb, 0x4b, 0x45, + 0x1e, 0x9b, 0x37, 0xbe, 0xac, 0x0f, 0xb5, 0x02, 0x47, 0xbd, 0x59, 0x5e, + 0xde, 0x2d, 0xe0, 0x00, 0xf4, 0x39, 0x79, 0x88, 0xd3, 0xf5, 0x2e, 0x0b, + 0x3b, 0x29, 0x32, 0x08, 0xc1, 0x6b, 0x5f, 0x45, 0xd6, 0x03, 0x2b, 0xc5, + 0xef, 0x20, 0xb3, 0xc8, +}; +static const struct drbg_kat_pr_true kat4118_t = { + 7, kat4118_entropyin, kat4118_nonce, kat4118_persstr, + kat4118_entropyinpr1, kat4118_addinpr1, kat4118_entropyinpr2, + kat4118_addinpr2, kat4118_retbits +}; +static const struct drbg_kat kat4118 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4118_t +}; + +static const unsigned char kat4119_entropyin[] = { + 0x89, 0xdf, 0xbb, 0x4a, 0x10, 0xba, 0xd1, 0xc2, 0x69, 0x34, 0x1b, 0x78, + 0x15, 0xac, 0x13, 0x88, 0xa7, 0xd2, 0x8b, 0xff, 0x83, 0x93, 0xe0, 0x78, + 0xd9, 0x9a, 0x0c, 0xdf, 0x12, 0xd0, 0xf2, 0x8a, 0x24, 0xe4, 0x54, 0x41, + 0xc8, 0x65, 0x84, 0x82, 0x9c, 0xe3, 0x7d, 0x4e, 0xb3, 0xb2, 0x88, 0x73, +}; +static const unsigned char kat4119_nonce[] = {0}; +static const unsigned char kat4119_persstr[] = { + 0x52, 0x35, 0xd1, 0xb8, 0xea, 0x0e, 0x83, 0x61, 0x8a, 0x75, 0x5c, 0x59, + 0x8f, 0xa8, 0xe7, 0x4d, 0x6e, 0x42, 0x5f, 0x94, 0x62, 0x49, 0xe8, 0x0f, + 0x12, 0xd8, 0x5d, 0x3e, 0x1c, 0x54, 0x7d, 0x50, 0x48, 0xf2, 0x35, 0x68, + 0x7d, 0xc9, 0x3c, 0x86, 0xcb, 0xb6, 0x91, 0x38, 0x4f, 0x88, 0x94, 0x08, +}; +static const unsigned char kat4119_entropyinpr1[] = { + 0x6d, 0x14, 0xb6, 0x71, 0xea, 0xa6, 0x6e, 0x21, 0x7d, 0xd9, 0x73, 0x04, + 0x7b, 0x61, 0x80, 0xb7, 0xdb, 0xd2, 0xc2, 0x9b, 0x70, 0x9f, 0xce, 0x01, + 0x4b, 0xcf, 0xda, 0x25, 0xe2, 0x69, 0xbf, 0x5a, 0x73, 0x6d, 0x71, 0x54, + 0x30, 0x8a, 0xa0, 0x59, 0x7c, 0x5f, 0x5a, 0xdc, 0x3e, 0xb4, 0xcd, 0xd9, +}; +static const unsigned char kat4119_addinpr1[] = {0}; +static const unsigned char kat4119_entropyinpr2[] = { + 0x7c, 0x0a, 0x71, 0xa8, 0xf5, 0x6a, 0xc0, 0xb5, 0x76, 0x65, 0x25, 0xb0, + 0xf6, 0x3a, 0xfe, 0x48, 0xf4, 0xa0, 0xd2, 0x82, 0xad, 0xf3, 0x00, 0xf9, + 0xda, 0x47, 0xac, 0x62, 0x69, 0x3f, 0x0d, 0x74, 0xf6, 0x73, 0x91, 0x28, + 0xc6, 0x10, 0x24, 0xa2, 0x2f, 0x74, 0x69, 0xd8, 0x22, 0x38, 0x2c, 0xfb, +}; +static const unsigned char kat4119_addinpr2[] = {0}; +static const unsigned char kat4119_retbits[] = { + 0x35, 0x71, 0x38, 0x3b, 0x97, 0x12, 0x91, 0xe3, 0x76, 0x16, 0xf1, 0xc6, + 0xaf, 0x62, 0x3a, 0x1d, 0x57, 0x6c, 0xc5, 0xf9, 0x50, 0x90, 0x56, 0x36, + 0x54, 0x42, 0x0f, 0x18, 0x4f, 0xc6, 0x66, 0x32, 0x42, 0xae, 0xff, 0xb0, + 0x60, 0x52, 0xa2, 0x9e, 0x84, 0x38, 0x0d, 0xb3, 0x8d, 0x9f, 0x3e, 0xd0, + 0x98, 0x23, 0xdf, 0xef, 0x17, 0x74, 0xc1, 0x41, 0x20, 0xfb, 0x01, 0x06, + 0x00, 0xb7, 0xb2, 0x74, +}; +static const struct drbg_kat_pr_true kat4119_t = { + 8, kat4119_entropyin, kat4119_nonce, kat4119_persstr, + kat4119_entropyinpr1, kat4119_addinpr1, kat4119_entropyinpr2, + kat4119_addinpr2, kat4119_retbits +}; +static const struct drbg_kat kat4119 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4119_t +}; + +static const unsigned char kat4120_entropyin[] = { + 0xd0, 0xda, 0xca, 0x07, 0x3b, 0x0c, 0x15, 0x17, 0xb9, 0xd6, 0x64, 0x3c, + 0x51, 0x81, 0x30, 0x58, 0x0f, 0x25, 0x4b, 0x48, 0x2d, 0x4c, 0x44, 0xb7, + 0x35, 0x59, 0x0e, 0x16, 0x7b, 0x06, 0xb3, 0x04, 0xe0, 0x66, 0x4b, 0x8e, + 0x12, 0xd9, 0xc8, 0xdd, 0x08, 0x3f, 0x4b, 0x75, 0x8e, 0x7b, 0x3d, 0x81, +}; +static const unsigned char kat4120_nonce[] = {0}; +static const unsigned char kat4120_persstr[] = { + 0x06, 0x17, 0x0a, 0x3a, 0x66, 0x30, 0x8c, 0xea, 0x0a, 0xb1, 0xf4, 0x4e, + 0x68, 0x8e, 0x7a, 0x4f, 0x69, 0xa4, 0xfe, 0x43, 0x5c, 0xc3, 0x25, 0xdc, + 0x55, 0x47, 0x71, 0xb4, 0x15, 0x66, 0x14, 0xc7, 0x7d, 0x3c, 0x21, 0x37, + 0x7c, 0xa5, 0x52, 0xe6, 0xd5, 0xac, 0x9b, 0x7f, 0xfb, 0x52, 0xf1, 0xa3, +}; +static const unsigned char kat4120_entropyinpr1[] = { + 0x44, 0x41, 0x27, 0x73, 0x88, 0xba, 0xf0, 0xae, 0x4d, 0x69, 0xb0, 0xc1, + 0xdb, 0x2b, 0x4d, 0x76, 0x76, 0x47, 0x73, 0x0e, 0x10, 0xcf, 0x11, 0x91, + 0xcd, 0x10, 0xfd, 0x2e, 0xba, 0x57, 0x0d, 0x34, 0x8e, 0x54, 0x4c, 0xea, + 0x06, 0x41, 0xaf, 0x89, 0x41, 0x8c, 0x90, 0x0c, 0xcb, 0xf2, 0xca, 0x20, +}; +static const unsigned char kat4120_addinpr1[] = {0}; +static const unsigned char kat4120_entropyinpr2[] = { + 0x21, 0x80, 0xdc, 0x1f, 0x5f, 0x17, 0xf5, 0xf8, 0xcb, 0xb8, 0x49, 0x9e, + 0x15, 0x5d, 0xe4, 0xbd, 0x50, 0xe0, 0xf2, 0x17, 0x50, 0x41, 0xc2, 0x4d, + 0x1c, 0x72, 0xf6, 0x54, 0xaf, 0x8a, 0x08, 0x56, 0x3b, 0x1c, 0x42, 0xa8, + 0x4c, 0x5a, 0xe1, 0x26, 0xef, 0x33, 0xe1, 0x90, 0x9b, 0xce, 0xe3, 0x8f, +}; +static const unsigned char kat4120_addinpr2[] = {0}; +static const unsigned char kat4120_retbits[] = { + 0xb7, 0x72, 0x3a, 0x01, 0xd3, 0x50, 0x11, 0xa9, 0xa8, 0xe0, 0xe8, 0x2a, + 0x8a, 0xde, 0x37, 0xd5, 0xe9, 0x92, 0xd8, 0xcc, 0x53, 0x90, 0xe2, 0x40, + 0x9e, 0x18, 0x5a, 0x1b, 0xce, 0xde, 0x39, 0xb7, 0x42, 0xfa, 0x1f, 0xa5, + 0x41, 0x57, 0x2a, 0xa3, 0x6b, 0x16, 0xbe, 0x41, 0x0f, 0x3c, 0xa0, 0xca, + 0x85, 0x3f, 0xfd, 0x7c, 0xea, 0x29, 0x96, 0xe8, 0x52, 0xb8, 0x88, 0xfe, + 0x9b, 0x12, 0x63, 0xf9, +}; +static const struct drbg_kat_pr_true kat4120_t = { + 9, kat4120_entropyin, kat4120_nonce, kat4120_persstr, + kat4120_entropyinpr1, kat4120_addinpr1, kat4120_entropyinpr2, + kat4120_addinpr2, kat4120_retbits +}; +static const struct drbg_kat kat4120 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4120_t +}; + +static const unsigned char kat4121_entropyin[] = { + 0x48, 0xe6, 0x17, 0x78, 0x13, 0xad, 0x0d, 0xd8, 0xda, 0x85, 0x06, 0xa9, + 0x1f, 0xe0, 0xd4, 0xe6, 0x15, 0xbd, 0xd0, 0x68, 0xb4, 0x23, 0x05, 0x0a, + 0x1d, 0xfc, 0x94, 0xe1, 0xcb, 0xaa, 0x2b, 0xbe, 0xb2, 0xf9, 0x25, 0x61, + 0x39, 0x1a, 0x4f, 0x54, 0x14, 0x3a, 0xc4, 0x6a, 0x74, 0xd5, 0x7c, 0x03, +}; +static const unsigned char kat4121_nonce[] = {0}; +static const unsigned char kat4121_persstr[] = { + 0x76, 0x7f, 0xa9, 0x41, 0x28, 0xaa, 0x6e, 0x71, 0xdf, 0xbf, 0xb4, 0xc1, + 0x6b, 0xe3, 0x3c, 0x48, 0x94, 0x1c, 0x5c, 0xcb, 0xf9, 0x6e, 0x80, 0x94, + 0x36, 0x5f, 0x58, 0x18, 0x10, 0xce, 0x94, 0xb3, 0xfe, 0xb8, 0x96, 0x0b, + 0x99, 0xeb, 0x92, 0x5b, 0x0c, 0x61, 0x84, 0xdb, 0x40, 0x34, 0x38, 0x49, +}; +static const unsigned char kat4121_entropyinpr1[] = { + 0xf9, 0xd7, 0x61, 0xf5, 0x89, 0xd8, 0xe4, 0x66, 0x12, 0x32, 0x57, 0xd4, + 0xb1, 0x44, 0xe4, 0x01, 0x06, 0xbe, 0x6a, 0x06, 0x36, 0x43, 0x54, 0x7b, + 0x85, 0x49, 0x73, 0x31, 0x34, 0xb3, 0x37, 0x57, 0x15, 0x15, 0x72, 0x46, + 0xa9, 0xbf, 0x9a, 0x91, 0xf8, 0x54, 0xa3, 0x7c, 0xe7, 0xef, 0xb3, 0xe1, +}; +static const unsigned char kat4121_addinpr1[] = {0}; +static const unsigned char kat4121_entropyinpr2[] = { + 0xb7, 0x74, 0x61, 0x6e, 0x89, 0xa2, 0x29, 0x7c, 0xe5, 0xfe, 0xea, 0x2f, + 0x57, 0x08, 0xeb, 0x0f, 0xd2, 0x1f, 0x3a, 0xe1, 0x88, 0xae, 0x25, 0xc6, + 0x4c, 0x8b, 0xce, 0xe7, 0x3b, 0xe4, 0x0d, 0xb2, 0xaf, 0x5d, 0x8e, 0x64, + 0x0c, 0xcd, 0x48, 0xb8, 0xcd, 0xc7, 0x37, 0x5e, 0x5c, 0x53, 0xca, 0xd7, +}; +static const unsigned char kat4121_addinpr2[] = {0}; +static const unsigned char kat4121_retbits[] = { + 0x0d, 0x42, 0xad, 0x75, 0xa6, 0x70, 0x08, 0x67, 0x4b, 0xe7, 0xd8, 0x1b, + 0xb2, 0xca, 0x9f, 0x06, 0x25, 0xb5, 0x5e, 0xa3, 0x7e, 0x19, 0x85, 0xd3, + 0xa2, 0x7c, 0xac, 0x38, 0xe3, 0x47, 0x82, 0x4f, 0xf0, 0x3c, 0xaa, 0xae, + 0xae, 0x9b, 0x64, 0x6a, 0x22, 0x0a, 0x8a, 0x67, 0x2c, 0xb2, 0x8b, 0xa8, + 0x69, 0xd0, 0xf5, 0x3e, 0x33, 0x17, 0xbe, 0x00, 0x12, 0x8f, 0xa9, 0x65, + 0xa8, 0xea, 0x7b, 0x39, +}; +static const struct drbg_kat_pr_true kat4121_t = { + 10, kat4121_entropyin, kat4121_nonce, kat4121_persstr, + kat4121_entropyinpr1, kat4121_addinpr1, kat4121_entropyinpr2, + kat4121_addinpr2, kat4121_retbits +}; +static const struct drbg_kat kat4121 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4121_t +}; + +static const unsigned char kat4122_entropyin[] = { + 0x35, 0x07, 0x21, 0x4c, 0x35, 0x9f, 0x4a, 0xb7, 0x59, 0x04, 0xdd, 0x4e, + 0x43, 0x0c, 0xcf, 0xd4, 0x84, 0xb8, 0x53, 0xb4, 0x0b, 0x72, 0x53, 0xd4, + 0x30, 0x11, 0x15, 0x88, 0x41, 0x0f, 0x1c, 0x9f, 0xc4, 0x1e, 0x75, 0x7f, + 0x66, 0x9d, 0x3d, 0xe4, 0x5a, 0x3c, 0x0e, 0xfd, 0xeb, 0x25, 0x0b, 0xd3, +}; +static const unsigned char kat4122_nonce[] = {0}; +static const unsigned char kat4122_persstr[] = { + 0x80, 0x6f, 0x8f, 0xf2, 0x5a, 0xc8, 0xc4, 0xd6, 0x1f, 0xe8, 0xcc, 0x89, + 0x5f, 0x5c, 0x5d, 0x2e, 0x15, 0x37, 0x01, 0xb5, 0xc2, 0xcc, 0x8e, 0xf6, + 0xb4, 0xff, 0x7e, 0xc5, 0xf6, 0x27, 0x3b, 0x28, 0x56, 0x95, 0x00, 0x00, + 0x16, 0xe7, 0xd5, 0xa6, 0x14, 0x5f, 0x4f, 0x98, 0xf4, 0xa4, 0x2b, 0xf9, +}; +static const unsigned char kat4122_entropyinpr1[] = { + 0x83, 0x64, 0xb8, 0x16, 0xf4, 0xc6, 0x43, 0x59, 0xe5, 0x44, 0x15, 0x08, + 0x2f, 0xd5, 0xb0, 0x4c, 0xb8, 0x96, 0xbd, 0x5d, 0xe5, 0x52, 0x7b, 0x09, + 0x30, 0xfc, 0x6a, 0x85, 0x5d, 0x2a, 0x31, 0xb5, 0x5c, 0xba, 0x81, 0xab, + 0x25, 0xb0, 0x19, 0xad, 0xc7, 0xcc, 0x7c, 0x7a, 0x6f, 0x30, 0x8c, 0x4c, +}; +static const unsigned char kat4122_addinpr1[] = {0}; +static const unsigned char kat4122_entropyinpr2[] = { + 0xab, 0x2a, 0x1d, 0x12, 0xb1, 0x99, 0x7f, 0x5a, 0x1b, 0x74, 0xd6, 0x60, + 0x8e, 0x60, 0xf0, 0x96, 0x82, 0x92, 0x4f, 0xcc, 0x42, 0x70, 0xfd, 0x5f, + 0xab, 0x8e, 0x84, 0xf2, 0xbe, 0x19, 0x30, 0x6e, 0x49, 0x53, 0x7a, 0x40, + 0xad, 0xd1, 0x4b, 0xa9, 0xb1, 0x47, 0x2f, 0x80, 0xa9, 0x7a, 0xde, 0x7d, +}; +static const unsigned char kat4122_addinpr2[] = {0}; +static const unsigned char kat4122_retbits[] = { + 0xd5, 0xbe, 0x16, 0x98, 0xe0, 0x11, 0x12, 0x28, 0x74, 0xea, 0x19, 0xc5, + 0x62, 0x85, 0x9e, 0x55, 0x2c, 0x68, 0xd2, 0x73, 0x4a, 0x39, 0xf7, 0x2d, + 0x6f, 0x8e, 0xca, 0x8c, 0xe3, 0x09, 0x16, 0x50, 0x4b, 0xf2, 0x24, 0x67, + 0x0f, 0x9a, 0x7b, 0x6a, 0xfb, 0x57, 0x83, 0x0a, 0x28, 0xfe, 0xc0, 0xfe, + 0x81, 0x8d, 0xf4, 0x49, 0xf5, 0xe6, 0xeb, 0x8b, 0x49, 0xa3, 0x39, 0x7d, + 0xf4, 0xbd, 0x35, 0x06, +}; +static const struct drbg_kat_pr_true kat4122_t = { + 11, kat4122_entropyin, kat4122_nonce, kat4122_persstr, + kat4122_entropyinpr1, kat4122_addinpr1, kat4122_entropyinpr2, + kat4122_addinpr2, kat4122_retbits +}; +static const struct drbg_kat kat4122 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4122_t +}; + +static const unsigned char kat4123_entropyin[] = { + 0xe6, 0xa8, 0xdd, 0x29, 0xea, 0x2f, 0x9f, 0x2a, 0x45, 0x95, 0xaa, 0x1b, + 0x96, 0x00, 0x83, 0x1d, 0x16, 0x47, 0xf5, 0x3f, 0x36, 0x67, 0x24, 0x51, + 0x75, 0x69, 0xe2, 0x84, 0x8f, 0x5a, 0x7c, 0xcb, 0x4b, 0xd2, 0xf5, 0x53, + 0xf8, 0x3f, 0x91, 0xc1, 0x4c, 0x23, 0x61, 0xcb, 0xc3, 0xec, 0xe9, 0x26, +}; +static const unsigned char kat4123_nonce[] = {0}; +static const unsigned char kat4123_persstr[] = { + 0xdf, 0xa7, 0x44, 0x5d, 0x60, 0xac, 0x90, 0x8b, 0xb0, 0x31, 0xbc, 0xb4, + 0xf9, 0xfe, 0xed, 0x62, 0x6a, 0xfa, 0xb1, 0xe4, 0xae, 0xf0, 0x21, 0x86, + 0x2e, 0x1f, 0xcd, 0xb3, 0x4f, 0xdd, 0xf9, 0x02, 0x8b, 0x62, 0x26, 0xdf, + 0xb1, 0x1f, 0x67, 0x7d, 0xca, 0x42, 0x0c, 0xeb, 0x11, 0x93, 0x05, 0x87, +}; +static const unsigned char kat4123_entropyinpr1[] = { + 0xac, 0x25, 0xbc, 0x06, 0x03, 0xa5, 0x69, 0xb9, 0x0e, 0xfc, 0x79, 0x6a, + 0xea, 0x33, 0x86, 0x84, 0xd8, 0x4c, 0x03, 0x24, 0x0d, 0x1b, 0xb3, 0xc9, + 0xd3, 0xb2, 0x46, 0x27, 0xfb, 0x24, 0x23, 0x5d, 0x6f, 0xb8, 0x37, 0xfc, + 0x38, 0x2c, 0x6c, 0x94, 0x9e, 0xbc, 0x91, 0x1a, 0xba, 0xdf, 0xe9, 0xb5, +}; +static const unsigned char kat4123_addinpr1[] = {0}; +static const unsigned char kat4123_entropyinpr2[] = { + 0x60, 0xfe, 0x48, 0xc0, 0x71, 0x07, 0x3a, 0x81, 0x5e, 0xe7, 0x5a, 0x6b, + 0x66, 0xe0, 0xce, 0xc2, 0x1f, 0xa5, 0x10, 0xeb, 0x72, 0x1a, 0x10, 0xce, + 0xa6, 0x4e, 0xed, 0x97, 0x7e, 0xfe, 0x89, 0xaf, 0x92, 0x2f, 0x8b, 0xed, + 0xad, 0xe8, 0x93, 0x21, 0x2e, 0x6a, 0x25, 0x31, 0x69, 0x82, 0x18, 0x60, +}; +static const unsigned char kat4123_addinpr2[] = {0}; +static const unsigned char kat4123_retbits[] = { + 0xc8, 0x34, 0xa9, 0x0e, 0x72, 0xa5, 0xec, 0x01, 0x48, 0x94, 0x2c, 0x9f, + 0xbd, 0xe8, 0xb9, 0x0f, 0x05, 0x88, 0x66, 0xac, 0x3f, 0xf8, 0xcc, 0x85, + 0x4b, 0xda, 0x3d, 0x33, 0xf6, 0x07, 0x2b, 0xc0, 0xe5, 0xa2, 0x2c, 0x7d, + 0x0c, 0xd8, 0x01, 0xf0, 0x91, 0x27, 0x6e, 0xd7, 0xb7, 0xe3, 0xd6, 0x49, + 0x5d, 0xf9, 0x54, 0x6b, 0x9f, 0xc4, 0x5e, 0x46, 0xaa, 0x6b, 0x89, 0xd3, + 0xdd, 0xa2, 0x07, 0xcc, +}; +static const struct drbg_kat_pr_true kat4123_t = { + 12, kat4123_entropyin, kat4123_nonce, kat4123_persstr, + kat4123_entropyinpr1, kat4123_addinpr1, kat4123_entropyinpr2, + kat4123_addinpr2, kat4123_retbits +}; +static const struct drbg_kat kat4123 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4123_t +}; + +static const unsigned char kat4124_entropyin[] = { + 0x7f, 0x1a, 0x2a, 0xfa, 0xe1, 0xe6, 0x42, 0xc3, 0x34, 0x8a, 0x0e, 0xe5, + 0x6a, 0x0f, 0x4e, 0xbf, 0x13, 0x6d, 0x68, 0xf8, 0xf0, 0x4d, 0xe5, 0x4b, + 0x3b, 0xee, 0xce, 0x78, 0x28, 0xaa, 0x43, 0x17, 0x1d, 0x09, 0x57, 0x0b, + 0xb7, 0x0f, 0xca, 0x53, 0x77, 0x5e, 0x47, 0x70, 0xe3, 0xd4, 0xcb, 0x84, +}; +static const unsigned char kat4124_nonce[] = {0}; +static const unsigned char kat4124_persstr[] = { + 0xb1, 0x80, 0x5d, 0x90, 0xd9, 0xe4, 0x3a, 0x9e, 0x50, 0x9f, 0x5f, 0x71, + 0xba, 0xd5, 0x14, 0xb5, 0x48, 0x80, 0x8b, 0x99, 0x3c, 0xfa, 0xef, 0x7a, + 0x69, 0x27, 0x92, 0x39, 0xe6, 0x87, 0xf4, 0xcb, 0xe3, 0xa6, 0xba, 0x57, + 0x9e, 0x11, 0xa4, 0xfa, 0x2b, 0x24, 0x50, 0xf8, 0x2c, 0x2f, 0xd3, 0x1a, +}; +static const unsigned char kat4124_entropyinpr1[] = { + 0xed, 0xab, 0x61, 0xda, 0x55, 0x5e, 0xef, 0xf6, 0x11, 0xc0, 0x42, 0x8a, + 0x25, 0x20, 0x00, 0x03, 0xa5, 0xac, 0x1c, 0x49, 0x78, 0xa7, 0x66, 0x51, + 0x4e, 0x92, 0x22, 0xc8, 0x0a, 0xdd, 0xa7, 0x19, 0x4b, 0x84, 0x14, 0x83, + 0x5f, 0x0f, 0xae, 0x94, 0x26, 0x4d, 0x3d, 0x81, 0xd4, 0x9b, 0xec, 0x13, +}; +static const unsigned char kat4124_addinpr1[] = {0}; +static const unsigned char kat4124_entropyinpr2[] = { + 0x78, 0x10, 0xed, 0x74, 0xbd, 0xb0, 0x95, 0xe1, 0xa3, 0xa8, 0xa2, 0xb1, + 0xfd, 0x88, 0x5e, 0x21, 0xc3, 0xa2, 0x33, 0x17, 0xb5, 0xa4, 0x51, 0x4a, + 0x9b, 0xae, 0x2d, 0x00, 0x72, 0x82, 0x6b, 0xfc, 0x29, 0x2a, 0x23, 0x15, + 0x00, 0x70, 0x3a, 0xb0, 0xa1, 0xf0, 0x4c, 0xe3, 0x5b, 0xd3, 0xd8, 0x08, +}; +static const unsigned char kat4124_addinpr2[] = {0}; +static const unsigned char kat4124_retbits[] = { + 0x65, 0x53, 0xc6, 0x30, 0xa0, 0x7d, 0xdf, 0x7d, 0xc2, 0x11, 0x0c, 0x3a, + 0xa3, 0xc5, 0xac, 0x0c, 0x48, 0x8a, 0x03, 0x45, 0xe0, 0x75, 0x71, 0xcd, + 0x71, 0xdf, 0x11, 0x5b, 0xa3, 0x7e, 0xa4, 0x67, 0x69, 0x35, 0xbe, 0x72, + 0xa6, 0x03, 0x3a, 0xec, 0xa7, 0xac, 0x6f, 0xcc, 0xe5, 0x65, 0x4d, 0xae, + 0x38, 0xf5, 0x77, 0x7b, 0x5c, 0xff, 0x34, 0xb1, 0x56, 0x53, 0x9b, 0x42, + 0xed, 0x6d, 0xc9, 0x3c, +}; +static const struct drbg_kat_pr_true kat4124_t = { + 13, kat4124_entropyin, kat4124_nonce, kat4124_persstr, + kat4124_entropyinpr1, kat4124_addinpr1, kat4124_entropyinpr2, + kat4124_addinpr2, kat4124_retbits +}; +static const struct drbg_kat kat4124 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4124_t +}; + +static const unsigned char kat4125_entropyin[] = { + 0xf7, 0x25, 0x92, 0xe0, 0x62, 0x65, 0x39, 0x90, 0x3b, 0xfe, 0x79, 0x26, + 0xf2, 0xdf, 0x89, 0x42, 0x8f, 0xfe, 0x4e, 0xce, 0xeb, 0x57, 0xf0, 0xbe, + 0x46, 0xf5, 0xd4, 0xbb, 0x0a, 0xb8, 0xc7, 0x06, 0x33, 0x43, 0x1c, 0x70, + 0x05, 0x6e, 0x05, 0x1b, 0x2a, 0x44, 0xa9, 0x9f, 0xb2, 0xde, 0xcc, 0x80, +}; +static const unsigned char kat4125_nonce[] = {0}; +static const unsigned char kat4125_persstr[] = { + 0x27, 0xb9, 0x25, 0x0c, 0x01, 0x18, 0x9a, 0x8a, 0x67, 0x5d, 0x59, 0x7c, + 0xd2, 0xe4, 0x76, 0xd1, 0x1f, 0x4f, 0xea, 0xa2, 0x9c, 0xe2, 0xd9, 0xe7, + 0x29, 0xee, 0xed, 0xe4, 0x2d, 0x9b, 0x78, 0x52, 0x19, 0x37, 0xd2, 0x40, + 0xb1, 0x2d, 0xb5, 0x49, 0x3a, 0xee, 0x96, 0xb8, 0x41, 0x02, 0xcd, 0x9c, +}; +static const unsigned char kat4125_entropyinpr1[] = { + 0x2b, 0x38, 0x77, 0xed, 0x4d, 0x1b, 0x31, 0x74, 0xd3, 0x6e, 0x78, 0x4a, + 0xd7, 0xb6, 0xb7, 0x99, 0x1d, 0xd5, 0x29, 0x79, 0xca, 0x5b, 0x1c, 0x4c, + 0xc5, 0xf4, 0x15, 0xea, 0x56, 0xaa, 0x78, 0xf2, 0x48, 0x6e, 0x2b, 0x03, + 0x35, 0x70, 0x08, 0x9a, 0xa0, 0xe8, 0xf5, 0xd4, 0xbe, 0x3e, 0xe1, 0x40, +}; +static const unsigned char kat4125_addinpr1[] = {0}; +static const unsigned char kat4125_entropyinpr2[] = { + 0x91, 0xd4, 0x21, 0xc3, 0xeb, 0x04, 0xde, 0x94, 0x09, 0x9a, 0x74, 0x67, + 0x25, 0x4b, 0xad, 0x70, 0xe2, 0x36, 0xd5, 0xc2, 0x76, 0x16, 0xf7, 0x66, + 0xe8, 0x5b, 0x4d, 0xe3, 0x96, 0x50, 0x01, 0xdb, 0x85, 0x4e, 0x61, 0xa8, + 0x0b, 0xfe, 0xc2, 0xea, 0xcb, 0x4f, 0xf9, 0x3e, 0xca, 0xfb, 0x8b, 0x83, +}; +static const unsigned char kat4125_addinpr2[] = {0}; +static const unsigned char kat4125_retbits[] = { + 0xed, 0x70, 0x3d, 0x92, 0x73, 0xbb, 0x94, 0x62, 0xac, 0x40, 0x0e, 0xe8, + 0xd5, 0x87, 0xea, 0x3c, 0x4d, 0x6c, 0x27, 0xaa, 0x01, 0x4d, 0xef, 0xcb, + 0x6c, 0xa6, 0xfe, 0x88, 0x52, 0x72, 0xbc, 0xb4, 0xb6, 0xba, 0x08, 0x22, + 0xf4, 0x29, 0x41, 0x07, 0x1b, 0xf6, 0x35, 0xb4, 0x1d, 0x99, 0x7c, 0x63, + 0x1b, 0x68, 0x0d, 0x91, 0xb2, 0x3e, 0xe4, 0x83, 0x51, 0x04, 0x1d, 0xc2, + 0x74, 0x90, 0x08, 0x21, +}; +static const struct drbg_kat_pr_true kat4125_t = { + 14, kat4125_entropyin, kat4125_nonce, kat4125_persstr, + kat4125_entropyinpr1, kat4125_addinpr1, kat4125_entropyinpr2, + kat4125_addinpr2, kat4125_retbits +}; +static const struct drbg_kat kat4125 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4125_t +}; + +static const unsigned char kat4126_entropyin[] = { + 0xc5, 0x48, 0x05, 0x27, 0x4b, 0xde, 0x00, 0xaa, 0x52, 0x89, 0xe0, 0x51, + 0x35, 0x79, 0x01, 0x97, 0x07, 0x66, 0x6d, 0x2f, 0xa7, 0xa1, 0xc8, 0x90, + 0x88, 0x65, 0x89, 0x1c, 0x87, 0xc0, 0xc6, 0x52, 0x33, 0x5a, 0x4d, 0x3c, + 0xc4, 0x15, 0xbc, 0x30, 0x74, 0x2b, 0x16, 0x46, 0x47, 0xf8, 0x82, 0x0f, +}; +static const unsigned char kat4126_nonce[] = {0}; +static const unsigned char kat4126_persstr[] = { + 0xd6, 0x3f, 0xb5, 0xaf, 0xa2, 0x10, 0x1f, 0xa4, 0xb8, 0xa6, 0xc3, 0xb8, + 0x9d, 0x9c, 0x25, 0x0a, 0xc7, 0x28, 0xfc, 0x1d, 0xda, 0xd0, 0xe7, 0x58, + 0x5b, 0x5d, 0x54, 0x72, 0x8e, 0xd2, 0x0c, 0x2f, 0x94, 0x0e, 0x89, 0x15, + 0x55, 0x96, 0xe3, 0xb9, 0x63, 0x63, 0x5b, 0x6d, 0x60, 0x88, 0x16, 0x4b, +}; +static const unsigned char kat4126_entropyinpr1[] = { + 0xb2, 0xad, 0x31, 0xd1, 0xf2, 0x0d, 0xcf, 0x30, 0xdd, 0x52, 0x6e, 0xc9, + 0x15, 0x6c, 0x07, 0xf2, 0x70, 0x21, 0x6b, 0xdb, 0x59, 0x19, 0x73, 0x25, + 0xba, 0xb1, 0x80, 0x67, 0x59, 0x29, 0x88, 0x8a, 0xb6, 0x99, 0xc5, 0x4f, + 0xb2, 0x18, 0x19, 0xb7, 0xd9, 0x21, 0xd6, 0x34, 0x6b, 0xff, 0x2f, 0x7f, +}; +static const unsigned char kat4126_addinpr1[] = { + 0x74, 0x4b, 0xfa, 0xe3, 0xc2, 0x3a, 0x5c, 0xc9, 0xa3, 0xb3, 0x73, 0xb6, + 0xc5, 0x07, 0x95, 0x06, 0x8d, 0x35, 0xeb, 0x8a, 0x33, 0x97, 0x46, 0xac, + 0x81, 0x0d, 0x16, 0xf8, 0x64, 0xe8, 0x80, 0x06, 0x10, 0x82, 0xed, 0xf9, + 0xd2, 0x68, 0x7c, 0x21, 0x19, 0x60, 0xaa, 0x83, 0x40, 0x0f, 0x85, 0xf9, +}; +static const unsigned char kat4126_entropyinpr2[] = { + 0xec, 0xa4, 0x49, 0x04, 0x8d, 0x26, 0xfd, 0x38, 0xf8, 0xca, 0x43, 0x52, + 0x37, 0xdc, 0xe6, 0x6e, 0xad, 0xec, 0x70, 0x69, 0xee, 0x5d, 0xd0, 0xb7, + 0x00, 0x84, 0xb8, 0x19, 0xa7, 0x11, 0xc0, 0x82, 0x0a, 0x75, 0x56, 0xbb, + 0xd0, 0xae, 0x20, 0xf0, 0x6e, 0x51, 0x69, 0x27, 0x8b, 0x59, 0x3b, 0x71, +}; +static const unsigned char kat4126_addinpr2[] = { + 0xad, 0x55, 0xc6, 0x82, 0x96, 0x2a, 0xa4, 0xfe, 0x9e, 0xbc, 0x22, 0x7c, + 0x94, 0x02, 0xe7, 0x9b, 0x0a, 0xa7, 0x87, 0x48, 0x44, 0xd3, 0x3e, 0xae, + 0xe7, 0xe2, 0xd1, 0x5b, 0xaf, 0x81, 0xd9, 0xd3, 0x39, 0x36, 0xe4, 0xd9, + 0x3f, 0x28, 0xad, 0x10, 0x96, 0x57, 0xb5, 0x12, 0xae, 0xe1, 0x15, 0xa5, +}; +static const unsigned char kat4126_retbits[] = { + 0xf0, 0x8f, 0xdf, 0xc1, 0x77, 0x5b, 0x6f, 0xeb, 0x5a, 0x41, 0x77, 0x11, + 0x0b, 0xf2, 0x9d, 0x7c, 0x3a, 0xb7, 0x15, 0xdf, 0xdc, 0x4b, 0x27, 0x20, + 0x03, 0x59, 0x28, 0x8c, 0x06, 0x24, 0xbd, 0x5c, 0x10, 0x28, 0xac, 0xc9, + 0x91, 0x4d, 0x88, 0xa8, 0x2b, 0x09, 0xf5, 0xea, 0xaf, 0xdc, 0x3b, 0xca, + 0x85, 0x47, 0xb9, 0x84, 0x81, 0xdf, 0x39, 0xb8, 0x65, 0x04, 0x31, 0x42, + 0x21, 0xcb, 0xdc, 0x3c, +}; +static const struct drbg_kat_pr_true kat4126_t = { + 0, kat4126_entropyin, kat4126_nonce, kat4126_persstr, + kat4126_entropyinpr1, kat4126_addinpr1, kat4126_entropyinpr2, + kat4126_addinpr2, kat4126_retbits +}; +static const struct drbg_kat kat4126 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4126_t +}; + +static const unsigned char kat4127_entropyin[] = { + 0x2c, 0xff, 0x59, 0xc3, 0xf1, 0xe6, 0xb9, 0xd5, 0x3a, 0x90, 0x95, 0xa1, + 0xf5, 0xc1, 0x96, 0x5f, 0x90, 0x5a, 0xa8, 0xa4, 0x8d, 0xbd, 0x2d, 0xdf, + 0xa9, 0x6e, 0x13, 0x00, 0xcf, 0x17, 0xfe, 0xf2, 0xc2, 0xbe, 0xe7, 0xa1, + 0xa3, 0xd4, 0x97, 0x6a, 0x14, 0xd7, 0x44, 0x36, 0x61, 0x13, 0x4d, 0xc0, +}; +static const unsigned char kat4127_nonce[] = {0}; +static const unsigned char kat4127_persstr[] = { + 0xbd, 0x63, 0xca, 0x83, 0x29, 0xb5, 0x30, 0xd8, 0x04, 0x37, 0x68, 0x38, + 0x2c, 0x9c, 0x42, 0xb3, 0x03, 0x4a, 0xef, 0x78, 0xdd, 0xcc, 0x3e, 0x62, + 0x35, 0x67, 0x62, 0x9d, 0x09, 0x65, 0x90, 0x7c, 0x4f, 0x49, 0x19, 0xe7, + 0xc4, 0x41, 0x2b, 0x6a, 0x90, 0x4f, 0x9f, 0x49, 0xb3, 0x7b, 0x2c, 0xa0, +}; +static const unsigned char kat4127_entropyinpr1[] = { + 0xd3, 0x30, 0xe1, 0xa5, 0x89, 0x22, 0xc3, 0x4e, 0xce, 0x4e, 0xdd, 0xcc, + 0x9d, 0xa6, 0x83, 0xa8, 0x42, 0x67, 0xb5, 0xc7, 0x13, 0x77, 0xea, 0x18, + 0x6e, 0xc6, 0xbf, 0xcc, 0x33, 0xc2, 0x85, 0xea, 0x5d, 0xcc, 0x40, 0x4b, + 0x2c, 0xd9, 0x71, 0xf6, 0xee, 0x6e, 0x6d, 0x83, 0x60, 0xfe, 0x4b, 0xcb, +}; +static const unsigned char kat4127_addinpr1[] = { + 0x6a, 0x63, 0x6b, 0xe1, 0x19, 0xc6, 0xda, 0x0d, 0x6c, 0x5c, 0xe3, 0x98, + 0x54, 0xed, 0xa3, 0x9f, 0xd7, 0x0d, 0x95, 0x99, 0x05, 0x9d, 0x45, 0x9c, + 0x92, 0x3d, 0xa1, 0xa1, 0xea, 0x21, 0x51, 0x27, 0x57, 0xec, 0x03, 0xe3, + 0x8a, 0x78, 0xa0, 0x14, 0x94, 0xb7, 0x7f, 0x67, 0x26, 0x17, 0x43, 0x97, +}; +static const unsigned char kat4127_entropyinpr2[] = { + 0x0b, 0x99, 0xcb, 0xe0, 0xa8, 0xdd, 0x51, 0xe0, 0xf8, 0xf4, 0xb7, 0x42, + 0xf7, 0xf1, 0x50, 0x16, 0xd7, 0xba, 0x9d, 0x3d, 0x65, 0xc7, 0x4a, 0x49, + 0xf1, 0xf7, 0x1c, 0x52, 0x2d, 0xb3, 0xf2, 0x44, 0x99, 0xfc, 0x18, 0x5f, + 0x18, 0x9b, 0x28, 0xca, 0x30, 0xd2, 0x5e, 0xf7, 0xdf, 0xb4, 0xbf, 0xfa, +}; +static const unsigned char kat4127_addinpr2[] = { + 0xbf, 0x1b, 0x49, 0x33, 0x63, 0x4b, 0x86, 0x88, 0xef, 0x78, 0x9b, 0xc7, + 0x3f, 0x09, 0xef, 0x9a, 0x58, 0x3f, 0x6a, 0x29, 0xc7, 0xa1, 0x37, 0x79, + 0xd5, 0xe8, 0x4e, 0x92, 0x14, 0x27, 0xce, 0x3a, 0x71, 0x37, 0x02, 0xda, + 0x97, 0x13, 0x94, 0x7c, 0xfd, 0xba, 0x90, 0xfd, 0x24, 0xb4, 0x8e, 0x20, +}; +static const unsigned char kat4127_retbits[] = { + 0x2a, 0x3e, 0x62, 0x4c, 0x69, 0xa5, 0x4f, 0xb7, 0x83, 0xcc, 0xaa, 0xfd, + 0x9a, 0x7f, 0x43, 0xd1, 0x91, 0xa5, 0xd6, 0x6c, 0xe7, 0x0e, 0xa9, 0xbb, + 0x28, 0x02, 0xe2, 0x19, 0xca, 0x4f, 0x5a, 0xfd, 0x7c, 0x69, 0x97, 0xf4, + 0x6b, 0xbb, 0xd1, 0xa0, 0x2f, 0x04, 0x60, 0x82, 0xd8, 0xc2, 0xf4, 0x09, + 0xbc, 0x8e, 0xc8, 0xfb, 0x88, 0xdc, 0x5b, 0x2e, 0x69, 0x3e, 0x20, 0x96, + 0x17, 0x26, 0x7c, 0x65, +}; +static const struct drbg_kat_pr_true kat4127_t = { + 1, kat4127_entropyin, kat4127_nonce, kat4127_persstr, + kat4127_entropyinpr1, kat4127_addinpr1, kat4127_entropyinpr2, + kat4127_addinpr2, kat4127_retbits +}; +static const struct drbg_kat kat4127 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4127_t +}; + +static const unsigned char kat4128_entropyin[] = { + 0x1d, 0x43, 0x01, 0x3a, 0x69, 0x3a, 0x9c, 0x8b, 0x0d, 0x0a, 0xed, 0xa1, + 0x2c, 0x66, 0x1c, 0xbf, 0xed, 0xf4, 0x15, 0x33, 0xf5, 0xe1, 0x83, 0x57, + 0x70, 0xf2, 0xba, 0xb8, 0x68, 0xfc, 0x91, 0x9d, 0x4e, 0xd3, 0x8b, 0x8b, + 0x8e, 0x2d, 0xc5, 0x8e, 0x3e, 0x4b, 0xb9, 0x8b, 0x70, 0x72, 0x64, 0xfa, +}; +static const unsigned char kat4128_nonce[] = {0}; +static const unsigned char kat4128_persstr[] = { + 0x42, 0xe8, 0x59, 0x55, 0xf2, 0x2b, 0xb7, 0x65, 0x30, 0xaf, 0x28, 0x8b, + 0xf0, 0xd9, 0x23, 0xa1, 0x16, 0xf3, 0xb3, 0x80, 0x7b, 0xe3, 0x9f, 0xdb, + 0x2a, 0x5e, 0xeb, 0x31, 0x63, 0x9d, 0xab, 0x6d, 0xa1, 0x47, 0x25, 0x57, + 0xf7, 0x51, 0x18, 0xf0, 0x4b, 0xee, 0xb6, 0x0f, 0x71, 0xa9, 0x21, 0x53, +}; +static const unsigned char kat4128_entropyinpr1[] = { + 0x43, 0x97, 0x64, 0xaf, 0x3d, 0xd7, 0x6e, 0x8d, 0x6b, 0x29, 0x08, 0xa4, + 0x96, 0x2d, 0xb9, 0x3f, 0xfc, 0xf3, 0x22, 0x83, 0x6a, 0x41, 0x74, 0xc7, + 0xce, 0xc5, 0xd2, 0xd1, 0xa1, 0x68, 0xbe, 0x97, 0x2c, 0xd1, 0xc1, 0x1d, + 0x1a, 0xc7, 0x31, 0xf0, 0xa2, 0x66, 0xbe, 0x34, 0x0c, 0xaa, 0x5f, 0xe1, +}; +static const unsigned char kat4128_addinpr1[] = { + 0x79, 0xd4, 0xfb, 0xc7, 0x42, 0x50, 0xe8, 0xe6, 0xe5, 0xab, 0xd0, 0x1c, + 0xec, 0xd0, 0x8d, 0x49, 0x77, 0x42, 0xda, 0x79, 0x87, 0xfa, 0xfd, 0xbe, + 0x17, 0x0b, 0x68, 0x73, 0xfb, 0xa8, 0x06, 0x79, 0xee, 0xaa, 0x4f, 0x4b, + 0xcd, 0xe4, 0x0d, 0xb5, 0x37, 0x26, 0x44, 0xb8, 0x62, 0x0e, 0x55, 0xee, +}; +static const unsigned char kat4128_entropyinpr2[] = { + 0xed, 0xb7, 0xa1, 0xb3, 0xf3, 0x3f, 0xf3, 0xba, 0x79, 0xd1, 0x2f, 0xe5, + 0x57, 0xa4, 0x86, 0x52, 0x2d, 0x53, 0x5d, 0xbe, 0xed, 0x92, 0x80, 0xee, + 0x1b, 0x1e, 0x7c, 0x7a, 0xac, 0x66, 0x3b, 0x64, 0xae, 0x9a, 0x30, 0xa8, + 0xb7, 0xb0, 0xcb, 0xd6, 0x84, 0x6c, 0x82, 0x52, 0x1b, 0x4c, 0x9e, 0xe5, +}; +static const unsigned char kat4128_addinpr2[] = { + 0x6c, 0xa5, 0x97, 0xcc, 0xad, 0xd6, 0x5b, 0x82, 0x62, 0x95, 0x72, 0xb7, + 0x23, 0xa1, 0xc0, 0x8a, 0x52, 0xdb, 0x2d, 0xe3, 0x27, 0x47, 0xe1, 0x29, + 0x81, 0xa4, 0xdf, 0xe3, 0xef, 0xc5, 0x57, 0x71, 0x25, 0x19, 0xe5, 0x17, + 0x0e, 0x72, 0x74, 0xcf, 0xe1, 0x75, 0x36, 0x00, 0x97, 0xe4, 0xa1, 0xbb, +}; +static const unsigned char kat4128_retbits[] = { + 0xbb, 0x84, 0x01, 0x04, 0xe9, 0xf8, 0x48, 0x4b, 0xfb, 0xa3, 0xb1, 0xec, + 0x96, 0x31, 0xb6, 0x29, 0xdd, 0xa1, 0x39, 0x45, 0xe9, 0xa5, 0x10, 0x6a, + 0x8a, 0x37, 0x9d, 0x15, 0xf1, 0xe8, 0x38, 0xf8, 0xd4, 0xe5, 0x63, 0x30, + 0x9e, 0x5f, 0xd1, 0x2d, 0x48, 0xa0, 0xb4, 0x2e, 0xe3, 0x48, 0x55, 0x6c, + 0xbe, 0xf9, 0x65, 0xf2, 0xd4, 0xeb, 0xac, 0x35, 0x1b, 0x97, 0xe2, 0xd1, + 0x0e, 0x46, 0x78, 0x6e, +}; +static const struct drbg_kat_pr_true kat4128_t = { + 2, kat4128_entropyin, kat4128_nonce, kat4128_persstr, + kat4128_entropyinpr1, kat4128_addinpr1, kat4128_entropyinpr2, + kat4128_addinpr2, kat4128_retbits +}; +static const struct drbg_kat kat4128 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4128_t +}; + +static const unsigned char kat4129_entropyin[] = { + 0x3b, 0x21, 0xe6, 0x92, 0xbd, 0x92, 0x4a, 0x5b, 0x35, 0x3b, 0xed, 0xf6, + 0x13, 0xb4, 0x8a, 0x07, 0x19, 0x1a, 0xf4, 0x58, 0xfc, 0xe7, 0x09, 0x64, + 0x3d, 0x22, 0xde, 0x6e, 0x21, 0x29, 0xf8, 0x18, 0xb5, 0x19, 0x29, 0x67, + 0x96, 0x2d, 0xaf, 0xe7, 0x10, 0x5d, 0xf0, 0xda, 0xed, 0xd7, 0xe5, 0x5a, +}; +static const unsigned char kat4129_nonce[] = {0}; +static const unsigned char kat4129_persstr[] = { + 0x9d, 0x4b, 0xa4, 0x5c, 0x96, 0x68, 0x5f, 0x0d, 0xf0, 0xc2, 0x9b, 0x11, + 0x3a, 0xbe, 0xc4, 0x4e, 0xb8, 0x14, 0xcd, 0x7b, 0x7f, 0x95, 0xf5, 0x41, + 0x14, 0xbd, 0x9c, 0x26, 0x3f, 0xde, 0x33, 0xf9, 0x6d, 0x69, 0xd1, 0x9c, + 0x2a, 0x1b, 0x44, 0x66, 0x98, 0x1f, 0xd1, 0x61, 0xbd, 0x47, 0xbc, 0x02, +}; +static const unsigned char kat4129_entropyinpr1[] = { + 0xba, 0x0d, 0x6a, 0x68, 0x2f, 0xe7, 0x47, 0xb8, 0x64, 0x09, 0x03, 0x9d, + 0x15, 0xae, 0xe4, 0x96, 0x66, 0x97, 0x0d, 0x36, 0xef, 0x2b, 0x56, 0x8a, + 0xd4, 0xf9, 0x4e, 0x66, 0x61, 0x48, 0xe9, 0x24, 0xb7, 0xc3, 0x82, 0x15, + 0xeb, 0xb9, 0x40, 0x26, 0x3b, 0x43, 0xbb, 0xf9, 0x2e, 0xac, 0x51, 0xa8, +}; +static const unsigned char kat4129_addinpr1[] = { + 0xb2, 0x09, 0xef, 0xc3, 0x62, 0xaf, 0x96, 0x52, 0x32, 0x5e, 0x94, 0x7a, + 0xf6, 0x29, 0xdf, 0xbe, 0x06, 0x40, 0x7b, 0x4e, 0x0f, 0x1a, 0x0f, 0xca, + 0x4c, 0xfa, 0x5f, 0x05, 0xc6, 0x41, 0x75, 0x39, 0xb6, 0x17, 0x67, 0x4d, + 0x41, 0x3a, 0xcd, 0x52, 0xc4, 0x4c, 0x88, 0x63, 0x08, 0xaa, 0xa5, 0xfe, +}; +static const unsigned char kat4129_entropyinpr2[] = { + 0xb4, 0xc4, 0xd3, 0x6f, 0x90, 0xe2, 0x6e, 0x48, 0xdf, 0xc9, 0xd6, 0x6b, + 0xbe, 0x70, 0x61, 0xe2, 0xb2, 0xc8, 0x89, 0x8f, 0x74, 0xa4, 0x94, 0x5f, + 0xca, 0x13, 0x95, 0xd7, 0x18, 0xe9, 0xdf, 0x9b, 0x9f, 0x46, 0xc6, 0xf7, + 0xda, 0xc8, 0x92, 0x30, 0xf8, 0x2c, 0xd9, 0x4a, 0xf0, 0xea, 0xbe, 0x99, +}; +static const unsigned char kat4129_addinpr2[] = { + 0xfa, 0x2d, 0x74, 0xe7, 0x2f, 0x2a, 0xd9, 0x6a, 0x6f, 0xf1, 0xa4, 0x39, + 0xeb, 0xc1, 0xff, 0xe2, 0x55, 0x0e, 0xae, 0x32, 0xd6, 0xa2, 0xfb, 0xe4, + 0x15, 0x11, 0x57, 0xef, 0x8c, 0xc4, 0xe6, 0xc4, 0x72, 0x2b, 0x5f, 0xb3, + 0xce, 0x4f, 0x09, 0x40, 0xc8, 0xf6, 0x99, 0x63, 0x52, 0xec, 0x2a, 0xdf, +}; +static const unsigned char kat4129_retbits[] = { + 0x67, 0xd3, 0x1d, 0x1a, 0xd3, 0x9c, 0xeb, 0xd4, 0xce, 0x25, 0x90, 0x2d, + 0x15, 0x1e, 0xce, 0x06, 0xdd, 0x31, 0x87, 0xc4, 0xb1, 0xa8, 0x32, 0xc3, + 0x0c, 0x49, 0xbf, 0x3b, 0xe2, 0x04, 0x44, 0xab, 0x9a, 0x05, 0xa9, 0x9b, + 0x6b, 0x06, 0xe6, 0xcf, 0x40, 0x01, 0x77, 0x77, 0x69, 0xc4, 0x43, 0x52, + 0xb1, 0x9b, 0x46, 0x18, 0xbb, 0xa2, 0x6f, 0x0b, 0xc6, 0xda, 0xd4, 0x87, + 0xc3, 0x24, 0xd9, 0xf0, +}; +static const struct drbg_kat_pr_true kat4129_t = { + 3, kat4129_entropyin, kat4129_nonce, kat4129_persstr, + kat4129_entropyinpr1, kat4129_addinpr1, kat4129_entropyinpr2, + kat4129_addinpr2, kat4129_retbits +}; +static const struct drbg_kat kat4129 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4129_t +}; + +static const unsigned char kat4130_entropyin[] = { + 0x9c, 0xa0, 0x80, 0xf1, 0x8f, 0xe4, 0xe3, 0xd0, 0x77, 0x4a, 0x58, 0x94, + 0x0a, 0x5e, 0xc6, 0x1c, 0x98, 0x97, 0xe9, 0x71, 0x04, 0x45, 0x86, 0xa1, + 0xca, 0x68, 0x61, 0xd3, 0x3a, 0xdd, 0xd2, 0xbe, 0xed, 0x7e, 0xd9, 0x65, + 0xbb, 0x28, 0x7b, 0x80, 0xc8, 0x45, 0x84, 0x6e, 0xdb, 0x72, 0x8b, 0x6b, +}; +static const unsigned char kat4130_nonce[] = {0}; +static const unsigned char kat4130_persstr[] = { + 0x13, 0x8a, 0xfd, 0x91, 0x0e, 0x08, 0x41, 0x43, 0x05, 0x2e, 0x58, 0xd5, + 0xbe, 0x06, 0x0c, 0xf8, 0x49, 0x01, 0xf1, 0x4c, 0xb4, 0x9c, 0xba, 0x38, + 0xf7, 0x46, 0xbd, 0x86, 0x12, 0x11, 0xb9, 0x32, 0x7d, 0x59, 0xaa, 0x8e, + 0xf9, 0xfc, 0xaa, 0x37, 0x00, 0x7b, 0x79, 0xee, 0x6c, 0x60, 0xb0, 0x63, +}; +static const unsigned char kat4130_entropyinpr1[] = { + 0x89, 0xaf, 0x2d, 0xe4, 0x06, 0x4b, 0xf6, 0x09, 0x51, 0x16, 0x0a, 0x57, + 0x01, 0x80, 0xb8, 0x9f, 0xac, 0x86, 0x08, 0xdf, 0x31, 0x46, 0x11, 0x4b, + 0xd8, 0xc7, 0x8d, 0xd8, 0xf9, 0xdf, 0x90, 0x8f, 0xee, 0xf6, 0x61, 0x20, + 0x73, 0x42, 0xda, 0x61, 0x03, 0x97, 0xd1, 0x34, 0xe7, 0x76, 0xca, 0x4d, +}; +static const unsigned char kat4130_addinpr1[] = { + 0x10, 0x13, 0x6c, 0x42, 0xa1, 0x19, 0x4c, 0x44, 0xe0, 0xfe, 0x24, 0x0d, + 0x84, 0x9d, 0x73, 0x58, 0x10, 0x20, 0x7f, 0x79, 0x9a, 0x46, 0xea, 0xdc, + 0xe9, 0x74, 0x48, 0x04, 0x4e, 0x58, 0xd5, 0x4c, 0x53, 0xe5, 0xc6, 0x12, + 0xde, 0x99, 0xeb, 0x62, 0x25, 0x29, 0x3a, 0xc5, 0x59, 0x22, 0xe9, 0x56, +}; +static const unsigned char kat4130_entropyinpr2[] = { + 0xa2, 0x68, 0xd6, 0xfc, 0xc6, 0xc8, 0x8f, 0x0f, 0xf7, 0x2f, 0x8a, 0x23, + 0x65, 0xf7, 0xdf, 0x2e, 0x68, 0x66, 0x4b, 0x2f, 0x1e, 0x95, 0x5e, 0xc5, + 0xe3, 0xc7, 0x0d, 0x87, 0xb0, 0x96, 0xe7, 0x6a, 0xe6, 0xb6, 0x8e, 0x95, + 0x16, 0xbc, 0xdc, 0xf1, 0x01, 0x1b, 0x12, 0xd0, 0x9c, 0xb3, 0x7c, 0xb1, +}; +static const unsigned char kat4130_addinpr2[] = { + 0x29, 0x97, 0x29, 0x8a, 0xe9, 0xf3, 0x62, 0x85, 0x72, 0xca, 0xe7, 0x00, + 0x00, 0xf5, 0xeb, 0x02, 0xd7, 0x2e, 0x4b, 0x22, 0xd3, 0x37, 0xd8, 0x1a, + 0xb8, 0xd7, 0xa2, 0xbb, 0x72, 0x8f, 0xe0, 0x1e, 0xd1, 0xc7, 0x7d, 0xd3, + 0x86, 0xe0, 0xcb, 0x5f, 0x00, 0xc5, 0x06, 0xbc, 0x45, 0x4f, 0x87, 0xa8, +}; +static const unsigned char kat4130_retbits[] = { + 0x37, 0xc4, 0x77, 0x55, 0x81, 0x2b, 0xa3, 0x95, 0x90, 0x16, 0x0a, 0xe8, + 0x6f, 0xb1, 0xd8, 0x77, 0x11, 0xa5, 0xbb, 0xbd, 0xe1, 0x7e, 0x4c, 0x98, + 0x49, 0x1c, 0xb3, 0xe2, 0x84, 0x12, 0x47, 0xe0, 0xfe, 0x21, 0xa6, 0xdc, + 0x40, 0xe1, 0xa9, 0x8e, 0xce, 0x4f, 0x81, 0x50, 0xbd, 0x48, 0x3a, 0x0f, + 0xfd, 0xa7, 0x2e, 0xaa, 0x0e, 0x28, 0x2a, 0x2a, 0x8c, 0xd2, 0x04, 0x44, + 0xa0, 0x27, 0x55, 0xd1, +}; +static const struct drbg_kat_pr_true kat4130_t = { + 4, kat4130_entropyin, kat4130_nonce, kat4130_persstr, + kat4130_entropyinpr1, kat4130_addinpr1, kat4130_entropyinpr2, + kat4130_addinpr2, kat4130_retbits +}; +static const struct drbg_kat kat4130 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4130_t +}; + +static const unsigned char kat4131_entropyin[] = { + 0xfd, 0x5a, 0xa2, 0x6d, 0x9b, 0x25, 0x42, 0x2f, 0xb7, 0xe8, 0xda, 0x8d, + 0x8d, 0x67, 0x89, 0xf3, 0x65, 0x1d, 0x57, 0x3b, 0x9e, 0xa7, 0xc9, 0x76, + 0x4f, 0x5b, 0x9e, 0xcb, 0x5c, 0x0c, 0x36, 0xb9, 0xbd, 0xad, 0xd4, 0xe4, + 0xbb, 0x72, 0xe4, 0xc6, 0xae, 0xb4, 0x37, 0x88, 0xc7, 0x4c, 0x7e, 0x65, +}; +static const unsigned char kat4131_nonce[] = {0}; +static const unsigned char kat4131_persstr[] = { + 0xcc, 0x74, 0x2d, 0x7b, 0x10, 0x25, 0xbe, 0xb2, 0x96, 0x5d, 0x4e, 0x76, + 0xe9, 0xd5, 0x7e, 0x7d, 0xcb, 0x29, 0x77, 0xf1, 0x6a, 0x99, 0x7f, 0x13, + 0x26, 0xda, 0x10, 0x70, 0xcf, 0x9f, 0x69, 0x9a, 0xf4, 0x39, 0x0c, 0xe5, + 0x62, 0x4f, 0x05, 0xc6, 0xa1, 0xc0, 0x1a, 0xd2, 0xf6, 0x70, 0xe1, 0x34, +}; +static const unsigned char kat4131_entropyinpr1[] = { + 0x6d, 0x34, 0x24, 0x0b, 0xd2, 0xb0, 0xc9, 0x2e, 0xf9, 0x21, 0xbb, 0xb0, + 0xf2, 0x17, 0xea, 0xa4, 0xd7, 0xc6, 0x82, 0x46, 0x36, 0xf1, 0x99, 0x3c, + 0x22, 0x02, 0xec, 0x5f, 0xd7, 0x3c, 0x08, 0xee, 0x21, 0xe7, 0x22, 0x55, + 0x30, 0xa6, 0x4e, 0x6a, 0xd5, 0x63, 0x07, 0xbd, 0x47, 0x56, 0xeb, 0x29, +}; +static const unsigned char kat4131_addinpr1[] = { + 0x64, 0x71, 0x26, 0xa0, 0xd2, 0x34, 0x2c, 0xee, 0xa7, 0x2c, 0x28, 0x0a, + 0x30, 0x19, 0xb4, 0xb1, 0x3e, 0xc9, 0xbf, 0x5e, 0x61, 0x53, 0xcb, 0x63, + 0x1f, 0x76, 0x72, 0x5d, 0xdb, 0x01, 0x63, 0xc4, 0xa9, 0xe0, 0xee, 0xe6, + 0xb8, 0xc2, 0xc9, 0x63, 0x3a, 0xa0, 0xe3, 0x78, 0x5b, 0xd5, 0xb5, 0xdf, +}; +static const unsigned char kat4131_entropyinpr2[] = { + 0x6f, 0xc6, 0x6d, 0x8d, 0x9b, 0xed, 0x58, 0xe7, 0x53, 0xa4, 0x06, 0x73, + 0x9a, 0x63, 0xde, 0xb6, 0xf7, 0xf3, 0xd4, 0xba, 0xcf, 0xdb, 0x75, 0x6e, + 0x3d, 0xff, 0x34, 0xbd, 0xe0, 0x81, 0xf1, 0xf3, 0x48, 0xcf, 0x0e, 0xd4, + 0xa1, 0x18, 0xf0, 0x96, 0x0d, 0xa5, 0x2a, 0x4c, 0x14, 0xa7, 0x9b, 0xa3, +}; +static const unsigned char kat4131_addinpr2[] = { + 0xa6, 0xf9, 0x69, 0x0a, 0x36, 0x98, 0xfa, 0xba, 0x80, 0x6f, 0x23, 0x4f, + 0x8a, 0xf7, 0xbc, 0x1b, 0x39, 0xb5, 0xd6, 0xe4, 0x2b, 0xd1, 0xe4, 0x1e, + 0x19, 0x58, 0x0e, 0x4f, 0x90, 0xf7, 0x3f, 0xc7, 0x14, 0x40, 0x1a, 0xee, + 0x6c, 0xbf, 0x47, 0xd0, 0x43, 0x79, 0x5c, 0xb0, 0x62, 0x6f, 0x1c, 0x05, +}; +static const unsigned char kat4131_retbits[] = { + 0xa2, 0x73, 0x94, 0x78, 0xb2, 0x25, 0xb9, 0x11, 0xb6, 0x4f, 0x33, 0xa0, + 0x88, 0x88, 0xda, 0x7c, 0x2d, 0xd3, 0x3f, 0x00, 0xe9, 0x11, 0x96, 0xf2, + 0x39, 0x5a, 0xb9, 0xc4, 0x12, 0x9c, 0x0d, 0x14, 0x99, 0xc6, 0x1e, 0x17, + 0x5b, 0x11, 0x10, 0x41, 0x39, 0x1c, 0x2b, 0x33, 0xd8, 0x96, 0x25, 0x69, + 0xe0, 0xb9, 0xba, 0x16, 0xa0, 0xaa, 0x97, 0xe1, 0xde, 0x8d, 0xa5, 0xb7, + 0x9d, 0x9b, 0xdd, 0x19, +}; +static const struct drbg_kat_pr_true kat4131_t = { + 5, kat4131_entropyin, kat4131_nonce, kat4131_persstr, + kat4131_entropyinpr1, kat4131_addinpr1, kat4131_entropyinpr2, + kat4131_addinpr2, kat4131_retbits +}; +static const struct drbg_kat kat4131 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4131_t +}; + +static const unsigned char kat4132_entropyin[] = { + 0xa1, 0xa4, 0xf2, 0xbc, 0x0d, 0xf9, 0x58, 0x6f, 0x92, 0x50, 0xc9, 0xd1, + 0xd7, 0xeb, 0x2f, 0x05, 0x25, 0x2a, 0x91, 0x58, 0x07, 0x87, 0x2e, 0x5f, + 0x4d, 0x23, 0x75, 0xa9, 0x1b, 0x0b, 0x91, 0x5a, 0xeb, 0xa1, 0xad, 0x62, + 0x99, 0x0b, 0x14, 0xd5, 0xed, 0xcb, 0xd7, 0x2e, 0x62, 0xfd, 0xfc, 0xb9, +}; +static const unsigned char kat4132_nonce[] = {0}; +static const unsigned char kat4132_persstr[] = { + 0x1d, 0x3b, 0xc4, 0xb3, 0xe5, 0xd4, 0x26, 0x36, 0xf2, 0x6c, 0x9d, 0xc4, + 0xf0, 0xa6, 0x77, 0x80, 0xd8, 0x3e, 0x6e, 0x85, 0xeb, 0x59, 0x2a, 0x43, + 0xa3, 0xaa, 0xbc, 0x8e, 0x69, 0x39, 0xd8, 0x30, 0x8f, 0x61, 0xd6, 0x35, + 0x41, 0x52, 0x5f, 0xf5, 0xff, 0x8b, 0xb0, 0xe7, 0xf7, 0xd8, 0xc8, 0x05, +}; +static const unsigned char kat4132_entropyinpr1[] = { + 0xa5, 0x65, 0x5d, 0x85, 0x83, 0xff, 0x51, 0xa5, 0xb4, 0xf8, 0xef, 0xec, + 0x8e, 0xe0, 0x7d, 0x26, 0x16, 0x9b, 0x2d, 0x40, 0x7c, 0xee, 0x51, 0xec, + 0x05, 0xfc, 0xea, 0x5a, 0x4a, 0x96, 0x0d, 0x40, 0x6e, 0xe9, 0x1d, 0x89, + 0xcf, 0x7f, 0xb6, 0xa4, 0xa2, 0x86, 0x82, 0x68, 0xc9, 0x5e, 0xf2, 0x59, +}; +static const unsigned char kat4132_addinpr1[] = { + 0xe0, 0x62, 0xb1, 0x38, 0xa2, 0x87, 0x5d, 0xb0, 0x87, 0xea, 0x10, 0xe7, + 0xa6, 0xff, 0xce, 0x2e, 0xf9, 0x03, 0xe1, 0x90, 0xd5, 0x66, 0xf4, 0xaa, + 0x65, 0x17, 0x8a, 0x27, 0x8d, 0x02, 0xa1, 0x2f, 0x20, 0xa4, 0xbc, 0x63, + 0xd9, 0xb1, 0xcf, 0x35, 0xd0, 0xf0, 0x88, 0x6d, 0x53, 0x77, 0xc9, 0xde, +}; +static const unsigned char kat4132_entropyinpr2[] = { + 0x2b, 0x22, 0xba, 0xae, 0x89, 0xe5, 0x3c, 0xac, 0x2e, 0x2f, 0xc0, 0x54, + 0xed, 0x1a, 0x82, 0x4a, 0xad, 0x6b, 0xdc, 0x59, 0xfe, 0x65, 0x8a, 0x23, + 0x6a, 0x5b, 0x35, 0x2d, 0x28, 0xc0, 0x32, 0xf4, 0x58, 0x32, 0xd3, 0x36, + 0x0d, 0x43, 0xf0, 0xc3, 0x92, 0x91, 0xf7, 0x13, 0x86, 0x12, 0x47, 0x8f, +}; +static const unsigned char kat4132_addinpr2[] = { + 0x80, 0xad, 0x06, 0xa7, 0xa3, 0x63, 0x30, 0xae, 0x20, 0x99, 0xab, 0x48, + 0x09, 0x79, 0x46, 0x58, 0xf4, 0x42, 0x0b, 0x4d, 0xfb, 0x48, 0x19, 0x0a, + 0xd4, 0x0d, 0xc7, 0xd2, 0xcb, 0x68, 0xb7, 0xa0, 0x83, 0xee, 0x41, 0xd9, + 0x32, 0x45, 0x30, 0x2a, 0xcb, 0x2f, 0xeb, 0xed, 0xa1, 0x0b, 0xbb, 0x3e, +}; +static const unsigned char kat4132_retbits[] = { + 0xe7, 0xa8, 0x88, 0x90, 0x19, 0x8f, 0x0c, 0x96, 0xdd, 0x6d, 0xa3, 0xfa, + 0x69, 0xd1, 0x85, 0x0f, 0xed, 0x1f, 0x6e, 0x87, 0x09, 0x52, 0xe8, 0xa2, + 0xe0, 0x96, 0xa9, 0x9d, 0xdc, 0xf5, 0x58, 0x3d, 0xb7, 0xf1, 0xe4, 0x0d, + 0xa1, 0xd3, 0x31, 0x93, 0xac, 0x6d, 0xc9, 0x66, 0x09, 0xcd, 0xa9, 0x3b, + 0x13, 0x0a, 0x72, 0xfe, 0xbf, 0x18, 0x8e, 0x8a, 0xf8, 0xd9, 0xbc, 0x2d, + 0x9d, 0x61, 0x99, 0x77, +}; +static const struct drbg_kat_pr_true kat4132_t = { + 6, kat4132_entropyin, kat4132_nonce, kat4132_persstr, + kat4132_entropyinpr1, kat4132_addinpr1, kat4132_entropyinpr2, + kat4132_addinpr2, kat4132_retbits +}; +static const struct drbg_kat kat4132 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4132_t +}; + +static const unsigned char kat4133_entropyin[] = { + 0x82, 0x6c, 0xad, 0xb8, 0x1d, 0x73, 0x2e, 0xe7, 0x6d, 0x7d, 0x14, 0xcf, + 0x90, 0xb6, 0xc2, 0x40, 0x62, 0x17, 0xe1, 0x7f, 0xe5, 0x9f, 0xb2, 0xc2, + 0xf3, 0x02, 0xe4, 0xc5, 0xf9, 0x2e, 0xc3, 0xbd, 0x7a, 0xb0, 0x8b, 0x8d, + 0x38, 0xc1, 0xa1, 0xdd, 0x79, 0x1e, 0xf1, 0xb4, 0xae, 0x20, 0x73, 0x0e, +}; +static const unsigned char kat4133_nonce[] = {0}; +static const unsigned char kat4133_persstr[] = { + 0x74, 0x67, 0x7e, 0x19, 0xd7, 0x2a, 0x86, 0xb9, 0xf2, 0x4e, 0xd8, 0x7a, + 0x7d, 0xb2, 0xec, 0x3b, 0xeb, 0x6b, 0xf8, 0x99, 0x6b, 0xaa, 0x16, 0x73, + 0x31, 0x23, 0xd5, 0x81, 0x99, 0x07, 0x57, 0x9b, 0xab, 0xaa, 0x3b, 0x6d, + 0xb6, 0xdb, 0xfe, 0x77, 0x7b, 0x9f, 0x41, 0xc4, 0x69, 0x75, 0xa8, 0x49, +}; +static const unsigned char kat4133_entropyinpr1[] = { + 0xd8, 0xb8, 0xb1, 0x1e, 0xc1, 0x18, 0x14, 0x72, 0xa5, 0x29, 0x64, 0x29, + 0xbb, 0x42, 0x1b, 0xa5, 0x2e, 0xb6, 0x5c, 0x4b, 0x18, 0x70, 0xe5, 0xad, + 0x97, 0x55, 0x0b, 0xe1, 0xde, 0x7a, 0xd2, 0x38, 0xa2, 0x2b, 0x1f, 0xd1, + 0x61, 0xe8, 0x05, 0x4e, 0x9c, 0xd5, 0xc1, 0x64, 0x36, 0x95, 0x44, 0x4a, +}; +static const unsigned char kat4133_addinpr1[] = { + 0x19, 0xc4, 0xa6, 0xca, 0x42, 0x1a, 0xab, 0x58, 0x57, 0x30, 0xc1, 0x6c, + 0x95, 0x5d, 0x6d, 0xf1, 0xb4, 0x94, 0x95, 0xfd, 0x46, 0xcc, 0x6c, 0x7a, + 0x60, 0xd1, 0xf4, 0x1b, 0xf5, 0x22, 0xa1, 0x14, 0x33, 0xe8, 0x5a, 0x57, + 0x21, 0xfd, 0xd0, 0x14, 0xdf, 0xc0, 0x60, 0x04, 0x99, 0x3e, 0x1a, 0x1e, +}; +static const unsigned char kat4133_entropyinpr2[] = { + 0xdc, 0x67, 0x51, 0x6d, 0xfb, 0xba, 0xd6, 0x30, 0x10, 0xec, 0x0f, 0xf8, + 0x7d, 0xe4, 0xd7, 0xd6, 0xeb, 0x97, 0x2e, 0x3d, 0xb7, 0xbd, 0x09, 0x13, + 0x67, 0xec, 0x09, 0x89, 0xa7, 0x51, 0xfd, 0x29, 0x7b, 0x24, 0xe9, 0xe2, + 0x14, 0x8e, 0x43, 0x09, 0x96, 0x7e, 0x3b, 0x98, 0x82, 0x4e, 0x41, 0xf6, +}; +static const unsigned char kat4133_addinpr2[] = { + 0x3f, 0x74, 0x5f, 0xe2, 0xa4, 0x60, 0x2c, 0xd5, 0xf5, 0x55, 0x94, 0xed, + 0xd3, 0x96, 0x63, 0x52, 0xec, 0x64, 0xd6, 0x4b, 0x11, 0xfa, 0x37, 0x40, + 0x2b, 0xb6, 0x92, 0x56, 0x50, 0x25, 0xd2, 0x2f, 0x3b, 0x9b, 0x6d, 0xcb, + 0x5e, 0xe5, 0xf4, 0x78, 0x49, 0x53, 0x3e, 0x0a, 0x80, 0x1c, 0x07, 0xc1, +}; +static const unsigned char kat4133_retbits[] = { + 0xf0, 0x02, 0x81, 0xc9, 0x23, 0x9d, 0x2f, 0xfa, 0xc5, 0x67, 0xfa, 0x70, + 0x06, 0xc6, 0x39, 0x50, 0x0c, 0xa0, 0xbf, 0xb5, 0x42, 0x57, 0x0c, 0xad, + 0x8b, 0x62, 0xa3, 0x37, 0xb1, 0x71, 0x98, 0x4f, 0x3f, 0x05, 0x86, 0x00, + 0xdf, 0x0d, 0x52, 0x91, 0xa0, 0x42, 0x97, 0x7c, 0x60, 0xa6, 0x00, 0x5a, + 0x1d, 0x93, 0xa0, 0x79, 0x3c, 0xe4, 0xe9, 0xef, 0x1d, 0x39, 0x56, 0xe8, + 0xf2, 0xc2, 0x62, 0x35, +}; +static const struct drbg_kat_pr_true kat4133_t = { + 7, kat4133_entropyin, kat4133_nonce, kat4133_persstr, + kat4133_entropyinpr1, kat4133_addinpr1, kat4133_entropyinpr2, + kat4133_addinpr2, kat4133_retbits +}; +static const struct drbg_kat kat4133 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4133_t +}; + +static const unsigned char kat4134_entropyin[] = { + 0xe3, 0xc2, 0xee, 0x57, 0xa9, 0xe8, 0x71, 0x8e, 0x79, 0x6e, 0x4b, 0x6f, + 0xe1, 0x03, 0x3e, 0x0f, 0xe9, 0xd4, 0x03, 0x36, 0x52, 0x43, 0x40, 0x3a, + 0x1e, 0xce, 0xdc, 0xd8, 0x38, 0x73, 0x57, 0xb3, 0x27, 0x92, 0xfa, 0xf9, + 0x4b, 0xa6, 0xe7, 0xb5, 0xdb, 0x3a, 0x0a, 0x3f, 0x41, 0xdd, 0xb9, 0xac, +}; +static const unsigned char kat4134_nonce[] = {0}; +static const unsigned char kat4134_persstr[] = { + 0x72, 0x12, 0x23, 0xde, 0x1e, 0x83, 0x0b, 0xbc, 0x80, 0x6a, 0x68, 0x99, + 0x53, 0x01, 0x2f, 0x06, 0xcb, 0x3e, 0x9f, 0x55, 0x62, 0x55, 0x2a, 0xe1, + 0xeb, 0x2c, 0x49, 0xc6, 0x52, 0x92, 0xe8, 0x90, 0x33, 0xc4, 0x37, 0x2d, + 0x0c, 0xe8, 0x66, 0x1a, 0xf7, 0xb5, 0xb7, 0x48, 0xfd, 0x44, 0x9a, 0x02, +}; +static const unsigned char kat4134_entropyinpr1[] = { + 0xe2, 0x63, 0x2a, 0xd9, 0xc2, 0xf5, 0x70, 0x47, 0x4f, 0xdb, 0xa5, 0xfd, + 0x1f, 0x12, 0x55, 0xc8, 0x88, 0xc3, 0x5d, 0xa4, 0xa2, 0x91, 0x04, 0xae, + 0x82, 0x51, 0xff, 0x80, 0xe0, 0xda, 0x36, 0x3f, 0x69, 0x25, 0x33, 0x90, + 0xa5, 0xf0, 0x79, 0xcc, 0x89, 0xf6, 0x16, 0x9f, 0xd2, 0x66, 0x4f, 0xf9, +}; +static const unsigned char kat4134_addinpr1[] = { + 0x1b, 0xcd, 0x7c, 0x86, 0xe5, 0x96, 0x99, 0x59, 0x45, 0x4e, 0x20, 0x8e, + 0x1d, 0x78, 0x85, 0xfb, 0x35, 0x27, 0x60, 0x34, 0xc6, 0xd8, 0xb4, 0xee, + 0x91, 0x65, 0x6b, 0xe5, 0xe6, 0xf1, 0xbe, 0x89, 0x9c, 0x72, 0xc1, 0xff, + 0x3d, 0xb3, 0xdc, 0x7d, 0x99, 0xeb, 0x05, 0x33, 0x53, 0x85, 0x9e, 0x22, +}; +static const unsigned char kat4134_entropyinpr2[] = { + 0x8a, 0xc8, 0x78, 0x2b, 0x91, 0xcb, 0x38, 0x87, 0x93, 0xac, 0x51, 0x2a, + 0x5c, 0xad, 0x2c, 0x89, 0x87, 0x9b, 0x7c, 0x83, 0xc3, 0x71, 0xab, 0xeb, + 0x4d, 0xd9, 0x1f, 0x9b, 0x06, 0x4b, 0x02, 0xab, 0x30, 0x7e, 0x50, 0xe5, + 0x0d, 0xd7, 0x61, 0xf2, 0x3d, 0x25, 0xb5, 0x95, 0xbe, 0x89, 0xaa, 0x96, +}; +static const unsigned char kat4134_addinpr2[] = { + 0xa9, 0x73, 0x6d, 0xf4, 0xc5, 0x60, 0xe1, 0xf3, 0x89, 0x7f, 0xa4, 0x19, + 0xb8, 0x8c, 0x36, 0x31, 0x5d, 0x47, 0x9e, 0xc3, 0x33, 0x7e, 0xd5, 0x84, + 0x8d, 0xb2, 0x46, 0xb3, 0xf7, 0x0c, 0xf2, 0x6e, 0x69, 0x14, 0x78, 0x1e, + 0x59, 0xe3, 0xac, 0xbd, 0xb4, 0xf2, 0x91, 0x02, 0x74, 0x23, 0x8b, 0xaf, +}; +static const unsigned char kat4134_retbits[] = { + 0x03, 0x2d, 0x8c, 0x6c, 0x8c, 0x7f, 0x9f, 0x18, 0x8d, 0xb3, 0x43, 0x69, + 0x99, 0xd1, 0x08, 0x51, 0x18, 0xb8, 0x77, 0x2b, 0x57, 0xc0, 0xdd, 0x74, + 0x20, 0xa2, 0x71, 0x7e, 0x3f, 0xaf, 0xa4, 0x12, 0x47, 0xad, 0xd1, 0x22, + 0x1b, 0x04, 0x9a, 0x76, 0x1f, 0x1e, 0x72, 0x6b, 0x1c, 0x13, 0xfe, 0x58, + 0xfb, 0xcf, 0xda, 0x18, 0xf1, 0x2f, 0xa6, 0x90, 0x6c, 0x80, 0xfb, 0x2b, + 0x23, 0xaf, 0xff, 0xd6, +}; +static const struct drbg_kat_pr_true kat4134_t = { + 8, kat4134_entropyin, kat4134_nonce, kat4134_persstr, + kat4134_entropyinpr1, kat4134_addinpr1, kat4134_entropyinpr2, + kat4134_addinpr2, kat4134_retbits +}; +static const struct drbg_kat kat4134 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4134_t +}; + +static const unsigned char kat4135_entropyin[] = { + 0x81, 0x73, 0x83, 0xa6, 0x51, 0x52, 0x17, 0x54, 0x3f, 0xc3, 0x48, 0xde, + 0xa8, 0xf2, 0xbc, 0xd2, 0x93, 0xe5, 0xda, 0x19, 0xac, 0x2e, 0xfc, 0xd4, + 0xf2, 0xda, 0xb9, 0xac, 0x02, 0x99, 0xc8, 0xb6, 0xfa, 0xc7, 0x92, 0xbf, + 0x07, 0x03, 0x23, 0x38, 0x3c, 0x44, 0x20, 0x9f, 0x87, 0x5d, 0xb9, 0xdb, +}; +static const unsigned char kat4135_nonce[] = {0}; +static const unsigned char kat4135_persstr[] = { + 0xc9, 0xb0, 0x8c, 0x5f, 0xfe, 0x51, 0xad, 0x3a, 0xb8, 0xec, 0x86, 0xfd, + 0x32, 0xb0, 0x94, 0x1f, 0x69, 0x93, 0x38, 0x4f, 0x76, 0xeb, 0x5b, 0xdb, + 0x5c, 0xbd, 0x51, 0x94, 0x9a, 0xaf, 0x9f, 0xa6, 0xd2, 0x74, 0x4a, 0xd8, + 0x89, 0x20, 0x78, 0xbe, 0x85, 0xdc, 0xdb, 0x77, 0x9a, 0x49, 0x10, 0xd0, +}; +static const unsigned char kat4135_entropyinpr1[] = { + 0x59, 0x07, 0x05, 0x44, 0xc5, 0xa5, 0xb6, 0x67, 0xae, 0x83, 0x85, 0xf0, + 0xd7, 0x4d, 0xee, 0x17, 0x11, 0x25, 0x6d, 0x17, 0x9e, 0x78, 0x6c, 0xb2, + 0x76, 0x4a, 0xe4, 0x91, 0xf1, 0xeb, 0x16, 0xc3, 0x5a, 0xb4, 0x91, 0x11, + 0x76, 0x39, 0xe0, 0x83, 0xf6, 0x37, 0x3b, 0x2e, 0xdc, 0x23, 0xf7, 0x8b, +}; +static const unsigned char kat4135_addinpr1[] = { + 0xe8, 0x69, 0x59, 0x46, 0x97, 0xbe, 0x99, 0x68, 0xdb, 0x21, 0xa2, 0x68, + 0xb7, 0x5e, 0x55, 0x68, 0xb4, 0x67, 0x91, 0x72, 0x12, 0x7b, 0xfc, 0x23, + 0x24, 0x46, 0xec, 0x70, 0xc7, 0xb2, 0xf6, 0x1f, 0x8b, 0xff, 0x4f, 0x8b, + 0xdb, 0x5a, 0xe7, 0x1e, 0x8e, 0xff, 0x1e, 0x2f, 0x61, 0xdc, 0xfe, 0x2a, +}; +static const unsigned char kat4135_entropyinpr2[] = { + 0x07, 0xfe, 0x61, 0xec, 0xbb, 0x4b, 0x67, 0x58, 0xdf, 0xda, 0x73, 0xe1, + 0xac, 0x86, 0x1f, 0xc4, 0x7b, 0x03, 0x5c, 0xe4, 0x41, 0xf3, 0x74, 0xbb, + 0xeb, 0x37, 0xdc, 0x65, 0xde, 0x61, 0xb2, 0x2d, 0x1c, 0x44, 0x3b, 0xc1, + 0x6b, 0x8e, 0x49, 0x16, 0x85, 0x83, 0xa2, 0xf2, 0x09, 0x56, 0x94, 0xc6, +}; +static const unsigned char kat4135_addinpr2[] = { + 0x4e, 0x4f, 0x06, 0x6a, 0xf8, 0x3b, 0x30, 0x9e, 0x9f, 0x4f, 0x7f, 0xaf, + 0xc0, 0xf8, 0x97, 0x15, 0xc5, 0xf5, 0xc3, 0xc9, 0xde, 0x4e, 0xaf, 0x0a, + 0xa3, 0x84, 0x08, 0x19, 0xb8, 0xf0, 0xe7, 0x01, 0x51, 0xf4, 0x43, 0x33, + 0x6a, 0x6d, 0xeb, 0x60, 0xad, 0x23, 0xdc, 0x85, 0x2c, 0xab, 0x5b, 0x48, +}; +static const unsigned char kat4135_retbits[] = { + 0x5c, 0x11, 0xa0, 0x13, 0x81, 0xc0, 0x86, 0x5e, 0xf4, 0x8e, 0x28, 0x7c, + 0x28, 0x56, 0xd2, 0x66, 0x88, 0x11, 0xce, 0x69, 0x2e, 0x49, 0x82, 0xda, + 0x51, 0xad, 0x3f, 0x13, 0xd5, 0xcc, 0xe8, 0xef, 0xaf, 0xa3, 0x7b, 0x5f, + 0xa9, 0xa7, 0x4f, 0xe3, 0xb3, 0xe5, 0x42, 0x4f, 0xbd, 0xf7, 0xcb, 0x54, + 0x4a, 0x84, 0x0d, 0xf5, 0xe1, 0x6c, 0xd5, 0x89, 0x87, 0x9d, 0xb0, 0xfd, + 0xc3, 0xdb, 0xc2, 0xf1, +}; +static const struct drbg_kat_pr_true kat4135_t = { + 9, kat4135_entropyin, kat4135_nonce, kat4135_persstr, + kat4135_entropyinpr1, kat4135_addinpr1, kat4135_entropyinpr2, + kat4135_addinpr2, kat4135_retbits +}; +static const struct drbg_kat kat4135 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4135_t +}; + +static const unsigned char kat4136_entropyin[] = { + 0xb9, 0x4a, 0x0e, 0x27, 0x64, 0x4c, 0x2f, 0xbb, 0xd3, 0xca, 0x0b, 0xda, + 0xb9, 0xfb, 0xc9, 0xf6, 0x24, 0x7d, 0x58, 0x54, 0x81, 0x53, 0x38, 0x51, + 0x48, 0xab, 0xc2, 0x11, 0x93, 0x2d, 0x28, 0x55, 0x7a, 0xd4, 0x45, 0x64, + 0x78, 0xd9, 0xf3, 0xfe, 0x98, 0x83, 0x11, 0x0e, 0x01, 0xd5, 0x04, 0xc6, +}; +static const unsigned char kat4136_nonce[] = {0}; +static const unsigned char kat4136_persstr[] = { + 0xb6, 0x15, 0xd1, 0x29, 0x06, 0x56, 0x88, 0x59, 0xd4, 0x17, 0x6f, 0x71, + 0xce, 0x16, 0xdb, 0xe5, 0x26, 0xfb, 0x97, 0xdd, 0xdc, 0x20, 0x10, 0x24, + 0x23, 0x20, 0x9c, 0xe0, 0x92, 0x3f, 0x5b, 0x8e, 0x04, 0x8c, 0xfe, 0x9d, + 0x67, 0x05, 0xbb, 0x54, 0xea, 0x4e, 0x7d, 0x92, 0x58, 0x01, 0xb8, 0xa8, +}; +static const unsigned char kat4136_entropyinpr1[] = { + 0xc6, 0xdb, 0xc6, 0xac, 0x40, 0xd3, 0x95, 0x24, 0x64, 0x55, 0x28, 0x21, + 0x4b, 0x80, 0xff, 0xf3, 0xd0, 0xd6, 0x62, 0xf4, 0x2c, 0x10, 0xc9, 0x09, + 0xf1, 0x2c, 0x15, 0x6d, 0x3c, 0xa8, 0x5a, 0x0d, 0x18, 0x8e, 0xca, 0x30, + 0x0c, 0xa9, 0x6b, 0x95, 0xfd, 0x7e, 0xf2, 0xee, 0x03, 0x09, 0x13, 0x3d, +}; +static const unsigned char kat4136_addinpr1[] = { + 0xb2, 0x42, 0x24, 0xc2, 0xb4, 0x14, 0xaf, 0xb9, 0xc4, 0x1a, 0xd8, 0x0e, + 0x97, 0x64, 0x7a, 0xf2, 0x68, 0x4e, 0x5d, 0x48, 0xd7, 0xb3, 0x30, 0xae, + 0x49, 0x3c, 0xbf, 0xfe, 0x60, 0x8b, 0xd1, 0x78, 0xae, 0xdd, 0xfb, 0x37, + 0x7a, 0xb8, 0x6a, 0xb6, 0x12, 0xed, 0x9a, 0xa2, 0x41, 0x08, 0x89, 0x53, +}; +static const unsigned char kat4136_entropyinpr2[] = { + 0x0e, 0x15, 0xcc, 0x3f, 0xb7, 0x1c, 0xbf, 0x02, 0x69, 0x08, 0x9a, 0x6e, + 0xf6, 0xe7, 0x26, 0x81, 0x99, 0x47, 0x44, 0x00, 0xa3, 0x16, 0x21, 0xeb, + 0xf9, 0xf3, 0x16, 0x6f, 0x3d, 0xd8, 0x48, 0x3e, 0x87, 0xff, 0xed, 0x62, + 0xd9, 0x8a, 0xcc, 0x3b, 0x75, 0x68, 0xd3, 0xad, 0x73, 0xbb, 0xee, 0x3c, +}; +static const unsigned char kat4136_addinpr2[] = { + 0x34, 0x31, 0xc0, 0x83, 0xe3, 0x3f, 0x29, 0xa3, 0x9e, 0xc6, 0xa3, 0x59, + 0xbd, 0x52, 0xc0, 0x05, 0x65, 0xbd, 0x67, 0x6b, 0x1e, 0xc9, 0xfa, 0x61, + 0xbd, 0x58, 0x36, 0x43, 0xdb, 0x4d, 0xf1, 0xe4, 0xb1, 0x27, 0x48, 0x51, + 0x6a, 0x41, 0xbf, 0x6e, 0x24, 0x2e, 0x75, 0xb5, 0x08, 0x4f, 0x7e, 0x45, +}; +static const unsigned char kat4136_retbits[] = { + 0x1a, 0xa6, 0x40, 0xe2, 0xbf, 0x9c, 0xe8, 0xbb, 0xa6, 0xe1, 0xe0, 0x37, + 0x2d, 0xc3, 0x12, 0x0b, 0xe9, 0x85, 0x83, 0x41, 0xd8, 0x63, 0x96, 0xbc, + 0x29, 0x06, 0x91, 0xec, 0x57, 0xcd, 0xbb, 0xe9, 0x6b, 0x73, 0x8f, 0xfb, + 0x2d, 0x51, 0x80, 0x03, 0x68, 0xe9, 0x31, 0x90, 0x01, 0x07, 0x9d, 0xd9, + 0xbf, 0x0e, 0xb2, 0xc0, 0x36, 0x7d, 0xea, 0xb4, 0x7f, 0x60, 0x3b, 0x65, + 0x1d, 0xdb, 0x1a, 0xd9, +}; +static const struct drbg_kat_pr_true kat4136_t = { + 10, kat4136_entropyin, kat4136_nonce, kat4136_persstr, + kat4136_entropyinpr1, kat4136_addinpr1, kat4136_entropyinpr2, + kat4136_addinpr2, kat4136_retbits +}; +static const struct drbg_kat kat4136 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4136_t +}; + +static const unsigned char kat4137_entropyin[] = { + 0x8a, 0xb5, 0x7a, 0x4f, 0xb7, 0xfc, 0x06, 0x69, 0x5b, 0xc7, 0xb4, 0x08, + 0x32, 0xe1, 0xdf, 0x5b, 0x99, 0x81, 0x33, 0x2c, 0xbd, 0x37, 0xa3, 0x46, + 0x9a, 0x64, 0x63, 0x5d, 0xff, 0xe3, 0xa7, 0xb8, 0x4e, 0x1a, 0x37, 0x14, + 0xd6, 0x50, 0xe5, 0x3b, 0xff, 0x11, 0x5a, 0xfc, 0xc3, 0xb1, 0x41, 0xb4, +}; +static const unsigned char kat4137_nonce[] = {0}; +static const unsigned char kat4137_persstr[] = { + 0x09, 0xf7, 0x6e, 0xe9, 0xd8, 0x06, 0x0f, 0xae, 0xaa, 0xaa, 0x68, 0xef, + 0x02, 0xf4, 0x4a, 0xb9, 0xe7, 0x4b, 0xa1, 0xd1, 0x0d, 0x8f, 0xd1, 0x28, + 0x1e, 0xb2, 0xbc, 0x20, 0xda, 0x2e, 0x48, 0xa0, 0xab, 0xf9, 0xd1, 0x42, + 0xa6, 0x7e, 0xfc, 0x6b, 0xd4, 0x8b, 0x1f, 0x46, 0xfc, 0xe0, 0x82, 0xa6, +}; +static const unsigned char kat4137_entropyinpr1[] = { + 0x62, 0x80, 0x95, 0xc0, 0x0e, 0xa0, 0x7e, 0xef, 0x51, 0xb1, 0x74, 0xae, + 0xa4, 0x03, 0x00, 0x2a, 0xbb, 0x1c, 0x4b, 0x02, 0xe3, 0x02, 0x54, 0x5c, + 0x4d, 0x78, 0xe3, 0xad, 0xae, 0x33, 0xcb, 0x7e, 0x5e, 0xe4, 0x8b, 0x57, + 0x39, 0x77, 0xc0, 0x47, 0x24, 0xe0, 0x9f, 0xb6, 0x89, 0x64, 0x47, 0x57, +}; +static const unsigned char kat4137_addinpr1[] = { + 0x6a, 0xcd, 0x6a, 0x37, 0x99, 0x6c, 0x87, 0xda, 0x16, 0x8e, 0xec, 0xfa, + 0x1b, 0x2d, 0x51, 0x5a, 0x3e, 0x02, 0xc9, 0xc9, 0x3b, 0x2b, 0xf6, 0xb0, + 0xe9, 0x7b, 0xcf, 0xcd, 0x15, 0xe3, 0x5e, 0x02, 0xbd, 0xcc, 0xeb, 0xad, + 0xe2, 0x53, 0xcf, 0x4c, 0xe6, 0xfd, 0x80, 0x34, 0xe8, 0x0d, 0xcc, 0x7d, +}; +static const unsigned char kat4137_entropyinpr2[] = { + 0x57, 0xf5, 0xe2, 0x13, 0x3c, 0x46, 0xbb, 0x96, 0x02, 0x85, 0xee, 0x69, + 0xdc, 0x80, 0x5b, 0x1d, 0x1e, 0xa2, 0x44, 0x45, 0xce, 0xe8, 0x96, 0xce, + 0x14, 0x0b, 0xde, 0xab, 0x64, 0x89, 0xa2, 0x6c, 0x40, 0x10, 0xd4, 0x2a, + 0x4d, 0xf1, 0x96, 0x3b, 0x5f, 0x8d, 0x2b, 0x9c, 0x7d, 0x97, 0x52, 0x0f, +}; +static const unsigned char kat4137_addinpr2[] = { + 0x98, 0x0e, 0x6d, 0xbb, 0x1d, 0x25, 0x66, 0x9d, 0x38, 0xbf, 0xf0, 0xcb, + 0xc6, 0x91, 0xde, 0x84, 0x5a, 0x57, 0x00, 0x1f, 0x36, 0x59, 0x58, 0xd1, + 0x84, 0xe9, 0xea, 0xb5, 0xbf, 0x81, 0xa7, 0xc3, 0xef, 0x60, 0x7d, 0x1f, + 0xe9, 0xc9, 0x3b, 0xfd, 0x61, 0x4f, 0x2b, 0xed, 0x20, 0x06, 0x5b, 0x84, +}; +static const unsigned char kat4137_retbits[] = { + 0x03, 0x2a, 0xcc, 0x5c, 0xab, 0xbe, 0xf2, 0x79, 0x18, 0xb6, 0xd3, 0xab, + 0x05, 0x09, 0x38, 0x3e, 0x88, 0x23, 0x9f, 0x8c, 0xa9, 0xcb, 0x20, 0xc9, + 0xe1, 0x3f, 0x05, 0xf0, 0x24, 0x2b, 0xc5, 0x25, 0x8f, 0x48, 0x3b, 0x0d, + 0xef, 0xf8, 0xda, 0x22, 0xd4, 0x6b, 0x50, 0xb2, 0x13, 0x96, 0x76, 0x93, + 0x5b, 0x4b, 0xa0, 0x6a, 0xa5, 0x9d, 0x72, 0x0e, 0x21, 0xcf, 0x15, 0xd4, + 0xf5, 0x06, 0xf7, 0xb7, +}; +static const struct drbg_kat_pr_true kat4137_t = { + 11, kat4137_entropyin, kat4137_nonce, kat4137_persstr, + kat4137_entropyinpr1, kat4137_addinpr1, kat4137_entropyinpr2, + kat4137_addinpr2, kat4137_retbits +}; +static const struct drbg_kat kat4137 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4137_t +}; + +static const unsigned char kat4138_entropyin[] = { + 0x84, 0xcc, 0xe1, 0x79, 0x74, 0x25, 0x6d, 0x04, 0xdf, 0x34, 0x97, 0xc4, + 0x88, 0x48, 0x89, 0x03, 0xa6, 0x56, 0x91, 0x94, 0x5b, 0x4a, 0xc1, 0x32, + 0x63, 0x64, 0x3f, 0x48, 0x55, 0xe4, 0x25, 0x26, 0xc8, 0x0d, 0xe9, 0xca, + 0xf5, 0x73, 0xfc, 0x98, 0x70, 0x58, 0x1e, 0xd4, 0xa8, 0x3f, 0x8c, 0xf0, +}; +static const unsigned char kat4138_nonce[] = {0}; +static const unsigned char kat4138_persstr[] = { + 0x42, 0xbf, 0x74, 0x52, 0xb8, 0x01, 0x99, 0xcc, 0x34, 0x05, 0x00, 0x56, + 0x83, 0x06, 0x24, 0xd4, 0x09, 0x60, 0x75, 0x49, 0x09, 0x5e, 0x91, 0xe8, + 0x84, 0xf5, 0xf0, 0x0a, 0xe4, 0x4d, 0x65, 0xfb, 0x97, 0xdd, 0x7d, 0x5e, + 0xa7, 0x81, 0x61, 0x78, 0xd1, 0xcd, 0x62, 0x04, 0xec, 0xdf, 0x3b, 0xaf, +}; +static const unsigned char kat4138_entropyinpr1[] = { + 0x64, 0x0a, 0x46, 0x93, 0xdb, 0x17, 0x78, 0xdb, 0xd4, 0xcf, 0xb2, 0x7b, + 0xa0, 0xf7, 0x75, 0xb3, 0x16, 0x9d, 0x6b, 0x2d, 0x86, 0x00, 0x33, 0x8d, + 0x55, 0xd4, 0x4a, 0xe5, 0xac, 0xb6, 0x06, 0x52, 0x94, 0xed, 0x2e, 0x77, + 0x30, 0x25, 0x5e, 0xef, 0x58, 0x12, 0x48, 0x50, 0x27, 0x3b, 0xec, 0x29, +}; +static const unsigned char kat4138_addinpr1[] = { + 0x1a, 0x7e, 0x1d, 0x25, 0x06, 0xd5, 0xc4, 0x74, 0xf8, 0x47, 0x02, 0xae, + 0xe6, 0x40, 0x63, 0xde, 0x77, 0xa2, 0x79, 0x12, 0xc4, 0x5f, 0x0f, 0x88, + 0x7e, 0x11, 0x65, 0x06, 0xd9, 0x12, 0x9f, 0xd0, 0x18, 0xa6, 0x12, 0x27, + 0xe9, 0x79, 0x48, 0x4d, 0xaf, 0xd1, 0xeb, 0x87, 0x50, 0xe9, 0xe2, 0xd3, +}; +static const unsigned char kat4138_entropyinpr2[] = { + 0x20, 0x60, 0x48, 0x84, 0x28, 0x60, 0xda, 0xa4, 0x53, 0x35, 0x5c, 0x05, + 0x13, 0x9b, 0xda, 0x63, 0x14, 0xfd, 0xeb, 0x3c, 0x8a, 0xb5, 0x81, 0x75, + 0xe3, 0x8c, 0x2e, 0x23, 0x16, 0x9d, 0xda, 0xf2, 0x5a, 0xe1, 0xca, 0x9e, + 0x9d, 0xae, 0x0d, 0x43, 0x75, 0x1a, 0xde, 0x43, 0x40, 0x03, 0x17, 0xb7, +}; +static const unsigned char kat4138_addinpr2[] = { + 0xe6, 0xc3, 0x36, 0x96, 0x8e, 0x46, 0xf5, 0xbf, 0x00, 0x46, 0x68, 0xdc, + 0x65, 0x1a, 0x3e, 0xa0, 0x7b, 0xa9, 0x3c, 0x74, 0x28, 0x2f, 0xf9, 0x84, + 0x7b, 0x58, 0x65, 0xfe, 0xa8, 0x93, 0x48, 0x3c, 0xbd, 0x73, 0xc1, 0xa3, + 0xf6, 0x9f, 0x56, 0xe8, 0x5d, 0xce, 0x7f, 0xe3, 0x86, 0x40, 0xaa, 0x88, +}; +static const unsigned char kat4138_retbits[] = { + 0x64, 0x35, 0xf9, 0xe3, 0xb8, 0x6b, 0x9c, 0x42, 0x68, 0x6d, 0x8e, 0xa5, + 0x61, 0x80, 0xd3, 0x76, 0x17, 0x55, 0xd7, 0xec, 0x78, 0x84, 0xa8, 0x28, + 0x6f, 0x8a, 0x16, 0x1a, 0xf4, 0x20, 0xd3, 0xbe, 0xdf, 0x2a, 0x5d, 0xb4, + 0xf6, 0x0c, 0x7a, 0xaa, 0x69, 0xd3, 0x9b, 0x15, 0x48, 0x1a, 0x54, 0x68, + 0xdd, 0xa9, 0x20, 0x4b, 0x9a, 0x0e, 0x35, 0xaa, 0x66, 0x21, 0xa8, 0xe9, + 0x41, 0x5e, 0xbe, 0xd6, +}; +static const struct drbg_kat_pr_true kat4138_t = { + 12, kat4138_entropyin, kat4138_nonce, kat4138_persstr, + kat4138_entropyinpr1, kat4138_addinpr1, kat4138_entropyinpr2, + kat4138_addinpr2, kat4138_retbits +}; +static const struct drbg_kat kat4138 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4138_t +}; + +static const unsigned char kat4139_entropyin[] = { + 0x6e, 0xc1, 0x56, 0xac, 0x8c, 0x56, 0x9e, 0xef, 0xce, 0xa5, 0x0f, 0x80, + 0x0f, 0x28, 0x96, 0x41, 0xf7, 0x4e, 0xff, 0x84, 0x4c, 0x5b, 0x77, 0x3b, + 0x00, 0xf8, 0x22, 0x9d, 0x1b, 0xed, 0xbc, 0xa0, 0x61, 0x1f, 0x47, 0x3d, + 0xce, 0x50, 0xac, 0xbd, 0xb9, 0xc5, 0xf7, 0x0b, 0xe4, 0x61, 0x28, 0x50, +}; +static const unsigned char kat4139_nonce[] = {0}; +static const unsigned char kat4139_persstr[] = { + 0x9f, 0xbd, 0x8b, 0xc5, 0x8c, 0xa2, 0x90, 0x83, 0x78, 0xc0, 0x42, 0x76, + 0x5a, 0xec, 0x63, 0x71, 0xd4, 0x36, 0x6b, 0x65, 0x32, 0x3c, 0x4c, 0xfd, + 0x55, 0x85, 0xa6, 0x7e, 0x7c, 0x5a, 0xe1, 0xb5, 0x60, 0x31, 0x53, 0x91, + 0x06, 0xb2, 0x43, 0x2f, 0x64, 0xf9, 0x44, 0x26, 0x61, 0x92, 0x26, 0x8c, +}; +static const unsigned char kat4139_entropyinpr1[] = { + 0x13, 0x97, 0x2b, 0x48, 0xc6, 0x06, 0xed, 0x15, 0x46, 0x72, 0x2e, 0x95, + 0x42, 0xea, 0x2d, 0xe4, 0x65, 0xd7, 0x8e, 0xbb, 0xcf, 0xb8, 0x07, 0x13, + 0x35, 0xe5, 0xcf, 0x13, 0x7a, 0x2f, 0xc4, 0x8a, 0xd4, 0xca, 0x0a, 0xf3, + 0x1d, 0xec, 0x45, 0x37, 0xe2, 0x54, 0x54, 0x28, 0xe1, 0xea, 0xaa, 0x42, +}; +static const unsigned char kat4139_addinpr1[] = { + 0x68, 0xa2, 0xb1, 0x22, 0x29, 0xd9, 0x93, 0xe6, 0x9a, 0xab, 0x58, 0xcd, + 0xa7, 0x7a, 0x3b, 0xe9, 0xbd, 0x66, 0x14, 0x5c, 0x45, 0xb4, 0x68, 0x81, + 0x6e, 0xdd, 0x82, 0xc0, 0x39, 0x3f, 0xeb, 0x4f, 0x22, 0x61, 0xde, 0xc0, + 0xa5, 0x28, 0xe1, 0x0b, 0xcb, 0x45, 0x51, 0xab, 0x05, 0x1b, 0xd5, 0xbc, +}; +static const unsigned char kat4139_entropyinpr2[] = { + 0x73, 0xed, 0x9a, 0xe0, 0x3d, 0xa3, 0x0f, 0x20, 0x08, 0xd9, 0x25, 0x6b, + 0xb5, 0x61, 0x62, 0xb0, 0xe2, 0x68, 0x19, 0x2e, 0x07, 0x36, 0x36, 0xdc, + 0xd6, 0xc9, 0x9e, 0xcd, 0x7a, 0xf5, 0x18, 0xbe, 0x08, 0xf1, 0x6e, 0x77, + 0xc6, 0xc4, 0x25, 0x96, 0xa3, 0x57, 0x52, 0xd0, 0x12, 0xb2, 0xd2, 0x5a, +}; +static const unsigned char kat4139_addinpr2[] = { + 0xcd, 0x88, 0x33, 0xbd, 0x54, 0x66, 0x3e, 0xb1, 0x6c, 0xa5, 0xb5, 0x0a, + 0x09, 0x2e, 0x47, 0x2a, 0xa2, 0x01, 0x21, 0x1d, 0x46, 0xc7, 0x75, 0x4e, + 0xa8, 0x42, 0x05, 0x0b, 0x35, 0x60, 0xe8, 0x49, 0x12, 0xec, 0xd4, 0xce, + 0x66, 0xc3, 0xa7, 0xcf, 0xf0, 0xac, 0xc9, 0x6c, 0xf7, 0x99, 0x00, 0x93, +}; +static const unsigned char kat4139_retbits[] = { + 0x40, 0xc4, 0xfb, 0xf5, 0xd9, 0xce, 0xc7, 0x56, 0xb7, 0xb3, 0x42, 0x78, + 0x31, 0x56, 0x65, 0xec, 0x36, 0xcd, 0xaa, 0x6c, 0xd4, 0x82, 0x84, 0xe2, + 0x85, 0x56, 0x11, 0x83, 0x59, 0xb1, 0x1c, 0x2d, 0x28, 0x5e, 0xb1, 0x45, + 0xc3, 0x03, 0x49, 0x03, 0x0e, 0xde, 0xf2, 0xfe, 0xaf, 0xdd, 0x1a, 0x26, + 0xca, 0xf0, 0xfb, 0x69, 0x73, 0xa7, 0x76, 0x63, 0x8e, 0x9f, 0x4f, 0x00, + 0x48, 0xb8, 0x91, 0x8b, +}; +static const struct drbg_kat_pr_true kat4139_t = { + 13, kat4139_entropyin, kat4139_nonce, kat4139_persstr, + kat4139_entropyinpr1, kat4139_addinpr1, kat4139_entropyinpr2, + kat4139_addinpr2, kat4139_retbits +}; +static const struct drbg_kat kat4139 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4139_t +}; + +static const unsigned char kat4140_entropyin[] = { + 0x83, 0x2f, 0x28, 0xed, 0xb5, 0xdf, 0x05, 0x2f, 0xb4, 0xc5, 0xa7, 0x05, + 0x9d, 0x1d, 0x3a, 0x6d, 0xb0, 0xd8, 0x4a, 0xf9, 0xa0, 0x2c, 0xc1, 0x89, + 0x41, 0xcb, 0x0e, 0xb5, 0x36, 0x71, 0xab, 0x5e, 0xbb, 0xae, 0x65, 0xb3, + 0xa3, 0x19, 0x15, 0x95, 0x83, 0x8c, 0xa8, 0xe8, 0xfa, 0x07, 0x22, 0xa6, +}; +static const unsigned char kat4140_nonce[] = {0}; +static const unsigned char kat4140_persstr[] = { + 0xbe, 0x14, 0x4a, 0xc8, 0x0b, 0x82, 0x8d, 0xd3, 0x3a, 0x3e, 0xd6, 0xfe, + 0x55, 0x3d, 0xfd, 0xc9, 0xad, 0x3c, 0xd9, 0x5d, 0x12, 0x8d, 0x8e, 0xd4, + 0x66, 0xfe, 0xc8, 0x09, 0xa2, 0x45, 0x6e, 0x2b, 0x0d, 0x2c, 0x7e, 0x6b, + 0x4b, 0xda, 0xc7, 0x9b, 0x5e, 0x7a, 0xe5, 0x5b, 0xab, 0x26, 0x67, 0x52, +}; +static const unsigned char kat4140_entropyinpr1[] = { + 0x11, 0x3d, 0x8a, 0x06, 0x8f, 0x38, 0x5d, 0x86, 0x5f, 0xda, 0xd9, 0x6c, + 0xf7, 0x8d, 0x30, 0x28, 0x91, 0x21, 0xed, 0x22, 0x4b, 0x76, 0x65, 0xcf, + 0xc3, 0xd6, 0x1a, 0xd7, 0xa7, 0x4d, 0xc4, 0xf6, 0x24, 0xf7, 0x61, 0xe6, + 0x30, 0xdd, 0x22, 0xc3, 0x95, 0x4b, 0xa1, 0x11, 0xdb, 0xdd, 0xcf, 0x8b, +}; +static const unsigned char kat4140_addinpr1[] = { + 0x38, 0xc2, 0x4b, 0x8e, 0xe6, 0x82, 0xa8, 0xf5, 0xf8, 0x98, 0x99, 0x78, + 0xef, 0xbf, 0x50, 0xce, 0x1a, 0x4f, 0xe1, 0x89, 0x2d, 0xb8, 0x10, 0x67, + 0x14, 0x95, 0x0f, 0x1f, 0xe8, 0xbf, 0xe0, 0x46, 0xe4, 0x69, 0x9b, 0x8a, + 0xec, 0xe1, 0x9f, 0xcb, 0xf1, 0xe7, 0x3c, 0x4a, 0x13, 0x7e, 0x2f, 0xc2, +}; +static const unsigned char kat4140_entropyinpr2[] = { + 0x84, 0x3e, 0x7c, 0xac, 0x38, 0xb6, 0x59, 0xa6, 0x11, 0xdc, 0x4a, 0xf4, + 0xbd, 0x22, 0x8e, 0xbc, 0x0c, 0xd9, 0x07, 0x3e, 0xe9, 0x83, 0x50, 0xd0, + 0x4d, 0xa6, 0x1f, 0x77, 0xdb, 0x66, 0xc0, 0xc7, 0x08, 0x72, 0x15, 0x3d, + 0x9f, 0xa2, 0xaf, 0x4b, 0xc5, 0x83, 0xac, 0x2c, 0xf7, 0x9d, 0x50, 0x6e, +}; +static const unsigned char kat4140_addinpr2[] = { + 0x4f, 0x23, 0x64, 0x10, 0x93, 0x34, 0x2d, 0x94, 0x6d, 0x3a, 0x95, 0x6c, + 0x45, 0x6d, 0xba, 0x18, 0xbd, 0x42, 0xde, 0x21, 0xcb, 0x24, 0x94, 0xf6, + 0x31, 0x0d, 0xa7, 0xd2, 0x0a, 0xce, 0x84, 0x58, 0xa7, 0x17, 0x78, 0x90, + 0x5d, 0x98, 0x8e, 0x58, 0x9f, 0xae, 0xcf, 0x77, 0x9b, 0x19, 0x4a, 0x13, +}; +static const unsigned char kat4140_retbits[] = { + 0x67, 0x54, 0xa7, 0x2f, 0x7f, 0xe2, 0x3e, 0xa6, 0x07, 0xef, 0x0a, 0xe6, + 0x1a, 0x61, 0xeb, 0x3a, 0xfc, 0x56, 0x2c, 0x52, 0x27, 0x67, 0x05, 0x72, + 0xb7, 0xff, 0x2d, 0xce, 0xcf, 0x3d, 0xcb, 0x41, 0x94, 0x82, 0x9d, 0x29, + 0xfc, 0xf9, 0xb1, 0x00, 0x41, 0x2a, 0xa0, 0xee, 0x87, 0x61, 0x1a, 0xb5, + 0x34, 0x89, 0x6f, 0x80, 0xf4, 0x7c, 0xff, 0x40, 0xb7, 0xf7, 0x6e, 0x0e, + 0xa4, 0x6b, 0x3d, 0x41, +}; +static const struct drbg_kat_pr_true kat4140_t = { + 14, kat4140_entropyin, kat4140_nonce, kat4140_persstr, + kat4140_entropyinpr1, kat4140_addinpr1, kat4140_entropyinpr2, + kat4140_addinpr2, kat4140_retbits +}; +static const struct drbg_kat kat4140 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4140_t +}; + +static const unsigned char kat4141_entropyin[] = { + 0x60, 0x3c, 0xba, 0x49, 0x24, 0x61, 0xb0, 0xc9, 0xa5, 0x5b, 0x4a, 0x97, + 0xfc, 0xb4, 0xc3, 0xfd, 0x76, 0x53, 0x26, 0x36, 0x49, 0x0b, 0xf1, 0x71, + 0xf1, 0x52, 0xa1, 0xc1, 0xf0, 0xfe, 0x33, 0x66, 0x34, 0x2a, 0xb8, 0x02, + 0x9d, 0xbc, 0x43, 0xfc, 0xcd, 0xe5, 0x5e, 0xc2, 0x39, 0x01, 0xb5, 0x30, +}; +static const unsigned char kat4141_nonce[] = {0}; +static const unsigned char kat4141_persstr[] = {0}; +static const unsigned char kat4141_entropyinpr1[] = { + 0xf2, 0x91, 0x59, 0xd2, 0x78, 0x0b, 0xe1, 0x84, 0x69, 0x41, 0xf5, 0xbb, + 0x02, 0x66, 0x59, 0x18, 0x71, 0xc9, 0xb2, 0xbb, 0x9a, 0x06, 0x85, 0x9a, + 0xc1, 0xca, 0xd0, 0x41, 0xe8, 0x93, 0x9c, 0x80, 0x4e, 0x61, 0x5d, 0x35, + 0xcc, 0x26, 0x17, 0x56, 0x97, 0xdc, 0x60, 0xa0, 0xb5, 0x48, 0xff, 0x10, +}; +static const unsigned char kat4141_addinpr1[] = {0}; +static const unsigned char kat4141_entropyinpr2[] = { + 0x33, 0xcb, 0x7a, 0xb5, 0x3e, 0x64, 0xb7, 0x69, 0x90, 0xfd, 0xec, 0x75, + 0x37, 0x7a, 0xe9, 0x94, 0x7c, 0xfa, 0x14, 0x41, 0xc3, 0xda, 0xba, 0xf1, + 0x9b, 0xd4, 0x0f, 0x8a, 0x25, 0x9b, 0x2d, 0x08, 0x4b, 0x41, 0x44, 0xa6, + 0x45, 0xcf, 0x39, 0x90, 0xbe, 0x95, 0x40, 0x81, 0x51, 0x37, 0x7e, 0x08, +}; +static const unsigned char kat4141_addinpr2[] = {0}; +static const unsigned char kat4141_retbits[] = { + 0x1c, 0xb8, 0xa4, 0x7a, 0x55, 0x23, 0x5b, 0x4c, 0xf5, 0x0d, 0x2c, 0x4d, + 0x57, 0x03, 0x9d, 0x55, 0xc2, 0x76, 0x6e, 0xc1, 0x92, 0x40, 0xca, 0x1a, + 0xe5, 0x0d, 0xc8, 0x0e, 0xf4, 0xc6, 0x92, 0x65, 0xd2, 0xdf, 0xa4, 0x1c, + 0x2f, 0x09, 0xb9, 0x91, 0x03, 0xd6, 0x6e, 0x23, 0x1b, 0x94, 0x97, 0x97, + 0x6b, 0xb3, 0x76, 0xda, 0xcf, 0xb2, 0x46, 0x11, 0x5a, 0xd2, 0xab, 0x57, + 0xf5, 0xc3, 0x8c, 0xd6, +}; +static const struct drbg_kat_pr_true kat4141_t = { + 0, kat4141_entropyin, kat4141_nonce, kat4141_persstr, + kat4141_entropyinpr1, kat4141_addinpr1, kat4141_entropyinpr2, + kat4141_addinpr2, kat4141_retbits +}; +static const struct drbg_kat kat4141 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4141_t +}; + +static const unsigned char kat4142_entropyin[] = { + 0x66, 0xc5, 0x85, 0x57, 0x2d, 0x64, 0xca, 0xa9, 0xfb, 0xa1, 0xff, 0x55, + 0xe9, 0x88, 0xe4, 0x51, 0x29, 0x7a, 0x39, 0x1d, 0xd0, 0xf5, 0x00, 0xd2, + 0x88, 0x52, 0x90, 0xf2, 0x0d, 0x67, 0x3c, 0x4d, 0x7f, 0x9a, 0xf0, 0x11, + 0xa9, 0x9a, 0x80, 0x1e, 0x4f, 0x1d, 0x8e, 0xea, 0x75, 0x62, 0x10, 0x08, +}; +static const unsigned char kat4142_nonce[] = {0}; +static const unsigned char kat4142_persstr[] = {0}; +static const unsigned char kat4142_entropyinpr1[] = { + 0x34, 0x1c, 0xd2, 0x7e, 0x70, 0x39, 0x76, 0x69, 0xda, 0x7c, 0x25, 0x87, + 0x41, 0x82, 0x8a, 0x52, 0xe0, 0xd1, 0x02, 0x4d, 0x0c, 0x23, 0x80, 0xd5, + 0x99, 0x74, 0x03, 0xe5, 0x55, 0x8d, 0xbd, 0x6f, 0x9b, 0x21, 0xa5, 0x67, + 0xef, 0x6a, 0x4f, 0xd2, 0x7f, 0x62, 0x5a, 0xdd, 0x70, 0xeb, 0xb1, 0x2d, +}; +static const unsigned char kat4142_addinpr1[] = {0}; +static const unsigned char kat4142_entropyinpr2[] = { + 0x40, 0x50, 0xc6, 0xa8, 0x94, 0xf1, 0x34, 0xcf, 0x8b, 0x67, 0x44, 0x70, + 0xad, 0xef, 0x00, 0x56, 0x0d, 0x4d, 0x00, 0xed, 0x3f, 0x70, 0xde, 0x46, + 0xff, 0x9d, 0xcd, 0x95, 0xed, 0x22, 0xd0, 0x41, 0x95, 0x0e, 0xc6, 0xe4, + 0x17, 0x8f, 0xb8, 0x6a, 0xf5, 0xc8, 0x22, 0xc1, 0x16, 0x15, 0x64, 0x4a, +}; +static const unsigned char kat4142_addinpr2[] = {0}; +static const unsigned char kat4142_retbits[] = { + 0x24, 0x14, 0x32, 0xfe, 0xd0, 0xdc, 0xa6, 0xd4, 0xbc, 0xf2, 0x39, 0x4d, + 0xea, 0xac, 0x9b, 0x59, 0x14, 0xef, 0x74, 0x7a, 0x6e, 0x93, 0xbe, 0x4f, + 0x97, 0xda, 0x76, 0x55, 0x7d, 0xa8, 0x83, 0x59, 0x19, 0x77, 0x18, 0xa1, + 0x32, 0x2d, 0xfe, 0x0c, 0x2c, 0x91, 0x3d, 0x2d, 0xb9, 0xeb, 0xd9, 0x76, + 0x0e, 0x15, 0xfb, 0x54, 0x26, 0xb1, 0xf8, 0x5a, 0xdf, 0x7d, 0x2b, 0xc0, + 0x39, 0x85, 0x1b, 0x9e, +}; +static const struct drbg_kat_pr_true kat4142_t = { + 1, kat4142_entropyin, kat4142_nonce, kat4142_persstr, + kat4142_entropyinpr1, kat4142_addinpr1, kat4142_entropyinpr2, + kat4142_addinpr2, kat4142_retbits +}; +static const struct drbg_kat kat4142 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4142_t +}; + +static const unsigned char kat4143_entropyin[] = { + 0xc5, 0x70, 0xff, 0xd1, 0xf4, 0xc5, 0xd1, 0xe9, 0x39, 0xad, 0x14, 0xa6, + 0x76, 0xc2, 0xf2, 0x69, 0x5d, 0x4b, 0x2a, 0xa5, 0x0a, 0x93, 0xa6, 0xc2, + 0x14, 0xfa, 0x71, 0x1d, 0x76, 0x4f, 0xf0, 0x44, 0xb0, 0x06, 0x20, 0xd0, + 0xb9, 0x8a, 0x1c, 0x0d, 0x06, 0x43, 0x7e, 0xfd, 0x00, 0x07, 0x18, 0x95, +}; +static const unsigned char kat4143_nonce[] = {0}; +static const unsigned char kat4143_persstr[] = {0}; +static const unsigned char kat4143_entropyinpr1[] = { + 0x2d, 0xed, 0xf9, 0x53, 0x5c, 0xfc, 0xdf, 0x74, 0xa5, 0xef, 0xf2, 0xc6, + 0xc2, 0x17, 0x33, 0xfc, 0xc2, 0x2f, 0xb3, 0x25, 0xa7, 0x3c, 0x4b, 0xc3, + 0x06, 0xfd, 0x87, 0x7e, 0x6f, 0x26, 0xaa, 0x5c, 0xb0, 0xed, 0x5d, 0x63, + 0x6c, 0x87, 0x8e, 0xb8, 0xb1, 0xc2, 0x00, 0x51, 0x86, 0xe2, 0xf1, 0x0f, +}; +static const unsigned char kat4143_addinpr1[] = {0}; +static const unsigned char kat4143_entropyinpr2[] = { + 0xe3, 0x5c, 0xc4, 0xfd, 0xa5, 0x07, 0x92, 0xa7, 0x72, 0x24, 0x07, 0x28, + 0x7b, 0x32, 0xcb, 0xf1, 0xd6, 0x47, 0x31, 0x25, 0x6d, 0xfb, 0x1e, 0x51, + 0x22, 0xc1, 0xd0, 0xa2, 0x33, 0x94, 0xde, 0x8d, 0x53, 0xf4, 0xcd, 0x20, + 0x58, 0xc4, 0x5c, 0x03, 0x9c, 0xe3, 0x96, 0xe4, 0xba, 0x2a, 0xef, 0x50, +}; +static const unsigned char kat4143_addinpr2[] = {0}; +static const unsigned char kat4143_retbits[] = { + 0xae, 0x1f, 0xe8, 0xe0, 0x5e, 0xe0, 0x7c, 0x13, 0xa7, 0x40, 0x7a, 0x39, + 0x41, 0x0f, 0xbf, 0x17, 0xa3, 0x70, 0xca, 0x7a, 0xa7, 0x84, 0x4c, 0xd8, + 0x56, 0x87, 0x59, 0x6c, 0x36, 0x1e, 0x7a, 0x16, 0x77, 0xa5, 0x19, 0xc6, + 0xe6, 0x84, 0xd4, 0xb0, 0x46, 0x3f, 0xad, 0xef, 0x57, 0xbf, 0x37, 0xc6, + 0xd5, 0x3e, 0x42, 0xb9, 0x7c, 0x17, 0xca, 0xff, 0xf4, 0xdc, 0x41, 0x0b, + 0x2c, 0xd2, 0x7d, 0x52, +}; +static const struct drbg_kat_pr_true kat4143_t = { + 2, kat4143_entropyin, kat4143_nonce, kat4143_persstr, + kat4143_entropyinpr1, kat4143_addinpr1, kat4143_entropyinpr2, + kat4143_addinpr2, kat4143_retbits +}; +static const struct drbg_kat kat4143 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4143_t +}; + +static const unsigned char kat4144_entropyin[] = { + 0x89, 0xe0, 0xc4, 0xe2, 0x80, 0x9f, 0x71, 0x8b, 0xbd, 0x0f, 0xa0, 0xc3, + 0xaf, 0x6d, 0x12, 0x4b, 0x16, 0x9d, 0x61, 0xdd, 0x43, 0xd3, 0x25, 0xdd, + 0x32, 0x5a, 0x46, 0x47, 0x9c, 0xe2, 0xe3, 0xe2, 0xc0, 0xfb, 0xca, 0x7f, + 0x50, 0xe1, 0x29, 0x97, 0x7a, 0x18, 0x63, 0x67, 0x52, 0xda, 0x1a, 0x63, +}; +static const unsigned char kat4144_nonce[] = {0}; +static const unsigned char kat4144_persstr[] = {0}; +static const unsigned char kat4144_entropyinpr1[] = { + 0x04, 0x23, 0x68, 0xa8, 0x11, 0x6f, 0x17, 0x2e, 0xf5, 0x2c, 0x5b, 0x66, + 0xec, 0xe3, 0x11, 0x23, 0x26, 0x18, 0x32, 0xd7, 0x66, 0xe8, 0xbc, 0x32, + 0xd1, 0x48, 0x1e, 0xe4, 0x17, 0x6a, 0x35, 0x2b, 0x6f, 0xe7, 0x4d, 0x37, + 0xa1, 0x7a, 0x40, 0x24, 0xff, 0xec, 0xf3, 0x7c, 0xcf, 0x4a, 0xf3, 0x12, +}; +static const unsigned char kat4144_addinpr1[] = {0}; +static const unsigned char kat4144_entropyinpr2[] = { + 0x8d, 0x78, 0x2d, 0x73, 0x3b, 0x25, 0xd9, 0xb3, 0x39, 0xd8, 0xd6, 0x25, + 0xdf, 0x06, 0x11, 0x9c, 0x9a, 0x8c, 0xc3, 0x8d, 0xf9, 0x68, 0xe5, 0xe4, + 0xd2, 0xfd, 0x57, 0x30, 0xf4, 0x74, 0xa4, 0x9a, 0x14, 0x72, 0x8a, 0x47, + 0x13, 0xcf, 0x45, 0xd4, 0xae, 0xf0, 0x01, 0x19, 0x82, 0xbf, 0x50, 0xb5, +}; +static const unsigned char kat4144_addinpr2[] = {0}; +static const unsigned char kat4144_retbits[] = { + 0xaf, 0x55, 0x3c, 0xf2, 0x75, 0x5b, 0x35, 0x2d, 0xe4, 0x55, 0x49, 0xe2, + 0x03, 0x05, 0xf9, 0xf0, 0x4d, 0xc5, 0x77, 0x0a, 0x1e, 0xec, 0x4a, 0x1f, + 0x7b, 0x41, 0x31, 0x29, 0x7f, 0x38, 0x29, 0x21, 0x67, 0xc7, 0x20, 0x6e, + 0x08, 0x4a, 0x0c, 0xa8, 0x4c, 0x6f, 0x7b, 0x62, 0x8d, 0x7a, 0x9e, 0x15, + 0xf5, 0x0e, 0xd7, 0x65, 0x13, 0x58, 0x88, 0x69, 0x13, 0xfb, 0xbb, 0xe0, + 0xa9, 0xaa, 0xf2, 0x39, +}; +static const struct drbg_kat_pr_true kat4144_t = { + 3, kat4144_entropyin, kat4144_nonce, kat4144_persstr, + kat4144_entropyinpr1, kat4144_addinpr1, kat4144_entropyinpr2, + kat4144_addinpr2, kat4144_retbits +}; +static const struct drbg_kat kat4144 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4144_t +}; + +static const unsigned char kat4145_entropyin[] = { + 0x39, 0xf3, 0xbd, 0x3e, 0x76, 0xa0, 0x52, 0xa4, 0x78, 0x30, 0xef, 0x5f, + 0xa8, 0x58, 0xb7, 0x82, 0x42, 0x24, 0x62, 0x41, 0xa5, 0x62, 0x92, 0x24, + 0x04, 0x99, 0xbb, 0xef, 0x96, 0x42, 0x32, 0x27, 0x20, 0xc6, 0x7e, 0x9a, + 0x97, 0x3b, 0x7c, 0xb9, 0x18, 0x34, 0x8f, 0xc0, 0xa1, 0x0d, 0x62, 0x11, +}; +static const unsigned char kat4145_nonce[] = {0}; +static const unsigned char kat4145_persstr[] = {0}; +static const unsigned char kat4145_entropyinpr1[] = { + 0x2a, 0x26, 0x33, 0xa4, 0xd1, 0xf2, 0xfe, 0x64, 0xc1, 0xa8, 0x70, 0x40, + 0x36, 0x7c, 0x3c, 0x13, 0xc3, 0x74, 0xb1, 0x0d, 0x24, 0x8c, 0x68, 0xe5, + 0x50, 0x90, 0x1e, 0x97, 0xf6, 0x57, 0xda, 0xde, 0xa0, 0xfe, 0xed, 0x10, + 0xb0, 0xbe, 0x00, 0x19, 0xd4, 0xcc, 0x8a, 0xe5, 0x4b, 0x15, 0x59, 0x61, +}; +static const unsigned char kat4145_addinpr1[] = {0}; +static const unsigned char kat4145_entropyinpr2[] = { + 0x41, 0xc8, 0x14, 0xc1, 0x1d, 0x2c, 0x61, 0xc0, 0xaa, 0x97, 0x5a, 0x3b, + 0x03, 0xaf, 0x1e, 0xa3, 0x52, 0xc5, 0xb8, 0x2a, 0xa9, 0x30, 0xce, 0xa7, + 0x0e, 0x8a, 0x5d, 0x8f, 0x6a, 0xc0, 0x4c, 0x57, 0x13, 0xc6, 0x47, 0x7d, + 0x58, 0x66, 0x40, 0x5b, 0xb6, 0xcc, 0xcd, 0x0c, 0x26, 0x6f, 0x1e, 0x62, +}; +static const unsigned char kat4145_addinpr2[] = {0}; +static const unsigned char kat4145_retbits[] = { + 0xe0, 0x9b, 0x26, 0xf0, 0xcb, 0x01, 0x70, 0xa1, 0x88, 0x3c, 0x74, 0x93, + 0xd8, 0x72, 0xf3, 0x91, 0xad, 0xa1, 0x60, 0xb4, 0x91, 0x5d, 0x87, 0xeb, + 0x1f, 0x62, 0xa3, 0x10, 0x04, 0x49, 0x52, 0x45, 0x24, 0x59, 0xba, 0x71, + 0x0c, 0xba, 0xfb, 0x78, 0x31, 0x7f, 0xe4, 0x5f, 0x20, 0xa1, 0x50, 0x88, + 0x9d, 0x12, 0xea, 0xf3, 0xbd, 0x22, 0x95, 0x15, 0x85, 0x62, 0x59, 0x42, + 0xb0, 0xc8, 0x1e, 0xfe, +}; +static const struct drbg_kat_pr_true kat4145_t = { + 4, kat4145_entropyin, kat4145_nonce, kat4145_persstr, + kat4145_entropyinpr1, kat4145_addinpr1, kat4145_entropyinpr2, + kat4145_addinpr2, kat4145_retbits +}; +static const struct drbg_kat kat4145 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4145_t +}; + +static const unsigned char kat4146_entropyin[] = { + 0x3c, 0xd8, 0xc6, 0x87, 0x88, 0x78, 0x02, 0x3f, 0xd5, 0x77, 0xf8, 0x16, + 0x96, 0xfb, 0xe6, 0x38, 0xa1, 0xac, 0xfb, 0xf0, 0xac, 0x0e, 0xf8, 0x8f, + 0x5b, 0x7d, 0x00, 0x0c, 0xe1, 0x5b, 0xaa, 0x8e, 0x8f, 0x38, 0x53, 0x26, + 0x52, 0x15, 0x71, 0x29, 0x97, 0x81, 0x60, 0x57, 0x60, 0xbe, 0x87, 0x27, +}; +static const unsigned char kat4146_nonce[] = {0}; +static const unsigned char kat4146_persstr[] = {0}; +static const unsigned char kat4146_entropyinpr1[] = { + 0xf3, 0xbf, 0x7d, 0x80, 0x70, 0x23, 0xeb, 0x81, 0x48, 0x61, 0x40, 0x51, + 0x3a, 0xec, 0xc7, 0x07, 0x85, 0x8d, 0x94, 0x41, 0x63, 0xad, 0x6b, 0xd8, + 0x74, 0xda, 0xb7, 0xb2, 0x49, 0x93, 0x21, 0xb3, 0x9f, 0xaf, 0xbe, 0x51, + 0xe1, 0x7e, 0xe9, 0x74, 0x01, 0x43, 0xdd, 0x6b, 0x40, 0x31, 0x45, 0xb8, +}; +static const unsigned char kat4146_addinpr1[] = {0}; +static const unsigned char kat4146_entropyinpr2[] = { + 0xa1, 0x7c, 0x6f, 0x90, 0xc1, 0x54, 0x4a, 0xa1, 0x57, 0x0b, 0x96, 0x12, + 0xf1, 0x82, 0x31, 0xa8, 0x52, 0xdb, 0xfc, 0xf8, 0x2c, 0x2a, 0xe6, 0xca, + 0xf7, 0xc4, 0xed, 0x49, 0x97, 0x5f, 0x54, 0x78, 0xbb, 0x43, 0xf1, 0x58, + 0x79, 0xf2, 0x77, 0x55, 0xa0, 0x94, 0xc1, 0x71, 0xda, 0x39, 0xc2, 0xc8, +}; +static const unsigned char kat4146_addinpr2[] = {0}; +static const unsigned char kat4146_retbits[] = { + 0xe9, 0x4c, 0xcd, 0x38, 0xd0, 0x67, 0x10, 0xc8, 0xa4, 0x6a, 0xf4, 0xb0, + 0x78, 0x91, 0xcc, 0xc4, 0x30, 0xe3, 0x46, 0x7f, 0x3a, 0x72, 0xe5, 0xc2, + 0xe3, 0x69, 0x3f, 0x4f, 0x8c, 0xa3, 0x93, 0x70, 0xc6, 0x16, 0x9b, 0x06, + 0x56, 0x16, 0x52, 0x76, 0x10, 0x90, 0xec, 0xca, 0x0c, 0xbf, 0xb4, 0xc8, + 0xe9, 0xe7, 0x46, 0x5d, 0x4d, 0x59, 0x81, 0xc6, 0x1f, 0xe8, 0xbc, 0x56, + 0x3f, 0xb2, 0x31, 0x29, +}; +static const struct drbg_kat_pr_true kat4146_t = { + 5, kat4146_entropyin, kat4146_nonce, kat4146_persstr, + kat4146_entropyinpr1, kat4146_addinpr1, kat4146_entropyinpr2, + kat4146_addinpr2, kat4146_retbits +}; +static const struct drbg_kat kat4146 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4146_t +}; + +static const unsigned char kat4147_entropyin[] = { + 0xc1, 0x5d, 0x56, 0x90, 0x58, 0x32, 0x4e, 0x97, 0x09, 0xcc, 0x1f, 0x9d, + 0xd0, 0x74, 0xbe, 0x18, 0x23, 0x2e, 0x77, 0xe2, 0x34, 0xf4, 0xb8, 0x16, + 0x08, 0x08, 0x99, 0xb1, 0x76, 0x22, 0x30, 0x10, 0x72, 0x80, 0xcf, 0xd6, + 0xe6, 0xb2, 0xe7, 0x86, 0x3f, 0x60, 0xa1, 0x0c, 0x9c, 0xe8, 0xa9, 0x31, +}; +static const unsigned char kat4147_nonce[] = {0}; +static const unsigned char kat4147_persstr[] = {0}; +static const unsigned char kat4147_entropyinpr1[] = { + 0x17, 0x62, 0xce, 0x5d, 0x4d, 0x06, 0xf7, 0x26, 0x32, 0x09, 0x84, 0x04, + 0xeb, 0xba, 0x2b, 0x03, 0x95, 0x86, 0xd7, 0x38, 0xca, 0x7d, 0xe8, 0x82, + 0x8c, 0x86, 0xef, 0xde, 0xca, 0x0f, 0xee, 0x90, 0x6f, 0x09, 0xfc, 0xe6, + 0x79, 0x1b, 0x1b, 0xf0, 0x80, 0x53, 0x24, 0xa7, 0xad, 0x9d, 0x29, 0xba, +}; +static const unsigned char kat4147_addinpr1[] = {0}; +static const unsigned char kat4147_entropyinpr2[] = { + 0x39, 0x4b, 0xc5, 0x94, 0xf8, 0x77, 0x22, 0xa6, 0x7e, 0x88, 0x70, 0x19, + 0x37, 0x85, 0xae, 0x43, 0x0c, 0x83, 0x54, 0x9d, 0x1c, 0xeb, 0x96, 0xa5, + 0x2a, 0x59, 0xac, 0xee, 0x68, 0xf0, 0x52, 0xf4, 0x90, 0x13, 0x3a, 0x0e, + 0x68, 0x1c, 0x78, 0xac, 0x89, 0x1e, 0xe5, 0x03, 0x57, 0x21, 0x7e, 0xd2, +}; +static const unsigned char kat4147_addinpr2[] = {0}; +static const unsigned char kat4147_retbits[] = { + 0x90, 0x95, 0xdc, 0x93, 0x3d, 0xc8, 0x98, 0x3b, 0x58, 0x32, 0x88, 0x5e, + 0x82, 0x0d, 0xbd, 0xcb, 0x25, 0xcf, 0xa0, 0x3b, 0xc5, 0x30, 0xb9, 0xfd, + 0xfb, 0xa7, 0x8b, 0x57, 0x9d, 0xd8, 0x11, 0x82, 0xeb, 0xfc, 0x44, 0x1d, + 0x0e, 0xc3, 0x00, 0xfb, 0xe9, 0x82, 0x9a, 0x88, 0xa3, 0x00, 0xb1, 0x7a, + 0x69, 0xc4, 0xe6, 0x2d, 0x0d, 0x2b, 0x54, 0x59, 0x1d, 0x14, 0x51, 0x0e, + 0x20, 0x7c, 0x82, 0x30, +}; +static const struct drbg_kat_pr_true kat4147_t = { + 6, kat4147_entropyin, kat4147_nonce, kat4147_persstr, + kat4147_entropyinpr1, kat4147_addinpr1, kat4147_entropyinpr2, + kat4147_addinpr2, kat4147_retbits +}; +static const struct drbg_kat kat4147 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4147_t +}; + +static const unsigned char kat4148_entropyin[] = { + 0x26, 0x51, 0xc9, 0x52, 0xa6, 0xa7, 0xdb, 0x3d, 0x98, 0x30, 0x96, 0x98, + 0x45, 0xe7, 0x84, 0x63, 0xa4, 0xae, 0x3f, 0x2f, 0xe6, 0x98, 0x52, 0xba, + 0x1e, 0x09, 0x16, 0x10, 0xaf, 0xc1, 0x01, 0xd1, 0x3c, 0x4e, 0x74, 0xba, + 0x94, 0xb5, 0x93, 0xbc, 0x89, 0xe1, 0x44, 0x49, 0x1a, 0x99, 0x09, 0x72, +}; +static const unsigned char kat4148_nonce[] = {0}; +static const unsigned char kat4148_persstr[] = {0}; +static const unsigned char kat4148_entropyinpr1[] = { + 0xeb, 0xed, 0x95, 0x10, 0x2a, 0x85, 0xe7, 0x71, 0xab, 0xb6, 0x1c, 0xc6, + 0xe0, 0xa1, 0x41, 0xf4, 0xc3, 0xd8, 0xf7, 0xc0, 0x5f, 0x49, 0x7e, 0xcd, + 0xa0, 0xbe, 0x8a, 0x8c, 0xb8, 0x97, 0x92, 0xe2, 0xb4, 0x67, 0xc7, 0x5e, + 0x7a, 0x9a, 0x8e, 0x70, 0xed, 0xca, 0x9f, 0xa6, 0x62, 0x29, 0x3a, 0x06, +}; +static const unsigned char kat4148_addinpr1[] = {0}; +static const unsigned char kat4148_entropyinpr2[] = { + 0xf1, 0x7b, 0x65, 0x7b, 0x75, 0x5e, 0x79, 0xab, 0xec, 0x99, 0x25, 0x5f, + 0x30, 0x19, 0x33, 0x37, 0x22, 0xfe, 0x4b, 0x3b, 0x1b, 0x67, 0x20, 0x21, + 0x3d, 0xb4, 0x42, 0x5f, 0x9c, 0xe4, 0x14, 0x6f, 0xd4, 0xfc, 0xbc, 0x94, + 0xac, 0x21, 0xf2, 0x5f, 0xfb, 0xa2, 0x40, 0x14, 0x3a, 0xae, 0x76, 0xcb, +}; +static const unsigned char kat4148_addinpr2[] = {0}; +static const unsigned char kat4148_retbits[] = { + 0xb4, 0x28, 0xa4, 0x03, 0x30, 0xf5, 0x9e, 0x22, 0xb2, 0x13, 0x97, 0xba, + 0x53, 0xf4, 0x4d, 0x30, 0x59, 0xb8, 0xf0, 0xd9, 0xb8, 0x52, 0x05, 0xc6, + 0x0a, 0x93, 0x73, 0x3f, 0xc7, 0xc9, 0x78, 0x18, 0x7e, 0x72, 0x41, 0x08, + 0x66, 0x5e, 0xd8, 0x38, 0x8b, 0xb8, 0x15, 0xe7, 0x0a, 0xfa, 0x85, 0x78, + 0xc3, 0x88, 0x9c, 0xd4, 0xac, 0x7b, 0xd1, 0x32, 0x84, 0xbf, 0x61, 0xa5, + 0x3a, 0x0e, 0x4c, 0x7e, +}; +static const struct drbg_kat_pr_true kat4148_t = { + 7, kat4148_entropyin, kat4148_nonce, kat4148_persstr, + kat4148_entropyinpr1, kat4148_addinpr1, kat4148_entropyinpr2, + kat4148_addinpr2, kat4148_retbits +}; +static const struct drbg_kat kat4148 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4148_t +}; + +static const unsigned char kat4149_entropyin[] = { + 0xa6, 0x69, 0x92, 0x9d, 0x26, 0x64, 0x2e, 0xa0, 0x45, 0xfe, 0xce, 0xd3, + 0x79, 0x69, 0x78, 0x83, 0x31, 0x7c, 0xa1, 0x76, 0xaf, 0xd4, 0x91, 0x07, + 0xd7, 0xc3, 0x2c, 0x5b, 0x0b, 0xc5, 0x75, 0xdb, 0x1b, 0xe8, 0x0d, 0x63, + 0x83, 0xac, 0x45, 0x99, 0xdb, 0x00, 0x39, 0xc3, 0x8a, 0x02, 0xec, 0xf0, +}; +static const unsigned char kat4149_nonce[] = {0}; +static const unsigned char kat4149_persstr[] = {0}; +static const unsigned char kat4149_entropyinpr1[] = { + 0x41, 0x45, 0x0c, 0x01, 0xfe, 0x58, 0x88, 0x5b, 0x7d, 0x68, 0x34, 0x8e, + 0x42, 0xcb, 0x2c, 0xcc, 0x7e, 0x37, 0x74, 0xc0, 0x91, 0xad, 0xc0, 0xd9, + 0x9b, 0xbb, 0xb9, 0x10, 0x03, 0x51, 0xcf, 0xa9, 0xd3, 0x5a, 0x55, 0xbe, + 0x74, 0xbe, 0x4c, 0x49, 0x15, 0xa7, 0xad, 0x7d, 0xfc, 0x8b, 0x75, 0x83, +}; +static const unsigned char kat4149_addinpr1[] = {0}; +static const unsigned char kat4149_entropyinpr2[] = { + 0xc5, 0x77, 0x91, 0x4f, 0xa8, 0xf2, 0x4b, 0x09, 0x9c, 0x98, 0x1b, 0xe1, + 0x02, 0x45, 0x1f, 0x8f, 0xb0, 0xf0, 0xf2, 0xf1, 0xbe, 0x92, 0x4a, 0xb0, + 0x3e, 0x1e, 0xf0, 0x38, 0x4d, 0xd2, 0x64, 0x65, 0x5e, 0x3d, 0xf8, 0x38, + 0xad, 0x8f, 0xb0, 0x69, 0x17, 0x88, 0xa7, 0xb7, 0x2d, 0x79, 0xf2, 0x6c, +}; +static const unsigned char kat4149_addinpr2[] = {0}; +static const unsigned char kat4149_retbits[] = { + 0x0b, 0x15, 0x02, 0x3e, 0xf9, 0xd9, 0x00, 0x58, 0x48, 0xb2, 0xe2, 0x7a, + 0x55, 0x7f, 0xc7, 0xa4, 0x46, 0x08, 0x1d, 0xaf, 0xc3, 0x0e, 0x95, 0x8e, + 0xfd, 0x0e, 0x96, 0x32, 0x3c, 0x3c, 0x3e, 0x44, 0xdb, 0x4c, 0xa5, 0x25, + 0xf9, 0xb0, 0x1d, 0xf8, 0x2f, 0x1f, 0xdc, 0xcb, 0x4e, 0x99, 0xcc, 0x94, + 0xd3, 0xb2, 0x69, 0x22, 0x10, 0xbb, 0xa2, 0xb7, 0xd8, 0x52, 0x02, 0xaa, + 0xec, 0xe3, 0xc5, 0x4a, +}; +static const struct drbg_kat_pr_true kat4149_t = { + 8, kat4149_entropyin, kat4149_nonce, kat4149_persstr, + kat4149_entropyinpr1, kat4149_addinpr1, kat4149_entropyinpr2, + kat4149_addinpr2, kat4149_retbits +}; +static const struct drbg_kat kat4149 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4149_t +}; + +static const unsigned char kat4150_entropyin[] = { + 0x19, 0x6c, 0xb6, 0x68, 0xa2, 0x04, 0xc3, 0x75, 0x97, 0x87, 0xa0, 0xe2, + 0x95, 0x5a, 0x0d, 0x9a, 0xa7, 0x30, 0x70, 0x62, 0x23, 0x77, 0xf8, 0x83, + 0xaf, 0xf8, 0x74, 0xbd, 0x13, 0x56, 0x32, 0xa6, 0xd5, 0x47, 0x15, 0x39, + 0x73, 0x32, 0x69, 0x4b, 0xc9, 0x2a, 0x1a, 0x71, 0x44, 0x14, 0x24, 0x44, +}; +static const unsigned char kat4150_nonce[] = {0}; +static const unsigned char kat4150_persstr[] = {0}; +static const unsigned char kat4150_entropyinpr1[] = { + 0x99, 0x8f, 0xbb, 0xb4, 0xcd, 0x51, 0xd2, 0x09, 0xe2, 0xb8, 0x03, 0x4b, + 0x24, 0xb8, 0x4e, 0xb3, 0x32, 0xb5, 0x4f, 0x00, 0x08, 0x6e, 0x04, 0x6f, + 0x79, 0x86, 0x47, 0x78, 0x63, 0x85, 0x43, 0x73, 0x4e, 0x7d, 0x50, 0x03, + 0x59, 0xfa, 0x8b, 0xbb, 0xec, 0x8c, 0x83, 0x88, 0xe4, 0xf6, 0xe9, 0x85, +}; +static const unsigned char kat4150_addinpr1[] = {0}; +static const unsigned char kat4150_entropyinpr2[] = { + 0x7a, 0x49, 0xa8, 0x18, 0xe8, 0x27, 0x35, 0x2f, 0x3f, 0x6d, 0xb3, 0x54, + 0x2c, 0xd1, 0xb9, 0x7c, 0xd7, 0xdd, 0xe5, 0xe8, 0x7a, 0x4c, 0xa5, 0x3d, + 0xf8, 0xa5, 0x9d, 0xd4, 0xea, 0x87, 0xd7, 0x57, 0x9d, 0x15, 0xe3, 0x00, + 0x47, 0x89, 0x4a, 0x7a, 0x1e, 0xed, 0x52, 0xa0, 0xe5, 0x83, 0xc9, 0x75, +}; +static const unsigned char kat4150_addinpr2[] = {0}; +static const unsigned char kat4150_retbits[] = { + 0x35, 0x95, 0xa7, 0x67, 0xe5, 0xf3, 0x89, 0x86, 0x38, 0xdb, 0x5c, 0x2f, + 0xc3, 0xa7, 0x1d, 0x24, 0xd6, 0x24, 0xd8, 0x02, 0x3e, 0x11, 0xd3, 0x3f, + 0x96, 0x9b, 0xca, 0xeb, 0xb7, 0xc8, 0x24, 0x08, 0x9b, 0x48, 0x4d, 0xb1, + 0xbd, 0xd2, 0xe7, 0x1c, 0x27, 0x50, 0x09, 0x12, 0x49, 0x72, 0xef, 0xc9, + 0x5e, 0xcd, 0x16, 0x32, 0xbd, 0xd1, 0x19, 0x90, 0xfb, 0xd6, 0x17, 0x8c, + 0xd6, 0x60, 0xc9, 0xf2, +}; +static const struct drbg_kat_pr_true kat4150_t = { + 9, kat4150_entropyin, kat4150_nonce, kat4150_persstr, + kat4150_entropyinpr1, kat4150_addinpr1, kat4150_entropyinpr2, + kat4150_addinpr2, kat4150_retbits +}; +static const struct drbg_kat kat4150 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4150_t +}; + +static const unsigned char kat4151_entropyin[] = { + 0xf3, 0xbc, 0xa9, 0x49, 0xde, 0xc6, 0xdb, 0xf8, 0x1c, 0x43, 0xd9, 0x4c, + 0x33, 0xf1, 0x86, 0x7d, 0x68, 0x99, 0xd0, 0xbe, 0xba, 0x36, 0x37, 0x60, + 0x1d, 0xec, 0xe9, 0x45, 0xf5, 0x44, 0xda, 0x71, 0xb8, 0x97, 0x1e, 0x41, + 0x52, 0xf7, 0x91, 0x37, 0xb3, 0x99, 0x5b, 0x10, 0xfa, 0x8c, 0x56, 0xd9, +}; +static const unsigned char kat4151_nonce[] = {0}; +static const unsigned char kat4151_persstr[] = {0}; +static const unsigned char kat4151_entropyinpr1[] = { + 0x68, 0x67, 0x04, 0x58, 0xfa, 0x11, 0x07, 0x63, 0x21, 0xa3, 0x3d, 0x8d, + 0xa6, 0x77, 0x1a, 0x1b, 0x1b, 0xae, 0xcf, 0x2a, 0x28, 0x91, 0xe2, 0x63, + 0xe1, 0x54, 0x39, 0x16, 0xf3, 0x8b, 0x66, 0xf5, 0x94, 0xcd, 0x3e, 0x7b, + 0xef, 0x5b, 0x97, 0x3f, 0xa3, 0x24, 0x1f, 0x04, 0xc9, 0x96, 0x4b, 0xb0, +}; +static const unsigned char kat4151_addinpr1[] = {0}; +static const unsigned char kat4151_entropyinpr2[] = { + 0xd6, 0x8e, 0xd8, 0x1c, 0xf4, 0x00, 0x87, 0x93, 0xaa, 0x70, 0xce, 0x66, + 0xab, 0x7e, 0x4c, 0x99, 0x02, 0x49, 0x01, 0x37, 0x0d, 0x16, 0x99, 0x43, + 0xbf, 0xb3, 0x66, 0x97, 0xe2, 0x09, 0x42, 0xa1, 0xc6, 0x6a, 0x23, 0x81, + 0xf4, 0x67, 0x71, 0x7b, 0x1b, 0x29, 0xec, 0x70, 0x51, 0xdf, 0x53, 0x0b, +}; +static const unsigned char kat4151_addinpr2[] = {0}; +static const unsigned char kat4151_retbits[] = { + 0xee, 0x0e, 0x7a, 0xea, 0x9b, 0xd2, 0xb5, 0x5a, 0x4f, 0x67, 0x99, 0x49, + 0xf7, 0xd7, 0x1d, 0x65, 0x3e, 0x17, 0x4c, 0x1e, 0xa2, 0x6b, 0x32, 0xab, + 0x2e, 0x6a, 0xd3, 0xc3, 0xe6, 0x56, 0x67, 0xa8, 0xe1, 0x30, 0xdc, 0x29, + 0x22, 0xb2, 0xad, 0x11, 0xd5, 0x86, 0xa6, 0xa7, 0x4a, 0x66, 0xc5, 0x27, + 0x6a, 0xc5, 0x9d, 0x8d, 0x32, 0x47, 0xb3, 0x1f, 0xb9, 0xe1, 0xc1, 0x80, + 0x20, 0x60, 0xac, 0x11, +}; +static const struct drbg_kat_pr_true kat4151_t = { + 10, kat4151_entropyin, kat4151_nonce, kat4151_persstr, + kat4151_entropyinpr1, kat4151_addinpr1, kat4151_entropyinpr2, + kat4151_addinpr2, kat4151_retbits +}; +static const struct drbg_kat kat4151 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4151_t +}; + +static const unsigned char kat4152_entropyin[] = { + 0xbc, 0x53, 0x1a, 0x04, 0x8b, 0x21, 0xb9, 0xcc, 0x49, 0x5c, 0xec, 0x60, + 0x50, 0x5e, 0x26, 0xec, 0xcd, 0x2b, 0x08, 0x4d, 0x4d, 0x73, 0x62, 0x20, + 0x20, 0x7b, 0x2b, 0xb2, 0xe1, 0x7f, 0xa5, 0x77, 0x40, 0x77, 0x62, 0x4d, + 0x48, 0x35, 0xe2, 0xc7, 0xcd, 0x86, 0x41, 0x09, 0x7f, 0x0f, 0x48, 0x58, +}; +static const unsigned char kat4152_nonce[] = {0}; +static const unsigned char kat4152_persstr[] = {0}; +static const unsigned char kat4152_entropyinpr1[] = { + 0x5d, 0x5e, 0x07, 0x2a, 0xe9, 0x67, 0xa2, 0x52, 0xe0, 0xe1, 0x95, 0x51, + 0x02, 0x88, 0x5b, 0xb7, 0x10, 0x69, 0x22, 0x7c, 0xa4, 0xe3, 0x76, 0x7e, + 0xf8, 0x43, 0x2e, 0xd7, 0x56, 0xa8, 0x6f, 0x1f, 0x6c, 0x1d, 0xb4, 0xa9, + 0xba, 0x85, 0xdb, 0xb8, 0x0f, 0xdc, 0xc8, 0x9d, 0xca, 0x4e, 0xfc, 0x97, +}; +static const unsigned char kat4152_addinpr1[] = {0}; +static const unsigned char kat4152_entropyinpr2[] = { + 0x24, 0x77, 0x7d, 0x12, 0x5d, 0x69, 0x32, 0x6c, 0x86, 0xb4, 0x96, 0xde, + 0x5e, 0x08, 0x89, 0x93, 0x33, 0x89, 0x78, 0x10, 0x54, 0x35, 0x4c, 0xc3, + 0x25, 0xfc, 0x2b, 0xdf, 0x24, 0x57, 0x71, 0x39, 0x8c, 0x62, 0xf6, 0x07, + 0x19, 0x7f, 0x07, 0x12, 0xc7, 0xb0, 0xcb, 0x35, 0xc8, 0xef, 0xe1, 0x6c, +}; +static const unsigned char kat4152_addinpr2[] = {0}; +static const unsigned char kat4152_retbits[] = { + 0x3a, 0xcd, 0x47, 0x40, 0xd7, 0x93, 0x91, 0x83, 0xde, 0xcb, 0x35, 0x60, + 0x90, 0xdc, 0xa4, 0x79, 0xb6, 0xdd, 0xf5, 0xd2, 0x17, 0x14, 0x0a, 0x90, + 0xd0, 0xe0, 0x8c, 0xa6, 0x9d, 0x30, 0x50, 0xd1, 0x88, 0x8e, 0x02, 0x67, + 0x8c, 0x0b, 0x91, 0xc9, 0x3a, 0x3f, 0xc4, 0xba, 0x7b, 0xb2, 0xee, 0x00, + 0xe3, 0x0f, 0x9f, 0x27, 0x4d, 0xe3, 0x7d, 0x61, 0xd1, 0xab, 0x2b, 0x14, + 0x00, 0xfe, 0x4d, 0x00, +}; +static const struct drbg_kat_pr_true kat4152_t = { + 11, kat4152_entropyin, kat4152_nonce, kat4152_persstr, + kat4152_entropyinpr1, kat4152_addinpr1, kat4152_entropyinpr2, + kat4152_addinpr2, kat4152_retbits +}; +static const struct drbg_kat kat4152 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4152_t +}; + +static const unsigned char kat4153_entropyin[] = { + 0x20, 0x2e, 0x62, 0x72, 0x3e, 0x11, 0x1c, 0xae, 0x1a, 0x85, 0xa0, 0x9a, + 0x44, 0x47, 0xa6, 0xa0, 0x97, 0xda, 0x5d, 0x77, 0x3d, 0xfe, 0x1f, 0xfa, + 0x0e, 0xc8, 0x26, 0x4a, 0x78, 0x25, 0xf1, 0xfe, 0xaa, 0xb9, 0xe7, 0x21, + 0xc8, 0x51, 0xa0, 0x47, 0xa9, 0x35, 0xd2, 0x9a, 0x7c, 0x8c, 0x67, 0x97, +}; +static const unsigned char kat4153_nonce[] = {0}; +static const unsigned char kat4153_persstr[] = {0}; +static const unsigned char kat4153_entropyinpr1[] = { + 0xb1, 0x7f, 0x4e, 0x20, 0x98, 0xf1, 0xbd, 0x2f, 0x12, 0xaf, 0x8a, 0x11, + 0xb7, 0x21, 0x29, 0xd5, 0xc7, 0x6c, 0xaa, 0xb3, 0x32, 0x29, 0xe4, 0x8e, + 0x61, 0x57, 0x42, 0x5d, 0xba, 0x5e, 0xea, 0x03, 0xae, 0xb7, 0xeb, 0x65, + 0x7e, 0xb0, 0xe5, 0xba, 0xa9, 0x6b, 0xbe, 0x9c, 0xb4, 0x6f, 0xbe, 0x5c, +}; +static const unsigned char kat4153_addinpr1[] = {0}; +static const unsigned char kat4153_entropyinpr2[] = { + 0x91, 0x78, 0x55, 0x9a, 0x1e, 0x8a, 0x01, 0x57, 0xa1, 0xb6, 0x5c, 0x15, + 0xb5, 0xd9, 0x2c, 0x7b, 0x36, 0x72, 0x0c, 0x06, 0x32, 0xae, 0x8f, 0xce, + 0x2c, 0x5e, 0xd4, 0x7b, 0x89, 0x48, 0xee, 0xcb, 0x3d, 0x33, 0x67, 0x20, + 0x63, 0x49, 0xd3, 0x77, 0xf0, 0x81, 0x50, 0x9f, 0x9e, 0x6d, 0xa0, 0x6e, +}; +static const unsigned char kat4153_addinpr2[] = {0}; +static const unsigned char kat4153_retbits[] = { + 0xbe, 0xa4, 0x6b, 0x2d, 0x0a, 0xe3, 0xdc, 0xbf, 0x03, 0x50, 0x2b, 0xd2, + 0xa8, 0xc9, 0x3b, 0x47, 0x14, 0x83, 0xac, 0x93, 0x29, 0x64, 0x1b, 0x1f, + 0xd0, 0x49, 0x0c, 0x21, 0x55, 0x13, 0xf5, 0xb9, 0x18, 0xbc, 0x62, 0x8f, + 0x10, 0x0c, 0x79, 0x86, 0x21, 0xfc, 0xbf, 0x8d, 0x2b, 0x02, 0x89, 0x68, + 0xd2, 0x23, 0xf4, 0xce, 0x8c, 0xa7, 0x8a, 0x19, 0x48, 0xed, 0xa7, 0x4d, + 0x5c, 0x6f, 0x78, 0x52, +}; +static const struct drbg_kat_pr_true kat4153_t = { + 12, kat4153_entropyin, kat4153_nonce, kat4153_persstr, + kat4153_entropyinpr1, kat4153_addinpr1, kat4153_entropyinpr2, + kat4153_addinpr2, kat4153_retbits +}; +static const struct drbg_kat kat4153 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4153_t +}; + +static const unsigned char kat4154_entropyin[] = { + 0xcc, 0x9f, 0xda, 0x86, 0x8f, 0x06, 0xd1, 0xed, 0x44, 0xa1, 0x82, 0x14, + 0x9e, 0xfa, 0x08, 0xe0, 0x3f, 0xfb, 0xfb, 0x86, 0xdc, 0x1d, 0xb0, 0xec, + 0xdb, 0xa5, 0x11, 0x5b, 0x27, 0x01, 0xf4, 0xca, 0x3c, 0x8c, 0x22, 0xd3, + 0xad, 0xee, 0xc1, 0x62, 0x0a, 0xca, 0x28, 0x33, 0xe5, 0x99, 0x80, 0xe0, +}; +static const unsigned char kat4154_nonce[] = {0}; +static const unsigned char kat4154_persstr[] = {0}; +static const unsigned char kat4154_entropyinpr1[] = { + 0x6a, 0xb6, 0x7d, 0xcf, 0x1b, 0x3b, 0xa9, 0xc3, 0x02, 0x1a, 0x34, 0xab, + 0xde, 0xf5, 0xa8, 0xb9, 0xe9, 0xe5, 0xee, 0x0e, 0x0b, 0x70, 0x26, 0x93, + 0x95, 0x7c, 0x4f, 0x99, 0xe8, 0xbc, 0x75, 0x0d, 0x2d, 0x0d, 0x45, 0x67, + 0x6c, 0xa0, 0x50, 0xd0, 0xad, 0x7e, 0x09, 0xa2, 0x9d, 0xa4, 0x00, 0xe6, +}; +static const unsigned char kat4154_addinpr1[] = {0}; +static const unsigned char kat4154_entropyinpr2[] = { + 0xee, 0xe6, 0x3a, 0xba, 0x80, 0x39, 0xf8, 0x88, 0x0e, 0x99, 0xcf, 0xcf, + 0x6c, 0x6d, 0x09, 0xba, 0xfd, 0x52, 0x7e, 0x4e, 0x0d, 0x1c, 0xf6, 0xf8, + 0x0d, 0xfb, 0x1d, 0xd1, 0x1e, 0xf1, 0x31, 0xba, 0xdc, 0xc3, 0xd5, 0xe9, + 0x48, 0x8e, 0xfd, 0xa8, 0x02, 0x27, 0x29, 0x46, 0x53, 0x55, 0x0d, 0x4f, +}; +static const unsigned char kat4154_addinpr2[] = {0}; +static const unsigned char kat4154_retbits[] = { + 0xd3, 0x03, 0x48, 0xaf, 0x19, 0x3f, 0x66, 0x82, 0xee, 0x34, 0x24, 0xa6, + 0xee, 0xb7, 0x79, 0x65, 0xde, 0xfe, 0x36, 0x85, 0xe8, 0x24, 0x24, 0xb6, + 0x57, 0xa5, 0x0e, 0x59, 0x79, 0xe6, 0xa1, 0x37, 0x64, 0xd3, 0xc7, 0x06, + 0x8c, 0x5e, 0x20, 0x38, 0x18, 0x99, 0xc9, 0x59, 0x6c, 0x77, 0xf9, 0xbf, + 0xee, 0x37, 0x8f, 0x22, 0xeb, 0xb9, 0x73, 0x55, 0xae, 0x27, 0x6b, 0x25, + 0x9f, 0x13, 0x0e, 0xd1, +}; +static const struct drbg_kat_pr_true kat4154_t = { + 13, kat4154_entropyin, kat4154_nonce, kat4154_persstr, + kat4154_entropyinpr1, kat4154_addinpr1, kat4154_entropyinpr2, + kat4154_addinpr2, kat4154_retbits +}; +static const struct drbg_kat kat4154 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4154_t +}; + +static const unsigned char kat4155_entropyin[] = { + 0x8b, 0x01, 0xea, 0xae, 0xfb, 0x16, 0x9d, 0x78, 0x7c, 0x39, 0xeb, 0x1d, + 0xf1, 0x75, 0x03, 0x48, 0x65, 0x07, 0x76, 0xa2, 0x53, 0xb3, 0x74, 0xff, + 0xb6, 0xd4, 0x14, 0x22, 0x3d, 0x42, 0x6e, 0x10, 0x1c, 0xc3, 0x11, 0xa8, + 0xa6, 0xc4, 0x5b, 0xe1, 0x5d, 0x4e, 0x0c, 0xe4, 0x30, 0x5e, 0x55, 0xbd, +}; +static const unsigned char kat4155_nonce[] = {0}; +static const unsigned char kat4155_persstr[] = {0}; +static const unsigned char kat4155_entropyinpr1[] = { + 0xb8, 0xef, 0x0d, 0x47, 0x80, 0x28, 0xf0, 0xc5, 0x5d, 0xd1, 0x38, 0x61, + 0x28, 0x14, 0x89, 0xe6, 0xc1, 0x24, 0x87, 0x0f, 0x0f, 0x28, 0xc8, 0xfb, + 0xe9, 0xa3, 0xce, 0x1d, 0x7d, 0x5f, 0xdd, 0x57, 0xa1, 0xce, 0x93, 0x96, + 0x42, 0xc2, 0x79, 0x81, 0xd7, 0x86, 0xa1, 0x01, 0xab, 0xb1, 0x49, 0x2c, +}; +static const unsigned char kat4155_addinpr1[] = {0}; +static const unsigned char kat4155_entropyinpr2[] = { + 0xc1, 0x26, 0x49, 0xa0, 0xf2, 0x49, 0xc7, 0xf5, 0xdd, 0xb5, 0x50, 0xeb, + 0x52, 0x7a, 0x0f, 0x72, 0x0e, 0x5e, 0xaf, 0x04, 0xe6, 0xe3, 0xb9, 0x6d, + 0xc2, 0x48, 0x81, 0xeb, 0xa1, 0x0c, 0xe4, 0x66, 0xf6, 0x7e, 0x3f, 0xe5, + 0x1a, 0x03, 0x42, 0xcb, 0x1a, 0x21, 0x92, 0xa5, 0x55, 0x79, 0x81, 0x69, +}; +static const unsigned char kat4155_addinpr2[] = {0}; +static const unsigned char kat4155_retbits[] = { + 0xd8, 0xc6, 0x3e, 0xcb, 0x23, 0xf1, 0x6e, 0xe9, 0x25, 0x28, 0x2b, 0x77, + 0x44, 0xe8, 0xcc, 0x2c, 0x2c, 0x1d, 0xeb, 0x56, 0x58, 0x1c, 0xf2, 0x71, + 0x52, 0x11, 0x8b, 0x57, 0x90, 0xcd, 0xbe, 0x68, 0x2a, 0x34, 0xd9, 0x15, + 0x23, 0xbf, 0x0c, 0x7b, 0xe4, 0xff, 0x26, 0x3a, 0xba, 0x2f, 0xfd, 0xda, + 0x35, 0xe4, 0xd3, 0x6a, 0x51, 0x22, 0x46, 0x1b, 0x89, 0xb4, 0x30, 0x69, + 0x93, 0x2b, 0x30, 0xa9, +}; +static const struct drbg_kat_pr_true kat4155_t = { + 14, kat4155_entropyin, kat4155_nonce, kat4155_persstr, + kat4155_entropyinpr1, kat4155_addinpr1, kat4155_entropyinpr2, + kat4155_addinpr2, kat4155_retbits +}; +static const struct drbg_kat kat4155 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4155_t +}; + +static const unsigned char kat4156_entropyin[] = { + 0xf8, 0x35, 0x03, 0x62, 0x2c, 0x16, 0x72, 0xd1, 0xef, 0x1a, 0xfd, 0x6f, + 0x6f, 0xf4, 0xc7, 0x32, 0x6b, 0xbe, 0x16, 0x92, 0x43, 0xcb, 0xb1, 0xe9, + 0x7d, 0x0f, 0x5d, 0x5b, 0xf2, 0x61, 0x58, 0x46, 0xd0, 0xd7, 0x2e, 0xf2, + 0x8c, 0xe6, 0x8d, 0x1b, 0xf3, 0x31, 0x0f, 0x12, 0xf2, 0xef, 0xe3, 0xbc, +}; +static const unsigned char kat4156_nonce[] = {0}; +static const unsigned char kat4156_persstr[] = {0}; +static const unsigned char kat4156_entropyinpr1[] = { + 0x9c, 0xd5, 0xd3, 0xf5, 0xc0, 0xd4, 0x55, 0x12, 0xa4, 0x38, 0x17, 0xd3, + 0x83, 0x8c, 0x2a, 0xeb, 0xfa, 0xe7, 0x37, 0xcd, 0x01, 0x2d, 0xce, 0x8f, + 0x5e, 0x6f, 0x5d, 0x07, 0x55, 0xde, 0x9f, 0xc9, 0xfe, 0xef, 0x08, 0xfa, + 0x51, 0xa7, 0x6b, 0x59, 0xba, 0x13, 0xd0, 0xce, 0x92, 0xf4, 0x92, 0x03, +}; +static const unsigned char kat4156_addinpr1[] = { + 0x3e, 0x8c, 0x11, 0xed, 0x78, 0xff, 0xce, 0xdf, 0xb8, 0xab, 0x10, 0xde, + 0x9a, 0xf5, 0x04, 0x13, 0x58, 0x25, 0x16, 0xb5, 0x32, 0xf2, 0x37, 0x64, + 0xfa, 0x5c, 0x3f, 0x35, 0x0a, 0xcf, 0xe7, 0x32, 0x60, 0x30, 0xde, 0x54, + 0x6a, 0x33, 0x47, 0xa8, 0x7d, 0xa5, 0x2e, 0x55, 0x4c, 0x2f, 0x50, 0xba, +}; +static const unsigned char kat4156_entropyinpr2[] = { + 0x5f, 0xd9, 0x19, 0xfc, 0x00, 0xae, 0x84, 0xa1, 0xa1, 0x8f, 0xd1, 0xbe, + 0xbb, 0x73, 0x17, 0x94, 0xdd, 0x43, 0x85, 0xae, 0x17, 0x8e, 0x9a, 0x3a, + 0x94, 0x34, 0x7d, 0x88, 0x87, 0x91, 0x9c, 0xd7, 0xb6, 0x5e, 0x7a, 0x83, + 0xce, 0xb5, 0x05, 0xe5, 0xbd, 0xb1, 0x0a, 0x43, 0x77, 0x45, 0x4f, 0xc1, +}; +static const unsigned char kat4156_addinpr2[] = { + 0x43, 0xcb, 0x28, 0x65, 0x50, 0x71, 0x3e, 0xb3, 0x5b, 0xb2, 0xb4, 0x1d, + 0x8c, 0xca, 0x7b, 0x7e, 0xd6, 0x04, 0x75, 0xfe, 0xac, 0x5b, 0xf1, 0x7c, + 0xe1, 0x47, 0x04, 0xf0, 0x5b, 0x2b, 0xec, 0xa9, 0x60, 0xce, 0xeb, 0xae, + 0xbb, 0x2c, 0xb5, 0x98, 0x0e, 0xc0, 0x0f, 0xc3, 0xb5, 0xd9, 0x5f, 0x59, +}; +static const unsigned char kat4156_retbits[] = { + 0xeb, 0x04, 0x39, 0xae, 0xfb, 0x3d, 0x78, 0x1a, 0x6b, 0x68, 0x70, 0x8b, + 0x28, 0xd9, 0xe0, 0x0d, 0x4b, 0xc3, 0xe9, 0xec, 0x6e, 0xcd, 0x46, 0x89, + 0x18, 0x77, 0x3e, 0xad, 0x3e, 0xb0, 0x74, 0x98, 0x54, 0xd5, 0x29, 0xab, + 0x17, 0x76, 0x37, 0x40, 0x1a, 0xe9, 0x55, 0xc8, 0x10, 0x4d, 0xdc, 0x8e, + 0xb0, 0x99, 0xf4, 0x1c, 0x7c, 0x30, 0x6a, 0x2f, 0x76, 0xa9, 0x50, 0xc8, + 0x12, 0xc1, 0xf8, 0x18, +}; +static const struct drbg_kat_pr_true kat4156_t = { + 0, kat4156_entropyin, kat4156_nonce, kat4156_persstr, + kat4156_entropyinpr1, kat4156_addinpr1, kat4156_entropyinpr2, + kat4156_addinpr2, kat4156_retbits +}; +static const struct drbg_kat kat4156 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4156_t +}; + +static const unsigned char kat4157_entropyin[] = { + 0xb9, 0xa3, 0xf3, 0x5b, 0xcb, 0x0e, 0x13, 0xc3, 0x47, 0x04, 0xae, 0xbb, + 0xe4, 0x2c, 0xd1, 0xae, 0x10, 0x32, 0xc0, 0x47, 0x7e, 0xe6, 0xa4, 0xd5, + 0x96, 0x6c, 0x65, 0x36, 0x04, 0x4c, 0xa0, 0xfa, 0xc9, 0x6c, 0x2d, 0x97, + 0xc3, 0xd4, 0x1a, 0x2f, 0x64, 0x80, 0xca, 0xc1, 0x14, 0x31, 0xb1, 0xb4, +}; +static const unsigned char kat4157_nonce[] = {0}; +static const unsigned char kat4157_persstr[] = {0}; +static const unsigned char kat4157_entropyinpr1[] = { + 0x86, 0xea, 0xdd, 0xcb, 0xb9, 0x93, 0x53, 0x67, 0x71, 0x30, 0x3d, 0x8a, + 0x63, 0x2e, 0x58, 0xf6, 0x22, 0xec, 0x43, 0x19, 0x84, 0x4c, 0x8b, 0xf1, + 0xb1, 0x12, 0x04, 0x9a, 0x6f, 0x66, 0x9e, 0xae, 0x59, 0xd3, 0x88, 0x84, + 0xc9, 0xc7, 0xe8, 0x29, 0x75, 0xd0, 0x24, 0x61, 0xc1, 0x7f, 0x74, 0x27, +}; +static const unsigned char kat4157_addinpr1[] = { + 0x45, 0x25, 0x84, 0x3c, 0x9e, 0xac, 0x44, 0x71, 0x1e, 0x3f, 0xda, 0x2f, + 0x49, 0x88, 0x94, 0x04, 0xaf, 0x49, 0xe3, 0x7c, 0x3e, 0x50, 0xd8, 0x55, + 0xf6, 0x1d, 0xe7, 0xe8, 0x20, 0x38, 0x0a, 0x8b, 0x07, 0x40, 0x7c, 0x79, + 0x85, 0x5c, 0xda, 0xf2, 0x67, 0x85, 0xab, 0x75, 0x7e, 0xd8, 0xa4, 0x36, +}; +static const unsigned char kat4157_entropyinpr2[] = { + 0x91, 0x8e, 0x0c, 0x9d, 0xac, 0xe5, 0xc5, 0x9b, 0x90, 0x79, 0x73, 0x42, + 0x98, 0x80, 0x34, 0xe1, 0xd8, 0x36, 0x18, 0x53, 0x29, 0x82, 0x20, 0xb8, + 0xc0, 0x5c, 0x85, 0x05, 0x4b, 0x9c, 0x17, 0x0f, 0x96, 0x3d, 0x6d, 0xdb, + 0xf4, 0xc7, 0x92, 0xd1, 0x61, 0x50, 0x01, 0x30, 0xf8, 0x2e, 0xc5, 0x4c, +}; +static const unsigned char kat4157_addinpr2[] = { + 0x87, 0x1a, 0x2a, 0x3a, 0xab, 0x55, 0xe1, 0xe4, 0xfa, 0x72, 0xcc, 0xe2, + 0x88, 0x38, 0x9d, 0x58, 0x41, 0x6e, 0xc2, 0xaa, 0x37, 0xd3, 0x0d, 0x5f, + 0x1c, 0x68, 0x1f, 0x62, 0x5e, 0x99, 0xdd, 0x64, 0x90, 0x78, 0xb6, 0x00, + 0x3c, 0x9f, 0x8f, 0x99, 0xda, 0xf1, 0xfd, 0x02, 0x93, 0x13, 0x49, 0x59, +}; +static const unsigned char kat4157_retbits[] = { + 0x36, 0x6e, 0x6a, 0x40, 0x5c, 0xa2, 0xd7, 0x94, 0x1a, 0xd3, 0x29, 0x12, + 0x4f, 0x95, 0xfa, 0x6b, 0x15, 0x7d, 0x5b, 0x57, 0x3f, 0x4c, 0x8c, 0x8c, + 0x7b, 0x6b, 0xcd, 0x1e, 0x39, 0xf9, 0x7f, 0xb8, 0x04, 0xff, 0xa1, 0x6c, + 0x37, 0x98, 0x44, 0x0c, 0x75, 0xd2, 0x9a, 0x0f, 0x9b, 0xbf, 0x02, 0xa4, + 0x51, 0x8f, 0x45, 0x44, 0x4a, 0xc8, 0xe3, 0xf8, 0xeb, 0x8b, 0xdf, 0x2e, + 0xdd, 0xba, 0x26, 0xb0, +}; +static const struct drbg_kat_pr_true kat4157_t = { + 1, kat4157_entropyin, kat4157_nonce, kat4157_persstr, + kat4157_entropyinpr1, kat4157_addinpr1, kat4157_entropyinpr2, + kat4157_addinpr2, kat4157_retbits +}; +static const struct drbg_kat kat4157 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4157_t +}; + +static const unsigned char kat4158_entropyin[] = { + 0xa9, 0x54, 0xdf, 0xab, 0x71, 0xe7, 0x70, 0x4e, 0x3e, 0x65, 0xd7, 0xf0, + 0x91, 0xe4, 0xdb, 0x82, 0x11, 0xbf, 0x7b, 0x48, 0x3d, 0x5c, 0x01, 0x53, + 0xc3, 0xbf, 0xd2, 0x0e, 0xfa, 0x79, 0x1a, 0x45, 0x66, 0x38, 0xcd, 0xb4, + 0x24, 0xfa, 0x3b, 0xf8, 0x2a, 0x61, 0xab, 0xe3, 0x71, 0x68, 0x7f, 0xd9, +}; +static const unsigned char kat4158_nonce[] = {0}; +static const unsigned char kat4158_persstr[] = {0}; +static const unsigned char kat4158_entropyinpr1[] = { + 0x4d, 0x64, 0xa5, 0x6e, 0xde, 0x43, 0x3d, 0x08, 0xf7, 0xb8, 0x8c, 0x97, + 0x26, 0x9e, 0x97, 0x13, 0x6b, 0x59, 0xc7, 0x90, 0x67, 0x0b, 0x8a, 0x86, + 0xa4, 0x85, 0x15, 0xe7, 0x08, 0xbb, 0x75, 0x7a, 0x86, 0xe6, 0x06, 0xb3, + 0x7f, 0x9f, 0xe6, 0xe8, 0xbb, 0xcf, 0x00, 0xa9, 0x34, 0xf3, 0xd6, 0xb0, +}; +static const unsigned char kat4158_addinpr1[] = { + 0xe3, 0x0b, 0x6e, 0xca, 0x01, 0xa4, 0x0d, 0xf9, 0xb3, 0x31, 0x72, 0xd4, + 0x7a, 0x1c, 0xd2, 0xd5, 0xac, 0x0b, 0x4c, 0x7a, 0x9e, 0xbe, 0x19, 0xf2, + 0x4d, 0xf0, 0x9d, 0xb7, 0x1c, 0x4f, 0x9e, 0x1e, 0xb0, 0x27, 0xc4, 0x93, + 0x03, 0xac, 0x60, 0x56, 0x31, 0x6a, 0xfc, 0x66, 0x2e, 0x63, 0xee, 0x3c, +}; +static const unsigned char kat4158_entropyinpr2[] = { + 0x57, 0xc5, 0xd9, 0x09, 0x7e, 0x83, 0x09, 0x1a, 0x7e, 0xdc, 0x14, 0x32, + 0xe2, 0xa6, 0x6c, 0xa9, 0x89, 0xd4, 0x38, 0x4f, 0x84, 0x17, 0x07, 0xc7, + 0x06, 0x72, 0xcd, 0xc1, 0x82, 0xbb, 0x50, 0xef, 0x98, 0xd6, 0xa2, 0xdb, + 0x10, 0x90, 0x92, 0x78, 0xf4, 0xb7, 0x1d, 0x8b, 0xdf, 0xee, 0x08, 0x05, +}; +static const unsigned char kat4158_addinpr2[] = { + 0xef, 0x38, 0x3a, 0xb2, 0x03, 0x53, 0xec, 0xac, 0xeb, 0x94, 0xb7, 0xb9, + 0xb2, 0x89, 0x1a, 0x00, 0xe3, 0xc0, 0xaa, 0x1d, 0x85, 0xa3, 0xff, 0x3e, + 0x66, 0x8b, 0x73, 0x2d, 0x49, 0xba, 0xc7, 0x30, 0x18, 0x52, 0x21, 0x84, + 0xc3, 0x87, 0x3c, 0xf7, 0x4c, 0x30, 0xa2, 0x39, 0x5b, 0xb9, 0x82, 0x9d, +}; +static const unsigned char kat4158_retbits[] = { + 0xf7, 0x0a, 0x0f, 0xa2, 0x90, 0x0b, 0x38, 0xdd, 0x09, 0x62, 0x3b, 0x78, + 0x75, 0xbd, 0x2c, 0xcb, 0x32, 0xe4, 0x0e, 0x14, 0x6a, 0x8b, 0x46, 0xc3, + 0x05, 0x2a, 0x3c, 0x84, 0xce, 0x3c, 0x90, 0x46, 0xec, 0xbc, 0xa2, 0x89, + 0x14, 0x56, 0x70, 0x22, 0xea, 0xa1, 0x1d, 0x59, 0xe1, 0xb8, 0x11, 0x61, + 0xa7, 0x9a, 0xae, 0x7c, 0xff, 0x78, 0x7b, 0x9d, 0x51, 0x00, 0xf7, 0x8f, + 0x98, 0xa8, 0x00, 0x0c, +}; +static const struct drbg_kat_pr_true kat4158_t = { + 2, kat4158_entropyin, kat4158_nonce, kat4158_persstr, + kat4158_entropyinpr1, kat4158_addinpr1, kat4158_entropyinpr2, + kat4158_addinpr2, kat4158_retbits +}; +static const struct drbg_kat kat4158 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4158_t +}; + +static const unsigned char kat4159_entropyin[] = { + 0x1f, 0x07, 0xb9, 0xde, 0x97, 0x08, 0xc9, 0x1c, 0x2f, 0x95, 0x01, 0x71, + 0xd3, 0x83, 0xea, 0x93, 0x55, 0xd7, 0x14, 0xcd, 0xbd, 0x0d, 0x85, 0xaf, + 0x1c, 0xe4, 0x30, 0xf6, 0x7f, 0x7d, 0x48, 0x3e, 0x0e, 0x31, 0x18, 0x93, + 0x4f, 0x4c, 0xf0, 0x3c, 0xc8, 0xf0, 0x5c, 0xe0, 0x6c, 0xbc, 0x40, 0x7b, +}; +static const unsigned char kat4159_nonce[] = {0}; +static const unsigned char kat4159_persstr[] = {0}; +static const unsigned char kat4159_entropyinpr1[] = { + 0x20, 0x6b, 0x22, 0xc1, 0xe4, 0x2b, 0x38, 0x26, 0x94, 0x92, 0x28, 0xa4, + 0x4c, 0x4a, 0x5e, 0xbe, 0x8c, 0x0f, 0x50, 0xeb, 0x48, 0xff, 0xa9, 0x08, + 0x10, 0x89, 0x7b, 0x2e, 0x5c, 0xf9, 0xe9, 0x89, 0x32, 0x09, 0x0e, 0xe5, + 0xd8, 0x01, 0x41, 0x93, 0x77, 0x57, 0xbc, 0xe3, 0xbc, 0x36, 0x8f, 0x51, +}; +static const unsigned char kat4159_addinpr1[] = { + 0x68, 0x45, 0x76, 0x77, 0xf6, 0xad, 0x0c, 0x60, 0x4f, 0xe9, 0x7c, 0x57, + 0x2f, 0xed, 0x97, 0xbd, 0x83, 0xdd, 0xcd, 0x95, 0xaa, 0x0e, 0x77, 0xd5, + 0x6c, 0x67, 0x11, 0xe6, 0x48, 0x1a, 0x13, 0x7c, 0x48, 0x96, 0x61, 0x32, + 0xc4, 0x95, 0x4e, 0x07, 0x9a, 0xd9, 0x4e, 0x90, 0xc9, 0x79, 0x6f, 0xf8, +}; +static const unsigned char kat4159_entropyinpr2[] = { + 0xbd, 0x50, 0xed, 0xbc, 0x9b, 0x24, 0x53, 0x6d, 0x6c, 0x00, 0xa5, 0x57, + 0x65, 0x15, 0xe4, 0xbb, 0x7d, 0x8c, 0x9b, 0xd4, 0xd5, 0x98, 0x8e, 0x50, + 0xb8, 0xe6, 0x3d, 0xe7, 0xec, 0x72, 0x55, 0x6b, 0x51, 0xca, 0xde, 0xea, + 0x2a, 0xf5, 0x4d, 0x48, 0x89, 0xe6, 0x89, 0x1c, 0x35, 0xcb, 0xaa, 0xf9, +}; +static const unsigned char kat4159_addinpr2[] = { + 0x21, 0x37, 0xea, 0xcd, 0xf5, 0xce, 0x18, 0x34, 0x98, 0x40, 0xae, 0xb9, + 0x3d, 0x12, 0xe6, 0x45, 0x02, 0xce, 0xa3, 0xdc, 0xf7, 0xe7, 0xd1, 0xd8, + 0xb4, 0xc3, 0x39, 0x8c, 0xbc, 0x95, 0xb4, 0xef, 0xd2, 0xba, 0x39, 0xaf, + 0xd5, 0x1a, 0xd6, 0xf1, 0xf8, 0xfb, 0xec, 0xa7, 0x7a, 0xe9, 0x60, 0xa9, +}; +static const unsigned char kat4159_retbits[] = { + 0x62, 0x7b, 0xaa, 0x50, 0x47, 0x94, 0x4b, 0xf8, 0x24, 0x96, 0x42, 0xe6, + 0x25, 0xdc, 0xf8, 0xc4, 0x4f, 0x12, 0x8f, 0x43, 0x9e, 0xd2, 0xe7, 0xa0, + 0x88, 0x13, 0x49, 0x8a, 0x0a, 0x4f, 0xce, 0x98, 0x2a, 0x95, 0x58, 0xf6, + 0x7c, 0xeb, 0x0e, 0x4a, 0x55, 0x05, 0x63, 0xde, 0xbf, 0x26, 0xc7, 0x35, + 0xa3, 0x6e, 0x80, 0xdb, 0x79, 0x0a, 0xfb, 0xb4, 0xfb, 0xf8, 0x36, 0x9b, + 0x16, 0x30, 0x86, 0xf5, +}; +static const struct drbg_kat_pr_true kat4159_t = { + 3, kat4159_entropyin, kat4159_nonce, kat4159_persstr, + kat4159_entropyinpr1, kat4159_addinpr1, kat4159_entropyinpr2, + kat4159_addinpr2, kat4159_retbits +}; +static const struct drbg_kat kat4159 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4159_t +}; + +static const unsigned char kat4160_entropyin[] = { + 0xc1, 0x66, 0x9a, 0x43, 0x01, 0x22, 0xe0, 0x85, 0x6a, 0xee, 0x6b, 0x32, + 0xd0, 0x81, 0xfc, 0x83, 0xa0, 0x3c, 0x06, 0x1f, 0x6d, 0x24, 0xe8, 0x4b, + 0xef, 0x76, 0xb9, 0x5c, 0xba, 0xaa, 0x26, 0xed, 0xbc, 0xfe, 0xda, 0xe0, + 0x5c, 0xc0, 0x84, 0xf2, 0xaa, 0x06, 0x68, 0xfe, 0x0d, 0x47, 0xb7, 0x2a, +}; +static const unsigned char kat4160_nonce[] = {0}; +static const unsigned char kat4160_persstr[] = {0}; +static const unsigned char kat4160_entropyinpr1[] = { + 0x9e, 0x86, 0x3d, 0xd5, 0x46, 0xe8, 0x38, 0x52, 0xbd, 0x71, 0x04, 0x7d, + 0x82, 0x99, 0x37, 0x88, 0xe1, 0x61, 0xde, 0x88, 0xdf, 0xc3, 0x11, 0x3b, + 0xc7, 0x47, 0x4e, 0xc7, 0x83, 0x76, 0x25, 0x99, 0xf5, 0xed, 0xf3, 0x80, + 0xff, 0x25, 0xa2, 0x31, 0x22, 0x6a, 0x9d, 0xd5, 0x1f, 0x32, 0xf5, 0xdd, +}; +static const unsigned char kat4160_addinpr1[] = { + 0x78, 0x9e, 0x64, 0xd0, 0x0a, 0x42, 0xc5, 0xde, 0xa4, 0xdc, 0x98, 0x0a, + 0xa3, 0x24, 0xcd, 0xbe, 0x63, 0xaa, 0x3f, 0x95, 0xef, 0x64, 0x14, 0x07, + 0x0b, 0x59, 0x05, 0x4b, 0x1b, 0x2a, 0x33, 0x24, 0x5b, 0x9b, 0xdd, 0xf7, + 0xba, 0x0b, 0x59, 0xec, 0x08, 0xe0, 0x10, 0xdb, 0x75, 0xcc, 0x69, 0x5c, +}; +static const unsigned char kat4160_entropyinpr2[] = { + 0xa9, 0xdd, 0x0f, 0x23, 0x1b, 0x5f, 0x10, 0xcd, 0x4a, 0x0b, 0x17, 0xb0, + 0x9e, 0x94, 0xa9, 0x38, 0xe5, 0xb4, 0x40, 0x14, 0x96, 0x02, 0xf0, 0xab, + 0x77, 0x03, 0x34, 0x61, 0x24, 0xe8, 0xbd, 0x3a, 0x4a, 0xdd, 0xe9, 0x6c, + 0x84, 0xee, 0xd0, 0xc8, 0x73, 0x35, 0xfd, 0x75, 0xb1, 0x79, 0x62, 0x3c, +}; +static const unsigned char kat4160_addinpr2[] = { + 0x51, 0xb5, 0x3a, 0x5a, 0x96, 0xf3, 0x1e, 0x75, 0x0f, 0x2d, 0x9f, 0x04, + 0x74, 0xce, 0x3e, 0x75, 0x2c, 0xbb, 0x7c, 0x10, 0x19, 0x9b, 0xc5, 0x22, + 0xa0, 0xe7, 0x9e, 0xba, 0x07, 0xd7, 0x70, 0x91, 0x24, 0x27, 0x91, 0xf6, + 0x41, 0x71, 0x72, 0x95, 0x6c, 0x23, 0x97, 0xde, 0xa7, 0xe4, 0x25, 0xbf, +}; +static const unsigned char kat4160_retbits[] = { + 0x38, 0xc4, 0x43, 0xf7, 0x8f, 0x55, 0xa2, 0x47, 0xd5, 0x74, 0x12, 0x31, + 0xbb, 0x9c, 0x23, 0x3d, 0xdd, 0xb7, 0x78, 0xaf, 0x41, 0x2b, 0xc3, 0xe8, + 0xfc, 0x4d, 0xde, 0x0c, 0x88, 0x4c, 0x0a, 0xbb, 0x6b, 0x67, 0x43, 0xab, + 0x23, 0xe7, 0xb7, 0x7a, 0xed, 0x59, 0xe4, 0xe7, 0xd8, 0x0f, 0x36, 0x18, + 0x1e, 0xeb, 0xc0, 0xef, 0xf3, 0x98, 0x47, 0x71, 0x14, 0x69, 0x83, 0xde, + 0x58, 0x2d, 0xb6, 0x5a, +}; +static const struct drbg_kat_pr_true kat4160_t = { + 4, kat4160_entropyin, kat4160_nonce, kat4160_persstr, + kat4160_entropyinpr1, kat4160_addinpr1, kat4160_entropyinpr2, + kat4160_addinpr2, kat4160_retbits +}; +static const struct drbg_kat kat4160 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4160_t +}; + +static const unsigned char kat4161_entropyin[] = { + 0x80, 0x01, 0x53, 0xc9, 0x99, 0xab, 0x5e, 0x4f, 0x68, 0x02, 0x4e, 0xa7, + 0x9b, 0xdf, 0xdf, 0xb7, 0xfb, 0x63, 0xe6, 0xb6, 0xaf, 0xbc, 0xd0, 0xe2, + 0xa6, 0x92, 0x73, 0x5e, 0x61, 0xc6, 0x55, 0xbf, 0x18, 0x42, 0x76, 0x53, + 0x2f, 0xe3, 0xf6, 0xe6, 0x8c, 0x4e, 0x20, 0x04, 0x0d, 0x99, 0x29, 0x19, +}; +static const unsigned char kat4161_nonce[] = {0}; +static const unsigned char kat4161_persstr[] = {0}; +static const unsigned char kat4161_entropyinpr1[] = { + 0xc2, 0xfc, 0xaf, 0x92, 0x71, 0xcf, 0x85, 0x38, 0xa5, 0x5b, 0x0c, 0x32, + 0x06, 0x13, 0xb2, 0xbe, 0xb7, 0x77, 0xf1, 0x29, 0x00, 0x7e, 0xb1, 0x46, + 0x2e, 0xd3, 0xac, 0x9a, 0x96, 0x53, 0xb5, 0xac, 0x10, 0x6b, 0x38, 0x5e, + 0x44, 0xb4, 0x0a, 0xc0, 0x2c, 0x3c, 0x5b, 0x0e, 0x22, 0xec, 0x64, 0x7d, +}; +static const unsigned char kat4161_addinpr1[] = { + 0x9f, 0x40, 0x47, 0x4b, 0x7f, 0x3c, 0x6f, 0xc8, 0xd3, 0x14, 0x2b, 0x1d, + 0x6e, 0x98, 0x08, 0xfa, 0xe8, 0x7b, 0x2d, 0xe0, 0xa1, 0xb0, 0xca, 0xe7, + 0x06, 0x0f, 0x5d, 0xc9, 0x1a, 0x3e, 0xab, 0x85, 0x26, 0x50, 0x86, 0x25, + 0x24, 0x68, 0x60, 0x29, 0xcf, 0xcf, 0x22, 0x30, 0x71, 0x24, 0x94, 0xd2, +}; +static const unsigned char kat4161_entropyinpr2[] = { + 0xb8, 0x2e, 0xa6, 0x6b, 0xe4, 0x7b, 0xc7, 0x14, 0x27, 0x77, 0x77, 0x89, + 0xea, 0x29, 0xb8, 0xae, 0x82, 0x9a, 0x09, 0xe7, 0x9d, 0x38, 0x8d, 0x3e, + 0x66, 0x8a, 0xd7, 0xf6, 0xe0, 0x43, 0x2b, 0x8c, 0x9f, 0xd5, 0xe1, 0x7a, + 0x26, 0xb3, 0xd3, 0x0d, 0xe9, 0xa0, 0x29, 0x01, 0x66, 0x2f, 0x1e, 0xae, +}; +static const unsigned char kat4161_addinpr2[] = { + 0xdb, 0x0e, 0x7c, 0x08, 0xff, 0xb1, 0xc3, 0x7a, 0xfc, 0x30, 0xc6, 0xfb, + 0xba, 0xb9, 0xfe, 0xf9, 0x49, 0x23, 0x8c, 0xde, 0xc7, 0x75, 0xbc, 0x06, + 0x67, 0xbc, 0xe1, 0xf7, 0xa5, 0x6d, 0x1a, 0x2c, 0xa0, 0xa0, 0x08, 0x85, + 0x9d, 0x6a, 0xb7, 0x5f, 0x87, 0x8a, 0x6b, 0x00, 0xa9, 0xe5, 0xe1, 0x52, +}; +static const unsigned char kat4161_retbits[] = { + 0x80, 0xae, 0x6e, 0x76, 0xfa, 0x96, 0x76, 0x5f, 0xec, 0x13, 0x4f, 0x92, + 0xbe, 0x9c, 0x1b, 0xf7, 0x81, 0x51, 0x88, 0xf8, 0x86, 0xba, 0xb7, 0x55, + 0xe6, 0x17, 0xf0, 0x17, 0x4b, 0xe4, 0xfb, 0x00, 0xbb, 0x19, 0xb4, 0x66, + 0xe3, 0x53, 0xe2, 0xe1, 0x42, 0x5c, 0x4c, 0xbe, 0x6e, 0xb0, 0x9a, 0x65, + 0xce, 0xdd, 0xc6, 0x25, 0xaa, 0x00, 0xb7, 0x3b, 0xd2, 0x0e, 0x70, 0x7e, + 0x0c, 0x21, 0x57, 0xd8, +}; +static const struct drbg_kat_pr_true kat4161_t = { + 5, kat4161_entropyin, kat4161_nonce, kat4161_persstr, + kat4161_entropyinpr1, kat4161_addinpr1, kat4161_entropyinpr2, + kat4161_addinpr2, kat4161_retbits +}; +static const struct drbg_kat kat4161 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4161_t +}; + +static const unsigned char kat4162_entropyin[] = { + 0xe0, 0x74, 0xb1, 0xfc, 0x41, 0x34, 0xff, 0x8d, 0xef, 0x22, 0x4b, 0xed, + 0xb7, 0x78, 0xc3, 0x3f, 0xa5, 0x74, 0x75, 0x97, 0xae, 0x2a, 0x4d, 0x3c, + 0x1a, 0xd0, 0x95, 0xd3, 0x3b, 0x06, 0x9d, 0x49, 0x71, 0x77, 0xa4, 0x4f, + 0x93, 0x2b, 0x0d, 0xdc, 0xa4, 0x9f, 0x71, 0xce, 0x8d, 0x8a, 0x32, 0x41, +}; +static const unsigned char kat4162_nonce[] = {0}; +static const unsigned char kat4162_persstr[] = {0}; +static const unsigned char kat4162_entropyinpr1[] = { + 0x02, 0x26, 0x1c, 0xa6, 0xa6, 0xb2, 0x71, 0xef, 0xd1, 0xa7, 0xe6, 0x14, + 0xbe, 0xf8, 0xa8, 0x02, 0x42, 0x7c, 0x9c, 0x1e, 0x53, 0x60, 0x92, 0x12, + 0xb2, 0xbe, 0xb9, 0x2b, 0xad, 0x8b, 0x7d, 0xf7, 0xae, 0x3f, 0x73, 0x3b, + 0xcc, 0x12, 0xde, 0x45, 0x89, 0x00, 0xa2, 0xbe, 0xba, 0x17, 0x1f, 0xc6, +}; +static const unsigned char kat4162_addinpr1[] = { + 0x4a, 0x43, 0x27, 0xda, 0xf2, 0xec, 0x67, 0x5d, 0xd6, 0xb0, 0x8c, 0x21, + 0x13, 0x6c, 0xa7, 0x20, 0x49, 0x5d, 0x95, 0x08, 0x01, 0xbe, 0x4c, 0x50, + 0x34, 0xac, 0x25, 0x90, 0x97, 0x51, 0x13, 0x2a, 0xcc, 0xb3, 0x35, 0xea, + 0x47, 0xb9, 0x5c, 0xf2, 0x87, 0xd2, 0x6d, 0x29, 0x6e, 0xa5, 0x75, 0x1b, +}; +static const unsigned char kat4162_entropyinpr2[] = { + 0x95, 0x93, 0x64, 0x8b, 0xae, 0xfb, 0xa0, 0x50, 0x60, 0x15, 0xd6, 0x62, + 0x22, 0x5a, 0xe5, 0xa6, 0x0c, 0xb2, 0x17, 0xb1, 0x14, 0xb2, 0x4a, 0xd8, + 0x20, 0x10, 0x25, 0x81, 0x2a, 0x22, 0xc1, 0x13, 0xf6, 0x87, 0x1d, 0xf2, + 0x21, 0xc2, 0x2b, 0xcb, 0x28, 0xe2, 0xdd, 0xd2, 0x38, 0xab, 0x56, 0x70, +}; +static const unsigned char kat4162_addinpr2[] = { + 0xc2, 0x16, 0xb8, 0xde, 0x28, 0x48, 0x14, 0x6f, 0x52, 0x70, 0x16, 0x0f, + 0xd0, 0x0b, 0x2e, 0x23, 0xf6, 0x7e, 0xdb, 0xd4, 0x99, 0xfb, 0x01, 0x2d, + 0x6b, 0x95, 0x06, 0x05, 0xed, 0x0e, 0x2e, 0x4f, 0x62, 0x56, 0xe2, 0x7e, + 0xc7, 0xec, 0x02, 0x10, 0xeb, 0x5e, 0x26, 0x98, 0x40, 0xf6, 0x33, 0xb1, +}; +static const unsigned char kat4162_retbits[] = { + 0x1b, 0xed, 0xa2, 0x0b, 0x86, 0x9b, 0x95, 0x19, 0xd2, 0xc8, 0xeb, 0x72, + 0xef, 0xc6, 0xca, 0xdd, 0x3a, 0xb6, 0xd2, 0xf1, 0xcc, 0xff, 0x72, 0x96, + 0x09, 0x06, 0x3b, 0x81, 0x53, 0x4a, 0x2c, 0x74, 0x2a, 0xa5, 0x2c, 0x57, + 0xc2, 0x0a, 0x56, 0x4d, 0xa0, 0x10, 0x7c, 0xae, 0xe5, 0xaf, 0xec, 0x23, + 0x2a, 0x20, 0xe2, 0xec, 0x43, 0x79, 0xac, 0x7c, 0x0f, 0xac, 0x4c, 0x83, + 0xa6, 0x41, 0xc2, 0xbf, +}; +static const struct drbg_kat_pr_true kat4162_t = { + 6, kat4162_entropyin, kat4162_nonce, kat4162_persstr, + kat4162_entropyinpr1, kat4162_addinpr1, kat4162_entropyinpr2, + kat4162_addinpr2, kat4162_retbits +}; +static const struct drbg_kat kat4162 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4162_t +}; + +static const unsigned char kat4163_entropyin[] = { + 0xeb, 0x7f, 0x53, 0xf4, 0xc9, 0x91, 0xa9, 0x6a, 0x01, 0xcc, 0x70, 0x58, + 0xca, 0x91, 0x27, 0x30, 0x73, 0xfe, 0xc7, 0xd5, 0x7f, 0x6a, 0x4a, 0xd8, + 0x6c, 0xcb, 0x0a, 0xc3, 0x32, 0x00, 0x1b, 0xe9, 0x55, 0xe8, 0xf3, 0x02, + 0x1d, 0xa9, 0x52, 0x43, 0x90, 0x7f, 0xb0, 0xf1, 0x75, 0xb9, 0x1f, 0x88, +}; +static const unsigned char kat4163_nonce[] = {0}; +static const unsigned char kat4163_persstr[] = {0}; +static const unsigned char kat4163_entropyinpr1[] = { + 0x8b, 0xa9, 0xb8, 0x14, 0x5d, 0xc3, 0xad, 0x9c, 0x48, 0xfa, 0xa8, 0x4c, + 0x6d, 0x8b, 0x17, 0x72, 0x0e, 0x85, 0xfa, 0xda, 0x42, 0xbb, 0x02, 0xc9, + 0xf8, 0xd5, 0x0b, 0x65, 0x41, 0xc7, 0x4b, 0x6a, 0x27, 0x5f, 0x59, 0xcf, + 0x51, 0xd0, 0x16, 0x24, 0x42, 0x49, 0xb8, 0xfc, 0x56, 0xfe, 0x95, 0x35, +}; +static const unsigned char kat4163_addinpr1[] = { + 0x00, 0x2f, 0xff, 0x2d, 0x34, 0xac, 0x5c, 0x29, 0x87, 0xe6, 0x9d, 0x27, + 0xa5, 0x03, 0x76, 0x6d, 0x16, 0xd4, 0x2f, 0xfc, 0xde, 0x7b, 0x16, 0xaf, + 0x1e, 0x6e, 0x84, 0x47, 0x64, 0xd3, 0xfa, 0x73, 0xf0, 0xff, 0xda, 0x37, + 0x69, 0x8f, 0x36, 0x48, 0x67, 0x28, 0x6a, 0x37, 0xad, 0x29, 0x73, 0xed, +}; +static const unsigned char kat4163_entropyinpr2[] = { + 0xdf, 0x2a, 0x8e, 0xf4, 0x50, 0xa4, 0x73, 0x77, 0x78, 0x5b, 0xf5, 0x58, + 0x6b, 0x50, 0x67, 0x98, 0x16, 0xc6, 0xa3, 0xdb, 0x9a, 0x7b, 0xa1, 0xc3, + 0x40, 0x1e, 0xdb, 0x4e, 0xcc, 0xa9, 0xcc, 0xd7, 0x13, 0xff, 0xd1, 0xe8, + 0x2e, 0x4d, 0x23, 0x26, 0x43, 0x3a, 0xef, 0x19, 0xb6, 0x79, 0x1c, 0xbb, +}; +static const unsigned char kat4163_addinpr2[] = { + 0xa5, 0x48, 0x15, 0x59, 0x14, 0xbb, 0xcc, 0xfd, 0x5c, 0x7b, 0xa4, 0x17, + 0x00, 0xd4, 0x5b, 0x50, 0xf3, 0x27, 0x35, 0xcc, 0x96, 0x0c, 0x7d, 0xf7, + 0xd3, 0x31, 0x44, 0xfd, 0x46, 0x46, 0x84, 0xdc, 0x5d, 0xfe, 0xf1, 0xe9, + 0x50, 0x91, 0xd1, 0xa7, 0xc9, 0x61, 0x7d, 0x11, 0x23, 0x77, 0xa8, 0x92, +}; +static const unsigned char kat4163_retbits[] = { + 0xd1, 0x71, 0xa9, 0x6e, 0x6b, 0xfd, 0xb4, 0x37, 0xcd, 0x20, 0xd6, 0x50, + 0xca, 0x27, 0xdc, 0x3f, 0x94, 0x77, 0x61, 0xed, 0x65, 0xb9, 0x3b, 0x44, + 0x76, 0xbd, 0x2c, 0xdb, 0x31, 0x8e, 0xce, 0x39, 0xa1, 0x34, 0x72, 0x91, + 0x90, 0xc9, 0x78, 0x11, 0x2d, 0x1f, 0xcf, 0x94, 0x73, 0xca, 0x80, 0xd1, + 0x3f, 0xad, 0x57, 0xb3, 0xab, 0x05, 0x56, 0xf4, 0x69, 0x95, 0x6a, 0x48, + 0x02, 0xaa, 0x63, 0x16, +}; +static const struct drbg_kat_pr_true kat4163_t = { + 7, kat4163_entropyin, kat4163_nonce, kat4163_persstr, + kat4163_entropyinpr1, kat4163_addinpr1, kat4163_entropyinpr2, + kat4163_addinpr2, kat4163_retbits +}; +static const struct drbg_kat kat4163 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4163_t +}; + +static const unsigned char kat4164_entropyin[] = { + 0x6e, 0xe1, 0x3c, 0x98, 0x05, 0xe3, 0x94, 0x66, 0xae, 0x15, 0x79, 0x84, + 0x38, 0x23, 0x21, 0xc2, 0x20, 0x04, 0xb0, 0x04, 0xe9, 0x6f, 0x69, 0xb6, + 0x4a, 0xdc, 0xd5, 0x46, 0xe2, 0x9c, 0x4b, 0xcf, 0x43, 0xb9, 0x5c, 0x0b, + 0x70, 0x8f, 0xf2, 0xb5, 0x6b, 0x9a, 0xbb, 0xef, 0x16, 0x59, 0x58, 0x74, +}; +static const unsigned char kat4164_nonce[] = {0}; +static const unsigned char kat4164_persstr[] = {0}; +static const unsigned char kat4164_entropyinpr1[] = { + 0xff, 0x86, 0xdd, 0xcb, 0xa2, 0x52, 0x50, 0x38, 0xb1, 0x6a, 0x28, 0x03, + 0x9e, 0xba, 0x04, 0x45, 0x95, 0x74, 0x9f, 0x96, 0x44, 0x14, 0xba, 0x16, + 0x4d, 0x18, 0x1b, 0x03, 0xb6, 0xf8, 0x53, 0xc1, 0x88, 0xed, 0xe2, 0xe8, + 0x0b, 0x8f, 0xaf, 0x44, 0xf4, 0x73, 0x81, 0x4e, 0x22, 0xaf, 0x09, 0xdf, +}; +static const unsigned char kat4164_addinpr1[] = { + 0x04, 0x37, 0x2e, 0xfb, 0x1f, 0x9e, 0x93, 0xca, 0xe0, 0x64, 0xf4, 0x06, + 0x55, 0x98, 0xcb, 0xfd, 0x49, 0x82, 0x11, 0xc0, 0xe7, 0xd7, 0x67, 0x06, + 0xd3, 0x1b, 0x52, 0x7e, 0x53, 0x3e, 0x62, 0x88, 0x3b, 0x42, 0x89, 0x1d, + 0x63, 0xdc, 0xa3, 0x94, 0x35, 0x9a, 0x5a, 0x7a, 0xcf, 0x2b, 0x43, 0x34, +}; +static const unsigned char kat4164_entropyinpr2[] = { + 0x04, 0xa2, 0xec, 0x1e, 0xc1, 0xeb, 0x5e, 0xe6, 0x33, 0xf2, 0x78, 0xca, + 0x7d, 0x77, 0x29, 0xae, 0xc9, 0x90, 0x60, 0x9d, 0xc3, 0x26, 0x14, 0x94, + 0x7a, 0x4f, 0xb2, 0x36, 0x55, 0x4f, 0x55, 0x87, 0xf2, 0xc0, 0xdc, 0xbe, + 0xbe, 0xda, 0x37, 0x2b, 0x3b, 0x6e, 0xec, 0x5d, 0xfb, 0xf6, 0xd8, 0x6d, +}; +static const unsigned char kat4164_addinpr2[] = { + 0xc7, 0xae, 0x96, 0x00, 0x9f, 0x4d, 0x00, 0x82, 0xd6, 0x45, 0xa3, 0x01, + 0xa3, 0xee, 0xba, 0xb4, 0x12, 0xf3, 0xaf, 0x23, 0xe3, 0x86, 0x2a, 0xbd, + 0xed, 0xdb, 0x3c, 0x09, 0x3e, 0xc8, 0x56, 0xc8, 0xf8, 0x7f, 0xe7, 0x2b, + 0xa9, 0x3a, 0x0e, 0x19, 0x76, 0xf6, 0x79, 0xa7, 0x62, 0x0d, 0x3d, 0xd5, +}; +static const unsigned char kat4164_retbits[] = { + 0x98, 0x34, 0x67, 0x77, 0xcd, 0x25, 0x51, 0x7a, 0xd8, 0x8b, 0x4c, 0x49, + 0x05, 0x60, 0xc1, 0xf1, 0x0b, 0xd4, 0x53, 0xcb, 0xe1, 0x64, 0x30, 0xd6, + 0x7f, 0x8a, 0x47, 0x84, 0xf6, 0x9e, 0xf7, 0x8a, 0x2e, 0x41, 0xf8, 0xf2, + 0x61, 0x19, 0xd0, 0xd8, 0xeb, 0x45, 0x2f, 0xdf, 0xb1, 0xf8, 0x30, 0x50, + 0x98, 0xe4, 0x8b, 0x3c, 0xc0, 0xd7, 0x74, 0xb9, 0x89, 0x8a, 0x0e, 0xe7, + 0xf4, 0x24, 0x7f, 0xf4, +}; +static const struct drbg_kat_pr_true kat4164_t = { + 8, kat4164_entropyin, kat4164_nonce, kat4164_persstr, + kat4164_entropyinpr1, kat4164_addinpr1, kat4164_entropyinpr2, + kat4164_addinpr2, kat4164_retbits +}; +static const struct drbg_kat kat4164 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4164_t +}; + +static const unsigned char kat4165_entropyin[] = { + 0x7c, 0xd6, 0xc4, 0x13, 0x67, 0xee, 0x79, 0x41, 0x8e, 0x45, 0x64, 0xe8, + 0xf7, 0xbe, 0x89, 0x0b, 0x06, 0x29, 0x24, 0x87, 0x8e, 0xfb, 0xca, 0xc7, + 0x0e, 0x34, 0x15, 0xf4, 0xee, 0x6a, 0x9a, 0x41, 0xdb, 0xaf, 0x0a, 0xfc, + 0x53, 0x85, 0x84, 0xeb, 0xfe, 0xf9, 0x3a, 0xd7, 0xe1, 0xac, 0x86, 0x26, +}; +static const unsigned char kat4165_nonce[] = {0}; +static const unsigned char kat4165_persstr[] = {0}; +static const unsigned char kat4165_entropyinpr1[] = { + 0x8a, 0x56, 0xc9, 0x32, 0xd5, 0x29, 0x65, 0xb5, 0x74, 0x91, 0x0c, 0x04, + 0x90, 0xcb, 0xe5, 0xac, 0x10, 0x22, 0x59, 0x63, 0x9d, 0xf9, 0xf9, 0x58, + 0x73, 0xc7, 0xf8, 0x13, 0x54, 0x0d, 0x40, 0x21, 0x7e, 0x87, 0x3c, 0xf4, + 0x6a, 0xf1, 0x9a, 0x31, 0xe5, 0xbd, 0xb1, 0x65, 0x20, 0x52, 0x05, 0x86, +}; +static const unsigned char kat4165_addinpr1[] = { + 0x76, 0xc7, 0x52, 0x0b, 0x82, 0xf4, 0xde, 0x7d, 0xbf, 0xd4, 0x8d, 0x97, + 0x74, 0x3c, 0xdc, 0x55, 0x4b, 0x9d, 0xe9, 0x60, 0x9f, 0x86, 0xf0, 0x6c, + 0xa0, 0x9d, 0xdb, 0xa2, 0x5c, 0xf4, 0x4c, 0x55, 0x57, 0xea, 0x82, 0xd3, + 0x24, 0x8c, 0x71, 0xa5, 0x43, 0xd9, 0x10, 0xae, 0x01, 0xb6, 0xe0, 0x0a, +}; +static const unsigned char kat4165_entropyinpr2[] = { + 0x1e, 0xe0, 0xad, 0xbc, 0x4e, 0x47, 0x7a, 0x08, 0x0a, 0x32, 0x97, 0xb3, + 0x1e, 0x36, 0x44, 0x49, 0xa9, 0x66, 0x6a, 0x4a, 0xaa, 0xf6, 0x20, 0xe1, + 0x53, 0xdf, 0x73, 0xf9, 0x28, 0x3a, 0xde, 0x87, 0x4a, 0x2d, 0x5b, 0x55, + 0xd7, 0xcc, 0xa7, 0x13, 0xda, 0x06, 0x7f, 0x65, 0x56, 0x43, 0x8b, 0x61, +}; +static const unsigned char kat4165_addinpr2[] = { + 0x07, 0xfc, 0x64, 0x59, 0xf9, 0x6a, 0xda, 0x85, 0x84, 0x5d, 0xf9, 0xdc, + 0x60, 0x3f, 0x51, 0xa1, 0x90, 0x5d, 0x6d, 0x7d, 0x50, 0x98, 0xdc, 0x06, + 0x88, 0x61, 0xbf, 0x1b, 0xe4, 0xe6, 0x7a, 0x00, 0x18, 0x66, 0x4b, 0xf0, + 0x59, 0xc7, 0x8c, 0x30, 0xe9, 0xee, 0xc3, 0x3f, 0xfb, 0x1c, 0x6b, 0x1b, +}; +static const unsigned char kat4165_retbits[] = { + 0x52, 0xf3, 0xaf, 0xf1, 0xed, 0x0b, 0x5e, 0xb6, 0x19, 0xcd, 0x50, 0x72, + 0x1e, 0x65, 0xc5, 0xd4, 0x98, 0x46, 0xf6, 0xac, 0x5a, 0xb8, 0xa3, 0xbe, + 0xa6, 0x07, 0x94, 0x4a, 0x06, 0xa5, 0x59, 0x15, 0xdc, 0x65, 0xcb, 0xdb, + 0x57, 0xe6, 0x27, 0x99, 0xfb, 0xe3, 0x35, 0xf6, 0x8b, 0x7a, 0x83, 0xd2, + 0x2a, 0xb1, 0x41, 0xcd, 0xc0, 0xd7, 0xfc, 0x33, 0xaa, 0xe2, 0xfd, 0x96, + 0xa2, 0xcd, 0xb0, 0x5d, +}; +static const struct drbg_kat_pr_true kat4165_t = { + 9, kat4165_entropyin, kat4165_nonce, kat4165_persstr, + kat4165_entropyinpr1, kat4165_addinpr1, kat4165_entropyinpr2, + kat4165_addinpr2, kat4165_retbits +}; +static const struct drbg_kat kat4165 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4165_t +}; + +static const unsigned char kat4166_entropyin[] = { + 0x72, 0x88, 0x09, 0xe9, 0x6c, 0x66, 0xe3, 0x74, 0x10, 0xc3, 0x60, 0x86, + 0x78, 0xa2, 0x59, 0xc8, 0x53, 0x0a, 0xc2, 0x72, 0x89, 0x1d, 0x1a, 0x89, + 0x60, 0x1d, 0x7a, 0x4d, 0xef, 0xe2, 0x85, 0x46, 0x05, 0x23, 0x03, 0x4e, + 0xcb, 0xbb, 0x75, 0x12, 0x43, 0xf5, 0x55, 0x56, 0xc2, 0x0f, 0xd1, 0xc4, +}; +static const unsigned char kat4166_nonce[] = {0}; +static const unsigned char kat4166_persstr[] = {0}; +static const unsigned char kat4166_entropyinpr1[] = { + 0xf8, 0x19, 0x79, 0x79, 0x1c, 0xcf, 0x2e, 0x3d, 0x17, 0x82, 0xaa, 0xd9, + 0x0d, 0xf5, 0x49, 0xdd, 0xe5, 0xdc, 0x02, 0xe4, 0x29, 0x1b, 0xa0, 0x9f, + 0x9f, 0xe9, 0x7b, 0x32, 0x14, 0xcb, 0xc1, 0xda, 0x28, 0x7f, 0x32, 0x0c, + 0xa3, 0x69, 0x78, 0x90, 0x8b, 0xf7, 0xce, 0x16, 0x01, 0x3a, 0x0e, 0xbd, +}; +static const unsigned char kat4166_addinpr1[] = { + 0x79, 0x5f, 0xd4, 0x22, 0xa9, 0xaf, 0x77, 0xcc, 0xa1, 0xfe, 0x5a, 0x81, + 0x0a, 0x3a, 0x28, 0x3b, 0x89, 0xcd, 0x82, 0x4a, 0x54, 0x87, 0xdf, 0x35, + 0xce, 0x9f, 0x8e, 0x62, 0xfa, 0x86, 0x40, 0xab, 0x27, 0xe0, 0x6a, 0xf8, + 0xdc, 0xb2, 0xa7, 0x18, 0x23, 0x0d, 0x7e, 0x97, 0xbc, 0x09, 0xf0, 0x33, +}; +static const unsigned char kat4166_entropyinpr2[] = { + 0xa5, 0xd2, 0x8e, 0xd2, 0xc9, 0xe4, 0x96, 0x2b, 0xb5, 0xaa, 0x57, 0x69, + 0x45, 0xb8, 0xe8, 0x9d, 0xdb, 0xfa, 0xe4, 0x97, 0x9c, 0x16, 0xe3, 0xe3, + 0x76, 0x5d, 0xa7, 0x13, 0xc2, 0x87, 0xf3, 0xad, 0x69, 0xe1, 0x8c, 0x61, + 0x3d, 0xf2, 0x49, 0xec, 0x75, 0x6b, 0xb3, 0xfd, 0x27, 0x87, 0xae, 0x36, +}; +static const unsigned char kat4166_addinpr2[] = { + 0x31, 0x32, 0xd0, 0x25, 0xf5, 0x24, 0x66, 0xd2, 0x7e, 0x38, 0x60, 0x2e, + 0xe8, 0x3d, 0x11, 0xdb, 0xc4, 0xfb, 0xa5, 0x5b, 0x32, 0x32, 0xaa, 0xf9, + 0x5c, 0xf4, 0x78, 0x90, 0x1c, 0xbb, 0x71, 0x5f, 0x90, 0x03, 0x23, 0x39, + 0x15, 0x48, 0xdc, 0xd9, 0x15, 0xdc, 0x6a, 0xd0, 0xc7, 0x6e, 0xfc, 0x03, +}; +static const unsigned char kat4166_retbits[] = { + 0x2a, 0x0e, 0xd8, 0xc3, 0x79, 0x85, 0x12, 0xf4, 0xd2, 0x8a, 0x00, 0x11, + 0x5e, 0xb5, 0x8c, 0x77, 0xbf, 0x38, 0xe5, 0xaa, 0x8f, 0x68, 0x5b, 0x19, + 0x56, 0x99, 0xa6, 0x66, 0x19, 0xaf, 0xa2, 0x58, 0x26, 0x45, 0xe6, 0xbf, + 0xbb, 0xe2, 0x0e, 0x57, 0xa4, 0xb7, 0x2b, 0xe3, 0x5f, 0x4b, 0xa2, 0x2c, + 0x75, 0xb0, 0x78, 0x1a, 0x10, 0xc6, 0x7f, 0xac, 0xfb, 0x92, 0xd8, 0x44, + 0x59, 0xf2, 0x2f, 0xc4, +}; +static const struct drbg_kat_pr_true kat4166_t = { + 10, kat4166_entropyin, kat4166_nonce, kat4166_persstr, + kat4166_entropyinpr1, kat4166_addinpr1, kat4166_entropyinpr2, + kat4166_addinpr2, kat4166_retbits +}; +static const struct drbg_kat kat4166 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4166_t +}; + +static const unsigned char kat4167_entropyin[] = { + 0x2d, 0x66, 0x78, 0xdb, 0x9e, 0x85, 0x4e, 0xc4, 0x62, 0x79, 0x97, 0x00, + 0x26, 0x54, 0xd5, 0x3e, 0x88, 0x92, 0xe8, 0xdb, 0x44, 0x1b, 0x57, 0x89, + 0x89, 0x8d, 0x7f, 0x42, 0x9a, 0x82, 0x52, 0x49, 0x89, 0xfe, 0xe5, 0x93, + 0x3f, 0x22, 0x43, 0x7b, 0x79, 0x97, 0x5f, 0xc5, 0x40, 0xf8, 0x2f, 0xc4, +}; +static const unsigned char kat4167_nonce[] = {0}; +static const unsigned char kat4167_persstr[] = {0}; +static const unsigned char kat4167_entropyinpr1[] = { + 0xc7, 0x6c, 0xa7, 0x53, 0xdc, 0x96, 0x2e, 0x9d, 0xb4, 0x68, 0x25, 0xf9, + 0xbc, 0xe3, 0x03, 0xcd, 0x92, 0x0e, 0x09, 0xb5, 0x15, 0xd5, 0x56, 0x7d, + 0x71, 0x64, 0x7c, 0x33, 0x9e, 0xfb, 0x6b, 0x6e, 0x95, 0x27, 0x5c, 0x98, + 0x89, 0xcd, 0xf3, 0x5e, 0x05, 0xbb, 0x14, 0x03, 0x68, 0xd4, 0xfd, 0x9b, +}; +static const unsigned char kat4167_addinpr1[] = { + 0xb1, 0x57, 0xf0, 0xae, 0xe3, 0x39, 0x7d, 0x0b, 0x88, 0x4f, 0xa0, 0xb7, + 0x6d, 0x36, 0xb8, 0xe4, 0x30, 0x76, 0x92, 0x1e, 0x1c, 0xf2, 0xd4, 0x88, + 0xb8, 0x4f, 0x0f, 0x4a, 0x9d, 0x41, 0x79, 0x0f, 0xcf, 0x01, 0x08, 0x94, + 0x56, 0xb5, 0x5f, 0x48, 0x82, 0x8c, 0x2c, 0xc3, 0xb1, 0x17, 0x26, 0x73, +}; +static const unsigned char kat4167_entropyinpr2[] = { + 0xc5, 0xe0, 0x4e, 0x7b, 0x53, 0x19, 0xe6, 0xd4, 0x00, 0x40, 0x27, 0xab, + 0xf9, 0xee, 0x0a, 0x57, 0x30, 0x9c, 0xb2, 0x2c, 0xe3, 0xd9, 0xd5, 0x86, + 0xc5, 0xad, 0x85, 0xf2, 0xe7, 0x74, 0xc7, 0x5a, 0x86, 0xca, 0xab, 0xc1, + 0x79, 0x31, 0x8e, 0x6c, 0x92, 0xfc, 0x5d, 0x23, 0xe2, 0x31, 0x3b, 0xc2, +}; +static const unsigned char kat4167_addinpr2[] = { + 0x55, 0xcf, 0xe7, 0x22, 0x3c, 0x6c, 0x66, 0x6d, 0x90, 0x7f, 0x19, 0xab, + 0xca, 0x73, 0xda, 0x1a, 0xfb, 0x51, 0x61, 0x83, 0x28, 0x3a, 0x4f, 0x53, + 0xe0, 0x46, 0x5b, 0xe6, 0x99, 0x24, 0x87, 0x6f, 0x60, 0x2b, 0x99, 0x13, + 0x89, 0xc7, 0xf9, 0xe4, 0xef, 0x26, 0xe0, 0x38, 0xd8, 0x0b, 0x31, 0xde, +}; +static const unsigned char kat4167_retbits[] = { + 0x4d, 0x0b, 0x4f, 0xcb, 0x6b, 0x2f, 0xcf, 0xb2, 0x3a, 0xee, 0xae, 0x6a, + 0xe5, 0x13, 0x5e, 0xe2, 0x35, 0x15, 0x5a, 0x26, 0xfd, 0xd6, 0x7a, 0x84, + 0xe2, 0xa6, 0xca, 0x49, 0xd8, 0xbf, 0x3f, 0xa6, 0x14, 0x52, 0xba, 0x32, + 0xa3, 0x9b, 0xfe, 0x0f, 0x37, 0x9a, 0x5b, 0x92, 0xc5, 0xe4, 0x16, 0xe4, + 0x2c, 0xdf, 0x4c, 0x47, 0xb2, 0x4f, 0xe6, 0xae, 0xd3, 0xb8, 0x17, 0x45, + 0x41, 0x1a, 0x4d, 0xff, +}; +static const struct drbg_kat_pr_true kat4167_t = { + 11, kat4167_entropyin, kat4167_nonce, kat4167_persstr, + kat4167_entropyinpr1, kat4167_addinpr1, kat4167_entropyinpr2, + kat4167_addinpr2, kat4167_retbits +}; +static const struct drbg_kat kat4167 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4167_t +}; + +static const unsigned char kat4168_entropyin[] = { + 0x53, 0x0b, 0x13, 0x6b, 0xfa, 0xb4, 0xa3, 0xf1, 0x63, 0x8a, 0x97, 0x6d, + 0xd4, 0xeb, 0xf9, 0x35, 0xf1, 0xc7, 0x25, 0xae, 0x30, 0xbf, 0xba, 0x5c, + 0x5a, 0xb4, 0x94, 0xf2, 0xf1, 0x0f, 0x52, 0xe5, 0xba, 0xce, 0x98, 0x59, + 0x11, 0xd2, 0xde, 0x4b, 0x12, 0xa4, 0xf6, 0xaf, 0x36, 0xe4, 0x35, 0x49, +}; +static const unsigned char kat4168_nonce[] = {0}; +static const unsigned char kat4168_persstr[] = {0}; +static const unsigned char kat4168_entropyinpr1[] = { + 0x73, 0x1d, 0x64, 0xe8, 0x3c, 0xc9, 0x01, 0x4a, 0xf0, 0x5f, 0x69, 0x1d, + 0x74, 0x7d, 0x3e, 0xcb, 0xce, 0xfb, 0x6a, 0xb9, 0xeb, 0x3a, 0xde, 0x76, + 0x09, 0x73, 0xb0, 0xbf, 0x9a, 0xb7, 0x00, 0xfa, 0x2c, 0x3c, 0x02, 0xcd, + 0x83, 0xae, 0xb9, 0x4b, 0xb7, 0xd0, 0xb2, 0x96, 0xe4, 0x0c, 0x79, 0xb2, +}; +static const unsigned char kat4168_addinpr1[] = { + 0x0f, 0x2d, 0x38, 0x2e, 0x60, 0xb2, 0x37, 0x72, 0x7d, 0x97, 0x11, 0x08, + 0xa0, 0x5b, 0x46, 0x21, 0xfd, 0x84, 0x2e, 0x33, 0x67, 0x44, 0x7d, 0x05, + 0xe9, 0x0d, 0x8f, 0x93, 0x53, 0x47, 0xdf, 0x8f, 0xec, 0xbd, 0xce, 0xda, + 0xc7, 0xb0, 0x00, 0xc5, 0x89, 0xf0, 0xd2, 0x1e, 0x42, 0x99, 0x5b, 0x38, +}; +static const unsigned char kat4168_entropyinpr2[] = { + 0xdd, 0x58, 0x1a, 0x72, 0x11, 0x16, 0x7a, 0xad, 0x0c, 0x3e, 0x57, 0xa5, + 0x46, 0xda, 0x27, 0x4c, 0xa8, 0xd2, 0xf6, 0x6f, 0x22, 0xc8, 0xcd, 0x5d, + 0xd9, 0x37, 0xfa, 0xb4, 0xde, 0xb8, 0xd3, 0xea, 0xdc, 0x10, 0x08, 0x09, + 0x97, 0x84, 0xac, 0x95, 0x55, 0x15, 0x1d, 0xd7, 0x45, 0x45, 0x0d, 0xe1, +}; +static const unsigned char kat4168_addinpr2[] = { + 0x48, 0xff, 0x7f, 0x40, 0xde, 0xa3, 0x09, 0x9d, 0x2d, 0x7f, 0x00, 0x96, + 0x2d, 0xb0, 0xbf, 0x77, 0xf9, 0x7f, 0x8b, 0x3b, 0x1a, 0x0f, 0x63, 0xc3, + 0x62, 0x38, 0x37, 0xe1, 0xd9, 0xd2, 0x45, 0x94, 0x31, 0xad, 0x83, 0x7a, + 0x3d, 0xed, 0x68, 0xfc, 0x61, 0xc2, 0x7c, 0xa8, 0x40, 0x2d, 0x50, 0x80, +}; +static const unsigned char kat4168_retbits[] = { + 0x8c, 0x24, 0x79, 0x41, 0x11, 0x06, 0x70, 0x58, 0x58, 0xe9, 0xcf, 0x7e, + 0x26, 0x2c, 0x4d, 0x1e, 0x11, 0x61, 0x47, 0xfe, 0xd3, 0xce, 0x34, 0xc6, + 0xb7, 0xe2, 0x7a, 0xbb, 0x15, 0xad, 0x47, 0x26, 0xcf, 0x2c, 0x0c, 0x05, + 0xff, 0xef, 0x0a, 0x1d, 0xb9, 0x7c, 0xc8, 0x42, 0x4e, 0x38, 0x59, 0x77, + 0x78, 0xa5, 0xdb, 0x71, 0x4e, 0x42, 0x48, 0x4f, 0xcd, 0x46, 0x71, 0xf6, + 0x6b, 0x25, 0x59, 0xf9, +}; +static const struct drbg_kat_pr_true kat4168_t = { + 12, kat4168_entropyin, kat4168_nonce, kat4168_persstr, + kat4168_entropyinpr1, kat4168_addinpr1, kat4168_entropyinpr2, + kat4168_addinpr2, kat4168_retbits +}; +static const struct drbg_kat kat4168 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4168_t +}; + +static const unsigned char kat4169_entropyin[] = { + 0x23, 0xcb, 0x80, 0xd0, 0xa5, 0x3e, 0xf2, 0x60, 0xbb, 0x9e, 0xa1, 0x56, + 0xbf, 0xa8, 0x1e, 0x36, 0x99, 0x53, 0x21, 0x2c, 0x15, 0xf6, 0xb7, 0xcf, + 0x19, 0xa8, 0x2d, 0x7f, 0xf8, 0x43, 0x7d, 0x82, 0x8a, 0x97, 0xbe, 0x69, + 0xaa, 0x4b, 0x28, 0xb3, 0x07, 0x48, 0x99, 0xbf, 0xf2, 0x66, 0x4d, 0x3f, +}; +static const unsigned char kat4169_nonce[] = {0}; +static const unsigned char kat4169_persstr[] = {0}; +static const unsigned char kat4169_entropyinpr1[] = { + 0xde, 0x17, 0x6f, 0xc2, 0x86, 0x80, 0xed, 0xe7, 0x73, 0x47, 0x45, 0xef, + 0x54, 0x9e, 0xa5, 0x11, 0x79, 0xa7, 0xbe, 0xc1, 0xda, 0x8a, 0xde, 0x1c, + 0x56, 0xae, 0x4c, 0x7a, 0xec, 0xc0, 0x2a, 0x9c, 0x1a, 0x64, 0x8a, 0x3c, + 0x86, 0x2f, 0xfc, 0x61, 0x52, 0xf3, 0x90, 0x55, 0xeb, 0x9b, 0x25, 0xf6, +}; +static const unsigned char kat4169_addinpr1[] = { + 0xbe, 0x5f, 0x07, 0x22, 0xaa, 0x6b, 0xa5, 0x33, 0x2b, 0x7e, 0x27, 0x3b, + 0xe3, 0xb2, 0xfb, 0xf5, 0x57, 0x1e, 0xd7, 0x46, 0xff, 0xff, 0x47, 0xdb, + 0xf7, 0x45, 0xb0, 0x71, 0x9a, 0x8d, 0x77, 0xea, 0x69, 0xaf, 0xdb, 0xbc, + 0xe6, 0x7e, 0xa9, 0xbe, 0xcf, 0x56, 0xdb, 0x6d, 0x38, 0x05, 0x9e, 0x64, +}; +static const unsigned char kat4169_entropyinpr2[] = { + 0x45, 0x77, 0x3c, 0xfb, 0x49, 0x97, 0xc1, 0xd9, 0xe0, 0x3e, 0xa8, 0xf1, + 0x01, 0xd9, 0xc3, 0x97, 0x67, 0x36, 0xbd, 0x1a, 0x42, 0xec, 0xb2, 0x20, + 0x03, 0x76, 0x6b, 0xe8, 0xbe, 0x8f, 0x0b, 0x84, 0xd8, 0x95, 0x19, 0x1e, + 0x43, 0x43, 0xf2, 0xe2, 0xf2, 0x2f, 0xef, 0x59, 0xf2, 0x77, 0xda, 0x93, +}; +static const unsigned char kat4169_addinpr2[] = { + 0x91, 0x49, 0x36, 0x72, 0xeb, 0xe8, 0x13, 0x02, 0x5b, 0x7a, 0xbe, 0xec, + 0x25, 0x83, 0xd4, 0x5f, 0xbe, 0x40, 0x18, 0x0d, 0x1e, 0xf6, 0x29, 0xc0, + 0x87, 0xa3, 0x82, 0x30, 0xa7, 0xa7, 0x9b, 0xa7, 0x02, 0x66, 0x99, 0x12, + 0xc9, 0x53, 0x60, 0xa2, 0xa7, 0x68, 0x09, 0x0c, 0xe3, 0xf2, 0xd5, 0xd3, +}; +static const unsigned char kat4169_retbits[] = { + 0x45, 0x7d, 0x76, 0x0e, 0x04, 0xac, 0xc5, 0x20, 0xb3, 0x40, 0x76, 0x7a, + 0x18, 0x6d, 0xdc, 0x44, 0xad, 0x1c, 0x9b, 0x1c, 0xf1, 0x24, 0xb8, 0x00, + 0xe7, 0xbd, 0xe2, 0xd6, 0xc5, 0x8d, 0x19, 0x23, 0xdb, 0xd1, 0x5a, 0xc9, + 0x0f, 0xd2, 0x91, 0x28, 0x3e, 0x15, 0x36, 0x58, 0xb6, 0x92, 0x55, 0x5e, + 0xf2, 0x51, 0x66, 0x89, 0xe4, 0xd0, 0xd0, 0xb0, 0x12, 0x9a, 0x7d, 0x3b, + 0x69, 0x78, 0x36, 0x97, +}; +static const struct drbg_kat_pr_true kat4169_t = { + 13, kat4169_entropyin, kat4169_nonce, kat4169_persstr, + kat4169_entropyinpr1, kat4169_addinpr1, kat4169_entropyinpr2, + kat4169_addinpr2, kat4169_retbits +}; +static const struct drbg_kat kat4169 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4169_t +}; + +static const unsigned char kat4170_entropyin[] = { + 0xcb, 0xa4, 0x4c, 0x72, 0x2e, 0xac, 0x50, 0x08, 0x11, 0x25, 0x26, 0xba, + 0x02, 0x58, 0x1d, 0x78, 0xcb, 0xf7, 0x3a, 0x61, 0x7e, 0xe0, 0x4b, 0xa0, + 0xcd, 0x71, 0x2a, 0x49, 0xf0, 0xf8, 0x47, 0xc2, 0x33, 0x01, 0xb9, 0x35, + 0x80, 0xe2, 0x74, 0x30, 0x94, 0x73, 0xfd, 0xaf, 0xf0, 0x04, 0x11, 0x5b, +}; +static const unsigned char kat4170_nonce[] = {0}; +static const unsigned char kat4170_persstr[] = {0}; +static const unsigned char kat4170_entropyinpr1[] = { + 0xc5, 0xe2, 0x5e, 0xac, 0x09, 0x8a, 0xa9, 0xa1, 0x56, 0x67, 0xbf, 0x30, + 0xbd, 0x7d, 0x79, 0x4b, 0x28, 0xc4, 0x36, 0x5b, 0x01, 0x93, 0xd4, 0x10, + 0xf7, 0xdb, 0x03, 0x79, 0x1b, 0x81, 0xe9, 0x6a, 0xdb, 0x6b, 0x1c, 0x50, + 0xf3, 0x84, 0x39, 0x04, 0xa6, 0x1c, 0xf9, 0x64, 0xfa, 0x67, 0xc6, 0x2e, +}; +static const unsigned char kat4170_addinpr1[] = { + 0x8e, 0xf8, 0x8e, 0x51, 0xa1, 0x5d, 0x2c, 0x43, 0x5d, 0xd5, 0x33, 0xa9, + 0xf4, 0xb6, 0xe6, 0xc7, 0xd5, 0xdd, 0xc3, 0x63, 0x21, 0x18, 0xdc, 0x39, + 0x33, 0x10, 0x4f, 0x3a, 0x87, 0x1b, 0xad, 0x06, 0x4c, 0xb7, 0x41, 0x51, + 0xe1, 0x2e, 0x88, 0xc0, 0x45, 0x9e, 0x7b, 0x7e, 0x03, 0xb6, 0xbb, 0x5f, +}; +static const unsigned char kat4170_entropyinpr2[] = { + 0x94, 0x90, 0x4f, 0xbd, 0xfa, 0xf6, 0xb1, 0xd8, 0x93, 0x1c, 0x15, 0xa3, + 0x72, 0x77, 0x81, 0x4d, 0xca, 0xcc, 0x63, 0x43, 0xd4, 0x8b, 0x80, 0xa1, + 0xc6, 0x24, 0xf8, 0xaa, 0x37, 0x33, 0xe0, 0x5a, 0x52, 0xbf, 0x1f, 0x12, + 0x66, 0xe2, 0xb9, 0x0d, 0xa5, 0xd5, 0x62, 0xd7, 0xff, 0xcb, 0xc2, 0x74, +}; +static const unsigned char kat4170_addinpr2[] = { + 0xe9, 0x7f, 0x7f, 0xc9, 0xe2, 0x87, 0xae, 0x94, 0x7d, 0x3e, 0x93, 0x7d, + 0x60, 0xec, 0xe6, 0x84, 0xf0, 0xc8, 0xdd, 0x9e, 0x13, 0x3c, 0xbd, 0x72, + 0x65, 0xb2, 0xb3, 0xe0, 0x73, 0x98, 0x35, 0x25, 0xc6, 0x1c, 0x7e, 0x4f, + 0x95, 0x0e, 0xce, 0x2a, 0x19, 0x6d, 0xc8, 0xa5, 0x8d, 0x8c, 0x24, 0x2c, +}; +static const unsigned char kat4170_retbits[] = { + 0xef, 0x2f, 0xcb, 0x4a, 0x91, 0x13, 0xe0, 0x62, 0xd6, 0xcd, 0x37, 0xf5, + 0x1a, 0x99, 0x44, 0x64, 0x5c, 0x3c, 0xce, 0x0b, 0x06, 0xe2, 0xd1, 0x1a, + 0x2c, 0x77, 0x8b, 0xdb, 0x55, 0x9a, 0x2f, 0x62, 0x7c, 0x8a, 0x0e, 0x7f, + 0x41, 0x96, 0x60, 0xf4, 0x61, 0x45, 0x60, 0x64, 0xc3, 0x50, 0x8d, 0xf1, + 0xdb, 0x94, 0x5a, 0xf6, 0x08, 0x5a, 0xba, 0xf7, 0x71, 0x9e, 0x86, 0x8a, + 0x91, 0x2d, 0xf8, 0xdd, +}; +static const struct drbg_kat_pr_true kat4170_t = { + 14, kat4170_entropyin, kat4170_nonce, kat4170_persstr, + kat4170_entropyinpr1, kat4170_addinpr1, kat4170_entropyinpr2, + kat4170_addinpr2, kat4170_retbits +}; +static const struct drbg_kat kat4170 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4170_t +}; + +static const unsigned char kat4171_entropyin[] = { + 0x45, 0xbc, 0x62, 0x2b, 0xd4, 0xfd, 0x4c, 0x47, 0x19, 0x17, 0x54, 0x44, + 0x9e, 0x24, 0x8b, 0xe7, 0x27, 0x9f, 0xa1, 0x10, 0x15, 0xdf, 0x53, 0x78, + 0xec, 0x46, 0xa1, 0x57, 0xda, 0xbc, 0x36, 0xd1, 0xeb, 0x08, 0xd2, 0xa7, + 0x5c, 0x6b, 0xd0, 0x7e, 0xbf, 0x96, 0x9b, 0x8d, 0xa9, 0xed, 0xcd, 0xfd, +}; +static const unsigned char kat4171_nonce[] = {0}; +static const unsigned char kat4171_persstr[] = { + 0x7b, 0x55, 0x91, 0x0f, 0x78, 0xa4, 0xde, 0x1b, 0xb0, 0xb0, 0xe8, 0xf9, + 0x7d, 0x26, 0xb6, 0xf3, 0xcf, 0x72, 0x98, 0x1b, 0x68, 0xed, 0x4a, 0xe7, + 0xf5, 0xa6, 0xd4, 0x6a, 0xc6, 0x68, 0xfe, 0x35, 0x43, 0x83, 0x7b, 0xa6, + 0xc2, 0x12, 0xf0, 0x81, 0xe5, 0xd4, 0xd5, 0x6e, 0x35, 0xde, 0x19, 0x4e, +}; +static const unsigned char kat4171_entropyinpr1[] = { + 0xc9, 0xd1, 0xfc, 0xa6, 0x06, 0x4b, 0xac, 0x3c, 0x47, 0xd4, 0xdd, 0x34, + 0x70, 0x09, 0x2e, 0x5d, 0xe5, 0x87, 0x3f, 0x14, 0x90, 0x65, 0x6d, 0x79, + 0xda, 0x0d, 0xb9, 0x82, 0x7d, 0x81, 0xa2, 0x2e, 0x2f, 0xf6, 0x3e, 0x19, + 0xe1, 0xee, 0x20, 0x13, 0x66, 0xc4, 0x1c, 0xbf, 0x7a, 0x6b, 0xb8, 0xd8, +}; +static const unsigned char kat4171_addinpr1[] = {0}; +static const unsigned char kat4171_entropyinpr2[] = { + 0x2b, 0x85, 0x64, 0x9b, 0x72, 0x17, 0xe3, 0x02, 0x7a, 0x0c, 0x2d, 0x20, + 0x97, 0xe4, 0x61, 0xd6, 0xc3, 0x9e, 0x46, 0xb9, 0x85, 0x87, 0xf5, 0xc0, + 0xad, 0x72, 0x25, 0x1e, 0x2b, 0x5f, 0xd4, 0x18, 0x5a, 0x10, 0x0e, 0xb7, + 0x8f, 0x93, 0x13, 0x65, 0xfb, 0xe2, 0xd9, 0xdf, 0xd0, 0x0c, 0x71, 0x07, +}; +static const unsigned char kat4171_addinpr2[] = {0}; +static const unsigned char kat4171_retbits[] = { + 0x3c, 0xc5, 0x8f, 0x52, 0x65, 0x0d, 0x64, 0xaf, 0x06, 0xe9, 0x61, 0xdb, + 0x69, 0x79, 0xfc, 0x1e, 0xc7, 0xa8, 0xb3, 0x33, 0x2e, 0x15, 0x48, 0x7f, + 0x83, 0x13, 0x27, 0xe2, 0x0d, 0xe7, 0xcb, 0x83, 0xc0, 0x77, 0xf4, 0x85, + 0xa0, 0x2f, 0xc6, 0x7b, 0x8d, 0xe0, 0xc9, 0xb1, 0x4c, 0x6c, 0xfd, 0xb4, + 0x75, 0xf6, 0xd4, 0x67, 0x2f, 0xee, 0xe5, 0x85, 0x5e, 0x55, 0x65, 0xd5, + 0x71, 0xf1, 0x3f, 0x99, +}; +static const struct drbg_kat_pr_true kat4171_t = { + 0, kat4171_entropyin, kat4171_nonce, kat4171_persstr, + kat4171_entropyinpr1, kat4171_addinpr1, kat4171_entropyinpr2, + kat4171_addinpr2, kat4171_retbits +}; +static const struct drbg_kat kat4171 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4171_t +}; + +static const unsigned char kat4172_entropyin[] = { + 0x8d, 0x08, 0xd6, 0x98, 0x10, 0x24, 0xc7, 0x11, 0xe0, 0x89, 0x0f, 0x18, + 0xb2, 0xd9, 0xfe, 0xe9, 0x19, 0x7f, 0x36, 0x7e, 0x48, 0x9b, 0x1b, 0x0e, + 0x67, 0xaf, 0x8c, 0x24, 0x9c, 0x48, 0x97, 0x75, 0x59, 0x53, 0xc8, 0xc2, + 0x20, 0xed, 0xde, 0xd0, 0x7e, 0x4d, 0xe5, 0xb9, 0x9b, 0x39, 0x0f, 0xd3, +}; +static const unsigned char kat4172_nonce[] = {0}; +static const unsigned char kat4172_persstr[] = { + 0xe6, 0x1b, 0xb8, 0x28, 0xcd, 0x11, 0xe7, 0x11, 0x0b, 0x81, 0x57, 0xfe, + 0xe4, 0xe4, 0x44, 0x34, 0xb8, 0x41, 0xd0, 0xcc, 0x8f, 0xb3, 0xff, 0x00, + 0x34, 0x67, 0x1c, 0x49, 0x11, 0xa9, 0x70, 0x63, 0xa4, 0x8e, 0xea, 0xbd, + 0x8c, 0x59, 0xc3, 0xa7, 0xf0, 0x7e, 0x00, 0xa8, 0x69, 0xc8, 0x73, 0xe5, +}; +static const unsigned char kat4172_entropyinpr1[] = { + 0xd3, 0xa4, 0xa1, 0xc7, 0xce, 0xcf, 0x24, 0xfc, 0x06, 0x9b, 0x6e, 0x05, + 0x62, 0xc9, 0x9c, 0x09, 0xf7, 0xe2, 0x83, 0xa2, 0xe2, 0xa7, 0xe3, 0x9a, + 0x0b, 0x5a, 0x3a, 0x91, 0xb0, 0x12, 0x5a, 0xfd, 0x69, 0xc0, 0x78, 0x4a, + 0xa1, 0x13, 0xdd, 0x69, 0x98, 0xa7, 0xa7, 0x20, 0xb9, 0x73, 0x78, 0x42, +}; +static const unsigned char kat4172_addinpr1[] = {0}; +static const unsigned char kat4172_entropyinpr2[] = { + 0x4a, 0x12, 0x50, 0x48, 0xbe, 0xd1, 0x73, 0x79, 0xbb, 0x78, 0x38, 0xee, + 0xd0, 0x2f, 0xbf, 0x90, 0xcc, 0xb6, 0x03, 0xc1, 0x39, 0xd5, 0x6d, 0x2b, + 0x18, 0x46, 0xe9, 0xd1, 0x94, 0x00, 0x29, 0x53, 0xb6, 0xa9, 0x07, 0x99, + 0xbe, 0x02, 0xe2, 0x8a, 0x17, 0x78, 0xa9, 0xf2, 0xb6, 0xcb, 0x61, 0xfb, +}; +static const unsigned char kat4172_addinpr2[] = {0}; +static const unsigned char kat4172_retbits[] = { + 0x2e, 0x60, 0x22, 0xf7, 0x75, 0xb5, 0x2e, 0x35, 0x25, 0x78, 0x10, 0x79, + 0x67, 0x1c, 0x65, 0xf4, 0x7c, 0x69, 0xce, 0xf1, 0xcd, 0xf7, 0xa9, 0x31, + 0x12, 0xc0, 0x21, 0x72, 0xac, 0x3e, 0xd5, 0xfb, 0xb6, 0x10, 0x8a, 0x15, + 0x1d, 0xde, 0xdf, 0x2e, 0x5d, 0x27, 0xe9, 0x1f, 0x9d, 0x2f, 0x23, 0xd2, + 0xce, 0xb0, 0xff, 0x16, 0x60, 0x2e, 0x1a, 0x9a, 0x5a, 0x5c, 0x58, 0x4a, + 0x65, 0xa6, 0x9d, 0x2b, +}; +static const struct drbg_kat_pr_true kat4172_t = { + 1, kat4172_entropyin, kat4172_nonce, kat4172_persstr, + kat4172_entropyinpr1, kat4172_addinpr1, kat4172_entropyinpr2, + kat4172_addinpr2, kat4172_retbits +}; +static const struct drbg_kat kat4172 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4172_t +}; + +static const unsigned char kat4173_entropyin[] = { + 0x92, 0x57, 0x16, 0x31, 0xcd, 0xb5, 0xbb, 0xf6, 0x91, 0x00, 0xcf, 0x79, + 0xa5, 0xf2, 0xd0, 0xf4, 0xe9, 0x5b, 0x50, 0x80, 0x5a, 0x63, 0xd2, 0x41, + 0x3d, 0x68, 0xdb, 0x7b, 0xbd, 0xb6, 0x91, 0xd8, 0xa4, 0xfb, 0x66, 0x08, + 0x7e, 0x9e, 0xa8, 0x16, 0x0f, 0x02, 0x82, 0x79, 0x94, 0x7a, 0x6f, 0xb0, +}; +static const unsigned char kat4173_nonce[] = {0}; +static const unsigned char kat4173_persstr[] = { + 0x1e, 0x6d, 0x2e, 0x30, 0xc6, 0xe8, 0x36, 0xbc, 0x55, 0xfb, 0x6e, 0x7e, + 0xb3, 0x62, 0x35, 0x36, 0x76, 0x6d, 0x94, 0x64, 0x40, 0x15, 0xc6, 0xa9, + 0xc1, 0x61, 0x9d, 0x6e, 0x3c, 0x13, 0x2a, 0x7d, 0x2b, 0x84, 0xf7, 0x52, + 0x24, 0x05, 0xe5, 0xff, 0x0b, 0x7a, 0x76, 0xed, 0x36, 0x24, 0x7d, 0x97, +}; +static const unsigned char kat4173_entropyinpr1[] = { + 0x8c, 0xa8, 0xdc, 0x94, 0xc2, 0x64, 0xb6, 0xed, 0xa8, 0x87, 0x2d, 0x63, + 0x4c, 0xbe, 0x46, 0x6e, 0x1e, 0x95, 0x50, 0x92, 0x4e, 0xaf, 0x01, 0x41, + 0x15, 0x4a, 0x9a, 0x87, 0x11, 0x75, 0x65, 0x95, 0x36, 0xcb, 0xc4, 0x15, + 0x30, 0x48, 0xd6, 0x55, 0xbe, 0xf6, 0x08, 0x7e, 0x82, 0x7a, 0x99, 0x83, +}; +static const unsigned char kat4173_addinpr1[] = {0}; +static const unsigned char kat4173_entropyinpr2[] = { + 0xc3, 0x60, 0xe4, 0x20, 0x17, 0x17, 0xaa, 0x81, 0xf6, 0xbc, 0x52, 0x41, + 0xec, 0x07, 0xdd, 0x4b, 0xa2, 0x64, 0x8d, 0x4e, 0x8b, 0x26, 0x70, 0x4e, + 0x94, 0xd7, 0x95, 0xdb, 0x64, 0x12, 0x6c, 0x08, 0x32, 0x54, 0xff, 0xf5, + 0x7d, 0xc6, 0xba, 0x13, 0x63, 0x6c, 0xa4, 0xf0, 0x13, 0x34, 0x9a, 0x0c, +}; +static const unsigned char kat4173_addinpr2[] = {0}; +static const unsigned char kat4173_retbits[] = { + 0x41, 0x3f, 0x1b, 0xea, 0x6d, 0xa6, 0x40, 0x15, 0x28, 0x59, 0x12, 0x45, + 0x89, 0x38, 0x96, 0xca, 0xa6, 0x12, 0xc3, 0x0f, 0x38, 0x85, 0x49, 0x7d, + 0x9a, 0x54, 0xe2, 0xc1, 0xd8, 0x0b, 0x7b, 0xfc, 0xf3, 0x51, 0xb0, 0x06, + 0x04, 0x32, 0x9f, 0x72, 0x48, 0xc1, 0xf5, 0x35, 0x05, 0x23, 0x5b, 0x03, + 0x92, 0x8b, 0xaa, 0xce, 0x2e, 0xc9, 0x6e, 0xa9, 0x1d, 0x6b, 0x85, 0xb5, + 0x3a, 0x1d, 0xb4, 0x1c, +}; +static const struct drbg_kat_pr_true kat4173_t = { + 2, kat4173_entropyin, kat4173_nonce, kat4173_persstr, + kat4173_entropyinpr1, kat4173_addinpr1, kat4173_entropyinpr2, + kat4173_addinpr2, kat4173_retbits +}; +static const struct drbg_kat kat4173 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4173_t +}; + +static const unsigned char kat4174_entropyin[] = { + 0x0f, 0x84, 0xbb, 0xb0, 0xab, 0x2d, 0x2c, 0x4b, 0xc6, 0x3b, 0x76, 0x53, + 0x36, 0xc9, 0x50, 0xe2, 0x86, 0x68, 0x39, 0x74, 0x57, 0xda, 0x2a, 0x50, + 0x90, 0x74, 0x63, 0xc8, 0xb0, 0x03, 0x70, 0x61, 0x65, 0x21, 0xba, 0xf9, + 0xf7, 0x06, 0xf8, 0xdc, 0x2b, 0x2c, 0x68, 0xc9, 0x80, 0x75, 0x65, 0x09, +}; +static const unsigned char kat4174_nonce[] = {0}; +static const unsigned char kat4174_persstr[] = { + 0xd6, 0x0a, 0x73, 0x30, 0x95, 0x99, 0x5d, 0x9b, 0x29, 0xc8, 0x14, 0x38, + 0x6e, 0x0e, 0x20, 0x6d, 0x4e, 0xce, 0xc1, 0x65, 0xde, 0x3a, 0xe6, 0x6a, + 0xe2, 0x50, 0xb5, 0xb6, 0x40, 0x9e, 0x5c, 0xae, 0x42, 0x28, 0xfc, 0xd9, + 0xbe, 0x0e, 0x68, 0x03, 0xec, 0x95, 0xfc, 0x6c, 0x43, 0x8d, 0xba, 0xe3, +}; +static const unsigned char kat4174_entropyinpr1[] = { + 0x55, 0x2f, 0x7f, 0xa0, 0x33, 0x86, 0x5e, 0x49, 0x57, 0x18, 0xe6, 0xb1, + 0x8d, 0x92, 0xb8, 0x71, 0x97, 0xc3, 0x6a, 0x8c, 0x69, 0x9d, 0x73, 0x3a, + 0xe1, 0xab, 0x3b, 0xa9, 0xca, 0xe3, 0x29, 0x8d, 0xa3, 0xd9, 0xbf, 0x9b, + 0x08, 0xe4, 0xa2, 0xfd, 0x92, 0x54, 0x81, 0xd1, 0x2b, 0xdc, 0x15, 0x7e, +}; +static const unsigned char kat4174_addinpr1[] = {0}; +static const unsigned char kat4174_entropyinpr2[] = { + 0xc8, 0xe8, 0x5a, 0xfe, 0x35, 0x84, 0xf5, 0x74, 0x1f, 0x92, 0x38, 0xab, + 0xac, 0xf5, 0x70, 0x5d, 0x5b, 0xaf, 0xcd, 0x52, 0x4e, 0x06, 0xca, 0x40, + 0x63, 0x9b, 0x81, 0x8b, 0x44, 0xbc, 0x5c, 0xce, 0x29, 0xf3, 0xf3, 0x4c, + 0x6a, 0x33, 0x4f, 0x71, 0x08, 0xd8, 0x20, 0x6a, 0x6c, 0xb6, 0xaa, 0xbe, +}; +static const unsigned char kat4174_addinpr2[] = {0}; +static const unsigned char kat4174_retbits[] = { + 0x1d, 0x60, 0xb5, 0xda, 0xd2, 0xdd, 0x88, 0xe8, 0x54, 0x73, 0x5c, 0x2b, + 0xbb, 0xd8, 0x59, 0x11, 0xd3, 0xdb, 0xc5, 0xf7, 0x30, 0xb4, 0x3b, 0xe3, + 0x98, 0x8b, 0x06, 0xb6, 0x9e, 0xd9, 0xf0, 0x34, 0xcf, 0x80, 0x41, 0xac, + 0xf7, 0xe4, 0x71, 0x2b, 0x01, 0x99, 0x13, 0x83, 0xb1, 0xae, 0x8e, 0x7f, + 0x86, 0xe4, 0xa0, 0xe0, 0xf0, 0x4f, 0x43, 0x31, 0xb5, 0x6a, 0x05, 0x2b, + 0x80, 0x22, 0x69, 0x63, +}; +static const struct drbg_kat_pr_true kat4174_t = { + 3, kat4174_entropyin, kat4174_nonce, kat4174_persstr, + kat4174_entropyinpr1, kat4174_addinpr1, kat4174_entropyinpr2, + kat4174_addinpr2, kat4174_retbits +}; +static const struct drbg_kat kat4174 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4174_t +}; + +static const unsigned char kat4175_entropyin[] = { + 0x7d, 0xe6, 0xed, 0x34, 0xeb, 0x9f, 0x99, 0x17, 0x0b, 0x83, 0xe7, 0xc2, + 0xc9, 0xd0, 0xfe, 0xdc, 0xc7, 0x40, 0x0f, 0xc3, 0x78, 0x5b, 0x3d, 0x95, + 0xe9, 0xa3, 0xb6, 0x6f, 0x23, 0xa5, 0xd9, 0x04, 0xef, 0x7b, 0xb6, 0xbf, + 0x55, 0x79, 0x49, 0xe4, 0x14, 0xa7, 0x4d, 0x08, 0x64, 0x1d, 0x0a, 0xe5, +}; +static const unsigned char kat4175_nonce[] = {0}; +static const unsigned char kat4175_persstr[] = { + 0xb4, 0xe6, 0xff, 0x0f, 0x80, 0xf1, 0x94, 0xda, 0x05, 0xdd, 0xcd, 0x11, + 0x63, 0x27, 0x34, 0x08, 0xfa, 0x79, 0x67, 0xfb, 0xa6, 0xcc, 0x61, 0xd5, + 0xc6, 0xc4, 0x74, 0x80, 0x7b, 0x9c, 0xfd, 0x6d, 0x9c, 0xef, 0x43, 0x54, + 0x65, 0x62, 0xeb, 0x29, 0x42, 0xab, 0x95, 0xa2, 0xf6, 0x80, 0xc3, 0x21, +}; +static const unsigned char kat4175_entropyinpr1[] = { + 0xdf, 0x46, 0xcc, 0x6a, 0xbc, 0xc8, 0x7b, 0xdf, 0x1f, 0x9d, 0x7c, 0x5d, + 0xb7, 0x9d, 0x83, 0x6d, 0xb1, 0xe1, 0x81, 0x9a, 0x7d, 0x38, 0xe2, 0xae, + 0xf0, 0x29, 0xfc, 0x43, 0x29, 0x27, 0xca, 0x12, 0x55, 0x7c, 0x56, 0x60, + 0x0c, 0x5d, 0x36, 0x62, 0x7d, 0x74, 0xdf, 0x7a, 0xce, 0x71, 0x7a, 0x7c, +}; +static const unsigned char kat4175_addinpr1[] = {0}; +static const unsigned char kat4175_entropyinpr2[] = { + 0xbe, 0x56, 0xa8, 0x05, 0x09, 0xcf, 0xda, 0x36, 0xac, 0x0f, 0x8f, 0x77, + 0xff, 0xfc, 0x0a, 0x64, 0xac, 0x4f, 0x6b, 0x03, 0xda, 0xf0, 0x07, 0x35, + 0xbf, 0x6c, 0x32, 0x56, 0xdd, 0x2b, 0xea, 0xb1, 0x84, 0x4f, 0xf4, 0x61, + 0x79, 0x3d, 0xe4, 0x9c, 0x01, 0xf1, 0x4b, 0x1e, 0xa1, 0x79, 0xd5, 0xaf, +}; +static const unsigned char kat4175_addinpr2[] = {0}; +static const unsigned char kat4175_retbits[] = { + 0x74, 0xac, 0x73, 0x87, 0xea, 0x35, 0x20, 0xcf, 0xae, 0xad, 0x45, 0x5c, + 0x43, 0x12, 0xc9, 0xfa, 0x7d, 0x4d, 0xc0, 0xf5, 0x03, 0x73, 0x92, 0x70, + 0x04, 0xbf, 0xd2, 0xc8, 0x4a, 0x92, 0xb4, 0x73, 0x00, 0x95, 0x20, 0xc3, + 0x58, 0xf6, 0xd1, 0xd6, 0xce, 0xcd, 0xf9, 0x2d, 0x01, 0xa8, 0xa5, 0xa4, + 0xea, 0xd2, 0xfb, 0xd4, 0x2d, 0x8f, 0xcf, 0xcb, 0x7f, 0xfd, 0xd5, 0x69, + 0x57, 0x03, 0x3c, 0xc7, +}; +static const struct drbg_kat_pr_true kat4175_t = { + 4, kat4175_entropyin, kat4175_nonce, kat4175_persstr, + kat4175_entropyinpr1, kat4175_addinpr1, kat4175_entropyinpr2, + kat4175_addinpr2, kat4175_retbits +}; +static const struct drbg_kat kat4175 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4175_t +}; + +static const unsigned char kat4176_entropyin[] = { + 0x47, 0xde, 0x65, 0x9a, 0xdb, 0x96, 0x2c, 0xd1, 0x60, 0xa5, 0xf8, 0xcf, + 0xb4, 0x55, 0x12, 0xb3, 0xc1, 0xc8, 0xcf, 0x08, 0x8b, 0xd5, 0xca, 0x42, + 0xe4, 0x36, 0x9a, 0x34, 0x6c, 0x57, 0x82, 0x94, 0x47, 0xb1, 0xe2, 0xf0, + 0x86, 0x36, 0xa5, 0x18, 0xb2, 0xeb, 0xf0, 0xd5, 0xff, 0xcd, 0x57, 0x79, +}; +static const unsigned char kat4176_nonce[] = {0}; +static const unsigned char kat4176_persstr[] = { + 0xbb, 0xe5, 0xa0, 0xac, 0x95, 0xe1, 0x2f, 0x4c, 0xc5, 0x17, 0x83, 0x95, + 0x3e, 0x41, 0x48, 0x7f, 0xcf, 0xf7, 0x8e, 0x45, 0x07, 0xbf, 0x8c, 0x4f, + 0xe7, 0x71, 0x59, 0x06, 0xf8, 0xce, 0xab, 0xce, 0xe2, 0x84, 0x74, 0x76, + 0x95, 0xf4, 0x84, 0xdc, 0x70, 0xac, 0x30, 0x4a, 0x82, 0x2f, 0xbd, 0x15, +}; +static const unsigned char kat4176_entropyinpr1[] = { + 0xc2, 0x09, 0xe6, 0xf9, 0x11, 0x8f, 0x3a, 0x83, 0x9c, 0xab, 0x0d, 0x8f, + 0xb6, 0x2a, 0x73, 0xfe, 0x9d, 0x5f, 0x94, 0xde, 0x68, 0x5a, 0x81, 0x9c, + 0x23, 0x51, 0x2a, 0x1e, 0xce, 0x92, 0xab, 0xdd, 0x2e, 0x0c, 0x5c, 0x5b, + 0x83, 0x65, 0xee, 0xc5, 0x43, 0x72, 0x13, 0x3e, 0x2f, 0x75, 0xef, 0x9d, +}; +static const unsigned char kat4176_addinpr1[] = {0}; +static const unsigned char kat4176_entropyinpr2[] = { + 0xed, 0xb4, 0x22, 0x5b, 0x9c, 0xfe, 0x1f, 0x37, 0x8b, 0xd4, 0x3b, 0xec, + 0x79, 0xd5, 0x09, 0xee, 0x35, 0xeb, 0xfb, 0xf5, 0xdd, 0xbd, 0x15, 0x54, + 0xe7, 0x61, 0xae, 0xdb, 0x38, 0x99, 0xde, 0x12, 0x34, 0xcd, 0x9a, 0xa4, + 0x7f, 0xfa, 0xf9, 0x5e, 0x13, 0x2c, 0x45, 0xe6, 0x12, 0x6a, 0xa6, 0x62, +}; +static const unsigned char kat4176_addinpr2[] = {0}; +static const unsigned char kat4176_retbits[] = { + 0x76, 0x43, 0x51, 0x04, 0xac, 0x69, 0x8d, 0x1c, 0x3e, 0x39, 0x97, 0xc7, + 0x2a, 0x43, 0xa0, 0x67, 0x41, 0x01, 0x8c, 0xd4, 0x7a, 0x0d, 0x6a, 0x8f, + 0xaa, 0x6b, 0x10, 0x7d, 0x0c, 0x3a, 0x53, 0x7d, 0x49, 0x10, 0x9d, 0x1b, + 0x3e, 0x37, 0x5d, 0x10, 0x44, 0x8f, 0x2b, 0xa0, 0x53, 0xbd, 0xcf, 0xc9, + 0x7b, 0x97, 0x2a, 0x99, 0x58, 0xd0, 0x64, 0x0f, 0x55, 0x7d, 0xf0, 0xf6, + 0xb8, 0x2d, 0x12, 0xa2, +}; +static const struct drbg_kat_pr_true kat4176_t = { + 5, kat4176_entropyin, kat4176_nonce, kat4176_persstr, + kat4176_entropyinpr1, kat4176_addinpr1, kat4176_entropyinpr2, + kat4176_addinpr2, kat4176_retbits +}; +static const struct drbg_kat kat4176 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4176_t +}; + +static const unsigned char kat4177_entropyin[] = { + 0xc0, 0xa6, 0xc2, 0x3d, 0xcf, 0xa1, 0xda, 0xbe, 0x7e, 0x73, 0x8f, 0x1d, + 0x38, 0x14, 0x38, 0x83, 0x59, 0x69, 0x91, 0x7f, 0xe5, 0x0d, 0xdd, 0xd3, + 0xff, 0x95, 0x58, 0x8e, 0x57, 0x1d, 0x39, 0xe7, 0x20, 0xce, 0x89, 0xb4, + 0xfd, 0x6a, 0x1f, 0xe1, 0x33, 0x7e, 0x5f, 0xda, 0x56, 0xf4, 0x42, 0xf9, +}; +static const unsigned char kat4177_nonce[] = {0}; +static const unsigned char kat4177_persstr[] = { + 0xba, 0xca, 0xa2, 0x50, 0x4e, 0x26, 0xd5, 0xeb, 0xaf, 0x6d, 0x90, 0x89, + 0xb6, 0xba, 0xac, 0x77, 0xa4, 0x44, 0xd2, 0x11, 0x7d, 0x9d, 0x49, 0xdf, + 0x8f, 0x7f, 0x3b, 0x2e, 0x0d, 0x56, 0x7f, 0xba, 0x07, 0x63, 0x5e, 0x67, + 0x0c, 0x27, 0x05, 0x37, 0x8c, 0xce, 0x33, 0x0b, 0xba, 0x40, 0x60, 0xdf, +}; +static const unsigned char kat4177_entropyinpr1[] = { + 0xcd, 0x1e, 0x9b, 0xba, 0xa3, 0x1a, 0xb9, 0x61, 0x7a, 0x1b, 0xcf, 0xe6, + 0xae, 0x4e, 0x3a, 0xad, 0xd6, 0x06, 0x61, 0xf6, 0x88, 0x2b, 0xe7, 0x2e, + 0x4b, 0xba, 0x4d, 0x62, 0x0c, 0x2b, 0x37, 0x2c, 0xc1, 0x75, 0x85, 0x7f, + 0x1b, 0xfb, 0xd6, 0x8e, 0x6a, 0x17, 0xa0, 0x3e, 0xd6, 0xa9, 0x34, 0x7a, +}; +static const unsigned char kat4177_addinpr1[] = {0}; +static const unsigned char kat4177_entropyinpr2[] = { + 0x95, 0x9e, 0x9b, 0xef, 0xd3, 0x76, 0x56, 0xbe, 0xeb, 0xfe, 0xf2, 0x05, + 0x9b, 0x8c, 0xe5, 0x95, 0x61, 0xed, 0x32, 0xb7, 0x1f, 0x45, 0xdf, 0x37, + 0x8a, 0xda, 0x24, 0xb0, 0x0f, 0xeb, 0x30, 0x5f, 0xb6, 0x24, 0x23, 0xc3, + 0xc8, 0x69, 0xc7, 0x64, 0xa8, 0x60, 0x37, 0x75, 0xba, 0xce, 0x61, 0xc2, +}; +static const unsigned char kat4177_addinpr2[] = {0}; +static const unsigned char kat4177_retbits[] = { + 0x45, 0xb0, 0x98, 0xda, 0x0a, 0xb2, 0x46, 0xb6, 0xe3, 0x80, 0x91, 0x66, + 0xda, 0x3c, 0x97, 0x03, 0x0b, 0x16, 0x44, 0x76, 0x96, 0x02, 0xe5, 0xb4, + 0x81, 0x19, 0xf8, 0xbf, 0x05, 0x2c, 0xd1, 0x54, 0x78, 0x6f, 0xd0, 0x27, + 0xb2, 0x7a, 0x56, 0xef, 0xf6, 0x54, 0xab, 0x82, 0x6e, 0x33, 0xf7, 0x68, + 0x24, 0x69, 0x86, 0xfb, 0x6a, 0xa2, 0xf1, 0x47, 0xd4, 0x9c, 0xb4, 0x1d, + 0xfc, 0x34, 0xb7, 0xb5, +}; +static const struct drbg_kat_pr_true kat4177_t = { + 6, kat4177_entropyin, kat4177_nonce, kat4177_persstr, + kat4177_entropyinpr1, kat4177_addinpr1, kat4177_entropyinpr2, + kat4177_addinpr2, kat4177_retbits +}; +static const struct drbg_kat kat4177 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4177_t +}; + +static const unsigned char kat4178_entropyin[] = { + 0x83, 0x8f, 0x6f, 0x39, 0x6e, 0x44, 0xff, 0x06, 0x60, 0x97, 0xb7, 0xb3, + 0x8a, 0x1d, 0xf6, 0x7e, 0x0f, 0x36, 0x76, 0x6c, 0xdd, 0x5d, 0x5b, 0x7c, + 0x96, 0xb1, 0x08, 0xde, 0xfb, 0xa1, 0x89, 0x06, 0xde, 0x5e, 0x15, 0xc5, + 0xda, 0xf7, 0xb3, 0xbf, 0xdc, 0x9c, 0x5e, 0xff, 0xd7, 0x64, 0x2f, 0xeb, +}; +static const unsigned char kat4178_nonce[] = {0}; +static const unsigned char kat4178_persstr[] = { + 0xae, 0x69, 0x0a, 0x5f, 0x00, 0xd3, 0x70, 0x7c, 0xd1, 0x77, 0x80, 0x5d, + 0xec, 0xfe, 0x8a, 0x07, 0x2b, 0xf5, 0x64, 0xd2, 0xd7, 0x5b, 0xdc, 0x38, + 0xec, 0x96, 0x4d, 0x58, 0x87, 0x83, 0x99, 0x7c, 0x69, 0x3f, 0x6e, 0x3b, + 0xca, 0x1c, 0x60, 0x1b, 0x97, 0x4c, 0xa5, 0x7e, 0x09, 0x31, 0x22, 0x31, +}; +static const unsigned char kat4178_entropyinpr1[] = { + 0x27, 0x03, 0xe7, 0x81, 0xf9, 0x88, 0x1f, 0x7d, 0xbd, 0xa1, 0x98, 0xa3, + 0xea, 0x64, 0x6f, 0xe8, 0xc8, 0xe8, 0xd1, 0xd2, 0xa3, 0x15, 0x5e, 0xe0, + 0x05, 0xc5, 0x4e, 0xcf, 0xc7, 0xe5, 0xf1, 0x85, 0x3e, 0x23, 0xa1, 0x5b, + 0xae, 0x25, 0x5a, 0x5a, 0xbb, 0xc8, 0x6c, 0xcb, 0xe6, 0x38, 0x9a, 0x8b, +}; +static const unsigned char kat4178_addinpr1[] = {0}; +static const unsigned char kat4178_entropyinpr2[] = { + 0x65, 0xd9, 0x88, 0x23, 0x2a, 0xa8, 0xf7, 0xea, 0x61, 0x17, 0x96, 0xc9, + 0x65, 0xb1, 0xca, 0x40, 0x50, 0x5b, 0x56, 0xfd, 0x4f, 0x69, 0xc7, 0x83, + 0xcf, 0xb8, 0x38, 0x3d, 0xc4, 0x39, 0x59, 0xbd, 0x94, 0x14, 0x0e, 0x29, + 0xe9, 0xf6, 0x18, 0x4f, 0x06, 0x0d, 0xdd, 0x57, 0xff, 0x27, 0x2d, 0x36, +}; +static const unsigned char kat4178_addinpr2[] = {0}; +static const unsigned char kat4178_retbits[] = { + 0xd9, 0x8f, 0xba, 0x08, 0x11, 0xdc, 0x0f, 0x1b, 0xc9, 0x2c, 0x7a, 0xae, + 0x33, 0xfd, 0x71, 0x9b, 0xa8, 0x3f, 0x26, 0x3c, 0xb8, 0x06, 0xa0, 0x52, + 0xc1, 0xd9, 0x89, 0x84, 0xdf, 0xb7, 0x1b, 0x59, 0xd7, 0x42, 0xa0, 0xfc, + 0x8a, 0x92, 0xfa, 0x06, 0x3a, 0x4e, 0x29, 0x3d, 0xc9, 0x98, 0xee, 0x75, + 0x67, 0x80, 0x06, 0x7a, 0x51, 0x99, 0xa8, 0xaf, 0x1d, 0x4b, 0x24, 0x61, + 0xaa, 0x2a, 0xcc, 0x6c, +}; +static const struct drbg_kat_pr_true kat4178_t = { + 7, kat4178_entropyin, kat4178_nonce, kat4178_persstr, + kat4178_entropyinpr1, kat4178_addinpr1, kat4178_entropyinpr2, + kat4178_addinpr2, kat4178_retbits +}; +static const struct drbg_kat kat4178 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4178_t +}; + +static const unsigned char kat4179_entropyin[] = { + 0xd9, 0x24, 0x4b, 0xff, 0x15, 0x02, 0xd5, 0x9d, 0x62, 0x67, 0xc3, 0xfc, + 0x75, 0x24, 0x22, 0x21, 0x83, 0x20, 0x65, 0xda, 0x1e, 0x59, 0xa0, 0xea, + 0x72, 0x81, 0x2b, 0x7a, 0xd6, 0x07, 0xbd, 0x49, 0x8b, 0xf5, 0x5b, 0xc9, + 0xe8, 0x68, 0x81, 0x7b, 0xc1, 0x2e, 0xfc, 0xe6, 0x1b, 0xd2, 0x8b, 0xd8, +}; +static const unsigned char kat4179_nonce[] = {0}; +static const unsigned char kat4179_persstr[] = { + 0xf3, 0x25, 0x1e, 0x3e, 0xd5, 0xfd, 0x1a, 0x0c, 0x3c, 0xac, 0x56, 0x72, + 0x5a, 0xba, 0x5c, 0x1e, 0x8b, 0xbc, 0xb2, 0x85, 0xa4, 0xb0, 0x55, 0x55, + 0xd0, 0x6e, 0x45, 0xbe, 0xbe, 0x65, 0x5a, 0xc2, 0x4b, 0x00, 0x92, 0x7d, + 0xc9, 0x27, 0x8b, 0xf9, 0x39, 0x3a, 0x76, 0x20, 0x33, 0xe6, 0x9f, 0x64, +}; +static const unsigned char kat4179_entropyinpr1[] = { + 0xe8, 0x8c, 0x32, 0xd8, 0xd7, 0xa9, 0x69, 0x47, 0xe4, 0x75, 0x7e, 0x10, + 0xba, 0x3d, 0x4d, 0x88, 0x97, 0x22, 0xbc, 0x1b, 0xcc, 0x9a, 0x49, 0x1b, + 0x21, 0x6a, 0xac, 0xeb, 0x08, 0xe8, 0x32, 0xe1, 0x61, 0xa1, 0x11, 0x1a, + 0x52, 0x48, 0xd9, 0x48, 0x1a, 0xbf, 0x44, 0x44, 0x13, 0x79, 0x52, 0x19, +}; +static const unsigned char kat4179_addinpr1[] = {0}; +static const unsigned char kat4179_entropyinpr2[] = { + 0xbc, 0x44, 0xea, 0x67, 0x7f, 0xba, 0x5a, 0xc0, 0x62, 0x07, 0x68, 0x41, + 0x0c, 0xfa, 0x92, 0x9b, 0xd7, 0x09, 0x69, 0x3c, 0xf1, 0x87, 0x2a, 0xf1, + 0x6e, 0x0e, 0x2f, 0x3c, 0x53, 0x0d, 0x3c, 0xbc, 0x86, 0xe3, 0x8d, 0xc0, + 0x43, 0x6f, 0x95, 0x6d, 0xcf, 0x3c, 0x90, 0xfe, 0x6f, 0x0a, 0x1f, 0x85, +}; +static const unsigned char kat4179_addinpr2[] = {0}; +static const unsigned char kat4179_retbits[] = { + 0xab, 0xc0, 0x56, 0x13, 0x0c, 0xcc, 0x21, 0x17, 0x49, 0x2c, 0xeb, 0xf2, + 0x22, 0xbc, 0x29, 0x94, 0x75, 0x7e, 0xd2, 0x76, 0xa6, 0x52, 0xf4, 0x19, + 0xf4, 0x5e, 0x1f, 0x8f, 0xeb, 0x79, 0x3c, 0x29, 0x0d, 0x66, 0xe2, 0x7a, + 0x30, 0xb6, 0x73, 0x13, 0x86, 0x2d, 0xcb, 0x02, 0xb7, 0x8e, 0xaa, 0x4f, + 0xd3, 0xb8, 0x8a, 0x55, 0xa9, 0xcc, 0x15, 0xd2, 0xf0, 0x40, 0x25, 0x03, + 0x4d, 0xe6, 0xaf, 0x1f, +}; +static const struct drbg_kat_pr_true kat4179_t = { + 8, kat4179_entropyin, kat4179_nonce, kat4179_persstr, + kat4179_entropyinpr1, kat4179_addinpr1, kat4179_entropyinpr2, + kat4179_addinpr2, kat4179_retbits +}; +static const struct drbg_kat kat4179 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4179_t +}; + +static const unsigned char kat4180_entropyin[] = { + 0x5a, 0xcf, 0x21, 0x09, 0x2e, 0x40, 0x20, 0xfd, 0xd1, 0xc0, 0xf7, 0xfd, + 0xbb, 0xa9, 0x6e, 0x8d, 0xd4, 0xb6, 0x0c, 0x5e, 0x3e, 0xd5, 0x7a, 0x8e, + 0x02, 0xbf, 0x74, 0x6e, 0xcb, 0x60, 0xe2, 0xbd, 0xf0, 0x00, 0x96, 0x44, + 0x5a, 0x0d, 0x42, 0x6b, 0x14, 0x00, 0x20, 0x40, 0x1a, 0x88, 0x76, 0x62, +}; +static const unsigned char kat4180_nonce[] = {0}; +static const unsigned char kat4180_persstr[] = { + 0xcb, 0x4c, 0xbe, 0x45, 0xb3, 0x54, 0xfc, 0x73, 0xbd, 0x9e, 0x79, 0x3f, + 0xe2, 0xab, 0x67, 0x12, 0x85, 0x2c, 0x10, 0x9f, 0x1d, 0xac, 0x7c, 0x93, + 0x52, 0x8f, 0x29, 0xea, 0xbe, 0x1a, 0x1e, 0xe8, 0x76, 0xab, 0x8a, 0x1c, + 0x32, 0x33, 0x85, 0x55, 0xd3, 0x55, 0xfe, 0xd7, 0x97, 0x08, 0x41, 0xd0, +}; +static const unsigned char kat4180_entropyinpr1[] = { + 0x2a, 0xa6, 0xe6, 0x1e, 0x14, 0xde, 0xb5, 0xb1, 0xc7, 0x7d, 0x12, 0xa7, + 0x78, 0xf3, 0xdc, 0x50, 0x47, 0x63, 0xf0, 0x7d, 0x5e, 0xd0, 0xf8, 0x58, + 0xc1, 0x91, 0xbe, 0x50, 0xa3, 0x81, 0xd0, 0xc2, 0x83, 0xb0, 0x4a, 0xe2, + 0x1b, 0xf4, 0x9a, 0xc5, 0x7d, 0x78, 0x02, 0x8d, 0xe4, 0xd0, 0x64, 0xf2, +}; +static const unsigned char kat4180_addinpr1[] = {0}; +static const unsigned char kat4180_entropyinpr2[] = { + 0x84, 0xe0, 0x45, 0x9e, 0x43, 0x9a, 0x1d, 0x57, 0x19, 0x32, 0xb8, 0xf0, + 0xdc, 0x4b, 0x25, 0x92, 0x91, 0x12, 0x23, 0xa4, 0x44, 0x9b, 0x18, 0x8b, + 0xd6, 0x69, 0x84, 0xda, 0x37, 0xc0, 0xa4, 0x89, 0x0e, 0x5b, 0x92, 0xcb, + 0x01, 0x1a, 0xa1, 0xa8, 0x99, 0xa9, 0x2f, 0xb6, 0x37, 0x46, 0xa6, 0xb2, +}; +static const unsigned char kat4180_addinpr2[] = {0}; +static const unsigned char kat4180_retbits[] = { + 0x78, 0xc2, 0xea, 0x5a, 0xb4, 0x94, 0x3d, 0x95, 0xd1, 0x1d, 0xcd, 0x40, + 0x03, 0x1e, 0xf2, 0xfd, 0x00, 0xc9, 0x38, 0x04, 0x29, 0x2d, 0xa5, 0x35, + 0x53, 0x8c, 0x71, 0x82, 0x09, 0x9e, 0xe5, 0x42, 0x24, 0xcb, 0xad, 0xbf, + 0x52, 0x92, 0x41, 0x8b, 0x52, 0x3f, 0xab, 0x8f, 0xf1, 0x61, 0xa1, 0x91, + 0xd9, 0xac, 0x6c, 0x1d, 0xeb, 0x80, 0xf3, 0x1c, 0x67, 0x58, 0xb8, 0x80, + 0x5d, 0x85, 0xf1, 0xdd, +}; +static const struct drbg_kat_pr_true kat4180_t = { + 9, kat4180_entropyin, kat4180_nonce, kat4180_persstr, + kat4180_entropyinpr1, kat4180_addinpr1, kat4180_entropyinpr2, + kat4180_addinpr2, kat4180_retbits +}; +static const struct drbg_kat kat4180 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4180_t +}; + +static const unsigned char kat4181_entropyin[] = { + 0x8d, 0xe8, 0xb5, 0xea, 0x57, 0x73, 0xe8, 0x22, 0xc3, 0x8a, 0xea, 0xa3, + 0xa7, 0xaf, 0x9a, 0x8b, 0x99, 0x51, 0x44, 0x21, 0x11, 0x09, 0x55, 0x4c, + 0x84, 0x70, 0x7a, 0x35, 0xdb, 0xce, 0xae, 0xc1, 0x66, 0x87, 0xe6, 0x03, + 0xe1, 0x34, 0xfe, 0x1c, 0x4b, 0xf4, 0x2b, 0xee, 0xd3, 0xf1, 0xb8, 0x83, +}; +static const unsigned char kat4181_nonce[] = {0}; +static const unsigned char kat4181_persstr[] = { + 0x32, 0x02, 0x15, 0x7a, 0x7d, 0xf2, 0x21, 0x99, 0x0b, 0x39, 0x65, 0x1d, + 0xa9, 0x97, 0x41, 0xff, 0xf3, 0x4c, 0x51, 0xe6, 0x11, 0x10, 0xef, 0xde, + 0xe9, 0x81, 0x81, 0x98, 0x7e, 0xd3, 0xa3, 0x24, 0xa1, 0xb4, 0x7f, 0x85, + 0x4c, 0x07, 0xba, 0xe8, 0x10, 0x04, 0x42, 0xf7, 0x12, 0x84, 0x23, 0xc0, +}; +static const unsigned char kat4181_entropyinpr1[] = { + 0x52, 0x27, 0xbd, 0x6b, 0x42, 0x1d, 0x4a, 0xb8, 0xae, 0xb0, 0x2d, 0xba, + 0xf6, 0xe9, 0x9b, 0xe2, 0x7c, 0x85, 0x82, 0xa0, 0x5f, 0xe6, 0x71, 0x86, + 0xab, 0xf0, 0x27, 0xf0, 0xd1, 0xc8, 0x0f, 0xc3, 0x57, 0xf1, 0x2b, 0x91, + 0xcb, 0xdd, 0x5d, 0x6e, 0x9e, 0xab, 0x4c, 0x46, 0x7b, 0x1d, 0xbf, 0x2b, +}; +static const unsigned char kat4181_addinpr1[] = {0}; +static const unsigned char kat4181_entropyinpr2[] = { + 0x3b, 0xc5, 0xc4, 0x24, 0xed, 0x68, 0x7a, 0x1c, 0xbd, 0xb8, 0xf9, 0x2f, + 0xb3, 0x39, 0xd6, 0x6d, 0x28, 0xe6, 0x39, 0x61, 0xdb, 0xb3, 0xe4, 0xd3, + 0xae, 0x2f, 0x7e, 0x29, 0xdb, 0xe3, 0x8d, 0xdb, 0xab, 0x54, 0xee, 0x09, + 0x32, 0xf6, 0x42, 0x26, 0x2c, 0x33, 0xf6, 0x86, 0x16, 0xd7, 0x25, 0x36, +}; +static const unsigned char kat4181_addinpr2[] = {0}; +static const unsigned char kat4181_retbits[] = { + 0xcf, 0xf3, 0x03, 0x30, 0xad, 0xad, 0xf8, 0x91, 0x5f, 0x25, 0xf1, 0xd5, + 0x0c, 0x27, 0xff, 0xe6, 0x02, 0x00, 0x7f, 0xb1, 0xfe, 0x5b, 0x69, 0xec, + 0x0e, 0x48, 0x11, 0x77, 0x5b, 0x89, 0xc0, 0xfc, 0xcd, 0x7d, 0xbf, 0x8a, + 0x18, 0x1c, 0xd7, 0xbf, 0x0d, 0x3a, 0x7d, 0x1d, 0xa1, 0x26, 0xc7, 0x25, + 0x20, 0x09, 0xfb, 0xbc, 0x84, 0x22, 0x93, 0x74, 0xc0, 0x09, 0x1c, 0xd0, + 0x86, 0xb7, 0xde, 0x4e, +}; +static const struct drbg_kat_pr_true kat4181_t = { + 10, kat4181_entropyin, kat4181_nonce, kat4181_persstr, + kat4181_entropyinpr1, kat4181_addinpr1, kat4181_entropyinpr2, + kat4181_addinpr2, kat4181_retbits +}; +static const struct drbg_kat kat4181 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4181_t +}; + +static const unsigned char kat4182_entropyin[] = { + 0x1f, 0x69, 0xcd, 0x5e, 0x19, 0x20, 0x34, 0x43, 0xee, 0x52, 0x12, 0xc6, + 0xf9, 0xd4, 0x47, 0x4f, 0xf8, 0x6a, 0x2c, 0xbc, 0xa0, 0x83, 0x0a, 0xe2, + 0x87, 0x79, 0xa3, 0xb0, 0xfc, 0x14, 0xa8, 0x5f, 0x3c, 0x98, 0x2a, 0xc6, + 0x0d, 0x03, 0x45, 0x7e, 0xed, 0xf8, 0x77, 0x89, 0x2a, 0x0c, 0xc7, 0xad, +}; +static const unsigned char kat4182_nonce[] = {0}; +static const unsigned char kat4182_persstr[] = { + 0x0b, 0x46, 0xbb, 0xb8, 0xae, 0xac, 0xd4, 0x89, 0x4c, 0xee, 0xb0, 0x5d, + 0xf6, 0xe4, 0x5d, 0x91, 0x03, 0xf9, 0x8d, 0x94, 0x84, 0xee, 0x20, 0xc8, + 0x7f, 0x6a, 0x49, 0x4b, 0x97, 0x49, 0x5e, 0x6d, 0x46, 0xe9, 0x97, 0x72, + 0x7d, 0xd1, 0x05, 0x57, 0x5f, 0xd0, 0xa8, 0x4f, 0x24, 0x37, 0x91, 0xf5, +}; +static const unsigned char kat4182_entropyinpr1[] = { + 0x2d, 0xaf, 0x4a, 0x7f, 0x3a, 0x84, 0xee, 0x9b, 0x9a, 0x55, 0x28, 0x47, + 0x26, 0x87, 0x1d, 0xc9, 0x5c, 0x0e, 0x5f, 0x9a, 0x67, 0x9d, 0x4d, 0xfc, + 0xea, 0x9f, 0x7b, 0xd8, 0xb3, 0x20, 0xd0, 0x54, 0xf3, 0x7a, 0xdb, 0xc4, + 0x6e, 0x3e, 0x43, 0x45, 0x0a, 0x78, 0x1c, 0xef, 0x74, 0x0f, 0x80, 0xde, +}; +static const unsigned char kat4182_addinpr1[] = {0}; +static const unsigned char kat4182_entropyinpr2[] = { + 0xd5, 0x05, 0x46, 0x34, 0x83, 0xdf, 0x6d, 0x55, 0xe4, 0xa5, 0x4f, 0xed, + 0x2a, 0x9f, 0xea, 0xaa, 0x0f, 0x46, 0x68, 0x03, 0x6d, 0x58, 0x24, 0x39, + 0xfc, 0x56, 0x41, 0xf7, 0x9b, 0xa1, 0x9a, 0xc0, 0xc4, 0xea, 0x2f, 0x5a, + 0x1c, 0x72, 0xa2, 0xe6, 0x8c, 0x33, 0x41, 0xfc, 0xc7, 0x06, 0xdc, 0xa9, +}; +static const unsigned char kat4182_addinpr2[] = {0}; +static const unsigned char kat4182_retbits[] = { + 0xe3, 0x0b, 0xda, 0x86, 0x2a, 0x30, 0xe7, 0x30, 0xbb, 0xa5, 0xb1, 0x71, + 0xe4, 0xf7, 0x8e, 0x74, 0xdf, 0x8c, 0xfd, 0xab, 0x14, 0x35, 0x61, 0xef, + 0x0e, 0x40, 0x89, 0x2c, 0x31, 0x9b, 0x58, 0xde, 0xee, 0xbb, 0x33, 0x91, + 0x41, 0x24, 0x6c, 0xa7, 0xe9, 0x47, 0xd1, 0xff, 0x11, 0xc7, 0xaf, 0xbf, + 0x1a, 0x85, 0xe6, 0xb1, 0x80, 0x1b, 0xd2, 0x72, 0x42, 0x24, 0xe6, 0xaa, + 0xd3, 0xbb, 0x54, 0xc3, +}; +static const struct drbg_kat_pr_true kat4182_t = { + 11, kat4182_entropyin, kat4182_nonce, kat4182_persstr, + kat4182_entropyinpr1, kat4182_addinpr1, kat4182_entropyinpr2, + kat4182_addinpr2, kat4182_retbits +}; +static const struct drbg_kat kat4182 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4182_t +}; + +static const unsigned char kat4183_entropyin[] = { + 0x3e, 0x3a, 0xf7, 0x3f, 0x01, 0x39, 0x1e, 0x84, 0x98, 0x47, 0x73, 0x0e, + 0x7e, 0xfb, 0xdc, 0xe6, 0xa5, 0x93, 0x5d, 0x48, 0xf5, 0xac, 0x4b, 0x02, + 0x34, 0x5f, 0x6e, 0x58, 0x2b, 0x32, 0xc0, 0xe6, 0xcb, 0x98, 0xf7, 0xe6, + 0xb1, 0xb5, 0x57, 0xcc, 0xbe, 0x2d, 0x8f, 0x50, 0xa1, 0x38, 0x49, 0x98, +}; +static const unsigned char kat4183_nonce[] = {0}; +static const unsigned char kat4183_persstr[] = { + 0xb5, 0x78, 0x96, 0xa8, 0x49, 0x33, 0x6f, 0x68, 0x86, 0x5e, 0xfc, 0xde, + 0xa5, 0x6b, 0xd5, 0xb0, 0x6b, 0x94, 0x2a, 0xb3, 0xf6, 0x26, 0x31, 0xc2, + 0x26, 0x70, 0x16, 0xf5, 0xab, 0xcc, 0xa8, 0xb9, 0xcd, 0xde, 0x77, 0x89, + 0xcc, 0xd4, 0x7f, 0xb1, 0x75, 0x58, 0xf3, 0xad, 0x87, 0xe5, 0xaf, 0xc6, +}; +static const unsigned char kat4183_entropyinpr1[] = { + 0x59, 0xcc, 0x84, 0x71, 0xb3, 0xc8, 0xf6, 0x36, 0xf1, 0x9a, 0xad, 0x5c, + 0xb3, 0x90, 0x6a, 0xbf, 0x43, 0xd6, 0xeb, 0x83, 0xf1, 0x5e, 0x33, 0x57, + 0x8f, 0x13, 0xb1, 0xc5, 0xc3, 0xf4, 0x70, 0x3f, 0x06, 0xf8, 0x94, 0xe1, + 0x80, 0x01, 0x72, 0xd3, 0xc3, 0xe0, 0x90, 0x3f, 0x93, 0xbd, 0x0e, 0x36, +}; +static const unsigned char kat4183_addinpr1[] = {0}; +static const unsigned char kat4183_entropyinpr2[] = { + 0xc9, 0x06, 0xe3, 0xfb, 0xcc, 0x2d, 0xee, 0xdf, 0xe7, 0xe6, 0x6d, 0xba, + 0x67, 0xca, 0x51, 0x0c, 0x4a, 0x6b, 0xc4, 0xb1, 0xf4, 0xbf, 0x73, 0x12, + 0xe7, 0x9a, 0x7a, 0xdb, 0x90, 0xc7, 0xb4, 0xb9, 0xc8, 0x0c, 0x4d, 0x27, + 0x79, 0xb7, 0x24, 0x3c, 0x8a, 0xf1, 0x01, 0x25, 0xf7, 0x46, 0xbc, 0xcd, +}; +static const unsigned char kat4183_addinpr2[] = {0}; +static const unsigned char kat4183_retbits[] = { + 0xe4, 0x17, 0xc2, 0xfa, 0xd0, 0xca, 0xc0, 0x58, 0xd1, 0x9f, 0x36, 0xf7, + 0xad, 0xd6, 0x6a, 0x76, 0xa4, 0xf5, 0xf5, 0x20, 0x85, 0x88, 0x6f, 0x87, + 0x26, 0xb0, 0xec, 0xbc, 0x9b, 0xae, 0xa0, 0xc5, 0x2b, 0xd9, 0xb1, 0x37, + 0x8c, 0x65, 0x05, 0x98, 0xf6, 0xf6, 0x17, 0x03, 0xbb, 0x0d, 0x3a, 0x1d, + 0x73, 0x5e, 0xaf, 0xa5, 0x00, 0xbe, 0x6f, 0xb0, 0x63, 0x7f, 0x20, 0x62, + 0x1d, 0xe0, 0x5e, 0x30, +}; +static const struct drbg_kat_pr_true kat4183_t = { + 12, kat4183_entropyin, kat4183_nonce, kat4183_persstr, + kat4183_entropyinpr1, kat4183_addinpr1, kat4183_entropyinpr2, + kat4183_addinpr2, kat4183_retbits +}; +static const struct drbg_kat kat4183 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4183_t +}; + +static const unsigned char kat4184_entropyin[] = { + 0x5e, 0xf5, 0x81, 0x3d, 0xb2, 0x54, 0x17, 0x16, 0x3e, 0x2d, 0xd8, 0x4f, + 0xd5, 0x7f, 0x7a, 0x37, 0x04, 0xc9, 0x21, 0xe0, 0x04, 0x70, 0x05, 0x60, + 0xd7, 0xa0, 0x2a, 0x34, 0x97, 0x01, 0xf8, 0x3c, 0xa4, 0x51, 0x86, 0xf9, + 0xbe, 0xe2, 0x36, 0x4c, 0x67, 0x9f, 0x67, 0xb0, 0x53, 0xb3, 0x44, 0x76, +}; +static const unsigned char kat4184_nonce[] = {0}; +static const unsigned char kat4184_persstr[] = { + 0x70, 0x1b, 0x85, 0xa2, 0xe4, 0x61, 0xe8, 0xb3, 0x0a, 0x80, 0x15, 0xc5, + 0x39, 0x75, 0x47, 0x43, 0xee, 0xb2, 0x0d, 0x26, 0x78, 0xe9, 0x20, 0xf7, + 0xba, 0x3c, 0xe2, 0xf8, 0x53, 0xed, 0xb0, 0x06, 0xa8, 0xc7, 0xfd, 0xce, + 0x52, 0xde, 0xa9, 0x6e, 0x50, 0xff, 0x6f, 0xab, 0x44, 0x28, 0x4a, 0x4e, +}; +static const unsigned char kat4184_entropyinpr1[] = { + 0x1a, 0x9d, 0x67, 0xbf, 0x14, 0xa2, 0xc5, 0x30, 0x87, 0x51, 0xba, 0xd5, + 0x6f, 0x98, 0x14, 0x66, 0x54, 0xa2, 0x11, 0x4c, 0x0e, 0xd2, 0x97, 0x53, + 0xa3, 0x5f, 0xc3, 0x39, 0x3b, 0xe6, 0x12, 0xdd, 0xc9, 0x4f, 0x28, 0x35, + 0xb3, 0x51, 0xe4, 0x38, 0x90, 0x5c, 0x46, 0x57, 0xc5, 0x4c, 0x1f, 0x87, +}; +static const unsigned char kat4184_addinpr1[] = {0}; +static const unsigned char kat4184_entropyinpr2[] = { + 0xea, 0x4b, 0x31, 0xad, 0xcf, 0xd4, 0x63, 0x9c, 0x92, 0x82, 0x93, 0xdb, + 0xc0, 0x22, 0x23, 0xab, 0xf2, 0x6e, 0xcc, 0x05, 0x2a, 0x4a, 0x23, 0xed, + 0xa4, 0x45, 0x68, 0xde, 0xae, 0x57, 0x7e, 0x3f, 0xe5, 0xb9, 0xe6, 0x71, + 0xae, 0x44, 0xb4, 0x82, 0x76, 0xec, 0x39, 0x2c, 0x81, 0x70, 0x7a, 0xa8, +}; +static const unsigned char kat4184_addinpr2[] = {0}; +static const unsigned char kat4184_retbits[] = { + 0x77, 0x61, 0x1c, 0xf2, 0x93, 0xc7, 0xc8, 0x57, 0x2d, 0x4a, 0x75, 0x8c, + 0xf0, 0x2e, 0xee, 0xc6, 0xab, 0x0c, 0x8a, 0x23, 0xff, 0x17, 0x81, 0xcb, + 0xc6, 0xff, 0x10, 0x3b, 0x93, 0x48, 0xf1, 0x2d, 0xc4, 0xb3, 0x30, 0x96, + 0x30, 0x5d, 0xfe, 0x6d, 0x1d, 0x6c, 0x77, 0xdf, 0x86, 0x37, 0x74, 0x94, + 0x73, 0xb1, 0xd9, 0xf8, 0xdb, 0x79, 0x99, 0xeb, 0x45, 0x95, 0xcb, 0x71, + 0x4d, 0x91, 0x56, 0x7a, +}; +static const struct drbg_kat_pr_true kat4184_t = { + 13, kat4184_entropyin, kat4184_nonce, kat4184_persstr, + kat4184_entropyinpr1, kat4184_addinpr1, kat4184_entropyinpr2, + kat4184_addinpr2, kat4184_retbits +}; +static const struct drbg_kat kat4184 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4184_t +}; + +static const unsigned char kat4185_entropyin[] = { + 0xaf, 0xe8, 0x93, 0x39, 0xe7, 0x61, 0x5d, 0xe2, 0x57, 0xf3, 0x28, 0xa2, + 0x41, 0x28, 0x7b, 0x3b, 0xf3, 0xc8, 0xb5, 0x59, 0xab, 0x18, 0x2a, 0xf4, + 0x55, 0x79, 0x89, 0xcd, 0xca, 0xb2, 0x56, 0x76, 0x05, 0x6f, 0x84, 0xfd, + 0xdd, 0x55, 0xf4, 0xc3, 0x66, 0x30, 0x4f, 0xfe, 0x22, 0x28, 0x06, 0x71, +}; +static const unsigned char kat4185_nonce[] = {0}; +static const unsigned char kat4185_persstr[] = { + 0x62, 0x40, 0xd0, 0xea, 0x30, 0x08, 0xa9, 0xb5, 0x91, 0x53, 0xd3, 0x69, + 0x7c, 0xdc, 0xbd, 0x5e, 0x72, 0xa2, 0x82, 0xe6, 0xc9, 0xd4, 0xa2, 0x6b, + 0x42, 0x63, 0x21, 0x00, 0x50, 0xbb, 0xbc, 0x63, 0xab, 0x1f, 0xbc, 0x5b, + 0x16, 0xaa, 0x0d, 0xf4, 0x27, 0x84, 0xc9, 0x6a, 0xda, 0x6d, 0x6b, 0xdf, +}; +static const unsigned char kat4185_entropyinpr1[] = { + 0xc4, 0x36, 0xb7, 0x3a, 0xae, 0x53, 0x2f, 0xfb, 0x95, 0x0c, 0x6e, 0xd8, + 0x37, 0x53, 0xaa, 0x6d, 0xf0, 0x57, 0x1f, 0x11, 0xfd, 0x8e, 0x0a, 0xda, + 0xf3, 0x5b, 0xfa, 0xbc, 0x96, 0xcd, 0xa5, 0x75, 0x30, 0x5c, 0x24, 0x0d, + 0x8e, 0xb8, 0xb3, 0xb0, 0x01, 0x19, 0x1d, 0xab, 0x8e, 0xde, 0x87, 0xea, +}; +static const unsigned char kat4185_addinpr1[] = {0}; +static const unsigned char kat4185_entropyinpr2[] = { + 0xd3, 0xed, 0x76, 0x71, 0xeb, 0x3c, 0x2e, 0x0c, 0x11, 0x5e, 0xc9, 0xd6, + 0xd6, 0x84, 0x96, 0x4d, 0x39, 0x53, 0x3d, 0x76, 0x74, 0x13, 0xb6, 0x3e, + 0x0b, 0xf7, 0xc9, 0x56, 0xb4, 0x72, 0x05, 0xf8, 0xd5, 0x00, 0x1a, 0x96, + 0x50, 0xe7, 0xa1, 0xc7, 0x38, 0x1f, 0x11, 0x0c, 0x9e, 0xcf, 0xe9, 0x2c, +}; +static const unsigned char kat4185_addinpr2[] = {0}; +static const unsigned char kat4185_retbits[] = { + 0xf9, 0x9b, 0x7d, 0x88, 0xcc, 0xfe, 0x1c, 0x84, 0xc9, 0x94, 0x9c, 0x35, + 0x48, 0x63, 0x0e, 0xa2, 0xa9, 0xec, 0x03, 0x35, 0x43, 0xc6, 0x93, 0xc5, + 0xbf, 0x72, 0xa8, 0x2f, 0x40, 0x4c, 0x5e, 0xec, 0x5b, 0x2a, 0x09, 0xaf, + 0xb6, 0xc9, 0x5f, 0x10, 0xb4, 0x8f, 0xe4, 0x60, 0x80, 0x92, 0xe7, 0x21, + 0x32, 0x85, 0xaf, 0x83, 0xba, 0x13, 0x04, 0xac, 0xfe, 0xf8, 0x46, 0x06, + 0x0a, 0x1c, 0xf8, 0x60, +}; +static const struct drbg_kat_pr_true kat4185_t = { + 14, kat4185_entropyin, kat4185_nonce, kat4185_persstr, + kat4185_entropyinpr1, kat4185_addinpr1, kat4185_entropyinpr2, + kat4185_addinpr2, kat4185_retbits +}; +static const struct drbg_kat kat4185 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4185_t +}; + +static const unsigned char kat4186_entropyin[] = { + 0x0c, 0xc5, 0x9e, 0x38, 0x84, 0x53, 0x5f, 0xc2, 0xb7, 0xc3, 0x96, 0x8a, + 0x06, 0x3d, 0x5f, 0x20, 0x7c, 0x82, 0xa1, 0x11, 0x13, 0xe7, 0x40, 0xbd, + 0x72, 0xa7, 0xc9, 0xc8, 0x59, 0x22, 0xf6, 0x4d, 0x85, 0x55, 0x42, 0xc3, + 0x0a, 0x31, 0xe4, 0x45, 0x78, 0x88, 0x4c, 0x16, 0xf5, 0xf4, 0xe9, 0xda, +}; +static const unsigned char kat4186_nonce[] = {0}; +static const unsigned char kat4186_persstr[] = { + 0xed, 0xe7, 0xfe, 0x11, 0x12, 0x2d, 0x4f, 0xaa, 0xc0, 0x9a, 0xdb, 0xf3, + 0x36, 0x50, 0x72, 0x5e, 0x01, 0x99, 0x07, 0x27, 0xe4, 0x30, 0x9f, 0x92, + 0xe8, 0xba, 0xd8, 0xb2, 0x56, 0x2c, 0x44, 0x23, 0x68, 0x3b, 0xa1, 0xa6, + 0xca, 0x2a, 0x58, 0xdb, 0x08, 0x66, 0x34, 0xc9, 0xb5, 0xe5, 0x94, 0xda, +}; +static const unsigned char kat4186_entropyinpr1[] = { + 0xef, 0x92, 0x30, 0xa5, 0xc0, 0x08, 0xe8, 0x5e, 0x74, 0x1c, 0x6c, 0xd7, + 0xd7, 0xa3, 0x38, 0xed, 0x64, 0x3d, 0x6f, 0x39, 0x19, 0x0c, 0x6b, 0x2e, + 0xb7, 0xb0, 0xba, 0x56, 0x3d, 0x2b, 0xbc, 0x2b, 0x79, 0x71, 0xbd, 0xdb, + 0x54, 0xea, 0x0b, 0x85, 0x00, 0x0a, 0x85, 0x1a, 0x76, 0x68, 0x6f, 0x52, +}; +static const unsigned char kat4186_addinpr1[] = { + 0xcd, 0xfd, 0xc1, 0x60, 0xa8, 0xdd, 0x9a, 0x86, 0xc8, 0x6e, 0x86, 0xbb, + 0xef, 0x09, 0xca, 0x0d, 0x32, 0x36, 0x51, 0x9a, 0x20, 0x6f, 0xb9, 0x9e, + 0x01, 0x5c, 0x49, 0x1b, 0x1b, 0xf6, 0xb0, 0xa8, 0xf2, 0x9a, 0xd1, 0xd9, + 0x1c, 0xfb, 0xf0, 0x46, 0x30, 0x4d, 0x2b, 0xa3, 0xde, 0x21, 0xe1, 0xb6, +}; +static const unsigned char kat4186_entropyinpr2[] = { + 0x81, 0xe8, 0xd6, 0xfc, 0xa2, 0x1e, 0xe1, 0xeb, 0xf0, 0xb5, 0x85, 0x42, + 0xb3, 0x46, 0xa3, 0x11, 0xa4, 0x20, 0x52, 0xfb, 0x8c, 0x8f, 0x0f, 0x91, + 0x66, 0x15, 0xfc, 0x2e, 0xfc, 0xed, 0x80, 0x93, 0x1d, 0xaf, 0xd1, 0xe5, + 0xf2, 0xfd, 0xc2, 0x71, 0x99, 0x09, 0x1e, 0x12, 0x1b, 0x4c, 0x1e, 0x47, +}; +static const unsigned char kat4186_addinpr2[] = { + 0x50, 0x2d, 0x6d, 0xb7, 0x99, 0x02, 0xb2, 0x41, 0xe0, 0x20, 0x2c, 0xb7, + 0x12, 0x9a, 0x67, 0x45, 0xe9, 0x69, 0xf6, 0xb7, 0x82, 0x62, 0x33, 0x95, + 0x7c, 0x1f, 0x7a, 0xa7, 0x4d, 0x15, 0xeb, 0x88, 0x22, 0x84, 0x82, 0x18, + 0x15, 0x0d, 0x05, 0x9e, 0xd1, 0x49, 0x9e, 0x0e, 0xc3, 0xf7, 0x6f, 0xb9, +}; +static const unsigned char kat4186_retbits[] = { + 0x0f, 0x4d, 0xc9, 0x08, 0x97, 0x73, 0x6e, 0xa1, 0xc7, 0x1c, 0xda, 0x98, + 0xc9, 0xe4, 0x16, 0xdc, 0x8d, 0x3d, 0xf1, 0x97, 0x79, 0xb7, 0x0e, 0xf2, + 0x2f, 0x92, 0x99, 0x6b, 0x96, 0xcc, 0xf4, 0xf4, 0x20, 0xa6, 0x75, 0x45, + 0x03, 0xf4, 0x8c, 0x93, 0x27, 0xed, 0x02, 0xb0, 0x47, 0xbb, 0xd1, 0xcd, + 0x68, 0xbb, 0x82, 0xfc, 0xfa, 0x04, 0xa6, 0x47, 0x00, 0x98, 0x74, 0xcf, + 0xa6, 0x3a, 0xe1, 0xb4, +}; +static const struct drbg_kat_pr_true kat4186_t = { + 0, kat4186_entropyin, kat4186_nonce, kat4186_persstr, + kat4186_entropyinpr1, kat4186_addinpr1, kat4186_entropyinpr2, + kat4186_addinpr2, kat4186_retbits +}; +static const struct drbg_kat kat4186 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4186_t +}; + +static const unsigned char kat4187_entropyin[] = { + 0x82, 0xa0, 0xe1, 0x86, 0xda, 0xcc, 0x12, 0x30, 0xea, 0x7e, 0x71, 0x04, + 0x14, 0xa2, 0x5c, 0x0d, 0x6e, 0x6a, 0x67, 0x86, 0x1e, 0xbb, 0x2b, 0xa7, + 0x32, 0xab, 0x2c, 0xeb, 0x4a, 0x77, 0xe6, 0x94, 0xc0, 0xc0, 0x05, 0x63, + 0xd8, 0x41, 0x4f, 0xc4, 0xd7, 0x73, 0xcd, 0x41, 0x14, 0xf2, 0x77, 0xd0, +}; +static const unsigned char kat4187_nonce[] = {0}; +static const unsigned char kat4187_persstr[] = { + 0x84, 0x1b, 0xc3, 0x4d, 0xe2, 0xed, 0x87, 0x99, 0x4a, 0x6d, 0x58, 0xe0, + 0x77, 0x0c, 0xac, 0x79, 0x64, 0xc6, 0x11, 0x62, 0xf6, 0x24, 0xad, 0xd4, + 0xb6, 0xb3, 0x09, 0x20, 0x91, 0xfb, 0xe3, 0x2a, 0x7d, 0x27, 0x5c, 0x7b, + 0xd5, 0x74, 0xa3, 0x44, 0x90, 0xaf, 0x98, 0xa9, 0xf6, 0x49, 0xb3, 0x84, +}; +static const unsigned char kat4187_entropyinpr1[] = { + 0x83, 0x6a, 0x47, 0x81, 0x34, 0x9d, 0xb2, 0xfa, 0x4c, 0x57, 0xd1, 0xae, + 0x93, 0x03, 0x72, 0xfd, 0xe3, 0x94, 0x89, 0x0b, 0xcc, 0x2c, 0x40, 0x52, + 0xea, 0xef, 0x37, 0xcc, 0x7c, 0xf9, 0xcf, 0xda, 0x5d, 0x18, 0x36, 0x90, + 0x1b, 0x83, 0xf3, 0x64, 0x4e, 0x73, 0x27, 0x0c, 0xe5, 0x00, 0x50, 0x91, +}; +static const unsigned char kat4187_addinpr1[] = { + 0x48, 0xbd, 0x2e, 0x65, 0x5a, 0xbf, 0x5d, 0x85, 0x89, 0xd7, 0xa6, 0x01, + 0xa0, 0xb0, 0xca, 0xe4, 0xe3, 0xb7, 0x34, 0x1b, 0xda, 0x7b, 0xac, 0x7b, + 0xf7, 0x2b, 0x3b, 0xf2, 0x48, 0xf2, 0x27, 0x18, 0x75, 0xfb, 0xf6, 0x33, + 0x9b, 0xf3, 0x9e, 0x08, 0x83, 0x6c, 0xc8, 0x6d, 0x3f, 0x1e, 0xe2, 0x7e, +}; +static const unsigned char kat4187_entropyinpr2[] = { + 0x58, 0x56, 0x03, 0x42, 0x8e, 0xaf, 0x98, 0x54, 0x9e, 0xc5, 0xf8, 0x50, + 0xfe, 0x92, 0x36, 0x5d, 0x62, 0xec, 0x91, 0x90, 0x24, 0x42, 0x35, 0x2d, + 0x32, 0xb2, 0x75, 0xdb, 0xf6, 0xc8, 0x2d, 0x5c, 0xd2, 0x5d, 0xe9, 0xdc, + 0x0b, 0xe5, 0x2c, 0xaf, 0x8d, 0x24, 0x49, 0x86, 0xda, 0x58, 0x72, 0x2b, +}; +static const unsigned char kat4187_addinpr2[] = { + 0x28, 0xa2, 0x90, 0xd0, 0xed, 0x1e, 0xf7, 0x10, 0x10, 0x70, 0x04, 0xe7, + 0x28, 0x8e, 0x1d, 0x9e, 0xaf, 0x44, 0x9e, 0x6f, 0x8f, 0x01, 0x7e, 0x33, + 0xdc, 0xc3, 0xb5, 0x5e, 0xad, 0x1a, 0x11, 0x81, 0xe4, 0x41, 0xe9, 0x37, + 0x67, 0x13, 0x47, 0xe1, 0x13, 0x6f, 0xe5, 0x54, 0xb8, 0xb4, 0x2f, 0xaa, +}; +static const unsigned char kat4187_retbits[] = { + 0xeb, 0xb4, 0xbc, 0x6e, 0xf1, 0x30, 0xd7, 0x42, 0x83, 0xc6, 0x4f, 0x77, + 0xba, 0x72, 0x78, 0x70, 0x0f, 0xd9, 0x55, 0x22, 0xe0, 0xad, 0x9f, 0xc0, + 0x22, 0xa5, 0xc6, 0x2a, 0x34, 0x13, 0x66, 0x99, 0x93, 0xff, 0xd1, 0x16, + 0x2a, 0xfb, 0xdd, 0xab, 0x5f, 0x87, 0x29, 0x12, 0x03, 0x11, 0x93, 0xca, + 0xbb, 0x55, 0x5d, 0xf4, 0xf4, 0x62, 0x22, 0x13, 0x39, 0xb1, 0x96, 0x17, + 0xea, 0x99, 0x0e, 0xc2, +}; +static const struct drbg_kat_pr_true kat4187_t = { + 1, kat4187_entropyin, kat4187_nonce, kat4187_persstr, + kat4187_entropyinpr1, kat4187_addinpr1, kat4187_entropyinpr2, + kat4187_addinpr2, kat4187_retbits +}; +static const struct drbg_kat kat4187 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4187_t +}; + +static const unsigned char kat4188_entropyin[] = { + 0xb3, 0x0a, 0x5e, 0x92, 0x8a, 0xd4, 0x89, 0x94, 0x2a, 0x45, 0x56, 0x06, + 0x52, 0x7b, 0xed, 0xe7, 0xa9, 0x8a, 0x32, 0x6c, 0x5b, 0xde, 0x09, 0xa7, + 0xe3, 0x1e, 0x31, 0xb7, 0x25, 0x7f, 0x18, 0x52, 0xf5, 0xdc, 0xa0, 0x74, + 0x79, 0xee, 0x3f, 0x57, 0x02, 0x8d, 0x6e, 0x11, 0x26, 0xf4, 0x32, 0x81, +}; +static const unsigned char kat4188_nonce[] = {0}; +static const unsigned char kat4188_persstr[] = { + 0xe1, 0x12, 0xce, 0x7e, 0x55, 0x92, 0xe9, 0xcb, 0xe8, 0x97, 0x96, 0xa5, + 0x6b, 0xff, 0x26, 0xe9, 0x4a, 0x70, 0x9c, 0x59, 0x24, 0xc1, 0x9c, 0xd1, + 0x59, 0xab, 0x50, 0xa5, 0x86, 0xf9, 0x95, 0x32, 0x31, 0xf3, 0x0f, 0xd7, + 0x58, 0x89, 0x45, 0x83, 0xfd, 0x2b, 0x4a, 0x5b, 0x74, 0x13, 0x1b, 0x68, +}; +static const unsigned char kat4188_entropyinpr1[] = { + 0x5b, 0x9a, 0xaa, 0x2e, 0x80, 0x6d, 0x36, 0xb9, 0x67, 0x84, 0x52, 0xc5, + 0x79, 0xc7, 0x16, 0x80, 0x2f, 0x87, 0x5f, 0xa7, 0xbc, 0xd9, 0x3b, 0x72, + 0xfa, 0xfa, 0xa1, 0xde, 0x0d, 0x8d, 0x92, 0x0e, 0x45, 0xed, 0x0e, 0x79, + 0x0f, 0x2d, 0xdf, 0x48, 0x8b, 0x5c, 0xa2, 0xc4, 0x39, 0x21, 0x53, 0xc0, +}; +static const unsigned char kat4188_addinpr1[] = { + 0x49, 0xf3, 0x88, 0xf5, 0xc4, 0x3b, 0xe2, 0x14, 0x6c, 0x42, 0x16, 0x35, + 0x83, 0x06, 0x3e, 0x38, 0xea, 0x4f, 0x03, 0xe1, 0x20, 0x57, 0xb9, 0x5a, + 0x49, 0xec, 0x03, 0x02, 0x0b, 0x12, 0x7f, 0xf8, 0x84, 0xba, 0x4c, 0xdc, + 0x5d, 0x98, 0xcc, 0x18, 0xa6, 0x7e, 0xe1, 0x4b, 0x0e, 0xac, 0xd3, 0x73, +}; +static const unsigned char kat4188_entropyinpr2[] = { + 0xc2, 0x57, 0x14, 0xbb, 0xbf, 0x4d, 0xf7, 0xb3, 0x82, 0xfa, 0xf7, 0x4e, + 0x98, 0x95, 0x72, 0x9d, 0x9b, 0x80, 0xe6, 0x35, 0x75, 0xd2, 0xb1, 0x0d, + 0x03, 0x33, 0x5c, 0x28, 0xf3, 0x0f, 0x15, 0xd1, 0xee, 0x9a, 0x18, 0x38, + 0x53, 0xc3, 0x06, 0xf8, 0x77, 0x07, 0x37, 0x9d, 0xe4, 0xdf, 0x5a, 0xf6, +}; +static const unsigned char kat4188_addinpr2[] = { + 0x0c, 0xb5, 0x30, 0xe6, 0x5f, 0x4b, 0x7c, 0xaa, 0xea, 0x79, 0x4d, 0x59, + 0xee, 0xf6, 0xc7, 0x28, 0x95, 0x01, 0x25, 0xa0, 0x15, 0xaa, 0xb4, 0x86, + 0x68, 0x12, 0x86, 0x27, 0x2b, 0x56, 0xab, 0x7d, 0x64, 0x47, 0xe6, 0x63, + 0x51, 0x67, 0xd1, 0xf3, 0x63, 0xc5, 0xe8, 0x78, 0x76, 0x79, 0x25, 0x6e, +}; +static const unsigned char kat4188_retbits[] = { + 0x69, 0x3d, 0x43, 0xa2, 0x1d, 0x4d, 0x12, 0x32, 0xd3, 0x6c, 0xc0, 0x35, + 0x56, 0x75, 0x88, 0x6c, 0x86, 0x8c, 0x58, 0x5c, 0x4b, 0xe4, 0x50, 0xa3, + 0x64, 0x66, 0x2e, 0xd3, 0x96, 0xa0, 0xea, 0xb4, 0x37, 0xde, 0x0f, 0xa1, + 0x8f, 0x6d, 0x9a, 0xf6, 0x58, 0x50, 0x1c, 0x0c, 0x16, 0xc5, 0x00, 0x92, + 0x6f, 0xdd, 0x61, 0x74, 0xe7, 0x77, 0xf6, 0x12, 0x90, 0x15, 0xf6, 0xc0, + 0xbf, 0x5c, 0x3d, 0x27, +}; +static const struct drbg_kat_pr_true kat4188_t = { + 2, kat4188_entropyin, kat4188_nonce, kat4188_persstr, + kat4188_entropyinpr1, kat4188_addinpr1, kat4188_entropyinpr2, + kat4188_addinpr2, kat4188_retbits +}; +static const struct drbg_kat kat4188 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4188_t +}; + +static const unsigned char kat4189_entropyin[] = { + 0x84, 0xd6, 0x53, 0x6b, 0xfe, 0xc4, 0xd0, 0x90, 0x85, 0xb1, 0x04, 0xf4, + 0x52, 0x9b, 0x31, 0xe6, 0xa4, 0xaf, 0x81, 0xb1, 0xef, 0x59, 0x3b, 0x83, + 0x60, 0x1e, 0x24, 0xa2, 0x46, 0x0f, 0x07, 0x79, 0xd6, 0xf5, 0x72, 0x96, + 0x40, 0xb7, 0xc1, 0x45, 0x78, 0x49, 0xf6, 0x7a, 0xb3, 0xcc, 0x9a, 0x96, +}; +static const unsigned char kat4189_nonce[] = {0}; +static const unsigned char kat4189_persstr[] = { + 0xa4, 0x63, 0xaf, 0xef, 0x96, 0x8a, 0xa5, 0xf4, 0xd1, 0xb0, 0xb6, 0x5c, + 0xbf, 0xfb, 0xdf, 0xf0, 0x7a, 0x13, 0x29, 0xb0, 0x6c, 0x4a, 0xdb, 0xa2, + 0x10, 0x2b, 0x96, 0xfa, 0x06, 0x1f, 0x0d, 0xa1, 0x0d, 0x37, 0x54, 0xe0, + 0xd8, 0xc0, 0x8e, 0x78, 0xe2, 0x71, 0xa9, 0x0a, 0x83, 0xdb, 0xbf, 0xc9, +}; +static const unsigned char kat4189_entropyinpr1[] = { + 0x16, 0x3f, 0xfd, 0x35, 0x22, 0x2e, 0x66, 0xe1, 0x2c, 0x92, 0x05, 0x9f, + 0x7a, 0xc3, 0x85, 0xe5, 0x18, 0xa2, 0xe3, 0x6b, 0xe5, 0x68, 0xdd, 0xab, + 0xe0, 0x62, 0x4d, 0x63, 0x32, 0xa7, 0x51, 0x7b, 0x0f, 0x4d, 0x10, 0x7d, + 0x03, 0xbf, 0xf0, 0x50, 0x13, 0xd8, 0xb3, 0x91, 0xe8, 0xfb, 0x23, 0xe0, +}; +static const unsigned char kat4189_addinpr1[] = { + 0x3f, 0x1c, 0x5d, 0xae, 0x98, 0xa2, 0x49, 0x1b, 0x05, 0xf4, 0x15, 0x70, + 0x01, 0x3d, 0x79, 0x1d, 0x65, 0x57, 0x23, 0xc8, 0x97, 0xf0, 0xc1, 0x5d, + 0xb1, 0x41, 0xf9, 0x5b, 0x3a, 0x93, 0x92, 0x52, 0x91, 0x4a, 0x95, 0xa3, + 0xc0, 0xa1, 0x59, 0x56, 0x54, 0x65, 0xe7, 0x55, 0xa1, 0xd6, 0xbf, 0x20, +}; +static const unsigned char kat4189_entropyinpr2[] = { + 0xc2, 0x7c, 0x6a, 0x23, 0xb8, 0x41, 0xdd, 0xd5, 0xb1, 0x60, 0x36, 0xf0, + 0xce, 0x74, 0x9f, 0x55, 0x51, 0x13, 0xf6, 0xdc, 0x87, 0x9f, 0xce, 0x94, + 0x00, 0x44, 0x84, 0x23, 0xf0, 0x2f, 0x5f, 0xc7, 0xfb, 0xf5, 0x67, 0x7a, + 0x3f, 0x22, 0x93, 0xb3, 0x05, 0x6a, 0x4e, 0x3b, 0xc4, 0x8a, 0xd9, 0xaa, +}; +static const unsigned char kat4189_addinpr2[] = { + 0xa9, 0x78, 0xd7, 0x73, 0x9d, 0xac, 0x7f, 0xa6, 0x83, 0x11, 0x30, 0x23, + 0xbe, 0x1d, 0x97, 0xd3, 0x3f, 0x82, 0x22, 0xbe, 0xfb, 0x74, 0x93, 0x45, + 0x3f, 0xc4, 0xad, 0xbe, 0xe9, 0x77, 0x71, 0x21, 0x3b, 0xb5, 0x99, 0x9f, + 0x92, 0xd4, 0x4a, 0x41, 0x77, 0x1b, 0x43, 0xaf, 0x51, 0xeb, 0x9a, 0x2a, +}; +static const unsigned char kat4189_retbits[] = { + 0x6a, 0x1e, 0x7d, 0x40, 0xf4, 0x5a, 0xda, 0x57, 0xed, 0x82, 0x5d, 0x8a, + 0x74, 0xf8, 0x79, 0x20, 0x60, 0xee, 0x69, 0x06, 0x97, 0x46, 0xd5, 0xc5, + 0xe8, 0x09, 0x6a, 0x5b, 0x0c, 0x7f, 0xf9, 0x6e, 0xdd, 0x03, 0x4c, 0xc0, + 0x8f, 0x2b, 0x46, 0x6d, 0x6f, 0xb4, 0x25, 0x82, 0x21, 0xf6, 0x99, 0x84, + 0x85, 0x52, 0xfa, 0x1b, 0x97, 0xad, 0x2c, 0xa2, 0xcd, 0x99, 0x40, 0xd6, + 0xca, 0x76, 0x92, 0xc6, +}; +static const struct drbg_kat_pr_true kat4189_t = { + 3, kat4189_entropyin, kat4189_nonce, kat4189_persstr, + kat4189_entropyinpr1, kat4189_addinpr1, kat4189_entropyinpr2, + kat4189_addinpr2, kat4189_retbits +}; +static const struct drbg_kat kat4189 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4189_t +}; + +static const unsigned char kat4190_entropyin[] = { + 0xc4, 0xe0, 0x54, 0x97, 0xff, 0xb4, 0x78, 0xfa, 0x71, 0x44, 0x89, 0xb7, + 0xf6, 0x8a, 0xd4, 0x10, 0xb6, 0x2e, 0xa8, 0x23, 0xd2, 0xbf, 0x06, 0x80, + 0xdb, 0xd6, 0x36, 0xc0, 0x2f, 0x79, 0x2b, 0xf3, 0x83, 0x4d, 0xe2, 0x7c, + 0x1e, 0xa8, 0x5b, 0xbb, 0x1b, 0x9a, 0x7c, 0xc7, 0x41, 0xf0, 0xc8, 0xca, +}; +static const unsigned char kat4190_nonce[] = {0}; +static const unsigned char kat4190_persstr[] = { + 0x91, 0xb6, 0xa2, 0xcd, 0xd9, 0xbd, 0xa4, 0x1e, 0xa5, 0x57, 0xe2, 0xb2, + 0x42, 0xf7, 0x68, 0xed, 0x84, 0xa8, 0xc8, 0x20, 0x02, 0xa0, 0x8d, 0xe2, + 0x14, 0x93, 0x4d, 0xb4, 0x82, 0x75, 0x39, 0x3d, 0x08, 0xc4, 0x6d, 0xfc, + 0xdb, 0x4e, 0xc9, 0xd9, 0xf5, 0x82, 0xc6, 0xbb, 0xda, 0x32, 0x16, 0x69, +}; +static const unsigned char kat4190_entropyinpr1[] = { + 0xa5, 0xfd, 0x73, 0x34, 0x3e, 0x0e, 0x9c, 0x87, 0xcc, 0x9d, 0x39, 0xb0, + 0x89, 0x12, 0x05, 0xd4, 0xed, 0xf9, 0x3c, 0xda, 0x0c, 0x7c, 0x8e, 0x76, + 0x41, 0xf7, 0x2b, 0x9d, 0x17, 0xda, 0xea, 0xda, 0x40, 0x6a, 0x20, 0xb5, + 0x4f, 0x56, 0x77, 0x23, 0xb7, 0x53, 0xe9, 0x57, 0x29, 0x8d, 0xa8, 0x32, +}; +static const unsigned char kat4190_addinpr1[] = { + 0x1e, 0xc2, 0x38, 0xcd, 0x11, 0x06, 0x73, 0x76, 0x7a, 0x28, 0xbf, 0xdf, + 0x63, 0xf5, 0x46, 0xa6, 0xcc, 0xe5, 0x3e, 0x92, 0x28, 0xaa, 0x6b, 0x4a, + 0x01, 0x21, 0x87, 0xa4, 0xe8, 0x4d, 0x63, 0x69, 0x91, 0xf1, 0x78, 0x0d, + 0xb3, 0x14, 0xc5, 0x8c, 0xdd, 0x69, 0x08, 0x7f, 0x6e, 0xec, 0x87, 0x60, +}; +static const unsigned char kat4190_entropyinpr2[] = { + 0x4d, 0x8d, 0xeb, 0xd2, 0x33, 0x07, 0x91, 0xc6, 0x6a, 0xf1, 0xd3, 0x75, + 0x61, 0x02, 0x64, 0x4d, 0x5f, 0x3a, 0x2d, 0xb9, 0xbd, 0x7f, 0x6c, 0x11, + 0xba, 0xeb, 0x59, 0x12, 0x73, 0xdb, 0x43, 0xcf, 0x8c, 0x29, 0xed, 0x0c, + 0x51, 0x48, 0x65, 0x15, 0x9e, 0x58, 0x7c, 0xa9, 0x11, 0x75, 0xae, 0xcc, +}; +static const unsigned char kat4190_addinpr2[] = { + 0x96, 0x4f, 0x96, 0x4a, 0x02, 0x3c, 0x81, 0x62, 0x22, 0xeb, 0xb8, 0x03, + 0x09, 0x7b, 0xd7, 0x4a, 0xd6, 0xf2, 0xed, 0x2c, 0xb0, 0x42, 0x65, 0x0c, + 0x5f, 0x30, 0xdf, 0xe5, 0xd2, 0xe2, 0x12, 0x99, 0x03, 0x2e, 0x90, 0xfd, + 0xe7, 0x0c, 0x4a, 0x70, 0x17, 0xeb, 0xa7, 0x35, 0x2f, 0x8f, 0xb6, 0xc7, +}; +static const unsigned char kat4190_retbits[] = { + 0xe6, 0x1b, 0x29, 0xd1, 0x8e, 0x84, 0x18, 0x1e, 0x77, 0xcd, 0x80, 0xdc, + 0xe9, 0xd4, 0x0c, 0xb2, 0x40, 0x89, 0xd2, 0x31, 0x7d, 0x64, 0xbe, 0x7a, + 0xaa, 0x02, 0x61, 0x65, 0x57, 0x95, 0x64, 0xaa, 0x44, 0xe8, 0xf4, 0x7f, + 0xf8, 0x24, 0xdc, 0x5f, 0x26, 0x1c, 0x61, 0x94, 0xac, 0xb2, 0x99, 0xed, + 0xad, 0xc0, 0xad, 0x29, 0x76, 0x7a, 0x35, 0xe0, 0x99, 0xd4, 0x99, 0xf7, + 0x62, 0xe7, 0xc9, 0x13, +}; +static const struct drbg_kat_pr_true kat4190_t = { + 4, kat4190_entropyin, kat4190_nonce, kat4190_persstr, + kat4190_entropyinpr1, kat4190_addinpr1, kat4190_entropyinpr2, + kat4190_addinpr2, kat4190_retbits +}; +static const struct drbg_kat kat4190 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4190_t +}; + +static const unsigned char kat4191_entropyin[] = { + 0xbe, 0x8f, 0xae, 0xa8, 0x7b, 0x75, 0x4c, 0xeb, 0x69, 0x2e, 0x53, 0xcf, + 0x87, 0x1e, 0x79, 0xf3, 0x35, 0xe0, 0x47, 0xf3, 0x1e, 0x08, 0x93, 0x59, + 0x89, 0xdd, 0x4d, 0x38, 0xd0, 0xaf, 0x9c, 0x31, 0xd5, 0xbd, 0xa0, 0x49, + 0xa9, 0x0b, 0x70, 0x5f, 0x51, 0xdc, 0x12, 0xbd, 0xbe, 0xa7, 0x89, 0x36, +}; +static const unsigned char kat4191_nonce[] = {0}; +static const unsigned char kat4191_persstr[] = { + 0x3d, 0x26, 0x14, 0x40, 0x7b, 0xc7, 0xd0, 0xb5, 0xe9, 0x3a, 0x8a, 0xd1, + 0xc4, 0xc6, 0x70, 0xfc, 0x23, 0x9f, 0x47, 0x38, 0x97, 0xe6, 0x72, 0x56, + 0x91, 0xef, 0x4b, 0x10, 0xd0, 0x47, 0xc2, 0x43, 0xc3, 0x2d, 0xcb, 0x28, + 0xd6, 0x2a, 0x89, 0xd4, 0xca, 0xc0, 0x1a, 0xec, 0x4d, 0x28, 0x5f, 0x95, +}; +static const unsigned char kat4191_entropyinpr1[] = { + 0x60, 0x18, 0x9e, 0x52, 0xab, 0x5b, 0x98, 0x55, 0x87, 0x93, 0xa7, 0x53, + 0xc8, 0xc8, 0xf3, 0x60, 0x12, 0x26, 0x19, 0x54, 0xb2, 0x1e, 0xed, 0x99, + 0x65, 0x12, 0xfa, 0xba, 0x0c, 0x61, 0x53, 0x25, 0x8a, 0xd0, 0xbc, 0x68, + 0x44, 0x13, 0x73, 0xf1, 0x75, 0xdf, 0x05, 0x9e, 0x62, 0xcb, 0xe4, 0x66, +}; +static const unsigned char kat4191_addinpr1[] = { + 0xac, 0x98, 0x42, 0x5e, 0xd1, 0xd2, 0x81, 0xb9, 0xf4, 0x8d, 0xfd, 0x1c, + 0x73, 0x69, 0x3e, 0x23, 0x6a, 0x46, 0xe1, 0x23, 0xea, 0xff, 0x21, 0x17, + 0xd0, 0x39, 0xfa, 0x73, 0x7f, 0x4d, 0xb6, 0xe0, 0x64, 0x94, 0x13, 0xed, + 0x97, 0x8f, 0x68, 0xbf, 0x25, 0x6b, 0xa7, 0x34, 0x49, 0x94, 0xd5, 0xc0, +}; +static const unsigned char kat4191_entropyinpr2[] = { + 0x4b, 0xb9, 0xc4, 0x08, 0x2a, 0x72, 0x83, 0xe2, 0x78, 0xd9, 0xf7, 0x94, + 0x18, 0x9a, 0x4f, 0xde, 0xe4, 0xc8, 0x99, 0xc3, 0x73, 0x63, 0x18, 0xb1, + 0xf2, 0x0f, 0x07, 0x40, 0xec, 0x85, 0x3e, 0xba, 0x6e, 0x46, 0xe0, 0xa3, + 0x95, 0x5d, 0xbc, 0x06, 0x6f, 0x54, 0x48, 0x59, 0xa2, 0xc3, 0x49, 0xb3, +}; +static const unsigned char kat4191_addinpr2[] = { + 0x36, 0xdf, 0x34, 0xd1, 0xad, 0x31, 0x01, 0x0e, 0x66, 0xba, 0xc0, 0x49, + 0x27, 0x9a, 0xda, 0x80, 0x55, 0x24, 0xf2, 0x14, 0x32, 0x66, 0x9b, 0xbb, + 0x39, 0x21, 0xa1, 0xd8, 0x6d, 0x48, 0x27, 0x14, 0xf3, 0x77, 0xdb, 0x8a, + 0xe0, 0x92, 0x3a, 0x1a, 0x49, 0xce, 0x92, 0x00, 0x8c, 0xfb, 0xfa, 0x5f, +}; +static const unsigned char kat4191_retbits[] = { + 0x9f, 0x2b, 0xe6, 0xf0, 0x06, 0xaf, 0x6c, 0x50, 0x0a, 0xa3, 0xbc, 0x82, + 0x2a, 0x95, 0xb1, 0x3b, 0x28, 0x6c, 0x55, 0xcb, 0xdf, 0x4f, 0x0a, 0x26, + 0x27, 0x4d, 0x36, 0xbd, 0x1d, 0x2f, 0xf1, 0xb2, 0xd6, 0x96, 0xb6, 0xa8, + 0x73, 0x59, 0x50, 0xfb, 0xa0, 0x1f, 0x4b, 0x88, 0xe5, 0xac, 0x7f, 0x01, + 0xd5, 0xa3, 0xf9, 0x1b, 0x1c, 0xf0, 0xb5, 0x9a, 0x26, 0xed, 0x50, 0x5f, + 0xe0, 0xb1, 0xd6, 0x06, +}; +static const struct drbg_kat_pr_true kat4191_t = { + 5, kat4191_entropyin, kat4191_nonce, kat4191_persstr, + kat4191_entropyinpr1, kat4191_addinpr1, kat4191_entropyinpr2, + kat4191_addinpr2, kat4191_retbits +}; +static const struct drbg_kat kat4191 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4191_t +}; + +static const unsigned char kat4192_entropyin[] = { + 0x61, 0x11, 0x43, 0x35, 0xae, 0xbc, 0xc3, 0x63, 0x84, 0xe5, 0xd1, 0x38, + 0x42, 0x7a, 0xa4, 0xdc, 0xdc, 0xb0, 0x14, 0x5b, 0x9c, 0x69, 0xc5, 0x81, + 0x96, 0xbd, 0x31, 0x7b, 0x9a, 0x6f, 0x9e, 0x10, 0x83, 0x2e, 0x31, 0xa2, + 0xb6, 0x61, 0xe0, 0x4e, 0xdc, 0x49, 0xc6, 0xb0, 0x8a, 0xc0, 0xd2, 0x17, +}; +static const unsigned char kat4192_nonce[] = {0}; +static const unsigned char kat4192_persstr[] = { + 0xd7, 0x77, 0x23, 0x6d, 0x2f, 0x46, 0x36, 0x0b, 0xb7, 0x79, 0xc8, 0x24, + 0x98, 0xe8, 0x59, 0xd1, 0xaa, 0x29, 0x02, 0xb6, 0x7c, 0x9c, 0x01, 0x46, + 0x28, 0xc5, 0xa4, 0x17, 0x8e, 0xe7, 0x70, 0x6e, 0x7c, 0x60, 0x5b, 0x03, + 0xe4, 0x56, 0xe1, 0xf7, 0xe5, 0xc6, 0x16, 0xe6, 0xf7, 0x8b, 0x98, 0xa7, +}; +static const unsigned char kat4192_entropyinpr1[] = { + 0x87, 0x3d, 0x0c, 0xec, 0xf1, 0x2c, 0x64, 0x6c, 0x0d, 0x8b, 0x4e, 0x94, + 0x2a, 0xd7, 0xe4, 0x29, 0x35, 0xe1, 0xb9, 0xee, 0xf0, 0x67, 0x30, 0x1d, + 0x3b, 0x79, 0xf2, 0x0a, 0x48, 0xc5, 0xab, 0xa4, 0xf2, 0x2c, 0xaf, 0xf6, + 0xce, 0x0b, 0xcb, 0x0b, 0x49, 0xfc, 0xfe, 0x32, 0x6d, 0xe3, 0x9c, 0x57, +}; +static const unsigned char kat4192_addinpr1[] = { + 0x74, 0xe3, 0x91, 0x6a, 0x67, 0xc1, 0x04, 0xfe, 0xe0, 0xc9, 0x96, 0xcc, + 0xe1, 0x46, 0x8c, 0xb6, 0x0c, 0xcf, 0xfd, 0x33, 0xfb, 0x4a, 0x20, 0x30, + 0xcc, 0xba, 0xb1, 0x3b, 0x78, 0x4a, 0xd0, 0xf9, 0xf5, 0x16, 0x90, 0x05, + 0xec, 0xb4, 0x0d, 0x72, 0xcd, 0xbc, 0xd3, 0xb6, 0x5a, 0x2b, 0xa4, 0xcf, +}; +static const unsigned char kat4192_entropyinpr2[] = { + 0xe6, 0x09, 0x39, 0x1f, 0x0d, 0x74, 0x0f, 0xb5, 0xa0, 0xf1, 0xd4, 0x28, + 0x88, 0x38, 0x49, 0x26, 0xdb, 0x15, 0xe8, 0x34, 0xa2, 0x65, 0x4b, 0x36, + 0x81, 0x0b, 0xf5, 0x8a, 0x29, 0x34, 0xe0, 0x6d, 0x4f, 0x87, 0xa8, 0x7d, + 0x8e, 0x6d, 0xee, 0x98, 0x3e, 0x73, 0x3c, 0x34, 0xf3, 0xe4, 0x49, 0xf4, +}; +static const unsigned char kat4192_addinpr2[] = { + 0x13, 0xcb, 0xf6, 0x88, 0xf4, 0x62, 0xf8, 0xe9, 0xa8, 0x43, 0x7b, 0x17, + 0x42, 0x94, 0x3c, 0xb4, 0x47, 0x5f, 0x00, 0x0d, 0x29, 0xe5, 0x32, 0x63, + 0x66, 0x54, 0xee, 0x1d, 0xb2, 0xa5, 0x3a, 0x9f, 0xde, 0xd6, 0xda, 0x8d, + 0x20, 0x24, 0x02, 0x03, 0xb2, 0xf8, 0x74, 0xe4, 0xd1, 0xa9, 0x28, 0x3c, +}; +static const unsigned char kat4192_retbits[] = { + 0x20, 0xf3, 0x01, 0xc0, 0xfd, 0x19, 0x5f, 0xfb, 0x29, 0x5d, 0x99, 0xa3, + 0x3c, 0x8e, 0x70, 0x24, 0x29, 0xbf, 0xde, 0x14, 0x0c, 0xf1, 0xc8, 0xfd, + 0xa1, 0xba, 0x58, 0x81, 0xe0, 0x2a, 0x34, 0xe7, 0x66, 0xd9, 0xe2, 0xc0, + 0xa5, 0x00, 0x9b, 0xb1, 0x2f, 0x7d, 0x03, 0x11, 0x57, 0x1c, 0xc6, 0xe4, + 0x29, 0x84, 0xc0, 0xa9, 0x4f, 0x98, 0x4a, 0x7d, 0xc2, 0xd5, 0x97, 0xed, + 0x7a, 0x9e, 0x0d, 0x53, +}; +static const struct drbg_kat_pr_true kat4192_t = { + 6, kat4192_entropyin, kat4192_nonce, kat4192_persstr, + kat4192_entropyinpr1, kat4192_addinpr1, kat4192_entropyinpr2, + kat4192_addinpr2, kat4192_retbits +}; +static const struct drbg_kat kat4192 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4192_t +}; + +static const unsigned char kat4193_entropyin[] = { + 0x22, 0x5d, 0x9c, 0x79, 0xe5, 0x23, 0xbd, 0xd0, 0x0e, 0x8c, 0x00, 0x68, + 0x14, 0x9d, 0x02, 0x9e, 0x60, 0xaa, 0xe0, 0x69, 0x8f, 0xf0, 0x70, 0xb3, + 0xf2, 0xf4, 0x10, 0x67, 0xc7, 0x7b, 0x1e, 0x39, 0xca, 0x42, 0x53, 0x37, + 0x20, 0x46, 0x83, 0xc4, 0x1a, 0x9d, 0xdd, 0xd3, 0x41, 0x1a, 0x17, 0xe2, +}; +static const unsigned char kat4193_nonce[] = {0}; +static const unsigned char kat4193_persstr[] = { + 0xe5, 0xf2, 0x04, 0x67, 0xce, 0x53, 0x66, 0xc9, 0xbf, 0xae, 0x26, 0x64, + 0xc4, 0x19, 0x25, 0xaf, 0xa3, 0x35, 0x4a, 0x7d, 0x2a, 0xf7, 0x67, 0x9e, + 0x6f, 0xd6, 0xc5, 0x30, 0xd6, 0xb2, 0xfa, 0x4c, 0xd1, 0xcb, 0x1c, 0x29, + 0xc6, 0xc4, 0xa5, 0xf0, 0xc0, 0x45, 0xea, 0x7a, 0x6f, 0x9a, 0x3f, 0x42, +}; +static const unsigned char kat4193_entropyinpr1[] = { + 0x5b, 0x75, 0x6a, 0x6e, 0x48, 0xe6, 0x59, 0x68, 0x18, 0xb1, 0x17, 0x15, + 0xcb, 0x4f, 0x0b, 0x86, 0xd5, 0xb6, 0xcd, 0x4b, 0xf2, 0xcb, 0x13, 0xf7, + 0xab, 0x5b, 0xc4, 0x6f, 0x04, 0xfa, 0xab, 0x9d, 0x76, 0xd9, 0xd6, 0x8d, + 0xf0, 0x06, 0x13, 0x9e, 0xaa, 0x54, 0x6e, 0x79, 0x61, 0x0d, 0x66, 0x56, +}; +static const unsigned char kat4193_addinpr1[] = { + 0x05, 0x55, 0x39, 0x45, 0x02, 0xb2, 0x81, 0x6e, 0x18, 0xc9, 0x12, 0x2a, + 0xa4, 0xd2, 0xb3, 0xf8, 0x8f, 0xfd, 0x21, 0xbb, 0x1c, 0xf8, 0x10, 0x6a, + 0x06, 0x52, 0xeb, 0xa2, 0x71, 0xa7, 0xf6, 0x68, 0x50, 0xfd, 0xb0, 0x45, + 0x9a, 0xbc, 0xd2, 0xbe, 0x7b, 0xff, 0x85, 0x53, 0x61, 0x70, 0x49, 0x74, +}; +static const unsigned char kat4193_entropyinpr2[] = { + 0x1b, 0x9a, 0x50, 0x5d, 0x1d, 0xcc, 0x4b, 0xea, 0xd7, 0xb9, 0xef, 0x94, + 0xc2, 0x11, 0x8b, 0x15, 0xff, 0x6f, 0x82, 0x71, 0xc5, 0x49, 0xb9, 0x99, + 0xd4, 0xf2, 0x29, 0x7f, 0xf9, 0x73, 0x18, 0x1e, 0x4d, 0xc8, 0x14, 0x8b, + 0xa2, 0x4c, 0xb4, 0xaa, 0x41, 0x33, 0x8e, 0x48, 0xe2, 0x87, 0xdd, 0x45, +}; +static const unsigned char kat4193_addinpr2[] = { + 0xa6, 0xef, 0xcd, 0x20, 0xc0, 0x08, 0xd3, 0xba, 0x7b, 0x32, 0x2c, 0xe4, + 0x88, 0x58, 0xb9, 0x46, 0xdd, 0x4a, 0x5a, 0x36, 0x91, 0xd5, 0xe3, 0x8b, + 0xfd, 0xaa, 0x56, 0x44, 0x2a, 0xac, 0x0c, 0xd7, 0x88, 0x6c, 0x31, 0x3a, + 0x82, 0x9a, 0x8f, 0xb5, 0x6f, 0x70, 0xa4, 0x4d, 0x4f, 0x83, 0x5d, 0x7b, +}; +static const unsigned char kat4193_retbits[] = { + 0x1f, 0x86, 0x66, 0x10, 0xdd, 0x2b, 0x16, 0xf0, 0x56, 0x94, 0xf3, 0x99, + 0xee, 0x8a, 0x3c, 0x86, 0x7c, 0x5c, 0x7e, 0x76, 0x61, 0xad, 0xf1, 0xf4, + 0x5b, 0xeb, 0x90, 0x95, 0xc4, 0x30, 0xa1, 0x5c, 0xcf, 0x04, 0x3f, 0xfd, + 0x99, 0x54, 0x7c, 0x08, 0x74, 0x2f, 0x78, 0x6d, 0xaa, 0x95, 0xb8, 0xfb, + 0x6d, 0xac, 0xc3, 0x87, 0xd8, 0xba, 0x55, 0xf6, 0x6a, 0x8c, 0x6c, 0xe7, + 0x43, 0x79, 0x63, 0xbf, +}; +static const struct drbg_kat_pr_true kat4193_t = { + 7, kat4193_entropyin, kat4193_nonce, kat4193_persstr, + kat4193_entropyinpr1, kat4193_addinpr1, kat4193_entropyinpr2, + kat4193_addinpr2, kat4193_retbits +}; +static const struct drbg_kat kat4193 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4193_t +}; + +static const unsigned char kat4194_entropyin[] = { + 0x02, 0xc1, 0x6a, 0x91, 0x31, 0xe9, 0x4b, 0x54, 0xe3, 0xc3, 0xfa, 0x3d, + 0x0a, 0xde, 0x4e, 0xc0, 0x48, 0xbe, 0xc0, 0x4b, 0x88, 0x9b, 0x0e, 0x7b, + 0xe8, 0x0c, 0x98, 0x8f, 0x6f, 0xdd, 0x99, 0x93, 0x71, 0xcd, 0x06, 0xba, + 0x63, 0xac, 0x19, 0x45, 0x80, 0xeb, 0x49, 0x07, 0xff, 0x23, 0x23, 0xd9, +}; +static const unsigned char kat4194_nonce[] = {0}; +static const unsigned char kat4194_persstr[] = { + 0x44, 0xec, 0x0b, 0x63, 0x3c, 0x94, 0x45, 0xb1, 0xba, 0xb8, 0xbd, 0x77, + 0xfa, 0x5b, 0x78, 0x60, 0x6e, 0xa4, 0xf4, 0xb1, 0x59, 0x2e, 0xfe, 0xb0, + 0xed, 0xbd, 0x80, 0x4a, 0xfb, 0x3a, 0xa4, 0xf4, 0x5f, 0xab, 0x26, 0x0f, + 0x58, 0x38, 0x5e, 0xb4, 0x41, 0xbf, 0x32, 0x32, 0x70, 0x6e, 0xfc, 0x07, +}; +static const unsigned char kat4194_entropyinpr1[] = { + 0x0a, 0x5c, 0xf8, 0x56, 0xed, 0xce, 0x7f, 0x73, 0xbc, 0x1a, 0x28, 0x7e, + 0x1d, 0xd4, 0x96, 0x4d, 0x9c, 0x75, 0x35, 0x99, 0x3a, 0xad, 0xc0, 0x61, + 0x24, 0xc8, 0x70, 0x67, 0x3c, 0xf9, 0xa2, 0x4f, 0xc9, 0x71, 0x2d, 0x5d, + 0x0c, 0x9e, 0x0e, 0x53, 0xaf, 0xee, 0x47, 0x23, 0xd4, 0xec, 0xac, 0xef, +}; +static const unsigned char kat4194_addinpr1[] = { + 0x70, 0x07, 0x76, 0x00, 0x13, 0x1a, 0xa1, 0x16, 0xb3, 0xf6, 0xe8, 0x01, + 0xf4, 0x2f, 0xfb, 0xb5, 0x3a, 0x32, 0x53, 0xcb, 0x10, 0x4a, 0xb5, 0xc1, + 0x09, 0x88, 0xfe, 0xb0, 0x09, 0xb6, 0x4f, 0xac, 0x88, 0xd4, 0xa3, 0x85, + 0xd9, 0xb6, 0xc0, 0x43, 0x91, 0x02, 0x51, 0x84, 0x32, 0x73, 0xca, 0x97, +}; +static const unsigned char kat4194_entropyinpr2[] = { + 0xd4, 0x76, 0x40, 0x94, 0x07, 0x2f, 0x19, 0xc5, 0xd0, 0xad, 0x86, 0x68, + 0x28, 0x04, 0xa3, 0x63, 0xb1, 0x12, 0xe6, 0x1d, 0x06, 0x12, 0xc4, 0x3a, + 0x61, 0x28, 0xb3, 0x52, 0xc5, 0x42, 0x2b, 0xec, 0xd2, 0x3d, 0x6c, 0x89, + 0x24, 0xbe, 0x3f, 0x84, 0x21, 0x97, 0xda, 0x46, 0xfc, 0x63, 0x71, 0x87, +}; +static const unsigned char kat4194_addinpr2[] = { + 0xde, 0x61, 0x35, 0x4e, 0x2f, 0x6a, 0x67, 0xc7, 0x31, 0xc1, 0xf6, 0xaf, + 0x74, 0x05, 0x47, 0xbc, 0x1b, 0xa3, 0x3c, 0xd3, 0x51, 0x19, 0x56, 0x01, + 0xde, 0x0c, 0x8b, 0x3e, 0x20, 0xdd, 0x8e, 0xf1, 0x31, 0x00, 0x74, 0x01, + 0xf6, 0x05, 0xc2, 0x9f, 0x07, 0xc3, 0xe4, 0x6e, 0x37, 0x5c, 0x1b, 0xa3, +}; +static const unsigned char kat4194_retbits[] = { + 0x77, 0x9d, 0xa8, 0xdb, 0x95, 0x8b, 0xa4, 0x8e, 0x26, 0x67, 0x20, 0x52, + 0xd3, 0x24, 0x0a, 0x0f, 0x9c, 0x0f, 0x10, 0x34, 0xd3, 0xb6, 0x0a, 0x8a, + 0xfb, 0x6b, 0x87, 0xd1, 0x8f, 0x6e, 0x85, 0xee, 0xf8, 0x75, 0x3e, 0xaf, + 0xb0, 0xa0, 0x54, 0xea, 0xa0, 0xfd, 0x58, 0x8f, 0x9b, 0x21, 0x08, 0x63, + 0x1f, 0x88, 0x3b, 0x86, 0xdd, 0x36, 0xf4, 0x27, 0x48, 0xbc, 0x6d, 0xa2, + 0xf6, 0x8f, 0xac, 0xe5, +}; +static const struct drbg_kat_pr_true kat4194_t = { + 8, kat4194_entropyin, kat4194_nonce, kat4194_persstr, + kat4194_entropyinpr1, kat4194_addinpr1, kat4194_entropyinpr2, + kat4194_addinpr2, kat4194_retbits +}; +static const struct drbg_kat kat4194 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4194_t +}; + +static const unsigned char kat4195_entropyin[] = { + 0x17, 0x14, 0xb2, 0xa5, 0xac, 0x2f, 0xf3, 0x34, 0xbe, 0x79, 0x9c, 0x11, + 0xd0, 0xa5, 0x8d, 0xa5, 0xf0, 0x52, 0x22, 0x75, 0xf5, 0x36, 0x8b, 0x1d, + 0xf7, 0xb6, 0x04, 0x55, 0xa0, 0x85, 0x6c, 0x56, 0x9d, 0xe1, 0x80, 0x2f, + 0x6a, 0xb9, 0x3e, 0xdf, 0xa8, 0x11, 0x3d, 0x8b, 0x69, 0x72, 0x20, 0x92, +}; +static const unsigned char kat4195_nonce[] = {0}; +static const unsigned char kat4195_persstr[] = { + 0xfd, 0x5a, 0xe2, 0x08, 0x72, 0xe3, 0xff, 0x5d, 0x77, 0x07, 0xee, 0x47, + 0xc5, 0x0c, 0x46, 0x4e, 0x8d, 0x2a, 0xdd, 0x8f, 0xbb, 0x8b, 0xdd, 0x86, + 0xfa, 0xa9, 0x61, 0x1f, 0x83, 0xa5, 0xaf, 0xed, 0xfd, 0xc7, 0xe3, 0x06, + 0xf4, 0x5a, 0x13, 0xcf, 0x84, 0x30, 0x42, 0xd5, 0xcf, 0xc7, 0xd4, 0xf4, +}; +static const unsigned char kat4195_entropyinpr1[] = { + 0x12, 0xf2, 0x15, 0x85, 0x57, 0xef, 0x00, 0x22, 0x8f, 0x0e, 0xf0, 0x81, + 0x1c, 0xa7, 0x76, 0x10, 0x44, 0x98, 0x02, 0xe6, 0x65, 0x18, 0x10, 0xbe, + 0x82, 0x76, 0x36, 0x98, 0x2d, 0xec, 0x48, 0xb0, 0x7b, 0xd8, 0x0e, 0x1f, + 0x4f, 0xf0, 0x61, 0x07, 0xb8, 0x6e, 0x57, 0xfa, 0x23, 0x08, 0xdf, 0x81, +}; +static const unsigned char kat4195_addinpr1[] = { + 0x3d, 0x44, 0x20, 0x2a, 0xc4, 0x7e, 0xcd, 0x11, 0x67, 0x25, 0x31, 0x86, + 0x44, 0x4b, 0x86, 0xdd, 0x7e, 0x1f, 0x2e, 0x05, 0x6c, 0x1e, 0xdd, 0x28, + 0xe9, 0x9e, 0xc1, 0x07, 0xbd, 0x8a, 0xb1, 0x8c, 0x30, 0x20, 0x5f, 0x9e, + 0xa8, 0x26, 0xa8, 0xfe, 0x1e, 0xde, 0xa2, 0xa1, 0xba, 0x31, 0xeb, 0xa3, +}; +static const unsigned char kat4195_entropyinpr2[] = { + 0x4c, 0xea, 0x17, 0x14, 0xc0, 0x06, 0xcc, 0x73, 0x3d, 0x90, 0xf7, 0xf8, + 0x83, 0x54, 0x6f, 0x2d, 0x56, 0x2b, 0xa0, 0x97, 0xc3, 0x94, 0xa7, 0x76, + 0x62, 0xfb, 0x38, 0xaf, 0x4d, 0x6d, 0xf5, 0x19, 0x38, 0xa2, 0x21, 0xf5, + 0xfe, 0x21, 0xbb, 0x18, 0x1b, 0x38, 0x57, 0x59, 0x2d, 0xae, 0x40, 0x5d, +}; +static const unsigned char kat4195_addinpr2[] = { + 0xaa, 0xe5, 0xaf, 0x80, 0x63, 0x7e, 0xd0, 0xf3, 0x8d, 0xd6, 0x24, 0x3f, + 0xda, 0x51, 0x97, 0xb1, 0x09, 0x4c, 0xda, 0x77, 0xf6, 0x6a, 0xe5, 0xd2, + 0x7d, 0x33, 0x65, 0xd3, 0x34, 0x0d, 0xbb, 0xcf, 0xe3, 0xb3, 0x26, 0x40, + 0xd6, 0x8c, 0x13, 0x27, 0x74, 0x98, 0x75, 0x87, 0x7f, 0xfb, 0x19, 0x0b, +}; +static const unsigned char kat4195_retbits[] = { + 0x20, 0xf1, 0xab, 0x1c, 0xf8, 0xb1, 0x48, 0x5d, 0xce, 0x9a, 0x6f, 0x44, + 0x95, 0x74, 0x19, 0xef, 0xd2, 0x17, 0xff, 0x24, 0xf6, 0x6e, 0x8d, 0xce, + 0xdd, 0xa7, 0x27, 0x00, 0xde, 0xf4, 0xfc, 0xbf, 0x75, 0x75, 0x15, 0x39, + 0x57, 0xa0, 0xb7, 0x2f, 0x8e, 0x4a, 0x0b, 0xd0, 0xd1, 0xf5, 0x4c, 0xe4, + 0xe1, 0x32, 0xc2, 0xc8, 0xf7, 0x57, 0x60, 0xc8, 0x5d, 0xf6, 0x90, 0x2d, + 0x9f, 0x68, 0xd2, 0x0a, +}; +static const struct drbg_kat_pr_true kat4195_t = { + 9, kat4195_entropyin, kat4195_nonce, kat4195_persstr, + kat4195_entropyinpr1, kat4195_addinpr1, kat4195_entropyinpr2, + kat4195_addinpr2, kat4195_retbits +}; +static const struct drbg_kat kat4195 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4195_t +}; + +static const unsigned char kat4196_entropyin[] = { + 0x8c, 0x33, 0x95, 0xfe, 0x3b, 0xb4, 0xf9, 0xf1, 0xa7, 0x34, 0xab, 0x19, + 0x78, 0xf5, 0x55, 0x8a, 0x9b, 0xc9, 0xfe, 0x37, 0xb4, 0xf1, 0x0f, 0x6e, + 0x03, 0x8e, 0x8c, 0x7a, 0x9a, 0xc3, 0xd5, 0x7f, 0xba, 0xb8, 0x38, 0xdb, + 0xab, 0x44, 0x31, 0x46, 0x90, 0x0c, 0x21, 0xae, 0x5a, 0x50, 0x28, 0xd6, +}; +static const unsigned char kat4196_nonce[] = {0}; +static const unsigned char kat4196_persstr[] = { + 0x41, 0x51, 0x16, 0xcb, 0x46, 0x2b, 0xd9, 0xda, 0x97, 0x54, 0x20, 0x1c, + 0xf9, 0x73, 0xfe, 0xec, 0x65, 0x0e, 0xee, 0xd3, 0x63, 0xab, 0x69, 0x48, + 0xc1, 0x4f, 0xbb, 0x47, 0xa4, 0x27, 0xab, 0xb6, 0xd8, 0xe8, 0x77, 0x90, + 0x8a, 0xa2, 0x04, 0xac, 0x1f, 0x4d, 0xad, 0xa2, 0x29, 0x55, 0xda, 0x76, +}; +static const unsigned char kat4196_entropyinpr1[] = { + 0x34, 0xea, 0xd7, 0xc1, 0x95, 0xf3, 0x18, 0x52, 0xee, 0x64, 0xad, 0xed, + 0x13, 0x0c, 0xa8, 0xb7, 0x32, 0xc9, 0x32, 0x23, 0x54, 0xd3, 0x6d, 0x90, + 0x18, 0xd4, 0xd6, 0x2b, 0xd1, 0x62, 0xe2, 0xa6, 0x2f, 0x7a, 0x97, 0x07, + 0x00, 0xdd, 0xb8, 0xe1, 0x1c, 0x0a, 0xef, 0x34, 0xa9, 0x71, 0x5d, 0xb8, +}; +static const unsigned char kat4196_addinpr1[] = { + 0x01, 0xfb, 0xf4, 0x13, 0x09, 0x7f, 0x7d, 0x9c, 0x70, 0xfa, 0xa7, 0xa0, + 0x2a, 0x85, 0x3c, 0xbe, 0x94, 0xd0, 0xb5, 0x6d, 0x49, 0x26, 0x56, 0xb7, + 0xed, 0x4d, 0xc6, 0xb0, 0x53, 0x25, 0x55, 0x95, 0x76, 0xe8, 0x01, 0x49, + 0xd8, 0xca, 0xd9, 0x81, 0x4f, 0xa7, 0x66, 0x59, 0xe0, 0x65, 0x79, 0x63, +}; +static const unsigned char kat4196_entropyinpr2[] = { + 0x8c, 0x46, 0xd9, 0x71, 0xdf, 0x47, 0x38, 0xb8, 0xfe, 0xd6, 0x87, 0x3f, + 0x26, 0xb1, 0xf8, 0x6f, 0x83, 0xc5, 0x9a, 0xb5, 0xd0, 0xc6, 0xb1, 0xee, + 0x86, 0x62, 0xaa, 0xd2, 0x11, 0x2b, 0x51, 0x9c, 0x20, 0x11, 0x81, 0x58, + 0x34, 0x3f, 0x86, 0xb9, 0x19, 0x9d, 0xb2, 0x4f, 0x0d, 0x41, 0x19, 0xa4, +}; +static const unsigned char kat4196_addinpr2[] = { + 0xae, 0x1a, 0xc4, 0x1b, 0x33, 0x77, 0xa8, 0x65, 0x1f, 0xb9, 0x32, 0xbf, + 0xe8, 0x6b, 0xd9, 0x68, 0xac, 0x87, 0xbe, 0x18, 0x3f, 0xcd, 0xb0, 0x77, + 0xc2, 0x42, 0xa6, 0xf8, 0x22, 0xba, 0xe3, 0x25, 0x4b, 0x40, 0xda, 0xfa, + 0x61, 0x0f, 0xc7, 0xec, 0xa6, 0x80, 0xe1, 0xd2, 0xc0, 0x48, 0x07, 0x05, +}; +static const unsigned char kat4196_retbits[] = { + 0x17, 0xf8, 0xc9, 0x97, 0x7c, 0x00, 0xff, 0xc7, 0x25, 0x55, 0xb5, 0x9c, + 0x25, 0x59, 0xcc, 0xf8, 0xaa, 0xbe, 0xfe, 0xaf, 0xde, 0x4c, 0x17, 0x86, + 0x31, 0xee, 0x7b, 0x27, 0x3a, 0xb5, 0xf7, 0xc7, 0x8b, 0xcd, 0x32, 0x7a, + 0xb8, 0xcd, 0xc5, 0xb1, 0xba, 0xcd, 0x61, 0x4f, 0xe2, 0xf2, 0x80, 0x1b, + 0x4f, 0x31, 0x3d, 0x71, 0xc3, 0xf9, 0x25, 0x2f, 0xbc, 0x2e, 0xfe, 0xdc, + 0xb0, 0xf2, 0xe2, 0xd3, +}; +static const struct drbg_kat_pr_true kat4196_t = { + 10, kat4196_entropyin, kat4196_nonce, kat4196_persstr, + kat4196_entropyinpr1, kat4196_addinpr1, kat4196_entropyinpr2, + kat4196_addinpr2, kat4196_retbits +}; +static const struct drbg_kat kat4196 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4196_t +}; + +static const unsigned char kat4197_entropyin[] = { + 0x25, 0x3e, 0x90, 0x0f, 0x26, 0xa0, 0x92, 0x3f, 0xce, 0x00, 0x63, 0x5b, + 0x54, 0x1c, 0x4c, 0xa0, 0x58, 0x76, 0xa3, 0x77, 0x45, 0x0f, 0x34, 0x20, + 0xba, 0x6f, 0x55, 0x2d, 0x24, 0x5a, 0x96, 0x33, 0x4b, 0x5b, 0x0f, 0x67, + 0xf4, 0x25, 0x1a, 0xb4, 0x02, 0x55, 0xea, 0x4d, 0x18, 0x31, 0x2b, 0x94, +}; +static const unsigned char kat4197_nonce[] = {0}; +static const unsigned char kat4197_persstr[] = { + 0x8b, 0x3e, 0x45, 0xf7, 0x71, 0x28, 0xd8, 0xa7, 0x7f, 0x4b, 0xd5, 0x61, + 0x36, 0xb0, 0xda, 0xc5, 0xb4, 0x53, 0x2a, 0xa4, 0x32, 0x75, 0x8f, 0x70, + 0xd9, 0x65, 0xfb, 0x39, 0x65, 0x3b, 0x14, 0xc3, 0x5c, 0x09, 0x60, 0x05, + 0xc9, 0x29, 0x6b, 0x9a, 0x2c, 0x7e, 0xf8, 0x48, 0x96, 0x43, 0xcc, 0x76, +}; +static const unsigned char kat4197_entropyinpr1[] = { + 0x93, 0x1f, 0xcc, 0x33, 0xf2, 0xc1, 0x4d, 0x53, 0x86, 0x2b, 0x71, 0xc2, + 0x28, 0xa6, 0x2a, 0x13, 0x41, 0x82, 0xe1, 0x39, 0xc6, 0xfc, 0x46, 0x7d, + 0x35, 0x8d, 0x52, 0x6a, 0x15, 0x33, 0x2e, 0xe6, 0x74, 0xdd, 0x92, 0xf6, + 0xbd, 0x3b, 0xa8, 0xbc, 0x23, 0x41, 0x4d, 0x2c, 0x9e, 0x51, 0xac, 0xd8, +}; +static const unsigned char kat4197_addinpr1[] = { + 0x15, 0x93, 0x4d, 0x26, 0xa5, 0x87, 0x72, 0x06, 0x95, 0xae, 0xb6, 0xff, + 0xf1, 0x66, 0x72, 0x28, 0x2e, 0x60, 0x4d, 0xe5, 0x9a, 0x29, 0x21, 0xf7, + 0x14, 0x99, 0x1f, 0xa4, 0x28, 0x77, 0x33, 0xd1, 0x9a, 0x04, 0x56, 0xdc, + 0x61, 0xb4, 0x17, 0xfe, 0x8d, 0x29, 0xd8, 0x34, 0x9e, 0x2b, 0x1e, 0xb7, +}; +static const unsigned char kat4197_entropyinpr2[] = { + 0x29, 0x3e, 0x57, 0x97, 0x3e, 0xe8, 0x4e, 0xad, 0x21, 0x6b, 0x02, 0xd1, + 0x7c, 0x6f, 0xc0, 0x74, 0xa9, 0x7d, 0xff, 0x7d, 0xe3, 0x56, 0x16, 0x64, + 0x9b, 0x9b, 0x5f, 0xf3, 0xf9, 0x5c, 0x05, 0x09, 0xd4, 0x8e, 0xf0, 0x02, + 0x94, 0x3c, 0x45, 0x33, 0x94, 0x99, 0x7f, 0x02, 0x1e, 0xe7, 0xc9, 0x30, +}; +static const unsigned char kat4197_addinpr2[] = { + 0x2f, 0x0b, 0xa5, 0x40, 0x7d, 0x39, 0x51, 0x25, 0x45, 0xc4, 0x8f, 0xbc, + 0x1e, 0x34, 0x5a, 0xf2, 0x6d, 0x35, 0x60, 0x5b, 0xe2, 0x8f, 0x46, 0xd0, + 0xbc, 0xe6, 0x4d, 0x98, 0xc8, 0xdb, 0x72, 0x3b, 0xe2, 0xbd, 0x4a, 0xa0, + 0x88, 0x0f, 0x2b, 0x8f, 0xc5, 0xc1, 0xe3, 0x59, 0x71, 0x40, 0x58, 0xd9, +}; +static const unsigned char kat4197_retbits[] = { + 0xa9, 0x57, 0x8c, 0x2f, 0x26, 0xe9, 0xbc, 0xc6, 0x87, 0xe0, 0xfc, 0x7a, + 0x7f, 0x13, 0x5a, 0xda, 0x10, 0x9f, 0xfb, 0x64, 0x2a, 0x7c, 0x9e, 0x9d, + 0x39, 0x35, 0x52, 0xde, 0xcc, 0xcd, 0x3d, 0xfb, 0x72, 0x5f, 0xe7, 0x92, + 0x30, 0x4e, 0x8a, 0x11, 0x62, 0x11, 0xd3, 0xd5, 0x05, 0x65, 0xb6, 0xfe, + 0xc5, 0x65, 0x6e, 0xc3, 0x15, 0x8d, 0xb5, 0xf5, 0x16, 0x4e, 0xf2, 0xf5, + 0x85, 0x13, 0xd4, 0x12, +}; +static const struct drbg_kat_pr_true kat4197_t = { + 11, kat4197_entropyin, kat4197_nonce, kat4197_persstr, + kat4197_entropyinpr1, kat4197_addinpr1, kat4197_entropyinpr2, + kat4197_addinpr2, kat4197_retbits +}; +static const struct drbg_kat kat4197 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4197_t +}; + +static const unsigned char kat4198_entropyin[] = { + 0xc4, 0xb6, 0x07, 0x8d, 0xd2, 0x8f, 0x9f, 0x35, 0xf1, 0x3e, 0xcf, 0x61, + 0x6a, 0x50, 0x77, 0x71, 0x40, 0xa8, 0x10, 0x4b, 0xe2, 0x01, 0x50, 0x2e, + 0x4d, 0x71, 0x77, 0xed, 0x72, 0xcb, 0x99, 0x5c, 0xe5, 0xd5, 0x6b, 0x25, + 0x93, 0x58, 0x2b, 0x92, 0x6d, 0x09, 0xb9, 0x0a, 0x3c, 0x90, 0x4c, 0x73, +}; +static const unsigned char kat4198_nonce[] = {0}; +static const unsigned char kat4198_persstr[] = { + 0x47, 0xa8, 0x9c, 0xef, 0x4b, 0x84, 0x26, 0xbe, 0x9f, 0x7f, 0x8b, 0xd9, + 0x63, 0x5c, 0x84, 0xbd, 0xba, 0x28, 0x83, 0x1c, 0x67, 0xac, 0xec, 0x41, + 0xef, 0xcf, 0x72, 0x5b, 0x8a, 0x04, 0xe8, 0xc5, 0x4d, 0x10, 0xb6, 0x12, + 0x28, 0xb5, 0x23, 0x4a, 0x33, 0x04, 0xb0, 0x2b, 0xb7, 0x0a, 0x4e, 0x7f, +}; +static const unsigned char kat4198_entropyinpr1[] = { + 0x06, 0x07, 0x03, 0xff, 0x30, 0xd4, 0xee, 0x8c, 0xc5, 0xd6, 0x14, 0xdc, + 0x79, 0x6d, 0x3c, 0xab, 0xba, 0xbe, 0x4c, 0xe2, 0xf6, 0xfa, 0x8d, 0x03, + 0xf9, 0x0b, 0x7f, 0xfe, 0xc6, 0x2e, 0xb9, 0x78, 0xab, 0xd0, 0x97, 0x3e, + 0xed, 0x32, 0xcf, 0x99, 0xf6, 0x1c, 0xbc, 0x79, 0xff, 0xd4, 0x66, 0x29, +}; +static const unsigned char kat4198_addinpr1[] = { + 0x19, 0x5a, 0xa7, 0xc8, 0xc5, 0xf1, 0x2c, 0x42, 0x21, 0xa8, 0x81, 0xfd, + 0x4e, 0x8c, 0xad, 0xc5, 0x6a, 0x77, 0xb9, 0x08, 0xf2, 0x15, 0x30, 0x3d, + 0x7c, 0x0d, 0x07, 0xf6, 0xce, 0xa9, 0x05, 0x60, 0x98, 0x27, 0x37, 0xed, + 0x7b, 0xbf, 0x43, 0x4e, 0x40, 0x76, 0x91, 0xcf, 0x09, 0x29, 0x33, 0x02, +}; +static const unsigned char kat4198_entropyinpr2[] = { + 0xce, 0x05, 0x6e, 0x0c, 0x5b, 0x99, 0xbb, 0x95, 0x3e, 0xed, 0xcc, 0xd5, + 0x73, 0x29, 0xb3, 0x4a, 0x9a, 0xea, 0xdc, 0xcd, 0x22, 0xef, 0x98, 0x07, + 0xf5, 0xc2, 0x98, 0xc0, 0x22, 0x40, 0xfb, 0x8f, 0xcb, 0x0e, 0xa6, 0x21, + 0x59, 0xe2, 0x67, 0x39, 0xf4, 0x37, 0x4f, 0xac, 0x25, 0xb5, 0x61, 0x44, +}; +static const unsigned char kat4198_addinpr2[] = { + 0x8f, 0x3f, 0xe6, 0x6d, 0x61, 0xc3, 0x6e, 0x93, 0xc5, 0x66, 0x28, 0x4f, + 0xda, 0xbe, 0x59, 0x6d, 0x4f, 0xbd, 0x95, 0x8b, 0x6d, 0x17, 0x7a, 0x7d, + 0x5e, 0xf4, 0xd7, 0xd3, 0x5a, 0x6f, 0x15, 0x09, 0xc7, 0xd9, 0xcd, 0xf0, + 0xc4, 0xb3, 0x92, 0x78, 0x08, 0x15, 0x1a, 0x98, 0x7b, 0x97, 0x58, 0x2f, +}; +static const unsigned char kat4198_retbits[] = { + 0x7b, 0xf9, 0x11, 0xe5, 0xa1, 0x22, 0x9e, 0xf4, 0x07, 0xa5, 0xcb, 0x93, + 0x51, 0x97, 0xa4, 0xa5, 0xac, 0xa5, 0xec, 0xba, 0x3c, 0xf5, 0x71, 0x41, + 0x45, 0xe7, 0x44, 0x16, 0x78, 0x09, 0xca, 0x48, 0xff, 0x0e, 0xfc, 0x06, + 0x57, 0xe2, 0x48, 0x6f, 0x87, 0x63, 0x42, 0x49, 0x63, 0xf6, 0x64, 0x9b, + 0x3e, 0xe7, 0x85, 0x5e, 0x36, 0xfd, 0xc1, 0x44, 0x8e, 0x83, 0xc7, 0xac, + 0xa6, 0xde, 0xbf, 0x0b, +}; +static const struct drbg_kat_pr_true kat4198_t = { + 12, kat4198_entropyin, kat4198_nonce, kat4198_persstr, + kat4198_entropyinpr1, kat4198_addinpr1, kat4198_entropyinpr2, + kat4198_addinpr2, kat4198_retbits +}; +static const struct drbg_kat kat4198 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4198_t +}; + +static const unsigned char kat4199_entropyin[] = { + 0x9f, 0x20, 0xca, 0xc7, 0xb5, 0x7b, 0x14, 0xc7, 0x5f, 0x1b, 0x49, 0x83, + 0xdf, 0x77, 0xce, 0x10, 0x13, 0xe8, 0x7a, 0x1a, 0x3d, 0x17, 0xf9, 0x67, + 0x4f, 0xbc, 0x39, 0x1f, 0xaf, 0xc0, 0x04, 0x88, 0x43, 0xc5, 0xf2, 0xcd, + 0x80, 0x82, 0x03, 0xab, 0x66, 0x83, 0x2a, 0xda, 0x22, 0x86, 0xcd, 0x41, +}; +static const unsigned char kat4199_nonce[] = {0}; +static const unsigned char kat4199_persstr[] = { + 0xf1, 0xd9, 0x93, 0x45, 0xb9, 0x53, 0x29, 0x80, 0xa4, 0xbe, 0x2e, 0xe0, + 0x83, 0x61, 0xc4, 0xa5, 0x6b, 0x6f, 0x83, 0x3a, 0x57, 0x95, 0x2c, 0x58, + 0x84, 0x2e, 0xd3, 0x68, 0x33, 0x26, 0xda, 0x60, 0xec, 0xe0, 0xb5, 0x0f, + 0x2f, 0x3f, 0xb1, 0xa4, 0xd4, 0x98, 0x71, 0xce, 0x15, 0x5d, 0x3b, 0x1a, +}; +static const unsigned char kat4199_entropyinpr1[] = { + 0x3e, 0xef, 0x39, 0x84, 0x7d, 0xe6, 0x73, 0x28, 0xdb, 0x09, 0xf9, 0xf6, + 0xa7, 0x82, 0x99, 0xbf, 0x24, 0x69, 0x0c, 0x0f, 0xc6, 0x65, 0x9c, 0x5f, + 0xd6, 0xc7, 0x9e, 0xc4, 0xb4, 0x9d, 0x7c, 0xb4, 0x13, 0x23, 0x43, 0x8e, + 0x60, 0xcb, 0xd2, 0x73, 0xd8, 0x3f, 0x60, 0x1e, 0x68, 0x98, 0x41, 0x4f, +}; +static const unsigned char kat4199_addinpr1[] = { + 0xcd, 0xf4, 0xc1, 0x61, 0x52, 0xf0, 0x4a, 0xaf, 0x84, 0x9b, 0x40, 0x62, + 0xd7, 0x24, 0xc4, 0x47, 0x73, 0xa9, 0xd9, 0xce, 0xc9, 0x27, 0x5b, 0x7f, + 0x7e, 0x82, 0xc3, 0xac, 0x74, 0x47, 0x60, 0x9c, 0x14, 0xae, 0xe1, 0x9e, + 0xbc, 0xd5, 0xfe, 0x6c, 0x66, 0x19, 0x0a, 0x43, 0x76, 0xf2, 0xad, 0x34, +}; +static const unsigned char kat4199_entropyinpr2[] = { + 0xf3, 0x7c, 0xec, 0xc4, 0x8c, 0x4c, 0x0c, 0xb9, 0xae, 0x59, 0xdf, 0xf4, + 0x8f, 0xd4, 0x91, 0xc3, 0xf2, 0xa4, 0x5c, 0x04, 0x52, 0x25, 0x43, 0x76, + 0x75, 0x7e, 0xed, 0x44, 0x12, 0x74, 0x71, 0xf9, 0xd6, 0x30, 0xba, 0x7b, + 0xfc, 0xd2, 0xaf, 0x86, 0xa8, 0x2e, 0x7e, 0x16, 0x0d, 0x38, 0xe2, 0x37, +}; +static const unsigned char kat4199_addinpr2[] = { + 0x05, 0xbc, 0xad, 0xbb, 0x4f, 0x06, 0x16, 0xd7, 0x71, 0xcc, 0x9c, 0xa4, + 0xf0, 0xa8, 0xdd, 0xe6, 0xbd, 0x87, 0xa0, 0x17, 0x2a, 0x23, 0x93, 0x66, + 0x7d, 0xf7, 0x6d, 0x93, 0xe4, 0x99, 0xd0, 0x78, 0x69, 0xfb, 0xfc, 0x06, + 0x48, 0xa2, 0x24, 0x69, 0x41, 0x48, 0x93, 0xc1, 0xa0, 0x8d, 0x28, 0xe0, +}; +static const unsigned char kat4199_retbits[] = { + 0x41, 0xc2, 0xfe, 0xf4, 0xb8, 0x73, 0x68, 0x89, 0xbb, 0x42, 0x0c, 0xc3, + 0x64, 0x85, 0xde, 0xc0, 0x6d, 0x10, 0x7f, 0x06, 0x47, 0x24, 0x8e, 0x5d, + 0x99, 0x05, 0xf8, 0xa2, 0xb3, 0x0c, 0x5a, 0x97, 0xe6, 0x07, 0xee, 0x42, + 0x65, 0xe5, 0xe7, 0x71, 0x37, 0xf4, 0xb4, 0xab, 0x39, 0x9f, 0xe8, 0x4d, + 0x54, 0x6c, 0x38, 0x99, 0x81, 0x4a, 0x6e, 0x7b, 0x1b, 0x1c, 0x2b, 0xc5, + 0xed, 0xf1, 0x6a, 0x3f, +}; +static const struct drbg_kat_pr_true kat4199_t = { + 13, kat4199_entropyin, kat4199_nonce, kat4199_persstr, + kat4199_entropyinpr1, kat4199_addinpr1, kat4199_entropyinpr2, + kat4199_addinpr2, kat4199_retbits +}; +static const struct drbg_kat kat4199 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4199_t +}; + +static const unsigned char kat4200_entropyin[] = { + 0xc4, 0xce, 0xd6, 0x22, 0x73, 0x95, 0xfc, 0xa3, 0x55, 0x4e, 0x92, 0x14, + 0x3a, 0x53, 0x0b, 0xd1, 0x2d, 0xf5, 0x19, 0x64, 0xeb, 0xdd, 0xf9, 0x4b, + 0xfb, 0x02, 0x19, 0xcb, 0xcc, 0x00, 0xc9, 0x66, 0xa9, 0x65, 0xf8, 0xcf, + 0x08, 0xc4, 0x44, 0x98, 0xdf, 0xd6, 0x79, 0x10, 0xff, 0x3b, 0xba, 0xf2, +}; +static const unsigned char kat4200_nonce[] = {0}; +static const unsigned char kat4200_persstr[] = { + 0x75, 0x98, 0x43, 0x05, 0xc2, 0x73, 0x24, 0xdf, 0x11, 0x6f, 0x95, 0x16, + 0x00, 0xa0, 0x29, 0xd2, 0x62, 0x68, 0xbd, 0x0d, 0x21, 0x50, 0x20, 0x86, + 0xec, 0xdd, 0xe7, 0xc6, 0x88, 0xe9, 0xf7, 0x2e, 0x44, 0xe7, 0xd3, 0xb3, + 0x4d, 0x89, 0x73, 0x1f, 0xbe, 0xe6, 0xbe, 0x4a, 0xff, 0xc3, 0x24, 0x51, +}; +static const unsigned char kat4200_entropyinpr1[] = { + 0x35, 0x3a, 0x6f, 0x81, 0x6b, 0x73, 0xac, 0xe3, 0x85, 0x88, 0x90, 0x30, + 0x3b, 0x51, 0x57, 0x9f, 0xc4, 0xc2, 0xfd, 0xe4, 0x03, 0xbd, 0x9a, 0xf5, + 0x05, 0xfd, 0xcc, 0x1b, 0xfc, 0x25, 0x41, 0x64, 0x8c, 0xa7, 0xf2, 0xa0, + 0xd2, 0x99, 0x43, 0x48, 0xda, 0x0c, 0xd9, 0x8c, 0xe4, 0xa5, 0x86, 0x14, +}; +static const unsigned char kat4200_addinpr1[] = { + 0x86, 0x76, 0x13, 0x8f, 0x1d, 0x19, 0x50, 0x28, 0x32, 0x0e, 0xfd, 0xc0, + 0x78, 0xce, 0x5c, 0xba, 0xdd, 0x94, 0xb9, 0x43, 0x18, 0x10, 0x1c, 0x17, + 0x57, 0x6d, 0x3f, 0xb5, 0xa6, 0x32, 0x6c, 0xae, 0x94, 0x0a, 0xd9, 0xfd, + 0x48, 0x14, 0x20, 0xb1, 0x25, 0x03, 0x3a, 0xe0, 0xa9, 0x16, 0x0c, 0x90, +}; +static const unsigned char kat4200_entropyinpr2[] = { + 0xae, 0xc9, 0x0f, 0x26, 0xf7, 0xc7, 0x85, 0x3f, 0x39, 0x17, 0xde, 0x51, + 0x6f, 0x1e, 0xe0, 0xf8, 0x5a, 0x0f, 0x3d, 0x0e, 0xb4, 0x96, 0x7f, 0x6d, + 0x26, 0x94, 0x55, 0x2a, 0x93, 0xa2, 0x5c, 0xa7, 0xfb, 0xdb, 0x45, 0x54, + 0xde, 0x8a, 0xcc, 0x0e, 0x60, 0xaf, 0x0c, 0x5b, 0x08, 0x29, 0xcb, 0x9a, +}; +static const unsigned char kat4200_addinpr2[] = { + 0x58, 0xa9, 0x8d, 0x14, 0x62, 0x5f, 0x59, 0xf7, 0xad, 0xf6, 0xa7, 0x03, + 0xb2, 0xe1, 0xee, 0x21, 0xfb, 0x83, 0xf2, 0x2f, 0x36, 0x94, 0xf7, 0xf0, + 0x65, 0x48, 0xc8, 0x58, 0x04, 0x26, 0x97, 0xd9, 0xca, 0x1a, 0x66, 0x6a, + 0xe1, 0xbd, 0xcf, 0xa7, 0xa2, 0xf5, 0x5c, 0xb1, 0x29, 0x46, 0xb7, 0xb8, +}; +static const unsigned char kat4200_retbits[] = { + 0x18, 0xd3, 0xf2, 0x39, 0x6f, 0xa9, 0x2b, 0x0b, 0x9e, 0x6b, 0xc7, 0xa5, + 0xc0, 0xf9, 0xf8, 0xe1, 0x08, 0x57, 0xc0, 0x06, 0x3b, 0x4f, 0xdd, 0x8e, + 0xe7, 0x6d, 0x12, 0xe1, 0x20, 0x5e, 0xb5, 0xe4, 0xfb, 0xe1, 0xb0, 0x7f, + 0xfc, 0x0e, 0xc5, 0x04, 0x5e, 0xaa, 0xad, 0x60, 0x8a, 0x55, 0x8d, 0x11, + 0x07, 0xf9, 0x31, 0xc0, 0x29, 0x03, 0x92, 0x16, 0x6b, 0xed, 0x2d, 0x09, + 0x84, 0x98, 0x80, 0xa5, +}; +static const struct drbg_kat_pr_true kat4200_t = { + 14, kat4200_entropyin, kat4200_nonce, kat4200_persstr, + kat4200_entropyinpr1, kat4200_addinpr1, kat4200_entropyinpr2, + kat4200_addinpr2, kat4200_retbits +}; +static const struct drbg_kat kat4200 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4200_t +}; + +static const unsigned char kat4201_entropyin[] = { + 0xa9, 0x8e, 0x4c, 0xcd, 0x7e, 0x7d, 0x4a, 0x90, 0x5a, 0xf5, 0xa5, 0x7c, + 0xec, 0x1e, 0x72, 0x93, 0x68, 0x23, 0xbe, 0x81, 0x9b, 0x7c, 0xa3, 0x62, + 0xd0, 0x24, 0x2f, 0x9a, 0xf3, 0x3c, 0x29, 0x06, 0xae, 0xed, 0xba, 0x7e, + 0x7e, 0x2a, 0x9d, 0x0c, 0xf0, 0xfd, 0x4a, 0xe3, 0x9b, 0x7c, 0x13, 0x09, +}; +static const unsigned char kat4201_nonce[] = {0}; +static const unsigned char kat4201_persstr[] = {0}; +static const unsigned char kat4201_entropyinpr1[] = { + 0xa7, 0x54, 0xb1, 0x26, 0x41, 0xfc, 0x2b, 0xbc, 0x64, 0x9e, 0x68, 0xd3, + 0x1d, 0x44, 0x10, 0x08, 0xef, 0xa7, 0xdf, 0x99, 0xa2, 0xbe, 0xb7, 0x72, + 0xbf, 0xbe, 0xeb, 0xa1, 0x0d, 0xbc, 0x0b, 0xc2, 0x5a, 0xd4, 0xb5, 0x51, + 0xb2, 0xb7, 0xa1, 0x57, 0x49, 0xbd, 0x08, 0x06, 0x76, 0xf7, 0x46, 0x25, +}; +static const unsigned char kat4201_addinpr1[] = {0}; +static const unsigned char kat4201_entropyinpr2[] = { + 0xd5, 0xa5, 0xf0, 0x65, 0xb4, 0xf5, 0x56, 0xd0, 0x5a, 0x09, 0x0f, 0xaf, + 0x45, 0x36, 0xba, 0x88, 0x86, 0x35, 0x8b, 0x4c, 0xd6, 0xdc, 0xaa, 0xc2, + 0xad, 0x9b, 0x24, 0x9d, 0x83, 0xce, 0x8f, 0xb5, 0xa9, 0x1d, 0x9f, 0x1f, + 0x5f, 0xda, 0x62, 0xec, 0x35, 0x20, 0x51, 0x52, 0xc8, 0x5d, 0x8c, 0xb1, +}; +static const unsigned char kat4201_addinpr2[] = {0}; +static const unsigned char kat4201_retbits[] = { + 0x80, 0x0e, 0xf3, 0xf1, 0x77, 0x28, 0xf1, 0x0b, 0x42, 0x01, 0xe1, 0x6a, + 0xa9, 0xc3, 0x26, 0x4f, 0xbc, 0x45, 0xac, 0xc8, 0xf0, 0x14, 0x34, 0xcc, + 0x0c, 0xb0, 0xe4, 0x1e, 0x89, 0x54, 0xee, 0x20, 0xd8, 0x09, 0x9a, 0x4c, + 0x3b, 0x4f, 0x5d, 0xc9, 0x95, 0xbd, 0xe0, 0xb3, 0x45, 0x26, 0x37, 0xe7, + 0x63, 0x97, 0x76, 0x8e, 0xfe, 0x17, 0xbc, 0x7a, 0xc8, 0xb4, 0x8d, 0x1f, + 0xf7, 0xe2, 0xc7, 0x0e, +}; +static const struct drbg_kat_pr_true kat4201_t = { + 0, kat4201_entropyin, kat4201_nonce, kat4201_persstr, + kat4201_entropyinpr1, kat4201_addinpr1, kat4201_entropyinpr2, + kat4201_addinpr2, kat4201_retbits +}; +static const struct drbg_kat kat4201 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4201_t +}; + +static const unsigned char kat4202_entropyin[] = { + 0xb9, 0xa6, 0x2e, 0x8d, 0x41, 0x7b, 0xf6, 0xc7, 0x2b, 0x7e, 0xce, 0xba, + 0x1b, 0x28, 0x4e, 0x98, 0x78, 0xb2, 0x8c, 0xba, 0xe7, 0xa3, 0xe0, 0x02, + 0xc2, 0x36, 0x22, 0x5b, 0x0c, 0x36, 0x45, 0x69, 0x11, 0xca, 0xb1, 0xd3, + 0xda, 0xc4, 0x6b, 0x27, 0x84, 0x6c, 0x61, 0x7e, 0xfe, 0x2d, 0x59, 0x63, +}; +static const unsigned char kat4202_nonce[] = {0}; +static const unsigned char kat4202_persstr[] = {0}; +static const unsigned char kat4202_entropyinpr1[] = { + 0x9b, 0x32, 0xde, 0x98, 0xea, 0x48, 0xd0, 0xec, 0xb3, 0x9d, 0x14, 0xa6, + 0x5b, 0x16, 0x1d, 0x79, 0x29, 0x1c, 0x1a, 0x27, 0x69, 0x48, 0x7c, 0x8c, + 0xbb, 0x86, 0x31, 0x21, 0x7d, 0x6b, 0x65, 0x11, 0xde, 0x51, 0xf7, 0xeb, + 0x23, 0x03, 0x81, 0xe4, 0x50, 0x3c, 0x62, 0x69, 0x39, 0xee, 0x35, 0xa6, +}; +static const unsigned char kat4202_addinpr1[] = {0}; +static const unsigned char kat4202_entropyinpr2[] = { + 0x50, 0xbf, 0xee, 0xbb, 0x79, 0x7f, 0x64, 0x9b, 0x65, 0x65, 0x4a, 0x3e, + 0xb4, 0xc1, 0xad, 0x14, 0x57, 0xd9, 0xc4, 0x7d, 0x28, 0x18, 0xe2, 0xfe, + 0xdd, 0x98, 0x6e, 0xc1, 0xa7, 0x00, 0xb3, 0x19, 0x00, 0xe2, 0xde, 0xf7, + 0x98, 0x33, 0xac, 0x34, 0x43, 0x80, 0xda, 0x87, 0xa0, 0xc2, 0xb1, 0x5e, +}; +static const unsigned char kat4202_addinpr2[] = {0}; +static const unsigned char kat4202_retbits[] = { + 0x0c, 0x08, 0x5b, 0xb7, 0x97, 0x9c, 0x75, 0x69, 0x96, 0x40, 0xe5, 0x25, + 0xa2, 0xc5, 0x70, 0x10, 0xe6, 0xd9, 0x91, 0x72, 0x52, 0x9b, 0x05, 0x8f, + 0x9d, 0x44, 0x00, 0x8e, 0x04, 0xf7, 0x3b, 0x34, 0x04, 0xc8, 0x03, 0x2b, + 0x48, 0x06, 0xac, 0x3b, 0xd6, 0x0d, 0xf2, 0xda, 0x50, 0x55, 0xd7, 0x36, + 0x21, 0xdd, 0x11, 0x2a, 0x77, 0x44, 0x28, 0xf3, 0x28, 0xd6, 0xd1, 0x63, + 0xdd, 0xad, 0x19, 0x9d, +}; +static const struct drbg_kat_pr_true kat4202_t = { + 1, kat4202_entropyin, kat4202_nonce, kat4202_persstr, + kat4202_entropyinpr1, kat4202_addinpr1, kat4202_entropyinpr2, + kat4202_addinpr2, kat4202_retbits +}; +static const struct drbg_kat kat4202 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4202_t +}; + +static const unsigned char kat4203_entropyin[] = { + 0xd8, 0xc6, 0x67, 0x6e, 0x89, 0x6b, 0xc8, 0x8b, 0x8c, 0xcb, 0x0f, 0x32, + 0x57, 0x8d, 0xc0, 0xd8, 0x08, 0x7c, 0xd7, 0xd3, 0xe5, 0x21, 0x64, 0xb1, + 0xe7, 0x0d, 0xf4, 0xea, 0xea, 0xf8, 0xfc, 0x42, 0x42, 0xb4, 0x3e, 0x47, + 0xdf, 0x64, 0x0a, 0x21, 0x08, 0xf8, 0xcd, 0x6f, 0xc7, 0x0d, 0xc2, 0x75, +}; +static const unsigned char kat4203_nonce[] = {0}; +static const unsigned char kat4203_persstr[] = {0}; +static const unsigned char kat4203_entropyinpr1[] = { + 0xc0, 0x0f, 0x59, 0x2c, 0xfb, 0x03, 0xaf, 0xf7, 0xc4, 0x95, 0x93, 0x16, + 0x0a, 0x88, 0x0b, 0xba, 0x74, 0x59, 0x81, 0xc1, 0x3f, 0xc5, 0x26, 0xb9, + 0x7b, 0xfc, 0x71, 0x35, 0xa4, 0x10, 0xa8, 0x47, 0x6d, 0x02, 0xa7, 0x57, + 0x41, 0xb8, 0x04, 0xee, 0x35, 0x02, 0xf8, 0x6d, 0xbb, 0x12, 0xd5, 0x51, +}; +static const unsigned char kat4203_addinpr1[] = {0}; +static const unsigned char kat4203_entropyinpr2[] = { + 0x95, 0xb8, 0x67, 0x36, 0x6c, 0x08, 0xa9, 0xf6, 0x6a, 0xf7, 0x13, 0x8b, + 0x8d, 0x29, 0x40, 0x3f, 0x04, 0x91, 0xfa, 0x81, 0x45, 0xd0, 0x87, 0x87, + 0x17, 0x0a, 0x88, 0xb3, 0x00, 0x45, 0xaa, 0xfe, 0x06, 0x0e, 0x61, 0x56, + 0x10, 0x0a, 0x97, 0xea, 0x3f, 0xce, 0xa8, 0x12, 0x27, 0x13, 0xd6, 0x85, +}; +static const unsigned char kat4203_addinpr2[] = {0}; +static const unsigned char kat4203_retbits[] = { + 0x56, 0xf2, 0xe0, 0x37, 0x2c, 0x39, 0xf0, 0x74, 0xc5, 0x78, 0x14, 0x13, + 0xf5, 0xe1, 0xe8, 0x20, 0x84, 0x4f, 0x5a, 0x77, 0xae, 0x72, 0x6e, 0x77, + 0xcb, 0x7b, 0x65, 0x9b, 0x37, 0xf5, 0xc0, 0xb8, 0xee, 0x7b, 0x32, 0xcf, + 0xb0, 0xb2, 0x7c, 0xdf, 0xe6, 0xbd, 0xa3, 0xa5, 0x6d, 0x5f, 0x13, 0xe9, + 0xc3, 0xd6, 0xc5, 0x84, 0x47, 0x0d, 0x44, 0xf0, 0x99, 0x62, 0xbe, 0x21, + 0x90, 0xbc, 0x70, 0x54, +}; +static const struct drbg_kat_pr_true kat4203_t = { + 2, kat4203_entropyin, kat4203_nonce, kat4203_persstr, + kat4203_entropyinpr1, kat4203_addinpr1, kat4203_entropyinpr2, + kat4203_addinpr2, kat4203_retbits +}; +static const struct drbg_kat kat4203 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4203_t +}; + +static const unsigned char kat4204_entropyin[] = { + 0xa0, 0xc0, 0xb1, 0x1c, 0x88, 0x07, 0xa7, 0xd1, 0x97, 0xdc, 0xcd, 0x15, + 0x9f, 0x3d, 0x2a, 0xf3, 0x3e, 0x27, 0x90, 0xae, 0xb0, 0xd5, 0x32, 0x31, + 0x06, 0xdb, 0x52, 0x64, 0x01, 0x48, 0xef, 0xa3, 0xe6, 0x3e, 0x91, 0xcf, + 0x5a, 0xbd, 0x3b, 0xde, 0xdb, 0xce, 0x1d, 0x7b, 0x5e, 0x32, 0x55, 0xe1, +}; +static const unsigned char kat4204_nonce[] = {0}; +static const unsigned char kat4204_persstr[] = {0}; +static const unsigned char kat4204_entropyinpr1[] = { + 0xc7, 0xcc, 0xe4, 0x56, 0x36, 0x53, 0x2d, 0xc3, 0xd0, 0x25, 0x96, 0x91, + 0xda, 0x45, 0x93, 0xe6, 0x92, 0xf4, 0x44, 0x01, 0xe1, 0x3e, 0xfb, 0x39, + 0x8a, 0x00, 0xc2, 0x85, 0x37, 0x30, 0xa3, 0xb2, 0xb9, 0x24, 0x8e, 0x60, + 0xbe, 0x3e, 0xaa, 0xff, 0x72, 0xf0, 0x93, 0xaf, 0x73, 0x1c, 0x50, 0xcd, +}; +static const unsigned char kat4204_addinpr1[] = {0}; +static const unsigned char kat4204_entropyinpr2[] = { + 0x0c, 0xfc, 0x99, 0x6e, 0x46, 0x5f, 0x59, 0x7d, 0x09, 0xa3, 0x5f, 0x25, + 0x0d, 0x1e, 0xb8, 0xef, 0xc0, 0xc0, 0xf5, 0x80, 0x8d, 0x67, 0x44, 0x70, + 0x99, 0x51, 0xa9, 0x81, 0x15, 0x03, 0x84, 0x59, 0x96, 0x3b, 0x42, 0x23, + 0x41, 0x71, 0x6d, 0x1b, 0x34, 0xe9, 0x54, 0x89, 0xfc, 0x83, 0xa9, 0xd7, +}; +static const unsigned char kat4204_addinpr2[] = {0}; +static const unsigned char kat4204_retbits[] = { + 0xdd, 0x0d, 0xe1, 0xf2, 0xf8, 0xa2, 0x9d, 0xb1, 0xbd, 0xe9, 0x6a, 0x67, + 0xb0, 0xce, 0x6e, 0x2d, 0xc1, 0xe1, 0x2c, 0x21, 0x20, 0x46, 0x2c, 0xa7, + 0xfe, 0x03, 0x99, 0x56, 0x45, 0xce, 0x9f, 0xd1, 0xdd, 0x7c, 0xaf, 0x40, + 0x04, 0x76, 0x6e, 0xce, 0xb8, 0xfb, 0x8f, 0x90, 0x1d, 0x59, 0x5d, 0x6a, + 0x6a, 0x9c, 0xb2, 0x13, 0x93, 0x06, 0xe1, 0xa7, 0xb0, 0x4d, 0x4f, 0x6c, + 0x4e, 0x5a, 0x5f, 0x46, +}; +static const struct drbg_kat_pr_true kat4204_t = { + 3, kat4204_entropyin, kat4204_nonce, kat4204_persstr, + kat4204_entropyinpr1, kat4204_addinpr1, kat4204_entropyinpr2, + kat4204_addinpr2, kat4204_retbits +}; +static const struct drbg_kat kat4204 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4204_t +}; + +static const unsigned char kat4205_entropyin[] = { + 0xee, 0x8c, 0xa5, 0xde, 0x03, 0x6c, 0x21, 0x20, 0xb2, 0x14, 0x0c, 0x68, + 0xc5, 0xad, 0xff, 0xc7, 0x02, 0xde, 0x4e, 0xad, 0x91, 0x9b, 0x6b, 0x57, + 0x4a, 0x87, 0x14, 0x92, 0xee, 0xb9, 0xc7, 0x90, 0x68, 0xb6, 0x95, 0x1d, + 0x0d, 0xdd, 0x73, 0x3d, 0xc7, 0x42, 0x4c, 0xeb, 0xc5, 0xc3, 0xef, 0xa2, +}; +static const unsigned char kat4205_nonce[] = {0}; +static const unsigned char kat4205_persstr[] = {0}; +static const unsigned char kat4205_entropyinpr1[] = { + 0x9c, 0xb9, 0x1c, 0xce, 0x0a, 0x38, 0x18, 0x91, 0x74, 0xf6, 0x30, 0x0e, + 0x94, 0x1d, 0x51, 0x04, 0x8a, 0x1a, 0x11, 0x5c, 0x83, 0xe7, 0xab, 0xec, + 0xbb, 0x85, 0xb5, 0x0d, 0x7a, 0x53, 0xdd, 0x2d, 0x0a, 0x6b, 0x37, 0xf3, + 0x7f, 0xc9, 0x02, 0xd4, 0xd4, 0xb3, 0xa5, 0x9a, 0xd6, 0xc3, 0x5c, 0x79, +}; +static const unsigned char kat4205_addinpr1[] = {0}; +static const unsigned char kat4205_entropyinpr2[] = { + 0x2b, 0xa4, 0x07, 0x48, 0x4b, 0x1a, 0xad, 0x03, 0x20, 0x1a, 0x57, 0x73, + 0x11, 0x09, 0x5b, 0xac, 0x9b, 0x69, 0xa6, 0x3b, 0x2c, 0xb7, 0x81, 0x4c, + 0xe3, 0xe4, 0x3d, 0xa3, 0x17, 0x13, 0x81, 0x4a, 0xff, 0x70, 0x8a, 0x3c, + 0x4e, 0x46, 0x8c, 0x3d, 0x65, 0x55, 0xdb, 0x3e, 0xed, 0x5d, 0xb2, 0x23, +}; +static const unsigned char kat4205_addinpr2[] = {0}; +static const unsigned char kat4205_retbits[] = { + 0x99, 0x11, 0x82, 0x81, 0x19, 0x17, 0xed, 0xa9, 0x0c, 0xf6, 0x4a, 0x02, + 0x43, 0xe8, 0x3b, 0xa8, 0x3e, 0x6d, 0xaf, 0xf1, 0x62, 0x2b, 0x12, 0x2e, + 0x58, 0x51, 0xa1, 0x00, 0x8c, 0x37, 0xbb, 0xe7, 0xf8, 0x55, 0x93, 0xa1, + 0x6a, 0x05, 0xdd, 0x10, 0xa3, 0xfd, 0x9a, 0x10, 0xf0, 0x76, 0x5c, 0xcb, + 0x94, 0x18, 0x69, 0x9a, 0x74, 0xa2, 0xf9, 0x67, 0xd3, 0xbf, 0xe4, 0x4d, + 0x38, 0x03, 0xc9, 0xd3, +}; +static const struct drbg_kat_pr_true kat4205_t = { + 4, kat4205_entropyin, kat4205_nonce, kat4205_persstr, + kat4205_entropyinpr1, kat4205_addinpr1, kat4205_entropyinpr2, + kat4205_addinpr2, kat4205_retbits +}; +static const struct drbg_kat kat4205 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4205_t +}; + +static const unsigned char kat4206_entropyin[] = { + 0x07, 0xf7, 0x56, 0xf7, 0x6b, 0x86, 0xdc, 0x7e, 0xcb, 0x37, 0x1a, 0xb2, + 0x38, 0xd1, 0xc5, 0x5e, 0x0b, 0xe6, 0x67, 0x31, 0x3f, 0xfd, 0xad, 0x36, + 0x65, 0x79, 0xfc, 0x0c, 0x4a, 0x69, 0x64, 0xb9, 0xc3, 0x1a, 0x25, 0xdb, + 0xbc, 0xfd, 0x46, 0x3f, 0x17, 0x80, 0x8e, 0x52, 0xf6, 0xf0, 0x35, 0xa2, +}; +static const unsigned char kat4206_nonce[] = {0}; +static const unsigned char kat4206_persstr[] = {0}; +static const unsigned char kat4206_entropyinpr1[] = { + 0xc3, 0x21, 0xb3, 0x15, 0x7d, 0xa5, 0xa9, 0x46, 0xd3, 0xac, 0x88, 0xba, + 0xea, 0xe0, 0x3a, 0x95, 0x25, 0xf4, 0xb2, 0x2d, 0xea, 0xd4, 0x29, 0xee, + 0xa0, 0x3a, 0x0b, 0x99, 0x82, 0xbc, 0xfe, 0x15, 0xb9, 0x5b, 0x27, 0x4d, + 0x43, 0x17, 0x22, 0xf9, 0xe9, 0x0c, 0xc5, 0x05, 0x0c, 0xb4, 0x8a, 0x31, +}; +static const unsigned char kat4206_addinpr1[] = {0}; +static const unsigned char kat4206_entropyinpr2[] = { + 0x13, 0x9e, 0x70, 0x5f, 0x72, 0xb8, 0x2a, 0xed, 0xe8, 0x94, 0xcd, 0xc7, + 0x8f, 0xe9, 0x53, 0x85, 0x1a, 0xc4, 0x8c, 0x17, 0x8f, 0xe9, 0x21, 0xd7, + 0xb8, 0xf0, 0xbe, 0x51, 0xe5, 0x52, 0x56, 0x7e, 0x1c, 0x34, 0x52, 0xa4, + 0xba, 0xca, 0x69, 0xb7, 0x7f, 0xdd, 0xb8, 0x91, 0x4d, 0xea, 0xd1, 0xd6, +}; +static const unsigned char kat4206_addinpr2[] = {0}; +static const unsigned char kat4206_retbits[] = { + 0xe1, 0x66, 0x3a, 0x94, 0x19, 0x40, 0xdc, 0x45, 0x0d, 0x97, 0xca, 0xa6, + 0x84, 0x18, 0x14, 0x30, 0x24, 0x7b, 0x36, 0x9e, 0x80, 0x8a, 0x50, 0xde, + 0x38, 0x77, 0xd7, 0xf4, 0xa5, 0x33, 0x17, 0xc1, 0x1d, 0x5d, 0xbc, 0xdb, + 0xaf, 0xa3, 0x6c, 0x8c, 0xe6, 0x4b, 0x89, 0x3b, 0x77, 0xba, 0xdf, 0xe2, + 0x32, 0xc5, 0xa8, 0x05, 0x60, 0x95, 0x16, 0x50, 0xbd, 0xcb, 0x68, 0xd3, + 0xb0, 0x5c, 0x4b, 0x5e, +}; +static const struct drbg_kat_pr_true kat4206_t = { + 5, kat4206_entropyin, kat4206_nonce, kat4206_persstr, + kat4206_entropyinpr1, kat4206_addinpr1, kat4206_entropyinpr2, + kat4206_addinpr2, kat4206_retbits +}; +static const struct drbg_kat kat4206 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4206_t +}; + +static const unsigned char kat4207_entropyin[] = { + 0xcf, 0xd3, 0x0c, 0xc3, 0x7d, 0xb1, 0x30, 0xfb, 0x6d, 0x33, 0xa8, 0x5b, + 0xe2, 0x94, 0xeb, 0xa4, 0x39, 0xb0, 0x96, 0x86, 0xbc, 0xda, 0x89, 0xe3, + 0x37, 0x94, 0x41, 0x89, 0x83, 0xca, 0x18, 0x10, 0x89, 0x0a, 0xb6, 0x8f, + 0xf8, 0x93, 0xd5, 0xf0, 0x34, 0x84, 0x12, 0x1d, 0xaa, 0x36, 0xa6, 0xa0, +}; +static const unsigned char kat4207_nonce[] = {0}; +static const unsigned char kat4207_persstr[] = {0}; +static const unsigned char kat4207_entropyinpr1[] = { + 0x0c, 0x1a, 0x41, 0x54, 0x74, 0x91, 0xef, 0xd2, 0x3f, 0x30, 0x0c, 0x6e, + 0x85, 0x48, 0xae, 0x5b, 0x09, 0x3d, 0x1f, 0xbf, 0xa3, 0x09, 0x21, 0x50, + 0x46, 0x2e, 0xd2, 0xfc, 0x2f, 0x3d, 0x4a, 0xad, 0x9a, 0x84, 0x4a, 0xec, + 0x54, 0x8d, 0x34, 0x19, 0xfb, 0xa8, 0x6f, 0xb1, 0xcf, 0xcb, 0x87, 0x46, +}; +static const unsigned char kat4207_addinpr1[] = {0}; +static const unsigned char kat4207_entropyinpr2[] = { + 0x75, 0x05, 0xbf, 0x63, 0xba, 0xc9, 0x83, 0xe8, 0x91, 0xa6, 0xd7, 0x0d, + 0xc4, 0x1b, 0xff, 0xcb, 0xf2, 0x32, 0xf6, 0x57, 0xce, 0x63, 0x05, 0x8d, + 0x27, 0x54, 0x14, 0x40, 0x70, 0xc8, 0xde, 0xf6, 0xd1, 0xc4, 0x09, 0xea, + 0xeb, 0xf2, 0x17, 0x06, 0xfb, 0x23, 0x95, 0x97, 0x61, 0x1e, 0xbd, 0x8d, +}; +static const unsigned char kat4207_addinpr2[] = {0}; +static const unsigned char kat4207_retbits[] = { + 0x10, 0x67, 0xf3, 0x52, 0xb3, 0x8f, 0x8a, 0xb2, 0xc6, 0x8a, 0x1d, 0x0c, + 0xe3, 0x52, 0x90, 0xe1, 0x38, 0x50, 0x56, 0x16, 0xdd, 0x14, 0xa1, 0x9c, + 0x83, 0xbb, 0x39, 0x76, 0x00, 0x44, 0x00, 0x65, 0x9e, 0xc8, 0xa1, 0x4f, + 0x6c, 0xab, 0x8c, 0x15, 0xe1, 0x79, 0x41, 0x13, 0x94, 0x45, 0xc1, 0x12, + 0xd6, 0x3e, 0x2c, 0x1a, 0x0c, 0x92, 0x36, 0x06, 0xdd, 0x1c, 0x22, 0x05, + 0x95, 0x4a, 0xe6, 0x27, +}; +static const struct drbg_kat_pr_true kat4207_t = { + 6, kat4207_entropyin, kat4207_nonce, kat4207_persstr, + kat4207_entropyinpr1, kat4207_addinpr1, kat4207_entropyinpr2, + kat4207_addinpr2, kat4207_retbits +}; +static const struct drbg_kat kat4207 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4207_t +}; + +static const unsigned char kat4208_entropyin[] = { + 0x6d, 0xe8, 0xa0, 0x3c, 0xb5, 0x26, 0x58, 0xb3, 0x0d, 0x89, 0x08, 0x14, + 0xba, 0xe5, 0xe1, 0xec, 0x17, 0x79, 0xca, 0x11, 0x57, 0x66, 0xe5, 0x71, + 0x72, 0x46, 0x34, 0xef, 0x78, 0x58, 0x97, 0xb2, 0xcb, 0x81, 0x12, 0x0d, + 0xef, 0x1d, 0x3d, 0x74, 0xce, 0xb3, 0xdc, 0xdc, 0xbc, 0xe5, 0x25, 0x14, +}; +static const unsigned char kat4208_nonce[] = {0}; +static const unsigned char kat4208_persstr[] = {0}; +static const unsigned char kat4208_entropyinpr1[] = { + 0x59, 0x9d, 0x69, 0x67, 0x7f, 0x8d, 0xdf, 0x59, 0xbb, 0x1a, 0xbf, 0xbb, + 0x06, 0x10, 0x7c, 0x2d, 0xc8, 0xca, 0x41, 0x54, 0x57, 0x75, 0x37, 0xa9, + 0xf2, 0xd2, 0xd9, 0xa8, 0xd9, 0xde, 0x31, 0x65, 0x26, 0xdd, 0x52, 0xbb, + 0xf2, 0x54, 0x59, 0x49, 0x19, 0xf6, 0xae, 0xfa, 0xaf, 0x90, 0x4f, 0xe7, +}; +static const unsigned char kat4208_addinpr1[] = {0}; +static const unsigned char kat4208_entropyinpr2[] = { + 0x75, 0xcd, 0x48, 0xdc, 0x32, 0xf1, 0xec, 0xe7, 0x23, 0x47, 0x21, 0x96, + 0x93, 0x50, 0xa6, 0xbd, 0x16, 0x8f, 0x2a, 0xb9, 0xf9, 0x0c, 0x3a, 0x68, + 0xec, 0x83, 0x32, 0x54, 0x6c, 0xb4, 0x68, 0x5e, 0x0f, 0xdd, 0xf1, 0x13, + 0x63, 0x10, 0xa3, 0x22, 0x4b, 0x8f, 0x5a, 0x29, 0x83, 0xef, 0x88, 0x16, +}; +static const unsigned char kat4208_addinpr2[] = {0}; +static const unsigned char kat4208_retbits[] = { + 0x02, 0x68, 0x55, 0x7a, 0xe5, 0x76, 0x59, 0x91, 0x5e, 0x34, 0x79, 0xa6, + 0xde, 0xa0, 0xff, 0x5d, 0xa2, 0xd8, 0x20, 0x09, 0x05, 0x22, 0x5d, 0xcf, + 0x16, 0x85, 0x2f, 0x5c, 0x10, 0x2c, 0x03, 0x6c, 0xa6, 0x8e, 0x7f, 0xc2, + 0x98, 0xb1, 0x98, 0x05, 0x67, 0x22, 0xc1, 0xf7, 0xb1, 0x47, 0x96, 0xba, + 0x6a, 0xfe, 0x40, 0x9b, 0x86, 0x51, 0x5b, 0x8c, 0x17, 0x71, 0x40, 0x0e, + 0xeb, 0x56, 0xa2, 0xc3, +}; +static const struct drbg_kat_pr_true kat4208_t = { + 7, kat4208_entropyin, kat4208_nonce, kat4208_persstr, + kat4208_entropyinpr1, kat4208_addinpr1, kat4208_entropyinpr2, + kat4208_addinpr2, kat4208_retbits +}; +static const struct drbg_kat kat4208 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4208_t +}; + +static const unsigned char kat4209_entropyin[] = { + 0x03, 0xdf, 0x67, 0x70, 0x86, 0x15, 0xcf, 0xbb, 0x22, 0xec, 0xb4, 0xce, + 0x79, 0x05, 0x68, 0xac, 0x52, 0x45, 0xff, 0x89, 0x75, 0xca, 0x1b, 0x4a, + 0x75, 0x5e, 0x9c, 0x23, 0xe2, 0x0e, 0x03, 0x67, 0x36, 0x34, 0x02, 0xd3, + 0x81, 0x3f, 0xdd, 0x89, 0x34, 0xd3, 0x83, 0xc1, 0x3c, 0xa9, 0x50, 0x89, +}; +static const unsigned char kat4209_nonce[] = {0}; +static const unsigned char kat4209_persstr[] = {0}; +static const unsigned char kat4209_entropyinpr1[] = { + 0x4a, 0xce, 0x10, 0xf0, 0xb9, 0xb2, 0xe1, 0xfb, 0xb7, 0x16, 0xe1, 0xe7, + 0x5e, 0x69, 0x3c, 0x63, 0xc0, 0x8e, 0x5c, 0x72, 0x73, 0x14, 0xd0, 0xae, + 0x43, 0xca, 0x40, 0x20, 0x11, 0x6c, 0xd0, 0x49, 0x69, 0x03, 0xa4, 0x9f, + 0xd0, 0x1a, 0xdd, 0x3a, 0xe0, 0x29, 0x56, 0x3d, 0xcb, 0xd0, 0xa6, 0x15, +}; +static const unsigned char kat4209_addinpr1[] = {0}; +static const unsigned char kat4209_entropyinpr2[] = { + 0x14, 0x4e, 0x1f, 0xbc, 0x39, 0x2e, 0x9b, 0x1c, 0x60, 0x4f, 0x99, 0x26, + 0x4e, 0xfe, 0x07, 0xaf, 0x70, 0xa0, 0x31, 0xbd, 0x30, 0xd9, 0xf4, 0xdb, + 0xc9, 0x52, 0x61, 0xbe, 0xbf, 0x83, 0xef, 0xe4, 0x25, 0xcc, 0x25, 0x49, + 0x7b, 0xba, 0xd2, 0x44, 0x39, 0xf1, 0x6a, 0xd8, 0xf6, 0xf4, 0xa7, 0xdc, +}; +static const unsigned char kat4209_addinpr2[] = {0}; +static const unsigned char kat4209_retbits[] = { + 0xdd, 0x03, 0xca, 0xdf, 0xee, 0xdb, 0x08, 0xeb, 0x70, 0xd8, 0xab, 0xaa, + 0x59, 0xec, 0x46, 0x3e, 0xbc, 0x57, 0x3f, 0x08, 0x14, 0x83, 0x82, 0xfd, + 0xc7, 0x7e, 0xc2, 0x33, 0x78, 0x5a, 0x71, 0x13, 0xcc, 0x9b, 0x74, 0xc0, + 0x3b, 0xbc, 0x1d, 0xda, 0x4e, 0x04, 0xb1, 0x2f, 0x4e, 0x94, 0xc0, 0x67, + 0xc2, 0x48, 0xd5, 0x1b, 0x8e, 0x93, 0x10, 0x8c, 0xf6, 0xdf, 0x37, 0xc1, + 0x76, 0xde, 0x93, 0x38, +}; +static const struct drbg_kat_pr_true kat4209_t = { + 8, kat4209_entropyin, kat4209_nonce, kat4209_persstr, + kat4209_entropyinpr1, kat4209_addinpr1, kat4209_entropyinpr2, + kat4209_addinpr2, kat4209_retbits +}; +static const struct drbg_kat kat4209 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4209_t +}; + +static const unsigned char kat4210_entropyin[] = { + 0x6e, 0xf5, 0x2c, 0x1d, 0x2a, 0x8a, 0xf0, 0xd9, 0x81, 0x0d, 0x31, 0x4d, + 0x62, 0x52, 0x67, 0xa5, 0x34, 0x03, 0xb2, 0xfb, 0xb6, 0xf0, 0xd8, 0x75, + 0x86, 0x42, 0xc2, 0x77, 0xea, 0xdc, 0xaf, 0x43, 0x81, 0x47, 0xe6, 0x0f, + 0x59, 0x53, 0xc4, 0x82, 0x7e, 0x08, 0x3d, 0x60, 0xbf, 0x6e, 0x24, 0x6c, +}; +static const unsigned char kat4210_nonce[] = {0}; +static const unsigned char kat4210_persstr[] = {0}; +static const unsigned char kat4210_entropyinpr1[] = { + 0x59, 0xde, 0x78, 0x70, 0xfb, 0x5e, 0xb2, 0x19, 0x61, 0x01, 0x18, 0x4f, + 0xe5, 0xdc, 0xa8, 0x3c, 0x02, 0xf3, 0x32, 0x7c, 0x63, 0x73, 0xbb, 0xd2, + 0x42, 0x82, 0xbd, 0x38, 0xc0, 0xd3, 0xa7, 0x5a, 0x7f, 0x8f, 0x9c, 0xe8, + 0xf3, 0x2e, 0x38, 0xcb, 0x2e, 0x6a, 0xb4, 0xd5, 0xe1, 0x57, 0x79, 0x27, +}; +static const unsigned char kat4210_addinpr1[] = {0}; +static const unsigned char kat4210_entropyinpr2[] = { + 0x60, 0xd0, 0x0a, 0xf7, 0x4f, 0xc2, 0xca, 0xa0, 0xdc, 0xae, 0x77, 0xab, + 0x3c, 0x1b, 0x84, 0xa9, 0x2e, 0x8c, 0x98, 0xb3, 0x1b, 0x3a, 0xeb, 0x4a, + 0xcd, 0xb0, 0x05, 0x56, 0x29, 0x65, 0x27, 0x81, 0xfc, 0xc1, 0x2f, 0x9a, + 0x64, 0x9f, 0x8e, 0xb6, 0x93, 0xfd, 0x20, 0x67, 0xc2, 0xbd, 0x84, 0x89, +}; +static const unsigned char kat4210_addinpr2[] = {0}; +static const unsigned char kat4210_retbits[] = { + 0x38, 0xb6, 0xa5, 0x63, 0xd9, 0x50, 0x13, 0x06, 0xea, 0x8b, 0xfd, 0x85, + 0x89, 0x62, 0x04, 0xaf, 0x42, 0xdf, 0xfc, 0xeb, 0xf8, 0x05, 0x00, 0xde, + 0x6a, 0x92, 0x66, 0x0b, 0x3f, 0xfc, 0x9d, 0x14, 0xda, 0x9e, 0x9a, 0x36, + 0xd7, 0x85, 0x9e, 0xcf, 0xf5, 0x51, 0xd8, 0x1a, 0x3e, 0x25, 0xec, 0x8f, + 0x20, 0xfc, 0xb3, 0x65, 0x2e, 0x83, 0xa9, 0x91, 0xa5, 0xf4, 0x92, 0x85, + 0xf1, 0x57, 0x18, 0xc2, +}; +static const struct drbg_kat_pr_true kat4210_t = { + 9, kat4210_entropyin, kat4210_nonce, kat4210_persstr, + kat4210_entropyinpr1, kat4210_addinpr1, kat4210_entropyinpr2, + kat4210_addinpr2, kat4210_retbits +}; +static const struct drbg_kat kat4210 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4210_t +}; + +static const unsigned char kat4211_entropyin[] = { + 0xbb, 0x62, 0x3a, 0x2f, 0x9f, 0xc1, 0xc3, 0x0c, 0xcd, 0xdb, 0xab, 0x9a, + 0x65, 0x46, 0x50, 0x81, 0xb9, 0x0f, 0x20, 0x1d, 0x12, 0x1d, 0x57, 0xed, + 0x1b, 0x3d, 0x4c, 0x17, 0xad, 0xdf, 0xd3, 0x51, 0x16, 0x0e, 0x4a, 0x64, + 0xce, 0x40, 0xf4, 0xc1, 0x03, 0xb6, 0x63, 0xde, 0xc0, 0x8d, 0xac, 0x09, +}; +static const unsigned char kat4211_nonce[] = {0}; +static const unsigned char kat4211_persstr[] = {0}; +static const unsigned char kat4211_entropyinpr1[] = { + 0xf8, 0x55, 0x59, 0xe9, 0x98, 0x63, 0x4a, 0x1b, 0xe0, 0xb7, 0xd7, 0x44, + 0x12, 0xef, 0x43, 0xb1, 0x9e, 0x40, 0x69, 0x74, 0xa1, 0x2d, 0x14, 0xa0, + 0x23, 0xca, 0x54, 0xd5, 0x9c, 0xa1, 0x6e, 0x62, 0xe0, 0x6c, 0x26, 0x8b, + 0xc0, 0x93, 0x59, 0xcb, 0xd9, 0x7a, 0x95, 0x05, 0xe8, 0xd1, 0x15, 0xa8, +}; +static const unsigned char kat4211_addinpr1[] = {0}; +static const unsigned char kat4211_entropyinpr2[] = { + 0x65, 0x60, 0xeb, 0xfe, 0x6f, 0x49, 0x9b, 0xaf, 0x9e, 0x98, 0xed, 0xdf, + 0xb1, 0x87, 0xd3, 0x4a, 0x8a, 0x3a, 0xba, 0xfe, 0xbd, 0x54, 0x18, 0x1c, + 0xd1, 0x01, 0xf0, 0x3a, 0x51, 0x84, 0x24, 0x96, 0x0d, 0xd4, 0x5d, 0x40, + 0x0a, 0x37, 0x7d, 0x66, 0x7c, 0x02, 0xb8, 0xf6, 0x00, 0x4a, 0x27, 0x4d, +}; +static const unsigned char kat4211_addinpr2[] = {0}; +static const unsigned char kat4211_retbits[] = { + 0xaf, 0xd2, 0x81, 0x14, 0x1c, 0x7c, 0x49, 0x42, 0x45, 0x34, 0x77, 0xd9, + 0xf9, 0xff, 0x78, 0x02, 0x50, 0xcc, 0x32, 0xcc, 0xda, 0x93, 0x54, 0x15, + 0x2c, 0xb6, 0x50, 0x2e, 0x49, 0xb1, 0xe0, 0xe2, 0xb3, 0x19, 0x65, 0xc9, + 0x39, 0xe7, 0x6b, 0x02, 0x92, 0x21, 0x93, 0x58, 0x2e, 0x35, 0x3d, 0xcf, + 0xe0, 0x9e, 0x46, 0x29, 0xa3, 0xfe, 0xbe, 0x40, 0x12, 0xca, 0x39, 0x08, + 0x79, 0x8a, 0x20, 0xd9, +}; +static const struct drbg_kat_pr_true kat4211_t = { + 10, kat4211_entropyin, kat4211_nonce, kat4211_persstr, + kat4211_entropyinpr1, kat4211_addinpr1, kat4211_entropyinpr2, + kat4211_addinpr2, kat4211_retbits +}; +static const struct drbg_kat kat4211 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4211_t +}; + +static const unsigned char kat4212_entropyin[] = { + 0x1a, 0xfa, 0x92, 0xb7, 0x9f, 0x80, 0xcb, 0x70, 0x87, 0xb3, 0x05, 0x79, + 0xf1, 0x86, 0x52, 0xeb, 0x52, 0x04, 0x03, 0x98, 0x29, 0x6e, 0xbc, 0xbf, + 0x0b, 0x73, 0x0f, 0x29, 0x8f, 0x1a, 0xc8, 0x37, 0x49, 0x52, 0x3f, 0xcc, + 0x87, 0x4c, 0x07, 0x61, 0xa2, 0xbd, 0x39, 0x03, 0x2d, 0x1d, 0x0f, 0xf2, +}; +static const unsigned char kat4212_nonce[] = {0}; +static const unsigned char kat4212_persstr[] = {0}; +static const unsigned char kat4212_entropyinpr1[] = { + 0x0a, 0x90, 0xcd, 0xe5, 0x3e, 0x8e, 0x99, 0x57, 0xa4, 0x33, 0x2d, 0x86, + 0x54, 0xe7, 0xd4, 0x97, 0x4e, 0x5a, 0xca, 0xd0, 0x16, 0x30, 0x8c, 0x4b, + 0x2b, 0x97, 0x29, 0x4f, 0xdd, 0xbd, 0xce, 0xf5, 0x2e, 0xeb, 0x13, 0x8f, + 0x4a, 0xea, 0x8f, 0xc8, 0x87, 0x31, 0xd4, 0x1d, 0x2d, 0x90, 0xed, 0xb0, +}; +static const unsigned char kat4212_addinpr1[] = {0}; +static const unsigned char kat4212_entropyinpr2[] = { + 0xc7, 0xa4, 0x1f, 0xec, 0xb6, 0xdd, 0x8d, 0x2f, 0x52, 0xfd, 0xb1, 0x7f, + 0x1d, 0x36, 0x8e, 0x38, 0x4b, 0x2c, 0x0d, 0x66, 0x69, 0xdf, 0x40, 0x32, + 0xb0, 0x3f, 0xbe, 0xc3, 0x8f, 0x8c, 0xf5, 0x73, 0xb8, 0xc5, 0x44, 0x3a, + 0x62, 0xe0, 0x4c, 0x7a, 0xaa, 0xbf, 0x86, 0x59, 0xb2, 0xa5, 0x5f, 0xf8, +}; +static const unsigned char kat4212_addinpr2[] = {0}; +static const unsigned char kat4212_retbits[] = { + 0x7f, 0xe4, 0x11, 0x70, 0xd1, 0xe4, 0x40, 0x96, 0x93, 0x78, 0xfa, 0xd5, + 0xc9, 0xbb, 0x0e, 0x7b, 0x82, 0xb9, 0xfc, 0x5f, 0x7a, 0x27, 0x0f, 0x93, + 0xfc, 0x4f, 0x29, 0xc2, 0xc7, 0x04, 0x06, 0x18, 0xbd, 0x31, 0xb2, 0x15, + 0xe8, 0x7f, 0x2d, 0xe4, 0x83, 0x17, 0x2f, 0x87, 0xe9, 0x48, 0x42, 0xfe, + 0x41, 0x39, 0x12, 0x00, 0xd1, 0x83, 0x1c, 0xeb, 0x1a, 0xb6, 0xdb, 0xc6, + 0x1f, 0xc2, 0xcf, 0xd6, +}; +static const struct drbg_kat_pr_true kat4212_t = { + 11, kat4212_entropyin, kat4212_nonce, kat4212_persstr, + kat4212_entropyinpr1, kat4212_addinpr1, kat4212_entropyinpr2, + kat4212_addinpr2, kat4212_retbits +}; +static const struct drbg_kat kat4212 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4212_t +}; + +static const unsigned char kat4213_entropyin[] = { + 0xd3, 0x41, 0x85, 0xa9, 0x6f, 0x30, 0xca, 0x80, 0x67, 0x97, 0x0f, 0x89, + 0x5d, 0x8e, 0x0d, 0x04, 0xed, 0x25, 0xc5, 0x54, 0x86, 0xf4, 0xc9, 0xea, + 0x35, 0xd3, 0x28, 0xde, 0x49, 0xfe, 0x81, 0xe7, 0x72, 0x33, 0x44, 0x45, + 0xf2, 0xac, 0x37, 0x6c, 0x53, 0x03, 0x6f, 0x2f, 0xe6, 0x2c, 0x70, 0x0f, +}; +static const unsigned char kat4213_nonce[] = {0}; +static const unsigned char kat4213_persstr[] = {0}; +static const unsigned char kat4213_entropyinpr1[] = { + 0xe2, 0xb6, 0xe3, 0x76, 0x24, 0xbf, 0xb3, 0xc9, 0x28, 0xa2, 0x9b, 0x4a, + 0x0e, 0x47, 0x97, 0xd0, 0x52, 0x67, 0xc2, 0x63, 0xcb, 0xda, 0x6c, 0x4f, + 0x65, 0x23, 0xac, 0x60, 0xec, 0x7c, 0xd6, 0xa0, 0x1d, 0x9b, 0x1f, 0xc8, + 0x3d, 0x47, 0x55, 0x84, 0x38, 0xf8, 0xb5, 0xce, 0x60, 0x15, 0xff, 0x24, +}; +static const unsigned char kat4213_addinpr1[] = {0}; +static const unsigned char kat4213_entropyinpr2[] = { + 0xaf, 0xa5, 0xa7, 0xbf, 0xbc, 0x64, 0x8f, 0x7a, 0xa7, 0xeb, 0xa3, 0x5f, + 0x73, 0xce, 0xb5, 0xf3, 0x2f, 0xe4, 0x81, 0x0a, 0x76, 0x5b, 0x89, 0x6b, + 0x9f, 0x93, 0x82, 0xec, 0xee, 0xd8, 0xf9, 0xfa, 0xc7, 0x9c, 0x80, 0x74, + 0x26, 0x88, 0x25, 0xff, 0x88, 0x53, 0xb4, 0x61, 0x98, 0x18, 0x65, 0x03, +}; +static const unsigned char kat4213_addinpr2[] = {0}; +static const unsigned char kat4213_retbits[] = { + 0xfc, 0xca, 0x7e, 0x16, 0xa7, 0xbd, 0x24, 0x4e, 0xdd, 0x20, 0xaa, 0xbe, + 0xd0, 0x19, 0x74, 0xbe, 0x77, 0xd3, 0x51, 0xa2, 0x80, 0x51, 0xe1, 0x87, + 0x4c, 0xe7, 0xfc, 0x4b, 0x39, 0xa5, 0x25, 0x95, 0x95, 0xf3, 0x6f, 0xbf, + 0x9b, 0xfe, 0x2f, 0x87, 0x52, 0x12, 0x52, 0xab, 0xed, 0xb6, 0xa3, 0xcb, + 0xff, 0xfd, 0xe2, 0x37, 0xc1, 0x2a, 0x63, 0x1d, 0xaf, 0x38, 0x04, 0x74, + 0x56, 0x95, 0x06, 0x7b, +}; +static const struct drbg_kat_pr_true kat4213_t = { + 12, kat4213_entropyin, kat4213_nonce, kat4213_persstr, + kat4213_entropyinpr1, kat4213_addinpr1, kat4213_entropyinpr2, + kat4213_addinpr2, kat4213_retbits +}; +static const struct drbg_kat kat4213 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4213_t +}; + +static const unsigned char kat4214_entropyin[] = { + 0x15, 0xa7, 0xf6, 0x29, 0x89, 0x50, 0xb7, 0xa4, 0xd4, 0xdd, 0x1a, 0x3e, + 0xe3, 0xf6, 0x01, 0xad, 0x6c, 0x92, 0xc6, 0xbf, 0x65, 0xb6, 0x6d, 0x80, + 0xe7, 0x4e, 0xa0, 0x0d, 0x45, 0xea, 0xf7, 0xc6, 0xb7, 0xcf, 0xb4, 0x06, + 0xfc, 0x24, 0xc0, 0xfb, 0x74, 0x69, 0x76, 0x4c, 0xcf, 0xac, 0xca, 0x7c, +}; +static const unsigned char kat4214_nonce[] = {0}; +static const unsigned char kat4214_persstr[] = {0}; +static const unsigned char kat4214_entropyinpr1[] = { + 0x6b, 0x7f, 0x56, 0x0f, 0x76, 0x84, 0xda, 0x3a, 0xc2, 0x48, 0xcf, 0x5d, + 0xc6, 0x58, 0xc1, 0x82, 0x05, 0xe9, 0x7e, 0x02, 0x48, 0x68, 0x68, 0x02, + 0x47, 0x03, 0x18, 0x0b, 0xa1, 0xd4, 0x73, 0xa7, 0x1c, 0xa2, 0xe0, 0x2f, + 0xed, 0xbd, 0xae, 0x12, 0xfa, 0x2f, 0x30, 0x40, 0xd7, 0x84, 0x90, 0x62, +}; +static const unsigned char kat4214_addinpr1[] = {0}; +static const unsigned char kat4214_entropyinpr2[] = { + 0xdc, 0xbd, 0xe6, 0xe2, 0xd1, 0xb1, 0x97, 0x4e, 0x89, 0x5b, 0x54, 0x0f, + 0xd2, 0x07, 0x78, 0xa2, 0x66, 0x8a, 0xca, 0x9b, 0x56, 0x34, 0x26, 0x6f, + 0x32, 0xe3, 0x93, 0x5b, 0x78, 0x3d, 0xa9, 0x1b, 0xcd, 0x6d, 0x45, 0xb0, + 0x86, 0x4c, 0x1a, 0xf9, 0x8e, 0xef, 0xa9, 0x45, 0xd6, 0xab, 0x15, 0x4d, +}; +static const unsigned char kat4214_addinpr2[] = {0}; +static const unsigned char kat4214_retbits[] = { + 0x2a, 0x26, 0x49, 0x6a, 0xb8, 0x69, 0x2b, 0x33, 0x5d, 0x9e, 0xa3, 0x7f, + 0x4d, 0xaa, 0x96, 0xa4, 0xf3, 0x60, 0xd0, 0x58, 0x37, 0xcf, 0xf9, 0x9e, + 0xcd, 0x93, 0x99, 0xab, 0xeb, 0x2e, 0x5f, 0x69, 0xed, 0xe5, 0x16, 0x30, + 0xcb, 0x16, 0xd6, 0x28, 0x7c, 0x51, 0x83, 0x57, 0x55, 0xa3, 0x1e, 0xb6, + 0xff, 0x6b, 0x8c, 0x49, 0xc3, 0xe8, 0x94, 0x42, 0xe5, 0xdf, 0x1f, 0xb4, + 0x08, 0xb1, 0x15, 0x70, +}; +static const struct drbg_kat_pr_true kat4214_t = { + 13, kat4214_entropyin, kat4214_nonce, kat4214_persstr, + kat4214_entropyinpr1, kat4214_addinpr1, kat4214_entropyinpr2, + kat4214_addinpr2, kat4214_retbits +}; +static const struct drbg_kat kat4214 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4214_t +}; + +static const unsigned char kat4215_entropyin[] = { + 0x5a, 0x0b, 0x8e, 0x20, 0x7b, 0x55, 0xde, 0xdb, 0x2e, 0x7c, 0x3b, 0x62, + 0xbe, 0x91, 0xb4, 0xdf, 0xcc, 0x3c, 0x42, 0x25, 0x5d, 0xac, 0x29, 0x3e, + 0xd8, 0xa9, 0x3b, 0xc0, 0x18, 0x04, 0x71, 0x40, 0x11, 0x62, 0xf8, 0x33, + 0x7d, 0xc0, 0x0d, 0x6b, 0x10, 0xee, 0x03, 0x5f, 0x2f, 0x3f, 0x31, 0xf1, +}; +static const unsigned char kat4215_nonce[] = {0}; +static const unsigned char kat4215_persstr[] = {0}; +static const unsigned char kat4215_entropyinpr1[] = { + 0x1e, 0x51, 0x91, 0xf1, 0x8e, 0x3c, 0x04, 0x9b, 0x3a, 0xa3, 0x04, 0x60, + 0x4a, 0x42, 0xb1, 0x3e, 0x87, 0xb6, 0x1a, 0xb8, 0x08, 0xa1, 0xf2, 0x49, + 0xd6, 0x70, 0xa1, 0x5f, 0x21, 0x86, 0x24, 0x84, 0x59, 0x9e, 0x53, 0x13, + 0xe3, 0x74, 0x43, 0xaa, 0x06, 0xcc, 0x80, 0xd4, 0xdf, 0x78, 0x88, 0xa2, +}; +static const unsigned char kat4215_addinpr1[] = {0}; +static const unsigned char kat4215_entropyinpr2[] = { + 0xa0, 0x44, 0x35, 0xfa, 0xb8, 0xcf, 0xfa, 0xae, 0xf3, 0x4f, 0x67, 0x38, + 0xf2, 0x68, 0x2a, 0xde, 0xf4, 0x79, 0x0e, 0x8e, 0x26, 0x55, 0xd5, 0x94, + 0x3b, 0xd5, 0x37, 0x00, 0x09, 0xed, 0xe9, 0x9a, 0x6d, 0xa3, 0xc9, 0xca, + 0x4d, 0xc7, 0x10, 0x5a, 0x13, 0x52, 0xf9, 0xbd, 0x29, 0x5b, 0xe4, 0x19, +}; +static const unsigned char kat4215_addinpr2[] = {0}; +static const unsigned char kat4215_retbits[] = { + 0x31, 0xb0, 0x23, 0x44, 0x31, 0xf4, 0xff, 0x22, 0xf0, 0xc1, 0xf5, 0xc2, + 0x20, 0xa5, 0x89, 0x0c, 0x7e, 0xfa, 0xbc, 0x06, 0x97, 0x43, 0x57, 0xa1, + 0xab, 0x8a, 0x79, 0xd1, 0xca, 0xa6, 0x6b, 0x46, 0xb6, 0x2f, 0x0b, 0x5a, + 0x5b, 0x0d, 0x80, 0x10, 0x92, 0x3d, 0xd8, 0x6c, 0xed, 0x2f, 0x03, 0x9e, + 0xff, 0xa2, 0x03, 0x16, 0x19, 0xaa, 0xfb, 0xb3, 0xd7, 0xdc, 0x93, 0x62, + 0xef, 0x04, 0xbd, 0xf3, +}; +static const struct drbg_kat_pr_true kat4215_t = { + 14, kat4215_entropyin, kat4215_nonce, kat4215_persstr, + kat4215_entropyinpr1, kat4215_addinpr1, kat4215_entropyinpr2, + kat4215_addinpr2, kat4215_retbits +}; +static const struct drbg_kat kat4215 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4215_t +}; + +static const unsigned char kat4216_entropyin[] = { + 0x88, 0x40, 0xdc, 0x37, 0xe1, 0x39, 0x89, 0xf5, 0xe0, 0x78, 0xd8, 0xf2, + 0xa2, 0x30, 0x71, 0xed, 0x0a, 0x66, 0x59, 0x54, 0xab, 0xe9, 0x07, 0x97, + 0x98, 0x94, 0xbb, 0xea, 0x43, 0xd4, 0x9d, 0x93, 0x9f, 0xb0, 0xf9, 0xb7, + 0xfa, 0x91, 0x72, 0xb6, 0x71, 0xce, 0xad, 0x56, 0xce, 0x16, 0xfc, 0xe5, +}; +static const unsigned char kat4216_nonce[] = {0}; +static const unsigned char kat4216_persstr[] = {0}; +static const unsigned char kat4216_entropyinpr1[] = { + 0x14, 0x7e, 0x44, 0xb2, 0xe0, 0x34, 0x48, 0x6f, 0xac, 0xeb, 0xb0, 0x67, + 0xe6, 0xfd, 0xd7, 0xfd, 0x36, 0xbb, 0x86, 0xaf, 0x6f, 0xfd, 0xdd, 0xe2, + 0xef, 0xf0, 0x81, 0xab, 0x8b, 0x8f, 0x08, 0xe1, 0x36, 0x37, 0x78, 0x07, + 0xdb, 0x26, 0x36, 0xeb, 0x3a, 0xaa, 0x3f, 0xa8, 0xac, 0x0c, 0x0d, 0x04, +}; +static const unsigned char kat4216_addinpr1[] = { + 0x4a, 0x04, 0xa2, 0x1f, 0xc0, 0xf2, 0xb8, 0xa3, 0x2d, 0x69, 0x56, 0xff, + 0x95, 0x5d, 0x2f, 0x2e, 0xa5, 0x4a, 0x36, 0xd3, 0x7f, 0x0b, 0x92, 0x7a, + 0x46, 0x16, 0x5a, 0xff, 0xcc, 0xc6, 0x84, 0x27, 0xa9, 0x1c, 0x07, 0x66, + 0x56, 0x86, 0x95, 0x47, 0x4c, 0xe7, 0x83, 0xfe, 0xfd, 0xf2, 0x4c, 0xc8, +}; +static const unsigned char kat4216_entropyinpr2[] = { + 0xbb, 0x43, 0x82, 0x0b, 0x3f, 0x4a, 0xa1, 0xff, 0xeb, 0x0f, 0xe5, 0x51, + 0x26, 0xe0, 0x69, 0xf1, 0x7f, 0xbc, 0xd0, 0xd5, 0xa8, 0x30, 0x7b, 0xba, + 0x60, 0x55, 0x2f, 0x0e, 0x40, 0x89, 0xa7, 0x28, 0x33, 0xf2, 0x1c, 0x34, + 0x1e, 0x09, 0x12, 0x93, 0x95, 0x85, 0xa6, 0x43, 0xbb, 0x93, 0x8f, 0xef, +}; +static const unsigned char kat4216_addinpr2[] = { + 0x91, 0xef, 0x75, 0x10, 0x04, 0x5d, 0x2c, 0x9a, 0x95, 0xec, 0x16, 0x98, + 0xce, 0xa9, 0x3a, 0x63, 0xcb, 0xdb, 0xc9, 0xb2, 0x3d, 0x2f, 0xc4, 0xbc, + 0x84, 0x08, 0x38, 0x0d, 0xe7, 0xec, 0xf4, 0x47, 0x8e, 0x85, 0x2c, 0x30, + 0xb5, 0x3a, 0x6f, 0x61, 0xe3, 0x34, 0xdb, 0xc1, 0x04, 0x0c, 0x21, 0x3a, +}; +static const unsigned char kat4216_retbits[] = { + 0x25, 0x02, 0x7b, 0x15, 0xa3, 0x46, 0xae, 0xd2, 0x3a, 0x05, 0xc6, 0x87, + 0x98, 0x32, 0xb2, 0x5b, 0xcc, 0xa7, 0x3a, 0x80, 0x41, 0x18, 0x58, 0x25, + 0xfc, 0x81, 0x37, 0xc5, 0xbe, 0x64, 0x59, 0x33, 0xda, 0xde, 0xf1, 0x11, + 0xc0, 0x90, 0xc2, 0x40, 0x9c, 0x1e, 0x68, 0x68, 0x5a, 0xac, 0x21, 0x28, + 0x1e, 0x37, 0xea, 0x4e, 0x59, 0x23, 0x62, 0x82, 0x56, 0xd0, 0x59, 0xe8, + 0xec, 0xeb, 0x82, 0xbb, +}; +static const struct drbg_kat_pr_true kat4216_t = { + 0, kat4216_entropyin, kat4216_nonce, kat4216_persstr, + kat4216_entropyinpr1, kat4216_addinpr1, kat4216_entropyinpr2, + kat4216_addinpr2, kat4216_retbits +}; +static const struct drbg_kat kat4216 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4216_t +}; + +static const unsigned char kat4217_entropyin[] = { + 0xeb, 0x68, 0xdf, 0x19, 0xfa, 0x21, 0xc7, 0xa5, 0xea, 0xa0, 0x40, 0x72, + 0xa2, 0xd9, 0xfa, 0xc3, 0x05, 0x87, 0xf6, 0x36, 0x77, 0xbd, 0xa4, 0x50, + 0x00, 0x09, 0x60, 0xfe, 0x6e, 0x22, 0xf0, 0x37, 0x32, 0xca, 0xf2, 0x08, + 0x66, 0x11, 0x85, 0xad, 0x2a, 0xf4, 0xf6, 0x42, 0x99, 0xcb, 0x33, 0x31, +}; +static const unsigned char kat4217_nonce[] = {0}; +static const unsigned char kat4217_persstr[] = {0}; +static const unsigned char kat4217_entropyinpr1[] = { + 0x74, 0x6c, 0x45, 0x3d, 0xc7, 0x93, 0x20, 0xdb, 0xb5, 0x65, 0x41, 0x4b, + 0x2a, 0x35, 0x48, 0xa4, 0xd1, 0x6f, 0xb5, 0x94, 0x82, 0xa3, 0xaa, 0xc7, + 0xfd, 0x1b, 0x64, 0xb3, 0x9f, 0xa3, 0x89, 0x3d, 0xfe, 0x66, 0x35, 0xa0, + 0xb8, 0x90, 0xc2, 0x3a, 0xb9, 0xd6, 0x1c, 0x44, 0x86, 0xf0, 0x0f, 0x82, +}; +static const unsigned char kat4217_addinpr1[] = { + 0xe1, 0x32, 0x2e, 0xf6, 0xa0, 0x6e, 0x84, 0x12, 0x07, 0x7a, 0x3d, 0xc4, + 0x33, 0xd8, 0xc1, 0x91, 0xe1, 0x20, 0xc0, 0xee, 0x8a, 0xd3, 0x44, 0xac, + 0x22, 0x62, 0x43, 0x05, 0x01, 0x31, 0xd9, 0xb1, 0x85, 0xf7, 0xea, 0x69, + 0xd3, 0x0a, 0x27, 0xd2, 0x0d, 0x73, 0x89, 0x69, 0x8c, 0xa4, 0xb1, 0x4a, +}; +static const unsigned char kat4217_entropyinpr2[] = { + 0xb3, 0x6c, 0x9e, 0x30, 0xdb, 0xd3, 0x9a, 0x0b, 0xcf, 0x2d, 0x3f, 0x32, + 0x7e, 0xdb, 0x51, 0x79, 0x05, 0x7d, 0x85, 0x68, 0x16, 0x67, 0x76, 0x8d, + 0xac, 0x6e, 0x0b, 0xd9, 0xcc, 0xa4, 0x78, 0x95, 0x65, 0xd6, 0x72, 0x4f, + 0x19, 0xd3, 0x8b, 0x23, 0xf0, 0xcf, 0xc2, 0xe7, 0x38, 0x35, 0x72, 0x48, +}; +static const unsigned char kat4217_addinpr2[] = { + 0x13, 0x0a, 0xe4, 0x11, 0x3e, 0x31, 0xa9, 0x6c, 0xde, 0x97, 0xe2, 0xac, + 0xd1, 0xab, 0x8e, 0xd4, 0x2a, 0x4e, 0x55, 0xce, 0x65, 0x52, 0xd5, 0x61, + 0xfe, 0xc1, 0x6c, 0x33, 0xdd, 0x90, 0x3f, 0xda, 0x23, 0x98, 0x3a, 0x82, + 0x00, 0x8c, 0x6e, 0x7f, 0xe4, 0x7a, 0x5e, 0x1c, 0x97, 0x73, 0x7b, 0xf5, +}; +static const unsigned char kat4217_retbits[] = { + 0x99, 0xde, 0x1f, 0x10, 0x9f, 0x49, 0xc2, 0x8c, 0x55, 0xcd, 0x28, 0xc4, + 0xf9, 0xb7, 0x77, 0x20, 0xaa, 0x44, 0x6c, 0xe7, 0xec, 0x72, 0x46, 0xfe, + 0x96, 0xa5, 0x81, 0x9e, 0x15, 0xfd, 0xdd, 0xe7, 0x3f, 0x6c, 0x7f, 0xcc, + 0x95, 0xd5, 0x43, 0xb7, 0x03, 0xea, 0x56, 0xe6, 0x1b, 0x10, 0xf3, 0x63, + 0xee, 0xf8, 0xbf, 0x6b, 0x3a, 0x86, 0x59, 0x01, 0x3b, 0x56, 0x1f, 0xa4, + 0xab, 0xb6, 0xd4, 0xbb, +}; +static const struct drbg_kat_pr_true kat4217_t = { + 1, kat4217_entropyin, kat4217_nonce, kat4217_persstr, + kat4217_entropyinpr1, kat4217_addinpr1, kat4217_entropyinpr2, + kat4217_addinpr2, kat4217_retbits +}; +static const struct drbg_kat kat4217 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4217_t +}; + +static const unsigned char kat4218_entropyin[] = { + 0x1a, 0xb8, 0x74, 0xe6, 0x5e, 0xba, 0xe4, 0x92, 0xf3, 0x7b, 0xc4, 0xd9, + 0x8b, 0x4d, 0x49, 0xcd, 0x1b, 0x72, 0xcf, 0x01, 0xc8, 0xad, 0x3c, 0x22, + 0xa6, 0xeb, 0x9e, 0xa0, 0xc7, 0x86, 0x33, 0xa8, 0x2c, 0x6a, 0xa2, 0x0f, + 0xba, 0x2b, 0x25, 0x3e, 0x72, 0x82, 0xed, 0xd1, 0xf7, 0xe1, 0x88, 0xff, +}; +static const unsigned char kat4218_nonce[] = {0}; +static const unsigned char kat4218_persstr[] = {0}; +static const unsigned char kat4218_entropyinpr1[] = { + 0x83, 0xf4, 0xa2, 0x36, 0x06, 0x98, 0x6b, 0x63, 0x66, 0xf5, 0xd2, 0x3e, + 0x9d, 0x22, 0x70, 0x9e, 0xc0, 0x77, 0xe0, 0x04, 0x40, 0x83, 0x5c, 0xf9, + 0x6a, 0xdf, 0x29, 0xca, 0x90, 0x22, 0xe0, 0x1f, 0x3e, 0x9e, 0xf3, 0x98, + 0x83, 0x4e, 0x4b, 0xab, 0x35, 0xd7, 0x98, 0xb6, 0x52, 0xd1, 0x69, 0xc6, +}; +static const unsigned char kat4218_addinpr1[] = { + 0x9d, 0x76, 0x90, 0xe0, 0xac, 0xd4, 0x6a, 0xcd, 0x29, 0x4b, 0x89, 0xab, + 0xd9, 0x7e, 0x63, 0xed, 0xb2, 0x74, 0xa7, 0x24, 0xb0, 0x47, 0xda, 0x60, + 0x7d, 0x63, 0x51, 0x87, 0xb2, 0x13, 0x06, 0x65, 0x89, 0xe5, 0x29, 0x35, + 0x02, 0x2e, 0x92, 0x8f, 0xab, 0xd3, 0x92, 0x7d, 0xdb, 0xea, 0x74, 0xb0, +}; +static const unsigned char kat4218_entropyinpr2[] = { + 0x45, 0xc0, 0x9d, 0xd0, 0xe5, 0xaf, 0x16, 0x1c, 0xa1, 0x00, 0x72, 0x7f, + 0x74, 0x12, 0xee, 0x7e, 0x50, 0x01, 0x87, 0xdf, 0x23, 0x71, 0x87, 0x0c, + 0xa0, 0x79, 0xef, 0x1e, 0x1a, 0x30, 0xbb, 0x2c, 0x64, 0x9e, 0x63, 0xbf, + 0x68, 0x4b, 0x10, 0xb1, 0xb6, 0xde, 0x06, 0x30, 0x8a, 0xca, 0x48, 0xaf, +}; +static const unsigned char kat4218_addinpr2[] = { + 0x2c, 0x08, 0xa6, 0x74, 0x16, 0x88, 0xb7, 0xd1, 0xc9, 0x89, 0xc7, 0x78, + 0xc3, 0x0f, 0xbd, 0xc4, 0x4b, 0xe8, 0x8a, 0x4a, 0x48, 0x23, 0xd7, 0x4f, + 0x80, 0x39, 0xed, 0x1b, 0xac, 0x9a, 0x90, 0xff, 0x50, 0x62, 0xbb, 0x7e, + 0x39, 0xee, 0xd4, 0x11, 0xd8, 0xa1, 0x8f, 0xcc, 0xc3, 0xf3, 0x4f, 0x6b, +}; +static const unsigned char kat4218_retbits[] = { + 0x7b, 0x83, 0x5f, 0x8a, 0x8c, 0xc6, 0xe9, 0xe6, 0xbd, 0xa1, 0xcb, 0x55, + 0x7f, 0x12, 0xd8, 0xf3, 0xac, 0xfa, 0x59, 0xd8, 0x80, 0x24, 0xb6, 0x4a, + 0xd2, 0x3b, 0x49, 0x06, 0x49, 0x2c, 0xd3, 0x08, 0xdc, 0x82, 0xc0, 0x13, + 0xb8, 0xbb, 0xdb, 0xd1, 0x01, 0x5e, 0xe5, 0x14, 0x47, 0x2a, 0xc8, 0x14, + 0x85, 0x0f, 0xf6, 0x0a, 0x48, 0x21, 0xcc, 0xf4, 0xa9, 0x1b, 0xf4, 0x9d, + 0xf4, 0xde, 0xda, 0x68, +}; +static const struct drbg_kat_pr_true kat4218_t = { + 2, kat4218_entropyin, kat4218_nonce, kat4218_persstr, + kat4218_entropyinpr1, kat4218_addinpr1, kat4218_entropyinpr2, + kat4218_addinpr2, kat4218_retbits +}; +static const struct drbg_kat kat4218 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4218_t +}; + +static const unsigned char kat4219_entropyin[] = { + 0x7f, 0x74, 0xe7, 0x39, 0x5e, 0xf4, 0xee, 0xb0, 0xfa, 0x65, 0xd6, 0x23, + 0xbb, 0xdd, 0xaa, 0xd0, 0xc4, 0xba, 0x1d, 0xc8, 0x30, 0x09, 0xed, 0x08, + 0xb9, 0xb0, 0x65, 0x85, 0x97, 0x9e, 0x9f, 0x87, 0x35, 0x7a, 0x09, 0x9a, + 0x4e, 0xbd, 0x19, 0x78, 0x0e, 0x22, 0x18, 0x12, 0x77, 0x28, 0xae, 0xd1, +}; +static const unsigned char kat4219_nonce[] = {0}; +static const unsigned char kat4219_persstr[] = {0}; +static const unsigned char kat4219_entropyinpr1[] = { + 0x2b, 0xc6, 0xf9, 0x60, 0x2e, 0x10, 0xc8, 0x9d, 0x31, 0xa7, 0xa7, 0x11, + 0x70, 0xf8, 0x17, 0x99, 0x6b, 0x84, 0xbe, 0x5d, 0xbe, 0xdb, 0x69, 0xc8, + 0x30, 0x8f, 0x35, 0xdf, 0x61, 0xd2, 0x3a, 0xcb, 0x9c, 0x1d, 0xe4, 0xa2, + 0x46, 0xd4, 0xf5, 0xb6, 0x72, 0xda, 0xb9, 0x3e, 0xb9, 0x53, 0x38, 0xbf, +}; +static const unsigned char kat4219_addinpr1[] = { + 0xda, 0x55, 0xe4, 0x34, 0x57, 0x99, 0xa4, 0xf0, 0x39, 0x6a, 0x7c, 0x3c, + 0xd8, 0xf6, 0x1d, 0x1f, 0xf7, 0xff, 0xa7, 0x35, 0x8f, 0x83, 0x4b, 0x8a, + 0xac, 0x27, 0xb5, 0x2c, 0x7e, 0xf3, 0x9d, 0x15, 0xc0, 0x57, 0x9f, 0x29, + 0x8f, 0x7c, 0xdb, 0x47, 0x47, 0xe9, 0xfd, 0x83, 0xa4, 0xb9, 0x2c, 0xd2, +}; +static const unsigned char kat4219_entropyinpr2[] = { + 0x59, 0x7f, 0xe2, 0x1d, 0xe1, 0xc3, 0x0b, 0xe4, 0x55, 0x32, 0xd2, 0x56, + 0xf3, 0x35, 0x3d, 0xde, 0xa1, 0xba, 0x05, 0x74, 0xb2, 0x0a, 0x8f, 0xd5, + 0x42, 0x2c, 0x1d, 0x81, 0x90, 0x53, 0xfa, 0xdd, 0x4e, 0xe8, 0x87, 0xa5, + 0x6d, 0x37, 0x50, 0x68, 0x2b, 0xd8, 0xcb, 0xb2, 0x1b, 0xe8, 0xa5, 0xf6, +}; +static const unsigned char kat4219_addinpr2[] = { + 0x9b, 0x3c, 0x12, 0x3d, 0xec, 0x44, 0x02, 0xe9, 0x73, 0xe1, 0xea, 0x0b, + 0x9b, 0x12, 0x31, 0x1a, 0x91, 0xd1, 0x20, 0x80, 0x74, 0xef, 0xd4, 0x5b, + 0x2b, 0xae, 0x3f, 0x28, 0x6b, 0x9e, 0x9d, 0x51, 0x62, 0xbb, 0x3a, 0xb5, + 0xfc, 0xe4, 0xee, 0xce, 0xbc, 0x57, 0x8e, 0x58, 0xf3, 0x42, 0x2a, 0x03, +}; +static const unsigned char kat4219_retbits[] = { + 0x88, 0xa5, 0x59, 0x6f, 0x7b, 0x93, 0x93, 0x2a, 0x59, 0xc3, 0x8a, 0x4f, + 0x51, 0xfa, 0x2d, 0x58, 0xf1, 0x44, 0x4f, 0x41, 0x2e, 0x67, 0x55, 0x2c, + 0xe0, 0x37, 0xb9, 0xd5, 0xe1, 0x17, 0x70, 0x66, 0xfa, 0xb7, 0xd9, 0xb2, + 0x16, 0x24, 0xf2, 0x2b, 0xd6, 0x2b, 0x30, 0x10, 0x33, 0x06, 0x61, 0xc7, + 0xd5, 0x4f, 0xbf, 0x89, 0x49, 0xe7, 0xf0, 0x43, 0x57, 0x50, 0x26, 0x2c, + 0x81, 0x04, 0x3f, 0x1c, +}; +static const struct drbg_kat_pr_true kat4219_t = { + 3, kat4219_entropyin, kat4219_nonce, kat4219_persstr, + kat4219_entropyinpr1, kat4219_addinpr1, kat4219_entropyinpr2, + kat4219_addinpr2, kat4219_retbits +}; +static const struct drbg_kat kat4219 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4219_t +}; + +static const unsigned char kat4220_entropyin[] = { + 0x04, 0x20, 0xff, 0x57, 0xea, 0xfa, 0xeb, 0xde, 0xaf, 0xcf, 0x94, 0x59, + 0xb2, 0xdd, 0x26, 0x33, 0xd7, 0x44, 0x10, 0xb0, 0xd9, 0x86, 0xd8, 0xaf, + 0xb4, 0xea, 0x19, 0x56, 0x9e, 0xa8, 0x50, 0x4b, 0xd5, 0xbe, 0xac, 0xc1, + 0x77, 0x02, 0x95, 0x44, 0x02, 0xad, 0xe5, 0xf3, 0x56, 0x75, 0xfb, 0x7b, +}; +static const unsigned char kat4220_nonce[] = {0}; +static const unsigned char kat4220_persstr[] = {0}; +static const unsigned char kat4220_entropyinpr1[] = { + 0x0b, 0xe9, 0x79, 0xde, 0x4a, 0x34, 0x8a, 0x98, 0x8b, 0x23, 0x23, 0xa5, + 0x87, 0x4e, 0x3e, 0x1d, 0x13, 0x5b, 0xfc, 0x35, 0x52, 0xa2, 0xb8, 0x4e, + 0xbf, 0x89, 0x26, 0x17, 0x61, 0xa2, 0xbf, 0xf8, 0xd1, 0x84, 0x92, 0x29, + 0x78, 0xe3, 0x1a, 0x0f, 0x66, 0x44, 0x28, 0x28, 0xa7, 0x69, 0xd6, 0xe9, +}; +static const unsigned char kat4220_addinpr1[] = { + 0x7a, 0xdd, 0x2a, 0x00, 0x11, 0x5a, 0xd8, 0x72, 0x48, 0x74, 0x7e, 0x9e, + 0x66, 0x88, 0x74, 0x20, 0x7f, 0xba, 0xce, 0x9a, 0x41, 0x96, 0x18, 0x4e, + 0x7d, 0x35, 0x83, 0xd2, 0x25, 0xc1, 0x2b, 0x5a, 0x72, 0x27, 0x80, 0xa6, + 0xb6, 0xb5, 0x27, 0x51, 0xcb, 0x2d, 0x30, 0xe7, 0x93, 0x7a, 0xf7, 0x28, +}; +static const unsigned char kat4220_entropyinpr2[] = { + 0x28, 0xe2, 0x18, 0xfe, 0xbd, 0x7e, 0xc5, 0x2f, 0x75, 0xb9, 0xa2, 0xad, + 0x5a, 0x0c, 0x5b, 0x40, 0x94, 0x8c, 0xef, 0x3b, 0xa0, 0x0f, 0x9c, 0x19, + 0x92, 0xc9, 0x64, 0x58, 0x22, 0xef, 0xf8, 0x91, 0xf2, 0xba, 0x54, 0xdd, + 0x87, 0xa1, 0x1c, 0x51, 0x8e, 0xb7, 0x02, 0x72, 0xce, 0x9c, 0xf6, 0x4e, +}; +static const unsigned char kat4220_addinpr2[] = { + 0x68, 0xa0, 0xad, 0x06, 0x11, 0xc9, 0x14, 0x5d, 0x4d, 0xa5, 0xe6, 0xf3, + 0x66, 0x85, 0x66, 0x5f, 0x3f, 0xf5, 0x3b, 0x70, 0xf4, 0x3a, 0x09, 0x4c, + 0x61, 0x3c, 0x31, 0xf5, 0x33, 0x35, 0xd8, 0xbd, 0x77, 0xe6, 0x07, 0x72, + 0x82, 0x37, 0xfe, 0xe6, 0x2f, 0xe6, 0x90, 0xa2, 0x68, 0x34, 0x89, 0x5b, +}; +static const unsigned char kat4220_retbits[] = { + 0xff, 0x84, 0xca, 0x74, 0x06, 0xb8, 0xf3, 0xff, 0x4d, 0x21, 0xc2, 0xc3, + 0x2b, 0xd1, 0x81, 0xa3, 0x5f, 0x7c, 0x11, 0x87, 0xb9, 0xa3, 0xd9, 0x5e, + 0x93, 0xf7, 0xfc, 0xdd, 0x0c, 0x11, 0x77, 0x3c, 0xd1, 0x7e, 0xf7, 0x5b, + 0x6b, 0xb5, 0xae, 0x85, 0x0e, 0x58, 0x56, 0x05, 0x0d, 0x4e, 0x26, 0x7c, + 0x78, 0x4b, 0x6b, 0x7c, 0xc8, 0xa0, 0xf3, 0x75, 0x1a, 0xa4, 0x20, 0x5d, + 0x70, 0xbf, 0x2a, 0x23, +}; +static const struct drbg_kat_pr_true kat4220_t = { + 4, kat4220_entropyin, kat4220_nonce, kat4220_persstr, + kat4220_entropyinpr1, kat4220_addinpr1, kat4220_entropyinpr2, + kat4220_addinpr2, kat4220_retbits +}; +static const struct drbg_kat kat4220 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4220_t +}; + +static const unsigned char kat4221_entropyin[] = { + 0x05, 0xeb, 0xbc, 0xc9, 0x62, 0x1c, 0xad, 0x62, 0xa7, 0x75, 0x8f, 0x99, + 0xa2, 0xf1, 0xaa, 0xad, 0x3e, 0xcc, 0xe9, 0x84, 0x35, 0xc6, 0x04, 0x68, + 0xf2, 0xe5, 0x94, 0xad, 0xdc, 0x7c, 0x4d, 0xcb, 0xa7, 0x4f, 0xa0, 0xee, + 0xed, 0xf3, 0xa3, 0xd5, 0xf6, 0x18, 0x46, 0x49, 0x53, 0xc0, 0x9f, 0x5f, +}; +static const unsigned char kat4221_nonce[] = {0}; +static const unsigned char kat4221_persstr[] = {0}; +static const unsigned char kat4221_entropyinpr1[] = { + 0x64, 0x6a, 0xc4, 0x9b, 0x7c, 0xd9, 0xb6, 0x97, 0x31, 0xa3, 0xff, 0xeb, + 0x97, 0x40, 0x65, 0xa7, 0xf4, 0x8b, 0x22, 0x09, 0x9b, 0xd0, 0x72, 0x94, + 0xcf, 0x00, 0x91, 0x95, 0x70, 0x93, 0x0f, 0x6c, 0x47, 0x4a, 0x23, 0x0c, + 0x43, 0xe6, 0x0a, 0x63, 0x71, 0xbb, 0xa1, 0x91, 0x20, 0x83, 0x59, 0x87, +}; +static const unsigned char kat4221_addinpr1[] = { + 0xa9, 0x97, 0x76, 0xb0, 0x75, 0x42, 0x2d, 0xca, 0xe6, 0x72, 0xbd, 0xd8, + 0x6c, 0x65, 0x08, 0xf9, 0x5b, 0xd7, 0xce, 0x92, 0x8b, 0x0d, 0x52, 0x13, + 0x8d, 0xf4, 0x46, 0xe9, 0xf9, 0xf5, 0x07, 0x98, 0xfd, 0x04, 0x0e, 0x6d, + 0x1a, 0x8c, 0x13, 0x1c, 0x4b, 0xc8, 0x5e, 0xd3, 0x99, 0x82, 0xf6, 0xe5, +}; +static const unsigned char kat4221_entropyinpr2[] = { + 0xdf, 0xd8, 0xc4, 0xac, 0x10, 0x44, 0xe9, 0xf8, 0xe4, 0x1e, 0x89, 0x0a, + 0x3a, 0x0e, 0xac, 0x01, 0x14, 0x4f, 0x58, 0xe7, 0xe8, 0xcb, 0xfb, 0xf8, + 0x21, 0x38, 0xad, 0x16, 0x52, 0xa3, 0x0a, 0xb5, 0xbb, 0x9f, 0x2a, 0x25, + 0x92, 0x08, 0xd9, 0xa5, 0x51, 0xf0, 0xc1, 0x1f, 0x7c, 0x1d, 0xb6, 0x46, +}; +static const unsigned char kat4221_addinpr2[] = { + 0x97, 0x2a, 0xb0, 0xe6, 0x84, 0xdd, 0xf4, 0xed, 0xf2, 0x03, 0x6c, 0x36, + 0x6f, 0xc9, 0x34, 0x63, 0xec, 0xd9, 0xee, 0x39, 0x4e, 0xb8, 0xe9, 0x90, + 0x7c, 0x1b, 0x36, 0x47, 0x3c, 0xea, 0xe2, 0x77, 0x59, 0x2c, 0x22, 0x9a, + 0xa1, 0x28, 0x7d, 0xf3, 0x70, 0x6f, 0x0e, 0x22, 0x58, 0xdc, 0x18, 0x9f, +}; +static const unsigned char kat4221_retbits[] = { + 0x65, 0xd2, 0x2d, 0x6e, 0xbd, 0xe9, 0x6c, 0xe0, 0x3e, 0x51, 0xce, 0x0e, + 0xc6, 0xc6, 0x04, 0x7c, 0x9e, 0x1f, 0x23, 0x2c, 0xc2, 0x6b, 0x86, 0x11, + 0xf5, 0x1e, 0xa2, 0xbf, 0x9e, 0x21, 0x24, 0xcc, 0x63, 0x0e, 0x8b, 0xc7, + 0x82, 0x96, 0xdb, 0x44, 0x65, 0x93, 0x3b, 0xb7, 0xfa, 0x74, 0x2f, 0xa8, + 0x9d, 0x2d, 0x83, 0xbf, 0x52, 0x22, 0x42, 0x84, 0x2b, 0x57, 0x3f, 0x72, + 0xe8, 0x2c, 0x8b, 0x5c, +}; +static const struct drbg_kat_pr_true kat4221_t = { + 5, kat4221_entropyin, kat4221_nonce, kat4221_persstr, + kat4221_entropyinpr1, kat4221_addinpr1, kat4221_entropyinpr2, + kat4221_addinpr2, kat4221_retbits +}; +static const struct drbg_kat kat4221 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4221_t +}; + +static const unsigned char kat4222_entropyin[] = { + 0x11, 0x63, 0x75, 0xa1, 0x6f, 0x87, 0x76, 0x7d, 0x23, 0xa6, 0xc4, 0x6c, + 0x21, 0xe3, 0x99, 0x5b, 0x6f, 0x09, 0x25, 0xcd, 0x93, 0xce, 0xa8, 0x3a, + 0x2e, 0x98, 0x23, 0x77, 0xc3, 0x79, 0x9a, 0xc0, 0x31, 0x69, 0x25, 0x1e, + 0xd0, 0x17, 0x77, 0x68, 0x20, 0x04, 0x22, 0x84, 0xf8, 0xb8, 0xc5, 0xe7, +}; +static const unsigned char kat4222_nonce[] = {0}; +static const unsigned char kat4222_persstr[] = {0}; +static const unsigned char kat4222_entropyinpr1[] = { + 0x24, 0xc2, 0xa7, 0x35, 0x60, 0xa7, 0x5b, 0x58, 0xee, 0xba, 0x0f, 0x63, + 0x61, 0x53, 0x26, 0x78, 0x10, 0xac, 0xb5, 0x15, 0xf7, 0xe8, 0xfe, 0xe0, + 0x25, 0x50, 0xf8, 0x4c, 0x5b, 0x7b, 0x9c, 0x9d, 0x2b, 0x7a, 0x47, 0x82, + 0x70, 0xf0, 0xfa, 0x63, 0x0f, 0xca, 0xf7, 0xdb, 0x55, 0x52, 0x6e, 0xa0, +}; +static const unsigned char kat4222_addinpr1[] = { + 0x01, 0x77, 0x56, 0x8f, 0xe9, 0xa1, 0x2c, 0x23, 0xd4, 0xd6, 0xd5, 0x66, + 0x59, 0xd9, 0x77, 0x17, 0x0c, 0xa6, 0x8c, 0x79, 0x15, 0x89, 0x31, 0x0f, + 0xa2, 0x78, 0x16, 0xf3, 0xd4, 0x31, 0x56, 0x78, 0xbb, 0x1a, 0xd0, 0xfb, + 0x67, 0x3b, 0x23, 0x52, 0xab, 0xb4, 0x60, 0x7a, 0xd5, 0xb1, 0xd7, 0xe2, +}; +static const unsigned char kat4222_entropyinpr2[] = { + 0x8e, 0x83, 0x8e, 0xb3, 0xfc, 0x75, 0x90, 0x64, 0xac, 0x14, 0x47, 0xfe, + 0xc4, 0x7f, 0x9f, 0xbf, 0x4a, 0xd0, 0x68, 0x71, 0x42, 0x2b, 0x29, 0x7e, + 0x38, 0x14, 0x3c, 0x99, 0xd0, 0xa4, 0xfc, 0x99, 0x88, 0x55, 0xf3, 0xfb, + 0x77, 0x5d, 0x06, 0x20, 0x93, 0x37, 0x03, 0x98, 0xe2, 0xb7, 0x32, 0x3c, +}; +static const unsigned char kat4222_addinpr2[] = { + 0xa7, 0x30, 0x06, 0xe7, 0x92, 0x1b, 0x82, 0x57, 0xf7, 0xeb, 0x1a, 0x44, + 0xe9, 0xb9, 0xf8, 0x81, 0xed, 0xe7, 0xf0, 0xc8, 0x60, 0x7c, 0x83, 0x62, + 0xd4, 0x82, 0xe6, 0xdb, 0x9a, 0x7b, 0xe1, 0x0d, 0x2e, 0x72, 0x40, 0xe8, + 0x24, 0x88, 0xfb, 0xd2, 0x1f, 0x24, 0x70, 0x05, 0xf8, 0x88, 0x2a, 0x0e, +}; +static const unsigned char kat4222_retbits[] = { + 0x23, 0xed, 0x3b, 0xc4, 0x1d, 0x71, 0xf8, 0x9e, 0x15, 0xac, 0x91, 0xd4, + 0xe9, 0x9b, 0x8b, 0x3f, 0x28, 0x65, 0x9d, 0xcf, 0x09, 0x33, 0x45, 0x4b, + 0xdf, 0x4c, 0xbf, 0xb9, 0x11, 0x30, 0x56, 0x8b, 0x21, 0x36, 0xf9, 0x22, + 0x63, 0xf9, 0x54, 0x3b, 0x1c, 0xc3, 0x9f, 0xf4, 0x09, 0x85, 0xa4, 0x1a, + 0x15, 0x99, 0x8c, 0x81, 0xe2, 0xe2, 0x80, 0x9b, 0x57, 0x6d, 0x19, 0xb6, + 0x96, 0x42, 0xdb, 0x73, +}; +static const struct drbg_kat_pr_true kat4222_t = { + 6, kat4222_entropyin, kat4222_nonce, kat4222_persstr, + kat4222_entropyinpr1, kat4222_addinpr1, kat4222_entropyinpr2, + kat4222_addinpr2, kat4222_retbits +}; +static const struct drbg_kat kat4222 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4222_t +}; + +static const unsigned char kat4223_entropyin[] = { + 0xdd, 0xce, 0xd0, 0xae, 0x9a, 0x9c, 0xcf, 0xac, 0xf6, 0xc6, 0x34, 0xc1, + 0xa4, 0x56, 0xb1, 0x37, 0x22, 0x67, 0xe7, 0x1f, 0x7b, 0xb6, 0xc2, 0x98, + 0xe2, 0x1a, 0x08, 0x8f, 0x67, 0x5d, 0xcb, 0x03, 0xec, 0x74, 0x7c, 0x83, + 0xdd, 0x3a, 0xac, 0x74, 0xdf, 0xf2, 0xfd, 0x2a, 0xb0, 0x94, 0x9b, 0xb1, +}; +static const unsigned char kat4223_nonce[] = {0}; +static const unsigned char kat4223_persstr[] = {0}; +static const unsigned char kat4223_entropyinpr1[] = { + 0x82, 0x36, 0x3d, 0x9c, 0xd9, 0x89, 0xc2, 0x20, 0xe2, 0x4e, 0xbb, 0xfa, + 0x61, 0x58, 0x37, 0x9c, 0x21, 0xe9, 0xac, 0x61, 0x48, 0x97, 0x15, 0xbf, + 0xd6, 0x2e, 0xa6, 0xe6, 0x99, 0xf4, 0x89, 0xc3, 0x22, 0xa9, 0x22, 0xc3, + 0xa8, 0xec, 0xa6, 0x7c, 0x33, 0xbb, 0x1f, 0x49, 0xba, 0x3e, 0x11, 0x20, +}; +static const unsigned char kat4223_addinpr1[] = { + 0x79, 0xdb, 0x8e, 0x87, 0x31, 0xa7, 0x97, 0xd5, 0x41, 0x2f, 0x9e, 0xd7, + 0xca, 0xad, 0xa0, 0xb0, 0xbf, 0x78, 0x29, 0x8d, 0x76, 0x0e, 0x26, 0x86, + 0x93, 0xc5, 0xa5, 0x94, 0xdc, 0x52, 0xd8, 0x8e, 0x1d, 0xb8, 0x86, 0x9a, + 0x1f, 0xea, 0xca, 0x90, 0xb9, 0xde, 0x4e, 0x3e, 0xae, 0x97, 0xf9, 0xc8, +}; +static const unsigned char kat4223_entropyinpr2[] = { + 0x1c, 0x30, 0x7d, 0x61, 0x6d, 0xa4, 0xa4, 0x57, 0xbb, 0x36, 0xe1, 0x6d, + 0x3f, 0x94, 0x87, 0x6a, 0x94, 0x47, 0x90, 0xcf, 0x11, 0x6d, 0x37, 0x9c, + 0xad, 0xd9, 0x62, 0xce, 0x2a, 0x6b, 0xf2, 0xdc, 0x2e, 0x24, 0xd8, 0xde, + 0xc5, 0x0c, 0xa6, 0x68, 0x59, 0x62, 0xc2, 0x65, 0xec, 0x22, 0x94, 0x1b, +}; +static const unsigned char kat4223_addinpr2[] = { + 0xec, 0x27, 0xac, 0x86, 0x33, 0x55, 0x21, 0xeb, 0xb4, 0xce, 0x10, 0x9c, + 0xb7, 0x02, 0x08, 0xb1, 0xbe, 0x87, 0x58, 0x49, 0x60, 0xfd, 0x09, 0xa9, + 0xd9, 0x19, 0x06, 0x7b, 0x7b, 0x35, 0x0f, 0xcb, 0x91, 0xbe, 0xfe, 0x48, + 0x0d, 0x63, 0x23, 0x8c, 0x3d, 0x17, 0x91, 0x18, 0xea, 0xca, 0x13, 0x06, +}; +static const unsigned char kat4223_retbits[] = { + 0x98, 0xcd, 0xc7, 0x0b, 0x59, 0xe0, 0x2f, 0x75, 0xcf, 0xd1, 0xab, 0xee, + 0x1b, 0xac, 0x63, 0x6f, 0xfe, 0xa6, 0xb3, 0xe8, 0xa2, 0x2b, 0x4d, 0xb5, + 0x73, 0xb0, 0x4b, 0x2f, 0xbc, 0xd8, 0x17, 0x05, 0x08, 0x74, 0xca, 0x37, + 0x4f, 0xe2, 0x86, 0xde, 0x84, 0xc2, 0x11, 0xce, 0x04, 0x7e, 0x8e, 0x07, + 0x0a, 0x21, 0xd8, 0xcd, 0xfe, 0xa8, 0x4f, 0xfc, 0x70, 0x8a, 0x6a, 0xc2, + 0xe5, 0x4b, 0x00, 0xc4, +}; +static const struct drbg_kat_pr_true kat4223_t = { + 7, kat4223_entropyin, kat4223_nonce, kat4223_persstr, + kat4223_entropyinpr1, kat4223_addinpr1, kat4223_entropyinpr2, + kat4223_addinpr2, kat4223_retbits +}; +static const struct drbg_kat kat4223 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4223_t +}; + +static const unsigned char kat4224_entropyin[] = { + 0x6b, 0x18, 0x17, 0xb9, 0x3c, 0xc8, 0x51, 0x54, 0xe5, 0x5e, 0x85, 0x6b, + 0x1a, 0xab, 0x06, 0x7a, 0xb6, 0xe6, 0x68, 0xdd, 0xfb, 0x30, 0x75, 0x90, + 0xb2, 0x56, 0x3e, 0xc5, 0x9e, 0x17, 0x9f, 0xf8, 0xa6, 0x1c, 0x9a, 0x21, + 0xa8, 0x33, 0x0f, 0x01, 0xdc, 0xa3, 0xd0, 0xbb, 0xb2, 0xa0, 0x69, 0x8c, +}; +static const unsigned char kat4224_nonce[] = {0}; +static const unsigned char kat4224_persstr[] = {0}; +static const unsigned char kat4224_entropyinpr1[] = { + 0xf0, 0x7e, 0x7b, 0x4f, 0x72, 0xdf, 0xa2, 0x2b, 0x31, 0xc1, 0x44, 0xb6, + 0x70, 0x56, 0x55, 0x5d, 0x49, 0xc9, 0xf0, 0xc7, 0x0a, 0x80, 0x9c, 0xd9, + 0x66, 0x9b, 0x18, 0x1f, 0x0b, 0xd7, 0x93, 0xb0, 0x2b, 0x8d, 0xf7, 0x27, + 0x8e, 0xe8, 0xd6, 0x95, 0x43, 0x08, 0xe2, 0xbc, 0x73, 0x43, 0x08, 0xc3, +}; +static const unsigned char kat4224_addinpr1[] = { + 0x11, 0x80, 0x42, 0x24, 0x33, 0x86, 0x80, 0x6c, 0xea, 0x3f, 0x82, 0x61, + 0x3a, 0x34, 0x23, 0x19, 0x46, 0x4b, 0x90, 0x35, 0x98, 0x76, 0xd7, 0x4c, + 0x90, 0x12, 0xa2, 0x70, 0xb4, 0xed, 0x68, 0xa5, 0x95, 0x7d, 0x1d, 0x39, + 0xd0, 0xf4, 0x59, 0x85, 0xd2, 0x7b, 0x70, 0x98, 0x12, 0x2e, 0xc8, 0x19, +}; +static const unsigned char kat4224_entropyinpr2[] = { + 0x68, 0x25, 0xa3, 0x5d, 0x81, 0x20, 0x9a, 0xb3, 0xeb, 0xa1, 0xa7, 0xbd, + 0x81, 0x74, 0xdd, 0xde, 0xe6, 0xc8, 0x8f, 0x8c, 0x08, 0xb8, 0x4f, 0x3e, + 0xca, 0xa3, 0xdc, 0x31, 0xe1, 0x0d, 0x9f, 0xfe, 0xf6, 0x52, 0x81, 0xfa, + 0xbd, 0x5c, 0x72, 0xf1, 0x18, 0xaf, 0x84, 0xc9, 0xde, 0x67, 0x0f, 0x9b, +}; +static const unsigned char kat4224_addinpr2[] = { + 0xa4, 0xcc, 0xcf, 0x42, 0x43, 0xab, 0x34, 0x98, 0xf9, 0x8a, 0x2c, 0xf8, + 0xd8, 0x05, 0x04, 0xa0, 0xf1, 0x44, 0xee, 0xf0, 0x01, 0x9c, 0x1e, 0x24, + 0x1a, 0x26, 0xb3, 0xd7, 0x46, 0xce, 0x58, 0xe2, 0x90, 0x03, 0xa8, 0x6a, + 0x98, 0x0e, 0xef, 0x85, 0xe3, 0xd5, 0x52, 0x03, 0x19, 0x0e, 0x17, 0x0f, +}; +static const unsigned char kat4224_retbits[] = { + 0xf8, 0xf2, 0xa1, 0xae, 0x6a, 0x83, 0x23, 0x33, 0xf2, 0xc4, 0xbc, 0x79, + 0xb8, 0x56, 0xbe, 0x49, 0x1c, 0x2a, 0xe7, 0x2f, 0x7b, 0x3d, 0x8e, 0x9e, + 0xae, 0x1a, 0x4c, 0x1a, 0xc3, 0xa8, 0xd6, 0x90, 0xb5, 0xc4, 0xb3, 0x23, + 0x04, 0xaf, 0x09, 0xe5, 0x04, 0x3e, 0xac, 0x8f, 0xb2, 0x4f, 0xc4, 0xb7, + 0x6a, 0x99, 0x3e, 0x98, 0xdb, 0xa0, 0x18, 0x20, 0xf0, 0x8c, 0xe4, 0x8d, + 0xf4, 0x3c, 0xcb, 0xf2, +}; +static const struct drbg_kat_pr_true kat4224_t = { + 8, kat4224_entropyin, kat4224_nonce, kat4224_persstr, + kat4224_entropyinpr1, kat4224_addinpr1, kat4224_entropyinpr2, + kat4224_addinpr2, kat4224_retbits +}; +static const struct drbg_kat kat4224 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4224_t +}; + +static const unsigned char kat4225_entropyin[] = { + 0x4d, 0x6d, 0x65, 0x99, 0xec, 0x22, 0x36, 0xd2, 0xa3, 0xe3, 0xfd, 0xfe, + 0xda, 0x7c, 0x6d, 0x0a, 0xc4, 0xb5, 0x28, 0x72, 0xbe, 0x3f, 0x71, 0xfe, + 0x05, 0xaf, 0xbd, 0x22, 0xdd, 0x7b, 0x08, 0x65, 0x0f, 0xe0, 0x1e, 0x02, + 0x77, 0x0b, 0x54, 0x55, 0xac, 0x83, 0x97, 0x72, 0xd8, 0x19, 0x93, 0x6d, +}; +static const unsigned char kat4225_nonce[] = {0}; +static const unsigned char kat4225_persstr[] = {0}; +static const unsigned char kat4225_entropyinpr1[] = { + 0x8b, 0x4c, 0x7e, 0xa9, 0x9b, 0x25, 0x1b, 0x8f, 0x8a, 0x85, 0x6e, 0x00, + 0x98, 0xd0, 0xd5, 0x76, 0xf5, 0xc3, 0x94, 0x62, 0x96, 0x76, 0x36, 0x05, + 0x59, 0xaf, 0x83, 0x05, 0x69, 0x11, 0x26, 0x14, 0x15, 0x9a, 0xbf, 0x6d, + 0xc5, 0x45, 0x1a, 0x66, 0xaf, 0x50, 0x5b, 0x10, 0x09, 0x7f, 0x1d, 0x83, +}; +static const unsigned char kat4225_addinpr1[] = { + 0xe7, 0x45, 0x27, 0x2e, 0x39, 0xa9, 0x4a, 0x2d, 0x5e, 0x78, 0x0c, 0x7c, + 0x89, 0x4b, 0xba, 0x3a, 0xec, 0x21, 0xff, 0xa5, 0xfe, 0x25, 0xae, 0xa5, + 0xc0, 0x3a, 0x39, 0xed, 0x61, 0x83, 0xed, 0x73, 0xf9, 0x9d, 0xf3, 0x91, + 0x0b, 0xf5, 0x03, 0x20, 0xe9, 0x6a, 0xaf, 0x23, 0xdb, 0x42, 0x8d, 0xd1, +}; +static const unsigned char kat4225_entropyinpr2[] = { + 0x39, 0xfa, 0x4d, 0x42, 0x19, 0xf3, 0xcf, 0xb1, 0xbc, 0x0d, 0x56, 0x8d, + 0xac, 0xae, 0x55, 0x22, 0x3c, 0xc1, 0x4e, 0x99, 0xb1, 0xe0, 0x23, 0x2b, + 0x1e, 0x14, 0x23, 0x0d, 0x3d, 0x0f, 0x44, 0x02, 0x42, 0x18, 0xdc, 0xb1, + 0x9c, 0xba, 0x99, 0x32, 0x8f, 0xf3, 0x38, 0x80, 0x3d, 0x95, 0x60, 0x8f, +}; +static const unsigned char kat4225_addinpr2[] = { + 0xfd, 0xd5, 0x07, 0x89, 0x54, 0xad, 0xe4, 0x47, 0xda, 0x52, 0xc0, 0x9d, + 0xe9, 0x51, 0xe7, 0x64, 0x18, 0x79, 0xed, 0xe1, 0xbc, 0xb8, 0xc9, 0x01, + 0x89, 0x0b, 0x1e, 0x48, 0xd3, 0xf8, 0xb1, 0x44, 0x8d, 0xfc, 0x70, 0xc4, + 0xf7, 0xf5, 0x07, 0x33, 0xc0, 0x00, 0x7d, 0x82, 0xb3, 0x10, 0x8a, 0xb6, +}; +static const unsigned char kat4225_retbits[] = { + 0xed, 0xe3, 0x96, 0xce, 0x2f, 0x56, 0xfc, 0x2d, 0x79, 0x72, 0x76, 0xdd, + 0x80, 0x7a, 0x4c, 0x19, 0x17, 0x18, 0x0a, 0x31, 0x4b, 0x18, 0x34, 0xa3, + 0x0b, 0x86, 0xb6, 0xa7, 0xb9, 0x7e, 0x7c, 0x6b, 0x29, 0x38, 0xfc, 0xd3, + 0x9b, 0x10, 0x70, 0xc4, 0xcc, 0x51, 0xb9, 0x75, 0x04, 0x1c, 0xf3, 0x7b, + 0xd5, 0xe6, 0x77, 0x20, 0x33, 0x41, 0x7b, 0x6d, 0xbd, 0xfd, 0x47, 0x38, + 0x3c, 0x0a, 0xc5, 0xf4, +}; +static const struct drbg_kat_pr_true kat4225_t = { + 9, kat4225_entropyin, kat4225_nonce, kat4225_persstr, + kat4225_entropyinpr1, kat4225_addinpr1, kat4225_entropyinpr2, + kat4225_addinpr2, kat4225_retbits +}; +static const struct drbg_kat kat4225 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4225_t +}; + +static const unsigned char kat4226_entropyin[] = { + 0xc7, 0xbb, 0x20, 0x7d, 0xde, 0x0b, 0x74, 0x33, 0x03, 0x83, 0xa1, 0xfa, + 0xbb, 0xa1, 0x41, 0x96, 0xba, 0xff, 0xa7, 0xbe, 0xb9, 0x68, 0x8e, 0x43, + 0xe8, 0xb9, 0xa2, 0x99, 0x6f, 0xa6, 0x9f, 0xe3, 0x68, 0x96, 0xb5, 0x2f, + 0xdd, 0xd6, 0x27, 0x04, 0x02, 0x60, 0xa9, 0x6a, 0x25, 0x1d, 0xbb, 0x91, +}; +static const unsigned char kat4226_nonce[] = {0}; +static const unsigned char kat4226_persstr[] = {0}; +static const unsigned char kat4226_entropyinpr1[] = { + 0x62, 0xf7, 0x0e, 0x58, 0xe1, 0x32, 0x11, 0xe3, 0x43, 0xb2, 0xf6, 0x57, + 0x2b, 0x69, 0x68, 0xc0, 0x4d, 0x9e, 0xe6, 0x8c, 0xab, 0x7f, 0xa7, 0x3d, + 0xd3, 0x98, 0xaf, 0x8d, 0x7a, 0xd4, 0x54, 0x8a, 0x47, 0xf2, 0xe2, 0xfd, + 0xf2, 0x60, 0x52, 0xe3, 0x16, 0x2b, 0x45, 0x3e, 0x2e, 0x94, 0x22, 0x4c, +}; +static const unsigned char kat4226_addinpr1[] = { + 0xad, 0x0f, 0x47, 0x22, 0xe6, 0x75, 0x06, 0xab, 0x51, 0x3a, 0x71, 0x79, + 0xd9, 0xa2, 0x96, 0x1e, 0x92, 0x74, 0xe8, 0xed, 0x05, 0x9d, 0x5a, 0x3a, + 0xfc, 0xe8, 0xcc, 0xa5, 0xa3, 0x85, 0x8e, 0x8e, 0x4e, 0x2c, 0xb9, 0xc8, + 0xe7, 0x0c, 0x16, 0x48, 0x96, 0x18, 0x15, 0xc9, 0xeb, 0x36, 0x98, 0x20, +}; +static const unsigned char kat4226_entropyinpr2[] = { + 0x88, 0xba, 0x1b, 0xa8, 0xd9, 0x68, 0xda, 0xc6, 0xdb, 0xdc, 0x2a, 0x67, + 0xb0, 0xa6, 0x54, 0x0f, 0xbd, 0xbf, 0x7a, 0xd5, 0x25, 0x7e, 0xa2, 0x63, + 0x52, 0xab, 0x4e, 0xd5, 0xd4, 0x9d, 0xd1, 0x8c, 0x46, 0x95, 0x52, 0xef, + 0x8d, 0x29, 0x7b, 0xec, 0xe4, 0xea, 0x6f, 0xb6, 0x26, 0xbb, 0x50, 0x85, +}; +static const unsigned char kat4226_addinpr2[] = { + 0xeb, 0xe9, 0xb7, 0xf3, 0x43, 0xe9, 0x3f, 0x63, 0x3e, 0x41, 0x06, 0xc1, + 0x71, 0x63, 0x8f, 0xc7, 0xe9, 0x8f, 0x4b, 0x0f, 0x50, 0x98, 0x41, 0x53, + 0x32, 0xf8, 0x45, 0x40, 0x9f, 0x46, 0xac, 0x35, 0x2b, 0x1b, 0x90, 0x82, + 0x15, 0x5f, 0x68, 0x6c, 0x4b, 0x2c, 0x77, 0x6c, 0xe6, 0x0b, 0x57, 0x5d, +}; +static const unsigned char kat4226_retbits[] = { + 0x75, 0xec, 0xb6, 0x43, 0x2c, 0x5b, 0xde, 0x9e, 0xfd, 0x90, 0xa9, 0x13, + 0xed, 0x6c, 0x4f, 0xa8, 0x63, 0x7a, 0x54, 0x1b, 0xe3, 0x2b, 0x8d, 0x44, + 0xcc, 0xe6, 0x62, 0xcf, 0x0a, 0x53, 0xb4, 0x6a, 0x19, 0x68, 0x4b, 0x88, + 0xb1, 0x6e, 0x35, 0xb3, 0xeb, 0x1a, 0xd3, 0x70, 0x20, 0xed, 0xa4, 0x85, + 0x0b, 0x92, 0xb9, 0x13, 0xd0, 0x2a, 0x40, 0xd0, 0x4d, 0xc4, 0x60, 0x46, + 0xd2, 0x72, 0xa0, 0x45, +}; +static const struct drbg_kat_pr_true kat4226_t = { + 10, kat4226_entropyin, kat4226_nonce, kat4226_persstr, + kat4226_entropyinpr1, kat4226_addinpr1, kat4226_entropyinpr2, + kat4226_addinpr2, kat4226_retbits +}; +static const struct drbg_kat kat4226 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4226_t +}; + +static const unsigned char kat4227_entropyin[] = { + 0xe0, 0x7e, 0x5a, 0x3f, 0x1c, 0xf5, 0xf7, 0x5c, 0x93, 0xa7, 0x4e, 0x76, + 0x69, 0xd6, 0xa2, 0x57, 0xd7, 0x1a, 0x99, 0xc2, 0x4a, 0xe3, 0x2e, 0x95, + 0xab, 0xe6, 0x04, 0x67, 0xc7, 0x39, 0x26, 0x74, 0x30, 0xf7, 0x27, 0xf0, + 0xf0, 0xd9, 0xdc, 0x58, 0xb3, 0xa8, 0xb4, 0x91, 0x8e, 0xdf, 0xa9, 0xf3, +}; +static const unsigned char kat4227_nonce[] = {0}; +static const unsigned char kat4227_persstr[] = {0}; +static const unsigned char kat4227_entropyinpr1[] = { + 0x8d, 0xd0, 0x54, 0x18, 0x47, 0xae, 0x27, 0x47, 0x9a, 0x33, 0x1f, 0x6c, + 0x6b, 0xa4, 0xdc, 0xe7, 0x97, 0xb2, 0x34, 0x06, 0x50, 0x56, 0xed, 0xc3, + 0xbe, 0xbc, 0xc2, 0xc7, 0xfd, 0x2f, 0x3a, 0x57, 0xc8, 0x3a, 0x6d, 0xdf, + 0x15, 0xd4, 0x3d, 0x5d, 0xb0, 0x6d, 0x7e, 0x78, 0xfa, 0x09, 0xfd, 0x0e, +}; +static const unsigned char kat4227_addinpr1[] = { + 0x40, 0x79, 0xfa, 0x82, 0x6e, 0x52, 0x11, 0x2a, 0x97, 0xd9, 0x9d, 0x69, + 0xbc, 0xa6, 0x15, 0xf6, 0x69, 0xa2, 0x9d, 0xb9, 0xb3, 0x42, 0xa5, 0xb3, + 0x10, 0x39, 0xd0, 0xf1, 0xe8, 0xfb, 0xf2, 0x0d, 0xd8, 0xb8, 0xec, 0xef, + 0x44, 0x56, 0xd9, 0xd2, 0x8e, 0x6d, 0xb8, 0xca, 0x0f, 0xe9, 0xd7, 0x7b, +}; +static const unsigned char kat4227_entropyinpr2[] = { + 0x7f, 0x64, 0xba, 0xd8, 0x26, 0x8e, 0x5e, 0x0a, 0xe3, 0x47, 0x38, 0x50, + 0xaa, 0x5f, 0xee, 0x43, 0x5c, 0xb6, 0x81, 0x46, 0xda, 0x97, 0x26, 0xe4, + 0x81, 0x1d, 0xde, 0x0b, 0xda, 0x3e, 0x1d, 0xa9, 0x97, 0xc0, 0x17, 0x62, + 0xc4, 0x8e, 0x27, 0xe7, 0x54, 0xda, 0xf4, 0xc1, 0x95, 0xce, 0x84, 0x48, +}; +static const unsigned char kat4227_addinpr2[] = { + 0xb9, 0xed, 0x51, 0x1c, 0x9c, 0x92, 0x1c, 0xfc, 0xea, 0x7a, 0x13, 0xa1, + 0x87, 0x25, 0x8e, 0x3b, 0x71, 0xb7, 0x35, 0xad, 0x6c, 0x24, 0xf4, 0x0e, + 0xf2, 0x94, 0x88, 0x1e, 0xba, 0x11, 0xc1, 0x6f, 0xed, 0x3a, 0x8e, 0x00, + 0x29, 0x89, 0x2b, 0x36, 0x70, 0x1b, 0x4d, 0x64, 0xe1, 0x7a, 0x29, 0x65, +}; +static const unsigned char kat4227_retbits[] = { + 0xf1, 0xb9, 0xbf, 0x97, 0x5a, 0x3f, 0x1e, 0xcd, 0x93, 0xb6, 0xc9, 0xb7, + 0x51, 0x65, 0x38, 0x20, 0x5a, 0x3a, 0x56, 0x7d, 0xca, 0x5a, 0xba, 0xb0, + 0x3e, 0x44, 0xcc, 0xb0, 0x1a, 0x34, 0x28, 0x94, 0x72, 0x91, 0x38, 0xcb, + 0x6b, 0x9b, 0x0a, 0x49, 0xe2, 0xc2, 0x1f, 0xc6, 0x76, 0xea, 0x3c, 0x74, + 0xc4, 0x69, 0xd6, 0xc9, 0x3d, 0x34, 0x37, 0x69, 0x3d, 0x3d, 0x57, 0x46, + 0x6e, 0xf3, 0x81, 0x74, +}; +static const struct drbg_kat_pr_true kat4227_t = { + 11, kat4227_entropyin, kat4227_nonce, kat4227_persstr, + kat4227_entropyinpr1, kat4227_addinpr1, kat4227_entropyinpr2, + kat4227_addinpr2, kat4227_retbits +}; +static const struct drbg_kat kat4227 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4227_t +}; + +static const unsigned char kat4228_entropyin[] = { + 0x58, 0xda, 0xf9, 0x3b, 0x28, 0x80, 0x85, 0xfc, 0xe9, 0x1c, 0x60, 0x4a, + 0xf9, 0x12, 0x8e, 0x3f, 0xb1, 0xf3, 0xee, 0x06, 0xec, 0x7a, 0x15, 0x9d, + 0x8b, 0xa0, 0x72, 0xd9, 0x01, 0xfe, 0x0b, 0xa4, 0x0c, 0x1a, 0x90, 0xf3, + 0x15, 0xe0, 0xde, 0x53, 0x2e, 0x83, 0xc0, 0xf0, 0xaf, 0xa1, 0x00, 0x14, +}; +static const unsigned char kat4228_nonce[] = {0}; +static const unsigned char kat4228_persstr[] = {0}; +static const unsigned char kat4228_entropyinpr1[] = { + 0xf6, 0x1f, 0xa2, 0xf3, 0x40, 0x36, 0x72, 0x48, 0x91, 0x75, 0x8d, 0x52, + 0x6f, 0x50, 0xb8, 0x02, 0x18, 0x0f, 0x98, 0xd8, 0x4c, 0x11, 0xf2, 0x42, + 0x5c, 0x8e, 0x7d, 0x6c, 0xfc, 0xd9, 0xbb, 0xe9, 0x56, 0xa1, 0xbb, 0x22, + 0x55, 0x46, 0xd5, 0x40, 0x9d, 0xd6, 0xcd, 0x9d, 0x1c, 0x74, 0xd3, 0x5a, +}; +static const unsigned char kat4228_addinpr1[] = { + 0xcc, 0x3a, 0x58, 0x6c, 0xe4, 0x76, 0xfa, 0x37, 0x1c, 0x2f, 0x60, 0x30, + 0xa1, 0x86, 0x60, 0xe0, 0x27, 0xcc, 0xf5, 0x94, 0x4b, 0xc3, 0x00, 0x48, + 0xb0, 0x54, 0xd8, 0x57, 0xfc, 0x9d, 0x05, 0x6e, 0x4d, 0x7a, 0xce, 0x22, + 0x29, 0xc5, 0xda, 0x92, 0xf6, 0x29, 0x3e, 0xdc, 0x98, 0xe5, 0x7a, 0xab, +}; +static const unsigned char kat4228_entropyinpr2[] = { + 0xd7, 0xf7, 0x7b, 0xd1, 0x4b, 0x76, 0x98, 0xad, 0x6d, 0x88, 0x98, 0x07, + 0xf0, 0x2f, 0x2f, 0x2f, 0x7b, 0x06, 0x4b, 0x15, 0x5b, 0x6b, 0x3e, 0xc2, + 0x82, 0x0b, 0xaf, 0x3b, 0x8b, 0x6f, 0x38, 0x70, 0x72, 0xcc, 0x6c, 0x7d, + 0xcf, 0xd5, 0x54, 0xd0, 0xac, 0x97, 0xbd, 0x6c, 0x6c, 0x87, 0x97, 0x1d, +}; +static const unsigned char kat4228_addinpr2[] = { + 0x89, 0xb0, 0x71, 0x37, 0x88, 0x26, 0x01, 0xe5, 0x0a, 0x7c, 0x06, 0x37, + 0x12, 0x47, 0x9b, 0x19, 0xb2, 0x01, 0x54, 0xeb, 0x5f, 0x71, 0xd8, 0xb5, + 0x09, 0xb0, 0x87, 0x8b, 0xc5, 0x89, 0x53, 0x61, 0x64, 0xc3, 0xdf, 0xfc, + 0x77, 0x3b, 0xfb, 0x1c, 0x18, 0x56, 0xd6, 0xde, 0xf3, 0x19, 0x61, 0xb1, +}; +static const unsigned char kat4228_retbits[] = { + 0x8d, 0xbe, 0xee, 0x09, 0x95, 0x85, 0x18, 0x0b, 0x03, 0xba, 0xe1, 0x57, + 0x06, 0xde, 0xf3, 0x93, 0xb9, 0xb3, 0x1d, 0x56, 0x92, 0x70, 0x2e, 0xce, + 0x6c, 0xae, 0x4c, 0xe8, 0xf4, 0x4f, 0x8f, 0xcf, 0xfc, 0xa4, 0x74, 0x3a, + 0x0e, 0xe9, 0x8f, 0xe3, 0xc5, 0xf9, 0x23, 0x3c, 0xe1, 0x7e, 0xb4, 0x25, + 0x72, 0xb0, 0x4c, 0x36, 0x85, 0xe0, 0xee, 0x0d, 0xf5, 0x60, 0x33, 0xc8, + 0xd0, 0xff, 0xf6, 0x3a, +}; +static const struct drbg_kat_pr_true kat4228_t = { + 12, kat4228_entropyin, kat4228_nonce, kat4228_persstr, + kat4228_entropyinpr1, kat4228_addinpr1, kat4228_entropyinpr2, + kat4228_addinpr2, kat4228_retbits +}; +static const struct drbg_kat kat4228 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4228_t +}; + +static const unsigned char kat4229_entropyin[] = { + 0x49, 0x29, 0xfe, 0x3c, 0xcf, 0x07, 0xf2, 0x60, 0xd2, 0x8d, 0xe7, 0x36, + 0x9d, 0x65, 0xf1, 0x63, 0xc8, 0xfe, 0xde, 0x9c, 0xb5, 0x0b, 0x51, 0x35, + 0x9a, 0x55, 0x89, 0xa9, 0xc4, 0xee, 0xf0, 0x91, 0x05, 0x9b, 0x12, 0x9d, + 0x41, 0x14, 0x39, 0x4f, 0xef, 0xb3, 0xb0, 0xd4, 0x6d, 0xb9, 0xdf, 0x51, +}; +static const unsigned char kat4229_nonce[] = {0}; +static const unsigned char kat4229_persstr[] = {0}; +static const unsigned char kat4229_entropyinpr1[] = { + 0xe9, 0xc9, 0xdb, 0x75, 0xeb, 0x63, 0xe4, 0xbb, 0x6d, 0x9c, 0x3e, 0x26, + 0xe8, 0x92, 0xcb, 0x8d, 0xf0, 0x76, 0xd7, 0x94, 0xff, 0x6b, 0xd0, 0x76, + 0x46, 0x26, 0x43, 0x2d, 0xc9, 0xed, 0xbe, 0x22, 0xe1, 0xad, 0xdd, 0x43, + 0x90, 0x64, 0x1f, 0xba, 0x4b, 0xaf, 0x8f, 0xee, 0x18, 0xb3, 0x72, 0x96, +}; +static const unsigned char kat4229_addinpr1[] = { + 0xec, 0x66, 0xa9, 0x9b, 0x91, 0xb2, 0x98, 0xce, 0xba, 0x1d, 0xc6, 0xaf, + 0x63, 0x42, 0x8e, 0x42, 0x73, 0xc4, 0x24, 0xbb, 0x93, 0xbb, 0xbd, 0xea, + 0x59, 0xd2, 0x47, 0x72, 0xa2, 0xe0, 0x26, 0xcd, 0x10, 0xfa, 0xdb, 0xd2, + 0xaf, 0xf8, 0x8c, 0x05, 0x76, 0xae, 0x23, 0x17, 0x68, 0xfa, 0x34, 0x45, +}; +static const unsigned char kat4229_entropyinpr2[] = { + 0x22, 0xec, 0x20, 0x6c, 0x5e, 0x08, 0xce, 0x23, 0x33, 0x0f, 0xf9, 0x6d, + 0x97, 0x1c, 0xfa, 0x54, 0xc3, 0xe8, 0xa5, 0xd7, 0x00, 0x46, 0x3e, 0x9e, + 0x12, 0xb4, 0x18, 0xd7, 0x2b, 0x06, 0xa6, 0x26, 0x35, 0x8a, 0xa9, 0xb8, + 0x2c, 0x64, 0xa5, 0xde, 0xb6, 0x35, 0xf2, 0xb5, 0xda, 0x35, 0x4c, 0x09, +}; +static const unsigned char kat4229_addinpr2[] = { + 0x2a, 0x56, 0xa4, 0x36, 0xf0, 0xc9, 0xd6, 0x77, 0x88, 0xd0, 0xeb, 0xbc, + 0x4c, 0x8a, 0x55, 0x79, 0x12, 0xd6, 0xdb, 0x43, 0x72, 0xe9, 0xbf, 0xda, + 0x0e, 0x12, 0xaa, 0x5b, 0x68, 0xa4, 0x0f, 0x18, 0x9d, 0x9a, 0x81, 0xdd, + 0x6d, 0xb7, 0xa6, 0x96, 0xfb, 0x5c, 0x18, 0x60, 0xe1, 0xb3, 0xbf, 0xb1, +}; +static const unsigned char kat4229_retbits[] = { + 0x9c, 0x01, 0xa7, 0xd2, 0x95, 0xf6, 0x24, 0xfd, 0xf3, 0x2d, 0xb8, 0x0d, + 0xea, 0xd0, 0x09, 0x69, 0x24, 0xb8, 0x0d, 0xfe, 0x3b, 0x7b, 0x11, 0x94, + 0x66, 0x54, 0x6d, 0x87, 0x93, 0x1b, 0x7d, 0x2f, 0x0a, 0xcc, 0x36, 0x03, + 0x13, 0xbc, 0x38, 0xb7, 0xf0, 0x8f, 0x59, 0x0b, 0x0e, 0xd3, 0xdb, 0xa3, + 0x39, 0xc0, 0xb6, 0x9a, 0x35, 0x44, 0x70, 0xea, 0xf8, 0x19, 0xd9, 0xcf, + 0x0f, 0x31, 0x8f, 0x1a, +}; +static const struct drbg_kat_pr_true kat4229_t = { + 13, kat4229_entropyin, kat4229_nonce, kat4229_persstr, + kat4229_entropyinpr1, kat4229_addinpr1, kat4229_entropyinpr2, + kat4229_addinpr2, kat4229_retbits +}; +static const struct drbg_kat kat4229 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4229_t +}; + +static const unsigned char kat4230_entropyin[] = { + 0x69, 0xf7, 0xe3, 0x24, 0xec, 0xf5, 0xbd, 0x85, 0xaf, 0x9e, 0xcc, 0xd1, + 0x52, 0xd7, 0xd2, 0x61, 0x99, 0xae, 0x4d, 0x19, 0xd2, 0x9a, 0xd8, 0x4d, + 0x3f, 0x75, 0xe2, 0x7e, 0x0d, 0x4b, 0xe0, 0xac, 0x01, 0xf2, 0xf1, 0xdb, + 0xfe, 0xc6, 0xda, 0x1c, 0x00, 0x1d, 0x1d, 0xdd, 0xfd, 0xa2, 0xd5, 0x82, +}; +static const unsigned char kat4230_nonce[] = {0}; +static const unsigned char kat4230_persstr[] = {0}; +static const unsigned char kat4230_entropyinpr1[] = { + 0x35, 0xe2, 0x34, 0x58, 0x9f, 0x09, 0x3e, 0xec, 0x80, 0xe8, 0x89, 0x5f, + 0x15, 0xd4, 0x16, 0x29, 0xa7, 0x7b, 0xdc, 0x2c, 0x06, 0x7d, 0x83, 0x6c, + 0x0c, 0xb8, 0x2e, 0xd1, 0x8c, 0x6b, 0x8b, 0x4f, 0x12, 0x98, 0xf0, 0x28, + 0x7b, 0x19, 0x0d, 0x10, 0x19, 0x2d, 0x32, 0xcd, 0x62, 0xfa, 0x62, 0x27, +}; +static const unsigned char kat4230_addinpr1[] = { + 0x7c, 0x30, 0x0a, 0x1c, 0x9f, 0xfd, 0x8a, 0x63, 0x8a, 0xef, 0x6f, 0x62, + 0xc6, 0x63, 0xaa, 0x7f, 0x59, 0x22, 0xb0, 0x8e, 0x9f, 0xb8, 0xcb, 0x30, + 0x64, 0x29, 0x10, 0x84, 0x07, 0x55, 0x71, 0x1c, 0x70, 0xd8, 0x37, 0x15, + 0xfa, 0xba, 0x86, 0x41, 0x2f, 0x62, 0x1b, 0xbe, 0x98, 0x3a, 0xb0, 0x0b, +}; +static const unsigned char kat4230_entropyinpr2[] = { + 0xff, 0xd6, 0xfd, 0x30, 0x31, 0x39, 0x7d, 0x33, 0xe3, 0x82, 0xf4, 0x0b, + 0x63, 0x38, 0xe7, 0xe3, 0x64, 0x0b, 0x9b, 0x35, 0x80, 0x0d, 0x89, 0x05, + 0x81, 0xfa, 0xd4, 0x78, 0x43, 0x66, 0xa1, 0x53, 0x3f, 0x38, 0x39, 0x8f, + 0x25, 0x5d, 0xc3, 0x16, 0xbd, 0xe2, 0x22, 0x85, 0x07, 0x94, 0xe4, 0x6a, +}; +static const unsigned char kat4230_addinpr2[] = { + 0xb1, 0xe3, 0xc7, 0x70, 0xad, 0xbc, 0x77, 0x2d, 0x94, 0xed, 0xef, 0x61, + 0x88, 0xd0, 0xf0, 0x7e, 0xa1, 0xc2, 0x5f, 0xb4, 0x1d, 0xd2, 0x0e, 0xef, + 0xb5, 0x52, 0xde, 0xad, 0x33, 0xdc, 0x47, 0xf6, 0x2e, 0x99, 0xa1, 0x73, + 0x6e, 0xb4, 0x3f, 0xa1, 0x11, 0xe1, 0xc0, 0x4e, 0x0a, 0xad, 0x78, 0xbc, +}; +static const unsigned char kat4230_retbits[] = { + 0x82, 0x6d, 0xc7, 0xb1, 0xc3, 0x9f, 0xb4, 0x95, 0x5f, 0x61, 0x4f, 0xab, + 0x27, 0x69, 0x7e, 0xd5, 0xfa, 0x1e, 0xd8, 0x68, 0x6c, 0x70, 0x1e, 0xf5, + 0xe0, 0x37, 0x76, 0xa8, 0x14, 0xbb, 0xcd, 0xf9, 0xaf, 0xe4, 0x93, 0x43, + 0xcb, 0x53, 0x94, 0x42, 0x41, 0xc3, 0x0b, 0x20, 0x1b, 0xe6, 0xd1, 0x81, + 0xed, 0xd2, 0x0d, 0x55, 0xfe, 0x03, 0x74, 0xa4, 0x3d, 0x68, 0x20, 0x5d, + 0x8e, 0xf7, 0x58, 0xff, +}; +static const struct drbg_kat_pr_true kat4230_t = { + 14, kat4230_entropyin, kat4230_nonce, kat4230_persstr, + kat4230_entropyinpr1, kat4230_addinpr1, kat4230_entropyinpr2, + kat4230_addinpr2, kat4230_retbits +}; +static const struct drbg_kat kat4230 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4230_t +}; + +static const unsigned char kat4231_entropyin[] = { + 0x87, 0x54, 0x68, 0x8f, 0x2a, 0xfa, 0x71, 0x1e, 0x12, 0xae, 0x65, 0xb6, + 0xa4, 0xc5, 0xe7, 0xa5, 0x1e, 0x5f, 0xfe, 0xcf, 0xef, 0xb2, 0x34, 0x79, + 0x08, 0xab, 0x19, 0x11, 0xbb, 0x37, 0xb1, 0xf1, 0xe1, 0x5f, 0x12, 0xc8, + 0x94, 0x8c, 0xba, 0x3b, 0x7c, 0x76, 0xf0, 0x0c, 0x74, 0x2f, 0x74, 0xae, +}; +static const unsigned char kat4231_nonce[] = {0}; +static const unsigned char kat4231_persstr[] = { + 0x6f, 0x11, 0xce, 0x50, 0x1e, 0x74, 0x18, 0x17, 0xbf, 0x70, 0xf4, 0x72, + 0xc8, 0xeb, 0x57, 0x07, 0x2a, 0x08, 0xdb, 0x0b, 0x10, 0xdf, 0x75, 0x98, + 0xa5, 0x69, 0x75, 0x7d, 0xc8, 0x2c, 0xed, 0xa5, 0xd8, 0xce, 0x1d, 0xb8, + 0xd5, 0x8c, 0xf4, 0xb2, 0x46, 0xa7, 0x7d, 0xdc, 0x62, 0xc8, 0xf0, 0xd7, +}; +static const unsigned char kat4231_entropyinpr1[] = { + 0x14, 0x86, 0xe8, 0x2b, 0x9f, 0xa8, 0x89, 0x75, 0x81, 0x7e, 0x47, 0x34, + 0x22, 0x09, 0xba, 0xa7, 0x3e, 0x6e, 0x5b, 0xb0, 0x1f, 0xa8, 0xe0, 0x73, + 0x37, 0x44, 0x3b, 0x64, 0x5b, 0x1f, 0x74, 0xba, 0x94, 0xa7, 0xfd, 0x3d, + 0x78, 0xd5, 0x67, 0x41, 0xb1, 0x4f, 0xf5, 0x9e, 0xc4, 0xa1, 0x93, 0xc4, +}; +static const unsigned char kat4231_addinpr1[] = {0}; +static const unsigned char kat4231_entropyinpr2[] = { + 0x97, 0x7f, 0x62, 0x91, 0x3f, 0xf7, 0x75, 0x5d, 0xf2, 0x2f, 0xa6, 0xdc, + 0xe0, 0x63, 0x66, 0xf6, 0xf7, 0xc6, 0x6e, 0xe9, 0x70, 0x05, 0x65, 0xab, + 0x05, 0x6e, 0xed, 0x91, 0x06, 0x4b, 0xfe, 0xd8, 0x15, 0xbf, 0xc0, 0xc9, + 0xf4, 0x64, 0xce, 0x97, 0x80, 0x02, 0x5c, 0x70, 0xdd, 0xaf, 0x8c, 0x85, +}; +static const unsigned char kat4231_addinpr2[] = {0}; +static const unsigned char kat4231_retbits[] = { + 0xc7, 0x63, 0xa4, 0x7f, 0xdd, 0xd5, 0x84, 0xd0, 0x81, 0x0e, 0x1f, 0xbf, + 0x09, 0x92, 0x09, 0xc2, 0xcf, 0x5c, 0xfb, 0xd0, 0x14, 0x81, 0x51, 0xb9, + 0x95, 0x05, 0xb3, 0xb8, 0x62, 0x44, 0x97, 0xdf, 0x32, 0xc0, 0x2b, 0x56, + 0xba, 0xe3, 0x38, 0xcb, 0x15, 0xcb, 0x7c, 0x5a, 0xde, 0x19, 0x7d, 0x77, + 0x64, 0x3b, 0x67, 0xec, 0x06, 0xc3, 0x28, 0x07, 0x22, 0x62, 0x7b, 0xe3, + 0x70, 0x2a, 0xe4, 0x65, +}; +static const struct drbg_kat_pr_true kat4231_t = { + 0, kat4231_entropyin, kat4231_nonce, kat4231_persstr, + kat4231_entropyinpr1, kat4231_addinpr1, kat4231_entropyinpr2, + kat4231_addinpr2, kat4231_retbits +}; +static const struct drbg_kat kat4231 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4231_t +}; + +static const unsigned char kat4232_entropyin[] = { + 0x94, 0x6c, 0xa2, 0x27, 0x6b, 0x14, 0xa1, 0x2e, 0x3f, 0xec, 0x37, 0xa3, + 0xb0, 0x98, 0x6e, 0xda, 0x88, 0x07, 0x6b, 0xe0, 0x1a, 0x76, 0x95, 0x46, + 0x76, 0x03, 0xcd, 0xe3, 0xd2, 0x12, 0x0f, 0x6c, 0x98, 0x48, 0x3b, 0xf8, + 0xe7, 0xe2, 0x8a, 0xac, 0xd3, 0x54, 0xde, 0x8f, 0xd0, 0x68, 0xa5, 0x9a, +}; +static const unsigned char kat4232_nonce[] = {0}; +static const unsigned char kat4232_persstr[] = { + 0xc3, 0x79, 0xd1, 0x6e, 0xca, 0xef, 0x5c, 0x8b, 0xf8, 0xd8, 0xa5, 0x2a, + 0x0e, 0x43, 0x8e, 0x69, 0xf6, 0x8f, 0xbc, 0xdc, 0x43, 0xf4, 0x89, 0x12, + 0xea, 0x32, 0x19, 0x06, 0xfc, 0x1a, 0x42, 0x7e, 0xcd, 0xe9, 0x56, 0x91, + 0x1b, 0x87, 0x44, 0x5c, 0x70, 0x3c, 0x78, 0x3f, 0xc4, 0x1f, 0x43, 0xd1, +}; +static const unsigned char kat4232_entropyinpr1[] = { + 0x4d, 0xec, 0x4c, 0x9a, 0xcc, 0x06, 0xbe, 0x7a, 0xc2, 0x73, 0x68, 0x17, + 0x91, 0x48, 0x04, 0xcc, 0x8b, 0x91, 0xb8, 0xc9, 0x8d, 0xb3, 0x9a, 0xf6, + 0xe4, 0x1f, 0x39, 0x8c, 0xa1, 0x96, 0xc2, 0xff, 0x81, 0x30, 0x40, 0xad, + 0xef, 0xef, 0x39, 0x60, 0x0a, 0xba, 0x67, 0xc9, 0x89, 0x64, 0x38, 0x58, +}; +static const unsigned char kat4232_addinpr1[] = {0}; +static const unsigned char kat4232_entropyinpr2[] = { + 0xe0, 0x4a, 0x72, 0x34, 0x92, 0xbc, 0xe4, 0x0c, 0xd4, 0x53, 0xb3, 0x22, + 0x8f, 0x95, 0xd8, 0x86, 0xe9, 0xdc, 0x89, 0x7d, 0xea, 0xce, 0xfd, 0x2f, + 0x8b, 0x5a, 0xdd, 0xd7, 0x2b, 0xc1, 0x9c, 0xd5, 0x1c, 0xce, 0x24, 0xac, + 0xbb, 0xac, 0x04, 0xd9, 0xd3, 0x13, 0xaf, 0x2a, 0xe7, 0x6a, 0x1f, 0x48, +}; +static const unsigned char kat4232_addinpr2[] = {0}; +static const unsigned char kat4232_retbits[] = { + 0xd3, 0x8c, 0xb0, 0x9e, 0xf4, 0xba, 0x80, 0x61, 0xa2, 0x3a, 0x07, 0x82, + 0x2e, 0x8c, 0x1d, 0x2d, 0xf6, 0x40, 0xed, 0x67, 0x23, 0x95, 0x7c, 0xaa, + 0xf7, 0xef, 0xf4, 0x37, 0x29, 0x18, 0xb2, 0x77, 0x10, 0x74, 0x68, 0x8b, + 0x16, 0x77, 0xf4, 0x09, 0x0c, 0x5d, 0x4f, 0xe4, 0xb4, 0x36, 0xea, 0x94, + 0x15, 0x1a, 0x9e, 0x6b, 0xa7, 0x50, 0xd2, 0x2c, 0x73, 0x4e, 0x55, 0xb5, + 0x9f, 0x90, 0x11, 0x3c, +}; +static const struct drbg_kat_pr_true kat4232_t = { + 1, kat4232_entropyin, kat4232_nonce, kat4232_persstr, + kat4232_entropyinpr1, kat4232_addinpr1, kat4232_entropyinpr2, + kat4232_addinpr2, kat4232_retbits +}; +static const struct drbg_kat kat4232 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4232_t +}; + +static const unsigned char kat4233_entropyin[] = { + 0xba, 0x0b, 0xa4, 0x10, 0x59, 0x24, 0xfa, 0x7f, 0xf2, 0xa4, 0x19, 0x69, + 0x30, 0x75, 0x1a, 0x9c, 0xd7, 0x42, 0xdf, 0xb4, 0xed, 0x6d, 0x0c, 0xcb, + 0x2e, 0xa7, 0x94, 0x4f, 0xc4, 0xdf, 0x3c, 0x31, 0xdc, 0xc0, 0xcc, 0xab, + 0xf6, 0x2f, 0x74, 0x5f, 0x6d, 0x4a, 0x9b, 0xdc, 0x82, 0x65, 0xca, 0xc7, +}; +static const unsigned char kat4233_nonce[] = {0}; +static const unsigned char kat4233_persstr[] = { + 0x10, 0xdf, 0x13, 0x43, 0xaa, 0x82, 0xeb, 0x96, 0x50, 0x87, 0x65, 0x9e, + 0x34, 0x15, 0x14, 0xfd, 0x53, 0x18, 0x62, 0x18, 0x1b, 0x54, 0x4b, 0x0f, + 0x1b, 0x2f, 0x8c, 0x54, 0xb5, 0xd7, 0x78, 0x25, 0xfb, 0x17, 0x71, 0xd4, + 0x2a, 0x34, 0x70, 0x39, 0x07, 0x12, 0xcd, 0x55, 0xa4, 0xa8, 0xd0, 0x15, +}; +static const unsigned char kat4233_entropyinpr1[] = { + 0xe2, 0x90, 0x7d, 0xd7, 0x3c, 0xed, 0xba, 0x98, 0x3a, 0xf3, 0xe1, 0xf3, + 0x5c, 0x03, 0x15, 0xdc, 0x38, 0x3b, 0x61, 0x35, 0x0d, 0xc8, 0xa2, 0x58, + 0x56, 0x95, 0x66, 0xbd, 0x41, 0x33, 0x7c, 0x46, 0x0d, 0x69, 0xb4, 0x3c, + 0xc4, 0x84, 0xef, 0xc6, 0x78, 0x30, 0xd7, 0x49, 0x21, 0x9f, 0x0f, 0x5f, +}; +static const unsigned char kat4233_addinpr1[] = {0}; +static const unsigned char kat4233_entropyinpr2[] = { + 0x2e, 0x9b, 0xca, 0x5e, 0x90, 0x41, 0x7c, 0x99, 0x3c, 0x1b, 0x88, 0xc0, + 0x11, 0x31, 0x60, 0x27, 0xd5, 0xb1, 0x13, 0x6f, 0xf1, 0xf8, 0x9f, 0xf8, + 0xd4, 0x81, 0xa5, 0x54, 0x31, 0xfb, 0x82, 0x1f, 0x49, 0xb2, 0x3c, 0xd8, + 0x0c, 0xd2, 0xea, 0x28, 0x3a, 0x16, 0xf2, 0xdd, 0xf9, 0x9a, 0x42, 0x3c, +}; +static const unsigned char kat4233_addinpr2[] = {0}; +static const unsigned char kat4233_retbits[] = { + 0xa4, 0x1c, 0xb4, 0x62, 0x4f, 0x02, 0x10, 0x47, 0xe6, 0xc8, 0x45, 0x88, + 0xcf, 0x8c, 0xec, 0xd7, 0xeb, 0xa1, 0xf2, 0x79, 0x40, 0x06, 0x95, 0xfb, + 0xe1, 0xea, 0x35, 0x42, 0xd2, 0x22, 0x9c, 0xee, 0xe4, 0xaa, 0xc2, 0x60, + 0x74, 0x9c, 0x77, 0x10, 0x3e, 0x42, 0x43, 0x58, 0x30, 0x12, 0x8a, 0xd2, + 0x3c, 0xed, 0xd7, 0xe5, 0xea, 0xe7, 0x86, 0xbb, 0x85, 0xc9, 0xb2, 0x8f, + 0xda, 0x4e, 0xcf, 0xd7, +}; +static const struct drbg_kat_pr_true kat4233_t = { + 2, kat4233_entropyin, kat4233_nonce, kat4233_persstr, + kat4233_entropyinpr1, kat4233_addinpr1, kat4233_entropyinpr2, + kat4233_addinpr2, kat4233_retbits +}; +static const struct drbg_kat kat4233 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4233_t +}; + +static const unsigned char kat4234_entropyin[] = { + 0x47, 0x77, 0x4d, 0x94, 0x57, 0xce, 0x21, 0xed, 0x3e, 0xc5, 0xc6, 0xd3, + 0x05, 0x9b, 0xf1, 0x19, 0x51, 0xea, 0x02, 0xaa, 0x3e, 0x9f, 0xb3, 0x30, + 0xa1, 0x4f, 0x11, 0xa4, 0xc4, 0xa4, 0x14, 0xae, 0x04, 0xdc, 0x4c, 0x71, + 0x5b, 0xd3, 0xa3, 0xa5, 0x1c, 0x2e, 0x20, 0x3c, 0x34, 0xa0, 0xd0, 0xcb, +}; +static const unsigned char kat4234_nonce[] = {0}; +static const unsigned char kat4234_persstr[] = { + 0x1c, 0x6b, 0xcd, 0xd1, 0xb4, 0xec, 0x24, 0x23, 0xb0, 0x7b, 0xb3, 0xec, + 0xec, 0xab, 0x20, 0x96, 0x02, 0x5b, 0xa0, 0xaa, 0x35, 0x99, 0x9e, 0xec, + 0x40, 0x18, 0xd7, 0xae, 0xcf, 0xd6, 0x97, 0xdd, 0xe5, 0xd8, 0xf2, 0x61, + 0xcb, 0x5d, 0x2e, 0xb6, 0xff, 0xad, 0x39, 0x2d, 0xbd, 0x53, 0xc6, 0x9e, +}; +static const unsigned char kat4234_entropyinpr1[] = { + 0xdb, 0xba, 0x3e, 0x6b, 0x68, 0x72, 0x8c, 0xc8, 0xb9, 0x1c, 0x9c, 0x01, + 0x5b, 0xdb, 0x68, 0x36, 0xde, 0xaa, 0x91, 0x75, 0x1c, 0x4b, 0xec, 0xa3, + 0x9b, 0x50, 0xcd, 0x86, 0xa4, 0x61, 0x1f, 0x85, 0xd6, 0xc8, 0x56, 0x6f, + 0xe1, 0x73, 0xfe, 0xe9, 0x11, 0x5c, 0x57, 0x57, 0xbc, 0xb8, 0xfb, 0xa5, +}; +static const unsigned char kat4234_addinpr1[] = {0}; +static const unsigned char kat4234_entropyinpr2[] = { + 0x00, 0xbd, 0x93, 0x09, 0x9a, 0x12, 0xc6, 0xf1, 0x88, 0xde, 0x02, 0x87, + 0x09, 0x61, 0x2a, 0x02, 0x50, 0xa5, 0x5c, 0xf0, 0x1a, 0xe1, 0xab, 0xe7, + 0xba, 0x77, 0x90, 0x07, 0x9b, 0xdb, 0xd7, 0x38, 0x15, 0xbe, 0x05, 0x5c, + 0xa3, 0x37, 0x02, 0x28, 0x9a, 0xfd, 0xd6, 0xab, 0x7e, 0x36, 0x82, 0x7e, +}; +static const unsigned char kat4234_addinpr2[] = {0}; +static const unsigned char kat4234_retbits[] = { + 0x62, 0xcc, 0x13, 0x66, 0x83, 0xf3, 0xfa, 0x31, 0x3f, 0x19, 0xd2, 0x3e, + 0x7c, 0xb3, 0xa2, 0xf3, 0xd2, 0x6c, 0xa6, 0x97, 0x19, 0x5e, 0x08, 0x29, + 0xee, 0x74, 0x79, 0x35, 0x1a, 0xce, 0x5a, 0xc5, 0xde, 0xd2, 0x0d, 0xc7, + 0x33, 0x2d, 0x34, 0x86, 0x41, 0x9e, 0x56, 0x2a, 0xee, 0x1d, 0x5d, 0xa8, + 0x64, 0x7a, 0xe8, 0x35, 0x81, 0x0d, 0xfb, 0xf7, 0x7b, 0xa4, 0xad, 0xa1, + 0xd5, 0xe3, 0x10, 0x14, +}; +static const struct drbg_kat_pr_true kat4234_t = { + 3, kat4234_entropyin, kat4234_nonce, kat4234_persstr, + kat4234_entropyinpr1, kat4234_addinpr1, kat4234_entropyinpr2, + kat4234_addinpr2, kat4234_retbits +}; +static const struct drbg_kat kat4234 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4234_t +}; + +static const unsigned char kat4235_entropyin[] = { + 0x79, 0xdc, 0xb3, 0xdc, 0x67, 0xc7, 0x71, 0xbb, 0xdf, 0xcd, 0x9a, 0x2c, + 0xc7, 0x6f, 0x79, 0x6e, 0x2d, 0x2c, 0xbd, 0xa5, 0x58, 0xd7, 0xa4, 0xec, + 0x32, 0x83, 0x2c, 0xc3, 0xa8, 0x61, 0x39, 0x5e, 0x3c, 0x47, 0xfd, 0xa0, + 0xca, 0x58, 0x40, 0x15, 0xf8, 0xa3, 0xb6, 0x6d, 0x95, 0x92, 0x9b, 0x00, +}; +static const unsigned char kat4235_nonce[] = {0}; +static const unsigned char kat4235_persstr[] = { + 0xb0, 0x05, 0x14, 0x37, 0x6f, 0x68, 0xa0, 0x95, 0x99, 0x13, 0x37, 0x0f, + 0x46, 0x57, 0x06, 0x02, 0x53, 0x4d, 0x34, 0x9b, 0xc7, 0x09, 0x16, 0x4c, + 0xcf, 0xd0, 0xa2, 0xd6, 0x9c, 0x1d, 0xc4, 0x15, 0xa0, 0x43, 0x75, 0x68, + 0x2b, 0xd2, 0x2a, 0x6e, 0xc3, 0x29, 0x46, 0xec, 0xd5, 0xae, 0x7a, 0x6d, +}; +static const unsigned char kat4235_entropyinpr1[] = { + 0xa4, 0x95, 0xbd, 0x95, 0x3c, 0xb0, 0xd8, 0x0a, 0x34, 0x53, 0x4b, 0xef, + 0x91, 0x6b, 0x0a, 0x80, 0xe5, 0x3b, 0x45, 0x64, 0x3f, 0xb1, 0xe3, 0x27, + 0xcb, 0xa0, 0x27, 0x77, 0x71, 0x96, 0x75, 0x40, 0x22, 0xaf, 0xf3, 0x6c, + 0x06, 0xb1, 0xf6, 0x6a, 0x3e, 0x28, 0x65, 0x5b, 0xad, 0x37, 0x1d, 0x76, +}; +static const unsigned char kat4235_addinpr1[] = {0}; +static const unsigned char kat4235_entropyinpr2[] = { + 0x7f, 0x73, 0x87, 0x73, 0xe8, 0x1a, 0x97, 0xf4, 0x13, 0xdc, 0xab, 0x60, + 0x73, 0x56, 0x50, 0x76, 0xdb, 0xc1, 0xc4, 0xdc, 0x11, 0x0a, 0xbd, 0xcd, + 0x9c, 0xb4, 0xa2, 0x0d, 0xa8, 0x24, 0xfc, 0xb1, 0x3b, 0xf8, 0x8d, 0xbd, + 0x51, 0xdf, 0xf4, 0xe3, 0xce, 0xa3, 0xbb, 0x1c, 0x99, 0xd3, 0x77, 0x4c, +}; +static const unsigned char kat4235_addinpr2[] = {0}; +static const unsigned char kat4235_retbits[] = { + 0x1f, 0x2d, 0xe1, 0x55, 0xa9, 0xa8, 0x7e, 0xb9, 0xf7, 0x90, 0x43, 0x08, + 0xe7, 0x00, 0xb7, 0x84, 0x51, 0x37, 0x7e, 0x93, 0x3a, 0x92, 0x75, 0xd1, + 0x2d, 0x36, 0x67, 0xd4, 0x02, 0xc6, 0x94, 0x59, 0x95, 0xee, 0x95, 0xa0, + 0x66, 0xc2, 0x9c, 0x0f, 0x75, 0xe9, 0xad, 0xdc, 0xf1, 0xa3, 0x56, 0x2c, + 0xc9, 0x35, 0x5d, 0x31, 0x8c, 0xba, 0xa0, 0xfe, 0xd5, 0x2b, 0x4c, 0xf9, + 0xcf, 0x7b, 0xa1, 0x30, +}; +static const struct drbg_kat_pr_true kat4235_t = { + 4, kat4235_entropyin, kat4235_nonce, kat4235_persstr, + kat4235_entropyinpr1, kat4235_addinpr1, kat4235_entropyinpr2, + kat4235_addinpr2, kat4235_retbits +}; +static const struct drbg_kat kat4235 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4235_t +}; + +static const unsigned char kat4236_entropyin[] = { + 0xc1, 0x17, 0xb1, 0x13, 0xc6, 0x22, 0xe1, 0xd7, 0xb0, 0xa1, 0x03, 0xee, + 0x27, 0xa7, 0xe4, 0x37, 0x8b, 0x41, 0x29, 0x22, 0x7f, 0xd7, 0x42, 0xb9, + 0x67, 0xbe, 0x5c, 0x4a, 0x03, 0x77, 0xa8, 0x00, 0x21, 0x66, 0x7b, 0xa0, + 0x86, 0x83, 0x38, 0xff, 0xc0, 0x1a, 0x91, 0x30, 0x82, 0x61, 0x97, 0xec, +}; +static const unsigned char kat4236_nonce[] = {0}; +static const unsigned char kat4236_persstr[] = { + 0xb9, 0x65, 0x79, 0x22, 0x7c, 0xed, 0x48, 0x52, 0x82, 0x84, 0x4e, 0xf2, + 0x72, 0xef, 0x1a, 0x55, 0x71, 0x28, 0x95, 0x24, 0x63, 0x71, 0x53, 0xfd, + 0x88, 0x07, 0x0d, 0xed, 0xb6, 0x50, 0x52, 0x1a, 0x38, 0x31, 0x55, 0xe2, + 0x37, 0x75, 0x18, 0xe5, 0xf0, 0x9d, 0x97, 0x05, 0x60, 0x4d, 0x64, 0x07, +}; +static const unsigned char kat4236_entropyinpr1[] = { + 0x15, 0x9a, 0x81, 0x7c, 0xa5, 0x2b, 0xd8, 0x67, 0x2b, 0x4f, 0x76, 0x76, + 0xa6, 0xd9, 0x4a, 0x6d, 0x36, 0xa0, 0x88, 0x65, 0x72, 0x56, 0xfd, 0x8e, + 0x9a, 0x77, 0x05, 0x3d, 0x65, 0xf3, 0xe0, 0x4f, 0x9a, 0xab, 0xd2, 0x8e, + 0x80, 0x87, 0xf6, 0x1c, 0x82, 0x77, 0x98, 0xbf, 0x4a, 0x78, 0xb0, 0x52, +}; +static const unsigned char kat4236_addinpr1[] = {0}; +static const unsigned char kat4236_entropyinpr2[] = { + 0x6d, 0xfb, 0xdc, 0x58, 0x07, 0x77, 0x97, 0xce, 0x8e, 0x2c, 0xe7, 0xda, + 0x56, 0xc0, 0x79, 0xe2, 0x63, 0xac, 0x83, 0xe2, 0x54, 0x98, 0x66, 0xb7, + 0x12, 0xc8, 0x28, 0x8c, 0xff, 0x81, 0x65, 0x1e, 0xfc, 0xa5, 0x43, 0xc9, + 0x2c, 0x34, 0x76, 0x34, 0xb1, 0xd7, 0x6d, 0x52, 0x31, 0xeb, 0xe4, 0xd3, +}; +static const unsigned char kat4236_addinpr2[] = {0}; +static const unsigned char kat4236_retbits[] = { + 0x43, 0xd6, 0x74, 0x2d, 0x0d, 0x87, 0xa8, 0xa3, 0x56, 0xc7, 0x5b, 0xa1, + 0xa0, 0x1c, 0xed, 0xc7, 0xae, 0x60, 0x9a, 0xe6, 0x2b, 0x19, 0x49, 0x67, + 0xbf, 0x16, 0xb8, 0x00, 0xfb, 0x66, 0x1e, 0x53, 0x9d, 0xfb, 0x99, 0x46, + 0x7b, 0x3e, 0xd6, 0x4d, 0x0e, 0xdc, 0x1c, 0xe8, 0x5c, 0xd0, 0x74, 0x8e, + 0x91, 0x53, 0x99, 0xd8, 0x22, 0xcb, 0x96, 0xed, 0x09, 0xe6, 0xb0, 0x41, + 0xb4, 0x57, 0x88, 0xce, +}; +static const struct drbg_kat_pr_true kat4236_t = { + 5, kat4236_entropyin, kat4236_nonce, kat4236_persstr, + kat4236_entropyinpr1, kat4236_addinpr1, kat4236_entropyinpr2, + kat4236_addinpr2, kat4236_retbits +}; +static const struct drbg_kat kat4236 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4236_t +}; + +static const unsigned char kat4237_entropyin[] = { + 0xe4, 0xa3, 0xf1, 0x83, 0xce, 0xda, 0x04, 0xe8, 0xb4, 0xfd, 0x0d, 0xd0, + 0x63, 0x98, 0xc3, 0x92, 0x7c, 0xa9, 0x50, 0x15, 0x26, 0x04, 0x4c, 0x6f, + 0xb5, 0x2e, 0x73, 0x06, 0x43, 0xd0, 0x6d, 0xd0, 0x60, 0x59, 0x53, 0xc5, + 0xa0, 0x49, 0x5a, 0xd2, 0x29, 0x2d, 0xdf, 0x6e, 0x1a, 0x36, 0x49, 0xb0, +}; +static const unsigned char kat4237_nonce[] = {0}; +static const unsigned char kat4237_persstr[] = { + 0xb6, 0x4c, 0x4a, 0x06, 0xea, 0x5b, 0xfe, 0x33, 0x42, 0x29, 0xd7, 0x98, + 0x91, 0x28, 0x42, 0x61, 0xfe, 0xa8, 0x05, 0x66, 0x1b, 0xef, 0x91, 0x32, + 0x44, 0x9a, 0x08, 0xc9, 0xd8, 0x48, 0x09, 0x12, 0x21, 0x75, 0x3c, 0x05, + 0x6e, 0x86, 0x24, 0x8c, 0x0f, 0xce, 0x18, 0x3a, 0x5b, 0x71, 0xf8, 0x1a, +}; +static const unsigned char kat4237_entropyinpr1[] = { + 0x72, 0xdd, 0x27, 0xb9, 0xdc, 0xf3, 0xdc, 0x6c, 0x18, 0xc6, 0xb2, 0x88, + 0xd8, 0x78, 0x8f, 0xb8, 0x7a, 0xae, 0x0b, 0x49, 0x71, 0xed, 0x78, 0xa5, + 0x2e, 0xe3, 0x49, 0x83, 0xfa, 0x29, 0x6a, 0xaa, 0x67, 0xe1, 0x9e, 0x3b, + 0xf4, 0x57, 0x22, 0xea, 0xf7, 0xdf, 0x17, 0xa7, 0x6f, 0x8c, 0x5d, 0x61, +}; +static const unsigned char kat4237_addinpr1[] = {0}; +static const unsigned char kat4237_entropyinpr2[] = { + 0x20, 0x16, 0x9d, 0x7c, 0xa0, 0xc6, 0x02, 0xa4, 0x32, 0xfe, 0xcd, 0x65, + 0xe3, 0x67, 0xa7, 0x40, 0xe0, 0xa5, 0x4c, 0x9e, 0x91, 0x91, 0x10, 0x77, + 0x6d, 0xc8, 0x8e, 0x18, 0xdf, 0x5c, 0x87, 0x10, 0x73, 0xf1, 0xe2, 0x4f, + 0x10, 0xb9, 0xa8, 0x5b, 0x6d, 0x56, 0x02, 0x3a, 0xcd, 0x7b, 0x6a, 0x48, +}; +static const unsigned char kat4237_addinpr2[] = {0}; +static const unsigned char kat4237_retbits[] = { + 0xb2, 0xfe, 0xa7, 0x4f, 0x85, 0x72, 0x1e, 0x90, 0xac, 0x7e, 0x50, 0x49, + 0x9e, 0x5c, 0xea, 0xbb, 0x25, 0x25, 0xff, 0x82, 0xfe, 0xeb, 0xd4, 0xc7, + 0xa8, 0xe6, 0x57, 0x44, 0x7d, 0x31, 0x81, 0x24, 0x17, 0x7d, 0xa6, 0xfd, + 0x22, 0x03, 0x78, 0xde, 0xcd, 0xc5, 0x10, 0x90, 0x7b, 0x32, 0xbc, 0xd9, + 0x8b, 0x67, 0xd4, 0xf6, 0x0a, 0xe7, 0xa8, 0xb2, 0x95, 0x85, 0xe3, 0x94, + 0xc6, 0x1c, 0xbd, 0x9b, +}; +static const struct drbg_kat_pr_true kat4237_t = { + 6, kat4237_entropyin, kat4237_nonce, kat4237_persstr, + kat4237_entropyinpr1, kat4237_addinpr1, kat4237_entropyinpr2, + kat4237_addinpr2, kat4237_retbits +}; +static const struct drbg_kat kat4237 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4237_t +}; + +static const unsigned char kat4238_entropyin[] = { + 0x33, 0xe3, 0x7d, 0x78, 0x30, 0xdb, 0xbc, 0x42, 0x2d, 0x5a, 0xdc, 0x8f, + 0x22, 0xac, 0xf4, 0x20, 0xc6, 0x45, 0xd2, 0x9e, 0xde, 0x81, 0xe1, 0xbc, + 0x0d, 0xc3, 0x17, 0xf9, 0xc3, 0xbc, 0x85, 0xc4, 0xe4, 0x9f, 0xec, 0x7a, + 0xb1, 0x28, 0x59, 0x20, 0xe4, 0x00, 0x5d, 0x8a, 0x11, 0x98, 0xb8, 0x5d, +}; +static const unsigned char kat4238_nonce[] = {0}; +static const unsigned char kat4238_persstr[] = { + 0x4e, 0xd9, 0x8a, 0xa5, 0x24, 0xd9, 0xf7, 0xe0, 0x3e, 0xc0, 0xeb, 0xc1, + 0x49, 0x1c, 0xad, 0x20, 0xce, 0x28, 0x3c, 0xd0, 0x0f, 0x41, 0x88, 0x91, + 0x0a, 0x09, 0x1d, 0x70, 0x1b, 0x24, 0x4c, 0xf5, 0x2e, 0x1d, 0x6d, 0x15, + 0xc9, 0x8f, 0xb8, 0x08, 0x93, 0x97, 0xa1, 0x6e, 0x0a, 0xea, 0xed, 0xf3, +}; +static const unsigned char kat4238_entropyinpr1[] = { + 0x9b, 0x0d, 0x1c, 0xa6, 0xe2, 0xbb, 0x51, 0xfa, 0x6d, 0x7f, 0xc5, 0xc4, + 0xc6, 0x45, 0x6f, 0xe9, 0x95, 0xda, 0x40, 0x0e, 0xc9, 0xb2, 0xbf, 0x7e, + 0x65, 0x6d, 0x77, 0xe1, 0xf9, 0x72, 0x06, 0x47, 0x82, 0x4a, 0x76, 0x9e, + 0xc9, 0xa2, 0xd8, 0xfa, 0x57, 0x84, 0x12, 0xc8, 0xe8, 0xeb, 0x55, 0x83, +}; +static const unsigned char kat4238_addinpr1[] = {0}; +static const unsigned char kat4238_entropyinpr2[] = { + 0x34, 0x19, 0x78, 0xb5, 0x53, 0xfa, 0x9b, 0xcd, 0x09, 0x4a, 0x87, 0x8c, + 0x2b, 0xdc, 0x64, 0x69, 0xfe, 0x30, 0x5b, 0x08, 0xa7, 0x38, 0xbc, 0x3e, + 0x00, 0xc6, 0x43, 0x9d, 0x78, 0x3e, 0x42, 0x0e, 0xd9, 0x8b, 0xf5, 0xf2, + 0xe9, 0xca, 0xeb, 0x49, 0x4a, 0x4e, 0x6e, 0x05, 0x8f, 0x4e, 0xf7, 0x93, +}; +static const unsigned char kat4238_addinpr2[] = {0}; +static const unsigned char kat4238_retbits[] = { + 0xee, 0x82, 0x33, 0xf7, 0xe5, 0xbd, 0x96, 0x66, 0x65, 0xc6, 0xcb, 0xa0, + 0x96, 0xd5, 0xac, 0x88, 0x91, 0xf7, 0xf7, 0x17, 0xe7, 0xcf, 0xba, 0x48, + 0xb4, 0x94, 0x3b, 0x2c, 0xa4, 0xd5, 0x69, 0xa2, 0x95, 0x05, 0x8c, 0x94, + 0x5b, 0xec, 0x3e, 0xe6, 0xac, 0x8a, 0xdd, 0x83, 0xd1, 0xc0, 0x1f, 0x0f, + 0x63, 0xfd, 0x92, 0xb8, 0xf8, 0x6c, 0x4c, 0x0a, 0xde, 0x92, 0x73, 0xd6, + 0xd9, 0x1b, 0x7b, 0xdc, +}; +static const struct drbg_kat_pr_true kat4238_t = { + 7, kat4238_entropyin, kat4238_nonce, kat4238_persstr, + kat4238_entropyinpr1, kat4238_addinpr1, kat4238_entropyinpr2, + kat4238_addinpr2, kat4238_retbits +}; +static const struct drbg_kat kat4238 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4238_t +}; + +static const unsigned char kat4239_entropyin[] = { + 0x9b, 0x4d, 0x85, 0xbc, 0x90, 0xb2, 0xdb, 0xec, 0x32, 0x89, 0xb2, 0x6c, + 0x88, 0x4e, 0x9f, 0x62, 0xd1, 0x54, 0xf8, 0xfb, 0x3a, 0x14, 0x8e, 0x3a, + 0xa2, 0xba, 0x78, 0x83, 0xe3, 0x98, 0xd2, 0xb9, 0xb3, 0x34, 0xc6, 0x91, + 0xdf, 0xf8, 0x3c, 0xaa, 0x1d, 0x1c, 0xa1, 0x83, 0xa0, 0xda, 0x5b, 0x55, +}; +static const unsigned char kat4239_nonce[] = {0}; +static const unsigned char kat4239_persstr[] = { + 0x1e, 0x06, 0x5e, 0x67, 0x9d, 0x0b, 0xf9, 0x65, 0x34, 0x86, 0xaf, 0xbf, + 0x6b, 0xe2, 0x05, 0x67, 0xaf, 0xfd, 0xf0, 0xb7, 0xc2, 0xdb, 0xb8, 0x8e, + 0x38, 0x57, 0xa2, 0x7d, 0x82, 0x53, 0xca, 0x81, 0xd5, 0x16, 0x0d, 0x0a, + 0xaf, 0x26, 0x1d, 0x5c, 0xfd, 0x20, 0x3b, 0x07, 0xf8, 0x0f, 0x7f, 0x29, +}; +static const unsigned char kat4239_entropyinpr1[] = { + 0xd3, 0x74, 0x34, 0xfe, 0x63, 0x47, 0x9b, 0xe3, 0x11, 0x9a, 0x66, 0xb8, + 0x92, 0x71, 0x91, 0x29, 0x68, 0x6f, 0xdb, 0x95, 0x5d, 0xe3, 0xf4, 0x57, + 0x6e, 0x77, 0xef, 0x18, 0xed, 0xde, 0x48, 0xa4, 0x88, 0x22, 0xb5, 0x7b, + 0xd9, 0x31, 0x33, 0x4f, 0x16, 0x18, 0x3a, 0xdf, 0x99, 0xb0, 0x98, 0xf7, +}; +static const unsigned char kat4239_addinpr1[] = {0}; +static const unsigned char kat4239_entropyinpr2[] = { + 0x2e, 0x6c, 0x97, 0x77, 0x19, 0x4a, 0x08, 0x22, 0x24, 0x9b, 0x39, 0xa4, + 0x3e, 0x5b, 0x9b, 0x9f, 0x11, 0x2a, 0x2d, 0xe3, 0x4d, 0x82, 0x11, 0xfe, + 0x71, 0x2b, 0xb5, 0xfb, 0x36, 0x36, 0xbc, 0xf9, 0x54, 0xe9, 0xa9, 0x6e, + 0xf5, 0x0f, 0x47, 0x76, 0x1b, 0x85, 0x12, 0xdb, 0x23, 0x47, 0x87, 0xbd, +}; +static const unsigned char kat4239_addinpr2[] = {0}; +static const unsigned char kat4239_retbits[] = { + 0x35, 0xa2, 0x35, 0xc6, 0xa3, 0x73, 0xe6, 0x06, 0x74, 0x79, 0x38, 0xc2, + 0x9b, 0x49, 0x1a, 0xaa, 0xab, 0xaf, 0x9b, 0xcb, 0x32, 0xfc, 0x3d, 0x8f, + 0x32, 0x7a, 0x7c, 0x54, 0xa1, 0xd0, 0x45, 0x36, 0x0b, 0x5b, 0x2d, 0x80, + 0x31, 0x1e, 0x50, 0x31, 0x91, 0xda, 0x52, 0x1f, 0x7f, 0x77, 0x44, 0x86, + 0xdc, 0x52, 0x16, 0x24, 0x2f, 0xc1, 0x68, 0x46, 0x84, 0x45, 0xc8, 0x2a, + 0x4b, 0x97, 0xd1, 0x58, +}; +static const struct drbg_kat_pr_true kat4239_t = { + 8, kat4239_entropyin, kat4239_nonce, kat4239_persstr, + kat4239_entropyinpr1, kat4239_addinpr1, kat4239_entropyinpr2, + kat4239_addinpr2, kat4239_retbits +}; +static const struct drbg_kat kat4239 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4239_t +}; + +static const unsigned char kat4240_entropyin[] = { + 0xa7, 0xf9, 0xe0, 0x49, 0x63, 0x31, 0x22, 0x2c, 0x7d, 0xfe, 0xed, 0x3d, + 0x29, 0xf3, 0x4e, 0xbb, 0x0f, 0x5e, 0x98, 0xb2, 0x0b, 0xa7, 0xa5, 0x6b, + 0x3f, 0xc6, 0x7d, 0x56, 0x52, 0x5f, 0x92, 0x13, 0xc7, 0xac, 0x91, 0x0c, + 0x83, 0xfd, 0xe8, 0x31, 0xed, 0x05, 0x9d, 0xe8, 0x2d, 0xa6, 0x16, 0x36, +}; +static const unsigned char kat4240_nonce[] = {0}; +static const unsigned char kat4240_persstr[] = { + 0xce, 0x40, 0x11, 0x47, 0x53, 0x08, 0x89, 0x65, 0xa9, 0x1b, 0x59, 0x45, + 0x8f, 0xfb, 0xab, 0x03, 0xdf, 0x50, 0xd3, 0xae, 0x72, 0x4f, 0x7c, 0x01, + 0x59, 0x18, 0x87, 0x64, 0x18, 0xc3, 0xad, 0xee, 0xdf, 0x4b, 0x28, 0xc5, + 0x3e, 0x3a, 0x4b, 0xfd, 0xaf, 0xbf, 0xaf, 0xda, 0xa7, 0x6b, 0xbe, 0xde, +}; +static const unsigned char kat4240_entropyinpr1[] = { + 0x10, 0x48, 0x2d, 0x23, 0x85, 0x97, 0xaf, 0x71, 0x31, 0x33, 0xe7, 0xe8, + 0x0b, 0xea, 0x0d, 0xf2, 0xe7, 0x5a, 0x95, 0x82, 0xd0, 0xe9, 0x4d, 0x09, + 0x41, 0x4d, 0x20, 0xf4, 0x55, 0xd4, 0x3d, 0xef, 0x9b, 0xf5, 0xa2, 0xd1, + 0xcd, 0xcf, 0xc1, 0xd2, 0x56, 0x5e, 0xba, 0xf7, 0xaf, 0xfd, 0xdc, 0x98, +}; +static const unsigned char kat4240_addinpr1[] = {0}; +static const unsigned char kat4240_entropyinpr2[] = { + 0x53, 0x52, 0xfa, 0xe3, 0xef, 0x83, 0x79, 0xe5, 0x66, 0x73, 0xdc, 0xef, + 0xb2, 0x22, 0x34, 0x6d, 0xbd, 0xaf, 0x0c, 0x85, 0x11, 0x75, 0x64, 0xd1, + 0x62, 0x1e, 0xbd, 0x9b, 0x1e, 0x87, 0xa1, 0x0e, 0x7c, 0xc7, 0x32, 0xe7, + 0x47, 0x5d, 0x18, 0x42, 0xca, 0x9b, 0x4b, 0x5a, 0x3c, 0xf1, 0xbc, 0x66, +}; +static const unsigned char kat4240_addinpr2[] = {0}; +static const unsigned char kat4240_retbits[] = { + 0x82, 0xc8, 0xc1, 0xcb, 0x19, 0xe9, 0x2d, 0x9d, 0x62, 0xd6, 0xa9, 0xab, + 0x91, 0x00, 0x34, 0x59, 0xe3, 0x09, 0xa2, 0x64, 0xe6, 0x71, 0x8a, 0x4e, + 0xc0, 0x5e, 0xbb, 0xe9, 0xf2, 0x1c, 0xad, 0x01, 0xca, 0x99, 0xd1, 0xc9, + 0xb1, 0xa3, 0x5e, 0x9d, 0x38, 0x5e, 0x03, 0xfb, 0xa5, 0x96, 0x22, 0x43, + 0x73, 0x68, 0xb7, 0x48, 0xea, 0x62, 0x91, 0x49, 0xd5, 0x0f, 0x9c, 0x6f, + 0x48, 0x19, 0x40, 0xfb, +}; +static const struct drbg_kat_pr_true kat4240_t = { + 9, kat4240_entropyin, kat4240_nonce, kat4240_persstr, + kat4240_entropyinpr1, kat4240_addinpr1, kat4240_entropyinpr2, + kat4240_addinpr2, kat4240_retbits +}; +static const struct drbg_kat kat4240 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4240_t +}; + +static const unsigned char kat4241_entropyin[] = { + 0x21, 0xf1, 0xb6, 0x92, 0xb8, 0x83, 0x20, 0xc1, 0x16, 0xaf, 0xe5, 0x82, + 0x60, 0x37, 0x36, 0xd4, 0xcb, 0xf9, 0x05, 0xfd, 0xc4, 0x38, 0xd2, 0xba, + 0x92, 0x86, 0xfa, 0x7a, 0x8f, 0x27, 0x4e, 0x52, 0xba, 0x7c, 0x49, 0x5a, + 0x4f, 0xcb, 0x35, 0x86, 0x78, 0xd9, 0x04, 0x2d, 0xd7, 0x76, 0xb0, 0x29, +}; +static const unsigned char kat4241_nonce[] = {0}; +static const unsigned char kat4241_persstr[] = { + 0xec, 0x29, 0xd7, 0x72, 0x91, 0x69, 0x5f, 0x9a, 0x52, 0x99, 0x0b, 0x7c, + 0x54, 0x44, 0xa7, 0x3f, 0x50, 0xfb, 0x8e, 0x3b, 0x2c, 0xfc, 0x19, 0xb0, + 0x4e, 0xa2, 0xb0, 0xeb, 0x18, 0xca, 0xa2, 0x88, 0x22, 0xc9, 0x0c, 0x7f, + 0x8d, 0x89, 0xb0, 0xec, 0x11, 0x47, 0x46, 0xa6, 0x5c, 0xc1, 0xa9, 0xd7, +}; +static const unsigned char kat4241_entropyinpr1[] = { + 0x3e, 0xfc, 0x69, 0x84, 0xb4, 0xfd, 0xf7, 0x0c, 0x7a, 0xfa, 0x67, 0x30, + 0xdd, 0xe7, 0x38, 0x61, 0x06, 0xc7, 0xa6, 0xcf, 0xba, 0x3f, 0x90, 0x87, + 0xbf, 0xb3, 0x0e, 0x7d, 0x34, 0x0a, 0xf8, 0x03, 0xfc, 0x33, 0x13, 0x1a, + 0x82, 0x57, 0x73, 0x08, 0xb3, 0xa5, 0x74, 0x6b, 0x25, 0xb4, 0x46, 0x19, +}; +static const unsigned char kat4241_addinpr1[] = {0}; +static const unsigned char kat4241_entropyinpr2[] = { + 0x35, 0x7e, 0xf0, 0xf1, 0x12, 0xe2, 0xdf, 0x85, 0xca, 0x17, 0xd9, 0x21, + 0x1e, 0xc0, 0xf5, 0xc8, 0xc3, 0xda, 0xa8, 0xe4, 0x22, 0x46, 0xa3, 0xc7, + 0xc8, 0x23, 0x93, 0x4d, 0x76, 0xc1, 0xfa, 0x88, 0xcd, 0x55, 0x6c, 0x1b, + 0x70, 0xe6, 0xf3, 0x2c, 0xe8, 0x6b, 0xe8, 0x9e, 0xa5, 0x8e, 0x36, 0xce, +}; +static const unsigned char kat4241_addinpr2[] = {0}; +static const unsigned char kat4241_retbits[] = { + 0x4c, 0xf1, 0x66, 0x47, 0x3f, 0xb9, 0x75, 0xab, 0xec, 0xb6, 0x0f, 0xb4, + 0x94, 0xa5, 0xfa, 0x5b, 0xef, 0xcd, 0x48, 0xc6, 0x56, 0x22, 0xdb, 0xf0, + 0x62, 0x83, 0x3c, 0x25, 0x04, 0x47, 0x6b, 0x8e, 0x6a, 0x50, 0xb2, 0x66, + 0x5b, 0x6c, 0x0a, 0xa5, 0xc5, 0x2f, 0x55, 0x4a, 0x8a, 0x4f, 0x3f, 0x5e, + 0x4e, 0x52, 0x67, 0x17, 0x91, 0x72, 0x82, 0xf3, 0x89, 0x62, 0xd7, 0xdd, + 0x40, 0x12, 0x06, 0x64, +}; +static const struct drbg_kat_pr_true kat4241_t = { + 10, kat4241_entropyin, kat4241_nonce, kat4241_persstr, + kat4241_entropyinpr1, kat4241_addinpr1, kat4241_entropyinpr2, + kat4241_addinpr2, kat4241_retbits +}; +static const struct drbg_kat kat4241 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4241_t +}; + +static const unsigned char kat4242_entropyin[] = { + 0x82, 0xde, 0xc2, 0x56, 0x9f, 0x6c, 0x43, 0x08, 0x5f, 0xc6, 0xec, 0xb6, + 0x96, 0x7c, 0xfe, 0x49, 0x7c, 0x89, 0xfd, 0x00, 0x41, 0xc3, 0x87, 0xc6, + 0x82, 0xb9, 0x83, 0x28, 0x00, 0x32, 0xf3, 0xe5, 0x61, 0xe4, 0x3f, 0x70, + 0x98, 0x77, 0x1b, 0xcd, 0x3c, 0x59, 0x8e, 0xf9, 0xb7, 0x23, 0xd7, 0xf2, +}; +static const unsigned char kat4242_nonce[] = {0}; +static const unsigned char kat4242_persstr[] = { + 0xb0, 0x97, 0x18, 0x4d, 0x44, 0x6f, 0x80, 0xdb, 0xdd, 0x33, 0x35, 0x37, + 0x8b, 0x3f, 0xb0, 0xa5, 0x5d, 0xc8, 0xda, 0x9b, 0x79, 0xe0, 0x2d, 0xfe, + 0x46, 0x43, 0xc5, 0x36, 0x92, 0x10, 0x90, 0x80, 0x33, 0x18, 0x31, 0xf4, + 0x03, 0xb5, 0xc0, 0x8e, 0x0c, 0x55, 0xe1, 0xcd, 0x19, 0x88, 0x35, 0x26, +}; +static const unsigned char kat4242_entropyinpr1[] = { + 0xcf, 0xcd, 0xdb, 0x27, 0x4f, 0x2e, 0x46, 0x93, 0xd4, 0x69, 0x4a, 0x24, + 0x11, 0x4a, 0x74, 0x31, 0xbe, 0xe6, 0x96, 0xf9, 0x45, 0x1b, 0x68, 0x5a, + 0x60, 0x5a, 0xe6, 0xcf, 0x0d, 0xa6, 0x95, 0xb0, 0xda, 0x17, 0x1d, 0x70, + 0x4f, 0xde, 0x77, 0x64, 0x4a, 0x22, 0x77, 0xca, 0x93, 0x50, 0xf8, 0xd5, +}; +static const unsigned char kat4242_addinpr1[] = {0}; +static const unsigned char kat4242_entropyinpr2[] = { + 0x42, 0x54, 0x4c, 0xe3, 0x19, 0x93, 0x30, 0xf0, 0x6c, 0x2f, 0xc7, 0xda, + 0x7a, 0xac, 0xdb, 0x57, 0xa1, 0x65, 0x14, 0x51, 0x70, 0x9f, 0x5d, 0xa0, + 0x39, 0x85, 0x22, 0xc2, 0xe6, 0x20, 0x1c, 0xa5, 0xd6, 0x3b, 0xdb, 0x18, + 0xde, 0x59, 0xb4, 0x47, 0x73, 0xa1, 0xd9, 0x24, 0xae, 0x46, 0x72, 0x55, +}; +static const unsigned char kat4242_addinpr2[] = {0}; +static const unsigned char kat4242_retbits[] = { + 0x3f, 0x02, 0x9e, 0x22, 0xb1, 0xa3, 0x53, 0x80, 0x46, 0x11, 0xf5, 0xa0, + 0xf7, 0x06, 0xf4, 0x10, 0xd9, 0x3d, 0x78, 0x58, 0x8f, 0xa5, 0x3a, 0x6a, + 0x29, 0xfd, 0xb8, 0xcd, 0xc8, 0x47, 0x95, 0xba, 0xf4, 0xde, 0xa7, 0x1d, + 0xea, 0x19, 0x6d, 0xb4, 0xb9, 0xbc, 0x47, 0x25, 0x7b, 0x59, 0xca, 0x95, + 0x4a, 0x6d, 0xe2, 0x30, 0xe8, 0xdf, 0xd1, 0x8b, 0x47, 0x91, 0xb3, 0xfd, + 0xa5, 0xb9, 0xa5, 0xdc, +}; +static const struct drbg_kat_pr_true kat4242_t = { + 11, kat4242_entropyin, kat4242_nonce, kat4242_persstr, + kat4242_entropyinpr1, kat4242_addinpr1, kat4242_entropyinpr2, + kat4242_addinpr2, kat4242_retbits +}; +static const struct drbg_kat kat4242 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4242_t +}; + +static const unsigned char kat4243_entropyin[] = { + 0x5b, 0xf2, 0x33, 0x2a, 0x91, 0xd8, 0xd8, 0x7f, 0x35, 0x34, 0x33, 0x0f, + 0x46, 0x61, 0x04, 0xd8, 0xf4, 0x9f, 0xb2, 0x70, 0x47, 0x35, 0x41, 0x30, + 0x63, 0x7f, 0x20, 0x42, 0x58, 0x4a, 0x38, 0x9e, 0xcb, 0x4c, 0xcf, 0x3f, + 0xd9, 0x54, 0x5f, 0x11, 0x23, 0xab, 0x6a, 0xa9, 0xab, 0xe2, 0x1e, 0x22, +}; +static const unsigned char kat4243_nonce[] = {0}; +static const unsigned char kat4243_persstr[] = { + 0xcc, 0x3c, 0xad, 0xe1, 0xf3, 0x97, 0x9e, 0x5c, 0x6b, 0x4c, 0x92, 0x03, + 0x0c, 0x7c, 0x21, 0x6c, 0x91, 0xd9, 0xc1, 0x1d, 0x95, 0x8b, 0x4c, 0xc9, + 0x4a, 0x63, 0xcc, 0xb6, 0x97, 0xa3, 0x87, 0x31, 0x21, 0xcb, 0x4c, 0x2d, + 0xc8, 0xd8, 0xc8, 0x45, 0xaa, 0x94, 0xa0, 0x3f, 0x50, 0x4c, 0x19, 0x83, +}; +static const unsigned char kat4243_entropyinpr1[] = { + 0x28, 0x78, 0xe8, 0x24, 0xd4, 0x73, 0x14, 0x00, 0x67, 0x43, 0x61, 0xa4, + 0xac, 0x3a, 0x46, 0xab, 0x68, 0xae, 0x35, 0xd2, 0xa9, 0x33, 0x6a, 0xf8, + 0x3f, 0x8e, 0x4c, 0xb1, 0xd0, 0xf0, 0xb7, 0x9a, 0x38, 0x29, 0xf4, 0x4c, + 0x20, 0x72, 0xe5, 0x33, 0x6a, 0x86, 0x2d, 0xa8, 0x10, 0x9c, 0x57, 0x99, +}; +static const unsigned char kat4243_addinpr1[] = {0}; +static const unsigned char kat4243_entropyinpr2[] = { + 0x06, 0x17, 0xb1, 0x5f, 0x8d, 0x04, 0x5f, 0x48, 0xc4, 0x47, 0x0d, 0x84, + 0x74, 0x90, 0xd1, 0x8f, 0x36, 0x85, 0xaf, 0x6b, 0x1f, 0xb5, 0xea, 0x55, + 0x1b, 0x31, 0x8b, 0x8b, 0x98, 0xfa, 0x80, 0x3c, 0x05, 0x00, 0xec, 0x74, + 0x93, 0xe3, 0xae, 0x0a, 0x7c, 0xb9, 0x81, 0xd1, 0x2e, 0xd0, 0x1c, 0x98, +}; +static const unsigned char kat4243_addinpr2[] = {0}; +static const unsigned char kat4243_retbits[] = { + 0x33, 0x85, 0xa9, 0x12, 0x69, 0x55, 0x13, 0x5b, 0x44, 0xc6, 0x71, 0x96, + 0xc0, 0x14, 0xb2, 0xc9, 0x49, 0x18, 0x65, 0x71, 0x36, 0xba, 0x23, 0x86, + 0x51, 0xb5, 0x1f, 0x20, 0xf1, 0x11, 0xf5, 0x0f, 0x78, 0xc7, 0xc9, 0x81, + 0xe9, 0x27, 0x0b, 0xf0, 0x40, 0x42, 0x02, 0x82, 0x95, 0x43, 0xf3, 0x79, + 0x21, 0x1d, 0x14, 0xa1, 0x46, 0x6c, 0xa4, 0x23, 0xef, 0x9c, 0x1f, 0x7a, + 0x79, 0x94, 0x33, 0x84, +}; +static const struct drbg_kat_pr_true kat4243_t = { + 12, kat4243_entropyin, kat4243_nonce, kat4243_persstr, + kat4243_entropyinpr1, kat4243_addinpr1, kat4243_entropyinpr2, + kat4243_addinpr2, kat4243_retbits +}; +static const struct drbg_kat kat4243 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4243_t +}; + +static const unsigned char kat4244_entropyin[] = { + 0xac, 0x84, 0xb5, 0xef, 0xb9, 0x15, 0x76, 0x99, 0x3f, 0xf0, 0xb9, 0x07, + 0x34, 0x81, 0x2a, 0x1a, 0xf5, 0x2b, 0x64, 0x1d, 0x55, 0xb9, 0x3c, 0x57, + 0x78, 0xc9, 0xc2, 0xaf, 0x16, 0x40, 0x35, 0x90, 0x74, 0xf0, 0x93, 0x91, + 0xff, 0xfd, 0xe1, 0x78, 0xbd, 0x86, 0xe3, 0xa9, 0xf5, 0x91, 0x74, 0x11, +}; +static const unsigned char kat4244_nonce[] = {0}; +static const unsigned char kat4244_persstr[] = { + 0x35, 0x7d, 0x8f, 0xaa, 0x62, 0xa3, 0xf1, 0x7e, 0x2f, 0xe7, 0xae, 0x2c, + 0x68, 0x32, 0xb7, 0xbd, 0x10, 0x21, 0x8f, 0x54, 0xaf, 0xc1, 0x0f, 0x9b, + 0x80, 0x7a, 0x3c, 0x06, 0x3d, 0x78, 0xa2, 0x9d, 0x39, 0xd0, 0xf3, 0x3f, + 0x22, 0x26, 0x34, 0x18, 0xe3, 0x19, 0xba, 0xdb, 0xd8, 0x6f, 0x72, 0x2c, +}; +static const unsigned char kat4244_entropyinpr1[] = { + 0x46, 0xcb, 0x61, 0x8d, 0x2a, 0x74, 0xef, 0xdc, 0x96, 0xc3, 0xae, 0xc3, + 0x63, 0x2b, 0x1c, 0xe3, 0x4a, 0x95, 0xf4, 0x63, 0x76, 0x2e, 0xfe, 0x69, + 0xff, 0xda, 0xc2, 0xc7, 0x98, 0x9c, 0x97, 0x78, 0xce, 0x01, 0x39, 0x73, + 0x18, 0x19, 0x77, 0x64, 0xc3, 0x64, 0x27, 0xce, 0x4c, 0x2f, 0x32, 0x14, +}; +static const unsigned char kat4244_addinpr1[] = {0}; +static const unsigned char kat4244_entropyinpr2[] = { + 0xa2, 0xc4, 0x9a, 0x27, 0x0f, 0xe0, 0x9f, 0x23, 0x63, 0x53, 0x0b, 0x8c, + 0xbd, 0x56, 0xb5, 0x81, 0x07, 0xda, 0xed, 0xb7, 0xe0, 0x79, 0x29, 0xc5, + 0xcb, 0x83, 0xf9, 0x2d, 0x5c, 0x8d, 0x3f, 0xff, 0xbf, 0xdf, 0x2e, 0xf8, + 0x81, 0x97, 0x4d, 0x5a, 0xab, 0x93, 0x8c, 0x92, 0x7f, 0xfa, 0x19, 0x1f, +}; +static const unsigned char kat4244_addinpr2[] = {0}; +static const unsigned char kat4244_retbits[] = { + 0x75, 0x9b, 0x3d, 0x8d, 0x09, 0x36, 0x57, 0x4d, 0x5a, 0x72, 0xcb, 0x39, + 0xfa, 0x55, 0x4c, 0x12, 0xcf, 0xe0, 0x79, 0xc2, 0x40, 0x53, 0x90, 0x2e, + 0xcf, 0x25, 0x49, 0xd3, 0x1f, 0x5f, 0x0b, 0xc1, 0x72, 0x49, 0x78, 0x9b, + 0xc1, 0x2d, 0x06, 0xb8, 0x34, 0x54, 0xfe, 0x30, 0x8d, 0x2c, 0x3b, 0xd9, + 0x5d, 0xda, 0xf6, 0x96, 0x71, 0x3c, 0x24, 0xb9, 0x63, 0xf3, 0xcb, 0x8d, + 0x48, 0x78, 0xc6, 0x5d, +}; +static const struct drbg_kat_pr_true kat4244_t = { + 13, kat4244_entropyin, kat4244_nonce, kat4244_persstr, + kat4244_entropyinpr1, kat4244_addinpr1, kat4244_entropyinpr2, + kat4244_addinpr2, kat4244_retbits +}; +static const struct drbg_kat kat4244 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4244_t +}; + +static const unsigned char kat4245_entropyin[] = { + 0x50, 0xf4, 0x11, 0xd6, 0xb8, 0xa7, 0x37, 0x2e, 0x03, 0x47, 0xba, 0x97, + 0xc7, 0xdc, 0x1f, 0xfe, 0xe0, 0xd1, 0xa6, 0x6c, 0xea, 0x66, 0xcb, 0x15, + 0x82, 0xd5, 0xf9, 0x75, 0x3c, 0x09, 0xe2, 0x5c, 0x00, 0x27, 0x69, 0xa0, + 0xe6, 0x06, 0xcb, 0xda, 0x10, 0xd0, 0x62, 0x3b, 0x92, 0x1a, 0x9e, 0x7d, +}; +static const unsigned char kat4245_nonce[] = {0}; +static const unsigned char kat4245_persstr[] = { + 0x88, 0xe9, 0xcd, 0x41, 0x9d, 0xac, 0x6e, 0xc0, 0xf1, 0xb1, 0xe3, 0x2e, + 0x71, 0x26, 0x7e, 0x37, 0xac, 0x03, 0x8a, 0xdf, 0xbe, 0x18, 0xbc, 0xeb, + 0x50, 0x28, 0x56, 0x44, 0xb2, 0x96, 0x36, 0xad, 0x06, 0xd8, 0x5d, 0x7a, + 0x6f, 0x49, 0x78, 0x15, 0xcc, 0x6b, 0xe4, 0x3b, 0x03, 0x2c, 0x9c, 0x63, +}; +static const unsigned char kat4245_entropyinpr1[] = { + 0x83, 0xac, 0xc7, 0xbc, 0x2f, 0x89, 0xde, 0x95, 0xc8, 0x4a, 0x44, 0x50, + 0xd5, 0x09, 0xe7, 0xde, 0x35, 0x12, 0xad, 0x83, 0x9f, 0x83, 0x2b, 0xa0, + 0xbe, 0x8c, 0x06, 0xf3, 0x6d, 0x71, 0xe7, 0x66, 0xd2, 0x0c, 0xf6, 0x8d, + 0xba, 0xda, 0x3d, 0xba, 0x0b, 0x37, 0x99, 0x9c, 0x10, 0x83, 0xfa, 0xac, +}; +static const unsigned char kat4245_addinpr1[] = {0}; +static const unsigned char kat4245_entropyinpr2[] = { + 0x95, 0xa2, 0x6a, 0x2f, 0x94, 0x6c, 0x03, 0xf5, 0x10, 0x12, 0xbc, 0x6c, + 0xda, 0x07, 0x97, 0xaf, 0x89, 0xa8, 0x50, 0x03, 0x94, 0xcc, 0x7f, 0x11, + 0x86, 0x6a, 0x86, 0x16, 0x08, 0xeb, 0x97, 0xfc, 0xd2, 0xe3, 0x7d, 0xf3, + 0xf6, 0x81, 0xdc, 0x3c, 0x1b, 0x3f, 0x48, 0xbd, 0xea, 0xe1, 0x19, 0xcd, +}; +static const unsigned char kat4245_addinpr2[] = {0}; +static const unsigned char kat4245_retbits[] = { + 0xa7, 0xb6, 0xc0, 0xc8, 0xbe, 0xbd, 0x7e, 0xca, 0x93, 0x57, 0xa2, 0xbe, + 0x02, 0x06, 0x3a, 0x60, 0x3c, 0x10, 0x3d, 0x68, 0xa7, 0x93, 0xe7, 0x92, + 0x49, 0x7e, 0xcf, 0x66, 0x59, 0x28, 0x35, 0xf1, 0xf9, 0x60, 0x7d, 0xae, + 0x7b, 0x98, 0xbe, 0x10, 0x49, 0x51, 0x4e, 0xc5, 0xea, 0x4c, 0xdd, 0x0b, + 0x41, 0xd5, 0xcb, 0xf9, 0x86, 0xa3, 0xa0, 0x43, 0x14, 0x51, 0x5b, 0x34, + 0x1f, 0x09, 0x24, 0xab, +}; +static const struct drbg_kat_pr_true kat4245_t = { + 14, kat4245_entropyin, kat4245_nonce, kat4245_persstr, + kat4245_entropyinpr1, kat4245_addinpr1, kat4245_entropyinpr2, + kat4245_addinpr2, kat4245_retbits +}; +static const struct drbg_kat kat4245 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4245_t +}; + +static const unsigned char kat4246_entropyin[] = { + 0x1a, 0x14, 0x18, 0x04, 0x50, 0x42, 0x2b, 0x6d, 0x0e, 0x93, 0xb8, 0x25, + 0x51, 0x80, 0x82, 0x12, 0xd8, 0x30, 0x8b, 0xc7, 0x54, 0xd4, 0x75, 0x31, + 0x66, 0x42, 0xdf, 0x73, 0xf9, 0xba, 0x40, 0xae, 0x66, 0x6e, 0x1f, 0x60, + 0xf1, 0x3a, 0xbe, 0x7c, 0xab, 0xd7, 0x07, 0x43, 0xd8, 0x92, 0xbd, 0x1d, +}; +static const unsigned char kat4246_nonce[] = {0}; +static const unsigned char kat4246_persstr[] = { + 0x91, 0xb7, 0x7d, 0x48, 0x92, 0xee, 0xac, 0xf6, 0xe2, 0xe8, 0xb0, 0x0a, + 0xec, 0xd4, 0xa3, 0xdb, 0x71, 0x83, 0x1d, 0x07, 0xec, 0xb4, 0x6f, 0x91, + 0x2d, 0xc8, 0x55, 0x00, 0x8b, 0x79, 0xd9, 0xaa, 0x33, 0x12, 0x9b, 0xaa, + 0xb9, 0x0a, 0xb1, 0x4a, 0x67, 0x83, 0x71, 0x0b, 0xc7, 0xa0, 0x22, 0x2a, +}; +static const unsigned char kat4246_entropyinpr1[] = { + 0x2e, 0xb5, 0xcd, 0x19, 0x6c, 0xe8, 0xa5, 0xf9, 0xde, 0x59, 0x5c, 0x17, + 0xbd, 0x2b, 0x13, 0xfc, 0x30, 0xd6, 0xa6, 0x8d, 0x5e, 0x61, 0xd4, 0xac, + 0x06, 0x61, 0x28, 0xa7, 0xec, 0x55, 0x7c, 0xab, 0x05, 0x9a, 0x65, 0x18, + 0x5d, 0x13, 0xb8, 0xd1, 0x60, 0x60, 0x1a, 0xe8, 0xcc, 0x8e, 0x9d, 0x0e, +}; +static const unsigned char kat4246_addinpr1[] = { + 0x04, 0x23, 0xf8, 0x6e, 0xeb, 0x37, 0xdf, 0xa5, 0x50, 0x46, 0x6a, 0x21, + 0x45, 0xfe, 0x39, 0xfc, 0x65, 0xfa, 0xb8, 0x2c, 0xd7, 0x96, 0x1d, 0x73, + 0xc9, 0x99, 0xa4, 0xa2, 0x03, 0x9b, 0x1e, 0x51, 0x21, 0x6a, 0xf4, 0xb2, + 0x6d, 0x28, 0xa3, 0xaa, 0x28, 0xc0, 0xcb, 0xb1, 0x0b, 0xc3, 0x80, 0x6b, +}; +static const unsigned char kat4246_entropyinpr2[] = { + 0xaa, 0x96, 0xcd, 0x7b, 0xb4, 0x3b, 0x47, 0xa1, 0xc2, 0x55, 0x8d, 0xc4, + 0x1e, 0xef, 0x42, 0xae, 0x62, 0xb7, 0xc1, 0x36, 0xb4, 0x0e, 0xd2, 0xda, + 0x1e, 0x62, 0x1a, 0x68, 0xc8, 0x73, 0x4c, 0x28, 0x88, 0x90, 0xdb, 0xb9, + 0x43, 0xda, 0xdc, 0x7d, 0x7f, 0x56, 0x4e, 0xf2, 0xde, 0x31, 0x0e, 0xb2, +}; +static const unsigned char kat4246_addinpr2[] = { + 0x70, 0x01, 0x5c, 0xd3, 0xa7, 0x6c, 0x6f, 0x85, 0xd2, 0x55, 0x30, 0x46, + 0xc4, 0x7a, 0xf6, 0x87, 0xd7, 0x28, 0xf3, 0xc6, 0x4e, 0xe4, 0xd3, 0x1e, + 0x5a, 0xa8, 0xd7, 0x5a, 0x77, 0xe9, 0x12, 0x9b, 0xb7, 0x75, 0x56, 0x0c, + 0xc1, 0x85, 0xf5, 0x69, 0x13, 0xd5, 0xa0, 0x4f, 0x23, 0x31, 0x16, 0xff, +}; +static const unsigned char kat4246_retbits[] = { + 0x0a, 0x4f, 0x4e, 0xa0, 0x35, 0x97, 0x5e, 0x1e, 0x32, 0xc7, 0xa7, 0xa0, + 0x1f, 0x81, 0xcc, 0xa3, 0x26, 0xa1, 0xfe, 0x01, 0x49, 0x1e, 0x83, 0x0e, + 0xa2, 0xc1, 0xe5, 0x57, 0xc3, 0x74, 0xe9, 0x0d, 0x8b, 0xcc, 0xb7, 0xd9, + 0x7f, 0x23, 0x89, 0x69, 0xd1, 0x16, 0xad, 0x04, 0xca, 0xd9, 0xf8, 0x14, + 0x2f, 0x90, 0xdf, 0x5c, 0xe4, 0xe7, 0x06, 0x7e, 0x0f, 0x3a, 0x7d, 0x66, + 0x78, 0xee, 0x9f, 0x6f, +}; +static const struct drbg_kat_pr_true kat4246_t = { + 0, kat4246_entropyin, kat4246_nonce, kat4246_persstr, + kat4246_entropyinpr1, kat4246_addinpr1, kat4246_entropyinpr2, + kat4246_addinpr2, kat4246_retbits +}; +static const struct drbg_kat kat4246 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4246_t +}; + +static const unsigned char kat4247_entropyin[] = { + 0xd9, 0x60, 0x09, 0x4f, 0xcd, 0xab, 0xac, 0x3b, 0xce, 0xa6, 0x3a, 0x8d, + 0xf8, 0x12, 0x7a, 0x9b, 0x06, 0x19, 0x77, 0xfa, 0x05, 0xe5, 0xf5, 0x41, + 0x67, 0xa1, 0x97, 0x19, 0x83, 0x55, 0x4b, 0x68, 0xfc, 0x10, 0x6f, 0xea, + 0xfa, 0xfe, 0x43, 0xf5, 0x19, 0x30, 0x44, 0x75, 0xaa, 0x0e, 0xdb, 0xe8, +}; +static const unsigned char kat4247_nonce[] = {0}; +static const unsigned char kat4247_persstr[] = { + 0x74, 0x19, 0x96, 0xf8, 0xfb, 0x1e, 0x6b, 0xc0, 0xbc, 0x11, 0x14, 0x7d, + 0x97, 0x76, 0x6c, 0xf1, 0x04, 0xb8, 0xf1, 0x17, 0x58, 0xbc, 0x21, 0x6c, + 0xfa, 0x46, 0x64, 0x8a, 0x32, 0xe3, 0x27, 0x87, 0x42, 0x36, 0x2f, 0x33, + 0x75, 0x75, 0x5c, 0xe1, 0x0c, 0xf9, 0x46, 0x0f, 0x7d, 0x3d, 0x59, 0x37, +}; +static const unsigned char kat4247_entropyinpr1[] = { + 0x4f, 0xb2, 0xc5, 0x8d, 0x33, 0xf0, 0x7d, 0xe4, 0xc4, 0x6b, 0x40, 0xb1, + 0x42, 0x91, 0x39, 0x75, 0x76, 0xf1, 0x6c, 0x63, 0x1e, 0x6b, 0xc3, 0xd2, + 0xbb, 0xb2, 0x13, 0x24, 0x29, 0x39, 0x69, 0x54, 0x7c, 0xc0, 0x5e, 0xb5, + 0x39, 0x0e, 0x8a, 0x46, 0xcf, 0x37, 0x61, 0xb9, 0x3d, 0x87, 0x8a, 0xf9, +}; +static const unsigned char kat4247_addinpr1[] = { + 0x67, 0x4e, 0xd4, 0x17, 0x1d, 0xb1, 0x0d, 0x6e, 0xfa, 0x45, 0x2d, 0x0a, + 0xed, 0x6f, 0x7d, 0xd6, 0x3a, 0x5c, 0x2f, 0x18, 0x34, 0xfb, 0xf7, 0x6b, + 0xd0, 0xe5, 0xe4, 0x0e, 0x4a, 0x9d, 0x38, 0xbb, 0x3f, 0x77, 0xa7, 0xcc, + 0x8a, 0xb3, 0x6e, 0xee, 0x78, 0x17, 0xa0, 0x11, 0xd3, 0x1e, 0x03, 0xec, +}; +static const unsigned char kat4247_entropyinpr2[] = { + 0xf0, 0x28, 0x21, 0x41, 0xbe, 0xfd, 0x06, 0x88, 0x51, 0xde, 0x41, 0x55, + 0x25, 0xd0, 0x63, 0xf0, 0x19, 0x4f, 0xa6, 0xb1, 0x84, 0xa2, 0xbc, 0x20, + 0x7e, 0xae, 0x07, 0x0c, 0xe2, 0x6c, 0xdf, 0x71, 0x40, 0x7e, 0x54, 0xf1, + 0x9c, 0x18, 0x39, 0x5f, 0x61, 0x81, 0x78, 0xe9, 0x13, 0xa1, 0xeb, 0xd0, +}; +static const unsigned char kat4247_addinpr2[] = { + 0x23, 0x71, 0xd1, 0x41, 0x92, 0xed, 0x93, 0x4c, 0xbf, 0xfc, 0x32, 0xea, + 0x38, 0x22, 0x05, 0x7e, 0x31, 0xf6, 0x91, 0x56, 0x93, 0xac, 0x8f, 0x48, + 0x0b, 0x1a, 0x8e, 0xe2, 0x02, 0xf0, 0x83, 0xca, 0xbb, 0x71, 0x48, 0xfc, + 0xc7, 0x04, 0x9b, 0x95, 0xd1, 0xe6, 0xe6, 0xf7, 0x81, 0x00, 0xfb, 0xc2, +}; +static const unsigned char kat4247_retbits[] = { + 0x1d, 0xf9, 0xc3, 0x94, 0xd6, 0xef, 0x12, 0xcb, 0x7d, 0x96, 0x7b, 0x19, + 0xc6, 0xfc, 0x7d, 0x58, 0x0b, 0xbb, 0xcb, 0xdb, 0xa0, 0xc4, 0x98, 0x2b, + 0xf3, 0x34, 0x36, 0x70, 0x7c, 0x49, 0xc1, 0x33, 0xb2, 0xb3, 0x69, 0x93, + 0xdd, 0x52, 0xc1, 0xa0, 0x93, 0x2d, 0xf4, 0xca, 0xd0, 0xdd, 0x15, 0x1d, + 0x17, 0x9e, 0xc2, 0xe3, 0x8b, 0xd9, 0xd6, 0xfa, 0x0b, 0x9e, 0x84, 0x4c, + 0x20, 0xd1, 0xbf, 0x6e, +}; +static const struct drbg_kat_pr_true kat4247_t = { + 1, kat4247_entropyin, kat4247_nonce, kat4247_persstr, + kat4247_entropyinpr1, kat4247_addinpr1, kat4247_entropyinpr2, + kat4247_addinpr2, kat4247_retbits +}; +static const struct drbg_kat kat4247 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4247_t +}; + +static const unsigned char kat4248_entropyin[] = { + 0xd9, 0x4b, 0xc2, 0x0a, 0x41, 0xc8, 0x16, 0x20, 0xb6, 0xcb, 0x2e, 0x46, + 0x5a, 0xb0, 0xf3, 0x77, 0xd7, 0x4b, 0xa2, 0x27, 0xb2, 0xd1, 0xe7, 0x49, + 0x83, 0x4b, 0xe5, 0xbb, 0xfb, 0x73, 0x2d, 0x15, 0xe7, 0x60, 0x3c, 0x7d, + 0x6b, 0xfd, 0xe4, 0x33, 0x33, 0x0f, 0x72, 0x13, 0xe4, 0xef, 0x39, 0x1b, +}; +static const unsigned char kat4248_nonce[] = {0}; +static const unsigned char kat4248_persstr[] = { + 0xa1, 0x1f, 0x42, 0xfb, 0xd3, 0x5f, 0x23, 0x5a, 0x47, 0xe0, 0xb6, 0xe8, + 0x5e, 0xa0, 0x98, 0xd2, 0x0e, 0x11, 0x39, 0x9e, 0xf1, 0x97, 0xc6, 0x21, + 0x7f, 0xe8, 0x21, 0x9d, 0x56, 0xef, 0xb3, 0x0a, 0x2f, 0x89, 0x43, 0x48, + 0x39, 0x4b, 0x59, 0x66, 0x78, 0x38, 0xa9, 0x95, 0x9b, 0x0d, 0x1c, 0x53, +}; +static const unsigned char kat4248_entropyinpr1[] = { + 0x5a, 0xcf, 0xdb, 0x10, 0xbe, 0x57, 0x99, 0x5f, 0xda, 0x42, 0xf1, 0xfc, + 0xd5, 0xd4, 0x11, 0x04, 0x79, 0x7a, 0xc4, 0xaf, 0xd0, 0xf5, 0x73, 0x90, + 0x86, 0xe7, 0xc1, 0x3a, 0x11, 0x51, 0xbf, 0x0f, 0xe2, 0x7c, 0x19, 0x3e, + 0xeb, 0x89, 0x7d, 0xcf, 0x11, 0xbb, 0xfb, 0x52, 0xc8, 0x3c, 0x29, 0x78, +}; +static const unsigned char kat4248_addinpr1[] = { + 0x72, 0x46, 0xe2, 0x9c, 0x80, 0xb4, 0x92, 0x14, 0x88, 0xc9, 0x32, 0xc2, + 0x5b, 0xa4, 0xd4, 0xb8, 0xab, 0xd7, 0x27, 0xab, 0x48, 0xa2, 0xc9, 0xbd, + 0xf7, 0xdf, 0x5d, 0x71, 0xcb, 0x75, 0xc9, 0x6c, 0xe2, 0x6d, 0x5c, 0xed, + 0x5c, 0xc9, 0xb2, 0xab, 0x9e, 0x05, 0xa4, 0x49, 0x90, 0x7b, 0x0a, 0xa8, +}; +static const unsigned char kat4248_entropyinpr2[] = { + 0xf0, 0x4e, 0xa5, 0x2c, 0x36, 0xc4, 0x4f, 0x08, 0x51, 0x7c, 0x37, 0xf0, + 0x6d, 0x45, 0x07, 0xa6, 0x97, 0xc5, 0x05, 0x91, 0x3d, 0xd6, 0xd4, 0xe0, + 0x18, 0xd3, 0x24, 0x90, 0x8c, 0x4b, 0x41, 0x26, 0xe0, 0x84, 0x7e, 0x1e, + 0x89, 0x0c, 0xf1, 0x48, 0x9b, 0xb2, 0xef, 0x25, 0xd0, 0x03, 0x41, 0x47, +}; +static const unsigned char kat4248_addinpr2[] = { + 0x25, 0x1c, 0xfc, 0xe3, 0xda, 0x6a, 0x3b, 0x2b, 0xe5, 0x81, 0x45, 0xd8, + 0x5d, 0x64, 0x67, 0xfe, 0xdf, 0x9c, 0x20, 0x59, 0xe8, 0x66, 0x54, 0xc0, + 0x60, 0x5f, 0x03, 0x69, 0xa7, 0xf8, 0x38, 0x31, 0x04, 0x95, 0x96, 0xaf, + 0x6d, 0x9a, 0xfd, 0x17, 0xa3, 0x39, 0xcb, 0x73, 0x4d, 0xdc, 0x9c, 0x78, +}; +static const unsigned char kat4248_retbits[] = { + 0xb8, 0x94, 0xde, 0xc6, 0x6b, 0xc2, 0x0d, 0x7f, 0x97, 0xbf, 0xd8, 0xa9, + 0x4a, 0x17, 0x2f, 0x57, 0x84, 0x31, 0x6f, 0x18, 0x40, 0x89, 0x4a, 0xd5, + 0x32, 0xff, 0x43, 0xef, 0xf8, 0x8c, 0x79, 0xa4, 0x1f, 0x0c, 0xea, 0x61, + 0xe1, 0x13, 0xc1, 0x32, 0x95, 0x29, 0x3a, 0x6e, 0xe1, 0x79, 0xdc, 0xb2, + 0x2f, 0xbc, 0x1f, 0xc8, 0x39, 0x7f, 0x3f, 0xff, 0xb3, 0x1e, 0x7a, 0x84, + 0xc9, 0x11, 0xc2, 0xa6, +}; +static const struct drbg_kat_pr_true kat4248_t = { + 2, kat4248_entropyin, kat4248_nonce, kat4248_persstr, + kat4248_entropyinpr1, kat4248_addinpr1, kat4248_entropyinpr2, + kat4248_addinpr2, kat4248_retbits +}; +static const struct drbg_kat kat4248 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4248_t +}; + +static const unsigned char kat4249_entropyin[] = { + 0x90, 0x05, 0x2c, 0x67, 0x3c, 0xee, 0x96, 0x77, 0x05, 0x86, 0x21, 0x24, + 0x2d, 0x08, 0xde, 0x86, 0x46, 0xb1, 0x6f, 0xdc, 0x1d, 0x77, 0x73, 0x7b, + 0x6e, 0x01, 0x79, 0x26, 0xb4, 0x22, 0xdd, 0xb9, 0xc3, 0x83, 0x84, 0x6d, + 0xb8, 0x7d, 0xde, 0x0d, 0xdf, 0xd0, 0xd7, 0x0b, 0xd5, 0x54, 0x7e, 0x60, +}; +static const unsigned char kat4249_nonce[] = {0}; +static const unsigned char kat4249_persstr[] = { + 0xb3, 0x48, 0xf3, 0x7a, 0x3f, 0x07, 0x3f, 0xa2, 0xf9, 0x59, 0x32, 0x92, + 0x9e, 0xd9, 0x34, 0x0a, 0x24, 0xe5, 0x81, 0xf3, 0x50, 0x91, 0x4a, 0x9c, + 0x83, 0xa2, 0x41, 0x34, 0x52, 0x5d, 0x70, 0xc0, 0x88, 0xae, 0x1f, 0x75, + 0xb7, 0x0b, 0x6c, 0xcc, 0x1e, 0x53, 0x60, 0xd0, 0xda, 0x07, 0x52, 0xac, +}; +static const unsigned char kat4249_entropyinpr1[] = { + 0x21, 0x61, 0xd5, 0xba, 0xb5, 0x5c, 0x74, 0x29, 0x75, 0x66, 0xa3, 0x98, + 0xfe, 0x71, 0x5c, 0x8c, 0x8e, 0x8e, 0x43, 0xce, 0x2b, 0x71, 0xa4, 0x9d, + 0x38, 0x00, 0xf4, 0xe6, 0xf7, 0x51, 0x3a, 0x0a, 0xd4, 0x74, 0xeb, 0x1a, + 0xf8, 0x41, 0xd5, 0xcd, 0x69, 0x90, 0xb9, 0x47, 0x0d, 0xca, 0x57, 0x43, +}; +static const unsigned char kat4249_addinpr1[] = { + 0xa9, 0xbb, 0x39, 0x5e, 0xf6, 0x9e, 0x9f, 0x02, 0x50, 0x65, 0xca, 0xca, + 0x0a, 0xf7, 0x84, 0x22, 0xed, 0x29, 0x86, 0xe4, 0xe9, 0x75, 0xd2, 0xea, + 0xc5, 0xac, 0xed, 0xa3, 0x61, 0xa0, 0x88, 0x8f, 0x1d, 0xed, 0xe1, 0xe5, + 0x4a, 0x23, 0x56, 0x4d, 0x25, 0x45, 0x6d, 0xb1, 0x8e, 0xa1, 0x08, 0x5b, +}; +static const unsigned char kat4249_entropyinpr2[] = { + 0x72, 0xae, 0x29, 0x90, 0x3b, 0xf0, 0x73, 0x1a, 0x3d, 0x41, 0xa3, 0x9e, + 0x63, 0xfc, 0x7a, 0x57, 0x1e, 0xa9, 0x9c, 0xd6, 0x79, 0xa9, 0x04, 0xf6, + 0x0d, 0xd3, 0x57, 0x28, 0xd1, 0x41, 0xc3, 0x38, 0x5d, 0xff, 0x09, 0x65, + 0xe1, 0xa5, 0x6c, 0xd5, 0x7b, 0x71, 0x90, 0xc0, 0x11, 0x2b, 0x70, 0xbe, +}; +static const unsigned char kat4249_addinpr2[] = { + 0x4e, 0x0c, 0x5e, 0x9e, 0x5e, 0xab, 0x36, 0xfe, 0x78, 0xd4, 0x2c, 0x05, + 0x8e, 0xf4, 0xde, 0xba, 0x19, 0xa9, 0x4f, 0x87, 0x02, 0xbc, 0xee, 0xb6, + 0x63, 0x07, 0x5a, 0x7d, 0x84, 0x06, 0x9c, 0x50, 0xeb, 0x23, 0x97, 0x6e, + 0x05, 0xb7, 0xda, 0x7c, 0x7f, 0x55, 0xfd, 0x72, 0x73, 0x89, 0x39, 0x7f, +}; +static const unsigned char kat4249_retbits[] = { + 0x9b, 0xf4, 0x96, 0x83, 0x31, 0x96, 0x64, 0xb0, 0x03, 0xf2, 0x60, 0x28, + 0xbb, 0xc7, 0x2b, 0x3d, 0xc6, 0x07, 0xd8, 0xa3, 0x08, 0x8a, 0xa7, 0x8d, + 0xd8, 0xdc, 0x23, 0x8f, 0xeb, 0x79, 0x43, 0x3b, 0x83, 0xf1, 0xc9, 0xae, + 0x11, 0x90, 0xc2, 0x70, 0xab, 0x43, 0xa3, 0x9d, 0x1a, 0xd3, 0x42, 0x2a, + 0x80, 0x04, 0xa8, 0x03, 0x3c, 0x58, 0xf8, 0x44, 0x67, 0xc0, 0x28, 0xae, + 0xb8, 0xea, 0xba, 0x19, +}; +static const struct drbg_kat_pr_true kat4249_t = { + 3, kat4249_entropyin, kat4249_nonce, kat4249_persstr, + kat4249_entropyinpr1, kat4249_addinpr1, kat4249_entropyinpr2, + kat4249_addinpr2, kat4249_retbits +}; +static const struct drbg_kat kat4249 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4249_t +}; + +static const unsigned char kat4250_entropyin[] = { + 0x69, 0x3c, 0x3d, 0x21, 0xcc, 0x3d, 0x38, 0x68, 0x4c, 0x1e, 0x52, 0xfe, + 0xb2, 0x4c, 0x84, 0xd5, 0x44, 0x4b, 0x3f, 0xba, 0xb5, 0x69, 0xa0, 0x74, + 0xd8, 0xe2, 0x55, 0x61, 0xe0, 0x79, 0xeb, 0x73, 0xc1, 0x92, 0xe1, 0xac, + 0xb6, 0x2b, 0x8d, 0xcf, 0xf5, 0x37, 0x01, 0x39, 0xa4, 0xaf, 0x2f, 0x14, +}; +static const unsigned char kat4250_nonce[] = {0}; +static const unsigned char kat4250_persstr[] = { + 0x9c, 0x1a, 0x13, 0x13, 0xfb, 0x5a, 0x06, 0x48, 0xb5, 0x85, 0x27, 0xac, + 0x2d, 0xd5, 0x07, 0x9c, 0x47, 0x09, 0x68, 0x45, 0x60, 0x2f, 0x48, 0xae, + 0x3d, 0x04, 0xf6, 0x68, 0xe2, 0x7b, 0x94, 0xb4, 0x4f, 0xfc, 0x74, 0xe4, + 0xcd, 0x77, 0xd3, 0x70, 0xc2, 0x04, 0xf0, 0xe6, 0xf8, 0x70, 0x47, 0xb7, +}; +static const unsigned char kat4250_entropyinpr1[] = { + 0x4a, 0x61, 0x97, 0xcc, 0xae, 0x24, 0xed, 0x98, 0x93, 0x26, 0x02, 0x37, + 0x61, 0x74, 0xb2, 0x23, 0x5b, 0xcd, 0x10, 0xf6, 0xb4, 0xf8, 0x86, 0xe3, + 0xd6, 0xd2, 0xd6, 0xec, 0x53, 0x35, 0xb3, 0xd7, 0x09, 0x6c, 0x75, 0xe1, + 0x8a, 0x18, 0x65, 0x7e, 0x3e, 0x14, 0x32, 0xd1, 0x7e, 0xb5, 0x99, 0xc7, +}; +static const unsigned char kat4250_addinpr1[] = { + 0x40, 0x10, 0x6b, 0xd9, 0x95, 0x3a, 0x55, 0xce, 0xc4, 0x0f, 0x6a, 0xbc, + 0x9f, 0x75, 0xb8, 0xf4, 0x1b, 0x50, 0xf0, 0xdf, 0xfb, 0xa5, 0x17, 0xa4, + 0x55, 0xec, 0xd6, 0x05, 0xc3, 0xd3, 0x99, 0x03, 0xc3, 0x59, 0xd2, 0xaa, + 0xeb, 0x41, 0x7f, 0xb0, 0x07, 0xe8, 0xd4, 0x51, 0x02, 0x84, 0x44, 0xb3, +}; +static const unsigned char kat4250_entropyinpr2[] = { + 0x96, 0xe0, 0x4a, 0xf5, 0xe2, 0x44, 0x15, 0x84, 0x58, 0xba, 0xcc, 0xe4, + 0x45, 0xb3, 0x99, 0xb4, 0x7e, 0x73, 0x5c, 0x14, 0x1f, 0xc1, 0xd5, 0xe5, + 0xb2, 0xde, 0xa0, 0x49, 0xd8, 0xea, 0x05, 0x4e, 0xc7, 0xe1, 0xb6, 0xed, + 0x03, 0x4b, 0x26, 0xd0, 0xb0, 0xde, 0x20, 0xb9, 0x1f, 0xd3, 0x2c, 0x4a, +}; +static const unsigned char kat4250_addinpr2[] = { + 0x5f, 0xff, 0xe4, 0xb6, 0x5f, 0x76, 0x2e, 0xfd, 0xe7, 0xa4, 0x39, 0x6f, + 0x29, 0x94, 0xe8, 0x4f, 0xc9, 0x90, 0x59, 0x92, 0xf1, 0x0d, 0x3a, 0xdd, + 0x5e, 0x32, 0x02, 0x31, 0xbe, 0xc0, 0xec, 0x6b, 0xd5, 0x0e, 0x27, 0xd2, + 0x49, 0x8d, 0x9f, 0x44, 0x3f, 0x16, 0x4d, 0x7c, 0xd6, 0x8f, 0xe6, 0xa4, +}; +static const unsigned char kat4250_retbits[] = { + 0x43, 0xea, 0x89, 0x7c, 0xf1, 0x11, 0xe8, 0xc5, 0xc5, 0x8a, 0x55, 0x3a, + 0x23, 0x18, 0x90, 0xfd, 0x91, 0x34, 0x01, 0xbe, 0xbc, 0xe2, 0xed, 0xc7, + 0x6a, 0xfe, 0x97, 0xce, 0xdc, 0x68, 0x06, 0xf6, 0x01, 0x3d, 0x57, 0xe8, + 0xe6, 0xa7, 0x9a, 0x93, 0x0a, 0x2e, 0x94, 0xc2, 0x59, 0x0a, 0x5c, 0xf5, + 0x7d, 0x9b, 0x7d, 0x2b, 0x86, 0xfe, 0xc8, 0xd6, 0xf4, 0x69, 0x2c, 0xd6, + 0x22, 0xdb, 0x99, 0xdd, +}; +static const struct drbg_kat_pr_true kat4250_t = { + 4, kat4250_entropyin, kat4250_nonce, kat4250_persstr, + kat4250_entropyinpr1, kat4250_addinpr1, kat4250_entropyinpr2, + kat4250_addinpr2, kat4250_retbits +}; +static const struct drbg_kat kat4250 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4250_t +}; + +static const unsigned char kat4251_entropyin[] = { + 0x8a, 0x0b, 0xf5, 0x80, 0x72, 0xae, 0xb8, 0xa3, 0x75, 0x23, 0x7a, 0x29, + 0xa0, 0xe3, 0xf7, 0x8a, 0x56, 0x2d, 0x78, 0x2a, 0x5e, 0xd3, 0x83, 0x32, + 0x1d, 0x65, 0xa3, 0xa8, 0xf9, 0x3f, 0x50, 0x1d, 0x70, 0x1e, 0x71, 0x69, + 0x4e, 0x79, 0xfa, 0x19, 0xd7, 0xe7, 0x4a, 0x2f, 0x64, 0xd5, 0xcf, 0xc8, +}; +static const unsigned char kat4251_nonce[] = {0}; +static const unsigned char kat4251_persstr[] = { + 0x83, 0x06, 0x79, 0x99, 0x8e, 0x19, 0x55, 0x55, 0xba, 0x07, 0xc7, 0xd1, + 0xc7, 0x0c, 0x92, 0xe0, 0x65, 0xfc, 0xa2, 0x6e, 0x15, 0x6d, 0x69, 0x42, + 0x04, 0x6a, 0x27, 0x09, 0x73, 0x35, 0xf6, 0x9f, 0xf0, 0x43, 0x9b, 0xc6, + 0x1e, 0x89, 0x34, 0x99, 0x96, 0xc9, 0xe3, 0xa1, 0x98, 0x15, 0x53, 0xd3, +}; +static const unsigned char kat4251_entropyinpr1[] = { + 0x16, 0xad, 0x3e, 0x4f, 0x8d, 0x8a, 0x63, 0x71, 0x6d, 0xfe, 0xde, 0x56, + 0x27, 0x62, 0xe7, 0x70, 0xd9, 0x66, 0x25, 0x47, 0x7b, 0xcc, 0x87, 0xd4, + 0xcb, 0xc0, 0x69, 0x34, 0x5d, 0xe9, 0xdf, 0x5d, 0x74, 0xf4, 0x58, 0xd7, + 0x60, 0x29, 0x2c, 0x20, 0x1d, 0xb6, 0x5e, 0xd6, 0xe4, 0x63, 0x75, 0x19, +}; +static const unsigned char kat4251_addinpr1[] = { + 0xa1, 0x68, 0xe1, 0x28, 0xc6, 0xee, 0x0b, 0x99, 0xae, 0x80, 0x5e, 0xc0, + 0xe5, 0x9d, 0x0b, 0x22, 0xe8, 0x9c, 0xde, 0x18, 0x8e, 0x94, 0x56, 0xa5, + 0xde, 0xd3, 0xbb, 0xac, 0x3f, 0x8c, 0x55, 0x55, 0x9c, 0x47, 0xb2, 0x5a, + 0x6b, 0x61, 0x36, 0x28, 0xa3, 0xf2, 0x4d, 0xe8, 0xf5, 0x0e, 0x40, 0xf1, +}; +static const unsigned char kat4251_entropyinpr2[] = { + 0x4b, 0xac, 0xc3, 0x00, 0xec, 0x2a, 0xe6, 0xfe, 0x44, 0x57, 0x15, 0xef, + 0xf2, 0x8d, 0xe6, 0x81, 0xe1, 0x6f, 0x63, 0xf1, 0x84, 0x81, 0xaf, 0x43, + 0x36, 0x69, 0xcf, 0xd2, 0xe0, 0x53, 0x4e, 0xa4, 0x74, 0x7e, 0x7b, 0x0c, + 0xfc, 0x3f, 0x72, 0x7e, 0x19, 0x38, 0xab, 0xf2, 0x77, 0x1f, 0xab, 0x69, +}; +static const unsigned char kat4251_addinpr2[] = { + 0xfd, 0x42, 0x5d, 0xbd, 0x14, 0xf3, 0x8a, 0x30, 0xc6, 0x51, 0x0d, 0x30, + 0x8b, 0x07, 0x1a, 0x4e, 0x14, 0x42, 0x59, 0x66, 0xbf, 0xf6, 0xc2, 0xc8, + 0xf0, 0x47, 0xae, 0x4b, 0xe7, 0x29, 0xb7, 0x40, 0x56, 0x17, 0x13, 0x18, + 0x96, 0xf3, 0x53, 0x67, 0x4e, 0x6d, 0x09, 0x2d, 0x5e, 0x2b, 0x74, 0xc1, +}; +static const unsigned char kat4251_retbits[] = { + 0x2c, 0xc0, 0x99, 0x32, 0xca, 0x24, 0xdd, 0x7c, 0x41, 0x9f, 0x37, 0x4c, + 0xc3, 0x62, 0x16, 0x39, 0x0d, 0x93, 0x87, 0x9d, 0x85, 0xdd, 0x96, 0x2a, + 0x5a, 0x21, 0x23, 0x6e, 0x23, 0x1c, 0x4e, 0xc1, 0x6e, 0x44, 0xec, 0xdb, + 0xf2, 0xd4, 0x4f, 0x3f, 0xaa, 0xc7, 0x5c, 0x49, 0x4c, 0x03, 0x9a, 0x38, + 0x4d, 0x06, 0x9d, 0xf4, 0xe1, 0xe9, 0x3b, 0x3a, 0xf2, 0x04, 0x60, 0xac, + 0x66, 0x52, 0x5f, 0xd0, +}; +static const struct drbg_kat_pr_true kat4251_t = { + 5, kat4251_entropyin, kat4251_nonce, kat4251_persstr, + kat4251_entropyinpr1, kat4251_addinpr1, kat4251_entropyinpr2, + kat4251_addinpr2, kat4251_retbits +}; +static const struct drbg_kat kat4251 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4251_t +}; + +static const unsigned char kat4252_entropyin[] = { + 0xa6, 0x35, 0x8c, 0x87, 0x62, 0x1e, 0x63, 0xda, 0xe3, 0xac, 0x3f, 0x95, + 0x3d, 0xb0, 0xcc, 0xb9, 0xdb, 0xc1, 0xd0, 0x46, 0xc9, 0x9c, 0x7d, 0xd0, + 0x7e, 0xf9, 0x1c, 0x6c, 0x2f, 0xd2, 0x30, 0xa9, 0xf1, 0xbc, 0xa5, 0xfc, + 0x28, 0x66, 0x01, 0x60, 0x85, 0xc2, 0x6c, 0xcb, 0x5b, 0x28, 0x71, 0x5a, +}; +static const unsigned char kat4252_nonce[] = {0}; +static const unsigned char kat4252_persstr[] = { + 0x10, 0x74, 0xe6, 0xeb, 0x18, 0x7d, 0x40, 0x86, 0x12, 0x97, 0xd9, 0xe5, + 0xc0, 0xb3, 0xb4, 0x9d, 0x66, 0xc8, 0xd6, 0x9e, 0x95, 0xda, 0x89, 0x6b, + 0x67, 0x9e, 0xe9, 0x24, 0x61, 0x42, 0xfb, 0xf4, 0x8c, 0x35, 0xb1, 0xd7, + 0xe7, 0x39, 0x31, 0xed, 0x0b, 0x6e, 0x2a, 0x3b, 0x69, 0x67, 0xe8, 0x00, +}; +static const unsigned char kat4252_entropyinpr1[] = { + 0x13, 0x1c, 0x19, 0x4e, 0xe4, 0xa3, 0xbb, 0xa4, 0x8d, 0xed, 0xd5, 0xb8, + 0x3b, 0xfc, 0x82, 0xd1, 0x72, 0xdb, 0x75, 0xe2, 0x19, 0x8e, 0x76, 0xc7, + 0x28, 0xe0, 0x4f, 0xc8, 0xab, 0x32, 0x3c, 0xed, 0xa2, 0xc3, 0x2d, 0x44, + 0x78, 0x53, 0xf6, 0xbf, 0x77, 0x77, 0xd5, 0x59, 0xd3, 0x35, 0x04, 0xbd, +}; +static const unsigned char kat4252_addinpr1[] = { + 0x19, 0x04, 0xc3, 0xc9, 0x39, 0x5f, 0x42, 0x42, 0x24, 0x98, 0x9e, 0x8a, + 0x31, 0x83, 0xc9, 0x0d, 0xba, 0xf9, 0x73, 0x5f, 0xc5, 0x22, 0xfe, 0x4e, + 0x44, 0x5c, 0xa4, 0xd5, 0x90, 0xd2, 0x53, 0xed, 0xc4, 0x7b, 0x21, 0xa1, + 0x4b, 0xf6, 0x30, 0xa7, 0x63, 0x75, 0x9e, 0xf7, 0x6f, 0xbe, 0x66, 0x15, +}; +static const unsigned char kat4252_entropyinpr2[] = { + 0xe0, 0x39, 0x7d, 0xd2, 0x33, 0x74, 0x5d, 0x71, 0x92, 0x46, 0x7d, 0x92, + 0x5f, 0x58, 0x2e, 0xc8, 0x8e, 0x80, 0x88, 0x0f, 0x2d, 0x96, 0x6f, 0x6a, + 0x40, 0x89, 0x2e, 0xe6, 0x7a, 0x90, 0x78, 0x91, 0x47, 0xe3, 0xdc, 0x7e, + 0xe9, 0x0c, 0x02, 0x7c, 0x2b, 0xfa, 0x3e, 0x9b, 0x69, 0xb0, 0xd7, 0x0c, +}; +static const unsigned char kat4252_addinpr2[] = { + 0x8b, 0x3a, 0xf5, 0xb4, 0xd4, 0xdc, 0x9b, 0xfb, 0x24, 0x5c, 0xeb, 0x92, + 0xd6, 0xa8, 0x44, 0x9c, 0x37, 0xaa, 0x6f, 0xdf, 0x46, 0x1d, 0x0a, 0x90, + 0xd2, 0x54, 0x62, 0xa8, 0x66, 0xac, 0x3e, 0x33, 0xf5, 0x64, 0xb8, 0x83, + 0xa5, 0x8f, 0x0d, 0x12, 0x15, 0x2b, 0x42, 0x35, 0x9e, 0x94, 0x40, 0x8d, +}; +static const unsigned char kat4252_retbits[] = { + 0xe8, 0x60, 0x9c, 0xd9, 0x3c, 0x5d, 0xfb, 0x11, 0x71, 0x11, 0x52, 0x8f, + 0xfb, 0xdf, 0x0e, 0x67, 0xf4, 0x74, 0x99, 0x4e, 0xf9, 0x16, 0x1c, 0xf7, + 0xf8, 0x44, 0x9c, 0xa3, 0xc5, 0x9c, 0x8b, 0x5c, 0x2d, 0x5f, 0xe5, 0xea, + 0x70, 0x40, 0x58, 0x7f, 0x36, 0xc8, 0x5d, 0x23, 0x4b, 0x4c, 0x8c, 0xa7, + 0xa7, 0x2e, 0xf7, 0xcc, 0xbb, 0x6c, 0xe8, 0x7c, 0xcf, 0x15, 0xc4, 0x4c, + 0xb2, 0x34, 0x5b, 0xb4, +}; +static const struct drbg_kat_pr_true kat4252_t = { + 6, kat4252_entropyin, kat4252_nonce, kat4252_persstr, + kat4252_entropyinpr1, kat4252_addinpr1, kat4252_entropyinpr2, + kat4252_addinpr2, kat4252_retbits +}; +static const struct drbg_kat kat4252 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4252_t +}; + +static const unsigned char kat4253_entropyin[] = { + 0x03, 0x39, 0x3b, 0x09, 0x3e, 0x1e, 0xe6, 0xed, 0xc0, 0xd5, 0x3a, 0xdc, + 0x56, 0x9e, 0x94, 0x17, 0xd4, 0xac, 0x42, 0x36, 0x35, 0x67, 0x1e, 0xf3, + 0x63, 0xe3, 0x65, 0xb1, 0xc7, 0xc1, 0x28, 0xb1, 0xf4, 0x43, 0x33, 0x8d, + 0x8f, 0x6a, 0xa2, 0x54, 0x2e, 0xed, 0xce, 0xb9, 0x01, 0xe2, 0x98, 0xd6, +}; +static const unsigned char kat4253_nonce[] = {0}; +static const unsigned char kat4253_persstr[] = { + 0x43, 0x0a, 0x7b, 0x2f, 0x49, 0xc9, 0x3d, 0x47, 0xfa, 0xa2, 0xc5, 0x0d, + 0xf7, 0x3e, 0xa4, 0x0c, 0x31, 0x8e, 0x81, 0x79, 0xe1, 0xcd, 0x61, 0xca, + 0x2b, 0x59, 0x82, 0x0d, 0x1c, 0x8b, 0x6a, 0xfe, 0xa9, 0x1d, 0x49, 0x12, + 0x94, 0x53, 0x37, 0x57, 0x64, 0x66, 0xb8, 0xa2, 0x0d, 0x5d, 0xd9, 0x2c, +}; +static const unsigned char kat4253_entropyinpr1[] = { + 0x38, 0x7f, 0xd6, 0x56, 0xea, 0x9b, 0x0d, 0x4f, 0xea, 0x5e, 0x25, 0x1c, + 0x0d, 0x8f, 0x49, 0xef, 0xfb, 0x05, 0xb9, 0x5a, 0xcc, 0x02, 0xf4, 0x1b, + 0xbb, 0x3e, 0x83, 0xd0, 0x0b, 0xf7, 0x01, 0x33, 0xba, 0x47, 0xcf, 0xb6, + 0x09, 0xf6, 0x8d, 0x17, 0x46, 0x5f, 0xfe, 0xce, 0xdb, 0x46, 0x50, 0x8e, +}; +static const unsigned char kat4253_addinpr1[] = { + 0xc0, 0xd2, 0xf2, 0x2c, 0x69, 0x34, 0xca, 0x8c, 0xba, 0x67, 0xd1, 0xe3, + 0xfb, 0x54, 0x56, 0x41, 0x32, 0x02, 0xa3, 0xfe, 0x5f, 0x1e, 0x62, 0x64, + 0xaf, 0xc2, 0x8c, 0x48, 0x89, 0x48, 0xf4, 0x9e, 0xa6, 0x43, 0x88, 0x21, + 0x47, 0x32, 0x6e, 0xf8, 0x5b, 0x3d, 0xfa, 0x72, 0x92, 0x95, 0x2f, 0x15, +}; +static const unsigned char kat4253_entropyinpr2[] = { + 0xa0, 0xb4, 0x3b, 0xff, 0xba, 0x67, 0x08, 0x91, 0x90, 0x02, 0xab, 0x0a, + 0x33, 0x8f, 0x05, 0xbe, 0x44, 0x85, 0x8f, 0xc5, 0x20, 0x1d, 0x54, 0xb9, + 0x9b, 0x53, 0x9c, 0x22, 0x40, 0x31, 0x6d, 0xd3, 0xbc, 0x06, 0xcf, 0x40, + 0x10, 0xdd, 0x4c, 0x6e, 0xef, 0x2c, 0x2d, 0x5e, 0x3b, 0xfb, 0x30, 0x58, +}; +static const unsigned char kat4253_addinpr2[] = { + 0xf0, 0xbf, 0x5f, 0x12, 0xe1, 0x88, 0xac, 0x6a, 0x8e, 0x7b, 0x16, 0xba, + 0xcd, 0x71, 0x04, 0x2b, 0x9c, 0x98, 0x5b, 0x37, 0x67, 0xc7, 0x35, 0x63, + 0xd9, 0x12, 0xfa, 0x26, 0x3d, 0x2d, 0xc0, 0x97, 0xdd, 0xab, 0xb5, 0x6e, + 0x76, 0x70, 0x81, 0xa8, 0x08, 0xef, 0x5b, 0x57, 0x71, 0x5f, 0xe0, 0x86, +}; +static const unsigned char kat4253_retbits[] = { + 0x9b, 0x89, 0x21, 0x2f, 0x5e, 0xbb, 0xb8, 0x1e, 0xda, 0x3a, 0x5e, 0x26, + 0xb9, 0x3f, 0x79, 0xfa, 0x96, 0xc1, 0xa9, 0x0a, 0xc5, 0xac, 0x35, 0xd1, + 0x89, 0x0b, 0x76, 0xf2, 0xa5, 0xa9, 0xdf, 0xa9, 0x84, 0x3d, 0x61, 0x32, + 0x49, 0x7e, 0xcb, 0xdf, 0x48, 0xd7, 0x1e, 0x17, 0xde, 0x05, 0xc8, 0xb3, + 0x96, 0xe6, 0xc7, 0x1b, 0x82, 0x2f, 0x53, 0x0a, 0x5e, 0x6d, 0xe2, 0x15, + 0xbb, 0x08, 0xf3, 0x1d, +}; +static const struct drbg_kat_pr_true kat4253_t = { + 7, kat4253_entropyin, kat4253_nonce, kat4253_persstr, + kat4253_entropyinpr1, kat4253_addinpr1, kat4253_entropyinpr2, + kat4253_addinpr2, kat4253_retbits +}; +static const struct drbg_kat kat4253 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4253_t +}; + +static const unsigned char kat4254_entropyin[] = { + 0x58, 0xa1, 0x96, 0x66, 0xb7, 0xba, 0xea, 0x18, 0xaf, 0xfe, 0x53, 0x4a, + 0x3a, 0xa3, 0xd7, 0xd5, 0x2e, 0x60, 0x5d, 0x5e, 0xf5, 0x90, 0x17, 0xfd, + 0xf9, 0xcb, 0x36, 0xb8, 0x2f, 0x77, 0xf7, 0xf1, 0x1b, 0x52, 0x7d, 0xe2, + 0xd8, 0xff, 0xa1, 0xcf, 0xd9, 0x01, 0x01, 0x7c, 0xea, 0x67, 0x10, 0x7f, +}; +static const unsigned char kat4254_nonce[] = {0}; +static const unsigned char kat4254_persstr[] = { + 0xfe, 0x30, 0x3b, 0x77, 0xb5, 0x33, 0x17, 0xae, 0xca, 0x61, 0x92, 0xa1, + 0x8c, 0x3d, 0x1a, 0xde, 0x20, 0x04, 0x17, 0x5c, 0xa6, 0xef, 0xb2, 0x75, + 0x91, 0x53, 0x06, 0x79, 0xa1, 0xeb, 0xbd, 0x5d, 0xa7, 0x70, 0x61, 0xc2, + 0xa0, 0x90, 0xa7, 0xdc, 0xb6, 0x1e, 0x64, 0x4f, 0x12, 0x6e, 0xf1, 0x4c, +}; +static const unsigned char kat4254_entropyinpr1[] = { + 0x15, 0xf1, 0xa8, 0xc2, 0x6d, 0xa1, 0x71, 0x14, 0x9e, 0xe5, 0x02, 0x89, + 0xcb, 0xb8, 0x49, 0x9e, 0xc3, 0x79, 0xda, 0xdd, 0x6f, 0x26, 0x9d, 0x23, + 0x25, 0x01, 0x95, 0x12, 0xcc, 0xcb, 0xd2, 0xb0, 0xa9, 0x1e, 0x1c, 0x44, + 0xd9, 0x38, 0x75, 0xbf, 0x64, 0xb6, 0xd3, 0x48, 0x77, 0x78, 0x5a, 0xd5, +}; +static const unsigned char kat4254_addinpr1[] = { + 0x16, 0x6f, 0xde, 0x12, 0xdd, 0x63, 0xa1, 0xcf, 0x86, 0x1d, 0xb0, 0x0e, + 0xba, 0xb1, 0x28, 0x33, 0x33, 0x57, 0x9a, 0xeb, 0x9c, 0xe1, 0xd5, 0x9f, + 0xd3, 0x55, 0x22, 0xeb, 0xc5, 0x9e, 0xec, 0x2b, 0x48, 0x8a, 0xf7, 0x39, + 0x42, 0xa5, 0x5e, 0xbb, 0xa7, 0x20, 0x05, 0x08, 0xd1, 0xc7, 0x6e, 0xee, +}; +static const unsigned char kat4254_entropyinpr2[] = { + 0xe9, 0x3f, 0xb6, 0xe7, 0x8a, 0x07, 0x6c, 0x59, 0x7e, 0x03, 0xb3, 0x45, + 0x13, 0xca, 0x18, 0x80, 0x84, 0x05, 0x1f, 0x07, 0x57, 0x3c, 0xdf, 0xad, + 0x47, 0x43, 0xb6, 0x32, 0x03, 0xb9, 0xf3, 0xcb, 0x6e, 0x33, 0x06, 0x69, + 0x6c, 0x17, 0xc7, 0xd0, 0xcd, 0x86, 0xa2, 0xba, 0xbb, 0x07, 0x24, 0xc3, +}; +static const unsigned char kat4254_addinpr2[] = { + 0xbd, 0x08, 0x7e, 0xd2, 0x3e, 0x1c, 0xca, 0xd0, 0x9a, 0xf9, 0xe3, 0x72, + 0x64, 0xca, 0xfa, 0x63, 0x7d, 0x8c, 0x74, 0x01, 0xce, 0xfa, 0xcd, 0xaf, + 0x1a, 0x78, 0x5f, 0x6f, 0xc6, 0x3f, 0x60, 0x9c, 0x49, 0xbe, 0xc4, 0x92, + 0xbd, 0x67, 0x6e, 0x95, 0x69, 0x2b, 0xd6, 0x59, 0x62, 0x7a, 0xde, 0x6e, +}; +static const unsigned char kat4254_retbits[] = { + 0x7f, 0x59, 0xf2, 0x50, 0xd3, 0xac, 0xcb, 0x4c, 0x46, 0xcd, 0x60, 0xa8, + 0x4c, 0xc4, 0xd7, 0x93, 0x91, 0x26, 0x48, 0x80, 0xa9, 0xa1, 0x7a, 0xa5, + 0x4c, 0xd1, 0xaf, 0x2a, 0x68, 0xb1, 0xde, 0xcf, 0x83, 0xfd, 0x61, 0x9c, + 0x4f, 0x39, 0x28, 0x58, 0x54, 0xbe, 0x3e, 0x00, 0x0c, 0xba, 0x4a, 0x92, + 0xa3, 0x8a, 0x8f, 0x58, 0x13, 0x01, 0x13, 0x7a, 0xae, 0x05, 0x63, 0x0f, + 0x20, 0xbc, 0x71, 0xa4, +}; +static const struct drbg_kat_pr_true kat4254_t = { + 8, kat4254_entropyin, kat4254_nonce, kat4254_persstr, + kat4254_entropyinpr1, kat4254_addinpr1, kat4254_entropyinpr2, + kat4254_addinpr2, kat4254_retbits +}; +static const struct drbg_kat kat4254 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4254_t +}; + +static const unsigned char kat4255_entropyin[] = { + 0xb3, 0xb1, 0xcb, 0x22, 0x84, 0x29, 0x43, 0x62, 0xd2, 0xf8, 0xcf, 0x7e, + 0xe1, 0xc0, 0x72, 0x87, 0x6d, 0x7b, 0x94, 0x1d, 0xb3, 0xb6, 0xe1, 0x51, + 0xc7, 0x2c, 0x11, 0xc2, 0x5a, 0xa6, 0xc0, 0x6b, 0xe8, 0x3a, 0x38, 0x67, + 0xe9, 0xa5, 0x0e, 0xe7, 0xff, 0x5e, 0x71, 0x76, 0xe7, 0xd2, 0x4e, 0x3c, +}; +static const unsigned char kat4255_nonce[] = {0}; +static const unsigned char kat4255_persstr[] = { + 0xa7, 0x9d, 0x06, 0x7f, 0xea, 0xcd, 0x6c, 0xb7, 0x4d, 0x1f, 0x13, 0x3d, + 0xbb, 0x6b, 0xfb, 0xea, 0x38, 0x2b, 0x1e, 0x02, 0xe8, 0x35, 0xe1, 0xf3, + 0x95, 0x3b, 0x3d, 0x2c, 0x28, 0xb4, 0x87, 0x41, 0x68, 0x26, 0x82, 0xbe, + 0x0a, 0x66, 0x4b, 0x9c, 0x3b, 0x6f, 0xef, 0x8a, 0x61, 0x95, 0x79, 0xb8, +}; +static const unsigned char kat4255_entropyinpr1[] = { + 0x76, 0x12, 0x41, 0x75, 0x0b, 0xa9, 0xa8, 0xcf, 0xa8, 0x32, 0x8f, 0x02, + 0xec, 0x32, 0xab, 0x02, 0x5a, 0x97, 0x47, 0x8d, 0xb9, 0x95, 0xf8, 0x42, + 0x7e, 0x44, 0xfd, 0xb7, 0x32, 0x26, 0xa7, 0x05, 0x7b, 0xdd, 0x36, 0x33, + 0x25, 0xce, 0xd3, 0x77, 0x05, 0x74, 0xbd, 0x45, 0x63, 0xf1, 0x76, 0x48, +}; +static const unsigned char kat4255_addinpr1[] = { + 0xe4, 0x4d, 0xfd, 0xad, 0x93, 0xc9, 0xc5, 0x92, 0x50, 0x42, 0xbc, 0x5c, + 0xfb, 0xcb, 0x61, 0x85, 0x41, 0x25, 0x23, 0x84, 0xa3, 0x97, 0x31, 0x20, + 0x27, 0x74, 0xe7, 0x5e, 0xfc, 0x6d, 0x7f, 0x43, 0xfe, 0x54, 0xb4, 0x51, + 0x76, 0x8b, 0xf9, 0x84, 0xbb, 0xd1, 0xad, 0x7c, 0x05, 0x94, 0xa0, 0xec, +}; +static const unsigned char kat4255_entropyinpr2[] = { + 0x62, 0x3e, 0x95, 0x1b, 0x84, 0x05, 0xaa, 0xf8, 0xb7, 0x68, 0x67, 0x89, + 0xe0, 0x13, 0x47, 0x2d, 0x60, 0x93, 0xe8, 0x2f, 0xc3, 0xcc, 0x92, 0x0d, + 0x60, 0x38, 0x64, 0xad, 0x49, 0x0f, 0x07, 0x1b, 0x6a, 0x69, 0x37, 0x5c, + 0xcb, 0x77, 0x12, 0x91, 0x45, 0x82, 0x59, 0x10, 0x88, 0x09, 0xe5, 0xbd, +}; +static const unsigned char kat4255_addinpr2[] = { + 0x4c, 0xbf, 0x9e, 0xcb, 0x04, 0x0d, 0x0d, 0x82, 0x21, 0xf5, 0x6e, 0x9a, + 0xbf, 0x62, 0x3c, 0x02, 0x2c, 0xea, 0xde, 0xd7, 0x2f, 0x20, 0x16, 0x48, + 0x45, 0x53, 0x06, 0x8f, 0x84, 0x22, 0xda, 0xed, 0x37, 0x37, 0x31, 0x0d, + 0x95, 0x1d, 0x9c, 0x24, 0x08, 0x00, 0xa3, 0x6f, 0x91, 0xac, 0xc5, 0x37, +}; +static const unsigned char kat4255_retbits[] = { + 0xf0, 0x8f, 0x1c, 0xe1, 0x9e, 0xc5, 0x76, 0x2b, 0x4f, 0xf4, 0x05, 0x8d, + 0xf7, 0x01, 0x6b, 0xd8, 0x9c, 0x6f, 0x08, 0x82, 0x10, 0x32, 0x7b, 0x19, + 0x48, 0xf7, 0x9b, 0x24, 0x53, 0x98, 0x1c, 0x17, 0x59, 0xd7, 0xc3, 0x70, + 0xf2, 0xf6, 0x24, 0x74, 0x71, 0x1f, 0xf4, 0xef, 0x95, 0x37, 0x67, 0x2e, + 0x99, 0x97, 0x9c, 0x78, 0xb1, 0xe5, 0x79, 0xa5, 0x0b, 0x0e, 0x71, 0x97, + 0x24, 0xce, 0x83, 0xc2, +}; +static const struct drbg_kat_pr_true kat4255_t = { + 9, kat4255_entropyin, kat4255_nonce, kat4255_persstr, + kat4255_entropyinpr1, kat4255_addinpr1, kat4255_entropyinpr2, + kat4255_addinpr2, kat4255_retbits +}; +static const struct drbg_kat kat4255 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4255_t +}; + +static const unsigned char kat4256_entropyin[] = { + 0x4e, 0xca, 0xda, 0xb4, 0x00, 0x09, 0x61, 0xd1, 0x49, 0x00, 0x13, 0x75, + 0x56, 0x98, 0x2a, 0x81, 0xd4, 0x70, 0x89, 0x72, 0x13, 0xa6, 0xd8, 0xaf, + 0x1f, 0xf9, 0x2e, 0x47, 0xc9, 0xf0, 0xcd, 0x10, 0xdd, 0x56, 0x8f, 0x86, + 0x5b, 0x08, 0xbb, 0x89, 0x6b, 0x80, 0xa9, 0x14, 0x51, 0x21, 0xab, 0xf9, +}; +static const unsigned char kat4256_nonce[] = {0}; +static const unsigned char kat4256_persstr[] = { + 0x00, 0x13, 0xe6, 0x9a, 0xc5, 0x47, 0x8f, 0xc9, 0x27, 0x79, 0x5f, 0xb7, + 0x0f, 0x8d, 0x60, 0x00, 0xaf, 0xed, 0x4a, 0x0e, 0x4d, 0x2d, 0x82, 0x6a, + 0x37, 0x15, 0x99, 0x0e, 0x3a, 0xb4, 0xad, 0x2b, 0xef, 0xb4, 0x42, 0x5f, + 0x57, 0xef, 0xf8, 0x21, 0x94, 0xfc, 0xe6, 0x5a, 0xbd, 0x6d, 0x6c, 0x1a, +}; +static const unsigned char kat4256_entropyinpr1[] = { + 0x3b, 0x50, 0x6d, 0x96, 0xf8, 0x0e, 0xca, 0xd2, 0xee, 0x86, 0xf9, 0xf3, + 0x99, 0x08, 0x31, 0xe4, 0x0b, 0xfa, 0x57, 0x53, 0xc9, 0x12, 0x5c, 0x6a, + 0xbe, 0x36, 0xce, 0x53, 0x44, 0x9e, 0xe3, 0xb1, 0x91, 0x3d, 0xf1, 0x61, + 0x20, 0x56, 0x04, 0x2a, 0x30, 0x4b, 0xf7, 0x32, 0xb9, 0x76, 0x80, 0x80, +}; +static const unsigned char kat4256_addinpr1[] = { + 0xab, 0x03, 0x93, 0x17, 0x6f, 0xb0, 0x12, 0x8e, 0x6d, 0xf6, 0x30, 0x8d, + 0x81, 0x7b, 0x0c, 0x00, 0x7a, 0x95, 0xb4, 0xb8, 0xc8, 0x27, 0x19, 0xef, + 0x75, 0x14, 0xc6, 0x1e, 0x4c, 0x22, 0x2b, 0x36, 0xef, 0x80, 0xfc, 0xf0, + 0xb5, 0x2a, 0x71, 0x10, 0xcb, 0x9c, 0xe1, 0x8d, 0x8a, 0x75, 0x72, 0xab, +}; +static const unsigned char kat4256_entropyinpr2[] = { + 0xbe, 0x5d, 0x50, 0xe0, 0xdb, 0x9a, 0x34, 0x3c, 0x2d, 0xed, 0xbc, 0x55, + 0xb4, 0x3e, 0x29, 0xb8, 0x98, 0xcf, 0x7e, 0xf6, 0x04, 0x41, 0xc9, 0x9a, + 0x06, 0x63, 0x46, 0x67, 0xb6, 0x81, 0x04, 0x90, 0x0c, 0x3a, 0x99, 0xa1, + 0xdc, 0x67, 0x0f, 0x71, 0xa4, 0x65, 0xe7, 0xb7, 0x16, 0xec, 0xa4, 0x3e, +}; +static const unsigned char kat4256_addinpr2[] = { + 0x52, 0x93, 0x4c, 0xe7, 0xb5, 0x9c, 0x85, 0xee, 0xc9, 0x8d, 0x80, 0x46, + 0x28, 0x6a, 0x75, 0x4a, 0x7e, 0x8b, 0xb1, 0x82, 0xd1, 0xbe, 0xc3, 0xb2, + 0x95, 0x8c, 0xa6, 0x92, 0xa6, 0x0e, 0xe9, 0x24, 0xbe, 0xa0, 0xd7, 0x76, + 0x37, 0x95, 0x08, 0xf2, 0x00, 0x5a, 0xfe, 0xc9, 0x46, 0x8a, 0x8c, 0x7d, +}; +static const unsigned char kat4256_retbits[] = { + 0x4f, 0xf5, 0x00, 0x7e, 0x85, 0x9d, 0xe9, 0x22, 0x68, 0xbc, 0x2d, 0xc6, + 0x8f, 0x77, 0x88, 0x7d, 0x4d, 0xc5, 0x4c, 0x7b, 0x28, 0xf5, 0x30, 0x8f, + 0xfa, 0xac, 0x55, 0x3c, 0x57, 0xde, 0x5f, 0x28, 0x98, 0xee, 0xe3, 0x69, + 0x6d, 0x30, 0x04, 0x4d, 0xc1, 0x93, 0x18, 0x32, 0xbd, 0xf3, 0x59, 0x61, + 0xbd, 0xec, 0x10, 0x0b, 0xc9, 0x90, 0x9b, 0x43, 0x24, 0xca, 0x81, 0x39, + 0x8f, 0xef, 0x04, 0xad, +}; +static const struct drbg_kat_pr_true kat4256_t = { + 10, kat4256_entropyin, kat4256_nonce, kat4256_persstr, + kat4256_entropyinpr1, kat4256_addinpr1, kat4256_entropyinpr2, + kat4256_addinpr2, kat4256_retbits +}; +static const struct drbg_kat kat4256 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4256_t +}; + +static const unsigned char kat4257_entropyin[] = { + 0xdb, 0xa3, 0x6d, 0x56, 0xec, 0x5a, 0x52, 0x9d, 0x11, 0x47, 0x6f, 0x0a, + 0x01, 0x19, 0x36, 0x8e, 0xb0, 0x5a, 0x76, 0xe4, 0x09, 0x62, 0xde, 0x67, + 0x97, 0x3a, 0x63, 0x7b, 0xc4, 0xc4, 0xb7, 0xd2, 0x8e, 0x24, 0x3a, 0x10, + 0xca, 0xd6, 0x68, 0x45, 0x81, 0x89, 0xe1, 0x2f, 0xe8, 0xe8, 0xf4, 0xc6, +}; +static const unsigned char kat4257_nonce[] = {0}; +static const unsigned char kat4257_persstr[] = { + 0x45, 0xa8, 0xc6, 0x3d, 0xe2, 0x63, 0xf6, 0x49, 0x8c, 0x54, 0x4a, 0x43, + 0x63, 0xc5, 0x71, 0x8d, 0xbb, 0x06, 0xc4, 0x97, 0xd1, 0x53, 0x7b, 0x26, + 0x4f, 0xd1, 0xaf, 0x48, 0x3d, 0xa0, 0xcc, 0xd5, 0x5a, 0x4e, 0x9f, 0x54, + 0x28, 0x89, 0xa3, 0x46, 0x83, 0x57, 0x7a, 0xb9, 0x3a, 0x2a, 0x69, 0x43, +}; +static const unsigned char kat4257_entropyinpr1[] = { + 0xa8, 0xec, 0x5c, 0xdc, 0xa0, 0x1e, 0x66, 0x50, 0xfd, 0xe4, 0x07, 0x63, + 0xf7, 0x0c, 0xfe, 0x73, 0x64, 0x7d, 0x47, 0x08, 0xbb, 0x33, 0xe1, 0xb1, + 0xad, 0x0f, 0x9c, 0xf6, 0x26, 0x10, 0x5f, 0xe4, 0x5c, 0xd7, 0xa5, 0xeb, + 0x9e, 0x15, 0x7d, 0x83, 0xb1, 0xcd, 0x77, 0x69, 0x49, 0x32, 0x96, 0x88, +}; +static const unsigned char kat4257_addinpr1[] = { + 0xcf, 0x61, 0xf9, 0x16, 0x7d, 0x15, 0x2b, 0xe5, 0xff, 0x20, 0x5f, 0x24, + 0xc7, 0x34, 0xc5, 0xab, 0x2b, 0x12, 0x20, 0xe6, 0x34, 0x4c, 0x98, 0xcf, + 0xaf, 0x70, 0x69, 0xd2, 0x95, 0x44, 0x51, 0xe7, 0x27, 0xad, 0x50, 0x45, + 0x08, 0x06, 0x12, 0x24, 0x8e, 0x3e, 0x7d, 0x4b, 0xac, 0x69, 0x66, 0x88, +}; +static const unsigned char kat4257_entropyinpr2[] = { + 0x1f, 0xba, 0x4d, 0xe2, 0xc0, 0xe8, 0xa2, 0x87, 0x00, 0xd1, 0xf8, 0xb0, + 0x33, 0x3e, 0x36, 0xa6, 0x2c, 0x21, 0xe9, 0x17, 0x07, 0x3a, 0x7a, 0xde, + 0x4b, 0x6b, 0xf0, 0xf5, 0x19, 0x22, 0x66, 0x24, 0x11, 0xd4, 0x72, 0xf9, + 0x45, 0x5f, 0x49, 0x33, 0xa5, 0x63, 0xb2, 0x1c, 0x24, 0x17, 0xc1, 0x1b, +}; +static const unsigned char kat4257_addinpr2[] = { + 0x30, 0xc3, 0xd6, 0x49, 0xb5, 0x61, 0x7f, 0x02, 0xe7, 0xc4, 0xc0, 0xf5, + 0x5e, 0x4a, 0x78, 0xd0, 0xc4, 0x63, 0xab, 0x50, 0x46, 0x6d, 0x82, 0x09, + 0x0e, 0x35, 0xa7, 0xbf, 0x42, 0x12, 0xc7, 0x27, 0xfb, 0xda, 0xa8, 0xdd, + 0xa8, 0xbe, 0x6a, 0x7a, 0x81, 0x7e, 0x52, 0x99, 0xd4, 0x42, 0x62, 0x55, +}; +static const unsigned char kat4257_retbits[] = { + 0x5e, 0xb9, 0x15, 0x38, 0x5c, 0x99, 0x65, 0x4a, 0x2c, 0x53, 0x76, 0x8f, + 0x1e, 0xfc, 0x76, 0xa2, 0x97, 0x42, 0x2b, 0x42, 0x53, 0x7e, 0xd9, 0x7d, + 0x08, 0xd4, 0x74, 0x24, 0x0a, 0xcd, 0xa2, 0xa8, 0xf5, 0x96, 0x8c, 0x25, + 0xee, 0xb2, 0x98, 0xa7, 0xc2, 0xf8, 0xe7, 0xe6, 0xc2, 0xa9, 0x8e, 0x56, + 0x08, 0x3c, 0xff, 0xf4, 0x5e, 0x40, 0x17, 0xe0, 0xae, 0xd7, 0x4d, 0x19, + 0x9b, 0x9f, 0x30, 0x4c, +}; +static const struct drbg_kat_pr_true kat4257_t = { + 11, kat4257_entropyin, kat4257_nonce, kat4257_persstr, + kat4257_entropyinpr1, kat4257_addinpr1, kat4257_entropyinpr2, + kat4257_addinpr2, kat4257_retbits +}; +static const struct drbg_kat kat4257 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4257_t +}; + +static const unsigned char kat4258_entropyin[] = { + 0x11, 0xe9, 0x7d, 0x87, 0xae, 0x28, 0xa7, 0xf2, 0xa8, 0xd3, 0xc0, 0xc6, + 0xe7, 0x24, 0xab, 0x96, 0x4b, 0xfc, 0x7d, 0x4b, 0x57, 0x8f, 0xcd, 0x69, + 0xc7, 0xb3, 0xd6, 0x63, 0x16, 0x4c, 0x56, 0x83, 0xf6, 0xc2, 0xb5, 0xa5, + 0xf4, 0x6e, 0x43, 0x9f, 0x74, 0x71, 0x08, 0xc6, 0x75, 0xdc, 0xdc, 0x86, +}; +static const unsigned char kat4258_nonce[] = {0}; +static const unsigned char kat4258_persstr[] = { + 0x7f, 0x81, 0x64, 0x90, 0x39, 0x61, 0x31, 0xc8, 0x17, 0x12, 0xa3, 0x21, + 0x35, 0xfc, 0x59, 0xa9, 0xa8, 0x60, 0x24, 0xb6, 0x36, 0x68, 0xaa, 0x13, + 0x98, 0xeb, 0x29, 0xb0, 0xdc, 0x0e, 0xfe, 0x4d, 0x46, 0xaf, 0xf0, 0x21, + 0xab, 0x38, 0x66, 0x4f, 0x79, 0x71, 0xef, 0xc5, 0xa6, 0x08, 0x00, 0x5d, +}; +static const unsigned char kat4258_entropyinpr1[] = { + 0x90, 0x42, 0xec, 0xb8, 0x6d, 0x46, 0x7d, 0xbb, 0x96, 0xac, 0xbf, 0xdb, + 0x76, 0x84, 0x0d, 0x5d, 0x86, 0x85, 0x15, 0x8d, 0xc8, 0xd1, 0x80, 0x96, + 0x84, 0x9c, 0x30, 0x1a, 0x9c, 0x8c, 0xbb, 0xbb, 0x94, 0xdc, 0x3d, 0x87, + 0x13, 0xe2, 0x0e, 0x4c, 0xbd, 0x7c, 0xbd, 0x48, 0xb0, 0x44, 0xa5, 0xc9, +}; +static const unsigned char kat4258_addinpr1[] = { + 0x9e, 0x2d, 0x5b, 0x7a, 0xf1, 0x7f, 0xd6, 0xa1, 0x1e, 0x91, 0x97, 0x8b, + 0xed, 0x43, 0x38, 0x01, 0x68, 0xb3, 0x48, 0x1f, 0x2f, 0x3c, 0x5f, 0x95, + 0x15, 0x4f, 0xd1, 0x36, 0xcd, 0x4c, 0x14, 0xce, 0x48, 0x53, 0xc3, 0xfa, + 0xea, 0x9f, 0xbc, 0xf8, 0x9e, 0x67, 0x38, 0x29, 0x62, 0xf9, 0xb2, 0x1b, +}; +static const unsigned char kat4258_entropyinpr2[] = { + 0x73, 0xf3, 0xc8, 0xa1, 0x1c, 0xf2, 0x2f, 0x9e, 0xc3, 0x97, 0x96, 0xa8, + 0xb0, 0xdd, 0xc2, 0xdf, 0x70, 0x87, 0x46, 0x8b, 0xce, 0x2a, 0x59, 0x6d, + 0xd8, 0x5a, 0xa9, 0x49, 0x9c, 0x49, 0x59, 0x96, 0x45, 0xe0, 0xfe, 0x96, + 0x9c, 0xde, 0xdf, 0x92, 0x61, 0x92, 0x11, 0xd5, 0xac, 0xe5, 0x54, 0xf6, +}; +static const unsigned char kat4258_addinpr2[] = { + 0x5c, 0x9b, 0x36, 0x52, 0x5a, 0xcc, 0xba, 0xb8, 0x74, 0x16, 0x36, 0xb4, + 0x2e, 0x53, 0xf5, 0xb3, 0xff, 0xcc, 0x01, 0x5c, 0x90, 0x5b, 0x90, 0x10, + 0xd0, 0x32, 0x87, 0x38, 0x9d, 0x3b, 0x1a, 0x44, 0xac, 0xfb, 0x1c, 0x43, + 0xf2, 0x45, 0xb0, 0x77, 0x98, 0xfa, 0xe3, 0x3d, 0xc0, 0x95, 0x92, 0x15, +}; +static const unsigned char kat4258_retbits[] = { + 0x9b, 0x33, 0x32, 0xb2, 0x6d, 0x4b, 0x66, 0xaa, 0xbf, 0x78, 0x3c, 0xc4, + 0x64, 0xe1, 0x0f, 0x17, 0xee, 0xd0, 0x0e, 0x10, 0xfb, 0x2f, 0xf4, 0xe0, + 0x06, 0x78, 0x45, 0x17, 0xba, 0x6f, 0x36, 0x6f, 0x3a, 0xb3, 0x62, 0xb4, + 0x6a, 0x07, 0xe9, 0xa0, 0x1a, 0x91, 0x38, 0xc0, 0xd7, 0x30, 0xa4, 0x87, + 0x29, 0x2e, 0x67, 0xe2, 0xd6, 0x33, 0x60, 0xd3, 0xc4, 0x92, 0xcc, 0x2b, + 0x2b, 0x9e, 0xf3, 0xed, +}; +static const struct drbg_kat_pr_true kat4258_t = { + 12, kat4258_entropyin, kat4258_nonce, kat4258_persstr, + kat4258_entropyinpr1, kat4258_addinpr1, kat4258_entropyinpr2, + kat4258_addinpr2, kat4258_retbits +}; +static const struct drbg_kat kat4258 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4258_t +}; + +static const unsigned char kat4259_entropyin[] = { + 0xde, 0x5f, 0x34, 0x29, 0xbb, 0x76, 0xfc, 0x13, 0x31, 0x8b, 0xc8, 0x3e, + 0xd5, 0x36, 0xf4, 0xa1, 0x4f, 0x1e, 0x01, 0x06, 0x98, 0x94, 0x72, 0xde, + 0x31, 0xe9, 0xaa, 0x23, 0x42, 0x95, 0x88, 0xd8, 0xf5, 0x14, 0x8c, 0xe5, + 0x4e, 0x55, 0xac, 0x09, 0xd2, 0xbc, 0x3f, 0x3b, 0xd3, 0xed, 0x19, 0xcc, +}; +static const unsigned char kat4259_nonce[] = {0}; +static const unsigned char kat4259_persstr[] = { + 0xaa, 0x57, 0x81, 0x2b, 0x40, 0x98, 0xd1, 0x0b, 0xfa, 0x1f, 0xe1, 0x6b, + 0x1d, 0x4e, 0xdf, 0xd8, 0x13, 0x3e, 0xca, 0xf2, 0x2d, 0xcc, 0x01, 0xb0, + 0xa0, 0x9e, 0x82, 0x78, 0xa4, 0xd4, 0xba, 0x58, 0xe5, 0x85, 0xbd, 0x0c, + 0xfe, 0x38, 0xe8, 0x58, 0x4d, 0xd1, 0x9c, 0x26, 0xa6, 0x5e, 0xc7, 0x2b, +}; +static const unsigned char kat4259_entropyinpr1[] = { + 0x96, 0xa8, 0x9d, 0x66, 0x68, 0xc3, 0xde, 0xf5, 0x03, 0xc9, 0x53, 0xdf, + 0x3d, 0x00, 0x72, 0x9c, 0xd0, 0xde, 0xc2, 0x19, 0x1c, 0x6a, 0x2d, 0x19, + 0xd9, 0x42, 0x0b, 0x00, 0x1e, 0xa4, 0x02, 0x5a, 0xee, 0xce, 0x04, 0xc8, + 0x94, 0x49, 0x7a, 0x6d, 0x5c, 0x16, 0x90, 0x2e, 0xa8, 0x04, 0x24, 0x58, +}; +static const unsigned char kat4259_addinpr1[] = { + 0x62, 0x79, 0xcd, 0x1c, 0xe9, 0x4b, 0x50, 0x14, 0x60, 0x41, 0x01, 0x99, + 0x89, 0x84, 0x7e, 0x00, 0xe1, 0x12, 0xfe, 0xcc, 0x33, 0x49, 0x59, 0x37, + 0x95, 0x69, 0x9c, 0x92, 0xf5, 0x70, 0xe5, 0xa8, 0xd5, 0xd6, 0x4e, 0xfb, + 0x28, 0x66, 0xd4, 0x90, 0xca, 0x15, 0xa9, 0xdd, 0x25, 0xf4, 0x5a, 0x56, +}; +static const unsigned char kat4259_entropyinpr2[] = { + 0x27, 0x18, 0xd5, 0x9d, 0x95, 0x73, 0x93, 0xa6, 0x10, 0xef, 0x7a, 0x9f, + 0x56, 0x4b, 0x59, 0xbe, 0x12, 0x81, 0xb7, 0x32, 0x59, 0x07, 0xc0, 0x57, + 0x4f, 0x19, 0x32, 0x4d, 0x61, 0xcd, 0x68, 0x7a, 0x50, 0xdc, 0x16, 0x58, + 0xde, 0xbd, 0xca, 0x37, 0xcd, 0x76, 0xd4, 0x90, 0xa4, 0x31, 0xae, 0x95, +}; +static const unsigned char kat4259_addinpr2[] = { + 0x48, 0x6e, 0x84, 0x91, 0xbe, 0xad, 0x78, 0x40, 0x50, 0x40, 0x43, 0xd4, + 0xcb, 0x6c, 0xd6, 0x7a, 0x46, 0xaf, 0x40, 0xf4, 0x02, 0x43, 0xa5, 0xef, + 0x10, 0x30, 0xb3, 0x5e, 0x98, 0xc8, 0xe4, 0x70, 0xf6, 0xc2, 0x21, 0x34, + 0x43, 0xbf, 0xbe, 0xc2, 0xc2, 0x22, 0x96, 0xa5, 0xb4, 0x4d, 0x9a, 0xb2, +}; +static const unsigned char kat4259_retbits[] = { + 0xe3, 0xaa, 0x10, 0xd0, 0x85, 0xd6, 0xc9, 0x10, 0xc1, 0x77, 0xfb, 0x22, + 0xba, 0x5e, 0x49, 0xc3, 0xa5, 0xf1, 0x74, 0xb5, 0x6f, 0x07, 0xdf, 0xa5, + 0x8f, 0xd3, 0x15, 0x06, 0x71, 0x85, 0xb5, 0xbe, 0x37, 0xff, 0xbc, 0x2d, + 0x99, 0x3d, 0x39, 0xbc, 0xb2, 0x28, 0xf1, 0x1f, 0x5d, 0xd6, 0x3d, 0x8a, + 0xb9, 0x72, 0x17, 0x44, 0xd9, 0x47, 0x46, 0x93, 0xbd, 0x9b, 0x51, 0x78, + 0x9e, 0xbe, 0x4f, 0x89, +}; +static const struct drbg_kat_pr_true kat4259_t = { + 13, kat4259_entropyin, kat4259_nonce, kat4259_persstr, + kat4259_entropyinpr1, kat4259_addinpr1, kat4259_entropyinpr2, + kat4259_addinpr2, kat4259_retbits +}; +static const struct drbg_kat kat4259 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4259_t +}; + +static const unsigned char kat4260_entropyin[] = { + 0x93, 0x15, 0x15, 0x56, 0x64, 0x07, 0x5b, 0x4b, 0xcf, 0xfe, 0x5d, 0x89, + 0x70, 0xc6, 0xe8, 0xe8, 0xb3, 0xbc, 0x5c, 0x7f, 0xea, 0xfa, 0x7c, 0xc8, + 0x28, 0xa6, 0x85, 0xad, 0x56, 0xcf, 0xc0, 0xd9, 0xad, 0xa0, 0x5e, 0x12, + 0xab, 0x67, 0x69, 0x5b, 0xf2, 0x7f, 0xba, 0x3c, 0xd7, 0xe2, 0xcc, 0x00, +}; +static const unsigned char kat4260_nonce[] = {0}; +static const unsigned char kat4260_persstr[] = { + 0xa6, 0x91, 0xc1, 0x2c, 0xc3, 0x22, 0xe2, 0xc5, 0x3f, 0xfc, 0xd3, 0x2c, + 0x8b, 0x1b, 0xba, 0xa5, 0x43, 0xa8, 0xe6, 0xf9, 0x7b, 0x90, 0xa4, 0x5c, + 0xf7, 0xd7, 0x43, 0xd2, 0x9e, 0xd7, 0xa5, 0x3a, 0xd2, 0x09, 0xe0, 0xf2, + 0x2a, 0xd8, 0xa8, 0x6a, 0x8f, 0xb5, 0x9f, 0x6d, 0xf2, 0x42, 0xae, 0xa6, +}; +static const unsigned char kat4260_entropyinpr1[] = { + 0xca, 0xc1, 0xbd, 0x62, 0xb1, 0xb7, 0x81, 0x02, 0xc1, 0xcd, 0xab, 0x6d, + 0xb5, 0xbd, 0x31, 0xbc, 0x6f, 0x91, 0x3d, 0x7a, 0x91, 0xb0, 0x2d, 0x41, + 0xa8, 0xa0, 0xfe, 0xa4, 0x8c, 0xe2, 0x8c, 0xcf, 0xdd, 0x40, 0x18, 0x13, + 0x02, 0xe7, 0x99, 0x84, 0x35, 0x65, 0x0b, 0x3f, 0x04, 0x3d, 0xf6, 0xa1, +}; +static const unsigned char kat4260_addinpr1[] = { + 0x55, 0x55, 0x45, 0x79, 0x8c, 0xd0, 0x76, 0x45, 0xe7, 0x47, 0x0d, 0x4a, + 0x8d, 0x43, 0xcf, 0xbd, 0x32, 0x28, 0x88, 0x52, 0x32, 0x9a, 0xf2, 0xc7, + 0x6f, 0x2a, 0x7d, 0x2f, 0xd5, 0x3c, 0xc6, 0x3e, 0x43, 0x44, 0xe8, 0x0d, + 0x54, 0x91, 0x7f, 0x4e, 0x9a, 0x4c, 0xd2, 0x1e, 0x60, 0x07, 0x4e, 0x9a, +}; +static const unsigned char kat4260_entropyinpr2[] = { + 0xa5, 0x2c, 0x99, 0xa1, 0x2f, 0x63, 0xc6, 0xae, 0x4b, 0xc1, 0x01, 0xff, + 0x22, 0x1d, 0x7f, 0xd1, 0xb4, 0xdd, 0x79, 0xdf, 0x76, 0xe3, 0x89, 0x92, + 0xba, 0x3f, 0xdf, 0x38, 0x0b, 0xdb, 0xad, 0x5e, 0x6a, 0xa1, 0x5d, 0x0a, + 0xb6, 0x38, 0xe9, 0x08, 0x74, 0xd8, 0x1b, 0xdb, 0x2e, 0x98, 0x3a, 0xba, +}; +static const unsigned char kat4260_addinpr2[] = { + 0xc0, 0xe1, 0x6d, 0x4f, 0xc8, 0x5c, 0xfb, 0x1c, 0x3a, 0x4f, 0x69, 0x80, + 0x60, 0x41, 0xc5, 0xa2, 0x70, 0xd4, 0xaf, 0x74, 0x22, 0x92, 0xdc, 0xeb, + 0xec, 0xcb, 0xa7, 0x5e, 0x1b, 0xa0, 0xbf, 0x74, 0x9c, 0x5e, 0xa6, 0xbc, + 0xcf, 0xbe, 0x0e, 0xdd, 0xc8, 0x39, 0xfa, 0xef, 0xdd, 0xd5, 0x46, 0x3d, +}; +static const unsigned char kat4260_retbits[] = { + 0xe7, 0x28, 0x95, 0x7b, 0x29, 0x25, 0x65, 0xf9, 0x06, 0xde, 0x0c, 0xee, + 0x5b, 0xf9, 0x1f, 0xbe, 0x2e, 0x18, 0x98, 0x57, 0xca, 0x5d, 0x5e, 0xfe, + 0xfb, 0x59, 0x53, 0xa8, 0xe9, 0xf4, 0x66, 0x30, 0x75, 0x6e, 0xa0, 0x1a, + 0xbf, 0x8e, 0x6f, 0xc4, 0x99, 0xbc, 0x8e, 0x2e, 0x5c, 0x29, 0xc6, 0x26, + 0x69, 0xbc, 0x07, 0xcc, 0xfb, 0xdc, 0x79, 0x51, 0x21, 0x5f, 0x8b, 0xa7, + 0xf1, 0xbc, 0x81, 0x5e, +}; +static const struct drbg_kat_pr_true kat4260_t = { + 14, kat4260_entropyin, kat4260_nonce, kat4260_persstr, + kat4260_entropyinpr1, kat4260_addinpr1, kat4260_entropyinpr2, + kat4260_addinpr2, kat4260_retbits +}; +static const struct drbg_kat kat4260 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4260_t +}; + +static const unsigned char kat4261_entropyin[] = { + 0xd9, 0x59, 0x55, 0x48, 0x7e, 0x78, 0x81, 0xb8, 0xaa, 0x88, 0xfe, 0xa0, + 0xe1, 0x10, 0x55, 0xfc, 0xbb, 0xf0, 0x3f, 0x6a, 0xdc, 0xd9, 0x3d, 0x42, + 0x4d, 0x68, 0xcc, 0x43, 0x01, 0xfb, 0x38, 0x7f, 0x14, 0xb8, 0x80, 0x60, + 0x52, 0xc1, 0x9a, 0x6f, 0x33, 0xc0, 0x60, 0x22, 0x7b, 0x96, 0xf9, 0x55, +}; +static const unsigned char kat4261_nonce[] = {0}; +static const unsigned char kat4261_persstr[] = {0}; +static const unsigned char kat4261_entropyinpr1[] = { + 0xf4, 0xeb, 0x95, 0x57, 0x99, 0x1d, 0x97, 0x9c, 0x85, 0x98, 0xda, 0xd1, + 0x19, 0xf7, 0x29, 0x7a, 0x1a, 0x05, 0xe6, 0x3b, 0x0c, 0x30, 0x98, 0x7a, + 0x5b, 0x59, 0xc4, 0x3d, 0x2e, 0x51, 0xbf, 0xbe, 0xb2, 0x5a, 0x02, 0xff, + 0x77, 0x6e, 0xce, 0x92, 0x70, 0x93, 0x0a, 0xc6, 0x1c, 0x81, 0xb2, 0xdc, +}; +static const unsigned char kat4261_addinpr1[] = {0}; +static const unsigned char kat4261_entropyinpr2[] = { + 0x33, 0x2d, 0xe5, 0x8b, 0x15, 0x83, 0x75, 0x74, 0x24, 0x2c, 0x4e, 0x63, + 0x99, 0x17, 0x92, 0xf0, 0x05, 0x30, 0x7d, 0x5e, 0xf6, 0x37, 0x67, 0x0e, + 0x23, 0x00, 0x73, 0x5f, 0x8c, 0xe6, 0x2f, 0x0a, 0x2e, 0x8c, 0x4c, 0xea, + 0x2d, 0xf0, 0x58, 0x8f, 0x7c, 0x35, 0x7c, 0x3b, 0x7f, 0x24, 0xc2, 0xc2, +}; +static const unsigned char kat4261_addinpr2[] = {0}; +static const unsigned char kat4261_retbits[] = { + 0x27, 0x48, 0x7a, 0x3d, 0x3d, 0x6e, 0x93, 0x0f, 0xeb, 0x0b, 0x33, 0x83, + 0x2d, 0xdb, 0x49, 0x14, 0x68, 0x52, 0xfa, 0x41, 0xfd, 0xba, 0x4b, 0x56, + 0x2b, 0xe9, 0x9b, 0xa4, 0xf2, 0x67, 0xf5, 0xcf, 0x9e, 0x47, 0x97, 0x8f, + 0x05, 0x19, 0xce, 0xf6, 0x99, 0x89, 0xc2, 0xef, 0x52, 0x2b, 0x5e, 0xc6, + 0xa7, 0x59, 0x1d, 0xb7, 0x6e, 0xf5, 0xfb, 0x22, 0x00, 0x80, 0xa1, 0xc1, + 0xd6, 0x35, 0x2e, 0xf1, +}; +static const struct drbg_kat_pr_true kat4261_t = { + 0, kat4261_entropyin, kat4261_nonce, kat4261_persstr, + kat4261_entropyinpr1, kat4261_addinpr1, kat4261_entropyinpr2, + kat4261_addinpr2, kat4261_retbits +}; +static const struct drbg_kat kat4261 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4261_t +}; + +static const unsigned char kat4262_entropyin[] = { + 0x3c, 0x5e, 0xd0, 0xd2, 0x4d, 0xfe, 0x7f, 0x93, 0x77, 0x5a, 0x0c, 0x86, + 0x16, 0x8f, 0xbe, 0x95, 0xe4, 0x30, 0xf0, 0x58, 0xf3, 0x9e, 0xac, 0x98, + 0x2e, 0x26, 0x74, 0xca, 0x1c, 0xb2, 0x9a, 0x59, 0xac, 0xbe, 0x7e, 0xff, + 0x55, 0x40, 0x37, 0x52, 0x30, 0x4e, 0xbf, 0x24, 0xcd, 0x9d, 0x79, 0x9b, +}; +static const unsigned char kat4262_nonce[] = {0}; +static const unsigned char kat4262_persstr[] = {0}; +static const unsigned char kat4262_entropyinpr1[] = { + 0x0c, 0xb1, 0x81, 0x42, 0x58, 0xf2, 0xe9, 0x00, 0x46, 0xa5, 0x7c, 0xf2, + 0x60, 0x58, 0x8b, 0xd4, 0x16, 0x59, 0x98, 0x5b, 0x2d, 0x0a, 0xd2, 0x65, + 0x54, 0xaf, 0xbd, 0xba, 0x2c, 0xb9, 0x88, 0xb8, 0x63, 0x26, 0x7c, 0x54, + 0xa5, 0xe1, 0x86, 0xb6, 0x67, 0xdc, 0x8d, 0x35, 0xc5, 0x9a, 0x9e, 0x92, +}; +static const unsigned char kat4262_addinpr1[] = {0}; +static const unsigned char kat4262_entropyinpr2[] = { + 0x36, 0x62, 0x4b, 0xe5, 0x5f, 0x0b, 0x7b, 0x17, 0x96, 0x9e, 0x26, 0x1d, + 0x34, 0x33, 0xbe, 0x03, 0xd8, 0x9d, 0x7a, 0x72, 0xaa, 0x5e, 0xb8, 0x53, + 0x4b, 0x70, 0x2c, 0xdb, 0x13, 0x7a, 0x46, 0x46, 0x77, 0x6a, 0x5c, 0xc3, + 0x8e, 0xd0, 0xc7, 0xd3, 0x3c, 0x82, 0x3a, 0xf5, 0x1b, 0x67, 0x8b, 0x37, +}; +static const unsigned char kat4262_addinpr2[] = {0}; +static const unsigned char kat4262_retbits[] = { + 0x5e, 0x99, 0x1f, 0x97, 0x53, 0xba, 0xc9, 0xeb, 0xe8, 0x05, 0x12, 0xcf, + 0x2d, 0x3e, 0x01, 0x6d, 0xdd, 0x93, 0x6c, 0x6c, 0xfe, 0x2b, 0x8b, 0x8e, + 0x7a, 0xa3, 0x2d, 0x0c, 0xa6, 0xab, 0x88, 0x59, 0xa6, 0x63, 0x6d, 0xd3, + 0x40, 0xe7, 0xfd, 0x0f, 0xe7, 0x2f, 0x24, 0x59, 0xb3, 0xe2, 0xf5, 0x66, + 0x7e, 0xcd, 0xa1, 0x96, 0x4a, 0xd1, 0x4b, 0x22, 0x19, 0xad, 0x36, 0x23, + 0x6a, 0x19, 0x17, 0x64, +}; +static const struct drbg_kat_pr_true kat4262_t = { + 1, kat4262_entropyin, kat4262_nonce, kat4262_persstr, + kat4262_entropyinpr1, kat4262_addinpr1, kat4262_entropyinpr2, + kat4262_addinpr2, kat4262_retbits +}; +static const struct drbg_kat kat4262 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4262_t +}; + +static const unsigned char kat4263_entropyin[] = { + 0xb0, 0x26, 0x0e, 0x71, 0xe1, 0x3b, 0xb5, 0x74, 0x89, 0xda, 0x60, 0xcf, + 0xbe, 0x28, 0x42, 0x74, 0x38, 0x9f, 0x64, 0x6f, 0xe7, 0x3c, 0x9d, 0x34, + 0xbc, 0x7a, 0x9e, 0x77, 0x15, 0x97, 0xd7, 0x20, 0xa6, 0x08, 0x2c, 0x4d, + 0x33, 0x2e, 0x8a, 0x4d, 0x89, 0x5b, 0xed, 0x37, 0x62, 0x71, 0xb9, 0x5c, +}; +static const unsigned char kat4263_nonce[] = {0}; +static const unsigned char kat4263_persstr[] = {0}; +static const unsigned char kat4263_entropyinpr1[] = { + 0x1e, 0xde, 0x96, 0xad, 0x12, 0x9f, 0xe8, 0xf9, 0x57, 0x3d, 0x80, 0x00, + 0x73, 0xaf, 0x27, 0xa1, 0x75, 0xee, 0x8e, 0xd3, 0x94, 0x92, 0x4f, 0x48, + 0xa6, 0xd1, 0xb4, 0xe7, 0x64, 0xfa, 0xf9, 0x01, 0xf8, 0xf7, 0xcd, 0xa4, + 0xb2, 0xbd, 0x68, 0x25, 0x4a, 0x05, 0x2b, 0x84, 0x22, 0x5c, 0x55, 0x1a, +}; +static const unsigned char kat4263_addinpr1[] = {0}; +static const unsigned char kat4263_entropyinpr2[] = { + 0xfe, 0x4f, 0x28, 0xbe, 0x8a, 0x08, 0x1d, 0xb7, 0x8a, 0x7b, 0x9a, 0x10, + 0x15, 0x68, 0xec, 0x32, 0x2b, 0xa6, 0xaf, 0x36, 0xb1, 0x42, 0xa9, 0x80, + 0x1d, 0xa0, 0x80, 0x31, 0x4d, 0x3a, 0x37, 0x91, 0xef, 0xc2, 0x2b, 0x66, + 0x3a, 0x0f, 0x20, 0x83, 0x88, 0x9c, 0xb1, 0xd8, 0xc8, 0xb2, 0x8d, 0x40, +}; +static const unsigned char kat4263_addinpr2[] = {0}; +static const unsigned char kat4263_retbits[] = { + 0xcd, 0x70, 0xac, 0x41, 0xb8, 0xc3, 0xd9, 0x25, 0x4d, 0xc6, 0xd7, 0x16, + 0xeb, 0xd5, 0x2a, 0x26, 0x75, 0xad, 0x56, 0xb9, 0xde, 0xc5, 0x1b, 0xc1, + 0xf3, 0xd1, 0x08, 0x70, 0x9e, 0x82, 0x8a, 0x99, 0xfa, 0x63, 0x42, 0xad, + 0xda, 0x75, 0x50, 0x5b, 0x30, 0x48, 0xa3, 0x65, 0x81, 0xb0, 0xa9, 0xc2, + 0xee, 0x02, 0x8d, 0x23, 0x25, 0xb2, 0xbd, 0x03, 0x02, 0x93, 0x03, 0x1b, + 0x44, 0x6a, 0xd3, 0x51, +}; +static const struct drbg_kat_pr_true kat4263_t = { + 2, kat4263_entropyin, kat4263_nonce, kat4263_persstr, + kat4263_entropyinpr1, kat4263_addinpr1, kat4263_entropyinpr2, + kat4263_addinpr2, kat4263_retbits +}; +static const struct drbg_kat kat4263 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4263_t +}; + +static const unsigned char kat4264_entropyin[] = { + 0x40, 0xc9, 0x29, 0x8e, 0x34, 0x7d, 0x8f, 0xa0, 0xa5, 0x92, 0x13, 0xf5, + 0x7f, 0xc5, 0x0c, 0x93, 0xe7, 0x94, 0xa1, 0xef, 0x76, 0xca, 0x19, 0x93, + 0x32, 0x37, 0xe2, 0xd9, 0x46, 0x0e, 0xd3, 0x31, 0xdf, 0xe7, 0x60, 0x71, + 0x37, 0x3d, 0xdb, 0xa5, 0x57, 0x25, 0xa4, 0x2d, 0xd0, 0x65, 0x17, 0x87, +}; +static const unsigned char kat4264_nonce[] = {0}; +static const unsigned char kat4264_persstr[] = {0}; +static const unsigned char kat4264_entropyinpr1[] = { + 0x0c, 0x5a, 0x6b, 0xe5, 0x75, 0x9c, 0xda, 0x7c, 0xfe, 0x29, 0xe6, 0x41, + 0xd5, 0xce, 0x6b, 0x87, 0xe3, 0x9b, 0x2e, 0x04, 0x21, 0x93, 0xa0, 0xf6, + 0xcc, 0x09, 0x38, 0x47, 0xc5, 0xfe, 0xcc, 0x3a, 0x3a, 0x9a, 0x5d, 0xdf, + 0xa6, 0x95, 0xc4, 0x8c, 0xad, 0x2b, 0x48, 0xfa, 0x75, 0x3d, 0x23, 0xa1, +}; +static const unsigned char kat4264_addinpr1[] = {0}; +static const unsigned char kat4264_entropyinpr2[] = { + 0x7d, 0x09, 0x5b, 0x25, 0x8f, 0xcc, 0x77, 0x7b, 0x20, 0x8a, 0x06, 0xfd, + 0x72, 0x11, 0xe1, 0xb5, 0x87, 0xb4, 0x9e, 0x05, 0x75, 0xba, 0xc8, 0x61, + 0x10, 0x15, 0x9c, 0xf3, 0xbb, 0xf4, 0x4b, 0xff, 0x77, 0x17, 0x3c, 0xbd, + 0x21, 0x6b, 0x22, 0xba, 0x6d, 0xcf, 0x45, 0xe4, 0xd9, 0x49, 0x0e, 0xcb, +}; +static const unsigned char kat4264_addinpr2[] = {0}; +static const unsigned char kat4264_retbits[] = { + 0x3e, 0x7c, 0xd4, 0x8f, 0x6e, 0x44, 0x09, 0x50, 0x13, 0x1e, 0x4d, 0xaf, + 0x32, 0x30, 0xa9, 0x6d, 0x84, 0xf5, 0xc1, 0xf4, 0xd5, 0x0f, 0x47, 0x3a, + 0xdf, 0x36, 0x0e, 0x28, 0xe7, 0x6c, 0xd8, 0x1c, 0x58, 0xa2, 0x53, 0xe6, + 0x68, 0xdd, 0x64, 0x26, 0xf7, 0xae, 0x63, 0x82, 0xce, 0xaf, 0xf2, 0x01, + 0xf5, 0x29, 0xc0, 0xaa, 0x20, 0x02, 0x25, 0x2b, 0xff, 0x49, 0xfa, 0x02, + 0xf0, 0x3b, 0xcf, 0x00, +}; +static const struct drbg_kat_pr_true kat4264_t = { + 3, kat4264_entropyin, kat4264_nonce, kat4264_persstr, + kat4264_entropyinpr1, kat4264_addinpr1, kat4264_entropyinpr2, + kat4264_addinpr2, kat4264_retbits +}; +static const struct drbg_kat kat4264 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4264_t +}; + +static const unsigned char kat4265_entropyin[] = { + 0xc0, 0x36, 0xe8, 0xf5, 0x11, 0x2a, 0xf5, 0xb9, 0x48, 0xb1, 0x9d, 0x7e, + 0xa9, 0x27, 0x89, 0x9b, 0x00, 0x9d, 0x46, 0xad, 0x37, 0x8b, 0x07, 0x5b, + 0x6d, 0x5c, 0x13, 0xd5, 0xb4, 0xf9, 0x34, 0xd7, 0xb3, 0x2c, 0x18, 0xfb, + 0x67, 0x2b, 0x38, 0x59, 0xb9, 0x5d, 0x88, 0xa8, 0xf9, 0x95, 0x89, 0x2b, +}; +static const unsigned char kat4265_nonce[] = {0}; +static const unsigned char kat4265_persstr[] = {0}; +static const unsigned char kat4265_entropyinpr1[] = { + 0x88, 0x37, 0x96, 0x23, 0x56, 0x58, 0xbe, 0xdc, 0x45, 0x75, 0xc2, 0x95, + 0x90, 0xc2, 0x6d, 0x41, 0x62, 0x67, 0x20, 0x16, 0x75, 0x39, 0xe9, 0x40, + 0x8a, 0x7d, 0x8f, 0x88, 0x3c, 0x06, 0x6e, 0x80, 0x03, 0x70, 0x59, 0x25, + 0x25, 0xd0, 0xe2, 0xfe, 0x61, 0x5e, 0x44, 0xd9, 0xce, 0x40, 0xdb, 0xa3, +}; +static const unsigned char kat4265_addinpr1[] = {0}; +static const unsigned char kat4265_entropyinpr2[] = { + 0x8e, 0x0a, 0xe3, 0x39, 0x5a, 0xd9, 0x47, 0xa7, 0x9a, 0x96, 0x75, 0x8a, + 0x16, 0xfa, 0x2a, 0x09, 0x96, 0xea, 0x2c, 0xd4, 0xa6, 0xa1, 0xaf, 0x5c, + 0x36, 0x7f, 0x2c, 0x1a, 0xa4, 0x83, 0x91, 0x1a, 0x20, 0x13, 0xa4, 0x6a, + 0x53, 0xdb, 0x41, 0xba, 0x3f, 0x6d, 0x41, 0xb1, 0x5d, 0x2e, 0x50, 0x6f, +}; +static const unsigned char kat4265_addinpr2[] = {0}; +static const unsigned char kat4265_retbits[] = { + 0x89, 0xf1, 0x3e, 0x88, 0xfa, 0x0c, 0xfe, 0xce, 0x3c, 0x72, 0x4d, 0x96, + 0x93, 0xda, 0xa0, 0x6e, 0x3e, 0x92, 0x8d, 0xc3, 0x6b, 0xfc, 0xcc, 0x3e, + 0x0e, 0xe1, 0x9c, 0x90, 0x57, 0xe8, 0xb3, 0x21, 0xf0, 0xd9, 0xad, 0x2e, + 0x20, 0x1a, 0xb0, 0x74, 0x5c, 0x5a, 0x59, 0x98, 0xf0, 0x70, 0x3e, 0x0d, + 0x05, 0xff, 0x35, 0xdb, 0x4a, 0x58, 0xbf, 0x4a, 0x87, 0x4d, 0xca, 0xbf, + 0x19, 0x9a, 0x8b, 0xa9, +}; +static const struct drbg_kat_pr_true kat4265_t = { + 4, kat4265_entropyin, kat4265_nonce, kat4265_persstr, + kat4265_entropyinpr1, kat4265_addinpr1, kat4265_entropyinpr2, + kat4265_addinpr2, kat4265_retbits +}; +static const struct drbg_kat kat4265 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4265_t +}; + +static const unsigned char kat4266_entropyin[] = { + 0xaf, 0xb7, 0xe9, 0xb1, 0x82, 0xab, 0xb2, 0x50, 0xa6, 0x43, 0x57, 0x58, + 0xfa, 0x6a, 0x24, 0x65, 0x60, 0x4e, 0x82, 0xa0, 0x03, 0x05, 0xc1, 0x57, + 0xac, 0xc1, 0xdb, 0x3d, 0x38, 0xc6, 0x94, 0x68, 0x0f, 0xdd, 0x66, 0x1f, + 0xb1, 0x93, 0x3e, 0x7c, 0xbe, 0x14, 0xb3, 0x99, 0xec, 0xbb, 0xc0, 0x4b, +}; +static const unsigned char kat4266_nonce[] = {0}; +static const unsigned char kat4266_persstr[] = {0}; +static const unsigned char kat4266_entropyinpr1[] = { + 0xd6, 0x8b, 0xbc, 0xce, 0x22, 0xd7, 0xd0, 0x20, 0xe0, 0x9a, 0x08, 0xac, + 0x8e, 0xa8, 0x93, 0x08, 0xfb, 0xbb, 0x5b, 0xee, 0x95, 0xf7, 0xa8, 0xbd, + 0x0a, 0x1c, 0x71, 0x23, 0x50, 0x7e, 0x9c, 0xc6, 0xdd, 0xf9, 0x68, 0x6d, + 0xd8, 0x4d, 0xd2, 0xec, 0xc1, 0x1f, 0xcb, 0x18, 0x10, 0xdf, 0xca, 0x31, +}; +static const unsigned char kat4266_addinpr1[] = {0}; +static const unsigned char kat4266_entropyinpr2[] = { + 0xbc, 0xc4, 0xe3, 0x6a, 0x2b, 0x5d, 0xf5, 0x49, 0xb7, 0x2a, 0x31, 0x10, + 0xdb, 0xbb, 0x9f, 0xf8, 0xed, 0x6c, 0xe9, 0x4f, 0x4a, 0x90, 0x4c, 0x29, + 0x39, 0x58, 0x59, 0x02, 0x23, 0x85, 0xbf, 0x1b, 0xd5, 0x82, 0x85, 0xeb, + 0xa0, 0x73, 0xf0, 0xb4, 0x44, 0x9d, 0x4e, 0xc3, 0x40, 0xca, 0xed, 0x28, +}; +static const unsigned char kat4266_addinpr2[] = {0}; +static const unsigned char kat4266_retbits[] = { + 0xe6, 0x1e, 0x93, 0x67, 0x03, 0x83, 0x48, 0x3a, 0x56, 0x35, 0xde, 0xb9, + 0xa5, 0x4e, 0xc5, 0x79, 0xbe, 0xef, 0xa8, 0x72, 0x82, 0xae, 0x8a, 0xe5, + 0x1d, 0x99, 0xe2, 0x09, 0x90, 0xed, 0x15, 0x7b, 0x0c, 0x5f, 0xaf, 0x1d, + 0xa1, 0xde, 0x4a, 0x3a, 0xe3, 0x5a, 0x11, 0x71, 0x0f, 0x52, 0x7c, 0xba, + 0x4c, 0x9a, 0xcc, 0x1a, 0x5b, 0xb0, 0xb6, 0xdf, 0x19, 0x5b, 0x3d, 0x6c, + 0x05, 0x3b, 0x78, 0x3b, +}; +static const struct drbg_kat_pr_true kat4266_t = { + 5, kat4266_entropyin, kat4266_nonce, kat4266_persstr, + kat4266_entropyinpr1, kat4266_addinpr1, kat4266_entropyinpr2, + kat4266_addinpr2, kat4266_retbits +}; +static const struct drbg_kat kat4266 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4266_t +}; + +static const unsigned char kat4267_entropyin[] = { + 0x4c, 0x13, 0xdc, 0x39, 0x39, 0x2d, 0xf5, 0xaa, 0x4f, 0xdd, 0x0e, 0x95, + 0x22, 0x2d, 0x85, 0x0a, 0x53, 0x93, 0x49, 0xc4, 0xa0, 0x1d, 0xd2, 0xa9, + 0x82, 0x61, 0x1f, 0x77, 0x2e, 0x60, 0x89, 0xe4, 0x7a, 0x81, 0x2c, 0xb0, + 0x88, 0x0c, 0xee, 0xe9, 0x9d, 0xb0, 0x82, 0x80, 0x04, 0x21, 0xbc, 0xbb, +}; +static const unsigned char kat4267_nonce[] = {0}; +static const unsigned char kat4267_persstr[] = {0}; +static const unsigned char kat4267_entropyinpr1[] = { + 0xd9, 0xcc, 0x83, 0x85, 0x81, 0x41, 0x31, 0xab, 0x94, 0xa2, 0x9a, 0xd8, + 0x45, 0x89, 0xc3, 0xfc, 0xd5, 0xa7, 0xe4, 0x64, 0x56, 0xcd, 0x9d, 0xa2, + 0x25, 0x5a, 0x43, 0x63, 0x0c, 0x95, 0xc7, 0x69, 0x1d, 0xe0, 0x2d, 0x8a, + 0x99, 0x0d, 0x06, 0x87, 0x63, 0xe7, 0xa9, 0x96, 0x60, 0xd2, 0xdc, 0x0c, +}; +static const unsigned char kat4267_addinpr1[] = {0}; +static const unsigned char kat4267_entropyinpr2[] = { + 0xa5, 0xec, 0x6d, 0xef, 0x28, 0x8d, 0x07, 0x39, 0x9c, 0x49, 0x33, 0x9f, + 0x52, 0x0c, 0xb5, 0x01, 0x40, 0xe0, 0x0b, 0xa1, 0x39, 0x68, 0xa7, 0xe2, + 0x6c, 0x9a, 0xe2, 0xa3, 0x5d, 0xe2, 0x76, 0xff, 0x44, 0x19, 0x94, 0x4f, + 0x66, 0x0f, 0x8e, 0x35, 0x69, 0xb1, 0x19, 0xb2, 0x2c, 0x97, 0x28, 0x17, +}; +static const unsigned char kat4267_addinpr2[] = {0}; +static const unsigned char kat4267_retbits[] = { + 0xe0, 0x25, 0xaa, 0xaa, 0xe2, 0xb3, 0x89, 0xac, 0x1e, 0x6e, 0xd3, 0x85, + 0xe1, 0xf8, 0xbf, 0xf7, 0x2d, 0xd6, 0xeb, 0xdd, 0xf9, 0x3e, 0x7a, 0x96, + 0x25, 0xa7, 0xa1, 0x03, 0xdb, 0x83, 0xc4, 0xd4, 0x97, 0xed, 0x8d, 0xd0, + 0x9e, 0xe9, 0x3c, 0x4f, 0xa5, 0x7b, 0xd7, 0xd9, 0x58, 0x6b, 0x69, 0x65, + 0x78, 0x49, 0xaf, 0x7d, 0x72, 0xbf, 0xc4, 0x4f, 0xd1, 0x65, 0xe4, 0xb5, + 0x4e, 0xb1, 0x69, 0x85, +}; +static const struct drbg_kat_pr_true kat4267_t = { + 6, kat4267_entropyin, kat4267_nonce, kat4267_persstr, + kat4267_entropyinpr1, kat4267_addinpr1, kat4267_entropyinpr2, + kat4267_addinpr2, kat4267_retbits +}; +static const struct drbg_kat kat4267 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4267_t +}; + +static const unsigned char kat4268_entropyin[] = { + 0x5f, 0x3e, 0xe8, 0x0d, 0xe8, 0xcb, 0xd8, 0xc3, 0xb9, 0x6b, 0x81, 0x4b, + 0x5e, 0x56, 0xdf, 0x17, 0xcc, 0x02, 0xc7, 0x26, 0xc4, 0x08, 0x46, 0xc1, + 0x20, 0x03, 0xc6, 0x96, 0x9f, 0x58, 0xb3, 0x43, 0x4e, 0xcc, 0x4f, 0xa6, + 0xdc, 0x02, 0xc9, 0x1f, 0xe6, 0xcb, 0x4e, 0x90, 0x55, 0x43, 0xa0, 0x26, +}; +static const unsigned char kat4268_nonce[] = {0}; +static const unsigned char kat4268_persstr[] = {0}; +static const unsigned char kat4268_entropyinpr1[] = { + 0xa1, 0x8d, 0x63, 0xf1, 0x4f, 0x20, 0xad, 0xf2, 0x34, 0xd6, 0x1b, 0x4f, + 0x5d, 0x6d, 0x49, 0xb9, 0xc2, 0x9a, 0x3e, 0x03, 0xae, 0x4c, 0xf7, 0xe9, + 0x4c, 0x73, 0x4b, 0xc4, 0x08, 0x79, 0x84, 0xf8, 0x25, 0xed, 0x83, 0x29, + 0x3f, 0x66, 0x08, 0xd6, 0x9b, 0x26, 0x42, 0x3b, 0xd5, 0x52, 0xd9, 0xe5, +}; +static const unsigned char kat4268_addinpr1[] = {0}; +static const unsigned char kat4268_entropyinpr2[] = { + 0x22, 0xb7, 0xa4, 0xe3, 0xe8, 0x22, 0xaa, 0x3a, 0xcb, 0x90, 0x02, 0x85, + 0x48, 0xa1, 0x77, 0xef, 0xa2, 0x84, 0xe5, 0xf0, 0x9e, 0xd3, 0x23, 0xeb, + 0x93, 0x12, 0x55, 0x12, 0x9f, 0x71, 0x43, 0xb0, 0x99, 0xd1, 0x23, 0x8a, + 0x75, 0xb4, 0xb3, 0x0b, 0x4a, 0x47, 0xd0, 0xf4, 0xf5, 0xdb, 0x6f, 0x1c, +}; +static const unsigned char kat4268_addinpr2[] = {0}; +static const unsigned char kat4268_retbits[] = { + 0xaa, 0x58, 0x4e, 0x4e, 0x41, 0xf0, 0x2a, 0xec, 0x12, 0x46, 0x47, 0xb8, + 0x45, 0xe4, 0x4a, 0x3e, 0x23, 0x81, 0xd4, 0xdf, 0xf1, 0x1a, 0xe7, 0x05, + 0xde, 0x94, 0x81, 0xc3, 0xbc, 0x28, 0xfb, 0xb7, 0xd0, 0xcc, 0x52, 0x32, + 0xcb, 0x9a, 0x80, 0xd1, 0x55, 0x6f, 0x24, 0xbc, 0x25, 0xe1, 0x2e, 0x05, + 0x4c, 0xcd, 0xdb, 0xab, 0x15, 0xbd, 0xa1, 0x16, 0x52, 0x5d, 0xe3, 0x80, + 0xe8, 0xc2, 0xb8, 0x6c, +}; +static const struct drbg_kat_pr_true kat4268_t = { + 7, kat4268_entropyin, kat4268_nonce, kat4268_persstr, + kat4268_entropyinpr1, kat4268_addinpr1, kat4268_entropyinpr2, + kat4268_addinpr2, kat4268_retbits +}; +static const struct drbg_kat kat4268 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4268_t +}; + +static const unsigned char kat4269_entropyin[] = { + 0x5d, 0x45, 0xb6, 0x96, 0x51, 0x38, 0xde, 0xd7, 0xae, 0xea, 0x9f, 0xaf, + 0x03, 0x5d, 0x02, 0x90, 0x06, 0x52, 0xce, 0x21, 0xcc, 0x84, 0xe5, 0x52, + 0x43, 0xba, 0xc2, 0x25, 0xc8, 0xfa, 0xd3, 0x5e, 0xb4, 0xd7, 0x33, 0xf6, + 0xaa, 0x30, 0xc7, 0xed, 0x35, 0x44, 0xf0, 0x85, 0xb9, 0x21, 0x7a, 0x20, +}; +static const unsigned char kat4269_nonce[] = {0}; +static const unsigned char kat4269_persstr[] = {0}; +static const unsigned char kat4269_entropyinpr1[] = { + 0x4f, 0x5a, 0x28, 0x26, 0xe5, 0xb1, 0x85, 0x2f, 0xa2, 0xe5, 0xf8, 0x1c, + 0x70, 0x60, 0xf7, 0xb5, 0x13, 0xb5, 0x78, 0xae, 0xb5, 0x42, 0xcc, 0xa8, + 0xa9, 0x19, 0x77, 0x93, 0x69, 0xdc, 0xeb, 0xb1, 0x3d, 0xa5, 0x23, 0x4c, + 0xc8, 0x3a, 0x69, 0xa5, 0x57, 0xd3, 0x7f, 0xe1, 0xfe, 0xc5, 0x2e, 0x25, +}; +static const unsigned char kat4269_addinpr1[] = {0}; +static const unsigned char kat4269_entropyinpr2[] = { + 0x83, 0x9d, 0x5e, 0x4a, 0x33, 0xd0, 0x07, 0xd2, 0x6b, 0x32, 0x2d, 0xd3, + 0x70, 0xd2, 0xe0, 0xd4, 0x50, 0x73, 0xb9, 0xda, 0x1b, 0x56, 0xca, 0xbb, + 0xc9, 0xeb, 0x1f, 0x79, 0xc5, 0x17, 0xba, 0x4e, 0x3b, 0x2e, 0x90, 0x05, + 0x41, 0x02, 0x9c, 0x9f, 0x3c, 0xaa, 0x5b, 0x6f, 0x8d, 0x38, 0xa5, 0x40, +}; +static const unsigned char kat4269_addinpr2[] = {0}; +static const unsigned char kat4269_retbits[] = { + 0xae, 0x05, 0x11, 0xf3, 0xf6, 0x00, 0x10, 0x6f, 0xa6, 0xa8, 0x8f, 0x1b, + 0xec, 0xda, 0xc0, 0x8c, 0x59, 0xd7, 0xd3, 0x2e, 0x96, 0x26, 0x18, 0xd0, + 0xb7, 0x94, 0xba, 0x13, 0x28, 0x82, 0x57, 0x40, 0xc3, 0x3f, 0x80, 0xeb, + 0x57, 0x64, 0xf8, 0x4e, 0x8c, 0x18, 0x01, 0x42, 0x28, 0x34, 0xdc, 0xcb, + 0xc0, 0x4c, 0x0a, 0x5e, 0x85, 0xea, 0xe7, 0x03, 0x06, 0x03, 0xed, 0x53, + 0x40, 0xd9, 0xf7, 0x3f, +}; +static const struct drbg_kat_pr_true kat4269_t = { + 8, kat4269_entropyin, kat4269_nonce, kat4269_persstr, + kat4269_entropyinpr1, kat4269_addinpr1, kat4269_entropyinpr2, + kat4269_addinpr2, kat4269_retbits +}; +static const struct drbg_kat kat4269 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4269_t +}; + +static const unsigned char kat4270_entropyin[] = { + 0x40, 0xb9, 0x0c, 0x3d, 0x81, 0x4b, 0x25, 0x6f, 0xdd, 0x99, 0xc5, 0xce, + 0x2e, 0xeb, 0x37, 0x62, 0x48, 0xab, 0xa2, 0x9a, 0x87, 0xe5, 0x53, 0xd6, + 0x3e, 0x4c, 0xf0, 0xdc, 0xbf, 0xc2, 0x65, 0xd9, 0x30, 0xc5, 0x65, 0xe3, + 0x4f, 0x96, 0x7e, 0xb2, 0xea, 0xbb, 0xd6, 0xc4, 0x4b, 0xbc, 0xa5, 0xf3, +}; +static const unsigned char kat4270_nonce[] = {0}; +static const unsigned char kat4270_persstr[] = {0}; +static const unsigned char kat4270_entropyinpr1[] = { + 0x97, 0x4d, 0xb6, 0x1e, 0xfa, 0x36, 0xa1, 0xab, 0x6a, 0x60, 0x03, 0xee, + 0xdf, 0xf8, 0xee, 0xbb, 0x32, 0xbf, 0x21, 0x1c, 0x66, 0xf6, 0xb2, 0x50, + 0x4c, 0xa2, 0x91, 0xc7, 0xf1, 0xec, 0xc3, 0xe9, 0x6d, 0xb5, 0x13, 0x47, + 0xf5, 0x4e, 0xd5, 0xa6, 0x9f, 0x53, 0x0e, 0x6b, 0x6d, 0xa9, 0x5a, 0xdb, +}; +static const unsigned char kat4270_addinpr1[] = {0}; +static const unsigned char kat4270_entropyinpr2[] = { + 0x36, 0x31, 0xec, 0x5e, 0x08, 0x38, 0x4e, 0xa5, 0xf6, 0x0c, 0x5a, 0xe5, + 0xde, 0x95, 0xba, 0xe2, 0xcb, 0x22, 0x80, 0xe0, 0xfa, 0xc0, 0x82, 0x3b, + 0x49, 0xcd, 0x74, 0xd5, 0xf3, 0xdd, 0xb8, 0x80, 0x2e, 0xd8, 0x84, 0xfb, + 0x64, 0x27, 0x77, 0xd9, 0xce, 0xbf, 0xb4, 0xfd, 0xab, 0xa6, 0xbc, 0x00, +}; +static const unsigned char kat4270_addinpr2[] = {0}; +static const unsigned char kat4270_retbits[] = { + 0x94, 0xa2, 0x7e, 0x44, 0x3a, 0x83, 0x7d, 0x43, 0x77, 0x1b, 0xc3, 0xf0, + 0xcd, 0x32, 0x8a, 0x52, 0x61, 0x0f, 0xc7, 0x19, 0x4b, 0xe8, 0xf0, 0xee, + 0xa2, 0x02, 0x4b, 0x88, 0xbb, 0x10, 0xb3, 0x3f, 0x1b, 0x88, 0xa1, 0xc3, + 0x3d, 0x01, 0x96, 0x6d, 0xd6, 0x45, 0x94, 0x0a, 0x95, 0xdc, 0x39, 0x42, + 0xb5, 0x2d, 0x97, 0x84, 0x7a, 0xc6, 0x7e, 0x4e, 0x66, 0x52, 0xba, 0x9d, + 0x0d, 0x77, 0x8a, 0x52, +}; +static const struct drbg_kat_pr_true kat4270_t = { + 9, kat4270_entropyin, kat4270_nonce, kat4270_persstr, + kat4270_entropyinpr1, kat4270_addinpr1, kat4270_entropyinpr2, + kat4270_addinpr2, kat4270_retbits +}; +static const struct drbg_kat kat4270 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4270_t +}; + +static const unsigned char kat4271_entropyin[] = { + 0xcd, 0x7d, 0x71, 0x82, 0x2d, 0x45, 0x0e, 0x60, 0x4b, 0x1c, 0x3e, 0x8b, + 0x9d, 0x77, 0xa2, 0xae, 0x71, 0x9e, 0xdd, 0xa7, 0x75, 0xbf, 0xcf, 0x8d, + 0x99, 0xc2, 0xf0, 0x37, 0xd6, 0x67, 0x9c, 0x9a, 0x78, 0x95, 0x86, 0xd3, + 0x67, 0x9d, 0xc8, 0xff, 0xde, 0x43, 0xf1, 0x8f, 0xa2, 0xce, 0xb0, 0xd2, +}; +static const unsigned char kat4271_nonce[] = {0}; +static const unsigned char kat4271_persstr[] = {0}; +static const unsigned char kat4271_entropyinpr1[] = { + 0xb2, 0xb2, 0x93, 0x55, 0xbd, 0xcc, 0x1c, 0x7c, 0x70, 0xcd, 0xdf, 0x0b, + 0xb3, 0x39, 0xfb, 0x69, 0x27, 0xc7, 0x0a, 0x5f, 0x0e, 0x06, 0x7b, 0x23, + 0x59, 0xfd, 0x13, 0x5f, 0xa5, 0x5f, 0xd0, 0x29, 0xfd, 0x65, 0x8e, 0x23, + 0xca, 0xf1, 0x57, 0x2f, 0x61, 0xb7, 0x51, 0xe4, 0xb9, 0xf7, 0x00, 0x11, +}; +static const unsigned char kat4271_addinpr1[] = {0}; +static const unsigned char kat4271_entropyinpr2[] = { + 0x11, 0xd3, 0x59, 0x09, 0x8f, 0xa7, 0xcc, 0xb7, 0x5d, 0xec, 0xc1, 0xbb, + 0xaa, 0x7d, 0xb0, 0x7d, 0x91, 0xea, 0x15, 0xdc, 0x7b, 0xdc, 0x60, 0x9e, + 0x03, 0x2c, 0x3f, 0x20, 0x22, 0xda, 0xff, 0x83, 0x57, 0x3e, 0xe7, 0x29, + 0x5b, 0x6e, 0x54, 0x84, 0x97, 0xf8, 0x91, 0x23, 0xb8, 0xcb, 0xa3, 0x83, +}; +static const unsigned char kat4271_addinpr2[] = {0}; +static const unsigned char kat4271_retbits[] = { + 0x33, 0xac, 0xa7, 0x7b, 0x2e, 0xee, 0x07, 0xb1, 0xd0, 0x99, 0x78, 0x4d, + 0xc7, 0xf6, 0x55, 0x7a, 0xe4, 0xa3, 0xa5, 0x1c, 0xdd, 0x63, 0xc9, 0x2e, + 0x54, 0x76, 0x2e, 0xb1, 0x41, 0xe0, 0x9c, 0xab, 0xdd, 0x0f, 0xa0, 0x95, + 0x4e, 0x27, 0x18, 0x53, 0x74, 0x61, 0x50, 0x2a, 0x62, 0x9d, 0xb6, 0x39, + 0xbe, 0x65, 0x08, 0xfe, 0x89, 0x04, 0x5e, 0x32, 0x31, 0x11, 0x1e, 0x66, + 0x85, 0xb1, 0xb1, 0xf1, +}; +static const struct drbg_kat_pr_true kat4271_t = { + 10, kat4271_entropyin, kat4271_nonce, kat4271_persstr, + kat4271_entropyinpr1, kat4271_addinpr1, kat4271_entropyinpr2, + kat4271_addinpr2, kat4271_retbits +}; +static const struct drbg_kat kat4271 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4271_t +}; + +static const unsigned char kat4272_entropyin[] = { + 0xa3, 0x06, 0x02, 0xe6, 0x82, 0x3f, 0x26, 0x2f, 0xe5, 0xeb, 0x55, 0x7c, + 0x04, 0x6e, 0x99, 0xd9, 0x1c, 0xed, 0xf2, 0x85, 0x0e, 0x8a, 0x5b, 0xd4, + 0x5a, 0xf6, 0xf2, 0x06, 0x45, 0x0b, 0xac, 0xf6, 0xda, 0x8f, 0x66, 0x8f, + 0x1b, 0xda, 0x91, 0xea, 0xa3, 0xdb, 0x8f, 0x91, 0x25, 0x3f, 0x91, 0xbb, +}; +static const unsigned char kat4272_nonce[] = {0}; +static const unsigned char kat4272_persstr[] = {0}; +static const unsigned char kat4272_entropyinpr1[] = { + 0x73, 0xa8, 0x23, 0x9d, 0x83, 0x79, 0x31, 0x19, 0x98, 0xd4, 0xb6, 0x28, + 0xd5, 0xb5, 0xd0, 0xdf, 0x04, 0x00, 0x32, 0x8c, 0xff, 0xb1, 0x24, 0xc1, + 0x7f, 0xb5, 0xfa, 0x1a, 0x01, 0xfc, 0x74, 0x4a, 0xdd, 0x87, 0xce, 0x25, + 0x0c, 0x0f, 0x08, 0x94, 0xf6, 0xfd, 0xe7, 0x78, 0xe4, 0xb7, 0xdc, 0x1a, +}; +static const unsigned char kat4272_addinpr1[] = {0}; +static const unsigned char kat4272_entropyinpr2[] = { + 0x26, 0xa2, 0xcc, 0x7c, 0x29, 0x98, 0x7f, 0x8f, 0x79, 0x2b, 0x29, 0xc0, + 0xc6, 0x1b, 0x3e, 0xde, 0xf9, 0x94, 0xbb, 0x9b, 0x0a, 0xcb, 0x12, 0x82, + 0xa9, 0xfc, 0x03, 0xa5, 0x4c, 0x11, 0x4b, 0x05, 0x59, 0x89, 0x4c, 0xf2, + 0xaa, 0x25, 0xf4, 0x0c, 0x3d, 0xdd, 0x06, 0x6d, 0x80, 0x48, 0xda, 0x28, +}; +static const unsigned char kat4272_addinpr2[] = {0}; +static const unsigned char kat4272_retbits[] = { + 0xd4, 0xec, 0x8d, 0x80, 0x51, 0xf4, 0x42, 0x85, 0xc0, 0x13, 0x80, 0x19, + 0xd6, 0xac, 0xdc, 0x29, 0x58, 0x4f, 0x46, 0x7b, 0x90, 0x74, 0xac, 0x98, + 0x03, 0x1d, 0x68, 0xe0, 0x18, 0xcb, 0xcf, 0xb4, 0x8f, 0x74, 0xc8, 0x43, + 0x50, 0x59, 0xc2, 0x94, 0x59, 0xfc, 0xd8, 0x1a, 0xed, 0x04, 0x76, 0x9a, + 0x5c, 0x68, 0x1b, 0x2b, 0xe4, 0xb8, 0x69, 0x0c, 0xa2, 0x9c, 0x74, 0x3a, + 0x47, 0x89, 0x87, 0x14, +}; +static const struct drbg_kat_pr_true kat4272_t = { + 11, kat4272_entropyin, kat4272_nonce, kat4272_persstr, + kat4272_entropyinpr1, kat4272_addinpr1, kat4272_entropyinpr2, + kat4272_addinpr2, kat4272_retbits +}; +static const struct drbg_kat kat4272 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4272_t +}; + +static const unsigned char kat4273_entropyin[] = { + 0x92, 0xf0, 0x7f, 0x2e, 0xe3, 0xec, 0xfc, 0x8d, 0x39, 0xd6, 0xa2, 0x54, + 0xc2, 0x5c, 0x94, 0x11, 0x20, 0x45, 0xd6, 0xdf, 0x47, 0x8c, 0xe7, 0xe9, + 0x7a, 0x88, 0x5c, 0xcb, 0xf4, 0x70, 0x81, 0xe7, 0xbd, 0x1a, 0x47, 0x57, + 0x01, 0x7a, 0xbf, 0xd2, 0xc2, 0x13, 0xb0, 0x74, 0x8f, 0xc5, 0x5e, 0x56, +}; +static const unsigned char kat4273_nonce[] = {0}; +static const unsigned char kat4273_persstr[] = {0}; +static const unsigned char kat4273_entropyinpr1[] = { + 0x5c, 0x05, 0x31, 0xed, 0x53, 0xff, 0x4c, 0x86, 0xd0, 0xcc, 0x83, 0x4f, + 0x69, 0x7e, 0x53, 0x66, 0xf7, 0x0e, 0x40, 0x27, 0x23, 0xb6, 0xdc, 0x79, + 0xc4, 0x26, 0xd7, 0x37, 0xd6, 0xc0, 0xaf, 0x53, 0xb8, 0xdb, 0x25, 0xfe, + 0x65, 0x68, 0xec, 0xd1, 0x9a, 0x88, 0xe6, 0xb6, 0xc0, 0xe6, 0x82, 0x00, +}; +static const unsigned char kat4273_addinpr1[] = {0}; +static const unsigned char kat4273_entropyinpr2[] = { + 0xfe, 0xc9, 0xe0, 0x3f, 0x1f, 0x33, 0x6f, 0x6e, 0x29, 0x47, 0xa6, 0x2d, + 0xd5, 0x1c, 0x6e, 0xa5, 0xf4, 0x33, 0x9b, 0x36, 0xbc, 0x40, 0x82, 0x68, + 0x34, 0x0f, 0xa3, 0x45, 0xc5, 0x7e, 0xf2, 0x30, 0x73, 0x29, 0xba, 0xbf, + 0x70, 0x15, 0x88, 0xcd, 0x0e, 0x1d, 0x7f, 0xc3, 0xbc, 0xd0, 0x3c, 0x6f, +}; +static const unsigned char kat4273_addinpr2[] = {0}; +static const unsigned char kat4273_retbits[] = { + 0xbe, 0x81, 0xbf, 0xc3, 0x00, 0xd5, 0x40, 0xc9, 0x4d, 0xc7, 0x87, 0x31, + 0x95, 0x44, 0xa1, 0xaf, 0x36, 0xec, 0xd5, 0x95, 0x66, 0xb1, 0x99, 0x1d, + 0x8a, 0x06, 0xbc, 0x13, 0xec, 0xb6, 0x83, 0x2a, 0x6e, 0xd8, 0x30, 0x81, + 0x68, 0xf1, 0x0a, 0xbb, 0xc5, 0xc8, 0x07, 0xb6, 0x24, 0xef, 0xf9, 0x24, + 0xa9, 0x38, 0xea, 0xb7, 0xfe, 0xe2, 0x53, 0x72, 0x4f, 0x3c, 0x0e, 0xe4, + 0x79, 0xff, 0xf9, 0x44, +}; +static const struct drbg_kat_pr_true kat4273_t = { + 12, kat4273_entropyin, kat4273_nonce, kat4273_persstr, + kat4273_entropyinpr1, kat4273_addinpr1, kat4273_entropyinpr2, + kat4273_addinpr2, kat4273_retbits +}; +static const struct drbg_kat kat4273 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4273_t +}; + +static const unsigned char kat4274_entropyin[] = { + 0xf6, 0xf5, 0x5c, 0xc1, 0x29, 0x90, 0x68, 0xcf, 0x74, 0x69, 0x60, 0x52, + 0xa7, 0x84, 0x44, 0xb5, 0x29, 0x86, 0x72, 0xcb, 0xaa, 0x63, 0xc0, 0xb9, + 0x12, 0x15, 0x52, 0xe4, 0x67, 0xe5, 0xd5, 0x66, 0xec, 0xe3, 0x3e, 0x5f, + 0x92, 0x23, 0x55, 0x8f, 0xe7, 0xb3, 0x87, 0x78, 0xcb, 0x70, 0xe8, 0xe5, +}; +static const unsigned char kat4274_nonce[] = {0}; +static const unsigned char kat4274_persstr[] = {0}; +static const unsigned char kat4274_entropyinpr1[] = { + 0x0a, 0xa7, 0xb0, 0x33, 0xa5, 0x32, 0xf1, 0x3b, 0xf7, 0x95, 0x1a, 0x45, + 0x70, 0x40, 0x8d, 0x37, 0x15, 0xc3, 0x25, 0xa5, 0x25, 0x64, 0x74, 0x7d, + 0xc7, 0xd2, 0xa7, 0xb4, 0xde, 0x0d, 0xe6, 0xe6, 0xaa, 0xfa, 0xf4, 0xf4, + 0xbc, 0x7d, 0x91, 0xc6, 0x2f, 0x51, 0xdb, 0x1a, 0xf4, 0x5d, 0xde, 0x36, +}; +static const unsigned char kat4274_addinpr1[] = {0}; +static const unsigned char kat4274_entropyinpr2[] = { + 0xa7, 0x9b, 0xfd, 0xc2, 0x4d, 0x9d, 0xf8, 0xce, 0x39, 0x44, 0xdd, 0x41, + 0x3e, 0xdb, 0x61, 0x0b, 0xda, 0x64, 0x57, 0x83, 0x0b, 0xfb, 0x8c, 0xb0, + 0x76, 0xcb, 0x2b, 0x89, 0xbb, 0xb8, 0xc1, 0xab, 0xf2, 0x9e, 0x2f, 0x3a, + 0x2e, 0xad, 0x4e, 0x1e, 0x60, 0xcd, 0x07, 0xb4, 0x98, 0xd9, 0x0e, 0x08, +}; +static const unsigned char kat4274_addinpr2[] = {0}; +static const unsigned char kat4274_retbits[] = { + 0x04, 0xb9, 0x2e, 0xe2, 0xd0, 0x9e, 0xd0, 0xf5, 0x88, 0x49, 0x03, 0x24, + 0xee, 0xac, 0x4a, 0x20, 0x35, 0x1f, 0xf9, 0x10, 0x95, 0x2a, 0x8d, 0xd9, + 0xd2, 0xad, 0xcb, 0x99, 0x3a, 0xa7, 0x57, 0x34, 0x69, 0x48, 0x36, 0xf9, + 0xff, 0x9d, 0xf0, 0x07, 0x3e, 0x8c, 0xd3, 0x1a, 0xff, 0x91, 0xf0, 0x5d, + 0xbf, 0x34, 0xd4, 0xaf, 0x0e, 0xd3, 0x5f, 0x97, 0xac, 0x1e, 0xb5, 0x83, + 0x7f, 0x8f, 0x71, 0x86, +}; +static const struct drbg_kat_pr_true kat4274_t = { + 13, kat4274_entropyin, kat4274_nonce, kat4274_persstr, + kat4274_entropyinpr1, kat4274_addinpr1, kat4274_entropyinpr2, + kat4274_addinpr2, kat4274_retbits +}; +static const struct drbg_kat kat4274 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4274_t +}; + +static const unsigned char kat4275_entropyin[] = { + 0x4a, 0x00, 0xfb, 0x6b, 0x1e, 0x58, 0x63, 0x53, 0x9c, 0x87, 0x17, 0xd3, + 0xc6, 0x39, 0xc7, 0xba, 0xfa, 0x81, 0xac, 0x37, 0x40, 0x8a, 0x5a, 0xe3, + 0xe8, 0x7a, 0x79, 0x7e, 0x86, 0xde, 0x90, 0xa3, 0x0f, 0x74, 0xd3, 0x4e, + 0xaa, 0xc9, 0xbb, 0x80, 0xfc, 0x6a, 0xcc, 0xf7, 0x62, 0xe9, 0x92, 0x22, +}; +static const unsigned char kat4275_nonce[] = {0}; +static const unsigned char kat4275_persstr[] = {0}; +static const unsigned char kat4275_entropyinpr1[] = { + 0xcd, 0x66, 0xeb, 0xf0, 0x8c, 0x99, 0xf9, 0xc0, 0x4c, 0x1e, 0xff, 0xc0, + 0x78, 0x71, 0x7b, 0x4f, 0x24, 0x42, 0x2f, 0x11, 0x15, 0x91, 0xa0, 0xda, + 0xd2, 0xac, 0x93, 0x71, 0xd3, 0xa7, 0xc1, 0xcb, 0x3d, 0xbf, 0x66, 0x4a, + 0xd4, 0x4c, 0xa2, 0xb0, 0x8c, 0x83, 0x23, 0x97, 0x47, 0xa1, 0x48, 0xfd, +}; +static const unsigned char kat4275_addinpr1[] = {0}; +static const unsigned char kat4275_entropyinpr2[] = { + 0x60, 0xc6, 0xf9, 0xf0, 0x7f, 0x75, 0xf1, 0xa8, 0x01, 0x88, 0xb3, 0x2d, + 0x07, 0xc2, 0x89, 0x58, 0x72, 0xc4, 0xe8, 0xb9, 0x2a, 0x19, 0xac, 0x6c, + 0x2a, 0x29, 0xbc, 0x80, 0x7f, 0x99, 0xfb, 0x4a, 0xf7, 0x5b, 0x6a, 0xed, + 0x8e, 0x6f, 0x75, 0xc9, 0xa6, 0xb1, 0x55, 0x9b, 0x48, 0xf1, 0x28, 0xe9, +}; +static const unsigned char kat4275_addinpr2[] = {0}; +static const unsigned char kat4275_retbits[] = { + 0x2d, 0x20, 0x70, 0x9e, 0xa0, 0xff, 0x7a, 0x62, 0x4e, 0xa1, 0xe3, 0x7d, + 0x80, 0xc6, 0x5c, 0x25, 0xea, 0xed, 0x85, 0xaf, 0x45, 0xef, 0x1a, 0x09, + 0x2e, 0xa7, 0xb9, 0x7c, 0x49, 0xc9, 0x12, 0xa0, 0xf0, 0xfc, 0x62, 0xd2, + 0x9f, 0xf4, 0xe4, 0x18, 0x2c, 0x6b, 0xb1, 0x26, 0x76, 0xca, 0xb3, 0x71, + 0x1c, 0x2b, 0x8d, 0xb2, 0x65, 0xcd, 0x9f, 0x81, 0x56, 0x9a, 0x30, 0x0b, + 0x99, 0xfa, 0xc4, 0x3e, +}; +static const struct drbg_kat_pr_true kat4275_t = { + 14, kat4275_entropyin, kat4275_nonce, kat4275_persstr, + kat4275_entropyinpr1, kat4275_addinpr1, kat4275_entropyinpr2, + kat4275_addinpr2, kat4275_retbits +}; +static const struct drbg_kat kat4275 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 0, 64, &kat4275_t +}; + +static const unsigned char kat4276_entropyin[] = { + 0x93, 0xe6, 0xd2, 0x8f, 0xb5, 0x76, 0xba, 0x5b, 0x81, 0x6a, 0x5f, 0x42, + 0xa7, 0xce, 0x8d, 0x19, 0x46, 0x5d, 0x47, 0xaa, 0xbc, 0x94, 0xa7, 0xb7, + 0x7c, 0x71, 0xe2, 0x9d, 0x95, 0xf3, 0xa5, 0x10, 0xc1, 0xc7, 0x62, 0xff, + 0xbd, 0x29, 0xfc, 0x20, 0x0c, 0xb6, 0x80, 0x52, 0x9d, 0x3c, 0x8f, 0xd4, +}; +static const unsigned char kat4276_nonce[] = {0}; +static const unsigned char kat4276_persstr[] = {0}; +static const unsigned char kat4276_entropyinpr1[] = { + 0x9e, 0xdd, 0xbc, 0xec, 0x30, 0x1b, 0x2f, 0xb9, 0xcf, 0x57, 0xef, 0xcc, + 0x58, 0x1e, 0xf7, 0x76, 0xfc, 0xd2, 0x64, 0x03, 0xd0, 0xa9, 0xb6, 0x4f, + 0x20, 0x5f, 0x6a, 0x9f, 0x60, 0xb7, 0x63, 0xd2, 0x99, 0x9a, 0x5a, 0x99, + 0x36, 0x74, 0xfa, 0x66, 0x4b, 0xb2, 0xaf, 0x5f, 0x8d, 0xde, 0xa1, 0xd7, +}; +static const unsigned char kat4276_addinpr1[] = { + 0xa0, 0x00, 0xa7, 0x5a, 0x90, 0x32, 0x6e, 0x9f, 0x94, 0xe3, 0xc8, 0x94, + 0x54, 0x8b, 0xac, 0xab, 0x5d, 0x9e, 0x69, 0xde, 0xc8, 0xe6, 0x09, 0x92, + 0xe1, 0x97, 0x46, 0x0f, 0x9c, 0x5a, 0xa2, 0xa6, 0x9a, 0xc8, 0xd8, 0x13, + 0x30, 0x23, 0x0b, 0x90, 0xb3, 0xa9, 0x0f, 0xbf, 0xac, 0x6d, 0x13, 0xa1, +}; +static const unsigned char kat4276_entropyinpr2[] = { + 0x4c, 0x26, 0xcb, 0xe4, 0x40, 0xd4, 0x84, 0x14, 0xca, 0x4d, 0xc4, 0x03, + 0x21, 0x37, 0x66, 0x46, 0xe4, 0x2f, 0xa4, 0x13, 0x9a, 0x4b, 0x1e, 0xaa, + 0xe3, 0xac, 0xd9, 0xf7, 0xdc, 0xa0, 0x94, 0xbc, 0xcd, 0x3f, 0xe1, 0x87, + 0x9f, 0xc4, 0xbe, 0x22, 0xe6, 0xdc, 0x25, 0xd9, 0x0f, 0x48, 0x19, 0x90, +}; +static const unsigned char kat4276_addinpr2[] = { + 0x4a, 0x67, 0x1c, 0x94, 0xbb, 0x87, 0x7b, 0xdb, 0x38, 0x6e, 0xbf, 0x5d, + 0x8f, 0x29, 0xb6, 0x06, 0x7c, 0x79, 0xc5, 0x6a, 0x28, 0x0c, 0x33, 0x4a, + 0xd2, 0x04, 0x49, 0x0d, 0x39, 0x27, 0xc0, 0x98, 0x66, 0xbf, 0x94, 0x9a, + 0x8d, 0x2d, 0x8c, 0x17, 0x8b, 0xe7, 0x51, 0x85, 0x4a, 0x6a, 0x7a, 0x8c, +}; +static const unsigned char kat4276_retbits[] = { + 0x72, 0x60, 0x9d, 0xdc, 0x26, 0x10, 0x19, 0xc1, 0xeb, 0x92, 0x7b, 0x81, + 0x3a, 0x91, 0x52, 0x44, 0x8e, 0x88, 0xf2, 0xfe, 0xcd, 0x7b, 0xb3, 0x32, + 0x80, 0x63, 0x7c, 0x4e, 0x32, 0xff, 0x4c, 0x1d, 0xd4, 0xa6, 0x65, 0xa6, + 0x97, 0xa1, 0x74, 0xf6, 0x71, 0x7e, 0xca, 0x30, 0x98, 0x1b, 0x70, 0xe0, + 0x43, 0xea, 0x28, 0x6d, 0xc4, 0x53, 0x01, 0x4d, 0x15, 0x38, 0x9e, 0xcf, + 0x7c, 0x80, 0xe5, 0xb3, +}; +static const struct drbg_kat_pr_true kat4276_t = { + 0, kat4276_entropyin, kat4276_nonce, kat4276_persstr, + kat4276_entropyinpr1, kat4276_addinpr1, kat4276_entropyinpr2, + kat4276_addinpr2, kat4276_retbits +}; +static const struct drbg_kat kat4276 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4276_t +}; + +static const unsigned char kat4277_entropyin[] = { + 0x8b, 0x95, 0x99, 0x03, 0xda, 0x42, 0x5d, 0x7b, 0x6f, 0xd2, 0x0a, 0x3b, + 0x58, 0x77, 0x3d, 0x3a, 0x69, 0x11, 0x68, 0xc7, 0x65, 0xe0, 0x31, 0x77, + 0x6e, 0x8d, 0x4f, 0x01, 0x72, 0x08, 0xe1, 0xfc, 0x51, 0x10, 0xe5, 0xd8, + 0x66, 0x7d, 0xba, 0x0a, 0xf4, 0x0a, 0x10, 0x64, 0x1f, 0x95, 0xf5, 0x5c, +}; +static const unsigned char kat4277_nonce[] = {0}; +static const unsigned char kat4277_persstr[] = {0}; +static const unsigned char kat4277_entropyinpr1[] = { + 0x97, 0xf3, 0xdf, 0x25, 0x4d, 0x0d, 0xe1, 0x00, 0x5f, 0xfe, 0xee, 0xf0, + 0x6a, 0xbb, 0xad, 0xee, 0x5f, 0xf8, 0x7f, 0x16, 0x19, 0xf7, 0x4a, 0xb2, + 0x71, 0xba, 0x3d, 0x35, 0xda, 0x3e, 0x3e, 0xde, 0xcc, 0xe5, 0x7c, 0x6e, + 0xe5, 0x65, 0x47, 0x84, 0x50, 0xac, 0xfa, 0xeb, 0xb8, 0x9f, 0x3a, 0xe3, +}; +static const unsigned char kat4277_addinpr1[] = { + 0x1b, 0xe3, 0xe0, 0x2b, 0x0a, 0x53, 0xf4, 0xc5, 0x0a, 0x5e, 0x2f, 0x48, + 0xf7, 0x53, 0x37, 0x14, 0xf8, 0x26, 0xdc, 0xb1, 0x6d, 0x11, 0x9f, 0xdc, + 0x70, 0xb9, 0x10, 0x58, 0x4b, 0x65, 0x4f, 0xd8, 0xd4, 0x1b, 0xfc, 0xc7, + 0xa6, 0x06, 0x0b, 0x38, 0x08, 0x94, 0x66, 0xbb, 0x3f, 0xe3, 0x4e, 0xa2, +}; +static const unsigned char kat4277_entropyinpr2[] = { + 0xf4, 0xa2, 0x40, 0x99, 0xc1, 0x85, 0x98, 0x07, 0x9d, 0xce, 0xe0, 0x20, + 0xc0, 0xef, 0x54, 0x48, 0xfc, 0x0f, 0x30, 0x60, 0x22, 0xae, 0xc8, 0xe8, + 0x1b, 0x1d, 0x87, 0x74, 0xc2, 0x73, 0xbd, 0x9a, 0xb5, 0x25, 0x03, 0x5b, + 0xed, 0x01, 0xd3, 0xce, 0x01, 0x97, 0xbd, 0xc4, 0x86, 0x98, 0x1e, 0x5d, +}; +static const unsigned char kat4277_addinpr2[] = { + 0x0c, 0xb1, 0xd5, 0x22, 0xf2, 0x9a, 0x13, 0xd5, 0x71, 0x49, 0x17, 0xd6, + 0x45, 0x67, 0xb4, 0xe3, 0xb1, 0x6e, 0xdb, 0xfa, 0xc4, 0xd8, 0x74, 0x8e, + 0x6f, 0x24, 0x26, 0x03, 0x1f, 0x3e, 0x3c, 0x73, 0xab, 0xa6, 0x55, 0xbc, + 0x3e, 0x61, 0xfe, 0x2f, 0x91, 0x34, 0x78, 0x7a, 0x99, 0x3d, 0x88, 0x19, +}; +static const unsigned char kat4277_retbits[] = { + 0x94, 0xa4, 0x3f, 0x51, 0x3a, 0xa6, 0xe5, 0x3b, 0x2b, 0xd0, 0x86, 0xb8, + 0x80, 0xd1, 0x88, 0x4d, 0x1c, 0x59, 0x2e, 0x24, 0xa6, 0x4c, 0x98, 0xe1, + 0x2e, 0x89, 0xb2, 0x09, 0xf1, 0x53, 0xeb, 0x5d, 0x34, 0x79, 0x9d, 0x32, + 0x34, 0xaa, 0xfb, 0xfc, 0x99, 0xf9, 0x47, 0x88, 0x82, 0x0d, 0x30, 0x5f, + 0x30, 0xda, 0xaf, 0x79, 0x43, 0x66, 0x9d, 0xa1, 0x72, 0x6c, 0xa6, 0xd7, + 0x33, 0x0a, 0x7c, 0x21, +}; +static const struct drbg_kat_pr_true kat4277_t = { + 1, kat4277_entropyin, kat4277_nonce, kat4277_persstr, + kat4277_entropyinpr1, kat4277_addinpr1, kat4277_entropyinpr2, + kat4277_addinpr2, kat4277_retbits +}; +static const struct drbg_kat kat4277 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4277_t +}; + +static const unsigned char kat4278_entropyin[] = { + 0x47, 0xec, 0x21, 0x75, 0xf4, 0xc8, 0x9f, 0x51, 0x39, 0x35, 0x4d, 0x92, + 0x91, 0x48, 0x8e, 0x54, 0x3b, 0xfa, 0xf2, 0x23, 0x60, 0x66, 0xe3, 0x04, + 0x1d, 0xab, 0x42, 0xe2, 0x85, 0x45, 0xa3, 0xa7, 0xb3, 0xc8, 0xa1, 0x00, + 0x97, 0x7e, 0x94, 0x1f, 0xf8, 0x8c, 0xaa, 0x19, 0x95, 0x35, 0xd6, 0x51, +}; +static const unsigned char kat4278_nonce[] = {0}; +static const unsigned char kat4278_persstr[] = {0}; +static const unsigned char kat4278_entropyinpr1[] = { + 0x51, 0x09, 0xe5, 0xdc, 0x6e, 0xb9, 0x77, 0x58, 0x47, 0x5b, 0x31, 0x1a, + 0xf2, 0x74, 0x54, 0xdf, 0xcd, 0x57, 0x3f, 0x19, 0x21, 0x45, 0xef, 0x5a, + 0x3a, 0xbd, 0x4f, 0x37, 0xee, 0x25, 0x8b, 0x71, 0xe6, 0xf7, 0x0a, 0x4e, + 0x99, 0xb3, 0xd8, 0xb9, 0xd9, 0x22, 0xcc, 0x05, 0x7e, 0x6a, 0xcd, 0x23, +}; +static const unsigned char kat4278_addinpr1[] = { + 0x5b, 0xae, 0x2b, 0x9b, 0x60, 0xb6, 0x4f, 0xf6, 0xe1, 0xe9, 0xa0, 0x75, + 0xaa, 0x62, 0x8e, 0xa1, 0x50, 0xff, 0xda, 0xd5, 0x5e, 0xca, 0x43, 0xe5, + 0xfc, 0x1f, 0x37, 0xba, 0x64, 0x5c, 0xad, 0x6a, 0x0e, 0xa6, 0x9a, 0x28, + 0x84, 0xd6, 0xfc, 0xa3, 0xd1, 0x4e, 0x37, 0x5b, 0xe1, 0x06, 0x53, 0xd3, +}; +static const unsigned char kat4278_entropyinpr2[] = { + 0xdd, 0x86, 0x89, 0x9f, 0x8d, 0xbf, 0xef, 0xa8, 0xdf, 0xe5, 0xbf, 0x82, + 0x47, 0x0f, 0x88, 0xac, 0x86, 0xb6, 0x9a, 0x5f, 0xe8, 0x59, 0x76, 0xdd, + 0x0d, 0x0f, 0x52, 0x0c, 0xd6, 0x64, 0x73, 0x3c, 0xfa, 0x38, 0x77, 0xb8, + 0xee, 0x17, 0x42, 0xa6, 0xae, 0x2e, 0xdd, 0x21, 0xf5, 0x72, 0x51, 0x02, +}; +static const unsigned char kat4278_addinpr2[] = { + 0xe8, 0xae, 0x05, 0xc5, 0x25, 0x11, 0x3d, 0xa8, 0xd8, 0x26, 0x60, 0xde, + 0x3d, 0x5c, 0x57, 0xe1, 0x15, 0xdb, 0xd3, 0x6c, 0x45, 0x6a, 0x7e, 0xcc, + 0x70, 0x4b, 0x17, 0x07, 0xc0, 0x29, 0xe8, 0xa3, 0x48, 0x6f, 0xea, 0x29, + 0xe9, 0xef, 0x9b, 0x97, 0xc5, 0x89, 0xea, 0x7b, 0x1a, 0xcd, 0x6c, 0x1d, +}; +static const unsigned char kat4278_retbits[] = { + 0x93, 0xf1, 0xa0, 0xf2, 0x94, 0x97, 0x48, 0xaf, 0x4a, 0x0e, 0x03, 0x75, + 0x15, 0x52, 0x9b, 0x21, 0x21, 0x3e, 0x09, 0xc8, 0xb4, 0x45, 0xac, 0xa0, + 0x27, 0x9c, 0xd1, 0xb2, 0x0d, 0xa9, 0x05, 0x02, 0x2e, 0x87, 0x05, 0x59, + 0x44, 0x80, 0x8a, 0x63, 0x51, 0xaa, 0x09, 0xca, 0xec, 0xa2, 0x26, 0x3e, + 0x22, 0x2e, 0xf2, 0x97, 0x7d, 0xbc, 0xc9, 0x4d, 0xeb, 0x52, 0x24, 0x9e, + 0xa7, 0x59, 0xc5, 0x2a, +}; +static const struct drbg_kat_pr_true kat4278_t = { + 2, kat4278_entropyin, kat4278_nonce, kat4278_persstr, + kat4278_entropyinpr1, kat4278_addinpr1, kat4278_entropyinpr2, + kat4278_addinpr2, kat4278_retbits +}; +static const struct drbg_kat kat4278 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4278_t +}; + +static const unsigned char kat4279_entropyin[] = { + 0x43, 0x4b, 0xf4, 0x6e, 0xaa, 0x21, 0xd0, 0xc1, 0x4a, 0x14, 0xad, 0x59, + 0xa4, 0x77, 0x56, 0xa8, 0xfd, 0xdb, 0xaa, 0x7d, 0xda, 0x32, 0xdc, 0x85, + 0x34, 0x89, 0xee, 0xe8, 0x13, 0xdd, 0x4e, 0x23, 0xe9, 0xe6, 0x5d, 0xb4, + 0x16, 0x2c, 0x61, 0x8b, 0x04, 0xae, 0xe7, 0x93, 0x63, 0x1c, 0x14, 0x32, +}; +static const unsigned char kat4279_nonce[] = {0}; +static const unsigned char kat4279_persstr[] = {0}; +static const unsigned char kat4279_entropyinpr1[] = { + 0xd9, 0x6b, 0x6a, 0x0b, 0xbf, 0xac, 0x34, 0x0b, 0x3e, 0x99, 0x54, 0x72, + 0xf2, 0x9f, 0x91, 0x20, 0xe1, 0xf1, 0x72, 0x04, 0x10, 0x11, 0xe2, 0xaf, + 0x1f, 0xe4, 0x63, 0xf2, 0x5b, 0x34, 0x67, 0x1b, 0x08, 0xdc, 0xb8, 0x14, + 0xd5, 0x9a, 0x9f, 0xac, 0x56, 0x9c, 0x50, 0xc0, 0xf5, 0xb5, 0xd3, 0x15, +}; +static const unsigned char kat4279_addinpr1[] = { + 0x6f, 0xd3, 0x50, 0x49, 0xd8, 0x90, 0x5a, 0x16, 0x4e, 0xec, 0x42, 0x66, + 0xe0, 0x01, 0x8f, 0x2a, 0xef, 0xf0, 0xb9, 0x50, 0x72, 0x5d, 0xd8, 0x83, + 0xce, 0xf0, 0xf1, 0x5b, 0xb4, 0x97, 0xf9, 0x26, 0xa0, 0x2c, 0x18, 0x1d, + 0xe5, 0x4a, 0x8f, 0xd8, 0x76, 0x51, 0x86, 0x7c, 0xad, 0x1a, 0x28, 0x37, +}; +static const unsigned char kat4279_entropyinpr2[] = { + 0x51, 0x49, 0x0b, 0xbf, 0x6c, 0xc4, 0xdb, 0x8f, 0xd8, 0xe4, 0x0f, 0x77, + 0x51, 0x60, 0xbc, 0x44, 0x70, 0xc4, 0x5c, 0x83, 0x94, 0x59, 0xda, 0xb1, + 0xf7, 0x65, 0x4a, 0x99, 0x5b, 0xa7, 0xd7, 0x1f, 0x54, 0x28, 0x94, 0xc9, + 0xb4, 0xb6, 0x95, 0x94, 0x90, 0x02, 0x3a, 0x87, 0x15, 0x81, 0x99, 0xe4, +}; +static const unsigned char kat4279_addinpr2[] = { + 0x1a, 0xe5, 0x0c, 0x2f, 0xb8, 0x05, 0x75, 0xff, 0xf8, 0xbd, 0x2a, 0x88, + 0xe8, 0xe0, 0xfa, 0xa3, 0x90, 0x63, 0x44, 0x66, 0x9c, 0x20, 0x45, 0x36, + 0x6b, 0x64, 0x5c, 0x3d, 0x6a, 0xfc, 0x26, 0x6d, 0xc9, 0x63, 0x87, 0xf2, + 0xe7, 0x06, 0x8f, 0x02, 0xe3, 0x82, 0x1b, 0x79, 0xec, 0x6c, 0x2e, 0x94, +}; +static const unsigned char kat4279_retbits[] = { + 0xcf, 0x3c, 0x63, 0xf9, 0xe4, 0x53, 0x54, 0x4f, 0x03, 0x26, 0xa9, 0x26, + 0xd7, 0xf2, 0x69, 0x70, 0x41, 0x32, 0x0d, 0x49, 0x43, 0x3a, 0x6a, 0xd9, + 0x18, 0x4d, 0x13, 0x27, 0xbe, 0x4c, 0xb6, 0x17, 0x0b, 0x65, 0xe3, 0xdb, + 0x08, 0x5c, 0xee, 0x87, 0x12, 0xb4, 0x38, 0x75, 0xa1, 0x85, 0xd1, 0xe4, + 0x61, 0xa6, 0xa4, 0x63, 0xac, 0x32, 0x31, 0x89, 0x79, 0xa2, 0xfe, 0x56, + 0x4b, 0x38, 0x6c, 0x0a, +}; +static const struct drbg_kat_pr_true kat4279_t = { + 3, kat4279_entropyin, kat4279_nonce, kat4279_persstr, + kat4279_entropyinpr1, kat4279_addinpr1, kat4279_entropyinpr2, + kat4279_addinpr2, kat4279_retbits +}; +static const struct drbg_kat kat4279 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4279_t +}; + +static const unsigned char kat4280_entropyin[] = { + 0x45, 0x52, 0x1c, 0x7b, 0x48, 0x90, 0xa4, 0x33, 0xcc, 0xfd, 0xd6, 0xd1, + 0x52, 0xec, 0xba, 0x50, 0xe5, 0xf1, 0x32, 0xef, 0xa0, 0x36, 0x5f, 0xe2, + 0x87, 0xaf, 0xf0, 0xea, 0x38, 0x20, 0x99, 0x71, 0xa2, 0xb2, 0x84, 0x0a, + 0xff, 0xd4, 0xcb, 0x4e, 0x44, 0x0f, 0x59, 0x2f, 0x71, 0x17, 0x24, 0xae, +}; +static const unsigned char kat4280_nonce[] = {0}; +static const unsigned char kat4280_persstr[] = {0}; +static const unsigned char kat4280_entropyinpr1[] = { + 0x14, 0xe9, 0xde, 0x9a, 0x39, 0x21, 0x6e, 0xa8, 0xb3, 0xbe, 0xb5, 0x17, + 0x5b, 0xb7, 0xdc, 0x2e, 0xab, 0xc7, 0x9d, 0x5b, 0x19, 0x31, 0x14, 0x59, + 0xb0, 0x3d, 0x84, 0xc1, 0x86, 0x75, 0x67, 0xa5, 0x4c, 0x57, 0xd1, 0xd5, + 0xba, 0x5f, 0xbc, 0xa2, 0xb3, 0xeb, 0x3d, 0xe7, 0x3d, 0x2b, 0xe4, 0x3e, +}; +static const unsigned char kat4280_addinpr1[] = { + 0x2e, 0x60, 0x25, 0x9c, 0xa1, 0xc4, 0x9d, 0xce, 0x14, 0xc7, 0xe3, 0x1f, + 0x7d, 0xe9, 0x5e, 0x25, 0xf6, 0xfd, 0x49, 0xfa, 0x10, 0x0e, 0x32, 0x5b, + 0x1e, 0xf0, 0xf0, 0xed, 0x72, 0xf7, 0xc0, 0x1e, 0x4d, 0x13, 0x72, 0xf6, + 0xab, 0x0d, 0x87, 0xfb, 0x45, 0xcd, 0x59, 0x49, 0xa4, 0x93, 0xa7, 0x9b, +}; +static const unsigned char kat4280_entropyinpr2[] = { + 0x6a, 0x2f, 0x83, 0x9f, 0x86, 0xd1, 0x6a, 0x06, 0x13, 0xb7, 0x7e, 0x71, + 0x0f, 0x44, 0x4d, 0x96, 0x39, 0x1f, 0x9e, 0xf4, 0x89, 0x4e, 0x29, 0xa8, + 0xd2, 0x37, 0xee, 0xa5, 0x3c, 0xe2, 0x9a, 0x2d, 0xbf, 0xcb, 0x6d, 0x4f, + 0x26, 0x77, 0x62, 0x27, 0x99, 0x65, 0xab, 0x21, 0xc9, 0x3a, 0xa8, 0x55, +}; +static const unsigned char kat4280_addinpr2[] = { + 0x13, 0x66, 0x65, 0xeb, 0x10, 0x86, 0x3d, 0xc7, 0xc3, 0xc2, 0x30, 0x01, + 0x25, 0x84, 0x34, 0xff, 0x7a, 0x1a, 0xab, 0xd8, 0x76, 0xe2, 0x98, 0x93, + 0x0d, 0x6f, 0xc6, 0xb0, 0x5f, 0xf0, 0x4f, 0xce, 0xe3, 0xf0, 0x77, 0x3b, + 0xf4, 0x02, 0xb0, 0x98, 0x71, 0x60, 0x06, 0x2c, 0x1a, 0xb9, 0x0b, 0x95, +}; +static const unsigned char kat4280_retbits[] = { + 0x86, 0xe6, 0x6f, 0x97, 0xc0, 0x56, 0xc1, 0xec, 0xc4, 0x72, 0xb9, 0xb9, + 0x4b, 0x34, 0x74, 0xb8, 0x36, 0x64, 0xa4, 0xaf, 0xe1, 0x77, 0x86, 0x02, + 0xd0, 0xac, 0x05, 0x00, 0x79, 0x94, 0x97, 0x0a, 0x85, 0xa2, 0x9d, 0xd4, + 0xa8, 0x07, 0xab, 0x17, 0x13, 0x0b, 0xc4, 0x9b, 0x9f, 0x11, 0xee, 0x6f, + 0xa7, 0x84, 0xab, 0x1d, 0xc1, 0xe6, 0x4b, 0x15, 0xda, 0x8a, 0xe7, 0xa5, + 0x9d, 0xe9, 0x11, 0x73, +}; +static const struct drbg_kat_pr_true kat4280_t = { + 4, kat4280_entropyin, kat4280_nonce, kat4280_persstr, + kat4280_entropyinpr1, kat4280_addinpr1, kat4280_entropyinpr2, + kat4280_addinpr2, kat4280_retbits +}; +static const struct drbg_kat kat4280 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4280_t +}; + +static const unsigned char kat4281_entropyin[] = { + 0xbd, 0x3f, 0x6e, 0xa9, 0x94, 0xf7, 0x48, 0xf0, 0x4d, 0x32, 0xcb, 0xe7, + 0xc0, 0x9a, 0xc6, 0x8b, 0xeb, 0x72, 0xd7, 0xe1, 0x68, 0xa1, 0x99, 0x5a, + 0x4d, 0x34, 0x25, 0x8a, 0x61, 0x61, 0x6b, 0x5e, 0x10, 0xa2, 0xc4, 0x2d, + 0xaa, 0xb3, 0xa7, 0x7d, 0x18, 0xcd, 0x35, 0x4d, 0x89, 0x0f, 0x8f, 0x1e, +}; +static const unsigned char kat4281_nonce[] = {0}; +static const unsigned char kat4281_persstr[] = {0}; +static const unsigned char kat4281_entropyinpr1[] = { + 0x46, 0xb0, 0xb2, 0x4c, 0x25, 0x72, 0x67, 0x12, 0x1a, 0xf1, 0x56, 0x14, + 0x8d, 0x08, 0x98, 0x03, 0x79, 0x1b, 0xcd, 0xad, 0xc3, 0xcb, 0x6b, 0x48, + 0x6b, 0x11, 0xe7, 0xc5, 0x9d, 0x8d, 0xbe, 0x37, 0x4c, 0x37, 0xc2, 0xae, + 0xd5, 0x21, 0x0e, 0x7d, 0x3f, 0xcb, 0x02, 0xe7, 0x5c, 0x84, 0xed, 0x07, +}; +static const unsigned char kat4281_addinpr1[] = { + 0x19, 0x3d, 0x29, 0x61, 0x65, 0x4f, 0x8d, 0x29, 0xed, 0x50, 0xd7, 0xc4, + 0xef, 0x10, 0x6f, 0x43, 0x69, 0xbd, 0xa2, 0xe1, 0x8b, 0x11, 0xb3, 0x02, + 0x78, 0xb5, 0x60, 0x0c, 0x2b, 0xf1, 0x78, 0x47, 0x77, 0xe5, 0x90, 0xe7, + 0x5a, 0xa0, 0xb5, 0xb1, 0x1f, 0xc9, 0xa5, 0x74, 0xe7, 0xe9, 0x75, 0xec, +}; +static const unsigned char kat4281_entropyinpr2[] = { + 0xa2, 0x45, 0xfe, 0xf4, 0xc8, 0xf6, 0x31, 0xe3, 0x20, 0xa6, 0x77, 0x30, + 0x32, 0x5d, 0xbf, 0x3b, 0x0d, 0x7e, 0xd2, 0x1f, 0x1b, 0xa9, 0x4f, 0xd4, + 0x55, 0x9e, 0x55, 0xcb, 0x8a, 0x31, 0x58, 0xec, 0xf6, 0x7a, 0x3a, 0x58, + 0xd4, 0x0b, 0x1b, 0x6d, 0x43, 0x84, 0x2a, 0x15, 0xd3, 0x37, 0x19, 0xf9, +}; +static const unsigned char kat4281_addinpr2[] = { + 0x56, 0xf2, 0xc0, 0x7c, 0x15, 0x24, 0x93, 0xa2, 0x5d, 0x58, 0x02, 0x82, + 0x07, 0xb7, 0x48, 0xf2, 0x06, 0x29, 0x4f, 0x91, 0x9e, 0xda, 0x32, 0x75, + 0x2f, 0xa3, 0x9f, 0x2c, 0xce, 0xb5, 0x15, 0x25, 0x33, 0xae, 0xec, 0x98, + 0x74, 0xad, 0x60, 0xef, 0x8b, 0xdb, 0x0c, 0xdf, 0xc2, 0x2d, 0x93, 0x21, +}; +static const unsigned char kat4281_retbits[] = { + 0x05, 0x5f, 0x58, 0xaf, 0xa1, 0xf0, 0xd6, 0x75, 0x5d, 0x01, 0x3c, 0x3c, + 0xb9, 0xbe, 0xef, 0xd5, 0x08, 0x20, 0x67, 0x72, 0x28, 0x74, 0xee, 0x2f, + 0x7b, 0x73, 0x9f, 0xa4, 0x60, 0x8a, 0x67, 0x9e, 0xc1, 0x24, 0xf8, 0x98, + 0x76, 0xb3, 0xd4, 0x45, 0xac, 0xbf, 0x50, 0xe8, 0x06, 0x41, 0x5a, 0xff, + 0x95, 0xa5, 0xab, 0x06, 0xa3, 0x45, 0xa8, 0x66, 0xa4, 0x26, 0xd5, 0x13, + 0x10, 0xf0, 0xcc, 0x8a, +}; +static const struct drbg_kat_pr_true kat4281_t = { + 5, kat4281_entropyin, kat4281_nonce, kat4281_persstr, + kat4281_entropyinpr1, kat4281_addinpr1, kat4281_entropyinpr2, + kat4281_addinpr2, kat4281_retbits +}; +static const struct drbg_kat kat4281 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4281_t +}; + +static const unsigned char kat4282_entropyin[] = { + 0x08, 0x55, 0x1c, 0x18, 0xc6, 0xcd, 0x79, 0x5a, 0xbd, 0x89, 0x18, 0x47, + 0xcb, 0x91, 0x7d, 0x10, 0xc0, 0x94, 0xc3, 0x73, 0x4a, 0xe6, 0x73, 0xf8, + 0x7f, 0xb0, 0x95, 0x7d, 0x95, 0x3d, 0xa6, 0x1f, 0x5b, 0x1e, 0x6c, 0xd4, + 0x83, 0x5e, 0x98, 0x84, 0x53, 0xc4, 0x73, 0x1c, 0x9f, 0xaf, 0x14, 0xa5, +}; +static const unsigned char kat4282_nonce[] = {0}; +static const unsigned char kat4282_persstr[] = {0}; +static const unsigned char kat4282_entropyinpr1[] = { + 0x8c, 0xf2, 0x21, 0xad, 0x9e, 0xe8, 0x51, 0xb3, 0x74, 0x17, 0x2d, 0xd6, + 0x33, 0xde, 0x61, 0x6e, 0x06, 0x49, 0x91, 0xae, 0xab, 0xd7, 0x7a, 0xae, + 0xda, 0x50, 0xf1, 0xba, 0x29, 0x9b, 0xb4, 0x74, 0xd8, 0xc2, 0xa4, 0xde, + 0xc4, 0x53, 0x56, 0xd8, 0x44, 0x27, 0xe6, 0xc8, 0x34, 0x54, 0xab, 0x95, +}; +static const unsigned char kat4282_addinpr1[] = { + 0xbe, 0x86, 0xfd, 0x4f, 0xbf, 0x5a, 0x23, 0x45, 0xb8, 0xf5, 0xeb, 0x10, + 0x7c, 0xa6, 0x4e, 0x0b, 0x67, 0x55, 0xa2, 0x51, 0x26, 0x38, 0x3d, 0xe4, + 0x74, 0x35, 0x6d, 0xcc, 0xa1, 0x72, 0xcb, 0x06, 0x0b, 0x99, 0x82, 0x36, + 0x67, 0x2b, 0xe8, 0xd7, 0xe5, 0xc3, 0x31, 0x26, 0x94, 0xb8, 0xad, 0x85, +}; +static const unsigned char kat4282_entropyinpr2[] = { + 0xa0, 0x66, 0x8f, 0xe1, 0xc5, 0xda, 0x6b, 0x19, 0x17, 0x1a, 0x82, 0x85, + 0x27, 0x6b, 0x45, 0xcc, 0x83, 0xb3, 0xb2, 0x3a, 0x33, 0x57, 0xfb, 0x64, + 0x26, 0x84, 0xb3, 0xee, 0xaa, 0xe1, 0x09, 0xb3, 0x58, 0x6b, 0x74, 0x8b, + 0xb8, 0xbb, 0xee, 0xb7, 0x33, 0x3c, 0x7b, 0x37, 0x51, 0x20, 0x8e, 0x1c, +}; +static const unsigned char kat4282_addinpr2[] = { + 0x5d, 0x6b, 0xe1, 0x1e, 0xd1, 0x75, 0x58, 0x4b, 0x48, 0x0f, 0xff, 0x76, + 0x34, 0x75, 0xc5, 0x70, 0x12, 0x6b, 0xa9, 0xfa, 0x57, 0xa2, 0x4d, 0x11, + 0xce, 0xa8, 0xd3, 0xb0, 0xbe, 0xb3, 0x65, 0xbc, 0x51, 0x4c, 0xce, 0x37, + 0x58, 0x2d, 0x44, 0xc6, 0xa5, 0x15, 0xdc, 0x4e, 0x77, 0xbb, 0xdc, 0x09, +}; +static const unsigned char kat4282_retbits[] = { + 0xd4, 0x50, 0x1f, 0x95, 0xba, 0xb4, 0x5a, 0xb1, 0xc2, 0xb3, 0xea, 0x60, + 0x24, 0x09, 0x06, 0xa5, 0xa7, 0xc3, 0xa8, 0x5d, 0xd9, 0x9c, 0x45, 0x7a, + 0x0c, 0xcb, 0x9c, 0xd8, 0x7c, 0x87, 0x91, 0xfd, 0x36, 0xac, 0xf7, 0xaf, + 0x38, 0x2c, 0xf3, 0x96, 0x96, 0x7d, 0x7c, 0x7e, 0x17, 0xe6, 0xf7, 0x86, + 0x44, 0x6f, 0xca, 0x44, 0xd8, 0x5d, 0x16, 0x98, 0xef, 0xc0, 0xce, 0xa9, + 0x5a, 0xdd, 0x29, 0x36, +}; +static const struct drbg_kat_pr_true kat4282_t = { + 6, kat4282_entropyin, kat4282_nonce, kat4282_persstr, + kat4282_entropyinpr1, kat4282_addinpr1, kat4282_entropyinpr2, + kat4282_addinpr2, kat4282_retbits +}; +static const struct drbg_kat kat4282 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4282_t +}; + +static const unsigned char kat4283_entropyin[] = { + 0xc1, 0x3f, 0xaa, 0x09, 0x80, 0xc9, 0x36, 0xf7, 0x74, 0xf2, 0x7e, 0x74, + 0xe0, 0x3f, 0xf8, 0xc5, 0x09, 0x8b, 0x38, 0x67, 0x46, 0x01, 0x60, 0xa7, + 0xb6, 0x8a, 0x32, 0xd6, 0xb3, 0xfd, 0xf1, 0x76, 0x56, 0xd8, 0x9a, 0xa9, + 0x94, 0xe3, 0xf1, 0x51, 0x76, 0xdd, 0xa8, 0xd2, 0x3c, 0xa2, 0x1f, 0x55, +}; +static const unsigned char kat4283_nonce[] = {0}; +static const unsigned char kat4283_persstr[] = {0}; +static const unsigned char kat4283_entropyinpr1[] = { + 0x43, 0x33, 0x5f, 0xc7, 0xd4, 0x32, 0xbd, 0x49, 0x04, 0xfe, 0x35, 0x28, + 0x0f, 0xe6, 0x61, 0x72, 0xe5, 0x27, 0x99, 0x44, 0xe3, 0x1d, 0x38, 0xba, + 0x64, 0x7a, 0x99, 0x8a, 0x23, 0x2b, 0xa2, 0x5a, 0x62, 0x58, 0x05, 0xa0, + 0x92, 0x00, 0x58, 0x47, 0xae, 0x3b, 0x7e, 0xe4, 0x66, 0x96, 0xc6, 0xee, +}; +static const unsigned char kat4283_addinpr1[] = { + 0x77, 0x95, 0x4e, 0x74, 0x04, 0xcf, 0x5b, 0xdb, 0xeb, 0xf4, 0x42, 0x9e, + 0x43, 0xf6, 0x38, 0x5e, 0x3e, 0x77, 0xaa, 0xd0, 0x64, 0x16, 0x31, 0xaf, + 0x3e, 0xe1, 0x2f, 0xbd, 0xc0, 0xf4, 0xa7, 0x48, 0x57, 0x30, 0x2c, 0x80, + 0x5a, 0xcc, 0xa1, 0xc5, 0x56, 0xc3, 0x20, 0xd6, 0xca, 0xa0, 0xcb, 0x2e, +}; +static const unsigned char kat4283_entropyinpr2[] = { + 0xba, 0x19, 0x25, 0x2c, 0xf5, 0xff, 0x90, 0x17, 0x91, 0x86, 0xe9, 0xaa, + 0x1d, 0x08, 0x96, 0x9e, 0x8e, 0x79, 0xe5, 0xa6, 0x1c, 0x54, 0xb9, 0x07, + 0xc9, 0x16, 0x34, 0x69, 0x4b, 0x06, 0xc7, 0x3c, 0x62, 0xaf, 0xe8, 0x37, + 0x6a, 0xa9, 0xf3, 0x99, 0x38, 0x21, 0xba, 0xd5, 0x76, 0xf5, 0x9d, 0x9e, +}; +static const unsigned char kat4283_addinpr2[] = { + 0xb7, 0x7e, 0x35, 0xb4, 0x1c, 0xa8, 0xc0, 0x6a, 0xae, 0x16, 0x4e, 0xb2, + 0xfd, 0x75, 0x1b, 0x4d, 0x0b, 0x0a, 0x8e, 0xf2, 0x9e, 0xd0, 0x7c, 0x71, + 0xb6, 0xf7, 0xab, 0x5e, 0xe1, 0x6d, 0x67, 0xff, 0x02, 0x56, 0xf7, 0x4d, + 0xd9, 0x5c, 0x78, 0x9c, 0xb5, 0x38, 0x2c, 0x03, 0x01, 0xe2, 0xd6, 0xa8, +}; +static const unsigned char kat4283_retbits[] = { + 0x18, 0x27, 0xb8, 0xd2, 0xae, 0x59, 0xdb, 0x2d, 0x9f, 0x4b, 0xe5, 0x14, + 0x17, 0x82, 0x6e, 0xa7, 0x83, 0x36, 0x23, 0x8a, 0x7f, 0x0c, 0xbb, 0xc8, + 0x04, 0x8f, 0x2d, 0xa3, 0x93, 0x24, 0x44, 0xa2, 0x0a, 0x3e, 0x17, 0xf5, + 0x6a, 0x34, 0xef, 0x72, 0x72, 0x77, 0x32, 0x15, 0x0c, 0x81, 0xf4, 0xc5, + 0xa9, 0x65, 0x33, 0xe3, 0xfb, 0x87, 0x2b, 0xe8, 0x7e, 0x0b, 0x8b, 0x85, + 0x0d, 0xc8, 0x5e, 0x1c, +}; +static const struct drbg_kat_pr_true kat4283_t = { + 7, kat4283_entropyin, kat4283_nonce, kat4283_persstr, + kat4283_entropyinpr1, kat4283_addinpr1, kat4283_entropyinpr2, + kat4283_addinpr2, kat4283_retbits +}; +static const struct drbg_kat kat4283 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4283_t +}; + +static const unsigned char kat4284_entropyin[] = { + 0xb6, 0x55, 0xcc, 0x6a, 0x23, 0xe5, 0x09, 0x20, 0x27, 0x85, 0x25, 0x95, + 0xb1, 0xa9, 0x36, 0x83, 0x1d, 0x96, 0x0a, 0x2b, 0x7f, 0xc9, 0xc1, 0x03, + 0x8c, 0xb7, 0x04, 0x8b, 0x88, 0x8b, 0xbf, 0x72, 0xba, 0x06, 0x70, 0x89, + 0x34, 0x92, 0x45, 0x82, 0xca, 0x49, 0xd1, 0xe7, 0xa8, 0xf1, 0x95, 0x04, +}; +static const unsigned char kat4284_nonce[] = {0}; +static const unsigned char kat4284_persstr[] = {0}; +static const unsigned char kat4284_entropyinpr1[] = { + 0x3d, 0x0d, 0xab, 0x5d, 0x34, 0x16, 0xcd, 0x8b, 0x3b, 0xb5, 0x65, 0x61, + 0x7a, 0xd0, 0x52, 0x5e, 0x7e, 0xea, 0x2d, 0x8d, 0x81, 0xeb, 0x2f, 0x08, + 0xe1, 0xdc, 0xea, 0xd8, 0x10, 0x90, 0x4e, 0xa8, 0x86, 0xaa, 0xe2, 0x33, + 0x14, 0xe2, 0xe5, 0x6f, 0xc1, 0x84, 0xf2, 0x71, 0x5c, 0xc8, 0x05, 0xe9, +}; +static const unsigned char kat4284_addinpr1[] = { + 0xb3, 0x34, 0x20, 0x61, 0x12, 0xbe, 0x7d, 0x8e, 0x06, 0xee, 0xf7, 0x79, + 0xd3, 0xab, 0xbe, 0xf7, 0x0b, 0xbf, 0xb6, 0x2a, 0xa1, 0x68, 0x7c, 0x93, + 0xee, 0x59, 0x11, 0x25, 0xc9, 0x31, 0x2f, 0x6a, 0xf6, 0x38, 0x9b, 0xe4, + 0xe2, 0xfb, 0x78, 0x33, 0x5d, 0x1b, 0xc0, 0x53, 0x56, 0x9f, 0xc7, 0x68, +}; +static const unsigned char kat4284_entropyinpr2[] = { + 0x6a, 0x80, 0x36, 0x75, 0x67, 0x60, 0x95, 0xa5, 0x7e, 0x08, 0x4d, 0x81, + 0xd7, 0x74, 0xd7, 0x8d, 0x51, 0x66, 0x41, 0x16, 0x53, 0x43, 0xdc, 0x8f, + 0xb8, 0x07, 0x31, 0x14, 0x4d, 0x75, 0x83, 0xe1, 0x6f, 0xa5, 0x48, 0x21, + 0xea, 0x5b, 0xdd, 0xdb, 0x38, 0x64, 0x59, 0xd3, 0x6a, 0xfb, 0x16, 0xe1, +}; +static const unsigned char kat4284_addinpr2[] = { + 0xb4, 0xd7, 0x40, 0xdd, 0xa6, 0x16, 0x13, 0xef, 0x19, 0x5f, 0xe8, 0xf8, + 0x74, 0x50, 0x79, 0xf5, 0xce, 0x1e, 0xe7, 0xb4, 0xbf, 0x1b, 0xbb, 0x1e, + 0x25, 0xd9, 0xf7, 0x52, 0xf2, 0x71, 0xef, 0xe8, 0x3e, 0xdc, 0x1f, 0xc7, + 0xce, 0x4c, 0xcc, 0xfc, 0xfb, 0xbd, 0xfe, 0x85, 0xd7, 0x66, 0xe5, 0x9b, +}; +static const unsigned char kat4284_retbits[] = { + 0x43, 0x52, 0x01, 0xc9, 0x27, 0xfe, 0xdd, 0xa6, 0x74, 0x5c, 0x7d, 0x4b, + 0x8b, 0x3e, 0xf9, 0x7b, 0xa4, 0x91, 0x60, 0xff, 0xf2, 0xdf, 0xa5, 0x6a, + 0xb8, 0xf5, 0x00, 0xfb, 0x91, 0x3c, 0x5d, 0x34, 0xfc, 0xe8, 0x33, 0x17, + 0xba, 0x60, 0x58, 0x6c, 0x30, 0xd7, 0x38, 0x0b, 0xab, 0x9a, 0x05, 0x0d, + 0x0e, 0x11, 0x1f, 0x0b, 0x38, 0x1f, 0x88, 0x09, 0x8b, 0x98, 0x0c, 0xfa, + 0xc0, 0x9d, 0x73, 0x75, +}; +static const struct drbg_kat_pr_true kat4284_t = { + 8, kat4284_entropyin, kat4284_nonce, kat4284_persstr, + kat4284_entropyinpr1, kat4284_addinpr1, kat4284_entropyinpr2, + kat4284_addinpr2, kat4284_retbits +}; +static const struct drbg_kat kat4284 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4284_t +}; + +static const unsigned char kat4285_entropyin[] = { + 0xad, 0xe9, 0x82, 0xb1, 0x13, 0x76, 0x9a, 0x15, 0x46, 0x57, 0x11, 0xcf, + 0x71, 0x26, 0x3d, 0xc8, 0x53, 0x9d, 0x75, 0xd4, 0x4d, 0x5d, 0x01, 0xc8, + 0xe1, 0xc6, 0xb6, 0xf3, 0xca, 0x0b, 0xb4, 0x29, 0xd2, 0x8a, 0x3d, 0xd0, + 0x23, 0x2c, 0xa4, 0xb5, 0x2a, 0x7f, 0x78, 0xb8, 0x1a, 0x39, 0x58, 0x5f, +}; +static const unsigned char kat4285_nonce[] = {0}; +static const unsigned char kat4285_persstr[] = {0}; +static const unsigned char kat4285_entropyinpr1[] = { + 0xfd, 0x17, 0x95, 0x31, 0x5d, 0x41, 0x62, 0x61, 0xf0, 0x43, 0x24, 0xba, + 0x0e, 0xaa, 0xac, 0x2f, 0xd8, 0x36, 0x12, 0x5e, 0x78, 0x61, 0x18, 0xbd, + 0x4a, 0xd4, 0x85, 0x7d, 0xab, 0xc8, 0xa5, 0x10, 0x09, 0x4a, 0x48, 0xdb, + 0x1f, 0xec, 0x1c, 0xfd, 0xef, 0x90, 0x98, 0x07, 0xe1, 0x2d, 0x6a, 0xbf, +}; +static const unsigned char kat4285_addinpr1[] = { + 0xd6, 0xfd, 0x18, 0x0e, 0x56, 0x56, 0x2a, 0x41, 0x6f, 0x1b, 0xd0, 0x0e, + 0x39, 0x23, 0xd9, 0x3d, 0xb9, 0xf4, 0x15, 0x4e, 0x2b, 0x58, 0xe5, 0x7c, + 0x6e, 0x83, 0x36, 0x44, 0x5d, 0xf3, 0xfe, 0x68, 0x26, 0x51, 0xba, 0xec, + 0xd8, 0x43, 0x7f, 0xce, 0x06, 0x7a, 0x46, 0x7b, 0x44, 0x8b, 0xe2, 0x38, +}; +static const unsigned char kat4285_entropyinpr2[] = { + 0x49, 0xae, 0x3e, 0x32, 0x3a, 0x72, 0xac, 0xf2, 0x49, 0x48, 0xd8, 0x52, + 0x84, 0x36, 0x19, 0xb5, 0xcc, 0xa9, 0x98, 0x8a, 0x61, 0x1c, 0x90, 0xbb, + 0xa2, 0x3f, 0xf4, 0xae, 0xef, 0xec, 0x49, 0xf2, 0xb5, 0xc9, 0x7c, 0x7d, + 0xb7, 0x28, 0x1a, 0xa3, 0x92, 0xa4, 0x0e, 0x2d, 0x04, 0x88, 0x73, 0xdc, +}; +static const unsigned char kat4285_addinpr2[] = { + 0x87, 0x53, 0x50, 0x6f, 0x14, 0xd6, 0xda, 0x4a, 0x8f, 0xa7, 0x13, 0x3c, + 0x92, 0x0c, 0xfe, 0x5a, 0x67, 0xc4, 0xdc, 0x37, 0x53, 0xa2, 0x85, 0xd7, + 0x61, 0xbe, 0xee, 0x41, 0xf6, 0x3a, 0x46, 0x86, 0x40, 0xd2, 0x81, 0x0a, + 0x37, 0xd9, 0x52, 0xa6, 0x63, 0x3b, 0xbe, 0x8c, 0xad, 0x02, 0x64, 0x03, +}; +static const unsigned char kat4285_retbits[] = { + 0x32, 0x43, 0xe6, 0x44, 0xfc, 0xc6, 0xaf, 0xf6, 0x93, 0x3e, 0x12, 0x95, + 0x86, 0x7f, 0xe6, 0x64, 0x40, 0x17, 0x50, 0xc1, 0x2d, 0xa6, 0x0a, 0xb5, + 0x24, 0xc1, 0x5c, 0x3f, 0xc4, 0xe6, 0x01, 0x74, 0xa2, 0x7b, 0xff, 0xd4, + 0xb5, 0x51, 0x77, 0xf1, 0xd5, 0x6e, 0xbc, 0x7c, 0xb0, 0x92, 0xff, 0x42, + 0xe8, 0x0e, 0x5b, 0x52, 0xc9, 0xcb, 0xc5, 0xd7, 0x0d, 0xee, 0x69, 0x9d, + 0x77, 0x27, 0x96, 0x10, +}; +static const struct drbg_kat_pr_true kat4285_t = { + 9, kat4285_entropyin, kat4285_nonce, kat4285_persstr, + kat4285_entropyinpr1, kat4285_addinpr1, kat4285_entropyinpr2, + kat4285_addinpr2, kat4285_retbits +}; +static const struct drbg_kat kat4285 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4285_t +}; + +static const unsigned char kat4286_entropyin[] = { + 0xf4, 0x7f, 0x2f, 0xdf, 0xc9, 0x18, 0xfc, 0xb9, 0x7f, 0x43, 0x27, 0x21, + 0xf2, 0xc8, 0x11, 0x0a, 0xaf, 0xa5, 0x3b, 0x54, 0x75, 0xaf, 0x79, 0xd1, + 0x98, 0xe1, 0xcd, 0xe9, 0xe2, 0xf5, 0x4e, 0xf4, 0xf2, 0x24, 0xd2, 0xa3, + 0xbb, 0x17, 0x06, 0xef, 0x6f, 0x55, 0xc5, 0xae, 0x03, 0x20, 0xb6, 0x42, +}; +static const unsigned char kat4286_nonce[] = {0}; +static const unsigned char kat4286_persstr[] = {0}; +static const unsigned char kat4286_entropyinpr1[] = { + 0x8b, 0xb7, 0x8d, 0x09, 0x2e, 0x84, 0x3d, 0xe9, 0xd1, 0x37, 0x82, 0x4e, + 0xb6, 0xdf, 0x04, 0xa7, 0x31, 0x0d, 0x52, 0x05, 0x00, 0x28, 0x99, 0xbd, + 0x68, 0x85, 0x02, 0xe5, 0xc0, 0xb0, 0x57, 0xda, 0xb9, 0x29, 0xc4, 0x20, + 0xe5, 0x91, 0x7c, 0x55, 0xd8, 0x62, 0xa0, 0x43, 0xe3, 0x2a, 0xec, 0x0b, +}; +static const unsigned char kat4286_addinpr1[] = { + 0xe2, 0x4e, 0x60, 0x9c, 0xf1, 0x87, 0x62, 0xfc, 0xff, 0x59, 0x08, 0x42, + 0xb2, 0x86, 0xb9, 0xc1, 0x34, 0x14, 0x40, 0x36, 0xd8, 0x4f, 0x0c, 0x35, + 0x2e, 0x16, 0xa0, 0x0b, 0xb0, 0xf2, 0x24, 0x3d, 0x7a, 0x41, 0x82, 0xa5, + 0x8d, 0x93, 0x07, 0x4f, 0x49, 0x79, 0x69, 0x4d, 0x49, 0xdd, 0x46, 0xd0, +}; +static const unsigned char kat4286_entropyinpr2[] = { + 0x19, 0x95, 0x66, 0x84, 0xb9, 0xcf, 0x99, 0x36, 0x98, 0xed, 0x43, 0xf0, + 0x4c, 0x88, 0xcb, 0x08, 0x9d, 0x5a, 0x1e, 0x5b, 0x99, 0x8d, 0x97, 0x19, + 0xd6, 0x77, 0x4a, 0xb0, 0x44, 0xef, 0x54, 0x2f, 0xda, 0x20, 0x89, 0x17, + 0x44, 0xcb, 0xa0, 0xe2, 0x47, 0xcd, 0xcb, 0xa5, 0x53, 0xdf, 0xb5, 0xf9, +}; +static const unsigned char kat4286_addinpr2[] = { + 0x2b, 0xdf, 0xb7, 0x27, 0x39, 0xc5, 0x16, 0x70, 0x4b, 0x5a, 0x91, 0x2b, + 0xea, 0xc3, 0x62, 0xa2, 0x9c, 0xcf, 0xce, 0x78, 0x46, 0x98, 0x9a, 0x7f, + 0xcc, 0x3c, 0x38, 0x1d, 0x20, 0x01, 0x1e, 0x89, 0x18, 0xd6, 0xf5, 0x0e, + 0xa7, 0x43, 0x3b, 0xa8, 0x34, 0xca, 0xea, 0x4b, 0xc0, 0x16, 0x54, 0xfb, +}; +static const unsigned char kat4286_retbits[] = { + 0xb4, 0x54, 0x38, 0x31, 0x74, 0x52, 0xc7, 0xf0, 0x43, 0x70, 0x5c, 0xd5, + 0x40, 0xe4, 0x9a, 0xfb, 0xf0, 0xfd, 0xb2, 0x13, 0xe7, 0x0c, 0x7a, 0x78, + 0x17, 0x47, 0x31, 0x18, 0x38, 0x77, 0x23, 0x10, 0x87, 0xf2, 0x72, 0x74, + 0x2f, 0xd6, 0x65, 0x8c, 0x51, 0x8c, 0x01, 0x01, 0xa0, 0xe6, 0xee, 0xaf, + 0xc9, 0xe0, 0x8a, 0x62, 0x7b, 0xe1, 0x36, 0x90, 0x48, 0x9d, 0x07, 0x07, + 0x32, 0xa9, 0xb0, 0xd0, +}; +static const struct drbg_kat_pr_true kat4286_t = { + 10, kat4286_entropyin, kat4286_nonce, kat4286_persstr, + kat4286_entropyinpr1, kat4286_addinpr1, kat4286_entropyinpr2, + kat4286_addinpr2, kat4286_retbits +}; +static const struct drbg_kat kat4286 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4286_t +}; + +static const unsigned char kat4287_entropyin[] = { + 0x9b, 0xdc, 0x52, 0xc7, 0x36, 0xc0, 0x51, 0x8d, 0x6b, 0xa3, 0x6e, 0x6b, + 0xbc, 0x0b, 0x63, 0xd4, 0x9c, 0xcb, 0x61, 0x71, 0xb5, 0x7d, 0xa0, 0xcb, + 0x13, 0x71, 0xc7, 0xff, 0xe2, 0x03, 0x27, 0x7e, 0x36, 0x3b, 0x95, 0xb0, + 0xcc, 0x05, 0xb8, 0x87, 0x3f, 0x2b, 0x80, 0x4d, 0xdd, 0x95, 0x07, 0xc2, +}; +static const unsigned char kat4287_nonce[] = {0}; +static const unsigned char kat4287_persstr[] = {0}; +static const unsigned char kat4287_entropyinpr1[] = { + 0x10, 0x04, 0x53, 0xf6, 0xd6, 0x36, 0xc6, 0xc4, 0x4d, 0x72, 0x1a, 0xa6, + 0x21, 0x6f, 0x00, 0x4e, 0xfd, 0x88, 0x34, 0xed, 0x74, 0xf0, 0xe3, 0x08, + 0xd1, 0x74, 0x61, 0x7b, 0xc6, 0x66, 0xe8, 0x35, 0x46, 0xcd, 0x8f, 0x6c, + 0x8a, 0x73, 0x12, 0x85, 0x8a, 0x04, 0xc5, 0x81, 0x08, 0x8e, 0x75, 0x3c, +}; +static const unsigned char kat4287_addinpr1[] = { + 0x6e, 0x79, 0x6d, 0x36, 0xdf, 0x6d, 0x9f, 0x6b, 0x09, 0xba, 0x3e, 0xa7, + 0xce, 0x89, 0xaa, 0xcf, 0x02, 0x28, 0x14, 0xf4, 0xa7, 0xc8, 0x55, 0xa7, + 0x92, 0x0b, 0xb6, 0xf2, 0xb9, 0xb0, 0x59, 0x2d, 0x4b, 0xeb, 0xb3, 0xb5, + 0x29, 0x40, 0x8d, 0x05, 0x0e, 0xb6, 0x74, 0xaa, 0x7e, 0x85, 0xa8, 0xd8, +}; +static const unsigned char kat4287_entropyinpr2[] = { + 0x08, 0x8d, 0x05, 0x76, 0x55, 0xdd, 0x9e, 0x4a, 0x92, 0x7e, 0xc9, 0x01, + 0xac, 0xa3, 0xa7, 0x53, 0xf0, 0x1b, 0xb4, 0xa5, 0xd1, 0xa3, 0xd9, 0x6a, + 0xad, 0x04, 0xec, 0xc9, 0x36, 0x70, 0x94, 0xb5, 0xfd, 0x68, 0x78, 0xa1, + 0x29, 0xd7, 0x32, 0x20, 0x47, 0xb2, 0xbd, 0xce, 0xc6, 0x1c, 0x91, 0xad, +}; +static const unsigned char kat4287_addinpr2[] = { + 0x57, 0x3a, 0xad, 0x63, 0xc3, 0xad, 0x08, 0xc5, 0xd7, 0x7b, 0xa7, 0x95, + 0xa8, 0xa7, 0x27, 0x86, 0xe4, 0x55, 0xfa, 0x72, 0x3e, 0x79, 0x88, 0x84, + 0x73, 0x43, 0x57, 0xe8, 0xf1, 0xda, 0x9f, 0xfb, 0x2d, 0x61, 0x2e, 0xa0, + 0x04, 0x4e, 0x6f, 0xc3, 0xad, 0xa4, 0x8d, 0xae, 0x1f, 0x21, 0xf4, 0x1c, +}; +static const unsigned char kat4287_retbits[] = { + 0xb3, 0x28, 0x24, 0x79, 0xd2, 0xde, 0xfa, 0x6d, 0x62, 0x92, 0x90, 0x22, + 0x68, 0x22, 0xf4, 0xcf, 0xa7, 0x3b, 0xd0, 0x44, 0xad, 0xdb, 0xef, 0xde, + 0x05, 0x52, 0xf2, 0x03, 0xfc, 0x8b, 0x39, 0x36, 0xec, 0x31, 0x8d, 0x33, + 0xf5, 0x04, 0xbc, 0xc5, 0xff, 0x37, 0x58, 0x97, 0x8b, 0x1d, 0x28, 0x05, + 0x67, 0x45, 0x9a, 0xf5, 0x07, 0x8d, 0xff, 0x40, 0xf7, 0x44, 0xee, 0x96, + 0xfe, 0x86, 0xd4, 0x78, +}; +static const struct drbg_kat_pr_true kat4287_t = { + 11, kat4287_entropyin, kat4287_nonce, kat4287_persstr, + kat4287_entropyinpr1, kat4287_addinpr1, kat4287_entropyinpr2, + kat4287_addinpr2, kat4287_retbits +}; +static const struct drbg_kat kat4287 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4287_t +}; + +static const unsigned char kat4288_entropyin[] = { + 0xaa, 0xd1, 0xea, 0x87, 0xc4, 0x81, 0x3f, 0xb7, 0xfc, 0xd1, 0x8e, 0x4a, + 0x6c, 0x9b, 0xc0, 0x20, 0x7d, 0xa0, 0xbf, 0x14, 0x72, 0xb9, 0xc0, 0xc2, + 0xdf, 0x03, 0x35, 0x23, 0x3c, 0x65, 0x94, 0xcb, 0x23, 0x87, 0xd5, 0xb9, + 0xc7, 0x8d, 0xd7, 0x70, 0x41, 0x94, 0x84, 0x9b, 0x95, 0x2f, 0xf4, 0xde, +}; +static const unsigned char kat4288_nonce[] = {0}; +static const unsigned char kat4288_persstr[] = {0}; +static const unsigned char kat4288_entropyinpr1[] = { + 0xb0, 0xca, 0xc0, 0x48, 0x86, 0xa8, 0x57, 0xed, 0xa8, 0x37, 0xfa, 0xb1, + 0xb2, 0x56, 0xd0, 0x89, 0xa7, 0x7b, 0x6e, 0x79, 0x0b, 0x6c, 0x5c, 0x10, + 0xbc, 0xc1, 0x33, 0xac, 0x25, 0x64, 0x58, 0xa3, 0x95, 0x82, 0x46, 0xda, + 0x25, 0x89, 0x00, 0x2c, 0x57, 0xbe, 0x44, 0x33, 0xc6, 0x00, 0x45, 0xb3, +}; +static const unsigned char kat4288_addinpr1[] = { + 0x0e, 0x75, 0x0c, 0x1c, 0xa7, 0x4b, 0x4a, 0xce, 0xaa, 0x3d, 0x29, 0x5c, + 0x83, 0x33, 0x39, 0x5f, 0xae, 0xa0, 0xf8, 0x46, 0x3d, 0xc8, 0x51, 0xa6, + 0x1b, 0x7b, 0x16, 0xfc, 0xa8, 0x9c, 0x5b, 0x27, 0xcf, 0x21, 0x47, 0x58, + 0x7e, 0xfc, 0x73, 0x08, 0x9f, 0x97, 0x8d, 0xed, 0xe6, 0xe0, 0xa0, 0x8a, +}; +static const unsigned char kat4288_entropyinpr2[] = { + 0x59, 0xde, 0x12, 0x2a, 0x53, 0xb4, 0xc3, 0xdd, 0x78, 0x77, 0x4c, 0x7a, + 0xe5, 0x20, 0x13, 0xfc, 0x74, 0x16, 0xeb, 0xc6, 0x34, 0x9e, 0x5a, 0xee, + 0x12, 0xff, 0x74, 0x55, 0x3d, 0xf2, 0x31, 0x18, 0xf7, 0x71, 0x01, 0xdd, + 0x30, 0xf3, 0xdc, 0x56, 0x7d, 0x9a, 0x29, 0xe4, 0xaf, 0x1e, 0x0b, 0x68, +}; +static const unsigned char kat4288_addinpr2[] = { + 0x98, 0xc5, 0xb9, 0x8c, 0x16, 0xc4, 0x3c, 0xcc, 0x19, 0x24, 0xd2, 0x37, + 0xb4, 0x5a, 0x4b, 0x82, 0x69, 0xa4, 0x3b, 0x2d, 0xf4, 0x7d, 0x73, 0x56, + 0x0b, 0x8b, 0xb8, 0x48, 0x7a, 0x1a, 0xc7, 0x7a, 0x63, 0x15, 0x29, 0xa8, + 0x61, 0xb7, 0x3e, 0x8d, 0xf3, 0x7a, 0xcf, 0x24, 0x36, 0x8a, 0x65, 0x5e, +}; +static const unsigned char kat4288_retbits[] = { + 0xe4, 0x87, 0x12, 0xfd, 0xfa, 0x9e, 0x44, 0xd3, 0x83, 0xa2, 0x66, 0x82, + 0x11, 0x8d, 0xdc, 0x09, 0x6f, 0xcd, 0x1b, 0x63, 0x07, 0x5a, 0x33, 0x23, + 0xd6, 0xf5, 0x87, 0x76, 0x13, 0x71, 0x63, 0x3e, 0x69, 0x22, 0x09, 0xb2, + 0x7c, 0xf7, 0xd9, 0xda, 0x91, 0x7d, 0xd1, 0x5b, 0xdf, 0x56, 0x03, 0x60, + 0xc9, 0x85, 0x6d, 0xa6, 0x82, 0x2e, 0xbc, 0xf6, 0xa0, 0xb6, 0x89, 0x2a, + 0x14, 0x54, 0xd2, 0xb7, +}; +static const struct drbg_kat_pr_true kat4288_t = { + 12, kat4288_entropyin, kat4288_nonce, kat4288_persstr, + kat4288_entropyinpr1, kat4288_addinpr1, kat4288_entropyinpr2, + kat4288_addinpr2, kat4288_retbits +}; +static const struct drbg_kat kat4288 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4288_t +}; + +static const unsigned char kat4289_entropyin[] = { + 0xca, 0xe1, 0x80, 0x0a, 0x14, 0x71, 0x91, 0x37, 0xde, 0x13, 0xce, 0x82, + 0xcf, 0x37, 0xc5, 0xa1, 0x54, 0x8f, 0x7f, 0xb1, 0x49, 0xdc, 0x57, 0xa1, + 0x95, 0x2c, 0x8f, 0x1f, 0xcd, 0x29, 0xec, 0x2d, 0xcb, 0x16, 0x77, 0x14, + 0xb0, 0x6a, 0x31, 0x39, 0x09, 0x8c, 0xf3, 0xf9, 0xe2, 0xe8, 0x7f, 0x1d, +}; +static const unsigned char kat4289_nonce[] = {0}; +static const unsigned char kat4289_persstr[] = {0}; +static const unsigned char kat4289_entropyinpr1[] = { + 0xee, 0xf4, 0x6a, 0x29, 0x3a, 0x48, 0xdb, 0x99, 0xd5, 0x6f, 0x0e, 0xff, + 0x12, 0x8e, 0x56, 0x7e, 0x8d, 0x32, 0xeb, 0x4e, 0x14, 0x5f, 0x85, 0x3f, + 0x5a, 0x40, 0xd3, 0x67, 0x55, 0xca, 0xcc, 0xae, 0x08, 0xd2, 0x28, 0x9a, + 0xa8, 0xca, 0xf8, 0x26, 0xdd, 0x44, 0x2a, 0x71, 0xeb, 0x84, 0x60, 0xb6, +}; +static const unsigned char kat4289_addinpr1[] = { + 0x47, 0xf8, 0xf0, 0x08, 0x15, 0xab, 0xe4, 0x55, 0x54, 0x67, 0x79, 0x86, + 0x8d, 0x03, 0x3e, 0xed, 0x33, 0xc3, 0xf4, 0xc1, 0xf9, 0x7e, 0x08, 0x64, + 0xf1, 0x61, 0xc1, 0xa2, 0x1c, 0x96, 0x42, 0x3c, 0xf5, 0xc9, 0x49, 0x25, + 0x81, 0xcf, 0x06, 0x27, 0xba, 0x74, 0xd7, 0xcb, 0x71, 0x95, 0x16, 0x7d, +}; +static const unsigned char kat4289_entropyinpr2[] = { + 0xe2, 0xe6, 0x1e, 0x0c, 0xb0, 0xae, 0x58, 0xe4, 0x8b, 0x17, 0x89, 0x8d, + 0x81, 0xa6, 0x97, 0x19, 0x95, 0x3e, 0x86, 0x34, 0x83, 0xe6, 0xee, 0x3d, + 0x96, 0xa5, 0x75, 0xb2, 0x16, 0xc9, 0x43, 0xfc, 0x90, 0xd3, 0x00, 0xbe, + 0x87, 0x33, 0x8d, 0x3c, 0xc6, 0x53, 0x87, 0x30, 0x1f, 0xa9, 0xf3, 0x4a, +}; +static const unsigned char kat4289_addinpr2[] = { + 0xf6, 0xe3, 0x02, 0xe9, 0xeb, 0xd0, 0x5e, 0xcb, 0x61, 0xeb, 0x52, 0x24, + 0x64, 0xe0, 0x2d, 0x13, 0x9b, 0x07, 0x67, 0x25, 0xce, 0xfd, 0xde, 0x59, + 0xf1, 0x62, 0x12, 0x01, 0xa8, 0x0e, 0xef, 0xef, 0x1b, 0xf3, 0xfa, 0x5d, + 0x65, 0x5e, 0xca, 0x75, 0x5d, 0xf3, 0x1e, 0x0e, 0xab, 0x49, 0x64, 0x1f, +}; +static const unsigned char kat4289_retbits[] = { + 0x0d, 0x8d, 0x79, 0x67, 0x6b, 0xff, 0x41, 0xad, 0xf2, 0xeb, 0x63, 0x3d, + 0x08, 0x25, 0x14, 0xb4, 0x5c, 0x7e, 0x07, 0xb3, 0xe8, 0xb7, 0x2b, 0xa8, + 0xaf, 0x64, 0xf2, 0xbe, 0x64, 0xf1, 0x70, 0xa2, 0x86, 0xe3, 0x0d, 0xe8, + 0xa5, 0x3a, 0x9f, 0x22, 0xd4, 0x2e, 0x71, 0x18, 0x52, 0x43, 0x68, 0x04, + 0xe2, 0xf0, 0xd9, 0x0e, 0x97, 0x4b, 0x96, 0x34, 0x9e, 0x2c, 0x63, 0x0f, + 0x13, 0xce, 0xc6, 0x66, +}; +static const struct drbg_kat_pr_true kat4289_t = { + 13, kat4289_entropyin, kat4289_nonce, kat4289_persstr, + kat4289_entropyinpr1, kat4289_addinpr1, kat4289_entropyinpr2, + kat4289_addinpr2, kat4289_retbits +}; +static const struct drbg_kat kat4289 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4289_t +}; + +static const unsigned char kat4290_entropyin[] = { + 0x67, 0x6d, 0xd0, 0x00, 0xba, 0x12, 0xbc, 0xc4, 0x1c, 0xae, 0xf7, 0x44, + 0x22, 0xde, 0x16, 0xff, 0x6a, 0x5d, 0x02, 0xe8, 0x99, 0xd9, 0x3d, 0xd7, + 0x57, 0xaa, 0x23, 0xd8, 0x77, 0xa4, 0x07, 0x12, 0xc1, 0x16, 0x8c, 0x30, + 0xc3, 0x18, 0xdc, 0x61, 0xc4, 0x5d, 0x77, 0x5e, 0x26, 0x89, 0xd3, 0xc4, +}; +static const unsigned char kat4290_nonce[] = {0}; +static const unsigned char kat4290_persstr[] = {0}; +static const unsigned char kat4290_entropyinpr1[] = { + 0xcc, 0xb3, 0xf0, 0xe7, 0x11, 0x5f, 0xb7, 0x22, 0x88, 0xf3, 0x8b, 0xea, + 0x76, 0x72, 0xbd, 0x19, 0xb4, 0xdf, 0x06, 0xa6, 0xca, 0xfc, 0x59, 0xa4, + 0x97, 0xc7, 0xe3, 0xbb, 0x5e, 0x7e, 0x45, 0xc8, 0xcb, 0xce, 0xbf, 0x09, + 0x66, 0x16, 0x1c, 0x96, 0xc0, 0x0a, 0xed, 0xb7, 0xa0, 0x27, 0x73, 0x86, +}; +static const unsigned char kat4290_addinpr1[] = { + 0x6a, 0x5c, 0x30, 0xc8, 0x7f, 0xac, 0x76, 0x8e, 0x99, 0x37, 0x8a, 0x73, + 0x7d, 0x47, 0x86, 0x3a, 0xc5, 0x83, 0xdc, 0x54, 0x15, 0xb1, 0x31, 0x92, + 0x33, 0xaa, 0xba, 0x79, 0x0f, 0x21, 0x88, 0x21, 0x8f, 0x5b, 0x5b, 0x66, + 0xa5, 0x93, 0x2e, 0xae, 0x31, 0x5c, 0xaa, 0x23, 0x61, 0xb1, 0x5c, 0x2e, +}; +static const unsigned char kat4290_entropyinpr2[] = { + 0xca, 0x50, 0x99, 0x74, 0x9a, 0xa7, 0xf1, 0x95, 0xe0, 0xfd, 0xe5, 0x26, + 0x2c, 0x56, 0xad, 0x35, 0xc1, 0xd5, 0x20, 0x69, 0x00, 0x1f, 0xbb, 0x65, + 0x80, 0xd4, 0x78, 0xf5, 0x0d, 0x1d, 0x69, 0xf6, 0x94, 0x1d, 0x7e, 0xa4, + 0xfa, 0x66, 0xe4, 0x74, 0x1c, 0xad, 0x70, 0x1a, 0x67, 0xf9, 0x29, 0x33, +}; +static const unsigned char kat4290_addinpr2[] = { + 0xdb, 0xe9, 0x1f, 0xfe, 0x3b, 0xfb, 0x71, 0x9b, 0xeb, 0xbb, 0x0e, 0x3b, + 0xb6, 0x0a, 0xa9, 0x07, 0xca, 0x6e, 0x04, 0x11, 0xc0, 0x5a, 0x7d, 0xed, + 0x76, 0x66, 0x74, 0xcd, 0x4d, 0x2b, 0x02, 0x4d, 0xad, 0xe1, 0xdd, 0x3b, + 0xab, 0x8e, 0x92, 0xb8, 0x1d, 0x40, 0xfb, 0x00, 0x7a, 0xb9, 0xa8, 0x1f, +}; +static const unsigned char kat4290_retbits[] = { + 0xa1, 0x35, 0x64, 0x1f, 0x33, 0xe2, 0xaa, 0x59, 0x75, 0xa3, 0xbe, 0x70, + 0xb0, 0x5e, 0x0b, 0x8c, 0x48, 0x37, 0x2e, 0xf7, 0xc6, 0x76, 0x8e, 0xed, + 0x8e, 0x6c, 0x2b, 0x4e, 0x91, 0xd9, 0x15, 0x3e, 0xea, 0xd2, 0x17, 0xea, + 0x47, 0xbf, 0x96, 0xb1, 0x41, 0x2a, 0xf4, 0xe0, 0x8c, 0x31, 0x14, 0xd2, + 0xc8, 0x5f, 0x2e, 0x29, 0xfb, 0xe9, 0x3c, 0x26, 0x01, 0x46, 0x77, 0xbd, + 0x14, 0x26, 0x6e, 0xcf, +}; +static const struct drbg_kat_pr_true kat4290_t = { + 14, kat4290_entropyin, kat4290_nonce, kat4290_persstr, + kat4290_entropyinpr1, kat4290_addinpr1, kat4290_entropyinpr2, + kat4290_addinpr2, kat4290_retbits +}; +static const struct drbg_kat kat4290 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 0, 48, 64, &kat4290_t +}; + +static const unsigned char kat4291_entropyin[] = { + 0x11, 0xb3, 0x24, 0x41, 0xb5, 0x80, 0x03, 0x47, 0x34, 0x7e, 0xd8, 0xba, + 0x1d, 0x0b, 0x81, 0xa8, 0x81, 0x0a, 0x9b, 0x7e, 0xb4, 0x14, 0xb1, 0x5d, + 0x27, 0x78, 0x1a, 0x99, 0x8f, 0x9c, 0xcc, 0x4b, 0xcc, 0xc8, 0x4a, 0xae, + 0x7e, 0xda, 0xa3, 0x82, 0x50, 0x2a, 0x0e, 0x59, 0x76, 0xbf, 0xd7, 0x80, +}; +static const unsigned char kat4291_nonce[] = {0}; +static const unsigned char kat4291_persstr[] = { + 0x7c, 0x91, 0x05, 0xda, 0xba, 0xc2, 0xa1, 0xa5, 0xca, 0xc8, 0x22, 0x7f, + 0x46, 0x70, 0xe4, 0x64, 0x00, 0x9f, 0x6a, 0xbe, 0x9a, 0x8a, 0xd6, 0xe1, + 0x6c, 0x87, 0xc2, 0x28, 0xbc, 0x8b, 0x70, 0xeb, 0x4e, 0x54, 0x4f, 0x64, + 0x3a, 0x27, 0xc7, 0x07, 0x1e, 0xb4, 0xee, 0xfe, 0x32, 0x6c, 0x30, 0x2c, +}; +static const unsigned char kat4291_entropyinpr1[] = { + 0x57, 0xeb, 0x8e, 0x25, 0x99, 0x2d, 0xbd, 0xc3, 0xfc, 0x10, 0x6a, 0x79, + 0x01, 0x68, 0xce, 0x67, 0x55, 0x27, 0x07, 0xa1, 0xd7, 0x2e, 0x82, 0x13, + 0xf5, 0x8a, 0xb7, 0x08, 0x5a, 0x92, 0x0d, 0x3a, 0xc9, 0xe4, 0x82, 0x58, + 0x40, 0x99, 0x55, 0x67, 0x3d, 0x07, 0x46, 0x4b, 0x26, 0x83, 0xdd, 0xb2, +}; +static const unsigned char kat4291_addinpr1[] = {0}; +static const unsigned char kat4291_entropyinpr2[] = { + 0xf4, 0x52, 0xa2, 0x34, 0xce, 0x66, 0x98, 0x85, 0xf3, 0xa2, 0x4e, 0xf6, + 0xc8, 0xa8, 0xa2, 0x15, 0x69, 0x0b, 0xba, 0xf5, 0xbb, 0x6c, 0x90, 0xf1, + 0xe9, 0x72, 0x53, 0x47, 0xf9, 0x87, 0x29, 0xa3, 0x39, 0x1f, 0x88, 0xd9, + 0xe8, 0x2b, 0xf2, 0x9e, 0x18, 0xf4, 0x25, 0x7d, 0x86, 0x5d, 0x10, 0xcf, +}; +static const unsigned char kat4291_addinpr2[] = {0}; +static const unsigned char kat4291_retbits[] = { + 0xe6, 0x4b, 0x1d, 0x53, 0x8e, 0x87, 0x93, 0xd4, 0xba, 0x07, 0x34, 0xa8, + 0x34, 0x90, 0x51, 0xdc, 0xd8, 0xee, 0x1d, 0x68, 0xf0, 0x10, 0x96, 0xbc, + 0xc9, 0x75, 0x21, 0x50, 0x8c, 0x8f, 0x41, 0x7d, 0xbf, 0xff, 0x25, 0x48, + 0xf5, 0xd9, 0x8d, 0x9d, 0x00, 0x2c, 0x3a, 0x8a, 0x64, 0x0b, 0x5e, 0x26, + 0x53, 0x3e, 0xae, 0xc0, 0x74, 0xd6, 0xf3, 0xfb, 0xa8, 0x8c, 0xb9, 0x8f, + 0xb1, 0xa4, 0x0c, 0x47, +}; +static const struct drbg_kat_pr_true kat4291_t = { + 0, kat4291_entropyin, kat4291_nonce, kat4291_persstr, + kat4291_entropyinpr1, kat4291_addinpr1, kat4291_entropyinpr2, + kat4291_addinpr2, kat4291_retbits +}; +static const struct drbg_kat kat4291 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4291_t +}; + +static const unsigned char kat4292_entropyin[] = { + 0xc3, 0xa6, 0xa1, 0x91, 0xd8, 0x8f, 0xe1, 0x84, 0xf3, 0x5f, 0xad, 0xc0, + 0xc7, 0x05, 0xc8, 0x0c, 0xa6, 0x10, 0xf9, 0xf9, 0x7f, 0x3a, 0x27, 0x8f, + 0x3e, 0x14, 0x23, 0x47, 0x19, 0x25, 0x96, 0x8c, 0xec, 0x2d, 0x56, 0x5c, + 0xb9, 0x21, 0xc9, 0xa5, 0xae, 0xda, 0xba, 0xbe, 0xde, 0x7f, 0xee, 0xff, +}; +static const unsigned char kat4292_nonce[] = {0}; +static const unsigned char kat4292_persstr[] = { + 0xc9, 0x96, 0x40, 0x3d, 0x3d, 0xf3, 0x66, 0x7d, 0x97, 0x0b, 0x0b, 0xd3, + 0x9d, 0x4c, 0xdb, 0xcd, 0xfa, 0x80, 0x97, 0xde, 0xd8, 0x7e, 0xa9, 0xc0, + 0x5b, 0x68, 0x76, 0x37, 0x10, 0xdc, 0xec, 0xb5, 0x84, 0x08, 0x2f, 0x37, + 0xcf, 0x1d, 0x4e, 0xc7, 0x9b, 0xce, 0x9a, 0x1a, 0xcb, 0x90, 0x10, 0xee, +}; +static const unsigned char kat4292_entropyinpr1[] = { + 0x49, 0xca, 0x85, 0x1a, 0x07, 0x6d, 0x69, 0xf4, 0x2b, 0x26, 0x31, 0x58, + 0xc8, 0x88, 0x41, 0x8f, 0x89, 0xe6, 0xe2, 0x40, 0x08, 0x14, 0xaa, 0x04, + 0x93, 0x85, 0x4d, 0xa3, 0x40, 0xdd, 0x6c, 0x56, 0x27, 0xad, 0x0a, 0x2e, + 0x2c, 0x92, 0x1b, 0xec, 0xa9, 0x1f, 0x2a, 0x1e, 0x16, 0xf3, 0x5f, 0x05, +}; +static const unsigned char kat4292_addinpr1[] = {0}; +static const unsigned char kat4292_entropyinpr2[] = { + 0x19, 0x21, 0x87, 0xf4, 0xf0, 0x8a, 0xda, 0x51, 0x6c, 0x69, 0xf7, 0xde, + 0xa3, 0x1d, 0x97, 0x5e, 0x42, 0x5c, 0x63, 0x22, 0x80, 0x04, 0xe4, 0xe1, + 0xb2, 0x76, 0x5f, 0x99, 0xf7, 0x7d, 0xb5, 0xce, 0x1a, 0xb7, 0x5c, 0x06, + 0x36, 0xcb, 0x01, 0x79, 0x1e, 0x26, 0x85, 0xdd, 0xbb, 0x1f, 0xb3, 0x19, +}; +static const unsigned char kat4292_addinpr2[] = {0}; +static const unsigned char kat4292_retbits[] = { + 0xb2, 0x41, 0x1f, 0xd6, 0xb5, 0xb8, 0xe2, 0x71, 0x57, 0x48, 0x53, 0xfd, + 0x7e, 0x82, 0x08, 0x7e, 0x2d, 0x8a, 0x3c, 0x4f, 0xf1, 0xfa, 0x79, 0x68, + 0x99, 0x77, 0x0c, 0xbf, 0x27, 0x91, 0xb6, 0xc7, 0x28, 0x58, 0x17, 0xac, + 0x54, 0x84, 0xec, 0x59, 0x46, 0xa0, 0x39, 0x04, 0xd0, 0x41, 0x11, 0xc3, + 0x99, 0x75, 0xf1, 0xc2, 0xdf, 0x3c, 0x80, 0x62, 0x8b, 0xc8, 0xf2, 0xee, + 0xe7, 0xf2, 0xa2, 0xe5, +}; +static const struct drbg_kat_pr_true kat4292_t = { + 1, kat4292_entropyin, kat4292_nonce, kat4292_persstr, + kat4292_entropyinpr1, kat4292_addinpr1, kat4292_entropyinpr2, + kat4292_addinpr2, kat4292_retbits +}; +static const struct drbg_kat kat4292 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4292_t +}; + +static const unsigned char kat4293_entropyin[] = { + 0x16, 0x55, 0xda, 0x2c, 0xdd, 0x0a, 0xa3, 0xd9, 0x5c, 0x59, 0x06, 0xbb, + 0xeb, 0x2d, 0x9b, 0xcf, 0xb2, 0x9d, 0xb0, 0x85, 0x26, 0x5b, 0xd6, 0x59, + 0x06, 0x85, 0x43, 0x50, 0xa9, 0x6f, 0xd1, 0x9e, 0x9d, 0x78, 0x3e, 0x5f, + 0xaa, 0xf1, 0xfa, 0xbf, 0x1d, 0x15, 0xa3, 0x6a, 0x4e, 0x28, 0xa3, 0xe6, +}; +static const unsigned char kat4293_nonce[] = {0}; +static const unsigned char kat4293_persstr[] = { + 0xdd, 0x02, 0xc2, 0x9e, 0x91, 0xfb, 0x7f, 0x1c, 0x1f, 0x79, 0x90, 0x7e, + 0x57, 0xde, 0x14, 0xca, 0x3d, 0x0b, 0x43, 0xb0, 0x25, 0x25, 0x20, 0x0f, + 0x91, 0xb7, 0xce, 0x08, 0x1c, 0xd9, 0x37, 0xec, 0x7f, 0x15, 0x2c, 0xd1, + 0xc7, 0x64, 0x45, 0x67, 0x2b, 0x1b, 0x9e, 0xb4, 0x36, 0x0b, 0xd2, 0x59, +}; +static const unsigned char kat4293_entropyinpr1[] = { + 0x9f, 0xd8, 0x0e, 0xf5, 0xe5, 0xc7, 0xee, 0x6b, 0x69, 0x52, 0x8e, 0x2a, + 0x7b, 0x15, 0x2e, 0xf3, 0x11, 0x61, 0x69, 0x7e, 0x78, 0x09, 0x16, 0x6e, + 0xd4, 0x82, 0x66, 0x1f, 0x6b, 0x65, 0x91, 0x93, 0xd9, 0x55, 0xbc, 0x51, + 0xd6, 0x69, 0xa5, 0xca, 0xdf, 0xcd, 0xc1, 0x96, 0xee, 0x60, 0x23, 0x64, +}; +static const unsigned char kat4293_addinpr1[] = {0}; +static const unsigned char kat4293_entropyinpr2[] = { + 0x9b, 0x60, 0x13, 0xa6, 0x4e, 0xa1, 0x6b, 0x6f, 0x75, 0x53, 0x68, 0xdb, + 0x24, 0x1a, 0x8f, 0x41, 0xc7, 0xdd, 0x89, 0xce, 0x5f, 0x86, 0x96, 0x84, + 0x3f, 0xed, 0x7b, 0xcc, 0xcf, 0x88, 0xc5, 0x8f, 0x9e, 0x77, 0x5c, 0x63, + 0xcf, 0x30, 0xb2, 0xc2, 0x48, 0xee, 0x68, 0xd5, 0x6d, 0x49, 0x10, 0xa1, +}; +static const unsigned char kat4293_addinpr2[] = {0}; +static const unsigned char kat4293_retbits[] = { + 0xe6, 0xff, 0xf1, 0xde, 0xb8, 0xb9, 0xa8, 0x67, 0x95, 0xcd, 0x96, 0xfd, + 0xb5, 0xdb, 0x3d, 0xb0, 0x13, 0x30, 0xee, 0xa6, 0xa4, 0xc4, 0x04, 0xa6, + 0xad, 0xd9, 0xab, 0x01, 0x81, 0x1e, 0xa9, 0x2f, 0xe3, 0x66, 0xe9, 0xc0, + 0x9c, 0x84, 0x53, 0x0e, 0x75, 0x5b, 0x67, 0x68, 0xdb, 0xa3, 0x77, 0xcd, + 0x10, 0x97, 0x4a, 0x46, 0xf0, 0xaa, 0xad, 0xbf, 0x77, 0x0f, 0x95, 0xe8, + 0xae, 0x33, 0x4b, 0xf9, +}; +static const struct drbg_kat_pr_true kat4293_t = { + 2, kat4293_entropyin, kat4293_nonce, kat4293_persstr, + kat4293_entropyinpr1, kat4293_addinpr1, kat4293_entropyinpr2, + kat4293_addinpr2, kat4293_retbits +}; +static const struct drbg_kat kat4293 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4293_t +}; + +static const unsigned char kat4294_entropyin[] = { + 0xb3, 0x43, 0x4a, 0x6e, 0xbd, 0xff, 0xe5, 0x81, 0xf2, 0x7e, 0xf7, 0x6b, + 0x7c, 0xb4, 0xad, 0x31, 0x05, 0x47, 0x55, 0xeb, 0x73, 0xce, 0xa5, 0xc6, + 0xe5, 0x84, 0xce, 0x17, 0xa2, 0x69, 0x86, 0x8f, 0x1e, 0x7b, 0x0c, 0x8b, + 0xb5, 0x16, 0xa9, 0x34, 0x38, 0x0c, 0x96, 0x67, 0xc4, 0x29, 0x7e, 0xb2, +}; +static const unsigned char kat4294_nonce[] = {0}; +static const unsigned char kat4294_persstr[] = { + 0x81, 0xf8, 0x6a, 0x4e, 0xd6, 0x5b, 0x65, 0xb4, 0x1c, 0xc9, 0xc6, 0xdb, + 0xd8, 0x3a, 0x5e, 0xf4, 0x1f, 0x4d, 0xd8, 0xd5, 0xaa, 0xad, 0x55, 0xb7, + 0xdc, 0x82, 0xe8, 0x75, 0xc1, 0xbe, 0x53, 0x78, 0x80, 0xe0, 0x2b, 0x29, + 0xd9, 0x81, 0x1f, 0xee, 0x88, 0x5b, 0xe8, 0x9f, 0xff, 0x7e, 0x29, 0xec, +}; +static const unsigned char kat4294_entropyinpr1[] = { + 0x78, 0x54, 0x0a, 0xa8, 0x36, 0x56, 0x5f, 0x5a, 0x36, 0x93, 0xff, 0xfd, + 0x91, 0xd0, 0x65, 0xe9, 0xb7, 0x2e, 0xf4, 0xd0, 0x6d, 0xf9, 0xad, 0xb7, + 0x89, 0xbd, 0x9c, 0x3a, 0x80, 0x0d, 0x82, 0xfc, 0xc7, 0x7a, 0x80, 0x3c, + 0x0f, 0xc8, 0x1a, 0xb2, 0x4f, 0x01, 0x18, 0x74, 0xe0, 0x40, 0x51, 0x9f, +}; +static const unsigned char kat4294_addinpr1[] = {0}; +static const unsigned char kat4294_entropyinpr2[] = { + 0xda, 0xd2, 0xd8, 0x02, 0xe5, 0xbb, 0x22, 0xf4, 0x9f, 0x60, 0x33, 0x65, + 0xe2, 0x06, 0x80, 0x00, 0x63, 0xeb, 0x0b, 0x5e, 0x3f, 0x14, 0xd3, 0x08, + 0x12, 0x71, 0xd0, 0x2a, 0x8c, 0xda, 0x03, 0xac, 0x24, 0xd0, 0x3d, 0x80, + 0x5a, 0x7c, 0xf8, 0x17, 0x3f, 0xdf, 0x12, 0xa8, 0x4f, 0x21, 0xd5, 0x10, +}; +static const unsigned char kat4294_addinpr2[] = {0}; +static const unsigned char kat4294_retbits[] = { + 0x87, 0x92, 0x3f, 0x78, 0x58, 0x65, 0x24, 0x85, 0x30, 0x99, 0xcf, 0x30, + 0x3d, 0x66, 0xf5, 0xd5, 0x43, 0xcb, 0x48, 0xaf, 0x68, 0xac, 0xd9, 0xe7, + 0xd4, 0x3f, 0x29, 0xd7, 0xee, 0x9b, 0xa5, 0x7f, 0xc2, 0x8b, 0xd9, 0x82, + 0xf6, 0xfb, 0x87, 0xc8, 0xe0, 0x22, 0xfc, 0x3c, 0x41, 0xcf, 0x90, 0x19, + 0xbd, 0xf3, 0xb8, 0xda, 0x6c, 0x50, 0x88, 0xf2, 0x68, 0xa4, 0x1a, 0x4a, + 0xfe, 0x54, 0x50, 0x09, +}; +static const struct drbg_kat_pr_true kat4294_t = { + 3, kat4294_entropyin, kat4294_nonce, kat4294_persstr, + kat4294_entropyinpr1, kat4294_addinpr1, kat4294_entropyinpr2, + kat4294_addinpr2, kat4294_retbits +}; +static const struct drbg_kat kat4294 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4294_t +}; + +static const unsigned char kat4295_entropyin[] = { + 0x0f, 0xd4, 0x0a, 0x3a, 0x74, 0x0c, 0xd9, 0xab, 0x09, 0x57, 0x3d, 0x73, + 0x2c, 0x13, 0xe3, 0x10, 0xc3, 0x5e, 0x98, 0x33, 0x5c, 0xef, 0x71, 0xe2, + 0xfb, 0x05, 0x94, 0x39, 0x30, 0xa9, 0x57, 0x41, 0x89, 0x82, 0x23, 0x03, + 0x4f, 0x6c, 0x78, 0x7e, 0xa8, 0xf1, 0xbe, 0xb4, 0x7b, 0x0a, 0x9b, 0x6a, +}; +static const unsigned char kat4295_nonce[] = {0}; +static const unsigned char kat4295_persstr[] = { + 0x80, 0x51, 0x34, 0xd7, 0xec, 0x1a, 0x6b, 0x22, 0x43, 0xb3, 0xf0, 0x39, + 0x2b, 0xde, 0xee, 0x7d, 0xb7, 0xf7, 0x96, 0x64, 0xeb, 0x43, 0xc4, 0x1a, + 0x7b, 0x70, 0xd5, 0xc9, 0xd1, 0x01, 0x7e, 0xa5, 0x51, 0x93, 0x77, 0x1d, + 0x9d, 0xfb, 0x5e, 0xcd, 0x82, 0xb6, 0xaf, 0x0f, 0xb4, 0x25, 0xef, 0x0d, +}; +static const unsigned char kat4295_entropyinpr1[] = { + 0x7e, 0x56, 0x35, 0x24, 0xdd, 0xaf, 0x24, 0x2f, 0xfa, 0xf1, 0xf6, 0xa0, + 0x7b, 0xf3, 0xd7, 0xf8, 0x05, 0xc6, 0xe9, 0x67, 0x97, 0x7e, 0x22, 0xce, + 0xdc, 0xc2, 0x7f, 0xcb, 0x96, 0x15, 0x28, 0x2c, 0x72, 0xc5, 0x90, 0x6c, + 0x2f, 0x43, 0x50, 0xe1, 0x2e, 0x60, 0xa5, 0xa7, 0x54, 0xb2, 0xcb, 0xd5, +}; +static const unsigned char kat4295_addinpr1[] = {0}; +static const unsigned char kat4295_entropyinpr2[] = { + 0x95, 0x2d, 0xcf, 0xd7, 0x0f, 0x95, 0xf8, 0xa2, 0x2e, 0xb7, 0xc9, 0xd2, + 0x99, 0x51, 0xa9, 0x37, 0xe9, 0x9a, 0xc9, 0xfb, 0x2b, 0x30, 0xc9, 0xce, + 0x0e, 0x05, 0xc1, 0x94, 0x89, 0x65, 0x6a, 0x7b, 0x09, 0x01, 0x2b, 0x2c, + 0xca, 0x06, 0xa5, 0x1d, 0x40, 0xef, 0x2c, 0x25, 0x5f, 0x6c, 0xab, 0xcd, +}; +static const unsigned char kat4295_addinpr2[] = {0}; +static const unsigned char kat4295_retbits[] = { + 0xb3, 0xbc, 0xa0, 0x9d, 0x48, 0x1e, 0x7d, 0x11, 0x2c, 0xe5, 0x83, 0x26, + 0x4a, 0x1c, 0xe2, 0x68, 0x26, 0xe3, 0x39, 0xf7, 0xd4, 0xbb, 0x86, 0x10, + 0x6a, 0x65, 0x1a, 0xf5, 0x39, 0x97, 0x52, 0x27, 0x10, 0xff, 0xb9, 0x71, + 0x96, 0xef, 0x2d, 0xd3, 0x9e, 0x8d, 0xdd, 0xf9, 0x9d, 0x56, 0x5c, 0x16, + 0x62, 0x67, 0x4c, 0x82, 0x37, 0x0a, 0x10, 0x46, 0x29, 0x77, 0x2c, 0xa2, + 0xc5, 0x41, 0x4d, 0x5e, +}; +static const struct drbg_kat_pr_true kat4295_t = { + 4, kat4295_entropyin, kat4295_nonce, kat4295_persstr, + kat4295_entropyinpr1, kat4295_addinpr1, kat4295_entropyinpr2, + kat4295_addinpr2, kat4295_retbits +}; +static const struct drbg_kat kat4295 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4295_t +}; + +static const unsigned char kat4296_entropyin[] = { + 0x2e, 0xbf, 0xf3, 0x42, 0xae, 0xf5, 0xea, 0xc5, 0x04, 0xf0, 0xbb, 0x9d, + 0x22, 0x26, 0x07, 0x48, 0x30, 0xcd, 0x1b, 0xa2, 0x48, 0xee, 0xcf, 0xf0, + 0x58, 0x2c, 0xb8, 0x6c, 0xe8, 0xf7, 0x66, 0x16, 0x8d, 0x69, 0xae, 0x20, + 0xc6, 0x9d, 0x1d, 0xfc, 0x02, 0x3b, 0x60, 0x09, 0x89, 0x8c, 0xd2, 0x8c, +}; +static const unsigned char kat4296_nonce[] = {0}; +static const unsigned char kat4296_persstr[] = { + 0x0c, 0xa9, 0xca, 0xed, 0x2b, 0xe8, 0x4f, 0xe3, 0x44, 0x3d, 0x06, 0xd6, + 0x58, 0xde, 0x31, 0x93, 0xf9, 0x23, 0x48, 0x50, 0x1d, 0x14, 0x64, 0xc4, + 0x78, 0xf1, 0x3d, 0x5b, 0x11, 0x80, 0x01, 0x9f, 0xc2, 0xee, 0x6d, 0x21, + 0x90, 0xb6, 0x6f, 0x9e, 0x85, 0xc0, 0x17, 0xb8, 0xb5, 0x5a, 0x60, 0xa5, +}; +static const unsigned char kat4296_entropyinpr1[] = { + 0x87, 0x11, 0x22, 0x34, 0x46, 0xf4, 0x74, 0xbb, 0x06, 0xf3, 0xba, 0x2b, + 0xd6, 0xe4, 0xa2, 0xd3, 0xf1, 0x3b, 0x04, 0x80, 0x0a, 0x17, 0xac, 0x04, + 0xcf, 0x7c, 0x07, 0x75, 0xe3, 0xa5, 0x96, 0xd6, 0xc7, 0xa3, 0x02, 0x37, + 0x27, 0x22, 0xc0, 0xac, 0xe8, 0x57, 0xa1, 0x31, 0x71, 0xcb, 0x88, 0x79, +}; +static const unsigned char kat4296_addinpr1[] = {0}; +static const unsigned char kat4296_entropyinpr2[] = { + 0x7d, 0x57, 0xe6, 0x7c, 0x65, 0x7d, 0x05, 0xdb, 0x4f, 0x42, 0x4d, 0x7b, + 0x29, 0xb1, 0xf8, 0x4e, 0x0e, 0xfe, 0xad, 0xa9, 0x06, 0xf0, 0x15, 0x30, + 0x78, 0xe8, 0x3c, 0x5c, 0xbd, 0x55, 0x21, 0x65, 0x59, 0x78, 0x05, 0xf1, + 0x07, 0x15, 0x93, 0x23, 0xe5, 0x8a, 0xc5, 0x81, 0x6b, 0x28, 0x7d, 0x15, +}; +static const unsigned char kat4296_addinpr2[] = {0}; +static const unsigned char kat4296_retbits[] = { + 0x7f, 0x30, 0x5f, 0xba, 0xc9, 0x11, 0x45, 0xa8, 0x40, 0x20, 0x5b, 0xe1, + 0x8a, 0x98, 0x2e, 0x78, 0x80, 0x57, 0x51, 0x22, 0xfd, 0x43, 0x8c, 0x84, + 0x81, 0x0b, 0x14, 0xf1, 0x26, 0x97, 0xbf, 0x92, 0x74, 0x22, 0x20, 0x02, + 0x9c, 0x1c, 0x36, 0x17, 0x8a, 0x66, 0x69, 0xe4, 0x80, 0xbc, 0x79, 0x04, + 0x4b, 0xce, 0x8b, 0xd4, 0x50, 0x57, 0x4d, 0x6b, 0xaf, 0x18, 0x5f, 0x01, + 0xe5, 0xc7, 0xee, 0xb2, +}; +static const struct drbg_kat_pr_true kat4296_t = { + 5, kat4296_entropyin, kat4296_nonce, kat4296_persstr, + kat4296_entropyinpr1, kat4296_addinpr1, kat4296_entropyinpr2, + kat4296_addinpr2, kat4296_retbits +}; +static const struct drbg_kat kat4296 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4296_t +}; + +static const unsigned char kat4297_entropyin[] = { + 0x2a, 0x3c, 0x27, 0xfa, 0xa5, 0x45, 0x83, 0xee, 0x6f, 0x3c, 0x24, 0x81, + 0x3a, 0xd6, 0xe1, 0x24, 0xfc, 0x32, 0xa4, 0xc3, 0x07, 0xe3, 0x35, 0xbb, + 0xa6, 0xf3, 0x4c, 0x8d, 0x66, 0xde, 0x04, 0x35, 0x92, 0xe7, 0x98, 0xb4, + 0x38, 0x9e, 0x9a, 0x75, 0x3b, 0x74, 0x9b, 0x75, 0xa3, 0x44, 0x1a, 0x97, +}; +static const unsigned char kat4297_nonce[] = {0}; +static const unsigned char kat4297_persstr[] = { + 0x4e, 0xaf, 0x68, 0x42, 0x05, 0x9d, 0x1c, 0x70, 0x3a, 0xad, 0x56, 0x06, + 0xe2, 0xd3, 0xe7, 0xbb, 0x61, 0x8b, 0x04, 0xc2, 0xca, 0xc4, 0xc5, 0x9b, + 0x44, 0x26, 0x78, 0xb1, 0x0e, 0x69, 0x21, 0xb1, 0x6b, 0x3c, 0x84, 0x30, + 0xa8, 0xd3, 0xff, 0x99, 0x54, 0x93, 0xf1, 0xe5, 0x1c, 0x7b, 0x42, 0xb5, +}; +static const unsigned char kat4297_entropyinpr1[] = { + 0xda, 0x0c, 0x67, 0x28, 0x4a, 0x0f, 0x0a, 0x9b, 0x12, 0xc9, 0xa8, 0xd9, + 0xcf, 0x93, 0x43, 0x75, 0xbc, 0xec, 0x05, 0xc8, 0xac, 0x68, 0x35, 0xa3, + 0x7f, 0x17, 0x9b, 0x76, 0xcd, 0xa8, 0x91, 0xbc, 0x48, 0xfe, 0x0c, 0xde, + 0x82, 0xb6, 0x73, 0xd2, 0xba, 0x9a, 0xef, 0x3d, 0x90, 0x27, 0x0d, 0x2e, +}; +static const unsigned char kat4297_addinpr1[] = {0}; +static const unsigned char kat4297_entropyinpr2[] = { + 0x83, 0x5b, 0x75, 0x29, 0x46, 0x00, 0xa3, 0xc6, 0xd2, 0xb0, 0xac, 0x46, + 0x3f, 0xc6, 0x6c, 0xba, 0x57, 0x3d, 0x63, 0x17, 0x70, 0x3a, 0xfa, 0x75, + 0x88, 0x90, 0x38, 0xae, 0x6d, 0x14, 0x0d, 0xac, 0xf8, 0x20, 0x83, 0x69, + 0x94, 0x6d, 0xf9, 0x55, 0x4e, 0x6f, 0xf4, 0x27, 0xb0, 0xf7, 0xdd, 0xf8, +}; +static const unsigned char kat4297_addinpr2[] = {0}; +static const unsigned char kat4297_retbits[] = { + 0xb8, 0x69, 0x18, 0xec, 0x64, 0x51, 0x8e, 0x68, 0xd4, 0xa2, 0x83, 0xab, + 0x15, 0x19, 0xec, 0xfe, 0x99, 0xfc, 0x12, 0x83, 0xb5, 0xfa, 0xd7, 0x9b, + 0x24, 0x69, 0x42, 0xcd, 0xc0, 0xc9, 0xb4, 0x3d, 0xea, 0xb9, 0x40, 0x9a, + 0x28, 0x67, 0xa4, 0x16, 0xb7, 0x49, 0xec, 0x80, 0xe7, 0xba, 0xc2, 0x5e, + 0x84, 0x70, 0x45, 0x44, 0x47, 0xab, 0xba, 0x9a, 0x81, 0x6c, 0x61, 0xce, + 0xed, 0x83, 0x05, 0x26, +}; +static const struct drbg_kat_pr_true kat4297_t = { + 6, kat4297_entropyin, kat4297_nonce, kat4297_persstr, + kat4297_entropyinpr1, kat4297_addinpr1, kat4297_entropyinpr2, + kat4297_addinpr2, kat4297_retbits +}; +static const struct drbg_kat kat4297 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4297_t +}; + +static const unsigned char kat4298_entropyin[] = { + 0x8c, 0xc1, 0xfe, 0x7b, 0x81, 0xca, 0xa3, 0x5c, 0x1c, 0xd5, 0xc5, 0x78, + 0x6d, 0xe5, 0x0d, 0x7e, 0xa3, 0xf7, 0x64, 0x15, 0xfb, 0x2f, 0xb8, 0xed, + 0x07, 0x21, 0x65, 0xc2, 0x41, 0xc1, 0x34, 0x71, 0xfa, 0x7d, 0x5d, 0x3b, + 0x56, 0x17, 0x16, 0xfb, 0xc4, 0xf8, 0x60, 0x45, 0xc6, 0xfb, 0x49, 0x8f, +}; +static const unsigned char kat4298_nonce[] = {0}; +static const unsigned char kat4298_persstr[] = { + 0x10, 0xbe, 0xc5, 0xf7, 0x24, 0x5b, 0xdb, 0xaa, 0x8e, 0x25, 0xf6, 0xd3, + 0x30, 0x71, 0x7a, 0x3f, 0xf9, 0x9b, 0x37, 0x4c, 0x83, 0x07, 0x1d, 0xf8, + 0x2e, 0x9e, 0x94, 0x22, 0x08, 0xa8, 0xdb, 0x74, 0xb4, 0x80, 0x76, 0x80, + 0xc8, 0x8a, 0x5f, 0xe7, 0x1c, 0xff, 0x72, 0xaf, 0x43, 0xc7, 0x91, 0xb8, +}; +static const unsigned char kat4298_entropyinpr1[] = { + 0xf7, 0xb1, 0x00, 0xc5, 0x69, 0x5b, 0x9d, 0x41, 0xe6, 0x20, 0xaa, 0x5a, + 0x7a, 0x7c, 0xca, 0x07, 0xbb, 0x13, 0xd3, 0x24, 0x47, 0xdb, 0xf0, 0x4d, + 0x82, 0x8e, 0x16, 0xe4, 0x3b, 0xef, 0x1e, 0xbe, 0xf7, 0xd0, 0x0a, 0xb4, + 0x37, 0x3b, 0x4c, 0x8f, 0x20, 0xe4, 0xbf, 0xfb, 0x61, 0x88, 0x8d, 0xb9, +}; +static const unsigned char kat4298_addinpr1[] = {0}; +static const unsigned char kat4298_entropyinpr2[] = { + 0xf5, 0xb6, 0xd8, 0xce, 0x7d, 0x22, 0x90, 0xe2, 0x06, 0xb2, 0x99, 0xd6, + 0x59, 0xa6, 0xf1, 0xa6, 0x4e, 0xf8, 0x47, 0xec, 0x9b, 0x2b, 0x5f, 0x29, + 0xc6, 0x93, 0x1b, 0xa7, 0x4f, 0xf2, 0xe2, 0x69, 0x72, 0xda, 0x4a, 0x1b, + 0x43, 0xb1, 0xae, 0xee, 0x94, 0xcd, 0xf1, 0xb2, 0x11, 0x49, 0x04, 0x64, +}; +static const unsigned char kat4298_addinpr2[] = {0}; +static const unsigned char kat4298_retbits[] = { + 0xbc, 0x22, 0x55, 0x2a, 0x9f, 0x89, 0x10, 0x9b, 0xe2, 0x1e, 0x0b, 0x7a, + 0x6b, 0x92, 0x69, 0x04, 0xa5, 0x78, 0x9c, 0xde, 0xb4, 0xb4, 0x26, 0x6b, + 0xd7, 0x53, 0x7c, 0x05, 0xd6, 0x56, 0x1b, 0xae, 0x80, 0x9e, 0xc4, 0x78, + 0x03, 0xd6, 0x63, 0xba, 0x48, 0x46, 0xd2, 0x28, 0x3c, 0xf5, 0x31, 0x3d, + 0xef, 0xf9, 0x05, 0x51, 0xcd, 0x1d, 0xae, 0xf3, 0xf9, 0xcb, 0x0e, 0x7f, + 0xd9, 0x36, 0x0d, 0x83, +}; +static const struct drbg_kat_pr_true kat4298_t = { + 7, kat4298_entropyin, kat4298_nonce, kat4298_persstr, + kat4298_entropyinpr1, kat4298_addinpr1, kat4298_entropyinpr2, + kat4298_addinpr2, kat4298_retbits +}; +static const struct drbg_kat kat4298 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4298_t +}; + +static const unsigned char kat4299_entropyin[] = { + 0x06, 0x0f, 0x8a, 0x56, 0xc5, 0x13, 0x8b, 0x71, 0x9f, 0x98, 0xd2, 0xca, + 0x3e, 0x25, 0x86, 0x6b, 0x23, 0xf1, 0x94, 0xbe, 0x2b, 0xc6, 0x9f, 0xbc, + 0x8b, 0x46, 0x75, 0x5f, 0x27, 0x02, 0x18, 0x72, 0x4d, 0xe0, 0x22, 0x18, + 0xa4, 0xd7, 0xd7, 0x6e, 0xd4, 0xa0, 0x5f, 0x80, 0x6c, 0xca, 0xad, 0x0b, +}; +static const unsigned char kat4299_nonce[] = {0}; +static const unsigned char kat4299_persstr[] = { + 0x98, 0x0d, 0x41, 0xad, 0xa5, 0x6e, 0x74, 0x75, 0xee, 0xff, 0xc6, 0x2c, + 0xce, 0x6c, 0x0e, 0x8f, 0x2c, 0x16, 0x19, 0x37, 0xfa, 0x58, 0x67, 0x7e, + 0xd6, 0xd3, 0xd9, 0x6b, 0x08, 0x63, 0x3c, 0x2c, 0xf6, 0x67, 0xe1, 0x92, + 0x73, 0x3d, 0x97, 0x13, 0x85, 0x11, 0x09, 0xdc, 0xf1, 0x36, 0x6c, 0x01, +}; +static const unsigned char kat4299_entropyinpr1[] = { + 0xdc, 0x66, 0xae, 0x4f, 0xda, 0xa6, 0x6a, 0x1b, 0xca, 0x4c, 0x98, 0x30, + 0x04, 0x85, 0x3e, 0x7c, 0x08, 0x07, 0x5c, 0x5f, 0xca, 0xdc, 0xc8, 0x75, + 0x63, 0xad, 0x2a, 0xe9, 0xc6, 0x25, 0x32, 0x43, 0x94, 0x60, 0xf9, 0x58, + 0xe4, 0x4a, 0x6f, 0x9b, 0x0b, 0x80, 0x11, 0xa9, 0x60, 0xad, 0xcf, 0xd1, +}; +static const unsigned char kat4299_addinpr1[] = {0}; +static const unsigned char kat4299_entropyinpr2[] = { + 0x95, 0x10, 0xe7, 0x4d, 0x12, 0xf8, 0xa1, 0xb1, 0x1c, 0x54, 0x4c, 0xbc, + 0x4d, 0xa1, 0x80, 0x3f, 0x19, 0x47, 0xf7, 0x31, 0x11, 0x10, 0x18, 0x4f, + 0x66, 0x7f, 0x58, 0xe1, 0x53, 0xdb, 0x3f, 0xde, 0x87, 0xfb, 0x5d, 0x77, + 0xaa, 0x99, 0xdd, 0x27, 0x27, 0x83, 0xb3, 0x8b, 0x9f, 0xa9, 0xa8, 0x91, +}; +static const unsigned char kat4299_addinpr2[] = {0}; +static const unsigned char kat4299_retbits[] = { + 0xc0, 0x50, 0x6d, 0xeb, 0xc2, 0x8c, 0x7c, 0x81, 0x72, 0xd3, 0x21, 0xa3, + 0xd7, 0xd6, 0xe9, 0xec, 0xa4, 0xac, 0xb9, 0x6c, 0xaa, 0x41, 0xa5, 0x43, + 0x7a, 0xcf, 0x48, 0xc1, 0x40, 0x10, 0x22, 0xd1, 0x4e, 0x19, 0xab, 0xe6, + 0x48, 0x35, 0x7a, 0x81, 0x5d, 0xf8, 0x71, 0x61, 0x6d, 0x0c, 0x60, 0xe7, + 0x69, 0x8b, 0x01, 0x89, 0xfc, 0x6c, 0x2d, 0xf6, 0x9f, 0xf0, 0x9f, 0x9d, + 0x63, 0x85, 0x72, 0x16, +}; +static const struct drbg_kat_pr_true kat4299_t = { + 8, kat4299_entropyin, kat4299_nonce, kat4299_persstr, + kat4299_entropyinpr1, kat4299_addinpr1, kat4299_entropyinpr2, + kat4299_addinpr2, kat4299_retbits +}; +static const struct drbg_kat kat4299 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4299_t +}; + +static const unsigned char kat4300_entropyin[] = { + 0x46, 0xf5, 0xe2, 0x33, 0x03, 0xbd, 0x0a, 0xa0, 0x98, 0x84, 0x43, 0xf0, + 0x3b, 0xec, 0xd4, 0x03, 0xdc, 0x05, 0x9b, 0x10, 0x5b, 0x2f, 0x4a, 0x06, + 0xdf, 0xc1, 0xae, 0xba, 0x34, 0xb1, 0x1b, 0xcc, 0xc9, 0x76, 0xa8, 0xdf, + 0x37, 0xb9, 0xf1, 0xe5, 0x2e, 0x8e, 0x5e, 0xfd, 0xfb, 0x04, 0x71, 0x1b, +}; +static const unsigned char kat4300_nonce[] = {0}; +static const unsigned char kat4300_persstr[] = { + 0xfa, 0xa1, 0x6e, 0xbc, 0x9c, 0x16, 0xea, 0xca, 0x52, 0x6e, 0xb2, 0xa5, + 0x1e, 0xa2, 0x9d, 0x6d, 0x8c, 0xeb, 0x73, 0x9a, 0xe0, 0xad, 0x6b, 0x4c, + 0x48, 0x27, 0x66, 0x03, 0x55, 0x7b, 0xf0, 0x2f, 0xac, 0x8e, 0x65, 0xc8, + 0x8f, 0x72, 0x77, 0x1e, 0xe4, 0x4b, 0x2c, 0x96, 0x74, 0x28, 0x3c, 0x3a, +}; +static const unsigned char kat4300_entropyinpr1[] = { + 0x51, 0xbf, 0x8f, 0x5d, 0xcc, 0xaf, 0x17, 0xaf, 0x2a, 0x72, 0xe4, 0xae, + 0x06, 0x23, 0xaf, 0x4a, 0x80, 0x2d, 0x77, 0x2e, 0xeb, 0x56, 0xbd, 0xb7, + 0xb2, 0x0d, 0xba, 0x83, 0x9e, 0xc2, 0x38, 0x58, 0xfd, 0xbd, 0x83, 0xd3, + 0x15, 0xc3, 0x21, 0xba, 0x1e, 0x15, 0x7b, 0x75, 0xfd, 0x2d, 0x38, 0x8e, +}; +static const unsigned char kat4300_addinpr1[] = {0}; +static const unsigned char kat4300_entropyinpr2[] = { + 0xc4, 0x08, 0xb8, 0xad, 0x63, 0xdc, 0x65, 0x77, 0x91, 0x52, 0xed, 0x79, + 0xea, 0xc4, 0x28, 0x2e, 0x26, 0xb8, 0xa1, 0x94, 0xf3, 0xc6, 0xae, 0xad, + 0x7e, 0x4b, 0x36, 0xc3, 0x98, 0x8c, 0xb3, 0x18, 0xc7, 0x98, 0x2b, 0x7c, + 0x15, 0x44, 0x4e, 0x82, 0x7f, 0x8e, 0x1e, 0xbe, 0x4a, 0xf9, 0xde, 0x9e, +}; +static const unsigned char kat4300_addinpr2[] = {0}; +static const unsigned char kat4300_retbits[] = { + 0x2b, 0x78, 0x21, 0x3f, 0x52, 0xdb, 0x9f, 0x63, 0x56, 0x03, 0xee, 0x17, + 0xed, 0x2f, 0xa2, 0x34, 0x54, 0xa9, 0x4e, 0xf2, 0xc5, 0xcf, 0xa2, 0x25, + 0xa8, 0x10, 0x53, 0x0a, 0xc8, 0x63, 0x13, 0x09, 0x79, 0xfd, 0x46, 0x46, + 0x09, 0x42, 0xe0, 0x66, 0x3c, 0xd6, 0x2c, 0x20, 0x8c, 0xd2, 0x41, 0x60, + 0x0e, 0x0c, 0xc3, 0xac, 0x0f, 0xcf, 0xf5, 0xf4, 0xf1, 0x26, 0x81, 0x32, + 0xea, 0x55, 0xf8, 0xc6, +}; +static const struct drbg_kat_pr_true kat4300_t = { + 9, kat4300_entropyin, kat4300_nonce, kat4300_persstr, + kat4300_entropyinpr1, kat4300_addinpr1, kat4300_entropyinpr2, + kat4300_addinpr2, kat4300_retbits +}; +static const struct drbg_kat kat4300 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4300_t +}; + +static const unsigned char kat4301_entropyin[] = { + 0xc3, 0x55, 0xfb, 0x1f, 0xed, 0xbd, 0xae, 0x30, 0x02, 0x42, 0x57, 0x2c, + 0xa8, 0x61, 0x14, 0xa1, 0xbc, 0x36, 0x8f, 0x6a, 0xf7, 0x41, 0xeb, 0x2e, + 0x18, 0xdf, 0xfb, 0xfd, 0x42, 0x39, 0x11, 0x58, 0x14, 0xf2, 0x63, 0xc3, + 0xfe, 0xfa, 0xd0, 0x27, 0x20, 0x57, 0x62, 0x9d, 0x0c, 0x98, 0x17, 0xb4, +}; +static const unsigned char kat4301_nonce[] = {0}; +static const unsigned char kat4301_persstr[] = { + 0x1d, 0x61, 0x53, 0xbd, 0xa4, 0xf5, 0x03, 0x0f, 0x41, 0x6d, 0x59, 0xc1, + 0x5a, 0x6f, 0x3f, 0x7f, 0x63, 0x00, 0x09, 0x84, 0xec, 0xfc, 0xbc, 0xc7, + 0x09, 0xaa, 0x7c, 0x0f, 0xdd, 0xa4, 0x24, 0x56, 0x4e, 0x0d, 0x82, 0x6a, + 0x5c, 0xa7, 0x3c, 0x9f, 0x08, 0xe8, 0x29, 0x63, 0xb4, 0x99, 0x60, 0x54, +}; +static const unsigned char kat4301_entropyinpr1[] = { + 0xb6, 0x90, 0x54, 0x4d, 0xbe, 0xdc, 0x86, 0xd0, 0x8f, 0x5b, 0x1d, 0x56, + 0x4a, 0x43, 0xbd, 0xcb, 0xb0, 0x42, 0xd9, 0xf7, 0x35, 0xdd, 0xd3, 0x71, + 0x59, 0xd0, 0x05, 0x18, 0xc6, 0x52, 0xc8, 0xd2, 0x54, 0x59, 0x58, 0x3c, + 0x82, 0xa6, 0x86, 0x14, 0xac, 0x67, 0xee, 0x6d, 0x7f, 0xa6, 0x0d, 0x59, +}; +static const unsigned char kat4301_addinpr1[] = {0}; +static const unsigned char kat4301_entropyinpr2[] = { + 0x87, 0x97, 0x8d, 0x77, 0x5b, 0xd0, 0x7c, 0x4e, 0x01, 0xce, 0xb7, 0xa2, + 0x6e, 0xc9, 0x2f, 0x18, 0x74, 0x46, 0xd6, 0x23, 0x4f, 0x83, 0x11, 0x80, + 0x69, 0xa8, 0xfb, 0xa6, 0xea, 0x15, 0x02, 0x26, 0xd8, 0x2f, 0xba, 0x38, + 0xa5, 0x82, 0xa9, 0x91, 0xaf, 0x7d, 0x2a, 0xce, 0x5b, 0x71, 0x40, 0xe2, +}; +static const unsigned char kat4301_addinpr2[] = {0}; +static const unsigned char kat4301_retbits[] = { + 0xa9, 0x98, 0xc5, 0x49, 0xc7, 0x0b, 0x31, 0x82, 0xbd, 0xf2, 0x25, 0x3b, + 0x0e, 0xaa, 0xc2, 0x8a, 0x5e, 0x9e, 0x8b, 0x5d, 0x85, 0x69, 0x79, 0xb8, + 0x43, 0x06, 0x30, 0x4e, 0x1c, 0x69, 0x2c, 0x6a, 0x86, 0xd9, 0x08, 0x8f, + 0x4a, 0x53, 0x9c, 0xcc, 0x4d, 0x97, 0x9c, 0x53, 0x8f, 0x80, 0x99, 0xca, + 0x41, 0x6e, 0x0c, 0x2b, 0xe0, 0xe7, 0xed, 0x86, 0xcd, 0x8c, 0x63, 0xcb, + 0x84, 0xbd, 0x0d, 0x06, +}; +static const struct drbg_kat_pr_true kat4301_t = { + 10, kat4301_entropyin, kat4301_nonce, kat4301_persstr, + kat4301_entropyinpr1, kat4301_addinpr1, kat4301_entropyinpr2, + kat4301_addinpr2, kat4301_retbits +}; +static const struct drbg_kat kat4301 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4301_t +}; + +static const unsigned char kat4302_entropyin[] = { + 0xed, 0xd6, 0x1c, 0x76, 0x92, 0x52, 0xce, 0x8b, 0xc4, 0xed, 0x1d, 0x1a, + 0xa9, 0xea, 0x47, 0xc6, 0xfd, 0x87, 0x99, 0x73, 0x3e, 0x44, 0x00, 0xf7, + 0xdb, 0x75, 0xb6, 0x39, 0xd6, 0x44, 0x36, 0x5b, 0x1d, 0x2d, 0x06, 0xf4, + 0x19, 0x80, 0x9d, 0xc0, 0x17, 0x9f, 0x84, 0xc3, 0x4b, 0xc9, 0xa9, 0x57, +}; +static const unsigned char kat4302_nonce[] = {0}; +static const unsigned char kat4302_persstr[] = { + 0x2e, 0xe1, 0x8e, 0xd0, 0xd5, 0x33, 0xe9, 0x42, 0x75, 0xb9, 0x81, 0x7c, + 0xb3, 0xe3, 0x65, 0xde, 0xe1, 0x6e, 0x05, 0x56, 0x0d, 0x98, 0x83, 0x84, + 0x03, 0x2e, 0xc4, 0x2e, 0xbb, 0x19, 0xc7, 0xce, 0x26, 0x9b, 0x14, 0xbe, + 0x8f, 0xdb, 0xec, 0x1a, 0x65, 0x09, 0x6f, 0x8d, 0xaa, 0x92, 0xb8, 0x0b, +}; +static const unsigned char kat4302_entropyinpr1[] = { + 0x7a, 0x17, 0xf8, 0x7b, 0x47, 0xc0, 0x66, 0x1b, 0x54, 0xf4, 0x40, 0x8c, + 0xed, 0x12, 0x94, 0x37, 0x40, 0x8b, 0xed, 0x98, 0x0b, 0x45, 0x18, 0xa6, + 0xad, 0xae, 0x87, 0x03, 0x1e, 0x3a, 0x76, 0x76, 0x35, 0x11, 0xbe, 0x79, + 0xf4, 0xbb, 0xf1, 0x25, 0xe7, 0xe2, 0x79, 0x4c, 0xc2, 0xac, 0x7f, 0x4f, +}; +static const unsigned char kat4302_addinpr1[] = {0}; +static const unsigned char kat4302_entropyinpr2[] = { + 0xa6, 0x2c, 0x44, 0x49, 0x4a, 0x9a, 0x7d, 0x2e, 0x39, 0x85, 0x19, 0x66, + 0xe8, 0xe4, 0x36, 0x26, 0xfd, 0x62, 0xd1, 0xec, 0x2b, 0xa7, 0xb9, 0x04, + 0x8d, 0xbe, 0xde, 0x23, 0x94, 0xe2, 0x38, 0x2f, 0xa9, 0xd2, 0xa4, 0xc4, + 0xed, 0x7c, 0x49, 0x61, 0x5b, 0x5f, 0xa5, 0x01, 0xd9, 0xc9, 0x64, 0x8d, +}; +static const unsigned char kat4302_addinpr2[] = {0}; +static const unsigned char kat4302_retbits[] = { + 0x36, 0xf5, 0x6b, 0x86, 0x26, 0x7a, 0x78, 0x3f, 0xc9, 0xd3, 0xb5, 0xe6, + 0x6c, 0x0b, 0x4f, 0x15, 0x5b, 0x11, 0x52, 0xc5, 0x0b, 0xfa, 0x0d, 0x39, + 0xe5, 0x4b, 0xa9, 0x83, 0x75, 0x97, 0x09, 0x4e, 0xd8, 0xef, 0xfc, 0x80, + 0x52, 0xe3, 0x8a, 0xe4, 0xb6, 0x92, 0x9f, 0x71, 0x87, 0x00, 0x4b, 0xeb, + 0x30, 0xb5, 0x83, 0xd4, 0x7b, 0x89, 0x2c, 0xbd, 0xac, 0x8e, 0x27, 0x99, + 0x55, 0x47, 0xdf, 0xcb, +}; +static const struct drbg_kat_pr_true kat4302_t = { + 11, kat4302_entropyin, kat4302_nonce, kat4302_persstr, + kat4302_entropyinpr1, kat4302_addinpr1, kat4302_entropyinpr2, + kat4302_addinpr2, kat4302_retbits +}; +static const struct drbg_kat kat4302 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4302_t +}; + +static const unsigned char kat4303_entropyin[] = { + 0xb1, 0x49, 0x2c, 0xf3, 0x03, 0x6b, 0xf4, 0x2e, 0x20, 0x19, 0x46, 0x6d, + 0x81, 0x80, 0x92, 0x52, 0x8a, 0x24, 0x78, 0x51, 0xd3, 0x08, 0x04, 0x14, + 0x69, 0x9b, 0x94, 0x2d, 0x67, 0xea, 0x79, 0x5f, 0x85, 0x06, 0x86, 0x65, + 0x75, 0x4f, 0xe3, 0x5e, 0x7b, 0x04, 0x06, 0xd5, 0x4e, 0x69, 0x41, 0x68, +}; +static const unsigned char kat4303_nonce[] = {0}; +static const unsigned char kat4303_persstr[] = { + 0xce, 0xae, 0xc0, 0x8a, 0x19, 0xf8, 0x2a, 0xc6, 0x1f, 0x57, 0x1a, 0x48, + 0xcc, 0x48, 0xdb, 0x10, 0xe1, 0x9b, 0x2e, 0xf1, 0x5a, 0x91, 0xe0, 0x74, + 0xf5, 0x45, 0xf8, 0x05, 0x55, 0x91, 0x4e, 0x4b, 0x14, 0x64, 0x06, 0xca, + 0xd8, 0x11, 0x24, 0xbc, 0x6b, 0xd5, 0x50, 0xf4, 0xe4, 0x74, 0x80, 0xe5, +}; +static const unsigned char kat4303_entropyinpr1[] = { + 0x01, 0x2a, 0xca, 0x64, 0xe0, 0x27, 0x00, 0x10, 0x1b, 0x45, 0x36, 0x81, + 0xe2, 0x56, 0xe3, 0xab, 0x86, 0xa4, 0xa6, 0xea, 0x64, 0x76, 0x4f, 0x92, + 0x0c, 0xe1, 0xdf, 0xb7, 0x04, 0x05, 0x20, 0x0d, 0x03, 0x37, 0x86, 0x0d, + 0x8f, 0xdd, 0xbb, 0x8f, 0x74, 0x83, 0x7e, 0x57, 0xd8, 0xf4, 0x73, 0xa5, +}; +static const unsigned char kat4303_addinpr1[] = {0}; +static const unsigned char kat4303_entropyinpr2[] = { + 0x88, 0xa8, 0xf0, 0xc3, 0xb8, 0x2b, 0x25, 0xa2, 0xdb, 0x28, 0x0b, 0x0e, + 0x8f, 0x80, 0x65, 0x6b, 0x3e, 0x49, 0x93, 0xb8, 0x93, 0xba, 0x80, 0x20, + 0x00, 0xb8, 0xcd, 0x92, 0xdf, 0x1d, 0x05, 0x42, 0xc8, 0x76, 0xcc, 0x8d, + 0x3c, 0x91, 0x79, 0x83, 0xdc, 0xab, 0x6f, 0xbf, 0xeb, 0x1b, 0x2b, 0xff, +}; +static const unsigned char kat4303_addinpr2[] = {0}; +static const unsigned char kat4303_retbits[] = { + 0x9e, 0x7f, 0xe5, 0x3c, 0xde, 0xbe, 0xc6, 0xdc, 0xbd, 0xce, 0xa9, 0xef, + 0xef, 0x1e, 0xea, 0x2e, 0x7b, 0x74, 0x5e, 0x50, 0x34, 0xec, 0x1d, 0xa4, + 0xe0, 0x84, 0x4d, 0x64, 0xec, 0x4a, 0xdb, 0x5c, 0x29, 0xc1, 0xe2, 0x2f, + 0xa6, 0x30, 0x5f, 0x45, 0xa8, 0xe1, 0x44, 0xf2, 0xaf, 0x0d, 0xdc, 0xab, + 0x4f, 0xef, 0xc9, 0x09, 0x3c, 0x0e, 0xc4, 0xd4, 0xb2, 0x05, 0x51, 0x50, + 0xaa, 0x72, 0x6f, 0x83, +}; +static const struct drbg_kat_pr_true kat4303_t = { + 12, kat4303_entropyin, kat4303_nonce, kat4303_persstr, + kat4303_entropyinpr1, kat4303_addinpr1, kat4303_entropyinpr2, + kat4303_addinpr2, kat4303_retbits +}; +static const struct drbg_kat kat4303 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4303_t +}; + +static const unsigned char kat4304_entropyin[] = { + 0x5c, 0x99, 0x49, 0xd7, 0xc5, 0x40, 0x60, 0xbf, 0xf7, 0x33, 0xe5, 0x17, + 0xe5, 0x5a, 0x69, 0xa2, 0x7b, 0x17, 0x48, 0x0b, 0xf8, 0x54, 0x9c, 0x39, + 0x00, 0xde, 0xbd, 0x80, 0x34, 0xff, 0x2d, 0x34, 0x50, 0x9f, 0x15, 0x60, + 0x67, 0xa1, 0x05, 0x15, 0x59, 0x8a, 0x9b, 0x3a, 0x88, 0xb9, 0xe3, 0xc9, +}; +static const unsigned char kat4304_nonce[] = {0}; +static const unsigned char kat4304_persstr[] = { + 0x09, 0x06, 0x50, 0x2d, 0xd6, 0xf7, 0x37, 0xce, 0x49, 0x75, 0x3b, 0x67, + 0xa5, 0x44, 0x32, 0x8f, 0x21, 0x6e, 0x59, 0xe0, 0xad, 0x38, 0x25, 0x68, + 0x78, 0xf5, 0x56, 0xf7, 0xdd, 0x9b, 0x8c, 0x5f, 0x2d, 0xd5, 0x21, 0xcd, + 0x57, 0xa4, 0x65, 0x86, 0x7f, 0x86, 0x14, 0x38, 0x03, 0x7e, 0x25, 0x27, +}; +static const unsigned char kat4304_entropyinpr1[] = { + 0x6f, 0xc9, 0xbd, 0xfa, 0xe7, 0xf0, 0xa2, 0x0d, 0x8d, 0x86, 0x85, 0xe1, + 0xc8, 0x27, 0xef, 0x35, 0x34, 0x46, 0x3f, 0x96, 0x52, 0xff, 0xd3, 0x60, + 0x78, 0x23, 0xa9, 0x01, 0x65, 0x30, 0x94, 0xa6, 0xac, 0xfd, 0x69, 0xaf, + 0xcf, 0x0a, 0xcf, 0xc5, 0x41, 0xfa, 0x4f, 0xb5, 0x9b, 0x15, 0xbd, 0x60, +}; +static const unsigned char kat4304_addinpr1[] = {0}; +static const unsigned char kat4304_entropyinpr2[] = { + 0xf6, 0xc9, 0x94, 0x27, 0x16, 0xe1, 0x68, 0xce, 0xb1, 0x98, 0xfd, 0xe6, + 0x80, 0xd8, 0x58, 0x24, 0xd7, 0x84, 0x55, 0x3d, 0x84, 0x18, 0x3c, 0xcb, + 0x79, 0x21, 0x84, 0x3f, 0xe7, 0xe9, 0x86, 0x9c, 0x27, 0x9d, 0xc5, 0x7b, + 0xfa, 0x65, 0x0d, 0x12, 0xb5, 0x2e, 0x2d, 0x82, 0x44, 0xfc, 0x38, 0xd9, +}; +static const unsigned char kat4304_addinpr2[] = {0}; +static const unsigned char kat4304_retbits[] = { + 0x5e, 0x31, 0x39, 0x4e, 0xf7, 0xba, 0x43, 0x90, 0xad, 0xf1, 0x01, 0x12, + 0xb1, 0x91, 0x96, 0xef, 0xab, 0xbb, 0x80, 0x45, 0xfc, 0xca, 0xb2, 0x58, + 0xf0, 0x35, 0xde, 0x14, 0xc3, 0xc7, 0xe4, 0xad, 0x7f, 0x32, 0xc6, 0xec, + 0x1c, 0x94, 0x68, 0x10, 0x62, 0x35, 0xf5, 0x8a, 0xab, 0x6a, 0x81, 0xda, + 0xa7, 0x5d, 0xb1, 0x89, 0xfd, 0x29, 0xd0, 0x93, 0x87, 0x82, 0xf3, 0x27, + 0x59, 0xf4, 0x19, 0xd3, +}; +static const struct drbg_kat_pr_true kat4304_t = { + 13, kat4304_entropyin, kat4304_nonce, kat4304_persstr, + kat4304_entropyinpr1, kat4304_addinpr1, kat4304_entropyinpr2, + kat4304_addinpr2, kat4304_retbits +}; +static const struct drbg_kat kat4304 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4304_t +}; + +static const unsigned char kat4305_entropyin[] = { + 0x84, 0xee, 0x83, 0x85, 0xc8, 0x0c, 0x0f, 0xa6, 0x23, 0x66, 0x2d, 0x21, + 0x08, 0xe7, 0x8b, 0x97, 0x4b, 0xd4, 0x69, 0xac, 0x23, 0x89, 0xd2, 0x01, + 0xdf, 0x2b, 0x67, 0x5a, 0xc7, 0xe6, 0xc6, 0x14, 0x2b, 0xfa, 0x35, 0xa1, + 0x62, 0xf2, 0x23, 0x2c, 0x56, 0xe5, 0xa1, 0x11, 0xa3, 0x4f, 0x5c, 0x57, +}; +static const unsigned char kat4305_nonce[] = {0}; +static const unsigned char kat4305_persstr[] = { + 0x9e, 0x85, 0xb8, 0x92, 0x70, 0x70, 0xe5, 0xa2, 0x7b, 0xfd, 0x63, 0x38, + 0x45, 0x83, 0x18, 0x3e, 0xa1, 0x46, 0xd8, 0x58, 0x64, 0x14, 0xad, 0x89, + 0xd3, 0x00, 0xde, 0xdd, 0xb1, 0xdd, 0xd1, 0xd4, 0x61, 0xb0, 0x18, 0x4d, + 0xac, 0xe4, 0x29, 0x02, 0x04, 0x42, 0x2b, 0xc6, 0x4f, 0xca, 0x95, 0xbf, +}; +static const unsigned char kat4305_entropyinpr1[] = { + 0xc3, 0x44, 0x42, 0x61, 0x96, 0x23, 0x86, 0xb5, 0x7d, 0x6c, 0x5f, 0x12, + 0x5d, 0xc3, 0x04, 0x36, 0x78, 0xaf, 0xe1, 0x96, 0x2d, 0x55, 0xd9, 0xe6, + 0x20, 0x4f, 0xba, 0x22, 0x9e, 0x78, 0x1f, 0xd0, 0x63, 0x6d, 0x07, 0xfe, + 0x6a, 0x05, 0x2e, 0xd6, 0x8f, 0xe2, 0x7e, 0x2c, 0x60, 0x1c, 0x01, 0xa4, +}; +static const unsigned char kat4305_addinpr1[] = {0}; +static const unsigned char kat4305_entropyinpr2[] = { + 0x1f, 0xd8, 0x95, 0x06, 0x8a, 0xec, 0x8d, 0xf2, 0x68, 0x47, 0x84, 0x00, + 0x79, 0x49, 0xe0, 0x37, 0x05, 0x78, 0x67, 0x6c, 0x65, 0x37, 0xa0, 0x9d, + 0xd9, 0x05, 0x67, 0xb9, 0x5f, 0x61, 0x38, 0x80, 0x9e, 0x70, 0xbc, 0xc9, + 0xfc, 0x9e, 0xfc, 0x03, 0xdf, 0xd8, 0x3f, 0x03, 0x67, 0x78, 0x4b, 0xde, +}; +static const unsigned char kat4305_addinpr2[] = {0}; +static const unsigned char kat4305_retbits[] = { + 0x89, 0x4f, 0x3b, 0xc0, 0xfc, 0xbd, 0xb7, 0x6b, 0x01, 0xdf, 0x80, 0xf0, + 0x5d, 0x0c, 0xa6, 0x36, 0xbd, 0x51, 0x43, 0x8f, 0x5e, 0xe2, 0x82, 0x50, + 0xf2, 0x7e, 0x8e, 0x47, 0x96, 0x8c, 0x9c, 0x86, 0xa8, 0x47, 0x97, 0x00, + 0x90, 0xd5, 0x1b, 0x0a, 0x60, 0x98, 0x4e, 0xbb, 0x50, 0x79, 0x01, 0x7a, + 0x5c, 0x5b, 0xac, 0x39, 0x4e, 0x96, 0x44, 0xbe, 0xfc, 0x56, 0x6e, 0xdd, + 0x47, 0x68, 0xd9, 0x19, +}; +static const struct drbg_kat_pr_true kat4305_t = { + 14, kat4305_entropyin, kat4305_nonce, kat4305_persstr, + kat4305_entropyinpr1, kat4305_addinpr1, kat4305_entropyinpr2, + kat4305_addinpr2, kat4305_retbits +}; +static const struct drbg_kat kat4305 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 0, 64, &kat4305_t +}; + +static const unsigned char kat4306_entropyin[] = { + 0xd1, 0x02, 0x23, 0x69, 0x87, 0xb3, 0x56, 0x2b, 0x63, 0x1c, 0x79, 0x15, + 0xb1, 0x92, 0x58, 0xc0, 0x19, 0xcd, 0x16, 0x52, 0x17, 0xb3, 0xf6, 0xda, + 0x30, 0xf7, 0x1e, 0x40, 0x9c, 0xe2, 0xad, 0x2f, 0x7a, 0xc8, 0xb6, 0xde, + 0x86, 0x69, 0x6e, 0xd2, 0x7b, 0xc0, 0x25, 0x17, 0x01, 0xa4, 0xe2, 0x20, +}; +static const unsigned char kat4306_nonce[] = {0}; +static const unsigned char kat4306_persstr[] = { + 0x0d, 0x76, 0xf1, 0x0e, 0x4b, 0x15, 0x26, 0x3d, 0xee, 0x96, 0xa2, 0x88, + 0x4f, 0x3e, 0xb3, 0x8b, 0x6a, 0x9c, 0xba, 0x0c, 0x37, 0x2d, 0x75, 0x4a, + 0xdf, 0xf9, 0x2c, 0xbc, 0xd5, 0xf9, 0x78, 0x4c, 0xbe, 0x37, 0x1d, 0xce, + 0xd8, 0x33, 0xfd, 0x76, 0xe4, 0x33, 0xc8, 0xe6, 0x1f, 0xe5, 0x46, 0x79, +}; +static const unsigned char kat4306_entropyinpr1[] = { + 0xce, 0x72, 0x8d, 0x3f, 0xdf, 0x9c, 0xa9, 0x16, 0x9b, 0xb0, 0x9d, 0x07, + 0x70, 0x75, 0x37, 0x04, 0x83, 0x0b, 0x7a, 0x74, 0x22, 0x5a, 0xd6, 0xb0, + 0x91, 0x74, 0xbb, 0xfd, 0x0c, 0xec, 0xfc, 0x69, 0x38, 0xd0, 0x86, 0x7e, + 0xf6, 0x29, 0x0c, 0x59, 0x49, 0xe9, 0xf6, 0x7f, 0x96, 0x72, 0x7d, 0x66, +}; +static const unsigned char kat4306_addinpr1[] = { + 0xd3, 0xe5, 0xec, 0x40, 0x2d, 0xbd, 0x70, 0xd5, 0x3b, 0x87, 0x52, 0xeb, + 0xb6, 0x93, 0xee, 0xe7, 0xf9, 0xbd, 0x91, 0xb8, 0x4c, 0x21, 0xcb, 0x48, + 0x68, 0x12, 0x52, 0x4d, 0x5d, 0xec, 0x45, 0xd6, 0xd9, 0xd6, 0xa3, 0x69, + 0x55, 0x84, 0x0b, 0xa7, 0xb9, 0x75, 0x4c, 0xaf, 0x83, 0x4a, 0x9a, 0xd4, +}; +static const unsigned char kat4306_entropyinpr2[] = { + 0x6e, 0x86, 0x43, 0x5f, 0xc3, 0x9e, 0x96, 0xee, 0x9d, 0xaf, 0xef, 0x7a, + 0x45, 0xa7, 0x3e, 0x28, 0xf5, 0x59, 0x4a, 0xbc, 0x87, 0xe8, 0x8a, 0x44, + 0xc0, 0x34, 0x86, 0x29, 0xa6, 0x79, 0x97, 0x2f, 0x32, 0x21, 0x64, 0xce, + 0x2b, 0x19, 0x1b, 0x29, 0xa9, 0xd2, 0x14, 0x55, 0xd7, 0x31, 0x0c, 0x4d, +}; +static const unsigned char kat4306_addinpr2[] = { + 0x1a, 0x9f, 0xe5, 0x52, 0xc1, 0xa2, 0x99, 0xf1, 0x4d, 0xac, 0x88, 0x9a, + 0xcd, 0x3f, 0x6d, 0x02, 0xc6, 0xb5, 0x81, 0xcc, 0x58, 0x02, 0x4f, 0x07, + 0xc4, 0x9d, 0x6e, 0x67, 0xcc, 0xb7, 0x47, 0x20, 0x44, 0xae, 0x5e, 0x30, + 0x4c, 0xdc, 0xf6, 0x23, 0xe4, 0x67, 0x7d, 0x13, 0xec, 0xda, 0x89, 0x2a, +}; +static const unsigned char kat4306_retbits[] = { + 0xe2, 0x0b, 0x30, 0xf4, 0x96, 0xae, 0x9d, 0xef, 0x70, 0x20, 0x74, 0x7e, + 0xe5, 0x34, 0x8b, 0x4a, 0x53, 0x1a, 0x6b, 0xa1, 0xb6, 0x2e, 0x74, 0x3f, + 0x31, 0xa7, 0xd3, 0xd3, 0xca, 0x81, 0x60, 0x81, 0x9f, 0x57, 0xd6, 0xe1, + 0x4f, 0x52, 0xfe, 0xde, 0x07, 0x14, 0xa9, 0xe3, 0xbb, 0x71, 0x88, 0x7c, + 0x3b, 0x50, 0xaa, 0xcd, 0xf5, 0x30, 0x60, 0xb3, 0x00, 0x03, 0x09, 0x2e, + 0x97, 0x76, 0x87, 0x01, +}; +static const struct drbg_kat_pr_true kat4306_t = { + 0, kat4306_entropyin, kat4306_nonce, kat4306_persstr, + kat4306_entropyinpr1, kat4306_addinpr1, kat4306_entropyinpr2, + kat4306_addinpr2, kat4306_retbits +}; +static const struct drbg_kat kat4306 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4306_t +}; + +static const unsigned char kat4307_entropyin[] = { + 0x4f, 0x43, 0x49, 0x9c, 0x07, 0x5d, 0xa8, 0x13, 0x43, 0x1f, 0x6c, 0x18, + 0x35, 0x5b, 0xe4, 0x1a, 0x3c, 0x76, 0xa1, 0xf4, 0x5c, 0x30, 0x1c, 0x83, + 0xd7, 0xf9, 0xe2, 0x54, 0x78, 0x56, 0x7d, 0x9e, 0x23, 0xbb, 0x7b, 0xf8, + 0xe0, 0x1e, 0x75, 0x98, 0xa6, 0xba, 0x09, 0x23, 0x52, 0x58, 0x2d, 0x97, +}; +static const unsigned char kat4307_nonce[] = {0}; +static const unsigned char kat4307_persstr[] = { + 0xf4, 0xf5, 0xf7, 0xdb, 0xe8, 0x49, 0xfb, 0xdb, 0xcc, 0x1b, 0x3f, 0x57, + 0x3a, 0xd1, 0x95, 0x1f, 0xed, 0xb0, 0x1d, 0xa0, 0xd6, 0x13, 0x37, 0xff, + 0x0c, 0xa5, 0xd8, 0xaf, 0xe2, 0xc3, 0x80, 0xd3, 0xd5, 0x49, 0x91, 0x69, + 0x96, 0x3b, 0x73, 0x5d, 0x03, 0x15, 0x95, 0x04, 0xf0, 0xa0, 0x32, 0x81, +}; +static const unsigned char kat4307_entropyinpr1[] = { + 0xb7, 0x18, 0x56, 0x3a, 0xa7, 0x38, 0x67, 0x5c, 0x24, 0xa5, 0x8f, 0x01, + 0x17, 0xe0, 0x60, 0x7c, 0xf1, 0x56, 0x87, 0xcc, 0x7f, 0x26, 0x57, 0xe5, + 0x61, 0x39, 0xd6, 0x73, 0x62, 0xe3, 0x31, 0x49, 0x97, 0x18, 0x10, 0xe5, + 0x55, 0x34, 0x98, 0x8c, 0x9e, 0x92, 0x3c, 0x55, 0x87, 0x13, 0x65, 0xdc, +}; +static const unsigned char kat4307_addinpr1[] = { + 0xa2, 0x72, 0x86, 0xc9, 0xbe, 0xc1, 0x28, 0x35, 0xc5, 0x2b, 0x70, 0x2b, + 0x3b, 0x65, 0x4c, 0x90, 0xc8, 0x0e, 0x01, 0xe6, 0xd5, 0xf8, 0x4b, 0xb8, + 0x0c, 0xf0, 0xb4, 0x6d, 0x1e, 0x3d, 0xc6, 0x0c, 0x03, 0x8c, 0x10, 0x5c, + 0xa3, 0x0e, 0x1a, 0x94, 0xeb, 0x73, 0x3b, 0x00, 0x4c, 0x76, 0xec, 0x4f, +}; +static const unsigned char kat4307_entropyinpr2[] = { + 0x35, 0xfe, 0x74, 0x10, 0xdf, 0xe6, 0x5c, 0x6f, 0xde, 0x71, 0x15, 0xfa, + 0xf2, 0x03, 0xe0, 0x10, 0x56, 0x33, 0x13, 0x32, 0x07, 0xc8, 0xaf, 0xf2, + 0x9c, 0xc8, 0x57, 0x80, 0xf7, 0x49, 0x99, 0x9f, 0xc5, 0x65, 0x59, 0xa9, + 0x56, 0xc2, 0x8c, 0xc3, 0xae, 0x2a, 0x4d, 0x54, 0xca, 0x49, 0xbe, 0x32, +}; +static const unsigned char kat4307_addinpr2[] = { + 0x3e, 0x25, 0x77, 0x5d, 0x56, 0xa1, 0x56, 0xd8, 0x6a, 0x20, 0xf8, 0xfa, + 0xa7, 0x7b, 0x1c, 0xa3, 0x32, 0x58, 0xf9, 0xa1, 0x2c, 0x10, 0x74, 0x8c, + 0x1f, 0x36, 0x3d, 0x5f, 0x7b, 0x10, 0xa6, 0x81, 0xdf, 0x65, 0x38, 0xd9, + 0xf6, 0x15, 0xc6, 0x3c, 0xd2, 0xc9, 0x7e, 0x1b, 0x6e, 0xe8, 0x2e, 0x7a, +}; +static const unsigned char kat4307_retbits[] = { + 0xf7, 0x63, 0xd0, 0x01, 0x55, 0x78, 0x49, 0x27, 0x83, 0x7c, 0xfd, 0x3d, + 0x54, 0x74, 0x0f, 0x48, 0x39, 0x8e, 0xc8, 0xec, 0xae, 0x66, 0x4b, 0x16, + 0x0d, 0x07, 0x8e, 0x81, 0xec, 0x6b, 0x02, 0xc6, 0x52, 0x83, 0xbe, 0x80, + 0x7a, 0x8e, 0x08, 0x7f, 0x5d, 0x36, 0x00, 0x23, 0x3a, 0x52, 0xcc, 0xba, + 0xa5, 0x93, 0x20, 0x39, 0x25, 0x42, 0x7e, 0xab, 0x16, 0xf4, 0x34, 0xd7, + 0x37, 0xbc, 0x6c, 0x48, +}; +static const struct drbg_kat_pr_true kat4307_t = { + 1, kat4307_entropyin, kat4307_nonce, kat4307_persstr, + kat4307_entropyinpr1, kat4307_addinpr1, kat4307_entropyinpr2, + kat4307_addinpr2, kat4307_retbits +}; +static const struct drbg_kat kat4307 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4307_t +}; + +static const unsigned char kat4308_entropyin[] = { + 0x15, 0xc9, 0xd9, 0x23, 0xb9, 0x37, 0x1e, 0x58, 0x5c, 0x81, 0x6e, 0xe4, + 0xa2, 0x03, 0xb9, 0xec, 0x93, 0xa1, 0x6f, 0x0f, 0x25, 0x25, 0x47, 0x4a, + 0x30, 0x2f, 0x50, 0x7c, 0xa0, 0xd6, 0xea, 0xa4, 0xbe, 0x94, 0x5f, 0x0c, + 0x88, 0x4d, 0x12, 0xac, 0x89, 0x3b, 0x8a, 0xfd, 0x44, 0x62, 0x46, 0xa4, +}; +static const unsigned char kat4308_nonce[] = {0}; +static const unsigned char kat4308_persstr[] = { + 0x54, 0x5b, 0x32, 0x69, 0x2a, 0xa6, 0x46, 0x40, 0xa7, 0x9f, 0xac, 0x5c, + 0xe3, 0xb0, 0x2a, 0x02, 0x03, 0x71, 0x1a, 0xf0, 0xe8, 0xfc, 0xe4, 0x5d, + 0x4a, 0xf2, 0x1f, 0x94, 0x99, 0xdb, 0xa9, 0xbf, 0x03, 0xf3, 0x0e, 0x03, + 0x5a, 0xcb, 0xa8, 0x16, 0xde, 0xfc, 0xc6, 0xf5, 0x0c, 0x0d, 0xa7, 0x2d, +}; +static const unsigned char kat4308_entropyinpr1[] = { + 0xf0, 0x22, 0x56, 0x0f, 0x3b, 0xb3, 0xaa, 0x16, 0x72, 0x52, 0x31, 0x6c, + 0xdd, 0xc7, 0x70, 0x35, 0x23, 0x4f, 0xc1, 0xd1, 0x71, 0x89, 0x44, 0xd4, + 0x17, 0xbe, 0xcd, 0x40, 0x57, 0x1b, 0xf2, 0x07, 0x5b, 0x9f, 0x39, 0xc9, + 0x36, 0x56, 0xd3, 0x88, 0x04, 0x2c, 0x6c, 0x0f, 0x34, 0x78, 0x47, 0x79, +}; +static const unsigned char kat4308_addinpr1[] = { + 0x67, 0x4a, 0x45, 0xa1, 0x1c, 0x29, 0xd7, 0x3d, 0x35, 0x61, 0x80, 0xee, + 0x98, 0x3b, 0x34, 0xcb, 0xbb, 0x06, 0x08, 0xa6, 0xce, 0xbd, 0xde, 0xb3, + 0x37, 0xd6, 0xa5, 0xf7, 0x19, 0x34, 0xe1, 0xf2, 0xeb, 0x51, 0xf0, 0x80, + 0x66, 0x12, 0xd1, 0xf1, 0xc7, 0x1b, 0x93, 0xa8, 0x19, 0x25, 0xd8, 0x21, +}; +static const unsigned char kat4308_entropyinpr2[] = { + 0x7e, 0x4f, 0x97, 0x3d, 0x64, 0x37, 0x8b, 0x21, 0x91, 0x62, 0xde, 0x5c, + 0xcb, 0x28, 0x43, 0x6b, 0x81, 0x79, 0x17, 0xf9, 0xd4, 0x7c, 0x76, 0x86, + 0x02, 0xcd, 0x90, 0x1c, 0x23, 0xa1, 0x7d, 0x66, 0x49, 0xc6, 0x83, 0x0f, + 0xf6, 0x2e, 0x3e, 0xdc, 0x57, 0x71, 0x85, 0x3e, 0xde, 0xe6, 0x9a, 0xb5, +}; +static const unsigned char kat4308_addinpr2[] = { + 0xc4, 0x6e, 0x29, 0x62, 0x67, 0x14, 0x53, 0x2b, 0xf5, 0xc6, 0x5f, 0x65, + 0xeb, 0xb5, 0xaf, 0x38, 0xf1, 0x07, 0x35, 0x92, 0x0b, 0xc0, 0xf0, 0x22, + 0x12, 0x21, 0x45, 0xd3, 0x3c, 0x84, 0xd8, 0x80, 0x56, 0xfd, 0x26, 0xd9, + 0x6d, 0xcc, 0x1b, 0x69, 0xef, 0xbf, 0x2a, 0x7a, 0xe7, 0x36, 0x0c, 0x24, +}; +static const unsigned char kat4308_retbits[] = { + 0x9d, 0xf1, 0x64, 0xfb, 0x08, 0xb8, 0x57, 0x94, 0xd2, 0xea, 0xe9, 0x2a, + 0x03, 0x99, 0x54, 0xc3, 0x7a, 0x9c, 0x41, 0x2e, 0x22, 0x4a, 0x24, 0x26, + 0x81, 0xfa, 0x4a, 0x70, 0x69, 0x4b, 0xbc, 0xd5, 0xff, 0x9d, 0x10, 0xb5, + 0x5d, 0x0f, 0x5a, 0x06, 0xdc, 0xdc, 0xde, 0xad, 0x90, 0xf3, 0x4a, 0x65, + 0xa2, 0xd0, 0xc9, 0x7b, 0x1e, 0x21, 0xda, 0x12, 0x90, 0xcd, 0x20, 0x8a, + 0x33, 0x27, 0x11, 0x1b, +}; +static const struct drbg_kat_pr_true kat4308_t = { + 2, kat4308_entropyin, kat4308_nonce, kat4308_persstr, + kat4308_entropyinpr1, kat4308_addinpr1, kat4308_entropyinpr2, + kat4308_addinpr2, kat4308_retbits +}; +static const struct drbg_kat kat4308 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4308_t +}; + +static const unsigned char kat4309_entropyin[] = { + 0x03, 0xe7, 0xdf, 0xaf, 0x67, 0x09, 0xc6, 0x81, 0x88, 0x46, 0x90, 0x33, + 0xb4, 0x18, 0xd3, 0x9f, 0x90, 0x89, 0xd5, 0xaf, 0x55, 0x72, 0xfc, 0xcd, + 0xb3, 0x15, 0xf7, 0x35, 0x01, 0xf3, 0xcd, 0x89, 0x97, 0x97, 0xf3, 0x92, + 0xe9, 0x4a, 0x51, 0x83, 0x5b, 0xa8, 0x5a, 0x17, 0xc2, 0xa6, 0x76, 0x35, +}; +static const unsigned char kat4309_nonce[] = {0}; +static const unsigned char kat4309_persstr[] = { + 0x11, 0x0f, 0xc1, 0xae, 0x4f, 0xbc, 0x7d, 0xff, 0x71, 0x8b, 0xc0, 0x02, + 0x52, 0x17, 0xcb, 0xce, 0x60, 0x63, 0x16, 0xa1, 0x8a, 0xc0, 0x29, 0x57, + 0x64, 0x42, 0xfb, 0xb9, 0x4e, 0x12, 0xf9, 0xeb, 0x46, 0x45, 0x45, 0x4a, + 0xf0, 0x1e, 0x1b, 0xa2, 0xed, 0xb4, 0xf0, 0x43, 0x84, 0xdb, 0x9c, 0x2e, +}; +static const unsigned char kat4309_entropyinpr1[] = { + 0xb0, 0x40, 0x49, 0x74, 0x93, 0xa0, 0x08, 0xd2, 0x5a, 0x09, 0x24, 0xd9, + 0xaa, 0x18, 0x93, 0x17, 0x47, 0x39, 0x5c, 0xfb, 0x65, 0x54, 0xea, 0xd0, + 0x55, 0xaa, 0x80, 0xfc, 0x87, 0x62, 0x9f, 0xd2, 0xbc, 0x16, 0x2c, 0xa5, + 0x73, 0x0c, 0x73, 0x17, 0x1f, 0xd3, 0x8b, 0x7b, 0xd7, 0xa4, 0x4e, 0x19, +}; +static const unsigned char kat4309_addinpr1[] = { + 0x4e, 0x1e, 0x98, 0x8a, 0x66, 0xe0, 0x41, 0x50, 0x4e, 0x46, 0x5f, 0x6c, + 0xf0, 0x55, 0xfd, 0x7a, 0x34, 0xb6, 0x89, 0xf6, 0x4f, 0x48, 0xc0, 0xdf, + 0x04, 0xd2, 0xff, 0x7f, 0xd2, 0x5e, 0xd8, 0xdf, 0xa7, 0xfc, 0xa3, 0xd9, + 0x62, 0xda, 0x1e, 0x7d, 0xbf, 0x1a, 0x4e, 0xdd, 0xa7, 0x98, 0x54, 0x66, +}; +static const unsigned char kat4309_entropyinpr2[] = { + 0xf9, 0xc8, 0xae, 0xa3, 0x50, 0x61, 0x46, 0x8f, 0x83, 0x6b, 0x1e, 0xb4, + 0xf9, 0x7d, 0x92, 0x20, 0x57, 0x7f, 0xbd, 0xf8, 0x61, 0x94, 0xa9, 0x92, + 0x14, 0x18, 0x6c, 0xc5, 0x92, 0x50, 0xed, 0xb3, 0xff, 0xef, 0xeb, 0xb2, + 0x5f, 0xef, 0x8f, 0x50, 0x68, 0x26, 0x5a, 0xb6, 0x78, 0xb1, 0x80, 0x36, +}; +static const unsigned char kat4309_addinpr2[] = { + 0x96, 0xf1, 0x0d, 0xce, 0x1f, 0xf8, 0xd8, 0xe0, 0xc9, 0x92, 0xe1, 0xf3, + 0xea, 0x03, 0x44, 0x86, 0xf8, 0x90, 0x8d, 0xf4, 0xe1, 0xd4, 0xb9, 0xf3, + 0x5b, 0xd4, 0xed, 0x6f, 0x91, 0xa0, 0xde, 0xda, 0x7a, 0x5b, 0x23, 0x8e, + 0xe0, 0xb6, 0xc7, 0x83, 0xf7, 0xf1, 0x01, 0xcf, 0xaf, 0xad, 0x79, 0x86, +}; +static const unsigned char kat4309_retbits[] = { + 0xac, 0xfc, 0x84, 0xfd, 0x40, 0x83, 0x7e, 0xc9, 0x4c, 0x4d, 0x37, 0x65, + 0x6e, 0x65, 0xd5, 0x16, 0xc0, 0xab, 0x45, 0xa7, 0xa4, 0x48, 0x56, 0x78, + 0xf3, 0x0e, 0x51, 0xaa, 0x08, 0x52, 0x0c, 0xfa, 0xca, 0x31, 0xd7, 0x86, + 0xba, 0xc0, 0xf3, 0xdd, 0x3f, 0x15, 0xc7, 0xc5, 0x20, 0x8e, 0xd1, 0x44, + 0x73, 0xc4, 0x72, 0xb5, 0x37, 0xe3, 0x66, 0x2e, 0x20, 0xd8, 0xca, 0x9e, + 0xd7, 0x7d, 0x4b, 0xaa, +}; +static const struct drbg_kat_pr_true kat4309_t = { + 3, kat4309_entropyin, kat4309_nonce, kat4309_persstr, + kat4309_entropyinpr1, kat4309_addinpr1, kat4309_entropyinpr2, + kat4309_addinpr2, kat4309_retbits +}; +static const struct drbg_kat kat4309 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4309_t +}; + +static const unsigned char kat4310_entropyin[] = { + 0x74, 0xd1, 0x01, 0x9b, 0x4d, 0x8d, 0x76, 0x75, 0x4b, 0x9b, 0x57, 0xab, + 0x96, 0x09, 0x7b, 0xa8, 0x2e, 0x40, 0x46, 0xb3, 0x57, 0x2d, 0x8d, 0xd3, + 0xc1, 0x49, 0x8c, 0x47, 0x2b, 0x5e, 0x8d, 0x08, 0x05, 0x0e, 0xd7, 0xed, + 0xfb, 0x3a, 0xfa, 0xc2, 0x9e, 0xc0, 0x98, 0x38, 0x81, 0x62, 0xa7, 0xe4, +}; +static const unsigned char kat4310_nonce[] = {0}; +static const unsigned char kat4310_persstr[] = { + 0x6e, 0x3d, 0xd8, 0x2c, 0xf1, 0x28, 0x87, 0xa6, 0x17, 0x05, 0x14, 0xa6, + 0x73, 0x7a, 0xb2, 0xa6, 0x01, 0xd6, 0xb1, 0x7e, 0x57, 0x64, 0x75, 0x49, + 0xad, 0x5a, 0x49, 0xe6, 0xb2, 0x32, 0x89, 0x50, 0x9e, 0x09, 0x4d, 0x7c, + 0x61, 0xa8, 0x58, 0xdf, 0x26, 0xec, 0xc7, 0x5d, 0x7c, 0x61, 0x11, 0x5b, +}; +static const unsigned char kat4310_entropyinpr1[] = { + 0x06, 0x89, 0x72, 0x1b, 0x78, 0x43, 0x17, 0x49, 0x55, 0xc9, 0xaf, 0xeb, + 0xd7, 0x41, 0xa5, 0x7a, 0x60, 0x0c, 0xf6, 0xe7, 0x0a, 0x28, 0x80, 0x42, + 0x25, 0x25, 0xfa, 0x16, 0xd3, 0x44, 0xc6, 0xd7, 0x18, 0x81, 0x83, 0xc2, + 0xfb, 0xd6, 0x48, 0x86, 0x92, 0xe1, 0x9f, 0x0b, 0x6a, 0x95, 0xeb, 0x59, +}; +static const unsigned char kat4310_addinpr1[] = { + 0x33, 0x46, 0xf0, 0xc0, 0xea, 0xdb, 0x16, 0x6b, 0x15, 0x4a, 0xb1, 0xd9, + 0xe1, 0x66, 0x58, 0x67, 0xd2, 0x78, 0x4e, 0xc5, 0xd9, 0xef, 0x18, 0x43, + 0xb7, 0x18, 0xc3, 0xb5, 0xa1, 0xe0, 0x24, 0x01, 0xeb, 0xdb, 0xb3, 0x06, + 0xa4, 0x0e, 0x00, 0x2a, 0xbc, 0x39, 0xe9, 0x42, 0x8a, 0xe4, 0x8b, 0x83, +}; +static const unsigned char kat4310_entropyinpr2[] = { + 0x1e, 0x26, 0x17, 0x39, 0x11, 0x0b, 0x9b, 0x97, 0x08, 0xe0, 0x63, 0x7d, + 0x90, 0x97, 0xb5, 0xab, 0x34, 0xaa, 0xe8, 0x8b, 0x14, 0xa9, 0xde, 0x53, + 0x55, 0x26, 0xb9, 0x38, 0x4a, 0x24, 0xa5, 0x43, 0x3d, 0xc4, 0x34, 0xf3, + 0xa8, 0x97, 0x84, 0x7a, 0x3b, 0x77, 0x02, 0x18, 0x76, 0x0a, 0x98, 0x10, +}; +static const unsigned char kat4310_addinpr2[] = { + 0x08, 0xc2, 0x20, 0xe7, 0x85, 0xbd, 0xa0, 0x80, 0xf1, 0x6a, 0x1b, 0xbf, + 0x26, 0xa7, 0x90, 0x03, 0xa8, 0x14, 0x6d, 0x6f, 0xd5, 0xea, 0x63, 0xc4, + 0x28, 0xa4, 0x4b, 0xc5, 0x81, 0x6c, 0x72, 0xbc, 0xb9, 0x3b, 0x94, 0x64, + 0xb9, 0xd2, 0xd1, 0x6f, 0x21, 0x22, 0xc4, 0xe9, 0x92, 0x0c, 0xa0, 0x73, +}; +static const unsigned char kat4310_retbits[] = { + 0x57, 0x57, 0x65, 0x51, 0x85, 0x51, 0xe0, 0xac, 0x40, 0xdb, 0x70, 0x56, + 0x72, 0x65, 0xf0, 0x1c, 0x90, 0xf9, 0xd8, 0x02, 0xdc, 0x40, 0x84, 0x9a, + 0x7c, 0x24, 0x3b, 0x98, 0x78, 0x82, 0x28, 0x4f, 0x85, 0xe5, 0x94, 0x28, + 0x21, 0xb5, 0x51, 0x92, 0x3c, 0xf3, 0xf8, 0xa9, 0x91, 0xe1, 0x10, 0x7c, + 0x59, 0x78, 0xa5, 0x70, 0xf5, 0x1c, 0xd6, 0x53, 0x2c, 0x27, 0xc1, 0x25, + 0x99, 0x06, 0x8d, 0xd4, +}; +static const struct drbg_kat_pr_true kat4310_t = { + 4, kat4310_entropyin, kat4310_nonce, kat4310_persstr, + kat4310_entropyinpr1, kat4310_addinpr1, kat4310_entropyinpr2, + kat4310_addinpr2, kat4310_retbits +}; +static const struct drbg_kat kat4310 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4310_t +}; + +static const unsigned char kat4311_entropyin[] = { + 0x8f, 0x0b, 0x90, 0x46, 0x55, 0x95, 0x1a, 0x0f, 0xad, 0x5a, 0x01, 0x4b, + 0x01, 0x8d, 0x9d, 0x1f, 0x78, 0xaf, 0xa1, 0x3d, 0x50, 0x4b, 0x4c, 0xec, + 0x55, 0x9d, 0x35, 0x32, 0x0c, 0x13, 0x60, 0xdd, 0x5b, 0x4e, 0x2e, 0x67, + 0xd3, 0xed, 0x23, 0xf6, 0xb1, 0x29, 0x7b, 0xde, 0x8d, 0x1d, 0x98, 0x71, +}; +static const unsigned char kat4311_nonce[] = {0}; +static const unsigned char kat4311_persstr[] = { + 0xb7, 0x8b, 0x65, 0xb6, 0x6c, 0x61, 0x03, 0x67, 0x84, 0x46, 0x03, 0x2d, + 0xb3, 0xb3, 0x14, 0x52, 0xf7, 0xa6, 0x63, 0x88, 0x4e, 0xfe, 0x66, 0x10, + 0xa4, 0xba, 0xfd, 0x5f, 0x8a, 0x6d, 0x35, 0xd3, 0x3c, 0x41, 0x69, 0xf2, + 0x4d, 0x79, 0xaf, 0x17, 0xd8, 0x80, 0xe3, 0xb4, 0xcf, 0x95, 0xaa, 0xa5, +}; +static const unsigned char kat4311_entropyinpr1[] = { + 0x2d, 0x83, 0x8a, 0x98, 0xf8, 0x93, 0xf3, 0x4e, 0x73, 0xdc, 0xf0, 0xaf, + 0x1d, 0x2f, 0xf5, 0x80, 0xef, 0xc4, 0xc0, 0xed, 0x66, 0x1e, 0xb2, 0xa8, + 0x2c, 0xf1, 0x84, 0xeb, 0xc3, 0x6c, 0x3d, 0x9a, 0x6a, 0xd5, 0x36, 0x36, + 0x14, 0x44, 0x63, 0x63, 0x57, 0x1c, 0x70, 0x5e, 0xff, 0x09, 0x3a, 0x5f, +}; +static const unsigned char kat4311_addinpr1[] = { + 0x3e, 0x76, 0x0e, 0x8d, 0xba, 0x84, 0x2b, 0x59, 0xdb, 0xb9, 0x07, 0xfd, + 0x12, 0x27, 0x45, 0x14, 0x5c, 0xea, 0x52, 0xfa, 0xe5, 0xdb, 0xb5, 0x9a, + 0x8a, 0x16, 0xed, 0x2f, 0x7d, 0xd2, 0xa2, 0x92, 0x7a, 0xc9, 0x82, 0x82, + 0x52, 0x38, 0x1c, 0x97, 0xfd, 0x93, 0x1e, 0x72, 0xcd, 0x02, 0x05, 0xfc, +}; +static const unsigned char kat4311_entropyinpr2[] = { + 0xb3, 0xa7, 0x1b, 0x8e, 0xa6, 0x88, 0xfe, 0x94, 0x0e, 0xf2, 0x61, 0x2b, + 0x9e, 0x59, 0xc7, 0x99, 0xd7, 0xdb, 0x23, 0x4a, 0x78, 0xb5, 0x48, 0xd6, + 0xe9, 0x61, 0x77, 0x81, 0x4b, 0xe9, 0x41, 0xc2, 0x76, 0x02, 0xb6, 0x43, + 0xa2, 0x2b, 0x46, 0x65, 0xd4, 0x32, 0xad, 0x97, 0x04, 0xd5, 0xa1, 0xaf, +}; +static const unsigned char kat4311_addinpr2[] = { + 0xbd, 0xde, 0x90, 0x43, 0x9c, 0xb0, 0x11, 0x2a, 0x68, 0x94, 0x3c, 0x5e, + 0x23, 0xfc, 0x92, 0x82, 0x53, 0x4e, 0x20, 0x40, 0x54, 0x3e, 0x73, 0x8b, + 0xdd, 0x51, 0x3e, 0x59, 0x10, 0xac, 0x86, 0xe7, 0xa5, 0xd3, 0x0d, 0xde, + 0xee, 0xcd, 0xdc, 0x38, 0xd1, 0xb7, 0xb9, 0x01, 0x21, 0xcb, 0x21, 0x35, +}; +static const unsigned char kat4311_retbits[] = { + 0x24, 0xbb, 0x14, 0x55, 0x2f, 0xd5, 0x5b, 0x8a, 0x8d, 0x31, 0x06, 0x6e, + 0x97, 0x4e, 0x9b, 0xfb, 0xba, 0x35, 0x1f, 0x85, 0x28, 0xda, 0x5b, 0xef, + 0xe0, 0x96, 0xbf, 0xb7, 0x72, 0xeb, 0x28, 0x79, 0x00, 0xfb, 0xf7, 0x15, + 0x68, 0x69, 0x7e, 0x1d, 0xd2, 0xde, 0x8f, 0x94, 0x51, 0xec, 0xd6, 0xa7, + 0xe7, 0x0f, 0x14, 0x0e, 0x56, 0xaf, 0x6e, 0x36, 0xf7, 0x7c, 0x25, 0x6d, + 0xc0, 0x58, 0x2c, 0xf8, +}; +static const struct drbg_kat_pr_true kat4311_t = { + 5, kat4311_entropyin, kat4311_nonce, kat4311_persstr, + kat4311_entropyinpr1, kat4311_addinpr1, kat4311_entropyinpr2, + kat4311_addinpr2, kat4311_retbits +}; +static const struct drbg_kat kat4311 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4311_t +}; + +static const unsigned char kat4312_entropyin[] = { + 0xbd, 0x21, 0x3a, 0x2e, 0x83, 0xd3, 0xf4, 0x1e, 0x85, 0x2d, 0xcc, 0xf3, + 0x94, 0xc6, 0x92, 0x0e, 0x15, 0xf3, 0xc2, 0x2c, 0x76, 0x1b, 0x5c, 0xc7, + 0x05, 0x71, 0xec, 0x06, 0x11, 0x46, 0x64, 0x3d, 0x9f, 0x63, 0xc0, 0x6d, + 0x76, 0x98, 0xbc, 0xc3, 0x09, 0xf6, 0x61, 0x8f, 0xca, 0xe4, 0xd8, 0x02, +}; +static const unsigned char kat4312_nonce[] = {0}; +static const unsigned char kat4312_persstr[] = { + 0x0a, 0xb1, 0x6f, 0x1d, 0xb7, 0xc5, 0x33, 0xb4, 0xbe, 0xa2, 0xf1, 0xb9, + 0xd9, 0x2f, 0xc1, 0x43, 0xf0, 0x1d, 0x78, 0x56, 0x52, 0x7f, 0xff, 0xe4, + 0x86, 0xcf, 0x80, 0x13, 0x5c, 0x6d, 0xc4, 0x97, 0xf6, 0x0c, 0x14, 0xef, + 0xe2, 0xc1, 0x50, 0x11, 0x16, 0x21, 0x38, 0xaf, 0xe5, 0xd2, 0x11, 0x3a, +}; +static const unsigned char kat4312_entropyinpr1[] = { + 0x0d, 0x92, 0xba, 0x73, 0xd2, 0xd6, 0x93, 0x07, 0xbc, 0x6e, 0x05, 0x3e, + 0xf9, 0x2f, 0xed, 0x43, 0x20, 0x9f, 0xc1, 0xc7, 0xe4, 0xeb, 0x5f, 0x93, + 0x13, 0xae, 0x91, 0xa6, 0xd0, 0x7e, 0x24, 0x37, 0x9e, 0x03, 0x08, 0x08, + 0x79, 0x80, 0xf6, 0x95, 0xbe, 0x20, 0x1e, 0x1d, 0xf0, 0xe5, 0xc9, 0x94, +}; +static const unsigned char kat4312_addinpr1[] = { + 0xc5, 0x66, 0xb2, 0xc3, 0xd6, 0x0a, 0x76, 0xd5, 0x55, 0xd6, 0x51, 0x5e, + 0x7e, 0x96, 0x45, 0x23, 0xe6, 0x8f, 0x72, 0x27, 0x2e, 0x77, 0x8a, 0x58, + 0x02, 0x6d, 0x94, 0x29, 0x78, 0xbd, 0xf5, 0xc4, 0x6d, 0xf6, 0xde, 0xca, + 0xc8, 0x27, 0x1f, 0xe3, 0x2c, 0x40, 0x00, 0x00, 0x30, 0x31, 0xd4, 0x50, +}; +static const unsigned char kat4312_entropyinpr2[] = { + 0xaf, 0x24, 0x68, 0xe5, 0x63, 0x9f, 0xea, 0x72, 0x9b, 0xb2, 0xfc, 0x79, + 0x95, 0xa5, 0xce, 0x92, 0xff, 0xc0, 0x45, 0x50, 0xe7, 0xe6, 0x04, 0xb9, + 0xfa, 0xd1, 0xe0, 0x69, 0xf1, 0x97, 0x7a, 0xff, 0x5b, 0x1a, 0x37, 0x1e, + 0x6c, 0x80, 0x96, 0x54, 0x8a, 0x03, 0xc5, 0x21, 0x0e, 0xba, 0xe6, 0x02, +}; +static const unsigned char kat4312_addinpr2[] = { + 0xc6, 0xaa, 0x59, 0xd6, 0x47, 0x3d, 0xcf, 0xdb, 0x35, 0x8e, 0xf2, 0x2f, + 0xc5, 0x29, 0xc9, 0xe8, 0xa3, 0x31, 0xd3, 0xba, 0x8f, 0x53, 0x56, 0x68, + 0xe5, 0xc7, 0xeb, 0x87, 0x67, 0x53, 0x8b, 0x4e, 0xe4, 0xba, 0x50, 0xd2, + 0x57, 0x79, 0xc5, 0xda, 0xc1, 0xef, 0xe6, 0x47, 0xf3, 0xdf, 0x92, 0x8e, +}; +static const unsigned char kat4312_retbits[] = { + 0x9f, 0x18, 0xf1, 0xdf, 0x7f, 0xf3, 0xcb, 0x47, 0xc6, 0xe5, 0x26, 0x60, + 0xaf, 0x2e, 0x5c, 0xaa, 0x7b, 0xd4, 0x4c, 0xfc, 0x33, 0xaa, 0x92, 0xc5, + 0x58, 0xbc, 0x03, 0x5a, 0x6b, 0x34, 0x66, 0xb6, 0xfb, 0x83, 0x5f, 0x8d, + 0x15, 0xd9, 0x6d, 0xa0, 0xb6, 0x6f, 0xdf, 0xfb, 0x4b, 0x6c, 0x26, 0xc0, + 0x48, 0x13, 0x55, 0xf1, 0x35, 0x84, 0xe3, 0xb4, 0xe4, 0x2d, 0x11, 0xbc, + 0x37, 0x27, 0x19, 0x21, +}; +static const struct drbg_kat_pr_true kat4312_t = { + 6, kat4312_entropyin, kat4312_nonce, kat4312_persstr, + kat4312_entropyinpr1, kat4312_addinpr1, kat4312_entropyinpr2, + kat4312_addinpr2, kat4312_retbits +}; +static const struct drbg_kat kat4312 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4312_t +}; + +static const unsigned char kat4313_entropyin[] = { + 0xc4, 0xd2, 0xf3, 0x50, 0xa4, 0xf2, 0xa7, 0x89, 0xc6, 0x01, 0x56, 0x59, + 0xb6, 0xc0, 0x2a, 0x12, 0xcd, 0x09, 0x34, 0x30, 0xa9, 0x56, 0x2b, 0x97, + 0xb0, 0x6d, 0x95, 0x00, 0xe0, 0x19, 0xfe, 0x0a, 0xae, 0xb8, 0x79, 0x58, + 0x3f, 0x8b, 0x58, 0xbd, 0x6e, 0xca, 0xd5, 0x21, 0xd2, 0x7d, 0x1c, 0xa1, +}; +static const unsigned char kat4313_nonce[] = {0}; +static const unsigned char kat4313_persstr[] = { + 0xc5, 0x66, 0xca, 0xe3, 0xd5, 0x47, 0x4e, 0xca, 0x06, 0xa0, 0x77, 0x51, + 0x54, 0x40, 0x93, 0xe2, 0x22, 0x4a, 0x73, 0x20, 0x59, 0x2e, 0xbb, 0x55, + 0x60, 0x6c, 0x73, 0xf7, 0x85, 0xf3, 0x95, 0x0f, 0xab, 0x2e, 0x03, 0x95, + 0xb0, 0x21, 0xf0, 0x26, 0x0d, 0xf5, 0xf5, 0x11, 0x2b, 0x3d, 0x56, 0x8a, +}; +static const unsigned char kat4313_entropyinpr1[] = { + 0x6c, 0x50, 0x04, 0x85, 0xe2, 0x2f, 0x76, 0xfe, 0x2d, 0x2c, 0x1f, 0xcf, + 0xa2, 0x6f, 0x82, 0x3a, 0x3d, 0x96, 0xf2, 0x85, 0x1f, 0x2d, 0xe2, 0x16, + 0xe8, 0x49, 0x23, 0xca, 0x6a, 0x81, 0xc1, 0xb7, 0xff, 0x5f, 0x39, 0xd4, + 0x38, 0xb0, 0x9b, 0xbc, 0xc1, 0xf7, 0xbe, 0xe5, 0x3a, 0x8f, 0x65, 0x40, +}; +static const unsigned char kat4313_addinpr1[] = { + 0x44, 0xea, 0x34, 0xf3, 0xa8, 0x3d, 0x35, 0xa1, 0xa1, 0xdf, 0x84, 0x32, + 0xdc, 0x00, 0xea, 0x17, 0x06, 0xee, 0x7f, 0xe7, 0xd1, 0x18, 0x15, 0x49, + 0x44, 0xda, 0x8b, 0x85, 0x0d, 0xb1, 0xa6, 0x8f, 0xd9, 0x6f, 0x39, 0x60, + 0x04, 0x28, 0xca, 0x9b, 0x73, 0x33, 0xc4, 0x68, 0x2f, 0x41, 0x54, 0x7b, +}; +static const unsigned char kat4313_entropyinpr2[] = { + 0x8a, 0x3f, 0xa7, 0x86, 0x1e, 0x35, 0xff, 0x9e, 0x12, 0x93, 0x46, 0xfa, + 0xb3, 0x48, 0x6d, 0x8c, 0x2c, 0x9e, 0x1e, 0x79, 0x31, 0xda, 0x36, 0x03, + 0xd3, 0x89, 0x8b, 0x12, 0x11, 0x6a, 0x3a, 0x76, 0xc5, 0x69, 0xa7, 0x90, + 0x17, 0x57, 0x0b, 0xea, 0x10, 0x05, 0x4e, 0x71, 0xcc, 0xdf, 0x88, 0xb7, +}; +static const unsigned char kat4313_addinpr2[] = { + 0x36, 0x56, 0x5e, 0xcb, 0xaa, 0x75, 0x5c, 0x0e, 0x78, 0xd9, 0x0a, 0x60, + 0x2c, 0x9a, 0xe1, 0x30, 0x3f, 0xe0, 0x7f, 0x36, 0xf6, 0xc1, 0xb1, 0x0b, + 0x62, 0x50, 0x21, 0xf3, 0x79, 0x8d, 0xd9, 0xa1, 0xc9, 0xa2, 0x10, 0xeb, + 0x2e, 0x33, 0x67, 0xfc, 0x6a, 0xbe, 0xc7, 0x21, 0xd8, 0x3a, 0x41, 0x2d, +}; +static const unsigned char kat4313_retbits[] = { + 0xf2, 0xa1, 0xb2, 0x84, 0xa2, 0x17, 0x16, 0xaf, 0xae, 0x69, 0x21, 0xdc, + 0x85, 0xdd, 0xcd, 0x3c, 0xe3, 0x27, 0xce, 0x5f, 0xa8, 0x11, 0x29, 0xf6, + 0xb4, 0x1e, 0x23, 0xfc, 0x43, 0x5b, 0xa7, 0x65, 0x9a, 0x9b, 0x21, 0x61, + 0x5d, 0x51, 0xdd, 0x43, 0x6c, 0x78, 0xad, 0xe4, 0x27, 0x0a, 0xcd, 0x8b, + 0x06, 0xcd, 0xf3, 0xc8, 0x39, 0xc1, 0xce, 0x05, 0x20, 0x7b, 0x8a, 0x8c, + 0x66, 0xa1, 0xe6, 0xdb, +}; +static const struct drbg_kat_pr_true kat4313_t = { + 7, kat4313_entropyin, kat4313_nonce, kat4313_persstr, + kat4313_entropyinpr1, kat4313_addinpr1, kat4313_entropyinpr2, + kat4313_addinpr2, kat4313_retbits +}; +static const struct drbg_kat kat4313 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4313_t +}; + +static const unsigned char kat4314_entropyin[] = { + 0x89, 0xf5, 0x83, 0x7e, 0xa2, 0xec, 0x6c, 0x11, 0x68, 0x20, 0x16, 0xfb, + 0x00, 0xbd, 0x26, 0xab, 0x50, 0x01, 0x7a, 0xf3, 0x71, 0xe5, 0xd4, 0x6d, + 0x34, 0x23, 0xf2, 0x63, 0x92, 0x97, 0x99, 0x4d, 0x39, 0x09, 0x9e, 0x96, + 0x02, 0xea, 0xc9, 0x5d, 0x03, 0x49, 0xca, 0x70, 0x98, 0xa1, 0x4f, 0x0d, +}; +static const unsigned char kat4314_nonce[] = {0}; +static const unsigned char kat4314_persstr[] = { + 0x47, 0xe7, 0xd6, 0x39, 0x9a, 0xe2, 0x0b, 0x93, 0x40, 0x46, 0x06, 0x12, + 0x4c, 0x98, 0x03, 0x7c, 0x31, 0x30, 0x43, 0x35, 0x97, 0x7a, 0x92, 0xd2, + 0x52, 0x62, 0x71, 0x5f, 0x34, 0x9f, 0x05, 0xbb, 0xdd, 0x44, 0x26, 0x17, + 0xba, 0x2b, 0xb0, 0xf3, 0x86, 0x04, 0x54, 0x35, 0x81, 0xd9, 0x0e, 0xaa, +}; +static const unsigned char kat4314_entropyinpr1[] = { + 0x78, 0x75, 0x37, 0x65, 0x50, 0xc6, 0xe0, 0x88, 0x2f, 0xc9, 0x50, 0x5b, + 0x0e, 0x90, 0x5a, 0x99, 0xa8, 0xd6, 0xc3, 0x40, 0xd1, 0x19, 0x27, 0x98, + 0xaf, 0xe3, 0x3f, 0x31, 0xe7, 0x93, 0xde, 0x12, 0x89, 0x48, 0x72, 0x72, + 0xe9, 0x89, 0x15, 0x99, 0xfe, 0xe5, 0xca, 0xba, 0x3a, 0x70, 0x48, 0x34, +}; +static const unsigned char kat4314_addinpr1[] = { + 0x4c, 0xe3, 0x60, 0xd6, 0x83, 0x51, 0x12, 0x30, 0x57, 0x12, 0xfc, 0x20, + 0xd5, 0x2d, 0xc6, 0xd3, 0x0e, 0x32, 0x25, 0xd6, 0x2e, 0x35, 0xa4, 0xb5, + 0xaa, 0x31, 0x87, 0xea, 0xa7, 0x10, 0x4b, 0xac, 0x81, 0x67, 0x75, 0x75, + 0x0d, 0x6b, 0xe0, 0x70, 0x30, 0x5d, 0xed, 0x17, 0x32, 0xf3, 0x4e, 0x4b, +}; +static const unsigned char kat4314_entropyinpr2[] = { + 0x59, 0x4b, 0xe9, 0xed, 0xcc, 0x63, 0x24, 0xc2, 0x89, 0x16, 0x17, 0x21, + 0xfb, 0xda, 0xc2, 0x52, 0xdd, 0x2f, 0x0b, 0xd2, 0xb6, 0xb8, 0x36, 0xf7, + 0x68, 0x35, 0x8b, 0xd0, 0x91, 0x4d, 0x38, 0xb4, 0xab, 0x40, 0x24, 0x6e, + 0xc1, 0xb5, 0xee, 0x94, 0xe5, 0x90, 0x38, 0x45, 0x75, 0xec, 0x80, 0x87, +}; +static const unsigned char kat4314_addinpr2[] = { + 0x98, 0x06, 0x3a, 0xe8, 0xf1, 0xe5, 0x6a, 0x8c, 0xea, 0x17, 0x7f, 0x45, + 0x16, 0x77, 0x21, 0x4a, 0x7f, 0x41, 0x95, 0xd6, 0x20, 0x5f, 0x22, 0x0f, + 0x0d, 0xee, 0x8e, 0x84, 0x34, 0x51, 0x73, 0x5f, 0x6e, 0xbd, 0x94, 0xff, + 0x56, 0x1b, 0x09, 0xdd, 0x46, 0x3d, 0xba, 0x32, 0xde, 0x32, 0x54, 0x75, +}; +static const unsigned char kat4314_retbits[] = { + 0x41, 0x5b, 0x18, 0xd5, 0x89, 0xe9, 0xfe, 0x68, 0x47, 0x3e, 0xfd, 0x2a, + 0x1a, 0x70, 0x06, 0xd8, 0x5e, 0x8e, 0xc6, 0xc0, 0x39, 0xe4, 0x5d, 0xa9, + 0xcc, 0x3d, 0x84, 0x8e, 0x2b, 0x3e, 0xd9, 0x09, 0x04, 0x4a, 0x55, 0xd5, + 0x7d, 0x46, 0xe1, 0x53, 0x63, 0x60, 0x09, 0x15, 0x08, 0x9d, 0x0a, 0xa2, + 0x25, 0x16, 0x88, 0x95, 0xa2, 0xa7, 0x1a, 0xa9, 0xf5, 0xa8, 0xfa, 0x91, + 0x32, 0x1b, 0x96, 0x0f, +}; +static const struct drbg_kat_pr_true kat4314_t = { + 8, kat4314_entropyin, kat4314_nonce, kat4314_persstr, + kat4314_entropyinpr1, kat4314_addinpr1, kat4314_entropyinpr2, + kat4314_addinpr2, kat4314_retbits +}; +static const struct drbg_kat kat4314 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4314_t +}; + +static const unsigned char kat4315_entropyin[] = { + 0x90, 0x91, 0xe7, 0x24, 0xf6, 0x5e, 0x07, 0xd1, 0x17, 0x8c, 0xee, 0x5a, + 0x18, 0xfa, 0xed, 0x55, 0xdb, 0x1c, 0xb6, 0x4f, 0x53, 0x4b, 0x5f, 0xaa, + 0xf0, 0x19, 0xb8, 0x9d, 0x92, 0xcb, 0x08, 0xfc, 0x49, 0x9c, 0xbd, 0xee, + 0xf0, 0x5f, 0xda, 0xcf, 0x51, 0xdc, 0x01, 0x84, 0x58, 0x98, 0xf3, 0x65, +}; +static const unsigned char kat4315_nonce[] = {0}; +static const unsigned char kat4315_persstr[] = { + 0xa1, 0xc3, 0x81, 0xa3, 0x6c, 0xe0, 0xa8, 0x37, 0xc7, 0x4d, 0x33, 0xe4, + 0x16, 0x32, 0xae, 0xcc, 0xa2, 0xec, 0x14, 0xea, 0x28, 0xa0, 0xc1, 0x53, + 0xf9, 0xde, 0xcc, 0x47, 0xe3, 0xf9, 0x77, 0xcb, 0x34, 0x95, 0x2e, 0xd3, + 0xe6, 0x43, 0xc8, 0x7b, 0xcd, 0xdf, 0x32, 0xf1, 0xa1, 0x17, 0x32, 0x6f, +}; +static const unsigned char kat4315_entropyinpr1[] = { + 0x77, 0x7e, 0x58, 0xa9, 0x72, 0x73, 0x99, 0x8b, 0x60, 0x03, 0x68, 0xa8, + 0x3a, 0x91, 0xef, 0x4b, 0xeb, 0x5d, 0x4c, 0xb2, 0xc5, 0x8b, 0x4e, 0x01, + 0xb0, 0x1a, 0x74, 0x45, 0x2e, 0xc2, 0xb2, 0x82, 0xb6, 0x1e, 0x93, 0x89, + 0x83, 0x77, 0xeb, 0x20, 0xf3, 0x35, 0xe8, 0x86, 0x74, 0xca, 0x8a, 0x3c, +}; +static const unsigned char kat4315_addinpr1[] = { + 0x23, 0xcb, 0x47, 0xc2, 0xc2, 0xa2, 0xce, 0x80, 0x58, 0x98, 0x75, 0x19, + 0x80, 0xd9, 0x54, 0x5e, 0x3a, 0x7e, 0x67, 0x80, 0xc9, 0xd3, 0x28, 0x8b, + 0xe0, 0xcc, 0x75, 0xd1, 0xc7, 0xa9, 0x53, 0xe6, 0x04, 0x4a, 0x15, 0xba, + 0x1a, 0xdc, 0xec, 0xea, 0x2a, 0x1e, 0x17, 0x48, 0xbb, 0xc5, 0xe9, 0x48, +}; +static const unsigned char kat4315_entropyinpr2[] = { + 0x55, 0x78, 0x4a, 0xcf, 0x5a, 0xc2, 0xf8, 0xfe, 0x0c, 0x85, 0xf1, 0xc5, + 0xd7, 0xff, 0xea, 0x80, 0x9e, 0xca, 0x75, 0x0d, 0x4c, 0x66, 0x1b, 0xc9, + 0x73, 0x21, 0xb3, 0x94, 0xd6, 0xff, 0xcd, 0x74, 0x27, 0xf0, 0x74, 0xf4, + 0x28, 0xc3, 0x86, 0x24, 0x32, 0x63, 0x63, 0xa8, 0x01, 0xea, 0x02, 0xcd, +}; +static const unsigned char kat4315_addinpr2[] = { + 0x13, 0x65, 0x8c, 0xe4, 0xf9, 0x1d, 0x31, 0xb7, 0x55, 0x13, 0xac, 0xc2, + 0x5b, 0x8b, 0x57, 0xd9, 0xc6, 0xdf, 0x39, 0xbf, 0xd7, 0xc2, 0x5b, 0x9d, + 0x27, 0x81, 0xb7, 0x13, 0x2d, 0xbc, 0x0d, 0x39, 0xf2, 0x0a, 0xd5, 0x25, + 0x40, 0x4f, 0xb7, 0xeb, 0x15, 0x74, 0x8c, 0x86, 0x84, 0x38, 0xef, 0x3f, +}; +static const unsigned char kat4315_retbits[] = { + 0x28, 0xe4, 0xce, 0x4a, 0xd7, 0x53, 0x43, 0x6b, 0x13, 0x44, 0x78, 0x1d, + 0x65, 0x59, 0xd4, 0xe0, 0x4c, 0x58, 0x93, 0x88, 0xc6, 0xf4, 0xea, 0xa0, + 0x06, 0xdd, 0x0a, 0x0a, 0xd0, 0xa3, 0x6f, 0xee, 0xe9, 0x85, 0xd7, 0xec, + 0x37, 0x6e, 0xac, 0x4d, 0xfa, 0x9f, 0x80, 0x44, 0xca, 0x32, 0xa5, 0x9e, + 0xb6, 0xc1, 0x65, 0xac, 0x21, 0x51, 0x09, 0x56, 0x85, 0x42, 0x40, 0xb4, + 0xfb, 0x50, 0xa9, 0x88, +}; +static const struct drbg_kat_pr_true kat4315_t = { + 9, kat4315_entropyin, kat4315_nonce, kat4315_persstr, + kat4315_entropyinpr1, kat4315_addinpr1, kat4315_entropyinpr2, + kat4315_addinpr2, kat4315_retbits +}; +static const struct drbg_kat kat4315 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4315_t +}; + +static const unsigned char kat4316_entropyin[] = { + 0x90, 0x64, 0xd7, 0x26, 0xc2, 0x45, 0x5c, 0x2f, 0xf0, 0x3c, 0x84, 0x2e, + 0x7e, 0xe4, 0x8d, 0xe2, 0x46, 0x3e, 0xe0, 0x0c, 0xe9, 0x7e, 0x31, 0x76, + 0x6f, 0x41, 0xb3, 0xc5, 0x1a, 0x6a, 0x73, 0x55, 0x9f, 0x60, 0xe2, 0xef, + 0x21, 0x12, 0xbd, 0xf5, 0x58, 0xc4, 0xca, 0x33, 0x25, 0xc1, 0xe6, 0x50, +}; +static const unsigned char kat4316_nonce[] = {0}; +static const unsigned char kat4316_persstr[] = { + 0x45, 0x69, 0x6a, 0x91, 0xe7, 0x9c, 0x49, 0xa6, 0x53, 0x0c, 0x9d, 0xb1, + 0x9d, 0x06, 0x80, 0x5b, 0xbb, 0x21, 0xc4, 0xa3, 0x30, 0xab, 0xb5, 0x91, + 0xca, 0xe8, 0x0f, 0xb9, 0x8c, 0xdf, 0x01, 0x15, 0x0c, 0x24, 0x47, 0x71, + 0xee, 0x45, 0x88, 0xab, 0xba, 0xdd, 0xd7, 0xfd, 0x91, 0xd6, 0xd6, 0x9d, +}; +static const unsigned char kat4316_entropyinpr1[] = { + 0xbd, 0xbb, 0xad, 0xb3, 0x34, 0xd2, 0x7c, 0xf1, 0x49, 0x39, 0x3c, 0x6c, + 0x57, 0x47, 0xf3, 0xb3, 0x8e, 0xd8, 0xca, 0x41, 0x57, 0x2e, 0xff, 0xfd, + 0x2f, 0x24, 0x1f, 0x8d, 0x68, 0xa5, 0x18, 0xc3, 0x8f, 0xa6, 0x9c, 0x2a, + 0x3f, 0x53, 0xf2, 0xe6, 0xb2, 0x89, 0xb5, 0xab, 0x61, 0x33, 0xa2, 0xd8, +}; +static const unsigned char kat4316_addinpr1[] = { + 0x6f, 0x1c, 0x7e, 0xe9, 0xa8, 0x4d, 0x5d, 0x23, 0x8f, 0xef, 0x80, 0x6c, + 0xab, 0x76, 0x5a, 0xa5, 0x73, 0x97, 0xd0, 0xa9, 0x84, 0x31, 0xc3, 0x0e, + 0xfd, 0x05, 0xe9, 0x57, 0x94, 0x4c, 0x6a, 0xf5, 0x93, 0xca, 0x74, 0xab, + 0xb9, 0xd6, 0x5b, 0x58, 0xd5, 0x67, 0xd6, 0x34, 0xab, 0x8c, 0xa0, 0x33, +}; +static const unsigned char kat4316_entropyinpr2[] = { + 0x30, 0x58, 0x5b, 0xae, 0xd3, 0xca, 0x02, 0x3f, 0xd2, 0x20, 0x3a, 0x58, + 0x35, 0x4f, 0xe9, 0xd5, 0x5b, 0xc8, 0x53, 0x3f, 0x39, 0xdb, 0xe3, 0x7a, + 0x74, 0xf4, 0x3a, 0x01, 0xe5, 0xf0, 0x93, 0xa7, 0xd9, 0x52, 0x24, 0x2e, + 0x8a, 0x20, 0xaf, 0x3a, 0xb6, 0xf5, 0xa8, 0x84, 0x45, 0xdb, 0xd9, 0x44, +}; +static const unsigned char kat4316_addinpr2[] = { + 0x30, 0x25, 0xd1, 0xdd, 0x9e, 0x8b, 0x89, 0x72, 0xba, 0x7d, 0x51, 0xb2, + 0x09, 0xa7, 0xea, 0x38, 0xa9, 0x82, 0xbc, 0xe7, 0xa2, 0xe5, 0x90, 0x76, + 0x49, 0x63, 0x80, 0xfd, 0xe4, 0x97, 0x2d, 0x5a, 0x07, 0x47, 0x1b, 0xa7, + 0x70, 0x42, 0x05, 0xc4, 0xc0, 0x31, 0xd8, 0xe0, 0x41, 0x57, 0x5f, 0xac, +}; +static const unsigned char kat4316_retbits[] = { + 0x47, 0xd5, 0x41, 0x6e, 0x0e, 0x21, 0xb9, 0xbc, 0x9d, 0x4a, 0x69, 0x0a, + 0xc1, 0x93, 0x19, 0xb5, 0xf4, 0x5a, 0x23, 0x1c, 0x36, 0x64, 0xb7, 0x04, + 0xd5, 0xf4, 0x8d, 0x82, 0xd4, 0x7e, 0xf5, 0x9c, 0xd2, 0xc2, 0x81, 0xb7, + 0x89, 0xd7, 0x13, 0x4c, 0x2a, 0x2a, 0x97, 0xf4, 0x5f, 0x5f, 0x84, 0xbf, + 0xe1, 0xec, 0x4f, 0x12, 0x84, 0xaa, 0x8e, 0x02, 0x87, 0x98, 0x86, 0xdc, + 0xd2, 0xea, 0x55, 0x81, +}; +static const struct drbg_kat_pr_true kat4316_t = { + 10, kat4316_entropyin, kat4316_nonce, kat4316_persstr, + kat4316_entropyinpr1, kat4316_addinpr1, kat4316_entropyinpr2, + kat4316_addinpr2, kat4316_retbits +}; +static const struct drbg_kat kat4316 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4316_t +}; + +static const unsigned char kat4317_entropyin[] = { + 0x0d, 0xdd, 0x70, 0xf8, 0x96, 0x8c, 0x35, 0x9a, 0xff, 0xa0, 0xe4, 0xba, + 0x9c, 0x6f, 0x22, 0x9b, 0x35, 0x35, 0x5e, 0x09, 0x1a, 0xae, 0xf3, 0x9f, + 0x1a, 0x7c, 0x99, 0x7c, 0xb9, 0x81, 0x94, 0x38, 0x63, 0x34, 0x32, 0xac, + 0x01, 0x66, 0x2f, 0xbd, 0x59, 0x01, 0x7d, 0xfc, 0xd0, 0x2b, 0x1f, 0x65, +}; +static const unsigned char kat4317_nonce[] = {0}; +static const unsigned char kat4317_persstr[] = { + 0xdb, 0x86, 0xbc, 0x6b, 0xdd, 0x84, 0xc3, 0xf6, 0xcb, 0xc1, 0xea, 0xc5, + 0x2d, 0xda, 0x93, 0x0c, 0xb8, 0x50, 0x4e, 0x89, 0x40, 0xf0, 0xdb, 0x5b, + 0x01, 0x23, 0x39, 0x1a, 0xb4, 0x21, 0xd1, 0x6d, 0xc5, 0x5f, 0x47, 0xf6, + 0x42, 0x2c, 0x28, 0x0b, 0x77, 0x23, 0x90, 0x3c, 0x29, 0x60, 0x46, 0x70, +}; +static const unsigned char kat4317_entropyinpr1[] = { + 0x70, 0x64, 0xeb, 0x18, 0x0e, 0x86, 0xba, 0x63, 0x1c, 0x24, 0xcc, 0xbd, + 0x63, 0x2b, 0xfe, 0xc8, 0x69, 0xcd, 0xf0, 0xa0, 0xb7, 0xaa, 0xe3, 0xe6, + 0x85, 0xa3, 0x3e, 0xb8, 0x08, 0x93, 0x5d, 0x25, 0x8b, 0xc7, 0xe6, 0x9f, + 0xa7, 0xf1, 0x57, 0xeb, 0x6c, 0x97, 0x47, 0x4e, 0x85, 0x88, 0x41, 0xdd, +}; +static const unsigned char kat4317_addinpr1[] = { + 0x79, 0x79, 0x33, 0x80, 0x11, 0x14, 0xb3, 0x69, 0xb4, 0xa3, 0x6b, 0x36, + 0xcf, 0x84, 0x70, 0xda, 0xb2, 0xd4, 0xc0, 0x00, 0xc6, 0x3f, 0x86, 0x06, + 0xba, 0x7a, 0x14, 0x85, 0x77, 0x5f, 0x9d, 0x77, 0x0f, 0x37, 0x3c, 0x1b, + 0x2a, 0xe1, 0xe2, 0x0b, 0xa1, 0x4c, 0x1b, 0xf5, 0x75, 0xd0, 0xd8, 0xf2, +}; +static const unsigned char kat4317_entropyinpr2[] = { + 0xa2, 0xe4, 0x88, 0x43, 0xd5, 0x9a, 0xbf, 0xa3, 0x32, 0xf9, 0x9f, 0x8f, + 0x24, 0x50, 0xe8, 0xe7, 0x26, 0x5e, 0xa0, 0x08, 0xe7, 0xa7, 0x5c, 0x99, + 0x05, 0x1a, 0xd6, 0x5f, 0xcd, 0x38, 0xed, 0x95, 0xa2, 0x03, 0xa7, 0xc7, + 0x03, 0x12, 0xe0, 0x09, 0xbf, 0xa1, 0xa9, 0x34, 0x79, 0xa2, 0xaf, 0x3a, +}; +static const unsigned char kat4317_addinpr2[] = { + 0x70, 0x98, 0xea, 0xe9, 0x8b, 0x98, 0x34, 0x5f, 0x67, 0x54, 0xc9, 0xfb, + 0x48, 0x6a, 0xcd, 0x1b, 0x7a, 0xe0, 0x20, 0x70, 0x19, 0x72, 0x5f, 0xdf, + 0xeb, 0x89, 0xe0, 0x5e, 0x7f, 0xa9, 0x0d, 0x15, 0xcb, 0x79, 0xb5, 0x45, + 0xaa, 0x99, 0x5a, 0xce, 0xdb, 0xa4, 0x2b, 0x6d, 0xf5, 0xa1, 0xc8, 0x90, +}; +static const unsigned char kat4317_retbits[] = { + 0xdf, 0xc7, 0x66, 0x0a, 0xca, 0x6c, 0x7b, 0x99, 0x58, 0x44, 0x98, 0x5f, + 0xc4, 0x00, 0xf4, 0x83, 0x0a, 0x02, 0xc4, 0xdc, 0x51, 0x81, 0xd4, 0xa0, + 0x64, 0xe3, 0x37, 0x34, 0xc2, 0x87, 0x85, 0x39, 0x81, 0x3e, 0xe1, 0x82, + 0xdc, 0x7a, 0x4f, 0xef, 0x1d, 0x94, 0x62, 0xdc, 0xe1, 0x9e, 0x01, 0x2b, + 0x3d, 0x5c, 0x97, 0x1e, 0xa1, 0x75, 0x1d, 0x56, 0xed, 0x35, 0x9d, 0x70, + 0x6a, 0xe3, 0xa3, 0x69, +}; +static const struct drbg_kat_pr_true kat4317_t = { + 11, kat4317_entropyin, kat4317_nonce, kat4317_persstr, + kat4317_entropyinpr1, kat4317_addinpr1, kat4317_entropyinpr2, + kat4317_addinpr2, kat4317_retbits +}; +static const struct drbg_kat kat4317 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4317_t +}; + +static const unsigned char kat4318_entropyin[] = { + 0xb4, 0x02, 0xc6, 0xe8, 0x20, 0x4e, 0xce, 0xed, 0x81, 0xec, 0x53, 0x46, + 0x8e, 0xae, 0x4b, 0x25, 0xcc, 0xf6, 0xcf, 0xc3, 0xe3, 0xeb, 0xe0, 0xe5, + 0x9b, 0x87, 0xcc, 0x07, 0x52, 0x03, 0xef, 0xad, 0xb7, 0xe9, 0x81, 0x12, + 0xc5, 0xdf, 0xc2, 0xcd, 0xb7, 0xe5, 0x5f, 0xa5, 0x7b, 0x09, 0x95, 0xd4, +}; +static const unsigned char kat4318_nonce[] = {0}; +static const unsigned char kat4318_persstr[] = { + 0xfa, 0x2e, 0x8c, 0x7a, 0xe9, 0x54, 0x94, 0x45, 0x57, 0xb3, 0xcd, 0xea, + 0x7b, 0x39, 0x6c, 0x96, 0x20, 0x30, 0x3a, 0x5d, 0x5f, 0x74, 0x9d, 0x22, + 0xaf, 0x03, 0x81, 0x5d, 0x88, 0xe7, 0x48, 0xb1, 0x56, 0x52, 0x11, 0xf6, + 0xae, 0x7b, 0x0c, 0x85, 0xc8, 0x4b, 0xdb, 0x0b, 0x72, 0x40, 0x5e, 0x5b, +}; +static const unsigned char kat4318_entropyinpr1[] = { + 0xd9, 0x54, 0x11, 0x03, 0x11, 0x0d, 0xf3, 0xa6, 0xd2, 0x85, 0x2c, 0x76, + 0x8c, 0x1b, 0x31, 0x2d, 0x2c, 0xd4, 0xe5, 0x11, 0xb3, 0x1b, 0xc7, 0x70, + 0xb7, 0xc1, 0x1f, 0x2b, 0xad, 0x3f, 0x82, 0xe8, 0x95, 0xd5, 0xc2, 0x8c, + 0xc6, 0x8b, 0xf8, 0xb0, 0xcb, 0x9f, 0x19, 0x1a, 0x93, 0xba, 0x2e, 0x9c, +}; +static const unsigned char kat4318_addinpr1[] = { + 0x37, 0x43, 0x25, 0x94, 0x93, 0xfa, 0xfc, 0xa8, 0x38, 0xf3, 0xdf, 0x52, + 0x7d, 0x75, 0xad, 0xe8, 0x3a, 0x0f, 0xbd, 0x6a, 0x6c, 0x1f, 0x79, 0xe2, + 0xf1, 0x40, 0xb0, 0xad, 0xad, 0x9b, 0x42, 0x5e, 0x02, 0xef, 0x80, 0x4a, + 0xdb, 0x84, 0x51, 0x7f, 0x99, 0x36, 0xcb, 0xbe, 0x67, 0x0f, 0x4f, 0xec, +}; +static const unsigned char kat4318_entropyinpr2[] = { + 0x41, 0x7b, 0xfb, 0x46, 0x0c, 0x4e, 0xa3, 0xcd, 0x8a, 0x9e, 0x35, 0x09, + 0x85, 0xab, 0x04, 0xef, 0xfe, 0x9c, 0xef, 0xb5, 0x9c, 0x6e, 0x61, 0x94, + 0xb7, 0x9d, 0x25, 0x2e, 0xea, 0x00, 0x88, 0xd4, 0xd0, 0x7f, 0x9e, 0x5c, + 0x74, 0xca, 0xa3, 0xa3, 0x34, 0xa7, 0x9e, 0x90, 0xad, 0x01, 0xe3, 0x3f, +}; +static const unsigned char kat4318_addinpr2[] = { + 0x9f, 0x90, 0xc6, 0xdb, 0x02, 0x8e, 0x49, 0xea, 0xc2, 0x0b, 0x0c, 0xc2, + 0xdb, 0x9c, 0xe1, 0x0e, 0x41, 0x36, 0x62, 0x1a, 0x8e, 0xbe, 0x26, 0x95, + 0x4e, 0x77, 0xea, 0xcd, 0x08, 0x2c, 0x46, 0x7f, 0x08, 0xdd, 0xfe, 0x31, + 0x3b, 0xce, 0x0b, 0x11, 0x7d, 0x36, 0x95, 0xc3, 0x60, 0x99, 0x95, 0xee, +}; +static const unsigned char kat4318_retbits[] = { + 0xfc, 0xf2, 0xc7, 0x3d, 0xfb, 0x68, 0x49, 0xdf, 0x7f, 0x0a, 0xab, 0xaf, + 0x41, 0xcd, 0x8f, 0x19, 0x7a, 0xde, 0x73, 0xf6, 0x40, 0x65, 0x6e, 0x5e, + 0x31, 0x00, 0x90, 0xd1, 0x3b, 0x58, 0xce, 0x24, 0x6c, 0x5b, 0xf0, 0xa2, + 0xfc, 0xb9, 0xec, 0x8e, 0xc1, 0xce, 0x52, 0x50, 0xee, 0xc3, 0x4a, 0x39, + 0x0d, 0x06, 0x17, 0x9e, 0x89, 0xb2, 0x52, 0xd7, 0x57, 0x4c, 0x5a, 0x8a, + 0x52, 0x8a, 0x3a, 0x45, +}; +static const struct drbg_kat_pr_true kat4318_t = { + 12, kat4318_entropyin, kat4318_nonce, kat4318_persstr, + kat4318_entropyinpr1, kat4318_addinpr1, kat4318_entropyinpr2, + kat4318_addinpr2, kat4318_retbits +}; +static const struct drbg_kat kat4318 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4318_t +}; + +static const unsigned char kat4319_entropyin[] = { + 0xd8, 0x2f, 0x8d, 0x6a, 0x96, 0xfa, 0x88, 0xc4, 0xf7, 0x36, 0x62, 0x26, + 0x91, 0xf9, 0x66, 0x60, 0x6a, 0xf4, 0x19, 0x3d, 0x8e, 0x09, 0xa7, 0xcb, + 0x80, 0xcc, 0x3a, 0x5a, 0x94, 0x36, 0x97, 0x19, 0x4c, 0xca, 0xea, 0x0f, + 0x83, 0x26, 0xff, 0x4e, 0x6f, 0xaf, 0xcf, 0xcc, 0x6d, 0xf2, 0x0d, 0x15, +}; +static const unsigned char kat4319_nonce[] = {0}; +static const unsigned char kat4319_persstr[] = { + 0x35, 0xf2, 0x25, 0x6c, 0x8b, 0x1a, 0x18, 0x65, 0x9f, 0xcb, 0xf7, 0x37, + 0x8a, 0x8f, 0x8f, 0x2f, 0xd3, 0xae, 0x20, 0x81, 0x87, 0xe1, 0xf6, 0xb8, + 0xf9, 0x98, 0xe9, 0x82, 0x40, 0x7a, 0xab, 0x6a, 0x12, 0xb2, 0xb7, 0xbb, + 0x6a, 0x6e, 0xb3, 0x7e, 0x77, 0x88, 0xf6, 0x50, 0x67, 0x9d, 0x61, 0xcb, +}; +static const unsigned char kat4319_entropyinpr1[] = { + 0xaf, 0x13, 0xfc, 0x68, 0x12, 0xb0, 0x98, 0x32, 0xf2, 0x8b, 0x54, 0xd6, + 0x69, 0x43, 0x25, 0x51, 0xb7, 0xa2, 0xb0, 0xb9, 0x83, 0x67, 0xb6, 0x61, + 0x60, 0x01, 0xbb, 0xed, 0x2b, 0x1f, 0x91, 0x97, 0x61, 0x2d, 0x11, 0xb0, + 0x15, 0x69, 0x8e, 0x06, 0x1d, 0x70, 0x1e, 0xd9, 0x5f, 0x31, 0xab, 0x8f, +}; +static const unsigned char kat4319_addinpr1[] = { + 0xf7, 0x31, 0x74, 0x06, 0x93, 0x98, 0xdd, 0xd8, 0xc2, 0x6e, 0x4c, 0x69, + 0x05, 0xc7, 0x0d, 0x09, 0xeb, 0x2c, 0x6b, 0xa9, 0x5c, 0xda, 0x87, 0x90, + 0x88, 0xea, 0xc2, 0x72, 0x5c, 0xc2, 0x0d, 0xdb, 0xa4, 0xb4, 0x23, 0xe0, + 0xff, 0x51, 0xa0, 0xf5, 0x12, 0xdd, 0xad, 0xb9, 0x16, 0xec, 0x60, 0x62, +}; +static const unsigned char kat4319_entropyinpr2[] = { + 0xcc, 0xe4, 0x4c, 0x6d, 0x3c, 0x45, 0x74, 0xf4, 0x87, 0x64, 0x53, 0x20, + 0x56, 0x79, 0xf0, 0xc2, 0x76, 0x84, 0x72, 0xa9, 0x47, 0x78, 0xec, 0x4f, + 0x03, 0x85, 0x1e, 0x36, 0x9a, 0x62, 0x33, 0x8c, 0x85, 0x20, 0xcc, 0x53, + 0xf3, 0x16, 0x30, 0xf6, 0x62, 0x87, 0x9d, 0x70, 0xd6, 0xe9, 0x3f, 0x74, +}; +static const unsigned char kat4319_addinpr2[] = { + 0x58, 0x72, 0xb2, 0xab, 0x09, 0xe8, 0x37, 0x20, 0x04, 0x25, 0x3a, 0xa2, + 0x9b, 0xf5, 0xca, 0x82, 0x0b, 0xc8, 0x5c, 0x2a, 0x01, 0xcf, 0x31, 0x72, + 0x15, 0xfc, 0x97, 0xba, 0xdf, 0x81, 0x4f, 0xbe, 0xe3, 0xe0, 0x26, 0xd3, + 0xd3, 0xa5, 0x24, 0xad, 0xe8, 0x8c, 0xf9, 0x72, 0x08, 0x36, 0x69, 0x47, +}; +static const unsigned char kat4319_retbits[] = { + 0x9a, 0x19, 0xf4, 0x2e, 0xfe, 0xdf, 0x09, 0xef, 0x0f, 0xdd, 0x24, 0xe7, + 0x21, 0x8f, 0xb5, 0xd5, 0xe7, 0xac, 0xcd, 0x7a, 0x36, 0x42, 0xb3, 0x6a, + 0x84, 0x10, 0x00, 0x3a, 0x49, 0x38, 0x55, 0x48, 0xc1, 0xc7, 0x2e, 0x6f, + 0xeb, 0x0e, 0x30, 0x5e, 0x9c, 0x2a, 0x3f, 0x35, 0x29, 0xf8, 0x11, 0x0e, + 0x08, 0x4f, 0x02, 0x80, 0x8d, 0xf1, 0xe0, 0x87, 0x4b, 0x10, 0xdd, 0xe2, + 0xf0, 0xa9, 0x2f, 0x52, +}; +static const struct drbg_kat_pr_true kat4319_t = { + 13, kat4319_entropyin, kat4319_nonce, kat4319_persstr, + kat4319_entropyinpr1, kat4319_addinpr1, kat4319_entropyinpr2, + kat4319_addinpr2, kat4319_retbits +}; +static const struct drbg_kat kat4319 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4319_t +}; + +static const unsigned char kat4320_entropyin[] = { + 0x5a, 0x6e, 0x33, 0xd1, 0x56, 0x67, 0x27, 0x28, 0x14, 0xb1, 0xb8, 0x3e, + 0x37, 0x24, 0xf9, 0x95, 0xaf, 0x0f, 0xb0, 0x5c, 0x24, 0x72, 0x03, 0xc3, + 0x4a, 0x07, 0xa6, 0x74, 0x36, 0xe7, 0xde, 0xdc, 0xd7, 0x17, 0xa2, 0x4c, + 0xa4, 0xa9, 0xd9, 0xf9, 0xd4, 0x7a, 0x6b, 0x6b, 0x84, 0xb6, 0x3b, 0x88, +}; +static const unsigned char kat4320_nonce[] = {0}; +static const unsigned char kat4320_persstr[] = { + 0xf3, 0xfe, 0x7a, 0xd7, 0xd0, 0xd6, 0xb8, 0x60, 0x93, 0x12, 0xf0, 0x49, + 0xf7, 0x5a, 0x2e, 0x9c, 0xe6, 0x43, 0xc9, 0x35, 0xd8, 0x2a, 0xce, 0x41, + 0xdb, 0xa5, 0xb0, 0xc1, 0xc9, 0x85, 0x68, 0x43, 0x28, 0xfe, 0x31, 0xc4, + 0xe7, 0x7d, 0xb6, 0x0f, 0x25, 0x14, 0x38, 0xed, 0x74, 0x83, 0xef, 0x19, +}; +static const unsigned char kat4320_entropyinpr1[] = { + 0xb4, 0xe1, 0x56, 0xfe, 0x5a, 0x63, 0x56, 0xcf, 0xcb, 0x2c, 0xbb, 0x79, + 0xa1, 0x81, 0xe4, 0x0a, 0x1d, 0x8f, 0xd0, 0xe1, 0x0f, 0xc4, 0x77, 0x58, + 0x93, 0xb8, 0x51, 0x32, 0xed, 0xe0, 0xca, 0x22, 0x26, 0x8e, 0xad, 0x5a, + 0x40, 0xb6, 0xde, 0x69, 0x84, 0xce, 0xe2, 0xfc, 0xa6, 0x2f, 0xdb, 0xee, +}; +static const unsigned char kat4320_addinpr1[] = { + 0x56, 0x1d, 0x2a, 0x23, 0x52, 0xab, 0x0e, 0x73, 0xf3, 0xec, 0x11, 0x35, + 0xe4, 0xf2, 0xdd, 0x22, 0x6d, 0x5f, 0x3e, 0x4b, 0xc3, 0xc4, 0xd8, 0xc4, + 0x6d, 0xe8, 0x66, 0x44, 0x65, 0x99, 0x44, 0x6d, 0x0f, 0x15, 0x8b, 0xda, + 0x30, 0xc3, 0xee, 0xc2, 0x03, 0x3d, 0xbe, 0x09, 0x92, 0x4c, 0x94, 0xb1, +}; +static const unsigned char kat4320_entropyinpr2[] = { + 0xd0, 0x04, 0xfa, 0x7a, 0xe5, 0x59, 0x65, 0x6f, 0x6a, 0x8f, 0x85, 0x25, + 0xc6, 0xe5, 0x5d, 0x24, 0x5c, 0x8d, 0x7f, 0x58, 0x0c, 0xfe, 0x63, 0xba, + 0x84, 0x57, 0x5c, 0x5b, 0x6e, 0xf8, 0xbb, 0xf6, 0x13, 0x0f, 0xda, 0x8f, + 0x01, 0xfd, 0x87, 0x30, 0x79, 0x23, 0xe0, 0x63, 0x9a, 0x23, 0xf4, 0xe8, +}; +static const unsigned char kat4320_addinpr2[] = { + 0x1f, 0xc6, 0x76, 0x04, 0x93, 0x0d, 0xec, 0xe4, 0x93, 0x7f, 0x2b, 0x01, + 0xaa, 0x4c, 0x44, 0xeb, 0x63, 0x70, 0xa5, 0xfb, 0xe1, 0xe1, 0x68, 0xa8, + 0x4c, 0x26, 0xfa, 0x3c, 0x6d, 0xd0, 0xfd, 0xa4, 0xe2, 0x07, 0x16, 0x96, + 0xe3, 0x24, 0x6d, 0x34, 0x85, 0xf4, 0xd5, 0xf1, 0x9c, 0x6b, 0x18, 0x53, +}; +static const unsigned char kat4320_retbits[] = { + 0x65, 0xfa, 0x1b, 0x5c, 0xd3, 0xbc, 0x6f, 0x0a, 0x6a, 0x89, 0x90, 0x14, + 0xf8, 0xdd, 0x94, 0xc6, 0x24, 0xcb, 0xd6, 0xde, 0xef, 0xa5, 0x0b, 0x3f, + 0x65, 0xa1, 0x06, 0x7a, 0x1a, 0xfb, 0x95, 0x2f, 0x13, 0x4f, 0xf7, 0x33, + 0x35, 0x81, 0x84, 0x33, 0x52, 0x60, 0xd2, 0x85, 0xc1, 0x76, 0x71, 0x8f, + 0xcc, 0x58, 0xf0, 0xd2, 0x82, 0xa2, 0x48, 0x11, 0xb8, 0x60, 0x8f, 0x3d, + 0x75, 0x3d, 0xe0, 0x68, +}; +static const struct drbg_kat_pr_true kat4320_t = { + 14, kat4320_entropyin, kat4320_nonce, kat4320_persstr, + kat4320_entropyinpr1, kat4320_addinpr1, kat4320_entropyinpr2, + kat4320_addinpr2, kat4320_retbits +}; +static const struct drbg_kat kat4320 = { + PR_TRUE, NO_DF, NID_aes_256_ctr, 48, 0, 48, 48, 64, &kat4320_t +}; + +const struct drbg_kat *drbg_test[] = { + &kat1, &kat2, &kat3, &kat4, &kat5, &kat6, &kat7, + &kat8, &kat9, &kat10, &kat11, &kat12, &kat13, &kat14, + &kat15, &kat16, &kat17, &kat18, &kat19, &kat20, &kat21, + &kat22, &kat23, &kat24, &kat25, &kat26, &kat27, &kat28, + &kat29, &kat30, &kat31, &kat32, &kat33, &kat34, &kat35, + &kat36, &kat37, &kat38, &kat39, &kat40, &kat41, &kat42, + &kat43, &kat44, &kat45, &kat46, &kat47, &kat48, &kat49, + &kat50, &kat51, &kat52, &kat53, &kat54, &kat55, &kat56, + &kat57, &kat58, &kat59, &kat60, &kat61, &kat62, &kat63, + &kat64, &kat65, &kat66, &kat67, &kat68, &kat69, &kat70, + &kat71, &kat72, &kat73, &kat74, &kat75, &kat76, &kat77, + &kat78, &kat79, &kat80, &kat81, &kat82, &kat83, &kat84, + &kat85, &kat86, &kat87, &kat88, &kat89, &kat90, &kat91, + &kat92, &kat93, &kat94, &kat95, &kat96, &kat97, &kat98, + &kat99, &kat100, &kat101, &kat102, &kat103, &kat104, &kat105, + &kat106, &kat107, &kat108, &kat109, &kat110, &kat111, &kat112, + &kat113, &kat114, &kat115, &kat116, &kat117, &kat118, &kat119, + &kat120, &kat121, &kat122, &kat123, &kat124, &kat125, &kat126, + &kat127, &kat128, &kat129, &kat130, &kat131, &kat132, &kat133, + &kat134, &kat135, &kat136, &kat137, &kat138, &kat139, &kat140, + &kat141, &kat142, &kat143, &kat144, &kat145, &kat146, &kat147, + &kat148, &kat149, &kat150, &kat151, &kat152, &kat153, &kat154, + &kat155, &kat156, &kat157, &kat158, &kat159, &kat160, &kat161, + &kat162, &kat163, &kat164, &kat165, &kat166, &kat167, &kat168, + &kat169, &kat170, &kat171, &kat172, &kat173, &kat174, &kat175, + &kat176, &kat177, &kat178, &kat179, &kat180, &kat181, &kat182, + &kat183, &kat184, &kat185, &kat186, &kat187, &kat188, &kat189, + &kat190, &kat191, &kat192, &kat193, &kat194, &kat195, &kat196, + &kat197, &kat198, &kat199, &kat200, &kat201, &kat202, &kat203, + &kat204, &kat205, &kat206, &kat207, &kat208, &kat209, &kat210, + &kat211, &kat212, &kat213, &kat214, &kat215, &kat216, &kat217, + &kat218, &kat219, &kat220, &kat221, &kat222, &kat223, &kat224, + &kat225, &kat226, &kat227, &kat228, &kat229, &kat230, &kat231, + &kat232, &kat233, &kat234, &kat235, &kat236, &kat237, &kat238, + &kat239, &kat240, &kat241, &kat242, &kat243, &kat244, &kat245, + &kat246, &kat247, &kat248, &kat249, &kat250, &kat251, &kat252, + &kat253, &kat254, &kat255, &kat256, &kat257, &kat258, &kat259, + &kat260, &kat261, &kat262, &kat263, &kat264, &kat265, &kat266, + &kat267, &kat268, &kat269, &kat270, &kat271, &kat272, &kat273, + &kat274, &kat275, &kat276, &kat277, &kat278, &kat279, &kat280, + &kat281, &kat282, &kat283, &kat284, &kat285, &kat286, &kat287, + &kat288, &kat289, &kat290, &kat291, &kat292, &kat293, &kat294, + &kat295, &kat296, &kat297, &kat298, &kat299, &kat300, &kat301, + &kat302, &kat303, &kat304, &kat305, &kat306, &kat307, &kat308, + &kat309, &kat310, &kat311, &kat312, &kat313, &kat314, &kat315, + &kat316, &kat317, &kat318, &kat319, &kat320, &kat321, &kat322, + &kat323, &kat324, &kat325, &kat326, &kat327, &kat328, &kat329, + &kat330, &kat331, &kat332, &kat333, &kat334, &kat335, &kat336, + &kat337, &kat338, &kat339, &kat340, &kat341, &kat342, &kat343, + &kat344, &kat345, &kat346, &kat347, &kat348, &kat349, &kat350, + &kat351, &kat352, &kat353, &kat354, &kat355, &kat356, &kat357, + &kat358, &kat359, &kat360, &kat361, &kat362, &kat363, &kat364, + &kat365, &kat366, &kat367, &kat368, &kat369, &kat370, &kat371, + &kat372, &kat373, &kat374, &kat375, &kat376, &kat377, &kat378, + &kat379, &kat380, &kat381, &kat382, &kat383, &kat384, &kat385, + &kat386, &kat387, &kat388, &kat389, &kat390, &kat391, &kat392, + &kat393, &kat394, &kat395, &kat396, &kat397, &kat398, &kat399, + &kat400, &kat401, &kat402, &kat403, &kat404, &kat405, &kat406, + &kat407, &kat408, &kat409, &kat410, &kat411, &kat412, &kat413, + &kat414, &kat415, &kat416, &kat417, &kat418, &kat419, &kat420, + &kat421, &kat422, &kat423, &kat424, &kat425, &kat426, &kat427, + &kat428, &kat429, &kat430, &kat431, &kat432, &kat433, &kat434, + &kat435, &kat436, &kat437, &kat438, &kat439, &kat440, &kat441, + &kat442, &kat443, &kat444, &kat445, &kat446, &kat447, &kat448, + &kat449, &kat450, &kat451, &kat452, &kat453, &kat454, &kat455, + &kat456, &kat457, &kat458, &kat459, &kat460, &kat461, &kat462, + &kat463, &kat464, &kat465, &kat466, &kat467, &kat468, &kat469, + &kat470, &kat471, &kat472, &kat473, &kat474, &kat475, &kat476, + &kat477, &kat478, &kat479, &kat480, &kat481, &kat482, &kat483, + &kat484, &kat485, &kat486, &kat487, &kat488, &kat489, &kat490, + &kat491, &kat492, &kat493, &kat494, &kat495, &kat496, &kat497, + &kat498, &kat499, &kat500, &kat501, &kat502, &kat503, &kat504, + &kat505, &kat506, &kat507, &kat508, &kat509, &kat510, &kat511, + &kat512, &kat513, &kat514, &kat515, &kat516, &kat517, &kat518, + &kat519, &kat520, &kat521, &kat522, &kat523, &kat524, &kat525, + &kat526, &kat527, &kat528, &kat529, &kat530, &kat531, &kat532, + &kat533, &kat534, &kat535, &kat536, &kat537, &kat538, &kat539, + &kat540, &kat541, &kat542, &kat543, &kat544, &kat545, &kat546, + &kat547, &kat548, &kat549, &kat550, &kat551, &kat552, &kat553, + &kat554, &kat555, &kat556, &kat557, &kat558, &kat559, &kat560, + &kat561, &kat562, &kat563, &kat564, &kat565, &kat566, &kat567, + &kat568, &kat569, &kat570, &kat571, &kat572, &kat573, &kat574, + &kat575, &kat576, &kat577, &kat578, &kat579, &kat580, &kat581, + &kat582, &kat583, &kat584, &kat585, &kat586, &kat587, &kat588, + &kat589, &kat590, &kat591, &kat592, &kat593, &kat594, &kat595, + &kat596, &kat597, &kat598, &kat599, &kat600, &kat601, &kat602, + &kat603, &kat604, &kat605, &kat606, &kat607, &kat608, &kat609, + &kat610, &kat611, &kat612, &kat613, &kat614, &kat615, &kat616, + &kat617, &kat618, &kat619, &kat620, &kat621, &kat622, &kat623, + &kat624, &kat625, &kat626, &kat627, &kat628, &kat629, &kat630, + &kat631, &kat632, &kat633, &kat634, &kat635, &kat636, &kat637, + &kat638, &kat639, &kat640, &kat641, &kat642, &kat643, &kat644, + &kat645, &kat646, &kat647, &kat648, &kat649, &kat650, &kat651, + &kat652, &kat653, &kat654, &kat655, &kat656, &kat657, &kat658, + &kat659, &kat660, &kat661, &kat662, &kat663, &kat664, &kat665, + &kat666, &kat667, &kat668, &kat669, &kat670, &kat671, &kat672, + &kat673, &kat674, &kat675, &kat676, &kat677, &kat678, &kat679, + &kat680, &kat681, &kat682, &kat683, &kat684, &kat685, &kat686, + &kat687, &kat688, &kat689, &kat690, &kat691, &kat692, &kat693, + &kat694, &kat695, &kat696, &kat697, &kat698, &kat699, &kat700, + &kat701, &kat702, &kat703, &kat704, &kat705, &kat706, &kat707, + &kat708, &kat709, &kat710, &kat711, &kat712, &kat713, &kat714, + &kat715, &kat716, &kat717, &kat718, &kat719, &kat720, &kat721, + &kat722, &kat723, &kat724, &kat725, &kat726, &kat727, &kat728, + &kat729, &kat730, &kat731, &kat732, &kat733, &kat734, &kat735, + &kat736, &kat737, &kat738, &kat739, &kat740, &kat741, &kat742, + &kat743, &kat744, &kat745, &kat746, &kat747, &kat748, &kat749, + &kat750, &kat751, &kat752, &kat753, &kat754, &kat755, &kat756, + &kat757, &kat758, &kat759, &kat760, &kat761, &kat762, &kat763, + &kat764, &kat765, &kat766, &kat767, &kat768, &kat769, &kat770, + &kat771, &kat772, &kat773, &kat774, &kat775, &kat776, &kat777, + &kat778, &kat779, &kat780, &kat781, &kat782, &kat783, &kat784, + &kat785, &kat786, &kat787, &kat788, &kat789, &kat790, &kat791, + &kat792, &kat793, &kat794, &kat795, &kat796, &kat797, &kat798, + &kat799, &kat800, &kat801, &kat802, &kat803, &kat804, &kat805, + &kat806, &kat807, &kat808, &kat809, &kat810, &kat811, &kat812, + &kat813, &kat814, &kat815, &kat816, &kat817, &kat818, &kat819, + &kat820, &kat821, &kat822, &kat823, &kat824, &kat825, &kat826, + &kat827, &kat828, &kat829, &kat830, &kat831, &kat832, &kat833, + &kat834, &kat835, &kat836, &kat837, &kat838, &kat839, &kat840, + &kat841, &kat842, &kat843, &kat844, &kat845, &kat846, &kat847, + &kat848, &kat849, &kat850, &kat851, &kat852, &kat853, &kat854, + &kat855, &kat856, &kat857, &kat858, &kat859, &kat860, &kat861, + &kat862, &kat863, &kat864, &kat865, &kat866, &kat867, &kat868, + &kat869, &kat870, &kat871, &kat872, &kat873, &kat874, &kat875, + &kat876, &kat877, &kat878, &kat879, &kat880, &kat881, &kat882, + &kat883, &kat884, &kat885, &kat886, &kat887, &kat888, &kat889, + &kat890, &kat891, &kat892, &kat893, &kat894, &kat895, &kat896, + &kat897, &kat898, &kat899, &kat900, &kat901, &kat902, &kat903, + &kat904, &kat905, &kat906, &kat907, &kat908, &kat909, &kat910, + &kat911, &kat912, &kat913, &kat914, &kat915, &kat916, &kat917, + &kat918, &kat919, &kat920, &kat921, &kat922, &kat923, &kat924, + &kat925, &kat926, &kat927, &kat928, &kat929, &kat930, &kat931, + &kat932, &kat933, &kat934, &kat935, &kat936, &kat937, &kat938, + &kat939, &kat940, &kat941, &kat942, &kat943, &kat944, &kat945, + &kat946, &kat947, &kat948, &kat949, &kat950, &kat951, &kat952, + &kat953, &kat954, &kat955, &kat956, &kat957, &kat958, &kat959, + &kat960, &kat961, &kat962, &kat963, &kat964, &kat965, &kat966, + &kat967, &kat968, &kat969, &kat970, &kat971, &kat972, &kat973, + &kat974, &kat975, &kat976, &kat977, &kat978, &kat979, &kat980, + &kat981, &kat982, &kat983, &kat984, &kat985, &kat986, &kat987, + &kat988, &kat989, &kat990, &kat991, &kat992, &kat993, &kat994, + &kat995, &kat996, &kat997, &kat998, &kat999, &kat1000, &kat1001, + &kat1002, &kat1003, &kat1004, &kat1005, &kat1006, &kat1007, &kat1008, + &kat1009, &kat1010, &kat1011, &kat1012, &kat1013, &kat1014, &kat1015, + &kat1016, &kat1017, &kat1018, &kat1019, &kat1020, &kat1021, &kat1022, + &kat1023, &kat1024, &kat1025, &kat1026, &kat1027, &kat1028, &kat1029, + &kat1030, &kat1031, &kat1032, &kat1033, &kat1034, &kat1035, &kat1036, + &kat1037, &kat1038, &kat1039, &kat1040, &kat1041, &kat1042, &kat1043, + &kat1044, &kat1045, &kat1046, &kat1047, &kat1048, &kat1049, &kat1050, + &kat1051, &kat1052, &kat1053, &kat1054, &kat1055, &kat1056, &kat1057, + &kat1058, &kat1059, &kat1060, &kat1061, &kat1062, &kat1063, &kat1064, + &kat1065, &kat1066, &kat1067, &kat1068, &kat1069, &kat1070, &kat1071, + &kat1072, &kat1073, &kat1074, &kat1075, &kat1076, &kat1077, &kat1078, + &kat1079, &kat1080, &kat1081, &kat1082, &kat1083, &kat1084, &kat1085, + &kat1086, &kat1087, &kat1088, &kat1089, &kat1090, &kat1091, &kat1092, + &kat1093, &kat1094, &kat1095, &kat1096, &kat1097, &kat1098, &kat1099, + &kat1100, &kat1101, &kat1102, &kat1103, &kat1104, &kat1105, &kat1106, + &kat1107, &kat1108, &kat1109, &kat1110, &kat1111, &kat1112, &kat1113, + &kat1114, &kat1115, &kat1116, &kat1117, &kat1118, &kat1119, &kat1120, + &kat1121, &kat1122, &kat1123, &kat1124, &kat1125, &kat1126, &kat1127, + &kat1128, &kat1129, &kat1130, &kat1131, &kat1132, &kat1133, &kat1134, + &kat1135, &kat1136, &kat1137, &kat1138, &kat1139, &kat1140, &kat1141, + &kat1142, &kat1143, &kat1144, &kat1145, &kat1146, &kat1147, &kat1148, + &kat1149, &kat1150, &kat1151, &kat1152, &kat1153, &kat1154, &kat1155, + &kat1156, &kat1157, &kat1158, &kat1159, &kat1160, &kat1161, &kat1162, + &kat1163, &kat1164, &kat1165, &kat1166, &kat1167, &kat1168, &kat1169, + &kat1170, &kat1171, &kat1172, &kat1173, &kat1174, &kat1175, &kat1176, + &kat1177, &kat1178, &kat1179, &kat1180, &kat1181, &kat1182, &kat1183, + &kat1184, &kat1185, &kat1186, &kat1187, &kat1188, &kat1189, &kat1190, + &kat1191, &kat1192, &kat1193, &kat1194, &kat1195, &kat1196, &kat1197, + &kat1198, &kat1199, &kat1200, &kat1201, &kat1202, &kat1203, &kat1204, + &kat1205, &kat1206, &kat1207, &kat1208, &kat1209, &kat1210, &kat1211, + &kat1212, &kat1213, &kat1214, &kat1215, &kat1216, &kat1217, &kat1218, + &kat1219, &kat1220, &kat1221, &kat1222, &kat1223, &kat1224, &kat1225, + &kat1226, &kat1227, &kat1228, &kat1229, &kat1230, &kat1231, &kat1232, + &kat1233, &kat1234, &kat1235, &kat1236, &kat1237, &kat1238, &kat1239, + &kat1240, &kat1241, &kat1242, &kat1243, &kat1244, &kat1245, &kat1246, + &kat1247, &kat1248, &kat1249, &kat1250, &kat1251, &kat1252, &kat1253, + &kat1254, &kat1255, &kat1256, &kat1257, &kat1258, &kat1259, &kat1260, + &kat1261, &kat1262, &kat1263, &kat1264, &kat1265, &kat1266, &kat1267, + &kat1268, &kat1269, &kat1270, &kat1271, &kat1272, &kat1273, &kat1274, + &kat1275, &kat1276, &kat1277, &kat1278, &kat1279, &kat1280, &kat1281, + &kat1282, &kat1283, &kat1284, &kat1285, &kat1286, &kat1287, &kat1288, + &kat1289, &kat1290, &kat1291, &kat1292, &kat1293, &kat1294, &kat1295, + &kat1296, &kat1297, &kat1298, &kat1299, &kat1300, &kat1301, &kat1302, + &kat1303, &kat1304, &kat1305, &kat1306, &kat1307, &kat1308, &kat1309, + &kat1310, &kat1311, &kat1312, &kat1313, &kat1314, &kat1315, &kat1316, + &kat1317, &kat1318, &kat1319, &kat1320, &kat1321, &kat1322, &kat1323, + &kat1324, &kat1325, &kat1326, &kat1327, &kat1328, &kat1329, &kat1330, + &kat1331, &kat1332, &kat1333, &kat1334, &kat1335, &kat1336, &kat1337, + &kat1338, &kat1339, &kat1340, &kat1341, &kat1342, &kat1343, &kat1344, + &kat1345, &kat1346, &kat1347, &kat1348, &kat1349, &kat1350, &kat1351, + &kat1352, &kat1353, &kat1354, &kat1355, &kat1356, &kat1357, &kat1358, + &kat1359, &kat1360, &kat1361, &kat1362, &kat1363, &kat1364, &kat1365, + &kat1366, &kat1367, &kat1368, &kat1369, &kat1370, &kat1371, &kat1372, + &kat1373, &kat1374, &kat1375, &kat1376, &kat1377, &kat1378, &kat1379, + &kat1380, &kat1381, &kat1382, &kat1383, &kat1384, &kat1385, &kat1386, + &kat1387, &kat1388, &kat1389, &kat1390, &kat1391, &kat1392, &kat1393, + &kat1394, &kat1395, &kat1396, &kat1397, &kat1398, &kat1399, &kat1400, + &kat1401, &kat1402, &kat1403, &kat1404, &kat1405, &kat1406, &kat1407, + &kat1408, &kat1409, &kat1410, &kat1411, &kat1412, &kat1413, &kat1414, + &kat1415, &kat1416, &kat1417, &kat1418, &kat1419, &kat1420, &kat1421, + &kat1422, &kat1423, &kat1424, &kat1425, &kat1426, &kat1427, &kat1428, + &kat1429, &kat1430, &kat1431, &kat1432, &kat1433, &kat1434, &kat1435, + &kat1436, &kat1437, &kat1438, &kat1439, &kat1440, &kat1441, &kat1442, + &kat1443, &kat1444, &kat1445, &kat1446, &kat1447, &kat1448, &kat1449, + &kat1450, &kat1451, &kat1452, &kat1453, &kat1454, &kat1455, &kat1456, + &kat1457, &kat1458, &kat1459, &kat1460, &kat1461, &kat1462, &kat1463, + &kat1464, &kat1465, &kat1466, &kat1467, &kat1468, &kat1469, &kat1470, + &kat1471, &kat1472, &kat1473, &kat1474, &kat1475, &kat1476, &kat1477, + &kat1478, &kat1479, &kat1480, &kat1481, &kat1482, &kat1483, &kat1484, + &kat1485, &kat1486, &kat1487, &kat1488, &kat1489, &kat1490, &kat1491, + &kat1492, &kat1493, &kat1494, &kat1495, &kat1496, &kat1497, &kat1498, + &kat1499, &kat1500, &kat1501, &kat1502, &kat1503, &kat1504, &kat1505, + &kat1506, &kat1507, &kat1508, &kat1509, &kat1510, &kat1511, &kat1512, + &kat1513, &kat1514, &kat1515, &kat1516, &kat1517, &kat1518, &kat1519, + &kat1520, &kat1521, &kat1522, &kat1523, &kat1524, &kat1525, &kat1526, + &kat1527, &kat1528, &kat1529, &kat1530, &kat1531, &kat1532, &kat1533, + &kat1534, &kat1535, &kat1536, &kat1537, &kat1538, &kat1539, &kat1540, + &kat1541, &kat1542, &kat1543, &kat1544, &kat1545, &kat1546, &kat1547, + &kat1548, &kat1549, &kat1550, &kat1551, &kat1552, &kat1553, &kat1554, + &kat1555, &kat1556, &kat1557, &kat1558, &kat1559, &kat1560, &kat1561, + &kat1562, &kat1563, &kat1564, &kat1565, &kat1566, &kat1567, &kat1568, + &kat1569, &kat1570, &kat1571, &kat1572, &kat1573, &kat1574, &kat1575, + &kat1576, &kat1577, &kat1578, &kat1579, &kat1580, &kat1581, &kat1582, + &kat1583, &kat1584, &kat1585, &kat1586, &kat1587, &kat1588, &kat1589, + &kat1590, &kat1591, &kat1592, &kat1593, &kat1594, &kat1595, &kat1596, + &kat1597, &kat1598, &kat1599, &kat1600, &kat1601, &kat1602, &kat1603, + &kat1604, &kat1605, &kat1606, &kat1607, &kat1608, &kat1609, &kat1610, + &kat1611, &kat1612, &kat1613, &kat1614, &kat1615, &kat1616, &kat1617, + &kat1618, &kat1619, &kat1620, &kat1621, &kat1622, &kat1623, &kat1624, + &kat1625, &kat1626, &kat1627, &kat1628, &kat1629, &kat1630, &kat1631, + &kat1632, &kat1633, &kat1634, &kat1635, &kat1636, &kat1637, &kat1638, + &kat1639, &kat1640, &kat1641, &kat1642, &kat1643, &kat1644, &kat1645, + &kat1646, &kat1647, &kat1648, &kat1649, &kat1650, &kat1651, &kat1652, + &kat1653, &kat1654, &kat1655, &kat1656, &kat1657, &kat1658, &kat1659, + &kat1660, &kat1661, &kat1662, &kat1663, &kat1664, &kat1665, &kat1666, + &kat1667, &kat1668, &kat1669, &kat1670, &kat1671, &kat1672, &kat1673, + &kat1674, &kat1675, &kat1676, &kat1677, &kat1678, &kat1679, &kat1680, + &kat1681, &kat1682, &kat1683, &kat1684, &kat1685, &kat1686, &kat1687, + &kat1688, &kat1689, &kat1690, &kat1691, &kat1692, &kat1693, &kat1694, + &kat1695, &kat1696, &kat1697, &kat1698, &kat1699, &kat1700, &kat1701, + &kat1702, &kat1703, &kat1704, &kat1705, &kat1706, &kat1707, &kat1708, + &kat1709, &kat1710, &kat1711, &kat1712, &kat1713, &kat1714, &kat1715, + &kat1716, &kat1717, &kat1718, &kat1719, &kat1720, &kat1721, &kat1722, + &kat1723, &kat1724, &kat1725, &kat1726, &kat1727, &kat1728, &kat1729, + &kat1730, &kat1731, &kat1732, &kat1733, &kat1734, &kat1735, &kat1736, + &kat1737, &kat1738, &kat1739, &kat1740, &kat1741, &kat1742, &kat1743, + &kat1744, &kat1745, &kat1746, &kat1747, &kat1748, &kat1749, &kat1750, + &kat1751, &kat1752, &kat1753, &kat1754, &kat1755, &kat1756, &kat1757, + &kat1758, &kat1759, &kat1760, &kat1761, &kat1762, &kat1763, &kat1764, + &kat1765, &kat1766, &kat1767, &kat1768, &kat1769, &kat1770, &kat1771, + &kat1772, &kat1773, &kat1774, &kat1775, &kat1776, &kat1777, &kat1778, + &kat1779, &kat1780, &kat1781, &kat1782, &kat1783, &kat1784, &kat1785, + &kat1786, &kat1787, &kat1788, &kat1789, &kat1790, &kat1791, &kat1792, + &kat1793, &kat1794, &kat1795, &kat1796, &kat1797, &kat1798, &kat1799, + &kat1800, &kat1801, &kat1802, &kat1803, &kat1804, &kat1805, &kat1806, + &kat1807, &kat1808, &kat1809, &kat1810, &kat1811, &kat1812, &kat1813, + &kat1814, &kat1815, &kat1816, &kat1817, &kat1818, &kat1819, &kat1820, + &kat1821, &kat1822, &kat1823, &kat1824, &kat1825, &kat1826, &kat1827, + &kat1828, &kat1829, &kat1830, &kat1831, &kat1832, &kat1833, &kat1834, + &kat1835, &kat1836, &kat1837, &kat1838, &kat1839, &kat1840, &kat1841, + &kat1842, &kat1843, &kat1844, &kat1845, &kat1846, &kat1847, &kat1848, + &kat1849, &kat1850, &kat1851, &kat1852, &kat1853, &kat1854, &kat1855, + &kat1856, &kat1857, &kat1858, &kat1859, &kat1860, &kat1861, &kat1862, + &kat1863, &kat1864, &kat1865, &kat1866, &kat1867, &kat1868, &kat1869, + &kat1870, &kat1871, &kat1872, &kat1873, &kat1874, &kat1875, &kat1876, + &kat1877, &kat1878, &kat1879, &kat1880, &kat1881, &kat1882, &kat1883, + &kat1884, &kat1885, &kat1886, &kat1887, &kat1888, &kat1889, &kat1890, + &kat1891, &kat1892, &kat1893, &kat1894, &kat1895, &kat1896, &kat1897, + &kat1898, &kat1899, &kat1900, &kat1901, &kat1902, &kat1903, &kat1904, + &kat1905, &kat1906, &kat1907, &kat1908, &kat1909, &kat1910, &kat1911, + &kat1912, &kat1913, &kat1914, &kat1915, &kat1916, &kat1917, &kat1918, + &kat1919, &kat1920, &kat1921, &kat1922, &kat1923, &kat1924, &kat1925, + &kat1926, &kat1927, &kat1928, &kat1929, &kat1930, &kat1931, &kat1932, + &kat1933, &kat1934, &kat1935, &kat1936, &kat1937, &kat1938, &kat1939, + &kat1940, &kat1941, &kat1942, &kat1943, &kat1944, &kat1945, &kat1946, + &kat1947, &kat1948, &kat1949, &kat1950, &kat1951, &kat1952, &kat1953, + &kat1954, &kat1955, &kat1956, &kat1957, &kat1958, &kat1959, &kat1960, + &kat1961, &kat1962, &kat1963, &kat1964, &kat1965, &kat1966, &kat1967, + &kat1968, &kat1969, &kat1970, &kat1971, &kat1972, &kat1973, &kat1974, + &kat1975, &kat1976, &kat1977, &kat1978, &kat1979, &kat1980, &kat1981, + &kat1982, &kat1983, &kat1984, &kat1985, &kat1986, &kat1987, &kat1988, + &kat1989, &kat1990, &kat1991, &kat1992, &kat1993, &kat1994, &kat1995, + &kat1996, &kat1997, &kat1998, &kat1999, &kat2000, &kat2001, &kat2002, + &kat2003, &kat2004, &kat2005, &kat2006, &kat2007, &kat2008, &kat2009, + &kat2010, &kat2011, &kat2012, &kat2013, &kat2014, &kat2015, &kat2016, + &kat2017, &kat2018, &kat2019, &kat2020, &kat2021, &kat2022, &kat2023, + &kat2024, &kat2025, &kat2026, &kat2027, &kat2028, &kat2029, &kat2030, + &kat2031, &kat2032, &kat2033, &kat2034, &kat2035, &kat2036, &kat2037, + &kat2038, &kat2039, &kat2040, &kat2041, &kat2042, &kat2043, &kat2044, + &kat2045, &kat2046, &kat2047, &kat2048, &kat2049, &kat2050, &kat2051, + &kat2052, &kat2053, &kat2054, &kat2055, &kat2056, &kat2057, &kat2058, + &kat2059, &kat2060, &kat2061, &kat2062, &kat2063, &kat2064, &kat2065, + &kat2066, &kat2067, &kat2068, &kat2069, &kat2070, &kat2071, &kat2072, + &kat2073, &kat2074, &kat2075, &kat2076, &kat2077, &kat2078, &kat2079, + &kat2080, &kat2081, &kat2082, &kat2083, &kat2084, &kat2085, &kat2086, + &kat2087, &kat2088, &kat2089, &kat2090, &kat2091, &kat2092, &kat2093, + &kat2094, &kat2095, &kat2096, &kat2097, &kat2098, &kat2099, &kat2100, + &kat2101, &kat2102, &kat2103, &kat2104, &kat2105, &kat2106, &kat2107, + &kat2108, &kat2109, &kat2110, &kat2111, &kat2112, &kat2113, &kat2114, + &kat2115, &kat2116, &kat2117, &kat2118, &kat2119, &kat2120, &kat2121, + &kat2122, &kat2123, &kat2124, &kat2125, &kat2126, &kat2127, &kat2128, + &kat2129, &kat2130, &kat2131, &kat2132, &kat2133, &kat2134, &kat2135, + &kat2136, &kat2137, &kat2138, &kat2139, &kat2140, &kat2141, &kat2142, + &kat2143, &kat2144, &kat2145, &kat2146, &kat2147, &kat2148, &kat2149, + &kat2150, &kat2151, &kat2152, &kat2153, &kat2154, &kat2155, &kat2156, + &kat2157, &kat2158, &kat2159, &kat2160, &kat2161, &kat2162, &kat2163, + &kat2164, &kat2165, &kat2166, &kat2167, &kat2168, &kat2169, &kat2170, + &kat2171, &kat2172, &kat2173, &kat2174, &kat2175, &kat2176, &kat2177, + &kat2178, &kat2179, &kat2180, &kat2181, &kat2182, &kat2183, &kat2184, + &kat2185, &kat2186, &kat2187, &kat2188, &kat2189, &kat2190, &kat2191, + &kat2192, &kat2193, &kat2194, &kat2195, &kat2196, &kat2197, &kat2198, + &kat2199, &kat2200, &kat2201, &kat2202, &kat2203, &kat2204, &kat2205, + &kat2206, &kat2207, &kat2208, &kat2209, &kat2210, &kat2211, &kat2212, + &kat2213, &kat2214, &kat2215, &kat2216, &kat2217, &kat2218, &kat2219, + &kat2220, &kat2221, &kat2222, &kat2223, &kat2224, &kat2225, &kat2226, + &kat2227, &kat2228, &kat2229, &kat2230, &kat2231, &kat2232, &kat2233, + &kat2234, &kat2235, &kat2236, &kat2237, &kat2238, &kat2239, &kat2240, + &kat2241, &kat2242, &kat2243, &kat2244, &kat2245, &kat2246, &kat2247, + &kat2248, &kat2249, &kat2250, &kat2251, &kat2252, &kat2253, &kat2254, + &kat2255, &kat2256, &kat2257, &kat2258, &kat2259, &kat2260, &kat2261, + &kat2262, &kat2263, &kat2264, &kat2265, &kat2266, &kat2267, &kat2268, + &kat2269, &kat2270, &kat2271, &kat2272, &kat2273, &kat2274, &kat2275, + &kat2276, &kat2277, &kat2278, &kat2279, &kat2280, &kat2281, &kat2282, + &kat2283, &kat2284, &kat2285, &kat2286, &kat2287, &kat2288, &kat2289, + &kat2290, &kat2291, &kat2292, &kat2293, &kat2294, &kat2295, &kat2296, + &kat2297, &kat2298, &kat2299, &kat2300, &kat2301, &kat2302, &kat2303, + &kat2304, &kat2305, &kat2306, &kat2307, &kat2308, &kat2309, &kat2310, + &kat2311, &kat2312, &kat2313, &kat2314, &kat2315, &kat2316, &kat2317, + &kat2318, &kat2319, &kat2320, &kat2321, &kat2322, &kat2323, &kat2324, + &kat2325, &kat2326, &kat2327, &kat2328, &kat2329, &kat2330, &kat2331, + &kat2332, &kat2333, &kat2334, &kat2335, &kat2336, &kat2337, &kat2338, + &kat2339, &kat2340, &kat2341, &kat2342, &kat2343, &kat2344, &kat2345, + &kat2346, &kat2347, &kat2348, &kat2349, &kat2350, &kat2351, &kat2352, + &kat2353, &kat2354, &kat2355, &kat2356, &kat2357, &kat2358, &kat2359, + &kat2360, &kat2361, &kat2362, &kat2363, &kat2364, &kat2365, &kat2366, + &kat2367, &kat2368, &kat2369, &kat2370, &kat2371, &kat2372, &kat2373, + &kat2374, &kat2375, &kat2376, &kat2377, &kat2378, &kat2379, &kat2380, + &kat2381, &kat2382, &kat2383, &kat2384, &kat2385, &kat2386, &kat2387, + &kat2388, &kat2389, &kat2390, &kat2391, &kat2392, &kat2393, &kat2394, + &kat2395, &kat2396, &kat2397, &kat2398, &kat2399, &kat2400, &kat2401, + &kat2402, &kat2403, &kat2404, &kat2405, &kat2406, &kat2407, &kat2408, + &kat2409, &kat2410, &kat2411, &kat2412, &kat2413, &kat2414, &kat2415, + &kat2416, &kat2417, &kat2418, &kat2419, &kat2420, &kat2421, &kat2422, + &kat2423, &kat2424, &kat2425, &kat2426, &kat2427, &kat2428, &kat2429, + &kat2430, &kat2431, &kat2432, &kat2433, &kat2434, &kat2435, &kat2436, + &kat2437, &kat2438, &kat2439, &kat2440, &kat2441, &kat2442, &kat2443, + &kat2444, &kat2445, &kat2446, &kat2447, &kat2448, &kat2449, &kat2450, + &kat2451, &kat2452, &kat2453, &kat2454, &kat2455, &kat2456, &kat2457, + &kat2458, &kat2459, &kat2460, &kat2461, &kat2462, &kat2463, &kat2464, + &kat2465, &kat2466, &kat2467, &kat2468, &kat2469, &kat2470, &kat2471, + &kat2472, &kat2473, &kat2474, &kat2475, &kat2476, &kat2477, &kat2478, + &kat2479, &kat2480, &kat2481, &kat2482, &kat2483, &kat2484, &kat2485, + &kat2486, &kat2487, &kat2488, &kat2489, &kat2490, &kat2491, &kat2492, + &kat2493, &kat2494, &kat2495, &kat2496, &kat2497, &kat2498, &kat2499, + &kat2500, &kat2501, &kat2502, &kat2503, &kat2504, &kat2505, &kat2506, + &kat2507, &kat2508, &kat2509, &kat2510, &kat2511, &kat2512, &kat2513, + &kat2514, &kat2515, &kat2516, &kat2517, &kat2518, &kat2519, &kat2520, + &kat2521, &kat2522, &kat2523, &kat2524, &kat2525, &kat2526, &kat2527, + &kat2528, &kat2529, &kat2530, &kat2531, &kat2532, &kat2533, &kat2534, + &kat2535, &kat2536, &kat2537, &kat2538, &kat2539, &kat2540, &kat2541, + &kat2542, &kat2543, &kat2544, &kat2545, &kat2546, &kat2547, &kat2548, + &kat2549, &kat2550, &kat2551, &kat2552, &kat2553, &kat2554, &kat2555, + &kat2556, &kat2557, &kat2558, &kat2559, &kat2560, &kat2561, &kat2562, + &kat2563, &kat2564, &kat2565, &kat2566, &kat2567, &kat2568, &kat2569, + &kat2570, &kat2571, &kat2572, &kat2573, &kat2574, &kat2575, &kat2576, + &kat2577, &kat2578, &kat2579, &kat2580, &kat2581, &kat2582, &kat2583, + &kat2584, &kat2585, &kat2586, &kat2587, &kat2588, &kat2589, &kat2590, + &kat2591, &kat2592, &kat2593, &kat2594, &kat2595, &kat2596, &kat2597, + &kat2598, &kat2599, &kat2600, &kat2601, &kat2602, &kat2603, &kat2604, + &kat2605, &kat2606, &kat2607, &kat2608, &kat2609, &kat2610, &kat2611, + &kat2612, &kat2613, &kat2614, &kat2615, &kat2616, &kat2617, &kat2618, + &kat2619, &kat2620, &kat2621, &kat2622, &kat2623, &kat2624, &kat2625, + &kat2626, &kat2627, &kat2628, &kat2629, &kat2630, &kat2631, &kat2632, + &kat2633, &kat2634, &kat2635, &kat2636, &kat2637, &kat2638, &kat2639, + &kat2640, &kat2641, &kat2642, &kat2643, &kat2644, &kat2645, &kat2646, + &kat2647, &kat2648, &kat2649, &kat2650, &kat2651, &kat2652, &kat2653, + &kat2654, &kat2655, &kat2656, &kat2657, &kat2658, &kat2659, &kat2660, + &kat2661, &kat2662, &kat2663, &kat2664, &kat2665, &kat2666, &kat2667, + &kat2668, &kat2669, &kat2670, &kat2671, &kat2672, &kat2673, &kat2674, + &kat2675, &kat2676, &kat2677, &kat2678, &kat2679, &kat2680, &kat2681, + &kat2682, &kat2683, &kat2684, &kat2685, &kat2686, &kat2687, &kat2688, + &kat2689, &kat2690, &kat2691, &kat2692, &kat2693, &kat2694, &kat2695, + &kat2696, &kat2697, &kat2698, &kat2699, &kat2700, &kat2701, &kat2702, + &kat2703, &kat2704, &kat2705, &kat2706, &kat2707, &kat2708, &kat2709, + &kat2710, &kat2711, &kat2712, &kat2713, &kat2714, &kat2715, &kat2716, + &kat2717, &kat2718, &kat2719, &kat2720, &kat2721, &kat2722, &kat2723, + &kat2724, &kat2725, &kat2726, &kat2727, &kat2728, &kat2729, &kat2730, + &kat2731, &kat2732, &kat2733, &kat2734, &kat2735, &kat2736, &kat2737, + &kat2738, &kat2739, &kat2740, &kat2741, &kat2742, &kat2743, &kat2744, + &kat2745, &kat2746, &kat2747, &kat2748, &kat2749, &kat2750, &kat2751, + &kat2752, &kat2753, &kat2754, &kat2755, &kat2756, &kat2757, &kat2758, + &kat2759, &kat2760, &kat2761, &kat2762, &kat2763, &kat2764, &kat2765, + &kat2766, &kat2767, &kat2768, &kat2769, &kat2770, &kat2771, &kat2772, + &kat2773, &kat2774, &kat2775, &kat2776, &kat2777, &kat2778, &kat2779, + &kat2780, &kat2781, &kat2782, &kat2783, &kat2784, &kat2785, &kat2786, + &kat2787, &kat2788, &kat2789, &kat2790, &kat2791, &kat2792, &kat2793, + &kat2794, &kat2795, &kat2796, &kat2797, &kat2798, &kat2799, &kat2800, + &kat2801, &kat2802, &kat2803, &kat2804, &kat2805, &kat2806, &kat2807, + &kat2808, &kat2809, &kat2810, &kat2811, &kat2812, &kat2813, &kat2814, + &kat2815, &kat2816, &kat2817, &kat2818, &kat2819, &kat2820, &kat2821, + &kat2822, &kat2823, &kat2824, &kat2825, &kat2826, &kat2827, &kat2828, + &kat2829, &kat2830, &kat2831, &kat2832, &kat2833, &kat2834, &kat2835, + &kat2836, &kat2837, &kat2838, &kat2839, &kat2840, &kat2841, &kat2842, + &kat2843, &kat2844, &kat2845, &kat2846, &kat2847, &kat2848, &kat2849, + &kat2850, &kat2851, &kat2852, &kat2853, &kat2854, &kat2855, &kat2856, + &kat2857, &kat2858, &kat2859, &kat2860, &kat2861, &kat2862, &kat2863, + &kat2864, &kat2865, &kat2866, &kat2867, &kat2868, &kat2869, &kat2870, + &kat2871, &kat2872, &kat2873, &kat2874, &kat2875, &kat2876, &kat2877, + &kat2878, &kat2879, &kat2880, &kat2881, &kat2882, &kat2883, &kat2884, + &kat2885, &kat2886, &kat2887, &kat2888, &kat2889, &kat2890, &kat2891, + &kat2892, &kat2893, &kat2894, &kat2895, &kat2896, &kat2897, &kat2898, + &kat2899, &kat2900, &kat2901, &kat2902, &kat2903, &kat2904, &kat2905, + &kat2906, &kat2907, &kat2908, &kat2909, &kat2910, &kat2911, &kat2912, + &kat2913, &kat2914, &kat2915, &kat2916, &kat2917, &kat2918, &kat2919, + &kat2920, &kat2921, &kat2922, &kat2923, &kat2924, &kat2925, &kat2926, + &kat2927, &kat2928, &kat2929, &kat2930, &kat2931, &kat2932, &kat2933, + &kat2934, &kat2935, &kat2936, &kat2937, &kat2938, &kat2939, &kat2940, + &kat2941, &kat2942, &kat2943, &kat2944, &kat2945, &kat2946, &kat2947, + &kat2948, &kat2949, &kat2950, &kat2951, &kat2952, &kat2953, &kat2954, + &kat2955, &kat2956, &kat2957, &kat2958, &kat2959, &kat2960, &kat2961, + &kat2962, &kat2963, &kat2964, &kat2965, &kat2966, &kat2967, &kat2968, + &kat2969, &kat2970, &kat2971, &kat2972, &kat2973, &kat2974, &kat2975, + &kat2976, &kat2977, &kat2978, &kat2979, &kat2980, &kat2981, &kat2982, + &kat2983, &kat2984, &kat2985, &kat2986, &kat2987, &kat2988, &kat2989, + &kat2990, &kat2991, &kat2992, &kat2993, &kat2994, &kat2995, &kat2996, + &kat2997, &kat2998, &kat2999, &kat3000, &kat3001, &kat3002, &kat3003, + &kat3004, &kat3005, &kat3006, &kat3007, &kat3008, &kat3009, &kat3010, + &kat3011, &kat3012, &kat3013, &kat3014, &kat3015, &kat3016, &kat3017, + &kat3018, &kat3019, &kat3020, &kat3021, &kat3022, &kat3023, &kat3024, + &kat3025, &kat3026, &kat3027, &kat3028, &kat3029, &kat3030, &kat3031, + &kat3032, &kat3033, &kat3034, &kat3035, &kat3036, &kat3037, &kat3038, + &kat3039, &kat3040, &kat3041, &kat3042, &kat3043, &kat3044, &kat3045, + &kat3046, &kat3047, &kat3048, &kat3049, &kat3050, &kat3051, &kat3052, + &kat3053, &kat3054, &kat3055, &kat3056, &kat3057, &kat3058, &kat3059, + &kat3060, &kat3061, &kat3062, &kat3063, &kat3064, &kat3065, &kat3066, + &kat3067, &kat3068, &kat3069, &kat3070, &kat3071, &kat3072, &kat3073, + &kat3074, &kat3075, &kat3076, &kat3077, &kat3078, &kat3079, &kat3080, + &kat3081, &kat3082, &kat3083, &kat3084, &kat3085, &kat3086, &kat3087, + &kat3088, &kat3089, &kat3090, &kat3091, &kat3092, &kat3093, &kat3094, + &kat3095, &kat3096, &kat3097, &kat3098, &kat3099, &kat3100, &kat3101, + &kat3102, &kat3103, &kat3104, &kat3105, &kat3106, &kat3107, &kat3108, + &kat3109, &kat3110, &kat3111, &kat3112, &kat3113, &kat3114, &kat3115, + &kat3116, &kat3117, &kat3118, &kat3119, &kat3120, &kat3121, &kat3122, + &kat3123, &kat3124, &kat3125, &kat3126, &kat3127, &kat3128, &kat3129, + &kat3130, &kat3131, &kat3132, &kat3133, &kat3134, &kat3135, &kat3136, + &kat3137, &kat3138, &kat3139, &kat3140, &kat3141, &kat3142, &kat3143, + &kat3144, &kat3145, &kat3146, &kat3147, &kat3148, &kat3149, &kat3150, + &kat3151, &kat3152, &kat3153, &kat3154, &kat3155, &kat3156, &kat3157, + &kat3158, &kat3159, &kat3160, &kat3161, &kat3162, &kat3163, &kat3164, + &kat3165, &kat3166, &kat3167, &kat3168, &kat3169, &kat3170, &kat3171, + &kat3172, &kat3173, &kat3174, &kat3175, &kat3176, &kat3177, &kat3178, + &kat3179, &kat3180, &kat3181, &kat3182, &kat3183, &kat3184, &kat3185, + &kat3186, &kat3187, &kat3188, &kat3189, &kat3190, &kat3191, &kat3192, + &kat3193, &kat3194, &kat3195, &kat3196, &kat3197, &kat3198, &kat3199, + &kat3200, &kat3201, &kat3202, &kat3203, &kat3204, &kat3205, &kat3206, + &kat3207, &kat3208, &kat3209, &kat3210, &kat3211, &kat3212, &kat3213, + &kat3214, &kat3215, &kat3216, &kat3217, &kat3218, &kat3219, &kat3220, + &kat3221, &kat3222, &kat3223, &kat3224, &kat3225, &kat3226, &kat3227, + &kat3228, &kat3229, &kat3230, &kat3231, &kat3232, &kat3233, &kat3234, + &kat3235, &kat3236, &kat3237, &kat3238, &kat3239, &kat3240, &kat3241, + &kat3242, &kat3243, &kat3244, &kat3245, &kat3246, &kat3247, &kat3248, + &kat3249, &kat3250, &kat3251, &kat3252, &kat3253, &kat3254, &kat3255, + &kat3256, &kat3257, &kat3258, &kat3259, &kat3260, &kat3261, &kat3262, + &kat3263, &kat3264, &kat3265, &kat3266, &kat3267, &kat3268, &kat3269, + &kat3270, &kat3271, &kat3272, &kat3273, &kat3274, &kat3275, &kat3276, + &kat3277, &kat3278, &kat3279, &kat3280, &kat3281, &kat3282, &kat3283, + &kat3284, &kat3285, &kat3286, &kat3287, &kat3288, &kat3289, &kat3290, + &kat3291, &kat3292, &kat3293, &kat3294, &kat3295, &kat3296, &kat3297, + &kat3298, &kat3299, &kat3300, &kat3301, &kat3302, &kat3303, &kat3304, + &kat3305, &kat3306, &kat3307, &kat3308, &kat3309, &kat3310, &kat3311, + &kat3312, &kat3313, &kat3314, &kat3315, &kat3316, &kat3317, &kat3318, + &kat3319, &kat3320, &kat3321, &kat3322, &kat3323, &kat3324, &kat3325, + &kat3326, &kat3327, &kat3328, &kat3329, &kat3330, &kat3331, &kat3332, + &kat3333, &kat3334, &kat3335, &kat3336, &kat3337, &kat3338, &kat3339, + &kat3340, &kat3341, &kat3342, &kat3343, &kat3344, &kat3345, &kat3346, + &kat3347, &kat3348, &kat3349, &kat3350, &kat3351, &kat3352, &kat3353, + &kat3354, &kat3355, &kat3356, &kat3357, &kat3358, &kat3359, &kat3360, + &kat3361, &kat3362, &kat3363, &kat3364, &kat3365, &kat3366, &kat3367, + &kat3368, &kat3369, &kat3370, &kat3371, &kat3372, &kat3373, &kat3374, + &kat3375, &kat3376, &kat3377, &kat3378, &kat3379, &kat3380, &kat3381, + &kat3382, &kat3383, &kat3384, &kat3385, &kat3386, &kat3387, &kat3388, + &kat3389, &kat3390, &kat3391, &kat3392, &kat3393, &kat3394, &kat3395, + &kat3396, &kat3397, &kat3398, &kat3399, &kat3400, &kat3401, &kat3402, + &kat3403, &kat3404, &kat3405, &kat3406, &kat3407, &kat3408, &kat3409, + &kat3410, &kat3411, &kat3412, &kat3413, &kat3414, &kat3415, &kat3416, + &kat3417, &kat3418, &kat3419, &kat3420, &kat3421, &kat3422, &kat3423, + &kat3424, &kat3425, &kat3426, &kat3427, &kat3428, &kat3429, &kat3430, + &kat3431, &kat3432, &kat3433, &kat3434, &kat3435, &kat3436, &kat3437, + &kat3438, &kat3439, &kat3440, &kat3441, &kat3442, &kat3443, &kat3444, + &kat3445, &kat3446, &kat3447, &kat3448, &kat3449, &kat3450, &kat3451, + &kat3452, &kat3453, &kat3454, &kat3455, &kat3456, &kat3457, &kat3458, + &kat3459, &kat3460, &kat3461, &kat3462, &kat3463, &kat3464, &kat3465, + &kat3466, &kat3467, &kat3468, &kat3469, &kat3470, &kat3471, &kat3472, + &kat3473, &kat3474, &kat3475, &kat3476, &kat3477, &kat3478, &kat3479, + &kat3480, &kat3481, &kat3482, &kat3483, &kat3484, &kat3485, &kat3486, + &kat3487, &kat3488, &kat3489, &kat3490, &kat3491, &kat3492, &kat3493, + &kat3494, &kat3495, &kat3496, &kat3497, &kat3498, &kat3499, &kat3500, + &kat3501, &kat3502, &kat3503, &kat3504, &kat3505, &kat3506, &kat3507, + &kat3508, &kat3509, &kat3510, &kat3511, &kat3512, &kat3513, &kat3514, + &kat3515, &kat3516, &kat3517, &kat3518, &kat3519, &kat3520, &kat3521, + &kat3522, &kat3523, &kat3524, &kat3525, &kat3526, &kat3527, &kat3528, + &kat3529, &kat3530, &kat3531, &kat3532, &kat3533, &kat3534, &kat3535, + &kat3536, &kat3537, &kat3538, &kat3539, &kat3540, &kat3541, &kat3542, + &kat3543, &kat3544, &kat3545, &kat3546, &kat3547, &kat3548, &kat3549, + &kat3550, &kat3551, &kat3552, &kat3553, &kat3554, &kat3555, &kat3556, + &kat3557, &kat3558, &kat3559, &kat3560, &kat3561, &kat3562, &kat3563, + &kat3564, &kat3565, &kat3566, &kat3567, &kat3568, &kat3569, &kat3570, + &kat3571, &kat3572, &kat3573, &kat3574, &kat3575, &kat3576, &kat3577, + &kat3578, &kat3579, &kat3580, &kat3581, &kat3582, &kat3583, &kat3584, + &kat3585, &kat3586, &kat3587, &kat3588, &kat3589, &kat3590, &kat3591, + &kat3592, &kat3593, &kat3594, &kat3595, &kat3596, &kat3597, &kat3598, + &kat3599, &kat3600, &kat3601, &kat3602, &kat3603, &kat3604, &kat3605, + &kat3606, &kat3607, &kat3608, &kat3609, &kat3610, &kat3611, &kat3612, + &kat3613, &kat3614, &kat3615, &kat3616, &kat3617, &kat3618, &kat3619, + &kat3620, &kat3621, &kat3622, &kat3623, &kat3624, &kat3625, &kat3626, + &kat3627, &kat3628, &kat3629, &kat3630, &kat3631, &kat3632, &kat3633, + &kat3634, &kat3635, &kat3636, &kat3637, &kat3638, &kat3639, &kat3640, + &kat3641, &kat3642, &kat3643, &kat3644, &kat3645, &kat3646, &kat3647, + &kat3648, &kat3649, &kat3650, &kat3651, &kat3652, &kat3653, &kat3654, + &kat3655, &kat3656, &kat3657, &kat3658, &kat3659, &kat3660, &kat3661, + &kat3662, &kat3663, &kat3664, &kat3665, &kat3666, &kat3667, &kat3668, + &kat3669, &kat3670, &kat3671, &kat3672, &kat3673, &kat3674, &kat3675, + &kat3676, &kat3677, &kat3678, &kat3679, &kat3680, &kat3681, &kat3682, + &kat3683, &kat3684, &kat3685, &kat3686, &kat3687, &kat3688, &kat3689, + &kat3690, &kat3691, &kat3692, &kat3693, &kat3694, &kat3695, &kat3696, + &kat3697, &kat3698, &kat3699, &kat3700, &kat3701, &kat3702, &kat3703, + &kat3704, &kat3705, &kat3706, &kat3707, &kat3708, &kat3709, &kat3710, + &kat3711, &kat3712, &kat3713, &kat3714, &kat3715, &kat3716, &kat3717, + &kat3718, &kat3719, &kat3720, &kat3721, &kat3722, &kat3723, &kat3724, + &kat3725, &kat3726, &kat3727, &kat3728, &kat3729, &kat3730, &kat3731, + &kat3732, &kat3733, &kat3734, &kat3735, &kat3736, &kat3737, &kat3738, + &kat3739, &kat3740, &kat3741, &kat3742, &kat3743, &kat3744, &kat3745, + &kat3746, &kat3747, &kat3748, &kat3749, &kat3750, &kat3751, &kat3752, + &kat3753, &kat3754, &kat3755, &kat3756, &kat3757, &kat3758, &kat3759, + &kat3760, &kat3761, &kat3762, &kat3763, &kat3764, &kat3765, &kat3766, + &kat3767, &kat3768, &kat3769, &kat3770, &kat3771, &kat3772, &kat3773, + &kat3774, &kat3775, &kat3776, &kat3777, &kat3778, &kat3779, &kat3780, + &kat3781, &kat3782, &kat3783, &kat3784, &kat3785, &kat3786, &kat3787, + &kat3788, &kat3789, &kat3790, &kat3791, &kat3792, &kat3793, &kat3794, + &kat3795, &kat3796, &kat3797, &kat3798, &kat3799, &kat3800, &kat3801, + &kat3802, &kat3803, &kat3804, &kat3805, &kat3806, &kat3807, &kat3808, + &kat3809, &kat3810, &kat3811, &kat3812, &kat3813, &kat3814, &kat3815, + &kat3816, &kat3817, &kat3818, &kat3819, &kat3820, &kat3821, &kat3822, + &kat3823, &kat3824, &kat3825, &kat3826, &kat3827, &kat3828, &kat3829, + &kat3830, &kat3831, &kat3832, &kat3833, &kat3834, &kat3835, &kat3836, + &kat3837, &kat3838, &kat3839, &kat3840, &kat3841, &kat3842, &kat3843, + &kat3844, &kat3845, &kat3846, &kat3847, &kat3848, &kat3849, &kat3850, + &kat3851, &kat3852, &kat3853, &kat3854, &kat3855, &kat3856, &kat3857, + &kat3858, &kat3859, &kat3860, &kat3861, &kat3862, &kat3863, &kat3864, + &kat3865, &kat3866, &kat3867, &kat3868, &kat3869, &kat3870, &kat3871, + &kat3872, &kat3873, &kat3874, &kat3875, &kat3876, &kat3877, &kat3878, + &kat3879, &kat3880, &kat3881, &kat3882, &kat3883, &kat3884, &kat3885, + &kat3886, &kat3887, &kat3888, &kat3889, &kat3890, &kat3891, &kat3892, + &kat3893, &kat3894, &kat3895, &kat3896, &kat3897, &kat3898, &kat3899, + &kat3900, &kat3901, &kat3902, &kat3903, &kat3904, &kat3905, &kat3906, + &kat3907, &kat3908, &kat3909, &kat3910, &kat3911, &kat3912, &kat3913, + &kat3914, &kat3915, &kat3916, &kat3917, &kat3918, &kat3919, &kat3920, + &kat3921, &kat3922, &kat3923, &kat3924, &kat3925, &kat3926, &kat3927, + &kat3928, &kat3929, &kat3930, &kat3931, &kat3932, &kat3933, &kat3934, + &kat3935, &kat3936, &kat3937, &kat3938, &kat3939, &kat3940, &kat3941, + &kat3942, &kat3943, &kat3944, &kat3945, &kat3946, &kat3947, &kat3948, + &kat3949, &kat3950, &kat3951, &kat3952, &kat3953, &kat3954, &kat3955, + &kat3956, &kat3957, &kat3958, &kat3959, &kat3960, &kat3961, &kat3962, + &kat3963, &kat3964, &kat3965, &kat3966, &kat3967, &kat3968, &kat3969, + &kat3970, &kat3971, &kat3972, &kat3973, &kat3974, &kat3975, &kat3976, + &kat3977, &kat3978, &kat3979, &kat3980, &kat3981, &kat3982, &kat3983, + &kat3984, &kat3985, &kat3986, &kat3987, &kat3988, &kat3989, &kat3990, + &kat3991, &kat3992, &kat3993, &kat3994, &kat3995, &kat3996, &kat3997, + &kat3998, &kat3999, &kat4000, &kat4001, &kat4002, &kat4003, &kat4004, + &kat4005, &kat4006, &kat4007, &kat4008, &kat4009, &kat4010, &kat4011, + &kat4012, &kat4013, &kat4014, &kat4015, &kat4016, &kat4017, &kat4018, + &kat4019, &kat4020, &kat4021, &kat4022, &kat4023, &kat4024, &kat4025, + &kat4026, &kat4027, &kat4028, &kat4029, &kat4030, &kat4031, &kat4032, + &kat4033, &kat4034, &kat4035, &kat4036, &kat4037, &kat4038, &kat4039, + &kat4040, &kat4041, &kat4042, &kat4043, &kat4044, &kat4045, &kat4046, + &kat4047, &kat4048, &kat4049, &kat4050, &kat4051, &kat4052, &kat4053, + &kat4054, &kat4055, &kat4056, &kat4057, &kat4058, &kat4059, &kat4060, + &kat4061, &kat4062, &kat4063, &kat4064, &kat4065, &kat4066, &kat4067, + &kat4068, &kat4069, &kat4070, &kat4071, &kat4072, &kat4073, &kat4074, + &kat4075, &kat4076, &kat4077, &kat4078, &kat4079, &kat4080, &kat4081, + &kat4082, &kat4083, &kat4084, &kat4085, &kat4086, &kat4087, &kat4088, + &kat4089, &kat4090, &kat4091, &kat4092, &kat4093, &kat4094, &kat4095, + &kat4096, &kat4097, &kat4098, &kat4099, &kat4100, &kat4101, &kat4102, + &kat4103, &kat4104, &kat4105, &kat4106, &kat4107, &kat4108, &kat4109, + &kat4110, &kat4111, &kat4112, &kat4113, &kat4114, &kat4115, &kat4116, + &kat4117, &kat4118, &kat4119, &kat4120, &kat4121, &kat4122, &kat4123, + &kat4124, &kat4125, &kat4126, &kat4127, &kat4128, &kat4129, &kat4130, + &kat4131, &kat4132, &kat4133, &kat4134, &kat4135, &kat4136, &kat4137, + &kat4138, &kat4139, &kat4140, &kat4141, &kat4142, &kat4143, &kat4144, + &kat4145, &kat4146, &kat4147, &kat4148, &kat4149, &kat4150, &kat4151, + &kat4152, &kat4153, &kat4154, &kat4155, &kat4156, &kat4157, &kat4158, + &kat4159, &kat4160, &kat4161, &kat4162, &kat4163, &kat4164, &kat4165, + &kat4166, &kat4167, &kat4168, &kat4169, &kat4170, &kat4171, &kat4172, + &kat4173, &kat4174, &kat4175, &kat4176, &kat4177, &kat4178, &kat4179, + &kat4180, &kat4181, &kat4182, &kat4183, &kat4184, &kat4185, &kat4186, + &kat4187, &kat4188, &kat4189, &kat4190, &kat4191, &kat4192, &kat4193, + &kat4194, &kat4195, &kat4196, &kat4197, &kat4198, &kat4199, &kat4200, + &kat4201, &kat4202, &kat4203, &kat4204, &kat4205, &kat4206, &kat4207, + &kat4208, &kat4209, &kat4210, &kat4211, &kat4212, &kat4213, &kat4214, + &kat4215, &kat4216, &kat4217, &kat4218, &kat4219, &kat4220, &kat4221, + &kat4222, &kat4223, &kat4224, &kat4225, &kat4226, &kat4227, &kat4228, + &kat4229, &kat4230, &kat4231, &kat4232, &kat4233, &kat4234, &kat4235, + &kat4236, &kat4237, &kat4238, &kat4239, &kat4240, &kat4241, &kat4242, + &kat4243, &kat4244, &kat4245, &kat4246, &kat4247, &kat4248, &kat4249, + &kat4250, &kat4251, &kat4252, &kat4253, &kat4254, &kat4255, &kat4256, + &kat4257, &kat4258, &kat4259, &kat4260, &kat4261, &kat4262, &kat4263, + &kat4264, &kat4265, &kat4266, &kat4267, &kat4268, &kat4269, &kat4270, + &kat4271, &kat4272, &kat4273, &kat4274, &kat4275, &kat4276, &kat4277, + &kat4278, &kat4279, &kat4280, &kat4281, &kat4282, &kat4283, &kat4284, + &kat4285, &kat4286, &kat4287, &kat4288, &kat4289, &kat4290, &kat4291, + &kat4292, &kat4293, &kat4294, &kat4295, &kat4296, &kat4297, &kat4298, + &kat4299, &kat4300, &kat4301, &kat4302, &kat4303, &kat4304, &kat4305, + &kat4306, &kat4307, &kat4308, &kat4309, &kat4310, &kat4311, &kat4312, + &kat4313, &kat4314, &kat4315, &kat4316, &kat4317, &kat4318, &kat4319, + &kat4320, +}; + +const size_t drbg_test_nelem = OSSL_NELEM(drbg_test); diff --git a/test/drbg_cavs_data.h b/test/drbg_cavs_data.h new file mode 100644 index 00000000..d6733756 --- /dev/null +++ b/test/drbg_cavs_data.h @@ -0,0 +1,82 @@ +/* + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +/* + * Known answer tests (KAT) for NIST SP800-90A DRBGs. + */ + +#include + +#ifndef DRBG_CAVS_DATA_H +# define DRBG_CAVS_DATA_H + +enum drbg_kat_type { + NO_RESEED, + PR_FALSE, + PR_TRUE +}; + +enum drbg_df { + USE_DF, + NO_DF, + NA +}; + +struct drbg_kat_no_reseed { + size_t count; + const unsigned char *entropyin; + const unsigned char *nonce; + const unsigned char *persstr; + const unsigned char *addin1; + const unsigned char *addin2; + const unsigned char *retbytes; +}; + +struct drbg_kat_pr_false { + size_t count; + const unsigned char *entropyin; + const unsigned char *nonce; + const unsigned char *persstr; + const unsigned char *entropyinreseed; + const unsigned char *addinreseed; + const unsigned char *addin1; + const unsigned char *addin2; + const unsigned char *retbytes; +}; + +struct drbg_kat_pr_true { + size_t count; + const unsigned char *entropyin; + const unsigned char *nonce; + const unsigned char *persstr; + const unsigned char *entropyinpr1; + const unsigned char *addin1; + const unsigned char *entropyinpr2; + const unsigned char *addin2; + const unsigned char *retbytes; +}; + +struct drbg_kat { + enum drbg_kat_type type; + enum drbg_df df; + int nid; + + size_t entropyinlen; + size_t noncelen; + size_t persstrlen; + size_t addinlen; + size_t retbyteslen; + + const void *t; +}; + +extern const struct drbg_kat *drbg_test[]; +extern const size_t drbg_test_nelem; + +#endif diff --git a/test/drbg_cavs_test.c b/test/drbg_cavs_test.c new file mode 100644 index 00000000..413f5bf6 --- /dev/null +++ b/test/drbg_cavs_test.c @@ -0,0 +1,287 @@ +/* + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include "internal/nelem.h" +#include +#include +#include +#include +#include +#include +#include "../crypto/rand/rand_lcl.h" + +#include "testutil.h" +#include "drbg_cavs_data.h" + +static int app_data_index; + +typedef struct test_ctx_st { + const unsigned char *entropy; + size_t entropylen; + int entropycnt; + const unsigned char *nonce; + size_t noncelen; + int noncecnt; +} TEST_CTX; + +static size_t kat_entropy(RAND_DRBG *drbg, unsigned char **pout, + int entropy, size_t min_len, size_t max_len, + int prediction_resistance) +{ + TEST_CTX *t = (TEST_CTX *)RAND_DRBG_get_ex_data(drbg, app_data_index); + + t->entropycnt++; + *pout = (unsigned char *)t->entropy; + return t->entropylen; +} + +static size_t kat_nonce(RAND_DRBG *drbg, unsigned char **pout, + int entropy, size_t min_len, size_t max_len) +{ + TEST_CTX *t = (TEST_CTX *)RAND_DRBG_get_ex_data(drbg, app_data_index); + + t->noncecnt++; + *pout = (unsigned char *)t->nonce; + return t->noncelen; +} + +/* + * Do a single NO_RESEED KAT: + * + * Instantiate + * Generate Random Bits (pr=false) + * Generate Random Bits (pr=false) + * Uninstantiate + * + * Return 0 on failure. + */ +static int single_kat_no_reseed(const struct drbg_kat *td) +{ + struct drbg_kat_no_reseed *data = (struct drbg_kat_no_reseed *)td->t; + RAND_DRBG *drbg = NULL; + unsigned char *buff = NULL; + unsigned int flags = 0; + int failures = 0; + TEST_CTX t; + + if (td->df != USE_DF) + flags |= RAND_DRBG_FLAG_CTR_NO_DF; + + if (!TEST_ptr(drbg = RAND_DRBG_new(td->nid, flags, NULL))) + return 0; + + if (!TEST_true(RAND_DRBG_set_callbacks(drbg, kat_entropy, NULL, + kat_nonce, NULL))) { + failures++; + goto err; + } + memset(&t, 0, sizeof(t)); + t.entropy = data->entropyin; + t.entropylen = td->entropyinlen; + t.nonce = data->nonce; + t.noncelen = td->noncelen; + RAND_DRBG_set_ex_data(drbg, app_data_index, &t); + + buff = OPENSSL_malloc(td->retbyteslen); + if (buff == NULL) + goto err; + + if (!TEST_true(RAND_DRBG_instantiate(drbg, data->persstr, td->persstrlen)) + || !TEST_true(RAND_DRBG_generate(drbg, buff, td->retbyteslen, 0, + data->addin1, td->addinlen)) + || !TEST_true(RAND_DRBG_generate(drbg, buff, td->retbyteslen, 0, + data->addin2, td->addinlen)) + || !TEST_true(RAND_DRBG_uninstantiate(drbg)) + || !TEST_mem_eq(data->retbytes, td->retbyteslen, buff, + td->retbyteslen)) + failures++; + +err: + if (buff != NULL) + OPENSSL_free(buff); + if (drbg != NULL) { + RAND_DRBG_uninstantiate(drbg); + RAND_DRBG_free(drbg); + } + return failures == 0; +} + +/*- + * Do a single PR_FALSE KAT: + * + * Instantiate + * Reseed + * Generate Random Bits (pr=false) + * Generate Random Bits (pr=false) + * Uninstantiate + * + * Return 0 on failure. + */ +static int single_kat_pr_false(const struct drbg_kat *td) +{ + struct drbg_kat_pr_false *data = (struct drbg_kat_pr_false *)td->t; + RAND_DRBG *drbg = NULL; + unsigned char *buff = NULL; + unsigned int flags = 0; + int failures = 0; + TEST_CTX t; + + if (td->df != USE_DF) + flags |= RAND_DRBG_FLAG_CTR_NO_DF; + + if (!TEST_ptr(drbg = RAND_DRBG_new(td->nid, flags, NULL))) + return 0; + + if (!TEST_true(RAND_DRBG_set_callbacks(drbg, kat_entropy, NULL, + kat_nonce, NULL))) { + failures++; + goto err; + } + memset(&t, 0, sizeof(t)); + t.entropy = data->entropyin; + t.entropylen = td->entropyinlen; + t.nonce = data->nonce; + t.noncelen = td->noncelen; + RAND_DRBG_set_ex_data(drbg, app_data_index, &t); + + buff = OPENSSL_malloc(td->retbyteslen); + if (buff == NULL) + goto err; + + if (!TEST_true(RAND_DRBG_instantiate(drbg, data->persstr, td->persstrlen))) + failures++; + + t.entropy = data->entropyinreseed; + t.entropylen = td->entropyinlen; + + if (!TEST_true(RAND_DRBG_reseed(drbg, data->addinreseed, td->addinlen, 0)) + || !TEST_true(RAND_DRBG_generate(drbg, buff, td->retbyteslen, 0, + data->addin1, td->addinlen)) + || !TEST_true(RAND_DRBG_generate(drbg, buff, td->retbyteslen, 0, + data->addin2, td->addinlen)) + || !TEST_true(RAND_DRBG_uninstantiate(drbg)) + || !TEST_mem_eq(data->retbytes, td->retbyteslen, buff, + td->retbyteslen)) + failures++; + +err: + if (buff != NULL) + OPENSSL_free(buff); + if (drbg != NULL) { + RAND_DRBG_uninstantiate(drbg); + RAND_DRBG_free(drbg); + } + return failures == 0; +} + +/*- + * Do a single PR_TRUE KAT: + * + * Instantiate + * Generate Random Bits (pr=true) + * Generate Random Bits (pr=true) + * Uninstantiate + * + * Return 0 on failure. + */ +static int single_kat_pr_true(const struct drbg_kat *td) +{ + struct drbg_kat_pr_true *data = (struct drbg_kat_pr_true *)td->t; + RAND_DRBG *drbg = NULL; + unsigned char *buff = NULL; + unsigned int flags = 0; + int failures = 0; + TEST_CTX t; + + if (td->df != USE_DF) + flags |= RAND_DRBG_FLAG_CTR_NO_DF; + + if (!TEST_ptr(drbg = RAND_DRBG_new(td->nid, flags, NULL))) + return 0; + + if (!TEST_true(RAND_DRBG_set_callbacks(drbg, kat_entropy, NULL, + kat_nonce, NULL))) { + failures++; + goto err; + } + memset(&t, 0, sizeof(t)); + t.nonce = data->nonce; + t.noncelen = td->noncelen; + t.entropy = data->entropyin; + t.entropylen = td->entropyinlen; + RAND_DRBG_set_ex_data(drbg, app_data_index, &t); + + buff = OPENSSL_malloc(td->retbyteslen); + if (buff == NULL) + goto err; + + if (!TEST_true(RAND_DRBG_instantiate(drbg, data->persstr, td->persstrlen))) + failures++; + + t.entropy = data->entropyinpr1; + t.entropylen = td->entropyinlen; + + if (!TEST_true(RAND_DRBG_generate(drbg, buff, td->retbyteslen, 1, + data->addin1, td->addinlen))) + failures++; + + t.entropy = data->entropyinpr2; + t.entropylen = td->entropyinlen; + + if (!TEST_true(RAND_DRBG_generate(drbg, buff, td->retbyteslen, 1, + data->addin2, td->addinlen)) + || !TEST_true(RAND_DRBG_uninstantiate(drbg)) + || !TEST_mem_eq(data->retbytes, td->retbyteslen, buff, + td->retbyteslen)) + failures++; + +err: + if (buff != NULL) + OPENSSL_free(buff); + if (drbg != NULL) { + RAND_DRBG_uninstantiate(drbg); + RAND_DRBG_free(drbg); + } + return failures == 0; +} + +static int test_cavs_kats(int i) +{ + const struct drbg_kat *td = drbg_test[i]; + int rv = 0; + + switch (td->type) { + case NO_RESEED: + if (!single_kat_no_reseed(td)) + goto err; + break; + case PR_FALSE: + if (!single_kat_pr_false(td)) + goto err; + break; + case PR_TRUE: + if (!single_kat_pr_true(td)) + goto err; + break; + default: /* cant happen */ + goto err; + } + rv = 1; +err: + return rv; +} + +int setup_tests(void) +{ + app_data_index = RAND_DRBG_get_ex_new_index(0L, NULL, NULL, NULL, NULL); + + ADD_ALL_TESTS(test_cavs_kats, drbg_test_nelem); + return 1; +} diff --git a/test/drbgtest.c b/test/drbgtest.c index c64628a7..c1887d65 100644 --- a/test/drbgtest.c +++ b/test/drbgtest.c @@ -16,6 +16,11 @@ #include #include #include "../crypto/rand/rand_lcl.h" +#include "../crypto/include/internal/rand_int.h" + +#if defined(_WIN32) +# include +#endif #include "testutil.h" #include "drbgtest.h" @@ -118,7 +123,8 @@ typedef struct test_ctx_st { } TEST_CTX; static size_t kat_entropy(RAND_DRBG *drbg, unsigned char **pout, - int entropy, size_t min_len, size_t max_len) + int entropy, size_t min_len, size_t max_len, + int prediction_resistance) { TEST_CTX *t = (TEST_CTX *)RAND_DRBG_get_ex_data(drbg, app_data_index); @@ -182,7 +188,7 @@ static int single_kat(DRBG_SELFTEST_DATA *td) /* Reseed DRBG with test entropy and additional input */ t.entropy = td->entropyreseed; t.entropylen = td->entropyreseedlen; - if (!TEST_true(RAND_DRBG_reseed(drbg, td->adinreseed, td->adinreseedlen) + if (!TEST_true(RAND_DRBG_reseed(drbg, td->adinreseed, td->adinreseedlen, 0) || !TEST_true(RAND_DRBG_generate(drbg, buff, td->kat2len, 0, td->adin2, td->adin2len)) || !TEST_mem_eq(td->kat2, td->kat2len, buff, td->kat2len))) @@ -415,12 +421,12 @@ static int error_check(DRBG_SELFTEST_DATA *td) /* Test explicit reseed with too large additional input */ if (!init(drbg, td, &t) - || RAND_DRBG_reseed(drbg, td->adin, drbg->max_adinlen + 1) > 0) + || RAND_DRBG_reseed(drbg, td->adin, drbg->max_adinlen + 1, 0) > 0) goto err; /* Test explicit reseed with entropy source failure */ t.entropylen = 0; - if (!TEST_int_le(RAND_DRBG_reseed(drbg, td->adin, td->adinlen), 0) + if (!TEST_int_le(RAND_DRBG_reseed(drbg, td->adin, td->adinlen, 0), 0) || !uninstantiate(drbg)) goto err; @@ -428,7 +434,7 @@ static int error_check(DRBG_SELFTEST_DATA *td) if (!init(drbg, td, &t)) goto err; t.entropylen = drbg->max_entropylen + 1; - if (!TEST_int_le(RAND_DRBG_reseed(drbg, td->adin, td->adinlen), 0) + if (!TEST_int_le(RAND_DRBG_reseed(drbg, td->adin, td->adinlen, 0), 0) || !uninstantiate(drbg)) goto err; @@ -436,7 +442,7 @@ static int error_check(DRBG_SELFTEST_DATA *td) if (!init(drbg, td, &t)) goto err; t.entropylen = drbg->min_entropylen - 1; - if (!TEST_int_le(RAND_DRBG_reseed(drbg, td->adin, td->adinlen), 0) + if (!TEST_int_le(RAND_DRBG_reseed(drbg, td->adin, td->adinlen, 0), 0) || !uninstantiate(drbg)) goto err; @@ -504,7 +510,8 @@ static HOOK_CTX *get_hook_ctx(RAND_DRBG *drbg) /* Intercepts and counts calls to the get_entropy() callback */ static size_t get_entropy_hook(RAND_DRBG *drbg, unsigned char **pout, - int entropy, size_t min_len, size_t max_len) + int entropy, size_t min_len, size_t max_len, + int prediction_resistance) { size_t ret; HOOK_CTX *ctx = get_hook_ctx(drbg); @@ -512,8 +519,8 @@ static size_t get_entropy_hook(RAND_DRBG *drbg, unsigned char **pout, if (ctx->fail != 0) return 0; - ret = ctx->get_entropy( - drbg, pout, entropy, min_len, max_len); + ret = ctx->get_entropy(drbg, pout, entropy, min_len, max_len, + prediction_resistance); if (ret != 0) ctx->reseed_count++; @@ -547,7 +554,7 @@ static void reset_hook_ctx(HOOK_CTX *ctx) } /* Resets all drbg hook contexts */ -static void reset_drbg_hook_ctx() +static void reset_drbg_hook_ctx(void) { reset_hook_ctx(&master_ctx); reset_hook_ctx(&public_ctx); @@ -685,13 +692,28 @@ static int test_rand_reseed(void) || !TEST_ptr_eq(private->parent, master)) return 0; + /* uninstantiate the three global DRBGs */ + RAND_DRBG_uninstantiate(private); + RAND_DRBG_uninstantiate(public); + RAND_DRBG_uninstantiate(master); + + /* Install hooks for the following tests */ hook_drbg(master, &master_ctx); hook_drbg(public, &public_ctx); hook_drbg(private, &private_ctx); + /* - * Test initial state of shared DRBs + * Test initial seeding of shared DRBGs + */ + if (!TEST_true(test_drbg_reseed(1, master, public, private, 1, 1, 1))) + goto error; + reset_drbg_hook_ctx(); + + + /* + * Test initial state of shared DRBGs */ if (!TEST_true(test_drbg_reseed(1, master, public, private, 0, 0, 0))) goto error; @@ -760,6 +782,159 @@ error: return rv; } +#if defined(OPENSSL_THREADS) +static int multi_thread_rand_bytes_succeeded = 1; +static int multi_thread_rand_priv_bytes_succeeded = 1; + +static void run_multi_thread_test(void) +{ + unsigned char buf[256]; + time_t start = time(NULL); + RAND_DRBG *public, *private; + + public = RAND_DRBG_get0_public(); + private = RAND_DRBG_get0_private(); + RAND_DRBG_set_reseed_time_interval(public, 1); + RAND_DRBG_set_reseed_time_interval(private, 1); + + do { + if (RAND_bytes(buf, sizeof(buf)) <= 0) + multi_thread_rand_bytes_succeeded = 0; + if (RAND_priv_bytes(buf, sizeof(buf)) <= 0) + multi_thread_rand_priv_bytes_succeeded = 0; + } + while(time(NULL) - start < 5); +} + +# if defined(OPENSSL_SYS_WINDOWS) + +typedef HANDLE thread_t; + +static DWORD WINAPI thread_run(LPVOID arg) +{ + run_multi_thread_test(); + return 0; +} + +static int run_thread(thread_t *t) +{ + *t = CreateThread(NULL, 0, thread_run, NULL, 0, NULL); + return *t != NULL; +} + +static int wait_for_thread(thread_t thread) +{ + return WaitForSingleObject(thread, INFINITE) == 0; +} + +# else + +typedef pthread_t thread_t; + +static void *thread_run(void *arg) +{ + run_multi_thread_test(); + return NULL; +} + +static int run_thread(thread_t *t) +{ + return pthread_create(t, NULL, thread_run, NULL) == 0; +} + +static int wait_for_thread(thread_t thread) +{ + return pthread_join(thread, NULL) == 0; +} + +# endif + +/* + * The main thread will also run the test, so we'll have THREADS+1 parallel + * tests running + */ +# define THREADS 3 + +static int test_multi_thread(void) +{ + thread_t t[THREADS]; + int i; + + for (i = 0; i < THREADS; i++) + run_thread(&t[i]); + run_multi_thread_test(); + for (i = 0; i < THREADS; i++) + wait_for_thread(t[i]); + + if (!TEST_true(multi_thread_rand_bytes_succeeded)) + return 0; + if (!TEST_true(multi_thread_rand_priv_bytes_succeeded)) + return 0; + + return 1; +} +#endif + +/* + * This function only returns the entropy already added with RAND_add(), + * and does not get entropy from the OS. + * + * Returns 0 on failure and the size of the buffer on success. + */ +static size_t get_pool_entropy(RAND_DRBG *drbg, + unsigned char **pout, + int entropy, size_t min_len, size_t max_len, + int prediction_resistance) +{ + if (drbg->pool == NULL) + return 0; + + if (drbg->pool->entropy < (size_t)entropy || drbg->pool->len < min_len + || drbg->pool->len > max_len) + return 0; + + *pout = drbg->pool->buffer; + return drbg->pool->len; +} + +/* + * Clean up the entropy that get_pool_entropy() returned. + */ +static void cleanup_pool_entropy(RAND_DRBG *drbg, unsigned char *out, size_t outlen) +{ + OPENSSL_secure_clear_free(drbg->pool->buffer, drbg->pool->max_len); + OPENSSL_free(drbg->pool); + drbg->pool = NULL; +} + +/* + * Test that instantiating works when OS entropy is not available and that + * RAND_add() is enough to reseed it. + */ +static int test_rand_add(void) +{ + RAND_DRBG *master = RAND_DRBG_get0_master(); + RAND_DRBG_get_entropy_fn old_get_entropy = master->get_entropy; + RAND_DRBG_cleanup_entropy_fn old_cleanup_entropy = master->cleanup_entropy; + int rv = 0; + unsigned char rand_add_buf[256]; + + master->get_entropy = get_pool_entropy; + master->cleanup_entropy = cleanup_pool_entropy; + master->reseed_counter++; + RAND_DRBG_uninstantiate(master); + memset(rand_add_buf, 0xCD, sizeof(rand_add_buf)); + RAND_add(rand_add_buf, sizeof(rand_add_buf), sizeof(rand_add_buf)); + if (!TEST_true(RAND_DRBG_instantiate(master, NULL, 0))) + goto error; + + rv = 1; + +error: + master->get_entropy = old_get_entropy; + master->cleanup_entropy = old_cleanup_entropy; + return rv; +} int setup_tests(void) { @@ -768,5 +943,9 @@ int setup_tests(void) ADD_ALL_TESTS(test_kats, OSSL_NELEM(drbg_test)); ADD_ALL_TESTS(test_error_checks, OSSL_NELEM(drbg_test)); ADD_TEST(test_rand_reseed); + ADD_TEST(test_rand_add); +#if defined(OPENSSL_THREADS) + ADD_TEST(test_multi_thread); +#endif return 1; } diff --git a/test/dtls_mtu_test.c b/test/dtls_mtu_test.c index dff65a78..8e385b07 100644 --- a/test/dtls_mtu_test.c +++ b/test/dtls_mtu_test.c @@ -189,7 +189,7 @@ static int run_mtu_tests(void) return ret; } -int setup_tests() +int setup_tests(void) { ADD_TEST(run_mtu_tests); return 1; diff --git a/test/dtlstest.c b/test/dtlstest.c index 7e511f7d..c41aac83 100644 --- a/test/dtlstest.c +++ b/test/dtlstest.c @@ -1,5 +1,5 @@ /* - * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -46,7 +46,7 @@ static unsigned int timer_cb(SSL *s, unsigned int timer_us) ++timer_cb_count; if (timer_us == 0) - return 1000000; + return 50000; else return 2 * timer_us; } @@ -61,8 +61,9 @@ static int test_dtls_unprocessed(int testidx) timer_cb_count = 0; if (!TEST_true(create_ssl_ctx_pair(DTLS_server_method(), - DTLS_client_method(), &sctx, - &cctx, cert, privkey))) + DTLS_client_method(), + DTLS1_VERSION, DTLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) return 0; if (!TEST_true(SSL_CTX_set_cipher_list(cctx, "AES128-SHA"))) @@ -113,6 +114,132 @@ static int test_dtls_unprocessed(int testidx) return testresult; } +#define CLI_TO_SRV_EPOCH_0_RECS 3 +#define CLI_TO_SRV_EPOCH_1_RECS 1 +#if !defined(OPENSSL_NO_EC) || !defined(OPENSSL_NO_DH) +# define SRV_TO_CLI_EPOCH_0_RECS 12 +#else +/* + * In this case we have no ServerKeyExchange message, because we don't have + * ECDHE or DHE. When it is present it gets fragmented into 3 records in this + * test. + */ +# define SRV_TO_CLI_EPOCH_0_RECS 9 +#endif +#define SRV_TO_CLI_EPOCH_1_RECS 1 +#define TOTAL_FULL_HAND_RECORDS \ + (CLI_TO_SRV_EPOCH_0_RECS + CLI_TO_SRV_EPOCH_1_RECS + \ + SRV_TO_CLI_EPOCH_0_RECS + SRV_TO_CLI_EPOCH_1_RECS) + +#define CLI_TO_SRV_RESUME_EPOCH_0_RECS 3 +#define CLI_TO_SRV_RESUME_EPOCH_1_RECS 1 +#define SRV_TO_CLI_RESUME_EPOCH_0_RECS 2 +#define SRV_TO_CLI_RESUME_EPOCH_1_RECS 1 +#define TOTAL_RESUME_HAND_RECORDS \ + (CLI_TO_SRV_RESUME_EPOCH_0_RECS + CLI_TO_SRV_RESUME_EPOCH_1_RECS + \ + SRV_TO_CLI_RESUME_EPOCH_0_RECS + SRV_TO_CLI_RESUME_EPOCH_1_RECS) + +#define TOTAL_RECORDS (TOTAL_FULL_HAND_RECORDS + TOTAL_RESUME_HAND_RECORDS) + +static int test_dtls_drop_records(int idx) +{ + SSL_CTX *sctx = NULL, *cctx = NULL; + SSL *serverssl = NULL, *clientssl = NULL; + BIO *c_to_s_fbio, *mempackbio; + int testresult = 0; + int epoch = 0; + SSL_SESSION *sess = NULL; + int cli_to_srv_epoch0, cli_to_srv_epoch1, srv_to_cli_epoch0; + + if (!TEST_true(create_ssl_ctx_pair(DTLS_server_method(), + DTLS_client_method(), + DTLS1_VERSION, DTLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) + return 0; + + if (idx >= TOTAL_FULL_HAND_RECORDS) { + /* We're going to do a resumption handshake. Get a session first. */ + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_ptr(sess = SSL_get1_session(clientssl))) + goto end; + + SSL_shutdown(clientssl); + SSL_shutdown(serverssl); + SSL_free(serverssl); + SSL_free(clientssl); + serverssl = clientssl = NULL; + + cli_to_srv_epoch0 = CLI_TO_SRV_RESUME_EPOCH_0_RECS; + cli_to_srv_epoch1 = CLI_TO_SRV_RESUME_EPOCH_1_RECS; + srv_to_cli_epoch0 = SRV_TO_CLI_RESUME_EPOCH_0_RECS; + idx -= TOTAL_FULL_HAND_RECORDS; + } else { + cli_to_srv_epoch0 = CLI_TO_SRV_EPOCH_0_RECS; + cli_to_srv_epoch1 = CLI_TO_SRV_EPOCH_1_RECS; + srv_to_cli_epoch0 = SRV_TO_CLI_EPOCH_0_RECS; + } + + c_to_s_fbio = BIO_new(bio_f_tls_dump_filter()); + if (!TEST_ptr(c_to_s_fbio)) + goto end; + + /* BIO is freed by create_ssl_connection on error */ + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, c_to_s_fbio))) + goto end; + + if (sess != NULL) { + if (!TEST_true(SSL_set_session(clientssl, sess))) + goto end; + } + + DTLS_set_timer_cb(clientssl, timer_cb); + DTLS_set_timer_cb(serverssl, timer_cb); + + /* Work out which record to drop based on the test number */ + if (idx >= cli_to_srv_epoch0 + cli_to_srv_epoch1) { + mempackbio = SSL_get_wbio(serverssl); + idx -= cli_to_srv_epoch0 + cli_to_srv_epoch1; + if (idx >= srv_to_cli_epoch0) { + epoch = 1; + idx -= srv_to_cli_epoch0; + } + } else { + mempackbio = SSL_get_wbio(clientssl); + if (idx >= cli_to_srv_epoch0) { + epoch = 1; + idx -= cli_to_srv_epoch0; + } + mempackbio = BIO_next(mempackbio); + } + BIO_ctrl(mempackbio, MEMPACKET_CTRL_SET_DROP_EPOCH, epoch, NULL); + BIO_ctrl(mempackbio, MEMPACKET_CTRL_SET_DROP_REC, idx, NULL); + + if (!TEST_true(create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE))) + goto end; + + if (sess != NULL && !TEST_true(SSL_session_reused(clientssl))) + goto end; + + /* If the test did what we planned then it should have dropped a record */ + if (!TEST_int_eq((int)BIO_ctrl(mempackbio, MEMPACKET_CTRL_GET_DROP_REC, 0, + NULL), -1)) + goto end; + + testresult = 1; + end: + SSL_SESSION_free(sess); + SSL_free(serverssl); + SSL_free(clientssl); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + + return testresult; +} + int setup_tests(void) { if (!TEST_ptr(cert = test_get_argument(0)) @@ -120,6 +247,8 @@ int setup_tests(void) return 0; ADD_ALL_TESTS(test_dtls_unprocessed, NUM_TESTS); + ADD_ALL_TESTS(test_dtls_drop_records, TOTAL_RECORDS); + return 1; } diff --git a/test/dtlsv1listentest.c b/test/dtlsv1listentest.c index 807bb6d0..5331c3b3 100644 --- a/test/dtlsv1listentest.c +++ b/test/dtlsv1listentest.c @@ -348,7 +348,7 @@ static int dtls_listen_test(int i) } #endif -int setup_tests() +int setup_tests(void) { #ifndef OPENSSL_NO_SOCK ADD_ALL_TESTS(dtls_listen_test, (int)OSSL_NELEM(testpackets)); diff --git a/test/ecdsatest.c b/test/ecdsatest.c index 6a15b3af..c4bcb8ed 100644 --- a/test/ecdsatest.c +++ b/test/ecdsatest.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved * * Licensed under the OpenSSL license (the "License"). You may not use diff --git a/test/ectest.c b/test/ectest.c index e49920ce..1c31cce8 100644 --- a/test/ectest.c +++ b/test/ectest.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved * * Licensed under the OpenSSL license (the "License"). You may not use @@ -1377,6 +1377,15 @@ static int nistp_single_test(int idx) if (!TEST_int_eq(0, EC_POINT_cmp(NISTP, Q, Q_CHECK, ctx))) goto err; + /* regression test for felem_neg bug */ + if (!TEST_true(BN_set_word(m, 32)) + || !TEST_true(BN_set_word(n, 31)) + || !TEST_true(EC_POINT_copy(P, G)) + || !TEST_true(EC_POINT_invert(NISTP, P, ctx)) + || !TEST_true(EC_POINT_mul(NISTP, Q, m, P, n, ctx)) + || !TEST_int_eq(0, EC_POINT_cmp(NISTP, Q, G, ctx))) + goto err; + r = group_order_tests(NISTP); err: EC_GROUP_free(NISTP); diff --git a/test/evp_test.c b/test/evp_test.c index 265a4c3d..e2274d96 100644 --- a/test/evp_test.c +++ b/test/evp_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -911,31 +911,17 @@ static int mac_test_run(EVP_TEST *t) } #endif - if (!TEST_ptr(genctx = EVP_PKEY_CTX_new_id(expected->type, NULL))) { - t->err = "MAC_PKEY_CTX_ERROR"; + if (expected->type == EVP_PKEY_CMAC) + key = EVP_PKEY_new_CMAC_key(NULL, expected->key, expected->key_len, + EVP_get_cipherbyname(expected->alg)); + else + key = EVP_PKEY_new_raw_private_key(expected->type, NULL, expected->key, + expected->key_len); + if (key == NULL) { + t->err = "MAC_KEY_CREATE_ERROR"; goto err; } - if (EVP_PKEY_keygen_init(genctx) <= 0) { - t->err = "MAC_KEYGEN_INIT_ERROR"; - goto err; - } - if (expected->type == EVP_PKEY_CMAC - && EVP_PKEY_CTX_ctrl_str(genctx, "cipher", expected->alg) <= 0) { - t->err = "MAC_ALGORITHM_SET_ERROR"; - goto err; - } - - if (EVP_PKEY_CTX_set_mac_key(genctx, expected->key, - expected->key_len) <= 0) { - t->err = "MAC_KEY_SET_ERROR"; - goto err; - } - - if (EVP_PKEY_keygen(genctx, &key) <= 0) { - t->err = "MAC_KEY_GENERATE_ERROR"; - goto err; - } if (expected->type == EVP_PKEY_HMAC) { if (!TEST_ptr(md = EVP_get_digestbyname(expected->alg))) { t->err = "MAC_ALGORITHM_SET_ERROR"; @@ -2392,7 +2378,7 @@ static void free_key_list(KEY_LIST *lst) /* * Is the key type an unsupported algorithm? */ -static int key_unsupported() +static int key_unsupported(void) { long err = ERR_peek_error(); @@ -2427,6 +2413,23 @@ static char *take_value(PAIR *pp) return p; } +static int key_disabled(EVP_PKEY *pkey) +{ +#if defined(OPENSSL_NO_SM2) && !defined(OPENSSL_NO_EC) + int type = EVP_PKEY_base_id(pkey); + + if (type == EVP_PKEY_EC) { + EC_KEY *ec = EVP_PKEY_get0_EC_KEY(pkey); + int nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec)); + + if (nid == NID_sm2) + return 1; + } +#endif /* OPENSSL_NO_SM2 */ + + return 0; +} + /* * Read and parse one test. Return 0 if failure, 1 if okay. */ @@ -2453,20 +2456,69 @@ top: if (strcmp(pp->key, "PrivateKey") == 0) { pkey = PEM_read_bio_PrivateKey(t->s.key, NULL, 0, NULL); if (pkey == NULL && !key_unsupported()) { + EVP_PKEY_free(pkey); TEST_info("Can't read private key %s", pp->value); TEST_openssl_errors(); return 0; } klist = &private_keys; - } - else if (strcmp(pp->key, "PublicKey") == 0) { + } else if (strcmp(pp->key, "PublicKey") == 0) { pkey = PEM_read_bio_PUBKEY(t->s.key, NULL, 0, NULL); if (pkey == NULL && !key_unsupported()) { + EVP_PKEY_free(pkey); TEST_info("Can't read public key %s", pp->value); TEST_openssl_errors(); return 0; } klist = &public_keys; + } else if (strcmp(pp->key, "PrivateKeyRaw") == 0 + || strcmp(pp->key, "PublicKeyRaw") == 0 ) { + char *strnid = NULL, *keydata = NULL; + unsigned char *keybin; + size_t keylen; + int nid; + + if (strcmp(pp->key, "PrivateKeyRaw") == 0) + klist = &private_keys; + else + klist = &public_keys; + + strnid = strchr(pp->value, ':'); + if (strnid != NULL) { + *strnid++ = '\0'; + keydata = strchr(strnid, ':'); + if (keydata != NULL) + *keydata++ = '\0'; + } + if (keydata == NULL) { + TEST_info("Failed to parse %s value", pp->key); + return 0; + } + + nid = OBJ_txt2nid(strnid); + if (nid == NID_undef) { + TEST_info("Uncrecognised algorithm NID"); + return 0; + } + if (!parse_bin(keydata, &keybin, &keylen)) { + TEST_info("Failed to create binary key"); + return 0; + } + if (klist == &private_keys) + pkey = EVP_PKEY_new_raw_private_key(nid, NULL, keybin, keylen); + else + pkey = EVP_PKEY_new_raw_public_key(nid, NULL, keybin, keylen); + if (pkey == NULL && !key_unsupported()) { + TEST_info("Can't read %s data", pp->key); + OPENSSL_free(keybin); + TEST_openssl_errors(); + return 0; + } + OPENSSL_free(keybin); + } + if (pkey != NULL && key_disabled(pkey)) { + EVP_PKEY_free(pkey); + pkey = NULL; } /* If we have a key add to list */ diff --git a/test/exdatatest.c b/test/exdatatest.c index 0ded7db6..6e90752d 100644 --- a/test/exdatatest.c +++ b/test/exdatatest.c @@ -127,7 +127,7 @@ typedef struct myobj_st { int st; } MYOBJ; -static MYOBJ *MYOBJ_new() +static MYOBJ *MYOBJ_new(void) { static int count = 0; MYOBJ *obj = OPENSSL_malloc(sizeof(*obj)); diff --git a/test/fatalerrtest.c b/test/fatalerrtest.c index 23357351..66731e64 100644 --- a/test/fatalerrtest.c +++ b/test/fatalerrtest.c @@ -1,5 +1,5 @@ /* - * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -28,8 +28,9 @@ static int test_fatalerr(void) 0x17, 0x03, 0x03, 0x00, 0x05, 'D', 'u', 'm', 'm', 'y' }; - if (!TEST_true(create_ssl_ctx_pair(TLS_method(), TLS_method(), &sctx, &cctx, - cert, privkey))) + if (!TEST_true(create_ssl_ctx_pair(TLS_method(), TLS_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) goto err; /* @@ -38,6 +39,10 @@ static int test_fatalerr(void) */ if (!TEST_true(SSL_CTX_set_cipher_list(sctx, "AES128-SHA")) || !TEST_true(SSL_CTX_set_cipher_list(cctx, "AES256-SHA")) + || !TEST_true(SSL_CTX_set_ciphersuites(sctx, + "TLS_AES_128_GCM_SHA256")) + || !TEST_true(SSL_CTX_set_ciphersuites(cctx, + "TLS_AES_256_GCM_SHA384")) || !TEST_true(create_ssl_objects(sctx, cctx, &sssl, &cssl, NULL, NULL))) goto err; diff --git a/test/generate_buildtest.pl b/test/generate_buildtest.pl index 0a9d879e..7d553623 100644 --- a/test/generate_buildtest.pl +++ b/test/generate_buildtest.pl @@ -27,7 +27,7 @@ print <<"_____"; # include #endif -int main() +int main(void) { return 0; } diff --git a/test/handshake_helper.c b/test/handshake_helper.c index 9b781b03..3ebf64df 100644 --- a/test/handshake_helper.c +++ b/test/handshake_helper.c @@ -22,7 +22,7 @@ #include "handshake_helper.h" #include "testutil.h" -HANDSHAKE_RESULT *HANDSHAKE_RESULT_new() +HANDSHAKE_RESULT *HANDSHAKE_RESULT_new(void) { HANDSHAKE_RESULT *ret; @@ -469,12 +469,24 @@ static int generate_session_ticket_cb(SSL *s, void *arg) return SSL_SESSION_set1_ticket_appdata(ss, app_data, strlen(app_data)); } -static SSL_TICKET_RETURN decrypt_session_ticket_cb(SSL *s, SSL_SESSION *ss, - const unsigned char *keyname, - size_t keyname_len, - SSL_TICKET_RETURN retv, void *arg) +static int decrypt_session_ticket_cb(SSL *s, SSL_SESSION *ss, + const unsigned char *keyname, + size_t keyname_len, + SSL_TICKET_STATUS status, + void *arg) { - return retv; + switch (status) { + case SSL_TICKET_EMPTY: + case SSL_TICKET_NO_DECRYPT: + return SSL_TICKET_RETURN_IGNORE_RENEW; + case SSL_TICKET_SUCCESS: + return SSL_TICKET_RETURN_USE; + case SSL_TICKET_SUCCESS_RENEW: + return SSL_TICKET_RETURN_USE_RENEW; + default: + break; + } + return SSL_TICKET_RETURN_ABORT; } /* @@ -1391,7 +1403,7 @@ static HANDSHAKE_RESULT *do_handshake_internal( HANDSHAKE_EX_DATA server_ex_data, client_ex_data; CTX_DATA client_ctx_data, server_ctx_data, server2_ctx_data; HANDSHAKE_RESULT *ret = HANDSHAKE_RESULT_new(); - int client_turn = 1, client_turn_count = 0; + int client_turn = 1, client_turn_count = 0, client_wait_count = 0; connect_phase_t phase = HANDSHAKE; handshake_status_t status = HANDSHAKE_RETRY; const unsigned char* tick = NULL; @@ -1574,9 +1586,19 @@ static HANDSHAKE_RESULT *do_handshake_internal( ret->result = SSL_TEST_INTERNAL_ERROR; goto err; } - - /* Continue. */ - client_turn ^= 1; + if (client_turn && server.status == PEER_SUCCESS) { + /* + * The server may finish before the client because the + * client spends some turns processing NewSessionTickets. + */ + if (client_wait_count++ >= 2) { + ret->result = SSL_TEST_INTERNAL_ERROR; + goto err; + } + } else { + /* Continue. */ + client_turn ^= 1; + } } break; } diff --git a/test/handshake_helper.h b/test/handshake_helper.h index 8b112307..ab6446a4 100644 --- a/test/handshake_helper.h +++ b/test/handshake_helper.h @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/test/mdc2_internal_test.c b/test/mdc2_internal_test.c index 64aa2dc1..a5c4ebcb 100644 --- a/test/mdc2_internal_test.c +++ b/test/mdc2_internal_test.c @@ -64,7 +64,7 @@ static int test_mdc2(int idx) return 1; } -int setup_tests() +int setup_tests(void) { ADD_ALL_TESTS(test_mdc2, OSSL_NELEM(tests)); return 1; diff --git a/test/modes_internal_test.c b/test/modes_internal_test.c index 18c09776..e0f1adf6 100644 --- a/test/modes_internal_test.c +++ b/test/modes_internal_test.c @@ -99,7 +99,7 @@ static const SIZED_DATA aes_cts128_vectors[] = { CTS128_TEST_VECTOR(64), }; -static AES_KEY *cts128_encrypt_key_schedule() +static AES_KEY *cts128_encrypt_key_schedule(void) { static int init_key = 1; static AES_KEY ks; @@ -111,7 +111,7 @@ static AES_KEY *cts128_encrypt_key_schedule() return &ks; } -static AES_KEY *cts128_decrypt_key_schedule() +static AES_KEY *cts128_decrypt_key_schedule(void) { static int init_key = 1; static AES_KEY ks; diff --git a/test/ossl_shim/ossl_shim.cc b/test/ossl_shim/ossl_shim.cc index 739d1bd1..b1067e84 100644 --- a/test/ossl_shim/ossl_shim.cc +++ b/test/ossl_shim/ossl_shim.cc @@ -985,6 +985,10 @@ static bool DoExchange(bssl::UniquePtr *out_session, SSL_set_max_cert_list(ssl.get(), config->max_cert_list); } + if (!config->async) { + SSL_set_mode(ssl.get(), SSL_MODE_AUTO_RETRY); + } + int sock = Connect(config->port); if (sock == -1) { return false; diff --git a/test/packettest.c b/test/packettest.c index 9b482fa6..e58d8d8b 100644 --- a/test/packettest.c +++ b/test/packettest.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/test/pkey_meth_kdf_test.c b/test/pkey_meth_kdf_test.c index 5d4c468f..98495b67 100644 --- a/test/pkey_meth_kdf_test.c +++ b/test/pkey_meth_kdf_test.c @@ -170,7 +170,7 @@ static int test_kdf_scrypt(void) } #endif -int setup_tests() +int setup_tests(void) { ADD_TEST(test_kdf_tls1_prf); ADD_TEST(test_kdf_hkdf); diff --git a/test/pkey_meth_test.c b/test/pkey_meth_test.c index 004bb30b..02770134 100644 --- a/test/pkey_meth_test.c +++ b/test/pkey_meth_test.c @@ -75,7 +75,7 @@ static int test_pkey_meths(void) return good; } -int setup_tests() +int setup_tests(void) { ADD_TEST(test_asn1_meths); ADD_TEST(test_pkey_meths); diff --git a/test/rdrand_sanitytest.c b/test/rdrand_sanitytest.c index 21d5139f..0e67b377 100644 --- a/test/rdrand_sanitytest.c +++ b/test/rdrand_sanitytest.c @@ -1,5 +1,5 @@ /* - * Copyright 2018-2018 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -20,7 +20,7 @@ size_t OPENSSL_ia32_rdrand_bytes(unsigned char *buf, size_t len); size_t OPENSSL_ia32_rdseed_bytes(unsigned char *buf, size_t len); -void OPENSSL_cpuid_setup(); +void OPENSSL_cpuid_setup(void); extern unsigned int OPENSSL_ia32cap_P[4]; @@ -81,12 +81,12 @@ end: return testresult; } -static int sanity_check_rdrand_bytes() +static int sanity_check_rdrand_bytes(void) { return sanity_check_bytes(OPENSSL_ia32_rdrand_bytes, 1000, 0, 10, 10); } -static int sanity_check_rdseed_bytes() +static int sanity_check_rdseed_bytes(void) { /*- * RDSEED may take many retries to succeed; note that this is effectively @@ -97,7 +97,8 @@ static int sanity_check_rdseed_bytes() return sanity_check_bytes(OPENSSL_ia32_rdseed_bytes, 1000, 1, 10000, 10); } -int setup_tests() { +int setup_tests(void) +{ OPENSSL_cpuid_setup(); int have_rdseed = (OPENSSL_ia32cap_P[2] & (1 << 18)) != 0; @@ -117,7 +118,7 @@ int setup_tests() { #else -int setup_tests() +int setup_tests(void) { return 1; } diff --git a/test/recipes/04-test_bio_callback.t b/test/recipes/04-test_bio_callback.t new file mode 100644 index 00000000..1422cb6e --- /dev/null +++ b/test/recipes/04-test_bio_callback.t @@ -0,0 +1,12 @@ +#! /usr/bin/env perl +# Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + + +use OpenSSL::Test::Simple; + +simple_test("test_bio_callback", "bio_callback_test"); diff --git a/test/recipes/05-test_rand.t b/test/recipes/05-test_rand.t index 69c92ffe..3ae25403 100644 --- a/test/recipes/05-test_rand.t +++ b/test/recipes/05-test_rand.t @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -10,7 +10,8 @@ use strict; use warnings; use OpenSSL::Test; -plan tests => 1; +plan tests => 2; setup("test_rand"); ok(run(test(["drbgtest"]))); +ok(run(test(["drbg_cavs_test"]))); diff --git a/test/recipes/06-test-rdrand.t b/test/recipes/06-test-rdrand.t index 07ee7c84..ac246bd5 100644 --- a/test/recipes/06-test-rdrand.t +++ b/test/recipes/06-test-rdrand.t @@ -1,6 +1,6 @@ #! /usr/bin/perl -# Copyright 2018-2018 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/test/recipes/15-test_genrsa.t b/test/recipes/15-test_genrsa.t index 72a58bcd..e16a9a40 100644 --- a/test/recipes/15-test_genrsa.t +++ b/test/recipes/15-test_genrsa.t @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -18,9 +18,37 @@ setup("test_genrsa"); plan tests => 5; -is(run(app([ 'openssl', 'genrsa', '-3', '-out', 'genrsatest.pem', '256'])), 0, "genrsa -3 256"); -ok(run(app([ 'openssl', 'genrsa', '-3', '-out', 'genrsatest.pem', '512'])), "genrsa -3 512"); -ok(run(app([ 'openssl', 'rsa', '-check', '-in', 'genrsatest.pem', '-noout'])), "rsa -check"); -ok(run(app([ 'openssl', 'genrsa', '-f4', '-out', 'genrsatest.pem', '512'])), "genrsa -f4 512"); -ok(run(app([ 'openssl', 'rsa', '-check', '-in', 'genrsatest.pem', '-noout'])), "rsa -check"); -unlink 'genrsatest.pem'; +# We want to know that an absurdly small number of bits isn't support +is(run(app([ 'openssl', 'genrsa', '-3', '-out', 'genrsatest.pem', '8'])), 0, "genrsa -3 8"); + +# Depending on the shared library, we might have different lower limits. +# Let's find it! This is a simple binary search +# ------------------------------------------------------------ +# NOTE: $good may need an update in the future +# ------------------------------------------------------------ +note "Looking for lowest amount of bits"; +my $bad = 3; # Log2 of number of bits (2 << 3 == 8) +my $good = 11; # Log2 of number of bits (2 << 11 == 2048) +while ($good > $bad + 1) { + my $checked = int(($good + $bad + 1) / 2); + if (run(app([ 'openssl', 'genrsa', '-3', '-out', 'genrsatest.pem', + 2 ** $checked ], stderr => undef))) { + note 2 ** $checked, " bits is good"; + $good = $checked; + } else { + note 2 ** $checked, " bits is bad"; + $bad = $checked; + } +} +$good++ if $good == $bad; +$good = 2 ** $good; +note "Found lowest allowed amount of bits to be $good"; + +ok(run(app([ 'openssl', 'genrsa', '-3', '-out', 'genrsatest.pem', $good ])), + "genrsa -3 $good"); +ok(run(app([ 'openssl', 'rsa', '-check', '-in', 'genrsatest.pem', '-noout' ])), + "rsa -check"); +ok(run(app([ 'openssl', 'genrsa', '-f4', '-out', 'genrsatest.pem', $good ])), + "genrsa -f4 $good"); +ok(run(app([ 'openssl', 'rsa', '-check', '-in', 'genrsatest.pem', '-noout' ])), + "rsa -check"); diff --git a/test/recipes/15-test_out_option.t b/test/recipes/15-test_out_option.t index 018ff3d0..9c2a9548 100644 --- a/test/recipes/15-test_out_option.t +++ b/test/recipes/15-test_out_option.t @@ -16,45 +16,58 @@ use OpenSSL::Test::Utils; setup("test_out_option"); -plan skip_all => "'-out' option tests are not available on Windows" - if $^O eq 'MSWin32'; +plan tests => 4; -plan tests => 11; +# Test 1 +SKIP: { + # Paths that should generate failure when trying to write to them. + # Directories are a safe bet for failure on most platforms. + # Notably, this isn't true on OpenVMS, as a default file name is + # appended under the hood when trying to "write" to a directory spec. + # From observation, that file is '.' (i.e. a file with no file name + # and no extension), so '[]' gets translated to '[].' + skip 'Directories become writable files on OpenVMS', 1 if $^O eq 'VMS'; -# The following patterns should be tested: -# -# path dirname -# /usr/ / -# / / -# . . -# .. . - -test_illegal_path('/usr/'); -test_illegal_path('/'); -test_illegal_path('./'); -test_illegal_path('../'); - -# Test for trying to create a file in a non-exist directory -my @chars = ("A".."Z", "a".."z", "0".."9"); -my $rand_path = $chars[rand @chars] for 1..32; -$rand_path .= "/test.pem"; - -test_illegal_path($rand_path); -test_legal_path('test.pem'); -unlink 'test.pem'; - -sub test_illegal_path { - my $path = File::Spec->canonpath($_[0]); - - my $start = time(); - ok(!run(app([ 'openssl', 'genrsa', '-out', $path, '16384'])), "invalid output path: $path"); - my $end = time(); - # The above process should exit in 2 seconds if the path is not valid - ok($end - $start < 2, "check time consumed"); + # Note that directories must end with a slash here, because of how + # File::Spec massages them into directory specs on some platforms. + my $path = File::Spec->canonpath('./'); + ok(!run(app([ 'openssl', 'rand', '-out', $path, '1'])), + "invalid output path: $path"); } -sub test_legal_path { - my $path = File::Spec->canonpath($_[0]); - - ok(run(app([ 'openssl', 'genrsa', '-out', $path, '2048'])), "valid output path: $path"); +# Test 2 +{ + my $path = File::Spec->canonpath('randomname.bin'); + ok(run(app([ 'openssl', 'rand', '-out', $path, '1'])), + "valid output path: $path"); +} + +# Test 3 +{ + # Test for trying to create a file in a non-exist directory + my $rand_path = ""; + do { + my @chars = ("A".."Z", "a".."z", "0".."9"); + $rand_path .= $chars[rand @chars] for 1..32; + } while (-d File::Spec->catdir('.', $rand_path)); + $rand_path .= "/randomname.bin"; + + my $path = File::Spec->canonpath($rand_path); + ok(!run(app([ 'openssl', 'rand', '-out', $path, '1'])), + "invalid output path: $path"); +} + +# Test 4 +SKIP: { + skip "It's not safe to use perl's idea of the NULL device in an explicitly cross compiled build", 1 + unless (config('CROSS_COMPILE') // '') eq ''; + + my $path = File::Spec->canonpath(File::Spec->devnull()); + ok(run(app([ 'openssl', 'rand', '-out', $path, '1'])), + "valid output path: $path"); +} + +# Cleanup +END { + unlink 'randomname.bin' if -f 'randomname.bin'; } diff --git a/test/recipes/30-test_evp_data/evppkey.txt b/test/recipes/30-test_evp_data/evppkey.txt index 017ab41f..6b504525 100644 --- a/test/recipes/30-test_evp_data/evppkey.txt +++ b/test/recipes/30-test_evp_data/evppkey.txt @@ -1,5 +1,5 @@ # -# Copyright 2001-2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -726,8 +726,22 @@ PublicKey=Bob-25519-PUBLIC MCowBQYDK2VuAyEA3p7bfXt9wbTTW2HC7OQ1Nz+DQ8hbeGdNrfx+FG+IK08= -----END PUBLIC KEY----- +#Raw versions of the same keys as above + +PrivateKeyRaw=Alice-25519-Raw:X25519:77076d0a7318a57d3c16c17251b26645df4c2f87ebc0992ab177fba51db92c2a + +PublicKeyRaw=Alice-25519-PUBLIC-Raw:X25519:8520f0098930a754748b7ddcb43ef75a0dbf3a0d26381af4eba4a98eaa9b4e6a + +PrivPubKeyPair = Alice-25519-Raw:Alice-25519-PUBLIC-Raw + +PrivateKeyRaw=Bob-25519-Raw:X25519:5dab087e624a8a4b79e17f8b83800ee66f3bb1292618b6fd1c2f8b27ff88e0eb + +PublicKeyRaw=Bob-25519-PUBLIC-Raw:X25519:de9edb7d7b7dc1b4d35b61c2ece435373f8343c85b78674dadfc7e146f882b4f + PrivPubKeyPair = Bob-25519:Bob-25519-PUBLIC +PrivPubKeyPair = Bob-25519-Raw:Bob-25519-PUBLIC-Raw + Derive=Alice-25519 PeerKey=Bob-25519-PUBLIC SharedSecret=4A5D9D5BA4CE2DE1728E3BF480350F25E07E21C947D19E3376F09B3C1E161742 @@ -736,6 +750,14 @@ Derive=Bob-25519 PeerKey=Alice-25519-PUBLIC SharedSecret=4A5D9D5BA4CE2DE1728E3BF480350F25E07E21C947D19E3376F09B3C1E161742 +Derive=Alice-25519-Raw +PeerKey=Bob-25519-PUBLIC-Raw +SharedSecret=4A5D9D5BA4CE2DE1728E3BF480350F25E07E21C947D19E3376F09B3C1E161742 + +Derive=Bob-25519-Raw +PeerKey=Alice-25519-PUBLIC-Raw +SharedSecret=4A5D9D5BA4CE2DE1728E3BF480350F25E07E21C947D19E3376F09B3C1E161742 + # Illegal sign/verify operations with X25519 key Sign=Alice-25519 @@ -778,6 +800,20 @@ QjKhPKcG3LV67D2uB73BxnvzNgk= PrivPubKeyPair = Bob-448:Bob-448-PUBLIC +#Raw versions of the same keys as above + +PrivateKeyRaw=Alice-448-Raw:X448:9a8f4925d1519f5775cf46b04b5800d4ee9ee8bae8bc5565d498c28dd9c9baf574a9419744897391006382a6f127ab1d9ac2d8c0a598726b + +PublicKeyRaw=Alice-448-PUBLIC-Raw:X448:9b08f7cc31b7e3e67d22d5aea121074a273bd2b83de09c63faa73d2c22c5d9bbc836647241d953d40c5b12da88120d53177f80e532c41fa0 + +PrivPubKeyPair = Alice-448-Raw:Alice-448-PUBLIC-Raw + +PrivateKeyRaw=Bob-448-Raw:X448:1c306a7ac2a0e2e0990b294470cba339e6453772b075811d8fad0d1d6927c120bb5ee8972b0d3e21374c9c921b09d1b0366f10b65173992d + +PublicKeyRaw=Bob-448-PUBLIC-Raw:X448:3eb7a829b0cd20f5bcfc0b599b6feccf6da4627107bdb0d4f345b43027d8b972fc3e34fb4232a13ca706dcb57aec3dae07bdc1c67bf33609 + +PrivPubKeyPair = Bob-448-Raw:Bob-448-PUBLIC-Raw + Derive=Alice-448 PeerKey=Bob-448-PUBLIC SharedSecret=07fff4181ac6cc95ec1c16a94a0f74d12da232ce40a77552281d282bb60c0b56fd2464c335543936521c24403085d59a449a5037514a879d @@ -786,6 +822,14 @@ Derive=Bob-448 PeerKey=Alice-448-PUBLIC SharedSecret=07fff4181ac6cc95ec1c16a94a0f74d12da232ce40a77552281d282bb60c0b56fd2464c335543936521c24403085d59a449a5037514a879d +Derive=Alice-448-Raw +PeerKey=Bob-448-PUBLIC-Raw +SharedSecret=07fff4181ac6cc95ec1c16a94a0f74d12da232ce40a77552281d282bb60c0b56fd2464c335543936521c24403085d59a449a5037514a879d + +Derive=Bob-448-Raw +PeerKey=Alice-448-PUBLIC-Raw +SharedSecret=07fff4181ac6cc95ec1c16a94a0f74d12da232ce40a77552281d282bb60c0b56fd2464c335543936521c24403085d59a449a5037514a879d + # Illegal sign/verify operations with X448 key Sign=Alice-448 @@ -17433,8 +17477,15 @@ PublicKey=ED25519-5-PUBLIC MCowBQYDK2VwAyEA7Bcrk61eVjv0kyxw4SRQNMNUZ+8u/U1k6/gZaDRn4r8= -----END PUBLIC KEY----- +#Raw versions of the ED25519-1 keys +PrivateKeyRaw=ED25519-1-Raw:ED25519:9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60 + +PublicKeyRaw=ED25519-1-PUBLIC-Raw:ED25519:d75a980182b10ab7d54bfed3c964073a0ee172f3daa62325af021a68f707511a + PrivPubKeyPair = ED25519-1:ED25519-1-PUBLIC +PrivPubKeyPair = ED25519-1-Raw:ED25519-1-PUBLIC-Raw + OneShotDigestSign = NULL Key = ED25519-1 Input = "" @@ -17507,6 +17558,17 @@ DigestSign = SHA256 Key = ED25519-1 Result = DIGESTSIGNINIT_ERROR +# Raw tests + +OneShotDigestSign = NULL +Key = ED25519-1-Raw +Input = "" +Output = e5564300c360ac729086e2cc806e828a84877f1eb8e5d974d873e065224901555fb8821590a33bacc61e39701cf9b46bd25bf5f0595bbe24655141438e7a100b + +OneShotDigestVerify = NULL +Key = ED25519-1-PUBLIC-Raw +Input = "" +Output = e5564300c360ac729086e2cc806e828a84877f1eb8e5d974d873e065224901555fb8821590a33bacc61e39701cf9b46bd25bf5f0595bbe24655141438e7a100b Title = ED448 tests from RFC8032 @@ -17606,6 +17668,11 @@ MEMwBQYDK2VxAzoAqBsuinClrJT/28ybrfw/6wgB8lhXi7EUrUTs4ewOeZ2gjv+4 HF1oXAxW9k7srvjN8RzDhzeDjPQA -----END PUBLIC KEY----- +#Raw versions of the ED448-1 keys +PrivateKeyRaw=ED448-1-Raw:ED448:6c82a562cb808d10d632be89c8513ebf6c929f34ddfa8c9f63c9960ef6e348a3528c8a3fcc2f044e39a3fc5b94492f8f032e7549a20098f95b + +PublicKeyRaw=ED448-1-PUBLIC-Raw:ED448:5fd7449b59b461fd2ce787ec616ad46a1da1342485a70e1f8a0ea75d80e96778edf124769b46c7061bd6783df1e50f6cd1fa1abeafe8256180 + PrivPubKeyPair = ED448-1:ED448-1-PUBLIC PrivPubKeyPair = ED448-2:ED448-2-PUBLIC @@ -17622,6 +17689,8 @@ PrivPubKeyPair = ED448-7:ED448-7-PUBLIC PrivPubKeyPair = ED448-8:ED448-8-PUBLIC +PrivPubKeyPair = ED448-1-Raw:ED448-1-PUBLIC-Raw + OneShotDigestSign = NULL Key = ED448-1 Input = "" @@ -17698,6 +17767,17 @@ DigestSign = SHA256 Key = ED448-1 Result = DIGESTSIGNINIT_ERROR +# Raw keys +OneShotDigestSign = NULL +Key = ED448-1-Raw +Input = "" +Output = 533a37f6bbe457251f023c0d88f976ae2dfb504a843e34d2074fd823d41a591f2b233f034f628281f2fd7a22ddd47d7828c59bd0a21bfd3980ff0d2028d4b18a9df63e006c5d1c2d345b925d8dc00b4104852db99ac5c7cdda8530a113a0f4dbb61149f05a7363268c71d95808ff2e652600 + +OneShotDigestVerify = NULL +Key = ED448-1-PUBLIC-Raw +Input = "" +Output = 533a37f6bbe457251f023c0d88f976ae2dfb504a843e34d2074fd823d41a591f2b233f034f628281f2fd7a22ddd47d7828c59bd0a21bfd3980ff0d2028d4b18a9df63e006c5d1c2d345b925d8dc00b4104852db99ac5c7cdda8530a113a0f4dbb61149f05a7363268c71d95808ff2e652600 + # Key generation tests KeyGen = rsaEncryption @@ -18289,3 +18369,31 @@ SharedSecret=4E48335CB2A508C3481729F42C49CFC0A9DA673F9FA4FBD968B3C5B78DBFA869529 Derive=ffdhe8192-2 PeerKey=ffdhe8192-1-pub SharedSecret=4E48335CB2A508C3481729F42C49CFC0A9DA673F9FA4FBD968B3C5B78DBFA8695295642D1337C54229370B33068481F6A6E1B021F8B09B7C6B3E4DB581AD4C7ACF5C230A1FD4107EAE55530A8376856A65E079DE1BDA41B050E9B53A088ACADB879CCBC683A13BB925D48497BF7021FEB9DA214DD77FCBB6D0D46EC2BB9C7A9AFB93FC236E4EB61CB0F0C8E025D8CF4AF8B3B0F28B3E2CFAE6E760DC7877C71046179154FBE1A50A315C4DBA6D9E06406D389B614B1FC422C72FBB958C0A2EE21694CD32136F9CF0A1205E0D3A4B10CC9C98B3B4524A0CDC9455D3021AC44057CEF4A97E85166068769E9E644CC447095243BB90368A1CE6F0E3C69CA180F5B9D51F590A812B1375460CF10A7E718A83A2F6B00D8E28BAB45CEAB8AF0EB02988ED9221416EC061C1C4081552D3D0849D243DB473EC7B90180C3891E768DD2D7002CF505D369700CAF02A4B9DD1F2828C4ACC1F2EB47100DC2DB5620ADA971D1B0B0FAC9F9E3492B591FC85AC3DCB3826A8DA5842F4AE145FE33BFCDD0B6CD15C9836A5862EDB3D87A0CDBD724AE19A79A55D4F0BFF7870019926181933C840EACFB70FBC0EF182057DC09E06798EB4C9AAC2285F22F5D907A432C6D00CC44D07D77E77D1ACC183A174146ECFBDA26FF922CEBD2FA288EF2D23F65C0AAAD0F05DBFB6CA12446082D1F5774877483C3858442E305CF2A9637CE0EBB702DB70FF336E5B0413F3E8791960F1F0A9877C9076213D40657283D546AE52B73FF4449E60F8B6FE30D4CC0BA1ACA7A7DC155EC73C48B21477983D004261267D710D8A5E8CBD0656F1A963F248E887E8C2BF87BCAE7A0D4891BF21FCF35893584B29E18E842A23EA329ADD3D6AD994B5CBFBBFAB5A26932E8F799B2B0FA7789DE7A4A5C4B7FA81971819EA7F33B5BF6577F917BDE9C3680BCC5B15F1EAB4524A1B6DEE96B9F108A77344269A1757685D0404C832E4E0C5A29F808CFA6290316C0EBB2EF0A7431F62A5FBCDC66527AD8A04C0F10AF88C7CE1F1F22C41B71CE278BB704E88145608C28AD78402487031F6B13604CC6687161EBB78E7AF7AA0BC3CCB9AD8B00D7C01980599904B71F5DBC06A691E5638566BE36522B7FED69E24C28F8EA798BA3E9CCEB8AB8CF5651379A21A38315B05C66205616BBC6A3DD5573C9C6FBA2E3488E055E5F36857016D9300BFCE9F38D7C7CCD07FCF1EF41F8347CADCB12C400536374CF269613B05069B6D94CADA3B1F4ACBB68FA1ED175B01D840D871B3B0CDB918CDF15C79169A398C189AEA78860081DB423C89D350587E26D6D77B4C762B4F2A030345679F724CFBB08DB03E8CEB4FF0B91422BD2EB5C1C356D209049CFA2D6447F69B1E1DF0850FFBB6BB9F8D5B147765C023F76524A808456DEBF6A9134E3364DF462D4807FE6D4D036A4E59A4D56F8A30D8A27F4DFA174940B713A7E4 + +Title = SM2 tests + +PrivateKey=SM2_key1 +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBG0wawIBAQQg0JFWczAXva2An9m7 +2MaT9gIwWTFptvlKrxyO4TjMmbWhRANCAAQ5OirZ4n5DrKqrhaGdO4VZHhRAYVcX +Wt3Te/d/8Mr57Tf886i09VwDhSMmH8pmNq/mp6+ioUgqYG9cs6GLLioe +-----END PRIVATE KEY----- + +Verify = SM2_key1 +Ctrl = digest:SM3 +Input = D7AD397F6FFA5D4F7F11E7217F241607DC30618C236D2C09C1B9EA8FDADEE2E8 +Output = 3046022100AB1DB64DE7C40EDBDE6651C9B8EBDB804673DB836E5D5C7FE15DCF9ED2725037022100EBA714451FF69B0BB930B379E192E7CD5FA6E3C41C7FBD8303B799AB54A54621 + +Decrypt = SM2_key1 +Input = 30818A0220466BE2EF5C11782EC77864A0055417F407A5AFC11D653C6BCE69E417BB1D05B6022062B572E21FF0DDF5C726BD3F9FF2EAE56E6294713A607E9B9525628965F62CC804203C1B5713B5DB2728EB7BF775E44F4689FC32668BDC564F52EA45B09E8DF2A5F40422084A9D0CC2997092B7D3C404FCE95956EB604D732B2307A8E5B8900ED6608CA5B197 +Output = "The floofy bunnies hop at midnight" + +# This is a "fake" test as it does only verify that the SM2 EVP_PKEY interface +# is capable of creating a signature without failing, but it does not say +# anything about the generated signature being valid, nor does it test the +# correct implementation of the cryptosystem. +Sign = SM2_key1 +Ctrl = digest:SM3 +Input = D7AD397F6FFA5D4F7F11E7217F241607DC30618C236D2C09C1B9EA8FDADEE2E8 +Output = 3045022100f11bf36e75bb304f094fb42a4ca22377d0cc768637c5011cd59fb9ed4b130c98022035545ffe2c2efb3abee4fee661468946d886004fae8ea5311593e48f7fe21b91 +Result = KEYOP_MISMATCH diff --git a/test/recipes/70-test_renegotiation.t b/test/recipes/70-test_renegotiation.t index 09514874..734f1cd2 100644 --- a/test/recipes/70-test_renegotiation.t +++ b/test/recipes/70-test_renegotiation.t @@ -38,7 +38,7 @@ my $proxy = TLSProxy::Proxy->new( $proxy->clientflags("-no_tls1_3"); $proxy->reneg(1); $proxy->start() or plan skip_all => "Unable to start up Proxy for tests"; -plan tests => 2; +plan tests => 3; ok(TLSProxy::Message->success(), "Basic renegotiation"); #Test 2: Client does not send the Reneg SCSV. Reneg should fail @@ -49,6 +49,34 @@ $proxy->reneg(1); $proxy->start(); ok(TLSProxy::Message->fail(), "No client SCSV"); +SKIP: { + skip "TLSv1.2 or TLSv1.1 disabled", 1 + if disabled("tls1_2") || disabled("tls1_1"); + #Test 3: Check that the ClientHello version remains the same in the reneg + # handshake + $proxy->clear(); + $proxy->filter(undef); + $proxy->clientflags("-no_tls1_3"); + $proxy->serverflags("-no_tls1_3 -no_tls1_2"); + $proxy->reneg(1); + $proxy->start(); + my $chversion; + my $chmatch = 0; + foreach my $message (@{$proxy->message_list}) { + if ($message->mt == TLSProxy::Message::MT_CLIENT_HELLO) { + if (!defined $chversion) { + $chversion = $message->client_version; + } else { + if ($chversion == $message->client_version) { + $chmatch = 1; + } + } + } + } + ok(TLSProxy::Message->success() && $chmatch, + "Check ClientHello version is the same"); +} + sub reneg_filter { my $proxy = shift; diff --git a/test/recipes/70-test_sslcbcpadding.t b/test/recipes/70-test_sslcbcpadding.t index 85b26b82..55943764 100644 --- a/test/recipes/70-test_sslcbcpadding.t +++ b/test/recipes/70-test_sslcbcpadding.t @@ -7,6 +7,8 @@ # https://www.openssl.org/source/license.html use strict; +use feature 'state'; + use OpenSSL::Test qw/:DEFAULT cmdstr srctop_file bldtop_dir/; use OpenSSL::Test::Utils; use TLSProxy::Proxy; @@ -41,26 +43,31 @@ my @test_offsets = (0, 128, 254, 255); # Test that maximally-padded records are accepted. my $bad_padding_offset = -1; $proxy->serverflags("-tls1_2"); +$proxy->serverconnects(1 + scalar(@test_offsets)); $proxy->start() or plan skip_all => "Unable to start up Proxy for tests"; plan tests => 1 + scalar(@test_offsets); ok(TLSProxy::Message->success(), "Maximally-padded record test"); # Test that invalid padding is rejected. +my $fatal_alert; # set by add_maximal_padding_filter on client's fatal alert + foreach my $offset (@test_offsets) { - $proxy->clear(); - $proxy->serverflags("-tls1_2"); $bad_padding_offset = $offset; - $proxy->start(); - ok(TLSProxy::Message->fail(), "Invalid padding byte $bad_padding_offset"); + $fatal_alert = 0; + $proxy->clearClient(); + $proxy->clientstart(); + ok($fatal_alert, "Invalid padding byte $bad_padding_offset"); } sub add_maximal_padding_filter { my $proxy = shift; + my $messages = $proxy->message_list; + state $sent_corrupted_payload; if ($proxy->flight == 0) { # Disable Encrypt-then-MAC. - foreach my $message (@{$proxy->message_list}) { + foreach my $message (@{$messages}) { if ($message->mt != TLSProxy::Message::MT_CLIENT_HELLO) { next; } @@ -69,9 +76,16 @@ sub add_maximal_padding_filter $message->process_extensions(); $message->repack(); } + $sent_corrupted_payload = 0; + return; } - if ($proxy->flight == 3) { + my $last_message = @{$messages}[-1]; + if (defined($last_message) + && $last_message->server + && $last_message->mt == TLSProxy::Message::MT_FINISHED + && !@{$last_message->records}[0]->{sent}) { + # Insert a maximally-padded record. Assume a block size of 16 (AES) and # a MAC length of 20 (SHA-1). my $block_size = 16; @@ -88,6 +102,7 @@ sub add_maximal_padding_filter # Add padding. for (my $i = 0; $i < 256; $i++) { if ($i == $bad_padding_offset) { + $sent_corrupted_payload = 1; $data .= "\xfe"; } else { $data .= "\xff"; @@ -108,5 +123,9 @@ sub add_maximal_padding_filter # Send the record immediately after the server Finished. push @{$proxy->record_list}, $record; + } elsif ($sent_corrupted_payload) { + # Check for bad_record_mac from client + my $last_record = @{$proxy->record_list}[-1]; + $fatal_alert = 1 if $last_record->is_fatal_alert(0) == 20; } } diff --git a/test/recipes/70-test_sslextension.t b/test/recipes/70-test_sslextension.t index 142ce0e6..20e1933f 100644 --- a/test/recipes/70-test_sslextension.t +++ b/test/recipes/70-test_sslextension.t @@ -7,6 +7,8 @@ # https://www.openssl.org/source/license.html use strict; +use feature 'state'; + use OpenSSL::Test qw/:DEFAULT cmdstr srctop_file bldtop_dir/; use OpenSSL::Test::Utils; use TLSProxy::Proxy; @@ -37,6 +39,7 @@ use constant { }; my $testtype; +my $fatal_alert = 0; # set by filter on fatal alert $ENV{OPENSSL_ia32cap} = '~0x200000200000000'; my $proxy = TLSProxy::Proxy->new( @@ -98,11 +101,13 @@ sub inject_duplicate_extension_clienthello my $proxy = shift; # We're only interested in the initial ClientHello - if ($proxy->flight != 0) { + if ($proxy->flight == 0) { + inject_duplicate_extension($proxy, TLSProxy::Message::MT_CLIENT_HELLO); return; } - inject_duplicate_extension($proxy, TLSProxy::Message::MT_CLIENT_HELLO); + my $last_record = @{$proxy->{record_list}}[-1]; + $fatal_alert = 1 if $last_record->is_fatal_alert(1); } sub inject_duplicate_extension_serverhello @@ -110,26 +115,43 @@ sub inject_duplicate_extension_serverhello my $proxy = shift; # We're only interested in the initial ServerHello - if ($proxy->flight != 1) { + if ($proxy->flight == 0) { + return; + } elsif ($proxy->flight == 1) { + inject_duplicate_extension($proxy, TLSProxy::Message::MT_SERVER_HELLO); return; } - inject_duplicate_extension($proxy, TLSProxy::Message::MT_SERVER_HELLO); + my $last_record = @{$proxy->{record_list}}[-1]; + $fatal_alert = 1 if $last_record->is_fatal_alert(0); } sub inject_unsolicited_extension { my $proxy = shift; my $message; + state $sent_unsolisited_extension; + + if ($proxy->flight == 0) { + $sent_unsolisited_extension = 0; + return; + } # We're only interested in the initial ServerHello/EncryptedExtensions if ($proxy->flight != 1) { + if ($sent_unsolisited_extension) { + my $last_record = @{$proxy->record_list}[-1]; + $fatal_alert = 1 if $last_record->is_fatal_alert(0); + } return; } if ($testtype == UNSOLICITED_SERVER_NAME_TLS13) { - $message = ${$proxy->message_list}[2]; - die "Expecting EE message ".($message->mt).", ".${$proxy->message_list}[1]->mt.", ".${$proxy->message_list}[3]->mt if $message->mt != TLSProxy::Message::MT_ENCRYPTED_EXTENSIONS; + return if (!defined($message = ${$proxy->message_list}[2])); + die "Expecting EE message ".($message->mt)."," + .${$proxy->message_list}[1]->mt.", " + .${$proxy->message_list}[3]->mt + if $message->mt != TLSProxy::Message::MT_ENCRYPTED_EXTENSIONS; } else { $message = ${$proxy->message_list}[1]; } @@ -148,17 +170,19 @@ sub inject_unsolicited_extension } $message->set_extension($type, $ext); $message->repack(); + $sent_unsolisited_extension = 1; } # Test 1-2: Sending a duplicate extension should fail. $proxy->start() or plan skip_all => "Unable to start up Proxy for tests"; plan tests => 7; -ok(TLSProxy::Message->fail(), "Duplicate ClientHello extension"); +ok($fatal_alert, "Duplicate ClientHello extension"); +$fatal_alert = 0; $proxy->clear(); $proxy->filter(\&inject_duplicate_extension_serverhello); $proxy->start(); -ok(TLSProxy::Message->fail(), "Duplicate ServerHello extension"); +ok($fatal_alert, "Duplicate ServerHello extension"); SKIP: { skip "TLS <= 1.2 disabled", 3 if $no_below_tls13; @@ -170,12 +194,13 @@ SKIP: { ok(TLSProxy::Message->success, "Zero extension length test"); #Test 4: Inject an unsolicited extension (<= TLSv1.2) + $fatal_alert = 0; $proxy->clear(); $proxy->filter(\&inject_unsolicited_extension); $testtype = UNSOLICITED_SERVER_NAME; $proxy->clientflags("-no_tls1_3 -noservername"); $proxy->start(); - ok(TLSProxy::Message->fail(), "Unsolicited server name extension"); + ok($fatal_alert, "Unsolicited server name extension"); #Test 5: Inject a noncompliant supported_groups extension (<= TLSv1.2) $proxy->clear(); @@ -190,20 +215,22 @@ SKIP: { skip "TLS <= 1.2 or CT disabled", 1 if $no_below_tls13 || disabled("ct"); #Test 6: Same as above for the SCT extension which has special handling + $fatal_alert = 0; $proxy->clear(); $testtype = UNSOLICITED_SCT; $proxy->clientflags("-no_tls1_3"); $proxy->start(); - ok(TLSProxy::Message->fail(), "Unsolicited sct extension"); + ok($fatal_alert, "Unsolicited sct extension"); } SKIP: { skip "TLS 1.3 disabled", 1 if disabled("tls1_3"); #Test 7: Inject an unsolicited extension (TLSv1.3) + $fatal_alert = 0; $proxy->clear(); $proxy->filter(\&inject_unsolicited_extension); $testtype = UNSOLICITED_SERVER_NAME_TLS13; $proxy->clientflags("-noservername"); $proxy->start(); - ok(TLSProxy::Message->fail(), "Unsolicited server name extension (TLSv1.3)"); + ok($fatal_alert, "Unsolicited server name extension (TLSv1.3)"); } diff --git a/test/recipes/70-test_sslrecords.t b/test/recipes/70-test_sslrecords.t index 10c559e6..12330283 100644 --- a/test/recipes/70-test_sslrecords.t +++ b/test/recipes/70-test_sslrecords.t @@ -7,6 +7,8 @@ # https://www.openssl.org/source/license.html use strict; +use feature 'state'; + use OpenSSL::Test qw/:DEFAULT cmdstr srctop_file bldtop_dir/; use OpenSSL::Test::Utils; use TLSProxy::Proxy; @@ -35,6 +37,7 @@ my $proxy = TLSProxy::Proxy->new( ); my $boundary_test_type; +my $fatal_alert = 0; # set by filters at expected fatal alerts #Test 1: Injecting out of context empty records should fail my $content_type = TLSProxy::Record::RT_APPLICATION_DATA; @@ -42,7 +45,7 @@ my $inject_recs_num = 1; $proxy->serverflags("-tls1_2"); $proxy->start() or plan skip_all => "Unable to start up Proxy for tests"; plan tests => 18; -ok(TLSProxy::Message->fail(), "Out of context empty records test"); +ok($fatal_alert, "Out of context empty records test"); #Test 2: Injecting in context empty records should succeed $proxy->clear(); @@ -52,21 +55,23 @@ $proxy->start(); ok(TLSProxy::Message->success(), "In context empty records test"); #Test 3: Injecting too many in context empty records should fail +$fatal_alert = 0; $proxy->clear(); #We allow 32 consecutive in context empty records $inject_recs_num = 33; $proxy->serverflags("-tls1_2"); $proxy->start(); -ok(TLSProxy::Message->fail(), "Too many in context empty records test"); +ok($fatal_alert, "Too many in context empty records test"); #Test 4: Injecting a fragmented fatal alert should fail. We expect the server to # send back an alert of its own because it cannot handle fragmented # alerts +$fatal_alert = 0; $proxy->clear(); $proxy->filter(\&add_frag_alert_filter); $proxy->serverflags("-tls1_2"); $proxy->start(); -ok(TLSProxy::Message->fail(), "Fragmented alert records test"); +ok($fatal_alert, "Fragmented alert records test"); #Run some SSLv2 ClientHello tests @@ -122,51 +127,56 @@ ok(TLSProxy::Message->fail(), "Alert before SSLv2 ClientHello test"); #Unrecognised record type tests #Test 10: Sending an unrecognised record type in TLS1.2 should fail +$fatal_alert = 0; $proxy->clear(); $proxy->serverflags("-tls1_2"); $proxy->filter(\&add_unknown_record_type); $proxy->start(); -ok(TLSProxy::Message->fail(), "Unrecognised record type in TLS1.2"); +ok($fatal_alert, "Unrecognised record type in TLS1.2"); SKIP: { skip "TLSv1.1 disabled", 1 if disabled("tls1_1"); #Test 11: Sending an unrecognised record type in TLS1.1 should fail + $fatal_alert = 0; $proxy->clear(); $proxy->clientflags("-tls1_1"); $proxy->start(); - ok(TLSProxy::Message->fail(), "Unrecognised record type in TLS1.1"); + ok($fatal_alert, "Unrecognised record type in TLS1.1"); } #Test 12: Sending a different record version in TLS1.2 should fail +$fatal_alert = 0; $proxy->clear(); $proxy->clientflags("-tls1_2"); $proxy->filter(\&change_version); $proxy->start(); -ok(TLSProxy::Message->fail(), "Changed record version in TLS1.2"); +ok($fatal_alert, "Changed record version in TLS1.2"); #TLS1.3 specific tests SKIP: { skip "TLSv1.3 disabled", 6 if disabled("tls1_3"); - #Test 13: Sending a different record version in TLS1.3 should succeed + #Test 13: Sending a different record version in TLS1.3 should fail $proxy->clear(); $proxy->filter(\&change_version); $proxy->start(); - ok(TLSProxy::Message->success(), "Changed record version in TLS1.3"); + ok(TLSProxy::Message->fail(), "Changed record version in TLS1.3"); #Test 14: Sending an unrecognised record type in TLS1.3 should fail + $fatal_alert = 0; $proxy->clear(); $proxy->filter(\&add_unknown_record_type); $proxy->start(); - ok(TLSProxy::Message->fail(), "Unrecognised record type in TLS1.3"); + ok($fatal_alert, "Unrecognised record type in TLS1.3"); #Test 15: Sending an outer record type other than app data once encrypted #should fail + $fatal_alert = 0; $proxy->clear(); $proxy->filter(\&change_outer_record_type); $proxy->start(); - ok(TLSProxy::Message->fail(), "Wrong outer record type in TLS1.3"); + ok($fatal_alert, "Wrong outer record type in TLS1.3"); use constant { DATA_AFTER_SERVER_HELLO => 0, @@ -176,36 +186,41 @@ SKIP: { #Test 16: Sending a ServerHello which doesn't end on a record boundary # should fail + $fatal_alert = 0; $proxy->clear(); $boundary_test_type = DATA_AFTER_SERVER_HELLO; $proxy->filter(\¬_on_record_boundary); $proxy->start(); - ok(TLSProxy::Message->fail(), "Record not on boundary in TLS1.3 (ServerHello)"); + ok($fatal_alert, "Record not on boundary in TLS1.3 (ServerHello)"); #Test 17: Sending a Finished which doesn't end on a record boundary # should fail + $fatal_alert = 0; $proxy->clear(); $boundary_test_type = DATA_AFTER_FINISHED; $proxy->filter(\¬_on_record_boundary); $proxy->start(); - ok(TLSProxy::Message->fail(), "Record not on boundary in TLS1.3 (Finished)"); + ok($fatal_alert, "Record not on boundary in TLS1.3 (Finished)"); #Test 18: Sending a KeyUpdate which doesn't end on a record boundary # should fail + $fatal_alert = 0; $proxy->clear(); $boundary_test_type = DATA_AFTER_KEY_UPDATE; $proxy->filter(\¬_on_record_boundary); $proxy->start(); - ok(TLSProxy::Message->fail(), "Record not on boundary in TLS1.3 (KeyUpdate)"); + ok($fatal_alert, "Record not on boundary in TLS1.3 (KeyUpdate)"); } sub add_empty_recs_filter { my $proxy = shift; + my $records = $proxy->record_list; # We're only interested in the initial ClientHello if ($proxy->flight != 0) { + $fatal_alert = 1 if @{$records}[-1]->is_fatal_alert(1) == 10; return; } @@ -221,18 +236,19 @@ sub add_empty_recs_filter "", "" ); - - push @{$proxy->record_list}, $record; + push @{$records}, $record; } } sub add_frag_alert_filter { my $proxy = shift; + my $records = $proxy->record_list; my $byte; # We're only interested in the initial ClientHello if ($proxy->flight != 0) { + $fatal_alert = 1 if @{$records}[-1]->is_fatal_alert(1) == 10; return; } @@ -262,7 +278,7 @@ sub add_frag_alert_filter $byte, $byte ); - push @{$proxy->record_list}, $record; + push @{$records}, $record; # And finally the description (Unexpected message) in a third record $byte = pack('C', TLSProxy::Message::AL_DESC_UNEXPECTED_MESSAGE); @@ -277,7 +293,7 @@ sub add_frag_alert_filter $byte, $byte ); - push @{$proxy->record_list}, $record; + push @{$records}, $record; } sub add_sslv2_filter @@ -430,17 +446,22 @@ sub add_sslv2_filter sub add_unknown_record_type { my $proxy = shift; + my $records = $proxy->record_list; + state $added_record; # We'll change a record after the initial version neg has taken place - if ($proxy->flight != 1) { + if ($proxy->flight == 0) { + $added_record = 0; + return; + } elsif ($proxy->flight != 1 || $added_record) { + $fatal_alert = 1 if @{$records}[-1]->is_fatal_alert(0) == 10; return; } - my $lastrec = ${$proxy->record_list}[-1]; my $record = TLSProxy::Record->new( 1, TLSProxy::Record::RT_UNKNOWN, - $lastrec->version(), + @{$records}[-1]->version(), 1, 0, 1, @@ -457,64 +478,86 @@ sub add_unknown_record_type $i++; splice @{$proxy->record_list}, $i, 0, $record; + $added_record = 1; } sub change_version { my $proxy = shift; + my $records = $proxy->record_list; # We'll change a version after the initial version neg has taken place - if ($proxy->flight != 2) { + if ($proxy->flight != 1) { + $fatal_alert = 1 if @{$records}[-1]->is_fatal_alert(0) == 70; return; } - (${$proxy->record_list}[-1])->version(TLSProxy::Record::VERS_TLS_1_1); + if ($#{$records} > 1) { + # ... typically in ServerHelloDone + @{$records}[-1]->version(TLSProxy::Record::VERS_TLS_1_1); + } } sub change_outer_record_type { my $proxy = shift; + my $records = $proxy->record_list; # We'll change a record after the initial version neg has taken place if ($proxy->flight != 1) { + $fatal_alert = 1 if @{$records}[-1]->is_fatal_alert(0) == 10; return; } - #Find ServerHello record and change record after that - my $i; - for ($i = 0; ${$proxy->record_list}[$i]->flight() < 1; $i++) { - next; + # Find CCS record and change record after that + my $i = 0; + foreach my $record (@{$records}) { + last if $record->content_type == TLSProxy::Record::RT_CCS; + $i++; + } + if (defined(${$records}[++$i])) { + ${$records}[$i]->outer_content_type(TLSProxy::Record::RT_HANDSHAKE); } - #Skip CCS and ServerHello - $i += 2; - ${$proxy->record_list}[$i]->outer_content_type(TLSProxy::Record::RT_HANDSHAKE); } sub not_on_record_boundary { my $proxy = shift; + my $records = $proxy->record_list; my $data; #Find server's first flight if ($proxy->flight != 1) { + $fatal_alert = 1 if @{$records}[-1]->is_fatal_alert(0) == 10; return; } if ($boundary_test_type == DATA_AFTER_SERVER_HELLO) { #Merge the ServerHello and EncryptedExtensions records into one - my $i; - for ($i = 0; ${$proxy->record_list}[$i]->flight() < 1; $i++) { - next; + my $i = 0; + foreach my $record (@{$records}) { + if ($record->content_type == TLSProxy::Record::RT_HANDSHAKE) { + $record->{sent} = 1; # pretend it's sent already + last; + } + $i++; } - $data = ${$proxy->record_list}[$i]->data(); - $data .= ${$proxy->record_list}[$i + 1]->decrypt_data(); - ${$proxy->record_list}[$i]->data($data); - ${$proxy->record_list}[$i]->len(length $data); - #Delete the old EncryptedExtensions record - splice @{$proxy->record_list}, $i + 1, 1; + if (defined(${$records}[$i+1])) { + $data = ${$records}[$i]->data(); + $data .= ${$records}[$i+1]->decrypt_data(); + ${$records}[$i+1]->data($data); + ${$records}[$i+1]->len(length $data); + + #Delete the old ServerHello record + splice @{$records}, $i, 1; + } } elsif ($boundary_test_type == DATA_AFTER_FINISHED) { - $data = ${$proxy->record_list}[-1]->decrypt_data; + return if @{$proxy->{message_list}}[-1]->{mt} + != TLSProxy::Message::MT_FINISHED; + + my $last_record = @{$records}[-1]; + $data = $last_record->decrypt_data; #Add a KeyUpdate message onto the end of the Finished record my $keyupdate = pack "C5", @@ -528,15 +571,18 @@ sub not_on_record_boundary $data .= pack("C", TLSProxy::Record::RT_HANDSHAKE).("\0"x16); #Update the record - ${$proxy->record_list}[-1]->data($data); - ${$proxy->record_list}[-1]->len(length $data); + $last_record->data($data); + $last_record->len(length $data); } else { + return if @{$proxy->{message_list}}[-1]->{mt} + != TLSProxy::Message::MT_FINISHED; + #KeyUpdates must end on a record boundary my $record = TLSProxy::Record->new( 1, TLSProxy::Record::RT_APPLICATION_DATA, - TLSProxy::Record::VERS_TLS_1_0, + TLSProxy::Record::VERS_TLS_1_2, 0, 0, 0, @@ -558,6 +604,6 @@ sub not_on_record_boundary $record->data($data); $record->len(length $data); - push @{$proxy->record_list}, $record; + push @{$records}, $record; } } diff --git a/test/recipes/70-test_sslsigalgs.t b/test/recipes/70-test_sslsigalgs.t index c1d82720..95af8a19 100644 --- a/test/recipes/70-test_sslsigalgs.t +++ b/test/recipes/70-test_sslsigalgs.t @@ -116,7 +116,7 @@ SKIP: { # should succeed $proxy->clear(); $proxy->serverflags("-no_tls1_3"); - $proxy->ciphers("ECDHE-RSA-AES128-SHA:TLS13-AES-128-GCM-SHA256"); + $proxy->ciphers("ECDHE-RSA-AES128-SHA"); $proxy->filter(undef); $proxy->start(); ok(TLSProxy::Message->success, "TLSv1.3 client TLSv1.2 server"); @@ -131,7 +131,7 @@ SKIP: { $proxy->clear(); $testtype = NO_SIG_ALGS_EXT; $proxy->clientflags("-no_tls1_3"); - $proxy->ciphers("ECDHE-RSA-AES128-SHA:TLS13-AES-128-GCM-SHA256"); + $proxy->ciphers("ECDHE-RSA-AES128-SHA"); $proxy->start(); ok(TLSProxy::Message->success, "No TLSv1.2 sigalgs"); @@ -139,7 +139,7 @@ SKIP: { $proxy->clear(); $testtype = EMPTY_SIG_ALGS_EXT; $proxy->clientflags("-no_tls1_3"); - $proxy->ciphers("ECDHE-RSA-AES128-SHA:TLS13-AES-128-GCM-SHA256"); + $proxy->ciphers("ECDHE-RSA-AES128-SHA"); $proxy->start(); ok(TLSProxy::Message->fail, "Empty TLSv1.2 sigalgs"); @@ -147,7 +147,7 @@ SKIP: { $proxy->clear(); $testtype = NO_KNOWN_SIG_ALGS; $proxy->clientflags("-no_tls1_3"); - $proxy->ciphers("ECDHE-RSA-AES128-SHA:TLS13-AES-128-GCM-SHA256"); + $proxy->ciphers("ECDHE-RSA-AES128-SHA"); $proxy->start(); ok(TLSProxy::Message->fail, "No known TLSv1.3 sigalgs"); @@ -156,7 +156,7 @@ SKIP: { $proxy->clear(); $testtype = NO_PSS_SIG_ALGS; $proxy->clientflags("-no_tls1_3"); - $proxy->ciphers("ECDHE-RSA-AES128-SHA:TLS13-AES-128-GCM-SHA256"); + $proxy->ciphers("ECDHE-RSA-AES128-SHA"); $proxy->start(); ok(TLSProxy::Message->success, "No PSS TLSv1.2 sigalgs"); @@ -164,7 +164,7 @@ SKIP: { $proxy->clear(); $testtype = PSS_ONLY_SIG_ALGS; $proxy->serverflags("-no_tls1_3"); - $proxy->ciphers("ECDHE-RSA-AES128-SHA:TLS13-AES-128-GCM-SHA256"); + $proxy->ciphers("ECDHE-RSA-AES128-SHA"); $proxy->start(); ok(TLSProxy::Message->success, "PSS only sigalgs in TLSv1.2"); @@ -175,7 +175,7 @@ SKIP: { $proxy->clear(); $testtype = PSS_ONLY_SIG_ALGS; $proxy->clientflags("-no_tls1_3 -sigalgs RSA+SHA256"); - $proxy->ciphers("ECDHE-RSA-AES128-SHA:TLS13-AES-128-GCM-SHA256"); + $proxy->ciphers("ECDHE-RSA-AES128-SHA"); $proxy->start(); ok(TLSProxy::Message->fail, "Sigalg we did not send in TLSv1.2"); @@ -183,7 +183,7 @@ SKIP: { # matches the certificate should fail in TLSv1.2 $proxy->clear(); $proxy->clientflags("-no_tls1_3 -sigalgs ECDSA+SHA256"); - $proxy->ciphers("ECDHE-RSA-AES128-SHA:TLS13-AES-128-GCM-SHA256"); + $proxy->ciphers("ECDHE-RSA-AES128-SHA"); $proxy->filter(undef); $proxy->start(); ok(TLSProxy::Message->fail, "No matching TLSv1.2 sigalgs"); @@ -197,7 +197,7 @@ SKIP: { "server-ecdsa-cert.pem") . " -key " . srctop_file("test", "certs", "server-ecdsa-key.pem")), - $proxy->ciphers("ECDHE-ECDSA-AES128-SHA:TLS13-AES-128-GCM-SHA256"); + $proxy->ciphers("ECDHE-ECDSA-AES128-SHA"); $proxy->start(); ok(TLSProxy::Message->success, "No TLSv1.2 sigalgs, ECDSA"); } diff --git a/test/recipes/70-test_sslversions.t b/test/recipes/70-test_sslversions.t index ab5a0a26..5c9ee6c6 100644 --- a/test/recipes/70-test_sslversions.t +++ b/test/recipes/70-test_sslversions.t @@ -138,7 +138,8 @@ sub modify_supported_versions_filter $ext = pack "C5", 0x04, # Length 0x03, 0x03, #TLSv1.2 - 0x03, 0x04; #TLSv1.3 + #TODO(TLS1.3): Fix before release + 0x7f, 0x1c; #TLSv1.3 (draft 28) } elsif ($testtype == UNRECOGNISED_VERSIONS) { $ext = pack "C5", 0x04, # Length @@ -152,8 +153,8 @@ sub modify_supported_versions_filter } elsif ($testtype == WITH_TLS1_4) { $ext = pack "C5", 0x04, # Length - 0x03, 0x05, #TLSv1.4 - 0x03, 0x04; #TLSv1.3 + #TODO(TLS1.3): Fix before release + 0x7f, 0x1c; #TLSv1.3 (draft 28) } if ($testtype == REVERSE_ORDER_VERSIONS || $testtype == UNRECOGNISED_VERSIONS diff --git a/test/recipes/70-test_tls13hrr.t b/test/recipes/70-test_tls13hrr.t index 56b7faf6..e0b47ed3 100644 --- a/test/recipes/70-test_tls13hrr.t +++ b/test/recipes/70-test_tls13hrr.t @@ -53,7 +53,7 @@ ok(TLSProxy::Message->fail(), "Server ciphersuite changes"); # we end up selecting a different ciphersuite between HRR and the SH $proxy->clear(); $proxy->serverflags("-curves P-256"); -$proxy->ciphers("TLS13-AES-128-GCM-SHA256:TLS13-AES-256-GCM-SHA384"); +$proxy->ciphersuitess("TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384"); $testtype = CHANGE_CH1_CIPHERSUITE; $proxy->start(); ok(TLSProxy::Message->fail(), "Client ciphersuite changes"); @@ -85,8 +85,7 @@ sub hrr_filter my $ch1 = ${$proxy->message_list}[0]; - # The server prefers TLS13-AES-256-GCM-SHA384 so it will pick that next - # time around + # The server will always pick TLS_AES_256_GCM_SHA384 my @ciphersuites = (TLSProxy::Message::CIPHER_TLS13_AES_128_GCM_SHA256); $ch1->ciphersuite_len(2 * scalar @ciphersuites); $ch1->ciphersuites(\@ciphersuites); diff --git a/test/recipes/70-test_tls13psk.t b/test/recipes/70-test_tls13psk.t index bd2508df..fedc5278 100644 --- a/test/recipes/70-test_tls13psk.t +++ b/test/recipes/70-test_tls13psk.t @@ -63,7 +63,7 @@ $proxy->start(); ok(TLSProxy::Message->fail(), "PSK not last"); #Test 3: Attempt a resume after an HRR where PSK hash matches selected -# ciperhsuite. Should see PSK on second ClientHello +# ciphersuite. Should see PSK on second ClientHello $proxy->clear(); $proxy->clientflags("-sess_in ".$session); $proxy->serverflags("-curves P-256"); @@ -82,10 +82,10 @@ $proxy->clear(); $proxy->clientflags("-sess_in ".$session); $proxy->filter(\&modify_psk_filter); $proxy->serverflags("-curves P-256"); -$proxy->cipherc("TLS13-AES-128-GCM-SHA256:TLS13-AES-256-GCM-SHA384"); -$proxy->ciphers("TLS13-AES-256-GCM-SHA384"); +$proxy->ciphersuitesc("TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384"); +$proxy->ciphersuitess("TLS_AES_256_GCM_SHA384"); #We force an early failure because TLS Proxy doesn't actually support -#TLS13-AES-256-GCM-SHA384. That doesn't matter for this test though. +#TLS_AES_256_GCM_SHA384. That doesn't matter for this test though. $testtype = ILLEGAL_EXT_SECOND_CH; $proxy->start(); #Check if the PSK is present in the second ClientHello diff --git a/test/recipes/80-test_cipherlist.t b/test/recipes/80-test_cipherlist.t index 98d537e5..5c1b1d45 100644 --- a/test/recipes/80-test_cipherlist.t +++ b/test/recipes/80-test_cipherlist.t @@ -1,6 +1,6 @@ #! /usr/bin/perl # -# Copyright 2016-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -12,11 +12,16 @@ use strict; use warnings; use OpenSSL::Test::Simple; -use OpenSSL::Test; +use OpenSSL::Test qw(:DEFAULT openssl_versions); use OpenSSL::Test::Utils qw(alldisabled available_protocols); setup("test_cipherlist"); +my ($build_version, $library_version) = openssl_versions(); +plan skip_all => + "This test recipe isn't supported when doing regression testing" + if $build_version != $library_version; + my $no_anytls = alldisabled(available_protocols("tls")); # If we have no protocols, then we also have no supported ciphers. diff --git a/test/recipes/80-test_cmsapi.t b/test/recipes/80-test_cmsapi.t new file mode 100644 index 00000000..990f8a72 --- /dev/null +++ b/test/recipes/80-test_cmsapi.t @@ -0,0 +1,21 @@ +#! /usr/bin/env perl +# Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + + +use OpenSSL::Test::Utils; +use OpenSSL::Test qw/:DEFAULT srctop_file/; + +setup("test_cmsapi"); + +plan skip_all => "CMS is disabled in this build" if disabled("cms"); + +plan tests => 1; + +ok(run(test(["cmsapitest", srctop_file("test", "certs", "servercert.pem"), + srctop_file("test", "certs", "serverkey.pem")])), + "running cmsapitest"); diff --git a/test/recipes/80-test_ssl_new.t b/test/recipes/80-test_ssl_new.t index 8d52d1b3..e15d87eb 100644 --- a/test/recipes/80-test_ssl_new.t +++ b/test/recipes/80-test_ssl_new.t @@ -68,6 +68,7 @@ my %conf_dependent_tests = ( "20-cert-select.conf" => !$is_default_tls || $no_dh || $no_dsa, "22-compression.conf" => !$is_default_tls, "25-cipher.conf" => disabled("poly1305") || disabled("chacha"), + "27-ticket-appdata.conf" => !$is_default_tls, ); # Add your test here if it should be skipped for some compile-time diff --git a/test/recipes/80-test_ssl_old.t b/test/recipes/80-test_ssl_old.t index f89779c0..377bf090 100644 --- a/test/recipes/80-test_ssl_old.t +++ b/test/recipes/80-test_ssl_old.t @@ -432,9 +432,12 @@ sub testssl { if $protocolciphersuitecount + scalar(keys %ciphersuites) == 0; # The count of protocols is because in addition to the ciphersuites - # we got above, we're running a weak DH test for each protocol - plan tests => scalar(@protocols) + $protocolciphersuitecount - + scalar(keys %ciphersuites); + # we got above, we're running a weak DH test for each protocol (except + # TLSv1.3) + my $testcount = scalar(@protocols) + $protocolciphersuitecount + + scalar(keys %ciphersuites); + $testcount-- unless $no_tls1_3; + plan tests => $testcount; foreach my $protocol (@protocols) { ok($ciphersstatus{$protocol}, "Getting ciphers for $protocol"); @@ -445,21 +448,27 @@ sub testssl { # ssltest_old doesn't know -tls1_3, but that's fine, since that's # the default choice if TLSv1.3 enabled my $flag = $protocol eq "-tls1_3" ? "" : $protocol; + my $ciphersuites = ""; foreach my $cipher (@{$ciphersuites{$protocol}}) { if ($protocol eq "-ssl3" && $cipher =~ /ECDH/ ) { note "*****SKIPPING $protocol $cipher"; ok(1); } else { + if ($protocol eq "-tls1_3") { + $ciphersuites = $cipher; + $cipher = ""; + } ok(run(test([@ssltest, @exkeys, "-cipher", $cipher, - $flag || ()])), - "Testing $cipher"); + "-ciphersuites", $ciphersuites, $flag || ()])), + "Testing $cipher"); } } + next if $protocol eq "-tls1_3"; is(run(test([@ssltest, "-s_cipher", "EDH", "-c_cipher", 'EDH:@SECLEVEL=1', "-dhe512", - $protocol eq "SSLv3" ? ("-ssl3") : ()])), 0, + $protocol])), 0, "testing connection with weak DH, expecting failure"); } }; diff --git a/test/recipes/90-test_shlibload.t b/test/recipes/90-test_shlibload.t index aa8d98de..04d52658 100644 --- a/test/recipes/90-test_shlibload.t +++ b/test/recipes/90-test_shlibload.t @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -20,7 +20,7 @@ use configdata; plan skip_all => "Test only supported in a shared build" if disabled("shared"); -plan tests => 3; +plan tests => 4; my $libcrypto_idx = $unified_info{rename}->{libcrypto} // "libcrypto"; my $libssl_idx = $unified_info{rename}->{libssl} // "libssl"; @@ -35,4 +35,6 @@ ok(run(test(["shlibloadtest", "-ssl_first", $libcrypto, $libssl])), "running shlibloadtest -ssl_first"); ok(run(test(["shlibloadtest", "-just_crypto", $libcrypto, $libssl])), "running shlibloadtest -just_crypto"); +ok(run(test(["shlibloadtest", "-dso_ref", $libcrypto, $libssl])), + "running shlibloadtest -dso_ref"); diff --git a/test/recipes/90-test_sslapi.t b/test/recipes/90-test_sslapi.t index efaae3b7..633df477 100644 --- a/test/recipes/90-test_sslapi.t +++ b/test/recipes/90-test_sslapi.t @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -9,6 +9,7 @@ use OpenSSL::Test::Utils; use OpenSSL::Test qw/:DEFAULT srctop_file/; +use File::Temp qw(tempfile); setup("test_sslapi"); @@ -17,5 +18,12 @@ plan skip_all => "No TLS/SSL protocols are supported by this OpenSSL build" plan tests => 1; +(undef, my $tmpfilename) = tempfile(); + ok(run(test(["sslapitest", srctop_file("apps", "server.pem"), - srctop_file("apps", "server.pem")])), "running sslapitest"); + srctop_file("apps", "server.pem"), + srctop_file("test", "recipes", "90-test_sslapi_data", + "passwd.txt"), $tmpfilename])), + "running sslapitest"); + +unlink $tmpfilename; diff --git a/test/recipes/90-test_sslapi_data/passwd.txt b/test/recipes/90-test_sslapi_data/passwd.txt new file mode 100644 index 00000000..b611aed2 --- /dev/null +++ b/test/recipes/90-test_sslapi_data/passwd.txt @@ -0,0 +1 @@ +V 1auIY/NQXwKWVeWaYg.YV0AaU.mpHSsZw8PWfrYT0oMTPYekTqGXu6ElyTN64DmK03V3P2yVRdhN0UBxMBujLnTauROkuEep/vp7S5xhW1VK8zg1gtJslTqOp4l.GTJF9x0WYmS6VNRnj5AVi3mgfVJ3nmzlMJUMm7niQxm5awLZZ8xykox1j6MFRa80y02Ub87A88DwqA5wrIM/Uojx9VBxUhTHC.353aBA/rL4O/179rgIBbhID08RA6uLv7pIJQVl5OjYsRu/XzQsgFFW6Wog7PaB.AATqArzXZieZxs/teOiFKPSgKI.76vvVEMQIifSj3hRuVK/immK.9hBCTHYjAv96MUmitb0ErPYJRl2MeBC8M6aHJ8FaMmak.Qv.bwyiqpEjlX1a9KjdBAKIaAswECjeP6G0Gk5v1g5D7ZmP5JUK7Wp/X9sKuZZYOsDwEGfXNmmJG6Y3TETx105HT2QMJ5ti5QCbrd71VWABmVWpHJc03YLUExw6WtYdUW0YHTbRKVntgVe2hOQD.XPtFPn2SwxbGonq1bwEvdCp22uTb5HFSC3I7amCUTZteVmMgqJAcx.x.2yfliESVvpmG.dnDFkp6vsQxch6Q1dV5rDmR4GGSy8FoPSFXc7NS0kCSs.qsTqLSmHN1XMzwrwYuVbItXBwetwxcIcdi.sFG6OLuwRUGaNOXiMwhlDHyQtVfEm3L/KIjPpzLlYRAJWF9M40FIcNsI6xiMNhvUGNO7LaBHKSV3oHlwUWWUnL7Uo/ePH8lBpGadYPxObXZ1/wOcWdJ1Rb5dB9orSSTSvoNrZyALKO.swl7pP7beYq6bUx8qtBJLaqI2zQzr1tnmJi8azVicuFtsDs363ntCRtd1LLT3CX3EBVXMbEy6xgAKWI2GL3HO6v8k3Gv96UeGFN/w5yAz61mbajDrSeJekUaKgfucV8h9tgHNlTA1kGowd2Yn/EQdVc/qSETddySqNC0mXlPW1tgb2ixV6sWbYrb5TLBUdztdw5L2D62Aal.9IjpTEKc4F/gMjYsazIX6nzpXZtWnYP7dIOpSi4c.48B2RIeDrZVMzUF.9QOF9Dk1fy5Z2X91z8J2I0GuqIWKKfwnx4xA3RbGUds1Cv2XvUA1tP7eqtvs/mTsC8KWApNSpL6K.U.Pt0ee6F76CV.ZcBXTbXl9zJZ0H1peiehzZpbuIPLZPtzIHClRQovjqdrlEUzS5VdSgCfNhEUr3ZOpG3cCKO4Lk25jZuQtoFmyxUuRAIXejLizCd727hO7rHZoD.GGm4HiNaH2jgZaftoFhfSBXvPRGYfcj.ZkiLyurNlumMXTduHImB1ZMkZ1af5dggKaQG4bJe9WbF6KYxmeRwV 1oFJIzMwXA0RFKXCGcSV0nAToL5 test 8192 A test user diff --git a/test/recipes/90-test_store.t b/test/recipes/90-test_store.t index 2a6414bd..d4535126 100644 --- a/test/recipes/90-test_store.t +++ b/test/recipes/90-test_store.t @@ -89,84 +89,89 @@ indir "store_$$" => sub { foreach (@noexist_files) { my $file = srctop_file($_); - ok(!run(app(["openssl", "storeutl", $file]))); - ok(!run(app(["openssl", "storeutl", to_abs_file($file)]))); + ok(!run(app(["openssl", "storeutl", "-noout", $file]))); + ok(!run(app(["openssl", "storeutl", "-noout", + to_abs_file($file)]))); { local $ENV{MSYS2_ARG_CONV_EXCL} = "file:"; - ok(!run(app(["openssl", "storeutl", to_abs_file_uri($file)]))); + ok(!run(app(["openssl", "storeutl", "-noout", + to_abs_file_uri($file)]))); } } foreach (@src_files) { my $file = srctop_file($_); - ok(run(app(["openssl", "storeutl", $file]))); - ok(run(app(["openssl", "storeutl", to_abs_file($file)]))); + ok(run(app(["openssl", "storeutl", "-noout", $file]))); + ok(run(app(["openssl", "storeutl", "-noout", to_abs_file($file)]))); { local $ENV{MSYS2_ARG_CONV_EXCL} = "file:"; - ok(run(app(["openssl", "storeutl", to_abs_file_uri($file)]))); - ok(run(app(["openssl", "storeutl", + ok(run(app(["openssl", "storeutl", "-noout", + to_abs_file_uri($file)]))); + ok(run(app(["openssl", "storeutl", "-noout", to_abs_file_uri($file, 0, "")]))); - ok(run(app(["openssl", "storeutl", + ok(run(app(["openssl", "storeutl", "-noout", to_abs_file_uri($file, 0, "localhost")]))); - ok(!run(app(["openssl", "storeutl", + ok(!run(app(["openssl", "storeutl", "-noout", to_abs_file_uri($file, 0, "dummy")]))); } } foreach (@generated_files) { - ok(run(app(["openssl", "storeutl", "-passin", "pass:password", - $_]))); - ok(run(app(["openssl", "storeutl", "-passin", "pass:password", - to_abs_file($_)]))); + ok(run(app(["openssl", "storeutl", "-noout", "-passin", + "pass:password", $_]))); + ok(run(app(["openssl", "storeutl", "-noout", "-passin", + "pass:password", to_abs_file($_)]))); { local $ENV{MSYS2_ARG_CONV_EXCL} = "file:"; - ok(run(app(["openssl", "storeutl", "-passin", "pass:password", - to_abs_file_uri($_)]))); - ok(!run(app(["openssl", "storeutl", "-passin", "pass:password", - to_file_uri($_)]))); + ok(run(app(["openssl", "storeutl", "-noout", "-passin", + "pass:password", to_abs_file_uri($_)]))); + ok(!run(app(["openssl", "storeutl", "-noout", "-passin", + "pass:password", to_file_uri($_)]))); } } foreach (values %generated_file_files) { local $ENV{MSYS2_ARG_CONV_EXCL} = "file:"; - ok(run(app(["openssl", "storeutl", $_]))); + ok(run(app(["openssl", "storeutl", "-noout", $_]))); } foreach (@noexist_file_files) { local $ENV{MSYS2_ARG_CONV_EXCL} = "file:"; - ok(!run(app(["openssl", "storeutl", $_]))); + ok(!run(app(["openssl", "storeutl", "-noout", $_]))); } { my $dir = srctop_dir("test", "certs"); - ok(run(app(["openssl", "storeutl", $dir]))); - ok(run(app(["openssl", "storeutl", to_abs_file($dir, 1)]))); + ok(run(app(["openssl", "storeutl", "-noout", $dir]))); + ok(run(app(["openssl", "storeutl", "-noout", + to_abs_file($dir, 1)]))); { local $ENV{MSYS2_ARG_CONV_EXCL} = "file:"; - ok(run(app(["openssl", "storeutl", to_abs_file_uri($dir, 1)]))); + ok(run(app(["openssl", "storeutl", "-noout", + to_abs_file_uri($dir, 1)]))); } } - ok(!run(app(['openssl', 'storeutl', + ok(!run(app(['openssl', 'storeutl', '-noout', '-subject', '/C=AU/ST=QLD/CN=SSLeay\/rsa test cert', srctop_file('test', 'testx509.pem')])), "Checking that -subject can't be used with a single file"); - ok(run(app(['openssl', 'storeutl', '-certs', + ok(run(app(['openssl', 'storeutl', '-certs', '-noout', srctop_file('test', 'testx509.pem')])), "Checking that -certs returns 1 object on a certificate file"); - ok(run(app(['openssl', 'storeutl', '-certs', + ok(run(app(['openssl', 'storeutl', '-certs', '-noout', srctop_file('test', 'testcrl.pem')])), "Checking that -certs returns 0 objects on a CRL file"); - ok(run(app(['openssl', 'storeutl', '-crls', + ok(run(app(['openssl', 'storeutl', '-crls', '-noout', srctop_file('test', 'testx509.pem')])), "Checking that -crls returns 0 objects on a certificate file"); - ok(run(app(['openssl', 'storeutl', '-crls', + ok(run(app(['openssl', 'storeutl', '-crls', '-noout', srctop_file('test', 'testcrl.pem')])), "Checking that -crls returns 1 object on a CRL file"); @@ -177,24 +182,24 @@ indir "store_$$" => sub { # '/C=AU/ST=QLD/CN=SSLeay\/rsa test cert' # issuer from testcrl.pem: # '/C=US/O=RSA Data Security, Inc./OU=Secure Server Certification Authority' - ok(run(app(['openssl', 'storeutl', + ok(run(app(['openssl', 'storeutl', '-noout', '-subject', '/C=AU/ST=QLD/CN=SSLeay\/rsa test cert', catdir(curdir(), 'rehash')]))); - ok(run(app(['openssl', 'storeutl', + ok(run(app(['openssl', 'storeutl', '-noout', '-subject', '/C=US/O=RSA Data Security, Inc./OU=Secure Server Certification Authority', catdir(curdir(), 'rehash')]))); - ok(run(app(['openssl', 'storeutl', '-certs', + ok(run(app(['openssl', 'storeutl', '-noout', '-certs', '-subject', '/C=AU/ST=QLD/CN=SSLeay\/rsa test cert', catdir(curdir(), 'rehash')]))); - ok(run(app(['openssl', 'storeutl', '-crls', + ok(run(app(['openssl', 'storeutl', '-noout', '-crls', '-subject', '/C=AU/ST=QLD/CN=SSLeay\/rsa test cert', catdir(curdir(), 'rehash')]))); - ok(run(app(['openssl', 'storeutl', '-certs', + ok(run(app(['openssl', 'storeutl', '-noout', '-certs', '-subject', '/C=US/O=RSA Data Security, Inc./OU=Secure Server Certification Authority', catdir(curdir(), 'rehash')]))); - ok(run(app(['openssl', 'storeutl', '-crls', + ok(run(app(['openssl', 'storeutl', '-noout', '-crls', '-subject', '/C=US/O=RSA Data Security, Inc./OU=Secure Server Certification Authority', catdir(curdir(), 'rehash')]))); diff --git a/test/recipes/90-test_sysdefault.t b/test/recipes/90-test_sysdefault.t new file mode 100644 index 00000000..a34888c1 --- /dev/null +++ b/test/recipes/90-test_sysdefault.t @@ -0,0 +1,23 @@ +#! /usr/bin/env perl +# Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + + +use OpenSSL::Test::Utils; +use OpenSSL::Test qw/:DEFAULT srctop_file/; + +my $test_name = "test_sysdefault"; +setup($test_name); + +plan skip_all => "$test_name is not supported in this build" + if disabled("tls1_2") || disabled("rsa"); + +plan tests => 1; + +$ENV{OPENSSL_CONF} = srctop_file("test", "sysdefault.cnf"); + +ok(run(test(["sysdefaulttest"])), "sysdefaulttest"); diff --git a/test/recipes/99-test_fuzz.t b/test/recipes/99-test_fuzz.t index 9322ff77..99970e39 100644 --- a/test/recipes/99-test_fuzz.t +++ b/test/recipes/99-test_fuzz.t @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -26,14 +26,14 @@ plan tests => scalar @fuzzers; foreach my $f (@fuzzers) { subtest "Fuzzing $f" => sub { - my @files = glob(srctop_file('fuzz', 'corpora', $f, '*')); - push @files, glob(srctop_file('fuzz', 'corpora', "$f-*", '*')); + my @dirs = glob(srctop_file('fuzz', 'corpora', $f)); + push @dirs, glob(srctop_file('fuzz', 'corpora', "$f-*")); - plan skip_all => "No corpora for $f-test" unless @files; + plan skip_all => "No corpora for $f-test" unless @dirs; - plan tests => scalar @files; + plan tests => scalar @dirs; - foreach (@files) { + foreach (@dirs) { ok(run(fuzz(["$f-test", $_]))); } } diff --git a/test/recordlentest.c b/test/recordlentest.c index d0941ca4..457335d3 100644 --- a/test/recordlentest.c +++ b/test/recordlentest.c @@ -1,5 +1,5 @@ /* - * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -103,6 +103,7 @@ static int test_record_overflow(int idx) ERR_clear_error(); if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, &sctx, &cctx, cert, privkey))) goto end; @@ -157,11 +158,7 @@ static int test_record_overflow(int idx) overf_expected = 0; } - if (idx == TEST_ENCRYPTED_OVERFLOW_TLS1_3_OK - || idx == TEST_ENCRYPTED_OVERFLOW_TLS1_3_NOT_OK) - recversion = TLS1_VERSION; - else - recversion = TLS1_2_VERSION; + recversion = TLS1_2_VERSION; if (!TEST_true(write_record(serverbio, len, SSL3_RT_APPLICATION_DATA, recversion))) diff --git a/test/run_tests.pl b/test/run_tests.pl index 6343ec7b..881feaec 100644 --- a/test/run_tests.pl +++ b/test/run_tests.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -28,6 +28,8 @@ my $bldtop = $ENV{BLDTOP} || $ENV{TOP}; my $recipesdir = catdir($srctop, "test", "recipes"); my $libdir = rel2abs(catdir($srctop, "util", "perl")); +$ENV{OPENSSL_CONF} = catdir($srctop, "apps", "openssl.cnf"); + my %tapargs = ( verbosity => $ENV{VERBOSE} || $ENV{V} || $ENV{HARNESS_VERBOSE} ? 1 : 0, lib => [ $libdir ], diff --git a/test/shlibloadtest.c b/test/shlibloadtest.c index 5f8ec55a..aad90e65 100644 --- a/test/shlibloadtest.c +++ b/test/shlibloadtest.c @@ -1,5 +1,5 @@ /* - * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -13,18 +13,24 @@ #include #include #include +#include "internal/dso_conf.h" #include "testutil.h" +typedef void DSO; + typedef const SSL_METHOD * (*TLS_method_t)(void); typedef SSL_CTX * (*SSL_CTX_new_t)(const SSL_METHOD *meth); typedef void (*SSL_CTX_free_t)(SSL_CTX *); typedef unsigned long (*ERR_get_error_t)(void); typedef unsigned long (*OpenSSL_version_num_t)(void); +typedef DSO * (*DSO_dsobyaddr_t)(void (*addr)(void), int flags); +typedef int (*DSO_free_t)(DSO *dso); typedef enum test_types_en { CRYPTO_FIRST, SSL_FIRST, - JUST_CRYPTO + JUST_CRYPTO, + DSO_REFTEST } TEST_TYPE; static TEST_TYPE test_type; @@ -119,9 +125,13 @@ static int test_lib(void) || !TEST_true(shlib_load(path_crypto, &cryptolib))) goto end; break; + case DSO_REFTEST: + if (!TEST_true(shlib_load(path_crypto, &cryptolib))) + goto end; + break; } - if (test_type != JUST_CRYPTO) { + if (test_type != JUST_CRYPTO && test_type != DSO_REFTEST) { if (!TEST_true(shlib_sym(ssllib, "TLS_method", &symbols[0].sym)) || !TEST_true(shlib_sym(ssllib, "SSL_CTX_new", &symbols[1].sym)) || !TEST_true(shlib_sym(ssllib, "SSL_CTX_free", &symbols[2].sym))) @@ -141,9 +151,52 @@ static int test_lib(void) myERR_get_error = (ERR_get_error_t)symbols[0].func; if (!TEST_int_eq(myERR_get_error(), 0)) goto end; + + /* + * The bits that COMPATIBILITY_MASK lets through MUST be the same in + * the library and in the application. + * The bits that are masked away MUST be a larger or equal number in + * the library compared to the application. + */ +# define COMPATIBILITY_MASK 0xfff00000L myOpenSSL_version_num = (OpenSSL_version_num_t)symbols[1].func; - if (!TEST_int_eq(myOpenSSL_version_num(), OPENSSL_VERSION_NUMBER)) + if (!TEST_int_eq(myOpenSSL_version_num() & COMPATIBILITY_MASK, + OPENSSL_VERSION_NUMBER & COMPATIBILITY_MASK)) goto end; + if (!TEST_int_ge(myOpenSSL_version_num() & ~COMPATIBILITY_MASK, + OPENSSL_VERSION_NUMBER & ~COMPATIBILITY_MASK)) + goto end; + + if (test_type == DSO_REFTEST) { +# ifdef DSO_DLFCN + DSO_dsobyaddr_t myDSO_dsobyaddr; + DSO_free_t myDSO_free; + + /* + * This is resembling the code used in ossl_init_base() and + * OPENSSL_atexit() to block unloading the library after dlclose(). + * We are not testing this on Windows, because it is done there in a + * completely different way. Especially as a call to DSO_dsobyaddr() + * will always return an error, because DSO_pathbyaddr() is not + * implemented there. + */ + if (!TEST_true(shlib_sym(cryptolib, "DSO_dsobyaddr", &symbols[0].sym)) + || !TEST_true(shlib_sym(cryptolib, "DSO_free", + &symbols[1].sym))) + goto end; + + myDSO_dsobyaddr = (DSO_dsobyaddr_t)symbols[0].func; + myDSO_free = (DSO_free_t)symbols[1].func; + + { + DSO *hndl; + /* use known symbol from crypto module */ + if (!TEST_ptr(hndl = myDSO_dsobyaddr((void (*)(void))ERR_get_error, 0))) + goto end; + myDSO_free(hndl); + } +# endif /* DSO_DLFCN */ + } switch (test_type) { case JUST_CRYPTO: @@ -160,6 +213,10 @@ static int test_lib(void) || !TEST_true(shlib_close(cryptolib))) goto end; break; + case DSO_REFTEST: + if (!TEST_true(shlib_close(cryptolib))) + goto end; + break; } result = 1; @@ -179,6 +236,8 @@ int setup_tests(void) test_type = SSL_FIRST; } else if (strcmp(p, "-just_crypto") == 0) { test_type = JUST_CRYPTO; + } else if (strcmp(p, "-dso_ref") == 0) { + test_type = JUST_CRYPTO; } else { TEST_error("Unrecognised argument"); return 0; diff --git a/test/sm2crypttest.c b/test/sm2crypttest.c new file mode 100644 index 00000000..cd72cb09 --- /dev/null +++ b/test/sm2crypttest.c @@ -0,0 +1,254 @@ +/* + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include "testutil.h" + +#ifndef OPENSSL_NO_SM2 + +# include + +static RAND_METHOD fake_rand; +static const RAND_METHOD *saved_rand; + +static uint8_t *fake_rand_bytes = NULL; +static size_t fake_rand_bytes_offset = 0; + +static int get_faked_bytes(unsigned char *buf, int num) +{ + int i; + + if (fake_rand_bytes == NULL) + return saved_rand->bytes(buf, num); + + for (i = 0; i != num; ++i) + buf[i] = fake_rand_bytes[fake_rand_bytes_offset + i]; + fake_rand_bytes_offset += num; + return 1; +} + +static int start_fake_rand(const char *hex_bytes) +{ + /* save old rand method */ + if (!TEST_ptr(saved_rand = RAND_get_rand_method())) + return 0; + + fake_rand = *saved_rand; + /* use own random function */ + fake_rand.bytes = get_faked_bytes; + + fake_rand_bytes = OPENSSL_hexstr2buf(hex_bytes, NULL); + fake_rand_bytes_offset = 0; + + /* set new RAND_METHOD */ + if (!TEST_true(RAND_set_rand_method(&fake_rand))) + return 0; + return 1; +} + +static int restore_rand(void) +{ + OPENSSL_free(fake_rand_bytes); + fake_rand_bytes = NULL; + fake_rand_bytes_offset = 0; + if (!TEST_true(RAND_set_rand_method(saved_rand))) + return 0; + return 1; +} + +static EC_GROUP *create_EC_group(const char *p_hex, const char *a_hex, + const char *b_hex, const char *x_hex, + const char *y_hex, const char *order_hex, + const char *cof_hex) +{ + BIGNUM *p = NULL; + BIGNUM *a = NULL; + BIGNUM *b = NULL; + BIGNUM *g_x = NULL; + BIGNUM *g_y = NULL; + BIGNUM *order = NULL; + BIGNUM *cof = NULL; + EC_POINT *generator = NULL; + EC_GROUP *group = NULL; + + BN_hex2bn(&p, p_hex); + BN_hex2bn(&a, a_hex); + BN_hex2bn(&b, b_hex); + + group = EC_GROUP_new_curve_GFp(p, a, b, NULL); + BN_free(p); + BN_free(a); + BN_free(b); + + if (group == NULL) + return NULL; + + generator = EC_POINT_new(group); + if (generator == NULL) + return NULL; + + BN_hex2bn(&g_x, x_hex); + BN_hex2bn(&g_y, y_hex); + + if (EC_POINT_set_affine_coordinates_GFp(group, generator, g_x, g_y, NULL) == + 0) + return NULL; + + BN_free(g_x); + BN_free(g_y); + + BN_hex2bn(&order, order_hex); + BN_hex2bn(&cof, cof_hex); + + if (EC_GROUP_set_generator(group, generator, order, cof) == 0) + return NULL; + + EC_POINT_free(generator); + BN_free(order); + BN_free(cof); + + return group; +} + +static int test_sm2(const EC_GROUP *group, + const EVP_MD *digest, + const char *privkey_hex, + const char *message, + const char *k_hex, const char *ctext_hex) +{ + const size_t msg_len = strlen(message); + + BIGNUM *priv = NULL; + EC_KEY *key = NULL; + EC_POINT *pt = NULL; + unsigned char *expected = OPENSSL_hexstr2buf(ctext_hex, NULL); + + size_t ctext_len = 0; + size_t ptext_len = 0; + uint8_t *ctext = NULL; + uint8_t *recovered = NULL; + size_t recovered_len = msg_len; + + int rc = 0; + + BN_hex2bn(&priv, privkey_hex); + + key = EC_KEY_new(); + EC_KEY_set_group(key, group); + EC_KEY_set_private_key(key, priv); + + pt = EC_POINT_new(group); + EC_POINT_mul(group, pt, priv, NULL, NULL, NULL); + + EC_KEY_set_public_key(key, pt); + BN_free(priv); + EC_POINT_free(pt); + + ctext_len = SM2_ciphertext_size(key, digest, msg_len); + ctext = OPENSSL_zalloc(ctext_len); + if (ctext == NULL) + goto done; + + start_fake_rand(k_hex); + rc = SM2_encrypt(key, digest, + (const uint8_t *)message, msg_len, ctext, &ctext_len); + restore_rand(); + + TEST_mem_eq(ctext, ctext_len, expected, ctext_len); + if (rc == 0) + goto done; + + ptext_len = SM2_plaintext_size(key, digest, ctext_len); + + TEST_int_eq(ptext_len, msg_len); + + recovered = OPENSSL_zalloc(ptext_len); + if (recovered == NULL) + goto done; + rc = SM2_decrypt(key, digest, ctext, ctext_len, recovered, &recovered_len); + + TEST_int_eq(recovered_len, msg_len); + TEST_mem_eq(recovered, recovered_len, message, msg_len); + if (rc == 0) + return 0; + + rc = 1; + done: + + OPENSSL_free(ctext); + OPENSSL_free(recovered); + OPENSSL_free(expected); + EC_KEY_free(key); + return rc; +} + +static int sm2_crypt_test(void) +{ + int rc; + EC_GROUP *test_group = + create_EC_group + ("8542D69E4C044F18E8B92435BF6FF7DE457283915C45517D722EDB8B08F1DFC3", + "787968B4FA32C3FD2417842E73BBFEFF2F3C848B6831D7E0EC65228B3937E498", + "63E4C6D3B23B0C849CF84241484BFE48F61D59A5B16BA06E6E12D1DA27C5249A", + "421DEBD61B62EAB6746434EBC3CC315E32220B3BADD50BDC4C4E6C147FEDD43D", + "0680512BCBB42C07D47349D2153B70C4E5D7FDFCBFA36EA1A85841B9E46E09A2", + "8542D69E4C044F18E8B92435BF6FF7DD297720630485628D5AE74EE7C32E79B7", + "1"); + + if (test_group == NULL) + return 0; + + rc = test_sm2(test_group, + EVP_sm3(), + "1649AB77A00637BD5E2EFE283FBF353534AA7F7CB89463F208DDBC2920BB0DA0", + "encryption standard", + "004C62EEFD6ECFC2B95B92FD6C3D9575148AFA17425546D49018E5388D49DD7B4F", + "307B0220245C26FB68B1DDDDB12C4B6BF9F2B6D5FE60A383B0D18D1C4144ABF1" + "7F6252E7022076CB9264C2A7E88E52B19903FDC47378F605E36811F5C07423A2" + "4B84400F01B804209C3D7360C30156FAB7C80A0276712DA9D8094A634B766D3A" + "285E07480653426D0413650053A89B41C418B0C3AAD00D886C00286467"); + + if (rc == 0) + return 0; + + /* Same test as above except using SHA-256 instead of SM3 */ + rc = test_sm2(test_group, + EVP_sha256(), + "1649AB77A00637BD5E2EFE283FBF353534AA7F7CB89463F208DDBC2920BB0DA0", + "encryption standard", + "004C62EEFD6ECFC2B95B92FD6C3D9575148AFA17425546D49018E5388D49DD7B4F", + "307B0220245C26FB68B1DDDDB12C4B6BF9F2B6D5FE60A383B0D18D1C4144ABF17F6252E7022076CB9264C2A7E88E52B19903FDC47378F605E36811F5C07423A24B84400F01B80420BE89139D07853100EFA763F60CBE30099EA3DF7F8F364F9D10A5E988E3C5AAFC0413229E6C9AEE2BB92CAD649FE2C035689785DA33"); + if (rc == 0) + return 0; + + EC_GROUP_free(test_group); + + return 1; +} + +#endif + +int setup_tests(void) +{ +#ifdef OPENSSL_NO_SM2 + TEST_note("SM2 is disabled."); +#else + ADD_TEST(sm2_crypt_test); +#endif + return 1; +} diff --git a/test/sm2sigtest.c b/test/sm2sigtest.c new file mode 100644 index 00000000..33be7831 --- /dev/null +++ b/test/sm2sigtest.c @@ -0,0 +1,238 @@ +/* + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017 Ribose Inc. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include "testutil.h" + +#ifndef OPENSSL_NO_SM2 + +# include + +static RAND_METHOD fake_rand; +static const RAND_METHOD *saved_rand; + +static uint8_t *fake_rand_bytes = NULL; +static size_t fake_rand_bytes_offset = 0; + +static int get_faked_bytes(unsigned char *buf, int num) +{ + int i; + + if (fake_rand_bytes == NULL) + return saved_rand->bytes(buf, num); + + for (i = 0; i != num; ++i) + buf[i] = fake_rand_bytes[fake_rand_bytes_offset + i]; + fake_rand_bytes_offset += num; + return 1; +} + +static int start_fake_rand(const char *hex_bytes) +{ + /* save old rand method */ + if (!TEST_ptr(saved_rand = RAND_get_rand_method())) + return 0; + + fake_rand = *saved_rand; + /* use own random function */ + fake_rand.bytes = get_faked_bytes; + + fake_rand_bytes = OPENSSL_hexstr2buf(hex_bytes, NULL); + fake_rand_bytes_offset = 0; + + /* set new RAND_METHOD */ + if (!TEST_true(RAND_set_rand_method(&fake_rand))) + return 0; + return 1; +} + +static int restore_rand(void) +{ + OPENSSL_free(fake_rand_bytes); + fake_rand_bytes = NULL; + fake_rand_bytes_offset = 0; + if (!TEST_true(RAND_set_rand_method(saved_rand))) + return 0; + return 1; +} + +static EC_GROUP *create_EC_group(const char *p_hex, const char *a_hex, + const char *b_hex, const char *x_hex, + const char *y_hex, const char *order_hex, + const char *cof_hex) +{ + BIGNUM *p = NULL; + BIGNUM *a = NULL; + BIGNUM *b = NULL; + BIGNUM *g_x = NULL; + BIGNUM *g_y = NULL; + BIGNUM *order = NULL; + BIGNUM *cof = NULL; + EC_POINT *generator = NULL; + EC_GROUP *group = NULL; + + BN_hex2bn(&p, p_hex); + BN_hex2bn(&a, a_hex); + BN_hex2bn(&b, b_hex); + + group = EC_GROUP_new_curve_GFp(p, a, b, NULL); + BN_free(p); + BN_free(a); + BN_free(b); + + if (group == NULL) + return NULL; + + generator = EC_POINT_new(group); + if (generator == NULL) + return NULL; + + BN_hex2bn(&g_x, x_hex); + BN_hex2bn(&g_y, y_hex); + + if (EC_POINT_set_affine_coordinates_GFp(group, generator, g_x, g_y, NULL) == + 0) + return NULL; + + BN_free(g_x); + BN_free(g_y); + + BN_hex2bn(&order, order_hex); + BN_hex2bn(&cof, cof_hex); + + if (EC_GROUP_set_generator(group, generator, order, cof) == 0) + return NULL; + + EC_POINT_free(generator); + BN_free(order); + BN_free(cof); + + return group; +} + + +static int test_sm2(const EC_GROUP *group, + const char *userid, + const char *privkey_hex, + const char *message, + const char *k_hex, const char *r_hex, const char *s_hex) +{ + const size_t msg_len = strlen(message); + int ok = -1; + BIGNUM *priv = NULL; + EC_POINT *pt = NULL; + EC_KEY *key = NULL; + ECDSA_SIG *sig = NULL; + const BIGNUM *sig_r = NULL; + const BIGNUM *sig_s = NULL; + BIGNUM *r = NULL; + BIGNUM *s = NULL; + + BN_hex2bn(&priv, privkey_hex); + + key = EC_KEY_new(); + EC_KEY_set_group(key, group); + EC_KEY_set_private_key(key, priv); + + pt = EC_POINT_new(group); + EC_POINT_mul(group, pt, priv, NULL, NULL, NULL); + EC_KEY_set_public_key(key, pt); + + start_fake_rand(k_hex); + sig = SM2_do_sign(key, EVP_sm3(), userid, (const uint8_t *)message, msg_len); + restore_rand(); + + if (sig == NULL) + return 0; + + ECDSA_SIG_get0(sig, &sig_r, &sig_s); + + BN_hex2bn(&r, r_hex); + BN_hex2bn(&s, s_hex); + + if (BN_cmp(r, sig_r) != 0) { + printf("Signature R mismatch: "); + BN_print_fp(stdout, r); + printf(" != "); + BN_print_fp(stdout, sig_r); + printf("\n"); + ok = 0; + } + if (BN_cmp(s, sig_s) != 0) { + printf("Signature S mismatch: "); + BN_print_fp(stdout, s); + printf(" != "); + BN_print_fp(stdout, sig_s); + printf("\n"); + ok = 0; + } + + ok = SM2_do_verify(key, EVP_sm3(), sig, userid, (const uint8_t *)message, msg_len); + + ECDSA_SIG_free(sig); + EC_POINT_free(pt); + EC_KEY_free(key); + BN_free(priv); + BN_free(r); + BN_free(s); + + return ok; +} + +static int sm2_sig_test(void) +{ + int rc = 0; + /* From draft-shen-sm2-ecdsa-02 */ + EC_GROUP *test_group = + create_EC_group + ("8542D69E4C044F18E8B92435BF6FF7DE457283915C45517D722EDB8B08F1DFC3", + "787968B4FA32C3FD2417842E73BBFEFF2F3C848B6831D7E0EC65228B3937E498", + "63E4C6D3B23B0C849CF84241484BFE48F61D59A5B16BA06E6E12D1DA27C5249A", + "421DEBD61B62EAB6746434EBC3CC315E32220B3BADD50BDC4C4E6C147FEDD43D", + "0680512BCBB42C07D47349D2153B70C4E5D7FDFCBFA36EA1A85841B9E46E09A2", + "8542D69E4C044F18E8B92435BF6FF7DD297720630485628D5AE74EE7C32E79B7", + "1"); + + if (test_group == NULL) + return 0; + + rc = test_sm2(test_group, + "ALICE123@YAHOO.COM", + "128B2FA8BD433C6C068C8D803DFF79792A519A55171B1B650C23661D15897263", + "message digest", + "006CB28D99385C175C94F94E934817663FC176D925DD72B727260DBAAE1FB2F96F", + "40F1EC59F793D9F49E09DCEF49130D4194F79FB1EED2CAA55BACDB49C4E755D1", + "6FC6DAC32C5D5CF10C77DFB20F7C2EB667A457872FB09EC56327A67EC7DEEBE7"); + + EC_GROUP_free(test_group); + + return rc; +} + +#endif + +int setup_tests(void) +{ +#ifdef OPENSSL_NO_SM2 + TEST_note("SM2 is disabled."); +#else + ADD_TEST(sm2_sig_test); +#endif + return 1; +} diff --git a/test/ssl-tests/02-protocol-version.conf b/test/ssl-tests/02-protocol-version.conf index d0a64cdb..4b7d7df2 100644 --- a/test/ssl-tests/02-protocol-version.conf +++ b/test/ssl-tests/02-protocol-version.conf @@ -18787,6 +18787,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [676-ciphersuite-sanity-check-client-client] CipherString = AES128-SHA +Ciphersuites = VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer @@ -18806,6 +18807,7 @@ client = 677-ciphersuite-sanity-check-server-client [677-ciphersuite-sanity-check-server-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = AES128-SHA +Ciphersuites = PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem [677-ciphersuite-sanity-check-server-client] diff --git a/test/ssl-tests/20-cert-select.conf b/test/ssl-tests/20-cert-select.conf index 1f415bfe..0a92bf82 100644 --- a/test/ssl-tests/20-cert-select.conf +++ b/test/ssl-tests/20-cert-select.conf @@ -1,52 +1,54 @@ # Generated with generate_ssl_tests.pl -num_tests = 45 +num_tests = 47 test-0 = 0-ECDSA CipherString Selection -test-1 = 1-Ed25519 CipherString and Signature Algorithm Selection -test-2 = 2-Ed448 CipherString and Signature Algorithm Selection -test-3 = 3-RSA CipherString Selection -test-4 = 4-RSA-PSS Certificate CipherString Selection -test-5 = 5-P-256 CipherString and Signature Algorithm Selection -test-6 = 6-Ed25519 CipherString and Curves Selection -test-7 = 7-Ed448 CipherString and Curves Selection -test-8 = 8-ECDSA CipherString Selection, no ECDSA certificate -test-9 = 9-ECDSA Signature Algorithm Selection -test-10 = 10-ECDSA Signature Algorithm Selection SHA384 -test-11 = 11-ECDSA Signature Algorithm Selection SHA1 -test-12 = 12-ECDSA Signature Algorithm Selection compressed point -test-13 = 13-ECDSA Signature Algorithm Selection, no ECDSA certificate -test-14 = 14-RSA Signature Algorithm Selection -test-15 = 15-RSA-PSS Signature Algorithm Selection -test-16 = 16-RSA-PSS Certificate Legacy Signature Algorithm Selection -test-17 = 17-RSA-PSS Certificate Unified Signature Algorithm Selection -test-18 = 18-Only RSA-PSS Certificate -test-19 = 19-RSA-PSS Certificate, no PSS signature algorithms -test-20 = 20-Suite B P-256 Hash Algorithm Selection -test-21 = 21-Suite B P-384 Hash Algorithm Selection -test-22 = 22-TLS 1.2 Ed25519 Client Auth -test-23 = 23-TLS 1.2 Ed448 Client Auth -test-24 = 24-Only RSA-PSS Certificate, TLS v1.1 -test-25 = 25-TLS 1.3 ECDSA Signature Algorithm Selection -test-26 = 26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point -test-27 = 27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1 -test-28 = 28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS -test-29 = 29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS -test-30 = 30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate -test-31 = 31-TLS 1.3 RSA Signature Algorithm Selection, no PSS -test-32 = 32-TLS 1.3 RSA-PSS Signature Algorithm Selection -test-33 = 33-TLS 1.3 Ed25519 Signature Algorithm Selection -test-34 = 34-TLS 1.3 Ed448 Signature Algorithm Selection -test-35 = 35-TLS 1.3 Ed25519 CipherString and Groups Selection -test-36 = 36-TLS 1.3 Ed448 CipherString and Groups Selection -test-37 = 37-TLS 1.3 RSA Client Auth Signature Algorithm Selection -test-38 = 38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names -test-39 = 39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection -test-40 = 40-TLS 1.3 Ed25519 Client Auth -test-41 = 41-TLS 1.3 Ed448 Client Auth -test-42 = 42-TLS 1.2 DSA Certificate Test -test-43 = 43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms -test-44 = 44-TLS 1.3 DSA Certificate Test +test-1 = 1-ECDSA CipherString Selection +test-2 = 2-ECDSA CipherString Selection +test-3 = 3-Ed25519 CipherString and Signature Algorithm Selection +test-4 = 4-Ed448 CipherString and Signature Algorithm Selection +test-5 = 5-RSA CipherString Selection +test-6 = 6-RSA-PSS Certificate CipherString Selection +test-7 = 7-P-256 CipherString and Signature Algorithm Selection +test-8 = 8-Ed25519 CipherString and Curves Selection +test-9 = 9-Ed448 CipherString and Curves Selection +test-10 = 10-ECDSA CipherString Selection, no ECDSA certificate +test-11 = 11-ECDSA Signature Algorithm Selection +test-12 = 12-ECDSA Signature Algorithm Selection SHA384 +test-13 = 13-ECDSA Signature Algorithm Selection SHA1 +test-14 = 14-ECDSA Signature Algorithm Selection compressed point +test-15 = 15-ECDSA Signature Algorithm Selection, no ECDSA certificate +test-16 = 16-RSA Signature Algorithm Selection +test-17 = 17-RSA-PSS Signature Algorithm Selection +test-18 = 18-RSA-PSS Certificate Legacy Signature Algorithm Selection +test-19 = 19-RSA-PSS Certificate Unified Signature Algorithm Selection +test-20 = 20-Only RSA-PSS Certificate +test-21 = 21-RSA-PSS Certificate, no PSS signature algorithms +test-22 = 22-Suite B P-256 Hash Algorithm Selection +test-23 = 23-Suite B P-384 Hash Algorithm Selection +test-24 = 24-TLS 1.2 Ed25519 Client Auth +test-25 = 25-TLS 1.2 Ed448 Client Auth +test-26 = 26-Only RSA-PSS Certificate, TLS v1.1 +test-27 = 27-TLS 1.3 ECDSA Signature Algorithm Selection +test-28 = 28-TLS 1.3 ECDSA Signature Algorithm Selection compressed point +test-29 = 29-TLS 1.3 ECDSA Signature Algorithm Selection SHA1 +test-30 = 30-TLS 1.3 ECDSA Signature Algorithm Selection with PSS +test-31 = 31-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS +test-32 = 32-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate +test-33 = 33-TLS 1.3 RSA Signature Algorithm Selection, no PSS +test-34 = 34-TLS 1.3 RSA-PSS Signature Algorithm Selection +test-35 = 35-TLS 1.3 Ed25519 Signature Algorithm Selection +test-36 = 36-TLS 1.3 Ed448 Signature Algorithm Selection +test-37 = 37-TLS 1.3 Ed25519 CipherString and Groups Selection +test-38 = 38-TLS 1.3 Ed448 CipherString and Groups Selection +test-39 = 39-TLS 1.3 RSA Client Auth Signature Algorithm Selection +test-40 = 40-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names +test-41 = 41-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection +test-42 = 42-TLS 1.3 Ed25519 Client Auth +test-43 = 43-TLS 1.3 Ed448 Client Auth +test-44 = 44-TLS 1.2 DSA Certificate Test +test-45 = 45-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms +test-46 = 46-TLS 1.3 DSA Certificate Test # =========================================================== [0-ECDSA CipherString Selection] @@ -84,14 +86,77 @@ ExpectedServerSignType = EC # =========================================================== -[1-Ed25519 CipherString and Signature Algorithm Selection] -ssl_conf = 1-Ed25519 CipherString and Signature Algorithm Selection-ssl +[1-ECDSA CipherString Selection] +ssl_conf = 1-ECDSA CipherString Selection-ssl -[1-Ed25519 CipherString and Signature Algorithm Selection-ssl] -server = 1-Ed25519 CipherString and Signature Algorithm Selection-server -client = 1-Ed25519 CipherString and Signature Algorithm Selection-client +[1-ECDSA CipherString Selection-ssl] +server = 1-ECDSA CipherString Selection-server +client = 1-ECDSA CipherString Selection-client -[1-Ed25519 CipherString and Signature Algorithm Selection-server] +[1-ECDSA CipherString Selection-server] +Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +CipherString = DEFAULT +ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem +ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem +Groups = P-384 +MaxProtocol = TLSv1.2 +PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem + +[1-ECDSA CipherString Selection-client] +CipherString = aECDSA +Groups = P-256:P-384 +MaxProtocol = TLSv1.2 +RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyMode = Peer + +[test-1] +ExpectedResult = Success +ExpectedServerCANames = empty +ExpectedServerCertType = P-256 +ExpectedServerSignType = EC + + +# =========================================================== + +[2-ECDSA CipherString Selection] +ssl_conf = 2-ECDSA CipherString Selection-ssl + +[2-ECDSA CipherString Selection-ssl] +server = 2-ECDSA CipherString Selection-server +client = 2-ECDSA CipherString Selection-client + +[2-ECDSA CipherString Selection-server] +Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +CipherString = DEFAULT +ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem +ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem +Groups = P-256:P-384 +MaxProtocol = TLSv1.2 +PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem + +[2-ECDSA CipherString Selection-client] +CipherString = aECDSA +Groups = P-384 +MaxProtocol = TLSv1.2 +RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyMode = Peer + +[test-2] +ExpectedResult = ServerFail + + +# =========================================================== + +[3-Ed25519 CipherString and Signature Algorithm Selection] +ssl_conf = 3-Ed25519 CipherString and Signature Algorithm Selection-ssl + +[3-Ed25519 CipherString and Signature Algorithm Selection-ssl] +server = 3-Ed25519 CipherString and Signature Algorithm Selection-server +client = 3-Ed25519 CipherString and Signature Algorithm Selection-client + +[3-Ed25519 CipherString and Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -103,7 +168,7 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[1-Ed25519 CipherString and Signature Algorithm Selection-client] +[3-Ed25519 CipherString and Signature Algorithm Selection-client] CipherString = aECDSA MaxProtocol = TLSv1.2 RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem @@ -111,7 +176,7 @@ SignatureAlgorithms = ed25519:ECDSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-1] +[test-3] ExpectedResult = Success ExpectedServerCANames = empty ExpectedServerCertType = Ed25519 @@ -120,14 +185,14 @@ ExpectedServerSignType = Ed25519 # =========================================================== -[2-Ed448 CipherString and Signature Algorithm Selection] -ssl_conf = 2-Ed448 CipherString and Signature Algorithm Selection-ssl +[4-Ed448 CipherString and Signature Algorithm Selection] +ssl_conf = 4-Ed448 CipherString and Signature Algorithm Selection-ssl -[2-Ed448 CipherString and Signature Algorithm Selection-ssl] -server = 2-Ed448 CipherString and Signature Algorithm Selection-server -client = 2-Ed448 CipherString and Signature Algorithm Selection-client +[4-Ed448 CipherString and Signature Algorithm Selection-ssl] +server = 4-Ed448 CipherString and Signature Algorithm Selection-server +client = 4-Ed448 CipherString and Signature Algorithm Selection-client -[2-Ed448 CipherString and Signature Algorithm Selection-server] +[4-Ed448 CipherString and Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -139,7 +204,7 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[2-Ed448 CipherString and Signature Algorithm Selection-client] +[4-Ed448 CipherString and Signature Algorithm Selection-client] CipherString = aECDSA MaxProtocol = TLSv1.2 RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem @@ -147,7 +212,7 @@ SignatureAlgorithms = ed448:ECDSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-2] +[test-4] ExpectedResult = Success ExpectedServerCANames = empty ExpectedServerCertType = Ed448 @@ -156,14 +221,14 @@ ExpectedServerSignType = Ed448 # =========================================================== -[3-RSA CipherString Selection] -ssl_conf = 3-RSA CipherString Selection-ssl +[5-RSA CipherString Selection] +ssl_conf = 5-RSA CipherString Selection-ssl -[3-RSA CipherString Selection-ssl] -server = 3-RSA CipherString Selection-server -client = 3-RSA CipherString Selection-client +[5-RSA CipherString Selection-ssl] +server = 5-RSA CipherString Selection-server +client = 5-RSA CipherString Selection-client -[3-RSA CipherString Selection-server] +[5-RSA CipherString Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -175,13 +240,13 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[3-RSA CipherString Selection-client] +[5-RSA CipherString Selection-client] CipherString = aRSA MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-3] +[test-5] ExpectedResult = Success ExpectedServerCertType = RSA ExpectedServerSignType = RSA-PSS @@ -189,14 +254,14 @@ ExpectedServerSignType = RSA-PSS # =========================================================== -[4-RSA-PSS Certificate CipherString Selection] -ssl_conf = 4-RSA-PSS Certificate CipherString Selection-ssl +[6-RSA-PSS Certificate CipherString Selection] +ssl_conf = 6-RSA-PSS Certificate CipherString Selection-ssl -[4-RSA-PSS Certificate CipherString Selection-ssl] -server = 4-RSA-PSS Certificate CipherString Selection-server -client = 4-RSA-PSS Certificate CipherString Selection-client +[6-RSA-PSS Certificate CipherString Selection-ssl] +server = 6-RSA-PSS Certificate CipherString Selection-server +client = 6-RSA-PSS Certificate CipherString Selection-client -[4-RSA-PSS Certificate CipherString Selection-server] +[6-RSA-PSS Certificate CipherString Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -210,13 +275,13 @@ PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[4-RSA-PSS Certificate CipherString Selection-client] +[6-RSA-PSS Certificate CipherString Selection-client] CipherString = aRSA MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-4] +[test-6] ExpectedResult = Success ExpectedServerCertType = RSA-PSS ExpectedServerSignType = RSA-PSS @@ -224,14 +289,14 @@ ExpectedServerSignType = RSA-PSS # =========================================================== -[5-P-256 CipherString and Signature Algorithm Selection] -ssl_conf = 5-P-256 CipherString and Signature Algorithm Selection-ssl +[7-P-256 CipherString and Signature Algorithm Selection] +ssl_conf = 7-P-256 CipherString and Signature Algorithm Selection-ssl -[5-P-256 CipherString and Signature Algorithm Selection-ssl] -server = 5-P-256 CipherString and Signature Algorithm Selection-server -client = 5-P-256 CipherString and Signature Algorithm Selection-client +[7-P-256 CipherString and Signature Algorithm Selection-ssl] +server = 7-P-256 CipherString and Signature Algorithm Selection-server +client = 7-P-256 CipherString and Signature Algorithm Selection-client -[5-P-256 CipherString and Signature Algorithm Selection-server] +[7-P-256 CipherString and Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -243,14 +308,14 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[5-P-256 CipherString and Signature Algorithm Selection-client] +[7-P-256 CipherString and Signature Algorithm Selection-client] CipherString = aECDSA MaxProtocol = TLSv1.2 SignatureAlgorithms = ECDSA+SHA256:ed25519 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-5] +[test-7] ExpectedResult = Success ExpectedServerCertType = P-256 ExpectedServerSignHash = SHA256 @@ -259,14 +324,14 @@ ExpectedServerSignType = EC # =========================================================== -[6-Ed25519 CipherString and Curves Selection] -ssl_conf = 6-Ed25519 CipherString and Curves Selection-ssl +[8-Ed25519 CipherString and Curves Selection] +ssl_conf = 8-Ed25519 CipherString and Curves Selection-ssl -[6-Ed25519 CipherString and Curves Selection-ssl] -server = 6-Ed25519 CipherString and Curves Selection-server -client = 6-Ed25519 CipherString and Curves Selection-client +[8-Ed25519 CipherString and Curves Selection-ssl] +server = 8-Ed25519 CipherString and Curves Selection-server +client = 8-Ed25519 CipherString and Curves Selection-client -[6-Ed25519 CipherString and Curves Selection-server] +[8-Ed25519 CipherString and Curves Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -278,7 +343,7 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[6-Ed25519 CipherString and Curves Selection-client] +[8-Ed25519 CipherString and Curves Selection-client] CipherString = aECDSA Curves = X25519 MaxProtocol = TLSv1.2 @@ -286,7 +351,7 @@ SignatureAlgorithms = ECDSA+SHA256:ed25519 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-6] +[test-8] ExpectedResult = Success ExpectedServerCertType = Ed25519 ExpectedServerSignType = Ed25519 @@ -294,14 +359,14 @@ ExpectedServerSignType = Ed25519 # =========================================================== -[7-Ed448 CipherString and Curves Selection] -ssl_conf = 7-Ed448 CipherString and Curves Selection-ssl +[9-Ed448 CipherString and Curves Selection] +ssl_conf = 9-Ed448 CipherString and Curves Selection-ssl -[7-Ed448 CipherString and Curves Selection-ssl] -server = 7-Ed448 CipherString and Curves Selection-server -client = 7-Ed448 CipherString and Curves Selection-client +[9-Ed448 CipherString and Curves Selection-ssl] +server = 9-Ed448 CipherString and Curves Selection-server +client = 9-Ed448 CipherString and Curves Selection-client -[7-Ed448 CipherString and Curves Selection-server] +[9-Ed448 CipherString and Curves Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -313,7 +378,7 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[7-Ed448 CipherString and Curves Selection-client] +[9-Ed448 CipherString and Curves Selection-client] CipherString = aECDSA Curves = X448 MaxProtocol = TLSv1.2 @@ -321,7 +386,7 @@ SignatureAlgorithms = ECDSA+SHA256:ed448 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-7] +[test-9] ExpectedResult = Success ExpectedServerCertType = Ed448 ExpectedServerSignType = Ed448 @@ -329,39 +394,39 @@ ExpectedServerSignType = Ed448 # =========================================================== -[8-ECDSA CipherString Selection, no ECDSA certificate] -ssl_conf = 8-ECDSA CipherString Selection, no ECDSA certificate-ssl +[10-ECDSA CipherString Selection, no ECDSA certificate] +ssl_conf = 10-ECDSA CipherString Selection, no ECDSA certificate-ssl -[8-ECDSA CipherString Selection, no ECDSA certificate-ssl] -server = 8-ECDSA CipherString Selection, no ECDSA certificate-server -client = 8-ECDSA CipherString Selection, no ECDSA certificate-client +[10-ECDSA CipherString Selection, no ECDSA certificate-ssl] +server = 10-ECDSA CipherString Selection, no ECDSA certificate-server +client = 10-ECDSA CipherString Selection, no ECDSA certificate-client -[8-ECDSA CipherString Selection, no ECDSA certificate-server] +[10-ECDSA CipherString Selection, no ECDSA certificate-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[8-ECDSA CipherString Selection, no ECDSA certificate-client] +[10-ECDSA CipherString Selection, no ECDSA certificate-client] CipherString = aECDSA MaxProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-8] +[test-10] ExpectedResult = ServerFail # =========================================================== -[9-ECDSA Signature Algorithm Selection] -ssl_conf = 9-ECDSA Signature Algorithm Selection-ssl +[11-ECDSA Signature Algorithm Selection] +ssl_conf = 11-ECDSA Signature Algorithm Selection-ssl -[9-ECDSA Signature Algorithm Selection-ssl] -server = 9-ECDSA Signature Algorithm Selection-server -client = 9-ECDSA Signature Algorithm Selection-client +[11-ECDSA Signature Algorithm Selection-ssl] +server = 11-ECDSA Signature Algorithm Selection-server +client = 11-ECDSA Signature Algorithm Selection-client -[9-ECDSA Signature Algorithm Selection-server] +[11-ECDSA Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -373,13 +438,13 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[9-ECDSA Signature Algorithm Selection-client] +[11-ECDSA Signature Algorithm Selection-client] CipherString = DEFAULT SignatureAlgorithms = ECDSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-9] +[test-11] ExpectedResult = Success ExpectedServerCertType = P-256 ExpectedServerSignHash = SHA256 @@ -388,14 +453,14 @@ ExpectedServerSignType = EC # =========================================================== -[10-ECDSA Signature Algorithm Selection SHA384] -ssl_conf = 10-ECDSA Signature Algorithm Selection SHA384-ssl +[12-ECDSA Signature Algorithm Selection SHA384] +ssl_conf = 12-ECDSA Signature Algorithm Selection SHA384-ssl -[10-ECDSA Signature Algorithm Selection SHA384-ssl] -server = 10-ECDSA Signature Algorithm Selection SHA384-server -client = 10-ECDSA Signature Algorithm Selection SHA384-client +[12-ECDSA Signature Algorithm Selection SHA384-ssl] +server = 12-ECDSA Signature Algorithm Selection SHA384-server +client = 12-ECDSA Signature Algorithm Selection SHA384-client -[10-ECDSA Signature Algorithm Selection SHA384-server] +[12-ECDSA Signature Algorithm Selection SHA384-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -407,13 +472,13 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[10-ECDSA Signature Algorithm Selection SHA384-client] +[12-ECDSA Signature Algorithm Selection SHA384-client] CipherString = DEFAULT SignatureAlgorithms = ECDSA+SHA384 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-10] +[test-12] ExpectedResult = Success ExpectedServerCertType = P-256 ExpectedServerSignHash = SHA384 @@ -422,14 +487,14 @@ ExpectedServerSignType = EC # =========================================================== -[11-ECDSA Signature Algorithm Selection SHA1] -ssl_conf = 11-ECDSA Signature Algorithm Selection SHA1-ssl +[13-ECDSA Signature Algorithm Selection SHA1] +ssl_conf = 13-ECDSA Signature Algorithm Selection SHA1-ssl -[11-ECDSA Signature Algorithm Selection SHA1-ssl] -server = 11-ECDSA Signature Algorithm Selection SHA1-server -client = 11-ECDSA Signature Algorithm Selection SHA1-client +[13-ECDSA Signature Algorithm Selection SHA1-ssl] +server = 13-ECDSA Signature Algorithm Selection SHA1-server +client = 13-ECDSA Signature Algorithm Selection SHA1-client -[11-ECDSA Signature Algorithm Selection SHA1-server] +[13-ECDSA Signature Algorithm Selection SHA1-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -441,13 +506,13 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[11-ECDSA Signature Algorithm Selection SHA1-client] +[13-ECDSA Signature Algorithm Selection SHA1-client] CipherString = DEFAULT SignatureAlgorithms = ECDSA+SHA1 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-11] +[test-13] ExpectedResult = Success ExpectedServerCertType = P-256 ExpectedServerSignHash = SHA1 @@ -456,14 +521,14 @@ ExpectedServerSignType = EC # =========================================================== -[12-ECDSA Signature Algorithm Selection compressed point] -ssl_conf = 12-ECDSA Signature Algorithm Selection compressed point-ssl +[14-ECDSA Signature Algorithm Selection compressed point] +ssl_conf = 14-ECDSA Signature Algorithm Selection compressed point-ssl -[12-ECDSA Signature Algorithm Selection compressed point-ssl] -server = 12-ECDSA Signature Algorithm Selection compressed point-server -client = 12-ECDSA Signature Algorithm Selection compressed point-client +[14-ECDSA Signature Algorithm Selection compressed point-ssl] +server = 14-ECDSA Signature Algorithm Selection compressed point-server +client = 14-ECDSA Signature Algorithm Selection compressed point-client -[12-ECDSA Signature Algorithm Selection compressed point-server] +[14-ECDSA Signature Algorithm Selection compressed point-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-cecdsa-cert.pem @@ -471,13 +536,13 @@ ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-cecdsa-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[12-ECDSA Signature Algorithm Selection compressed point-client] +[14-ECDSA Signature Algorithm Selection compressed point-client] CipherString = DEFAULT SignatureAlgorithms = ECDSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-12] +[test-14] ExpectedResult = Success ExpectedServerCertType = P-256 ExpectedServerSignHash = SHA256 @@ -486,39 +551,39 @@ ExpectedServerSignType = EC # =========================================================== -[13-ECDSA Signature Algorithm Selection, no ECDSA certificate] -ssl_conf = 13-ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl +[15-ECDSA Signature Algorithm Selection, no ECDSA certificate] +ssl_conf = 15-ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl -[13-ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl] -server = 13-ECDSA Signature Algorithm Selection, no ECDSA certificate-server -client = 13-ECDSA Signature Algorithm Selection, no ECDSA certificate-client +[15-ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl] +server = 15-ECDSA Signature Algorithm Selection, no ECDSA certificate-server +client = 15-ECDSA Signature Algorithm Selection, no ECDSA certificate-client -[13-ECDSA Signature Algorithm Selection, no ECDSA certificate-server] +[15-ECDSA Signature Algorithm Selection, no ECDSA certificate-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[13-ECDSA Signature Algorithm Selection, no ECDSA certificate-client] +[15-ECDSA Signature Algorithm Selection, no ECDSA certificate-client] CipherString = DEFAULT SignatureAlgorithms = ECDSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-13] +[test-15] ExpectedResult = ServerFail # =========================================================== -[14-RSA Signature Algorithm Selection] -ssl_conf = 14-RSA Signature Algorithm Selection-ssl +[16-RSA Signature Algorithm Selection] +ssl_conf = 16-RSA Signature Algorithm Selection-ssl -[14-RSA Signature Algorithm Selection-ssl] -server = 14-RSA Signature Algorithm Selection-server -client = 14-RSA Signature Algorithm Selection-client +[16-RSA Signature Algorithm Selection-ssl] +server = 16-RSA Signature Algorithm Selection-server +client = 16-RSA Signature Algorithm Selection-client -[14-RSA Signature Algorithm Selection-server] +[16-RSA Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -530,13 +595,13 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[14-RSA Signature Algorithm Selection-client] +[16-RSA Signature Algorithm Selection-client] CipherString = DEFAULT SignatureAlgorithms = RSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-14] +[test-16] ExpectedResult = Success ExpectedServerCertType = RSA ExpectedServerSignHash = SHA256 @@ -545,14 +610,14 @@ ExpectedServerSignType = RSA # =========================================================== -[15-RSA-PSS Signature Algorithm Selection] -ssl_conf = 15-RSA-PSS Signature Algorithm Selection-ssl +[17-RSA-PSS Signature Algorithm Selection] +ssl_conf = 17-RSA-PSS Signature Algorithm Selection-ssl -[15-RSA-PSS Signature Algorithm Selection-ssl] -server = 15-RSA-PSS Signature Algorithm Selection-server -client = 15-RSA-PSS Signature Algorithm Selection-client +[17-RSA-PSS Signature Algorithm Selection-ssl] +server = 17-RSA-PSS Signature Algorithm Selection-server +client = 17-RSA-PSS Signature Algorithm Selection-client -[15-RSA-PSS Signature Algorithm Selection-server] +[17-RSA-PSS Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -564,112 +629,86 @@ Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[15-RSA-PSS Signature Algorithm Selection-client] +[17-RSA-PSS Signature Algorithm Selection-client] CipherString = DEFAULT SignatureAlgorithms = RSA-PSS+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-15] -ExpectedResult = Success -ExpectedServerCertType = RSA -ExpectedServerSignHash = SHA256 -ExpectedServerSignType = RSA-PSS - - -# =========================================================== - -[16-RSA-PSS Certificate Legacy Signature Algorithm Selection] -ssl_conf = 16-RSA-PSS Certificate Legacy Signature Algorithm Selection-ssl - -[16-RSA-PSS Certificate Legacy Signature Algorithm Selection-ssl] -server = 16-RSA-PSS Certificate Legacy Signature Algorithm Selection-server -client = 16-RSA-PSS Certificate Legacy Signature Algorithm Selection-client - -[16-RSA-PSS Certificate Legacy Signature Algorithm Selection-server] -Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem -CipherString = DEFAULT -ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem -ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem -Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem -Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem -Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem -Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem -MaxProtocol = TLSv1.2 -PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem -PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem -PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem - -[16-RSA-PSS Certificate Legacy Signature Algorithm Selection-client] -CipherString = DEFAULT -SignatureAlgorithms = RSA-PSS+SHA256 -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem -VerifyMode = Peer - -[test-16] -ExpectedResult = Success -ExpectedServerCertType = RSA -ExpectedServerSignHash = SHA256 -ExpectedServerSignType = RSA-PSS - - -# =========================================================== - -[17-RSA-PSS Certificate Unified Signature Algorithm Selection] -ssl_conf = 17-RSA-PSS Certificate Unified Signature Algorithm Selection-ssl - -[17-RSA-PSS Certificate Unified Signature Algorithm Selection-ssl] -server = 17-RSA-PSS Certificate Unified Signature Algorithm Selection-server -client = 17-RSA-PSS Certificate Unified Signature Algorithm Selection-client - -[17-RSA-PSS Certificate Unified Signature Algorithm Selection-server] -Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem -CipherString = DEFAULT -ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem -ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem -Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem -Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem -Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem -Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem -MaxProtocol = TLSv1.2 -PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem -PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem -PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem - -[17-RSA-PSS Certificate Unified Signature Algorithm Selection-client] -CipherString = DEFAULT -SignatureAlgorithms = rsa_pss_pss_sha256 -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem -VerifyMode = Peer - [test-17] ExpectedResult = Success -ExpectedServerCertType = RSA-PSS +ExpectedServerCertType = RSA ExpectedServerSignHash = SHA256 ExpectedServerSignType = RSA-PSS # =========================================================== -[18-Only RSA-PSS Certificate] -ssl_conf = 18-Only RSA-PSS Certificate-ssl +[18-RSA-PSS Certificate Legacy Signature Algorithm Selection] +ssl_conf = 18-RSA-PSS Certificate Legacy Signature Algorithm Selection-ssl -[18-Only RSA-PSS Certificate-ssl] -server = 18-Only RSA-PSS Certificate-server -client = 18-Only RSA-PSS Certificate-client +[18-RSA-PSS Certificate Legacy Signature Algorithm Selection-ssl] +server = 18-RSA-PSS Certificate Legacy Signature Algorithm Selection-server +client = 18-RSA-PSS Certificate Legacy Signature Algorithm Selection-client -[18-Only RSA-PSS Certificate-server] -Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem +[18-RSA-PSS Certificate Legacy Signature Algorithm Selection-server] +Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT -PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem +ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem +ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem +Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem +Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem +Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem +Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem +MaxProtocol = TLSv1.2 +PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem +PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem +PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[18-Only RSA-PSS Certificate-client] +[18-RSA-PSS Certificate Legacy Signature Algorithm Selection-client] CipherString = DEFAULT +SignatureAlgorithms = RSA-PSS+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-18] ExpectedResult = Success +ExpectedServerCertType = RSA +ExpectedServerSignHash = SHA256 +ExpectedServerSignType = RSA-PSS + + +# =========================================================== + +[19-RSA-PSS Certificate Unified Signature Algorithm Selection] +ssl_conf = 19-RSA-PSS Certificate Unified Signature Algorithm Selection-ssl + +[19-RSA-PSS Certificate Unified Signature Algorithm Selection-ssl] +server = 19-RSA-PSS Certificate Unified Signature Algorithm Selection-server +client = 19-RSA-PSS Certificate Unified Signature Algorithm Selection-client + +[19-RSA-PSS Certificate Unified Signature Algorithm Selection-server] +Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +CipherString = DEFAULT +ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem +ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem +Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem +Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem +Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem +Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem +MaxProtocol = TLSv1.2 +PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem +PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem +PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem + +[19-RSA-PSS Certificate Unified Signature Algorithm Selection-client] +CipherString = DEFAULT +SignatureAlgorithms = rsa_pss_pss_sha256 +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyMode = Peer + +[test-19] +ExpectedResult = Success ExpectedServerCertType = RSA-PSS ExpectedServerSignHash = SHA256 ExpectedServerSignType = RSA-PSS @@ -677,38 +716,64 @@ ExpectedServerSignType = RSA-PSS # =========================================================== -[19-RSA-PSS Certificate, no PSS signature algorithms] -ssl_conf = 19-RSA-PSS Certificate, no PSS signature algorithms-ssl +[20-Only RSA-PSS Certificate] +ssl_conf = 20-Only RSA-PSS Certificate-ssl -[19-RSA-PSS Certificate, no PSS signature algorithms-ssl] -server = 19-RSA-PSS Certificate, no PSS signature algorithms-server -client = 19-RSA-PSS Certificate, no PSS signature algorithms-client +[20-Only RSA-PSS Certificate-ssl] +server = 20-Only RSA-PSS Certificate-server +client = 20-Only RSA-PSS Certificate-client -[19-RSA-PSS Certificate, no PSS signature algorithms-server] +[20-Only RSA-PSS Certificate-server] Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem CipherString = DEFAULT PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem -[19-RSA-PSS Certificate, no PSS signature algorithms-client] +[20-Only RSA-PSS Certificate-client] +CipherString = DEFAULT +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyMode = Peer + +[test-20] +ExpectedResult = Success +ExpectedServerCertType = RSA-PSS +ExpectedServerSignHash = SHA256 +ExpectedServerSignType = RSA-PSS + + +# =========================================================== + +[21-RSA-PSS Certificate, no PSS signature algorithms] +ssl_conf = 21-RSA-PSS Certificate, no PSS signature algorithms-ssl + +[21-RSA-PSS Certificate, no PSS signature algorithms-ssl] +server = 21-RSA-PSS Certificate, no PSS signature algorithms-server +client = 21-RSA-PSS Certificate, no PSS signature algorithms-client + +[21-RSA-PSS Certificate, no PSS signature algorithms-server] +Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem +CipherString = DEFAULT +PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem + +[21-RSA-PSS Certificate, no PSS signature algorithms-client] CipherString = DEFAULT SignatureAlgorithms = RSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-19] +[test-21] ExpectedResult = ServerFail # =========================================================== -[20-Suite B P-256 Hash Algorithm Selection] -ssl_conf = 20-Suite B P-256 Hash Algorithm Selection-ssl +[22-Suite B P-256 Hash Algorithm Selection] +ssl_conf = 22-Suite B P-256 Hash Algorithm Selection-ssl -[20-Suite B P-256 Hash Algorithm Selection-ssl] -server = 20-Suite B P-256 Hash Algorithm Selection-server -client = 20-Suite B P-256 Hash Algorithm Selection-client +[22-Suite B P-256 Hash Algorithm Selection-ssl] +server = 22-Suite B P-256 Hash Algorithm Selection-server +client = 22-Suite B P-256 Hash Algorithm Selection-client -[20-Suite B P-256 Hash Algorithm Selection-server] +[22-Suite B P-256 Hash Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = SUITEB128 ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/p256-server-cert.pem @@ -716,13 +781,13 @@ ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/p256-server-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[20-Suite B P-256 Hash Algorithm Selection-client] +[22-Suite B P-256 Hash Algorithm Selection-client] CipherString = DEFAULT SignatureAlgorithms = ECDSA+SHA384:ECDSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/p384-root.pem VerifyMode = Peer -[test-20] +[test-22] ExpectedResult = Success ExpectedServerCertType = P-256 ExpectedServerSignHash = SHA256 @@ -731,14 +796,14 @@ ExpectedServerSignType = EC # =========================================================== -[21-Suite B P-384 Hash Algorithm Selection] -ssl_conf = 21-Suite B P-384 Hash Algorithm Selection-ssl +[23-Suite B P-384 Hash Algorithm Selection] +ssl_conf = 23-Suite B P-384 Hash Algorithm Selection-ssl -[21-Suite B P-384 Hash Algorithm Selection-ssl] -server = 21-Suite B P-384 Hash Algorithm Selection-server -client = 21-Suite B P-384 Hash Algorithm Selection-client +[23-Suite B P-384 Hash Algorithm Selection-ssl] +server = 23-Suite B P-384 Hash Algorithm Selection-server +client = 23-Suite B P-384 Hash Algorithm Selection-client -[21-Suite B P-384 Hash Algorithm Selection-server] +[23-Suite B P-384 Hash Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = SUITEB128 ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/p384-server-cert.pem @@ -746,13 +811,13 @@ ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/p384-server-key.pem MaxProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[21-Suite B P-384 Hash Algorithm Selection-client] +[23-Suite B P-384 Hash Algorithm Selection-client] CipherString = DEFAULT SignatureAlgorithms = ECDSA+SHA256:ECDSA+SHA384 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/p384-root.pem VerifyMode = Peer -[test-21] +[test-23] ExpectedResult = Success ExpectedServerCertType = P-384 ExpectedServerSignHash = SHA384 @@ -761,21 +826,21 @@ ExpectedServerSignType = EC # =========================================================== -[22-TLS 1.2 Ed25519 Client Auth] -ssl_conf = 22-TLS 1.2 Ed25519 Client Auth-ssl +[24-TLS 1.2 Ed25519 Client Auth] +ssl_conf = 24-TLS 1.2 Ed25519 Client Auth-ssl -[22-TLS 1.2 Ed25519 Client Auth-ssl] -server = 22-TLS 1.2 Ed25519 Client Auth-server -client = 22-TLS 1.2 Ed25519 Client Auth-client +[24-TLS 1.2 Ed25519 Client Auth-ssl] +server = 24-TLS 1.2 Ed25519 Client Auth-server +client = 24-TLS 1.2 Ed25519 Client Auth-client -[22-TLS 1.2 Ed25519 Client Auth-server] +[24-TLS 1.2 Ed25519 Client Auth-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem VerifyMode = Require -[22-TLS 1.2 Ed25519 Client Auth-client] +[24-TLS 1.2 Ed25519 Client Auth-client] CipherString = DEFAULT Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/client-ed25519-cert.pem Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/client-ed25519-key.pem @@ -784,7 +849,7 @@ MinProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-22] +[test-24] ExpectedClientCertType = Ed25519 ExpectedClientSignType = Ed25519 ExpectedResult = Success @@ -792,21 +857,21 @@ ExpectedResult = Success # =========================================================== -[23-TLS 1.2 Ed448 Client Auth] -ssl_conf = 23-TLS 1.2 Ed448 Client Auth-ssl +[25-TLS 1.2 Ed448 Client Auth] +ssl_conf = 25-TLS 1.2 Ed448 Client Auth-ssl -[23-TLS 1.2 Ed448 Client Auth-ssl] -server = 23-TLS 1.2 Ed448 Client Auth-server -client = 23-TLS 1.2 Ed448 Client Auth-client +[25-TLS 1.2 Ed448 Client Auth-ssl] +server = 25-TLS 1.2 Ed448 Client Auth-server +client = 25-TLS 1.2 Ed448 Client Auth-client -[23-TLS 1.2 Ed448 Client Auth-server] +[25-TLS 1.2 Ed448 Client Auth-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem VerifyMode = Require -[23-TLS 1.2 Ed448 Client Auth-client] +[25-TLS 1.2 Ed448 Client Auth-client] CipherString = DEFAULT Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/client-ed448-cert.pem Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/client-ed448-key.pem @@ -815,7 +880,7 @@ MinProtocol = TLSv1.2 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-23] +[test-25] ExpectedClientCertType = Ed448 ExpectedClientSignType = Ed448 ExpectedResult = Success @@ -823,102 +888,38 @@ ExpectedResult = Success # =========================================================== -[24-Only RSA-PSS Certificate, TLS v1.1] -ssl_conf = 24-Only RSA-PSS Certificate, TLS v1.1-ssl +[26-Only RSA-PSS Certificate, TLS v1.1] +ssl_conf = 26-Only RSA-PSS Certificate, TLS v1.1-ssl -[24-Only RSA-PSS Certificate, TLS v1.1-ssl] -server = 24-Only RSA-PSS Certificate, TLS v1.1-server -client = 24-Only RSA-PSS Certificate, TLS v1.1-client +[26-Only RSA-PSS Certificate, TLS v1.1-ssl] +server = 26-Only RSA-PSS Certificate, TLS v1.1-server +client = 26-Only RSA-PSS Certificate, TLS v1.1-client -[24-Only RSA-PSS Certificate, TLS v1.1-server] +[26-Only RSA-PSS Certificate, TLS v1.1-server] Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem CipherString = DEFAULT PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem -[24-Only RSA-PSS Certificate, TLS v1.1-client] +[26-Only RSA-PSS Certificate, TLS v1.1-client] CipherString = DEFAULT MaxProtocol = TLSv1.1 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-24] -ExpectedResult = ServerFail - - -# =========================================================== - -[25-TLS 1.3 ECDSA Signature Algorithm Selection] -ssl_conf = 25-TLS 1.3 ECDSA Signature Algorithm Selection-ssl - -[25-TLS 1.3 ECDSA Signature Algorithm Selection-ssl] -server = 25-TLS 1.3 ECDSA Signature Algorithm Selection-server -client = 25-TLS 1.3 ECDSA Signature Algorithm Selection-client - -[25-TLS 1.3 ECDSA Signature Algorithm Selection-server] -Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem -CipherString = DEFAULT -ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem -ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem -Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem -Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem -Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem -Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem -MaxProtocol = TLSv1.3 -MinProtocol = TLSv1.3 -PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem - -[25-TLS 1.3 ECDSA Signature Algorithm Selection-client] -CipherString = DEFAULT -SignatureAlgorithms = ECDSA+SHA256 -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem -VerifyMode = Peer - -[test-25] -ExpectedResult = Success -ExpectedServerCANames = empty -ExpectedServerCertType = P-256 -ExpectedServerSignHash = SHA256 -ExpectedServerSignType = EC - - -# =========================================================== - -[26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point] -ssl_conf = 26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-ssl - -[26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-ssl] -server = 26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-server -client = 26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-client - -[26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-server] -Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem -CipherString = DEFAULT -ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-cecdsa-cert.pem -ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-cecdsa-key.pem -MaxProtocol = TLSv1.3 -MinProtocol = TLSv1.3 -PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem - -[26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-client] -CipherString = DEFAULT -SignatureAlgorithms = ECDSA+SHA256 -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem -VerifyMode = Peer - [test-26] ExpectedResult = ServerFail # =========================================================== -[27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1] -ssl_conf = 27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-ssl +[27-TLS 1.3 ECDSA Signature Algorithm Selection] +ssl_conf = 27-TLS 1.3 ECDSA Signature Algorithm Selection-ssl -[27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-ssl] -server = 27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-server -client = 27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-client +[27-TLS 1.3 ECDSA Signature Algorithm Selection-ssl] +server = 27-TLS 1.3 ECDSA Signature Algorithm Selection-server +client = 27-TLS 1.3 ECDSA Signature Algorithm Selection-client -[27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-server] +[27-TLS 1.3 ECDSA Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -931,26 +932,94 @@ MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-client] +[27-TLS 1.3 ECDSA Signature Algorithm Selection-client] +CipherString = DEFAULT +SignatureAlgorithms = ECDSA+SHA256 +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyMode = Peer + +[test-27] +ExpectedResult = Success +ExpectedServerCANames = empty +ExpectedServerCertType = P-256 +ExpectedServerSignHash = SHA256 +ExpectedServerSignType = EC + + +# =========================================================== + +[28-TLS 1.3 ECDSA Signature Algorithm Selection compressed point] +ssl_conf = 28-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-ssl + +[28-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-ssl] +server = 28-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-server +client = 28-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-client + +[28-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-server] +Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +CipherString = DEFAULT +ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-cecdsa-cert.pem +ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-cecdsa-key.pem +MaxProtocol = TLSv1.3 +MinProtocol = TLSv1.3 +PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem + +[28-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-client] +CipherString = DEFAULT +SignatureAlgorithms = ECDSA+SHA256 +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyMode = Peer + +[test-28] +ExpectedResult = Success +ExpectedServerCANames = empty +ExpectedServerCertType = P-256 +ExpectedServerSignHash = SHA256 +ExpectedServerSignType = EC + + +# =========================================================== + +[29-TLS 1.3 ECDSA Signature Algorithm Selection SHA1] +ssl_conf = 29-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-ssl + +[29-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-ssl] +server = 29-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-server +client = 29-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-client + +[29-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-server] +Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +CipherString = DEFAULT +ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem +ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem +Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem +Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem +Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem +Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem +MaxProtocol = TLSv1.3 +MinProtocol = TLSv1.3 +PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem + +[29-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-client] CipherString = DEFAULT SignatureAlgorithms = ECDSA+SHA1 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-27] +[test-29] ExpectedResult = ServerFail # =========================================================== -[28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS] -ssl_conf = 28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-ssl +[30-TLS 1.3 ECDSA Signature Algorithm Selection with PSS] +ssl_conf = 30-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-ssl -[28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-ssl] -server = 28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-server -client = 28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-client +[30-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-ssl] +server = 30-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-server +client = 30-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-client -[28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-server] +[30-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -963,14 +1032,14 @@ MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-client] +[30-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-client] CipherString = DEFAULT RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem SignatureAlgorithms = ECDSA+SHA256:RSA-PSS+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-28] +[test-30] ExpectedResult = Success ExpectedServerCANames = ${ENV::TEST_CERTS_DIR}/root-cert.pem ExpectedServerCertType = P-256 @@ -980,14 +1049,14 @@ ExpectedServerSignType = EC # =========================================================== -[29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS] -ssl_conf = 29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-ssl +[31-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS] +ssl_conf = 31-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-ssl -[29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-ssl] -server = 29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-server -client = 29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-client +[31-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-ssl] +server = 31-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-server +client = 31-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-client -[29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-server] +[31-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -1000,13 +1069,13 @@ MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-client] +[31-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-client] CipherString = DEFAULT SignatureAlgorithms = ECDSA+SHA384:RSA-PSS+SHA384 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-29] +[test-31] ExpectedResult = Success ExpectedServerCertType = RSA ExpectedServerSignHash = SHA384 @@ -1015,40 +1084,40 @@ ExpectedServerSignType = RSA-PSS # =========================================================== -[30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate] -ssl_conf = 30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl +[32-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate] +ssl_conf = 32-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl -[30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl] -server = 30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-server -client = 30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-client +[32-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl] +server = 32-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-server +client = 32-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-client -[30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-server] +[32-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-client] +[32-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-client] CipherString = DEFAULT SignatureAlgorithms = ECDSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-30] +[test-32] ExpectedResult = ServerFail # =========================================================== -[31-TLS 1.3 RSA Signature Algorithm Selection, no PSS] -ssl_conf = 31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-ssl +[33-TLS 1.3 RSA Signature Algorithm Selection, no PSS] +ssl_conf = 33-TLS 1.3 RSA Signature Algorithm Selection, no PSS-ssl -[31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-ssl] -server = 31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-server -client = 31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-client +[33-TLS 1.3 RSA Signature Algorithm Selection, no PSS-ssl] +server = 33-TLS 1.3 RSA Signature Algorithm Selection, no PSS-server +client = 33-TLS 1.3 RSA Signature Algorithm Selection, no PSS-client -[31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-server] +[33-TLS 1.3 RSA Signature Algorithm Selection, no PSS-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -1061,26 +1130,26 @@ MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-client] +[33-TLS 1.3 RSA Signature Algorithm Selection, no PSS-client] CipherString = DEFAULT SignatureAlgorithms = RSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-31] +[test-33] ExpectedResult = ServerFail # =========================================================== -[32-TLS 1.3 RSA-PSS Signature Algorithm Selection] -ssl_conf = 32-TLS 1.3 RSA-PSS Signature Algorithm Selection-ssl +[34-TLS 1.3 RSA-PSS Signature Algorithm Selection] +ssl_conf = 34-TLS 1.3 RSA-PSS Signature Algorithm Selection-ssl -[32-TLS 1.3 RSA-PSS Signature Algorithm Selection-ssl] -server = 32-TLS 1.3 RSA-PSS Signature Algorithm Selection-server -client = 32-TLS 1.3 RSA-PSS Signature Algorithm Selection-client +[34-TLS 1.3 RSA-PSS Signature Algorithm Selection-ssl] +server = 34-TLS 1.3 RSA-PSS Signature Algorithm Selection-server +client = 34-TLS 1.3 RSA-PSS Signature Algorithm Selection-client -[32-TLS 1.3 RSA-PSS Signature Algorithm Selection-server] +[34-TLS 1.3 RSA-PSS Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -1093,13 +1162,13 @@ MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[32-TLS 1.3 RSA-PSS Signature Algorithm Selection-client] +[34-TLS 1.3 RSA-PSS Signature Algorithm Selection-client] CipherString = DEFAULT SignatureAlgorithms = RSA-PSS+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-32] +[test-34] ExpectedResult = Success ExpectedServerCertType = RSA ExpectedServerSignHash = SHA256 @@ -1108,14 +1177,14 @@ ExpectedServerSignType = RSA-PSS # =========================================================== -[33-TLS 1.3 Ed25519 Signature Algorithm Selection] -ssl_conf = 33-TLS 1.3 Ed25519 Signature Algorithm Selection-ssl +[35-TLS 1.3 Ed25519 Signature Algorithm Selection] +ssl_conf = 35-TLS 1.3 Ed25519 Signature Algorithm Selection-ssl -[33-TLS 1.3 Ed25519 Signature Algorithm Selection-ssl] -server = 33-TLS 1.3 Ed25519 Signature Algorithm Selection-server -client = 33-TLS 1.3 Ed25519 Signature Algorithm Selection-client +[35-TLS 1.3 Ed25519 Signature Algorithm Selection-ssl] +server = 35-TLS 1.3 Ed25519 Signature Algorithm Selection-server +client = 35-TLS 1.3 Ed25519 Signature Algorithm Selection-client -[33-TLS 1.3 Ed25519 Signature Algorithm Selection-server] +[35-TLS 1.3 Ed25519 Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -1128,13 +1197,13 @@ MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[33-TLS 1.3 Ed25519 Signature Algorithm Selection-client] +[35-TLS 1.3 Ed25519 Signature Algorithm Selection-client] CipherString = DEFAULT SignatureAlgorithms = ed25519 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-33] +[test-35] ExpectedResult = Success ExpectedServerCertType = Ed25519 ExpectedServerSignType = Ed25519 @@ -1142,14 +1211,14 @@ ExpectedServerSignType = Ed25519 # =========================================================== -[34-TLS 1.3 Ed448 Signature Algorithm Selection] -ssl_conf = 34-TLS 1.3 Ed448 Signature Algorithm Selection-ssl +[36-TLS 1.3 Ed448 Signature Algorithm Selection] +ssl_conf = 36-TLS 1.3 Ed448 Signature Algorithm Selection-ssl -[34-TLS 1.3 Ed448 Signature Algorithm Selection-ssl] -server = 34-TLS 1.3 Ed448 Signature Algorithm Selection-server -client = 34-TLS 1.3 Ed448 Signature Algorithm Selection-client +[36-TLS 1.3 Ed448 Signature Algorithm Selection-ssl] +server = 36-TLS 1.3 Ed448 Signature Algorithm Selection-server +client = 36-TLS 1.3 Ed448 Signature Algorithm Selection-client -[34-TLS 1.3 Ed448 Signature Algorithm Selection-server] +[36-TLS 1.3 Ed448 Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -1162,13 +1231,13 @@ MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[34-TLS 1.3 Ed448 Signature Algorithm Selection-client] +[36-TLS 1.3 Ed448 Signature Algorithm Selection-client] CipherString = DEFAULT SignatureAlgorithms = ed448 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-34] +[test-36] ExpectedResult = Success ExpectedServerCertType = Ed448 ExpectedServerSignType = Ed448 @@ -1176,14 +1245,14 @@ ExpectedServerSignType = Ed448 # =========================================================== -[35-TLS 1.3 Ed25519 CipherString and Groups Selection] -ssl_conf = 35-TLS 1.3 Ed25519 CipherString and Groups Selection-ssl +[37-TLS 1.3 Ed25519 CipherString and Groups Selection] +ssl_conf = 37-TLS 1.3 Ed25519 CipherString and Groups Selection-ssl -[35-TLS 1.3 Ed25519 CipherString and Groups Selection-ssl] -server = 35-TLS 1.3 Ed25519 CipherString and Groups Selection-server -client = 35-TLS 1.3 Ed25519 CipherString and Groups Selection-client +[37-TLS 1.3 Ed25519 CipherString and Groups Selection-ssl] +server = 37-TLS 1.3 Ed25519 CipherString and Groups Selection-server +client = 37-TLS 1.3 Ed25519 CipherString and Groups Selection-client -[35-TLS 1.3 Ed25519 CipherString and Groups Selection-server] +[37-TLS 1.3 Ed25519 CipherString and Groups Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -1196,14 +1265,14 @@ MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[35-TLS 1.3 Ed25519 CipherString and Groups Selection-client] +[37-TLS 1.3 Ed25519 CipherString and Groups Selection-client] CipherString = DEFAULT Groups = X25519 SignatureAlgorithms = ECDSA+SHA256:ed25519 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-35] +[test-37] ExpectedResult = Success ExpectedServerCertType = P-256 ExpectedServerSignType = EC @@ -1211,14 +1280,14 @@ ExpectedServerSignType = EC # =========================================================== -[36-TLS 1.3 Ed448 CipherString and Groups Selection] -ssl_conf = 36-TLS 1.3 Ed448 CipherString and Groups Selection-ssl +[38-TLS 1.3 Ed448 CipherString and Groups Selection] +ssl_conf = 38-TLS 1.3 Ed448 CipherString and Groups Selection-ssl -[36-TLS 1.3 Ed448 CipherString and Groups Selection-ssl] -server = 36-TLS 1.3 Ed448 CipherString and Groups Selection-server -client = 36-TLS 1.3 Ed448 CipherString and Groups Selection-client +[38-TLS 1.3 Ed448 CipherString and Groups Selection-ssl] +server = 38-TLS 1.3 Ed448 CipherString and Groups Selection-server +client = 38-TLS 1.3 Ed448 CipherString and Groups Selection-client -[36-TLS 1.3 Ed448 CipherString and Groups Selection-server] +[38-TLS 1.3 Ed448 CipherString and Groups Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem @@ -1231,14 +1300,14 @@ MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[36-TLS 1.3 Ed448 CipherString and Groups Selection-client] +[38-TLS 1.3 Ed448 CipherString and Groups Selection-client] CipherString = DEFAULT Groups = X448 SignatureAlgorithms = ECDSA+SHA256:ed448 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-36] +[test-38] ExpectedResult = Success ExpectedServerCertType = P-256 ExpectedServerSignType = EC @@ -1246,14 +1315,14 @@ ExpectedServerSignType = EC # =========================================================== -[37-TLS 1.3 RSA Client Auth Signature Algorithm Selection] -ssl_conf = 37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-ssl +[39-TLS 1.3 RSA Client Auth Signature Algorithm Selection] +ssl_conf = 39-TLS 1.3 RSA Client Auth Signature Algorithm Selection-ssl -[37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-ssl] -server = 37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-server -client = 37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-client +[39-TLS 1.3 RSA Client Auth Signature Algorithm Selection-ssl] +server = 39-TLS 1.3 RSA Client Auth Signature Algorithm Selection-server +client = 39-TLS 1.3 RSA Client Auth Signature Algorithm Selection-client -[37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-server] +[39-TLS 1.3 RSA Client Auth Signature Algorithm Selection-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ClientSignatureAlgorithms = PSS+SHA256 @@ -1261,80 +1330,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem VerifyMode = Require -[37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-client] -CipherString = DEFAULT -ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-client-chain.pem -ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-key.pem -MaxProtocol = TLSv1.3 -MinProtocol = TLSv1.3 -RSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-client-chain.pem -RSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-key.pem -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem -VerifyMode = Peer - -[test-37] -ExpectedClientCANames = empty -ExpectedClientCertType = RSA -ExpectedClientSignHash = SHA256 -ExpectedClientSignType = RSA-PSS -ExpectedResult = Success - - -# =========================================================== - -[38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names] -ssl_conf = 38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-ssl - -[38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-ssl] -server = 38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-server -client = 38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-client - -[38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-server] -Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem -CipherString = DEFAULT -ClientSignatureAlgorithms = PSS+SHA256 -PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem -VerifyMode = Require - -[38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-client] -CipherString = DEFAULT -ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-client-chain.pem -ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-key.pem -MaxProtocol = TLSv1.3 -MinProtocol = TLSv1.3 -RSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-client-chain.pem -RSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-key.pem -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem -VerifyMode = Peer - -[test-38] -ExpectedClientCANames = ${ENV::TEST_CERTS_DIR}/root-cert.pem -ExpectedClientCertType = RSA -ExpectedClientSignHash = SHA256 -ExpectedClientSignType = RSA-PSS -ExpectedResult = Success - - -# =========================================================== - -[39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection] -ssl_conf = 39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-ssl - -[39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-ssl] -server = 39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-server -client = 39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-client - -[39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-server] -Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem -CipherString = DEFAULT -ClientSignatureAlgorithms = ECDSA+SHA256 -PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem -VerifyMode = Require - -[39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-client] +[39-TLS 1.3 RSA Client Auth Signature Algorithm Selection-client] CipherString = DEFAULT ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-client-chain.pem ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-key.pem @@ -1346,6 +1342,79 @@ VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer [test-39] +ExpectedClientCANames = empty +ExpectedClientCertType = RSA +ExpectedClientSignHash = SHA256 +ExpectedClientSignType = RSA-PSS +ExpectedResult = Success + + +# =========================================================== + +[40-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names] +ssl_conf = 40-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-ssl + +[40-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-ssl] +server = 40-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-server +client = 40-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-client + +[40-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-server] +Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +CipherString = DEFAULT +ClientSignatureAlgorithms = PSS+SHA256 +PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem +RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem +VerifyMode = Require + +[40-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-client] +CipherString = DEFAULT +ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-client-chain.pem +ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-key.pem +MaxProtocol = TLSv1.3 +MinProtocol = TLSv1.3 +RSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-client-chain.pem +RSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-key.pem +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyMode = Peer + +[test-40] +ExpectedClientCANames = ${ENV::TEST_CERTS_DIR}/root-cert.pem +ExpectedClientCertType = RSA +ExpectedClientSignHash = SHA256 +ExpectedClientSignType = RSA-PSS +ExpectedResult = Success + + +# =========================================================== + +[41-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection] +ssl_conf = 41-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-ssl + +[41-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-ssl] +server = 41-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-server +client = 41-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-client + +[41-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-server] +Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem +CipherString = DEFAULT +ClientSignatureAlgorithms = ECDSA+SHA256 +PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem +VerifyMode = Require + +[41-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-client] +CipherString = DEFAULT +ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-client-chain.pem +ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-key.pem +MaxProtocol = TLSv1.3 +MinProtocol = TLSv1.3 +RSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-client-chain.pem +RSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-key.pem +VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem +VerifyMode = Peer + +[test-41] ExpectedClientCertType = P-256 ExpectedClientSignHash = SHA256 ExpectedClientSignType = EC @@ -1354,21 +1423,21 @@ ExpectedResult = Success # =========================================================== -[40-TLS 1.3 Ed25519 Client Auth] -ssl_conf = 40-TLS 1.3 Ed25519 Client Auth-ssl +[42-TLS 1.3 Ed25519 Client Auth] +ssl_conf = 42-TLS 1.3 Ed25519 Client Auth-ssl -[40-TLS 1.3 Ed25519 Client Auth-ssl] -server = 40-TLS 1.3 Ed25519 Client Auth-server -client = 40-TLS 1.3 Ed25519 Client Auth-client +[42-TLS 1.3 Ed25519 Client Auth-ssl] +server = 42-TLS 1.3 Ed25519 Client Auth-server +client = 42-TLS 1.3 Ed25519 Client Auth-client -[40-TLS 1.3 Ed25519 Client Auth-server] +[42-TLS 1.3 Ed25519 Client Auth-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem VerifyMode = Require -[40-TLS 1.3 Ed25519 Client Auth-client] +[42-TLS 1.3 Ed25519 Client Auth-client] CipherString = DEFAULT EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/client-ed25519-cert.pem EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/client-ed25519-key.pem @@ -1377,7 +1446,7 @@ MinProtocol = TLSv1.3 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-40] +[test-42] ExpectedClientCertType = Ed25519 ExpectedClientSignType = Ed25519 ExpectedResult = Success @@ -1385,21 +1454,21 @@ ExpectedResult = Success # =========================================================== -[41-TLS 1.3 Ed448 Client Auth] -ssl_conf = 41-TLS 1.3 Ed448 Client Auth-ssl +[43-TLS 1.3 Ed448 Client Auth] +ssl_conf = 43-TLS 1.3 Ed448 Client Auth-ssl -[41-TLS 1.3 Ed448 Client Auth-ssl] -server = 41-TLS 1.3 Ed448 Client Auth-server -client = 41-TLS 1.3 Ed448 Client Auth-client +[43-TLS 1.3 Ed448 Client Auth-ssl] +server = 43-TLS 1.3 Ed448 Client Auth-server +client = 43-TLS 1.3 Ed448 Client Auth-client -[41-TLS 1.3 Ed448 Client Auth-server] +[43-TLS 1.3 Ed448 Client Auth-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem VerifyMode = Require -[41-TLS 1.3 Ed448 Client Auth-client] +[43-TLS 1.3 Ed448 Client Auth-client] CipherString = DEFAULT EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/client-ed448-cert.pem EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/client-ed448-key.pem @@ -1408,7 +1477,7 @@ MinProtocol = TLSv1.3 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-41] +[test-43] ExpectedClientCertType = Ed448 ExpectedClientSignType = Ed448 ExpectedResult = Success @@ -1416,14 +1485,14 @@ ExpectedResult = Success # =========================================================== -[42-TLS 1.2 DSA Certificate Test] -ssl_conf = 42-TLS 1.2 DSA Certificate Test-ssl +[44-TLS 1.2 DSA Certificate Test] +ssl_conf = 44-TLS 1.2 DSA Certificate Test-ssl -[42-TLS 1.2 DSA Certificate Test-ssl] -server = 42-TLS 1.2 DSA Certificate Test-server -client = 42-TLS 1.2 DSA Certificate Test-client +[44-TLS 1.2 DSA Certificate Test-ssl] +server = 44-TLS 1.2 DSA Certificate Test-server +client = 44-TLS 1.2 DSA Certificate Test-client -[42-TLS 1.2 DSA Certificate Test-server] +[44-TLS 1.2 DSA Certificate Test-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = ALL DHParameters = ${ENV::TEST_CERTS_DIR}/dhp2048.pem @@ -1433,26 +1502,26 @@ MaxProtocol = TLSv1.2 MinProtocol = TLSv1.2 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[42-TLS 1.2 DSA Certificate Test-client] +[44-TLS 1.2 DSA Certificate Test-client] CipherString = ALL SignatureAlgorithms = DSA+SHA256:DSA+SHA1 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-42] +[test-44] ExpectedResult = Success # =========================================================== -[43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms] -ssl_conf = 43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-ssl +[45-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms] +ssl_conf = 45-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-ssl -[43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-ssl] -server = 43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-server -client = 43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-client +[45-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-ssl] +server = 45-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-server +client = 45-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-client -[43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-server] +[45-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = DEFAULT ClientSignatureAlgorithms = ECDSA+SHA1:DSA+SHA256:RSA+SHA256 @@ -1460,25 +1529,25 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem VerifyMode = Request -[43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-client] +[45-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-client] CipherString = DEFAULT VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-43] +[test-45] ExpectedResult = ServerFail # =========================================================== -[44-TLS 1.3 DSA Certificate Test] -ssl_conf = 44-TLS 1.3 DSA Certificate Test-ssl +[46-TLS 1.3 DSA Certificate Test] +ssl_conf = 46-TLS 1.3 DSA Certificate Test-ssl -[44-TLS 1.3 DSA Certificate Test-ssl] -server = 44-TLS 1.3 DSA Certificate Test-server -client = 44-TLS 1.3 DSA Certificate Test-client +[46-TLS 1.3 DSA Certificate Test-ssl] +server = 46-TLS 1.3 DSA Certificate Test-server +client = 46-TLS 1.3 DSA Certificate Test-client -[44-TLS 1.3 DSA Certificate Test-server] +[46-TLS 1.3 DSA Certificate Test-server] Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem CipherString = ALL DSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-dsa-cert.pem @@ -1487,13 +1556,13 @@ MaxProtocol = TLSv1.3 MinProtocol = TLSv1.3 PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem -[44-TLS 1.3 DSA Certificate Test-client] +[46-TLS 1.3 DSA Certificate Test-client] CipherString = ALL SignatureAlgorithms = DSA+SHA1:DSA+SHA256:ECDSA+SHA256 VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem VerifyMode = Peer -[test-44] +[test-46] ExpectedResult = ServerFail diff --git a/test/ssl-tests/20-cert-select.conf.in b/test/ssl-tests/20-cert-select.conf.in index c6589c73..51a158dc 100644 --- a/test/ssl-tests/20-cert-select.conf.in +++ b/test/ssl-tests/20-cert-select.conf.in @@ -53,6 +53,50 @@ our @tests = ( "ExpectedResult" => "Success" }, }, + { + name => "ECDSA CipherString Selection", + server => { + "ECDSA.Certificate" => test_pem("server-ecdsa-cert.pem"), + "ECDSA.PrivateKey" => test_pem("server-ecdsa-key.pem"), + "MaxProtocol" => "TLSv1.2", + #Deliberately set supported_groups to one not in the cert. This + #should be tolerated + "Groups" => "P-384" + }, + client => { + "CipherString" => "aECDSA", + "MaxProtocol" => "TLSv1.2", + "Groups" => "P-256:P-384", + "RequestCAFile" => test_pem("root-cert.pem"), + }, + test => { + "ExpectedServerCertType" =>, "P-256", + "ExpectedServerSignType" =>, "EC", + # Note: certificate_authorities not sent for TLS < 1.3 + "ExpectedServerCANames" =>, "empty", + "ExpectedResult" => "Success" + }, + }, + { + name => "ECDSA CipherString Selection", + server => { + "ECDSA.Certificate" => test_pem("server-ecdsa-cert.pem"), + "ECDSA.PrivateKey" => test_pem("server-ecdsa-key.pem"), + "MaxProtocol" => "TLSv1.2", + "Groups" => "P-256:P-384" + }, + client => { + "CipherString" => "aECDSA", + "MaxProtocol" => "TLSv1.2", + #Deliberately set groups to not include the certificate group. This + #should fail + "Groups" => "P-384", + "RequestCAFile" => test_pem("root-cert.pem"), + }, + test => { + "ExpectedResult" => "ServerFail" + }, + }, { name => "Ed25519 CipherString and Signature Algorithm Selection", server => $server, @@ -467,7 +511,11 @@ my @tests_tls_1_3 = ( "SignatureAlgorithms" => "ECDSA+SHA256", }, test => { - "ExpectedResult" => "ServerFail" + "ExpectedServerCertType" => "P-256", + "ExpectedServerSignHash" => "SHA256", + "ExpectedServerSignType" => "EC", + "ExpectedServerCANames" => "empty", + "ExpectedResult" => "Success" }, }, { diff --git a/test/ssl-tests/protocol_version.pm b/test/ssl-tests/protocol_version.pm index edc0dd29..215f9e8c 100644 --- a/test/ssl-tests/protocol_version.pm +++ b/test/ssl-tests/protocol_version.pm @@ -1,5 +1,5 @@ # -*- mode: perl; -*- -# Copyright 2016-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -137,6 +137,7 @@ sub generate_version_tests { "client" => { #Offering only <=TLSv1.2 ciphersuites with TLSv1.3 should fail "CipherString" => "AES128-SHA", + "Ciphersuites" => "", }, "server" => { "MaxProtocol" => "TLSv1.2" @@ -154,6 +155,7 @@ sub generate_version_tests { "server" => { #Allowing only <=TLSv1.2 ciphersuites with TLSv1.3 should fail "CipherString" => "AES128-SHA", + "Ciphersuites" => "", }, "test" => { "ExpectedResult" => "ServerFail", diff --git a/test/ssl_cert_table_internal_test.c b/test/ssl_cert_table_internal_test.c index 5adcb8d4..2104e8c5 100644 --- a/test/ssl_cert_table_internal_test.c +++ b/test/ssl_cert_table_internal_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -76,7 +76,7 @@ static int test_ssl_cert_table(void) return 1; } -int setup_tests() +int setup_tests(void) { ADD_TEST(test_ssl_cert_table); return 1; diff --git a/test/ssl_test.c b/test/ssl_test.c index 778c3303..7453a9d1 100644 --- a/test/ssl_test.c +++ b/test/ssl_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -406,15 +406,27 @@ static int test_handshake(int idx) #ifndef OPENSSL_NO_DTLS if (test_ctx->method == SSL_TEST_METHOD_DTLS) { server_ctx = SSL_CTX_new(DTLS_server_method()); + if (!TEST_true(SSL_CTX_set_max_proto_version(server_ctx, + DTLS_MAX_VERSION))) + goto err; if (test_ctx->extra.server.servername_callback != SSL_TEST_SERVERNAME_CB_NONE) { if (!TEST_ptr(server2_ctx = SSL_CTX_new(DTLS_server_method()))) goto err; } client_ctx = SSL_CTX_new(DTLS_client_method()); + if (!TEST_true(SSL_CTX_set_max_proto_version(client_ctx, + DTLS_MAX_VERSION))) + goto err; if (test_ctx->handshake_mode == SSL_TEST_HANDSHAKE_RESUME) { resume_server_ctx = SSL_CTX_new(DTLS_server_method()); + if (!TEST_true(SSL_CTX_set_max_proto_version(resume_server_ctx, + DTLS_MAX_VERSION))) + goto err; resume_client_ctx = SSL_CTX_new(DTLS_client_method()); + if (!TEST_true(SSL_CTX_set_max_proto_version(resume_client_ctx, + DTLS_MAX_VERSION))) + goto err; if (!TEST_ptr(resume_server_ctx) || !TEST_ptr(resume_client_ctx)) goto err; @@ -423,23 +435,43 @@ static int test_handshake(int idx) #endif if (test_ctx->method == SSL_TEST_METHOD_TLS) { server_ctx = SSL_CTX_new(TLS_server_method()); + if (!TEST_true(SSL_CTX_set_max_proto_version(server_ctx, + TLS_MAX_VERSION))) + goto err; /* SNI on resumption isn't supported/tested yet. */ if (test_ctx->extra.server.servername_callback != SSL_TEST_SERVERNAME_CB_NONE) { if (!TEST_ptr(server2_ctx = SSL_CTX_new(TLS_server_method()))) goto err; + if (!TEST_true(SSL_CTX_set_max_proto_version(server2_ctx, + TLS_MAX_VERSION))) + goto err; } client_ctx = SSL_CTX_new(TLS_client_method()); + if (!TEST_true(SSL_CTX_set_max_proto_version(client_ctx, + TLS_MAX_VERSION))) + goto err; if (test_ctx->handshake_mode == SSL_TEST_HANDSHAKE_RESUME) { resume_server_ctx = SSL_CTX_new(TLS_server_method()); + if (!TEST_true(SSL_CTX_set_max_proto_version(resume_server_ctx, + TLS_MAX_VERSION))) + goto err; resume_client_ctx = SSL_CTX_new(TLS_client_method()); + if (!TEST_true(SSL_CTX_set_max_proto_version(resume_client_ctx, + TLS_MAX_VERSION))) + goto err; if (!TEST_ptr(resume_server_ctx) || !TEST_ptr(resume_client_ctx)) goto err; } } +#ifdef OPENSSL_NO_AUTOLOAD_CONFIG + if (!TEST_true(OPENSSL_init_ssl(OPENSSL_INIT_LOAD_CONFIG, NULL))) + goto err; +#endif + if (!TEST_ptr(server_ctx) || !TEST_ptr(client_ctx) || !TEST_int_gt(CONF_modules_load(conf, test_app, 0), 0)) diff --git a/test/ssl_test_ctx.c b/test/ssl_test_ctx.c index 76769669..5b427e53 100644 --- a/test/ssl_test_ctx.c +++ b/test/ssl_test_ctx.c @@ -709,7 +709,7 @@ static const ssl_test_server_option ssl_test_server_options[] = { { "SessionTicketAppData", &parse_server_session_ticket_app_data }, }; -SSL_TEST_CTX *SSL_TEST_CTX_new() +SSL_TEST_CTX *SSL_TEST_CTX_new(void) { SSL_TEST_CTX *ret; diff --git a/test/ssl_test_ctx_test.c b/test/ssl_test_ctx_test.c index e0458a17..ffbbfbc1 100644 --- a/test/ssl_test_ctx_test.c +++ b/test/ssl_test_ctx_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy diff --git a/test/sslapitest.c b/test/sslapitest.c index 32f60e56..9b0237e0 100644 --- a/test/sslapitest.c +++ b/test/sslapitest.c @@ -14,16 +14,22 @@ #include #include #include +#include +#include +#include #include "ssltestlib.h" #include "testutil.h" +#include "testutil/output.h" #include "internal/nelem.h" #include "../ssl/ssl_locl.h" static char *cert = NULL; static char *privkey = NULL; +static char *srpvfile = NULL; +static char *tmpfilename = NULL; -#define LOG_BUFFER_SIZE 1024 +#define LOG_BUFFER_SIZE 2048 static char server_log_buffer[LOG_BUFFER_SIZE + 1] = {0}; static size_t server_log_buffer_index = 0; static char client_log_buffer[LOG_BUFFER_SIZE + 1] = {0}; @@ -49,10 +55,13 @@ static X509 *ocspcert = NULL; struct sslapitest_log_counts { unsigned int rsa_key_exchange_count; unsigned int master_secret_count; + unsigned int client_early_secret_count; unsigned int client_handshake_secret_count; unsigned int server_handshake_secret_count; unsigned int client_application_secret_count; unsigned int server_application_secret_count; + unsigned int early_exporter_secret_count; + unsigned int exporter_secret_count; }; @@ -134,10 +143,13 @@ static int test_keylog_output(char *buffer, const SSL *ssl, size_t master_key_size = SSL_MAX_MASTER_KEY_LENGTH; unsigned int rsa_key_exchange_count = 0; unsigned int master_secret_count = 0; + unsigned int client_early_secret_count = 0; unsigned int client_handshake_secret_count = 0; unsigned int server_handshake_secret_count = 0; unsigned int client_application_secret_count = 0; unsigned int server_application_secret_count = 0; + unsigned int early_exporter_secret_count = 0; + unsigned int exporter_secret_count = 0; for (token = strtok(buffer, " \n"); token != NULL; token = strtok(NULL, " \n")) { @@ -191,17 +203,22 @@ static int test_keylog_output(char *buffer, const SSL *ssl, master_key_size))) return 0; master_secret_count++; - } else if (strcmp(token, "CLIENT_HANDSHAKE_TRAFFIC_SECRET") == 0 + } else if (strcmp(token, "CLIENT_EARLY_TRAFFIC_SECRET") == 0 + || strcmp(token, "CLIENT_HANDSHAKE_TRAFFIC_SECRET") == 0 || strcmp(token, "SERVER_HANDSHAKE_TRAFFIC_SECRET") == 0 || strcmp(token, "CLIENT_TRAFFIC_SECRET_0") == 0 - || strcmp(token, "SERVER_TRAFFIC_SECRET_0") == 0) { + || strcmp(token, "SERVER_TRAFFIC_SECRET_0") == 0 + || strcmp(token, "EARLY_EXPORTER_SECRET") == 0 + || strcmp(token, "EXPORTER_SECRET") == 0) { /* * TLSv1.3 secret. Tokens should be: 64 ASCII bytes of hex-encoded * client random, and then the hex-encoded secret. In this case, * we treat all of these secrets identically and then just * distinguish between them when counting what we saw. */ - if (strcmp(token, "CLIENT_HANDSHAKE_TRAFFIC_SECRET") == 0) + if (strcmp(token, "CLIENT_EARLY_TRAFFIC_SECRET") == 0) + client_early_secret_count++; + else if (strcmp(token, "CLIENT_HANDSHAKE_TRAFFIC_SECRET") == 0) client_handshake_secret_count++; else if (strcmp(token, "SERVER_HANDSHAKE_TRAFFIC_SECRET") == 0) server_handshake_secret_count++; @@ -209,6 +226,10 @@ static int test_keylog_output(char *buffer, const SSL *ssl, client_application_secret_count++; else if (strcmp(token, "SERVER_TRAFFIC_SECRET_0") == 0) server_application_secret_count++; + else if (strcmp(token, "EARLY_EXPORTER_SECRET") == 0) + early_exporter_secret_count++; + else if (strcmp(token, "EXPORTER_SECRET") == 0) + exporter_secret_count++; client_random_size = SSL_get_client_random(ssl, actual_client_random, @@ -242,6 +263,8 @@ static int test_keylog_output(char *buffer, const SSL *ssl, expected->rsa_key_exchange_count) || !TEST_size_t_eq(master_secret_count, expected->master_secret_count) + || !TEST_size_t_eq(client_early_secret_count, + expected->client_early_secret_count) || !TEST_size_t_eq(client_handshake_secret_count, expected->client_handshake_secret_count) || !TEST_size_t_eq(server_handshake_secret_count, @@ -249,7 +272,11 @@ static int test_keylog_output(char *buffer, const SSL *ssl, || !TEST_size_t_eq(client_application_secret_count, expected->client_application_secret_count) || !TEST_size_t_eq(server_application_secret_count, - expected->server_application_secret_count)) + expected->server_application_secret_count) + || !TEST_size_t_eq(early_exporter_secret_count, + expected->early_exporter_secret_count) + || !TEST_size_t_eq(exporter_secret_count, + expected->exporter_secret_count)) return 0; return 1; } @@ -271,6 +298,7 @@ static int test_keylog(void) if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, &sctx, &cctx, cert, privkey))) return 0; @@ -338,8 +366,11 @@ static int test_keylog_no_master_key(void) { SSL_CTX *cctx = NULL, *sctx = NULL; SSL *clientssl = NULL, *serverssl = NULL; + SSL_SESSION *sess = NULL; int testresult = 0; struct sslapitest_log_counts expected = {0}; + unsigned char buf[1]; + size_t readbytes, written; /* Clean up logging space */ memset(client_log_buffer, 0, sizeof(client_log_buffer)); @@ -348,9 +379,11 @@ static int test_keylog_no_master_key(void) server_log_buffer_index = 0; error_writing_log = 0; - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey))) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey)) + || !TEST_true(SSL_CTX_set_max_early_data(sctx, + SSL3_RT_MAX_PLAIN_LENGTH))) return 0; if (!TEST_true(SSL_CTX_get_keylog_callback(cctx) == NULL) @@ -384,6 +417,46 @@ static int test_keylog_no_master_key(void) expected.server_handshake_secret_count = 1; expected.client_application_secret_count = 1; expected.server_application_secret_count = 1; + expected.exporter_secret_count = 1; + if (!TEST_true(test_keylog_output(client_log_buffer, clientssl, + SSL_get_session(clientssl), &expected)) + || !TEST_true(test_keylog_output(server_log_buffer, serverssl, + SSL_get_session(serverssl), + &expected))) + goto end; + + /* Terminate old session and resume with early data. */ + sess = SSL_get1_session(clientssl); + SSL_shutdown(clientssl); + SSL_shutdown(serverssl); + SSL_free(serverssl); + SSL_free(clientssl); + serverssl = clientssl = NULL; + + /* Reset key log */ + memset(client_log_buffer, 0, sizeof(client_log_buffer)); + memset(server_log_buffer, 0, sizeof(server_log_buffer)); + client_log_buffer_index = 0; + server_log_buffer_index = 0; + + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + || !TEST_true(SSL_set_session(clientssl, sess)) + /* Here writing 0 length early data is enough. */ + || !TEST_true(SSL_write_early_data(clientssl, NULL, 0, &written)) + || !TEST_int_eq(SSL_read_early_data(serverssl, buf, sizeof(buf), + &readbytes), + SSL_READ_EARLY_DATA_ERROR) + || !TEST_int_eq(SSL_get_early_data_status(serverssl), + SSL_EARLY_DATA_ACCEPTED) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_true(SSL_session_reused(clientssl))) + goto end; + + /* In addition to the previous entries, expect early secrets. */ + expected.client_early_secret_count = 1; + expected.early_exporter_secret_count = 1; if (!TEST_true(test_keylog_output(client_log_buffer, clientssl, SSL_get_session(clientssl), &expected)) || !TEST_true(test_keylog_output(server_log_buffer, serverssl, @@ -394,6 +467,7 @@ static int test_keylog_no_master_key(void) testresult = 1; end: + SSL_SESSION_free(sess); SSL_free(serverssl); SSL_free(clientssl); SSL_CTX_free(sctx); @@ -451,9 +525,9 @@ static int test_client_hello_cb(void) SSL *clientssl = NULL, *serverssl = NULL; int testctr = 0, testresult = 0; - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey))) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) goto end; SSL_CTX_set_client_hello_cb(sctx, full_client_hello_callback, &testctr); @@ -489,7 +563,9 @@ end: #endif static int execute_test_large_message(const SSL_METHOD *smeth, - const SSL_METHOD *cmeth, int read_ahead) + const SSL_METHOD *cmeth, + int min_version, int max_version, + int read_ahead) { SSL_CTX *cctx = NULL, *sctx = NULL; SSL *clientssl = NULL, *serverssl = NULL; @@ -507,8 +583,8 @@ static int execute_test_large_message(const SSL_METHOD *smeth, if (!TEST_ptr(chaincert)) goto end; - if (!TEST_true(create_ssl_ctx_pair(smeth, cmeth, &sctx, - &cctx, cert, privkey))) + if (!TEST_true(create_ssl_ctx_pair(smeth, cmeth, min_version, max_version, + &sctx, &cctx, cert, privkey))) goto end; if (read_ahead) { @@ -565,12 +641,14 @@ static int execute_test_large_message(const SSL_METHOD *smeth, static int test_large_message_tls(void) { return execute_test_large_message(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, 0); } static int test_large_message_tls_read_ahead(void) { return execute_test_large_message(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, 1); } @@ -582,7 +660,9 @@ static int test_large_message_dtls(void) * read_ahead is set. */ return execute_test_large_message(DTLS_server_method(), - DTLS_client_method(), 0); + DTLS_client_method(), + DTLS1_VERSION, DTLS_MAX_VERSION, + 0); } #endif @@ -641,8 +721,9 @@ static int test_tlsext_status_type(void) OCSP_RESPID *id = NULL; BIO *certbio = NULL; - if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, - &cctx, cert, privkey)) + if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey)) return 0; if (SSL_CTX_get_tlsext_status_type(cctx) != -1) @@ -801,13 +882,17 @@ static int execute_test_session(int maxprot, int use_int_cache, SSL *serverssl3 = NULL, *clientssl3 = NULL; # endif SSL_SESSION *sess1 = NULL, *sess2 = NULL; - int testresult = 0; + int testresult = 0, numnewsesstick = 1; new_called = remove_called = 0; - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey))) + /* TLSv1.3 sends 2 NewSessionTickets */ + if (maxprot == TLS1_3_VERSION) + numnewsesstick = 2; + + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) return 0; /* @@ -842,7 +927,9 @@ static int execute_test_session(int maxprot, int use_int_cache, if (use_int_cache && !TEST_false(SSL_CTX_add_session(cctx, sess1))) goto end; if (use_ext_cache - && (!TEST_int_eq(new_called, 1) || !TEST_int_eq(remove_called, 0))) + && (!TEST_int_eq(new_called, numnewsesstick) + + || !TEST_int_eq(remove_called, 0))) goto end; new_called = remove_called = 0; @@ -857,11 +944,11 @@ static int execute_test_session(int maxprot, int use_int_cache, if (maxprot == TLS1_3_VERSION) { /* * In TLSv1.3 we should have created a new session even though we have - * resumed. The original session should also have been removed. + * resumed. */ if (use_ext_cache && (!TEST_int_eq(new_called, 1) - || !TEST_int_eq(remove_called, 1))) + || !TEST_int_eq(remove_called, 0))) goto end; } else { /* @@ -891,7 +978,8 @@ static int execute_test_session(int maxprot, int use_int_cache, goto end; if (use_ext_cache - && (!TEST_int_eq(new_called, 1) || !TEST_int_eq(remove_called, 0))) + && (!TEST_int_eq(new_called, numnewsesstick) + || !TEST_int_eq(remove_called, 0))) goto end; new_called = remove_called = 0; @@ -984,14 +1072,27 @@ static int execute_test_session(int maxprot, int use_int_cache, || !TEST_ptr(sess2 = SSL_get1_session(serverssl1))) goto end; - /* Should fail because it should already be in the cache */ - if (use_int_cache && !TEST_false(SSL_CTX_add_session(sctx, sess2))) - goto end; + if (use_int_cache) { + if (maxprot == TLS1_3_VERSION && !use_ext_cache) { + /* + * In TLSv1.3 it should not have been added to the internal cache, + * except in the case where we also have an external cache (in that + * case it gets added to the cache in order to generate remove + * events after timeout). + */ + if (!TEST_false(SSL_CTX_remove_session(sctx, sess2))) + goto end; + } else { + /* Should fail because it should already be in the cache */ + if (!TEST_false(SSL_CTX_add_session(sctx, sess2))) + goto end; + } + } if (use_ext_cache) { SSL_SESSION *tmp = sess2; - if (!TEST_int_eq(new_called, 1) + if (!TEST_int_eq(new_called, numnewsesstick) || !TEST_int_eq(remove_called, 0) || !TEST_int_eq(get_called, 0)) goto end; @@ -1000,7 +1101,7 @@ static int execute_test_session(int maxprot, int use_int_cache, * the external cache. We take a copy first because * SSL_CTX_remove_session() also marks the session as non-resumable. */ - if (use_int_cache) { + if (use_int_cache && maxprot != TLS1_3_VERSION) { if (!TEST_ptr(tmp = SSL_SESSION_dup(sess2)) || !TEST_true(SSL_CTX_remove_session(sctx, sess2))) goto end; @@ -1020,15 +1121,16 @@ static int execute_test_session(int maxprot, int use_int_cache, goto end; if (use_ext_cache) { - if (!TEST_int_eq(new_called, 0) - || !TEST_int_eq(remove_called, 0)) + if (!TEST_int_eq(remove_called, 0)) goto end; if (maxprot == TLS1_3_VERSION) { - if (!TEST_int_eq(get_called, 0)) + if (!TEST_int_eq(new_called, 1) + || !TEST_int_eq(get_called, 0)) goto end; } else { - if (!TEST_int_eq(get_called, 1)) + if (!TEST_int_eq(new_called, 0) + || !TEST_int_eq(get_called, 1)) goto end; } } @@ -1095,11 +1197,156 @@ static int test_session_with_both_cache(void) #endif } -#define USE_NULL 0 -#define USE_BIO_1 1 -#define USE_BIO_2 2 +#ifndef OPENSSL_NO_TLS1_3 +static SSL_SESSION *sesscache[6]; +static int do_cache; -#define TOTAL_SSL_SET_BIO_TESTS (3 * 3 * 3 * 3) +static int new_cachesession_cb(SSL *ssl, SSL_SESSION *sess) +{ + if (do_cache) { + sesscache[new_called] = sess; + } else { + /* We don't need the reference to the session, so free it */ + SSL_SESSION_free(sess); + } + new_called++; + + return 1; +} + +static int post_handshake_verify(SSL *sssl, SSL *cssl) +{ + SSL_set_verify(sssl, SSL_VERIFY_PEER, NULL); + if (!TEST_true(SSL_verify_client_post_handshake(sssl))) + return 0; + + /* Start handshake on the server and client */ + if (!TEST_int_eq(SSL_do_handshake(sssl), 1) + || !TEST_int_le(SSL_read(cssl, NULL, 0), 0) + || !TEST_int_le(SSL_read(sssl, NULL, 0), 0) + || !TEST_true(create_ssl_connection(sssl, cssl, + SSL_ERROR_NONE))) + return 0; + + return 1; +} + +static int test_tickets(int idx) +{ + SSL_CTX *sctx = NULL, *cctx = NULL; + SSL *serverssl = NULL, *clientssl = NULL; + int testresult = 0, i; + size_t j; + + /* idx is the test number, but also the number of tickets we want */ + + new_called = 0; + do_cache = 1; + + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, &sctx, + &cctx, cert, privkey)) + || !TEST_true(SSL_CTX_set_num_tickets(sctx, idx))) + goto end; + + SSL_CTX_set_session_cache_mode(cctx, SSL_SESS_CACHE_CLIENT + | SSL_SESS_CACHE_NO_INTERNAL_STORE); + SSL_CTX_sess_set_new_cb(cctx, new_cachesession_cb); + + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL))) + goto end; + + SSL_force_post_handshake_auth(clientssl); + + if (!TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + /* Check we got the number of tickets we were expecting */ + || !TEST_int_eq(idx, new_called)) + goto end; + + /* After a post-handshake authentication we should get new tickets issued */ + if (!post_handshake_verify(serverssl, clientssl) + || !TEST_int_eq(idx * 2, new_called)) + goto end; + + SSL_shutdown(clientssl); + SSL_shutdown(serverssl); + SSL_free(serverssl); + SSL_free(clientssl); + serverssl = clientssl = NULL; + + /* Stop caching sessions - just count them */ + do_cache = 0; + + /* Test that we can resume with all the tickets we got given */ + for (i = 0; i < idx * 2; i++) { + new_called = 0; + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + || !TEST_true(SSL_set_session(clientssl, sesscache[i]))) + goto end; + + SSL_force_post_handshake_auth(clientssl); + + if (!TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_true(SSL_session_reused(clientssl)) + /* Following a resumption we only get 1 ticket */ + || !TEST_int_eq(new_called, 1)) + goto end; + + new_called = 0; + /* After a post-handshake authentication we should get 1 new ticket */ + if (!post_handshake_verify(serverssl, clientssl) + || !TEST_int_eq(new_called, 1)) + goto end; + + SSL_shutdown(clientssl); + SSL_shutdown(serverssl); + SSL_free(serverssl); + SSL_free(clientssl); + serverssl = clientssl = NULL; + SSL_SESSION_free(sesscache[i]); + sesscache[i] = NULL; + } + + testresult = 1; + + end: + SSL_free(serverssl); + SSL_free(clientssl); + for (j = 0; j < OSSL_NELEM(sesscache); j++) { + SSL_SESSION_free(sesscache[j]); + sesscache[j] = NULL; + } + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + + return testresult; +} +#endif + +#define USE_NULL 0 +#define USE_BIO_1 1 +#define USE_BIO_2 2 +#define USE_DEFAULT 3 + +#define CONNTYPE_CONNECTION_SUCCESS 0 +#define CONNTYPE_CONNECTION_FAIL 1 +#define CONNTYPE_NO_CONNECTION 2 + +#define TOTAL_NO_CONN_SSL_SET_BIO_TESTS (3 * 3 * 3 * 3) +#define TOTAL_CONN_SUCCESS_SSL_SET_BIO_TESTS (2 * 2) +#if !defined(OPENSSL_NO_TLS1_3) && !defined(OPENSSL_NO_TLS1_2) +# define TOTAL_CONN_FAIL_SSL_SET_BIO_TESTS (2 * 2) +#else +# define TOTAL_CONN_FAIL_SSL_SET_BIO_TESTS 0 +#endif + +#define TOTAL_SSL_SET_BIO_TESTS TOTAL_NO_CONN_SSL_SET_BIO_TESTS \ + + TOTAL_CONN_SUCCESS_SSL_SET_BIO_TESTS \ + + TOTAL_CONN_FAIL_SSL_SET_BIO_TESTS static void setupbio(BIO **res, BIO *bio1, BIO *bio2, int type) { @@ -1116,28 +1363,65 @@ static void setupbio(BIO **res, BIO *bio1, BIO *bio2, int type) } } + +/* + * Tests calls to SSL_set_bio() under various conditions. + * + * For the first 3 * 3 * 3 * 3 = 81 tests we do 2 calls to SSL_set_bio() with + * various combinations of valid BIOs or NULL being set for the rbio/wbio. We + * then do more tests where we create a successful connection first using our + * standard connection setup functions, and then call SSL_set_bio() with + * various combinations of valid BIOs or NULL. We then repeat these tests + * following a failed connection. In this last case we are looking to check that + * SSL_set_bio() functions correctly in the case where s->bbio is not NULL. + */ static int test_ssl_set_bio(int idx) { - SSL_CTX *ctx; + SSL_CTX *sctx = NULL, *cctx = NULL; BIO *bio1 = NULL; BIO *bio2 = NULL; BIO *irbio = NULL, *iwbio = NULL, *nrbio = NULL, *nwbio = NULL; - SSL *ssl = NULL; - int initrbio, initwbio, newrbio, newwbio; + SSL *serverssl = NULL, *clientssl = NULL; + int initrbio, initwbio, newrbio, newwbio, conntype; int testresult = 0; - initrbio = idx % 3; - idx /= 3; - initwbio = idx % 3; - idx /= 3; - newrbio = idx % 3; - idx /= 3; - newwbio = idx; - if (!TEST_int_le(newwbio, 2)) - return 0; + if (idx < TOTAL_NO_CONN_SSL_SET_BIO_TESTS) { + initrbio = idx % 3; + idx /= 3; + initwbio = idx % 3; + idx /= 3; + newrbio = idx % 3; + idx /= 3; + newwbio = idx % 3; + conntype = CONNTYPE_NO_CONNECTION; + } else { + idx -= TOTAL_NO_CONN_SSL_SET_BIO_TESTS; + initrbio = initwbio = USE_DEFAULT; + newrbio = idx % 2; + idx /= 2; + newwbio = idx % 2; + idx /= 2; + conntype = idx % 2; + } - if (!TEST_ptr(ctx = SSL_CTX_new(TLS_method())) - || !TEST_ptr(ssl = SSL_new(ctx))) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) + goto end; + + if (conntype == CONNTYPE_CONNECTION_FAIL) { + /* + * We won't ever get here if either TLSv1.3 or TLSv1.2 is disabled + * because we reduced the number of tests in the definition of + * TOTAL_CONN_FAIL_SSL_SET_BIO_TESTS to avoid this scenario. By setting + * mismatched protocol versions we will force a connection failure. + */ + SSL_CTX_set_min_proto_version(sctx, TLS1_3_VERSION); + SSL_CTX_set_max_proto_version(cctx, TLS1_2_VERSION); + } + + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL))) goto end; if (initrbio == USE_BIO_1 @@ -1156,19 +1440,27 @@ static int test_ssl_set_bio(int idx) goto end; } - setupbio(&irbio, bio1, bio2, initrbio); - setupbio(&iwbio, bio1, bio2, initwbio); + if (initrbio != USE_DEFAULT) { + setupbio(&irbio, bio1, bio2, initrbio); + setupbio(&iwbio, bio1, bio2, initwbio); + SSL_set_bio(clientssl, irbio, iwbio); - /* - * We want to maintain our own refs to these BIO, so do an up ref for each - * BIO that will have ownership transferred in the SSL_set_bio() call - */ - if (irbio != NULL) - BIO_up_ref(irbio); - if (iwbio != NULL && iwbio != irbio) - BIO_up_ref(iwbio); + /* + * We want to maintain our own refs to these BIO, so do an up ref for + * each BIO that will have ownership transferred in the SSL_set_bio() + * call + */ + if (irbio != NULL) + BIO_up_ref(irbio); + if (iwbio != NULL && iwbio != irbio) + BIO_up_ref(iwbio); + } - SSL_set_bio(ssl, irbio, iwbio); + if (conntype != CONNTYPE_NO_CONNECTION + && !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE) + == (conntype == CONNTYPE_CONNECTION_SUCCESS))) + goto end; setupbio(&nrbio, bio1, bio2, newrbio); setupbio(&nwbio, bio1, bio2, newwbio); @@ -1187,12 +1479,11 @@ static int test_ssl_set_bio(int idx) && (nwbio != iwbio || (nwbio == iwbio && irbio == iwbio))) BIO_up_ref(nwbio); - SSL_set_bio(ssl, nrbio, nwbio); + SSL_set_bio(clientssl, nrbio, nwbio); testresult = 1; end: - SSL_free(ssl); BIO_free(bio1); BIO_free(bio2); @@ -1202,7 +1493,10 @@ static int test_ssl_set_bio(int idx) * functions. If we haven't done enough then this will only be detected in * a crypto-mdebug build */ - SSL_CTX_free(ctx); + SSL_free(serverssl); + SSL_free(clientssl); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); return testresult; } @@ -1335,9 +1629,9 @@ static int test_set_sigalgs(int idx) curr = testctx ? &testsigalgs[idx] : &testsigalgs[idx - OSSL_NELEM(testsigalgs)]; - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey))) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) return 0; /* @@ -1449,6 +1743,7 @@ static int use_session_cb(SSL *ssl, const EVP_MD *md, const unsigned char **id, return 1; } +#ifndef OPENSSL_NO_PSK static unsigned int psk_client_cb(SSL *ssl, const char *hint, char *id, unsigned int max_id_len, unsigned char *psk, @@ -1476,6 +1771,7 @@ static unsigned int psk_client_cb(SSL *ssl, const char *hint, char *id, return psklen; } +#endif /* OPENSSL_NO_PSK */ static int find_session_cb(SSL *ssl, const unsigned char *identity, size_t identity_len, SSL_SESSION **sess) @@ -1503,6 +1799,7 @@ static int find_session_cb(SSL *ssl, const unsigned char *identity, return 1; } +#ifndef OPENSSL_NO_PSK static unsigned int psk_server_cb(SSL *ssl, const char *identity, unsigned char *psk, unsigned int max_psk_len) { @@ -1529,6 +1826,7 @@ static unsigned int psk_server_cb(SSL *ssl, const char *identity, return psklen; } +#endif /* OPENSSL_NO_PSK */ #define MSG1 "Hello" #define MSG2 "World." @@ -1548,12 +1846,10 @@ static unsigned int psk_server_cb(SSL *ssl, const char *identity, static int setupearly_data_test(SSL_CTX **cctx, SSL_CTX **sctx, SSL **clientssl, SSL **serverssl, SSL_SESSION **sess, int idx) { - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), sctx, - cctx, cert, privkey)) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + sctx, cctx, cert, privkey)) || !TEST_true(SSL_CTX_set_max_early_data(*sctx, - SSL3_RT_MAX_PLAIN_LENGTH)) - || !TEST_true(SSL_CTX_set_max_early_data(*cctx, SSL3_RT_MAX_PLAIN_LENGTH))) return 0; @@ -1618,8 +1914,15 @@ static int setupearly_data_test(SSL_CTX **cctx, SSL_CTX **sctx, SSL **clientssl, } serverpsk = clientpsk; - if (sess != NULL) + if (sess != NULL) { + if (!TEST_true(SSL_SESSION_up_ref(clientpsk))) { + SSL_SESSION_free(clientpsk); + SSL_SESSION_free(serverpsk); + clientpsk = serverpsk = NULL; + return 0; + } *sess = clientpsk; + } return 1; } @@ -1775,10 +2078,13 @@ static int test_early_data_read_write(int idx) goto end; /* - * Make sure we process the NewSessionTicket. This arrives post-handshake. - * We attempt a read which we do not expect to return any data. + * Make sure we process the two NewSessionTickets. These arrive + * post-handshake. We attempt reads which we do not expect to return any + * data. */ - if (!TEST_false(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes))) + if (!TEST_false(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) + || !TEST_false(SSL_read_ex(clientssl, buf, sizeof(buf), + &readbytes))) goto end; /* Server should be able to write normal data */ @@ -1788,9 +2094,7 @@ static int test_early_data_read_write(int idx) || !TEST_mem_eq(buf, readbytes, MSG7, strlen(MSG7))) goto end; - /* We keep the PSK session around if using PSK */ - if (idx != 2) - SSL_SESSION_free(sess); + SSL_SESSION_free(sess); sess = SSL_get1_session(clientssl); use_session_cb_cnt = 0; find_session_cb_cnt = 0; @@ -1840,8 +2144,58 @@ static int test_early_data_read_write(int idx) testresult = 1; end: - if (sess != clientpsk) - SSL_SESSION_free(sess); + SSL_SESSION_free(sess); + SSL_SESSION_free(clientpsk); + SSL_SESSION_free(serverpsk); + clientpsk = serverpsk = NULL; + SSL_free(serverssl); + SSL_free(clientssl); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + return testresult; +} + +static int test_early_data_replay(int idx) +{ + SSL_CTX *cctx = NULL, *sctx = NULL; + SSL *clientssl = NULL, *serverssl = NULL; + int testresult = 0; + SSL_SESSION *sess = NULL; + + if (!TEST_true(setupearly_data_test(&cctx, &sctx, &clientssl, + &serverssl, &sess, idx))) + goto end; + + /* + * The server is configured to accept early data. Create a connection to + * "use up" the ticket + */ + if (!TEST_true(create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE)) + || !TEST_true(SSL_session_reused(clientssl))) + goto end; + + SSL_shutdown(clientssl); + SSL_shutdown(serverssl); + SSL_free(serverssl); + SSL_free(clientssl); + serverssl = clientssl = NULL; + + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + || !TEST_true(SSL_set_session(clientssl, sess)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + /* + * This time we should not have resumed the session because we + * already used it once. + */ + || !TEST_false(SSL_session_reused(clientssl))) + goto end; + + testresult = 1; + + end: + SSL_SESSION_free(sess); SSL_SESSION_free(clientpsk); SSL_SESSION_free(serverpsk); clientpsk = serverpsk = NULL; @@ -1928,8 +2282,7 @@ static int early_data_skip_helper(int hrr, int idx) testresult = 1; end: - if (sess != clientpsk) - SSL_SESSION_free(clientpsk); + SSL_SESSION_free(clientpsk); SSL_SESSION_free(serverpsk); clientpsk = serverpsk = NULL; SSL_SESSION_free(sess); @@ -2000,15 +2353,6 @@ static int test_early_data_not_sent(int idx) || !TEST_size_t_eq(written, strlen(MSG2))) goto end; - /* - * Should block due to the NewSessionTicket arrival unless we're using - * read_ahead - */ - if (idx != 1) { - if (!TEST_false(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes))) - goto end; - } - if (!TEST_true(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) || !TEST_mem_eq(buf, readbytes, MSG2, strlen(MSG2))) goto end; @@ -2016,8 +2360,8 @@ static int test_early_data_not_sent(int idx) testresult = 1; end: - /* If using PSK then clientpsk and sess are the same */ SSL_SESSION_free(sess); + SSL_SESSION_free(clientpsk); SSL_SESSION_free(serverpsk); clientpsk = serverpsk = NULL; SSL_free(serverssl); @@ -2225,6 +2569,7 @@ static int test_early_data_psk(int idx) testresult = 1; end: + SSL_SESSION_free(sess); SSL_SESSION_free(clientpsk); SSL_SESSION_free(serverpsk); clientpsk = serverpsk = NULL; @@ -2282,8 +2627,8 @@ static int test_early_data_not_expected(int idx) testresult = 1; end: - /* If using PSK then clientpsk and sess are the same */ SSL_SESSION_free(sess); + SSL_SESSION_free(clientpsk); SSL_SESSION_free(serverpsk); clientpsk = serverpsk = NULL; SSL_free(serverssl); @@ -2356,7 +2701,6 @@ static int test_early_data_tls1_2(int idx) testresult = 1; end: - /* If using PSK then clientpsk and sess are the same */ SSL_SESSION_free(clientpsk); SSL_SESSION_free(serverpsk); clientpsk = serverpsk = NULL; @@ -2369,6 +2713,87 @@ static int test_early_data_tls1_2(int idx) } # endif /* OPENSSL_NO_TLS1_2 */ +/* + * Test configuring the TLSv1.3 ciphersuites + * + * Test 0: Set a default ciphersuite in the SSL_CTX (no explicit cipher_list) + * Test 1: Set a non-default ciphersuite in the SSL_CTX (no explicit cipher_list) + * Test 2: Set a default ciphersuite in the SSL (no explicit cipher_list) + * Test 3: Set a non-default ciphersuite in the SSL (no explicit cipher_list) + * Test 4: Set a default ciphersuite in the SSL_CTX (SSL_CTX cipher_list) + * Test 5: Set a non-default ciphersuite in the SSL_CTX (SSL_CTX cipher_list) + * Test 6: Set a default ciphersuite in the SSL (SSL_CTX cipher_list) + * Test 7: Set a non-default ciphersuite in the SSL (SSL_CTX cipher_list) + * Test 8: Set a default ciphersuite in the SSL (SSL cipher_list) + * Test 9: Set a non-default ciphersuite in the SSL (SSL cipher_list) + */ +static int test_set_ciphersuite(int idx) +{ + SSL_CTX *cctx = NULL, *sctx = NULL; + SSL *clientssl = NULL, *serverssl = NULL; + int testresult = 0; + + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey)) + || !TEST_true(SSL_CTX_set_ciphersuites(sctx, + "TLS_AES_128_GCM_SHA256:TLS_AES_128_CCM_SHA256"))) + goto end; + + if (idx >=4 && idx <= 7) { + /* SSL_CTX explicit cipher list */ + if (!TEST_true(SSL_CTX_set_cipher_list(cctx, "AES256-GCM-SHA384"))) + goto end; + } + + if (idx == 0 || idx == 4) { + /* Default ciphersuite */ + if (!TEST_true(SSL_CTX_set_ciphersuites(cctx, + "TLS_AES_128_GCM_SHA256"))) + goto end; + } else if (idx == 1 || idx == 5) { + /* Non default ciphersuite */ + if (!TEST_true(SSL_CTX_set_ciphersuites(cctx, + "TLS_AES_128_CCM_SHA256"))) + goto end; + } + + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL))) + goto end; + + if (idx == 8 || idx == 9) { + /* SSL explicit cipher list */ + if (!TEST_true(SSL_set_cipher_list(clientssl, "AES256-GCM-SHA384"))) + goto end; + } + + if (idx == 2 || idx == 6 || idx == 8) { + /* Default ciphersuite */ + if (!TEST_true(SSL_set_ciphersuites(clientssl, + "TLS_AES_128_GCM_SHA256"))) + goto end; + } else if (idx == 3 || idx == 7 || idx == 9) { + /* Non default ciphersuite */ + if (!TEST_true(SSL_set_ciphersuites(clientssl, + "TLS_AES_128_CCM_SHA256"))) + goto end; + } + + if (!TEST_true(create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE))) + goto end; + + testresult = 1; + + end: + SSL_free(serverssl); + SSL_free(clientssl); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + + return testresult; +} + static int test_ciphersuite_change(void) { SSL_CTX *cctx = NULL, *sctx = NULL; @@ -2378,11 +2803,11 @@ static int test_ciphersuite_change(void) const SSL_CIPHER *aes_128_gcm_sha256 = NULL; /* Create a session based on SHA-256 */ - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey)) - || !TEST_true(SSL_CTX_set_cipher_list(cctx, - "TLS13-AES-128-GCM-SHA256")) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey)) + || !TEST_true(SSL_CTX_set_ciphersuites(cctx, + "TLS_AES_128_GCM_SHA256")) || !TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) || !TEST_true(create_ssl_connection(serverssl, clientssl, @@ -2400,8 +2825,8 @@ static int test_ciphersuite_change(void) # if !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305) /* Check we can resume a session with a different SHA-256 ciphersuite */ - if (!TEST_true(SSL_CTX_set_cipher_list(cctx, - "TLS13-CHACHA20-POLY1305-SHA256")) + if (!TEST_true(SSL_CTX_set_ciphersuites(cctx, + "TLS_CHACHA20_POLY1305_SHA256")) || !TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) || !TEST_true(SSL_set_session(clientssl, clntsess)) @@ -2423,7 +2848,7 @@ static int test_ciphersuite_change(void) * Check attempting to resume a SHA-256 session with no SHA-256 ciphersuites * succeeds but does not resume. */ - if (!TEST_true(SSL_CTX_set_cipher_list(cctx, "TLS13-AES-256-GCM-SHA384")) + if (!TEST_true(SSL_CTX_set_ciphersuites(cctx, "TLS_AES_256_GCM_SHA384")) || !TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) || !TEST_true(SSL_set_session(clientssl, clntsess)) @@ -2441,7 +2866,7 @@ static int test_ciphersuite_change(void) serverssl = clientssl = NULL; /* Create a session based on SHA384 */ - if (!TEST_true(SSL_CTX_set_cipher_list(cctx, "TLS13-AES-256-GCM-SHA384")) + if (!TEST_true(SSL_CTX_set_ciphersuites(cctx, "TLS_AES_256_GCM_SHA384")) || !TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) || !TEST_true(create_ssl_connection(serverssl, clientssl, @@ -2455,10 +2880,10 @@ static int test_ciphersuite_change(void) SSL_free(clientssl); serverssl = clientssl = NULL; - if (!TEST_true(SSL_CTX_set_cipher_list(cctx, - "TLS13-AES-128-GCM-SHA256:TLS13-AES-256-GCM-SHA384")) - || !TEST_true(SSL_CTX_set_cipher_list(sctx, - "TLS13-AES-256-GCM-SHA384")) + if (!TEST_true(SSL_CTX_set_ciphersuites(cctx, + "TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384")) + || !TEST_true(SSL_CTX_set_ciphersuites(sctx, + "TLS_AES_256_GCM_SHA384")) || !TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL)) || !TEST_true(SSL_set_session(clientssl, clntsess)) @@ -2498,6 +2923,13 @@ static int test_ciphersuite_change(void) return testresult; } +/* + * Test TLSv1.3 PSKs + * Test 0 = Test new style callbacks + * Test 1 = Test both new and old style callbacks + * Test 2 = Test old style callbacks + * Test 3 = Test old style callbacks with no certificate + */ static int test_tls13_psk(int idx) { SSL_CTX *sctx = NULL, *cctx = NULL; @@ -2511,17 +2943,23 @@ static int test_tls13_psk(int idx) }; int testresult = 0; - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey))) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, idx == 3 ? NULL : cert, + idx == 3 ? NULL : privkey))) goto end; - /* - * We use a ciphersuite with SHA256 to ease testing old style PSK callbacks - * which will always default to SHA256 - */ - if (!TEST_true(SSL_CTX_set_cipher_list(cctx, "TLS13-AES-128-GCM-SHA256"))) - goto end; + if (idx != 3) { + /* + * We use a ciphersuite with SHA256 to ease testing old style PSK + * callbacks which will always default to SHA256. This should not be + * necessary if we have no cert/priv key. In that case the server should + * prefer SHA256 automatically. + */ + if (!TEST_true(SSL_CTX_set_ciphersuites(cctx, + "TLS_AES_128_GCM_SHA256"))) + goto end; + } /* * Test 0: New style callbacks only @@ -2532,47 +2970,54 @@ static int test_tls13_psk(int idx) SSL_CTX_set_psk_use_session_callback(cctx, use_session_cb); SSL_CTX_set_psk_find_session_callback(sctx, find_session_cb); } - if (idx == 1 || idx == 2) { +#ifndef OPENSSL_NO_PSK + if (idx >= 1) { SSL_CTX_set_psk_client_callback(cctx, psk_client_cb); SSL_CTX_set_psk_server_callback(sctx, psk_server_cb); } +#endif srvid = pskid; use_session_cb_cnt = 0; find_session_cb_cnt = 0; psk_client_cb_cnt = 0; psk_server_cb_cnt = 0; - /* Check we can create a connection if callback decides not to send a PSK */ - if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, - NULL, NULL)) - || !TEST_true(create_ssl_connection(serverssl, clientssl, - SSL_ERROR_NONE)) - || !TEST_false(SSL_session_reused(clientssl)) - || !TEST_false(SSL_session_reused(serverssl))) - goto end; + if (idx != 3) { + /* + * Check we can create a connection if callback decides not to send a + * PSK + */ + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_false(SSL_session_reused(clientssl)) + || !TEST_false(SSL_session_reused(serverssl))) + goto end; - if (idx == 0 || idx == 1) { - if (!TEST_true(use_session_cb_cnt == 1) - || !TEST_true(find_session_cb_cnt == 0) - /* - * If no old style callback then below should be 0 - * otherwise 1 - */ - || !TEST_true(psk_client_cb_cnt == idx) - || !TEST_true(psk_server_cb_cnt == 0)) - goto end; - } else { - if (!TEST_true(use_session_cb_cnt == 0) - || !TEST_true(find_session_cb_cnt == 0) - || !TEST_true(psk_client_cb_cnt == 1) - || !TEST_true(psk_server_cb_cnt == 0)) - goto end; + if (idx == 0 || idx == 1) { + if (!TEST_true(use_session_cb_cnt == 1) + || !TEST_true(find_session_cb_cnt == 0) + /* + * If no old style callback then below should be 0 + * otherwise 1 + */ + || !TEST_true(psk_client_cb_cnt == idx) + || !TEST_true(psk_server_cb_cnt == 0)) + goto end; + } else { + if (!TEST_true(use_session_cb_cnt == 0) + || !TEST_true(find_session_cb_cnt == 0) + || !TEST_true(psk_client_cb_cnt == 1) + || !TEST_true(psk_server_cb_cnt == 0)) + goto end; + } + + shutdown_ssl_connection(serverssl, clientssl); + serverssl = clientssl = NULL; + use_session_cb_cnt = psk_client_cb_cnt = 0; } - shutdown_ssl_connection(serverssl, clientssl); - serverssl = clientssl = NULL; - use_session_cb_cnt = psk_client_cb_cnt = 0; - if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL))) goto end; @@ -2652,39 +3097,41 @@ static int test_tls13_psk(int idx) use_session_cb_cnt = find_session_cb_cnt = 0; psk_client_cb_cnt = psk_server_cb_cnt = 0; - /* - * Check that if the server rejects the PSK we can still connect, but with - * a full handshake - */ - srvid = "Dummy Identity"; - if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, - NULL, NULL)) - || !TEST_true(create_ssl_connection(serverssl, clientssl, - SSL_ERROR_NONE)) - || !TEST_false(SSL_session_reused(clientssl)) - || !TEST_false(SSL_session_reused(serverssl))) - goto end; + if (idx != 3) { + /* + * Check that if the server rejects the PSK we can still connect, but with + * a full handshake + */ + srvid = "Dummy Identity"; + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_false(SSL_session_reused(clientssl)) + || !TEST_false(SSL_session_reused(serverssl))) + goto end; - if (idx == 0 || idx == 1) { - if (!TEST_true(use_session_cb_cnt == 1) - || !TEST_true(find_session_cb_cnt == 1) - || !TEST_true(psk_client_cb_cnt == 0) - /* - * If no old style callback then below should be 0 - * otherwise 1 - */ - || !TEST_true(psk_server_cb_cnt == idx)) - goto end; - } else { - if (!TEST_true(use_session_cb_cnt == 0) - || !TEST_true(find_session_cb_cnt == 0) - || !TEST_true(psk_client_cb_cnt == 1) - || !TEST_true(psk_server_cb_cnt == 1)) - goto end; + if (idx == 0 || idx == 1) { + if (!TEST_true(use_session_cb_cnt == 1) + || !TEST_true(find_session_cb_cnt == 1) + || !TEST_true(psk_client_cb_cnt == 0) + /* + * If no old style callback then below should be 0 + * otherwise 1 + */ + || !TEST_true(psk_server_cb_cnt == idx)) + goto end; + } else { + if (!TEST_true(use_session_cb_cnt == 0) + || !TEST_true(find_session_cb_cnt == 0) + || !TEST_true(psk_client_cb_cnt == 1) + || !TEST_true(psk_server_cb_cnt == 1)) + goto end; + } + + shutdown_ssl_connection(serverssl, clientssl); + serverssl = clientssl = NULL; } - - shutdown_ssl_connection(serverssl, clientssl); - serverssl = clientssl = NULL; testresult = 1; end: @@ -2744,9 +3191,9 @@ static int test_stateless(void) SSL *serverssl = NULL, *clientssl = NULL; int testresult = 0; - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey))) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) goto end; /* The arrival of CCS messages can confuse the test */ @@ -2968,14 +3415,15 @@ static int test_custom_exts(int tst) clntaddnewcb = clntparsenewcb = srvaddnewcb = srvparsenewcb = 0; snicb = 0; - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey))) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) goto end; if (tst == 2 - && !TEST_true(create_ssl_ctx_pair(TLS_server_method(), NULL, &sctx2, - NULL, cert, privkey))) + && !TEST_true(create_ssl_ctx_pair(TLS_server_method(), NULL, + TLS1_VERSION, TLS_MAX_VERSION, + &sctx2, NULL, cert, privkey))) goto end; @@ -3083,9 +3531,10 @@ static int test_custom_exts(int tst) || (tst == 2 && snicb != 1)) goto end; } else { + /* In this case there 2 NewSessionTicket messages created */ if (clntaddnewcb != 1 - || clntparsenewcb != 4 - || srvaddnewcb != 4 + || clntparsenewcb != 5 + || srvaddnewcb != 5 || srvparsenewcb != 1) goto end; } @@ -3129,10 +3578,13 @@ static int test_custom_exts(int tst) || srvparsenewcb != 2) goto end; } else { - /* No Certificate message extensions in the resumption handshake */ + /* + * No Certificate message extensions in the resumption handshake, + * 2 NewSessionTickets in the initial handshake, 1 in the resumption + */ if (clntaddnewcb != 2 - || clntparsenewcb != 7 - || srvaddnewcb != 7 + || clntparsenewcb != 8 + || srvaddnewcb != 8 || srvparsenewcb != 2) goto end; } @@ -3244,9 +3696,9 @@ static int test_export_key_mat(int tst) if (tst == 3) return 1; #endif - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey))) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) goto end; OPENSSL_assert(tst >= 0 && (size_t)tst < OSSL_NELEM(protocols)); @@ -3398,8 +3850,7 @@ static int test_export_key_mat_early(int idx) testresult = 1; end: - if (sess != clientpsk) - SSL_SESSION_free(sess); + SSL_SESSION_free(sess); SSL_SESSION_free(clientpsk); SSL_SESSION_free(serverpsk); clientpsk = serverpsk = NULL; @@ -3424,9 +3875,9 @@ static int test_ssl_clear(int idx) #endif /* Create an initial connection */ - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey)) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey)) || (idx == 1 && !TEST_true(SSL_CTX_set_max_proto_version(cctx, TLS1_2_VERSION))) @@ -3580,8 +4031,8 @@ static int test_pha_key_update(void) SSL *clientssl = NULL, *serverssl = NULL; int testresult = 0; - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, &sctx, &cctx, cert, privkey))) return 0; @@ -3632,12 +4083,918 @@ static int test_pha_key_update(void) } #endif +#if !defined(OPENSSL_NO_SRP) && !defined(OPENSSL_NO_TLS1_2) + +static SRP_VBASE *vbase = NULL; + +static int ssl_srp_cb(SSL *s, int *ad, void *arg) +{ + int ret = SSL3_AL_FATAL; + char *username; + SRP_user_pwd *user = NULL; + + username = SSL_get_srp_username(s); + if (username == NULL) { + *ad = SSL_AD_INTERNAL_ERROR; + goto err; + } + + user = SRP_VBASE_get1_by_user(vbase, username); + if (user == NULL) { + *ad = SSL_AD_INTERNAL_ERROR; + goto err; + } + + if (SSL_set_srp_server_param(s, user->N, user->g, user->s, user->v, + user->info) <= 0) { + *ad = SSL_AD_INTERNAL_ERROR; + goto err; + } + + ret = 0; + + err: + SRP_user_pwd_free(user); + return ret; +} + +static int create_new_vfile(char *userid, char *password, const char *filename) +{ + char *gNid = NULL; + OPENSSL_STRING *row = OPENSSL_zalloc(sizeof(row) * (DB_NUMBER + 1)); + TXT_DB *db = NULL; + int ret = 0; + BIO *out = NULL, *dummy = BIO_new_mem_buf("", 0); + size_t i; + + if (!TEST_ptr(dummy) || !TEST_ptr(row)) + goto end; + + gNid = SRP_create_verifier(userid, password, &row[DB_srpsalt], + &row[DB_srpverifier], NULL, NULL); + if (!TEST_ptr(gNid)) + goto end; + + /* + * The only way to create an empty TXT_DB is to provide a BIO with no data + * in it! + */ + db = TXT_DB_read(dummy, DB_NUMBER); + if (!TEST_ptr(db)) + goto end; + + out = BIO_new_file(filename, "w"); + if (!TEST_ptr(out)) + goto end; + + row[DB_srpid] = OPENSSL_strdup(userid); + row[DB_srptype] = OPENSSL_strdup("V"); + row[DB_srpgN] = OPENSSL_strdup(gNid); + + if (!TEST_ptr(row[DB_srpid]) + || !TEST_ptr(row[DB_srptype]) + || !TEST_ptr(row[DB_srpgN]) + || !TEST_true(TXT_DB_insert(db, row))) + goto end; + + row = NULL; + + if (!TXT_DB_write(out, db)) + goto end; + + ret = 1; + end: + if (row != NULL) { + for (i = 0; i < DB_NUMBER; i++) + OPENSSL_free(row[i]); + } + OPENSSL_free(row); + BIO_free(dummy); + BIO_free(out); + TXT_DB_free(db); + + return ret; +} + +static int create_new_vbase(char *userid, char *password) +{ + BIGNUM *verifier = NULL, *salt = NULL; + const SRP_gN *lgN = NULL; + SRP_user_pwd *user_pwd = NULL; + int ret = 0; + + lgN = SRP_get_default_gN(NULL); + if (!TEST_ptr(lgN)) + goto end; + + if (!TEST_true(SRP_create_verifier_BN(userid, password, &salt, &verifier, + lgN->N, lgN->g))) + goto end; + + user_pwd = OPENSSL_zalloc(sizeof(*user_pwd)); + if (!TEST_ptr(user_pwd)) + goto end; + + user_pwd->N = lgN->N; + user_pwd->g = lgN->g; + user_pwd->id = OPENSSL_strdup(userid); + if (!TEST_ptr(user_pwd->id)) + goto end; + + user_pwd->v = verifier; + user_pwd->s = salt; + verifier = salt = NULL; + + if (sk_SRP_user_pwd_insert(vbase->users_pwd, user_pwd, 0) == 0) + goto end; + user_pwd = NULL; + + ret = 1; +end: + SRP_user_pwd_free(user_pwd); + BN_free(salt); + BN_free(verifier); + + return ret; +} + +/* + * SRP tests + * + * Test 0: Simple successful SRP connection, new vbase + * Test 1: Connection failure due to bad password, new vbase + * Test 2: Simple successful SRP connection, vbase loaded from existing file + * Test 3: Connection failure due to bad password, vbase loaded from existing + * file + * Test 4: Simple successful SRP connection, vbase loaded from new file + * Test 5: Connection failure due to bad password, vbase loaded from new file + */ +static int test_srp(int tst) +{ + char *userid = "test", *password = "password", *tstsrpfile; + SSL_CTX *cctx = NULL, *sctx = NULL; + SSL *clientssl = NULL, *serverssl = NULL; + int ret, testresult = 0; + + vbase = SRP_VBASE_new(NULL); + if (!TEST_ptr(vbase)) + goto end; + + if (tst == 0 || tst == 1) { + if (!TEST_true(create_new_vbase(userid, password))) + goto end; + } else { + if (tst == 4 || tst == 5) { + if (!TEST_true(create_new_vfile(userid, password, tmpfilename))) + goto end; + tstsrpfile = tmpfilename; + } else { + tstsrpfile = srpvfile; + } + if (!TEST_int_eq(SRP_VBASE_init(vbase, tstsrpfile), SRP_NO_ERROR)) + goto end; + } + + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) + goto end; + + if (!TEST_int_gt(SSL_CTX_set_srp_username_callback(sctx, ssl_srp_cb), 0) + || !TEST_true(SSL_CTX_set_cipher_list(cctx, "SRP-AES-128-CBC-SHA")) + || !TEST_true(SSL_CTX_set_max_proto_version(sctx, TLS1_2_VERSION)) + || !TEST_true(SSL_CTX_set_max_proto_version(cctx, TLS1_2_VERSION)) + || !TEST_int_gt(SSL_CTX_set_srp_username(cctx, userid), 0)) + goto end; + + if (tst % 2 == 1) { + if (!TEST_int_gt(SSL_CTX_set_srp_password(cctx, "badpass"), 0)) + goto end; + } else { + if (!TEST_int_gt(SSL_CTX_set_srp_password(cctx, password), 0)) + goto end; + } + + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL))) + goto end; + + ret = create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE); + if (ret) { + if (!TEST_true(tst % 2 == 0)) + goto end; + } else { + if (!TEST_true(tst % 2 == 1)) + goto end; + } + + testresult = 1; + + end: + SRP_VBASE_free(vbase); + vbase = NULL; + SSL_free(serverssl); + SSL_free(clientssl); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + + return testresult; +} +#endif + +static int info_cb_failed = 0; +static int info_cb_offset = 0; +static int info_cb_this_state = -1; + +static struct info_cb_states_st { + int where; + const char *statestr; +} info_cb_states[][60] = { + { + /* TLSv1.2 server followed by resumption */ + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "PINIT "}, + {SSL_CB_LOOP, "PINIT "}, {SSL_CB_LOOP, "TRCH"}, {SSL_CB_LOOP, "TWSH"}, + {SSL_CB_LOOP, "TWSC"}, {SSL_CB_LOOP, "TWSKE"}, {SSL_CB_LOOP, "TWSD"}, + {SSL_CB_EXIT, NULL}, {SSL_CB_LOOP, "TWSD"}, {SSL_CB_LOOP, "TRCKE"}, + {SSL_CB_LOOP, "TRCCS"}, {SSL_CB_LOOP, "TRFIN"}, {SSL_CB_LOOP, "TWST"}, + {SSL_CB_LOOP, "TWCCS"}, {SSL_CB_LOOP, "TWFIN"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, + {SSL_CB_ALERT, NULL}, {SSL_CB_HANDSHAKE_START, NULL}, + {SSL_CB_LOOP, "PINIT "}, {SSL_CB_LOOP, "PINIT "}, {SSL_CB_LOOP, "TRCH"}, + {SSL_CB_LOOP, "TWSH"}, {SSL_CB_LOOP, "TWCCS"}, {SSL_CB_LOOP, "TWFIN"}, + {SSL_CB_EXIT, NULL}, {SSL_CB_LOOP, "TWFIN"}, {SSL_CB_LOOP, "TRCCS"}, + {SSL_CB_LOOP, "TRFIN"}, {SSL_CB_HANDSHAKE_DONE, NULL}, + {SSL_CB_EXIT, NULL}, {0, NULL}, + }, { + /* TLSv1.2 client followed by resumption */ + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "PINIT "}, + {SSL_CB_LOOP, "TWCH"}, {SSL_CB_EXIT, NULL}, {SSL_CB_LOOP, "TWCH"}, + {SSL_CB_LOOP, "TRSH"}, {SSL_CB_LOOP, "TRSC"}, {SSL_CB_LOOP, "TRSKE"}, + {SSL_CB_LOOP, "TRSD"}, {SSL_CB_LOOP, "TWCKE"}, {SSL_CB_LOOP, "TWCCS"}, + {SSL_CB_LOOP, "TWFIN"}, {SSL_CB_EXIT, NULL}, {SSL_CB_LOOP, "TWFIN"}, + {SSL_CB_LOOP, "TRST"}, {SSL_CB_LOOP, "TRCCS"}, {SSL_CB_LOOP, "TRFIN"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, {SSL_CB_ALERT, NULL}, + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "PINIT "}, + {SSL_CB_LOOP, "TWCH"}, {SSL_CB_EXIT, NULL}, {SSL_CB_LOOP, "TWCH"}, + {SSL_CB_LOOP, "TRSH"}, {SSL_CB_LOOP, "TRCCS"}, {SSL_CB_LOOP, "TRFIN"}, + {SSL_CB_LOOP, "TWCCS"}, {SSL_CB_LOOP, "TWFIN"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, {0, NULL}, + }, { + /* TLSv1.3 server followed by resumption */ + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "PINIT "}, + {SSL_CB_LOOP, "PINIT "}, {SSL_CB_LOOP, "TRCH"}, {SSL_CB_LOOP, "TWSH"}, + {SSL_CB_LOOP, "TWCCS"}, {SSL_CB_LOOP, "TWEE"}, {SSL_CB_LOOP, "TWSC"}, + {SSL_CB_LOOP, "TRSCV"}, {SSL_CB_LOOP, "TWFIN"}, {SSL_CB_LOOP, "TED"}, + {SSL_CB_EXIT, NULL}, {SSL_CB_LOOP, "TED"}, {SSL_CB_LOOP, "TRFIN"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_HANDSHAKE_START, NULL}, + {SSL_CB_LOOP, "TWST"}, {SSL_CB_HANDSHAKE_DONE, NULL}, + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "TWST"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, + {SSL_CB_ALERT, NULL}, {SSL_CB_HANDSHAKE_START, NULL}, + {SSL_CB_LOOP, "PINIT "}, {SSL_CB_LOOP, "PINIT "}, {SSL_CB_LOOP, "TRCH"}, + {SSL_CB_LOOP, "TWSH"}, {SSL_CB_LOOP, "TWCCS"}, {SSL_CB_LOOP, "TWEE"}, + {SSL_CB_LOOP, "TWFIN"}, {SSL_CB_LOOP, "TED"}, {SSL_CB_EXIT, NULL}, + {SSL_CB_LOOP, "TED"}, {SSL_CB_LOOP, "TRFIN"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_HANDSHAKE_START, NULL}, + {SSL_CB_LOOP, "TWST"}, {SSL_CB_HANDSHAKE_DONE, NULL}, + {SSL_CB_EXIT, NULL}, {0, NULL}, + }, { + /* TLSv1.3 client followed by resumption */ + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "PINIT "}, + {SSL_CB_LOOP, "TWCH"}, {SSL_CB_EXIT, NULL}, {SSL_CB_LOOP, "TWCH"}, + {SSL_CB_LOOP, "TRSH"}, {SSL_CB_LOOP, "TREE"}, {SSL_CB_LOOP, "TRSC"}, + {SSL_CB_LOOP, "TRSCV"}, {SSL_CB_LOOP, "TRFIN"}, {SSL_CB_LOOP, "TWCCS"}, + {SSL_CB_LOOP, "TWFIN"}, {SSL_CB_HANDSHAKE_DONE, NULL}, + {SSL_CB_EXIT, NULL}, {SSL_CB_HANDSHAKE_START, NULL}, + {SSL_CB_LOOP, "SSLOK "}, {SSL_CB_LOOP, "SSLOK "}, {SSL_CB_LOOP, "TRST"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "SSLOK "}, + {SSL_CB_LOOP, "SSLOK "}, {SSL_CB_LOOP, "TRST"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, + {SSL_CB_ALERT, NULL}, {SSL_CB_HANDSHAKE_START, NULL}, + {SSL_CB_LOOP, "PINIT "}, {SSL_CB_LOOP, "TWCH"}, {SSL_CB_EXIT, NULL}, + {SSL_CB_LOOP, "TWCH"}, {SSL_CB_LOOP, "TRSH"}, {SSL_CB_LOOP, "TREE"}, + {SSL_CB_LOOP, "TRFIN"}, {SSL_CB_LOOP, "TWCCS"}, {SSL_CB_LOOP, "TWFIN"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "SSLOK "}, + {SSL_CB_LOOP, "SSLOK "}, {SSL_CB_LOOP, "TRST"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, {0, NULL}, + }, { + /* TLSv1.3 server, early_data */ + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "PINIT "}, + {SSL_CB_LOOP, "PINIT "}, {SSL_CB_LOOP, "TRCH"}, {SSL_CB_LOOP, "TWSH"}, + {SSL_CB_LOOP, "TWCCS"}, {SSL_CB_LOOP, "TWEE"}, {SSL_CB_LOOP, "TWFIN"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "TED"}, + {SSL_CB_LOOP, "TED"}, {SSL_CB_LOOP, "TWEOED"}, {SSL_CB_LOOP, "TRFIN"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_HANDSHAKE_START, NULL}, + {SSL_CB_LOOP, "TWST"}, {SSL_CB_HANDSHAKE_DONE, NULL}, + {SSL_CB_EXIT, NULL}, {0, NULL}, + }, { + /* TLSv1.3 client, early_data */ + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "PINIT "}, + {SSL_CB_LOOP, "TWCH"}, {SSL_CB_LOOP, "TWCCS"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, + {SSL_CB_HANDSHAKE_START, NULL}, {SSL_CB_LOOP, "TED"}, + {SSL_CB_LOOP, "TED"}, {SSL_CB_LOOP, "TRSH"}, {SSL_CB_LOOP, "TREE"}, + {SSL_CB_LOOP, "TRFIN"}, {SSL_CB_LOOP, "TPEDE"}, {SSL_CB_LOOP, "TWEOED"}, + {SSL_CB_LOOP, "TWFIN"}, {SSL_CB_HANDSHAKE_DONE, NULL}, + {SSL_CB_EXIT, NULL}, {SSL_CB_HANDSHAKE_START, NULL}, + {SSL_CB_LOOP, "SSLOK "}, {SSL_CB_LOOP, "SSLOK "}, {SSL_CB_LOOP, "TRST"}, + {SSL_CB_HANDSHAKE_DONE, NULL}, {SSL_CB_EXIT, NULL}, {0, NULL}, + }, { + {0, NULL}, + } +}; + +static void sslapi_info_callback(const SSL *s, int where, int ret) +{ + struct info_cb_states_st *state = info_cb_states[info_cb_offset]; + + /* We do not ever expect a connection to fail in this test */ + if (!TEST_false(ret == 0)) { + info_cb_failed = 1; + return; + } + + /* + * Do some sanity checks. We never expect these things to happen in this + * test + */ + if (!TEST_false((SSL_is_server(s) && (where & SSL_ST_CONNECT) != 0)) + || !TEST_false(!SSL_is_server(s) && (where & SSL_ST_ACCEPT) != 0) + || !TEST_int_ne(state[++info_cb_this_state].where, 0)) { + info_cb_failed = 1; + return; + } + + /* Now check we're in the right state */ + if (!TEST_true((where & state[info_cb_this_state].where) != 0)) { + info_cb_failed = 1; + return; + } + if ((where & SSL_CB_LOOP) != 0 + && !TEST_int_eq(strcmp(SSL_state_string(s), + state[info_cb_this_state].statestr), 0)) { + info_cb_failed = 1; + return; + } + + /* Check that, if we've got SSL_CB_HANDSHAKE_DONE we are not in init */ + if ((where & SSL_CB_HANDSHAKE_DONE) && SSL_in_init((SSL *)s) != 0) { + info_cb_failed = 1; + return; + } +} + +/* + * Test the info callback gets called when we expect it to. + * + * Test 0: TLSv1.2, server + * Test 1: TLSv1.2, client + * Test 2: TLSv1.3, server + * Test 3: TLSv1.3, client + * Test 4: TLSv1.3, server, early_data + * Test 5: TLSv1.3, client, early_data + */ +static int test_info_callback(int tst) +{ + SSL_CTX *cctx = NULL, *sctx = NULL; + SSL *clientssl = NULL, *serverssl = NULL; + SSL_SESSION *clntsess = NULL; + int testresult = 0; + int tlsvers; + + if (tst < 2) { +/* We need either ECDHE or DHE for the TLSv1.2 test to work */ +#if !defined(OPENSSL_NO_TLS1_2) && (!defined(OPENSSL_NO_EC) \ + || !defined(OPENSSL_NO_DH)) + tlsvers = TLS1_2_VERSION; +#else + return 1; +#endif + } else { +#ifndef OPENSSL_NO_TLS1_3 + tlsvers = TLS1_3_VERSION; +#else + return 1; +#endif + } + + /* Reset globals */ + info_cb_failed = 0; + info_cb_this_state = -1; + info_cb_offset = tst; + +#ifndef OPENSSL_NO_TLS1_3 + if (tst >= 4) { + SSL_SESSION *sess = NULL; + size_t written, readbytes; + unsigned char buf[80]; + + /* early_data tests */ + if (!TEST_true(setupearly_data_test(&cctx, &sctx, &clientssl, + &serverssl, &sess, 0))) + goto end; + + /* We don't actually need this reference */ + SSL_SESSION_free(sess); + + SSL_set_info_callback((tst % 2) == 0 ? serverssl : clientssl, + sslapi_info_callback); + + /* Write and read some early data and then complete the connection */ + if (!TEST_true(SSL_write_early_data(clientssl, MSG1, strlen(MSG1), + &written)) + || !TEST_size_t_eq(written, strlen(MSG1)) + || !TEST_int_eq(SSL_read_early_data(serverssl, buf, + sizeof(buf), &readbytes), + SSL_READ_EARLY_DATA_SUCCESS) + || !TEST_mem_eq(MSG1, readbytes, buf, strlen(MSG1)) + || !TEST_int_eq(SSL_get_early_data_status(serverssl), + SSL_EARLY_DATA_ACCEPTED) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_false(info_cb_failed)) + goto end; + + testresult = 1; + goto end; + } +#endif + + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), + tlsvers, tlsvers, &sctx, &cctx, cert, + privkey))) + goto end; + + /* + * For even numbered tests we check the server callbacks. For odd numbers we + * check the client. + */ + SSL_CTX_set_info_callback((tst % 2) == 0 ? sctx : cctx, + sslapi_info_callback); + + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, + &clientssl, NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_false(info_cb_failed)) + goto end; + + + + clntsess = SSL_get1_session(clientssl); + SSL_shutdown(clientssl); + SSL_shutdown(serverssl); + SSL_free(serverssl); + SSL_free(clientssl); + serverssl = clientssl = NULL; + + /* Now do a resumption */ + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, + NULL)) + || !TEST_true(SSL_set_session(clientssl, clntsess)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE)) + || !TEST_true(SSL_session_reused(clientssl)) + || !TEST_false(info_cb_failed)) + goto end; + + testresult = 1; + + end: + SSL_free(serverssl); + SSL_free(clientssl); + SSL_SESSION_free(clntsess); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + return testresult; +} + +static int test_ssl_pending(int tst) +{ + SSL_CTX *cctx = NULL, *sctx = NULL; + SSL *clientssl = NULL, *serverssl = NULL; + int testresult = 0; + char msg[] = "A test message"; + char buf[5]; + size_t written, readbytes; + + if (tst == 0) { + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) + goto end; + } else { +#ifndef OPENSSL_NO_DTLS + if (!TEST_true(create_ssl_ctx_pair(DTLS_server_method(), + DTLS_client_method(), + DTLS1_VERSION, DTLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) + goto end; +#else + return 1; +#endif + } + + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE))) + goto end; + + if (!TEST_int_eq(SSL_pending(clientssl), 0) + || !TEST_false(SSL_has_pending(clientssl)) + || !TEST_int_eq(SSL_pending(serverssl), 0) + || !TEST_false(SSL_has_pending(serverssl)) + || !TEST_true(SSL_write_ex(serverssl, msg, sizeof(msg), &written)) + || !TEST_size_t_eq(written, sizeof(msg)) + || !TEST_true(SSL_read_ex(clientssl, buf, sizeof(buf), &readbytes)) + || !TEST_size_t_eq(readbytes, sizeof(buf)) + || !TEST_int_eq(SSL_pending(clientssl), (int)(written - readbytes)) + || !TEST_true(SSL_has_pending(clientssl))) + goto end; + + testresult = 1; + + end: + SSL_free(serverssl); + SSL_free(clientssl); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + + return testresult; +} + +static struct { + unsigned int maxprot; + const char *clntciphers; + const char *clnttls13ciphers; + const char *srvrciphers; + const char *srvrtls13ciphers; + const char *shared; +} shared_ciphers_data[] = { +/* + * We can't establish a connection (even in TLSv1.1) with these ciphersuites if + * TLSv1.3 is enabled but TLSv1.2 is disabled. + */ +#if defined(OPENSSL_NO_TLS1_3) || !defined(OPENSSL_NO_TLS1_2) + { + TLS1_2_VERSION, + "AES128-SHA:AES256-SHA", + NULL, + "AES256-SHA:DHE-RSA-AES128-SHA", + NULL, + "AES256-SHA" + }, + { + TLS1_2_VERSION, + "AES128-SHA:DHE-RSA-AES128-SHA:AES256-SHA", + NULL, + "AES128-SHA:DHE-RSA-AES256-SHA:AES256-SHA", + NULL, + "AES128-SHA:AES256-SHA" + }, + { + TLS1_2_VERSION, + "AES128-SHA:AES256-SHA", + NULL, + "AES128-SHA:DHE-RSA-AES128-SHA", + NULL, + "AES128-SHA" + }, +#endif +/* + * This test combines TLSv1.3 and TLSv1.2 ciphersuites so they must both be + * enabled. + */ +#if !defined(OPENSSL_NO_TLS1_3) && !defined(OPENSSL_NO_TLS1_2) \ + && !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305) + { + TLS1_3_VERSION, + "AES128-SHA:AES256-SHA", + NULL, + "AES256-SHA:AES128-SHA256", + NULL, + "TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:" + "TLS_AES_128_GCM_SHA256:AES256-SHA" + }, +#endif +#ifndef OPENSSL_NO_TLS1_3 + { + TLS1_3_VERSION, + "AES128-SHA", + "TLS_AES_256_GCM_SHA384", + "AES256-SHA", + "TLS_AES_256_GCM_SHA384", + "TLS_AES_256_GCM_SHA384" + }, +#endif +}; + +static int test_ssl_get_shared_ciphers(int tst) +{ + SSL_CTX *cctx = NULL, *sctx = NULL; + SSL *clientssl = NULL, *serverssl = NULL; + int testresult = 0; + char buf[1024]; + + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), + TLS1_VERSION, + shared_ciphers_data[tst].maxprot, + &sctx, &cctx, cert, privkey))) + goto end; + + if (!TEST_true(SSL_CTX_set_cipher_list(cctx, + shared_ciphers_data[tst].clntciphers)) + || (shared_ciphers_data[tst].clnttls13ciphers != NULL + && !TEST_true(SSL_CTX_set_ciphersuites(cctx, + shared_ciphers_data[tst].clnttls13ciphers))) + || !TEST_true(SSL_CTX_set_cipher_list(sctx, + shared_ciphers_data[tst].srvrciphers)) + || (shared_ciphers_data[tst].srvrtls13ciphers != NULL + && !TEST_true(SSL_CTX_set_ciphersuites(sctx, + shared_ciphers_data[tst].srvrtls13ciphers)))) + goto end; + + + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE))) + goto end; + + if (!TEST_ptr(SSL_get_shared_ciphers(serverssl, buf, sizeof(buf))) + || !TEST_int_eq(strcmp(buf, shared_ciphers_data[tst].shared), 0)) { + TEST_info("Shared ciphers are: %s\n", buf); + goto end; + } + + testresult = 1; + + end: + SSL_free(serverssl); + SSL_free(clientssl); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + + return testresult; +} + +static const char *appdata = "Hello World"; +static int gen_tick_called, dec_tick_called, tick_key_cb_called; +static int tick_key_renew = 0; +static SSL_TICKET_RETURN tick_dec_ret = SSL_TICKET_RETURN_ABORT; + +static int gen_tick_cb(SSL *s, void *arg) +{ + gen_tick_called = 1; + + return SSL_SESSION_set1_ticket_appdata(SSL_get_session(s), appdata, + strlen(appdata)); +} + +static SSL_TICKET_RETURN dec_tick_cb(SSL *s, SSL_SESSION *ss, + const unsigned char *keyname, + size_t keyname_length, + SSL_TICKET_STATUS status, + void *arg) +{ + void *tickdata; + size_t tickdlen; + + dec_tick_called = 1; + + if (status == SSL_TICKET_EMPTY) + return SSL_TICKET_RETURN_IGNORE_RENEW; + + if (!TEST_true(status == SSL_TICKET_SUCCESS + || status == SSL_TICKET_SUCCESS_RENEW)) + return SSL_TICKET_RETURN_ABORT; + + if (!TEST_true(SSL_SESSION_get0_ticket_appdata(ss, &tickdata, + &tickdlen)) + || !TEST_size_t_eq(tickdlen, strlen(appdata)) + || !TEST_int_eq(memcmp(tickdata, appdata, tickdlen), 0)) + return SSL_TICKET_RETURN_ABORT; + + if (tick_key_cb_called) { + /* Don't change what the ticket key callback wanted to do */ + switch (status) { + case SSL_TICKET_NO_DECRYPT: + return SSL_TICKET_RETURN_IGNORE_RENEW; + + case SSL_TICKET_SUCCESS: + return SSL_TICKET_RETURN_USE; + + case SSL_TICKET_SUCCESS_RENEW: + return SSL_TICKET_RETURN_USE_RENEW; + + default: + return SSL_TICKET_RETURN_ABORT; + } + } + return tick_dec_ret; + +} + +static int tick_key_cb(SSL *s, unsigned char key_name[16], + unsigned char iv[EVP_MAX_IV_LENGTH], EVP_CIPHER_CTX *ctx, + HMAC_CTX *hctx, int enc) +{ + const unsigned char tick_aes_key[16] = "0123456789abcdef"; + const unsigned char tick_hmac_key[16] = "0123456789abcdef"; + + tick_key_cb_called = 1; + memset(iv, 0, AES_BLOCK_SIZE); + memset(key_name, 0, 16); + if (!EVP_CipherInit_ex(ctx, EVP_aes_128_cbc(), NULL, tick_aes_key, iv, enc) + || !HMAC_Init_ex(hctx, tick_hmac_key, sizeof(tick_hmac_key), + EVP_sha256(), NULL)) + return -1; + + return tick_key_renew ? 2 : 1; +} + +/* + * Test the various ticket callbacks + * Test 0: TLSv1.2, no ticket key callback, no ticket, no renewal + * Test 1: TLSv1.3, no ticket key callback, no ticket, no renewal + * Test 2: TLSv1.2, no ticket key callback, no ticket, renewal + * Test 3: TLSv1.3, no ticket key callback, no ticket, renewal + * Test 4: TLSv1.2, no ticket key callback, ticket, no renewal + * Test 5: TLSv1.3, no ticket key callback, ticket, no renewal + * Test 6: TLSv1.2, no ticket key callback, ticket, renewal + * Test 7: TLSv1.3, no ticket key callback, ticket, renewal + * Test 8: TLSv1.2, ticket key callback, ticket, no renewal + * Test 9: TLSv1.3, ticket key callback, ticket, no renewal + * Test 10: TLSv1.2, ticket key callback, ticket, renewal + * Test 11: TLSv1.3, ticket key callback, ticket, renewal + */ +static int test_ticket_callbacks(int tst) +{ + SSL_CTX *cctx = NULL, *sctx = NULL; + SSL *clientssl = NULL, *serverssl = NULL; + SSL_SESSION *clntsess = NULL; + int testresult = 0; + +#ifdef OPENSSL_NO_TLS1_2 + if (tst % 2 == 0) + return 1; +#endif +#ifdef OPENSSL_NO_TLS1_3 + if (tst % 2 == 1) + return 1; +#endif + + gen_tick_called = dec_tick_called = tick_key_cb_called = 0; + + /* Which tests the ticket key callback should request renewal for */ + if (tst == 10 || tst == 11) + tick_key_renew = 1; + else + tick_key_renew = 0; + + /* Which tests the decrypt ticket callback should request renewal for */ + switch (tst) { + case 0: + case 1: + tick_dec_ret = SSL_TICKET_RETURN_IGNORE; + break; + + case 2: + case 3: + tick_dec_ret = SSL_TICKET_RETURN_IGNORE_RENEW; + break; + + case 4: + case 5: + tick_dec_ret = SSL_TICKET_RETURN_USE; + break; + + case 6: + case 7: + tick_dec_ret = SSL_TICKET_RETURN_USE_RENEW; + break; + + default: + tick_dec_ret = SSL_TICKET_RETURN_ABORT; + } + + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), + TLS_client_method(), + TLS1_VERSION, + ((tst % 2) == 0) ? TLS1_2_VERSION + : TLS1_3_VERSION, + &sctx, &cctx, cert, privkey))) + goto end; + + /* + * We only want sessions to resume from tickets - not the session cache. So + * switch the cache off. + */ + if (!TEST_true(SSL_CTX_set_session_cache_mode(sctx, SSL_SESS_CACHE_OFF))) + goto end; + + if (!TEST_true(SSL_CTX_set_session_ticket_cb(sctx, gen_tick_cb, dec_tick_cb, + NULL))) + goto end; + + if (tst >= 8 + && !TEST_true(SSL_CTX_set_tlsext_ticket_key_cb(sctx, tick_key_cb))) + goto end; + + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, + NULL, NULL)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE))) + goto end; + + /* + * The decrypt ticket key callback in TLSv1.2 should be called even though + * we have no ticket yet, because it gets called with a status of + * SSL_TICKET_EMPTY (the client indicates support for tickets but does not + * actually send any ticket data). This does not happen in TLSv1.3 because + * it is not valid to send empty ticket data in TLSv1.3. + */ + if (!TEST_int_eq(gen_tick_called, 1) + || !TEST_int_eq(dec_tick_called, ((tst % 2) == 0) ? 1 : 0)) + goto end; + + gen_tick_called = dec_tick_called = 0; + + clntsess = SSL_get1_session(clientssl); + SSL_shutdown(clientssl); + SSL_shutdown(serverssl); + SSL_free(serverssl); + SSL_free(clientssl); + serverssl = clientssl = NULL; + + /* Now do a resumption */ + if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, + NULL)) + || !TEST_true(SSL_set_session(clientssl, clntsess)) + || !TEST_true(create_ssl_connection(serverssl, clientssl, + SSL_ERROR_NONE))) + goto end; + + if (tick_dec_ret == SSL_TICKET_RETURN_IGNORE + || tick_dec_ret == SSL_TICKET_RETURN_IGNORE_RENEW) { + if (!TEST_false(SSL_session_reused(clientssl))) + goto end; + } else { + if (!TEST_true(SSL_session_reused(clientssl))) + goto end; + } + + if (!TEST_int_eq(gen_tick_called, + (tick_key_renew + || tick_dec_ret == SSL_TICKET_RETURN_IGNORE_RENEW + || tick_dec_ret == SSL_TICKET_RETURN_USE_RENEW) + ? 1 : 0) + || !TEST_int_eq(dec_tick_called, 1)) + goto end; + + testresult = 1; + + end: + SSL_SESSION_free(clntsess); + SSL_free(serverssl); + SSL_free(clientssl); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + + return testresult; +} + int setup_tests(void) { if (!TEST_ptr(cert = test_get_argument(0)) - || !TEST_ptr(privkey = test_get_argument(1))) + || !TEST_ptr(privkey = test_get_argument(1)) + || !TEST_ptr(srpvfile = test_get_argument(2)) + || !TEST_ptr(tmpfilename = test_get_argument(3))) return 0; + if (getenv("OPENSSL_TEST_GETCOUNTS") != NULL) { +#ifdef OPENSSL_NO_CRYPTO_MDEBUG + TEST_error("not supported in this build"); + return 0; +#else + int i, mcount, rcount, fcount; + + for (i = 0; i < 4; i++) + test_export_key_mat(i); + CRYPTO_get_alloc_counts(&mcount, &rcount, &fcount); + test_printf_stdout("malloc %d realloc %d free %d\n", + mcount, rcount, fcount); + return 1; +#endif + } + ADD_TEST(test_large_message_tls); ADD_TEST(test_large_message_tls_read_ahead); #ifndef OPENSSL_NO_DTLS @@ -3649,6 +5006,9 @@ int setup_tests(void) ADD_TEST(test_session_with_only_int_cache); ADD_TEST(test_session_with_only_ext_cache); ADD_TEST(test_session_with_both_cache); +#ifndef OPENSSL_NO_TLS1_3 + ADD_ALL_TESTS(test_tickets, 3); +#endif ADD_ALL_TESTS(test_ssl_set_bio, TOTAL_SSL_SET_BIO_TESTS); ADD_TEST(test_ssl_bio_pop_next_bio); ADD_TEST(test_ssl_bio_pop_ssl_bio); @@ -3666,6 +5026,11 @@ int setup_tests(void) #endif #ifndef OPENSSL_NO_TLS1_3 ADD_ALL_TESTS(test_early_data_read_write, 3); + /* + * We don't do replay tests for external PSK. Replay protection isn't used + * in that scenario. + */ + ADD_ALL_TESTS(test_early_data_replay, 2); ADD_ALL_TESTS(test_early_data_skip, 3); ADD_ALL_TESTS(test_early_data_skip_hrr, 3); ADD_ALL_TESTS(test_early_data_not_sent, 3); @@ -3676,8 +5041,13 @@ int setup_tests(void) # endif #endif #ifndef OPENSSL_NO_TLS1_3 + ADD_ALL_TESTS(test_set_ciphersuite, 10); ADD_TEST(test_ciphersuite_change); - ADD_ALL_TESTS(test_tls13_psk, 3); +#ifdef OPENSSL_NO_PSK + ADD_ALL_TESTS(test_tls13_psk, 1); +#else + ADD_ALL_TESTS(test_tls13_psk, 4); +#endif /* OPENSSL_NO_PSK */ ADD_ALL_TESTS(test_custom_exts, 5); ADD_TEST(test_stateless); ADD_TEST(test_pha_key_update); @@ -3691,6 +5061,13 @@ int setup_tests(void) #endif ADD_ALL_TESTS(test_ssl_clear, 2); ADD_ALL_TESTS(test_max_fragment_len_ext, OSSL_NELEM(max_fragment_len_test)); +#if !defined(OPENSSL_NO_SRP) && !defined(OPENSSL_NO_TLS1_2) + ADD_ALL_TESTS(test_srp, 6); +#endif + ADD_ALL_TESTS(test_info_callback, 6); + ADD_ALL_TESTS(test_ssl_pending, 2); + ADD_ALL_TESTS(test_ssl_get_shared_ciphers, OSSL_NELEM(shared_ciphers_data)); + ADD_ALL_TESTS(test_ticket_callbacks, 12); return 1; } diff --git a/test/sslbuffertest.c b/test/sslbuffertest.c index a1c3c6a6..b8b1f52d 100644 --- a/test/sslbuffertest.c +++ b/test/sslbuffertest.c @@ -1,5 +1,5 @@ /* - * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL licenses, (the "License"); * you may not use this file except in compliance with the License. @@ -166,6 +166,7 @@ int setup_tests(void) return 0; if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, &serverctx, &clientctx, cert, pkey)) { TEST_error("Failed to create SSL_CTX pair\n"); return 0; diff --git a/test/sslcorrupttest.c b/test/sslcorrupttest.c index a0bca382..d06c8c72 100644 --- a/test/sslcorrupttest.c +++ b/test/sslcorrupttest.c @@ -1,5 +1,5 @@ /* - * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -137,7 +137,7 @@ static void bio_f_tls_corrupt_filter_free(void) */ static const char **cipher_list = NULL; -static int setup_cipher_list() +static int setup_cipher_list(void) { SSL_CTX *ctx = NULL; SSL *ssl = NULL; @@ -193,28 +193,24 @@ static int test_ssl_corrupt(int testidx) TEST_info("Starting #%d, %s", testidx, cipher_list[testidx]); - if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), - TLS_client_method(), &sctx, - &cctx, cert, privkey))) + if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey))) return 0; - if (!TEST_true(SSL_CTX_set_cipher_list(cctx, cipher_list[testidx]))) - goto end; - - if (!TEST_ptr(ciphers = SSL_CTX_get_ciphers(cctx)) + if (!TEST_true(SSL_CTX_set_cipher_list(cctx, cipher_list[testidx])) + || !TEST_true(SSL_CTX_set_ciphersuites(cctx, "")) + || !TEST_ptr(ciphers = SSL_CTX_get_ciphers(cctx)) || !TEST_int_eq(sk_SSL_CIPHER_num(ciphers), 1) || !TEST_ptr(currcipher = sk_SSL_CIPHER_value(ciphers, 0))) goto end; /* - * If we haven't got a TLSv1.3 cipher, then we mustn't attempt to use - * TLSv1.3. Version negotiation happens before cipher selection, so we will - * get a "no shared cipher" error. + * No ciphers we are using are TLSv1.3 compatible so we should not attempt + * to negotiate TLSv1.3 */ - if (strcmp(SSL_CIPHER_get_version(currcipher), "TLSv1.3") != 0) { - if (!TEST_true(SSL_CTX_set_max_proto_version(cctx, TLS1_2_VERSION))) - goto end; - } + if (!TEST_true(SSL_CTX_set_max_proto_version(cctx, TLS1_2_VERSION))) + goto end; if (!TEST_ptr(c_to_s_fbio = BIO_new(bio_f_tls_corrupt_filter()))) goto end; diff --git a/test/ssltest_old.c b/test/ssltest_old.c index 349d30a3..e974f6c1 100644 --- a/test/ssltest_old.c +++ b/test/ssltest_old.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved * Copyright 2005 Nokia. All rights reserved. * @@ -423,7 +423,7 @@ static int serverinfo_cli_parse_cb(SSL *s, unsigned int ext_type, return 1; } -static int verify_serverinfo() +static int verify_serverinfo(void) { if (serverinfo_sct != serverinfo_sct_seen) return -1; @@ -612,6 +612,7 @@ static int custom_ext_3_srv_add_cb(SSL *s, unsigned int ext_type, } static char *cipher = NULL; +static char *ciphersuites = NULL; static int verbose = 0; static int debug = 0; @@ -671,7 +672,8 @@ static void sv_usage(void) fprintf(stderr, " -c_cert arg - Client certificate file\n"); fprintf(stderr, " -c_key arg - Client key file (default: same as -c_cert)\n"); - fprintf(stderr, " -cipher arg - The cipher list\n"); + fprintf(stderr, " -cipher arg - The TLSv1.2 and below cipher list\n"); + fprintf(stderr, " -ciphersuites arg - The TLSv1.3 ciphersuites\n"); fprintf(stderr, " -bio_pair - Use BIO pairs\n"); fprintf(stderr, " -ipv4 - Use IPv4 connection on localhost\n"); fprintf(stderr, " -ipv6 - Use IPv6 connection on localhost\n"); @@ -918,7 +920,6 @@ int main(int argc, char *argv[]) verbose = 0; debug = 0; - cipher = 0; bio_err = BIO_new_fp(stderr, BIO_NOCLOSE | BIO_FP_TEXT); @@ -1046,6 +1047,10 @@ int main(int argc, char *argv[]) if (--argc < 1) goto bad; cipher = *(++argv); + } else if (strcmp(*argv, "-ciphersuites") == 0) { + if (--argc < 1) + goto bad; + ciphersuites = *(++argv); } else if (strcmp(*argv, "-CApath") == 0) { if (--argc < 1) goto bad; @@ -1325,17 +1330,24 @@ int main(int argc, char *argv[]) } else if (tls1_2) { min_version = TLS1_2_VERSION; max_version = TLS1_2_VERSION; + } else { + min_version = SSL3_VERSION; + max_version = TLS_MAX_VERSION; } #endif #ifndef OPENSSL_NO_DTLS - if (dtls || dtls1 || dtls12) + if (dtls || dtls1 || dtls12) { meth = DTLS_method(); - if (dtls1) { - min_version = DTLS1_VERSION; - max_version = DTLS1_VERSION; - } else if (dtls12) { - min_version = DTLS1_2_VERSION; - max_version = DTLS1_2_VERSION; + if (dtls1) { + min_version = DTLS1_VERSION; + max_version = DTLS1_VERSION; + } else if (dtls12) { + min_version = DTLS1_2_VERSION; + max_version = DTLS1_2_VERSION; + } else { + min_version = DTLS_MIN_VERSION; + max_version = DTLS_MAX_VERSION; + } } #endif @@ -1377,6 +1389,14 @@ int main(int argc, char *argv[]) goto end; } } + if (ciphersuites != NULL) { + if (!SSL_CTX_set_ciphersuites(c_ctx, ciphersuites) + || !SSL_CTX_set_ciphersuites(s_ctx, ciphersuites) + || !SSL_CTX_set_ciphersuites(s_ctx2, ciphersuites)) { + ERR_print_errors(bio_err); + goto end; + } + } #ifndef OPENSSL_NO_CT if (ct_validation && @@ -1816,7 +1836,8 @@ int doit_localhost(SSL *s_ssl, SSL *c_ssl, int family, long count, int err_in_client = 0; int err_in_server = 0; - acpt = BIO_new_accept("0"); + acpt = BIO_new_accept(family == BIO_FAMILY_IPV4 ? "127.0.0.1:0" + : "[::1]:0"); if (acpt == NULL) goto err; BIO_set_accept_ip_family(acpt, family); @@ -2815,7 +2836,7 @@ static int app_verify_callback(X509_STORE_CTX *ctx, void *arg) * $ openssl dhparam -C -noout -dsaparam 1024 * (The third function has been renamed to avoid name conflicts.) */ -static DH *get_dh512() +static DH *get_dh512(void) { static unsigned char dh512_p[] = { 0xCB, 0xC8, 0xE1, 0x86, 0xD0, 0x1F, 0x94, 0x17, 0xA6, 0x99, 0xF0, @@ -2849,7 +2870,7 @@ static DH *get_dh512() return dh; } -static DH *get_dh1024() +static DH *get_dh1024(void) { static unsigned char dh1024_p[] = { 0xF8, 0x81, 0x89, 0x7D, 0x14, 0x24, 0xC5, 0xD1, 0xE6, 0xF7, 0xBF, @@ -2893,7 +2914,7 @@ static DH *get_dh1024() return dh; } -static DH *get_dh1024dsa() +static DH *get_dh1024dsa(void) { static unsigned char dh1024_p[] = { 0xC8, 0x00, 0xF7, 0x08, 0x07, 0x89, 0x4D, 0x90, 0x53, 0xF3, 0xD5, diff --git a/test/ssltestlib.c b/test/ssltestlib.c index 4473c670..2ef4b5d4 100644 --- a/test/ssltestlib.c +++ b/test/ssltestlib.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -12,6 +12,34 @@ #include "internal/nelem.h" #include "ssltestlib.h" #include "testutil.h" +#include "e_os.h" + +#ifdef OPENSSL_SYS_UNIX +# include + +static ossl_inline void ossl_sleep(unsigned int millis) { + usleep(millis * 1000); +} +#elif defined(_WIN32) +# include + +static ossl_inline void ossl_sleep(unsigned int millis) { + Sleep(millis); +} +#else +/* Fallback to a busy wait */ +static ossl_inline void ossl_sleep(unsigned int millis) { + struct timeval start, now; + unsigned int elapsedms; + + gettimeofday(&start, NULL); + do { + gettimeofday(&now, NULL); + elapsedms = (((now.tv_sec - start.tv_sec) * 1000000) + + now.tv_usec - start.tv_usec) / 1000; + } while (elapsedms < millis); +} +#endif static int tls_dump_new(BIO *bi); static int tls_dump_free(BIO *a); @@ -252,7 +280,10 @@ typedef struct mempacket_test_ctx_st { unsigned int currrec; unsigned int currpkt; unsigned int lastpkt; + unsigned int injected; unsigned int noinject; + unsigned int dropepoch; + int droprec; } MEMPACKET_TEST_CTX; static int mempacket_test_new(BIO *bi); @@ -295,6 +326,8 @@ static int mempacket_test_new(BIO *bio) OPENSSL_free(ctx); return 0; } + ctx->dropepoch = 0; + ctx->droprec = -1; BIO_set_init(bio, 1); BIO_set_data(bio, ctx); return 1; @@ -312,8 +345,8 @@ static int mempacket_test_free(BIO *bio) } /* Record Header values */ -#define EPOCH_HI 4 -#define EPOCH_LO 5 +#define EPOCH_HI 3 +#define EPOCH_LO 4 #define RECORD_SEQUENCE 10 #define RECORD_LEN_HI 11 #define RECORD_LEN_LO 12 @@ -341,15 +374,15 @@ static int mempacket_test_read(BIO *bio, char *out, int outl) if (outl > thispkt->len) outl = thispkt->len; - if (thispkt->type != INJECT_PACKET_IGNORE_REC_SEQ) { + if (thispkt->type != INJECT_PACKET_IGNORE_REC_SEQ + && (ctx->injected || ctx->droprec >= 0)) { /* * Overwrite the record sequence number. We strictly number them in * the order received. Since we are actually a reliable transport * we know that there won't be any re-ordering. We overwrite to deal * with any packets that have been injected */ - for (rem = thispkt->len, rec = thispkt->data - ; rem > 0; rec += len, rem -= len) { + for (rem = thispkt->len, rec = thispkt->data; rem > 0; rem -= len) { if (rem < DTLS1_RT_HEADER_LENGTH) return -1; epoch = (rec[EPOCH_HI] << 8) | rec[EPOCH_LO]; @@ -364,10 +397,23 @@ static int mempacket_test_read(BIO *bio, char *out, int outl) seq >>= 8; offset++; } while (seq > 0); - ctx->currrec++; len = ((rec[RECORD_LEN_HI] << 8) | rec[RECORD_LEN_LO]) + DTLS1_RT_HEADER_LENGTH; + if (rem < (int)len) + return -1; + if (ctx->droprec == (int)ctx->currrec && ctx->dropepoch == epoch) { + if (rem > (int)len) + memmove(rec, rec + len, rem - len); + outl -= len; + ctx->droprec = -1; + if (outl == 0) + BIO_set_retry_read(bio); + } else { + rec += len; + } + + ctx->currrec++; } } @@ -390,6 +436,7 @@ int mempacket_test_inject(BIO *bio, const char *in, int inl, int pktnum, if (pktnum >= 0) { if (ctx->noinject) return -1; + ctx->injected = 1; } else { ctx->noinject = 1; } @@ -488,6 +535,15 @@ static long mempacket_test_ctrl(BIO *bio, int cmd, long num, void *ptr) case BIO_CTRL_FLUSH: ret = 1; break; + case MEMPACKET_CTRL_SET_DROP_EPOCH: + ctx->dropepoch = (unsigned int)num; + break; + case MEMPACKET_CTRL_SET_DROP_REC: + ctx->droprec = (int)num; + break; + case MEMPACKET_CTRL_GET_DROP_REC: + ret = ctx->droprec; + break; case BIO_CTRL_RESET: case BIO_CTRL_DUP: case BIO_CTRL_PUSH: @@ -511,6 +567,7 @@ static int mempacket_test_puts(BIO *bio, const char *str) } int create_ssl_ctx_pair(const SSL_METHOD *sm, const SSL_METHOD *cm, + int min_proto_version, int max_proto_version, SSL_CTX **sctx, SSL_CTX **cctx, char *certfile, char *privkeyfile) { @@ -521,12 +578,31 @@ int create_ssl_ctx_pair(const SSL_METHOD *sm, const SSL_METHOD *cm, || (cctx != NULL && !TEST_ptr(clientctx = SSL_CTX_new(cm)))) goto err; - if (!TEST_int_eq(SSL_CTX_use_certificate_file(serverctx, certfile, - SSL_FILETYPE_PEM), 1) - || !TEST_int_eq(SSL_CTX_use_PrivateKey_file(serverctx, privkeyfile, - SSL_FILETYPE_PEM), 1) - || !TEST_int_eq(SSL_CTX_check_private_key(serverctx), 1)) + if ((min_proto_version > 0 + && !TEST_true(SSL_CTX_set_min_proto_version(serverctx, + min_proto_version))) + || (max_proto_version > 0 + && !TEST_true(SSL_CTX_set_max_proto_version(serverctx, + max_proto_version)))) goto err; + if (clientctx != NULL + && ((min_proto_version > 0 + && !TEST_true(SSL_CTX_set_min_proto_version(clientctx, + min_proto_version))) + || (max_proto_version > 0 + && !TEST_true(SSL_CTX_set_max_proto_version(clientctx, + max_proto_version))))) + goto err; + + if (certfile != NULL && privkeyfile != NULL) { + if (!TEST_int_eq(SSL_CTX_use_certificate_file(serverctx, certfile, + SSL_FILETYPE_PEM), 1) + || !TEST_int_eq(SSL_CTX_use_PrivateKey_file(serverctx, + privkeyfile, + SSL_FILETYPE_PEM), 1) + || !TEST_int_eq(SSL_CTX_check_private_key(serverctx), 1)) + goto err; + } #ifndef OPENSSL_NO_DH SSL_CTX_set_dh_auto(serverctx, 1); @@ -606,10 +682,11 @@ int create_ssl_objects(SSL_CTX *serverctx, SSL_CTX *clientctx, SSL **sssl, int create_ssl_connection(SSL *serverssl, SSL *clientssl, int want) { - int retc = -1, rets = -1, err, abortctr = 0; + int retc = -1, rets = -1, err, abortctr = 0, i; int clienterr = 0, servererr = 0; unsigned char buf; size_t readbytes; + int isdtls = SSL_is_dtls(serverssl); do { err = SSL_ERROR_WANT_WRITE; @@ -641,22 +718,39 @@ int create_ssl_connection(SSL *serverssl, SSL *clientssl, int want) return 0; if (clienterr && servererr) return 0; + if (isdtls) { + if (rets > 0 && retc <= 0) + DTLSv1_handle_timeout(serverssl); + if (retc > 0 && rets <= 0) + DTLSv1_handle_timeout(clientssl); + } if (++abortctr == MAXLOOPS) { TEST_info("No progress made"); return 0; } + if (isdtls && abortctr <= 50 && (abortctr % 10) == 0) { + /* + * It looks like we're just spinning. Pause for a short period to + * give the DTLS timer a chance to do something. We only do this for + * the first few times to prevent hangs. + */ + ossl_sleep(50); + } } while (retc <=0 || rets <= 0); /* * We attempt to read some data on the client side which we expect to fail. * This will ensure we have received the NewSessionTicket in TLSv1.3 where - * appropriate. + * appropriate. We do this twice because there are 2 NewSesionTickets. */ - if (SSL_read_ex(clientssl, &buf, sizeof(buf), &readbytes) > 0) { - if (!TEST_ulong_eq(readbytes, 0)) + for (i = 0; i < 2; i++) { + if (SSL_read_ex(clientssl, &buf, sizeof(buf), &readbytes) > 0) { + if (!TEST_ulong_eq(readbytes, 0)) + return 0; + } else if (!TEST_int_eq(SSL_get_error(clientssl, 0), + SSL_ERROR_WANT_READ)) { return 0; - } else if (!TEST_int_eq(SSL_get_error(clientssl, 0), SSL_ERROR_WANT_READ)) { - return 0; + } } return 1; diff --git a/test/ssltestlib.h b/test/ssltestlib.h index 385833ba..c96dff52 100644 --- a/test/ssltestlib.h +++ b/test/ssltestlib.h @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -13,6 +13,7 @@ # include int create_ssl_ctx_pair(const SSL_METHOD *sm, const SSL_METHOD *cm, + int min_proto_version, int max_proto_version, SSL_CTX **sctx, SSL_CTX **cctx, char *certfile, char *privkeyfile); int create_ssl_objects(SSL_CTX *serverctx, SSL_CTX *clientctx, SSL **sssl, @@ -31,6 +32,14 @@ void bio_s_mempacket_test_free(void); #define INJECT_PACKET 1 #define INJECT_PACKET_IGNORE_REC_SEQ 2 +/* + * Mempacket BIO ctrls. We make them large enough to not clash with standard BIO + * ctrl codes. + */ +#define MEMPACKET_CTRL_SET_DROP_EPOCH (1 << 15) +#define MEMPACKET_CTRL_SET_DROP_REC (2 << 15) +#define MEMPACKET_CTRL_GET_DROP_REC (3 << 15) + int mempacket_test_inject(BIO *bio, const char *in, int inl, int pktnum, int type); diff --git a/test/sysdefault.cnf b/test/sysdefault.cnf new file mode 100644 index 00000000..5473d837 --- /dev/null +++ b/test/sysdefault.cnf @@ -0,0 +1,15 @@ +# Configuration file to test system default SSL configuration + +openssl_conf = default_conf + +[ default_conf ] + +ssl_conf = ssl_sect + +[ssl_sect] + +system_default = ssl_default_sect + +[ssl_default_sect] +MaxProtocol = TLSv1.2 +MinProtocol = TLSv1.2 diff --git a/test/sysdefaulttest.c b/test/sysdefaulttest.c new file mode 100644 index 00000000..2e2bb8f7 --- /dev/null +++ b/test/sysdefaulttest.c @@ -0,0 +1,50 @@ +/* + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include + +#include +#include +#include +#include +#include "testutil.h" + +static SSL_CTX *ctx; + +static int test_func(void) +{ + if (!TEST_int_eq(SSL_CTX_get_min_proto_version(ctx), TLS1_2_VERSION) + && !TEST_int_eq(SSL_CTX_get_max_proto_version(ctx), TLS1_2_VERSION)) { + TEST_info("min/max version setting incorrect"); + return 0; + } + return 1; +} + +int global_init(void) +{ + if (!OPENSSL_init_ssl(OPENSSL_INIT_ENGINE_ALL_BUILTIN + | OPENSSL_INIT_LOAD_CONFIG, NULL)) + return 0; + return 1; +} + +int setup_tests(void) +{ + if (!TEST_ptr(ctx = SSL_CTX_new(TLS_method()))) + return 0; + ADD_TEST(test_func); + return 1; +} + +void cleanup_tests(void) +{ + SSL_CTX_free(ctx); +} diff --git a/test/test_test.c b/test/test_test.c index c45bf8d8..18b61c6d 100644 --- a/test/test_test.c +++ b/test/test_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved. * * Licensed under the OpenSSL license (the "License"). You may not use @@ -531,6 +531,10 @@ static int test_bn_output(int n) return 1; } +static int test_memcmp(void) +{ + return CRYPTO_memcmp("ab","cd",2); +} int setup_tests(void) { @@ -553,6 +557,7 @@ int setup_tests(void) ADD_TEST(test_messages); ADD_TEST(test_single_eval); ADD_TEST(test_output); + ADD_TEST(test_memcmp); ADD_ALL_TESTS(test_bn_output, OSSL_NELEM(bn_output_tests)); return 1; } diff --git a/test/time_offset_test.c b/test/time_offset_test.c index f3b20dd2..8776559e 100644 --- a/test/time_offset_test.c +++ b/test/time_offset_test.c @@ -106,7 +106,7 @@ static int test_offset(int idx) return 1; } -int setup_tests() +int setup_tests(void) { ADD_ALL_TESTS(test_offset, OSSL_NELEM(tests)); return 1; diff --git a/test/tls13ccstest.c b/test/tls13ccstest.c index afea0ea5..92e9d598 100644 --- a/test/tls13ccstest.c +++ b/test/tls13ccstest.c @@ -37,7 +37,7 @@ static int watchccs_puts(BIO *bp, const char *str); static BIO_METHOD *method_watchccs = NULL; -static const BIO_METHOD *bio_f_watchccs_filter() +static const BIO_METHOD *bio_f_watchccs_filter(void) { if (method_watchccs == NULL) { method_watchccs = BIO_meth_new(BIO_TYPE_WATCHCCS_FILTER, @@ -255,10 +255,9 @@ static int test_tls13ccs(int tst) chsessidlen = 0; if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, &sctx, &cctx, cert, privkey)) || !TEST_true(SSL_CTX_set_max_early_data(sctx, - SSL3_RT_MAX_PLAIN_LENGTH)) - || !TEST_true(SSL_CTX_set_max_early_data(cctx, SSL3_RT_MAX_PLAIN_LENGTH))) goto err; diff --git a/test/tls13encryptiontest.c b/test/tls13encryptiontest.c index 6e4b8898..4c5d575b 100644 --- a/test/tls13encryptiontest.c +++ b/test/tls13encryptiontest.c @@ -1,5 +1,5 @@ /* - * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -92,7 +92,7 @@ static RECORD_DATA refdata[] = { "83dd29f64508b2ec3e635a2134fc0e1a39d3ecb51dcddfcf8382c88ffe2a7378" "42ad1de7fe505b6c4d1673870f6fc2a0f2f7972acaee368a1599d64ba18798f1" "0333f9779bd5b05f9b084d03dab2f3d80c2eb74ec70c9866ea31c18b491cd597" - "aae3e941205fcc38a3a10ce8c0269f02ccc9c51278e25f1a0f0731a9" + "aae3e941205fcc38a3a10ce8f2e230d97e3406b77ee53d84d89ca548" }, "d2dd45f87ad87801a85ac38187f9023b", "f0a14f808692cef87a3daf70", @@ -106,7 +106,7 @@ static RECORD_DATA refdata[] = { }, { "fa15e92daa21cd05d8f9c3152a61748d9aaf049da559718e583f95aacecad657" - "b52a6562da09a5819e864d86ac2989360a1eb22795","","" + "b52a6562da66864fd14969acc30dc04a78c38283c5","","" }, "40e1201d75d419627f04c88530a15c9d", "a0f073f3b35e18f96969696b", @@ -128,7 +128,7 @@ static RECORD_DATA refdata[] = { "836905229eac811c4ef8b2faa89867e9ffc586f7f03c216591aa5e620eac3c62" "dfe60f846036bd7ecc4464b584af184e9644e94ee1d7834dba408a51cbe42480" "04796ed9c558e0f5f96115a6f6ba487e17d16a2e20a3d3a650a9a070fb53d9da" - "82864b5621d77650bd0c7947e9889917b53d0515627c72b0ded521","","" + "82864b5621d77650bd0c7972f592aa8546de09b8e46921fab4d876","","" }, "3381f6b3f94500f16226de440193e858", "4f1d73cc1d465eb30021c41f", @@ -142,8 +142,8 @@ static RECORD_DATA refdata[] = { }, { "e306178ad97f74bb64f35eaf3c39846b83aef8472cbc9046749b81a949dfb12c" - "fbc65cbabd20ade92c1f944605892ceeb12fdee8a927bce77c83036ac5a794a8" - "f54a69","","" + "fbc65cbabd20ade92c1f944605892ceeb12fde5781d40e2ca080fc921b750b8c" + "21bd8d","","" }, "eb23a804904b80ba4fe8399e09b1ce42", "efa8c50c06b9c9b8c483e174", @@ -157,8 +157,8 @@ static RECORD_DATA refdata[] = { }, { "467d99a807dbf778e6ffd8be52456c70665f890811ef2f3c495d5bbe983feeda" - "b0c251dde596bc7e2b135909ec9f9166fb0152e8c16a84e4b1039256467f9538" - "be4463","","" + "b0c251dde596bc7e2b135909ec9f9166fb01526c70c7e42b6df52d63b0000222" + "cb2047","","" }, "3381f6b3f94500f16226de440193e858", "4f1d73cc1d465eb30021c41f", @@ -170,7 +170,7 @@ static RECORD_DATA refdata[] = { "010015","","" }, { - "6bdf60847ba6fb650da36e872adc684a4af2e8","","" + "6bdf609107610cff95d70387a67b89e2494f0d","","" }, "eb23a804904b80ba4fe8399e09b1ce42", "efa8c50c06b9c9b8c483e174", @@ -182,7 +182,7 @@ static RECORD_DATA refdata[] = { "010015","","" }, { - "621b7cc1962cd8a70109fee68a52efedf87d2e","","" + "621b7c60d32528b149b36a78c8891a8d2f65ad","","" }, "3381f6b3f94500f16226de440193e858", "4f1d73cc1d465eb30021c41f", @@ -306,7 +306,13 @@ static int test_tls13_encryption(void) int ret = 0; size_t ivlen, ctr; + /* + * Encrypted TLSv1.3 records always have an outer content type of + * application data, and a record version of TLSv1.2. + */ rec.data = NULL; + rec.type = SSL3_RT_APPLICATION_DATA; + rec.rec_version = TLS1_2_VERSION; ctx = SSL_CTX_new(TLS_method()); if (!TEST_ptr(ctx)) { diff --git a/test/tls13secretstest.c b/test/tls13secretstest.c index 8b775b80..313ab568 100644 --- a/test/tls13secretstest.c +++ b/test/tls13secretstest.c @@ -399,7 +399,7 @@ static int test_handshake_secrets(void) return ret; } -int setup_tests() +int setup_tests(void) { ADD_TEST(test_handshake_secrets); return 1; diff --git a/test/v3nametest.c b/test/v3nametest.c index 08684eaf..86f3829a 100644 --- a/test/v3nametest.c +++ b/test/v3nametest.c @@ -251,7 +251,7 @@ static const struct set_name_fn name_fns[] = { {set_altname_email, "set rfc822Name", 0, 1}, }; -static X509 *make_cert() +static X509 *make_cert(void) { X509 *crt = NULL; diff --git a/test/verify_extra_test.c b/test/verify_extra_test.c index 83d93cd9..d9d14989 100644 --- a/test/verify_extra_test.c +++ b/test/verify_extra_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -138,6 +138,43 @@ static int test_alt_chains_cert_forgery(void) return ret; } +static int test_store_ctx(void) +{ + X509_STORE_CTX *sctx = NULL; + X509 *x = NULL; + BIO *bio = NULL; + int testresult = 0, ret; + + bio = BIO_new_file(bad_f, "r"); + if (bio == NULL) + goto err; + + x = PEM_read_bio_X509(bio, NULL, 0, NULL); + if (x == NULL) + goto err; + + sctx = X509_STORE_CTX_new(); + if (sctx == NULL) + goto err; + + if (!X509_STORE_CTX_init(sctx, NULL, x, NULL)) + goto err; + + /* Verifying a cert where we have no trusted certs should fail */ + ret = X509_verify_cert(sctx); + + if (ret == 0) { + /* This is the result we were expecting: Test passed */ + testresult = 1; + } + + err: + X509_STORE_CTX_free(sctx); + X509_free(x); + BIO_free(bio); + return testresult; +} + int setup_tests(void) { if (!TEST_ptr(roots_f = test_get_argument(0)) @@ -148,5 +185,6 @@ int setup_tests(void) } ADD_TEST(test_alt_chains_cert_forgery); + ADD_TEST(test_store_ctx); return 1; } diff --git a/test/versions.c b/test/versions.c new file mode 100644 index 00000000..3ab05ec3 --- /dev/null +++ b/test/versions.c @@ -0,0 +1,20 @@ +/* + * Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#include +#include +#include + +/* A simple helper for the perl function OpenSSL::Test::openssl_versions */ +int main(void) +{ + printf("Build version: 0x%08lX\n", OPENSSL_VERSION_NUMBER); + printf("Library version: 0x%08lX\n", OpenSSL_version_num()); + return 0; +} diff --git a/test/x509_internal_test.c b/test/x509_internal_test.c index 03bbcf2b..9f351a47 100644 --- a/test/x509_internal_test.c +++ b/test/x509_internal_test.c @@ -57,7 +57,7 @@ static int test_standard_exts(void) return good; } -int setup_tests() +int setup_tests(void) { ADD_TEST(test_standard_exts); return 1; diff --git a/test/x509_time_test.c b/test/x509_time_test.c index 5983bdf1..d672a9a1 100644 --- a/test/x509_time_test.c +++ b/test/x509_time_test.c @@ -482,7 +482,7 @@ static int test_x509_time_print(int idx) return ret; } -int setup_tests() +int setup_tests(void) { ADD_TEST(test_x509_cmp_time_current); ADD_ALL_TESTS(test_x509_cmp_time, OSSL_NELEM(x509_cmp_tests)); diff --git a/tools/c_rehash.in b/tools/c_rehash.in index 3a9e44a5..421fd892 100644 --- a/tools/c_rehash.in +++ b/tools/c_rehash.in @@ -1,7 +1,7 @@ #!{- $config{HASHBANGPERL} -} # {- join("\n# ", @autowarntext) -} -# Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 1999-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/util/add-depends.pl b/util/add-depends.pl index 573986d6..3ba266e3 100644 --- a/util/add-depends.pl +++ b/util/add-depends.pl @@ -6,45 +6,281 @@ # in the file LICENSE in the source distribution or at # https://www.openssl.org/source/license.html +use strict; +use warnings; + use lib '.'; use configdata; +use File::Spec::Functions qw(:DEFAULT rel2abs); use File::Compare qw(compare_text); +use feature 'state'; +# When using stat() on Windows, we can get it to perform better by avoid some +# data. This doesn't affect the mtime field, so we're not losing anything... +${^WIN32_SLOPPY_STAT} = 1; + +my $debug = $ENV{ADD_DEPENDS_DEBUG}; my $buildfile = $config{build_file}; -my $buildfile_new = "$buildfile-$$"; +my $build_mtime = (stat($buildfile))[9]; +my $rebuild = 0; my $depext = $target{dep_extension} || ".d"; -my @deps = - grep { -f $_ } +my @depfiles = + sort + grep { + # This grep has side effects. Not only does if check the existence + # of the dependency file given in $_, but it also checks if it's + # newer than the build file, and if it is, sets $rebuild. + my @st = stat($_); + $rebuild = 1 if @st && $st[9] > $build_mtime; + scalar @st > 0; # Determines the grep result + } map { (my $x = $_) =~ s|\.o$|$depext|; $x; } grep { $unified_info{sources}->{$_}->[0] =~ /\.cc?$/ } keys %{$unified_info{sources}}; +exit 0 unless $rebuild; + +# Ok, primary checks are done, time to do some real work + +my $producer = shift @ARGV; +die "Producer not given\n" unless $producer; + +my $srcdir = $config{sourcedir}; +my $blddir = $config{builddir}; +my $abs_srcdir = rel2abs($srcdir); +my $abs_blddir = rel2abs($blddir); + +# Convenient cache of absolute to relative map. We start with filling it +# with mappings for the known generated header files. They are relative to +# the current working directory, so that's an easy task. +# NOTE: there's more than C header files that are generated. They will also +# generate entries in this map. We could of course deal with C header files +# only, but in case we decide to handle more than just C files in the future, +# we already have the mechanism in place here. +# NOTE2: we lower case the index to make it searchable without regard for +# character case. That could seem dangerous, but as long as we don't have +# files we depend on in the same directory that only differ by character case, +# we're fine. +my %depconv_cache = + map { lc catfile($abs_blddir, $_) => $_ } + keys %{$unified_info{generate}}; + +my %procedures = ( + 'gcc' => undef, # gcc style dependency files needs no mods + 'makedepend' => + sub { + # makedepend, in its infinite wisdom, wants to have the object file + # in the same directory as the source file. This doesn't work too + # well with out-of-source-tree builds, so we must resort to tricks + # to get things right. Fortunately, the .d files are always placed + # parallel with the object files, so all we need to do is construct + # the object file name from the dep file name. + (my $objfile = shift) =~ s|\.d$|.o|i; + my $line = shift; + + # Discard comments + return undef if $line =~ /^(#.*|\s*)$/; + + # Remove the original object file + $line =~ s|^.*\.o: | |; + # Also, remove any dependency that starts with a /, because those + # are typically system headers + $line =~ s/\s+\/(\\.|\S)*//g; + # Finally, discard all empty lines + return undef if $line =~ /^\s*$/; + + # All we got now is a dependency, just shave off surrounding spaces + $line =~ s/^\s+//; + $line =~ s/\s+$//; + return ($objfile, $line); + }, + 'VMS C' => + sub { + state $abs_srcdir_shaved = undef; + state $srcdir_shaved = undef; + + unless (defined $abs_srcdir_shaved) { + ($abs_srcdir_shaved = $abs_srcdir) =~ s|[>\]]$||; + ($srcdir_shaved = $srcdir) =~ s|[>\]]$||; + } + + # current versions of DEC / Compaq / HP / VSI C strips away all + # directory information from the object file, so we must insert it + # back. To make life simpler, we simply replace it with the + # corresponding .D file that's had its extension changed. Since + # .D files are always written parallel to the object files, we + # thereby get the directory information for free. + (my $objfile = shift) =~ s|\.D$|.OBJ|i; + my $line = shift; + + # Shave off the target. + # + # The pattern for target and dependencies will always take this + # form: + # + # target SPACE : SPACE deps + # + # This is so a volume delimiter (a : without any spaces around it) + # won't get mixed up with the target / deps delimiter. We use this + # to easily identify what needs to be removed. + m|\s:\s|; $line = $'; + + # We know that VMS has system header files in text libraries, + # extension .TLB. We also know that our header files aren't stored + # in text libraries. Finally, we know that VMS C produces exactly + # one dependency per line, so we simply discard any line ending with + # .TLB. + return undef if /\.TLB\s*$/; + + # All we got now is a dependency, just shave off surrounding spaces + $line =~ s/^\s+//; + $line =~ s/\s+$//; + + # VMS C gives us absolute paths, always. Let's see if we can + # make them relative instead. + $line = lc canonpath($line); + + unless (defined $depconv_cache{$line}) { + my $dep = $line; + # Since we have already pre-populated the cache with + # mappings for generated headers, we only need to deal + # with the source tree. + if ($dep =~ s|^\Q$abs_srcdir_shaved\E([\.>\]])?|$srcdir_shaved$1|i) { + $depconv_cache{$line} = $dep; + } + } + return ($objfile, $depconv_cache{$line}) + if defined $depconv_cache{$line}; + print STDERR "DEBUG[VMS C]: ignoring $objfile <- $line\n" + if $debug; + + return undef; + }, + 'VC' => + sub { + # For the moment, we only support Visual C on native Windows, or + # compatible compilers. With those, the flags /Zs /showIncludes + # give us the necessary output to be able to create dependencies + # that nmake (or any 'make' implementation) should be able to read, + # with a bit of help. The output we're interested in looks like + # this (it always starts the same) + # + # Note: including file: {whatever header file} + # + # Since there's no object file name at all in that information, + # we must construct it ourselves. + + (my $objfile = shift) =~ s|\.d$|.obj|i; + my $line = shift; + + # There are also other lines mixed in, for example compiler + # warnings, so we simply discard anything that doesn't start with + # the Note: + + if (/^Note: including file: */) { + (my $tail = $') =~ s/\s*\R$//; + + # VC gives us absolute paths for all include files, so to + # remove system header dependencies, we need to check that + # they don't match $abs_srcdir or $abs_blddir. + $tail = lc canonpath($tail); + + unless (defined $depconv_cache{$tail}) { + my $dep = $tail; + # Since we have already pre-populated the cache with + # mappings for generated headers, we only need to deal + # with the source tree. + if ($dep =~ s|^\Q$abs_srcdir\E\\|\$(SRCDIR)\\|i) { + $depconv_cache{$tail} = $dep; + } + } + return ($objfile, '"'.$depconv_cache{$tail}.'"') + if defined $depconv_cache{$tail}; + print STDERR "DEBUG[VC]: ignoring $objfile <- $tail\n" + if $debug; + } + + return undef; + }, +); +my %continuations = ( + 'gcc' => undef, + 'makedepend' => "\\", + 'VMS C' => "-", + 'VC' => "\\", +); + +die "Producer unrecognised: $producer\n" + unless exists $procedures{$producer} && exists $continuations{$producer}; + +my $procedure = $procedures{$producer}; +my $continuation = $continuations{$producer}; + +my $buildfile_new = "$buildfile-$$"; + +my %collect = (); +if (defined $procedure) { + foreach my $depfile (@depfiles) { + open IDEP,$depfile or die "Trying to read $depfile: $!\n"; + while () { + s|\R$||; # The better chomp + my ($target, $deps) = $procedure->($depfile, $_); + $collect{$target}->{$deps} = 1 if defined $target; + } + close IDEP; + } +} + open IBF, $buildfile or die "Trying to read $buildfile: $!\n"; open OBF, '>', $buildfile_new or die "Trying to write $buildfile_new: $!\n"; while () { - $force_rewrite = 0; last if /^# DO NOT DELETE THIS LINE/; print OBF or die "$!\n"; - $force_rewrite = 1; } close IBF; print OBF "# DO NOT DELETE THIS LINE -- make depend depends on it.\n"; -foreach (@deps) { - open IBF,$_ or die "Trying to read $_: $!\n"; - while () { - print OBF or die "$!\n"; +if (defined $procedure) { + foreach my $target (sort keys %collect) { + my $prefix = $target . ' :'; + my @deps = sort keys %{$collect{$target}}; + + while (@deps) { + my $buf = $prefix; + $prefix = ''; + + while (@deps && ($buf eq '' + || length($buf) + length($deps[0]) <= 77)) { + $buf .= ' ' . shift @deps; + } + $buf .= ' '.$continuation if @deps; + + print OBF $buf,"\n" or die "Trying to print: $!\n" + } + } +} else { + foreach my $depfile (@depfiles) { + open IDEP,$depfile or die "Trying to read $depfile: $!\n"; + while () { + print OBF or die "Trying to print: $!\n"; + } + close IDEP; } - close IBF; } + close OBF; if (compare_text($buildfile_new, $buildfile) != 0) { rename $buildfile_new, $buildfile or die "Trying to rename $buildfile_new -> $buildfile: $!\n"; } -# On VMS, we want to remove all generations of this file, in case there are -# more than one -while (unlink $buildfile_new) {} + +END { + # On VMS, we want to remove all generations of this file, in case there + # are more than one, so we loop. + if (defined $buildfile_new) { + while (unlink $buildfile_new) {} + } +} diff --git a/util/check-malloc-errs b/util/check-malloc-errs new file mode 100755 index 00000000..1e632407 --- /dev/null +++ b/util/check-malloc-errs @@ -0,0 +1,16 @@ +#! /bin/sh +# Copyright 2018 The OpenSSL Project Authors. All Rights Reserved. +# +# Licensed under the OpenSSL license (the "License"). You may not use +# this file except in compliance with the License. You can obtain a copy +# in the file LICENSE in the source distribution or at +# https://www.openssl.org/source/license.html + +( + pcregrep -rnM 'OPENSSL_.?alloc.*\n.*if.*NULL.*\n.*return' crypto ssl + pcregrep -rnM 'if.*OPENSSL_.?alloc.*NULL.*\n.*.*return' crypto ssl +) | tee /tmp/out$$ +X=0 +test -s /tmp/out$$ && X=1 +rm /tmp/out$$ +exit $X diff --git a/util/copy.pl b/util/copy.pl index f93fb251..ca4697a2 100644 --- a/util/copy.pl +++ b/util/copy.pl @@ -18,6 +18,7 @@ use Fcntl; my $stripcr = 0; my $arg; +my @excludes = (); foreach $arg (@ARGV) { if ($arg eq "-stripcr") @@ -25,11 +26,16 @@ foreach $arg (@ARGV) { $stripcr = 1; next; } + if ($arg =~ /^-exclude_re=(.*)$/) + { + push @excludes, $1; + next; + } $arg =~ s|\\|/|g; # compensate for bug/feature in cygwin glob... $arg = qq("$arg") if ($arg =~ /\s/); # compensate for bug in 5.10... - foreach (glob $arg) + foreach my $f (glob $arg) { - push @filelist, $_; + push @filelist, $f unless grep { $f =~ /$_/ } @excludes; } } diff --git a/util/dofile.pl b/util/dofile.pl index 2ea54e30..b0e20681 100644 --- a/util/dofile.pl +++ b/util/dofile.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -99,9 +99,9 @@ package main; # This adds quotes (") around the given string, and escapes any $, @, \, # " and ' by prepending a \ to them. sub quotify1 { - my $s = my $orig = shift @_; + my $s = shift @_; $s =~ s/([\$\@\\"'])/\\$1/g; - $s ne $orig || $s =~ /\s/ ? '"'.$s.'"' : $s; + '"'.$s.'"'; } # quotify_l LIST diff --git a/util/indent.pro b/util/indent.pro index 7bb7bcdd..18026460 100644 --- a/util/indent.pro +++ b/util/indent.pro @@ -636,3 +636,4 @@ -T ossl_intmax_t -T ossl_uintmax_t -T ossl_uintmax_t +-T CT_POLICY_EVAL_CTX diff --git a/util/libcrypto.num b/util/libcrypto.num index a96bd2f7..d3351c53 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -4402,123 +4402,134 @@ EVP_PKEY_set1_engine 4347 1_1_0g EXIST::FUNCTION:ENGINE DH_new_by_nid 4348 1_1_1 EXIST::FUNCTION:DH DH_get_nid 4349 1_1_1 EXIST::FUNCTION:DH CRYPTO_get_alloc_counts 4350 1_1_1 EXIST::FUNCTION:CRYPTO_MDEBUG -RAND_POOL_new 4351 1_1_1 EXIST::FUNCTION: -RAND_POOL_free 4352 1_1_1 EXIST::FUNCTION: -RAND_POOL_buffer 4353 1_1_1 EXIST::FUNCTION: -RAND_POOL_detach 4354 1_1_1 EXIST::FUNCTION: -RAND_POOL_entropy 4355 1_1_1 EXIST::FUNCTION: -RAND_POOL_length 4356 1_1_1 EXIST::FUNCTION: -RAND_POOL_entropy_available 4357 1_1_1 EXIST::FUNCTION: -RAND_POOL_entropy_needed 4358 1_1_1 EXIST::FUNCTION: -RAND_POOL_bytes_needed 4359 1_1_1 EXIST::FUNCTION: -RAND_POOL_bytes_remaining 4360 1_1_1 EXIST::FUNCTION: -RAND_POOL_add 4361 1_1_1 EXIST::FUNCTION: -RAND_POOL_add_begin 4362 1_1_1 EXIST::FUNCTION: -RAND_POOL_add_end 4363 1_1_1 EXIST::FUNCTION: -RAND_POOL_acquire_entropy 4364 1_1_1 EXIST::FUNCTION: -OPENSSL_sk_new_reserve 4365 1_1_1 EXIST::FUNCTION: -EVP_PKEY_asn1_set_check 4366 1_1_1 EXIST::FUNCTION: -EVP_PKEY_asn1_set_siginf 4367 1_1_1 EXIST::FUNCTION: -EVP_sm4_ctr 4368 1_1_1 EXIST::FUNCTION:SM4 -EVP_sm4_cbc 4369 1_1_1 EXIST::FUNCTION:SM4 -EVP_sm4_ofb 4370 1_1_1 EXIST::FUNCTION:SM4 -EVP_sm4_ecb 4371 1_1_1 EXIST::FUNCTION:SM4 -EVP_sm4_cfb128 4372 1_1_1 EXIST::FUNCTION:SM4 -EVP_sm3 4373 1_1_1 EXIST::FUNCTION:SM3 -OCSP_resp_get0_signer 4374 1_1_0h EXIST::FUNCTION:OCSP -EVP_PKEY_public_check 4375 1_1_1 EXIST::FUNCTION: -EVP_PKEY_param_check 4376 1_1_1 EXIST::FUNCTION: -EVP_PKEY_meth_set_public_check 4377 1_1_1 EXIST::FUNCTION: -EVP_PKEY_meth_set_param_check 4378 1_1_1 EXIST::FUNCTION: -EVP_PKEY_meth_get_public_check 4379 1_1_1 EXIST::FUNCTION: -EVP_PKEY_meth_get_param_check 4380 1_1_1 EXIST::FUNCTION: -EVP_PKEY_asn1_set_public_check 4381 1_1_1 EXIST::FUNCTION: -EVP_PKEY_asn1_set_param_check 4382 1_1_1 EXIST::FUNCTION: -DH_check_ex 4383 1_1_1 EXIST::FUNCTION:DH -DH_check_pub_key_ex 4384 1_1_1 EXIST::FUNCTION:DH -DH_check_params_ex 4385 1_1_1 EXIST::FUNCTION:DH -RSA_generate_multi_prime_key 4386 1_1_1 EXIST::FUNCTION:RSA -RSA_get_multi_prime_extra_count 4387 1_1_1 EXIST::FUNCTION:RSA -RSA_get0_multi_prime_factors 4388 1_1_1 EXIST::FUNCTION:RSA -RSA_get0_multi_prime_crt_params 4389 1_1_1 EXIST::FUNCTION:RSA -RSA_set0_multi_prime_params 4390 1_1_1 EXIST::FUNCTION:RSA -RSA_get_version 4391 1_1_1 EXIST::FUNCTION:RSA -RSA_meth_get_multi_prime_keygen 4392 1_1_1 EXIST::FUNCTION:RSA -RSA_meth_set_multi_prime_keygen 4393 1_1_1 EXIST::FUNCTION:RSA -RAND_DRBG_get0_master 4394 1_1_1 EXIST::FUNCTION: -RAND_DRBG_set_reseed_time_interval 4395 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_get0_addProfessionInfo 4396 1_1_1 EXIST::FUNCTION: -ADMISSION_SYNTAX_free 4397 1_1_1 EXIST::FUNCTION: -d2i_ADMISSION_SYNTAX 4398 1_1_1 EXIST::FUNCTION: -NAMING_AUTHORITY_set0_authorityId 4399 1_1_1 EXIST::FUNCTION: -NAMING_AUTHORITY_set0_authorityURL 4400 1_1_1 EXIST::FUNCTION: -d2i_PROFESSION_INFO 4401 1_1_1 EXIST::FUNCTION: -NAMING_AUTHORITY_it 4402 1_1_1 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: -NAMING_AUTHORITY_it 4402 1_1_1 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: -ADMISSION_SYNTAX_get0_contentsOfAdmissions 4403 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_set0_professionItems 4404 1_1_1 EXIST::FUNCTION: -NAMING_AUTHORITY_new 4405 1_1_1 EXIST::FUNCTION: -NAMING_AUTHORITY_get0_authorityURL 4406 1_1_1 EXIST::FUNCTION: -ADMISSION_SYNTAX_get0_admissionAuthority 4407 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_new 4408 1_1_1 EXIST::FUNCTION: -ADMISSIONS_new 4409 1_1_1 EXIST::FUNCTION: -ADMISSION_SYNTAX_set0_admissionAuthority 4410 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_get0_professionOIDs 4411 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_it 4412 1_1_1 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: -PROFESSION_INFO_it 4412 1_1_1 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: -i2d_PROFESSION_INFO 4413 1_1_1 EXIST::FUNCTION: -ADMISSIONS_set0_professionInfos 4414 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_get0_namingAuthority 4415 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_free 4416 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_set0_addProfessionInfo 4417 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_set0_registrationNumber 4418 1_1_1 EXIST::FUNCTION: -ADMISSION_SYNTAX_set0_contentsOfAdmissions 4419 1_1_1 EXIST::FUNCTION: -NAMING_AUTHORITY_get0_authorityId 4420 1_1_1 EXIST::FUNCTION: -ADMISSION_SYNTAX_it 4421 1_1_1 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: -ADMISSION_SYNTAX_it 4421 1_1_1 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: -i2d_ADMISSION_SYNTAX 4422 1_1_1 EXIST::FUNCTION: -NAMING_AUTHORITY_get0_authorityText 4423 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_set0_namingAuthority 4424 1_1_1 EXIST::FUNCTION: -i2d_NAMING_AUTHORITY 4425 1_1_1 EXIST::FUNCTION: -NAMING_AUTHORITY_free 4426 1_1_1 EXIST::FUNCTION: -ADMISSIONS_set0_admissionAuthority 4427 1_1_1 EXIST::FUNCTION: -ADMISSIONS_free 4428 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_get0_registrationNumber 4429 1_1_1 EXIST::FUNCTION: -d2i_ADMISSIONS 4430 1_1_1 EXIST::FUNCTION: -i2d_ADMISSIONS 4431 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_get0_professionItems 4432 1_1_1 EXIST::FUNCTION: -ADMISSIONS_get0_admissionAuthority 4433 1_1_1 EXIST::FUNCTION: -PROFESSION_INFO_set0_professionOIDs 4434 1_1_1 EXIST::FUNCTION: -d2i_NAMING_AUTHORITY 4435 1_1_1 EXIST::FUNCTION: -ADMISSIONS_it 4436 1_1_1 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: -ADMISSIONS_it 4436 1_1_1 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: -ADMISSIONS_get0_namingAuthority 4437 1_1_1 EXIST::FUNCTION: -NAMING_AUTHORITY_set0_authorityText 4438 1_1_1 EXIST::FUNCTION: -ADMISSIONS_set0_namingAuthority 4439 1_1_1 EXIST::FUNCTION: -ADMISSIONS_get0_professionInfos 4440 1_1_1 EXIST::FUNCTION: -ADMISSION_SYNTAX_new 4441 1_1_1 EXIST::FUNCTION: -EVP_sha512_256 4442 1_1_1 EXIST::FUNCTION: -EVP_sha512_224 4443 1_1_1 EXIST::FUNCTION: -OCSP_basic_sign_ctx 4444 1_1_1 EXIST::FUNCTION:OCSP -RAND_DRBG_bytes 4445 1_1_1 EXIST::FUNCTION: -RAND_DRBG_secure_new 4446 1_1_1 EXIST::FUNCTION: -OSSL_STORE_vctrl 4447 1_1_1 EXIST::FUNCTION: -X509_get0_authority_key_id 4448 1_1_0h EXIST::FUNCTION: -BIO_bind 4449 1_1_1 EXIST::FUNCTION:SOCK -OSSL_STORE_LOADER_set_expect 4450 1_1_1 EXIST::FUNCTION: -OSSL_STORE_expect 4451 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_by_key_fingerprint 4452 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_get0_serial 4453 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_by_name 4454 1_1_1 EXIST::FUNCTION: -OSSL_STORE_supports_search 4455 1_1_1 EXIST::FUNCTION: -OSSL_STORE_find 4456 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_get_type 4457 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_get0_bytes 4458 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_get0_string 4459 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_by_issuer_serial 4460 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_get0_name 4461 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_by_alias 4462 1_1_1 EXIST::FUNCTION: -OSSL_STORE_LOADER_set_find 4463 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_free 4464 1_1_1 EXIST::FUNCTION: -OSSL_STORE_SEARCH_get0_digest 4465 1_1_1 EXIST::FUNCTION: -RAND_DRBG_set_reseed_defaults 4466 1_1_1 EXIST::FUNCTION: +OPENSSL_sk_new_reserve 4351 1_1_1 EXIST::FUNCTION: +EVP_PKEY_asn1_set_check 4352 1_1_1 EXIST::FUNCTION: +EVP_PKEY_asn1_set_siginf 4353 1_1_1 EXIST::FUNCTION: +EVP_sm4_ctr 4354 1_1_1 EXIST::FUNCTION:SM4 +EVP_sm4_cbc 4355 1_1_1 EXIST::FUNCTION:SM4 +EVP_sm4_ofb 4356 1_1_1 EXIST::FUNCTION:SM4 +EVP_sm4_ecb 4357 1_1_1 EXIST::FUNCTION:SM4 +EVP_sm4_cfb128 4358 1_1_1 EXIST::FUNCTION:SM4 +EVP_sm3 4359 1_1_1 EXIST::FUNCTION:SM3 +OCSP_resp_get0_signer 4360 1_1_0h EXIST::FUNCTION:OCSP +EVP_PKEY_public_check 4361 1_1_1 EXIST::FUNCTION: +EVP_PKEY_param_check 4362 1_1_1 EXIST::FUNCTION: +EVP_PKEY_meth_set_public_check 4363 1_1_1 EXIST::FUNCTION: +EVP_PKEY_meth_set_param_check 4364 1_1_1 EXIST::FUNCTION: +EVP_PKEY_meth_get_public_check 4365 1_1_1 EXIST::FUNCTION: +EVP_PKEY_meth_get_param_check 4366 1_1_1 EXIST::FUNCTION: +EVP_PKEY_asn1_set_public_check 4367 1_1_1 EXIST::FUNCTION: +EVP_PKEY_asn1_set_param_check 4368 1_1_1 EXIST::FUNCTION: +DH_check_ex 4369 1_1_1 EXIST::FUNCTION:DH +DH_check_pub_key_ex 4370 1_1_1 EXIST::FUNCTION:DH +DH_check_params_ex 4371 1_1_1 EXIST::FUNCTION:DH +RSA_generate_multi_prime_key 4372 1_1_1 EXIST::FUNCTION:RSA +RSA_get_multi_prime_extra_count 4373 1_1_1 EXIST::FUNCTION:RSA +RSA_get0_multi_prime_factors 4374 1_1_1 EXIST::FUNCTION:RSA +RSA_get0_multi_prime_crt_params 4375 1_1_1 EXIST::FUNCTION:RSA +RSA_set0_multi_prime_params 4376 1_1_1 EXIST::FUNCTION:RSA +RSA_get_version 4377 1_1_1 EXIST::FUNCTION:RSA +RSA_meth_get_multi_prime_keygen 4378 1_1_1 EXIST::FUNCTION:RSA +RSA_meth_set_multi_prime_keygen 4379 1_1_1 EXIST::FUNCTION:RSA +RAND_DRBG_get0_master 4380 1_1_1 EXIST::FUNCTION: +RAND_DRBG_set_reseed_time_interval 4381 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_get0_addProfessionInfo 4382 1_1_1 EXIST::FUNCTION: +ADMISSION_SYNTAX_free 4383 1_1_1 EXIST::FUNCTION: +d2i_ADMISSION_SYNTAX 4384 1_1_1 EXIST::FUNCTION: +NAMING_AUTHORITY_set0_authorityId 4385 1_1_1 EXIST::FUNCTION: +NAMING_AUTHORITY_set0_authorityURL 4386 1_1_1 EXIST::FUNCTION: +d2i_PROFESSION_INFO 4387 1_1_1 EXIST::FUNCTION: +NAMING_AUTHORITY_it 4388 1_1_1 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +NAMING_AUTHORITY_it 4388 1_1_1 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ADMISSION_SYNTAX_get0_contentsOfAdmissions 4389 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_set0_professionItems 4390 1_1_1 EXIST::FUNCTION: +NAMING_AUTHORITY_new 4391 1_1_1 EXIST::FUNCTION: +NAMING_AUTHORITY_get0_authorityURL 4392 1_1_1 EXIST::FUNCTION: +ADMISSION_SYNTAX_get0_admissionAuthority 4393 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_new 4394 1_1_1 EXIST::FUNCTION: +ADMISSIONS_new 4395 1_1_1 EXIST::FUNCTION: +ADMISSION_SYNTAX_set0_admissionAuthority 4396 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_get0_professionOIDs 4397 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_it 4398 1_1_1 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PROFESSION_INFO_it 4398 1_1_1 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +i2d_PROFESSION_INFO 4399 1_1_1 EXIST::FUNCTION: +ADMISSIONS_set0_professionInfos 4400 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_get0_namingAuthority 4401 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_free 4402 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_set0_addProfessionInfo 4403 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_set0_registrationNumber 4404 1_1_1 EXIST::FUNCTION: +ADMISSION_SYNTAX_set0_contentsOfAdmissions 4405 1_1_1 EXIST::FUNCTION: +NAMING_AUTHORITY_get0_authorityId 4406 1_1_1 EXIST::FUNCTION: +ADMISSION_SYNTAX_it 4407 1_1_1 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ADMISSION_SYNTAX_it 4407 1_1_1 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +i2d_ADMISSION_SYNTAX 4408 1_1_1 EXIST::FUNCTION: +NAMING_AUTHORITY_get0_authorityText 4409 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_set0_namingAuthority 4410 1_1_1 EXIST::FUNCTION: +i2d_NAMING_AUTHORITY 4411 1_1_1 EXIST::FUNCTION: +NAMING_AUTHORITY_free 4412 1_1_1 EXIST::FUNCTION: +ADMISSIONS_set0_admissionAuthority 4413 1_1_1 EXIST::FUNCTION: +ADMISSIONS_free 4414 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_get0_registrationNumber 4415 1_1_1 EXIST::FUNCTION: +d2i_ADMISSIONS 4416 1_1_1 EXIST::FUNCTION: +i2d_ADMISSIONS 4417 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_get0_professionItems 4418 1_1_1 EXIST::FUNCTION: +ADMISSIONS_get0_admissionAuthority 4419 1_1_1 EXIST::FUNCTION: +PROFESSION_INFO_set0_professionOIDs 4420 1_1_1 EXIST::FUNCTION: +d2i_NAMING_AUTHORITY 4421 1_1_1 EXIST::FUNCTION: +ADMISSIONS_it 4422 1_1_1 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ADMISSIONS_it 4422 1_1_1 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ADMISSIONS_get0_namingAuthority 4423 1_1_1 EXIST::FUNCTION: +NAMING_AUTHORITY_set0_authorityText 4424 1_1_1 EXIST::FUNCTION: +ADMISSIONS_set0_namingAuthority 4425 1_1_1 EXIST::FUNCTION: +ADMISSIONS_get0_professionInfos 4426 1_1_1 EXIST::FUNCTION: +ADMISSION_SYNTAX_new 4427 1_1_1 EXIST::FUNCTION: +EVP_sha512_256 4428 1_1_1 EXIST::FUNCTION: +EVP_sha512_224 4429 1_1_1 EXIST::FUNCTION: +OCSP_basic_sign_ctx 4430 1_1_1 EXIST::FUNCTION:OCSP +RAND_DRBG_bytes 4431 1_1_1 EXIST::FUNCTION: +RAND_DRBG_secure_new 4432 1_1_1 EXIST::FUNCTION: +OSSL_STORE_vctrl 4433 1_1_1 EXIST::FUNCTION: +X509_get0_authority_key_id 4434 1_1_0h EXIST::FUNCTION: +BIO_bind 4435 1_1_1 EXIST::FUNCTION:SOCK +OSSL_STORE_LOADER_set_expect 4436 1_1_1 EXIST::FUNCTION: +OSSL_STORE_expect 4437 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_by_key_fingerprint 4438 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_get0_serial 4439 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_by_name 4440 1_1_1 EXIST::FUNCTION: +OSSL_STORE_supports_search 4441 1_1_1 EXIST::FUNCTION: +OSSL_STORE_find 4442 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_get_type 4443 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_get0_bytes 4444 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_get0_string 4445 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_by_issuer_serial 4446 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_get0_name 4447 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_by_alias 4448 1_1_1 EXIST::FUNCTION: +OSSL_STORE_LOADER_set_find 4449 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_free 4450 1_1_1 EXIST::FUNCTION: +OSSL_STORE_SEARCH_get0_digest 4451 1_1_1 EXIST::FUNCTION: +RAND_DRBG_set_reseed_defaults 4452 1_1_1 EXIST::FUNCTION: +EVP_PKEY_new_raw_private_key 4453 1_1_1 EXIST::FUNCTION: +EVP_PKEY_new_raw_public_key 4454 1_1_1 EXIST::FUNCTION: +EVP_PKEY_new_CMAC_key 4455 1_1_1 EXIST::FUNCTION: +EVP_PKEY_asn1_set_set_priv_key 4456 1_1_1 EXIST::FUNCTION: +EVP_PKEY_asn1_set_set_pub_key 4457 1_1_1 EXIST::FUNCTION: +RAND_DRBG_set_defaults 4458 1_1_1 EXIST::FUNCTION: +SM2_decrypt 4459 1_1_1 EXIST::FUNCTION:SM2 +SM2_do_sign 4460 1_1_1 EXIST::FUNCTION:SM2 +SM2_compute_userid_digest 4461 1_1_1 EXIST::FUNCTION:SM2 +SM2_encrypt 4462 1_1_1 EXIST::FUNCTION:SM2 +SM2_ciphertext_size 4463 1_1_1 EXIST::FUNCTION:SM2 +SM2_verify 4464 1_1_1 EXIST::FUNCTION:SM2 +SM2_do_verify 4465 1_1_1 EXIST::FUNCTION:SM2 +SM2_sign 4466 1_1_1 EXIST::FUNCTION:SM2 +ERR_load_SM2_strings 4467 1_1_1 EXIST::FUNCTION:SM2 +SM2_plaintext_size 4468 1_1_1 EXIST::FUNCTION:SM2 +conf_ssl_name_find 4469 1_1_0i EXIST::FUNCTION: +conf_ssl_get_cmd 4470 1_1_0i EXIST::FUNCTION: +conf_ssl_get 4471 1_1_0i EXIST::FUNCTION: +X509_VERIFY_PARAM_get_hostflags 4472 1_1_0i EXIST::FUNCTION: +DH_get0_p 4473 1_1_0i EXIST::FUNCTION:DH +DH_get0_q 4474 1_1_0i EXIST::FUNCTION:DH +DH_get0_g 4475 1_1_0i EXIST::FUNCTION:DH +DH_get0_priv_key 4476 1_1_0i EXIST::FUNCTION:DH +DH_get0_pub_key 4477 1_1_0i EXIST::FUNCTION:DH diff --git a/util/libssl.num b/util/libssl.num index db844e33..3495903e 100644 --- a/util/libssl.num +++ b/util/libssl.num @@ -484,3 +484,9 @@ SSL_SESSION_set1_ticket_appdata 484 1_1_1 EXIST::FUNCTION: SSL_CTX_set_session_ticket_cb 485 1_1_1 EXIST::FUNCTION: SSL_CTX_set_stateless_cookie_generate_cb 486 1_1_1 EXIST::FUNCTION: SSL_CTX_set_stateless_cookie_verify_cb 487 1_1_1 EXIST::FUNCTION: +SSL_CTX_set_ciphersuites 488 1_1_1 EXIST::FUNCTION: +SSL_set_ciphersuites 489 1_1_1 EXIST::FUNCTION: +SSL_set_num_tickets 490 1_1_1 EXIST::FUNCTION: +SSL_CTX_get_num_tickets 491 1_1_1 EXIST::FUNCTION: +SSL_get_num_tickets 492 1_1_1 EXIST::FUNCTION: +SSL_CTX_set_num_tickets 493 1_1_1 EXIST::FUNCTION: diff --git a/util/mkdef.pl b/util/mkdef.pl index fac911a4..669589c8 100755 --- a/util/mkdef.pl +++ b/util/mkdef.pl @@ -241,7 +241,7 @@ my $crypto ="include/internal/dso.h"; $crypto.=" include/internal/o_dir.h"; $crypto.=" include/internal/o_str.h"; $crypto.=" include/internal/err.h"; -$crypto.=" include/internal/rand.h"; +$crypto.=" include/internal/sslconf.h"; foreach my $f ( glob(catfile($config{sourcedir},'include/openssl/*.h')) ) { my $fn = "include/openssl/" . lc(basename($f)); $crypto .= " $fn" if !defined $skipthese{$fn}; diff --git a/util/mkrc.pl b/util/mkrc.pl index b98a6946..a221d517 100755 --- a/util/mkrc.pl +++ b/util/mkrc.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2006-2018 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the OpenSSL license (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy @@ -39,13 +39,14 @@ while () { close(FD); my $filename = $ARGV[0]; -$filename =~ /(.*)\.([^.]+)$/; -my $basename = $1; -my $extname = $2; - -my $description = "OpenSSL application"; -$description = "OpenSSL shared library" if $extname =~ /dll/i; +my $description = "OpenSSL library"; +my $vft = "VFT_DLL"; +if ( $filename =~ /openssl/i ) { + $description = "OpenSSL application"; + $vft = "VFT_APP"; +} +my $YEAR = [localtime()]->[5] + 1900; print <<___; #include @@ -61,7 +62,7 @@ LANGUAGE 0x09,0x01 FILEFLAGS 0x00L #endif FILEOS VOS__WINDOWS32 - FILETYPE VFT_DLL + FILETYPE $vft FILESUBTYPE 0x0L BEGIN BLOCK "StringFileInfo" @@ -72,13 +73,13 @@ BEGIN VALUE "CompanyName", "The OpenSSL Project, http://www.openssl.org/\\0" VALUE "FileDescription", "$description\\0" VALUE "FileVersion", "$version\\0" - VALUE "InternalName", "$basename\\0" + VALUE "InternalName", "$filename\\0" VALUE "OriginalFilename", "$filename\\0" VALUE "ProductName", "The OpenSSL Toolkit\\0" VALUE "ProductVersion", "$version\\0" // Optional: //VALUE "Comments", "\\0" - VALUE "LegalCopyright", "Copyright 1998-2016 The OpenSSL Authors. All rights reserved.\\0" + VALUE "LegalCopyright", "Copyright 1998-$YEAR The OpenSSL Authors. All rights reserved.\\0" //VALUE "LegalTrademarks", "\\0" //VALUE "PrivateBuild", "\\0" //VALUE "SpecialBuild", "\\0" diff --git a/util/perl/OpenSSL/Test.pm b/util/perl/OpenSSL/Test.pm index ad77896c..19141e91 100644 --- a/util/perl/OpenSSL/Test.pm +++ b/util/perl/OpenSSL/Test.pm @@ -21,7 +21,8 @@ $VERSION = "0.8"; @EXPORT_OK = (@Test::More::EXPORT_OK, qw(bldtop_dir bldtop_file srctop_dir srctop_file data_file - pipe with cmdstr quotify)); + pipe with cmdstr quotify + openssl_versions)); =head1 NAME @@ -606,6 +607,23 @@ sub srctop_file { =over 4 +=item B + +LIST is a list of directories that make up a path from the data directory +associated with the test (see L above). +C returns the resulting directory as a string, adapted to the local +operating system. + +=back + +=cut + +sub data_dir { + return __data_dir(@_); +} + +=over 4 + =item B LIST is a list of directories that make up a path from the data directory @@ -788,6 +806,32 @@ sub quotify { return map { $arg_formatter->($_) } @_; } +=over 4 + +=item B + +Returns a list of two numbers, the first representing the build version, +the second representing the library version. See opensslv.h for more +information on those numbers. + += back + +=cut + +my @versions = (); +sub openssl_versions { + unless (@versions) { + my %lines = + map { s/\R$//; + /^(.*): (0x[[:xdigit:]]{8})$/; + die "Weird line: $_" unless defined $1; + $1 => hex($2) } + run(test(['versions']), capture => 1); + @versions = ( $lines{'Build version'}, $lines{'Library version'} ); + } + return @versions; +} + ###################################################################### # private functions. These are never exported. @@ -940,6 +984,12 @@ sub __data_file { return catfile($directories{SRCDATA},@_,$f); } +sub __data_dir { + BAIL_OUT("Must run setup() first") if (! $test_name); + + return catdir($directories{SRCDATA},@_); +} + sub __results_file { BAIL_OUT("Must run setup() first") if (! $test_name); diff --git a/util/perl/TLSProxy/Message.pm b/util/perl/TLSProxy/Message.pm index 68179d91..4a60ba01 100644 --- a/util/perl/TLSProxy/Message.pm +++ b/util/perl/TLSProxy/Message.pm @@ -267,14 +267,17 @@ sub get_messages } } elsif ($record->content_type == TLSProxy::Record::RT_ALERT) { my ($alertlev, $alertdesc) = unpack('CC', $record->decrypt_data); + print " [$alertlev, $alertdesc]\n"; #A CloseNotify from the client indicates we have finished successfully #(we assume) if (!$end && !$server && $alertlev == AL_LEVEL_WARN && $alertdesc == AL_DESC_CLOSE_NOTIFY) { $success = 1; } - #All alerts end the test - $end = 1; + #Fatal or close notify alerts end the test + if ($alertlev == AL_LEVEL_FATAL || $alertdesc == AL_DESC_CLOSE_NOTIFY) { + $end = 1; + } } return @messages; diff --git a/util/perl/TLSProxy/Proxy.pm b/util/perl/TLSProxy/Proxy.pm index 0b722c11..8c13520e 100644 --- a/util/perl/TLSProxy/Proxy.pm +++ b/util/perl/TLSProxy/Proxy.pm @@ -22,52 +22,16 @@ use TLSProxy::Certificate; use TLSProxy::CertificateVerify; use TLSProxy::ServerKeyExchange; use TLSProxy::NewSessionTicket; -use Time::HiRes qw/usleep/; -my $have_IPv6 = 0; +my $have_IPv6; my $IP_factory; -my $is_tls13 = 0; -my $ciphersuite = undef; - -sub new +BEGIN { - my $class = shift; - my ($filter, - $execute, - $cert, - $debug) = @_; - - my $self = { - #Public read/write - proxy_addr => "localhost", - proxy_port => 4453, - server_addr => "localhost", - server_port => 4443, - filter => $filter, - serverflags => "", - clientflags => "", - serverconnects => 1, - serverpid => 0, - clientpid => 0, - reneg => 0, - sessionfile => undef, - - #Public read - execute => $execute, - cert => $cert, - debug => $debug, - cipherc => "", - ciphers => "AES128-SHA:TLS13-AES-128-GCM-SHA256", - flight => 0, - record_list => [], - message_list => [], - }; - # IO::Socket::IP is on the core module list, IO::Socket::INET6 isn't. # However, IO::Socket::INET6 is older and is said to be more widely # deployed for the moment, and may have less bugs, so we try the latter - # first, then fall back on the code modules. Worst case scenario, we + # first, then fall back on the core modules. Worst case scenario, we # fall back to IO::Socket::INET, only supports IPv4. eval { require IO::Socket::INET6; @@ -98,26 +62,72 @@ sub new $have_IPv6 = 1; } else { $IP_factory = sub { IO::Socket::INET->new(@_); }; + $have_IPv6 = 0; } } +} + +my $is_tls13 = 0; +my $ciphersuite = undef; + +sub new +{ + my $class = shift; + my ($filter, + $execute, + $cert, + $debug) = @_; + + my $self = { + #Public read/write + proxy_addr => $have_IPv6 ? "[::1]" : "127.0.0.1", + filter => $filter, + serverflags => "", + clientflags => "", + serverconnects => 1, + reneg => 0, + sessionfile => undef, + + #Public read + proxy_port => 0, + server_port => 0, + serverpid => 0, + clientpid => 0, + execute => $execute, + cert => $cert, + debug => $debug, + cipherc => "", + ciphersuitesc => "", + ciphers => "AES128-SHA", + ciphersuitess => "TLS_AES_128_GCM_SHA256", + flight => -1, + direction => -1, + partial => ["", ""], + record_list => [], + message_list => [], + }; # Create the Proxy socket my $proxaddr = $self->{proxy_addr}; $proxaddr =~ s/[\[\]]//g; # Remove [ and ] my @proxyargs = ( LocalHost => $proxaddr, - LocalPort => $self->{proxy_port}, + LocalPort => 0, Proto => "tcp", Listen => SOMAXCONN, ); - push @proxyargs, ReuseAddr => 1 - unless $^O eq "MSWin32"; - $self->{proxy_sock} = $IP_factory->(@proxyargs); - if ($self->{proxy_sock}) { - print "Proxy started on port ".$self->{proxy_port}."\n"; + if (my $sock = $IP_factory->(@proxyargs)) { + $self->{proxy_sock} = $sock; + $self->{proxy_port} = $sock->sockport(); + $self->{proxy_addr} = $sock->sockhost(); + $self->{proxy_addr} =~ s/(.*:.*)/[$1]/; + print "Proxy started on port ", + "$self->{proxy_addr}:$self->{proxy_port}\n"; + # use same address for s_server + $self->{server_addr} = $self->{proxy_addr}; } else { - warn "Failed creating proxy socket (".$proxaddr.",".$self->{proxy_port}."): $!\n"; + warn "Failed creating proxy socket (".$proxaddr.",0): $!\n"; } return bless $self, $class; @@ -135,7 +145,10 @@ sub clearClient my $self = shift; $self->{cipherc} = ""; - $self->{flight} = 0; + $self->{ciphersuitec} = ""; + $self->{flight} = -1; + $self->{direction} = -1; + $self->{partial} = ["", ""]; $self->{record_list} = []; $self->{message_list} = []; $self->{clientflags} = ""; @@ -153,7 +166,8 @@ sub clear my $self = shift; $self->clearClient; - $self->{ciphers} = "AES128-SHA:TLS13-AES-128-GCM-SHA256"; + $self->{ciphers} = "AES128-SHA"; + $self->{ciphersuitess} = "TLS_AES_128_GCM_SHA256"; $self->{serverflags} = ""; $self->{serverconnects} = 1; $self->{serverpid} = 0; @@ -176,6 +190,25 @@ sub clientrestart $self->clientstart; } +sub connect_to_server +{ + my $self = shift; + my $servaddr = $self->{server_addr}; + + $servaddr =~ s/[\[\]]//g; # Remove [ and ] + + my $sock = $IP_factory->(PeerAddr => $servaddr, + PeerPort => $self->{server_port}, + Proto => 'tcp'); + if (!defined($sock)) { + my $err = $!; + kill(3, $self->{real_serverpid}); + die "unable to connect: $err\n"; + } + + $self->{server_sock} = $sock; +} + sub start { my ($self) = shift; @@ -185,28 +218,90 @@ sub start return 0; } - $pid = fork(); - if ($pid == 0) { - my $execcmd = $self->execute - ." s_server -no_comp -rev -engine ossltest -accept " - .($self->server_port) - ." -cert ".$self->cert." -cert2 ".$self->cert - ." -naccept ".$self->serverconnects; - unless ($self->supports_IPv6) { - $execcmd .= " -4"; - } - if ($self->ciphers ne "") { - $execcmd .= " -cipher ".$self->ciphers; - } - if ($self->serverflags ne "") { - $execcmd .= " ".$self->serverflags; - } - if ($self->debug) { - print STDERR "Server command: $execcmd\n"; - } - exec($execcmd); + my $execcmd = $self->execute + ." s_server -max_protocol TLSv1.3 -no_comp -rev -engine ossltest" + #In TLSv1.3 we issue two session tickets. The default session id + #callback gets confused because the ossltest engine causes the same + #session id to be created twice due to the changed random number + #generation. Using "-ext_cache" replaces the default callback with a + #different one that doesn't get confused. + ." -ext_cache" + ." -accept $self->{server_addr}:0" + ." -cert ".$self->cert." -cert2 ".$self->cert + ." -naccept ".$self->serverconnects; + if ($self->ciphers ne "") { + $execcmd .= " -cipher ".$self->ciphers; } - $self->serverpid($pid); + if ($self->ciphersuitess ne "") { + $execcmd .= " -ciphersuites ".$self->ciphersuitess; + } + if ($self->serverflags ne "") { + $execcmd .= " ".$self->serverflags; + } + if ($self->debug) { + print STDERR "Server command: $execcmd\n"; + } + + open(my $savedin, "<&STDIN"); + + # Temporarily replace STDIN so that sink process can inherit it... + $pid = open(STDIN, "$execcmd 2>&1 |") or die "Failed to $execcmd: $!\n"; + $self->{real_serverpid} = $pid; + + # Process the output from s_server until we find the ACCEPT line, which + # tells us what the accepting address and port are. + while (<>) { + print; + s/\R$//; # Better chomp + next unless (/^ACCEPT\s.*:(\d+)$/); + $self->{server_port} = $1; + last; + } + + if ($self->{server_port} == 0) { + # This actually means that s_server exited, because otherwise + # we would still searching for ACCEPT... + waitpid($pid, 0); + die "no ACCEPT detected in '$execcmd' output: $?\n"; + } + + # Just make sure everything else is simply printed [as separate lines]. + # The sub process simply inherits our STD* and will keep consuming + # server's output and printing it as long as there is anything there, + # out of our way. + my $error; + $pid = undef; + if (eval { require Win32::Process; 1; }) { + if (Win32::Process::Create(my $h, $^X, "perl -ne print", 0, 0, ".")) { + $pid = $h->GetProcessID(); + $self->{proc_handle} = $h; # hold handle till next round [or exit] + } else { + $error = Win32::FormatMessage(Win32::GetLastError()); + } + } else { + if (defined($pid = fork)) { + $pid or exec("$^X -ne print") or exit($!); + } else { + $error = $!; + } + } + + # Change back to original stdin + open(STDIN, "<&", $savedin); + close($savedin); + + if (!defined($pid)) { + kill(3, $self->{real_serverpid}); + die "Failed to capture s_server's output: $error\n"; + } + + $self->{serverpid} = $pid; + + print STDERR "Server responds on ", + "$self->{server_addr}:$self->{server_port}\n"; + + # Connect right away... + $self->connect_to_server(); return $self->clientstart; } @@ -214,41 +309,57 @@ sub start sub clientstart { my ($self) = shift; - my $oldstdout; if ($self->execute) { - my $pid = fork(); - if ($pid == 0) { - my $echostr; - if ($self->reneg()) { - $echostr = "R"; - } else { - $echostr = "test"; - } - my $execcmd = "echo ".$echostr." | ".$self->execute - ." s_client -engine ossltest -connect " - .($self->proxy_addr).":".($self->proxy_port); - unless ($self->supports_IPv6) { - $execcmd .= " -4"; - } - if ($self->cipherc ne "") { - $execcmd .= " -cipher ".$self->cipherc; - } - if ($self->clientflags ne "") { - $execcmd .= " ".$self->clientflags; - } - if (defined $self->sessionfile) { - $execcmd .= " -ign_eof"; - } - if ($self->debug) { - print STDERR "Client command: $execcmd\n"; - } - exec($execcmd); + my $pid; + my $execcmd = $self->execute + ." s_client -max_protocol TLSv1.3 -engine ossltest" + ." -connect $self->{proxy_addr}:$self->{proxy_port}"; + if ($self->cipherc ne "") { + $execcmd .= " -cipher ".$self->cipherc; } - $self->clientpid($pid); + if ($self->ciphersuitesc ne "") { + $execcmd .= " -ciphersuites ".$self->ciphersuitesc; + } + if ($self->clientflags ne "") { + $execcmd .= " ".$self->clientflags; + } + if ($self->clientflags !~ m/-(no)?servername/) { + $execcmd .= " -servername localhost"; + } + if (defined $self->sessionfile) { + $execcmd .= " -ign_eof"; + } + if ($self->debug) { + print STDERR "Client command: $execcmd\n"; + } + + open(my $savedout, ">&STDOUT"); + # If we open pipe with new descriptor, attempt to close it, + # explicitly or implicitly, would incur waitpid and effectively + # dead-lock... + if (!($pid = open(STDOUT, "| $execcmd"))) { + my $err = $!; + kill(3, $self->{real_serverpid}); + die "Failed to $execcmd: $err\n"; + } + $self->{clientpid} = $pid; + + # queue [magic] input + print $self->reneg ? "R" : "test"; + + # this closes client's stdin without waiting for its pid + open(STDOUT, ">&", $savedout); + close($savedout); } # Wait for incoming connection from client + my $fdset = IO::Select->new($self->{proxy_sock}); + if (!$fdset->can_read(60)) { + kill(3, $self->{real_serverpid}); + die "s_client didn't try to connect\n"; + } + my $client_sock; if(!($client_sock = $self->{proxy_sock}->accept())) { warn "Failed accepting incoming connection: $!\n"; @@ -257,100 +368,96 @@ sub clientstart print "Connection opened\n"; - # Now connect to the server - my $retry = 50; - my $server_sock; - #We loop over this a few times because sometimes s_server can take a while - #to start up - do { - my $servaddr = $self->server_addr; - $servaddr =~ s/[\[\]]//g; # Remove [ and ] - eval { - $server_sock = $IP_factory->( - PeerAddr => $servaddr, - PeerPort => $self->server_port, - MultiHomed => 1, - Proto => 'tcp' - ); - }; - - $retry--; - #Some buggy IP factories can return a defined server_sock that hasn't - #actually connected, so we check peerport too - if ($@ || !defined($server_sock) || !defined($server_sock->peerport)) { - $server_sock->close() if defined($server_sock); - undef $server_sock; - if ($retry) { - #Sleep for a short while - select(undef, undef, undef, 0.1); - } else { - warn "Failed to start up server (".$servaddr.",".$self->server_port."): $!\n"; - return 0; - } - } - } while (!$server_sock); - - my $sel = IO::Select->new($server_sock, $client_sock); + my $server_sock = $self->{server_sock}; my $indata; - my @handles = ($server_sock, $client_sock); #Wait for either the server socket or the client socket to become readable + $fdset = IO::Select->new($server_sock, $client_sock); my @ready; my $ctr = 0; local $SIG{PIPE} = "IGNORE"; - while( (!(TLSProxy::Message->end) - || (defined $self->sessionfile() - && (-s $self->sessionfile()) == 0)) - && $ctr < 10) { - if (!(@ready = $sel->can_read(1))) { + $self->{saw_session_ticket} = undef; + while($fdset->count && $ctr < 10) { + if (defined($self->{sessionfile})) { + # s_client got -ign_eof and won't be exiting voluntarily, so we + # look for data *and* session ticket... + last if TLSProxy::Message->success() + && $self->{saw_session_ticket}; + } + if (!(@ready = $fdset->can_read(1))) { $ctr++; next; } foreach my $hand (@ready) { if ($hand == $server_sock) { - $server_sock->sysread($indata, 16384) or goto END; - $indata = $self->process_packet(1, $indata); - $client_sock->syswrite($indata); - $ctr = 0; + if ($server_sock->sysread($indata, 16384)) { + if ($indata = $self->process_packet(1, $indata)) { + $client_sock->syswrite($indata) or goto END; + } + $ctr = 0; + } else { + $fdset->remove($server_sock); + $client_sock->shutdown(SHUT_WR); + } } elsif ($hand == $client_sock) { - $client_sock->sysread($indata, 16384) or goto END; - $indata = $self->process_packet(0, $indata); - $server_sock->syswrite($indata); - $ctr = 0; + if ($client_sock->sysread($indata, 16384)) { + if ($indata = $self->process_packet(0, $indata)) { + $server_sock->syswrite($indata) or goto END; + } + $ctr = 0; + } else { + $fdset->remove($client_sock); + $server_sock->shutdown(SHUT_WR); + } } else { + kill(3, $self->{real_serverpid}); die "Unexpected handle"; } } } - die "No progress made" if $ctr >= 10; + if ($ctr >= 10) { + kill(3, $self->{real_serverpid}); + die "No progress made"; + } END: print "Connection closed\n"; if($server_sock) { $server_sock->close(); + $self->{server_sock} = undef; } if($client_sock) { #Closing this also kills the child process $client_sock->close(); } - if(!$self->debug) { - select($oldstdout); - } - $self->serverconnects($self->serverconnects - 1); - if ($self->serverconnects == 0) { - die "serverpid is zero\n" if $self->serverpid == 0; - print "Waiting for server process to close: " - .$self->serverpid."\n"; - waitpid( $self->serverpid, 0); - die "exit code $? from server process\n" if $? != 0; + + my $pid; + if (--$self->{serverconnects} == 0) { + $pid = $self->{serverpid}; + print "Waiting for 'perl -ne print' process to close: $pid...\n"; + $pid = waitpid($pid, 0); + if ($pid > 0) { + die "exit code $? from 'perl -ne print' process\n" if $? != 0; + } elsif ($pid == 0) { + kill(3, $self->{real_serverpid}); + die "lost control over $self->{serverpid}?"; + } + $pid = $self->{real_serverpid}; + print "Waiting for s_server process to close: $pid...\n"; + # it's done already, just collect the exit code [and reap]... + waitpid($pid, 0); + die "exit code $? from s_server process\n" if $? != 0; } else { - # Give s_server sufficient time to finish what it was doing - usleep(250000); + # It's a bit counter-intuitive spot to make next connection to + # the s_server. Rationale is that established connection works + # as syncronization point, in sense that this way we know that + # s_server is actually done with current session... + $self->connect_to_server(); } - die "clientpid is zero\n" if $self->clientpid == 0; - print "Waiting for client process to close: ".$self->clientpid."\n"; - waitpid($self->clientpid, 0); + $pid = $self->{clientpid}; + print "Waiting for s_client process to close: $pid...\n"; + waitpid($pid, 0); return 1; } @@ -369,34 +476,47 @@ sub process_packet print "Received client packet\n"; } + if ($self->{direction} != $server) { + $self->{flight} = $self->{flight} + 1; + $self->{direction} = $server; + } + print "Packet length = ".length($packet)."\n"; print "Processing flight ".$self->flight."\n"; #Return contains the list of record found in the packet followed by the - #list of messages in those records - my @ret = TLSProxy::Record->get_records($server, $self->flight, $packet); - push @{$self->record_list}, @{$ret[0]}; + #list of messages in those records and any partial message + my @ret = TLSProxy::Record->get_records($server, $self->flight, + $self->{partial}[$server].$packet); + $self->{partial}[$server] = $ret[2]; + push @{$self->{record_list}}, @{$ret[0]}; push @{$self->{message_list}}, @{$ret[1]}; print "\n"; + if (scalar(@{$ret[0]}) == 0 or length($ret[2]) != 0) { + return ""; + } + #Finished parsing. Call user provided filter here - if(defined $self->filter) { + if (defined $self->filter) { $self->filter->($self); } + #Take a note on NewSessionTicket + foreach my $message (reverse @{$self->{message_list}}) { + if ($message->{mt} == TLSProxy::Message::MT_NEW_SESSION_TICKET) { + $self->{saw_session_ticket} = 1; + last; + } + } + #Reconstruct the packet $packet = ""; foreach my $record (@{$self->record_list}) { - #We only replay the records for the current flight - if ($record->flight != $self->flight) { - next; - } $packet .= $record->reconstruct_record($server); } - $self->{flight} = $self->{flight} + 1; - print "Forwarded packet length = ".length($packet)."\n\n"; return $packet; @@ -453,24 +573,28 @@ sub proxy_port my $self = shift; return $self->{proxy_port}; } - -#Read/write accessors sub server_addr { my $self = shift; - if (@_) { - $self->{server_addr} = shift; - } return $self->{server_addr}; } sub server_port { my $self = shift; - if (@_) { - $self->{server_port} = shift; - } return $self->{server_port}; } +sub serverpid +{ + my $self = shift; + return $self->{serverpid}; +} +sub clientpid +{ + my $self = shift; + return $self->{clientpid}; +} + +#Read/write accessors sub filter { my $self = shift; @@ -487,6 +611,14 @@ sub cipherc } return $self->{cipherc}; } +sub ciphersuitesc +{ + my $self = shift; + if (@_) { + $self->{ciphersuitesc} = shift; + } + return $self->{ciphersuitesc}; +} sub ciphers { my $self = shift; @@ -495,6 +627,14 @@ sub ciphers } return $self->{ciphers}; } +sub ciphersuitess +{ + my $self = shift; + if (@_) { + $self->{ciphersuitess} = shift; + } + return $self->{ciphersuitess}; +} sub serverflags { my $self = shift; @@ -531,22 +671,6 @@ sub message_list } return $self->{message_list}; } -sub serverpid -{ - my $self = shift; - if (@_) { - $self->{serverpid} = shift; - } - return $self->{serverpid}; -} -sub clientpid -{ - my $self = shift; - if (@_) { - $self->{clientpid} = shift; - } - return $self->{clientpid}; -} sub fill_known_data { diff --git a/util/perl/TLSProxy/Record.pm b/util/perl/TLSProxy/Record.pm index 773f759a..9de51b37 100644 --- a/util/perl/TLSProxy/Record.pm +++ b/util/perl/TLSProxy/Record.pm @@ -36,7 +36,7 @@ my %record_type = ( use constant { VERS_TLS_1_4 => 0x0305, - VERS_TLS_1_3_DRAFT => 0x7f17, + VERS_TLS_1_3_DRAFT => 0x7f1c, VERS_TLS_1_3 => 0x0304, VERS_TLS_1_2 => 0x0303, VERS_TLS_1_1 => 0x0302, @@ -61,83 +61,70 @@ sub get_records my $server = shift; my $flight = shift; my $packet = shift; + my $partial = ""; my @record_list = (); my @message_list = (); - my $data; - my $content_type; - my $version; - my $len; - my $len_real; - my $decrypt_len; my $recnum = 1; while (length ($packet) > 0) { - print " Record $recnum"; - if ($server) { - print " (server -> client)\n"; - } else { - print " (client -> server)\n"; - } - #Get the record header - if (length($packet) < TLS_RECORD_HEADER_LENGTH) { + print " Record $recnum ", $server ? "(server -> client)\n" + : "(client -> server)\n"; + + #Get the record header (unpack can't fail if $packet is too short) + my ($content_type, $version, $len) = unpack('Cnn', $packet); + + if (length($packet) < TLS_RECORD_HEADER_LENGTH + ($len // 0)) { print "Partial data : ".length($packet)." bytes\n"; - $packet = ""; - } else { - ($content_type, $version, $len) = unpack('CnnC*', $packet); - $data = substr($packet, 5, $len); + $partial = $packet; + last; + } - print " Content type: ".$record_type{$content_type}."\n"; - print " Version: $tls_version{$version}\n"; - print " Length: $len"; - if ($len == length($data)) { - print "\n"; - $decrypt_len = $len_real = $len; - } else { - print " (expected), ".length($data)." (actual)\n"; - $decrypt_len = $len_real = length($data); - } + my $data = substr($packet, TLS_RECORD_HEADER_LENGTH, $len); - my $record = TLSProxy::Record->new( - $flight, - $content_type, - $version, - $len, - 0, - $len_real, - $decrypt_len, - substr($packet, TLS_RECORD_HEADER_LENGTH, $len_real), - substr($packet, TLS_RECORD_HEADER_LENGTH, $len_real) - ); + print " Content type: ".$record_type{$content_type}."\n"; + print " Version: $tls_version{$version}\n"; + print " Length: $len\n"; - if ($content_type != RT_CCS) { - if (($server && $server_encrypting) - || (!$server && $client_encrypting)) { - if (!TLSProxy::Proxy->is_tls13() && $etm) { - $record->decryptETM(); - } else { - $record->decrypt(); - } - $record->encrypted(1); + my $record = TLSProxy::Record->new( + $flight, + $content_type, + $version, + $len, + 0, + $len, # len_real + $len, # decrypt_len + $data, # data + $data # decrypt_data + ); - if (TLSProxy::Proxy->is_tls13()) { - print " Inner content type: " - .$record_type{$record->content_type()}."\n"; - } + if ($content_type != RT_CCS) { + if (($server && $server_encrypting) + || (!$server && $client_encrypting)) { + if (!TLSProxy::Proxy->is_tls13() && $etm) { + $record->decryptETM(); + } else { + $record->decrypt(); + } + $record->encrypted(1); + + if (TLSProxy::Proxy->is_tls13()) { + print " Inner content type: " + .$record_type{$record->content_type()}."\n"; } } - - push @record_list, $record; - - #Now figure out what messages are contained within this record - my @messages = TLSProxy::Message->get_messages($server, $record); - push @message_list, @messages; - - $packet = substr($packet, TLS_RECORD_HEADER_LENGTH + $len_real); - $recnum++; } + + push @record_list, $record; + + #Now figure out what messages are contained within this record + my @messages = TLSProxy::Message->get_messages($server, $record); + push @message_list, @messages; + + $packet = substr($packet, TLS_RECORD_HEADER_LENGTH + $len); + $recnum++; } - return (\@record_list, \@message_list); + return (\@record_list, \@message_list, $partial); } sub clear @@ -197,6 +184,7 @@ sub new data => $data, decrypt_data => $decrypt_data, orig_decrypt_data => $decrypt_data, + sent => 0, encrypted => 0, outer_content_type => RT_APPLICATION_DATA }; @@ -287,6 +275,12 @@ sub reconstruct_record my $server = shift; my $data; + #We only replay the records in the same direction + if ($self->{sent} || ($self->flight & 1) != $server) { + return ""; + } + $self->{sent} = 1; + if ($self->sslv2) { $data = pack('n', $self->len | 0x8000); } else { @@ -391,4 +385,16 @@ sub outer_content_type } return $self->{outer_content_type}; } +sub is_fatal_alert +{ + my $self = shift; + my $server = shift; + + if (($self->{flight} & 1) == $server + && $self->{content_type} == TLSProxy::Record::RT_ALERT) { + my ($level, $alert) = unpack('CC', $self->decrypt_data); + return $alert if ($level == 2); + } + return 0; +} 1; diff --git a/util/private.num b/util/private.num index 6c1a0ef3..8a461acd 100644 --- a/util/private.num +++ b/util/private.num @@ -43,6 +43,10 @@ OSSL_STORE_open_fn datatype OSSL_STORE_post_process_info_fn datatype PROFESSION_INFO datatype PROFESSION_INFOS datatype +RAND_DRBG_cleanup_entropy_fn datatype +RAND_DRBG_cleanup_nonce_fn datatype +RAND_DRBG_get_entropy_fn datatype +RAND_DRBG_get_nonce_fn datatype RAND_poll_cb datatype SSL_CTX_keylog_cb_func datatype SSL_client_hello_cb_fn datatype @@ -86,6 +90,9 @@ BIO_eof define BIO_flush define BIO_get_accept_name define BIO_get_accept_port define +BIO_get_accept_ip_family define +BIO_get_peer_name define +BIO_get_peer_port define BIO_get_bind_mode define BIO_get_buffer_num_lines define BIO_get_cipher_ctx define @@ -94,6 +101,7 @@ BIO_get_close define BIO_get_conn_address define BIO_get_conn_hostname define BIO_get_conn_port define +BIO_get_conn_ip_family define BIO_get_fd define BIO_get_fp define BIO_get_info_callback define @@ -116,6 +124,7 @@ BIO_seek define BIO_set_accept_bios define BIO_set_accept_name define BIO_set_accept_port define +BIO_set_accept_ip_family define BIO_set_bind_mode define BIO_set_buffer_read_data define BIO_set_buffer_size define @@ -123,6 +132,7 @@ BIO_set_close define BIO_set_conn_address define BIO_set_conn_hostname define BIO_set_conn_port define +BIO_set_conn_ip_family define BIO_set_fd define BIO_set_fp define BIO_set_info_callback define @@ -173,9 +183,12 @@ EVP_MD_CTX_type define EVP_OpenUpdate define EVP_PKEY_CTX_add1_hkdf_info define EVP_PKEY_CTX_add1_tls1_prf_seed define +EVP_PKEY_CTX_get_signature_md define EVP_PKEY_CTX_hkdf_mode define EVP_PKEY_CTX_set1_hkdf_key define EVP_PKEY_CTX_set1_hkdf_salt define +EVP_PKEY_CTX_set1_pbe_pass define +EVP_PKEY_CTX_set1_scrypt_salt define EVP_PKEY_CTX_set1_tls1_prf_secret define EVP_PKEY_CTX_set_dh_paramgen_generator define EVP_PKEY_CTX_set_dh_paramgen_prime_len define @@ -185,9 +198,17 @@ EVP_PKEY_CTX_set_dsa_paramgen_bits define EVP_PKEY_CTX_set_ec_param_enc define EVP_PKEY_CTX_set_ec_paramgen_curve_nid define EVP_PKEY_CTX_set_hkdf_md define +EVP_PKEY_CTX_set_mac_key define EVP_PKEY_CTX_set_rsa_keygen_pubexp define EVP_PKEY_CTX_set_rsa_padding define +EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md define +EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen define +EVP_PKEY_CTX_set_rsa_pss_keygen_md define EVP_PKEY_CTX_set_rsa_pss_saltlen define +EVP_PKEY_CTX_set_scrypt_N define +EVP_PKEY_CTX_set_scrypt_r define +EVP_PKEY_CTX_set_scrypt_maxmem_bytes define +EVP_PKEY_CTX_set_scrypt_p define EVP_PKEY_CTX_set_signature_md define EVP_PKEY_CTX_set_tls1_prf_md define EVP_PKEY_assign_DH define @@ -239,6 +260,7 @@ PEM_FLAG_EAY_COMPATIBLE define PEM_FLAG_ONLY_B64 define PEM_FLAG_SECURE define RAND_cleanup define deprecated 1.1.0 +RAND_DRBG_get_ex_new_index define EVP_PKEY_CTX_set_rsa_keygen_bits define SSL_COMP_free_compression_methods define deprecated 1.1.0 SSL_CTX_add0_chain_cert define diff --git a/util/process_docs.pl b/util/process_docs.pl index 2b7f3227..e1e741e9 100755 --- a/util/process_docs.pl +++ b/util/process_docs.pl @@ -98,7 +98,7 @@ foreach my $section (sort @{$options{section}}) { my $suffix = { man => ".$podinfo{section}".($options{suffix} // ""), html => ".html" } -> {$options{type}}; my $generate = { man => "pod2man --name=$name --section=$podinfo{section} --center=OpenSSL --release=$config{version} \"$podpath\"", - html => "pod2html \"--podroot=$options{sourcedir}\" --htmldir=$updir --podpath=man1:man3:man5:man7 \"--infile=$podpath\" \"--title=$podname\"" + html => "pod2html \"--podroot=$options{sourcedir}\" --htmldir=$updir --podpath=man1:man3:man5:man7 \"--infile=$podpath\" \"--title=$podname\" --quiet" } -> {$options{type}}; my $output_dir = catdir($options{destdir}, "man$podinfo{section}"); my $output_file = $podname . $suffix; @@ -112,6 +112,32 @@ foreach my $section (sort @{$options{section}}) { @output = `$generate`; map { s|href="http://man\.he\.net/(man\d/[^"]+)(?:\.html)?"|href="../$1.html"|g; } @output if $options{type} eq "html"; + if ($options{type} eq "man") { + # Because some *roff parsers are more strict than others, + # multiple lines in the NAME section must be merged into + # one. + my $in_name = 0; + my $name_line = ""; + my @newoutput = (); + foreach (@output) { + if ($in_name) { + if (/^\.SH "/) { + $in_name = 0; + push @newoutput, $name_line."\n"; + } else { + chomp (my $x = $_); + $name_line .= " " if $name_line; + $name_line .= $x; + next; + } + } + if (/^\.SH +"NAME" *$/) { + $in_name = 1; + } + push @newoutput, $_; + } + @output = @newoutput; + } } print STDERR "DEBUG: Done processing\n" if $options{debug}; diff --git a/util/shlib_wrap.sh.in b/util/shlib_wrap.sh.in index 27a1e513..b9e3ddf8 100755 --- a/util/shlib_wrap.sh.in +++ b/util/shlib_wrap.sh.in @@ -1,5 +1,25 @@ #!/bin/sh +# To test this OpenSSL version's applications against another version's +# shared libraries, simply set +# +# OPENSSL_REGRESSION=/path/to/other/OpenSSL/build/tree +if [ -n "$OPENSSL_REGRESSION" ]; then + shlibwrap="$OPENSSL_REGRESSION/util/shlib_wrap.sh" + if [ -x "$shlibwrap" ]; then + # We clear OPENSSL_REGRESSION to avoid a loop, should the shlib_wrap.sh + # we exec also support that mechanism... + OPENSSL_REGRESSION= exec "$shlibwrap" "$@" + else + if [ -f "$shlibwrap" ]; then + echo "Not permitted to run $shlibwrap" >&2 + else + echo "No $shlibwrap, perhaps OPENSSL_REGRESSION isn't properly set?" >&2 + fi + exit 1 + fi +fi + [ $# -ne 0 ] || set -x # debug mode without arguments:-) THERE="`echo $0 | sed -e 's|[^/]*$||' 2>/dev/null`.." @@ -90,7 +110,7 @@ if [ -f "$LIBCRYPTOSO" -a -z "$preload_var" ]; then # it into a script makes it possible to do so on multi-ABI # platforms. case "$SYSNAME" in - *BSD|QNX) LD_PRELOAD="$LIBCRYPTOSO:$LIBSSLSO" ;; # *BSD, QNX + *BSD) LD_PRELOAD="$LIBCRYPTOSO:$LIBSSLSO" ;; # *BSD *) LD_PRELOAD="$LIBCRYPTOSO $LIBSSLSO" ;; # SunOS, Linux, ELF HP-UX esac _RLD_LIST="$LIBCRYPTOSO:$LIBSSLSO:DEFAULT" # Tru64, o32 IRIX